bwip-js = function (req, res, opts) { var args = url.parse(req.url, true).query; // Convert boolean empty parameters to true for (var id in args) { if (args[id] === '') args[id] = true; } // Add in server options/overrides opts = opts || {}; for (var id in opts) { args[id] = opts[id]; } module.exports.toBuffer(args, function(err, png) { if (err) { res.writeHead(400, { 'Content-Type':'text/plain' }); res.end(err, 'ascii'); } else { res.writeHead(200, { 'Content-Type':'image/png' }); res.end(png, 'binary'); } }); }
n/a
function BWIPJS(freetype, monochrome) { if (this.constructor !== BWIPJS) { return new BWIPJS(freetype, monochrome); } this.bmap = null; // bitmap interface this.gstk = []; // graphics save/restore stack this.reset(); // FreeType interface this.ft = { monochrome:freetype.cwrap("monochrome", 'number', ['number']), lookup:freetype.cwrap("find_font", 'number', ['string']), bitmap:freetype.cwrap("get_bitmap", 'number', ['number','number','number','number']), width:freetype.cwrap("get_width", 'number', []), height:freetype.cwrap("get_height", 'number', []), left:freetype.cwrap("get_left", 'number', []), top:freetype.cwrap("get_top", 'number', []), advance:freetype.cwrap("get_advance", 'number', []), module:freetype, }; this.ft.monochrome(monochrome ? 1 : 0); }
n/a
loadFont = function (fontname, sizemult, fontfile) { freetype.FS_createDataFile('/', fontname, fontfile, true, false); var load_font = freetype.cwrap("load_font", 'number', ['string','string','number']); var rv = load_font('/' + fontname, fontname, sizemult); if (rv != 0) { freetype.unlink('/' + fontname); throw 'Error: font load failed [' + rv + ']'; } }
...
```javascript
// Simple HTTP server that renders barcode images using bwip-js.
var http = require('http');
var bwipjs = require('bwip-js');
// Example of how to load a font into bwipjs.
// bwipjs.loadFont(fontname, sizemult, fontdata)
//
// To unload a font (and free up space for another):
// bwipjs.unloadFont(fontname)
//
bwipjs.loadFont('Inconsolata', 108,
require('fs').readFileSync('fonts/Inconsolata.otf', 'binary'));
...
toBuffer = function (args, callback) { // Set the defaults var scale = args.scale || 2; var scaleX = +args.scaleX || scale; var scaleY = +args.scaleY || scaleX; var rot = args.rotate || 'N'; var mono = args.monochrome || false; // To protect the server from memory exhaustion, you can optionally limit // the size of the image. Value is in pixels. // For example sizelimit=1024*1024 will limit images to under (roughly) 1MiB. var sizelimit = +args.sizelimit || 0; // The required parameters var bcid = args.bcid; var text = args.text; if (!text) { return callback('Bar code text not specified.'); } if (!bcid) { return callback('Bar code type not specified.'); } // Remove the non-BWIPP options delete args.scale; delete args.scaleX; delete args.scaleY; delete args.rotate; delete args.text; delete args.bcid; delete args.monochrome; delete args.sizelimit; // Initialize a barcode writer object. This is the interface between // the low-level BWIPP code, freetype, and the Bitmap object. var bw = new bwipjs(freetype, mono); // Set the options var opts = {}; for (var id in args) { opts[id] = args[id]; } // Fix a disconnect in the BWIPP rendering logic if (opts.alttext) { opts.includetext = true; } // We use mm rather than inches for height - except pharmacode2 height // which is expected to be in mm if (+opts.height && bcid != 'pharmacode2') { opts.height = opts.height / 25.4 || 0.5; } // Likewise, width if (+opts.width) { opts.width = opts.width / 25.4 || 0; } // Override the `backgroundcolor` option. if (opts.backgroundcolor) { bw.bitmap(new Bitmap(parseInt(''+opts.backgroundcolor, 16))); delete opts.backgroundcolor; } else { bw.bitmap(new Bitmap); } // Constrain resulting image size bw.bitmap().limit(sizelimit); // Add optional padding and scale the image. bw.bitmap().pad(+opts.paddingwidth*scaleX || 0, +opts.paddingheight*scaleY || 0); bw.scale(scaleX, scaleY); // Call into the BWIPP cross-compiled code try { var ts0 = Date.now(); bwipp()(bw, bcid, text, opts); var ts1 = Date.now(); bw.bitmap().getPNG(rot, callback); } catch (e) { // Invoking this callback is synchronous. callback('' + e); } var ts2 = Date.now(); //console.log('Encoded in: ' + (ts1-ts0) + ' msecs'); //console.log('Rendered in: ' + (ts2-ts1) + ' msecs'); //console.log('Elapsed: ' + (ts2-ts0) + ' msecs'); }
...
var bwipjs = require('bwip-js');
// Optionally load some custom fonts. Maximum 8.
// OpenType and TrueType are supported.
bwipjs.loadFont('Inconsolata', 108,
require('fs').readFileSync('fonts/Inconsolata.otf', 'binary'));
bwipjs.toBuffer({
bcid: 'code128', // Barcode type
text: '0123456789', // Text to encode
scale: 3, // 3x scaling factor
height: 10, // Bar height, in millimeters
includetext: true, // Show human-readable text
textxalign: 'center', // Always good to set this
textfont: 'Inconsolata', // Use your custom font
...
unloadFont = function (fontname) { // Unload from freetype var close_font = freetype.cwrap("close_font", 'number', ['string']); close_font(fontname); // Delete from emscripten freetype.unlink('/' + fontname); }
...
var http = require('http');
var bwipjs = require('bwip-js');
// Example of how to load a font into bwipjs.
// bwipjs.loadFont(fontname, sizemult, fontdata)
//
// To unload a font (and free up space for another):
// bwipjs.unloadFont(fontname)
//
bwipjs.loadFont('Inconsolata', 108,
require('fs').readFileSync('fonts/Inconsolata.otf', 'binary'));
http.createServer(function(req, res) {
// If the url does not begin /?bcid= then 404. Otherwise, we end up
// returning 400 on requests like favicon.ico.
...
function BWIPJS(freetype, monochrome) { if (this.constructor !== BWIPJS) { return new BWIPJS(freetype, monochrome); } this.bmap = null; // bitmap interface this.gstk = []; // graphics save/restore stack this.reset(); // FreeType interface this.ft = { monochrome:freetype.cwrap("monochrome", 'number', ['number']), lookup:freetype.cwrap("find_font", 'number', ['string']), bitmap:freetype.cwrap("get_bitmap", 'number', ['number','number','number','number']), width:freetype.cwrap("get_width", 'number', []), height:freetype.cwrap("get_height", 'number', []), left:freetype.cwrap("get_left", 'number', []), top:freetype.cwrap("get_top", 'number', []), advance:freetype.cwrap("get_advance", 'number', []), module:freetype, }; this.ft.monochrome(monochrome ? 1 : 0); }
n/a
bitmap = function (bitmap) { if (bitmap) { this.bmap = bitmap; } return this.bmap; }
...
// Likewise, width
if (+opts.width) {
opts.width = opts.width / 25.4 || 0;
}
// Override the `backgroundcolor` option.
if (opts.backgroundcolor) {
bw.bitmap(new Bitmap(parseInt(''+opts.backgroundcolor, 16)));
delete opts.backgroundcolor;
} else {
bw.bitmap(new Bitmap);
}
// Constrain resulting image size
bw.bitmap().limit(sizelimit);
...
ceilscale = function () { this.g_tsx = Math.ceil(this.g_tsx) || 1; this.g_tsy = Math.ceil(this.g_tsy) || 1; }
n/a
charpath = function (str, b) { var sw = this.stringwidth(str); // Emulate the char-path by placing a rectangle around it this.rlineto(0, sw.a); this.rlineto(sw.w, 0); this.rlineto(0, -sw.h); }
...
} /*23716*/
if ($1.tstr.length == 0) { /*23732*/
$k[$j++] = 0; /*23721*/
} else { /*23732*/
$$.save(); /*23723*/
$$.newpath(); /*23724*/
$$.moveto(0, 0); /*23724*/
$$.charpath("0", false); /*23724*/
var _2X = $$.pathbbox(); /*23724*/
$$.restore(); /*23726*/
var _2Y = $$.currfont(); /*23727*/
var _2Z = _2Y.PaintType !== undefined; /*23727*/
$k[$j++] = _2X.ury; /*23727*/
if (_2Z) { /*23727*/
var _2a = $$.currfont(); /*23727*/
...
closepath = function () { if (this.g_path.length) { var c0 = this.g_path[0]; var c1 = this.g_path[this.g_path.length-1]; this.g_path.push([ c1[0], c1[1] ]); this.g_path.push(['c']); this.g_path.push([ c0[0], c0[1] ]); } }
...
$$.floorscale(); /*23660*/
$$.newpath(); /*23663*/
$$.moveto(-$1.borderleft, -$1.borderbottom); /*23664*/
$$.rlineto(($1.x + $1.borderleft) + $1.borderright, 0); /*23665*/
$$.rlineto(0, ($1.maxh + $1.borderbottom) + $1.bordertop); /*23666*/
$$.rlineto(-(($1.x + $1.borderleft) + $1.borderright), 0); /*23667*/
$$.rlineto(0, -(($1.maxh + $1.borderbottom) + $1.bordertop)); /*23668*/
$$.closepath(); /*23669*/
if ($1.showborder) { /*23679*/
$$.setextent(); /*23674*/
$$.save(); /*23675*/
if ($ne($1.bordercolor, "unset")) { /*23676*/
$$.setcolor($1.bordercolor); /*23676*/
} /*23676*/
$$.setlinewidth($1.borderwidth); /*23677*/
...
currfont = function () { return this.g_font; }
...
} else { /*23732*/
$$.save(); /*23723*/
$$.newpath(); /*23724*/
$$.moveto(0, 0); /*23724*/
$$.charpath("0", false); /*23724*/
var _2X = $$.pathbbox(); /*23724*/
$$.restore(); /*23726*/
var _2Y = $$.currfont(); /*23727*/
var _2Z = _2Y.PaintType !== undefined; /*23727*/
$k[$j++] = _2X.ury; /*23727*/
if (_2Z) { /*23727*/
var _2a = $$.currfont(); /*23727*/
$k[$j++] = _2a.PaintType == 2; /*23727*/
} else { /*23727*/
$k[$j++] = false; /*23727*/
...
currpos = function () { return { x:(this.g_posx-this.g_tdx)/this.g_tsx, y:(this.g_posy-this.g_tdy)/this.g_tsy }; }
...
} /*23642*/
} else { /*23645*/
$1.d = (($get($1.sbs, $1.i) * $1.spaceratio) - $1.spaceratio) + 1; /*23645*/
} /*23645*/
$1.x = $1.x + $1.d; /*23647*/
} /*23647*/
$$.save(); /*23650*/
var _1M = $$.currpos(); /*23652*/
$$.translate(_1M.x, _1M.y); /*23652*/
if ($1.width != 0) { /*23657*/
$$.scale(($1.width * 72) / $1.x, 1); /*23656*/
} /*23656*/
$$.floorscale(); /*23660*/
$$.newpath(); /*23663*/
$$.moveto(-$1.borderleft, -$1.borderbottom); /*23664*/
...
drawline = function (optmz, x1, y1, x2, y2, penx, peny, merge) { if (optmz && (x1 == x2 || y1 == y2)) { var lx = Math.round(penx); var ly = Math.round(peny); if (y2 < y1) { var t = y1; y1 = y2; y2 = t; } if (x2 < x1) { var t = x1; x1 = x2; x2 = t; } // Horizontal or vertical line? if (x1 == x2) { // Vertical line x1 = Math.floor(x1 - lx/2); x2 = Math.floor(x2 + lx/2); y1 = Math.floor(y1 - (merge ? ly/2 : 0)); y2 = Math.floor(y2 + (merge ? ly/2 : 0)); } else { // Horizontal line y1 = Math.floor(y1 - ly/2); y2 = Math.floor(y2 + ly/2); x1 = Math.floor(x1 - (merge ? lx/2 : 0)); x2 = Math.floor(x2 + (merge ? lx/2 : 0)); } for (var y = y1; y < y2; y++) for (var x = x1; x < x2; x++) this.bmap.set(x,y,255); return; } // Draw an arbitrary line x1 = Math.floor(x1); x2 = Math.floor(x2); y1 = Math.floor(y1); y2 = Math.floor(y2); var du = Math.abs(x2-x1); var dv = Math.abs(y2-y1); var kx = (x2 < x1 ? -1 : 1); var ky = (y2 < y1 ? -1 : 1); var x = x1; var y = y1; var d = 0; // Calculate the effect of pen width var penw = Math.floor(Math.sqrt(penx*penx + peny*peny)); var pixh = Math.round(Math.sqrt((penw*penw)/((dv*dv)/(du*du)+1))) || 1; var pixw = Math.round(Math.sqrt(penw*penw-pixh*pixh)) || 1; if (du >= dv) { // Increment on x while (x != x2) { for (var j = 0; j < pixh; j++) this.bmap.set(x, y+j, 255); d += dv; if (d >= du) { d -= du; y += ky; } x += kx; } for (var j = 0; j < pixh; j++) this.bmap.set(x, y+j, 255); } else { // Increment on y while (y != y2) { for (var j = 0; j < pixw; j++) this.bmap.set(x+j, y, 255); d += du; if (d >= dv) { d -= dv; x += kx; } y += ky; } for (var j = 0; j < pixw; j++) this.bmap.set(x+j, y, 255); } }
...
var e = this.g_path[i++]; // end point
if (this.__miny > s[1])
this.__miny = s[1];
if (this.__miny > e[1])
this.__miny = e[1];
switch (a[0]) {
case 'l': // line
this.drawline(true, s[0], s[1], e[0], e[1], penx, peny, segs > 1);
break;
case 'c': // closepath
break;
default:
throw new Error('stroke: undefined opcode: ' + a[0]);
}
}
...
findfont = function (name) { return { FontName:name }; }
...
$k[$j++] = _24; /*23706*/
$k[$j++] = _23; /*23706*/
if ((_23 != $1.s) || $ne(_24, $1.fn)) { /*23705*/
var _27 = $k[--$j]; /*23702*/
var _28 = $k[--$j]; /*23702*/
$1.s = _27; /*23702*/
$1.fn = _28; /*23702*/
var _29 = $$.findfont(_28); /*23703*/
_29.FontSize = _27; /*23703*/
$$.setfont(_29); /*23703*/
} else { /*23705*/
$j -= 2; /*23705*/
} /*23705*/
var _2A = $k[--$j]; /*23707*/
$$.moveto($k[--$j], _2A); /*23707*/
...
floorscale = function () { this.g_tsx = Math.floor(this.g_tsx) || 1; this.g_tsy = Math.floor(this.g_tsy) || 1; }
...
} /*23647*/
$$.save(); /*23650*/
var _1M = $$.currpos(); /*23652*/
$$.translate(_1M.x, _1M.y); /*23652*/
if ($1.width != 0) { /*23657*/
$$.scale(($1.width * 72) / $1.x, 1); /*23656*/
} /*23656*/
$$.floorscale(); /*23660*/
$$.newpath(); /*23663*/
$$.moveto(-$1.borderleft, -$1.borderbottom); /*23664*/
$$.rlineto(($1.x + $1.borderleft) + $1.borderright, 0); /*23665*/
$$.rlineto(0, ($1.maxh + $1.borderbottom) + $1.bordertop); /*23666*/
$$.rlineto(-(($1.x + $1.borderleft) + $1.borderright), 0); /*23667*/
$$.rlineto(0, -(($1.maxh + $1.borderbottom) + $1.bordertop)); /*23668*/
$$.closepath(); /*23669*/
...
getfont = function () { // This is an internal method return this.ft.lookup(this.g_font.FontName.toString()); }
...
this.g_path.push([this.g_posx, this.g_posy]);
this.g_path.push(['l']);
this.g_posx += this.g_tsx * x;
this.g_posy += this.g_tsy * y;
this.g_path.push([this.g_posx, this.g_posy]);
}
BWIPJS.prototype.stringwidth = function(str) {
var font = this.getfont();
var size = +this.g_font.FontSize || 10;
// str may be a uint8-string or normal string
var cca = typeof str === 'string';
// width, ascent, and descent of the char-path
var w = 0, a = 0, d = 0;
...
imagemask = function (width, height, source) { var sx = Math.round(this.g_tsx); var sy = Math.round(this.g_tsy); var dx = Math.floor(sx / width); // pixel width var dy = Math.floor(sy / height); // pixel height var rl = Math.ceil(width / 8); // row length (bytes per row) var y0 = Math.floor(this.g_tdy) + height * dy; var x0; if (!dx || !dy) { throw new Error('Image scaled to zero size.'); } for (var y = 0; y < height; y++) { x0 = Math.floor(this.g_tdx); y0 -= dy; for (var x = 0; x < width; x++) { var by = source[y*rl + (x>>>3)]; var bt = by & (1 << 7-(x&7)); if (bt) { var x1 = x0 + dx; var y1 = y0 + dy; for (var j = y0; j < y1; j++) { for (var k = x0; k < x1; k++) { this.bmap.set(k,j,255); } } } x0 += dx; } } }
...
$$.lineto(0.9999, 0.0001); /*23849*/
$$.lineto(0.9999, 0.9999); /*23849*/
$$.lineto(0.0001, 0.9999); /*23849*/
$$.closepath(); /*23849*/
if ($ne($1.barcolor, "unset")) { /*23852*/
$$.setcolor($1.barcolor); /*23852*/
} /*23852*/
$$.imagemask($1.pixx, $1.pixy, $1.imgstr); /*23857*/
$$.restore(); /*23858*/
if ($1.includetext) { /*23921*/
$$.save(); /*23862*/
if ($ne($1.textcolor, "unset")) { /*23863*/
$$.setcolor($1.textcolor); /*23863*/
} /*23863*/
if (($eq($1.textxalign, "unset") && $eq($1.textyalign, "unset")) && $eq($1.alttext,
x22;")) { /*23918*/
...
lineto = function (x, y) { this.g_path.push([this.g_posx, this.g_posy]); this.g_path.push(['l']); this.g_posx = this.g_tdx + this.g_tsx * x; this.g_posy = this.g_tdy + this.g_tsy * y; this.g_path.push([this.g_posx, this.g_posy]); }
...
$put(_m, ~~(_n / 8), $get(_m, ~~(_n / 8)) + ((~~(Math.pow(2, 7 - ($1.i % 8)))) * $get($1.pixs, $1.i))); /*23842*/
} /*23842*/
$$.save(); /*23846*/
var _t = $$.currpos(); /*23847*/
$$.translate(_t.x, _t.y); /*23847*/
$$.scale(72 * $1.width, 72 * $1.height); /*23848*/
$$.moveto(0.0001, 0.0001); /*23849*/
$$.lineto(0.9999, 0.0001); /*23849*/
$$.lineto(0.9999, 0.9999); /*23849*/
$$.lineto(0.0001, 0.9999); /*23849*/
$$.closepath(); /*23849*/
if ($ne($1.barcolor, "unset")) { /*23852*/
$$.setcolor($1.barcolor); /*23852*/
} /*23852*/
$$.imagemask($1.pixx, $1.pixy, $1.imgstr); /*23857*/
...
moveto = function (x, y) { this.g_posx = this.g_tdx + this.g_tsx * x; this.g_posy = this.g_tdy + this.g_tsy * y; }
...
var _1M = $$.currpos(); /*23652*/
$$.translate(_1M.x, _1M.y); /*23652*/
if ($1.width != 0) { /*23657*/
$$.scale(($1.width * 72) / $1.x, 1); /*23656*/
} /*23656*/
$$.floorscale(); /*23660*/
$$.newpath(); /*23663*/
$$.moveto(-$1.borderleft, -$1.borderbottom); /*23664*/
$$.rlineto(($1.x + $1.borderleft) + $1.borderright, 0); /*23665*/
$$.rlineto(0, ($1.maxh + $1.borderbottom) + $1.bordertop); /*23666*/
$$.rlineto(-(($1.x + $1.borderleft) + $1.borderright), 0); /*23667*/
$$.rlineto(0, -(($1.maxh + $1.borderbottom) + $1.bordertop)); /*23668*/
$$.closepath(); /*23669*/
if ($1.showborder) { /*23679*/
$$.setextent(); /*23674*/
...
newpath = function () { this.g_path = []; }
...
$$.save(); /*23650*/
var _1M = $$.currpos(); /*23652*/
$$.translate(_1M.x, _1M.y); /*23652*/
if ($1.width != 0) { /*23657*/
$$.scale(($1.width * 72) / $1.x, 1); /*23656*/
} /*23656*/
$$.floorscale(); /*23660*/
$$.newpath(); /*23663*/
$$.moveto(-$1.borderleft, -$1.borderbottom); /*23664*/
$$.rlineto(($1.x + $1.borderleft) + $1.borderright, 0); /*23665*/
$$.rlineto(0, ($1.maxh + $1.borderbottom) + $1.bordertop); /*23666*/
$$.rlineto(-(($1.x + $1.borderleft) + $1.borderright), 0); /*23667*/
$$.rlineto(0, -(($1.maxh + $1.borderbottom) + $1.bordertop)); /*23668*/
$$.closepath(); /*23669*/
if ($1.showborder) { /*23679*/
...
pathbbox = function () { if (!this.g_path.length) throw new Error('pathbbox: --nocurrentpoint--'); var pth = this.g_path; var llx = pth[0][0]; var lly = pth[0][1]; var urx = 0; var ury = 0; for (var i = 2, inc = 2; i < pth.length; i += inc) { if (llx > pth[i][0]) llx = pth[i][0]; if (urx < pth[i][0]) urx = pth[i][0]; if (lly > pth[i][1]) lly = pth[i][1]; if (ury < pth[i][1]) ury = pth[i][1]; inc = (inc == 2 ? 1 : 2); } // Convert to user-space coordinates var rv = { llx:(llx-this.g_tdx)/this.g_tsx, lly:(lly-this.g_tdy)/this.g_tsy, urx:(urx-this.g_tdx)/this.g_tsx, ury:(ury-this.g_tdy)/this.g_tsy }; return rv; }
...
if ($1.tstr.length == 0) { /*23732*/
$k[$j++] = 0; /*23721*/
} else { /*23732*/
$$.save(); /*23723*/
$$.newpath(); /*23724*/
$$.moveto(0, 0); /*23724*/
$$.charpath("0", false); /*23724*/
var _2X = $$.pathbbox(); /*23724*/
$$.restore(); /*23726*/
var _2Y = $$.currfont(); /*23727*/
var _2Z = _2Y.PaintType !== undefined; /*23727*/
$k[$j++] = _2X.ury; /*23727*/
if (_2Z) { /*23727*/
var _2a = $$.currfont(); /*23727*/
$k[$j++] = _2a.PaintType == 2; /*23727*/
...
reset = function () { // Current Transform Matrix - since we don't do rotation, we can fake // the matrix math this.g_tdx = 0; // CTM x-offset this.g_tdy = 0; // CTM y-offset this.g_tsx = 1; // CTM x-scale factor this.g_tsy = 1; // CTM y-scale factor this.g_posx = 0; // current x position this.g_posy = 0; // current y position this.g_penw = 1; // current line/pen width this.g_path = []; // current path this.g_font = null; // current font object this.g_rgb = [0,0,0]; // current color (black) }
...
function BWIPJS(freetype, monochrome) {
if (this.constructor !== BWIPJS) {
return new BWIPJS(freetype, monochrome);
}
this.bmap = null; // bitmap interface
this.gstk = []; // graphics save/restore stack
this.reset();
// FreeType interface
this.ft = {
monochrome:freetype.cwrap("monochrome", 'number', ['number']),
lookup:freetype.cwrap("find_font", 'number', ['string']),
bitmap:freetype.cwrap("get_bitmap", 'number',
['number','number','number','number']),
...
restore = function () { if (!this.gstk.length) { throw new Error('grestore: stack underflow'); } var ctx = this.gstk.pop(); for (var id in ctx) { this[id] = ctx[id]; } // Color is part of the bitmap interface and must be restored separately. // We can run without a bitmap when running tests. if (this.bmap) { this.bmap.color(this.g_rgb[0], this.g_rgb[1], this.g_rgb[2]); } }
...
$k[$j++] = _M; /*21136*/
$0.renmatrix(); /*21136*/
$$.rmoveto(-2, 6); /*21139*/
$k[$j++] = $1.comp; /*21139*/
$k[$j++] = $1.options; /*21139*/
$0["gs1-cc"](); /*21139*/
$0.renmatrix(); /*21139*/
$$.restore(); /*21141*/
};
$0.ean8composite = function() {
var $1 = {}; /*21171*/
$1.options = $k[--$j]; /*21173*/
$1.barcode = $k[--$j]; /*21174*/
$1.dontdraw = false; /*21176*/
$forall($1.options, function() { /*21187*/
...
rlineto = function (x, y) { this.g_path.push([this.g_posx, this.g_posy]); this.g_path.push(['l']); this.g_posx += this.g_tsx * x; this.g_posy += this.g_tsy * y; this.g_path.push([this.g_posx, this.g_posy]); }
...
return { w:w/this.g_tsx, h:(a+d)/this.g_tsy,
a:a/this.g_tsy, d:d/this.g_tsy };
}
BWIPJS.prototype.charpath = function(str, b) {
var sw = this.stringwidth(str);
// Emulate the char-path by placing a rectangle around it
this.rlineto(0, sw.a);
this.rlineto(sw.w, 0);
this.rlineto(0, -sw.h);
}
BWIPJS.prototype.pathbbox = function() {
if (!this.g_path.length) throw new Error('pathbbox: --nocurrentpoint--');
var pth = this.g_path;
var llx = pth[0][0];
...
rmoveto = function (x, y) { this.g_posx += this.g_tsx * x; this.g_posy += this.g_tsy * y; }
...
$1.options.lintype = "ean13"; /*21116*/
$1.options.inkspread = "0"; /*21117*/
$1.options.dontdraw = true; /*21118*/
$k[$j++] = $1.linear; /*21121*/
$k[$j++] = $1.options; /*21121*/
$0.ean13(); /*21121*/
$0.renlinear(); /*21121*/
$$.rmoveto(-1, 72); /*21124*/
$k[$j++] = Infinity; /*21135*/
$k[$j++] = "ren"; /*21131*/
$k[$j++] = $0.renmatrix; /*21131*/
$k[$j++] = "pixs"; /*21131*/
$k[$j++] = Infinity; /*21131*/
$k[$j++] = 0; /*21127*/
$k[$j++] = 1; /*21127*/
...
roundscale = function () { this.g_tsx = Math.round(this.g_tsx) || 1; this.g_tsy = Math.round(this.g_tsy) || 1; }
n/a
save = function () { // clone all g_ properties var ctx = {}; for (var id in this) { if (id.indexOf('g_') == 0) { ctx[id] = clone(this[id]); } } this.gstk.push(ctx); // Perform a deep clone of the graphics state properties function clone(v) { if (v instanceof Array) { var t = []; for (var i = 0; i < v.length; i++) t[i] = clone(v[i]); return t; } if (v instanceof Object) { var t = {}; for (var id in v) t[id] = clone(v[id]); return t; } return v; } }
...
if ($k[--$j]) { /*21111*/
$1.linear = $k[--$j]; /*21107*/
$j--; /*21108*/
$1.comp = $k[--$j]; /*21109*/
} else { /*21111*/
$j--; /*21111*/
} /*21111*/
$$.save(); /*21114*/
$1.options.lintype = "ean13"; /*21116*/
$1.options.inkspread = "0"; /*21117*/
$1.options.dontdraw = true; /*21118*/
$k[$j++] = $1.linear; /*21121*/
$k[$j++] = $1.options; /*21121*/
$0.ean13(); /*21121*/
$0.renlinear(); /*21121*/
...
scale = function (x, y) { this.g_tsx *= x; this.g_tsy *= y; }
...
// Constrain resulting image size
bw.bitmap().limit(sizelimit);
// Add optional padding and scale the image.
bw.bitmap().pad(+opts.paddingwidth*scaleX || 0,
+opts.paddingheight*scaleY || 0);
bw.scale(scaleX, scaleY);
// Call into the BWIPP cross-compiled code
try {
var ts0 = Date.now();
bwipp()(bw, bcid, text, opts);
var ts1 = Date.now();
bw.bitmap().getPNG(rot, callback);
...
setcolor = function (s) { if (s.length == 6) { var r = parseInt(s.substr(0,2), 16); var g = parseInt(s.substr(2,2), 16); var b = parseInt(s.substr(4,2), 16); } else if (s.length == 8) { var c = parseInt(s.substr(0,2), 16) / 255; var m = parseInt(s.substr(2,2), 16) / 255; var y = parseInt(s.substr(4,2), 16) / 255; var k = parseInt(s.substr(6,2), 16) / 255; var r = Math.round((1-c) * (1-k) * 255); var g = Math.round((1-m) * (1-k) * 255); var b = Math.round((1-y) * (1-k) * 255); } else { throw 'bwipp.setcolor: invalid string length (' + s + ')' ; } this.bmap.color(r, g, b); this.g_rgb = [ r, g, b ]; }
...
$$.rlineto(-(($1.x + $1.borderleft) + $1.borderright), 0); /*23667*/
$$.rlineto(0, -(($1.maxh + $1.borderbottom) + $1.bordertop)); /*23668*/
$$.closepath(); /*23669*/
if ($1.showborder) { /*23679*/
$$.setextent(); /*23674*/
$$.save(); /*23675*/
if ($ne($1.bordercolor, "unset")) { /*23676*/
$$.setcolor($1.bordercolor); /*23676*/
} /*23676*/
$$.setlinewidth($1.borderwidth); /*23677*/
$$.stroke(); /*23677*/
$$.restore(); /*23678*/
} /*23678*/
$$.save(); /*23682*/
if ($ne($1.barcolor, "unset")) { /*23684*/
...
setextent = function () { if (!this.g_path.length) // Nothing to do? return; // pathbbox() without the user-space conversion var pth = this.g_path; var llx = pth[0][0]; var lly = pth[0][1]; var urx = 0; var ury = 0; for (var i = 2, inc = 2; i < pth.length; i += inc) { if (llx > pth[i][0]) llx = pth[i][0]; if (urx < pth[i][0]) urx = pth[i][0]; if (lly > pth[i][1]) lly = pth[i][1]; if (ury < pth[i][1]) ury = pth[i][1]; inc = (inc == 2 ? 1 : 2); } this.bmap.extent(llx, lly, urx, ury); }
...
$$.moveto(-$1.borderleft, -$1.borderbottom); /*23664*/
$$.rlineto(($1.x + $1.borderleft) + $1.borderright, 0); /*23665*/
$$.rlineto(0, ($1.maxh + $1.borderbottom) + $1.bordertop); /*23666*/
$$.rlineto(-(($1.x + $1.borderleft) + $1.borderright), 0); /*23667*/
$$.rlineto(0, -(($1.maxh + $1.borderbottom) + $1.bordertop)); /*23668*/
$$.closepath(); /*23669*/
if ($1.showborder) { /*23679*/
$$.setextent(); /*23674*/
$$.save(); /*23675*/
if ($ne($1.bordercolor, "unset")) { /*23676*/
$$.setcolor($1.bordercolor); /*23676*/
} /*23676*/
$$.setlinewidth($1.borderwidth); /*23677*/
$$.stroke(); /*23677*/
$$.restore(); /*23678*/
...
setfont = function (f) { this.g_font = f; }
...
if ((_23 != $1.s) || $ne(_24, $1.fn)) { /*23705*/
var _27 = $k[--$j]; /*23702*/
var _28 = $k[--$j]; /*23702*/
$1.s = _27; /*23702*/
$1.fn = _28; /*23702*/
var _29 = $$.findfont(_28); /*23703*/
_29.FontSize = _27; /*23703*/
$$.setfont(_29); /*23703*/
} else { /*23705*/
$j -= 2; /*23705*/
} /*23705*/
var _2A = $k[--$j]; /*23707*/
$$.moveto($k[--$j], _2A); /*23707*/
$$.show($k[--$j], 0, 0); /*23707*/
} /*23707*/
...
setlinewidth = function (w) { this.g_penw = w; }
...
$$.closepath(); /*23669*/
if ($1.showborder) { /*23679*/
$$.setextent(); /*23674*/
$$.save(); /*23675*/
if ($ne($1.bordercolor, "unset")) { /*23676*/
$$.setcolor($1.bordercolor); /*23676*/
} /*23676*/
$$.setlinewidth($1.borderwidth); /*23677*/
$$.stroke(); /*23677*/
$$.restore(); /*23678*/
} /*23678*/
$$.save(); /*23682*/
if ($ne($1.barcolor, "unset")) { /*23684*/
$$.setcolor($1.barcolor); /*23684*/
} /*23684*/
...
show = function (str, dx, dy) { // str is a psstring var font = this.getfont(); var size = +this.g_font.FontSize || 10; // The string can be either a uint8-string or regular string var cca = typeof str === 'string'; // Convert dx,dy to device space dx = this.g_tsx * dx; dy = this.g_tsy * dy; // PostScript renders bottom-up, so we must render the glyphs inverted. for (var i = 0; i < str.length; i++) { var ch = cca ? str.charCodeAt(i) : str[i]; var offset = this.ft.bitmap(font, ch, size*this.g_tsx, size*this.g_tsy); if (!offset) { this.g_posx += this.ft.advance() + dx; continue; } // The OCR digits seem to be about a half-point right compared to the // font metrics hard-coded into BWIPP. This is especially apparent // in the EAN and UPC codes where the bars mix with the text. var l = this.g_posx + this.ft.left(); if (font <= 1 && ch >= 48 && ch <= 57) l -= 0.5 * this.g_tsx; var t = this.g_posy + this.ft.top() + dy; var w = this.ft.width(); var h = this.ft.height(); var b = this.ft.module.HEAPU8.subarray(offset, offset + w * h); var a; // alpha for (var x = 0; x < w; x++) { for (var y = 0; y < h; y++) { a = b[y * w + x]; if (a) this.bmap.set(l+x, t-y, a); } } this.g_posx += this.ft.advance() + dx; } }
...
_29.FontSize = _27; /*23703*/
$$.setfont(_29); /*23703*/
} else { /*23705*/
$j -= 2; /*23705*/
} /*23705*/
var _2A = $k[--$j]; /*23707*/
$$.moveto($k[--$j], _2A); /*23707*/
$$.show($k[--$j], 0, 0); /*23707*/
} /*23707*/
} else { /*23750*/
var _2E = $$.findfont($1.textfont); /*23710*/
_2E.FontSize = $1.textsize; /*23710*/
$$.setfont(_2E); /*23710*/
if ($eq($1.alttext, "")) { /*23716*/
$k[$j++] = Infinity; /*23712*/
...
stringwidth = function (str) { var font = this.getfont(); var size = +this.g_font.FontSize || 10; // str may be a uint8-string or normal string var cca = typeof str === 'string'; // width, ascent, and descent of the char-path var w = 0, a = 0, d = 0; for (var i = 0; i < str.length; i++) { var cd = cca ? str.charCodeAt(i) : str[i]; var offset = this.ft.bitmap(font,cd,size*this.g_tsx,size*this.g_tsy); w += this.ft.advance(); if (!offset) continue; var h = this.ft.height(); var t = this.ft.top(); a = Math.max(a, t); d = Math.max(d, h-t); } return { w:w/this.g_tsx, h:(a+d)/this.g_tsy, a:a/this.g_tsy, d:d/this.g_tsy }; }
...
a = Math.max(a, t);
d = Math.max(d, h-t);
}
return { w:w/this.g_tsx, h:(a+d)/this.g_tsy,
a:a/this.g_tsy, d:d/this.g_tsy };
}
BWIPJS.prototype.charpath = function(str, b) {
var sw = this.stringwidth(str);
// Emulate the char-path by placing a rectangle around it
this.rlineto(0, sw.a);
this.rlineto(sw.w, 0);
this.rlineto(0, -sw.h);
}
BWIPJS.prototype.pathbbox = function() {
...
stroke = function () { if (this.__miny === undefined) this.__miny = Infinity; var penx = this.g_penw*this.g_tsx; var peny = this.g_penw*this.g_tsy; var segs = this.g_path.length / 3; // number of line segments if (this.g_path[this.g_path.length-2][0] == 'c') segs--; for (var i = 0; i < this.g_path.length; ) { var s = this.g_path[i++]; // start point var a = this.g_path[i++]; // args var e = this.g_path[i++]; // end point if (this.__miny > s[1]) this.__miny = s[1]; if (this.__miny > e[1]) this.__miny = e[1]; switch (a[0]) { case 'l': // line this.drawline(true, s[0], s[1], e[0], e[1], penx, peny, segs > 1); break; case 'c': // closepath break; default: throw new Error('stroke: undefined opcode: ' + a[0]); } } this.g_path = []; }
...
if ($1.showborder) { /*23679*/
$$.setextent(); /*23674*/
$$.save(); /*23675*/
if ($ne($1.bordercolor, "unset")) { /*23676*/
$$.setcolor($1.bordercolor); /*23676*/
} /*23676*/
$$.setlinewidth($1.borderwidth); /*23677*/
$$.stroke(); /*23677*/
$$.restore(); /*23678*/
} /*23678*/
$$.save(); /*23682*/
if ($ne($1.barcolor, "unset")) { /*23684*/
$$.setcolor($1.barcolor); /*23684*/
} /*23684*/
var _1k = $1.bars; /*23685*/
...
translate = function (x, y) { this.g_tdx = this.g_tsx * x; this.g_tdy = this.g_tsy * y; }
...
} else { /*23645*/
$1.d = (($get($1.sbs, $1.i) * $1.spaceratio) - $1.spaceratio) + 1; /*23645*/
} /*23645*/
$1.x = $1.x + $1.d; /*23647*/
} /*23647*/
$$.save(); /*23650*/
var _1M = $$.currpos(); /*23652*/
$$.translate(_1M.x, _1M.y); /*23652*/
if ($1.width != 0) { /*23657*/
$$.scale(($1.width * 72) / $1.x, 1); /*23656*/
} /*23656*/
$$.floorscale(); /*23660*/
$$.newpath(); /*23663*/
$$.moveto(-$1.borderleft, -$1.borderbottom); /*23664*/
$$.rlineto(($1.x + $1.borderleft) + $1.borderright, 0); /*23665*/
...
function AsciiToString(ptr){var str="";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}
n/a
FS_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}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}
...
var ts2 = Date.now();
//console.log('Encoded in: ' + (ts1-ts0) + ' msecs');
//console.log('Rendered in: ' + (ts2-ts1) + ' msecs');
//console.log('Elapsed: ' + (ts2-ts0) + ' msecs');
}
module.exports.loadFont = function(fontname, sizemult, fontfile) {
freetype.FS_createDataFile('/', fontname, fontfile, true, false);
var load_font = freetype.cwrap("load_font", 'number',
['string','string','number']);
var rv = load_font('/' + fontname, fontname, sizemult);
if (rv != 0) {
freetype.unlink('/' + fontname);
throw 'Error: font load failed [' + rv + ']';
...
FS_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);FS.registerDevice (dev,{open:(function(stream){stream.seekable=false}),close:(function(stream){if(output&&output.buffer&&output.buffer.length){output (10)}}),read:(function(stream,buffer,offset,length,pos){var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=input()} catch(e){throw new FS.ErrnoError(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)}
n/a
FS_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)}
n/a
FS_createLazyFile = function (parent, name, url, canRead, canWrite){function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype .get=function LazyUint8Array_get(idx){if(idx>this.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum =idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter (getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest ;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header =xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header ==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error ("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available ! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range ","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType ("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn 't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString (xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end =(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum ]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum ]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown =true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray ,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown ){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice :false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties .contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function (){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node .stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO )}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile (node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size =Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i<size;i++){buffer[offset+i]=contents[ position+i]}}else{for(var i=0;i<size;i++){buffer[offset+i]=contents.get(position+i)}}return size};node.stream_ops=stream_ops;return node}
n/a
FS_createLink = function (parent, name, target, canRead, canWrite){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);return FS.symlink(target,path)}
n/a
FS_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){} parent=current}return current}
n/a
FS_createPreloadedFile = function (parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn, preFinish){Browser.init();var fullname=name?PATH .resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency("cp "+fullname);function processData(byteArray){function finish(byteArray){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)} if(onload)onload();removeRunDependency(dep)}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 (dep)}));handled=true}}));if(!handled)finish(byteArray)}addRunDependency(dep);if(typeof url=="string"){Browser.asyncLoad(url,(function (byteArray){processData(byteArray)}),onerror)}else{processData(url)}}
n/a
FS_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){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)}}
n/a
function Pointer_stringify(ptr, length){if(length===0||!ptr)return"";var hasUtf=0;var t;var i=0;while(1){t=HEAPU8[ptr+i>>0];hasUtf |=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr ;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr ;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module["UTF8ToString"](ptr)}
n/a
function UTF8ArrayToString(u8Array, idx){var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128 )){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue }u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12 |u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<< 30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296 |ch>>10,56320|ch&1023)}}}
n/a
function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}
n/a
function Ar(){var a=0;if(!(c[18388]|0))a=73596;else a=c[(xa()|0)+64>>2]|0;return a|0}
n/a
function Os(a, b, c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>>c;return a>>>c|(b&(1<<c)-1)<<32-c}C=0;return b>>>c-32|0}
n/a
function Ps(a, b, c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}C=a<<c-32;return 0}
n/a
function kb(a){a=a|0;var b=0,d=0;b=c[18365]|0;if(b)if(As(a,b)|0){b=c[18366]|0;if(((b|0)!=0?(As(a,b)|0)!=0:0)?(d=c[18367]|0,(d|0)!= 0):0)if(As(a,d)|0){b=c[18368]|0;if(b)if(As(a,b)|0){b=c[18369]|0;if(b)if(As(a,b)|0){b=c[18370]|0;if(b)if(As(a,b)|0){b=c[18371]|0; if(b)if(As(a,b)|0){b=c[18372]|0;if(b)if(As(a,b)|0){b=c[18373]|0;if(b)if(As(a,b)|0){b=c[18374]|0;if(!b)b=1;else{a=(As(a,b)|0)==0; return (a?9:1)|0}}else b=8;else b=1}else b=7;else b=1}else b=6;else b=1}else b=5;else b=1}else b=4;else b=1}else b=3;else b=1}else b=2;else b=1}else b=0;else b=1;return b|0}
n/a
function Gs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;if(!a)return;d=a+-8|0;h=c[18404]|0;if(d>>>0 <h>>>0)ya();a=c[a+-4>>2]|0;b=a&3;if((b|0)==1)ya();e=a&-8;m=d+e|0;do if(!(a&1)){a=c[d>>2]|0;if(!b)return;k=d+(0-a)|0;j=a+e|0;if(k >>>0<h>>>0)ya();if((k|0)==(c[18405]|0)){a=m+4|0;b=c[a>>2]|0;if((b&3|0)!=3){q=k;g=j;break}c[18402]=j;c[a>>2]=b&-2;c[k+4>>2]=j|1;c [k+j>>2]=j;return}e=a>>>3;if(a>>>0<256){b=c[k+8>>2]|0;d=c[k+12>>2]|0;a=73640+(e<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>0<h>>>0)ya();if ((c[b+12>>2]|0)!=(k|0))ya()}if((d|0)==(b|0)){c[18400]=c[18400]&~(1<<e);q=k;g=j;break}if((d|0)!=(a|0)){if(d>>>0<h>>>0)ya();a=d+8| 0;if((c[a>>2]|0)==(k|0))f=a;else ya()}else f=d+8|0;c[b+12>>2]=d;c[f>>2]=b;q=k;g=j;break}f=c[k+24>>2]|0;d=c[k+12>>2]|0;do if((d|0 )==(k|0)){b=k+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){i=0;break}}else b=d;while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b =d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<h>>>0)ya();else{c[b>>2]=0;i=a;break}}else{e=c[k+8>>2]|0;if(e >>>0<h>>>0)ya();a=e+12|0;if((c[a>>2]|0)!=(k|0))ya();b=d+8|0;if((c[b>>2]|0)==(k|0)){c[a>>2]=d;c[b>>2]=e;i=d;break}else ya()}while (0);if(f){a=c[k+28>>2]|0;b=73904+(a<<2)|0;if((k|0)==(c[b>>2]|0)){c[b>>2]=i;if(!i){c[18401]=c[18401]&~(1<<a);q=k;g=j;break}}else{ if(f>>>0<(c[18404]|0)>>>0)ya();a=f+16|0;if((c[a>>2]|0)==(k|0))c[a>>2]=i;else c[f+20>>2]=i;if(!i){q=k;g=j;break}}d=c[18404]|0;if( i>>>0<d>>>0)ya();c[i+24>>2]=f;a=k+16|0;b=c[a>>2]|0;do if(b|0)if(b>>>0<d>>>0)ya();else{c[i+16>>2]=b;c[b+24>>2]=i;break}while(0);a =c[a+4>>2]|0;if(a)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[i+20>>2]=a;c[a+24>>2]=i;q=k;g=j;break}else{q=k;g=j}}else{q=k;g=j}}else{q =d;g=e}while(0);if(q>>>0>=m>>>0)ya();a=m+4|0;b=c[a>>2]|0;if(!(b&1))ya();if(!(b&2)){if((m|0)==(c[18406]|0)){p=(c[18403]|0)+g|0;c[ 18403]=p;c[18406]=q;c[q+4>>2]=p|1;if((q|0)!=(c[18405]|0))return;c[18405]=0;c[18402]=0;return}if((m|0)==(c[18405]|0)){p=(c[18402]| 0)+g|0;c[18402]=p;c[18405]=q;c[q+4>>2]=p|1;c[q+p>>2]=p;return}g=(b&-8)+g|0;e=b>>>3;do if(b>>>0>=256){f=c[m+24>>2]|0;a=c[m+12>>2]| 0;do if((a|0)==(m|0)){b=m+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){n=0;break}}else b=d;while(1){d=a+20|0;e=c[d>>2]|0;if (e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<(c[18404]|0)>>>0)ya();else{c[b>>2]=0;n=a;break}}else {b=c[m+8>>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();d=b+12|0;if((c[d>>2]|0)!=(m|0))ya();e=a+8|0;if((c[e>>2]|0)==(m|0)){c[d>>2]=a;c[e>> 2]=b;n=a;break}else ya()}while(0);if(f|0){a=c[m+28>>2]|0;b=73904+(a<<2)|0;if((m|0)==(c[b>>2]|0)){c[b>>2]=n;if(!n){c[18401]=c[18401 ]&~(1<<a);break}}else{if(f>>>0<(c[18404]|0)>>>0)ya();a=f+16|0;if((c[a>>2]|0)==(m|0))c[a>>2]=n;else c[f+20>>2]=n;if(!n)break}d=c[ 18404]|0;if(n>>>0<d>>>0)ya();c[n+24>>2]=f;a=m+16|0;b=c[a>>2]|0;do if(b|0)if(b>>>0<d>>>0)ya();else{c[n+16>>2]=b;c[b+24>>2]=n;break }while(0);a=c[a+4>>2]|0;if(a|0)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[n+20>>2]=a;c[a+24>>2]=n;break}}}else{b=c[m+8>>2]|0;d=c[m+12 >>2]|0;a=73640+(e<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>0<(c[18404]|0)>>>0)ya();if((c[b+12>>2]|0)!=(m|0))ya()}if((d|0)==(b|0)){c[18400 ]=c[18400]&~(1<<e);break}if((d|0)!=(a|0)){if(d>>>0<(c[18404]|0)>>>0)ya();a=d+8|0;if((c[a>>2]|0)==(m|0))l=a;else ya()}else l=d+8| 0;c[b+12>>2]=d;c[l>>2]=b}while(0);c[q+4>>2]=g|1;c[q+g>>2]=g;if((q|0)==(c[18405]|0)){c[18402]=g;return}}else{c[a>>2]=b&-2;c[q+4>> 2]=g|1;c[q+g>>2]=g}a=g>>>3;if(g>>>0<256){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]| 0)>>>0)ya();else{o=a;p=b}}else{c[18400]=b|a;o=d+8|0;p=d}c[o>>2]=q;c[p+12>>2]=q;c[q+8>>2]=p;c[q+12>>2]=d;return}a=g>>>8;if(a)if(g >>>0>16777215)d=31;else{o=(a+1048320|0)>>>16&8;p=a<<o;n=(p+520192|0)>>>16&4;p=p<<n;d=(p+245760|0)>>>16&2;d=14-(n|o|d)+(p<<d>>>15 )|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=73904+(d<<2)|0;c[q+28>>2]=d;c[q+20>>2]=0;c[q+16>>2]=0;a=c[18401]|0;b=1<<d;do if(a&b){f=g<<(( d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0)==(g|0)){d=a;e=130;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d ){e=127;break}else{f=f<<1;a=d}}if((e|0)==127)if(b>>>0<(c[18404]|0)>>>0)ya();else{c[b>>2 ...
n/a
function rb(){return c[(c[18386]|0)+64>>2]>>6|0}
n/a
function lb(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;p=i;i=i+16|0;k=p+8|0;j=p;if(!(b>>>0<=9?(c[73460 +(b<<2)>>2]|0)!=0:0))b=1;h=c[73500+(b<<2)>>2]|0;b=c[8+(b<<2)>>2]|0;f=(_(f<<6,b)|0)/100|0;b=(_(g<<6,b)|0)/100|0;if((e+-65|0)>>>0< 26&(h|0)==(c[18376]|0))b=(b*108|0)/100|0;b=Hd(h,f,b,72,0)|0;if(b|0){c[j>>2]=b;ss(10260,j)|0;o=0;i=p;return o|0}c[18386]=c[h+84>> 2];if((h|0)==(c[18375]|0)|(h|0)==(c[18376]|0))if((e|0)==126)e=732;else e=(e|0)==94?710:e;if(!(c[18364]|0))e=Cc(h,e,4)|0;else e=Cc (h,e,131076)|0;if(e|0){c[k>>2]=e;ss(10285,k)|0;o=0;i=p;return o|0}b=c[18386]|0;if(!(c[18364]|0)){o=c[b+88>>2]|0;i=p;return o|0}e =c[18387]|0;if(e|0)Gs(e);m=b+80|0;f=c[m>>2]|0;n=b+76|0;g=c[n>>2]|0;e=Fs(_(g,f)|0)|0;c[18387]=e;if(!e){o=0;i=p;return o|0}if((g|0 )<=0){o=e;i=p;return o|0}o=b+84|0;l=b+88|0;b=e;k=0;do{j=_(c[o>>2]|0,k)|0;j=(c[l>>2]|0)+j|0;if((f|0)>0){h=0;while(1){g=b+1|0;a[b>> 0]=(((d[j+(h>>3)>>0]|0)&1<<(h&7^7)|0)!=0)<<31>>31;h=h+1|0;f=c[m>>2]|0;if((h|0)>=(f|0)){b=g;break}else b=g}g=c[n>>2]|0}k=k+1|0}while ((k|0)<(g|0));i=p;return e|0}
n/a
function pb(){return c[(c[18386]|0)+76>>2]|0}
n/a
function mb(){return c[(c[18386]|0)+100>>2]|0}
n/a
function qb(){return c[(c[18386]|0)+84>>2]|0}
n/a
function nb(){return c[(c[18386]|0)+104>>2]|0}
n/a
function ob(){return c[(c[18386]|0)+80>>2]|0}
n/a
function Ms(a, b, c, d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (C=b+d+(c>>>0<a>>>0|0)>>>0,c|0)|0}
n/a
function Ls(a, b, c, d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (C=d,a-c>>>0|0)|0}
n/a
function jb(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+32|0;h=j+8|0;f=j;e=c[18367]|0;if((e|0)!=0?(As(e,b)|0)==0:0){ e=73468;f=2;g=4}else g=3;do if((g|0)==3){e=c[18368]|0;if(e|0?(As(e,b)|0)==0:0){e=73472;f=3;g=4;break}e=c[18369]|0;if(e|0?(As(e,b )|0)==0:0){e=73476;f=4;g=4;break}e=c[18370]|0;if(e|0?(As(e,b)|0)==0:0){e=73480;f=5;g=4;break}e=c[18371]|0;if(e|0?(As(e,b)|0)==0: 0){e=73484;f=6;g=4;break}e=c[18372]|0;if(e|0?(As(e,b)|0)==0:0){e=73488;f=7;g=4;break}e=c[18373]|0;if(e|0?(As(e,b)|0)==0:0){e=73492 ;f=8;g=4;break}e=c[18374]|0;if(e|0?(As(e,b)|0)==0:0){e=73496;f=9;g=4;break}if(c[18367]|0)if(c[18368]|0)if(c[18369]|0)if(c[18370]| 0)if(c[18371]|0)if(c[18372]|0)if(c[18373]|0)if(!(c[18374]|0))f=9;else{c[f>>2]=a;c[f+4>>2]=b;ss(10198,f)|0;h=-1;i=j;return h|0}else f=8;else f=7;else f=6;else f=5;else f=4;else f=3;else f=2}while(0);if((g|0)==4){g=73500+(f<<2)|0;vd(c[g>>2]|0)|0;Gs(c[e>>2]|0); c[e>>2]=0;c[g>>2]=0}e=Ec(c[18385]|0,a,0,73500+(f<<2)|0)|0;if(!e){c[73460+(f<<2)>>2]=ws(b)|0;c[8+(f<<2)>>2]=d;h=0;i=j;return h|0} else{c[h>>2]=a;c[h+4>>2]=b;c[h+8>>2]=e;ss(10233,h)|0;h=e;i=j;return h|0}return 0}
n/a
function sb(){var a=0,b=0,d=0,e=0,f=0;f=i;i=i+32|0;e=f+16|0;d=f+8|0;b=f;a=ub(73540)|0;if(a|0){c[b>>2]=a;ss(10306,b)|0;e=1;i=f;return e|0}a=Ec(c[18385]|0,10322,0,73500)|0;if(a|0){c[d>>2]=a;ss(10331,d)|0;e=1;i=f;return e|0}a=Ec(c[18385]|0,10358,0,73504)|0;if(!a){ c[18365]=ws(10394)|0;c[18366]=ws(10400)|0;e=0;i=f;return e|0}else{c[e>>2]=a;ss(10367,e)|0;e=1;i=f;return e|0}return 0}
n/a
function Fs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,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;do if(a>>>0<245){o=a>>>0<11?16:a+11&-8;a=o>>>3;j=c[18400]|0;b=j>>>a;if(b&3|0){b=(b&1^1)+ a|0;d=73640+(b<<1<<2)|0;e=d+8|0;f=c[e>>2]|0;g=f+8|0;h=c[g>>2]|0;do if((d|0)!=(h|0)){if(h>>>0<(c[18404]|0)>>>0)ya();a=h+12|0;if(( c[a>>2]|0)==(f|0)){c[a>>2]=d;c[e>>2]=h;break}else ya()}else c[18400]=j&~(1<<b);while(0);L=b<<3;c[f+4>>2]=L|3;L=f+L+4|0;c[L>>2]=c [L>>2]|1;L=g;return L|0}h=c[18402]|0;if(o>>>0>h>>>0){if(b|0){d=2<<a;d=b<<a&(d|0-d);d=(d&0-d)+-1|0;i=d>>>12&16;d=d>>>i;f=d>>>5&8; d=d>>>f;g=d>>>2&4;d=d>>>g;e=d>>>1&2;d=d>>>e;b=d>>>1&1;b=(f|i|g|e|b)+(d>>>b)|0;d=73640+(b<<1<<2)|0;e=d+8|0;g=c[e>>2]|0;i=g+8|0;f= c[i>>2]|0;do if((d|0)!=(f|0)){if(f>>>0<(c[18404]|0)>>>0)ya();a=f+12|0;if((c[a>>2]|0)==(g|0)){c[a>>2]=d;c[e>>2]=f;k=c[18402]|0;break }else ya()}else{c[18400]=j&~(1<<b);k=h}while(0);h=(b<<3)-o|0;c[g+4>>2]=o|3;e=g+o|0;c[e+4>>2]=h|1;c[e+h>>2]=h;if(k|0){f=c[18405]| 0;b=k>>>3;d=73640+(b<<1<<2)|0;a=c[18400]|0;b=1<<b;if(a&b){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{l=a;m=b}}else{ c[18400]=a|b;l=d+8|0;m=d}c[l>>2]=f;c[m+12>>2]=f;c[f+8>>2]=m;c[f+12>>2]=d}c[18402]=h;c[18405]=e;L=i;return L|0}a=c[18401]|0;if(a){ d=(a&0-a)+-1|0;K=d>>>12&16;d=d>>>K;J=d>>>5&8;d=d>>>J;L=d>>>2&4;d=d>>>L;b=d>>>1&2;d=d>>>b;e=d>>>1&1;e=c[73904+((J|K|L|b|e)+(d>>>e )<<2)>>2]|0;d=(c[e+4>>2]&-8)-o|0;b=e;while(1){a=c[b+16>>2]|0;if(!a){a=c[b+20>>2]|0;if(!a){j=e;break}}b=(c[a+4>>2]&-8)-o|0;L=b>>> 0<d>>>0;d=L?b:d;b=a;e=L?a:e}g=c[18404]|0;if(j>>>0<g>>>0)ya();i=j+o|0;if(j>>>0>=i>>>0)ya();h=c[j+24>>2]|0;e=c[j+12>>2]|0;do if((e |0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if(!a){b=j+16|0;a=c[b>>2]|0;if(!a){n=0;break}}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;b=e;continue }e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;b=e}}if(b>>>0<g>>>0)ya();else{c[b>>2]=0;n=a;break}}else{f=c[j+8>>2]|0;if(f>>>0<g>>>0) ya();a=f+12|0;if((c[a>>2]|0)!=(j|0))ya();b=e+8|0;if((c[b>>2]|0)==(j|0)){c[a>>2]=e;c[b>>2]=f;n=e;break}else ya()}while(0);do if(h |0){a=c[j+28>>2]|0;b=73904+(a<<2)|0;if((j|0)==(c[b>>2]|0)){c[b>>2]=n;if(!n){c[18401]=c[18401]&~(1<<a);break}}else{if(h>>>0<(c[18404 ]|0)>>>0)ya();a=h+16|0;if((c[a>>2]|0)==(j|0))c[a>>2]=n;else c[h+20>>2]=n;if(!n)break}b=c[18404]|0;if(n>>>0<b>>>0)ya();c[n+24>>2]= h;a=c[j+16>>2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else{c[n+16>>2]=a;c[a+24>>2]=n;break}while(0);a=c[j+20>>2]|0;if(a|0)if(a>>>0<(c[18404 ]|0)>>>0)ya();else{c[n+20>>2]=a;c[a+24>>2]=n;break}}while(0);if(d>>>0<16){L=d+o|0;c[j+4>>2]=L|3;L=j+L+4|0;c[L>>2]=c[L>>2]|1}else {c[j+4>>2]=o|3;c[i+4>>2]=d|1;c[i+d>>2]=d;a=c[18402]|0;if(a|0){f=c[18405]|0;b=a>>>3;e=73640+(b<<1<<2)|0;a=c[18400]|0;b=1<<b;if(a& b){a=e+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{p=a;q=b}}else{c[18400]=a|b;p=e+8|0;q=e}c[p>>2]=f;c[q+12>>2]=f;c[f+8>> 2]=q;c[f+12>>2]=e}c[18402]=d;c[18405]=i}L=j+8|0;return L|0}}}else if(a>>>0<=4294967231){a=a+11|0;o=a&-8;j=c[18401]|0;if(j){d=0-o |0;a=a>>>8;if(a)if(o>>>0>16777215)i=31;else{q=(a+1048320|0)>>>16&8;E=a<<q;p=(E+520192|0)>>>16&4;E=E<<p;i=(E+245760|0)>>>16&2;i=14 -(p|q|i)+(E<<i>>>15)|0;i=o>>>(i+7|0)&1|i<<1}else i=0;b=c[73904+(i<<2)>>2]|0;a:do if(!b){a=0;b=0;E=86}else{f=d;a=0;g=o<<((i|0)==31 ?0:25-(i>>>1)|0);h=b;b=0;while(1){e=c[h+4>>2]&-8;d=e-o|0;if(d>>>0<f>>>0)if((e|0)==(o|0)){a=h;b=h;E=90;break a}else b=h;else d=f; e=c[h+20>>2]|0;h=c[h+16+(g>>>31<<2)>>2]|0;a=(e|0)==0|(e|0)==(h|0)?a:e;e=(h|0)==0;if(e){E=86;break}else{f=d;g=g<<(e&1^1)}}}while( 0);if((E|0)==86){if((a|0)==0&(b|0)==0){a=2<<i;a=j&(a|0-a);if(!a)break;q=(a&0-a)+-1|0;m=q>>>12&16;q=q>>>m;l=q>>>5&8;q=q>>>l;n=q>>> 2&4;q=q>>>n;p=q>>>1&2;q=q>>>p;a=q>>>1&1;a=c[73904+((l|m|n|p|a)+(q>>>a)<<2)>>2]|0}if(!a){i=d;j=b}else E=90}if((E|0)==90)while(1){ E=0;q=(c[a+4>>2]&-8)-o|0;e=q>>>0<d>>>0;d=e?q:d;b=e?a:b;e=c[a+16>>2]|0;if(e|0){a=e;E=90;continue}a=c[a+20>>2]|0;if(!a){i=d;j=b;break }else E=90}if((j|0)!=0?i>>>0<((c[18402]|0)-o|0)>>>0:0){f=c[18404]|0;if(j>>>0<f>>>0)ya();h=j+o|0;if(j>>>0>=h>>>0)ya();g=c[j+24>>2 ]|0;d=c[j+12>>2]|0;do if((d|0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if(!a){b=j+16 ...
n/a
function Ss(b, d, e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=4096)return Ea(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if(!e)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}
n/a
function Ts(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 Ss(b,c,d)|0;return b|0}
n/a
function Ns(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;h=b&3;i=d|d<<8|d<<16|d<<24;g=f&~3;if(h){h =b+4-h|0;while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(g|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(f|0)){a[b>>0]=d;b=b+1|0}return b-e|0}
n/a
function ib(a){a=a|0;c[18364]=(a|0)!=0&1;return 0}
n/a
function Hs(a, b){a=a|0;b=b|0;var d=0,e=0;if(!a){a=Fs(b)|0;return a|0}if(b>>>0>4294967231){c[(Ar()|0)>>2]=12;a=0;return a|0}d=Is( a+-8|0,b>>>0<11?16:b+11&-8)|0;if(d|0){a=d+8|0;return a|0}d=Fs(b)|0;if(!d){a=0;return a|0}e=c[a+-4>>2]|0;e=(e&-8)-((e&3|0)==0?8:4 )|0;Ss(d|0,a|0,(e>>>0<b>>>0?e:b)|0)|0;Gs(a);a=d;return a|0}
n/a
function Qs(a, b, d, e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;p=p+1|0;c[a>>2]=p;while((f|0)<(e|0)){if(!(c[d+(f<<3)>>2]|0)){c[d+(f<<3)>>2]= p;c[d+((f<<3)+4)>>2]=b;c[d+((f<<3)+8)>>2]=0;C=e;return d|0}f=f+1|0}e=e*2|0;d=Hs(d|0,8*(e+1|0)|0)|0;d=Qs(a|0,b|0,d|0,e|0)|0;C=e;return d|0}
n/a
function Rs(a, b, d){a=a|0;b=b|0;d=d|0;var e=0,f=0;while((f|0)<(d|0)){e=c[b+(f<<3)>>2]|0;if(!e)break;if((e|0)==(a|0))return c[b+(( f<<3)+4)>>2]|0;f=f+1|0}return 0}
n/a
function abort(what){if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT= true;EXITSTATUS=1;var extra="\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";var output="abort("+what+") at "+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}
...
}
};
"writestart progress write abort".split(" ").forEach(function(event) {
writer["on" + event] = filesaver["on" + event];
});
writer.write(blob);
filesaver.abort = function() {
writer.abort();
filesaver.readyState = filesaver.DONE;
};
filesaver.readyState = filesaver.WRITING;
}), fs_error);
}), fs_error);
};
dir.getFile(name, {create: false}, abortable(function(file) {
...
function addOnExit(cb){__ATEXIT__.unshift(cb)}
n/a
function addOnInit(cb){__ATINIT__.unshift(cb)}
n/a
function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}
n/a
function addOnPreMain(cb){__ATMAIN__.unshift(cb)}
n/a
function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}
n/a
function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies )}}
n/a
function allocate(slab, types, allocator, ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false ;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc ==="function"?_malloc:Runtime.staticAlloc,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";setValue(ret+i,curr,type);if(previousType!==type){typeSize=Runtime.getNativeTypeSize(type );previousType=type}i+=typeSize}return ret}
...
var Module;if(typeof Module==="undefined")Module={};if(!Module.expectedDataFileDownloads){Module.expectedDataFileDownloads
=0;Module.finishedDataFileDownloads=0}Module.expectedDataFileDownloads++;((function(){var loadPackage=(function(metadata){function
runWithFS(){var fileData0=[];fileData0.push.apply(fileData0,[79,84,84,79,0,13,0,128,0,3,0,80,67,70,70,32,137,224,82,238,0,0,7,132
,0,0,45,223,70,70,84,77,101,130,23,249,0,0,55,12,0,0,0,28,71,68,69,70,0,160,0,4,0,0,53,100,0,0,0,32,71,80,79,83,184,255,184,254,
0,0,54,220,0,0,0,48,71,83,85,66,234,147,151,221,0,0,53,132,0,0,1,88,79,83,47,50,131,156,137,79,0,0,1,64,0,0,0,96,99,109,97,112,146
,230,183,142,0,0,5,184,0,0,1,170,104,101,97,100,251,7,171,9,0,0,0,220,0,0,0,54,104,104,101,97,7,42,2,2,0,0,1,20,0,0,0,36,104,109
,116,120,33,252,29,155,0,0,55,40,0,0,0,234,109,97,120,112,0,115,80,0,0,0,1,56,0,0,0,6,110,97,109,101,152,108,186,46,0,0,1,160,0,
0,4,23,112,111,115,116,0,3,0,1,0,0,7,100,0,0,0,32,0,1,0,0,0,2,0,0,252,84,172,109,95,15,60,245,0,11,3,232,0,0,0,0,204,138,51,83,0
,0,0,0,204,138,51,83,0,87,255,44,2,124,4,82,0,0,0,8,0,2,0,0,0,0,0,0,0,1,0,0,4,82,255,44,0,90,2,211,0,0,0,0,2,124,0,1,0,0,0,0,0,0
,0,0,0,0,0,0,0,0,0,2,0,0,80,0,0,115,0,0,0,3,2,211,1,144,0,5,0,0,2,138,2,188,0,0,0,140,2,138,2,188,0,0,1,224,0,49,1,2,0,0,2,0,5,9
,0,0,0,0,0,0,0,0,0,35,0,0,42,0,0,0,0,0,0,0,0,0,80,102,69,100,0,64,0,32,37,160,3,32,255,56,0,90,4,82,0,212,0,0,0,1,0,0,0,0,2,56,3
,12,0,32,0,32,0,1,0,0,0,24,1,38,0,1,0,0,0,0,0,0,0,86,0,174,0,1,0,0,0,0,0,1,0,4,1,15,0,1,0,0,0,0,0,2,0,7,1,36,0,1,0,0,0,0,0,3,0,33
,1,112,0,1,0,0,0,0,0,4,0,5,1,158,0,1,0,0,0,0,0,5,0,10,1,186,0,1,0,0,0,0,0,6,0,4,1,207,0,1,0,0,0,0,1,0,0,16,2,224,0,1,0,0,0,0,1,1
,0,23,2,166,0,1,0,0,0,0,1,2,0,20,2,97,0,1,0,0,0,0,1,3,0,15,2,39,0,1,0,0,0,0,1,4,0,16,1,246,0,3,0,1,4,9,0,0,0,172,0,0,0,3,0,1,4,9
,0,1,0,8,1,5,0,3,0,1,4,9,0,2,0,14,1,20,0,3,0,1,4,9,0,3,0,66,1,44,0,3,0,1,4,9,0,4,0,10,1,146,0,3,0,1,4,9,0,5,0,20,1,164,0,3,0,1,4
,9,0,6,0,8,1,197,0,3,0,1,4,9,1,0,0,32,2,190,0,3,0,1,4,9,1,1,0,46,2,118,0,3,0,1,4,9,1,2,0,40,2,55,0,3,0,1,4,9,1,3,0,30,2,7,0,3,0,
1,4,9,1,4,0,32,1,212,0,77,0,97,0,116,0,116,0,104,0,101,0,119,0,32,0,83,0,107,0,97,0,108,0,97,0,32,0,40,0,50,0,48,0,49,0,49,0,45,
0,49,0,50,0,41,0,59,0,32,0,98,0,97,0,115,0,101,0,100,0,32,0,111,0,110,0,32,0,99,0,111,0,100,0,101,0,32,0,98,0,121,0,32,0,82,0,105
,0,99,0,104,0,97,0,114,0,100,0,32,0,66,0,46,0,32,0,87,0,97,0,108,0,101,0,115,0,32,0,40,0,49,0,57,0,56,0,56,0,45,0,56,0,57,0,41,0
,32,0,97,0,110,0,100,0,32,0,84,0,111,0,114,0,32,0,76,0,105,0,108,0,108,0,113,0,118,0,105,0,115,0,116,0,0,77,97,116,116,104,101,119
,32,83,107,97,108,97,32,40,50,48,49,49,45,49,50,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,82,105,99,104
,97,114,100,32,66,46,32,87,97,108,101,115,32,40,49,57,56,56,45,56,57,41,32,97,110,100,32,84,111,114,32,76,105,108,108,113,118,105
,115,116,0,0,79,0,67,0,82,0,65,0,0,79,67,82,65,0,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,0,82,101,103,117,108,97,114,0,0,70,0,
111,0,110,0,116,0,70,0,111,0,114,0,103,0,101,0,32,0,50,0,46,0,48,0,32,0,58,0,32,0,79,0,67,0,82,0,32,0,65,0,32,0,58,0,32,0,50,0,55
,0,45,0,57,0,45,0,50,0,48,0,49,0,50,0,0,70,111,110,116,70,111,114,103,101,32,50,46,48,32,58,32,79,67,82,32,65,32,58,32,50,55,45,
57,45,50,48,49,50,0,0,79,0,67,0,82,0,32,0,65,0,0,79,67,82,32,65,0,0,86,0,101,0,114,0,115,0,105,0,111,0,110,0,32,0,50,0,32,0,0,86
,101,114,115,105,111,110,32,50,32,0,0,79,0,67,0,82,0,65,0,0,79,67,82,65,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,
32,0,104,0,121,0,112,0,104,0,101,0,110,0,0,65,108,116,101,114,110,97,116,101,32,104,121,112,104,101,110,0,0,65,0,108,0,116,0,101
,0,114,0,110,0,97,0,116,0,101,0,32,0,99,0,111,0,109,0,109,0,97,0,0,65,108,116,101,114,110,97,116,101,32,99,111,109,109,97,0,0,65
,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,97,0,112,0,111,0,115,0,116,0,114,0,111,0,112,0,104,0,101,0,0,65,108,116,101
,114,110,97,116,101,32,97,112,111,115,116,114,111,112,104,101,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,113,0
,117,0,101,0,115,0,116,0,105,0,111,0,110,0,32,0,109,0,97,0,114,0,107,0,0,65,108,116,101,114,110,97,116,101,32,113,117,101,115,116
,105,111,110,32,109,97,114,107,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,112,0,101,0,114,0,105,0,111,0,100,0,
0,65,108,116,101,114,110,97,116,101,32,112,101,114,105,111,100,0,0,0,0,0,3,0,0,0,3,0,0,0,28,0,1,0,0,0,0,0,164,0,3,0,1,0,0,0,28,0
,4,0,136,0,0,0,30,0,16,0,3,0,14,0,93,0,125,0,163,0,165,0,198,0,209,0,214,0,216,0,220,2,198,2,220,36,66,37,2,37,160,255,255,0,0,0
,32,0,95,0,163,0,165,0,196,0,209,0,214,0,216,0,220,2,198,2,220,36,64,37,2,37,160,255,255,255,225,255,225,255,192,255,191,255,167
,255,157,255,153,255,152,255,149,253,121,253,131,220,40,219,112,218,192,0,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,1,6,0,0,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,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,0,64,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,91,92,93,94,0,0,107,108,0,0,110,111,113,0
,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,109,112,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,95,0,0,0,0,0,0,0,0,0,0,0,
3,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,0,0,0,0,0,1,0,4,4,0,1,1,1,5,79,67,82,65,0,1,2,0,1,0,52,248,37,0,248,38,1,248
,39,2,248,40,3,248,24,4,140,12,1,139,12,3,139,12,4,226,251,104,249,16,250,230,5,28,1,37,15,28,0,0,16,28,2,10,17,28,0,52,28,44,255
,18,0,14,2,0,1,0,8,0,18,0,30,0,45,0,54,0,64,0,71,0,78,0,85,0,92,0,93,0,179,0,184,0,188,117,110,105,50,53,65,48,112,101,114,105,111
,100,46,97,108,116,113,117,101,115,116,105,111,110,46,97,108,116,113,117,111,116,101,115,105,110,103,108,101,46,97,108,116,99,111
,109,109,97,46,97,108,116,104,121,112,104,101,110,46,97,108,116,117,110,105,50,52,52,48,117,110,105,50,52,52,49,117,110,105,50,52
,52,50,117,110,105,50,53,48,50,50,77,97,116,116,104,101,119,32,83,107,97,108,97,32,40,50,48,49,49,45,49,50,41,59,32,98,97,115,101
,100,32,111,110,32,99,111,100,101,32,98,121,32,82,105,99,104,97,114,100,32,66,46,32,87,97,108,101,115,32,40,49,57,56,56,45,56,57
,41,32,97,110,100,32,84,111,114,32,76,105,108,108,113,118,105,115,116,79,67,82,32,65,79,67,82,65,0,0,0,0,1,0,2,0,3,0,4,0,5,0,6,0
,7,0,104,0,9,0,10,0,11,0,12,0,13,0,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,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,54,0,55,0,56,0,57,0,58
,0,59,0,60,0,61,0,62,0,126,0,64,0,124,0,66,0,67,0,68,0,69,0,70,0,71,0,72,0,73,0,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,94,0,127,1,135,1,136,1,137,0,98,0,100,1,138,1,139,1,140,1,141,1,142,1,143,0,
173,0,175,0,138,0,186,0,189,0,141,0,195,1,144,0,115,2,0,1,0,2,0,3,0,83,0,176,1,63,1,187,2,61,2,234,3,34,3,139,3,246,4,140,4,211,
5,14,5,53,5,71,5,130,5,188,6,14,6,92,6,201,7,21,7,123,7,211,8,39,8,144,8,232,9,27,9,119,9,196,9,216,10,39,10,170,11,66,11,143,11
,243,12,105,12,231,13,39,13,99,13,228,14,46,14,118,14,188,15,28,15,68,15,149,15,210,16,117,16,190,17,91,17,192,18,53,18,125,18,197
,19,19,19,142,20,9,20,87,20,138,20,206,21,11,21,83,21,150,21,183,21,243,22,121,23,30,23,143,23,241,24,117,24,203,25,137,25,231,26
,82,26,217,27,62,27,121,27,254,28,88,28,228,29,153,29,252,30,80,30,236,31,77,31,171,32,7,32,141,33,8,33,124,33,201,34,51,34,94,34
,199,35,51,35,66,35,109,35,221,36,79,36,202,37,3,37,58,37,70,37,124,37,187,38,0,38,114,38,227,39,107,39,238,40,193,41,142,41,252
,42,11,14,14,139,247,35,249,17,119,1,247,178,247,43,3,247,178,190,21,111,162,116,167,30,188,6,167,162,162,167,31,181,7,167,116,161
,111,30,90,6,111,116,117,111,31,249,17,4,164,252,19,5,141,111,160,117,167,139,8,165,163,160,168,31,164,248,19,139,142,5,165,115,
160,112,30,90,6,111,116,116,112,31,14,249,59,240,1,247,55,238,3,247,3,249,110,21,191,251,157,5,144,116,159,121,164,139,163,139,160
,157,143,162,8,181,247,106,247,6,139,180,251,97,5,139,137,138,137,139,137,139,115,165,119,165,139,170,139,155,163,144,165,153,216
,154,221,159,212,8,153,7,140,144,140,145,139,144,139,143,138,143,143,12,37,171,252,134,102,7,138,134,138,135,139,135,8,14,247,189
,240,247,3,240,247,62,119,1,247,104,240,236,240,3,247,5,247,240,21,111,161,116,167,30,188,251,11,6,111,161,116,167,167,162,162,167
,30,247,11,236,251,11,7,111,162,116,167,167,161,162,167,30,247,11,188,7,167,162,162,167,166,116,162,111,31,90,247,3,188,6,167,162
,162,167,167,116,161,111,31,90,247,12,6,166,117,162,111,111,116,116,112,30,251,12,42,247,12,7,166,116,162,111,111,117,116,112,30
,251,12,90,7,111,117,117,111,111,161,116,167,31,188,251,3,90,6,111,117,116,112,31,247,92,189,21,247,3,236,251,3,7,14,160,118,247
,62,240,207,241,207,240,247,62,119,1,247,5,239,237,240,237,240,3,20,112,247,5,247,112,21,111,161,117,167,30,247,40,251,11,6,111,
162,116,167,166,162,162,167,30,247,11,247,40,7,167,162,161,167,31,247,62,7,167,116,162,111,30,251,239,207,247,239,6,167,162,162,
167,167,116,161,111,31,251,40,247,12,6,166,116,162,112,111,116,116,112,30,251,12,251,40,7,111,117,117,111,31,251,62,7,111,161,116
,167,30,247,239,71,251,239,6,111,117,116,111,31,14,139,247,78,248,44,247,78,1,247,5,247,92,236,247,93,3,247,5,247,27,21,111,161,
117,167,30,155,139,154,146,148,151,8,248,33,248,146,5,146,147,143,150,139,151,139,167,116,161,111,139,123,139,124,132,130,127,8,
252,33,252,146,5,132,131,136,128,139,127,8,248,146,4,111,161,116,167,30,238,6,167,162,162,167,31,224,7,166,116,162,111,30,40,6,111
,117,116,112,31,247,189,253,59,21,111,162,116,167,30,238,6,167,162,162,167,31,223,7,167,116,162,111,30,40,6,111,116,116,111,31,14
,139,240,248,129,240,1,247,5,240,247,88,240,3,247,5,247,43,21,57,207,70,222,30,237,6,151,139,150,144,148,146,8,213,202,194,80,5,
148,129,152,133,154,139,167,139,162,162,139,167,139,152,133,151,131,148,8,87,195,5,161,157,183,163,139,176,139,167,116,162,111,139
,126,139,128,134,130,132,8,88,95,32,247,6,247,17,246,5,150,148,145,154,139,154,8,208,7,221,71,208,56,30,43,6,56,71,70,57,31,70,7
,139,126,144,126,147,130,8,235,37,47,60,5,128,129,133,126,139,123,8,240,70,21,139,185,217,205,246,251,6,83,91,60,139,5,112,116,161
,167,31,247,236,4,188,7,167,162,161,166,30,235,6,165,163,115,113,31,139,93,251,3,45,5,14,249,160,119,18,247,153,247,93,251,93,239
,19,160,247,153,248,26,21,111,162,117,167,30,163,139,158,155,145,161,8,238,247,229,5,19,192,140,144,140,144,139,144,8,166,116,162
,111,30,40,6,111,116,116,112,31,14,160,118,249,160,119,1,247,153,240,3,247,153,247,186,21,139,87,158,97,163,108,8,247,9,251,42,5
,148,128,154,131,155,139,167,139,161,162,139,167,139,150,135,150,133,148,8,251,9,247,41,5,127,155,129,160,139,165,8,247,84,7,139
,165,149,160,151,155,8,247,9,247,41,5,145,148,143,150,139,151,139,166,117,162,111,139,123,139,124,131,130,128,8,251,9,251,42,5,115
,108,120,97,139,87,8,14,160,118,249,160,119,1,247,253,240,3,247,104,190,21,111,161,116,167,30,155,139,154,147,148,150,8,247,9,247
,42,5,163,170,158,181,139,191,8,247,84,7,139,191,120,181,115,170,8,251,9,247,42,5,130,150,124,147,123,139,111,139,117,116,139,112
,139,127,143,128,145,130,8,247,9,251,41,5,151,123,149,118,139,113,8,251,84,7,139,113,129,118,127,123,8,251,9,251,41,5,133,130,135
,128,139,128,8,14,247,203,240,3,247,5,247,112,21,111,161,117,167,30,152,139,150,143,148,147,8,247,7,237,139,251,37,5,111,162,117
,167,166,162,161,167,30,139,247,37,247,7,41,5,148,131,150,135,152,139,167,139,162,161,139,167,139,155,132,152,128,149,8,251,45,247
,23,247,45,247,23,5,150,149,146,152,139,155,139,167,116,161,111,139,126,139,128,135,130,131,8,251,7,41,139,247,37,5,167,116,161,
112,111,116,117,111,30,139,251,37,251,7,237,5,130,147,128,143,126,139,111,139,117,117,139,111,139,123,145,126,150,129,8,247,45,251
,23,251,45,251,23,5,128,129,133,126,139,123,8,14,247,232,240,1,247,203,240,3,247,5,248,26,21,111,161,117,167,30,247,40,251,40,6,
111,162,116,167,166,162,162,167,30,247,40,247,40,7,167,162,161,167,167,116,162,111,31,251,40,247,40,6,166,116,162,112,111,116,116
,112,30,251,40,251,40,7,111,117,116,111,31,14,160,118,247,147,240,18,247,104,247,191,38,240,19,224,247,104,247,197,21,111,161,117
,167,30,19,208,247,40,251,96,6,111,162,116,167,167,161,162,167,30,19,224,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31
,14,247,189,247,36,1,247,5,247,240,21,111,161,116,167,30,248,33,6,167,162,162,167,31,181,7,167,116,162,111,30,252,33,6,111,117,116
,111,31,14,247,19,247,78,1,247,153,247,93,3,247,153,247,70,21,32,10,14,160,118,249,160,119,1,247,5,190,21,111,161,116,167,30,158
,139,155,149,148,154,8,248,33,249,59,5,143,147,142,147,139,149,139,166,116,162,111,139,120,139,123,129,130,124,8,252,33,253,59,5
,135,131,137,131,139,130,8,14,139,240,248,214,240,1,247,5,240,247,188,240,3,247,5,240,21,84,185,93,194,30,247,188,6,193,186,186,
193,31,248,214,7,193,92,186,85,30,251,188,6,84,93,93,84,31,240,252,214,21,248,214,247,188,252,214,7,14,139,240,248,214,240,18,247
,5,247,191,38,240,237,240,19,232,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,247,146,7,167,116,162,111,111,117,116
,111,30,251,96,7,19,216,41,249,59,251,141,6,19,232,111,117,116,112,111,161,116,167,31,19,216,247,40,252,214,251,40,6,111,117,116
,112,31,14,139,240,247,131,239,247,131,240,1,247,5,240,247,188,240,3,20,224,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31
,251,238,247,131,247,188,6,193,186,185,193,31,247,131,7,193,92,186,85,30,251,239,6,111,117,116,112,111,161,116,167,31,247,239,251
,131,251,188,6,84,93,94,84,31,14,139,240,247,131,240,247,130,240,1,248,146,240,3,20,224,247,5,190,21,111,161,116,167,30,247,239,
6,193,186,186,193,31,247,80,7,139,177,124,175,114,166,164,166,154,174,139,178,8,247,80,7,193,92,186,85,30,251,239,6,111,117,116,
112,111,161,116,167,31,247,239,251,80,6,112,116,116,111,30,251,89,6,111,117,116,111,111,161,117,167,31,247,89,6,166,163,115,112,
31,251,80,251,239,7,111,117,116,112,31,14,160,118,247,147,240,248,60,119,1,247,29,240,247,89,240,3,247,29,247,147,21,247,190,251
,96,6,111,162,116,167,166,162,162,167,30,247,96,7,167,161,161,167,167,117,162,111,31,247,181,7,167,116,161,112,111,116,117,111,30
,251,181,251,89,248,10,7,166,117,162,111,111,116,116,112,30,14,139,240,84,236,247,89,240,247,130,240,18,247,104,240,247,89,240,20
,176,19,124,247,5,232,21,139,118,151,121,157,131,8,19,188,181,121,181,111,195,139,8,247,119,6,193,186,186,193,31,247,131,7,193,92
,186,85,30,251,89,247,130,247,139,6,167,162,162,167,166,116,162,111,31,251,240,252,76,247,190,251,131,251,129,6,49,177,5,19,124,
133,142,132,140,132,139,8,111,117,117,111,31,14,139,240,247,46,240,247,215,240,18,247,5,247,42,251,42,239,247,189,240,19,236,247
,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,247,146,7,167,116,162,111,30,251,239,247,215,6,19,244,167,161,162,167,31
,19,236,166,117,162,111,30,89,6,19,244,111,117,116,112,31,19,236,239,253,9,21,247,46,247,189,251,46,7,14,160,118,249,59,240,1,247
,203,240,237,240,3,247,5,249,67,21,111,161,117,167,30,164,139,160,157,143,163,8,247,189,251,73,6,251,73,251,46,5,128,129,132,125
,139,124,8,251,146,7,111,162,116,167,166,162,162,167,30,139,247,123,247,73,247,46,5,150,149,146,153,139,154,8,247,197,252,84,7,111
,117,116,112,31,14,139,240,247,131,240,247,130,240,18,247,5,239,139,239,236,239,139,240,19,240,247,5,240,21,19,234,84,185,93,193
,30,247,189,6,193,186,186,193,31,247,131,7,19,228,193,92,186,85,30,19,234,247,181,7,166,118,162,111,30,251,91,6,111,118,116,112,
31,251,181,7,19,240,84,94,92,85,31,239,251,131,21,247,131,7,19,242,247,189,251,131,6,19,236,251,89,247,232,21,247,130,236,251,130
,7,14,139,240,247,215,240,247,46,240,18,247,5,239,247,139,247,43,38,240,19,244,247,5,248,111,21,111,161,116,167,30,247,239,251,215
,6,19,248,111,117,116,112,31,19,244,111,161,116,167,30,189,6,19,248,167,162,162,167,31,19,244,249,59,7,166,116,162,111,30,252,33
,6,111,117,116,112,31,239,251,97,21,247,46,247,189,251,46,7,14,247,19,247,78,247,46,247,78,1,247,153,247,93,3,247,153,247,70,21,
32,10,247,146,4,111,162,117,167,30,238,6,167,162,161,167,31,224,7,167,116,162,111,30,40,6,111,116,116,111,31,14,160,118,247,147,
240,247,45,247,78,18,247,104,247,92,137,240,19,240,247,104,247,197,21,111,161,117,167,30,19,232,247,40,251,96,6,111,162,116,167,
167,161,162,167,30,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31,19,240,247,147,4,111,161,116,167,30,239,6,166,162,162
,167,31,224,7,167,116,161,112,30,39,6,111,117,117,111,31,14,247,5,248,4,21,139,120,149,124,153,130,8,248,33,251,125,5,147,134,148
,137,148,139,167,139,162,161,139,167,139,158,128,155,125,148,8,251,251,247,103,247,251,247,103,5,153,148,150,155,139,158,139,167
,116,161,111,139,130,139,130,137,131,134,8,252,33,251,125,5,125,130,129,123,139,120,8,14,247,147,240,247,3,240,1,247,5,247,197,21
,33,10,247,104,4,33,10,14,247,5,247,27,21,111,161,117,167,30,148,139,148,141,147,144,8,248,38,247,128,5,152,147,146,155,139,156,
8,181,7,139,158,128,155,125,148,8,252,33,247,125,5,131,144,130,141,130,139,111,139,117,117,139,111,139,120,149,123,153,130,8,247
,252,251,103,251,252,251,103,5,125,130,129,123,139,120,8,14,139,240,249,59,119,1,247,104,240,3,247,5,248,111,21,111,161,116,167,
30,152,139,150,144,148,146,8,247,157,247,119,188,97,139,101,251,173,251,131,5,128,130,133,124,139,124,8,54,7,111,161,117,167,167
,162,161,167,30,139,201,247,172,247,131,5,150,149,146,152,139,155,8,224,7,139,154,132,153,128,148,8,40,224,5,130,146,127,144,127
,139,126,139,128,134,130,12,37,251,190,251,147,5,128,130,133,125,139,124,8,238,252,60,21,111,161,116,167,167,162,162,167,166,116
,162,111,111,117,116,112,30,14,139,240,247,173,240,247,88,240,1,247,5,240,236,240,237,240,3,20,224,20,28,247,5,247,42,21,57,206,
71,221,30,177,139,174,154,166,163,165,115,174,124,177,139,8,220,208,207,221,31,248,88,7,235,58,221,42,30,251,35,6,93,139,96,120,
105,108,118,120,106,109,139,103,139,111,161,116,167,139,158,139,157,150,147,155,153,166,171,170,175,139,8,247,35,6,181,174,104,97
,31,252,88,7,113,117,116,112,112,117,161,166,30,247,174,7,167,116,162,112,30,39,6,57,72,71,57,31,240,251,75,21,247,75,7,166,160,
161,166,30,188,251,124,6,112,117,117,112,112,118,161,166,30,14,160,118,247,62,240,248,145,119,1,247,2,190,21,111,163,116,167,30,
162,139,159,154,145,160,8,178,247,26,247,115,139,178,251,26,5,145,118,158,124,162,139,8,167,163,162,167,31,251,94,249,73,5,133,160
,118,154,117,139,116,139,120,124,133,118,8,106,252,109,21,220,247,170,221,251,170,5,14,139,240,247,131,240,247,130,240,1,247,5,240
,247,188,240,3,247,5,22,247,188,6,247,2,231,232,247,1,31,176,7,139,198,111,194,97,176,181,176,167,194,139,198,8,176,7,247,1,47,232
,251,2,30,251,188,6,240,253,59,21,247,131,247,87,7,193,186,92,85,31,102,7,85,92,92,85,30,251,87,247,232,21,247,130,247,87,7,193,
186,92,85,31,102,7,85,92,93,85,30,14,139,240,248,214,240,1,247,5,240,3,247,5,248,26,21,139,98,149,107,153,109,171,69,174,73,174,
72,162,94,189,100,201,139,8,247,78,6,167,162,162,167,166,116,162,111,31,251,78,6,119,139,122,152,132,154,8,36,247,95,5,131,156,134
,157,139,162,139,162,144,157,156,12,37,242,247,95,5,146,154,156,152,159,139,8,247,78,6,167,162,162,167,166,116,162,111,31,251,78
,6,77,139,86,102,118,93,8,38,251,96,5,125,110,129,106,139,98,8,14,139,240,248,214,240,1,247,104,240,247,89,240,3,247,5,190,21,111
,161,116,167,30,247,78,6,201,139,192,176,160,185,8,240,247,96,5,153,168,150,173,139,179,139,179,128,173,125,168,8,37,247,95,5,116
,184,89,178,77,139,8,251,78,6,111,117,116,112,111,161,116,167,31,188,252,214,90,6,111,117,116,112,31,247,92,189,21,248,214,175,7
,159,139,156,126,146,124,8,242,251,95,5,147,123,145,119,139,117,139,117,132,120,122,12,37,36,251,95,5,132,124,122,126,119,139,8,
14,139,240,247,131,240,247,130,240,1,247,5,240,3,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31,251,238,247,131,247,40,6,166
,162,161,167,167,116,162,112,31,251,40,247,130,247,238,6,167,162,162,167,166,116,162,111,31,252,83,6,14,160,118,248,60,240,247,46
,240,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,248,9,247,139,7,167,161,162,167,167,117,161,111,31,251,139,247
,46,247,238,6,167,162,162,167,166,116,162,111,31,252,83,6,14,139,240,247,46,240,247,215,240,18,247,5,240,247,39,247,142,38,240,19
,244,247,5,247,44,21,56,206,70,223,30,247,87,6,222,208,208,222,31,247,96,251,92,7,19,248,111,117,116,111,111,161,117,167,31,19,244
,238,36,6,111,115,116,112,30,251,87,6,112,116,162,167,31,247,163,7,139,165,148,159,151,155,8,247,28,247,66,5,147,150,153,148,157
,139,8,247,41,6,167,162,162,167,166,116,162,111,31,251,41,6,86,139,97,113,114,107,8,251,28,251,68,5,115,108,121,99,139,87,8,14,160
,118,247,232,240,247,231,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,247,181,247,188,251,181,7
,111,161,116,167,167,162,162,167,30,249,59,7,166,116,162,111,111,117,116,112,30,251,181,251,188,247,181,7,166,116,162,111,111,117
,116,112,30,14,139,240,248,214,240,1,247,203,240,3,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251
,40,248,214,247,40,6,167,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,111,161,116,167,31,247,40,252,214,251,40,6,111,
117,116,112,31,14,139,240,249,59,119,1,247,54,240,247,89,240,3,247,54,247,43,21,56,208,71,222,30,234,6,222,208,208,221,31,248,215
,7,166,116,162,111,111,117,116,112,30,252,215,7,112,116,116,111,30,44,6,111,116,161,167,31,247,46,7,167,117,162,111,111,116,116,
111,30,14,160,118,249,160,119,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,121,247,205,251,160,5,148,132
,150,134,152,139,167,139,162,162,139,167,139,154,132,153,128,148,8,251,244,247,193,247,244,247,193,5,150,148,146,153,139,155,139
,166,116,162,111,139,126,139,128,134,130,132,8,251,205,251,160,139,247,122,5,166,116,162,111,111,117,116,112,30,14,139,240,249,59
,119,1,247,5,240,3,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31,251,238,249,9,6,166,116,162,111,111,117,116,112,30,14,160
,118,249,160,119,1,247,5,240,236,240,237,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,248,224,236,251,30,139,113,5,
111,162,116,167,166,162,162,167,30,139,165,237,247,32,139,252,226,5,111,161,116,167,167,162,162,167,30,249,109,251,19,7,251,14,251
,67,251,15,247,67,251,18,139,5,14,160,118,249,160,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,
139,248,185,247,155,252,236,247,26,139,139,249,110,5,166,116,162,111,111,117,116,112,30,139,252,188,251,156,248,238,251,25,139,5
,14,139,240,248,214,240,1,247,5,240,247,188,240,3,247,5,248,26,21,139,98,148,106,154,110,8,246,251,107,5,159,101,182,105,193,139
,194,139,182,173,159,177,8,246,247,107,5,153,168,150,173,139,179,139,179,128,173,125,168,8,32,247,107,5,119,177,96,173,84,139,85
,139,96,105,119,101,8,32,251,107,5,125,110,129,106,139,98,8,247,6,197,21,247,0,247,105,5,144,149,148,147,151,139,151,139,150,130
,143,12,37,247,0,251,105,5,147,123,145,119,139,117,139,117,132,120,122,12,37,32,251,107,5,134,129,130,133,125,139,127,139,129,147
,135,148,8,251,0,247,106,5,131,156,134,157,139,162,139,162,144,157,156,12,37,14,160,118,247,189,240,247,173,240,1,247,5,240,247,
188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,247,138,247,137,7,222,208,208,222,31,247,72,7,221,70,208,56,30,251,238
,6,240,252,18,21,247,173,247,137,7,165,164,116,112,31,251,72,7,111,115,116,112,30,14,139,240,249,59,119,1,247,5,240,236,247,13,217
,240,3,247,5,247,15,21,72,194,83,206,30,172,139,166,152,158,156,8,214,203,176,45,247,26,139,5,167,162,162,167,166,116,162,111,31
,74,139,115,200,5,201,191,217,189,139,247,3,8,247,174,7,206,82,195,72,30,107,139,110,126,121,122,8,251,117,251,82,5,100,105,108,
85,139,72,8,240,251,174,21,247,174,7,139,174,154,165,158,156,8,247,124,247,87,146,139,5,152,149,130,127,31,251,174,7,139,80,93,113
,107,111,126,173,127,199,94,139,111,139,116,116,139,111,139,133,140,132,141,134,8,176,45,251,0,47,131,139,5,126,131,148,152,31,14
,160,118,248,60,240,247,46,240,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,248,9,208,7,247,125,252
,35,5,148,124,155,129,158,139,167,139,162,162,139,167,139,148,136,147,135,147,8,251,95,247,240,197,139,5,221,209,209,221,31,191,
7,222,70,208,56,30,251,238,6,240,251,147,21,247,46,247,137,7,166,163,116,111,31,87,7,112,115,115,112,30,14,139,240,248,214,240,1
,247,5,240,247,188,240,3,247,5,247,27,21,65,201,78,212,30,247,141,6,203,139,187,192,141,200,139,167,128,164,125,156,8,252,8,248,
114,139,143,139,142,5,146,146,142,144,30,247,141,6,157,156,123,121,111,161,116,167,167,162,162,167,213,76,200,66,31,251,141,6,78
,87,88,79,31,136,7,139,111,149,115,152,121,8,248,10,252,118,5,131,132,134,133,30,251,141,6,120,124,154,158,167,116,162,111,111,117
,116,111,31,14,160,118,248,230,247,78,38,240,18,247,5,240,236,240,237,240,19,220,247,5,249,25,21,111,161,116,167,167,162,162,167
,30,19,188,173,236,253,8,7,111,162,116,167,166,162,162,167,30,249,8,237,105,7,19,220,111,161,116,167,167,162,162,167,30,19,188,247
,27,252,134,7,14,139,240,249,59,119,1,247,5,240,247,188,240,3,247,5,247,43,21,57,207,70,222,30,247,87,6,222,208,208,221,31,248,215
,7,166,116,162,111,111,117,116,112,30,252,215,7,112,114,116,113,30,251,87,6,112,116,161,167,31,248,215,7,166,116,162,111,111,117
,116,112,30,14,160,118,249,160,119,1,247,5,240,247,188,240,3,247,5,248,185,21,247,93,252,153,5,147,120,157,126,161,139,160,139,157
,152,147,158,8,247,94,248,154,139,247,72,5,166,116,162,111,111,117,116,112,30,139,251,53,251,40,252,14,251,40,248,14,139,247,53,
5,166,116,162,111,111,117,116,112,30,14,139,240,249,59,119,1,247,5,240,236,240,237,240,3,247,5,247,14,21,195,42,5,148,124,156,129
,158,139,8,236,6,164,139,154,156,150,157,149,120,155,123,163,139,8,237,6,158,139,155,149,148,154,8,196,236,139,248,244,5,166,116
,162,111,111,117,116,112,30,139,252,217,110,91,98,139,5,131,153,130,159,128,156,8,247,215,7,167,116,161,112,111,116,117,111,30,251
,215,7,128,122,130,119,131,125,8,98,139,111,187,139,248,217,5,166,116,162,111,111,117,116,112,30,14,160,118,249,160,119,1,247,5,
190,21,111,161,116,167,30,158,139,155,149,148,154,8,247,47,247,156,247,46,251,156,5,148,124,155,129,158,139,167,139,162,162,139,
167,139,148,136,147,135,147,8,251,76,247,206,247,76,247,206,5,143,147,142,147,139,149,139,166,116,162,111,139,120,139,123,129,130
,124,8,251,46,251,156,251,47,247,156,5,130,154,123,149,120,139,111,139,117,116,139,112,139,129,141,131,143,131,8,247,76,251,206,
251,76,251,206,5,135,131,137,131,139,130,8,14,160,118,249,160,119,1,247,5,240,236,240,236,241,3,247,5,249,7,21,247,90,251,146,139
,251,214,5,111,162,116,167,166,162,162,167,30,139,247,214,247,91,247,146,139,242,5,166,116,162,111,111,116,116,112,30,139,71,251
,39,251,82,251,40,247,82,139,207,5,166,116,162,111,111,117,116,112,30,14,139,240,248,214,240,1,247,4,203,21,140,75,248,83,139,5,
167,162,162,167,166,116,162,111,31,251,201,139,247,252,248,251,139,203,252,84,139,5,111,117,116,112,111,161,116,167,31,247,201,6
,14,139,240,248,214,240,1,247,5,239,187,240,3,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,90
,248,214,247,90,6,167,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,31,239,253,9,21,248,214,187,252,214,7,14,160,118,249
,160,119,1,247,5,249,110,21,139,129,141,131,143,131,8,248,33,253,59,5,148,124,155,129,158,139,167,139,162,162,139,167,139,148,136
,147,135,147,8,252,33,249,59,5,130,154,123,149,120,139,111,139,117,116,139,112,8,14,139,240,248,214,240,1,247,253,240,187,240,3,
247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,249,59,7,166,116,162,111,30,252,33,6,111,117,116,112,111,161,116,167
,31,247,90,252,214,251,90,6,111,117,116,112,31,247,241,189,21,248,214,187,252,214,7,14,247,4,247,82,21,140,127,5,111,161,116,167
,30,157,139,154,148,147,151,8,247,50,247,128,247,49,251,128,5,147,127,154,130,157,139,167,139,162,162,139,167,139,146,137,146,136
,146,8,251,92,248,20,5,131,155,122,150,120,139,119,139,122,128,131,123,8,14,38,240,1,247,5,89,21,111,161,116,167,30,248,33,6,167
,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,31,14,249,160,119,1,247,54,249,110,21,139,123,146,125,150,130,8,247,190
,251,147,5,147,133,149,133,153,139,167,139,162,162,139,167,139,148,137,147,135,146,8,251,95,247,154,5,130,151,124,146,123,139,8,
40,6,111,116,116,112,31,14,139,240,247,46,240,247,3,240,18,247,5,240,247,177,238,45,246,19,244,247,5,247,42,21,57,206,71,221,30,
247,41,6,148,139,148,141,146,144,8,213,182,5,112,161,116,166,167,163,161,167,30,19,248,126,248,9,5,136,218,74,205,57,139,8,251,78
,6,111,117,116,111,111,161,117,167,31,247,78,6,195,139,132,76,141,84,125,144,124,141,124,139,8,251,85,6,57,72,71,57,31,240,83,21
,195,7,165,161,162,165,30,247,85,6,19,244,163,164,116,115,31,139,95,32,76,251,27,139,5,112,118,161,166,31,14,139,240,248,2,240,247
,104,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,154,7,174,107,177,105,201,139,8,214,6,180,139
,172,155,162,159,180,175,188,173,139,214,8,247,98,7,139,189,115,178,110,164,104,169,104,176,75,139,8,64,6,80,139,98,108,104,106,
8,247,118,7,166,116,162,111,111,117,116,112,30,240,252,142,21,247,12,7,139,155,145,153,150,146,8,225,213,5,146,146,150,144,153,139
,8,214,6,157,139,151,130,150,129,155,123,168,124,139,109,8,251,98,7,139,123,131,126,129,131,121,124,120,111,108,139,8,64,6,125,139
,128,144,132,146,8,53,213,5,129,147,132,151,139,156,8,14,139,240,248,2,240,1,247,5,240,3,247,5,247,116,21,139,88,162,101,168,114
,8,225,65,5,163,118,171,124,181,139,8,247,103,6,167,162,162,167,166,116,162,111,31,251,103,6,125,139,128,144,132,146,8,53,212,5,
129,148,132,151,139,156,8,247,12,7,139,155,145,153,150,146,8,225,213,5,146,146,150,144,153,139,8,247,103,6,167,162,161,167,167,116
,162,111,31,251,103,6,51,139,93,70,89,98,110,114,116,101,139,88,8,14,139,240,248,2,240,247,104,119,1,247,5,240,247,188,240,3,247
,5,247,73,21,139,88,161,101,169,114,174,108,173,103,204,139,8,214,6,203,139,176,173,174,172,8,123,7,111,161,116,167,167,162,162,
167,30,249,59,7,166,116,162,111,111,117,116,112,30,251,123,7,103,170,105,177,73,139,8,64,6,98,139,106,123,116,119,97,104,92,105,
139,63,8,240,251,98,21,34,10,14,139,240,247,3,240,247,46,240,1,247,5,240,247,188,240,3,247,5,247,73,21,139,88,161,101,169,114,174
,108,173,103,204,139,8,247,153,6,167,162,162,167,166,116,162,111,31,251,153,6,125,139,130,144,130,146,120,156,105,155,139,174,8,
170,247,238,7,167,162,162,167,31,247,16,7,139,190,115,177,110,164,104,170,104,175,75,139,8,251,17,6,98,139,106,123,116,119,97,104
,92,104,139,64,8,240,65,21,213,7,139,156,146,151,149,147,157,154,158,167,170,139,8,247,17,6,173,191,95,103,31,65,7,14,160,118,248
,103,240,247,3,240,1,247,128,240,3,247,29,248,153,21,111,161,117,167,30,188,252,52,6,111,162,116,167,167,161,162,167,30,248,52,238
,7,166,162,161,167,167,116,162,112,31,40,173,6,181,173,174,182,30,247,13,6,167,161,162,167,166,117,162,111,31,251,13,6,41,59,60,
40,31,105,90,7,111,117,116,111,31,14,251,104,240,247,45,240,247,216,240,1,247,5,239,247,189,240,3,247,5,247,116,21,139,88,162,101
,168,114,174,109,174,101,203,139,8,214,6,201,139,178,174,174,172,8,251,33,7,139,124,131,125,129,131,121,125,120,110,108,139,8,251
,103,6,111,116,116,111,111,162,117,167,31,247,103,6,180,139,172,155,162,159,180,175,188,173,139,214,8,248,184,7,167,116,162,111,
111,117,116,111,30,121,7,103,170,105,177,73,139,8,64,6,98,139,106,123,116,119,97,104,92,106,139,62,8,239,251,55,21,247,55,7,139,
156,147,150,149,149,159,153,154,167,172,139,8,214,6,153,139,150,134,146,132,8,225,65,5,148,131,148,125,139,124,8,61,7,139,123,131
,126,129,131,8,53,65,5,132,132,128,134,125,139,8,64,6,104,88,184,175,31,14,160,118,248,103,240,247,104,119,1,247,5,240,247,188,239
,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,203,247,55,244,210,139,5,166,139,159,117,141,114,8,152,252,7,5,112,162
,117,166,167,161,162,167,30,127,248,8,5,136,218,74,205,57,139,8,82,6,106,139,113,129,117,125,8,43,78,139,247,139,5,166,116,162,111
,111,117,116,112,30,14,139,240,248,2,240,247,3,247,35,18,247,54,247,142,251,43,247,43,39,239,19,240,247,54,190,21,35,10,19,228,41
,6,19,240,248,52,7,167,116,162,112,30,251,41,6,111,116,116,111,111,162,117,167,31,19,228,238,252,2,40,6,111,116,116,112,31,19,232
,238,249,59,21,19,228,111,162,116,167,30,189,6,19,232,166,162,162,167,31,181,7,167,116,161,112,30,19,228,89,6,19,232,111,116,117
,111,31,14,251,104,240,248,214,240,247,3,247,35,18,247,153,247,192,251,43,247,43,39,239,19,232,247,54,62,21,131,7,150,70,202,81,
215,139,8,237,6,19,228,222,207,206,222,31,19,240,248,215,7,167,116,162,111,30,251,90,6,111,116,116,111,111,162,117,167,31,19,228
,247,41,252,165,6,19,232,112,115,117,112,30,41,6,77,139,162,224,79,139,8,111,116,116,111,31,247,140,249,187,21,19,228,111,162,116
,167,30,188,6,19,232,167,162,162,167,31,181,7,167,116,161,111,30,19,228,90,6,19,232,111,116,117,111,31,14,160,118,248,204,119,247
,124,119,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,38,187,181,247,157,251,119,5,148,132,151,134,152,
139,167,139,161,162,139,167,139,154,132,153,128,148,8,251,145,247,108,247,95,247,66,5,150,148,146,153,139,154,139,167,116,162,111
,139,127,139,127,134,131,132,8,251,156,251,117,139,248,35,5,166,116,162,111,111,117,116,112,30,14,139,240,248,214,240,18,247,54,
247,142,38,240,19,224,247,54,190,21,35,10,19,208,41,6,19,224,249,9,7,166,116,162,112,30,251,41,6,111,116,116,112,111,162,116,167
,31,19,208,237,252,214,41,6,111,116,116,112,31,14,160,118,248,103,240,18,244,240,244,240,230,239,53,240,19,248,244,190,21,111,161
,116,167,167,162,162,167,30,139,247,243,214,204,147,139,5,153,147,131,125,31,252,30,7,111,162,116,167,166,162,162,167,30,139,247
,250,207,197,145,139,5,149,139,145,128,140,131,8,19,244,153,252,35,5,140,112,162,117,166,139,8,167,161,162,167,31,19,248,124,248
,37,5,137,203,82,188,78,139,114,139,112,131,116,120,8,117,121,5,117,168,103,158,100,139,102,139,111,122,118,121,133,159,119,154,
117,139,8,111,117,116,111,31,14,160,118,248,103,240,1,247,5,240,247,188,239,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139
,247,203,247,55,244,210,139,5,166,139,159,117,141,114,8,152,252,7,5,112,162,117,166,167,161,162,167,30,127,248,8,5,136,218,74,205
,57,139,8,82,6,106,139,113,129,117,125,8,43,78,139,173,5,167,116,162,111,111,117,116,111,30,14,139,240,248,2,240,1,247,5,240,247
,188,240,3,247,5,247,73,21,139,89,161,100,169,114,175,109,172,102,204,139,8,247,17,6,180,139,172,155,162,159,180,175,188,173,139
,214,8,247,98,7,139,189,115,178,110,164,104,169,104,176,75,139,8,251,17,6,98,139,106,123,116,119,97,104,92,104,139,64,8,240,251,
98,21,247,98,7,139,156,146,151,149,147,157,154,158,167,170,139,8,247,17,6,173,191,95,103,31,251,98,7,139,123,131,126,129,131,121
,124,120,111,108,139,8,251,17,6,125,139,130,144,130,146,120,156,105,155,139,174,8,14,251,83,118,247,83,240,248,44,240,1,247,5,240
,247,188,240,3,247,5,251,54,21,111,161,117,167,167,162,161,167,30,247,108,7,173,102,178,101,205,139,8,160,6,181,139,171,154,163,
160,8,225,213,5,168,164,163,179,139,188,8,247,53,7,139,220,82,175,95,179,104,171,101,175,76,139,8,118,6,70,139,105,98,103,103,8,
166,7,166,116,162,111,111,117,116,112,30,240,251,212,21,247,22,7,139,154,144,151,148,146,8,229,230,5,147,147,152,145,153,139,8,160
,6,151,139,153,133,145,133,8,226,64,5,148,132,147,124,139,124,8,251,53,7,139,124,131,124,130,132,8,52,65,5,132,132,128,134,125,139
,8,118,6,122,139,130]);fileData0.push.apply(fileData0,[144,130,148,118,158,120,160,119,159,122,156,112,154,139,172,8,14,251,83,118
,247,104,240,248,2,240,1,247,5,240,247,188,240,3,247,5,247,73,21,139,88,161,101,169,114,174,108,173,103,204,139,8,214,6,203,139,
176,173,174,172,8,251,121,7,111,161,117,167,167,162,161,167,30,249,59,7,167,116,162,111,111,117,116,111,30,121,7,103,170,105,177
,73,139,8,64,6,98,139,106,123,116,119,97,104,92,105,139,63,8,240,251,98,21,34,10,14,160,118,248,103,240,1,247,5,240,247,188,240,
3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,165,247,58,247,35,220,139,5,166,161,116,113,31,111,7,111,161,117,167,167
,162,161,167,30,167,7,221,70,207,58,30,40,6,129,139,128,137,131,133,8,251,11,37,139,198,5,167,116,162,111,111,117,116,111,30,14,
139,240,248,2,240,1,247,17,239,247,174,242,3,247,5,232,21,139,123,146,125,151,129,172,111,181,114,199,139,8,247,81,6,223,139,208
,207,140,223,8,141,7,139,204,95,193,92,160,8,251,170,247,12,5,128,143,134,149,139,149,8,153,149,154,157,30,247,106,6,176,139,148
,96,175,139,167,139,162,162,139,167,139,150,135,150,133,147,114,172,94,169,86,139,8,251,106,6,105,139,106,125,115,115,113,114,128
,108,139,108,139,88,169,89,185,119,8,247,169,251,12,5,159,130,148,120,139,120,8,112,122,112,105,30,251,95,6,132,139,127,147,132,
141,114,146,131,164,107,139,111,139,118,117,139,111,8,14,139,240,248,2,240,1,247,104,240,3,247,5,248,153,21,111,161,117,167,30,188
,251,209,6,58,207,70,220,30,239,6,214,139,201,198,152,207,8,147,7,167,116,162,111,30,78,139,162,54,78,139,8,39,6,113,117,161,166
,31,247,209,247,89,7,167,161,161,167,167,117,162,111,31,251,89,247,11,6,167,116,162,111,111,117,116,111,30,251,11,90,7,111,117,116
,111,31,14,139,240,248,103,119,1,247,5,239,247,189,240,3,247,5,248,153,21,151,252,9,5,141,61,206,73,220,139,8,196,6,172,139,165,
149,161,153,8,236,201,139,104,5,111,161,116,167,167,162,162,167,30,248,102,7,167,116,162,111,111,117,116,111,30,139,251,204,251,
56,35,68,139,5,112,139,119,160,137,165,8,126,248,7,5,166,116,161,112,111,117,116,111,30,14,160,118,248,204,119,1,247,5,240,247,188
,240,3,247,5,248,68,21,139,132,140,132,142,133,8,247,59,252,18,5,147,121,156,127,160,139,8,202,6,160,139,156,151,147,157,8,247,59
,248,18,5,142,145,141,146,139,146,8,224,7,167,116,162,111,111,117,116,111,30,139,65,251,41,251,231,251,39,247,231,139,213,5,167,
116,162,111,111,117,116,111,30,14,160,118,248,204,119,1,241,240,247,0,240,247,0,240,3,20,56,241,248,152,21,149,251,190,191,251,74
,5,145,118,159,124,162,139,8,188,6,158,139,155,149,148,154,8,195,234,194,44,5,148,124,155,129,158,139,8,188,6,162,139,159,154,145
,160,8,190,247,62,150,247,202,139,141,5,166,115,162,112,30,112,139,117,117,138,112,8,129,251,183,107,251,0,73,247,6,139,247,6,5,
166,116,162,112,111,116,116,112,30,139,251,6,73,251,6,107,247,0,129,247,183,5,138,166,117,161,112,139,8,111,116,115,111,31,14,160
,118,248,204,119,1,247,5,190,21,111,161,116,167,30,155,139,153,146,148,150,8,247,52,247,85,247,51,251,85,5,148,128,153,132,155,139
,167,139,162,162,139,167,139,151,135,150,132,148,8,251,65,247,100,247,53,247,86,5,146,148,144,150,139,151,139,167,116,162,111,139
,124,139,125,132,129,127,8,251,40,251,71,251,41,247,71,5,129,151,125,146,124,139,111,139,116,116,139,111,139,127,144,128,146,130
,8,247,53,251,86,251,65,251,100,5,132,130,136,128,139,127,8,14,251,104,240,249,59,119,1,247,5,240,247,187,241,3,247,5,251,54,21,
111,161,117,167,30,247,28,6,160,139,157,151,147,157,8,247,152,248,230,5,142,145,141,146,139,146,8,224,7,167,116,162,111,111,116,
116,111,30,139,65,251,24,251,192,107,139,251,23,247,192,139,213,5,167,116,162,111,111,117,116,111,30,54,7,139,132,140,132,142,133
,8,247,41,251,231,5,146,121,157,126,160,139,8,160,139,72,251,45,36,139,5,111,117,116,111,31,14,139,240,248,2,240,1,247,5,190,21,
111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,208,139,247,243,247,229,5,149,149,145,152,139,153,8,181,7,167
,116,162,111,30,252,9,6,111,117,116,111,111,161,117,167,31,247,185,139,251,244,251,230,5,129,130,134,126,139,125,8,14,139,240,247
,131,240,247,130,240,1,247,203,240,3,247,5,248,26,21,111,161,117,167,30,236,6,167,162,115,112,31,251,80,7,85,186,92,193,30,247,40
,6,167,162,162,167,166,116,162,111,31,251,40,247,80,6,139,178,124,174,115,166,163,166,154,174,139,178,8,247,80,247,40,7,167,162,
162,167,166,116,162,111,31,251,40,6,85,92,92,85,31,251,80,7,112,117,116,110,30,42,6,111,117,116,111,31,14,160,118,249,160,119,1,
247,203,240,3,247,203,190,21,111,162,116,167,166,162,162,167,30,247,181,38,7,240,4,240,247,181,6,166,116,162,112,111,116,116,112
,30,14,139,240,247,131,240,247,130,240,1,247,203,240,3,247,5,190,21,111,161,116,167,30,247,40,6,193,186,186,193,31,247,80,7,165,
161,164,167,30,237,6,167,162,161,167,167,116,162,111,31,41,6,111,117,162,166,31,247,80,7,193,92,186,85,30,251,40,6,111,117,116,112
,111,161,116,167,31,247,40,251,80,6,139,100,154,104,163,112,115,112,124,104,139,100,8,251,80,251,40,7,111,117,116,112,31,14,248,
62,238,247,45,240,1,247,5,240,236,240,237,240,3,20,56,247,5,248,153,21,111,161,117,167,167,162,161,167,30,247,3,7,166,160,162,166
,166,161,116,112,30,87,7,139,99,155,101,167,110,169,109,176,126,175,139,8,217,214,200,228,31,247,3,7,167,116,162,111,111,117,116
,111,30,251,3,7,113,117,114,112,112,117,164,165,30,191,7,139,180,123,177,111,167,109,169,103,153,103,139,8,62,63,77,50,31,14,226
,248,185,3,226,114,21,248,185,249,210,252,185,6,14,139,247,142,1,247,129,247,141,3,247,129,190,21,111,161,116,167,30,247,41,6,167
,161,162,167,31,247,40,7,167,117,162,111,30,251,41,6,111,117,116,111,31,14,160,118,249,160,119,1,247,104,240,3,247,5,248,111,21,
111,161,116,167,30,152,139,150,144,148,146,8,247,157,247,119,188,97,139,101,251,173,251,131,5,128,130,133,124,139,124,8,251,146,
7,111,161,116,167,167,162,162,167,30,139,247,123,247,172,247,131,5,150,149,146,152,139,155,8,224,7,139,154,132,153,128,148,8,40,
224,5,130,146,127,144,127,139,126,139,128,134,130,12,37,251,190,251,147,5,128,130,133,125,139,124,8,14,139,240,247,131,240,247,130
,240,1,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,122,139,209,247,131,247,52,139,5,167,162,
161,167,167,116,162,111,31,251,23,139,198,247,94,5,145,158,158,156,162,139,8,163,6,167,162,162,167,166,116,162,111,31,115,6,67,139
,83,87,122,82,8,72,251,122,251,53,139,5,111,117,116,111,111,161,117,167,31,247,23,139,70,251,131,77,139,5,111,117,116,112,31,14,
160,118,247,147,240,248,60,119,1,247,203,240,3,247,5,247,197,21,111,161,117,167,30,247,40,251,96,6,111,162,116,167,166,162,162,167
,30,247,96,247,40,7,167,162,161,167,167,116,162,111,31,251,40,160,6,247,84,247,219,5,143,147,142,147,139,149,139,166,116,162,111
,139,120,139,123,129,130,124,8,251,46,251,157,251,47,247,157,5,130,154,123,149,120,139,111,139,117,116,139,112,139,129,141,131,143
,131,8,247,84,251,219,139,118,251,40,139,5,111,117,116,111,31,14,249,160,119,1,247,201,243,3,247,151,249,110,21,190,251,148,5,139
,137,138,137,139,137,8,115,166,119,165,165,164,162,166,30,190,247,148,5,139,141,140,141,139,141,8,163,111,159,113,30,40,6,111,114
,116,112,31,14,160,118,247,104,247,36,1,247,253,247,42,3,247,104,247,155,21,111,161,116,167,30,238,251,53,6,111,161,116,167,30,189
,6,167,161,162,167,31,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31,14,247,232,240,1,247,5,248,26,21,33,10,14,139,240
,248,214,240,1,247,5,240,236,240,237,240,3,247,5,22,247,191,249,59,237,251,96,6,111,161,116,167,167,162,162,167,30,247,197,251,192
,253,59,42,247,96,7,167,116,162,111,111,117,116,111,30,14,160,118,247,232,240,247,231,119,1,247,5,240,247,188,240,3,247,5,190,21
,111,161,116,167,167,162,162,167,30,247,181,247,188,251,181,7,111,161,116,167,167,162,162,167,30,249,59,7,166,116,162,111,111,117
,116,112,30,251,181,252,33,7,14,160,118,247,232,240,247,231,119,1,247,5,240,236,240,237,240,3,247,5,247,232,21,247,90,251,181,6,
111,162,116,167,166,162,162,167,30,247,181,247,91,248,26,7,166,116,162,111,111,117,116,112,30,251,181,251,188,247,181,7,166,116,
162,111,111,117,116,112,30,14,160,118,247,19,240,248,2,247,78,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,30,160,139,
158,152,146,158,8,176,234,247,121,139,176,44,5,146,120,158,126,160,139,167,139,162,162,139,167,139,145,137,145,137,145,8,251,90,
248,145,5,131,158,120,152,118,139,117,139,122,126,131,120,8,251,90,252,145,5,137,133,138,133,139,133,8,248,230,4,36,10,247,65,252
,138,21,214,247,85,214,251,85,5,213,248,53,21,36,10,14,160,118,247,62,240,248,44,240,1,247,54,240,247,89,240,3,247,1,191,21,111,
164,115,167,30,162,139,159,154,145,160,8,179,247,26,247,114,139,178,251,26,5,145,118,159,124,162,139,8,167,163,162,167,31,251,27
,248,96,5,185,148,176,181,139,187,8,208,7,193,92,186,85,30,251,89,6,85,92,92,85,31,70,7,139,91,176,97,185,130,8,157,238,21,208,247
,89,70,7,251,71,251,231,21,209,247,130,161,139,209,251,130,5,14,139,240,208,240,208,240,247,130,240,18,247,253,247,142,251,142,240
,19,244,247,5,190,21,111,161,116,167,30,161,139,157,153,146,158,8,189,247,29,240,139,5,19,248,251,11,7,111,161,116,167,30,247,41
,6,167,162,162,167,166,116,162,111,31,19,244,41,247,131,237,6,19,248,167,162,161,167,167,116,162,111,31,19,244,41,247,130,237,6,
19,248,167,162,162,167,166,116,162,111,31,251,41,6,121,139,122,129,130,125,8,251,143,253,68,5,137,133,138,134,139,133,8,247,76,247
,112,21,19,244,203,247,67,139,251,67,5,14,160,118,249,16,247,36,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162
,167,30,139,247,188,247,201,251,223,5,148,129,152,133,154,139,8,167,162,162,167,31,248,60,7,167,116,161,111,111,117,117,111,30,139
,251,189,251,202,247,223,5,130,149,126,145,124,139,8,111,117,117,111,31,247,104,4,111,161,116,167,30,162,139,159,155,145,160,8,247
,240,102,142,139,5,166,160,163,166,31,182,7,166,116,162,111,30,116,139,119,123,134,118,8,251,241,176,135,139,5,113,119,115,113,31
,14,139,240,248,44,240,123,247,78,18,247,5,239,247,188,241,19,216,247,5,247,172,21,139,113,147,120,150,123,8,220,251,5,139,134,5
,172,95,169,82,214,139,8,160,6,229,139,176,225,178,196,8,192,215,5,150,155,148,159,139,164,8,189,7,139,165,130,158,128,155,8,57,
247,5,5,105,185,114,199,61,139,8,118,6,92,139,103,116,119,109,101,82,100,85,100,84,128,122,131,122,139,112,8,247,207,4,19,184,111
,161,116,167,167,161,162,167,30,224,7,166,117,162,111,111,117,116,112,30,239,252,89,21,139,192,247,10,247,61,5,19,216,143,144,147
,144,147,139,8,160,6,147,139,147,134,143,134,8,247,10,251,61,139,88,251,10,251,59,5,135,133,132,134,130,139,8,118,6,130,139,131,
144,136,145,8,247,70,248,169,21,19,184,111,162,116,167,167,162,162,167,30,224,7,166,116,162,111,111,116,116,112,30,14,139,240,248
,214,240,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,30,182,139,156,192,156,167,158,96,183,101,197,139,194,139,182,173
,159,177,8,246,247,107,5,153,168,150,173,139,179,139,222,95,198,110,198,8,205,247,5,5,143,147,142,147,139,149,139,166,116,162,111
,139,96,139,122,86,122,111,120,182,95,177,80,139,85,139,96,105,119,101,8,32,251,107,5,125,110,129,106,139,98,139,54,182,83,168,79
,8,73,251,5,5,135,131,137,131,139,130,8,240,247,231,21,139,162,144,157,147,156,8,247,0,247,105,5,144,149,148,147,151,139,151,139
,150,130,143,12,37,173,72,251,68,251,192,5,125,167,121,166,139,180,8,226,251,96,21,247,68,247,192,5,153,112,158,109,139,100,139,
117,132,120,132,122,8,251,0,251,106,5,134,129,131,132,125,139,127,139,129,147,135,12,37,14,139,240,248,129,247,78,18,247,5,240,137
,240,236,239,139,240,19,228,247,5,247,44,21,56,206,70,223,30,247,87,6,222,208,208,222,31,248,44,7,167,116,161,111,111,117,117,111
,30,252,44,7,111,115,116,112,30,251,87,6,112,116,162,167,31,248,44,7,167,116,161,111,111,117,117,111,30,19,208,238,224,21,36,10,
19,200,247,90,54,21,111,162,116,167,167,160,162,167,30,224,7,166,118,162,111,111,116,116,112,30,14,247,203,240,3,247,203,38,21,240
,28,4,183,38,6,14,249,103,20,139,21,139,139,248,204,139,247,104,139,6,251,104,139,7,158,12,10,240,10,236,142,140,140,180,140,181
,203,12,12,240,11,236,143,189,189,188,188,247,142,12,13,139,12,14,28,0,52,19,0,5,1,1,28,54,125,143,164,111,162,116,167,30,238,6,
167,162,162,167,31,224,7,167,116,161,111,30,40,6,111,116,117,111,31,11,111,161,117,167,30,248,33,6,167,162,161,167,167,116,162,111
,31,252,33,6,111,117,116,111,31,11,247,98,7,139,157,147,150,149,148,158,154,155,166,171,139,8,214,6,153,139,150,134,146,132,8,225
,65,5,148,131,148,125,139,124,8,251,12,7,139,123,131,125,129,132,8,53,65,5,132,133,128,133,125,139,8,64,6,125,139,130,144,130,146
,120,156,105,155,139,174,8,11,111,162,116,167,30,247,189,6,167,162,162,167,166,116,162,111,31,11,111,161,116,167,167,162,162,167
,30,224,7,166,116,162,111,111,117,116,112,30,11,0,0,1,0,0,0,14,0,0,0,24,0,0,0,0,0,2,0,1,0,1,0,114,0,1,0,4,0,0,0,2,0,0,0,1,0,0,0,
10,0,68,0,162,0,2,68,70,76,84,0,14,108,97,116,110,0,36,0,4,0,0,0,0,255,255,0,6,0,0,0,1,0,2,0,3,0,4,0,5,0,4,0,0,0,0,255,255,0,6,0
,0,0,1,0,2,0,3,0,4,0,5,0,6,97,97,108,116,0,38,115,115,48,49,0,44,115,115,48,50,0,50,115,115,48,51,0,56,115,115,48,52,0,62,115,115
,48,53,0,68,0,0,0,1,0,0,0,30,0,1,0,1,0,28,0,1,0,2,0,26,0,1,0,3,0,24,0,1,0,4,0,22,0,1,0,5,0,0,1,0,0,0,1,1,0,0,1,2,0,0,1,3,0,0,1,4
,0,6,0,14,0,22,0,30,0,38,0,46,0,54,0,3,0,0,0,1,0,48,0,1,0,0,0,1,0,100,0,1,0,0,0,1,0,104,0,1,0,0,0,1,0,108,0,1,0,0,0,1,0,112,0,1,
0,0,0,1,0,116,0,1,0,46,0,5,0,16,0,22,0,28,0,34,0,40,0,2,0,8,0,101,0,2,0,13,0,102,0,2,0,14,0,103,0,2,0,15,0,97,0,2,0,32,0,98,0,1,
0,5,0,8,0,13,0,14,0,15,0,32,0,1,0,6,0,82,0,1,0,1,0,15,0,1,0,6,0,66,0,1,0,1,0,32,0,1,0,6,0,93,0,1,0,1,0,8,0,1,0,6,0,89,0,1,0,1,0,
13,0,1,0,6,0,89,0,1,0,1,0,14,0,1,0,0,0,10,0,44,0,46,0,2,68,70,76,84,0,14,108,97,116,110,0,24,0,4,0,0,0,0,255,255,0,0,0,4,0,0,0,0
,255,255,0,0,0,0,0,0,0,0,0,1,0,0,0,0,204,109,177,85,0,0,0,0,204,138,51,80,0,0,0,0,204,138,51,83,2,211,0,0,2,211,0,0,1,30,0,111,0
,113,0,113,0,113,0,113,1,5,1,5,0,212,0,113,0,113,0,212,0,113,1,5,0,113,0,113,0,113,0,113,0,113,0,137,0,113,0,113,0,113,0,113,0,113
,1,5,0,212,0,113,0,113,0,113,0,113,0,113,0,110,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,162,0,113,0,113,0,113,0,113,0,113
,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,112,0,113,0,113,0,113,0,112,0,113,0,162,0,113,0,113,0,113,0,113,0
,113,0,137,0,113,0,113,0,162,0,162,0,113,0,162,0,105,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,102,0,113,0,113,0,113
,0,113,1,55,0,113,0,113,0,87,0,237,0,113,0,113,0,113,1,3,0,212,0,113,0,113,0,113,0,113,0,113,0,109,0,113,0,113,0,113,0,113,0,113
,1,55,0,0]);Module["FS_createDataFile"]("/","OCRA.otf",fileData0,true,true);var fileData1=[];fileData1
.push.apply(fileData1,[79,84,84,79,0,13,0,128,0,3,0,80,67,70,70,32,129,193,239,92,0,0,6,176,0,0,60,213,70,70,84,77,108,79,91,201
,0,0,68,252,0,0,0,28,71,68,69,70,0,190,0,4,0,0,67,136,0,0,0,32,71,80,79,83,184,255,184,254,0,0,68,204,0,0,0,48,71,83,85,66,119,90
,101,154,0,0,67,168,0,0,1,36,79,83,47,50,90,188,142,61,0,0,1,64,0,0,0,96,99,109,97,112,83,222,211,245,0,0,4,28,0,0,2,114,104,101
,97,100,6,47,76,75,0,0,0,220,0,0,0,54,104,104,101,97,4,6,251,46,0,0,1,20,0,0,0,36,104,109,116,120,49,149,74,40,0,0,69,24,0,0,1,240
,109,97,120,112,0,145,80,0,0,0,1,56,0,0,0,6,110,97,109,101,174,145,152,55,0,0,1,160,0,0,2,121,112,111,115,116,0,3,0,0,0,0,6,144,
0,0,0,32,0,1,0,0,0,2,0,0,89,59,114,1,95,15,60,245,0,11,3,232,0,0,0,0,211,135,133,179,0,0,0,0,211,135,133,179,249,67,249,67,6,189
,6,189,0,0,0,8,0,2,0,0,0,0,0,0,0,1,0,0,3,170,254,176,0,90,2,211,249,67,249,67,6,189,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,103,0,0,80
,0,0,145,0,0,0,2,2,211,1,144,0,5,0,0,2,138,2,188,0,0,0,140,2,138,2,188,0,0,1,224,0,49,1,2,0,0,2,0,5,9,0,0,0,0,0,0,0,0,0,175,0,0,
0,104,0,0,0,0,0,0,0,0,80,102,69,100,0,64,0,32,43,88,3,32,255,56,0,90,3,170,1,80,0,0,0,1,0,0,0,0,2,22,2,189,0,32,0,32,0,1,0,0,0,14
,0,174,0,1,0,0,0,0,0,0,0,67,0,136,0,1,0,0,0,0,0,1,0,4,0,214,0,1,0,0,0,0,0,2,0,7,0,235,0,1,0,0,0,0,0,3,0,41,1,71,0,1,0,0,0,0,0,4,
0,13,1,141,0,1,0,0,0,0,0,5,0,10,1,177,0,1,0,0,0,0,0,6,0,4,1,198,0,3,0,1,4,9,0,0,0,134,0,0,0,3,0,1,4,9,0,1,0,8,0,204,0,3,0,1,4,9,
0,2,0,14,0,219,0,3,0,1,4,9,0,3,0,82,0,243,0,3,0,1,4,9,0,4,0,26,1,113,0,3,0,1,4,9,0,5,0,20,1,155,0,3,0,1,4,9,0,6,0,8,1,188,0,77,0
,97,0,116,0,116,0,104,0,101,0,119,0,32,0,83,0,107,0,97,0,108,0,97,0,32,0,40,0,50,0,48,0,49,0,49,0,41,0,59,0,32,0,98,0,97,0,115,0
,101,0,100,0,32,0,111,0,110,0,32,0,99,0,111,0,100,0,101,0,32,0,98,0,121,0,32,0,78,0,111,0,114,0,98,0,101,0,114,0,116,0,32,0,83,0
,99,0,104,0,119,0,97,0,114,0,122,0,32,0,40,0,49,0,57,0,56,0,54,0,44,0,32,0,50,0,48,0,49,0,49,0,41,0,0,77,97,116,116,104,101,119,
32,83,107,97,108,97,32,40,50,48,49,49,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,78,111,114,98,101,114
,116,32,83,99,104,119,97,114,122,32,40,49,57,56,54,44,32,50,48,49,49,41,0,0,79,0,67,0,82,0,66,0,0,79,67,82,66,0,0,82,0,101,0,103
,0,117,0,108,0,97,0,114,0,0,82,101,103,117,108,97,114,0,0,70,0,111,0,110,0,116,0,70,0,111,0,114,0,103,0,101,0,32,0,50,0,46,0,48,
0,32,0,58,0,32,0,79,0,67,0,82,0,32,0,66,0,32,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,32,0,58,0,32,0,50,0,55,0,45,0,57,0,45,0,50
,0,48,0,49,0,50,0,0,70,111,110,116,70,111,114,103,101,32,50,46,48,32,58,32,79,67,82,32,66,32,82,101,103,117,108,97,114,32,58,32,
50,55,45,57,45,50,48,49,50,0,0,79,0,67,0,82,0,32,0,66,0,32,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,0,79,67,82,32,66,32,82,101,
103,117,108,97,114,0,0,86,0,101,0,114,0,115,0,105,0,111,0,110,0,32,0,50,0,32,0,0,86,101,114,115,105,111,110,32,50,32,0,0,79,0,67
,0,82,0,66,0,0,79,67,82,66,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,28,0,1,0,0,0,0,1,108,0,3,0,1,0,0,0,28,0,4,1,80,0,0,0,80,0,64,0,5,0,16,0
,126,0,161,0,164,0,169,0,175,0,180,0,184,0,191,0,196,0,198,0,214,0,216,0,220,0,223,0,228,0,230,0,246,0,248,0,252,1,49,1,83,2,55,
2,199,2,217,2,220,3,147,3,152,3,155,3,158,3,160,3,163,3,166,3,168,33,38,33,145,33,147,34,6,43,34,43,88,255,255,0,0,0,32,0,161,0,
164,0,167,0,174,0,180,0,184,0,191,0,196,0,198,0,214,0,216,0,220,0,223,0,228,0,230,0,246,0,248,0,252,1,49,1,82,2,55,2,198,2,216,2
,220,3,147,3,152,3,155,3,158,3,160,3,163,3,165,3,168,33,38,33,145,33,147,34,6,43,34,43,88,255,255,255,225,255,191,255,189,255,187
,255,183,255,179,255,176,255,170,255,166,255,165,255,150,255,149,255,146,255,144,255,140,255,139,255,124,255,123,255,120,255,68,
255,36,254,65,253,179,253,163,253,161,252,235,252,231,252,229,252,227,252,226,252,224,252,223,252,222,223,97,222,247,222,246,222
,132,213,105,213,52,0,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,1,6,0,0,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,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,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,91,92,93,94,95,0,106,0,0,0,0,108,110,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,0,0,0,0,116,0,0,0,0,98,0,0,111,101,100,0
,103,99,0,107,109,0,0,0,0,0,0,0,0,0,0,0,0,0,0,113,115,105,96,0,0,0,0,138,0,0,0,0,0,0,0,118,119,0,0,0,0,0,0,0,0,0,0,0,0,0,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,121,125,102,123,124,0,104,0,0,122,0,0,0,3,0,0,0,0,0,0,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,4,4,0,1,1,1,5,79,67,82,66,0,1,2,0,1,0,54,248,47,0,248,48,1,248,49,2,248,50,3,248,51,4,139,12,3,139,12,4,28
,249,67,28,249,67,28,6,189,28,6,189,5,28,1,96,15,28,0,0,16,28,2,129,17,28,0,70,28,58,29,18,0,25,2,0,1,0,9,0,14,0,19,0,25,0,27,0,
29,0,34,0,41,0,44,0,47,0,50,0,57,0,66,0,71,0,78,0,85,0,100,0,109,0,121,0,128,0,133,0,200,0,213,0,217,0,223,100,111,116,108,101,115
,115,106,71,97,109,109,97,84,104,101,116,97,76,97,109,98,100,97,88,105,80,105,83,105,103,109,97,85,112,115,105,108,111,110,80,104
,105,80,115,105,79,104,109,97,114,114,111,119,117,112,97,114,114,111,119,100,111,119,110,68,101,108,116,97,117,110,105,50,66,50,
50,117,110,105,50,66,53,56,113,117,111,116,101,115,105,110,103,108,101,46,97,108,116,103,114,97,118,101,46,97,108,116,113,117,111
,116,101,100,98,108,46,97,108,116,98,97,114,46,97,108,116,50,46,48,48,48,77,97,116,116,104,101,119,32,83,107,97,108,97,32,40,50,
48,49,49,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,78,111,114,98,101,114,116,32,83,99,104,119,97,114,
122,32,40,49,57,56,54,44,32,50,48,49,49,41,79,67,82,32,66,32,82,101,103,117,108,97,114,79,67,82,66,78,111,114,109,97,108,0,0,0,0
,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,
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,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,94,0,95,0,96,0,103,0,102,0,131,0,170,0,165,0,128,0,125,0
,133,0,123,0,173,0,138,0,189,0,141,0,195,0,149,0,202,0,144,0,218,0,147,0,224,0,145,0,142,0,148,1,135,0,126,0,136,0,129,0,130,0,127
,1,136,1,137,1,138,1,139,1,140,1,141,1,142,1,143,1,144,1,145,1,146,1,147,1,148,1,149,1,150,1,151,1,152,1,153,1,154,0,145,2,0,1,0
,2,0,3,0,31,0,134,1,64,1,254,2,176,3,110,3,165,3,251,4,77,4,200,5,15,5,80,5,119,5,161,5,218,6,78,6,146,7,13,7,136,7,236,8,103,8,
208,9,37,9,176,10,36,10,87,10,169,10,245,11,55,11,131,12,3,12,205,13,33,13,167,14,30,14,116,14,191,14,254,15,163,15,235,16,47,16
,142,16,236,17,26,17,125,17,206,18,9,18,96,19,6,19,124,20,12,20,67,20,156,20,225,21,106,21,227,22,58,22,133,22,189,22,248,23,52,
23,60,23,101,23,162,24,29,24,164,25,33,25,166,26,21,26,116,27,26,27,118,27,165,28,14,28,114,28,183,29,47,29,127,29,152,30,22,30,
154,30,241,31,128,31,239,32,81,32,167,33,31,33,152,34,3,34,80,34,222,35,1,35,141,35,172,35,200,36,138,37,81,37,142,38,150,38,174
,38,209,39,13,39,94,39,222,40,102,40,217,41,86,42,19,42,173,43,64,43,208,44,172,44,233,45,146,46,7,46,38,46,203,47,89,47,163,47,
171,47,251,48,68,48,86,48,117,48,183,49,20,49,120,49,170,49,245,50,118,50,228,51,146,52,7,52,175,53,15,53,111,53,164,53,188,53,189
,53,224,54,29,54,90,54,118,14,14,66,247,38,18,247,182,247,38,251,15,239,19,192,247,182,116,21,32,10,19,160,162,247,198,21,33,10,
14,248,86,247,212,18,247,53,247,22,251,22,239,247,84,247,15,251,15,237,19,160,247,53,248,136,21,113,163,115,165,30,166,139,159,160
,142,161,8,168,247,119,5,19,192,139,141,140,140,139,141,8,162,115,161,112,30,110,6,112,116,116,112,31,19,136,247,184,251,112,21,
112,162,116,166,30,165,139,156,157,144,161,8,19,144,164,247,122,139,143,5,164,114,160,114,30,116,6,112,116,117,111,31,14,247,96,
239,247,49,239,247,104,119,1,247,242,238,195,238,3,247,5,247,146,21,139,113,159,118,164,136,8,102,251,59,5,112,163,116,165,30,163
,139,159,156,144,161,8,179,247,70,247,17,139,104,251,48,139,128,5,112,162,116,166,30,162,139,160,157,144,160,8,179,247,70,193,139
,5,166,162,162,166,166,117,162,111,31,108,139,174,247,49,155,139,5,166,162,162,166,31,139,164,120,160,115,143,8,173,247,43,139,150
,5,167,116,161,112,30,114,139,122,120,132,119,8,100,251,65,251,18,139,175,247,54,5,165,115,163,113,30,115,139,119,121,134,118,8,
100,251,65,84,139,5,111,117,117,111,111,162,117,166,31,172,139,103,251,49,122,139,5,111,117,117,111,31,247,61,189,21,175,247,49,
247,17,139,104,251,49,5,14,181,239,248,54,118,213,241,1,247,8,238,237,239,239,239,3,247,5,247,69,21,139,133,139,132,142,133,169,
64,211,106,234,131,8,137,7,111,162,117,166,166,162,162,166,30,141,7,247,1,155,230,205,139,247,2,139,247,14,41,178,37,170,8,247,79
,7,177,131,165,122,161,111,148,127,152,130,158,139,166,139,162,162,139,165,139,150,135,149,133,147,102,193,86,173,62,149,8,144,7
,166,116,162,112,112,116,117,111,30,134,7,33,127,48,85,139,251,2,139,251,13,238,102,237,111,8,251,103,7,113,141,114,143,120,149,
108,155,134,192,95,139,112,139,116,117,139,111,8,241,247,250,21,139,191,186,158,190,146,8,251,49,7,102,153,78,155,139,188,8,247,
90,252,26,21,247,72,7,188,122,190,113,139,91,139,86,92,113,86,129,8,14,126,239,228,239,247,100,239,228,239,18,247,7,237,199,236,
124,237,199,236,19,249,247,5,182,21,111,162,116,166,30,156,139,157,151,148,152,8,248,35,249,55,5,143,146,142,148,139,148,139,166
,116,162,112,139,126,139,125,135,129,129,8,252,42,253,65,5,134,132,137,130,139,130,8,141,248,218,21,68,180,69,226,30,19,253,224,
181,211,211,211,97,212,54,55,95,64,66,31,237,142,21,162,146,161,162,162,146,116,117,120,131,114,117,30,130,6,123,144,134,161,139
,156,8,19,251,247,34,252,136,21,68,180,69,226,224,181,212,211,211,97,211,54,30,55,95,64,66,31,237,142,21,162,145,161,163,162,146
,116,117,120,130,114,118,30,133,6,138,140,138,140,138,139,8,123,134,167,153,31,14,126,239,248,222,239,18,247,5,239,67,239,247,75
,239,127,240,19,228,247,5,247,97,21,139,251,26,227,56,247,24,138,8,145,6,197,139,187,154,179,164,152,122,150,119,167,139,166,139
,162,162,139,166,139,165,120,155,128,155,176,195,158,212,139,220,8,166,116,163,112,112,115,116,111,30,139,95,132,98,125,105,8,251
,35,247,91,5,19,216,206,191,247,1,204,139,247,9,8,236,51,193,43,251,10,58,70,251,8,30,139,61,172,85,175,90,8,85,91,96,79,139,45,
8,19,224,239,22,139,197,167,170,169,169,8,247,47,251,107,5,115,125,111,131,106,139,8,133,6,62,140,94,178,139,217,8,19,216,167,248
,19,21,199,178,164,199,175,187,127,100,30,139,115,121,114,126,123,111,105,101,111,100,111,8,115,173,116,176,139,189,8,14,247,168
,247,67,3,247,168,249,100,21,159,251,182,5,141,114,160,121,166,139,8,173,6,165,139,157,156,144,163,8,160,247,184,5,139,140,140,140
,139,140,139,162,118,160,116,142,8,58,6,112,116,117,111,31,14,249,153,119,1,247,148,239,3,247,148,248,7,21,139,251,76,237,251,9,
247,4,64,147,134,149,136,149,139,166,139,162,161,139,167,139,156,129,156,127,147,50,196,62,232,139,247,35,8,144,7,141,247,46,209
,228,233,201,152,148,148,155,139,155,139,167,116,161,112,139,129,139,129,136,131,133,251,6,60,45,251,9,137,251,83,8,14,249,153,119
,1,248,6,239,3,247,73,176,21,112,162,116,166,30,149,139,149,142,147,144,247,6,216,236,247,10,139,247,79,139,247,84,43,247,8,251,
7,218,131,145,130,142,128,139,112,139,116,116,139,112,139,126,148,115,152,135,8,230,77,215,47,139,251,43,139,251,41,64,50,47,79,
127,131,129,121,139,123,8,14,247,205,239,3,247,5,248,82,21,139,115,154,123,158,131,8,247,26,95,49,251,13,5,133,130,135,129,139,128
,139,112,161,116,167,139,153,139,151,143,149,148,8,246,247,36,223,251,36,5,148,130,153,135,152,139,167,139,161,161,139,167,139,148
,137,147,135,147,8,62,247,23,247,9,178,5,159,146,154,156,139,163,139,166,116,162,112,139,133,139,134,138,134,137,8,251,26,95,139
,247,43,5,166,116,162,112,112,116,117,111,30,139,251,43,251,41,188,5,112,115,114,112,31,14,247,222,239,1,247,205,239,3,247,5,248
,16,21,111,162,117,166,30,247,42,251,71,6,111,162,117,166,166,162,162,166,30,247,71,247,42,7,166,162,162,166,166,116,162,112,31,
251,42,247,70,6,166,117,162,111,111,117,117,111,30,251,70,251,42,7,112,116,117,111,31,14,251,55,118,1,247,51,251,26,21,111,161,117
,167,30,167,6,152,139,152,143,149,149,8,247,146,247,153,5,148,148,144,152,139,152,8,170,7,167,116,161,112,30,251,3,6,126,139,124
,135,130,129,8,251,70,251,194,5,135,131,137,131,139,130,8,14,247,208,247,20,1,247,5,248,2,21,111,161,117,167,30,248,36,6,167,161
,162,166,31,167,7,166,117,162,111,30,252,36,6,111,117,117,111,31,14,129,247,89,1,247,133,247,135,3,247,133,179,21,112,162,116,166
,30,247,35,6,166,162,161,167,31,236,7,167,116,161,112,30,251,35,6,112,116,116,112,31,14,249,153,119,1,247,65,176,21,111,162,117,
166,30,159,139,159,153,145,156,8,247,172,249,66,5,142,145,140,145,139,146,139,166,116,162,112,139,119,139,119,125,133,122,8,251,
172,253,66,5,136,133,138,133,139,132,8,14,125,239,248,222,239,1,247,5,239,247,192,239,3,247,5,247,235,21,251,87,189,251,53,247,92
,30,149,139,148,138,149,139,8,154,6,247,54,152,183,247,65,139,247,62,8,247,122,119,247,92,251,122,251,124,121,251,91,251,123,30,
239,22,139,215,139,227,154,201,156,208,172,174,224,139,155,139,161,139,148,137,237,120,144,251,32,139,251,15,8,93,7,251,0,126,251
,40,251,7,30,117,6,123,139,117,139,129,141,50,158,126,247,26,139,240,8,14,247,248,239,3,247,36,248,202,21,112,161,116,167,30,151
,139,151,143,148,147,8,247,21,247,2,139,252,234,5,111,162,117,166,166,162,162,166,30,249,60,7,166,116,162,112,30,107,6,127,139,128
,135,130,131,8,251,75,251,49,5,129,131,134,125,139,126,8,14,140,239,248,208,239,1,248,123,239,3,247,22,249,50,21,113,163,116,165
,30,149,139,150,142,147,145,183,170,183,151,205,139,207,139,195,96,139,69,139,112,128,114,123,118,112,103,87,106,94,110,59,88,60
,77,113,48,8,130,108,138,96,139,100,8,118,7,112,162,116,166,30,247,244,6,166,162,162,166,166,117,162,111,31,251,193,6,145,247,8,
202,177,218,189,224,193,247,4,208,139,247,24,139,247,20,42,224,251,19,139,47,139,81,119,77,98,127,131,130,120,139,124,8,14,126,239
,248,207,239,1,248,140,239,3,247,5,208,21,66,247,36,130,199,30,247,46,139,247,18,227,146,247,43,8,154,7,139,247,17,53,216,251,5,
168,8,247,51,247,60,5,148,148,145,150,139,152,8,174,7,166,116,162,112,30,251,255,6,111,117,117,111,112,162,116,166,31,247,171,139
,251,76,251,85,5,131,131,136,127,139,128,8,112,162,116,166,241,241,98,36,30,130,7,134,40,55,94,41,139,93,139,93,148,96,158,133,141
,133,141,132,139,8,112,116,117,111,31,14,247,56,239,1,248,46,239,3,247,5,247,106,21,111,162,117,166,30,247,139,251,16,6,112,162,
116,166,166,162,162,166,30,247,16,192,7,166,162,162,166,166,117,162,111,31,86,247,8,6,166,116,162,112,112,116,116,112,30,251,8,251
,81,7,247,96,248,71,5,142,145,141,146,139,147,139,166,116,162,112,139,120,139,119,126,133,123,8,251,109,252,99,5,136,132,137,133
,139,131,8,14,126,239,247,218,239,247,37,239,1,248,109,239,3,247,31,176,21,111,162,117,166,30,246,139,247,3,157,220,211,183,179,
180,203,139,215,8,247,65,251,13,222,251,67,30,124,139,147,247,37,247,139,139,5,166,162,163,165,166,117,162,111,31,251,186,6,112,
139,118,119,137,112,8,125,251,143,139,136,5,113,163,118,165,30,143,6,160,141,161,140,160,139,204,139,202,127,174,101,165,111,146
,100,139,100,139,117,132,118,129,120,91,54,251,6,116,34,139,8,112,116,117,111,31,14,126,239,247,192,239,1,247,5,239,247,192,239,
3,247,5,247,121,21,143,251,37,238,42,247,39,139,8,247,39,242,238,247,35,247,49,44,240,251,47,31,117,139,119,137,119,135,191,212,
200,206,199,204,147,148,144,151,139,152,139,166,116,162,112,139,126,139,125,134,130,129,61,54,60,53,78,38,8,101,76,107,58,139,41
,8,239,127,21,237,192,199,236,239,189,81,39,51,78,85,50,49,79,192,228,30,14,249,38,239,1,247,131,239,3,247,5,249,88,21,112,162,116
,166,30,247,232,6,131,118,126,120,127,121,91,69,78,79,97,65,78,32,120,251,17,139,251,16,8,111,162,117,166,166,162,162,166,30,139
,245,153,247,0,192,232,180,210,200,197,184,206,173,189,165,194,139,199,8,166,117,162,111,30,252,36,6,111,117,117,111,31,14,126,239
,248,222,239,18,247,5,238,74,239,247,124,239,73,239,19,228,247,5,247,92,21,251,19,245,53,247,36,30,183,6,247,10,148,227,237,139,
245,139,237,70,212,63,191,8,19,216,201,178,188,189,139,227,8,244,251,3,207,34,33,251,2,72,33,30,139,51,189,87,200,102,8,63,87,70
,67,139,40,8,19,228,238,22,139,222,229,193,202,171,204,105,222,83,139,60,8,77,80,88,69,30,118,6,57,70,178,213,31,19,216,174,248,
36,21,190,209,161,185,185,209,117,88,30,139,72,80,113,82,113,8,83,165,79,166,139,205,8,14,247,165,239,247,192,239,1,247,5,239,247
,192,239,3,247,5,248,150,21,251,26,236,32,247,45,30,159,139,160,140,159,142,92,65,82,72,74,80,129,129,133,127,139,124,139,111,162
,117,166,139,151,139,151,144,148,147,222,213,210,226,195,235,8,182,212,177,214,139,245,8,247,50,251,2,240,251,32,251,32,251,2,251
,10,251,33,30,239,22,225,204,212,224,228,200,79,40,30,139,114,136,115,132,116,123,83,76,126,78,139,8,46,82,197,222,31,14,129,247
,72,247,75,247,72,1,247,151,247,100,3,247,151,179,21,111,162,117,166,30,247,0,6,166,162,162,166,31,219,7,166,116,162,112,30,251,
0,6,112,116,117,111,31,247,175,4,34,10,14,247,245,247,72,1,247,171,247,100,3,247,48,251,21,21,111,162,117,166,30,182,6,152,139,152
,145,148,148,8,247,96,247,159,5,141,141,140,142,139,142,139,143,138,143,139,143,8,166,116,162,112,30,251,3,6,117,139,122,126,133
,124,8,251,16,251,145,5,136,133,138,131,139,132,8,247,15,248,168,21,34,10,14,247,18,247,236,21,248,45,251,163,5,147,133,149,136,
149,139,166,139,162,162,139,166,139,153,134,151,129,149,8,251,237,247,122,247,237,247,122,5,151,147,142,153,139,153,139,166,116,
162,112,139,129,139,129,136,131,133,8,252,45,251,163,5,130,130,135,125,139,126,139,126,143,125,139,130,8,14,247,108,239,247,20,239
,1,247,5,247,158,21,111,161,117,167,30,248,36,6,167,161,162,166,166,116,162,112,31,252,36,6,112,116,117,111,31,247,120,4,111,162
,117,166,30,248,36,6,166,162,162,166,166,117,162,111,31,252,36,6,111,117,117,111,31,14,247,5,247,6,21,111,162,117,166,30,149,139
,148,142,148,145,8,248,44,247,163,5,150,146,142,155,139,152,139,152,135,153,139,148,8,252,44,247,163,5,130,145,130,142,129,139,112
,139,116,117,139,111,139,125,144,127,148,129,8,247,237,251,122,251,237,251,122,5,130,129,134,127,139,125,8,14,72,247,38,248,173,
237,18,247,33,239,188,247,38,251,15,239,182,239,19,236,247,33,248,156,21,140,114,161,117,166,139,8,167,161,161,167,31,139,142,139
,144,5,139,197,193,160,191,145,8,142,6,148,139,148,136,148,139,179,130,178,119,139,92,139,105,109,91,119,118,103,99,82,109,139,66
,8,111,162,117,166,166,162,162,166,30,139,146,143,146,143,144,155,161,163,153,157,159,175,177,179,207,140,204,8,141,7,247,10,40,
196,38,33,251,1,76,251,13,30,19,244,247,41,252,183,21,32,10,14,120,239,247,132,239,247,89,239,1,247,5,239,247,15,239,216,239,3,247
,5,247,86,21,139,251,9,173,47,247,3,135,8,147,6,185,139,173,154,166,162,161,113,171,128,172,139,174,139,175,152,165,163,191,187,
143,202,139,238,8,247,6,7,247,95,90,247,64,251,96,30,130,6,251,17,136,45,81,123,32,8,132,7,111,161,117,167,30,164,139,160,158,142
,162,147,199,198,159,208,142,8,148,6,247,32,152,251,31,251,28,31,139,251,6,139,113,5,139,80,136,79,91,136,8,138,6,121,139,133,161
,138,162,8,247,135,7,165,116,163,112,30,122,139,122,129,130,124,117,154,103,151,108,139,251,7,138,113,251,2,139,251,8,8,239,133,
21,139,145,139,156,5,184,141,204,178,30,177,139,169,108,153,112,8,251,19,7,126,111,123,112,100,139,8,133,6,91,142,138,193,139,189
,8,14,247,91,239,248,44,119,1,247,11,179,21,111,162,117,166,30,162,139,159,156,144,159,8,183,247,64,247,95,139,184,251,64,5,144,
119,159,122,162,139,8,166,163,163,165,31,251,57,249,16,5,134,157,119,152,118,139,8,71,6,116,139,118,122,134,119,8,251,53,252,253
,5,247,60,247,138,21,215,247,184,215,251,184,5,14,140,239,247,107,239,247,77,239,18,247,5,239,247,178,238,54,239,19,244,247,5,190
,21,111,162,117,166,30,247,63,6,211,139,213,145,195,183,188,177,167,198,139,200,8,141,7,139,200,111,196,92,176,8,19,248,180,175,
158,189,139,189,139,207,104,206,78,174,88,167,80,140,81,139,8,251,63,6,111,117,117,111,31,239,252,186,21,247,107,247,42,7,19,244
,219,139,208,111,140,62,8,138,7,48,47,121,52,30,251,13,247,207,21,247,77,247,13,7,19,248,226,139,210,128,146,60,8,130,7,70,70,122
,72,30,14,126,239,248,97,118,228,239,1,247,53,239,247,99,237,3,247,53,247,234,21,141,251,71,188,251,68,247,77,139,227,139,207,193
,152,215,8,148,7,166,117,162,112,30,115,139,118,120,135,117,133,108,110,122,103,139,251,12,139,125,247,35,137,247,6,8,156,7,139,
247,8,160,247,25,247,2,145,8,144,6,157,139,156,134,154,128,167,118,132,87,188,139,8,166,161,162,166,31,149,7,122,214,72,193,52,139
,8,134,6,251,70,135,88,251,68,139,251,75,8,14,161,118,249,80,119,1,247,56,239,247,115,239,3,247,56,190,21,112,162,116,166,30,177
,139,176,139,176,146,247,41,166,247,4,247,13,139,247,67,139,227,109,215,99,193,74,226,51,204,251,42,139,8,111,117,116,112,31,239
,252,184,21,248,131,7,181,134,172,126,168,118,203,93,194,63,139,33,139,251,36,49,67,251,25,127,8,14,140,239,247,107,239,247,77,239
,1,247,51,239,3,247,51,190,21,111,162,117,166,30,247,234,6,166,162,161,167,167,117,161,111,31,251,184,247,107,247,136,6,167,161,
162,166,166,116,162,112,31,251,136,247,77,247,184,6,166,162,161,167,167,117,161,111,31,251,234,6,111,117,117,111,31,14,247,208,239
,247,77,239,1,247,102,239,3,247,102,179,21,112,162,116,166,166,162,162,166,30,247,168,247,71,7,166,162,162,166,166,115,162,113,31
,251,71,247,77,247,116,6,166,162,161,167,167,117,161,111,31,251,166,6,111,117,116,112,31,14,124,241,247,84,239,247,126,241,18,247
,13,240,247,3,247,155,39,239,19,244,247,13,247,245,21,139,251,9,170,251,9,199,77,183,93,205,113,214,139,169,139,171,143,171,148,
175,149,208,158,139,186,8,19,248,247,147,7,166,116,162,112,30,251,55,6,112,116,117,111,111,161,117,167,31,19,244,247,5,251,66,6,
105,127,106,133,109,139,69,139,84,172,115,207,121,189,129,202,139,200,139,222,158,220,182,183,168,168,177,153,177,139,181,139,180
,122,166,108,8,149,128,151,132,155,139,166,139,162,162,139,166,139,151,135,150,131,148,102,184,86,168,81,148,125,141,125,140,126
,139,66,139,79,106,98,98,8,78,78,109,251,5,139,251,6,8,14,247,202,239,247,195,119,1,247,33,239,247,135,239,3,247,33,179,21,112,162
,116,166,166,162,161,167,30,247,162,247,135,251,162,7,112,162,116,166,166,162,161,167,30,249,3,7,167,116,161,112,112,116,116,112
,30,251,145,251,135,247,145,7,167,116,161,112,112,116,116,112,30,14,140,239,248,136,239,1,247,205,239,3,247,62,190,21,112,162,116
,166,30,247,178,6,166,162,162,166,166,117,162,111,31,46,248,136,212,6,166,162,162,166,166,117,162,111,31,251,138,6,111,117,116,112
,112,162,116,166,31,212,252,136,46,6,111,117,116,112,31,14,123,241,249,7,119,1,247,22,239,247,52,239,3,247,22,247,57,21,139,66,184
,82,189,111,169,123,169,132,167,139,236,139,220,223,139,232,139,143,138,144,139,143,8,248,125,7,166,116,162,112,112,116,116,112,
30,252,133,7,83,103,115,102,97,94,169,189,30,139,144,140,144,140,145,8,148,7,167,118,161,111,30,113,139,121,122,134,116,136,126,
138,128,139,127,8,14,249,93,119,1,247,19,239,3,247,19,179,21,112,162,116,166,166,162,162,166,30,139,247,167,247,192,251,202,5,149
,129,152,134,152,139,166,139,162,162,139,166,139,152,133,151,130,149,8,251,172,247,182,247,149,247,155,5,148,148,145,152,139,152
,139,166,116,162,112,139,126,139,126,133,129,130,8,251,169,251,174,139,247,139,5,166,116,162,112,112,116,116,112,30,14,140,239,248
,248,119,1,247,33,239,3,247,33,190,21,112,162,116,166,30,248,8,6,166,162,162,166,166,117,162,111,31,251,214,248,198,6,167,116,161
,112,112,116,116,112,30,14,249,93,119,1,247,5,239,247,192,239,3,247,5,179,21,111,162,117,166,166,162,162,166,30,139,248,175,241,
251,228,5,145,119,159,123,161,139,163,139,156,156,146,158,8,241,247,228,139,252,175,5,111,162,117,166,166,162,162,166,30,249,3,7
,166,116,162,112,30,62,6,116,139,119,123,134,119,8,64,251,139,64,247,139,5,133,158,120,156,116,139,8,62,6,112,116,117,111,31,14,
249,93,119,1,247,19,239,247,164,239,3,247,19,179,21,112,162,116,166,166,162,162,166,30,139,248,116,247,131,252,138,5,147,123,156
,127,159,139,8,177,6,165,163,162,166,31,249,3,7,166,115,162,113,112,116,117,111,30,139,252,117,251,132,248,138,5,131,155,122,152
,119,139,8,102,6,112,116,116,112,31,14,126,239,248,170,239,1,247,8,239,247,186,239,3,247,8,247,246,21,35,10,239,135,21,144,7,139
,218,161,222,179,191,157,162,169,164,176,139,8,243,182,251,47,251,4,35,93,251,55,38,31,37,139,95,247,55,138,243,8,14,247,179,239
,247,106,239,1,247,33,239,247,164,239,3,247,33,179,21,112,162,116,166,166,162,161,167,30,247,139,247,14,7,219,139,222,158,187,203
,164,171,151,179,141,181,8,150,7,247,30,251,0,207,251,34,30,251,64,6,111,117,116,112,31,239,251,156,21,247,106,247,14,7,224,204,
117,55,31,132,7,135,58,66,119,66,139,8,14,171,239,248,120,239,1,247,7,242,247,164,235,3,247,7,248,13,21,139,66,149,66,159,89,172
,59,223,70,230,139,178,139,180,152,178,169,8,193,69,5,148,127,153,136,152,139,166,139,163,162,139,166,139,150,135,150,132,148,8,
74,223,5,171,199,156,219,139,220,8,247,61,65,247,63,251,51,30,130,6,40,139,69,61,109,69,119,91,129,68,139,67,8,242,163,21,192,7,
144,214,181,226,220,139,235,139,187,251,15,139,251,14,139,94,132,94,126,100,8,60,241,5,130,150,124,143,125,139,112,139,117,116,139
,112,139,127,143,129,146,130,8,236,251,17,5,121,126,119,131,115,139,129,139,129,140,128,142,45,164,132,247,6,139,247,18,8,14,247
,179,239,247,106,239,1,247,45,239,247,123,239,3,247,45,179,21,111,162,117,166,166,162,162,166,30,247,139,225,7,247,56,251,175,5,
148,129,154,135,152,139,166,139,162,162,139,166,139,148,138,147,134,147,8,251,28,247,126,5,237,175,177,236,139,247,3,139,237,251
,15,191,45,147,8,251,56,6,111,117,117,111,31,239,251,156,21,247,106,247,0,7,171,139,171,127,167,123,153,132,156,129,139,126,139,
90,137,86,102,108,117,120,108,135,110,139,8,14,124,239,248,167,239,1,247,45,239,247,118,239,3,247,39,247,45,21,152,41,229,69,245
,139,151,139,152,140,152,141,244,156,219,214,139,247,1,139,247,50,251,37,176,34,193,101,159,101,161,139,196,139,190,199,167,195,
139,8,168,139,167,132,158,123,166,116,139,85,187,139,167,139,161,162,139,166,139,143,138,144,138,143,116,222,66,193,35,139,8,133
,6,251,2,137,40,69,139,32,139,251,45,247,33,100,242,87,180,118,180,117,139,78,139,110,128,109,116,122,115,121,107,129,108,139,86
,139,89,166,131,194,8,136,162,118,159,113,139,8,112,116,116,112,31,14,248,237,239,1,247,205,239,3,247,5,249,31,21,111,162,117,166
,30,247,42,252,197,6,111,162,117,166,166,162,162,166,30,248,197,247,42,7,166,162,162,166,166,117,162,111,31,252,36,6,111,117,117
,111,31,14,126,239,249,6,119,1,247,19,239,247,164,239,3,247,19,247,103,21,139,65,171,67,201,98,181,111,189,130,189,139,189,139,189
,148,181,167,200,180,172,211,139,213,8,248,88,7,166,115,162,113,112,116,117,111,30,252,88,7,62,86,92,56,30,109,139,107,143,114,155
,105,162,124,179,139,180,8,248,88,7,166,116,162,112,112,116,116,112,30,14,249,93,119,1,247,4,249,43,21,247,59,253,16,5,144,120,160
,121,163,139,8,207,6,162,139,159,156,144,159,8,247,61,249,16,5,165,115,163,112,30,115,139,121,122,132,119,8,251,43,252,207,251,44
,248,207,5,134,159,119,156,116,139,8,112,115,116,112,31,14,249,93,119,1,247,5,239,247,191,240,3,247,5,249,43,21,147,251,120,151,
251,102,182,251,88,144,119,158,120,165,139,8,167,6,165,139,155,156,145,158,8,200,247,103,199,251,92,5,147,113,174,118,173,139,163
,139,160,158,143,159,181,247,87,153,247,103,147,247,120,8,141,7,164,115,162,113,113,114,116,112,30,133,251,55,130,251,43,119,251
,35,8,81,247,86,5,133,157,121,157,115,139,8,122,6,115,139,123,124,132,121,8,80,251,96,5,118,247,38,131,247,46,133,247,56,138,165
,118,163,111,139,8,113,115,118,112,31,14,249,93,119,1,247,25,179,21,111,162,117,166,30,159,139,153,151,149,153,8,247,28,247,142,
247,34,251,154,5,149,129,154,135,152,139,166,139,162,162,139,166,139,147,137,148,135,146,8,251,53,247,188,247,47,247,170,5,143,147
,141,147,139,148,139,166,116,162,112,139,119,139,125,126,129,126,8,251,22,251,127,251,30,247,139,5,130,148,125,144,126,139,112,139
,116,117,139,111,139,130,141,131,143,131,8,247,47,251,170,251,53,251,188,5,135,132,137,130,139,131,8,14,249,93,119,1,247,205,239
,3,247,28,249,43,21,139,130,141,131,143,132,8,247,63,251,212,139,251,171,5,111,162,117,166,166,162,162,166,30,139,247,171,247,63
,247,212,5,143,146,141,147,139,148,139,166,116,162,112,139,121,139,119,127,133,124,8,251,25,251,141,251,25,247,141,5,130,154,124
,151,119,139,112,139,116,117,139,111,8,14,140,239,248,136,239,1,247,33,190,21,112,162,116,166,30,247,235,6,166,162,161,167,167,117
,161,111,31,251,153,139,247,163,248,163,5,143,146,141,147,139,147,8,165,116,163,112,30,251,198,6,111,117,116,112,112,162,116,166
,31,247,116,139,251,163,252,163,5,135,132,137,131,139,131,8,14,126,239,248,222,239,1,247,102,239,3,247,102,176,21,112,162,116,166
,30,247,178,6,166,162,162,166,166,116,162,112,31,251,128,248,222,247,128,6,167,161,162,166,166,116,162,112,31,251,178,6,112,116,
116,112,31,14,249,153,119,1,247,65,249,103,21,139,132,140,133,142,133,8,247,172,253,66,5,146,122,158,125,159,139,166,139,162,162
,139,166,139,146,138,145,136,145,8,251,172,249,66,5,132,155,120,154,119,139,112,139,116,117,139,111,8,14,126,239,248,222,239,1,248
,52,239,3,247,22,176,21,112,162,116,166,30,247,178,6,166,162,162,166,31,249,66,7,166,116,162,112,30,251,178,6,112,116,116,112,112
,161,116,167,31,247,128,252,222,251,128,6,112,116,116,112,31,14,247,5,248,53,21,36,10,14,251,128,247,21,1,247,5,251,49,21,110,7,
111,162,117,166,30,248,36,6,166,162,162,166,31,168,7,166,116,162,112,30,252,36,6,112,116,117,111,31,14,248,220,247,78,1,247,151,
247,46,3,247,151,249,100,21,139,129,141,130,144,131,8,199,45,5,149,129,153,134,152,139,166,139,162,162,139,166,139,149,136,148,134
,147,8,79,234,5,132,150,123,142,126,139,112,139,116,117,139,111,8,14,122,240,247,50,236,244,239,1,247,19,239,247,141,239,3,247,19
,247,46,21,139,39,230,75,223,133,145,139,145,138,144,139,202,139,191,165,181,175,8,131,7,111,162,117,166,166,162,162,166,30,247,
202,7,139,194,117,193,99,177,99,176,83,152,84,139,77,139,80,116,89,103,128,131,131,122,139,125,139,111,161,117,167,139,150,139,150
,142,148,146,8,170,164,177,152,179,139,169,139,170,136,161,118,161,119,144,108,142,109,251,66,138,251,67,127,139,251,64,8,239,22
,37,10,14,123,238,247,250,237,247,126,119,1,247,16,239,247,181,239,3,247,16,176,21,112,162,116,166,166,162,161,167,30,143,7,177,
109,184,118,190,134,148,138,148,139,148,139,8,247,48,211,247,28,247,53,31,145,7,138,247,20,68,228,251,1,166,118,144,119,142,120,
139,81,139,89,116,99,107,8,247,131,7,167,116,161,112,112,116,116,112,30,239,252,159,21,247,17,7,161,183,175,178,183,159,159,148,
158,143,157,139,216,139,190,60,141,62,8,131,7,139,62,124,76,91,107,115,123,115,133,116,139,70,139,77,198,115,197,8,14,121,239,247
,248,239,1,247,59,239,247,93,237,3,247,59,247,166,21,139,251,19,170,44,223,94,172,121,172,132,172,139,227,139,217,195,158,215,8,
151,7,166,117,162,112,30,114,139,120,120,134,119,132,112,115,121,112,133,127,136,127,138,129,139,48,139,121,237,139,233,139,205,
153,203,185,161,156,147,162,143,163,139,8,172,139,170,130,147,116,146,118,156,121,163,139,8,167,160,161,167,31,151,7,124,200,84,
176,75,147,124,141,125,140,125,139,251,43,139,74,251,5,139,251,43,8,14,124,235,247,250,239,247,126,119,1,247,5,239,247,180,239,3
,247,5,247,161,21,139,251,36,197,32,247,14,112,159,135,158,137,158,139,197,139,190,158,180,170,140,113,162,117,165,139,8,166,162
,161,167,31,249,66,7,167,116,161,112,112,116,116,112,30,251,130,7,101,167,85,165,79,139,121,139,120,136,120,134,251,5,108,72,45,
139,251,29,8,239,22,139,205,157,189,183,169,164,156,165,146,163,139,207,139,197,83,164,84,8,251,20,7,123,89,99,101,94,121,118,130
,119,135,121,139,53,139,97,234,139,232,8,14,124,237,247,45,239,247,0,239,1,247,19,248,56,3,247,19,247,166,21,139,251,29,195,35,246
,104,164,131,173,134,175,139,8,217,223,162,205,167,116,161,111,31,126,139,127,134,130,130,126,126,123,131,118,136,127,137,127,138
,128,139,45,139,94,202,130,229,8,247,212,6,166,162,162,166,247,40,60,247,2,251,44,31,133,6,251,42,136,54,251,10,139,251,41,8,246
,201,21,156,201,181,185,210,139,226,139,165,99,153,71,8,14,248,69,239,247,29,239,1,247,199,239,3,247,39,248,119,21,112,161,116,167
,30,247,2,139,145,252,32,5,111,162,117,166,166,162,162,166,30,133,248,32,247,14,139,5,166,162,162,166,166,115,162,113,31,251,14,
148,6,139,161,139,171,143,152,151,182,189,157,192,139,8,166,162,162,166,166,116,162,112,251,41,69,61,251,42,31,130,251,2,7,112,116
,116,112,31,14,251,82,239,247,1,239,247,212,239,1,247,8,239,247,163,239,3,247,8,247,161,21,251,28,217,251,6,247,32,30,205,139,187
,161,178,172,8,139,114,139,117,5,139,117,138,117,130,119,121,98,99,127,82,139,110,139,97,139,117,149,113,151,138,177,100,139,112
,139,116,117,139,111,139,132,140,132,142,133,8,170,67,212,121,240,139,247,30,139,229,219,139,247,19,139,153,138,154,137,154,8,248
,61,7,166,116,162,112,30,114,139,116,118,137,114,107,165,99,157,91,143,131,140,131,139,131,139,8,251,42,62,251,10,251,44,31,239,
22,235,175,213,233,30,152,6,208,134,178,77,159,84,8,55,7,108,86,99,78,57,139,8,57,103,211,217,31,14,248,75,239,247,126,119,1,247
,48,239,247,106,239,3,247,48,176,21,111,162,117,166,166,162,162,166,30,247,184,7,166,191,178,197,214,139,8,210,141,70,67,31,139,
127,139,251,141,5,112,162,116,166,166,162,162,166,30,247,141,7,139,182,139,186,129,176,119,210,80,194,55,139,78,139,94,118,104,110
,8,247,126,7,166,116,162,112,112,116,117,111,30,14,248,60,239,242,247,38,18,247,73,247,172,251,34,247,37,36,239,19,224,247,73,248
,110,21,112,162,116,166,30,19,200,38,10,19,224,39,10,19,208,247,30,247,95,21,40,10,14,251,75,242,248,140,239,241,247,38,18,247,102
,247,138,251,29,247,37,251,0,239,19,228,247,45,251,21,21,95,182,129,185,30,163,139,163,142,160,141,195,144,187,188,161,184,157,176
,140,183,139,181,8,139,152,5,19,240,41,10,19,228,235,252,3,6,139,107,139,99,129,118,133,125,118,111,121,138,8,88,137,5,125,139,125
,140,125,139,8,134,6,111,117,117,111,31,19,232,247,58,249,186,21,40,10,14,248,172,119,247,149,119,1,247,65,239,3,247,65,176,21,111
,162,117,166,166,162,162,166,30,247,99,142,7,247,117,251,134,5,148,129,153,134,152,139,166,139,162,162,139,166,139,152,134,151,131
,148,8,251,98,247,113,247,64,247,50,5,149,148,145,152,139,153,139,166,116,162,112,139,126,139,127,133,130,130,8,251,88,251,69,136
,139,139,248,15,5,166,116,162,112,112,116,117,111,30,14,132,239,249,60,119,18,247,145,238,46,239,19,224,247,145,247,120,21,139,68
,147,88,173,94,183,81,204,129,241,139,8,166,162,162,166,166,116,162,112,31,113,139,101,139,125,141,74,148,128,192,139,210,8,19,208
,146,248,130,5,167,116,162,112,111,117,116,111,30,14,248,75,239,1,247,5,239,239,239,239,239,3,20,112,247,5,176,21,111,162,117,166
,166,162,162,166,30,247,170,7,178,165,224,183,30,161,139,146,114,140,121,8,251,251,7,111,162,117,166,166,162,162,166,30,247,170,
7,179,166,223,182,30,161,139,146,114,140,121,8,251,251,7,111,162,117,166,166,162,162,166,30,248,3,7,209,85,204,63,30,99,139,104,
120,113,111,116,167,104,158,98,139,108,139,113,129,117,123,130,153,124,148,122,139,8,112,116,117,111,31,14,248,75,239,1,247,19,239
,247,164,239,3,247,19,176,21,112,162,116,166,166,162,162,166,30,247,158,7,165,203,191,211,225,139,8,230,156,76,49,31,251,141,7,111
,162,117,166,165,163,162,166,30,247,141,7,247,41,81,243,251,42,30,71,139,85,114,97,102,8,148,7,166,116,161,112,112,116,117,112,30
,14,123,239,247,252,239,1,247,5,239,247,192,239,3,247,5,247,155,21,42,10,239,22,43,10,14,251,55,118,247,60,239,247,248,238,1,247
,16,239,247,181,239,3]);fileData1.push.apply(fileData1,[247,16,251,26,21,112,161,116,167,167,161,161,167,30,247,64,7,176,109,185
,118,192,136,8,156,6,247,46,221,247,13,247,44,31,139,247,37,79,238,251,14,169,117,144,119,142,119,139,82,139,90,118,100,107,8,167
,116,161,112,112,116,116,112,30,239,251,172,21,247,10,7,163,192,189,196,207,144,144,139,143,140,143,139,238,139,174,53,139,42,139
,54,107,75,66,120,126,136,127,137,127,139,62,139,96,208,112,192,8,14,251,55,118,247,60,237,247,249,239,1,247,5,239,247,180,239,3
,247,5,247,149,21,139,251,31,203,38,247,9,113,160,134,158,137,158,139,198,139,189,160,178,171,8,251,63,7,112,161,116,167,167,161
,161,167,30,249,0,7,167,116,161,112,112,116,116,112,30,100,171,90,160,82,139,119,139,119,136,117,134,251,15,109,81,40,139,251,37
,8,239,22,139,207,153,202,187,168,164,154,164,146,162,139,210,139,195,78,165,83,8,251,11,7,120,93,103,95,93,120,118,131,120,135,
121,139,55,139,94,225,139,228,8,14,248,75,239,1,247,96,239,247,84,239,3,247,96,176,21,112,162,116,166,166,162,161,167,30,247,116
,7,139,214,183,228,219,150,146,139,146,142,146,139,144,139,145,136,144,139,157,135,152,124,139,121,140,112,161,117,166,139,166,139
,162,162,139,167,8,138,214,81,202,51,139,79,139,91,119,102,106,8,167,117,160,111,112,116,117,112,30,14,123,236,247,255,239,1,247
,51,239,247,112,239,3,247,45,236,21,139,130,140,130,144,131,176,79,203,112,232,139,8,149,6,247,7,142,240,183,139,247,10,139,247,
31,251,40,152,251,3,168,109,147,108,152,139,177,8,190,197,143,185,30,165,6,169,137,173,135,146,111,144,118,159,123,163,139,166,139
,162,162,139,166,139,143,138,143,138,144,121,207,67,175,66,143,8,108,6,32,42,96,251,4,31,139,251,31,247,30,122,247,2,110,169,131
,181,129,139,102,139,91,77,119,79,139,106,139,108,145,118,149,114,151,131,177,103,139,112,139,116,117,139,111,8,14,126,239,247,232
,239,18,247,141,239,44,239,19,224,247,19,248,113,21,112,162,116,166,30,214,139,136,251,118,139,127,5,139,44,162,72,212,111,158,132
,169,134,169,139,8,201,206,158,190,166,116,162,112,31,110,139,114,119,108,139,8,137,6,72,139,185,205,31,142,247,120,247,43,139,5
,166,162,162,166,166,116,162,112,31,19,208,251,41,139,141,240,5,166,117,162,111,111,117,118,110,30,137,38,62,139,5,112,116,116,112
,31,14,123,239,248,88,119,1,247,19,239,247,164,239,3,247,19,247,134,21,139,100,140,100,148,105,163,53,205,81,245,137,8,143,6,207
,139,192,163,180,175,8,132,7,111,162,117,166,165,163,162,166,30,248,85,7,166,115,162,113,112,116,117,111,30,251,151,7,116,71,90,
64,52,139,8,134,6,42,142,128,204,139,244,8,247,121,7,166,115,162,112,113,116,115,113,30,251,121,7,14,248,172,119,1,247,8,248,122
,21,139,133,140,133,141,134,8,247,52,252,85,5,146,120,158,125,160,139,8,213,6,159,139,161,154,144,157,8,247,52,248,85,5,141,144,
140,145,139,145,139,166,116,162,112,139,118,139,118,123,134,121,8,251,40,252,51,135,139,251,40,248,51,5,132,158,122,154,116,139,
112,139,116,117,139,111,8,14,248,172,119,1,247,7,239,247,187,240,3,247,7,248,122,21,194,252,91,5,142,116,160,118,165,139,8,189,6
,162,139,156,155,146,158,8,185,247,51,185,251,51,5,145,120,157,123,163,139,8,188,6,164,139,161,159,141,163,8,195,248,91,139,143,
5,163,114,161,113,30,113,139,119,118,135,116,8,100,251,216,102,247,18,5,133,159,121,155,115,139,8,93,6,116,139,119,123,134,119,8
,102,251,18,99,247,216,5,137,163,117,159,114,139,8,112,115,116,112,31,14,248,172,119,1,247,39,176,21,112,162,116,166,30,152,139,
153,143,148,149,8,247,22,247,77,247,21,251,77,5,148,127,153,137,153,139,165,139,163,162,139,166,139,149,135,149,133,148,8,251,32
,247,92,247,22,247,84,5,144,147,142,149,139,149,139,166,116,162,112,139,126,139,125,134,130,130,8,251,10,251,67,251,10,247,67,5,
132,149,123,143,126,139,112,139,116,117,139,111,139,129,142,129,144,131,8,247,21,251,84,251,32,251,92,5,133,130,136,129,139,129,
8,14,251,75,241,248,253,119,1,247,5,251,23,21,139,114,156,120,161,134,148,137,149,138,148,139,189,139,183,170,157,176,8,247,207,
248,212,5,143,146,141,148,139,148,139,166,116,162,112,139,126,139,124,134,129,130,8,251,49,251,182,251,61,247,182,5,130,148,125,
144,126,139,112,139,116,117,139,111,139,130,141,130,144,132,8,247,84,251,223,251,0,251,90,5,133,127,130,138,129,139,8,123,6,112,
116,117,111,31,14,138,239,247,217,239,1,247,39,188,21,112,161,116,167,30,247,232,6,167,161,162,166,166,116,162,112,31,251,151,139
,247,164,247,194,5,148,148,144,151,139,151,8,179,7,167,117,161,111,30,251,200,6,111,117,117,111,111,162,117,166,31,247,124,139,251
,170,251,200,5,131,130,134,128,139,127,8,14,126,239,247,135,239,247,135,239,1,247,176,239,3,20,224,247,5,248,15,21,111,162,118,166
,30,175,139,181,139,161,117,159,118,140,109,139,111,139,41,161,62,204,100,184,112,220,138,205,139,8,166,162,162,166,166,116,162,
112,31,91,139,68,139,118,152,102,162,137,186,139,198,139,193,127,196,100,178,183,172,146,213,139,196,139,172,139,177,158,164,162
,171,185,141,196,139,8,173,6,167,161,162,166,166,116,162,112,31,251,8,139,64,131,90,72,107,95,132,83,139,84,8,129,7,139,110,138,
108,124,121,118,114,93,139,101,139,8,112,116,116,111,31,14,249,153,119,1,247,205,239,3,247,205,251,3,21,111,161,117,167,167,161,
162,166,30,249,214,7,166,116,162,112,112,116,117,111,30,14,126,239,247,135,239,247,135,239,1,247,233,239,3,20,224,247,5,176,21,111
,162,117,166,30,205,139,220,139,184,167,204,178,160,215,139,238,139,167,140,169,160,160,161,161,181,139,175,139,8,166,162,161,166
,166,116,163,112,31,135,6,102,139,96,139,118,164,122,159,139,176,139,170,139,194,133,195,107,183,90,206,63,147,251,7,139,8,112,116
,117,111,111,161,117,167,31,178,139,196,139,160,132,190,124,149,93,139,77,139,84,146,63,183,106,100,100,127,82,139,85,139,106,139
,101,129,115,120,95,90,136,72,139,8,106,6,112,116,117,111,31,14,248,171,239,125,240,107,159,18,139,238,247,166,238,19,88,247,19,
248,233,21,44,10,19,184,45,10,19,88,46,10,14,247,191,247,37,18,247,182,247,38,251,15,239,19,192,248,216,247,241,21,47,10,162,252
,201,21,33,10,14,247,56,239,247,124,239,1,247,39,239,247,124,239,3,247,118,247,72,21,111,162,117,166,30,152,139,152,144,148,149,
8,190,190,5,172,119,178,127,181,139,180,139,177,150,173,160,8,190,88,5,149,129,152,134,152,139,166,139,162,162,139,166,139,152,134
,152,129,148,8,87,191,5,160,172,151,178,139,180,139,180,126,178,119,172,8,191,191,5,149,148,144,152,139,152,139,166,116,162,112,
139,126,139,126,134,129,129,8,88,88,5,106,159,100,151,98,139,97,139,100,127,106,119,8,88,190,5,130,149,126,144,126,139,112,139,116
,117,139,111,139,126,144,126,148,130,8,191,87,5,119,106,127,100,139,98,139,97,151,101,159,106,8,87,87,5,130,130,134,126,139,126,
8,247,26,247,92,21,203,191,191,203,203,191,87,75,75,84,87,78,75,87,191,203,30,14,247,134,248,24,21,139,32,241,102,238,131,204,134
,247,6,147,139,65,139,75,73,126,78,138,8,133,6,69,139,88,156,119,190,131,157,121,153,118,139,111,139,117,116,139,111,139,133,140
,134,141,133,174,52,217,94,247,12,139,8,147,6,247,10,141,247,1,190,139,247,12,8,144,7,138,184,125,172,115,164,162,165,155,172,139
,179,8,143,7,136,241,50,181,44,148,76,145,35,130,139,212,139,202,204,155,201,139,168,139,166,134,158,126,169,119,139,88,186,139,
165,139,163,163,139,165,8,139,145,138,144,137,144,114,216,66,185,38,139,251,16,139,36,82,139,251,14,139,100,149,109,155,116,110,
110,116,100,139,93,8,239,22,139,163,160,161,158,152,181,126,189,134,189,134,178,136,198,133,139,95,139,112,123,126,122,128,120,144
,118,142,118,141,84,144,251,23,131,139,200,8,14,247,165,247,49,1,247,119,239,211,239,3,248,90,247,215,21,112,161,116,167,167,161
,162,166,30,196,7,166,116,162,112,112,116,116,112,30,247,64,82,21,111,161,117,167,166,162,162,166,30,196,7,166,115,162,113,112,116
,117,111,30,14,139,28,249,67,247,192,247,192,247,192,247,192,247,192,248,86,247,192,247,192,247,192,247,192,247,192,1,28,249,67,
247,192,247,192,247,192,247,192,247,192,248,86,247,192,247,192,247,192,247,192,247,192,3,247,117,4,247,16,240,38,251,16,251,16,38
,38,251,16,251,16,38,240,247,16,247,16,240,240,247,16,31,247,192,4,251,182,251,127,251,127,251,182,251,182,247,127,251,127,247,182
,247,182,247,127,247,127,247,182,247,182,251,127,247,127,251,182,31,135,247,192,21,248,89,248,12,252,4,252,89,252,89,252,12,252,
12,252,89,252,89,252,4,248,12,248,89,248,89,248,4,248,4,248,89,31,247,192,4,252,255,252,138,252,138,252,255,252,255,248,138,252,
146,248,255,248,255,248,146,248,146,248,255,248,255,252,146,248,138,252,255,31,247,192,4,249,165,249,24,253,16,253,165,253,165,253
,24,253,24,253,165,253,165,253,16,249,24,249,165,249,165,249,16,249,16,249,165,31,143,247,192,21,254,74,253,155,253,155,254,74,254
,74,249,155,253,155,250,74,250,74,249,155,249,155,250,74,250,74,253,155,249,155,254,74,31,14,248,159,251,92,251,16,21,247,92,39,
247,92,239,139,247,140,251,92,239,251,92,39,5,14,248,172,239,1,247,146,248,222,21,112,161,116,167,30,248,8,6,166,162,162,166,166
,115,162,113,31,252,8,6,112,116,116,112,31,14,248,137,247,78,1,247,205,247,46,3,249,6,248,187,21,111,162,117,166,30,152,139,153,
144,148,148,8,199,234,5,144,147,142,149,139,148,139,166,116,162,112,139,126,139,125,135,130,129,8,79,44,5,134,131,136,130,139,129
,8,14,251,228,239,239,247,89,1,247,193,239,145,239,3,248,238,150,21,42,7,112,162,116,166,30,142,139,143,139,5,166,161,117,111,112
,116,116,111,31,137,139,136,139,5,111,117,116,112,31,139,112,161,118,165,137,8,146,6,222,207,205,223,31,139,208,94,195,78,157,8,
193,7,167,117,161,111,111,117,116,112,30,14,251,113,239,248,173,247,37,18,247,62,239,159,247,38,251,15,239,210,239,19,236,247,232
,107,21,125,7,146,34,221,69,247,5,139,8,148,6,247,1,143,233,213,139,245,8,150,7,137,165,118,160,112,139,8,111,117,116,112,31,139
,137,139,135,5,83,83,109,84,30,87,139,89,165,138,194,8,143,7,139,186,158,162,165,161,184,177,192,177,139,210,8,222,7,166,116,162
,112,112,116,117,111,30,56,7,139,112,101,116,114,118,8,96,102,102,87,139,64,8,19,244,247,12,248,134,21,47,10,14,247,35,240,47,238
,248,1,247,49,79,119,18,247,5,239,247,192,239,19,44,247,118,249,46,21,48,10,142,253,63,21,111,162,117,166,30,163,139,155,155,146
,159,8,19,76,177,247,18,5,19,156,247,119,130,174,251,9,5,144,119,159,123,161,139,166,139,162,162,139,166,139,144,138,144,138,143
,8,251,78,249,3,5,133,157,121,157,115,139,8,116,6,115,139,123,124,132,121,8,251,78,253,6,5,137,135,139,134,139,134,8,19,76,247,56
,247,103,21,222,247,167,5,19,140,223,251,174,5,205,248,58,21,19,44,48,10,14,140,239,237,239,156,239,247,80,239,1,251,2,178,21,114
,165,115,165,30,163,139,157,157,146,158,8,183,247,64,247,95,139,180,251,52,5,145,118,157,122,164,139,8,247,215,6,166,162,162,166
,166,117,162,111,31,251,177,139,83,247,107,247,233,139,5,167,161,162,166,166,116,162,112,31,252,2,139,90,247,80,248,51,139,5,166
,162,162,166,166,117,162,111,31,252,186,6,115,139,120,122,134,119,8,147,252,4,21,214,247,183,215,251,183,5,14,126,239,248,68,238
,137,247,49,18,247,5,239,47,239,247,175,239,48,239,19,176,247,118,249,46,21,48,10,147,252,56,21,139,251,12,178,46,208,84,172,113
,181,117,198,139,188,139,187,156,176,170,208,195,177,229,139,247,14,139,247,56,63,247,43,251,57,139,116,139,116,136,117,131,8,251
,3,100,76,251,10,139,251,39,8,239,22,241,178,247,6,242,242,177,251,6,37,35,100,251,4,37,30,120,139,124,148,123,142,75,172,111,218
,139,231,8,19,162,247,184,247,255,21,48,10,14,126,239,248,170,239,1,247,10,237,247,186,239,3,247,66,119,21,112,162,116,166,30,157
,139,155,150,148,152,8,191,226,5,175,105,183,119,190,139,247,53,139,224,247,88,140,247,63,8,145,7,139,218,121,218,106,203,8,211,
247,13,5,144,146,141,148,139,148,139,167,117,161,112,139,125,139,126,134,129,130,8,81,44,5,103,172,96,158,87,139,99,139,90,121,109
,115,57,73,95,251,20,139,251,22,139,60,155,59,173,72,8,65,251,15,5,135,131,136,130,139,130,8,247,21,248,10,21,144,7,139,218,161,
222,179,191,157,162,169,164,176,139,171,139,165,124,160,115,8,251,102,251,238,5,128,179,134,181,139,175,8,207,251,119,21,247,102
,247,241,5,150,98,144,96,139,101,139,35,93,251,55,38,139,107,139,113,155,118,163,8,14,126,239,248,222,239,18,247,5,239,39,247,43
,247,89,247,44,39,239,19,228,247,118,247,178,21,251,77,207,251,6,247,74,247,74,207,247,7,247,76,30,247,143,7,166,116,162,112,112
,116,117,111,30,251,143,7,139,103,138,102,130,104,124,77,89,110,64,139,87,139,95,154,115,170,113,173,135,203,139,194,8,247,143,7
,166,116,162,112,112,116,117,111,30,247,78,4,111,161,117,167,30,19,224,189,6,19,208,168,161,161,167,31,19,224,167,116,161,111,30
,89,6,112,116,117,111,31,19,200,247,240,22,112,161,116,167,30,191,6,167,161,162,166,166,116,162,112,31,87,6,112,116,116,112,31,14
,132,239,247,140,247,8,247,105,239,18,247,28,239,247,146,239,62,237,19,248,247,164,176,21,111,162,117,166,166,162,162,166,30,248
,56,7,247,10,146,234,247,12,211,194,105,68,30,139,81,97,92,89,136,114,137,119,118,139,114,8,121,7,112,161,116,165,30,141,139,142
,139,141,139,5,19,244,210,139,172,81,140,72,8,135,7,139,83,118,77,82,138,114,138,116,116,139,113,139,113,164,115,165,139,247,9,142
,195,245,139,247,0,139,218,109,219,79,179,8,19,248,180,175,167,194,139,203,8,142,7,137,247,18,44,216,251,22,139,8,251,76,96,251,
24,251,73,31,14,122,240,247,50,236,244,239,154,247,49,18,247,19,239,139,239,211,239,116,239,19,249,247,146,247,46,21,139,39,230,
75,223,133,145,139,145,138,144,139,202,139,191,165,181,175,8,131,7,111,162,117,166,166,162,162,166,30,247,202,7,139,194,117,193,
99,177,99,176,83,152,84,139,77,139,80,116,89,103,128,131,131,122,139,125,139,111,161,117,167,139,150,139,150,142,148,146,8,170,164
,177,152,179,139,169,139,170,136,161,118,161,119,144,108,142,109,8,251,66,138,251,67,127,139,251,64,8,239,22,37,10,19,244,248,90
,4,49,10,247,64,81,21,50,10,14,124,237,247,45,239,247,0,239,1,103,239,3,67,247,46,21,139,39,230,75,223,133,145,139,145,138,144,139
,203,139,190,166,181,175,8,130,7,111,162,117,166,30,164,139,160,158,143,163,157,125,160,129,162,131,164,131,174,134,175,139,8,217
,224,162,205,166,116,162,111,31,126,139,125,134,129,130,8,137,7,129,125,118,134,122,136,127,137,127,138,128,139,45,139,94,202,130
,229,8,247,211,6,167,161,161,167,247,40,62,247,2,251,45,31,133,6,64,137,81,110,99,92,103,191,71,165,68,139,77,139,78,119,91,100,
127,130,132,125,139,123,139,112,161,116,167,139,150,139,150,142,148,146,8,170,164,177,152,179,139,169,139,170,136,161,118,161,119
,145,108,141,109,251,65,138,251,68,126,139,251,63,8,239,22,214,229,152,229,30,163,139,162,138,161,138,8,99,7,108,89,89,73,64,139
,8,129,6,104,141,91,164,139,182,8,247,248,247,74,21,51,10,14,123,239,247,252,239,154,247,49,1,247,5,239,153,239,210,240,153,239,
3,247,118,247,155,21,42,10,239,22,43,10,153,247,237,21,49,10,247,63,81,21,113,162,116,166,166,163,161,166,30,197,7,166,114,162,113
,113,115,116,112,30,14,123,239,247,252,239,1,247,5,239,247,192,239,3,247,32,116,21,112,162,116,166,30,152,139,152,144,148,149,8,
208,220,5,177,114,185,125,194,139,247,52,139,229,247,15,139,247,48,139,203,124,197,111,185,8,213,227,5,146,148,144,150,139,151,139
,166,117,162,111,139,125,139,127,134,129,130,8,68,57,5,102,164,94,153,85,139,251,55,139,52,251,15,139,251,50,139,76,153,81,167,93
,8,66,52,5,131,130,135,128,139,127,8,247,35,247,178,21,238,187,221,241,30,167,139,163,133,159,128,8,251,101,251,139,5,130,164,135
,167,139,169,8,216,251,54,21,247,101,247,139,5,148,114,144,110,139,108,139,40,92,59,36,139,111,139,114,145,119,150,8,14,123,239,
248,88,119,182,247,49,18,247,19,239,139,239,211,239,139,239,19,242,247,146,247,134,21,139,100,140,100,148,105,163,53,205,81,245,
137,8,143,6,207,139,192,163,180,176,8,131,7,111,162,117,166,165,163,162,166,30,248,85,7,166,115,162,113,112,116,117,111,30,251,151
,7,116,71,90,64,52,139,8,134,6,42,142,128,204,139,244,8,247,121,7,166,115,162,112,113,116,115,113,30,251,121,7,239,247,243,21,49
,10,247,64,81,21,50,10,14,248,60,239,18,247,73,247,172,39,239,19,192,247,254,248,110,21,112,162,116,166,30,19,160,38,10,19,192,39
,10,14,126,239,53,239,247,107,239,247,77,239,59,239,18,58,239,247,186,239,19,166,251,54,247,246,21,140,251,63,226,251,88,247,51,
139,198,139,189,166,177,182,8,133,7,19,118,111,162,117,166,30,247,235,6,166,162,162,166,166,117,162,111,31,251,185,247,107,247,136
,6,167,160,161,167,166,117,162,112,31,251,136,247,77,247,185,6,166,162,162,166,166,117,162,111,31,251,235,6,111,139,119,119,137,
112,8,19,174,100,180,90,165,80,139,8,251,60,60,251,83,251,63,31,239,134,21,145,7,139,217,157,223,181,189,162,166,165,161,177,139
,240,139,184,251,41,140,251,3,8,132,7,138,35,95,251,55,37,139,37,139,95,247,55,138,243,8,14,123,239,247,44,239,247,0,239,1,52,239
,3,251,66,247,155,21,251,50,228,251,13,247,53,30,229,139,206,177,182,201,165,98,177,110,187,123,163,131,174,134,175,139,8,218,224
,162,205,166,116,162,111,31,126,139,124,135,130,129,127,125,123,132,119,136,127,137,127,138,128,139,45,139,94,202,130,229,8,247,
211,6,167,161,161,167,247,40,62,247,2,251,45,31,133,6,54,137,76,102,99,80,97,199,72,177,51,139,8,251,55,52,251,15,251,50,31,239,
22,238,187,221,241,240,188,58,39,40,91,59,37,37,91,219,238,30,248,43,212,21,51,10,14,251,71,239,248,139,239,18,247,102,247,138,39
,239,19,208,247,198,251,21,21,111,162,117,166,30,177,139,209,139,145,141,239,162,178,229,139,247,13,8,19,224,41,10,19,208,235,252
,3,6,139,107,139,99,129,117,122,101,106,134,97,139,123,139,122,140,121,139,8,111,117,117,111,31,14,247,5,248,53,21,36,10,14,248,
196,118,1,247,118,250,12,21,139,130,142,129,144,131,8,247,97,251,201,5,149,130,153,135,152,139,152,139,152,143,148,139,8,247,94,
247,195,5,146,149,145,150,139,151,139,166,117,162,111,139,126,139,127,133,129,130,8,251,57,251,73,251,57,247,74,5,130,149,126,143
,126,139,8,111,117,117,111,31,14,249,33,239,1,247,5,239,247,192,239,3,247,118,250,9,21,149,251,23,247,1,38,247,23,139,247,23,139
,247,1,240,149,247,23,8,142,7,166,117,162,111,30,112,139,118,119,137,113,133,61,74,78,60,139,60,139,74,200,133,217,137,164,118,160
,112,139,8,111,117,117,111,31,14,248,112,247,37,1,247,182,247,38,3,248,216,248,162,21,47,10,14,248,171,239,125,240,127,119,18,139
,238,247,166,238,19,88,247,19,248,233,21,44,10,19,184,45,10,19,88,46,10,14,161,118,248,128,247,112,39,239,18,247,33,239,247,164,
239,19,184,247,174,190,21,112,162,116,166,166,162,161,167,30,248,198,247,164,69,7,19,216,111,161,117,167,167,161,162,166,30,247,
12,7,166,116,162,112,30,19,184,252,8,6,112,116,116,112,31,14,126,239,247,109,239,247,109,239,1,247,8,239,179,247,106,179,239,3,20
,252,247,124,247,246,21,35,10,239,135,21,144,7,139,236,170,236,198,186,154,151,160,148,160,139,8,243,182,251,47,251,4,35,93,251,
55,38,31,37,139,95,247,55,138,243,8,179,22,111,162,117,166,30,247,6,6,166,162,162,166,166,117,162,111,31,251,6,6,111,117,117,111
,31,14,249,87,119,1,247,33,247,50,247,20,247,49,3,247,174,179,21,112,162,116,166,30,197,6,166,162,162,166,31,139,154,132,153,127
,148,8,222,247,249,222,251,249,5,127,130,132,125,139,124,8,112,162,116,166,30,196,6,166,162,161,167,31,139,163,122,157,117,145,8
,251,25,248,216,5,134,160,120,157,114,139,116,139,118,122,134,117,8,251,28,252,216,5,118,133,123,119,139,117,8,14,140,239,247,107
,239,247,77,239,1,247,140,190,21,52,10,248,236,4,52,10,199,251,177,21,112,161,116,167,30,247,149,6,167,161,161,167,167,116,161,112
,31,251,149,6,112,116,116,112,31,14,248,249,239,1,247,33,239,247,135,239,3,247,118,249,43,21,139,119,150,122,156,131,8,252,214,7
,112,162,116,166,166,162,161,167,30,248,209,247,135,252,209,7,112,162,116,166,166,162,161,167,30,248,214,7,156,147,151,156,139,159
,8,166,116,162,112,30,252,36,6,112,116,117,111,31,14,140,239,39,247,21,248,79,247,20,39,239,18,19,128,247,210,190,21,111,162,117
,166,30,19,64,247,234,6,166,162,161,167,31,168,7,167,116,161,112,30,19,144,120,139,121,127,131,122,8,251,118,139,226,247,125,5,141
,144,140,145,139,145,139,145,138,145,139,145,8,52,247,124,247,118,139,5,19,32,147,123,156,127,159,139,8,167,161,161,167,31,167,7
,167,117,161,111,30,19,144,251,234,6,111,117,117,111,31,139,133,140,133,141,134,8,244,251,175,34,251,174,5,137,133,138,133,139,133
,8,14,248,216,237,1,247,205,239,3,247,204,248,207,21,111,162,117,166,30,152,139,152,145,148,148,152,152,139,170,161,139,8,144,6,
165,134,145,107,139,110,8,252,113,7,111,162,117,166,166,162,162,166,30,248,113,7,139,168,145,170,165,145,8,143,6,150,139,148,132
,141,128,143,117,159,120,164,139,8,166,161,162,166,31,148,7,128,202,86,174,84,139,108,139,108,128,114,116,114,162,108,150,108,139
,84,139,85,104,128,76,8,14,127,242,18,247,5,239,210,247,49,251,20,239,239,239,19,216,247,118,247,155,21,139,251,32,210,251,4,247
,21,116,8,110,7,19,232,122,131,127,122,139,119,8,112,162,116,166,30,196,6,166,162,161,167,31,19,216,139,159,128,156,122,147,8,168
,7,247,20,162,211,247,5,139,247,31,139,247,32,66,247,5,251,19,163,8,168,7,19,232,155,147,151,156,139,159,8,167,117,161,111,30,82
,6,111,117,116,112,31,19,216,139,120,151,121,156,131,8,110,7,251,19,112,66,36,139,251,39,8,239,22,139,204,161,199,181,169,149,146
,152,143,152,144,8,251,235,7,71,161,107,208,139,220,8,247,92,251,64,21,247,237,7,206,117,172,70,139,57,139,58,107,70,71,117,8,14
,247,205,239,196,239,3,247,204,248,207,21,147,251,38,5,152,251,52,142,251,121,247,25,95,8,90,7,111,162,117,166,166,162,162,166,30
,188,7,235,174,170,247,28,151,247,10,8,157,247,182,139,142,5,165,116,160,112,30,112,139,118,118,137,113,134,42,133,45,130,46,135
,91,133,58,112,94,8,248,106,7,166,116,162,112,112,116,117,111,30,252,106,7,112,183,133,220,135,188,131,232,132,233,134,236,137,165
,118,160,112,139,8,111,117,117,111,31,14,249,101,239,18,247,6,238,125,247,20,211,247,20,126,235,19,192,247,120,248,201,21,139,107
,143,106,146,104,165,251,24,169,251,23,173,251,22,8,19,160,129,130,133,125,139,124,8,111,162,117,166,30,167,6,166,162,162,166,31
,139,144,138,144,138,143,100,247,36,105,247,37,110,247,39,8,19,200,134,165,134,165,139,166,8,145,7,141,225,200,205,226,139,232,139
,197,66,139,48,139,117,135,115,132,116,8,19,144,35,252,78,139,127,5,111,162,117,166,30,167,6,166,162,162,166,31,139,154,132,152,
128,149,8,230,248,26,5,19,200,146,169,142,168,139,167,139,247,43,44,247,13,251,44,139,72,139,74,115,92,91,8,89,89,119,77,139,67,
8,14,249,81,119,1,247,205,239,3,247,232,248,145,21,112,161,116,167,30,152,139,152,144,148,148,8,197,196,139,252,126,5,111,162,117
,166,166,162,162,166,30,139,248,126,196,82,5,149,130,151,134,153,139,167,139,161,162,139,166,139,152,133,151,130,149,8,251,35,247
,35,5,130,148,126,144,126,139,124,139,127,134,130,139,8,251,34,251,35,5,129,129,134,127,139,126,8,14,249,81,119,1,247,205,239,3,
247,232,247,75,21,139,126,144,126,149,129,8,247,34,251,34,5,149,129,152,134,152,139,152,139,152,144,148,139,8,247,35,247,34,5,148
,149,145,152,139,152,139,166,116,162,112,139,125,139,127,134,129,129,8,82,82,139,248,126,5,166,117,162,111,111,117,117,111,30,139
,252,126,81,196,5,130,149,126,144,126,139,8,112,116,116,112,31,14,129,239,248,253,119,1,247,172,179,21,114,162,114,167,30,247,235
,6,166,163,162,166,31,251,66,249,10,5,133,159,119,156,117,139,117,139,117,123,134,118,8,83,252,216,21,244,248,16,244,252,16,5,14
,247,17,4,247,142,251,17,247,142,247,17,139,247,142,251,142,247,17,251,142,251,17,5,14,14,248,137,247,78,1,247,205,239,3,249,6,248
,187,21,111,162,117,166,166,162,162,166,30,225,7,166,116,162,112,112,116,117,111,30,14,248,137,247,78,1,247,151,247,46,3,248,154
,249,17,21,139,130,141,129,144,131,8,200,45,5,149,130,152,133,152,139,166,139,162,162,139,166,139,149,136,148,134,147,8,79,234,5
,132,150,123,142,126,139,112,139,116,117,139,111,8,14,248,232,247,66,1,247,111,239,227,239,3,248,74,249,26,21,111,161,117,167,167
,161,162,166,30,213,7,166,116,162,112,112,116,117,111,30,247,80,65,21,112,161,116,167,167,161,162,166,30,213,7,166,116,162,112,112
,116,116,112,30,14,146,239,3,153,68,21,112,161,116,167,167,161,162,166,30,249,94,7,166,116,162,112,112,116,116,112,30,14,249,103
,20,139,21,121,156,248,173,147,247,49,159,188,142,6,251,76,140,7,30,10,3,150,37,255,12,9,155,12,10,239,10,239,167,157,150,156,145
,145,150,162,239,12,12,239,11,239,167,157,147,143,155,173,145,168,247,3,12,13,30,10,6,255,12,18,28,0,70,19,0,21,2,0,1,0,28,0,50,
0,79,0,124,0,195,0,226,0,241,1,2,1,29,1,50,1,80,1,98,1,129,1,180,1,194,1,221,1,242,2,7,2,28,2,42,2,68,112,162,116,166,30,185,6,166
,162,162,166,31,185,7,166,116,162,112,30,93,6,112,116,116,112,31,11,111,161,117,167,167,161,162,166,30,248,27,7,166,116,162,112,
112,116,117,111,30,11,111,161,117,167,30,247,0,6,167,161,162,166,31,219,7,166,116,162,112,30,251,0,6,112,116,117,111,31,11,140,251
,63,226,251,88,247,51,139,247,53,139,224,247,88,140,247,63,8,142,7,247,70,51,247,78,251,51,30,99,139,90,122,109,114,59,74,91,251
,14,139,251,26,8,11,111,162,117,166,30,152,139,152,144,148,149,8,247,56,247,66,247,57,251,66,5,149,129,152,134,152,139,166,139,162
,162,139,166,139,149,136,149,133,147,8,251,97,247,200,5,131,150,123,142,126,139,126,139,126,135,129,139,8,251,97,251,200,5,134,131
,136,129,139,129,8,11,214,229,152,229,30,163,139,162,138,161,138,8,99,7,107,87,87,75,64,139,8,131,6,105,141,91,164,139,182,8,11,
247,22,252,23,6,112,162,116,166,166,162,161,167,30,11,248,73,7,167,117,161,111,30,251,72,6,111,117,116,112,31,11,111,162,117,166
,30,184,6,166,162,161,167,31,185,7,167,116,161,112,30,94,6,112,116,117,111,31,11,248,53,7,166,117,162,111,30,251,38,6,111,117,116
,112,112,162,116,166,31,11,251,50,228,251,13,247,53,247,52,229,247,15,247,48,247,50,47,247,15,251,50,251,55,52,251,15,251,50,30,
11,238,187,221,241,240,188,58,39,40,92,59,36,36,92,219,238,30,11,112,162,116,166,30,163,139,160,157,143,161,145,164,153,148,155,
139,163,139,168,121,157,125,172,114,175,115,181,135,8,11,144,139,143,138,144,139,206,139,198,187,152,206,140,142,140,143,139,142
,139,166,115,162,113,139,116,139,117,121,135,117,134,113,126,130,122,139,8,115,139,109,158,121,153,106,164,102,163,98,143,8,11,134
,139,135,140,134,139,72,139,79,91,125,72,8,11,112,161,116,167,30,185,6,167,161,162,166,31,184,7,166,117,162,111,30,93,6,111,117,
116,112,31,11,111,161,117,167,167,161,162,166,30,196,7,166,116,162,112,112,116,117,111,30,11,113,162,116,166,166,162,162,165,30,
197,7,166,116,162,112,112,116,116,112,30,11,112,161,117,167,166,162,162,165,30,197,7,166,115,162,113,112,116,117,111,30,11,155,201
,181,185,209,139,226,139,167,99,154,71,8,11,112,162,116,166,30,248,13,6,166,162,161,167,167,117,161,111,31,252,13,6,111,117,116,
112,31,11,0,0,0,0,1,0,0,0,14,0,0,0,24,0,0,0,0,0,2,0,1,0,1,0,144,0,1,0,4,0,0,0,2,0,0,0,1,0,0,0,10,0,64,0,142,0,2,68,70,76,84,0,14
,108,97,116,110,0,34,0,4,0,0,0,0,255,255,0,5,0,0,0,1,0,2,0,3,0,4,0,4,0,0,0,0,255,255,0,5,0,0,0,1,0,2,0,3,0,4,0,5,97,97,108,116,0
,32,115,115,48,49,0,38,115,115,48,50,0,44,115,115,48,51,0,50,115,115,48,52,0,56,0,0,0,1,0,0,0,24,0,1,0,1,0,22,0,1,0,2,0,20,0,1,0
,3,0,18,0,1,0,4,0,0,1,0,0,0,1,1,0,0,1,2,0,0,1,3,0,5,0,12,0,20,0,28,0,36,0,44,0,3,0,0,0,1,0,40,0,1,0,0,0,1,0,82,0,1,0,0,0,1,0,86,
0,1,0,0,0,1,0,90,0,1,0,0,0,1,0,94,0,1,0,38,0,4,0,14,0,20,0,26,0,32,0,2,0,3,0,143,0,2,0,8,0,141,0,2,0,65,0,142,0,2,0,93,0,144,0,1
,0,4,0,3,0,8,0,65,0,93,0,1,0,6,0,77,0,1,0,1,0,65,0,1,0,6,0,140,0,1,0,1,0,3,0,1,0,6,0,133,0,1,0,1,0,8,0,1,0,6,0,51,0,1,0,1,0,93,0
,1,0,0,0,10,0,44,0,46,0,2,68,70,76,84,0,14,108,97,116,110,0,24,0,4,0,0,0,0,255,255,0,0,0,4,0,0,0,0,255,255,0,0,0,0,0,0,0,0,0,1,0
,0,0,0,204,61,162,207,0,0,0,0,204,138,51,83,0,0,0,0,211,135,133,166,2,211,0,0,2,211,0,0,2,211,1,34,2,211,0,161,2,211,0,113,2,211
,0,113,2,211,0,113,2,211,0,113,2,211,1,20,2,211,1,0,2,211,0,181,2,211,0,113,2,211,0,113,2,211,0,159,2,211,0,113,2,211,0,241,2,211
,0,173,2,211,0,113,2,211,0,144,2,211,0,130,2,211,0,113,2,211,0,113,2,211,0,139,2,211,0,113,2,211,0,113,2,211,0,113,2,211,0,113,2
,211,1,3,2,211,0,156,2,211,0,113,2,211,0,113,2,211,0,113,2,211,0,141,2,211,0,113,2,211,0,119,2,211,0,113,2,211,0,161,2,211,0,164
,2,211,0,159,2,211,0,210,2,211,0,121,2,211,0,141,2,211,0,170,2,211,0,130,2,211,0,127,2,211,0,141,2,211,0,113,2,211,0,127,2,211,0
,116,2,211,0,141,2,211,0,115,2,211,0,153,2,211,0,147,2,211,0,113,2,211,0,127,2,211,0,112,2,211,0,113,2,211,0,133,2,211,0,136,2,211
,0,141,2,211,0,210,2,211,0,173,2,211,0,130,2,211,0,113,2,211,0,113,2,211,1,3,2,211,0,127,2,211,0,124,2,211,0,167,2,211,0,113,2,211
,0,127,2,211,0,147,2,211,0,116,2,211,0,156,2,211,0,181,2,211,0,153,2,211,0,173,2,211,0,253,2,211,0,113,2,211,0,127,2,211,0,113,2
,211,0,124,2,211,0,113,2,211,0,204,2,211,0,153,2,211,0,127,2,211,0,127,2,211,0,116,2,211,0,115,2,211,0,147,2,211,0,113,2,211,0,147
,2,211,0,113,2,211,1,57,2,211,0,113,2,211,0,127,2,211,2,68,2,211,0,226,2,211,0,242,2,211,1,198,0,0,249,67,2,11,255,56,2,211,0,254
,2,114,2,90,1,84,0,226,255,146,0,226,0,174,0,226,1,16,0,254,255,184,0,226,0,140,0,254,1,106,255,94,255,82,1,50,0,113,0,226,0,226
,2,68,0,127,1,26,0,232,1,26,0,248,0,226,1,62,1,56,0,226,1,56,0,228,1,84,1,84,1,24,0,0,0,0,2,114,2,6,1,182,0,14]);Module["FS_createDataFile
"]("/","OCRB.otf",fileData1,true,true)}if(Module["calledRun"]){runWithFS()}else{if(!Module[
x22;preRun"])Module["preRun"]=[];Module["preRun"].push(runWithFS)}});loadPackage({"files":[]})}))();
var Module;if(!Module)Module=(typeof Module!=="undefined"?Module:null)||{};var moduleOverrides={};for(var key in Module
){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;
var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"
;]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER
=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"
;]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("The provided Module['ENVIRONMENT'] value
is not valid. It must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER
=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require===
x22;function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&
;&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["
;print"]=console.log;if(!Module["printErr"])Module["printErr"]=console.warn;var nodeFS;var nodePath;Module
["read"]=function read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("
path");filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);if(!ret&
x26;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){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(
ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process
["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function read(){throw"no read() available (jsc?)"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}}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};Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response)}else{onerror()}};xhr.onerror=onerror;xhr.send(null)};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.warn(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&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"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var Runtime={setTempRet0:(function(value){tempRet0=value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),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}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)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),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}),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[sig]){Runtime.funcWrappers[sig]={}}var sigCache=Runtime.funcWrappers[sig];if(!sigCache[func]){sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func,arguments)}}return sigCache[func]}),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+15&-16;return ret}),staticAlloc:(function(size){var ret=STATICTOP;STATICTOP=STATICTOP+size|0;STATICTOP=STATICTOP+15&-16;return ret}),dynamicAlloc:(function(size){var ret=DYNAMICTOP;DYNAMICTOP=DYNAMICTOP+size|0;DYNAMICTOP=DYNAMICTOP+15&-16;if(DYNAMICTOP>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){DYNAMICTOP=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module["Runtime"]=Runtime;var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];if(!func){try{func=eval("_"+ident)}catch(e){}}assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)");return func}var cwrap,ccall;((function(){var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"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){ret=Runtime.stackAlloc((str.length<<2)+1);writeStringToMemory(str,ret)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;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){if(opts&&opts.async){EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(stack)}));return}Runtime.stackRestore(stack)}return ret};var sourceRegex=/^function\s*[a-zA-Z$_0-9]*\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/;function parseJSFunc(jsfunc){var parsed=jsfunc.toString().match(sourceRegex).slice(1);return{arguments:parsed[0],body:parsed[1],returnValue:parsed[2]}}var JSsource=null;function ensureJSsource(){if(!JSsource){JSsource={};for(var fun in JSfuncs){if(JSfuncs.hasOwnProperty(fun)){JSsource[fun]=parseJSFunc(JSfuncs[fun])}}}}cwrap=function cwrap(ident,returnType,argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident);var numericArgs=argTypes.every((function(type){return type==="number"}));var numericRet=returnType!=="string";if(numericRet&&numericArgs){return cfunc}var argNames=argTypes.map((function(x,i){return"$"+i}));var funcstr="(function("+argNames.join(",")+") {";var nargs=argTypes.length;if(!numericArgs){ensureJSsource();funcstr+="var stack = "+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"];funcstr+="var "+convertCode.arguments+" = "+arg+";";funcstr+=convertCode.body+";";funcstr+=arg+"=("+convertCode.returnValue+");"}}var cfuncname=parseJSFunc((function(){return cfunc})).returnValue;funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");";if(!numericRet){var strgfy=parseJSFunc((function(){return Pointer_stringify})).returnValue;funcstr+="ret = "+strgfy+"(ret);"}if(!numericArgs){ensureJSsource();funcstr+=JSsource["stackRestore"].body.replace("()","(stack)")+";"}funcstr+="return ret})";return eval(funcstr)}}))();Module["ccall"]=ccall;Module["cwrap"]=cwrap;function setValue(ptr,value,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";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?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}Module["setValue"]=setValue;function getValue(ptr,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";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;var ALLOC_STACK=1;var ALLOC_STATIC=2;var ALLOC_DYNAMIC=3;var ALLOC_NONE=4;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;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:Runtime.staticAlloc,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";setValue(ret+i,curr,type);if(previousType!==type){typeSize=Runtime.getNativeTypeSize(type);previousType=type}i+=typeSize}return ret}Module["allocate"]=allocate;function getMemory(size){if(!staticSealed)return Runtime.staticAlloc(size);if(typeof _sbrk!=="undefined"&&!_sbrk.called||!runtimeInitialized)return Runtime.dynamicAlloc(size);return _malloc(size)}Module["getMemory"]=getMemory;function Pointer_stringify(ptr,length){if(length===0||!ptr)return"";var hasUtf=0;var t;var i=0;while(1){t=HEAPU8[ptr+i>>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module["UTF8ToString"](ptr)}Module["Pointer_stringify"]=Pointer_stringify;function AsciiToString(ptr){var str="";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module["AsciiToString"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module["stringToAscii"]=stringToAscii;function UTF8ArrayToString(u8Array,idx){var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}Module["UTF8ArrayToString"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module["UTF8ToString"]=UTF8ToString;function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}Module["stringToUTF8Array"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}Module["stringToUTF8"]=stringToUTF8;function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}Module["lengthBytesUTF8"]=lengthBytesUTF8;function demangle(func){var hasLibcxxabi=!!Module["___cxa_demangle"];if(hasLibcxxabi){try{var buf=_malloc(func.length);writeStringToMemory(func.substr(1),buf);var status=_malloc(4);var ret=Module["___cxa_demangle"](buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){return func}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}}Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");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 jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module["stackTrace"]=stackTrace;var PAGE_SIZE=4096;function alignMemoryPage(x){if(x%4096>0){x+=4096-x%4096}return x}var HEAP;var buffer;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE=0,STATICTOP=0,staticSealed=false;var STACK_BASE=0,STACKTOP=0,STACK_MAX=0;var DYNAMIC_BASE=0,DYNAMICTOP=0;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;var totalMemory=64*1024;while(totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK){if(totalMemory<16*1024*1024){totalMemory*=2}else{totalMemory+=16*1024*1024}}if(totalMemory!==TOTAL_MEMORY){TOTAL_MEMORY=totalMemory}if(Module["buffer"]){buffer=Module["buffer"]}else{buffer=new ArrayBuffer(TOTAL_MEMORY)}updateGlobalBufferViews();HEAP32[0]=255;if(HEAPU8[0]!==255||HEAPU8[3]!==0)throw"Typed arrays 2 must be run on a little-endian system";Module["HEAP"]=HEAP;Module["buffer"]=buffer;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__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}Module["addOnPreRun"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}Module["intArrayToString"]=intArrayToString;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++>>0]=array[i]}}Module["writeArrayToMemory"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}Module["writeAsciiToMemory"]=writeAsciiToMemory;if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];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;var Math_clz32=Math.clz32;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}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()}}}Module["removeRunDependency"]=removeRunDependency;Module["preloadedImages"]={};Module["preloadedAudios"]={};var ASM_CONSTS=[];STATIC_BASE=8;STATICTOP=STATIC_BASE+75136;__ATINIT__.push();allocate([90,0,0,0,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,1,0,0,124,2,0,0,68,11,0,0,80,15,0,0,116,15,0,0,188,15,0,0,100,16,0,0,160,16,0,0,220,16,0,0,216,19,0,0,24,20,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,8,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,89,111,63,0,0,0,45,0,167,144,26,0,71,9,14,0,1,32,7,0,139,147,3,0,56,202,1,0,42,229,0,0,151,114,0,0,76,57,0,0,166,28,0,0,83,14,0,0,41,7,0,0,149,3,0,0,202,1,0,0,229,0,0,0,115,0,0,0,57,0,0,0,29,0,0,0,14,0,0,0,7,0,0,0,4,0,0,0,2,0,0,0,1,0,0,0,1,5,0,0,84,0,0,0,249,40,0,0,0,0,1,0,0,0,2,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,56,3,0,0,48,1,0,0,160,0,0,0,10,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,11,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,12,0,0,0,2,0,0,0,3,0,0,0,213,43,0,0,2,41,0,0,11,41,0,0,164,1,0,0,49,41,0,0,184,1,0,0,65,41,0,0,188,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,4,0,0,0,88,240,188,5,228,2,0,0,241,59,35,40,196,135,0,0,234,161,68,163,225,1,0,0,88,240,188,5,228,2,0,0,241,59,35,40,196,135,0,0,235,161,68,163,225,1,0,0,212,234,229,17,80,3,0,0,59,202,48,90,99,144,0,0,2,38,164,19,126,0,0,0,252,255,251,255,8,0,0,0,184,72,158,156,162,190,0,0,18,1,2,112,8,0,0,0,252,255,251,255,8,0,0,0,131,4,90,10,57,124,1,0,18,1,2,112,8,0,0,0,0,0,0,0,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,0,1,0,0,0,64,0,0,0,1,0,0,0,1,0,0,0,68,0,0,0,0,0,0,0,0,0,0,0,9,0,3,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,1,5,0,0,44,0,0,0,209,43,0,0,0,0,1,0,0,0,2,0,0,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,56,3,0,0,48,0,0,0,172,0,0,0,13,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,11,0,0,0,1,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,6,0,0,0,7,0,0,0,213,43,0,0,230,43,0,0,234,43,0,0,28,3,0,0,92,44,0,0,44,3,0,0,113,44,0,0,48,3,0,0,162,44,0,0,56,3,0,0,250,43,0,0,140,3,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,10,0,0,0,20,0,0,0,9,0,0,0,8,0,0,0,11,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,10,0,0,0,9,0,0,0,13,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,15,0,0,0,5,0,0,0,4,0,0,0,0,16,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,16,0,0,4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,17,0,0,8,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,2,16,0,0,12,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,16,0,0,16,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,16,0,0,20,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,1,17,0,0,24,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,17,0,0,28,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,17,0,0,32,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,17,0,0,36,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,17,0,0,40,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,6,17,0,0,44,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,7,17,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,13,16,0,0,76,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,5,16,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,17,0,0,96,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,15,16,0,0,100,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,16,16,0,0,104,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,17,16,0,0,108,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,18,16,0,0,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,20,17,0,0,120,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,21,17,0,0,124,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,30,17,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,31,17,0,0,140,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,17,0,0,144,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,33,17,0,0,148,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,34,17,0,0,152,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,35,17,0,0,156,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,36,17,0,0,160,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,37,17,0,0,164,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,38,17,0,0,168,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,6,32,0,0,4,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,6,0,0,0,7,32,0,0,60,0,0,0,4,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,6,0,0,0,8,32,0,0,100,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,2,0,0,0,6,0,0,0,9,32,0,0,156,0,0,0,4,0,0,0,0,0,0,0,10,0,0,0,3,0,0,0,3,0,0,0,9,33,0,0,196,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,33,0,0,200,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,33,0,0,204,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,32,0,0,208,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,32,0,0,212,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,12,33,0,0,220,0,0,0,4,0,0,0,0,0,0,0,13,0,0,0,216,0,0,0,6,0,0,0,13,33,0,0,16,1,0,0,4,0,0,0,0,0,0,0,13,0,0,0,217,0,0,0,5,0,0,0,14,33,0,0,68,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,15,33,0,0,72,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,16,33,0,0,76,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,17,33,0,0,80,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,18,33,0,0,84,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,19,33,0,0,88,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,19,32,0,0,92,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,20,32,0,0,96,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,21,32,0,0,100,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5,0,202,154,59,24,0,0,0,16,0,0,0,0,0,0,0,17,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,19,0,0,0,20,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,21,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,23,0,0,0,24,0,0,0,56,0,0,0,25,0,0,0,0,0,0,0,26,0,0,0,27,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,28,0,0,0,29,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,30,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,32,0,0,0,33,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,34,0,0,0,35,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,36,0,0,0,37,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,38,0,0,0,39,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,40,0,0,0,41,0,0,0,44,0,0,0,42,0,0,0,0,0,0,0,43,0,0,0,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,45,0,0,0,46,0,0,0,44,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,50,0,0,0,51,0,0,0,40,0,0,0,52,0,0,0,10,0,0,0,53,0,0,0,54,0,0,0,7,0,0,0,6,0,0,0,55,0,0,0,7,0,0,0,8,0,0,0,14,0,0,0,56,0,0,0,57,0,0,0,0,0,0,0,20,0,0,0,76,44,0,0,0,0,1,0,0,0,2,0,104,11,0,0,0,0,0,0,0,0,0,0,58,0,0,0,8,0,0,0,15,0,0,0,16,0,0,0,11,0,0,0,58,0,0,0,17,0,0,0,9,0,0,0,9,0,0,0,59,0,0,0,10,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,12,0,0,0,65,0,0,0,13,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,10,0,0,0,70,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,14,0,0,0,12,0,0,0,15,0,0,0,13,0,0,0,71,0,0,0,14,0,0,0,72,0,0,0,15,0,0,0,73,0,0,0,16,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,112,9,0,0,164,9,0,0,216,9,0,0,12,10,0,0,64,10,0,0,116,10,0,0,168,10,0,0,220,10,0,0,16,11,0,0,0,0,0,0,2,0,0,0,255,255,255,255,99,105,110,117,0,0,0,0,255,255,255,255,99,105,110,117,1,0,0,0,0,0,0,0,110,109,114,97,3,0,0,0,0,0,0,0,98,109,121,115,3,0,0,0,10,0,0,0,99,105,110,117,3,0,0,0,1,0,0,0,99,105,110,117,3,0,0,0,2,0,0,0,115,105,106,115,3,0,0,0,3,0,0,0,32,32,98,103,3,0,0,0,4,0,0,0,53,103,105,98,3,0,0,0,5,0,0,0,115,110,97,119,3,0,0,0,6,0,0,0,97,104,111,106,81,44,0,0,228,12,0,0,92,44,0,0,240,12,0,0,113,44,0,0,244,12,0,0,124,44,0,0,252,12,0,0,162,44,0,0,4,13,0,0,0,0,0,0,0,0,0,0,17,0,0,0,74,0,0,0,19,0,0,0,15,0,0,0,11,0,0,0,75,0,0,0,18,0,0,0,19,0,0,0,76,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,77,0,0,0,78,0,0,0,1,0,0,0,72,13,0,0,64,3,0,0,79,0,0,0,1,0,0,0,0,0,0,0,80,0,0,0,20,0,0,0,32,0,0,0,127,0,0,0,160,0,0,0,255,0,0,0,0,1,0,0,127,1,0,0,128,1,0,0,79,2,0,0,80,2,0,0,175,2,0,0,176,2,0,0,255,2,0,0,0,3,0,0,111,3,0,0,112,3,0,0,255,3,0,0,0,4,0,0,255,4,0,0,0,5,0,0,47,5,0,0,0,29,0,0,127,29,0,0,128,29,0,0,191,29,0,0,192,29,0,0,255,29,0,0,0,30,0,0,255,30,0,0,0,31,0,0,255,31,0,0,0,32,0,0,111,32,0,0,112,32,0,0,159,32,0,0,160,32,0,0,207,32,0,0,80,33,0,0,143,33,0,0,96,36,0,0,255,36,0,0,96,44,0,0,127,44,0,0,224,45,0,0,255,45,0,0,64,166,0,0,159,166,0,0,32,167,0,0,255,167,0,0,0,251,0,0,6,251,0,0,0,212,1,0,255,215,1,0,0,0,0,0,0,0,0,0,99,105,110,117,110,109,114,97,66,79,68,65,49,116,97,108,0,0,0,0,2,0,0,0,84,14,0,0,64,3,0,0,81,0,0,0,2,0,0,0,0,0,0,0,82,0,0,0,21,0,0,0,128,46,0,0,255,46,0,0,0,47,0,0,223,47,0,0,0,48,0,0,63,48,0,0,64,48,0,0,159,48,0,0,160,48,0,0,255,48,0,0,0,49,0,0,47,49,0,0,48,49,0,0,143,49,0,0,160,49,0,0,191,49,0,0,192,49,0,0,239,49,0,0,240,49,0,0,255,49,0,0,0,50,0,0,255,50,0,0,0,51,0,0,255,51,0,0,0,52,0,0,191,77,0,0,192,77,0,0,255,77,0,0,0,78,0,0,255,159,0,0,0,249,0,0,255,250,0,0,48,254,0,0,79,254,0,0,0,255,0,0,239,255,0,0,0,0,2,0,223,166,2,0,0,248,2,0,31,250,2,0,0,0,0,0,0,0,0,0,3,0,0,0,28,15,0,0,64,3,0,0,83,0,0,0,3,0,0,0,0,0,0,0,84,0,0,0,22,0,0,0,0,9,0,0,255,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,8,13,0,0,40,13,0,0,52,14,0,0,252,14,0,0,0,0,0,0,4,0,0,0,204,0,0,0,249,44,0,0,0,0,1,0,0,0,2,0,44,15,0,0,16,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,176,0,0,0,4,45,0,0,0,0,1,0,0,0,2,0,152,15,0,0,17,0,0,0,18,0,0,0,0,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,108,116,117,111,85,0,0,0,1,0,0,0,2,0,0,0,86,0,0,0,19,0,0,0,2,0,0,0,72,0,0,0,13,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,12,0,0,0,13,0,0,0,3,0,0,0,23,0,0,0,164,15,0,0,2,0,0,0,72,0,0,0,21,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,12,0,0,0,13,0,0,0,3,0,0,0,23,0,0,0,164,15,0,0,108,116,117,111,87,0,0,0,4,0,0,0,0,0,0,0,88,0,0,0,20,0,0,0,89,0,0,0,90,0,0,0,24,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,72,0,0,0,29,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,15,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,2,0,0,0,72,0,0,0,36,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,17,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,2,0,0,0,72,0,0,0,47,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,18,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,26,0,0,0,21,0,0,0,19,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,23,0,0,0,91,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,4,0,0,0,2,0,0,0,22,0,0,0,23,0,0,0,1,0,0,0,26,0,0,0,92,0,0,0,3,0,0,0,28,0,0,0,24,0,0,0,29,0,0,0,27,0,0,0,1,0,0,0,28,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,5,0,0,0,4,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,4,0,0,0,2,0,0,0,2,0,0,0,6,0,0,0,4,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,6,0,0,0,2,0,0,0,6,0,0,0,2,0,0,0,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,21,0,0,0,29,0,0,0,25,0,0,0,204,45,0,0,213,45,0,0,223,45,0,0,232,45,0,0,234,45,0,0,249,45,0,0,8,46,0,0,29,46,0,0,31,46,0,0,34,46,0,0,37,46,0,0,47,46,0,0,57,46,0,0,70,46,0,0,81,46,0,0,91,46,0,0,106,46,0,0,114,46,0,0,129,46,0,0,143,46,0,0,156,46,0,0,171,46,0,0,183,46,0,0,196,46,0,0,209,46,0,0,217,46,0,0,228,46,0,0,237,46,0,0,246,46,0,0,255,46,0,0,10,47,0,0,20,47,0,0,33,47,0,0,42,47,0,0,54,47,0,0,57,47,0,0,61,47,0,0,65,47,0,0,69,47,0,0,71,47,0,0,85,47,0,0,97,47,0,0,99,47,0,0,106,47,0,0,110,47,0,0,120,47,0,0,137,47,0,0,153,47,0,0,187,45,0,0,168,47,0,0,182,47,0,0,197,47,0,0,213,47,0,0,229,47,0,0,244,47,0,0,250,47,0,0,0,48,0,0,10,48,0,0,28,48,0,0,47,48,0,0,50,48,0,0,58,48,0,0,66,48,0,0,68,48,0,0,71,48,0,0,75,48,0,0,79,48,0,0,82,48,0,0,86,48,0,0,90,48,0,0,93,48,0,0,96,48,0,0,103,48,0,0,116,48,0,0,32,0,0,0,26,0,0,0,30,0,0,0,93,0,0,0,94,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,27,0,0,0,30,0,0,0,93,0,0,0,94,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,0,0,0,28,0,0,0,31,0,0,0,95,0,0,0,96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,29,0,0,0,32,0,0,0,97,0,0,0,98,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,19,0,0,80,19,0,0,120,19,0,0,160,19,0,0,0,0,0,0,20,0,0,0,129,48,0,0,0,0,2,0,0,0,2,0,252,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,0,0,40,17,0,0,92,17,0,0,124,17,0,0,6,0,0,0,200,19,0,0,244,17,0,0,0,0,0,0,20,0,0,0,135,48,0,0,0,0,1,0,0,0,2,0,60,20,0,0,0,0,0,0,0,0,0,0,99,0,0,0,30,0,0,0,2,0,0,0,100,0,0,0,101,0,0,0,31,0,0,0,32,0,0,0,120,25,0,0,214,37,0,0,0,0,0,0,6,0,0,0,12,0,0,0,21,0,0,0,28,0,0,0,35,0,0,0,38,0,0,0,53,0,0,0,59,0,0,0,72,0,0,0,148,3,0,0,169,3,0,0,21,34,0,0,173,0,0,0,201,2,0,0,188,3,0,0,25,34,0,0,160,0,0,0,26,2,0,0,27,2,0,0,91,21,1,0,60,20,0,0,0,0,0,0,0,0,0,0,192,20,0,0,5,0,0,0,0,0,0,0,0,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,32,0,0,0,120,33,1,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,20,0,0,4,0,16,0,17,4,0,0,12,2,4,0,12,2,6,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,0,0,0,0,4,0,20,0,16,4,0,0,16,4,4,0,16,4,8,0,16,4,12,0,12,2,16,0,12,2,18,0,0,0,0,0,4,0,20,0,17,4,0,0,12,2,4,0,12,2,6,0,16,4,8,0,12,2,12,0,12,2,14,0,16,4,16,0,0,0,0,0,4,0,4,0,8,1,16,0,8,1,17,0,8,1,18,0,8,1,19,0,0,0,0,0,0,0,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,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,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,94,0,95,0,96,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,111,0,112,0,113,0,114,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,123,0,124,0,125,0,126,0,127,0,128,0,129,0,130,0,131,0,132,0,133,0,134,0,135,0,136,0,137,0,138,0,139,0,140,0,141,0,142,0,143,0,144,0,145,0,146,0,147,0,148,0,149,0,150,0,151,0,152,0,153,0,154,0,155,0,156,0,157,0,158,0,159,0,160,0,161,0,162,0,163,0,164,0,165,0,166,0,167,0,168,0,169,0,170,0,171,0,172,0,173,0,174,0,175,0,176,0,177,0,178,0,179,0,180,0,181,0,182,0,183,0,184,0,185,0,186,0,187,0,188,0,189,0,190,0,191,0,192,0,193,0,194,0,195,0,196,0,197,0,198,0,199,0,200,0,201,0,202,0,203,0,204,0,205,0,206,0,207,0,208,0,209,0,210,0,211,0,212,0,213,0,214,0,215,0,216,0,217,0,218,0,219,0,220,0,221,0,222,0,223,0,224,0,225,0,226,0,227,0,228,0,0,0,1,0,229,0,230,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,253,0,254,0,255,0,0,1,1,1,2,1,3,1,4,1,5,1,6,1,7,1,8,1,9,1,10,1,109,0,110,0,11,1,12,1,13,1,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,1,48,1,49,1,50,1,51,1,52,1,53,1,54,1,55,1,56,1,57,1,58,1,59,1,60,1,61,1,62,1,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,0,0,1,0,231,0,232,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,253,0,254,0,255,0,0,1,1,1,2,1,3,1,4,1,5,1,6,1,7,1,8,1,9,1,10,1,109,0,110,0,11,1,12,1,13,1,14,1,16,1,44,1,45,1,46,1,49,1,58,1,59,1,158,0,155,0,163,0,64,1,65,1,66,1,67,1,68,1,69,1,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,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,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,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,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,94,0,95,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,0,0,111,0,112,0,113,0,114,0,0,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,0,0,123,0,0,0,124,0,125,0,126,0,127,0,128,0,129,0,130,0,131,0,0,0,132,0,133,0,0,0,134,0,135,0,136,0,137,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,138,0,0,0,139,0,0,0,0,0,0,0,0,0,140,0,141,0,142,0,143,0,0,0,0,0,0,0,0,0,0,0,144,0,0,0,0,0,0,0,145,0,0,0,0,0,146,0,147,0,148,0,149,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,229,0,230,0,0,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,0,0,253,0,254,0,255,0,0,1,1,1,0,0,0,0,0,0,2,1,0,0,0,0,3,1,4,1,5,1,6,1,0,0,0,0,7,1,8,1,9,1,0,0,10,1,109,0,110,0,11,1,12,1,13,1,0,0,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,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,48,1,49,1,50,1,0,0,0,0,51,1,52,1,53,1,54,1,55,1,0,0,56,1,0,0,0,0,56,1,0,0,0,0,58,1,59,1,0,0,0,0,60,1,61,1,62,1,0,0,0,0,0,0,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,0,0,0,0,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,4,0,8,0,17,4,4,0,17,4,8,0,0,0,0,0,4,0,54,0,16,4,0,0,16,4,4,0,17,4,8,0,17,4,12,0,12,2,16,0,12,2,18,0,17,4,20,0,17,4,24,0,17,4,28,0,17,4,32,0,13,2,36,0,13,2,38,0,13,2,40,0,13,2,42,0,12,2,44,0,12,2,46,0,13,2,48,0,13,2,50,0,13,2,52,0,0,0,0,0,4,0,36,0,16,4,0,0,13,2,4,0,13,2,6,0,13,2,8,0,12,2,10,0,13,2,12,0,13,2,14,0,13,2,16,0,13,2,18,0,13,2,20,0,13,2,22,0,13,2,24,0,13,2,26,0,13,2,28,0,13,2,30,0,13,2,32,0,12,2,34,0,0,0,0,0,4,0,6,0,17,4,0,0,12,2,4,0,0,0,0,0,4,0,26,0,12,2,6,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,12,2,16,0,12,2,18,0,12,2,20,0,12,2,22,0,12,2,24,0,12,2,26,0,12,2,28,0,12,2,30,0,0,0,0,0,4,0,78,0,12,2,0,0,13,2,2,0,12,2,4,0,12,2,6,0,13,2,8,0,13,2,10,0,13,2,12,0,13,2,14,0,13,2,16,0,13,2,18,0,13,2,20,0,13,2,22,0,13,2,24,0,13,2,26,0,13,2,28,0,13,2,30,0,8,1,32,0,8,1,33,0,8,1,34,0,8,1,35,0,8,1,36,0,8,1,37,0,8,1,38,0,8,1,39,0,8,1,40,0,8,1,41,0,16,4,44,0,16,4,48,0,16,4,52,0,16,4,56,0,8,1,60,0,8,1,61,0,8,1,62,0,8,1,63,0,12,2,64,0,12,2,66,0,12,2,68,0,13,2,70,0,13,2,72,0,13,2,74,0,12,2,76,0,12,2,78,0,0,0,0,0,4,0,8,0,16,4,80,0,16,4,84,0,0,0,0,0,4,0,10,0,13,2,88,0,13,2,90,0,12,2,92,0,12,2,94,0,12,2,96,0,0,0,0,0,4,0,32,0,16,4,0,0,16,4,4,0,13,2,8,0,13,2,10,0,16,4,12,0,16,4,16,0,16,4,20,0,16,4,24,0,16,4,28,0,0,0,0,0,4,0,6,0,12,2,0,0,12,4,4,0,12,4,8,0,0,0,0,0,12,2,0,0,12,2,2,0,12,2,4,0,12,2,6,0,12,2,8,0,12,4,12,0,0,0,0,0,4,0,54,0,16,4,0,0,16,4,4,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,12,2,16,0,24,16,20,0,24,8,36,0,24,6,44,0,9,1,50,0,9,1,51,0,8,1,52,0,8,1,53,0,0,0,0,0,4,0,5,0,8,1,0,0,8,1,1,0,9,1,2,0,9,1,3,0,8,1,4,0,0,0,0,0,4,0,8,0,8,1,0,0,8,1,1,0,9,1,2,0,9,1,3,0,8,1,4,0,9,1,5,0,9,1,6,0,8,1,7,0,0,0,0,0,4,0,8,0,12,2,4,0,12,2,6,0,12,2,8,0,12,2,10,0,0,0,0,0,4,0,16,0,16,4,0,0,16,4,4,0,16,4,8,0,16,4,12,0,0,0,0,0,16,4,8,0,17,0,0,0,16,4,0,0,16,4,12,0,0,0,0,0,9,1,0,0,9,1,1,0,8,1,2,0,9,1,3,0,9,1,4,0,9,1,5,0,9,1,6,0,9,1,7,0,9,1,8,0,9,1,9,0,9,1,10,0,9,1,11,0,0,0,0,0,12,2,40,0,12,2,42,0,8,1,44,0,8,1,45,0,8,1,46,0,9,1,47,0,0,0,0,0,253,0,0,0,6,0,5,1,11,1,18,1,27,1,38,1,45,1,53,1,246,2,74,1,84,1,95,1,104,1,109,1,115,1,122,1,129,1,135,1,140,1,144,1,148,1,154,1,159,1,164,1,168,1,174,1,180,1,185,1,191,1,201,1,206,1,212,1,220,1,229,1,232,1,234,1,236,1,238,1,240,1,242,1,244,1,246,1,248,1,250,1,252,1,254,1,0,2,2,2,4,2,6,2,8,2,10,2,12,2,14,2,16,2,18,2,20,2,22,2,24,2,26,2,28,2,40,2,50,2,63,2,75,2,211,3,96,2,98,2,100,2,102,2,104,2,106,2,108,2,110,2,112,2,114,2,116,2,118,2,120,2,122,2,124,2,126,2,128,2,130,2,132,2,134,2,136,2,138,2,140,2,142,2,144,2,146,2,148,2,158,2,162,2,173,2,95,5,112,5,125,5,134,5,206,5,232,5,26,6,67,6,96,6,74,6,86,6,109,6,103,6,116,6,125,6,154,6,132,6,144,6,161,6,190,6,168,6,180,6,197,6,204,6,233,6,211,6,223,6,240,6,254,6,27,7,5,7,17,7,71,3,239,4,195,2,200,2,229,2,113,3,103,3,136,4,22,5,66,5,173,4,217,3,7,4,23,0,62,4,84,4,32,0,195,4,41,0,51,0,218,2,170,4,64,0,76,0,86,0,94,0,97,0,65,4,94,4,106,0,107,4,126,4,198,3,184,2,159,4,112,0,222,2,120,0,132,0,15,3,162,3,177,3,138,0,105,5,118,5,249,5,91,4,133,4,64,3,55,4,2,3,148,3,86,2,63,1,222,4,155,0,41,7,50,6,209,2,237,2,29,3,43,3,58,3,61,3,78,3,88,3,120,3,135,3,186,3,83,5,141,5,76,5,153,5,163,5,170,5,177,5,189,5,199,5,213,5,220,5,163,0,242,5,7,6,14,6,36,6,110,4,223,3,234,3,240,3,247,3,253,3,16,4,21,4,29,4,42,4,49,4,77,4,119,4,0,6,247,6,60,6,51,7,229,4,183,4,39,5,43,6,34,7,205,4,246,4,33,5,43,5,147,4,10,5,52,5,187,4,211,4,252,4,169,0,175,0,182,0,189,0,200,0,209,0,218,0,225,0,232,0,239,0,246,0,253,0,5,1,11,1,18,1,27,1,38,1,45,1,53,1,63,1,74,1,84,1,95,1,104,1,109,1,115,1,122,1,129,1,135,1,140,1,144,1,148,1,154,1,159,1,164,1,168,1,174,1,180,1,185,1,191,1,201,1,206,1,212,1,220,1,229,1,232,1,234,1,236,1,238,1,240,1,242,1,244,1,246,1,248,1,250,1,252,1,254,1,0,2,2,2,4,2,6,2,8,2,10,2,12,2,14,2,16,2,18,2,20,2,22,2,24,2,26,2,28,2,40,2,50,2,63,2,75,2,86,2,96,2,98,2,100,2,102,2,104,2,106,2,108,2,110,2,112,2,114,2,116,2,118,2,120,2,122,2,124,2,126,2,128,2,130,2,132,2,134,2,136,2,138,2,140,2,142,2,144,2,146,2,148,2,158,2,162,2,173,2,184,2,195,2,200,2,209,2,218,2,222,2,229,2,237,2,246,2,2,3,15,3,29,3,43,3,58,3,61,3,64,3,71,3,78,3,88,3,103,3,113,3,120,3,135,3,148,3,162,3,177,3,186,3,198,3,211,3,217,3,223,3,234,3,240,3,247,3,253,3,7,4,16,4,21,4,29,4,42,4,49,4,55,4,62,4,65,4,77,4,84,4,91,4,94,4,107,4,110,4,119,4,126,4,133,4,136,4,147,4,159,4,170,4,173,4,183,4,187,4,195,4,205,4,211,4,222,4,229,4,239,4,246,4,252,4,10,5,22,5,33,5,39,5,43,5,52,5,66,5,76,5,83,5,95,5,105,5,112,5,118,5,125,5,134,5,141,5,153,5,163,5,170,5,177,5,189,5,199,5,206,5,213,5,220,5,232,5,242,5,249,5,0,6,7,6,14,6,26,6,36,6,43,6,50,6,60,6,67,6,74,6,86,6,96,6,103,6,109,6,116,6,125,6,132,6,144,6,154,6,161,6,168,6,180,6,190,6,197,6,204,6,211,6,223,6,233,6,240,6,247,6,254,6,5,7,17,7,27,7,34,7,41,7,51,7,58,7,70,7,88,7,103,7,118,7,133,7,144,7,162,7,181,7,196,7,211,7,224,7,236,7,248,7,6,8,19,8,32,8,44,8,58,8,72,8,85,8,99,8,119,8,134,8,148,8,158,8,168,8,181,8,191,8,201,8,211,8,221,8,231,8,241,8,251,8,5,9,15,9,25,9,28,9,32,9,36,9,54,9,73,9,89,9,104,9,115,9,122,9,129,9,136,9,143,9,150,9,157,9,164,9,171,9,178,9,185,9,192,9,199,9,206,9,213,9,220,9,227,9,234,9,241,9,248,9,255,9,6,10,13,10,20,10,27,10,34,10,41,10,55,10,65,10,72,10,83,10,99,10,112,10,124,10,136,10,148,10,162,10,173,10,184,10,199,10,211,10,222,10,237,10,249,10,3,11,16,11,34,11,44,11,57,11,69,11,82,11,91,11,101,11,114,11,127,11,140,11,152,11,166,11,180,11,193,11,206,11,218,11,230,11,244,11,1,12,14,12,26,12,40,12,54,12,67,12,80,12,95,12,110,12,124,12,136,12,148,12,165,12,177,12,192,12,203,12,211,12,225,12,237,12,249,12,10,13,25,13,37,13,49,13,66,13,81,13,90,13,102,13,114,13,126,13,143,13,155,13,170,13,178,13,190,13,202,13,214,13,231,13,246,13,2,14,13,14,28,14,36,14,44,14,52,14,60,14,66,14,71,14,76,14,82,14,89,14,97,14,103,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,229,0,230,0,0,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,0,0,253,0,254,0,255,0,0,1,1,1,0,0,0,0,0,0,2,1,0,0,0,0,3,1,4,1,5,1,6,1,0,0,0,0,7,1,8,1,9,1,0,0,10,1,109,0,110,0,11,1,12,1,13,1,0,0,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,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,48,1,49,1,50,1,0,0,0,0,51,1,52,1,53,1,54,1,55,1,0,0,56,1,0,0,0,0,57,1,0,0,0,0,58,1,59,1,0,0,0,0,60,1,61,1,62,1,0,0,0,0,0,0,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,0,0,0,0,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,108,111,97,100,95,102,111,110,116,40,37,115,44,37,115,41,58,32,116,111,111,32,109,97,110,121,32,102,111,110,116,115,33,10,0,78,101,119,95,70,97,99,101,40,37,115,44,37,115,41],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([32,69,114,114,111,114,33,32,37,100,10,0,83,101,116,95,67,104,97,114,95,83,105,122,101,32,69,114,114,111,114,33,32,37,100,10,0,76,111,97,100,95,67,104,97,114,32,69,114,114,111,114,33,32,37,100,10,0,73,110,105,116,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,65,46,111,116,102,0,78,101,119,95,70,97,99,101,40,79,67,82,45,65,41,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,66,46,111,116,102,0,78,101,119,95,70,97,99,101,40,79,67,82,45,66,41,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,45,65,0,79,67,82,45,66,0,99,105,100,0,116,121,112,101,49,0,79,84,84,79,0,46,95,0,47,46,46,110,97,109,101,100,102,111,114,107,47,114,115,114,99,0,47,114,115,114,99,0,114,101,115,111,117,114,99,101,46,102,114,107,47,0,46,114,101,115,111,117,114,99,101,47,0,37,0,46,65,112,112,108,101,68,111,117,98,108,101,47,0,116,114,117,101,116,121,112,101,0,84,114,117,101,84,121,112,101,0,109,117,108,116,105,45,109,97,115,116,101,114,115,0,87,105,100,116,104,0,79,112,116,105,99,97,108,83,105,122,101,0,83,108,97,110,116,0,116,114,117,101,116,121,112,101,45,101,110,103,105,110,101,0,116,116,45,103,108,121,102,0,68,70,75,97,105,83,104,111,45,83,66,0,0,0,0,0,0,68,70,75,97,105,83,104,117,0,0,0,0,0,0,0,0,0,68,70,75,97,105,45,83,66,0,0,0,0,0,0,0,0,0,72,117,97,84,105,97,110,75,97,105,84,105,63,0,0,0,0,72,117,97,84,105,97,110,83,111,110,103,84,105,63,0,0,0,77,105,110,103,76,105,85,0,0,0,0,0,0,0,0,0,0,80,77,105,110,103,76,105,85,0,0,0,0,0,0,0,0,0,77,105,110,103,76,105,52,51,0,0,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,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,255,254,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,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,2,3,4,5,6,7,8,9,3,5,7,9,11,13,15,17,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,32,32,32,32,32,32,2,2,0,80,16,16,16,16,16,16,16,16,0,0,16,0,16,16,16,16,18,16,0,34,1,17,16,32,0,16,32,16,16,0,16,16,0,0,0,0,16,16,16,16,16,0,32,32,0,0,32,32,0,0,32,17,32,17,17,17,32,33,33,1,1,0,0,16,33,33,33,33,33,33,17,17,16,0,33,33,17,16,16,16,33,33,33,33,17,17,17,17,17,17,17,17,17,17,17,17,32,16,16,16,16,16,16,16,32,32,0,0,0,0,16,16,0,32,32,0,0,16,32,32,17,16,51,33,33,16,32,0,0,0,0,0,0,0,0,0,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,1,2,3,4,5,6,7,8,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,99,102,102,0,120,102,56,54,45,100,114,105,118,101,114,45,110,97,109,101,0,67,70,70,0,112,111,115,116,115,99,114,105,112,116,45,105,110,102,111,0,67,73,68,0,82,101,103,117,108,97,114,0,66,111,108,100,0,66,108,97,99,107,0,0,194,193,193,32,32,32,32,32,32,32,32,32,32,13,7,9,11,128,130,130,130,130,128,128,0,1,2,2,2,1,0,2,1,1,1,2,1,2,1,2,1,4,3,2,2,1,2,4,1,1,0,2,0,0,0,5,4,2,115,102,110,116,0,115,102,110,116,45,116,97,98,108,101,0,112,111,115,116,115,99,114,105,112,116,45,102,111,110,116,45,110,97,109,101,0,103,108,121,112,104,45,100,105,99,116,0,98,100,102,0,67,72,65,82,83,69,84,95,82,69,71,73,83,84,82,89,0,67,72,65,82,83,69,84,95,69,78,67,79,68,73,78,71,0,116,116,45,99,109,97,112,115,0,84,72,69,90,79,67,81,83,0,0,0,0,0,72,69,90,76,79,67,85,83,0,0,0,0,0,102,105,106,107,100,98,104,0,0,0,0,0,0,120,122,114,111,101,115,99,0,0,0,0,0,0,120,122,114,111,101,115,99,0,0,0,0,0,0,112,113,103,106,121,0,0,0,0,0,0,0,0,97,117,116,111,102,105,116,116,101,114,0,112,115,104,105,110,116,101,114,0,114,97,115,116,101,114,49,0,114,97,115,116,101,114,53,0,115,109,111,111,116,104,0,115,109,111,111,116,104,45,108,99,100,0,115,109,111,111,116,104,45,108,99,100,118,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,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,255,255,255,255,255,255,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,255,255,255,255,255,83,116,97,114,116,70,111,110,116,77,101,116,114,105,99,115,0,65,115,99,101,110,100,101,114,0,65,120,105,115,76,97,98,101,108,0,65,120,105,115,84,121,112,101,0,66,0,66,108,101,110,100,65,120,105,115,84,121,112,101,115,0,66,108,101,110,100,68,101,115,105,103,110,77,97,112,0,66,108,101,110,100,68,101,115,105,103,110,80,111,115,105,116,105,111,110,115,0,67,0,67,67,0,67,72,0,67,97,112,72,101,105,103,104,116,0,67,104,97,114,87,105,100,116,104,0,67,104,97,114,97,99,116,101,114,83,101,116,0,67,104,97,114,97,99,116,101,114,115,0,68,101,115,99,101,110,100,101,114,0,69,110,99,111,100,105,110,103,83,99,104,101,109,101,0,69,110,100,65,120,105,115,0,69,110,100,67,104,97,114,77,101,116,114,105,99,115,0,69,110,100,67,111,109,112,111,115,105,116,101,115,0,69,110,100,68,105,114,101,99,116,105,111,110,0,69,110,100,70,111,110,116,77,101,116,114,105,99,115,0,69,110,100,75,101,114,110,68,97,116,97,0,69,110,100,75,101,114,110,80,97,105,114,115,0,69,110,100,84,114,97,99,107,75,101,114,110,0,69,115,99,67,104,97,114,0,70,97,109,105,108,121,78,97,109,101,0,70,111,110,116,66,66,111,120,0,70,111,110,116,78,97,109,101,0,70,117,108,108,78,97,109,101,0,73,115,66,97,115,101,70,111,110,116,0,73,115,67,73,68,70,111,110,116,0,73,115,70,105,120,101,100,80,105,116,99,104,0,73,115,70,105,120,101,100,86,0,73,116,97,108,105,99,65,110,103,108,101,0,75,80,0,75,80,72,0,75,80,88,0,75,80,89,0,76,0,77,97,112,112,105,110,103,83,99,104,101,109,101,0,77,101,116,114,105,99,115,83,101,116,115,0,78,0,78,111,116,105,99,101,0,80,67,67,0,83,116,97,114,116,65,120,105,115,0,83,116,97,114,116,67,104,97,114,77,101,116,114,105,99,115,0,83,116,97,114,116,67,111,109,112,111,115,105,116,101,115,0,83,116,97,114,116,68,105,114,101,99,116,105,111,110,0,83,116,97,114,116,75,101,114,110,68,97,116,97,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,48,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,49,0,83,116,97,114,116,84,114,97,99,107,75,101,114,110,0,83,116,100,72,87,0,83,116,100,86,87,0,84,114,97,99,107,75,101,114,110,0,85,110,100,101,114,108,105,110,101,80,111,115,105,116,105,111,110,0,85,110,100,101,114,108,105,110,101,84,104,105,99,107,110,101,115,115,0,86,86,0,86,86,101,99,116,111,114,0,86,101,114,115,105,111,110,0,87,0,87,48,0,87,48,88,0,87,48,89,0,87,49,0,87,49,88,0,87,49,89,0,87,88,0,87,89,0,87,101,105,103,104,116,0,87,101,105,103,104,116,86,101,99,116,111,114,0,88,72,101,105,103,104,116,0,116,114,117,101,0,112,115,97,117,120,0,112,115,110,97,109,101,115,0,0,52,0,106,2,167,3,63,4,220,6,125,9,143,10,23,11,137,12,199,14,246,15,87,16,233,17,219,18,104,19,88,22,110,23,32,23,71,24,77,27,156,29,73,31,247,32,107,32,222,33,55,34,154,35,218,53,84,59,196,68,6,75,183,83,178,88,135,93,242,101,165,109,185,111,55,117,254,123,73,130,238,138,206,145,31,153,182,156,189,163,249,178,221,193,17,197,99,199,240,204,27,204,155,210,100,65,143,0,65,0,140,0,175,0,193,1,15,1,147,1,233,1,251,2,7,2,40,2,57,2,82,2,91,2,128,2,136,2,154,69,131,0,198,0,150,0,158,0,167,225,227,245,244,101,128,1,252,237,225,227,242,239,110,128,1,226,243,237,225,236,108,128,247,230,225,227,245,244,101,129,0,193,0,185,243,237,225,236,108,128,247,225,226,242,229,246,101,134,1,2,0,213,0,221,0,232,0,243,0,251,1,7,225,227,245,244,101,128,30,174,227,249,242,233,236,236,233,99,128,4,208,228,239,244,226,229,236,239,119,128,30,182,231,242,225,246,101,128,30,176,232,239,239,235,225,226,239,246,101,128,30,178,244,233,236,228,101,128,30,180,99,4,1,25,1,32,1,121,1,137,225,242,239,110,128,1,205,233,242,99,2,1,40,1,45,236,101,128,36,182,245,237,230,236,229,120,134,0,194,1,66,1,74,1,85,1,93,1,105,1,113,225,227,245,244,101,128,30,164,228,239,244,226,229,236,239,119,128,30,172,231,242,225,246,101,128,30,166,232,239,239,235,225,226,239,246,101,128,30,168,243,237,225,236,108,128,247,226,244,233,236,228,101,128,30,170,245,244,101,129,246,201,1,129,243,237,225,236,108,128,247,180,249,242,233,236,236,233,99,128,4,16,100,3,1,155,1,165,1,209,226,236,231,242,225,246,101,128,2,0,233,229,242,229,243,233,115,131,0,196,1,181,1,192,1,201,227,249,242,233,236,236,233,99,128,4,210,237,225,227,242,239,110,128,1,222,243,237,225,236,108,128,247,228,239,116,2,1,216,1,224,226,229,236,239,119,128,30,160,237,225,227,242,239,110,128,1,224,231,242,225,246,101,129,0,192,1,243,243,237,225,236,108,128,247,224,232,239,239,235,225,226,239,246,101,128,30,162,105,2,2,13,2,25,229,227,249,242,233,236,236,233,99,128,4,212,238,246,229,242,244,229,228,226,242,229,246,101,128,2,2,236,240,232,97,129,3,145,2,49,244,239,238,239,115,128,3,134,109,2,2,63,2,71,225,227,242,239,110,128,1,0,239,238,239,243,240,225,227,101,128,255,33,239,231,239,238,229,107,128,1,4,242,233,238,103,131,0,197,2,104,2,112,2,120,225,227,245,244,101,128,1,250,226,229,236,239,119,128,30,0,243,237,225,236,108,128,247,229,243,237,225,236,108,128,247,97,244,233,236,228,101,129,0,195,2,146,243,237,225,236,108,128,247,227,249,226,225,242,237,229,238,233,225,110,128,5,49,66,137,0,66,2,189,2,198,2,223,3,3,3,10,3,22,3,34,3,46,3,54,227,233,242,227,236,101,128,36,183,228,239,116,2,2,206,2,215,225,227,227,229,238,116,128,30,2,226,229,236,239,119,128,30,4,101,3,2,231,2,242,2,254,227,249,242,233,236,236,233,99,128,4,17,238,225,242,237,229,238,233,225,110,128,5,50,244,97,128,3,146,232,239,239,107,128,1,129,236,233,238,229,226,229,236,239,119,128,30,6,237,239,238,239,243,240,225,227,101,128,255,34,242,229,246,229,243,237,225,236,108,128,246,244,243,237,225,236,108,128,247,98,244,239,240,226,225,114,128,1,130,67,137,0,67,3,85,3,127,3,193,3,210,3,224,4,171,4,188,4,200,4,212,97,3,3,93,3,104,3,111,225,242,237,229,238,233,225,110,128,5,62,227,245,244,101,128,1,6,242,239,110,129,246,202,3,119,243,237,225,236,108,128,246,245,99,3,3,135,3,142,3,171,225,242,239,110,128,1,12,229,228,233,236,236,97,130,0,199,3,155,3,163,225,227,245,244,101,128,30,8,243,237,225,236,108,128,247,231,233,242,99,2,3,179,3,184,236,101,128,36,184,245,237,230,236,229,120,128,1,8,228,239,116,129,1,10,3,201,225,227,227,229,238,116,128,1,10,229,228,233,236,236,225,243,237,225,236,108,128,247,184,104,4,3,234,3,246,4,161,4,165,225,225,242,237,229,238,233,225,110,128,5,73,101,6,4,4,4,24,4,35,4,103,4,115,4,136,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,188,227,249,242,233,236,236,233,99,128,4,39,100,2,4,41,4,85,229,243,227,229,238,228,229,114,2,4,54,4,74,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,190,227,249,242,233,236,236,233,99,128,4,182,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,244,232,225,242,237,229,238,233,225,110,128,5,67,235,232,225,235,225,243,243,233,225,238,227,249,242,233,236,236,233,99,128,4,203,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,184,105,128,3,167,239,239,107,128,1,135,233,242,227,245,237,230,236,229,248,243,237,225,236,108,128,246,246,237,239,238,239,243,240,225,227,101,128,255,35,239,225,242,237,229,238,233,225,110,128,5,81,243,237,225,236,108,128,247,99,68,142,0,68,4,252,5,10,5,36,5,96,5,121,5,166,5,173,5,231,5,244,6,0,6,12,6,28,6,48,6,57,90,129,1,241,5,2,227,225,242,239,110,128,1,196,97,2,5,16,5,27,225,242,237,229,238,233,225,110,128,5,52,230,242,233,227,225,110,128,1,137,99,4,5,46,5,53,5,62,5,89,225,242,239,110,128,1,14,229,228,233,236,236,97,128,30,16,233,242,99,2,5,70,5,75,236,101,128,36,185,245,237,230,236,229,248,226,229,236,239,119,128,30,18,242,239,225,116,128,1,16,228,239,116,2,5,104,5,113,225,227,227,229,238,116,128,30,10,226,229,236,239,119,128,30,12,101,3,5,129,5,140,5,150,227,249,242,233,236,236,233,99,128,4,20,233,227,239,240,244,233,99,128,3,238,236,244,97,129,34,6,5,158,231,242,229,229,107,128,3,148,232,239,239,107,128,1,138,105,2,5,179,5,218,229,242,229,243,233,115,131,246,203,5,194,5,202,5,210,193,227,245,244,101,128,246,204,199,242,225,246,101,128,246,205,243,237,225,236,108,128,247,168,231,225,237,237,225,231,242,229,229,107,128,3,220,234,229,227,249,242,233,236,236,233,99,128,4,2,236,233,238,229,226,229,236,239,119,128,30,14,237,239,238,239,243,240,225,227,101,128,255,36,239,244,225,227,227,229,238,244,243,237,225,236,108,128,246,247,115,2,6,34,6,41,236,225,243,104,128,1,16,237,225,236,108,128,247,100,244,239,240,226,225,114,128,1,139,122,131,1,242,6,67,6,75,6,112,227,225,242,239,110,128,1,197,101,2,6,81,6,101,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,224,227,249,242,233,236,236,233,99,128,4,5,232,229,227,249,242,233,236,236,233,99,128,4,15,69,146,0,69,6,165,6,183,6,191,7,89,7,153,7,165,7,183,7,211,8,7,8,36,8,94,8,169,8,189,8,208,8,248,9,44,9,109,9,115,225,227,245,244,101,129,0,201,6,175,243,237,225,236,108,128,247,233,226,242,229,246,101,128,1,20,99,5,6,203,6,210,6,224,6,236,7,79,225,242,239,110,128,1,26,229,228,233,236,236,225,226,242,229,246,101,128,30,28,232,225,242,237,229,238,233,225,110,128,5,53,233,242,99,2,6,244,6,249,236,101,128,36,186,245,237,230,236,229,120,135,0,202,7,16,7,24,7,32,7,43,7,51,7,63,7,71,225,227,245,244,101,128,30,190,226,229,236,239,119,128,30,24,228,239,244,226,229,236,239,119,128,30,198,231,242,225,246,101,128,30,192,232,239,239,235,225,226,239,246,101,128,30,194,243,237,225,236,108,128,247,234,244,233,236,228,101,128,30,196,249,242,233,236,236,233,99,128,4,4,100,3,7,97,7,107,7,127,226,236,231,242,225,246,101,128,2,4,233,229,242,229,243,233,115,129,0,203,7,119,243,237,225,236,108,128,247,235,239,116,130,1,22,7,136,7,145,225,227,227,229,238,116,128,1,22,226,229,236,239,119,128,30,184,230,227,249,242,233,236,236,233,99,128,4,36,231,242,225,246,101,129,0,200,7,175,243,237,225,236,108,128,247,232,104,2,7,189,7,200,225,242,237,229,238,233,225,110,128,5,55,239,239,235,225,226,239,246,101,128,30,186,105,3,7,219,7,230,7,245,231,232,244,242,239,237,225,110,128,33,103,238,246,229,242,244,229,228,226,242,229,246,101,128,2,6,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,100,108,2,8,13,8,24,227,249,242,233,236,236,233,99,128,4,27,229,246,229,238,242,239,237,225,110,128,33,106,109,3,8,44,8,72,8,83,225,227,242,239,110,130,1,18,8,56,8,64,225,227,245,244,101,128,30,22,231,242,225,246,101,128,30,20,227,249,242,233,236,236,233,99,128,4,28,239,238,239,243,240,225,227,101,128,255,37,110,4,8,104,8,115,8,135,8,154,227,249,242,233,236,236,233,99,128,4,29,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,162,103,129,1,74,8,141,232,229,227,249,242,233,236,236,233,99,128,4,164,232,239,239,235,227,249,242,233,236,236,233,99,128,4,199,111,2,8,175,8,183,231,239,238,229,107,128,1,24,240,229,110,128,1,144,240,243,233,236,239,110,129,3,149,8,200,244,239,238,239,115,128,3,136,114,2,8,214,8,225,227,249,242,233,236,236,233,99,128,4,32,229,246,229,242,243,229,100,129,1,142,8,237,227,249,242,233,236,236,233,99,128,4,45,115,4,9,2,9,13,9,33,9,37,227,249,242,233,236,236,233,99,128,4,33,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,170,104,128,1,169,237,225,236,108,128,247,101,116,3,9,52,9,78,9,92,97,130,3,151,9,60,9,70,242,237,229,238,233,225,110,128,5,56,244,239,238,239,115,128,3,137,104,129,0,208,9,84,243,237,225,236,108,128,247,240,233,236,228,101,129,30,188,9,101,226,229,236,239,119,128,30,26,245,242,111,128,32,172,250,104,130,1,183,9,124,9,132,227,225,242,239,110,128,1,238,242,229,246,229,242,243,229,100,128,1,184,70,136,0,70,9,163,9,172,9,184,9,212,9,219,9,248,10,4,10,15,227,233,242,227,236,101,128,36,187,228,239,244,225,227,227,229,238,116,128,30,30,101,2,9,190,9,202,232,225,242,237,229,238,233,225,110,128,5,86,233,227,239,240,244,233,99,128,3,228,232,239,239,107,128,1,145,105,2,9,225,9,238,244,225,227,249,242,233,236,236,233,99,128,4,114,246,229,242,239,237,225,110,128,33,100,237,239,238,239,243,240,225,227,101,128,255,38,239,245,242,242,239,237,225,110,128,33,99,243,237,225,236,108,128,247,102,71,140,0,71,10,51,10,61,10,107,10,115,10,176,10,193,10,205,11,39,11,52,11,65,11,90,11,107,194,243,241,245,225,242,101,128,51,135,97,3,10,69,10,76,10,94,227,245,244,101,128,1,244,237,237,97,129,3,147,10,84,225,230,242,233,227,225,110,128,1,148,238,231,233,225,227,239,240,244,233,99,128,3,234,226,242,229,246,101,128,1,30,99,4,10,125,10,132,10,141,10,163,225,242,239,110,128,1,230,229,228,233,236,236,97,128,1,34,233,242,99,2,10,149,10,154,236,101,128,36,188,245,237,230,236,229,120,128,1,28,239,237,237,225,225,227,227,229,238,116,128,1,34,228,239,116,129,1,32,10,184,225,227,227,229,238,116,128,1,32,229,227,249,242,233,236,236,233,99,128,4,19,104,3,10,213,10,226,11,33,225,228,225,242,237,229,238,233,225,110,128,5,66,101,3,10,234,10,255,11,16,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,148,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,146,245,240,244,245,242,238,227,249,242,233,236,236,233,99,128,4,144,239,239,107,128,1,147,233,237,225,242,237,229,238,233,225,110,128,5,51,234,229,227,249,242,233,236,236,233,99,128,4,3,109,2,11,71,11,79,225,227,242,239,110,128,30,32,239,238,239,243,240,225,227,101,128,255,39,242,225,246,101,129,246,206,11,99,243,237,225,236,108,128,247,96,115,2,11,113,11,129,237,225,236,108,129,247,103,11,122,232,239,239,107,128,2,155,244,242,239,235,101,128,1,228,72,140,0,72,11,165,11,190,11,198,11,208,12,17,12,40,12,77,12,117,12,129,12,157,12,165,12,189,177,184,53,3,11,175,11,180,11,185,179,51,128,37,207,180,51,128,37,170,181,49,128,37,171,178,178,176,183,51,128,37,161,208,243,241,245,225,242,101,128,51,203,97,3,11,216,11,236,12,0,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,168,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,178,242,228,243,233,231,238,227,249,242,233,236,236,233,99,128,4,42,98,2,12,23,12,28,225,114,128,1,38,242,229,246,229,226,229,236,239,119,128,30,42,99,2,12,46,12,55,229,228,233,236,236,97,128,30,40,233,242,99,2,12,63,12,68,236,101,128,36,189,245,237,230,236,229,120,128,1,36,100,2,12,83,12,93,233,229,242,229,243,233,115,128,30,38,239,116,2,12,100,12,109,225,227,227,229,238,116,128,30,34,226,229,236,239,119,128,30,36,237,239,238,239,243,240,225,227,101,128,255,40,111,2,12,135,12,146,225,242,237,229,238,233,225,110,128,5,64,242,233,227,239,240,244,233,99,128,3,232,243,237,225,236,108,128,247,104,245,238,231,225,242,245,237,236,225,245,116,129,246,207,12,181,243,237,225,236,108,128,246,248,250,243,241,245,225,242,101,128,51,144,73,146,0,73,12,239,12,251,12,255,13,11,13,29,13,37,13,94,13,181,13,214,13,224,13,242,13,254,14,48,14,86,14,99,14,166,14,187,14,205,193,227,249,242,233,236,236,233,99,128,4,47,74,128,1,50,213,227,249,242,233,236,236,233,99,128,4,46,225,227,245,244,101,129,0,205,13,21,243,237,225,236,108,128,247,237,226,242,229,246,101,128,1,44,99,3,13,45,13,52,13,84,225,242,239,110,128,1,207,233,242,99,2,13,60,13,65,236,101,128,36,190,245,237,230,236,229,120,129,0,206,13,76,243,237,225,236,108,128,247,238,249,242,233,236,236,233,99,128,4,6,100,3,13,102,13,112,13,155,226,236,231,242,225,246,101,128,2,8,233,229,242,229,243,233,115,131,0,207,13,128,13,136,13,147,225,227,245,244,101,128,30,46,227,249,242,233,236,236,233,99,128,4,228,243,237,225,236,108,128,247,239,239,116,130,1,48,13,164,13,173,225,227,227,229,238,116,128,1,48,226,229,236,239,119,128,30,202,101,2,13,187,13,203,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,214,227,249,242,233,236,236,233,99,128,4,21,230,242,225,235,244,245,114,128,33,17,231,242,225,246,101,129,0,204,13,234,243,237,225,236,108,128,247,236,232,239,239,235,225,226,239,246,101,128,30,200,105,3,14,6,14,17,14,32,227,249,242,233,236,236,233,99,128,4,24,238,246,229,242,244,229,228,226,242,229,246,101,128,2,10,243,232,239,242,244,227,249,242,233,236,236,233,99,128,4,25,109,2,14,54,14,75,225,227,242,239,110,129,1,42,14,64,227,249,242,233,236,236,233,99,128,4,226,239,238,239,243,240,225,227,101,128,255,41,238,233,225,242,237,229,238,233,225,110,128,5,59,111,3,14,107,14,118,14,126,227,249,242,233,236,236,233,99,128,4,1,231,239,238,229,107,128,1,46,244,97,131,3,153,14,137,14,147,14,158,225,230,242,233,227,225,110,128,1,150,228,233,229,242,229,243,233,115,128,3,170,244,239,238,239,115,128,3,138,115,2,14,172,14,179,237,225,236,108,128,247,105,244,242,239,235,101,128,1,151,244,233,236,228,101,129,1,40,14,197,226,229,236,239,119,128,30,44,250,232,233,244,243,97,2,14,216,14,227,227,249,242,233,236,236,233,99,128,4,116,228,226,236,231,242,225,246,229,227,249,242,233,236,236,233,99,128,4,118,74,134,0,74,15,6,15,18,15,41,15,53,15,67,15,79,225,225,242,237,229,238,233,225,110,128,5,65,227,233,242,99,2,15,27,15,32,236,101,128,36,191,245,237,230,236,229,120,128,1,52,229,227,249,242,233,236,236,233,99,128,4,8,232,229,232,225,242,237,229,238,233,225,110,128,5,75,237,239,238,239,243,240,225,227,101,128,255,42,243,237,225,236,108,128,247,106,75,140,0,75,15,115,15,125,15,135,16,18,16,65,16,76,16,106,16,143,16,156,16,168,16,180,16,208,194,243,241,245,225,242,101,128,51,133,203,243,241,245,225,242,101,128,51,205,97,7,15,151,15,169,15,191,15,211,15,226,15,232,15,249,226,225,243,232,235,233,242,227,249,242,233,236,236,233,99,128,4,160,99,2,15,175,15,181,245,244,101,128,30,48,249,242,233,236,236,233,99,128,4,26,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,154,232,239,239,235,227,249,242,233,236,236,233,99,128,4,195,240,240,97,128,3,154,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,158,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,156,99,4,16,28,16,35,16,44,16,52,225,242,239,110,128,1,232,229,228,233,236,236,97,128,1,54,233,242,227,236,101,128,36,192,239,237,237,225,225,227,227,229,238,116,128,1,54,228,239,244,226,229,236,239,119,128,30,50,101,2,16,82,16,94,232,225,242,237,229,238,233,225,110,128,5,84,238,225,242,237,229,238,233,225,110,128,5,63,104,3,16,114,16,126,16,137,225,227,249,242,233,236,236,233,99,128,4,37,229,233,227,239,240,244,233,99,128,3,230,239,239,107,128,1,152,234,229,227,249,242,233,236,236,233,99,128,4,12,236,233,238,229,226,229,236,239,119,128,30,52,237,239,238,239,243,240,225,227,101,128,255,43,239,240,240,97,2,16,189,16,200,227,249,242,233,236,236,233,99,128,4,128,231,242,229,229,107,128,3,222,115,2,16,214,16,226,233,227,249,242,233,236,236,233,99,128,4,110,237,225,236,108,128,247,107,76,138,0,76,17,1,17,5,17,9,17,29,17,95,17,133,17,147,17,165,17,177,17,189,74,128,1,199,76,128,246,191,97,2,17,15,17,22,227,245,244,101,128,1,57,237,226,228,97,128,3,155,99,4,17,39,17,46,17,55,17,82,225,242,239,110,128,1,61,229,228,233,236,236,97,128,1,59,233,242,99,2,17,63,17,68,236,101,128,36,193,245,237,230,236,229,248,226,229,236,239,119,128,30,60,239,237,237,225,225,227,227,229,238,116,128,1,59,228,239,116,130,1,63,17,105,17,114,225,227,227,229,238,116,128,1,63,226,229,236,239,119,129,30,54,17,124,237,225,227,242,239,110,128,30,56,233,247,238,225,242,237,229,238,233,225,110,128,5,60,106,129,1,200,17,153,229,227,249,242,233,236,236,233,99,128,4,9,236,233,238,229,226,229,236,239,119,128,30,58,237,239,238,239,243,240,225,227,101,128,255,44,115,2,17,195,17,212,236,225,243,104,129,1,65,17,204,243,237,225,236,108,128,246,249,237,225,236,108,128,247,108,77,137,0,77,17,241,17,251,18,24,18,33,18,58,18,71,18,83,18,91,18,100,194,243,241,245,225,242,101,128,51,134,225,99,2,18,2,18,18,242,239,110,129,246,208,18,10,243,237,225,236,108,128,247,175,245,244,101,128,30,62,227,233,242,227,236,101,128,36,194,228,239,116,2,18,41,18,50,225,227,227,229,238,116,128,30,64,226,229,236,239,119,128,30,66,229,238,225,242,237,229,238,233,225,110,128,5,68,237,239,238,239,243,240,225,227,101,128,255,45,243,237,225,236,108,128,247,109,244,245,242,238,229,100,128,1,156,117,128,3,156,78,141,0,78,18,134,18,138,18,146,18,212,18,237,18,248,19,3,19,21,19,33,19,45,19,58,19,66,19,84,74,128,1,202,225,227,245,244,101,128,1,67,99,4,18,156,18,163,18,172,18,199,225,242,239,110,128,1,71,229,228,233,236,236,97,128,1,69,233,242,99,2,18,180,18,185,236,101,128,36,195,245,237,230,236,229,248,226,229,236,239,119,128,30,74,239,237,237,225,225,227,227,229,238,116,128,1,69,228,239,116,2,18,220,18,229,225,227,227,229,238,116,128,30,68,226,229,236,239,119,128,30,70,232,239,239,235,236,229,230,116,128,1,157,233,238,229,242,239,237,225,110,128,33,104,106,129,1,203,19,9,229,227,249,242,233,236,236,233,99,128,4,10,236,233,238,229,226,229,236,239,119,128,30,72,237,239,238,239,243,240,225,227,101,128,255,46,239,247,225,242,237,229,238,233,225,110,128,5,70,243,237,225,236,108,128,247,110,244,233,236,228,101,129,0,209,19,76,243,237,225,236,108,128,247,241,117,128,3,157,79,141,0,79,19,118,19,132,19,150,19,203,20,78,20,152,20,187,21,48,21,69,21,213,21,223,21,254,22,53,69,129,1,82,19,124,243,237,225,236,108,128,246,250,225,227,245,244,101,129,0,211,19,142,243,237,225,236,108,128,247,243,98,2,19,156,19,196,225,242,242,229,100,2,19,166,19,177,227,249,242,233,236,236,233,99,128,4,232,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,234,242,229,246,101,128,1,78,99,4,19,213,19,220,19,235,20,68,225,242,239,110,128,1,209,229,238,244,229,242,229,228,244,233,236,228,101,128,1,159,233,242,99,2,19,243,19,248,236,101,128,36,196,245,237,230,236,229,120,134,0,212,20,13,20,21,20,32,20,40,20,52,20,60,225,227,245,244,101,128,30,208,228,239,244,226,229,236,239,119,128,30,216,231,242,225,246,101,128,30,210,232,239,239,235,225,226,239,246,101,128,30,212,243,237,225,236,108,128,247,244,244,233,236,228,101,128,30,214,249,242,233,236,236,233,99,128,4,30,100,3,20,86,20,109,20,142,226,108,2,20,93,20,101,225,227,245,244,101,128,1,80,231,242,225,246,101,128,2,12,233,229,242,229,243,233,115,130,0,214,20,123,20,134,227,249,242,233,236,236,233,99,128,4,230,243,237,225,236,108,128,247,246,239,244,226,229,236,239,119,128,30,204,103,2,20,158,20,170,239,238,229,235,243,237,225,236,108,128,246,251,242,225,246,101,129,0,210,20,179,243,237,225,236,108,128,247,242,104,4,20,197,20,208,20,212,21,34,225,242,237,229,238,233,225,110,128,5,85,109,128,33,38,111,2,20,218,20,228,239,235,225,226,239,246,101,128,30,206,242,110,133,1,160,20,243,20,251,21,6,21,14,21,26,225,227,245,244,101,128,30,218,228,239,244,226,229,236,239,119,128,30,226,231,242,225,246,101,128,30,220,232,239,239,235,225,226,239,246,101,128,30,222,244,233,236,228,101,128,30,224,245,238,231,225,242,245,237,236,225,245,116,128,1,80,105,129,1,162,21,54,238,246,229,242,244,229,228,226,242,229,246,101,128,2,14,109,4,21,79,21,107,21,184,21,202,225,227,242,239,110,130,1,76,21,91,21,99,225,227,245,244,101,128,30,82,231,242,225,246,101,128,30,80,229,231,97,132,33,38,21,121,21,132,21,140,21,156,227,249,242,233,236,236,233,99,128,4,96,231,242,229,229,107,128,3,169,242,239,245,238,228,227,249,242,233,236,236,233,99,128,4,122,116,2,21,162,21,177,233,244,236,239,227,249,242,233,236,236,233,99,128,4,124,239,238,239,115,128,3,143,233,227,242,239,110,129,3,159,21,194,244,239,238,239,115,128,3,140,239,238,239,243,240,225,227,101,128,255,47,238,229,242,239,237,225,110,128,33,96,111,2,21,229,21,248,231,239,238,229,107,129,1,234,21,239,237,225,227,242,239,110,128,1,236,240,229,110,128,1,134,115,3,22,6,22,33,22,40,236,225,243,104,130,0,216,22,17,22,25,225,227,245,244,101,128,1,254,243,237,225,236,108,128,247,248,237,225,236,108,128,247,111,244,242,239,235,229,225,227,245,244,101,128,1,254,116,2,22,59,22,70,227,249,242,233,236,236,233,99,128,4,126,233,236,228,101,131,0,213,22,83,22,91,22,102,225,227,245,244,101,128,30,76,228,233,229,242,229,243,233,115,128,30,78,243,237,225,236,108,128,247,245,80,136,0,80,22,130,22,138,22,147,22,159,22,211,22,227,22,246,23,2,225,227,245,244,101,128,30,84,227,233,242,227,236,101,128,36,197,228,239,244,225,227,227,229,238,116,128,30,86,101,3,22,167,22,178,22,190,227,249,242,233,236,236,233,99,128,4,31,232,225,242,237,229,238,233,225,110,128,5,74,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,166,104,2,22,217,22,221,105,128,3,166,239,239,107,128,1,164,105,129,3,160,22,233,247,242,225,242,237,229,238,233,225,110,128,5,83,237,239,238,239,243,240,225,227,101,128,255,48,115,2,23,8,23,25,105,129,3,168,23,14,227,249,242,233,236,236,233,99,128,4,112,237,225,236,108,128,247,112,81,131,0,81,23,42,23,51,23,63,227,233,242,227,236,101,128,36,198,237,239,238,239,243,240,225,227,101,128,255,49,243,237,225,236,108,128,247,113,82,138,0,82,23,95,23,119,23,166,23,217,23,230,23,240,23,245,24,19,24,31,24,43,97,2,23,101,23,112,225,242,237,229,238,233,225,110,128,5,76,227,245,244,101,128,1,84,99,4,23,129,23,136,23,145,23,153,225,242,239,110,128,1,88,229,228,233,236,236,97,128,1,86,233,242,227,236,101,128,36,199,239,237,237,225,225,227,227,229,238,116,128,1,86,100,2,23,172,23,182,226,236,231,242,225,246,101,128,2,16,239,116,2,23,189,23,198,225,227,227,229,238,116,128,30,88,226,229,236,239,119,129,30,90,23,208,237,225,227,242,239,110,128,30,92,229,232,225,242,237,229,238,233,225,110,128,5,80,230,242,225,235,244,245,114,128,33,28,232,111,128,3,161,233,110,2,23,252,24,5,231,243,237,225,236,108,128,246,252,246,229,242,244,229,228,226,242,229,246,101,128,2,18,236,233,238,229,226,229,236,239,119,128,30,94,237,239,238,239,243,240,225,227,101,128,255,50,243,237,225,236,108,129,247,114,24,53,233,238,246,229,242,244,229,100,129,2,129,24,66,243,245,240,229,242,233,239,114,128,2,182,83,139,0,83,24,103,26,17,26,55,26,182,26,221,26,250,27,84,27,105,27,117,27,135,27,143,70,6,24,117,24,209,24,241,25,77,25,119,25,221,48,9,24,137,24,145,24,153,24,161,24,169,24,177,24,185,24,193,24,201,177,176,176,176,48,128,37,12,178,176,176,176,48,128,37,20,179,176,176,176,48,128,37,16,180,176,176,176,48,128,37,24,181,176,176,176,48,128,37,60,182,176,176,176,48,128,37,44,183,176,176,176,48,128,37,52,184,176,176,176,48,128,37,28,185,176,176,176,48,128,37,36,49,3,24,217,24,225,24,233,176,176,176,176,48,128,37,0,177,176,176,176,48,128,37,2,185,176,176,176,48,128,37,97,50,9,25,5,25,13,25,21,25,29,25,37,25,45,25,53,25,61,25,69,176,176,176,176,48,128,37,98,177,176,176,176,48,128,37,86,178,176,176,176,48,128,37,85,179,176,176,176,48,128,37,99,180,176,176,176,48,128,37,81,181,176,176,176,48,128,37,87,182,176,176,176,48,128,37,93,183,176,176,176,48,128,37,92,184,176,176,176,48,128,37,91,51,4,25,87,25,95,25,103,25,111,182,176,176,176,48,128,37,94,183,176,176,176,48,128,37,95,184,176,176,176,48,128,37,90,185,176,176,176,48,128,37,84,52,10,25,141,25,149,25,157,25,165,25,173,25,181,25,189,25,197,25,205,25,213,176,176,176,176,48,128,37,105,177,176,176,176,48,128,37,102,178,176,176,176,48,128,37,96,179,176,176,176,48,128,37,80,180,176,176,176,48,128,37,108,181,176,176,176,48,128,37,103,182,176,176,176,48,128,37,104,183,176,176,176,48,128,37,100,184,176,176,176,48,128,37,101,185,176,176,176,48,128,37,89,53,5,25,233,25,241,25,249,26,1,26,9,176,176,176,176,48,128,37,88,177,176,176,176,48,128,37,82,178,176,176,176,48,128,37,83,179,176,176,176,48,128,37,107,180,176,176,176,48,128,37,106,97,2,26,23,26,44,227,245,244,101,129,1,90,26,32,228,239,244,225,227,227,229,238,116,128,30,100,237,240,233,231,242,229,229,107,128,3,224,99,5,26,67,26,98,26,107,26,147,26,169,225,242,239,110,130,1,96,26,78,26,90,228,239,244,225,227,227,229,238,116,128,30,102,243,237,225,236,108,128,246,253,229,228,233,236,236,97,128,1,94,232,247,97,130,1,143,26,117,26,128,227,249,242,233,236,236,233,99,128,4,216,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,218,233,242,99,2,26,155,26,160,236,101,128,36,200,245,237,230,236,229,120,128,1,92,239,237,237,225,225,227,227,229,238,116,128,2,24,228,239,116,2,26,190,26,199,225,227,227,229,238,116,128,30,96,226,229,236,239,119,129,30,98,26,209,228,239,244,225,227,227,229,238,116,128,30,104,101,2,26,227,26,239,232,225,242,237,229,238,233,225,110,128,5,77,246,229,238,242,239,237,225,110,128,33,102,104,5,27,6,27,34,27,48,27,59,27,72,97,2,27,12,27,23,225,242,237,229,238,233,225,110,128,5,71,227,249,242,233,236,236,233,99,128,4,40,227,232,225,227,249,242,233,236,236,233,99,128,4,41,229,233,227,239,240,244,233,99,128,3,226,232,225,227,249,242,233,236,236,233,99,128,4,186,233,237,225,227,239,240,244,233,99,128,3,236,105,2,27,90,27,96,231,237,97,128,3,163,248,242,239,237,225,110,128,33,101,237,239,238,239,243,240,225,227,101,128,255,51,239,230,244,243,233,231,238,227,249,242,233,236,236,233,99,128,4,44,243,237,225,236,108,128,247,115,244,233,231,237,225,231,242,229,229,107,128,3,218,84,141,0,84,27,186,27,191,27,197,28,7,28,32,28,96,28,147,28,177,28,189,28,201,28,246,29,6,29,46,225,117,128,3,164,226,225,114,128,1,102,99,4,27,207,27,214,27,223,27,250,225,242,239,110,128,1,100,229,228,233,236,236,97,128,1,98,233,242,99,2,27,231,27,236,236,101,128,36,201,245,237,230,236,229,248,226,229,236,239,119,128,30,112,239,237,237,225,225,227,227,229,238,116,128,1,98,228,239,116,2,28,15,28,24,225,227,227,229,238,116,128,30,106,226,229,236,239,119,128,30,108,101,4,28,42,28,53,28,73,28,82,227,249,242,233,236,236,233,99,128,4,34,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,172,238,242,239,237,225,110,128,33,105,244,243,229,227,249,242,233,236,236,233,99,128,4,180,104,3,28,104,28,110,28,136,229,244,97,128,3,152,111,2,28,116,28,121,239,107,128,1,172,242,110,129,0,222,28,128,243,237,225,236,108,128,247,254,242,229,229,242,239,237,225,110,128,33,98,105,2,28,153,28,164,236,228,229,243,237,225,236,108,128,246,254,247,238,225,242,237,229,238,233,225,110,128,5,79,236,233,238,229,226,229,236,239,119,128,30,110,237,239,238,239,243,240,225,227,101,128,255,52,111,2,28,207,28,218,225,242,237,229,238,233,225,110,128,5,57,238,101,3,28,227,28,234,28,240,230,233,246,101,128,1,188,243,233,120,128,1,132,244,247,111,128,1,167,242,229,244,242,239,230,236,229,248,232,239,239,107,128,1,174,115,3,29,14,29,26,29,39,229,227,249,242,233,236,236,233,99,128,4,38,232,229,227,249,242,233,236,236,233,99,128,4,11,237,225,236,108,128,247,116,119,2,29,52,29,64,229,236,246,229,242,239,237,225,110,128,33,107,239,242,239,237,225,110,128,33,97,85,142,0,85,29,105,29,123,29,131,29,198,30,69,30,87,30,198,30,214,30,226,31,21,31,30,31,142,31,149,31,219,225,227,245,244,101,129,0,218,29,115,243,237,225,236,108,128,247,250,226,242,229,246,101,128,1,108,99,3,29,139,29,146,29,188,225,242,239,110,128,1,211,233,242,99,2,29,154,29,159,236,101,128,36,202,245,237,230,236,229,120,130,0,219,29,172,29,180,226,229,236,239,119,128,30,118,243,237,225,236,108,128,247,251,249,242,233,236,236,233,99,128,4,35,100,3,29,206,29,229,30,59,226,108,2,29,213,29,221,225,227,245,244,101,128,1,112,231,242,225,246,101,128,2,20,233,229,242,229,243,233,115,134,0,220,29,251,30,3,30,11,30,34,30,42,30,51,225,227,245,244,101,128,1,215,226,229,236,239,119,128,30,114,99,2,30,17,30,24,225,242,239,110,128,1,217,249,242,233,236,236,233,99,128,4,240,231,242,225,246,101,128,1,219,237,225,227,242,239,110,128,1,213,243,237,225,236,108,128,247,252,239,244,226,229,236,239,119,128,30,228,231,242,225,246,101,129,0,217,30,79,243,237,225,236,108,128,247,249,104,2,30,93,30,171,111,2,30,99,30,109,239,235,225,226,239,246,101,128,30,230,242,110,133,1,175,30,124,30,132,30,143,30,151,30,163,225,227,245,244,101,128,30,232,228,239,244,226,229,236,239,119,128,30,240,231,242,225,246,101,128,30,234,232,239,239,235,225,226,239,246,101,128,30,236,244,233,236,228,101,128,30,238,245,238,231,225,242,245,237,236,225,245,116,129,1,112,30,187,227,249,242,233,236,236,233,99,128,4,242,233,238,246,229,242,244,229,228,226,242,229,246,101,128,2,22,235,227,249,242,233,236,236,233,99,128,4,120,109,2,30,232,31,10,225,227,242,239,110,130,1,106,30,244,30,255,227,249,242,233,236,236,233,99,128,4,238,228,233,229,242,229,243,233,115,128,30,122,239,238,239,243,240,225,227,101,128,255,53,239,231,239,238,229,107,128,1,114,240,243,233,236,239,110,133,3,165,31,49,31,53,31,90,31,121,31,134,49,128,3,210,97,2,31,59,31,81,227,245,244,229,232,239,239,235,243,249,237,226,239,236,231,242,229,229,107,128,3,211,230,242,233,227,225,110,128,1,177,228,233,229,242,229,243,233,115,129,3,171,31,103,232,239,239,235,243,249,237,226,239,236,231,242,229,229,107,128,3,212],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10240);allocate([232,239,239,235,243,249,237,226,239,108,128,3,210,244,239,238,239,115,128,3,142,242,233,238,103,128,1,110,115,3,31,157,31,172,31,179,232,239,242,244,227,249,242,233,236,236,233,99,128,4,14,237,225,236,108,128,247,117,244,242,225,233,231,232,116,2,31,191,31,202,227,249,242,233,236,236,233,99,128,4,174,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,176,244,233,236,228,101,130,1,104,31,231,31,239,225,227,245,244,101,128,30,120,226,229,236,239,119,128,30,116,86,136,0,86,32,11,32,20,32,31,32,60,32,67,32,79,32,91,32,99,227,233,242,227,236,101,128,36,203,228,239,244,226,229,236,239,119,128,30,126,101,2,32,37,32,48,227,249,242,233,236,236,233,99,128,4,18,247,225,242,237,229,238,233,225,110,128,5,78,232,239,239,107,128,1,178,237,239,238,239,243,240,225,227,101,128,255,54,239,225,242,237,229,238,233,225,110,128,5,72,243,237,225,236,108,128,247,118,244,233,236,228,101,128,30,124,87,134,0,87,32,123,32,131,32,154,32,194,32,202,32,214,225,227,245,244,101,128,30,130,227,233,242,99,2,32,140,32,145,236,101,128,36,204,245,237,230,236,229,120,128,1,116,100,2,32,160,32,170,233,229,242,229,243,233,115,128,30,132,239,116,2,32,177,32,186,225,227,227,229,238,116,128,30,134,226,229,236,239,119,128,30,136,231,242,225,246,101,128,30,128,237,239,238,239,243,240,225,227,101,128,255,55,243,237,225,236,108,128,247,119,88,134,0,88,32,238,32,247,33,18,33,31,33,35,33,47,227,233,242,227,236,101,128,36,205,100,2,32,253,33,7,233,229,242,229,243,233,115,128,30,140,239,244,225,227,227,229,238,116,128,30,138,229,232,225,242,237,229,238,233,225,110,128,5,61,105,128,3,158,237,239,238,239,243,240,225,227,101,128,255,56,243,237,225,236,108,128,247,120,89,139,0,89,33,81,33,116,33,139,33,189,33,228,33,236,33,253,34,40,34,52,34,60,34,68,97,2,33,87,33,104,227,245,244,101,129,0,221,33,96,243,237,225,236,108,128,247,253,244,227,249,242,233,236,236,233,99,128,4,98,227,233,242,99,2,33,125,33,130,236,101,128,36,206,245,237,230,236,229,120,128,1,118,100,2,33,145,33,165,233,229,242,229,243,233,115,129,1,120,33,157,243,237,225,236,108,128,247,255,239,116,2,33,172,33,181,225,227,227,229,238,116,128,30,142,226,229,236,239,119,128,30,244,229,114,2,33,196,33,208,233,227,249,242,233,236,236,233,99,128,4,43,245,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,248,231,242,225,246,101,128,30,242,232,239,239,107,129,1,179,33,245,225,226,239,246,101,128,30,246,105,3,34,5,34,16,34,27,225,242,237,229,238,233,225,110,128,5,69,227,249,242,233,236,236,233,99,128,4,7,247,238,225,242,237,229,238,233,225,110,128,5,82,237,239,238,239,243,240,225,227,101,128,255,57,243,237,225,236,108,128,247,121,244,233,236,228,101,128,30,248,245,115,2,34,75,34,113,226,233,103,2,34,83,34,94,227,249,242,233,236,236,233,99,128,4,106,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,108,236,233,244,244,236,101,2,34,124,34,135,227,249,242,233,236,236,233,99,128,4,102,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,104,90,136,0,90,34,174,34,198,34,243,35,14,35,81,35,173,35,185,35,197,97,2,34,180,34,191,225,242,237,229,238,233,225,110,128,5,54,227,245,244,101,128,1,121,99,2,34,204,34,221,225,242,239,110,129,1,125,34,213,243,237,225,236,108,128,246,255,233,242,99,2,34,229,34,234,236,101,128,36,207,245,237,230,236,229,120,128,30,144,228,239,116,130,1,123,34,253,35,6,225,227,227,229,238,116,128,1,123,226,229,236,239,119,128,30,146,101,3,35,22,35,33,35,76,227,249,242,233,236,236,233,99,128,4,23,100,2,35,39,35,58,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,152,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,222,244,97,128,3,150,232,101,4,35,92,35,103,35,119,35,130,225,242,237,229,238,233,225,110,128,5,58,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,193,227,249,242,233,236,236,233,99,128,4,22,100,2,35,136,35,155,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,150,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,220,236,233,238,229,226,229,236,239,119,128,30,148,237,239,238,239,243,240,225,227,101,128,255,58,115,2,35,203,35,210,237,225,236,108,128,247,122,244,242,239,235,101,128,1,181,97,149,0,97,36,8,36,144,37,35,37,211,38,55,38,91,45,10,45,47,45,74,46,43,46,81,47,170,47,242,48,197,48,206,49,79,51,87,52,77,52,124,53,19,53,33,97,7,36,24,36,34,36,41,36,48,36,73,36,89,36,100,226,229,238,231,225,236,105,128,9,134,227,245,244,101,128,0,225,228,229,246,97,128,9,6,231,117,2,36,55,36,64,234,225,242,225,244,105,128,10,134,242,237,245,235,232,105,128,10,6,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,62,242,245,243,241,245,225,242,101,128,51,3,246,239,247,229,236,243,233,231,110,3,36,116,36,126,36,133,226,229,238,231,225,236,105,128,9,190,228,229,246,97,128,9,62,231,245,234,225,242,225,244,105,128,10,190,98,4,36,154,36,195,36,204,36,214,226,242,229,246,233,225,244,233,239,110,2,36,169,36,184,237,225,242,235,225,242,237,229,238,233,225,110,128,5,95,243,233,231,238,228,229,246,97,128,9,112,229,238,231,225,236,105,128,9,133,239,240,239,237,239,230,111,128,49,26,242,229,246,101,134,1,3,36,233,36,241,36,252,37,7,37,15,37,27,225,227,245,244,101,128,30,175,227,249,242,233,236,236,233,99,128,4,209,228,239,244,226,229,236,239,119,128,30,183,231,242,225,246,101,128,30,177,232,239,239,235,225,226,239,246,101,128,30,179,244,233,236,228,101,128,30,181,99,4,37,45,37,52,37,131,37,201,225,242,239,110,128,1,206,233,242,99,2,37,60,37,65,236,101,128,36,208,245,237,230,236,229,120,133,0,226,37,84,37,92,37,103,37,111,37,123,225,227,245,244,101,128,30,165,228,239,244,226,229,236,239,119,128,30,173,231,242,225,246,101,128,30,167,232,239,239,235,225,226,239,246,101,128,30,169,244,233,236,228,101,128,30,171,245,244,101,133,0,180,37,147,37,158,37,175,37,182,37,191,226,229,236,239,247,227,237,98,128,3,23,99,2,37,164,37,169,237,98,128,3,1,239,237,98,128,3,1,228,229,246,97,128,9,84,236,239,247,237,239,100,128,2,207,244,239,238,229,227,237,98,128,3,65,249,242,233,236,236,233,99,128,4,48,100,5,37,223,37,233,37,247,37,253,38,31,226,236,231,242,225,246,101,128,2,1,228,225,235,231,245,242,237,245,235,232,105,128,10,113,229,246,97,128,9,5,233,229,242,229,243,233,115,130,0,228,38,11,38,22,227,249,242,233,236,236,233,99,128,4,211,237,225,227,242,239,110,128,1,223,239,116,2,38,38,38,46,226,229,236,239,119,128,30,161,237,225,227,242,239,110,128,1,225,101,131,0,230,38,65,38,73,38,82,225,227,245,244,101,128,1,253,235,239,242,229,225,110,128,49,80,237,225,227,242,239,110,128,1,227,230,233,105,6,38,107,38,127,41,64,41,70,41,85,44,185,48,2,38,113,38,120,176,178,176,56,128,32,21,184,185,180,49,128,32,164,177,48,3,38,136,40,160,41,39,48,9,38,156,38,176,38,238,39,44,39,106,39,168,39,230,40,36,40,98,49,3,38,164,38,168,38,172,55,128,4,16,56,128,4,17,57,128,4,18,50,10,38,198,38,202,38,206,38,210,38,214,38,218,38,222,38,226,38,230,38,234,48,128,4,19,49,128,4,20,50,128,4,21,51,128,4,1,52,128,4,22,53,128,4,23,54,128,4,24,55,128,4,25,56,128,4,26,57,128,4,27,51,10,39,4,39,8,39,12,39,16,39,20,39,24,39,28,39,32,39,36,39,40,48,128,4,28,49,128,4,29,50,128,4,30,51,128,4,31,52,128,4,32,53,128,4,33,54,128,4,34,55,128,4,35,56,128,4,36,57,128,4,37,52,10,39,66,39,70,39,74,39,78,39,82,39,86,39,90,39,94,39,98,39,102,48,128,4,38,49,128,4,39,50,128,4,40,51,128,4,41,52,128,4,42,53,128,4,43,54,128,4,44,55,128,4,45,56,128,4,46,57,128,4,47,53,10,39,128,39,132,39,136,39,140,39,144,39,148,39,152,39,156,39,160,39,164,48,128,4,144,49,128,4,2,50,128,4,3,51,128,4,4,52,128,4,5,53,128,4,6,54,128,4,7,55,128,4,8,56,128,4,9,57,128,4,10,54,10,39,190,39,194,39,198,39,202,39,206,39,210,39,214,39,218,39,222,39,226,48,128,4,11,49,128,4,12,50,128,4,14,51,128,246,196,52,128,246,197,53,128,4,48,54,128,4,49,55,128,4,50,56,128,4,51,57,128,4,52,55,10,39,252,40,0,40,4,40,8,40,12,40,16,40,20,40,24,40,28,40,32,48,128,4,53,49,128,4,81,50,128,4,54,51,128,4,55,52,128,4,56,53,128,4,57,54,128,4,58,55,128,4,59,56,128,4,60,57,128,4,61,56,10,40,58,40,62,40,66,40,70,40,74,40,78,40,82,40,86,40,90,40,94,48,128,4,62,49,128,4,63,50,128,4,64,51,128,4,65,52,128,4,66,53,128,4,67,54,128,4,68,55,128,4,69,56,128,4,70,57,128,4,71,57,10,40,120,40,124,40,128,40,132,40,136,40,140,40,144,40,148,40,152,40,156,48,128,4,72,49,128,4,73,50,128,4,74,51,128,4,75,52,128,4,76,53,128,4,77,54,128,4,78,55,128,4,79,56,128,4,145,57,128,4,82,49,4,40,170,40,232,40,237,41,7,48,10,40,192,40,196,40,200,40,204,40,208,40,212,40,216,40,220,40,224,40,228,48,128,4,83,49,128,4,84,50,128,4,85,51,128,4,86,52,128,4,87,53,128,4,88,54,128,4,89,55,128,4,90,56,128,4,91,57,128,4,92,177,48,128,4,94,52,4,40,247,40,251,40,255,41,3,53,128,4,15,54,128,4,98,55,128,4,114,56,128,4,116,57,5,41,19,41,23,41,27,41,31,41,35,50,128,246,198,51,128,4,95,52,128,4,99,53,128,4,115,54,128,4,117,56,2,41,45,41,59,51,2,41,51,41,55,49,128,246,199,50,128,246,200,180,54,128,4,217,178,185,57,128,32,14,179,48,2,41,77,41,81,48,128,32,15,49,128,32,13,181,55,7,41,102,41,172,42,237,43,58,44,15,44,108,44,179,51,2,41,108,41,122,56,2,41,114,41,118,49,128,6,106,56,128,6,12,57,8,41,140,41,144,41,148,41,152,41,156,41,160,41,164,41,168,50,128,6,96,51,128,6,97,52,128,6,98,53,128,6,99,54,128,6,100,55,128,6,101,56,128,6,102,57,128,6,103,52,7,41,188,41,220,42,26,42,88,42,120,42,176,42,232,48,5,41,200,41,204,41,208,41,212,41,216,48,128,6,104,49,128,6,105,51,128,6,27,55,128,6,31,57,128,6,33,49,10,41,242,41,246,41,250,41,254,42,2,42,6,42,10,42,14,42,18,42,22,48,128,6,34,49,128,6,35,50,128,6,36,51,128,6,37,52,128,6,38,53,128,6,39,54,128,6,40,55,128,6,41,56,128,6,42,57,128,6,43,50,10,42,48,42,52,42,56,42,60,42,64,42,68,42,72,42,76,42,80,42,84,48,128,6,44,49,128,6,45,50,128,6,46,51,128,6,47,52,128,6,48,53,128,6,49,54,128,6,50,55,128,6,51,56,128,6,52,57,128,6,53,51,5,42,100,42,104,42,108,42,112,42,116,48,128,6,54,49,128,6,55,50,128,6,56,51,128,6,57,52,128,6,58,52,9,42,140,42,144,42,148,42,152,42,156,42,160,42,164,42,168,42,172,48,128,6,64,49,128,6,65,50,128,6,66,51,128,6,67,52,128,6,68,53,128,6,69,54,128,6,70,56,128,6,72,57,128,6,73,53,9,42,196,42,200,42,204,42,208,42,212,42,216,42,220,42,224,42,228,48,128,6,74,49,128,6,75,50,128,6,76,51,128,6,77,52,128,6,78,53,128,6,79,54,128,6,80,55,128,6,81,56,128,6,82,183,48,128,6,71,53,3,42,245,43,21,43,53,48,5,43,1,43,5,43,9,43,13,43,17,53,128,6,164,54,128,6,126,55,128,6,134,56,128,6,152,57,128,6,175,49,5,43,33,43,37,43,41,43,45,43,49,49,128,6,121,50,128,6,136,51,128,6,145,52,128,6,186,57,128,6,210,179,52,128,6,213,54,7,43,74,43,79,43,84,43,89,43,127,43,189,43,251,179,54,128,32,170,180,53,128,5,190,181,56,128,5,195,54,6,43,103,43,107,43,111,43,115,43,119,43,123,52,128,5,208,53,128,5,209,54,128,5,210,55,128,5,211,56,128,5,212,57,128,5,213,55,10,43,149,43,153,43,157,43,161,43,165,43,169,43,173,43,177,43,181,43,185,48,128,5,214,49,128,5,215,50,128,5,216,51,128,5,217,52,128,5,218,53,128,5,219,54,128,5,220,55,128,5,221,56,128,5,222,57,128,5,223,56,10,43,211,43,215,43,219,43,223,43,227,43,231,43,235,43,239,43,243,43,247,48,128,5,224,49,128,5,225,50,128,5,226,51,128,5,227,52,128,5,228,53,128,5,229,54,128,5,230,55,128,5,231,56,128,5,232,57,128,5,233,57,3,44,3,44,7,44,11,48,128,5,234,52,128,251,42,53,128,251,43,55,4,44,25,44,39,44,59,44,64,48,2,44,31,44,35,48,128,251,75,53,128,251,31,49,3,44,47,44,51,44,55,54,128,5,240,55,128,5,241,56,128,5,242,178,51,128,251,53,57,7,44,80,44,84,44,88,44,92,44,96,44,100,44,104,51,128,5,180,52,128,5,181,53,128,5,182,54,128,5,187,55,128,5,184,56,128,5,183,57,128,5,176,56,3,44,116,44,160,44,165,48,7,44,132,44,136,44,140,44,144,44,148,44,152,44,156,48,128,5,178,49,128,5,177,50,128,5,179,51,128,5,194,52,128,5,193,54,128,5,185,55,128,5,188,179,57,128,5,189,52,2,44,171,44,175,49,128,5,191,50,128,5,192,185,178,57,128,2,188,54,3,44,193,44,252,45,3,49,4,44,203,44,219,44,225,44,246,50,2,44,209,44,214,180,56,128,33,5,184,57,128,33,19,179,181,50,128,33,22,181,55,3,44,234,44,238,44,242,51,128,32,44,52,128,32,45,53,128,32,46,182,182,52,128,32,12,179,177,182,55,128,6,109,180,185,179,55,128,2,189,103,2,45,16,45,23,242,225,246,101,128,0,224,117,2,45,29,45,38,234,225,242,225,244,105,128,10,133,242,237,245,235,232,105,128,10,5,104,2,45,53,45,63,233,242,225,231,225,238,97,128,48,66,239,239,235,225,226,239,246,101,128,30,163,105,7,45,90,45,115,45,122,45,134,45,159,45,175,45,255,98,2,45,96,45,105,229,238,231,225,236,105,128,9,144,239,240,239,237,239,230,111,128,49,30,228,229,246,97,128,9,16,229,227,249,242,233,236,236,233,99,128,4,213,231,117,2,45,141,45,150,234,225,242,225,244,105,128,10,144,242,237,245,235,232,105,128,10,16,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,72,110,5,45,187,45,196,45,210,45,226,45,241,225,242,225,226,233,99,128,6,57,230,233,238,225,236,225,242,225,226,233,99,128,254,202,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,203,237,229,228,233,225,236,225,242,225,226,233,99,128,254,204,246,229,242,244,229,228,226,242,229,246,101,128,2,3,246,239,247,229,236,243,233,231,110,3,46,15,46,25,46,32,226,229,238,231,225,236,105,128,9,200,228,229,246,97,128,9,72,231,245,234,225,242,225,244,105,128,10,200,107,2,46,49,46,73,225,244,225,235,225,238,97,129,48,162,46,61,232,225,236,230,247,233,228,244,104,128,255,113,239,242,229,225,110,128,49,79,108,3,46,89,47,145,47,154,101,2,46,95,47,140,102,136,5,208,46,115,46,124,46,139,46,153,46,242,47,0,47,111,47,125,225,242,225,226,233,99,128,6,39,228,225,231,229,243,232,232,229,226,242,229,119,128,251,48,230,233,238,225,236,225,242,225,226,233,99,128,254,142,104,2,46,159,46,234,225,237,250,97,2,46,168,46,201,225,226,239,246,101,2,46,178,46,187,225,242,225,226,233,99,128,6,35,230,233,238,225,236,225,242,225,226,233,99,128,254,132,226,229,236,239,119,2,46,211,46,220,225,242,225,226,233,99,128,6,37,230,233,238,225,236,225,242,225,226,233,99,128,254,136,229,226,242,229,119,128,5,208,236,225,237,229,228,232,229,226,242,229,119,128,251,79,237,97,2,47,7,47,43,228,228,225,225,226,239,246,101,2,47,20,47,29,225,242,225,226,233,99,128,6,34,230,233,238,225,236,225,242,225,226,233,99,128,254,130,235,243,245,242,97,4,47,57,47,66,47,80,47,96,225,242,225,226,233,99,128,6,73,230,233,238,225,236,225,242,225,226,233,99,128,254,240,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,243,237,229,228,233,225,236,225,242,225,226,233,99,128,254,244,240,225,244,225,232,232,229,226,242,229,119,128,251,46,241,225,237,225,244,243,232,229,226,242,229,119,128,251,47,240,104,128,33,53,236,229,241,245,225,108,128,34,76,240,232,97,129,3,177,47,162,244,239,238,239,115,128,3,172,109,4,47,180,47,188,47,199,47,233,225,227,242,239,110,128,1,1,239,238,239,243,240,225,227,101,128,255,65,240,229,242,243,225,238,100,130,0,38,47,213,47,225,237,239,238,239,243,240,225,227,101,128,255,6,243,237,225,236,108,128,247,38,243,241,245,225,242,101,128,51,194,110,4,47,252,48,7,48,129,48,139,226,239,240,239,237,239,230,111,128,49,34,103,4,48,17,48,28,48,42,48,121,226,239,240,239,237,239,230,111,128,49,36,235,232,225,238,235,232,245,244,232,225,105,128,14,90,236,101,131,34,32,48,53,48,106,48,113,226,242,225,227,235,229,116,2,48,65,48,85,236,229,230,116,129,48,8,48,74,246,229,242,244,233,227,225,108,128,254,63,242,233,231,232,116,129,48,9,48,95,246,229,242,244,233,227,225,108,128,254,64,236,229,230,116,128,35,41,242,233,231,232,116,128,35,42,243,244,242,239,109,128,33,43,239,244,229,236,229,233,97,128,3,135,117,2,48,145,48,157,228,225,244,244,225,228,229,246,97,128,9,82,243,246,225,242,97,3,48,169,48,179,48,186,226,229,238,231,225,236,105,128,9,130,228,229,246,97,128,9,2,231,245,234,225,242,225,244,105,128,10,130,239,231,239,238,229,107,128,1,5,112,3,48,214,48,238,49,12,97,2,48,220,48,232,225,244,239,243,241,245,225,242,101,128,51,0,242,229,110,128,36,156,239,243,244,242,239,240,232,101,2,48,251,49,6,225,242,237,229,238,233,225,110,128,5,90,237,239,100,128,2,188,112,2,49,18,49,23,236,101,128,248,255,242,111,2,49,30,49,38,225,227,232,229,115,128,34,80,120,2,49,44,49,64,229,241,245,225,108,129,34,72,49,54,239,242,233,237,225,231,101,128,34,82,233,237,225,244,229,236,249,229,241,245,225,108,128,34,69,114,4,49,89,49,116,49,120,49,165,225,229,97,2,49,97,49,107,229,235,239,242,229,225,110,128,49,142,235,239,242,229,225,110,128,49,141,99,128,35,18,105,2,49,126,49,140,231,232,244,232,225,236,230,242,233,238,103,128,30,154,238,103,130,0,229,49,149,49,157,225,227,245,244,101,128,1,251,226,229,236,239,119,128,30,1,242,239,119,8,49,185,49,192,50,65,50,131,50,181,50,236,51,3,51,78,226,239,244,104,128,33,148,100,3,49,200,49,239,50,30,225,243,104,4,49,212,49,219,49,226,49,234,228,239,247,110,128,33,227,236,229,230,116,128,33,224,242,233,231,232,116,128,33,226,245,112,128,33,225,226,108,5,49,252,50,3,50,10,50,17,50,25,226,239,244,104,128,33,212,228,239,247,110,128,33,211,236,229,230,116,128,33,208,242,233,231,232,116,128,33,210,245,112,128,33,209,239,247,110,131,33,147,50,42,50,49,50,57,236,229,230,116,128,33,153,242,233,231,232,116,128,33,152,247,232,233,244,101,128,33,233,104,2,50,71,50,122,229,225,100,4,50,83,50,93,50,103,50,114,228,239,247,238,237,239,100,128,2,197,236,229,230,244,237,239,100,128,2,194,242,233,231,232,244,237,239,100,128,2,195,245,240,237,239,100,128,2,196,239,242,233,250,229,120,128,248,231,236,229,230,116,131,33,144,50,144,50,161,50,173,228,226,108,129,33,208,50,152,243,244,242,239,235,101,128,33,205,239,246,229,242,242,233,231,232,116,128,33,198,247,232,233,244,101,128,33,230,242,233,231,232,116,132,33,146,50,197,50,209,50,217,50,228,228,226,236,243,244,242,239,235,101,128,33,207,232,229,225,246,121,128,39,158,239,246,229,242,236,229,230,116,128,33,196,247,232,233,244,101,128,33,232,244,225,98,2,50,244,50,251,236,229,230,116,128,33,228,242,233,231,232,116,128,33,229,245,112,132,33,145,51,16,51,44,51,62,51,70,100,2,51,22,51,34,110,129,33,149,51,28,226,243,101,128,33,168,239,247,238,226,225,243,101,128,33,168,236,229,230,116,129,33,150,51,53,239,230,228,239,247,110,128,33,197,242,233,231,232,116,128,33,151,247,232,233,244,101,128,33,231,246,229,242,244,229,120,128,248,230,115,5,51,99,51,175,51,220,52,47,52,57,99,2,51,105,51,157,233,105,2,51,112,51,135,227,233,242,227,245,109,129,0,94,51,123,237,239,238,239,243,240,225,227,101,128,255,62,244,233,236,228,101,129,0,126,51,145,237,239,238,239,243,240,225,227,101,128,255,94,242,233,240,116,129,2,81,51,166,244,245,242,238,229,100,128,2,82,237,225,236,108,2,51,184,51,195,232,233,242,225,231,225,238,97,128,48,65,235,225,244,225,235,225,238,97,129,48,161,51,208,232,225,236,230,247,233,228,244,104,128,255,103,244,229,242,233,115,2,51,230,52,43,107,131,0,42,51,240,52,12,52,35,97,2,51,246,52,4,236,244,239,238,229,225,242,225,226,233,99,128,6,109,242,225,226,233,99,128,6,109,109,2,52,18,52,24,225,244,104,128,34,23,239,238,239,243,240,225,227,101,128,255,10,243,237,225,236,108,128,254,97,109,128,32,66,245,240,229,242,233,239,114,128,246,233,249,237,240,244,239,244,233,227,225,236,236,249,229,241,245,225,108,128,34,67,116,132,0,64,52,89,52,96,52,108,52,116,233,236,228,101,128,0,227,237,239,238,239,243,240,225,227,101,128,255,32,243,237,225,236,108,128,254,107,245,242,238,229,100,128,2,80,117,6,52,138,52,163,52,170,52,195,52,215,52,231,98,2,52,144,52,153,229,238,231,225,236,105,128,9,148,239,240,239,237,239,230,111,128,49,32,228,229,246,97,128,9,20,231,117,2,52,177,52,186,234,225,242,225,244,105,128,10,148,242,237,245,235,232,105,128,10,20,236,229,238,231,244,232,237,225,242,235,226,229,238,231,225,236,105,128,9,215,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,76,246,239,247,229,236,243,233,231,110,3,52,247,53,1,53,8,226,229,238,231,225,236,105,128,9,204,228,229,246,97,128,9,76,231,245,234,225,242,225,244,105,128,10,204,246,225,231,242,225,232,225,228,229,246,97,128,9,61,121,2,53,39,53,51,226,225,242,237,229,238,233,225,110,128,5,97,233,110,130,5,226,53,60,53,75,225,236,244,239,238,229,232,229,226,242,229,119,128,251,32,232,229,226,242,229,119,128,5,226,98,144,0,98,53,120,53,255,54,10,54,19,54,44,55,85,55,147,55,220,57,146,57,158,57,201,57,209,57,219,59,89,59,113,59,122,97,7,53,136,53,146,53,170,53,177,53,202,53,226,53,237,226,229,238,231,225,236,105,128,9,172,227,235,243,236,225,243,104,129,0,92,53,158,237,239,238,239,243,240,225,227,101,128,255,60,228,229,246,97,128,9,44,231,117,2,53,184,53,193,234,225,242,225,244,105,128,10,172,242,237,245,235,232,105,128,10,44,104,2,53,208,53,218,233,242,225,231,225,238,97,128,48,112,244,244,232,225,105,128,14,63,235,225,244,225,235,225,238,97,128,48,208,114,129,0,124,53,243,237,239,238,239,243,240,225,227,101,128,255,92,226,239,240,239,237,239,230,111,128,49,5,227,233,242,227,236,101,128,36,209,228,239,116,2,54,27,54,36,225,227,227,229,238,116,128,30,3,226,229,236,239,119,128,30,5,101,6,54,58,54,79,54,102,54,244,54,255,55,11,225,237,229,228,243,233,248,244,229,229,238,244,232,238,239,244,229,115,128,38,108,99,2,54,85,54,92,225,245,243,101,128,34,53,249,242,233,236,236,233,99,128,4,49,104,5,54,114,54,123,54,137,54,167,54,226,225,242,225,226,233,99,128,6,40,230,233,238,225,236,225,242,225,226,233,99,128,254,144,105,2,54,143,54,158,238,233,244,233,225,236,225,242,225,226,233,99,128,254,145,242,225,231,225,238,97,128,48,121,237,101,2,54,174,54,187,228,233,225,236,225,242,225,226,233,99,128,254,146,229,237,105,2,54,195,54,210,238,233,244,233,225,236,225,242,225,226,233,99,128,252,159,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,8,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,109,235,225,244,225,235,225,238,97,128,48,217,238,225,242,237,229,238,233,225,110,128,5,98,116,132,5,209,55,23,55,43,55,63,55,72,97,129,3,178,55,29,243,249,237,226,239,236,231,242,229,229,107,128,3,208,228,225,231,229,243,104,129,251,49,55,54,232,229,226,242,229,119,128,251,49,232,229,226,242,229,119,128,5,209,242,225,230,229,232,229,226,242,229,119,128,251,76,104,2,55,91,55,141,97,3,55,99,55,109,55,116,226,229,238,231,225,236,105,128,9,173,228,229,246,97,128,9,45,231,117,2,55,123,55,132,234,225,242,225,244,105,128,10,173,242,237,245,235,232,105,128,10,45,239,239,107,128,2,83,105,5,55,159,55,170,55,181,55,195,55,209,232,233,242,225,231,225,238,97,128,48,115,235,225,244,225,235,225,238,97,128,48,211,236,225,226,233,225,236,227,236,233,227,107,128,2,152,238,228,233,231,245,242,237,245,235,232,105,128,10,2,242,245,243,241,245,225,242,101,128,51,49,108,3,55,228,57,129,57,140,97,2,55,234,57,124,227,107,6,55,249,56,2,56,39,56,188,56,243,57,39,227,233,242,227,236,101,128,37,207,100,2,56,8,56,17,233,225,237,239,238,100,128,37,198,239,247,238,240,239,233,238,244,233,238,231,244,242,233,225,238,231,236,101,128,37,188,108,2,56,45,56,148,101,2,56,51,56,87,230,244,240,239,233,238,244,233,238,103,2,56,66,56,76,240,239,233,238,244,229,114,128,37,196,244,242,233,225,238,231,236,101,128,37,192,238,244,233,227,245,236,225,242,226,242,225,227,235,229,116,2,56,107,56,127,236,229,230,116,129,48,16,56,116,246,229,242,244,233,227,225,108,128,254,59,242,233,231,232,116,129,48,17,56,137,246,229,242,244,233,227,225,108,128,254,60,239,247,229,114,2,56,157,56,172,236,229,230,244,244,242,233,225,238,231,236,101,128,37,227,242,233,231,232,244,244,242,233,225,238,231,236,101,128,37,226,114,2,56,194,56,205,229,227,244,225,238,231,236,101,128,37,172,233,231,232,244,240,239,233,238,244,233,238,103,2,56,222,56,232,240,239,233,238,244,229,114,128,37,186,244,242,233,225,238,231,236,101,128,37,182,115,3,56,251,57,25,57,33,109,2,57,1,57,13,225,236,236,243,241,245,225,242,101,128,37,170,233,236,233,238,231,230,225,227,101,128,38,59,241,245,225,242,101,128,37,160,244,225,114,128,38,5,245,240,112,2,57,47,57,85,229,114,2,57,54,57,69,236,229,230,244,244,242,233,225,238,231,236,101,128,37,228,242,233,231,232,244,244,242,233,225,238,231,236,101,128,37,229,239,233,238,244,233,238,103,2,57,97,57,113,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,180,244,242,233,225,238,231,236,101,128,37,178,238,107,128,36,35,233,238,229,226,229,236,239,119,128,30,7,239,227,107,128,37,136,237,239,238,239,243,240,225,227,101,128,255,66,111,3,57,166,57,179,57,190,226,225,233,237,225,233,244,232,225,105,128,14,26,232,233,242,225,231,225,238,97,128,48,124,235,225,244,225,235,225,238,97,128,48,220,240,225,242,229,110,128,36,157,241,243,241,245,225,242,101,128,51,195,114,4,57,229,58,223,59,40,59,79,225,99,2,57,236,58,130,101,3,57,244,57,249,58,61,229,120,128,248,244,236,229,230,116,133,0,123,58,10,58,15,58,37,58,45,58,50,226,116,128,248,243,109,2,58,21,58,26,233,100,128,248,242,239,238,239,243,240,225,227,101,128,255,91,243,237,225,236,108,128,254,91,244,112,128,248,241,246,229,242,244,233,227,225,108,128,254,55,242,233,231,232,116,133,0,125,58,79,58,84,58,106,58,114,58,119,226,116,128,248,254,109,2,58,90,58,95,233,100,128,248,253,239,238,239,243,240,225,227,101,128,255,93,243,237,225,236,108,128,254,92,244,112,128,248,252,246,229,242,244,233,227,225,108,128,254,56,235,229,116,2,58,138,58,180,236,229,230,116,132,0,91,58,153,58,158,58,163,58,175,226,116,128,248,240,229,120,128,248,239,237,239,238,239,243,240,225,227,101,128,255,59,244,112,128,248,238,242,233,231,232,116,132,0,93,58,196,58,201,58,206,58,218,226,116,128,248,251,229,120,128,248,250,237,239,238,239,243,240,225,227,101,128,255,61,244,112,128,248,249,229,246,101,131,2,216,58,235,58,246,58,252,226,229,236,239,247,227,237,98,128,3,46,227,237,98,128,3,6,233,238,246,229,242,244,229,100,3,59,11,59,22,59,28,226,229,236,239,247,227,237,98,128,3,47,227,237,98,128,3,17,228,239,245,226,236,229,227,237,98,128,3,97,233,228,231,101,2,59,49,59,60,226,229,236,239,247,227,237,98,128,3,42,233,238,246,229,242,244,229,228,226,229,236,239,247,227,237,98,128,3,58,239,235,229,238,226,225,114,128,0,166,115,2,59,95,59,103,244,242,239,235,101,128,1,128,245,240,229,242,233,239,114,128,246,234,244,239,240,226,225,114,128,1,131,117,3,59,130,59,141,59,152,232,233,242,225,231,225,238,97,128,48,118,235,225,244,225,235,225,238,97,128,48,214,236,108,2,59,159,59,189,229,116,130,32,34,59,168,59,178,233,238,246,229,242,243,101,128,37,216,239,240,229,242,225,244,239,114,128,34,25,243,229,249,101,128,37,206,99,143,0,99,59,230,60,179,60,190,60,254,61,29,61,122,63,33,64,17,64,117,64,166,67,158,67,166,67,176,67,188,67,221,97,9,59,250,60,5,60,15,60,22,60,29,60,54,60,64,60,116,60,125,225,242,237,229,238,233,225,110,128,5,110,226,229,238,231,225,236,105,128,9,154,227,245,244,101,128,1,7,228,229,246,97,128,9,26,231,117,2,60,36,60,45,234,225,242,225,244,105,128,10,154,242,237,245,235,232,105,128,10,26,236,243,241,245,225,242,101,128,51,136,238,228,242,225,226,233,238,228,117,4,60,82,60,92,60,98,60,105,226,229,238,231,225,236,105,128,9,129,227,237,98,128,3,16,228,229,246,97,128,9,1,231,245,234,225,242,225,244,105,128,10,129,240,243,236,239,227,107,128,33,234,114,3,60,133,60,139,60,165,229,239,102,128,33,5,239,110,130,2,199,60,148,60,159,226,229,236,239,247,227,237,98,128,3,44,227,237,98,128,3,12,242,233,225,231,229,242,229,244,245,242,110,128,33,181,226,239,240,239,237,239,230,111,128,49,24,99,4,60,200,60,207,60,226,60,248,225,242,239,110,128,1,13,229,228,233,236,236,97,129,0,231,60,218,225,227,245,244,101,128,30,9,233,242,99,2,60,234,60,239,236,101,128,36,210,245,237,230,236,229,120,128,1,9,245,242,108,128,2,85,100,2,61,4,61,20,239,116,129,1,11,61,11,225,227,227,229,238,116,128,1,11,243,241,245,225,242,101,128,51,197,101,2,61,35,61,51,228,233,236,236,97,129,0,184,61,45,227,237,98,128,3,39,238,116,132,0,162,61,64,61,88,61,100,61,111,105,2,61,70,61,78,231,242,225,228,101,128,33,3,238,230,229,242,233,239,114,128,246,223,237,239,238,239,243,240,225,227,101,128,255,224,239,236,228,243,244,249,236,101,128,247,162,243,245,240,229,242,233,239,114,128,246,224,104,5,61,134,61,197,61,208,62,136,62,228,97,4,61,144,61,155,61,165,61,172,225,242,237,229,238,233,225,110,128,5,121,226,229,238,231,225,236,105,128,9,155,228,229,246,97,128,9,27,231,117,2,61,179,61,188,234,225,242,225,244,105,128,10,155,242,237,245,235,232,105,128,10,27,226,239,240,239,237,239,230,111,128,49,20,101,6,61,222,61,242,62,10,62,78,62,90,62,111,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,189,99,2,61,248,62,0,235,237,225,242,107,128,39,19,249,242,233,236,236,233,99,128,4,71,100,2,62,16,62,60,229,243,227,229,238,228,229,114,2,62,29,62,49,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,191,227,249,242,233,236,236,233,99,128,4,183,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,245,232,225,242,237,229,238,233,225,110,128,5,115,235,232,225,235,225,243,243,233,225,238,227,249,242,233,236,236,233,99,128,4,204,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,185,105,129,3,199,62,142,229,245,227,104,4,62,155,62,190,62,205,62,214,97,2,62,161,62,176,227,233,242,227,236,229,235,239,242,229,225,110,128,50,119,240,225,242,229,238,235,239,242,229,225,110,128,50,23,227,233,242,227,236,229,235,239,242,229,225,110,128,50,105,235,239,242,229,225,110,128,49,74,240,225,242,229,238,235,239,242,229,225,110,128,50,9,111,2,62,234,63,28,227,104,3,62,243,63,9,63,19,225,110,2,62,250,63,2,231,244,232,225,105,128,14,10,244,232,225,105,128,14,8,233,238,231,244,232,225,105,128,14,9,239,229,244,232,225,105,128,14,12,239,107,128,1,136,105,2,63,39,63,141,229,245,99,5,63,53,63,88,63,103,63,112,63,126,97,2,63,59,63,74,227,233,242,227,236,229,235,239,242,229,225,110,128,50,118,240,225,242,229,238,235,239,242,229,225,110,128,50,22,227,233,242,227,236,229,235,239,242,229,225,110,128,50,104,235,239,242,229,225,110,128,49,72,240,225,242,229,238,235,239,242,229,225,110,128,50,8,245,240,225,242,229,238,235,239,242,229,225,110,128,50,28,242,99,2,63,148,63,243,236,101,132,37,203,63,161,63,172,63,177,63,201,237,245,236,244,233,240,236,121,128,34,151,239,116,128,34,153,112,2,63,183,63,189,236,245,115,128,34,149,239,243,244,225,236,237,225,242,107,128,48,54,247,233,244,104,2,63,210,63,226,236,229,230,244,232,225,236,230,226,236,225,227,107,128,37,208,242,233,231,232,244,232,225,236,230,226,236,225,227,107,128,37,209,245,237,230,236,229,120,130,2,198,64,0,64,11,226,229,236,239,247,227,237,98,128,3,45,227,237,98,128,3,2,108,3,64,25,64,31,64,85,229,225,114,128,35,39,233,227,107,4,64,43,64,54,64,63,64,73,225,236,246,229,239,236,225,114,128,1,194,228,229,238,244,225,108,128,1,192,236,225,244,229,242,225,108,128,1,193,242,229,244,242,239,230,236,229,120,128,1,195,245,98,129,38,99,64,92,243,245,233,116,2,64,101,64,109,226,236,225,227,107,128,38,99,247,232,233,244,101,128,38,103,109,3,64,125,64,139,64,150,227,245,226,229,228,243,241,245,225,242,101,128,51,164,239,238,239,243,240,225,227,101,128,255,67,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,160,111,8,64,184,64,195,65,26,65,224,66,253,67,28,67,135,67,144,225,242,237,229,238,233,225,110,128,5,129,236,239,110,131,0,58,64,207,64,232,64,251,237,239,110,2,64,215,64,223,229,244,225,242,121,128,32,161,239,243,240,225,227,101,128,255,26,115,2,64,238,64,244,233,231,110,128,32,161,237,225,236,108,128,254,85,244,242,233,225,238,231,245,236,225,114,2,65,10,65,20,232,225,236,230,237,239,100,128,2,209,237,239,100,128,2,208,109,2,65,32,65,217,237,97,134,0,44,65,49,65,113,65,124,65,136,65,166,65,189,97,3,65,57,65,83,65,91,226,239,246,101,2,65,66,65,72,227,237,98,128,3,19,242,233,231,232,244,227,237,98,128,3,21,227,227,229,238,116,128,246,195,114,2,65,97,65,104,225,226,233,99,128,6,12,237,229,238,233,225,110,128,5,93,233,238,230,229,242,233,239,114,128,246,225,237,239,238,239,243,240,225,227,101,128,255,12,242,229,246,229,242,243,229,100,2,65,149,65,160,225,226,239,246,229,227,237,98,128,3,20,237,239,100,128,2,189,115,2,65,172,65,179,237,225,236,108,128,254,80,245,240,229,242,233,239,114,128,246,226,244,245,242,238,229,100,2,65,200,65,211,225,226,239,246,229,227,237,98,128,3,18,237,239,100,128,2,187,240,225,243,115,128,38,60,110,2,65,230,65,239,231,242,245,229,238,116,128,34,69,116,2,65,245,66,3,239,245,242,233,238,244,229,231,242,225,108,128,34,46,242,239,108,142,35,3,66,37,66,43,66,58,66,73,66,117,66,162,66,176,66,181,66,186,66,191,66,197,66,202,66,243,66,248,193,195,75,128,0,6,66,2,66,49,66,54,197,76,128,0,7,83,128,0,8,67,2,66,64,66,69,193,78,128,0,24,82,128,0,13,68,3,66,81,66,107,66,112,67,4,66,91,66,95,66,99,66,103,49,128,0,17,50,128,0,18,51,128,0,19,52,128,0,20,197,76,128,0,127,204,69,128,0,16,69,5,66,129,66,133,66,138,66,143,66,148,77,128,0,25,206,81,128,0,5,207,84,128,0,4,211,67,128,0,27,84,2,66,154,66,158,66,128,0,23,88,128,0,3,70,2,66,168,66,172,70,128,0,12,83,128,0,28,199,83,128,0,29,200,84,128,0,9,204,70,128,0,10,206,193,75,128,0,21,210,83,128,0,30,83,5,66,214,66,218,66,228,66,233,66,238,73,128,0,15,79,129,0,14,66,224,84,128,0,2,212,88,128,0,1,213,66,128,0,26,217,78,128,0,22,213,83,128,0,31,214,84,128,0,11,240,249,242,233,231,232,116,129,0,169,67,9,115,2,67,15,67,21,225,238,115,128,248,233,229,242,233,102,128,246,217,114,2,67,34,67,118,238,229,242,226,242,225,227,235,229,116,2,67,49,67,83,236,229,230,116,130,48,12,67,60,67,72,232,225,236,230,247,233,228,244,104,128,255,98,246,229,242,244,233,227,225,108,128,254,65,242,233,231,232,116,130,48,13,67,95,67,107,232,225,236,230,247,233,228,244,104,128,255,99,246,229,242,244,233,227,225,108,128,254,66,240,239,242,225,244,233,239,238,243,241,245,225,242,101,128,51,127,243,241,245,225,242,101,128,51,199,246,229,242,235,231,243,241,245,225,242,101,128,51,198,240,225,242,229,110,128,36,158,242,245,250,229,233,242,111,128,32,162,243,244,242,229,244,227,232,229,100,128,2,151,245,114,2,67,195,67,213,236,121,2,67,202,67,208,225,238,100,128,34,207,239,114,128,34,206,242,229,238,227,121,128,0,164,249,114,4,67,232,67,240,67,247,67,255,194,242,229,246,101,128,246,209,198,236,229,120,128,246,210,226,242,229,246,101,128,246,212,230,236,229,120,128,246,213,100,146,0,100,68,46,69,184,70,208,71,12,71,188,72,142,72,204,73,133,73,146,73,155,73,181,73,206,73,215,75,26,75,34,75,45,75,65,75,93,97,11,68,70,68,81,68,91,68,163,68,226,68,237,68,248,69,61,69,123,69,129,69,159,225,242,237,229,238,233,225,110,128,5,100,226,229,238,231,225,236,105,128,9,166,100,5,68,103,68,112,68,118,68,132,68,148,225,242,225,226,233,99,128,6,54,229,246,97,128,9,38,230,233,238,225,236,225,242,225,226,233,99,128,254,190,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,191,237,229,228,233,225,236,225,242,225,226,233,99,128,254,192,103,3,68,171,68,188,68,202,229,243,104,129,5,188,68,179,232,229,226,242,229,119,128,5,188,231,229,114,129,32,32,68,196,228,226,108,128,32,33,117,2,68,208,68,217,234,225,242,225,244,105,128,10,166,242,237,245,235,232,105,128,10,38,232,233,242,225,231,225,238,97,128,48,96,235,225,244,225,235,225,238,97,128,48,192,108,3,69,0,69,9,69,47,225,242,225,226,233,99,128,6,47,229,116,130,5,211,69,18,69,38,228,225,231,229,243,104,129,251,51,69,29,232,229,226,242,229,119,128,251,51,232,229,226,242,229,119,128,5,211,230,233,238,225,236,225,242,225,226,233,99,128,254,170,237,237,97,3,69,71,69,80,69,92,225,242,225,226,233,99,128,6,79,236,239,247,225,242,225,226,233,99,128,6,79,244,225,238,97,2,69,101,69,115,236,244,239,238,229,225,242,225,226,233,99,128,6,76,242,225,226,233,99,128,6,76,238,228,97,128,9,100,242,231,97,2,69,137,69,146,232,229,226,242,229,119,128,5,167,236,229,230,244,232,229,226,242,229,119,128,5,167,243,233,225,240,238,229,245,237,225,244,225,227,249,242,233,236,236,233,227,227,237,98,128,4,133,98,3,69,192,70,189,70,199,108,9,69,212,69,220,70,77,70,85,70,101,70,112,70,130,70,144,70,155,199,242,225,246,101,128,246,211,97,2,69,226,70,27,238,231,236,229,226,242,225,227,235,229,116,2,69,242,70,6,236,229,230,116,129,48,10,69,251,246,229,242,244,233,227,225,108,128,254,61,242,233,231,232,116,129,48,11,70,16,246,229,242,244,233,227,225,108,128,254,62,114,2,70,33,70,54,227,232,233,238,246,229,242,244,229,228,226,229,236,239,247,227,237,98,128,3,43,242,239,119,2,70,62,70,69,236,229,230,116,128,33,212,242,233,231,232,116,128,33,210,228,225,238,228,97,128,9,101,231,242,225,246,101,129,246,214,70,95,227,237,98,128,3,15,233,238,244,229,231,242,225,108,128,34,44,236,239,247,236,233,238,101,129,32,23,70,124,227,237,98,128,3,51,239,246,229,242,236,233,238,229,227,237,98,128,3,63,240,242,233,237,229,237,239,100,128,2,186,246,229,242,244,233,227,225,108,2,70,168,70,174,226,225,114,128,32,22,236,233,238,229,225,226,239,246,229,227,237,98,128,3,14,239,240,239,237,239,230,111,128,49,9,243,241,245,225,242,101,128,51,200,99,4,70,218,70,225,70,234,71,5,225,242,239,110,128,1,15,229,228,233,236,236,97,128,30,17,233,242,99,2,70,242,70,247,236,101,128,36,211,245,237,230,236,229,248,226,229,236,239,119,128,30,19,242,239,225,116,128,1,17,100,4,71,22,71,103,71,113,71,164,97,4,71,32,71,42,71,49,71,74,226,229,238,231,225,236,105,128,9,161,228,229,246,97,128,9,33,231,117,2,71,56,71,65,234,225,242,225,244,105,128,10,161,242,237,245,235,232,105,128,10,33,108,2,71,80,71,89,225,242,225,226,233,99,128,6,136,230,233,238,225,236,225,242,225,226,233,99,128,251,137,228,232,225,228,229,246,97,128,9,92,232,97,3,71,122,71,132,71],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+20480);allocate([139,226,229,238,231,225,236,105,128,9,162,228,229,246,97,128,9,34,231,117,2,71,146,71,155,234,225,242,225,244,105,128,10,162,242,237,245,235,232,105,128,10,34,239,116,2,71,171,71,180,225,227,227,229,238,116,128,30,11,226,229,236,239,119,128,30,13,101,8,71,206,72,3,72,10,72,35,72,45,72,56,72,101,72,137,99,2,71,212,71,249,233,237,225,236,243,229,240,225,242,225,244,239,114,2,71,230,71,239,225,242,225,226,233,99,128,6,107,240,229,242,243,233,225,110,128,6,107,249,242,233,236,236,233,99,128,4,52,231,242,229,101,128,0,176,232,105,2,72,17,72,26,232,229,226,242,229,119,128,5,173,242,225,231,225,238,97,128,48,103,233,227,239,240,244,233,99,128,3,239,235,225,244,225,235,225,238,97,128,48,199,108,2,72,62,72,85,229,244,101,2,72,70,72,77,236,229,230,116,128,35,43,242,233,231,232,116,128,35,38,244,97,129,3,180,72,92,244,245,242,238,229,100,128,1,141,238,239,237,233,238,225,244,239,242,237,233,238,245,243,239,238,229,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,248,250,104,128,2,164,104,2,72,148,72,198,97,3,72,156,72,166,72,173,226,229,238,231,225,236,105,128,9,167,228,229,246,97,128,9,39,231,117,2,72,180,72,189,234,225,242,225,244,105,128,10,167,242,237,245,235,232,105,128,10,39,239,239,107,128,2,87,105,6,72,218,73,11,73,71,73,82,73,93,73,103,97,2,72,224,72,246,236,249,244,233,235,225,244,239,238,239,115,129,3,133,72,240,227,237,98,128,3,68,237,239,238,100,129,38,102,72,255,243,245,233,244,247,232,233,244,101,128,38,98,229,242,229,243,233,115,133,0,168,73,30,73,38,73,49,73,55,73,63,225,227,245,244,101,128,246,215,226,229,236,239,247,227,237,98,128,3,36,227,237,98,128,3,8,231,242,225,246,101,128,246,216,244,239,238,239,115,128,3,133,232,233,242,225,231,225,238,97,128,48,98,235,225,244,225,235,225,238,97,128,48,194,244,244,239,237,225,242,107,128,48,3,246,105,2,73,110,73,121,228,101,129,0,247,73,117,115,128,34,35,243,233,239,238,243,236,225,243,104,128,34,21,234,229,227,249,242,233,236,236,233,99,128,4,82,235,243,232,225,228,101,128,37,147,108,2,73,161,73,172,233,238,229,226,229,236,239,119,128,30,15,243,241,245,225,242,101,128,51,151,109,2,73,187,73,195,225,227,242,239,110,128,1,17,239,238,239,243,240,225,227,101,128,255,68,238,226,236,239,227,107,128,37,132,111,10,73,237,73,249,74,3,74,14,74,25,74,97,74,102,74,113,74,228,74,254,227,232,225,228,225,244,232,225,105,128,14,14,228,229,235,244,232,225,105,128,14,20,232,233,242,225,231,225,238,97,128,48,105,235,225,244,225,235,225,238,97,128,48,201,236,236,225,114,132,0,36,74,40,74,51,74,63,74,74,233,238,230,229,242,233,239,114,128,246,227,237,239,238,239,243,240,225,227,101,128,255,4,239,236,228,243,244,249,236,101,128,247,36,115,2,74,80,74,87,237,225,236,108,128,254,105,245,240,229,242,233,239,114,128,246,228,238,103,128,32,171,242,245,243,241,245,225,242,101,128,51,38,116,6,74,127,74,144,74,166,74,177,74,209,74,216,225,227,227,229,238,116,129,2,217,74,138,227,237,98,128,3,7,226,229,236,239,247,99,2,74,155,74,160,237,98,128,3,35,239,237,98,128,3,35,235,225,244,225,235,225,238,97,128,48,251,236,229,243,115,2,74,186,74,190,105,128,1,49,106,129,246,190,74,196,243,244,242,239,235,229,232,239,239,107,128,2,132,237,225,244,104,128,34,197,244,229,228,227,233,242,227,236,101,128,37,204,245,226,236,229,249,239,228,240,225,244,225,104,129,251,31,74,245,232,229,226,242,229,119,128,251,31,247,238,244,225,227,107,2,75,9,75,20,226,229,236,239,247,227,237,98,128,3,30,237,239,100,128,2,213,240,225,242,229,110,128,36,159,243,245,240,229,242,233,239,114,128,246,235,116,2,75,51,75,57,225,233,108,128,2,86,239,240,226,225,114,128,1,140,117,2,75,71,75,82,232,233,242,225,231,225,238,97,128,48,101,235,225,244,225,235,225,238,97,128,48,197,122,132,1,243,75,105,75,114,75,133,75,170,225,236,244,239,238,101,128,2,163,99,2,75,120,75,127,225,242,239,110,128,1,198,245,242,108,128,2,165,101,2,75,139,75,159,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,225,227,249,242,233,236,236,233,99,128,4,85,232,229,227,249,242,233,236,236,233,99,128,4,95,101,151,0,101,75,233,75,252,76,30,77,4,77,66,77,99,77,111,77,134,77,187,79,43,79,101,79,203,80,63,80,198,81,17,81,48,81,110,81,163,82,98,82,231,82,251,83,39,83,130,97,2,75,239,75,246,227,245,244,101,128,0,233,242,244,104,128,38,65,98,3,76,4,76,13,76,23,229,238,231,225,236,105,128,9,143,239,240,239,237,239,230,111,128,49,28,242,229,246,101,128,1,21,99,5,76,42,76,115,76,129,76,161,76,250,97,2,76,48,76,109,238,228,242,97,3,76,59,76,66,76,77,228,229,246,97,128,9,13,231,245,234,225,242,225,244,105,128,10,141,246,239,247,229,236,243,233,231,110,2,76,91,76,98,228,229,246,97,128,9,69,231,245,234,225,242,225,244,105,128,10,197,242,239,110,128,1,27,229,228,233,236,236,225,226,242,229,246,101,128,30,29,104,2,76,135,76,146,225,242,237,229,238,233,225,110,128,5,101,249,233,247,238,225,242,237,229,238,233,225,110,128,5,135,233,242,99,2,76,169,76,174,236,101,128,36,212,245,237,230,236,229,120,134,0,234,76,195,76,203,76,211,76,222,76,230,76,242,225,227,245,244,101,128,30,191,226,229,236,239,119,128,30,25,228,239,244,226,229,236,239,119,128,30,199,231,242,225,246,101,128,30,193,232,239,239,235,225,226,239,246,101,128,30,195,244,233,236,228,101,128,30,197,249,242,233,236,236,233,99,128,4,84,100,4,77,14,77,24,77,30,77,40,226,236,231,242,225,246,101,128,2,5,229,246,97,128,9,15,233,229,242,229,243,233,115,128,0,235,239,116,130,1,23,77,49,77,58,225,227,227,229,238,116,128,1,23,226,229,236,239,119,128,30,185,101,2,77,72,77,83,231,245,242,237,245,235,232,105,128,10,15,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,71,230,227,249,242,233,236,236,233,99,128,4,68,103,2,77,117,77,124,242,225,246,101,128,0,232,245,234,225,242,225,244,105,128,10,143,104,4,77,144,77,155,77,166,77,176,225,242,237,229,238,233,225,110,128,5,103,226,239,240,239,237,239,230,111,128,49,29,233,242,225,231,225,238,97,128,48,72,239,239,235,225,226,239,246,101,128,30,187,105,4,77,197,77,208,79,10,79,25,226,239,240,239,237,239,230,111,128,49,31,231,232,116,142,0,56,77,242,77,251,78,5,78,35,78,42,78,80,78,105,78,150,78,184,78,196,78,207,78,240,78,248,79,3,225,242,225,226,233,99,128,6,104,226,229,238,231,225,236,105,128,9,238,227,233,242,227,236,101,129,36,103,78,16,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,145,228,229,246,97,128,9,110,229,229,110,2,78,50,78,59,227,233,242,227,236,101,128,36,113,112,2,78,65,78,72,225,242,229,110,128,36,133,229,242,233,239,100,128,36,153,231,117,2,78,87,78,96,234,225,242,225,244,105,128,10,238,242,237,245,235,232,105,128,10,110,104,2,78,111,78,137,97,2,78,117,78,128,227,235,225,242,225,226,233,99,128,6,104,238,231,250,232,239,117,128,48,40,238,239,244,229,226,229,225,237,229,100,128,38,107,105,2,78,156,78,174,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,39,238,230,229,242,233,239,114,128,32,136,237,239,238,239,243,240,225,227,101,128,255,24,239,236,228,243,244,249,236,101,128,247,56,112,2,78,213,78,220,225,242,229,110,128,36,123,229,114,2,78,227,78,233,233,239,100,128,36,143,243,233,225,110,128,6,248,242,239,237,225,110,128,33,119,243,245,240,229,242,233,239,114,128,32,120,244,232,225,105,128,14,88,238,246,229,242,244,229,228,226,242,229,246,101,128,2,7,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,101,107,2,79,49,79,73,225,244,225,235,225,238,97,129,48,168,79,61,232,225,236,230,247,233,228,244,104,128,255,116,111,2,79,79,79,94,238,235,225,242,231,245,242,237,245,235,232,105,128,10,116,242,229,225,110,128,49,84,108,3,79,109,79,120,79,181,227,249,242,233,236,236,233,99,128,4,59,101,2,79,126,79,133,237,229,238,116,128,34,8,246,229,110,3,79,143,79,152,79,173,227,233,242,227,236,101,128,36,106,112,2,79,158,79,165,225,242,229,110,128,36,126,229,242,233,239,100,128,36,146,242,239,237,225,110,128,33,122,236,233,240,243,233,115,129,32,38,79,192,246,229,242,244,233,227,225,108,128,34,238,109,5,79,215,79,243,79,254,80,18,80,29,225,227,242,239,110,130,1,19,79,227,79,235,225,227,245,244,101,128,30,23,231,242,225,246,101,128,30,21,227,249,242,233,236,236,233,99,128,4,60,228,225,243,104,129,32,20,80,7,246,229,242,244,233,227,225,108,128,254,49,239,238,239,243,240,225,227,101,128,255,69,112,2,80,35,80,55,232,225,243,233,243,237,225,242,235,225,242,237,229,238,233,225,110,128,5,91,244,249,243,229,116,128,34,5,110,6,80,77,80,88,80,99,80,143,80,175,80,190,226,239,240,239,237,239,230,111,128,49,35,227,249,242,233,236,236,233,99,128,4,61,100,2,80,105,80,124,225,243,104,129,32,19,80,113,246,229,242,244,233,227,225,108,128,254,50,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,163,103,130,1,75,80,151,80,162,226,239,240,239,237,239,230,111,128,49,37,232,229,227,249,242,233,236,236,233,99,128,4,165,232,239,239,235,227,249,242,233,236,236,233,99,128,4,200,243,240,225,227,101,128,32,2,111,3,80,206,80,214,80,223,231,239,238,229,107,128,1,25,235,239,242,229,225,110,128,49,83,240,229,110,130,2,91,80,233,80,242,227,236,239,243,229,100,128,2,154,242,229,246,229,242,243,229,100,130,2,92,81,1,81,10,227,236,239,243,229,100,128,2,94,232,239,239,107,128,2,93,112,2,81,23,81,30,225,242,229,110,128,36,160,243,233,236,239,110,129,3,181,81,40,244,239,238,239,115,128,3,173,241,117,2,81,55,81,99,225,108,130,0,61,81,64,81,76,237,239,238,239,243,240,225,227,101,128,255,29,115,2,81,82,81,89,237,225,236,108,128,254,102,245,240,229,242,233,239,114,128,32,124,233,246,225,236,229,238,227,101,128,34,97,114,3,81,118,81,129,81,140,226,239,240,239,237,239,230,111,128,49,38,227,249,242,233,236,236,233,99,128,4,64,229,246,229,242,243,229,100,129,2,88,81,152,227,249,242,233,236,236,233,99,128,4,77,115,6,81,177,81,188,81,208,82,33,82,78,82,88,227,249,242,233,236,236,233,99,128,4,65,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,171,104,132,2,131,81,220,81,227,82,2,82,17,227,245,242,108,128,2,134,239,242,116,2,81,235,81,242,228,229,246,97,128,9,14,246,239,247,229,236,243,233,231,238,228,229,246,97,128,9,70,242,229,246,229,242,243,229,228,236,239,239,112,128,1,170,243,241,245,225,244,242,229,246,229,242,243,229,100,128,2,133,237,225,236,108,2,82,42,82,53,232,233,242,225,231,225,238,97,128,48,71,235,225,244,225,235,225,238,97,129,48,167,82,66,232,225,236,230,247,233,228,244,104,128,255,106,244,233,237,225,244,229,100,128,33,46,245,240,229,242,233,239,114,128,246,236,116,5,82,110,82,136,82,140,82,157,82,223,97,130,3,183,82,118,82,128,242,237,229,238,233,225,110,128,5,104,244,239,238,239,115,128,3,174,104,128,0,240,233,236,228,101,129,30,189,82,149,226,229,236,239,119,128,30,27,238,225,232,244,97,3,82,169,82,201,82,210,230,239,245,235,104,2,82,179,82,188,232,229,226,242,229,119,128,5,145,236,229,230,244,232,229,226,242,229,119,128,5,145,232,229,226,242,229,119,128,5,145,236,229,230,244,232,229,226,242,229,119,128,5,145,245,242,238,229,100,128,1,221,117,2,82,237,82,246,235,239,242,229,225,110,128,49,97,242,111,128,32,172,246,239,247,229,236,243,233,231,110,3,83,11,83,21,83,28,226,229,238,231,225,236,105,128,9,199,228,229,246,97,128,9,71,231,245,234,225,242,225,244,105,128,10,199,120,2,83,45,83,118,227,236,225,109,132,0,33,83,60,83,71,83,98,83,110,225,242,237,229,238,233,225,110,128,5,92,100,2,83,77,83,82,226,108,128,32,60,239,247,110,129,0,161,83,90,243,237,225,236,108,128,247,161,237,239,238,239,243,240,225,227,101,128,255,1,243,237,225,236,108,128,247,33,233,243,244,229,238,244,233,225,108,128,34,3,250,104,131,2,146,83,141,83,160,83,171,99,2,83,147,83,154,225,242,239,110,128,1,239,245,242,108,128,2,147,242,229,246,229,242,243,229,100,128,1,185,244,225,233,108,128,1,186,102,140,0,102,83,206,84,32,84,43,84,52,84,64,84,167,84,183,86,191,86,204,86,230,88,107,88,115,97,4,83,216,83,223,83,234,83,245,228,229,246,97,128,9,94,231,245,242,237,245,235,232,105,128,10,94,232,242,229,238,232,229,233,116,128,33,9,244,232,97,3,83,255,84,8,84,20,225,242,225,226,233,99,128,6,78,236,239,247,225,242,225,226,233,99,128,6,78,244,225,238,225,242,225,226,233,99,128,6,75,226,239,240,239,237,239,230,111,128,49,8,227,233,242,227,236,101,128,36,213,228,239,244,225,227,227,229,238,116,128,30,31,101,3,84,72,84,150,84,160,104,4,84,82,84,105,84,119,84,135,225,114,2,84,89,84,96,225,226,233,99,128,6,65,237,229,238,233,225,110,128,5,134,230,233,238,225,236,225,242,225,226,233,99,128,254,210,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,211,237,229,228,233,225,236,225,242,225,226,233,99,128,254,212,233,227,239,240,244,233,99,128,3,229,237,225,236,101,128,38,64,102,130,251,0,84,175,84,179,105,128,251,3,108,128,251,4,105,136,251,1,84,203,84,243,84,254,85,20,85,142,85,159,85,167,85,180,230,244,229,229,110,2,84,213,84,222,227,233,242,227,236,101,128,36,110,112,2,84,228,84,235,225,242,229,110,128,36,130,229,242,233,239,100,128,36,150,231,245,242,229,228,225,243,104,128,32,18,236,236,229,100,2,85,7,85,13,226,239,120,128,37,160,242,229,227,116,128,37,172,238,225,108,5,85,34,85,73,85,90,85,107,85,123,235,225,102,130,5,218,85,44,85,64,228,225,231,229,243,104,129,251,58,85,55,232,229,226,242,229,119,128,251,58,232,229,226,242,229,119,128,5,218,237,229,109,129,5,221,85,81,232,229,226,242,229,119,128,5,221,238,245,110,129,5,223,85,98,232,229,226,242,229,119,128,5,223,240,101,129,5,227,85,114,232,229,226,242,229,119,128,5,227,244,243,225,228,105,129,5,229,85,133,232,229,226,242,229,119,128,5,229,242,243,244,244,239,238,229,227,232,233,238,229,243,101,128,2,201,243,232,229,249,101,128,37,201,244,225,227,249,242,233,236,236,233,99,128,4,115,246,101,142,0,53,85,213,85,222,85,232,86,6,86,13,86,23,86,48,86,75,86,109,86,121,86,132,86,165,86,173,86,184,225,242,225,226,233,99,128,6,101,226,229,238,231,225,236,105,128,9,235,227,233,242,227,236,101,129,36,100,85,243,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,142,228,229,246,97,128,9,107,229,233,231,232,244,232,115,128,33,93,231,117,2,86,30,86,39,234,225,242,225,244,105,128,10,235,242,237,245,235,232,105,128,10,107,232,97,2,86,55,86,66,227,235,225,242,225,226,233,99,128,6,101,238,231,250,232,239,117,128,48,37,105,2,86,81,86,99,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,36,238,230,229,242,233,239,114,128,32,133,237,239,238,239,243,240,225,227,101,128,255,21,239,236,228,243,244,249,236,101,128,247,53,112,2,86,138,86,145,225,242,229,110,128,36,120,229,114,2,86,152,86,158,233,239,100,128,36,140,243,233,225,110,128,6,245,242,239,237,225,110,128,33,116,243,245,240,229,242,233,239,114,128,32,117,244,232,225,105,128,14,85,108,129,251,2,86,197,239,242,233,110,128,1,146,109,2,86,210,86,221,239,238,239,243,240,225,227,101,128,255,70,243,241,245,225,242,101,128,51,153,111,4,86,240,87,6,87,18,87,25,230,97,2,86,247,86,255,238,244,232,225,105,128,14,31,244,232,225,105,128,14,29,238,231,237,225,238,244,232,225,105,128,14,79,242,225,236,108,128,34,0,245,114,142,0,52,87,58,87,67,87,77,87,107,87,114,87,139,87,166,87,200,87,212,87,231,87,242,88,19,88,27,88,38,225,242,225,226,233,99,128,6,100,226,229,238,231,225,236,105,128,9,234,227,233,242,227,236,101,129,36,99,87,88,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,141,228,229,246,97,128,9,106,231,117,2,87,121,87,130,234,225,242,225,244,105,128,10,234,242,237,245,235,232,105,128,10,106,232,97,2,87,146,87,157,227,235,225,242,225,226,233,99,128,6,100,238,231,250,232,239,117,128,48,36,105,2,87,172,87,190,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,35,238,230,229,242,233,239,114,128,32,132,237,239,238,239,243,240,225,227,101,128,255,20,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,247,239,236,228,243,244,249,236,101,128,247,52,112,2,87,248,87,255,225,242,229,110,128,36,119,229,114,2,88,6,88,12,233,239,100,128,36,139,243,233,225,110,128,6,244,242,239,237,225,110,128,33,115,243,245,240,229,242,233,239,114,128,32,116,116,2,88,44,88,82,229,229,110,2,88,52,88,61,227,233,242,227,236,101,128,36,109,112,2,88,67,88,74,225,242,229,110,128,36,129,229,242,233,239,100,128,36,149,104,2,88,88,88,93,225,105,128,14,84,244,239,238,229,227,232,233,238,229,243,101,128,2,203,240,225,242,229,110,128,36,161,242,97,2,88,122,88,130,227,244,233,239,110,128,32,68,238,99,128,32,163,103,144,0,103,88,171,89,117,89,140,89,201,89,218,90,139,91,132,91,217,91,230,92,88,92,113,92,141,92,163,93,108,93,130,93,232,97,9,88,191,88,201,88,208,88,215,89,23,89,48,89,59,89,70,89,104,226,229,238,231,225,236,105,128,9,151,227,245,244,101,128,1,245,228,229,246,97,128,9,23,102,4,88,225,88,234,88,248,89,8,225,242,225,226,233,99,128,6,175,230,233,238,225,236,225,242,225,226,233,99,128,251,147,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,148,237,229,228,233,225,236,225,242,225,226,233,99,128,251,149,231,117,2,89,30,89,39,234,225,242,225,244,105,128,10,151,242,237,245,235,232,105,128,10,23,232,233,242,225,231,225,238,97,128,48,76,235,225,244,225,235,225,238,97,128,48,172,237,237,97,130,3,179,89,80,89,93,236,225,244,233,238,243,237,225,236,108,128,2,99,243,245,240,229,242,233,239,114,128,2,224,238,231,233,225,227,239,240,244,233,99,128,3,235,98,2,89,123,89,133,239,240,239,237,239,230,111,128,49,13,242,229,246,101,128,1,31,99,4,89,150,89,157,89,166,89,188,225,242,239,110,128,1,231,229,228,233,236,236,97,128,1,35,233,242,99,2,89,174,89,179,236,101,128,36,214,245,237,230,236,229,120,128,1,29,239,237,237,225,225,227,227,229,238,116,128,1,35,228,239,116,129,1,33,89,209,225,227,227,229,238,116,128,1,33,101,6,89,232,89,243,89,254,90,9,90,28,90,130,227,249,242,233,236,236,233,99,128,4,51,232,233,242,225,231,225,238,97,128,48,82,235,225,244,225,235,225,238,97,128,48,178,239,237,229,244,242,233,227,225,236,236,249,229,241,245,225,108,128,34,81,114,3,90,36,90,85,90,95,229,243,104,3,90,46,90,61,90,70,225,227,227,229,238,244,232,229,226,242,229,119,128,5,156,232,229,226,242,229,119,128,5,243,237,245,241,228,225,237,232,229,226,242,229,119,128,5,157,237,225,238,228,226,236,115,128,0,223,243,232,225,249,233,109,2,90,106,90,121,225,227,227,229,238,244,232,229,226,242,229,119,128,5,158,232,229,226,242,229,119,128,5,244,244,225,237,225,242,107,128,48,19,104,5,90,151,91,28,91,91,91,116,91,122,97,4,90,161,90,171,90,194,90,219,226,229,238,231,225,236,105,128,9,152,100,2,90,177,90,188,225,242,237,229,238,233,225,110,128,5,114,229,246,97,128,9,24,231,117,2,90,201,90,210,234,225,242,225,244,105,128,10,152,242,237,245,235,232,105,128,10,24,233,110,4,90,230,90,239,90,253,91,13,225,242,225,226,233,99,128,6,58,230,233,238,225,236,225,242,225,226,233,99,128,254,206,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,207,237,229,228,233,225,236,225,242,225,226,233,99,128,254,208,101,3,91,36,91,57,91,74,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,149,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,147,245,240,244,245,242,238,227,249,242,233,236,236,233,99,128,4,145,232,97,2,91,98,91,105,228,229,246,97,128,9,90,231,245,242,237,245,235,232,105,128,10,90,239,239,107,128,2,96,250,243,241,245,225,242,101,128,51,147,105,3,91,140,91,151,91,162,232,233,242,225,231,225,238,97,128,48,78,235,225,244,225,235,225,238,97,128,48,174,109,2,91,168,91,179,225,242,237,229,238,233,225,110,128,5,99,229,108,130,5,210,91,188,91,208,228,225,231,229,243,104,129,251,50,91,199,232,229,226,242,229,119,128,251,50,232,229,226,242,229,119,128,5,210,234,229,227,249,242,233,236,236,233,99,128,4,83,236,239,244,244,225,108,2,91,241,92,2,233,238,246,229,242,244,229,228,243,244,242,239,235,101,128,1,190,243,244,239,112,132,2,148,92,17,92,28,92,34,92,66,233,238,246,229,242,244,229,100,128,2,150,237,239,100,128,2,192,242,229,246,229,242,243,229,100,130,2,149,92,49,92,55,237,239,100,128,2,193,243,245,240,229,242,233,239,114,128,2,228,243,244,242,239,235,101,129,2,161,92,77,242,229,246,229,242,243,229,100,128,2,162,109,2,92,94,92,102,225,227,242,239,110,128,30,33,239,238,239,243,240,225,227,101,128,255,71,111,2,92,119,92,130,232,233,242,225,231,225,238,97,128,48,84,235,225,244,225,235,225,238,97,128,48,180,240,97,2,92,148,92,154,242,229,110,128,36,162,243,241,245,225,242,101,128,51,172,114,2,92,169,93,10,97,2,92,175,92,183,228,233,229,238,116,128,34,7,246,101,134,0,96,92,200,92,211,92,228,92,235,92,244,93,0,226,229,236,239,247,227,237,98,128,3,22,99,2,92,217,92,222,237,98,128,3,0,239,237,98,128,3,0,228,229,246,97,128,9,83,236,239,247,237,239,100,128,2,206,237,239,238,239,243,240,225,227,101,128,255,64,244,239,238,229,227,237,98,128,3,64,229,225,244,229,114,132,0,62,93,26,93,45,93,57,93,100,229,241,245,225,108,129,34,101,93,36,239,242,236,229,243,115,128,34,219,237,239,238,239,243,240,225,227,101,128,255,30,111,2,93,63,93,89,114,2,93,69,93,82,229,241,245,233,246,225,236,229,238,116,128,34,115,236,229,243,115,128,34,119,246,229,242,229,241,245,225,108,128,34,103,243,237,225,236,108,128,254,101,115,2,93,114,93,122,227,242,233,240,116,128,2,97,244,242,239,235,101,128,1,229,117,4,93,140,93,151,93,208,93,219,232,233,242,225,231,225,238,97,128,48,80,233,108,2,93,158,93,183,236,229,237,239,116,2,93,168,93,175,236,229,230,116,128,0,171,242,233,231,232,116,128,0,187,243,233,238,231,108,2,93,193,93,200,236,229,230,116,128,32,57,242,233,231,232,116,128,32,58,235,225,244,225,235,225,238,97,128,48,176,242,225,237,245,243,241,245,225,242,101,128,51,24,249,243,241,245,225,242,101,128,51,201,104,144,0,104,94,22,96,164,96,199,96,236,97,20,98,164,98,184,99,149,99,161,99,173,100,241,100,249,101,4,101,13,101,93,101,97,97,13,94,50,94,89,94,99,94,129,94,154,94,232,94,244,95,13,95,28,95,57,95,70,95,128,95,137,97,2,94,56,94,75,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,169,236,244,239,238,229,225,242,225,226,233,99,128,6,193,226,229,238,231,225,236,105,128,9,185,228,101,2,94,106,94,124,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,179,246,97,128,9,57,231,117,2,94,136,94,145,234,225,242,225,244,105,128,10,185,242,237,245,235,232,105,128,10,57,104,4,94,164,94,173,94,187,94,217,225,242,225,226,233,99,128,6,45,230,233,238,225,236,225,242,225,226,233,99,128,254,162,105,2,94,193,94,208,238,233,244,233,225,236,225,242,225,226,233,99,128,254,163,242,225,231,225,238,97,128,48,111,237,229,228,233,225,236,225,242,225,226,233,99,128,254,164,233,244,245,243,241,245,225,242,101,128,51,42,235,225,244,225,235,225,238,97,129,48,207,95,1,232,225,236,230,247,233,228,244,104,128,255,138,236,225,238,244,231,245,242,237,245,235,232,105,128,10,77,237,250,97,2,95,36,95,45,225,242,225,226,233,99,128,6,33,236,239,247,225,242,225,226,233,99,128,6,33,238,231,245,236,230,233,236,236,229,114,128,49,100,114,2,95,76,95,92,228,243,233,231,238,227,249,242,233,236,236,233,99,128,4,74,240,239,239,110,2,95,101,95,114,236,229,230,244,226,225,242,226,245,112,128,33,188,242,233,231,232,244,226,225,242,226,245,112,128,33,192,243,241,245,225,242,101,128,51,202,244,225,102,3,95,147,95,239,96,74,240,225,244,225,104,134,5,178,95,167,95,172,95,186,95,195,95,210,95,226,177,54,128,5,178,50,2,95,178,95,182,51,128,5,178,102,128,5,178,232,229,226,242,229,119,128,5,178,238,225,242,242,239,247,232,229,226,242,229,119,128,5,178,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,178,247,233,228,229,232,229,226,242,229,119,128,5,178,241,225,237,225,244,115,135,5,179,96,6,96,11,96,16,96,21,96,30,96,45,96,61,177,98,128,5,179,178,56,128,5,179,179,52,128,5,179,232,229,226,242,229,119,128,5,179,238,225,242,242,239,247,232,229,226,242,229,119,128,5,179,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,179,247,233,228,229,232,229,226,242,229,119,128,5,179,243,229,231,239,108,135,5,177,96,96,96,101,96,106,96,111,96,120,96,135,96,151,177,55,128,5,177,178,52,128,5,177,179,48,128,5,177,232,229,226,242,229,119,128,5,177,238,225,242,242,239,247,232,229,226,242,229,119,128,5,177,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,177,247,233,228,229,232,229,226,242,229,119,128,5,177,98,3,96,172,96,177,96,187,225,114,128,1,39,239,240,239,237,239,230,111,128,49,15,242,229,246,229,226,229,236,239,119,128,30,43,99,2,96,205,96,214,229,228,233,236,236,97,128,30,41,233,242,99,2,96,222,96,227,236,101,128,36,215,245,237,230,236,229,120,128,1,37,100,2,96,242,96,252,233,229,242,229,243,233,115,128,30,39,239,116,2,97,3,97,12,225,227,227,229,238,116,128,30,35,226,229,236,239,119,128,30,37,101,136,5,212,97,40,97,73,97,93,98,66,98,82,98,127,98,136,98,149,225,242,116,129,38,101,97,48,243,245,233,116,2,97,57,97,65,226,236,225,227,107,128,38,101,247,232,233,244,101,128,38,97,228,225,231,229,243,104,129,251,52,97,84,232,229,226,242,229,119,128,251,52,104,6,97,107,97,135,97,143,97,193,97,239,98,32,97,2,97,113,97,127,236,244,239,238,229,225,242,225,226,233,99,128,6,193,242,225,226,233,99,128,6,71,229,226,242,229,119,128,5,212,230,233,238,225,236,97,2,97,154,97,185,236,116,2,97,161,97,173,239,238,229,225,242,225,226,233,99,128,251,167,244,247,239,225,242,225,226,233,99,128,254,234,242,225,226,233,99,128,254,234,232,225,237,250,225,225,226,239,246,101,2,97,208,97,222,230,233,238,225,236,225,242,225,226,233,99,128,251,165,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,251,164,105,2,97,245,98,23,238,233,244,233,225,236,97,2,98,1,98,15,236,244,239,238,229,225,242,225,226,233,99,128,251,168,242,225,226,233,99,128,254,235,242,225,231,225,238,97,128,48,120,237,229,228,233,225,236,97,2,98,44,98,58,236,244,239,238,229,225,242,225,226,233,99,128,251,169,242,225,226,233,99,128,254,236,233,243,229,233,229,242,225,243,241,245,225,242,101,128,51,123,107,2,98,88,98,112,225,244,225,235,225,238,97,129,48,216,98,100,232,225,236,230,247,233,228,244,104,128,255,141,245,244,225,225,242,245,243,241,245,225,242,101,128,51,54,238,231,232,239,239,107,128,2,103,242,245,244,245,243,241,245,225,242,101,128,51,57,116,129,5,215,98,155,232,229,226,242,229,119,128,5,215,232,239,239,107,129,2,102,98,173,243,245,240,229,242,233,239,114,128,2,177,105,4,98,194,99,23,99,34,99,59,229,245,104,4,98,206,98,241,99,0,99,9,97,2,98,212,98,227,227,233,242,227,236,229,235,239,242,229,225,110,128,50,123,240,225,242,229,238,235,239,242,229,225,110,128,50,27,227,233,242,227,236,229,235,239,242,229,225,110,128,50,109,235,239,242,229,225,110,128,49,78,240,225,242,229,238,235,239,242,229,225,110,128,50,13,232,233,242,225,231,225,238,97,128,48,114,235,225,244,225,235,225,238,97,129,48,210,99,47,232,225,236,230,247,233,228,244,104,128,255,139,242,233,113,134,5,180,99,77,99,82,99,96,99,105,99,120,99,136,177,52,128,5,180,50,2,99,88,99,92,49,128,5,180,100,128,5,180,232,229,226,242,229,119,128,5,180,238,225,242,242,239,247,232,229,226,242,229,119,128,5,180,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,180,247,233,228,229,232,229,226,242,229,119,128,5,180,236,233,238,229,226,229,236,239,119,128,30,150,237,239,238,239,243,240,225,227,101,128,255,72,111,9,99,193,99,204,99,228,99,253,100,85,100,98,100,184,100,224,100,235,225,242,237,229,238,233,225,110,128,5,112,232,105,2,99,211,99,219,240,244,232,225,105,128,14,43,242,225,231,225,238,97,128,48,123,235,225,244,225,235,225,238,97,129,48,219,99,241,232,225,236,230,247,233,228,244,104,128,255,142,236,225,109,135,5,185,100,17,100,22,100,27,100,32,100,41,100,56,100,72,177,57,128,5,185,178,54,128,5,185,179,50,128,5,185,232,229,226,242,229,119,128,5,185,238,225,242,242,239,247,232,229,226,242,229,119,128,5,185,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,185,247,233,228,229,232,229,226,242,229,119,128,5,185,238,239,235,232,245,235,244,232,225,105,128,14,46,111,2,100,104,100,174,107,4,100,114,100,126,100,132,100,154,225,226,239,246,229,227,239,237,98,128,3,9,227,237,98,128,3,9,240,225,236,225,244,225,236,233,250,229,228,226,229,236,239,247,227,237,98,128,3,33,242,229,244,242,239,230,236,229,248,226,229,236,239,247,227,237,98,128,3,34,238,243,241,245,225,242,101,128,51,66,114,2,100,190,100,217,105,2,100,196,100,205,227,239,240,244,233,99,128,3,233,250,239,238,244,225,236,226,225,114,128,32,21,238,227,237,98,128,3,27,244,243,240,242,233,238,231,115,128,38,104,245,243,101,128,35,2,240,225,242,229,110,128,36,163,243,245,240,229,242,233,239,114,128,2,176,244,245,242,238,229,100,128,2,101,117,4,101,23,101,34,101,47,101,72,232,233,242,225,231,225,238,97,128,48,117,233,233,244,239,243,241,245,225,242,101,128,51,51,235,225,244,225,235,225,238,97,129,48,213,101,60,232,225,236,230,247,233,228,244,104,128,255,140,238,231,225,242,245,237,236,225,245,116,129,2,221,101,87,227,237,98,128,3,11,118,128,1,149,249,240,232,229,110,132,0,45,101,113,101,124,101,136,101,159,233,238,230,229,242,233,239,114,128,246,229,237,239,238,239,243,240,225,227,101,128,255,13,115,2,101,142,101,149,237,225,236,108,128,254,99,245,240,229,242,233,239,114,128,246,230,244,247,111,128,32,16,105,149,0,105,101,211,101,234,102,12,102,59,105,197,106,61,106,98,106,125,107,31,107,35,107,73,107,95,107,179,108,88,108,163,108,171,108,184,109,15,109,72,109,100,109,144,225,99,2,101,218,101,224,245,244,101,128,0,237,249,242,233,236,236,233,99,128,4,79,98,3,101,242,101,251,102,5,229,238,231,225,236,105,128,9,135,239,240,239,237,239,230,111,128,49,39,242,229,246,101,128,1,45,99,3,102,20,102,27,102,49,225,242,239,110,128,1,208,233,242,99,2,102,35,102,40,236,101,128,36,216,245,237,230,236,229,120,128,0,238,249,242,233,236,236,233,99,128,4,86,100,4,102,69,102,79,105,154,105,187,226,236,231,242,225,246,101,128,2,9,101,2,102,85,105,149,239,231,242,225,240,104,7,102,106,102,120,102,133,105,62,105,93,105,106,105,118,229,225,242,244,232,227,233,242,227,236,101,128,50,143,230,233,242,229,227,233,242,227,236,101,128,50,139,233,99,14,102,164,102,180,103,23,103,77,103,143,103,172,103,188,103,245,104,38,104,50,104,77,104,144,105,26,105,55,225,236,236,233,225,238,227,229,240,225,242,229,110,128,50,63,99,4,102,190,102,201,102,215,102,222,225,236,236,240,225,242,229,110,128,50,58,229,238,244,242,229,227,233,242,227,236,101,128,50,165,236,239,243,101,128,48,6,111,3,102,230,102,245,103,9,237,237,97,129,48,1,102,238,236,229,230,116,128,255,100,238,231,242,225,244,245,236,225,244,233,239,238,240,225,242,229,110,128,50,55,242,242,229,227,244,227,233,242,227,236,101,128,50,163,101,3,103,31,103,43,103,60,225,242,244,232,240,225,242,229,110,128,50,47,238,244,229,242,240,242,233,243,229,240,225,242,229,110,128,50,61,248,227,229,236,236,229,238,244,227,233,242,227,236,101,128,50,157,102,2,103,83,103,98,229,243,244,233,246,225,236,240,225,242,229,110,128,50,64,105,2,103,104,103,133,238,225,238,227,233,225,108,2,103,116,103,125,227,233,242,227,236,101,128,50,150,240,225,242,229,110,128,50,54,242,229,240,225,242,229,110,128,50,43,104,2,103,149,103,160,225,246,229,240,225,242,229,110,128,50,50,233,231,232,227,233,242,227,236,101,128,50,164,233,244,229,242,225,244,233,239,238,237,225,242,107,128,48,5,108,3,103,196,103,222,103,234,225,226,239,114,2,103,205,103,214,227,233,242,227,236,101,128,50,152,240,225,242,229,110,128,50,56,229,230,244,227,233,242,227,236,101,128,50,167,239,247,227,233,242,227,236,101,128,50,166,109,2,103,251,104,27,101,2,104,1,104,16,228,233,227,233,238,229,227,233,242,227,236,101,128,50,169,244,225,236,240,225,242,229,110,128,50,46,239,239,238,240,225,242,229,110,128,50,42,238,225,237,229,240,225,242,229,110,128,50,52,112,2,104,56,104,64,229,242,233,239,100,128,48,2,242,233,238,244,227,233,242,227,236,101,128,50,158,114,2,104,83,104,131,101,3,104,91,104,102,104,117,225,227,232,240,225,242,229,110,128,50,67,240,242,229,243,229,238,244,240,225,242,229,110,128,50,57,243,239,245,242,227,229,240,225,242,229,110,128,50,62,233,231,232,244,227,233,242,227,236,101,128,50,168,115,5,104,156,104,185,104,199,104,224,104,252,101,2,104,162,104,175,227,242,229,244,227,233,242,227,236,101,128,50,153,236,230,240,225,242,229,110,128,50,66,239,227,233,229,244,249,240,225,242,229,110,128,50,51,112,2,104,205,104,211,225,227,101,128,48,0,229,227,233,225,236,240,225,242,229,110,128,50,53,116,2,104,230,104,241,239,227,235,240,225,242,229,110,128,50,49,245,228,249,240,225,242,229,110,128,50,59,117,2,105,2,105,11,238,240,225,242,229,110,128,50,48,240,229,242,246,233,243,229,240,225,242,229,110,128,50,60,119,2,105,32,105,44,225,244,229,242,240,225,242,229,110,128,50,44,239,239,228,240,225,242,229,110,128,50,45,250,229,242,111,128,48,7,109,2,105,68,105,81,229,244,225,236,227,233,242,227,236,101,128,50,142,239,239,238,227,233,242,227,236,101,128,50,138,238,225,237,229,227,233,242,227,236,101,128,50,148,243,245,238,227,233,242,227,236,101,128,50,144,119,2,105,124,105,137,225,244,229,242,227,233,242,227,236,101,128,50,140,239,239,228,227,233,242,227,236,101,128,50,141,246,97,128,9,7,233,229,242,229,243,233,115,130,0,239,105,168,105,176,225,227,245,244,101,128,30,47,227,249,242,233,236,236,233,99,128,4,229,239,244,226,229,236,239,119,128,30,203,101,3,105,205,105,221,105,232,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,215,227,249,242,233,236,236,233,99,128,4,53,245,238,103,4,105,244,106,23,106,38,106,47,97,2,105,250,106,9,227,233,242,227,236,229,235,239,242,229,225,110,128,50,117,240,225,242,229,238,235,239,242,229,225,110,128,50,21,227,233,242,227,236,229,235,239,242,229,225,110,128,50,103,235,239,242,229,225,110,128,49,71,240,225,242,229,238,235,239,242,229,225,110,128,50,7,103,2,106,67,106,74,242,225,246,101,128,0,236,117,2,106,80,106,89,234,225,242,225,244,105,128,10,135,242,237,245,235,232,105,128,10,7,104,2,106,104,106,114,233,242,225,231,225,238,97,128,48,68,239,239,235,225,226,239,246,101,128,30,201,105,8,106,143,106,153,106,164,106,171,106,196,106,212,106,227,106,243,226,229,238,231,225,236,105,128,9,136,227,249,242,233,236,236,233,99,128,4,56,228,229,246,97,128,9,8,231,117,2,106,178,106,187,234,225,242,225,244,105,128,10,136,242,237,245,235,232,105,128,10,8,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,64,238,246,229,242,244,229,228,226,242,229,246,101,128,2,11,243,232,239,242,244,227,249,242,233,236,236,233,99,128,4,57,246,239,247,229,236,243,233,231,110,3,107,3,107,13,107,20,226,229,238,231,225,236,105,128,9,192,228,229,246,97,128,9,64,231,245,234,225,242,225,244,105,128,10,192,106,128,1,51,107,2,107,41,107,65,225,244,225,235,225,238,97,129,48,164,107,53,232,225,236,230,247,233,228,244,104,128,255,114,239,242,229,225,110,128,49,99,108,2,107,79,107,84,228,101,128,2,220,245,249,232,229,226,242,229,119,128,5,172,109,2,107,101,107,168,97,3,107,109,107,129,107,154,227,242,239,110,129,1,43,107,118,227,249,242,233,236,236,233,99,128,4,227,231,229,239,242,225,240,240,242,239,248,233,237,225,244,229,236,249,229,241,245,225,108,128,34,83,244,242,225,231,245,242,237,245,235,232,105,128,10,63,239,238,239,243,240,225,227,101,128,255,73,110,5,107,191,107,201,107,210,107,222,108,50,227,242,229,237,229,238,116,128,34,6,230,233,238,233,244,121,128,34,30,233,225,242,237,229,238,233,225,110,128,5,107,116,2,107,228,108,40,101,2,107,234,108,29,231,242,225,108,131,34,43,107,247,108,9,108,14,98,2,107,253,108,5,239,244,244,239,109,128,35,33,116,128,35,33,229,120,128,248,245,116,2,108,20,108,25,239,112,128,35,32,112,128,35,32,242,243,229,227,244,233,239,110,128,34,41,233,243,241,245,225,242,101,128,51,5,118,3,108,58,108,67,108,76,226,245,236,236,229,116,128,37,216,227,233,242,227,236,101,128,37,217,243,237,233,236,229,230,225,227,101,128,38,59,111,3,108,96,108,107,108,115,227,249,242,233,236,236,233,99,128,4,81,231,239,238,229,107,128,1,47,244,97,131,3,185,108,126,108,147,108,155,228,233,229,242,229,243,233,115,129,3,202,108,139,244,239,238,239,115,128,3,144,236,225,244,233,110,128,2,105,244,239,238,239,115,128,3,175,240,225,242,229,110,128,36,164,242,233,231,245,242,237,245,235,232,105,128,10,114,115,4,108,194,108,239,108,253,109,5,237,225,236,108,2,108,203,108,214,232,233,242,225,231,225,238,97,128,48,67,235,225,244,225,235,225,238,97,129,48,163,108,227,232,225,236,230,247,233,228,244,104,128,255,104,243,232,225,242,226,229,238,231,225,236,105,128,9,250,244,242,239,235,101,128,2,104,245,240,229,242,233,239,114,128,246,237,116,2,109,21,109,55,229,242,225,244,233,239,110,2,109,33,109,44,232,233,242,225,231,225,238,97,128,48,157,235,225,244,225,235,225,238,97,128,48,253,233,236,228,101,129,1,41,109,64,226,229,236,239,119,128,30,45,117,2,109,78,109,89,226,239,240,239,237,239,230,111,128,49,41,227,249,242,233,236,236,233,99,128,4,78,246,239,247,229,236,243,233,231,110,3,109,116,109,126,109,133,226,229,238,231,225,236,105,128,9,191,228,229,246,97,128,9,63,231,245,234,225,242,225,244,105,128,10,191,250,232,233,244,243,97,2,109,155,109,166,227,249,242,233,236,236,233,99,128,4,117,228,226,236,231,242,225,246,229,227,249,242,233,236,236,233,99,128,4,119,106,138,0,106,109,209,110,16,110,27,110,77,110,93,110,206,111,19,111,24,111,36,111,44,97,4,109,219,109,230,109,240,109,247,225,242,237,229,238,233,225,110,128,5,113,226,229,238,231,225,236,105,128,9,156,228,229,246,97,128,9,28,231,117,2,109,254,110,7,234,225,242,225,244,105,128,10,156,242,237,245,235,232,105,128,10,28,226,239,240,239,237,239,230,111,128,49,16,99,3,110,35,110,42,110,64,225,242,239,110,128,1,240,233,242,99,2,110,50,110,55,236,101,128,36,217,245,237,230,236,229,120,128,1,53,242,239,243,243,229,228,244,225,233,108,128,2,157,228,239,244,236,229,243,243,243,244,242,239,235,101,128,2,95,101,3,110,101,110,112,110,177,227,249,242,233,236,236,233,99,128,4,88,229,109,4,110,123,110,132,110,146,110,162,225,242,225,226,233,99,128,6,44,230,233,238,225,236,225,242,225,226,233,99,128,254,158,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,159,237,229,228,233,225,236,225,242,225,226,233,99,128,254,160,104,2,110,183,110,192,225,242,225,226,233,99,128,6,152,230,233,238,225,236,225,242,225,226,233,99,128,251,139,104,2,110,212,111,6,97,3,110,220,110,230,110,237,226,229,238,231,225,236,105,128,9,157,228,229,246,97,128,9,29,231,117,2,110,244,110,253,234,225,242,225,244,105,128,10,157,242,237,245,235,232,105,128,10,29,229,232,225,242,237,229,238,233,225,110,128,5,123,233,115,128,48,4,237,239,238,239,243,240,225,227,101,128,255,74,240,225,242,229,110,128,36,165,243,245,240,229,242,233,239,114,128,2,178,107,146,0,107,111,95,113,184,113,195,114,1,114,12,114,102,114,116,115,224,116,164,116,177,116,203,116,252,117,134,117,156,117,169,117,192,117,234,117,244,97,12,111,121,111,153,111,175,111,205,112,63,112,88,112,118,112,143,112,249,113,7,113,130,113,159],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+30720);allocate([98,2,111,127,111,144,225,243,232,235,233,242,227,249,242,233,236,236,233,99,128,4,161,229,238,231,225,236,105,128,9,149,99,2,111,159,111,165,245,244,101,128,30,49,249,242,233,236,236,233,99,128,4,58,228,101,2,111,182,111,200,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,155,246,97,128,9,21,102,135,5,219,111,223,111,232,111,252,112,10,112,19,112,35,112,50,225,242,225,226,233,99,128,6,67,228,225,231,229,243,104,129,251,59,111,243,232,229,226,242,229,119,128,251,59,230,233,238,225,236,225,242,225,226,233,99,128,254,218,232,229,226,242,229,119,128,5,219,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,219,237,229,228,233,225,236,225,242,225,226,233,99,128,254,220,242,225,230,229,232,229,226,242,229,119,128,251,77,231,117,2,112,70,112,79,234,225,242,225,244,105,128,10,149,242,237,245,235,232,105,128,10,21,104,2,112,94,112,104,233,242,225,231,225,238,97,128,48,75,239,239,235,227,249,242,233,236,236,233,99,128,4,196,235,225,244,225,235,225,238,97,129,48,171,112,131,232,225,236,230,247,233,228,244,104,128,255,118,112,2,112,149,112,170,240,97,129,3,186,112,156,243,249,237,226,239,236,231,242,229,229,107,128,3,240,249,229,239,245,110,3,112,182,112,196,112,230,237,233,229,245,237,235,239,242,229,225,110,128,49,113,112,2,112,202,112,217,232,233,229,245,240,232,235,239,242,229,225,110,128,49,132,233,229,245,240,235,239,242,229,225,110,128,49,120,243,243,225,238,231,240,233,229,245,240,235,239,242,229,225,110,128,49,121,242,239,242,233,233,243,241,245,225,242,101,128,51,13,115,5,113,19,113,63,113,78,113,86,113,114,232,233,228,225,225,245,244,111,2,113,32,113,41,225,242,225,226,233,99,128,6,64,238,239,243,233,228,229,226,229,225,242,233,238,231,225,242,225,226,233,99,128,6,64,237,225,236,236,235,225,244,225,235,225,238,97,128,48,245,241,245,225,242,101,128,51,132,242,97,2,113,93,113,102,225,242,225,226,233,99,128,6,80,244,225,238,225,242,225,226,233,99,128,6,77,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,159,244,225,232,233,242,225,240,242,239,236,239,238,231,237,225,242,235,232,225,236,230,247,233,228,244,104,128,255,112,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,157,226,239,240,239,237,239,230,111,128,49,14,99,4,113,205,113,227,113,236,113,244,97,2,113,211,113,221,236,243,241,245,225,242,101,128,51,137,242,239,110,128,1,233,229,228,233,236,236,97,128,1,55,233,242,227,236,101,128,36,218,239,237,237,225,225,227,227,229,238,116,128,1,55,228,239,244,226,229,236,239,119,128,30,51,101,4,114,22,114,49,114,74,114,86,104,2,114,28,114,39,225,242,237,229,238,233,225,110,128,5,132,233,242,225,231,225,238,97,128,48,81,235,225,244,225,235,225,238,97,129,48,177,114,62,232,225,236,230,247,233,228,244,104,128,255,121,238,225,242,237,229,238,233,225,110,128,5,111,243,237,225,236,236,235,225,244,225,235,225,238,97,128,48,246,231,242,229,229,238,236,225,238,228,233,99,128,1,56,104,6,114,130,115,3,115,14,115,39,115,126,115,214,97,5,114,142,114,152,114,163,114,170,114,195,226,229,238,231,225,236,105,128,9,150,227,249,242,233,236,236,233,99,128,4,69,228,229,246,97,128,9,22,231,117,2,114,177,114,186,234,225,242,225,244,105,128,10,150,242,237,245,235,232,105,128,10,22,104,4,114,205,114,214,114,228,114,244,225,242,225,226,233,99,128,6,46,230,233,238,225,236,225,242,225,226,233,99,128,254,166,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,167,237,229,228,233,225,236,225,242,225,226,233,99,128,254,168,229,233,227,239,240,244,233,99,128,3,231,232,97,2,115,21,115,28,228,229,246,97,128,9,89,231,245,242,237,245,235,232,105,128,10,89,233,229,245,235,104,4,115,53,115,88,115,103,115,112,97,2,115,59,115,74,227,233,242,227,236,229,235,239,242,229,225,110,128,50,120,240,225,242,229,238,235,239,242,229,225,110,128,50,24,227,233,242,227,236,229,235,239,242,229,225,110,128,50,106,235,239,242,229,225,110,128,49,75,240,225,242,229,238,235,239,242,229,225,110,128,50,10,111,4,115,136,115,185,115,195,115,200,235,104,4,115,147,115,156,115,165,115,175,225,233,244,232,225,105,128,14,2,239,238,244,232,225,105,128,14,5,245,225,244,244,232,225,105,128,14,3,247,225,233,244,232,225,105,128,14,4,237,245,244,244,232,225,105,128,14,91,239,107,128,1,153,242,225,235,232,225,238,231,244,232,225,105,128,14,6,250,243,241,245,225,242,101,128,51,145,105,4,115,234,115,245,116,14,116,63,232,233,242,225,231,225,238,97,128,48,77,235,225,244,225,235,225,238,97,129,48,173,116,2,232,225,236,230,247,233,228,244,104,128,255,119,242,111,3,116,23,116,38,116,54,231,245,242,225,237,245,243,241,245,225,242,101,128,51,21,237,229,229,244,239,242,245,243,241,245,225,242,101,128,51,22,243,241,245,225,242,101,128,51,20,249,229,239,107,5,116,78,116,113,116,128,116,137,116,151,97,2,116,84,116,99,227,233,242,227,236,229,235,239,242,229,225,110,128,50,110,240,225,242,229,238,235,239,242,229,225,110,128,50,14,227,233,242,227,236,229,235,239,242,229,225,110,128,50,96,235,239,242,229,225,110,128,49,49,240,225,242,229,238,235,239,242,229,225,110,128,50,0,243,233,239,243,235,239,242,229,225,110,128,49,51,234,229,227,249,242,233,236,236,233,99,128,4,92,108,2,116,183,116,194,233,238,229,226,229,236,239,119,128,30,53,243,241,245,225,242,101,128,51,152,109,3,116,211,116,225,116,236,227,245,226,229,228,243,241,245,225,242,101,128,51,166,239,238,239,243,240,225,227,101,128,255,75,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,162,111,5,117,8,117,34,117,72,117,84,117,98,104,2,117,14,117,24,233,242,225,231,225,238,97,128,48,83,237,243,241,245,225,242,101,128,51,192,235,97,2,117,41,117,49,233,244,232,225,105,128,14,1,244,225,235,225,238,97,129,48,179,117,60,232,225,236,230,247,233,228,244,104,128,255,122,239,240,239,243,241,245,225,242,101,128,51,30,240,240,225,227,249,242,233,236,236,233,99,128,4,129,114,2,117,104,117,124,229,225,238,243,244,225,238,228,225,242,228,243,249,237,226,239,108,128,50,127,239,238,233,243,227,237,98,128,3,67,240,97,2,117,141,117,147,242,229,110,128,36,166,243,241,245,225,242,101,128,51,170,243,233,227,249,242,233,236,236,233,99,128,4,111,116,2,117,175,117,184,243,241,245,225,242,101,128,51,207,245,242,238,229,100,128,2,158,117,2,117,198,117,209,232,233,242,225,231,225,238,97,128,48,79,235,225,244,225,235,225,238,97,129,48,175,117,222,232,225,236,230,247,233,228,244,104,128,255,120,246,243,241,245,225,242,101,128,51,184,247,243,241,245,225,242,101,128,51,190,108,146,0,108,118,38,120,65,120,94,120,160,120,198,121,94,121,103,121,119,121,143,121,161,122,23,122,64,122,199,122,207,122,240,122,249,123,1,123,63,97,7,118,54,118,64,118,71,118,78,118,103,118,119,120,53,226,229,238,231,225,236,105,128,9,178,227,245,244,101,128,1,58,228,229,246,97,128,9,50,231,117,2,118,85,118,94,234,225,242,225,244,105,128,10,178,242,237,245,235,232,105,128,10,50,235,235,232,225,238,231,249,225,239,244,232,225,105,128,14,69,109,10,118,141,119,80,119,97,119,135,119,149,119,168,119,184,119,204,119,224,119,247,97,2,118,147,119,72,236,229,102,4,118,159,118,173,119,9,119,26,230,233,238,225,236,225,242,225,226,233,99,128,254,252,232,225,237,250,97,2,118,183,118,224,225,226,239,246,101,2,118,193,118,207,230,233,238,225,236,225,242,225,226,233,99,128,254,248,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,247,226,229,236,239,119,2,118,234,118,248,230,233,238,225,236,225,242,225,226,233,99,128,254,250,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,249,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,251,237,225,228,228,225,225,226,239,246,101,2,119,41,119,55,230,233,238,225,236,225,242,225,226,233,99,128,254,246,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,245,242,225,226,233,99,128,6,68,226,228,97,129,3,187,119,88,243,244,242,239,235,101,128,1,155,229,100,130,5,220,119,106,119,126,228,225,231,229,243,104,129,251,60,119,117,232,229,226,242,229,119,128,251,60,232,229,226,242,229,119,128,5,220,230,233,238,225,236,225,242,225,226,233,99,128,254,222,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,202,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,223,234,229,229,237,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,201,235,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,203,236,225,237,232,229,232,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,253,242,237,101,2,119,254,120,11,228,233,225,236,225,242,225,226,233,99,128,254,224,229,109,2,120,18,120,37,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,253,136,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,204,242,231,229,227,233,242,227,236,101,128,37,239,98,3,120,73,120,78,120,84,225,114,128,1,154,229,236,116,128,2,108,239,240,239,237,239,230,111,128,49,12,99,4,120,104,120,111,120,120,120,147,225,242,239,110,128,1,62,229,228,233,236,236,97,128,1,60,233,242,99,2,120,128,120,133,236,101,128,36,219,245,237,230,236,229,248,226,229,236,239,119,128,30,61,239,237,237,225,225,227,227,229,238,116,128,1,60,228,239,116,130,1,64,120,170,120,179,225,227,227,229,238,116,128,1,64,226,229,236,239,119,129,30,55,120,189,237,225,227,242,239,110,128,30,57,101,3,120,206,120,244,121,89,230,116,2,120,213,120,229,225,238,231,236,229,225,226,239,246,229,227,237,98,128,3,26,244,225,227,235,226,229,236,239,247,227,237,98,128,3,24,243,115,132,0,60,121,1,121,23,121,35,121,81,229,241,245,225,108,129,34,100,121,11,239,242,231,242,229,225,244,229,114,128,34,218,237,239,238,239,243,240,225,227,101,128,255,28,111,2,121,41,121,70,114,2,121,47,121,60,229,241,245,233,246,225,236,229,238,116,128,34,114,231,242,229,225,244,229,114,128,34,118,246,229,242,229,241,245,225,108,128,34,102,243,237,225,236,108,128,254,100,250,104,128,2,110,230,226,236,239,227,107,128,37,140,232,239,239,235,242,229,244,242,239,230,236,229,120,128,2,109,105,2,121,125,121,130,242,97,128,32,164,247,238,225,242,237,229,238,233,225,110,128,5,108,106,129,1,201,121,149,229,227,249,242,233,236,236,233,99,128,4,89,108,132,246,192,121,173,121,197,121,208,121,217,97,2,121,179,121,186,228,229,246,97,128,9,51,231,245,234,225,242,225,244,105,128,10,179,233,238,229,226,229,236,239,119,128,30,59,236,225,228,229,246,97,128,9,52,246,239,227,225,236,233,99,3,121,231,121,241,121,248,226,229,238,231,225,236,105,128,9,225,228,229,246,97,128,9,97,246,239,247,229,236,243,233,231,110,2,122,6,122,16,226,229,238,231,225,236,105,128,9,227,228,229,246,97,128,9,99,109,3,122,31,122,44,122,55,233,228,228,236,229,244,233,236,228,101,128,2,107,239,238,239,243,240,225,227,101,128,255,76,243,241,245,225,242,101,128,51,208,111,6,122,78,122,90,122,132,122,143,122,149,122,191,227,232,245,236,225,244,232,225,105,128,14,44,231,233,227,225,108,3,122,102,122,108,122,127,225,238,100,128,34,39,238,239,116,129,0,172,122,116,242,229,246,229,242,243,229,100,128,35,16,239,114,128,34,40,236,233,238,231,244,232,225,105,128,14,37,238,231,115,128,1,127,247,236,233,238,101,2,122,159,122,182,99,2,122,165,122,177,229,238,244,229,242,236,233,238,101,128,254,78,237,98,128,3,50,228,225,243,232,229,100,128,254,77,250,229,238,231,101,128,37,202,240,225,242,229,110,128,36,167,115,3,122,215,122,222,122,230,236,225,243,104,128,1,66,241,245,225,242,101,128,33,19,245,240,229,242,233,239,114,128,246,238,244,243,232,225,228,101,128,37,145,245,244,232,225,105,128,14,38,246,239,227,225,236,233,99,3,123,15,123,25,123,32,226,229,238,231,225,236,105,128,9,140,228,229,246,97,128,9,12,246,239,247,229,236,243,233,231,110,2,123,46,123,56,226,229,238,231,225,236,105,128,9,226,228,229,246,97,128,9,98,248,243,241,245,225,242,101,128,51,211,109,144,0,109,123,109,125,218,125,243,126,14,126,39,127,92,127,114,128,169,128,199,128,248,129,99,129,121,129,146,129,155,130,182,130,210,97,12,123,135,123,145,123,209,123,216,123,241,124,33,125,125,125,150,125,155,125,169,125,181,125,186,226,229,238,231,225,236,105,128,9,174,99,2,123,151,123,203,242,239,110,132,0,175,123,165,123,176,123,182,123,191,226,229,236,239,247,227,237,98,128,3,49,227,237,98,128,3,4,236,239,247,237,239,100,128,2,205,237,239,238,239,243,240,225,227,101,128,255,227,245,244,101,128,30,63,228,229,246,97,128,9,46,231,117,2,123,223,123,232,234,225,242,225,244,105,128,10,174,242,237,245,235,232,105,128,10,46,104,2,123,247,124,23,225,240,225,235,104,2,124,1,124,10,232,229,226,242,229,119,128,5,164,236,229,230,244,232,229,226,242,229,119,128,5,164,233,242,225,231,225,238,97,128,48,126,105,5,124,45,124,114,124,177,124,207,125,113,227,232,225,244,244,225,247,97,3,124,60,124,91,124,98,236,239,119,2,124,68,124,79,236,229,230,244,244,232,225,105,128,248,149,242,233,231,232,244,244,232,225,105,128,248,148,244,232,225,105,128,14,75,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,147,229,107,3,124,123,124,154,124,161,236,239,119,2,124,131,124,142,236,229,230,244,244,232,225,105,128,248,140,242,233,231,232,244,244,232,225,105,128,248,139,244,232,225,105,128,14,72,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,138,232,225,238,225,235,225,116,2,124,189,124,200,236,229,230,244,244,232,225,105,128,248,132,244,232,225,105,128,14,49,116,3,124,215,124,243,125,50,225,233,235,232,117,2,124,225,124,236,236,229,230,244,244,232,225,105,128,248,137,244,232,225,105,128,14,71,232,111,3,124,252,125,27,125,34,236,239,119,2,125,4,125,15,236,229,230,244,244,232,225,105,128,248,143,242,233,231,232,244,244,232,225,105,128,248,142,244,232,225,105,128,14,73,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,141,242,105,3,125,59,125,90,125,97,236,239,119,2,125,67,125,78,236,229,230,244,244,232,225,105,128,248,146,242,233,231,232,244,244,232,225,105,128,248,145,244,232,225,105,128,14,74,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,144,249,225,237,239,235,244,232,225,105,128,14,70,235,225,244,225,235,225,238,97,129,48,222,125,138,232,225,236,230,247,233,228,244,104,128,255,143,236,101,128,38,66,238,243,249,239,238,243,241,245,225,242,101,128,51,71,241,225,230,232,229,226,242,229,119,128,5,190,242,115,128,38,66,115,2,125,192,125,210,239,242,225,227,233,242,227,236,229,232,229,226,242,229,119,128,5,175,241,245,225,242,101,128,51,131,98,2,125,224,125,234,239,240,239,237,239,230,111,128,49,7,243,241,245,225,242,101,128,51,212,99,2,125,249,126,1,233,242,227,236,101,128,36,220,245,226,229,228,243,241,245,225,242,101,128,51,165,228,239,116,2,126,22,126,31,225,227,227,229,238,116,128,30,65,226,229,236,239,119,128,30,67,101,7,126,55,126,182,126,193,126,208,126,233,127,14,127,26,101,2,126,61,126,169,109,4,126,71,126,80,126,94,126,110,225,242,225,226,233,99,128,6,69,230,233,238,225,236,225,242,225,226,233,99,128,254,226,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,227,237,101,2,126,117,126,130,228,233,225,236,225,242,225,226,233,99,128,254,228,229,237,105,2,126,138,126,153,238,233,244,233,225,236,225,242,225,226,233,99,128,252,209,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,72,244,239,242,245,243,241,245,225,242,101,128,51,77,232,233,242,225,231,225,238,97,128,48,129,233,250,233,229,242,225,243,241,245,225,242,101,128,51,126,235,225,244,225,235,225,238,97,129,48,225,126,221,232,225,236,230,247,233,228,244,104,128,255,146,109,130,5,222,126,241,127,5,228,225,231,229,243,104,129,251,62,126,252,232,229,226,242,229,119,128,251,62,232,229,226,242,229,119,128,5,222,238,225,242,237,229,238,233,225,110,128,5,116,242,235,232,97,3,127,37,127,46,127,79,232,229,226,242,229,119,128,5,165,235,229,230,245,236,97,2,127,57,127,66,232,229,226,242,229,119,128,5,166,236,229,230,244,232,229,226,242,229,119,128,5,166,236,229,230,244,232,229,226,242,229,119,128,5,165,104,2,127,98,127,104,239,239,107,128,2,113,250,243,241,245,225,242,101,128,51,146,105,6,127,128,127,165,128,46,128,57,128,82,128,139,228,100,2,127,135,127,160,236,229,228,239,244,235,225,244,225,235,225,238,225,232,225,236,230,247,233,228,244,104,128,255,101,239,116,128,0,183,229,245,109,5,127,179,127,214,127,229,127,238,128,33,97,2,127,185,127,200,227,233,242,227,236,229,235,239,242,229,225,110,128,50,114,240,225,242,229,238,235,239,242,229,225,110,128,50,18,227,233,242,227,236,229,235,239,242,229,225,110,128,50,100,235,239,242,229,225,110,128,49,65,112,2,127,244,128,20,97,2,127,250,128,8,238,243,233,239,243,235,239,242,229,225,110,128,49,112,242,229,238,235,239,242,229,225,110,128,50,4,233,229,245,240,235,239,242,229,225,110,128,49,110,243,233,239,243,235,239,242,229,225,110,128,49,111,232,233,242,225,231,225,238,97,128,48,127,235,225,244,225,235,225,238,97,129,48,223,128,70,232,225,236,230,247,233,228,244,104,128,255,144,238,117,2,128,89,128,134,115,132,34,18,128,101,128,112,128,121,128,127,226,229,236,239,247,227,237,98,128,3,32,227,233,242,227,236,101,128,34,150,237,239,100,128,2,215,240,236,245,115,128,34,19,244,101,128,32,50,242,105,2,128,146,128,160,226,225,225,242,245,243,241,245,225,242,101,128,51,74,243,241,245,225,242,101,128,51,73,108,2,128,175,128,190,239,238,231,236,229,231,244,245,242,238,229,100,128,2,112,243,241,245,225,242,101,128,51,150,109,3,128,207,128,221,128,232,227,245,226,229,228,243,241,245,225,242,101,128,51,163,239,238,239,243,240,225,227,101,128,255,77,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,159,111,5,129,4,129,30,129,55,129,65,129,74,104,2,129,10,129,20,233,242,225,231,225,238,97,128,48,130,237,243,241,245,225,242,101,128,51,193,235,225,244,225,235,225,238,97,129,48,226,129,43,232,225,236,230,247,233,228,244,104,128,255,147,236,243,241,245,225,242,101,128,51,214,237,225,244,232,225,105,128,14,33,246,229,242,243,243,241,245,225,242,101,129,51,167,129,89,228,243,241,245,225,242,101,128,51,168,240,97,2,129,106,129,112,242,229,110,128,36,168,243,241,245,225,242,101,128,51,171,115,2,129,127,129,136,243,241,245,225,242,101,128,51,179,245,240,229,242,233,239,114,128,246,239,244,245,242,238,229,100,128,2,111,117,141,0,181,129,185,129,189,129,199,129,223,129,233,129,255,130,10,130,35,130,58,130,68,130,98,130,162,130,172,49,128,0,181,225,243,241,245,225,242,101,128,51,130,227,104,2,129,206,129,216,231,242,229,225,244,229,114,128,34,107,236,229,243,115,128,34,106,230,243,241,245,225,242,101,128,51,140,103,2,129,239,129,246,242,229,229,107,128,3,188,243,241,245,225,242,101,128,51,141,232,233,242,225,231,225,238,97,128,48,128,235,225,244,225,235,225,238,97,129,48,224,130,23,232,225,236,230,247,233,228,244,104,128,255,145,108,2,130,41,130,50,243,241,245,225,242,101,128,51,149,244,233,240,236,121,128,0,215,237,243,241,245,225,242,101,128,51,155,238,225,104,2,130,76,130,85,232,229,226,242,229,119,128,5,163,236,229,230,244,232,229,226,242,229,119,128,5,163,115,2,130,104,130,153,233,99,3,130,113,130,130,130,141,225,236,238,239,244,101,129,38,106,130,124,228,226,108,128,38,107,230,236,225,244,243,233,231,110,128,38,109,243,232,225,242,240,243,233,231,110,128,38,111,243,241,245,225,242,101,128,51,178,246,243,241,245,225,242,101,128,51,182,247,243,241,245,225,242,101,128,51,188,118,2,130,188,130,201,237,229,231,225,243,241,245,225,242,101,128,51,185,243,241,245,225,242,101,128,51,183,119,2,130,216,130,229,237,229,231,225,243,241,245,225,242,101,128,51,191,243,241,245,225,242,101,128,51,189,110,150,0,110,131,30,131,164,131,188,131,254,132,23,132,81,132,91,132,158,132,201,134,235,134,253,135,22,135,53,135,79,135,144,137,126,137,134,137,159,137,167,138,135,138,145,138,155,97,8,131,48,131,68,131,75,131,82,131,107,131,118,131,143,131,155,98,2,131,54,131,63,229,238,231,225,236,105,128,9,168,236,97,128,34,7,227,245,244,101,128,1,68,228,229,246,97,128,9,40,231,117,2,131,89,131,98,234,225,242,225,244,105,128,10,168,242,237,245,235,232,105,128,10,40,232,233,242,225,231,225,238,97,128,48,106,235,225,244,225,235,225,238,97,129,48,202,131,131,232,225,236,230,247,233,228,244,104,128,255,133,240,239,243,244,242,239,240,232,101,128,1,73,243,241,245,225,242,101,128,51,129,98,2,131,170,131,180,239,240,239,237,239,230,111,128,49,11,243,240,225,227,101,128,0,160,99,4,131,198,131,205,131,214,131,241,225,242,239,110,128,1,72,229,228,233,236,236,97,128,1,70,233,242,99,2,131,222,131,227,236,101,128,36,221,245,237,230,236,229,248,226,229,236,239,119,128,30,75,239,237,237,225,225,227,227,229,238,116,128,1,70,228,239,116,2,132,6,132,15,225,227,227,229,238,116,128,30,69,226,229,236,239,119,128,30,71,101,3,132,31,132,42,132,67,232,233,242,225,231,225,238,97,128,48,109,235,225,244,225,235,225,238,97,129,48,205,132,55,232,225,236,230,247,233,228,244,104,128,255,136,247,243,232,229,241,229,236,243,233,231,110,128,32,170,230,243,241,245,225,242,101,128,51,139,103,2,132,97,132,147,97,3,132,105,132,115,132,122,226,229,238,231,225,236,105,128,9,153,228,229,246,97,128,9,25,231,117,2,132,129,132,138,234,225,242,225,244,105,128,10,153,242,237,245,235,232,105,128,10,25,239,238,231,245,244,232,225,105,128,14,7,104,2,132,164,132,174,233,242,225,231,225,238,97,128,48,147,239,239,107,2,132,182,132,189,236,229,230,116,128,2,114,242,229,244,242,239,230,236,229,120,128,2,115,105,4,132,211,133,124,133,135,133,193,229,245,110,7,132,229,133,8,133,40,133,54,133,63,133,96,133,109,97,2,132,235,132,250,227,233,242,227,236,229,235,239,242,229,225,110,128,50,111,240,225,242,229,238,235,239,242,229,225,110,128,50,15,227,105,2,133,15,133,27,229,245,227,235,239,242,229,225,110,128,49,53,242,227,236,229,235,239,242,229,225,110,128,50,97,232,233,229,245,232,235,239,242,229,225,110,128,49,54,235,239,242,229,225,110,128,49,52,240,97,2,133,70,133,84,238,243,233,239,243,235,239,242,229,225,110,128,49,104,242,229,238,235,239,242,229,225,110,128,50,1,243,233,239,243,235,239,242,229,225,110,128,49,103,244,233,235,229,245,244,235,239,242,229,225,110,128,49,102,232,233,242,225,231,225,238,97,128,48,107,107,2,133,141,133,165,225,244,225,235,225,238,97,129,48,203,133,153,232,225,236,230,247,233,228,244,104,128,255,134,232,225,232,233,116,2,133,175,133,186,236,229,230,244,244,232,225,105,128,248,153,244,232,225,105,128,14,77,238,101,141,0,57,133,224,133,233,133,243,134,17,134,24,134,49,134,76,134,110,134,122,134,133,134,166,134,174,134,185,225,242,225,226,233,99,128,6,105,226,229,238,231,225,236,105,128,9,239,227,233,242,227,236,101,129,36,104,133,254,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,146,228,229,246,97,128,9,111,231,117,2,134,31,134,40,234,225,242,225,244,105,128,10,239,242,237,245,235,232,105,128,10,111,232,97,2,134,56,134,67,227,235,225,242,225,226,233,99,128,6,105,238,231,250,232,239,117,128,48,41,105,2,134,82,134,100,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,40,238,230,229,242,233,239,114,128,32,137,237,239,238,239,243,240,225,227,101,128,255,25,239,236,228,243,244,249,236,101,128,247,57,112,2,134,139,134,146,225,242,229,110,128,36,124,229,114,2,134,153,134,159,233,239,100,128,36,144,243,233,225,110,128,6,249,242,239,237,225,110,128,33,120,243,245,240,229,242,233,239,114,128,32,121,116,2,134,191,134,229,229,229,110,2,134,199,134,208,227,233,242,227,236,101,128,36,114,112,2,134,214,134,221,225,242,229,110,128,36,134,229,242,233,239,100,128,36,154,232,225,105,128,14,89,106,129,1,204,134,241,229,227,249,242,233,236,236,233,99,128,4,90,235,225,244,225,235,225,238,97,129,48,243,135,10,232,225,236,230,247,233,228,244,104,128,255,157,108,2,135,28,135,42,229,231,242,233,231,232,244,236,239,238,103,128,1,158,233,238,229,226,229,236,239,119,128,30,73,109,2,135,59,135,70,239,238,239,243,240,225,227,101,128,255,78,243,241,245,225,242,101,128,51,154,110,2,135,85,135,135,97,3,135,93,135,103,135,110,226,229,238,231,225,236,105,128,9,163,228,229,246,97,128,9,35,231,117,2,135,117,135,126,234,225,242,225,244,105,128,10,163,242,237,245,235,232,105,128,10,35,238,225,228,229,246,97,128,9,41,111,6,135,158,135,169,135,194,135,235,136,187,137,114,232,233,242,225,231,225,238,97,128,48,110,235,225,244,225,235,225,238,97,129,48,206,135,182,232,225,236,230,247,233,228,244,104,128,255,137,110,3,135,202,135,218,135,227,226,242,229,225,235,233,238,231,243,240,225,227,101,128,0,160,229,238,244,232,225,105,128,14,19,245,244,232,225,105,128,14,25,239,110,7,135,252,136,5,136,19,136,53,136,69,136,110,136,169,225,242,225,226,233,99,128,6,70,230,233,238,225,236,225,242,225,226,233,99,128,254,230,231,232,245,238,238,97,2,136,30,136,39,225,242,225,226,233,99,128,6,186,230,233,238,225,236,225,242,225,226,233,99,128,251,159,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,231,234,229,229,237,105,2,136,79,136,94,238,233,244,233,225,236,225,242,225,226,233,99,128,252,210,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,75,237,101,2,136,117,136,130,228,233,225,236,225,242,225,226,233,99,128,254,232,229,237,105,2,136,138,136,153,238,233,244,233,225,236,225,242,225,226,233,99,128,252,213,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,78,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,141,116,7,136,203,136,214,136,243,137,22,137,34,137,54,137,80,227,239,238,244,225,233,238,115,128,34,12,101,2,136,220,136,236,236,229,237,229,238,116,129,34,9,136,231,239,102,128,34,9,241,245,225,108,128,34,96,231,242,229,225,244,229,114,129,34,111,136,255,238,239,114,2,137,7,137,15,229,241,245,225,108,128,34,113,236,229,243,115,128,34,121,233,228,229,238,244,233,227,225,108,128,34,98,236,229,243,115,129,34,110,137,43,238,239,242,229,241,245,225,108,128,34,112,112,2,137,60,137,70,225,242,225,236,236,229,108,128,34,38,242,229,227,229,228,229,115,128,34,128,243,117,3,137,89,137,96,137,105,226,243,229,116,128,34,132,227,227,229,229,228,115,128,34,129,240,229,242,243,229,116,128,34,133,247,225,242,237,229,238,233,225,110,128,5,118,240,225,242,229,110,128,36,169,115,2,137,140,137,149,243,241,245,225,242,101,128,51,177,245,240,229,242,233,239,114,128,32,127,244,233,236,228,101,128,0,241,117,132,3,189,137,179,137,190,138,15,138,98,232,233,242,225,231,225,238,97,128,48,108,107,2,137,196,137,220,225,244,225,235,225,238,97,129,48,204,137,208,232,225,236,230,247,233,228,244,104,128,255,135,244,97,3,137,229,137,239,137,246,226,229,238,231,225,236,105,128,9,188,228,229,246,97,128,9,60,231,117,2,137,253,138,6,234,225,242,225,244,105,128,10,188,242,237,245,235,232,105,128,10,60,109,2,138,21,138,55,226,229,242,243,233,231,110,130,0,35,138,35,138,47,237,239,238,239,243,240,225,227,101,128,255,3,243,237,225,236,108,128,254,95,229,114,2,138,62,138,94,225,236,243,233,231,110,2,138,73,138,81,231,242,229,229,107,128,3,116,236,239,247,229,242,231,242,229,229,107,128,3,117,111,128,33,22,110,130,5,224,138,106,138,126,228,225,231,229,243,104,129,251,64,138,117,232,229,226,242,229,119,128,251,64,232,229,226,242,229,119,128,5,224,246,243,241,245,225,242,101,128,51,181,247,243,241,245,225,242,101,128,51,187,249,97,3,138,164,138,174,138,181,226,229,238,231,225,236,105,128,9,158,228,229,246,97,128,9,30,231,117,2,138,188,138,197,234,225,242,225,244,105,128,10,158,242,237,245,235,232,105,128,10,30,111,147,0,111,138,248,139,14,139,92,140,6,140,78,140,93,140,133,141,0,141,21,141,59,141,70,141,248,143,82,143,146,143,179,143,225,144,98,144,145,144,157,97,2,138,254,139,5,227,245,244,101,128,0,243,238,231,244,232,225,105,128,14,45,98,4,139,24,139,66,139,75,139,85,225,242,242,229,100,130,2,117,139,36,139,47,227,249,242,233,236,236,233,99,128,4,233,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,235,229,238,231,225,236,105,128,9,147,239,240,239,237,239,230,111,128,49,27,242,229,246,101,128,1,79,99,3,139,100,139,173,139,252,97,2,139,106,139,167,238,228,242,97,3,139,117,139,124,139,135,228,229,246,97,128,9,17,231,245,234,225,242,225,244,105,128,10,145,246,239,247,229,236,243,233,231,110,2,139,149,139,156,228,229,246,97,128,9,73,231,245,234,225,242,225,244,105,128,10,201,242,239,110,128,1,210,233,242,99,2,139,181,139,186,236,101,128,36,222,245,237,230,236,229,120,133,0,244,139,205,139,213,139,224,139,232,139,244,225,227,245,244,101,128,30,209,228,239,244,226,229,236,239,119,128,30,217,231,242,225,246,101,128,30,211,232,239,239,235,225,226,239,246,101,128,30,213,244,233,236,228,101,128,30,215,249,242,233,236,236,233,99,128,4,62,100,4,140,16,140,39,140,45,140,68,226,108,2,140,23,140,31,225,227,245,244,101,128,1,81,231,242,225,246,101,128,2,13,229,246,97,128,9,19,233,229,242,229,243,233,115,129,0,246,140,57,227,249,242,233,236,236,233,99,128,4,231,239,244,226,229,236,239,119,128,30,205,101,129,1,83,140,84,235,239,242,229,225,110,128,49,90,103,3,140,101,140,116,140,123,239,238,229,107,129,2,219,140,110,227,237,98,128,3,40,242,225,246,101,128,0,242,245,234,225,242,225,244,105,128,10,147,104,4,140,143,140,154,140,164,140,242,225,242,237,229,238,233,225,110,128,5,133,233,242,225,231,225,238,97,128,48,74,111,2,140,170,140,180,239,235,225,226,239,246,101,128,30,207,242,110,133,1,161,140,195,140,203,140,214,140,222,140,234,225,227,245,244,101,128,30,219,228,239,244,226,229,236,239,119,128,30,227,231,242,225,246,101,128,30,221,232,239,239,235,225,226,239,246,101,128,30,223,244,233,236,228,101,128,30,225,245,238,231,225,242,245,237,236,225,245,116,128,1,81,105,129,1,163,141,6,238,246,229,242,244,229,228,226,242,229,246,101,128,2,15,107,2,141,27,141,51,225,244,225,235,225,238,97,129,48,170,141,39,232,225,236,230,247,233,228,244,104,128,255,117,239,242,229,225,110,128,49,87,236,229,232,229,226,242,229,119,128,5,171,109,6,141,84,141,112,141,119,141,208,141,219,141,237,225,227,242,239,110,130,1,77,141,96,141,104,225,227,245,244,101,128,30,83,231,242,225,246,101,128,30,81,228,229,246,97,128,9,80,229,231,97,133,3,201,141,135,141,139,141,150,141,164,141,180,49,128,3,214,227,249,242,233,236,236,233,99,128,4,97,236,225,244,233,238,227,236,239,243,229,100,128,2,119,242,239,245,238,228,227,249,242,233,236,236,233,99,128,4,123,116,2,141,186,141,201,233,244,236,239,227,249,242,233,236,236,233,99,128,4,125,239,238,239,115,128,3,206,231,245,234,225,242,225,244,105,128,10,208,233,227,242,239,110,129,3,191,141,229,244,239,238,239,115,128,3,204,239,238,239,243,240,225,227,101,128,255,79,238,101,145,0,49,142,31,142,40,142,50,142,80,142,105,142,114,142,123,142,148,142,182,142,216,142,228,142,247,143,2,143,35,143,45,143,53,143,64,225,242,225,226,233,99,128,6,97,226,229,238,231,225,236,105,128,9,231,227,233,242,227,236,101,129,36,96,142,61,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,138,100,2,142,86,142,92,229,246,97,128,9,103,239,244,229,238,236,229,225,228,229,114,128,32,36,229,233,231,232,244,104,128,33,91,230,233,244,244,229,100,128,246,220,231,117,2,142,130,142,139,234,225,242,225,244,105,128,10,231,242,237,245,235,232,105,128,10,103,232,97,3,142,157,142,168,142,173,227,235,225,242,225,226,233,99,128,6,97,236,102,128,0,189,238,231,250,232,239,117,128,48,33,105,2,142,188,142,206,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,32,238,230,229,242,233,239,114,128,32,129,237,239,238,239,243,240,225,227,101,128,255,17,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,244,239,236,228,243,244,249,236,101,128,247,49,112,2,143,8,143,15,225,242,229,110,128,36,116,229,114,2,143,22,143,28,233,239,100,128,36,136,243,233,225,110,128,6,241,241,245,225,242,244,229,114,128,0,188,242,239,237,225,110,128,33,112,243,245,240,229,242,233,239,114,128,0,185,244,104,2,143,71,143,76,225,105,128,14,81,233,242,100,128,33,83,111,3,143,90,143,124,143,140,103,2,143,96,143,114,239,238,229,107,129,1,235,143,105,237,225,227,242,239,110,128,1,237,245,242,237,245,235,232,105,128,10,19,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,75,240,229,110,128,2,84,112,3,143,154,143,161,143,172,225,242,229,110,128,36,170,229,238,226,245,236,236,229,116,128,37,230,244,233,239,110,128,35,37,114,2,143,185,143,214,100,2,143,191,143,202,230,229,237,233,238,233,238,101,128,0,170,237,225,243,227,245,236,233,238,101,128,0,186,244,232,239,231,239,238,225,108,128,34,31,115,5,143,237,144,13,144,30,144,75,144,88,232,239,242,116,2,143,246,143,253,228,229,246,97,128,9,18,246,239,247,229,236,243,233,231,238,228,229,246,97,128,9,74,236,225,243,104,129,0,248,144,22,225,227,245,244,101,128,1,255,237,225,236,108,2,144,39,144,50,232,233,242,225,231,225,238,97,128,48,73,235,225,244,225,235,225,238,97,129,48,169,144,63,232,225,236,230,247,233,228,244,104,128,255,107,244,242,239,235,229,225,227,245,244,101,128,1,255,245,240,229,242,233,239,114,128,246,240,116,2,144,104,144,115,227,249,242,233,236,236,233,99,128,4,127,233,236,228,101,130,0,245,144,126,144,134,225,227,245,244,101,128,30,77,228,233,229,242,229,243,233,115,128,30,79,245,226,239,240,239,237,239,230,111,128,49,33,118,2,144,163,144,244,229,114,2,144,170,144,236,236,233,238,101,131,32,62,144,183,144,206,144,229,99,2,144,189,144,201,229,238,244,229,242,236,233,238,101,128,254,74,237,98,128,3,5,100,2,144,212,144,220,225,243,232,229,100,128,254,73,226,236,247,225,246,121,128,254,76,247,225,246,121,128,254,75,243,227,239,242,101,128,0,175,239,247,229,236,243,233,231,110,3,145,3,145,13,145,20,226,229,238,231,225,236,105,128,9,203,228,229,246,97,128,9,75,231,245,234,225,242,225,244,105,128,10,203,112,145,0,112,145,69,147,197,147,208,147,217,147,229,149,154,149,164,150,156,151,175,152,9,152,35,152,166,152,174,153,76,153,134,153,162,153,172,97,14,145,99,145,131,145,141,145,148,145,155,145,203,145,214,145,228,145,239,146,30,146,44,147,56,147,95,147,185,97,2,145,105,145,117,237,240,243,243,241,245,225,242,101,128,51,128,243,229,238,244,239,243,241,245,225,242,101,128,51,43,226,229,238,231,225,236,105,128,9,170,227,245,244,101,128,30,85,228,229,246,97,128,9,42,103,2,145,161,145,179,101,2,145,167,145,174,228,239,247,110,128,33,223,245,112,128,33,222,117,2,145,185,145,194,234,225,242,225,244,105,128,10,170,242,237,245,235,232,105,128,10,42,232,233,242,225,231,225,238,97,128,48,113,233,249,225,238,238,239,233,244,232,225,105,128,14,47,235,225,244,225,235,225,238,97,128,48,209,108,2,145,245,146,14,225,244,225,236,233,250,225,244,233,239,238,227,249,242,233,236,236,233,227,227,237,98,128,4,132,239,227,232,235,225,227,249,242,233,236,236,233,99,128,4,192,238,243,233,239,243,235,239,242,229,225,110,128,49,127,114,3,146,52,146,73,147,45,97,2,146,58,146,66,231,242,225,240,104,128,0,182,236,236,229,108,128,34,37,229,110,2,146,80,146,190,236,229,230,116,136,0,40,146,103,146,118,146,123,146,128,146,139,146,151,146,174,146,179,225,236,244,239,238,229,225,242,225,226,233,99,128,253,62,226,116,128,248,237,229,120,128,248,236,233,238,230,229,242,233,239,114,128,32,141,237,239,238,239,243,240,225,227,101,128,255,8,115,2,146,157,146,164,237,225,236,108,128,254,89,245,240,229,242,233,239,114,128,32,125,244,112,128,248,235,246,229,242,244,233,227,225,108,128,254,53,242,233,231,232,116,136,0,41,146,214,146,229,146,234,146,239,146,250,147,6,147,29,147,34,225,236,244,239,238,229,225,242,225,226,233,99,128,253,63,226,116,128,248,248,229,120,128,248,247,233,238,230,229,242,233,239,114,128,32,142,237,239,238,239,243,240,225,227,101,128,255,9,115,2,147,12,147,19,237,225,236,108,128,254,90,245,240,229,242,233,239,114,128,32,126,244,112,128,248,246,246,229,242,244,233,227,225,108,128,254,54,244,233,225,236,228,233,230,102,128,34,2,115,3,147,64,147,75,147,87,229,241,232,229,226,242,229,119,128,5,192,232,244,225,232,229,226,242,229,119,128,5,153,241,245,225,242,101,128,51,169,244,225,104,134,5,183,147,113,147,127,147,132,147,141,147,156,147,172,49,2,147,119,147,123,49,128,5,183,100,128,5,183,178,97,128,5,183,232,229,226,242,229,119,128,5,183,238,225,242,242,239,247,232,229,226,242,229,119,128,5,183,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,183,247,233,228,229,232,229,226,242,229,119,128,5,183,250,229,242,232,229,226,242,229,119,128,5,161,226,239,240,239,237,239,230,111,128,49,6,227,233,242,227,236,101,128,36,223,228,239,244,225,227,227,229,238,116,128,30,87,101,137,5,228,147,251,148,6,148,26,148,38,148,58,148,160,148,171,148,192,149,147,227,249,242,233,236,236,233,99,128,4,63,228,225,231,229,243,104,129,251,68,148,17,232,229,226,242,229,119,128,251,68,229,250,233,243,241,245,225,242,101,128,51,59,230,233,238,225,236,228,225,231,229,243,232,232,229,226,242,229,119,128,251,67,104,5,148,70,148,93,148,101,148,115,148,145,225,114,2,148,77,148,84,225,226,233,99,128,6,126,237,229,238,233,225,110,128,5,122,229,226,242,229,119,128,5,228,230,233,238,225,236,225,242,225,226,233,99,128,251,87,105,2,148,121,148,136,238,233,244,233,225,236,225,242,225,226,233,99,128,251,88,242,225,231,225,238,97,128,48,122,237,229,228,233,225,236,225,242,225,226,233,99,128,251,89,235,225,244,225,235,225,238,97,128,48,218,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,167,114,5,148,204,148,216,149,2,149,123,149,136,225,230,229,232,229,226,242,229,119,128,251,78,227,229,238,116,131,0,37,148,229,148,238,148,250,225,242,225,226,233,99,128,6,106,237,239,238,239,243,240,225,227,101,128,255,5,243,237,225,236,108,128,254,106,105,2,149,8,149,105,239,100,134,0,46,149,25,149,36,149,47,149,59,149,70,149,82,225,242,237,229,238,233,225,110,128,5,137,227,229,238,244,229,242,229,100,128,0,183,232,225,236,230,247,233,228,244,104,128,255,97,233,238,230,229,242,233,239,114,128,246,231,237,239,238,239,243,240,225,227,101,128,255,14,115,2,149,88,149,95,237,225,236,108,128,254,82,245,240,229,242,233,239,114,128,246,232,243,240,239,237,229,238,233,231,242,229,229,235,227,237,98,128,3,66,240,229,238,228,233,227,245,236,225,114,128,34,165,244,232,239,245,243,225,238,100,128,32,48,243,229,244,97,128,32,167,230,243,241,245,225,242,101,128,51,138,104,3,149,172,149,222,150,103,97,3,149,180,149,190,149,197,226,229,238,231,225,236,105,128,9,171,228,229,246,97,128,9,43,231,117,2,149,204,149,213,234,225,242,225,244,105,128,10,171,242,237,245,235,232,105,128,10,43,105,133,3,198,149,236,149,240,150,70,150,78,150,89,49,128,3,213,229,245,240,104,4,149,253,150,32,150,47,150,56,97,2,150,3,150,18,227,233,242,227,236,229,235,239,242,229,225,110,128,50,122,240,225,242,229,238,235,239,242,229,225,110,128,50,26,227,233,242,227,236,229,235,239,242,229,225,110,128,50,108,235,239,242,229,225,110,128,49,77,240,225,242,229,238,235,239,242,229,225,110,128,50,12,236,225,244,233,110,128,2,120,238,244,232,245,244,232,225,105,128,14,58,243,249,237,226,239,236,231,242,229,229,107,128,3,213,111,3,150,111,150,116,150,142,239,107,128,1,165,240,104,2,150,123,150,132,225,238,244,232,225,105,128,14,30,245,238,231,244,232,225,105,128,14,28,243,225,237,240,232,225,239,244,232,225,105,128,14,32,105,133,3,192,150,170,151,126,151,137,151,148,151,162,229,245,112,6,150,186,150,221,150,253,151,25,151,39,151,91,97,2,150,192,150,207,227,233,242,227,236,229,235,239,242,229,225,110,128,50,115,240,225,242,229,238,235,239,242,229,225,110,128,50,19,227,105,2,150,228,150,240,229,245,227,235,239,242,229,225,110,128,49,118,242,227,236,229,235,239,242,229,225,110,128,50,101,107,2,151,3,151,17,233,249,229,239,235,235,239,242,229,225,110,128,49,114,239,242,229,225,110,128,49,66,240,225,242,229,238,235,239,242,229,225,110,128,50,5,243,233,239,115,2,151,48,151,76,107,2,151,54,151,68,233,249,229,239,235,235,239,242,229,225,110,128,49,116,239,242,229,225,110,128,49,68,244,233,235,229,245,244,235,239,242,229,225,110,128,49,117,116,2,151,97,151,112,232,233,229,245,244,232,235,239,242,229,225,110,128,49,119,233,235,229,245,244,235,239,242,229],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+40960);allocate([225,110,128,49,115,232,233,242,225,231,225,238,97,128,48,116,235,225,244,225,235,225,238,97,128,48,212,243,249,237,226,239,236,231,242,229,229,107,128,3,214,247,242,225,242,237,229,238,233,225,110,128,5,131,236,245,115,132,0,43,151,189,151,200,151,209,151,242,226,229,236,239,247,227,237,98,128,3,31,227,233,242,227,236,101,128,34,149,109,2,151,215,151,222,233,238,245,115,128,0,177,111,2,151,228,151,232,100,128,2,214,238,239,243,240,225,227,101,128,255,11,115,2,151,248,151,255,237,225,236,108,128,254,98,245,240,229,242,233,239,114,128,32,122,109,2,152,15,152,26,239,238,239,243,240,225,227,101,128,255,80,243,241,245,225,242,101,128,51,216,111,5,152,47,152,58,152,125,152,136,152,146,232,233,242,225,231,225,238,97,128,48,125,233,238,244,233,238,231,233,238,228,229,120,4,152,78,152,90,152,102,152,115,228,239,247,238,247,232,233,244,101,128,38,31,236,229,230,244,247,232,233,244,101,128,38,28,242,233,231,232,244,247,232,233,244,101,128,38,30,245,240,247,232,233,244,101,128,38,29,235,225,244,225,235,225,238,97,128,48,221,240,236,225,244,232,225,105,128,14,27,243,244,225,236,237,225,242,107,129,48,18,152,159,230,225,227,101,128,48,32,240,225,242,229,110,128,36,171,114,3,152,182,152,208,152,233,101,2,152,188,152,196,227,229,228,229,115,128,34,122,243,227,242,233,240,244,233,239,110,128,33,30,233,237,101,2,152,216,152,222,237,239,100,128,2,185,242,229,246,229,242,243,229,100,128,32,53,111,4,152,243,152,250,153,4,153,17,228,245,227,116,128,34,15,234,229,227,244,233,246,101,128,35,5,236,239,238,231,229,228,235,225,238,97,128,48,252,112,2,153,23,153,60,101,2,153,29,153,36,236,236,239,114,128,35,24,242,243,117,2,153,44,153,51,226,243,229,116,128,34,130,240,229,242,243,229,116,128,34,131,239,242,244,233,239,110,129,34,55,153,71,225,108,128,34,29,115,2,153,82,153,125,105,130,3,200,153,90,153,101,227,249,242,233,236,236,233,99,128,4,113,236,233,240,238,229,245,237,225,244,225,227,249,242,233,236,236,233,227,227,237,98,128,4,134,243,241,245,225,242,101,128,51,176,117,2,153,140,153,151,232,233,242,225,231,225,238,97,128,48,119,235,225,244,225,235,225,238,97,128,48,215,246,243,241,245,225,242,101,128,51,180,247,243,241,245,225,242,101,128,51,186,113,136,0,113,153,202,154,251,155,6,155,15,155,22,155,34,155,72,155,80,97,4,153,212,153,235,154,43,154,234,100,2,153,218,153,224,229,246,97,128,9,88,237,225,232,229,226,242,229,119,128,5,168,102,4,153,245,153,254,154,12,154,28,225,242,225,226,233,99,128,6,66,230,233,238,225,236,225,242,225,226,233,99,128,254,214,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,215,237,229,228,233,225,236,225,242,225,226,233,99,128,254,216,237,225,244,115,136,5,184,154,66,154,86,154,100,154,105,154,110,154,119,154,134,154,221,49,3,154,74,154,78,154,82,48,128,5,184,97,128,5,184,99,128,5,184,50,2,154,92,154,96,55,128,5,184,57,128,5,184,179,51,128,5,184,228,101,128,5,184,232,229,226,242,229,119,128,5,184,238,225,242,242,239,247,232,229,226,242,229,119,128,5,184,113,2,154,140,154,206,225,244,225,110,4,154,153,154,162,154,177,154,193,232,229,226,242,229,119,128,5,184,238,225,242,242,239,247,232,229,226,242,229,119,128,5,184,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,184,247,233,228,229,232,229,226,242,229,119,128,5,184,245,225,242,244,229,242,232,229,226,242,229,119,128,5,184,247,233,228,229,232,229,226,242,229,119,128,5,184,242,238,229,249,240,225,242,225,232,229,226,242,229,119,128,5,159,226,239,240,239,237,239,230,111,128,49,17,227,233,242,227,236,101,128,36,224,232,239,239,107,128,2,160,237,239,238,239,243,240,225,227,101,128,255,81,239,102,130,5,231,155,43,155,63,228,225,231,229,243,104,129,251,71,155,54,232,229,226,242,229,119,128,251,71,232,229,226,242,229,119,128,5,231,240,225,242,229,110,128,36,172,117,4,155,90,155,102,155,191,156,22,225,242,244,229,242,238,239,244,101,128,38,105,226,245,244,115,135,5,187,155,123,155,128,155,133,155,138,155,147,155,162,155,178,177,56,128,5,187,178,53,128,5,187,179,49,128,5,187,232,229,226,242,229,119,128,5,187,238,225,242,242,239,247,232,229,226,242,229,119,128,5,187,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,187,247,233,228,229,232,229,226,242,229,119,128,5,187,229,243,244,233,239,110,133,0,63,155,210,155,233,155,250,156,2,156,14,225,114,2,155,217,155,224,225,226,233,99,128,6,31,237,229,238,233,225,110,128,5,94,228,239,247,110,129,0,191,155,242,243,237,225,236,108,128,247,191,231,242,229,229,107,128,3,126,237,239,238,239,243,240,225,227,101,128,255,31,243,237,225,236,108,128,247,63,239,244,101,4,156,34,156,105,156,125,156,154,228,226,108,133,0,34,156,50,156,57,156,64,156,76,156,97,226,225,243,101,128,32,30,236,229,230,116,128,32,28,237,239,238,239,243,240,225,227,101,128,255,2,240,242,233,237,101,129,48,30,156,86,242,229,246,229,242,243,229,100,128,48,29,242,233,231,232,116,128,32,29,236,229,230,116,129,32,24,156,114,242,229,246,229,242,243,229,100,128,32,27,114,2,156,131,156,141,229,246,229,242,243,229,100,128,32,27,233,231,232,116,129,32,25,156,150,110,128,1,73,243,233,238,231,108,2,156,164,156,171,226,225,243,101,128,32,26,101,129,0,39,156,177,237,239,238,239,243,240,225,227,101,128,255,7,114,145,0,114,156,227,157,231,157,242,158,33,158,84,159,101,159,125,159,220,161,254,162,35,162,47,162,101,162,109,163,15,163,26,163,61,163,161,97,11,156,251,157,6,157,16,157,23,157,88,157,104,157,129,157,140,157,165,157,188,157,225,225,242,237,229,238,233,225,110,128,5,124,226,229,238,231,225,236,105,128,9,176,227,245,244,101,128,1,85,100,4,157,33,157,39,157,53,157,79,229,246,97,128,9,48,233,227,225,108,129,34,26,157,48,229,120,128,248,229,239,246,229,242,243,243,241,245,225,242,101,129,51,174,157,69,228,243,241,245,225,242,101,128,51,175,243,241,245,225,242,101,128,51,173,230,101,129,5,191,157,95,232,229,226,242,229,119,128,5,191,231,117,2,157,111,157,120,234,225,242,225,244,105,128,10,176,242,237,245,235,232,105,128,10,48,232,233,242,225,231,225,238,97,128,48,137,235,225,244,225,235,225,238,97,129,48,233,157,153,232,225,236,230,247,233,228,244,104,128,255,151,236,239,247,229,242,228,233,225,231,239,238,225,236,226,229,238,231,225,236,105,128,9,241,109,2,157,194,157,217,233,228,228,236,229,228,233,225,231,239,238,225,236,226,229,238,231,225,236,105,128,9,240,243,232,239,242,110,128,2,100,244,233,111,128,34,54,226,239,240,239,237,239,230,111,128,49,22,99,4,157,252,158,3,158,12,158,20,225,242,239,110,128,1,89,229,228,233,236,236,97,128,1,87,233,242,227,236,101,128,36,225,239,237,237,225,225,227,227,229,238,116,128,1,87,100,2,158,39,158,49,226,236,231,242,225,246,101,128,2,17,239,116,2,158,56,158,65,225,227,227,229,238,116,128,30,89,226,229,236,239,119,129,30,91,158,75,237,225,227,242,239,110,128,30,93,101,6,158,98,158,143,158,178,158,233,159,2,159,35,102,2,158,104,158,117,229,242,229,238,227,229,237,225,242,107,128,32,59,236,229,248,243,117,2,158,127,158,134,226,243,229,116,128,34,134,240,229,242,243,229,116,128,34,135,231,233,243,244,229,114,2,158,154,158,159,229,100,128,0,174,115,2,158,165,158,171,225,238,115,128,248,232,229,242,233,102,128,246,218,104,3,158,186,158,209,158,223,225,114,2,158,193,158,200,225,226,233,99,128,6,49,237,229,238,233,225,110,128,5,128,230,233,238,225,236,225,242,225,226,233,99,128,254,174,233,242,225,231,225,238,97,128,48,140,235,225,244,225,235,225,238,97,129,48,236,158,246,232,225,236,230,247,233,228,244,104,128,255,154,243,104,130,5,232,159,11,159,26,228,225,231,229,243,232,232,229,226,242,229,119,128,251,72,232,229,226,242,229,119,128,5,232,118,3,159,43,159,56,159,88,229,242,243,229,228,244,233,236,228,101,128,34,61,233,97,2,159,63,159,72,232,229,226,242,229,119,128,5,151,237,245,231,242,225,243,232,232,229,226,242,229,119,128,5,151,236,239,231,233,227,225,236,238,239,116,128,35,16,230,233,243,232,232,239,239,107,129,2,126,159,114,242,229,246,229,242,243,229,100,128,2,127,104,2,159,131,159,154,97,2,159,137,159,147,226,229,238,231,225,236,105,128,9,221,228,229,246,97,128,9,93,111,131,3,193,159,164,159,193,159,207,239,107,129,2,125,159,171,244,245,242,238,229,100,129,2,123,159,182,243,245,240,229,242,233,239,114,128,2,181,243,249,237,226,239,236,231,242,229,229,107,128,3,241,244,233,227,232,239,239,235,237,239,100,128,2,222,105,6,159,234,161,22,161,68,161,79,161,104,161,240,229,245,108,9,160,0,160,35,160,50,160,64,160,110,160,124,160,210,160,223,161,2,97,2,160,6,160,21,227,233,242,227,236,229,235,239,242,229,225,110,128,50,113,240,225,242,229,238,235,239,242,229,225,110,128,50,17,227,233,242,227,236,229,235,239,242,229,225,110,128,50,99,232,233,229,245,232,235,239,242,229,225,110,128,49,64,107,2,160,70,160,102,233,249,229,239,107,2,160,80,160,89,235,239,242,229,225,110,128,49,58,243,233,239,243,235,239,242,229,225,110,128,49,105,239,242,229,225,110,128,49,57,237,233,229,245,237,235,239,242,229,225,110,128,49,59,112,3,160,132,160,164,160,179,97,2,160,138,160,152,238,243,233,239,243,235,239,242,229,225,110,128,49,108,242,229,238,235,239,242,229,225,110,128,50,3,232,233,229,245,240,232,235,239,242,229,225,110,128,49,63,233,229,245,112,2,160,188,160,197,235,239,242,229,225,110,128,49,60,243,233,239,243,235,239,242,229,225,110,128,49,107,243,233,239,243,235,239,242,229,225,110,128,49,61,116,2,160,229,160,244,232,233,229,245,244,232,235,239,242,229,225,110,128,49,62,233,235,229,245,244,235,239,242,229,225,110,128,49,106,249,229,239,242,233,238,232,233,229,245,232,235,239,242,229,225,110,128,49,109,231,232,116,2,161,30,161,38,225,238,231,236,101,128,34,31,116,2,161,44,161,58,225,227,235,226,229,236,239,247,227,237,98,128,3,25,242,233,225,238,231,236,101,128,34,191,232,233,242,225,231,225,238,97,128,48,138,235,225,244,225,235,225,238,97,129,48,234,161,92,232,225,236,230,247,233,228,244,104,128,255,152,110,2,161,110,161,226,103,131,2,218,161,120,161,131,161,137,226,229,236,239,247,227,237,98,128,3,37,227,237,98,128,3,10,232,225,236,102,2,161,146,161,192,236,229,230,116,131,2,191,161,159,161,170,161,181,225,242,237,229,238,233,225,110,128,5,89,226,229,236,239,247,227,237,98,128,3,28,227,229,238,244,229,242,229,100,128,2,211,242,233,231,232,116,130,2,190,161,204,161,215,226,229,236,239,247,227,237,98,128,3,57,227,229,238,244,229,242,229,100,128,2,210,246,229,242,244,229,228,226,242,229,246,101,128,2,19,244,244,239,242,245,243,241,245,225,242,101,128,51,81,108,2,162,4,162,15,233,238,229,226,229,236,239,119,128,30,95,239,238,231,236,229,103,129,2,124,162,26,244,245,242,238,229,100,128,2,122,237,239,238,239,243,240,225,227,101,128,255,82,111,3,162,55,162,66,162,91,232,233,242,225,231,225,238,97,128,48,141,235,225,244,225,235,225,238,97,129,48,237,162,79,232,225,236,230,247,233,228,244,104,128,255,155,242,245,225,244,232,225,105,128,14,35,240,225,242,229,110,128,36,173,114,3,162,117,162,153,162,183,97,3,162,125,162,135,162,142,226,229,238,231,225,236,105,128,9,220,228,229,246,97,128,9,49,231,245,242,237,245,235,232,105,128,10,92,229,104,2,162,160,162,169,225,242,225,226,233,99,128,6,145,230,233,238,225,236,225,242,225,226,233,99,128,251,141,246,239,227,225,236,233,99,4,162,199,162,209,162,216,162,227,226,229,238,231,225,236,105,128,9,224,228,229,246,97,128,9,96,231,245,234,225,242,225,244,105,128,10,224,246,239,247,229,236,243,233,231,110,3,162,243,162,253,163,4,226,229,238,231,225,236,105,128,9,196,228,229,246,97,128,9,68,231,245,234,225,242,225,244,105,128,10,196,243,245,240,229,242,233,239,114,128,246,241,116,2,163,32,163,40,226,236,239,227,107,128,37,144,245,242,238,229,100,129,2,121,163,50,243,245,240,229,242,233,239,114,128,2,180,117,4,163,71,163,82,163,107,163,154,232,233,242,225,231,225,238,97,128,48,139,235,225,244,225,235,225,238,97,129,48,235,163,95,232,225,236,230,247,233,228,244,104,128,255,153,112,2,163,113,163,148,229,101,2,163,120,163,134,237,225,242,235,226,229,238,231,225,236,105,128,9,242,243,233,231,238,226,229,238,231,225,236,105,128,9,243,233,225,104,128,246,221,244,232,225,105,128,14,36,246,239,227,225,236,233,99,4,163,177,163,187,163,194,163,205,226,229,238,231,225,236,105,128,9,139,228,229,246,97,128,9,11,231,245,234,225,242,225,244,105,128,10,139,246,239,247,229,236,243,233,231,110,3,163,221,163,231,163,238,226,229,238,231,225,236,105,128,9,195,228,229,246,97,128,9,67,231,245,234,225,242,225,244,105,128,10,195,115,147,0,115,164,35,166,5,166,16,166,142,166,181,169,123,169,134,172,21,174,159,174,205,174,232,175,167,175,234,177,11,177,21,177,207,178,24,178,194,178,204,97,9,164,55,164,65,164,86,164,158,164,183,164,194,164,219,164,251,165,35,226,229,238,231,225,236,105,128,9,184,227,245,244,101,129,1,91,164,74,228,239,244,225,227,227,229,238,116,128,30,101,100,5,164,98,164,107,164,113,164,127,164,143,225,242,225,226,233,99,128,6,53,229,246,97,128,9,56,230,233,238,225,236,225,242,225,226,233,99,128,254,186,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,187,237,229,228,233,225,236,225,242,225,226,233,99,128,254,188,231,117,2,164,165,164,174,234,225,242,225,244,105,128,10,184,242,237,245,235,232,105,128,10,56,232,233,242,225,231,225,238,97,128,48,85,235,225,244,225,235,225,238,97,129,48,181,164,207,232,225,236,230,247,233,228,244,104,128,255,123,236,236,225,236,236,225,232,239,245,225,236,225,249,232,229,247,225,243,225,236,236,225,237,225,242,225,226,233,99,128,253,250,237,229,235,104,130,5,225,165,6,165,26,228,225,231,229,243,104,129,251,65,165,17,232,229,226,242,229,119,128,251,65,232,229,226,242,229,119,128,5,225,242,97,5,165,48,165,122,165,130,165,180,165,188,97,5,165,60,165,68,165,76,165,107,165,115,225,244,232,225,105,128,14,50,229,244,232,225,105,128,14,65,233,237,225,233,109,2,165,86,165,97,225,236,225,233,244,232,225,105,128,14,68,245,225,238,244,232,225,105,128,14,67,237,244,232,225,105,128,14,51,244,232,225,105,128,14,48,229,244,232,225,105,128,14,64,105,3,165,138,165,162,165,173,105,2,165,144,165,155,236,229,230,244,244,232,225,105,128,248,134,244,232,225,105,128,14,53,236,229,230,244,244,232,225,105,128,248,133,244,232,225,105,128,14,52,239,244,232,225,105,128,14,66,117,3,165,196,165,246,165,253,101,3,165,204,165,228,165,239,101,2,165,210,165,221,236,229,230,244,244,232,225,105,128,248,136,244,232,225,105,128,14,55,236,229,230,244,244,232,225,105,128,248,135,244,232,225,105,128,14,54,244,232,225,105,128,14,56,245,244,232,225,105,128,14,57,226,239,240,239,237,239,230,111,128,49,25,99,5,166,28,166,49,166,58,166,107,166,129,225,242,239,110,129,1,97,166,37,228,239,244,225,227,227,229,238,116,128,30,103,229,228,233,236,236,97,128,1,95,232,247,97,131,2,89,166,70,166,81,166,100,227,249,242,233,236,236,233,99,128,4,217,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,219,232,239,239,107,128,2,90,233,242,99,2,166,115,166,120,236,101,128,36,226,245,237,230,236,229,120,128,1,93,239,237,237,225,225,227,227,229,238,116,128,2,25,228,239,116,2,166,150,166,159,225,227,227,229,238,116,128,30,97,226,229,236,239,119,129,30,99,166,169,228,239,244,225,227,227,229,238,116,128,30,105,101,9,166,201,166,217,166,252,167,61,167,164,167,191,167,216,168,41,168,68,225,231,245,236,236,226,229,236,239,247,227,237,98,128,3,60,99,2,166,223,166,245,239,238,100,129,32,51,166,231,244,239,238,229,227,232,233,238,229,243,101,128,2,202,244,233,239,110,128,0,167,229,110,4,167,7,167,16,167,30,167,46,225,242,225,226,233,99,128,6,51,230,233,238,225,236,225,242,225,226,233,99,128,254,178,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,179,237,229,228,233,225,236,225,242,225,226,233,99,128,254,180,231,239,108,135,5,182,167,81,167,95,167,100,167,109,167,124,167,140,167,151,49,2,167,87,167,91,51,128,5,182,102,128,5,182,178,99,128,5,182,232,229,226,242,229,119,128,5,182,238,225,242,242,239,247,232,229,226,242,229,119,128,5,182,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,182,244,225,232,229,226,242,229,119,128,5,146,247,233,228,229,232,229,226,242,229,119,128,5,182,104,2,167,170,167,181,225,242,237,229,238,233,225,110,128,5,125,233,242,225,231,225,238,97,128,48,91,235,225,244,225,235,225,238,97,129,48,187,167,204,232,225,236,230,247,233,228,244,104,128,255,126,237,105,2,167,223,168,10,227,239,236,239,110,131,0,59,167,237,167,246,168,2,225,242,225,226,233,99,128,6,27,237,239,238,239,243,240,225,227,101,128,255,27,243,237,225,236,108,128,254,84,246,239,233,227,229,228,237,225,242,235,235,225,238,97,129,48,156,168,29,232,225,236,230,247,233,228,244,104,128,255,159,238,116,2,168,48,168,58,233,243,241,245,225,242,101,128,51,34,239,243,241,245,225,242,101,128,51,35,246,229,110,142,0,55,168,102,168,111,168,121,168,151,168,158,168,168,168,193,168,220,168,254,169,10,169,21,169,54,169,62,169,73,225,242,225,226,233,99,128,6,103,226,229,238,231,225,236,105,128,9,237,227,233,242,227,236,101,129,36,102,168,132,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,144,228,229,246,97,128,9,109,229,233,231,232,244,232,115,128,33,94,231,117,2,168,175,168,184,234,225,242,225,244,105,128,10,237,242,237,245,235,232,105,128,10,109,232,97,2,168,200,168,211,227,235,225,242,225,226,233,99,128,6,103,238,231,250,232,239,117,128,48,39,105,2,168,226,168,244,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,38,238,230,229,242,233,239,114,128,32,135,237,239,238,239,243,240,225,227,101,128,255,23,239,236,228,243,244,249,236,101,128,247,55,112,2,169,27,169,34,225,242,229,110,128,36,122,229,114,2,169,41,169,47,233,239,100,128,36,142,243,233,225,110,128,6,247,242,239,237,225,110,128,33,118,243,245,240,229,242,233,239,114,128,32,119,116,2,169,79,169,117,229,229,110,2,169,87,169,96,227,233,242,227,236,101,128,36,112,112,2,169,102,169,109,225,242,229,110,128,36,132,229,242,233,239,100,128,36,152,232,225,105,128,14,87,230,244,232,249,240,232,229,110,128,0,173,104,7,169,150,170,124,170,135,170,149,171,94,171,107,172,15,97,6,169,164,169,175,169,185,169,196,170,83,170,108,225,242,237,229,238,233,225,110,128,5,119,226,229,238,231,225,236,105,128,9,182,227,249,242,233,236,236,233,99,128,4,72,100,2,169,202,170,42,228,97,4,169,213,169,222,169,253,170,11,225,242,225,226,233,99,128,6,81,228,225,237,237,97,2,169,232,169,241,225,242,225,226,233,99,128,252,97,244,225,238,225,242,225,226,233,99,128,252,94,230,225,244,232,225,225,242,225,226,233,99,128,252,96,235,225,243,242,97,2,170,21,170,30,225,242,225,226,233,99,128,252,98,244,225,238,225,242,225,226,233,99,128,252,95,101,132,37,146,170,54,170,61,170,69,170,78,228,225,242,107,128,37,147,236,233,231,232,116,128,37,145,237,229,228,233,245,109,128,37,146,246,97,128,9,54,231,117,2,170,90,170,99,234,225,242,225,244,105,128,10,182,242,237,245,235,232,105,128,10,54,236,243,232,229,236,229,244,232,229,226,242,229,119,128,5,147,226,239,240,239,237,239,230,111,128,49,21,227,232,225,227,249,242,233,236,236,233,99,128,4,73,101,4,170,159,170,224,170,234,170,251,229,110,4,170,170,170,179,170,193,170,209,225,242,225,226,233,99,128,6,52,230,233,238,225,236,225,242,225,226,233,99,128,254,182,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,183,237,229,228,233,225,236,225,242,225,226,233,99,128,254,184,233,227,239,240,244,233,99,128,3,227,241,229,108,129,32,170,170,242,232,229,226,242,229,119,128,32,170,246,97,134,5,176,171,12,171,27,171,41,171,50,171,65,171,81,49,2,171,18,171,23,177,53,128,5,176,53,128,5,176,50,2,171,33,171,37,50,128,5,176,101,128,5,176,232,229,226,242,229,119,128,5,176,238,225,242,242,239,247,232,229,226,242,229,119,128,5,176,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,176,247,233,228,229,232,229,226,242,229,119,128,5,176,232,225,227,249,242,233,236,236,233,99,128,4,187,105,2,171,113,171,124,237,225,227,239,240,244,233,99,128,3,237,110,131,5,233,171,134,171,217,171,226,100,2,171,140,171,206,225,231,229,243,104,130,251,73,171,152,171,161,232,229,226,242,229,119,128,251,73,115,2,171,167,171,187,232,233,238,228,239,116,129,251,44,171,178,232,229,226,242,229,119,128,251,44,233,238,228,239,116,129,251,45,171,197,232,229,226,242,229,119,128,251,45,239,244,232,229,226,242,229,119,128,5,193,232,229,226,242,229,119,128,5,233,115,2,171,232,171,252,232,233,238,228,239,116,129,251,42,171,243,232,229,226,242,229,119,128,251,42,233,238,228,239,116,129,251,43,172,6,232,229,226,242,229,119,128,251,43,239,239,107,128,2,130,105,8,172,39,172,83,172,94,172,119,172,149,172,157,172,170,173,85,231,237,97,131,3,195,172,51,172,55,172,63,49,128,3,194,230,233,238,225,108,128,3,194,236,245,238,225,244,229,243,249,237,226,239,236,231,242,229,229,107,128,3,242,232,233,242,225,231,225,238,97,128,48,87,235,225,244,225,235,225,238,97,129,48,183,172,107,232,225,236,230,247,233,228,244,104,128,255,124,236,245,113,2,172,127,172,136,232,229,226,242,229,119,128,5,189,236,229,230,244,232,229,226,242,229,119,128,5,189,237,233,236,225,114,128,34,60,238,228,239,244,232,229,226,242,229,119,128,5,194,239,115,6,172,185,172,220,172,252,173,24,173,38,173,70,97,2,172,191,172,206,227,233,242,227,236,229,235,239,242,229,225,110,128,50,116,240,225,242,229,238,235,239,242,229,225,110,128,50,20,227,105,2,172,227,172,239,229,245,227,235,239,242,229,225,110,128,49,126,242,227,236,229,235,239,242,229,225,110,128,50,102,107,2,173,2,173,16,233,249,229,239,235,235,239,242,229,225,110,128,49,122,239,242,229,225,110,128,49,69,238,233,229,245,238,235,239,242,229,225,110,128,49,123,112,2,173,44,173,57,225,242,229,238,235,239,242,229,225,110,128,50,6,233,229,245,240,235,239,242,229,225,110,128,49,125,244,233,235,229,245,244,235,239,242,229,225,110,128,49,124,120,141,0,54,173,115,173,124,173,134,173,164,173,171,173,196,173,223,174,1,174,13,174,24,174,57,174,65,174,76,225,242,225,226,233,99,128,6,102,226,229,238,231,225,236,105,128,9,236,227,233,242,227,236,101,129,36,101,173,145,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,143,228,229,246,97,128,9,108,231,117,2,173,178,173,187,234,225,242,225,244,105,128,10,236,242,237,245,235,232,105,128,10,108,232,97,2,173,203,173,214,227,235,225,242,225,226,233,99,128,6,102,238,231,250,232,239,117,128,48,38,105,2,173,229,173,247,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,37,238,230,229,242,233,239,114,128,32,134,237,239,238,239,243,240,225,227,101,128,255,22,239,236,228,243,244,249,236,101,128,247,54,112,2,174,30,174,37,225,242,229,110,128,36,121,229,114,2,174,44,174,50,233,239,100,128,36,141,243,233,225,110,128,6,246,242,239,237,225,110,128,33,117,243,245,240,229,242,233,239,114,128,32,118,116,2,174,82,174,153,229,229,110,2,174,90,174,132,99,2,174,96,174,104,233,242,227,236,101,128,36,111,245,242,242,229,238,227,249,228,229,238,239,237,233,238,225,244,239,242,226,229,238,231,225,236,105,128,9,249,112,2,174,138,174,145,225,242,229,110,128,36,131,229,242,233,239,100,128,36,151,232,225,105,128,14,86,108,2,174,165,174,185,225,243,104,129,0,47,174,173,237,239,238,239,243,240,225,227,101,128,255,15,239,238,103,129,1,127,174,193,228,239,244,225,227,227,229,238,116,128,30,155,109,2,174,211,174,221,233,236,229,230,225,227,101,128,38,58,239,238,239,243,240,225,227,101,128,255,83,111,6,174,246,175,40,175,51,175,76,175,121,175,132,102,2,174,252,175,10,240,225,243,245,241,232,229,226,242,229,119,128,5,195,116,2,175,16,175,25,232,249,240,232,229,110,128,0,173,243,233,231,238,227,249,242,233,236,236,233,99,128,4,76,232,233,242,225,231,225,238,97,128,48,93,235,225,244,225,235,225,238,97,129,48,189,175,64,232,225,236,230,247,233,228,244,104,128,255,127,236,233,228,245,115,2,175,86,175,103,236,239,238,231,239,246,229,242,236,225,249,227,237,98,128,3,56,243,232,239,242,244,239,246,229,242,236,225,249,227,237,98,128,3,55,242,245,243,233,244,232,225,105,128,14,41,115,3,175,140,175,150,175,158,225,236,225,244,232,225,105,128,14,40,239,244,232,225,105,128,14,11,245,225,244,232,225,105,128,14,42,240,97,3,175,176,175,196,175,228,227,101,129,0,32,175,183,232,225,227,235,225,242,225,226,233,99,128,0,32,228,101,129,38,96,175,203,243,245,233,116,2,175,212,175,220,226,236,225,227,107,128,38,96,247,232,233,244,101,128,38,100,242,229,110,128,36,174,241,245,225,242,101,11,176,6,176,17,176,31,176,56,176,73,176,99,176,114,176,147,176,174,176,230,176,245,226,229,236,239,247,227,237,98,128,3,59,99,2,176,23,176,27,99,128,51,196,109,128,51,157,228,233,225,231,239,238,225,236,227,242,239,243,243,232,225,244,227,232,230,233,236,108,128,37,169,232,239,242,233,250,239,238,244,225,236,230,233,236,108,128,37,164,107,2,176,79,176,83,103,128,51,143,109,129,51,158,176,89,227,225,240,233,244,225,108,128,51,206,108,2,176,105,176,109,110,128,51,209,239,103,128,51,210,109,4,176,124,176,128,176,133,176,137,103,128,51,142,233,108,128,51,213,109,128,51,156,243,241,245,225,242,229,100,128,51,161,239,242,244,232,239,231,239,238,225,236,227,242,239,243,243,232,225,244,227,232,230,233,236,108,128,37,166,245,240,240,229,114,2,176,184,176,207,236,229,230,244,244,239,236,239,247,229,242,242,233,231,232,244,230,233,236,108,128,37,167,242,233,231,232,244,244,239,236,239,247,229,242,236,229,230,244,230,233,236,108,128,37,168,246,229,242,244,233,227,225,236,230,233,236,108,128,37,165,247,232,233,244,229,247,233,244,232,243,237,225,236,236,226,236,225,227,107,128,37,163,242,243,241,245,225,242,101,128,51,219,115,2,177,27,177,197,97,4,177,37,177,47,177,54,177,65,226,229,238,231,225,236,105,128,9,183,228,229,246,97,128,9,55,231,245,234,225,242,225,244,105,128,10,183,238,103,8,177,84,177,98,177,112,177,126,177,141,177,155,177,169,177,182,227,233,229,245,227,235,239,242,229,225,110,128,49,73,232,233,229,245,232,235,239,242,229,225,110,128,49,133,233,229,245,238,231,235,239,242,229,225,110,128,49,128,235,233,249,229,239,235,235,239,242,229,225,110,128,49,50,238,233,229,245,238,235,239,242,229,225,110,128,49,101,240,233,229,245,240,235,239,242,229,225,110,128,49,67,243,233,239,243,235,239,242,229,225,110,128,49,70,244,233,235,229,245,244,235,239,242,229,225,110,128,49,56,245,240,229,242,233,239,114,128,246,242,116,2,177,213,177,236,229,242,236,233,238,103,129,0,163,177,224,237,239,238,239,243,240,225,227,101,128,255,225,242,239,235,101,2,177,245,178,6,236,239,238,231,239,246,229,242,236,225,249,227,237,98,128,3,54,243,232,239,242,244,239,246,229,242,236,225,249,227,237,98,128,3,53,117,7,178,40,178,72,178,94,178,105,178,146,178,156,178,160,226,243,229,116,130,34,130,178,51,178,62,238,239,244,229,241,245,225,108,128,34,138,239,242,229,241,245,225,108,128,34,134,99,2,178,78,178,86,227,229,229,228,115,128,34,123,232,244,232,225,116,128,34,11,232,233,242,225,231,225,238,97,128,48,89,107,2,178,111,178,135,225,244,225,235,225,238,97,129,48,185,178,123,232,225,236,230,247,233,228,244,104,128,255,125,245,238,225,242,225,226,233,99,128,6,82,237,237,225,244,233,239,110,128,34,17,110,128,38,60,240,229,242,243,229,116,130,34,131,178,173,178,184,238,239,244,229,241,245,225,108,128,34,139,239,242,229,241,245,225,108,128,34,135,246,243,241,245,225,242,101,128,51,220,249,239,245,247,225,229,242,225,243,241,245,225,242,101,128,51,124,116,144,0,116,179,1,180,10,180,31,180,174,180,214,183,6,186,144,187,219,187,231,187,243,189,20,189,45,189,131,190,55,190,239,191,73,97,10,179,23,179,33,179,54,179,61,179,86,179,164,179,181,179,206,179,220,179,224,226,229,238,231,225,236,105,128,9,164,227,107,2,179,40,179,47,228,239,247,110,128,34,164,236,229,230,116,128,34,163,228,229,246,97,128,9,36,231,117,2,179,68,179,77,234,225,242,225,244,105,128,10,164,242,237,245,235,232,105,128,10,36,104,4,179,96,179,105,179,119,179,149,225,242,225,226,233,99,128,6,55,230,233,238,225,236,225,242,225,226,233,99,128,254,194,105,2,179,125,179,140,238,233,244,233,225,236,225,242,225,226,233,99,128,254,195,242,225,231,225,238,97,128,48,95,237,229,228,233,225,236,225,242,225,226,233,99,128,254,196,233,243,249,239,245,229,242,225,243,241,245,225,242,101,128,51,125,235,225,244,225,235,225,238,97,129,48,191,179,194,232,225,236,230,247,233,228,244,104,128,255,128,244,247,229,229,236,225,242,225,226,233,99,128,6,64,117,128,3,196,118,130,5,234,179,232,180,1,228,225,231,229,115,129,251,74,179,242,104,129,251,74,179,248,232,229,226,242,229,119,128,251,74,232,229,226,242,229,119,128,5,234,98,2,180,16,180,21,225,114,128,1,103,239,240,239,237,239,230,111,128,49,10,99,6,180,45,180,52,180,59,180,68,180,134,180,161,225,242,239,110,128,1,101,227,245,242,108,128,2,168,229,228,233,236,236,97,128,1,99,232,229,104,4,180,80,180,89,180,103,180,119,225,242,225,226,233,99,128,6,134,230,233,238,225,236,225,242,225,226,233,99,128,251,123,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,124,237,229,228,233,225,236,225,242,225,226,233,99,128,251,125,233,242,99,2,180,142,180,147,236,101,128,36,227,245,237,230,236,229,248,226,229,236,239,119,128,30,113,239,237,237,225,225,227,227,229,238,116,128,1,99,100,2,180,180,180,190,233,229,242,229,243,233,115,128,30,151,239,116,2,180,197,180,206,225,227,227,229,238,116,128,30,107,226,229,236,239,119,128,30,109,101,9,180,234,180,245,181,9,182,19,182,44,182,108,182,175,182,180,182,232,227,249,242,233,236,236,233,99,128,4,66,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,173,104,7,181,25,181,34,181,48,181,88,181,118,181,159,182,1,225,242,225,226,233,99,128,6,42,230,233,238,225,236,225,242,225,226,233,99,128,254,150,232,225,232,105,2,181,57,181,72,238,233,244,233,225,236,225,242,225,226,233,99,128,252,162,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,12,105,2,181,94,181,109,238,233,244,233,225,236,225,242,225,226,233,99,128,254,151,242,225,231,225,238,97,128,48,102,234,229,229,237,105,2,181,128,181,143,238,233,244,233,225,236,225,242,225,226,233,99,128,252,161,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,11,109,2,181,165,181,199,225,242,226,245,244,97,2,181,176,181,185,225,242,225,226,233,99,128,6,41,230,233,238,225,236,225,242,225,226,233,99,128,254,148,101,2,181,205,181,218,228,233,225,236,225,242,225,226,233,99,128,254,152,229,237,105,2,181,226,181,241,238,233,244,233,225,236,225,242,225,226,233,99,128,252,164,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,14,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,115,235,225,244,225,235,225,238,97,129,48,198,182,32,232,225,236,230,247,233,228,244,104,128,255,131,108,2,182,50,182,69,229,240,232,239,238,101,129,33,33,182,61,226,236,225,227,107,128,38,14,233,243,232,97,2,182,78,182,93,231,229,228,239,236,225,232,229,226,242,229,119,128,5,160,241,229,244,225,238,225,232,229,226,242,229,119,128,5,169,110,4,182,118,182,127,182,146,182,167,227,233,242,227,236,101,128,36,105,233,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,41,112,2,182,152,182,159,225,242,229,110,128,36,125,229,242,233,239,100,128,36,145,242,239,237,225,110,128,33,121,243,104,128,2,167,116,131,5,216,182,190,182,210,182,219,228,225,231,229,243,104,129,251,56,182,201,232,229,226,242,229,119,128,251,56,232,229,226,242,229,119,128,5,216,243,229,227,249,242,233,236,236,233,99,128,4,181,246,233,114,2,182,240,182,249,232,229,226,242,229,119,128,5,155,236,229,230,244,232,229,226,242,229,119,128,5,155,104,6,183,20,183,172,184,38,184,170,185,77,186,134,97,5,183,32,183,42,183,49,183,74,183,103,226,229,238,231,225,236,105,128,9,165,228,229,246,97,128,9,37,231,117,2,183,56,183,65,234,225,242,225,244,105,128,10,165,242,237,245,235,232,105,128,10,37,108,2,183,80,183,89,225,242,225,226,233,99,128,6,48,230,233,238,225,236,225,242,225,226,233,99,128,254,172,238,244,232,225,235,232,225,116,3,183,118,183,149,183,156,236,239,119,2,183,126,183,137,236,229,230,244,244,232,225,105,128,248,152,242,233,231,232,244,244,232,225,105,128,248,151,244,232,225,105,128,14,76,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,150,101,3,183,180,183,244,184,11,104,4,183,190,183,199,183,213,183,229,225,242,225,226,233,99,128,6,43,230,233,238,225,236,225,242,225,226,233,99,128,254,154,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,155,237,229,228,233,225,236,225,242,225,226,233,99,128,254,156,242,101,2,183,251,184,4,229,248,233,243,244,115,128,34,3,230,239,242,101,128,34,52,244,97,130,3,184,184,20,184,24,49,128,3,209,243,249,237,226,239,236,231,242,229,229,107,128,3,209,105,2,184,44,184,130,229,245,244,104,4,184,57,184,92,184,107,184,116,97,2,184,63,184,78,227,233,242,227,236,229,235,239,242,229,225,110,128,50,121,240,225,242,229,238,235,239,242,229,225,110,128,50,25,227,233,242,227,236,229,235,239,242,229,225,110,128,50,107,235,239,242,229,225,110,128,49,76,240,225,242,229,238,235,239,242,229,225,110,128,50,11,242,244,229,229,110,2,184,140,184,149,227,233,242,227,236,101,128,36,108,112,2,184,155,184,162,225,242,229,110,128,36,128,229,242,233,239,100,128,36,148,111,6,184,184,184,201,184,206,184,220,184,225,185,22,238,225,238,231,237,239,238,244,232,239,244,232,225,105,128,14,17,239,107,128,1,173,240,232,245,244,232,225,239,244,232,225,105,128,14,18,242,110,128,0,254,244,104,3,184,234,185,2,185,12,97,2,184,240,184,250,232,225,238,244,232,225,105,128,14,23,238,244,232,225,105,128,14,16,239,238,231,244,232,225,105,128,14,24,245,238,231,244,232,225,105,128,14,22,245,243,225,238,100,2,185,32,185,43,227,249,242,233,236,236,233,99,128,4,130,243,243,229,240,225,242,225,244,239,114,2,185,58,185,67,225,242,225,226,233,99,128,6,108,240,229,242,243,233,225,110,128,6,108,242,229,101,144,0,51,185,115,185,124,185,134,185,164,185,171,185,181,185,206,185,233,186,11,186,23,186,42,186,53,186,86,186,108,186,116,186,127,225,242,225,226,233,99,128,6,99,226,229,238,231,225,236,105,128,9,233,227,233,242,227,236,101,129,36,98,185,145,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,140,228,229,246,97,128,9,105,229,233,231,232,244,232,115,128,33,92,231,117,2,185,188,185,197,234,225,242,225,244,105,128,10,233,242,237,245,235,232,105,128,10,105,232,97,2,185,213,185,224,227,235,225,242,225,226,233,99,128,6,99,238,231,250,232,239,117,128,48,35,105,2,185,239,186,1,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,34,238,230,229,242,233,239,114,128,32,131,237,239,238,239,243,240,225,227,101,128,255,19,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,246,239,236,228,243,244,249,236,101,128,247,51,112,2,186,59,186,66,225,242,229,110,128,36,118,229,114,2,186,73,186,79,233,239,100,128,36,138,243,233,225,110,128,6,243,241,245,225,242,244,229,242,115,129,0,190,186,99,229,237,228,225,243,104,128,246,222,242,239,237,225,110,128,33,114,243,245,240,229,242,233,239,114,128,0,179,244,232,225,105,128,14,83,250,243,241,245,225,242,101,128,51,148,105,7,186,160,186,171,187,30,187,128,187,140,187,189,187,206,232,233,242,225,231,225,238,97,128,48,97,107,2,186,177,186,201,225,244,225,235,225,238,97,129,48,193,186,189,232,225,236,230,247,233,228,244,104,128,255,129,229,245,116,4,186,213,186,248,187,7,187,16,97,2,186,219,186,234,227,233,242,227,236,229,235,239,242,229,225,110,128,50,112,240,225,242,229,238,235,239,242,229,225,110,128,50,16,227,233,242,227,236,229,235,239,242,229,225,110,128,50,98,235,239,242,229,225,110,128,49,55,240,225,242,229,238,235,239,242,229,225,110,128,50,2,236,228,101,133,2,220,187,46,187,57,187,74,187,86,187,114,226,229,236,239,247,227,237,98,128,3,48,99,2,187,63,187,68,237,98,128,3,3,239,237,98,128,3,3,228,239,245,226,236,229,227,237,98,128,3,96,111,2,187,92,187,102,240,229,242,225,244,239,114,128,34,60,246,229,242,236,225,249,227,237,98,128,3,52,246,229,242,244,233,227,225,236,227,237,98,128,3,62,237,229,243,227,233,242,227,236,101,128,34,151,112,2,187,146,187,176,229,232,97,2,187,154,187,163,232,229,226,242,229,119,128,5,150,236,229,230,244,232,229,226,242,229,119,128,5,150,240,233,231,245,242,237,245,235,232,105,128,10,112,244,236,239,227,249,242,233,236,236,233,227,227,237,98,128,4,131,247,238,225,242,237,229,238,233,225,110,128,5,127,236,233,238,229,226,229,236,239,119,128,30,111,237,239,238,239,243,240,225,227,101,128,255,84,111,7,188,3,188,14,188,25,188,50,188,170,188,182,189,10,225,242,237,229,238,233,225,110,128,5,105,232,233,242,225,231,225,238,97,128,48,104,235,225,244,225,235,225,238,97,129,48,200,188,38,232,225,236,230,247,233,228,244,104,128,255,132,110,3,188,58,188,156,188,161,101,4,188,68,188,137,188,144,188,150,226,225,114,4,188,80,188,109,188,119,188,128,229,248,244,242,97,2,188,90,188,100,232,233,231,232,237,239,100,128,2,229,236,239,247,237,239,100,128,2,233,232,233,231,232,237,239,100,128,2,230,236,239,247,237,239,100,128,2,232,237,233,228,237,239,100,128,2,231,230,233,246,101,128,1,189,243,233,120,128,1,133,244,247,111,128,1,168,239,115,128,3,132,243,241,245,225,242,101,128,51,39,240,225,244,225,235,244,232,225,105,128,14,15,242,244,239,233,243,229,243,232,229,236,236,226,242,225,227,235,229,116,2,188,205,188,235,236,229,230,116,130,48,20,188,216,188,224,243,237,225,236,108,128,254,93,246,229,242,244,233,227,225,108,128,254,57,242,233,231,232,116,130,48,21,188,247,188,255,243,237,225,236,108,128,254,94,246,229,242,244,233,227,225,108,128,254,58,244,225,239,244,232,225,105,128,14,21,240,97,2,189,27,189,39,236,225,244,225,236,232,239,239,107,128,1,171,242,229,110,128,36,175,114,3,189,53,189,84,189,99,225,228,229,237,225,242,107,129,33,34,189,65,115,2,189,71,189,77,225,238,115,128,248,234,229,242,233,102,128,246,219,229,244,242,239,230,236,229,248,232,239,239,107,128,2,136,233,225,103,4,189,111,189,116,189,121,189,126,228,110,128,37,188,236,102,128,37,196,242,116,128,37,186,245,112,128,37,178,115,132,2,166,189,143,189,182,190,32,190,45,225,228,105,130,5,230,189,153,189,173,228,225,231,229,243,104,129,251,70,189,164,232,229,226,242,229,119,128,251,70,232,229,226,242,229,119,128,5,230,101,2,189,188,189,199,227,249,242,233,236,236,233,99,128,4,70,242,101,134,5,181,189,216,189,230,189,235,189,244,190,3,190,19,49,2,189,222,189,226,50,128,5,181,101,128,5,181,178,98,128,5,181,232,229,226,242,229,119,128,5,181,238,225,242,242,239,247,232,229,226,242,229,119,128,5,181,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,181,247,233,228,229,232,229,226,242,229,119,128,5,181,232,229,227,249,242,233,236,236,233,99,128,4,91,245,240,229,242,233,239,114,128,246,243,116,4,190,65,190,115,190,180,190,231,97,3,190,73,190,83,190,90,226,229,238,231,225,236,105,128,9,159,228,229,246,97,128,9,31,231,117,2,190,97,190,106,234,225,242,225,244,105,128,10,159,242,237,245,235,232,105,128,10,31,229,104,4,190,126,190,135,190,149,190,165,225,242,225,226,233,99,128,6,121,230,233,238,225,236,225,242,225,226,233,99,128,251,103,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,104,237,229,228,233,225,236,225,242,225,226,233,99,128,251,105,232,97,3,190,189,190,199,190,206,226,229,238,231,225,236,105,128,9,160,228,229,246,97,128,9,32,231,117,2,190,213,190,222,234,225,242,225,244,105,128,10,160,242,237,245,235,232,105,128,10,32,245,242,238,229,100,128,2,135,117,3,190,247,191,2,191,27,232,233,242,225,231,225,238,97,128,48,100,235,225,244,225,235,225,238,97,129,48,196,191,15,232,225,236,230,247,233,228,244,104,128,255,130,243,237,225,236,108,2,191,37,191,48,232,233,242,225,231,225,238,97,128,48,99,235,225,244,225,235,225,238,97,129,48,195,191,61,232,225,236,230,247,233,228,244,104,128,255,111,119,2,191,79,191,184,101,2,191,85,191,133,236,246,101,3,191,95,191,104,191,125,227,233,242,227,236,101,128,36,107,112,2,191,110,191,117,225,242,229,110,128,36,127,229,242,233,239],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+51200);allocate([100,128,36,147,242,239,237,225,110,128,33,123,238,244,121,3,191,143,191,152,191,163,227,233,242,227,236,101,128,36,115,232,225,238,231,250,232,239,117,128,83,68,112,2,191,169,191,176,225,242,229,110,128,36,135,229,242,233,239,100,128,36,155,111,142,0,50,191,216,191,225,191,235,192,9,192,61,192,86,192,113,192,147,192,159,192,178,192,189,192,222,192,230,192,254,225,242,225,226,233,99,128,6,98,226,229,238,231,225,236,105,128,9,232,227,233,242,227,236,101,129,36,97,191,246,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,139,100,2,192,15,192,21,229,246,97,128,9,104,239,116,2,192,28,192,39,229,238,236,229,225,228,229,114,128,32,37,236,229,225,228,229,114,129,32,37,192,50,246,229,242,244,233,227,225,108,128,254,48,231,117,2,192,68,192,77,234,225,242,225,244,105,128,10,232,242,237,245,235,232,105,128,10,104,232,97,2,192,93,192,104,227,235,225,242,225,226,233,99,128,6,98,238,231,250,232,239,117,128,48,34,105,2,192,119,192,137,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,33,238,230,229,242,233,239,114,128,32,130,237,239,238,239,243,240,225,227,101,128,255,18,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,245,239,236,228,243,244,249,236,101,128,247,50,112,2,192,195,192,202,225,242,229,110,128,36,117,229,114,2,192,209,192,215,233,239,100,128,36,137,243,233,225,110,128,6,242,242,239,237,225,110,128,33,113,115,2,192,236,192,244,244,242,239,235,101,128,1,187,245,240,229,242,233,239,114,128,0,178,244,104,2,193,5,193,10,225,105,128,14,82,233,242,228,115,128,33,84,117,145,0,117,193,55,193,63,193,104,193,161,194,43,194,80,194,203,194,219,195,14,195,84,195,165,195,174,196,37,196,61,196,169,196,197,197,55,225,227,245,244,101,128,0,250,98,4,193,73,193,78,193,87,193,97,225,114,128,2,137,229,238,231,225,236,105,128,9,137,239,240,239,237,239,230,111,128,49,40,242,229,246,101,128,1,109,99,3,193,112,193,119,193,151,225,242,239,110,128,1,212,233,242,99,2,193,127,193,132,236,101,128,36,228,245,237,230,236,229,120,129,0,251,193,143,226,229,236,239,119,128,30,119,249,242,233,236,236,233,99,128,4,67,100,5,193,173,193,184,193,207,193,213,194,33,225,244,244,225,228,229,246,97,128,9,81,226,108,2,193,191,193,199,225,227,245,244,101,128,1,113,231,242,225,246,101,128,2,21,229,246,97,128,9,9,233,229,242,229,243,233,115,133,0,252,193,233,193,241,193,249,194,16,194,24,225,227,245,244,101,128,1,216,226,229,236,239,119,128,30,115,99,2,193,255,194,6,225,242,239,110,128,1,218,249,242,233,236,236,233,99,128,4,241,231,242,225,246,101,128,1,220,237,225,227,242,239,110,128,1,214,239,244,226,229,236,239,119,128,30,229,103,2,194,49,194,56,242,225,246,101,128,0,249,117,2,194,62,194,71,234,225,242,225,244,105,128,10,137,242,237,245,235,232,105,128,10,9,104,3,194,88,194,98,194,176,233,242,225,231,225,238,97,128,48,70,111,2,194,104,194,114,239,235,225,226,239,246,101,128,30,231,242,110,133,1,176,194,129,194,137,194,148,194,156,194,168,225,227,245,244,101,128,30,233,228,239,244,226,229,236,239,119,128,30,241,231,242,225,246,101,128,30,235,232,239,239,235,225,226,239,246,101,128,30,237,244,233,236,228,101,128,30,239,245,238,231,225,242,245,237,236,225,245,116,129,1,113,194,192,227,249,242,233,236,236,233,99,128,4,243,233,238,246,229,242,244,229,228,226,242,229,246,101,128,2,23,107,3,194,227,194,251,195,6,225,244,225,235,225,238,97,129,48,166,194,239,232,225,236,230,247,233,228,244,104,128,255,115,227,249,242,233,236,236,233,99,128,4,121,239,242,229,225,110,128,49,92,109,2,195,20,195,73,97,2,195,26,195,59,227,242,239,110,130,1,107,195,37,195,48,227,249,242,233,236,236,233,99,128,4,239,228,233,229,242,229,243,233,115,128,30,123,244,242,225,231,245,242,237,245,235,232,105,128,10,65,239,238,239,243,240,225,227,101,128,255,85,110,2,195,90,195,145,228,229,242,243,227,239,242,101,132,0,95,195,109,195,115,195,127,195,138,228,226,108,128,32,23,237,239,238,239,243,240,225,227,101,128,255,63,246,229,242,244,233,227,225,108,128,254,51,247,225,246,121,128,254,79,105,2,195,151,195,156,239,110,128,34,42,246,229,242,243,225,108,128,34,0,239,231,239,238,229,107,128,1,115,112,5,195,186,195,193,195,201,195,216,196,11,225,242,229,110,128,36,176,226,236,239,227,107,128,37,128,240,229,242,228,239,244,232,229,226,242,229,119,128,5,196,243,233,236,239,110,131,3,197,195,230,195,251,196,3,228,233,229,242,229,243,233,115,129,3,203,195,243,244,239,238,239,115,128,3,176,236,225,244,233,110,128,2,138,244,239,238,239,115,128,3,205,244,225,227,107,2,196,20,196,31,226,229,236,239,247,227,237,98,128,3,29,237,239,100,128,2,212,114,2,196,43,196,55,225,231,245,242,237,245,235,232,105,128,10,115,233,238,103,128,1,111,115,3,196,69,196,84,196,129,232,239,242,244,227,249,242,233,236,236,233,99,128,4,94,237,225,236,108,2,196,93,196,104,232,233,242,225,231,225,238,97,128,48,69,235,225,244,225,235,225,238,97,129,48,165,196,117,232,225,236,230,247,233,228,244,104,128,255,105,244,242,225,233,231,232,116,2,196,141,196,152,227,249,242,233,236,236,233,99,128,4,175,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,177,244,233,236,228,101,130,1,105,196,181,196,189,225,227,245,244,101,128,30,121,226,229,236,239,119,128,30,117,117,5,196,209,196,219,196,226,196,251,197,11,226,229,238,231,225,236,105,128,9,138,228,229,246,97,128,9,10,231,117,2,196,233,196,242,234,225,242,225,244,105,128,10,138,242,237,245,235,232,105,128,10,10,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,66,246,239,247,229,236,243,233,231,110,3,197,27,197,37,197,44,226,229,238,231,225,236,105,128,9,194,228,229,246,97,128,9,66,231,245,234,225,242,225,244,105,128,10,194,246,239,247,229,236,243,233,231,110,3,197,71,197,81,197,88,226,229,238,231,225,236,105,128,9,193,228,229,246,97,128,9,65,231,245,234,225,242,225,244,105,128,10,193,118,139,0,118,197,125,198,17,198,26,198,37,198,222,198,229,199,71,199,83,199,183,199,191,199,212,97,4,197,135,197,142,197,167,197,178,228,229,246,97,128,9,53,231,117,2,197,149,197,158,234,225,242,225,244,105,128,10,181,242,237,245,235,232,105,128,10,53,235,225,244,225,235,225,238,97,128,48,247,118,132,5,213,197,190,197,217,197,249,198,5,228,225,231,229,243,104,130,251,53,197,203,197,208,182,53,128,251,53,232,229,226,242,229,119,128,251,53,104,2,197,223,197,231,229,226,242,229,119,128,5,213,239,236,225,109,129,251,75,197,240,232,229,226,242,229,119,128,251,75,246,225,246,232,229,226,242,229,119,128,5,240,249,239,228,232,229,226,242,229,119,128,5,241,227,233,242,227,236,101,128,36,229,228,239,244,226,229,236,239,119,128,30,127,101,6,198,51,198,62,198,126,198,137,198,143,198,210,227,249,242,233,236,236,233,99,128,4,50,104,4,198,72,198,81,198,95,198,111,225,242,225,226,233,99,128,6,164,230,233,238,225,236,225,242,225,226,233,99,128,251,107,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,108,237,229,228,233,225,236,225,242,225,226,233,99,128,251,109,235,225,244,225,235,225,238,97,128,48,249,238,245,115,128,38,64,242,244,233,227,225,108,2,198,154,198,160,226,225,114,128,0,124,236,233,238,101,4,198,173,198,184,198,195,198,204,225,226,239,246,229,227,237,98,128,3,13,226,229,236,239,247,227,237,98,128,3,41,236,239,247,237,239,100,128,2,204,237,239,100,128,2,200,247,225,242,237,229,238,233,225,110,128,5,126,232,239,239,107,128,2,139,105,3,198,237,198,248,199,31,235,225,244,225,235,225,238,97,128,48,248,242,225,237,97,3,199,3,199,13,199,20,226,229,238,231,225,236,105,128,9,205,228,229,246,97,128,9,77,231,245,234,225,242,225,244,105,128,10,205,243,225,242,231,97,3,199,43,199,53,199,60,226,229,238,231,225,236,105,128,9,131,228,229,246,97,128,9,3,231,245,234,225,242,225,244,105,128,10,131,237,239,238,239,243,240,225,227,101,128,255,86,111,3,199,91,199,102,199,172,225,242,237,229,238,233,225,110,128,5,120,233,227,229,100,2,199,111,199,147,233,244,229,242,225,244,233,239,110,2,199,125,199,136,232,233,242,225,231,225,238,97,128,48,158,235,225,244,225,235,225,238,97,128,48,254,237,225,242,235,235,225,238,97,129,48,155,199,160,232,225,236,230,247,233,228,244,104,128,255,158,235,225,244,225,235,225,238,97,128,48,250,240,225,242,229,110,128,36,177,116,2,199,197,199,204,233,236,228,101,128,30,125,245,242,238,229,100,128,2,140,117,2,199,218,199,229,232,233,242,225,231,225,238,97,128,48,148,235,225,244,225,235,225,238,97,128,48,244,119,143,0,119,200,18,200,251,201,5,201,28,201,68,201,135,201,143,203,114,203,155,203,167,203,242,203,250,204,1,204,12,204,21,97,8,200,36,200,43,200,53,200,64,200,102,200,134,200,146,200,182,227,245,244,101,128,30,131,229,235,239,242,229,225,110,128,49,89,232,233,242,225,231,225,238,97,128,48,143,107,2,200,70,200,94,225,244,225,235,225,238,97,129,48,239,200,82,232,225,236,230,247,233,228,244,104,128,255,156,239,242,229,225,110,128,49,88,243,237,225,236,108,2,200,112,200,123,232,233,242,225,231,225,238,97,128,48,142,235,225,244,225,235,225,238,97,128,48,238,244,244,239,243,241,245,225,242,101,128,51,87,118,2,200,152,200,160,229,228,225,243,104,128,48,28,249,245,238,228,229,242,243,227,239,242,229,246,229,242,244,233,227,225,108,128,254,52,119,3,200,190,200,199,200,213,225,242,225,226,233,99,128,6,72,230,233,238,225,236,225,242,225,226,233,99,128,254,238,232,225,237,250,225,225,226,239,246,101,2,200,228,200,237,225,242,225,226,233,99,128,6,36,230,233,238,225,236,225,242,225,226,233,99,128,254,134,226,243,241,245,225,242,101,128,51,221,227,233,242,99,2,201,14,201,19,236,101,128,36,230,245,237,230,236,229,120,128,1,117,100,2,201,34,201,44,233,229,242,229,243,233,115,128,30,133,239,116,2,201,51,201,60,225,227,227,229,238,116,128,30,135,226,229,236,239,119,128,30,137,101,4,201,78,201,89,201,101,201,125,232,233,242,225,231,225,238,97,128,48,145,233,229,242,243,244,242,225,243,115,128,33,24,107,2,201,107,201,117,225,244,225,235,225,238,97,128,48,241,239,242,229,225,110,128,49,94,239,235,239,242,229,225,110,128,49,93,231,242,225,246,101,128,30,129,232,233,244,101,8,201,164,201,173,202,1,202,91,202,175,202,220,203,16,203,72,226,245,236,236,229,116,128,37,230,99,2,201,179,201,199,233,242,227,236,101,129,37,203,201,189,233,238,246,229,242,243,101,128,37,217,239,242,238,229,242,226,242,225,227,235,229,116,2,201,216,201,236,236,229,230,116,129,48,14,201,225,246,229,242,244,233,227,225,108,128,254,67,242,233,231,232,116,129,48,15,201,246,246,229,242,244,233,227,225,108,128,254,68,100,2,202,7,202,48,233,225,237,239,238,100,129,37,199,202,18,227,239,238,244,225,233,238,233,238,231,226,236,225,227,235,243,237,225,236,236,228,233,225,237,239,238,100,128,37,200,239,247,238,240,239,233,238,244,233,238,103,2,202,64,202,80,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,191,244,242,233,225,238,231,236,101,128,37,189,236,101,2,202,98,202,140,230,244,240,239,233,238,244,233,238,103,2,202,113,202,129,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,195,244,242,233,225,238,231,236,101,128,37,193,238,244,233,227,245,236,225,242,226,242,225,227,235,229,116,2,202,160,202,167,236,229,230,116,128,48,22,242,233,231,232,116,128,48,23,242,233,231,232,244,240,239,233,238,244,233,238,103,2,202,193,202,209,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,185,244,242,233,225,238,231,236,101,128,37,183,115,3,202,228,203,2,203,10,109,2,202,234,202,246,225,236,236,243,241,245,225,242,101,128,37,171,233,236,233,238,231,230,225,227,101,128,38,58,241,245,225,242,101,128,37,161,244,225,114,128,38,6,116,2,203,22,203,33,229,236,229,240,232,239,238,101,128,38,15,239,242,244,239,233,243,229,243,232,229,236,236,226,242,225,227,235,229,116,2,203,57,203,64,236,229,230,116,128,48,24,242,233,231,232,116,128,48,25,245,240,240,239,233,238,244,233,238,103,2,203,87,203,103,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,181,244,242,233,225,238,231,236,101,128,37,179,105,2,203,120,203,131,232,233,242,225,231,225,238,97,128,48,144,107,2,203,137,203,147,225,244,225,235,225,238,97,128,48,240,239,242,229,225,110,128,49,95,237,239,238,239,243,240,225,227,101,128,255,87,111,4,203,177,203,188,203,213,203,231,232,233,242,225,231,225,238,97,128,48,146,235,225,244,225,235,225,238,97,129,48,242,203,201,232,225,236,230,247,233,228,244,104,128,255,102,110,129,32,169,203,219,237,239,238,239,243,240,225,227,101,128,255,230,247,225,229,238,244,232,225,105,128,14,39,240,225,242,229,110,128,36,178,242,233,238,103,128,30,152,243,245,240,229,242,233,239,114,128,2,183,244,245,242,238,229,100,128,2,141,249,238,110,128,1,191,120,137,0,120,204,49,204,60,204,71,204,80,204,107,204,120,204,124,204,136,204,144,225,226,239,246,229,227,237,98,128,3,61,226,239,240,239,237,239,230,111,128,49,18,227,233,242,227,236,101,128,36,231,100,2,204,86,204,96,233,229,242,229,243,233,115,128,30,141,239,244,225,227,227,229,238,116,128,30,139,229,232,225,242,237,229,238,233,225,110,128,5,109,105,128,3,190,237,239,238,239,243,240,225,227,101,128,255,88,240,225,242,229,110,128,36,179,243,245,240,229,242,233,239,114,128,2,227,121,143,0,121,204,189,205,148,205,171,205,211,207,177,207,185,207,202,208,10,208,22,209,19,209,59,209,71,209,82,209,103,210,76,97,11,204,213,204,225,204,235,204,242,204,249,205,3,205,28,205,39,205,77,205,90,205,136,225,228,239,243,241,245,225,242,101,128,51,78,226,229,238,231,225,236,105,128,9,175,227,245,244,101,128,0,253,228,229,246,97,128,9,47,229,235,239,242,229,225,110,128,49,82,231,117,2,205,10,205,19,234,225,242,225,244,105,128,10,175,242,237,245,235,232,105,128,10,47,232,233,242,225,231,225,238,97,128,48,132,107,2,205,45,205,69,225,244,225,235,225,238,97,129,48,228,205,57,232,225,236,230,247,233,228,244,104,128,255,148,239,242,229,225,110,128,49,81,237,225,235,235,225,238,244,232,225,105,128,14,78,243,237,225,236,108,2,205,100,205,111,232,233,242,225,231,225,238,97,128,48,131,235,225,244,225,235,225,238,97,129,48,227,205,124,232,225,236,230,247,233,228,244,104,128,255,108,244,227,249,242,233,236,236,233,99,128,4,99,227,233,242,99,2,205,157,205,162,236,101,128,36,232,245,237,230,236,229,120,128,1,119,100,2,205,177,205,187,233,229,242,229,243,233,115,128,0,255,239,116,2,205,194,205,203,225,227,227,229,238,116,128,30,143,226,229,236,239,119,128,30,245,101,7,205,227,206,235,206,244,207,6,207,38,207,114,207,165,104,8,205,245,205,254,206,32,206,46,206,119,206,135,206,194,206,212,225,242,225,226,233,99,128,6,74,226,225,242,242,229,101,2,206,9,206,18,225,242,225,226,233,99,128,6,210,230,233,238,225,236,225,242,225,226,233,99,128,251,175,230,233,238,225,236,225,242,225,226,233,99,128,254,242,232,225,237,250,225,225,226,239,246,101,4,206,65,206,74,206,88,206,104,225,242,225,226,233,99,128,6,38,230,233,238,225,236,225,242,225,226,233,99,128,254,138,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,139,237,229,228,233,225,236,225,242,225,226,233,99,128,254,140,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,243,237,101,2,206,142,206,155,228,233,225,236,225,242,225,226,233,99,128,254,244,229,237,105,2,206,163,206,178,238,233,244,233,225,236,225,242,225,226,233,99,128,252,221,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,88,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,148,244,232,242,229,229,228,239,244,243,226,229,236,239,247,225,242,225,226,233,99,128,6,209,235,239,242,229,225,110,128,49,86,110,129,0,165,206,250,237,239,238,239,243,240,225,227,101,128,255,229,111,2,207,12,207,21,235,239,242,229,225,110,128,49,85,242,233,238,232,233,229,245,232,235,239,242,229,225,110,128,49,134,114,3,207,46,207,82,207,94,225,232,226,229,238,249,239,237,111,2,207,60,207,69,232,229,226,242,229,119,128,5,170,236,229,230,244,232,229,226,242,229,119,128,5,170,233,227,249,242,233,236,236,233,99,128,4,75,245,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,249,243,233,229,245,238,103,3,207,127,207,136,207,152,235,239,242,229,225,110,128,49,129,240,225,238,243,233,239,243,235,239,242,229,225,110,128,49,131,243,233,239,243,235,239,242,229,225,110,128,49,130,244,233,246,232,229,226,242,229,119,128,5,154,231,242,225,246,101,128,30,243,232,239,239,107,129,1,180,207,194,225,226,239,246,101,128,30,247,105,5,207,214,207,225,207,236,207,245,207,253,225,242,237,229,238,233,225,110,128,5,117,227,249,242,233,236,236,233,99,128,4,87,235,239,242,229,225,110,128,49,98,238,249,225,238,103,128,38,47,247,238,225,242,237,229,238,233,225,110,128,5,130,237,239,238,239,243,240,225,227,101,128,255,89,111,7,208,38,208,108,208,119,208,129,208,167,208,213,208,222,100,131,5,217,208,48,208,68,208,77,228,225,231,229,243,104,129,251,57,208,59,232,229,226,242,229,119,128,251,57,232,229,226,242,229,119,128,5,217,249,239,100,2,208,85,208,94,232,229,226,242,229,119,128,5,242,240,225,244,225,232,232,229,226,242,229,119,128,251,31,232,233,242,225,231,225,238,97,128,48,136,233,235,239,242,229,225,110,128,49,137,107,2,208,135,208,159,225,244,225,235,225,238,97,129,48,232,208,147,232,225,236,230,247,233,228,244,104,128,255,150,239,242,229,225,110,128,49,91,243,237,225,236,108,2,208,177,208,188,232,233,242,225,231,225,238,97,128,48,135,235,225,244,225,235,225,238,97,129,48,231,208,201,232,225,236,230,247,233,228,244,104,128,255,110,244,231,242,229,229,107,128,3,243,121,2,208,228,209,9,97,2,208,234,208,244,229,235,239,242,229,225,110,128,49,136,107,2,208,250,209,2,239,242,229,225,110,128,49,135,244,232,225,105,128,14,34,233,238,231,244,232,225,105,128,14,13,112,2,209,25,209,32,225,242,229,110,128,36,180,239,231,229,231,242,225,237,237,229,238,105,129,3,122,209,48,231,242,229,229,235,227,237,98,128,3,69,114,129,1,166,209,65,233,238,103,128,30,153,243,245,240,229,242,233,239,114,128,2,184,116,2,209,88,209,95,233,236,228,101,128,30,249,245,242,238,229,100,128,2,142,117,5,209,115,209,126,209,136,209,174,210,50,232,233,242,225,231,225,238,97,128,48,134,233,235,239,242,229,225,110,128,49,140,107,2,209,142,209,166,225,244,225,235,225,238,97,129,48,230,209,154,232,225,236,230,247,233,228,244,104,128,255,149,239,242,229,225,110,128,49,96,115,3,209,182,209,220,210,5,226,233,103,2,209,190,209,201,227,249,242,233,236,236,233,99,128,4,107,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,109,236,233,244,244,236,101,2,209,231,209,242,227,249,242,233,236,236,233,99,128,4,103,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,105,237,225,236,108,2,210,14,210,25,232,233,242,225,231,225,238,97,128,48,133,235,225,244,225,235,225,238,97,129,48,229,210,38,232,225,236,230,247,233,228,244,104,128,255,109,249,101,2,210,57,210,66,235,239,242,229,225,110,128,49,139,239,235,239,242,229,225,110,128,49,138,249,97,2,210,83,210,93,226,229,238,231,225,236,105,128,9,223,228,229,246,97,128,9,95,122,142,0,122,210,132,211,140,211,151,211,194,211,221,213,0,213,108,213,150,213,162,213,174,213,202,213,210,213,226,213,235,97,10,210,154,210,165,210,172,210,179,210,190,211,12,211,42,211,53,211,89,211,101,225,242,237,229,238,233,225,110,128,5,102,227,245,244,101,128,1,122,228,229,246,97,128,9,91,231,245,242,237,245,235,232,105,128,10,91,104,4,210,200,210,209,210,223,210,253,225,242,225,226,233,99,128,6,56,230,233,238,225,236,225,242,225,226,233,99,128,254,198,105,2,210,229,210,244,238,233,244,233,225,236,225,242,225,226,233,99,128,254,199,242,225,231,225,238,97,128,48,86,237,229,228,233,225,236,225,242,225,226,233,99,128,254,200,233,110,2,211,19,211,28,225,242,225,226,233,99,128,6,50,230,233,238,225,236,225,242,225,226,233,99,128,254,176,235,225,244,225,235,225,238,97,128,48,182,241,229,102,2,211,61,211,75,231,225,228,239,236,232,229,226,242,229,119,128,5,149,241,225,244,225,238,232,229,226,242,229,119,128,5,148,242,241,225,232,229,226,242,229,119,128,5,152,249,233,110,130,5,214,211,111,211,131,228,225,231,229,243,104,129,251,54,211,122,232,229,226,242,229,119,128,251,54,232,229,226,242,229,119,128,5,214,226,239,240,239,237,239,230,111,128,49,23,99,3,211,159,211,166,211,188,225,242,239,110,128,1,126,233,242,99,2,211,174,211,179,236,101,128,36,233,245,237,230,236,229,120,128,30,145,245,242,108,128,2,145,228,239,116,130,1,124,211,204,211,213,225,227,227,229,238,116,128,1,124,226,229,236,239,119,128,30,147,101,6,211,235,211,246,212,33,212,44,212,55,212,251,227,249,242,233,236,236,233,99,128,4,55,100,2,211,252,212,15,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,153,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,223,232,233,242,225,231,225,238,97,128,48,92,235,225,244,225,235,225,238,97,128,48,188,242,111,140,0,48,212,84,212,93,212,103,212,110,212,135,212,148,212,159,212,171,212,182,212,192,212,203,212,210,225,242,225,226,233,99,128,6,96,226,229,238,231,225,236,105,128,9,230,228,229,246,97,128,9,102,231,117,2,212,117,212,126,234,225,242,225,244,105,128,10,230,242,237,245,235,232,105,128,10,102,232,225,227,235,225,242,225,226,233,99,128,6,96,233,238,230,229,242,233,239,114,128,32,128,237,239,238,239,243,240,225,227,101,128,255,16,239,236,228,243,244,249,236,101,128,247,48,240,229,242,243,233,225,110,128,6,240,243,245,240,229,242,233,239,114,128,32,112,244,232,225,105,128,14,80,247,233,228,244,104,3,212,222,212,231,212,243,234,239,233,238,229,114,128,254,255,238,239,238,234,239,233,238,229,114,128,32,12,243,240,225,227,101,128,32,11,244,97,128,3,182,104,2,213,6,213,17,226,239,240,239,237,239,230,111,128,49,19,101,4,213,27,213,38,213,54,213,65,225,242,237,229,238,233,225,110,128,5,106,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,194,227,249,242,233,236,236,233,99,128,4,54,100,2,213,71,213,90,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,151,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,221,105,3,213,116,213,127,213,138,232,233,242,225,231,225,238,97,128,48,88,235,225,244,225,235,225,238,97,128,48,184,238,239,242,232,229,226,242,229,119,128,5,174,236,233,238,229,226,229,236,239,119,128,30,149,237,239,238,239,243,240,225,227,101,128,255,90,111,2,213,180,213,191,232,233,242,225,231,225,238,97,128,48,94,235,225,244,225,235,225,238,97,128,48,190,240,225,242,229,110,128,36,181,242,229,244,242,239,230,236,229,248,232,239,239,107,128,2,144,243,244,242,239,235,101,128,1,182,117,2,213,241,213,252,232,233,242,225,231,225,238,97,128,48,90,235,225,244,225,235,225,238,97,128,48,186,68,101,108,116,97,0,79,109,101,103,97,0,102,114,97,99,116,105,111,110,0,104,121,112,104,101,110,0,109,97,99,114,111,110,0,109,117,0,112,101,114,105,111,100,99,101,110,116,101,114,101,100,0,115,112,97,99,101,0,84,99,111,109,109,97,97,99,99,101,110,116,0,116,99,111,109,109,97,97,99,99,101,110,116,0,46,110,117,108,108,0,110,111,110,109,97,114,107,105,110,103,114,101,116,117,114,110,0,110,111,116,101,113,117,97,108,0,105,110,102,105,110,105,116,121,0,108,101,115,115,101,113,117,97,108,0,103,114,101,97,116,101,114,101,113,117,97,108,0,112,97,114,116,105,97,108,100,105,102,102,0,115,117,109,109,97,116,105,111,110,0,112,114,111,100,117,99,116,0,112,105,0,105,110,116,101,103,114,97,108,0,79,109,101,103,97,0,114,97,100,105,99,97,108,0,97,112,112,114,111,120,101,113,117,97,108,0,68,101,108,116,97,0,110,111,110,98,114,101,97,107,105,110,103,115,112,97,99,101,0,108,111,122,101,110,103,101,0,97,112,112,108,101,0,102,114,97,110,99,0,71,98,114,101,118,101,0,103,98,114,101,118,101,0,73,100,111,116,97,99,99,101,110,116,0,83,99,101,100,105,108,108,97,0,115,99,101,100,105,108,108,97,0,67,97,99,117,116,101,0,99,97,99,117,116,101,0,67,99,97,114,111,110,0,99,99,97,114,111,110,0,100,99,114,111,97,116,0,46,110,111,116,100,101,102,0,115,112,97,99,101,0,101,120,99,108,97,109,0,113,117,111,116,101,100,98,108,0,110,117,109,98,101,114,115,105,103,110,0,100,111,108,108,97,114,0,112,101,114,99,101,110,116,0,97,109,112,101,114,115,97,110,100,0,113,117,111,116,101,114,105,103,104,116,0,112,97,114,101,110,108,101,102,116,0,112,97,114,101,110,114,105,103,104,116,0,97,115,116,101,114,105,115,107,0,112,108,117,115,0,99,111,109,109,97,0,104,121,112,104,101,110,0,112,101,114,105,111,100,0,115,108,97,115,104,0,122,101,114,111,0,111,110,101,0,116,119,111,0,116,104,114,101,101,0,102,111,117,114,0,102,105,118,101,0,115,105,120,0,115,101,118,101,110,0,101,105,103,104,116,0,110,105,110,101,0,99,111,108,111,110,0,115,101,109,105,99,111,108,111,110,0,108,101,115,115,0,101,113,117,97,108,0,103,114,101,97,116,101,114,0,113,117,101,115,116,105,111,110,0,97,116,0,65,0,66,0,67,0,68,0,69,0,70,0,71,0,72,0,73,0,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,98,114,97,99,107,101,116,108,101,102,116,0,98,97,99,107,115,108,97,115,104,0,98,114,97,99,107,101,116,114,105,103,104,116,0,97,115,99,105,105,99,105,114,99,117,109,0,117,110,100,101,114,115,99,111,114,101,0,113,117,111,116,101,108,101,102,116,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,111,0,112,0,113,0,114,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,98,114,97,99,101,108,101,102,116,0,98,97,114,0,98,114,97,99,101,114,105,103,104,116,0,97,115,99,105,105,116,105,108,100,101,0,101,120,99,108,97,109,100,111,119,110,0,99,101,110,116,0,115,116,101,114,108,105,110,103,0,102,114,97,99,116,105,111,110,0,121,101,110,0,102,108,111,114,105,110,0,115,101,99,116,105,111,110,0,99,117,114,114,101,110,99,121,0,113,117,111,116,101,115,105,110,103,108,101,0,113,117,111,116,101,100,98,108,108,101,102,116,0,103,117,105,108,108,101,109,111,116,108,101,102,116,0,103,117,105,108,115,105,110,103,108,108,101,102,116,0,103,117,105,108,115,105,110,103,108,114,105,103,104,116,0,102,105,0,102,108,0,101,110,100,97,115,104,0,100,97,103,103,101,114,0,100,97,103,103,101,114,100,98,108,0,112,101,114,105,111,100,99,101,110,116,101,114,101,100,0,112,97,114,97,103,114,97,112,104,0,98,117,108,108,101,116,0,113,117,111,116,101,115,105,110,103,108,98,97,115,101,0,113,117,111,116,101,100,98,108,98,97,115,101,0,113,117,111,116,101,100,98,108,114,105,103,104,116,0,103,117,105,108,108,101,109,111,116,114,105,103,104,116,0,101,108,108,105,112,115,105,115,0,112,101,114,116,104,111,117,115,97,110,100,0,113,117,101,115,116,105,111,110,100,111,119,110,0,103,114,97,118,101,0,97,99,117,116,101,0,99,105,114,99,117,109,102,108,101,120,0,116,105,108,100,101,0,109,97,99,114,111,110,0,98,114,101,118,101,0,100,111,116,97,99,99,101,110,116,0,100,105,101,114,101,115,105,115,0,114,105,110,103,0,99,101,100,105,108,108,97,0,104,117,110,103,97,114,117,109,108,97,117,116,0,111,103,111,110,101,107,0,99,97,114,111,110,0,101,109,100,97,115,104,0,65,69,0,111,114,100,102,101,109,105,110,105,110,101,0,76,115,108,97,115,104,0,79,115,108,97,115,104,0,79,69,0,111,114,100,109,97,115,99,117,108,105,110,101,0,97,101,0,100,111,116,108,101,115,115,105,0,108,115,108,97,115,104,0,111,115,108,97,115,104,0,111,101,0,103,101,114,109,97,110,100,98,108,115,0,111,110,101,115,117,112,101,114,105,111,114,0,108,111,103,105,99,97,108,110,111,116,0,109,117,0,116,114,97,100,101,109,97,114,107,0,69,116,104,0,111,110,101,104,97,108,102,0,112,108,117,115,109,105,110,117,115,0,84,104,111,114,110,0,111,110,101,113,117,97,114,116,101,114,0,100,105,118,105,100,101,0,98,114,111,107,101,110,98,97,114,0,100,101,103,114,101,101,0,116,104,111,114,110,0,116,104,114,101,101,113,117,97,114,116,101,114,115,0,116,119,111,115,117,112,101,114,105,111,114,0,114,101,103,105,115,116,101,114,101,100,0,109,105,110,117,115,0,101,116,104,0,109,117,108,116,105,112,108,121,0,116,104,114,101,101,115,117,112,101,114,105,111,114,0,99,111,112,121,114,105,103,104,116,0,65,97,99,117,116,101,0,65,99,105,114,99,117,109,102,108,101,120,0,65,100,105,101,114,101,115,105,115,0,65,103,114,97,118,101,0,65,114,105,110,103,0,65,116,105,108,100,101,0,67,99,101,100,105,108,108,97,0,69,97,99,117,116,101,0,69,99,105,114,99,117,109,102,108,101,120,0,69,100,105,101,114,101,115,105,115,0,69,103,114,97,118,101,0,73,97,99,117,116,101,0,73,99,105,114,99,117,109,102,108,101,120,0,73,100,105,101,114,101,115,105,115,0,73,103,114,97,118,101,0,78,116,105,108,100,101,0,79,97,99,117,116,101,0,79,99,105,114,99,117,109,102,108,101,120,0,79,100,105,101,114,101,115,105,115,0,79,103,114,97,118,101,0,79,116,105,108,100,101,0,83,99,97,114,111,110,0,85,97,99,117,116,101,0,85,99,105,114,99,117,109,102,108,101,120,0,85,100,105,101,114,101,115,105,115,0,85,103,114,97,118,101,0,89,97,99,117,116,101,0,89,100,105,101,114,101,115,105,115,0,90,99,97,114,111,110,0,97,97,99,117,116,101,0,97,99,105,114,99,117,109,102,108,101,120,0,97,100,105,101,114,101,115,105,115,0,97,103,114,97,118,101,0,97,114,105,110,103,0,97,116,105,108,100,101,0,99,99,101,100,105,108,108,97,0,101,97,99,117,116,101,0,101,99,105,114,99,117,109,102,108,101,120,0,101,100,105,101,114,101,115,105,115,0,101,103,114,97,118,101,0,105,97,99,117,116,101,0,105,99,105,114,99,117,109,102,108,101,120,0,105,100,105,101,114,101,115,105,115,0,105,103,114,97,118,101,0,110,116,105,108,100,101,0,111,97,99,117,116,101,0,111,99,105,114,99,117,109,102,108,101,120,0,111,100,105,101,114,101,115,105,115,0,111,103,114,97,118,101,0,111,116,105,108,100,101,0,115,99,97,114,111,110,0,117,97,99,117,116,101,0,117,99,105,114,99,117,109,102,108,101,120,0,117,100,105,101,114,101,115,105,115,0,117,103,114,97,118,101,0,121,97,99,117,116,101,0,121,100,105,101,114,101,115,105,115,0,122,99,97,114,111,110,0,101,120,99,108,97,109,115,109,97,108,108,0,72,117,110,103,97,114,117,109,108,97,117,116,115,109,97,108,108,0,100,111,108,108,97,114,111,108,100,115,116,121,108,101,0,100,111,108,108,97,114,115,117,112,101,114,105,111,114,0,97,109,112,101,114,115,97,110,100,115,109,97,108,108,0,65,99,117,116,101,115,109,97,108,108,0,112,97,114,101,110,108,101,102,116,115,117,112,101,114,105,111,114,0,112,97,114,101,110,114,105,103,104,116,115,117,112,101,114,105,111,114,0,116,119,111,100,111,116,101,110,108,101,97,100,101,114,0,111,110,101,100,111,116,101,110,108,101,97,100,101,114,0,122,101,114,111,111,108,100,115,116,121,108,101,0,111,110,101,111,108,100,115,116,121,108,101,0,116,119,111,111,108,100,115,116,121,108,101,0,116,104,114,101,101,111,108,100,115,116,121,108,101,0,102,111,117,114,111,108,100,115,116,121,108,101,0,102,105,118,101,111,108,100,115,116,121,108,101,0,115,105,120,111,108,100,115,116,121,108,101,0,115,101,118,101,110,111,108,100,115,116,121,108,101,0,101,105,103,104,116,111,108,100,115,116,121,108,101,0,110,105,110,101,111,108,100,115,116,121,108,101,0,99,111,109,109,97,115,117,112,101,114,105,111,114,0,116,104,114,101,101,113,117,97,114,116,101,114,115,101,109,100,97,115,104,0,112,101,114,105,111,100,115,117,112,101,114,105,111,114,0,113,117,101,115,116,105,111,110,115,109,97,108,108,0,97,115,117,112,101,114,105,111,114,0,98,115,117,112,101,114,105,111,114,0,99,101,110,116,115,117,112,101,114,105,111,114,0,100,115,117,112,101,114,105,111,114,0,101,115,117,112,101,114,105,111,114,0,105,115,117,112,101,114,105,111,114,0,108,115,117,112,101,114,105,111,114,0,109,115,117,112,101,114,105,111,114,0,110,115,117,112,101,114,105,111,114,0,111,115,117,112,101,114,105,111,114,0,114,115,117,112,101,114,105,111,114,0,115,115,117,112,101,114,105,111,114,0,116,115,117,112,101,114,105,111,114,0,102,102,0,102,102,105,0,102,102,108,0,112,97,114,101,110,108,101,102,116,105,110,102,101,114,105,111,114,0,112,97,114,101,110,114,105,103,104,116,105,110,102,101,114,105,111,114,0,67,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,104,121,112,104,101,110,115,117,112,101,114,105,111,114,0,71,114,97,118,101,115,109,97,108,108,0,65,115,109,97,108,108,0,66,115,109,97,108,108,0,67,115,109,97,108,108,0,68,115,109,97,108,108,0,69,115,109,97,108,108,0,70,115,109,97,108,108,0,71,115,109,97,108,108,0,72,115,109,97,108,108,0,73,115,109,97,108,108,0,74,115,109,97,108,108,0,75,115,109,97,108,108,0,76,115,109,97,108,108,0,77,115,109,97,108,108,0,78,115,109,97,108,108,0,79,115,109,97,108,108,0,80,115,109,97,108,108,0,81,115,109,97,108,108,0,82,115,109,97,108,108,0,83,115,109,97,108,108,0,84,115,109,97,108,108,0,85,115,109,97,108,108,0,86,115,109,97,108,108,0,87,115,109,97,108,108,0,88,115,109,97,108,108,0,89,115,109,97,108,108,0,90,115,109,97,108,108,0,99,111,108,111,110,109,111,110,101,116,97,114,121,0,111,110,101,102,105,116,116,101,100,0,114,117,112,105,97,104,0,84,105,108,100,101,115,109,97,108,108,0,101,120,99,108,97,109,100,111,119,110,115,109,97,108,108,0,99,101,110,116,111,108,100,115,116,121,108,101,0,76,115,108,97,115,104,115,109,97,108,108,0,83,99,97,114,111,110,115,109,97,108,108,0,90,99,97,114,111,110,115,109,97,108,108,0,68,105,101,114,101,115,105,115,115,109,97,108,108,0,66,114,101,118,101,115,109,97,108,108,0,67,97,114,111,110,115,109,97,108,108,0,68,111,116,97,99,99,101,110,116,115,109,97,108,108,0,77,97,99,114,111,110,115,109,97,108,108,0,102,105,103,117,114,101,100,97,115,104,0,104,121,112,104,101,110,105,110,102,101,114,105,111,114,0,79,103,111,110,101,107,115,109,97,108,108,0,82,105,110,103,115,109,97,108,108,0,67,101,100,105,108,108,97,115,109,97,108,108,0,113,117,101,115,116,105,111,110,100,111,119,110,115,109,97,108,108,0,111,110,101,101,105,103,104,116,104,0,116,104,114,101,101,101,105,103,104,116,104,115,0,102,105,118,101,101,105,103,104,116,104,115,0,115,101,118,101,110,101,105,103,104,116,104,115,0,111,110,101,116,104,105,114,100,0,116,119,111,116,104,105,114,100,115,0,122,101,114,111,115,117,112,101,114,105,111,114,0,102,111,117,114,115,117,112,101,114,105,111,114,0,102,105,118,101,115,117,112,101,114,105,111,114,0,115,105,120,115,117,112,101,114,105,111,114,0,115,101,118,101,110,115,117,112,101,114,105,111,114,0,101,105,103,104,116,115,117,112,101,114,105,111,114,0,110,105,110,101,115,117,112,101,114,105,111,114,0,122,101,114,111,105,110,102,101,114,105,111,114,0,111,110,101,105,110,102,101,114,105,111,114,0,116,119,111,105,110,102,101,114,105,111,114,0,116,104,114,101,101,105,110,102,101,114,105,111,114,0,102,111,117,114,105,110,102,101,114,105,111,114,0,102,105,118,101,105,110,102,101,114,105,111,114,0,115,105,120,105,110,102,101,114,105,111,114,0,115,101,118,101,110,105,110,102,101,114,105,111,114,0,101,105,103,104,116,105,110,102,101,114,105,111,114,0,110,105,110,101,105,110,102,101,114,105,111,114,0,99,101,110,116,105,110,102,101,114,105,111,114,0,100,111,108,108,97,114,105,110,102,101,114,105,111,114,0,112,101,114,105,111,100,105,110,102,101,114,105,111,114,0,99,111,109,109,97,105,110,102,101,114,105,111,114,0,65,103,114,97,118,101,115,109,97,108,108,0,65,97,99,117,116,101,115,109,97,108,108,0,65,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,65,116,105,108,100,101,115,109,97,108,108,0,65,100,105,101,114,101,115,105,115,115,109,97,108,108,0,65,114,105,110,103,115,109,97,108,108,0,65,69,115,109,97,108,108,0,67,99,101,100,105,108,108,97,115,109,97,108,108,0,69,103,114,97,118,101,115,109,97,108,108,0,69,97,99,117,116,101,115,109,97,108,108,0,69,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,69,100,105,101,114,101,115,105,115,115,109,97,108,108,0,73,103,114,97,118,101,115,109,97,108,108,0,73,97,99,117,116,101,115,109,97,108,108,0,73,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,73,100,105,101,114,101,115,105,115,115,109,97,108,108,0,69,116,104,115,109,97,108,108,0,78,116,105,108,100,101,115,109,97,108,108,0,79,103,114,97,118,101,115,109,97,108,108,0,79,97,99,117,116,101,115,109,97,108,108,0,79,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,79,116,105,108,100,101,115,109,97,108,108,0,79,100,105,101,114,101,115,105,115,115,109,97,108,108,0,79,69,115,109,97,108,108,0,79,115,108,97,115,104,115,109,97,108,108,0,85,103,114,97,118,101,115,109,97,108,108,0,85,97,99,117,116,101,115,109,97,108,108,0,85,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,85,100,105,101,114,101,115,105,115,115,109,97,108,108,0,89,97,99,117,116,101,115,109,97,108,108,0,84,104,111,114,110,115,109,97,108,108,0,89,100,105,101,114,101,115,105,115,115,109,97,108,108,0,48,48,49,46,48,48,48,0,48,48,49,46,48,48,49,0,48,48,49,46,48,48,50,0,48,48,49,46,48,48,51,0,66,108,97,99,107,0,66,111,108,100,0,66,111,111,107,0,76,105,103,104,116,0,77,101,100,105,117,109,0,82,101,103,117,108,97,114,0,82,111,109,97,110,0,83,101,109,105,98,111,108,100,0,112,111,115,116,115,99,114,105,112,116,45,99,109,97,112,115,0,114,98,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,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,18,0,0,0,18,18,18,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,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+61440);allocate([0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0,114,119,97,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+71680);var tempDoublePtr=STATICTOP;STATICTOP+=16;Module["_i64Subtract"]=_i64Subtract;Module["_i64Add"]=_i64Add;Module["_memset"]=_memset;function _pthread_cleanup_push(routine,arg){__ATEXIT__.push((function(){Runtime.dynCall("vi",routine,[arg])}));_pthread_cleanup_push.level=__ATEXIT__.length}Module["_bitshift64Lshr"]=_bitshift64Lshr;Module["_bitshift64Shl"]=_bitshift64Shl;function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!");__ATEXIT__.pop();_pthread_cleanup_push.level=__ATEXIT__.length}function _abort(){Module["abort"]()}function _realloc(){throw"bad"}Module["_realloc"]=_realloc;Module["_saveSetjmp"]=_saveSetjmp;Module["_testSetjmp"]=_testSetjmp;function _longjmp(env,value){asm["setThrew"](env,value||1);throw"longjmp"}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"};function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>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){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up--;up){parts.unshift("..")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))}),join2:(function(l,r){return PATH.normalize(l+"/"+r)}),resolve:(function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter((function(p){return!!p})),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start<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(){}),shutdown:(function(){}),register:(function(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)}),stream_ops:{open:(function(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}stream.tty=tty;stream.seekable=false}),close:(function(stream){stream.tty.ops.flush(stream.tty)}),flush:(function(stream){stream.tty.ops.flush(stream.tty)}),read:(function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(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){var BUFSIZE=256;var buf=new Buffer(BUFSIZE);var bytesRead=0;var fd=process.stdin.fd;var usingDevice=false;try{fd=fs.openSync("/dev/stdin","r");usingDevice=true}catch(e){}bytesRead=fs.readSync(fd,buf,0,BUFSIZE,null);if(usingDevice){fs.closeSync(fd)}if(bytesRead>0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;i<node.usedBytes;++i)arr.push(node.contents[i]);return arr}return node.contents}),getFileDataAsTypedArray:(function(node){if(!node.contents)return new Uint8Array;if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)}),expandFileStorage:(function(node,newCapacity){if(node.contents&&node.contents.subarray&&newCapacity>node.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.buffer.byteLength:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity<CAPACITY_DOUBLING_MAX?2:1.125)|0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}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;node.usedBytes=0;return}if(!node.contents||node.contents.subarray){var oldContents=node.contents;node.contents=new Uint8Array(new ArrayBuffer(newSize));if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize;return}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={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}}),lookup:(function(parent,name){throw FS.genericErrors[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(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)}}}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|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){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i<size;i++)buffer[offset+i]=contents[position+i]}return size}),write:(function(stream,buffer,offset,length,position,canOwn){if(!length)return 0;var node=stream.node;node.timestamp=Date.now();if(buffer.subarray&&(!node.contents||node.contents.subarray)){if(canOwn){node.contents=buffer.subarray(offset,offset+length);node.usedBytes=length;return length}else if(node.usedBytes===0&&position===0){node.contents=new Uint8Array(buffer.subarray(offset,offset+length));node.usedBytes=length;return length}else if(position+length<=node.usedBytes){node.contents.set(buffer.subarray(offset,offset+length),position);return length}}MEMFS.expandFileStorage(node,position+length);if(node.contents.subarray&&buffer.subarray)node.contents.set(buffer.subarray(offset,offset+length),position);else{for(var i=0;i<length;i++){node.contents[position+i]=buffer[offset+i]}}node.usedBytes=Math.max(node.usedBytes,position+length);return length}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.usedBytes}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}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;if(!(flags&2)&&(contents.buffer===buffer||contents.buffer===buffer.buffer)){allocated=false;ptr=contents.byteOffset}else{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}}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}if(mmapFlags&2){return 0}var bytesWritten=MEMFS.stream_ops.write(stream,buffer,0,length,offset,false);return 0})}};var IDBFS={dbs:{},indexedDB:(function(){if(typeof indexedDB!=="undefined")return indexedDB;var ret=null;if(typeof window==="object")ret=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;assert(ret,"IDBFS used, but indexedDB not supported");return ret}),DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",mount:(function(mount){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){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)}if(!fileStore.indexNames.contains("timestamp")){fileStore.createIndex("timestamp","timestamp",{unique:false})}});req.onsuccess=(function(){db=req.result;IDBFS.dbs[name]=db;callback(null,db)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),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(e){callback(this.error);e.preventDefault()});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)){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.chmod(path,entry.mode);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(e){callback(this.error);e.preventDefault()})}),storeRemoteEntry:(function(store,path,entry,callback){var req=store.put(entry,path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),removeRemoteEntry:(function(store,path,callback){var req=store.delete(path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),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 completed=0;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err){if(!done.errored){done.errored=true;return callback(err)}return}if(++completed>=total){return callback(null)}}transaction.onerror=(function(e){done(this.error);e.preventDefault()});create.sort().forEach((function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,(function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)}))}else{IDBFS.loadLocalEntry(path,(function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)}))}}));remove.sort().reverse().forEach((function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}}))})};var NODEFS={isWindows:false,staticInit:(function(){NODEFS.isWindows=!!process.platform.match(/^win/)}),mount:(function(mount){assert(ENVIRONMENT_IS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)}),createNode:(function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node}),getMode:(function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&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){flags&=~32768;flags&=~524288;if(flags in NODEFS.flagsToPermissionStringMap){return NODEFS.flagsToPermissionStringMap[flags]}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.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){if(length===0)return 0;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){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){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:(function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i<parts.length-1;i++){var curr=parts.slice(0,i+1).join("/");if(!createdParents[curr]){createdParents[curr]=WORKERFS.createNode(parent,curr,WORKERFS.DIR_MODE,0)}parent=createdParents[curr]}return parent}function base(path){var parts=path.split("/");return parts[parts.length-1]}Array.prototype.forEach.call(mount.opts["files"]||[],(function(file){WORKERFS.createNode(ensureParent(file.name),base(file.name),WORKERFS.FILE_MODE,0,file,file.lastModifiedDate)}));(mount.opts["blobs"]||[]).forEach((function(obj){WORKERFS.createNode(ensureParent(obj["name"]),base(obj["name"]),WORKERFS.FILE_MODE,0,obj["data"])}));(mount.opts["packages"]||[]).forEach((function(pack){pack["metadata"].files.forEach((function(file){var name=file.filename.substr(1);WORKERFS.createNode(ensureParent(name),base(name),WORKERFS.FILE_MODE,0,pack["blob"].slice(file.start,file.end))}))}));return root}),createNode:(function(parent,name,mode,dev,contents,mtime){var node=FS.createNode(parent,name,mode);node.mode=mode;node.node_ops=WORKERFS.node_ops;node.stream_ops=WORKERFS.stream_ops;node.timestamp=(mtime||new Date).getTime();assert(WORKERFS.FILE_MODE!==WORKERFS.DIR_MODE);if(mode===WORKERFS.FILE_MODE){node.size=contents.size;node.contents=contents}else{node.size=4096;node.contents={}}if(parent){parent.contents[name]=node}return node}),node_ops:{getattr:(function(node){return{dev:1,ino:undefined,mode:node.mode,nlink:1,uid:0,gid:0,rdev:undefined,size:node.size,atime:new Date(node.timestamp),mtime:new Date(node.timestamp),ctime:new Date(node.timestamp),blksize:4096,blocks:Math.ceil(node.size/4096)}}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}}),lookup:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}),mknod:(function(parent,name,mode,dev){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rename:(function(oldNode,newDir,newName){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),unlink:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rmdir:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readdir:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),symlink:(function(parent,newName,oldPath){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readlink:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)})},stream_ops:{read:(function(stream,buffer,offset,length,position){if(position>=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size}),write:(function(stream,buffer,offset,length,position){throw new FS.ErrnoError(ERRNO_CODES.EIO)}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};STATICTOP+=16;STATICTOP+=16;STATICTOP+=16;var FS={root:null,mounts:[],devices:[null],streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i<parts.length;i++){var islast=i===parts.length-1;if(islast&&opts.parent){break}current=FS.lookupNode(current,parts[i]);current_path=PATH.join2(current_path,parts[i]);if(FS.isMountpoint(current)){if(!islast||islast&&opts.follow_mount){current=current.mounted.root}}if(!islast||opts.follow){var count=0;while(FS.isLink(current.mode)){var link=FS.readlink(current_path);current_path=PATH.resolve(PATH.dirname(current_path),link);var lookup=FS.lookupPath(current_path,{recurse_count:opts.recurse_count});current=lookup.node;if(count++>40){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,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return ERRNO_CODES.EACCES}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return ERRNO_CODES.EACCES}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return ERRNO_CODES.EACCES}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return ERRNO_CODES.EACCES;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return ERRNO_CODES.EEXIST}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return ERRNO_CODES.ENOTDIR}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return ERRNO_CODES.EBUSY}}else{if(FS.isDir(node.mode)){return ERRNO_CODES.EISDIR}}return 0}),mayOpen:(function(node,flags){if(!node){return ERRNO_CODES.ENOENT}if(FS.isLink(node.mode)){return ERRNO_CODES.ELOOP}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return ERRNO_CODES.EISDIR}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(ERRNO_CODES.EMFILE)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdev:(function(path,mode,dev){if(typeof dev==="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)}),symlink:(function(oldpath,newpath){if(!PATH.resolve(oldpath)){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}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);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)}if(!old_dir||!new_dir)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(ERRNO_CODES.EXDEV)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}relative=PATH.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var err=FS.mayDelete(old_dir,old_name,isdir);if(err){throw new FS.ErrnoError(err)}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(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)}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}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){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){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!link.node_ops.readlink){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return PATH.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))}),stat:(function(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}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()})}),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:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path==="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(ERRNO_CODES.EEXIST)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}if(!created){var err=FS.mayOpen(node,flags);if(err){throw new FS.ErrnoError(err)}}if(flags&512){FS.truncate(node,0)}flags&=~(128|512);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false},fd_start,fd_end);if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1;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){if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}}),llseek:(function(stream,offset,whence){if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position}),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){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){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)}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!stream||!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)}),munmap:(function(stream){return 0}),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=UTF8ArrayToString(buf,0)}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 buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,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");FS.mkdir("/home");FS.mkdir("/home/web_user")}),createDefaultDevices:(function(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:(function(){return 0}),write:(function(stream,buffer,offset,length,pos){return length})});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var random_device;if(typeof crypto!=="undefined"){var randomBuffer=new Uint8Array(1);random_device=(function(){crypto.getRandomValues(randomBuffer);return randomBuffer[0]})}else if(ENVIRONMENT_IS_NODE){random_device=(function(){return require("crypto").randomBytes(1)[0]})}else{random_device=(function(){return Math.random()*256|0})}FS.createDevice("/dev","random",random_device);FS.createDevice("/dev","urandom",random_device);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")}),createSpecialDirectories:(function(){FS.mkdir("/proc");FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:(function(){var node=FS.createNode("/proc/self","fd",16384|511,73);node.node_ops={lookup:(function(parent,name){var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:(function(){return stream.path})}};ret.parent=ret;return ret})};return node})},{},"/proc/self/fd")}),createStandardStreams:(function(){if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin","r");assert(stdin.fd===0,"invalid handle for stdin ("+stdin.fd+")");var stdout=FS.open("/dev/stdout","w");assert(stdout.fd===1,"invalid handle for stdout ("+stdout.fd+")");var stderr=FS.open("/dev/stderr","w");assert(stderr.fd===2,"invalid handle for stderr ("+stderr.fd+")")}),ensureErrnoError:(function(){if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.node=node;this.setErrno=(function(errno){this.errno=errno;for(var key in ERRNO_CODES){if(ERRNO_CODES[key]===errno){this.code=key;break}}});this.setErrno(errno);this.message=ERRNO_MESSAGES[errno]};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[ERRNO_CODES.ENOENT].forEach((function(code){FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack="<generic error, no stack>"}))}),staticInit:(function(){FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS,"IDBFS":IDBFS,"NODEFS":NODEFS,"WORKERFS":WORKERFS}}),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();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()}),quit:(function(){FS.init.initialized=false;var fflush=Module["_fflush"];if(fflush)fflush(0);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){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){}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}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);FS.registerDevice(dev,{open:(function(stream){stream.seekable=false}),close:(function(stream){if(output&&output.buffer&&output.buffer.length){output(10)}}),read:(function(stream,buffer,offset,length,pos){var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=input()}catch(e){throw new FS.ErrnoError(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"]){try{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){function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype.get=function LazyUint8Array_get(idx){if(idx>this.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i<size;i++){buffer[offset+i]=contents[position+i]}}else{for(var i=0;i<size;i++){buffer[offset+i]=contents.get(position+i)}}return size};node.stream_ops=stream_ops;return node}),createPreloadedFile:(function(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish){Browser.init();var fullname=name?PATH.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency("cp "+fullname);function processData(byteArray){function finish(byteArray){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency(dep)}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(dep)}));handled=true}}));if(!handled)finish(byteArray)}addRunDependency(dep);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;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})};var SYSCALLS={DEFAULT_POLLMASK:5,mappings:{},umask:511,calculateAt:(function(dirfd,path){if(path[0]!=="/"){var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=FS.getStream(dirfd);if(!dirstream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);dir=dirstream.path}path=PATH.join2(dir,path)}return path}),doStat:(function(func,path,buf){try{var stat=func(path)}catch(e){if(e&&e.node&&PATH.normalize(path)!==PATH.normalize(FS.getPath(e.node))){return-ERRNO_CODES.ENOTDIR}throw e}HEAP32[buf>>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;HEAP32[buf+36>>2]=stat.size;HEAP32[buf+40>>2]=4096;HEAP32[buf+44>>2]=stat.blocks;HEAP32[buf+48>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+52>>2]=0;HEAP32[buf+56>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ino;return 0}),doMsync:(function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)}),doMkdir:(function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0}),doMknod:(function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-ERRNO_CODES.EINVAL}FS.mknod(path,mode,dev);return 0}),doReadlink:(function(path,buf,bufsize){if(bufsize<=0)return-ERRNO_CODES.EINVAL;var ret=FS.readlink(path);ret=ret.slice(0,Math.max(0,bufsize));writeStringToMemory(ret,buf,true);return ret.length}),doAccess:(function(path,amode){if(amode&~7){return-ERRNO_CODES.EINVAL}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-ERRNO_CODES.EACCES}return 0}),doDup:(function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd}),doReadv:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr<len)break}return ret}),doWritev:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret}),varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),getStreamFromFD:(function(){var stream=FS.getStream(SYSCALLS.get());if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return stream}),getSocketFromFD:(function(){var socket=SOCKFS.getSocket(SYSCALLS.get());if(!socket)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return socket}),getSocketAddress:(function(allowNull){var addrp=SYSCALLS.get(),addrlen=SYSCALLS.get();if(allowNull&&addrp===0)return null;var info=__read_sockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___lock(){}function ___unlock(){}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:return totalMemory/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 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 79:return 0;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:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}function _sbrk(bytes){var self=_sbrk;if(!self.called){DYNAMICTOP=alignMemoryPage(DYNAMICTOP);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){var success=self.alloc(bytes);if(!success)return-1>>>0}return ret}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;Module["_memmove"]=_memmove;function _emscripten_set_main_loop_timing(mode,value){Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){setTimeout(Browser.mainLoop.runner,value)};Browser.mainLoop.method="timeout"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method="rAF"}else if(mode==2){if(!window["setImmediate"]){var setImmediates=[];var emscriptenMainLoopMessageId="__emcc";function Browser_setImmediate_messageHandler(event){if(event.source===window&&event.data===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}}window.addEventListener("message",Browser_setImmediate_messageHandler,true);window["setImmediate"]=function Browser_emulated_setImmediate(func){setImmediates.push(func);window.postMessage(emscriptenMainLoopMessageId,"*")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){window["setImmediate"](Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop,arg,noSetTiming){Module["noExitRuntime"]=true;assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");Browser.mainLoop.func=func;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;Browser.mainLoop.runner=function Browser_mainLoop_runner(){if(ABORT)return;if(Browser.mainLoop.queue.length>0){var start=Date.now();var blocker=Browser.mainLoop.queue.shift();blocker.func(blocker.arg);if(Browser.mainLoop.remainingBlockers){var remaining=Browser.mainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){Browser.mainLoop.remainingBlockers=next}else{next=next+.5;Browser.mainLoop.remainingBlockers=(8*remaining+next)/9}}console.log('main loop blocker "'+blocker.name+'" took '+(Date.now()-start)+" ms");Browser.mainLoop.updateStatus();if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;setTimeout(Browser.mainLoop.runner,0);return}if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0;if(Browser.mainLoop.timingMode==1&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}if(Browser.mainLoop.method==="timeout"&&Module.ctx){Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!");Browser.mainLoop.method=""}Browser.mainLoop.runIter((function(){if(typeof arg!=="undefined"){Runtime.dynCall("vi",func,[arg])}else{Runtime.dynCall("v",func)}}));if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;if(typeof SDL==="object"&&SDL.audio&&SDL.audio.queueNewAudioData)SDL.audio.queueNewAudioData();Browser.mainLoop.scheduler()};if(!noSetTiming){if(fps&&fps>0)_emscripten_set_main_loop_timing(0,1e3/fps);else _emscripten_set_main_loop_timing(1,1);Browser.mainLoop.scheduler()}if(simulateInfiniteLoop){throw"SimulateInfiniteLoop"}}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:(function(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++}),resume:(function(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;_emscripten_set_main_loop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()}),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}}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"]=[];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}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){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);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;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);var audio=new Audio;audio.addEventListener("canplaythrough",(function(){finish(audio)}),false);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&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src="data:audio/x-"+name.substr(-3)+";base64,"+encode64(byteArray);finish(audio)};audio.src=url;Browser.safeSetTimeout((function(){finish(audio)}),1e4)}else{return fail()}};Module["preloadPlugins"].push(audioPlugin);var canvas=Module["canvas"];function pointerLockChange(){Browser.pointerLock=document["pointerLockElement"]===canvas||document["mozPointerLockElement"]===canvas||document["webkitPointerLockElement"]===canvas||document["msPointerLockElement"]===canvas}if(canvas){canvas.requestPointerLock=canvas["requestPointerLock"]||canvas["mozRequestPointerLock"]||canvas["webkitRequestPointerLock"]||canvas["msRequestPointerLock"]||(function(){});canvas.exitPointerLock=document["exitPointerLock"]||document["mozExitPointerLock"]||document["webkitExitPointerLock"]||document["msExitPointerLock"]||(function(){});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&&canvas==Module.canvas)return Module.ctx;var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}canvas.style.backgroundColor="black"}else{ctx=canvas.getContext("2d")}if(!ctx)return null;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)GL.makeContextCurrent(contextHandle);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,vrDevice){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;Browser.vrDevice=vrDevice;if(typeof Browser.lockPointer==="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas==="undefined")Browser.resizeCanvas=false;if(typeof Browser.vrDevice==="undefined")Browser.vrDevice=null;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{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)}var canvasContainer=document.createElement("div");canvas.parentNode.insertBefore(canvasContainer,canvas);canvasContainer.appendChild(canvas);canvasContainer.requestFullScreen=canvasContainer["requestFullScreen"]||canvasContainer["mozRequestFullScreen"]||canvasContainer["msRequestFullscreen"]||(canvasContainer["webkitRequestFullScreen"]?(function(){canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"])}):null);if(vrDevice){canvasContainer.requestFullScreen({vrDisplay:vrDevice})}else{canvasContainer.requestFullScreen()}}),nextRAF:0,fakeRequestAnimationFrame:(function(func){var now=Date.now();if(Browser.nextRAF===0){Browser.nextRAF=now+1e3/60}else{while(now+2>=Browser.nextRAF){Browser.nextRAF+=1e3/60}}var delay=Math.max(Browser.nextRAF-now,0);setTimeout(func,delay)}),requestAnimationFrame:function requestAnimationFrame(func){if(typeof window==="undefined"){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)})}),allowAsyncCallbacks:true,queuedAsyncCallbacks:[],pauseAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=false}),resumeAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=true;if(Browser.queuedAsyncCallbacks.length>0){var callbacks=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[];callbacks.forEach((function(func){func()}))}}),safeRequestAnimationFrame:(function(func){return Browser.requestAnimationFrame((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}))}),safeSetTimeout:(function(func,timeout){Module["noExitRuntime"]=true;return setTimeout((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}),timeout)}),safeSetInterval:(function(func,timeout){Module["noExitRuntime"]=true;return setInterval((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){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 delta}),mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:(function(event){if(Browser.pointerLock){if(event.type!="mousemove"&&"mozMovementX"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}if(typeof SDL!="undefined"){Browser.mouseX=SDL.mouseX+Browser.mouseMovementX;Browser.mouseY=SDL.mouseY+Browser.mouseMovementY}else{Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}}else{var rect=Module["canvas"].getBoundingClientRect();var cw=Module["canvas"].width;var ch=Module["canvas"].height;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}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"){var last=Browser.touches[touch.identifier];if(!last)last=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}var x=event.pageX-(scrollX+rect.left);var y=event.pageY-(scrollY+rect.top);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}}),asyncLoad:(function(url,onload,onerror,noRunDep){Module["readAsync"](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(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags|8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),setWindowedCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags&~8388608;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")}}}}),wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle:(function(){var handle=Browser.nextWgetRequestHandle;Browser.nextWgetRequestHandle++;return handle})};function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}function _pthread_self(){return 0}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;assert(offset_high===0);FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21506:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((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;Module["FS_unlink"]=FS.unlink;__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}Module["requestFullScreen"]=function Module_requestFullScreen(lockPointer,resizeCanvas,vrDevice){Browser.requestFullScreen(lockPointer,resizeCanvas,vrDevice)};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()};Module["createContext"]=function Module_createContext(canvas,useWebGL,setInModule,webGLContextAttributes){return Browser.createContext(canvas,useWebGL,setInModule,webGLContextAttributes)};STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);staticSealed=true;STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX);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);function invoke_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){try{return Module["dynCall_iiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}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_viiiii(index,a1,a2,a3,a4,a5){try{Module["dynCall_viiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){try{return Module["dynCall_iiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9)}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_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_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)}}Module.asmGlobalArg={"Math":Math,"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Uint32Array":Uint32Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,"Infinity":Infinity};Module.asmLibraryArg={"abort":abort,"assert":assert,"invoke_iiiiiiii":invoke_iiiiiiii,"invoke_iiii":invoke_iiii,"invoke_viiiii":invoke_viiiii,"invoke_iiiiiiiiii":invoke_iiiiiiiiii,"invoke_vii":invoke_vii,"invoke_iiiiiii":invoke_iiiiiii,"invoke_ii":invoke_ii,"invoke_viii":invoke_viii,"invoke_vi":invoke_vi,"invoke_iiiii":invoke_iiiii,"invoke_viiiiii":invoke_viiiiii,"invoke_iii":invoke_iii,"invoke_iiiiii":invoke_iiiiii,"invoke_viiii":invoke_viiii,"_pthread_cleanup_pop":_pthread_cleanup_pop,"___syscall221":___syscall221,"_longjmp":_longjmp,"___lock":___lock,"_time":_time,"_emscripten_set_main_loop":_emscripten_set_main_loop,"_pthread_self":_pthread_self,"_abort":_abort,"_emscripten_set_main_loop_timing":_emscripten_set_main_loop_timing,"___syscall6":___syscall6,"_sbrk":_sbrk,"___syscall5":___syscall5,"_pthread_cleanup_push":_pthread_cleanup_push,"_emscripten_memcpy_big":_emscripten_memcpy_big,"___syscall54":___syscall54,"___unlock":___unlock,"___syscall140":___syscall140,"_sysconf":_sysconf,"___syscall145":___syscall145,"___syscall146":___syscall146,"___setErrNo":___setErrNo,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"cttz_i8":cttz_i8};// EMSCRIPTEN_START_ASM
var asm=(function(global,env,buffer) {
"use asm";var a=new global.Int8Array(buffer);var b=new global.Int16Array(buffer);var c=new global.Int32Array(buffer);var
d=new global.Uint8Array(buffer);var e=new global.Uint16Array(buffer);var f=new global.Uint32Array(buffer);var g=new global.Float32Array
(buffer);var h=new global.Float64Array(buffer);var i=env.STACKTOP|0;var j=env.STACK_MAX|0;var k=env.tempDoublePtr|0;var l=env.ABORT
|0;var m=env.cttz_i8|0;var n=0;var o=0;var p=0;var q=0;var r=global.NaN,s=global.Infinity;var t=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,
B=0.0;var C=0;var D=0;var E=0;var F=0;var G=0;var H=0;var I=0;var J=0;var K=0;var L=0;var M=global.Math.floor;var N=global.Math.
abs;var O=global.Math.sqrt;var P=global.Math.pow;var Q=global.Math.cos;var R=global.Math.sin;var S=global.Math.tan;var T=global.
Math.acos;var U=global.Math.asin;var V=global.Math.atan;var W=global.Math.atan2;var X=global.Math.exp;var Y=global.Math.log;var
Z=global.Math.ceil;var _=global.Math.imul;var $=global.Math.min;var aa=global.Math.clz32;var ba=env.abort;var ca=env.assert;var
da=env.invoke_iiiiiiii;var ea=env.invoke_iiii;var fa=env.invoke_viiiii;var ga=env.invoke_iiiiiiiiii;var ha=env.invoke_vii;var ia
=env.invoke_iiiiiii;var ja=env.invoke_ii;var ka=env.invoke_viii;var la=env.invoke_vi;var ma=env.invoke_iiiii;var na=env.invoke_viiiiii
;var oa=env.invoke_iii;var pa=env.invoke_iiiiii;var qa=env.invoke_viiii;var ra=env._pthread_cleanup_pop;var sa=env.___syscall221
;var ta=env._longjmp;var ua=env.___lock;var va=env._time;var wa=env._emscripten_set_main_loop;var xa=env._pthread_self;var ya=env
._abort;var za=env._emscripten_set_main_loop_timing;var Aa=env.___syscall6;var Ba=env._sbrk;var Ca=env.___syscall5;var Da=env._pthread_cleanup_push
;var Ea=env._emscripten_memcpy_big;var Fa=env.___syscall54;var Ga=env.___unlock;var Ha=env.___syscall140;var Ia=env._sysconf;var
Ja=env.___syscall145;var Ka=env.___syscall146;var La=env.___setErrNo;var Ma=0.0;
// EMSCRIPTEN_START_FUNCS
function $a(a){a=a|0;var b=0;b=i;i=i+a|0;i=i+15&-16;return b|0}function ab(){return i|0}function bb(a){a=a|0;i=a}function cb
(a,b){a=a|0;b=b|0;i=a;j=b}function db(a,b){a=a|0;b=b|0;if(!n){n=a;o=b}}function eb(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]}function
fb(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 gb(a){a=a|0;C=a}function hb(){return C|0}function
ib(a){a=a|0;c[18364]=(a|0)!=0&1;return 0}function jb(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+32|0;h=j+8|0
;f=j;e=c[18367]|0;if((e|0)!=0?(As(e,b)|0)==0:0){e=73468;f=2;g=4}else g=3;do if((g|0)==3){e=c[18368]|0;if(e|0?(As(e,b)|0)==0:0){e
=73472;f=3;g=4;break}e=c[18369]|0;if(e|0?(As(e,b)|0)==0:0){e=73476;f=4;g=4;break}e=c[18370]|0;if(e|0?(As(e,b)|0)==0:0){e=73480;f
=5;g=4;break}e=c[18371]|0;if(e|0?(As(e,b)|0)==0:0){e=73484;f=6;g=4;break}e=c[18372]|0;if(e|0?(As(e,b)|0)==0:0){e=73488;f=7;g=4;break
}e=c[18373]|0;if(e|0?(As(e,b)|0)==0:0){e=73492;f=8;g=4;break}e=c[18374]|0;if(e|0?(As(e,b)|0)==0:0){e=73496;f=9;g=4;break}if(c[18367
]|0)if(c[18368]|0)if(c[18369]|0)if(c[18370]|0)if(c[18371]|0)if(c[18372]|0)if(c[18373]|0)if(!(c[18374]|0))f=9;else{c[f>>
;2]=a;c[f+4>>2]=b;ss(10198,f)|0;h=-1;i=j;return h|0}else f=8;else f=7;else f=6;else f=5;else f=4;else f=3;else f=2}while
(0);if((g|0)==4){g=73500+(f<<2)|0;vd(c[g>>2]|0)|0;Gs(c[e>>2]|0);c[e>>2]=0;c[g>>
;2]=0}e=Ec(c[18385]|0,a,0,73500+(f<<2)|0)|0;if(!e){c[73460+(f<<2)>>2]=ws(b)|0;c[8+(f<<2)
x3e;>2]=d;h=0;i=j;return h|0}else{c[h>>2]=a;c[h+4>>2]=b;c[h+8>>2]=e;ss(10233,h)|0;h=e;i=j;return
h|0}return 0}function kb(a){a=a|0;var b=0,d=0;b=c[18365]|0;if(b)if(As(a,b)|0){b=c[18366]|0;if(((b|0)!=0?(As(a,b)|0)!=0:0)?(d=c[
18367]|0,(d|0)!=0):0)if(As(a,d)|0){b=c[18368]|0;if(b)if(As(a,b)|0){b=c[18369]|0;if(b)if(As(a,b)|0){b=c[18370]|0;if(b)if(As(a,b)|
0){b=c[18371]|0;if(b)if(As(a,b)|0){b=c[18372]|0;if(b)if(As(a,b)|0){b=c[18373]|0;if(b)if(As(a,b)|0){b=c[18374]|0;if(!b)b=1;else{a
=(As(a,b)|0)==0;return (a?9:1)|0}}else b=8;else b=1}else b=7;else b=1}else b=6;else b=1}else b=5;else b=1}else b=4;else b=1}else
b=3;else b=1}else b=2;else b=1}else b=0;else b=1;return b|0}function lb(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;p=i;i=i+16|0;k=p+8|0;j=p;if(!(b>>>0<=9?(c[73460+(b<<2)>>2]|0)!=0:0))b=1;h=
c[73500+(b<<2)>>2]|0;b=c[8+(b<<2)>>2]|0;f=(_(f<<6,b)|0)/100|0;b=(_(g<<
;6,b)|0)/100|0;if((e+-65|0)>>>0<26&(h|0)==(c[18376]|0))b=(b*108|0)/100|0;b=Hd(h,f,b,72,0)|0;if(b|0){c[j
>>2]=b;ss(10260,j)|0;o=0;i=p;return o|0}c[18386]=c[h+84>>2];if((h|0)==(c[18375]|0)|(h|0)==(c[18376]|0))if((e
|0)==126)e=732;else e=(e|0)==94?710:e;if(!(c[18364]|0))e=Cc(h,e,4)|0;else e=Cc(h,e,131076)|0;if(e|0){c[k>>2]=e;ss(10285
,k)|0;o=0;i=p;return o|0}b=c[18386]|0;if(!(c[18364]|0)){o=c[b+88>>2]|0;i=p;return o|0}e=c[18387]|0;if(e|0)Gs(e);m=b+80
|0;f=c[m>>2]|0;n=b+76|0;g=c[n>>2]|0;e=Fs(_(g,f)|0)|0;c[18387]=e;if(!e){o=0;i=p;return o|0}if((g|0)<=0){
o=e;i=p;return o|0}o=b+84|0;l=b+88|0;b=e;k=0;do{j=_(c[o>>2]|0,k)|0;j=(c[l>>2]|0)+j|0;if((f|0)>0){h=0;while
(1){g=b+1|0;a[b>>0]=(((d[j+(h>>3)>>0]|0)&1<<(h&7^7)|0)!=0)<<31>
x3e;31;h=h+1|0;f=c[m>>2]|0;if((h|0)>=(f|0)){b=g;break}else b=g}g=c[n>>2]|0}k=k+1|0}while((k|0)<(g|
0));i=p;return e|0}function mb(){return c[(c[18386]|0)+100>>2]|0}function nb(){return c[(c[18386]|0)+104>>2]|
0}function ob(){return c[(c[18386]|0)+80>>2]|0}function pb(){return c[(c[18386]|0)+76>>2]|0}function qb(){return
c[(c[18386]|0)+84>>2]|0}function rb(){return c[(c[18386]|0)+64>>2]>>6|0}function sb(){var a=0,b=0
,d=0,e=0,f=0;f=i;i=i+32|0;e=f+16|0;d=f+8|0;b=f;a=ub(73540)|0;if(a|0){c[b>>2]=a;ss(10306,b)|0;e=1;i=f;return e|0}a=Ec(c
[18385]|0,10322,0,73500)|0;if(a|0){c[d>>2]=a;ss(10331,d)|0;e=1;i=f;return e|0}a=Ec(c[18385]|0,10358,0,73504)|0;if(!a){
c[18365]=ws(10394)|0;c[18366]=ws(10400)|0;e=0;i=f;return e|0}else{c[e>>2]=a;ss(10367,e)|0;e=1;i=f;return e|0}return 0}
function tb(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;c[d>>2]=48;while(1){if(!(
c[c[d>>2]>>2]|0))break;c[e>>2]=Nd(c[b>>2]|0,c[c[d>>2]>>2]|0)|0;c[d
x3e;>2]=(c[d>>2]|0)+4}i=f;return}function ub(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;d=g+8|0;e=g+4
|0;f=g;c[d>>2]=a;c[f>>2]=tr()|0;if(!(c[f>>2]|0)){c[b>>2]=7;f=c[b>>2]|0;i=g;return
f|0}c[e>>2]=Wd(c[f>>2]|0,c[d>>2]|0)|0;if(c[e>>2]|0)xr(c[f>>2]|0);else tb(c[c[
d>>2]>>2]|0);c[b>>2]=c[e>>2];f=c[b>>2]|0;i=g;return f|0}function vb(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;
c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(!(c[g>>2]|0)){c[f>>2]=35;
e=c[f>>2]|0;i=n;return e|0}if((c[h>>2]|0)>>>0>=(c[(c[g>>2]|0)+16>>2]|
0)>>>0){c[f>>2]=16;e=c[f>>2]|0;i=n;return e|0}c[m>>2]=c[(c[(c[(c[g>>2]|0)+
96>>2]|0)+20>>2]|0)+92>>2];do if(c[m>>2]|0){if((c[j>>2]&3|0)==0?(c[j>
;>2]>>16&15|0)!=1:0)break;c[l>>2]=Za[c[m>>2]&31](c[g>>2]|0,c[h>>
;2]|0,1,c[j>>2]|0,c[k>>2]|0)|0;if(!(c[l>>2]|0)){c[f>>2]=wb(c[g>>2]|0,c[k>
x3e;2]|0,1,c[j>>2]|0)|0;e=c[f>>2]|0;i=n;return e|0}if((c[l>>2]|0)!=7){c[f>>2]=c[l>
x3e;2];e=c[f>>2]|0;i=n;return e|0}}while(0);c[f>>2]=Bb(c[g>>2]|0,c[h>>2]|0,1,c[j>
x3e;2]|0,c[k>>2]|0)|0;e=c[f>>2]|0;i=n;return e|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,m=0,n=0;n=i;i=i+32|0;g=n+24|0;f=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;c[f>>2]=a;c[h>>2]=
b;c[j>>2]=d;c[k>>2]=e;if(c[k>>2]&1|0){c[g>>2]=0;m=c[g>>2]|0;i=n;return m|
0}if(!(c[(c[f>>2]|0)+88>>2]|0)){c[g>>2]=36;m=c[g>>2]|0;i=n;return m|0}f=(c[(c[f>>
;2]|0)+88>>2]|0)+12|0;if(c[k>>2]&16|0)c[m>>2]=c[f+8>>2];else c[m>>2]=c[f+
4>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[j>>2]|0)>>
x3e;0)break;k=xb(c[(c[h>>2]|0)+(c[l>>2]<<2)>>2]|0,c[m>>2]|0,64)|0;c[(c[h>
x3e;2]|0)+(c[l>>2]<<2)>>2]=k;c[l>>2]=(c[l>>2]|0)+1}c[g>>2]=0;m=c[g
x3e;>2]|0;i=n;return m|0}function xb(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;m=i;i=i+48|0;e=m+32|0;f=m
+28|0;g=m+24|0;h=m+20|0;j=m+16|0;k=m+8|0;l=m;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(c[f>>2]|0?(
c[g>>2]|0)!=(c[h>>2]|0):0){c[j>>2]=c[f>>2];d=c[f>>2]|0;c[f>>2]=(c[f
x3e;>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[g>>2];d=c[g>>2]|0;c[g>>2]=(c[
g>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[h>>2];d=c[h>>2]|0;c[h>>2]=(
c[h>>2]|0)<0?0-d|0:d;do if(!((c[f>>2]|0)<=46340&(c[g>>2]|0)<=46340&(c[h
x3e;>2]|0)<=176095&(c[h>>2]|0)>0))if((c[h>>2]|0)>0){yb(c[f>>2]|0,c[g>
;>2]|0,k);c[l+4>>2]=0;c[l>>2]=c[h>>2]>>1;zb(k,l,k);c[f>>2]=Ab(c[k+4>
x3e;2]|0,c[k>>2]|0,c[h>>2]|0)|0;break}else{c[f>>2]=2147483647;break}else{l=_(c[f>>2]|0,c
[g>>2]|0)|0;c[f>>2]=(l+(c[h>>2]>>1)|0)/(c[h>>2]|0)|0}while(0);l=c[f>>
;2]|0;c[e>>2]=(c[j>>2]|0)<0?0-l|0:l;l=c[e>>2]|0;i=m;return l|0}c[e>>2]=c[f>>
;2];l=c[e>>2]|0;i=m;return l|0}function yb(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;e=i;i=i+48|0;q=e+40|0;p=e+36|0;f=e+32|0;o=e+28|0;m=e+24|0;n=e+20|0;l=e+16|0;h=e+12|0;g=e+8|0;j=e+4|0;k=e;c[q>>2]=a;c
[p>>2]=b;c[f>>2]=d;c[o>>2]=c[q>>2]&65535;c[m>>2]=(c[q>>2]|0)>
;>>16;c[n>>2]=c[p>>2]&65535;c[l>>2]=(c[p>>2]|0)>>>16;c[h
x3e;>2]=_(c[o>>2]|0,c[n>>2]|0)|0;c[j>>2]=_(c[o>>2]|0,c[l>>2]|0)|0;c[k>
;>2]=_(c[n>>2]|0,c[m>>2]|0)|0;c[g>>2]=_(c[m>>2]|0,c[l>>2]|0)|0;c[j>
x3e;2]=(c[j>>2]|0)+(c[k>>2]|0);c[g>>2]=(c[g>>2]|0)+(((c[j>>2]|0)>>
x3e;0<(c[k>>2]|0)>>>0&1)<<16);c[g>>2]=(c[g>>2]|0)+((c[j>
x3e;2]|0)>>>16);c[j>>2]=c[j>>2]<<16;c[h>>2]=(c[h>>2]|0)+(c[j>
;>2]|0);c[g>>2]=(c[g>>2]|0)+((c[h>>2]|0)>>>0<(c[j>>2]|0)>
x3e;>0&1);c[c[f>>2]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2
];i=e;return}function zb(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+12|0;f=e+8|0;h=e+4|0;g=e
;c[j>>2]=a;c[k>>2]=b;c[f>>2]=d;c[h>>2]=(c[c[j>>2]>>2]|0)+(c[c[k>
;>2]>>2]|0);c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[k>>2]|0)+4>>2
]|0)+((c[h>>2]|0)>>>0<(c[c[j>>2]>>2]|0)>>>0&1);c[c[f>
x3e;2]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2];i=e;return}function Ab(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+32|0;e=l+24|0;m=l+20|0;f=l+16|0;g=l+12|0;k=l+8|0;j=l+4|0;h=l;c[m>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=0;c[k>>2]=c[m>>2];if((c[k>>2
]|0)>>>0>=(c[g>>2]|0)>>>0){c[e>>2]=2147483647;m=c[e>>2]|0;i=l;return
m|0}c[h>>2]=32;do{c[k>>2]=c[k>>2]<<1;c[j>>2]=c[j>>2]<<1;c
[k>>2]=c[k>>2]|(c[f>>2]|0)>>>31;if((c[k>>2]|0)>>>0>=(
c[g>>2]|0)>>>0){c[k>>2]=(c[k>>2]|0)-(c[g>>2]|0);c[j>>2]=c[j>
;>2]|1}c[f>>2]=c[f>>2]<<1;m=(c[h>>2]|0)+-1|0;c[h>>2]=m}while((m|0)!=0);c[
e>>2]=c[j>>2];m=c[e>>2]|0;i=l;return m|0}function Bb(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;t=i;i=i+48|0;l=t+40|0;m=t+36|0;n=t+32|0;o=t+28|0;p=t+24|0;q=t+20|0;h=t+16|0;
j=t+12|0;g=t+8|0;s=t+4|0;r=t;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f
;c[r>>2]=0;if(!(c[m>>2]|0)){c[l>>2]=35;s=c[l>>2]|0;i=t;return s|0}c[j>>2]=c[(c
[m>>2]|0)+16>>2];c[g>>2]=(c[n>>2]|0)+(c[o>>2]|0);if(((c[n>>2]|0)>
;>>0<(c[j>>2]|0)>>>0?(c[g>>2]|0)>>>0>=(c[n>>2]|0
)>>>0:0)?(c[g>>2]|0)>>>0<=(c[j>>2]|0)>>>0:0){if(!(c[o>
;>2]|0)){c[l>>2]=0;s=c[l>>2]|0;i=t;return s|0}c[h>>2]=c[(c[(c[(c[m>>2]|0)+96>
x3e;2]|0)+20>>2]|0)+92>>2];do if(c[h>>2]|0){if((c[p>>2]&3|0)==0?(c[p>>2]
x3e;>16&15|0)!=1:0){k=15;break}c[r>>2]=Za[c[h>>2]&31](c[m>>2]|0,c[n>>2]|0
,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;if(c[r>>2]|0)if((c[r>>2]|0)!=7){c[l>>
;2]=c[r>>2];s=c[l>>2]|0;i=t;return s|0}else k=15}else k=15;while(0);if((k|0)==15){c[r>>2]=0;if(c[p
>>2]&536870912|0){c[l>>2]=7;s=c[l>>2]|0;i=t;return s|0}c[p>>2]=c[p>>2]|256
;c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c
[r>>2]=Cb(c[m>>2]|0,(c[n>>2]|0)+(c[s>>2]|0)|0,c[p>>2]|0)|0;if(c[r>>2
]|0)break;d=(c[(c[m>>2]|0)+84>>2]|0)+64|0;if(c[p>>2]&16|0)d=c[d+4>>2]|0;else d=c[d
x3e;>2]|0;c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]=d;c[s>>2]=(c[s>>2]|0)+
1}if(c[r>>2]|0){c[l>>2]=c[r>>2];s=c[l>>2]|0;i=t;return s|0}}c[l>>2]=wb(c[m>
;>2]|0,c[q>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;s=c[l>>2]|0;i=t;return s|0}c[l>>2
]=16;s=c[l>>2]|0;i=t;return s|0}function Cb(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;A=i;i=i+80|0;r=A+64|0;s=A+60|0;g=A+56|0;t=A+52|0;u=A+48|0;j=A+44|0;z=A+40|0;n=A+36|0;h=A+68|0
;k=A+32|0;o=A+28|0;l=A+24|0;m=A+20|0;p=A+16|0;w=A+12|0;v=A+8|0;y=A+4|0;x=A;c[s>>2]=b;c[g>>2]=e;c[t>>
;2]=f;a[h>>0]=0;if((c[s>>2]|0?c[(c[s>>2]|0)+88>>2]|0:0)?c[(c[s>>2]|0)+84>
x3e;2]|0:0){c[z>>2]=c[(c[s>>2]|0)+84>>2];Db(c[z>>2]|0);c[j>>2]=c[(c[s>>
;2]|0)+96>>2];c[n>>2]=c[(c[j>>2]|0)+4>>2];c[k>>2]=c[(c[n>>2]|0)+168
x3e;>2];if(c[t>>2]&1024|0)c[t>>2]=c[t>>2]|2049;if(c[t>>2]&1|0){c[t>
x3e;2]=c[t>>2]|10;c[t>>2]=c[t>>2]&-5}do if(((((c[k>>2]|0?(c[t>>2]&2|
0)==0:0)?(c[t>>2]&32768|0)==0:0)?c[c[c[j>>2]>>2]>>2]&256|0:0)?(c[c[c[j>
x3e;2]>>2]>>2]&512|0)==0:0)?(c[(c[s>>2]|0)+8>>2]&8192|0)==0:0){if(!((c[(c[(c[s
>>2]|0)+128>>2]|0)+4+8>>2]|0)==0?(c[(c[(c[s>>2]|0)+128>>2]|0)+4>>2]|
0)!=0:0)){if(c[(c[(c[s>>2]|0)+128>>2]|0)+4>>2]|0)break;if(!(c[(c[(c[s>>2]|0)+128>
x3e;2]|0)+4+8>>2]|0))break}if((c[t>>2]&32|0)==0?c[c[c[j>>2]>>2]>>2]&
1024|0:0){c[o>>2]=c[t>>2]>>16&15;if((c[o>>2]|0)!=1?(d[(c[(c[s>>2]|0)+128
x3e;>2]|0)+56>>0]|0)==0:0)break;a[h>>0]=1;break}a[h>>0]=1}while(0);do if(!(a[h>>0]|
0)){c[u>>2]=Wa[c[(c[(c[j>>2]|0)+20>>2]|0)+80>>2]&31](c[z>>2]|0,c[(c[s>
;>2]|0)+88>>2]|0,c[g>>2]|0,c[t>>2]|0)|0;if(!(c[u>>2]|0))if((c[(c[z>>2]|0)+
72>>2]|0)==1869968492){c[u>>2]=Gb((c[z>>2]|0)+108|0)|0;if(!(c[u>>2]|0))if(c[t>>
;2]&2|0)q=36;else{Hb(c[z>>2]|0,c[t>>2]&16);q=36}}else q=36}else{if(((c[(c[s>>2]|0)+8>
;>2]&2|0?(c[t>>2]&8|0)==0:0)?(c[u>>2]=Wa[c[(c[(c[j>>2]|0)+20>>2]|0)+80>
;>2]&31](c[z>>2]|0,c[(c[s>>2]|0)+88>>2]|0,c[g>>2]|0,c[t>>2]|16384)|0
,(c[u>>2]|0)==0):0)?(c[(c[z>>2]|0)+72>>2]|0)==1651078259:0){q=36;break}c[m>>2]=c[(c[s>
;>2]|0)+128>>2];c[p>>2]=c[(c[m>>2]|0)+28>>2];c[(c[m>>2]|0)+28>>
2]=0;c[l>>2]=c[(c[c[k>>2]>>2]|0)+20>>2];c[u>>2]=Za[c[(c[l>>2]|0)+12
x3e;>2]&31](c[k>>2]|0,c[z>>2]|0,c[(c[s>>2]|0)+88>>2]|0,c[g>>2]|0,c[t
>>2]|0)|0;c[(c[m>>2]|0)+28>>2]=c[p>>2];q=36}while(0);if((q|0)==36){g=c[z>>2]|0
;if(c[t>>2]&16|0){c[g+64>>2]=0;c[(c[z>>2]|0)+64+4>>2]=c[(c[z>>2]|0)+24+28
>>2]}else{c[(c[z>>2]|0)+64>>2]=c[g+24+16>>2];c[(c[z>>2]|0)+64+4>>2]=
0}if((c[t>>2]&8192|0)==0?c[(c[s>>2]|0)+8>>2]&1|0:0){c[w>>2]=(c[(c[s>>
;2]|0)+88>>2]|0)+12;q=xb(c[(c[z>>2]|0)+56>>2]|0,c[(c[w>>2]|0)+4>>2]|0,64)|0;c[(
c[z>>2]|0)+56>>2]=q;w=xb(c[(c[z>>2]|0)+60>>2]|0,c[(c[w>>2]|0)+8>>2]|
0,64)|0;c[(c[z>>2]|0)+60>>2]=w}if((c[t>>2]&2048|0)==0?(c[v>>2]=c[(c[s>>2]|
0)+128>>2],c[(c[v>>2]|0)+28>>2]|0):0){c[y>>2]=Ib(c[z>>2]|0)|0;if(!(c[y>
x3e;2]|0)){if((c[(c[z>>2]|0)+72>>2]|0)==1869968492){if((c[v>>2]|0)+4|0)Kb((c[z>>2]|0)+108
|0,(c[v>>2]|0)+4|0);if((c[v>>2]|0)+20|0)Nb((c[z>>2]|0)+108|0,c[(c[v>>2]|0)+20>>
;2]|0,c[(c[v>>2]|0)+20+4>>2]|0)}}else c[u>>2]=Wa[c[(c[(c[y>>2]|0)+20>>2]|0)+44
>>2]&31](c[y>>2]|0,c[z>>2]|0,(c[v>>2]|0)+4|0,(c[v>>2]|0)+20|0)|0;Lb((c[z
x3e;>2]|0)+64|0,(c[v>>2]|0)+4|0)}if((((c[u>>2]|0)==0?(c[(c[z>>2]|0)+72>>2]|0)!=1651078259
:0)?(c[(c[z>>2]|0)+72>>2]|0)!=1668246896:0)?c[t>>2]&4|0:0){c[x>>2]=c[t>>2
]>>16&15;if((c[x>>2]|0)==0?c[t>>2]&4096|0:0)c[x>>2]=2;c[u>>2]=Ob(c[z
>>2]|0,c[x>>2]|0)|0}}c[r>>2]=c[u>>2];z=c[r>>2]|0;i=A;return z|0}c[r>>
;2]=35;z=c[r>>2]|0;i=A;return z|0}function Db(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;Eb(c[e>
x3e;2]|0);b=(c[e>>2]|0)+24|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[
b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;c[b+28>>2]=0;b=(c[e>>2]|0)+108|0;c[b>
;>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[(c[e>>2]|0)+76
+4>>2]=0;c[(c[e>>2]|0)+76>>2]=0;c[(c[e>>2]|0)+76+8>>2]=0;a[(c[e>>2]|
0)+76+18>>0]=0;c[(c[e>>2]|0)+100>>2]=0;c[(c[e>>2]|0)+104>>2]=0;c[(c[e>>
;2]|0)+128>>2]=0;c[(c[e>>2]|0)+132>>2]=0;c[(c[e>>2]|0)+136>>2]=0;c[(c[e>
x3e;2]|0)+140>>2]=0;c[(c[e>>2]|0)+152>>2]=0;c[(c[e>>2]|0)+72>>2]=0;c[(c[e>
;>2]|0)+56>>2]=0;c[(c[e>>2]|0)+60>>2]=0;c[(c[e>>2]|0)+144>>2]=0;c[(c[e>
;>2]|0)+148>>2]=0;i=d;return}function Eb(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if
(c[(c[b>>2]|0)+156>>2]|0?c[(c[(c[b>>2]|0)+156>>2]|0)+4>>2]&1|0:0){c[d>
;>2]=c[(c[(c[b>>2]|0)+4>>2]|0)+100>>2];Fb(c[d>>2]|0,c[(c[b>>2]|0)+76+12
x3e;>2]|0);c[(c[b>>2]|0)+76+12>>2]=0;a=(c[(c[b>>2]|0)+156>>2]|0)+4|0;c[a>>
;2]=c[a>>2]&-2;i=e;return}c[(c[b>>2]|0)+76+12>>2]=0;i=e;return}function Fb(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=f;return}Ra[c[(c[d>
;>2]|0)+8>>2]&7](c[d>>2]|0,c[e>>2]|0);i=f;return}function Gb(a){a=a|0;var d=0,e=0,f=0,g=
0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;d=l+24|0;e=l+20|0;k=l+16|0;j=l+12|0;g=l+8|0;f=l+4|0;h=l;c[e>>2]=a;a:do if(c[e>>
;2]|0){c[k>>2]=b[(c[e>>2]|0)+2>>1];c[j>>2]=b[c[e>>2]>>1];if((c[k>
;>2]|0)==0&(c[j>>2]|0)==0){c[d>>2]=0;a=c[d>>2]|0;i=l;return a|0}if(!((c[k>>2]|
0)<=0|(c[j>>2]|0)<=0)){c[f>>2]=-1;c[g>>2]=-1;c[h>>2]=0;while(1){if((c[h>
x3e;2]|0)>=(c[j>>2]|0))break;c[f>>2]=b[(c[(c[e>>2]|0)+12>>2]|0)+(c[h>>2]
x3c;<1)>>1];if((c[f>>2]|0)<=(c[g>>2]|0))break a;if((c[f>>2]|0)>=(c[k>
;>2]|0))break a;c[g>>2]=c[f>>2];c[h>>2]=(c[h>>2]|0)+1}if((c[f>>2]|0)==((c
[k>>2]|0)-1|0)){c[d>>2]=0;a=c[d>>2]|0;i=l;return a|0}}}while(0);c[d>>2]=6;a=c[d>>
;2]|0;i=l;return a|0}function Hb(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+32|0;k=h+12|0;j=h+16|0;f=h+8|0;g=h+4|0;e=h
;c[k>>2]=b;a[j>>0]=d;c[f>>2]=(c[k>>2]|0)+24;b=c[f>>2]|0;if(a[j>>0]|0
){c[(c[f>>2]|0)+8>>2]=c[b+8>>2]&-64;c[(c[f>>2]|0)+12>>2]=(c[(c[f>>
;2]|0)+12>>2]|0)+63&-64;c[g>>2]=(c[(c[f>>2]|0)+20>>2]|0)+(c[c[f>>2]>
x3e;2]|0)+63&-64;c[e>>2]=(c[(c[f>>2]|0)+24>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0)+
63&-64;c[(c[f>>2]|0)+20>>2]=c[(c[f>>2]|0)+20>>2]&-64;c[(c[f>>2]|0)+24
>>2]=c[(c[f>>2]|0)+24>>2]&-64;c[c[f>>2]>>2]=(c[g>>2]|0)-(c[(c[f
>>2]|0)+20>>2]|0);c[(c[f>>2]|0)+4>>2]=(c[e>>2]|0)-(c[(c[f>>2]|0)+24
x3e;>2]|0);k=c[f>>2]|0;k=k+16|0;k=c[k>>2]|0;k=k+32|0;k=k&-64;j=c[f>>2]|0;j=j+16|0;c[j>
;>2]=k;j=c[f>>2]|0;j=j+28|0;j=c[j>>2]|0;j=j+32|0;j=j&-64;k=c[f>>2]|0;k=k+28|0;c[k>
x3e;2]=j;i=h;return}else{c[(c[f>>2]|0)+20>>2]=c[b+20>>2]&-64;c[(c[f>>2]|0)+24>
x3e;2]=c[(c[f>>2]|0)+24>>2]&-64;c[g>>2]=(c[(c[f>>2]|0)+8>>2]|0)+(c[c[f>
;>2]>>2]|0)+63&-64;c[e>>2]=(c[(c[f>>2]|0)+12>>2]|0)-(c[(c[f>>2]|0)+4
>>2]|0)&-64;c[(c[f>>2]|0)+8>>2]=c[(c[f>>2]|0)+8>>2]&-64;c[(c[f>
x3e;2]|0)+12>>2]=(c[(c[f>>2]|0)+12>>2]|0)+63&-64;c[c[f>>2]>>2]=(c[g>
x3e;2]|0)-(c[(c[f>>2]|0)+8>>2]|0);c[(c[f>>2]|0)+4>>2]=(c[(c[f>>2]|0)+12>
x3e;2]|0)-(c[e>>2]|0);k=c[f>>2]|0;k=k+16|0;k=c[k>>2]|0;k=k+32|0;k=k&-64;j=c[f>>2]|0
;j=j+16|0;c[j>>2]=k;j=c[f>>2]|0;j=j+28|0;j=c[j>>2]|0;j=j+32|0;j=j&-64;k=c[f>>2]|0;k
=k+28|0;c[k>>2]=j;i=h;return}}function Ib(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;b=f+12|0;g=f+8|0;d=f+4|0;e=f;c
[b>>2]=a;c[g>>2]=c[(c[b>>2]|0)+4>>2];c[d>>2]=c[(c[(c[g>>2]|0)+96>
;>2]|0)+4>>2];c[e>>2]=c[(c[d>>2]|0)+164>>2];if(c[e>>2]|0?(c[(c[e>>
;2]|0)+24>>2]|0)==(c[(c[b>>2]|0)+72>>2]|0):0){g=c[e>>2]|0;i=f;return g|0}c[e>>
2]=Jb(c[d>>2]|0,c[(c[b>>2]|0)+72>>2]|0,0)|0;g=c[e>>2]|0;i=f;return g|0}function Jb(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;m=i;i=i+32|0;e=m+20|0;f=m+16|0;g=m+12|0;h=m+8|0;k=m+4|0;j=m;c[e>>
;2]=a;c[f>>2]=b;c[g>>2]=d;c[k>>2]=0;if(!(c[e>>2]|0)){l=c[k>>2]|0;i=m;return l|
0}c[h>>2]=c[(c[e>>2]|0)+156>>2];if(c[g>>2]|0){if(c[c[g>>2]>>2]|0)c[h
>>2]=c[(c[c[g>>2]>>2]|0)+4>>2];c[c[g>>2]>>2]=0}while(1){if(!(c[h>
;>2]|0)){l=12;break}c[j>>2]=c[(c[h>>2]|0)+8>>2];if((c[(c[j>>2]|0)+24>>2]|
0)==(c[f>>2]|0))break;c[h>>2]=c[(c[h>>2]|0)+4>>2]}if((l|0)==12){l=c[k>>2]|0;i=
m;return l|0}if(c[g>>2]|0)c[c[g>>2]>>2]=c[h>>2];c[k>>2]=c[j>>2];l=c[
k>>2]|0;i=m;return l|0}function Kb(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;
c[e>>2]=a;c[f>>2]=d;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=j;return}c[h>>
2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=(c[h>>2]|0)+(b[(c[e>>2]|0)+2>>1]<
;<3);while(1){if((c[h>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;Lb(c[h>
x3e;2]|0,c[f>>2]|0);c[h>>2]=(c[h>>2]|0)+8}i=j;return}function Lb(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;if(!((c[d>>2]|0)!=0&(c[
e>>2]|0)!=0)){i=h;return}a=Mb(c[c[d>>2]>>2]|0,c[c[e>>2]>>2]|0)|0;c[f>>
;2]=a+(Mb(c[(c[d>>2]|0)+4>>2]|0,c[(c[e>>2]|0)+4>>2]|0)|0);a=Mb(c[c[d>>2]>
x3e;2]|0,c[(c[e>>2]|0)+8>>2]|0)|0;c[g>>2]=a+(Mb(c[(c[d>>2]|0)+4>>2]|0,c[(c[e
x3e;>2]|0)+12>>2]|0)|0);c[c[d>>2]>>2]=c[f>>2];c[(c[d>>2]|0)+4>>
2]=c[g>>2];i=h;return}function Mb(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;l=i;i=i+32|0;f=l+24|0;d=l+20|0;
e=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;g=l;c[d>>2]=a;c[e>>2]=b;a=c[d>>2]|0;if((c[d>>2]|0)==0|(
c[e>>2]|0)==65536){c[f>>2]=a;k=c[f>>2]|0;i=l;return k|0}c[h>>2]=a;a=c[d>>2]|0;
c[d>>2]=(c[d>>2]|0)<0?0-a|0:a;c[h>>2]=c[h>>2]^c[e>>2];a=c[e>>2]|
0;c[e>>2]=(c[e>>2]|0)<0?0-a|0:a;c[j>>2]=c[d>>2];c[k>>2]=c[e>>2];
a=c[j>>2]|0;if((c[j>>2]|0)>>>0<=2048&(c[k>>2]|0)>>>0<=
1048576)c[j>>2]=((_(a,c[k>>2]|0)|0)+32768|0)>>>16;else{c[g>>2]=a&65535;e=_((c[
j>>2]|0)>>>16,c[k>>2]|0)|0;e=e+(_(c[g>>2]|0,(c[k>>2]|0)>>>
16)|0)|0;c[j>>2]=e+(((_(c[g>>2]|0,c[k>>2]&65535)|0)+32768|0)>>>16)}k=c[j>
x3e;2]|0;c[f>>2]=(c[h>>2]|0)<0?0-k|0:k;k=c[f>>2]|0;i=l;return k|0}function Nb(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;m=i;i=i+32|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m+16|0;l=m;c[g>>2]=a;c[h>>2]=d
;c[j>>2]=f;if(!(c[g>>2]|0)){i=m;return}c[l>>2]=c[(c[g>>2]|0)+4>>2];b[k>
x3e;1]=0;while(1){if((e[k>>1]|0)>=(b[(c[g>>2]|0)+2>>1]|0))break;f=c[l>>2]|0;c[f>
;>2]=(c[f>>2]|0)+(c[h>>2]|0);f=(c[l>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+(c[j
x3e;>2]|0);c[l>>2]=(c[l>>2]|0)+8;b[k>>1]=(b[k>>1]|0)+1<<16>>16}
i=m;return}function Ob(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[
f>>2]=b;if(c[e>>2]|0?c[(c[e>>2]|0)+4>>2]|0:0){c[g>>2]=c[(c[(c[(c[e>>
2]|0)+4>>2]|0)+96>>2]|0)+4>>2];c[d>>2]=Pb(c[g>>2]|0,c[e>>2]|0,c[f>
;>2]|0)|0;a=c[d>>2]|0;i=h;return a|0}c[d>>2]=6;a=c[d>>2]|0;i=h;return a|0}function Pb(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;o=i;i=i+32|0;g=o+20|0;h=o+16|0;j=o+12|0;k=o+8|0;m=o+4|0;l=o;n=o+24|0;c[g
x3e;>2]=b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=0;if((c[(c[h>>2]|0)+72>>2]|0)==1651078259
){n=c[k>>2]|0;i=o;return n|0}c[l>>2]=0;a[n>>0]=0;b=c[g>>2]|0;if((c[(c[h>>2]|0)+
72>>2]|0)==1869968492){c[m>>2]=c[b+164>>2];c[l>>2]=c[(c[g>>2]|0)+156>>
;2]}else c[m>>2]=Jb(b,c[(c[h>>2]|0)+72>>2]|0,l)|0;c[k>>2]=7;while(1){if(!(c[m>>
;2]|0))break;c[k>>2]=Wa[c[(c[m>>2]|0)+68>>2]&31](c[m>>2]|0,c[h>>2]|0,c[j
x3e;>2]|0,0)|0;if(!(c[k>>2]|0))break;if((c[k>>2]&255|0)!=19)break;c[m>>2]=Jb(c[g>
x3e;2]|0,c[(c[h>>2]|0)+72>>2]|0,l)|0;a[n>>0]=1}if(c[k>>2]|0){n=c[k>>2]|0;i=o;return
n|0}if(!((d[n>>0]|0|0)!=0&(c[m>>2]|0)!=0)){n=c[k>>2]|0;i=o;return n|0}Qb(c[g>>2]|0
,c[m>>2]|0,0,0)|0;n=c[k>>2]|0;i=o;return n|0}function Qb(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o+20|0;j=o+16|0;k=o+12|0;m=o+8|0;l=o+4|0;n=o;c[g>>2]=a;c[h>
;>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=0;if(!(c[g>>2]|0)){c[f>>2]=33;n=c[f>
;>2]|0;i=o;return n|0}if(!(c[h>>2]|0)){c[f>>2]=6;n=c[f>>2]|0;i=o;return n|0}c[m>>2]=
Rb((c[g>>2]|0)+156|0,c[h>>2]|0)|0;a:do if(c[m>>2]|0){Sb((c[g>>2]|0)+156|0,c[m>>
;2]|0);if((c[(c[h>>2]|0)+24>>2]|0)==1869968492)c[(c[g>>2]|0)+164>>2]=c[h>>2];if
((c[j>>2]|0)>>>0>0){c[n>>2]=c[(c[(c[h>>2]|0)+20>>2]|0)+52>>
;2];while(1){if((c[j>>2]|0)>>>0<=0)break a;c[l>>2]=Oa[c[n>>2]&63](c[h>
;>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0)|0;if(c[l>>2]|0)break a;c[j
x3e;>2]=(c[j>>2]|0)+-1}}}else c[l>>2]=6;while(0);c[f>>2]=c[l>>2];n=c[f>>2
]|0;i=o;return n|0}function Rb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;f=g+12|0;h=g+8|0;d=g+4|0;e=g;c[h>>
;2]=a;c[d>>2]=b;c[e>>2]=c[c[h>>2]>>2];while(1){if(!(c[e>>2]|0)){b=6;break}a=c[
e>>2]|0;if((c[(c[e>>2]|0)+8>>2]|0)==(c[d>>2]|0)){b=4;break}c[e>>2]=c[a+4>
x3e;2]}if((b|0)==4){c[f>>2]=a;h=c[f>>2]|0;i=g;return h|0}else if((b|0)==6){c[f>>2]=0;h=c[f>
x3e;2]|0;i=g;return h|0}return 0}function Sb(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;e=h+12|0;f=h+8|0;d=h+4|0;g=h;
c[e>>2]=a;c[f>>2]=b;c[d>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[f>>
2]|0)+4>>2];if(!(c[d>>2]|0)){i=h;return}c[(c[d>>2]|0)+4>>2]=c[g>>2];d=c[d>
;>2]|0;if(c[g>>2]|0)c[c[g>>2]>>2]=d;else c[(c[e>>2]|0)+4>>2]=d;c[c[f>
;>2]>>2]=0;c[(c[f>>2]|0)+4>>2]=c[c[e>>2]>>2];c[c[c[e>>2]>
x3e;2]>>2]=c[f>>2];c[c[e>>2]>>2]=c[f>>2];i=h;return}function Tb(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;if((c[d>>2]|0)>=0){d=a+32768&-65536;i=b;return
d|0}else{d=0-(0-a+32768&-65536)|0;i=b;return d|0}return 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;l=i;i=i+32|0;e=l+24|0;f=l+20|0;g=l+16|0;h=l+12|0;j=l+8|0;k=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if
(c[f>>2]|0?(c[g>>2]|0)!=(c[h>>2]|0):0){c[j>>2]=c[f>>2];d=c[f>>2]|0;c
[f>>2]=(c[f>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[g>>2];d=c[g>>2]|
0;c[g>>2]=(c[g>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[h>>2];d=c[h>>
2]|0;c[h>>2]=(c[h>>2]|0)<0?0-d|0:d;do if(!((c[f>>2]|0)<=46340&(c[g>>2]|0)
x3c;=46340&(c[h>>2]|0)>0))if((c[h>>2]|0)>0){yb(c[f>>2]|0,c[g>>2]|0,k);c[f
>>2]=Ab(c[k+4>>2]|0,c[k>>2]|0,c[h>>2]|0)|0;break}else{c[f>>2]=2147483647;break
}else{k=_(c[f>>2]|0,c[g>>2]|0)|0;c[f>>2]=(k|0)/(c[h>>2]|0)|0}while(0);k=c[f>>2
]|0;c[e>>2]=(c[j>>2]|0)<0?0-k|0:k;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=c[f>>
;2];k=c[e>>2]|0;i=l;return k|0}function Vb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+28|0;e=k+
24|0;g=k+20|0;f=k+16|0;h=k+8|0;j=k;c[d>>2]=a;c[e>>2]=b;c[g>>2]=c[d>>2];b=c[d>>
2]|0;c[d>>2]=(c[d>>2]|0)<0?0-b|0:b;c[g>>2]=c[g>>2]^c[e>>2];b=c[e>>
;2]|0;c[e>>2]=(c[e>>2]|0)<0?0-b|0:b;do if(c[e>>2]|0){a=c[d>>2]|0;if(!(c[d>>
;2]>>16)){c[f>>2]=(((a<<16)+(c[e>>2]>>1)|0)>>>0)/((c[e>>
;2]|0)>>>0)|0;break}else{c[h+4>>2]=a>>16;c[h>>2]=c[d>>2]<<16;c[
j+4>>2]=0;c[j>>2]=c[e>>2]>>1;zb(h,j,h);c[f>>2]=Ab(c[h+4>>2]|0,c[h>
;>2]|0,c[e>>2]|0)|0;break}}else c[f>>2]=2147483647;while(0);j=c[f>>2]|0;i=k;return ((c[g>
;>2]|0)<0?0-j|0:j)|0}function Wb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0;f=h+4|0;g
=h;c[d>>2]=a;if(!(c[d>>2]|0)){c[b>>2]=6;g=c[b>>2]|0;i=h;return g|0}a=Mb(c[c[d>>
;2]>>2]|0,c[(c[d>>2]|0)+12>>2]|0)|0;c[e>>2]=a-(Mb(c[(c[d>>2]|0)+4>>2
]|0,c[(c[d>>2]|0)+8>>2]|0)|0);if(c[e>>2]|0){a=0-(Vb(c[(c[d>>2]|0)+4>>2]|0,c[e
x3e;>2]|0)|0)|0;c[(c[d>>2]|0)+4>>2]=a;a=0-(Vb(c[(c[d>>2]|0)+8>>2]|0,c[e>>
2]|0)|0)|0;c[(c[d>>2]|0)+8>>2]=a;c[f>>2]=c[c[d>>2]>>2];c[g>>2]=c[(c[
d>>2]|0)+12>>2];g=Vb(c[g>>2]|0,c[e>>2]|0)|0;c[c[d>>2]>>2]=g;g=Vb(c[f
>>2]|0,c[e>>2]|0)|0;c[(c[d>>2]|0)+12>>2]=g;c[b>>2]=0;g=c[b>>2]|0;i=h
;return g|0}else{c[b>>2]=6;g=c[b>>2]|0;i=h;return g|0}return 0}function Xb(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;m=i;i=i+32|0;e=m+28|0;f=m+24|0;n=m+20|0;h=m+16|0;j=m+12|0;k=m+8|0;l=m+4|0;g=m;c[e>>2]=
a;c[f>>2]=b;c[n>>2]=d;c[g>>2]=c[n>>2]<<16;if(!((c[e>>2]|0)!=0&(
c[f>>2]|0)!=0)){i=m;return}n=xb(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0,c[g>>
;2]|0)|0;c[h>>2]=n+(xb(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>
x3e;2]|0)|0);n=xb(c[c[e>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0;c[j>
x3e;2]=n+(xb(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);n=xb(c
[(c[e>>2]|0)+8>>2]|0,c[c[f>>2]>>2]|0,c[g>>2]|0)|0;c[k>>2]=n+(xb(c[(c
[e>>2]|0)+12>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>>2]|0)|0);n=xb(c[(c[e>>
2]|0)+8>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0;c[l>>2]=n+(xb(c[(c[e>>
;2]|0)+12>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);c[c[f>>2]>>2]=c
[h>>2];c[(c[f>>2]|0)+4>>2]=c[j>>2];c[(c[f>>2]|0)+8>>2]=c[k>>
;2];c[(c[f>>2]|0)+12>>2]=c[l>>2];i=m;return}function Yb(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;k=i;i=i+32|0;e=k+20|0;f=k+16|0;l=k+12|0;h=k+8|0;j=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[l>>
;2]=d;c[g>>2]=c[l>>2]<<16;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=k;return
}l=xb(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0,c[g>>2]|0)|0;c[h>>2]=l+(xb(c[(
c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0);l=xb(c[c[e>>2
]>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>>2]|0)|0;c[j>>2]=l+(xb(c[(c[e>>2]|
0)+4>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);c[c[e>>2]>>2]=c[h>
;>2];c[(c[e>>2]|0)+4>>2]=c[j>>2];i=k;return}function Zb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,
j=0;j=i;i=i+32|0;b=j+20|0;g=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;d=j;c[b>>2]=a;c[g>>2]=0;if((c[b>>2]|0)
x3c;=0){a=c[g>>2]|0;i=j;return a|0}c[e>>2]=0;c[f>>2]=c[b>>2];c[d>>2]=24;do{c[e
>>2]=c[e>>2]<<2|(c[f>>2]|0)>>>30;c[f>>2]=c[f>>2]<
;<2;c[g>>2]=c[g>>2]<<1;c[h>>2]=(c[g>>2]<<1)+1;if((c[e>>
;2]|0)>>>0>=(c[h>>2]|0)>>>0){c[e>>2]=(c[e>>2]|0)-(c[h>>
;2]|0);c[g>>2]=(c[g>>2]|0)+1}a=(c[d>>2]|0)+-1|0;c[d>>2]=a}while((a|0)!=0);a=c[g>>
;2]|0;i=j;return a|0}function _b(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;n=i;i=i+48|0;f=n+32|0;k=n+
28|0;g=n+24|0;l=n+20|0;m=n+16|0;h=n+8|0;j=n;c[f>>2]=a;c[k>>2]=b;c[g>>2]=d;c[l>>2]=e;b=c[
f>>2]|0;do if(!(c[k>>2]|0)){a=c[l>>2]|0;if((b|0)>=0){c[m>>2]=a;break}else{c[m>
x3e;2]=0-a;break}}else{if(!b){a=c[g>>2]|0;if((c[k>>2]|0)>=0){c[m>>2]=0-a;break}else{c[m>
x3e;2]=a;break}}b=c[g>>2]|0;if(!(c[l>>2]|0)){a=c[k>>2]|0;if((b|0)>=0){c[m>>2]=a;break
}else{c[m>>2]=0-a;break}}if(!b){a=c[f>>2]|0;if((c[l>>2]|0)>=0){c[m>>2]=0-a;break}else
{c[m>>2]=a;break}}yb(c[f>>2]|0,c[l>>2]|0,h);yb(c[k>>2]|0,c[g>>2]|0,j);if((c[h+
4>>2]|0)>>>0>(c[j+4>>2]|0)>>>0){c[m>>2]=1;break}if((c[h+4>
x3e;2]|0)>>>0<(c[j+4>>2]|0)>>>0){c[m>>2]=-1;break}if((c[h>>2]|0
)>>>0>(c[j>>2]|0)>>>0){c[m>>2]=1;break}if((c[h>>2]|0)>>
;>0<(c[j>>2]|0)>>>0){c[m>>2]=-1;break}else{c[m>>2]=0;break}}while(0);i=n;
return c[m>>2]|0}function $b(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;p=i;i=i+48|0
;f=p+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;n=p+8|0;o=p+4|0;m=p;c[f>>2]=a;c[g>>2]=b;c[h>>
;2]=d;c[j>>2]=e;c[k>>2]=c[f>>2];c[l>>2]=c[g>>2];if((c[k>>2]|0)<
0)c[k>>2]=0-(c[k>>2]|0);if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>>2]|0);c[n>
x3e;2]=(c[k>>2]|0)+(c[l>>2]|0);c[k>>2]=c[h>>2];if((c[k>>2]|0)<0)c[k>
x3e;2]=0-(c[k>>2]|0);c[l>>2]=c[j>>2];if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>
;>2]|0);c[o>>2]=(c[k>>2]|0)+(c[l>>2]|0);c[k>>2]=(c[h>>2]|0)+(c[f>>
;2]|0);if((c[k>>2]|0)<0)c[k>>2]=0-(c[k>>2]|0);c[l>>2]=(c[j>>2]|0)+(c[g>
;>2]|0);if((c[l>>2]|0)>=0){e=c[k>>2]|0;d=c[l>>2]|0;d=e+d|0;c[m>>2]=d;d=c[n>
;>2]|0;e=c[o>>2]|0;e=d+e|0;d=c[m>>2]|0;d=e-d|0;e=c[m>>2]|0;e=e>>4;e=(d|0)<(e|0
);e=e&1;i=p;return e|0}c[l>>2]=0-(c[l>>2]|0);e=c[k>>2]|0;d=c[l>>2]|0;d=e+d|0;c[m>
;>2]=d;d=c[n>>2]|0;e=c[o>>2]|0;e=d+e|0;d=c[m>>2]|0;d=e-d|0;e=c[m>>2]|0;e=e>>
;4;e=(d|0)<(e|0);e=e&1;i=p;return e|0}function ac(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;d=h+12|0;e=h+8
|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[g>>2]=bc(c[d>>2]|0,96,f)|0;if(c
[f>>2]|0){a=c[f>>2]|0;i=h;return a|0}c[c[g>>2]>>2]=c[d>>2];c[c[e>>2]
x3e;>2]=c[g>>2];a=c[f>>2]|0;i=h;return a|0}function bc(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;k=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[k>>2]=a;c[e>>2]=b;c[f>>2]=d;c[g>>
;2]=cc(c[k>>2]|0,c[e>>2]|0,h)|0;if((c[h>>2]|0)==0&(c[e>>2]|0)>0)Ns(c[g>
x3e;2]|0,0,c[e>>2]|0)|0;c[c[f>>2]>>2]=c[h>>2];i=j;return c[g>>2]|0}function cc
(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;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f
>>2]=b;c[g>>2]=d;c[j>>2]=0;c[h>>2]=0;if((c[f>>2]|0)>0){c[h>>2]=
Ya[c[(c[e>>2]|0)+4>>2]&127](c[e>>2]|0,c[f>>2]|0)|0;if(!(c[h>>2]|0))c[j>
;>2]=64}else if((c[f>>2]|0)<0)c[j>>2]=6;c[c[g>>2]>>2]=c[j>>2];i=k;return
c[h>>2]|0}function dc(a){a=a|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[d>>
;2]=(c[g>>2]|0)+20;c[e>>2]=(c[g>>2]|0)+56;b[(c[d>>2]|0)+2>>1]=0;b[c[d>>
;2]>>1]=0;c[(c[d>>2]|0)+28>>2]=0;a=c[e>>2]|0;d=c[d>>2]|0;e=a+36|0;do{c[a>
x3e;2]=c[d>>2];a=a+4|0;d=d+4|0}while((a|0)<(e|0));i=f;return}function ec(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];Fb(c[e>>2]|0,c[(c[d>>2]|0)+
20+4>>2]|0);c[(c[d>>2]|0)+20+4>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+8>>
;2]|0);c[(c[d>>2]|0)+20+8>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+12>>2]|0);c[(c[d
>>2]|0)+20+12>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+20>>2]|0);c[(c[d>>
2]|0)+20+20>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+32>>2]|0);c[(c[d>>2]|0)+20+32
x3e;>2]=0;c[(c[d>>2]|0)+20+24>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+8
>>2]=0;c[(c[d>>2]|0)+12>>2]=0;dc(c[d>>2]|0);i=b;return}function fc(a){a=a|0;var b=0,d=0,
e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(!(c[b>>2]|0)){i=e;return}c[d>>2]=c[c[b>>2]>
;>2];ec(c[b>>2]|0);Fb(c[d>>2]|0,c[b>>2]|0);c[b>>2]=0;i=e;return}function gc(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[g>>2]=c[c[d>>2]>>2];b
=hc(c[g>>2]|0,8,0,c[(c[d>>2]|0)+4>>2]<<1,0,e)|0;c[(c[d>>2]|0)+20+20>>
;2]=b;if(c[e>>2]|0){g=c[e>>2]|0;i=f;return g|0}a[(c[d>>2]|0)+16>>0]=1;c[(c[d>>
2]|0)+20+24>>2]=(c[(c[d>>2]|0)+20+20>>2]|0)+(c[(c[d>>2]|0)+4>>2]<<3);
jc(c[d>>2]|0);g=c[e>>2]|0;i=f;return g|0}function hc(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;o=i;i=i+32|0;p=o+24|0;h=o+20|0;j=o+16|0;k=o+12|0;l=o+8|0;m=o+4|0;n=o;c[p>>2]=a;c[h>
x3e;2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=0;c[l>>2]=ic
(c[p>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,n)|0;if((c[n>>2]|
0)==0?(c[k>>2]|0)>(c[j>>2]|0):0){p=(c[l>>2]|0)+(_(c[j>>2]|0,c[h>>2]|0)|0)|
0;Ns(p|0,0,_((c[k>>2]|0)-(c[j>>2]|0)|0,c[h>>2]|0)|0)|0}c[c[m>>2]>>2]=c[n>
x3e;2];i=o;return c[l>>2]|0}function ic(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;s=i;i=i+48|0;h=s+36|0;j=s+32|0;k=s+28|0;l=s+24|0;m=s+20|0;n=s+16|0;q=s+12|0;o=s+8|0;p=s+4|0;r=s;c[h>>
;2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[q>>2]=0;do
if(!((c[k>>2]|0)<0|(c[l>>2]|0)<0|(c[j>>2]|0)<0)){if((c[l>>2]|0)==0|(c[j
x3e;>2]|0)==0){Fb(c[h>>2]|0,c[m>>2]|0);c[m>>2]=0;break}if((c[l>>2]|0)>(2147483647
/(c[j>>2]|0)|0|0)){c[q>>2]=10;break}if(!(c[k>>2]|0)){c[m>>2]=bc(c[h>>2]|0,_(c[
l>>2]|0,c[j>>2]|0)|0,q)|0;break}c[p>>2]=_(c[k>>2]|0,c[j>>2]|0)|0;c[r>>
;2]=_(c[l>>2]|0,c[j>>2]|0)|0;c[o>>2]=Wa[c[(c[h>>2]|0)+12>>2]&31](c[h>
;>2]|0,c[p>>2]|0,c[r>>2]|0,c[m>>2]|0)|0;if(!(c[o>>2]|0)){c[q>>2]=64;break
}else{c[m>>2]=c[o>>2];break}}else c[q>>2]=6;while(0);c[c[n>>2]>>2]=c[q>
x3e;2];i=s;return c[m>>2]|0}function jc(d){d=d|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
]=d;c[f>>2]=(c[e>>2]|0)+20;c[h>>2]=(c[e>>2]|0)+56;c[(c[h>>2]|0)+4>>2
]=(c[(c[f>>2]|0)+4>>2]|0)+(b[(c[f>>2]|0)+2>>1]<<3);c[(c[h>>2]|0)+8
x3e;>2]=(c[(c[f>>2]|0)+8>>2]|0)+(b[(c[f>>2]|0)+2>>1]|0);c[(c[h>>2]|0)+12
x3e;>2]=(c[(c[f>>2]|0)+12>>2]|0)+(b[c[f>>2]>>1]<<1);if(!(a[(c[e>>
;2]|0)+16>>0]|0)){i=g;return}c[(c[e>>2]|0)+56+20>>2]=(c[(c[e>>2]|0)+20+20>>2]|
0)+(b[(c[f>>2]|0)+2>>1]<<3);c[(c[e>>2]|0)+56+24>>2]=(c[(c[e>>2]|0)+20
+24>>2]|0)+(b[(c[f>>2]|0)+2>>1]<<3);i=g;return}function kc(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,s=0,t=0;s=i;i=i+48|0;g=s+36|0;h=s+32|0;t=s+28|0;j=s+24|0;o=s+20|0;n=s+16|0;l=s+12|0;
m=s+8|0;k=s+40|0;p=s+4|0;q=s;c[h>>2]=d;c[t>>2]=e;c[j>>2]=f;c[o>>2]=c[c[h>>2]
x3e;>2];c[n>>2]=0;c[l>>2]=(c[h>>2]|0)+20;c[m>>2]=(c[h>>2]|0)+56;a[k>
x3e;0]=0;c[p>>2]=(b[(c[l>>2]|0)+2>>1]|0)+(b[(c[m>>2]|0)+2>>1]|0)+(c[t>>
;2]|0);c[q>>2]=c[(c[h>>2]|0)+4>>2];do if((c[p>>2]|0)>>>0>(c[q>
x3e;2]|0)>>>0){c[p>>2]=(c[p>>2]|0)+7&-8;if((c[p>>2]|0)>>>0>
;32767){c[g>>2]=10;t=c[g>>2]|0;i=s;return t|0}t=hc(c[o>>2]|0,8,c[q>>2]|0,c[p>>
2]|0,c[(c[l>>2]|0)+4>>2]|0,n)|0;c[(c[l>>2]|0)+4>>2]=t;if((c[n>>2]|0)==0?(t=hc(
c[o>>2]|0,1,c[q>>2]|0,c[p>>2]|0,c[(c[l>>2]|0)+8>>2]|0,n)|0,c[(c[l>>2
]|0)+8>>2]=t,(c[n>>2]|0)==0):0){if(a[(c[h>>2]|0)+16>>0]|0){t=hc(c[o>>2]|0,8,c[
q>>2]<<1,c[p>>2]<<1,c[(c[h>>2]|0)+20+20>>2]|0,n)|0;c[(c[h>>
;2]|0)+20+20>>2]=t;if(c[n>>2]|0)break;Ts((c[(c[h>>2]|0)+20+20>>2]|0)+(c[p>>2]
x3c;<3)|0,(c[(c[h>>2]|0)+20+20>>2]|0)+(c[q>>2]<<3)|0,c[q>>2]<<3
|0)|0;c[(c[h>>2]|0)+20+24>>2]=(c[(c[h>>2]|0)+20+20>>2]|0)+(c[p>>2]<<
3)}a[k>>0]=1;c[(c[h>>2]|0)+4>>2]=c[p>>2];r=10}}else r=10;while(0);a:do if((r|0)==10){c[q
>>2]=c[(c[h>>2]|0)+8>>2];c[p>>2]=(b[c[l>>2]>>1]|0)+(b[c[m>>
;2]>>1]|0)+(c[j>>2]|0);do if((c[p>>2]|0)>>>0>(c[q>>2]|0)>>
x3e;0){c[p>>2]=(c[p>>2]|0)+3&-4;if((c[p>>2]|0)>>>0>32767){c[g>>
2]=10;t=c[g>>2]|0;i=s;return t|0}else{t=hc(c[o>>2]|0,2,c[q>>2]|0,c[p>>2]|0,c[(c[l>
x3e;2]|0)+12>>2]|0,n)|0;c[(c[l>>2]|0)+12>>2]=t;if(c[n>>2]|0)break a;a[k>>0]=1;
c[(c[h>>2]|0)+8>>2]=c[p>>2];break}}while(0);if(a[k>>0]|0)jc(c[h>>2]|0)}while(0
);c[g>>2]=c[n>>2];t=c[g>>2]|0;i=s;return t|0}function lc(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;d=k+28|0;l=k+24|0;g=k+20|0;f=k+16|0;h=k+12|0;j=k+8|0;e=k+4|0;m=k;c[d>>2]=a;c[l>>
;2]=b;c[g>>2]=c[c[d>>2]>>2];c[f>>2]=0;c[e>>2]=(c[d>>2]|0)+20;c[m>
;>2]=(c[d>>2]|0)+56;c[h>>2]=(c[(c[e>>2]|0)+28>>2]|0)+(c[(c[m>>2]|0)+28>
;>2]|0)+(c[l>>2]|0);c[j>>2]=c[(c[d>>2]|0)+12>>2];if((c[h>>2]|0)>>
;>0<=(c[j>>2]|0)>>>0){m=c[f>>2]|0;i=k;return m|0}c[h>>2]=(c[h>>
2]|0)+1&-2;m=hc(c[g>>2]|0,32,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+32>>2]|0,f
)|0;c[(c[e>>2]|0)+32>>2]=m;if(c[f>>2]|0){m=c[f>>2]|0;i=k;return m|0}c[(c[d>>2]|
0)+12>>2]=c[h>>2];mc(c[d>>2]|0);m=c[f>>2]|0;i=k;return m|0}function mc(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+4|0;d=b;c[f>>2]=a;c[e>>2]=(c[f>>2]|0)+20;c[d>>2]=(c
[f>>2]|0)+56;c[(c[d>>2]|0)+32>>2]=(c[(c[e>>2]|0)+32>>2]|0)+(c[(c[e>>
2]|0)+28>>2]<<5);i=b;return}function nc(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;c[f>>2]=(c[e>>2]|0)+56;b[(c[f>>2]|0)+2>>1]=0;b[c[f>>2]>>1]=0;c[(c[
f>>2]|0)+28>>2]=0;jc(c[e>>2]|0);mc(c[e>>2]|0);i=d;return}function oc(a){a=a|0;var d=0,e=
0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[d>>2]=a;if(!(c[d>>2]|0)){
i=k;return}c[e>>2]=(c[d>>2]|0)+20;c[f>>2]=(c[d>>2]|0)+56;c[j>>2]=b[c[f>
x3e;2]>>1];c[h>>2]=b[(c[e>>2]|0)+2>>1];b[(c[e>>2]|0)+2>>1]=(b[(c[e
x3e;>2]|0)+2>>1]|0)+(b[(c[f>>2]|0)+2>>1]|0);b[c[e>>2]>>1]=(b[c[e>>
;2]>>1]|0)+(b[c[f>>2]>>1]|0);a=(c[e>>2]|0)+28|0;c[a>>2]=(c[a>>2]|0)+(
c[(c[f>>2]|0)+28>>2]|0);c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[j
x3e;>2]|0)>>>0)break;b[(c[(c[f>>2]|0)+12>>2]|0)+(c[g>>2]<<1)>
x3e;1]=(b[(c[(c[f>>2]|0)+12>>2]|0)+(c[g>>2]<<1)>>1]|0)+(c[h>>2]|0);c
[g>>2]=(c[g>>2]|0)+1}nc(c[d>>2]|0);i=k;return}function pc(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,j=0,k=0
,l=0,m=0,n=0;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;l=n+12|0;k=n+8|0;m=n+4|0;j=n;c[f>>2]=a;c[g>>2]=e;c[l>
;>2]=b[(c[g>>2]|0)+20+2>>1];c[k>>2]=b[(c[g>>2]|0)+20>>1];c[h>>2
]=kc(c[f>>2]|0,c[l>>2]|0,c[k>>2]|0)|0;if(c[h>>2]|0){a=c[h>>2]|0;i=n;return a|0
}c[m>>2]=(c[f>>2]|0)+20;c[j>>2]=(c[g>>2]|0)+20;Ss(c[(c[m>>2]|0)+4>>2
]|0,c[(c[j>>2]|0)+4>>2]|0,c[l>>2]<<3|0)|0;Ss(c[(c[m>>2]|0)+8>>2]|0,c
[(c[j>>2]|0)+8>>2]|0,c[l>>2]|0)|0;Ss(c[(c[m>>2]|0)+12>>2]|0,c[(c[j>>
2]|0)+12>>2]|0,c[k>>2]<<1|0)|0;if(d[(c[f>>2]|0)+16>>0]|0?d[(c[g>>2]|
0)+16>>0]|0:0){Ss(c[(c[f>>2]|0)+20+20>>2]|0,c[(c[g>>2]|0)+20+20>>2]|0,c[l>
;>2]<<3|0)|0;Ss(c[(c[f>>2]|0)+20+24>>2]|0,c[(c[g>>2]|0)+20+24>>2]|0,c[l
x3e;>2]<<3|0)|0}b[(c[m>>2]|0)+2>>1]=c[l>>2];b[c[m>>2]>>1]=c[k
x3e;>2];jc(c[f>>2]|0);a=c[h>>2]|0;i=n;return a|0}function qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;h=i;i=i+16|0;j=h+12|0;d=h+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=0;c[e>>2]=c[j
x3e;>2];if(!((c[e>>2]|0)!=0&(c[d>>2]|0)!=0)){j=c[f>>2]|0;i=h;return j|0}while(1){if(!(c[
c[e>>2]>>2]|0)){g=6;break}j=(Kr(c[c[e>>2]>>2]|0,c[d>>2]|0)|0)==0;a=c[e>
x3e;2]|0;if(j)break;c[e>>2]=a+8}if((g|0)==6){j=c[f>>2]|0;i=h;return j|0}c[f>>2]=c[a+4>>2
];j=c[f>>2]|0;i=h;return j|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;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;c[c[g>>2]>
x3e;2]=c[k>>2];c[(c[g>>2]|0)+4>>2]=c[j>>2];c[(c[g>>2]|0)+8>>2]=c[h
x3e;>2];c[(c[g>>2]|0)+12>>2]=0;i=f;return}function sc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d
+8|0;f=d+4|0;c[e>>2]=a;c[f>>2]=b;c[d>>2]=(c[e>>2]|0)+16;c[(c[e>>2]|0)+12>
x3e;2]=c[f>>2];ta(c[d>>2]|0,1)}function tc(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;m=i;
i=i+32|0;h=m+24|0;e=m+20|0;f=m+16|0;j=m+12|0;k=m+8|0;g=m+4|0;l=m;c[e>>2]=a;c[f>>2]=b;c[j>>2]=d;c[c
[j>>2]>>2]=0;if(!(c[e>>2]|0)){c[h>>2]=33;l=c[h>>2]|0;i=m;return l|0}if(!(c[f
x3e;>2]|0)){c[h>>2]=6;l=c[h>>2]|0;i=m;return l|0}c[g>>2]=c[c[e>>2]>>2];c[
l>>2]=bc(c[g>>2]|0,40,k)|0;if(!(c[k>>2]|0)){c[(c[l>>2]|0)+28>>2]=c[g>>
;2];do if(c[c[f>>2]>>2]&1|0)uc(c[l>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[(c[f>
;>2]|0)+8>>2]|0);else{if(c[c[f>>2]>>2]&4|0){c[k>>2]=qr(c[l>>2]|0,c[(
c[f>>2]|0)+12>>2]|0)|0;c[(c[l>>2]|0)+16>>2]=c[(c[f>>2]|0)+12>>2];break
}if(c[c[f>>2]>>2]&2|0?c[(c[f>>2]|0)+16>>2]|0:0){Fb(c[g>>2]|0,c[l>>
;2]|0);c[l>>2]=0;c[l>>2]=c[(c[f>>2]|0)+16>>2];break}c[k>>2]=6}while(0);e=c[g
x3e;>2]|0;f=c[l>>2]|0;if(c[k>>2]|0){Fb(e,f);c[l>>2]=0}else c[f+28>>2]=e;c[c[j>
x3e;2]>>2]=c[l>>2]}c[h>>2]=c[k>>2];l=c[h>>2]|0;i=m;return l|0}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;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]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2];c[(c[f>
x3e;2]|0)+8>>2]=0;c[(c[f>>2]|0)+32>>2]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>
x3e;2]|0)+24>>2]=0;i=e;return}function vc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=a;c[e>>2]=b;if(!(c[d>>2]|0)){i=g;return}c[f>>2]=c[(c[d>>2]|0)+28>>2];
wc(c[d>>2]|0);if(c[e>>2]|0){i=g;return}Fb(c[f>>2]|0,c[d>>2]|0);c[d>>2]=0;i=g;return
}function wc(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)){i=d;return}if(!(c[(c[b>
x3e;2]|0)+24>>2]|0)){i=d;return}Va[c[(c[b>>2]|0)+24>>2]&63](c[b>>2]|0);i=d;return}function
xc(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c
[g>>2]=c[(c[(c[d>>2]|0)+4>>2]|0)+100>>2];if(c[(c[(c[d>>2]|0)+156>>2]|
0)+4>>2]&1|0){Fb(c[g>>2]|0,c[(c[d>>2]|0)+76+12>>2]|0);c[(c[d>>2]|0)+76+12
>>2]=0}else{a=(c[(c[d>>2]|0)+156>>2]|0)+4|0;c[a>>2]=c[a>>2]|1}a=bc(c[g>
x3e;2]|0,c[e>>2]|0,f)|0;c[(c[d>>2]|0)+76+12>>2]=a;i=h;return c[f>>2]|0}function yc(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;m=i;i=i+32|0;d=m+28|0;e=m+24|0;f=m+20|0;j=m+16|0;h=m+12|0;g=m+8|0;k=m+4|0;l=
m;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0?c[(c[e>>2]|0)+96>>2]|0:0){c[h>>2]=
c[(c[e>>2]|0)+96>>2];c[g>>2]=c[(c[h>>2]|0)+20>>2];c[k>>2]=c[(c[h>
;>2]|0)+8>>2];c[l>>2]=bc(c[k>>2]|0,c[(c[g>>2]|0)+44>>2]|0,j)|0;do if(c[j
x3e;>2]|0){if(c[f>>2]|0)c[c[f>>2]>>2]=0}else{c[(c[l>>2]|0)+4>>2]=c[e>
;>2];c[j>>2]=zc(c[l>>2]|0)|0;if(c[j>>2]|0){Ac(c[l>>2]|0);Fb(c[k>>2]|0,c[l
>>2]|0);c[l>>2]=0;break}c[(c[l>>2]|0)+8>>2]=c[(c[e>>2]|0)+84>>2];c[(
c[e>>2]|0)+84>>2]=c[l>>2];if(c[f>>2]|0)c[c[f>>2]>>2]=c[l>>
2]}while(0);c[d>>2]=c[j>>2];l=c[d>>2]|0;i=m;return l|0}c[d>>2]=6;l=c[d>>2]|0;i
=m;return l|0}function zc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;b=j+20|0;e=j+16|0;d=j+12|0;h=j+8|0;f=j+4|0;g=j;c
[b>>2]=a;c[e>>2]=c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2];c[d>>2]=c[(c[e>
;>2]|0)+20>>2];c[h>>2]=c[(c[e>>2]|0)+8>>2];c[f>>2]=0;c[g>>2]=0;
c[c[b>>2]>>2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=bc(c[h>>2]|0,40,f)|0;if(c[
f>>2]|0){a=c[f>>2]|0;i=j;return a|0}c[(c[b>>2]|0)+156>>2]=c[g>>2];if(!(c[c[c[e
>>2]>>2]>>2]&512))c[f>>2]=ac(c[h>>2]|0,c[g>>2]|0)|0;if(c[f>
;>2]|0){a=c[f>>2]|0;i=j;return a|0}if(!(c[(c[d>>2]|0)+64>>2]|0)){a=c[f>>2]|0;i=j;return
a|0}c[f>>2]=Ta[c[(c[d>>2]|0)+64>>2]&63](c[b>>2]|0)|0;a=c[f>>2]|0;i=j;return
a|0}function Ac(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;d=g+4|0;f=g;c[b>>2]=a;c[e>>2
]=c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2];c[d>>2]=c[(c[e>>2]|0)+20>>2];c[f
x3e;>2]=c[(c[e>>2]|0)+8>>2];if(c[(c[d>>2]|0)+68>>2]|0)Va[c[(c[d>>2]|0)+68
>>2]&63](c[b>>2]|0);Eb(c[b>>2]|0);if(!(c[(c[b>>2]|0)+156>>2]|0)){i=g;return
}if(!(c[c[c[e>>2]>>2]>>2]&512)){fc(c[c[(c[b>>2]|0)+156>>2]>>2]|
0);c[c[(c[b>>2]|0)+156>>2]>>2]=0}Fb(c[f>>2]|0,c[(c[b>>2]|0)+156>>2]|
0);c[(c[b>>2]|0)+156>>2]=0;i=g;return}function Bc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+
16|0;d=j+12|0;g=j+8|0;h=j+4|0;b=j;c[f>>2]=a;if(!(c[f>>2]|0)){i=j;return}c[d>>2]=c[(c[(c[f>>
;2]|0)+4>>2]|0)+96>>2];c[g>>2]=c[(c[d>>2]|0)+8>>2];c[h>>2]=0;c[b>
;>2]=c[(c[(c[f>>2]|0)+4>>2]|0)+84>>2];while(1){if(!(c[b>>2]|0)){e=10;break}if((c[b
x3e;>2]|0)==(c[f>>2]|0))break;c[h>>2]=c[b>>2];c[b>>2]=c[(c[b>>2]|0)+8>
;>2]}if((e|0)==10){i=j;return}b=c[(c[b>>2]|0)+8>>2]|0;if(c[h>>2]|0)c[(c[h>>2]|0)+8
x3e;>2]=b;else c[(c[(c[f>>2]|0)+4>>2]|0)+84>>2]=b;Ac(c[f>>2]|0);Fb(c[g>>2
]|0,c[f>>2]|0);c[f>>2]=0;i=j;return}function Cc(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;e=k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[f>>2]|0
)){c[e>>2]=35;d=c[e>>2]|0;i=k;return d|0}c[j>>2]=c[g>>2];if(c[(c[f>>2]|0)+92
x3e;>2]|0)c[j>>2]=Dc(c[f>>2]|0,c[g>>2]|0)|0;c[e>>2]=Cb(c[f>>2]|0,c[j>
;>2]|0,c[h>>2]|0)|0;d=c[e>>2]|0;i=k;return d|0}function Dc(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;if(!(c[d>>2]|0)){g=
c[g>>2]|0;i=h;return g|0}if(!(c[(c[d>>2]|0)+92>>2]|0)){g=c[g>>2]|0;i=h;return g|0}c[f>
;>2]=c[(c[d>>2]|0)+92>>2];c[g>>2]=Ya[c[(c[(c[f>>2]|0)+12>>2]|0)+12>
x3e;2]&127](c[f>>2]|0,c[e>>2]|0)|0;g=c[g>>2]|0;i=h;return g|0}function Ec(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;m=i;i=i+64|0;f=m+48|0;g=m+44|0;h=m+40|0;j=m+36|0;k=m+32|0;l=m;c[g>>2]=a;
c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(c[h>>2]|0){c[l>>2]=4;c[l+12>>2]=c[h
>>2];c[l+16>>2]=0;c[f>>2]=Fc(c[g>>2]|0,l,c[j>>2]|0,c[k>>2]|0)|0;b=c[
f>>2]|0;i=m;return b|0}else{c[f>>2]=6;b=c[f>>2]|0;i=m;return b|0}return 0}function Fc(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;G=i;i=i
+96|0;C=G+80|0;j=G+76|0;k=G+72|0;l=G+68|0;D=G+64|0;E=G+60|0;o=G+56|0;u=G+52|0;B=G+48|0;q=G+44|0;v=G+40|0;p=G+84|0;n=G+36|0;t=G+32
|0;w=G+28|0;y=G+24|0;x=G+20|0;z=G+16|0;A=G+12|0;r=G+8|0;m=G+4|0;s=G;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;
c[D>>2]=h;c[B>>2]=0;c[q>>2]=0;c[v>>2]=0;if(!(((c[D>>2]|0)==0&(c[l>
x3e;2]|0)>=0^1)&(c[k>>2]|0)!=0)){c[C>>2]=6;F=c[C>>2]|0;i=G;return F|0}if(c[c[k>>
;2]>>2]&2|0)h=(c[(c[k>>2]|0)+16>>2]|0)!=0;else h=0;a[p>>0]=h&1;c[E>>
2]=tc(c[j>>2]|0,c[k>>2]|0,B)|0;a:do if(!(c[E>>2]|0)){c[u>>2]=c[c[j>>2]>
x3e;2];do if(c[c[k>>2]>>2]&8|0?c[(c[k>>2]|0)+20>>2]|0:0){c[o>>2]=c[(c[k
x3e;>2]|0)+20>>2];if(c[c[c[o>>2]>>2]>>2]&1|0){c[w>>2]=0;c[y>>
;2]=0;if(c[c[k>>2]>>2]&16|0){c[w>>2]=c[(c[k>>2]|0)+24>>2];c[y>>
2]=c[(c[k>>2]|0)+28>>2]}c[E>>2]=Gc(c[o>>2]|0,c[B>>2]|0,c[l>>2]|0,c[w
>>2]|0,c[y>>2]|0,q)|0;if(!(c[E>>2]|0))break}else c[E>>2]=32;vc(c[B>>2]|0,d[p
x3e;>0]|0);F=60;break a}else F=14;while(0);b:do if((F|0)==14){c[n>>2]=(c[j>>2]|0)+28;c[t>>2]=(
c[n>>2]|0)+(c[(c[j>>2]|0)+24>>2]<<2);while(1){if((c[n>>2]|0)>>>
0>=(c[t>>2]|0)>>>0){F=27;break a}if(c[c[c[c[n>>2]>>2]>>2]>>
;2]&1|0){c[x>>2]=0;c[z>>2]=0;c[o>>2]=c[c[n>>2]>>2];if(c[c[k>>2]
x3e;>2]&16|0){c[x>>2]=c[(c[k>>2]|0)+24>>2];c[z>>2]=c[(c[k>>2]|0)+28
x3e;>2]}c[E>>2]=Gc(c[o>>2]|0,c[B>>2]|0,c[l>>2]|0,c[x>>2]|0,c[z>>
;2]|0,q)|0;if(!(c[E>>2]|0))break b;if((Kr(c[(c[c[c[n>>2]>>2]>>2]|0)+8>>2]|0,10489
)|0)==0?(c[E>>2]&255|0)==142:0){if(Kc(c[B>>2]|0,0)|0){F=27;break a}c[E>>2]=Lc(c[j>>
2]|0,c[B>>2]|0,c[l>>2]|0,c[x>>2]|0,c[z>>2]|0,c[D>>2]|0)|0;if(!(c[E>>
2]|0))break}if((c[E>>2]&255|0)!=2){F=27;break a}}c[n>>2]=(c[n>>2]|0)+4}vc(c[B>>2]|0
,d[p>>0]|0);c[C>>2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}while(0);if(a[p>>0]|0){
B=(c[q>>2]|0)+8|0;c[B>>2]=c[B>>2]|1024}c[v>>2]=bc(c[u>>2]|0,12,E)|0;if(!(c[E
x3e;>2]|0)){c[(c[v>>2]|0)+8>>2]=c[q>>2];td((c[(c[q>>2]|0)+96>>2]|0)+24|0,
c[v>>2]|0);if((c[l>>2]|0)>=0){c[E>>2]=yc(c[q>>2]|0,0)|0;if(c[E>>2]|0){F=60
;break}c[E>>2]=ud(c[q>>2]|0,A)|0;if(c[E>>2]|0){F=60;break}c[(c[q>>2]|0)+88>>2]=
c[A>>2]}if(c[(c[q>>2]|0)+8>>2]&1|0){if((b[(c[q>>2]|0)+74>>1]|0)<0)b[(
c[q>>2]|0)+74>>1]=0-(b[(c[q>>2]|0)+74>>1]|0);if(!(c[(c[q>>2]|0)+8>>2
]&32))b[(c[q>>2]|0)+78>>1]=b[(c[q>>2]|0)+74>>1]|0}c:do if(c[(c[q>>2]|0)+8
>>2]&2|0){c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[(c[q>>2]|0)+28>>2]|0
))break c;c[m>>2]=(c[(c[q>>2]|0)+32>>2]|0)+(c[r>>2]<<4);if((b[c[m>>2
]>>1]|0)<0)b[c[m>>2]>>1]=0-(b[c[m>>2]>>1]|0);if((c[(c[m>>2]|0)+
8>>2]|0)<0)c[(c[m>>2]|0)+8>>2]=(0-(c[(c[m>>2]|0)+8>>2]|0)&65535)<
;<16>>16;if((c[(c[m>>2]|0)+12>>2]|0)<0)c[(c[m>>2]|0)+12>>2]=0-(c[(c[
m>>2]|0)+12>>2]|0);c[r>>2]=(c[r>>2]|0)+1}}while(0);c[s>>2]=c[(c[q>>2
]|0)+128>>2];c[(c[s>>2]|0)+4>>2]=65536;c[(c[s>>2]|0)+4+4>>2]=0;c[(c[s>>
;2]|0)+4+8>>2]=0;c[(c[s>>2]|0)+4+12>>2]=65536;c[(c[s>>2]|0)+20>>2]=0;c[(c[s>
;>2]|0)+20+4>>2]=0;c[(c[s>>2]|0)+60>>2]=1;h=c[q>>2]|0;if(c[D>>2]|0){c[c[D
>>2]>>2]=h;break}else{vd(h)|0;break}}else F=60}else F=27;while(0);if((F|0)==27){if(!(((c[E>>2]&
;255|0)!=81?(c[E>>2]&255|0)!=2:0)?(c[E>>2]&255|0)!=85:0))F=30;do if((F|0)==30){c[E>>2]=Xc
(c[j>>2]|0,c[B>>2]|0,c[l>>2]|0,c[D>>2]|0,c[k>>2]|0)|0;if(c[E>>2]|0){
if((c[E>>2]&255|0)!=2)break;c[E>>2]=2;break}else{vc(c[B>>2]|0,d[p>>0]|0);c[C>
x3e;2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}}while(0);vc(c[B>>2]|0,d[p>>0]|0);F=60}if((F|0
)==60)vd(c[q>>2]|0)|0;c[C>>2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}function Gc(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;v=i;i=i+64|0;h=v+48|0;j=v+44|0
;k=v+40|0;l=v+36|0;m=v+32|0;n=v+28|0;u=v+24|0;o=v+20|0;r=v+16|0;p=v+12|0;q=v+8|0;t=v+4|0;s=v;c[h>>2]=a;c[j>>
2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[r>>2]=0;c[t>>2]=0;c[o
>>2]=c[(c[h>>2]|0)+20>>2];c[u>>2]=c[(c[h>>2]|0)+8>>2];c[r>>
;2]=bc(c[u>>2]|0,c[(c[o>>2]|0)+36>>2]|0,p)|0;do if((c[p>>2]|0)==0?(c[t>>2]=bc(
c[u>>2]|0,64,p)|0,(c[p>>2]|0)==0):0){c[(c[r>>2]|0)+128>>2]=c[t>>2];c[(c[r>
;>2]|0)+96>>2]=c[h>>2];c[(c[r>>2]|0)+100>>2]=c[u>>2];c[(c[r>>2]|
0)+104>>2]=c[j>>2];c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]=0;c[s>>2]=0;while
(1){if((c[s>>2]|0)>=(c[l>>2]|0))break;if(!((c[(c[(c[r>>2]|0)+128>>2]|0)+52>>
;2]|0)!=0^1))break;if((c[(c[m>>2]|0)+(c[s>>2]<<3)>>2]|0)==1768842098)c[(c[(c[r>>
;2]|0)+128>>2]|0)+52>>2]=c[(c[m>>2]|0)+(c[s>>2]<<3)+4>>2];c[s>
x3e;2]=(c[s>>2]|0)+1}if(c[(c[o>>2]|0)+48>>2]|0)c[p>>2]=Za[c[(c[o>>2]|0)+48>
;>2]&31](c[j>>2]|0,c[r>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(!(c
[p>>2]|0)){c[q>>2]=Hc(c[r>>2]|0)|0;if((c[q>>2]|0)!=0&(c[q>>2]|0)!=38){c[p
>>2]=c[q>>2];break}else{c[c[n>>2]>>2]=c[r>>2];break}}}while(0);if(!(c[p>
x3e;2]|0)){b=c[p>>2]|0;i=v;return b|0}Ic(c[r>>2]|0,c[u>>2]|0);if(c[(c[o>>2]|0)+52>
x3e;2]|0)Va[c[(c[o>>2]|0)+52>>2]&63](c[r>>2]|0);Fb(c[u>>2]|0,c[t>>2]|0);c
[t>>2]=0;Fb(c[u>>2]|0,c[r>>2]|0);c[r>>2]=0;c[c[n>>2]>>2]=0;b=c[p>
;>2]|0;i=v;return b|0}function Hc(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;b=j+12|0;d=j+8|0;g=j+4|0;f=j;c[d>
x3e;2]=a;c[g>>2]=c[(c[d>>2]|0)+40>>2];if(!(c[g>>2]|0)){c[b>>2]=38;h=c[b>
x3e;2]|0;i=j;return h|0}c[f>>2]=(c[g>>2]|0)+(c[(c[d>>2]|0)+36>>2]<<2);while(1){
a=(c[f>>2]|0)+-4|0;c[f>>2]=a;if(a>>>0<(c[g>>2]|0)>>>0)break;if((
c[(c[c[f>>2]>>2]|0)+4>>2]|0)!=1970170211)continue;if(!((e[(c[c[f>>2]>>2]|0)+8
x3e;>1]|0|0)==3?(e[(c[c[f>>2]>>2]|0)+10>>1]|0|0)==10:0)){if(e[(c[c[f>>2]>>
;2]|0)+8>>1]|0|0)continue;if((e[(c[c[f>>2]>>2]|0)+10>>1]|0|0)!=4)continue}if((((c[f>
;>2]|0)-(c[g>>2]|0)|0)/4|0|0)<=15){h=11;break}}if((h|0)==11){c[(c[d>>2]|0)+92>>2]=c[c[f
x3e;>2]>>2];c[b>>2]=0;h=c[b>>2]|0;i=j;return h|0}c[f>>2]=(c[g>>2]|0)+(c[(
c[d>>2]|0)+36>>2]<<2);while(1){h=(c[f>>2]|0)+-4|0;c[f>>2]=h;if(h>>
x3e;0<(c[g>>2]|0)>>>0){h=17;break}if((c[(c[c[f>>2]>>2]|0)+4>>2]|0)!=
1970170211)continue;if((((c[f>>2]|0)-(c[g>>2]|0)|0)/4|0|0)<=15){h=16;break}}if((h|0)==16){c[(c[d>
x3e;2]|0)+92>>2]=c[c[f>>2]>>2];c[b>>2]=0;h=c[b>>2]|0;i=j;return h|0}else if((h
|0)==17){c[b>>2]=38;h=c[b>>2]|0;i=j;return h|0}return 0}function Ic(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;if(!(c[d>>2]|0)){i=h;return}c[g>
;>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[d>>2]|0)+36>>2]|0))break;c[f>>2]=c[(c[(c
[d>>2]|0)+40>>2]|0)+(c[g>>2]<<2)>>2];Jc(c[f>>2]|0);c[(c[(c[d>
x3e;2]|0)+40>>2]|0)+(c[g>>2]<<2)>>2]=0;c[g>>2]=(c[g>>2]|0)+1}Fb(c[e
x3e;>2]|0,c[(c[d>>2]|0)+40>>2]|0);c[(c[d>>2]|0)+40>>2]=0;c[(c[d>>2]|0)+36
>>2]=0;i=h;return}function Jc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;b=f+12|0;d=f+8|0;g=f+4|0;e=f;c[b>>
;2]=a;c[d>>2]=c[(c[b>>2]|0)+12>>2];c[g>>2]=c[c[b>>2]>>2];c[e>
x3e;2]=c[(c[g>>2]|0)+100>>2];if(!(c[(c[d>>2]|0)+8>>2]|0)){e=c[e>>2]|0;g=c[b>
;>2]|0;Fb(e,g);c[b>>2]=0;i=f;return}Va[c[(c[d>>2]|0)+8>>2]&63](c[b>>2]|0);e=c[
e>>2]|0;g=c[b>>2]|0;Fb(e,g);c[b>>2]=0;i=f;return}function Kc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;
g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;if(c[(c[d>>2]|0)+20>
x3e;2]|0){if(Wa[c[(c[d>>2]|0)+20>>2]&31](c[d>>2]|0,c[e>>2]|0,0,0)|0)c[f>>
2]=85}else if((c[e>>2]|0)>>>0>(c[(c[d>>2]|0)+4>>2]|0)>>>0)c[f
x3e;>2]=85;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[(c[d>>2]|0)+8>>2]=c[e>
x3e;2];a=c[f>>2]|0;i=g;return a|0}function Lc(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0
,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;w=i;i=i+64|0;j=w+52|0;k=w+48|0;l=w+44|0;m=w+40|0;y=w+36|0;x=w+32|0;n=w+28|0;o=w+24|
0;s=w+20|0;t=w+16|0;r=w+12|0;u=w+8|0;q=w+56|0;v=w+4|0;p=w;c[k>>2]=a;c[l>>2]=b;c[m>>2]=e;c[y>
x3e;2]=f;c[x>>2]=g;c[n>>2]=h;c[s>>2]=c[c[k>>2]>>2];c[y>>2]=c[y>
x3e;2];c[x>>2]=c[x>>2];c[u>>2]=Mc(c[l>>2]|0)|0;c[o>>2]=Nc(c[l>>2]|0,
c[m>>2]|0,t,r,q)|0;if((((c[o>>2]|0)==0?(Kc(c[l>>2]|0,(c[u>>2]|0)+(c[t>>2]|0)|0
)|0)==0:0)?(c[v>>2]=bc(c[s>>2]|0,c[r>>2]|0,o)|0,(c[o>>2]|0)==0):0)?(c[o>>2]=Rc
(c[l>>2]|0,c[v>>2]|0,c[r>>2]|0)|0,(c[o>>2]|0)==0):0)c[o>>2]=Tc(c[k>>
2]|0,c[v>>2]|0,c[r>>2]|0,(c[m>>2]|0)<0?c[m>>2]|0:0,d[q>>0]|0|0?10406:10410
,c[n>>2]|0)|0;if((c[o>>2]|0)==2?(c[p>>2]=Kc(c[l>>2]|0,c[u>>2]|0)|0,c[p>
x3e;2]|0):0){c[j>>2]=c[p>>2];y=c[j>>2]|0;i=w;return y|0}c[j>>2]=c[o>>2];y=c[j
x3e;>2]|0;i=w;return y|0}function Mc(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 Nc(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;v=i;i=i+48|0;t=v+36|0;k=v+32|0;l=v+28|0;m=v+24|0;n=v+20|0;o=v+16|0;u=v+12|0;q=v+40|0;r=v+8|0;s=v+4|0;p=v;c[k>>2]=d;c
[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[c[m>>2]>>2]=0;c[c[n>
x3e;2]>>2]=0;a[c[o>>2]>>0]=0;c[s>>2]=Oc(c[k>>2]|0,u)|0;if(c[u>>2]|0){
c[t>>2]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}if((c[s>>2]|0)!=1954115633){c[t>>2]=
2;u=c[t>>2]|0;i=v;return u|0}b[q>>1]=Pc(c[k>>2]|0,u)|0;if(c[u>>2]|0){c[t>>2]=c
[u>>2];u=c[t>>2]|0;i=v;return u|0}d=Qc(c[k>>2]|0,6)|0;c[u>>2]=d;if(d|0){c[t>>2
]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}c[r>>2]=-1;a[c[o>>2]>>0]=0;c[p>>
;2]=0;while(1){if((c[p>>2]|0)>=(e[q>>1]|0|0)){k=26;break}c[s>>2]=Oc(c[k>>2]|0,u)|0;
if(c[u>>2]|0){k=15;break}d=Qc(c[k>>2]|0,4)|0;c[u>>2]=d;if(d|0){k=15;break}d=Oc(c[k>>2]|0
,u)|0;c[c[m>>2]>>2]=d;if(c[u>>2]|0){k=15;break}d=Oc(c[k>>2]|0,u)|0;c[c[n>>2]
x3e;>2]=d;if(c[u>>2]|0){k=15;break}if((c[s>>2]|0)==1128875040){c[r>>2]=(c[r>>2]|0)+
1;d=c[m>>2]|0;c[d>>2]=(c[d>>2]|0)+22;d=c[n>>2]|0;c[d>>2]=(c[d>>2]|0)-
22;a[c[o>>2]>>0]=1;if((c[l>>2]|0)<0){k=18;break}}else if((c[s>>2]|0)==1415139377?(c
[r>>2]=(c[r>>2]|0)+1,d=c[m>>2]|0,c[d>>2]=(c[d>>2]|0)+24,d=c[n>>2]|0,
c[d>>2]=(c[d>>2]|0)-24,a[c[o>>2]>>0]=0,(c[l>>2]|0)<0):0){k=21;break}if((c
[l>>2]|0)>=0?(c[r>>2]|0)==(c[l>>2]|0):0){k=24;break}c[p>>2]=(c[p>>2]|0)+1
}if((k|0)==15){c[t>>2]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}else if((k|0)==18){c[t>>2]=0;u
=c[t>>2]|0;i=v;return u|0}else if((k|0)==21){c[t>>2]=0;u=c[t>>2]|0;i=v;return u|0}else if((k|0)==24
){c[t>>2]=0;u=c[t>>2]|0;i=v;return u|0}else if((k|0)==26){c[t>>2]=142;u=c[t>>2]|0;i=v;return
u|0}return 0}function Oc(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;k=m+20|0;j=m+4
|0;l=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=0;c[l>>2]=0;c[c[h>>2]>>2]=0;do if
(((c[(c[g>>2]|0)+8>>2]|0)+3|0)>>>0<(c[(c[g>>2]|0)+4>>2]|0)>>
;>0){e=c[g>>2]|0;if(c[(c[g>>2]|0)+20>>2]|0){if((Wa[c[e+20>>2]&31](c[g>>
;2]|0,c[(c[g>>2]|0)+8>>2]|0,k,4)|0)!=4)break;c[j>>2]=k}else c[j>>2]=(c[e>>2]|0
)+(c[(c[g>>2]|0)+8>>2]|0);if(c[j>>2]|0){c[j>>2]=(c[j>>2]|0)+4;c[l>>2
]=a[(c[j>>2]|0)+-4>>0]<<24|d[(c[j>>2]|0)+-4+1>>0]<<16|d[(c[j>
x3e;2]|0)+-4+2>>0]<<8|d[(c[j>>2]|0)+-4+3>>0]<<0}k=(c[g>>2]|0)+8|0;c[
k>>2]=(c[k>>2]|0)+4;c[f>>2]=c[l>>2];l=c[f>>2]|0;i=m;return l|0}while(0);c[c[h
x3e;>2]>>2]=85;c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}function Pc(e,f){e=e|0;f=f|0;var g=0,h=0,
j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;g=n+14|0;h=n+8|0;j=n+4|0;l=n+16|0;k=n;m=n+12|0;c[h>>2]=e;c[j>>2]=f;c[k>
;>2]=0;b[m>>1]=0;c[c[j>>2]>>2]=0;do if(((c[(c[h>>2]|0)+8>>2]|0)+1|0)>
;>>0<(c[(c[h>>2]|0)+4>>2]|0)>>>0){f=c[h>>2]|0;if(c[(c[h>>2
]|0)+20>>2]|0){if((Wa[c[f+20>>2]&31](c[h>>2]|0,c[(c[h>>2]|0)+8>>2]|0,l,2)|
0)!=2)break;c[k>>2]=l}else c[k>>2]=(c[f>>2]|0)+(c[(c[h>>2]|0)+8>>2]|0);if(c[k
x3e;>2]|0){c[k>>2]=(c[k>>2]|0)+2;b[m>>1]=a[(c[k>>2]|0)+-2>>0]<<
16>>16<<8|d[(c[k>>2]|0)+-2+1>>0]<<0}l=(c[h>>2]|0)+8|0;c[l>>
;2]=(c[l>>2]|0)+2;b[g>>1]=b[m>>1]|0;m=b[g>>1]|0;i=n;return m|0}while(0);c[c[j>>
;2]>>2]=85;b[g>>1]=0;m=b[g>>1]|0;i=n;return m|0}function Qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g
=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)<0){c[d>>2]=85;a=
c[d>>2]|0;i=g;return a|0}else{c[d>>2]=Kc(c[e>>2]|0,(c[(c[e>>2]|0)+8>>2]|0)+(c[
f>>2]|0)|0)|0;a=c[d>>2]|0;i=g;return a|0}return 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+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=Sc(c[h>>2]|0,c[(c[h>
;>2]|0)+8>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function Sc(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g>>2]=
a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=0;if((c[h>>2]|0)>>>0>
;=(c[(c[g>>2]|0)+4>>2]|0)>>>0){c[f>>2]=85;m=c[f>>2]|0;i=n;return m|0}d=c[
g>>2]|0;if(c[(c[g>>2]|0)+20>>2]|0)c[m>>2]=Wa[c[d+20>>2]&31](c[g>>
;2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;else{c[m>>2]=(c[d+4>>2]|0)-(c[h>
x3e;2]|0);if((c[m>>2]|0)>>>0>(c[k>>2]|0)>>>0)c[m>>2]=c[k>
x3e;2];Ss(c[j>>2]|0,(c[c[g>>2]>>2]|0)+(c[h>>2]|0)|0,c[m>>2]|0)|0}c[(c[g>
x3e;2]|0)+8>>2]=(c[h>>2]|0)+(c[m>>2]|0);if((c[m>>2]|0)>>>0<(c[k>
;>2]|0)>>>0)c[l>>2]=85;c[f>>2]=c[l>>2];m=c[f>>2]|0;i=n;return m|0}function
Tc(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;s=i;i=i+80|0;h=s+72|0;j
=s+68|0;k=s+64|0;t=s+60|0;l=s+56|0;m=s+52|0;n=s+48|0;o=s+16|0;p=s+8|0;r=s+4|0;q=s;c[j>>2]=a;c[k>>2]=b;c[t>
;>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[r>>2]=0;c[q>>2]=c[c[j>>2
]>>2];c[p>>2]=Vc(c[j>>2]|0,c[k>>2]|0,c[t>>2]|0,33,r)|0;if(c[p>>2]|0){
Fb(c[q>>2]|0,c[k>>2]|0);c[k>>2]=0;c[h>>2]=c[p>>2];t=c[h>>2]|0;i=s;return
t|0}c[o>>2]=2;c[o+16>>2]=c[r>>2];if(c[m>>2]|0){c[o>>2]=c[o>>2]|8;c[
o+20>>2]=Wc(c[j>>2]|0,c[m>>2]|0)|0}c[p>>2]=Fc(c[j>>2]|0,o,c[l>>2]|0,
c[n>>2]|0)|0;if(!(c[p>>2]|0)){t=(c[c[n>>2]>>2]|0)+8|0;c[t>>2]=c[t>>2
]&-1025}else{wc(c[r>>2]|0);Fb(c[q>>2]|0,c[r>>2]|0);c[r>>2]=0}c[h>>2]=c[p
x3e;>2];t=c[h>>2]|0;i=s;return t|0}function Uc(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]|0)+28>>2];Fb(c[e>>2]|0,c[c[d>>2]>>2]|0);c[c[d
>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;c[(c[d>>2
]|0)+24>>2]=0;i=b;return}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,j=0,k=0,l=0,m=0,n=0,o=0,p=0,
q=0;q=i;i=i+48|0;g=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;l=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;p=q;c[h>>2]=a;c[j>>2]=
b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;if(!(c[h>>2]|0)){c[g>>2]=33;p=c[g>>2
]|0;i=q;return p|0}if(!(c[j>>2]|0)){c[g>>2]=6;p=c[g>>2]|0;i=q;return p|0}c[c[m>>2]>
x3e;2]=0;c[o>>2]=c[c[h>>2]>>2];c[p>>2]=bc(c[o>>2]|0,40,n)|0;if(!(c[n>>
;2]|0)){uc(c[p>>2]|0,c[j>>2]|0,c[k>>2]|0);c[(c[p>>2]|0)+24>>2]=c[l>>
2];c[c[m>>2]>>2]=c[p>>2]}c[g>>2]=c[n>>2];p=c[g>>2]|0;i=q;return p|0}
function Wc(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;l=i;i=i+32|0;e=l+20|0;d=l+16|0;f=l+12|0;j=l+8|0;g=l+4|0;h=l;c[d
>>2]=a;c[f>>2]=b;c[j>>2]=0;if(!((c[d>>2]|0)!=0&(c[f>>2]|0)!=0)){c[e>
x3e;2]=c[j>>2];k=c[e>>2]|0;i=l;return k|0}c[g>>2]=(c[d>>2]|0)+28;c[h>>2]=(c[g
x3e;>2]|0)+(c[(c[d>>2]|0)+24>>2]<<2);while(1){if((c[g>>2]|0)>>>0>
;=(c[h>>2]|0)>>>0)break;b=(Kr(c[(c[c[c[g>>2]>>2]>>2]|0)+8>>2]|0
,c[f>>2]|0)|0)==0;d=c[g>>2]|0;if(b){k=6;break}c[g>>2]=d+4}if((k|0)==6)c[j>>2]=c[d>
x3e;2];c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|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;n=i;i=i+32|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g>>2]=a;c[h>
x3e;2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[l>>2]=c[l>>2];c[m>>2]=Yc(c[
g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;if((c[m>>2]&255|0)==2)c[m>
x3e;2]=Zc(c[g>>2]|0,c[h>>2]|0,0,c[j>>2]|0,c[k>>2]|0)|0;if((c[m>>2]&255|0)!=
2?(c[m>>2]&255|0)!=85:0){b=c[m>>2]|0;i=n;return b|0}if(!(c[c[l>>2]>>2]&4)){b=c
[m>>2]|0;i=n;return b|0}c[m>>2]=dd(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>
;2]|0,c[l>>2]|0)|0;b=c[m>>2]|0;i=n;return b|0}function Yc(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;q=i;i=i+160|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;l=q+12|0;o=q+32|0;n=q+8|0;m=q+4|0;p=q;c[h>>
;2]=a;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;if(!(c[j>>2]|0)){c[g>>2]=85;b=c[g>>
;2]|0;i=q;return b|0}c[n>>2]=Kc(c[j>>2]|0,0)|0;if((c[n>>2]|0)==0?(c[n>>2]=Rc(c[j>
x3e;2]|0,o,128)|0,(c[n>>2]|0)==0):0){if(((((((d[o>>0]|0|0)==0?(d[o+74>>0]|0|0)==0:0)?(d[o+82>
x3e;0]|0|0)==0:0)?d[o+1>>0]|0|0:0)?(d[o+1>>0]|0|0)<=33:0)?(d[o+63>>0]|0|0)==0:0)?(d[o+(2+(d[o
+1>>0]|0))>>0]|0|0)==0:0){c[m>>2]=(d[o+83>>0]|0)<<24|(d[o+84>>0]|0)
x3c;<16|(d[o+85>>0]|0)<<8|(d[o+86>>0]|0);c[p>>2]=128+((c[m>>2]|0)+127&
;-128);c[g>>2]=Zc(c[h>>2]|0,c[j>>2]|0,c[p>>2]|0,c[k>>2]|0,c[l>>2]|0)|
0;b=c[g>>2]|0;i=q;return b|0}c[g>>2]=2;b=c[g>>2]|0;i=q;return b|0}c[g>>2]=c[n>>
;2];b=c[g>>2]|0;i=q;return b|0}function Zc(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;t=i;i=i+64|0;g=t+48|0;h=t+44|0;j=t+40|0;u=t+36|0;k=t+32|0;l=t+28|0;r=t+24|0;o=t+20|0;q=t+16|0;s=t+12|0
;n=t+8|0;m=t+4|0;p=t;c[h>>2]=a;c[j>>2]=b;c[u>>2]=d;c[k>>2]=e;c[l>>2]=f;c[r>
;>2]=c[c[h>>2]>>2];c[o>>2]=_c(c[h>>2]|0,c[j>>2]|0,c[u>>2]|0,q,s
)|0;if(c[o>>2]|0){c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return u|0}c[o>>2]=$c(c[h>
;>2]|0,c[j>>2]|0,c[q>>2]|0,c[s>>2]|0,1347375956,n,m)|0;f=c[h>>2]|0;e=c[j>>
;2]|0;if(!(c[o>>2]|0)){c[o>>2]=bd(f,e,c[n>>2]|0,c[m>>2]|0,c[k>>2]|0,c[l>
x3e;2]|0)|0;Fb(c[r>>2]|0,c[n>>2]|0);c[n>>2]=0;if(!(c[o>>2]|0))c[c[c[l>>2]>
;>2]>>2]=1;c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return u|0}c[o>>2]=$c(f,e,c[q
x3e;>2]|0,c[s>>2]|0,1936092788,n,m)|0;if((c[o>>2]|0)==0?(c[p>>2]=(c[k>>2]|0)%(c[m
x3e;>2]|0)|0,c[o>>2]=cd(c[h>>2]|0,c[j>>2]|0,c[n>>2]|0,c[m>>2]|0,c[p>
x3e;2]|0,c[l>>2]|0)|0,Fb(c[r>>2]|0,c[n>>2]|0),c[n>>2]=0,(c[o>>2]|0)==0):0)c[c[
c[l>>2]>>2]>>2]=c[m>>2];c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return
u|0}function _c(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;x=
i;i=i+96|0;j=x+48|0;y=x+44|0;k=x+40|0;l=x+36|0;m=x+32|0;n=x+28|0;q=x+24|0;r=x+72|0;s=x+56|0;u=x+20|0;v=x+16|0;p=x+12|0;o=x+8|0;t
=x+4|0;w=x;c[y>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[y>>2]=
c[y>>2];c[q>>2]=Kc(c[k>>2]|0,c[l>>2]|0)|0;if(c[q>>2]|0){c[j>>2]=c[q
x3e;>2];y=c[j>>2]|0;i=x;return y|0}c[q>>2]=Rc(c[k>>2]|0,r,16)|0;if(c[q>>2]|0){c[j
x3e;>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}c[c[n>>2]>>2]=(c[l>>2]|0)+((d[
r>>0]|0)<<24|(d[r+1>>0]|0)<<16|(d[r+2>>0]|0)<<8|(d[r+3>>0]|
0));c[u>>2]=(c[l>>2]|0)+((d[r+4>>0]|0)<<24|(d[r+5>>0]|0)<<16|(d[r+6
x3e;>0]|0)<<8|(d[r+7>>0]|0));c[v>>2]=(d[r+8>>0]|0)<<24|(d[r+9>>
0]|0)<<16|(d[r+10>>0]|0)<<8|(d[r+11>>0]|0);if(((c[c[n>>2]>>2]|0)+(c[
v>>2]|0)|0)==(c[u>>2]|0)?(c[u>>2]|0)!=(c[l>>2]|0):0){c[q>>2]=Kc(c[k>>
;2]|0,c[u>>2]|0)|0;if(c[q>>2]|0){c[j>>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}a[
s+15>>0]=(d[r+15>>0]|0)+1;c[q>>2]=Rc(c[k>>2]|0,s,16)|0;if(c[q>>2]|0){c[j>
x3e;2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}c[p>>2]=1;c[o>>2]=1;c[t>>2]=0;while(
1){if((c[t>>2]|0)>=16)break;if(d[s+(c[t>>2]|0)>>0]|0|0)c[p>>2]=0;if((d[s+(c[t>
x3e;2]|0)>>0]|0|0)!=(d[r+(c[t>>2]|0)>>0]|0|0))c[o>>2]=0;c[t>>2]=(c[t>>
;2]|0)+1}if(!((c[p>>2]|0)!=0|(c[o>>2]|0)!=0)){c[j>>2]=2;y=c[j>>2]|0;i=x;return y|0}c[q
x3e;>2]=Qc(c[k>>2]|0,8)|0;c[w>>2]=(Pc(c[k>>2]|0,q)|0)&65535;if(c[q>>2]|0){c[j
x3e;>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}if((c[w>>2]|0)==-1){c[j>>2]=2;y=c[j>
;>2]|0;i=x;return y|0}c[q>>2]=Kc(c[k>>2]|0,(c[u>>2]|0)+(c[w>>2]|0)|0)|0;if(c[q>
;>2]|0){c[j>>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}else{c[c[m>>2]>>2]=(c[
u>>2]|0)+(c[w>>2]|0);c[j>>2]=0;y=c[j>>2]|0;i=x;return y|0}}c[j>>2]=2;y=c[j>
;>2]|0;i=x;return y|0}function $c(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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=i;i=i+80|0;o=C+72|0;D=C+68|0;p=C+64|0;q=C+60|0;r=C+56|0;k=C+52|0;s=C+48|0;
t=C+44|0;u=C+40|0;m=C+36|0;v=C+32|0;l=C+28|0;A=C+24|0;n=C+20|0;z=C+16|0;w=C+12|0;B=C+8|0;x=C+4|0;y=C;c[D>>2]=a;c[p>
;>2]=d;c[q>>2]=e;c[r>>2]=f;c[k>>2]=g;c[s>>2]=h;c[t>>2]=j;c[w>>2
]=c[c[D>>2]>>2];c[u>>2]=Kc(c[p>>2]|0,c[q>>2]|0)|0;if(c[u>>2]|0){c[o
x3e;>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[l>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if
(c[u>>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[l>>2]=(c[l>>
;2]|0)+1;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[l>>2]|0)){k=30;break}c[n>>2]=Oc(c[p
x3e;>2]|0,u)|0;if(c[u>>2]|0){k=10;break}c[A>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if(c[u>
x3e;2]|0){k=10;break}c[z>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if(c[u>>2]|0){k=10;break}if((c[n>
x3e;2]|0)==(c[k>>2]|0)){k=12;break}c[m>>2]=(c[m>>2]|0)+1}if((k|0)==10){c[o>>2]=c[u>
x3e;2];D=c[o>>2]|0;i=C;return D|0}else if((k|0)==12){c[c[t>>2]>>2]=(c[A>>2]|0)+1;c[z>
;>2]=(c[z>>2]|0)+(c[q>>2]|0);c[u>>2]=Kc(c[p>>2]|0,c[z>>2]|0)|0;if(c[u>
;>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[y>>2]=hc(c[w>>2]|0,8
,0,c[c[t>>2]>>2]|0,0,u)|0;if(c[u>>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;
i=C;return D|0}c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[c[t>>2]>>2]|0)){k=23;break}D=Pc
(c[p>>2]|0,u)|0;b[(c[y>>2]|0)+(c[v>>2]<<3)>>1]=D;if(c[u>>2]|0)break;
D=Qc(c[p>>2]|0,2)|0;c[u>>2]=D;if(D|0)break;c[B>>2]=Oc(c[p>>2]|0,u)|0;if(c[u>>2
]|0)break;D=Qc(c[p>>2]|0,4)|0;c[u>>2]=D;if(D|0)break;c[(c[y>>2]|0)+(c[v>>2]<<3
)+4>>2]=c[B>>2]&16777215;c[v>>2]=(c[v>>2]|0)+1}if((k|0)==23?(Bs(c[y>>2]|0
,c[c[t>>2]>>2]|0,8,102),c[x>>2]=hc(c[w>>2]|0,4,0,c[c[t>>2]>>2]|0,0,u
)|0,(c[u>>2]|0)==0):0){c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[c[t>>2]>>2]|
0))break;c[(c[x>>2]|0)+(c[v>>2]<<2)>>2]=(c[r>>2]|0)+(c[(c[y>>2]|0)+(
c[v>>2]<<3)+4>>2]|0);c[v>>2]=(c[v>>2]|0)+1}c[c[s>>2]>>2]=c
[x>>2];c[u>>2]=0}Fb(c[w>>2]|0,c[y>>2]|0);c[y>>2]=0;c[o>>2]=c[u>
x3e;2];D=c[o>>2]|0;i=C;return D|0}else if((k|0)==30){c[o>>2]=1;D=c[o>>2]|0;i=C;return D|0}return 0
}function ad(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=b;do if
((e[c[f>>2]>>1]|0|0)>=(e[c[g>>2]>>1]|0|0))if((e[c[f>>2]>>1]|0|0
)>(e[c[g>>2]>>1]|0|0)){c[d>>2]=1;break}else{c[d>>2]=0;break}else c[d>>2]=-
1;while(0);i=h;return c[d>>2]|0}function bd(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,C=0,D=0;D=i;i=i+80|0;j=D+72|0;k=D+68|0;l=D+64|0;m=D+60|0;n=D+56|0;o=D+52|
0;p=D+48|0;q=D+44|0;u=D+40|0;v=D+36|0;s=D+32|0;B=D+28|0;r=D+24|0;t=D+20|0;w=D+16|0;y=D+12|0;x=D+8|0;z=D+4|0;A=D;c[k>>2
]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;c[q>>2]=1;c[u
x3e;>2]=c[c[k>>2]>>2];if((c[o>>2]|0)==-1)c[o>>2]=0;if(c[o>>2]|0){c[j>
;>2]=c[q>>2];C=c[j>>2]|0;i=D;return C|0}c[w>>2]=0;c[s>>2]=0;while(1){if((c[s>
x3e;2]|0)>=(c[n>>2]|0)){C=10;break}c[q>>2]=Kc(c[l>>2]|0,c[(c[m>>2]|0)+(c[s>>
;2]<<2)>>2]|0)|0;if(c[q>>2]|0)break;c[A>>2]=Oc(c[l>>2]|0,q)|0;if(c[q>>
;2]|0)break;c[w>>2]=(c[w>>2]|0)+((c[A>>2]|0)+6);c[s>>2]=(c[s>>2]|0)+1}a:do if((
C|0)==10?(c[v>>2]=bc(c[u>>2]|0,(c[w>>2]|0)+2|0,q)|0,(c[q>>2]|0)==0):0){a[c[v>>
2]>>0]=-128;a[(c[v>>2]|0)+1>>0]=1;a[(c[v>>2]|0)+2>>0]=0;a[(c[v>>2]|0
)+3>>0]=0;a[(c[v>>2]|0)+4>>0]=0;a[(c[v>>2]|0)+5>>0]=0;c[y>>2]=6;c[x
x3e;>2]=2;c[t>>2]=0;c[B>>2]=1;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[n>>
;2]|0)){C=31;break}c[q>>2]=Kc(c[l>>2]|0,c[(c[m>>2]|0)+(c[s>>2]<<2)>>
2]|0)|0;if(c[q>>2]|0)break;c[z>>2]=Oc(c[l>>2]|0,q)|0;if(c[q>>2]|0)break a;c[r>>
;2]=(Pc(c[l>>2]|0,q)|0)&65535;if(c[q>>2]|0)break a;if(c[r>>2]>>8|0){if((c[z>
x3e;2]|0)>2)c[z>>2]=(c[z>>2]|0)-2;else c[z>>2]=0;if((c[r>>2]>>8|0)==(c[B
x3e;>2]|0))c[t>>2]=(c[t>>2]|0)+(c[z>>2]|0);else{if(((c[x>>2]|0)+3|0)>((c[w>
;>2]|0)+2|0))break;a[(c[v>>2]|0)+(c[x>>2]|0)>>0]=c[t>>2];a[(c[v>>2]|0)+((
c[x>>2]|0)+1)>>0]=c[t>>2]>>8;a[(c[v>>2]|0)+((c[x>>2]|0)+2)>>
;0]=c[t>>2]>>16;a[(c[v>>2]|0)+((c[x>>2]|0)+3)>>0]=c[t>>2]>>
;24;if((c[r>>2]>>8|0)==5){C=31;break}if(((c[y>>2]|0)+6|0)>((c[w>>2]|0)+2|0))break;d
=c[y>>2]|0;c[y>>2]=d+1;a[(c[v>>2]|0)+d>>0]=-128;c[B>>2]=c[r>>2]>
;>8;c[t>>2]=c[z>>2];d=c[B>>2]&255;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>
;>2]|0)+A>>0]=d;c[x>>2]=c[y>>2];A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>
;2]|0)+A>>0]=0;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>2]|0)+A>>0]=0;A=c[y>>
2]|0;c[y>>2]=A+1;a[(c[v>>2]|0)+A>>0]=0;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>
;2]|0)+A>>0]=0}c[q>>2]=1;if((c[y>>2]|0)>(c[w>>2]|0))break;if(((c[y>>2]|0)+(
c[z>>2]|0)|0)>(c[w>>2]|0))break;c[q>>2]=Rc(c[l>>2]|0,(c[v>>2]|0)+(c[y>
;>2]|0)|0,c[z>>2]|0)|0;if(c[q>>2]|0)break;c[y>>2]=(c[y>>2]|0)+(c[z>>2]|0)}
c[s>>2]=(c[s>>2]|0)+1}if(((C|0)==31?((c[y>>2]|0)+2|0)<=((c[w>>2]|0)+2|0):0)?(C=c[y
x3e;>2]|0,c[y>>2]=C+1,a[(c[v>>2]|0)+C>>0]=-128,C=c[y>>2]|0,c[y>>2]=C+1,a[(
c[v>>2]|0)+C>>0]=3,((c[x>>2]|0)+3|0)<=((c[w>>2]|0)+2|0)):0){a[(c[v>>2]|0)+(
c[x>>2]|0)>>0]=c[t>>2];a[(c[v>>2]|0)+((c[x>>2]|0)+1)>>0]=c[t>
x3e;2]>>8;a[(c[v>>2]|0)+((c[x>>2]|0)+2)>>0]=c[t>>2]>>16;a[(c[v>
x3e;2]|0)+((c[x>>2]|0)+3)>>0]=c[t>>2]>>24;c[j>>2]=Tc(c[k>>2]|0,c[v
x3e;>2]|0,c[y>>2]|0,c[o>>2]|0,10410,c[p>>2]|0)|0;C=c[j>>2]|0;i=D;return C|0}Fb(c[u
x3e;>2]|0,c[v>>2]|0);c[v>>2]=0}while(0);c[j>>2]=c[q>>2];C=c[j>>2]|0;i=D;return
C|0}function cd(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;w=i;i=i+64|0;o=w+52|0;p=w+48|0;h=w+44|0;j=w+40|0;k=w+36|0;l=w+32|0;q=w+28|0;n=w+24|0;v=w+20|0;r=w+16|0;m=w+12|0;u=w+8|0;t=w+4|
0;s=w;c[p>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[q>>2]=g;c[
n>>2]=c[c[p>>2]>>2];c[s>>2]=0;if((c[l>>2]|0)==-1)c[l>>2]=0;if((c[l
x3e;>2]|0)>=(c[k>>2]|0)){c[o>>2]=1;v=c[o>>2]|0;i=w;return v|0}c[m>>2]=c[(c[j
x3e;>2]|0)+(c[l>>2]<<2)>>2];c[r>>2]=Kc(c[h>>2]|0,c[m>>2]|0)|0;if
((c[r>>2]|0)==0?(c[u>>2]=Oc(c[h>>2]|0,r)|0,(c[r>>2]|0)==0):0){if((c[u>>2]|0)==-
1){c[o>>2]=1;v=c[o>>2]|0;i=w;return v|0}c[r>>2]=Lc(c[p>>2]|0,c[h>>2]|0,c[l>
;>2]|0,0,0,c[q>>2]|0)|0;if(c[r>>2]|0?(Kc(c[h>>2]|0,(c[m>>2]|0)+4|0)|0)==0:0){c[v>
;>2]=bc(c[n>>2]|0,c[u>>2]|0,r)|0;if(c[r>>2]|0){c[o>>2]=c[r>>2];v=c[o>
;>2]|0;i=w;return v|0}c[r>>2]=Rc(c[h>>2]|0,c[v>>2]|0,c[u>>2]|0)|0;if(!(c[r>>
;2]|0)){if((c[u>>2]|0)>4)h=($r(c[v>>2]|0,10416,4)|0)!=0^1;else h=0;c[t>>2]=h&1;c[r>
x3e;2]=Tc(c[p>>2]|0,c[v>>2]|0,c[u>>2]|0,c[s>>2]|0,c[t>>2]|0?11217:10489,c[q>
;>2]|0)|0}}}c[o>>2]=c[r>>2];v=c[o>>2]|0;i=w;return v|0}function dd(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;y=i;i=i+192|0;j=y+176|0;z=y+172|0;k=y+168
|0;l=y+164|0;m=y+160|0;t=y+156|0;o=y+152|0;r=y+148|0;q=y+112|0;u=y+76|0;p=y+40|0;s=y+181|0;w=y+180|0;n=y+8|0;v=y;c[j>>
2]=b;c[z>>2]=e;c[k>>2]=f;c[l>>2]=g;c[m>>2]=h;c[t>>2]=c[c[j>>2]>
x3e;2];c[o>>2]=2;a[w>>0]=0;c[v>>2]=0;ed(c[j>>2]|0,c[z>>2]|0,c[(c[m>>
2]|0)+12>>2]|0,q,u,p);c[r>>2]=0;while(1){if((c[r>>2]|0)>=9)break;a[s>>0]=rd(c[r>
;>2]|0)|0;if(!(d[s>>0]|0?(d[w>>0]|0)!=0:0))x=5;if((x|0)==5?(x=0,(c[p+(c[r>>2]<<2)
x3e;>2]|0)==0):0){c[n>>2]=4;if(c[q+(c[r>>2]<<2)>>2]|0)g=c[q+(c[r>>2]<
;<2)>>2]|0;else g=c[(c[m>>2]|0)+12>>2]|0;c[n+12>>2]=g;c[o>>2]=tc(c[j>
;>2]|0,n,v)|0;if((d[s>>0]|0)!=0&(c[o>>2]|0)==81)a[w>>0]=1;if(!(c[o>>2]|0)){c[o
>>2]=Zc(c[j>>2]|0,c[v>>2]|0,c[u+(c[r>>2]<<2)>>2]|0,c[k>>2]|
0,c[l>>2]|0)|0;vc(c[v>>2]|0,0);if(!(c[o>>2]|0))break;if(a[s>>0]|0)a[w>>0]=1}}c
[r>>2]=(c[r>>2]|0)+1}c[r>>2]=0;while(1){if((c[r>>2]|0)>=9)break;if(c[q+(c[r>
x3e;2]<<2)>>2]|0){Fb(c[t>>2]|0,c[q+(c[r>>2]<<2)>>2]|0);c[q+(c[r>
;>2]<<2)>>2]=0}c[r>>2]=(c[r>>2]|0)+1}if(!(c[o>>2]|0)){z=c[o>>2]|
0;i=y;return z|0}c[o>>2]=2;z=c[o>>2]|0;i=y;return z|0}function ed(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;p=i;i=i+32|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;m=p+8|0;n=p+4|0;o=p;c[h>>2
]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=0;while
(1){if((c[o>>2]|0)>=9)break;c[(c[l>>2]|0)+(c[o>>2]<<2)>>2]=0;if(c[j>
x3e;2]|0){b=Kc(c[j>>2]|0,0)|0;c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]=b}else c[(c[n>
;>2]|0)+(c[o>>2]<<2)>>2]=0;if(!(c[(c[n>>2]|0)+(c[o>>2]<<2)>
;>2]|0)){b=Za[c[96+(c[o>>2]<<3)>>2]&31](c[h>>2]|0,c[j>>2]|0,c[k>
;>2]|0,(c[l>>2]|0)+(c[o>>2]<<2)|0,(c[m>>2]|0)+(c[o>>2]<<2)|0)|0
;c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]=b}c[o>>2]=(c[o>>2]|0)+1}i=p;return}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,m=0,n=0,o=0;n=i;i=i+32|0;g=n+24|0;h=n+20|0;j=n+16|0;k=n+12|
0;o=n+8|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[o>>2]=e;c[l>>2]=f;c[m>
;>2]=333319;c[c[o>>2]>>2]=0;if(!(c[j>>2]|0)){c[g>>2]=81;o=c[g>>2]|0;i=n;return
o|0}else{c[g>>2]=gd(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[m>>2]|0,c[l>>2]|
0)|0;o=c[g>>2]|0;i=n;return o|0}return 0}function gd(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,v=0,w=0,x=0;v=i;i=i+64|0;r=v+52|0;x=v+48|0;m=v+44|0;w=v+40|0;j=v+36|0;s=v+32|0;k=v+28|0;u=v+24|0;l=v
+20|0;q=v+56|0;p=v+16|0;n=v+12|0;t=v+8|0;o=v+4|0;c[x>>2]=a;c[m>>2]=d;c[w>>2]=f;c[j>>2]=g
;c[s>>2]=h;c[l>>2]=0;c[o>>2]=0;c[v>>2]=2;c[x>>2]=c[x>>2];c[w>
x3e;2]=c[w>>2];c[l>>2]=c[l>>2];c[o>>2]=c[o>>2];c[k>>2]=Oc(c[m>
x3e;2]|0,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}if((c[k>>
;2]|0)!=(c[j>>2]|0)){c[r>>2]=2;x=c[r>>2]|0;i=v;return x|0}c[l>>2]=Oc(c[m>>2]|0
,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}c[u>>2]=Qc(c[m
x3e;>2]|0,16)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}b[q>
x3e;1]=Pc(c[m>>2]|0,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return
x|0}if(!(e[q>>1]|0)){c[r>>2]=2;x=c[r>>2]|0;i=v;return x|0}c[p>>2]=0;while(1){if((c[p>
;>2]|0)>=(e[q>>1]|0|0)){j=24;break}c[n>>2]=Oc(c[m>>2]|0,u)|0;if(c[u>>2]|0){j=16
;break}j=c[m>>2]|0;if((c[n>>2]|0)==2){c[t>>2]=Oc(j,u)|0;if((c[u>>2]|0)==0?(c[o>>
;2]=Oc(c[m>>2]|0,u)|0,(c[u>>2]|0)==0):0){j=20;break}}else{c[u>>2]=Qc(j,8)|0;if(c[u>>2]|0
){j=22;break}}c[p>>2]=(c[p>>2]|0)+1}if((j|0)==16){c[r>>2]=c[u>>2];x=c[r>>2]|0;
i=v;return x|0}else if((j|0)==20){c[c[s>>2]>>2]=c[t>>2];c[r>>2]=0;x=c[r>>2]|0;
i=v;return x|0}else if((j|0)==22){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}else if((j|0)==24){c[
r>>2]=2;x=c[r>>2]|0;i=v;return x|0}return 0}function hd(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;n=i;i=i+32|0;g=n+24|0;h=n+20|0;j=n+16|0;k=n+12|0;o=n+8|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>
;2]=b;c[k>>2]=d;c[o>>2]=e;c[l>>2]=f;c[m>>2]=333312;c[c[o>>2]>>2]=0;if
(!(c[j>>2]|0)){c[g>>2]=81;o=c[g>>2]|0;i=n;return o|0}else{c[g>>2]=gd(c[h>>2]|0
,c[j>>2]|0,c[k>>2]|0,c[m>>2]|0,c[l>>2]|0)|0;o=c[g>>2]|0;i=n;return o|0}return
0}function id(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;o=i;i=i+48|0;g=o+32|0;h=o+28|
0;q=o+24|0;p=o+20|0;j=o+16|0;k=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;c[p>>2]=d;c[j>
x3e;2]=e;c[k>>2]=f;c[q>>2]=c[q>>2];c[m>>2]=c[c[h>>2]>>2];c[n>
x3e;2]=jd(c[m>>2]|0,c[p>>2]|0,10421)|0;if(!(c[n>>2]|0)){c[g>>2]=64;q=c[g>>2]|0
;i=o;return q|0}c[l>>2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;if(c[l>>2]|0){Fb(c
[m>>2]|0,c[n>>2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c[n>>2];c[g>
x3e;2]=c[l>>2];q=c[g>>2]|0;i=o;return q|0}function jd(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;f=m+32|0;p=m+28|0;g=m+24|0;h=m+20|0;j=m+16|0;l=m+12|0;k=m+8|0;o=m+4|0;n=m;c[p>>2]=b;c[g>
;>2]=d;c[h>>2]=e;c[j>>2]=0;c[n>>2]=0;c[n>>2]=c[n>>2];d=cs(c[g>>
2]|0)|0;c[o>>2]=d+(cs(c[h>>2]|0)|0);c[j>>2]=bc(c[p>>2]|0,(c[o>>2]|0)+1|0,n)|0;
if(c[n>>2]|0){c[f>>2]=0;p=c[f>>2]|0;i=m;return p|0}c[l>>2]=xs(c[g>>2]|0,47)|0;
if(c[l>>2]|0){as(c[j>>2]|0,c[g>>2]|0,(c[l>>2]|0)-(c[g>>2]|0)+1|0)|0;a[(c[j>
;>2]|0)+((c[l>>2]|0)-(c[g>>2]|0)+1)>>0]=0;c[k>>2]=(c[l>>2]|0)+1}else{c[k
x3e;>2]=c[g>>2];a[c[j>>2]>>0]=0}zs(c[j>>2]|0,c[h>>2]|0)|0;zs(c[j>>
;2]|0,c[k>>2]|0)|0;c[f>>2]=c[j>>2];p=c[f>>2]|0;i=m;return p|0}function kd(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;m=i;i=i+64|0;e=m+60|0;f=m+56|0;g=m+52|0;h=m+48|0;n=m+16|0;l=m+8|0;k=m+4|0;j=m
;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=0;c[n>>2]=4;c[n+12>>2]=c[g>
;>2];c[j>>2]=tc(c[f>>2]|0,n,l)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];n=c[e>
;>2]|0;i=m;return n|0}else{c[j>>2]=fd(c[f>>2]|0,c[l>>2]|0,c[g>>2]|0,k,c[h>>
;2]|0)|0;vc(c[l>>2]|0,0);c[e>>2]=c[j>>2];n=c[e>>2]|0;i=m;return n|0}return 0}function ld
(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;q=i;i=i+48|0;m=q+36|0;r=q+32|0;s=q+28|
0;h=q+24|0;n=q+20|0;o=q+16|0;k=q+12|0;p=q+8|0;l=q+4|0;j=q;c[r>>2]=b;c[s>>2]=d;c[h>>2]=e;c[n>
x3e;2]=f;c[o>>2]=g;c[j>>2]=cs(c[h>>2]|0)|0;c[s>>2]=c[s>>2];c[l>>2]=c
[c[r>>2]>>2];if(((c[j>>2]|0)+18|0)>2147483647){c[m>>2]=10;s=c[m>>2]|0;i=q
;return s|0}c[p>>2]=bc(c[l>>2]|0,(c[j>>2]|0)+18|0,k)|0;if(c[k>>2]|0){c[m>>2]=c
[k>>2];s=c[m>>2]|0;i=q;return s|0}else{Ss(c[p>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;h=(
c[p>>2]|0)+(c[j>>2]|0)|0;j=10424;e=h+18|0;do{a[h>>0]=a[j>>0]|0;h=h+1|0;j=j+1|0}while((h|
0)<(e|0));c[c[n>>2]>>2]=c[p>>2];c[c[o>>2]>>2]=0;c[m>>2]=0;s=c[m
>>2]|0;i=q;return s|0}return 0}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,o=0,p=
0,q=0,r=0,s=0;q=i;i=i+48|0;h=q+36|0;r=q+32|0;s=q+28|0;j=q+24|0;k=q+20|0;l=q+16|0;n=q+12|0;p=q+8|0;o=q+4|0;m=q;c[r>>2]=
b;c[s>>2]=d;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[m>>2]=cs(c[j>>2]|0)|0;c[
s>>2]=c[s>>2];c[o>>2]=c[c[r>>2]>>2];if(((c[m>>2]|0)+6|0)>2147483647
){c[h>>2]=10;s=c[h>>2]|0;i=q;return s|0}c[p>>2]=bc(c[o>>2]|0,(c[m>>2]|0)+6|0,n
)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];s=c[h>>2]|0;i=q;return s|0}else{Ss(c[p>>2]|0
,c[j>>2]|0,c[m>>2]|0)|0;s=(c[p>>2]|0)+(c[m>>2]|0)|0;a[s>>0]=a[10442]|0;a[s+1
x3e;>0]=a[10443]|0;a[s+2>>0]=a[10444]|0;a[s+3>>0]=a[10445]|0;a[s+4>>0]=a[10446]|0;a[s+5>
x3e;0]=a[10447]|0;c[c[k>>2]>>2]=c[p>>2];c[c[l>>2]>>2]=0;c[h>>2]=0;s=
c[h>>2]|0;i=q;return s|0}return 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,m=0,n=0
,o=0,p=0;l=i;i=i+32|0;g=l+28|0;o=l+24|0;p=l+20|0;m=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;n=l;c[o>>2]=a;c[p>>2]=b;c
[m>>2]=d;c[h>>2]=e;c[j>>2]=f;c[p>>2]=c[p>>2];c[n>>2]=c[c[o>>
;2]>>2];c[k>>2]=jd(c[n>>2]|0,c[m>>2]|0,10448)|0;if(c[k>>2]|0){c[c[h>>
;2]>>2]=c[k>>2];c[c[j>>2]>>2]=0;c[g>>2]=0;p=c[g>>2]|0;i=l;return p|0
}else{c[g>>2]=64;p=c[g>>2]|0;i=l;return p|0}return 0}function od(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+32|0;g=l+28|0;o=l+24|0;p=l+20|0;m=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;n=l;c[o>>
;2]=a;c[p>>2]=b;c[m>>2]=d;c[h>>2]=e;c[j>>2]=f;c[p>>2]=c[p>>2];c[n>
;>2]=c[c[o>>2]>>2];c[k>>2]=jd(c[n>>2]|0,c[m>>2]|0,10462)|0;if(c[k>
x3e;2]|0){c[c[h>>2]>>2]=c[k>>2];c[c[j>>2]>>2]=0;c[g>>2]=0;p=c[g>
;>2]|0;i=l;return p|0}else{c[g>>2]=64;p=c[g>>2]|0;i=l;return p|0}return 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;o=i;i=i+48|0;g=o+32|0;h=o+28|0;q=o+24|0;p=o+20|0;j=o+16|0;k=
o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;c[p>>2]=d;c[j>>2]=e;c[k>>2]=f;c
[q>>2]=c[q>>2];c[m>>2]=c[c[h>>2]>>2];c[n>>2]=jd(c[m>>2]|0,
c[p>>2]|0,10473)|0;if(!(c[n>>2]|0)){c[g>>2]=64;q=c[g>>2]|0;i=o;return q|0}c[l>>
;2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;if(c[l>>2]|0){Fb(c[m>>2]|0,c[n>
x3e;2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c[n>>2];c[g>>2]=c[l>>2];q=c[g
>>2]|0;i=o;return q|0}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,p=0,q=0
;o=i;i=i+48|0;g=o+32|0;h=o+28|0;q=o+24|0;p=o+20|0;j=o+16|0;k=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;
c[p>>2]=d;c[j>>2]=e;c[k>>2]=f;c[q>>2]=c[q>>2];c[m>>2]=c[c[h>>
;2]>>2];c[n>>2]=jd(c[m>>2]|0,c[p>>2]|0,10475)|0;if(!(c[n>>2]|0)){c[g>>
;2]=64;q=c[g>>2]|0;i=o;return q|0}c[l>>2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;
if(c[l>>2]|0){Fb(c[m>>2]|0,c[n>>2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c
[n>>2];c[g>>2]=c[l>>2];q=c[g>>2]|0;i=o;return q|0}function rd(b){b=b|0;var d=0,e=0,f=0;e
=i;i=i+16|0;d=e+4|0;f=e;c[f>>2]=b;if(((sd(c[f>>2]|0)|0)+-3|0)>>>0<2){a[d>>0]=1
;f=a[d>>0]|0;i=e;return f|0}else{a[d>>0]=0;f=a[d>>0]|0;i=e;return f|0}return 0}function sd(a){a=a|
0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[d>>2]=a;if((c[d>>2]|0)>>>0>=9){c[b>>
;2]=-2;a=c[b>>2]|0;i=e;return a|0}else{c[b>>2]=c[96+(c[d>>2]<<3)+4>>2];a=c[b
x3e;>2]|0;i=e;return a|0}return 0}function td(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|0)+4>>2];c[(c[e>>2]|0)+4>>2
]=0;c[c[e>>2]>>2]=c[f>>2];a=c[e>>2]|0;if(c[f>>2]|0){c[(c[f>>2]|0)+4
x3e;>2]=a;e=c[e>>2]|0;f=c[d>>2]|0;f=f+4|0;c[f>>2]=e;i=g;return}else{c[c[d>>2]>
x3e;2]=a;e=c[e>>2]|0;f=c[d>>2]|0;f=f+4|0;c[f>>2]=e;i=g;return}}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;n=i;i=i+48|0;d=n+32|0;e=n+28|0;f=n+24|0;j=n+20|0;k=n+16|0;h=n+12|0;g=n+8|0;m=n+4|0;l=n;c[e
>>2]=a;c[f>>2]=b;c[m>>2]=0;c[l>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=35;m=c
[d>>2]|0;i=n;return m|0}if(!(c[f>>2]|0)){c[d>>2]=36;m=c[d>>2]|0;i=n;return m|0}if(!(c[(c
[e>>2]|0)+96>>2]|0)){c[d>>2]=34;m=c[d>>2]|0;i=n;return m|0}c[c[f>>2]>>
;2]=0;c[h>>2]=c[(c[e>>2]|0)+96>>2];c[g>>2]=c[(c[h>>2]|0)+20>>2];c[k
x3e;>2]=c[(c[e>>2]|0)+100>>2];c[m>>2]=bc(c[k>>2]|0,c[(c[g>>2]|0)+40>
x3e;2]|0,j)|0;if((c[j>>2]|0)==0?(c[l>>2]=bc(c[k>>2]|0,12,j)|0,(c[j>>2]|0)==0):0){c[c[m
x3e;>2]>>2]=c[e>>2];c[(c[m>>2]|0)+40>>2]=0;if(c[(c[g>>2]|0)+56>>
;2]|0)c[j>>2]=Ta[c[(c[g>>2]|0)+56>>2]&63](c[m>>2]|0)|0;if(!(c[j>>2]|0)){c
[c[f>>2]>>2]=c[m>>2];c[(c[l>>2]|0)+8>>2]=c[m>>2];td((c[e>>
2]|0)+108|0,c[l>>2]|0)}}if(c[j>>2]|0){Fb(c[k>>2]|0,c[l>>2]|0);c[l>>2]=0;Fb(c[k
>>2]|0,c[m>>2]|0);c[m>>2]=0}c[d>>2]=c[j>>2];m=c[d>>2]|0;i=n;return m
|0}function vd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;e=h+12|0;d=h+8|0;f=h+4|0;g=h;c[b>>2]=a;c[e
x3e;>2]=35;if(!(c[b>>2]|0)){g=c[e>>2]|0;i=h;return g|0}if(!(c[(c[b>>2]|0)+96>>2]|0)){
g=c[e>>2]|0;i=h;return g|0}a=(c[(c[b>>2]|0)+128>>2]|0)+60|0;c[a>>2]=(c[a>>2]|0
)+-1;if((c[(c[(c[b>>2]|0)+128>>2]|0)+60>>2]|0)>>>0>0){c[e>>2]=0;g=c[
e>>2]|0;i=h;return g|0}c[d>>2]=c[(c[b>>2]|0)+96>>2];c[f>>2]=c[(c[d>>
2]|0)+8>>2];c[g>>2]=Rb((c[d>>2]|0)+24|0,c[b>>2]|0)|0;if(!(c[g>>2]|0)){g=c[e>
;>2]|0;i=h;return g|0}wd((c[d>>2]|0)+24|0,c[g>>2]|0);Fb(c[f>>2]|0,c[g>>2]|0);c[g>
;>2]=0;xd(c[f>>2]|0,c[b>>2]|0,c[d>>2]|0);c[e>>2]=0;g=c[e>>2]|0;i=h;return
g|0}function wd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+12|0;h=g+8|0;d=g+4|0;f=g;c[e>>2]=a;c[h>
;>2]=b;c[d>>2]=c[c[h>>2]>>2];c[f>>2]=c[(c[h>>2]|0)+4>>2];a=c[f
x3e;>2]|0;if(c[d>>2]|0)c[(c[d>>2]|0)+4>>2]=a;else c[c[e>>2]>>2]=a;a=c[d
x3e;>2]|0;if(c[f>>2]|0){c[c[f>>2]>>2]=a;i=g;return}else{c[(c[e>>2]|0)+4>>
2]=a;i=g;return}}function xd(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[(c[g>>2]|0)+20>>2];if(c[(c[f>
x3e;2]|0)+116+4>>2]|0)Va[c[(c[f>>2]|0)+116+4>>2]&63](c[(c[f>>2]|0)+116>>2
]|0);while(1){d=c[f>>2]|0;if(!(c[(c[f>>2]|0)+84>>2]|0))break;Bc(c[d+84>>2]|0)}zd(d+108|0
,7,c[e>>2]|0,c[g>>2]|0);c[(c[f>>2]|0)+88>>2]=0;if(c[(c[f>>2]|0)+44+4>>
;2]|0)Va[c[(c[f>>2]|0)+44+4>>2]&63](c[f>>2]|0);Ic(c[f>>2]|0,c[e>>2]|0);if
(c[(c[h>>2]|0)+52>>2]|0)Va[c[(c[h>>2]|0)+52>>2]&63](c[f>>2]|0);vc(c[(c[f
x3e;>2]|0)+104>>2]|0,(c[(c[f>>2]|0)+8>>2]&1024|0)!=0&1);c[(c[f>>2]|0)+104
>>2]=0;if(!(c[(c[f>>2]|0)+128>>2]|0)){g=c[e>>2]|0;h=c[f>>2]|0;Fb(g,h);c[f>
;>2]=0;i=j;return}Fb(c[e>>2]|0,c[(c[f>>2]|0)+128>>2]|0);c[(c[f>>2]|0)+128>>
;2]=0;g=c[e>>2]|0;h=c[f>>2]|0;Fb(g,h);c[f>>2]=0;i=j;return}function yd(a,b,d){a=a|0;b=b|0;d=d|0;var
e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[(c[f>>
;2]|0)+4+4>>2]|0)Va[c[(c[f>>2]|0)+4+4>>2]&63](c[f>>2]|0);if(c[(c[(c[g>>2]|
0)+20>>2]|0)+60>>2]|0)Va[c[(c[(c[g>>2]|0)+20>>2]|0)+60>>2]&63](c[f>
x3e;2]|0);Fb(c[e>>2]|0,c[(c[f>>2]|0)+40>>2]|0);c[(c[f>>2]|0)+40>>2]=0;Fb(c[e
x3e;>2]|0,c[f>>2]|0);c[f>>2]=0;i=h;return}function zd(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;c[f>>2]=a;c[g>>2]=b
;c[h>>2]=d;c[j>>2]=e;c[k>>2]=c[c[f>>2]>>2];while(1){if(!(c[k>>2]|0))
break;c[m>>2]=c[(c[k>>2]|0)+4>>2];c[l>>2]=c[(c[k>>2]|0)+8>>2];if(c[g
>>2]|0)Ua[c[g>>2]&31](c[h>>2]|0,c[l>>2]|0,c[j>>2]|0);Fb(c[h>>2]|
0,c[k>>2]|0);c[k>>2]=0;c[k>>2]=c[m>>2]}c[c[f>>2]>>2]=0;c[(c[f>
x3e;2]|0)+4>>2]=0;i=n;return}function Ad(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;s=i;i=i+48|0;h=s+28|0;j=s+24|0;k=s+20|0;l=s+32|0;m=s+16|0;p=s+12|0;q=s+8|0;o=s+4|0;n=s;c[j>>2]=b;c[k>>2]=
e;a[l>>0]=f;c[m>>2]=g;if(!(c[(c[j>>2]|0)+8>>2]&2)){c[h>>2]=35;r=c[h>
x3e;2]|0;i=s;return r|0}if(c[c[k>>2]>>2]|0){c[h>>2]=7;r=c[h>>2]|0;i=s;return r|0}b=c[(c[
k>>2]|0)+4>>2]|0;if(c[(c[k>>2]|0)+12>>2]|0)b=((_(b,c[(c[k>>2]|0)+12>>
;2]|0)|0)+36|0)/72|0;c[q>>2]=b;b=c[(c[k>>2]|0)+8>>2]|0;if(c[(c[k>>2]|0)+16>>2]|
0)b=((_(b,c[(c[k>>2]|0)+16>>2]|0)|0)+36|0)/72|0;c[o>>2]=b;if(c[(c[k>>2]|0)+4>>
2]|0?!(c[(c[k>>2]|0)+8>>2]|0):0)c[o>>2]=c[q>>2];else r=12;if(((r|0)==12?(c[(c[k>>
;2]|0)+4>>2]|0)==0:0)?c[(c[k>>2]|0)+8>>2]|0:0)c[q>>2]=c[o>>2];c[q>>2
]=(c[q>>2]|0)+32&-64;c[o>>2]=(c[o>>2]|0)+32&-64;c[p>>2]=0;while(1){if((c[p>
;>2]|0)>=(c[(c[j>>2]|0)+28>>2]|0)){r=24;break}c[n>>2]=(c[(c[j>>2]|0)+32>
x3e;2]|0)+(c[p>>2]<<4);if((c[o>>2]|0)==((c[(c[n>>2]|0)+12>>2]|0)+32&-64|0
)){if((c[q>>2]|0)==((c[(c[n>>2]|0)+8>>2]|0)+32&-64|0))break;if(d[l>>0]|0|0)break}c[
p>>2]=(c[p>>2]|0)+1}if((r|0)==24){c[h>>2]=23;r=c[h>>2]|0;i=s;return r|0}if(c[m>>
;2]|0)c[c[m>>2]>>2]=c[p>>2];c[h>>2]=0;r=c[h>>2]|0;i=s;return r|0}function Bd(a
,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c
[(c[d>>2]|0)+4>>2];if((c[(c[d>>2]|0)+12>>2]|0)<0){if((c[f>>2]|0)<(c[(
c[d>>2]|0)+12>>2]|0))c[f>>2]=c[(c[d>>2]|0)+12>>2]}else if((c[(c[d>>2
]|0)+12>>2]|0)>0)c[f>>2]=(c[f>>2]|0)-(c[(c[d>>2]|0)+12>>2]|0);if(!(c[e>
;>2]|0))c[e>>2]=((c[f>>2]|0)*12|0)/10|0;c[(c[d>>2]|0)+20>>2]=(c[(c[d>>2]|
0)+8>>2]|0)-((c[(c[d>>2]|0)+16>>2]|0)/2|0);c[(c[d>>2]|0)+24>>2]=((c[e>>
;2]|0)-(c[f>>2]|0)|0)/2|0;c[(c[d>>2]|0)+28>>2]=c[e>>2];i=g;return}function Cd(a,d){a=a|0
;d=d|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;f=j+12|0;k=j+8|0;h=j+4|0;g=j;c[f>>2]=a;c[k>>2]=d;c[h>>
2]=(c[(c[f>>2]|0)+88>>2]|0)+12;c[g>>2]=(c[(c[f>>2]|0)+32>>2]|0)+(c[k>>
;2]<<4);b[c[h>>2]>>1]=(c[(c[g>>2]|0)+8>>2]|0)+32>>6;b[(c[h>>
;2]|0)+2>>1]=(c[(c[g>>2]|0)+12>>2]|0)+32>>6;if(c[(c[f>>2]|0)+8>>2]
x26;1|0){k=Vb(c[(c[g>>2]|0)+8>>2]|0,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[h>>2]|0)+4
x3e;>2]=k;k=Vb(c[(c[g>>2]|0)+12>>2]|0,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[h>>2
]|0)+8>>2]=k;Dd(c[f>>2]|0,c[h>>2]|0);i=j;return}else{c[(c[h>>2]|0)+4>>2]=65536
;c[(c[h>>2]|0)+8>>2]=65536;c[(c[h>>2]|0)+12>>2]=c[(c[g>>2]|0)+12>>2];
c[(c[h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+20>>2]=b[c[g>>2]>>1]<<
;6;c[(c[h>>2]|0)+24>>2]=c[(c[g>>2]|0)+8>>2];i=j;return}}function Dd(a,d){a=a|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]=a;c[f>>2]=d;d=(Mb(b[(c[g>>2]|0)+70>>1]|0,c
[(c[f>>2]|0)+8>>2]|0)|0)+63&-64;c[(c[f>>2]|0)+12>>2]=d;d=(Mb(b[(c[g>>2]|0
)+72>>1]|0,c[(c[f>>2]|0)+8>>2]|0)|0)&-64;c[(c[f>>2]|0)+16>>2]=d;d=(Mb(b[(
c[g>>2]|0)+74>>1]|0,c[(c[f>>2]|0)+8>>2]|0)|0)+32&-64;c[(c[f>>2]|0)+20>
;>2]=d;d=(Mb(b[(c[g>>2]|0)+76>>1]|0,c[(c[f>>2]|0)+4>>2]|0)|0)+32&-64;c[(c[f>
;>2]|0)+24>>2]=d;i=e;return}function Ed(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;o=i;i=i+32|0;j=o
+24|0;k=o+20|0;l=o+16|0;h=o+12|0;g=o+8|0;n=o+4|0;m=o;c[j>>2]=a;c[k>>2]=d;c[l>>2]=(c[(c[j>>
;2]|0)+88>>2]|0)+12;if(!(c[(c[j>>2]|0)+8>>2]&1)){n=c[l>>2]|0;c[n>>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[(c[l>>2]|0)+4>>2]=65536;c[(c[l>>2]|0)+8>>2]=65536;i=o;return}c[h>>2]=0
;c[g>>2]=0;c[n>>2]=0;c[m>>2]=0;a:do switch(c[c[k>>2]>>2]|0){case 0:{f=e[(c[j
x3e;>2]|0)+68>>1]|0;c[g>>2]=f;c[h>>2]=f;f=11;break}case 1:{f=(b[(c[j>>2]|0)+70>
;>1]|0)-(b[(c[j>>2]|0)+72>>1]|0)|0;c[g>>2]=f;c[h>>2]=f;f=11;break}case 2:{c[h>
x3e;2]=(c[(c[j>>2]|0)+52+8>>2]|0)-(c[(c[j>>2]|0)+52>>2]|0);c[g>>2]=(c[(c[j>
;>2]|0)+52+12>>2]|0)-(c[(c[j>>2]|0)+52+4>>2]|0);f=11;break}case 3:{c[h>>2]=b[(c[j
x3e;>2]|0)+76>>1];c[g>>2]=(b[(c[j>>2]|0)+70>>1]|0)-(b[(c[j>>2]|0)+72>
;>1]|0);f=11;break}case 4:{c[(c[l>>2]|0)+4>>2]=c[(c[k>>2]|0)+4>>2];c[(c[l>>
;2]|0)+8>>2]=c[(c[k>>2]|0)+8>>2];a=c[(c[l>>2]|0)+8>>2]|0;if(!(c[(c[l>>
;2]|0)+4>>2]|0)){c[(c[l>>2]|0)+4>>2]=a;break a}if(!a)c[(c[l>>2]|0)+8>>2]=c[(c[
l>>2]|0)+4>>2];break}default:f=11}while(0);do if((f|0)==11){if((c[h>>2]|0)<0)c[h>>2
]=0-(c[h>>2]|0);if((c[g>>2]|0)<0)c[g>>2]=0-(c[g>>2]|0);a=c[(c[k>>2]|0)+4
x3e;>2]|0;if(c[(c[k>>2]|0)+12>>2]|0)a=((_(a,c[(c[k>>2]|0)+12>>2]|0)|0)+36|0)/72|0;c
[n>>2]=a;a=c[(c[k>>2]|0)+8>>2]|0;if(c[(c[k>>2]|0)+16>>2]|0)a=((_(a,c[(c[k>
;>2]|0)+16>>2]|0)|0)+36|0)/72|0;c[m>>2]=a;if(!(c[(c[k>>2]|0)+4>>2]|0)){f=Vb(c[m>
;>2]|0,c[g>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=f;c[(c[l>>2]|0)+4>>2]=f;c[n>
x3e;2]=xb(c[m>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;break}f=Vb(c[n>>2]|0,c[h>>2]|0)|0;c
[(c[l>>2]|0)+4>>2]=f;if(!(c[(c[k>>2]|0)+8>>2]|0)){c[(c[l>>2]|0)+8>>2
]=c[(c[l>>2]|0)+4>>2];c[m>>2]=xb(c[n>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;break
}h=Vb(c[m>>2]|0,c[g>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=h;if((c[c[k>>2]>>2]|
0)==3){a=c[l>>2]|0;if((c[(c[l>>2]|0)+8>>2]|0)>(c[(c[l>>2]|0)+4>>2]|0)){c[(
c[l>>2]|0)+8>>2]=c[a+4>>2];break}else{c[(c[l>>2]|0)+4>>2]=c[a+8>>2];
break}}}while(0);if(c[c[k>>2]>>2]|0){c[n>>2]=Mb(e[(c[j>>2]|0)+68>>1]|0,c[(c[l
x3e;>2]|0)+4>>2]|0)|0;c[m>>2]=Mb(e[(c[j>>2]|0)+68>>1]|0,c[(c[l>>2]|0)+8
x3e;>2]|0)|0}b[c[l>>2]>>1]=(c[n>>2]|0)+32>>6;b[(c[l>>2]|0)+2>>1
]=(c[m>>2]|0)+32>>6;Dd(c[j>>2]|0,c[l>>2]|0);i=o;return}function Fd(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0?c[(
c[e>>2]|0)+8>>2]&2|0:0){if((c[f>>2]|0)>=0?(c[f>>2]|0)<(c[(c[e>>
2]|0)+28>>2]|0):0){c[g>>2]=c[(c[(c[e>>2]|0)+96>>2]|0)+20>>2];if(c[(c[g>
x3e;2]|0)+100>>2]|0){c[d>>2]=Ya[c[(c[g>>2]|0)+100>>2]&127](c[(c[e>>2]|0)+
88>>2]|0,c[f>>2]|0)|0;b=c[d>>2]|0;i=h;return b|0}else{Cd(c[e>>2]|0,c[f>>2]|0);
c[d>>2]=0;b=c[d>>2]|0;i=h;return b|0}}c[d>>2]=6;b=c[d>>2]|0;i=h;return b|0}c[d>>
;2]=35;b=c[d>>2]|0;i=h;return b|0}function Gd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e
=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=35;j=c
[d>>2]|0;i=k;return j|0}if(((c[f>>2]|0?(c[(c[f>>2]|0)+4>>2]|0)>=0:0)?(c[(c[f>
x3e;2]|0)+8>>2]|0)>=0:0)?(c[c[f>>2]>>2]|0)>>>0<5:0){c[g>>2]=c[(
c[(c[e>>2]|0)+96>>2]|0)+20>>2];if(c[(c[g>>2]|0)+96>>2]|0){c[d>>2]=Ya
[c[(c[g>>2]|0)+96>>2]&127](c[(c[e>>2]|0)+88>>2]|0,c[f>>2]|0)|0;j=c[d>
;>2]|0;i=k;return j|0}if((c[(c[e>>2]|0)+8>>2]&1|0)==0?c[(c[e>>2]|0)+8>>2]&
;2|0:0){c[h>>2]=Ad(c[e>>2]|0,c[f>>2]|0,0,j)|0;if(c[h>>2]|0){c[d>>2]=c[h>
x3e;2];j=c[d>>2]|0;i=k;return j|0}else{c[d>>2]=Fd(c[e>>2]|0,c[j>>2]|0)|0;j=c[d>>
;2]|0;i=k;return j|0}}Ed(c[e>>2]|0,c[f>>2]|0);c[d>>2]=0;j=c[d>>2]|0;i=k;return j|0}c[d
x3e;>2]=6;j=c[d>>2]|0;i=k;return j|0}function Hd(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;n=i;i=i+48|0;g=n+36|0;h=n+32|0;j=n+28|0;k=n+24|0;l=n+20|0;m=n;c[g>>2]=a;c[h>>2]=b;c[j>>2]=
d;c[k>>2]=e;c[l>>2]=f;d=c[j>>2]|0;if(c[h>>2]|0){if(!d)c[j>>2]=c[h>>2
]}else c[h>>2]=d;d=c[l>>2]|0;if(c[k>>2]|0){if(!d)c[l>>2]=c[k>>2]}else c[k>
;>2]=d;if((c[h>>2]|0)<64)c[h>>2]=64;if((c[j>>2]|0)<64)c[j>>2]=64;if(!(c[k
>>2]|0)){c[l>>2]=72;c[k>>2]=72}c[m>>2]=0;c[m+4>>2]=c[h>>2];c[m+8>
;>2]=c[j>>2];c[m+12>>2]=c[k>>2];c[m+16>>2]=c[l>>2];m=Gd(c[g>>2]|
0,m)|0;i=n;return m|0}function Id(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+16|0;g=j+12|0;d=j+8|0;h=j+4|0;e=
j;c[g>>2]=a;c[d>>2]=b;if(!(c[g>>2]|0)){c[f>>2]=35;h=c[f>>2]|0;i=j;return h|0}if
(!(c[d>>2]|0)){c[f>>2]=6;h=c[f>>2]|0;i=j;return h|0}b=c[g>>2]|0;if((c[d>>2]|0)==
1970170211){c[f>>2]=Hc(b)|0;h=c[f>>2]|0;i=j;return h|0}c[h>>2]=c[b+40>>2];if(!(c[h>
x3e;2]|0)){c[f>>2]=38;h=c[f>>2]|0;i=j;return h|0}c[e>>2]=(c[h>>2]|0)+(c[(c[g>>
2]|0)+36>>2]<<2);while(1){if((c[h>>2]|0)>>>0>=(c[e>>2]|0)>>
;>0){b=15;break}if((c[(c[c[h>>2]>>2]|0)+4>>2]|0)==(c[d>>2]|0)?(((c[h>>2]|
0)-(c[(c[g>>2]|0)+40>>2]|0)|0)/4|0|0)<=15:0){b=13;break}c[h>>2]=(c[h>>2]|0)+4}if((b
|0)==13){c[(c[g>>2]|0)+92>>2]=c[c[h>>2]>>2];c[f>>2]=0;h=c[f>>2]|0;i=
j;return h|0}else if((b|0)==15){c[f>>2]=6;h=c[f>>2]|0;i=j;return h|0}return 0}function Jd(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+16|0;g=j+12|0;d=j+8|0;h=j+4|0;e=j;c[g>>2]=a;c[d>>2]=b;if(!(c[g>
;>2]|0)){c[f>>2]=35;h=c[f>>2]|0;i=j;return h|0}c[h>>2]=c[(c[g>>2]|0)+40>>
2];if(!(c[h>>2]|0)){c[f>>2]=38;h=c[f>>2]|0;i=j;return h|0}if((Kd(c[d>>2]|0)|0)==14){c[f
x3e;>2]=6;h=c[f>>2]|0;i=j;return h|0}c[e>>2]=(c[h>>2]|0)+(c[(c[g>>2]|0)+36>>
;2]<<2);while(1){if((c[h>>2]|0)>>>0>=(c[e>>2]|0)>>>0){d=13;break
}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)?(((c[h>>2]|0)-(c[(c[g>>2]|0)+40>>
2]|0)|0)/4|0|0)<=15:0){d=11;break}c[h>>2]=(c[h>>2]|0)+4}if((d|0)==11){c[(c[g>>2]|0)+92>
x3e;2]=c[c[h>>2]>>2];c[f>>2]=0;h=c[f>>2]|0;i=j;return h|0}else if((d|0)==13){c[f>
x3e;2]=6;h=c[f>>2]|0;i=j;return h|0}return 0}function Kd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;b=k
+28|0;d=k+24|0;j=k+20|0;g=k+16|0;f=k+8|0;h=k+4|0;e=k;c[d>>2]=a;if(c[d>>2]|0?c[c[d>>2]>>2
]|0:0){c[g>>2]=c[c[d>>2]>>2];c[h>>2]=c[(c[g>>2]|0)+96>>2];c[e>
x3e;2]=0;if(c[(c[c[h>>2]>>2]|0)+32>>2]|0)c[e>>2]=Ya[c[(c[c[h>>2]>>2]|
0)+32>>2]&127](c[h>>2]|0,11426)|0;c[j>>2]=c[e>>2];if(!(c[j>>2]|0)){c[b>
;>2]=-1;j=c[b>>2]|0;i=k;return j|0}if(Ya[c[c[j>>2]>>2]&127](c[d>>2]|0,f)|0){c[
b>>2]=-1;j=c[b>>2]|0;i=k;return j|0}else{c[b>>2]=c[f+4>>2];j=c[b>>2]|0;i=k;return
j|0}}c[b>>2]=-1;j=c[b>>2]|0;i=k;return j|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,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;f=q+32|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;l=q;c[g>>
;2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=0;if(!((c[g>>2]|0)==0|(c[j>
x3e;2]|0)==0)?c[c[j>>2]>>2]|0:0){c[n>>2]=c[c[j>>2]>>2];c[o>>2]=c[(c[
n>>2]|0)+100>>2];c[l>>2]=bc(c[o>>2]|0,c[c[g>>2]>>2]|0,m)|0;do if(!(c
[m>>2]|0)){b=c[l>>2]|0;a=c[j>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4
x3e;>2];c[b+8>>2]=c[a+8>>2];c[(c[l>>2]|0)+12>>2]=c[g>>2];if(!(c[(c[g>
;>2]|0)+4>>2]|0?(c[m>>2]=Ya[c[(c[g>>2]|0)+4>>2]&127](c[l>>2]|0,c[h
x3e;>2]|0)|0,(c[m>>2]|0)!=0):0))p=7;if((p|0)==7?(p=hc(c[o>>2]|0,4,c[(c[n>>2]|0)+36>>
;2]|0,(c[(c[n>>2]|0)+36>>2]|0)+1|0,c[(c[n>>2]|0)+40>>2]|0,m)|0,c[(c[n>>2]|0)+40
>>2]=p,(c[m>>2]|0)==0):0){o=c[l>>2]|0;b=(c[n>>2]|0)+36|0;p=c[b>>2]|0;c[b>
x3e;2]=p+1;c[(c[(c[n>>2]|0)+40>>2]|0)+(p<<2)>>2]=o;break}Jc(c[l>>2]|0);c[l>
;>2]=0}while(0);if(c[k>>2]|0)c[c[k>>2]>>2]=c[l>>2];c[f>>2]=c[m>>
;2];p=c[f>>2]|0;i=q;return p|0}c[f>>2]=6;p=c[f>>2]|0;i=q;return p|0}function Md(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;m=i;i=i+32|0;e=m+24|0;f=m+20|0;g=m+16|0;l=m+12|0;k=m+8|0;j=m+4|0;h=m;c[e>>2
]=a;c[f>>2]=b;c[g>>2]=d;c[l>>2]=0;c[k>>2]=0;if((c[e>>2]|0?c[(c[e>>2]|
0)+92>>2]|0:0)?c[(c[e>>2]|0)+16>>2]|0:0){c[j>>2]=c[f>>2];c[h>>2]=c[(
c[e>>2]|0)+92>>2];do c[k>>2]=Ya[c[(c[(c[h>>2]|0)+12>>2]|0)+16>>2]&
;127](c[h>>2]|0,j)|0;while((c[k>>2]|0)>>>0>=(c[(c[e>>2]|0)+16>>2]|0)
x3e;>>0);c[l>>2]=(c[k>>2]|0)==0?0:c[j>>2]|0}if(!(c[g>>2]|0)){l=c[l>>
2]|0;i=m;return l|0}c[c[g>>2]>>2]=c[k>>2];l=c[l>>2]|0;i=m;return l|0}function Nd(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;p=i;i=i+48|0;d=p+36|0;e=p+32|0;f=p+28|0;j=p+24|0;k=p+20|0;l=p+16|0
;m=p+12|0;g=p+8|0;h=p+4|0;n=p;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=33;o=c[d>
;>2]|0;i=p;return o|0}if(!(c[f>>2]|0)){c[d>>2]=6;o=c[d>>2]|0;i=p;return o|0}if((c[(c[f>
x3e;2]|0)+16>>2]|0)>131076){c[d>>2]=4;o=c[d>>2]|0;i=p;return o|0}c[m>>2]=0;while(1){
if((c[m>>2]|0)>>>0>=(c[(c[e>>2]|0)+24>>2]|0)>>>0)break;c[l>
;>2]=c[(c[e>>2]|0)+28+(c[m>>2]<<2)>>2];if(!(Kr(c[(c[c[l>>2]>>2]|
0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0)){o=10;break}c[m>>2]=(c[m>>2]|0)+1}do if((
o|0)==10){if((c[(c[f>>2]|0)+12>>2]|0)>(c[(c[c[l>>2]>>2]|0)+12>>2]|0)){Od(
c[e>>2]|0,c[l>>2]|0)|0;break}c[d>>2]=5;o=c[d>>2]|0;i=p;return o|0}while(0);c[k>>
;2]=c[c[e>>2]>>2];c[j>>2]=0;a:do if((c[(c[e>>2]|0)+24>>2]|0)>>>
0<32){c[l>>2]=bc(c[k>>2]|0,c[(c[f>>2]|0)+4>>2]|0,j)|0;if(!(c[j>>2]|0)){c[(
c[l>>2]|0)+4>>2]=c[e>>2];c[(c[l>>2]|0)+8>>2]=c[k>>2];c[c[l>>
;2]>>2]=c[f>>2];if(!(c[c[c[l>>2]>>2]>>2]&2|0?(c[j>>2]=Td(c[l>
;>2]|0)|0,(c[j>>2]|0)!=0):0))o=19;do if((o|0)==19){if(c[c[c[l>>2]>>2]>>2]&4|0)
c[(c[e>>2]|0)+168>>2]=c[l>>2];if((c[c[c[l>>2]>>2]>>2]&1|0?(c[g
x3e;>2]=c[l>>2],c[(c[g>>2]|0)+20>>2]=c[c[l>>2]>>2],(c[c[c[g>>2]
x3e;>2]>>2]&512|0)==0):0)?(c[j>>2]=ac(c[k>>2]|0,(c[g>>2]|0)+36|0)|0,c[j>
x3e;2]|0):0)break;if(c[(c[f>>2]|0)+24>>2]|0?(c[j>>2]=Ta[c[(c[f>>2]|0)+24>>2]
x26;63](c[l>>2]|0)|0,c[j>>2]|0):0)break;n=c[l>>2]|0;m=(c[e>>2]|0)+24|0;o=c[m>>
2]|0;c[m>>2]=o+1;c[(c[e>>2]|0)+28+(o<<2)>>2]=n;break a}while(0);if(c[c[c[l>>2]
x3e;>2]>>2]&1|0?(c[h>>2]=c[l>>2],(c[c[c[h>>2]>>2]>>2]&
;512|0)==0):0)fc(c[(c[h>>2]|0)+36>>2]|0);if((c[c[c[l>>2]>>2]>>2]&2|0?(c[n
>>2]=c[l>>2],(c[(c[(c[n>>2]|0)+20>>2]|0)+36>>2]|0)==1869968492):0)?c[(c[n>
;>2]|0)+60>>2]|0:0)Va[c[(c[(c[(c[n>>2]|0)+20>>2]|0)+56>>2]|0)+20>>2]&
;63](c[(c[n>>2]|0)+60>>2]|0);Fb(c[k>>2]|0,c[l>>2]|0);c[l>>2]=0}}else c[j>
x3e;2]=48;while(0);c[d>>2]=c[j>>2];o=c[d>>2]|0;i=p;return o|0}function Od(a,b){a=a|0;b=b|0;var d=0
,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;if(!(c[e>
x3e;2]|0)){c[d>>2]=33;b=c[d>>2]|0;i=j;return b|0}a:do if(c[f>>2]|0){c[g>>2]=(c[e>
x3e;2]|0)+28;c[h>>2]=(c[g>>2]|0)+(c[(c[e>>2]|0)+24>>2]<<2);while(1){if((c[g>
;>2]|0)>>>0>=(c[h>>2]|0)>>>0)break a;if((c[c[g>>2]>>2]|0)==(
c[f>>2]|0))break;c[g>>2]=(c[g>>2]|0)+4}b=(c[e>>2]|0)+24|0;c[b>>2]=(c[b>
x3e;2]|0)+-1;c[h>>2]=(c[h>>2]|0)+-4;while(1){if((c[g>>2]|0)>>>0>=(c[h>>
;2]|0)>>>0)break;c[c[g>>2]>>2]=c[(c[g>>2]|0)+4>>2];c[g>>2]=(c[g
>>2]|0)+4}c[c[h>>2]>>2]=0;Pd(c[f>>2]|0);c[d>>2]=0;b=c[d>>2]|0;i=j;return
b|0}while(0);c[d>>2]=34;b=c[d>>2]|0;i=j;return b|0}function Pd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|
0;b=g+12|0;f=g+8|0;d=g+4|0;e=g;c[b>>2]=a;c[f>>2]=c[(c[b>>2]|0)+8>>2];c[d>>2]=c
[c[b>>2]>>2];c[e>>2]=c[(c[b>>2]|0)+4>>2];if(c[(c[b>>2]|0)+12+4>
x3e;2]|0)Va[c[(c[b>>2]|0)+12+4>>2]&63](c[b>>2]|0);if(c[e>>2]|0?(c[(c[e>>2
]|0)+168>>2]|0)==(c[b>>2]|0):0)c[(c[e>>2]|0)+168>>2]=0;if(c[c[c[b>>2]>>
;2]>>2]&2|0)Qd(c[b>>2]|0);if(c[c[c[b>>2]>>2]>>2]&1|0)Sd(c[b>>
;2]|0);if(!(c[(c[d>>2]|0)+28>>2]|0)){f=c[f>>2]|0;a=c[b>>2]|0;Fb(f,a);c[b>>2]=0
;i=g;return}Va[c[(c[d>>2]|0)+28>>2]&63](c[b>>2]|0);f=c[f>>2]|0;a=c[b>>2]|
0;Fb(f,a);c[b>>2]=0;i=g;return}function Qd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0
;f=h+4|0;g=h;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+4>>2];c[e>>2]=c[c[d>>2]
x3e;>2];c[f>>2]=Rb((c[d>>2]|0)+156|0,c[b>>2]|0)|0;if(!(c[f>>2]|0)){i=h;return}c[g
x3e;>2]=c[b>>2];if((c[(c[(c[g>>2]|0)+20>>2]|0)+36>>2]|0)==1869968492?c[(c[g>
x3e;2]|0)+60>>2]|0:0)Va[c[(c[(c[(c[g>>2]|0)+20>>2]|0)+56>>2]|0)+20>>2]&63
](c[(c[g>>2]|0)+60>>2]|0);wd((c[d>>2]|0)+156|0,c[f>>2]|0);Fb(c[e>>2]|0,c[f>
;>2]|0);c[f>>2]=0;Rd(c[d>>2]|0);i=h;return}function Rd(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]=Jb(c[d>>2]|0,1869968492,0)|0;c[(c[d>>2]|0)+164>>2]=c[e>
;>2];i=b;return}function Sd(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;zd((c[b>>2]|0)+24|0,8,c[(c[
b>>2]|0)+8>>2]|0,c[b>>2]|0);if(c[c[c[b>>2]>>2]>>2]&512|0){i=d;return
}fc(c[(c[b>>2]|0)+36>>2]|0);i=d;return}function Td(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+
32|0;b=l+24|0;f=l+20|0;g=l+16|0;e=l+12|0;h=l+8|0;j=l+4|0;d=l;c[b>>2]=a;c[f>>2]=c[(c[b>>2]|0)+4>
;>2];c[g>>2]=c[c[f>>2]>>2];c[h>>2]=0;c[h>>2]=bc(c[g>>2]|0,12,e)|
0;if(c[e>>2]|0){k=c[e>>2]|0;i=l;return k|0}c[j>>2]=c[b>>2];c[d>>2]=c[c[b>
x3e;2]>>2];c[(c[j>>2]|0)+20>>2]=c[d>>2];c[(c[j>>2]|0)+24>>2]=c[(c[d
x3e;>2]|0)+36>>2];if((c[(c[d>>2]|0)+36>>2]|0)==1869968492?c[(c[(c[d>>2]|0)+56>
x3e;2]|0)+4>>2]|0:0){c[e>>2]=Ya[c[(c[(c[d>>2]|0)+56>>2]|0)+4>>2]&127](c[g
>>2]|0,(c[j>>2]|0)+60|0)|0;if(!(c[e>>2]|0)){c[(c[j>>2]|0)+64>>2]=c[(c[(c[d>
;>2]|0)+56>>2]|0)+16>>2];c[(c[j>>2]|0)+68>>2]=c[(c[d>>2]|0)+40>>
;2];k=6}}else k=6;if((k|0)==6){c[(c[h>>2]|0)+8>>2]=c[b>>2];td((c[f>>2]|0)+156|0,c[h>
;>2]|0);Rd(c[f>>2]|0)}if(!(c[e>>2]|0)){k=c[e>>2]|0;i=l;return k|0}Fb(c[g>>2]|0,c[h
x3e;>2]|0);c[h>>2]=0;k=c[e>>2]|0;i=l;return k|0}function Ud(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]=Wc(c[g>>2]|0,c[f>>2]|0)|
0;if(!(c[d>>2]|0)){g=0;i=e;return g|0}g=c[(c[c[d>>2]>>2]|0)+20>>2]|0;i=e;return g|0}function
Vd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;j=k+12|0;g=k+8|0;f=k+4|0;h=k;c[d>>
2]=a;c[e>>2]=b;c[j>>2]=0;if(!(c[d>>2]|0)){j=c[j>>2]|0;i=k;return j|0}if(c[(c[c[d>
x3e;2]>>2]|0)+32>>2]|0)c[j>>2]=Ya[c[(c[c[d>>2]>>2]|0)+32>>2]&127
](c[d>>2]|0,c[e>>2]|0)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}c[g>>2]=c[(c
[d>>2]|0)+4>>2];c[f>>2]=(c[g>>2]|0)+28;c[h>>2]=(c[f>>2]|0)+(c[(c[g
x3e;>2]|0)+24>>2]<<2);while(1){if((c[f>>2]|0)>>>0>=(c[h>>2]|0)
x3e;>>0){d=11;break}if(((c[c[f>>2]>>2]|0)!=(c[d>>2]|0)?c[(c[c[c[f>>2]>>
;2]>>2]|0)+32>>2]|0:0)?(c[j>>2]=Ya[c[(c[c[c[f>>2]>>2]>>2]|0)+32>
;>2]&127](c[c[f>>2]>>2]|0,c[e>>2]|0)|0,c[j>>2]|0):0){d=11;break}c[f>>
;2]=(c[f>>2]|0)+4}if((d|0)==11){j=c[j>>2]|0;i=k;return j|0}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;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=b;c[h>>2]=0;
if(!(c[e>>2]|0)){c[d>>2]=6;a=c[d>>2]|0;i=j;return a|0}c[h>>2]=bc(c[e>>2]|0,200
,g)|0;if(c[g>>2]|0){c[d>>2]=c[g>>2];a=c[d>>2]|0;i=j;return a|0}c[c[h>>2]>
x3e;2]=c[e>>2];c[(c[h>>2]|0)+176>>2]=16384;a=bc(c[e>>2]|0,16384,g)|0;c[(c[h>>2
]|0)+172>>2]=a;if(c[g>>2]|0){Fb(c[e>>2]|0,c[h>>2]|0);c[h>>2]=0;c[d>>
2]=c[g>>2];a=c[d>>2]|0;i=j;return a|0}else{c[(c[h>>2]|0)+12>>2]=2;c[(c[h>>2]|0
)+16>>2]=4;c[(c[h>>2]|0)+20>>2]=4;c[(c[h>>2]|0)+196>>2]=1;c[c[f>>2]
x3e;>2]=c[h>>2];c[d>>2]=0;a=c[d>>2]|0;i=j;return a|0}return 0}function Xd(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;p=i;i=i+48|0;g=p+44|0;h=p+40|0;j=p+36|0;k=p+32|0;l=p+28|0;m=p+24|0
;o=p+4|0;n=p;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>
2]=c[(c[c[h>>2]>>2]|0)+96>>2];if(!(c[(c[(c[n>>2]|0)+20>>2]|0)+96>>2]|
0)){c[g>>2]=0;b=c[g>>2]|0;i=p;return b|0}c[o>>2]=0;c[o+4>>2]=c[j>>2];c[o+8>
;>2]=c[k>>2];if(!(c[l>>2]|0))c[l>>2]=c[m>>2];if(!(c[m>>2]|0))c[m>>
;2]=c[l>>2];if(!(c[l>>2]|0)){c[m>>2]=72;c[l>>2]=72}c[o+12>>2]=c[l>>2
];c[o+16>>2]=c[m>>2];c[g>>2]=Ya[c[(c[(c[n>>2]|0)+20>>2]|0)+96>>2]&
;127](c[h>>2]|0,o)|0;b=c[g>>2]|0;i=p;return b|0}function Yd(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;l=i;i=i+48|0;e=l+36|0;f=l+32|0;g=l+28|0;h=l+24|0;k=l+4|0;j=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=
d;c[j>>2]=c[(c[c[f>>2]>>2]|0)+96>>2];if(c[(c[(c[j>>2]|0)+20>>2]|0)+96
>>2]|0){c[k>>2]=0;c[k+4>>2]=c[g>>2]<<6;c[k+8>>2]=c[h>>2]
x3c;<6;c[k+12>>2]=0;c[k+16>>2]=0;c[e>>2]=Ya[c[(c[(c[j>>2]|0)+20>>2]|0)+96
>>2]&127](c[f>>2]|0,k)|0;b=c[e>>2]|0;i=l;return b|0}else{c[e>>2]=0;b=c[e>>
;2]|0;i=l;return b|0}return 0}function Zd(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,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;E=i;i=i+128|0;g=E+124|0;h=E+120|0;j=E+116|0;k=E+112|0;w=E+104|0;v=E+96|0;y=E+88|0;r=E+84|
0;p=E+80|0;u=E+76|0;m=E+72|0;q=E+68|0;n=E+64|0;t=E+60|0;s=E+56|0;l=E+52|0;o=E+48|0;z=E+40|0;A=E+32|0;x=E+24|0;B=E+16|0;C=E+8|0;D
=E;c[h>>2]=d;c[j>>2]=e;c[k>>2]=f;if(!((c[h>>2]|0)!=0&(c[j>>2]|0)!=0)){c[g
>>2]=6;D=c[g>>2]|0;i=E;return D|0}c[s>>2]=c[(c[j>>2]|0)+16>>2];c[l>>
2]=c[(c[j>>2]|0)+20>>2];c[n>>2]=0;c[q>>2]=0;a:while(1){if((c[q>>2]|0)>=(b
[c[h>>2]>>1]|0)){e=32;break}c[o>>2]=b[(c[(c[h>>2]|0)+12>>2]|0)+(c[q>>
;2]<<1)>>1];if((c[o>>2]|0)<0){e=34;break}c[p>>2]=(c[(c[h>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<3);f=(c[(c[h>>2]|0)+4>>2]|0)+(c[n>>2]<<3)|0;c[y
x3e;>2]=c[f>>2];c[y+4>>2]=c[f+4>>2];c[y>>2]=(c[y>>2]<<c[s>
x3e;2])-(c[l>>2]|0);c[y+4>>2]=(c[y+4>>2]<<c[s>>2])-(c[l>>2]|0);f=(c[(
c[h>>2]|0)+4>>2]|0)+(c[o>>2]<<3)|0;c[w>>2]=c[f>>2];c[w+4>>
2]=c[f+4>>2];c[w>>2]=(c[w>>2]<<c[s>>2])-(c[l>>2]|0);c[w+4>>
;2]=(c[w+4>>2]<<c[s>>2])-(c[l>>2]|0);c[v>>2]=c[y>>2];c[v+4>>
;2]=c[y+4>>2];c[r>>2]=(c[(c[h>>2]|0)+4>>2]|0)+(c[n>>2]<<3);c[u>
x3e;2]=(c[(c[h>>2]|0)+8>>2]|0)+(c[n>>2]|0);c[t>>2]=a[c[u>>2]>>0]&
;3;if((c[t>>2]|0)==2){e=34;break}if(!(c[t>>2]|0)){if((a[(c[(c[h>>2]|0)+8>>2]|0)+(c[o>
;>2]|0)>>0]&3|0)==1){c[y>>2]=c[w>>2];c[y+4>>2]=c[w+4>>2];c[p>
x3e;2]=(c[p>>2]|0)+-8}else{c[y>>2]=((c[y>>2]|0)+(c[w>>2]|0)|0)/2|0;c[y+4>>2]=((
c[y+4>>2]|0)+(c[w+4>>2]|0)|0)/2|0;c[w>>2]=c[y>>2];c[w+4>>2]=c[y+4>>2
]}c[r>>2]=(c[r>>2]|0)+-8;c[u>>2]=(c[u>>2]|0)+-1}c[m>>2]=Ya[c[c[j>>2]
x3e;>2]&127](y,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break}b:while(1){if((c[r>>2]|0)>>
;>0>=(c[p>>2]|0)>>>0){e=29;break}c[r>>2]=(c[r>>2]|0)+8;c[u>>2]=(
c[u>>2]|0)+1;c[t>>2]=a[c[u>>2]>>0]&3;switch(c[t>>2]|0){case 1:{c[z>
x3e;2]=(c[c[r>>2]>>2]<<c[s>>2])-(c[l>>2]|0);c[z+4>>2]=(c[(c[r>
x3e;2]|0)+4>>2]<<c[s>>2])-(c[l>>2]|0);c[m>>2]=Ya[c[(c[j>>2]|0)+4>
;>2]&127](z,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else continue b}case 0:{c[v>>2]=(c[c
[r>>2]>>2]<<c[s>>2])-(c[l>>2]|0);c[v+4>>2]=(c[(c[r>>2]|0)+
4>>2]<<c[s>>2])-(c[l>>2]|0);while(1){if((c[r>>2]|0)>>>0>=(
c[p>>2]|0)>>>0){e=23;break b}c[r>>2]=(c[r>>2]|0)+8;c[u>>2]=(c[u>>
;2]|0)+1;c[t>>2]=a[c[u>>2]>>0]&3;c[A>>2]=(c[c[r>>2]>>2]<
x3c;c[s>>2])-(c[l>>2]|0);c[A+4>>2]=(c[(c[r>>2]|0)+4>>2]<<c[s>
x3e;2])-(c[l>>2]|0);if((c[t>>2]|0)==1)break;if(c[t>>2]|0){e=34;break a}c[x>>2]=((c[v>
;>2]|0)+(c[A>>2]|0)|0)/2|0;c[x+4>>2]=((c[v+4>>2]|0)+(c[A+4>>2]|0)|0)/2|0;c[m>
x3e;2]=Oa[c[(c[j>>2]|0)+8>>2]&63](v,x,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a};c[v
x3e;>2]=c[A>>2];c[v+4>>2]=c[A+4>>2]}c[m>>2]=Oa[c[(c[j>>2]|0)+8>>
;2]&63](v,A,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else continue b}default:{if(((c[r>>2]|0)+
8|0)>>>0>(c[p>>2]|0)>>>0){e=34;break a}if((a[(c[u>>2]|0)+1>>0]
x26;3|0)!=2){e=34;break a}c[r>>2]=(c[r>>2]|0)+16;c[u>>2]=(c[u>>2]|0)+2;c[B>>2]=(
c[(c[r>>2]|0)+-16>>2]<<c[s>>2])-(c[l>>2]|0);c[B+4>>2]=(c[(c[r>
x3e;2]|0)+-16+4>>2]<<c[s>>2])-(c[l>>2]|0);c[C>>2]=(c[(c[r>>2]|0)+-8
x3e;>2]<<c[s>>2])-(c[l>>2]|0);c[C+4>>2]=(c[(c[r>>2]|0)+-8+4>>2]
x3c;<c[s>>2])-(c[l>>2]|0);if((c[r>>2]|0)>>>0>(c[p>>2]|0)>
x3e;>0){e=28;break b}c[D>>2]=(c[c[r>>2]>>2]<<c[s>>2])-(c[l>>2]|
0);c[D+4>>2]=(c[(c[r>>2]|0)+4>>2]<<c[s>>2])-(c[l>>2]|0);c[m>>
;2]=Wa[c[(c[j>>2]|0)+12>>2]&31](B,C,D,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else
continue b}}}if((e|0)==23)c[m>>2]=Oa[c[(c[j>>2]|0)+8>>2]&63](v,y,c[k>>2]|0)|0;else
if((e|0)==28)c[m>>2]=Wa[c[(c[j>>2]|0)+12>>2]&31](B,C,y,c[k>>2]|0)|0;else if((e|0)==
29)c[m>>2]=Ya[c[(c[j>>2]|0)+4>>2]&127](y,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;
break}c[n>>2]=(c[o>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+1}if((e|0)==32){c[g>>2]=0;D=c[
g>>2]|0;i=E;return D|0}else if((e|0)==33){c[g>>2]=c[m>>2];D=c[g>>2]|0;i=E;return D|0}else
if((e|0)==34){c[g>>2]=20;D=c[g>>2]|0;i=E;return D|0}return 0}function _d(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0;l=p+28|0;o=p+24|0;k=p+20|0;n=p+16|0;h=p+12|0;g=p+8|0;j=p+4|0;m=p;c
[e>>2]=a;c[f>>2]=d;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=p;return}a:do if(!(b[(c[e
>>2]|0)+2>>1]|0)){c[l>>2]=0;c[o>>2]=0;c[k>>2]=0;c[n>>2]=0}else{c[h
x3e;>2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=(c[h>>2]|0)+(b[(c[e>>2]|0)+2>>
;1]<<3);a=c[c[h>>2]>>2]|0;c[k>>2]=a;c[l>>2]=a;a=c[(c[h>>2]|0)+4>
;>2]|0;c[n>>2]=a;c[o>>2]=a;c[h>>2]=(c[h>>2]|0)+8;while(1){if((c[h>>2]|0)
x3e;>>0>=(c[g>>2]|0)>>>0)break a;c[j>>2]=c[c[h>>2]>>2];if((
c[j>>2]|0)<(c[l>>2]|0))c[l>>2]=c[j>>2];if((c[j>>2]|0)>(c[k>>
;2]|0))c[k>>2]=c[j>>2];c[m>>2]=c[(c[h>>2]|0)+4>>2];if((c[m>>2]|0)<
;(c[o>>2]|0))c[o>>2]=c[m>>2];if((c[m>>2]|0)>(c[n>>2]|0))c[n>>2]=
c[m>>2];c[h>>2]=(c[h>>2]|0)+8}}while(0);c[c[f>>2]>>2]=c[l>>2];c[(c[f
>>2]|0)+8>>2]=c[k>>2];c[(c[f>>2]|0)+4>>2]=c[o>>2];c[(c[f>>
2]|0)+12>>2]=c[n>>2];i=p;return}function $d(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,o=0,p=0,q=0
,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+128|0;d=F+116|0;e=F+112|0;z=F+108|0;D=F+104|0;C=F+100|0;A=F
+96|0;B=F+92|0;f=F+88|0;l=F+84|0;n=F+80|0;s=F+76|0;r=F+72|0;m=F+68|0;t=F+56|0;u=F+44|0;h=F+40|0;g=F+36|0;k=F+32|0;j=F+28|0;q=F+24
|0;x=F+20|0;o=F+16|0;p=F+12|0;v=F+8|0;w=F+4|0;y=F;c[e>>2]=a;c[z>>2]=32768;c[D>>2]=32768;c[C>
x3e;2]=-32768;c[A>>2]=0;c[B>>2]=0;c[u>>2]=c[42];c[u+4>>2]=c[43];c[u+8>>2]=c[44
];if(c[e>>2]|0?(b[(c[e>>2]|0)+2>>1]|0)>0:0){c[l>>2]=c[(c[e>>2]|0)+4>
x3e;2];c[f>>2]=c[(c[e>>2]|0)+12>>2];while(1){if((c[f>>2]|0)>>>0>=((c
[(c[e>>2]|0)+12>>2]|0)+(b[c[e>>2]>>1]<<1)|0)>>>0)break;c[h>
;>2]=32768;c[g>>2]=-32768;c[k>>2]=32768;c[j>>2]=-32768;c[n>>2]=(c[(c[e>>2
]|0)+4>>2]|0)+(b[c[f>>2]>>1]<<3);if((c[n>>2]|0)>>>0>=((c[l
>>2]|0)+16|0)>>>0){c[r>>2]=c[l>>2];while(1){if((c[r>>2]|0)>>>
;0>(c[n>>2]|0)>>>0)break;if((c[c[r>>2]>>2]|0)<(c[h>>2]|0))c[h
x3e;>2]=c[c[r>>2]>>2];if((c[c[r>>2]>>2]|0)>(c[g>>2]|0))c[g>>
;2]=c[c[r>>2]>>2];if((c[(c[r>>2]|0)+4>>2]|0)<(c[k>>2]|0))c[k>>2
]=c[(c[r>>2]|0)+4>>2];if((c[(c[r>>2]|0)+4>>2]|0)>(c[j>>2]|0))c[j>>
;2]=c[(c[r>>2]|0)+4>>2];c[r>>2]=(c[r>>2]|0)+8}if(((c[h>>2]|0)<(c[z>
x3e;2]|0)?(c[h>>2]|0)!=(c[g>>2]|0):0)?(c[k>>2]|0)!=(c[j>>2]|0):0){c[z>>2]=c[h
x3e;>2];c[D>>2]=c[k>>2];c[C>>2]=c[j>>2];c[A>>2]=c[l>>2];c[B>
;>2]=c[n>>2]}}c[f>>2]=(c[f>>2]|0)+2;c[l>>2]=(c[n>>2]|0)+8}if((c[z>
x3e;2]|0)==32768){c[d>>2]=0;E=c[d>>2]|0;i=F;return E|0}c[t>>2]=((c[D>>2]|0)*3|0)+(c[C>
;>2]|0)>>2;c[t+4>>2]=(c[D>>2]|0)+(c[C>>2]|0)>>1;c[t+8>>2]=(c[D
x3e;>2]|0)+((c[C>>2]|0)*3|0)>>2;c[m>>2]=0;while(1){if((c[m>>2]|0)>=3)break;a:while
(1){c[q>>2]=32768;c[x>>2]=-32768;c[w>>2]=0;c[v>>2]=0;c[p>>2]=0;c[o>>
2]=0;c[s>>2]=c[B>>2];c[r>>2]=c[A>>2];while(1){if((c[r>>2]|0)>>>
0>(c[B>>2]|0)>>>0)break a;if((c[(c[r>>2]|0)+4>>2]|0)==(c[t+(c[m>>2]
x3c;<2)>>2]|0))break;if((c[(c[s>>2]|0)+4>>2]|0)==(c[t+(c[m>>2]<<2)>
x3e;2]|0))break;if(!((c[(c[r>>2]|0)+4>>2]|0)<(c[t+(c[m>>2]<<2)>>2]|0)?(c[(
c[s>>2]|0)+4>>2]|0)<(c[t+(c[m>>2]<<2)>>2]|0):0))E=34;do if((E|0)==34){E=0
;if((c[(c[r>>2]|0)+4>>2]|0)>(c[t+(c[m>>2]<<2)>>2]|0)?(c[(c[s>>2
]|0)+4>>2]|0)>(c[t+(c[m>>2]<<2)>>2]|0):0)break;D=xb((c[c[r>>2]>>
;2]|0)-(c[c[s>>2]>>2]|0)|0,(c[t+(c[m>>2]<<2)>>2]|0)-(c[(c[s>>2]|0)+4
>>2]|0)|0,(c[(c[r>>2]|0)+4>>2]|0)-(c[(c[s>>2]|0)+4>>2]|0)|0)|0;c[y>>
2]=D+(c[c[s>>2]>>2]|0);if((c[y>>2]|0)<(c[q>>2]|0)){c[q>>2]=c[y>>
;2];c[o>>2]=c[s>>2];c[p>>2]=c[r>>2]}if((c[y>>2]|0)>(c[x>>2]|0)){
c[x>>2]=c[y>>2];c[v>>2]=c[s>>2];c[w>>2]=c[r>>2]}}while(0);c[s>
x3e;2]=c[r>>2];c[r>>2]=(c[r>>2]|0)+8}D=t+(c[m>>2]<<2)|0;c[D>>2]=(c[D
>>2]|0)+1}do if((c[o>>2]|0)!=0&(c[v>>2]|0)!=0){if((c[(c[o>>2]|0)+4>>2]|0)
x3c;(c[(c[p>>2]|0)+4>>2]|0)?(c[(c[v>>2]|0)+4>>2]|0)>(c[(c[w>>2]|0)+4>
;>2]|0):0){c[u+(c[m>>2]<<2)>>2]=0;break}if((c[(c[o>>2]|0)+4>>2]|0)>(
c[(c[p>>2]|0)+4>>2]|0)?(c[(c[v>>2]|0)+4>>2]|0)<(c[(c[w>>2]|0)+4>>
;2]|0):0){c[u+(c[m>>2]<<2)>>2]=1;break}c[u+(c[m>>2]<<2)>>2]=2}while(
0);c[m>>2]=(c[m>>2]|0)+1}do if((c[u>>2]|0)!=2){if((c[u>>2]|0)!=(c[u+4>>2]|0)?(
c[u>>2]|0)!=(c[u+8>>2]|0):0)break;c[d>>2]=c[u>>2];E=c[d>>2]|0;i=F;return E|0}while
(0);if((c[u+4>>2]|0)!=2?(c[u+4>>2]|0)==(c[u+8>>2]|0):0){c[d>>2]=c[u+4>>2];E=c[
d>>2]|0;i=F;return E|0}c[d>>2]=0;E=c[d>>2]|0;i=F;return E|0}c[d>>2]=0;E=c[d>>2
]|0;i=F;return E|0}function ae(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;f=h+12|0;g=h+8|0;b=h+4|0;e=h;c[d
x3e;>2]=a;c[f>>2]=c[c[d>>2]>>2];c[g>>2]=c[(c[d>>2]|0)+4>>2];j=c
[f>>2]|0;a=c[g>>2]|0;c[b>>2]=((c[f>>2]|0)>=0?j:0-j|0)|((c[g>>2]|0)>=
0?a:0-a|0);c[e>>2]=0;if((c[b>>2]|0)>=65536){c[b>>2]=c[b>>2]>>16;c[e>
x3e;2]=(c[e>>2]|0)+16}if((c[b>>2]|0)>=256){c[b>>2]=c[b>>2]>>8;c[e>
x3e;2]=(c[e>>2]|0)+8}if((c[b>>2]|0)>=16){c[b>>2]=c[b>>2]>>4;c[e>>
;2]=(c[e>>2]|0)+4}if((c[b>>2]|0)>=4){c[b>>2]=c[b>>2]>>2;c[e>>2]=(
c[e>>2]|0)+2}if((c[b>>2]|0)>=2){c[b>>2]=c[b>>2]>>1;c[e>>2]=(c[e
>>2]|0)+1}a=c[e>>2]|0;if((c[e>>2]|0)<=27){c[e>>2]=27-a;c[c[d>>2]>>
;2]=c[f>>2]<<c[e>>2];c[(c[d>>2]|0)+4>>2]=c[g>>2]<<c[e>
;>2];j=c[e>>2]|0;i=h;return j|0}else{c[e>>2]=a-27;c[c[d>>2]>>2]=c[f>>2]
x3e;>c[e>>2];c[(c[d>>2]|0)+4>>2]=c[g>>2]>>c[e>>2];c[e>>
;2]=0-(c[e>>2]|0);j=c[e>>2]|0;i=h;return j|0}return 0}function be(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k
=0,l=0;l=i;i=i+32|0;h=l+24|0;j=l+20|0;g=l+16|0;e=l+12|0;k=l+8|0;f=l+4|0;d=l;c[h>>2]=a;c[k>>2]=c[c[h>>
;2]>>2];c[f>>2]=c[(c[h>>2]|0)+4>>2];c[j>>2]=0;if((c[k>>2]|0)<0){
c[k>>2]=0-(c[k>>2]|0);c[f>>2]=0-(c[f>>2]|0);c[j>>2]=11796480}if((c[f>>
;2]|0)>0)c[j>>2]=0-(c[j>>2]|0);c[d>>2]=180;a=c[f>>2]|0;b=c[k>>2]<<
;1;if((c[f>>2]|0)<0){c[g>>2]=a+b;c[k>>2]=(c[k>>2]|0)-(c[f>>2]<<
1);c[f>>2]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)-(c[b
x3e;>2]|0)}else{c[g>>2]=a-b;c[k>>2]=(c[k>>2]|0)+(c[f>>2]<<1);c[f>>
;2]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)+(c[b>>2]|0)}
c[e>>2]=0;do{a=c[f>>2]|0;b=c[k>>2]>>c[e>>2];if((c[f>>2]|0)<0){c
[g>>2]=a+b;c[k>>2]=(c[k>>2]|0)-(c[f>>2]>>c[e>>2]);c[f>>2]=
c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)-(c[b>>2]|0)}else
{c[g>>2]=a-b;c[k>>2]=(c[k>>2]|0)+(c[f>>2]>>c[e>>2]);c[f>>2
]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)+(c[b>>2]|0)}b=(
c[e>>2]|0)+1|0;c[e>>2]=b}while((b|0)<23);a=c[j>>2]|0;if((c[j>>2]|0)>=0){c[j>
;>2]=a+16&-32;g=c[k>>2]|0;k=c[h>>2]|0;c[k>>2]=g;j=c[j>>2]|0;k=c[h>>2
]|0;k=k+4|0;c[k>>2]=j;i=l;return}else{c[j>>2]=0-(0-a+16&-32);g=c[k>>2]|0;k=c[h>>2]|
0;c[k>>2]=g;j=c[j>>2]|0;k=c[h>>2]|0;k=k+4|0;c[k>>2]=j;i=l;return}}function ce(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;f=i;i=i+48|0;b=f+36|0;e=f+32|0;m=f+28|0;k=f+24|0;n=f+20|0;l=f+16|0;d=f+12|0;h=f+8|0
;j=f+4|0;g=f;c[b>>2]=a;c[e>>2]=c[b>>2];a=c[b>>2]|0;c[b>>2]=(c[b>>2]|
0)>=0?a:0-a|0;c[m>>2]=(c[b>>2]|0)>>>16;c[k>>2]=c[b>>2]&65535;c[
n>>2]=17797;c[l>>2]=47593;c[d>>2]=_(c[n>>2]|0,c[m>>2]|0)|0;a=_(c[n>>
2]|0,c[k>>2]|0)|0;c[h>>2]=a+(_(c[l>>2]|0,c[m>>2]|0)|0);c[j>>2]=(_(c[l>>
;2]|0,c[k>>2]|0)|0)>>>16;c[g>>2]=(c[h>>2]|0)>>>0>=(c[j>>
;2]|0)>>>0?c[h>>2]|0:c[j>>2]|0;c[h>>2]=(c[h>>2]|0)+(c[j>>2]|0);
c[d>>2]=(c[d>>2]|0)+((c[h>>2]|0)>>>16);if((c[h>>2]|0)>>>0
x3e;=(c[g>>2]|0)>>>0){l=c[d>>2]|0;c[b>>2]=l;l=c[e>>2]|0;l=(l|0)>=0;m
=c[b>>2]|0;n=0-m|0;n=l?m:n;i=f;return n|0}c[d>>2]=(c[d>>2]|0)+65536;l=c[d>>2]|0;c[b>
;>2]=l;l=c[e>>2]|0;l=(l|0)>=0;m=c[b>>2]|0;n=0-m|0;n=l?m:n;i=f;return n|0}function de(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;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[j>>2]=b;c[f>
x3e;2]=d;c[g>>2]=ee(c[e>>2]|0,c[j>>2]|0)|0;if(c[g>>2]|0){j=c[g>>2]|0;i=h;return
j|0}c[c[f>>2]>>2]=c[(c[e>>2]|0)+32>>2];c[(c[e>>2]|0)+32>>2]=0;c[(c[
e>>2]|0)+36>>2]=0;j=c[g>>2]|0;i=h;return j|0}function ee(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,
j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;b=c[d>
x3e;2]|0;if(!(c[(c[d>>2]|0)+20>>2]|0)){if((c[b+8>>2]|0)>>>0<(c[(c[d>>
;2]|0)+4>>2]|0)>>>0?((c[(c[d>>2]|0)+4>>2]|0)-(c[(c[d>>2]|0)+8>>
2]|0)|0)>>>0>=(c[e>>2]|0)>>>0:0){c[(c[d>>2]|0)+32>>2]=(c[c[d>
;>2]>>2]|0)+(c[(c[d>>2]|0)+8>>2]|0);c[(c[d>>2]|0)+36>>2]=(c[(c[d>>
;2]|0)+32>>2]|0)+(c[e>>2]|0);h=(c[d>>2]|0)+8|0;c[h>>2]=(c[h>>2]|0)+(c[e>
x3e;2]|0);h=c[f>>2]|0;i=j;return h|0}c[f>>2]=85;h=c[f>>2]|0;i=j;return h|0}c[g>>2]=c[b+28
>>2];if((c[e>>2]|0)>>>0>(c[(c[d>>2]|0)+4>>2]|0)>>>0){
c[f>>2]=85;h=c[f>>2]|0;i=j;return h|0}a=cc(c[g>>2]|0,c[e>>2]|0,f)|0;c[c[d>>2]
x3e;>2]=a;if(c[f>>2]|0){h=c[f>>2]|0;i=j;return h|0}c[h>>2]=Wa[c[(c[d>>2]|0)+20>
;>2]&31](c[d>>2]|0,c[(c[d>>2]|0)+8>>2]|0,c[c[d>>2]>>2]|0,c[e>
x3e;2]|0)|0;if((c[h>>2]|0)>>>0<(c[e>>2]|0)>>>0){Fb(c[g>>2]|0,c[
c[d>>2]>>2]|0);c[c[d>>2]>>2]=0;c[f>>2]=85}c[(c[d>>2]|0)+32>>
;2]=c[c[d>>2]>>2];c[(c[d>>2]|0)+36>>2]=(c[(c[d>>2]|0)+32>>2]|0)+(c[e
>>2]|0);g=(c[d>>2]|0)+8|0;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0);h=c[f>>2]|
0;i=j;return h|0}function fe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>
x3e;2]=b;if(c[d>>2]|0?c[(c[d>>2]|0)+20>>2]|0:0){c[f>>2]=c[(c[d>>2]|0)+28>
x3e;2];Fb(c[f>>2]|0,c[c[e>>2]>>2]|0);c[c[e>>2]>>2]=0}c[c[e>>2]>
x3e;2]=0;i=g;return}function ge(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(c[(c[b>>2]|0)+
20>>2]|0){c[d>>2]=c[(c[b>>2]|0)+28>>2];Fb(c[d>>2]|0,c[c[b>>2]>
x3e;2]|0);c[c[b>>2]>>2]=0}c[(c[b>>2]|0)+32>>2]=0;c[(c[b>>2]|0)+36>>2
]=0;i=e;return}function he(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f;e=f+4|0;c[d>>2]=b;a[e>>0]=0;if((c[(c[d
x3e;>2]|0)+32>>2]|0)>>>0>=(c[(c[d>>2]|0)+36>>2]|0)>>>0){b=
a[e>>0]|0;i=f;return b|0}d=(c[d>>2]|0)+32|0;b=c[d>>2]|0;c[d>>2]=b+1;a[e>>0]=a[
b>>0]|0;b=a[e>>0]|0;i=f;return b|0}function ie(e){e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;f=j+4|0;g=j;h=j+8|0
;c[f>>2]=e;b[h>>1]=0;c[g>>2]=c[(c[f>>2]|0)+32>>2];if(((c[g>>2]|0)+1|
0)>>>0>=(c[(c[f>>2]|0)+36>>2]|0)>>>0){g=c[g>>2]|0;e=c[f>
x3e;2]|0;e=e+32|0;c[e>>2]=g;e=b[h>>1]|0;i=j;return e|0}c[g>>2]=(c[g>>2]|0)+2;b[h>
x3e;1]=a[(c[g>>2]|0)+-2>>0]<<16>>16<<8|d[(c[g>>2]|0)+-2+1>>
;0]<<0;g=c[g>>2]|0;e=c[f>>2]|0;e=e+32|0;c[e>>2]=g;e=b[h>>1]|0;i=j;return e|0}function
je(b){b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=b;c[g>>2]=0;c[f>>2]=c[(c
[e>>2]|0)+32>>2];if(((c[f>>2]|0)+3|0)>>>0>=(c[(c[e>>2]|0)+36>
x3e;2]|0)>>>0){f=c[f>>2]|0;b=c[e>>2]|0;b=b+32|0;c[b>>2]=f;b=c[g>>2]|0;i=h
;return b|0}c[f>>2]=(c[f>>2]|0)+4;c[g>>2]=a[(c[f>>2]|0)+-4>>0]<<24|d
[(c[f>>2]|0)+-4+1>>0]<<16|d[(c[f>>2]|0)+-4+2>>0]<<8|d[(c[f>>
;2]|0)+-4+3>>0]<<0;f=c[f>>2]|0;b=c[e>>2]|0;b=b+32|0;c[b>>2]=f;b=c[g>>
;2]|0;i=h;return b|0}function ke(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+9|0;f=j+4|0;g=j;h=j+8|0;c[f>>
;2]=b;c[g>>2]=d;a[h>>0]=0;c[c[g>>2]>>2]=0;d=c[f>>2]|0;if(c[(c[f>>2]|
0)+20>>2]|0)if((Wa[c[d+20>>2]&31](c[f>>2]|0,c[(c[f>>2]|0)+8>>2]|0,h,1)|0)!=
1)d=6;else d=5;else if((c[d+8>>2]|0)>>>0<(c[(c[f>>2]|0)+4>>2]|0)>>
x3e;0){a[h>>0]=a[(c[c[f>>2]>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)>>0]|0;d=5
}else d=6;if((d|0)==5){g=(c[f>>2]|0)+8|0;c[g>>2]=(c[g>>2]|0)+1;a[e>>0]=a[h>>0]|
0;h=a[e>>0]|0;i=j;return h|0}else if((d|0)==6){c[c[g>>2]>>2]=85;a[e>>0]=0;h=a[e>>
;0]|0;i=j;return h|0}return 0}function le(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;v=i;i
=i+48|0;j=v+36|0;k=v+32|0;l=v+28|0;m=v+24|0;o=v+20|0;p=v+40|0;n=v+16|0;t=v+12|0;s=v+8|0;r=v+4|0;q=v;c[k>>2]=f;c[l>
;>2]=g;c[m>>2]=h;a[p>>0]=0;if(!((c[l>>2]|0)!=0&(c[k>>2]|0)!=0)){c[j>>
;2]=6;u=c[j>>2]|0;i=v;return u|0}c[n>>2]=c[(c[k>>2]|0)+32>>2];c[o>>2]=0;a:while
(1){switch(d[c[l>>2]>>0]|0){case 4:{c[o>>2]=ee(c[k>>2]|0,e[(c[l>>2]|0)+2>
x3e;1]|0)|0;if(c[o>>2]|0)break a;a[p>>0]=1;c[n>>2]=c[(c[k>>2]|0)+32>>2];c[l>
;>2]=(c[l>>2]|0)+4;continue a}case 25:case 24:{c[q>>2]=d[(c[l>>2]|0)+1>>0];if(((c[n
>>2]|0)+(c[q>>2]|0)|0)>>>0>(c[(c[k>>2]|0)+36>>2]|0)>>>
;0){u=8;break a}if((d[c[l>>2]>>0]|0)==24){c[r>>2]=(c[m>>2]|0)+(e[(c[l>>2]|0)+2
>>1]|0);Ss(c[r>>2]|0,c[n>>2]|0,c[q>>2]|0)|0}c[n>>2]=(c[n>>2]|0)+(c[q
>>2]|0);c[l>>2]=(c[l>>2]|0)+4;continue a}case 9:case 8:{h=c[n>>2]|0;c[n>>2]=h+
1;c[t>>2]=d[h>>0];c[s>>2]=24;break}case 12:case 13:{c[n>>2]=(c[n>>2]|0)+2;c[t
x3e;>2]=((d[(c[n>>2]|0)+-2>>0]&65535)<<8|(d[(c[n>>2]|0)+-2+1>>0]&
;65535)<<0)&65535;c[s>>2]=16;break}case 14:case 15:{c[n>>2]=(c[n>>2]|0)+2;c[t>
x3e;2]=((d[(c[n>>2]|0)+-2+1>>0]&65535)<<8|(d[(c[n>>2]|0)+-2>>0]&65535
)<<0)&65535;c[s>>2]=16;break}case 16:case 17:{c[n>>2]=(c[n>>2]|0)+4;c[t>>
2]=d[(c[n>>2]|0)+-4>>0]<<24|d[(c[n>>2]|0)+-4+1>>0]<<16|d[(c[n>
x3e;2]|0)+-4+2>>0]<<8|d[(c[n>>2]|0)+-4+3>>0]<<0;c[s>>2]=0;break}case
18:case 19:{c[n>>2]=(c[n>>2]|0)+4;c[t>>2]=d[(c[n>>2]|0)+-4+3>>0]<<24
|d[(c[n>>2]|0)+-4+2>>0]<<16|d[(c[n>>2]|0)+-4+1>>0]<<8|d[(c[n>
x3e;2]|0)+-4>>0]<<0;c[s>>2]=0;break}case 20:case 21:{c[n>>2]=(c[n>>2]|0)+3;c[t
>>2]=d[(c[n>>2]|0)+-3>>0]<<16|d[(c[n>>2]|0)+-3+1>>0]<<8|d[(
c[n>>2]|0)+-3+2>>0]<<0;c[s>>2]=8;break}case 22:case 23:{c[n>>2]=(c[n>>
;2]|0)+3;c[t>>2]=d[(c[n>>2]|0)+-3+2>>0]<<16|d[(c[n>>2]|0)+-3+1>>0]
x3c;<8|d[(c[n>>2]|0)+-3>>0]<<0;c[s>>2]=8;break}default:{u=19;break a}}if(d[c[l>
;>2]>>0]&1|0)c[t>>2]=c[t>>2]<<c[s>>2]>>c[s>>2];c
[r>>2]=(c[m>>2]|0)+(e[(c[l>>2]|0)+2>>1]|0);switch(d[(c[l>>2]|0)+1>>0
]|0){case 1:{a[c[r>>2]>>0]=c[t>>2];break}case 2:{b[c[r>>2]>>1]=c[t>>
2];break}case 4:{c[c[r>>2]>>2]=c[t>>2];break}default:c[c[r>>2]>>2]=c[t>
x3e;2]}c[l>>2]=(c[l>>2]|0)+4}if((u|0)==8)c[o>>2]=85;else if((u|0)==19)c[(c[k>>2]|0)+32
x3e;>2]=c[n>>2];if(a[p>>0]|0)ge(c[k>>2]|0);c[j>>2]=c[o>>2];u=c[j>>
;2]|0;i=v;return u|0}function me(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+32|0;d=f+16|0;g=f+12|0;e=f+8|0;b=f;c[g>>2]=a
;a=c[g>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];a=c[b+4>>2]|0;if(!(
c[b>>2]|0)){g=c[b+4>>2]|0;c[d>>2]=(a|0)>=0?g:0-g|0;g=c[d>>2]|0;i=f;return g|0}if(!a
){g=c[b>>2]|0;c[d>>2]=(c[b>>2]|0)>=0?g:0-g|0;g=c[d>>2]|0;i=f;return g|0}c[e>
x3e;2]=ae(b)|0;be(b);c[b>>2]=ce(c[b>>2]|0)|0;a=c[b>>2]|0;b=c[e>>2]|0;if((c[e>>
2]|0)>0){c[d>>2]=a+(1<<b-1)>>c[e>>2];g=c[d>>2]|0;i=f;return g|0}else{c[d
x3e;>2]=a<<0-b;g=c[d>>2]|0;i=f;return g|0}return 0}function ne(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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>>2]=a;c[f>>2]=b;c[g
>>2]=d;c[h>>2]=e;c[k>>2]=cc(c[m>>2]|0,c[g>>2]|0,j)|0;if(!((c[j>>2]|0
)==0&(c[f>>2]|0)!=0)){d=c[j>>2]|0;m=c[h>>2]|0;c[m>>2]=d;m=c[k>>2]|0;i=l;return
m|0}Ss(c[k>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;d=c[j>>2]|0;m=c[h>>2]|0;c[m>>
;2]=d;m=c[k>>2]|0;i=l;return m|0}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;j=i;i=i+16|0;e=j+12|0;f=
j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[f>>2]|0)a=(cs(c[f>>2]|0)|
0)+1|0;else a=0;c[h>>2]=a;h=ne(c[e>>2]|0,c[f>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=j;
return h|0}function pe(b,d,e){b=b|0;d=d|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]=b;c[g>
;>2]=d;c[h>>2]=e;while(1){if((c[h>>2]|0)>>>0<=1)break;if(!(a[c[g>>2]>
;>0]|0))break;e=c[g>>2]|0;c[g>>2]=e+1;e=a[e>>0]|0;d=c[f>>2]|0;c[f>>2]=d+1
;a[d>>0]=e;c[h>>2]=(c[h>>2]|0)+-1}a[c[f>>2]>>0]=0;i=j;return (a[c[g>>
;2]>>0]|0)!=0|0}function qe(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]=c[f>>2];if(re(c[e>>2]|0)|0){c[b>>2]=0;f=c[b>>2]|0;i=d;return f|0}else{c[b>
;>2]=153;f=c[b>>2]|0;i=d;return f|0}return 0}function re(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16
|0;d=h+12|0;f=h+8|0;g=h+4|0;e=h;c[d>>2]=a;c[g>>2]=c[(c[d>>2]|0)+8>>2];c[f>>2]=
c[(c[d>>2]|0)+40>>2];do if(!(c[(c[d>>2]|0)+40>>2]|0)){c[f>>2]=bc(c[g>>
;2]|0,608,e)|0;if((c[e>>2]|0)==0?(c[e>>2]=se(c[f>>2]|0,c[g>>2]|0)|0,(c[e>>2]|0
)==0):0){c[(c[d>>2]|0)+40>>2]=c[f>>2];break}c[b>>2]=0;g=c[b>>2]|0;i=h;return g
|0}while(0);c[b>>2]=c[(c[d>>2]|0)+40>>2];g=c[b>>2]|0;i=h;return g|0}function se(a,d){a=a
|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;f=h+8|0;j=h+4|0;g=h;c[f>>2]=a;c[j>>2]=d;c[(c[f>
x3e;2]|0)+8>>2]=c[j>>2];c[(c[f>>2]|0)+432>>2]=32;a=hc(c[j>>2]|0,16,0,c[(c[f>
;>2]|0)+432>>2]|0,0,g)|0;c[(c[f>>2]|0)+436>>2]=a;a=c[f>>2]|0;if(c[g>>2]|0
){te(a)|0;c[e>>2]=c[g>>2];j=c[e>>2]|0;i=h;return j|0}else{b[a+440>>1]=0;b[(c[f>>
;2]|0)+442>>1]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>>2]|0)+388>>2]=0;c[(c[f>
x3e;2]|0)+24>>2]=0;c[(c[f>>2]|0)+392>>2]=0;c[c[f>>2]>>2]=0;c[(c[f>>2
]|0)+4>>2]=0;c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}return 0}function te(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;c[f>>2]=c[(c[e>>2]|0)+8>>2];b[(c[e>>2]|0)+440
>>1]=0;b[(c[e>>2]|0)+442>>1]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);
c[(c[e>>2]|0)+24>>2]=0;c[(c[e>>2]|0)+20>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2
]|0)+436>>2]|0);c[(c[e>>2]|0)+436>>2]=0;c[(c[e>>2]|0)+432>>2]=0;c[(c[e>
x3e;2]|0)+428>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+392>>2]|0);c[(c[e>>2]|0)+392>
;>2]=0;c[(c[e>>2]|0)+388>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[c[e>>2]>>
;2]=0;Fb(c[f>>2]|0,c[e>>2]|0);c[e>>2]=0;i=d;return 0}function ue(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];if(!(c[(c[b>>2]|0)+40>>2]|0)){i=d;return
}te(c[(c[b>>2]|0)+40>>2]|0)|0;c[(c[b>>2]|0)+40>>2]=0;i=d;return}function ve(a,b){a=a|0;b
=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=qc(380,c[f>>2]|0)|0;if(c[g>>2]|0){c[d>>2]=c[g>>2];b=c[d>
x3e;2]|0;i=k;return b|0}if(!(c[e>>2]|0)){c[d>>2]=0;b=c[d>>2]|0;i=k;return b|0}c[j>>2]=Wc
(c[(c[e>>2]|0)+4>>2]|0,11340)|0;if(c[j>>2]|0?(c[h>>2]=c[(c[c[j>>2]>>
2]|0)+20>>2],c[h>>2]|0):0){c[d>>2]=Ya[c[(c[h>>2]|0)+16>>2]&127](c[e>
x3e;2]|0,c[f>>2]|0)|0;b=c[d>>2]|0;i=k;return b|0}c[d>>2]=0;b=c[d>>2]|0;i=k;return b|0}function
we(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;q=i;i=i+48|0;f=q+32|0;g=q+28|0;h=q+24|0;k=q+20|0;j=
q+16|0;o=q+12|0;l=q+8|0;n=q+4|0;m=q;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=0;c[n>>
;2]=c[(c[f>>2]|0)+100>>2];a[(c[f>>2]|0)+708>>0]=0;if((c[(c[f>>2]|0)+712>
x3e;2]|0)==0?(d=xe(c[f>>2]|0,0)|0,c[k>>2]=d,d|0):0){p=c[k>>2]|0;i=q;return p|0}c[j>>2]=c
[(c[f>>2]|0)+712>>2];c[o>>2]=c[(c[j>>2]|0)+8>>2];if((c[g>>2]|0)!=(c[
c[o>>2]>>2]|0)){c[k>>2]=6;p=c[k>>2]|0;i=q;return p|0}c[l>>2]=0;while(1){if((c[
l>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;if((c[(c[h>>2]|0)+(c[l>
;>2]<<2)>>2]|0)<-65536){p=9;break}if((c[(c[h>>2]|0)+(c[l>>2]<<2)>
;>2]|0)>65536){p=9;break}c[l>>2]=(c[l>>2]|0)+1}if((p|0)==9){c[k>>2]=6;p=c[k>>2
]|0;i=q;return p|0}if((c[(c[j>>2]|0)+36>>2]|0)==0?(p=ye(c[f>>2]|0)|0,c[k>>2]=p,p|0):0){p
=c[k>>2]|0;i=q;return p|0}a:do if(!(c[(c[j>>2]|0)+4>>2]|0)){p=hc(c[n>>2]|0,4,0,c[g>
x3e;2]|0,0,k)|0;c[(c[j>>2]|0)+4>>2]=p;if(c[k>>2]|0){p=c[k>>2]|0;i=q;return p|0}else{c[m
x3e;>2]=1;break}}else{c[m>>2]=0;c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c
[g>>2]|0)>>>0)break a;if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[l>>2]<<2
)>>2]|0)!=(c[(c[h>>2]|0)+(c[l>>2]<<2)>>2]|0))break;c[l>>2]=(c[l>
;>2]|0)+1}c[m>>2]=2}while(0);c[c[j>>2]>>2]=c[g>>2];Ss(c[(c[j>>2]|0)+4>
;>2]|0,c[h>>2]|0,c[g>>2]<<2|0)|0;a[(c[f>>2]|0)+708>>0]=1;if(!(c[(c[f>
;>2]|0)+672>>2]|0)){p=c[k>>2]|0;i=q;return p|0}switch(c[m>>2]|0){case 2:{Fb(c[n>>2]|
0,c[(c[f>>2]|0)+672>>2]|0);c[(c[f>>2]|0)+672>>2]=0;c[(c[f>>2]|0)+672>>
;2]=0;ze(c[f>>2]|0,c[(c[f>>2]|0)+104>>2]|0)|0;p=c[k>>2]|0;i=q;return p|0}case 1:{Ae(c[f
x3e;>2]|0,c[(c[f>>2]|0)+104>>2]|0)|0;p=c[k>>2]|0;i=q;return p|0}default:{p=c[k>>2]|
0;i=q;return p|0}}return 0}function xe(b,d){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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,
x=0,y=0;y=i;i=i+96|0;k=y+92|0;s=y+88|0;r=y+84|0;o=y+80|0;f=y+76|0;u=y+72|0;h=y+68|0;m=y+64|0;n=y+60|0;v=y+56|0;p=y+52|0;x=y+48|0
;t=y+44|0;q=y+40|0;l=y+24|0;g=y+4|0;w=y;c[k>>2]=b;c[s>>2]=d;c[r>>2]=c[(c[k>>2]|0)+104>
;>2];c[o>>2]=c[(c[k>>2]|0)+100>>2];c[u>>2]=0;a:do if(!(c[(c[k>>2]|0)+712
x3e;>2]|0)){d=Wa[c[(c[k>>2]|0)+508>>2]&31](c[k>>2]|0,1735811442,c[r>>2]|0,f)|0
;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0}d=Wa[c[(c[k>>2]|0)+508>>2]&31](c[k>
;>2]|0,1719034226,c[r>>2]|0,f)|0;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0}c[h>>
2]=Mc(c[r>>2]|0)|0;d=le(c[r>>2]|0,5428,l)|0;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0
}if(((((((c[l>>2]|0)==65536?(e[l+6>>1]|0|0)==2:0)?(e[l+10>>1]|0|0)==20:0)?(e[l+8>>1]|0|0
)<=16382:0)?(e[l+14>>1]|0|0)==(4+((e[l+8>>1]|0)<<2)|0):0)?(e[l+12>>1]|0|0)<=32511
:0)?(d=(e[l+4>>1]|0)+((e[l+8>>1]|0)*20|0)+(_(e[l+12>>1]|0,e[l+14>>1]|0)|0)|0,d>>
;>0<=(c[f>>2]|0)>>>0):0){f=bc(c[o>>2]|0,40,u)|0;c[(c[k>>2]|0)+712>
x3e;2]=f;if(c[u>>2]|0){x=c[u>>2]|0;i=y;return x|0}f=20+((e[l+8>>1]|0)*24|0)+((e[l+12>>1]|
0)<<3)+((_(e[l+12>>1]|0,e[l+8>>1]|0)|0)<<2)|0;c[(c[(c[k>>2]|0)+712>>
2]|0)+12>>2]=f+((e[l+8>>1]|0)*5|0);c[v>>2]=bc(c[o>>2]|0,c[(c[(c[k>>2]|0)+712
x3e;>2]|0)+12>>2]|0,u)|0;if(c[u>>2]|0){x=c[u>>2]|0;i=y;return x|0}c[(c[(c[k>>2]|0)+
712>>2]|0)+8>>2]=c[v>>2];c[c[v>>2]>>2]=e[l+8>>1];c[(c[v>>2
]|0)+4>>2]=-1;c[(c[v>>2]|0)+8>>2]=e[l+12>>1];c[(c[v>>2]|0)+12>>2]=(c
[v>>2]|0)+20;c[(c[v>>2]|0)+16>>2]=(c[(c[v>>2]|0)+12>>2]|0)+((e[l+8>>
1]|0)*24|0);c[p>>2]=(c[(c[v>>2]|0)+16>>2]|0)+((e[l+12>>1]|0)<<3);c[m>>
;2]=0;while(1){b=c[p>>2]|0;if((c[m>>2]|0)>=(e[l+12>>1]|0|0))break;c[(c[(c[v>>2]|0)+
16>>2]|0)+(c[m>>2]<<3)>>2]=b;c[p>>2]=(c[p>>2]|0)+((e[l+8>>
1]|0)<<2);c[m>>2]=(c[m>>2]|0)+1}c[x>>2]=b;c[m>>2]=0;while(1){if((c[m>>
;2]|0)>=(e[l+8>>1]|0|0))break;c[(c[(c[v>>2]|0)+12>>2]|0)+((c[m>>2]|0)*24|0)>
x3e;2]=c[x>>2];c[x>>2]=(c[x>>2]|0)+5;c[m>>2]=(c[m>>2]|0)+1}h=Kc(c[r>>
;2]|0,(c[h>>2]|0)+(e[l+4>>1]|0)|0)|0;c[u>>2]=h;if(h|0){x=c[u>>2]|0;i=y;return x|0}c[t>
;>2]=c[(c[v>>2]|0)+12>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(e[l+8>>
;1]|0|0))break;h=le(c[r>>2]|0,5464,g)|0;c[u>>2]=h;if(h|0){j=50;break}c[(c[t>>2]|0)+16>>2
]=c[g>>2];c[(c[t>>2]|0)+4>>2]=c[g+4>>2];c[(c[t>>2]|0)+8>>2]=c[g+8>
;>2];c[(c[t>>2]|0)+12>>2]=c[g+12>>2];c[(c[t>>2]|0)+20>>2]=e[g+18>>
;1];a[c[c[t>>2]>>2]>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>24;a[(c[c[t
x3e;>2]>>2]|0)+1>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>16;a[(c[c[t>>
;2]>>2]|0)+2>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>8;a[(c[c[t>>2]>
;>2]|0)+3>>0]=c[(c[t>>2]|0)+16>>2];a[(c[c[t>>2]>>2]|0)+4>>0]=0;
c[t>>2]=(c[t>>2]|0)+24;c[m>>2]=(c[m>>2]|0)+1}if((j|0)==50){x=c[u>>2]|0;i=y;return
x|0}c[q>>2]=c[(c[v>>2]|0)+16>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(e[l
+12>>1]|0|0))break a;j=ee(c[r>>2]|0,4+((e[l+8>>1]|0)<<2)|0)|0;c[u>>2]=j;if(j|0
)break;j=(ie(c[r>>2]|0)|0)&65535;c[(c[q>>2]|0)+4>>2]=j;ie(c[r>>2]|0)|0;c[n>>
;2]=0;while(1){b=c[r>>2]|0;if((c[n>>2]|0)>=(e[l+8>>1]|0|0))break;j=je(b)|0;c[(c[c[q>>
;2]>>2]|0)+(c[n>>2]<<2)>>2]=j;c[n>>2]=(c[n>>2]|0)+1}ge(b);c[m>
x3e;2]=(c[m>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+8}x=c[u>>2]|0;i=y;return x|0}c[u>>2]=
8;x=c[u>>2]|0;i=y;return x|0}while(0);if(!(c[s>>2]|0)){x=c[u>>2]|0;i=y;return x|0}c[v>>2
]=bc(c[o>>2]|0,c[(c[(c[k>>2]|0)+712>>2]|0)+12>>2]|0,u)|0;if(c[u>>2]|0){x=c[u
x3e;>2]|0;i=y;return x|0}Ss(c[v>>2]|0,c[(c[(c[k>>2]|0)+712>>2]|0)+8>>2]|0,c[(c[(c[k
>>2]|0)+712>>2]|0)+12>>2]|0)|0;c[(c[v>>2]|0)+12>>2]=(c[v>>2]|0)+20;c
[(c[v>>2]|0)+16>>2]=(c[(c[v>>2]|0)+12>>2]|0)+((c[c[v>>2]>>2]|0)*24|0
);c[p>>2]=(c[(c[v>>2]|0)+16>>2]|0)+(c[(c[v>>2]|0)+8>>2]<<3);c[w>
;>2]=0;while(1){if((c[w>>2]|0)>>>0>=(c[(c[v>>2]|0)+8>>2]|0)>>
x3e;0)break;c[(c[(c[v>>2]|0)+16>>2]|0)+(c[w>>2]<<3)>>2]=c[p>>2];c[p
x3e;>2]=(c[p>>2]|0)+(c[c[v>>2]>>2]<<2);c[w>>2]=(c[w>>2]|0)+1}c[
t>>2]=c[(c[v>>2]|0)+12>>2];c[x>>2]=c[p>>2];c[w>>2]=0;while(1){if((c[
w>>2]|0)>>>0>=(c[c[v>>2]>>2]|0)>>>0)break;c[c[t>>2]
x3e;>2]=c[x>>2];b=c[t>>2]|0;do if((c[(c[t>>2]|0)+16>>2]|0)!=2003265652){d=c[t>
x3e;2]|0;if((c[b+16>>2]|0)==2003072104){c[d>>2]=10521;break}b=c[t>>2]|0;if((c[d+16>>2]|0
)==1869640570){c[b>>2]=10527;break}if((c[b+16>>2]|0)==1936486004)c[c[t>>2]>>2]=10539}else
c[b>>2]=12384;while(0);c[x>>2]=(c[x>>2]|0)+5;c[t>>2]=(c[t>>2]|0)+24;c[w>
x3e;2]=(c[w>>2]|0)+1}c[c[s>>2]>>2]=c[v>>2];x=c[u>>2]|0;i=y;return x|0}function
ye(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+64|0;b=o+56|0;n=o+52|0;l=o+48|0;d=o+44|0;f=o+40|0;j=o+36|0;
k=o+32|0;h=o+24|0;m=o+20|0;g=o;c[b>>2]=a;c[n>>2]=c[(c[b>>2]|0)+104>>2];c[l>>2]=
c[(c[n>>2]|0)+28>>2];c[d>>2]=c[(c[b>>2]|0)+712>>2];b=Wa[c[(c[b>>2]|0
)+508>>2]&31](c[b>>2]|0,1735811442,c[n>>2]|0,o+28|0)|0;c[f>>2]=b;if(b|0){n=c[f>
;>2]|0;i=o;return n|0}c[h>>2]=Mc(c[n>>2]|0)|0;b=le(c[n>>2]|0,5496,g)|0;c[f>>2]=b;if
(b|0){n=c[f>>2]|0;i=o;return n|0}c[(c[d>>2]|0)+24>>2]=e[g+6>>1];c[(c[d>>2]|0)+
32>>2]=e[g+12>>1];c[m>>2]=(c[h>>2]|0)+(c[g+16>>2]|0);if((c[g>>2]|0)==
65536?(e[g+4>>1]|0|0)==(c[c[(c[d>>2]|0)+8>>2]>>2]&65535|0):0){b=hc(c[l>>2
]|0,4,0,(c[(c[d>>2]|0)+32>>2]|0)+1|0,0,f)|0;c[(c[d>>2]|0)+36>>2]=b;if(c[f>>2]|
0){n=c[f>>2]|0;i=o;return n|0}a=c[n>>2]|0;b=(c[(c[d>>2]|0)+32>>2]|0)+1|0;if((e[g+14>
;>1]|0)&1|0){b=ee(a,b<<2)|0;c[f>>2]=b;if(b|0){n=c[f>>2]|0;i=o;return n|0}c[j>>
2]=0;while(1){if((c[j>>2]|0)>>>0>(c[(c[d>>2]|0)+32>>2]|0)>>>0)break
;b=c[m>>2]|0;b=b+(je(c[n>>2]|0)|0)|0;c[(c[(c[d>>2]|0)+36>>2]|0)+(c[j>>2]<
x3c;2)>>2]=b;c[j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|0)}else{b=ee(a,b<<1)|0;c[f>
x3e;2]=b;if(b|0){n=c[f>>2]|0;i=o;return n|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0
x3e;(c[(c[d>>2]|0)+32>>2]|0)>>>0)break;b=c[m>>2]|0;b=b+(((ie(c[n>>2]|0)|0
)&65535)<<1)|0;c[(c[(c[d>>2]|0)+36>>2]|0)+(c[j>>2]<<2)>>2]=b;c[
j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|0)}if(!(c[(c[d>>2]|0)+24>>2]|0)){n=c[f>>
;2]|0;i=o;return n|0}m=hc(c[l>>2]|0,4,0,_(e[g+4>>1]|0,c[(c[d>>2]|0)+24>>2]|0)|0,0,f)|0;c
[(c[d>>2]|0)+28>>2]=m;if(c[f>>2]|0){n=c[f>>2]|0;i=o;return n|0}m=Kc(c[n>>2]|0,(
c[h>>2]|0)+(c[g+8>>2]|0)|0)|0;c[f>>2]=m;if(m|0){n=c[f>>2]|0;i=o;return n|0}m=ee(c[n>
;>2]|0,(_(c[(c[d>>2]|0)+24>>2]|0,e[g+4>>1]|0)|0)<<1)|0;c[f>>2]=m;if(m|0){
n=c[f>>2]|0;i=o;return n|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[d>
;>2]|0)+24>>2]|0)>>>0)break;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>
;0>=(e[g+4>>1]|0)>>>0)break;l=(ie(c[n>>2]|0)|0)<<16>>16<<2
;m=_(c[j>>2]|0,e[g+4>>1]|0)|0;c[(c[(c[d>>2]|0)+28>>2]|0)+(m+(c[k>>2]|0)<
x3c;2)>>2]=l;c[k>>2]=(c[k>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|
0);n=c[f>>2]|0;i=o;return n|0}c[f>>2]=8;n=c[f>>2]|0;i=o;return n|0}function ze(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;n=i;i=i+32|0;h=n+24|0;j=n+20|0;l=n+16|0;f=n+12|0;g=n+8|0;k=n+4|0;m=n;c[h>>2]=d;c[j>
;>2]=e;c[f>>2]=c[(c[j>>2]|0)+28>>2];c[l>>2]=Wa[c[(c[h>>2]|0)+508>>
;2]&31](c[h>>2]|0,1668707360,c[j>>2]|0,g)|0;if(c[l>>2]|0){c[(c[h>>2]|0)+668>
x3e;2]=0;c[(c[h>>2]|0)+672>>2]=0;c[l>>2]=0;m=c[l>>2]|0;i=n;return m|0}c[(c[h>>
2]|0)+668>>2]=((c[g>>2]|0)>>>0)/2|0;g=hc(c[f>>2]|0,2,0,c[(c[h>>2]|0)+668
x3e;>2]|0,0,l)|0;c[(c[h>>2]|0)+672>>2]=g;if(c[l>>2]|0){m=c[l>>2]|0;i=n;return m|0}g
=ee(c[j>>2]|0,c[(c[h>>2]|0)+668>>2]<<1)|0;c[l>>2]=g;if(g|0){m=c[l>>2
]|0;i=n;return m|0}c[k>>2]=c[(c[h>>2]|0)+672>>2];c[m>>2]=(c[k>>2]|0)+(c[(c[h
x3e;>2]|0)+668>>2]<<1);while(1){d=c[j>>2]|0;if((c[k>>2]|0)>>>0>=(
c[m>>2]|0)>>>0)break;g=ie(d)|0;b[c[k>>2]>>1]=g;c[k>>2]=(c[k>>2]|
0)+2}ge(d);if(!(a[(c[h>>2]|0)+708>>0]|0)){m=c[l>>2]|0;i=n;return m|0}c[l>>2]=Ae(c[h>
;>2]|0,c[j>>2]|0)|0;m=c[l>>2]|0;i=n;return m|0}function Ae(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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=i;i=i+96|0;h=C+84|0;j=C+80|0;n=C+76|0;u=C+72|0;g=C+68|0;f
=C+64|0;y=C+60|0;v=C+56|0;o=C+52|0;p=C+48|0;s=C+44|0;B=C+40|0;r=C+36|0;q=C+32|0;l=C+28|0;x=C+24|0;t=C+20|0;m=C+16|0;z=C+12|0;A=C
+8|0;k=C+4|0;w=C;c[h>>2]=a;c[j>>2]=d;c[u>>2]=c[(c[j>>2]|0)+28>>2];c[B>>
;2]=0;c[r>>2]=0;c[q>>2]=0;c[l>>2]=c[(c[h>>2]|0)+712>>2];if(!(c[l>>2]|
0)){c[n>>2]=0;z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>
;>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>
;2]|0;i=C;return B|0}if(!(c[(c[h>>2]|0)+672>>2]|0)){c[n>>2]=0;z=c[u>>2]|0;A=c[B>>
;2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;
B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}c[n>>2]=Wa[c[(c[h>>2]|
0)+508>>2]&31](c[h>>2]|0,1668702578,c[j>>2]|0,f)|0;if(c[n>>2]|0){c[n>>2]=
0;z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[
r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}f
=ee(c[j>>2]|0,c[f>>2]|0)|0;c[n>>2]=f;if(f|0){c[n>>2]=0;z=c[u>>2]|0;A=c[B>
x3e;2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|
0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}c[g>>2]=(c[(c[j>>2]|
0)+32>>2]|0)-(c[c[j>>2]>>2]|0);a:do if((je(c[j>>2]|0)|0)==65536){c[B>>2]=hc(c[
u>>2]|0,4,0,c[c[l>>2]>>2]|0,0,n)|0;if(((c[n>>2]|0)==0?(c[r>>2]=hc(c[u>>
;2]|0,4,0,c[c[l>>2]>>2]|0,0,n)|0,(c[n>>2]|0)==0):0)?(c[q>>2]=hc(c[u>>2]|0,4,0,
c[c[l>>2]>>2]|0,0,n)|0,(c[n>>2]|0)==0):0){c[y>>2]=(ie(c[j>>2]|0)|0)&65535
;g=c[g>>2]|0;c[v>>2]=g+((ie(c[j>>2]|0)|0)&65535);c[p>>2]=0;while(1){if((c[p>
x3e;2]|0)>>>0>=(c[y>>2]&4095)>>>0)break a;c[z>>2]=(ie(c[j>>
;2]|0)|0)&65535;c[A>>2]=(ie(c[j>>2]|0)|0)&65535;do if(c[A>>2]&32768|0){c[s>>
;2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[c[l>>2]>>2]|0)>>>0)break;
g=(ie(c[j>>2]|0)|0)<<16>>16<<2;c[(c[B>>2]|0)+(c[s>>2]<<2)
x3e;>2]=g;c[s>>2]=(c[s>>2]|0)+1}b:do if(c[A>>2]&16384|0){c[s>>2]=0;while(1){if
((c[s>>2]|0)>>>0>=(c[c[l>>2]>>2]|0)>>>0)break;g=(ie(c[j>
x3e;2]|0)|0)<<16>>16<<2;c[(c[r>>2]|0)+(c[s>>2]<<2)>>2]=g;c
[s>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[c[l
x3e;>2]>>2]|0)>>>0)break b;g=(ie(c[j>>2]|0)|0)<<16>>16<<2;
c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]=g;c[s>>2]=(c[s>>2]|0)+1}}while(0);c[k
>>2]=Be(c[l>>2]|0,c[A>>2]&65535,c[B>>2]|0,c[r>>2]|0,c[q>>2]|0)|
0;if(c[k>>2]|0?c[A>>2]&8192|0:0){c[o>>2]=(c[(c[j>>2]|0)+32>>2]|0)-(c[c[j
x3e;>2]>>2]|0);c[(c[j>>2]|0)+32>>2]=(c[c[j>>2]>>2]|0)+(c[v>>2]|
0);c[t>>2]=Ce(c[j>>2]|0,x)|0;if(!(c[x>>2]|0))a=c[(c[h>>2]|0)+668>>2]|0;else a=
c[x>>2]|0;c[m>>2]=De(c[j>>2]|0,a)|0;c:do if(!((c[t>>2]|0)==0|(c[m>>2]|0)==0)){
g=(c[t>>2]|0)==(-1|0);c[s>>2]=0;if(g)while(1){if((c[s>>2]|0)>>>0>=(c[(c[h>
;>2]|0)+668>>2]|0)>>>0)break c;g=b[(c[(c[h>>2]|0)+672>>2]|0)+(c[s>>2
]<<1)>>1]|0;g=g+(Mb(b[(c[m>>2]|0)+(c[s>>2]<<1)>>1]|0,c[k>>
2]|0)|0)&65535;b[(c[(c[h>>2]|0)+672>>2]|0)+(c[s>>2]<<1)>>1]=g;c[s>
x3e;2]=(c[s>>2]|0)+1}else while(1){if((c[s>>2]|0)>>>0>=(c[x>>2]|0)>>
x3e;0)break c;c[w>>2]=e[(c[t>>2]|0)+(c[s>>2]<<1)>>1];g=b[(c[(c[h>>2]|
0)+672>>2]|0)+(c[w>>2]<<1)>>1]|0;g=g+(Mb(b[(c[m>>2]|0)+(c[s>>2]<
;<1)>>1]|0,c[k>>2]|0)|0)&65535;b[(c[(c[h>>2]|0)+672>>2]|0)+(c[w>>2]
x3c;<1)>>1]=g;c[s>>2]=(c[s>>2]|0)+1}}while(0);if((c[t>>2]|0)!=(-1|0)){Fb(c[u>
x3e;2]|0,c[t>>2]|0);c[t>>2]=0}Fb(c[u>>2]|0,c[m>>2]|0);c[m>>2]=0;c[v>>
;2]=(c[v>>2]|0)+(c[z>>2]|0);c[(c[j>>2]|0)+32>>2]=(c[c[j>>2]>>2]|0)+(
c[o>>2]|0);break}c[v>>2]=(c[v>>2]|0)+(c[z>>2]|0)}else{d:do if(c[A>>2]&16384
|0){c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=c[c[l>>2]>>2]<<
1>>>0)break d;ie(c[j>>2]|0)|0;c[s>>2]=(c[s>>2]|0)+1}}while(0);c[v>>2]=(c[
v>>2]|0)+(c[z>>2]|0)}while(0);c[p>>2]=(c[p>>2]|0)+1}}}else c[n>>2]=0;while(0);
ge(c[j>>2]|0);z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>
;>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>
;2]|0;i=C;return B|0}function Be(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;r=i;i=i+32|0;j
=r+24|0;k=r+28|0;l=r+20|0;m=r+16|0;n=r+12|0;o=r+8|0;q=r+4|0;p=r;c[j>>2]=a;b[k>>1]=d;c[l>>2]=f;c[m
x3e;>2]=g;c[n>>2]=h;c[q>>2]=65536;c[o>>2]=0;a:while(1){if((c[o>>2]|0)>>
x3e;0>=(c[c[j>>2]>>2]|0)>>>0){a=19;break}do if(c[(c[l>>2]|0)+(c[o>>2
]<<2)>>2]|0){if(!(c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>
2]|0)){a=9;break a}if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)<0?(c
[(c[l>>2]|0)+(c[o>>2]<<2)>>2]|0)>0:0){a=9;break a}if((c[(c[(c[j>>2]|0)+4
x3e;>2]|0)+(c[o>>2]<<2)>>2]|0)>0?(c[(c[l>>2]|0)+(c[o>>2]<<
2)>>2]|0)<0:0){a=9;break a}if(!((e[k>>1]|0)&16384)){f=c[(c[(c[j>>2]|0)+4>>2]|0
)+(c[o>>2]<<2)>>2]|0;c[q>>2]=xb(c[q>>2]|0,(c[(c[(c[j>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<2)>>2]|0)>0?f:0-f|0,65536)|0;break}if((c[(c[(c[j>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<2)>>2]|0)<=(c[(c[m>>2]|0)+(c[o>>2]<<2)>
;>2]|0)){a=14;break a}if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)
x3e;=(c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]|0)){a=14;break a}a=c[o>>2]|0;if((c[(c[(c[
j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)<(c[(c[l>>2]|0)+(c[o>
x3e;2]<<2)>>2]|0)){c[p>>2]=xb((c[(c[(c[j>>2]|0)+4>>2]|0)+(a<<2)>
;>2]|0)-(c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]|0)|0,65536,(c[(c[l>>2]|0)+(c[o>
;>2]<<2)>>2]|0)-(c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]|0)|0)|0;c[q>
;>2]=xb(c[q>>2]|0,c[p>>2]|0,65536)|0;break}else{c[p>>2]=xb((c[(c[n>>2]|0)+(a<
x3c;2)>>2]|0)-(c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)|0,65536
,(c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[l>>2]|0)+(c[o>>2]<<
;2)>>2]|0)|0)|0;c[q>>2]=xb(c[q>>2]|0,c[p>>2]|0,65536)|0;break}}while(0);c[o>>2
]=(c[o>>2]|0)+1}if((a|0)==9){c[q>>2]=0;q=c[q>>2]|0;i=r;return q|0}else if((a|0)==14){c[q>>
;2]=0;q=c[q>>2]|0;i=r;return q|0}else if((a|0)==19){q=c[q>>2]|0;i=r;return q|0}return 0}function Ce(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;p=i;i=i+48|0;e=p+40|0;f=p+36|0;q=p+32|0;n=p+28|0;m=p+24|0;o=p+20|0;
j=p+16|0;k=p+12|0;h=p+8|0;l=p+4|0;g=p;c[f>>2]=a;c[q>>2]=d;c[l>>2]=c[(c[f>>2]|0)+28>
x3e;2];c[g>>2]=0;c[g>>2]=c[g>>2];a=(he(c[f>>2]|0)|0)&255;c[m>>2]=a;c[c[q
x3e;>2]>>2]=a;if(!(c[m>>2]|0)){c[e>>2]=-1;q=c[e>>2]|0;i=p;return q|0}if(c[m>
x3e;2]&128|0){q=(he(c[f>>2]|0)|0)&255;c[m>>2]=q|(c[m>>2]&127)<<8}c[n>
;>2]=hc(c[l>>2]|0,2,0,c[m>>2]|0,0,g)|0;if(c[g>>2]|0){c[e>>2]=0;q=c[e>>2]|
0;i=p;return q|0}c[j>>2]=0;a:while(1){if((c[j>>2]|0)>=(c[m>>2]|0))break;c[o>>2]=(he
(c[f>>2]|0)|0)&255;if(c[o>>2]&128|0){c[o>>2]=c[o>>2]&127;q=ie(c[f>
x3e;2]|0)|0;a=c[j>>2]|0;c[j>>2]=a+1;b[(c[n>>2]|0)+(a<<1)>>1]=q;c[h>>
2]=q&65535;if((c[o>>2]|0)<1)break;if(((c[j>>2]|0)+(c[o>>2]|0)|0)>=(c[m>>2
]|0))break;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[o>>2]|0))continue a;a=(ie(c[f>>2]|
0)|0)&65535;a=(c[h>>2]|0)+a|0;c[h>>2]=a;q=c[j>>2]|0;c[j>>2]=q+1;b[(c[n>>2
]|0)+(q<<1)>>1]=a;c[k>>2]=(c[k>>2]|0)+1}}else{q=(he(c[f>>2]|0)|0)&255;a=c
[j>>2]|0;c[j>>2]=a+1;b[(c[n>>2]|0)+(a<<1)>>1]=q;c[h>>2]=q&65535
;if((c[o>>2]|0)<1)break;if(((c[j>>2]|0)+(c[o>>2]|0)|0)>=(c[m>>2]|0))break;c[k
x3e;>2]=0;while(1){if((c[k>>2]|0)>=(c[o>>2]|0))continue a;a=(he(c[f>>2]|0)|0)&255;a
=(c[h>>2]|0)+a|0;c[h>>2]=a;q=c[j>>2]|0;c[j>>2]=q+1;b[(c[n>>2]|0)+(q<<
;1)>>1]=a;c[k>>2]=(c[k>>2]|0)+1}}}c[e>>2]=c[n>>2];q=c[e>>2]|0;i=p;return
q|0}function De(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;n=i;i=i+48|0;k=n+32|0;e=n+28|0;f=n+24|0;l=n+20|0;j
=n+16|0;g=n+12|0;h=n+8|0;m=n+4|0;o=n;c[e>>2]=a;c[f>>2]=d;c[l>>2]=0;c[m>>2]=c[(c[e>
x3e;2]|0)+28>>2];c[o>>2]=0;c[o>>2]=c[o>>2];c[l>>2]=hc(c[m>>2]|0,2,0,
c[f>>2]|0,0,o)|0;if(c[o>>2]|0){c[k>>2]=0;o=c[k>>2]|0;i=n;return o|0}c[g>>2]=0;
while(1){if((c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0){e=19;break}c[j>>2
]=(he(c[e>>2]|0)|0)&255;a:do if(!(c[j>>2]&128|0)){o=(c[j>>2]&64|0)!=0;c[h>>
;2]=0;if(o)while(1){if((c[h>>2]|0)>>>0>(c[j>>2]&63)>>>0)break a;if((
c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break a;a=ie(c[e>>2]|0)|0;o=c[g
>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=a;c[h>>2]=(c[h>>
;2]|0)+1}else while(1){if((c[h>>2]|0)>>>0>(c[j>>2]&63)>>>0)break a;if
((c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break a;a=(he(c[e>>2]|0)|0)
x3c;<24>>24;o=c[g>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=a;
c[h>>2]=(c[h>>2]|0)+1}}else{c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>(c
[j>>2]&63)>>>0)break a;if((c[g>>2]|0)>>>0>=(c[f>>2]|0)>
;>>0)break a;o=c[g>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=0;c[h
x3e;>2]=(c[h>>2]|0)+1}}while(0);if((c[h>>2]|0)>>>0<=(c[j>>2]&63)>
;>>0){e=18;break}}if((e|0)==18){Fb(c[m>>2]|0,c[l>>2]|0);c[l>>2]=0;c[k>>2]=0;o=
c[k>>2]|0;i=n;return o|0}else if((e|0)==19){c[k>>2]=c[l>>2];o=c[k>>2]|0;i=n;return o|0}return
0}function Ee(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,t=0,u=0;u=i;i=i+48|0;g=u+44|0;h=u+40
|0;j=u+36|0;n=u+32|0;s=u+28|0;m=u+24|0;r=u+20|0;o=u+16|0;p=u+12|0;k=u+8|0;l=u+4|0;q=u;c[g>>2]=b;c[h>>2]=d;c[
j>>2]=f;c[n>>2]=0;c[s>>2]=0;c[q>>2]=c[(c[g>>2]|0)+100>>2];if((c[(c[g
>>2]|0)+712>>2]|0)==0?(d=xe(c[g>>2]|0,0)|0,c[n>>2]=d,d|0):0){r=c[q>>2]|0;t=c[s
>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}c[m>>2]=c[(c[g>>2]|0)+712
x3e;>2];c[r>>2]=c[(c[m>>2]|0)+8>>2];if((c[h>>2]|0)!=(c[c[r>>2]>>
;2]|0)){c[n>>2]=6;r=c[q>>2]|0;t=c[s>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return
t|0}c[s>>2]=hc(c[q>>2]|0,4,0,c[c[r>>2]>>2]|0,0,n)|0;if(c[n>>2]|0){r=c[q>
x3e;2]|0;t=c[s>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}c[k>>2]=c[(c[r>
x3e;2]|0)+12>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[c[r>>2]
x3e;>2]|0)>>>0)break;if((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|0)>(c[(
c[k>>2]|0)+12>>2]|0)){t=10;break}if((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|
0)<(c[(c[k>>2]|0)+4>>2]|0)){t=10;break}do if((c[(c[j>>2]|0)+(c[o>>2]<<2)
x3e;>2]|0)>=(c[(c[k>>2]|0)+8>>2]|0)){f=c[o>>2]|0;if((c[(c[k>>2]|0)+12>>
;2]|0)==(c[(c[k>>2]|0)+8>>2]|0)){c[(c[s>>2]|0)+(f<<2)>>2]=0;break}else{d=xb((c
[(c[j>>2]|0)+(f<<2)>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0,65536,(c[(c[k>>
2]|0)+12>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0)|0;c[(c[s>>2]|0)+(c[o>>2]<<
;2)>>2]=d;break}}else{d=0-(xb((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[k>
x3e;2]|0)+8>>2]|0)|0,65536,(c[(c[k>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0)|
0)|0;c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]=d}while(0);c[o>>2]=(c[o>>2]|0)+1
;c[k>>2]=(c[k>>2]|0)+24}if((t|0)==10){c[n>>2]=6;r=c[q>>2]|0;t=c[s>>2]|0;Fb(r,t
);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}if(!(a[(c[m>>2]|0)+16>>0]|0))Fe(c[g>>2]|
0);a:do if(c[(c[m>>2]|0)+20>>2]|0){c[l>>2]=c[(c[m>>2]|0)+20>>2];c[o>>
;2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[c[r>>2]>>2]|0)>>>0)break
a;c[p>>2]=1;while(1){if((c[p>>2]|0)>>>0>=(e[c[l>>2]>>1]|0)>>
;>0)break;if((c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]|0)<(c[(c[(c[l>>2]|0)+4
x3e;>2]|0)+(c[p>>2]<<3)>>2]|0)){t=25;break}c[p>>2]=(c[p>>2]|0)+1}if((t|0)==
25){t=0;m=xb((c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[(c[l>>2]|0)+4>>
;2]|0)+((c[p>>2]|0)-1<<3)>>2]|0)|0,65536,(c[(c[(c[l>>2]|0)+4>>2]|0)+(c[p>
x3e;2]<<3)>>2]|0)-(c[(c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1<<3)>
;>2]|0)|0)|0;m=xb(m,(c[(c[(c[l>>2]|0)+4>>2]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(
c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1<<3)+4>>2]|0)|0,65536)|0;c[(c[s>>
;2]|0)+(c[o>>2]<<2)>>2]=m+(c[(c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1
x3c;<3)+4>>2]|0)}c[o>>2]=(c[o>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+8}}while(0);c[
n>>2]=we(c[g>>2]|0,c[h>>2]|0,c[s>>2]|0)|0;r=c[q>>2]|0;t=c[s>>2]|0;Fb
(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|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,p=0,
q=0,r=0;q=i;i=i+48|0;r=q+40|0;p=q+36|0;o=q+32|0;m=q+28|0;j=q+24|0;g=q+20|0;l=q+16|0;f=q+12|0;h=q+8|0;n=q+4|0;k=q;c[r>>
2]=d;c[p>>2]=c[(c[r>>2]|0)+104>>2];c[o>>2]=c[(c[p>>2]|0)+28>>2];c[m
x3e;>2]=c[(c[r>>2]|0)+712>>2];c[g>>2]=0;c[g>>2]=c[g>>2];a[(c[m>>
;2]|0)+16>>0]=1;d=Wa[c[(c[r>>2]|0)+508>>2]&31](c[r>>2]|0,1635148146,c[p>>
2]|0,k)|0;c[g>>2]=d;if(d|0){i=q;return}r=ee(c[p>>2]|0,c[k>>2]|0)|0;c[g>>2]=r;if(r|0){i=q
;return}c[l>>2]=je(c[p>>2]|0)|0;c[f>>2]=je(c[p>>2]|0)|0;a:do if(((c[l>>2]|0)==
65536?(c[f>>2]|0)==(c[c[(c[m>>2]|0)+8>>2]>>2]|0):0)?(r=hc(c[o>>2]|0,8,0,c[f>
;>2]|0,0,g)|0,c[(c[m>>2]|0)+20>>2]=r,(c[g>>2]|0)==0):0){c[j>>2]=c[(c[m>>2
]|0)+20>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[f>>2]|0))break a;r=ie(c[p>
x3e;2]|0)|0;b[c[j>>2]>>1]=r;r=hc(c[o>>2]|0,8,0,e[c[j>>2]>>1]|0,0,g)|0;c[(c[j
x3e;>2]|0)+4>>2]=r;if(c[g>>2]|0)break;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(e[c[
j>>2]>>1]|0|0))break;r=(ie(c[p>>2]|0)|0)<<16>>16<<2;c[(c[(c[j>
x3e;2]|0)+4>>2]|0)+(c[n>>2]<<3)>>2]=r;r=(ie(c[p>>2]|0)|0)<<16>
x3e;16<<2;c[(c[(c[j>>2]|0)+4>>2]|0)+(c[n>>2]<<3)+4>>2]=r;c[n>
x3e;2]=(c[n>>2]|0)+1}c[h>>2]=(c[h>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+8}c[n>>
;2]=(c[h>>2]|0)-1;while(1){f=c[o>>2]|0;if((c[n>>2]|0)<0)break;Fb(f,c[(c[(c[m>>2]|0)+
20>>2]|0)+(c[n>>2]<<3)+4>>2]|0);c[(c[(c[m>>2]|0)+20>>2]|0)+(c[n>
;>2]<<3)+4>>2]=0;c[n>>2]=(c[n>>2]|0)+-1}Fb(f,c[(c[m>>2]|0)+20>>
2]|0);c[(c[m>>2]|0)+20>>2]=0;c[(c[m>>2]|0)+20>>2]=0}while(0);ge(c[p>>2]|0);i=q
;return}function Ge(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;p=i;i=i+32|0;h=p+28|0;j=p+24|0;g=p+20|0;k=p
+16|0;n=p+12|0;o=p+8|0;l=p+4|0;m=p;c[j>>2]=a;c[g>>2]=e;c[k>>2]=f;c[o>>2]=0;c[n>>
;2]=0;do if((c[g>>2]|0)>>>0<(c[(c[j>>2]|0)+732>>2]|0)>>>0){a=c[(
c[j>>2]|0)+736>>2]|0;f=c[g>>2]|0;if(b[(c[j>>2]|0)+160+50>>1]|0){c[l>>
;2]=a+(f<<2);c[m>>2]=(c[(c[j>>2]|0)+736>>2]|0)+(c[(c[j>>2]|0)+732>>2
]<<2);c[l>>2]=(c[l>>2]|0)+4;c[n>>2]=d[(c[l>>2]|0)+-4>>0]<<
24|d[(c[l>>2]|0)+-4+1>>0]<<16|d[(c[l>>2]|0)+-4+2>>0]<<8|d[(c[l>
x3e;2]|0)+-4+3>>0]<<0;c[o>>2]=c[n>>2];if(((c[l>>2]|0)+4|0)>>>0
x3e;(c[m>>2]|0)>>>0)break;c[l>>2]=(c[l>>2]|0)+4;c[o>>2]=d[(c[l>>
;2]|0)+-4>>0]<<24|d[(c[l>>2]|0)+-4+1>>0]<<16|d[(c[l>>2]|0)+-4+2>
;>0]<<8|d[(c[l>>2]|0)+-4+3>>0]<<0;break}c[l>>2]=a+(f<<1);c[m>
;>2]=(c[(c[j>>2]|0)+736>>2]|0)+(c[(c[j>>2]|0)+732>>2]<<1);c[l>>
2]=(c[l>>2]|0)+2;c[n>>2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>
x3e;2]|0)+-2+1>>0]&65535)<<0)&65535;c[o>>2]=c[n>>2];if(((c[l>>2]|0)+
2|0)>>>0<=(c[m>>2]|0)>>>0){c[l>>2]=(c[l>>2]|0)+2;c[o>>
;2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>>2]|0)+-2+1>>0]&65535)
x3c;<0)&65535}c[n>>2]=c[n>>2]<<1;c[o>>2]=c[o>>2]<<1}while(
0);if((c[n>>2]|0)>>>0>=(c[(c[j>>2]|0)+704>>2]|0)>>>0){c[c[k>
;>2]>>2]=0;c[h>>2]=0;o=c[h>>2]|0;i=p;return o|0}if((c[o>>2]|0)>>>0
x3e;=(c[(c[j>>2]|0)+704>>2]|0)>>>0)c[o>>2]=c[(c[j>>2]|0)+704>>2
];if((c[o>>2]|0)>>>0>=(c[n>>2]|0)>>>0)c[c[k>>2]>>2]=(
c[o>>2]|0)-(c[n>>2]|0);else c[c[k>>2]>>2]=(c[(c[j>>2]|0)+704>>2]|0)-(
c[n>>2]|0);c[h>>2]=c[n>>2];o=c[h>>2]|0;i=p;return o|0}function He(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;r=i;i=i+48|0;g=r+36|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0
;m=r+16|0;n=r+12|0;s=r+8|0;p=r+4|0;o=r;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>
x3e;2]=f;c[o>>2]=c[j>>2];c[s>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+4>>2];c[
p>>2]=Ud(c[s>>2]|0,11340)|0;do if(c[p>>2]|0){s=Kc(c[h>>2]|0,0)|0;c[n>>2]=s;if((
s|0)==0?(c[n>>2]=Za[c[(c[p>>2]|0)+4>>2]&31](c[h>>2]|0,c[o>>2]|0,c[k>
x3e;2]|0,c[l>>2]|0,c[m>>2]|0)|0,(c[n>>2]|0)==0):0){if(((c[(c[o>>2]|0)+148>>2]|
0)!=65536?(c[(c[o>>2]|0)+148>>2]|0)!=131072:0)?(c[(c[o>>2]|0)+148>>2]|0)!=1953658213:0){
q=24;break}s=(c[j>>2]|0)+8|0;c[s>>2]=c[s>>2]|2048;if((c[k>>2]|0)<0){c[g>>
2]=0;s=c[g>>2]|0;i=r;return s|0}c[n>>2]=Za[c[(c[p>>2]|0)+8>>2]&31](c[h>>2
]|0,c[o>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(!(c[n>>2]|0)){if((Ie(c[j>
;>2]|0)|0)<<24>>24){s=(c[j>>2]|0)+8|0;c[s>>2]=c[s>>2]|8192}c[n>>
;2]=Ne(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0)){if(c[(c[j>>2]|0)+8>>2]&1|0
){if(!(c[(c[(c[j>>2]|0)+128>>2]|0)+52>>2]|0))c[n>>2]=Oe(c[o>>2]|0,c[h>>
;2]|0)|0;if(!(c[n>>2]|0))c[n>>2]=ze(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0))c[n
>>2]=Pe(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0))c[n>>2]=Qe(c[o>>2]|0,
c[h>>2]|0)|0}Re(c[o>>2]|0)}}}}else q=24;while(0);if((q|0)==24)c[n>>2]=2;c[g>>2]=c[n>
;>2];s=c[g>>2]|0;i=r;return s|0}function Ie(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[e>>2]=b
;do if(c[e>>2]|0){b=c[e>>2]|0;if(c[(c[e>>2]|0)+20>>2]|0)if((Je(c[b+20>>2]|0)|0
)<<24>>24){a[d>>0]=1;break}else{a[d>>0]=0;break}else if((Ke(b)|0)<<24>>
;24){a[d>>0]=1;break}else{a[d>>0]=0;break}}else a[d>>0]=0;while(0);i=f;return a[d>>0]|0}
function Je(b){b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;f=g+8|0;d=g+4|0;e=g;c[d>>2]=b;c[e>>2]=0;while(1){if((c
[e>>2]|0)>=8){d=6;break}if(vs(c[d>>2]|0,10569+((c[e>>2]|0)*17|0)|0)|0){d=4;break}c[e>>
;2]=(c[e>>2]|0)+1}if((d|0)==4){a[f>>0]=1;f=a[f>>0]|0;i=g;return f|0}else if((d|0)==6){a[f>>
;0]=0;f=a[f>>0]|0;i=g;return f|0}return 0}function Ke(b){b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+48|0;d=
n+40|0;f=n+36|0;g=n+32|0;l=n+12|0;h=n+8|0;j=n+4|0;k=n;c[f>>2]=b;c[l>>2]=0;c[l+4>>2]=0;c[l+8>
x3e;2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[h>>2]=0;a:while(1){if((c[h>>2]|0)>=(e[(c[f>
;>2]|0)+152>>1]|0|0)){m=18;break}c[g>>2]=0;b=c[(c[(c[f>>2]|0)+156>>2]|0)+(c[h>
x3e;2]<<4)>>2]|0;b:do if((b|0)>=1718642541)if((b|0)<1886545264){switch(b|0){case 1718642541:break;
default:break b}c[k>>2]=1;m=7;break}else{switch(b|0){case 1886545264:break;default:break b}c[k>>2]=2;m=7;break
}else{switch(b|0){case 1668707360:break;default:break b}c[k>>2]=0;m=7}while(0);c:do if((m|0)==7){m=0;c[j>>2]=
0;while(1){if((c[j>>2]|0)>=5)break c;if((c[(c[(c[f>>2]|0)+156>>2]|0)+(c[h>>2]<
x3c;4)+12>>2]|0)==(c[448+((c[j>>2]|0)*24|0)+(c[k>>2]<<3)+4>>2]|0)){if(!(c[g>
;>2]|0))c[g>>2]=Le(c[f>>2]|0,c[h>>2]&65535)|0;if((c[448+((c[j>>2]|0)*24|0)+(c[
k>>2]<<3)>>2]|0)==(c[g>>2]|0)){b=l+(c[j>>2]<<2)|0;c[b>>2]=(
c[b>>2]|0)+1}if((c[l+(c[j>>2]<<2)>>2]|0)==3){m=15;break a}}c[j>>2]=(c[j>
x3e;2]|0)+1}}while(0);c[h>>2]=(c[h>>2]|0)+1}if((m|0)==15){a[d>>0]=1;m=a[d>>0]|0;i=n;return
m|0}else if((m|0)==18){a[d>>0]=0;m=a[d>>0]|0;i=n;return m|0}return 0}function Le(a,d){a=a|0;d=d|0;var f=0,g
=0,h=0,j=0;j=i;i=i+16|0;f=j+4|0;g=j;h=j+8|0;c[g>>2]=a;b[h>>1]=d;if(c[(c[(c[g>>2]|0)+156>>
;2]|0)+((e[h>>1]|0)<<4)+4>>2]|0){c[f>>2]=c[(c[(c[g>>2]|0)+156>>2]|0)+((
e[h>>1]|0)<<4)+4>>2];d=c[f>>2]|0;i=j;return d|0}if(!(c[(c[g>>2]|0)+508>
x3e;2]|0)){c[f>>2]=0;d=c[f>>2]|0;i=j;return d|0}if(Wa[c[(c[g>>2]|0)+508>>2]&31](c[g
>>2]|0,c[(c[(c[g>>2]|0)+156>>2]|0)+((e[h>>1]|0)<<4)>>2]|0,c[(c[g>
;>2]|0)+104>>2]|0,0)|0){c[f>>2]=Me(c[(c[g>>2]|0)+104>>2]|0,c[(c[(c[g>>2]|
0)+156>>2]|0)+((e[h>>1]|0)<<4)+12>>2]|0)|0;d=c[f>>2]|0;i=j;return d|0}else{c[f
>>2]=0;d=c[f>>2]|0;i=j;return d|0}return 0}function Me(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+
32|0;d=j+20|0;e=j+16|0;f=j+12|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;a=ee(c[e>>2]|0
,c[f>>2]|0)|0;c[j+8>>2]=a;if(a|0){c[d>>2]=0;h=c[d>>2]|0;i=j;return h|0}while(1){if((c[f
x3e;>2]|0)>>>0<=3)break;a=je(c[e>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+a;c[f>
x3e;2]=(c[f>>2]|0)-4}c[h>>2]=3;while(1){b=c[e>>2]|0;if((c[f>>2]|0)>>>0<
;=0)break;a=(he(b)|0)&255;c[g>>2]=(c[g>>2]|0)+(a<<(c[h>>2]<<3));c[f>
x3e;2]=(c[f>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+-1}ge(b);c[d>>2]=c[g>>2];h=c[d>
x3e;2]|0;i=j;return h|0}function Ne(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;s=i;i=i+48|0;f=s+44
|0;g=s+40|0;h=s+36|0;j=s+32|0;l=s+28|0;r=s+24|0;m=s+20|0;n=s+16|0;q=s+12|0;p=s+8|0;o=s+4|0;k=s;c[g>>2]=b;c[h>>
;2]=e;c[l>>2]=c[(c[h>>2]|0)+28>>2];c[j>>2]=Wa[c[(c[g>>2]|0)+508>>2]
x26;31](c[g>>2]|0,1751412088,c[h>>2]|0,q)|0;if((c[j>>2]|0)!=0|(c[q>>2]|0)>>>
;0<8){c[f>>2]=0;r=c[f>>2]|0;i=s;return r|0}e=de(c[h>>2]|0,c[q>>2]|0,(c[g>>
;2]|0)+740|0)|0;c[j>>2]=e;do if(!e){c[o>>2]=c[(c[g>>2]|0)+740>>2];c[k>>2]=(c[o
>>2]|0)+(c[q>>2]|0);c[o>>2]=(c[o>>2]|0)+2;c[r>>2]=(((d[(c[o>>2]|0)+-
2>>0]|0)&65535)<<8|((d[(c[o>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535
;c[o>>2]=(c[o>>2]|0)+2;c[n>>2]=(((d[(c[o>>2]|0)+-2>>0]|0)&65535)<<
;8|((d[(c[o>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[o>>2]=(c[o>>2]|0)+
4;c[p>>2]=(d[(c[o>>2]|0)+-4>>0]|0)<<24|(d[(c[o>>2]|0)+-4+1>>0]|0)<
;<16|(d[(c[o>>2]|0)+-4+2>>0]|0)<<8|(d[(c[o>>2]|0)+-4+3>>0]|0)<<
0;if((c[p>>2]|0)>>>0>=4294901760)c[p>>2]=c[p>>2]&65535;if(!((c[r>>
;2]|0)!=0|(c[n>>2]|0)>>>0>255|(c[p>>2]|0)>>>0>65537)){r=hc(c[l>
x3e;2]|0,1,0,c[n>>2]|0,0,j)|0;c[(c[g>>2]|0)+756>>2]=r;if(!(c[j>>2]|0)){c[m>>2]=
0;while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;if(((c[o>>
2]|0)+(c[p>>2]|0)|0)>>>0>(c[k>>2]|0)>>>0)break;a[(c[(c[g>>2]|0)+
756>>2]|0)+(c[m>>2]|0)>>0]=a[c[o>>2]>>0]|0;c[o>>2]=(c[o>>2
]|0)+(c[p>>2]|0);c[m>>2]=(c[m>>2]|0)+1}c[(c[g>>2]|0)+748>>2]=c[m>>2];
c[(c[g>>2]|0)+744>>2]=c[q>>2];c[(c[g>>2]|0)+752>>2]=c[p>>2];break}}else
c[j>>2]=3;fe(c[h>>2]|0,(c[g>>2]|0)+740|0);c[(c[g>>2]|0)+744>>2]=0}while(0);c[
f>>2]=c[j>>2];r=c[f>>2]|0;i=s;return r|0}function Oe(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,q=0,r=0;r=i;i=i+48|0;g=r+40|0;h=r+36|0;m=r+32|0;q=r+28|0;f=r+24|0;o=r+20|0;l=r+16|0;n=r+12|0;p=r+8|0;k=r+4|0;j=r
;c[g>>2]=a;c[h>>2]=d;c[m>>2]=Wa[c[(c[g>>2]|0)+508>>2]&31](c[g>>
2]|0,1735162214,c[h>>2]|0,(c[g>>2]|0)+704|0)|0;if((c[m>>2]|0)!=142){if(c[m>>2]|0){q=c[m
x3e;>2]|0;i=r;return q|0}}else c[(c[g>>2]|0)+704>>2]=0;c[m>>2]=Wa[c[(c[g>>2]|0)+508
>>2]&31](c[g>>2]|0,1819239265,c[h>>2]|0,q)|0;if(c[m>>2]|0){c[m>>2]=144;q=
c[m>>2]|0;i=r;return q|0}do if(b[(c[g>>2]|0)+160+50>>1]|0){c[f>>2]=2;if((c[q>>
2]|0)>>>0<262144){c[(c[g>>2]|0)+732>>2]=(c[q>>2]|0)>>>(c[f>
;>2]|0);break}c[m>>2]=8;q=c[m>>2]|0;i=r;return q|0}else{c[f>>2]=1;if((c[q>>2]|0)>
;>>0<131072){c[(c[g>>2]|0)+732>>2]=(c[q>>2]|0)>>>(c[f>>2]|
0);break}c[m>>2]=8;q=c[m>>2]|0;i=r;return q|0}while(0);if((c[(c[g>>2]|0)+732>>2]|0)!=(c[(
c[g>>2]|0)+16>>2]|0)?(c[(c[g>>2]|0)+732>>2]|0)>>>0<(c[(c[g>>
;2]|0)+16>>2]|0)>>>0:0){c[o>>2]=c[(c[g>>2]|0)+16>>2]<<c[f>
x3e;2];c[l>>2]=c[(c[g>>2]|0)+156>>2];c[n>>2]=(c[l>>2]|0)+(e[(c[g>>2]|
0)+152>>1]<<4);c[p>>2]=Mc(c[h>>2]|0)|0;c[k>>2]=2147483647;while(1){a=c[l>
x3e;2]|0;if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[j>>2]=(c[a
+8>>2]|0)-(c[p>>2]|0);if((c[j>>2]|0)>0?(c[j>>2]|0)<(c[k>>2]|0):0)c[k
>>2]=c[j>>2];c[l>>2]=(c[l>>2]|0)+16}if((a|0)==(c[n>>2]|0))c[k>>2]=(c
[(c[h>>2]|0)+4>>2]|0)-(c[p>>2]|0);if((c[o>>2]|0)<=(c[k>>2]|0)){c[(c[g>
;>2]|0)+732>>2]=c[(c[g>>2]|0)+16>>2];c[q>>2]=c[o>>2]}}c[m>>2]=de
(c[h>>2]|0,c[q>>2]|0,(c[g>>2]|0)+736|0)|0;q=c[m>>2]|0;i=r;return q|0}function Pe(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>
;2]=Wa[c[(c[d>>2]|0)+508>>2]&31](c[d>>2]|0,1718642541,c[e>>2]|0,g)|0;if(c[f>
x3e;2]|0){c[(c[d>>2]|0)+656>>2]=0;c[(c[d>>2]|0)+652>>2]=0;c[f>>2]=0;g=c[f>
;>2]|0;i=h;return g|0}else{c[(c[d>>2]|0)+652>>2]=c[g>>2];c[f>>2]=de(c[e>>
2]|0,c[g>>2]|0,(c[d>>2]|0)+656|0)|0;g=c[f>>2]|0;i=h;return g|0}return 0}function Qe(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Wa
[c[(c[d>>2]|0)+508>>2]&31](c[d>>2]|0,1886545264,c[e>>2]|0,g)|0;if(c[f>>2]|
0){c[(c[d>>2]|0)+664>>2]=0;c[(c[d>>2]|0)+660>>2]=0;c[f>>2]=0;g=c[f>>
2]|0;i=h;return g|0}else{c[(c[d>>2]|0)+660>>2]=c[g>>2];c[f>>2]=de(c[e>>2]|0,c[
g>>2]|0,(c[d>>2]|0)+664|0)|0;g=c[f>>2]|0;i=h;return g|0}return 0}function Re(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)+512>>2]=22;c[(c[d>>2]|0)+520>>2]=34;c
[(c[d>>2]|0)+524>>2]=35;c[(c[d>>2]|0)+528>>2]=36;c[(c[d>>2]|0)+516>>
2]=34;i=b;return}function Se(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;g=l+20|0
;n=l+16|0;m=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=a;c[n>>2]=b;c[m>>2]=d;c[h>>2]=e;c[k>
x3e;2]=c[(c[g>>2]|0)+24>>2];c[n>>2]=c[n>>2];d=Kc(c[k>>2]|0,c[m>>2]|0
)|0;c[j>>2]=d;if((d|0)==0?(n=ee(c[k>>2]|0,c[h>>2]|0)|0,c[j>>2]=n,(n|0)==0):0){c[(c[g>
;>2]|0)+200>>2]=c[(c[k>>2]|0)+32>>2];c[(c[g>>2]|0)+204>>2]=c[(c[k>
x3e;2]|0)+36>>2];c[f>>2]=0;n=c[f>>2]|0;i=l;return n|0}c[f>>2]=c[j>>2];n=c[f>
;>2]|0;i=l;return n|0}function Te(e){e=e|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;f=j+12|0;g=j+8|0;h=j+4|0;k=j;c[g>>
;2]=e;c[h>>2]=c[(c[g>>2]|0)+200>>2];c[k>>2]=c[(c[g>>2]|0)+204>>2];if
(((c[h>>2]|0)+10|0)>>>0>(c[k>>2]|0)>>>0){c[f>>2]=20;k=c[f>
x3e;2]|0;i=j;return k|0}else{c[h>>2]=(c[h>>2]|0)+2;b[(c[g>>2]|0)+32>>1]=a[(c[h>>
;2]|0)+-2>>0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0;c[h>
;>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36>>2]=((a[(c[h>>2]|0)+-2>>0]<<
;16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<16>>16;
c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+4>>2]=((a[(c[h>>2]|0)+-2>>0]
x3c;<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<16>
x3e;16;c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+8>>2]=((a[(c[h>>2]|0)+-2>
x3e;0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<
16>>16;c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+12>>2]=((a[(c[h>>2]|0)+-
2>>0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<
;<16>>16;c[(c[g>>2]|0)+200>>2]=c[h>>2];c[f>>2]=0;k=c[f>>2]|0;i=
j;return k|0}return 0}function Ue(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,z=0,A=0,B
=0,C=0,D=0,E=0,F=0,G=0,H=0;H=i;i=i+96|0;j=H+72|0;o=H+68|0;A=H+64|0;v=H+60|0;u=H+56|0;w=H+52|0;z=H+48|0;r=H+44|0;x=H+78|0;y=H+40|
0;s=H+36|0;t=H+32|0;k=H+83|0;n=H+82|0;B=H+28|0;C=H+24|0;D=H+20|0;l=H+16|0;m=H+12|0;g=H+76|0;E=H+8|0;F=H+4|0;p=H+81|0;G=H;q=H+80|
0;c[j>>2]=f;c[A>>2]=c[(c[j>>2]|0)+200>>2];c[v>>2]=c[(c[j>>2]|0)+204
x3e;>2];c[u>>2]=c[(c[j>>2]|0)+12>>2];c[w>>2]=b[(c[j>>2]|0)+32>>
1];c[r>>2]=c[c[j>>2]>>2];c[E>>2]=0;if((c[w>>2]|0)!=0?((b[(c[u>>2]|0)+
20>>1]|0)+(b[(c[u>>2]|0)+56>>1]|0)+(c[w>>2]|0)|0)>>>0>(c[(c[u>
x3e;2]|0)+8>>2]|0)>>>0:0)f=kc(c[u>>2]|0,0,c[w>>2]|0)|0;else f=0;c[o>>2]=f
;if(c[o>>2]|0){G=c[o>>2]|0;i=H;return G|0}c[l>>2]=c[(c[u>>2]|0)+56+12>>2];c[m
x3e;>2]=(c[l>>2]|0)+(c[w>>2]<<1);a:do if((c[w>>2]|0)<4095?((c[A>>2]|
0)+((c[w>>2]|0)+1<<1)|0)>>>0<=(c[v>>2]|0)>>>0:0){c[A>>
;2]=(c[A>>2]|0)+2;b[g>>1]=(d[(c[A>>2]|0)+-2>>0]&65535)<<8|(d[(c[A>
x3e;2]|0)+-2+1>>0]&65535)<<0;if((c[w>>2]|0)>0)b[c[l>>2]>>1]=b[g>
;>1]|0;c[l>>2]=(c[l>>2]|0)+2;while(1){if((c[l>>2]|0)>>>0>=(c[m>>
;2]|0)>>>0)break;c[A>>2]=(c[A>>2]|0)+2;b[c[l>>2]>>1]=(d[(c[A>>2
]|0)+-2>>0]&65535)<<8|(d[(c[A>>2]|0)+-2+1>>0]&65535)<<0;if((b[c[l>
;>2]>>1]|0)<=(b[g>>1]|0)){h=12;break}b[g>>1]=b[c[l>>2]>>1]|0;c[l>
;>2]=(c[l>>2]|0)+2}if((h|0)==12){c[o>>2]=8;G=c[o>>2]|0;i=H;return G|0}c[y>>2]=0;if((
c[w>>2]|0)>0?(c[y>>2]=(b[(c[l>>2]|0)+-2>>1]|0)+1,(c[y>>2]|0)<0):0)break
;if(((c[y>>2]|0)+4|0)!=0?((b[(c[u>>2]|0)+20+2>>1]|0)+(b[(c[u>>2]|0)+56+2>>1]|0
)+((c[y>>2]|0)+4)|0)>>>0>(c[(c[u>>2]|0)+4>>2]|0)>>>0:0)f=kc(c[u
>>2]|0,(c[y>>2]|0)+4|0,0)|0;else f=0;c[o>>2]=f;if(c[o>>2]|0){G=c[o>>2]|0;i=H;return
G|0}c[z>>2]=(c[u>>2]|0)+56;c[l>>2]=(c[(c[z>>2]|0)+12>>2]|0)+2;while(1){if((c[
l>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;if((b[(c[l>>2]|0)+-2>
x3e;1]|0)>=(b[c[l>>2]>>1]|0))break a;c[l>>2]=(c[l>>2]|0)+2}c[(c[(c[j>>2]|
0)+8>>2]|0)+140>>2]=0;c[(c[(c[j>>2]|0)+8>>2]|0)+136>>2]=0;if(((c[A>>
2]|0)+2|0)>>>0<=(c[v>>2]|0)>>>0){c[A>>2]=(c[A>>2]|0)+2;b[x>
;>1]=(d[(c[A>>2]|0)+-2>>0]&65535)<<8|(d[(c[A>>2]|0)+-2+1>>0]&65535
)<<0;if((e[x>>1]|0)>(e[(c[r>>2]|0)+260+26>>1]|0)){c[o>>2]=22;G=c[o>
x3e;2]|0;i=H;return G|0}if(((c[v>>2]|0)-(c[A>>2]|0)|0)<(e[x>>1]|0)){c[o>>2]=22;G=c[
o>>2]|0;i=H;return G|0}if(!(c[(c[j>>2]|0)+16>>2]&2)){c[(c[(c[j>>2]|0)+8>>
2]|0)+140>>2]=e[x>>1];c[(c[(c[j>>2]|0)+8>>2]|0)+136>>2]=c[(c[(c[j>>2
]|0)+160>>2]|0)+392>>2];Ss(c[(c[(c[j>>2]|0)+160>>2]|0)+392>>2]|0,c[A>>
;2]|0,e[x>>1]|0)|0}c[A>>2]=(c[A>>2]|0)+(e[x>>1]|0);c[s>>2]=c[(c[z>>2
]|0)+8>>2];c[t>>2]=(c[s>>2]|0)+(c[y>>2]|0);b:while(1){if((c[s>>2]|0)>>
;>0>=(c[t>>2]|0)>>>0)break;if(((c[A>>2]|0)+1|0)>>>0>(c[v>
x3e;2]|0)>>>0)break a;r=c[A>>2]|0;c[A>>2]=r+1;r=a[r>>0]|0;a[k>>0]=r;x=c[s
>>2]|0;c[s>>2]=x+1;a[x>>0]=r;if(!(d[k>>0]&8))continue;if(((c[A>>2]|0)+1|0
)>>>0>(c[v>>2]|0)>>>0)break a;x=c[A>>2]|0;c[A>>2]=x+1;a[n>
x3e;0]=a[x>>0]|0;if(((c[s>>2]|0)+(d[n>>0]|0)|0)>>>0>(c[t>>2]|0)>
;>>0)break a;while(1){if((d[n>>0]|0)<=0)continue b;r=a[k>>0]|0;x=c[s>>2]|0;c[s>
;>2]=x+1;a[x>>0]=r;a[n>>0]=(a[n>>0]|0)+-1<<24>>24}}c[B>>2]=c[(c
[z>>2]|0)+4>>2];c[C>>2]=(c[B>>2]|0)+(c[y>>2]<<3);c[s>>2]=c
[(c[z>>2]|0)+8>>2];c[D>>2]=0;if(((c[A>>2]|0)+(c[E>>2]|0)|0)>>>0
<=(c[v>>2]|0)>>>0){while(1){if((c[B>>2]|0)>>>0>=(c[C>>2]|0
)>>>0)break;c[F>>2]=0;a[p>>0]=a[c[s>>2]>>0]|0;if(d[p>>0]&2
|0){if(((c[A>>2]|0)+1|0)>>>0>(c[v>>2]|0)>>>0)break a;E=c[A>>2]|
0;c[A>>2]=E+1;c[F>>2]=d[E>>0];if(!(d[p>>0]&16))c[F>>2]=0-(c[F>>
2]|0)}else if(!(d[p>>0]&16)){if(((c[A>>2]|0)+2|0)>>>0>(c[v>>2]|0)>
x3e;>0)break a;c[A>>2]=(c[A>>2]|0)+2;c[F>>2]=((a[(c[A>>2]|0)+-2>>0]<
x3c;16>>16<<8|d[(c[A>>2]|0)+-2+1>>0]<<0)&65535)<<16>>
16}c[D>>2]=(c[D>>2]|0)+(c[F>>2]|0);c[c[B>>2]>>2]=c[D>>2];a[c[s>
x3e;2]>>0]=d[p>>0]&-19;c[B>>2]=(c[B>>2]|0)+8;c[s>>2]=(c[s>>2]|0
)+1}c[B>>2]=c[(c[u>>2]|0)+56+4>>2];c[C>>2]=(c[B>>2]|0)+(c[y>>2]<
;<3);c[s>>2]=c[(c[z>>2]|0)+8>>2];c[D>>2]=0;while(1){if((c[B>>2]|0)>
x3e;>0>=(c[C>>2]|0)>>>0)break;c[G>>2]=0;a[q>>0]=a[c[s>>2]>
x3e;0]|0;if(d[q>>0]&4|0){if(((c[A>>2]|0)+1|0)>>>0>(c[v>>2]|0)>>
x3e;0)break a;F=c[A>>2]|0;c[A>>2]=F+1;c[G>>2]=d[F>>0];if(!(d[q>>0]&32))c[
G>>2]=0-(c[G>>2]|0)}else if(!(d[q>>0]&32)){if(((c[A>>2]|0)+2|0)>>>0
x3e;(c[v>>2]|0)>>>0)break a;c[A>>2]=(c[A>>2]|0)+2;c[G>>2]=((a[(c[A>
x3e;2]|0)+-2>>0]<<16>>16<<8|d[(c[A>>2]|0)+-2+1>>0]<<0)&
;65535)<<16>>16}c[D>>2]=(c[D>>2]|0)+(c[G>>2]|0);c[(c[B>>2]|0)+4>
;>2]=c[D>>2];a[c[s>>2]>>0]=d[q>>0]&1;c[B>>2]=(c[B>>2]|0)+8
;c[s>>2]=(c[s>>2]|0)+1}b[(c[z>>2]|0)+2>>1]=c[y>>2];b[c[z>>2]>
x3e;1]=c[w>>2];c[(c[j>>2]|0)+200>>2]=c[A>>2];G=c[o>>2]|0;i=H;return G|0}}}while
(0);c[o>>2]=20;G=c[o>>2]|0;i=H;return G|0}function Ve(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;u=i;i=i+64|0;n=u+48|0;o=u+44|0;s=u+40|0;q=u+36|0;p=u+32|0;h=u+28|0;r=u+24|0;j=u+20|0;k=u+16|0;m=u+12|0;l=u+8|0;g=
u+4|0;t=u;c[n>>2]=f;c[s>>2]=c[(c[n>>2]|0)+200>>2];c[q>>2]=c[(c[n>>2]|
0)+204>>2];c[p>>2]=c[(c[n>>2]|0)+12>>2];c[r>>2]=0;while(1){c[o>>2]=lc
(c[p>>2]|0,(c[r>>2]|0)+1|0)|0;if(c[o>>2]|0){f=24;break}if(((c[s>>2]|0)+4|0)>>
x3e;0>(c[q>>2]|0)>>>0){f=25;break}c[h>>2]=(c[(c[p>>2]|0)+56+32>>2]|0
)+(c[r>>2]<<5);c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+8>>2]=0;c[s>
;>2]=(c[s>>2]|0)+2;b[(c[h>>2]|0)+4>>1]=(d[(c[s>>2]|0)+-2>>0]&65535)
x3c;<8|(d[(c[s>>2]|0)+-2+1>>0]&65535)<<0;c[s>>2]=(c[s>>2]|0)+2;c[c[h
>>2]>>2]=((d[(c[s>>2]|0)+-2>>0]&65535)<<8|(d[(c[s>>2]|0)+-2+1
x3e;>0]&65535)<<0)&65535;c[g>>2]=2;if(e[(c[h>>2]|0)+4>>1]&1|0)c[g>
;>2]=(c[g>>2]|0)+2;do if(!(e[(c[h>>2]|0)+4>>1]&8|0)){if(e[(c[h>>2]|0)+4>
x3e;1]&64|0){c[g>>2]=(c[g>>2]|0)+4;break}if(e[(c[h>>2]|0)+4>>1]&128|0)c[g>
;>2]=(c[g>>2]|0)+8}else c[g>>2]=(c[g>>2]|0)+2;while(0);if(((c[s>>2]|0)+(c[g>
x3e;2]|0)|0)>>>0>(c[q>>2]|0)>>>0){f=25;break}f=c[s>>2]|0;if(e[(c[h>
x3e;2]|0)+4>>1]&1|0){c[s>>2]=f+2;c[(c[h>>2]|0)+8>>2]=((a[(c[s>>2]|0)+-2
x3e;>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<
x3c;16>>16;c[s>>2]=(c[s>>2]|0)+2;c[(c[h>>2]|0)+12>>2]=((a[(c[s>>2]|0
)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)
x3c;<16>>16}else{c[s>>2]=f+1;c[(c[h>>2]|0)+8>>2]=a[f>>0];f=c[s>>
;2]|0;c[s>>2]=f+1;c[(c[h>>2]|0)+12>>2]=a[f>>0]}c[m>>2]=65536;c[j>>2]=
65536;c[l>>2]=0;c[k>>2]=0;do if(!(e[(c[h>>2]|0)+4>>1]&8|0)){if(e[(c[h>>2]|
0)+4>>1]&64|0){c[s>>2]=(c[s>>2]|0)+2;c[j>>2]=((a[(c[s>>2]|0)+-2>>
;0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<<16
x3e;>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[m>>2]=((a[(c[s>>2]|0)+-2>>0]
x3c;<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<<16>
x3e;16<<2;break}if(e[(c[h>>2]|0)+4>>1]&128|0){c[s>>2]=(c[s>>2]|0)+2;c[j
x3e;>2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>
;>0]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[l>
x3e;2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>
;0]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[k>>
2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0
]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[m>>2]=((
a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<
;<0)&65535)<<16>>16<<2}}else{c[s>>2]=(c[s>>2]|0)+2;c[j>>2]=((
a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<
;<0)&65535)<<16>>16<<2;c[m>>2]=c[j>>2]}while(0);c[(c[h>>2]|
0)+16>>2]=c[j>>2];c[(c[h>>2]|0)+16+4>>2]=c[k>>2];c[(c[h>>2]|0)+16+8
x3e;>2]=c[l>>2];c[(c[h>>2]|0)+16+12>>2]=c[m>>2];c[r>>2]=(c[r>>2
]|0)+1;if(!(e[(c[h>>2]|0)+4>>1]&32)){f=23;break}}if((f|0)==23){c[(c[p>>2]|0)+56+28>>
;2]=c[r>>2];c[t>>2]=c[(c[n>>2]|0)+24>>2];t=Mc(c[t>>2]|0)|0;c[(c[n>>2
]|0)+168>>2]=(c[s>>2]|0)+t-(c[q>>2]|0);c[(c[n>>2]|0)+200>>2]=c[s>>2];
t=c[o>>2]|0;i=u;return t|0}else if((f|0)==24){t=c[o>>2]|0;i=u;return t|0}else if((f|0)==25){c[o>>2
]=21;t=c[o>>2]|0;i=u;return t|0}return 0}function We(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];ge(c[d>>2]|0);i=b;return}function Xe(a){a=a|0;var b=0,
d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[b>>2]=a;c[d>>2]=c[b>>2];if
(!(c[d>>2]|0)){i=h;return}c[e>>2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[b>
x3e;2]|0)+104>>2];c[f>>2]=c[(c[d>>2]|0)+532>>2];if(c[(c[d>>2]|0)+692+4>
x3e;2]|0)Va[c[(c[d>>2]|0)+692+4>>2]&63](c[(c[d>>2]|0)+692>>2]|0);if(c[f>>
2]|0)Va[c[(c[f>>2]|0)+12>>2]&63](c[d>>2]|0);Ye(c[d>>2]|0);Ze(c[d>>2]|0);Fb
(c[e>>2]|0,c[(c[d>>2]|0)+672>>2]|0);c[(c[d>>2]|0)+672>>2]=0;c[(c[d>>
2]|0)+668>>2]=0;fe(c[g>>2]|0,(c[d>>2]|0)+656|0);fe(c[g>>2]|0,(c[d>>2]|0)+664|0
);c[(c[d>>2]|0)+652>>2]=0;c[(c[d>>2]|0)+660>>2]=0;_e(c[e>>2]|0,c[(c[d>>
;2]|0)+712>>2]|0);c[(c[d>>2]|0)+712>>2]=0;i=h;return}function Ye(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]|0)+104>>2];fe(c[e>>2]|0,(c[d>
;>2]|0)+736|0);c[(c[d>>2]|0)+732>>2]=0;i=b;return}function Ze(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)+104>>2];c[f>>2]=c[(c[e>
;>2]|0)+28>>2];Fb(c[f>>2]|0,c[(c[d>>2]|0)+756>>2]|0);c[(c[d>>2]|0)+756>
;>2]=0;fe(c[e>>2]|0,(c[d>>2]|0)+740|0);i=b;return}function _e(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;
i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=g;return}Fb(c[d>>2]|
0,c[(c[e>>2]|0)+4>>2]|0);c[(c[e>>2]|0)+4>>2]=0;Fb(c[d>>2]|0,c[(c[e>>
2]|0)+8>>2]|0);c[(c[e>>2]|0)+8>>2]=0;if(c[(c[e>>2]|0)+20>>2]|0){c[f>>
;2]=0;while(1){b=c[d>>2]|0;if((c[f>>2]|0)>>>0>=(c[c[e>>2]>>2]|0)>
;>>0)break;Fb(b,c[(c[(c[e>>2]|0)+20>>2]|0)+(c[f>>2]<<3)+4>>2]|0);c[(
c[(c[e>>2]|0)+20>>2]|0)+(c[f>>2]<<3)+4>>2]=0;c[f>>2]=(c[f>>
;2]|0)+1}Fb(b,c[(c[e>>2]|0)+20>>2]|0);c[(c[e>>2]|0)+20>>2]=0}Fb(c[d>>2]|0,c[(c
[e>>2]|0)+28>>2]|0);c[(c[e>>2]|0)+28>>2]=0;Fb(c[d>>2]|0,c[(c[e>>2]|0
)+36>>2]|0);c[(c[e>>2]|0)+36>>2]=0;Fb(c[d>>2]|0,c[e>>2]|0);c[e>>2]=0
;i=g;return}function $e(b){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]=b;c[f>>2]=c[g
x3e;>2];c[d>>2]=0;a[(c[f>>2]|0)+300>>0]=0;a[(c[f>>2]|0)+301>>0]=0;a[(c[f
x3e;>2]|0)+72+36>>0]=0;c[(c[f>>2]|0)+112>>2]=-1;i=e;return c[d>>2]|0}function af(b){
b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=b;c[e>>2]=c[d>>2];if(a[(c[e>>2]|0
)+300>>0]|0)bf(c[d>>2]|0);a[(c[e>>2]|0)+72+36>>0]=0;i=f;return}function bf(d){d=d|0;var
e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;j=g+12|0;f=g+8|0;h=g+4|0;e=g;c[j>>2]=d;c[f>>2]=c[j>>2];c[h>
x3e;2]=c[c[j>>2]>>2];c[e>>2]=c[(c[h>>2]|0)+100>>2];if(a[(c[f>>2]|0)+
292>>0]|0){c[(c[f>>2]|0)+296>>2]=0;a[(c[f>>2]|0)+292>>0]=0}Fb(c[e>>2
]|0,c[(c[f>>2]|0)+244>>2]|0);c[(c[f>>2]|0)+244>>2]=0;c[(c[f>>2]|0)+240>
x3e;2]=0;Fb(c[e>>2]|0,c[(c[f>>2]|0)+252>>2]|0);c[(c[f>>2]|0)+252>>2]=0;b[(c[f
x3e;>2]|0)+248>>1]=0;cf((c[f>>2]|0)+256|0);Fb(c[e>>2]|0,c[(c[f>>2]|0)+124>>
;2]|0);c[(c[f>>2]|0)+124>>2]=0;Fb(c[e>>2]|0,c[(c[f>>2]|0)+136>>2]|0);c[(c[f>
;>2]|0)+136>>2]=0;c[(c[f>>2]|0)+116>>2]=0;c[(c[f>>2]|0)+120>>2]=0;c[(c[f
x3e;>2]|0)+128>>2]=0;c[(c[f>>2]|0)+132>>2]=0;c[(c[f>>2]|0)+140>>2]=0;c[(c
[f>>2]|0)+144>>2]=0;a[(c[f>>2]|0)+300>>0]=0;a[(c[f>>2]|0)+301>>0]=0;
i=g;return}function cf(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=c[c[d>>
2]>>2];if(!(c[e>>2]|0)){i=f;return}Fb(c[e>>2]|0,c[(c[d>>2]|0)+28>>2]|0);c[(c[d
>>2]|0)+28>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+24>>2]|0);c[(c[d>>2]|0)+
24>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+16>>2]=0
;Fb(c[e>>2]|0,c[(c[d>>2]|0)+12>>2]|0);c[(c[d>>2]|0)+12>>2]=0;Fb(c[e>>
;2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>>2]=0;b[(c[d>>2]|0)+8>>
;1]=0;b[(c[d>>2]|0)+4>>1]=0;b[(c[d>>2]|0)+10>>1]=0;b[(c[d>>2]|0)+6>>
1]=0;c[c[d>>2]>>2]=0;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;a=gc(c
[c[(c[d>>2]|0)+156>>2]>>2]|0)|0;i=b;return a|0}function ef(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+32|0;o=n+28|0;p=n+24|0;g=n+20|0;h=n+16|0;m=n+12|0;l=n+8|0;k=n+4|0;j=n;c[o
>>2]=a;c[p>>2]=b;c[g>>2]=d;c[h>>2]=e;c[m>>2]=c[o>>2];c[l>>
2]=c[p>>2];c[k>>2]=c[(c[o>>2]|0)+4>>2];if(!(c[m>>2]|0)){c[f>>2]=37;p
=c[f>>2]|0;i=n;return p|0}if(!(c[l>>2]|0)){c[f>>2]=36;p=c[f>>2]|0;i=n;return p|0}if(!(c[
k>>2]|0)){c[f>>2]=6;p=c[f>>2]|0;i=n;return p|0}if((c[g>>2]|0)>>>0>=(
c[(c[k>>2]|0)+16>>2]|0)>>>0?(c[(c[(c[k>>2]|0)+128>>2]|0)+52>>2]|
0)==0:0){c[f>>2]=6;p=c[f>>2]|0;i=n;return p|0}if(c[h>>2]&2|0){if(c[(c[k>>2]|0)+8>
;>2]&8192|0)c[h>>2]=c[h>>2]&-3;if(c[h>>2]&32768|0)c[h>>2]=c[h>
x3e;2]|2}if(c[h>>2]&1025|0?(c[h>>2]=c[h>>2]|9,(c[(c[k>>2]|0)+8>>2]&8192
|0)==0):0)c[h>>2]=c[h>>2]|2;c[j>>2]=ff(c[l>>2]|0,c[m>>2]|0,c[g>>2]|0
,c[h>>2]|0)|0;c[f>>2]=c[j>>2];p=c[f>>2]|0;i=n;return p|0}function ff(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;r=i;i=i+256|0;h=r+240|0;j=r+236|0;k=r+232|0;l=r+228|0;m=r+224|0;o=r+220
|0;n=r+216|0;p=r+8|0;q=r;c[j>>2]=b;c[k>>2]=d;c[l>>2]=f;c[m>>2]=g;c[o>>2]=c[(c[
k>>2]|0)+4>>2];c[n>>2]=0;if(((c[(c[j>>2]|0)+112>>2]|0)!=-1?(c[m>>2]
x26;8|0)==0:0)?(c[n>>2]=gf(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0,(c[n>
;>2]|0)==0):0){c[q>>2]=c[o>>2];if((c[(c[q>>2]|0)+8>>2]&1|0?(hf(p,c[j>>
;2]|0,c[k>>2]|0,c[m>>2]|0,1)|0,ah(p,c[l>>2]|0,0,1)|0,c[(c[k>>2]|0)+56>>2]=c[p+
60>>2],c[(c[k>>2]|0)+60>>2]=(c[p+176>>2]|0)+(c[p+36+12>>2]|0)-(c[p+180>
x3e;2]|0),c[(c[o>>2]|0)+468+12>>2]|0):0)?(c[m>>2]&512|0)==0:0)c[(c[k>>2]|0)+56>
;>2]=e[(c[o>>2]|0)+216+10>>1];c[h>>2]=0;b=c[h>>2]|0;i=r;return b|0}if((c[m>>
;2]&1|0)==0?(a[(c[j>>2]|0)+72+36>>0]|0)==0:0){c[h>>2]=36;b=c[h>>2]|0;i=r;return b|0
}if(c[m>>2]&16384|0){c[h>>2]=6;b=c[h>>2]|0;i=r;return b|0}c[n>>2]=hf(p,c[j>>
;2]|0,c[k>>2]|0,c[m>>2]|0,0)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];b=c[h>>
2]|0;i=r;return b|0}c[(c[k>>2]|0)+72>>2]=1869968492;c[(c[k>>2]|0)+128>>2]=0;c[(c[k>
x3e;2]|0)+108+16>>2]=0;c[n>>2]=ah(p,c[l>>2]|0,0,0)|0;if(!(c[n>>2]|0)){if((c[(c[k>
x3e;2]|0)+72>>2]|0)!=1668246896){b=(c[k>>2]|0)+108|0;q=(c[p+12>>2]|0)+20|0;c[b>>2]=c[q
x3e;>2];c[b+4>>2]=c[q+4>>2];c[b+8>>2]=c[q+8>>2];c[b+12>>2]=c[q+12>
x3e;2];c[b+16>>2]=c[q+16>>2];b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]&-513;
if(c[p+68>>2]|0)Nb((c[k>>2]|0)+108|0,0-(c[p+68>>2]|0)|0,0)}else{c[(c[k>>2]|0)+128>
x3e;2]=c[(c[p+12>>2]|0)+20+28>>2];c[(c[k>>2]|0)+132>>2]=c[(c[p+12>>2]|0)+20+32
>>2]}a:do if(!(c[m>>2]&2)){if(!(a[(c[p+160>>2]|0)+284+53>>0]|0)){b=(c[k>>
2]|0)+108+16|0;c[b>>2]=c[b>>2]|8;break}switch(c[(c[p+160>>2]|0)+284+56>>2]|0){case 1:break
a;case 0:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|32;break a}case 4:{b=(c[k>>2]|0)+108+16
|0;c[b>>2]=c[b>>2]|48;break a}case 5:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|16
;break a}default:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|8;break a}}}while(0);nh(p,c[l>>
2]|0)|0}if((c[m>>2]&1|0)==0?(e[(c[j>>2]|0)+12+2>>1]|0)<24:0){b=(c[k>>2]|0)+108
+16|0;c[b>>2]=c[b>>2]|256}c[h>>2]=c[n>>2];b=c[h>>2]|0;i=r;return b|0}function
gf(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;n=i;i=i+48|0;q=n+28|0;j=n+24|0;p=n+20|0;k=n+16|0
;r=n+12|0;s=n+8|0;o=n+4|0;l=n;m=n+32|0;c[q>>2]=e;c[j>>2]=f;c[p>>2]=g;c[k>>2]=h;c[r>
x3e;2]=c[(c[j>>2]|0)+4>>2];c[s>>2]=c[(c[r>>2]|0)+532>>2];c[o>>2]=c[(
c[r>>2]|0)+104>>2];c[l>>2]=Na[c[(c[s>>2]|0)+104>>2]&1](c[r>>2]|
0,c[(c[q>>2]|0)+112>>2]|0,c[p>>2]|0,c[k>>2]|0,c[o>>2]|0,(c[j>>2]|0)+
76|0,m)|0;if(c[l>>2]|0){s=c[l>>2]|0;i=n;return s|0}b[(c[j>>2]|0)+108+2>>1]=0;b[(c[j>
;>2]|0)+108>>1]=0;c[(c[j>>2]|0)+24>>2]=d[m+1>>0]<<6;c[(c[j>>2]|
0)+24+4>>2]=d[m>>0]<<6;c[(c[j>>2]|0)+24+8>>2]=a[m+2>>0]<<6
;c[(c[j>>2]|0)+24+12>>2]=a[m+3>>0]<<6;c[(c[j>>2]|0)+24+16>>2]=d[m+4
x3e;>0]<<6;c[(c[j>>2]|0)+24+20>>2]=a[m+5>>0]<<6;c[(c[j>>2]|0)+24
+24>>2]=a[m+6>>0]<<6;c[(c[j>>2]|0)+24+28>>2]=d[m+7>>0]<<6;
c[(c[j>>2]|0)+72>>2]=1651078259;if(c[k>>2]&16|0){c[(c[j>>2]|0)+100>>2]=a[
m+5>>0];c[(c[j>>2]|0)+104>>2]=a[m+6>>0];s=c[l>>2]|0;i=n;return s|0}else{c[(c[j
>>2]|0)+100>>2]=a[m+2>>0];c[(c[j>>2]|0)+104>>2]=a[m+3>>0];s=c[l>
;>2]|0;i=n;return s|0}return 0}function hf(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;y=i;i=i+64|0;n=y+44|0;o=y+40|0;p=y+36|0;q=y+32|0;r=y+28|0;s=y+49|0;v=y+24|0;x=y+20|0;u=y+16|0;l=y+48|0;
k=y+12|0;m=y+8|0;t=y+4|0;w=y;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;a[s>>0]=j
;c[v>>2]=c[(c[q>>2]|0)+4>>2];c[x>>2]=c[(c[v>>2]|0)+104>>2];Ns(c[o>
;>2]|0,0,208)|0;if(!((c[r>>2]&2|0)!=0|(a[s>>0]|0)!=0)){if((a[(c[p>>2]|0)+301>>
0]|0)==0?(c[k>>2]=jf(c[p>>2]|0)|0,c[k>>2]|0):0){c[n>>2]=c[k>>2];x=c[n>>
;2]|0;i=y;return x|0}if(d[(c[p>>2]|0)+292>>0]|0)k=c[(c[p>>2]|0)+296>>2]|0;else k=c[(c[(c
[v>>2]|0)+96>>2]|0)+40>>2]|0;c[u>>2]=k;if(!(c[u>>2]|0)){c[n>>2]=153;
x=c[n>>2]|0;i=y;return x|0}a[l>>0]=(c[r>>2]>>16&15|0)!=2;Vg(c[u>>2]|0,c[v
>>2]|0,c[p>>2]|0)|0;if((d[l>>0]|0)!=(d[(c[u>>2]|0)+604>>0]|0)){a[(c[u>>
;2]|0)+604>>0]=a[l>>0]|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[(
c[p>>2]|0)+240>>2]|0)>>>0)break;l=Mb(b[(c[(c[v>>2]|0)+672>>2]|0)+(c[m>
;>2]<<1)>>1]|0,c[(c[p>>2]|0)+72+16>>2]|0)|0;c[(c[(c[p>>2]|0)+244>>
;2]|0)+(c[m>>2]<<2)>>2]=l;c[m>>2]=(c[m>>2]|0)+1}$g(c[p>>2]|0)|0}if(d
[(c[u>>2]|0)+284+52>>0]&1|0)c[r>>2]=c[r>>2]|2;if(d[(c[u>>2]|0)+284+52>
;>0]&2|0){k=(c[u>>2]|0)+284|0;j=568;g=k+68|0;do{c[k>>2]=c[j>>2];k=k+4|0;j=j+4|0}while((k
|0)<(g|0))}a[(c[u>>2]|0)+561>>0]=c[r>>2]&128;c[(c[o>>2]|0)+160>>2]=c
[u>>2];c[(c[o>>2]|0)+164>>2]=c[(c[u>>2]|0)+392>>2]}do if(c[(c[(c[v>>
2]|0)+128>>2]|0)+52>>2]|0)c[(c[o>>2]|0)+84>>2]=0;else{c[t>>2]=Wa[c[(c[v>
x3e;2]|0)+508>>2]&31](c[v>>2]|0,1735162214,c[x>>2]|0,0)|0;if((c[t>>2]|0)==142){c[(c
[o>>2]|0)+84>>2]=0;break}if(!(c[t>>2]|0)){u=Mc(c[x>>2]|0)|0;c[(c[o>>2]|0)+84
x3e;>2]=u;break}c[n>>2]=c[t>>2];x=c[n>>2]|0;i=y;return x|0}while(0);if(!(a[s>>0]|0)){
c[w>>2]=c[c[(c[q>>2]|0)+156>>2]>>2];dc(c[w>>2]|0);c[(c[o>>2]|0)+12
x3e;>2]=c[w>>2]}c[(c[o>>2]|0)+16>>2]=c[r>>2];c[c[o>>2]>>2]=c[v
x3e;>2];c[(c[o>>2]|0)+4>>2]=c[p>>2];c[(c[o>>2]|0)+8>>2]=c[q>>2];
c[(c[o>>2]|0)+24>>2]=c[x>>2];c[n>>2]=0;x=c[n>>2]|0;i=y;return x|0}function jf(
d){d=d|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;h=k+12|0;j=k+8|0;g=k+4|0;f=k;c[h>>2]=d;c[j>>2]=0;if((a[(c[h>
;>2]|0)+300>>0]|0)==0?(c[j>>2]=kf(c[h>>2]|0)|0,c[j>>2]|0):0){j=c[j>>2]|0;
i=k;return j|0}if(a[(c[h>>2]|0)+301>>0]|0){j=c[j>>2]|0;i=k;return j|0}c[f>>2]=c[c[h>
;>2]>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[(c[h>>2]|0)+
240>>2]|0)>>>0)break;d=Mb(b[(c[(c[f>>2]|0)+672>>2]|0)+(c[g>>2]<<
;1)>>1]|0,c[(c[h>>2]|0)+72+16>>2]|0)|0;c[(c[(c[h>>2]|0)+244>>2]|0)+(c[g>
x3e;2]<<2)>>2]=d;c[g>>2]=(c[g>>2]|0)+1}c[g>>2]=0;while(1){if((c[g>>2
]|0)>>>0>=(e[(c[h>>2]|0)+256+8>>1]|0)>>>0)break;c[(c[(c[h>>2]|0
)+256+12>>2]|0)+(c[g>>2]<<3)>>2]=0;c[(c[(c[h>>2]|0)+256+12>>2]|0)+(c
[g>>2]<<3)+4>>2]=0;c[(c[(c[h>>2]|0)+256+16>>2]|0)+(c[g>>2]<<
;3)>>2]=0;c[(c[(c[h>>2]|0)+256+16>>2]|0)+(c[g>>2]<<3)+4>>2]=0;c[g>
;>2]=(c[g>>2]|0)+1}c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(e[(c[h>
x3e;2]|0)+248>>1]|0)>>>0)break;c[(c[(c[h>>2]|0)+252>>2]|0)+(c[g>>2]<
x3c;2)>>2]=0;c[g>>2]=(c[g>>2]|0)+1}f=(c[h>>2]|0)+172|0;g=568;d=f+68|0;do{c[f>>
2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(d|0));c[j>>2]=$g(c[h>>2]|0)|0;if(c[j>>2]|0){
j=c[j>>2]|0;i=k;return j|0}a[(c[h>>2]|0)+301>>0]=1;j=c[j>>2]|0;i=k;return j|0}function kf
(d){d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;l=q+32|0;m=q+28|0;p=q+24|0;n=q+20|0;h=q+16|0;f=q+12|0;k=q
+36|0;g=q+8|0;j=q+4|0;o=q;c[l>>2]=d;c[p>>2]=c[l>>2];c[n>>2]=c[c[l>>2]>>
;2];c[h>>2]=c[(c[n>>2]|0)+100>>2];c[g>>2]=(c[n>>2]|0)+260;a[(c[p>>2]|
0)+300>>0]=1;a[(c[p>>2]|0)+301>>0]=0;c[(c[p>>2]|0)+120>>2]=e[(c[g>>2
]|0)+20>>1];c[(c[p>>2]|0)+132>>2]=e[(c[g>>2]|0)+22>>1];c[(c[p>>2]|0)+
116>>2]=0;c[(c[p>>2]|0)+128>>2]=0;c[(c[p>>2]|0)+140>>2]=0;c[(c[p>>2]|
0)+144>>2]=0;c[(c[p>>2]|0)+240>>2]=c[(c[n>>2]|0)+668>>2];b[(c[p>>2]|
0)+248>>1]=b[(c[g>>2]|0)+18>>1]|0;c[j>>2]=(c[p>>2]|0)+72;a[(c[j>>2]|
0)+37>>0]=0;a[(c[j>>2]|0)+38>>0]=0;c[f>>2]=0;while(1){if((c[f>>2]|0)>=4)break
;c[(c[j>>2]|0)+20+(c[f>>2]<<2)>>2]=0;c[f>>2]=(c[f>>2]|0)+1}j=hc(c[h
x3e;>2]|0,16,0,c[(c[p>>2]|0)+120>>2]|0,0,m)|0;c[(c[p>>2]|0)+124>>2]=j;if(((((c[m>
;>2]|0)==0?(j=hc(c[h>>2]|0,16,0,c[(c[p>>2]|0)+132>>2]|0,0,m)|0,c[(c[p>>2]|0)+136>
;>2]=j,(c[m>>2]|0)==0):0)?(j=hc(c[h>>2]|0,4,0,c[(c[p>>2]|0)+240>>2]|0,0,m)|0,c[(c[p
>>2]|0)+244>>2]=j,(c[m>>2]|0)==0):0)?(j=hc(c[h>>2]|0,4,0,e[(c[p>>2]|0)+248>
;>1]|0,0,m)|0,c[(c[p>>2]|0)+252>>2]=j,(c[m>>2]|0)==0):0)?(b[k>>1]=b[(c[g>>
;2]|0)+16>>1]|0,b[k>>1]=(e[k>>1]|0)+4,c[m>>2]=lf(c[h>>2]|0,b[k>>1]|0
,0,(c[p>>2]|0)+256|0)|0,(c[m>>2]|0)==0):0){b[(c[p>>2]|0)+256+8>>1]=b[k>>1]|0;d
=(c[p>>2]|0)+172|0;f=568;g=d+68|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));c[o
x3e;>2]=c[(c[(c[n>>2]|0)+96>>2]|0)+4>>2];c[(c[n>>2]|0)+688>>2]=c[(c[o>
;>2]|0)+180>>2];if(!(c[(c[n>>2]|0)+688>>2]|0))c[(c[n>>2]|0)+688>>2]=37;c[
m>>2]=Ug(c[p>>2]|0)|0}if(!(c[m>>2]|0)){p=c[m>>2]|0;i=q;return p|0}bf(c[l>>2]|0
);p=c[m>>2]|0;i=q;return p|0}function lf(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;n=i;i=i+16|0;h=n
+8|0;j=n+14|0;k=n+12|0;l=n+4|0;m=n;c[h>>2]=a;b[j>>1]=d;b[k>>1]=f;c[l>>2]=g;f=c[l>
x3e;2]|0;d=f+36|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(d|0));c[c[l>>2]>>2]=c[h>>2];g=hc
(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0;c[(c[l>>2]|0)+12>>2]=g;if(((((c[m>>2]|0)==0?(g
=hc(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+16>>2]=g,(c[m>>2]|0)==0):0)?(
g=hc(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+20>>2]=g,(c[m>>2]|0)==0):0)?(
g=hc(c[h>>2]|0,1,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+24>>2]=g,(c[m>>2]|0)==0):0)?(
h=hc(c[h>>2]|0,2,0,b[k>>1]|0,0,m)|0,c[(c[l>>2]|0)+28>>2]=h,(c[m>>2]|0)==0):0){
b[(c[l>>2]|0)+4>>1]=b[j>>1]|0;b[(c[l>>2]|0)+6>>1]=b[k>>1]|0;m=c[m>
;>2]|0;i=n;return m|0}cf(c[l>>2]|0);m=c[m>>2]|0;i=n;return m|0}function mf(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,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=i;i=i+96|0;h=G+68|0;j=G+64|0;C=G+60|0
;z=G+56|0;E=G+80|0;k=G+78|0;l=G+76|0;t=G+74|0;v=G+52|0;x=G+48|0;u=G+72|0;w=G+44|0;y=G+40|0;r=G+36|0;s=G+32|0;m=G+28|0;n=G+24|0;o
=G+20|0;p=G+16|0;q=G+12|0;B=G+8|0;D=G+4|0;A=G;c[j>>2]=f;c[C>>2]=0;c[(c[j>>2]|0)+244+12>>
2]=0;f=(c[j>>2]|0)+592|0;if((e[(c[j>>2]|0)+216>>1]|0)!=(e[(c[j>>2]|0)+216+2>>1
]|0)){c[f>>2]=103;c[(c[j>>2]|0)+596>>2]=9;c[(c[j>>2]|0)+600>>2]=10}else{c[f>
;>2]=104;c[(c[j>>2]|0)+596>>2]=11;c[(c[j>>2]|0)+600>>2]=12}vf(c[j>>2]|0);
Hf(c[j>>2]|0,c[(c[j>>2]|0)+284+28>>2]&255);a:while(1){a[(c[j>>2]|0)+368>>
0]=a[(c[(c[j>>2]|0)+356>>2]|0)+(c[(c[j>>2]|0)+360>>2]|0)>>0]|0;g=a[10705+(d[(c
[j>>2]|0)+368>>0]|0)>>0]|0;c[(c[j>>2]|0)+372>>2]=g;if((g|0)<0){if(((c[(c[
j>>2]|0)+360>>2]|0)+1|0)>(c[(c[j>>2]|0)+364>>2]|0)){F=196;break}g=2-(_(c[(c[j>
x3e;2]|0)+372>>2]|0,d[(c[(c[j>>2]|0)+356>>2]|0)+((c[(c[j>>2]|0)+360>>2]|0)+1)
x3e;>0]|0)|0)|0;c[(c[j>>2]|0)+372>>2]=g}if(((c[(c[j>>2]|0)+360>>2]|0)+(c[(c[j>
x3e;2]|0)+372>>2]|0)|0)>(c[(c[j>>2]|0)+364>>2]|0)){F=196;break}c[(c[j>>2]|0)+28>
;>2]=(c[(c[j>>2]|0)+16>>2]|0)-(d[10961+(d[(c[j>>2]|0)+368>>0]|0)>>0]>
;>4);f=c[j>>2]|0;if((c[(c[j>>2]|0)+28>>2]|0)<0){F=10;break}c[(c[j>>2]|0)+32>
;>2]=(c[f+28>>2]|0)+(d[10961+(d[(c[j>>2]|0)+368>>0]|0)>>0]&15);f=c[j>>
;2]|0;if((c[(c[j>>2]|0)+32>>2]|0)>>>0>(c[(c[j>>2]|0)+20>>2]|0)>
x3e;>0){F=12;break}a[f+376>>0]=1;c[(c[j>>2]|0)+12>>2]=0;c[z>>2]=(c[(c[j>>
2]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<2);a[E>>0]=a[(c[j>>2]|0)+368
x3e;>0]|0;b:do switch(d[E>>0]|0){case 5:case 4:case 3:case 2:case 1:case 0:{b[k>>1]=(d[E>>0]
x26;1)<<14;b[l>>1]=b[k>>1]^16384;if((d[E>>0]|0)<4){b[(c[j>>2]|0)+284+10
x3e;>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+10+2>>1]=b[l>>1]|0;b[(c[j>>2]|0)+284+
6>>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+6+2>>1]=b[l>>1]|0}if(!(d[E>>0]&
;2)){b[(c[j>>2]|0)+284+14>>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+14+2>>1]=b[l>
x3e;1]|0}vf(c[j>>2]|0);break}case 7:case 6:{if(!((Qf(c[j>>2]|0,c[(c[z>>2]|0)+4>>2]&
65535,c[c[z>>2]>>2]&65535,d[(c[j>>2]|0)+368>>0]|0,(c[j>>2]|0)+284+10|0)|0
)&255)){g=(c[j>>2]|0)+284+6|0;f=(c[j>>2]|0)+284+10|0;b[g>>1]=b[f>>1]|0;b[g+2>
x3e;1]=b[f+2>>1]|0;vf(c[j>>2]|0)}break}case 9:case 8:{if(!((Qf(c[j>>2]|0,c[(c[z>>2]|0)+4
>>2]&65535,c[c[z>>2]>>2]&65535,d[(c[j>>2]|0)+368>>0]|0,(c[j>>
;2]|0)+284+14|0)|0)&255))vf(c[j>>2]|0);break}case 10:{b[t>>1]=c[(c[z>>2]|0)+4>>2];c
[x>>2]=b[t>>1];b[t>>1]=c[c[z>>2]>>2];c[v>>2]=b[t>>1];Rf(c[
j>>2]|0,c[v>>2]|0,c[x>>2]|0,(c[j>>2]|0)+284+10|0)|0;g=(c[j>>2]|0)+284+6|0;f=(c
[j>>2]|0)+284+10|0;b[g>>1]=b[f>>1]|0;b[g+2>>1]=b[f+2>>1]|0;vf(c[j>>2
]|0);break}case 11:{b[u>>1]=c[(c[z>>2]|0)+4>>2];c[y>>2]=b[u>>1];b[u>>
;1]=c[c[z>>2]>>2];c[w>>2]=b[u>>1];Rf(c[j>>2]|0,c[w>>2]|0,c[y>
x3e;2]|0,(c[j>>2]|0)+284+14|0)|0;vf(c[j>>2]|0);break}case 12:{c[c[z>>2]>>2]=b[(c[j>
x3e;2]|0)+284+10>>1];c[(c[z>>2]|0)+4>>2]=b[(c[j>>2]|0)+284+10+2>>1];break}case
13:{c[c[z>>2]>>2]=b[(c[j>>2]|0)+284+14>>1];c[(c[z>>2]|0)+4>>2]=b[(c
[j>>2]|0)+284+14+2>>1];break}case 14:{g=(c[j>>2]|0)+284+14|0;f=(c[j>>2]|0)+284+10|0;b[g
x3e;>1]=b[f>>1]|0;b[g+2>>1]=b[f+2>>1]|0;vf(c[j>>2]|0);break}case 15:{Sf(c[j>
x3e;2]|0,c[z>>2]|0);break}case 16:{b[(c[j>>2]|0)+284>>1]=c[c[z>>2]>>2];break}case
17:{b[(c[j>>2]|0)+284+2>>1]=c[c[z>>2]>>2];break}case 18:{b[(c[j>>2]|0)+284+4
x3e;>1]=c[c[z>>2]>>2];break}case 19:{Tf(c[j>>2]|0,c[z>>2]|0);break}case 20:{Uf(c[j
x3e;>2]|0,c[z>>2]|0);break}case 21:{Vf(c[j>>2]|0,c[z>>2]|0);break}case 22:{Wf(c[j>>
2]|0,c[z>>2]|0);break}case 23:if((c[c[z>>2]>>2]|0)<0){c[(c[j>>2]|0)+12>>2
]=132;break b}else{c[(c[j>>2]|0)+284+20>>2]=c[c[z>>2]>>2];break b}case 24:{c[(c[j>
x3e;2]|0)+284+28>>2]=1;c[(c[j>>2]|0)+568>>2]=33;break}case 25:{c[(c[j>>2]|0)+284+28>
;>2]=0;c[(c[j>>2]|0)+568>>2]=34;break}case 26:{c[(c[j>>2]|0)+284+24>>2]=c[c[z>
x3e;2]>>2];break}case 27:{Xf(c[j>>2]|0,c[z>>2]|0);break}case 28:{g=(c[j>>2]|0)+360|0;c[g
>>2]=(c[g>>2]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|0)+360>>2]|0)<
;0)c[(c[j>>2]|0)+12>>2]=132;a[(c[j>>2]|0)+376>>0]=0;break}case 29:{c[(c[j>>2]|
0)+284+36>>2]=c[c[z>>2]>>2];break}case 30:{c[(c[j>>2]|0)+284+40>>2]=c[c[z>
;>2]>>2];break}case 31:{c[(c[j>>2]|0)+284+44>>2]=c[c[z>>2]>>2]>>
;10;break}case 32:{c[(c[z>>2]|0)+4>>2]=c[c[z>>2]>>2];break}case 127:case 126:case 89:case
33:break;case 34:{c[(c[j>>2]|0)+32>>2]=0;break}case 35:{c[r>>2]=c[c[z>>2]>>2];
c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>>2];c[(c[z>>2]|0)+4>>2]=c[r>>
;2];break}case 36:{c[c[z>>2]>>2]=c[(c[j>>2]|0)+16>>2];break}case 37:{c[s>>2]=c
[c[z>>2]>>2];if((c[s>>2]|0)>0?(c[s>>2]|0)<=(c[(c[j>>2]|0)+28>
x3e;2]|0):0){c[c[z>>2]>>2]=c[(c[(c[j>>2]|0)+24>>2]|0)+((c[(c[j>>2]|0)+28>
x3e;2]|0)-(c[s>>2]|0)<<2)>>2];break b}c[(c[j>>2]|0)+12>>2]=134;break}case 38:{
Zf(c[j>>2]|0,c[z>>2]|0);break}case 39:{_f(c[j>>2]|0,c[z>>2]|0);break}case 40:{$f(c[j>
;>2]|0,c[z>>2]|0);break}case 41:{bg(c[j>>2]|0,c[z>>2]|0);break}case 42:{cg(c[j>>2]|
0,c[z>>2]|0);break}case 43:{dg(c[j>>2]|0,c[z>>2]|0);break}case 44:{eg(c[j>>2]|0,c[z>
;>2]|0);break}case 45:{fg(c[j>>2]|0,c[z>>2]|0);break}case 47:case 46:{gg(c[j>>2]|0,c[z>
x3e;2]|0);break}case 49:case 48:{hg(c[j>>2]|0,c[z>>2]|0);break}case 51:case 50:{kg(c[j>>2]|0,c[z
x3e;>2]|0);break}case 53:case 52:{ng(c[j>>2]|0,c[z>>2]|0);break}case 55:case 54:{og(c[j>>2]|0
,c[z>>2]|0);break}case 56:{pg(c[j>>2]|0,c[z>>2]|0);break}case 57:{rg(c[j>>2]|0,c[z>
x3e;2]|0);break}case 59:case 58:{sg(c[j>>2]|0,c[z>>2]|0);break}case 60:{tg(c[j>>2]|0,c[z>>
;2]|0);break}case 61:{c[(c[j>>2]|0)+284+28>>2]=2;c[(c[j>>2]|0)+568>>2]=35;break}case 63:
case 62:{ug(c[j>>2]|0,c[z>>2]|0);break}case 64:{vg(c[j>>2]|0,c[z>>2]|0);break}case 65:{wg
(c[j>>2]|0,c[z>>2]|0);break}case 66:{c[m>>2]=c[c[z>>2]>>2];if((c[m>>
2]|0)>>>0>=(e[(c[j>>2]|0)+468>>1]|0)>>>0)if(a[(c[j>>2]|0)+561
x3e;>0]|0){F=81;break b}else break b;else{c[(c[(c[j>>2]|0)+472>>2]|0)+(c[m>>2]<<2)
x3e;>2]=c[(c[z>>2]|0)+4>>2];break b}}case 67:{c[n>>2]=c[c[z>>2]>>2];if((c
[n>>2]|0)>>>0<(e[(c[j>>2]|0)+468>>1]|0)>>>0){c[c[z>>2
]>>2]=c[(c[(c[j>>2]|0)+472>>2]|0)+(c[n>>2]<<2)>>2];break b}if(a[(c[j
>>2]|0)+561>>0]|0)F=81;else c[c[z>>2]>>2]=0;break}case 68:{c[o>>2]=c[c[z>
x3e;2]>>2];f=c[j>>2]|0;if((c[o>>2]|0)>>>0>=(c[(c[j>>2]|0)+380>
x3e;2]|0)>>>0)if(a[f+561>>0]|0){F=81;break b}else break b;else{Ua[c[f+596>>2]&31](c[j>
;>2]|0,c[o>>2]|0,c[(c[z>>2]|0)+4>>2]|0);break b}}case 69:{c[p>>2]=c[c[z>>
2]>>2];f=c[j>>2]|0;if((c[p>>2]|0)>>>0<(c[(c[j>>2]|0)+380>>
2]|0)>>>0){g=Ya[c[f+592>>2]&127](c[j>>2]|0,c[p>>2]|0)|0;c[c[z>>2]>
;>2]=g;break b}if(a[f+561>>0]|0)F=81;else c[c[z>>2]>>2]=0;break}case 71:case 70:{yg(c[j>
x3e;2]|0,c[z>>2]|0);break}case 72:{zg(c[j>>2]|0,c[z>>2]|0);break}case 74:case 73:{Ag(c[j>>
;2]|0,c[z>>2]|0);break}case 75:{g=Bg(c[j>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 76:{g=Bg(c[
j>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 77:{a[(c[j>>2]|0)+284+32>>0]=1;break}case
78:{a[(c[j>>2]|0)+284+32>>0]=0;break}case 79:{c[(c[j>>2]|0)+12>>2]=135;break}case 80:{c
[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<(c[(c[z>>2]|0)+4>>2]|0)&1;break
}case 81:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<=(c[(c[z>>2]|0)+4>>2]|
0)&1;break}case 82:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)>(c[(c[z>>2]|0)+4
>>2]|0)&1;break}case 83:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)>=(c[(c[z>
;>2]|0)+4>>2]|0)&1;break}case 84:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)==(
c[(c[z>>2]|0)+4>>2]|0)&1;break}case 85:{c[c[z>>2]>>2]=(c[c[z>>2]>>
;2]|0)!=(c[(c[z>>2]|0)+4>>2]|0)&1;break}case 86:{g=((Oa[c[(c[j>>2]|0)+568>>2]&
63](c[j>>2]|0,c[c[z>>2]>>2]|0,0)|0)&127|0)==64&1;c[c[z>>2]>>2]=g;break
}case 87:{g=((Oa[c[(c[j>>2]|0)+568>>2]&63](c[j>>2]|0,c[c[z>>2]>>2]|0,0)|0
)&127|0)==0&1;c[c[z>>2]>>2]=g;break}case 88:{Cg(c[j>>2]|0,c[z>>2]|0);break}case
90:{if(c[c[z>>2]>>2]|0)f=(c[(c[z>>2]|0)+4>>2]|0)!=0;else f=0;c[c[z>>2]>
x3e;2]=f&1;break}case 91:{if(c[c[z>>2]>>2]|0)f=1;else f=(c[(c[z>>2]|0)+4>>2]|0)!=0;
c[c[z>>2]>>2]=f&1;break}case 92:{c[c[z>>2]>>2]=((c[c[z>>2]>>2]|
0)!=0^1)&1;break}case 93:{Dg(c[j>>2]|0,c[z>>2]|0);break}case 94:{b[(c[j>>2]|0)+284+48>
x3e;1]=c[c[z>>2]>>2];break}case 95:{b[(c[j>>2]|0)+284+50>>1]=c[c[z>>2]>
x3e;2];break}case 96:{g=c[z>>2]|0;c[g>>2]=(c[g>>2]|0)+(c[(c[z>>2]|0)+4>>2]|0);
break}case 97:{g=c[z>>2]|0;c[g>>2]=(c[g>>2]|0)-(c[(c[z>>2]|0)+4>>2]|0);break}case
98:if(!(c[(c[z>>2]|0)+4>>2]|0)){c[(c[j>>2]|0)+12>>2]=133;break b}else{g=Ub(c[c[z>
x3e;2]>>2]|0,64,c[(c[z>>2]|0)+4>>2]|0)|0;c[c[z>>2]>>2]=g;break b}case 99:{g=xb
(c[c[z>>2]>>2]|0,c[(c[z>>2]|0)+4>>2]|0,64)|0;c[c[z>>2]>>2]=g;break}case
100:{g=c[c[z>>2]>>2]|0;c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<0?0-g|0
:g;break}case 101:{c[c[z>>2]>>2]=0-(c[c[z>>2]>>2]|0);break}case 102:{c[c[z>>2]
x3e;>2]=c[c[z>>2]>>2]&-64;break}case 103:{c[c[z>>2]>>2]=(c[c[z>>2]
x3e;>2]|0)+63&-64;break}case 107:case 106:case 105:case 104:{g=Oa[c[(c[j>>2]|0)+568>>2]&63](c
[j>>2]|0,c[c[z>>2]>>2]|0,c[(c[j>>2]|0)+244+20+((d[(c[j>>2]|0)+368>>0
]|0)-104<<2)>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 111:case 110:case 109:case 108:{g=If(c[
j>>2]|0,c[c[z>>2]>>2]|0,c[(c[j>>2]|0)+244+20+((d[(c[j>>2]|0)+368>>0]|
0)-108<<2)>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 112:{c[q>>2]=c[c[z>>2
]>>2];if((c[q>>2]|0)>>>0>=(c[(c[j>>2]|0)+380>>2]|0)>>>
;0)if(a[(c[j>>2]|0)+561>>0]|0){F=81;break b}else break b;else{g=Mb(c[(c[z>>2]|0)+4>>2]|0
,c[(c[j>>2]|0)+244+16>>2]|0)|0;c[(c[(c[j>>2]|0)+384>>2]|0)+(c[q>>2]<<
;2)>>2]=g;break b}}case 114:case 113:{Dg(c[j>>2]|0,c[z>>2]|0);break}case 117:case 116:case 115:{Eg
(c[j>>2]|0,c[z>>2]|0);break}case 118:{Fg(c[j>>2]|0,16384,c[c[z>>2]>>2]|0);c[(c
[j>>2]|0)+284+28>>2]=6;c[(c[j>>2]|0)+568>>2]=36;break}case 119:{Fg(c[j>>2]|0,11585
,c[c[z>>2]>>2]|0);c[(c[j>>2]|0)+284+28>>2]=7;c[(c[j>>2]|0)+568>>2]=37
;break}case 120:{if(c[(c[z>>2]|0)+4>>2]|0){g=(c[j>>2]|0)+360|0;c[g>>2]=(c[g>>2
]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|0)+360>>2]|0)<0)c[(c[j>>2]|0)+12>
;>2]=132;a[(c[j>>2]|0)+376>>0]=0}break}case 121:{if(!(c[(c[z>>2]|0)+4>>2]|0)){g=(c[
j>>2]|0)+360|0;c[g>>2]=(c[g>>2]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|
0)+360>>2]|0)<0)c[(c[j>>2]|0)+12>>2]=132;a[(c[j>>2]|0)+376>>0]=0}break}case
122:{c[(c[j>>2]|0)+284+28>>2]=5;c[(c[j>>2]|0)+568>>2]=38;break}case 123:{$f(c[j>
x3e;2]|0,c[z>>2]|0);break}case 124:{c[(c[j>>2]|0)+284+28>>2]=4;c[(c[j>>2]|0)+568>
x3e;2]=39;break}case 125:{c[(c[j>>2]|0)+284+28>>2]=3;c[(c[j>>2]|0)+568>>2]=40;break}case
128:{Gg(c[j>>2]|0,c[z>>2]|0);break}case 129:{Hg(c[j>>2]|0,c[z>>2]|0);break}case 130:{Ig
(c[j>>2]|0,c[z>>2]|0);break}case 132:case 131:{$f(c[j>>2]|0,c[z>>2]|0);break}case 133:{Jg
(c[j>>2]|0,c[z>>2]|0);break}case 135:case 134:{Kg(c[j>>2]|0,c[z>>2]|0);break}case 136:{Lg
(c[j>>2]|0,c[z>>2]|0);break}case 137:{Mg(c[j>>2]|0,c[z>>2]|0);break}case 138:{Ng(c[j>
;>2]|0,c[z>>2]|0);break}case 139:{if((c[(c[z>>2]|0)+4>>2]|0)>(c[c[z>>2]>
x3e;2]|0))c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>>2];break}case 140:{if((c[(c[z>>2]|0)+
4>>2]|0)<(c[c[z>>2]>>2]|0))c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>
x3e;2];break}case 141:{Og(c[j>>2]|0,c[z>>2]|0);break}case 142:{Pg(c[j>>2]|0,c[z>>2]|0);break
}case 143:{$f(c[j>>2]|0,c[z>>2]|0);break}default:{if((d[E>>0]|0)>=224){Qg(c[j>>2]|0
,c[z>>2]|0);break b}if((d[E>>0]|0)>=192){Rg(c[j>>2]|0,c[z>>2]|0);break b}if((d[E>
;>0]|0)>=184){Sg(c[j>>2]|0,c[z>>2]|0);break b}f=c[j>>2]|0;g=c[z>>2]|0;if((d[E
x3e;>0]|0)>=176){Tg(f,g);break b}else{$f(f,g);break b}}}while(0);if((F|0)==81){F=0;c[(c[j>>2]|0)+12>>
;2]=134}f=c[j>>2]|0;if(c[(c[j>>2]|0)+12>>2]|0){if((c[f+12>>2]|0)!=128)break;c[B>>
;2]=c[(c[j>>2]|0)+416>>2];c[D>>2]=(c[B>>2]|0)+(c[(c[j>>2]|0)+408>>2]
x3c;<4);while(1){if((c[B>>2]|0)>>>0>=(c[D>>2]|0)>>>0){F=186;break a}
if(d[(c[B>>2]|0)+12>>0]|0?(d[(c[j>>2]|0)+368>>0]|0)==(c[(c[B>>2]|0)+8>>
;2]&255|0):0)break;c[B>>2]=(c[B>>2]|0)+16}f=c[j>>2]|0;if((c[(c[j>>2]|0)+428>
x3e;2]|0)>=(c[(c[j>>2]|0)+432>>2]|0)){F=183;break}c[A>>2]=(c[(c[j>>2]|0)+436>
x3e;2]|0)+(c[f+428>>2]<<4);c[c[A>>2]>>2]=c[(c[j>>2]|0)+352>>2];c[(c[
A>>2]|0)+4>>2]=(c[(c[j>>2]|0)+360>>2]|0)+1;c[(c[A>>2]|0)+8>>2]=1;c[(
c[A>>2]|0)+12>>2]=c[(c[B>>2]|0)+4>>2];if(((ag(c[j>>2]|0,c[c[B>>2]>
;>2]|0,c[(c[B>>2]|0)+4>>2]|0)|0)&255|0)==1)break}else{c[(c[j>>2]|0)+16>>2]=c[f
+32>>2];if(a[(c[j>>2]|0)+376>>0]|0){g=(c[j>>2]|0)+360|0;c[g>>2]=(c[g>>
;2]|0)+(c[(c[j>>2]|0)+372>>2]|0)}g=(c[C>>2]|0)+1|0;c[C>>2]=g;if((g|0)>1e6){F=190;break
}}f=c[j>>2]|0;if((c[(c[j>>2]|0)+360>>2]|0)>=(c[(c[j>>2]|0)+364>>2]|0)){F=
192;break}if(!((a[f+488>>0]|0)!=0^1)){F=195;break}}if((F|0)==10)c[f+12>>2]=129;else if((F|0)==12)c[f+12>
;>2]=130;else if((F|0)==183)c[f+12>>2]=134;else if((F|0)==186)c[(c[j>>2]|0)+12>>2]=128;else if
((F|0)==190){c[h>>2]=139;F=c[h>>2]|0;i=G;return F|0}else if((F|0)==192)if((c[f+428>>2]|0)>0)c
[(c[j>>2]|0)+12>>2]=131;else F=195;else if((F|0)==196)c[(c[j>>2]|0)+12>>2]=131;if((F|0)==
195){c[h>>2]=0;F=c[h>>2]|0;i=G;return F|0}if(c[(c[j>>2]|0)+12>>2]|0?(a[(c[j>>2
]|0)+488>>0]|0)==0:0)a[(c[(c[j>>2]|0)+4>>2]|0)+301>>0]=0;c[h>>2]=c[(c[j>
x3e;2]|0)+12>>2];F=c[h>>2]|0;i=G;return F|0}function nf(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[(c[(c[e>>2]|0)+384>>2]|0)+(c[f>>2]<<2)
x3e;>2]|0;b=Mb(b,of(c[e>>2]|0)|0)|0;i=d;return b|0}function of(a){a=a|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+
8|0;f=h+4|0;g=h;c[e>>2]=a;do if(!(c[(c[e>>2]|0)+244+12>>2]|0)){a=c[e>>2]|0;if(!(b[(c[e
x3e;>2]|0)+284+10+2>>1]|0)){c[(c[e>>2]|0)+244+12>>2]=c[a+244>>2];break}d=c[e>
x3e;2]|0;if(!(b[a+284+10>>1]|0)){c[(c[e>>2]|0)+244+12>>2]=c[d+244+4>>2];break}else{c[f
x3e;>2]=xb(b[d+284+10>>1]|0,c[(c[e>>2]|0)+244>>2]|0,16384)|0;c[g>>2]=xb(b[(c[e>
;>2]|0)+284+10+2>>1]|0,c[(c[e>>2]|0)+244+4>>2]|0,16384)|0;g=pf(c[f>>2]|0,c[g>
x3e;2]|0)|0;c[(c[e>>2]|0)+244+12>>2]=g;break}}while(0);i=h;return c[(c[e>>2]|0)+244+12>>
2]|0}function pf(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;f=d+8|0;e=d;c[g>>2]=a;c[f>>2]=b;
c[e>>2]=c[g>>2];c[e+4>>2]=c[f>>2];b=me(e)|0;i=d;return b|0}function qf(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;d=c[h
x3e;>2]|0;d=Vb(d,of(c[g>>2]|0)|0)|0;c[(c[(c[g>>2]|0)+384>>2]|0)+(c[f>>2]<<
;2)>>2]=d;i=e;return}function rf(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;b=c[h>>2]|0;b=Vb(b,of(c[g>>2]|0)|0)|0;d=(c[(c[g>>
;2]|0)+384>>2]|0)+(c[f>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+b;i=e;return}function sf(
a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f+4|0;d=f;c[e>>2]=a;c[d>>2]=b;i=f;return c[(c[(c[e>>
;2]|0)+384>>2]|0)+(c[d>>2]<<2)>>2]|0}function tf(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;c[(c[(c[g>>2]|0)+384
>>2]|0)+(c[f>>2]<<2)>>2]=c[h>>2];i=e;return}function uf(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[(c[h>
;>2]|0)+384>>2]|0)+(c[g>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+(c[f>>2]|
0);i=e;return}function vf(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=a;d=(c[e>>2]|0)+284|0;do if((b[(
c[e>>2]|0)+284+14>>1]|0)!=16384){a=(c[e>>2]|0)+284+10|0;if((b[d+14+2>>1]|0)==16384){c[(c
[e>>2]|0)+564>>2]=b[a+2>>1]<<16;break}else{d=(_(b[a>>1]|0,b[(c[e>>2]|
0)+284+14>>1]|0)|0)<<2;d=d+((_(b[(c[e>>2]|0)+284+10+2>>1]|0,b[(c[e>>2]|0)+284+
14+2>>1]|0)|0)<<2)|0;c[(c[e>>2]|0)+564>>2]=d;break}}else c[(c[e>>2]|0)+564>
;>2]=b[d+10>>1]<<16;while(0);a=c[e>>2]|0;do if((b[(c[e>>2]|0)+284+10>>1]|
0)!=16384){d=(c[e>>2]|0)+572|0;if((b[a+284+10+2>>1]|0)==16384){c[d>>2]=42;break}else{c[d>>
;2]=43;break}}else c[a+572>>2]=41;while(0);a=c[e>>2]|0;do if((b[(c[e>>2]|0)+284+6>>1]|0)!=
16384){d=(c[e>>2]|0)+576|0;if((b[a+284+6+2>>1]|0)==16384){c[d>>2]=42;break}else{c[d>>2]=
44;break}}else c[a+576>>2]=41;while(0);c[(c[e>>2]|0)+584>>2]=4;c[(c[e>>2]|0)+588>
x3e;2]=5;do if((c[(c[e>>2]|0)+564>>2]|0)==1073741824){a=c[e>>2]|0;if((b[(c[e>>2]|0)+284+
14>>1]|0)==16384){c[a+584>>2]=6;c[(c[e>>2]|0)+588>>2]=7;break}if((b[a+284+14+2>>
;1]|0)==16384){c[(c[e>>2]|0)+584>>2]=8;c[(c[e>>2]|0)+588>>2]=9}}while(0);d=c[(c[e>
x3e;2]|0)+564>>2]|0;if((((c[(c[e>>2]|0)+564>>2]|0)<0?0-d|0:d)|0)>=67108864){e=c[e>
x3e;2]|0;e=e+244|0;e=e+12|0;c[e>>2]=0;i=f;return}c[(c[e>>2]|0)+564>>2]=1073741824;e=c[e>>
;2]|0;e=e+244|0;e=e+12|0;c[e>>2]=0;i=f;return}function wf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=i;i=i+16|0;h=
f+8|0;e=f+4|0;g=f;c[h>>2]=a;c[e>>2]=b;c[g>>2]=d;c[h>>2]=c[h>>2];c[g>>
;2]=c[g>>2];i=f;return c[e>>2]|0}function xf(a,b,d){a=a|0;b=b|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]=b;c[e>>2]=d;c[h>>2]=c[h>>2];c[g>>2]=
c[g>>2];i=f;return c[e>>2]|0}function yf(a,d,e){a=a|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]=a;c[j>>2]=d;c[h>>2]=e;a=zf(c[j>>2]|0,c[h>>2]|0,b[(c[g>
x3e;2]|0)+284+10>>1]|0,b[(c[g>>2]|0)+284+10+2>>1]|0)|0;i=f;return a|0}function zf(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;h=i;i=i+64|0;t=h+48|0;r=h+44|0;s=h+40|0;q=h+36|0;p=
h+32|0;k=h+28|0;n=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;l=h+8|0;o=h+4|0;j=h;c[t>>2]=a;c[r>>2]=b;c[s>>2
]=d;c[q>>2]=e;c[f>>2]=_(c[t>>2]&65535,c[s>>2]|0)|0;c[p>>2]=_(c[t>>
;2]>>16,c[s>>2]|0)|0;c[l>>2]=(c[f>>2]|0)+(c[p>>2]<<16);c[n>>
;2]=(c[p>>2]>>16)+(c[f>>2]>>31)+((c[l>>2]|0)>>>0<(c[f>
;>2]|0)>>>0&1);c[f>>2]=_(c[r>>2]&65535,c[q>>2]|0)|0;c[p>>2
]=_(c[r>>2]>>16,c[q>>2]|0)|0;c[o>>2]=(c[f>>2]|0)+(c[p>>2]<<
;16);c[m>>2]=(c[p>>2]>>16)+(c[f>>2]>>31)+((c[o>>2]|0)>>>
;0<(c[f>>2]|0)>>>0&1);c[j>>2]=(c[l>>2]|0)+(c[o>>2]|0);c[g>
x3e;2]=(c[n>>2]|0)+(c[m>>2]|0)+((c[j>>2]|0)>>>0<(c[l>>2]|0)>>
;>0&1);c[k>>2]=c[g>>2]>>31;c[f>>2]=(c[j>>2]|0)+(c[k>>2]|0);
c[g>>2]=(c[g>>2]|0)+((c[k>>2]|0)+((c[f>>2]|0)>>>0<(c[j>>2]|
0)>>>0&1));c[j>>2]=c[f>>2];c[f>>2]=(c[j>>2]|0)+8192;c[g>>2
]=(c[g>>2]|0)+((c[f>>2]|0)>>>0<(c[j>>2]|0)>>>0&1);i=h;return
c[g>>2]<<18|(c[f>>2]|0)>>>14|0}function Af(a,d,e){a=a|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]=a;c[j>>2]=d;c[h>>2]=e;a=zf(c[j>>2]|0,c[h
x3e;>2]|0,b[(c[g>>2]|0)+284+6>>1]|0,b[(c[g>>2]|0)+284+6+2>>1]|0)|0;i=f;return a|0}function
Bf(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;p=i;i=i+32|0;k=p+12|0;l=p+8|0;m=p+16|0;n=p+4|0;o=p;c[k>>
;2]=f;c[l>>2]=g;b[m>>1]=h;c[n>>2]=j;c[o>>2]=b[(c[k>>2]|0)+284+14>>1];
if(c[o>>2]|0){h=xb(c[n>>2]|0,c[o>>2]<<16,c[(c[k>>2]|0)+564>>2]|0)|0;
g=(c[(c[l>>2]|0)+16>>2]|0)+(e[m>>1]<<3)|0;c[g>>2]=(c[g>>2]|0)+h;g=(c
[(c[l>>2]|0)+24>>2]|0)+(e[m>>1]|0)|0;a[g>>0]=d[g>>0]|8}c[o>>2]=b[(c[
k>>2]|0)+284+14+2>>1];if(!(c[o>>2]|0)){i=p;return}o=xb(c[n>>2]|0,c[o>>2]<
x3c;16,c[(c[k>>2]|0)+564>>2]|0)|0;g=(c[(c[l>>2]|0)+16>>2]|0)+(e[m>>1]<<
;3)+4|0;c[g>>2]=(c[g>>2]|0)+o;g=(c[(c[l>>2]|0)+24>>2]|0)+(e[m>>1]|0)|0;a[g>
;>0]=d[g>>0]|16;i=p;return}function Cf(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;n=i;i=i+32|0;
h=n+12|0;j=n+8|0;k=n+16|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>2]=d;b[k>>1]=f;c[l>>2]=g;c[m>
x3e;2]=b[(c[h>>2]|0)+284+14>>1];if(c[m>>2]|0){f=xb(c[l>>2]|0,c[m>>2]<<
;16,c[(c[h>>2]|0)+564>>2]|0)|0;d=(c[(c[j>>2]|0)+12>>2]|0)+(e[k>>1]<<
3)|0;c[d>>2]=(c[d>>2]|0)+f}c[m>>2]=b[(c[h>>2]|0)+284+14+2>>1];if(!(c[m>
x3e;2]|0)){i=n;return}m=xb(c[l>>2]|0,c[m>>2]<<16,c[(c[h>>2]|0)+564>>2]|0)|0;d=(
c[(c[j>>2]|0)+12>>2]|0)+(e[k>>1]<<3)+4|0;c[d>>2]=(c[d>>2]|0)+m;i=n;return
}function Df(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;k=i;i=i+16|0;o=k+8|0;m=k+4|0;l=k+12|0;n=k;c[o>>2
]=f;c[m>>2]=g;b[l>>1]=h;c[n>>2]=j;c[o>>2]=c[o>>2];g=(c[(c[m>>2]|0)+16
>>2]|0)+((e[l>>1]|0)<<3)|0;c[g>>2]=(c[g>>2]|0)+(c[n>>2]|0);g=(c[(c[m
>>2]|0)+24>>2]|0)+(e[l>>1]|0)|0;a[g>>0]=d[g>>0]|0|8;i=k;return}function Ef(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;h=i;i=i+16|0;m=h+8|0;l=h+4|0;k=h+12|0;j=h;c[m>>2]=a;c[l>>
;2]=d;b[k>>1]=f;c[j>>2]=g;c[m>>2]=c[m>>2];d=(c[(c[l>>2]|0)+12>>2]|0)+((
e[k>>1]|0)<<3)|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);i=h;return}function Ff(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;k=i;i=i+16|0;o=k+8|0;m=k+4|0;l=k+12|0;n=k;c[o>>2]=f;c[m>>
2]=g;b[l>>1]=h;c[n>>2]=j;c[o>>2]=c[o>>2];g=(c[(c[m>>2]|0)+16>>2]|0)+((
e[l>>1]|0)<<3)+4|0;c[g>>2]=(c[g>>2]|0)+(c[n>>2]|0);g=(c[(c[m>>2]|0)+
24>>2]|0)+(e[l>>1]|0)|0;a[g>>0]=d[g>>0]|0|16;i=k;return}function Gf(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;h=i;i=i+16|0;m=h+8|0;l=h+4|0;k=h+12|0;j=h;c[m>>2]=a;c[l>>2]=d;b[k>
x3e;1]=f;c[j>>2]=g;c[m>>2]=c[m>>2];d=(c[(c[l>>2]|0)+12>>2]|0)+((e[k>>
;1]|0)<<3)+4|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);i=h;return}function Hf(b,e){b=b|0;e=e|0;var
f=0,g=0,h=0;g=i;i=i+16|0;f=g;h=g+4|0;c[f>>2]=b;a[h>>0]=e;switch(d[h>>0]|0|0){case 5:{c[(c[f>
x3e;2]|0)+568>>2]=38;break}case 1:{c[(c[f>>2]|0)+568>>2]=33;break}case 4:{c[(c[f>>2]|0)+
568>>2]=39;break}case 3:{c[(c[f>>2]|0)+568>>2]=40;break}case 0:{c[(c[f>>2]|0)+568>
x3e;2]=34;break}case 2:{c[(c[f>>2]|0)+568>>2]=35;break}case 6:{c[(c[f>>2]|0)+568>>2]=36;
break}case 7:{c[(c[f>>2]|0)+568>>2]=37;break}default:{}}i=g;return}function If(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;j=g+12|0;e=g+8|0;h=g+4|0;f=g;c[j>>2]=a;c[e>>2]=b;c[h>>2]=d;c[j>
;>2]=c[j>>2];d=c[e>>2]|0;b=c[h>>2]|0;if((c[e>>2]|0)>=0){j=d+b|0;c[f>>
;2]=j;c[f>>2]=(c[e>>2]|0)!=0&(c[f>>2]|0)<0?0:j;j=c[f>>2]|0;i=g;return j|0}else
{j=d-b|0;c[f>>2]=j;c[f>>2]=(c[f>>2]|0)>0?0:j;j=c[f>>2]|0;i=g;return j|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,j=0;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>
;2]=b;c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e
x3e;>2]|0)+32&-64)|0;c[g>>2]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;
return j|0}c[g>>2]=(c[e>>2]|0)+(c[f>>2]|0)+32;if((c[e>>2]|0)!=0&(c[g>>2]|
0)>0){c[g>>2]=c[g>>2]&-64;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>
;>2]|0;i=h;return j|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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f
=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|
0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)+63&-64)|0;c[g>>2]=j;c[g>>2]=(c[g>>
;2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2]=(c[e>>2]|0)+(c[f>>2]|0)+63;if((c[e
x3e;>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2]=c[g>>2]&-64;j=c[g>>2]|0;i=h;return
j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c[j>>2]=
c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)&-64)|0;c[g>>2
]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2]=(c[e>>2]|
0)+(c[f>>2]|0);if((c[e>>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2]=c[g>>2]&
;-64;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|0}return 0}function Mf(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;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;
c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|0)>=0){j=((c[e>>2]|0)+(c[f>>
;2]|0)&-64)+32|0;c[g>>2]=j;c[g>>2]=(c[e>>2]|0)!=0&(c[g>>2]|0)<0?0:j;j=c[g
>>2]|0;i=h;return j|0}else{j=0-(((c[f>>2]|0)-(c[e>>2]|0)&-64)+32)|0;c[g>>2]=j;c[g
x3e;>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}return 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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c
[j>>2]=c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)+16&-32
)|0;c[g>>2]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2
]=(c[e>>2]|0)+(c[f>>2]|0)+16;if((c[e>>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2
]=c[g>>2]&-32;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|0}
return 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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2
]=a;c[f>>2]=b;c[g>>2]=d;if((c[f>>2]|0)>=0){a=(c[f>>2]|0)-(c[(c[e>>2]|0)+480
>>2]|0)+(c[(c[e>>2]|0)+484>>2]|0)+(c[g>>2]|0)&0-(c[(c[e>>2]|0)+476>
x3e;2]|0);c[h>>2]=a;c[h>>2]=(c[f>>2]|0)!=0&(c[h>>2]|0)<0?0:a;c[h>>2]=(
c[h>>2]|0)+(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}else{a=0-((c[(c[e>
x3e;2]|0)+484>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0)-(c[f>>2]|0)+(c[g>>2]|0)&0-(
c[(c[e>>2]|0)+476>>2]|0))|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>0?0:a;c[h>
x3e;2]=(c[h>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}return 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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>
;2]=b;c[g>>2]=d;if((c[f>>2]|0)>=0){a=_(((c[f>>2]|0)-(c[(c[e>>2]|0)+480>>2
]|0)+(c[(c[e>>2]|0)+484>>2]|0)+(c[g>>2]|0)|0)/(c[(c[e>>2]|0)+476>>2]|0)|0,c[(c
[e>>2]|0)+476>>2]|0)|0;c[h>>2]=a;c[h>>2]=(c[f>>2]|0)!=0&(c[h>>2
]|0)<0?0:a;c[h>>2]=(c[h>>2]|0)+(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;
return h|0}else{a=0-(_(((c[(c[e>>2]|0)+484>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0)-(c[f>
x3e;2]|0)+(c[g>>2]|0)|0)/(c[(c[e>>2]|0)+476>>2]|0)|0,c[(c[e>>2]|0)+476>>2]|0)|
0)|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>0?0:a;c[h>>2]=(c[h>>2]|0)-(c[(c[e>
;>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}return 0}function Qf(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;v=i;i=i+48|0;k=v+36|0;l=v+28|0;m=v+34|0;n=v+32|0;o=v+24|0;p=v+20|0;q=v+
16|0;r=v+12|0;s=v+8|0;t=v+4|0;u=v;c[l>>2]=d;b[m>>1]=f;b[n>>1]=g;c[o>>2]=h;c[p>>
;2]=j;if((e[m>>1]|0)>>>0<(e[(c[l>>2]|0)+108+8>>1]|0)>>>0?(e[n
x3e;>1]|0)>>>0<(e[(c[l>>2]|0)+72+8>>1]|0)>>>0:0){c[t>>2]=(
c[(c[l>>2]|0)+72+16>>2]|0)+(e[n>>1]<<3);c[u>>2]=(c[(c[l>>2]|0)+108+16
>>2]|0)+(e[m>>1]<<3);c[q>>2]=(c[c[t>>2]>>2]|0)-(c[c[u>>2]
x3e;>2]|0);c[r>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[u>>2]|0)+4>>2]|0);if(c[o
>>2]&1|0){c[s>>2]=c[r>>2];c[r>>2]=c[q>>2];c[q>>2]=0-(c[s>
x3e;2]|0)}Rf(c[l>>2]|0,c[q>>2]|0,c[r>>2]|0,c[p>>2]|0)|0;a[k>>0]=0;u=a[k>
x3e;0]|0;i=v;return u|0}if(a[(c[l>>2]|0)+561>>0]|0)c[(c[l>>2]|0)+12>>2]=134;a[k>>
;0]=1;u=a[k>>0]|0;i=v;return u|0}function Rf(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;
p=i;i=i+32|0;h=p+22|0;q=p+16|0;j=p+12|0;k=p+8|0;l=p+4|0;o=p;m=p+21|0;n=p+20|0;c[q>>2]=d;c[j>>2]=e;c[k>
x3e;2]=f;c[l>>2]=g;c[q>>2]=c[q>>2];d=c[j>>2]|0;if((((c[j>>2]|0)<0?0-d|0:d
)|0)<65536?(q=c[k>>2]|0,(((c[k>>2]|0)<0?0-q|0:q)|0)<65536):0){c[j>>2]=c[j>>
;2]<<8;c[k>>2]=c[k>>2]<<8;c[o>>2]=pf(c[j>>2]|0,c[k>>2]|0)|
0;if(!(c[o>>2]|0)){a[h>>0]=0;q=a[h>>0]|0;i=p;return q|0}else{q=(xb(c[j>>2]|0,16384,c[o
x3e;>2]|0)|0)&65535;b[c[l>>2]>>1]=q;q=(xb(c[k>>2]|0,16384,c[o>>2]|0)|0)&65535
;b[(c[l>>2]|0)+2>>1]=q;a[h>>0]=0;q=a[h>>0]|0;i=p;return q|0}}c[o>>2]=pf(c[j>
;>2]|0,c[k>>2]|0)|0;c[j>>2]=xb(c[j>>2]|0,16384,c[o>>2]|0)|0;c[k>>2]=xb(c[
k>>2]|0,16384,c[o>>2]|0)|0;q=_(c[j>>2]|0,c[j>>2]|0)|0;c[o>>2]=q+(_(c[k>
x3e;2]|0,c[k>>2]|0)|0);if((c[j>>2]|0)<0){c[j>>2]=0-(c[j>>2]|0);a[m>>0]=1}
else a[m>>0]=0;if((c[k>>2]|0)<0){c[k>>2]=0-(c[k>>2]|0);a[n>>0]=1}else a[n
>>0]=0;while(1){if((c[o>>2]|0)>=268435456)break;if((c[j>>2]|0)<(c[k>>2]|0))c[j
>>2]=(c[j>>2]|0)+1;else c[k>>2]=(c[k>>2]|0)+1;q=_(c[j>>2]|0,c[j>>2]|
0)|0;c[o>>2]=q+(_(c[k>>2]|0,c[k>>2]|0)|0)}while(1){if((c[o>>2]|0)<268451840)break;if
((c[j>>2]|0)<(c[k>>2]|0))c[j>>2]=(c[j>>2]|0)+-1;else c[k>>2]=(c[k>
x3e;2]|0)+-1;q=_(c[j>>2]|0,c[j>>2]|0)|0;c[o>>2]=q+(_(c[k>>2]|0,c[k>>2]|0)|0)}if
(a[m>>0]|0)c[j>>2]=0-(c[j>>2]|0);if(a[n>>0]|0)c[k>>2]=0-(c[k>>2]|0);
b[c[l>>2]>>1]=c[j>>2];b[(c[l>>2]|0)+2>>1]=c[k>>2];a[h>>0]=
0;q=a[h>>0]|0;i=p;return q|0}function Sf(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;x=i;i=i+64|0;h=x+44|0;y=x+40|0;v=x+56|0;k=x+54|0;l=x+52|0;m=x+50|0;n=x+48|0;s=x+36|0;t=x+32|0;u=x+28|0;o=x+24|0;p=x+
20|0;q=x+16|0;r=x+12|0;w=x+8|0;j=x;c[h>>2]=f;c[y>>2]=g;b[v>>1]=c[c[y>>2]>>2];b
[k>>1]=c[(c[y>>2]|0)+4>>2];b[l>>1]=c[(c[y>>2]|0)+8>>2];b[m>>
;1]=c[(c[y>>2]|0)+12>>2];b[n>>1]=c[(c[y>>2]|0)+16>>2];if(((((e[m>>1]|
0)>>>0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0?(e[n>>1]|0)>>
x3e;0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0:0)?(e[k>>1]|0)>>>0<(e
[(c[h>>2]|0)+72+8>>1]|0)>>>0:0)?(e[l>>1]|0)>>>0<(e[(c[h>
x3e;2]|0)+72+8>>1]|0)>>>0:0)?(e[v>>1]|0)>>>0<(e[(c[h>>2]|0)+108
+8>>1]|0)>>>0:0){c[q>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1
]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>>
2]|0);c[r>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)+4>>2]|0)-(
c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0);c[o>>2]=(c[(c[(c
[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+72+16
x3e;>2]|0)+(e[k>>1]<<3)>>2]|0);c[p>>2]=(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]
x3c;<3)+4>>2]|0);c[t>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<
;3)>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2]|0);c[u>
;>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)-(c[(c[(c[h>
;>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0);y=(c[(c[h>>2]|0)+108+24>
x3e;2]|0)+(e[v>>1]|0)|0;a[y>>0]=d[y>>0]|24;y=xb(c[o>>2]|0,0-(c[r>>2]|0)|0,64)|
0;c[s>>2]=y+(xb(c[p>>2]|0,c[q>>2]|0,64)|0);y=c[s>>2]|0;if((((c[s>>2]|0)<0
?0-y|0:y)|0)>=64){y=xb(c[t>>2]|0,0-(c[r>>2]|0)|0,64)|0;c[w>>2]=y+(xb(c[u>>2]|0,c[q
x3e;>2]|0,64)|0);c[j>>2]=xb(c[w>>2]|0,c[o>>2]|0,c[s>>2]|0)|0;c[j+4>>2]=xb
(c[w>>2]|0,c[p>>2]|0,c[s>>2]|0)|0;c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>
;1]<<3)>>2]=(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2
]|0)+(c[j>>2]|0);c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)+4>>2]=(
c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)+(c[j+4>>2]|0);i=
x;return}else{c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)>>2]=((c[(c[(c[h>
;>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2]|0)+(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]
x3c;<3)>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)>>2]|
0)|0)/4|0;c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)+4>>2]=((c[(c[(c[h>
x3e;2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]
x3c;<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)+4>>
;2]|0)|0)/4|0;i=x;return}}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=x;return}c[(c[h>>2]|0)+12>>2]=
134;i=x;return}function Tf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e
;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>2]|0)+36|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e
x3e;>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{e=(c[g>>2]|0)+36|0;d=(c[g>
x3e;2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c
[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>>2]=134;i=j;return}}b[(c[g>>
2]|0)+284+60>>1]=c[c[h>>2]>>2];i=j;return}function Uf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i
+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>
2]|0)+72|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));
break}case 1:{e=(c[g>>2]|0)+72|0;d=(c[g>>2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0
;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>
2]|0)+12>>2]=134;i=j;return}}b[(c[g>>2]|0)+284+62>>1]=c[c[h>>2]>>2];i=j;return
}function Vf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h
x3e;>2]>>2]|0){case 0:{e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=
c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+144
|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c[g>>
;2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>>2]=134;i=j;return}}b[(c[g>>2]|0)+284+64
x3e;>1]=c[c[h>>2]>>2];i=j;return}function Wf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;
h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>2]|0)+36|0;d=(
c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{
e=(c[g>>2]|0)+36|0;d=(c[g>>2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while
((e|0)<(f|0));break}default:{if(!(a[(c[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>
x3e;2]=134;i=j;return}}e=(c[g>>2]|0)+72|0;d=(c[g>>2]|0)+36|0;f=e+36|0;do{c[e>>2]=c[d>>2];
e=e+4|0;d=d+4|0}while((e|0)<(f|0));e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+36|0;f=e+36|0;do{c[e>>2]=
c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));b[(c[g>>2]|0)+284+60>>1]=c[c[h>>2]>
x3e;2];b[(c[g>>2]|0)+284+62>>1]=c[c[h>>2]>>2];b[(c[g>>2]|0)+284+64>>
1]=c[c[h>>2]>>2];i=j;return}function Xf(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+8|0;h=g+4|0;f=
g;c[e>>2]=a;c[h>>2]=b;c[e>>2]=c[e>>2];c[h>>2]=c[h>>2];c[f>>
;2]=1;while(1){if(((Yf(c[e>>2]|0)|0)&255|0)==1){e=7;break}switch(d[(c[e>>2]|0)+368>>0]|0|0){case
88:{c[f>>2]=(c[f>>2]|0)+1;break}case 89:{c[f>>2]=(c[f>>2]|0)+-1;break}default:{}}if(!(c
[f>>2]|0)){e=7;break}}if((e|0)==7){i=g;return}}function Yf(b){b=b|0;var e=0,f=0,g=0;g=i;i=i+16|0;e=g+4|0;f=g;c[f>
x3e;2]=b;b=(c[f>>2]|0)+360|0;c[b>>2]=(c[b>>2]|0)+(c[(c[f>>2]|0)+372>>2]|0);do
if((c[(c[f>>2]|0)+360>>2]|0)<(c[(c[f>>2]|0)+364>>2]|0)){a[(c[f>>2]|0)+368
>>0]=a[(c[(c[f>>2]|0)+356>>2]|0)+(c[(c[f>>2]|0)+360>>2]|0)>>0]|0;c[(
c[f>>2]|0)+372>>2]=a[10705+(d[(c[f>>2]|0)+368>>0]|0)>>0];if((c[(c[f>>
;2]|0)+372>>2]|0)<0){if(((c[(c[f>>2]|0)+360>>2]|0)+1|0)>(c[(c[f>>2]|0)+364>
;>2]|0))break;b=2-(_(c[(c[f>>2]|0)+372>>2]|0,d[(c[(c[f>>2]|0)+356>>2]|0)+((c[(c[f
x3e;>2]|0)+360>>2]|0)+1)>>0]|0)|0)|0;c[(c[f>>2]|0)+372>>2]=b}if(((c[(c[f>>
;2]|0)+360>>2]|0)+(c[(c[f>>2]|0)+372>>2]|0)|0)<=(c[(c[f>>2]|0)+364>>2]|0)){
a[e>>0]=0;b=a[e>>0]|0;i=g;return b|0}}while(0);c[(c[f>>2]|0)+12>>2]=131;a[e>>0
]=1;b=a[e>>0]|0;i=g;return b|0}function Zf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;d=g+12|0;h=g+8|0;f=g+
4|0;e=g;c[d>>2]=a;c[h>>2]=b;c[f>>2]=c[c[h>>2]>>2];if((c[f>>2]|0)>
;0?(c[f>>2]|0)<=(c[(c[d>>2]|0)+28>>2]|0):0){c[e>>2]=c[(c[(c[d>>2]|0)+24
x3e;>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)<<2)>>2];Ts((c[(c[d>
x3e;2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)<<2)|0,(c[(c[d>
x3e;2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)+1<<2)|0,(c[f>
x3e;2]|0)-1<<2|0)|0;c[(c[(c[d>>2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-1<
;<2)>>2]=c[e>>2];i=g;return}c[(c[d>>2]|0)+12>>2]=134;i=g;return}function _f(d,f){d=
d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;g=l+8|0;m=l+4|0;j=l+14|0;k=l+12|0;h=l;c[g>>2]=d;c[m>>2]=f
;b[j>>1]=c[c[m>>2]>>2];b[k>>1]=c[(c[m>>2]|0)+4>>2];if((e[j>>
;1]|0)>>>0<(e[(c[g>>2]|0)+72+8>>1]|0)>>>0?(e[k>>1]|0)>>
;>0<(e[(c[g>>2]|0)+36+8>>1]|0)>>>0:0){c[h>>2]=(Oa[c[(c[g>>2]|0)+
572>>2]&63](c[g>>2]|0,(c[(c[(c[g>>2]|0)+36+16>>2]|0)+(e[k>>1]<<
3)>>2]|0)-(c[(c[(c[g>>2]|0)+72+16>>2]|0)+(e[j>>1]<<3)>>2]|0)|0,(c[(c
[(c[g>>2]|0)+36+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)-(c[(c[(c[g>>2]|0)+72
+16>>2]|0)+(e[j>>1]<<3)+4>>2]|0)|0)|0)/2|0;_a[c[(c[g>>2]|0)+584>>2]
x26;15](c[g>>2]|0,(c[g>>2]|0)+72|0,b[j>>1]|0,c[h>>2]|0);_a[c[(c[g>>2]|0)+584
x3e;>2]&15](c[g>>2]|0,(c[g>>2]|0)+36|0,b[k>>1]|0,0-(c[h>>2]|0)|0);i=l;return}if
(!(a[(c[g>>2]|0)+561>>0]|0)){i=l;return}c[(c[g>>2]|0)+12>>2]=134;i=l;return}function $f(
b,e){b=b|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+16|0;m=l+12|0;k=l+8|0;f=l+4|0;j=l;c[h>>2]=b;c[m>
;>2]=e;c[k>>2]=c[(c[h>>2]|0)+416>>2];c[f>>2]=(c[k>>2]|0)+(c[(c[h>>
;2]|0)+408>>2]<<4);c[h>>2]=c[h>>2];c[m>>2]=c[m>>2];while(1){if((c[k
x3e;>2]|0)>>>0>=(c[f>>2]|0)>>>0){g=9;break}if((c[(c[k>>2]|0)+8>
x3e;2]&255|0)==(d[(c[h>>2]|0)+368>>0]|0|0)?d[(c[k>>2]|0)+12>>0]|0|0:0)break;c[k>
;>2]=(c[k>>2]|0)+16}if((g|0)==9){c[(c[h>>2]|0)+12>>2]=128;i=l;return}e=c[h>>2]|0;if
((c[(c[h>>2]|0)+428>>2]|0)>=(c[(c[h>>2]|0)+432>>2]|0)){c[e+12>>2]=130;i=l
;return}else{g=c[e+436>>2]|0;f=(c[h>>2]|0)+428|0;m=c[f>>2]|0;c[f>>2]=m+1;c[j>>
2]=g+(m<<4);c[c[j>>2]>>2]=c[(c[h>>2]|0)+352>>2];c[(c[j>>2]|0)+4>
;>2]=(c[(c[h>>2]|0)+360>>2]|0)+1;c[(c[j>>2]|0)+8>>2]=1;c[(c[j>>2]|0)+12
x3e;>2]=c[(c[k>>2]|0)+4>>2];ag(c[h>>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>
;2]|0)+4>>2]|0)|0;a[(c[h>>2]|0)+376>>0]=0;i=l;return}}function ag(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;l=i;i=i+32|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=b;c[h>>2]=d;c[j>>2
]=e;if((c[h>>2]|0)<1|(c[h>>2]|0)>3){c[(c[g>>2]|0)+12>>2]=132;a[f>>0]=
1;k=a[f>>0]|0;i=l;return k|0}c[k>>2]=(c[g>>2]|0)+444+((c[h>>2]|0)-1<<3);if(!(c
[c[k>>2]>>2]|0)){c[(c[g>>2]|0)+12>>2]=138;a[f>>0]=1;k=a[f>>0]|0;i=l;
return k|0}if((c[j>>2]|0)>>>0>(c[(c[k>>2]|0)+4>>2]|0)>>>0){c[(c
[g>>2]|0)+12>>2]=131;a[f>>0]=1;k=a[f>>0]|0;i=l;return k|0}else{c[(c[g>>2]|0)+356
>>2]=c[c[k>>2]>>2];c[(c[g>>2]|0)+364>>2]=c[(c[k>>2]|0)+4>>
2];c[(c[g>>2]|0)+360>>2]=c[j>>2];c[(c[g>>2]|0)+352>>2]=c[h>>2];a[f
x3e;>0]=0;k=a[f>>0]|0;i=l;return k|0}return 0}function bg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;h
=l+4|0;m=l;k=l+8|0;j=l+10|0;c[h>>2]=f;c[m>>2]=g;b[k>>1]=c[c[m>>2]>>2];if((e[k
x3e;>1]|0)>>>0>=(e[(c[h>>2]|0)+36+8>>1]|0)>>>0){if(!(a[(c[h>>
;2]|0)+561>>0]|0)){i=l;return}c[(c[h>>2]|0)+12>>2]=134;i=l;return}a[j>>0]=-1;if(b[(c[h
x3e;>2]|0)+284+14>>1]|0)a[j>>0]=d[j>>0]&-9;if(b[(c[h>>2]|0)+284+14+2>>
;1]|0)a[j>>0]=d[j>>0]&-17;m=(c[(c[h>>2]|0)+36+24>>2]|0)+(e[k>>1]|0)|0;a[m
>>0]=d[m>>0]&d[j>>0];i=l;return}function cg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;
l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;k=l+8|0;h=l+4|0;j=l;c[e>>2]=b;c[f>>2]=d;c[g>>2]=c[(c[f>
;>2]|0)+4>>2];do if((c[g>>2]|0)>>>0<((c[(c[e>>2]|0)+420>>2]|0)+
1|0)>>>0){c[h>>2]=(c[(c[e>>2]|0)+404>>2]|0)+(c[g>>2]<<4);if(!(((
c[(c[e>>2]|0)+420>>2]|0)+1|0)==(c[(c[e>>2]|0)+396>>2]|0)?(c[(c[h>>2]|0)+8>
;>2]|0)==(c[g>>2]|0):0)){c[h>>2]=c[(c[e>>2]|0)+404>>2];c[j>>2]=(c[h>
x3e;2]|0)+(c[(c[e>>2]|0)+396>>2]<<4);while(1){if((c[h>>2]|0)>>>0<(c[
j>>2]|0)>>>0)d=(c[(c[h>>2]|0)+8>>2]|0)!=(c[g>>2]|0);else d=0;b=c[h>
x3e;2]|0;if(!d)break;c[h>>2]=b+16}if((b|0)==(c[j>>2]|0))break}if(a[(c[h>>2]|0)+12>>0]|0){
if((c[(c[e>>2]|0)+428>>2]|0)>=(c[(c[e>>2]|0)+432>>2]|0)){c[(c[e>>2]|0)+12
>>2]=130;i=l;return}if((c[c[f>>2]>>2]|0)<=0){i=l;return}c[k>>2]=(c[(c[e>>
2]|0)+436>>2]|0)+(c[(c[e>>2]|0)+428>>2]<<4);c[c[k>>2]>>2]=c[(c[e>
;>2]|0)+352>>2];c[(c[k>>2]|0)+4>>2]=(c[(c[e>>2]|0)+360>>2]|0)+1;c[(c[k>
;>2]|0)+8>>2]=c[c[f>>2]>>2];c[(c[k>>2]|0)+12>>2]=c[(c[h>>2]|0)+
4>>2];k=(c[e>>2]|0)+428|0;c[k>>2]=(c[k>>2]|0)+1;ag(c[e>>2]|0,c[c[h>>
2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0)|0;a[(c[e>>2]|0)+376>>0]=0;i=l;return}}while(0);
c[(c[e>>2]|0)+12>>2]=134;i=l;return}function dg(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;g=k+20|0;l=k+16|0;e=k+12|0;j=k+8|0;h=k+4|0;f=k;c[g>>2]=b;c[l>>2]=d;c[e>>2]=c[c[l>>2]
x3e;>2];do if((c[e>>2]|0)>>>0<((c[(c[g>>2]|0)+420>>2]|0)+1|0)>>
x3e;0){c[h>>2]=(c[(c[g>>2]|0)+404>>2]|0)+(c[e>>2]<<4);if(!(((c[(c[g>>
;2]|0)+420>>2]|0)+1|0)==(c[(c[g>>2]|0)+396>>2]|0)?(c[(c[h>>2]|0)+8>>2]|0)==(c[
e>>2]|0):0)){c[h>>2]=c[(c[g>>2]|0)+404>>2];c[f>>2]=(c[h>>2]|0)+(c[(c
[g>>2]|0)+396>>2]<<4);while(1){if((c[h>>2]|0)>>>0<(c[f>>2]|
0)>>>0)b=(c[(c[h>>2]|0)+8>>2]|0)!=(c[e>>2]|0);else b=0;d=c[h>>2]|0;if(!b)
break;c[h>>2]=d+16}if((d|0)==(c[f>>2]|0))break}if(a[(c[h>>2]|0)+12>>0]|0){d=c[g>>
;2]|0;if((c[(c[g>>2]|0)+428>>2]|0)>=(c[(c[g>>2]|0)+432>>2]|0)){c[d+12>>2]=
130;i=k;return}else{c[j>>2]=(c[d+436>>2]|0)+(c[(c[g>>2]|0)+428>>2]<<4);c[c[j
x3e;>2]>>2]=c[(c[g>>2]|0)+352>>2];c[(c[j>>2]|0)+4>>2]=(c[(c[g>>
2]|0)+360>>2]|0)+1;c[(c[j>>2]|0)+8>>2]=1;c[(c[j>>2]|0)+12>>2]=c[(c[h>>
;2]|0)+4>>2];l=(c[g>>2]|0)+428|0;c[l>>2]=(c[l>>2]|0)+1;ag(c[g>>2]|0,c[c[h>
;>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0)|0;a[(c[g>>2]|0)+376>>0]=0;i=k;return}}}
while(0);c[(c[g>>2]|0)+12>>2]=134;i=k;return}function eg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=
i+32|0;j=k+16|0;l=k+12|0;g=k+8|0;h=k+4|0;f=k;c[j>>2]=b;c[l>>2]=e;c[h>>2]=c[(c[j>>2]|0)+404
>>2];c[f>>2]=(c[h>>2]|0)+(c[(c[j>>2]|0)+396>>2]<<4);c[g>>2
]=c[c[l>>2]>>2];while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>
x3e;0)break;if((c[(c[h>>2]|0)+8>>2]|0)==(c[g>>2]|0))break;c[h>>2]=(c[h>>2]|0)+
16}do if((c[h>>2]|0)==(c[f>>2]|0)){e=c[j>>2]|0;if((c[(c[j>>2]|0)+396>>2]|0)>
;>>0<(c[(c[j>>2]|0)+400>>2]|0)>>>0){l=e+396|0;c[l>>2]=(c[l>>
;2]|0)+1;break}c[e+12>>2]=140;i=k;return}while(0);e=c[j>>2]|0;if((c[g>>2]|0)>>>0>
;65535){c[e+12>>2]=140;i=k;return}c[c[h>>2]>>2]=c[e+352>>2];c[(c[h>>2]|0)+8>
;>2]=c[g>>2]&65535;c[(c[h>>2]|0)+4>>2]=(c[(c[j>>2]|0)+360>>2]|0)+1;a
[(c[h>>2]|0)+12>>0]=1;if((c[g>>2]|0)>>>0>(c[(c[j>>2]|0)+420>>
;2]|0)>>>0)c[(c[j>>2]|0)+420>>2]=c[g>>2]&65535;a:while(1){if((Yf(c[j>>
;2]|0)|0)&255|0){e=16;break}switch(d[(c[j>>2]|0)+368>>0]|0|0){case 44:case 137:{e=15;break a}case 45:{e
=16;break a}default:{}}}if((e|0)==15){c[(c[j>>2]|0)+12>>2]=137;i=k;return}else if((e|0)==16){i=k;return}}function
fg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+8|0;h=g+4|0;f=g;c[e>>2]=b;c[h>>2]=d;c[e>>
;2]=c[e>>2];c[h>>2]=c[h>>2];d=c[e>>2]|0;if((c[(c[e>>2]|0)+428>>2]|0)
x3c;=0){c[d+12>>2]=136;i=g;return}d=d+428|0;c[d>>2]=(c[d>>2]|0)+-1;c[f>>2]=(c[(c[e>
x3e;2]|0)+436>>2]|0)+(c[(c[e>>2]|0)+428>>2]<<4);d=(c[f>>2]|0)+8|0;c[d>>
;2]=(c[d>>2]|0)+-1;a[(c[e>>2]|0)+376>>0]=0;d=c[e>>2]|0;if((c[(c[f>>2]|0)+8>
;>2]|0)>0){h=d+428|0;c[h>>2]=(c[h>>2]|0)+1;c[(c[e>>2]|0)+360>>2]=c[(c[f>
x3e;2]|0)+12>>2];i=g;return}else{ag(d,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0
;i=g;return}}function gg(f,g){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;h=m+12|0;n=m+8|0;l=m+16|0;j=m+4|0;k=m;c[h>
;>2]=f;c[n>>2]=g;b[l>>1]=c[c[n>>2]>>2];g=c[h>>2]|0;if((e[l>>1]|
0)>>>0>=(e[(c[h>>2]|0)+36+8>>1]|0)>>>0){if(!(a[g+561>>0]|0)){i=
m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}if(d[g+368>>0]&1|0){c[j>>2]=Oa[c[(c[h
x3e;>2]|0)+572>>2]&63](c[h>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[l>>
;1]<<3)>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[l>>1]<<3)+4>>
;2]|0)|0;n=Oa[c[(c[h>>2]|0)+568>>2]&63](c[h>>2]|0,c[j>>2]|0,c[(c[h>>2]|0)+
244+20>>2]|0)|0;c[k>>2]=n-(c[j>>2]|0)}else c[k>>2]=0;_a[c[(c[h>>2]|0)+584>
;>2]&15](c[h>>2]|0,(c[h>>2]|0)+36|0,b[l>>1]|0,c[k>>2]|0);b[(c[h>>2]|
0)+284>>1]=b[l>>1]|0;b[(c[h>>2]|0)+284+2>>1]=b[l>>1]|0;i=m;return}function hg(
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;r=i;i=i+64|0;h=r+44|0;s=r+40|0;j=r+24|0;p=r+50|0;n=r+16|0;m=r+12
|0;o=r+8|0;l=r+4|0;q=r;k=r+48|0;c[h>>2]=f;c[s>>2]=g;c[h>>2]=c[h>>2];c[s>>2]=c[
s>>2];if(!(b[(c[h>>2]|0)+144+10>>1]|0)){i=r;return}if(d[(c[h>>2]|0)+368>>0]&
;1|0){a[p>>0]=8;c[j>>2]=c[(c[h>>2]|0)+144+12>>2];c[j+4>>2]=c[(c[h>>2
]|0)+144+16>>2];c[j+8>>2]=c[(c[h>>2]|0)+144+20>>2]}else{a[p>>0]=16;c[j>
x3e;2]=(c[(c[h>>2]|0)+144+12>>2]|0)+4;c[j+4>>2]=(c[(c[h>>2]|0)+144+16>>2]|0)+4
;c[j+8>>2]=(c[(c[h>>2]|0)+144+20>>2]|0)+4}c[j+12>>2]=e[(c[h>>2]|0)+144+8>
x3e;1];b[k>>1]=0;c[q>>2]=0;do{c[m>>2]=(e[(c[(c[h>>2]|0)+144+28>>2]|0)+(b[k>
;>1]<<1)>>1]|0)-(e[(c[h>>2]|0)+144+32>>1]|0);c[n>>2]=c[q>>2];if
((c[m>>2]|0)>>>0>=(e[(c[h>>2]|0)+144+8>>1]|0)>>>0)c[m>>
;2]=(e[(c[h>>2]|0)+144+8>>1]|0)-1;while(1){if((c[q>>2]|0)>>>0<=(c[m>>
;2]|0)>>>0)g=(d[(c[(c[h>>2]|0)+144+24>>2]|0)+(c[q>>2]|0)>>0]&d[p>
;>0]|0)==0;else g=0;f=c[q>>2]|0;if(!g)break;c[q>>2]=f+1}do if(f>>>0<=(c[m>>
;2]|0)>>>0){c[o>>2]=c[q>>2];c[l>>2]=c[q>>2];c[q>>2]=(c[q>
x3e;2]|0)+1;while(1){if((c[q>>2]|0)>>>0>(c[m>>2]|0)>>>0)break;if(d[(c[(c[
h>>2]|0)+144+24>>2]|0)+(c[q>>2]|0)>>0]&d[p>>0]|0){ig(j,(c[l>>2]|
0)+1|0,(c[q>>2]|0)-1|0,c[l>>2]|0,c[q>>2]|0);c[l>>2]=c[q>>2]}c[q>>2]=(
c[q>>2]|0)+1}if((c[l>>2]|0)==(c[o>>2]|0)){jg(j,c[n>>2]|0,c[m>>2]|0,c[l>
x3e;2]|0);break}ig(j,(c[l>>2]|0)+1&65535,c[m>>2]|0,c[l>>2]|0,c[o>>2]|0);if((c[o>
;>2]|0)>>>0>0)ig(j,c[n>>2]|0,(c[o>>2]|0)-1|0,c[l>>2]|0,c[o>>2]|
0)}while(0);b[k>>1]=(b[k>>1]|0)+1<<16>>16}while((b[k>>1]|0)<(b[(c[h>
x3e;2]|0)+144+10>>1]|0));i=r;return}function ig(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,x=0,y=0,z=0,A=0;A=i;i=i+80|0;h=A+64|0;j=A+60|0;k=A+56|0;l=A+52|0;m=A+48|0;p=A+44|0;s=A+40|0;t
=A+36|0;q=A+32|0;r=A+28|0;n=A+24|0;o=A+20|0;w=A+16|0;x=A+12|0;y=A+8|0;u=A+4|0;v=A+68|0;z=A;c[h>>2]=b;c[j>>2]=
d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;if((c[j>>2]|0)>>>0>(c[k>>2
]|0)>>>0){i=A;return}if((c[l>>2]|0)>>>0>=(c[(c[h>>2]|0)+12>>2]|
0)>>>0){i=A;return}if((c[m>>2]|0)>>>0>=(c[(c[h>>2]|0)+12>>2]|0)
x3e;>>0){i=A;return}c[s>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+(c[l>>2]<<3)
x3e;>2];c[t>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+(c[m>>2]<<3)>>2];if((
c[s>>2]|0)>(c[t>>2]|0)){c[w>>2]=c[s>>2];c[s>>2]=c[t>>2];c[t>
;>2]=c[w>>2];c[x>>2]=c[l>>2];c[l>>2]=c[m>>2];c[m>>2]=c[x>
x3e;2]}c[q>>2]=c[(c[c[h>>2]>>2]|0)+(c[l>>2]<<3)>>2];c[r>>2
]=c[(c[c[h>>2]>>2]|0)+(c[m>>2]<<3)>>2];c[n>>2]=(c[(c[(c[h>>
;2]|0)+4>>2]|0)+(c[l>>2]<<3)>>2]|0)-(c[q>>2]|0);c[o>>2]=(c[(c[(c[h
x3e;>2]|0)+4>>2]|0)+(c[m>>2]<<3)>>2]|0)-(c[r>>2]|0);if((c[s>>2]|
0)==(c[t>>2]|0)){c[p>>2]=c[j>>2];while(1){if((c[p>>2]|0)>>>0>(c[k>
;>2]|0)>>>0)break;c[y>>2]=c[(c[c[h>>2]>>2]|0)+(c[p>>2]<<3)
x3e;>2];if((c[y>>2]|0)<=(c[q>>2]|0))c[y>>2]=(c[y>>2]|0)+(c[n>>2]|0);
else c[y>>2]=(c[y>>2]|0)+(c[o>>2]|0);c[(c[(c[h>>2]|0)+4>>2]|0)+(c[p>>
;2]<<3)>>2]=c[y>>2];c[p>>2]=(c[p>>2]|0)+1}i=A;return}c[u>>2]=0;a[v
x3e;>0]=0;c[p>>2]=c[j>>2];while(1){if((c[p>>2]|0)>>>0>(c[k>>2]|
0)>>>0)break;c[z>>2]=c[(c[c[h>>2]>>2]|0)+(c[p>>2]<<3)>>
;2];do if((c[z>>2]|0)<=(c[q>>2]|0))c[z>>2]=(c[z>>2]|0)+(c[n>>2]|0);else{if
((c[z>>2]|0)>=(c[r>>2]|0)){c[z>>2]=(c[z>>2]|0)+(c[o>>2]|0);break}if(!(a[v
>>0]|0)){a[v>>0]=1;c[u>>2]=xb((c[r>>2]|0)+(c[o>>2]|0)-((c[q>>2]|0)+(
c[n>>2]|0))|0,65536,(c[t>>2]|0)-(c[s>>2]|0)|0)|0}y=(c[q>>2]|0)+(c[n>>2]|0)|0;c
[z>>2]=y+(Mb((c[(c[(c[h>>2]|0)+8>>2]|0)+(c[p>>2]<<3)>>2]|0)-(c[s>
;>2]|0)|0,c[u>>2]|0)|0)}while(0);c[(c[(c[h>>2]|0)+4>>2]|0)+(c[p>>2]<<3)
x3e;>2]=c[z>>2];c[p>>2]=(c[p>>2]|0)+1}i=A;return}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;m=i;i=i+32|0;f=m+20|0;g=m+16|0;h=m+12|0;j=m+8|0;l=m+4|0;k=m;c[f>>2]=a;c[g>>
2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=(c[(c[(c[f>>2]|0)+4>>2]|0)+(c[j>>2]
x3c;<3)>>2]|0)-(c[(c[c[f>>2]>>2]|0)+(c[j>>2]<<3)>>2]|0);if(!(c[
k>>2]|0)){i=m;return}c[l>>2]=c[g>>2];while(1){if((c[l>>2]|0)>>>0>=(c
[j>>2]|0)>>>0)break;a=(c[(c[f>>2]|0)+4>>2]|0)+(c[l>>2]<<3)|0;c[
a>>2]=(c[a>>2]|0)+(c[k>>2]|0);c[l>>2]=(c[l>>2]|0)+1}c[l>>2]=(c[j>
;>2]|0)+1;while(1){if((c[l>>2]|0)>>>0>(c[h>>2]|0)>>>0)break;a=(c[(c[
f>>2]|0)+4>>2]|0)+(c[l>>2]<<3)|0;c[a>>2]=(c[a>>2]|0)+(c[k>>
;2]|0);c[l>>2]=(c[l>>2]|0)+1}i=m;return}function kg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+64|
0;k=l+48|0;m=l+44|0;g=l+4|0;h=l;j=l+52|0;c[k>>2]=d;c[m>>2]=f;c[k>>2]=c[k>>2];c[m>
x3e;2]=c[m>>2];f=c[k>>2]|0;if((c[(c[k>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0)+284
+20>>2]|0)){c[f+12>>2]=134;i=l;return}if((lg(f,g,h,l+8|0,l+54|0)|0)<<24>>24){i=l;return}
while(1){d=c[k>>2]|0;if((c[(c[k>>2]|0)+284+20>>2]|0)<=0){f=10;break}f=d+28|0;c[f>>2
]=(c[f>>2]|0)+-1;b[j>>1]=c[(c[(c[k>>2]|0)+24>>2]|0)+(c[(c[k>>2]|0)+28>>
;2]<<2)>>2];f=c[k>>2]|0;if((e[j>>1]|0)>>>0>=(e[(c[k>>2]|0)+
108+8>>1]|0)>>>0){if(a[f+561>>0]|0){f=7;break}}else mg(f,b[j>>1]|0,c[g>>2
]|0,c[h>>2]|0,1);m=(c[k>>2]|0)+284+20|0;c[m>>2]=(c[m>>2]|0)+-1}if((f|0)==7){c[(c[k>
x3e;2]|0)+12>>2]=134;i=l;return}else if((f|0)==10){c[d+284+20>>2]=1;c[(c[k>>2]|0)+32>>2]=
c[(c[k>>2]|0)+28>>2];i=l;return}}function lg(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;u=i;i=i+64|0;l=u+62|0;m=u+56|0;n=u+52|0;o=u+48|0;p=u+44|0;q=u+40|0;t=u+4|0;s=u+60|0;r=u;c[m>>2]=
f;c[n>>2]=g;c[o>>2]=h;c[p>>2]=j;c[q>>2]=k;f=c[m>>2]|0;if(d[(c[m>>2]|
0)+368>>0]&1|0){g=t;f=f+36|0;k=g+36|0;do{c[g>>2]=c[f>>2];g=g+4|0;f=f+4|0}while((g|0)<(k|
0));b[s>>1]=b[(c[m>>2]|0)+284+2>>1]|0}else{g=t;f=f+72|0;k=g+36|0;do{c[g>>2]=c[f>>
;2];g=g+4|0;f=f+4|0}while((g|0)<(k|0));b[s>>1]=b[(c[m>>2]|0)+284+4>>1]|0}if((e[s>>1
]|0)>>>0<(e[t+8>>1]|0)>>>0){g=c[p>>2]|0;f=t;k=g+36|0;do{c[g>>2]=
c[f>>2];g=g+4|0;f=f+4|0}while((g|0)<(k|0));b[c[q>>2]>>1]=b[s>>1]|0;c[r>>2
]=Oa[c[(c[m>>2]|0)+572>>2]&63](c[m>>2]|0,(c[(c[t+16>>2]|0)+(e[s>>1]<
x3c;3)>>2]|0)-(c[(c[t+12>>2]|0)+(e[s>>1]<<3)>>2]|0)|0,(c[(c[t+16>>2]|
0)+(e[s>>1]<<3)+4>>2]|0)-(c[(c[t+12>>2]|0)+(e[s>>1]<<3)+4>>
;2]|0)|0)|0;t=xb(c[r>>2]|0,b[(c[m>>2]|0)+284+14>>1]<<16,c[(c[m>>2]|0)+564>
;>2]|0)|0;c[c[n>>2]>>2]=t;t=xb(c[r>>2]|0,b[(c[m>>2]|0)+284+14+2>>1]<
x3c;16,c[(c[m>>2]|0)+564>>2]|0)|0;c[c[o>>2]>>2]=t;a[l>>0]=0;t=a[l>>0
]|0;i=u;return t|0}if(a[(c[m>>2]|0)+561>>0]|0)c[(c[m>>2]|0)+12>>2]=134;b[c[q>>
2]>>1]=0;a[l>>0]=1;t=a[l>>0]|0;i=u;return t|0}function mg(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;q=i;i=i+16|0;l=q+8|0;m=q+12|0;n=q+4|0;o=q;p=q+14|0;c[l>>2]=f;b[m>>1]=g;c[n>
;>2]=h;c[o>>2]=j;a[p>>0]=k;if(b[(c[l>>2]|0)+284+14>>1]|0?(k=(c[(c[l>>2]|0
)+108+16>>2]|0)+(e[m>>1]<<3)|0,c[k>>2]=(c[k>>2]|0)+(c[n>>2]|0),a[p
x3e;>0]|0):0){k=(c[(c[l>>2]|0)+108+24>>2]|0)+(e[m>>1]|0)|0;a[k>>0]=d[k>>0
]|8}if(!(b[(c[l>>2]|0)+284+14+2>>1]|0)){i=q;return}k=(c[(c[l>>2]|0)+108+16>>2]|0)+(e[m
x3e;>1]<<3)+4|0;c[k>>2]=(c[k>>2]|0)+(c[o>>2]|0);if(!(a[p>>0]|0)){i=q;return
}k=(c[(c[l>>2]|0)+108+24>>2]|0)+(e[m>>1]|0)|0;a[k>>0]=d[k>>0]|16;i=q;return}function
ng(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;q=i;i=i+64|0;g=q+48|0;r=q+44|0;p=q+8|0;o=q+60|0;j=q+4|0;k=q
;h=q+58|0;l=q+56|0;n=q+54|0;m=q+52|0;c[g>>2]=d;c[r>>2]=f;b[h>>1]=c[c[r>>2]>>2];
f=c[g>>2]|0;if((b[h>>1]|0)>>>0>=(b[(c[g>>2]|0)+144+10>>1]|0)>
x3e;>0){if(!(a[f+561>>0]|0)){i=q;return}c[(c[g>>2]|0)+12>>2]=134;i=q;return}if((lg(f,j,k,p,o)|
0)<<24>>24){i=q;return}if(!(b[h>>1]|0))b[l>>1]=0;else b[l>>1]=(e[(c[(c[g>
x3e;2]|0)+144+28>>2]|0)+((b[h>>1]|0)-1<<1)>>1]|0)+1-(e[(c[g>>2]|0)+144+32>
;>1]|0);b[n>>1]=(e[(c[(c[g>>2]|0)+144+28>>2]|0)+(b[h>>1]<<1)>>1
]|0)-(e[(c[g>>2]|0)+144+32>>1]|0);do if((e[n>>1]|0)>>>0>=(e[(c[g>>2]|
0)+108+8>>1]|0)>>>0)if((e[(c[g>>2]|0)+108+8>>1]|0)>0){b[n>>1]=(e[(c[
g>>2]|0)+108+8>>1]|0)-1;break}else{b[n>>1]=0;break}while(0);b[m>>1]=b[l>>1]|0;
while(1){if((e[m>>1]|0)>(e[n>>1]|0))break;if(!((c[p+16>>2]|0)==(c[(c[g>>2]|0)+108+16
>>2]|0)?(e[o>>1]|0)==(e[m>>1]|0):0))mg(c[g>>2]|0,b[m>>1]|0,c[j>>2]|0
,c[k>>2]|0,1);b[m>>1]=(b[m>>1]|0)+1<<16>>16}i=q;return}function og(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;p=i;i=i+64|0;g=p+48|0;q=p+44|0;n=p+8|0;m=p+56|0;h=p+4|0;j=p;l=p+54|0;k=p+52|0;
c[g>>2]=d;c[q>>2]=f;f=c[g>>2]|0;if((c[c[q>>2]>>2]|0)>>>0>=
2){if(!(a[f+561>>0]|0)){i=p;return}c[(c[g>>2]|0)+12>>2]=134;i=p;return}if((lg(f,h,j,n,m)|0)<
x3c;24>>24){i=p;return}if((e[(c[g>>2]|0)+284+64>>1]|0)==0?(e[(c[g>>2]|0)+108+8>>
;1]|0)>0:0)b[l>>1]=(e[(c[g>>2]|0)+108+8>>1]|0)-1;else o=8;do if((o|0)==8){if((e[(c[g>>
;2]|0)+284+64>>1]|0)==1?(b[(c[g>>2]|0)+108+10>>1]|0)>0:0){b[l>>1]=b[(c[(c[g>
x3e;2]|0)+108+28>>2]|0)+((b[(c[g>>2]|0)+108+10>>1]|0)-1<<1)>>1]|0;if((e[l>
;>1]|0)>>>0<(e[(c[g>>2]|0)+108+8>>1]|0)>>>0)break;if(!(a[(c[g>
x3e;2]|0)+561>>0]|0)){i=p;return}c[(c[g>>2]|0)+12>>2]=134;i=p;return}b[l>>1]=0}while(0);
b[k>>1]=0;while(1){if((e[k>>1]|0)>(e[l>>1]|0))break;if(!((c[n+16>>2]|0)==(c[(c[g>
;>2]|0)+108+16>>2]|0)?(e[m>>1]|0)==(e[k>>1]|0):0))mg(c[g>>2]|0,b[k>>1]|0,
c[h>>2]|0,c[j>>2]|0,0);b[k>>1]=(b[k>>1]|0)+1<<16>>16}i=p;return}function
pg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;l=m+12|0;g=m+8|0;h=m+4|0;j=m;k=m+16|0;c[l>>2]=d;c[g>
;>2]=f;if((c[(c[l>>2]|0)+16>>2]|0)<((c[(c[l>>2]|0)+284+20>>2]|0)+1|0)){c[(c[l
x3e;>2]|0)+12>>2]=134;i=m;return}c[h>>2]=qg(c[c[g>>2]>>2]|0,b[(c[l>>2]|0)+
284+14>>1]|0)|0;c[j>>2]=qg(c[c[g>>2]>>2]|0,b[(c[l>>2]|0)+284+14+2>>1
]|0)|0;while(1){f=c[l>>2]|0;if((c[(c[l>>2]|0)+284+20>>2]|0)<=0){g=10;break}g=f+28|0;c[g>
x3e;2]=(c[g>>2]|0)+-1;b[k>>1]=c[(c[(c[l>>2]|0)+24>>2]|0)+(c[(c[l>>2]|0)+28>
;>2]<<2)>>2];g=c[l>>2]|0;if((e[k>>1]|0)>>>0>=(e[(c[l>>
;2]|0)+108+8>>1]|0)>>>0){if(a[g+561>>0]|0){g=7;break}}else mg(g,b[k>>1]|0,c[h>
x3e;2]|0,c[j>>2]|0,1);d=(c[l>>2]|0)+284+20|0;c[d>>2]=(c[d>>2]|0)+-1}if((g|0)==7){c[(c[l
x3e;>2]|0)+12>>2]=134;i=m;return}else if((g|0)==10){c[f+284+20>>2]=1;c[(c[l>>2]|0)+32>
x3e;2]=c[(c[l>>2]|0)+28>>2];i=m;return}}function qg(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
;m=i;i=i+32|0;d=m+28|0;e=m+24|0;l=m+20|0;f=m+16|0;g=m+12|0;k=m+8|0;j=m+4|0;h=m;c[d>>2]=a;c[e>>2]=b;c[l>
x3e;2]=c[d>>2]^c[e>>2];if((c[d>>2]|0)<0)c[d>>2]=0-(c[d>>2]|0);if((c[e>
;>2]|0)<0)c[e>>2]=0-(c[e>>2]|0);c[f>>2]=c[d>>2]>>16&65535;c[g
x3e;>2]=c[d>>2]&65535;c[j>>2]=_(c[g>>2]|0,c[e>>2]|0)|0;c[k>>2]=_(c[f
>>2]|0,c[e>>2]|0)|0;c[h>>2]=(c[k>>2]|0)>>>16;c[k>>2]=(c[k>
x3e;2]<<16)+8192;c[j>>2]=(c[j>>2]|0)+(c[k>>2]|0);if((c[j>>2]|0)>>>
;0>=(c[k>>2]|0)>>>0){b=c[j>>2]|0;b=b>>>14;j=c[h>>2]|0;j=j<
x3c;18;j=b|j;c[k>>2]=j;j=c[l>>2]|0;j=(j|0)>=0;k=c[k>>2]|0;l=0-k|0;l=j?k:l;i=m;return l|0}c[h
x3e;>2]=(c[h>>2]|0)+1;b=c[j>>2]|0;b=b>>>14;j=c[h>>2]|0;j=j<<18;j=b|j
;c[k>>2]=j;j=c[l>>2]|0;j=(j|0)>=0;k=c[k>>2]|0;l=0-k|0;l=j?k:l;i=m;return l|0}function rg(b,d){
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,q=0,r=0,s=0;s=i;i=i+48|0;r=s+40|0;g=s+36|0;m=s+32|0;k=s+28|0;o=s+24|0;h=
s+20|0;q=s+16|0;p=s+12|0;n=s+8|0;j=s+4|0;l=s;c[r>>2]=b;c[g>>2]=d;c[r>>2]=c[r>>2];c[g>
;>2]=c[g>>2];d=c[r>>2]|0;if((c[(c[r>>2]|0)+16>>2]|0)<(c[(c[r>>2]|0)+
284+20>>2]|0)){c[d+12>>2]=134;i=s;return}if((e[d+284+60>>1]|0)!=0?(e[(c[r>>2]|0)+284+62
x3e;>1]|0)!=0:0)d=(e[(c[r>>2]|0)+284+64>>1]|0)==0;else d=1;c[q>>2]=d&1;if((e[(c[r>
x3e;2]|0)+284+2>>1]|0)>>>0>=(e[(c[r>>2]|0)+36+8>>1]|0)>>>0){if(!(
a[(c[r>>2]|0)+561>>0]|0)){i=s;return}c[(c[r>>2]|0)+12>>2]=134;i=s;return}d=e[(c[r>
x3e;2]|0)+284+2>>1]|0;b=(c[r>>2]|0)+36|0;if(c[q>>2]|0)c[o>>2]=(c[b+12>>2]|0)+(
d<<3);else c[o>>2]=(c[b+20>>2]|0)+(d<<3);c[h>>2]=(c[(c[r>>2]|0)+36+16
>>2]|0)+(e[(c[r>>2]|0)+284+2>>1]<<3);if((e[(c[r>>2]|0)+284+2>>1]|0)
x3e;>>0<(e[(c[r>>2]|0)+36+8>>1]|0)>>>0?(e[(c[r>>2]|0)+284+4>>
;1]|0)>>>0<(e[(c[r>>2]|0)+72+8>>1]|0)>>>0:0){d=c[(c[r>>2]|0)+576
>>2]|0;b=c[r>>2]|0;f=e[(c[r>>2]|0)+284+4>>1]|0;g=(c[r>>2]|0)+72|0;if(c[q>
x3e;2]|0)c[m>>2]=Oa[d&63](b,(c[(c[g+12>>2]|0)+(f<<3)>>2]|0)-(c[c[o>>2]>
;>2]|0)|0,(c[(c[(c[r>>2]|0)+72+12>>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)+4
x3e;>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;else c[m>>2]=Oa[d&63](b,(c[(c[g+20>>2]|
0)+(f<<3)>>2]|0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+72+20>>2]|0)+(
e[(c[r>>2]|0)+284+4>>1]<<3)+4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;c[
k>>2]=Oa[c[(c[r>>2]|0)+572>>2]&63](c[r>>2]|0,(c[(c[(c[r>>2]|0)+72+16>
;>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)>>2]|0)-(c[c[h>>2]>>2]|0)|0
,(c[(c[(c[r>>2]|0)+72+16>>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)+4>>2]|0
)-(c[(c[h>>2]|0)+4>>2]|0)|0)|0}else{c[m>>2]=0;c[k>>2]=0}while(1){b=c[r>>2]|0;if
((c[(c[r>>2]|0)+284+20>>2]|0)<=0){d=34;break}f=b+28|0;g=(c[f>>2]|0)+-1|0;c[f>>2]=g;
c[p>>2]=c[(c[(c[r>>2]|0)+24>>2]|0)+(g<<2)>>2];if((c[p>>2]|0)>
x3e;>0>=(e[(c[r>>2]|0)+108+8>>1]|0)>>>0){if(a[(c[r>>2]|0)+561>>
0]|0){d=22;break}}else{d=c[(c[r>>2]|0)+576>>2]|0;b=c[r>>2]|0;f=c[p>>2]|0;g=(c[r>>
;2]|0)+108|0;if(c[q>>2]|0)c[n>>2]=Oa[d&63](b,(c[(c[g+12>>2]|0)+(f<<3)>>2]|
0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+12>>2]|0)+(c[p>>2]<<3)+
4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;else c[n>>2]=Oa[d&63](b,(c[(c[g+20>>
;2]|0)+(f<<3)>>2]|0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+20>>2
]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;c[j>>2]=Oa[c
[(c[r>>2]|0)+572>>2]&63](c[r>>2]|0,(c[(c[(c[r>>2]|0)+108+16>>2]|0)+(c[p
x3e;>2]<<3)>>2]|0)-(c[c[h>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+16>>
;2]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0)|0)|0;if(c[n>>2]|
0){if(c[m>>2]|0)d=xb(c[n>>2]|0,c[k>>2]|0,c[m>>2]|0)|0;else d=c[j>>2]|0;c[l>
;>2]=d}else c[l>>2]=0;_a[c[(c[r>>2]|0)+584>>2]&15](c[r>>2]|0,(c[r>>2
]|0)+108|0,c[p>>2]&65535,(c[l>>2]|0)-(c[j>>2]|0)|0)}g=(c[r>>2]|0)+284+20|0;c[g>
;>2]=(c[g>>2]|0)+-1}if((d|0)==22){c[(c[r>>2]|0)+12>>2]=134;i=s;return}else if((d|0)==34){c[b+
284+20>>2]=1;c[(c[r>>2]|0)+32>>2]=c[(c[r>>2]|0)+28>>2];i=s;return}}function sg
(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+8|0;j=m+4|0;l=m+12|0;k=m;c[h>>2]=f;c[j>>2]=g;b[l
x3e;>1]=c[c[j>>2]>>2];if((e[l>>1]|0)>>>0<(e[(c[h>>2]|0)+72+8>
;>1]|0)>>>0?(e[(c[h>>2]|0)+284>>1]|0)>>>0<(e[(c[h>>2]|0)+36
+8>>1]|0)>>>0:0){if(!(e[(c[h>>2]|0)+284+62>>1]|0)){f=(c[(c[h>>2]|0)+72+12
>>2]|0)+(e[l>>1]<<3)|0;g=(c[(c[h>>2]|0)+36+12>>2]|0)+(e[(c[h>>2]|0)+
284>>1]<<3)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];_a[c[(c[h>>
;2]|0)+588>>2]&15](c[h>>2]|0,(c[h>>2]|0)+72|0,b[l>>1]|0,c[(c[j>>2]|0)+4
x3e;>2]|0);f=(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)|0;g=(c[(c[h>>2]|0)+
72+12>>2]|0)+(e[l>>1]<<3)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>
;2]}c[k>>2]=Oa[c[(c[h>>2]|0)+572>>2]&63](c[h>>2]|0,(c[(c[(c[h>>2]|0)+72+16
>>2]|0)+(e[l>>1]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[(c[h
x3e;>2]|0)+284>>1]<<3)>>2]|0)|0,(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>
x3e;1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[(c[h>>2]|0)+284>>
;1]<<3)+4>>2]|0)|0)|0;_a[c[(c[h>>2]|0)+584>>2]&15](c[h>>2]|0,(c[h>
x3e;2]|0)+72|0,b[l>>1]|0,(c[(c[j>>2]|0)+4>>2]|0)-(c[k>>2]|0)|0);b[(c[h>>2]|0)+
284+2>>1]=b[(c[h>>2]|0)+284>>1]|0;b[(c[h>>2]|0)+284+4>>1]=b[l>>1]|0;
if(!(d[(c[h>>2]|0)+368>>0]&1)){i=m;return}b[(c[h>>2]|0)+284>>1]=b[l>>1]|0
;i=m;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return
}function tg(d,f){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+8|0;l=k+4|0;h=k+12|0;g=k;c[j>>2]=d;c[l>>
;2]=f;c[j>>2]=c[j>>2];c[l>>2]=c[l>>2];if((c[(c[j>>2]|0)+16>>2]|0)>
;=(c[(c[j>>2]|0)+284+20>>2]|0)?(e[(c[j>>2]|0)+284>>1]|0)>>>0<(e[(c[j
>>2]|0)+36+8>>1]|0)>>>0:0){while(1){d=c[j>>2]|0;if((c[(c[j>>2]|0)+284+20
x3e;>2]|0)<=0){f=11;break}f=d+28|0;c[f>>2]=(c[f>>2]|0)+-1;b[h>>1]=c[(c[(c[j>>2
]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<2)>>2];f=c[j>>2]|0;if((e[h>
;>1]|0)>>>0>=(e[(c[j>>2]|0)+72+8>>1]|0)>>>0){if(a[f+561>>0
]|0){f=8;break}}else{c[g>>2]=Oa[c[f+572>>2]&63](c[j>>2]|0,(c[(c[(c[j>>2]|0)+72+16
x3e;>2]|0)+(e[h>>1]<<3)>>2]|0)-(c[(c[(c[j>>2]|0)+36+16>>2]|0)+(e[(c[j>
;>2]|0)+284>>1]<<3)>>2]|0)|0,(c[(c[(c[j>>2]|0)+72+16>>2]|0)+(e[h>>
;1]<<3)+4>>2]|0)-(c[(c[(c[j>>2]|0)+36+16>>2]|0)+(e[(c[j>>2]|0)+284>>
1]<<3)+4>>2]|0)|0)|0;_a[c[(c[j>>2]|0)+584>>2]&15](c[j>>2]|0,(c[j>>
;2]|0)+72|0,b[h>>1]|0,0-(c[g>>2]|0)|0)}l=(c[j>>2]|0)+284+20|0;c[l>>2]=(c[l>>2]|
0)+-1}if((f|0)==8){c[(c[j>>2]|0)+12>>2]=134;i=k;return}else if((f|0)==11){c[d+284+20>>2]=1;c[(c[j
x3e;>2]|0)+32>>2]=c[(c[j>>2]|0)+28>>2];i=k;return}}if(!(a[(c[j>>2]|0)+561>>
;0]|0)){i=k;return}c[(c[j>>2]|0)+12>>2]=134;i=k;return}function ug(f,g){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;h=n+16|0;o=n+12|0;j=n+8|0;m=n+20|0;k=n+4|0;l=n;c[h>>2]=f;c[o>>2]=g;c[j>>2]=c[(
c[o>>2]|0)+4>>2];b[m>>1]=c[c[o>>2]>>2];if((e[m>>1]|0)>>>
;0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0?(c[j>>2]|0)>>>0<(c[(c[h
x3e;>2]|0)+380>>2]|0)>>>0:0){c[k>>2]=Ya[c[(c[h>>2]|0)+592>>2]&127
](c[h>>2]|0,c[j>>2]|0)|0;if(!(e[(c[h>>2]|0)+284+60>>1]|0)){o=qg(c[k>>2]|0,b[(c
[h>>2]|0)+284+14>>1]|0)|0;c[(c[(c[h>>2]|0)+36+12>>2]|0)+(e[m>>1]<<3)
x3e;>2]=o;o=qg(c[k>>2]|0,b[(c[h>>2]|0)+284+14+2>>1]|0)|0;c[(c[(c[h>>2]|0)+36+12>
;>2]|0)+(e[m>>1]<<3)+4>>2]=o;o=(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>
;1]<<3)|0;f=(c[(c[h>>2]|0)+36+12>>2]|0)+(e[m>>1]<<3)|0;c[o>>2]=c[f
x3e;>2];c[o+4>>2]=c[f+4>>2]}c[l>>2]=Oa[c[(c[h>>2]|0)+572>>2]&63](c[h
>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>>2]|0,c[(c[(c[h>
;>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)|0;if(d[(c[h>>2]|0)+368>
x3e;0]&1|0){o=(c[k>>2]|0)-(c[l>>2]|0)|0;if(((((c[k>>2]|0)-(c[l>>2]|0)|0)<0?0-o
|0:o)|0)>(c[(c[h>>2]|0)+284+36>>2]|0))c[k>>2]=c[l>>2];c[k>>2]=Oa[c[(c[h
x3e;>2]|0)+568>>2]&63](c[h>>2]|0,c[k>>2]|0,c[(c[h>>2]|0)+244+20>>2]|
0)|0}_a[c[(c[h>>2]|0)+584>>2]&15](c[h>>2]|0,(c[h>>2]|0)+36|0,b[m>>1]|0,(c
[k>>2]|0)-(c[l>>2]|0)|0);b[(c[h>>2]|0)+284>>1]=b[m>>1]|0;b[(c[h>>2]|
0)+284+2>>1]=b[m>>1]|0;i=n;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=n;return}c[(c[h>
x3e;2]|0)+12>>2]=134;i=n;return}function vg(a,f){a=a|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+4|0;h=l;k=l+10|0
;j=l+8|0;c[g>>2]=a;c[h>>2]=f;b[k>>1]=d[(c[(c[g>>2]|0)+356>>2]|0)+((c[(c[g>
;>2]|0)+360>>2]|0)+1)>>0]|0;if((e[k>>1]|0)>>>0>=((c[(c[g>>2]|0)+
20>>2]|0)+1-(c[(c[g>>2]|0)+16>>2]|0)|0)>>>0){c[(c[g>>2]|0)+12>>
2]=130;i=l;return}b[j>>1]=1;while(1){if((e[j>>1]|0|0)>(e[k>>1]|0|0))break;c[(c[h>>2
]|0)+((e[j>>1]|0)-1<<2)>>2]=d[(c[(c[g>>2]|0)+356>>2]|0)+((c[(c[g>>2]|
0)+360>>2]|0)+(e[j>>1]|0)+1)>>0];b[j>>1]=(b[j>>1]|0)+1<<16>>
;16}a=(c[g>>2]|0)+32|0;c[a>>2]=(c[a>>2]|0)+(e[k>>1]|0);i=l;return}function wg(f,g){f=f|0
;g=g|0;var h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+4|0;j=m;l=m+10|0;k=m+8|0;c[h>>2]=f;c[j>>2]=g;b[l>>
1]=d[(c[(c[h>>2]|0)+356>>2]|0)+((c[(c[h>>2]|0)+360>>2]|0)+1)>>0]|0;g=c[h>
x3e;2]|0;if((e[l>>1]|0)>>>0>=((c[(c[h>>2]|0)+20>>2]|0)+1-(c[(c[h>>2]|
0)+16>>2]|0)|0)>>>0){c[g+12>>2]=130;i=m;return}f=g+360|0;c[f>>2]=(c[f>>2]|
0)+2;b[k>>1]=0;while(1){g=c[h>>2]|0;if((e[k>>1]|0|0)>=(e[l>>1]|0|0))break;f=(xg(g)|
0)<<16>>16;c[(c[j>>2]|0)+((e[k>>1]|0)<<2)>>2]=f;b[k>>1]=(b
[k>>1]|0)+1<<16>>16}a[g+376>>0]=0;k=(c[h>>2]|0)+32|0;c[k>>2]=(c[k>
;>2]|0)+(e[l>>1]|0);i=m;return}function xg(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;a=(c[b>
x3e;2]|0)+360|0;c[a>>2]=(c[a>>2]|0)+2;i=e;return ((d[(c[(c[b>>2]|0)+356>>2]|0)+((c[(c[b
x3e;>2]|0)+360>>2]|0)-2)>>0]|0)<<8)+(d[(c[(c[b>>2]|0)+356>>2]|0)+((c[(c[b
>>2]|0)+360>>2]|0)-1)>>0]|0)&65535|0}function yg(b,f){b=b|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i
;i=i+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=b;c[h>>2]=f;c[j>>2]=c[c[h>>2]>>
2];f=c[g>>2]|0;do if((c[j>>2]|0)>>>0<(e[(c[g>>2]|0)+108+8>>1]|0)>
;>>0){b=c[g>>2]|0;if(d[f+368>>0]&1|0){c[k>>2]=Oa[c[b+576>>2]&63](c[g
>>2]|0,c[(c[(c[g>>2]|0)+108+12>>2]|0)+(c[j>>2]<<3)>>2]|0,c[(c[(c[g
x3e;>2]|0)+108+12>>2]|0)+(c[j>>2]<<3)+4>>2]|0)|0;break}else{c[k>>2]=Oa[c[
b+572>>2]&63](c[g>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(c[j>>2]<<
;3)>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(c[j>>2]<<3)+4>>2]|0)|0;break
}}else{if(!(a[f+561>>0]|0)){c[k>>2]=0;break}c[(c[g>>2]|0)+12>>2]=134;i=l;return}while(0);
c[c[h>>2]>>2]=c[k>>2];i=l;return}function zg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0
;g=l+8|0;h=l+4|0;j=l;k=l+12|0;c[g>>2]=d;c[h>>2]=f;b[k>>1]=c[c[h>>2]>>2];f=c[g
x3e;>2]|0;if((e[k>>1]|0)>>>0>=(e[(c[g>>2]|0)+108+8>>1]|0)>>>
;0){if(!(a[f+561>>0]|0)){i=l;return}c[(c[g>>2]|0)+12>>2]=134;i=l;return}else{c[j>>2]=Oa[
c[f+572>>2]&63](c[g>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(e[k>>1]<
x3c;3)>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)|0;
_a[c[(c[g>>2]|0)+584>>2]&15](c[g>>2]|0,(c[g>>2]|0)+108|0,b[k>>1]|0,(c[(c[
h>>2]|0)+4>>2]|0)-(c[j>>2]|0)|0);if(e[(c[g>>2]|0)+284+64>>1]|0){i=l;return}j=(
c[(c[g>>2]|0)+108+12>>2]|0)+(e[k>>1]<<3)|0;k=(c[(c[g>>2]|0)+108+16>>
2]|0)+(e[k>>1]<<3)|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];i=l;return}}
function Ag(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;r=i;i=i+32|0;h=r+24|0;j=r+20|0;l=r+30|0;m=r+28|0;k=r+16
|0;o=r+12|0;p=r+8|0;n=r;c[h>>2]=f;c[j>>2]=g;b[l>>1]=c[(c[j>>2]|0)+4>>2];b[m>
;>1]=c[c[j>>2]>>2];do if((e[m>>1]|0)>>>0<(e[(c[h>>2]|0)+36+8>
;>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h>>2]|0)+72+8>>1]|0)>
;>>0:0){g=c[h>>2]|0;if(d[(c[h>>2]|0)+368>>0]&1|0){c[k>>2]=Oa[c[g+572>
;>2]&63](c[h>>2]|0,(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>
x3e;2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)>>2]|0)|0,(c[(c[(c[h>
;>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>
x3e;2]|0)+(e[l>>1]<<3)+4>>2]|0)|0)|0;break}c[o>>2]=(c[g+36+20>>2]|0)+(e[m>
;>1]<<3);c[p>>2]=(c[(c[h>>2]|0)+72+20>>2]|0)+(e[l>>1]<<3);if((c
[(c[h>>2]|0)+216+4>>2]|0)==(c[(c[h>>2]|0)+216+8>>2]|0)){c[k>>2]=Oa[c[(c[h>
;>2]|0)+576>>2]&63](c[h>>2]|0,(c[c[o>>2]>>2]|0)-(c[c[p>>2]>>
;2]|0)|0,(c[(c[o>>2]|0)+4>>2]|0)-(c[(c[p>>2]|0)+4>>2]|0)|0)|0;c[k>>2]=Mb(c[k
x3e;>2]|0,c[(c[h>>2]|0)+216+4>>2]|0)|0;break}else{c[n>>2]=Mb((c[c[o>>2]>>
2]|0)-(c[c[p>>2]>>2]|0)|0,c[(c[h>>2]|0)+216+4>>2]|0)|0;c[n+4>>2]=Mb((c[(c[o>
;>2]|0)+4>>2]|0)-(c[(c[p>>2]|0)+4>>2]|0)|0,c[(c[h>>2]|0)+216+8>>2]|0)|0;c
[k>>2]=Oa[c[(c[h>>2]|0)+576>>2]&63](c[h>>2]|0,c[n>>2]|0,c[n+4>>
2]|0)|0;break}}else q=3;while(0);do if((q|0)==3){if(!(a[(c[h>>2]|0)+561>>0]|0)){c[k>>2]=0;break}c[(
c[h>>2]|0)+12>>2]=134;i=r;return}while(0);c[c[j>>2]>>2]=c[k>>2];i=r;return}function
Bg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=e[(c[d>>2]|0)+244+8>>1]|0;a=Mb(a,of(c[d>
;>2]|0)|0)|0;i=b;return a|0}function Cg(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+8|0;k=j+4|0;h=j;g=j+12|0;
c[f>>2]=b;c[k>>2]=e;if(c[c[k>>2]>>2]|0){i=j;return}c[h>>2]=1;a[g>>0]=
0;while(1){if(((Yf(c[f>>2]|0)|0)&255|0)==1){f=9;break}switch(d[(c[f>>2]|0)+368>>0]|0|0){case
88:{c[h>>2]=(c[h>>2]|0)+1;break}case 27:{a[g>>0]=(c[h>>2]|0)==1;break}case 89:{c[h>
x3e;2]=(c[h>>2]|0)+-1;a[g>>0]=(c[h>>2]|0)==0;break}default:{}}if(d[g>>0]|0|0){f=9;break}}
if((f|0)==9){i=j;return}}function Dg(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;p=i;i=i+32|0;o=p+20|0;h=p+16|0;m=p+12|
0;n=p+8|0;j=p+24|0;l=p+4|0;k=p;c[o>>2]=f;c[h>>2]=g;c[n>>2]=c[c[h>>2]>>2];c[m
x3e;>2]=1;while(1){h=c[(c[o>>2]|0)+28>>2]|0;if((c[m>>2]|0)>>>0>(c[n>
x3e;2]|0)>>>0){g=16;break}f=c[o>>2]|0;if((h|0)<2){g=4;break}h=f+28|0;c[h>>2]=(c[h>
x3e;2]|0)-2;b[j>>1]=c[(c[(c[o>>2]|0)+24>>2]|0)+((c[(c[o>>2]|0)+28>>2]|0)+1<
;<2)>>2];c[k>>2]=c[(c[(c[o>>2]|0)+24>>2]|0)+(c[(c[o>>2]|0)+28>>
2]<<2)>>2];if((e[j>>1]|0)>>>0>=(e[(c[o>>2]|0)+36+8>>1]|0)
x3e;>>0){if(a[(c[o>>2]|0)+561>>0]|0)c[(c[o>>2]|0)+12>>2]=134}else{c[l>>
;2]=(c[k>>2]&240)>>>4;switch(d[(c[o>>2]|0)+368>>0]|0){case 114:{c[l>>
;2]=(c[l>>2]|0)+32;break}case 113:{c[l>>2]=(c[l>>2]|0)+16;break}default:{}}c[l>>2]=(c[l
x3e;>2]|0)+(b[(c[o>>2]|0)+284+48>>1]|0);h=Bg(c[o>>2]|0)|0;if((h|0)==(c[l>>2]|0)){c[
k>>2]=(c[k>>2]&15)-8;if((c[k>>2]|0)>=0)c[k>>2]=(c[k>>2]|0)+1;c[k>
;>2]=(c[k>>2]<<6|0)/(1<<b[(c[o>>2]|0)+284+50>>1]|0)|0;_a[c[(c[o>>
;2]|0)+584>>2]&15](c[o>>2]|0,(c[o>>2]|0)+36|0,b[j>>1]|0,c[k>>2]|0)}}c[m
x3e;>2]=(c[m>>2]|0)+1}if((g|0)==4){c[f+12>>2]=129;i=p;return}else if((g|0)==16){c[(c[o>>2]|0)+
32>>2]=h;i=p;return}}function Eg(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;o=i;i=i+32|0;n=o+24|0;g=o+20|0;m
=o+16|0;l=o+12|0;h=o+8|0;k=o+4|0;j=o;c[n>>2]=e;c[g>>2]=f;c[m>>2]=c[c[g>>2]>>2];
c[l>>2]=1;while(1){g=c[(c[n>>2]|0)+28>>2]|0;if((c[l>>2]|0)>>>0>(c[m
x3e;>2]|0)>>>0){f=16;break}e=c[n>>2]|0;if((g|0)<2){f=4;break}g=e+28|0;c[g>>2]=(c[g
x3e;>2]|0)-2;c[h>>2]=c[(c[(c[n>>2]|0)+24>>2]|0)+((c[(c[n>>2]|0)+28>>2]|0)+
1<<2)>>2];c[j>>2]=c[(c[(c[n>>2]|0)+24>>2]|0)+(c[(c[n>>2]|0)+28>
x3e;2]<<2)>>2];if((c[h>>2]|0)>>>0>=(c[(c[n>>2]|0)+380>>2]|
0)>>>0){if(a[(c[n>>2]|0)+561>>0]|0){f=7;break}}else{c[k>>2]=(c[j>>2]&
;240)>>>4;switch(d[(c[n>>2]|0)+368>>0]|0){case 117:{c[k>>2]=(c[k>>2]|0)+32
;break}case 116:{c[k>>2]=(c[k>>2]|0)+16;break}default:{}}c[k>>2]=(c[k>>2]|0)+(b[(c[n>
;>2]|0)+284+48>>1]|0);g=Bg(c[n>>2]|0)|0;if((g|0)==(c[k>>2]|0)){c[j>>2]=(c[j>
x3e;2]&15)-8;if((c[j>>2]|0)>=0)c[j>>2]=(c[j>>2]|0)+1;c[j>>2]=(c[j>>2
]<<6|0)/(1<<b[(c[n>>2]|0)+284+50>>1]|0)|0;Ua[c[(c[n>>2]|0)+600>>2]
x26;31](c[n>>2]|0,c[h>>2]|0,c[j>>2]|0)}}c[l>>2]=(c[l>>2]|0)+1}if((f|0)==4){c[e
+12>>2]=129;i=o;return}else if((f|0)==7){c[(c[n>>2]|0)+12>>2]=134;i=o;return}else if((f|0)==16){c[(
c[n>>2]|0)+32>>2]=g;i=o;return}}function Fg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|
0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;switch(c[g>>2]&192|0){case 0:{c[(c[e>
;>2]|0)+476>>2]=(c[f>>2]|0)/2|0;break}case 64:{c[(c[e>>2]|0)+476>>2]=c[f>>
;2];break}case 128:{c[(c[e>>2]|0)+476>>2]=c[f>>2]<<1;break}case 192:{c[(c[e>>2
]|0)+476>>2]=c[f>>2];break}default:{}}switch(c[g>>2]&48|0){case 0:{c[(c[e>>2]|0)+480
>>2]=0;break}case 16:{c[(c[e>>2]|0)+480>>2]=(c[(c[e>>2]|0)+476>>2]|0)/4|0;break
}case 32:{c[(c[e>>2]|0)+480>>2]=(c[(c[e>>2]|0)+476>>2]|0)/2|0;break}case 48:{c[(c[e>
;>2]|0)+480>>2]=((c[(c[e>>2]|0)+476>>2]|0)*3|0)/4|0;break}default:{}}if(!(c[g>>2]
x26;15)){c[(c[e>>2]|0)+484>>2]=(c[(c[e>>2]|0)+476>>2]|0)-1;d=c[e>>2]|0;d=d+476
|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+480|0;a=c[d>>2]|0;a=(a|0)/256|0;c
[d>>2]=a;d=c[e>>2]|0;d=d+484|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;i=h;return}else{d=(_((
c[g>>2]&15)-4|0,c[(c[e>>2]|0)+476>>2]|0)|0)/8|0;c[(c[e>>2]|0)+484>>2]=d;d
=c[e>>2]|0;d=d+476|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+480|0;a=c[d>
;>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+484|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>
;2]=a;i=h;return}}function Gg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0;k=i;i=i+16|0;j=k+4|0;l=k;h=k+8|0;c[j>>2]=f;c[l>
;>2]=g;c[j>>2]=c[j>>2];c[l>>2]=c[l>>2];if((c[(c[j>>2]|0)+16>>2]|
0)<(c[(c[j>>2]|0)+284+20>>2]|0)){c[(c[j>>2]|0)+12>>2]=129;i=k;return}while(1){f=c[j
>>2]|0;if((c[(c[j>>2]|0)+284+20>>2]|0)<=0){g=9;break}l=f+28|0;c[l>>2]=(c[l>>
;2]|0)+-1;b[h>>1]=c[(c[(c[j>>2]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<
2)>>2];if((e[h>>1]|0)>>>0>=(e[(c[j>>2]|0)+144+8>>1]|0)>>
x3e;0){if(a[(c[j>>2]|0)+561>>0]|0){g=6;break}}else{l=(c[(c[j>>2]|0)+144+24>>2]|0)+(e[h
x3e;>1]|0)|0;a[l>>0]=d[l>>0]^1}l=(c[j>>2]|0)+284+20|0;c[l>>2]=(c[l>>2]|0)+-
1}if((g|0)==6){c[(c[j>>2]|0)+12>>2]=134;i=k;return}else if((g|0)==9){c[f+284+20>>2]=1;c[(c[j>
x3e;2]|0)+32>>2]=c[(c[j>>2]|0)+28>>2];i=k;return}}function Hg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0
,m=0,n=0;m=i;i=i+16|0;h=m+4|0;n=m;j=m+12|0;k=m+10|0;l=m+8|0;c[h>>2]=f;c[n>>2]=g;b[k>>1]=c[(c[n>
;>2]|0)+4>>2];b[l>>1]=c[c[n>>2]>>2];if((e[k>>1]|0)>>>0<
;(e[(c[h>>2]|0)+144+8>>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h>
x3e;2]|0)+144+8>>1]|0)>>>0:0){b[j>>1]=b[l>>1]|0;while(1){if((e[j>>1]|0)
x3e;(e[k>>1]|0))break;n=(c[(c[h>>2]|0)+144+24>>2]|0)+(e[j>>1]|0)|0;a[n>>0]=d[n
>>0]|1;b[j>>1]=(b[j>>1]|0)+1<<16>>16}i=m;return}if(!(a[(c[h>>2]|0)+561
>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}function Ig(f,g){f=f|0;g=g|0;var h=0,j=0,k
=0,l=0,m=0,n=0;m=i;i=i+16|0;h=m+4|0;n=m;j=m+12|0;k=m+10|0;l=m+8|0;c[h>>2]=f;c[n>>2]=g;b[k>>1]=c[(c
[n>>2]|0)+4>>2];b[l>>1]=c[c[n>>2]>>2];if((e[k>>1]|0)>>>
;0<(e[(c[h>>2]|0)+144+8>>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h
>>2]|0)+144+8>>1]|0)>>>0:0){b[j>>1]=b[l>>1]|0;while(1){if((e[j>>
;1]|0)>(e[k>>1]|0))break;n=(c[(c[h>>2]|0)+144+24>>2]|0)+(e[j>>1]|0)|0;a[n>>
;0]=d[n>>0]&-2;b[j>>1]=(b[j>>1]|0)+1<<16>>16}i=m;return}if(!(a[(c[h>
x3e;2]|0)+561>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}function Jg(b,f){b=b|0;f=f|0;
var g=0,h=0,j=0,k=0;k=i;i=i+16|0;g=k+8|0;h=k+4|0;j=k;c[g>>2]=b;c[h>>2]=f;c[j>>2]=c[c[h>>
2]>>2]&255;if((c[j>>2]|0)==255){a[(c[g>>2]|0)+284+53>>0]=1;i=k;return}if(!(c[j>
;>2]|0)){a[(c[g>>2]|0)+284+53>>0]=0;i=k;return}if(c[c[h>>2]>>2]&256|0?(e[(c[g
x3e;>2]|0)+244+8>>1]|0|0)<=(c[j>>2]|0):0)a[(c[g>>2]|0)+284+53>>0]=1;if(c[c[h
x3e;>2]>>2]&512|0?d[(c[g>>2]|0)+244+37>>0]|0|0:0)a[(c[g>>2]|0)+284+53>>
;0]=1;if(c[c[h>>2]>>2]&1024|0?d[(c[g>>2]|0)+244+38>>0]|0|0:0)a[(c[g>>2]|0
)+284+53>>0]=1;if(c[c[h>>2]>>2]&2048|0?(e[(c[g>>2]|0)+244+8>>1]|0|0)>
;(c[j>>2]|0):0)a[(c[g>>2]|0)+284+53>>0]=0;if(c[c[h>>2]>>2]&4096|0?d[(c[g
x3e;>2]|0)+244+37>>0]|0|0:0)a[(c[g>>2]|0)+284+53>>0]=0;if(!(c[c[h>>2]>>2]
x26;8192)){i=k;return}if(!(d[(c[g>>2]|0)+244+38>>0]|0)){i=k;return}a[(c[g>>2]|0)+284+53>>
;0]=0;i=k;return}function Kg(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;s=i;i=i+48|0;h=s+32|0;t=s+28|0
;j=s+24|0;k=s+20|0;l=s+16|0;m=s+38|0;n=s+36|0;o=s+12|0;q=s+8|0;p=s+4|0;r=s;c[h>>2]=f;c[t>>2]=g;b[m>>
;1]=c[(c[t>>2]|0)+4>>2];b[n>>1]=c[c[t>>2]>>2];if((e[n>>1]|0)>
x3e;>0<(e[(c[h>>2]|0)+72+8>>1]|0)>>>0?(e[m>>1]|0)>>>0<
;(e[(c[h>>2]|0)+108+8>>1]|0)>>>0:0){c[o>>2]=(c[(c[h>>2]|0)+72+12>>
;2]|0)+(e[n>>1]<<3);c[q>>2]=(c[(c[h>>2]|0)+108+12>>2]|0)+(e[m>>1]<
;<3);c[j>>2]=(c[c[o>>2]>>2]|0)-(c[c[q>>2]>>2]|0);c[k>>2]=(c[(c[
o>>2]|0)+4>>2]|0)-(c[(c[q>>2]|0)+4>>2]|0);if(d[(c[h>>2]|0)+368>>0]
x26;1|0){c[l>>2]=c[k>>2];c[k>>2]=c[j>>2];c[j>>2]=0-(c[l>>2]|0)}Rf(c[
h>>2]|0,c[j>>2]|0,c[k>>2]|0,(c[h>>2]|0)+284+6|0)|0;c[p>>2]=(c[(c[h>>
2]|0)+72+16>>2]|0)+(e[n>>1]<<3);c[r>>2]=(c[(c[h>>2]|0)+108+16>>2]|0)+(
e[m>>1]<<3);c[j>>2]=(c[c[p>>2]>>2]|0)-(c[c[r>>2]>>2]|0);c[
k>>2]=(c[(c[p>>2]|0)+4>>2]|0)-(c[(c[r>>2]|0)+4>>2]|0);if(d[(c[h>>2]|
0)+368>>0]&1|0){c[l>>2]=c[k>>2];c[k>>2]=c[j>>2];c[j>>2]=0-(c[l
x3e;>2]|0)}Rf(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,(c[h>>2]|0)+284+10|0)|0;vf(c[h>>
;2]|0);i=s;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=s;return}c[(c[h>>2]|0)+12>>2]=134;i=s
;return}function Lg(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=
b;c[g>>2]=0;c[g>>2]=c[c[f>>2]>>2]&1|0?35:0;if(c[c[f>>2]>>2]&
;2|0?d[(c[e>>2]|0)+244+37>>0]|0|0:0)c[g>>2]=c[g>>2]|128;if(c[c[f>>2]>>
;2]&4|0?d[(c[e>>2]|0)+244+38>>0]|0|0:0)c[g>>2]=c[g>>2]|256;if(!(c[c[f>>2]
x3e;>2]&32)){b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}if(!(d[(c[e>>2]|0)+604
>>0]|0)){b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}c[g>>2]=c[g>>2
]|4096;b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}function Mg(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;j=k+12|0;g=k+8|0;h=k+4|0;f=k;c[j>>2]=b;c[g>>2]=e;c[h>>2]=c[(c[j>>2]|
0)+416>>2];c[f>>2]=(c[h>>2]|0)+(c[(c[j>>2]|0)+408>>2]<<4);while(1){if
((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break;if((c[(c[h>>2]|0)+8>
;>2]|0)==(c[c[g>>2]>>2]|0))break;c[h>>2]=(c[h>>2]|0)+16}do if((c[h>>2]|0)==(
c[f>>2]|0)){e=c[j>>2]|0;if((c[(c[j>>2]|0)+408>>2]|0)>>>0<(c[(c[j>
;>2]|0)+412>>2]|0)>>>0){f=e+408|0;c[f>>2]=(c[f>>2]|0)+1;break}c[e+12>>
;2]=141;i=k;return}while(0);if(0<=(c[c[g>>2]>>2]|0)?(c[c[g>>2]>>2]|0)<=255:0){
c[(c[h>>2]|0)+8>>2]=c[c[g>>2]>>2]&255;c[(c[h>>2]|0)+4>>2]=(c[(c
[j>>2]|0)+360>>2]|0)+1;c[c[h>>2]>>2]=c[(c[j>>2]|0)+352>>2];a[(c[h>
;>2]|0)+12>>0]=1;if((c[c[g>>2]>>2]|0)>>>0>(c[(c[j>>2]|0)+424>
;>2]|0)>>>0)c[(c[j>>2]|0)+424>>2]=c[c[g>>2]>>2]&255;a:while(1){
if((Yf(c[j>>2]|0)|0)&255|0){e=17;break}switch(d[(c[j>>2]|0)+368>>0]|0|0){case 44:case 137:{e=
16;break a}case 45:{e=17;break a}default:{}}}if((e|0)==16){c[(c[j>>2]|0)+12>>2]=137;i=k;return}else if((e|0)==
17){i=k;return}}c[(c[j>>2]|0)+12>>2]=141;i=k;return}function Ng(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;g=d+8|0;f=d+4|0;h=d;c[j>>2]=a;c[e>>2]=b;c[j>>2]=c[j>>2];
c[g>>2]=c[(c[e>>2]|0)+8>>2];c[f>>2]=c[(c[e>>2]|0)+4>>2];c[h>>
;2]=c[c[e>>2]>>2];c[(c[e>>2]|0)+8>>2]=c[h>>2];c[(c[e>>2]|0)+4>
x3e;2]=c[g>>2];c[c[e>>2]>>2]=c[f>>2];i=d;return}function Og(a,b){a=a|0;b=b|0;var d=0,e=0
,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if((c[c[e>>2]>>2]|0)<0){i=f;return
}c[(c[d>>2]|0)+284+56>>2]=c[c[e>>2]>>2];i=f;return}function Pg(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;k=j+8|0;g=j+4|0;h=j;c[f>>2]=b;c[k>>2]=e;c[g>>2]=c[(c[k>
x3e;2]|0)+4>>2];c[h>>2]=c[c[k>>2]>>2];if((c[g>>2]|0)<1|(c[g>>2]|
0)>2){if(!(a[(c[f>>2]|0)+561>>0]|0)){i=j;return}c[(c[f>>2]|0)+12>>2]=134;i=j;return
}else{if(c[h>>2]|0)c[h>>2]=c[g>>2];a[(c[f>>2]|0)+284+52>>0]=d[(c[f>>
2]|0)+284+52>>0]&~(c[g>>2]&255)|c[h>>2]&255;i=j;return}}function Qg(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;p=i;i=i+32|0;k=p+24|0;q=p+20|0;o=p+28|0;h=p+16|0;j=p+12|0;m=p+8|0;l=p+4|0;n=p;c[k>
;>2]=f;c[q>>2]=g;b[o>>1]=c[c[q>>2]>>2];c[h>>2]=(c[(c[q>>2]|0)+4
>>2]|0)+1;if(((e[o>>1]|0)>>>0<(e[(c[k>>2]|0)+72+8>>1]|0)>>
x3e;0?(c[h>>2]|0)>>>0<((c[(c[k>>2]|0)+380>>2]|0)+1|0)>>>0:0)?(e
[(c[k>>2]|0)+284>>1]|0)>>>0<(e[(c[k>>2]|0)+36+8>>1]|0)>>
x3e;0:0){if(c[h>>2]|0)c[j>>2]=Ya[c[(c[k>>2]|0)+592>>2]&127](c[k>>2]|0,(c[
h>>2]|0)-1|0)|0;else c[j>>2]=0;q=(c[j>>2]|0)-(c[(c[k>>2]|0)+284+44>>2]|0)|0;do
if(((((c[j>>2]|0)-(c[(c[k>>2]|0)+284+44>>2]|0)|0)<0?0-q|0:q)|0)<(c[(c[k>>2]|0
)+284+40>>2]|0)){g=c[(c[k>>2]|0)+284+44>>2]|0;if((c[j>>2]|0)>=0){c[j>>2]=
g;break}else{c[j>>2]=0-g;break}}while(0);if(!(e[(c[k>>2]|0)+284+62>>1]|0)){q=c[(c[(c[k>>
2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)>>2]|0;q=q+(qg(c[j>>2]|
0,b[(c[k>>2]|0)+284+14>>1]|0)|0)|0;c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<
;<3)>>2]=q;q=c[(c[(c[k>>2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<
x3c;3)+4>>2]|0;q=q+(qg(c[j>>2]|0,b[(c[k>>2]|0)+284+14+2>>1]|0)|0)|0;c[(c[(c[k>>
;2]|0)+72+12>>2]|0)+(e[o>>1]<<3)+4>>2]=q;q=(c[(c[k>>2]|0)+72+16>>2]|
0)+(e[o>>1]<<3)|0;f=(c[(c[k>>2]|0)+36+16>>2]|0)+(e[o>>1]<<3)|0;c[q
x3e;>2]=c[f>>2];c[q+4>>2]=c[f+4>>2]}c[n>>2]=Oa[c[(c[k>>2]|0)+576>>
;2]&63](c[k>>2]|0,(c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<<3)>>
2]|0)-(c[(c[(c[k>>2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)>>2]|
0)|0,(c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<<3)+4>>2]|0)-(c[(c[(c[k>>
;2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)+4>>2]|0)|0)|0;c[l>>2]=
Oa[c[(c[k>>2]|0)+572>>2]&63](c[k>>2]|0,(c[(c[(c[k>>2]|0)+72+16>>2]|0)+(e[
o>>1]<<3)>>2]|0)-(c[(c[(c[k>>2]|0)+36+16>>2]|0)+(e[(c[k>>2]|0)+284
x3e;>1]<<3)>>2]|0)|0,(c[(c[(c[k>>2]|0)+72+16>>2]|0)+(e[o>>1]<<3
)+4>>2]|0)-(c[(c[(c[k>>2]|0)+36+16>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)+
4>>2]|0)|0)|0;if(a[(c[k>>2]|0)+284+32>>0]|0?(c[n>>2]^c[j>>2]|0)<0:0)c[j
x3e;>2]=0-(c[j>>2]|0);g=c[k>>2]|0;if(d[(c[k>>2]|0)+368>>0]&4|0){if((e[g+284+60
>>1]|0)==(e[(c[k>>2]|0)+284+62>>1]|0)?(q=(c[j>>2]|0)-(c[n>>2]|0)|0,((((c[j>
;>2]|0)-(c[n>>2]|0)|0)<0?0-q|0:q)|0)>=(c[(c[k>>2]|0)+284+36>>2]|0)):0)c[j>>
;2]=c[n>>2];c[m>>2]=Oa[c[(c[k>>2]|0)+568>>2]&63](c[k>>2]|0,c[j>>
;2]|0,c[(c[k>>2]|0)+244+20+((d[(c[k>>2]|0)+368>>0]&3)<<2)>>2]|0)|0}else c
[m>>2]=If(g,c[j>>2]|0,c[(c[k>>2]|0)+244+20+((d[(c[k>>2]|0)+368>>0]&3)<
;<2)>>2]|0)|0;do if(d[(c[k>>2]|0)+368>>0]&8|0){g=c[m>>2]|0;h=c[(c[k>>
;2]|0)+284+24>>2]|0;if((c[n>>2]|0)>=0){if((g|0)>=(h|0))break;c[m>>2]=c[(c[k>>2
]|0)+284+24>>2];break}else{if((g|0)<=(0-h|0))break;c[m>>2]=0-(c[(c[k>>2]|0)+284+24>>
;2]|0);break}}while(0);_a[c[(c[k>>2]|0)+584>>2]&15](c[k>>2]|0,(c[k>>2]|0)+72|0,b[o
x3e;>1]|0,(c[m>>2]|0)-(c[l>>2]|0)|0);b[(c[k>>2]|0)+284+2>>1]=b[(c[k>>2]|0
)+284>>1]|0;if(d[(c[k>>2]|0)+368>>0]&16|0)b[(c[k>>2]|0)+284>>1]=b[o>
x3e;1]|0;b[(c[k>>2]|0)+284+4>>1]=b[o>>1]|0;i=p;return}if(!(a[(c[k>>2]|0)+561>>
0]|0)){i=p;return}c[(c[k>>2]|0)+12>>2]=134;i=p;return}function Rg(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;s=i;i=i+48|0;o=s+36|0;t=s+32|0;r=s+40|0;q=s+28|0;p=s+24|0;j=s+20|0;l=s+16|0;k=s+12|0;m=s+8|0;h=s;c[o
x3e;>2]=f;c[t>>2]=g;b[r>>1]=c[c[t>>2]>>2];if((e[r>>1]|0)>>>
;0<(e[(c[o>>2]|0)+72+8>>1]|0)>>>0?(e[(c[o>>2]|0)+284>>1]|0)>>
;>0<(e[(c[o>>2]|0)+36+8>>1]|0)>>>0:0){do if((e[(c[o>>2]|0)+284+60>
x3e;1]|0)!=0?(e[(c[o>>2]|0)+284+62>>1]|0)!=0:0){c[k>>2]=(c[(c[o>>2]|0)+72+20>>
2]|0)+(e[r>>1]<<3);c[m>>2]=(c[(c[o>>2]|0)+36+20>>2]|0)+(e[(c[o>>2]|0
)+284>>1]<<3);if((c[(c[o>>2]|0)+216+4>>2]|0)==(c[(c[o>>2]|0)+216+8>>
2]|0)){c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o>>2]|0,(c[c[k>>2]>>
;2]|0)-(c[c[m>>2]>>2]|0)|0,(c[(c[k>>2]|0)+4>>2]|0)-(c[(c[m>>2]|0)+4>>
;2]|0)|0)|0;c[q>>2]=Mb(c[q>>2]|0,c[(c[o>>2]|0)+216+4>>2]|0)|0;break}else{c[h>>
2]=Mb((c[c[k>>2]>>2]|0)-(c[c[m>>2]>>2]|0)|0,c[(c[o>>2]|0)+216+4>>2]|
0)|0;c[h+4>>2]=Mb((c[(c[k>>2]|0)+4>>2]|0)-(c[(c[m>>2]|0)+4>>2]|0)|0,c[(c[o>
;>2]|0)+216+8>>2]|0)|0;c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o>>2]|
0,c[h>>2]|0,c[h+4>>2]|0)|0;break}}else n=7;while(0);if((n|0)==7){c[j>>2]=(c[(c[o>>2]|0)+
72+12>>2]|0)+(e[r>>1]<<3);c[l>>2]=(c[(c[o>>2]|0)+36+12>>2]|0)+(e[(c[
o>>2]|0)+284>>1]<<3);c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o
x3e;>2]|0,(c[c[j>>2]>>2]|0)-(c[c[l>>2]>>2]|0)|0,(c[(c[j>>2]|0)+4>>
;2]|0)-(c[(c[l>>2]|0)+4>>2]|0)|0)|0}t=(c[q>>2]|0)-(c[(c[o>>2]|0)+284+44>>2]|0)|
0;do if(((((c[q>>2]|0)-(c[(c[o>>2]|0)+284+44>>2]|0)|0)<0?0-t|0:t)|0)<(c[(c[o>>
2]|0)+284+40>>2]|0)){g=c[(c[o>>2]|0)+284+44>>2]|0;if((c[q>>2]|0)>=0){c[q>>
;2]=g;break}else{c[q>>2]=0-g;break}}while(0);g=c[o>>2]|0;if(d[(c[o>>2]|0)+368>>0]&4
|0)c[p>>2]=Oa[c[g+568>>2]&63](c[o>>2]|0,c[q>>2]|0,c[(c[o>>2]|0)+244+20+((
d[(c[o>>2]|0)+368>>0]&3)<<2)>>2]|0)|0;else c[p>>2]=If(g,c[q>>2]|
0,c[(c[o>>2]|0)+244+20+((d[(c[o>>2]|0)+368>>0]&3)<<2)>>2]|0)|0;do if(d[(c
[o>>2]|0)+368>>0]&8|0){g=c[p>>2]|0;f=c[(c[o>>2]|0)+284+24>>2]|0;if((c[q
x3e;>2]|0)>=0){if((g|0)>=(f|0))break;c[p>>2]=c[(c[o>>2]|0)+284+24>>2];break}else{if
((g|0)<=(0-f|0))break;c[p>>2]=0-(c[(c[o>>2]|0)+284+24>>2]|0);break}}while(0);c[q>>2
]=Oa[c[(c[o>>2]|0)+572>>2]&63](c[o>>2]|0,(c[(c[(c[o>>2]|0)+72+16>>2]|0)+(
e[r>>1]<<3)>>2]|0)-(c[(c[(c[o>>2]|0)+36+16>>2]|0)+(e[(c[o>>2]|0)+284
>>1]<<3)>>2]|0)|0,(c[(c[(c[o>>2]|0)+72+16>>2]|0)+(e[r>>1]<<
;3)+4>>2]|0)-(c[(c[(c[o>>2]|0)+36+16>>2]|0)+(e[(c[o>>2]|0)+284>>1]<<
3)+4>>2]|0)|0)|0;_a[c[(c[o>>2]|0)+584>>2]&15](c[o>>2]|0,(c[o>>2]|0)+72|0,
b[r>>1]|0,(c[p>>2]|0)-(c[q>>2]|0)|0);b[(c[o>>2]|0)+284+2>>1]=b[(c[o>>
;2]|0)+284>>1]|0;b[(c[o>>2]|0)+284+4>>1]=b[r>>1]|0;if(!(d[(c[o>>2]|0)+368>
;>0]&16)){i=s;return}b[(c[o>>2]|0)+284>>1]=b[r>>1]|0;i=s;return}if(!(a[(c[o>>2
]|0)+561>>0]|0)){i=s;return}c[(c[o>>2]|0)+12>>2]=134;i=s;return}function Sg(f,g){f=f|0;g=g|0;var h
=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+4|0;j=m;l=m+10|0;k=m+8|0;c[h>>2]=f;c[j>>2]=g;b[l>>1]=(d[(c[h
x3e;>2]|0)+368>>0]|0)-184+1;g=c[h>>2]|0;if((e[l>>1]|0)>>>0>=((c[(c[h>
;>2]|0)+20>>2]|0)+1-(c[(c[h>>2]|0)+16>>2]|0)|0)>>>0){c[g+12>>2]=130;
i=m;return}f=g+360|0;c[f>>2]=(c[f>>2]|0)+1;b[k>>1]=0;while(1){g=c[h>>2]|0;if((e[k>
x3e;1]|0|0)>=(e[l>>1]|0|0))break;f=(xg(g)|0)<<16>>16;c[(c[j>>2]|0)+((e[k>>
;1]|0)<<2)>>2]=f;b[k>>1]=(b[k>>1]|0)+1<<16>>16}a[g+376>>0]=
0;i=m;return}function Tg(a,f){a=a|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+4|0;h=l;k=l+10|0;j=l+8|0;c[g>>2]=a;
c[h>>2]=f;b[k>>1]=(d[(c[g>>2]|0)+368>>0]|0)-176+1;if((e[k>>1]|0)>>
x3e;0>=((c[(c[g>>2]|0)+20>>2]|0)+1-(c[(c[g>>2]|0)+16>>2]|0)|0)>>>0){
c[(c[g>>2]|0)+12>>2]=130;i=l;return}b[j>>1]=1;while(1){if((e[j>>1]|0|0)>(e[k>
x3e;1]|0|0))break;c[(c[h>>2]|0)+((e[j>>1]|0)-1<<2)>>2]=d[(c[(c[g>>2]|0)+356>
;>2]|0)+((c[(c[g>>2]|0)+360>>2]|0)+(e[j>>1]|0))>>0];b[j>>1]=(b[j>>
;1]|0)+1<<16>>16}i=l;return}function Ug(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;e=m+24|0;f
=m+20|0;j=m+16|0;h=m+12|0;g=m+8|0;k=m+4|0;l=m;c[f>>2]=d;c[j>>2]=c[c[f>>2]>>2];if(a[(c[f
x3e;>2]|0)+292>>0]|0)c[h>>2]=c[(c[f>>2]|0)+296>>2];else c[h>>2]=c[(c[(c[j
>>2]|0)+96>>2]|0)+40>>2];if(!(c[h>>2]|0)){c[e>>2]=153;l=c[e>>2]|0;i=
m;return l|0}Vg(c[h>>2]|0,c[j>>2]|0,c[f>>2]|0)|0;c[(c[h>>2]|0)+428>>2]=0;c[(c[
h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+476>>2]=64;c[(c[h>>2]|0)+480>>2]=0;c
[(c[h>>2]|0)+484>>2]=0;a[(c[h>>2]|0)+488>>0]=0;c[(c[h>>2]|0)+564>>2]=
65536;c[k>>2]=(c[h>>2]|0)+216;c[l>>2]=(c[h>>2]|0)+244;b[c[k>>2]>>1]=
0;b[(c[k>>2]|0)+2>>1]=0;c[(c[k>>2]|0)+4>>2]=0;c[(c[k>>2]|0)+8>>2]=0;
b[(c[l>>2]|0)+8>>1]=0;c[(c[l>>2]|0)+16>>2]=0;c[(c[l>>2]|0)+12>>2]=65536
;Xg(c[h>>2]|0,1,c[(c[j>>2]|0)+656>>2]|0,c[(c[j>>2]|0)+652>>2]|0)|0;Yg(c[h>
;>2]|0,2)|0;Yg(c[h>>2]|0,3)|0;if((c[(c[j>>2]|0)+652>>2]|0)>>>0>0){c[g>
;>2]=Zg(c[h>>2]|0,1,0)|0;if(!(c[g>>2]|0))c[g>>2]=Ta[c[(c[j>>2]|0)+688>>2]
x26;63](c[h>>2]|0)|0}else c[g>>2]=0;if(!(c[g>>2]|0))_g(c[h>>2]|0,c[f>>2]|0)|0;
c[e>>2]=c[g>>2];l=c[e>>2]|0;i=m;return l|0}function Vg(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;p=i;i=i+32|0;h=p+28|0;j=p+24|0;q=p+20|0;k=p+16|0;m=p+12|0;o=p+8|0;n=p+4|0;l=p;c[j>>2]=d;c[q>
;>2]=f;c[k>>2]=g;c[c[j>>2]>>2]=c[q>>2];c[n>>2]=(c[q>>2]|0)+260;
c[(c[j>>2]|0)+4>>2]=c[k>>2];if(c[k>>2]|0){c[(c[j>>2]|0)+396>>2]=c[(c
[k>>2]|0)+116>>2];c[(c[j>>2]|0)+400>>2]=c[(c[k>>2]|0)+120>>2];c[(c[j
>>2]|0)+408>>2]=c[(c[k>>2]|0)+128>>2];c[(c[j>>2]|0)+412>>2]=c[(c[k
x3e;>2]|0)+132>>2];c[(c[j>>2]|0)+404>>2]=c[(c[k>>2]|0)+124>>2];c[(c[j>
;>2]|0)+416>>2]=c[(c[k>>2]|0)+136>>2];d=(c[j>>2]|0)+244|0;f=(c[k>>2]|0)+72
|0;g=d+40|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));q=(c[j>>2]|0)+216|0;g=(c[k
x3e;>2]|0)+44|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[q+8>>2]=c[g+8>
x3e;2];c[q+12>>2]=c[g+12>>2];c[q+16>>2]=c[g+16>>2];c[q+20>>2]=c[g+20>>
;2];c[q+24>>2]=c[g+24>>2];c[(c[j>>2]|0)+420>>2]=c[(c[k>>2]|0)+140>>2
];c[(c[j>>2]|0)+424>>2]=c[(c[k>>2]|0)+144>>2];c[m>>2]=0;while(1){if((c[m>
x3e;2]|0)>=3)break;q=(c[j>>2]|0)+444+(c[m>>2]<<3)|0;g=(c[k>>2]|0)+148+(c[m>>
;2]<<3)|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[m>>2]=(c[m>>
;2]|0)+1}d=(c[j>>2]|0)+284|0;f=(c[k>>2]|0)+172|0;g=d+68|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f
+4|0}while((d|0)<(g|0));c[(c[j>>2]|0)+380>>2]=c[(c[k>>2]|0)+240>>2];c[(c[j>>
;2]|0)+384>>2]=c[(c[k>>2]|0)+244>>2];b[(c[j>>2]|0)+468>>1]=b[(c[k>>2
]|0)+248>>1]|0;c[(c[j>>2]|0)+472>>2]=c[(c[k>>2]|0)+252>>2];d=(c[j>>2
]|0)+180|0;f=(c[k>>2]|0)+256|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));
d=(c[j>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+72|0;f=(c[j
>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>
;2]|0)+108|0;f=(c[j>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0))}
c[o>>2]=c[(c[j>>2]|0)+20>>2];c[l>>2]=Wg(c[(c[j>>2]|0)+8>>2]|0,o,4,(c
[j>>2]|0)+24|0,(e[(c[n>>2]|0)+24>>1]|0)+32|0)|0;c[(c[j>>2]|0)+20>>2]=c[o>
x3e;2];if(c[l>>2]|0){c[h>>2]=c[l>>2];q=c[h>>2]|0;i=p;return q|0}c[o>>2]=c[(c[j
>>2]|0)+388>>2];c[l>>2]=Wg(c[(c[j>>2]|0)+8>>2]|0,o,1,(c[j>>2]|0)+392
|0,e[(c[n>>2]|0)+26>>1]|0)|0;c[(c[j>>2]|0)+388>>2]=c[o>>2]&65535;if(c[l
x3e;>2]|0){c[h>>2]=c[l>>2];q=c[h>>2]|0;i=p;return q|0}else{b[(c[j>>2]|0)+144+8>
;>1]=0;b[(c[j>>2]|0)+144+10>>1]=0;d=(c[j>>2]|0)+72|0;f=(c[j>>2]|0)+144|0;g=d+36|0;do
{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+108|0;f=(c[j>>2]|
0)+144|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+36|0;f=(
c[j>>2]|0)+144|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));a[(c[j>
x3e;2]|0)+488>>0]=0;c[h>>2]=0;q=c[h>>2]|0;i=p;return q|0}return 0}function Wg(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;o=i;i=i+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;p=o+12|0;l=o+8|0;m
=o+4|0;n=o;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[p>>2]=e;c[l>>2]=f;c[n>>2]=
c[p>>2];do if((c[c[j>>2]>>2]|0)>>>0<(c[l>>2]|0)>>>0){
b=_(c[c[j>>2]>>2]|0,c[k>>2]|0)|0;p=_(c[l>>2]|0,c[k>>2]|0)|0;p=hc(c[h>>
;2]|0,1,b,p,c[c[n>>2]>>2]|0,m)|0;c[c[n>>2]>>2]=p;if(!(c[m>>2]|0)){c[c[j>
x3e;2]>>2]=c[l>>2];break}c[g>>2]=c[m>>2];p=c[g>>2]|0;i=o;return p|0}while(0);c
[g>>2]=0;p=c[g>>2]|0;i=o;return p|0}function Xg(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;g=f+8|0;k=f+4|0;j=f;c[h>>2]=a;c[g>>2]=b;c[k>>2]=d;c[j>>2]=e;c[(c[h>
;>2]|0)+444+((c[g>>2]|0)-1<<3)>>2]=c[k>>2];c[(c[h>>2]|0)+444+((c[g>
x3e;2]|0)-1<<3)+4>>2]=c[j>>2];i=f;return 0}function Yg(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)+444+((c[e>>2]|0)-1<<3)>
x3e;2]=0;c[(c[f>>2]|0)+444+((c[e>>2]|0)-1<<3)+4>>2]=0;i=d;return 0}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;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>
;>2]=d;c[j>>2]=(c[f>>2]|0)+444+((c[g>>2]|0)-1<<3);c[(c[f>>2]|0)+356>
x3e;2]=c[c[j>>2]>>2];c[(c[f>>2]|0)+364>>2]=c[(c[j>>2]|0)+4>>2];c[(c[
f>>2]|0)+360>>2]=c[h>>2];c[(c[f>>2]|0)+352>>2]=c[g>>2];i=e;return 0}
function _g(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[(c[e
>>2]|0)+116>>2]=c[(c[d>>2]|0)+396>>2];c[(c[e>>2]|0)+128>>2]=c[(c[d
x3e;>2]|0)+408>>2];c[(c[e>>2]|0)+140>>2]=c[(c[d>>2]|0)+420>>2];c[(c[e>
;>2]|0)+144>>2]=c[(c[d>>2]|0)+424>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)
x3e;=3)break;b=(c[e>>2]|0)+148+(c[f>>2]<<3)|0;a=(c[d>>2]|0)+444+(c[f>>2]<
x3c;3)|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[f>>2]=(c[f>>2]|0)+1}i
=g;return 0}function $g(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;f=k+16|0;g=k+12|0;d=k+8|0;j=k+4|0;h=k;c[g>>
;2]=b;c[d>>2]=c[c[g>>2]>>2];if(a[(c[g>>2]|0)+292>>0]|0)c[j>>2]=c[(c[
g>>2]|0)+296>>2];else c[j>>2]=c[(c[(c[d>>2]|0)+96>>2]|0)+40>>2];if(!(
c[j>>2]|0)){c[f>>2]=153;j=c[f>>2]|0;i=k;return j|0}Vg(c[j>>2]|0,c[d>>2]|0,c[g
x3e;>2]|0)|0;c[(c[j>>2]|0)+428>>2]=0;c[(c[j>>2]|0)+16>>2]=0;a[(c[j>>2]|0)+
488>>0]=0;Xg(c[j>>2]|0,2,c[(c[d>>2]|0)+664>>2]|0,c[(c[d>>2]|0)+660>>
2]|0)|0;Yg(c[j>>2]|0,3)|0;if((c[(c[d>>2]|0)+660>>2]|0)>>>0>0){c[h>>2
]=Zg(c[j>>2]|0,2,0)|0;if((c[h>>2]|0)==0?(a[(c[g>>2]|0)+292>>0]|0)==0:0)c[h>>2]=
Ta[c[(c[d>>2]|0)+688>>2]&63](c[j>>2]|0)|0}else c[h>>2]=0;d=(c[g>>2]|0)+172
|0;b=(c[j>>2]|0)+284|0;e=d+68|0;do{c[d>>2]=c[b>>2];d=d+4|0;b=b+4|0}while((d|0)<(e|0));_g(c[j
x3e;>2]|0,c[g>>2]|0)|0;c[f>>2]=c[h>>2];j=c[f>>2]|0;i=k;return j|0}function ah(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,P=0,Q=0,R=0;R=i;i=i+192|0;l=R+180|0;m=R+176|0;n=R+172|0;o=R+186|0;q=R+168|0;P=R+164|0;Q=R+160|0;G=R+
156|0;r=R+152|0;s=R+148|0;J=R+185|0;p=R+144|0;w=R+104|0;t=R+96|0;u=R+184|0;z=R+92|0;M=R+88|0;L=R+84|0;x=R+80|0;v=R+76|0;y=R+72|0
;N=R+68|0;A=R+64|0;B=R+60|0;C=R+56|0;O=R+52|0;E=R+48|0;F=R+44|0;D=R+40|0;I=R+36|0;H=R+32|0;K=R;c[l>>2]=f;c[m>>
;2]=g;c[n>>2]=h;a[o>>0]=j;c[q>>2]=0;c[r>>2]=c[c[l>>2]>>2];c[s>
x3e;2]=c[(c[l>>2]|0)+12>>2];a[J>>0]=0;c[p>>2]=0;a[u>>0]=0;if((c[n>>2
]|0)>>>0>1?(c[n>>2]|0)>>>0>(e[(c[r>>2]|0)+260+30>>1]|0)>
;>>0:0)c[q>>2]=21;else k=4;a:do if((k|0)==4){if((c[m>>2]|0)>>>0>=(c[(c[r>
x3e;2]|0)+16>>2]|0)>>>0){c[q>>2]=16;break}c[(c[l>>2]|0)+20>>2]=c[m>
x3e;2];if(!(c[(c[l>>2]|0)+16>>2]&1)){c[P>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+44
+4>>2];c[Q>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+44+8>>2]}else{c[P>>2]=65536
;c[Q>>2]=65536}bh(c[l>>2]|0,c[m>>2]|0);g=c[r>>2]|0;if(c[(c[(c[r>>2]|0)+128>
;>2]|0)+52>>2]|0){c[q>>2]=Oa[c[c[c[(c[g+128>>2]|0)+52>>2]>>2]>>
2]&63](c[(c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,c[m>>2]|0,t)|0;if
(c[q>>2]|0)break;a[u>>0]=1;c[G>>2]=0;c[(c[l>>2]|0)+28>>2]=c[t+4>>2];
g=w;j=g+40|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(j|0));uc(w,c[t>>2]|0,c[t+4>>2]|0);c[(c[l>
x3e;2]|0)+24>>2]=w}else c[G>>2]=Ge(g,c[m>>2]|0,(c[l>>2]|0)+28|0)|0;if((c[(c[l>>
;2]|0)+28>>2]|0)>0){if((c[(c[l>>2]|0)+84>>2]|0)==0?(c[(c[(c[r>>2]|0)+128>>
;2]|0)+52>>2]|0)==0:0){c[q>>2]=8;break}c[q>>2]=Wa[c[(c[r>>2]|0)+512>>2]&31
](c[l>>2]|0,c[m>>2]|0,(c[(c[l>>2]|0)+84>>2]|0)+(c[G>>2]|0)|0,c[(c[l>>
;2]|0)+28>>2]|0)|0;if(c[q>>2]|0)break;a[J>>0]=1;c[q>>2]=Ta[c[(c[r>>2]|0)+520
x3e;>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;if(d[o>>0]|0)break}if(c[(c[l>>2]|0
)+28>>2]|0?b[(c[l>>2]|0)+32>>1]|0:0){c[(c[l>>2]|0)+68>>2]=(c[(c[l>>2
]|0)+36>>2]|0)-(c[(c[l>>2]|0)+52>>2]|0);c[(c[l>>2]|0)+68+4>>2]=0;c[(c[l>
x3e;2]|0)+76>>2]=(c[(c[l>>2]|0)+68>>2]|0)+(c[(c[l>>2]|0)+56>>2]|0);c[(c[l>
;>2]|0)+76+4>>2]=0;c[(c[l>>2]|0)+184>>2]=0;c[(c[l>>2]|0)+184+4>>2]=(c[(c[
l>>2]|0)+176>>2]|0)+(c[(c[l>>2]|0)+36+12>>2]|0);c[(c[l>>2]|0)+192>>2
]=0;c[(c[l>>2]|0)+192+4>>2]=(c[(c[l>>2]|0)+184+4>>2]|0)-(c[(c[l>>2]|0)+180>
;>2]|0);eh(c[l>>2]|0,c[m>>2]|0);if((b[(c[l>>2]|0)+32>>1]|0)>0){c[q>>
2]=Ta[c[(c[r>>2]|0)+524>>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;Va[c[(c[r>>
;2]|0)+516>>2]&63](c[l>>2]|0);a[J>>0]=0;c[q>>2]=gh(c[l>>2]|0)|0;if(c[q>
;>2]|0)break;oc(c[s>>2]|0);break}if((b[(c[l>>2]|0)+32>>1]|0)!=-1){c[q>>2]=20;break}
c[M>>2]=b[(c[s>>2]|0)+20+2>>1];c[L>>2]=b[(c[s>>2]|0)+20>>1];c[q>
;>2]=Ta[c[(c[r>>2]|0)+528>>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;c[x>>
;2]=c[(c[l>>2]|0)+168>>2];Va[c[(c[r>>2]|0)+516>>2]&63](c[l>>2]|0);a[J>
;>0]=0;if(a[(c[r>>2]|0)+708>>0]|0){c[A>>2]=c[(c[r>>2]|0)+100>>2];G=fh(c[r
>>2]|0,c[m>>2]|0,p,(c[(c[s>>2]|0)+56+28>>2]|0)+4|0)|0;c[q>>2]=G;if(G|0)break;c
[N>>2]=(c[(c[s>>2]|0)+56+32>>2]|0)+(c[(c[s>>2]|0)+20+28>>2]<<5);c[y
x3e;>2]=c[(c[s>>2]|0)+56+28>>2];c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[y>
x3e;2]|0))break;if(e[(c[N>>2]|0)+4>>1]&2|0){G=(c[N>>2]|0)+8|0;c[G>>2]=(c[G>>
;2]|0)+((c[(c[p>>2]|0)+(c[v>>2]<<3)>>2]&65535)<<16>>16);G=(c[N
x3e;>2]|0)+12|0;c[G>>2]=(c[G>>2]|0)+((c[(c[p>>2]|0)+(c[v>>2]<<3)+4>
x3e;2]&65535)<<16>>16)}c[v>>2]=(c[v>>2]|0)+1;c[N>>2]=(c[N>>2]|0
)+32}N=(c[l>>2]|0)+68|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+0<
;<3)>>2]|0);N=(c[l>>2]|0)+68+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v
>>2]|0)+0<<3)+4>>2]|0);N=(c[l>>2]|0)+76|0;c[N>>2]=(c[N>>2]|0)+(c[(c[
p>>2]|0)+((c[v>>2]|0)+1<<3)>>2]|0);N=(c[l>>2]|0)+76+4|0;c[N>>2]=(c[N
>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+1<<3)+4>>2]|0);N=(c[l>>2]|0)+184
|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+2<<3)>>2]|0);N=(c
[l>>2]|0)+184+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+2<<
;3)+4>>2]|0);N=(c[l>>2]|0)+192|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>
;>2]|0)+3<<3)>>2]|0);N=(c[l>>2]|0)+192+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>
;>2]|0)+((c[v>>2]|0)+3<<3)+4>>2]|0);Fb(c[A>>2]|0,c[p>>2]|0);c[p>>
;2]=0}if(!(c[(c[l>>2]|0)+16>>2]&1)){N=Mb(c[(c[l>>2]|0)+68>>2]|0,c[P>>2]|0
)|0;c[(c[l>>2]|0)+68>>2]=N;P=Mb(c[(c[l>>2]|0)+76>>2]|0,c[P>>2]|0)|0;c[(c[l>
;>2]|0)+76>>2]=P;P=Mb(c[(c[l>>2]|0)+184+4>>2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0
)+184+4>>2]=P;Q=Mb(c[(c[l>>2]|0)+192+4>>2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0)+192+4
x3e;>2]=Q}if(c[(c[l>>2]|0)+16>>2]&1024|0){oc(c[s>>2]|0);c[(c[(c[l>>2]|0)+8>
;>2]|0)+72>>2]=1668246896;break}c[O>>2]=0;c[E>>2]=c[M>>2];c[F>>2]=c[(c[s
x3e;>2]|0)+56+28>>2];c[D>>2]=c[(c[s>>2]|0)+20+28>>2];c[I>>2]=c[(c[l>
x3e;2]|0)+24>>2];c[H>>2]=c[(c[l>>2]|0)+28>>2];oc(c[s>>2]|0);c[B>>2]=
0;while(1){if((c[B>>2]|0)>>>0>=(c[F>>2]|0)>>>0)break;c[O>>2]=(c
[(c[s>>2]|0)+20+32>>2]|0)+(c[D>>2]<<5)+(c[B>>2]<<5);Q=(c[l>>
;2]|0)+68|0;c[K>>2]=c[Q>>2];c[K+4>>2]=c[Q+4>>2];Q=K+8|0;P=(c[l>>2]|0)+76|0;c[Q
>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=K+16|0;P=(c[l>>2]|0)+184|0;c[Q>>2
]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=K+24|0;P=(c[l>>2]|0)+192|0;c[Q>>2]=c[P>
x3e;2];c[Q+4>>2]=c[P+4>>2];c[C>>2]=b[(c[s>>2]|0)+20+2>>1];c[q>>2]=ah
(c[l>>2]|0,c[c[O>>2]>>2]|0,(c[n>>2]|0)+1|0,0)|0;if(c[q>>2]|0)break a;c[O>
x3e;2]=(c[(c[s>>2]|0)+20+32>>2]|0)+(c[D>>2]<<5)+(c[B>>2]<<5);if(!(e[(
c[O>>2]|0)+4>>1]&512)){Q=(c[l>>2]|0)+68|0;c[Q>>2]=c[K>>2];c[Q+4>>
;2]=c[K+4>>2];Q=(c[l>>2]|0)+76|0;P=K+8|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>
x3e;2];Q=(c[l>>2]|0)+184|0;P=K+16|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=(c[l
>>2]|0)+192|0;P=K+24|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2]}c[E>>2]=b
[(c[s>>2]|0)+20+2>>1];if((c[E>>2]|0)!=(c[C>>2]|0))lh(c[l>>2]|0,c[O>>
2]|0,c[M>>2]|0,c[C>>2]|0)|0;c[B>>2]=(c[B>>2]|0)+1}c[(c[l>>2]|0)+24>>
2]=c[I>>2];c[(c[l>>2]|0)+28>>2]=c[H>>2];c[(c[l>>2]|0)+168>>2]=c[x>
;>2];if(c[(c[l>>2]|0)+16>>2]&2|0)break;if(!(e[(c[O>>2]|0)+4>>1]&256))break
;if((c[E>>2]|0)>>>0<=(c[M>>2]|0)>>>0)break;mh(c[l>>2]|0,c[M>
;>2]|0,c[L>>2]|0)|0;break}c[(c[l>>2]|0)+36>>2]=0;c[(c[l>>2]|0)+36+8>>2]=0
;c[(c[l>>2]|0)+36+4>>2]=0;c[(c[l>>2]|0)+36+12>>2]=0;if(!(a[o>>0]|0)){c[(c[l>
;>2]|0)+68>>2]=(c[(c[l>>2]|0)+36>>2]|0)-(c[(c[l>>2]|0)+52>>2]|0);c[(c[l
x3e;>2]|0)+68+4>>2]=0;c[(c[l>>2]|0)+76>>2]=(c[(c[l>>2]|0)+68>>2]|0)+(c[(c
[l>>2]|0)+56>>2]|0);c[(c[l>>2]|0)+76+4>>2]=0;c[(c[l>>2]|0)+184>>2]=0
;c[(c[l>>2]|0)+184+4>>2]=(c[(c[l>>2]|0)+176>>2]|0)+(c[(c[l>>2]|0)+36+12>
x3e;2]|0);c[(c[l>>2]|0)+192>>2]=0;c[(c[l>>2]|0)+192+4>>2]=(c[(c[l>>2]|0)+184+4
>>2]|0)-(c[(c[l>>2]|0)+180>>2]|0);eh(c[l>>2]|0,c[m>>2]|0);if(a[(c[c[l>>
;2]>>2]|0)+708>>0]|0){c[z>>2]=c[(c[c[l>>2]>>2]|0)+100>>2];c[q>
x3e;2]=fh(c[c[l>>2]>>2]|0,c[m>>2]|0,p,4)|0;if(c[q>>2]|0)break;O=(c[l>>2]|0)+68
|0;c[O>>2]=(c[O>>2]|0)+(c[c[p>>2]>>2]|0);O=(c[l>>2]|0)+68+4|0;c[O>>2
]=(c[O>>2]|0)+(c[(c[p>>2]|0)+4>>2]|0);O=(c[l>>2]|0)+76|0;c[O>>2]=(c[O>>
;2]|0)+(c[(c[p>>2]|0)+8>>2]|0);O=(c[l>>2]|0)+76+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[
p>>2]|0)+8+4>>2]|0);O=(c[l>>2]|0)+184|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>
;2]|0)+16>>2]|0);O=(c[l>>2]|0)+184+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+16+4
>>2]|0);O=(c[l>>2]|0)+192|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+24>>2
]|0);O=(c[l>>2]|0)+192+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+24+4>>2]|0);Fb(c
[z>>2]|0,c[p>>2]|0);c[p>>2]=0}if(!(c[(c[l>>2]|0)+16>>2]&1)){O=Mb(c[(c[l
x3e;>2]|0)+68>>2]|0,c[P>>2]|0)|0;c[(c[l>>2]|0)+68>>2]=O;P=Mb(c[(c[l>>2]|0
)+76>>2]|0,c[P>>2]|0)|0;c[(c[l>>2]|0)+76>>2]=P;P=Mb(c[(c[l>>2]|0)+184+4>
x3e;2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0)+184+4>>2]=P;Q=Mb(c[(c[l>>2]|0)+192+4>>2]|0
,c[Q>>2]|0)|0;c[(c[l>>2]|0)+192+4>>2]=Q}c[q>>2]=0}}while(0);if(a[J>>0]|0)Va[c[(
c[r>>2]|0)+516>>2]&63](c[l>>2]|0);if(!(a[u>>0]|0)){Q=c[q>>2]|0;i=R;return
Q|0}Ra[c[(c[c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]>>2]|0)+4>>2]&7](c[(c[(c[(
c[r>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,t);Q=c[q>>2]|0;i=R;return Q|0}function
bh(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;j=i;i=i+32|0;g=j+8|0;n=j+4|0;o=j;m=j+18|0;l=j+16|0;h=j+14|0;k=j+12|0;c[
g>>2]=d;c[n>>2]=f;c[o>>2]=c[c[g>>2]>>2];b[m>>1]=0;b[l>>1]=
0;b[h>>1]=0;b[k>>1]=0;ch(c[o>>2]|0,c[n>>2]|0,((c[(c[g>>2]|0)+16>>2]
x26;512|0)!=0^1)&1,m,h);dh(c[o>>2]|0,c[n>>2]|0,((c[(c[g>>2]|0)+16>>2]&512|0)!=
0^1)&1,l,k);c[(c[g>>2]|0)+52>>2]=b[m>>1];c[(c[g>>2]|0)+56>>2]=e[h>
x3e;1];c[(c[g>>2]|0)+176>>2]=b[l>>1];c[(c[g>>2]|0)+180>>2]=e[k>>1];if
(a[(c[g>>2]|0)+64>>0]|0){i=j;return}a[(c[g>>2]|0)+64>>0]=1;c[(c[g>>2]|0)+60>
;>2]=e[h>>1];i=j;return}function ch(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;m=i;i=i+
32|0;k=m+12|0;p=m+8|0;n=m+16|0;o=m+4|0;l=m;c[k>>2]=e;c[p>>2]=f;a[n>>0]=g;c[o>>2]=h;c[l
x3e;>2]=j;Za[c[(c[(c[k>>2]|0)+532>>2]|0)+156>>2]&31](c[k>>2]|0,0,c[p>>
;2]|0,c[o>>2]|0,c[l>>2]|0)|0;if(!(d[n>>0]|0)){i=m;return}if(!(c[(c[k>>2]|0)+468+12>
x3e;2]|0)){i=m;return}b[c[l>>2]>>1]=b[(c[k>>2]|0)+216+10>>1]|0;i=m;return}function dh(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;n=i;i=i+32|0;j=n+12|0;k=n+8|0;o=n+16|0;l=n+4|0;m=n;c[j>
x3e;2]=d;c[k>>2]=e;a[o>>0]=f;c[l>>2]=g;c[m>>2]=h;a[o>>0]=a[o>>0]|0;if
(a[(c[j>>2]|0)+296>>0]|0){Za[c[(c[(c[j>>2]|0)+532>>2]|0)+156>>2]&31](c[j
x3e;>2]|0,1,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;i=n;return}else{b[c[l>>2]>>1
]=0;b[c[m>>2]>>1]=b[(c[j>>2]|0)+68>>1]|0;i=n;return}}function eh(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;q=i;i=i+48|0;g=q+32|0;h=q+28|0;m=q+24|0;n=q+42|0;p=q+40|0;k=q+38|0;j=q+36|0;o=q+8|0;l=q;c[
g>>2]=d;c[h>>2]=f;c[m>>2]=c[c[g>>2]>>2];b[n>>1]=0;b[p>>1]=
0;b[k>>1]=0;b[j>>1]=0;if(!(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)){i=q;return}if
(!(c[(c[c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]>>2]|0)+8>>2]|0)){i=q;return}c[o>
;>2]=c[(c[g>>2]|0)+52>>2];c[o+4>>2]=0;c[o+8>>2]=c[(c[g>>2]|0)+56>>
;2];c[o+12>>2]=0;c[l>>2]=Wa[c[(c[c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]>>
;2]|0)+8>>2]&31](c[(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,c[h>
;>2]|0,0,o)|0;if(c[l>>2]|0){i=q;return}b[n>>1]=c[o>>2];b[k>>1]=c[o+8>>2];
c[(c[g>>2]|0)+52>>2]=b[n>>1];c[(c[g>>2]|0)+56>>2]=e[k>>1];c[(c[g>
;>2]|0)+176>>2]=b[p>>1];c[(c[g>>2]|0)+180>>2]=e[j>>1];if(a[(c[g>>
;2]|0)+64>>0]|0){i=q;return}a[(c[g>>2]|0)+64>>0]=1;c[(c[g>>2]|0)+60>>2]=e[k>
;>1];i=q;return}function fh(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,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;M=i;i=i+128|0;j=M+112|0;N=M+108|0;k=M+104|0;l=M+100|0;m=M+96|0
;G=M+92|0;A=M+88|0;o=M+84|0;p=M+80|0;s=M+76|0;t=M+72|0;H=M+68|0;B=M+64|0;u=M+60|0;v=M+56|0;y=M+52|0;K=M+48|0;x=M+44|0;w=M+40|0;C
=M+36|0;F=M+32|0;E=M+28|0;z=M+24|0;D=M+20|0;q=M+16|0;r=M+12|0;I=M+8|0;J=M+4|0;n=M;c[N>>2]=d;c[k>>2]=f;c[l>
;>2]=g;c[m>>2]=h;c[G>>2]=c[(c[N>>2]|0)+104>>2];c[A>>2]=c[(c[G>>
2]|0)+28>>2];c[o>>2]=c[(c[N>>2]|0)+712>>2];c[K>>2]=0;c[x>>2]=0;c[w
x3e;>2]=0;c[F>>2]=0;c[E>>2]=0;c[z>>2]=0;if((c[o>>2]|0)==0?1:(a[(c[N>>2]|0
)+708>>0]|0)==0){c[j>>2]=6;N=c[j>>2]|0;i=M;return N|0}c[p>>2]=hc(c[A>>2]|0,8,0
,c[m>>2]|0,0,s)|0;do if(!(c[s>>2]|0)){c[c[l>>2]>>2]=c[p>>2];if((c[k>>
;2]|0)>>>0<(c[(c[o>>2]|0)+32>>2]|0)>>>0?(c[(c[(c[o>>2]|0)+36>
;>2]|0)+(c[k>>2]<<2)>>2]|0)!=(c[(c[(c[o>>2]|0)+36>>2]|0)+((c[k>>
;2]|0)+1<<2)>>2]|0):0){N=Kc(c[G>>2]|0,c[(c[(c[o>>2]|0)+36>>2]|0)+(c[k>>
;2]<<2)>>2]|0)|0;c[s>>2]=N;if((N|0)==0?(N=ee(c[G>>2]|0,(c[(c[(c[o>>2]|0)+36>
;>2]|0)+((c[k>>2]|0)+1<<2)>>2]|0)-(c[(c[(c[o>>2]|0)+36>>2]|0)+(c[k>
x3e;2]<<2)>>2]|0)|0)|0,c[s>>2]=N,(N|0)==0):0){c[t>>2]=(c[(c[G>>2]|0)+32>
x3e;2]|0)-(c[c[G>>2]>>2]|0);c[K>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0
,0,s)|0;if(((c[s>>2]|0)==0?(c[x>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0,0,s)|0,(c
[s>>2]|0)==0):0)?(c[w>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0,0,s)|0,(c[s>
x3e;2]|0)==0):0){c[H>>2]=(ie(c[G>>2]|0)|0)&65535;N=c[t>>2]|0;c[B>>2]=N+((ie(c[G>
;>2]|0)|0)&65535);if(c[H>>2]&32768|0){c[u>>2]=(c[(c[G>>2]|0)+32>>2]|0)-(c
[c[G>>2]>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[B>>
;2]|0);c[E>>2]=Ce(c[G>>2]|0,F)|0;c[B>>2]=(c[(c[G>>2]|0)+32>>2]|0)-(c[c[G>
x3e;2]>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[u>>2]|0)}c[v
>>2]=0;a:while(1){if((c[v>>2]|0)>>>0>=(c[H>>2]&4095)>>>0)break
;c[I>>2]=(ie(c[G>>2]|0)|0)&65535;c[J>>2]=(ie(c[G>>2]|0)|0)&65535;b:do if(c[J
x3e;>2]&32768|0){c[y>>2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[c[o>>2]
x3e;>2]|0)>>>0)break b;N=(ie(c[G>>2]|0)|0)<<16>>16<<2;c[(c[K>
x3e;2]|0)+(c[y>>2]<<2)>>2]=N;c[y>>2]=(c[y>>2]|0)+1}}else{if((c[J>>2]
x26;4095)>>>0>=(c[(c[o>>2]|0)+24>>2]|0)>>>0){L=21;break a}N=_(c[J>
x3e;2]&4095,c[c[o>>2]>>2]|0)|0;Ss(c[K>>2]|0,(c[(c[o>>2]|0)+28>>2]|0)+(N
x3c;<2)|0,c[c[o>>2]>>2]<<2|0)|0}while(0);c:do if(c[J>>2]&16384|0){c[y>>
;2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[c[o>>2]>>2]|0)>>>0)break;
N=(ie(c[G>>2]|0)|0)<<16>>16<<2;c[(c[x>>2]|0)+(c[y>>2]<<2)
x3e;>2]=N;c[y>>2]=(c[y>>2]|0)+1}c[y>>2]=0;while(1){if((c[y>>2]|0)>>>
0>=(c[c[o>>2]>>2]|0)>>>0)break c;N=(ie(c[G>>2]|0)|0)<<16>>
16<<2;c[(c[w>>2]|0)+(c[y>>2]<<2)>>2]=N;c[y>>2]=(c[y>>2]|0)+
1}}while(0);c[n>>2]=Be(c[o>>2]|0,c[J>>2]&65535,c[K>>2]|0,c[x>>2]|0,c[w>
;>2]|0)|0;if(!(c[n>>2]|0))c[B>>2]=(c[B>>2]|0)+(c[I>>2]|0);else{c[u>>2]=(c
[(c[G>>2]|0)+32>>2]|0)-(c[c[G>>2]>>2]|0);if(c[J>>2]&8192|0){c[(c[G>
x3e;2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[B>>2]|0);c[z>>2]=Ce(c[G>>2]|0,
C)|0;c[D>>2]=c[z>>2]}else{c[D>>2]=c[E>>2];c[C>>2]=c[F>>2]}c[q>
x3e;2]=De(c[G>>2]|0,(c[C>>2]|0)==0?c[m>>2]|0:c[C>>2]|0)|0;c[r>>2]=De(c[G>
x3e;2]|0,(c[C>>2]|0)==0?c[m>>2]|0:c[C>>2]|0)|0;d:do if(!((c[D>>2]|0)==0|(c[r>>
2]|0)==0|(c[q>>2]|0)==0)){N=(c[D>>2]|0)==(-1|0);c[y>>2]=0;if(N)while(1){if((c[y>>2]|0)
x3e;>>0>=(c[m>>2]|0)>>>0)break d;N=Mb(b[(c[q>>2]|0)+(c[y>>2]<
x3c;1)>>1]|0,c[n>>2]|0)|0;h=(c[p>>2]|0)+(c[y>>2]<<3)|0;c[h>>2]=(c[h
x3e;>2]|0)+N;h=Mb(b[(c[r>>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;N=(c[p>
;>2]|0)+(c[y>>2]<<3)+4|0;c[N>>2]=(c[N>>2]|0)+h;c[y>>2]=(c[y>>2]|
0)+1}else while(1){if((c[y>>2]|0)>>>0>=(c[C>>2]|0)>>>0)break d;N=Mb(b[(c[
q>>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;h=(c[p>>2]|0)+(e[(c[z>
x3e;2]|0)+(c[y>>2]<<1)>>1]<<3)|0;c[h>>2]=(c[h>>2]|0)+N;h=Mb(b[(c[r
x3e;>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;N=(c[p>>2]|0)+(e[(c[z>>
;2]|0)+(c[y>>2]<<1)>>1]<<3)+4|0;c[N>>2]=(c[N>>2]|0)+h;c[y>>
;2]=(c[y>>2]|0)+1}}while(0);if((c[z>>2]|0)!=(-1|0)){Fb(c[A>>2]|0,c[z>>2]|0);c[z>>
;2]=0}Fb(c[A>>2]|0,c[q>>2]|0);c[q>>2]=0;Fb(c[A>>2]|0,c[r>>2]|0);c[r>>
;2]=0;c[B>>2]=(c[B>>2]|0)+(c[I>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2
]>>2]|0)+(c[u>>2]|0)}c[v>>2]=(c[v>>2]|0)+1}if((L|0)==21)c[s>>2]=8;Fb(c[A>
x3e;2]|0,c[K>>2]|0);c[K>>2]=0;Fb(c[A>>2]|0,c[x>>2]|0);c[x>>2]=0;Fb(c[A>
x3e;2]|0,c[w>>2]|0);c[w>>2]=0}ge(c[G>>2]|0)}if(!(c[s>>2]|0))break;Fb(c[A>>2]|0
,c[p>>2]|0);c[p>>2]=0;c[c[l>>2]>>2]=0;break}c[j>>2]=0;N=c[j>>2]|0;i=
M;return N|0}while(0);c[j>>2]=c[s>>2];N=c[j>>2]|0;i=M;return N|0}function gh(d){d=d|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;t=i;i=i+64|0;f=t+48|0;g=t+44|0;k=t+40|0;j=t+36|0;p=t+32|0;o=t+28|0;h=t+24|0;
n=t+20|0;l=t+16|0;q=t+12|0;m=t+8|0;r=t+4|0;s=t;c[g>>2]=d;c[k>>2]=c[(c[g>>2]|0)+12>>2];c[
j>>2]=0;c[p>>2]=(c[k>>2]|0)+56;c[o>>2]=b[(c[p>>2]|0)+2>>1];d=(c[(c[p
>>2]|0)+4>>2]|0)+(c[o>>2]<<3)|0;u=(c[g>>2]|0)+68|0;c[d>>2]=c[u>
x3e;2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)+1<<
;3)|0;u=(c[g>>2]|0)+76|0;c[d>>2]=c[u>>2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>
x3e;2]|0)+4>>2]|0)+((c[o>>2]|0)+2<<3)|0;u=(c[g>>2]|0)+184|0;c[d>>2]=c[u>
x3e;2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)+3<<
;3)|0;u=(c[g>>2]|0)+192|0;c[d>>2]=c[u>>2];c[d+4>>2]=c[u+4>>2];a[(c[(c[p>
x3e;2]|0)+8>>2]|0)+(c[o>>2]|0)>>0]=0;a[(c[(c[p>>2]|0)+8>>2]|0)+((c[o>>
;2]|0)+1)>>0]=0;a[(c[(c[p>>2]|0)+8>>2]|0)+((c[o>>2]|0)+2)>>0]=0;a[(c[(c[p>
;>2]|0)+8>>2]|0)+((c[o>>2]|0)+3)>>0]=0;c[o>>2]=(c[o>>2]|0)+4;if(a[(c[c[g
x3e;>2]>>2]|0)+708>>0]|0){c[n>>2]=c[(c[c[g>>2]>>2]|0)+100>>2];c
[j>>2]=fh(c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+20>>2]|0,h,c[o>>2]|0)|0;if(c
[j>>2]|0){c[f>>2]=c[j>>2];u=c[f>>2]|0;i=t;return u|0}c[l>>2]=0;while(1){if((c[
l>>2]|0)>=(c[o>>2]|0))break;u=(c[(c[p>>2]|0)+4>>2]|0)+(c[l>>2]<<
;3)|0;c[u>>2]=(c[u>>2]|0)+(c[(c[h>>2]|0)+(c[l>>2]<<3)>>2]|0);u=(c[(c
[p>>2]|0)+4>>2]|0)+(c[l>>2]<<3)+4|0;c[u>>2]=(c[u>>2]|0)+(c[(c[h>
;>2]|0)+(c[l>>2]<<3)+4>>2]|0);c[l>>2]=(c[l>>2]|0)+1}Fb(c[n>>2]|
0,c[h>>2]|0);c[h>>2]=0}if(!(c[(c[g>>2]|0)+16>>2]&2)){hh((c[g>>2]|0)+124|0
,(c[k>>2]|0)+56|0,0,0);Ss(c[(c[g>>2]|0)+124+20>>2]|0,c[(c[g>>2]|0)+124+16>>2]|
0,(e[(c[g>>2]|0)+124+8>>1]|0)+4<<3|0)|0}if(!(c[(c[g>>2]|0)+16>>2]&1)){c[q
>>2]=c[(c[p>>2]|0)+4>>2];c[m>>2]=(c[(c[p>>2]|0)+4>>2]|0)+(c[o>
x3e;2]<<3);c[r>>2]=c[(c[(c[g>>2]|0)+4>>2]|0)+44+4>>2];c[s>>2]=c[(c[(
c[g>>2]|0)+4>>2]|0)+44+8>>2];while(1){if((c[q>>2]|0)>>>0>=(c[m>
x3e;2]|0)>>>0)break;u=Mb(c[c[q>>2]>>2]|0,c[r>>2]|0)|0;c[c[q>>2]>>
;2]=u;u=Mb(c[(c[q>>2]|0)+4>>2]|0,c[s>>2]|0)|0;c[(c[q>>2]|0)+4>>2]=u;c[q>
x3e;2]=(c[q>>2]|0)+8}u=(c[g>>2]|0)+68|0;s=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-
4<<3)|0;c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];u=(c[g>>2]|0)+76|0;s=(c[(
c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-3<<3)|0;c[u>>2]=c[s>>2];c[u+4>
x3e;2]=c[s+4>>2];u=(c[g>>2]|0)+184|0;s=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-2
x3c;<3)|0;c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];u=(c[g>>2]|0)+192|0;s=(c[(c
[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-1<<3)|0;c[u>>2]=c[s>>2];c[u+4>
x3e;2]=c[s+4>>2]}if(!(c[(c[g>>2]|0)+16>>2]&2)){u=(c[g>>2]|0)+124+8|0;b[u>>
;1]=(e[u>>1]|0)+4;c[j>>2]=ih(c[g>>2]|0,0)|0}c[f>>2]=c[j>>2];u=c[f>>2
]|0;i=t;return u|0}function hh(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;l=g+8|0;j=g+4|0;k=
g;c[h>>2]=a;c[l>>2]=d;c[j>>2]=e;c[k>>2]=f;b[(c[h>>2]|0)+8>>1]=(b[(c[
l>>2]|0)+2>>1]|0)-(c[j>>2]|0);b[(c[h>>2]|0)+10>>1]=(b[c[l>>2]>
x3e;1]|0)-(c[k>>2]|0);c[(c[h>>2]|0)+12>>2]=(c[(c[l>>2]|0)+20>>2]|0)+(c[j>
x3e;2]<<3);c[(c[h>>2]|0)+16>>2]=(c[(c[l>>2]|0)+4>>2]|0)+(c[j>>2]<
;<3);c[(c[h>>2]|0)+20>>2]=(c[(c[l>>2]|0)+24>>2]|0)+(c[j>>2]<<3);
c[(c[h>>2]|0)+24>>2]=(c[(c[l>>2]|0)+8>>2]|0)+(c[j>>2]|0);c[(c[h>>2]|
0)+28>>2]=(c[(c[l>>2]|0)+12>>2]|0)+(c[k>>2]<<1);b[(c[h>>2]|0)+32>
;>1]=c[j>>2];i=g;return}function ih(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,q=0,r=0;r=i;i=i+64|0
;l=r+44|0;m=r+40|0;h=r+49|0;q=r+36|0;g=r+32|0;k=r+28|0;o=r+48|0;p=r+24|0;j=r+20|0;n=r;c[m>>2]=b;a[h>>0]=f;c[
q>>2]=(c[m>>2]|0)+124;c[k>>2]=c[(c[(c[m>>2]|0)+8>>2]|0)+140>>2];c[g
x3e;>2]=c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-4<<3)>
x3e;2];c[g>>2]=((c[g>>2]|0)+32&-64)-(c[g>>2]|0);if(c[g>>2]|0)jh(e[(c[q>>2
]|0)+8>>1]|0,c[(c[q>>2]|0)+16>>2]|0,c[g>>2]|0,0);if((c[k>>2]|0)>>>
;0>0)Ss(c[(c[q>>2]|0)+12>>2]|0,c[(c[q>>2]|0)+16>>2]|0,e[(c[q>>2]|0)+8>
;>1]<<3|0)|0;f=(c[(c[m>>2]|0)+160>>2]|0)+284|0;b=(c[(c[m>>2]|0)+4>>2]|0)+
172|0;g=f+68|0;do{c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0}while((f|0)<(g|0));f=c[m>>2]|0;if(a[h>
x3e;0]|0){c[(c[f+160>>2]|0)+216+4>>2]=65536;c[(c[(c[m>>2]|0)+160>>2]|0)+216+8>>
;2]=65536;Ss(c[(c[q>>2]|0)+20>>2]|0,c[(c[q>>2]|0)+16>>2]|0,e[(c[q>>2]|0)+8>
;>1]<<3|0)|0}else{c[(c[(c[m>>2]|0)+160>>2]|0)+216+4>>2]=c[(c[f+4>>2]|0)+44
+4>>2];c[(c[(c[m>>2]|0)+160>>2]|0)+216+8>>2]=c[(c[(c[m>>2]|0)+4>>2]|
0)+44+8>>2]}c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-3<<3
)>>2]=(c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-3<<3)>
;>2]|0)+32&-64;c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<
;3)+4>>2]=(c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<3)+
4>>2]|0)+32&-64;if((c[k>>2]|0)>>>0>0){c[j>>2]=c[(c[m>>2]|0)+12
x3e;>2];j=(c[j>>2]|0)+56|0;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>
;>2]=c[j+8>>2];c[n+12>>2]=c[j+12>>2];c[n+16>>2]=c[j+16>>2];c[p>>
;2]=Xg(c[(c[m>>2]|0)+160>>2]|0,3,c[(c[(c[m>>2]|0)+160>>2]|0)+392>>2]|0,c[k>
;>2]|0)|0;if(c[p>>2]|0){c[l>>2]=c[p>>2];q=c[l>>2]|0;i=r;return q|0}a[(c[(c[m>
x3e;2]|0)+160>>2]|0)+560>>0]=a[h>>0]|0;f=(c[(c[m>>2]|0)+160>>2]|0)+144|0;b=c[q
>>2]|0;g=f+36|0;do{c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0}while((f|0)<(g|0));if(c[(c[m>>2]|
0)+16>>2]&1|0)f=0;else f=(d[(c[(c[m>>2]|0)+4>>2]|0)+292>>0]|0)!=0;a[o>>0]=
f&1;c[p>>2]=kh(c[(c[m>>2]|0)+160>>2]|0,a[o>>0]|0)|0;if(c[p>>2]|0?d[(c[(c[
m>>2]|0)+160>>2]|0)+561>>0]|0:0){c[l>>2]=c[p>>2];q=c[l>>2]|0;i=r;return
q|0}p=c[n+8>>2]|0;a[p>>0]=a[p>>0]|(c[(c[(c[m>>2]|0)+160>>2]|0)+284+56>
x3e;2]<<5|4)}if(!(a[(c[m>>2]|0)+65>>0]|0)){p=(c[m>>2]|0)+68|0;o=(c[(c[q>>2]|0)+
16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-4<<3)|0;c[p>>2]=c[o>>2];c[p+4>
;>2]=c[o+4>>2];p=(c[m>>2]|0)+76|0;o=(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|
0)+8>>1]|0)-3<<3)|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];p=(c[m>
x3e;2]|0)+184|0;o=(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-2<<3)|0;c[
p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];p=(c[m>>2]|0)+192|0;q=(c[(c[q>>2]|
0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<3)|0;c[p>>2]=c[q>>2];c[p+4
x3e;>2]=c[q+4>>2]}c[l>>2]=0;q=c[l>>2]|0;i=r;return q|0}function jh(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;l=i;i=i+32|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[f>>2]=a;c[g>>2]=b;c[
h>>2]=d;c[j>>2]=e;a:do if(c[h>>2]|0){c[k>>2]=0;while(1){if((c[k>>2]|0)>
x3e;>0>=(c[f>>2]|0)>>>0)break a;a=(c[g>>2]|0)+(c[k>>2]<<3)|0;c[
a>>2]=(c[a>>2]|0)+(c[h>>2]|0);c[k>>2]=(c[k>>2]|0)+1}}while(0);if(!(c[j>
x3e;2]|0)){i=l;return}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=(c[f>>2]|0)>
x3e;>0)break;a=(c[g>>2]|0)+(c[k>>2]<<3)+4|0;c[a>>2]=(c[a>>2]|0)+(c[j>
;>2]|0);c[k>>2]=(c[k>>2]|0)+1}i=l;return}function kh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16
|0;g=k+8|0;h=k+4|0;j=k+12|0;f=k;c[h>>2]=d;a[j>>0]=e;d=Zg(c[h>>2]|0,3,0)|0;c[f>>2]=d;if(d
|0){c[g>>2]=c[f>>2];j=c[g>>2]|0;i=k;return j|0}else{e=(c[h>>2]|0)+36|0;f=(c[h>>
;2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(d|0));e=(c[h>>2]|0)+72|
0;f=(c[h>>2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(d|0));e=(c[h
x3e;>2]|0)+108|0;f=(c[h>>2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)
x3c;(d|0));b[(c[h>>2]|0)+284+60>>1]=1;b[(c[h>>2]|0)+284+62>>1]=1;b[(c[h>>2]|0)+
284+64>>1]=1;b[(c[h>>2]|0)+284+10>>1]=16384;b[(c[h>>2]|0)+284+10+2>>1]=0;d=(c[
h>>2]|0)+284+14|0;f=(c[h>>2]|0)+284+10|0;b[d>>1]=b[f>>1]|0;b[d+2>>1]=b[f+2>
;>1]|0;d=(c[h>>2]|0)+284+6|0;f=(c[h>>2]|0)+284+10|0;b[d>>1]=b[f>>1]|0;b[d+2>
x3e;1]=b[f+2>>1]|0;c[(c[h>>2]|0)+284+28>>2]=1;c[(c[h>>2]|0)+284+20>>2]=1;c[(c[
h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+428>>2]=0;a[j>>0]=a[j>>0]|0;c[g>
;>2]=Ta[c[(c[c[h>>2]>>2]|0)+688>>2]&63](c[h>>2]|0)|0;j=c[g>>2]|0;i=k
;return j|0}return 0}function lh(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;E=i;i=i+80|0;l=E+72|0;m=E+68|0;n=E+64|0;o=E+60|0;p=E+56|0;r=E+52|0;q=E+48|0;x=E+44|0;s=E+76|0;A=E+40|0
;C=E+36|0;k=E+32|0;t=E+28|0;u=E+24|0;y=E+20|0;z=E+16|0;v=E+12|0;w=E+8|0;B=E+4|0;D=E;c[m>>2]=f;c[n>>2]=g;c[o
x3e;>2]=h;c[p>>2]=j;c[r>>2]=c[(c[m>>2]|0)+12>>2];c[q>>2]=c[(c[r>>
;2]|0)+20+4>>2];c[x>>2]=b[(c[r>>2]|0)+20+2>>1];a[s>>0]=e[(c[n>>2]|0)+
4>>1]&200;a:do if(a[s>>0]|0){c[k>>2]=c[p>>2];while(1){if((c[k>>2]|0)>
;>>0>=(c[x>>2]|0)>>>0)break a;Lb((c[q>>2]|0)+(c[k>>2]<<3)|
0,(c[n>>2]|0)+16|0);c[k>>2]=(c[k>>2]|0)+1}}while(0);k=c[(c[n>>2]|0)+8>>2]|0;do
if(e[(c[n>>2]|0)+4>>1]&2|0){c[A>>2]=k;c[C>>2]=c[(c[n>>2]|0)+12>>
;2];if(!((c[A>>2]|0)!=0|(c[C>>2]|0)!=0)){c[l>>2]=0;D=c[l>>2]|0;i=E;return D|0}if(d[s>
;>0]|0?e[(c[n>>2]|0)+4>>1]&2048|0:0){z=Mb(c[(c[n>>2]|0)+16>>2]|0,c[(c[n>
x3e;2]|0)+16>>2]|0)|0;c[v>>2]=Zb(z+(Mb(c[(c[n>>2]|0)+16+4>>2]|0,c[(c[n>>2]|0)+
16+4>>2]|0)|0)|0)|0;z=Mb(c[(c[n>>2]|0)+16+12>>2]|0,c[(c[n>>2]|0)+16+12>>2]|0)|
0;c[w>>2]=Zb(z+(Mb(c[(c[n>>2]|0)+16+8>>2]|0,c[(c[n>>2]|0)+16+8>>2]|0)|0)|0)|0;
c[A>>2]=Mb(c[A>>2]|0,c[v>>2]|0)|0;c[C>>2]=Mb(c[C>>2]|0,c[w>>2]|0)|0}
if((c[(c[m>>2]|0)+16>>2]&1|0)==0?(c[B>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+44+4
x3e;>2],c[D>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+44+8>>2],c[A>>2]=Mb(c[A>
x3e;2]|0,c[B>>2]|0)|0,c[C>>2]=Mb(c[C>>2]|0,c[D>>2]|0)|0,e[(c[n>>2]|0)+4>
x3e;1]&4|0):0){c[A>>2]=(c[A>>2]|0)+32&-64;c[C>>2]=(c[C>>2]|0)+32&-64}}else
{c[t>>2]=k;c[u>>2]=c[(c[n>>2]|0)+12>>2];c[t>>2]=(c[t>>2]|0)+(c[o>
;>2]|0);c[u>>2]=(c[u>>2]|0)+(c[p>>2]|0);if((c[t>>2]|0)>>>0<(c[p
>>2]|0)>>>0?(c[u>>2]|0)>>>0<(c[x>>2]|0)>>>0:0){c
[y>>2]=(c[(c[r>>2]|0)+20+4>>2]|0)+(c[t>>2]<<3);c[z>>2]=(c[(c[r>
x3e;2]|0)+20+4>>2]|0)+(c[u>>2]<<3);c[A>>2]=(c[c[y>>2]>>2]|0)-(c[c[z
x3e;>2]>>2]|0);c[C>>2]=(c[(c[y>>2]|0)+4>>2]|0)-(c[(c[z>>2]|0)+4>>
;2]|0);break}c[l>>2]=21;D=c[l>>2]|0;i=E;return D|0}while(0);if((c[A>>2]|0)!=0|(c[C>>2]|0
)!=0)jh((c[x>>2]|0)-(c[p>>2]|0)|0,(c[q>>2]|0)+(c[p>>2]<<3)|0,c[A>>2]|
0,c[C>>2]|0);c[l>>2]=0;D=c[l>>2]|0;i=E;return D|0}function mh(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;u=i;i=i+48|0;k=u+32|0;l=u+28|0;m=u+24|0;n=u+20|0;o=u+16|0;j=u+12|0;p=u+8|0;s=u+4|0;r=u+
38|0;q=u+36|0;t=u;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[j>>2]=(c[(c[l>>2]|0)+12>
;>2]|0)+20;if(((b[(c[j>>2]|0)+2>>1]|0)+4|0)!=0?((b[(c[(c[l>>2]|0)+12>>2]|0)+20+2>
;>1]|0)+(b[(c[(c[l>>2]|0)+12>>2]|0)+56+2>>1]|0)+((b[(c[j>>2]|0)+2>>1]|0)+
4)|0)>>>0>(c[(c[(c[l>>2]|0)+12>>2]|0)+4>>2]|0)>>>0:0)f=kc(c[(c[
l>>2]|0)+12>>2]|0,(b[(c[j>>2]|0)+2>>1]|0)+4|0,0)|0;else f=0;c[o>>2]=f;if(c[o
x3e;>2]|0){c[k>>2]=c[o>>2];t=c[k>>2]|0;i=u;return t|0}g=(c[(c[j>>2]|0)+4>>
;2]|0)+(b[(c[j>>2]|0)+2>>1]<<3)|0;h=(c[l>>2]|0)+68|0;c[g>>2]=c[h>>2];
c[g+4>>2]=c[h+4>>2];g=(c[(c[j>>2]|0)+4>>2]|0)+((b[(c[j>>2]|0)+2>>1]|
0)+1<<3)|0;h=(c[l>>2]|0)+76|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];g=(
c[(c[j>>2]|0)+4>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+2<<3)|0;h=(c[l>>2]|0
)+184|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];g=(c[(c[j>>2]|0)+4>>2]|0
)+((b[(c[j>>2]|0)+2>>1]|0)+3<<3)|0;h=(c[l>>2]|0)+192|0;c[g>>2]=c[h>>
2];c[g+4>>2]=c[h+4>>2];a[(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>>2]|0)+2>>1
]|0)>>0]=0;a[(c[(c[j>>2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+1)>>0]=
0;a[(c[(c[j>>2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+2)>>0]=0;a[(c[(c[j>
x3e;2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+3)>>0]=0;c[s>>2]=c[(c[l>>
;2]|0)+24>>2];j=Kc(c[s>>2]|0,c[(c[l>>2]|0)+168>>2]|0)|0;c[o>>2]=j;if((j|0)==0?(
b[r>>1]=Pc(c[s>>2]|0,o)|0,(c[o>>2]|0)==0):0){b[q>>1]=b[(c[c[l>>2]>>2
]|0)+260+26>>1]|0;f=e[r>>1]|0;if((e[r>>1]|0)>(e[q>>1]|0)){if((f|0)>(c[(c[l>
;>2]|0)+28>>2]|0)){c[k>>2]=22;t=c[k>>2]|0;i=u;return t|0}c[t>>2]=c[(c[(c[l>>
;2]|0)+160>>2]|0)+388>>2];c[o>>2]=Wg(c[(c[(c[l>>2]|0)+160>>2]|0)+8>>
2]|0,t,1,(c[(c[l>>2]|0)+160>>2]|0)+392|0,e[r>>1]|0)|0;c[(c[(c[l>>2]|0)+160>>2]|
0)+388>>2]=c[t>>2]&65535;if(c[o>>2]|0){c[k>>2]=c[o>>2];t=c[k>>2
]|0;i=u;return t|0}}else if(!f){c[k>>2]=0;t=c[k>>2]|0;i=u;return t|0}t=Rc(c[s>>2]|0,c[(c[(c[l>
;>2]|0)+160>>2]|0)+392>>2]|0,e[r>>1]|0)|0;c[o>>2]=t;if(t|0){c[k>>2]=c[o
x3e;>2];t=c[k>>2]|0;i=u;return t|0}c[(c[(c[l>>2]|0)+8>>2]|0)+136>>2]=c[(c[(c[l>
;>2]|0)+160>>2]|0)+392>>2];c[(c[(c[l>>2]|0)+8>>2]|0)+140>>2]=e[r>>
;1];hh((c[l>>2]|0)+124|0,(c[(c[l>>2]|0)+12>>2]|0)+20|0,c[m>>2]|0,c[n>>2]|0);c[
p>>2]=c[m>>2];while(1){if((c[p>>2]|0)>>>0>=(e[(c[l>>2]|0)+124+8>
;>1]|0)>>>0)break;t=(c[(c[l>>2]|0)+124+24>>2]|0)+(c[p>>2]|0)|0;a[t>>
0]=d[t>>0]&-25;c[p>>2]=(c[p>>2]|0)+1}t=(c[l>>2]|0)+124+8|0;b[t>>1]=(e[t
x3e;>1]|0)+4;c[k>>2]=ih(c[l>>2]|0,1)|0;t=c[k>>2]|0;i=u;return t|0}c[k>>2]=c[o>
x3e;2];t=c[k>>2]|0;i=u;return t|0}function nh(a,f){a=a|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;y=i;i=i+96|0;m=y+88|0;n=y+84|0;o=y+80|0;h=y+64|0;r=y+60|0;x=y+56|0;s=y+52|0;j=y+48|0;g=y+44|0;k=y+40|0;w=y+
36|0;p=y+32|0;t=y+28|0;u=y+24|0;v=y+8|0;q=y;c[n>>2]=a;c[o>>2]=f;c[r>>2]=c[c[n>>2]>
x3e;2];c[s>>2]=c[(c[n>>2]|0)+8>>2];c[j>>2]=c[(c[n>>2]|0)+4>>2];c[x
x3e;>2]=65536;if(!(c[(c[n>>2]|0)+16>>2]&1))c[x>>2]=c[(c[j>>2]|0)+12+8>>
;2];if((c[(c[s>>2]|0)+72>>2]|0)!=1668246896)_d((c[s>>2]|0)+108|0,h);else{a=(c[n>>2]|0)+36
|0;c[h>>2]=c[a>>2];c[h+4>>2]=c[a+4>>2];c[h+8>>2]=c[a+8>>2];c[h+12>
;>2]=c[a+12>>2]}c[g>>2]=c[(c[n>>2]|0)+60>>2];if(c[(c[r>>2]|0)+468+12>
;>2]|0?(c[(c[n>>2]|0)+16>>2]&512|0)==0:0)c[g>>2]=e[(c[r>>2]|0)+216+10>>
;1];c[(c[s>>2]|0)+56>>2]=c[g>>2];c[(c[s>>2]|0)+24+8>>2]=c[h>>2];c[(c
[s>>2]|0)+24+12>>2]=c[h+12>>2];c[(c[s>>2]|0)+24+16>>2]=(c[(c[n>>2]|0
)+76>>2]|0)-(c[(c[n>>2]|0)+68>>2]|0);if(((c[(c[r>>2]|0)+468+12>>2]|0)==0?(c[(c
[n>>2]|0)+16>>2]&2|0)==0:0)?(c[k>>2]=oh(c[r>>2]|0,e[(c[j>>2]|0)+12>
x3e;1]|0,c[o>>2]|0)|0,c[k>>2]|0):0)c[(c[s>>2]|0)+24+16>>2]=d[c[k>>2]>>
;0]<<6;c[(c[s>>2]|0)+24>>2]=(c[h+8>>2]|0)-(c[h>>2]|0);c[(c[s>>2]|0)+
24+4>>2]=(c[h+12>>2]|0)-(c[h+4>>2]|0);do if(d[(c[r>>2]|0)+296>>0]|0?(e[(c[r>
;>2]|0)+300+34>>1]|0)>0:0){c[w>>2]=((Vb((c[(c[n>>2]|0)+184+4>>2]|0)-(c[h+12>
;>2]|0)|0,c[x>>2]|0)|0)&65535)<<16>>16;if((c[(c[n>>2]|0)+184+4>>2]|0
)<=(c[(c[n>>2]|0)+192+4>>2]|0)){c[p>>2]=0;break}else{c[p>>2]=(Vb((c[(c[n>>
;2]|0)+184+4>>2]|0)-(c[(c[n>>2]|0)+192+4>>2]|0)|0,c[x>>2]|0)|0)&65535;break}}else l
=18;while(0);if((l|0)==18){c[t>>2]=((Vb((c[h+12>>2]|0)-(c[h+4>>2]|0)|0,c[x>>2]|0)|0)&
;65535)<<16>>16;g=c[r>>2]|0;if((e[(c[r>>2]|0)+368>>1]|0)!=65535)c[p>>
;2]=(b[g+368+70>>1]|0)-(b[(c[r>>2]|0)+368+72>>1]|0);else c[p>>2]=(b[g+216+4>>1
]|0)-(b[(c[r>>2]|0)+216+6>>1]|0);c[w>>2]=((c[p>>2]|0)-(c[t>>2]|0)|0)/2|0}c[u
x3e;>2]=c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2];do if(c[u>>2]|0?c[(c[c[u>>2]
x3e;>2]|0)+8>>2]|0:0){c[v>>2]=0;c[v+4>>2]=c[w>>2];c[v+8>>2]=c[p>>
;2];c[q>>2]=Wa[c[(c[c[u>>2]>>2]|0)+8>>2]&31](c[(c[u>>2]|0)+4>>2
]|0,c[o>>2]|0,1,v)|0;if(!(c[q>>2]|0)){c[w>>2]=c[v+4>>2];c[p>>2]=c[v+8>>
;2];break}c[m>>2]=c[q>>2];x=c[m>>2]|0;i=y;return x|0}while(0);c[(c[s>>2]|0)+60>>
;2]=c[p>>2];if(!(c[(c[n>>2]|0)+16>>2]&1)){c[w>>2]=Mb(c[w>>2]|0,c[x>
x3e;2]|0)|0;c[p>>2]=Mb(c[p>>2]|0,c[x>>2]|0)|0}c[(c[s>>2]|0)+24+20>>2]=(c[(c[s
x3e;>2]|0)+24+8>>2]|0)-((c[(c[s>>2]|0)+24+16>>2]|0)/2|0);c[(c[s>>2]|0)+24+24>
x3e;2]=c[w>>2];c[(c[s>>2]|0)+24+28>>2]=c[p>>2];c[m>>2]=0;x=c[m>>2]|0
;i=y;return x|0}function oh(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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;h=o+
16|0;j=o+12|0;m=o+8|0;l=o+4|0;k=o;c[f>>2]=a;c[g>>2]=b;c[h>>2]=e;c[m>>2]=0;c[l>>
;2]=c[(c[f>>2]|0)+752>>2];c[k>>2]=(c[(c[f>>2]|0)+740>>2]|0)+8;c[j>>2
]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[f>>2]|0)+748>>2]|0)>>>0){
n=7;break}if((d[(c[(c[f>>2]|0)+756>>2]|0)+(c[j>>2]|0)>>0]|0|0)==(c[g>>2]|0))break
;c[j>>2]=(c[j>>2]|0)+1}if((n|0)==7){n=c[m>>2]|0;i=o;return n|0}c[h>>2]=(c[h>>2
]|0)+2;if((c[h>>2]|0)>>>0>=(c[l>>2]|0)>>>0){n=c[m>>2]|0;i=o;return
n|0}n=(c[k>>2]|0)+(_(c[j>>2]|0,c[l>>2]|0)|0)|0;c[m>>2]=n+(c[h>>2]|0);n=c[m>
;>2]|0;i=o;return n|0}function ph(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;l=i;i=i+32|0;m=l+20|0;f=
l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>
;2]=c[m>>2];c[k>>2]=c[(c[j>>2]|0)+532>>2];c[c[h>>2]>>2]=0;c[(c[h>
;>2]|0)+4>>2]=0;if(!(c[k>>2]|0)){i=l;return 0}m=Oa[c[(c[k>>2]|0)+128>>2]&63](c
[j>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;c[c[h>>2]>>2]=m;i=l;return 0}function qh(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,s=0,t=0,u=0,v=0;t=i;i=i+48|0;v=t+24|0;j=t+20|0;k=t+16
|0;u=t+12|0;l=t+8|0;r=t+4|0;p=t;o=t+36|0;s=t+34|0;m=t+32|0;q=t+30|0;n=t+28|0;c[v>>2]=b;c[j>>2]=d;c[k>
x3e;2]=f;c[u>>2]=g;c[l>>2]=h;c[p>>2]=c[v>>2];a[o>>0]=((c[u>>2]&
512|0)!=0^1)&1;b=(c[u>>2]&16|0)!=0;c[r>>2]=0;if(b){while(1){if((c[r>>2]|0)>>
x3e;0>=(c[k>>2]|0)>>>0)break;dh(c[p>>2]|0,(c[j>>2]|0)+(c[r>>2]|0)|0,
a[o>>0]|0,s,m);c[(c[l>>2]|0)+(c[r>>2]<<2)>>2]=e[m>>1];c[r>>
;2]=(c[r>>2]|0)+1}i=t;return 0}else{while(1){if((c[r>>2]|0)>>>0>=(c[k>>2]|0)
x3e;>>0)break;ch(c[p>>2]|0,(c[j>>2]|0)+(c[r>>2]|0)|0,a[o>>0]|0,q,n);c[(c[l>
;>2]|0)+(c[r>>2]<<2)>>2]=e[n>>1];c[r>>2]=(c[r>>2]|0)+1}i=t;return
0}return 0}function rh(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;m=i;i=i+32|0;d=m+28|0;e=m+24|0;f=m+20|0;l=m+16|
0;g=m+12|0;k=m+8|0;h=m+4|0;j=m;c[e>>2]=a;c[f>>2]=b;c[l>>2]=c[e>>2];c[g>>2]=0;do
if(c[(c[c[e>>2]>>2]|0)+8>>2]&2|0){c[k>>2]=c[c[e>>2]>>2];c[h>
;>2]=c[(c[k>>2]|0)+532>>2];c[g>>2]=Oa[c[(c[h>>2]|0)+148>>2]&63](c[k
x3e;>2]|0,c[f>>2]|0,j)|0;if(c[g>>2]|0){c[(c[l>>2]|0)+112>>2]=-1;break}c[d>>
;2]=sh(c[e>>2]|0,c[j>>2]|0)|0;l=c[d>>2]|0;i=m;return l|0}while(0);Ed(c[c[e>>2]>>
;2]|0,c[f>>2]|0);if(c[(c[c[e>>2]>>2]|0)+8>>2]&1|0)c[g>>2]=th(c[l>>
;2]|0)|0;c[d>>2]=c[g>>2];l=c[d>>2]|0;i=m;return l|0}function sh(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;l=i;i=i+32|0;d=l+24|0;e=l+20|0;j=l+16|0;k=l+12|0;f=l+8|0;h=l+4|0;g=l;c[d>>2]=a;c[e>>2]=b;
c[j>>2]=c[c[d>>2]>>2];c[k>>2]=c[d>>2];c[f>>2]=0;c[(c[k>>2]|
0)+112>>2]=c[e>>2];if(c[(c[c[d>>2]>>2]|0)+8>>2]&1|0){Cd(c[c[d>>
2]>>2]|0,c[e>>2]|0);th(c[k>>2]|0)|0;k=c[f>>2]|0;i=l;return k|0}c[h>>2]=c[(c[j
x3e;>2]|0)+532>>2];c[g>>2]=(c[d>>2]|0)+12;c[f>>2]=Oa[c[(c[h>>2]|0)+152>
;>2]&63](c[j>>2]|0,c[e>>2]|0,c[g>>2]|0)|0;if(!(c[f>>2]|0)){k=c[f>>2]|
0;i=l;return k|0}c[(c[k>>2]|0)+112>>2]=-1;k=c[f>>2]|0;i=l;return k|0}function th(d){d=d|0;var f=0,
g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;g=l+16|0;h=l+12|0;f=l+8|0;j=l+4|0;k=l;c[h>>2]=d;c[j>>2]=0;a[(c[h>
x3e;2]|0)+72+36>>0]=0;c[f>>2]=c[c[h>>2]>>2];c[k>>2]=(c[h>>2]|0)+44;d
=c[k>>2]|0;m=(c[h>>2]|0)+12|0;c[d>>2]=c[m>>2];c[d+4>>2]=c[m+4>>2];c[
d+8>>2]=c[m+8>>2];c[d+12>>2]=c[m+12>>2];c[d+16>>2]=c[m+16>>2];c[d+20
>>2]=c[m+20>>2];c[d+24>>2]=c[m+24>>2];if((e[c[k>>2]>>1]|0)>=1?(
e[(c[k>>2]|0)+2>>1]|0)>=1:0){if(e[(c[f>>2]|0)+160+16>>1]&8|0){m=Vb(e[c[k>
x3e;2]>>1]<<6,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[k>>2]|0)+4>>2]=m;m=Vb(e
[(c[k>>2]|0)+2>>1]<<6,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[k>>2]|0)+8>
;>2]=m;m=(Mb(b[(c[f>>2]|0)+70>>1]|0,c[(c[k>>2]|0)+8>>2]|0)|0)+32&-64;c[(c[k>
;>2]|0)+12>>2]=m;m=(Mb(b[(c[f>>2]|0)+72>>1]|0,c[(c[k>>2]|0)+8>>2]|0)|0)+32
&-64;c[(c[k>>2]|0)+16>>2]=m;m=(Mb(b[(c[f>>2]|0)+74>>1]|0,c[(c[k>>2]|0)+8
x3e;>2]|0)|0)+32&-64;c[(c[k>>2]|0)+20>>2]=m;m=(Mb(b[(c[f>>2]|0)+76>>1]|0,c[(c[
k>>2]|0)+4>>2]|0)|0)+32&-64;c[(c[k>>2]|0)+24>>2]=m}f=c[k>>2]|0;if((e[c[k
x3e;>2]>>1]|0)>=(e[(c[k>>2]|0)+2>>1]|0)){c[(c[h>>2]|0)+72+16>>2]=c[f
+4>>2];b[(c[h>>2]|0)+72+8>>1]=b[c[k>>2]>>1]|0;c[(c[h>>2]|0)+72>
x3e;2]=65536;m=xb(e[(c[k>>2]|0)+2>>1]|0,65536,e[c[k>>2]>>1]|0)|0;c[(c[h>>2]|0)+
72+4>>2]=m}else{c[(c[h>>2]|0)+72+16>>2]=c[f+8>>2];b[(c[h>>2]|0)+72+8>>
;1]=b[(c[k>>2]|0)+2>>1]|0;m=xb(e[c[k>>2]>>1]|0,65536,e[(c[k>>2]|0)+2>>
;1]|0)|0;c[(c[h>>2]|0)+72>>2]=m;c[(c[h>>2]|0)+72+4>>2]=65536}a[(c[h>>2]|0)+301
>>0]=0;if(!(c[j>>2]|0))a[(c[h>>2]|0)+72+36>>0]=1;c[g>>2]=c[j>>2];m=c
[g>>2]|0;i=l;return m|0}c[g>>2]=151;m=c[g>>2]|0;i=l;return m|0}function uh(a){a=a|0;var b=0,d=0;b=
i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return 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[d>>2]=c[d>>2];i=b;return}function wh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=
0;j=i;i=i+32|0;h=j+16|0;d=j+12|0;e=j+8|0;g=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=qc(740,c[e>
x3e;2]|0)|0;if(c[f>>2]|0){c[h>>2]=c[f>>2];h=c[h>>2]|0;i=j;return h|0}if(!(c[d>>
;2]|0)){c[h>>2]=0;h=c[h>>2]|0;i=j;return h|0}c[g>>2]=Wc(c[(c[d>>2]|0)+4>>2]|0,
11340)|0;if(c[g>>2]|0)d=Ya[c[(c[c[g>>2]>>2]|0)+32>>2]&127](c[g>>2]|0,c[e
x3e;>2]|0)|0;else d=0;c[h>>2]=d;h=c[h>>2]|0;i=j;return h|0}function xh(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;k=n+12|0;j=n+8|0;l=n+4|0;m=n;c[f>>2]=d;c[g>>2]=
e;c[h>>2]=c[(c[f>>2]|0)+692>>2];c[k>>2]=0;do if(c[h>>2]|0?(c[(c[h>>2
]|0)+2060>>2]|0)==0:0){c[j>>2]=(c[h>>2]|0)+1324;c[m>>2]=c[(c[f>>2]|0)+100>
;>2];c[l>>2]=bc(c[m>>2]|0,32,k)|0;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}else{m=yh
(c[h>>2]|0,c[c[j>>2]>>2]|0)|0;c[c[l>>2]>>2]=m;m=yh(c[h>>2]|0,c[(c[j
x3e;>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+4>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+
12>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+16>>2
]|0)|0;c[(c[l>>2]|0)+12>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+20>>2]|0)|0;c[(c[l
x3e;>2]|0)+16>>2]=m;c[(c[l>>2]|0)+20>>2]=c[(c[j>>2]|0)+28>>2];a[(c[l>
;>2]|0)+24>>0]=a[(c[j>>2]|0)+24>>0]|0;b[(c[l>>2]|0)+26>>1]=c[(c[j>
x3e;2]|0)+32>>2];b[(c[l>>2]|0)+28>>1]=c[(c[j>>2]|0)+36>>2];c[(c[h>>2
]|0)+2060>>2]=c[l>>2];break}}while(0);if(!(c[h>>2]|0)){m=c[k>>2]|0;i=n;return m|0}m=c[g
x3e;>2]|0;l=c[(c[h>>2]|0)+2060>>2]|0;c[m>>2]=c[l>>2];c[m+4>>2]=c[l+4>
;>2];c[m+8>>2]=c[l+8>>2];c[m+12>>2]=c[l+12>>2];c[m+16>>2]=c[l+16>>
;2];c[m+20>>2]=c[l+20>>2];c[m+24>>2]=c[l+24>>2];c[m+28>>2]=c[l+28>>2
];m=c[k>>2]|0;i=n;return m|0}function yh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>
;>2]=a;c[f>>2]=b;do if((c[f>>2]|0)!=65535){a=c[e>>2]|0;if((c[f>>2]|0)>>
x3e;0>390){c[d>>2]=zh(a,(c[f>>2]|0)-391|0)|0;break}if(c[a+2056>>2]|0){c[d>>2]=Ta[c[(
c[(c[e>>2]|0)+2056>>2]|0)+20>>2]&63](c[f>>2]|0)|0;break}else{c[d>>2]=0;break
}}else c[d>>2]=0;while(0);i=g;return c[d>>2]|0}function zh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f
+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if((c[e>>2]|0)>>>0>=(c[(c[d>>2]|0)+1312
>>2]|0)>>>0){a=0;i=f;return a|0}a=c[(c[(c[d>>2]|0)+1316>>2]|0)+(c[e>>2]
x3c;<2)>>2]|0;i=f;return a|0}function Ah(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]&512|0)>0|0}function Bh(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[(c[e>>2]|0)+692>>2];i=d;return c[(c[b>>2]|0)+1304>>2]|0}
function Ch(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;p=i;i=i+32|0;q=p+24|0;h=p+20|0;j=p+16|0;k=p
+12|0;m=p+8|0;n=p+4|0;o=p+28|0;l=p;c[q>>2]=a;c[h>>2]=d;c[j>>2]=f;c[k>>2]=g;c[m>>
;2]=c[(c[q>>2]|0)+692>>2];if(!(c[(c[m>>2]|0)+2056>>2]|0)){c[l>>2]=2;q=c[l>
;>2]|0;i=p;return q|0}b[o>>1]=b[(c[(c[m>>2]|0)+1152+8>>2]|0)+(c[h>>2]<<1)
x3e;>1]|0;c[n>>2]=yh(c[m>>2]|0,e[o>>1]|0)|0;if(c[n>>2]|0)pe(c[j>>2]|0,c[n
>>2]|0,c[k>>2]|0)|0;c[l>>2]=0;q=c[l>>2]|0;i=p;return q|0}function Dh(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,q=0,r=0;o=i;i=i+48|0;m=o+36|0;r=o+32|0;f=o+28|0;g=o+24|0;h=o+20|0;k=o+16|0;j=o+12|0;l=o
+40|0;n=o+8|0;q=o+4|0;p=o;c[r>>2]=a;c[f>>2]=d;c[g>>2]=c[(c[r>>2]|0)+692>>2];c[
h>>2]=(c[g>>2]|0)+1152;c[q>>2]=c[(c[r>>2]|0)+96>>2];c[p>>2]=Vd(c[q
x3e;>2]|0,71003)|0;c[k>>2]=c[p>>2];if(!(c[k>>2]|0)){c[m>>2]=0;r=c[m>>2]|0
;i=o;return r|0}c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0>=(c[(c[g>>2]|0)+12>
x3e;2]|0)>>>0){f=12;break}b[l>>1]=b[(c[(c[h>>2]|0)+8>>2]|0)+(c[n>>2]<
;<1)>>1]|0;if((e[l>>1]|0|0)>390)c[j>>2]=zh(c[g>>2]|0,(e[l>>1]|0)-391
|0)|0;else c[j>>2]=Ta[c[(c[k>>2]|0)+20>>2]&63](e[l>>1]|0)|0;if(c[j>>2]|0?(
Kr(c[f>>2]|0,c[j>>2]|0)|0)==0:0){f=10;break}c[n>>2]=(c[n>>2]|0)+1}if((f|0)==10){c[m>
;>2]=c[n>>2];r=c[m>>2]|0;i=o;return r|0}else if((f|0)==12){c[m>>2]=0;r=c[m>>2]|0;i=
o;return r|0}return 0}function Eh(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;l=i;i=i+32|0;d=l+28|0;e=l+24|0;f=l+20
|0;g=l+16|0;m=l+12|0;h=l+8|0;k=l+4|0;j=l;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[d>>2];c[g>
x3e;2]=0;c[m>>2]=c[c[f>>2]>>2];c[h>>2]=c[(c[(c[m>>2]|0)+96>>2]|0)+4
x3e;>2];c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;if((c[(c[f>>2]|0)+12>
x3e;2]|0)==828){m=c[g>>2]|0;i=l;return m|0}if((c[(c[f>>2]|0)+12>>2]|0)==868){m=c[g>>2]|0
;i=l;return m|0}c[k>>2]=Wc(c[h>>2]|0,11340)|0;c[j>>2]=Vd(c[k>>2]|0,11426)|0;if(!(c[j>
;>2]|0)){m=c[g>>2]|0;i=l;return m|0}if(!(c[c[j>>2]>>2]|0)){m=c[g>>2]|0;i=l;return m
|0}c[g>>2]=Ya[c[c[j>>2]>>2]&127](c[d>>2]|0,c[e>>2]|0)|0;m=c[g>>
2]|0;i=l;return m|0}function Fh(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;f=b+4|0;e=b;c[d>>2]=a;c
[g>>2]=c[c[d>>2]>>2];c[f>>2]=c[(c[g>>2]|0)+692>>2];c[e>>2]=(
c[f>>2]|0)+116;c[(c[d>>2]|0)+16>>2]=(c[e>>2]|0)+524;i=b;return 0}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)+16>>2]=0;i=b;return}function Hh(a,b){a=a|0;b=b|0
;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=b;c[g>>2]=0;if((c[f>
x3e;2]|0)>>>0>=256){g=c[g>>2]|0;i=h;return g|0}c[g>>2]=e[(c[(c[d>>2]|0)+16>
;>2]|0)+(c[f>>2]<<1)>>1];g=c[g>>2]|0;i=h;return g|0}function Ih(a,b){a=a|0;b=b|0;var
d=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;f=l+16|0;g=l+12|0;j=l+8|0;d=l+4|0;h=l;c[f>>2]=a;c[g>>2]=b;c[j>
;>2]=0;c[d>>2]=c[c[g>>2]>>2];c[c[g>>2]>>2]=0;if((c[d>>2]|0)>
;>>0>=255){k=c[j>>2]|0;i=l;return k|0}c[h>>2]=(c[d>>2]|0)+1;while(1){if((c[h>
x3e;2]|0)>>>0>=256){k=7;break}c[j>>2]=e[(c[(c[f>>2]|0)+16>>2]|0)+(c[h>>
;2]<<1)>>1];d=c[h>>2]|0;if(c[j>>2]|0)break;c[h>>2]=d+1}if((k|0)==7){k=c[j>
;>2]|0;i=l;return k|0}c[c[g>>2]>>2]=d;k=c[j>>2]|0;i=l;return k|0}function Jh(a){a=a|0;var b=0
,d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;b=j+24|0;d=j+20|0;f=j+16|0;g=j+12|0;e=j+8|0;k=j+4|0;h=j;c[d>>2]=a;c[f>
x3e;2]=c[c[d>>2]>>2];c[g>>2]=c[(c[f>>2]|0)+100>>2];c[e>>2]=c[(c[f>
;>2]|0)+692>>2];c[k>>2]=(c[e>>2]|0)+1152;c[h>>2]=c[(c[e>>2]|0)+2056>
x3e;2];if(c[(c[k>>2]|0)+8>>2]|0){c[b>>2]=Sa[c[(c[h>>2]|0)+4>>2]&3](c[g>
;>2]|0,c[d>>2]|0,c[(c[e>>2]|0)+12>>2]|0,105,0,c[f>>2]|0)|0;k=c[b>>2]|0;i=
j;return k|0}else{c[b>>2]=163;k=c[b>>2]|0;i=j;return k|0}return 0}function Kh(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;k=d+16|0;h=d+12|0;g=d+8|0;j=d+4|0;f=d;c[k>>2]=a;c[h>>2]=b;c[g>>2]=c[(c
[k>>2]|0)+692>>2];c[j>>2]=(c[g>>2]|0)+1152;c[f>>2]=e[(c[(c[j>>2]|0)+
8>>2]|0)+(c[h>>2]<<1)>>1];b=yh(c[g>>2]|0,c[f>>2]|0)|0;i=d;return b|0
}function Lh(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]=c[c[d>>
;2]>>2];c[e>>2]=c[(c[f>>2]|0)+100>>2];Fb(c[e>>2]|0,c[(c[d>>2]|0)+20
x3e;>2]|0);c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>2]=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,j=0;d=i;i=i+32|0;f=d+16|0;e=d+12|0;j=d+8|0;h=d+4|0;g=d;c[f>>2]=a;c[e>>
2]=b;c[j>>2]=c[c[f>>2]>>2];c[h>>2]=c[(c[j>>2]|0)+692>>2];c[g>
x3e;2]=c[(c[h>>2]|0)+2056>>2];a=Ya[c[(c[g>>2]|0)+8>>2]&127](c[f>>2]|0,c[e
>>2]|0)|0;i=d;return a|0}function Nh(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;e=d+12|0;j=d+8
|0;h=d+4|0;g=d;c[f>>2]=a;c[e>>2]=b;c[j>>2]=c[c[f>>2]>>2];c[h>>2]=c[(
c[j>>2]|0)+692>>2];c[g>>2]=c[(c[h>>2]|0)+2056>>2];a=Ya[c[(c[g>>2]|0)+
12>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Oh(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;m=i;i=i+32|0;n=m+24|0;f=m+20|0;g=m+16|0;h=m+12|0;l=m+8|0;j=m+4|0;k=m;c[n>>2]=a;c
[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[l>>2]=0;c[j>>2]=c[(c[n>>2]|0)+692>
;>2];if(!(c[j>>2]|0)){n=c[l>>2]|0;i=m;return n|0}c[k>>2]=(c[j>>2]|0)+1324;if((c[(c[
k>>2]|0)+128>>2]|0)==65535){c[l>>2]=6;n=c[l>>2]|0;i=m;return n|0}if(c[f>>2]|0){
if(!(c[(c[j>>2]|0)+2064>>2]|0)){n=yh(c[j>>2]|0,c[(c[k>>2]|0)+128>>2]|0)|0;c[(c
[j>>2]|0)+2064>>2]=n}c[c[f>>2]>>2]=c[(c[j>>2]|0)+2064>>2]}if(c[g>
;>2]|0){if(!(c[(c[j>>2]|0)+2068>>2]|0)){n=yh(c[j>>2]|0,c[(c[k>>2]|0)+132>>
;2]|0)|0;c[(c[j>>2]|0)+2068>>2]=n}c[c[g>>2]>>2]=c[(c[j>>2]|0)+2068>>
2]}if(!(c[h>>2]|0)){n=c[l>>2]|0;i=m;return n|0}c[c[h>>2]>>2]=c[(c[k>>2]|0)+136
>>2];n=c[l>>2]|0;i=m;return n|0}function Ph(b,d){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;k=j+16
|0;e=j+12|0;h=j+8|0;f=j+4|0;g=j;c[k>>2]=b;c[e>>2]=d;c[h>>2]=0;c[f>>2]=c[(c[k>>
2]|0)+692>>2];a[c[e>>2]>>0]=0;if(!(c[f>>2]|0)){k=c[h>>2]|0;i=j;return k|0}c[g
x3e;>2]=(c[f>>2]|0)+1324;if((c[(c[g>>2]|0)+128>>2]|0)==65535){k=c[h>>2]|0;i=j;return
k|0}a[c[e>>2]>>0]=1;k=c[h>>2]|0;i=j;return k|0}function Qh(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;m=i;i=i+32|0;n=m+24|0;f=m+20|0;g=m+16|0;l=m+12|0;j=m+8|0;h=m+4|0;k=m;c[n>>2]=a;c[f>>2
]=b;c[g>>2]=d;c[l>>2]=0;c[j>>2]=c[(c[n>>2]|0)+692>>2];do if(c[j>>2]|
0){c[k>>2]=(c[j>>2]|0)+1324;if((c[(c[k>>2]|0)+128>>2]|0)==65535){c[l>>2]=6;break
}if((c[f>>2]|0)>>>0>(c[(c[j>>2]|0)+12>>2]|0)>>>0){c[l>>
;2]=6;break}c[h>>2]=e[(c[(c[j>>2]|0)+1152+8>>2]|0)+(c[f>>2]<<1)>>1];
if(c[g>>2]|0)c[c[g>>2]>>2]=c[h>>2]}while(0);i=m;return c[l>>2]|0}
function rm(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;L=i;i=i+128|0;N=L+116|0;M=L+112|0;j=L+108|0;D=L+104|0;v=L+100|0;g=L+96|0;h=L+92|0;y=L+88|0;
H=L+84|0;w=L+80|0;p=L+76|0;s=L+72|0;k=L+68|0;r=L+64|0;n=L+60|0;l=L+56|0;t=L+52|0;x=L+48|0;u=L+44|0;m=L+40|0;o=L+36|0;q=L+32|0;C=
L+28|0;z=L+24|0;E=L+20|0;G=L+16|0;F=L+120|0;A=L+12|0;I=L+8|0;B=L+4|0;J=L;c[N>>2]=e;c[M>>2]=f;c[j>>
2]=(c[N>>2]|0)+48+((c[M>>2]|0)*28|0);c[D>>2]=0;c[v>>2]=c[c[N>>2]>>2];
c[g>>2]=(c[(c[N>>2]|0)+112>>2]|0)+40+((c[M>>2]|0)*396|0);c[h>>2]=c[(c[j>
x3e;2]|0)+8>>2];c[y>>2]=(c[h>>2]|0)+((c[c[j>>2]>>2]|0)*52|0);c[(c[j>>
;2]|0)+12>>2]=0;f=c[N>>2]|0;if(!(c[M>>2]|0))f=c[f+4>>2]|0;else f=c[f+12>>2]|0;
c[w>>2]=f;c[p>>2]=Mb(c[(c[g>>2]|0)+204>>2]|0,c[w>>2]|0)|0;if((c[p>>2
]|0)>16)c[p>>2]=Vb(16,c[w>>2]|0)|0;else c[p>>2]=c[(c[g>>2]|0)+204>>2];c[H
>>2]=c[h>>2];while(1){if((c[H>>2]|0)>>>0>=(c[y>>2]|0)>>>
;0)break;c[s>>2]=0;c[k>>2]=65535;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[(c[j>
x3e;2]|0)+12>>2]|0))break;c[n>>2]=(c[(c[j>>2]|0)+20>>2]|0)+((c[r>>2]|0)*48|0);
do if((a[(c[n>>2]|0)+13>>0]|0)==(a[(c[H>>2]|0)+1>>0]|0)){c[l>>2]=(b[(c[H>
x3e;2]|0)+2>>1]|0)-(b[c[n>>2]>>1]|0);if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>
;>2]|0);if((c[l>>2]|0)<(c[p>>2]|0)?(c[l>>2]|0)<(c[k>>2]|0):0){c[t>
x3e;2]=c[(c[H>>2]|0)+20>>2];if(c[t>>2]|0){c[x>>2]=c[(c[n>>2]|0)+40>>
2];c[m>>2]=0;do{c[u>>2]=c[(c[x>>2]|0)+20>>2];if(c[u>>2]|0){if((b[(c[t>>
;2]|0)+2>>1]|0)>(b[(c[u>>2]|0)+2>>1]|0))f=(b[(c[t>>2]|0)+2>>1]|0)-(b[(c[u
>>2]|0)+2>>1]|0)|0;else f=(b[(c[u>>2]|0)+2>>1]|0)-(b[(c[t>>2]|0)+2>>
1]|0)|0;c[m>>2]=f;if((c[m>>2]|0)>=(c[p>>2]|0))break}N=c[(c[x>>2]|0)+16>>2
]|0;c[x>>2]=N}while((N|0)!=(c[(c[n>>2]|0)+40>>2]|0));if((c[m>>2]|0)>=(c[p>>
;2]|0))break}c[k>>2]=c[l>>2];c[s>>2]=c[n>>2]}}while(0);c[r>>2]=(c[r>>
;2]|0)+1}if(c[s>>2]|0){c[(c[H>>2]|0)+16>>2]=c[(c[s>>2]|0)+40>>2];c[(c[(c[s>
;>2]|0)+44>>2]|0)+16>>2]=c[H>>2];c[(c[s>>2]|0)+44>>2]=c[H>>2]}else
{c[D>>2]=Yl(c[j>>2]|0,b[(c[H>>2]|0)+2>>1]|0,a[(c[H>>2]|0)+1>>0]|0,c[
v>>2]|0,o)|0;if(c[D>>2]|0){K=69;break}f=c[o>>2]|0;e=f+48|0;do{c[f>>2]=0;f=f+4|0}while((f
|0)<(e|0));c[(c[o>>2]|0)+40>>2]=c[H>>2];c[(c[o>>2]|0)+44>>2]=c[H>>
;2];b[c[o>>2]>>1]=b[(c[H>>2]|0)+2>>1]|0;N=Mb(b[(c[H>>2]|0)+2>>1]|0,c
[w>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=N;c[(c[o>>2]|0)+4>>2]=N;c[(c[H>>2]|0
)+16>>2]=c[H>>2];a[(c[o>>2]|0)+13>>0]=a[(c[H>>2]|0)+1>>0]|0}c[H>
;>2]=(c[H>>2]|0)+52}if((K|0)==69){N=c[D>>2]|0;i=L;return N|0}c[q>>2]=c[(c[j>>2]|0)+
20>>2];c[C>>2]=(c[q>>2]|0)+((c[(c[j>>2]|0)+12>>2]|0)*48|0);c[z>>2]=c
[q>>2];while(1){if((c[z>>2]|0)>>>0>=(c[C>>2]|0)>>>0)break;c[H
x3e;>2]=c[(c[z>>2]|0)+40>>2];if(c[H>>2]|0)do{c[(c[H>>2]|0)+12>>2]=c[z>
;>2];c[H>>2]=c[(c[H>>2]|0)+16>>2]}while((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>
;>2]|0));c[z>>2]=(c[z>>2]|0)+48}c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)
x3e;>>0>=(c[C>>2]|0)>>>0)break;c[E>>2]=0;c[G>>2]=0;c[H>>2]=
c[(c[z>>2]|0)+40>>2];do{if(d[c[H>>2]>>0]&1|0)c[E>>2]=(c[E>>2]|0
)+1;else c[G>>2]=(c[G>>2]|0)+1;if(c[(c[H>>2]|0)+24>>2]|0)f=(c[(c[(c[H>>2]|0)+24
>>2]|0)+12>>2]|0)!=(c[z>>2]|0);else f=0;a[F>>0]=f&1;if(!(!(c[(c[H>>2]|0)+
20>>2]|0)?!(d[F>>0]|0):0))K=47;do if((K|0)==47){K=0;c[A>>2]=c[(c[z>>2]|0)+24>>
2];c[I>>2]=c[(c[H>>2]|0)+20>>2];if(a[F>>0]|0){c[I>>2]=c[(c[H>>2]|0)+
24>>2];c[A>>2]=c[(c[z>>2]|0)+28>>2]}if(c[A>>2]|0){c[B>>2]=(b[c[z>
;>2]>>1]|0)-(b[c[A>>2]>>1]|0);if((c[B>>2]|0)<0)c[B>>2]=0-(c[B>
x3e;2]|0);if((b[(c[H>>2]|0)+2>>1]|0)>(b[(c[I>>2]|0)+2>>1]|0))f=(b[(c[H>>2
]|0)+2>>1]|0)-(b[(c[I>>2]|0)+2>>1]|0)|0;else f=(b[(c[I>>2]|0)+2>>1]|0)-(b[(c[H
>>2]|0)+2>>1]|0)|0;c[J>>2]=f;if((c[J>>2]|0)<(c[B>>2]|0))c[A>>2]=
c[(c[I>>2]|0)+12>>2]}else c[A>>2]=c[(c[I>>2]|0)+12>>2];f=c[A>>2]|0;e
=c[z>>2]|0;if(a[F>>0]|0){c[e+28>>2]=f;N=(c[A>>2]|0)+12|0;a[N>>0]=d[N>>
;0]|2;break}else{c[e+24>>2]=f;break}}while(0);c[H>>2]=c[(c[H>>2]|0)+16>>2]}while((c[H>
;>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));a[(c[z>>2]|0)+12>>0]=0;if((c[E>>2]|0)
x3e;0?(c[E>>2]|0)>=(c[G>>2]|0):0){N=(c[z>>2]|0)+12|0;a[N>>0]=d[N>>0]|1}if
(c[(c[z>>2]|0)+28>>2]|0?c[(c[z>>2]|0)+24>>2]|0:0)c[(c[z>>2]|0)+28>>2
]=0;c[z>>2]=(c[z>>2]|0)+48}N=c[D>>2]|0;i=L;return N|0}function sm(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;A=i;i=i+80|0;u=A+72|0;h=A+68|0;g=A+64|0;z=A+60|0;y=A+56|0;r
=A+52|0;x=A+48|0;j=A+44|0;l=A+40|0;s=A+36|0;k=A+32|0;o=A+28|0;p=A+24|0;q=A+20|0;m=A+16|0;n=A+12|0;t=A+8|0;w=A+4|0;v=A;c[u>
x3e;2]=e;c[h>>2]=f;c[g>>2]=(c[u>>2]|0)+48+((c[h>>2]|0)*28|0);c[z>>2]=c[(c[g>
;>2]|0)+20>>2];c[y>>2]=(c[z>>2]|0)+((c[(c[g>>2]|0)+12>>2]|0)*48|0);c[j>
;>2]=0;c[l>>2]=0;c[s>>2]=0;c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>
x3e;>0>=(c[y>>2]|0)>>>0)break;do if(!(d[(c[x>>2]|0)+12>>0]&4)){c[k
x3e;>2]=c[(c[x>>2]|0)+24>>2];if(!(c[k>>2]|0)){c[s>>2]=(c[s>>2]|0)+1;break
}if((c[k>>2]|0)>>>0<(c[x>>2]|0)>>>0){tm(c[u>>2]|0,c[h>>
;2]|0,c[k>>2]|0,c[x>>2]|0);g=(c[x>>2]|0)+12|0;a[g>>0]=d[g>>0]|4;break}f=c[u>
;>2]|0;e=c[x>>2]|0;g=c[k>>2]|0;if((c[h>>2]|0)==1|(c[j>>2]|0)!=0)wm(f,e,g,c[l>
x3e;2]|0,c[h>>2]|0)|0;else c[l>>2]=wm(f,e,g,0,0)|0;c[j>>2]=c[x>>2];g=(c[x>>2]|
0)+12|0;a[g>>0]=d[g>>0]|4;g=(c[k>>2]|0)+12|0;a[g>>0]=d[g>>0]|4}while(0);c[x>
;>2]=(c[x>>2]|0)+48}c[r>>2]=((c[y>>2]|0)-(c[z>>2]|0)|0)/48|0;if((c[h>>2]|
0)==0?(c[r>>2]|0)==6|(c[r>>2]|0)==12:0){f=c[z>>2]|0;if((c[r>>2]|0)==6){c[o>>2]=
f;c[p>>2]=(c[z>>2]|0)+96;c[q>>2]=(c[z>>2]|0)+192}else{c[o>>2]=f+48;c[p>
x3e;2]=(c[z>>2]|0)+240;c[q>>2]=(c[z>>2]|0)+432}c[m>>2]=(c[(c[p>>2]|0)+4>
x3e;2]|0)-(c[(c[o>>2]|0)+4>>2]|0);c[n>>2]=(c[(c[q>>2]|0)+4>>2]|0)-(c[(c[p>
;>2]|0)+4>>2]|0);c[t>>2]=(c[m>>2]|0)-(c[n>>2]|0);if((c[t>>2]|0)<0)c[
t>>2]=0-(c[t>>2]|0);if(((c[(c[o>>2]|0)+24>>2]|0)==((c[o>>2]|0)+48|0)?(c[(c[p
x3e;>2]|0)+24>>2]|0)==((c[p>>2]|0)+48|0):0)?((c[t>>2]|0)<8?(c[(c[q>>2]|0)+24
x3e;>2]|0)==((c[q>>2]|0)+48|0):0):0){c[l>>2]=(c[(c[q>>2]|0)+8>>2]|0)-((c[(c[p>
x3e;2]|0)+8>>2]<<1)-(c[(c[o>>2]|0)+8>>2]|0));t=(c[q>>2]|0)+8|0;c[t>>
2]=(c[t>>2]|0)-(c[l>>2]|0);if(c[(c[q>>2]|0)+24>>2]|0){t=(c[(c[q>>2]|0)+24>
;>2]|0)+8|0;c[t>>2]=(c[t>>2]|0)-(c[l>>2]|0)}if((c[r>>2]|0)==12){t=(c[z>>2
]|0)+384+8|0;c[t>>2]=(c[t>>2]|0)-(c[l>>2]|0);t=(c[z>>2]|0)+528+8|0;c[t>>2]=(c[
t>>2]|0)-(c[l>>2]|0)}t=(c[q>>2]|0)+12|0;a[t>>0]=d[t>>0]|4;if(c[(c[q>>
;2]|0)+24>>2]|0){t=(c[(c[q>>2]|0)+24>>2]|0)+12|0;a[t>>0]=d[t>>0]|4}}}if(!(c[s
x3e;>2]|0)){i=A;return}c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>>>0>=(c[y
x3e;>2]|0)>>>0)break;if((d[(c[x>>2]|0)+12>>0]&4|0)==0?c[(c[x>>2]|0)+28>
;>2]|0:0){xm(c[u>>2]|0,c[(c[x>>2]|0)+28>>2]|0,c[x>>2]|0);t=(c[x>>2]|0)+12
|0;a[t>>0]=d[t>>0]|4;c[s>>2]=(c[s>>2]|0)+-1}c[x>>2]=(c[x>>2]|0)+48}if
(!(c[s>>2]|0)){i=A;return}c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>>>0>
;=(c[y>>2]|0)>>>0)break;do if(!(d[(c[x>>2]|0)+12>>0]&4)){t=c[x>>2]|0
;c[v>>2]=t;c[w>>2]=t;do{t=(c[w>>2]|0)+-48|0;c[w>>2]=t;if(t>>>0<(c[z
x3e;>2]|0)>>>0)break}while(!(d[(c[w>>2]|0)+12>>0]&4|0));do{t=(c[v>>2]|0)+
48|0;c[v>>2]=t;if(t>>>0>=(c[y>>2]|0)>>>0)break}while(!(d[(c[v>>
2]|0)+12>>0]&4|0));if((c[w>>2]|0)>>>0<(c[z>>2]|0)>>>0?(c[v
>>2]|0)>>>0>=(c[y>>2]|0)>>>0:0)break;if((c[w>>2]|0)>>
x3e;0<(c[z>>2]|0)>>>0){xm(c[u>>2]|0,c[v>>2]|0,c[x>>2]|0);break}if((c
[v>>2]|0)>>>0>=(c[y>>2]|0)>>>0){xm(c[u>>2]|0,c[w>>2]|
0,c[x>>2]|0);break}f=c[(c[w>>2]|0)+8>>2]|0;e=c[x>>2]|0;if((b[c[v>>2]>>
;1]|0)==(b[c[w>>2]>>1]|0)){c[e+8>>2]=f;break}else{t=f+(xb((b[e>>1]|0)-(b[c[w>>
2]>>1]|0)|0,(c[(c[v>>2]|0)+8>>2]|0)-(c[(c[w>>2]|0)+8>>2]|0)|0,(b[c[v>>
;2]>>1]|0)-(b[c[w>>2]>>1]|0)|0)|0)|0;c[(c[x>>2]|0)+8>>2]=t;break}}while(0);c[x
>>2]=(c[x>>2]|0)+48}i=A;return}function tm(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;
g=i;i=i+32|0;n=g+20|0;m=g+16|0;k=g+12|0;h=g+8|0;l=g+4|0;j=g;c[n>>2]=a;c[m>>2]=b;c[k>>2]=e;c[h>
;>2]=f;c[l>>2]=(c[(c[h>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+4>>2]|0);c[j>
x3e;2]=um(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,d[(c[k>>2]|0)+12>>0]|0,d[(c[h>>
;2]|0)+12>>0]|0)|0;c[(c[h>>2]|0)+8>>2]=(c[(c[k>>2]|0)+8>>2]|0)+(c[j>>
;2]|0);i=g;return}function um(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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+44|0;k=p+40|0;s=p+36|0;g=p+32|0;r=p+28|0;q=p+24|0;t=p+20|0;h=p+16|0;n=p+12|0;o=p+8|0;j=p+4|0;l=p;c[k>>
2]=a;c[s>>2]=b;c[g>>2]=d;c[r>>2]=e;c[q>>2]=f;c[t>>2]=c[(c[k>>2]|0)+112
>>2];c[h>>2]=(c[t>>2]|0)+40+((c[s>>2]|0)*396|0);c[n>>2]=c[g>>2];c[o
x3e;>2]=0;c[j>>2]=(c[s>>2]|0)==1&1;c[r>>2]=c[r>>2];c[q>>2]=c[q>
x3e;2];if(!(c[(c[k>>2]|0)+108>>2]&4)){c[m>>2]=c[g>>2];t=c[m>>2]|0;i=p;return
t|0}if((c[n>>2]|0)<0){c[n>>2]=0-(c[g>>2]|0);c[o>>2]=1}if(c[j>>2]|0?!(c[(
c[k>>2]|0)+108>>2]&2|0):0)b=9;else b=7;do if((b|0)==7){if((c[j>>2]|0)==0?(c[(c[k>>2
]|0)+108>>2]&1|0)==0:0){b=9;break}c[n>>2]=vm((c[h>>2]|0)+12|0,c[(c[h>>2]|0)+8>
x3e;2]|0,c[n>>2]|0)|0;if(c[j>>2]|0)if((c[n>>2]|0)>=64){c[n>>2]=(c[n>>2]|0
)+16&-64;break}else{c[n>>2]=64;break}g=c[n>>2]|0;if(c[(c[k>>2]|0)+108>>2]&8|0)
if((g|0)<64){c[n>>2]=64;break}else{c[n>>2]=(c[n>>2]|0)+32&-64;break}e=c[n>>2]|
0;if((g|0)<48){c[n>>2]=e+64>>1;break}g=c[n>>2]|0;if((e|0)<128){c[n>>2]=g+22&
;-64;break}else{c[n>>2]=g+32&-64;break}}while(0);do if((b|0)==9){if((c[(c[h>>2]|0)+8>>2]|0)
x3e;>>0>0?(t=(c[n>>2]|0)-(c[(c[h>>2]|0)+12+4>>2]|0)|0,((((c[n>>2]|0)-(c[(
c[h>>2]|0)+12+4>>2]|0)|0)<0?0-t|0:t)|0)<40):0){t=c[(c[h>>2]|0)+12+4>>2]|0;c[n
x3e;>2]=t;c[n>>2]=(c[n>>2]|0)<48?48:t;break}g=c[n>>2]|0;if((c[n>>2]|0)<54
){c[n>>2]=(c[n>>2]|0)+((54-g|0)/2|0);break}if((g|0)<192){c[l>>2]=c[n>>2]&63;c[
n>>2]=c[n>>2]&-64;g=c[l>>2]|0;if((c[l>>2]|0)<10){c[n>>2]=(c[n>
x3e;2]|0)+g;break}if((g|0)<22){c[n>>2]=(c[n>>2]|0)+10;break}g=c[l>>2]|0;if((c[l>>2]|
0)<42){c[n>>2]=(c[n>>2]|0)+g;break}if((g|0)<54){c[n>>2]=(c[n>>2]|0)+54;break}else
{c[n>>2]=(c[n>>2]|0)+(c[l>>2]|0);break}}}while(0);if(c[o>>2]|0)c[n>>2]=0-(c[n
x3e;>2]|0);c[m>>2]=c[n>>2];t=c[m>>2]|0;i=p;return t|0}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,l=0,m=0,n=0,o=0;o=i;i=i+48|0;e=o+32|0;f=o+28|0;m=o+24|0;j=o+20|0;g=o+16|0;n=o+12|0;l=o+8|0;k=o+4|0;h=o;
c[e>>2]=a;c[f>>2]=b;c[m>>2]=d;c[g>>2]=98;c[n>>2]=c[m>>2];c[j>
x3e;2]=0;while(1){if((c[j>>2]|0)>=(c[f>>2]|0))break;c[k>>2]=c[(c[e>>2]|0)+((c[j>
;>2]|0)*12|0)+4>>2];c[h>>2]=(c[m>>2]|0)-(c[k>>2]|0);if((c[h>>2]|0)<0
)c[h>>2]=0-(c[h>>2]|0);if((c[h>>2]|0)<(c[g>>2]|0)){c[g>>2]=c[h>>
;2];c[n>>2]=c[k>>2]}c[j>>2]=(c[j>>2]|0)+1}c[l>>2]=(c[n>>2]|0)+32&
;-64;f=c[m>>2]|0;e=c[l>>2]|0;if((c[m>>2]|0)>=(c[n>>2]|0)){if((f|0)>=(e+48|0)){
n=c[m>>2]|0;i=o;return n|0}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}else{if((f|0)<
;=(e-48|0)){n=c[m>>2]|0;i=o;return n|0}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}return
0}function wm(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,y=0,
z=0;z=i;i=i+80|0;h=z+64|0;u=z+60|0;v=z+56|0;j=z+52|0;k=z+48|0;q=z+44|0;w=z+40|0;p=z+36|0;x=z+32|0;l=z+28|0;m=z+24|0;s=z+20|0;n=z
+16|0;t=z+12|0;y=z+8|0;o=z+4|0;r=z;c[h>>2]=a;c[u>>2]=b;c[v>>2]=e;c[j>>2]=f;c[k>>
;2]=g;c[r>>2]=64;do if(!(c[(c[h>>2]|0)+108>>2]&4)){if((d[(c[u>>2]|0)+12>>
0]|0)&1|0?(d[(c[v>>2]|0)+12>>0]|0)&1|0:0)if((c[k>>2]|0)==1){c[r>>2]=55;break}else
{c[r>>2]=49;break}if((c[k>>2]|0)==1){c[r>>2]=61;break}else{c[r>>2]=59;break}}while(0);c[
q>>2]=(c[(c[v>>2]|0)+4>>2]|0)-(c[(c[u>>2]|0)+4>>2]|0);c[w>>2]=um(c[h
>>2]|0,c[k>>2]|0,c[q>>2]|0,d[(c[u>>2]|0)+12>>0]|0,d[(c[v>>2]|0)+12
x3e;>0]|0)|0;c[p>>2]=(((c[(c[u>>2]|0)+4>>2]|0)+(c[(c[v>>2]|0)+4>>2]|0)|0)/
2|0)+(c[j>>2]|0);c[x>>2]=(c[p>>2]|0)-((c[w>>2]|0)/2|0);c[l>>2]=(c[x>>
;2]|0)+(c[w>>2]|0);c[m>>2]=(c[x>>2]|0)-(c[x>>2]&-64);c[n>>2]=(c[l>
x3e;2]|0)-(c[l>>2]&-64);c[s>>2]=64-(c[m>>2]|0);c[t>>2]=64-(c[n>>2]|0);c[y
>>2]=0;do if(!((c[m>>2]|0)==0|(c[n>>2]|0)==0)){if((c[w>>2]|0)<=(c[r>>2]|0
)){if((c[n>>2]|0)>=(c[w>>2]|0))break;if((c[s>>2]|0)<=(c[n>>2]|0)){c[y>>
;2]=c[s>>2];break}else{c[y>>2]=0-(c[n>>2]|0);break}}if((c[r>>2]|0)<64){if((c[m>
;>2]|0)>=(c[r>>2]|0))break;if((c[s>>2]|0)>=(c[r>>2]|0))break;if((c[n>>2]|
0)>=(c[r>>2]|0))break;if((c[t>>2]|0)>=(c[r>>2]|0))break}c[o>>2]=(c[w>>
;2]|0)%64|0;if((c[o>>2]|0)<32){if((c[s>>2]|0)<=(c[o>>2]|0))break;if((c[n>>2]|0
)<=(c[o>>2]|0))break}else c[o>>2]=64-(c[r>>2]|0);c[m>>2]=(c[r>>2]|0)-(c[s
>>2]|0);c[s>>2]=(c[s>>2]|0)-(c[o>>2]|0);c[t>>2]=(c[r>>2]|0)-(c[n>
;>2]|0);c[n>>2]=(c[n>>2]|0)-(c[o>>2]|0);if((c[m>>2]|0)<=(c[s>>2]|0))
c[s>>2]=0-(c[m>>2]|0);if((c[n>>2]|0)<=(c[t>>2]|0))c[t>>2]=0-(c[n>>
;2]|0);q=c[s>>2]|0;r=c[t>>2]|0;if((((c[s>>2]|0)<0?0-q|0:q)|0)<=(((c[t>>2]|0)
x3c;0?0-r|0:r)|0)){c[y>>2]=c[s>>2];break}else{c[y>>2]=c[t>>2];break}}while(0);do if(!(c[(
c[h>>2]|0)+108>>2]&4)){if((c[y>>2]|0)>14){c[y>>2]=14;break}if((c[y>>
2]|0)<-14)c[y>>2]=-14}while(0);c[x>>2]=(c[x>>2]|0)+(c[y>>2]|0);h=c[x>>2]|
0;if((c[(c[u>>2]|0)+4>>2]|0)<(c[(c[v>>2]|0)+4>>2]|0)){c[(c[u>>2]|0)+8>
;>2]=h;c[(c[v>>2]|0)+8>>2]=(c[x>>2]|0)+(c[w>>2]|0);y=c[y>>2]|0;i=z;return
y|0}else{c[(c[u>>2]|0)+8>>2]=h+(c[w>>2]|0);c[(c[v>>2]|0)+8>>2]=c[x>>
;2];y=c[y>>2]|0;i=z;return y|0}return 0}function xm(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;c[h>>2]=c[h>>2];c[(c[f>>2]|
0)+8>>2]=(c[(c[g>>2]|0)+8>>2]|0)+((c[(c[f>>2]|0)+4>>2]|0)-(c[(c[g>>2
]|0)+4>>2]|0));i=e;return}function ym(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;r=i;i=i+48|
0;g=r+36|0;j=r+32|0;s=r+28|0;h=r+24|0;m=r+20|0;l=r+16|0;q=r+40|0;p=r+12|0;n=r+8|0;k=r+4|0;o=r;c[g>>2]=d;c[j>>
;2]=f;c[s>>2]=(c[g>>2]|0)+48+((c[j>>2]|0)*28|0);c[h>>2]=c[(c[s>>2]|0)+20>
x3e;2];c[m>>2]=(c[h>>2]|0)+((c[(c[s>>2]|0)+12>>2]|0)*48|0);if((c[j>>2]|0)==0?c
[(c[g>>2]|0)+108>>2]&1|0:0)g=1;else if((c[j>>2]|0)==1)g=(c[(c[g>>2]|0)+108>>
;2]&2|0)!=0;else g=0;a[q>>0]=g&1;c[l>>2]=c[h>>2];while(1){if((c[l>>2]|0)>
x3e;>0>=(c[m>>2]|0)>>>0)break;c[p>>2]=c[(c[l>>2]|0)+40>>2];if(a
[q>>0]|0)do{c[n>>2]=c[(c[p>>2]|0)+40>>2];while(1){g=c[(c[l>>2]|0)+8>>
;2]|0;f=c[n>>2]|0;if(!(c[j>>2]|0)){c[f+16>>2]=g;s=c[n>>2]|0;b[s>>1]=e[s>
x3e;1]|64}else{c[f+20>>2]=g;s=c[n>>2]|0;b[s>>1]=e[s>>1]|128}if((c[n>>2]|0)==(c
[(c[p>>2]|0)+44>>2]|0))break;c[n>>2]=c[(c[n>>2]|0)+32>>2]}c[p>>2]=c[(
c[p>>2]|0)+16>>2]}while((c[p>>2]|0)!=(c[(c[l>>2]|0)+40>>2]|0));else{c[k>
x3e;2]=(c[(c[l>>2]|0)+8>>2]|0)-(c[(c[l>>2]|0)+4>>2]|0);do{c[o>>2]=c[(c[p>
x3e;2]|0)+40>>2];while(1){g=c[k>>2]|0;f=c[o>>2]|0;if(!(c[j>>2]|0)){s=f+16|0;c[s>>
;2]=(c[s>>2]|0)+g;s=c[o>>2]|0;b[s>>1]=e[s>>1]|64}else{s=f+20|0;c[s>>2]=(c[s>
;>2]|0)+g;s=c[o>>2]|0;b[s>>1]=e[s>>1]|128}if((c[o>>2]|0)==(c[(c[p>>2]|0)+
44>>2]|0))break;c[o>>2]=c[(c[o>>2]|0)+32>>2]}c[p>>2]=c[(c[p>>2]|0)+16
>>2]}while((c[p>>2]|0)!=(c[(c[l>>2]|0)+40>>2]|0))}c[l>>2]=(c[l>>2]|0
)+48}i=r;return}function zm(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=
jm(c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Am(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;km(c[f>>2]|0,c[e>>2]|0);i=d;return}function Bm(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=mm(c[f>>2]|0,c[e>>2]|0)|0;i=
d;return b|0}function Cm(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
x3e;>2]=b;c[f>>2]=d;b=nm(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return b|0}function Dm
(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;l=g+16|0;k=g+12|0;m=g+8|0;j=g+4|0;h=g;c[l>
;>2]=a;c[k>>2]=b;c[m>>2]=d;c[j>>2]=e;c[h>>2]=f;c[m>>2]=c[m>>2];
b=Em((c[l>>2]|0)+20|0,c[(c[k>>2]|0)+4>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=g;return
b|0}function Em(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;q=i;i=i+64|0;j=q+60|0;k=q+56|0;
f=q+52|0;l=q+48|0;m=q+44|0;n=q+40|0;h=q+36|0;p=q+8|0;o=q+4|0;g=q;c[k>>2]=a;c[f>>2]=b;c[l>>2]=d;c[m
>>2]=e;c[h>>2]=c[(c[f>>2]|0)+88>>2];if(!(c[h>>2]|0)){c[j>>2]=6;p=c[j
>>2]|0;i=q;return p|0};c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[p+16
x3e;>2]=0;c[p+20>>2]=0;c[p+24>>2]=0;c[p>>2]=c[f>>2];c[p+4>>2]=c[(c[h>
;>2]|0)+12+4>>2];c[p+12>>2]=0;c[p+8>>2]=c[(c[h>>2]|0)+12+8>>2];c[p+16>
;>2]=0;c[p+20>>2]=(c[m>>2]|0)>>>16&15;c[p+24>>2]=0;c[n>>2]=Fm(c
[k>>2]|0,c[f>>2]|0)|0;do if((c[n>>2]|0)==0?(c[g>>2]=0,c[n>>2]=Jm(c[(c[k>
x3e;2]|0)+4>>2]|0,c[l>>2]|0,c[g>>2]|0,o)|0,(c[n>>2]|0)==0):0){c[(c[k>>2]|0)+136
>>2]=c[o>>2];f=c[o>>2]|0;if(c[(c[c[o>>2]>>2]|0)+16>>2]|0)Ra[c[(c[f
x3e;>2]|0)+16>>2]&7](c[o>>2]|0,p);else{h=f+4|0;c[h>>2]=c[p>>2];c[h+4>>
;2]=c[p+4>>2];c[h+8>>2]=c[p+8>>2];c[h+12>>2]=c[p+12>>2];c[h+16>>2]=c
[p+16>>2];c[h+20>>2]=c[p+20>>2];c[h+24>>2]=c[p+24>>2]}c[m>>2]=c[m>
;>2]|2049;c[m>>2]=c[m>>2]&-5;if(c[(c[c[o>>2]>>2]|0)+24>>2]|0?(c[n>
;>2]=Ya[c[(c[c[o>>2]>>2]|0)+24>>2]&127]((c[k>>2]|0)+12|0,c[o>>2]|0)|
0,c[n>>2]|0):0)break;c[n>>2]=Km(c[k>>2]|0,p,c[l>>2]|0,c[m>>2]|0,0)|0}while(0);
c[j>>2]=c[n>>2];p=c[j>>2]|0;i=q;return p|0}function Fm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=
i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;c[c[d>>2]>>2]=c[e>
;>2];c[(c[d>>2]|0)+4>>2]=c[(c[e>>2]|0)+116>>2];dc(c[(c[d>>2]|0)+8>
x3e;2]|0);if(c[(c[d>>2]|0)+4>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[f>>2]=Gm(c[e>>
;2]|0,(c[d>>2]|0)+4|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[(c[e>>2]|0)+116>
;>2]=c[(c[d>>2]|0)+4>>2];c[(c[e>>2]|0)+116+4>>2]=35;a=c[f>>2]|0;i=g;return
a|0}function Gm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;e=h+12|0;f=h+8|0;j=h+4|0;g=h;c[d>>
2]=a;c[e>>2]=b;c[g>>2]=0;c[j>>2]=c[(c[d>>2]|0)+100>>2];c[g>>2]=bc(c[
j>>2]|0,28+(c[(c[d>>2]|0)+16>>2]|0)|0,f)|0;if((c[f>>2]|0)==0?(c[c[g>>2]>
x3e;2]=c[d>>2],c[(c[g>>2]|0)+4>>2]=c[(c[d>>2]|0)+16>>2],c[(c[g>>2]|0
)+8>>2]=(c[g>>2]|0)+28,c[f>>2]=Hm(c[g>>2]|0)|0,c[f>>2]|0):0){Im(c[g>>
;2]|0);c[g>>2]=0}c[c[e>>2]>>2]=c[g>>2];i=h;return c[f>>2]|0}function Hm(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;s=i;i=i+64|0;e=s+48|0;h=s+44|0;j=s+40|0;p=s+36|0;m=s+32|0;r=s+28|
0;n=s+24|0;g=s+20|0;q=s+16|0;f=s+12|0;k=s+8|0;l=s+4|0;o=s;c[e>>2]=b;c[h>>2]=0;c[j>>2]=c[c[e>
x3e;2]>>2];c[p>>2]=c[(c[j>>2]|0)+92>>2];c[m>>2]=c[(c[e>>2]|0)+8>
;>2];Ns(c[(c[e>>2]|0)+8>>2]|0,127,c[(c[e>>2]|0)+4>>2]|0)|0;c[h>>2]=Id(c[j
>>2]|0,1970170211)|0;a:do if(c[h>>2]|0)c[h>>2]=0;else{c[r>>2]=0;while(1){if(!(c[3900+(c[
r>>2]<<2)>>2]|0))break;c[g>>2]=c[3900+(c[r>>2]<<2)>>2];b:do
if(c[(c[g>>2]|0)+4>>2]|0){c[q>>2]=c[(c[g>>2]|0)+4>>2];while(1){if(!(c[c[q>
;>2]>>2]|0))break b;c[f>>2]=c[c[q>>2]>>2];c[k>>2]=Dc(c[j>>2]|0,
c[f>>2]|0)|0;if((c[k>>2]|0?(c[k>>2]|0)>>>0<(c[(c[e>>2]|0)+4>>
;2]|0)>>>0:0)?(d[(c[m>>2]|0)+(c[k>>2]|0)>>0]|0|0)==127:0)a[(c[m>>2]|0)+(c
[k>>2]|0)>>0]=c[r>>2];while(1){c[f>>2]=Md(c[j>>2]|0,c[f>>2]|0,k)|0;if
(!(c[k>>2]|0))break;if((c[f>>2]|0)>>>0>(c[(c[q>>2]|0)+4>>2]|0)>
x3e;>0)break;if((c[k>>2]|0)>>>0>=(c[(c[e>>2]|0)+4>>2]|0)>>>
;0)continue;if((d[(c[m>>2]|0)+(c[k>>2]|0)>>0]|0|0)!=127)continue;a[(c[m>>2]|0)+(c[k>
;>2]|0)>>0]=c[r>>2]}c[q>>2]=(c[q>>2]|0)+8}}while(0);c[r>>2]=(c[r>>
;2]|0)+1}c[n>>2]=48;while(1){if((c[n>>2]|0)>>>0>57)break a;c[l>>2]=Dc(c[j>
;>2]|0,c[n>>2]|0)|0;if(c[l>>2]|0?(c[l>>2]|0)>>>0<(c[(c[e>>2]|0)+
4>>2]|0)>>>0:0){r=(c[m>>2]|0)+(c[l>>2]|0)|0;a[r>>0]=d[r>>0]|0|128
}c[n>>2]=(c[n>>2]|0)+1}}while(0);c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[e>
x3e;2]|0)+4>>2]|0))break;if(((d[(c[m>>2]|0)+(c[o>>2]|0)>>0]|0)&-129|0)==127){r=(c[m
>>2]|0)+(c[o>>2]|0)|0;a[r>>0]=(d[r>>0]|0)&-128;r=(c[m>>2]|0)+(c[o>
x3e;2]|0)|0;a[r>>0]=d[r>>0]|0|2}c[o>>2]=(c[o>>2]|0)+1}Jd(c[j>>2]|0,c[p>
x3e;2]|0)|0;i=s;return c[h>>2]|0}function Im(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;f=g+4|0;d=
g;c[b>>2]=a;if(!(c[b>>2]|0)){i=g;return}c[e>>2]=c[(c[c[b>>2]>>2]|0)+100>
x3e;2];c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=4)break;if(c[(c[b>>2]|0)+12+(c[f
>>2]<<2)>>2]|0){c[d>>2]=c[3900+(c[f>>2]<<2)>>2];if(c[(c[d
x3e;>2]|0)+20>>2]|0)Va[c[(c[d>>2]|0)+20>>2]&63](c[(c[b>>2]|0)+12+(c[f>>
;2]<<2)>>2]|0);Fb(c[e>>2]|0,c[(c[b>>2]|0)+12+(c[f>>2]<<2)>>
;2]|0);c[(c[b>>2]|0)+12+(c[f>>2]<<2)>>2]=0}c[f>>2]=(c[f>>2]|0)+1}c[(
c[b>>2]|0)+4>>2]=0;c[(c[b>>2]|0)+8>>2]=0;c[c[b>>2]>>2]=0;Fb(c[e>
;>2]|0,c[b>>2]|0);c[b>>2]=0;i=g;return}function Jm(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;q=i;i=i+48|0;g=q+40|0;h=q+36|0;r=q+32|0;j=q+28|0;o=q+24|0;m=q+20|0;k=q+16|0;p=q+12|0;l=q+4|0;n=q;c[
g>>2]=a;c[h>>2]=b;c[r>>2]=e;c[j>>2]=f;c[o>>2]=0;c[p>>2]=c[r>>
;2]&15;c[q+8>>2]=5;c[l>>2]=0;if((c[h>>2]|0)>>>0>=(c[(c[g>>2]|0)+
4>>2]|0)>>>0){c[l>>2]=6;p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l
>>2]|0;i=q;return r|0}c[m>>2]=c[p>>2];if(!((c[m>>2]|0)!=0?((c[m>>2]|0)+1|0)>
;>>0<5:0))c[m>>2]=(d[(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]|0)>>0]|0)
x26;127;c[k>>2]=c[3900+(c[m>>2]<<2)>>2];if(!(c[p>>2]|0))c[p>>2]=c[c[
k>>2]>>2];c[o>>2]=c[(c[g>>2]|0)+12+(c[c[k>>2]>>2]<<2)>
;>2];if(c[o>>2]|0){p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l>>2]|0;i=q;return
r|0}c[n>>2]=c[(c[c[g>>2]>>2]|0)+100>>2];c[o>>2]=bc(c[n>>2]|0,c[(c[k
>>2]|0)+8>>2]|0,l)|0;if(c[l>>2]|0){p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p
;r=c[l>>2]|0;i=q;return r|0}c[c[o>>2]>>2]=c[k>>2];if(c[(c[k>>2]|0)+12>>
;2]|0?(c[l>>2]=Ya[c[(c[k>>2]|0)+12>>2]&127](c[o>>2]|0,c[c[g>>2]>>
;2]|0)|0,c[l>>2]|0):0){if(c[(c[k>>2]|0)+20>>2]|0)Va[c[(c[k>>2]|0)+20>>2]&
63](c[o>>2]|0);Fb(c[n>>2]|0,c[o>>2]|0);c[o>>2]=0;p=c[o>>2]|0;r=c[j>>
2]|0;c[r>>2]=p;r=c[l>>2]|0;i=q;return r|0}c[(c[g>>2]|0)+12+(c[c[k>>2]>>2]<
;<2)>>2]=c[o>>2];p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l>>2]|0;
i=q;return r|0}function Km(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;da=i;i=i+240|0;S=da+236|0;T=da+232|0;U=da+228|0;y=da+224|0;V=da+220|0;X=da+216|0;ea=da+212|0;Y=da+208|0;$=da+204|0;
Z=da+200|0;aa=da+196|0;_=da+192|0;l=da+176|0;r=da+168|0;q=da+164|0;p=da+160|0;u=da+156|0;x=da+152|0;m=da+148|0;n=da+144|0;o=da+140
|0;s=da+136|0;v=da+132|0;t=da+128|0;w=da+124|0;E=da+120|0;J=da+116|0;G=da+112|0;O=da+108|0;P=da+104|0;M=da+96|0;N=da+88|0;Q=da+84
|0;R=da+80|0;I=da+76|0;H=da+72|0;F=da+68|0;z=da+64|0;D=da+60|0;B=da+56|0;C=da+52|0;K=da+48|0;L=da+44|0;A=da+24|0;W=da+8|0;ba=da;
c[S>>2]=f;c[T>>2]=g;c[U>>2]=h;c[y>>2]=j;c[V>>2]=k;c[ea>>2]=c[c[S>
;>2]>>2];c[Y>>2]=c[(c[S>>2]|0)+8>>2];c[$>>2]=c[(c[S>>2]|0)+136
x3e;>2];c[Z>>2]=(c[S>>2]|0)+12;c[aa>>2]=c[(c[ea>>2]|0)+84>>2];c[_>
x3e;2]=c[(c[aa>>2]|0)+156>>2];c[X>>2]=Cb(c[ea>>2]|0,c[U>>2]|0,c[y>>2
]|0)|0;if(c[X>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}a[(c[S>>2]|0)+140>>0]=a[(c[_>>
;2]|0)+8>>0]|0;if(a[(c[S>>2]|0)+140>>0]|0){ea=(c[S>>2]|0)+144|0;g=(c[_>>2]|0)+
12|0;c[ea>>2]=c[g>>2];c[ea+4>>2]=c[g+4>>2];c[ea+8>>2]=c[g+8>>2];c[ea
+12>>2]=c[g+12>>2];ea=(c[S>>2]|0)+160|0;g=(c[_>>2]|0)+28|0;c[ea>>2]=c[g>
x3e;2];c[ea+4>>2]=c[g+4>>2];ea=(c[S>>2]|0)+144|0;c[l>>2]=c[ea>>2];c[l+4>
x3e;2]=c[ea+4>>2];c[l+8>>2]=c[ea+8>>2];c[l+12>>2]=c[ea+12>>2];Wb(l)|0;Lb((c[S
x3e;>2]|0)+160|0,l)}c[(c[aa>>2]|0)+56>>2]=c[(c[aa>>2]|0)+24+16>>2];c[(c[aa>>
;2]|0)+60>>2]=c[(c[aa>>2]|0)+24+28>>2];k=c[(c[aa>>2]|0)+72>>2]|0;a:do if((k|0)
x3e;=1869968492){switch(k|0){case 1869968492:break;default:{ca=49;break a}}if(a[(c[S>>2]|0)+140>>0]|0)Nb((c[
aa>>2]|0)+108|0,c[(c[S>>2]|0)+160>>2]|0,c[(c[S>>2]|0)+160+4>>2]|0);if(((b[(c[aa
>>2]|0)+108+2>>1]|0)+4|0)!=0?((b[(c[Y>>2]|0)+20+2>>1]|0)+(b[(c[Y>>2]|0)+56+2
x3e;>1]|0)+((b[(c[aa>>2]|0)+108+2>>1]|0)+4)|0)>>>0>(c[(c[Y>>2]|0)+4>
x3e;2]|0)>>>0:0)ca=11;else if((b[(c[aa>>2]|0)+108>>1]|0)!=0?((b[(c[Y>>2]|0)+20>
;>1]|0)+(b[(c[Y>>2]|0)+56>>1]|0)+(b[(c[aa>>2]|0)+108>>1]|0)|0)>>>0
x3e;(c[(c[Y>>2]|0)+8>>2]|0)>>>0:0)ca=11;else k=0;if((ca|0)==11)k=kc(c[Y>>2]|0,(b[(c
[aa>>2]|0)+108+2>>1]|0)+4|0,b[(c[aa>>2]|0)+108>>1]|0)|0;c[X>>2]=k;if(c[X>
x3e;2]|0){ea=c[X>>2]|0;i=da;return ea|0}Ss(c[(c[Y>>2]|0)+56+4>>2]|0,c[(c[aa>>2]|0)+108+4
>>2]|0,b[(c[aa>>2]|0)+108+2>>1]<<3|0)|0;Ss(c[(c[Y>>2]|0)+56+12>>2]|0
,c[(c[aa>>2]|0)+108+12>>2]|0,b[(c[aa>>2]|0)+108>>1]<<1|0)|0;Ss(c[(c[Y>>
;2]|0)+56+8>>2]|0,c[(c[aa>>2]|0)+108+8>>2]|0,b[(c[aa>>2]|0)+108+2>>1]|0)|0;b[(
c[Y>>2]|0)+56+2>>1]=b[(c[aa>>2]|0)+108+2>>1]|0;b[(c[Y>>2]|0)+56>>1]=
b[(c[aa>>2]|0)+108>>1]|0;c[(c[S>>2]|0)+168>>2]=c[(c[Z>>2]|0)+8>>2];c
[(c[S>>2]|0)+168+4>>2]=c[(c[Z>>2]|0)+16>>2];ea=Mb(c[(c[aa>>2]|0)+24+16>
x3e;2]|0,c[(c[Z>>2]|0)+4>>2]|0)|0;c[(c[S>>2]|0)+176>>2]=ea+(c[(c[Z>>2]|0)+8>
;>2]|0);c[(c[S>>2]|0)+176+4>>2]=c[(c[Z>>2]|0)+16>>2];if(b[(c[aa>>2]|0)+108
+2>>1]|0){if(c[(c[c[$>>2]>>2]|0)+28>>2]|0)Oa[c[(c[c[$>>2]>>2]|0)+28
x3e;>2]&63](c[Z>>2]|0,(c[Y>>2]|0)+56|0,c[$>>2]|0)|0;do if((c[(c[T>>2]|0)+20>
;>2]|0)!=1){c[m>>2]=(c[Z>>2]|0)+48;c[n>>2]=c[(c[m>>2]|0)+20>>2];c[o>
x3e;2]=(c[n>>2]|0)+((c[(c[m>>2]|0)+12>>2]|0)*48|0)+-48;if((c[(c[m>>2]|0)+12>>2
]|0)>1?(c[(c[Z>>2]|0)+104>>2]&4|0)==0:0){c[r>>2]=(c[(c[S>>2]|0)+176>>
;2]|0)-(c[(c[o>>2]|0)+4>>2]|0);c[q>>2]=c[(c[n>>2]|0)+4>>2];c[p>>2]=c
[(c[n>>2]|0)+8>>2];c[u>>2]=(c[p>>2]|0)-(c[q>>2]|0);c[x>>2]=(c[(c[o
x3e;>2]|0)+8>>2]|0)+(c[r>>2]|0);if((c[q>>2]|0)<24)c[u>>2]=(c[u>>2]|0
)-8;if((c[r>>2]|0)<24)c[x>>2]=(c[x>>2]|0)+8;c[(c[S>>2]|0)+168>>2]=(c[u>
;>2]|0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[x>>2]|0)+32&-64;if((c[q>>2]|0)>
;0?(c[(c[S>>2]|0)+168>>2]|0)>=(c[p>>2]|0):0){ea=(c[S>>2]|0)+168|0;c[ea>>2
]=(c[ea>>2]|0)-64}if((c[r>>2]|0)>0?(c[(c[S>>2]|0)+176>>2]|0)<=(c[(c[o>>
;2]|0)+8>>2]|0):0){ea=(c[S>>2]|0)+176|0;c[ea>>2]=(c[ea>>2]|0)+64}c[(c[aa>>2]|0
)+144>>2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[u>>2]|0);c[(c[aa>>2]|0)+148>>
2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[x>>2]|0);break}c[s>>2]=c[(c[S>>2]|0)+168>
x3e;2];c[v>>2]=c[(c[S>>2]|0)+176>>2];c[(c[S>>2]|0)+168>>2]=(c[s>>2]|
0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[v>>2]|0)+32&-64;c[(c[aa>>2]|0)+144>>
;2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[s>>2]|0);c[(c[aa>>2]|0)+148>>2]=(c[(c[S>
x3e;2]|0)+176>>2]|0)-(c[v>>2]|0)}else{c[t>>2]=c[(c[S>>2]|0)+168>>2];c[w>
x3e;2]=c[(c[S>>2]|0)+176>>2];c[(c[S>>2]|0)+168>>2]=(c[t>>2]|0)+(c[(c[Z>
x3e;2]|0)+116>>2]|0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[w>>2]|0)+(c[(c[Z>>2]|
0)+120>>2]|0)+32&-64;c[(c[aa>>2]|0)+144>>2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[
t>>2]|0);c[(c[aa>>2]|0)+148>>2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[w>>2]|0
)}while(0);oc(c[Y>>2]|0)}}else{switch(k|0){case 1668246896:break;default:{ca=49;break a}}c[J>>2]=c[(c[aa>
;>2]|0)+128>>2];c[O>>2]=b[(c[Y>>2]|0)+20+2>>1];c[X>>2]=lc(c[Y>>
2]|0,c[J>>2]|0)|0;if(c[X>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}Ss(c[(c[Y>>2]|0)+56+32>
;>2]|0,c[(c[aa>>2]|0)+132>>2]|0,c[J>>2]<<5|0)|0;c[(c[Y>>2]|0)+56+28>
x3e;2]=c[J>>2];c[G>>2]=c[(c[Y>>2]|0)+20+28>>2];c[E>>2]=0;while(1){if((c[E>
;>2]|0)>>>0>=(c[J>>2]|0)>>>0)break a;c[P>>2]=(c[(c[Y>>2]|0
)+20+32>>2]|0)+(c[G>>2]<<5)+(c[E>>2]<<5);ea=(c[S>>2]|0)+168|0;c[M>
;>2]=c[ea>>2];c[M+4>>2]=c[ea+4>>2];ea=(c[S>>2]|0)+176|0;c[N>>2]=c[ea>
;>2];c[N+4>>2]=c[ea+4>>2];c[F>>2]=b[(c[Y>>2]|0)+20+2>>1];c[X>>2
]=Km(c[S>>2]|0,c[T>>2]|0,c[c[P>>2]>>2]|0,c[y>>2]|0,(c[V>>2]|0)+1|0)|
0;if(c[X>>2]|0){ca=63;break}c[P>>2]=(c[(c[Y>>2]|0)+20+32>>2]|0)+(c[G>>2]<
x3c;5)+(c[E>>2]<<5);k=(c[S>>2]|0)+168|0;if(e[(c[P>>2]|0)+4>>1]&512|0){c[M
>>2]=c[k>>2];c[M+4>>2]=c[k+4>>2];ea=(c[S>>2]|0)+176|0;c[N>>2]=c[ea
x3e;>2];c[N+4>>2]=c[ea+4>>2]}else{c[k>>2]=c[M>>2];c[k+4>>2]=c[M+4>
x3e;2];ea=(c[S>>2]|0)+176|0;c[ea>>2]=c[N>>2];c[ea+4>>2]=c[N+4>>2]}c[I>>
;2]=b[(c[Y>>2]|0)+20+2>>1];c[H>>2]=(c[I>>2]|0)-(c[F>>2]|0);b:do if(e[(c[P>
;>2]|0)+4>>1]&200|0){c[z>>2]=(c[(c[Y>>2]|0)+20+4>>2]|0)+(c[F>>2]<
;<3);c[D>>2]=(c[z>>2]|0)+(c[H>>2]<<3);while(1){if((c[z>>2]|0)>>
x3e;0>=(c[D>>2]|0)>>>0)break b;Lb(c[z>>2]|0,(c[P>>2]|0)+16|0);c[z>>2
]=(c[z>>2]|0)+8}}while(0);k=c[(c[P>>2]|0)+8>>2]|0;if(e[(c[P>>2]|0)+4>>1]&
2|0){ea=Mb(k,c[(c[Z>>2]|0)+4>>2]|0)|0;c[Q>>2]=ea+(c[(c[Z>>2]|0)+8>>2]|0);ea=Mb
(c[(c[P>>2]|0)+12>>2]|0,c[(c[Z>>2]|0)+12>>2]|0)|0;c[R>>2]=ea+(c[(c[Z>>
;2]|0)+16>>2]|0);c[Q>>2]=(c[Q>>2]|0)+32&-64;c[R>>2]=(c[R>>2]|0)+32&-
64}else{c[B>>2]=k;c[C>>2]=c[(c[P>>2]|0)+12>>2];if(((c[O>>2]|0)+(c[B>>
;2]|0)|0)>>>0>=(c[F>>2]|0)>>>0)break;if((c[C>>2]|0)>>>0>
;=(c[H>>2]|0)>>>0)break;c[C>>2]=(c[C>>2]|0)+(c[F>>2]|0);c[K>>2]=(
c[(c[Y>>2]|0)+20+4>>2]|0)+(c[O>>2]<<3)+(c[B>>2]<<3);c[L>>2
]=(c[(c[Y>>2]|0)+20+4>>2]|0)+(c[O>>2]<<3)+(c[C>>2]<<3);c[Q>>
;2]=(c[c[K>>2]>>2]|0)-(c[c[L>>2]>>2]|0);c[R>>2]=(c[(c[K>>2]|0)+4>
;>2]|0)-(c[(c[L>>2]|0)+4>>2]|0)}ea=(c[Y>>2]|0)+20|0;c[A>>2]=c[ea>>2];c[A+
4>>2]=c[ea+4>>2];c[A+8>>2]=c[ea+8>>2];c[A+12>>2]=c[ea+12>>2];c[A+16
x3e;>2]=c[ea+16>>2];ea=A+4|0;c[ea>>2]=(c[ea>>2]|0)+(c[F>>2]<<3);b[A+2>
;>1]=c[H>>2];Nb(A,c[Q>>2]|0,c[R>>2]|0);c[E>>2]=(c[E>>2]|0)+1}if((ca|0)==63
){ea=c[X>>2]|0;i=da;return ea|0}c[X>>2]=21;ea=c[X>>2]|0;i=da;return ea|0}while(0);if((ca|0)==49)c[
X>>2]=7;if(c[V>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}c[ba>>2]=(c[(c[aa>>2]|0)+24
+20>>2]|0)-(c[(c[aa>>2]|0)+24+8>>2]|0);c[ba+4>>2]=(c[(c[aa>>2]|0)+24+24>
x3e;2]|0)-(c[(c[aa>>2]|0)+24+12>>2]|0);c[ba>>2]=Mb(c[ba>>2]|0,c[(c[$>>2]|0)+4+
4>>2]|0)|0;c[ba+4>>2]=Mb(c[ba+4>>2]|0,c[(c[$>>2]|0)+4+8>>2]|0)|0;if(a[(c[S>
;>2]|0)+140>>0]|0){Kb((c[Y>>2]|0)+20|0,(c[S>>2]|0)+144|0);Lb(ba,(c[S>>2]|0)+144|0)}
if(c[(c[S>>2]|0)+168>>2]|0)Nb((c[Y>>2]|0)+20|0,0-(c[(c[S>>2]|0)+168>>2]|0)|0,0
);_d((c[Y>>2]|0)+20|0,W);c[W>>2]=c[W>>2]&-64;c[W+4>>2]=c[W+4>>2]&-64
;c[W+8>>2]=(c[W+8>>2]|0)+63&-64;c[W+12>>2]=(c[W+12>>2]|0)+63&-64;c[(c[aa>
x3e;2]|0)+24>>2]=(c[W+8>>2]|0)-(c[W>>2]|0);c[(c[aa>>2]|0)+24+4>>2]=(c[W+12>
;>2]|0)-(c[W+4>>2]|0);c[(c[aa>>2]|0)+24+8>>2]=c[W>>2];c[(c[aa>>2]|0)+24+12
>>2]=c[W+12>>2];c[(c[aa>>2]|0)+24+20>>2]=(c[W>>2]|0)+(c[ba>>2]|0)&
;-64;c[(c[aa>>2]|0)+24+24>>2]=(c[W+12>>2]|0)+(c[ba+4>>2]|0)&-64;do if(!(c[(c[(c[aa
x3e;>2]|0)+4>>2]|0)+8>>2]&4|0)){if((Lm(c[(c[S>>2]|0)+4>>2]|0,c[U>>2]|
0)|0)&255|0?d[(c[$>>2]|0)+32>>0]|0:0){ca=58;break}if(c[(c[aa>>2]|0)+24+16>>2]|0)c[(
c[aa>>2]|0)+24+16>>2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[(c[S>>2]|0)+168>>
2]|0)}else ca=58;while(0);if((ca|0)==58){ea=Mb(c[(c[aa>>2]|0)+24+16>>2]|0,c[(c[$>>2]|0)+4+4>
x3e;2]|0)|0;c[(c[aa>>2]|0)+24+16>>2]=ea;c[(c[aa>>2]|0)+144>>2]=0;c[(c[aa>>2]|0
)+148>>2]=0}ea=Mb(c[(c[aa>>2]|0)+24+28>>2]|0,c[(c[$>>2]|0)+4+8>>2]|0)|0;c[(c[aa
>>2]|0)+24+28>>2]=ea;c[(c[aa>>2]|0)+24+16>>2]=(c[(c[aa>>2]|0)+24+16>>
;2]|0)+32&-64;c[(c[aa>>2]|0)+24+28>>2]=(c[(c[aa>>2]|0)+24+28>>2]|0)+32&-64;dc(
c[c[_>>2]>>2]|0);c[X>>2]=pc(c[c[_>>2]>>2]|0,c[Y>>2]|0)|0;if(c[X>
;>2]|0){ea=c[X>>2]|0;i=da;return ea|0}ea=(c[aa>>2]|0)+108|0;ca=(c[c[_>>2]>>2]|0)+20
|0;c[ea>>2]=c[ca>>2];c[ea+4>>2]=c[ca+4>>2];c[ea+8>>2]=c[ca+8>>2];c[ea
+12>>2]=c[ca+12>>2];c[ea+16>>2]=c[ca+16>>2];c[(c[aa>>2]|0)+72>>2]=1869968492
;ea=c[X>>2]|0;i=da;return ea|0}function Lm(b,e){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[g
x3e;>2]=b;c[h>>2]=e;if((c[h>>2]|0)>>>0<(c[(c[g>>2]|0)+4>>2]|0)
x3e;>>0){a[f>>0]=(d[(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]|0)>>0]|0)&
128;b=a[f>>0]|0;i=j;return b|0}else{a[f>>0]=0;b=a[f>>0]|0;i=j;return b|0}return 0}function Mm(a){a
=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Nm((c[d>>2]|0)+20|0,c[c[(c[d>>2]|0)+4>>2]
x3e;>2]|0)|0;i=b;return a|0}function Nm(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
x3e;>2]=b;Ns(c[e>>2]|0,0,184)|0;Hl((c[e>>2]|0)+12|0,c[f>>2]|0);b=ac(c[f>>2]|0,(c[e
x3e;>2]|0)+8|0)|0;i=d;return b|0}function Om(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Pm((c[d>>2
]|0)+20|0);i=b;return}function Pm(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Ol((c[d>>2]|0)+12|0);c[c[d
>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;fc(c[(c[d>>2]|0)+8>>2]|0);c[(c[d>
;>2]|0)+8>>2]=0;i=b;return}function Qm(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
x3e;>2]|0)+108|0}function Rm(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)+120
|0}function Sm(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)+148|0}function Tm(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]=c[(c[d>>2]|0)+8>
x3e;2];c[e>>2]=(c[d>>2]|0)+20;Um((c[d>>2]|0)+20|0,c[f>>2]|0)|0;Vm((c[d>>2]|0)+
108|0);bn((c[d>>2]|0)+120|0);c[(c[d>>2]|0)+120>>2]=c[e>>2];ao((c[d>>2]|0)+148|
0);c[(c[d>>2]|0)+148>>2]=c[e>>2];i=b;return 0}function Um(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i
+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;a=c[d>>2]|0;b=a+88|0;do{c[a>>2]=0;a=a+4|0}while((a
|0)<(b|0));c[c[d>>2]>>2]=c[e>>2];i=f;return 0}function Vm(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]=45;c[(c[d>>2]|0)+4>>2]=24;c[(c[d>>2]|0)+8
>>2]=36;i=b;return}function Wm(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;t=i;i=i+48
|0;h=t+40|0;j=t+36|0;k=t+32|0;p=t+28|0;o=t+24|0;l=t+20|0;q=t+16|0;m=t+12|0;r=t+8|0;n=t+4|0;s=t;c[h>>2]=a;c[j>>
;2]=f;c[k>>2]=g;c[p>>2]=0;c[p>>2]=bc(c[h>>2]|0,2496,o)|0;if(c[o>>2]|0){r=c[p
x3e;>2]|0;s=c[k>>2]|0;c[s>>2]=r;s=c[o>>2]|0;i=t;return s|0}c[c[p>>2]>>2]=
c[h>>2];c[m>>2]=(c[p>>2]|0)+4+204;c[r>>2]=(c[m>>2]|0)+4;c[c[r>>2]>
;>2]=e[(c[j>>2]|0)+120>>1];c[r>>2]=(c[r>>2]|0)+12;c[q>>2]=(c[j>>
;2]|0)+128;c[l>>2]=d[(c[j>>2]|0)+124>>0];while(1){if((c[l>>2]|0)>>>0<
;=0)break;c[c[r>>2]>>2]=b[c[q>>2]>>1];c[r>>2]=(c[r>>2]|0)+12;c[q>
;>2]=(c[q>>2]|0)+2;c[l>>2]=(c[l>>2]|0)+-1}c[c[m>>2]>>2]=(d[(c[j>>
;2]|0)+124>>0]|0)+1;c[n>>2]=(c[p>>2]|0)+4;c[s>>2]=(c[n>>2]|0)+4;c[c[s>>
;2]>>2]=e[(c[j>>2]|0)+122>>1];c[s>>2]=(c[s>>2]|0)+12;c[q>>2]=(c[j>
;>2]|0)+154;c[l>>2]=d[(c[j>>2]|0)+125>>0];while(1){if((c[l>>2]|0)>>>
0<=0)break;c[c[s>>2]>>2]=b[c[q>>2]>>1];c[s>>2]=(c[s>>2]|0)+12;c
[q>>2]=(c[q>>2]|0)+2;c[l>>2]=(c[l>>2]|0)+-1}c[c[n>>2]>>2]=(d[(c[j>
;>2]|0)+125>>0]|0)+1;Xm((c[p>>2]|0)+412|0,d[(c[j>>2]|0)+8>>0]|0,(c[j>>2]|
0)+12|0,d[(c[j>>2]|0)+9>>0]|0,(c[j>>2]|0)+40|0,c[(c[j>>2]|0)+116>>2]|0,0);Xm((
c[p>>2]|0)+412|0,d[(c[j>>2]|0)+10>>0]|0,(c[j>>2]|0)+60|0,d[(c[j>>2]|0)+11>
;>0]|0,(c[j>>2]|0)+88|0,c[(c[j>>2]|0)+116>>2]|0,1);c[(c[p>>2]|0)+412+2064>>
;2]=c[(c[j>>2]|0)+108>>2];c[(c[p>>2]|0)+412+2068>>2]=c[(c[j>>2]|0)+112>
x3e;2];c[(c[p>>2]|0)+412+2076>>2]=c[(c[j>>2]|0)+116>>2];c[(c[p>>2]|0)+4+196>
;>2]=0;c[(c[p>>2]|0)+4+200>>2]=0;c[(c[p>>2]|0)+4+204+196>>2]=0;c[(c[p>>2]|
0)+4+204+200>>2]=0;r=c[p>>2]|0;s=c[k>>2]|0;c[s>>2]=r;s=c[o>>2]|0;i=t;return s|
0}function Xm(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;C=i;i=i+80|0;j=C+76|0;t=C+72|0;k=C+68|0;l=C+64|0;m=C+60|0;u=C+56|0;D=C+52|0;q=C+48|0;w=C+44|0;n=C
+40|0;x=C+36|0;r=C+32|0;o=C+28|0;s=C+24|0;p=C+20|0;z=C+16|0;A=C+12|0;v=C+8|0;y=C+4|0;B=C;c[j>>2]=a;c[t>>2]=b
;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[u>>2]=g;c[D>>2]=h;d=c[j>>2]|0;if(c[
D>>2]|0){c[q>>2]=d+1032;c[w>>2]=(c[j>>2]|0)+1548}else{c[q>>2]=d;c[w>>
;2]=(c[j>>2]|0)+516}c[c[q>>2]>>2]=0;c[c[w>>2]>>2]=0;Ym(c[j>>2]|0,0,c
[t>>2]|0,c[k>>2]|0,c[q>>2]|0,c[w>>2]|0);Ym(c[j>>2]|0,1,c[l>>2]|0,c[m
>>2]|0,c[q>>2]|0,c[w>>2]|0);c[n>>2]=c[c[q>>2]>>2];c[x>>2]=
c[c[w>>2]>>2];a:do if((c[n>>2]|0)>0){c[r>>2]=(c[q>>2]|0)+4;c[t>>
;2]=c[n>>2];while(1){if((c[t>>2]|0)>>>0<=0)break a;if((c[t>>2]|0)>>
x3e;0>1?(c[o>>2]=(c[(c[r>>2]|0)+32>>2]|0)-(c[c[r>>2]>>2]|0),(c[(c[r>
x3e;2]|0)+4>>2]|0)>(c[o>>2]|0)):0)c[(c[r>>2]|0)+4>>2]=c[o>>2];c[(c[r>
;>2]|0)+12>>2]=c[c[r>>2]>>2];c[(c[r>>2]|0)+8>>2]=(c[(c[r>>2]|0)+
4>>2]|0)+(c[c[r>>2]>>2]|0);c[t>>2]=(c[t>>2]|0)+-1;c[r>>2]=(c[r>
x3e;2]|0)+32}}while(0);b:do if((c[x>>2]|0)>0){c[s>>2]=(c[w>>2]|0)+4;c[t>>2]=c[x>
;>2];while(1){if((c[t>>2]|0)>>>0<=0)break b;if((c[t>>2]|0)>>>0>
1?(c[p>>2]=(c[c[s>>2]>>2]|0)-(c[(c[s>>2]|0)+32>>2]|0),(c[(c[s>>2]|0)+
4>>2]|0)<(c[p>>2]|0)):0)c[(c[s>>2]|0)+4>>2]=c[p>>2];c[(c[s>>2]|
0)+8>>2]=c[c[s>>2]>>2];c[(c[s>>2]|0)+12>>2]=(c[(c[s>>2]|0)+4>
x3e;2]|0)+(c[c[s>>2]>>2]|0);c[t>>2]=(c[t>>2]|0)+-1;c[s>>2]=(c[s>>2]|
0)+32}}while(0);c[B>>2]=(c[q>>2]|0)+4;c[t>>2]=c[n>>2];c[z>>2]=1;while(1){if((c
[z>>2]|0)<0)break;if((c[t>>2]|0)>>>0>0){D=(c[B>>2]|0)+12|0;c[D>>
;2]=(c[D>>2]|0)-(c[u>>2]|0);c[A>>2]=c[(c[B>>2]|0)+8>>2];c[t>>2]=(c[t
>>2]|0)+-1;while(1){if((c[t>>2]|0)>>>0<=0)break;c[v>>2]=c[(c[B>>2]|0
)+32+12>>2];c[y>>2]=(c[v>>2]|0)-(c[A>>2]|0);d=c[A>>2]|0;if((c[y>>2]|
0)<(c[u>>2]<<1|0)){D=d+((c[y>>2]|0)/2|0)|0;c[(c[B>>2]|0)+32+12>>2]=D;c[(c
[B>>2]|0)+8>>2]=D}else{c[(c[B>>2]|0)+8>>2]=d+(c[u>>2]|0);c[(c[B>>2]|
0)+32+12>>2]=(c[v>>2]|0)-(c[u>>2]|0)}c[B>>2]=(c[B>>2]|0)+32;c[A>>2]=
c[(c[B>>2]|0)+8>>2];c[t>>2]=(c[t>>2]|0)+-1}c[(c[B>>2]|0)+8>>2]=(c[A
x3e;>2]|0)+(c[u>>2]|0)}c[B>>2]=(c[w>>2]|0)+4;c[t>>2]=c[x>>2];c[z>>
;2]=(c[z>>2]|0)+-1}i=C;return}function Ym(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;A=i;i=i+64|0;B=A+48|0;l=A+54|0;m=A+44|0;n=A+40|0;o=A+36|0;p=A+32|0;s=A+28|0;r=A+24|
0;v=A+53|0;w=A+20|0;t=A+16|0;q=A+12|0;z=A+8|0;y=A+4|0;x=A+52|0;u=A;c[B>>2]=e;a[l>>0]=f;c[m>>2]=g;c
[n>>2]=h;c[o>>2]=j;c[p>>2]=k;c[s>>2]=c[c[o>>2]>>2];c[r>>2]=
c[c[p>>2]>>2];a[v>>0]=1;c[B>>2]=c[B>>2];while(1){if((c[m>>2]|0)>
;>>0<=1)break;a[x>>0]=0;if(!(d[v>>0]|0)?!(d[l>>0]|0):0){c[w>>2]=b[c[n>
;>2]>>1];c[t>>2]=(b[(c[n>>2]|0)+2>>1]|0)-(c[w>>2]|0);c[z>>2]=(c
[o>>2]|0)+4;c[q>>2]=c[s>>2];a[x>>0]=1}else{c[w>>2]=b[(c[n>>2]|0)+2
x3e;>1];c[t>>2]=(b[c[n>>2]>>1]|0)-(c[w>>2]|0);c[z>>2]=(c[p>>2]|
0)+4;c[q>>2]=c[r>>2];a[v>>0]=0}c[y>>2]=c[z>>2];while(1){if((c[q>>2]|
0)>>>0<=0){k=17;break}if((c[w>>2]|0)<(c[c[y>>2]>>2]|0)){k=17;break}if((c[
w>>2]|0)==(c[c[y>>2]>>2]|0)){k=11;break}c[q>>2]=(c[q>>2]|0)+-1;c[y>>
2]=(c[y>>2]|0)+32}do if((k|0)==11){c[u>>2]=c[(c[y>>2]|0)+4>>2];k=c[t>>2]|0;f=c
[u>>2]|0;if((c[t>>2]|0)<0){if((k|0)>=(f|0))break;c[(c[y>>2]|0)+4>>2]=c[t>
x3e;2];break}else{if((k|0)<=(f|0))break;c[(c[y>>2]|0)+4>>2]=c[t>>2];break}}else if((k|0)==17){
while(1){if((c[q>>2]|0)>>>0<=0)break;k=(c[y>>2]|0)+(c[q>>2]<<5)|0;B=(
c[y>>2]|0)+((c[q>>2]|0)-1<<5)|0;c[k>>2]=c[B>>2];c[k+4>>2]=c[B+4>
;>2];c[k+8>>2]=c[B+8>>2];c[k+12>>2]=c[B+12>>2];c[k+16>>2]=c[B+16>>
;2];c[k+20>>2]=c[B+20>>2];c[k+24>>2]=c[B+24>>2];c[k+28>>2]=c[B+28>>2
];c[q>>2]=(c[q>>2]|0)+-1;k=17}c[c[y>>2]>>2]=c[w>>2];c[(c[y>>2]|0)+4
x3e;>2]=c[t>>2];if(a[x>>0]|0){c[s>>2]=(c[s>>2]|0)+1;break}else{c[r>>2]=(c
[r>>2]|0)+1;break}}while(0);c[n>>2]=(c[n>>2]|0)+4;c[m>>2]=(c[m>>2]|0)-2}c[c[o
x3e;>2]>>2]=c[s>>2];c[c[p>>2]>>2]=c[r>>2];i=A;return}function Zm(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;n=i;i=i+32|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g
>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=(c[g>>
;2]|0)+4;c[m>>2]=(c[g>>2]|0)+4;if(!((c[h>>2]|0)==(c[(c[m>>2]|0)+196>>2]|0)?(c[
k>>2]|0)==(c[(c[m>>2]|0)+200>>2]|0):0)){c[(c[m>>2]|0)+196>>2]=c[h>>2
];c[(c[m>>2]|0)+200>>2]=c[k>>2];_m(c[g>>2]|0,0)}c[m>>2]=(c[g>>2]|0)+
4+204;if((c[j>>2]|0)==(c[(c[m>>2]|0)+196>>2]|0)?(c[l>>2]|0)==(c[(c[m>>2]|0)+200
>>2]|0):0){i=n;return 0}c[(c[m>>2]|0)+196>>2]=c[j>>2];c[(c[m>>2]|0)+200>
x3e;2]=c[l>>2];_m(c[g>>2]|0,1);$m((c[g>>2]|0)+412|0,c[j>>2]|0,c[l>>2]|0);i=n;return
0}function _m(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;k=i;i=i+48|0;o=k+36|0;n=k+32|0;l=k+28|0;m=k+24|0
;d=k+20|0;j=k+16|0;g=k+12|0;f=k+8|0;h=k+4|0;e=k;c[o>>2]=a;c[n>>2]=b;c[l>>2]=(c[o>>2]|0)+
4+((c[n>>2]|0)*204|0);c[m>>2]=c[l>>2];c[d>>2]=c[c[m>>2]>>2];c[j>
;>2]=(c[m>>2]|0)+4;c[g>>2]=c[j>>2];c[f>>2]=c[(c[l>>2]|0)+196>>2
];if((c[d>>2]|0)>>>0<=0){i=k;return}o=Mb(c[c[j>>2]>>2]|0,c[f>>2]|0)|
0;c[(c[j>>2]|0)+4>>2]=o;c[(c[j>>2]|0)+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+
32&-64;c[j>>2]=(c[j>>2]|0)+12;c[d>>2]=(c[d>>2]|0)+-1;while(1){if((c[d>>2]|
0)>>>0<=0)break;c[h>>2]=Mb(c[c[j>>2]>>2]|0,c[f>>2]|0)|0;c[e>>
;2]=(c[h>>2]|0)-(c[(c[g>>2]|0)+4>>2]|0);if((c[e>>2]|0)<0)c[e>>2]=0-(c[e
x3e;>2]|0);if((c[e>>2]|0)<128)c[h>>2]=c[(c[g>>2]|0)+4>>2];c[(c[j>>2]|
0)+4>>2]=c[h>>2];c[(c[j>>2]|0)+8>>2]=(c[h>>2]|0)+32&-64;c[d>>2]=(
c[d>>2]|0)+-1;c[j>>2]=(c[j>>2]|0)+12}i=k;return}function $m(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;w=i;i=i+64|0;l=w+56|0;m=w+52|0;f=w+48|0;g=w+44|0;s=w+40|0;h=w+36|0;j=
w+32|0;k=w+28|0;t=w+24|0;u=w+20|0;o=w+16|0;p=w+12|0;r=w+8|0;q=w+4|0;n=w;c[l>>2]=b;c[m>>2]=d;c[f>>2
]=e;c[h>>2]=0;b=c[m>>2]|0;if((c[m>>2]|0)>=34359738)a[(c[l>>2]|0)+2080>>0]=(
b|0)<((c[(c[l>>2]|0)+2064>>2]<<3|0)/125|0|0);else a[(c[l>>2]|0)+2080>>0]=(
b*125|0)<(c[(c[l>>2]|0)+2064>>2]<<3|0);c[j>>2]=c[(c[l>>2]|0)+2068>
x3e;2];while(1){if((c[j>>2]|0)>0)b=(Mb(c[j>>2]|0,c[m>>2]|0)|0)>32;else b=0;e=c[j>
x3e;2]|0;if(!b)break;c[j>>2]=e+-1}c[(c[l>>2]|0)+2072>>2]=e;c[s>>2]=0;while(1){if((c[s>
;>2]|0)>>>0>=4)break;switch(c[s>>2]|0){case 0:{c[h>>2]=c[l>>2];break}case
1:{c[h>>2]=(c[l>>2]|0)+516;break}case 2:{c[h>>2]=(c[l>>2]|0)+1032;break}default:c[h>
;>2]=(c[l>>2]|0)+1548}c[k>>2]=(c[h>>2]|0)+4;c[g>>2]=c[c[h>>2]>>
2];while(1){if((c[g>>2]|0)>>>0<=0)break;j=Mb(c[(c[k>>2]|0)+8>>2]|0,c[m>
x3e;2]|0)|0;c[(c[k>>2]|0)+28>>2]=j+(c[f>>2]|0);j=Mb(c[(c[k>>2]|0)+12>>2]|0,c[m
>>2]|0)|0;c[(c[k>>2]|0)+24>>2]=j+(c[f>>2]|0);j=Mb(c[c[k>>2]>>2]|0,c[
m>>2]|0)|0;c[(c[k>>2]|0)+16>>2]=j+(c[f>>2]|0);j=Mb(c[(c[k>>2]|0)+4>>
2]|0,c[m>>2]|0)|0;c[(c[k>>2]|0)+20>>2]=j;c[(c[k>>2]|0)+16>>2]=(c[(c[k>>
;2]|0)+16>>2]|0)+32&-64;c[g>>2]=(c[g>>2]|0)+-1;c[k>>2]=(c[k>>2]|0)+32}c[s
>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=2)break;b=
c[l>>2]|0;if(!(c[s>>2]|0)){c[r>>2]=b;c[q>>2]=(c[l>>2]|0)+1032}else{c[r>
x3e;2]=b+516;c[q>>2]=(c[l>>2]|0)+1548}c[t>>2]=(c[r>>2]|0)+4;c[o>>2]=c[c[r>
;>2]>>2];while(1){if((c[o>>2]|0)>>>0<=0)break;c[u>>2]=(c[q>>2]|
0)+4;c[p>>2]=c[c[q>>2]>>2];while(1){if((c[p>>2]|0)>>>0<=0)break;c[n
x3e;>2]=(c[c[t>>2]>>2]|0)-(c[c[u>>2]>>2]|0);if((c[n>>2]|0)<0)c[n>
;>2]=0-(c[n>>2]|0);if((Mb(c[n>>2]|0,c[m>>2]|0)|0)<64){v=32;break}c[p>>2]=(c[p
x3e;>2]|0)+-1;c[u>>2]=(c[u>>2]|0)+32}if((v|0)==32){v=0;c[(c[t>>2]|0)+28>>2]=c[(c[u
x3e;>2]|0)+28>>2];c[(c[t>>2]|0)+24>>2]=c[(c[u>>2]|0)+24>>2];c[(c[t>
x3e;2]|0)+16>>2]=c[(c[u>>2]|0)+16>>2];c[(c[t>>2]|0)+20>>2]=c[(c[u>>2
]|0)+20>>2]}c[o>>2]=(c[o>>2]|0)+-1;c[t>>2]=(c[t>>2]|0)+32}c[s>>2]=(c
[s>>2]|0)+1}i=w;return}function an(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(!(c[b>
;>2]|0)){i=e;return}c[d>>2]=c[c[b>>2]>>2];c[(c[b>>2]|0)+4>>2]=0;c[(c[b>
;>2]|0)+4+204>>2]=0;c[(c[b>>2]|0)+412>>2]=0;c[(c[b>>2]|0)+412+516>>2]=0;c
[(c[b>>2]|0)+412+1032>>2]=0;c[(c[b>>2]|0)+412+1548>>2]=0;Fb(c[d>>2]|0,c[b>
;>2]|0);c[b>>2]=0;i=e;return}function bn(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=b;b=c[e>
;>2]|0;d=b+28|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(d|0));c[(c[e>>2]|0)+4>>2]=37;c[(c[e>
;>2]|0)+8>>2]=108;c[(c[e>>2]|0)+12>>2]=13;c[(c[e>>2]|0)+16>>2]=14;c[(c[e
x3e;>2]|0)+20>>2]=5;c[(c[e>>2]|0)+24>>2]=24;i=f;return}function cn(a){a=a|0;var b=0,d=0;b=i;i
=i+16|0;d=b;c[d>>2]=a;dn(c[d>>2]|0,1);i=b;return}function dn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d
=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;b=(c[d>>2]|0)+4|0;if(((c[e>>2]|0)+-1|0)>>>
0<2){c[b>>2]=0;c[(c[d>>2]|0)+12>>2]=c[e>>2];en((c[d>>2]|0)+16|0);en((c[d
x3e;>2]|0)+16+36|0);i=f;return}else{c[b>>2]=6;c[(c[d>>2]|0)+12>>2]=c[e>>2];i=f;return
}}function en(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]=0;c[(c[d>>2]|
0)+12>>2]=0;c[(c[d>>2]|0)+24>>2]=0;i=b;return}function fn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0
,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;g=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[g>>2]=c[(c[d>
x3e;2]|0)+4>>2];if(c[g>>2]|0){h=c[g>>2]|0;i=j;return h|0}c[h>>2]=c[c[d>>2]>
;>2];c[f>>2]=(c[d>>2]|0)+16;c[g>>2]=gn(c[f>>2]|0,c[e>>2]|0,c[h>>
;2]|0)|0;if(c[g>>2]|0){h=c[g>>2]|0;i=j;return h|0}c[g>>2]=gn((c[f>>2]|0)+36|0,c[e>
x3e;2]|0,c[h>>2]|0)|0;h=c[g>>2]|0;i=j;return h|0}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+16|0;g=e+8|0;h=e+4|0;f=e;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;hn(c[g>>2]|0,c[h>>
;2]|0);d=jn((c[g>>2]|0)+24|0,c[f>>2]|0)|0;i=e;return d|0}function hn(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|0)+12
>>2];if((c[f>>2]|0)>>>0<=0){i=h;return}c[g>>2]=(c[(c[d>>2]|0)+12+8
x3e;>2]|0)+(c[f>>2]<<4)+-16;c[(c[g>>2]|0)+12>>2]=c[e>>2];i=h;return}function
jn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+16|0;e=k+12|0;g=k+8|0;h=k+4|0;f=k;c[d>>2]=a;c[e
x3e;>2]=b;c[f>>2]=0;c[g>>2]=(c[c[d>>2]>>2]|0)-1;while(1){if((c[g>>2]|0)
x3c;=0){j=9;break}c[h>>2]=(c[g>>2]|0)-1;while(1){if((c[h>>2]|0)<0)break;if(kn(c[d>>
2]|0,c[g>>2]|0,c[h>>2]|0)|0){j=6;break}c[h>>2]=(c[h>>2]|0)+-1}if((j|0)==6?(j=0,c[f>
x3e;2]=ln(c[d>>2]|0,c[h>>2]|0,c[g>>2]|0,c[e>>2]|0)|0,c[f>>2]|0):0){j=9;break}c
[g>>2]=(c[g>>2]|0)+-1}if((j|0)==9){i=k;return c[f>>2]|0}return 0}function kn(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;l=i;i=i+48|0;f=l+40|0;r=l+36|0;s=l+32|0;q=l+28|0;p=l+24|0;o=l+20|0;h
=l+16|0;j=l+12|0;n=l+8|0;m=l+4|0;g=l;c[r>>2]=a;c[s>>2]=b;c[q>>2]=e;c[p>>2]=(c[(c[r>
x3e;2]|0)+8>>2]|0)+(c[s>>2]<<4);c[o>>2]=(c[(c[r>>2]|0)+8>>2]|0)+(c[q
>>2]<<4);c[h>>2]=c[(c[p>>2]|0)+8>>2];c[j>>2]=c[(c[o>>2]|0)+
8>>2];c[n>>2]=c[c[p>>2]>>2];c[m>>2]=c[c[o>>2]>>2];c[g>
;>2]=(c[n>>2]|0)>>>0<=(c[m>>2]|0)>>>0?c[n>>2]|0:c[m>
x3e;2]|0;while(1){if((c[g>>2]|0)>>>0<8)break;if((d[c[h>>2]>>0]|0)&(d[c[j
x3e;>2]>>0]|0)|0){k=4;break}c[h>>2]=(c[h>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1;c
[g>>2]=(c[g>>2]|0)-8}if((k|0)==4){c[f>>2]=1;s=c[f>>2]|0;i=l;return s|0}if(!(c[g>>
;2]|0)){c[f>>2]=0;s=c[f>>2]|0;i=l;return s|0}else{c[f>>2]=(d[c[h>>2]>>0]|0)&
;(d[c[j>>2]>>0]|0)&~(255>>c[g>>2]);s=c[f>>2]|0;i=l;return s|0}return 0}function
ln(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;x=i;i=i+80|0;h=x+68|0;j
=x+64|0;k=x+60|0;l=x+56|0;v=x+52|0;q=x+48|0;r=x+44|0;s=x+40|0;m=x+36|0;n=x+32|0;o=x+28|0;t=x+24|0;u=x+20|0;w=x+16|0;p=x;c[h>
;>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[q>>2]=0;if((c[j>>2]|0)>(c[k
x3e;>2]|0)){c[v>>2]=c[j>>2];c[j>>2]=c[k>>2];c[k>>2]=c[v>>2]}if(!((
c[j>>2]|0)>=0?(c[j>>2]|0)<(c[k>>2]|0):0)){w=c[q>>2]|0;i=x;return w|0}if((c[k
x3e;>2]|0)>=(c[c[h>>2]>>2]|0)){w=c[q>>2]|0;i=x;return w|0}c[r>>2]=(c[(c[h>
;>2]|0)+8>>2]|0)+(c[j>>2]<<4);c[s>>2]=(c[(c[h>>2]|0)+8>>2]|0)+(
c[k>>2]<<4);c[m>>2]=c[c[r>>2]>>2];c[n>>2]=c[c[s>>2]>
x3e;2];a:do if((c[n>>2]|0)>>>0>0){b:do if((c[n>>2]|0)>>>0>(c[m>
x3e;2]|0)>>>0){c[q>>2]=mn(c[r>>2]|0,c[n>>2]|0,c[l>>2]|0)|0;if(c[q>
x3e;2]|0){w=c[q>>2]|0;i=x;return w|0}c[t>>2]=c[m>>2];while(1){if((c[t>>2]|0)>>
x3e;0>=(c[n>>2]|0)>>>0)break b;nn(c[r>>2]|0,c[t>>2]|0);c[t>>2]=(c[t
x3e;>2]|0)+1}}while(0);c[u>>2]=c[(c[s>>2]|0)+8>>2];c[w>>2]=c[(c[r>>2]|0)+
8>>2];c[t>>2]=((c[n>>2]|0)+7|0)>>>3;while(1){if((c[t>>2]|0)>>
x3e;0<=0)break a;a[c[w>>2]>>0]=d[c[w>>2]>>0]|0|(d[c[u>>2]>>0]|0
);c[w>>2]=(c[w>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+-1
}}while(0);c[c[s>>2]>>2]=0;c[(c[s>>2]|0)+12>>2]=0;c[o>>2]=(c[c[h>>2]
x3e;>2]|0)-1-(c[k>>2]|0);if((c[o>>2]|0)>0){w=c[s>>2]|0;c[p>>2]=c[w>>
2];c[p+4>>2]=c[w+4>>2];c[p+8>>2]=c[w+8>>2];c[p+12>>2]=c[w+12>>2];Ts(
c[s>>2]|0,(c[s>>2]|0)+16|0,c[o>>2]<<4|0)|0;w=(c[s>>2]|0)+(c[o>>2]<
;<4)|0;c[w>>2]=c[p>>2];c[w+4>>2]=c[p+4>>2];c[w+8>>2]=c[p+8>>2];
c[w+12>>2]=c[p+12>>2]}w=c[h>>2]|0;c[w>>2]=(c[w>>2]|0)+-1;w=c[q>>2]|0
;i=x;return w|0}function mn(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;k=i;i=i+32|0;e=k+20|0;l=k+16|0;f=k+12|0;j=k
+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=((c[(c[e>>2]|0)+4>
x3e;2]|0)+7|0)>>>3;c[h>>2]=((c[l>>2]|0)+7|0)>>>3;c[g>>2]=0;if((c[h
x3e;>2]|0)>>>0<=(c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>
;>2]=(c[h>>2]|0)+7&-8;l=hc(c[f>>2]|0,1,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2
]|0)+8>>2]|0,g)|0;c[(c[e>>2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l
|0}c[(c[e>>2]|0)+4>>2]=c[h>>2]<<3;l=c[g>>2]|0;i=k;return l|0}function nn(b,e){
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]=b;c[g>>2]=e;if((c[g>>2]|0
)>>>0>=(c[c[f>>2]>>2]|0)>>>0){i=j;return}c[h>>2]=(c[(c[f>
x3e;2]|0)+8>>2]|0)+(c[g>>2]>>3);a[c[h>>2]>>0]=(d[c[h>>2]>>
0]|0)&~(128>>(c[g>>2]&7));i=j;return}function on(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]=(Tb(c[c
[j>>2]>>2]|0)|0)>>16;c[f+4>>2]=(Tb(c[(c[j>>2]|0)+4>>2]|0)|0)>
x3e;16;pn(c[h>>2]|0,c[g>>2]|0,1,f);i=e;return}function pn(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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;h=o+16|0;j=o+12|0;k=o+8|0;l=o+4|0;m=o;c[f>>2]=a;c[g>>2
]=b;c[h>>2]=d;c[j>>2]=e;if(c[(c[f>>2]|0)+4>>2]|0){i=o;return}if((c[g>>2]|0)<
;0|(c[g>>2]|0)>1)c[g>>2]=(c[g>>2]|0)!=0&1;if(((c[(c[f>>2]|0)+12>>2]|
0)+-1|0)>>>0>=2){i=o;return}c[k>>2]=(c[f>>2]|0)+16+((c[g>>2]|0)*36|0);while(1){
if((c[h>>2]|0)>>>0<=0){n=10;break}c[m>>2]=c[c[f>>2]>>2];c[l>>
;2]=qn(c[k>>2]|0,c[c[j>>2]>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[m>>2]|0,0)|
0;if(c[l>>2]|0)break;c[h>>2]=(c[h>>2]|0)+-1;c[j>>2]=(c[j>>2]|0)+8}if((n|0)==10
){i=o;return}c[(c[f>>2]|0)+4>>2]=c[l>>2];i=o;return}function qn(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;s=i;i=i+48|0;g=s+40|0;h=s+36|0;j=s+32|0;k=s+28|0;l=s+24|0;m=s+20|0;n=
s+16|0;q=s+12|0;p=s+8|0;r=s+4|0;o=s;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>
;2]=f;c[m>>2]=0;c[n>>2]=0;if((c[j>>2]|0)<0){c[n>>2]=c[n>>2]|1;if((c[j>
;>2]|0)==-21){c[n>>2]=c[n>>2]|2;c[h>>2]=(c[h>>2]|0)+(c[j>>2]|0)}c[j>
x3e;2]=0}if(c[l>>2]|0)c[c[l>>2]>>2]=-1;c[r>>2]=c[c[g>>2]>>2];c[o>
;>2]=c[(c[g>>2]|0)+8>>2];c[p>>2]=0;while(1){if((c[p>>2]|0)>>>0>=(
c[r>>2]|0)>>>0)break;if((c[c[o>>2]>>2]|0)==(c[h>>2]|0)?(c[(c[o>>
;2]|0)+4>>2]|0)==(c[j>>2]|0):0)break;c[p>>2]=(c[p>>2]|0)+1;c[o>>2]=(c[o>
x3e;2]|0)+12}do if((c[p>>2]|0)>>>0>=(c[r>>2]|0)>>>0){c[m>>2]=rn
(c[g>>2]|0,c[k>>2]|0,o)|0;if(c[m>>2]|0){b=c[m>>2]|0;i=s;return b|0}else{c[c[o>>
;2]>>2]=c[h>>2];c[(c[o>>2]|0)+4>>2]=c[j>>2];c[(c[o>>2]|0)+8>>
;2]=c[n>>2];break}}while(0);c[m>>2]=tn((c[g>>2]|0)+12|0,c[k>>2]|0,q)|0;if(c[m>>
;2]|0){b=c[m>>2]|0;i=s;return b|0}c[m>>2]=wn(c[q>>2]|0,c[p>>2]|0,c[k>>2]|0)|0;
if(!((c[m>>2]|0)==0&(c[l>>2]|0)!=0)){b=c[m>>2]|0;i=s;return b|0}c[c[l>>2]>>
;2]=c[p>>2];b=c[m>>2]|0;i=s;return b|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;
l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;j=l+8|0;h=l+4|0;k=l;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>
;>2]=0;c[k>>2]=0;c[h>>2]=c[c[e>>2]>>2];c[h>>2]=(c[h>>2]|0)+1;if
((c[h>>2]|0)>>>0>=(c[(c[e>>2]|0)+4>>2]|0)>>>0?(c[j>>2
]=sn(c[e>>2]|0,c[h>>2]|0,c[f>>2]|0)|0,c[j>>2]|0):0){b=c[k>>2]|0;a=c[g>>
;2]|0;c[a>>2]=b;a=c[j>>2]|0;i=l;return a|0}c[k>>2]=(c[(c[e>>2]|0)+8>>2]|0)+((c
[h>>2]|0)*12|0)+-12;c[c[k>>2]>>2]=0;c[(c[k>>2]|0)+4>>2]=0;c[(c[k>>2]|
0)+8>>2]=0;c[c[e>>2]>>2]=c[h>>2];b=c[k>>2]|0;a=c[g>>2]|0;c[a>
x3e;2]=b;a=c[j>>2]|0;i=l;return a|0}function sn(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;k=i;i=i+32|0;
e=k+20|0;l=k+16|0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=c[(
c[e>>2]|0)+4>>2];c[h>>2]=c[l>>2];c[g>>2]=0;if((c[h>>2]|0)>>
;>0<=(c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>>2]=(c[h>>
2]|0)+7&-8;l=hc(c[f>>2]|0,12,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+8>>2]|0,g)|
0;c[(c[e>>2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l|0}c[(c[e>>2]|0)+
4>>2]=c[h>>2];l=c[g>>2]|0;i=k;return l|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;k=i;i=i+32|0;l=k+20|0;e=k+16|0;f=k+12|0;h=k+8|0;g=k+4|0;j=k;c[l>>2]=a;c[e>>2]=b;c[f>>2
]=d;c[h>>2]=0;c[g>>2]=c[c[l>>2]>>2];d=c[l>>2]|0;if(!(c[g>>2]|0)){c[h
>>2]=un(d,c[e>>2]|0,j)|0;j=c[j>>2]|0;l=c[f>>2]|0;c[l>>2]=j;l=c[h>>2]|
0;i=k;return l|0}else{c[j>>2]=(c[d+8>>2]|0)+(c[g>>2]<<4)+-16;j=c[j>>2]|0;l=c[f
>>2]|0;c[l>>2]=j;l=c[h>>2]|0;i=k;return l|0}return 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;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[e>>2]=a;c[f>>2]=b;c[g
x3e;>2]=d;c[j>>2]=0;c[k>>2]=0;c[h>>2]=c[c[e>>2]>>2];c[h>>2]=(c[
h>>2]|0)+1;if((c[h>>2]|0)>>>0>(c[(c[e>>2]|0)+4>>2]|0)>>>
;0?(c[j>>2]=vn(c[e>>2]|0,c[h>>2]|0,c[f>>2]|0)|0,c[j>>2]|0):0){b=c[k>>
;2]|0;a=c[g>>2]|0;c[a>>2]=b;a=c[j>>2]|0;i=l;return a|0}c[k>>2]=(c[(c[e>>2]|0)+
8>>2]|0)+(c[h>>2]<<4)+-16;c[c[k>>2]>>2]=0;c[(c[k>>2]|0)+12>>
;2]=0;c[c[e>>2]>>2]=c[h>>2];b=c[k>>2]|0;a=c[g>>2]|0;c[a>>2]=b;a=c[j
x3e;>2]|0;i=l;return a|0}function vn(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;k=i;i=i+32|0;e=k+20|0;l=k+16|
0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=c[(c[e>>2
]|0)+4>>2];c[h>>2]=c[l>>2];c[g>>2]=0;if((c[h>>2]|0)>>>0<=(
c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>>2]=(c[h>>2]|0)+7&-8;
l=hc(c[f>>2]|0,16,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+8>>2]|0,g)|0;c[(c[e>
x3e;2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l|0}c[(c[e>>2]|0)+4>>2]=
c[h>>2];l=c[g>>2]|0;i=k;return l|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;m=i;i=i+
32|0;g=m+16|0;h=m+12|0;j=m+8|0;k=m+4|0;l=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=0;if((c
[h>>2]|0)<0){l=c[k>>2]|0;i=m;return l|0}do if((c[h>>2]|0)>>>0>=(c[c[g>
;>2]>>2]|0)>>>0){c[k>>2]=mn(c[g>>2]|0,(c[h>>2]|0)+1|0,c[j>>
;2]|0)|0;if(c[k>>2]|0){l=c[k>>2]|0;i=m;return l|0}else{c[c[g>>2]>>2]=(c[h>>2]|
0)+1;break}}while(0);c[l>>2]=(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]>>3);a[c[l>
x3e;2]>>0]=d[c[l>>2]>>0]|0|128>>(c[h>>2]&7);l=c[k>>2]|0;i=m;return
l|0}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,l=0,m=0,n=0;n=i;i=i+48|0;f=n+36|0;e=n+32|0;g=n+28|0;k=n+24
|0;j=n+20|0;m=n+16|0;h=n+12|0;l=n;c[f>>2]=a;c[e>>2]=b;c[g>>2]=d;c[k>>2]=0;if(c[(c[f>
;>2]|0)+4>>2]|0){i=n;return}c[m>>2]=c[c[f>>2]>>2];if((c[e>>2]|0)<0|(
c[e>>2]|0)>1)c[e>>2]=(c[e>>2]|0)!=0&1;c[j>>2]=(c[f>>2]|0)+16+((c[e
x3e;>2]|0)*36|0);a:do if((c[(c[f>>2]|0)+12>>2]|0)==1){c[h>>2]=0;while(1){e=c[j>>2]|
0;if((c[h>>2]|0)>=3)break;a=(Tb(c[c[g>>2]>>2]|0)|0)>>16;d=(Tb(c[(c[g>>2]|
0)+4>>2]|0)|0)>>16;c[k>>2]=qn(e,a,d,c[m>>2]|0,l+(c[h>>2]<<2)|0)|0;if
(c[k>>2]|0)break a;c[h>>2]=(c[h>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+8}c[k>>
2]=yn(e,c[l>>2]|0,c[l+4>>2]|0,c[l+8>>2]|0,c[m>>2]|0)|0;if(!(c[k>>2]|0)){i=n;return
}}else c[k>>2]=6;while(0);c[(c[f>>2]|0)+4>>2]=c[k>>2];i=n;return}function yn(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;p=i;i=i+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;
o=p+8|0;m=p+4|0;n=p;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[o>
;>2]=0;c[m>>2]=c[(c[g>>2]|0)+24>>2];c[n>>2]=c[(c[g>>2]|0)+24+8>>
;2];while(1){if((c[m>>2]|0)>>>0<=0)break;if(zn(c[n>>2]|0,c[h>>2]|0)|0)break;if
(zn(c[n>>2]|0,c[j>>2]|0)|0)break;if(zn(c[n>>2]|0,c[k>>2]|0)|0)break;c[m>>2]=(c
[m>>2]|0)+-1;c[n>>2]=(c[n>>2]|0)+16}if((c[m>>2]|0)==0?(c[o>>2]=un((c[g>
x3e;2]|0)+24|0,c[l>>2]|0,n)|0,c[o>>2]|0):0){f=c[o>>2]|0;i=p;return f|0}c[o>>2]=wn(c[n>
;>2]|0,c[h>>2]|0,c[l>>2]|0)|0;if(c[o>>2]|0){f=c[o>>2]|0;i=p;return f|0}c[o>>
;2]=wn(c[n>>2]|0,c[j>>2]|0,c[l>>2]|0)|0;if(c[o>>2]|0){f=c[o>>2]|0;i=p;return f
|0}c[o>>2]=wn(c[n>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;f=c[o>>2]|0;i=p;return f|0}function
zn(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=b;if((c[g>
x3e;2]|0)>>>0>=(c[c[f>>2]>>2]|0)>>>0){c[e>>2]=0;a=c[e>>
;2]|0;i=h;return a|0}else{c[e>>2]=(d[(c[(c[f>>2]|0)+8>>2]|0)+(c[g>>2]>>3)>
;>0]|0)&128>>(c[g>>2]&7);a=c[e>>2]|0;i=h;return a|0}return 0}function An(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>
2]=0;if(c[(c[d>>2]|0)+4>>2]|0){i=h;return}c[g>>2]=c[c[d>>2]>>2];if((c[(c[d>
;>2]|0)+12>>2]|0)==1){c[f>>2]=Bn((c[d>>2]|0)+16|0,c[e>>2]|0,c[g>>2]|0)|0;
if((c[f>>2]|0)==0?(c[f>>2]=Bn((c[d>>2]|0)+16+36|0,c[e>>2]|0,c[g>>2]|0)|0,(c[f
x3e;>2]|0)==0):0){i=h;return}}else c[f>>2]=6;c[(c[d>>2]|0)+4>>2]=c[f>>2];i=h;return
}function Bn(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+8|0;f=e+4|0;c[g>>2]=a;c[h>>
;2]=b;c[f>>2]=d;hn(c[g>>2]|0,c[h>>2]|0);d=un((c[g>>2]|0)+12|0,c[f>>2]|0,e)|0;i
=e;return d|0}function Cn(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,x=0,y
=0,z=0;z=i;i=i+208|0;h=z+192|0;j=z+188|0;k=z+184|0;l=z+180|0;m=z+176|0;s=z+40|0;q=z+36|0;p=z+32|0;n=z+28|0;o=z+24|0;x=z+20|0;y=z
+16|0;t=z+12|0;u=z+8|0;w=z+4|0;r=z;v=z+196|0;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[s
>>2]=z+48;if(b[(c[k>>2]|0)+2>>1]|0?b[c[k>>2]>>1]|0:0){c[q>>2]=Dn(c[s
>>2]|0,c[k>>2]|0,c[j>>2]|0,c[l>>2]|0)|0;a:do if(!(c[q>>2]|0)){c[n>>2
]=(c[(c[s>>2]|0)+24>>2]|0)+4;c[o>>2]=(c[(c[s>>2]|0)+24>>2]|0)+4+204;c[x>
x3e;2]=c[(c[n>>2]|0)+196>>2];c[y>>2]=c[(c[o>>2]|0)+196>>2];c[t>>2]=c
[x>>2];c[u>>2]=c[y>>2];a[v>>0]=0;c[w>>2]=Mb(c[(c[l>>2]|0)+412+4>
;>2]|0,c[y>>2]|0)|0;c[r>>2]=(c[w>>2]|0)+32&-64;if(c[r>>2]|0?(c[w>>2]|
0)!=(c[r>>2]|0):0){a[v>>0]=1;c[y>>2]=xb(c[y>>2]|0,c[r>>2]|0,c[w>>2]|
0)|0;if((c[r>>2]|0)<(c[w>>2]|0))c[x>>2]=(c[x>>2]|0)-((c[x>>2]|0)/50|0);Zm
(c[(c[s>>2]|0)+24>>2]|0,c[x>>2]|0,c[y>>2]|0,0,0)|0}a[(c[s>>2]|0)+120>>
;0]=1;a[(c[s>>2]|0)+121>>0]=1;a[(c[s>>2]|0)+122>>0]=((c[m>>2]|0)==2?1:(c[m>
;>2]|0)==3)&1;a[(c[s>>2]|0)+123>>0]=((c[m>>2]|0)==2?1:(c[m>>2]|0)==4)&1;a
[(c[s>>2]|0)+124>>0]=(c[m>>2]|0)!=1;c[p>>2]=0;while(1){if((c[p>>2]|0)>=2)
break a;Fn(c[s>>2]|0,c[p>>2]|0);Ln(c[s>>2]|0);Mn((c[s>>2]|0)+28+((c[p>>2]|0)*40
|0)|0,c[(c[s>>2]|0)+24>>2]|0,c[p>>2]|0,c[s>>2]|0);Rn(c[s>>2]|0,c[p>>
2]|0);if((c[p>>2]|0)==1)Vn((c[l>>2]|0)+412|0,c[s>>2]|0);Wn(c[s>>2]|0,c[p>>2]|0
);Xn(c[s>>2]|0,c[p>>2]|0);Yn(c[s>>2]|0,c[p>>2]|0);Zn(c[s>>2]|0,c[p>>
2]|0);if(a[v>>0]|0)Zm(c[(c[s>>2]|0)+24>>2]|0,c[t>>2]|0,c[u>>2]|0,0,0)|0;c[p>
;>2]=(c[p>>2]|0)+1}}while(0);_n(c[s>>2]|0);c[h>>2]=c[q>>2];y=c[h>>2]|0;i=
z;return y|0}c[h>>2]=0;y=c[h>>2]|0;i=z;return y|0}function Dn(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,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+96|0;p=F+88|0;q=F+84|0;r=F+80|0;s
=F+76|0;x=F+72|0;y=F+68|0;k=F+64|0;m=F+60|0;l=F+56|0;o=F+52|0;h=F+48|0;j=F+44|0;n=F+40|0;D=F+36|0;C=F+32|0;E=F+28|0;z=F+24|0;B=F
+20|0;A=F+16|0;t=F+12|0;v=F+8|0;u=F+4|0;w=F;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;g=c[
p>>2]|0;d=g+128|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(d|0));f=c[c[s>>2]>>2]|0;c[(c[p
x3e;>2]|0)+16>>2]=f;c[y>>2]=f;f=hc(c[y>>2]|0,48,0,b[(c[q>>2]|0)+2>>1]|0,0
,x)|0;c[(c[p>>2]|0)+8>>2]=f;if(c[x>>2]|0){E=c[x>>2]|0;i=F;return E|0}f=hc(c[y>>
;2]|0,8,0,b[c[q>>2]>>1]|0,0,x)|0;c[(c[p>>2]|0)+12>>2]=f;if(c[x>>2]|0){E=c[x>
;>2]|0;i=F;return E|0}c[c[p>>2]>>2]=b[(c[q>>2]|0)+2>>1];c[(c[p>>2]|0)+4
x3e;>2]=b[c[q>>2]>>1];c[k>>2]=0;c[o>>2]=c[(c[p>>2]|0)+8>>2];c[h
>>2]=c[(c[p>>2]|0)+12>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0
>=(c[(c[p>>2]|0)+4>>2]|0)>>>0)break;c[m>>2]=(b[(c[(c[q>>2]|0)+12>
;>2]|0)+(c[l>>2]<<1)>>1]|0)+1;c[j>>2]=(c[m>>2]|0)-(c[k>>2]|0);c
[c[h>>2]>>2]=(c[o>>2]|0)+((c[k>>2]|0)*48|0);c[(c[h>>2]|0)+4>>2]=c[j
x3e;>2];if((c[j>>2]|0)>0){c[n>>2]=(c[o>>2]|0)+((c[k>>2]|0)*48|0);c[c[n>
x3e;2]>>2]=(c[o>>2]|0)+((c[m>>2]|0)*48|0)+-48;c[(c[n>>2]|0)+8>>2]=c[h>>
;2];while(1){if((c[j>>2]|0)<=1)break;c[(c[n>>2]|0)+4>>2]=(c[n>>2]|0)+48;c[(c[n>
;>2]|0)+48>>2]=c[n>>2];c[n>>2]=(c[n>>2]|0)+48;c[(c[n>>2]|0)+8>>
2]=c[h>>2];c[j>>2]=(c[j>>2]|0)+-1}c[(c[n>>2]|0)+4>>2]=(c[o>>2]|0)+((
c[k>>2]|0)*48|0)}c[h>>2]=(c[h>>2]|0)+8;c[k>>2]=c[m>>2];c[l>>2]=(c[l
x3e;>2]|0)+1}c[D>>2]=c[(c[p>>2]|0)+8>>2];c[C>>2]=c[D>>2];c[E>>2
]=c[(c[q>>2]|0)+4>>2];c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[c[p
x3e;>2]>>2]|0)>>>0)break;c[B>>2]=((c[c[C>>2]>>2]|0)-(c[D>>
2]|0)|0)/48|0;c[A>>2]=((c[(c[C>>2]|0)+4>>2]|0)-(c[D>>2]|0)|0)/48|0;if(!(a[(c[(c[q>
x3e;2]|0)+8>>2]|0)+(c[z>>2]|0)>>0]&1))c[(c[C>>2]|0)+12>>2]=1;c[t>>
;2]=(c[(c[E>>2]|0)+(c[z>>2]<<3)>>2]|0)-(c[(c[E>>2]|0)+(c[B>>2]<
x3c;3)>>2]|0);c[v>>2]=(c[(c[E>>2]|0)+(c[z>>2]<<3)+4>>2]|0)-(c[(c[E
x3e;>2]|0)+(c[B>>2]<<3)+4>>2]|0);g=(En(c[t>>2]|0,c[v>>2]|0)|0)&255;a
[(c[C>>2]|0)+20>>0]=g;c[u>>2]=(c[(c[E>>2]|0)+(c[A>>2]<<3)>>
;2]|0)-(c[(c[E>>2]|0)+(c[z>>2]<<3)>>2]|0);c[w>>2]=(c[(c[E>>2]|0)+(c[
A>>2]<<3)+4>>2]|0)-(c[(c[E>>2]|0)+(c[z>>2]<<3)+4>>2]|0);g=(
En(c[u>>2]|0,c[w>>2]|0)|0)&255;a[(c[C>>2]|0)+21>>0]=g;g=c[C>>2]|0;do if(!(
c[(c[C>>2]|0)+12>>2]&1|0)){if((a[g+20>>0]|0)==(a[(c[C>>2]|0)+21>>0]|0)){if
((a[(c[C>>2]|0)+21>>0]|0)==4?($b(c[t>>2]|0,c[v>>2]|0,c[u>>2]|0,c[w>>
2]|0)|0)==0:0)break;o=(c[C>>2]|0)+12|0;c[o>>2]=c[o>>2]|2}}else{o=g+12|0;c[o>>2]=c[o>
;>2]|2}while(0);c[z>>2]=(c[z>>2]|0)+1;c[C>>2]=(c[C>>2]|0)+48}c[(c[p>>2]|0
)+20>>2]=c[q>>2];c[(c[p>>2]|0)+24>>2]=c[s>>2];Fn(c[p>>2]|0,0);Gn(c[p
>>2]|0);c[x>>2]=Hn((c[p>>2]|0)+28|0,(c[r>>2]|0)+16|0,(c[r>>2]|0)+16+12|0,(c[r
x3e;>2]|0)+16+24|0,c[y>>2]|0)|0;if(c[x>>2]|0){E=c[x>>2]|0;i=F;return E|0}c[x>>2]=Hn
((c[p>>2]|0)+28+40|0,(c[r>>2]|0)+16+36|0,(c[r>>2]|0)+16+36+12|0,(c[r>>2]|0)+16+36+24|0,c
[y>>2]|0)|0;E=c[x>>2]|0;i=F;return E|0}function En(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0
;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[d>>2]=a;c[e>>2]=b;c[h>>2]=4;b=c[d>>2]|0;c[f>
;>2]=(c[d>>2]|0)>=0?b:0-b|0;b=c[e>>2]|0;c[g>>2]=(c[e>>2]|0)>=0?b:0-b|0;if
(((c[g>>2]|0)*12|0)<(c[f>>2]|0)){c[h>>2]=(c[d>>2]|0)>=0?2:-2;h=c[h>>
2]|0;i=j;return h|0}if(((c[f>>2]|0)*12|0)>=(c[g>>2]|0)){h=c[h>>2]|0;i=j;return h|0}c[h>
x3e;2]=(c[e>>2]|0)>=0?-1:1;h=c[h>>2]|0;i=j;return h|0}function Fn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,
h=0,j=0;h=i;i=i+32|0;j=h+16|0;d=h+12|0;g=h+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[g>>2]=c[(c[(c[j
x3e;>2]|0)+20>>2]|0)+4>>2];c[f>>2]=c[(c[j>>2]|0)+8>>2];c[e>>2]=
c[c[j>>2]>>2];while(1){if((c[e>>2]|0)>>>0<=0)break;c[(c[f>>2]|0)+16
x3e;>2]=0;c[(c[f>>2]|0)+32>>2]=0;b=c[g>>2]|0;if(!(c[d>>2]|0)){c[(c[f>>2]|
0)+36>>2]=c[b>>2];c[(c[f>>2]|0)+40>>2]=c[(c[g>>2]|0)+4>>2]}else{c[(c
[f>>2]|0)+36>>2]=c[b+4>>2];c[(c[f>>2]|0)+40>>2]=c[c[g>>2]>>
;2]}c[e>>2]=(c[e>>2]|0)+-1;c[f>>2]=(c[f>>2]|0)+48;c[g>>2]=(c[g>>2]|0
)+8}i=h;return}function Gn(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;r=i;i=i+64|0;b=r+52|0;l=r+48
|0;h=r+44|0;q=r+40|0;f=r+36|0;e=r+32|0;d=r+28|0;j=r+24|0;k=r+20|0;o=r+16|0;p=r+12|0;n=r+8|0;m=r+4|0;g=r;c[b>>2]=a;c[l
x3e;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[(c[b>>2]|0)+4>>2]|0)>>
;>0)break;c[g>>2]=0;a:do if((c[(c[(c[b>>2]|0)+12>>2]|0)+(c[l>>2]<<3)+4>
;>2]|0)>>>0>=4){c[h>>2]=c[(c[(c[b>>2]|0)+12>>2]|0)+(c[l>>2]<
;<3)>>2];a=c[h>>2]|0;c[f>>2]=a;c[q>>2]=a;do{c[f>>2]=c[(c[f>>2]|
0)+4>>2];if((c[f>>2]|0)==(c[h>>2]|0))break a;c[j>>2]=(c[(c[f>>2]|0)+36>
x3e;2]|0)-(c[(c[q>>2]|0)+36>>2]|0);c[k>>2]=(c[(c[f>>2]|0)+40>>2]|0)-(c[(c[q>
;>2]|0)+40>>2]|0)}while((c[j>>2]|0)==0?(c[k>>2]|0)==0:0);c[e>>2]=c[q>>2];
while(1){c[q>>2]=c[e>>2];c[e>>2]=c[c[e>>2]>>2];if((c[e>>2]|0)==(c[h
x3e;>2]|0))break a;c[o>>2]=(c[(c[q>>2]|0)+36>>2]|0)-(c[(c[e>>2]|0)+36>>2]|
0);c[p>>2]=(c[(c[q>>2]|0)+40>>2]|0)-(c[(c[e>>2]|0)+40>>2]|0);if((c[o>>
;2]|0)==0?(c[p>>2]|0)==0:0)continue;c[n>>2]=_b(c[j>>2]|0,c[k>>2]|0,c[o>>2]|0,c
[p>>2]|0)|0;if(c[n>>2]|0)break}c[h>>2]=c[q>>2];c[j>>2]=c[o>>2];c[k
x3e;>2]=c[p>>2];do{c[d>>2]=c[f>>2];while(1){c[f>>2]=c[d>>2];c[d>>
;2]=c[(c[d>>2]|0)+4>>2];if((c[d>>2]|0)==(c[h>>2]|0))c[g>>2]=1;c[o>>2
]=(c[(c[d>>2]|0)+36>>2]|0)-(c[(c[f>>2]|0)+36>>2]|0);c[p>>2]=(c[(c[d>>
;2]|0)+40>>2]|0)-(c[(c[f>>2]|0)+40>>2]|0);if((c[o>>2]|0)==0?(c[p>>2]|0)==0:0)continue
;c[m>>2]=_b(c[j>>2]|0,c[k>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;if(c[m>>2]|0)
break}if((c[m>>2]^c[n>>2]|0)<0){do{a=(c[q>>2]|0)+12|0;c[a>>2]=c[a>>2]|4;c
[q>>2]=c[(c[q>>2]|0)+4>>2]}while((c[q>>2]|0)!=(c[f>>2]|0));a=(c[q>>2
]|0)+12|0;c[a>>2]=c[a>>2]|4}c[q>>2]=c[f>>2];c[f>>2]=c[d>>2];c[n>
;>2]=c[m>>2];c[j>>2]=c[o>>2];c[k>>2]=c[p>>2]}while((c[g>>2]|0)!=
0^1)}while(0);c[l>>2]=(c[l>>2]|0)+1}i=r;return}function Hn(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;r=i;i=i+48|0;g=r+40|0;h=r+36|0;j=r+32|0;s=r+28|0;k=r+24|0;l=r+20|0;m=r+16|0;q=r+12|0
;p=r+8|0;o=r+4|0;n=r;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[s>>2]=e;c[k>>2]=f;c[s>
;>2]=c[s>>2];c[l>>2]=c[c[h>>2]>>2];a=hc(c[k>>2]|0,4,0,c[l>>2]
x3c;<1,0,m)|0;c[(c[g>>2]|0)+12>>2]=a;if(c[m>>2]|0){s=c[m>>2]|0;i=r;return s|0}s=hc(
c[k>>2]|0,28,0,c[l>>2]|0,0,m)|0;c[(c[g>>2]|0)+8>>2]=s;if(c[m>>2]|0){s=c[m>
;>2]|0;i=r;return s|0}s=hc(c[k>>2]|0,16,0,(c[l>>2]<<1)+1|0,0,m)|0;c[(c[g>>2]|0)+24
x3e;>2]=s;if(c[m>>2]|0){s=c[m>>2]|0;i=r;return s|0}c[c[g>>2]>>2]=c[l>>2];
c[(c[g>>2]|0)+16>>2]=(c[(c[g>>2]|0)+12>>2]|0)+(c[l>>2]<<2);c[(c[g>
;>2]|0)+4>>2]=0;c[(c[g>>2]|0)+20>>2]=0;c[(c[g>>2]|0)+28>>2]=0;c[q>
x3e;2]=c[(c[g>>2]|0)+8>>2];c[p>>2]=c[(c[h>>2]|0)+8>>2];while(1){if((c[l>
x3e;2]|0)>>>0<=0)break;c[c[q>>2]>>2]=c[c[p>>2]>>2];c[(c[q>>
;2]|0)+4>>2]=c[(c[p>>2]|0)+4>>2];c[(c[q>>2]|0)+16>>2]=c[(c[p>>2]|0)+
8>>2];c[l>>2]=(c[l>>2]|0)+-1;c[q>>2]=(c[q>>2]|0)+28;c[p>>2]=(c[p>
;>2]|0)+12}a:do if(c[j>>2]|0){c[o>>2]=c[(c[j>>2]|0)+8>>2];c[l>>2]=c[c[j
x3e;>2]>>2];c[(c[g>>2]|0)+32>>2]=c[j>>2];while(1){if((c[l>>2]|0)>>
;>0<=0)break a;In(c[g>>2]|0,c[o>>2]|0);c[l>>2]=(c[l>>2]|0)+-1;c[o>>2
]=(c[o>>2]|0)+16}}while(0);if((c[(c[g>>2]|0)+4>>2]|0)==(c[c[g>>2]>>2]|0)){s=c[
m>>2]|0;i=r;return s|0}c[l>>2]=c[c[g>>2]>>2];c[n>>2]=0;while(1){if((c[n>
x3e;2]|0)>>>0>=(c[l>>2]|0)>>>0)break;Jn(c[g>>2]|0,c[n>>2]|0);c[
n>>2]=(c[n>>2]|0)+1}s=c[m>>2]|0;i=r;return s|0}function In(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;l=i;i=i+32|0;e=l+24|0;m=l+20|0;j=l+16|0;k=l+12|0;f=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[m>>2]=b;c[j
x3e;>2]=0;c[k>>2]=0;c[f>>2]=c[(c[m>>2]|0)+8>>2];c[h>>2]=c[c[m>>
2]>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>
;>0)break;if(!(c[j>>2]|0)){m=c[f>>2]|0;c[f>>2]=m+1;c[k>>2]=d[m>>0];c[j>
;>2]=128}if(c[k>>2]&c[j>>2]|0)Jn(c[e>>2]|0,c[g>>2]|0);c[j>>2]=c[j>
;>2]>>1;c[g>>2]=(c[g>>2]|0)+1}i=l;return}function Jn(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;k=i;i=i+32|0;d=k+20|0;l=k+16|0;f=k+12|0;h=k+8|0;e=k+4|0;g=k;c[d>>2]=a;c[l>>2]=b;c[f>>
2]=(c[(c[d>>2]|0)+8>>2]|0)+((c[l>>2]|0)*28|0);if((c[l>>2]|0)>>>0>=(c
[c[d>>2]>>2]|0)>>>0){i=k;return}if(c[(c[f>>2]|0)+16>>2]&4|0){i=k;return
}l=(c[f>>2]|0)+16|0;c[l>>2]=c[l>>2]|4;c[h>>2]=c[(c[d>>2]|0)+16>>2];c
[e>>2]=c[(c[d>>2]|0)+4>>2];c[(c[f>>2]|0)+20>>2]=0;while(1){if((c[e>>
2]|0)>>>0<=0)break;c[g>>2]=c[c[h>>2]>>2];if(Kn(c[f>>2]|0,c[g>
x3e;2]|0)|0){j=6;break}c[e>>2]=(c[e>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+4}if((j|0)==6)c[(c[f
x3e;>2]|0)+20>>2]=c[g>>2];if((c[(c[d>>2]|0)+4>>2]|0)>>>0>=(c[c[
d>>2]>>2]|0)>>>0){i=k;return}j=c[f>>2]|0;a=(c[d>>2]|0)+4|0;l=c[a>>
;2]|0;c[a>>2]=l+1;c[(c[(c[d>>2]|0)+16>>2]|0)+(l<<2)>>2]=j;i=k;return}function
Kn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(((c[c[d>>2]>
;>2]|0)+(c[(c[d>>2]|0)+4>>2]|0)|0)<(c[c[e>>2]>>2]|0)){b=0;b=b&1;i=f;return
b|0}b=((c[c[e>>2]>>2]|0)+(c[(c[e>>2]|0)+4>>2]|0)|0)>=(c[c[d>>2]>>
;2]|0);b=b&1;i=f;return b|0}function Ln(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;o=i;i=i+48|0;d=o+32|0;
k=o+28|0;j=o+24|0;l=o+20|0;g=o+16|0;e=o+12|0;m=o+8|0;h=o+4|0;f=o;c[d>>2]=a;c[k>>2]=0;a:while(1){if((c[k>
;>2]|0)>>>0>=(c[(c[d>>2]|0)+4>>2]|0)>>>0){n=17;break}c[j>>
2]=c[(c[(c[d>>2]|0)+12>>2]|0)+(c[k>>2]<<3)>>2];b:do if(c[(c[(c[d>>2]|
0)+12>>2]|0)+(c[k>>2]<<3)+4>>2]|0){c[l>>2]=c[j>>2];c[g>>2]=
c[l>>2];c[e>>2]=c[l>>2];do{c[g>>2]=c[c[g>>2]>>2];if((c[g>>
2]|0)==(c[j>>2]|0)){n=30;break a}}while((c[(c[g>>2]|0)+36>>2]|0)==(c[(c[l>>2]|0)+36>
;>2]|0));b=c[(c[g>>2]|0)+4>>2]|0;c[l>>2]=b;c[j>>2]=b;while(1){c[e>>2]=c[l
>>2];do{c[e>>2]=c[(c[e>>2]|0)+4>>2];if((c[e>>2]|0)==(c[j>>2]|0))break
b}while((c[(c[e>>2]|0)+36>>2]|0)==(c[(c[l>>2]|0)+36>>2]|0));a=c[(c[e>>2]|0)+36
>>2]|0;b=c[(c[l>>2]|0)+36>>2]|0;if((c[(c[g>>2]|0)+36>>2]|0)<(c[(c[l>
x3e;2]|0)+36>>2]|0)){if((a|0)<(b|0))n=14}else if((a|0)>(b|0))n=14;if((n|0)==14)while(1){n=0;b=(c[l>>
;2]|0)+16|0;c[b>>2]=c[b>>2]|64;c[l>>2]=c[(c[l>>2]|0)+4>>2];if((c[l>>
2]|0)!=(c[e>>2]|0))n=14;else break}c[g>>2]=c[c[e>>2]>>2];c[l>>2]=c[e>>
;2]}}while(0);c[k>>2]=(c[k>>2]|0)+1}if((n|0)==17)c[k>>2]=0;c:while(1){if((n|0)==30)c[k>>
2]=(c[k>>2]|0)+1;if((c[k>>2]|0)>>>0>=(c[c[d>>2]>>2]|0)>>
x3e;0)break;c[m>>2]=(c[(c[d>>2]|0)+8>>2]|0)+((c[k>>2]|0)*48|0);c[h>>2]=c[m>
;>2];c[f>>2]=c[m>>2];if(c[(c[m>>2]|0)+16>>2]&64|0){while(1){c[h>>2]=
c[c[h>>2]>>2];if((c[h>>2]|0)==(c[m>>2]|0)){n=30;continue c}if((c[(c[h>>2]|0)+40
>>2]|0)!=(c[(c[m>>2]|0)+40>>2]|0))break}while(1){c[f>>2]=c[(c[f>>2]|0)+4>
x3e;2];if((c[f>>2]|0)==(c[m>>2]|0)){n=30;continue c}if((c[(c[f>>2]|0)+40>>2]|0)!=(c[(c[m
>>2]|0)+40>>2]|0))break}}if((c[(c[h>>2]|0)+40>>2]|0)<(c[(c[m>>2]|0)+40>
;>2]|0)?(c[(c[f>>2]|0)+40>>2]|0)>(c[(c[m>>2]|0)+40>>2]|0):0){n=(c[m>>
;2]|0)+16|0;c[n>>2]=c[n>>2]|128;n=30;continue}if((c[(c[h>>2]|0)+40>>2]|0)<=(c[(c[m
x3e;>2]|0)+40>>2]|0)){n=30;continue}if((c[(c[f>>2]|0)+40>>2]|0)>=(c[(c[m>>2]|0
)+40>>2]|0)){n=30;continue}n=(c[m>>2]|0)+16|0;c[n>>2]=c[n>>2]|256;n=30}i=o;return}function
Mn(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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0;j=l
;c[m>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=c[(c[m>>2]|0)+8>
;>2];c[j>>2]=c[c[m>>2]>>2];while(1){if((c[j>>2]|0)>>>0<=0)break
;Nn(c[k>>2]|0,c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);c[j>>2]=(c[j>>2]|0)+-1;
c[k>>2]=(c[k>>2]|0)+28}i=l;return}function Nn(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;E=i;i=i+96|0;B=E+88|0;k=E+84|0;l=E+80|0;m=E+76|0;p=E+72|0;u=E
+68|0;h=E+64|0;D=E+60|0;C=E+56|0;w=E+52|0;q=E+48|0;v=E+36|0;t=E+32|0;s=E+28|0;r=E+24|0;o=E+20|0;n=E+16|0;y=E+12|0;A=E+8|0;x=E+4|
0;z=E;c[B>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[p>>2]=(c[k>>2]|0)+4+((
c[l>>2]|0)*204|0);c[u>>2]=c[(c[p>>2]|0)+196>>2];c[h>>2]=c[(c[p>>2]|0
)+200>>2];if(c[(c[B>>2]|0)+16>>2]&8|0){i=E;return}b=Mb(c[c[B>>2]>>2]|0,c[
u>>2]|0)|0;c[D>>2]=b+(c[h>>2]|0);c[C>>2]=Mb(c[(c[B>>2]|0)+4>>2]|0,c[
u>>2]|0)|0;if(!((c[l>>2]|0)==0?!(a[(c[m>>2]|0)+120>>0]|0):0))j=4;do if((j|0)==4){if((c[l
>>2]|0)==1?(a[(c[m>>2]|0)+121>>0]|0)==0:0)break;if((c[l>>2]|0)==0?d[(c[m>>2]|0
)+122>>0]|0:0)h=1;else if((c[l>>2]|0)==1)h=(d[(c[m>>2]|0)+123>>0]|0)!=0;else h=0;c[w>
;>2]=h&1;j=c[C>>2]|0;c[q>>2]=j;c[(c[B>>2]|0)+12>>2]=j;c[v>>2]=0;c[v+
4>>2]=0;c[v+8>>2]=0;if((c[l>>2]|0)==1)On((c[k>>2]|0)+412|0,(c[c[B>>2]>>
;2]|0)+(c[(c[B>>2]|0)+4>>2]|0)|0,c[c[B>>2]>>2]|0,v);switch(c[v>>2]|0){case 1:{
c[(c[B>>2]|0)+8>>2]=(c[v+4>>2]|0)-(c[q>>2]|0);break}case 2:{c[(c[B>>2]|0)+8>
;>2]=c[v+8>>2];break}case 3:{c[(c[B>>2]|0)+8>>2]=c[v+8>>2];c[(c[B>>2]|0)+
12>>2]=(c[v+4>>2]|0)-(c[v+8>>2]|0);break}default:{c[t>>2]=c[(c[B>>2]|0)+20>
;>2];if(c[t>>2]|0){if(!(c[(c[t>>2]|0)+16>>2]&8))Nn(c[t>>2]|0,c[k>>2]|
0,c[l>>2]|0,c[m>>2]|0);c[s>>2]=(c[c[t>>2]>>2]|0)+(c[(c[t>>2]|0)+4>
;>2]>>1);c[r>>2]=(c[(c[t>>2]|0)+8>>2]|0)+(c[(c[t>>2]|0)+12>>2]
x3e;>1);c[o>>2]=(c[c[B>>2]>>2]|0)+(c[(c[B>>2]|0)+4>>2]>>1);c[n
x3e;>2]=Mb((c[o>>2]|0)-(c[s>>2]|0)|0,c[u>>2]|0)|0;c[D>>2]=(c[r>>2]|0)+(c[
n>>2]|0)-(c[C>>2]>>1)}c[(c[B>>2]|0)+8>>2]=c[D>>2];c[(c[B>>
2]|0)+12>>2]=c[q>>2];do if(a[(c[m>>2]|0)+124>>0]|0){if((c[C>>2]|0)>64){c[
C>>2]=Pn(c[p>>2]|0,c[C>>2]|0,0)|0;break}if((c[C>>2]|0)>=32){c[D>>2]=(c[D
x3e;>2]|0)+(c[C>>2]>>1)&-64;c[C>>2]=64;break}h=(c[D>>2]|0)+32&-64;if((c[C
>>2]|0)<=0){c[D>>2]=h;break}c[y>>2]=h;c[A>>2]=(c[D>>2]|0)+(c[C>>
;2]|0)+32&-64;c[x>>2]=(c[y>>2]|0)-(c[D>>2]|0);c[z>>2]=(c[A>>2]|0)-((c[D
x3e;>2]|0)+(c[C>>2]|0));if((c[x>>2]|0)<0)c[x>>2]=0-(c[x>>2]|0);if((c[z>
x3e;2]|0)<0)c[z>>2]=0-(c[z>>2]|0);if((c[x>>2]|0)<=(c[z>>2]|0)){c[D>>
2]=c[y>>2];break}else{c[D>>2]=c[A>>2];break}}while(0);A=(c[D>>2]|0)+(Qn(c[D>>2
]|0,c[C>>2]|0)|0)|0;c[(c[B>>2]|0)+8>>2]=A;c[(c[B>>2]|0)+12>>2]=c[C>>
2]}}a:do if(c[w>>2]|0){c[D>>2]=c[(c[B>>2]|0)+8>>2];c[C>>2]=c[(c[B>>2
]|0)+12>>2];if((c[C>>2]|0)<64)c[C>>2]=64;else c[C>>2]=(c[C>>2]|0)+32&
;-64;switch(c[v>>2]|0){case 3:break a;case 1:{c[(c[B>>2]|0)+8>>2]=(c[v+4>>2]|0)-(c[C>
;>2]|0);c[(c[B>>2]|0)+12>>2]=c[C>>2];break a}case 2:{c[(c[B>>2]|0)+12>>2]=
c[C>>2];break a}default:{c[(c[B>>2]|0)+12>>2]=c[C>>2];h=(c[D>>2]|0)+(c[C>
x3e;2]>>1)|0;if(c[C>>2]&64|0)c[D>>2]=(h&-64)+32;else c[D>>2]=h+32&-64;c[(
c[B>>2]|0)+8>>2]=(c[D>>2]|0)-(c[C>>2]>>1);c[(c[B>>2]|0)+12>>
;2]=c[C>>2];break a}}}while(0);D=(c[B>>2]|0)+16|0;c[D>>2]=c[D>>2]|8;i=E;return}while(0);
c[(c[B>>2]|0)+8>>2]=c[D>>2];c[(c[B>>2]|0)+12>>2]=c[C>>2];D=(c[B>
;>2]|0)+16|0;c[D>>2]=c[D>>2]|8;i=E;return}function On(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;r=i;i=i+48|0;g=r+32|0;h=r+28|0;j=r+24|0;k=r+20|0;o=r+16|0;l=r+12|0;m=r+8|0;p=r+4|0;n=r;c[g>
x3e;2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[c[k>>2]>>2]=0;c[n>>2]=d[(c[
g>>2]|0)+2080>>0];c[o>>2]=c[g>>2];c[l>>2]=c[c[o>>2]>>2];c[
p>>2]=(c[o>>2]|0)+4;while(1){if((c[l>>2]|0)>>>0<=0)break;c[m>>2]=(c[
h>>2]|0)-(c[(c[p>>2]|0)+12>>2]|0);if((c[m>>2]|0)<(0-(c[(c[g>>2]|0)+2076
x3e;>2]|0)|0))break;if((c[h>>2]|0)<=((c[(c[p>>2]|0)+8>>2]|0)+(c[(c[g>>2]|0)+2076
>>2]|0)|0)){q=5;break}c[l>>2]=(c[l>>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+32}do if((q|0
)==5){if((c[n>>2]|0)==0?(c[m>>2]|0)>(c[(c[g>>2]|0)+2072>>2]|0):0)break;q=c[k>
x3e;2]|0;c[q>>2]=c[q>>2]|1;c[(c[k>>2]|0)+4>>2]=c[(c[p>>2]|0)+16>>2]}
while(0);c[o>>2]=(c[g>>2]|0)+516;c[l>>2]=c[c[o>>2]>>2];c[p>>2]=(c[o
x3e;>2]|0)+4+(c[l>>2]<<5)+-32;while(1){if((c[l>>2]|0)>>>0<=0){q=17;break}
c[m>>2]=(c[(c[p>>2]|0)+8>>2]|0)-(c[j>>2]|0);if((c[m>>2]|0)<(0-(c[(c[g>
;>2]|0)+2076>>2]|0)|0)){q=17;break}if((c[j>>2]|0)>=((c[(c[p>>2]|0)+12>>2]|0)-(
c[(c[g>>2]|0)+2076>>2]|0)|0)){q=13;break}c[l>>2]=(c[l>>2]|0)+-1;c[p>>2]=(c[p
x3e;>2]|0)+-32}if((q|0)==13){if((c[n>>2]|0)==0?(c[m>>2]|0)>=(c[(c[g>>2]|0)+2072>>
;2]|0):0){i=r;return}q=c[k>>2]|0;c[q>>2]=c[q>>2]|2;c[(c[k>>2]|0)+8>>2]=c[(c[p
x3e;>2]|0)+16>>2];i=r;return}else if((q|0)==17){i=r;return}}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;k=i;i=i+16|0;f=k+8|0;g=k+4|0;h=k+12|0;j=k;c[f>>2]=b;c[g>>2]=d;a[h>>0]=e;do if((c[g>
x3e;2]|0)>64){c[j>>2]=(c[g>>2]|0)-(c[(c[f>>2]|0)+4+4>>2]|0);if((c[j>>2]|0
)<0)c[j>>2]=0-(c[j>>2]|0);if((c[j>>2]|0)<40){d=c[(c[f>>2]|0)+4+4>>2]|
0;c[g>>2]=d;c[g>>2]=(c[g>>2]|0)<48?48:d}f=c[g>>2]|0;if((c[g>>2]|0)>=
192){c[g>>2]=f+32&-64;break}c[j>>2]=f&63;c[g>>2]=c[g>>2]&-64;f=c[j>
x3e;2]|0;if((c[j>>2]|0)<10){c[g>>2]=(c[g>>2]|0)+f;break}if((f|0)<32){c[g>>2]=(
c[g>>2]|0)+10;break}if((c[j>>2]|0)<54){c[g>>2]=(c[g>>2]|0)+54;break}else{c[g>
x3e;2]=(c[g>>2]|0)+(c[j>>2]|0);break}}else c[g>>2]=64;while(0);if(!(a[h>>0]|0)){j=c[g>
;>2]|0;i=k;return j|0}c[g>>2]=(c[g>>2]|0)+32&-64;j=c[g>>2]|0;i=k;return j|0}function Qn(
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;d=g+16|0;j=g+12|0;h=g+8|0;e=g+4|0;f=g;c[j>>2]=a;c[h>>
;2]=b;c[e>>2]=((c[j>>2]|0)+32&-64)-(c[j>>2]|0);c[f>>2]=((c[j>>2]|0)+(c[h
x3e;>2]|0)+32&-64)-(c[j>>2]|0)-(c[h>>2]|0);b=c[e>>2]|0;a=c[f>>2]|0;if((((c[e
x3e;>2]|0)<0?0-b|0:b)|0)<=(((c[f>>2]|0)<0?0-a|0:a)|0)){c[d>>2]=c[e>>2];j=c[d
x3e;>2]|0;i=g;return j|0}else{c[d>>2]=c[f>>2];j=c[d>>2]|0;i=g;return j|0}return 0}function Rn
(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;s=i;i=i+80|0;d=s+64|0;v=s+60|0;q=s
+56|0;k=s+52|0;m=s+48|0;h=s+44|0;j=s+40|0;u=s+36|0;t=s+32|0;r=s+28|0;l=s+24|0;e=s+20|0;n=s+16|0;f=s+12|0;o=s+8|0;g=s+4|0;p=s;c[d
>>2]=a;c[v>>2]=b;c[q>>2]=(c[d>>2]|0)+28+((c[v>>2]|0)*40|0);c[k>>2]=c
[(c[(c[q>>2]|0)+32>>2]|0)+8>>2];c[m>>2]=c[c[(c[q>>2]|0)+32>>2]>
x3e;2];c[h>>2]=0;c[j>>2]=(c[v>>2]|0)==0?1:2;c[u>>2]=(c[(c[d>>2]|0)+24>>
;2]|0)+4+((c[v>>2]|0)*204|0);c[t>>2]=c[(c[u>>2]|0)+196>>2];a=Vb(32,c[t>>2]|0)|
0;c[r>>2]=a;c[r>>2]=(c[r>>2]|0)>30?30:a;a:do if((c[m>>2]|0)>>>0>
;1?(c[c[d>>2]>>2]|0)>>>0>0:0){if((c[(c[k>>2]|0)+12>>2]|0)>>
;>0>(c[c[d>>2]>>2]|0)>>>0)b=c[c[d>>2]>>2]|0;else b=c[(c[k>
x3e;2]|0)+12>>2]|0;c[h>>2]=b;c[k>>2]=(c[k>>2]|0)+16;while(1){if((c[m>>2]|0)>
;>>0<=1)break a;if((c[(c[k>>2]|0)+12>>2]|0)>>>0>(c[c[d>>2]>
;>2]|0)>>>0)b=c[c[d>>2]>>2]|0;else b=c[(c[k>>2]|0)+12>>2]|0;c[l>
;>2]=b;c[e>>2]=(c[l>>2]|0)-(c[h>>2]|0);if((c[e>>2]|0)>0){c[n>>2]=(c[(
c[d>>2]|0)+8>>2]|0)+((c[h>>2]|0)*48|0);Sn(c[q>>2]|0,c[k>>2]|0);Un(c[q>>
;2]|0,c[n>>2]|0,c[e>>2]|0,c[r>>2]|0,c[j>>2]|0)}c[h>>2]=c[l>>2];c[m
x3e;>2]=(c[m>>2]|0)+-1;c[k>>2]=(c[k>>2]|0)+16}}while(0);if((c[m>>2]|0)==1){c[f>
;>2]=c[c[d>>2]>>2];c[o>>2]=c[(c[d>>2]|0)+8>>2];Sn(c[q>>2]|0,c[(
c[(c[q>>2]|0)+32>>2]|0)+8>>2]|0);Un(c[q>>2]|0,c[o>>2]|0,c[f>>2]|0,c[
r>>2]|0,c[j>>2]|0)}c[g>>2]=c[c[d>>2]>>2];c[p>>2]=c[(c[d>>2
]|0)+8>>2];while(1){if((c[g>>2]|0)>>>0<=0)break;if(c[(c[p>>2]|0)+32>>
;2]|0?(c[(c[p>>2]|0)+16>>2]&16|0)==0:0){v=(c[p>>2]|0)+16|0;c[v>>2]=c[v>>2
]|16}c[g>>2]=(c[g>>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+48}i=s;return}function Sn(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;t=i;i=i+64|0;e=t+56|0;u=t+52|0;q=t+48|0;s=t+44|0;h=t+40|0
;o=t+36|0;p=t+32|0;f=t+28|0;j=t+24|0;g=t+20|0;m=t+16|0;n=t+12|0;k=t+8|0;l=t+4|0;r=t;c[e>>2]=a;c[u>>2]=b;c[q
x3e;>2]=0;c[s>>2]=0;c[h>>2]=c[(c[u>>2]|0)+8>>2];c[p>>2]=c[c[u>>
2]>>2];c[f>>2]=0;Tn(c[e>>2]|0);c[o>>2]=0;while(1){if((c[o>>2]|0)>>
x3e;0>=(c[p>>2]|0)>>>0)break;if(!(c[q>>2]|0)){u=c[h>>2]|0;c[h>>2]=u+
1;c[s>>2]=d[u>>0];c[q>>2]=128}if(((c[s>>2]&c[q>>2]|0?(c[j>>2]=(
c[(c[e>>2]|0)+8>>2]|0)+((c[o>>2]|0)*28|0),(c[(c[j>>2]|0)+16>>2]&4|0)==0):
0)?(c[g>>2]=0,(c[g>>2]|0)==0):0)?(u=(c[j>>2]|0)+16|0,c[u>>2]=c[u>>2]|4,(c[f>
;>2]|0)>>>0<(c[c[e>>2]>>2]|0)>>>0):0){a=c[j>>2]|0;u=c[f>
;>2]|0;c[f>>2]=u+1;c[(c[(c[e>>2]|0)+12>>2]|0)+(u<<2)>>2]=a}c[q>>
;2]=c[q>>2]>>1;c[o>>2]=(c[o>>2]|0)+1}c[(c[e>>2]|0)+4>>2]=c[f>
x3e;2];c[r>>2]=c[(c[e>>2]|0)+12>>2];c[m>>2]=1;while(1){if((c[m>>2]|0)>=(c
[f>>2]|0))break;c[k>>2]=c[(c[r>>2]|0)+(c[m>>2]<<2)>>2];c[n>>
;2]=(c[m>>2]|0)-1;while(1){if((c[n>>2]|0)<0)break;c[l>>2]=c[(c[r>>2]|0)+(c[n>
x3e;2]<<2)>>2];if((c[c[l>>2]>>2]|0)<(c[c[k>>2]>>2]|0))break;c[(
c[r>>2]|0)+((c[n>>2]|0)+1<<2)>>2]=c[l>>2];c[(c[r>>2]|0)+(c[n>
x3e;2]<<2)>>2]=c[k>>2];c[n>>2]=(c[n>>2]|0)+-1}c[m>>2]=(c[m>>
;2]|0)+1}i=t;return}function Tn(a){a=a|0;var b=0,d=0,e=0,f=0;e=i;i=i+16|0;f=e+8|0;b=e+4|0;d=e;c[f>>2]=a;c[b>>
;2]=c[c[f>>2]>>2];c[d>>2]=c[(c[f>>2]|0)+8>>2];while(1){if((c[b>>2]|0
)>>>0<=0)break;f=(c[d>>2]|0)+16|0;c[f>>2]=c[f>>2]&-5;c[(c[d>>2]|
0)+24>>2]=-1;c[b>>2]=(c[b>>2]|0)+-1;c[d>>2]=(c[d>>2]|0)+28}i=e;return}function
Un(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,x=0,y=0,z=0,A=0,B=0
,C=0,D=0,E=0,F=0,G=0;F=i;i=i+96|0;G=F+88|0;h=F+84|0;j=F+80|0;k=F+76|0;l=F+72|0;D=F+68|0;A=F+64|0;C=F+60|0;B=F+56|0;x=F+52|0;q=F+
48|0;m=F+44|0;y=F+40|0;r=F+36|0;n=F+32|0;z=F+28|0;w=F+24|0;v=F+20|0;s=F+16|0;o=F+12|0;t=F+8|0;p=F+4|0;u=F;c[G>>2]=b;c[
h>>2]=d;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[D>>2]=c[(c[G>>2]|0)+12>
x3e;2];c[A>>2]=c[(c[G>>2]|0)+4>>2];while(1){if((c[j>>2]|0)>>>0<=0)break
;c[C>>2]=0;c[B>>2]=c[(c[h>>2]|0)+36>>2];a:do if(!(c[(c[h>>2]|0)+16>>
2]&16)){do if((a[(c[h>>2]|0)+20>>0]|0)!=(c[l>>2]|0)?(a[(c[h>>2]|0)+20>>0]|
0)!=(0-(c[l>>2]|0)|0):0){if((a[(c[h>>2]|0)+21>>0]|0)!=(c[l>>2]|0)?(a[(c[h>>2]|
0)+21>>0]|0)!=(0-(c[l>>2]|0)|0):0)break;c[C>>2]=a[(c[h>>2]|0)+21>>0]}else E=6;
while(0);if((E|0)==6){E=0;c[C>>2]=a[(c[h>>2]|0)+20>>0]}if(c[C>>2]|0){if((c[C>>
2]|0)==(c[l>>2]|0)){c[x>>2]=0;while(1){if((c[x>>2]|0)>>>0>=(c[A>>2]|
0)>>>0)break a;c[q>>2]=c[(c[D>>2]|0)+(c[x>>2]<<2)>>2];c[m>
x3e;2]=(c[B>>2]|0)-(c[c[q>>2]>>2]|0);if((c[m>>2]|0)<(c[k>>2]|0)?(0-(c[m
x3e;>2]|0)|0)<(c[k>>2]|0):0)break;c[x>>2]=(c[x>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G
>>2]=c[G>>2]|16;G=(c[h>>2]|0)+16|0;c[G>>2]=c[G>>2]|512;c[(c[h>>2]|0)+
32>>2]=c[q>>2];break}if((c[C>>2]|0)!=(0-(c[l>>2]|0)|0))break;c[y>>2]=0;while(1
){if((c[y>>2]|0)>>>0>=(c[A>>2]|0)>>>0)break a;c[r>>2]=c[(c[D>
;>2]|0)+(c[y>>2]<<2)>>2];c[n>>2]=(c[B>>2]|0)-(c[c[r>>2]>
x3e;2]|0)-(c[(c[r>>2]|0)+4>>2]|0);if((c[n>>2]|0)<(c[k>>2]|0)?(0-(c[n>>2]|
0)|0)<(c[k>>2]|0):0)break;c[y>>2]=(c[y>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>2
]=c[G>>2]|16;G=(c[h>>2]|0)+16|0;c[G>>2]=c[G>>2]|1024;c[(c[h>>2]|0)+32>>
;2]=c[r>>2];break}if(c[(c[h>>2]|0)+16>>2]&64|0){if((c[l>>2]|0)==2){c[w>>2
]=128;c[v>>2]=256}else{c[w>>2]=256;c[v>>2]=128}b:do if(!(c[(c[h>>2]|0)+16>>2]
x26;c[w>>2]|0)){if(c[(c[h>>2]|0)+16>>2]&c[v>>2]|0){c[z>>2]=0;while(1){if((
c[z>>2]|0)>>>0>=(c[A>>2]|0)>>>0)break b;c[t>>2]=c[(c[D>>
;2]|0)+(c[z>>2]<<2)>>2];c[p>>2]=(c[B>>2]|0)-(c[c[t>>2]>>2]|
0)-(c[(c[t>>2]|0)+4>>2]|0);if((c[p>>2]|0)<(c[k>>2]|0)?(0-(c[p>>2]|0)|0)
x3c;(c[k>>2]|0):0)break;c[z>>2]=(c[z>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>2]=c[G
x3e;>2]|1024;c[(c[h>>2]|0)+32>>2]=c[t>>2];G=(c[h>>2]|0)+16|0;c[G>>2]=c[G
x3e;>2]|16}}else{c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[A>>2]|0)>
x3e;>0)break b;c[s>>2]=c[(c[D>>2]|0)+(c[z>>2]<<2)>>2];c[o>>2]=(
c[B>>2]|0)-(c[c[s>>2]>>2]|0);if((c[o>>2]|0)<(c[k>>2]|0)?(0-(c[o>>
;2]|0)|0)<(c[k>>2]|0):0)break;c[z>>2]=(c[z>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>
;2]=c[G>>2]|512;c[(c[h>>2]|0)+32>>2]=c[s>>2];G=(c[h>>2]|0)+16|0;c[G>>
;2]=c[G>>2]|16}while(0);if(!(c[(c[h>>2]|0)+32>>2]|0)){c[z>>2]=0;while(1){if((c[z>
x3e;2]|0)>>>0>=(c[A>>2]|0)>>>0)break a;c[u>>2]=c[(c[D>>2]|0)+(c
[z>>2]<<2)>>2];if((c[B>>2]|0)>=(c[c[u>>2]>>2]|0)?(c[B>>
;2]|0)<=((c[c[u>>2]>>2]|0)+(c[(c[u>>2]|0)+4>>2]|0)|0):0)break;c[z>>2]=(c[
z>>2]|0)+1}c[(c[h>>2]|0)+32>>2]=c[u>>2]}}}while(0);c[j>>2]=(c[j>>2]|
0)+-1;c[h>>2]=(c[h>>2]|0)+48}i=F;return}function Vn(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;q=i;i=i+48|0;f=q+36|0;r=q+32|0;m=q+28|0;o=q+24|0;k=q+20|0;g=q+16|0;l=q+12|0;n=q+8|0;h=q+4|0;j=q;c[f>>2]=b
;c[r>>2]=e;c[k>>2]=c[c[r>>2]>>2];c[l>>2]=c[(c[r>>2]|0)+8>>
2];while(1){if((c[k>>2]|0)>>>0<=0)break;if(!((((a[(c[l>>2]|0)+20>>0]|0)!=2?(a[(
c[l>>2]|0)+20>>0]|0)!=-2:0)?(a[(c[l>>2]|0)+21>>0]|0)!=2:0)?(a[(c[l>>2]|0)+21
x3e;>0]|0)!=-2:0))p=7;a:do if((p|0)==7?(p=0,(c[(c[l>>2]|0)+16>>2]&16|0)==0):0){c[n>>2]=c
[(c[l>>2]|0)+36>>2];c[m>>2]=c[f>>2];c[g>>2]=c[c[m>>2]>>2];
c[o>>2]=(c[m>>2]|0)+4;while(1){if((c[g>>2]|0)>>>0<=0)break;c[h>>2]=(
c[n>>2]|0)-(c[(c[o>>2]|0)+12>>2]|0);if((c[h>>2]|0)<(0-(c[(c[f>>2]|0)+2076
>>2]|0)|0))break;do if((c[n>>2]|0)<=((c[(c[o>>2]|0)+8>>2]|0)+(c[(c[f>>2]|
0)+2076>>2]|0)|0)){if((d[(c[f>>2]|0)+2080>>0]|0)==0?(c[h>>2]|0)>(c[(c[f>>
2]|0)+2072>>2]|0):0)break;c[(c[l>>2]|0)+44>>2]=c[(c[o>>2]|0)+24>>2];r=(c[l>
;>2]|0)+16|0;c[r>>2]=c[r>>2]|16;r=(c[l>>2]|0)+16|0;c[r>>2]=c[r>>2]|32}while
(0);c[g>>2]=(c[g>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+32}c[m>>2]=(c[f>>2]|0
)+516;c[g>>2]=c[c[m>>2]>>2];c[o>>2]=(c[m>>2]|0)+4+(c[g>>2]<<
;5)+-32;while(1){if((c[g>>2]|0)>>>0<=0)break a;c[j>>2]=(c[(c[o>>2]|0)+8>
x3e;2]|0)-(c[n>>2]|0);if((c[j>>2]|0)<(0-(c[(c[f>>2]|0)+2076>>2]|0)|0))break a;do if
((c[n>>2]|0)>=((c[(c[o>>2]|0)+12>>2]|0)-(c[(c[f>>2]|0)+2076>>2]|0)|0)){if
((d[(c[f>>2]|0)+2080>>0]|0)==0?(c[j>>2]|0)>=(c[(c[f>>2]|0)+2072>>2]|0):0)
break;c[(c[l>>2]|0)+44>>2]=c[(c[o>>2]|0)+28>>2];r=(c[l>>2]|0)+16|0;c[r>
x3e;2]=c[r>>2]|16;r=(c[l>>2]|0)+16|0;c[r>>2]=c[r>>2]|32}while(0);c[g>>2]=(c[g
x3e;>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+-32}}while(0);c[k>>2]=(c[k>>2]|0)+-1;c[l>>
;2]=(c[l>>2]|0)+48}i=q;return}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,l=0,m=0;j=i;i=i+32|0;k=j+28
|0;m=j+24|0;l=j+20|0;h=j+16|0;d=j+12|0;g=j+8|0;f=j+4|0;e=j;c[k>>2]=a;c[m>>2]=b;c[l>>2]=(c[(c[k>
;>2]|0)+24>>2]|0)+4+((c[m>>2]|0)*204|0);c[h>>2]=c[(c[l>>2]|0)+196>>2];c[d
>>2]=c[c[k>>2]>>2];c[g>>2]=c[(c[k>>2]|0)+8>>2];while(1){if((c[d>
;>2]|0)>>>0<=0)break;c[f>>2]=c[(c[g>>2]|0)+32>>2];if(c[f>>2]|0){
do if(!(c[(c[g>>2]|0)+16>>2]&512|0)){if(c[(c[g>>2]|0)+16>>2]&1024|0){c[(c[g>
;>2]|0)+44>>2]=(c[(c[f>>2]|0)+8>>2]|0)+(c[(c[f>>2]|0)+12>>2]|0);break}c[e
>>2]=(c[(c[g>>2]|0)+36>>2]|0)-(c[c[f>>2]>>2]|0);if((c[e>>2]|0)<=
0){m=c[(c[f>>2]|0)+8>>2]|0;m=m+(Mb(c[e>>2]|0,c[h>>2]|0)|0)|0;c[(c[g>>2]|0)+44
x3e;>2]=m;break}b=c[(c[f>>2]|0)+8>>2]|0;if((c[e>>2]|0)>=(c[(c[f>>2]|0)+4>
x3e;2]|0)){m=b+(c[(c[f>>2]|0)+12>>2]|0)|0;m=m+(Mb((c[e>>2]|0)-(c[(c[f>>2]|0)+4>>
;2]|0)|0,c[h>>2]|0)|0)|0;c[(c[g>>2]|0)+44>>2]=m;break}else{m=b+(xb(c[e>>2]|0,c[(c[f>
;>2]|0)+12>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0)|0;c[(c[g>>2]|0)+44>>2]=m;break
}}else c[(c[g>>2]|0)+44>>2]=c[(c[f>>2]|0)+8>>2];while(0);m=(c[g>>2]|0)+16|0;c[
m>>2]=c[m>>2]|32}c[d>>2]=(c[d>>2]|0)+-1;c[g>>2]=(c[g>>2]|0)+48}i=j;return
}function Xn(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;t=i;i=i+128|0;u=t+124|
0;w=t+120|0;v=t+116|0;p=t+112|0;k=t+108|0;q=t+104|0;r=t+40|0;m=t+36|0;g=t+32|0;o=t+28|0;n=t+24|0;e=t+20|0;f=t+16|0;j=t+12|0;h=t+
8|0;l=t+4|0;s=t;c[u>>2]=b;c[w>>2]=d;c[v>>2]=(c[(c[u>>2]|0)+24>>2]|0)+4+((c[w
x3e;>2]|0)*204|0);c[p>>2]=c[(c[v>>2]|0)+196>>2];c[k>>2]=c[(c[u>>2]|0)+16
x3e;>2];c[q>>2]=0;c[m>>2]=0;c[g>>2]=c[(c[u>>2]|0)+8>>2];c[o>>2]=(
c[g>>2]|0)+((c[c[u>>2]>>2]|0)*48|0);c[n>>2]=c[g>>2];while(1){if((c[n>>
;2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(c[(c[n>>2]|0)+16>>2]&
16|0)c[m>>2]=(c[m>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+48}if(!(c[m>>2]|0)){i=t;return}
if((c[m>>2]|0)>>>0>16){c[q>>2]=hc(c[k>>2]|0,4,0,c[m>>2]|0,0,e)|0;if(
c[e>>2]|0){i=t;return}}else c[q>>2]=r;c[m>>2]=0;c[n>>2]=c[g>>2];while(1){if((c
[n>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(c[(c[n>>2]|0)+16>
x3e;2]&16|0){c[f>>2]=(c[q>>2]|0)+(c[m>>2]<<2);while(1){if((c[f>>2]|0)>
;>>0<=(c[q>>2]|0)>>>0)break;if((c[(c[(c[f>>2]|0)+-4>>2]|0)+36>
x3e;2]|0)<=(c[(c[n>>2]|0)+36>>2]|0))break;c[c[f>>2]>>2]=c[(c[f>>2]|0)+-4
x3e;>2];c[f>>2]=(c[f>>2]|0)+-4}c[c[f>>2]>>2]=c[n>>2];c[m>>2]=(c
[m>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+48}c[n>>2]=c[g>>2];while(1){if((c[n>>
;2]|0)>>>0>=(c[o>>2]|0)>>>0)break;do if(!(c[(c[n>>2]|0)+16>>2]
x26;16)){if(c[(c[n>>2]|0)+12>>2]&2|0){if((a[(c[n>>2]|0)+20>>0]|0)==4)break;if((a[(c
[n>>2]|0)+20>>0]|0)!=(a[(c[n>>2]|0)+21>>0]|0))break;if((c[(c[n>>2]|0)+16>
x3e;2]&64|0)==0?(c[(c[n>>2]|0)+12>>2]&4|0)==0:0)break;w=(c[n>>2]|0)+12|0;c[w>>
2]=c[w>>2]&-3}c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[m>>2]|0
)>>>0)break;if((c[(c[(c[q>>2]|0)+(c[l>>2]<<2)>>2]|0)+36>>2]|0)
x3e;(c[(c[n>>2]|0)+36>>2]|0))break;c[l>>2]=(c[l>>2]|0)+1}do if(c[l>>2]|0){c[j
x3e;>2]=c[(c[q>>2]|0)+((c[l>>2]|0)-1<<2)>>2];c[l>>2]=c[m>>2];while
(1){if((c[l>>2]|0)>>>0<=0)break;if((c[(c[(c[q>>2]|0)+((c[l>>2]|0)-1<<
;2)>>2]|0)+36>>2]|0)<(c[(c[n>>2]|0)+36>>2]|0))break;c[l>>2]=(c[l>>
;2]|0)+-1}d=c[l>>2]|0;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=c[(c[q>>2]|0)+(d-1
x3c;<2)>>2];w=c[(c[j>>2]|0)+44>>2]|0;w=w+(Mb((c[(c[n>>2]|0)+36>>2]|0)-(c[(
c[j>>2]|0)+36>>2]|0)|0,c[p>>2]|0)|0)|0;c[(c[n>>2]|0)+44>>2]=w;break}c[h>
x3e;2]=c[(c[q>>2]|0)+(d<<2)>>2];c[s>>2]=c[(c[n>>2]|0)+36>>2];if((c[s
>>2]|0)==(c[(c[j>>2]|0)+36>>2]|0)){c[(c[n>>2]|0)+44>>2]=c[(c[j>>2]|0
)+44>>2];break}if((c[s>>2]|0)==(c[(c[h>>2]|0)+36>>2]|0)){c[(c[n>>2]|0)+44>
;>2]=c[(c[h>>2]|0)+44>>2];break}else{w=c[(c[j>>2]|0)+44>>2]|0;w=w+(xb((c[s>>
;2]|0)-(c[(c[j>>2]|0)+36>>2]|0)|0,(c[(c[h>>2]|0)+44>>2]|0)-(c[(c[j>>2]|0)+44
x3e;>2]|0)|0,(c[(c[h>>2]|0)+36>>2]|0)-(c[(c[j>>2]|0)+36>>2]|0)|0)|0)|0;c[(c[n>
x3e;2]|0)+44>>2]=w;break}}else{c[h>>2]=c[c[q>>2]>>2];w=c[(c[h>>2]|0)+44>
x3e;2]|0;w=w+(Mb((c[(c[n>>2]|0)+36>>2]|0)-(c[(c[h>>2]|0)+36>>2]|0)|0,c[p>>2]|0
)|0)|0;c[(c[n>>2]|0)+44>>2]=w}while(0);w=(c[n>>2]|0)+16|0;c[w>>2]=c[w>>2]|32}while
(0);c[n>>2]=(c[n>>2]|0)+48}if((c[q>>2]|0)==(r|0)){i=t;return}Fb(c[k>>2]|0,c[q>>
;2]|0);c[q>>2]=0;i=t;return}function Yn(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;v=i;i=i+80|0;w=v+76|0;y=v+72|0;x=v+68|0;s=v+64|0;h=v+60|0;d=v+56|0;m=v+52|0;u=v+48|0;j=v+44|0;l=v+40|
0;r=v+36|0;k=v+32|0;n=v+28|0;o=v+24|0;e=v+20|0;f=v+16|0;q=v+12|0;p=v+8|0;g=v+4|0;t=v;c[w>>2]=a;c[y>>2]=b;c[x
>>2]=(c[(c[w>>2]|0)+24>>2]|0)+4+((c[y>>2]|0)*204|0);c[s>>2]=c[(c[x>>
2]|0)+196>>2];c[h>>2]=c[(c[x>>2]|0)+200>>2];c[d>>2]=c[(c[w>>2]|0)+12
>>2];c[m>>2]=c[(c[w>>2]|0)+4>>2];while(1){if((c[m>>2]|0)>>>0<
;=0)break;c[u>>2]=c[c[d>>2]>>2];c[l>>2]=(c[u>>2]|0)+((c[(c[d>>2]|0)+
4>>2]|0)*48|0);c[k>>2]=0;c[j>>2]=0;c[r>>2]=c[u>>2];while(1){if((c[r>>
;2]|0)>>>0>=(c[l>>2]|0)>>>0)break;if(c[(c[r>>2]|0)+16>>2]&
32|0){if(!(c[j>>2]|0))c[j>>2]=c[r>>2];c[k>>2]=(c[k>>2]|0)+1}c[r>>2]=(
c[r>>2]|0)+48}a:do if((c[k>>2]|0)>>>0<2){if((c[k>>2]|0)==1){y=c[(c[j>>
;2]|0)+44>>2]|0;c[h>>2]=y-(Mb(c[(c[j>>2]|0)+36>>2]|0,c[s>>2]|0)|0)}c[r>
x3e;2]=c[u>>2];while(1){if((c[r>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break
a;if((c[r>>2]|0)!=(c[j>>2]|0)){y=Mb(c[(c[r>>2]|0)+36>>2]|0,c[s>>2]|0)|0;c[(c[
r>>2]|0)+44>>2]=y+(c[h>>2]|0)}c[r>>2]=(c[r>>2]|0)+48}}else{c[u>>2]=c
[j>>2];do{c[r>>2]=c[j>>2];while(1){c[l>>2]=c[(c[j>>2]|0)+4>>2];if((c
[l>>2]|0)==(c[u>>2]|0))break a;if(!(c[(c[l>>2]|0)+16>>2]&32))break;c[j>>2
]=c[l>>2]}do c[l>>2]=c[(c[l>>2]|0)+4>>2];while(!(c[(c[l>>2]|0)+16>>2
]&32|0));if((c[(c[j>>2]|0)+36>>2]|0)<=(c[(c[l>>2]|0)+36>>2]|0)){c[n>>
;2]=c[(c[j>>2]|0)+36>>2];c[e>>2]=c[(c[j>>2]|0)+44>>2];c[o>>2]=(c[(c[
l>>2]|0)+36>>2]|0)-(c[n>>2]|0);c[f>>2]=(c[(c[l>>2]|0)+44>>2]|0)-(c[e
>>2]|0)}else{c[n>>2]=c[(c[l>>2]|0)+36>>2];c[e>>2]=c[(c[l>>2]|0)+44
x3e;>2];c[o>>2]=(c[(c[j>>2]|0)+36>>2]|0)-(c[n>>2]|0);c[f>>2]=(c[(c[j>
;>2]|0)+44>>2]|0)-(c[e>>2]|0)}c[t>>2]=65536;if((c[o>>2]|0)>0)c[t>>2]=
Vb(c[f>>2]|0,c[o>>2]|0)|0;c[r>>2]=c[(c[j>>2]|0)+4>>2];do{c[q>>2]=c[(
c[r>>2]|0)+36>>2];c[p>>2]=(c[q>>2]|0)-(c[n>>2]|0);do if((c[p>>2]|0)
x3e;0){b=c[e>>2]|0;if((c[p>>2]|0)>=(c[o>>2]|0)){y=b+(c[f>>2]|0)|0;c[g>>2]=
y+(Mb((c[p>>2]|0)-(c[o>>2]|0)|0,c[s>>2]|0)|0);break}else{c[g>>2]=b+(Mb(c[p>>2]|
0,c[t>>2]|0)|0);break}}else{y=c[e>>2]|0;c[g>>2]=y+(Mb(c[p>>2]|0,c[s>>2]|0)|0)}
while(0);c[(c[r>>2]|0)+44>>2]=c[g>>2];c[r>>2]=c[(c[r>>2]|0)+4>>2]}while
((c[r>>2]|0)!=(c[l>>2]|0));c[j>>2]=c[l>>2]}while((c[j>>2]|0)!=(c[u>>
2]|0))}while(0);c[m>>2]=(c[m>>2]|0)+-1;c[d>>2]=(c[d>>2]|0)+8}i=v;return}function Zn(b,d){
b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0;j=l;c[e>>2]=b;c[f
x3e;>2]=d;c[h>>2]=c[(c[e>>2]|0)+8>>2];c[k>>2]=c[(c[(c[e>>2]|0)+20>
x3e;2]|0)+4>>2];c[j>>2]=c[(c[(c[e>>2]|0)+20>>2]|0)+8>>2];c[g>>2]=0;while
(1){if((c[g>>2]|0)>>>0>=(c[c[e>>2]>>2]|0)>>>0)break;d=c[(c[h>
;>2]|0)+44>>2]|0;b=(c[k>>2]|0)+(c[g>>2]<<3)|0;if(!(c[f>>2]|0))c[b>
x3e;2]=d;else c[b+4>>2]=d;if(c[(c[h>>2]|0)+16>>2]&16|0){b=(c[j>>2]|0)+(c[g>>
;2]|0)|0;a[b>>0]=a[b>>0]|(((c[f>>2]|0)==0?32:64)&255)<<24>>24}c[h>
x3e;2]=(c[h>>2]|0)+48;c[g>>2]=(c[g>>2]|0)+1}i=l;return}function _n(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]|0)+16>>2];$n((c[d>>2]|0)+28+40
|0,c[e>>2]|0);$n((c[d>>2]|0)+28|0,c[e>>2]|0);Fb(c[e>>2]|0,c[(c[d>>2]|0)+8>
;>2]|0);c[(c[d>>2]|0)+8>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+12>>2]|0);c[(c[d
>>2]|0)+12>>2]=0;c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>
x3e;2]|0)+16>>2]=0;i=b;return}function $n(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2
]=0;c[(c[e>>2]|0)+20>>2]=0;c[(c[e>>2]|0)+28>>2]=0;Fb(c[f>>2]|0,c[(c[e>>
;2]|0)+12>>2]|0);c[(c[e>>2]|0)+12>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>
;2]|0);c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[c[e>>2]>>2]=0;c
[(c[e>>2]|0)+16>>2]=0;i=d;return}function ao(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;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c
[a+20>>2]=0;c[a+24>>2]=0;c[(c[d>>2]|0)+4>>2]=38;c[(c[d>>2]|0)+8>>2]=
108;c[(c[d>>2]|0)+12>>2]=11;c[(c[d>>2]|0)+16>>2]=12;c[(c[d>>2]|0)+20>>
;2]=15;c[(c[d>>2]|0)+24>>2]=24;i=b;return}function bo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2
]=a;dn(c[d>>2]|0,2);i=b;return}function co(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;o=
i;i=i+160|0;f=o+156|0;g=o+152|0;h=o+148|0;j=o+144|0;l=o+16|0;n=o+8|0;k=o+4|0;m=o;c[f>>2]=a;c[g>>2]=b;c[h>
;>2]=d;c[j>>2]=e;c[m>>2]=c[h>>2];c[n>>2]=0;while(1){if((c[m>>2]|0)<=
0)break;a=c[m>>2]|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>16?16:a;c[k>>2]=0;while
(1){if((c[k>>2]|0)>=(c[h>>2]<<1|0))break;c[n>>2]=(c[n>>2]|0)+(c[(c[j>
;>2]|0)+(c[k>>2]<<2)>>2]|0);a=(Tb(c[n>>2]|0)|0)>>16;c[l+(c[k>>2
]<<2)>>2]=a;c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)
x3e;=(c[h>>2]<<1|0))break;c[l+((c[k>>2]|0)+1<<2)>>2]=(c[l+((c[k>>2]|
0)+1<<2)>>2]|0)-(c[l+(c[k>>2]<<2)>>2]|0);c[k>>2]=(c[k>>2]|
0)+2}pn(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,l);c[m>>2]=(c[m>>2]|0)-(c[h>>2
]|0)}i=o;return}function eo(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;p=i;i=i+48|0;f=p+32|0;g
=p+28|0;h=p+24|0;j=p+20|0;n=p+16|0;m=p+12|0;o=p+8|0;k=p+4|0;l=p;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j
x3e;>2]=e;if(c[(c[f>>2]|0)+4>>2]|0){i=p;return}c[m>>2]=(c[f>>2]|0)+16;c[o>>
;2]=c[c[f>>2]>>2];c[k>>2]=c[c[m>>2]>>2];c[l>>2]=c[(c[m>>2]|
0)+36>>2];if((c[h>>2]|0)!=((c[k>>2]|0)+(c[l>>2]|0)|0)){i=p;return}c[n>>2]=fo(c
[m>>2]|0,c[j>>2]|0,c[l>>2]|0,c[k>>2]|0,c[g>>2]|0,c[o>>2]|0)|0;if((c[
n>>2]|0)==0?(c[n>>2]=fo((c[m>>2]|0)+36|0,c[j>>2]|0,0,c[l>>2]|0,c[g>>
2]|0,c[o>>2]|0)|0,(c[n>>2]|0)==0):0){i=p;return}c[(c[f>>2]|0)+4>>2]=c[n>>2];i=
p;return}function fo(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;o=i;i=i+32|0;h=o+24|0;
j=o+20|0;k=o+16|0;l=o+12|0;p=o+8|0;m=o+4|0;n=o;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c
[p>>2]=f;c[m>>2]=g;c[n>>2]=0;c[n>>2]=Bn(c[h>>2]|0,c[p>>2]|0,c[m>
;>2]|0)|0;if(c[n>>2]|0){p=c[n>>2]|0;i=o;return p|0}c[n>>2]=go((c[h>>2]|0)+12|0,c[j
x3e;>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;p=c[n>>2]|0;i=o;return p|0}function go(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;u=i;i=i+48|0;v=u+44|0;j=u+40|0;k
=u+36|0;l=u+32|0;m=u+28|0;n=u+24|0;o=u+20|0;p=u+16|0;q=u+12|0;t=u+8|0;s=u+4|0;r=u;c[v>>2]=b;c[j>>2]=e;c[k>
;>2]=f;c[l>>2]=g;c[m>>2]=h;c[n>>2]=0;c[n>>2]=tn(c[v>>2]|0,c[m>>
2]|0,o)|0;if(c[n>>2]|0){v=c[n>>2]|0;i=u;return v|0}c[n>>2]=mn(c[o>>2]|0,c[l>>2
]|0,c[m>>2]|0)|0;if(c[n>>2]|0){v=c[n>>2]|0;i=u;return v|0}c[c[o>>2]>>2]=c[l>
;>2];c[p>>2]=(c[j>>2]|0)+((c[k>>2]|0)>>>3);c[q>>2]=128>>(c
[k>>2]&7);c[t>>2]=c[(c[o>>2]|0)+8>>2];c[s>>2]=128;while(1){if((c[l>
x3e;2]|0)>>>0<=0)break;c[r>>2]=(d[c[t>>2]>>0]|0)&~c[s>>2];if((d
[c[p>>2]>>0]|0)&c[q>>2]|0)c[r>>2]=c[r>>2]|c[s>>2];a[c[t>
x3e;2]>>0]=c[r>>2];c[q>>2]=c[q>>2]>>1;if(!(c[q>>2]|0)){c[p>>
;2]=(c[p>>2]|0)+1;c[q>>2]=128}c[s>>2]=c[s>>2]>>1;if(!(c[s>>2]|0)){c[
t>>2]=(c[t>>2]|0)+1;c[s>>2]=128}c[l>>2]=(c[l>>2]|0)+-1}v=c[n>>2]|0;i
=u;return v|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,m=0,n=0;n=i;i=i+32|0;e=n+28|0;f=n+24|0;g=n+20
|0;l=n+16|0;k=n+12|0;m=n+8|0;h=n+4|0;j=n;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[(c[e>>2]|0)+
4>>2]|0){i=n;return}c[k>>2]=(c[e>>2]|0)+16;c[m>>2]=c[c[e>>2]>>2];c[h
>>2]=c[c[k>>2]>>2];c[j>>2]=c[(c[k>>2]|0)+36>>2];if((c[f>>2
]|0)!=((c[h>>2]|0)+(c[j>>2]|0)|0)){i=n;return}c[l>>2]=fo(c[k>>2]|0,c[g>>2]|0,0
,c[h>>2]|0,0,c[m>>2]|0)|0;if((c[l>>2]|0)==0?(c[l>>2]=fo((c[k>>2]|0)+36|0,c[g
x3e;>2]|0,c[h>>2]|0,c[j>>2]|0,0,c[m>>2]|0)|0,(c[l>>2]|0)==0):0){i=n;return}c[(c[e
x3e;>2]|0)+4>>2]=c[l>>2];i=n;return}function io(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)+120>>2]=0;c[(c[d>>2]|0)+148>>2]=0;jo((c[d>>2]|0)+20|0);i=b;return
}function jo(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]>
x3e;2];ko((c[d>>2]|0)+16|0,c[e>>2]|0);ko((c[d>>2]|0)+16+36|0,c[e>>2]|0);c[(c[d>>
;2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;i=b;return}function ko(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;lo((c[f>>2]|0)+24|0,c[e>>2]|0);lo((c[f>>2]|0
)+12|0,c[e>>2]|0);no(c[f>>2]|0,c[e>>2]|0);i=d;return}function lo(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|
0)+4>>2];c[g>>2]=c[(c[d>>2]|0)+8>>2];while(1){if((c[f>>2]|0)>>>
0<=0)break;mo(c[g>>2]|0,c[e>>2]|0);c[f>>2]=(c[f>>2]|0)+-1;c[g>>2]=(c[g>
;>2]|0)+16}Fb(c[e>>2]|0,c[(c[d>>2]|0)+8>>2]|0);c[(c[d>>2]|0)+8>>2]=0;c[c[
d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;i=h;return}function mo(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>2
]|0);c[(c[e>>2]|0)+8>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[(
c[e>>2]|0)+12>>2]=0;i=d;return}function no(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>2]|0);c[(c[e>>2]|0)+8>
;>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;i=d;return}function oo(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;
c[c[e>>2]>>2]=0;c[g>>2]=bc(c[d>>2]|0,24,f)|0;if(c[f>>2]|0){g=c[f>>2]|
0;i=h;return g|0}c[(c[g>>2]|0)+8>>2]=c[d>>2];po(c[g>>2]|0);c[c[e>>2]>>
;2]=c[g>>2];g=c[f>>2]|0;i=h;return g|0}function po(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a
;c[d>>2]=c[d>>2];i=b;return}function qo(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;e=j+12
|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(!(c[e>>2]|0)){i=j;return}if((c[f
>>2]|0)!=0&(c[g>>2]|0)>=3076){c[h>>2]=c[f>>2];c[c[e>>2]>>2
]=(c[f>>2]|0)+1032;c[(c[e>>2]|0)+4>>2]=(c[f>>2]|0)+(c[g>>2]|0)-(c[c[e>>
;2]>>2]|0);c[(c[e>>2]|0)+12>>2]=c[h>>2];i=j;return}else{c[c[e>>2]>>2
]=0;c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+12>>2]=0;i=j;return}}function ro(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;c[h
x3e;>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>>2];i=e;return}function so(a,
d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l+20|0;e=l+16|0;j=l+12|0;f=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c
[j>>2]=d;c[f>>2]=c[(c[j>>2]|0)+4>>2];c[g>>2]=c[c[j>>2]>>2];
if((c[e>>2]|0?c[c[e>>2]>>2]|0:0)?c[(c[e>>2]|0)+4>>2]|0:0){if(!(c[f>>
2]|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}if(b[(c[f>>2]|0)+2>>1]|0?(b[c[f>>
2]>>1]|0)>0:0){if(c[(c[f>>2]|0)+12>>2]|0?c[(c[f>>2]|0)+4>>2]|0:0){if((b[(
c[f>>2]|0)+2>>1]|0)!=((b[(c[(c[f>>2]|0)+12>>2]|0)+((b[c[f>>2]>>1]|0)-
1<<1)>>1]|0)+1|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}c[h>>2]=c[(c[e>
x3e;2]|0)+12>>2];if(c[(c[j>>2]|0)+8>>2]&2|0){c[k>>2]=19;k=c[k>>2]|0;i=l;return
k|0}if(!(c[g>>2]|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}if(c[(c[g>>2]|0)+4>>
;2]|0?c[c[g>>2]>>2]|0:0){if(!(c[(c[g>>2]|0)+12>>2]|0)){c[k>>2]=20;k=c[k>
x3e;2]|0;i=l;return k|0}a=(c[h>>2]|0)+128|0;d=c[f>>2]|0;c[a>>2]=c[d>>2];c[a+4>>
;2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];c[a+16>>2]=c
[d+16>>2];a=(c[h>>2]|0)+104|0;g=c[g>>2]|0;c[a>>2]=c[g>>2];c[a+4>>2]=
c[g+4>>2];c[a+8>>2]=c[g+8>>2];c[a+12>>2]=c[g+12>>2];c[a+16>>2]=c[g+16
>>2];c[a+20>>2]=c[g+20>>2];c[(c[h>>2]|0)+28>>2]=c[c[e>>2]>>
;2];c[(c[h>>2]|0)+32>>2]=(c[(c[h>>2]|0)+28>>2]|0)+((((c[(c[e>>2]|0)+4>>
;2]|0)>>>0)/4|0)<<2);e=c[h>>2]|0;if(c[(c[j>>2]|0)+8>>2]&1|0)e=to(e)|
0;else e=uo(e)|0;c[k>>2]=e;k=c[k>>2]|0;i=l;return k|0}c[k>>2]=0;k=c[k>>2]|0;i=l;return k
|0}c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}c[k>>2]=0;k=c[k>>2]|0;i=l;return k|0}c[k>
x3e;2]=96;k=c[k>>2]|0;i=l;return k|0}function to(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>
x3e;2]=c[d>>2];i=b;return 19}function uo(e){e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;g=k+8|0;h=k+4|0;j=k;c[h>
x3e;2]=e;vo(c[h>>2]|0,c[(c[h>>2]|0)+128+16>>2]&256);c[(c[h>>2]|0)+24>>2]=
c[(c[h>>2]|0)+12>>2];e=c[h>>2]|0;if(!(c[(c[h>>2]|0)+128+16>>2]&8|0)){f=(c
[h>>2]|0)+180|0;if(c[e+128+16>>2]&16|0)a[f>>0]=4;else a[f>>0]=0;if(!(c[(c[h>
x3e;2]|0)+128+16>>2]&32)){f=(c[h>>2]|0)+180|0;a[f>>0]=(d[f>>0]|0)+1}}else a[e+180
x3e;>0]=2;a[(c[h>>2]|0)+181>>0]=((c[(c[h>>2]|0)+128+16>>2]&512|0)!=0^1)&1
;c[(c[h>>2]|0)+164>>2]=16;c[(c[h>>2]|0)+168>>2]=1;c[(c[h>>2]|0)+172>>
;2]=2;c[(c[h>>2]|0)+176>>2]=39;c[(c[h>>2]|0)+1024>>2]=0;b[(c[h>>2]|0)+960>
;>1]=0;b[(c[h>>2]|0)+960+2>>1]=(c[(c[h>>2]|0)+104>>2]|0)-1;b[(c[h>>2]|0)+
56>>1]=c[(c[h>>2]|0)+104+4>>2];c[(c[h>>2]|0)+60>>2]=c[(c[h>>2]|0)+104
+12>>2];f=Ao(c[h>>2]|0,0)|0;c[j>>2]=f;if(f|0){c[g>>2]=c[j>>2];j=c[g>>
;2]|0;i=k;return j|0}if((a[(c[h>>2]|0)+181>>0]|0?(d[(c[h>>2]|0)+180>>0]|0)!=2:0)?(c[(c[h
>>2]|0)+164>>2]=17,c[(c[h>>2]|0)+168>>2]=3,c[(c[h>>2]|0)+172>>2]=4,c
[(c[h>>2]|0)+176>>2]=40,c[(c[h>>2]|0)+1024>>2]=0,b[(c[h>>2]|0)+960>>
1]=0,b[(c[h>>2]|0)+960+2>>1]=(c[(c[h>>2]|0)+104+4>>2]|0)-1,h=Ao(c[h>>2]|0,1)|0
,c[j>>2]=h,h|0):0){c[g>>2]=c[j>>2];j=c[g>>2]|0;i=k;return j|0}c[g>>2]=0;j=c[g
x3e;>2]|0;i=k;return j|0}function vo(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;b=c[d>>2]|0;if(c[f>>2]|0){c[b>>2]=12;c[(c[d>>2]|0)+16>>2]=256;c[(c
[d>>2]|0)+20>>2]=50}else{c[b>>2]=6;c[(c[d>>2]|0)+16>>2]=32;c[(c[d>>2
]|0)+20>>2]=2}c[(c[d>>2]|0)+4>>2]=1<<c[c[d>>2]>>2];c[(c[d>>
;2]|0)+8>>2]=(c[(c[d>>2]|0)+4>>2]|0)/2|0;c[(c[d>>2]|0)+12>>2]=(c[c[d>>
;2]>>2]|0)-6;i=e;return}function wo(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;h=i;i=i+16|0;f=h+12|0;j=h+8|0;k=h
+4|0;g=h;c[f>>2]=a;c[j>>2]=d;c[k>>2]=e;c[g>>2]=c[(c[f>>2]|0)+104+8>>
2];c[k>>2]=c[k>>2];b[(c[f>>2]|0)+156>>1]=0-(c[g>>2]|0);a=_(0-(b[c[j>>
;2]>>1]|0)|0,c[g>>2]|0)|0;c[(c[f>>2]|0)+148>>2]=a;if((c[g>>2]|0)<=0){k=c[
f>>2]|0;k=k+158|0;b[k>>1]=0;k=c[f>>2]|0;k=k+160|0;b[k>>1]=0;i=h;return}j=_((c[(c[f>
x3e;2]|0)+104>>2]|0)-1|0,c[g>>2]|0)|0;k=(c[f>>2]|0)+148|0;c[k>>2]=(c[k>>2]|0)+
j;k=c[f>>2]|0;k=k+158|0;b[k>>1]=0;k=c[f>>2]|0;k=k+160|0;b[k>>1]=0;i=h;return}function xo
(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;v=i;i=i+48|0;m=v+36
|0;z=v+40|0;w=v+32|0;n=v+28|0;y=v+24|0;x=v+20|0;p=v+16|0;q=v+12|0;o=v+8|0;s=v+4|0;r=v+43|0;t=v+42|0;u=v;c[m>>2]=f;b[z
x3e;>1]=g;c[w>>2]=h;c[n>>2]=j;c[y>>2]=k;c[x>>2]=l;b[z>>1]=b[z>>
1]|0;c[y>>2]=c[y>>2];c[x>>2]=c[x>>2];c[p>>2]=((c[w>>2]|0)+(c[(c[m>
;>2]|0)+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>2]|0))>>c[c[m>>2]>>
2];if(((c[n>>2]|0)-(c[w>>2]|0)-(c[(c[m>>2]|0)+4>>2]|0)|0)<=(c[(c[m>>2]|0)+
20>>2]|0))c[q>>2]=c[p>>2];else c[q>>2]=(c[n>>2]&0-(c[(c[m>>2]|0
)+4>>2]|0))>>c[c[m>>2]>>2];if((c[q>>2]|0)<0){i=v;return}if((c[p>>
;2]|0)>=(e[(c[m>>2]|0)+56>>1]|0)){i=v;return}if((c[p>>2]|0)<0)c[p>>2]=0;if((c[
q>>2]|0)>=(e[(c[m>>2]|0)+56>>1]|0))c[q>>2]=(e[(c[m>>2]|0)+56>>1
]|0)-1;c[o>>2]=(c[p>>2]>>3&65535)<<16>>16;c[s>>2]=(c[q>>
;2]>>3&65535)<<16>>16;a[r>>0]=255>>(c[p>>2]&7);a[t>
x3e;0]=~(127>>(c[q>>2]&7));if((b[(c[m>>2]|0)+158>>1]|0)>(c[o>>2]|0))
b[(c[m>>2]|0)+158>>1]=c[o>>2];if((b[(c[m>>2]|0)+160>>1]|0)<(c[s>>
;2]|0))b[(c[m>>2]|0)+160>>1]=c[s>>2];c[u>>2]=(c[(c[m>>2]|0)+60>>2]|0
)+(c[(c[m>>2]|0)+148>>2]|0)+(c[o>>2]|0);c[s>>2]=(c[s>>2]|0)-(c[o>>2]|
0);m=d[r>>0]|0;if((c[s>>2]|0)<=0){z=c[u>>2]|0;a[z>>0]=d[z>>0]|m&d[t
x3e;>0];i=v;return}z=c[u>>2]|0;a[z>>0]=d[z>>0]|m;c[s>>2]=(c[s>>2]|0)+-1;while
(1){if((c[s>>2]|0)<=0)break;z=(c[u>>2]|0)+1|0;c[u>>2]=z;a[z>>0]=-1;c[s>>2
]=(c[s>>2]|0)+-1}z=(c[u>>2]|0)+1|0;a[z>>0]=d[z>>0]|d[t>>0];i=v;return}function
yo(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;y=i;i=i+48|0;m=y+32
|0;n=y+40|0;o=y+28|0;p=y+24|0;q=y+20|0;r=y+16|0;u=y+12|0;v=y+8|0;x=y+4|0;s=y+38|0;w=y+36|0;t=y;c[m>>2]=f;b[n>>
;1]=g;c[o>>2]=h;c[p>>2]=j;c[q>>2]=k;c[r>>2]=l;c[u>>2]=(c[o>>2]|0)+(c
[(c[m>>2]|0)+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>2]|0);c[v>>2]=c[p>>
2]&0-(c[(c[m>>2]|0)+4>>2]|0);c[x>>2]=c[u>>2];if((c[u>>2]|0)>(c[v>
;>2]|0)){c[t>>2]=c[(c[q>>2]|0)+12>>2]&7;if((c[u>>2]|0)!=((c[v>>2]|0)+(
c[(c[m>>2]|0)+4>>2]|0)|0)){i=y;return}a:do switch(c[t>>2]|0){case 0:{c[x>>2]=c[v>
x3e;2];break}case 4:{c[x>>2]=(((c[o>>2]|0)+(c[p>>2]|0)-1|0)/2|0)+(c[(c[m>>2]|0)+8>
x3e;2]|0)&0-(c[(c[m>>2]|0)+4>>2]|0);break}case 5:case 1:{if((c[(c[q>>2]|0)+28>>2]|0
)==(c[r>>2]|0)?(c[(c[q>>2]|0)+16>>2]|0)<=0:0){if(!(c[(c[q>>2]|0)+12>>2]
x26;16)){i=y;return}if(((c[p>>2]|0)-(c[o>>2]|0)|0)<(c[(c[m>>2]|0)+8>>2]|0)){i=y;return
}}if((c[(c[r>>2]|0)+28>>2]|0)==(c[q>>2]|0)?(c[(c[q>>2]|0)+20>>2]|0)==(b[n>
;>1]|0):0){if(!(c[(c[q>>2]|0)+12>>2]&32)){i=y;return}if(((c[p>>2]|0)-(c[o>>2]|
0)|0)<(c[(c[m>>2]|0)+8>>2]|0)){i=y;return}}if((c[t>>2]|0)==1){c[x>>2]=c[v>>
;2];break a}else{c[x>>2]=(((c[o>>2]|0)+(c[p>>2]|0)-1|0)/2|0)+(c[(c[m>>2]|0)+8>>
;2]|0)&0-(c[(c[m>>2]|0)+4>>2]|0);break a}}default:{i=y;return}}while(0);c[u>>2]=(c[x>>
;2]|0)==(c[u>>2]|0)?c[v>>2]|0:c[u>>2]|0;c[u>>2]=c[u>>2]>>c[c[m>
x3e;2]>>2];b[s>>1]=c[u>>2]>>3;b[w>>1]=c[u>>2]&7;if(((c[u>
x3e;2]|0)>=0?(c[u>>2]|0)<(e[(c[m>>2]|0)+56>>1]|0):0)?d[(c[(c[m>>2]|0)+60>
x3e;2]|0)+((c[(c[m>>2]|0)+148>>2]|0)+(b[s>>1]|0))>>0]&128>>b[w>>
;1]|0:0){i=y;return}}c[u>>2]=c[x>>2]>>c[c[m>>2]>>2];if((c[u>>2]|0)
x3c;0){i=y;return}if((c[u>>2]|0)>=(e[(c[m>>2]|0)+56>>1]|0)){i=y;return}b[s>>1]=c[u
x3e;>2]>>3;b[w>>1]=c[u>>2]&7;if((b[(c[m>>2]|0)+158>>1]|0)>(b[s
x3e;>1]|0))b[(c[m>>2]|0)+158>>1]=b[s>>1]|0;if((b[(c[m>>2]|0)+160>>1]|0)
x3c;(b[s>>1]|0))b[(c[m>>2]|0)+160>>1]=b[s>>1]|0;g=(c[(c[m>>2]|0)+60>>
;2]|0)+((c[(c[m>>2]|0)+148>>2]|0)+(b[s>>1]|0))|0;a[g>>0]=d[g>>0]|(128>>
;b[w>>1]&255)<<24>>24;i=y;return}function zo(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>
x3e;2]=a;a=(c[e>>2]|0)+148|0;c[a>>2]=(c[a>>2]|0)+(b[(c[e>>2]|0)+156>>1]|0);i=d
;return}function Ao(d,e){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+16|0;k=m+4|0;l=m;f=m+14|0;g=m+12|0;h=m+10|0;j=m+8|0
;c[l>>2]=d;a[f>>0]=e;while(1){if((c[(c[l>>2]|0)+1024>>2]|0)<0){e=14;break}d=_(b[(c[
l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>>1]|0,c[(c[l>>2]|0)+4>
;>2]|0)|0;c[(c[l>>2]|0)+80>>2]=d;d=_(b[(c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>
;2]<<2)>>1]|0,c[(c[l>>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+76>>2]=d;c[(c[l
>>2]|0)+40>>2]=c[(c[l>>2]|0)+28>>2];c[(c[l>>2]|0)+44>>2]=0;d=(Bo(c[l
>>2]|0,a[f>>0]|0)|0)<<24>>24!=0;e=c[l>>2]|0;if(!d){if(c[e+92>>2]|0?(
Qo(c[l>>2]|0)|0)<<24>>24:0){e=12;break}d=(c[l>>2]|0)+1024|0;c[d>>2]=(c[d>
x3e;2]|0)+-1;continue}if((c[e+44>>2]|0)!=98){e=5;break}c[(c[l>>2]|0)+44>>2]=0;b[g>>1]=b[(
c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)>>1]|0;b[h>>1]=b[(c[l>
;>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>>1]|0;b[j>>1]=((b[g>>
1]|0)+(b[h>>1]|0)|0)/2|0;if((c[(c[l>>2]|0)+1024>>2]|0)>=7){e=8;break}if((b[j>>1]|0)
x3c;(b[g>>1]|0)){e=8;break}b[(c[l>>2]|0)+960+((c[(c[l>>2]|0)+1024>>2]|0)+1<<2)
x3e;>1]=b[j>>1]|0;b[(c[l>>2]|0)+960+((c[(c[l>>2]|0)+1024>>2]|0)+1<<2)+2
x3e;>1]=b[h>>1]|0;b[(c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>
x3e;1]=(b[j>>1]|0)-1;d=(c[l>>2]|0)+1024|0;c[d>>2]=(c[d>>2]|0)+1}if((e|0)==5){c[k>
x3e;2]=1;l=c[k>>2]|0;i=m;return l|0}else if((e|0)==8){c[(c[l>>2]|0)+1024>>2]=0;c[(c[l>>2
]|0)+44>>2]=20;c[k>>2]=c[(c[l>>2]|0)+44>>2];l=c[k>>2]|0;i=m;return l|0}else if
((e|0)==12){c[k>>2]=c[(c[l>>2]|0)+44>>2];l=c[k>>2]|0;i=m;return l|0}else if((e|0)==14){c
[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}return 0}function Bo(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;n=i;i=i+32|0;l=n+21|0;m=n+16|0;f=n+12|0;g=n+8|0;k=n+4|0;h=n;j=n+20|0;c[m>>2]=d;c[f>>2]=e;c[(c[m>>
;2]|0)+92>>2]=0;a[(c[m>>2]|0)+87>>0]=0;a[(c[m>>2]|0)+86>>0]=0;c[(c[m>>
;2]|0)+36>>2]=(c[(c[m>>2]|0)+32>>2]|0)+-32;c[(c[m>>2]|0)+48>>2]=0;c[(c[m>
x3e;2]|0)+88>>2]=c[(c[m>>2]|0)+40>>2];c[(c[(c[m>>2]|0)+88>>2]|0)+8>>
2]=c[(c[m>>2]|0)+40>>2];b[(c[m>>2]|0)+84>>1]=0;c[k>>2]=0;c[g>>2]=0;while
(1){d=c[m>>2]|0;if((c[g>>2]|0)>=(b[(c[m>>2]|0)+128>>1]|0)){e=19;break}c[d+100>
x3e;2]=0;c[(c[m>>2]|0)+96>>2]=0;if((Co(c[m>>2]|0,c[k>>2]&65535,b[(c[(c[m>>
;2]|0)+128+12>>2]|0)+(c[g>>2]<<1)>>1]|0,c[f>>2]|0)|0)<<24>>
;24){e=4;break}c[k>>2]=(b[(c[(c[m>>2]|0)+128+12>>2]|0)+(c[g>>2]<<1)>>
;1]|0)+1;if(((((c[(c[m>>2]|0)+72>>2]&(c[(c[m>>2]|0)+4>>2]|0)-1|0)==0?(c[(c[m>
x3e;2]|0)+72>>2]|0)>=(c[(c[m>>2]|0)+76>>2]|0):0)?(c[(c[m>>2]|0)+72>>2]|0)
x3c;=(c[(c[m>>2]|0)+80>>2]|0):0)?c[(c[m>>2]|0)+96>>2]|0:0)?(c[(c[(c[m>>2]|0)+96
>>2]|0)+12>>2]&8|0)==(c[(c[(c[m>>2]|0)+88>>2]|0)+12>>2]&8|0):0){d=(c
[m>>2]|0)+40|0;c[d>>2]=(c[d>>2]|0)+-4}c[h>>2]=c[(c[m>>2]|0)+88>>2];e
=c[(c[m>>2]|0)+72>>2]|0;d=c[m>>2]|0;if(c[(c[(c[m>>2]|0)+88>>2]|0)+12>>
;2]&8|0)a[j>>0]=(e-(c[d+72>>2]&0-(c[(c[m>>2]|0)+4>>2]|0))|0)>=(c[(c[m>
;>2]|0)+8>>2]|0);else a[j>>0]=((e+(c[d+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>
;2]|0))-(c[(c[m>>2]|0)+72>>2]|0)|0)>=(c[(c[m>>2]|0)+8>>2]|0);if((Fo(c[m>>
2]|0,a[j>>0]|0)|0)<<24>>24){e=15;break}if(c[(c[m>>2]|0)+96>>2]|0)c[(c[h>
x3e;2]|0)+28>>2]=c[(c[m>>2]|0)+96>>2];c[g>>2]=(c[g>>2]|0)+1}if((e|0)==4){a[l
x3e;>0]=1;m=a[l>>0]|0;i=n;return m|0}else if((e|0)==15){a[l>>0]=1;m=a[l>>0]|0;i=n;return m|0}
else if((e|0)==19)if((Oo(d)|0)<<24>>24){a[l>>0]=1;m=a[l>>0]|0;i=n;return m|0}else{a[l>
;>0]=(c[(c[m>>2]|0)+40>>2]|0)>>>0<(c[(c[m>>2]|0)+36>>2]|0)>
;>>0?0:1;m=a[l>>0]|0;i=n;return m|0}return 0}function Co(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,P=0,Q=0,R=0;R=i;i=
i+144|0;k=R+140|0;l=R+132|0;m=R+138|0;n=R+136|0;o=R+128|0;D=R+120|0;C=R+112|0;F=R+104|0;r=R+96|0;q=R+92|0;p=R+88|0;B=R+84|0;A=R+
80|0;s=R+76|0;t=R+72|0;G=R+68|0;L=R+64|0;u=R+60|0;v=R+56|0;E=R+48|0;K=R+44|0;P=R+40|0;w=R+36|0;H=R+32|0;M=R+28|0;I=R+24|0;N=R+20
|0;J=R+16|0;O=R+12|0;x=R+8|0;y=R+4|0;z=R;c[l>>2]=f;b[m>>1]=g;b[n>>1]=h;c[o>>2]=j;c[r>
;>2]=c[(c[l>>2]|0)+128+4>>2];c[p>>2]=(c[r>>2]|0)+(e[n>>1]<<3);c
[F>>2]=(c[(c[r>>2]|0)+(e[m>>1]<<3)>>2]<<c[(c[l>>2]|0)+24
x3e;>2])-(c[(c[l>>2]|0)+8>>2]|0);c[F+4>>2]=(c[(c[r>>2]|0)+(e[m>>1]<
x3c;3)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[D>
;>2]=(c[(c[r>>2]|0)+(e[n>>1]<<3)>>2]<<c[(c[l>>2]|0)+24>>
;2])-(c[(c[l>>2]|0)+8>>2]|0);c[D+4>>2]=(c[(c[r>>2]|0)+(e[n>>1]<<3)+4
>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>>
;2]|0){c[s>>2]=c[F>>2];c[F>>2]=c[F+4>>2];c[F+4>>2]=c[s>>2];c[t>
x3e;2]=c[D>>2];c[D>>2]=c[D+4>>2];c[D+4>>2]=c[t>>2]};c[C>>2]=c[F>
;>2];c[C+4>>2]=c[F+4>>2];c[q>>2]=(c[r>>2]|0)+(e[m>>1]<<3);c[B
x3e;>2]=(c[(c[l>>2]|0)+128+8>>2]|0)+(e[m>>1]|0);if(a[c[B>>2]>>0]&4|0
)a[(c[l>>2]|0)+180>>0]=d[c[B>>2]>>0]>>5;c[A>>2]=a[c[B>>2]
x3e;>0]&3;a:do if((c[A>>2]|0)==2)Q=39;else{if(!(c[A>>2]|0)){if((a[(c[(c[l>>2]|0)+128+8
x3e;>2]|0)+(e[n>>1]|0)>>0]&3|0)==1){c[F>>2]=c[D>>2];c[F+4>>2]=c[D+4
x3e;>2];c[p>>2]=(c[p>>2]|0)+-8}else{c[F>>2]=((c[F>>2]|0)+(c[D>>2]|0)|0)/2
|0;c[F+4>>2]=((c[F+4>>2]|0)+(c[D+4>>2]|0)|0)/2|0;c[D>>2]=c[F>>2];c[D+4>
x3e;2]=c[F+4>>2]}c[q>>2]=(c[q>>2]|0)+-8;c[B>>2]=(c[B>>2]|0)+-1}c[(c[l>>
;2]|0)+68>>2]=c[F>>2];c[(c[l>>2]|0)+72>>2]=c[F+4>>2];b:while(1){if((c[q>
x3e;2]|0)>>>0>=(c[p>>2]|0)>>>0){Q=37;break}c[q>>2]=(c[q>>2]|0)+
8;c[B>>2]=(c[B>>2]|0)+1;c[A>>2]=a[c[B>>2]>>0]&3;switch(c[A>>2]|
0){case 1:{c[G>>2]=(c[c[q>>2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>
;>2]|0)+8>>2]|0);c[L>>2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24
>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>>2]|0){c[u>>2]=c[G>>2];c[G>
;>2]=c[L>>2];c[L>>2]=c[u>>2]}if((Do(c[l>>2]|0,c[G>>2]|0,c[L>>2]|
0)|0)<<24>>24)break a;else continue b}case 0:{c[C>>2]=(c[c[q>>2]>>2]<<
;c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[C+4>>2]=(c[(c[q>>2]|
0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>
x3e;2]|0){c[v>>2]=c[C>>2];c[C>>2]=c[C+4>>2];c[C+4>>2]=c[v>>2]}while(
1){if((c[q>>2]|0)>>>0>=(c[p>>2]|0)>>>0){Q=27;break b}c[q>>2]=(c
[q>>2]|0)+8;c[B>>2]=(c[B>>2]|0)+1;c[A>>2]=a[c[B>>2]>>0]&3;c[K
x3e;>2]=(c[c[q>>2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8
x3e;>2]|0);c[P>>2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(
c[(c[l>>2]|0)+8>>2]|0);if(c[o>>2]|0){c[w>>2]=c[K>>2];c[K>>2]=c[P>
;>2];c[P>>2]=c[w>>2]}if((c[A>>2]|0)==1)break;if(c[A>>2]|0){Q=39;break a}c[E>
x3e;2]=((c[C>>2]|0)+(c[K>>2]|0)|0)/2|0;c[E+4>>2]=((c[C+4>>2]|0)+(c[P>>2]|0)|0)/
2|0;if((Io(c[l>>2]|0,c[C>>2]|0,c[C+4>>2]|0,c[E>>2]|0,c[E+4>>2]|0)|0)<<
;24>>24)break a;c[C>>2]=c[K>>2];c[C+4>>2]=c[P>>2]}if((Io(c[l>>2]|0,c
[C>>2]|0,c[C+4>>2]|0,c[K>>2]|0,c[P>>2]|0)|0)<<24>>24)break a;else continue
b}default:{if(((c[q>>2]|0)+8|0)>>>0>(c[p>>2]|0)>>>0){Q=39;break a}if((a[(
c[B>>2]|0)+1>>0]&3|0)!=2){Q=39;break a}c[q>>2]=(c[q>>2]|0)+16;c[B>>2]=(c[
B>>2]|0)+2;c[H>>2]=(c[(c[q>>2]|0)+-16>>2]<<c[(c[l>>2]|0)+24>>
;2])-(c[(c[l>>2]|0)+8>>2]|0);c[M>>2]=(c[(c[q>>2]|0)+-16+4>>2]<<c[(c[
l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[I>>2]=(c[(c[q>>2]|0)+-8
x3e;>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[N>>2]=(
c[(c[q>>2]|0)+-8+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>
x3e;2]|0);if(c[o>>2]|0){c[x>>2]=c[H>>2];c[H>>2]=c[M>>2];c[M>>2]=c[x
x3e;>2];c[y>>2]=c[I>>2];c[I>>2]=c[N>>2];c[N>>2]=c[y>>2]}if((c[q
>>2]|0)>>>0>(c[p>>2]|0)>>>0){Q=36;break b}c[J>>2]=(c[c[q>
x3e;2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[O>
x3e;2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8
x3e;>2]|0);if(c[o>>2]|0){c[z>>2]=c[J>>2];c[J>>2]=c[O>>2];c[O>>2
]=c[z>>2]}if((Mo(c[l>>2]|0,c[H>>2]|0,c[M>>2]|0,c[I>>2]|0,c[N>>2]|0,c
[J>>2]|0,c[O>>2]|0)|0)<<24>>24)break a;else continue b}}}if((Q|0)==27){if((Io(c[l>
x3e;2]|0,c[C>>2]|0,c[C+4>>2]|0,c[F>>2]|0,c[F+4>>2]|0)|0)<<24>>24)break
}else if((Q|0)==36){if((Mo(c[l>>2]|0,c[H>>2]|0,c[M>>2]|0,c[I>>2]|0,c[N>>2]|0,c
[F>>2]|0,c[F+4>>2]|0)|0)<<24>>24)break}else if((Q|0)==37?(Do(c[l>>2]|0,c[F>
;>2]|0,c[F+4>>2]|0)|0)<<24>>24:0)break;a[k>>0]=0;Q=a[k>>0]|0;i=R;return Q
|0}while(0);if((Q|0)==39)c[(c[l>>2]|0)+44>>2]=20;a[k>>0]=1;Q=a[k>>0]|0;i=R;return Q|0}function
Do(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[g>>2]=b;c[h>>
;2]=d;c[j>>2]=e;a:do switch(c[(c[g>>2]|0)+100>>2]|0){case 0:{if((c[j>>2]|0)>(c[(c[g
>>2]|0)+72>>2]|0)){if(!((Eo(c[g>>2]|0,1,(((c[(c[g>>2]|0)+72>>2]|0)+(c[(c[g>
;>2]|0)+4>>2]|0)-1&0-(c[(c[g>>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72>>2]|
0)|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24))break a;a[f>>0]=1;e=
a[f>>0]|0;i=k;return e|0}if((c[j>>2]|0)<(c[(c[g>>2]|0)+72>>2]|0)?(Eo(c[g>>
;2]|0,2,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>2]&0-(c[(c[g>>2]|0)+
4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24:0){a[f>
x3e;0]=1;e=a[f>>0]|0;i=k;return e|0}break}case 1:{if((c[j>>2]|0)<(c[(c[g>>2]|0)+72>>
;2]|0)){if(((Fo(c[g>>2]|0,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>2]&
;0-(c[(c[g>>2]|0)+4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24
x3e;>24|0)==0?((Eo(c[g>>2]|0,2,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>
;2]&0-(c[(c[g>>2]|0)+4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<
x3c;24>>24|0)==0:0)break a;a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}case 2:{if((c[j>>2
]|0)>(c[(c[g>>2]|0)+72>>2]|0)){if(((Fo(c[g>>2]|0,(((c[(c[g>>2]|0)+72>>2]|
0)+(c[(c[g>>2]|0)+4>>2]|0)-1&0-(c[(c[g>>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72
>>2]|0)|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24|0)==0?((Eo(c[g
x3e;>2]|0,1,(((c[(c[g>>2]|0)+72>>2]|0)+(c[(c[g>>2]|0)+4>>2]|0)-1&0-(c[(c[g>
;>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72>>2]|0)|0)>=(c[(c[g>>2]|0)+8>>2]|
0)&255)|0)<<24>>24|0)==0:0)break a;a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}default
:{}}while(0);switch(c[(c[g>>2]|0)+100>>2]|0){case 1:{if((Go(c[g>>2]|0,c[(c[g>>2]|0)+68
x3e;>2]|0,c[(c[g>>2]|0)+72>>2]|0,c[h>>2]|0,c[j>>2]|0,c[(c[g>>2]|0)+76>
;>2]|0,c[(c[g>>2]|0)+80>>2]|0)|0)<<24>>24){a[f>>0]=1;e=a[f>>0]|
0;i=k;return e|0}break}case 2:{if((Ho(c[g>>2]|0,c[(c[g>>2]|0)+68>>2]|0,c[(c[g>>2]|0)+72
x3e;>2]|0,c[h>>2]|0,c[j>>2]|0,c[(c[g>>2]|0)+76>>2]|0,c[(c[g>>2]|0)+80>
;>2]|0)|0)<<24>>24){a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}default:{}}c[(c[g>
;>2]|0)+68>>2]=c[h>>2];c[(c[g>>2]|0)+72>>2]=c[j>>2];a[f>>0]=0;e
=a[f>>0]|0;i=k;return e|0}function Eo(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+9|0;h=l+4|0;j=
l;k=l+8|0;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;if(!(c[(c[h>>2]|0)+92>>2]|0)){c[(c[h
x3e;>2]|0)+88>>2]=c[(c[h>>2]|0)+40>>2];c[(c[h>>2]|0)+92>>2]=c[(c[h>
x3e;2]|0)+88>>2];b=(c[h>>2]|0)+40|0;c[b>>2]=(c[b>>2]|0)+32}e=c[h>>2]|0;if((c[(
c[h>>2]|0)+40>>2]|0)>>>0>=(c[(c[h>>2]|0)+36>>2]|0)>>>
0){c[e+44>>2]=98;a[g>>0]=1;k=a[g>>0]|0;i=l;return k|0}c[(c[e+88>>2]|0)+12>>2]=
0;c[(c[(c[h>>2]|0)+88>>2]|0)+20>>2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+16>>
;2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+8>>2]=c[(c[h>>2]|0)+40>>2];c[(c[(c[h>>
;2]|0)+88>>2]|0)+4>>2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+28>>2]=0;c[(c[(c[h>
x3e;2]|0)+88>>2]|0)+12>>2]=d[(c[h>>2]|0)+180>>0];switch(c[j>>2]|0){case 1:{b=(
c[(c[h>>2]|0)+88>>2]|0)+12|0;c[b>>2]=c[b>>2]|8;if(a[k>>0]|0){k=(c[(c[h>
x3e;2]|0)+88>>2]|0)+12|0;c[k>>2]=c[k>>2]|32}break}case 2:{if(a[k>>0]|0){k=(c[(c[h>
x3e;2]|0)+88>>2]|0)+12|0;c[k>>2]=c[k>>2]|16}break}default:{c[(c[h>>2]|0)+44>>2
]=20;a[g>>0]=1;k=a[g>>0]|0;i=l;return k|0}}if(!(c[(c[h>>2]|0)+96>>2]|0))c[(c[h>>
;2]|0)+96>>2]=c[(c[h>>2]|0)+88>>2];c[(c[h>>2]|0)+100>>2]=c[j>>2];a[(
c[h>>2]|0)+86>>0]=1;a[(c[h>>2]|0)+87>>0]=0;a[g>>0]=0;k=a[g>>0]|0;i=l
;return k|0}function Fo(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;j=l+13|0;k=l+8|0;f=l+12|0;g=l+4|0;h=l;c[k>
;>2]=d;a[f>>0]=e;c[g>>2]=((c[(c[k>>2]|0)+40>>2]|0)-(c[(c[(c[k>>2]|0)+88
x3e;>2]|0)+8>>2]|0)|0)/4|0;if((c[g>>2]|0)<0){c[(c[k>>2]|0)+44>>2]=99;a[j>
x3e;0]=1;k=a[j>>0]|0;i=l;return k|0}if((c[g>>2]|0)>0){c[(c[(c[k>>2]|0)+88>>2]|0)+16
>>2]=c[g>>2];do if(a[f>>0]|0){f=(c[(c[k>>2]|0)+88>>2]|0)+12|0;g=c[f>>
;2]|0;if(c[(c[(c[k>>2]|0)+88>>2]|0)+12>>2]&8|0){c[f>>2]=g|16;break}else{c[f>
x3e;2]=g|32;break}}while(0);c[h>>2]=c[(c[k>>2]|0)+88>>2];c[(c[k>>2]|0)+88>>2]=
c[(c[k>>2]|0)+40>>2];d=(c[k>>2]|0)+40|0;c[d>>2]=(c[d>>2]|0)+32;c[(c[(c[k>
x3e;2]|0)+88>>2]|0)+16>>2]=0;c[(c[(c[k>>2]|0)+88>>2]|0)+8>>2]=c[(c[k>>
;2]|0)+40>>2];c[(c[h>>2]|0)+28>>2]=c[(c[k>>2]|0)+88>>2];h=(c[k>>2]|0
)+84|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}f=c[k>>2]|0;if((c[(c[k>>2]|0)+40
>>2]|0)>>>0>=(c[(c[k>>2]|0)+36>>2]|0)>>>0){c[f+44>>2]=
98;a[j>>0]=1;k=a[j>>0]|0;i=l;return k|0}else{a[f+87>>0]=0;a[j>>0]=0;k=a[j>>0]|
0;i=l;return k|0}return 0}function Go(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;C=i;i=i+80|0;s=C+72|0;t=C+68|0;u=C+64|0;k=C+60|0;D=C+56|0;l=C+52|0;m=C+48|0;n
=C+44|0;w=C+40|0;x=C+36|0;o=C+32|0;p=C+28|0;q=C+24|0;r=C+20|0;A=C+16|0;y=C+12|0;z=C+8|0;v=C+4|0;B=C;c[t>>2]=b;c[u>
;>2]=d;c[k>>2]=e;c[D>>2]=f;c[l>>2]=g;c[m>>2]=h;c[n>>2]=j;c[w>>2
]=(c[D>>2]|0)-(c[u>>2]|0);c[x>>2]=(c[l>>2]|0)-(c[k>>2]|0);if(((c[x>>
2]|0)>0?(c[l>>2]|0)>=(c[m>>2]|0):0)?(c[k>>2]|0)<=(c[n>>2]|0):0){if((c[k
x3e;>2]|0)<(c[m>>2]|0)){D=xb(c[w>>2]|0,(c[m>>2]|0)-(c[k>>2]|0)|0,c[x>>
;2]|0)|0;c[u>>2]=(c[u>>2]|0)+D;c[o>>2]=c[m>>2]>>c[c[t>>2]>>
;2];c[q>>2]=0}else{c[o>>2]=c[k>>2]>>c[c[t>>2]>>2];c[q>>2]=
c[k>>2]&(c[(c[t>>2]|0)+4>>2]|0)-1}if((c[l>>2]|0)>(c[n>>2]|0)){c[p>
;>2]=c[n>>2]>>c[c[t>>2]>>2];c[r>>2]=0}else{c[p>>2]=c[l>>
;2]>>c[c[t>>2]>>2];c[r>>2]=c[l>>2]&(c[(c[t>>2]|0)+4>>
2]|0)-1}do if((c[q>>2]|0)<=0){if(a[(c[t>>2]|0)+87>>0]|0){D=(c[t>>2]|0)+40|0;c[D>
;>2]=(c[D>>2]|0)+-4;a[(c[t>>2]|0)+87>>0]=0}}else{if((c[o>>2]|0)!=(c[p>>2]|
0)){D=xb(c[w>>2]|0,(c[(c[t>>2]|0)+4>>2]|0)-(c[q>>2]|0)|0,c[x>>2]|0)|0;c[u>
;>2]=(c[u>>2]|0)+D;c[o>>2]=(c[o>>2]|0)+1;break}a[s>>0]=0;D=a[s>>0]|0;i=C;
return D|0}while(0);a[(c[t>>2]|0)+87>>0]=(c[r>>2]|0)==0;if(a[(c[t>>2]|0)+86>>0
]|0){c[(c[(c[t>>2]|0)+88>>2]|0)+20>>2]=c[o>>2];a[(c[t>>2]|0)+86>>0]=
0}c[A>>2]=(c[p>>2]|0)-(c[o>>2]|0)+1;if(((c[(c[t>>2]|0)+40>>2]|0)+(c[A>>
;2]<<2)|0)>>>0>=(c[(c[t>>2]|0)+36>>2]|0)>>>0){c[(c[t>>
;2]|0)+44>>2]=98;a[s>>0]=1;D=a[s>>0]|0;i=C;return D|0}k=c[(c[t>>2]|0)+4>>2]|0;
l=c[w>>2]|0;if((c[w>>2]|0)>0){c[y>>2]=xb(k,l,c[x>>2]|0)|0;D=_(c[(c[t>>2]|
0)+4>>2]|0,c[w>>2]|0)|0;c[z>>2]=(D|0)%(c[x>>2]|0)|0;c[w>>2]=1}else{c[y>
x3e;2]=_(xb(k,0-l|0,c[x>>2]|0)|0,-1)|0;D=_(c[(c[t>>2]|0)+4>>2]|0,0-(c[w>>2]|0)|0)|0;c[z
x3e;>2]=(D|0)%(c[x>>2]|0)|0;c[w>>2]=-1}c[v>>2]=0-(c[x>>2]|0);c[B>>2]=c[(c
[t>>2]|0)+40>>2];while(1){if((c[A>>2]|0)<=0)break;g=c[u>>2]|0;D=c[B>>2]|0
;c[B>>2]=D+4;c[D>>2]=g;c[u>>2]=(c[u>>2]|0)+(c[y>>2]|0);c[v>>2]=(c[v
x3e;>2]|0)+(c[z>>2]|0);if((c[v>>2]|0)>=0){c[v>>2]=(c[v>>2]|0)-(c[x>>
2]|0);c[u>>2]=(c[u>>2]|0)+(c[w>>2]|0)}c[A>>2]=(c[A>>2]|0)+-1}c[(c[t>>
;2]|0)+40>>2]=c[B>>2];a[s>>0]=0;D=a[s>>0]|0;i=C;return D|0}a[s>>0]=0;D=a[s>
;>0]|0;i=C;return D|0}function Ho(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;m=i;i=i+32|0;k=m+24|0;t=m+20|0;s=m+16|0;r=m+12|0;q=m+8|0;o=m+4|0;p=m;l=m+29|0;n=m+28|0;c[k>>2]=b;c[t>
x3e;2]=d;c[s>>2]=e;c[r>>2]=f;c[q>>2]=g;c[o>>2]=h;c[p>>2]=j;a[n>>0]=a
[(c[k>>2]|0)+86>>0]|0;a[l>>0]=Go(c[k>>2]|0,c[t>>2]|0,0-(c[s>>2]|0)|0
,c[r>>2]|0,0-(c[q>>2]|0)|0,0-(c[p>>2]|0)|0,0-(c[o>>2]|0)|0)|0;if(!(a[n>>0]|0)){
t=a[l>>0]|0;i=m;return t|0}if(a[(c[k>>2]|0)+86>>0]|0){t=a[l>>0]|0;i=m;return t|0}c[(c[(c
[k>>2]|0)+88>>2]|0)+20>>2]=0-(c[(c[(c[k>>2]|0)+88>>2]|0)+20>>2]|0);t
=a[l>>0]|0;i=m;return t|0}function Io(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,x=0;t=i;i=i+64|0;h=t+49|0;j=t+44|0;x=t+40|0;w=t+36|0;v=t+32|0;u=t+28|0;n=t+24|0;o=t+20|0;p=t+16|0;m=t+12
|0;r=t+8|0;q=t+4|0;l=t;k=t+48|0;c[j>>2]=b;c[x>>2]=d;c[w>>2]=e;c[v>>2]=f;c[u>>2
]=g;c[(c[j>>2]|0)+52>>2]=(c[j>>2]|0)+184;c[(c[(c[j>>2]|0)+52>>2]|0)+16>
x3e;2]=c[(c[j>>2]|0)+68>>2];c[(c[(c[j>>2]|0)+52>>2]|0)+16+4>>2]=c[(c[j>
x3e;2]|0)+72>>2];c[(c[(c[j>>2]|0)+52>>2]|0)+8>>2]=c[x>>2];c[(c[(c[j>>
;2]|0)+52>>2]|0)+8+4>>2]=c[w>>2];c[c[(c[j>>2]|0)+52>>2]>>2]=c[v>
;>2];c[(c[(c[j>>2]|0)+52>>2]|0)+4>>2]=c[u>>2];a:while(1){c[n>>2]=c[(c[(c[
j>>2]|0)+52>>2]|0)+16+4>>2];c[o>>2]=c[(c[(c[j>>2]|0)+52>>2]|0)+8+4
x3e;>2];c[p>>2]=c[(c[(c[j>>2]|0)+52>>2]|0)+4>>2];c[m>>2]=c[c[(c[j>
x3e;2]|0)+52>>2]>>2];if((c[n>>2]|0)<=(c[p>>2]|0)){c[r>>2]=c[n>>
2];c[q>>2]=c[p>>2]}else{c[r>>2]=c[p>>2];c[q>>2]=c[n>>2]}do if((c[o
x3e;>2]|0)>=(c[r>>2]|0)?(c[o>>2]|0)<=(c[q>>2]|0):0){if((c[n>>2]|0)==(c[p
x3e;>2]|0)){x=(c[j>>2]|0)+52|0;c[x>>2]=(c[x>>2]|0)+-16;break}c[l>>2]=(c[n>>
;2]|0)<(c[p>>2]|0)?1:2;if((c[(c[j>>2]|0)+100>>2]|0)!=(c[l>>2]|0)){d=c[n>>
2]|0;if((c[l>>2]|0)==1)d=((d+(c[(c[j>>2]|0)+4>>2]|0)-1&0-(c[(c[j>>2]|0)+4>>
;2]|0))-(c[n>>2]|0)|0)>=(c[(c[j>>2]|0)+8>>2]|0);else d=(d-(c[n>>2]&0-(c[(c[j
x3e;>2]|0)+4>>2]|0))|0)>=(c[(c[j>>2]|0)+8>>2]|0);a[k>>0]=d&1;if(c[(c[j>
;>2]|0)+100>>2]|0?(Fo(c[j>>2]|0,a[k>>0]|0)|0)<<24>>24|0:0){s=22;break a}if
((Eo(c[j>>2]|0,c[l>>2]|0,a[k>>0]|0)|0)<<24>>24){s=22;break a}}d=c[j>>
;2]|0;e=c[(c[j>>2]|0)+76>>2]|0;b=c[(c[j>>2]|0)+80>>2]|0;if((c[l>>2]|0)==1)if((
Ko(d,2,41,e,b)|0)<<24>>24){s=22;break a}else break;else if((Lo(d,2,41,e,b)|0)<<24>>24){s
=22;break a}else break}else s=7;while(0);if((s|0)==7){s=0;Jo(c[(c[j>>2]|0)+52>>2]|0);x=(c[j>>2]|0)+
52|0;c[x>>2]=(c[x>>2]|0)+16}if((c[(c[j>>2]|0)+52>>2]|0)>>>0<((c[j>
;>2]|0)+184|0)>>>0){s=21;break}}if((s|0)==21){c[(c[j>>2]|0)+68>>2]=c[m>>2];c[(
c[j>>2]|0)+72>>2]=c[p>>2];a[h>>0]=0;x=a[h>>0]|0;i=t;return x|0}else if((s|0)==
22){a[h>>0]=1;x=a[h>>0]|0;i=t;return x|0}return 0}function Jo(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[(c[d>>2]|0)+32>>2]=c[(c[d>>2]|0)+16>>2];c[e>
x3e;2]=c[(c[d>>2]|0)+8>>2];a=((c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c
[d>>2]|0)+24>>2]=a;c[f>>2]=a;a=((c[c[d>>2]>>2]|0)+(c[e>>2]|0)|0)/2|0
;c[(c[d>>2]|0)+8>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16>>2]=((c[f>>2]|0)+(
c[e>>2]|0)|0)/2|0;c[(c[d>>2]|0)+32+4>>2]=c[(c[d>>2]|0)+16+4>>2];c[e>>
;2]=c[(c[d>>2]|0)+8+4>>2];a=((c[(c[d>>2]|0)+16+4>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(
c[d>>2]|0)+24+4>>2]=a;c[f>>2]=a;a=((c[(c[d>>2]|0)+4>>2]|0)+(c[e>>2]|
0)|0)/2|0;c[(c[d>>2]|0)+8+4>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16+4>>2]=((c[f>
x3e;2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function Ko(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,t=0,u=0,v=0,w=0,x=0,y=0;y=i;i=i+64|0;j=y+54|0;k=y+48|0;l=y+44|0;m=y+40|0;n=y+36|0;o=y+32|0;w=y+28|0;x=y+24|0;
q=y+20|0;s=y+16|0;r=y+12|0;t=y+52|0;p=y+8|0;u=y+4|0;v=y;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>
;2]=g;c[o>>2]=h;c[p>>2]=c[(c[k>>2]|0)+52>>2];c[w>>2]=c[(c[p>>2]|0)+(
c[l>>2]<<3)+4>>2];c[x>>2]=c[(c[p>>2]|0)+4>>2];c[v>>2]=c[(c
[k>>2]|0)+40>>2];a:do if((c[x>>2]|0)>=(c[n>>2]|0)?(c[w>>2]|0)<=(c[o
x3e;>2]|0):0){c[s>>2]=c[x>>2]&0-(c[(c[k>>2]|0)+4>>2]|0);if((c[s>>2]|
0)>(c[o>>2]|0))c[s>>2]=c[o>>2];c[r>>2]=c[n>>2];if((c[w>>2]|0)
x3e;=(c[n>>2]|0)){c[q>>2]=(c[w>>2]|0)+(c[(c[k>>2]|0)+4>>2]|0)-1&0-(c[(c[k
>>2]|0)+4>>2]|0);b[t>>1]=c[w>>2]&(c[(c[k>>2]|0)+4>>2]|0)-1;c[r
x3e;>2]=c[q>>2];if(!(b[t>>1]|0)){if(a[(c[k>>2]|0)+87>>0]|0){c[v>>2]=(c[v
x3e;>2]|0)+-4;a[(c[k>>2]|0)+87>>0]=0}f=c[(c[p>>2]|0)+(c[l>>2]<<3)>
x3e;2]|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[q>>2]=(c[q>>2]|0)+(c[(c[k>
x3e;2]|0)+4>>2]|0)}}else c[q>>2]=c[n>>2];if(a[(c[k>>2]|0)+86>>0]|0){c[(c[(c[k
x3e;>2]|0)+88>>2]|0)+20>>2]=c[r>>2]>>c[c[k>>2]>>2];a[(c[k>
x3e;2]|0)+86>>0]=0}if((c[s>>2]|0)>=(c[q>>2]|0)){if(((c[v>>2]|0)+((c[s>>2]|
0)-(c[q>>2]|0)>>c[c[k>>2]>>2]<<2)+4|0)>>>0>=(c[(c[k>
x3e;2]|0)+36>>2]|0)>>>0){c[(c[k>>2]|0)+40>>2]=c[v>>2];c[(c[k>>2
]|0)+44>>2]=98;a[j>>0]=1;x=a[j>>0]|0;i=y;return x|0}c[u>>2]=c[p>>2];while(1){if
((c[p>>2]|0)>>>0<(c[u>>2]|0)>>>0)break a;if((c[q>>2]|0)>(c
[s>>2]|0))break a;a[(c[k>>2]|0)+87>>0]=0;c[x>>2]=c[(c[p>>2]|0)+4>>2];
if((c[x>>2]|0)>(c[q>>2]|0)){c[w>>2]=c[(c[p>>2]|0)+(c[l>>2]<<3)+
4>>2];if(((c[x>>2]|0)-(c[w>>2]|0)|0)>=(c[(c[k>>2]|0)+16>>2]|0)){Va[c[m>
;>2]&63](c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[l>>2]<<3);continue}else{f
=_((c[c[p>>2]>>2]|0)-(c[(c[p>>2]|0)+(c[l>>2]<<3)>>2]|0)|0,(c[q>
x3e;2]|0)-(c[w>>2]|0)|0)|0;f=(c[(c[p>>2]|0)+(c[l>>2]<<3)>>2]|0)+((f|0)/((c[x
x3e;>2]|0)-(c[w>>2]|0)|0)|0)|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[p>>2]=(
c[p>>2]|0)+(0-(c[l>>2]|0)<<3);c[q>>2]=(c[q>>2]|0)+(c[(c[k>>2]|0)+4
x3e;>2]|0);continue}}else{if((c[x>>2]|0)==(c[q>>2]|0)){a[(c[k>>2]|0)+87>>0]=1;f=c[c
[p>>2]>>2]|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[q>>2]=(c[q>>
;2]|0)+(c[(c[k>>2]|0)+4>>2]|0)}c[p>>2]=(c[p>>2]|0)+(0-(c[l>>2]|0)<<3
);continue}}}}while(0);c[(c[k>>2]|0)+40>>2]=c[v>>2];x=(c[k>>2]|0)+52|0;c[x>>2]=(
c[x>>2]|0)+(0-(c[l>>2]|0)<<3);a[j>>0]=0;x=a[j>>0]|0;i=y;return x|0}function Lo
(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;q=i;i=i+32|0;h=q+20|0;j=q+16|0;k=q+12|0;l=q+8|
0;m=q+4|0;n=q;p=q+25|0;o=q+24|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2
]=g;c[n>>2]=c[(c[h>>2]|0)+52>>2];c[(c[n>>2]|0)+4>>2]=0-(c[(c[n>>2]|0
)+4>>2]|0);c[(c[n>>2]|0)+8+4>>2]=0-(c[(c[n>>2]|0)+8+4>>2]|0);c[(c[n>>
;2]|0)+16+4>>2]=0-(c[(c[n>>2]|0)+16+4>>2]|0);if((c[j>>2]|0)>2)c[(c[n>>2]|
0)+24+4>>2]=0-(c[(c[n>>2]|0)+24+4>>2]|0);a[o>>0]=a[(c[h>>2]|0)+86>>0
]|0;a[p>>0]=Ko(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,0-(c[m>>2]|0)|0,0-(c[l>>
;2]|0)|0)|0;if(a[o>>0]|0?(a[(c[h>>2]|0)+86>>0]|0)==0:0)c[(c[(c[h>>2]|0)+88>>2]|
0)+20>>2]=0-(c[(c[(c[h>>2]|0)+88>>2]|0)+20>>2]|0);c[(c[n>>2]|0)+4>>2
]=0-(c[(c[n>>2]|0)+4>>2]|0);i=q;return a[p>>0]|0}function Mo(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;y=i;i=i+80|0;k=y+69|
0;l=y+64|0;E=y+60|0;D=y+56|0;C=y+52|0;B=y+48|0;A=y+44|0;z=y+40|0;p=y+36|0;q=y+32|0;r=y+28|0;s=y+24|0;o=y+20|0;v=y+16|0;t=y+12|0;
w=y+8|0;u=y+4|0;n=y;m=y+68|0;c[l>>2]=b;c[E>>2]=d;c[D>>2]=e;c[C>>2]=f;c[B>>2]=g
;c[A>>2]=h;c[z>>2]=j;c[(c[l>>2]|0)+52>>2]=(c[l>>2]|0)+184;c[(c[(c[l>>
;2]|0)+52>>2]|0)+24>>2]=c[(c[l>>2]|0)+68>>2];c[(c[(c[l>>2]|0)+52>>2]|
0)+24+4>>2]=c[(c[l>>2]|0)+72>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+16>>2]=c
[E>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+16+4>>2]=c[D>>2];c[(c[(c[l>>2]|0)+
52>>2]|0)+8>>2]=c[C>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+8+4>>2]=c[B>
x3e;2];c[c[(c[l>>2]|0)+52>>2]>>2]=c[A>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+
4>>2]=c[z>>2];a:while(1){c[p>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+24+4>>2];
c[q>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+16+4>>2];c[r>>2]=c[(c[(c[l>>2]|0)+
52>>2]|0)+8+4>>2];c[s>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+4>>2];c[o>
x3e;2]=c[c[(c[l>>2]|0)+52>>2]>>2];if((c[p>>2]|0)<=(c[s>>2]|0)){c[v>
x3e;2]=c[p>>2];c[t>>2]=c[s>>2]}else{c[v>>2]=c[s>>2];c[t>>2]=c[p>
;>2]}if((c[q>>2]|0)<=(c[r>>2]|0)){c[w>>2]=c[q>>2];c[u>>2]=c[r>
x3e;2]}else{c[w>>2]=c[r>>2];c[u>>2]=c[q>>2]}do if((c[w>>2]|0)>=(c[v>
x3e;2]|0)?(c[u>>2]|0)<=(c[t>>2]|0):0){if((c[p>>2]|0)==(c[s>>2]|0)){E=(c[l>>
;2]|0)+52|0;c[E>>2]=(c[E>>2]|0)+-24;break}c[n>>2]=(c[p>>2]|0)<=(c[s>>2]|0
)?1:2;if((c[(c[l>>2]|0)+100>>2]|0)!=(c[n>>2]|0)){d=c[p>>2]|0;if((c[n>>2]|0)==1
)d=((d+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[l>>2]|0)+4>>2]|0))-(c[p>>2]|0)|0
)>=(c[(c[l>>2]|0)+8>>2]|0);else d=(d-(c[p>>2]&0-(c[(c[l>>2]|0)+4>>2]|
0))|0)>=(c[(c[l>>2]|0)+8>>2]|0);a[m>>0]=d&1;if(c[(c[l>>2]|0)+100>>2]|
0?(Fo(c[l>>2]|0,a[m>>0]|0)|0)<<24>>24|0:0){x=25;break a}if((Eo(c[l>>2]|0,c[n
x3e;>2]|0,a[m>>0]|0)|0)<<24>>24){x=25;break a}}d=c[l>>2]|0;f=c[(c[l>>2]|0
)+76>>2]|0;e=c[(c[l>>2]|0)+80>>2]|0;if((c[n>>2]|0)==1)if((Ko(d,3,42,f,e)|0)<<24
>>24){x=25;break a}else break;else if((Lo(d,3,42,f,e)|0)<<24>>24){x=25;break a}else break}else x=10
;while(0);if((x|0)==10){x=0;No(c[(c[l>>2]|0)+52>>2]|0);E=(c[l>>2]|0)+52|0;c[E>>2]=(c[E
x3e;>2]|0)+24}if((c[(c[l>>2]|0)+52>>2]|0)>>>0<((c[l>>2]|0)+184|0)>
x3e;>0){x=24;break}}if((x|0)==24){c[(c[l>>2]|0)+68>>2]=c[o>>2];c[(c[l>>2]|0)+72>
;>2]=c[s>>2];a[k>>0]=0;E=a[k>>0]|0;i=y;return E|0}else if((x|0)==25){a[k>>0]=1;E=a[
k>>0]|0;i=y;return E|0}return 0}function No(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;f=b+12|0;e=b+8|
0;g=b+4|0;h=b;c[d>>2]=a;c[(c[d>>2]|0)+48>>2]=c[(c[d>>2]|0)+24>>2];c[g>>
;2]=c[(c[d>>2]|0)+8>>2];c[h>>2]=c[(c[d>>2]|0)+16>>2];a=(c[c[d>>2]>
;>2]|0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+8>>2]=a;a=(c[(c[d>
x3e;2]|0)+24>>2]|0)+(c[h>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>>2]|0)+40>>2]=
a;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1>>1;a=(c[f>>2]|0)+(c[g>>2]|0)+1
x3e;>1;c[f>>2]=a;c[(c[d>>2]|0)+16>>2]=a;a=(c[e>>2]|0)+(c[g>>2]|0)+1>
x3e;1;c[e>>2]=a;c[(c[d>>2]|0)+32>>2]=a;c[(c[d>>2]|0)+24>>2]=(c[f>>2]|
0)+(c[e>>2]|0)+1>>1;c[(c[d>>2]|0)+48+4>>2]=c[(c[d>>2]|0)+24+4>>2];c[
g>>2]=c[(c[d>>2]|0)+8+4>>2];c[h>>2]=c[(c[d>>2]|0)+16+4>>2];a=(c[(c[d
>>2]|0)+4>>2]|0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+8+4>
x3e;2]=a;a=(c[(c[d>>2]|0)+24+4>>2]|0)+(c[h>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>
x3e;2]|0)+40+4>>2]=a;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1>>1;a=(c[f>>2]|
0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+16+4>>2]=a;a=(c[e>>2]|0)+(
c[g>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>>2]|0)+32+4>>2]=a;c[(c[d>>2]|0)+24+
4>>2]=(c[f>>2]|0)+(c[e>>2]|0)+1>>1;i=b;return}function Oo(d){d=d|0;var f=0,g=0,h=0,j=0,k
=0,l=0,m=0;m=i;i=i+32|0;f=m+18|0;g=m+12|0;h=m+8|0;l=m+4|0;j=m+16|0;k=m;c[g>>2]=d;b[j>>1]=b[(c[g>>2
]|0)+84>>1]|0;c[k>>2]=c[(c[g>>2]|0)+92>>2];a:do if((e[j>>1]|0|0)>1&(
c[k>>2]|0)!=0){while(1){if((e[j>>1]|0|0)<=0)break a;d=c[k>>2]|0;if((e[j>>1]|0|0)>
;1)c[(c[k>>2]|0)+4>>2]=(c[d+8>>2]|0)+(c[(c[k>>2]|0)+16>>2]<<2);else
c[d+4>>2]=0;d=c[(c[k>>2]|0)+20>>2]|0;if(c[(c[k>>2]|0)+12>>2]&8|0){c[h>
;>2]=d;c[l>>2]=(c[(c[k>>2]|0)+20>>2]|0)+(c[(c[k>>2]|0)+16>>2]|0)-1}else{c
[h>>2]=d-(c[(c[k>>2]|0)+16>>2]|0)+1;c[l>>2]=c[(c[k>>2]|0)+20>>2];c[(
c[k>>2]|0)+20>>2]=c[h>>2];d=(c[k>>2]|0)+8|0;c[d>>2]=(c[d>>2]|0)+((c[(
c[k>>2]|0)+16>>2]|0)-1<<2)}if((Po(c[g>>2]|0,c[h>>2]|0)|0)<<24>
x3e;24|0)break;if((Po(c[g>>2]|0,(c[l>>2]|0)+1|0)|0)<<24>>24|0)break;c[k>>2]=c[(
c[k>>2]|0)+4>>2];b[j>>1]=(b[j>>1]|0)+-1<<16>>16}a[f>>0]=1;
l=a[f>>0]|0;i=m;return l|0}else c[(c[g>>2]|0)+92>>2]=0;while(0);a[f>>0]=0;l=a[f>>
;0]|0;i=m;return l|0}function Po(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;h=l+20|0;j=l+16|0;k=l+12|0;g=l+8|
0;f=l+4|0;e=l;c[j>>2]=b;c[k>>2]=d;c[e>>2]=(c[(c[j>>2]|0)+48>>2]|0)-1;c[g>
x3e;2]=(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j>>2]|0)+48>>2]|0)<<2);while(1){if((c
[e>>2]|0)>=0)d=(c[k>>2]|0)<(c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]|
0);else d=0;b=c[e>>2]|0;if(!d)break;c[e>>2]=b+-1}if((b|0)>=0?((c[e>>2]|0)>=0?(c[k>
x3e;2]|0)>(c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]|0):0):0)do{c[f>>2]=c[(c[g>
x3e;2]|0)+(c[e>>2]<<2)>>2];c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]=
c[k>>2];c[k>>2]=c[f>>2];c[e>>2]=(c[e>>2]|0)+-1}while((c[e>>2]|0)>
;=0);do if((c[e>>2]|0)<0){b=(c[j>>2]|0)+36|0;c[b>>2]=(c[b>>2]|0)+-4;b=c[j>>
;2]|0;if((c[(c[j>>2]|0)+36>>2]|0)>>>0>(c[(c[j>>2]|0)+40>>2]|0)>
x3e;>0){g=b+48|0;c[g>>2]=(c[g>>2]|0)+1;c[(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j>
x3e;2]|0)+48>>2]|0)<<2)>>2]=c[k>>2];break}c[b+44>>2]=98;a[h>>0]=1;k=
a[h>>0]|0;i=l;return k|0}while(0);a[h>>0]=0;k=a[h>>0]|0;i=l;return k|0}function Qo(d){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;D=i;i=i+80|0;h=D+72|0;j=D+52|0
;z=D+70|0;A=D+68|0;B=D+66|0;k=D+48|0;n=D+44|0;l=D+40|0;m=D+36|0;g=D+64|0;u=D+62|0;f=D+60|0;e=D+58|0;r=D+56|0;w=D+32|0;x=D+28|0;y
=D+24|0;s=D+20|0;t=D+16|0;v=D+12|0;o=D+8|0;p=D+4|0;q=D;c[j>>2]=d;Ro(v);Ro(o);Ro(p);c[k>>2]=c[(c[j>>
;2]|0)+92>>2];b[u>>1]=c[(c[j>>2]|0)+76>>2]>>c[c[j>>2]>>2];
b[g>>1]=c[(c[j>>2]|0)+80>>2]>>c[c[j>>2]>>2];while(1){if(!(c[k>
x3e;2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];b[e>>1]=c[(c[k>>2]|0)+20>>
;2];b[f>>1]=(c[(c[k>>2]|0)+20>>2]|0)+(c[(c[k>>2]|0)+16>>2]|0)-1;if((b[g>
x3e;1]|0)>(b[e>>1]|0))b[g>>1]=b[e>>1]|0;if((b[u>>1]|0)<(b[f>>1]|0))b
[u>>1]=b[f>>1]|0;c[c[k>>2]>>2]=0;So(v,c[k>>2]|0);c[k>>2]=c[n>
x3e;2]}e=c[j>>2]|0;if(!(c[(c[j>>2]|0)+48>>2]|0)){c[e+44>>2]=20;a[h>>0]=1;C=a[h
>>0]|0;i=D;return C|0}Ua[c[e+164>>2]&31](c[j>>2]|0,g,u);c[k>>2]=c[v>>2];while
(1){if(!(c[k>>2]|0))break;c[(c[k>>2]|0)+24>>2]=(c[(c[k>>2]|0)+20>>2]|0)-(b[g
x3e;>1]|0)&65535;c[k>>2]=c[(c[k>>2]|0)+4>>2]}b[z>>1]=b[g>>1]|0;b[B
x3e;>1]=0;if((c[(c[j>>2]|0)+48>>2]|0)>0?(c[(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j
>>2]|0)+48>>2]|0)<<2)>>2]|0)==(b[g>>1]|0):0){g=(c[j>>2]|0)+48|0;c[g
x3e;>2]=(c[g>>2]|0)+-1}a:while(1){if((c[(c[j>>2]|0)+48>>2]|0)<=0)break;c[k>>2]=
c[v>>2];while(1){if(!(c[k>>2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];g=(c[k>
;>2]|0)+24|0;c[g>>2]=(c[g>>2]|0)-(b[B>>1]|0);do if(!(c[(c[k>>2]|0)+24>>2]|
0)){To(v,c[k>>2]|0);e=c[k>>2]|0;if(c[(c[k>>2]|0)+12>>2]&8|0){So(o,e);break}else{So(
p,e);break}}while(0);c[k>>2]=c[n>>2]}Uo(o);Uo(p);d=(c[j>>2]|0)+48|0;g=c[d>>2]|0;c[d>
;>2]=g+-1;b[A>>1]=c[(c[(c[j>>2]|0)+32>>2]|0)+(0-g<<2)>>2];b[B>>
1]=(b[A>>1]|0)-(b[z>>1]|0);while(1){if((b[z>>1]|0)>=(b[A>>1]|0))break;b[r>>
;1]=0;c[l>>2]=c[o>>2];c[m>>2]=c[p>>2];while(1){if(!(c[l>>2]|0))break;c[w>
x3e;2]=c[c[l>>2]>>2];c[x>>2]=c[c[m>>2]>>2];if((c[w>>2]|0)>(c[x
x3e;>2]|0)){c[y>>2]=c[w>>2];c[w>>2]=c[x>>2];c[x>>2]=c[y>>2]}c[s
>>2]=c[w>>2]&0-(c[(c[j>>2]|0)+4>>2]|0);c[t>>2]=(c[x>>2]|0)+(c[(
c[j>>2]|0)+4>>2]|0)-1&0-(c[(c[j>>2]|0)+4>>2]|0);do if((((c[x>>2]|0)-(c[w
x3e;>2]|0)|0)<=(c[(c[j>>2]|0)+4>>2]|0)?(c[s>>2]|0)!=(c[w>>2]|0):0)?(c[t>
x3e;2]|0)!=(c[x>>2]|0):0){if((c[s>>2]|0)<=(c[t>>2]|0)?(c[t>>2]|0)!=((c[s>>
;2]|0)+(c[(c[j>>2]|0)+4>>2]|0)|0):0){C=37;break}c[q>>2]=c[(c[l>>2]|0)+12>>2]
x26;7;if((c[q>>2]|0)!=2){c[c[l>>2]>>2]=c[w>>2];c[c[m>>2]>>2]=c[x>
;>2];c[(c[l>>2]|0)+24>>2]=1;b[r>>1]=(b[r>>1]|0)+1<<16>>16}}else
C=37;while(0);if((C|0)==37){C=0;Xa[c[(c[j>>2]|0)+168>>2]&7](c[j>>2]|0,b[z>>1]|0,c[
w>>2]|0,c[x>>2]|0,c[l>>2]|0,c[m>>2]|0)}c[l>>2]=c[(c[l>>2]|0)+4>
x3e;2];c[m>>2]=c[(c[m>>2]|0)+4>>2]}b:do if((b[r>>1]|0)>0){c[l>>2]=c[o>
;>2];c[m>>2]=c[p>>2];while(1){if(!(c[l>>2]|0))break b;if(c[(c[l>>2]|0)+24>>
;2]|0){c[(c[l>>2]|0)+24>>2]=0;Xa[c[(c[j>>2]|0)+172>>2]&7](c[j>>2]|0,b[z
x3e;>1]|0,c[c[l>>2]>>2]|0,c[c[m>>2]>>2]|0,c[l>>2]|0,c[m>>2]|0)}
c[l>>2]=c[(c[l>>2]|0)+4>>2];c[m>>2]=c[(c[m>>2]|0)+4>>2]}}while(0);Va
[c[(c[j>>2]|0)+176>>2]&63](c[j>>2]|0);b[z>>1]=(b[z>>1]|0)+1<<16
>>16;if((b[z>>1]|0)>=(b[A>>1]|0))continue;Uo(o);Uo(p)}c[k>>2]=c[o>>2];while
(1){if(!(c[k>>2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];if(!(c[(c[k>>2]|0)+16>
;>2]|0))To(o,c[k>>2]|0);c[k>>2]=c[n>>2]}c[k>>2]=c[p>>2];while(1){if(!(c[k
>>2]|0))continue a;c[n>>2]=c[(c[k>>2]|0)+4>>2];if(!(c[(c[k>>2]|0)+16>>
;2]|0))To(p,c[k>>2]|0);c[k>>2]=c[n>>2]}}while(1){if((b[z>>1]|0)>(b[u>>1]|
0))break;Va[c[(c[j>>2]|0)+176>>2]&63](c[j>>2]|0);b[z>>1]=(b[z>>1]|0)+1<
;<16>>16}a[h>>0]=0;C=a[h>>0]|0;i=D;return C|0}function Ro(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]=0;i=b;return}function So(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h
=i;i=i+32|0;j=h+16|0;d=h+12|0;f=h+8|0;e=h+4|0;g=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=c[j>>2];c[
e>>2]=c[c[f>>2]>>2];c[g>>2]=c[c[d>>2]>>2];while(1){if(!(c[e>>
;2]|0))break;if((c[g>>2]|0)<(c[c[e>>2]>>2]|0))break;c[f>>2]=(c[e>>2]|0)+4
;c[e>>2]=c[c[f>>2]>>2]}c[(c[d>>2]|0)+4>>2]=c[e>>2];c[c[f>>
2]>>2]=c[d>>2];i=h;return}function To(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;j=h+12|0;d=h
+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=c[j>>2];c[e>>2]=c[c[f>>
2]>>2];while(1){if(!(c[e>>2]|0)){g=6;break}a=(c[e>>2]|0)+4|0;if((c[e>>2]|0)==(c[d>
x3e;2]|0))break;c[f>>2]=a;c[e>>2]=c[c[f>>2]>>2]}if((g|0)==6){i=h;return}c[c[f>>
;2]>>2]=c[a>>2];i=h;return}function Uo(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;f=g+8|0;d=g+4|
0;e=g;c[b>>2]=a;c[d>>2]=c[c[b>>2]>>2];while(1){if(!(c[d>>2]|0))break;c[c[d>
;>2]>>2]=c[c[(c[d>>2]|0)+8>>2]>>2];a=(c[d>>2]|0)+8|0;c[a>>2]=(c
[a>>2]|0)+((c[(c[d>>2]|0)+12>>2]&8|0?1:-1)<<2);a=(c[d>>2]|0)+16|0;c[a>
;>2]=(c[a>>2]|0)+-1;c[d>>2]=c[(c[d>>2]|0)+4>>2]}c[f>>2]=c[b>>2];
c[d>>2]=c[c[f>>2]>>2];if(!(c[d>>2]|0)){i=g;return}c[e>>2]=c[(c[d>>2]|
0)+4>>2];while(1){if(!(c[e>>2]|0)){b=11;break}if((c[c[d>>2]>>2]|0)<=(c[c[e>>
;2]>>2]|0)){c[f>>2]=(c[d>>2]|0)+4;c[d>>2]=c[c[f>>2]>>2];if(!(c[d>
;>2]|0)){b=11;break}}else{c[c[f>>2]>>2]=c[e>>2];c[(c[d>>2]|0)+4>>2]=c[(c[
e>>2]|0)+4>>2];c[(c[e>>2]|0)+4>>2]=c[d>>2];c[f>>2]=c[b>>2];
c[d>>2]=c[c[f>>2]>>2]}c[e>>2]=c[(c[d>>2]|0)+4>>2]}if((b|0)==11){i=g;
return}}function Vo(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>
x3e;2]=b;c[f>>2]=d;c[h>>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>
x3e;2];i=e;return}function Wo(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;u=i;i=i+48|0;l=u+32|0;m=u+36|0;n=u+28|0;o=u+24|0;w=u+20|0;v=u+16|0;q=u+12|0;r=u+8|0;p=u+4|0;s=u+38|0;t=u;c[l>>2]=e;
b[m>>1]=f;c[n>>2]=g;c[o>>2]=h;c[w>>2]=j;c[v>>2]=k;c[w>>2]=c[w>
x3e;2];c[v>>2]=c[v>>2];if(((c[o>>2]|0)-(c[n>>2]|0)|0)>=(c[(c[l>>2]|0)+4
x3e;>2]|0)){i=u;return}c[q>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[l
>>2]|0)+4>>2]|0);c[r>>2]=c[o>>2]&0-(c[(c[l>>2]|0)+4>>2]|0);if((
c[q>>2]|0)!=(c[r>>2]|0)){i=u;return}c[p>>2]=(c[(c[l>>2]|0)+60>>2]|0)+(b[m>
;>1]>>3);a[s>>0]=128>>(b[m>>1]&7);c[q>>2]=c[q>>2]>>
;c[c[l>>2]>>2];if((c[q>>2]|0)<0){i=u;return}if((c[q>>2]|0)>=(c[(c[l>>
;2]|0)+104>>2]|0)){i=u;return}c[t>>2]=(c[p>>2]|0)+(0-(_(c[q>>2]|0,c[(c[l>>2]|0
)+104+8>>2]|0)|0));if((c[(c[l>>2]|0)+104+8>>2]|0)>0){w=_((c[(c[l>>2]|0)+104>
x3e;2]|0)-1|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[t>>2]=(c[t>>2]|0)+w}w=c[t>>2]|0;a
[w>>0]=d[w>>0]|d[s>>0];i=u;return}function Xo(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;x=i;i=i+48|0;l=x+36|0;m=x+40|0;n=x+32|0;o=x+28|0;p=x+24|0;q=x+20|0;t=x+16|0
;u=x+12|0;w=x+8|0;r=x+4|0;v=x+42|0;s=x;c[l>>2]=e;b[m>>1]=f;c[n>>2]=g;c[o>>2]=h;c[p>
x3e;2]=j;c[q>>2]=k;c[t>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[
l>>2]|0)+4>>2]|0);c[u>>2]=c[o>>2]&0-(c[(c[l>>2]|0)+4>>2]|0);c[w
>>2]=c[t>>2];if((c[t>>2]|0)>(c[u>>2]|0)){c[s>>2]=c[(c[p>>2]|0)+
12>>2]&7;if((c[t>>2]|0)!=((c[u>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)|0)){i=x;return
}a:do switch(c[s>>2]|0){case 0:{c[w>>2]=c[u>>2];break}case 4:{c[w>>2]=(((c[n>>
2]|0)+(c[o>>2]|0)-1|0)/2|0)+(c[(c[l>>2]|0)+8>>2]|0)&0-(c[(c[l>>2]|0)+4>>2
]|0);break}case 5:case 1:{if((c[(c[p>>2]|0)+28>>2]|0)==(c[q>>2]|0)?(c[(c[p>>2]|0)+16>
;>2]|0)<=0:0){if(!(c[(c[p>>2]|0)+12>>2]&16)){i=x;return}if(((c[o>>2]|0)-(c[n>
x3e;2]|0)|0)<(c[(c[l>>2]|0)+8>>2]|0)){i=x;return}}if((c[(c[q>>2]|0)+28>>2]|0)==(c[p
>>2]|0)?(c[(c[p>>2]|0)+20>>2]|0)==(b[m>>1]|0):0){if(!(c[(c[p>>2]|0)+12>
x3e;2]&32)){i=x;return}if(((c[o>>2]|0)-(c[n>>2]|0)|0)<(c[(c[l>>2]|0)+8>>2]|0)){
i=x;return}}if((c[s>>2]|0)==1){c[w>>2]=c[u>>2];break a}else{c[w>>2]=(((c[n>>2]|
0)+(c[o>>2]|0)-1|0)/2|0)+(c[(c[l>>2]|0)+8>>2]|0)&0-(c[(c[l>>2]|0)+4>>2]|0
);break a}}default:{i=x;return}}while(0);c[t>>2]=(c[w>>2]|0)==(c[t>>2]|0)?c[u>>2]|0:c[t
x3e;>2]|0;c[t>>2]=c[t>>2]>>c[c[l>>2]>>2];c[r>>2]=(c[(c[l>
x3e;2]|0)+60>>2]|0)+(b[m>>1]>>3);a[v>>0]=128>>(b[m>>1]&7);f=_(c
[t>>2]|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[r>>2]=(c[r>>2]|0)+(0-f);if((c[(c[l>
;>2]|0)+104+8>>2]|0)>0){f=_((c[(c[l>>2]|0)+104>>2]|0)-1|0,c[(c[l>>2]|0)+104+8
x3e;>2]|0)|0;c[r>>2]=(c[r>>2]|0)+f}if(((c[t>>2]|0)>=0?(c[t>>2]|0)<(c[(c[l
>>2]|0)+104>>2]|0):0)?d[c[r>>2]>>0]&d[v>>0]|0:0){i=x;return}}c[r>>
;2]=(c[(c[l>>2]|0)+60>>2]|0)+(b[m>>1]>>3);a[v>>0]=128>>(b[m>>
;1]&7);c[t>>2]=c[w>>2]>>c[c[l>>2]>>2];if((c[t>>2]|0)<0){i=
x;return}if((c[t>>2]|0)>=(c[(c[l>>2]|0)+104>>2]|0)){i=x;return}f=_(c[t>>2]|0,c[(c[l
>>2]|0)+104+8>>2]|0)|0;c[r>>2]=(c[r>>2]|0)+(0-f);if((c[(c[l>>2]|0)+104+8>
x3e;2]|0)>0){f=_((c[(c[l>>2]|0)+104>>2]|0)-1|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[r>
;>2]=(c[r>>2]|0)+f}f=c[r>>2]|0;a[f>>0]=d[f>>0]|d[v>>0];i=x;return}function
Yo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return}function Zo(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]|0)+8>>2];Fb(c[e
x3e;>2]|0,c[d>>2]|0);c[d>>2]=0;i=b;return}function _o(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)+4>>2];Ua[c[(c[(c[(c[e>>2]|0)+20>>2]|
0)+56>>2]|0)+8>>2]&31](c[(c[e>>2]|0)+60>>2]|0,c[(c[d>>2]|0)+172>>
;2]|0,c[(c[d>>2]|0)+176>>2]|0);i=b;return 0}function $o(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;w=i;i=i+128|0;j=w+112|0;k=w+108|0;l=w+104|0;m=w+100|0;h=w+96|0;p=w+92|0;s=w+88|0;o=
w+72|0;v=w+64|0;q=w+60|0;u=w+56|0;n=w+52|0;r=w+48|0;t=w;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[h>>
;2]=g;if((c[(c[l>>2]|0)+72>>2]|0)==(c[(c[k>>2]|0)+24>>2]|0)){f=c[(c[k>>2]|0)+20
>>2]|0;if((c[m>>2]|0)!=2){if((f|0)==4028){c[j>>2]=19;v=c[j>>2]|0;i=w;return v|0}}else if
((f|0)==4088){c[j>>2]=19;v=c[j>>2]|0;i=w;return v|0}c[s>>2]=(c[l>>2]|0)+108;if(c[h>
x3e;2]|0)Nb(c[s>>2]|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0);_d(c[s>>
;2]|0,o);c[o>>2]=c[o>>2]&-64;c[o+4>>2]=c[o+4>>2]&-64;c[o+8>>2]=(c[o+
8>>2]|0)+63&-64;c[o+12>>2]=(c[o+12>>2]|0)+63&-64;c[v>>2]=(c[o+8>>2]|
0)-(c[o>>2]|0)>>6;c[q>>2]=(c[o+12>>2]|0)-(c[o+4>>2]|0)>>6;c[n>
x3e;2]=(c[l>>2]|0)+76;c[r>>2]=c[(c[k>>2]|0)+8>>2];if(c[(c[(c[l>>2]|0)+156>
;>2]|0)+4>>2]&1|0){Fb(c[r>>2]|0,c[(c[n>>2]|0)+12>>2]|0);c[(c[n>>2]|0
)+12>>2]=0;h=(c[(c[l>>2]|0)+156>>2]|0)+4|0;c[h>>2]=c[h>>2]&-2}f=c[v>
x3e;2]|0;if(c[m>>2]&2|0){c[u>>2]=(f+15|0)>>>4<<1;a[(c[n>>2]|0)+18>
;>0]=1}else{c[u>>2]=f+3&-4;a[(c[n>>2]|0)+18>>0]=2;b[(c[n>>2]|0)+16>>
1]=256}c[(c[n>>2]|0)+4>>2]=c[v>>2];c[c[n>>2]>>2]=c[q>>2];c[(c[n>
;>2]|0)+8>>2]=c[u>>2];v=hc(c[r>>2]|0,c[q>>2]|0,0,c[u>>2]|0,0,p)|0;c[(c[n
x3e;>2]|0)+12>>2]=v;if(!(c[p>>2]|0)){v=(c[(c[l>>2]|0)+156>>2]|0)+4|0;c[v>>
;2]=c[v>>2]|1;Nb(c[s>>2]|0,0-(c[o>>2]|0)|0,0-(c[o+4>>2]|0)|0);c[t>>2]=c[n>
;>2];c[t+4>>2]=c[s>>2];c[t+8>>2]=0;if((a[(c[n>>2]|0)+18>>0]|0)==2){v=t+8|
0;c[v>>2]=c[v>>2]|1}c[p>>2]=Ya[c[(c[k>>2]|0)+64>>2]&127](c[(c[k>>
;2]|0)+60>>2]|0,t)|0;Nb(c[s>>2]|0,c[o>>2]|0,c[o+4>>2]|0);if(!(c[p>>2]|0)){c[(c
[l>>2]|0)+72>>2]=1651078259;c[(c[l>>2]|0)+100>>2]=c[o>>2]>>6;c[(c[l
x3e;>2]|0)+104>>2]=c[o+12>>2]>>6}}}else c[p>>2]=6;c[j>>2]=c[p>>
2];v=c[j>>2]|0;i=w;return v|0}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,l=0;k=i;i=i+32|0;l=
k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[l>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>
;2]=0;if((c[(c[f>>2]|0)+72>>2]|0)!=(c[(c[l>>2]|0)+24>>2]|0)){c[j>>2]=6;l=c[j
x3e;>2]|0;i=k;return l|0}if(c[g>>2]|0)Kb((c[f>>2]|0)+108|0,c[g>>2]|0);if(!(c[h>>2]|
0)){l=c[j>>2]|0;i=k;return l|0}Nb((c[f>>2]|0)+108|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|
0)+4>>2]|0);l=c[j>>2]|0;i=k;return l|0}function bp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0
;h=g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[e>>2]=b;c[f>>2]=d;b=c[f>>2]|0;c[b>>2]=0;c[b+4
>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;if((c[(c[e>>2]|0)+72>>2]|0)!=(c[(c[h>>
;2]|0)+24>>2]|0)){i=g;return}_d((c[e>>2]|0)+108|0,c[f>>2]|0);i=g;return}function cp(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=Oa
[c[(c[(c[(c[h>>2]|0)+20>>2]|0)+56>>2]|0)+12>>2]&63](c[(c[h>>2]|0)+60>
;>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function dp(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[c[e>>2]>>
2]=0;c[g>>2]=bc(c[d>>2]|0,20,f)|0;if(c[f>>2]|0){g=c[f>>2]|0;i=h;return g|0}c[(c[g>
x3e;2]|0)+12>>2]=c[d>>2];c[c[e>>2]>>2]=c[g>>2];g=c[f>>2]|0;i=h;return
g|0}function ep(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;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>
;>2]=a;c[e>>2]=b;c[f>>2]=d;c[g>>2]=c[k>>2];if(!(c[k>>2]|0)){i=j;return}if
((c[e>>2]|0)!=0&(c[f>>2]|0)>=3476){c[h>>2]=c[e>>2];c[(c[g>>2]|0)+16
x3e;>2]=c[h>>2];c[c[g>>2]>>2]=(c[e>>2]|0)+1440;c[(c[g>>2]|0)+4>>
;2]=(c[e>>2]|0)+(c[f>>2]|0)-(c[c[g>>2]>>2]|0)&-16;c[(c[g>>2]|0)+8>
x3e;2]=((c[(c[g>>2]|0)+4>>2]|0)>>>0)/128|0;i=j;return}else{c[c[g>>2]>>2]=
0;c[(c[g>>2]|0)+4>>2]=0;c[(c[g>>2]|0)+16>>2]=0;i=j;return}}function fp(a,d){a=a|0;d=d|0;
var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[f>>2]=a;c[g>>2
]=d;c[h>>2]=c[(c[g>>2]|0)+4>>2];c[j>>2]=c[c[g>>2]>>2];if((c[f>
x3e;2]|0?c[c[f>>2]>>2]|0:0)?c[(c[f>>2]|0)+4>>2]|0:0){if(!(c[h>>2]|0)){c[e>
;>2]=20;k=c[e>>2]|0;i=l;return k|0}if(b[(c[h>>2]|0)+2>>1]|0?(b[c[h>>2]>>1
]|0)>0:0){if(c[(c[h>>2]|0)+12>>2]|0?c[(c[h>>2]|0)+4>>2]|0:0){if((b[(c[h>>
2]|0)+2>>1]|0)!=((b[(c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>>1]|0)-1<<1
)>>1]|0)+1|0)){c[e>>2]=20;k=c[e>>2]|0;i=l;return k|0}c[k>>2]=c[(c[f>>2]|0)+16
x3e;>2];do if(!(c[(c[g>>2]|0)+8>>2]&2)){if(!(c[j>>2]|0)){c[e>>2]=6;k=c[e>
x3e;2]|0;i=l;return k|0}if(c[(c[j>>2]|0)+4>>2]|0?c[c[j>>2]>>2]|0:0){if(c[(c[j>>
;2]|0)+12>>2]|0)break;c[e>>2]=6;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=0;k=c[e>>2]|
0;i=l;return k|0}while(0);if(!(c[(c[g>>2]|0)+8>>2]&1)){c[e>>2]=19;k=c[e>>2]|0;i=l;return
k|0}do if(c[(c[g>>2]|0)+8>>2]&2|0){d=(c[k>>2]|0)+1024|0;if(c[(c[g>>2]|0)+8>
x3e;2]&4|0){a=(c[g>>2]|0)+32|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8
x3e;>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];break}else{c[d>>2]=-32768;c[(c[k>>
;2]|0)+1024+4>>2]=-32768;c[(c[k>>2]|0)+1024+8>>2]=32767;c[(c[k>>2]|0)+1024+12>>
;2]=32767;break}}else{c[(c[k>>2]|0)+1024>>2]=0;c[(c[k>>2]|0)+1024+4>>2]=0;c[(c[k>
x3e;2]|0)+1024+8>>2]=c[(c[j>>2]|0)+4>>2];c[(c[k>>2]|0)+1024+12>>2]=c[c[j>
x3e;2]>>2]}while(0);gp(c[k>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|
0);a=(c[k>>2]|0)+980|0;h=c[h>>2]|0;c[a>>2]=c[h>>2];c[a+4>>2]=c[h+4>>
2];c[a+8>>2]=c[h+8>>2];c[a+12>>2]=c[h+12>>2];c[a+16>>2]=c[h+16>>2];c
[(c[k>>2]|0)+52>>2]=0;c[(c[k>>2]|0)+40>>2]=1;c[(c[k>>2]|0)+1248>>2]=
c[(c[f>>2]|0)+8>>2];c[(c[k>>2]|0)+1232>>2]=0;if(c[(c[g>>2]|0)+8>>2]
x26;2|0){c[(c[k>>2]|0)+1236>>2]=c[(c[g>>2]|0)+12>>2];c[(c[k>>2]|0)+1240>
x3e;2]=c[(c[g>>2]|0)+28>>2]}else{h=(c[k>>2]|0)+1e3|0;j=c[j>>2]|0;c[h>>2]=c[j
x3e;>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[h+12>>2]=c[j+12>
x3e;2];c[h+16>>2]=c[j+16>>2];c[h+20>>2]=c[j+20>>2];c[(c[k>>2]|0)+1236>>
;2]=13;c[(c[k>>2]|0)+1240>>2]=c[k>>2]}c[e>>2]=ip(c[k>>2]|0)|0;k=c[e>>
;2]|0;i=l;return k|0}c[e>>2]=20;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=0;k=c[e>>2]|0;i=l;return
k|0}c[e>>2]=6;k=c[e>>2]|0;i=l;return k|0}function gp(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[(c[f>>2]|0)+1412>>2]=c[
g>>2];c[(c[f>>2]|0)+1416>>2]=c[h>>2];c[(c[f>>2]|0)+1420>>2]=c[g>
;>2];c[(c[f>>2]|0)+44>>2]=0;c[(c[f>>2]|0)+48>>2]=0;c[(c[f>>2]|0)+52>
x3e;2]=0;c[(c[f>>2]|0)+32>>2]=0;c[(c[f>>2]|0)+36>>2]=0;c[(c[f>>2]|0)+40>
x3e;2]=1;i=e;return}function hp(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;r=i;i=i+32|0;s=r+24
|0;l=r+20|0;m=r+16|0;t=r+12|0;o=r+8|0;k=r+4|0;n=r+28|0;p=r;c[s>>2]=f;c[l>>2]=g;c[m>>2]=h;c[t>
x3e;2]=j;c[k>>2]=(c[t>>2]|0)+1e3;c[o>>2]=(c[(c[k>>2]|0)+12>>2]|0)+(0-(_(c[s>
;>2]|0,c[(c[k>>2]|0)+8>>2]|0)|0));if((c[(c[k>>2]|0)+8>>2]|0)>=0){t=_((c[c[k>
;>2]>>2]|0)-1|0,c[(c[k>>2]|0)+8>>2]|0)|0;c[o>>2]=(c[o>>2]|0)+t}while(1){if
((c[l>>2]|0)<=0)break;a[n>>0]=a[(c[m>>2]|0)+4>>0]|0;a:do if(a[n>>0]|0){g=(
c[o>>2]|0)+(b[c[m>>2]>>1]|0)|0;if((e[(c[m>>2]|0)+2>>1]|0)>=8){Ns(g|0,d[n
x3e;>0]&255|0,e[(c[m>>2]|0)+2>>1]|0)|0;break}c[p>>2]=g;switch(e[(c[m>>2]|0)+2
x3e;>1]|0){case 7:{t=a[n>>0]|0;q=c[p>>2]|0;c[p>>2]=q+1;a[q>>0]=t;q=9;break}case 6:{
q=9;break}case 5:{q=10;break}case 4:{q=11;break}case 3:{q=12;break}case 2:{q=13;break}case 1:break;default:break a}if((q|0)==9){
s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s;q=10}if((q|0)==10){s=a[n>>0]|0;t
=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s;q=11}if((q|0)==11){s=a[n>>0]|0;t=c[p>>2]|0;c[
p>>2]=t+1;a[t>>0]=s;q=12}if((q|0)==12){s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t
>>0]=s;q=13}if((q|0)==13){q=0;s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s}a[
c[p>>2]>>0]=a[n>>0]|0}while(0);c[l>>2]=(c[l>>2]|0)+-1;c[m>>2]=(c[m
x3e;>2]|0)+6}i=r;return}function ip(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;w=i;i=i+400|0;u=w+388|0;v=w+384|0;d=w+64|0;b=w+60|0;q=w+56|0;r=w+52|0;p=w+48|0;m=w+44|0;n=w+40|0;k=w+36|0;e=w+32|0;s=w+28|
0;o=w+24|0;l=w+20|0;j=w+16|0;t=w+12|0;h=w+8|0;f=w+4|0;g=w;c[v>>2]=a;jp(c[v>>2]|0);c[k>>2]=(c[v>
;>2]|0)+1024;if((((c[(c[v>>2]|0)+12>>2]|0)>(c[c[k>>2]>>2]|0)?(c[(c[v>>
;2]|0)+8>>2]|0)<(c[(c[k>>2]|0)+8>>2]|0):0)?(c[(c[v>>2]|0)+20>>2]|0)>(
c[(c[k>>2]|0)+4>>2]|0):0)?(c[(c[v>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0)+12>
;>2]|0):0){if((c[(c[v>>2]|0)+8>>2]|0)<(c[c[k>>2]>>2]|0))c[(c[v>>2]|0
)+8>>2]=c[c[k>>2]>>2];if((c[(c[v>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0
)+4>>2]|0))c[(c[v>>2]|0)+16>>2]=c[(c[k>>2]|0)+4>>2];if((c[(c[v>>2]|0
)+12>>2]|0)>(c[(c[k>>2]|0)+8>>2]|0))c[(c[v>>2]|0)+12>>2]=c[(c[k>>
;2]|0)+8>>2];if((c[(c[v>>2]|0)+20>>2]|0)>(c[(c[k>>2]|0)+12>>2]|0))c[(c[v
x3e;>2]|0)+20>>2]=c[(c[k>>2]|0)+12>>2];c[(c[v>>2]|0)+24>>2]=(c[(c[v>
x3e;2]|0)+12>>2]|0)-(c[(c[v>>2]|0)+8>>2]|0);c[(c[v>>2]|0)+28>>2]=(c[(c[v>
x3e;2]|0)+20>>2]|0)-(c[(c[v>>2]|0)+16>>2]|0);c[r>>2]=((c[(c[v>>2]|0)+20>
x3e;2]|0)-(c[(c[v>>2]|0)+16>>2]|0)|0)/(c[(c[v>>2]|0)+1248>>2]|0)|0;if(!(c[r>>2
]|0))c[r>>2]=1;if((c[r>>2]|0)>=39)c[r>>2]=39;c[(c[v>>2]|0)+1252>>2]=0;c[p
>>2]=c[(c[v>>2]|0)+16>>2];c[n>>2]=c[(c[v>>2]|0)+20>>2];c[q>>
;2]=0;a:while(1){if((c[q>>2]|0)>=(c[r>>2]|0)){b=42;break}c[m>>2]=(c[p>>2]|0)+(c[(c[
v>>2]|0)+1248>>2]|0);if(!((c[q>>2]|0)!=((c[r>>2]|0)-1|0)?(c[m>>2]|0)<=(c[
n>>2]|0):0))c[m>>2]=c[n>>2];c[d>>2]=c[p>>2];c[d+4>>2]=c[m>>
;2];c[b>>2]=d;b:while(1){if((c[b>>2]|0)>>>0<d>>>0)break;c[(c[v>>
;2]|0)+1420>>2]=c[(c[v>>2]|0)+1412>>2];c[(c[v>>2]|0)+1424>>2]=(c[(c[b>>
;2]|0)+4>>2]|0)-(c[c[b>>2]>>2]|0);c[h>>2]=c[(c[v>>2]|0)+1424>>2]<
;<2;c[g>>2]=((c[h>>2]|0)>>>0)%16|0;if((c[g>>2]|0)>0)c[h>>2]=(c[
h>>2]|0)+(16-(c[g>>2]|0));c[f>>2]=c[(c[v>>2]|0)+1416>>2];c[f>>2]=(c[
f>>2]|0)-(((c[f>>2]|0)>>>0)%16|0);c[j>>2]=(c[(c[v>>2]|0)+1412>>
2]|0)+(c[f>>2]|0);c[(c[v>>2]|0)+44>>2]=(c[(c[v>>2]|0)+1412>>2]|0)+(c[h>
x3e;2]|0);do if((c[(c[v>>2]|0)+44>>2]|0)>>>0<(c[j>>2]|0)>>>0?(c
[(c[v>>2]|0)+48>>2]=((c[j>>2]|0)-(c[(c[v>>2]|0)+44>>2]|0)|0)/16|0,(c[(c[v>
;>2]|0)+48>>2]|0)>=2):0){c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[(c[v>>2]|0
)+1424>>2]|0))break;c[(c[(c[v>>2]|0)+1420>>2]|0)+(c[t>>2]<<2)>>2]=0;
c[t>>2]=(c[t>>2]|0)+1}c[(c[v>>2]|0)+52>>2]=0;c[(c[v>>2]|0)+40>>2]=1;
c[(c[v>>2]|0)+16>>2]=c[c[b>>2]>>2];c[(c[v>>2]|0)+20>>2]=c[(c[b>
x3e;2]|0)+4>>2];c[(c[v>>2]|0)+28>>2]=(c[(c[b>>2]|0)+4>>2]|0)-(c[c[b>>
;2]>>2]|0);c[l>>2]=kp(c[v>>2]|0)|0;if(c[l>>2]|0)if((c[l>>2]|0)!=64){b=35;break
a}else break;else{zp(c[v>>2]|0,(c[v>>2]|0)+1e3|0);c[b>>2]=(c[b>>2]|0)+-8;continue b}}while
(0);c[e>>2]=c[c[b>>2]>>2];c[s>>2]=c[(c[b>>2]|0)+4>>2];c[o>>
;2]=(c[e>>2]|0)+((c[s>>2]|0)-(c[e>>2]|0)>>1);if((c[o>>2]|0)==(c[e>>2
]|0)){b=37;break a}if(((c[e>>2]|0)-(c[s>>2]|0)|0)>=(c[(c[v>>2]|0)+1248>>2]|0)){a=(c
[v>>2]|0)+1252|0;c[a>>2]=(c[a>>2]|0)+1}c[(c[b>>2]|0)+8>>2]=c[e>>2];c
[(c[b>>2]|0)+8+4>>2]=c[o>>2];c[c[b>>2]>>2]=c[o>>2];c[(c[b>>
;2]|0)+4>>2]=c[s>>2];c[b>>2]=(c[b>>2]|0)+8}c[q>>2]=(c[q>>2]|0)+1;c[p
>>2]=c[m>>2]}if((b|0)==35){c[u>>2]=1;v=c[u>>2]|0;i=w;return v|0}else if((b|0)==37){c[u
x3e;>2]=1;v=c[u>>2]|0;i=w;return v|0}else if((b|0)==42){if((c[(c[v>>2]|0)+1252>>2]|0)>8?(
c[(c[v>>2]|0)+1248>>2]|0)>16:0)c[(c[v>>2]|0)+1248>>2]=(c[(c[v>>2]|0)+1248
>>2]|0)/2|0;c[u>>2]=0;v=c[u>>2]|0;i=w;return v|0}}c[u>>2]=0;v=c[u>>2]|0;i=w;return
v|0}function jp(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;d=j+20|0;k=j+16|0;f=j+12|0;e=j+8|0;g=j+4|0;h=j;c[d>
x3e;2]=a;c[k>>2]=(c[d>>2]|0)+980;c[f>>2]=c[(c[k>>2]|0)+4>>2];c[e>>2]=(
c[f>>2]|0)+(b[(c[k>>2]|0)+2>>1]<<3);if((b[(c[k>>2]|0)+2>>1]|0)<=
0){c[(c[d>>2]|0)+12>>2]=0;c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+20>>2]=
0;c[(c[d>>2]|0)+16>>2]=0;i=j;return}k=c[c[f>>2]>>2]|0;c[(c[d>>2]|0)+12>
x3e;2]=k;c[(c[d>>2]|0)+8>>2]=k;k=c[(c[f>>2]|0)+4>>2]|0;c[(c[d>>2]|0)+20>
x3e;2]=k;c[(c[d>>2]|0)+16>>2]=k;c[f>>2]=(c[f>>2]|0)+8;while(1){if((c[f>>2]|0)
x3e;>>0>=(c[e>>2]|0)>>>0)break;c[g>>2]=c[c[f>>2]>>2];c[h
x3e;>2]=c[(c[f>>2]|0)+4>>2];if((c[g>>2]|0)<(c[(c[d>>2]|0)+8>>2]|0))c
[(c[d>>2]|0)+8>>2]=c[g>>2];if((c[g>>2]|0)>(c[(c[d>>2]|0)+12>>2]|
0))c[(c[d>>2]|0)+12>>2]=c[g>>2];if((c[h>>2]|0)<(c[(c[d>>2]|0)+16>>
;2]|0))c[(c[d>>2]|0)+16>>2]=c[h>>2];if((c[h>>2]|0)>(c[(c[d>>2]|0)+20>
;>2]|0))c[(c[d>>2]|0)+20>>2]=c[h>>2];c[f>>2]=(c[f>>2]|0)+8}c[(c[d>
x3e;2]|0)+8>>2]=c[(c[d>>2]|0)+8>>2]>>6;c[(c[d>>2]|0)+16>>2]=c[(c[d
x3e;>2]|0)+16>>2]>>6;c[(c[d>>2]|0)+12>>2]=(c[(c[d>>2]|0)+12>>2]|
0)+63>>6;c[(c[d>>2]|0)+20>>2]=(c[(c[d>>2]|0)+20>>2]|0)+63>>6;i=j;return
}function kp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;h=4;f=Fs(40)|0;c[f>>2]=0;g=j;c[g>>2]=0;h=
Qs(a+1256|0,1,f|0,h|0)|0;f=C;n=0;b=n;n=0;if((b|0)!=0&(o|0)!=0){d=Rs(c[b>>2]|0,h|0,f|0)|0;if(!d)ta(b|0,o|0);C=o}else
d=-1;if((d|0)==1)b=C;else b=0;while(1){if(b|0){b=7;break}n=0;b=ea(46,a+980|0,4172,a|0)|0;d=n;n=0;if((d|0)!=0&(o|0)!=0){e=Rs
(c[d>>2]|0,h|0,f|0)|0;if(!e)ta(d|0,o|0);C=o}else e=-1;if((e|0)==1){b=C;continue}c[g>>2]=b;n=0;la(43,a|0);b=n
;n=0;if((b|0)!=0&(o|0)!=0){d=Rs(c[b>>2]|0,h|0,f|0)|0;if(!d)ta(b|0,o|0);C=o}else d=-1;if((d|0)==1)b=C;else{b=6;break
}}if((b|0)==6){g=c[g>>2]|0;Gs(h|0);i=j;return g|0}else if((b|0)==7){c[g>>2]=64;g=c[g>>2]|0;Gs(h|0);
i=j;return g|0}return 0}function lp(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;e=d+8|0;g=d+4|0;f=d;c[h>
x3e;2]=a;c[e>>2]=b;mp(c[e>>2]|0);c[g>>2]=c[c[h>>2]>>2]<<2;c[f>
x3e;2]=c[(c[h>>2]|0)+4>>2]<<2;op(c[e>>2]|0,c[g>>2]>>8,c[f>>
;2]>>8);c[(c[e>>2]|0)+64>>2]=c[g>>2];c[(c[e>>2]|0)+68>>2]=c[f>
x3e;2];i=d;return 0}function mp(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(c[(c[b>>2]|0)+
40>>2]|0){i=e;return}if(!(c[(c[b>>2]|0)+32>>2]|c[(c[b>>2]|0)+36>>2])){i=e;return
}c[d>>2]=np(c[b>>2]|0)|0;a=(c[d>>2]|0)+8|0;c[a>>2]=(c[a>>2]|0)+(c[(c[b>
x3e;2]|0)+32>>2]|0);a=(c[d>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+(c[(c[b>>2]|0)+36>
;>2]|0);i=e;return}function np(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+12|0;f=h+8|0;e=h+4|0;g=h;c[d>>
;2]=a;c[g>>2]=c[c[d>>2]>>2];if((c[g>>2]|0)>(c[(c[d>>2]|0)+24>>2
]|0))c[g>>2]=c[(c[d>>2]|0)+24>>2];c[f>>2]=(c[(c[d>>2]|0)+1420>>2]|0)+(
c[(c[d>>2]|0)+4>>2]<<2);while(1){c[e>>2]=c[c[f>>2]>>2];if(!(c[e>
;>2]|0))break;if((c[c[e>>2]>>2]|0)>(c[g>>2]|0))break;if((c[c[e>>2]>>
2]|0)==(c[g>>2]|0)){b=11;break}c[f>>2]=(c[e>>2]|0)+12}if((b|0)==11){g=c[e>>2]|0;i=h;return
g|0}a=c[d>>2]|0;if((c[(c[d>>2]|0)+52>>2]|0)>=(c[(c[d>>2]|0)+48>>2]|0))ta
(a+1256|0,1);b=c[a+44>>2]|0;a=(c[d>>2]|0)+52|0;d=c[a>>2]|0;c[a>>2]=d+1;c[e>>2]=
b+(d<<4);c[c[e>>2]>>2]=c[g>>2];c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>
;2]|0)+4>>2]=0;c[(c[e>>2]|0)+12>>2]=c[c[f>>2]>>2];c[c[f>>2]>>
;2]=c[e>>2];g=c[e>>2]|0;i=h;return g|0}function op(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0
;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if((c[f>>2]|0)>(c[(c[e>>
;2]|0)+12>>2]|0))c[f>>2]=c[(c[e>>2]|0)+12>>2];if((c[f>>2]|0)<(c[(c[e>
;>2]|0)+8>>2]|0))c[f>>2]=(c[(c[e>>2]|0)+8>>2]|0)-1;c[(c[e>>2]|0)+32>
x3e;2]=0;c[(c[e>>2]|0)+36>>2]=0;c[c[e>>2]>>2]=(c[f>>2]|0)-(c[(c[e>>2
]|0)+8>>2]|0);c[(c[e>>2]|0)+4>>2]=(c[g>>2]|0)-(c[(c[e>>2]|0)+16>>2]|
0);c[(c[e>>2]|0)+72>>2]=c[g>>2]<<8;c[(c[e>>2]|0)+40>>2]=0;pp(c[e>
;>2]|0,c[f>>2]|0,c[g>>2]|0);i=h;return}function pp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i
+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[g>>2]=(c[g>>2]|0)-(c
[(c[e>>2]|0)+16>>2]|0);if((c[f>>2]|0)>(c[(c[e>>2]|0)+12>>2]|0))c[f>
x3e;2]=c[(c[e>>2]|0)+12>>2];a=(c[f>>2]|0)-(c[(c[e>>2]|0)+8>>2]|0)|0;c[f>
x3e;2]=a;c[f>>2]=(c[f>>2]|0)<0?-1:a;if(!((c[f>>2]|0)==(c[c[e>>2]>>2]|0)?(
c[g>>2]|0)==(c[(c[e>>2]|0)+4>>2]|0):0)){if(!(c[(c[e>>2]|0)+40>>2]|0))mp(c[e>
;>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[(c[e>>2]|0)+36>>2]=0}c[c[e>>2]>>
;2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=c[g>>2];if((c[g>>2]|0)>>>0>
;=(c[(c[e>>2]|0)+28>>2]|0)>>>0){d=1;d=d&1;a=c[e>>2]|0;a=a+40|0;c[a>>
2]=d;i=h;return}d=(c[f>>2]|0)>=(c[(c[e>>2]|0)+24>>2]|0);d=d&1;a=c[e>>2]|0;a=a+
40|0;c[a>>2]=d;i=h;return}function qp(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;rp(c[f>>2]|0,c[c[e>>2]>>2]<<2,c[(c[e>>2]|0)+4>>2]
x3c;<2);i=d;return 0}function rp(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,y=0,z=0,A=0,B=0,C=0;C=i;i=i+96|0;e=C+88|0;f=C+84|0;g=C+80|0;n=C+76|0;o=C+72|0;q=C+68|0;r=C+64|0;w=C+60|0;k=C+56|0
;l=C+52|0;A=C+48|0;B=C+44|0;x=C+40|0;p=C+36|0;j=C+32|0;y=C+28|0;t=C+24|0;s=C+20|0;v=C+16|0;u=C+12|0;m=C+8|0;z=C+4|0;h=C;c[e>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[n>>2]=c[(c[e>>2]|0)+72>>2]>>8;c[o
x3e;>2]=c[g>>2]>>8;c[q>>2]=(c[(c[e>>2]|0)+68>>2]|0)-(c[(c[e>>2]|
0)+72>>2]|0);c[r>>2]=(c[g>>2]|0)-(c[o>>2]<<8);c[k>>2]=(c[f>>
;2]|0)-(c[(c[e>>2]|0)+64>>2]|0);c[l>>2]=(c[g>>2]|0)-(c[(c[e>>2]|0)+68>>
;2]|0);c[v>>2]=c[n>>2];c[u>>2]=c[o>>2];if((c[n>>2]|0)>(c[o>>2]|
0)){c[v>>2]=c[o>>2];c[u>>2]=c[n>>2]}if((c[v>>2]|0)>=(c[(c[e>>2]|
0)+20>>2]|0)){A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>
;>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=
A;i=C;return}if((c[u>>2]|0)<(c[(c[e>>2]|0)+16>>2]|0)){A=c[f>>2]|0;B=c[e>>
2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0
;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C;return}if((c[n>>2]|0)==(c[o>>2]|0)){
sp(c[e>>2]|0,c[n>>2]|0,c[(c[e>>2]|0)+64>>2]|0,c[q>>2]|0,c[f>>2]|0,c[
r>>2]|0);A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>
;2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C
;return}c[s>>2]=1;if(!(c[k>>2]|0)){c[m>>2]=c[(c[e>>2]|0)+64>>2]>>8;c
[z>>2]=(c[(c[e>>2]|0)+64>>2]|0)-(c[m>>2]<<8)<<1;c[p>>2]=256
;if((c[l>>2]|0)<0){c[p>>2]=0;c[s>>2]=-1}c[j>>2]=(c[p>>2]|0)-(c[q>>
;2]|0);A=_(c[z>>2]|0,c[j>>2]|0)|0;B=(c[e>>2]|0)+32|0;c[B>>2]=(c[B>>2]|0)+A;B=(
c[e>>2]|0)+36|0;c[B>>2]=(c[B>>2]|0)+(c[j>>2]|0);c[n>>2]=(c[n>>2]|0)+(
c[s>>2]|0);pp(c[e>>2]|0,c[m>>2]|0,c[n>>2]|0);c[j>>2]=(c[p>>2]|0)+(c[
p>>2]|0)-256;c[h>>2]=_(c[z>>2]|0,c[j>>2]|0)|0;while(1){if((c[n>>2]|0)==(c[o>
;>2]|0))break;B=(c[e>>2]|0)+32|0;c[B>>2]=(c[B>>2]|0)+(c[h>>2]|0);B=(c[e>>
2]|0)+36|0;c[B>>2]=(c[B>>2]|0)+(c[j>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[s>>
;2]|0);pp(c[e>>2]|0,c[m>>2]|0,c[n>>2]|0)}c[j>>2]=(c[r>>2]|0)-256+(c[p>>
;2]|0);B=_(c[z>>2]|0,c[j>>2]|0)|0;A=(c[e>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+B;A=(
c[e>>2]|0)+36|0;c[A>>2]=(c[A>>2]|0)+(c[j>>2]|0);A=c[f>>2]|0;B=c[e>>2
]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;
A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C;return}c[x>>2]=_(256-(c[q>>2]|0)|0,c
[k>>2]|0)|0;c[p>>2]=256;c[s>>2]=1;if((c[l>>2]|0)<0){c[x>>2]=_(c[q>
x3e;2]|0,c[k>>2]|0)|0;c[p>>2]=0;c[s>>2]=-1;c[l>>2]=0-(c[l>>2]|0)}c[j>>
;2]=(c[x>>2]|0)/(c[l>>2]|0)|0;c[w>>2]=(c[x>>2]|0)%(c[l>>2]|0)|0;if((c[w>
x3e;2]|0)<0){c[j>>2]=(c[j>>2]|0)+-1;c[w>>2]=(c[w>>2]|0)+(c[l>>2]|0)}c[A
x3e;>2]=(c[(c[e>>2]|0)+64>>2]|0)+(c[j>>2]|0);sp(c[e>>2]|0,c[n>>2]|0,c[(c[
e>>2]|0)+64>>2]|0,c[q>>2]|0,c[A>>2]|0,c[p>>2]|0);c[n>>2]=(c[n>
x3e;2]|0)+(c[s>>2]|0);pp(c[e>>2]|0,c[A>>2]>>8,c[n>>2]|0);a:do if((c[n>>
;2]|0)!=(c[o>>2]|0)){c[x>>2]=c[k>>2]<<8;c[t>>2]=(c[x>>2]|0)/(c[l>
;>2]|0)|0;c[y>>2]=(c[x>>2]|0)%(c[l>>2]|0)|0;if((c[y>>2]|0)<0){c[t>>2
]=(c[t>>2]|0)+-1;c[y>>2]=(c[y>>2]|0)+(c[l>>2]|0)}c[w>>2]=(c[w>>2]|0)-(
c[l>>2]|0);while(1){if((c[n>>2]|0)==(c[o>>2]|0))break a;c[j>>2]=c[t>>2];c[w>
;>2]=(c[w>>2]|0)+(c[y>>2]|0);if((c[w>>2]|0)>=0){c[w>>2]=(c[w>>2]|0)-(
c[l>>2]|0);c[j>>2]=(c[j>>2]|0)+1}c[B>>2]=(c[A>>2]|0)+(c[j>>2]|0);sp(
c[e>>2]|0,c[n>>2]|0,c[A>>2]|0,256-(c[p>>2]|0)|0,c[B>>2]|0,c[p>>2]|0);
c[A>>2]=c[B>>2];c[n>>2]=(c[n>>2]|0)+(c[s>>2]|0);pp(c[e>>2]|0,c[A>
;>2]>>8,c[n>>2]|0)}}while(0);sp(c[e>>2]|0,c[n>>2]|0,c[A>>2]|0,256-(c[p>
;>2]|0)|0,c[f>>2]|0,c[r>>2]|0);A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A
;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>
;2]|0;B=B+72|0;c[B>>2]=A;i=C;return}function sp(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;y=i;i=i+80|0;h=y+68|0;j=y+64|0;A=y+60|0;k=y+56|0;z=y+52|0;l=y+48|0;o=
y+44|0;p=y+40|0;r=y+36|0;s=y+32|0;m=y+28|0;v=y+24|0;u=y+20|0;x=y+16|0;w=y+12|0;q=y+8|0;n=y+4|0;t=y;c[h>>2]=a;c[j>
x3e;2]=b;c[A>>2]=d;c[k>>2]=e;c[z>>2]=f;c[l>>2]=g;c[n>>2]=(c[z>>2]|0)-(
c[A>>2]|0);c[o>>2]=c[A>>2]>>8;c[p>>2]=c[z>>2]>>8;c[r>
x3e;2]=(c[A>>2]|0)-(c[o>>2]<<8);c[s>>2]=(c[z>>2]|0)-(c[p>>2]<
x3c;8);if((c[k>>2]|0)==(c[l>>2]|0)){pp(c[h>>2]|0,c[p>>2]|0,c[j>>2]|0);i=y;return
}if((c[o>>2]|0)==(c[p>>2]|0)){c[m>>2]=(c[l>>2]|0)-(c[k>>2]|0);z=_((c[r>
x3e;2]|0)+(c[s>>2]|0)|0,c[m>>2]|0)|0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;
A=(c[h>>2]|0)+36|0;c[A>>2]=(c[A>>2]|0)+(c[m>>2]|0);i=y;return}c[w>>2]=_(256-(c
[r>>2]|0)|0,(c[l>>2]|0)-(c[k>>2]|0)|0)|0;c[q>>2]=256;c[t>>2]=1;if((c[n>
x3e;2]|0)<0){c[w>>2]=_(c[r>>2]|0,(c[l>>2]|0)-(c[k>>2]|0)|0)|0;c[q>>2]=0;c
[t>>2]=-1;c[n>>2]=0-(c[n>>2]|0)}c[m>>2]=(c[w>>2]|0)/(c[n>>2]|0)|0;c[
v>>2]=(c[w>>2]|0)%(c[n>>2]|0)|0;if((c[v>>2]|0)<0){c[m>>2]=(c[m>>
;2]|0)+-1;c[v>>2]=(c[v>>2]|0)+(c[n>>2]|0)}z=_((c[r>>2]|0)+(c[q>>2]|0)|0,c[m>
;>2]|0)|0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;A=(c[h>>2]|0)+36|0;c[A>>
;2]=(c[A>>2]|0)+(c[m>>2]|0);c[o>>2]=(c[o>>2]|0)+(c[t>>2]|0);pp(c[h>>
2]|0,c[o>>2]|0,c[j>>2]|0);c[k>>2]=(c[k>>2]|0)+(c[m>>2]|0);a:do if((c[o>
x3e;2]|0)!=(c[p>>2]|0)){c[w>>2]=(c[l>>2]|0)-(c[k>>2]|0)+(c[m>>2]|0)<<
;8;c[u>>2]=(c[w>>2]|0)/(c[n>>2]|0)|0;c[x>>2]=(c[w>>2]|0)%(c[n>>2]|0)|
0;if((c[x>>2]|0)<0){c[u>>2]=(c[u>>2]|0)+-1;c[x>>2]=(c[x>>2]|0)+(c[n>
x3e;2]|0)}c[v>>2]=(c[v>>2]|0)-(c[n>>2]|0);while(1){if((c[o>>2]|0)==(c[p>>2]|0))
break a;c[m>>2]=c[u>>2];c[v>>2]=(c[v>>2]|0)+(c[x>>2]|0);if((c[v>>2]|
0)>=0){c[v>>2]=(c[v>>2]|0)-(c[n>>2]|0);c[m>>2]=(c[m>>2]|0)+1}A=(c[h>
x3e;2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+(c[m>>2]<<8);A=(c[h>>2]|0)+36|0;c[A>
x3e;2]=(c[A>>2]|0)+(c[m>>2]|0);c[k>>2]=(c[k>>2]|0)+(c[m>>2]|0);c[o>>
2]=(c[o>>2]|0)+(c[t>>2]|0);pp(c[h>>2]|0,c[o>>2]|0,c[j>>2]|0)}}while(0);c[m>
;>2]=(c[l>>2]|0)-(c[k>>2]|0);z=_((c[s>>2]|0)+256-(c[q>>2]|0)|0,c[m>>2]|0)|
0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;A=(c[h>>2]|0)+36|0;c[A>>2]=(c[A>
;>2]|0)+(c[m>>2]|0);i=y;return}function tp(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;up(c[h>>2]|0,c[g>>2]|0,c[f>>2]|
0);i=e;return 0}function up(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;p=i;i=i+48|0;e=p+44
|0;q=p+40|0;r=p+36|0;g=p+32|0;h=p+28|0;n=p+24|0;j=p+20|0;k=p+16|0;f=p+12|0;m=p+8|0;l=p+4|0;o=p;c[e>>2]=a;c[q>>
;2]=b;c[r>>2]=d;c[f>>2]=(c[e>>2]|0)+76;c[c[f>>2]>>2]=c[c[r>>2]>
x3e;2]<<2;c[(c[f>>2]|0)+4>>2]=c[(c[r>>2]|0)+4>>2]<<2;c[(c[f>>
;2]|0)+8>>2]=c[c[q>>2]>>2]<<2;c[(c[f>>2]|0)+8+4>>2]=c[(c[q>>
;2]|0)+4>>2]<<2;c[(c[f>>2]|0)+16>>2]=c[(c[e>>2]|0)+64>>2];c[(c[f>
;>2]|0)+16+4>>2]=c[(c[e>>2]|0)+68>>2];a=(c[(c[f>>2]|0)+16>>2]|0)+(c[c[f
x3e;>2]>>2]|0)-(c[(c[f>>2]|0)+8>>2]<<1)|0;c[g>>2]=((c[(c[f>>2]|
0)+16>>2]|0)+(c[c[f>>2]>>2]|0)-(c[(c[f>>2]|0)+8>>2]<<1)|0)<0?0-
a|0:a;a=(c[(c[f>>2]|0)+16+4>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0)-(c[(c[f>>2]|0)+8+4
x3e;>2]<<1)|0;c[h>>2]=((c[(c[f>>2]|0)+16+4>>2]|0)+(c[(c[f>>2]|0)+4>
x3e;2]|0)-(c[(c[f>>2]|0)+8+4>>2]<<1)|0)<0?0-a|0:a;if((c[g>>2]|0)<(c[h>>
;2]|0))c[g>>2]=c[h>>2];if((c[g>>2]|0)<=64){rp(c[e>>2]|0,c[c[f>>2]>
x3e;2]|0,c[(c[f>>2]|0)+4>>2]|0);i=p;return}c[j>>2]=0;while(1){if((c[g>>2]|0)<=64)break
;c[g>>2]=c[g>>2]>>2;c[j>>2]=(c[j>>2]|0)+1}c[k>>2]=(c[e>>2]|
0)+852;c[c[k>>2]>>2]=c[j>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)<0)break;c[
j>>2]=c[(c[k>>2]|0)+(c[n>>2]<<2)>>2];if((c[j>>2]|0)>1){r=c[(c[f
>>2]|0)+4>>2]|0;c[l>>2]=r;c[m>>2]=r;c[o>>2]=c[(c[f>>2]|0)+8+4>
x3e;2];if((c[o>>2]|0)<(c[m>>2]|0))c[m>>2]=c[o>>2];if((c[o>>2]|0)>(c[
l>>2]|0))c[l>>2]=c[o>>2];c[o>>2]=c[(c[f>>2]|0)+16+4>>2];if((c[o>
;>2]|0)<(c[m>>2]|0))c[m>>2]=c[o>>2];if((c[o>>2]|0)>(c[l>>2]|0))
c[l>>2]=c[o>>2];if((c[m>>2]>>8|0)<(c[(c[e>>2]|0)+20>>2]|0)?(c[l
>>2]>>8|0)>=(c[(c[e>>2]|0)+16>>2]|0):0){vp(c[f>>2]|0);c[f>>2]=(
c[f>>2]|0)+16;c[n>>2]=(c[n>>2]|0)+1;r=(c[j>>2]|0)-1|0;c[(c[k>>2]|0)+((c[n>
;>2]|0)-1<<2)>>2]=r;c[(c[k>>2]|0)+(c[n>>2]<<2)>>2]=r;continue}}
rp(c[e>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0);c[n>>2]=(c[n>
;>2]|0)+-1;c[f>>2]=(c[f>>2]|0)+-16}i=p;return}function vp(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[(c[d>>2]|0)+32>>2]=c[(c[d>>2]|0)+16>>2];c[e>
x3e;2]=c[(c[d>>2]|0)+8>>2];a=((c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c
[d>>2]|0)+24>>2]=a;c[f>>2]=a;a=((c[c[d>>2]>>2]|0)+(c[e>>2]|0)|0)/2|0
;c[(c[d>>2]|0)+8>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16>>2]=((c[f>>2]|0)+(
c[e>>2]|0)|0)/2|0;c[(c[d>>2]|0)+32+4>>2]=c[(c[d>>2]|0)+16+4>>2];c[e>>
;2]=c[(c[d>>2]|0)+8+4>>2];a=((c[(c[d>>2]|0)+16+4>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(
c[d>>2]|0)+24+4>>2]=a;c[f>>2]=a;a=((c[(c[d>>2]|0)+4>>2]|0)+(c[e>>2]|
0)|0)/2|0;c[(c[d>>2]|0)+8+4>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16+4>>2]=((c[f>
x3e;2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function wp(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;h=f+8|0;g=f+4|0;k=f;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;c[k>>2]=e;xp(c[k>>
;2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0);i=f;return 0}function xp(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;w=i;i=i+80|0;f=w+72|0;x=w+68|0;y=w+64|0;z=w+60|
0;h=w+56|0;s=w+52|0;r=w+48|0;v=w+44|0;j=w+40|0;n=w+36|0;m=w+32|0;q=w+28|0;k=w+24|0;o=w+20|0;l=w+16|0;p=w+12|0;g=w+8|0;t=w+4|0;u=
w;c[f>>2]=a;c[x>>2]=b;c[y>>2]=d;c[z>>2]=e;c[h>>2]=(c[f>>2]|0)+76;c[c
[h>>2]>>2]=c[c[z>>2]>>2]<<2;c[(c[h>>2]|0)+4>>2]=c[(c[z>
;>2]|0)+4>>2]<<2;c[(c[h>>2]|0)+8>>2]=c[c[y>>2]>>2]<<2
;c[(c[h>>2]|0)+8+4>>2]=c[(c[y>>2]|0)+4>>2]<<2;c[(c[h>>2]|0)+16>
x3e;2]=c[c[x>>2]>>2]<<2;c[(c[h>>2]|0)+16+4>>2]=c[(c[x>>2]|0)+4>
x3e;2]<<2;c[(c[h>>2]|0)+24>>2]=c[(c[f>>2]|0)+64>>2];c[(c[h>>2]|0)+24
+4>>2]=c[(c[f>>2]|0)+68>>2];a:while(1){z=c[(c[h>>2]|0)+4>>2]|0;c[r>>
2]=z;c[s>>2]=z;c[v>>2]=c[(c[h>>2]|0)+8+4>>2];if((c[v>>2]|0)<(c[s>>
;2]|0))c[s>>2]=c[v>>2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>
2];c[v>>2]=c[(c[h>>2]|0)+16+4>>2];if((c[v>>2]|0)<(c[s>>2]|0))c[s>>
;2]=c[v>>2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>2];c[v>>2]=
c[(c[h>>2]|0)+24+4>>2];if((c[v>>2]|0)<(c[s>>2]|0))c[s>>2]=c[v>>
2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>2];do if((c[s>>2]>>8
|0)<(c[(c[f>>2]|0)+20>>2]|0)?(c[r>>2]>>8|0)>=(c[(c[f>>2]|0)+16>
x3e;2]|0):0){c[j>>2]=(c[(c[h>>2]|0)+24>>2]|0)-(c[c[h>>2]>>2]|0);c[n>>
;2]=(c[(c[h>>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0);b=c[j>>2]|0;c[m>
x3e;2]=(c[j>>2]|0)<0?0-b|0:b;b=c[n>>2]|0;c[q>>2]=(c[n>>2]|0)<0?0-b|0:b;b=c[m
x3e;>2]|0;if((c[m>>2]|0)>(c[q>>2]|0))b=(b*236|0)+((c[q>>2]|0)*97|0)|0;else b=(b*97|0)+((
c[q>>2]|0)*236|0)|0;c[g>>2]=b>>8;if(((((((c[g>>2]|0)<=32767?(c[u>>2]=(c[g
>>2]|0)*42,c[k>>2]=(c[(c[h>>2]|0)+8>>2]|0)-(c[c[h>>2]>>2]|0),c[o>
;>2]=(c[(c[h>>2]|0)+8+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0),y=_(c[n>>2]|0,c[k
x3e;>2]|0)|0,y=(y-(_(c[j>>2]|0,c[o>>2]|0)|0)|0)<0,z=_(c[n>>2]|0,c[k>>2]|0)|0,z
=z-(_(c[j>>2]|0,c[o>>2]|0)|0)|0,c[t>>2]=y?0-z|0:z,(c[t>>2]|0)<=(c[u>>2]|0
)):0)?(c[l>>2]=(c[(c[h>>2]|0)+16>>2]|0)-(c[c[h>>2]>>2]|0),c[p>>2]=(c
[(c[h>>2]|0)+16+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0),y=_(c[n>>2]|0,c[l>>
2]|0)|0,y=(y-(_(c[j>>2]|0,c[p>>2]|0)|0)|0)<0,z=_(c[n>>2]|0,c[l>>2]|0)|0,z=z-(_(c[j
x3e;>2]|0,c[p>>2]|0)|0)|0,c[t>>2]=y?0-z|0:z,(c[t>>2]|0)<=(c[u>>2]|0)):0)?(z=_(
c[n>>2]|0,c[o>>2]|0)|0,(z+(_(c[j>>2]|0,c[k>>2]|0)|0)|0)>=0):0)?(z=_(c[n>>
2]|0,c[p>>2]|0)|0,(z+(_(c[j>>2]|0,c[l>>2]|0)|0)|0)>=0):0)?(z=_(c[n>>2]|0,(c[(c[h>
;>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+8+4>>2]|0)|0)|0,(z+(_(c[j>>2]|0,(c[(c[h>>
;2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+8>>2]|0)|0)|0)|0)>=0):0)?(z=_(c[n>>2]|0,(c[(c[h>
;>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+16+4>>2]|0)|0)|0,(z+(_(c[j>>2]|0,(c[(c[h>
x3e;2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+16>>2]|0)|0)|0)|0)>=0):0)break;yp(c[h>>2]|0);c[h
>>2]=(c[h>>2]|0)+24;continue a}while(0);rp(c[f>>2]|0,c[c[h>>2]>>2]|0,c[(c[h>
;>2]|0)+4>>2]|0);if((c[h>>2]|0)==((c[f>>2]|0)+76|0))break;c[h>>2]=(c[h>>2
]|0)+-24}i=w;return}function yp(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;f=b+12|0;e=b+8|0;g=b+4|0;h=b;c[d>
;>2]=a;c[(c[d>>2]|0)+48>>2]=c[(c[d>>2]|0)+24>>2];c[g>>2]=c[(c[d>>
;2]|0)+8>>2];c[h>>2]=c[(c[d>>2]|0)+16>>2];a=((c[c[d>>2]>>2]|0)+(c[g
x3e;>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+8>>2]=a;a=((c[(c[d>>2]|0)+24>>2
]|0)+(c[h>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+40>>2]=a;c[g>>2]=((c[g>
x3e;2]|0)+(c[h>>2]|0)|0)/2|0;a=((c[f>>2]|0)+(c[g>>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>
;2]|0)+16>>2]=a;a=((c[e>>2]|0)+(c[g>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+32
x3e;>2]=a;c[(c[d>>2]|0)+24>>2]=((c[f>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c[d>>2]|
0)+48+4>>2]=c[(c[d>>2]|0)+24+4>>2];c[g>>2]=c[(c[d>>2]|0)+8+4>>2];c[h
>>2]=c[(c[d>>2]|0)+16+4>>2];a=((c[(c[d>>2]|0)+4>>2]|0)+(c[g>>2]|0)|0
)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+8+4>>2]=a;a=((c[(c[d>>2]|0)+24+4>>2]|0)+(c[h>
;>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+40+4>>2]=a;c[g>>2]=((c[g>>2]|0)+(c
[h>>2]|0)|0)/2|0;a=((c[f>>2]|0)+(c[g>>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+16+
4>>2]=a;a=((c[e>>2]|0)+(c[g>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+32+4>
x3e;2]=a;c[(c[d>>2]|0)+24+4>>2]=((c[f>>2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function zp(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;k=i;i=i+32|0;d=k+24|0;l=k+20|0;j=k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;e=k;c[d>
;>2]=a;c[l>>2]=b;c[l>>2]=c[l>>2];if(!(c[(c[d>>2]|0)+52>>2]|0)){i=k;return
}c[(c[d>>2]|0)+1232>>2]=0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[d>>2]|
0)+1424>>2]|0))break;c[f>>2]=c[(c[(c[d>>2]|0)+1420>>2]|0)+(c[j>>2]<<
2)>>2];c[g>>2]=0;c[h>>2]=0;while(1){if(!(c[f>>2]|0))break;if(c[g>>2]|0?(c[c[f
x3e;>2]>>2]|0)>(c[h>>2]|0):0)Ap(c[d>>2]|0,c[h>>2]|0,c[j>>2]|0,c[g>
;>2]<<9,(c[c[f>>2]>>2]|0)-(c[h>>2]|0)|0);c[g>>2]=(c[g>>2]|0)+(c
[(c[f>>2]|0)+4>>2]|0);c[e>>2]=(c[g>>2]<<9)-(c[(c[f>>2]|0)+8>>
;2]|0);if(c[e>>2]|0?(c[c[f>>2]>>2]|0)>=0:0)Ap(c[d>>2]|0,c[c[f>>2]>
x3e;2]|0,c[j>>2]|0,c[e>>2]|0,1);c[h>>2]=(c[c[f>>2]>>2]|0)+1;c[f>>2]=
c[(c[f>>2]|0)+12>>2]}if(c[g>>2]|0)Ap(c[d>>2]|0,c[h>>2]|0,c[j>>2]|0,c
[g>>2]<<9,(c[(c[d>>2]|0)+24>>2]|0)-(c[h>>2]|0)|0);c[j>>2]=(c[j>
x3e;2]|0)+1}if(!(c[(c[d>>2]|0)+1236>>2]|0)){i=k;return}if((c[(c[d>>2]|0)+1232>>2]|0)<
;=0){i=k;return}_a[c[(c[d>>2]|0)+1236>>2]&15](c[(c[d>>2]|0)+1244>>2]|0,c[(c[d>
x3e;2]|0)+1232>>2]|0,(c[d>>2]|0)+1040|0,c[(c[d>>2]|0)+1240>>2]|0);i=k;return}function Ap
(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;s=i;i=i+32|0;l=s+28|0;m=s+24|0;n=s+20|0;t=s+16
|0;o=s+12|0;r=s+8|0;p=s+4|0;q=s;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[t>>2]=j;c[o>>2
]=k;c[q>>2]=c[t>>2]>>9;if((c[q>>2]|0)<0)c[q>>2]=0-(c[q>>2]|0);k
=c[q>>2]|0;do if(c[(c[l>>2]|0)+980+16>>2]&2|0){c[q>>2]=k&511;k=c[q>>
2]|0;if((c[q>>2]|0)>256){c[q>>2]=512-k;break}if((k|0)==256)c[q>>2]=255}else if((k|0)>=256
)c[q>>2]=255;while(0);c[n>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);t=(c[m>
;>2]|0)+(c[(c[l>>2]|0)+8>>2]|0)|0;c[m>>2]=t;c[m>>2]=(c[m>>2]|0)>=32767
?32767:t;if((c[n>>2]|0)>=2147483647)c[n>>2]=2147483647;if(!(c[q>>2]|0)){i=s;return}c[p>
x3e;2]=c[(c[l>>2]|0)+1232>>2];c[r>>2]=(c[l>>2]|0)+1040+((c[p>>2]|0)*6|0)+-6;if
((((c[p>>2]|0)>0?(c[(c[l>>2]|0)+1244>>2]|0)==(c[n>>2]|0):0)?((b[c[r>>2]
x3e;>1]|0)+(e[(c[r>>2]|0)+2>>1]|0)|0)==(c[m>>2]|0):0)?(d[(c[r>>2]|0)+4>>0
]|0)==(c[q>>2]|0):0){b[(c[r>>2]|0)+2>>1]=(e[(c[r>>2]|0)+2>>1]|0)+(c[o>>
;2]|0);i=s;return}if((c[p>>2]|0)>=32?1:(c[(c[l>>2]|0)+1244>>2]|0)!=(c[n>>2]|0)){if((
c[p>>2]|0)>0?(c[(c[l>>2]|0)+1236>>2]|0)!=0:0)_a[c[(c[l>>2]|0)+1236>>2]&
;15](c[(c[l>>2]|0)+1244>>2]|0,c[p>>2]|0,(c[l>>2]|0)+1040|0,c[(c[l>>2]|0)+1240
x3e;>2]|0);c[(c[l>>2]|0)+1232>>2]=0;c[(c[l>>2]|0)+1244>>2]=c[n>>2];c[p>
;>2]=0;c[r>>2]=(c[l>>2]|0)+1040}else c[r>>2]=(c[r>>2]|0)+6;b[c[r>>2]>
;>1]=c[m>>2];b[(c[r>>2]|0)+2>>1]=c[o>>2];a[(c[r>>2]|0)+4>>0]=c[
q>>2];t=(c[l>>2]|0)+1232|0;c[t>>2]=(c[t>>2]|0)+1;i=s;return}function Bp(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]|0)+12>>2];Fb(c[e>>
;2]|0,c[d>>2]|0);c[d>>2]=0;i=b;return}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]=c[(c[e>>2]|0)+4>>2];Ua[c[(c[(c[(c[e>>2]|0)+20>>2]|0)+56>
;>2]|0)+8>>2]&31](c[(c[e>>2]|0)+60>>2]|0,c[(c[d>>2]|0)+172>>2]|0,c[(
c[d>>2]|0)+176>>2]|0);i=b;return 0}function Dp(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;k=i;
i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;if((c[h>
;>2]|0)==1)c[h>>2]=0;b=Ep(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,0)|0;i=
k;return b|0}function Ep(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;P=i;i=i+192|0;k=P+180|0;l=P+176|0;m=P+172|0;n=P+168|0;o=P+
164|0;p=P+160|0;t=P+156|0;B=P+152|0;r=P+136|0;H=P+128|0;u=P+124|0;v=P+120|0;I=P+116|0;D=P+112|0;q=P+108|0;A=P+104|0;y=P+100|0;G=
P+96|0;L=P+92|0;N=P+88|0;K=P+84|0;O=P+80|0;C=P+32|0;z=P+28|0;w=P+24|0;M=P+20|0;s=P+16|0;E=P+12|0;F=P+8|0;J=P+4|0;x=P;c[l>
x3e;2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=h;c[p>>2]=j;c[B>>2]=0;c[y>>2]=(
c[n>>2]|0)==3&1;c[G>>2]=(c[n>>2]|0)==4&1;do if((c[(c[m>>2]|0)+72>>2]|
0)==(c[(c[l>>2]|0)+24>>2]|0)){if((c[n>>2]|0)!=(c[p>>2]|0)){c[k>>2]=19;O=c[k>
;>2]|0;i=P;return O|0}c[B>>2]=(c[m>>2]|0)+108;if(c[o>>2]|0)Nb(c[B>>2]|0,c[c[o>
x3e;2]>>2]|0,c[(c[o>>2]|0)+4>>2]|0);_d(c[B>>2]|0,r);c[r>>2]=c[r>>2]
x26;-64;c[r+4>>2]=c[r+4>>2]&-64;c[r+8>>2]=(c[r+8>>2]|0)+63&-64;c[r+12>>
;2]=(c[r+12>>2]|0)+63&-64;if((c[r>>2]|0)<0?(c[r+8>>2]|0)>(2147483647+(c[r>>
;2]|0)|0):0){c[k>>2]=98;O=c[k>>2]|0;i=P;return O|0}c[H>>2]=(c[r+8>>2]|0)-(c[r>>
;2]|0)>>6;if((c[r+4>>2]|0)<0?(c[r+12>>2]|0)>(2147483647+(c[r+4>>2]|0)|0):0){c[
k>>2]=98;O=c[k>>2]|0;i=P;return O|0}c[u>>2]=(c[r+12>>2]|0)-(c[r+4>>2]|0)>
x3e;6;c[q>>2]=(c[m>>2]|0)+76;c[A>>2]=c[(c[l>>2]|0)+8>>2];c[I>>2]=c[H
>>2];c[v>>2]=c[u>>2];if(c[(c[(c[m>>2]|0)+156>>2]|0)+4>>2]&1|0){
Fb(c[A>>2]|0,c[(c[q>>2]|0)+12>>2]|0);c[(c[q>>2]|0)+12>>2]=0;f=(c[(c[m>>
;2]|0)+156>>2]|0)+4|0;c[f>>2]=c[f>>2]&-2}c[D>>2]=c[H>>2];if(c[y>>
;2]|0){c[H>>2]=(c[H>>2]|0)*3;c[D>>2]=(c[H>>2]|0)+3&-4}if(c[G>>2]|0)c[u>
;>2]=(c[u>>2]|0)*3;c[L>>2]=c[r>>2];c[N>>2]=c[r+4>>2];c[K>>2]=c[
r>>2]>>6;c[O>>2]=c[r+12>>2]>>6;if((c[H>>2]|0)>>>0>
;32767|(c[u>>2]|0)>>>0>32767){c[k>>2]=98;O=c[k>>2]|0;i=P;return O|0}a[(c[q>
;>2]|0)+18>>0]=2;b[(c[q>>2]|0)+16>>1]=256;c[(c[q>>2]|0)+4>>2]=c[H>
x3e;2];c[c[q>>2]>>2]=c[u>>2];c[(c[q>>2]|0)+8>>2]=c[D>>2];Nb(c[B>
;>2]|0,0-(c[L>>2]|0)|0,0-(c[N>>2]|0)|0);f=bc(c[A>>2]|0,_(c[D>>2]|0,c[u>>2
]|0)|0,t)|0;c[(c[q>>2]|0)+12>>2]=f;if(!(c[t>>2]|0)){f=(c[(c[m>>2]|0)+156>>2]|0
)+4|0;c[f>>2]=c[f>>2]|1;c[C>>2]=c[q>>2];c[C+4>>2]=c[B>>2];c[C+8>
;>2]=1;c[t>>2]=Ya[c[(c[l>>2]|0)+64>>2]&127](c[(c[l>>2]|0)+60>>2]|0,C
)|0;a:do if(c[y>>2]|0){c[z>>2]=c[(c[q>>2]|0)+12>>2];c[w>>2]=c[v>>2];
while(1){if((c[w>>2]|0)>>>0<=0)break a;c[s>>2]=(c[z>>2]|0)+(c[H>>2]|
0);c[M>>2]=c[I>>2];while(1){if((c[M>>2]|0)>>>0<=0)break;c[E>>2]=d[(c
[z>>2]|0)+((c[M>>2]|0)-1)>>0];a[(c[s>>2]|0)+-3>>0]=c[E>>2];a[(c[s>
;>2]|0)+-2>>0]=c[E>>2];a[(c[s>>2]|0)+-1>>0]=c[E>>2];c[s>>2]=(c[
s>>2]|0)+-3;c[M>>2]=(c[M>>2]|0)+-1}c[w>>2]=(c[w>>2]|0)+-1;c[z>>2]=(c
[z>>2]|0)+(c[D>>2]|0)}}while(0);b:do if(c[G>>2]|0){c[F>>2]=(c[(c[q>>2]|0)+12
x3e;>2]|0)+(_((c[u>>2]|0)-(c[v>>2]|0)|0,c[D>>2]|0)|0);c[J>>2]=c[(c[q>>2]|
0)+12>>2];c[x>>2]=c[v>>2];while(1){if((c[x>>2]|0)>>>0<=0)break b;Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);c[F
>>2]=(c[F>>2]|0)+(c[D>>2]|0);c[x>>2]=(c[x>>2]|0)+-1}}while(0);Nb(c[B>>
;2]|0,c[L>>2]|0,c[N>>2]|0);if((c[K>>2]|0)>2147483647|(c[O>>2]|0)>2147483647){c
[k>>2]=23;O=c[k>>2]|0;i=P;return O|0}else{if(c[t>>2]|0)break;c[(c[m>>2]|0)+72>>
;2]=1651078259;c[(c[m>>2]|0)+100>>2]=c[K>>2];c[(c[m>>2]|0)+104>>2]=c[O>
x3e;2];break}}}else c[t>>2]=6;while(0);if((c[B>>2]|0)!=0&(c[o>>2]|0)!=0)Nb(c[B>>2]|
0,0-(c[c[o>>2]>>2]|0)|0,0-(c[(c[o>>2]|0)+4>>2]|0)|0);c[k>>2]=c[t>>2];
O=c[k>>2]|0;i=P;return O|0}function Fp(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;l=k+16
|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[l>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2
]=0;if((c[(c[f>>2]|0)+72>>2]|0)!=(c[(c[l>>2]|0)+24>>2]|0)){c[j>>2]=6;l=c[j>
;>2]|0;i=k;return l|0}if(c[g>>2]|0)Kb((c[f>>2]|0)+108|0,c[g>>2]|0);if(!(c[h>>2]|0)){
l=c[j>>2]|0;i=k;return l|0}Nb((c[f>>2]|0)+108|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+
4>>2]|0);l=c[j>>2]|0;i=k;return l|0}function Gp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;h=
g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[e>>2]=b;c[f>>2]=d;b=c[f>>2]|0;c[b>>2]=0;c[b+4>
;>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;if((c[(c[e>>2]|0)+72>>2]|0)!=(c[(c[h>>2]|
0)+24>>2]|0)){i=g;return}_d((c[e>>2]|0)+108|0,c[f>>2]|0);i=g;return}function Hp(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=Oa[c[(
c[(c[(c[h>>2]|0)+20>>2]|0)+56>>2]|0)+12>>2]&63](c[(c[h>>2]|0)+60>>
;2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function Ip(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;j=i;i=i+32|0;m=j+16|0;g=j+12|0;l=j+8|0;k=j+4|0;h=j;c[m>>2]=b;c[g>>2]=d;c[l>>2]=e;c[k>
;>2]=f;c[h>>2]=Ep(c[m>>2]|0,c[g>>2]|0,c[l>>2]|0,c[k>>2]|0,3)|0;if(c[h>
;>2]|0){m=c[h>>2]|0;i=j;return m|0}a[(c[g>>2]|0)+76+18>>0]=5;m=c[h>>2]|0;i=j;return
m|0}function Jp(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;j=i;i=i+32|0;m=j+16|0;g=j+12|0;l=j+8|0;k=j+4|0;h=j
;c[m>>2]=b;c[g>>2]=d;c[l>>2]=e;c[k>>2]=f;c[h>>2]=Ep(c[m>>2]|0,c[g>
;>2]|0,c[l>>2]|0,c[k>>2]|0,4)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=j;return m|0}a[(c[g>
;>2]|0)+76+18>>0]=6;m=c[h>>2]|0;i=j;return m|0}function Kp(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[(c[e>>2]|
0)+32>>2]=c[g>>2];a=hc(c[g>>2]|0,4,0,c[f>>2]|0,0,h)|0;c[(c[e>>2]|0)+24>
x3e;2]=a;if((c[h>>2]|0)==0?(a=hc(c[g>>2]|0,4,0,c[f>>2]|0,0,h)|0,c[(c[e>>2]|0)+28>
x3e;2]=a,(c[h>>2]|0)==0):0){c[(c[e>>2]|0)+16>>2]=c[f>>2];c[(c[e>>2]|0)+12>
;>2]=-559038737;c[(c[e>>2]|0)+20>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+8>
;>2]=0;c[(c[e>>2]|0)+4>>2]=0;a=(c[e>>2]|0)+36|0;c[a>>2]=c[1094];c[a+4>>2]=
c[1095];c[a+8>>2]=c[1096];c[a+12>>2]=c[1097]}if(!(c[h>>2]|0)){a=c[h>>2]|0;i=j;return a|0
}Fb(c[g>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;a=c[h>>
2]|0;i=j;return a|0}function Lp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;d=g+4|0;f=g;c[b>>2]=a;c
[e>>2]=c[(c[b>>2]|0)+32>>2];c[f>>2]=c[c[b>>2]>>2];if(!(c[f>>
;2]|0)){i=g;return}a=bc(c[e>>2]|0,c[(c[b>>2]|0)+4>>2]|0,d)|0;c[c[b>>2]>>2]=a;if
(c[d>>2]|0){i=g;return}Ss(c[c[b>>2]>>2]|0,c[f>>2]|0,c[(c[b>>2]|0)+4>>
;2]|0)|0;Mp(c[b>>2]|0,c[f>>2]|0);c[(c[b>>2]|0)+8>>2]=c[(c[b>>2]|0)+4>>
;2];Fb(c[e>>2]|0,c[f>>2]|0);c[f>>2]=0;c[d>>2]=c[d>>2];i=g;return}function Mp(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;h=g+16|0;j=g+12|0;d=g+8|0;f=g+4|0;e=g;c[h>>2]=a;c[j>>
;2]=b;c[d>>2]=(c[c[h>>2]>>2]|0)-(c[j>>2]|0);c[f>>2]=c[(c[h>>2]|0)+24
>>2];c[e>>2]=(c[f>>2]|0)+(c[(c[h>>2]|0)+16>>2]<<2);while(1){if((c[f
x3e;>2]|0)>>>0>=(c[e>>2]|0)>>>0)break;if(c[c[f>>2]>>2]|0){
j=c[f>>2]|0;c[j>>2]=(c[j>>2]|0)+(c[d>>2]|0)}c[f>>2]=(c[f>>2]|0)+4}i=
g;return}function Np(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o
+20|0;j=o+16|0;k=o+12|0;l=o+8|0;n=o+4|0;m=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if((
c[h>>2]|0)>=0?(c[h>>2]|0)<(c[(c[g>>2]|0)+16>>2]|0):0){if((c[k>>2]|0)
x3c;0){c[f>>2]=6;a=c[f>>2]|0;i=o;return a|0}do if(((c[(c[g>>2]|0)+4>>2]|0)+(c[k>>
;2]|0)|0)>>>0>(c[(c[g>>2]|0)+8>>2]|0)>>>0){c[n>>2]=c[(c[g>
x3e;2]|0)+8>>2];a=(c[j>>2]|0)-(c[c[g>>2]>>2]|0)|0;c[m>>2]=a;c[m>>2]=(
c[m>>2]|0)>>>0>=(c[(c[g>>2]|0)+8>>2]|0)>>>0?-1:a;while(1){if((c
[n>>2]|0)>>>0>=((c[(c[g>>2]|0)+4>>2]|0)+(c[k>>2]|0)|0)>>
x3e;0)break;c[n>>2]=(c[n>>2]|0)+(((c[n>>2]|0)>>>2)+1);c[n>>2]=(c[n>
x3e;2]|0)+1023&-1024}c[l>>2]=Op(c[g>>2]|0,c[n>>2]|0)|0;if(c[l>>2]|0){c[f>>
;2]=c[l>>2];a=c[f>>2]|0;i=o;return a|0}else{if((c[m>>2]|0)<0)break;c[j>>2]=(c[c[g
x3e;>2]>>2]|0)+(c[m>>2]|0);break}}while(0);c[(c[(c[g>>2]|0)+24>>2]|0)+(c[h>>
;2]<<2)>>2]=(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+4>>2]|0);c[(c[(c[g>
;>2]|0)+28>>2]|0)+(c[h>>2]<<2)>>2]=c[k>>2];Ss((c[c[g>>2]>
x3e;2]|0)+(c[(c[g>>2]|0)+4>>2]|0)|0,c[j>>2]|0,c[k>>2]|0)|0;a=(c[g>>2]|0)+4|0;c
[a>>2]=(c[a>>2]|0)+(c[k>>2]|0);c[f>>2]=0;a=c[f>>2]|0;i=o;return a|0}c[f>
x3e;2]=6;a=c[f>>2]|0;i=o;return a|0}function Op(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0
;e=k+16|0;f=k+12|0;h=k+8|0;j=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[h>>2]=c[(c[e>>2]|0)+32>
;>2];c[j>>2]=c[c[e>>2]>>2];b=bc(c[h>>2]|0,c[f>>2]|0,g)|0;c[c[e>>
;2]>>2]=b;b=c[j>>2]|0;if(c[g>>2]|0){c[c[e>>2]>>2]=b;c[d>>2]=c[g>
;>2];j=c[d>>2]|0;i=k;return j|0}if(b|0){Ss(c[c[e>>2]>>2]|0,c[j>>2]|0,c[(c[e>
x3e;2]|0)+8>>2]|0)|0;Mp(c[e>>2]|0,c[j>>2]|0);Fb(c[h>>2]|0,c[j>>2]|0);c[j>
x3e;2]=0}c[(c[e>>2]|0)+8>>2]=c[f>>2];c[d>>2]=0;j=c[d>>2]|0;i=k;return j|0}function
Pp(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+32>>
;2];if((c[(c[b>>2]|0)+12>>2]|0)!=-559038737){i=e;return}Fb(c[d>>2]|0,c[c[b>>2]>>
;2]|0);c[c[b>>2]>>2]=0;Fb(c[d>>2]|0,c[(c[b>>2]|0)+24>>2]|0);c[(c[b>>
2]|0)+24>>2]=0;Fb(c[d>>2]|0,c[(c[b>>2]|0)+28>>2]|0);c[(c[b>>2]|0)+28>>
;2]=0;c[(c[b>>2]|0)+12>>2]=0;i=e;return}function Qp(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;j=f+8|0;k=f+4|0;h=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[h>>2]=e;c[(c[
g>>2]|0)+12>>2]=0;c[(c[g>>2]|0)+4>>2]=c[j>>2];c[(c[g>>2]|0)+8>
x3e;2]=c[k>>2];c[c[g>>2]>>2]=c[j>>2];c[(c[g>>2]|0)+16>>2]=c[h>
x3e;2];b=(c[g>>2]|0)+20|0;d=4392;e=b+52|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0
));i=f;return}function Rp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return
}function Sp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Tp(c[d>>2]|0,c[(c[d>>2]|0)+8>>
;2]|0);i=b;return}function Tp(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+8|0;e=h+4|0;g=h;c[f>>2]=a;c[e>
;>2]=b;c[g>>2]=c[c[f>>2]>>2];while(1){if((c[g>>2]|0)>>>0>=(c[e
x3e;>2]|0)>>>0){e=12;break}if((((((d[c[g>>2]>>0]|0|0)!=32?(d[c[g>>2]>>
;0]|0|0)!=13:0)?(d[c[g>>2]>>0]|0|0)!=10:0)?(d[c[g>>2]>>0]|0|0)!=9:0)?(d[c[g>>2
]>>0]|0|0)!=12:0)?d[c[g>>2]>>0]|0|0:0){if((d[c[g>>2]>>0]|0|0)!=37){e=12;break}
Up(g,c[e>>2]|0)}c[g>>2]=(c[g>>2]|0)+1}if((e|0)==12){c[c[f>>2]>>2]=c[g>>
;2];i=h;return}}function Up(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=c[c[e>>2]>>2];while(1){if((c[g>>2]|0)>>>0>=(c[f>
;>2]|0)>>>0)break;if((d[c[g>>2]>>0]|0|0)==13)break;if((d[c[g>>2]>>0]|
0|0)==10)break;c[g>>2]=(c[g>>2]|0)+1}c[c[e>>2]>>2]=c[g>>2];i=h;return}function
Vp(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=c[c[e
x3e;>2]>>2];c[h>>2]=c[(c[e>>2]|0)+8>>2];c[g>>2]=0;Tp(f,c[h>>2]|
0);a:do if((c[f>>2]|0)>>>0<(c[h>>2]|0)>>>0){if((d[c[f>>2]>
x3e;0]|0|0)!=91?(d[c[f>>2]>>0]|0|0)!=93:0){if((d[c[f>>2]>>0]|0|0)==123){c[g>>2
]=Wp(f,c[h>>2]|0)|0;break}if((d[c[f>>2]>>0]|0|0)==40){c[g>>2]=Xp(f,c[h>>2]|0)|
0;break}a=c[f>>2]|0;if((d[c[f>>2]>>0]|0|0)==60){if((a+1|0)>>>0<(c[h>>
;2]|0)>>>0?(d[(c[f>>2]|0)+1>>0]|0|0)==60:0){c[f>>2]=(c[f>>2]|0)+1;c[f>
;>2]=(c[f>>2]|0)+1;break}c[g>>2]=Yp(f,c[h>>2]|0)|0;break}b=c[f>>2]|0;if((d[a>
x3e;0]|0|0)==62){c[f>>2]=b+1;if((c[f>>2]|0)>>>0<(c[h>>2]|0)>>>0
?(d[c[f>>2]>>0]|0|0)==62:0){c[f>>2]=(c[f>>2]|0)+1;break}c[g>>2]=3;break}if((d[
b>>0]|0|0)==47)c[f>>2]=(c[f>>2]|0)+1;while(1){if((c[f>>2]|0)>>>0>=(c
[h>>2]|0)>>>0)break a;if((d[c[f>>2]>>0]|0|0)==32)break a;if((d[c[f>>2]>
;>0]|0|0)==13)break a;if((d[c[f>>2]>>0]|0|0)==10)break a;if((d[c[f>>2]>>0]|0|0)==9)
break a;if((d[c[f>>2]>>0]|0|0)==12)break a;if(!(d[c[f>>2]>>0]|0))break a;if((d[c[f>
x3e;2]>>0]|0|0)==47)break a;if((d[c[f>>2]>>0]|0|0)==40)break a;if((d[c[f>>2]>>
0]|0|0)==41)break a;if((d[c[f>>2]>>0]|0|0)==60)break a;if((d[c[f>>2]>>0]|0|0)==62)break
a;if((d[c[f>>2]>>0]|0|0)==91)break a;if((d[c[f>>2]>>0]|0|0)==93)break a;if((d[c[f>
x3e;2]>>0]|0|0)==123)break a;if((d[c[f>>2]>>0]|0|0)==125)break a;if((d[c[f>>2]>>
;0]|0|0)==37)break a;c[f>>2]=(c[f>>2]|0)+1}}c[f>>2]=(c[f>>2]|0)+1}while(0);if((c[f>
x3e;2]|0)!=(c[c[e>>2]>>2]|0)){h=c[g>>2]|0;g=c[e>>2]|0;g=g+12|0;c[g>>2]=h;g=c[f
>>2]|0;h=c[e>>2]|0;c[h>>2]=g;i=j;return}c[g>>2]=3;h=c[g>>2]|0;g=c[e>>
;2]|0;g=g+12|0;c[g>>2]=h;g=c[f>>2]|0;h=c[e>>2]|0;c[h>>2]=g;i=j;return}function Wp(a,b){a
=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+16|0;f=l+12|0;g=l+8|0;h=l+4|0;j=l;c[e>>2]=a;c[f>>
;2]=b;c[h>>2]=0;c[j>>2]=0;c[g>>2]=c[c[e>>2]>>2];a:while(1){if(!((c[g>>
;2]|0)>>>0<(c[f>>2]|0)>>>0?(c[j>>2]|0)==0:0))break;switch(d[c[g>>
;2]>>0]|0|0){case 123:{c[h>>2]=(c[h>>2]|0)+1;break}case 125:{c[h>>2]=(c[h>>2]|
0)+-1;if(!(c[h>>2]|0)){k=6;break a}break}case 40:{c[j>>2]=Xp(g,c[f>>2]|0)|0;break}case 60:{c[j>
;>2]=Yp(g,c[f>>2]|0)|0;break}case 37:{Up(g,c[f>>2]|0);break}default:{}}c[g>>2]=(c[g>>
;2]|0)+1}if((k|0)==6)c[g>>2]=(c[g>>2]|0)+1;if(!(c[h>>2]|0)){b=c[g>>2]|0;k=c[e>>
;2]|0;c[k>>2]=b;k=c[j>>2]|0;i=l;return k|0}c[j>>2]=3;b=c[g>>2]|0;k=c[e>>2]|0;c
[k>>2]=b;k=c[j>>2]|0;i=l;return k|0}function Xp(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;n=i;i=i
+32|0;k=n+20|0;f=n+16|0;l=n+12|0;h=n+8|0;m=n+4|0;j=n;g=n+24|0;c[k>>2]=b;c[f>>2]=e;c[l>>2]=c[c[k>
;>2]>>2];c[h>>2]=0;c[m>>2]=3;a:while(1){if((c[l>>2]|0)>>>0>=(c[
f>>2]|0)>>>0){f=18;break}a[g>>0]=a[c[l>>2]>>0]|0;c[l>>2]=(c[l
x3e;>2]|0)+1;if((d[g>>0]|0|0)!=92){if((d[g>>0]|0|0)==40){c[h>>2]=(c[h>>2]|0)+1;continue
}if((d[g>>0]|0|0)!=41)continue;c[h>>2]=(c[h>>2]|0)+-1;if(!(c[h>>2]|0)){f=17;break}else continue
}if((c[l>>2]|0)==(c[f>>2]|0)){f=18;break}switch(d[c[l>>2]>>0]|0|0){case 41:case 40:case
92:case 102:case 98:case 116:case 114:case 110:{c[l>>2]=(c[l>>2]|0)+1;continue a}default:{}}c[j>>2
]=0;while(1){if((c[j>>2]|0)>>>0>=3)continue a;if((c[l>>2]|0)>>>0>=(c
[f>>2]|0)>>>0)continue a;if(48>(d[c[l>>2]>>0]|0|0))continue a;if((d[c[l>
x3e;2]>>0]|0|0)>55)continue a;c[l>>2]=(c[l>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1
}}if((f|0)==17){c[m>>2]=0;e=c[l>>2]|0;l=c[k>>2]|0;c[l>>2]=e;m=c[m>>2]|0;i=n;return
m|0}else if((f|0)==18){e=c[l>>2]|0;l=c[k>>2]|0;c[l>>2]=e;m=c[m>>2]|0;i=n;return m|0}return
0}function Yp(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=c[c[e>>2]>>2];c[h>>2]=0;while(1){b=(c[g>>2]|0)+1|0;c[g>
x3e;2]=b;if(b>>>0>=(c[f>>2]|0)>>>0)break;Tp(g,c[f>>2]|0);if((c[g>>
;2]|0)>>>0>=(c[f>>2]|0)>>>0)break;if((d[c[g>>2]>>0]|0|0)>=
48?(d[c[g>>2]>>0]|0|0)<=57:0)continue;if((d[c[g>>2]>>0]|0|0)>=65?(d[c[g>
x3e;2]>>0]|0|0)<=70:0)continue;if((d[c[g>>2]>>0]|0|0)<97)break;if((d[c[g>>2]
x3e;>0]|0|0)>102)break}if((c[g>>2]|0)>>>0<(c[f>>2]|0)>>>0?(d[c[
g>>2]>>0]|0|0)!=62:0){c[h>>2]=3;g=c[g>>2]|0;b=c[e>>2]|0;c[b>>2]=g;b=
c[h>>2]|0;i=j;return b|0}c[g>>2]=(c[g>>2]|0)+1;g=c[g>>2]|0;b=c[e>>2]|0;c[b>
;>2]=g;b=c[h>>2]|0;i=j;return b|0}function Zp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Sp(c[d>
;>2]|0);a=_p(c[d>>2]|0,c[(c[d>>2]|0)+8>>2]|0)|0;i=b;return a|0}function _p(a,b){a=a|0;b=b|0;var
e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[f>>2]=a;c[g>>2]=b;c[h>>
;2]=$p(c[f>>2]|0,c[g>>2]|0,10)|0;c[j>>2]=c[c[f>>2]>>2];if((c[j>>2]|0
)>>>0<(c[g>>2]|0)>>>0?(d[c[j>>2]>>0]|0|0)==35:0){c[c[f>>
;2]>>2]=(c[j>>2]|0)+1;c[e>>2]=$p(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;j=
c[e>>2]|0;i=k;return j|0}c[e>>2]=c[h>>2];j=c[e>>2]|0;i=k;return j|0}function $p(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;q=i;i=i+32|0;g=q+20|0;h=q+16|0;j=q+12|0;k=q+8|0;n=q+4|0;m=q;o=q+25|
0;l=q+24|0;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[n>>2]=c[c[h>>2]>>2];c[m
x3e;>2]=0;a[o>>0]=0;if(((c[k>>2]|0)<2?1:(c[n>>2]|0)==(c[j>>2]|0))|(c[k>
x3e;2]|0)>36){c[g>>2]=0;p=c[g>>2]|0;i=q;return p|0}if(!((d[c[n>>2]>>0]|0)!=45?(d[c[
n>>2]>>0]|0)!=43:0))p=5;if((p|0)==5?(a[o>>0]=(d[c[n>>2]>>0]|0)==45,c[n>
x3e;2]=(c[n>>2]|0)+1,(c[n>>2]|0)==(c[j>>2]|0)):0){c[g>>2]=0;p=c[g>>2]|0;i=q;return
p|0}while(1){if((c[n>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;if((d[c[n>
x3e;2]>>0]|0)==32)break;if((d[c[n>>2]>>0]|0)==13)break;if((d[c[n>>2]>>0]|0)==10
)break;if((d[c[n>>2]>>0]|0)==9)break;if((d[c[n>>2]>>0]|0)==12)break;if(!(d[c[n>>
;2]>>0]|0))break;if((d[c[n>>2]>>0]|0)>=128)break;a[l>>0]=a[11579+(d[c[n>>
2]>>0]&127)>>0]|0;if((a[l>>0]|0)<0)break;if((a[l>>0]|0)>=(c[k>>
2]|0))break;p=_(c[m>>2]|0,c[k>>2]|0)|0;c[m>>2]=p+(a[l>>0]|0);c[n>>2]=(c[n>
;>2]|0)+1}if(a[o>>0]|0)c[m>>2]=0-(c[m>>2]|0);c[c[h>>2]>>2]=c[n>>
;2];c[g>>2]=c[m>>2];p=c[g>>2]|0;i=q;return p|0}function aq(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;Sp(c[f>>2]|0);b=bq(c[f>>2]|0,c[(c[f>>2]|
0)+8>>2]|0,c[e>>2]|0)|0;i=d;return b|0}function bq(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;s=i;i=i+48|0;g=s+28|0;h=s+24|0;j=s+20|0;k=s+16|0;p=s+12|0;o=s+8|0;m=s+4|0;n=s;q=s+33|0;l=s+32|0;c[h>>
;2]=b;c[j>>2]=e;c[k>>2]=f;c[p>>2]=c[c[h>>2]>>2];c[m>>2]=0;c[n>
x3e;2]=1;a[q>>0]=0;if((c[p>>2]|0)==(c[j>>2]|0)){c[g>>2]=0;r=c[g>>2]|0;i=s;return
r|0}if(!((d[c[p>>2]>>0]|0)!=45?(d[c[p>>2]>>0]|0)!=43:0))r=5;if((r|0)==5?(a[q>>
;0]=(d[c[p>>2]>>0]|0)==45,c[p>>2]=(c[p>>2]|0)+1,(c[p>>2]|0)==(c[j>>2
]|0)):0){c[g>>2]=0;r=c[g>>2]|0;i=s;return r|0}if((d[c[p>>2]>>0]|0)!=46)c[o>>2]=(
_p(p,c[j>>2]|0)|0)<<16;else c[o>>2]=0;a:do if((c[p>>2]|0)>>>0<(c[j
x3e;>2]|0)>>>0?(d[c[p>>2]>>0]|0)==46:0){c[p>>2]=(c[p>>2]|0)+1;while(
1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break a;if((d[c[p>>2]>
;>0]|0)==32)break a;if((d[c[p>>2]>>0]|0)==13)break a;if((d[c[p>>2]>>0]|0)==10)break
a;if((d[c[p>>2]>>0]|0)==9)break a;if((d[c[p>>2]>>0]|0)==12)break a;if(!(d[c[p>>
;2]>>0]|0))break a;if((d[c[p>>2]>>0]|0)>=128)break a;a[l>>0]=a[11579+(d[c[p>
x3e;2]>>0]&127)>>0]|0;if((a[l>>0]|0)<0)break a;if((a[l>>0]|0)>=10)break a
;if(!((c[o>>2]|0)==0&(c[k>>2]|0)>0)){if((c[n>>2]|0)<1e7){c[m>>2]=((c[m>
;>2]|0)*10|0)+(a[l>>0]|0);c[n>>2]=(c[n>>2]|0)*10}}else{c[k>>2]=(c[k>>2]|0
)+-1;c[m>>2]=((c[m>>2]|0)*10|0)+(a[l>>0]|0)}c[p>>2]=(c[p>>2]|0)+1}}while(0);do
if(((c[p>>2]|0)+1|0)>>>0<(c[j>>2]|0)>>>0){if((d[c[p>>2]>
x3e;0]|0)!=101?(d[c[p>>2]>>0]|0)!=69:0)break;c[p>>2]=(c[p>>2]|0)+1;r=_p(p,c[j>>
;2]|0)|0;c[k>>2]=(c[k>>2]|0)+r}while(0);while(1){if((c[k>>2]|0)<=0)break;c[o>>2]=(c
[o>>2]|0)*10;c[m>>2]=(c[m>>2]|0)*10;c[k>>2]=(c[k>>2]|0)+-1}while(1){if((c[k>
;>2]|0)>=0)break;c[o>>2]=(c[o>>2]|0)/10|0;c[n>>2]=(c[n>>2]|0)*10;c[k>>
;2]=(c[k>>2]|0)+1}if(c[m>>2]|0){r=Vb(c[m>>2]|0,c[n>>2]|0)|0;c[o>>2]=(c[o>
x3e;2]|0)+r}if(a[q>>0]|0)c[o>>2]=0-(c[o>>2]|0);c[c[h>>2]>>2]=c[p>>2];
c[g>>2]=c[o>>2];r=c[g>>2]|0;i=s;return r|0}function cq(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;q=i;i=i+32|0;j=q+20|0;k=q+16|0;l=q+12|0;m=q+8|0;n=q+24|0;p=q+4|0;o=q;c[j>>2]=b;c[k>
;>2]=e;c[l>>2]=f;c[m>>2]=g;a[n>>0]=h;c[p>>2]=0;Sp(c[j>>2]|0);c[o>>
;2]=c[c[j>>2]>>2];if((c[o>>2]|0)>>>0>=(c[(c[j>>2]|0)+8>>2]|
0)>>>0){g=c[p>>2]|0;i=q;return g|0}do if(a[n>>0]|0){if((d[c[o>>2]>>0]|0)==
60){c[o>>2]=(c[o>>2]|0)+1;break}c[p>>2]=3;g=c[p>>2]|0;i=q;return g|0}while(0);g=dq(o,c[(
c[j>>2]|0)+8>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;c[c[m>>2]>>2]=g;if(a[n>
;>0]|0){if((c[o>>2]|0)>>>0<(c[(c[j>>2]|0)+8>>2]|0)>>>0?(d[
c[o>>2]>>0]|0)!=62:0){c[p>>2]=3;g=c[p>>2]|0;i=q;return g|0}c[o>>2]=(c[o>
x3e;2]|0)+1}c[c[j>>2]>>2]=c[o>>2];g=c[p>>2]|0;i=q;return g|0}function dq(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;r=i;i=i+48|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0;n=r+16|0;p=r+12|0
;q=r+8|0;o=r+4|0;m=r;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[p>>2]=0;c[q>
;>2]=0;c[o>>2]=1;c[l>>2]=c[l>>2]<<1;c[n>>2]=c[c[h>>2]>>
;2];if((c[l>>2]|0)>>>0>((c[j>>2]|0)-(c[n>>2]|0)|0)>>>0)c[l>
;>2]=(c[j>>2]|0)-(c[n>>2]|0);while(1){if((c[p>>2]|0)>>>0>=(c[l>>
;2]|0)>>>0)break;c[m>>2]=d[(c[n>>2]|0)+(c[p>>2]|0)>>0];if(!((c[m>>
;2]|0)==32|(c[m>>2]|0)==13|(c[m>>2]|0)==10|(c[m>>2]|0)==9|(c[m>>2]|0)==12|(c[m>>
;2]|0)==0)){if((c[m>>2]|0)>>>0>=128)break;c[m>>2]=a[11579+(c[m>>2]&127)
x3e;>0];if((c[m>>2]|0)>>>0>=16)break;c[o>>2]=c[o>>2]<<4|c[m>
;>2];if(c[o>>2]&256|0){e=c[o>>2]&255;g=c[q>>2]|0;c[q>>2]=g+1;a[(c[k>
x3e;2]|0)+g>>0]=e;c[o>>2]=1}}c[p>>2]=(c[p>>2]|0)+1}if((c[o>>2]|0)==1){n=c[n>
;>2]|0;o=c[p>>2]|0;o=n+o|0;p=c[h>>2]|0;c[p>>2]=o;q=c[q>>2]|0;i=r;return q|0}g=c[o
x3e;>2]<<4&255;o=c[q>>2]|0;c[q>>2]=o+1;a[(c[k>>2]|0)+o>>0]=g;n=c[n
x3e;>2]|0;o=c[p>>2]|0;o=n+o|0;p=c[h>>2]|0;c[p>>2]=o;q=c[q>>2]|0;i=r;return q|0}function
eq(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;Sp(c[h>>2]|0);a=fq(c[h>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[g>>2]|0,c[f
x3e;>2]|0)|0;i=e;return a|0}function fq(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;t=
i;i=i+32|0;q=t+24|0;k=t+20|0;l=t+16|0;m=t+12|0;s=t+8|0;r=t+4|0;j=t+31|0;o=t+30|0;n=t+28|0;p=t;c[q>>2]=e;c[k>>
;2]=f;c[l>>2]=g;c[m>>2]=h;c[s>>2]=c[c[q>>2]>>2];c[r>>2]=0;a:do if((c
[s>>2]|0)>>>0<(c[k>>2]|0)>>>0){a[j>>0]=a[c[s>>2]>
;>0]|0;a[o>>0]=0;if((d[j>>0]|0)!=91){if((d[j>>0]|0)==123)a[o>>0]=125}else a[o>
x3e;0]=93;if(a[o>>0]|0)c[s>>2]=(c[s>>2]|0)+1;while(1){if((c[s>>2]|0)>>>0
x3e;=(c[k>>2]|0)>>>0)break a;Tp(s,c[k>>2]|0);if((c[s>>2]|0)>>>0>
;=(c[k>>2]|0)>>>0)break a;j=c[s>>2]|0;if((d[c[s>>2]>>0]|0)==(d[o>>
;0]|0)){e=11;break}c[p>>2]=j;if(c[m>>2]|0?(c[r>>2]|0)>=(c[l>>2]|0):0)break a;e=(bq(
s,c[k>>2]|0,0)|0)>>16&65535;if(c[m>>2]|0)j=(c[m>>2]|0)+(c[r>>2]<<
;1)|0;else j=n;b[j>>1]=e;if((c[p>>2]|0)==(c[s>>2]|0)){e=17;break}c[r>>2]=(c[r>>
;2]|0)+1;if(!(a[o>>0]|0))break a}if((e|0)==11){c[s>>2]=j+1;break}else if((e|0)==17){c[r>>2]=-1;break
}}while(0);c[c[q>>2]>>2]=c[s>>2];i=t;return c[r>>2]|0}function gq(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>
x3e;2]=d;c[g>>2]=e;Sp(c[k>>2]|0);d=hq(c[k>>2]|0,c[(c[k>>2]|0)+8>>2]|0,c[j>
;>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=f;return d|0}function hq(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;u=i;i=i+48|0;r=u+32|0;k=u+28|0;l=u+24|0;m=u+20|0;n=u+16|0;t=u+12|0;s=u+8|0;j=u+37
|0;p=u+36|0;o=u+4|0;q=u;c[r>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[t
x3e;>2]=c[c[r>>2]>>2];c[s>>2]=0;a:do if((c[t>>2]|0)>>>0<(c[k>
;>2]|0)>>>0){a[j>>0]=a[c[t>>2]>>0]|0;a[p>>0]=0;if((d[j>>0]|
0)!=91){if((d[j>>0]|0)==123)a[p>>0]=125}else a[p>>0]=93;if(a[p>>0]|0)c[t>>2]=(
c[t>>2]|0)+1;while(1){if((c[t>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break
a;Tp(t,c[k>>2]|0);if((c[t>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break a;
j=c[t>>2]|0;if((d[c[t>>2]>>0]|0)==(d[p>>0]|0)){b=11;break}c[q>>2]=j;if(c[m>
;>2]|0?(c[s>>2]|0)>=(c[l>>2]|0):0)break a;b=bq(t,c[k>>2]|0,c[n>>2]|0)|0;if(c[m
>>2]|0)j=(c[m>>2]|0)+(c[s>>2]<<2)|0;else j=o;c[j>>2]=b;if((c[q>>2]|0
)==(c[t>>2]|0)){b=17;break}c[s>>2]=(c[s>>2]|0)+1;if(!(a[p>>0]|0))break a}if((b|0)==11){c
[t>>2]=j+1;break}else if((b|0)==17){c[s>>2]=-1;break}}while(0);c[c[r>>2]>>2]=c[t>
x3e;2];i=u;return c[s>>2]|0}function iq(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;e=k+16|0;f=k+12|0;g=
k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;c[(c[f>>2]|0)+8>>2]=0;c[c[f>>2]>>
;2]=0;c[(c[f>>2]|0)+4>>2]=0;Sp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];c[j
x3e;>2]=c[(c[e>>2]|0)+8>>2];if((c[g>>2]|0)>>>0>=(c[j>>2]|0)>
;>>0){i=k;return}a:do switch(d[c[g>>2]>>0]|0|0){case 40:{c[(c[f>>2]|0)+8>>2]=2
;c[c[f>>2]>>2]=c[g>>2];if(!(Xp(g,c[j>>2]|0)|0))c[(c[f>>2]|0)+4>>2]=c
[g>>2];break}case 123:{c[(c[f>>2]|0)+8>>2]=3;c[c[f>>2]>>2]=c[g>>2];if
(!(Wp(g,c[j>>2]|0)|0))c[(c[f>>2]|0)+4>>2]=c[g>>2];break}case 91:{c[(c[f>>2]|0)+
8>>2]=3;c[h>>2]=1;b=c[g>>2]|0;c[g>>2]=b+1;c[c[f>>2]>>2]=b;c[c[e>
;>2]>>2]=c[g>>2];Sp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];while(1){if
((c[g>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break a;if(!((c[(c[e>>2]|0)+12
>>2]|0)!=0^1))break a;if((d[c[g>>2]>>0]|0|0)!=91){if((d[c[g>>2]>>0]|0|0)==93?(
c[h>>2]=(c[h>>2]|0)+-1,(c[h>>2]|0)<=0):0)break}else c[h>>2]=(c[h>>2]|0)+1
;c[c[e>>2]>>2]=c[g>>2];Vp(c[e>>2]|0);Sp(c[e>>2]|0);c[g>>2]=c[c[e>
;>2]>>2]}b=(c[g>>2]|0)+1|0;c[g>>2]=b;c[(c[f>>2]|0)+4>>2]=b;break}default:{
c[c[f>>2]>>2]=c[g>>2];c[(c[f>>2]|0)+8>>2]=(d[c[g>>2]>>0]|0
|0)==47?4:1;Vp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];if(!(c[(c[e>>2]|0)+12>>
;2]|0))c[(c[f>>2]|0)+4>>2]=c[g>>2]}}while(0);if(!(c[(c[f>>2]|0)+4>>2]|0)){c[c[
f>>2]>>2]=0;c[(c[f>>2]|0)+8>>2]=0}c[c[e>>2]>>2]=c[g>>2];i=
k;return}function jq(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;q=i;i=i+64|0;f=q+52|0;g=q+
48|0;h=q+44|0;j=q+40|0;m=q+28|0;n=q+24|0;o=q+20|0;k=q+16|0;l=q+12|0;p=q;c[f>>2]=a;c[g>>2]=b;c[h>>2
]=d;c[j>>2]=e;c[c[j>>2]>>2]=-1;iq(c[f>>2]|0,m);if((c[m+8>>2]|0)!=3){i=q;return
}c[n>>2]=c[c[f>>2]>>2];c[o>>2]=c[(c[f>>2]|0)+8>>2];c[k>>2]=
c[g>>2];c[l>>2]=(c[k>>2]|0)+((c[h>>2]|0)*12|0);c[c[f>>2]>>2]=(c[m>
;>2]|0)+1;c[(c[f>>2]|0)+8>>2]=(c[m+4>>2]|0)+-1;while(1){if((c[c[f>>2]>>2]|
0)>>>0>=(c[(c[f>>2]|0)+8>>2]|0)>>>0)break;iq(c[f>>2]|0,p);if(!(
c[p+8>>2]|0))break;if(c[g>>2]|0?(c[k>>2]|0)>>>0<(c[l>>2]|0)>>
;>0:0){b=c[k>>2]|0;c[b>>2]=c[p>>2];c[b+4>>2]=c[p+4>>2];c[b+8>>2
]=c[p+8>>2]}c[k>>2]=(c[k>>2]|0)+12}c[c[j>>2]>>2]=((c[k>>2]|0)-(c[g
x3e;>2]|0)|0)/12|0;c[c[f>>2]>>2]=c[n>>2];c[(c[f>>2]|0)+8>>2]=c[o>>
;2];i=q;return}function kq(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;H=i;i=i+128|0;k=H+112|0;l=H+108|0;m=H+104|0;n=H+100|0;o=H+96|0;D=H+84|0;r=H+80|0;v=H+76|
0;q=H+72|0;t=H+68|0;s=H+64|0;E=H+52|0;x=H+48|0;y=H+44|0;z=H+40|0;F=H+36|0;B=H+32|0;w=H+28|0;u=H+24|0;C=H+8|0;p=H+4|0;A=H;c[k>
;>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;iq(c[k>>2]|0,D);a:do if(c[
D+8>>2]|0){c[q>>2]=1;c[t>>2]=0;c[r>>2]=c[D>>2];c[v>>2]=c[D+4>
x3e;2];if((c[(c[l>>2]|0)+8>>2]|0)==7){c[x>>2]=c[c[k>>2]>>2];c[y>>2]=
c[(c[k>>2]|0)+8>>2];c[c[k>>2]>>2]=(c[D>>2]|0)+1;c[(c[k>>2]|0)+8>
;>2]=(c[D+4>>2]|0)+-1;iq(c[k>>2]|0,E);c[c[k>>2]>>2]=c[x>>2];c[(c[k>
x3e;2]|0)+8>>2]=c[y>>2];if((c[E+8>>2]|0)==3)G=5}else if((c[D+8>>2]|0)==3)G=5;if((G|0)==5
){if(!(c[n>>2]|0))break;c[q>>2]=c[n>>2];c[t>>2]=1;c[r>>2]=(c[r>>2]|0
)+1;c[v>>2]=(c[v>>2]|0)+-1}b:while(1){if((c[q>>2]|0)>>>0<=0){G=32;break}c[z>
;>2]=(c[(c[m>>2]|0)+(c[t>>2]<<2)>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0
);Tp(r,c[v>>2]|0);switch(c[(c[l>>2]|0)+8>>2]|0){case 1:{c[F>>2]=lq(r,c[v>>2]|0
)|0;G=13;break}case 3:{c[F>>2]=bq(r,c[v>>2]|0,0)|0;G=13;break}case 4:{c[F>>2]=bq(r,c[v>>
2]|0,3)|0;G=13;break}case 2:{c[F>>2]=_p(r,c[v>>2]|0)|0;G=13;break}case 6:case 5:{c[w>>2]=c[(c[k>
;>2]|0)+16>>2];c[u>>2]=(c[v>>2]|0)-(c[r>>2]|0);if((c[r>>2]|0)>>
x3e;0<(c[v>>2]|0)>>>0){if((c[D+8>>2]|0)==4){c[u>>2]=(c[u>>2]|0)+-1;c
[r>>2]=(c[r>>2]|0)+1}else{if((c[D+8>>2]|0)!=2){G=23;break b}c[r>>2]=(c[r>>2]|0
)+1;c[u>>2]=(c[u>>2]|0)-2}if(c[c[z>>2]>>2]|0){Fb(c[w>>2]|0,c[c[z>>2]
x3e;>2]|0);c[c[z>>2]>>2]=0;c[c[z>>2]>>2]=0}c[B>>2]=bc(c[w>>2]|0
,(c[u>>2]|0)+1|0,s)|0;if(c[s>>2]|0){G=33;break b}Ss(c[B>>2]|0,c[r>>2]|0,c[u>>2
]|0)|0;a[(c[B>>2]|0)+(c[u>>2]|0)>>0]=0;c[c[z>>2]>>2]=c[B>>2]}break}case
7:{c[p>>2]=c[z>>2];c[A>>2]=hq(r,c[v>>2]|0,4,C,0)|0;if((c[A>>2]|0)<0){G=29
;break b}E=Tb(c[C>>2]|0)|0;c[c[p>>2]>>2]=E;E=Tb(c[C+4>>2]|0)|0;c[(c[p>>2]|0)+4
>>2]=E;E=Tb(c[C+8>>2]|0)|0;c[(c[p>>2]|0)+8>>2]=E;E=Tb(c[C+12>>2]|0)|0;c[(c[p
x3e;>2]|0)+12>>2]=E;break}default:break a}c:do if((G|0)==13){G=0;switch(d[(c[l>>2]|0)+20>>0]|
0|0){case 1:{a[c[z>>2]>>0]=c[F>>2];break c}case 2:{b[c[z>>2]>>1]=c[F>>
;2];break c}case 4:{c[c[z>>2]>>2]=c[F>>2];break c}default:{c[c[z>>2]>>2]=c[F
x3e;>2];break c}}}while(0);c[q>>2]=(c[q>>2]|0)+-1;c[t>>2]=(c[t>>2]|0)+1}if((G|0)==23
){c[s>>2]=3;G=c[s>>2]|0;i=H;return G|0}else if((G|0)==29){c[s>>2]=3;G=c[s>>2]|0;i=H;return
G|0}else if((G|0)==32){c[o>>2]=c[o>>2];c[s>>2]=0;G=c[s>>2]|0;i=H;return G|0}else if((G|
0)==33){G=c[s>>2]|0;i=H;return G|0}}while(0);c[s>>2]=3;G=c[s>>2]|0;i=H;return G|0}function lq(b,e){
b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;f=l+8|0;g=l+4|0;h=l;j=l+12|0;c[f>>2]=b;c[g>>2]=e;c[h>
;>2]=c[c[f>>2]>>2];a[j>>0]=0;if((((((c[h>>2]|0)+3|0)>>>0<(c[g
x3e;>2]|0)>>>0?(d[c[h>>2]>>0]|0|0)==116:0)?(d[(c[h>>2]|0)+1>>0]|0|0)==
114:0)?(d[(c[h>>2]|0)+2>>0]|0|0)==117:0)?(d[(c[h>>2]|0)+3>>0]|0|0)==101:0){a[j>>
;0]=1;c[h>>2]=(c[h>>2]|0)+5}else k=7;if(((((((k|0)==7?((c[h>>2]|0)+4|0)>>>0<(c
[g>>2]|0)>>>0:0)?(d[c[h>>2]>>0]|0|0)==102:0)?(d[(c[h>>2]|0)+1>>
0]|0|0)==97:0)?(d[(c[h>>2]|0)+2>>0]|0|0)==108:0)?(d[(c[h>>2]|0)+3>>0]|0|0)==115:0)?(d[(c
[h>>2]|0)+4>>0]|0|0)==101:0){a[j>>0]=0;c[h>>2]=(c[h>>2]|0)+6}c[c[f>>
2]>>2]=c[h>>2];i=l;return d[j>>0]|0|0}function mq(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;v=i;i=i+464|0;j=v+456|0;k=v+452|0;l=v+448|0;m=v+444|0;n=v+440|0;o=v+56|0;u=v+52
|0;r=v+48|0;p=v+44|0;s=v+40|0;t=v+36|0;q=v;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n
x3e;>2]=h;c[p>>2]=0;e=q;g=c[k>>2]|0;f=e+36|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while
((e|0)<(f|0));c[q+8>>2]=2;if(!((c[(c[k>>2]|0)+8>>2]|0)!=9?(c[(c[k>>2]|0)+8>>
;2]|0)!=7:0))c[q+8>>2]=3;jq(c[j>>2]|0,o,32,r);if((c[r>>2]|0)<0){c[p>>2]=162;u=c[p
x3e;>2]|0;i=v;return u|0}if((c[r>>2]|0)>>>0>(c[(c[k>>2]|0)+24>>2]|0)>
;>>0)c[r>>2]=c[(c[k>>2]|0)+24>>2];c[s>>2]=c[c[j>>2]>>2];c[
t>>2]=c[(c[j>>2]|0)+8>>2];if((c[(c[k>>2]|0)+8>>2]|0)!=7?c[(c[k>>2]|0
)+28>>2]|0:0)a[(c[c[l>>2]>>2]|0)+(c[(c[k>>2]|0)+28>>2]|0)>>0]=c[r>
;>2];c[u>>2]=o;while(1){if((c[r>>2]|0)<=0)break;c[c[j>>2]>>2]=c[c[u>>
;2]>>2];c[(c[j>>2]|0)+8>>2]=c[(c[u>>2]|0)+4>>2];kq(c[j>>2]|0,q,c[l
x3e;>2]|0,c[m>>2]|0,0)|0;o=q+16|0;c[o>>2]=(c[o>>2]|0)+(d[q+20>>0]|0);c[r>>
;2]=(c[r>>2]|0)+-1;c[u>>2]=(c[u>>2]|0)+12}c[n>>2]=c[n>>2];c[c[j>>2]
x3e;>2]=c[s>>2];c[(c[j>>2]|0)+8>>2]=c[t>>2];u=c[p>>2]|0;i=v;return u|0}function
nq(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;h=n+16|0;o=n+12|0;j=n+8|0;k=n+4|0;l=n+
20|0;m=n;c[h>>2]=b;c[o>>2]=d;c[j>>2]=e;c[k>>2]=f;a[l>>0]=g;c[(c[h>>2
]|0)+64>>2]=0;a[(c[h>>2]|0)+68>>0]=1;c[(c[h>>2]|0)+4>>2]=c[o>>2];c[(
c[h>>2]|0)+8>>2]=c[k>>2];c[c[h>>2]>>2]=c[(c[o>>2]|0)+100>>
2];if(c[k>>2]|0?(c[m>>2]=c[c[(c[k>>2]|0)+156>>2]>>2],c[(c[h>>2]|0)+12
>>2]=c[m>>2],c[(c[h>>2]|0)+16>>2]=(c[m>>2]|0)+20,c[(c[h>>2]|0)+20>
;>2]=(c[m>>2]|0)+56,dc(c[m>>2]|0),c[(c[h>>2]|0)+76>>2]=c[(c[j>>2]|0)+40
x3e;>2],c[(c[h>>2]|0)+72>>2]=0,a[l>>0]|0):0)c[(c[h>>2]|0)+72>>2]=c[(c[(c[
k>>2]|0)+156>>2]|0)+36>>2];c[(c[h>>2]|0)+24>>2]=0;c[(c[h>>2]|0)+28
x3e;>2]=0;c[(c[h>>2]|0)+32>>2]=0;c[(c[h>>2]|0)+32+4>>2]=0;c[(c[h>>2]|0)+40
>>2]=0;c[(c[h>>2]|0)+40+4>>2]=0;o=(c[h>>2]|0)+80|0;c[o>>2]=c[1111];c[o+4>
x3e;2]=c[1112];c[o+8>>2]=c[1113];c[o+12>>2]=c[1114];c[o+16>>2]=c[1115];c[o+20>>2]=c[1116
];c[o+24>>2]=c[1117];c[o+28>>2]=c[1118];i=n;return}function oq(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0
;d=e;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+8>>2];if(!(c[d>>2]|0)){i=e;return}d=(c[d
x3e;>2]|0)+108|0;a=c[(c[b>>2]|0)+16>>2]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4
>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>
;>2];i=e;return}function pq(a,d){a=a|0;d=d|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]=
d;if(!(c[f>>2]|0)){d=0;i=g;return d|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20+2>>1]|0)+(b[(c[(
c[e>>2]|0)+12>>2]|0)+56+2>>1]|0)+(c[f>>2]|0)|0)>>>0<=(c[(c[(c[e>
;>2]|0)+12>>2]|0)+4>>2]|0)>>>0){d=0;i=g;return d|0}d=kc(c[(c[e>>2]|0)+12>
x3e;2]|0,c[f>>2]|0,0)|0;i=g;return d|0}function qq(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;p=i;i=i+32|0;q=p+20|0;j=p+16|0;k=p+12|0;l=p+24|0;n=p+8|0;o=p+4|0;m=p;c[q>>2]=e;c[j>>2]=f;c[k>>2]=
g;a[l>>0]=h;c[n>>2]=c[(c[q>>2]|0)+20>>2];if(!(a[(c[q>>2]|0)+68>>0]|0
)){q=c[n>>2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}c[o>
;>2]=(c[(c[n>>2]|0)+4>>2]|0)+(b[(c[n>>2]|0)+2>>1]<<3);c[m>>2]=(
c[(c[n>>2]|0)+8>>2]|0)+(b[(c[n>>2]|0)+2>>1]|0);q=(Tb(c[j>>2]|0)|0)>>
16;c[c[o>>2]>>2]=q;q=(Tb(c[k>>2]|0)|0)>>16;c[(c[o>>2]|0)+4>>2]=q;a[c
[m>>2]>>0]=d[l>>0]|0?1:2;q=c[n>>2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16
x3e;>16;b[q>>1]=g;i=p;return}function rq(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;e=j+12|0;f
=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=pq(c[e>>2]|0,1)|0;if(
c[h>>2]|0){d=c[h>>2]|0;i=j;return d|0}qq(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0,1);d=c[
h>>2]|0;i=j;return d|0}function sq(d){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[e>
;>2]=d;c[h>>2]=c[(c[e>>2]|0)+20>>2];if(!(c[h>>2]|0)){c[f>>2]=3;h=c[f>
;>2]|0;i=j;return h|0}if(!(a[(c[e>>2]|0)+68>>0]|0)){h=c[h>>2]|0;b[h>>1]=(b[h>
x3e;1]|0)+1<<16>>16;c[f>>2]=0;h=c[f>>2]|0;i=j;return h|0}if(((b[(c[(c[e>>2]|0)+
12>>2]|0)+20>>1]|0)+(b[(c[(c[e>>2]|0)+12>>2]|0)+56>>1]|0)+1|0)>>>
;0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+8>>2]|0)>>>0)e=0;else e=kc(c[(c[e>>2
]|0)+12>>2]|0,0,1)|0;c[g>>2]=e;if(!(c[g>>2]|0)){if((b[c[h>>2]>>1]|0)>0)b[(
c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>>1]|0)-1<<1)>>1]=(b[(c[h>
x3e;2]|0)+2>>1]|0)-1;h=c[h>>2]|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}c[f
x3e;>2]=c[g>>2];h=c[f>>2]|0;i=j;return h|0}function tq(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=3;if((c
[(c[e>>2]|0)+64>>2]|0)==3){c[h>>2]=0;d=c[h>>2]|0;i=j;return d|0}c[(c[e>>2]|0)+
64>>2]=3;c[h>>2]=sq(c[e>>2]|0)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=j;return d|0}c[h
x3e;>2]=rq(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;d=c[h>>2]|0;i=j;return d|0}function uq(
a){a=a|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;l=k+20|0;j=k+16|0;h=k+12|0;f=k+8|0;g=k+4|0;e=k;c[l>>2]=a;c[j>
;>2]=c[(c[l>>2]|0)+20>>2];if(!(c[j>>2]|0)){i=k;return}if((b[c[j>>2]>>1]|0
)<=1)a=0;else a=(b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>1]|0)-2<<1)>
;>1]|0)+1|0;c[h>>2]=a;if((((b[(c[j>>2]|0)+2>>1]|0)>1?(c[f>>2]=(c[(c[j>>
;2]|0)+4>>2]|0)+(c[h>>2]<<3),c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(b[(c[j
>>2]|0)+2>>1]<<3)+-8,c[e>>2]=(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>
x3e;2]|0)+2>>1]|0)+-1,(c[c[f>>2]>>2]|0)==(c[c[g>>2]>>2]|0)):0)?(c[(c[f>
x3e;2]|0)+4>>2]|0)==(c[(c[g>>2]|0)+4>>2]|0):0)?(d[c[e>>2]>>0]|0)==1:0){l=(c[j
x3e;>2]|0)+2|0;b[l>>1]=(b[l>>1]|0)+-1<<16>>16}if((b[c[j>>2]>>1]|
0)<=0){i=k;return}a=c[j>>2]|0;if((c[h>>2]|0)==((b[(c[j>>2]|0)+2>>1]|0)-1|0)){b[a>
;>1]=(b[a>>1]|0)+-1<<16>>16;l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>>1]|
0)+-1<<16>>16;i=k;return}else{b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>
;1]|0)-1<<1)>>1]=(b[a+2>>1]|0)-1;i=k;return}}function vq(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;x=i;i=i+64|0;m=x+44|0;n=x+40|0;o=x+36
|0;p=x+32|0;q=x+28|0;r=x+24|0;s=x+20|0;t=x+48|0;u=x+16|0;v=x+12|0;w=x+8|0;z=x+4|0;y=x;c[n>>2]=b;c[o>>2]=d;c[
p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=h;a[t>>0]=j;c[u>>2]=k;c[v>
x3e;2]=l;Ns(c[n>>2]|0,0,1500)|0;c[w>>2]=0;c[z>>2]=c[(c[o>>2]|0)+96>>2];c[y>
;>2]=Vd(c[z>>2]|0,71003)|0;c[w>>2]=c[y>>2];if(c[w>>2]|0){c[(c[n>>2]|0)+1348
>>2]=c[w>>2];nq(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,a[t>>
;0]|0);c[(c[n>>2]|0)+1352>>2]=c[(c[o>>2]|0)+16>>2];c[(c[n>>2]|0)+1356>>
;2]=c[r>>2];c[(c[n>>2]|0)+1468>>2]=c[u>>2];c[(c[n>>2]|0)+1464>>2]=c[
s>>2];c[(c[n>>2]|0)+1472>>2]=c[v>>2];z=(c[n>>2]|0)+1476|0;c[z>>2]=c[
1119];c[z+4>>2]=c[1120];c[z+8>>2]=c[1121];c[m>>2]=0;z=c[m>>2]|0;i=x;return z|0}else{c[m
x3e;>2]=7;z=c[m>>2]|0;i=x;return z|0}return 0}function wq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=
a;oq(c[d>>2]|0);i=b;return}function xq(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;Y=i;i=
i+176|0;k=Y+156|0;l=Y+152|0;h=Y+148|0;j=Y+144|0;v=Y+140|0;W=Y+136|0;C=Y+132|0;F=Y+128|0;s=Y+124|0;U=Y+120|0;V=Y+116|0;L=Y+112|0;
M=Y+108|0;D=Y+104|0;R=Y+100|0;E=Y+160|0;N=Y+96|0;w=Y+92|0;Q=Y+88|0;K=Y+84|0;S=Y+80|0;O=Y+76|0;n=Y+72|0;x=Y+68|0;o=Y+64|0;J=Y+60|
0;H=Y+56|0;G=Y+52|0;t=Y+48|0;T=Y+44|0;P=Y+40|0;y=Y+36|0;p=Y+32|0;z=Y+28|0;q=Y+24|0;A=Y+20|0;r=Y+16|0;m=Y+12|0;I=Y+8|0;B=Y+4|0;u=
Y;c[l>>2]=e;c[h>>2]=f;c[j>>2]=g;c[s>>2]=c[l>>2];c[D>>2]=0;c[R>
x3e;2]=0;c[N>>2]=N^l^h;e=(c[N>>2]^c[N>>2]>>10^c[N>>2]>>20)&65535
;c[N>>2]=e;c[N>>2]=(c[N>>2]|0)==0?29572:e;c[(c[l>>2]|0)+1136>>2]=(c[l>>
;2]|0)+112;c[(c[l>>2]|0)+1344>>2]=(c[l>>2]|0)+1140;c[W>>2]=(c[l>>2]|0)+1140;c[(
c[s>>2]|0)+64>>2]=0;c[w>>2]=c[(c[s>>2]|0)+72>>2];if((c[(c[l>>2]|0)+1492
>>2]|0)>>>0>0)Ns(c[(c[l>>2]|0)+1488>>2]|0,0,c[(c[l>>2]|0)+1492>
x3e;2]<<2|0)|0;c[(c[W>>2]|0)+4>>2]=c[h>>2];e=(c[h>>2]|0)+(c[j>>2]|0)|
0;c[(c[W>>2]|0)+8>>2]=e;c[F>>2]=e;e=c[(c[W>>2]|0)+4>>2]|0;c[c[W>>2]
x3e;>2]=e;c[C>>2]=e;c[v>>2]=0;e=c[(c[s>>2]|0)+24>>2]|0;c[L>>2]=e;c[U>
;>2]=e;e=c[(c[s>>2]|0)+28>>2]|0;c[M>>2]=e;c[V>>2]=e;if(c[w>>2]|0)Va[c[(c[
w>>2]|0)+4>>2]&63](c[c[w>>2]>>2]|0);a[E>>0]=0;a:while(1){if((c[C>>
;2]|0)>>>0>=(c[F>>2]|0)>>>0){X=186;break}c[Q>>2]=c[(c[l>>2]|0)+
1136>>2];c[K>>2]=0;c[S>>2]=0;e=c[C>>2]|0;c[C>>2]=e+1;b:do switch(d[e>>
;0]|0){case 1:{c[K>>2]=16;break}case 3:{c[K>>2]=18;break}case 4:{c[K>>2]=14;break}case 5:{c[K>
;>2]=9;break}case 6:{c[K>>2]=6;break}case 7:{c[K>>2]=13;break}case 8:{c[K>>2]=11;break}case 9
:{c[K>>2]=5;break}case 10:{c[K>>2]=22;break}case 11:{c[K>>2]=24;break}case 13:{c[K>>2]=2
;break}case 14:{c[K>>2]=1;break}case 15:{c[K>>2]=26;break}case 21:{c[K>>2]=10;break}case 22:{c[K
x3e;>2]=7;break}case 30:{c[K>>2]=12;break}case 31:{c[K>>2]=8;break}case 12:{if((c[C>>2]|0)>
;>>0>(c[F>>2]|0)>>>0)break a;e=c[C>>2]|0;c[C>>2]=e+1;switch(d[e>
;>0]|0){case 0:{c[K>>2]=15;break b}case 1:{c[K>>2]=19;break b}case 2:{c[K>>2]=17;break b}case
6:{c[K>>2]=3;break b}case 7:{c[K>>2]=4;break b}case 12:{c[K>>2]=20;break b}case 16:{c[K>>
;2]=21;break b}case 17:{c[K>>2]=23;break b}case 33:{c[K>>2]=25;break b}default:break a}}case 255:{if(((c[C
x3e;>2]|0)+4|0)>>>0>(c[F>>2]|0)>>>0)break a;c[S>>2]=d[c[C>>
;2]>>0]<<24|d[(c[C>>2]|0)+1>>0]<<16|d[(c[C>>2]|0)+2>>0]<
;<8|d[(c[C>>2]|0)+3>>0];c[C>>2]=(c[C>>2]|0)+4;h=(a[E>>0]|0)!=0;if((c[S>
;>2]|0)>32e3|(c[S>>2]|0)<-32e3){if(h)break b;a[E>>0]=1;break b}else{if(h)break b;c[S>>
;2]=c[S>>2]<<16;break b}}default:{if((d[(c[C>>2]|0)+-1>>0]|0)<32)break a;h=c[C>
;>2]|0;do if((d[(c[C>>2]|0)+-1>>0]|0)>=247){e=h+1|0;c[C>>2]=e;if(e>>>0>
;(c[F>>2]|0)>>>0)break a;h=d[(c[C>>2]|0)+-2>>0]|0;if((d[(c[C>>2]|0)+-2>
;>0]|0)<251){c[S>>2]=(h-247<<8)+(d[(c[C>>2]|0)+-1>>0]|0)+108;break}else{c[S>
;>2]=0-((h-251<<8)+(d[(c[C>>2]|0)+-1>>0]|0)+108);break}}else c[S>>2]=(d[h+-1>
x3e;0]|0)-139;while(0);if(!(a[E>>0]|0))c[S>>2]=c[S>>2]<<16}}while(0);c:do if((c[R>
x3e;2]|0)>0){switch(c[K>>2]|0){case 23:case 0:case 24:case 22:break c;default:{}}c[R>>2]=0}while(0);if(!((
d[E>>0]|0)==0|(c[K>>2]|0)==0|(c[K>>2]|0)==20))a[E>>0]=0;if(!(c[K>>2]|0)){if((((
c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)>=256)break;g=c[S>>2]|0;e=c[Q>>2]|0;c[Q>
x3e;2]=e+4;c[e>>2]=g;c[(c[l>>2]|0)+1136>>2]=c[Q>>2];continue}if((c[K>>2]|0)==21
){if((((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)<2){X=188;break}c[Q>>2]=(c[Q>>2]|0)+-
8;c[O>>2]=c[(c[Q>>2]|0)+4>>2]>>16;c[n>>2]=c[c[Q>>2]>>2]>
;>16;if((c[n>>2]|0)>(((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)){X=188;break}c[Q>>
;2]=(c[Q>>2]|0)+(0-(c[n>>2]|0)<<2);c[D>>2]=0;c[R>>2]=0;do switch(c[O>>
;2]|0){case 1:{if(c[n>>2]|0)break a;c[(c[l>>2]|0)+1400>>2]=1;c[(c[l>>2]|0)+1404>>
;2]=0;e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}e=pq(c[s>
;>2]|0,6)|0;c[v>>2]=e;if(e|0){X=186;break a}break}case 2:{if(c[n>>2]|0)break a;g=(c[l>>2]|0)+
1404|0;e=c[g>>2]|0;c[g>>2]=e+1;c[x>>2]=e;if((c[x>>2]|0)>0&(c[x>>2]|0
)<7)qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,((c[x>>2]|0)==3?1:(c[x>>2]|0)==6)&
;1);break}case 0:{if((c[n>>2]|0)!=3)break a;if(!(c[(c[l>>2]|0)+1400>>2]|0))break a;if((c[(c[l>
;>2]|0)+1404>>2]|0)!=7)break a;c[c[Q>>2]>>2]=c[U>>2];c[(c[Q>>2]|0)+4>
;>2]=c[V>>2];c[D>>2]=2;break}case 3:{if((c[n>>2]|0)!=1)break a;c[D>>2]=1;if(c[w>
;>2]|0)Ra[c[(c[w>>2]|0)+20>>2]&7](c[c[w>>2]>>2]|0,b[(c[(c[s>>2]|0)+20
>>2]|0)+2>>1]|0);break}case 13:case 12:{c[Q>>2]=(c[l>>2]|0)+112;break}case 18:case 17:case
16:case 15:case 14:{c[o>>2]=c[(c[l>>2]|0)+1464>>2];if(!(c[o>>2]|0))break a;c[J>>
;2]=(c[O>>2]|0)-13+((c[O>>2]|0)==18&1);if((c[n>>2]|0)!=(_(c[J>>2]|0,c[c[o>>
;2]>>2]|0)|0))break a;c[t>>2]=(c[Q>>2]|0)+(c[J>>2]<<2);c[T>>2]=c[Q
x3e;>2];c[H>>2]=0;while(1){if((c[H>>2]|0)>>>0>=(c[J>>2]|0)>>>
;0)break;c[P>>2]=c[c[T>>2]>>2];c[G>>2]=1;while(1){if((c[G>>2]|0)>>
x3e;0>=(c[c[o>>2]>>2]|0)>>>0)break;e=c[t>>2]|0;c[t>>2]=e+4;e=Mb(c[e
x3e;>2]|0,c[(c[(c[o>>2]|0)+136>>2]|0)+(c[G>>2]<<2)>>2]|0)|0;c[P>>
;2]=(c[P>>2]|0)+e;c[G>>2]=(c[G>>2]|0)+1}g=c[P>>2]|0;e=c[T>>2]|0;c[T>>
;2]=e+4;c[e>>2]=g;c[H>>2]=(c[H>>2]|0)+1}c[D>>2]=c[J>>2];break}case 19:{c[p>
;>2]=c[(c[l>>2]|0)+1464>>2];if((c[n>>2]|0)!=1|(c[p>>2]|0)==0)break a;c[y>>
;2]=c[c[Q>>2]>>2]>>16;if((c[y>>2]|0)<0)break a;if(((c[y>>2]|0)+(c[c[p>
;>2]>>2]|0)|0)>>>0>(c[(c[l>>2]|0)+1492>>2]|0)>>>0)break a;
Ss((c[(c[l>>2]|0)+1488>>2]|0)+(c[y>>2]<<2)|0,c[(c[p>>2]|0)+136>>2]|0
,c[c[p>>2]>>2]<<2|0)|0;break}case 20:{if((c[n>>2]|0)!=2)break a;e=c[Q>>2]|0;c[
e>>2]=(c[e>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);c[D>>2]=1;break}case 21:{if((c[n>
;>2]|0)!=2)break a;e=c[Q>>2]|0;c[e>>2]=(c[e>>2]|0)-(c[(c[Q>>2]|0)+4>>2]|0
);c[D>>2]=1;break}case 22:{if((c[n>>2]|0)!=2)break a;e=Mb(c[c[Q>>2]>>2]|0,c[(c[Q>
x3e;2]|0)+4>>2]|0)|0;c[c[Q>>2]>>2]=e;c[D>>2]=1;break}case 23:{if((c[n>>2]|0)!=
2)break a;if(!(c[(c[Q>>2]|0)+4>>2]|0))break a;e=Vb(c[c[Q>>2]>>2]|0,c[(c[Q>>2]|
0)+4>>2]|0)|0;c[c[Q>>2]>>2]=e;c[D>>2]=1;break}case 24:{c[q>>2]=c[(c[l>>
;2]|0)+1464>>2];if((c[n>>2]|0)!=2|(c[q>>2]|0)==0)break a;c[z>>2]=c[(c[Q>>2]|0)+
4>>2]>>16;if((c[z>>2]|0)<0)break a;if((c[z>>2]|0)>>>0>=(c[(c[l
x3e;>2]|0)+1492>>2]|0)>>>0)break a;c[(c[(c[l>>2]|0)+1488>>2]|0)+(c[z>>
;2]<<2)>>2]=c[c[Q>>2]>>2];break}case 25:{c[r>>2]=c[(c[l>>2]|0)+1464
x3e;>2];if((c[n>>2]|0)!=1|(c[r>>2]|0)==0)break a;c[A>>2]=c[c[Q>>2]>>2]>
;>16;if((c[A>>2]|0)<0)break a;if((c[A>>2]|0)>>>0>=(c[(c[l>>2]|0)+1492
>>2]|0)>>>0)break a;c[c[Q>>2]>>2]=c[(c[(c[l>>2]|0)+1488>>2]|0)+(
c[A>>2]<<2)>>2];c[D>>2]=1;break}case 27:{if((c[n>>2]|0)!=4)break a;if((c[(c[Q
x3e;>2]|0)+8>>2]|0)>(c[(c[Q>>2]|0)+12>>2]|0))c[c[Q>>2]>>2]=c[(c[Q>
;>2]|0)+4>>2];c[D>>2]=1;break}case 28:{if(c[n>>2]|0)break a;c[m>>2]=c[N>>
2];if((c[m>>2]|0)>=32768)c[m>>2]=(c[m>>2]|0)+1;c[c[Q>>2]>>2]=c[m>>
;2];c[N>>2]=Mb(c[N>>2]|0,65536-(c[N>>2]|0)|0)|0;if(!(c[N>>2]|0))c[N>>2]=(c[N
x3e;>2]|0)+10355;c[D>>2]=1;break}default:c[R>>2]=c[n>>2]}while(0);c[Q>>2]=(c[Q>
;>2]|0)+(c[D>>2]<<2);c[(c[l>>2]|0)+1136>>2]=c[Q>>2];continue}c[I>>
;2]=c[4488+(c[K>>2]<<2)>>2];if((((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)<(
c[I>>2]|0)){X=188;break}c[Q>>2]=(c[Q>>2]|0)+(0-(c[I>>2]|0)<<2);d:do switch(c[K
>>2]|0){case 1:{X=121;break a}case 3:{X=127;break a}case 2:{c[(c[s>>2]|0)+64>>2]=1;e=(c[s>>
;2]|0)+32|0;c[e>>2]=(c[e>>2]|0)+(c[c[Q>>2]>>2]|0);c[(c[s>>2]|0)+40>>
2]=c[(c[Q>>2]|0)+4>>2];c[(c[s>>2]|0)+40+4>>2]=0;e=(c[(c[s>>2]|0)+24>>
;2]|0)+(c[c[Q>>2]>>2]|0)|0;c[U>>2]=e;c[L>>2]=e;e=c[(c[s>>2]|0)+28>>2
]|0;c[V>>2]=e;c[M>>2]=e;c[M>>2]=c[M>>2];if(a[(c[s>>2]|0)+70>>0]|0){X
=126;break a}break}case 4:{c[(c[s>>2]|0)+64>>2]=1;e=(c[s>>2]|0)+32|0;c[e>>2]=(c[e>
x3e;2]|0)+(c[c[Q>>2]>>2]|0);e=(c[s>>2]|0)+32+4|0;c[e>>2]=(c[e>>2]|0)+(c[(c[Q
x3e;>2]|0)+4>>2]|0);c[(c[s>>2]|0)+40>>2]=c[(c[Q>>2]|0)+8>>2];c[(c[s>
x3e;2]|0)+40+4>>2]=c[(c[Q>>2]|0)+12>>2];c[U>>2]=(c[(c[s>>2]|0)+24>>2
]|0)+(c[c[Q>>2]>>2]|0);c[V>>2]=(c[(c[s>>2]|0)+28>>2]|0)+(c[(c[Q>>2]|
0)+4>>2]|0);if(a[(c[s>>2]|0)+70>>0]|0){X=129;break a}break}case 5:{if(!((c[(c[s>>2]|0)+64
>>2]|0)!=3?(c[(c[s>>2]|0)+64>>2]|0)!=2:0))uq(c[s>>2]|0);c[(c[s>>2]|0)+64>
x3e;2]=1;break}case 6:{X=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=X;if(X|0){X=186;break
a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);X=144;break}case 7:{c[U>>2]=(c[U>
;>2]|0)+(c[c[Q>>2]>>2]|0);if(!(c[(c[l>>2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|
0)+64>>2]|0))break a;c[(c[s>>2]|0)+64>>2]=2}break}case 8:{e=tq(c[s>>2]|0,c[U>>
2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){
X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);qq(c[s>>2]|0,c[U>>
;2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);c[V>>
2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2
]|0,0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+12>>2]|0);qq(c[s>>2]|0,c[U>>
;2]|0,c[V>>2]|0,1);break}case 9:{X=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=
X;if(X|0){X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);c[V>>2]=(c[V>
;>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);X=144;break}case 10:{c[U>>2]=(c[U>>2]|0)+(c[c[Q>
;>2]>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);if(!(c[(c[l>
x3e;2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|0)+64>>2]|0))break a;c[(c[s>>2]|0)+64>>
2]=2}break}case 11:{e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break
a}e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>
x3e;2]>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);qq(c[s>>2]|
0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);
c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+12>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,
c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+16>>2]|0);c[V>>2]=(c
[V>>2]|0)+(c[(c[Q>>2]|0)+20>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,
1);break}case 12:{e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}
e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){X=186;break a}c[V>>2]=(c[V>>2]|0)+(c[c[Q>>
;2]>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(
c[(c[Q>>2]|0)+4>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);qq
(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+
12>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,1);break}case 13:{X=tq(c[s>>2]|0,c[
U>>2]|0,c[V>>2]|0)|0;c[v>>2]=X;if(X|0){X=186;break a}c[V>>2]=(c[V>>2]|0)+(c[c[
Q>>2]>>2]|0);X=144;break}case 14:{c[V>>2]=(c[V>>2]|0)+(c[c[Q>>2]>>2]|
0);if(!(c[(c[l>>2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|0)+64>>2]|0))break a;c[(c[s>>
;2]|0)+64>>2]=2}break}case 20:{e=Vb(c[c[Q>>2]>>2]|0,c[(c[Q>>2]|0)+4>>2]|0)|0;c
[c[Q>>2]>>2]=e;c[Q>>2]=(c[Q>>2]|0)+4;a[E>>0]=0;break}case 22:{c[B>>2
]=c[c[Q>>2]>>2]>>16;if((c[B>>2]|0)<0)break a;if((c[B>>2]|0)>=(c[(c[l
>>2]|0)+1364>>2]|0))break a;if((((c[W>>2]|0)-((c[l>>2]|0)+1140)|0)/12|0|0)>=16)break
a;c[c[W>>2]>>2]=c[C>>2];c[W>>2]=(c[W>>2]|0)+12;c[(c[W>>2]|0)+4>
;>2]=c[(c[(c[l>>2]|0)+1368>>2]|0)+(c[B>>2]<<2)>>2];if(c[(c[l>>2
]|0)+1372>>2]|0)c[(c[W>>2]|0)+8>>2]=(c[(c[W>>2]|0)+4>>2]|0)+(c[(c[(c[l>
x3e;2]|0)+1372>>2]|0)+(c[B>>2]<<2)>>2]|0);else{if((c[(c[l>>2]|0)+1360>>
;2]|0)>=0)h=c[(c[l>>2]|0)+1360>>2]|0;else h=0;e=(c[W>>2]|0)+4|0;c[e>>2]=(c[e>
x3e;2]|0)+h;c[(c[W>>2]|0)+8>>2]=c[(c[(c[l>>2]|0)+1368>>2]|0)+((c[B>>2]|0)+1<
;<2)>>2]}c[c[W>>2]>>2]=c[(c[W>>2]|0)+4>>2];if(!(c[(c[W>>2]|0)+4
>>2]|0))break a;c[(c[l>>2]|0)+1344>>2]=c[W>>2];c[C>>2]=c[(c[W>>2]|0)+
4>>2];c[F>>2]=c[(c[W>>2]|0)+8>>2];break}case 23:{if((c[D>>2]|0)>0){c[D>
;>2]=(c[D>>2]|0)+-1;break d}if(!(c[R>>2]|0))break a;c[R>>2]=(c[R>>2]|0)+-1;c[Q>
;>2]=(c[Q>>2]|0)+4;break}case 24:{if((c[W>>2]|0)>>>0<=((c[l>>2]|0)+1140|0
)>>>0)break a;c[W>>2]=(c[W>>2]|0)+-12;c[C>>2]=c[c[W>>2]>>2];c[F
>>2]=c[(c[W>>2]|0)+8>>2];c[(c[l>>2]|0)+1344>>2]=c[W>>2];break}case 26
:case 15:break;case 16:{if(c[w>>2]|0)Ua[c[(c[w>>2]|0)+12>>2]&31](c[c[w>>2]>>
;2]|0,1,c[Q>>2]|0);break}case 17:{if(c[w>>2]|0)Ua[c[(c[w>>2]|0)+16>>2]&31](c[c[w>
;>2]>>2]|0,1,c[Q>>2]|0);break}case 18:{if(c[w>>2]|0){e=c[Q>>2]|0;c[e>>2]=(
c[e>>2]|0)+(c[L>>2]|0);Ua[c[(c[w>>2]|0)+12>>2]&31](c[c[w>>2]>>2
]|0,0,c[Q>>2]|0)}break}case 19:{if(c[w>>2]|0){c[u>>2]=c[L>>2];e=c[Q>>2]|0;c[e
x3e;>2]=(c[e>>2]|0)+(c[u>>2]|0);e=(c[Q>>2]|0)+8|0;c[e>>2]=(c[e>>2]|0)+(c[
u>>2]|0);e=(c[Q>>2]|0)+16|0;c[e>>2]=(c[e>>2]|0)+(c[u>>2]|0);Ua[c[(c[w>>
;2]|0)+16>>2]&31](c[c[w>>2]>>2]|0,0,c[Q>>2]|0)}break}case 25:{c[U>>2]=c[c
[Q>>2]>>2];c[V>>2]=c[(c[Q>>2]|0)+4>>2];c[(c[l>>2]|0)+1400>>
;2]=0;break}default:break a}while(0);if((X|0)==144?(X=0,e=rq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0,c[v
x3e;>2]=e,e|0):0){X=186;break}c[(c[l>>2]|0)+1136>>2]=c[Q>>2]}do if((X|0)==121){uq(c[s>
x3e;2]|0);if(c[w>>2]|0){if(Ya[c[(c[w>>2]|0)+8>>2]&127](c[c[w>>2]>>2]|0,b[(
c[(c[s>>2]|0)+20>>2]|0)+2>>1]|0)|0)break;Wa[c[(c[w>>2]|0)+24>>2]&31](c[c[
w>>2]>>2]|0,c[(c[s>>2]|0)+20>>2]|0,c[(c[s>>2]|0)+76>>2]|0,c[(c[l>
;>2]|0)+1468>>2]|0)|0}oc(c[(c[s>>2]|0)+12>>2]|0);c[k>>2]=0;X=c[k>>2]|0;i=
Y;return X|0}else if((X|0)==126){c[k>>2]=0;X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==127){c[k>>2]=
yq(c[l>>2]|0,c[c[Q>>2]>>2]|0,c[(c[Q>>2]|0)+4>>2]|0,c[(c[Q>>2]|0)+8
x3e;>2]|0,c[(c[Q>>2]|0)+12>>2]>>16,c[(c[Q>>2]|0)+16>>2]>>16)|0;
X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==129){c[k>>2]=0;X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==
186){c[k>>2]=c[v>>2];X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==188){c[k>>2]=161;X=c[k>
;>2]|0;i=Y;return X|0}while(0);c[k>>2]=160;X=c[k>>2]|0;i=Y;return X|0}function yq(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;A=i;i=i+80|0;n=A+68|0;o=A+64
|0;p=A+60|0;q=A+56|0;r=A+52|0;k=A+48|0;l=A+44|0;v=A+40|0;u=A+36|0;s=A+32|0;x=A+24|0;t=A+16|0;m=A+12|0;w=A+8|0;y=A+4|0;z=A;c[o>
;>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[k>>2]=h;c[l>>2]=j;c[m>>2
]=c[(c[o>>2]|0)+4>>2];if(a[(c[o>>2]|0)+1496>>0]|0){c[n>>2]=160;z=c[n>>
;2]|0;i=A;return z|0}c[q>>2]=(c[q>>2]|0)+(c[(c[o>>2]|0)+32>>2]|0);if((c[(c[o>>
2]|0)+1356>>2]|0)==0?(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)==0:0){c[n>>2]=160;
z=c[n>>2]|0;i=A;return z|0}if(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0){c[u>>2]=c[
k>>2];c[s>>2]=c[l>>2]}else{c[u>>2]=zq(c[o>>2]|0,c[k>>2]|0)|0;c[s>
;>2]=zq(c[o>>2]|0,c[l>>2]|0)|0}if((c[u>>2]|0)<0|(c[s>>2]|0)<0){c[n>
x3e;2]=160;z=c[n>>2]|0;i=A;return z|0}k=c[o>>2]|0;if(a[(c[o>>2]|0)+69>>0]|0){c[w>
x3e;2]=c[k+8>>2];c[y>>2]=c[c[(c[w>>2]|0)+156>>2]>>2];c[v>>2]=lc(c[y
x3e;>2]|0,2)|0;if(!(c[v>>2]|0)){c[z>>2]=c[(c[y>>2]|0)+56+32>>2];c[c[z>>2]
x3e;>2]=c[u>>2];b[(c[z>>2]|0)+4>>1]=514;c[(c[z>>2]|0)+8>>2]=0;c[(c[z>
;>2]|0)+12>>2]=0;c[z>>2]=(c[z>>2]|0)+32;c[c[z>>2]>>2]=c[s>>2];b
[(c[z>>2]|0)+4>>1]=2;x=(Tb((c[q>>2]|0)-(c[p>>2]|0)|0)|0)>>16;c[(c[z>>
;2]|0)+8>>2]=x;x=(Tb(c[r>>2]|0)|0)>>16;c[(c[z>>2]|0)+12>>2]=x;c[(c[w>>
;2]|0)+128>>2]=2;c[(c[w>>2]|0)+132>>2]=c[(c[y>>2]|0)+20+32>>2];c[(c[w>>
;2]|0)+72>>2]=1668246896;c[(c[y>>2]|0)+56+28>>2]=2}}else{nc(c[k+12>>2]|0);a[(c[o>
x3e;2]|0)+1496>>0]=1;c[v>>2]=Aq(c[o>>2]|0,c[u>>2]|0)|0;a[(c[o>>2]|0)+1496>
;>0]=0;if((c[v>>2]|0)==0?(z=(c[o>>2]|0)+32|0,c[x>>2]=c[z>>2],c[x+4>>2]=c[
z+4>>2],z=(c[o>>2]|0)+40|0,c[t>>2]=c[z>>2],c[t+4>>2]=c[z+4>>2],c[(c[
o>>2]|0)+32>>2]=0,c[(c[o>>2]|0)+32+4>>2]=0,c[(c[o>>2]|0)+24>>2]=(c[q
>>2]|0)-(c[p>>2]|0),c[(c[o>>2]|0)+28>>2]=c[r>>2],a[(c[o>>2]|0)+1496
x3e;>0]=1,c[v>>2]=Aq(c[o>>2]|0,c[s>>2]|0)|0,a[(c[o>>2]|0)+1496>>0]=0,(c[v
>>2]|0)==0):0){z=(c[o>>2]|0)+32|0;c[z>>2]=c[x>>2];c[z+4>>2]=c[x+4>>2
];z=(c[o>>2]|0)+40|0;c[z>>2]=c[t>>2];c[z+4>>2]=c[t+4>>2];c[(c[o>>2]|
0)+24>>2]=0;c[(c[o>>2]|0)+28>>2]=0}}c[n>>2]=c[v>>2];z=c[n>>2]|0;i=A;
return z|0}function zq(b,d){b=b|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;l=n+24|0;f=n+20|0;g=n+16|0;m=n+12|0;h=n
+8|0;k=n+4|0;j=n;c[f>>2]=b;c[g>>2]=d;c[k>>2]=c[(c[f>>2]|0)+1348>>2];if((c[g>
;>2]|0)<0|(c[g>>2]|0)>255){c[l>>2]=-1;m=c[l>>2]|0;i=n;return m|0}c[h>>2]=
Ta[c[(c[k>>2]|0)+20>>2]&63](e[(c[(c[k>>2]|0)+24>>2]|0)+(c[g>>2]<<
;1)>>1]|0)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[(c[f>>2]|0)+1352
>>2]|0)>>>0){f=10;break}c[j>>2]=c[(c[(c[f>>2]|0)+1356>>2]|0)+(c[m>
x3e;2]<<2)>>2];if((c[j>>2]|0?(a[c[j>>2]>>0]|0)==(a[c[h>>2]>>
;0]|0):0)?(Kr(c[j>>2]|0,c[h>>2]|0)|0)==0:0){f=8;break}c[m>>2]=(c[m>>2]|0)+1}if((f|0)==8){
c[l>>2]=c[m>>2];m=c[l>>2]|0;i=n;return m|0}else if((f|0)==10){c[l>>2]=-1;m=c[l>>
;2]|0;i=n;return m|0}return 0}function Aq(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=Ya[c[(c[f>>2]|0)+1472>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return b|0}
function Bq(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|
0;k=n+8|0;m=n+4|0;l=n;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=0;c[m>
;>2]=bc(c[h>>2]|0,16,l)|0;if(c[l>>2]|0){c[f>>2]=c[l>>2];m=c[f>>2]|0;i=n;return
m|0}else{a=c[j>>2]|0;c[(c[m>>2]|0)+4>>2]=a;c[c[m>>2]>>2]=a;c[(c[m>>
2]|0)+8>>2]=c[k>>2];c[(c[m>>2]|0)+12>>2]=2;c[c[g>>2]>>2]=c[h>
x3e;2];c[(c[g>>2]|0)+4>>2]=c[m>>2];c[(c[g>>2]|0)+8>>2]=0;c[(c[g>>2]|
0)+12>>2]=0;c[f>>2]=0;m=c[f>>2]|0;i=n;return m|0}return 0}function Cq(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];Fb(c[e>>2]|0,c[(c[d>
;>2]|0)+4>>2]|0);c[(c[d>>2]|0)+4>>2]=0;i=b;return}function Dq(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;o=i;i=i+80|0;j=o+68|0;k=o+64|0;n=o+60|0;m=o+56|0;l=o+52|0;d=o+48|0;e=o+44|0;f=o+40|0;h=o+8|0;g=o;c[k
x3e;>2]=b;c[n>>2]=c[c[k>>2]>>2];c[m>>2]=c[(c[k>>2]|0)+8>>2];c[l
>>2]=160;c[f>>2]=0;if(!(c[m>>2]|0)){c[j>>2]=6;n=c[j>>2]|0;i=o;return n|0}c[d
x3e;>2]=Eq(c[k>>2]|0,1,e)|0;if(!((c[d>>2]|0)==0|(c[e>>2]|0)!=16)?(Lr(c[d>>2]|0,11707
,16)|0)==0:0){a:while(1){b=Eq(c[k>>2]|0,1,e)|0;c[d>>2]=b;if(!b){d=24;break}switch(Iq(c[d>>2]|0,c[e
>>2]|0)|0){case 49:{d=22;break a}case 20:{d=23;break a}case 40:{if(Jq(c[k>>2]|0,f)|0){d=24;break a}if((c[f
x3e;>2]|0)!=0&(c[f>>2]|0)!=2){d=10;break a}else continue a}case 30:{c[h>>2]=4;if((Kq(c[k>>
;2]|0,h,1)|0)!=1){d=24;break a}a[c[m>>2]>>0]=a[h+4>>0]|0;continue a}case 26:{c[h>>2]=2;c
[h+8>>2]=2;c[h+16>>2]=2;c[h+24>>2]=2;if((Kq(c[k>>2]|0,h,4)|0)!=4){d=24;break a}c[(c[m>
;>2]|0)+4>>2]=c[h+4>>2];c[(c[m>>2]|0)+4+4>>2]=c[h+8+4>>2];c[(c[m>>
;2]|0)+4+8>>2]=c[h+16+4>>2];c[(c[m>>2]|0)+4+12>>2]=c[h+24+4>>2];continue a}case
0:{c[h>>2]=2;if((Kq(c[k>>2]|0,h,1)|0)!=1){d=24;break a}c[(c[m>>2]|0)+20>>2]=c[h+4>
x3e;2];continue a}case 14:{c[h>>2]=2;if((Kq(c[k>>2]|0,h,1)|0)!=1){d=24;break a}c[(c[m>>2]|0)+24>
;>2]=c[h+4>>2];continue a}case 45:{c[g>>2]=0;if(Jq(c[k>>2]|0,g)|0){d=24;break a}c[l>>
;2]=Lq(c[k>>2]|0,c[g>>2]|0,17)|0;if(c[l>>2]|0){d=21;break a}else continue a}default:continue a}}if
((d|0)==10){c[l>>2]=7;d=24}else if((d|0)==21){c[j>>2]=c[l>>2];n=c[j>>2]|0;i=o;return n|0
}else if((d|0)==22){c[l>>2]=Mq(c[k>>2]|0)|0;if(c[l>>2]|0)d=24;else d=23}if((d|0)==23){c[j>>
;2]=0;n=c[j>>2]|0;i=o;return n|0}else if((d|0)==24){Fb(c[n>>2]|0,c[(c[m>>2]|0)+28>>2]|0);
c[(c[m>>2]|0)+28>>2]=0;c[(c[m>>2]|0)+32>>2]=0;Fb(c[n>>2]|0,c[(c[m>>2
]|0)+36>>2]|0);c[(c[m>>2]|0)+36>>2]=0;c[(c[m>>2]|0)+40>>2]=0;a[c[m>>
2]>>0]=0;c[j>>2]=c[l>>2];n=c[j>>2]|0;i=o;return n|0}}c[j>>2]=2;n=c[j>>
;2]|0;i=o;return n|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,l=0;j=i;i=i+32|0;l=j+12|0;k=j+16|0;g=j+8|0;f=j
+4|0;h=j;c[l>>2]=b;a[k>>0]=d;c[g>>2]=e;c[f>>2]=c[(c[l>>2]|0)+4>>2];c
[h>>2]=0;a:do if(a[k>>0]|0)do{if((c[(c[f>>2]|0)+12>>2]|0)<2)Fq(c[f>>2]|0)|
0;c[(c[f>>2]|0)+12>>2]=0;c[h>>2]=Hq(c[f>>2]|0)|0;if(c[h>>2]|0)break a;if((c[(c
[f>>2]|0)+12>>2]|0)>=3)break a}while((c[(c[f>>2]|0)+12>>2]|0)>=2);else while(1
){e=c[f>>2]|0;if((c[(c[f>>2]|0)+12>>2]|0)>=1^1){Hq(e)|0;continue}c[e+12>>2]=0;c[h
x3e;>2]=Hq(c[f>>2]|0)|0;if(c[h>>2]|0)break a;if((c[(c[f>>2]|0)+12>>2]|0)>=3)break
a;if((c[(c[f>>2]|0)+12>>2]|0)<1)break}while(0);if(!(c[g>>2]|0)){l=c[h>>2]|0;i=j;return
l|0}if(c[h>>2]|0)e=(c[c[f>>2]>>2]|0)-(c[h>>2]|0)-1|0;else e=0;c[c[g>>2]>
x3e;2]=e;l=c[h>>2]|0;i=j;return l|0}function Fq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;f=h+8|0;g=h
+4|0;b=h;c[f>>2]=a;Gq(c[f>>2]|0)|0;if((c[(c[f>>2]|0)+12>>2]|0)>=2){c[e>>2
]=0;g=c[e>>2]|0;i=h;return g|0}c[g>>2]=(c[c[f>>2]>>2]|0)+-1;while(1){if((c[c[f>>
;2]>>2]|0)>>>0<(c[(c[f>>2]|0)+8>>2]|0)>>>0){j=c[f>>2]|
0;a=c[j>>2]|0;c[j>>2]=a+1;a=d[a>>0]|0}else a=-1;c[b>>2]=a;if((c[b>>2]|0)==13|(
c[b>>2]|0)==10){a=7;break}if((c[b>>2]|0)==-1|(c[b>>2]|0)==26){a=9;break}}if((a|0)==7)c[(c[f>
x3e;2]|0)+12>>2]=2;else if((a|0)==9)c[(c[f>>2]|0)+12>>2]=3;c[e>>2]=c[g>>2];j=c
[e>>2]|0;i=h;return j|0}function Gq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;b=g+8|0;e=g+4|0;f=g;c[e>>2
]=a;c[f>>2]=0;if((c[(c[e>>2]|0)+12>>2]|0)>=1){c[b>>2]=59;f=c[b>>2]|0;i=g;
return f|0}do{if((c[c[e>>2]>>2]|0)>>>0<(c[(c[e>>2]|0)+8>>2]|0)>
x3e;>0){h=c[e>>2]|0;a=c[h>>2]|0;c[h>>2]=a+1;a=d[a>>0]|0}else a=-1;c[f>>2]=
a}while((c[f>>2]|0)==32|(c[f>>2]|0)==9);do if(!((c[f>>2]|0)==13|(c[f>>2]|0)==10)){if((c[
f>>2]|0)==59){c[(c[e>>2]|0)+12>>2]=1;break}if((c[f>>2]|0)==-1|(c[f>>2]|0)==26)
c[(c[e>>2]|0)+12>>2]=3}else c[(c[e>>2]|0)+12>>2]=2;while(0);c[b>>2]=c[f>
x3e;2];h=c[b>>2]|0;i=g;return h|0}function Hq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;b=j+12|0;e=j+8|0;g
=j+4|0;f=j;c[e>>2]=a;Gq(c[e>>2]|0)|0;if((c[(c[e>>2]|0)+12>>2]|0)>=1){c[b>>
;2]=0;h=c[b>>2]|0;i=j;return h|0}c[g>>2]=(c[c[e>>2]>>2]|0)+-1;while(1){if((c[c[e>
x3e;2]>>2]|0)>>>0<(c[(c[e>>2]|0)+8>>2]|0)>>>0){k=c[e>>
;2]|0;a=c[k>>2]|0;c[k>>2]=a+1;a=d[a>>0]|0}else a=-1;c[f>>2]=a;if((c[f>>2]|0)==
32|(c[f>>2]|0)==9)break;if((c[f>>2]|0)==13|(c[f>>2]|0)==10){h=8;break}if((c[f>>2]|0)==59
){h=10;break}if((c[f>>2]|0)==-1|(c[f>>2]|0)==26){h=12;break}}if((h|0)==8)c[(c[e>>2]|0)+12>>
;2]=2;else if((h|0)==10)c[(c[e>>2]|0)+12>>2]=1;else if((h|0)==12)c[(c[e>>2]|0)+12>>2]=3;
c[b>>2]=c[g>>2];k=c[b>>2]|0;i=j;return k|0}function Iq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=
i;i=i+16|0;h=j+12|0;e=j+8|0;f=j+4|0;g=j;c[e>>2]=b;c[f>>2]=d;c[g>>2]=0;a:while(1){if((c[g>>
;2]|0)>=74){b=10;break}if((c[g>>2]|0)<74?(a[c[4608+(c[g>>2]<<2)>>2]>>
;0]|0)==(a[c[e>>2]>>0]|0):0)do{if((a[c[4608+(c[g>>2]<<2)>>2]>>0]|0)!=(
a[c[e>>2]>>0]|0)){b=5;break a}b=(Lr(c[4608+(c[g>>2]<<2)>>2]|0,c[e>>2
]|0,c[f>>2]|0)|0)==0;d=c[g>>2]|0;if(b){b=7;break a}c[g>>2]=d+1}while((c[g>>2]|0)<74
);c[g>>2]=(c[g>>2]|0)+1}if((b|0)==5){c[h>>2]=75;h=c[h>>2]|0;i=j;return h|0}else if((b|0)==
7){c[h>>2]=d;h=c[h>>2]|0;i=j;return h|0}else if((b|0)==10){c[h>>2]=75;h=c[h>>2]|0;i=j;return
h|0}return 0}function Jq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+32|0;d=g+16|0;h=g+12|0;e=g+8|0;f=g;c[h>>2]=
a;c[e>>2]=b;c[f>>2]=3;if((Kq(c[h>>2]|0,f,1)|0)==1){c[c[e>>2]>>2]=c[f+4>
x3e;2];c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}else{c[d>>2]=160;h=c[d>>2]|0;i=g;return h|0}
return 0}function Kq(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;r=i;i=i+48|0;f=r+40|0;g=r+36|0
;h=r+32|0;j=r+28|0;p=r+24|0;o=r+20|0;l=r+16|0;m=r+12|0;q=r+8|0;n=r+4|0;k=r;c[g>>2]=b;c[h>>2]=d;c[j>>
;2]=e;c[p>>2]=c[(c[g>>2]|0)+4>>2];if((c[j>>2]|0)>>>0>5){c[f>>
;2]=0;q=c[f>>2]|0;i=r;return q|0}c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[j
x3e;>2]|0)>>>0)break;c[q>>2]=(c[h>>2]|0)+(c[l>>2]<<3);e=c[p>>
;2]|0;if(!(c[c[q>>2]>>2]|0))c[o>>2]=Fq(e)|0;else c[o>>2]=Hq(e)|0;if(!(c[o>>2]|
0))break;c[m>>2]=(c[c[p>>2]>>2]|0)-(c[o>>2]|0)-1;a:do switch(c[c[q>>2]>
x3e;2]|0){case 1:case 0:{c[n>>2]=c[c[g>>2]>>2];d=cc(c[n>>2]|0,(c[m>>2]|0)+1|0,
k)|0;c[(c[q>>2]|0)+4>>2]=d;if(!(c[k>>2]|0)){Ss(c[(c[q>>2]|0)+4>>2]|0,c[o>
x3e;2]|0,c[m>>2]|0)|0;a[(c[(c[q>>2]|0)+4>>2]|0)+(c[m>>2]|0)>>0]=0}break}case 2
:{d=bq(o,(c[o>>2]|0)+(c[m>>2]|0)|0,0)|0;c[(c[q>>2]|0)+4>>2]=d;break}case 3:{d=_p(o,(c[o
x3e;>2]|0)+(c[m>>2]|0)|0)|0;c[(c[q>>2]|0)+4>>2]=d;break}case 4:{if((c[m>>2]|0)==4)e
=(Lr(c[o>>2]|0,12412,4)|0)!=0^1;else e=0;a[(c[q>>2]|0)+4>>0]=e&1;break}case 5:if(c[(c[g>
x3e;2]|0)+12>>2]|0){d=Oa[c[(c[g>>2]|0)+12>>2]&63](c[o>>2]|0,c[m>>2]|0,c[(
c[g>>2]|0)+16>>2]|0)|0;c[(c[q>>2]|0)+4>>2]=d;break a}else{c[(c[q>>2]|0)+4>
;>2]=0;break a}default:{}}while(0);c[l>>2]=(c[l>>2]|0)+1}c[f>>2]=c[l>>2];q=c[f>
;>2]|0;i=r;return q|0}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,l=0,m=0,n=0;n=i;i=i+32|0;e=n+24|0;f=
n+20|0;g=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;l=n;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;do{a=c[g>>2]|
0;c[g>>2]=a+-1;if(a>>>0<=0){m=4;break}c[j>>2]=Eq(c[f>>2]|0,1,0)|0}while((c[j
x3e;>2]|0)!=0);a:do if((m|0)==4){while(1){m=Eq(c[f>>2]|0,1,k)|0;c[j>>2]=m;if(!m)break a;c[l>>
2]=Iq(c[j>>2]|0,c[k>>2]|0)|0;if((c[l>>2]|0)==20?1:(c[l>>2]|0)==(c[h>>2]|0))break
;else m=4}c[e>>2]=0;m=c[e>>2]|0;i=n;return m|0}while(0);c[e>>2]=160;m=c[e>>2]|0;i=n;return
m|0}function Mq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;f=h+16|0;b=h+12|0;g=h+8|0;d=h+4|0;e=h;c[b>>2]=a;a:while
(1){a=Eq(c[b>>2]|0,1,e)|0;c[d>>2]=a;if(!a){b=9;break}switch(Iq(c[d>>2]|0,c[e>>2]|0)|0){case
75:continue a;case 20:case 21:{b=8;break a}case 53:{c[g>>2]=Nq(c[b>>2]|0)|0;if(c[g>>2]|0){b=5;break
a}else continue a}case 51:case 50:{c[g>>2]=Oq(c[b>>2]|0)|0;if(c[g>>2]|0){b=7;break a}else continue
a}default:{b=9;break a}}}if((b|0)==5)c[f>>2]=c[g>>2];else if((b|0)==7)c[f>>2]=c[g>>2];else
if((b|0)==8)c[f>>2]=0;else if((b|0)==9)c[f>>2]=160;i=h;return c[f>>2]|0}function Nq(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;n=i;i=i+80|0;b=n+72|0;d=n+68|0;f=n+64|0;m=n+60|0;g=n+56|0;h=n+52|0;k=n+48|0;j=n+44|0
;e=n+40|0;l=n;c[d>>2]=a;c[f>>2]=c[(c[d>>2]|0)+8>>2];c[k>>2]=-1;a:do if(!(Jq(c[
d>>2]|0,(c[f>>2]|0)+32|0)|0)){if(c[(c[f>>2]|0)+32>>2]|0?(c[j>>2]=c[c[d>
x3e;2]>>2],a=hc(c[j>>2]|0,20,0,c[(c[f>>2]|0)+32>>2]|0,0,e)|0,c[(c[f>>2]|0)+28
x3e;>2]=a,c[e>>2]|0):0){c[b>>2]=c[e>>2];m=c[b>>2]|0;i=n;return m|0}b:while(1){a=Eq(
c[d>>2]|0,1,h)|0;c[g>>2]=a;if(!a)break a;switch(Iq(c[g>>2]|0,c[h>>2]|0)|0){case 75:continue
b;case 20:case 21:case 23:break b;case 56:break;default:break a}c[k>>2]=(c[k>>2]|0)+1;if((c[k>>2]|
0)>=(c[(c[f>>2]|0)+32>>2]|0))break a;c[m>>2]=(c[(c[f>>2]|0)+28>>2]|0)+((c
[k>>2]|0)*20|0);c[l>>2]=3;c[l+8>>2]=2;c[l+16>>2]=2;c[l+24>>2]=2;c[l+32>
x3e;2]=2;if((Kq(c[d>>2]|0,l,5)|0)!=5)break a;c[c[m>>2]>>2]=c[l+4>>2];c[(c[m>>2
]|0)+4>>2]=c[l+8+4>>2];c[(c[m>>2]|0)+8>>2]=c[l+16+4>>2];c[(c[m>>2]|0
)+12>>2]=c[l+24+4>>2];c[(c[m>>2]|0)+16>>2]=c[l+32+4>>2];if((c[c[m>>2
]>>2]|0)>=0)continue;if((c[(c[m>>2]|0)+8>>2]|0)<=0)continue;c[(c[m>>2]|0)+8>
;>2]=0-(c[(c[m>>2]|0)+8>>2]|0)}c[(c[f>>2]|0)+32>>2]=(c[k>>2]|0)+1;c[b>
;>2]=0;m=c[b>>2]|0;i=n;return m|0}while(0);c[b>>2]=160;m=c[b>>2]|0;i=n;return m|0}function Oq
(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;p=i;i=i+80|0;e=p+72|0;f=p+68|0;g=p+64|0;j=p+60|0;h=p+56|0;k=p+
52|0;l=p+48|0;d=p+44|0;b=p+40|0;o=p+36|0;m=p+32|0;n=p;c[f>>2]=a;c[g>>2]=c[(c[f>>2]|0)+8>>
;2];c[l>>2]=-1;a:do if(!(Jq(c[f>>2]|0,(c[g>>2]|0)+40|0)|0)){if(c[(c[g>>2]|0)+40>>
;2]|0?(c[d>>2]=c[c[f>>2]>>2],a=hc(c[d>>2]|0,16,0,c[(c[g>>2]|0)+40>>2
]|0,0,b)|0,c[(c[g>>2]|0)+36>>2]=a,c[b>>2]|0):0){c[e>>2]=c[b>>2];o=c[e>>
;2]|0;i=p;return o|0}b:while(1){a=Eq(c[f>>2]|0,1,k)|0;c[h>>2]=a;if(!a)break a;c[o>>2]=Iq(c[h>
x3e;2]|0,c[k>>2]|0)|0;switch(c[o>>2]|0){case 75:continue b;case 20:case 21:case 22:break b;case 37:case 36:case
34:break;default:break a}c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)>=(c[(c[g>>2]|0)+40
x3e;>2]|0))break a;c[j>>2]=(c[(c[g>>2]|0)+36>>2]|0)+(c[l>>2]<<4);c[n>
;>2]=5;c[n+8>>2]=5;c[n+16>>2]=3;c[n+24>>2]=3;c[m>>2]=Kq(c[f>>2]|0,n,4)|0;
if((c[m>>2]|0)<3)break a;c[c[j>>2]>>2]=c[n+4>>2];c[(c[j>>2]|0)+4>>
;2]=c[n+8+4>>2];if((c[o>>2]|0)==37){c[(c[j>>2]|0)+8>>2]=0;c[(c[j>>2]|0)+12>
;>2]=c[n+16+4>>2];continue}c[(c[j>>2]|0)+8>>2]=c[n+16+4>>2];if((c[o>>2]|0
)==34&(c[m>>2]|0)==4)b=c[n+24+4>>2]|0;else b=0;c[(c[j>>2]|0)+12>>2]=b}c[(c[g>
x3e;2]|0)+40>>2]=(c[l>>2]|0)+1;Bs(c[(c[g>>2]|0)+36>>2]|0,c[(c[g>>2]|0)+40>
;>2]|0,16,109);c[e>>2]=0;o=c[e>>2]|0;i=p;return o|0}while(0);c[e>>2]=160;o=c[e>>2]|
0;i=p;return o|0}function Pq(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;g=i;i=i+32|0;d=g+24|0;l=g+20|0;k=g+16|0;j=g+12
|0;h=g+8|0;e=g+4|0;f=g;c[l>>2]=a;c[k>>2]=b;c[j>>2]=c[l>>2];c[h>>2]=c[k>
x3e;2];c[e>>2]=c[c[j>>2]>>2]<<16|c[(c[j>>2]|0)+4>>2];c[f>>
2]=c[c[h>>2]>>2]<<16|c[(c[h>>2]|0)+4>>2];if((c[e>>2]|0)>>
x3e;0>(c[f>>2]|0)>>>0){c[d>>2]=1;l=c[d>>2]|0;i=g;return l|0}if((c[e>>
;2]|0)>>>0<(c[f>>2]|0)>>>0){c[d>>2]=-1;l=c[d>>2]|0;i=g;return l
|0}else{c[d>>2]=0;l=c[d>>2]|0;i=g;return l|0}return 0}function Qq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d
x3e;>2]=a;Rq(c[d>>2]|0,0);i=b;return 0}function Rq(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[d>>2]=a;c[f>>2]=b;c[h>>2]=c[c[d>>2]>>2];c[g>>
2]=c[(c[h>>2]|0)+484>>2];c[(c[d>>2]|0)+24>>2]=c[(c[h>>2]|0)+132+284>>
;2];c[(c[d>>2]|0)+28>>2]=c[(c[h>>2]|0)+132+288>>2];c[(c[d>>2]|0)+20>>
;2]=c[(c[g>>2]|0)+20>>2];a=c[g>>2]|0;if(c[f>>2]|0){g=c[a+28>>2]|0;h=c[d>
x3e;2]|0;h=h+16|0;c[h>>2]=g;i=e;return}else{g=c[a+24>>2]|0;h=c[d>>2]|0;h=h+16|0;c[h>>2]=
g;i=e;return}}function Sq(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)+24>>2]=0;c
[(c[d>>2]|0)+28>>2]=0;c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>2]=0;
i=b;return}function Tq(b,d){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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;m=o+16|0;h=o+12|0
;l=o+8|0;j=o+4|0;k=o;c[f>>2]=b;c[g>>2]=d;c[m>>2]=0;if((c[g>>2]|0)>>>0>
;=256){n=c[m>>2]|0;i=o;return n|0}c[h>>2]=e[(c[(c[f>>2]|0)+16>>2]|0)+(c[g>>2]
x3c;<1)>>1];c[j>>2]=Ta[c[(c[f>>2]|0)+20>>2]&63](c[h>>2]|0)|0;c[l>
;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[(c[f>>2]|0)+24>>2]|0)>>
x3e;0){n=9;break}c[k>>2]=c[(c[(c[f>>2]|0)+28>>2]|0)+(c[l>>2]<<2)>>2];
if((c[k>>2]|0?(a[c[k>>2]>>0]|0)==(a[c[j>>2]>>0]|0):0)?(Kr(c[k>>2]|0,
c[j>>2]|0)|0)==0:0)break;c[l>>2]=(c[l>>2]|0)+1}if((n|0)==9){n=c[m>>2]|0;i=o;return n|0}c
[m>>2]=c[l>>2];n=c[m>>2]|0;i=o;return n|0}function Uq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0
;j=i;i=i+16|0;d=j+12|0;e=j+8|0;g=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[f>>2]=(c[c[e
x3e;>2]>>2]|0)+1;while(1){if((c[f>>2]|0)>>>0>=256)break;c[g>>2]=Tq(c[d>
;>2]|0,c[f>>2]|0)|0;if(c[g>>2]|0){h=6;break}c[f>>2]=(c[f>>2]|0)+1}if((h|0)==6){b=c[
f>>2]|0;h=c[e>>2]|0;c[h>>2]=b;h=c[g>>2]|0;i=j;return h|0}c[f>>2]=0;b=c[f>
x3e;2]|0;h=c[e>>2]|0;c[h>>2]=b;h=c[g>>2]|0;i=j;return h|0}function Vq(a){a=a|0;var b=0,d=0;b=i;i=i
+16|0;d=b;c[d>>2]=a;Rq(c[d>>2]|0,1);i=b;return 0}function Wq(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]=c[c[d>>2]>>2];c[e>>2]=(c[f>>2]|0)+132
+240;c[(c[d>>2]|0)+16>>2]=c[(c[e>>2]|0)+4>>2];c[(c[d>>2]|0)+20>>2]=(
c[(c[e>>2]|0)+8>>2]|0)-(c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+24>>2]=
c[(c[e>>2]|0)+12>>2];i=b;return 0}function Xq(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)+24>>2]=0;c[(c[d>>2]|0)+16>>2]=0;c[(c[d>>2]|0)+20>>2]=0;i=b
;return}function Yq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=
b;c[g>>2]=0;if((c[f>>2]|0)>>>0<(c[(c[d>>2]|0)+16>>2]|0)>>
x3e;0){g=c[g>>2]|0;i=h;return g|0}if((c[f>>2]|0)>>>0>=((c[(c[d>>2]|0)+16>
x3e;2]|0)+(c[(c[d>>2]|0)+20>>2]|0)|0)>>>0){g=c[g>>2]|0;i=h;return g|0}c[g>>
;2]=e[(c[(c[d>>2]|0)+24>>2]|0)+(c[f>>2]<<1)>>1];g=c[g>>2]|0;i=h;return
g|0}function Zq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;d=k+12|0;f=k+8|0;h=k+4|0;g=k;c[d>>2]=a;c[f
x3e;>2]=b;c[h>>2]=0;c[g>>2]=c[c[f>>2]>>2];c[g>>2]=(c[g>>2]|0)+1
;if((c[g>>2]|0)>>>0<(c[(c[d>>2]|0)+16>>2]|0)>>>0)c[g>>
;2]=c[(c[d>>2]|0)+16>>2];while(1){if((c[g>>2]|0)>>>0>=((c[(c[d>>2]|0
)+16>>2]|0)+(c[(c[d>>2]|0)+20>>2]|0)|0)>>>0)break;c[h>>2]=e[(c[(c[d>
x3e;2]|0)+24>>2]|0)+(c[g>>2]<<1)>>1];if(c[h>>2]|0){j=7;break}c[g>>2]=(
c[g>>2]|0)+1}if((j|0)==7){b=c[g>>2]|0;j=c[f>>2]|0;c[j>>2]=b;j=c[h>>2]|0;i=k;return
j|0}c[g>>2]=0;b=c[g>>2]|0;j=c[f>>2]|0;c[j>>2]=b;j=c[h>>2]|0;i=k;return j|0}function
_q(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;d=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[d>>2]=c[c[e>
x3e;2]>>2];c[f>>2]=c[(c[d>>2]|0)+100>>2];c[g>>2]=c[(c[d>>2]|0)+484
x3e;>2];a=Sa[c[(c[g>>2]|0)+4>>2]&3](c[f>>2]|0,c[e>>2]|0,c[(c[d>>2]|0
)+132+284>>2]|0,110,0,c[d>>2]|0)|0;i=b;return a|0}function $q(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;
e=f+4|0;d=f;c[e>>2]=a;c[d>>2]=b;i=f;return c[(c[(c[e>>2]|0)+132+288>>2]|0)+(c[d>>
;2]<<2)>>2]|0}function ar(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]=c[c[d>>2]>>2];c[e>>2]=c[(c[f>>2]|0)+100>>2];Fb(c[e>>
;2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>
;2]=0;i=b;return}function br(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;h=d+4|0;g=d;c[f>>2
]=a;c[e>>2]=b;c[h>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[h>>2]|0)+484>
x3e;2];a=Ya[c[(c[g>>2]|0)+8>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function
cr(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;h=d+4|0;g=d;c[f>>2]=a;c[e>>2]=b;c
[h>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[h>>2]|0)+484>>2];a=Ya[c[(c[g>
x3e;2]|0)+12>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function dr(a,d,e){a=a|0;d=d|0;e=
e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+4|0;h=f;g=f+8|0;c[j>>2]=a;c[h>>2]=d;b[g>>1]=e;er(j,(c[j
x3e;>2]|0)+(c[h>>2]|0)|0,c[j>>2]|0,c[h>>2]|0,g)|0;i=f;return}function er(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;v=i;i=i+48|0;l=v+36|0;m=v+32|0;n=v+28|0;o=v+24|0;p=v+20|0;r
=v+16|0;s=v+12|0;t=v+8|0;u=v+4|0;q=v;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[p>
x3e;2]=k;c[t>>2]=e[c[p>>2]>>1];c[r>>2]=c[c[l>>2]>>2];if((c[o>
x3e;2]|0)>>>0>((c[m>>2]|0)-(c[r>>2]|0)|0)>>>0)c[o>>2]=(c[m>
;>2]|0)-(c[r>>2]|0);c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[o>>
;2]|0)>>>0)break;c[u>>2]=d[(c[r>>2]|0)+(c[s>>2]|0)>>0];c[q>>2]=
c[u>>2]^(c[t>>2]|0)>>>8;c[t>>2]=(((c[u>>2]|0)+(c[t>>2]|0)|0)*52845
|0)+22719&65535;a[(c[n>>2]|0)+(c[s>>2]|0)>>0]=c[q>>2];c[s>>2]=(c[s>
x3e;2]|0)+1}c[c[l>>2]>>2]=(c[r>>2]|0)+(c[o>>2]|0);b[c[p>>2]>>1]=c[t
x3e;>2];i=v;return c[s>>2]|0}function fr(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
,u=0;u=i;i=i+64|0;r=u+44|0;e=u+40|0;h=u+36|0;o=u+32|0;m=u+28|0;f=u+49|0;k=u+24|0;j=u+20|0;p=u+16|0;n=u+12|0;g=u+48|0;l=u+8|0;t=u
+4|0;s=u;c[e>>2]=b;if(((a[c[e>>2]>>0]|0)==117?(a[(c[e>>2]|0)+1>>0]|0)==110:0)?(
a[(c[e>>2]|0)+2>>0]|0)==105:0){c[o>>2]=0;c[m>>2]=(c[e>>2]|0)+3;c[h>>
2]=4;while(1){if((c[h>>2]|0)<=0)break;a[f>>0]=a[c[m>>2]>>0]|0;c[k>>2]=(d[
f>>0]|0)-48;do if((c[k>>2]|0)>>>0>=10){c[k>>2]=(d[f>>0]|0)-65;if((c[
k>>2]|0)>>>0>=6){c[k>>2]=16;break}else{c[k>>2]=(c[k>>2]|0)+10;break}}
while(0);if((c[k>>2]|0)>>>0>=16)break;c[o>>2]=(c[o>>2]<<4)+(c[k>
;>2]|0);c[h>>2]=(c[h>>2]|0)+-1;c[m>>2]=(c[m>>2]|0)+1}if(!(c[h>>2]|0)){if(!(
a[c[m>>2]>>0]|0)){c[r>>2]=c[o>>2];t=c[r>>2]|0;i=u;return t|0}if((a[c[m>
x3e;2]>>0]|0)==46){c[r>>2]=c[o>>2]|-2147483648;t=c[r>>2]|0;i=u;return t|0}}}if((a[c[e>
;>2]>>0]|0)==117){c[p>>2]=0;c[n>>2]=(c[e>>2]|0)+1;c[j>>2]=6;while(1){if((
c[j>>2]|0)<=0)break;a[g>>0]=a[c[n>>2]>>0]|0;c[l>>2]=(d[g>>0]|0)-
48;do if((c[l>>2]|0)>>>0>=10){c[l>>2]=(d[g>>0]|0)-65;if((c[l>>2]|0)
x3e;>>0>=6){c[l>>2]=16;break}else{c[l>>2]=(c[l>>2]|0)+10;break}}while(0);if((c[l>
;>2]|0)>>>0>=16)break;c[p>>2]=(c[p>>2]<<4)+(c[l>>2]|0);c[j>
;>2]=(c[j>>2]|0)+-1;c[n>>2]=(c[n>>2]|0)+1}if((c[j>>2]|0)<=2){if(!(a[c[n>
x3e;2]>>0]|0)){c[r>>2]=c[p>>2];t=c[r>>2]|0;i=u;return t|0}if((a[c[n>>2]>
x3e;0]|0)==46){c[r>>2]=c[p>>2]|-2147483648;t=c[r>>2]|0;i=u;return t|0}}}c[t>>2]=c[e>
;>2];c[s>>2]=0;while(1){if(!(a[c[t>>2]>>0]|0))break;if((a[c[t>>2]>>0]|0)==
46?(c[t>>2]|0)>>>0>(c[e>>2]|0)>>>0:0){q=35;break}c[t>>2]=(c[t
x3e;>2]|0)+1}if((q|0)==35)c[s>>2]=c[t>>2];e=c[e>>2]|0;if(c[s>>2]|0){c[r>>
2]=gr(e,c[s>>2]|0)|0|-2147483648;t=c[r>>2]|0;i=u;return t|0}else{c[r>>2]=gr(e,c[t>>2]|0)|
0;t=c[r>>2]|0;i=u;return t|0}return 0}function gr(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;t=i;i=i+64|0;f=t+48|0;g=t+44|0;h=t+40|0;j=t+36|0;l=t+32|0;o=t+28|0;m=t+24|0;q=t+20|0;n=t+16|0;r=t+12|0;k=t+8|0;p=t+4|0;
s=t;c[g>>2]=b;c[h>>2]=e;c[j>>2]=0;c[q>>2]=12431;a:do if(c[g>>2]|0?(c[g>
x3e;2]|0)>>>0<(c[h>>2]|0)>>>0:0){b=c[g>>2]|0;c[g>>2]=b+1;c[j>
;>2]=a[b>>0];c[l>>2]=d[(c[q>>2]|0)+1>>0];c[q>>2]=(c[q>>2]|0)+2;
c[o>>2]=0;c[m>>2]=c[l>>2];while(1){if((c[o>>2]|0)>=(c[m>>2]|0))break a;c[
n>>2]=(c[o>>2]|0)+(c[m>>2]|0)>>1;c[r>>2]=(c[q>>2]|0)+(c[n>>
;2]<<1);c[r>>2]=12431+(d[c[r>>2]>>0]<<8|d[(c[r>>2]|0)+1>>0
]);c[k>>2]=d[c[r>>2]>>0]&127;if((c[k>>2]|0)==(c[j>>2]|0))break;e=c[n>
;>2]|0;if((c[k>>2]|0)<(c[j>>2]|0)){c[o>>2]=e+1;continue}else{c[m>>2]=e;continue
}}c[q>>2]=c[r>>2];while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>
;>0)break;r=c[g>>2]|0;c[g>>2]=r+1;c[j>>2]=a[r>>0];r=(d[c[q>>2]>>
;0]&128|0)!=0;c[q>>2]=(c[q>>2]|0)+1;if(r)if((c[j>>2]|0)!=(d[c[q>>2]>>0]
x26;127|0))break a;else continue;c[l>>2]=d[c[q>>2]>>0]&127;if(d[c[q>>2]>>
0]&128|0)c[q>>2]=(c[q>>2]|0)+2;c[q>>2]=(c[q>>2]|0)+1;while(1){if((c[l>>2]|
0)<=0)break a;c[p>>2]=d[c[q>>2]>>0]<<8|d[(c[q>>2]|0)+1>>0];c[s
x3e;>2]=12431+(c[p>>2]|0);if((c[j>>2]|0)==(d[c[s>>2]>>0]&127|0))break;c[l>
;>2]=(c[l>>2]|0)+-1;c[q>>2]=(c[q>>2]|0)+2}c[q>>2]=c[s>>2]}if((d[c[q>
x3e;2]>>0]&128|0)==0?d[(c[q>>2]|0)+1>>0]&128|0:0){c[f>>2]=d[(c[q>>2]|
0)+2>>0]<<8|d[(c[q>>2]|0)+3>>0];s=c[f>>2]|0;i=t;return s|0}}while(0);c[f>
x3e;2]=0;s=c[f>>2]|0;i=t;return s|0}function hr(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;w=i;i=i+144|0;h=w+128|0;j=w+124|0;k=w+120|0;l=w+116|0;m=w+112|0;n=w+108|0;p=w+104|0;q
=w+64|0;r=w+24|0;u=w+16|0;o=w+12|0;t=w+8|0;v=w+4|0;s=w;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>
;2]=e;c[m>>2]=f;c[n>>2]=g;f=q;e=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(e|0));c[(c[j>
x3e;2]|0)+16>>2]=0;c[(c[j>>2]|0)+20>>2]=0;b=hc(c[h>>2]|0,8,0,(c[k>>2]|0)+10|0,
0,p)|0;c[(c[j>>2]|0)+20>>2]=b;if(c[p>>2]|0){v=c[p>>2]|0;i=w;return v|0}c[t>>2]=
c[(c[j>>2]|0)+20>>2];c[u>>2]=0;while(1){if((c[u>>2]|0)>>>0>=(c[k>
;>2]|0)>>>0)break;c[s>>2]=Ya[c[l>>2]&127](c[n>>2]|0,c[u>>2]|0)|
0;if(c[s>>2]|0){ir(c[s>>2]|0,c[u>>2]|0,r,q);c[v>>2]=fr(c[s>>2]|0)|0;if(c[v>
;>2]&2147483647|0){jr(c[v>>2]|0,q);c[c[t>>2]>>2]=c[v>>2];c[(c[t>>2]|
0)+4>>2]=c[u>>2];c[t>>2]=(c[t>>2]|0)+8}if(c[m>>2]|0)Ra[c[m>>2]&
7](c[n>>2]|0,c[s>>2]|0)}c[u>>2]=(c[u>>2]|0)+1}c[u>>2]=0;while(1){if((c[u>
x3e;2]|0)>>>0>=10)break;if((c[q+(c[u>>2]<<2)>>2]|0)==1){c[c[t>>2]>
;>2]=c[5252+(c[u>>2]<<2)>>2];c[(c[t>>2]|0)+4>>2]=c[r+(c[u>>2]
x3c;<2)>>2];c[t>>2]=(c[t>>2]|0)+8}c[u>>2]=(c[u>>2]|0)+1}c[o>>2]=((
c[t>>2]|0)-(c[(c[j>>2]|0)+20>>2]|0)|0)/8|0;if(!(c[o>>2]|0)){Fb(c[h>>2]|0,c[(c[
j>>2]|0)+20>>2]|0);c[(c[j>>2]|0)+20>>2]=0;if(!(c[p>>2]|0))c[p>>2]=163
}else{if((c[o>>2]|0)>>>0<(((c[k>>2]|0)>>>0)/2|0)>>>0){v=hc
(c[h>>2]|0,8,c[k>>2]|0,c[o>>2]|0,c[(c[j>>2]|0)+20>>2]|0,p)|0;c[(c[j>>
;2]|0)+20>>2]=v;c[p>>2]=0}Bs(c[(c[j>>2]|0)+20>>2]|0,c[o>>2]|0,8,111)}c[(c[j>
;>2]|0)+16>>2]=c[o>>2];v=c[p>>2]|0;i=w;return v|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,l=0,m=0;m=i;i=i+32|0;f=m+16|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m;c[f>>2]=a;c[g>>2]=b;c[h
>>2]=d;c[j>>2]=e;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=10){l=7;break
}e=(Kr(67222+(c[5212+(c[k>>2]<<2)>>2]|0)|0,c[f>>2]|0)|0)==0;d=c[k>>2]|0;if(e)break
;c[k>>2]=d+1}if((l|0)==7){i=m;return}if(c[(c[j>>2]|0)+(d<<2)>>2]|0){i=m;return}c[(c[j>
;>2]|0)+(c[k>>2]<<2)>>2]=1;c[(c[h>>2]|0)+(c[k>>2]<<2)>>
;2]=c[g>>2];i=m;return}function jr(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;d=h+8|0;e=h+4|0;f=h;c[d>
x3e;2]=a;c[e>>2]=b;c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=10){g=6;break}b=c[f
x3e;>2]|0;if((c[d>>2]|0)==(c[5252+(c[f>>2]<<2)>>2]|0))break;c[f>>2]=b+1}if
((g|0)==6){i=h;return}c[(c[e>>2]|0)+(b<<2)>>2]=2;i=h;return}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;j=i;i=i+32|0;d=j+24|0;l=j+20|0;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[l>>2]=a;c[k>>
;2]=b;c[e>>2]=c[l>>2];c[f>>2]=c[k>>2];c[g>>2]=c[c[e>>2]>>2
]&2147483647;c[h>>2]=c[c[f>>2]>>2]&2147483647;do if((c[g>>2]|0)==(c[h>>
;2]|0)){if((c[c[e>>2]>>2]|0)>>>0>(c[c[f>>2]>>2]|0)>>>
0){c[d>>2]=1;break}if((c[c[e>>2]>>2]|0)>>>0<(c[c[f>>2]>>2]|
0)>>>0){c[d>>2]=-1;break}else{c[d>>2]=0;break}}else{if((c[g>>2]|0)>>>
;0>(c[h>>2]|0)>>>0){c[d>>2]=1;break}if((c[g>>2]|0)>>>0<(c[
h>>2]|0)>>>0){c[d>>2]=-1;break}else{c[d>>2]=0;break}}while(0);i=j;return c[d>
x3e;2]|0}function lr(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;m=i;i=i+32|0;d=m+28|0;n=m+24|0;e=m+20|0;j=m+16
|0;g=m+12|0;h=m+8|0;k=m+4|0;f=m;c[n>>2]=a;c[e>>2]=b;c[k>>2]=0;c[j>>2]=c[(c[n>>
2]|0)+20>>2];c[g>>2]=(c[j>>2]|0)+(c[(c[n>>2]|0)+16>>2]<<3)+-8;while(
1){if((c[j>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[h>>2]=(c[j>
x3e;2]|0)+((((c[g>>2]|0)-(c[j>>2]|0)|0)/8|0)>>1<<3);a=c[h>>2]|0;if((c[c[h>
;>2]>>2]|0)==(c[e>>2]|0)){l=4;break}c[f>>2]=c[a>>2]&2147483647;if((c[f>
x3e;2]|0)==(c[e>>2]|0))c[k>>2]=c[h>>2];if((c[j>>2]|0)==(c[g>>2]|0))break;a=c[h
>>2]|0;if((c[f>>2]|0)>>>0<(c[e>>2]|0)>>>0){c[j>>2]=a+
8;continue}else{c[g>>2]=a+-8;continue}}if((l|0)==4)c[k>>2]=a;if(c[k>>2]|0){c[d>>2]=c[(c[
k>>2]|0)+4>>2];n=c[d>>2]|0;i=m;return n|0}else{c[d>>2]=0;n=c[d>>2]|0;i=m;return
n|0}return 0}function mr(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;o=i;i=i+48|0;d=o+32|0;e=o+28|0;m=o+24
|0;g=o+20|0;l=o+16|0;j=o+12|0;k=o+8|0;h=o+4|0;f=o;c[d>>2]=a;c[e>>2]=b;c[m>>2]=0;c[g>>2]=(
c[c[e>>2]>>2]|0)+1;c[l>>2]=0;c[j>>2]=c[(c[d>>2]|0)+16>>2];while(1){if
((c[l>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;c[k>>2]=(c[l>>
;2]|0)+(((c[j>>2]|0)-(c[l>>2]|0)|0)>>>1);c[h>>2]=(c[(c[d>>2]|0)+20>
x3e;2]|0)+(c[k>>2]<<3);a=c[h>>2]|0;if((c[c[h>>2]>>2]|0)==(c[g>>2]|0)){
n=4;break}c[f>>2]=c[a>>2]&2147483647;if((c[f>>2]|0)==(c[g>>2]|0))c[m>>2]=
c[(c[h>>2]|0)+4>>2];a=c[k>>2]|0;if((c[f>>2]|0)>>>0<(c[g>>2
]|0)>>>0){c[l>>2]=a+1;continue}else{c[j>>2]=a;continue}}if((n|0)==4){c[m>>2]=c[a+4
x3e;>2];l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}if(c[m>
x3e;2]|0){l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}c[g>>2]=
0;if((c[l>>2]|0)>>>0>=(c[(c[d>>2]|0)+16>>2]|0)>>>0){l=c[g>
x3e;2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}c[h>>2]=(c[(c[d>>2]|
0)+20>>2]|0)+(c[l>>2]<<3);c[m>>2]=c[(c[h>>2]|0)+4>>2];c[g>>
;2]=c[c[h>>2]>>2]&2147483647;l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>
;>2]|0;i=o;return n|0}function nr(a){a=a|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=a;c[d>>2]=(c[d>>
;2]|0)>>>0>=258?0:a;i=e;return 67307+(b[8388+(c[d>>2]<<1)>>1]|0)|0}function or
(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[e>>2]=a;if((c[e>>2]|0)>>>0>=391){c[
d>>2]=0;a=c[d>>2]|0;i=f;return a|0}else{c[d>>2]=67307+(b[8904+(c[e>>2]<<1)>
;>1]|0);a=c[d>>2]|0;i=f;return a|0}return 0}function pr(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[f>>2]=c[f>>2];b=qc(5292,c[e>>2]|0)|0;i=d;return b|0}function
qr(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;e=h+12|0;f=h+8|0;d=h+4|0;g=h;c[f>>2]=a;c[d>>2]=b;if
(!(c[f>>2]|0)){c[e>>2]=40;g=c[e>>2]|0;i=h;return g|0}c[(c[f>>2]|0)+12>>2]=0;c[(
c[f>>2]|0)+16>>2]=c[d>>2];c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+8>>
;2]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>>2]|0)+24>>2]=0;c[g>>2]=fs(c[d>>
2]|0,71020)|0;if(!(c[g>>2]|0)){c[e>>2]=1;g=c[e>>2]|0;i=h;return g|0}us(c[g>>2]|0,0,2)|0;
d=ps(c[g>>2]|0)|0;c[(c[f>>2]|0)+4>>2]=d;d=c[g>>2]|0;if(c[(c[f>>2]|0)+4>
x3e;2]|0){us(d,0,0)|0;c[(c[f>>2]|0)+12>>2]=c[g>>2];c[(c[f>>2]|0)+20>>2]=25;c[(
c[f>>2]|0)+24>>2]=44;c[e>>2]=0;g=c[e>>2]|0;i=h;return g|0}else{ks(d)|0;c[e>>2]=
81;g=c[e>>2]|0;i=h;return g|0}return 0}function rr(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;m=
i;i=i+32|0;f=m+20|0;g=m+16|0;h=m+12|0;j=m+8|0;k=m+4|0;l=m;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>
x3e;2]=e;if((c[k>>2]|0)==0?(c[h>>2]|0)>>>0>(c[(c[g>>2]|0)+4>>2]|0)
x3e;>>0:0){c[f>>2]=1;a=c[f>>2]|0;i=m;return a|0}c[l>>2]=c[(c[g>>2]|0)+12>
x3e;2];if((c[(c[g>>2]|0)+8>>2]|0)!=(c[h>>2]|0))us(c[l>>2]|0,c[h>>2]|0,0)|0;c[f
>>2]=ts(c[j>>2]|0,1,c[k>>2]|0,c[l>>2]|0)|0;a=c[f>>2]|0;i=m;return a|0}function
sr(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;ks(c[(c[d>>2]|0)+12>>2]|0)|0;c[(c[d>>
;2]|0)+12>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;i=b;return}function tr(){
var a=0,b=0;b=i;i=i+16|0;a=b;c[a>>2]=Fs(16)|0;if(!(c[a>>2]|0)){a=c[a>>2]|0;i=b;return a|0}c[c[a>
;>2]>>2]=0;c[(c[a>>2]|0)+4>>2]=112;c[(c[a>>2]|0)+12>>2]=26;c[(c[a>
x3e;2]|0)+8>>2]=6;a=c[a>>2]|0;i=b;return a|0}function ur(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[f>>2]=c[f>>2];b=Fs(c[e>>2]|0)|0;i=d;return b|0}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;f=i;i=i+16|0;k=f+12|0;j=f+8|0;g=f+4|0;h=f;c[k>>2]=a;c[j
x3e;>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=c[k>>2];c[j>>2]=c[j>>2];d
=Hs(c[h>>2]|0,c[g>>2]|0)|0;i=f;return d|0}function wr(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[f>>2]=c[f>>2];Gs(c[e>>2]|0);i=d;return}function xr(a
){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Gs(c[d>>2]|0);i=b;return}function yr(a){a=a|0;var b=0,d=0;b=i
;i=i+16|0;d=b;c[d>>2]=c[a+60>>2];a=zr(Aa(6,d|0)|0)|0;i=b;return a|0}function zr(a){a=a|0;if(a>>>
;0>4294963200){c[(Ar()|0)>>2]=0-a;a=-1}return a|0}function Ar(){var a=0;if(!(c[18388]|0))a=73596;else a=c[(xa()|0
)+64>>2]|0;return a|0}function Br(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+80|0;f=g;c[b+36>>2]=47;if((c[
b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21505,c[f+8>>2]=g+12,Fa(54,f
|0)|0):0)a[b+75>>0]=-1;f=Cr(b,d,e)|0;i=g;return f|0}function Cr(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;q=i;i=i+48|0;n=q+16|0;m=q;e=q+32|0;o=a+28|0;f=c[o>>2]|0;c[e>>2]=f;p=a+20|0;f=(c[p>
;>2]|0)-f|0;c[e+4>>2]=f;c[e+8>>2]=b;c[e+12>>2]=d;k=a+60|0;l=a+44|0;b=2;f=f+d|0;while(1){if(!(
c[18388]|0)){c[n>>2]=c[k>>2];c[n+4>>2]=e;c[n+8>>2]=b;h=zr(Ka(146,n|0)|0)|0}else{Da(45,a|
0);c[m>>2]=c[k>>2];c[m+4>>2]=e;c[m+8>>2]=b;h=zr(Ka(146,m|0)|0)|0;ra(0)}if((f|0)==(h|0)){
f=6;break}if((h|0)<0){f=8;break}f=f-h|0;g=c[e+4>>2]|0;if(h>>>0<=g>>>0)if((b|0)==
2){c[o>>2]=(c[o>>2]|0)+h;j=g;b=2}else j=g;else{j=c[l>>2]|0;c[o>>2]=j;c[p>>2]=j
;j=c[e+12>>2]|0;h=h-g|0;e=e+8|0;b=b+-1|0}c[e>>2]=(c[e>>2]|0)+h;c[e+4>>2]=j-h}if((f|0)==6
){n=c[l>>2]|0;c[a+16>>2]=n+(c[a+48>>2]|0);a=n;c[o>>2]=a;c[p>>2]=a}else if((f|0
)==8){c[a+16>>2]=0;c[o>>2]=0;c[p>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else
d=d-(c[e+4>>2]|0)|0}i=q;return d|0}function Dr(a){a=a|0;if(!(c[a+68>>2]|0))Er(a);return}function Er(a){a=a|
0;return}function Fr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c
[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((zr(Ha(140,g|0)|0)|0)<0){c[e>
;>2]=-1;a=-1}else a=c[e>>2]|0;i=f;return a|0}function Gr(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;m=i;i=i+48|0;h=m+16|0;g=m;f=m+32|0;c[f>>2]=d;j=f+4|0;l=b+48|0;n=c[l>>2]|0;c[j>>2]=e-((n|0)!=0
&1);k=b+44|0;c[f+8>>2]=c[k>>2];c[f+12>>2]=n;if(!(c[18388]|0)){c[h>>2]=c[b+60>
x3e;2];c[h+4>>2]=f;c[h+8>>2]=2;f=zr(Ja(145,h|0)|0)|0}else{Da(46,b|0);c[g>>2]=c[b+60>>2];
c[g+4>>2]=f;c[g+8>>2]=2;f=zr(Ja(145,g|0)|0)|0;ra(0)}if((f|0)>=1){j=c[j>>2]|0;if(f>>
x3e;0>j>>>0){g=c[k>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-j);if(!(c[l>>
;2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else{c[b>>2]=c[b>>2
]|f&48^16;c[b+8>>2]=0;c[b+4>>2]=0}i=m;return f|0}function Hr(a){a=a|0;if(!(c[a+68>>2]|0))Er(a
);return}function Ir(a){a=a|0;var b=0;b=(Jr(a)|0)==0;return (b?a:a|32)|0}function Jr(a){a=a|0;return (a+-65|0)>>>
0<26|0}function Kr(b,c){b=b|0;c=c|0;var d=0,e=0;e=a[b>>0]|0;d=a[c>>0]|0;if(e<<24>>24
==0?1:e<<24>>24!=d<<24>>24)c=e;else{do{b=b+1|0;c=c+1|0;e=a[b>>0]|0;d=a[c>
x3e;0]|0}while(!(e<<24>>24==0?1:e<<24>>24!=d<<24>>24));c=e}return (c
&255)-(d&255)|0}function Lr(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;if(!e)c=0;else{f=a[b>>0]|0;a:do if(!(f<
;<24>>24))f=0;else while(1){e=e+-1|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>
;>24&((e|0)!=0&g<<24>>24!=0)))break a;b=b+1|0;c=c+1|0;f=a[b>>0]|0;if(!(f<<
;24>>24)){f=0;break}}while(0);c=(f&255)-(d[c>>0]|0)|0}return c|0}function Mr(b){b=b|0;var d=0,e=0;d=b+74
|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+44|0;if((c[d>>2]|0)>>>0>(c[e>
x3e;2]|0)>>>0)Oa[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[b+28>>2]=0;c[d>
x3e;2]=0;d=c[b>>2]|0;if(d&20)if(!(d&4))d=-1;else{c[b>>2]=d|32;d=-1}else{d=c[e>>2]|0;c[b+
8>>2]=d;c[b+4>>2]=d;d=0}return d|0}function Nr(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;s=i;i=i+224|0;o=s+120|0;r=s+80|0;q=s;p=s+136|0;f=r;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(
g|0));c[o>>2]=c[e>>2];if((Or(0,d,o,q,r)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)m=_r(b)|0;else
m=0;e=c[b>>2]|0;n=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;e=b+48|0;if(!(c[e>
x3e;2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=p;j=b+28|0;c[j>>2]=p;k=b+20|0;c[k>>2]=p;c[e>
;>2]=80;l=b+16|0;c[l>>2]=p+80;f=Or(b,d,o,q,r)|0;if(h){Oa[c[b+36>>2]&63](b,0,0)|0;f=(c[k>>
;2]|0)==0?-1:f;c[g>>2]=h;c[e>>2]=0;c[l>>2]=0;c[j>>2]=0;c[k>>2]=0}}else f=Or(b,
d,o,q,r)|0;e=c[b>>2]|0;c[b>>2]=e|n;if(m|0)Er(b);e=(e&32|0)==0?f:-1}i=s;return e|0}function Or(e,f,g,j,l
){e=e|0;f=f|0;g=g|0;j=j|0;l=l|0;var m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,
J=0,K=0,L=0,M=0,N=0,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;ia=i;i=i+624
|0;da=ia+24|0;fa=ia+16|0;ea=ia+588|0;aa=ia+576|0;ca=ia;W=ia+536|0;ha=ia+8|0;ga=ia+528|0;M=(e|0)!=0;N=W+40|0;V=N;W=W+39|0;X=ha+4|
0;Y=ea;Z=0-Y|0;$=aa+12|0;aa=aa+11|0;ba=$;O=ba-Y|0;P=-2-Y|0;Q=ba+2|0;R=da+288|0;S=ea+9|0;T=S;U=ea+8|0;m=0;o=0;n=0;y=f;a:while(1){
do if((m|0)>-1)if((o|0)>(2147483647-m|0)){c[(Ar()|0)>>2]=75;m=-1;break}else{m=o+m|0;break}while(0);f=a[y>
;>0]|0;if(!(f<<24>>24)){L=244;break}else o=y;b:while(1){switch(f<<24>>24){case 37:{
f=o;L=9;break b}case 0:{f=o;break b}default:{}}K=o+1|0;f=a[K>>0]|0;o=K}c:do if((L|0)==9)while(1){L=0;if((a[f+1>
x3e;0]|0)!=37)break c;o=o+1|0;f=f+2|0;if((a[f>>0]|0)==37)L=9;else break}while(0);w=o-y|0;if(M?(c[e>>2]&
32|0)==0:0)Pr(y,w,e)|0;if((o|0)!=(y|0)){o=w;y=f;continue}r=f+1|0;o=a[r>>0]|0;p=(o<<24>>24)+-48|0;if
(p>>>0<10){K=(a[f+2>>0]|0)==36;r=K?f+3|0:r;o=a[r>>0]|0;u=K?p:-1;n=K?1:n}else u=-1;f=o<
;<24>>24;d:do if((f&-32|0)==32){p=0;while(1){if(!(1<<f+-32&75913)){s=p;break d}p=1<<
;(o<<24>>24)+-32|p;r=r+1|0;o=a[r>>0]|0;f=o<<24>>24;if((f&-32|0)!=32){s=p;
break}}}else s=0;while(0);do if(o<<24>>24==42){o=r+1|0;f=(a[o>>0]|0)+-48|0;if(f>>>0
<10?(a[r+2>>0]|0)==36:0){c[l+(f<<2)>>2]=10;n=1;r=r+3|0;f=c[j+((a[o>>0]|0)+-48<
x3c;3)>>2]|0}else{if(n|0){m=-1;break a}if(!M){v=s;n=0;r=o;K=0;break}n=(c[g>>2]|0)+(4-1)&~(4-1);f=c[n>
;>2]|0;c[g>>2]=n+4;n=0;r=o}if((f|0)<0){v=s|8192;K=0-f|0}else{v=s;K=f}}else{p=(o<<24>>24)+-
48|0;if(p>>>0<10){f=r;o=0;do{o=(o*10|0)+p|0;f=f+1|0;p=(a[f>>0]|0)+-48|0}while(p>>>0
<10);if((o|0)<0){m=-1;break a}else{v=s;r=f;K=o}}else{v=s;K=0}}while(0);e:do if((a[r>>0]|0)==46){f=r+1|0;o=a[
f>>0]|0;if(o<<24>>24!=42){p=(o<<24>>24)+-48|0;if(p>>>0<10)
o=0;else{s=0;break}while(1){o=(o*10|0)+p|0;f=f+1|0;p=(a[f>>0]|0)+-48|0;if(p>>>0>=10){s=o;break e}}}
f=r+2|0;o=(a[f>>0]|0)+-48|0;if(o>>>0<10?(a[r+3>>0]|0)==36:0){c[l+(o<<2)>
x3e;2]=10;s=c[j+((a[f>>0]|0)+-48<<3)>>2]|0;f=r+4|0;break}if(n|0){m=-1;break a}if(M){J=(c[g>
x3e;2]|0)+(4-1)&~(4-1);s=c[J>>2]|0;c[g>>2]=J+4}else s=0}else{s=-1;f=r}while(0);t=0;while(1){o=(a[f>
;>0]|0)+-65|0;if(o>>>0>57){m=-1;break a}p=f+1|0;o=a[71023+(t*58|0)+o>>0]|0;r=o&255;if((r
+-1|0)>>>0<8){f=p;t=r}else{J=p;break}}if(!(o<<24>>24)){m=-1;break}p=(u|0)>-1;do if(
o<<24>>24==19)if(p){m=-1;break a}else L=52;else{if(p){c[l+(u<<2)>>2]=r;H=j+(u<<
;3)|0;I=c[H+4>>2]|0;L=ca;c[L>>2]=c[H>>2];c[L+4>>2]=I;L=52;break}if(!M){m=0;break a}Rr(ca
,r,g)}while(0);if((L|0)==52?(L=0,!M):0){o=w;y=J;continue}u=a[f>>0]|0;u=(t|0)!=0&(u&15|0)==3?u&-33:u;p=v
&-65537;I=(v&8192|0)==0?v:p;f:do switch(u|0){case 110:switch(t|0){case 0:{c[c[ca>>2]>>2]=m;o=w;y=J
;continue a}case 1:{c[c[ca>>2]>>2]=m;o=w;y=J;continue a}case 2:{o=c[ca>>2]|0;c[o>>2]=m;c
[o+4>>2]=((m|0)<0)<<31>>31;o=w;y=J;continue a}case 3:{b[c[ca>>2]>>1]=m;o=
w;y=J;continue a}case 4:{a[c[ca>>2]>>0]=m;o=w;y=J;continue a}case 6:{c[c[ca>>2]>>2]=m;o=
w;y=J;continue a}case 7:{o=c[ca>>2]|0;c[o>>2]=m;c[o+4>>2]=((m|0)<0)<<31>>
31;o=w;y=J;continue a}default:{o=w;y=J;continue a}}case 112:{t=I|8;s=s>>>0>8?s:8;u=120;L=64;break}case 88:case
120:{t=I;L=64;break}case 111:{p=ca;o=c[p>>2]|0;p=c[p+4>>2]|0;if((o|0)==0&(p|0)==0)f=N;else{f=N;do{f=f+-
1|0;a[f>>0]=o&7|48;o=Os(o|0,p|0,3)|0;p=C}while(!((o|0)==0&(p|0)==0))}if(!(I&8)){o=I;t=0;r=71503;L=77}else
{t=V-f|0;o=I;s=(s|0)>(t|0)?s:t+1|0;t=0;r=71503;L=77}break}case 105:case 100:{o=ca;f=c[o>>2]|0;o=c[o+4>>
2]|0;if((o|0)<0){f=Ls(0,0,f|0,o|0)|0;o=C;p=ca;c[p>>2]=f;c[p+4>>2]=o;p=1;r=71503;L=76;break f}if(!(I&
;2048)){r=I&1;p=r;r=(r|0)==0?71503:71505;L=76}else{p=1;r=71504;L=76}break}case 117:{o=ca;f=c[o>>2]|0;o=c[o+4>
;>2]|0;p=0;r=71503;L=76;break}case 99:{a[W>>0]=c[ca>>2];f=W;u=1;w=0;v=71503;o=N;break}case 109:{o=Tr(c[(
Ar()|0)>>2]|0)|0;L=82;break}case 115:{o=c[ca>>2]|0;o=o|0?o:73405;L=82;break}case 67:{c[ha>>2]=c[ca
>>2];c[X>>2]=0;c[ca>>2]=ha;f=ha;s=-1;L=86;break}case 83:{f=c[ca>>2]|0;if(!s){Vr(e,32,K,0
,I);f=0;L=97}else L=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{q=+h[ca>>3];c[fa>
;>2]=0;h[k>>3]=q;if((c[k+4>>2]|0)>=0)if(!(I&2048)){H=I&1;G=H;H=(H|0)==0?73413:73418}else
{G=1;H=73415}else{q=-q;G=1;H=73412}h[k>>3]=q;F=c[k+4>>2]&2146435072;do if(F>>>0<2146435072
|(F|0)==2146435072&0<0){x=+Yr(q,fa)*2.0;o=x!=0.0;if(o)c[fa>>2]=(c[fa>>2]|0)+-1;D=u|32;if((D|0)==97
){v=u&32;y=(v|0)==0?H:H+9|0;w=G|2;f=12-s|0;do if(!(s>>>0>11|(f|0)==0)){q=8.0;do{f=f+-1|0;q=q*16.0}while
((f|0)!=0);if((a[y>>0]|0)==45){q=-(q+(-x-q));break}else{q=x+q-q;break}}else q=x;while(0);o=c[fa>>2]|0;f=(o|0
)<0?0-o|0:o;f=Sr(f,((f|0)<0)<<31>>31,$)|0;if((f|0)==($|0)){a[aa>>0]=48;f=aa}a[f+-1>
x3e;0]=(o>>31&2)+43;t=f+-2|0;a[t>>0]=u+15;r=(s|0)<1;p=(I&8|0)==0;o=ea;while(1){H=~~q;f=o+1|0;
a[o>>0]=d[71487+H>>0]|v;q=(q-+(H|0))*16.0;do if((f-Y|0)==1){if(p&(r&q==0.0))break;a[f>>0
]=46;f=o+2|0}while(0);if(!(q!=0.0))break;else o=f}p=t;s=(s|0)!=0&(P+f|0)<(s|0)?Q+s-p|0:O-p+f|0;r=s+w|0;Vr(e,32,K,r,I);
if(!(c[e>>2]&32))Pr(y,w,e)|0;Vr(e,48,K,r,I^65536);o=f-Y|0;if(!(c[e>>2]&32))Pr(ea,o,e)|0;f=ba-p|0;Vr
(e,48,s-(o+f)|0,0,0);if(!(c[e>>2]&32))Pr(t,f,e)|0;Vr(e,32,K,r,I^8192);f=(r|0)<(K|0)?K:r;break}f=(s|0)<0
?6:s;if(o){o=(c[fa>>2]|0)+-28|0;c[fa>>2]=o;q=x*268435456.0}else{q=x;o=c[fa>>2]|0}F=(o|0)<0?da
:R;E=F;o=F;do{B=~~q>>>0;c[o>>2]=B;o=o+4|0;q=(q-+(B>>>0))*1.0e9}while(q!=0.0);p=o;o=c[fa
x3e;>2]|0;if((o|0)>0){s=F;while(1){t=(o|0)>29?29:o;r=p+-4|0;do if(r>>>0<s>>>0)
r=s;else{o=0;do{B=Ps(c[r>>2]|0,0,t|0)|0;B=Ms(B|0,C|0,o|0,0)|0;o=C;A=$s(B|0,o|0,1e9,0)|0;c[r>>2]=A;o=_s(B|0,o
|0,1e9,0)|0;r=r+-4|0}while(r>>>0>=s>>>0);if(!o){r=s;break}r=s+-4|0;c[r>>2]=o}while(
0);while(1){if(p>>>0<=r>>>0)break;o=p+-4|0;if(!(c[o>>2]|0))p=o;else break}o=(c[fa
x3e;>2]|0)-t|0;c[fa>>2]=o;if((o|0)>0)s=r;else break}}else r=F;if((o|0)<0){y=((f+25|0)/9|0)+1|0;z=(D|0)==
102;v=r;while(1){w=0-o|0;w=(w|0)>9?9:w;do if(v>>>0<p>>>0){o=(1<<w)+-1|0;s=1e9
x3e;>>w;r=0;t=v;do{B=c[t>>2]|0;c[t>>2]=(B>>>w)+r;r=_(B&o,s)|0;t=t+4|0}while(t
x3e;>>0<p>>>0);o=(c[v>>2]|0)==0?v+4|0:v;if(!r){r=o;break}c[p>>2]=r;r=o;p=p+4|0
}else r=(c[v>>2]|0)==0?v+4|0:v;while(0);o=z?F:r;p=(p-o>>2|0)>(y|0)?o+(y<<2)|0:p;o=(c[fa>
x3e;2]|0)+w|0;c[fa>>2]=o;if((o|0)>=0){z=r;break}else v=r}}else z=r;do if(z>>>0<p>>
x3e;0){o=(E-z>>2)*9|0;s=c[z>>2]|0;if(s>>>0<10)break;else r=10;do{r=r*10|0;o=o+1|0}while(
s>>>0>=r>>>0)}else o=0;while(0);A=(D|0)==103;B=(f|0)!=0;r=f-((D|0)!=102?o:0)+((B&A)<
;<31>>31)|0;if((r|0)<(((p-E>>2)*9|0)+-9|0)){t=r+9216|0;r=F+4+(((t|0)/9|0)+-1024<<2)|0;t=((
t|0)%9|0)+1|0;if((t|0)<9){s=10;do{s=s*10|0;t=t+1|0}while((t|0)!=9)}else s=10;w=c[r>>2]|0;y=(w>>>0)%(
s>>>0)|0;t=(r+4|0)==(p|0);do if(t&(y|0)==0)s=z;else{x=(((w>>>0)/(s>>>0)|0)&
;1|0)==0?9007199254740992.0:9007199254740994.0;v=(s|0)/2|0;if(y>>>0<v>>>0)q=.5;else q=t&(
y|0)==(v|0)?1.0:1.5;do if(G){if((a[H>>0]|0)!=45)break;x=-x;q=-q}while(0);t=w-y|0;c[r>>2]=t;if(!(x+q!=x)){s=z
;break}D=t+s|0;c[r>>2]=D;if(D>>>0>999999999){o=z;while(1){s=r+-4|0;c[r>>2]=0;if(s>
x3e;>0<o>>>0){o=o+-4|0;c[o>>2]=0}D=(c[s>>2]|0)+1|0;c[s>>2]=D;if(D>
x3e;>0>999999999)r=s;else{v=o;r=s;break}}}else v=z;o=(E-v>>2)*9|0;t=c[v>>2]|0;if(t>>>
;0<10){s=v;break}else s=10;do{s=s*10|0;o=o+1|0}while(t>>>0>=s>>>0);s=v}while(0);D=r+4|0;
z=s;p=p>>>0>D>>>0?D:p}w=0-o|0;while(1){if(p>>>0<=z>>>0){y=
0;D=p;break}r=p+-4|0;if(!(c[r>>2]|0))p=r;else{y=1;D=p;break}}do if(A){f=(B&1^1)+f|0;if((f|0)>(o|0)&(o|0
)>-5){u=u+-1|0;f=f+-1-o|0}else{u=u+-2|0;f=f+-1|0}p=I&8;if(p|0)break;do if(y){p=c[D+-4>>2]|0;if(!p){r=9;break
}if(!((p>>>0)%10|0)){s=10;r=0}else{r=0;break}do{s=s*10|0;r=r+1|0}while(!((p>>>0)%(s>>>
;0)|0|0))}else r=9;while(0);p=((D-E>>2)*9|0)+-9|0;if((u|32|0)==102){p=p-r|0;p=(p|0)<0?0:p;f=(f|0)<(p|0)?f:p;
p=0;break}else{p=p+o-r|0;p=(p|0)<0?0:p;f=(f|0)<(p|0)?f:p;p=0;break}}else p=I&8;while(0);v=f|p;s=(v|0)!=0&1;t
=(u|32|0)==102;if(t){o=(o|0)>0?o:0;u=0}else{r=(o|0)<0?w:o;r=Sr(r,((r|0)<0)<<31>>31,$)|0;if((ba
-r|0)<2)do{r=r+-1|0;a[r>>0]=48}while((ba-r|0)<2);a[r+-1>>0]=(o>>31&2)+43;E=r+-2|0;a
[E>>0]=u;o=ba-E|0;u=E}w=G+1+f+s+o|0;Vr(e,32,K,w,I);if(!(c[e>>2]&32))Pr(H,G,e)|0;Vr(e,48,K,w,I^65536);do
if(t){r=z>>>0>F>>>0?F:z;o=r;do{p=Sr(c[o>>2]|0,0,S)|0;do if((o|0)==(r|0)){if((p|0)!=(
S|0))break;a[U>>0]=48;p=U}else{if(p>>>0<=ea>>>0)break;Ns(ea|0,48,p-Y|0)|0;do p=p+-1
|0;while(p>>>0>ea>>>0)}while(0);if(!(c[e>>2]&32))Pr(p,T-p|0,e)|0;o=o+4|0}while
(o>>>0<=F>>>0);do if(v|0){if(c[e>>2]&32|0)break;Pr(73447,1,e)|0}while(0);if((f
|0)>0&o>>>0<D>>>0){p=o;while(1){o=Sr(c[p>>2]|0,0,S)|0;if(o>>>
;0>ea>>>0){Ns(ea|0,48,o-Y|0)|0;do o=o+-1|0;while(o>>>0>ea>>>0)}if(!(c[e
x3e;>2]&32))Pr(o,(f|0)>9?9:f,e)|0;p=p+4|0;o=f+-9|0;if(!((f|0)>9&p>>>0<D>>
x3e;0)){f=o;break}else f=o}}Vr(e,48,f+9|0,9,0)}else{t=y?D:z+4|0;if((f|0)>-1){s=(p|0)==0;r=z;do{o=Sr(c[r>>2]|0,0,S
)|0;if((o|0)==(S|0)){a[U>>0]=48;o=U}do if((r|0)==(z|0)){p=o+1|0;if(!(c[e>>2]&32))Pr(o,1,e)|0;if(s&(
f|0)<1){o=p;break}if(c[e>>2]&32|0){o=p;break}Pr(73447,1,e)|0;o=p}else{if(o>>>0<=ea>
x3e;>0)break;Ns(ea|0,48,o+Z|0)|0;do o=o+-1|0;while(o>>>0>ea>>>0)}while(0);p=T-o|0;if(!(c
[e>>2]&32))Pr(o,(f|0)>(p|0)?p:f,e)|0;f=f-p|0;r=r+4|0}while(r>>>0<t>>>0&
;(f|0)>-1)}Vr(e,48,f+18|0,18,0);if(c[e>>2]&32|0)break;Pr(u,ba-u|0,e)|0}while(0);Vr(e,32,K,w,I^8192);f=(w|0)
x3c;(K|0)?K:w}else{t=(u&32|0)!=0;s=q!=q|0.0!=0.0;o=s?0:G;r=o+3|0;Vr(e,32,K,r,p);f=c[e>>2]|0;if(!(f&32)){Pr(H
,o,e)|0;f=c[e>>2]|0}if(!(f&32))Pr(s?(t?73439:73443):t?73431:73435,3,e)|0;Vr(e,32,K,r,I^8192);f=(r|0)<(K|0)?K
:r}while(0);o=f;y=J;continue a}default:{f=y;p=I;u=s;w=0;v=71503;o=N}}while(0);g:do if((L|0)==64){p=ca;o=c[p>>2]|0;p=c[
p+4>>2]|0;r=u&32;if(!((o|0)==0&(p|0)==0)){f=N;do{f=f+-1|0;a[f>>0]=d[71487+(o&15)>>0
]|r;o=Os(o|0,p|0,4)|0;p=C}while(!((o|0)==0&(p|0)==0));L=ca;if((t&8|0)==0|(c[L>>2]|0)==0&(c[L+4>>
;2]|0)==0){o=t;t=0;r=71503;L=77}else{o=t;t=2;r=71503+(u>>4)|0;L=77}}else{f=N;o=t;t=0;r=71503;L=77}}else if((L|0)==76){
f=Sr(f,o,N)|0;o=I;t=p;L=77}else if((L|0)==82){L=0;I=Ur(o,0,s)|0;H=(I|0)==0;f=o;u=H?s:I-o|0;w=0;v=71503;o=H?o+s|0:I}else if((L|0)==
86){L=0;p=0;o=0;t=f;while(1){r=c[t>>2]|0;if(!r)break;o=Wr(ga,r)|0;if((o|0)<0|o>>>0>(s-p|0)>
;>>0)break;p=o+p|0;if(s>>>0>p>>>0)t=t+4|0;else break}if((o|0)<0){m=-1;break a}
Vr(e,32,K,p,I);if(!p){f=0;L=97}else{r=0;while(1){o=c[f>>2]|0;if(!o){f=p;L=97;break g}o=Wr(ga,o)|0;r=o+r|0;if((r|0)>
;(p|0)){f=p;L=97;break g}if(!(c[e>>2]&32))Pr(ga,o,e)|0;if(r>>>0>=p>>>0){f=p;L=
97;break}else f=f+4|0}}}while(0);if((L|0)==97){L=0;Vr(e,32,K,f,I^8192);o=(K|0)>(f|0)?K:f;y=J;continue}if((L|0)==77){L=0;p=(
s|0)>-1?o&-65537:o;o=ca;o=(c[o>>2]|0)!=0|(c[o+4>>2]|0)!=0;if((s|0)!=0|o){u=(o&1^1)+(V-f)|0;u=(
s|0)>(u|0)?s:u;w=t;v=r;o=N}else{f=N;u=0;w=t;v=r;o=N}}t=o-f|0;r=(u|0)<(t|0)?t:u;s=w+r|0;o=(K|0)<(s|0)?s:K;Vr(e,32,
o,s,p);if(!(c[e>>2]&32))Pr(v,w,e)|0;Vr(e,48,o,s,p^65536);Vr(e,48,r,t,0);if(!(c[e>>2]&32))Pr(f,t,e)|
0;Vr(e,32,o,s,p^8192);y=J}h:do if((L|0)==244)if(!e)if(n){m=1;while(1){n=c[l+(m<<2)>>2]|0;if(!n)break;Rr(j+(m
<<3)|0,n,g);m=m+1|0;if((m|0)>=10){m=1;break h}}if((m|0)<10)while(1){if(c[l+(m<<2)>>2]|0){
m=-1;break h}m=m+1|0;if((m|0)>=10){m=1;break}}else m=1}else m=0;while(0);i=ia;return m|0}function Pr(b,d,e){b=b|0;d=d|0;e=e
|0;var f=0,g=0,h=0,i=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(Qr(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((
h|0)==5){i=e+20|0;f=c[i>>2]|0;h=f;if((g-f|0)>>>0<d>>>0){f=Oa[c[e+36>>2]
x26;63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){f=d;while(1){if(!f){g=h;f=0;break b}g=f+-1|0;if((a[b+g>>
;0]|0)==10)break;else f=g}if((Oa[c[e+36>>2]&63](e,b,f)|0)>>>0<f>>>0)break a;d=
d-f|0;b=b+f|0;g=c[i>>2]|0}else{g=h;f=0}while(0);Ss(g|0,b|0,d|0)|0;c[i>>2]=(c[i>>2]|0)+d;f=f+d|0}while
(0);return f|0}function Qr(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if
(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;d=c[b+44>>2]|0;c[b+28>>2]=d;c[b+20>>2]=d
;c[b+16>>2]=d+(c[b+48>>2]|0);d=0}else{c[b>>2]=d|32;d=-1}return d|0}function Rr(a,b,d){a=a|0;b=b|0;
d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b
=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e
x3e;>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break
a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4
x3e;>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d
x3e;>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f
x3e;>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((
e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>
;>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1
);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>
;2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;
c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&
;~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1
);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function Sr(b,
c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295)while(1){e=$s(b
|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e|48;e=_s(b|0,c|0,10,0)|0;if(c>>>0>9|(c|0)==9&b>>
x3e;0>4294967295){b=e;c=C}else{b=e;break}}if(b)while(1){d=d+-1|0;a[d>>0]=(b>>>0)%10|0|48;if(b>
;>>0<10)break;else b=(b>>>0)/10|0}return d|0}function Tr(b){b=b|0;var c=0,e=0;c=0;while(1){if((d[71513
+c>>0]|0)==(b|0)){e=2;break}c=c+1|0;if((c|0)==87){c=87;b=71601;e=5;break}}if((e|0)==2)if(!c)b=71601;else{b=71601;e=5}if
((e|0)==5)while(1){e=b;while(1){b=e+1|0;if(!(a[e>>0]|0))break;else e=b}c=c+-1|0;if(!c)break;else e=5}return b|0}function
Ur(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if
((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5
;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24
>>24){f=_(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144
)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e
){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(
0);return (e|0?b:0)|0}function Vr(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;j=i;i=i+256|0;h=j;do if((d|0)>(e
|0)&(f&73728|0)==0){f=d-e|0;Ns(h|0,b|0,(f>>>0>256?256:f)|0)|0;b=c[a>>2]|0;g=(b&32|0
)==0;if(f>>>0>255){e=d-e|0;do{if(g){Pr(h,256,a)|0;b=c[a>>2]|0}f=f+-256|0;g=(b&32|0)==0}while(
f>>>0>255);if(g)f=e&255;else break}else if(!g)break;Pr(h,f,a)|0}while(0);i=j;return}function Wr(a,b){a=
a|0;b=b|0;if(!a)a=0;else a=Xr(a,b,0)|0;return a|0}function Xr(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128
){a[b>>0]=d;b=1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0
]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224
;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>
;0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>
x3e;0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(Ar()|0)>>2]=84;b=-1;break}}
else b=1;while(0);return b|0}function Yr(a,b){a=+a;b=b|0;return +(+Zr(a,b))}function Zr(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[k>
;>3]=a;d=c[k>>2]|0;e=c[k+4>>2]|0;f=Os(d|0,e|0,52)|0;f=f&2047;switch(f|0){case 0:{if(a!=0.0){a=+Zr(
a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>
x3e;2]=f+-1022;c[k>>2]=d;c[k+4>>2]=e&-2146435073|1071644672;a=+h[k>>3]}}return +a}function _r
(a){a=a|0;return 0}function $r(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)d=0;else{f=d;e=b;while(1){b=a[e>>0]|0;d
=a[c>>0]|0;if(b<<24>>24!=d<<24>>24)break;f=f+-1|0;if(!f){d=0;break a}else{e=e+
1|0;c=c+1|0}}d=(b&255)-(d&255)|0}while(0);return d|0}function as(a,b,c){a=a|0;b=b|0;c=c|0;bs(a,b,c)|0;return a|0}function
bs(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;do if(!((g^b)&3)){f=(e|0)!=0;a:do if(f&(g&3|0)!=0)while(1){g=a[d
>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0;if(!(f&
;(d&3|0)!=0)){h=5;break}}else h=5;while(0);if((h|0)==5)if(!f){e=0;break}if(a[d>>0]|0){b:do if(e>>>
0>3)do{f=c[d>>2]|0;if((f&-2139062144^-2139062144)&f+-16843009|0)break b;c[b>>2]=f;e=e+-4|0;d=
d+4|0;b=b+4|0}while(e>>>0>3);while(0);h=11}}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a
[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|
0}while(0);Ns(b|0,0,e|0)|0;return b|0}function cs(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=b;b=f;while(1){if(!(
a[d>>0]|0))break a;d=d+1|0;b=d;if(!(b&3)){b=d;e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if
(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;
while((a[b>>0]|0)!=0)}return b-f|0}function ds(a,b){a=a|0;b=b|0;es(a,b)|0;return a|0}function es(b,d){b=b|0;d=d|0;var
e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24
))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){
f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break
;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+
1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function fs(b,d){b=b|0;
d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+32|0;f=g+16|0;e=g;if(Ur(73449,a[d>>0]|0,4)|0){h=gs(d)|0|32768;c[e>>2]=b;c[
e+4>>2]=h;c[e+8>>2]=438;e=zr(Ca(5,e|0)|0)|0;if((e|0)>=0){b=js(e,d)|0;if(!b){c[f>>2]=e;Aa(6,f|
0)|0;b=0}}else b=0}else{c[(Ar()|0)>>2]=22;b=0}i=g;return b|0}function gs(b){b=b|0;var c=0,d=0,e=0;d=(hs(b,43)|0)==0;c=
a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(hs(b,120)|0)==0;d=e?d:d|128;b=(hs(b,101)|0)==0;b=b?d:d|524288
;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==
97?b|1024:b)|0}function hs(b,c){b=b|0;c=c|0;b=is(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?
b:0)|0}function is(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(cs(b)|0)|0;else{if(b&3){e=d&255;do{g=
a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b
=b+1|0}while((b&3|0)!=0)}f=_(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009
))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144
^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g
x3c;<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function js(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;o=i;i=i+112|0;n=o+40|0;l=o+24|0;k=o+16|0;g=o;m=o+52|0;f=a[d>>0]|0;if(Ur(73449
,f<<24>>24,4)|0){e=Fs(1144)|0;if(!e)e=0;else{h=e;j=h+112|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(
j|0));if(!(hs(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(hs(d,101)|0){c[g>>2]=b;c[g+4>
x3e;2]=2;c[g+8>>2]=1;sa(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[k>>2]=b;c[k
+4>>2]=3;f=sa(221,k|0)|0;if(!(f&1024)){c[l>>2]=b;c[l+4>>2]=4;c[l+8>>2]=f|1024;sa(221
,l|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+120
;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21505,c[n+8
>>2]=m,(Fa(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=48;c[e+36>>2]=47;c[e+40>>2]=
32;c[e+12>>2]=33;if(!(c[18389]|0))c[e+76>>2]=-1;ua(73580);f=c[18394]|0;c[e+56>>2]=f;if(f|0)c[f+52
x3e;>2]=e;c[18394]=e;Ga(73580)}}else{c[(Ar()|0)>>2]=22;e=0}i=o;return e|0}function ks(a){a=a|0;var b=0,d=0,e=0;e=(
c[a>>2]&1|0)!=0;if(!e){ua(73580);d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];
b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[18394]|0)==(a|0))c[18394]=b;Ga(73580)}b=ls(a)|0;b=Ta[c[a+12>>
;2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)Gs(d);if(!e)Gs(a);return b|0}function ls(a){a=a|0;var b=0,d=0;do if(a){if((c
[a+76>>2]|0)<=-1){b=ms(a)|0;break}d=(_r(a)|0)==0;b=ms(a)|0;if(!d)Er(a)}else{if(!(c[1356]|0))b=0;else b=ls(c[1356]|
0)|0;ua(73580);a=c[18394]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=_r(a)|0;else d=0;if((c[a+20>>2]|0)>>
;>0>(c[a+28>>2]|0)>>>0)b=ms(a)|0|b;if(d|0)Er(a);a=c[a+56>>2]|0}while((a|0)!=0);Ga(73580
)}while(0);return b|0}function ms(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;g=a+28|0;if((c[b>>2]|0)>>>
;0>(c[g>>2]|0)>>>0?(Oa[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)b=-1;else
{h=a+4|0;d=c[h>>2]|0;e=a+8|0;f=c[e>>2]|0;if(d>>>0<f>>>0)Oa[c[a+40>
x3e;2]&63](a,d-f|0,1)|0;c[a+16>>2]=0;c[g>>2]=0;c[b>>2]=0;c[e>>2]=0;c[h>>2
]=0;b=0}return b|0}function ns(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>
x3e;0>(c[a+28>>2]|0)>>>0?2:1;b=Oa[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a
+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function os(a){a=a|0;
var b=0;if((c[a+76>>2]|0)>-1){b=(_r(a)|0)==0;a=ns(a)|0}else a=ns(a)|0;return a|0}function ps(a){a=a|0;return os(a
)|0}function qs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(_r(a)|0)==0;b=rs(a,b,d)|0;if(!e)Er(a)}else
b=rs(a,b,d)|0;return b|0}function rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>
x3e;2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Oa[c[a+
36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>
;2]=0;if((Oa[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>
;2]=c[a>>2]&-17;b=0}}return b|0}function ss(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;b=Nr
(c[1327]|0,a,e)|0;i=d;return b|0}function ts(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;j=_(e,d)|0;if((c[f+76
x3e;>2]|0)>-1)k=_r(f)|0;else k=0;g=f+74|0;i=a[g>>0]|0;a[g>>0]=i+255|i;g=f+4|0;i=c[g>>2]|
0;h=(c[f+8>>2]|0)-i|0;if((h|0)>0){h=h>>>0<j>>>0?h:j;Ss(b|0,i|0,h|0)|0;c[g>
;>2]=i+h;b=b+h|0;g=j-h|0}else g=j;a:do if(!g)l=13;else{i=f+32|0;h=g;while(1){if(Mr(f)|0){e=h;break}g=Oa[c[i>>2]
x26;63](f,b,h)|0;if((g+1|0)>>>0<2){e=h;break}if((h|0)==(g|0)){l=13;break a}else{b=b+g|0;h=h-g|0}}if(k|0)Er(f
);e=((j-e|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(k)Er(f);return e|0}function us(a,b,c){a=a|0;b
=b|0;c=c|0;return qs(a,b,c)|0}function vs(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;w=i;i=i+1056|0;u=w+1024|0;v=w;k=a[e>>0]|0;do if(k<<24>>24){t=hs(b,k<<24>>24
)|0;if(t){j=a[e+1>>0]|0;if(j<<24>>24){f=t+1|0;m=a[f>>0]|0;if(m<<24>>
24){h=a[e+2>>0]|0;if(!(h<<24>>24)){j=j&255|(k&255)<<8;b=m;g=d[t>>0]
x3c;<8|m&255;while(1){g=g&65535;if((g|0)==(j|0))break;f=f+1|0;h=a[f>>0]|0;if(!(h<<24>>
;24)){b=0;break}else{b=h;g=h&255|g<<8}}b=b<<24>>24?f+-1|0:0;break}f=t+2|0;b=a[f>>0]|
0;if(b<<24>>24){g=a[e+3>>0]|0;if(!(g<<24>>24)){h=(j&255)<<16|(k
&255)<<24|(h&255)<<8;g=(b&255)<<8|(m&255)<<16|d[t>>0]<
;<24;if((g|0)!=(h|0))do{f=f+1|0;b=a[f>>0]|0;g=(b&255|g)<<8}while(!(b<<24>>24==
0|(g|0)==(h|0)));b=b<<24>>24?f+-2|0:0;break}f=t+3|0;l=a[f>>0]|0;if(l<<24>>24){
if(!(a[e+4>>0]|0)){h=(j&255)<<16|(k&255)<<24|(h&255)<<8|g&255;b=(b
x26;255)<<8|(m&255)<<16|l&255|d[t>>0]<<24;if((b|0)==(h|0))b=l;else{g=b;do{f=f+
1|0;b=a[f>>0]|0;g=b&255|g<<8}while(!(b<<24>>24==0|(g|0)==(h|0)))}b=b<<24
x3e;>24?f+-3|0:0;break};c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[u+12>>2]=0;c[u+16>
x3e;2]=0;c[u+20>>2]=0;c[u+24>>2]=0;c[u+28>>2]=0;b=k;g=0;while(1){if(!(a[t+g>>0]|0)){b=0;
break}f=u+(((b&255)>>>5&255)<<2)|0;c[f>>2]=c[f>>2]|1<<(b&31
);f=g+1|0;c[v+((b&255)<<2)>>2]=f;b=a[e+f>>0]|0;if(!(b<<24>>24)){n=23;break
}else g=f}a:do if((n|0)==23){b:do if(f>>>0>1){h=1;n=-1;b=0;c:while(1){m=1;while(1){d:while(1){j=1;while(1){k
=a[e+(j+n)>>0]|0;l=a[e+h>>0]|0;if(k<<24>>24!=l<<24>>24){m=h;j=k;h=l;
break d}if((j|0)==(m|0))break;j=j+1|0;h=j+b|0;if(h>>>0>=f>>>0){b=n;p=m;break c}}b=b+m|0;h=b+1
|0;if(h>>>0>=f>>>0){b=n;p=m;break c}}k=m-n|0;if((j&255)<=(h&255))break;b=m+1|0
;if(b>>>0<f>>>0){h=b;b=m;m=k}else{b=n;p=k;break c}}h=b+2|0;if(h>>>0>=f>
;>>0){p=1;break}else{n=b;b=b+1|0}}j=1;k=-1;h=0;while(1){l=h;h=1;while(1){o=l;e:while(1){l=1;while(1){n=a[e+(l+k)>
x3e;0]|0;m=a[e+j>>0]|0;if(n<<24>>24!=m<<24>>24){l=j;j=o;break e}if((l|0)==(h|0
))break;l=l+1|0;j=l+o|0;if(j>>>0>=f>>>0){j=p;break b}}o=o+h|0;j=o+1|0;if(j>>>0
>=f>>>0){j=p;break b}}h=l-k|0;if((n&255)>=(m&255)){h=j;break}j=l+1|0;if(j>>>0
x3e;=f>>>0){j=p;break b}}j=h+2|0;if(j>>>0>=f>>>0){k=h;j=p;h=1;break}else{k=h;h
=h+1|0}}}else{b=-1;k=-1;j=1;h=1}while(0);r=(k+1|0)>>>0>(b+1|0)>>>0;h=r?h:j;r=r?k:b;q=r+1|0;if
(!($r(e,e+h|0,q)|0))s=f-h|0;else{h=f-r+-1|0;s=0;h=(r>>>0>h>>>0?r:h)+1|0}n=f|63;o=(s|0)!=0;p=f
-h|0;b=t;m=0;l=t;f:while(1){j=b;do if((l-j|0)>>>0<f>>>0){k=Ur(l,0,n)|0;if(k)if((k-j|0)>
x3e;>0<f>>>0){b=0;break a}else break;else{k=l+n|0;break}}else k=l;while(0);j=a[b+g>>0]|0;if(!(
1<<(j&31)&c[u+(((j&255)>>>5&255)<<2)>>2])){b=b+f|0;m=0;l=k;continue
}t=c[v+((j&255)<<2)>>2]|0;j=f-t|0;if((f|0)!=(t|0)){b=b+(o&(m|0)!=0&j>>>0<
h>>>0?p:j)|0;m=0;l=k;continue}j=q>>>0>m>>>0?q:m;l=a[e+j>>0]|0;g:do if
(!(l<<24>>24))j=q;else{while(1){if(l<<24>>24!=(a[b+j>>0]|0))break;j=j+1|0;l=a[
e+j>>0]|0;if(!(l<<24>>24)){j=q;break g}}b=b+(j-r)|0;m=0;l=k;continue f}while(0);do{if(j>>
;>0<=m>>>0)break a;j=j+-1|0}while((a[e+j>>0]|0)==(a[b+j>>0]|0));b=b+h|0;m=s;l=k}}while
(0)}else b=0}else b=0}else b=0}else b=t}else b=0}while(0);i=w;return b|0}function ws(a){a=a|0;var b=0,c=0;c=(cs(a)|0)+1|0;b=Fs(c
)|0;if(!b)b=0;else Ss(b|0,a|0,c|0)|0;return b|0}function xs(a,b){a=a|0;b=b|0;return ys(a,b,(cs(a)|0)+1|0)|0}function ys(b,c,d){b
=b|0;c=c|0;d=d|0;var e=0;e=c&255;do{if(!d){c=0;break}d=d+-1|0;c=b+d|0}while((a[c>>0]|0)!=e<<24>>
;24);return c|0}function zs(a,b){a=a|0;b=b|0;ds(a+(cs(a)|0)|0,b)|0;return a|0}function As(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;e=a[b
>>0]|0;a:do if(!(e<<24>>24))b=0;else{g=e;f=e&255;while(1){e=a[c>>0]|0;if(!(e<
x3c;24>>24)){b=g;break a}if(g<<24>>24!=e<<24>>24?(g=Ir(f)|0,(g|0)!=(Ir(d[c>
;>0]|0)|0)):0)break;b=b+1|0;c=c+1|0;e=a[b>>0]|0;if(!(e<<24>>24)){b=0;break a}else{g=e;f=e&
;255}}b=a[b>>0]|0}while(0);g=Ir(b&255)|0;return g-(Ir(d[c>>0]|0)|0)|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,r=0;r=i;i=i+208|0;o=r+8|0;p=r;f=_(d,b)|0;n=p;c[n>>2]=1;c[n
+4>>2]=0;if(f|0){n=0-d|0;c[o+4>>2]=d;c[o>>2]=d;g=d;b=d;h=2;while(1){b=b+d+g|0;c[o+(h<<2)
x3e;>2]=b;if(b>>>0<f>>>0){m=g;g=b;h=h+1|0;b=m}else break}h=a+f+n|0;m=p+4|0;if(h>>
;>0>a>>>0){j=h;g=1;f=1;while(1){do if((g&3|0)==3){Cs(a,d,e,f,o);l=c[m>>2]|0;b=l<<
;30|(c[p>>2]|0)>>>2;c[p>>2]=b;c[m>>2]=l>>>2;f=f+2|0}else{b=f+-1|0;if
((c[o+(b<<2)>>2]|0)>>>0<(j-a|0)>>>0)Cs(a,d,e,f,o);else Es(a,d,e,p,f,0,o);
if((f|0)==1){b=c[p>>2]|0;c[m>>2]=b>>>31|c[m>>2]<<1;b=b<<1;c[p
x3e;>2]=b;f=0;break}if(b>>>0>31){g=c[p>>2]|0;c[m>>2]=g;c[p>>2]=0;b=f+-33|
0;f=g;g=0}else{f=c[m>>2]|0;g=c[p>>2]|0}c[m>>2]=g>>>(32-b|0)|f<<b;b=g<
;<b;c[p>>2]=b;f=1}while(0);g=b|1;c[p>>2]=g;b=a+d|0;if(b>>>0>=h>>>0){
a=f;break}else a=b}}else{b=a;a=1}Es(b,d,e,p,a,0,o);l=p+4|0;g=c[p>>2]|0;h=c[l>>2]|0;f=(h|0)==0;if(!((a|0)==1
x26;(g|0)==1&f)){k=h;while(1){if((a|0)<2){h=g+-1|0;do if(h){if(!(h&1)){f=0;do{f=f+1|0;h=h>>>1}while
(!(h&1|0))}else{if(f)f=32;else{if(!(k&1)){h=k;f=0}else{j=0;h=k;f=0;break}do{f=f+1|0;h=h>>>1}while(!(h
x26;1|0))}f=f+32|0}if(f>>>0>31)q=28;else{j=f;h=k}}else{f=32;q=28}while(0);if((q|0)==28){q=0;c[p>>2
]=k;c[m>>2]=0;j=f+-32|0;g=k;h=0}c[p>>2]=h<<32-j|g>>>j;c[m>>2]=h>>
;>j;b=b+n|0;h=f+a|0}else{j=g>>>30;h=a+-2|0;c[p>>2]=(g<<1&2147483646|j<<31
)^3;c[m>>2]=(j|k<<2)>>>1;Es(b+(0-(c[o+(h<<2)>>2]|0))+n|0,d,e,p,a+-1|0,1,o
);k=c[p>>2]|0;c[m>>2]=k>>>31|c[m>>2]<<1;c[p>>2]=k<<1|
1;b=b+n|0;Es(b,d,e,p,h,1,o)}g=c[p>>2]|0;k=c[l>>2]|0;f=(k|0)==0;if((h|0)==1&(g|0)==1&f)break;else a
=h}}}i=r;return}function Cs(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;p=i;i=i+240|0;o=p;c
[o>>2]=a;a:do if((e|0)>1){n=0-b|0;g=e;h=a;k=a;l=1;while(1){a=h+n|0;m=g+-2|0;j=a+(0-(c[f+(m<<2)>>
;2]|0))|0;if((Ya[d&127](k,j)|0)>-1?(Ya[d&127](k,a)|0)>-1:0){e=l;break a}e=l+1|0;h=o+(l<<2)|0;if((Ya
[d&127](j,a)|0)>-1){c[h>>2]=j;a=j;g=g+-1|0}else{c[h>>2]=a;g=m}if((g|0)<=1)break a;h=a;k=c[o
x3e;>2]|0;l=e}}else e=1;while(0);Ds(b,o,e);i=p;return}function Ds(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+
256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0>256?256:
a;Ss(e|0,c[b>>2]|0,f|0)|0;e=0;do{j=b+(e<<2)|0;e=e+1|0;Ss(c[j>>2]|0,c[b+(e<<2)>>
;2]|0,f|0)|0;c[j>>2]=(c[j>>2]|0)+f}while((e|0)!=(d|0));if((a|0)==(f|0))break a;a=a-f|0;e=c[g>>2]|0
}while(0);i=h;return}function Es(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;r=i;i=i+240|0;p=r;l=c[e>>2]|0;k=c[e+4>>2]|0;c[p>>2]=a;o=0-b|0;a:do if((k|0)!=0|(l|0)!=1?(j=a+(0-(
c[h+(f<<2)>>2]|0))|0,(Ya[d&127](j,a)|0)>=1):0){g=(g|0)==0;m=1;n=l;while(1){if(g&(f|0)>1){
e=a+o|0;g=c[h+(f+-2<<2)>>2]|0;if((Ya[d&127](e,j)|0)>-1){g=f;e=m;q=19;break a}if((Ya[d&127](e+(
0-g)|0,j)|0)>-1){g=f;e=m;q=19;break a}}e=m+1|0;c[p+(m<<2)>>2]=j;g=n+-1|0;do if(g){if(!(g&1)){a=0;do
{a=a+1|0;g=g>>>1}while(!(g&1|0))}else{if(!k)g=32;else{if(!(k&1)){a=k;g=0}else{l=0;g=n;a=0;break}do{g=g+
1|0;a=a>>>1}while(!(a&1|0))}a=g+32|0}if(a>>>0>31)q=15;else{l=a;g=n}}else{a=32;q=15}while
(0);if((q|0)==15){q=0;l=a+-32|0;g=k;k=0}n=k<<32-l|g>>>l;k=k>>>l;g=a+f|0;if(!((k|0)!=0|(n
|0)!=1)){a=j;q=19;break a}a=j+(0-(c[h+(g<<2)>>2]|0))|0;if((Ya[d&127](a,c[p>>2]|0)|0)<1){
a=j;f=g;g=0;q=18;break}else{l=j;f=g;g=1;j=a;m=e;a=l}}}else{e=1;q=18}while(0);if((q|0)==18?(g|0)==0:0){g=f;q=19}if((q|0)==19){Ds(
b,p,e);Cs(a,b,d,g,h)}i=r;return}function Fs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,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;do if(a>>>0<245){o=a>>>
;0<11?16:a+11&-8;a=o>>>3;j=c[18400]|0;b=j>>>a;if(b&3|0){b=(b&1^1)+a|0;d=73640+(
b<<1<<2)|0;e=d+8|0;f=c[e>>2]|0;g=f+8|0;h=c[g>>2]|0;do if((d|0)!=(h|0)){if(h>>
x3e;0<(c[18404]|0)>>>0)ya();a=h+12|0;if((c[a>>2]|0)==(f|0)){c[a>>2]=d;c[e>>2]=
h;break}else ya()}else c[18400]=j&~(1<<b);while(0);L=b<<3;c[f+4>>2]=L|3;L=f+L+4|0;c[L>
x3e;2]=c[L>>2]|1;L=g;return L|0}h=c[18402]|0;if(o>>>0>h>>>0){if(b|0){d=2<<
;a;d=b<<a&(d|0-d);d=(d&0-d)+-1|0;i=d>>>12&16;d=d>>>i;f=d>>>
;5&8;d=d>>>f;g=d>>>2&4;d=d>>>g;e=d>>>1&2;d=d>>
;>e;b=d>>>1&1;b=(f|i|g|e|b)+(d>>>b)|0;d=73640+(b<<1<<2)|0;e=d+8|0;g=
c[e>>2]|0;i=g+8|0;f=c[i>>2]|0;do if((d|0)!=(f|0)){if(f>>>0<(c[18404]|0)>>>
;0)ya();a=f+12|0;if((c[a>>2]|0)==(g|0)){c[a>>2]=d;c[e>>2]=f;k=c[18402]|0;break}else ya()}else{c[18400
]=j&~(1<<b);k=h}while(0);h=(b<<3)-o|0;c[g+4>>2]=o|3;e=g+o|0;c[e+4>>2]=h|1;c[e+h>
;>2]=h;if(k|0){f=c[18405]|0;b=k>>>3;d=73640+(b<<1<<2)|0;a=c[18400]|0;b=1<<b;if
(a&b){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{l=a;m=b}}else{c[
18400]=a|b;l=d+8|0;m=d}c[l>>2]=f;c[m+12>>2]=f;c[f+8>>2]=m;c[f+12>>2]=d}c[18402]=h;c[18405
]=e;L=i;return L|0}a=c[18401]|0;if(a){d=(a&0-a)+-1|0;K=d>>>12&16;d=d>>>K;J=d>>
x3e;5&8;d=d>>>J;L=d>>>2&4;d=d>>>L;b=d>>>1&2;d=d>
x3e;>b;e=d>>>1&1;e=c[73904+((J|K|L|b|e)+(d>>>e)<<2)>>2]|0;d=(c[e+4
x3e;>2]&-8)-o|0;b=e;while(1){a=c[b+16>>2]|0;if(!a){a=c[b+20>>2]|0;if(!a){j=e;break}}b=(c[a+4>
x3e;2]&-8)-o|0;L=b>>>0<d>>>0;d=L?b:d;b=a;e=L?a:e}g=c[18404]|0;if(j>>>0<
;g>>>0)ya();i=j+o|0;if(j>>>0>=i>>>0)ya();h=c[j+24>>2]|0;e=c[j+12>
;>2]|0;do if((e|0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if(!a){b=j+16|0;a=c[b>>2]|0;if(!a){n=0;break}}while(1){
e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;b=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;b=e}}if(b>>
;>0<g>>>0)ya();else{c[b>>2]=0;n=a;break}}else{f=c[j+8>>2]|0;if(f>>>0
<g>>>0)ya();a=f+12|0;if((c[a>>2]|0)!=(j|0))ya();b=e+8|0;if((c[b>>2]|0)==(j|0)){c[a>
x3e;2]=e;c[b>>2]=f;n=e;break}else ya()}while(0);do if(h|0){a=c[j+28>>2]|0;b=73904+(a<<2)|0;if((j|0
)==(c[b>>2]|0)){c[b>>2]=n;if(!n){c[18401]=c[18401]&~(1<<a);break}}else{if(h>>>
0<(c[18404]|0)>>>0)ya();a=h+16|0;if((c[a>>2]|0)==(j|0))c[a>>2]=n;else c[h+20>>
2]=n;if(!n)break}b=c[18404]|0;if(n>>>0<b>>>0)ya();c[n+24>>2]=h;a=c[j+16>>
2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else{c[n+16>>2]=a;c[a+24>>2]=n;break}while
(0);a=c[j+20>>2]|0;if(a|0)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[n+20>>2]=
a;c[a+24>>2]=n;break}}while(0);if(d>>>0<16){L=d+o|0;c[j+4>>2]=L|3;L=j+L+4|0;c[L>>
;2]=c[L>>2]|1}else{c[j+4>>2]=o|3;c[i+4>>2]=d|1;c[i+d>>2]=d;a=c[18402]|0;if(a|0){f=c[18405
]|0;b=a>>>3;e=73640+(b<<1<<2)|0;a=c[18400]|0;b=1<<b;if(a&b){a=e+8|0;b=c[a>
;>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{p=a;q=b}}else{c[18400]=a|b;p=e+8|0;q=e}c[p>
;>2]=f;c[q+12>>2]=f;c[f+8>>2]=q;c[f+12>>2]=e}c[18402]=d;c[18405]=i}L=j+8|0;return L|0}}}else
if(a>>>0<=4294967231){a=a+11|0;o=a&-8;j=c[18401]|0;if(j){d=0-o|0;a=a>>>8;if(a)if(o>
x3e;>0>16777215)i=31;else{q=(a+1048320|0)>>>16&8;E=a<<q;p=(E+520192|0)>>>
16&4;E=E<<p;i=(E+245760|0)>>>16&2;i=14-(p|q|i)+(E<<i>>>15)|0;i=o>
;>>(i+7|0)&1|i<<1}else i=0;b=c[73904+(i<<2)>>2]|0;a:do if(!b){a=0;b=0;E=86}else{f=d
;a=0;g=o<<((i|0)==31?0:25-(i>>>1)|0);h=b;b=0;while(1){e=c[h+4>>2]&-8;d=e-o|0;if(d>
x3e;>0<f>>>0)if((e|0)==(o|0)){a=h;b=h;E=90;break a}else b=h;else d=f;e=c[h+20>>2]|0;h=c[h+16+(
g>>>31<<2)>>2]|0;a=(e|0)==0|(e|0)==(h|0)?a:e;e=(h|0)==0;if(e){E=86;break}else{f=d;g=g<
x3c;(e&1^1)}}}while(0);if((E|0)==86){if((a|0)==0&(b|0)==0){a=2<<i;a=j&(a|0-a);if(!a)break;q=(a&0-a
)+-1|0;m=q>>>12&16;q=q>>>m;l=q>>>5&8;q=q>>>l;n=q>>
;>2&4;q=q>>>n;p=q>>>1&2;q=q>>>p;a=q>>>1&1;a=c[73904
+((l|m|n|p|a)+(q>>>a)<<2)>>2]|0}if(!a){i=d;j=b}else E=90}if((E|0)==90)while(1){E=0;q=(c[a+4
x3e;>2]&-8)-o|0;e=q>>>0<d>>>0;d=e?q:d;b=e?a:b;e=c[a+16>>2]|0;if(e|0){a=e;
E=90;continue}a=c[a+20>>2]|0;if(!a){i=d;j=b;break}else E=90}if((j|0)!=0?i>>>0<((c[18402]|0)-o|0)
x3e;>>0:0){f=c[18404]|0;if(j>>>0<f>>>0)ya();h=j+o|0;if(j>>>0>=h
>>>0)ya();g=c[j+24>>2]|0;d=c[j+12>>2]|0;do if((d|0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if
(!a){b=j+16|0;a=c[b>>2]|0;if(!a){s=0;break}}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;
e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<f>>>0)ya();else{c[b>>2]=0;
s=a;break}}else{e=c[j+8>>2]|0;if(e>>>0<f>>>0)ya();a=e+12|0;if((c[a>>2]|0)!=(
j|0))ya();b=d+8|0;if((c[b>>2]|0)==(j|0)){c[a>>2]=d;c[b>>2]=e;s=d;break}else ya()}while(0);do if(g|
0){a=c[j+28>>2]|0;b=73904+(a<<2)|0;if((j|0)==(c[b>>2]|0)){c[b>>2]=s;if(!s){c[18401]=c[18401
]&~(1<<a);break}}else{if(g>>>0<(c[18404]|0)>>>0)ya();a=g+16|0;if((c[a>>
;2]|0)==(j|0))c[a>>2]=s;else c[g+20>>2]=s;if(!s)break}b=c[18404]|0;if(s>>>0<b>>
;>0)ya();c[s+24>>2]=g;a=c[j+16>>2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else
{c[s+16>>2]=a;c[a+24>>2]=s;break}while(0);a=c[j+20>>2]|0;if(a|0)if(a>>>0<(c[18404
]|0)>>>0)ya();else{c[s+20>>2]=a;c[a+24>>2]=s;break}}while(0);do if(i>>>0>=
16){c[j+4>>2]=o|3;c[h+4>>2]=i|1;c[h+i>>2]=i;a=i>>>3;if(i>>>0<256
){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>
;>0<(c[18404]|0)>>>0)ya();else{u=a;v=b}}else{c[18400]=b|a;u=d+8|0;v=d}c[u>>2]=h;c[v+12>
x3e;2]=h;c[h+8>>2]=v;c[h+12>>2]=d;break}a=i>>>8;if(a)if(i>>>0>16777215)d=
31;else{K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|0)>>>16&4;L=L<<J;d
=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>>15)|0;d=i>>>(d+7|0)&1
|d<<1}else d=0;e=73904+(d<<2)|0;c[h+28>>2]=d;a=h+16|0;c[a+4>>2]=0;c[a>>2]=0;a=
c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[e>>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8
>>2]=h;break}f=i<<((d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>
x3e;2]&-8|0)==(i|0)){d=a;E=148;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d){E=145;break
}else{f=f<<1;a=d}}if((E|0)==145)if(b>>>0<(c[18404]|0)>>>0)ya();else{c[b>>
2]=h;c[h+24>>2]=a;c[h+12>>2]=h;c[h+8>>2]=h;break}else if((E|0)==148){a=d+8|0;b=c[a>>2]|0
;L=c[18404]|0;if(b>>>0>=L>>>0&d>>>0>=L>>>0){c[b+12>
;>2]=h;c[a>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;c[h+24>>2]=0;break}else ya()}}else{L=i+o|
0;c[j+4>>2]=L|3;L=j+L+4|0;c[L>>2]=c[L>>2]|1}while(0);L=j+8|0;return L|0}}}else o=-1;while(0);d=c[18402
]|0;if(d>>>0>=o>>>0){a=d-o|0;b=c[18405]|0;if(a>>>0>15){L=b+o|0;c[18405]=L
;c[18402]=a;c[L+4>>2]=a|1;c[L+a>>2]=a;c[b+4>>2]=o|3}else{c[18402]=0;c[18405]=0;c[b+4>>2]=
d|3;L=b+d+4|0;c[L>>2]=c[L>>2]|1}L=b+8|0;return L|0}a=c[18403]|0;if(a>>>0>o>>
x3e;0){J=a-o|0;c[18403]=J;L=c[18406]|0;K=L+o|0;c[18406]=K;c[K+4>>2]=J|1;c[L+4>>2]=o|3;L=L+8|0;return L|0}do
if(!(c[18518]|0)){a=Ia(30)|0;if(!(a+-1&a)){c[18520]=a;c[18519]=a;c[18521]=-1;c[18522]=-1;c[18523]=0;c[18511]=0;c[18518]=(va
(0)|0)&-16^1431655768;break}else ya()}while(0);h=o+48|0;g=c[18520]|0;i=o+47|0;f=g+i|0;g=0-g|0;j=f&g;if(j>>
x3e;0<=o>>>0){L=0;return L|0}a=c[18510]|0;if(a|0?(u=c[18508]|0,v=u+j|0,v>>>0<=u>>
;>0|v>>>0>a>>>0):0){L=0;return L|0}b:do if(!(c[18511]&4)){a=c[18406]|0;c:do if(a){d
=74048;while(1){b=c[d>>2]|0;if(b>>>0<=a>>>0?(r=d+4|0,(b+(c[r>>2]|0)|0)>
;>>0>a>>>0):0){e=d;d=r;break}d=c[d+8>>2]|0;if(!d){E=173;break c}}a=f-(c[18403]|0)&g
;if(a>>>0<2147483647){b=Ba(a|0)|0;if((b|0)==((c[e>>2]|0)+(c[d>>2]|0)|0)){if((b|0)!=(-1|0
)){h=b;f=a;E=193;break b}}else E=183}}else E=173;while(0);do if((E|0)==173?(t=Ba(0)|0,(t|0)!=(-1|0)):0){a=t;b=c[18519]|0;d=b+-1|
0;if(!(d&a))a=j;else a=j-a+(d+a&0-b)|0;b=c[18508]|0;d=b+a|0;if(a>>>0>o>>>0&a
x3e;>>0<2147483647){v=c[18510]|0;if(v|0?d>>>0<=b>>>0|d>>>0>
;v>>>0:0)break;b=Ba(a|0)|0;if((b|0)==(t|0)){h=t;f=a;E=193;break b}else E=183}}while(0);d:do if((E|0)==183){d=0-a|
0;do if(h>>>0>a>>>0&(a>>>0<2147483647&(b|0)!=(-1|0))?(w=c[18520
]|0,w=i-a+w&0-w,w>>>0<2147483647):0)if((Ba(w|0)|0)==(-1|0)){Ba(d|0)|0;break d}else{a=w+a|0;break}while(
0);if((b|0)!=(-1|0)){h=b;f=a;E=193;break b}}while(0);c[18511]=c[18511]|4;E=190}else E=190;while(0);if((((E|0)==190?j>>
x3e;0<2147483647:0)?(x=Ba(j|0)|0,y=Ba(0)|0,x>>>0<y>>>0&((x|0)!=(-1|0)&(y|0)!=(-
1|0))):0)?(z=y-x|0,z>>>0>(o+40|0)>>>0):0){h=x;f=z;E=193}if((E|0)==193){a=(c[18508]|0)+f|0;c[18508
]=a;if(a>>>0>(c[18509]|0)>>>0)c[18509]=a;i=c[18406]|0;do if(i){e=74048;do{a=c[e>>2]|
0;b=e+4|0;d=c[b>>2]|0;if((h|0)==(a+d|0)){A=a;B=b;C=d;D=e;E=203;break}e=c[e+8>>2]|0}while((e|0)!=0);if(((E|0)==
203?(c[D+12>>2]&8|0)==0:0)?i>>>0<h>>>0&i>>>0>=A>
x3e;>0:0){c[B>>2]=C+f;L=i+8|0;L=(L&7|0)==0?0:0-L&7;K=i+L|0;L=f-L+(c[18403]|0)|0;c[18406]=K;c[18403]=L;c
[K+4>>2]=L|1;c[K+L+4>>2]=40;c[18407]=c[18522];break}a=c[18404]|0;if(h>>>0<a>>
x3e;0){c[18404]=h;j=h}else j=a;d=h+f|0;a=74048;while(1){if((c[a>>2]|0)==(d|0)){b=a;E=211;break}a=c[a+8>>2]|0
;if(!a){b=74048;break}}if((E|0)==211)if(!(c[a+12>>2]&8)){c[b>>2]=h;l=a+4|0;c[l>>2]=(c[l>
x3e;2]|0)+f;l=h+8|0;l=h+((l&7|0)==0?0:0-l&7)|0;a=d+8|0;a=d+((a&7|0)==0?0:0-a&7)|0;k=l+o|0;g=a-l-o|0;c[l+4>
;>2]=o|3;do if((a|0)!=(i|0)){if((a|0)==(c[18405]|0)){L=(c[18402]|0)+g|0;c[18402]=L;c[18405]=k;c[k+4>>2]=L|1;c[k+L
>>2]=L;break}b=c[a+4>>2]|0;if((b&3|0)==1){i=b&-8;f=b>>>3;e:do if(b>>>
;0>=256){h=c[a+24>>2]|0;e=c[a+12>>2]|0;do if((e|0)==(a|0)){d=a+16|0;e=d+4|0;b=c[e>>2]|0;if(!b
){b=c[d>>2]|0;if(!b){J=0;break}}else d=e;while(1){e=b+20|0;f=c[e>>2]|0;if(f|0){b=f;d=e;continue}e=b+16|0;f=c
[e>>2]|0;if(!f)break;else{b=f;d=e}}if(d>>>0<j>>>0)ya();else{c[d>>2]=0;J=b
;break}}else{f=c[a+8>>2]|0;if(f>>>0<j>>>0)ya();b=f+12|0;if((c[b>>2]|0)!=(
a|0))ya();d=e+8|0;if((c[d>>2]|0)==(a|0)){c[b>>2]=e;c[d>>2]=f;J=e;break}else ya()}while(0);if(!h)break
;b=c[a+28>>2]|0;d=73904+(b<<2)|0;do if((a|0)!=(c[d>>2]|0)){if(h>>>0<(c[18404]|
0)>>>0)ya();b=h+16|0;if((c[b>>2]|0)==(a|0))c[b>>2]=J;else c[h+20>>2]=J;if(!J)break
e}else{c[d>>2]=J;if(J|0)break;c[18401]=c[18401]&~(1<<b);break e}while(0);e=c[18404]|0;if(J>>
x3e;0<e>>>0)ya();c[J+24>>2]=h;b=a+16|0;d=c[b>>2]|0;do if(d|0)if(d>>>0<
;e>>>0)ya();else{c[J+16>>2]=d;c[d+24>>2]=J;break}while(0);b=c[b+4>>2]|0;if(!b)break
;if(b>>>0<(c[18404]|0)>>>0)ya();else{c[J+20>>2]=b;c[b+24>>2]=J;break}}else
{d=c[a+8>>2]|0;e=c[a+12>>2]|0;b=73640+(f<<1<<2)|0;do if((d|0)!=(b|0)){if(d>>
x3e;0<j>>>0)ya();if((c[d+12>>2]|0)==(a|0))break;ya()}while(0);if((e|0)==(d|0)){c[18400]=c[18400]
x26;~(1<<f);break}do if((e|0)==(b|0))G=e+8|0;else{if(e>>>0<j>>>0)ya();b=e+8|0;if((c
[b>>2]|0)==(a|0)){G=b;break}ya()}while(0);c[d+12>>2]=e;c[G>>2]=d}while(0);a=a+i|0;g=i+g|0}a=a+4|0;
c[a>>2]=c[a>>2]&-2;c[k+4>>2]=g|1;c[k+g>>2]=g;a=g>>>3;if(g>>
;>0<256){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;do if(!(b&a)){c[18400]=b|a;K=d+8|0
;L=d}else{a=d+8|0;b=c[a>>2]|0;if(b>>>0>=(c[18404]|0)>>>0){K=a;L=b;break}ya()}while(
0);c[K>>2]=k;c[L+12>>2]=k;c[k+8>>2]=L;c[k+12>>2]=d;break}a=g>>>8;do if(!a
)d=0;else{if(g>>>0>16777215){d=31;break}K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192
|0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>
;>15)|0;d=g>>>(d+7|0)&1|d<<1}while(0);e=73904+(d<<2)|0;c[k+28>>2]=d;a=k+16
|0;c[a+4>>2]=0;c[a>>2]=0;a=c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[e>>2]=k;c[k+
24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}f=g<<((d|0)==31?0:25-(d>>>1)|0);a
=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0)==(g|0)){d=a;E=281;break}b=a+16+(f>>>31<<
;2)|0;d=c[b>>2]|0;if(!d){E=278;break}else{f=f<<1;a=d}}if((E|0)==278)if(b>>>0<(c[18404]|0
)>>>0)ya();else{c[b>>2]=k;c[k+24>>2]=a;c[k+12>>2]=k;c[k+8>>2]=k;break}else
if((E|0)==281){a=d+8|0;b=c[a>>2]|0;L=c[18404]|0;if(b>>>0>=L>>>0&d>>
x3e;0>=L>>>0){c[b+12>>2]=k;c[a>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;c[k+24
>>2]=0;break}else ya()}}else{L=(c[18403]|0)+g|0;c[18403]=L;c[18406]=k;c[k+4>>2]=L|1}while(0);L=l+8|0;return
L|0}else b=74048;while(1){a=c[b>>2]|0;if(a>>>0<=i>>>0?(F=a+(c[b+4>>2]|0)|
0,F>>>0>i>>>0):0){b=F;break}b=c[b+8>>2]|0}g=b+-47|0;d=g+8|0;d=g+((d&7|0)==0?0:
0-d&7)|0;g=i+16|0;d=d>>>0<g>>>0?i:d;a=d+8|0;e=h+8|0;e=(e&7|0)==0?0:0-e&7;L=h+e
|0;e=f+-40-e|0;c[18406]=L;c[18403]=e;c[L+4>>2]=e|1;c[L+e+4>>2]=40;c[18407]=c[18522];e=d+4|0;c[e>>2
]=27;c[a>>2]=c[18512];c[a+4>>2]=c[18513];c[a+8>>2]=c[18514];c[a+12>>2]=c[18515];c[18512]=
h;c[18513]=f;c[18515]=0;c[18514]=a;a=d+24|0;do{a=a+4|0;c[a>>2]=7}while((a+4|0)>>>0<b>>
x3e;0);if((d|0)!=(i|0)){h=d-i|0;c[e>>2]=c[e>>2]&-2;c[i+4>>2]=h|1;c[d>>2]=h;a=h>
;>>3;if(h>>>0<256){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;if(b&
;a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{H=a;I=b}}else{c[18400]=
b|a;H=d+8|0;I=d}c[H>>2]=i;c[I+12>>2]=i;c[i+8>>2]=I;c[i+12>>2]=d;break}a=h>>>
;8;if(a)if(h>>>0>16777215)d=31;else{K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|
0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>
;>15)|0;d=h>>>(d+7|0)&1|d<<1}else d=0;f=73904+(d<<2)|0;c[i+28>>2]=d;c[i+20
>>2]=0;c[g>>2]=0;a=c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[f>>2]=i;c[i+24>
x3e;2]=f;c[i+12>>2]=i;c[i+8>>2]=i;break}e=h<<((d|0)==31?0:25-(d>>>1)|0);a=c[f>
x3e;2]|0;while(1){if((c[a+4>>2]&-8|0)==(h|0)){d=a;E=307;break}b=a+16+(e>>>31<<2)|0;d=c[b
>>2]|0;if(!d){E=304;break}else{e=e<<1;a=d}}if((E|0)==304)if(b>>>0<(c[18404]|0)>>
;>0)ya();else{c[b>>2]=i;c[i+24>>2]=a;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((E|0)==
307){a=d+8|0;b=c[a>>2]|0;L=c[18404]|0;if(b>>>0>=L>>>0&d>>>0>
;=L>>>0){c[b+12>>2]=i;c[a>>2]=i;c[i+8>>2]=b;c[i+12>>2]=d;c[i+24>>
;2]=0;break}else ya()}}}else{L=c[18404]|0;if((L|0)==0|h>>>0<L>>>0)c[18404]=h;c[18512]=h;c[18513
]=f;c[18515]=0;c[18409]=c[18518];c[18408]=-1;a=0;do{L=73640+(a<<1<<2)|0;c[L+12>>2]=L;c[L+8>
x3e;2]=L;a=a+1|0}while((a|0)!=32);L=h+8|0;L=(L&7|0)==0?0:0-L&7;K=h+L|0;L=f+-40-L|0;c[18406]=K;c[18403]=L;c[K+4>
x3e;2]=L|1;c[K+L+4>>2]=40;c[18407]=c[18522]}while(0);a=c[18403]|0;if(a>>>0>o>>>0){J
=a-o|0;c[18403]=J;L=c[18406]|0;K=L+o|0;c[18406]=K;c[K+4>>2]=J|1;c[L+4>>2]=o|3;L=L+8|0;return L|0}}c[(Ar()|0)
x3e;>2]=12;L=0;return L|0}function Gs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;if(!a)return
;d=a+-8|0;h=c[18404]|0;if(d>>>0<h>>>0)ya();a=c[a+-4>>2]|0;b=a&3;if((b|0)==1)ya
();e=a&-8;m=d+e|0;do if(!(a&1)){a=c[d>>2]|0;if(!b)return;k=d+(0-a)|0;j=a+e|0;if(k>>>0<h
x3e;>>0)ya();if((k|0)==(c[18405]|0)){a=m+4|0;b=c[a>>2]|0;if((b&3|0)!=3){q=k;g=j;break}c[18402]=j;c[a>
;>2]=b&-2;c[k+4>>2]=j|1;c[k+j>>2]=j;return}e=a>>>3;if(a>>>0<256
){b=c[k+8>>2]|0;d=c[k+12>>2]|0;a=73640+(e<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>
;0<h>>>0)ya();if((c[b+12>>2]|0)!=(k|0))ya()}if((d|0)==(b|0)){c[18400]=c[18400]&~(1<<
;e);q=k;g=j;break}if((d|0)!=(a|0)){if(d>>>0<h>>>0)ya();a=d+8|0;if((c[a>>2]|0)==(k|0
))f=a;else ya()}else f=d+8|0;c[b+12>>2]=d;c[f>>2]=b;q=k;g=j;break}f=c[k+24>>2]|0;d=c[k+12>>
;2]|0;do if((d|0)==(k|0)){b=k+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){i=0;break}}else b=d;while(1
){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>
;>0<h>>>0)ya();else{c[b>>2]=0;i=a;break}}else{e=c[k+8>>2]|0;if(e>>>0
<h>>>0)ya();a=e+12|0;if((c[a>>2]|0)!=(k|0))ya();b=d+8|0;if((c[b>>2]|0)==(k|0)){c[a>
x3e;2]=d;c[b>>2]=e;i=d;break}else ya()}while(0);if(f){a=c[k+28>>2]|0;b=73904+(a<<2)|0;if((k|0)==(c
[b>>2]|0)){c[b>>2]=i;if(!i){c[18401]=c[18401]&~(1<<a);q=k;g=j;break}}else{if(f>>>
;0<(c[18404]|0)>>>0)ya();a=f+16|0;if((c[a>>2]|0)==(k|0))c[a>>2]=i;else c[f+20>>
;2]=i;if(!i){q=k;g=j;break}}d=c[18404]|0;if(i>>>0<d>>>0)ya();c[i+24>>2]=f;a=k+16|0;
b=c[a>>2]|0;do if(b|0)if(b>>>0<d>>>0)ya();else{c[i+16>>2]=b;c[b+24>
x3e;2]=i;break}while(0);a=c[a+4>>2]|0;if(a)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[i+
20>>2]=a;c[a+24>>2]=i;q=k;g=j;break}else{q=k;g=j}}else{q=k;g=j}}else{q=d;g=e}while(0);if(q>>>
0>=m>>>0)ya();a=m+4|0;b=c[a>>2]|0;if(!(b&1))ya();if(!(b&2)){if((m|0)==(c[18406]|0)){p=(c
[18403]|0)+g|0;c[18403]=p;c[18406]=q;c[q+4>>2]=p|1;if((q|0)!=(c[18405]|0))return;c[18405]=0;c[18402]=0;return}if((m|0)==(
c[18405]|0)){p=(c[18402]|0)+g|0;c[18402]=p;c[18405]=q;c[q+4>>2]=p|1;c[q+p>>2]=p;return}g=(b&-8)+g|0;e=b
>>>3;do if(b>>>0>=256){f=c[m+24>>2]|0;a=c[m+12>>2]|0;do if((a|0)==(m|0)){
b=m+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){n=0;break}}else b=d;while(1){d=a+20|0;e=c[d>>
;2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<(c[18404]|0
)>>>0)ya();else{c[b>>2]=0;n=a;break}}else{b=c[m+8>>2]|0;if(b>>>0<(c[18404
]|0)>>>0)ya();d=b+12|0;if((c[d>>2]|0)!=(m|0))ya();e=a+8|0;if((c[e>>2]|0)==(m|0)){c[d>>
;2]=a;c[e>>2]=b;n=a;break}else ya()}while(0);if(f|0){a=c[m+28>>2]|0;b=73904+(a<<2)|0;if((m|0)==(c[
b>>2]|0)){c[b>>2]=n;if(!n){c[18401]=c[18401]&~(1<<a);break}}else{if(f>>>0<
;(c[18404]|0)>>>0)ya();a=f+16|0;if((c[a>>2]|0)==(m|0))c[a>>2]=n;else c[f+20>>2]=n;if
(!n)break}d=c[18404]|0;if(n>>>0<d>>>0)ya();c[n+24>>2]=f;a=m+16|0;b=c[a>>2
]|0;do if(b|0)if(b>>>0<d>>>0)ya();else{c[n+16>>2]=b;c[b+24>>2]=n;break}while
(0);a=c[a+4>>2]|0;if(a|0)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[n+20>>2]=a
;c[a+24>>2]=n;break}}}else{b=c[m+8>>2]|0;d=c[m+12>>2]|0;a=73640+(e<<1<<2)|0;if
((b|0)!=(a|0)){if(b>>>0<(c[18404]|0)>>>0)ya();if((c[b+12>>2]|0)!=(m|0))ya()}if((d|0
)==(b|0)){c[18400]=c[18400]&~(1<<e);break}if((d|0)!=(a|0)){if(d>>>0<(c[18404]|0)>>
x3e;0)ya();a=d+8|0;if((c[a>>2]|0)==(m|0))l=a;else ya()}else l=d+8|0;c[b+12>>2]=d;c[l>>2]=b}while(0
);c[q+4>>2]=g|1;c[q+g>>2]=g;if((q|0)==(c[18405]|0)){c[18402]=g;return}}else{c[a>>2]=b&-2;c[q+
4>>2]=g|1;c[q+g>>2]=g}a=g>>>3;if(g>>>0<256){d=73640+(a<<1<
x3c;2)|0;b=c[18400]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>
;>>0)ya();else{o=a;p=b}}else{c[18400]=b|a;o=d+8|0;p=d}c[o>>2]=q;c[p+12>>2]=q;c[q+8>>2]=p
;c[q+12>>2]=d;return}a=g>>>8;if(a)if(g>>>0>16777215)d=31;else{o=(a+1048320|0)>
x3e;>16&8;p=a<<o;n=(p+520192|0)>>>16&4;p=p<<n;d=(p+245760|0)>>>
16&2;d=14-(n|o|d)+(p<<d>>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=73904
+(d<<2)|0;c[q+28>>2]=d;c[q+20>>2]=0;c[q+16>>2]=0;a=c[18401]|0;b=1<<d;do if(a
x26;b){f=g<<((d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0
)==(g|0)){d=a;e=130;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d){e=127;break}else{f=f<
x3c;1;a=d}}if((e|0)==127)if(b>>>0<(c[18404]|0)>>>0)ya();else{c[b>>2]=q;c[q+24>
x3e;2]=a;c[q+12>>2]=q;c[q+8>>2]=q;break}else if((e|0)==130){a=d+8|0;b=c[a>>2]|0;p=c[18404]|0;if(b
x3e;>>0>=p>>>0&d>>>0>=p>>>0){c[b+12>>2]=q;c[a>
;>2]=q;c[q+8>>2]=b;c[q+12>>2]=d;c[q+24>>2]=0;break}else ya()}}else{c[18401]=a|b;c[e>>
;2]=q;c[q+24>>2]=e;c[q+12>>2]=q;c[q+8>>2]=q}while(0);q=(c[18408]|0)+-1|0;c[18408]=q;if(!q)a=74056;
else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[18408]=-1;return}function Hs(a,b){a=a|0;b=b|0;var d=0,e=0;
if(!a){a=Fs(b)|0;return a|0}if(b>>>0>4294967231){c[(Ar()|0)>>2]=12;a=0;return a|0}d=Is(a+-8|0,b>
;>>0<11?16:b+11&-8)|0;if(d|0){a=d+8|0;return a|0}d=Fs(b)|0;if(!d){a=0;return a|0}e=c[a+-4>>2]|0;e=(
e&-8)-((e&3|0)==0?8:4)|0;Ss(d|0,a|0,(e>>>0<b>>>0?e:b)|0)|0;Gs(a);a=d;return a|0}
function Rh(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;ca=i;i=i+192
|0;Y=ca+172|0;l=ca+168|0;I=ca+164|0;H=ca+160|0;m=ca+156|0;n=ca+152|0;p=ca+148|0;aa=ca+144|0;u=ca+140|0;t=ca+136|0;s=ca+132|0;U=ca
+177|0;V=ca+176|0;q=ca+128|0;r=ca+124|0;o=ca+120|0;J=ca+116|0;M=ca+112|0;S=ca+108|0;P=ca+104|0;z=ca+100|0;v=ca+96|0;w=ca+92|0;y=
ca+88|0;x=ca+84|0;D=ca+80|0;F=ca+76|0;A=ca+72|0;B=ca+68|0;G=ca+64|0;E=ca+60|0;C=ca+56|0;W=ca+52|0;Q=ca+48|0;R=ca+44|0;N=ca+40|0;
O=ca+36|0;K=ca+32|0;X=ca+28|0;_=ca+16|0;L=ca+12|0;T=ca+8|0;$=ca+4|0;Z=ca;c[l>>2]=f;c[I>>2]=g;c[H>>
2]=h;c[m>>2]=j;c[n>>2]=k;c[p>>2]=c[I>>2];a[U>>0]=1;a[V>>0]=0;c[q>
;>2]=c[(c[(c[I>>2]|0)+96>>2]|0)+4>>2];c[u>>2]=Ud(c[q>>2]|0,11340)|0;do if
(c[u>>2]|0){c[r>>2]=c[(c[p>>2]|0)+96>>2];c[o>>2]=Vd(c[r>>2]|0,71003)|
0;c[t>>2]=c[o>>2];c[s>>2]=Ud(c[q>>2]|0,11524)|0;f=Kc(c[l>>2]|0,0)|0;c[aa>
x3e;2]=f;if(!f){c[aa>>2]=Za[c[(c[u>>2]|0)+4>>2]&31](c[l>>2]|0,c[p>>2]|0,c
[H>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;if(!(c[aa>>2]|0)){if((c[(c[p>>2]|0)+148>
x3e;2]|0)!=1330926671){ba=112;break}if((c[H>>2]|0)<0){c[Y>>2]=0;ba=c[Y>>2]|0;i=ca;return ba|0
}if((c[H>>2]|0)>0){c[aa>>2]=6;break}a[V>>0]=1;c[aa>>2]=Wa[c[(c[p>>2]|0)+508
>>2]&31](c[p>>2]|0,1751474532,c[l>>2]|0,0)|0;if(c[aa>>2]|0){c[aa>>2]=Ya[c
[(c[u>>2]|0)+40>>2]&127](c[p>>2]|0,c[l>>2]|0)|0;if(c[aa>>2]|0)break}else{
a[U>>0]=0;c[aa>>2]=Za[c[(c[u>>2]|0)+8>>2]&31](c[l>>2]|0,c[p>>2]|
0,0,c[m>>2]|0,c[n>>2]|0)|0;if(c[aa>>2]|0)break}c[aa>>2]=Wa[c[(c[p>>2]|0)+508
x3e;>2]&31](c[p>>2]|0,1128678944,c[l>>2]|0,0)|0;if(c[aa>>2]|0)break}else{f=Kc(c[l>
x3e;2]|0,0)|0;c[aa>>2]=f;if(f|0)break;c[aa>>2]=0}c[S>>2]=c[(c[I>>2]|0)+100>>2];
c[J>>2]=bc(c[S>>2]|0,2072,aa)|0;if((c[aa>>2]|0)==0?(c[(c[p>>2]|0)+692>>2]=c[J
x3e;>2],c[aa>>2]=Sh(c[q>>2]|0,c[l>>2]|0,c[H>>2]|0,c[J>>2]|0,a[U>>
;0]|0)|0,(c[aa>>2]|0)==0):0){c[(c[J>>2]|0)+2052>>2]=c[s>>2];c[(c[J>>2]|0)+2056
>>2]=c[t>>2];c[(c[I>>2]|0)+4>>2]=c[H>>2];c[(c[I>>2]|0)+16>>
;2]=c[(c[J>>2]|0)+12>>2];c[M>>2]=(c[J>>2]|0)+1324;if(c[t>>2]|0?1:(c[(c[M>
x3e;2]|0)+128>>2]|0)!=65535){if(!(c[(c[M>>2]|0)+64>>2]|0)){if(d[U>>0]|0)l=1e3;else l=e[(
c[p>>2]|0)+68>>1]|0;c[(c[M>>2]|0)+64>>2]=l}c[v>>2]=(c[M>>2]|0)+48;c[
w>>2]=(c[M>>2]|0)+68;c[y>>2]=(c[M>>2]|0)+64;f=c[(c[v>>2]|0)+12>>2]|0
;c[x>>2]=(c[(c[v>>2]|0)+12>>2]|0)<0?0-f|0:f;if((c[x>>2]|0)!=65536){f=Vb(c[c[y>
x3e;2]>>2]|0,c[x>>2]|0)|0;c[c[y>>2]>>2]=f;y=Vb(c[c[v>>2]>>2]|0,c[x
x3e;>2]|0)|0;c[c[v>>2]>>2]=y;y=Vb(c[(c[v>>2]|0)+8>>2]|0,c[x>>2]|0)|0;c[(c
[v>>2]|0)+8>>2]=y;y=Vb(c[(c[v>>2]|0)+4>>2]|0,c[x>>2]|0)|0;c[(c[v>>2]|
0)+4>>2]=y;y=Vb(c[(c[v>>2]|0)+12>>2]|0,c[x>>2]|0)|0;c[(c[v>>2]|0)+12>>
;2]=y;y=Vb(c[c[w>>2]>>2]|0,c[x>>2]|0)|0;c[c[w>>2]>>2]=y;y=Vb(c[(c[w>>
;2]|0)+4>>2]|0,c[x>>2]|0)|0;c[(c[w>>2]|0)+4>>2]=y}y=c[w>>2]|0;c[y>>2
]=c[y>>2]>>16;y=(c[w>>2]|0)+4|0;c[y>>2]=c[y>>2]>>16;c[z>>2
]=c[(c[J>>2]|0)+1892>>2];while(1){if((c[z>>2]|0)>>>0<=0)break;c[D>>2
]=c[(c[J>>2]|0)+1896+((c[z>>2]|0)-1<<2)>>2];c[F>>2]=(c[J>>2]|0)+1324
;if(c[(c[D>>2]|0)+64>>2]|0){if((c[(c[F>>2]|0)+64>>2]|0)>>>0>1?(c[(c[
D>>2]|0)+64>>2]|0)>>>0>1:0){if((c[(c[F>>2]|0)+64>>2]|0)>>
x3e;0<(c[(c[D>>2]|0)+64>>2]|0)>>>0)l=c[(c[F>>2]|0)+64>>2]|0;else l=c
[(c[D>>2]|0)+64>>2]|0;c[C>>2]=l}else c[C>>2]=1;Xb((c[F>>2]|0)+48|0,(c[D>
x3e;2]|0)+48|0,c[C>>2]|0);Yb((c[D>>2]|0)+68|0,(c[F>>2]|0)+48|0,c[C>>2]|0);y=xb(c[(c[D>
;>2]|0)+64>>2]|0,c[(c[F>>2]|0)+64>>2]|0,c[C>>2]|0)|0;c[(c[D>>2]|0)+64>
;>2]=y}else{y=(c[D>>2]|0)+48|0;x=(c[F>>2]|0)+48|0;c[y>>2]=c[x>>2];c[y+4>>
2]=c[x+4>>2];c[y+8>>2]=c[x+8>>2];c[y+12>>2]=c[x+12>>2];y=(c[D>>2]|0)+
68|0;x=(c[F>>2]|0)+68|0;c[y>>2]=c[x>>2];c[y+4>>2]=c[x+4>>2];c[(c[D>>
2]|0)+64>>2]=c[(c[F>>2]|0)+64>>2]}c[A>>2]=(c[D>>2]|0)+48;c[B>>2]=(c[
D>>2]|0)+68;c[G>>2]=(c[D>>2]|0)+64;y=c[(c[A>>2]|0)+12>>2]|0;c[E>>2]=(
c[(c[A>>2]|0)+12>>2]|0)<0?0-y|0:y;if((c[E>>2]|0)!=65536){y=Vb(c[c[G>>2]>>
2]|0,c[E>>2]|0)|0;c[c[G>>2]>>2]=y;if((c[c[G>>2]>>2]|0)>>>0>
;1e5)c[c[G>>2]>>2]=(((c[c[G>>2]>>2]|0)+500|0)>>>0)/1e3|0;y=Vb(c[c[A>
x3e;2]>>2]|0,c[E>>2]|0)|0;c[c[A>>2]>>2]=y;y=Vb(c[(c[A>>2]|0)+8>>2]|0
,c[E>>2]|0)|0;c[(c[A>>2]|0)+8>>2]=y;y=Vb(c[(c[A>>2]|0)+4>>2]|0,c[E>>
2]|0)|0;c[(c[A>>2]|0)+4>>2]=y;y=Vb(c[(c[A>>2]|0)+12>>2]|0,c[E>>2]|0)|0;c[(c[A
x3e;>2]|0)+12>>2]=y;y=Vb(c[c[B>>2]>>2]|0,c[E>>2]|0)|0;c[c[B>>2]>>
;2]=y;y=Vb(c[(c[B>>2]|0)+4>>2]|0,c[E>>2]|0)|0;c[(c[B>>2]|0)+4>>2]=y}y=c[B>
;>2]|0;c[y>>2]=c[y>>2]>>16;y=(c[B>>2]|0)+4|0;c[y>>2]=c[y>>2]>
;>16;c[z>>2]=(c[z>>2]|0)+-1}if(a[U>>0]|0){c[W>>2]=0;c[c[I>>2]>>
2]=c[(c[J>>2]|0)+8>>2];l=c[J>>2]|0;if((c[(c[M>>2]|0)+128>>2]|0)!=65535)c[(c[I
x3e;>2]|0)+16>>2]=(c[l+1152+16>>2]|0)+1;else c[(c[I>>2]|0)+16>>2]=c[l+1176+8>
x3e;2];c[(c[I>>2]|0)+52>>2]=c[(c[M>>2]|0)+80>>2]>>16;c[(c[I>>2]|0)+52
+4>>2]=c[(c[M>>2]|0)+80+4>>2]>>16;c[(c[I>>2]|0)+52+8>>2]=(c[(c[M>
;>2]|0)+80+8>>2]|0)+65535>>16;c[(c[I>>2]|0)+52+12>>2]=(c[(c[M>>2]|0)+80+12
>>2]|0)+65535>>16;b[(c[I>>2]|0)+68>>1]=c[(c[M>>2]|0)+64>>2];b[(c[I
x3e;>2]|0)+70>>1]=c[(c[I>>2]|0)+52+12>>2];b[(c[I>>2]|0)+72>>1]=c[(c[I>
;>2]|0)+52+4>>2];b[(c[I>>2]|0)+74>>1]=((e[(c[I>>2]|0)+68>>1]|0)*12|0)/10|
0;if((b[(c[I>>2]|0)+74>>1]|0)<((b[(c[I>>2]|0)+70>>1]|0)-(b[(c[I>>2]|0)+72
>>1]|0)|0))b[(c[I>>2]|0)+74>>1]=(b[(c[I>>2]|0)+70>>1]|0)-(b[(c[I>>2]|
0)+72>>1]|0);b[(c[I>>2]|0)+80>>1]=c[(c[M>>2]|0)+32>>2]>>16;b[(c[I>
;>2]|0)+82>>1]=c[(c[M>>2]|0)+36>>2]>>16;l=qi(c[J>>2]|0,c[H>>2]|
0)|0;c[(c[I>>2]|0)+20>>2]=l;l=c[J>>2]|0;m=c[M>>2]|0;a:do if(c[(c[I>>2]|0)+20
x3e;>2]|0){c[Q>>2]=yh(l,c[m+12>>2]|0)|0;c[R>>2]=c[Q>>2];c[N>>2]=c[(c[I>
;>2]|0)+20>>2];c[O>>2]=0;ri(c[(c[I>>2]|0)+20>>2]|0);if(c[(c[M>>2]|0)+16
x3e;>2]|0?(c[O>>2]=yh(c[J>>2]|0,c[(c[M>>2]|0)+16>>2]|0)|0,c[O>>2]|0):0)c[
N>>2]=c[O>>2];if((c[Q>>2]|0)!=0&(c[N>>2]|0)!=0){b:while(1){if(!(a[c[R>>2]
x3e;>0]|0))break a;if((a[c[R>>2]>>0]|0)==(a[c[N>>2]>>0]|0)){c[N>>2]=(c[N
x3e;>2]|0)+1;c[R>>2]=(c[R>>2]|0)+1;continue}do if((a[c[R>>2]>>0]|0)!=32){if((a[c[R
x3e;>2]>>0]|0)==45)break;if((a[c[N>>2]>>0]|0)!=32?(a[c[N>>2]>>0]|0)!=45:0
)break b;c[N>>2]=(c[N>>2]|0)+1;continue b}while(0);c[R>>2]=(c[R>>2]|0)+1}if((a[c[N>
x3e;2]>>0]|0)==0?a[c[R>>2]>>0]|0:0)c[W>>2]=si(c[S>>2]|0,c[R>>2]|0)|0
}}else{c[K>>2]=yh(l,c[m+168>>2]|0)|0;if(c[K>>2]|0){R=si(c[S>>2]|0,c[K>>2]|0)|0
;c[(c[I>>2]|0)+20>>2]=R}}while(0);if(c[W>>2]|0)c[(c[I>>2]|0)+24>>2]=c[W>
x3e;2];else{W=si(c[S>>2]|0,11262)|0;c[(c[I>>2]|0)+24>>2]=W}c[P>>2]=2065;if(a[V>>
;0]|0)c[P>>2]=c[P>>2]|8;if(a[(c[M>>2]|0)+24>>0]|0)c[P>>2]=c[P>>2]|4;
c[(c[I>>2]|0)+8>>2]=c[P>>2];c[P>>2]=0;if(c[(c[M>>2]|0)+28>>2]|0)c[P
x3e;>2]=c[P>>2]|1;c[X>>2]=yh(c[J>>2]|0,c[(c[M>>2]|0)+20>>2]|0)|0;do if(c[
X>>2]|0){if(Kr(c[X>>2]|0,11270)|0?Kr(c[X>>2]|0,11275)|0:0)break;c[P>>2]=c[P>>2
]|2}while(0);do if(!(c[P>>2]&2)){if(!(c[(c[I>>2]|0)+24>>2]|0))break;if(Lr(c[(c[I>>2
]|0)+24>>2]|0,11270,4)|0?Lr(c[(c[I>>2]|0)+24>>2]|0,11275,5)|0:0)break;c[P>>2]=c[P>
x3e;2]|2}while(0);c[(c[I>>2]|0)+12>>2]=c[P>>2]}if((c[(c[M>>2]|0)+128>>2]|0)==65535
){X=(c[I>>2]|0)+8|0;c[X>>2]=c[X>>2]|512}if((c[(c[M>>2]|0)+128>>2]|0)!=65535?d[
U>>0]|0:0){X=(c[I>>2]|0)+8|0;c[X>>2]=c[X>>2]|4096}c[$>>2]=(c[J>>2]|0
)+116;c[T>>2]=0;while(1){if((c[T>>2]|0)>>>0>=(c[(c[I>>2]|0)+36>>2]|0
)>>>0){ba=96;break}c[L>>2]=c[(c[(c[I>>2]|0)+40>>2]|0)+(c[T>>2]<<
;2)>>2];if((e[(c[L>>2]|0)+8>>1]|0)==3?(e[(c[L>>2]|0)+10>>1]|0)==1:0)break;if(!(
e[(c[L>>2]|0)+8>>1]|0))break;c[T>>2]=(c[T>>2]|0)+1}if((ba|0)==96){if(d[U>>0]|0
?(c[(c[J>>2]|0)+1324+128>>2]|0)!=65535:0)break;if(((c[T>>2]|0)+1|0)>>>0>15)break
;c[_>>2]=c[I>>2];b[_+8>>1]=3;b[_+10>>1]=1;c[_+4>>2]=1970170211;c[T>>
2]=c[(c[I>>2]|0)+36>>2];c[aa>>2]=Ld(868,0,_,0)|0;if((c[aa>>2]|0)!=0&163!=(c[aa>
;>2]|0))break;c[aa>>2]=0;if((c[(c[I>>2]|0)+92>>2]|0)==0?(c[T>>2]|0)!=(c[(c[I>
x3e;2]|0)+36>>2]|0):0)c[(c[I>>2]|0)+92>>2]=c[(c[(c[I>>2]|0)+40>>2]|0)+(c[T>
;>2]<<2)>>2]}if((c[T>>2]|0)>>>0<=15?(c[(c[$>>2]|0)+8>>
;2]|0)>>>0>0:0){c[_>>2]=c[I>>2];b[_+8>>1]=7;do if(c[(c[$>>2]|0)+4>
;>2]|0){l=_+10|0;if((c[(c[$>>2]|0)+4>>2]|0)==1){b[l>>1]=1;c[_+4>>2]=1094992453;c[Z
x3e;>2]=828;break}else{b[l>>1]=2;c[_+4>>2]=1094992451;c[Z>>2]=828;break}}else{b[_+10>>
;1]=0;c[_+4>>2]=1094995778;c[Z>>2]=828}while(0);c[aa>>2]=Ld(c[Z>>2]|0,0,_,0)|0}}else ba=
112}}}else ba=112;while(0);if((ba|0)==112)c[aa>>2]=2;c[Y>>2]=c[aa>>2];ba=c[Y>>2]|0;i=ca;
return ba|0}function Sh(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
;x=i;i=i+112|0;j=x+100|0;p=x+96|0;q=x+92|0;r=x+88|0;k=x+105|0;u=x+84|0;n=x+80|0;s=x+76|0;t=x+72|0;w=x+40|0;l=x+8|0;o=x+4|0;m=x;v
=x+104|0;c[j>>2]=b;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;a[k>>0]=h;c[n>>2]=c
[(c[p>>2]|0)+28>>2];Ns(c[r>>2]|0,0,2072)|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>
x3e;2]=0;c[w+12>>2]=0;c[w+16>>2]=0;c[w+20>>2]=0;c[w+24>>2]=0;c[w+28>>2]=0;c[c[
r>>2]>>2]=c[p>>2];c[(c[r>>2]|0)+4>>2]=c[n>>2];c[t>>2]=(c[r
>>2]|0)+1324;c[s>>2]=Mc(c[p>>2]|0)|0;e=le(c[p>>2]|0,5532,c[r>>2]|0)|0;c[u>
;>2]=e;a:do if(!e){if(((d[(c[r>>2]|0)+16>>0]|0|0)==1?(d[(c[r>>2]|0)+18>>0]|0|0)>
;=4:0)?(d[(c[r>>2]|0)+19>>0]|0|0)<=4:0){e=Qc(c[p>>2]|0,(d[(c[r>>2]|0)+18>>
;0]|0)-4|0)|0;c[u>>2]=e;if(e|0)break;e=Th((c[r>>2]|0)+20|0,c[p>>2]|0,0)|0;c[u>>2]=e;if(e
|0)break;e=Th((c[r>>2]|0)+1208|0,c[p>>2]|0,0)|0;c[u>>2]=e;if(e|0)break;e=Th(w,c[p>>2]|0,
1)|0;c[u>>2]=e;if(e|0)break;e=Th((c[r>>2]|0)+84|0,c[p>>2]|0,1)|0;c[u>>2]=e;if(e|0)break;
e=Vh(w,(c[r>>2]|0)+1316|0,(c[r>>2]|0)+1320|0)|0;c[u>>2]=e;if(e|0)break;c[(c[r>>2]|0)+1312
>>2]=c[w+8>>2];c[(c[r>>2]|0)+8>>2]=c[(c[r>>2]|0)+20+8>>2];if((c[q>
;>2]|0)>=(c[(c[r>>2]|0)+8>>2]|0))c[u>>2]=6;if((c[q>>2]|0)<0)break;c[u>
;>2]=Xh((c[r>>2]|0)+1324|0,(c[r>>2]|0)+1208|0,c[q>>2]|0,c[p>>2]|0,c[s>>2]|
0,c[j>>2]|0)|0;if(c[u>>2]|0)break;e=Kc(c[p>>2]|0,(c[s>>2]|0)+(c[(c[t>>2]|0)+108
>>2]|0)|0)|0;c[u>>2]=e;if(e|0)break;c[u>>2]=Th((c[r>>2]|0)+1176|0,c[p>>2]|0,0)|
0;if(c[u>>2]|0)break;if((c[(c[t>>2]|0)+128>>2]|0)!=65535){e=Kc(c[p>>2]|0,(c[s>>
;2]|0)+(c[(c[t>>2]|0)+160>>2]|0)|0)|0;c[u>>2]=e;if(e|0)break;c[u>>2]=Th(l,c[p>>
;2]|0,0)|0;if(c[u>>2]|0)break;b:do if((c[l+8>>2]|0)>>>0<=32){c[(c[r>>2]|0)+1892
>>2]=c[l+8>>2];c[o>>2]=hc(c[n>>2]|0,568,0,c[l+8>>2]|0,0,u)|0;if(c[u>>
;2]|0)break;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[l+8>>2]|0)>>
x3e;0)break;c[(c[r>>2]|0)+1896+(c[m>>2]<<2)>>2]=(c[o>>2]|0)+((c[m>>2
]|0)*568|0);c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0
x3e;=(c[l+8>>2]|0)>>>0)break;c[o>>2]=c[(c[r>>2]|0)+1896+(c[m>>2]<<
;2)>>2];c[u>>2]=Xh(c[o>>2]|0,l,c[m>>2]|0,c[p>>2]|0,c[s>>2]|0,c[j>
;>2]|0)|0;if(c[u>>2]|0)break b;c[m>>2]=(c[m>>2]|0)+1}c[u>>2]=ki((c[r>>2]|
0)+2024|0,c[(c[r>>2]|0)+1176+8>>2]|0,c[p>>2]|0,(c[s>>2]|0)+(c[(c[t>>2]|0)+164
x3e;>2]|0)|0)|0}while(0);li(l);if(c[u>>2]|0)break}else c[(c[r>>2]|0)+1892>>2]=0;if(!(c[(c[t
x3e;>2]|0)+108>>2]|0)){c[u>>2]=2;break}c[(c[r>>2]|0)+12>>2]=c[(c[r>>2]|0)+
1176+8>>2];c[u>>2]=Vh((c[r>>2]|0)+84|0,(c[r>>2]|0)+1308|0,0)|0;if(c[u>>2]|0)break
;do if((c[(c[r>>2]|0)+12>>2]|0)>>>0>0){if((c[(c[t>>2]|0)+128>>2]|0)!=
65535)j=(d[k>>0]|0|0)!=0;else j=0;a[v>>0]=j&1;c[u>>2]=mi((c[r>>2]|0)+1152|0,c[(c[r
x3e;>2]|0)+12>>2]|0,c[p>>2]|0,c[s>>2]|0,c[(c[t>>2]|0)+100>>2]|0,a[v>
x3e;0]|0)|0;if(c[u>>2]|0)break a;if((c[(c[t>>2]|0)+128>>2]|0)!=65535)break;c[u>>2]=oi((c
[r>>2]|0)+116|0,(c[r>>2]|0)+1152|0,c[(c[r>>2]|0)+12>>2]|0,c[p>>2]|0,c[s>
x3e;2]|0,c[(c[t>>2]|0)+104>>2]|0)|0;if(c[u>>2]|0)break a}while(0);v=qi(c[r>>2]|0,c[q>
;>2]|0)|0;c[(c[r>>2]|0)+1304>>2]=v;break}c[u>>2]=2}while(0);li(w);i=x;return c[u>>2
]|0}function Th(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;r=i;i=i+32|0;n=r+16|0;j=r+12|0;o=r+23|0;p=r+8|0
;q=r+4|0;k=r+20|0;l=r+22|0;m=r;c[n>>2]=f;c[j>>2]=g;a[o>>0]=h;c[q>>2]=c[(c[j>>2
]|0)+28>>2];g=c[n>>2]|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=
0;c[g+16>>2]=0;c[g+20>>2]=0;c[g+24>>2]=0;c[g+28>>2]=0;c[c[n>>2]>>2]=
c[j>>2];g=Mc(c[j>>2]|0)|0;c[(c[n>>2]|0)+4>>2]=g;b[k>>1]=Pc(c[j>>2]|0
,p)|0;do if(((c[p>>2]|0)==0?(e[k>>1]|0)>0:0)?(a[l>>0]=ke(c[j>>2]|0,p)|0,(c[p>
x3e;2]|0)==0):0){if((d[l>>0]|0)>=1?(d[l>>0]|0)<=4:0){c[(c[n>>2]|0)+8>>2]=e[k
x3e;>1];a[(c[n>>2]|0)+12>>0]=a[l>>0]|0;c[m>>2]=_((e[k>>1]|0)+1|0,d[l>
;>0]|0)|0;c[(c[n>>2]|0)+16>>2]=(c[(c[n>>2]|0)+4>>2]|0)+3+(c[m>>2]|0);g=Qc
(c[j>>2]|0,(c[m>>2]|0)-(d[l>>0]|0)|0)|0;c[p>>2]=g;if(g|0)break;c[m>>2]=Uh(c[n
x3e;>2]|0,p)|0;if(c[p>>2]|0)break;if(!(c[m>>2]|0)){c[p>>2]=8;break}k=(c[m>>2]|0)+-1
|0;c[m>>2]=k;c[(c[n>>2]|0)+20>>2]=k;k=c[j>>2]|0;j=c[m>>2]|0;if(a[o>>
0]|0){c[p>>2]=de(k,j,(c[n>>2]|0)+28|0)|0;break}else{c[p>>2]=Qc(k,j)|0;break}}c[p>>2]=8}while
(0);if(!(c[p>>2]|0)){q=c[p>>2]|0;i=r;return q|0}Fb(c[q>>2]|0,c[(c[n>>2]|0)+24>>
;2]|0);c[(c[n>>2]|0)+24>>2]=0;q=c[p>>2]|0;i=r;return q|0}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,m=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;m=l+8|0;k=l+24|0;j=l+4|0;h=l;c[e>>2]=a;c[f>>
2]=b;c[m>>2]=c[c[e>>2]>>2];c[j>>2]=0;a=Rc(c[m>>2]|0,k,d[(c[e>>2]|0)+
12>>0]|0)|0;c[g>>2]=a;if(a|0){k=c[g>>2]|0;m=c[f>>2]|0;c[m>>2]=k;m=c[j>>
;2]|0;i=l;return m|0}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(d[(c[e>>2]|0)+12>>0]|0|0))
break;c[j>>2]=c[j>>2]<<8|(d[k+(c[h>>2]|0)>>0]|0);c[h>>2]=(c[h>
x3e;2]|0)+1}k=c[g>>2]|0;m=c[f>>2]|0;c[m>>2]=k;m=c[j>>2]|0;i=l;return m|0}function Vh(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;t=i;i=i+48|0;f=t+44|0;g=t+40|0;h=t+36|0;k=t+32
|0;m=t+28|0;r=t+24|0;o=t+20|0;n=t+16|0;j=t+12|0;l=t+8|0;q=t+4|0;p=t;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;
c[k>>2]=0;c[m>>2]=c[(c[c[f>>2]>>2]|0)+28>>2];c[o>>2]=0;c[c[g>
x3e;2]>>2]=0;if((c[(c[f>>2]|0)+24>>2]|0)==0?(c[k>>2]=Wh(c[f>>2]|0)|0,c[k>
x3e;2]|0):0){s=c[k>>2]|0;i=t;return s|0}if((c[(c[f>>2]|0)+8>>2]|0)>>>0<=0){s=c
[k>>2]|0;i=t;return s|0}c[r>>2]=hc(c[m>>2]|0,4,0,(c[(c[f>>2]|0)+8>>2]|0)+1|0,0
,k)|0;if(c[k>>2]|0){s=c[k>>2]|0;i=t;return s|0}if(c[h>>2]|0?(c[o>>2]=bc(c[m>>2
]|0,(c[(c[f>>2]|0)+20>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)|0,k)|0,c[k>>2]|0):0){s=c[
k>>2]|0;i=t;return s|0}c[l>>2]=0;c[q>>2]=c[(c[f>>2]|0)+28>>2];d=(c[c[(c[f>
;>2]|0)+24>>2]>>2]|0)-1|0;c[j>>2]=d;c[j>>2]=(c[j>>2]|0)>>>
0>=(c[(c[f>>2]|0)+20>>2]|0)>>>0?0:d;if(c[h>>2]|0)c[c[r>>2]>>
;2]=(c[o>>2]|0)+(c[j>>2]|0);else c[c[r>>2]>>2]=(c[q>>2]|0)+(c[j>>2]|
0);c[n>>2]=1;while(1){if((c[n>>2]|0)>>>0>(c[(c[f>>2]|0)+8>>2]|0)>
;>>0)break;c[p>>2]=(c[(c[(c[f>>2]|0)+24>>2]|0)+(c[n>>2]<<2)>>
;2]|0)-1;if((c[p>>2]|0)!=0?(c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0:0){
if((c[p>>2]|0)>>>0>=(c[(c[f>>2]|0)+20>>2]|0)>>>0?(c[n>>
;2]|0)>>>0<(c[(c[f>>2]|0)+8>>2]|0)>>>0:0)s=16}else s=16;if((s|0)==16){s=0
;c[p>>2]=c[j>>2]}if(c[h>>2]|0){c[(c[r>>2]|0)+(c[n>>2]<<2)>>
;2]=(c[o>>2]|0)+(c[p>>2]|0)+(c[l>>2]|0);if((c[p>>2]|0)!=(c[j>>2]|0)){Ss(c[(c[r
>>2]|0)+((c[n>>2]|0)-1<<2)>>2]|0,(c[q>>2]|0)+(c[j>>2]|0)|0,(c[(c[r
x3e;>2]|0)+(c[n>>2]<<2)>>2]|0)-(c[(c[r>>2]|0)+((c[n>>2]|0)-1<<2
)>>2]|0)|0)|0;a[c[(c[r>>2]|0)+(c[n>>2]<<2)>>2]>>0]=0;d=(c[r>>
;2]|0)+(c[n>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+1}}else
c[(c[r>>2]|0)+(c[n>>2]<<2)>>2]=(c[q>>2]|0)+(c[p>>2]|0);c[j>>
;2]=c[p>>2];c[n>>2]=(c[n>>2]|0)+1}c[c[g>>2]>>2]=c[r>>2];if(!(c[h>
;>2]|0)){s=c[k>>2]|0;i=t;return s|0}c[c[h>>2]>>2]=c[o>>2];s=c[k>>2]|0;i=t
;return s|0}function Wh(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;o=i;i=i+48|0;e=o+28|0;g=o+24|0;n=o+20|0;h=o+16|0;j=
o+32|0;f=o+12|0;k=o+8|0;l=o+4|0;m=o;c[e>>2]=b;c[g>>2]=0;c[n>>2]=c[c[e>>2]>>2];
c[h>>2]=c[(c[n>>2]|0)+28>>2];if(((((c[(c[e>>2]|0)+8>>2]|0)>>>0
x3e;0?(c[(c[e>>2]|0)+24>>2]|0)==0:0)?(a[j>>0]=a[(c[e>>2]|0)+12>>0]|0,c[f>
x3e;2]=_((c[(c[e>>2]|0)+8>>2]|0)+1|0,d[j>>0]|0)|0,b=hc(c[h>>2]|0,4,0,(c[(c[e>>
2]|0)+8>>2]|0)+1|0,0,g)|0,c[(c[e>>2]|0)+24>>2]=b,(c[g>>2]|0)==0):0)?(b=Kc(c[n>>
;2]|0,(c[(c[e>>2]|0)+4>>2]|0)+3|0)|0,c[g>>2]=b,(b|0)==0):0)?(b=ee(c[n>>2]|0,c[f>>
;2]|0)|0,c[g>>2]=b,(b|0)==0):0){c[m>>2]=c[(c[e>>2]|0)+24>>2];c[k>>2]=c[(c[n>
;>2]|0)+32>>2];c[l>>2]=(c[k>>2]|0)+(c[f>>2]|0);a:do switch(d[j>>0]|0){case
1:while(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>
2]>>2]=d[c[k>>2]>>0];c[k>>2]=(c[k>>2]|0)+1;c[m>>2]=(c[m>>2
]|0)+4}case 2:while(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m
x3e;>2]>>2]=((d[c[k>>2]>>0]&65535)<<8|(d[(c[k>>2]|0)+1>>0]
x26;65535)<<0)&65535;c[k>>2]=(c[k>>2]|0)+2;c[m>>2]=(c[m>>2]|0)+4}case 3:while
(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>2]>
x3e;2]=a[c[k>>2]>>0]<<16|d[(c[k>>2]|0)+1>>0]<<8|d[(c[k>>2]|
0)+2>>0]<<0;c[k>>2]=(c[k>>2]|0)+3;c[m>>2]=(c[m>>2]|0)+4}default:while
(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>2]>
x3e;2]=d[c[k>>2]>>0]<<24|d[(c[k>>2]|0)+1>>0]<<16|d[(c[k>>2
]|0)+2>>0]<<8|d[(c[k>>2]|0)+3>>0]<<0;c[k>>2]=(c[k>>2]|0)+4
;c[m>>2]=(c[m>>2]|0)+4}}while(0);ge(c[n>>2]|0)}if(!(c[g>>2]|0)){n=c[g>>2]|0;i=
o;return n|0}Fb(c[h>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;n=c[g
>>2]|0;i=o;return n|0}function Xh(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;v=i;i=i+464|0;k=v+456|0;l=v+452|0;w=v+448|0;m=v+444|0;n=v+440|0;o=v+436|0;r=v+432|0;s=v+16|0;p=v+12|0;q=v+8
|0;u=v+4|0;t=v;c[k>>2]=b;c[l>>2]=e;c[w>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>
;2]=j;c[p>>2]=0;c[u>>2]=c[k>>2];c[t>>2]=(c[k>>2]|0)+172;Yh(s,4096,c[k>>
;2]|0,c[o>>2]|0);Ns(c[u>>2]|0,0,172)|0;c[(c[u>>2]|0)+32>>2]=-6553600;c[(c[u>>2
]|0)+36>>2]=3276800;c[(c[u>>2]|0)+44>>2]=2;c[(c[u>>2]|0)+48>>2]=65536;c[(c[u
x3e;>2]|0)+48+12>>2]=65536;c[(c[u>>2]|0)+152>>2]=8720;c[c[u>>2]>>2]=65535
;c[(c[u>>2]|0)+4>>2]=65535;c[(c[u>>2]|0)+8>>2]=65535;c[(c[u>>2]|0)+12>>
;2]=65535;c[(c[u>>2]|0)+16>>2]=65535;c[(c[u>>2]|0)+20>>2]=65535;c[(c[u>>2]|0)+
124>>2]=65535;c[(c[u>>2]|0)+128>>2]=65535;c[(c[u>>2]|0)+132>>2]=65535;c[(c[u
x3e;>2]|0)+168>>2]=65535;c[r>>2]=Zh(c[l>>2]|0,c[w>>2]|0,p,q)|0;if(!(c[r>>
2]|0))c[r>>2]=_h(s,c[p>>2]|0,(c[p>>2]|0)+(c[q>>2]|0)|0)|0;ji(c[l>>2]|0,p);if(c
[r>>2]|0){w=c[r>>2]|0;i=v;return w|0}if((c[(c[u>>2]|0)+128>>2]|0)!=65535){w=c[r>>
;2]|0;i=v;return w|0}do if(c[(c[u>>2]|0)+112>>2]|0?c[(c[u>>2]|0)+116>>2]|0:0){Ns(c[t>
;>2]|0,0,360)|0;c[(c[t>>2]|0)+200>>2]=7;c[(c[t>>2]|0)+204>>2]=1;c[(c[t>>2
]|0)+332>>2]=-1;c[(c[t>>2]|0)+340>>2]=3932;c[(c[t>>2]|0)+196>>2]=2596864;Yh(s,
8192,c[t>>2]|0,c[o>>2]|0);w=Kc(c[m>>2]|0,(c[n>>2]|0)+(c[(c[k>>2]|0)+112>
x3e;2]|0)|0)|0;c[r>>2]=w;if(w|0){w=c[r>>2]|0;i=v;return w|0}w=ee(c[m>>2]|0,c[(c[k>>2]|0)+
116>>2]|0)|0;c[r>>2]=w;if(w|0){w=c[r>>2]|0;i=v;return w|0}c[r>>2]=_h(s,c[(c[m>>
;2]|0)+32>>2]|0,c[(c[m>>2]|0)+36>>2]|0)|0;ge(c[m>>2]|0);if(c[r>>2]|0){w=c[r>
;>2]|0;i=v;return w|0}else{w=c[t>>2]|0;a[w>>0]=(d[w>>0]|0)&-2;break}}while(0);if(!(c[(c[
t>>2]|0)+348>>2]|0)){w=c[r>>2]|0;i=v;return w|0}w=Kc(c[m>>2]|0,(c[n>>2]|0)+(c[(
c[u>>2]|0)+112>>2]|0)+(c[(c[t>>2]|0)+348>>2]|0)|0)|0;c[r>>2]=w;if(w|0){w=c[r
x3e;>2]|0;i=v;return w|0}c[r>>2]=Th((c[k>>2]|0)+532|0,c[m>>2]|0,1)|0;if(c[r>>2]|0){
w=c[r>>2]|0;i=v;return w|0}c[r>>2]=Vh((c[k>>2]|0)+532|0,(c[k>>2]|0)+564|0,0)|0;w=c[r>
;>2]|0;i=v;return w|0}function Yh(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;Ns(c[g>>2]|0,0,416)|0;c[(c[g
>>2]|0)+404>>2]=(c[g>>2]|0)+16;c[(c[g>>2]|0)+408>>2]=c[k>>2];c[(c[g
x3e;>2]|0)+412>>2]=c[j>>2];c[c[g>>2]>>2]=c[h>>2];i=f;return}function Zh(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;q=i;i=i+48|0;g=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;l=q
+16|0;p=q+12|0;m=q+8|0;n=q+4|0;o=q;c[g>>2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>
;2]=0;if(c[g>>2]|0?(c[(c[g>>2]|0)+8>>2]|0)>>>0>(c[h>>2]|0)>>
;>0:0){c[p>>2]=c[c[g>>2]>>2];c[n>>2]=0;b=c[h>>2]|0;a=c[g>>2]|0;
a:do if(c[(c[g>>2]|0)+24>>2]|0){c[m>>2]=c[(c[a+24>>2]|0)+(b<<2)>>2];
if(c[m>>2]|0)do{c[h>>2]=(c[h>>2]|0)+1;c[n>>2]=c[(c[(c[g>>2]|0)+24>>2
]|0)+(c[h>>2]<<2)>>2];if(c[n>>2]|0)break a}while((c[h>>2]|0)>>>
0<(c[(c[g>>2]|0)+8>>2]|0)>>>0)}else{c[o>>2]=_(b,d[a+12>>0]|0)|0;o=Kc
(c[p>>2]|0,(c[(c[g>>2]|0)+4>>2]|0)+3+(c[o>>2]|0)|0)|0;c[l>>2]=o;if(o|0){p=c[l
x3e;>2]|0;i=q;return p|0}c[m>>2]=Uh(c[g>>2]|0,l)|0;if(c[l>>2]|0){p=c[l>>2]|0;i=q;return
p|0}if(c[m>>2]|0)do{c[h>>2]=(c[h>>2]|0)+1;c[n>>2]=Uh(c[g>>2]|0,l)|0;if(c[n>
;>2]|0)break a}while((c[h>>2]|0)>>>0<(c[(c[g>>2]|0)+8>>2]|0)>>
x3e;0)}while(0);if(!((c[n>>2]|0)>>>0<=((c[(c[p>>2]|0)+4>>2]|0)+1|0)>>
;>0?(c[(c[g>>2]|0)+16>>2]|0)>>>0<=((c[(c[p>>2]|0)+4>>2]|0)-(c[n
>>2]|0)+1|0)>>>0:0))c[n>>2]=(c[(c[p>>2]|0)+4>>2]|0)-(c[(c[g>>2]|
0)+16>>2]|0)+1;if(c[m>>2]|0?(c[n>>2]|0)>>>0>(c[m>>2]|0)>>
x3e;0:0){c[c[k>>2]>>2]=(c[n>>2]|0)-(c[m>>2]|0);if(c[(c[g>>2]|0)+28>>
2]|0){c[c[j>>2]>>2]=(c[(c[g>>2]|0)+28>>2]|0)+(c[m>>2]|0)+-1;p=c[l>>2
]|0;i=q;return p|0}o=Kc(c[p>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[m>>2]|0)-1|0)|0;c[l>
x3e;2]=o;if(o|0){p=c[l>>2]|0;i=q;return p|0}c[l>>2]=de(c[p>>2]|0,(c[n>>2]|0)-(c[m>
x3e;2]|0)|0,c[j>>2]|0)|0;p=c[l>>2]|0;i=q;return p|0}c[c[j>>2]>>2]=0;c[c[k>>2]
x3e;>2]=0;p=c[l>>2]|0;i=q;return p|0}c[l>>2]=6;p=c[l>>2]|0;i=q;return p|0}function _h(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;v=i;i=i+64|0;h=v+52|0;w=v+48|0;j=v+44|0;p=
v+40|0;m=v+36|0;x=v+32|0;s=v+28|0;k=v+24|0;o=v+20|0;n=v+16|0;t=v+12|0;q=v+8|0;r=v+4|0;l=v;c[h>>2]=e;c[w>>2]=
f;c[j>>2]=g;c[p>>2]=c[w>>2];c[m>>2]=0;c[x>>2]=c[c[h>>2]>>2
];c[x>>2]=c[x>>2];c[(c[h>>2]|0)+404>>2]=(c[h>>2]|0)+16;c[(c[h>>2]|0)+
4>>2]=c[w>>2];c[(c[h>>2]|0)+8>>2]=c[j>>2];c[(c[h>>2]|0)+12>>
;2]=c[w>>2];a:while(1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0){u=47
;break}c[s>>2]=d[c[p>>2]>>0];g=((c[(c[h>>2]|0)+404>>2]|0)-((c[h>>2]|
0)+16)|0)/4|0;b:do if((c[s>>2]|0)>>>0>=27&(c[s>>2]|0)!=31){if((g|0)>=96){u=48;
break a}w=c[p>>2]|0;f=(c[h>>2]|0)+404|0;x=c[f>>2]|0;c[f>>2]=x+4;c[x>>2]=w;if((
c[s>>2]|0)==30){c[p>>2]=(c[p>>2]|0)+1;while(1){if((c[p>>2]|0)>>>0>=(
c[j>>2]|0)>>>0){u=47;break a}c[s>>2]=(d[c[p>>2]>>0]|0)>>4;if((c
[s>>2]|0)==15)break b;c[s>>2]=(d[c[p>>2]>>0]|0)&15;if((c[s>>2]|0)==15)break
b;c[p>>2]=(c[p>>2]|0)+1}}if((c[s>>2]|0)==28){c[p>>2]=(c[p>>2]|0)+2;break}if((
c[s>>2]|0)==29){c[p>>2]=(c[p>>2]|0)+4;break}if((c[s>>2]|0)>>>0>246)c
[p>>2]=(c[p>>2]|0)+1}else{c[o>>2]=g;c[c[(c[h>>2]|0)+404>>2]>>2]=c[p
x3e;>2];c[k>>2]=c[s>>2];if((c[s>>2]|0)==12){c[p>>2]=(c[p>>2]|0)+1;if((c[p
>>2]|0)>>>0>=(c[j>>2]|0)>>>0){u=50;break a}c[k>>2]=256|(d[c[p
x3e;>2]>>0]|0)}c[k>>2]=c[k>>2]|c[(c[h>>2]|0)+408>>2];c[n>>2]=920
;while(1){if(!(c[c[n>>2]>>2]|0))break;if((c[(c[n>>2]|0)+4>>2]|0)==(c[k>>2]|0)){
u=23;break}c[n>>2]=(c[n>>2]|0)+28}c:do if((u|0)==23){u=0;c[q>>2]=(c[(c[h>>2]|0)+412>
;>2]|0)+(c[(c[n>>2]|0)+8>>2]|0);if((c[o>>2]|0)>>>0<1?(c[c[n>>2]
x3e;>2]|0)!=6:0){u=49;break a}switch(c[c[n>>2]>>2]|0){case 1:case 4:case 5:{c[t>>2]=hi((c[h
x3e;>2]|0)+16|0)|0;break}case 2:{c[t>>2]=fi((c[h>>2]|0)+16|0)|0;break}case 3:{c[t>>2]=di((c[h
>>2]|0)+16|0,3)|0;break}case 6:{c[r>>2]=(c[(c[h>>2]|0)+412>>2]|0)+(c[(c[n>>2]|
0)+24>>2]|0);c[l>>2]=(c[h>>2]|0)+16;if((c[o>>2]|0)>>>0>(c[(c[n>
x3e;2]|0)+20>>2]|0)>>>0)c[o>>2]=c[(c[n>>2]|0)+20>>2];a[c[r>>2]
x3e;>0]=c[o>>2];c[t>>2]=0;while(1){if((c[o>>2]|0)>>>0<=0)break c;x=c[l>
;>2]|0;c[l>>2]=x+4;x=hi(x)|0;c[t>>2]=(c[t>>2]|0)+x;switch(d[(c[n>>2]|0)+12>>
;0]|0|0){case 1:{a[c[q>>2]>>0]=c[t>>2];break}case 2:{b[c[q>>2]>>1]=c[t>
x3e;2];break}case 4:{c[c[q>>2]>>2]=c[t>>2];break}default:c[c[q>>2]>>2]=c[t>
;>2]}c[q>>2]=(c[q>>2]|0)+(d[(c[n>>2]|0)+12>>0]|0);c[o>>2]=(c[o>>
;2]|0)+-1}}default:{c[m>>2]=Ta[c[(c[n>>2]|0)+16>>2]&63](c[h>>2]|0)|0;if(c[m>
x3e;2]|0){u=47;break a}else break c}}switch(d[(c[n>>2]|0)+12>>0]|0|0){case 1:{a[c[q>>2]>>
;0]=c[t>>2];break c}case 2:{b[c[q>>2]>>1]=c[t>>2];break c}case 4:{c[c[q>>2]>
;>2]=c[t>>2];break c}default:{c[c[q>>2]>>2]=c[t>>2];break c}}}while(0);c[(c[h>
x3e;2]|0)+404>>2]=(c[h>>2]|0)+16}while(0);c[p>>2]=(c[p>>2]|0)+1}if((u|0)==47){x=c[m>
;>2]|0;i=v;return x|0}else if((u|0)==48){c[m>>2]=6;x=c[m>>2]|0;i=v;return x|0}else if((u|0)==49){c[m>
;>2]=6;x=c[m>>2]|0;i=v;return x|0}else if((u|0)==50){c[m>>2]=6;x=c[m>>2]|0;i=v;return x|0}return
0}function $h(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;k=j+28|0;l=j+24|0;e=j+20|0;f=j+16|0;h=j+12|0;b=j+8|
0;d=j+4|0;g=j;c[k>>2]=a;c[l>>2]=c[(c[k>>2]|0)+412>>2];c[e>>2]=(c[l>>
2]|0)+48;c[f>>2]=(c[l>>2]|0)+68;c[h>>2]=(c[l>>2]|0)+64;c[b>>2]=(c[k>>
;2]|0)+16;c[d>>2]=161;if((c[(c[k>>2]|0)+404>>2]|0)>>>0<((c[k>>2]|0)+
16+24|0)>>>0){l=c[d>>2]|0;i=j;return l|0}c[d>>2]=0;l=c[b>>2]|0;c[b>>2]=l+
4;l=ai(l,g)|0;c[c[e>>2]>>2]=l;c[g>>2]=0-(c[g>>2]|0);if((c[g>>2]|0)<0|(c[g
>>2]|0)>9){c[c[e>>2]>>2]=65536;c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|
0)+8>>2]=0;c[(c[e>>2]|0)+12>>2]=65536;c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+
4>>2]=0;c[c[h>>2]>>2]=1;l=c[d>>2]|0;i=j;return l|0}else{l=c[b>>2]|0;c[b>
x3e;2]=l+4;l=di(l,c[g>>2]|0)|0;c[(c[e>>2]|0)+8>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l
=di(l,c[g>>2]|0)|0;c[(c[e>>2]|0)+4>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l=di(l,c[g>
;>2]|0)|0;c[(c[e>>2]|0)+12>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l=di(l,c[g>>2]|0
)|0;c[c[f>>2]>>2]=l;l=di(c[b>>2]|0,c[g>>2]|0)|0;c[(c[f>>2]|0)+4>>2]=
l;c[c[h>>2]>>2]=c[2376+(c[g>>2]<<2)>>2];l=c[d>>2]|0;i=j;return l|0}return
0}function ai(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;e=j+16|0;k=j+12|0;f=j+8|0;h=j+4|0;g=j;c[k>>2]=
a;c[f>>2]=b;b=c[c[k>>2]>>2]|0;a=c[(c[k>>2]|0)+4>>2]|0;if((d[c[c[k>>2
]>>2]>>0]|0|0)==30){c[e>>2]=bi(b,a,0,c[f>>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}c
[h>>2]=ci(b,a)|0;if((c[h>>2]|0)<=32767){c[c[f>>2]>>2]=0;c[e>>2]=c[h>
x3e;2]<<16;k=c[e>>2]|0;i=j;return k|0}c[g>>2]=5;while(1){if((c[g>>2]|0)>=10)break;if
((c[h>>2]|0)<(c[2376+(c[g>>2]<<2)>>2]|0))break;c[g>>2]=(c[g>>2]|
0)+1}a=c[g>>2]|0;if(((c[h>>2]|0)/(c[2376+((c[g>>2]|0)-5<<2)>>2]|0)|0|0)>32767
){c[c[f>>2]>>2]=a-4;c[e>>2]=Vb(c[h>>2]|0,c[2376+((c[g>>2]|0)-4<<2)
x3e;>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}else{c[c[f>>2]>>2]=a-5;c[e>>2]=Vb(c[h>
x3e;2]|0,c[2376+((c[g>>2]|0)-5<<2)>>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}return 0}function
bi(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,v=0,w=0,x=0,y=0,z=0;y=i;i=i+80|
0;z=y+64|0;g=y+60|0;h=y+56|0;t=y+52|0;n=y+48|0;m=y+44|0;o=y+40|0;w=y+36|0;r=y+32|0;u=y+28|0;x=y+24|0;k=y+20|0;j=y+16|0;l=y+12|0;
v=y+8|0;q=y+4|0;s=y;c[z>>2]=a;c[g>>2]=b;c[h>>2]=e;c[t>>2]=f;c[n>>2]=c[z>
x3e;2];c[x>>2]=0;c[k>>2]=0;if(c[t>>2]|0)c[c[t>>2]>>2]=0;c[w>>2]=0;c[
r>>2]=0;c[u>>2]=0;c[j>>2]=0;c[l>>2]=0;c[v>>2]=0;c[o>>2]=4;while(1){if
(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n>>2]|0)>>>0>=(c[g>>2
]|0)>>>0):0){p=54;break}c[m>>2]=(d[c[n>>2]>>0]|0)>>c[o>>2]&
;15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|0)==14){c[x>>2]=1;continue}if((c[m>>2]|0
)>>>0>9)break;if((c[r>>2]|0)>=214748364){c[j>>2]=(c[j>>2]|0)+1;continue}if
(!((c[m>>2]|0)!=0|(c[r>>2]|0)!=0))continue;c[l>>2]=(c[l>>2]|0)+1;c[r>>2]=((c[r
>>2]|0)*10|0)+(c[m>>2]|0)}if((p|0)==54){z=c[w>>2]|0;i=y;return z|0}a:do if((c[m>>2]|0)==
10){while(1){if(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n>>2]|0)>>>0>=(c
[g>>2]|0)>>>0):0)break;c[m>>2]=(d[c[n>>2]>>0]|0)>>c[o>>
;2]&15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|0)>>>0>=10)break a;if(!((c[m>
;>2]|0)!=0|(c[r>>2]|0)!=0)){c[j>>2]=(c[j>>2]|0)+-1;continue}if(!((c[r>>2]|0)<214748364
&(c[v>>2]|0)<9))continue;c[v>>2]=(c[v>>2]|0)+1;c[r>>2]=((c[r>>2]|0)*
10|0)+(c[m>>2]|0)}z=c[w>>2]|0;i=y;return z|0}while(0);if((c[m>>2]|0)==12){c[k>>2]=1;c[m
x3e;>2]=11}do if((c[m>>2]|0)==11){while(1){if(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n
>>2]|0)>>>0>=(c[g>>2]|0)>>>0):0){p=54;break}c[m>>2]=(d[c[n>
;>2]>>0]|0)>>c[o>>2]&15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|
0)>>>0>=10){p=28;break}c[u>>2]=((c[u>>2]|0)*10|0)+(c[m>>2]|0);if((c[u>>
;2]|0)>1e3){p=54;break}}if((p|0)==28){if(!(c[k>>2]|0))break;c[u>>2]=0-(c[u>>2]|0);break}else
if((p|0)==54){z=c[w>>2]|0;i=y;return z|0}}while(0);c[u>>2]=(c[u>>2]|0)+((c[h>>2]|0)+(c[j
>>2]|0));do if(!(c[t>>2]|0)){c[l>>2]=(c[l>>2]|0)+(c[u>>2]|0);c[v>>2]=(
c[v>>2]|0)-(c[u>>2]|0);z=c[l>>2]|0;if((((c[l>>2]|0)<0?0-z|0:z)|0)>5){z=c[w>
;>2]|0;i=y;return z|0}if((c[l>>2]|0)<0){c[r>>2]=(c[r>>2]|0)/(c[2376+(0-(c[l>>2
]|0)<<2)>>2]|0)|0;c[v>>2]=(c[v>>2]|0)+(c[l>>2]|0)}if((c[v>>2]|0)==10
){c[r>>2]=(c[r>>2]|0)/10|0;c[v>>2]=(c[v>>2]|0)-1}if((c[v>>2]|0)>0)if(((c[
r>>2]|0)/(c[2376+(c[v>>2]<<2)>>2]|0)|0|0)>32767){z=c[w>>2]|0;i=y;return z
|0}else{c[w>>2]=Vb(c[r>>2]|0,c[2376+(c[v>>2]<<2)>>2]|0)|0;break}else{c[r>
x3e;2]=_(c[r>>2]|0,c[2376+(0-(c[v>>2]|0)<<2)>>2]|0)|0;if((c[r>>2]|0)>32767
){z=c[w>>2]|0;i=y;return z|0}else{c[w>>2]=c[r>>2]<<16;break}}}else{c[v>>2]=(c[
v>>2]|0)+(c[l>>2]|0);c[u>>2]=(c[u>>2]|0)+(c[l>>2]|0);j=c[r>>2]|0;if((
c[v>>2]|0)>5){g=c[r>>2]|0;h=c[v>>2]|0;if(((j|0)/(c[2376+((c[v>>2]|0)-5<<2
)>>2]|0)|0|0)>32767){c[w>>2]=Vb(g,c[2376+(h-4<<2)>>2]|0)|0;c[c[t>>2]>
;>2]=(c[u>>2]|0)-4;break}else{c[w>>2]=Vb(g,c[2376+(h-5<<2)>>2]|0)|0;c[c[t>>
;2]>>2]=(c[u>>2]|0)-5;break}}if((j|0)>32767){c[w>>2]=Vb(c[r>>2]|0,10)|0;c[c[t>
x3e;2]>>2]=(c[u>>2]|0)-(c[v>>2]|0)+1;break}if((c[u>>2]|0)>0){c[q>>2]=(c[u
>>2]|0)<5?c[u>>2]|0:5;c[u>>2]=(c[u>>2]|0)-(c[q>>2]|0);c[s>>2]=(
c[q>>2]|0)-(c[v>>2]|0);c[r>>2]=_(c[r>>2]|0,c[2376+(c[s>>2]<<2)>
x3e;2]|0)|0;if((c[r>>2]|0)>32767){c[r>>2]=(c[r>>2]|0)/10|0;c[u>>2]=(c[u>>
2]|0)+1}}else c[u>>2]=(c[u>>2]|0)-(c[v>>2]|0);c[w>>2]=c[r>>2]<<16;c[
c[t>>2]>>2]=c[u>>2]}while(0);if(!(c[x>>2]|0)){z=c[w>>2]|0;i=y;return z|0}c[w
x3e;>2]=0-(c[w>>2]|0);z=c[w>>2]|0;i=y;return z|0}function ci(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k
=0;j=i;i=i+32|0;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>>2]=a;c[e>>2]=b;c[f>>2]=c[k>>2
];a=c[f>>2]|0;c[f>>2]=a+1;c[g>>2]=d[a>>0];c[h>>2]=0;do if((c[g>>2]|0
)==28){if(((c[f>>2]|0)+2|0)>>>0<=(c[e>>2]|0)>>>0){c[h>>2]=(((d[
c[f>>2]>>0]|0)<<8|(d[(c[f>>2]|0)+1>>0]|0))&65535)<<16>>
;16;c[f>>2]=(c[f>>2]|0)+2;k=c[h>>2]|0;i=j;return k|0}}else{if((c[g>>2]|0)==29){if(((c[f
x3e;>2]|0)+4|0)>>>0>(c[e>>2]|0)>>>0)break;c[h>>2]=(d[c[f>>
2]>>0]|0)<<24|(d[(c[f>>2]|0)+1>>0]|0)<<16|(d[(c[f>>2]|0)+2>>
;0]|0)<<8|(d[(c[f>>2]|0)+3>>0]|0);c[f>>2]=(c[f>>2]|0)+4;k=c[h>>2]|0;
i=j;return k|0}a=c[g>>2]|0;if((c[g>>2]|0)<247){c[h>>2]=a-139;k=c[h>>2]|0;i=j;return
k|0}b=((c[f>>2]|0)+1|0)>>>0>(c[e>>2]|0)>>>0;if((a|0)<251){if(b)break
;c[h>>2]=((c[g>>2]|0)-247<<8)+(d[c[f>>2]>>0]|0)+108;c[f>>2]=(c[f>
;>2]|0)+1;k=c[h>>2]|0;i=j;return k|0}else{if(b)break;c[h>>2]=(0-((c[g>>2]|0)-251)<<
8)-(d[c[f>>2]>>0]|0)-108;c[f>>2]=(c[f>>2]|0)+1;k=c[h>>2]|0;i=j;return k|0}}while
(0);c[h>>2]=0;k=c[h>>2]|0;i=j;return k|0}function di(a,b){a=a|0;b=b|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]=b;b=c[c[g>>2]>>2]|0;a=c[(c[g>>2]|0)+4>>2]|0;if((
d[c[c[g>>2]>>2]>>0]|0|0)==30){g=bi(b,a,c[e>>2]|0,0)|0;i=f;return g|0}else{g=ci(b,a)|0;g=(
_(g,c[2376+(c[e>>2]<<2)>>2]|0)|0)<<16;i=f;return g|0}return 0}function ei(a){a=a|0;var b
=0,d=0,e=0,f=0,g=0,h=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;b=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[h>>2]=c[(c[g>>
;2]|0)+412>>2];c[b>>2]=(c[h>>2]|0)+80;c[d>>2]=(c[g>>2]|0)+16;c[e>>2]=
161;if((c[(c[g>>2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+16|0)>>>0){
h=c[e>>2]|0;i=f;return h|0}h=c[d>>2]|0;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[c[b>>2]>>
2]=h;h=c[d>>2]|0;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[(c[b>>2]|0)+4>>2]=h;h=c[d>>2]|0
;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[(c[b>>2]|0)+8>>2]=h;h=Tb(fi(c[d>>2]|0)|0)|0;c[(c[b>
x3e;2]|0)+12>>2]=h;c[e>>2]=0;h=c[e>>2]|0;i=f;return h|0}function fi(a){a=a|0;var b=0,e=0,f=0;e=i;i
=i+16|0;f=e;c[f>>2]=a;b=c[c[f>>2]>>2]|0;a=c[(c[f>>2]|0)+4>>2]|0;if((d[c[c[f>
;>2]>>2]>>0]|0|0)==30){f=bi(b,a,0,0)|0;i=e;return f|0}else{f=(ci(b,a)|0)<<16;i=e;return f|0}return
0}function gi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+12|0;d=f+8|0;b=f+4|0;e=f;c[g>>2]=a;c[d>>2]=
c[(c[g>>2]|0)+412>>2];c[b>>2]=(c[g>>2]|0)+16;c[e>>2]=161;if((c[(c[g>>
;2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+8|0)>>>0){g=c[e>>2]|0;i=f
;return g|0}g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+116>>2]=g;g=hi(c[b>>
;2]|0)|0;c[(c[d>>2]|0)+112>>2]=g;c[e>>2]=0;g=c[e>>2]|0;i=f;return g|0}function hi(a){a=a
|0;var b=0,e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=a;b=c[c[f>>2]>>2]|0;a=c[(c[f>>2]|0)+4>
x3e;2]|0;if((d[c[c[f>>2]>>2]>>0]|0|0)==30){f=(bi(b,a,0,0)|0)>>16;i=e;return f|0}else{f=ci
(b,a)|0;i=e;return f|0}return 0}function ii(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+12|0;d=f+8|0;b=f+4|0;e=f;c[g>
x3e;2]=a;c[d>>2]=c[(c[g>>2]|0)+412>>2];c[b>>2]=(c[g>>2]|0)+16;c[e>>2
]=161;if((c[(c[g>>2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+12|0)>>>
0){g=c[e>>2]|0;i=f;return g|0}g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+128>
x3e;2]=g;g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+132>>2]=g;g=hi(c[b>>2
]|0)|0;c[(c[d>>2]|0)+136>>2]=g;c[e>>2]=0;g=c[e>>2]|0;i=f;return g|0}function ji(a,b){a=a
|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;if(c[(c[d>>2]|0)+
28>>2]|0){i=g;return}c[f>>2]=c[c[d>>2]>>2];fe(c[f>>2]|0,c[e>>2]|0);i
=g;return}function ki(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;o=i;i=i+32|0;h=o+20|0;j=o+16|0;k=o+12
|0;p=o+8|0;l=o+4|0;m=o+24|0;n=o;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[p>>2]=g;f=Kc(c[k>
x3e;2]|0,c[p>>2]|0)|0;c[l>>2]=f;if(f|0){p=c[l>>2]|0;i=o;return p|0}a[m>>0]=ke(c[k>
x3e;2]|0,l)|0;if(c[l>>2]|0){p=c[l>>2]|0;i=o;return p|0}a[c[h>>2]>>0]=a[m>>0]|0
;c[(c[h>>2]|0)+20>>2]=0;a:do switch(d[m>>0]|0|0){case 0:{c[(c[h>>2]|0)+12>>2]=
c[j>>2];break}case 3:{c[n>>2]=(Pc(c[k>>2]|0,l)|0)&65535;if(c[l>>2]|0){p=c[l>
x3e;2]|0;i=o;return p|0}else{c[(c[h>>2]|0)+12>>2]=((c[n>>2]|0)*3|0)+2;break a}}default:{c[l>
x3e;2]=3;p=c[l>>2]|0;i=o;return p|0}}while(0);c[l>>2]=de(c[k>>2]|0,c[(c[h>>2]|0)+12>
;>2]|0,(c[h>>2]|0)+8|0)|0;p=c[l>>2]|0;i=o;return p|0}function li(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16
|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;if(!(c[c[b>>2]>>2]|0)){i=f;return}c[e>>2]=c[c[b>
x3e;2]>>2];c[d>>2]=c[(c[e>>2]|0)+28>>2];if(c[(c[b>>2]|0)+28>>2]|0)fe
(c[e>>2]|0,(c[b>>2]|0)+28|0);Fb(c[d>>2]|0,c[(c[b>>2]|0)+24>>2]|0);c[(c[b>
x3e;2]|0)+24>>2]=0;e=c[b>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>
x3e;2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0;i=f;return}function mi(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,v=0,w=0,x=0,y=0;y=i;i=i+48|0;r=y+36|0;s
=y+32|0;t=y+28|0;l=y+24|0;m=y+20|0;u=y+42|0;x=y+16|0;v=y+12|0;n=y+40|0;w=y+8|0;p=y+4|0;o=y;c[r>>2]=d;c[s>>2]=
f;c[t>>2]=g;c[l>>2]=h;c[m>>2]=j;a[u>>0]=k;c[x>>2]=c[(c[t>>2]|0)+28
x3e;>2];c[v>>2]=0;a:do if((c[m>>2]|0)>>>0>2){c[(c[r>>2]|0)+4>>2
]=(c[l>>2]|0)+(c[m>>2]|0);g=Kc(c[t>>2]|0,c[(c[r>>2]|0)+4>>2]|0)|0;c[v>>
;2]=g;if(((g|0)==0?(g=(ke(c[t>>2]|0,v)|0)&255,c[c[r>>2]>>2]=g,(c[v>>2]|0)==0):0)?(g
=hc(c[x>>2]|0,2,0,c[s>>2]|0,0,v)|0,c[(c[r>>2]|0)+8>>2]=g,(c[v>>2]|0)==0):0){b[
c[(c[r>>2]|0)+8>>2]>>1]=0;switch(c[c[r>>2]>>2]|0){case 0:{if((c[s>>2
]|0)>>>0<=0){q=39;break a}p=ee(c[t>>2]|0,(c[s>>2]|0)-1<<1)|0;c[v>>2]=
p;if(p|0)break a;c[w>>2]=1;while(1){l=c[t>>2]|0;if((c[w>>2]|0)>>>0>=(c[s>
x3e;2]|0)>>>0)break;q=ie(l)|0;b[(c[(c[r>>2]|0)+8>>2]|0)+(c[w>>2]<<1)>
;>1]=q;c[w>>2]=(c[w>>2]|0)+1}ge(l);q=39;break a}case 2:case 1:{c[w>>2]=1;b:while(1){if((c[w
x3e;>2]|0)>>>0>=(c[s>>2]|0)>>>0){q=39;break a}b[n>>1]=Pc(c[t>
x3e;2]|0,v)|0;if(c[v>>2]|0)break a;l=c[t>>2]|0;if((c[c[r>>2]>>2]|0)==2){c[p>>2
]=(Pc(l,v)|0)&65535;if(c[v>>2]|0)break a}else{c[p>>2]=(ke(l,v)|0)&255;if(c[v>>2]|0)break
a}if((e[n>>1]|0)>>>0>(65535-(c[p>>2]|0)|0)>>>0)c[p>>2]=65535-(
e[n>>1]|0);c[o>>2]=0;while(1){if((c[w>>2]|0)>>>0>=(c[s>>2]|0)>
x3e;>0)continue b;if((c[o>>2]|0)>>>0>(c[p>>2]|0)>>>0)continue b;b[(c
[(c[r>>2]|0)+8>>2]|0)+(c[w>>2]<<1)>>1]=b[n>>1]|0;c[o>>2]=(
c[o>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1;b[n>>1]=(b[n>>1]|0)+1<<16>
x3e;16}}}default:{c[v>>2]=3;break a}}}}else{c[(c[r>>2]|0)+4>>2]=c[m>>2];switch(c[m>
x3e;2]|0){case 0:{if((c[s>>2]|0)>>>0>229){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0
,c[s>>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+
8>>2]|0,5556,c[s>>2]<<1|0)|0;q=39;break a}case 1:{if((c[s>>2]|0)>>>0>
;166){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0,c[s>>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2
]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+8>>2]|0,6014,c[s>>2]<<1|0)|0;q=39;break
a}case 2:{if((c[s>>2]|0)>>>0>87){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0,c[s>
;>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+8>
x3e;2]|0,6346,c[s>>2]<<1|0)|0;q=39;break a}default:{c[v>>2]=3;break a}}}while(0);if((q|0)==39?a[u
x3e;>0]|0:0)c[v>>2]=ni(c[r>>2]|0,c[s>>2]|0,c[x>>2]|0)|0;if(!(c[v>>2]|0)){
x=c[v>>2]|0;i=y;return x|0}Fb(c[x>>2]|0,c[(c[r>>2]|0)+8>>2]|0);c[(c[r>>2]|0)+8
>>2]=0;Fb(c[x>>2]|0,c[(c[r>>2]|0)+12>>2]|0);c[(c[r>>2]|0)+12>>2]=0;c
[c[r>>2]>>2]=0;c[(c[r>>2]|0)+4>>2]=0;c[(c[r>>2]|0)+8>>2]=0;x=c[v>
;>2]|0;i=y;return x|0}function ni(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;o=i;i=i+32|0;g=o+20|0;h=o+16
|0;j=o+12|0;k=o+8|0;l=o+4|0;m=o;n=o+24|0;c[g>>2]=a;c[h>>2]=d;c[j>>2]=f;c[k>>2]=0;b[n>
;>1]=0;if((c[(c[g>>2]|0)+16>>2]|0)>>>0>0){d=c[k>>2]|0;i=o;return d|0}c[l
x3e;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[h>>2]|0)>>>0)break;if((e[(
c[(c[g>>2]|0)+8>>2]|0)+(c[l>>2]<<1)>>1]|0|0)>(e[n>>1]|0|0))b[n
x3e;>1]=b[(c[(c[g>>2]|0)+8>>2]|0)+(c[l>>2]<<1)>>1]|0;c[l>>2]=(c
[l>>2]|0)+1}d=hc(c[j>>2]|0,2,0,(e[n>>1]|0)+1|0,0,k)|0;c[(c[g>>2]|0)+12>>2]=d;if
(c[k>>2]|0){d=c[k>>2]|0;i=o;return d|0}c[m>>2]=(c[h>>2]|0)-1;while(1){if((c[m>>
;2]|0)<0)break;b[(c[(c[g>>2]|0)+12>>2]|0)+((e[(c[(c[g>>2]|0)+8>>2]|0)+(c[m>>
;2]<<1)>>1]|0)<<1)>>1]=c[m>>2];c[m>>2]=(c[m>>2]|0)+-1}c[(c
[g>>2]|0)+16>>2]=e[n>>1];c[(c[g>>2]|0)+20>>2]=c[h>>2];d=c[k>>
;2]|0;i=o;return d|0}function oi(a,f,g,h,j,k){a=a|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;F=i;i=i+80|0;l=F+64|0;m=F+60|0;o=F+56|0;p=F+52|0;q=F+48|0;r=F+44|0;t=F+40|0;s=F+36|0;z
=F+32|0;x=F+68|0;w=F+28|0;C=F+24|0;B=F+20|0;y=F+16|0;A=F+12|0;v=F+8|0;D=F+4|0;u=F;c[l>>2]=a;c[m>>2]=f;c[o>
;>2]=g;c[p>>2]=h;c[q>>2]=j;c[r>>2]=k;c[t>>2]=0;if(!(c[(c[m>>2]|0)+8>
x3e;2]|0)){c[t>>2]=3;E=c[t>>2]|0;i=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>
x3e;>0>=256)break;b[(c[l>>2]|0)+12+(c[z>>2]<<1)>>1]=0;b[(c[l>>2]|0)+
524+(c[z>>2]<<1)>>1]=0;c[z>>2]=(c[z>>2]|0)+1}if((c[r>>2]|0)>>
;>0<=1){switch(c[r>>2]|0){case 0:{Ss((c[l>>2]|0)+12|0,6520,512)|0;break}case 1:{Ss((c[l>>
;2]|0)+12|0,7032,512)|0;break}default:{c[t>>2]=3;E=c[t>>2]|0;i=F;return E|0}}c[(c[l>>2]|0)+8>
x3e;2]=0;c[t>>2]=ni(c[m>>2]|0,c[o>>2]|0,c[(c[p>>2]|0)+28>>2]|0)|0;if(c[t>
x3e;2]|0){E=c[t>>2]|0;i=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=256
)break;c[D>>2]=e[(c[l>>2]|0)+12+(c[z>>2]<<1)>>1];c[u>>2]=0;if(c[D>
;>2]|0)c[u>>2]=pi(c[m>>2]|0,c[D>>2]|0)|0;if(c[u>>2]|0){b[(c[l>>2]|0)+524+(
c[z>>2]<<1)>>1]=c[u>>2];c[(c[l>>2]|0)+8>>2]=(c[z>>2]|0)+1}
else{b[(c[l>>2]|0)+524+(c[z>>2]<<1)>>1]=0;b[(c[l>>2]|0)+12+(c[z>>2]
x3c;<1)>>1]=0}c[z>>2]=(c[z>>2]|0)+1}E=c[t>>2]|0;i=F;return E|0}c[(c[l>>2]|
0)+4>>2]=(c[q>>2]|0)+(c[r>>2]|0);h=Kc(c[p>>2]|0,c[(c[l>>2]|0)+4>>2]|
0)|0;c[t>>2]=h;if(h|0){E=c[t>>2]|0;i=F;return E|0}h=(ke(c[p>>2]|0,t)|0)&255;c[c[l>>
2]>>2]=h;if(c[t>>2]|0){E=c[t>>2]|0;i=F;return E|0}c[s>>2]=(ke(c[p>>2]|0,t)|0)
x26;255;if(c[t>>2]|0){E=c[t>>2]|0;i=F;return E|0}a:do switch(c[c[l>>2]>>2]&127|0){case
0:{c[(c[l>>2]|0)+8>>2]=(c[s>>2]|0)+1;h=ee(c[p>>2]|0,c[s>>2]|0)|0;c[t>>
;2]=h;if(h|0){E=c[t>>2]|0;i=F;return E|0}c[C>>2]=c[(c[p>>2]|0)+32>>2];c[z>>2]=
1;while(1){if((c[z>>2]|0)>>>0>(c[s>>2]|0)>>>0)break;h=c[C>>2]|0
;c[C>>2]=h+1;c[w>>2]=d[h>>0];if((c[z>>2]|0)>>>0<(c[o>>2]|0
)>>>0){b[(c[l>>2]|0)+524+(c[w>>2]<<1)>>1]=c[z>>2];b[(c[l>
x3e;2]|0)+12+(c[w>>2]<<1)>>1]=b[(c[(c[m>>2]|0)+8>>2]|0)+(c[z>>2]<
;<1)>>1]|0}c[z>>2]=(c[z>>2]|0)+1}ge(c[p>>2]|0);break}case 1:{c[y>>2]=1;c[(
c[l>>2]|0)+8>>2]=0;c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[s>
x3e;2]|0)>>>0){E=30;break}c[w>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break
}c[B>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break}c[B>>2]=(c[B>>2
]|0)+1;if((c[B>>2]|0)>>>0>(c[(c[l>>2]|0)+8>>2]|0)>>>0)c[(c[l>
;>2]|0)+8>>2]=c[B>>2];c[A>>2]=c[y>>2];while(1){if((c[A>>2]|0)>>
x3e;0>=((c[B>>2]|0)+(c[y>>2]|0)|0)>>>0)break;if((c[w>>2]|0)>>>0
<256?(c[A>>2]|0)>>>0<(c[o>>2]|0)>>>0:0){b[(c[l>>2]|0)+524+(
c[w>>2]<<1)>>1]=c[A>>2];b[(c[l>>2]|0)+12+(c[w>>2]<<1)>
;>1]=b[(c[(c[m>>2]|0)+8>>2]|0)+(c[A>>2]<<1)>>1]|0}c[A>>2]=(c[A
x3e;>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1}c[z>>2]=(c[z>>2]|0)+1;c[y>>2]=(c[y>
;>2]|0)+(c[B>>2]|0)}if((E|0)==30){if((c[(c[l>>2]|0)+8>>2]|0)>>>0<=256)break
a;c[(c[l>>2]|0)+8>>2]=256;break a}else if((E|0)==58){E=c[t>>2]|0;i=F;return E|0}break}default:{c[
t>>2]=3;E=c[t>>2]|0;i=F;return E|0}}while(0);if(!(c[c[l>>2]>>2]&128)){E=c[t>
x3e;2]|0;i=F;return E|0}c[s>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=c[t>>2]|0;i
=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[s>>2]|0)>>
x3e;0){E=58;break}c[w>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break}b[x>>1]=
Pc(c[p>>2]|0,t)|0;if(c[t>>2]|0){E=58;break}b[(c[l>>2]|0)+12+(c[w>>2]<<1)>
x3e;1]=b[x>>1]|0;c[v>>2]=0;while(1){if((c[v>>2]|0)>>>0>=(c[o>>2]|0)
x3e;>>0)break;n=c[v>>2]|0;if((e[(c[(c[m>>2]|0)+8>>2]|0)+(c[v>>2]<<1)
x3e;>1]|0|0)==(e[x>>1]|0|0)){E=42;break}c[v>>2]=n+1}if((E|0)==42){E=0;b[(c[l>>2]|0)+524+(c[w
x3e;>2]<<1)>>1]=n}c[z>>2]=(c[z>>2]|0)+1}if((E|0)==58){E=c[t>>2]|0;i=F;return
E|0}return 0}function pi(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>
;2]=b;c[g>>2]=0;if((c[f>>2]|0)>>>0>(c[(c[d>>2]|0)+16>>2]|0)>>
;>0){g=c[g>>2]|0;i=h;return g|0}c[g>>2]=e[(c[(c[d>>2]|0)+12>>2]|0)+(c[f>>
2]<<1)>>1];g=c[g>>2]|0;i=h;return g|0}function qi(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+32|0;n=l+28|0;m=l+24|0;h=l+20|0;j=l+16|0;f=l+12|0;e=l+8|0;g=l+4|0;k=l;c[n>>2]=b;c[m>>2]=d;c
[h>>2]=(c[n>>2]|0)+20;c[j>>2]=c[(c[c[h>>2]>>2]|0)+28>>2];c[k>
x3e;2]=0;c[g>>2]=Zh(c[h>>2]|0,c[m>>2]|0,f,e)|0;if(c[g>>2]|0){n=c[k>>2]|0;i=l;return
n|0}c[k>>2]=bc(c[j>>2]|0,(c[e>>2]|0)+1|0,g)|0;if(!(c[g>>2]|0)){Ss(c[k>>2]|0,c
[f>>2]|0,c[e>>2]|0)|0;a[(c[k>>2]|0)+(c[e>>2]|0)>>0]=0}ji(c[h>>2]|0,f
);n=c[k>>2]|0;i=l;return n|0}function ri(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;e=h+12|0;c[
d>>2]=b;c[f>>2]=0;c[g>>2]=(cs(c[d>>2]|0)|0)+1;a[e>>0]=1;a:while(1){if(!(a[e>
;>0]|0))break;if((c[g>>2]|0)>=7?(a[(c[d>>2]|0)+6>>0]|0)==43:0){c[f>>2]=0;while
(1){if((c[f>>2]|0)>=6)break;if(!(65<=(a[(c[d>>2]|0)+(c[f>>2]|0)>>0]|0)?(a[(c[d
>>2]|0)+(c[f>>2]|0)>>0]|0)<=90:0))a[e>>0]=0;c[f>>2]=(c[f>>2]|0)+
1}if(!(a[e>>0]|0))continue;c[f>>2]=7;while(1){if((c[f>>2]|0)>=(c[g>>2]|0))continue
a;a[(c[d>>2]|0)+((c[f>>2]|0)-7)>>0]=a[(c[d>>2]|0)+(c[f>>2]|0)>>0]|0;
c[f>>2]=(c[f>>2]|0)+1}}a[e>>0]=0}i=h;return}function si(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;g=e+8|0;f=e+4|0;d=e;c[h>>2]=a;c[g>>2]=b;c[d>>2]=oe(c[h>>2]|0,c[g>
;>2]|0,f)|0;c[f>>2]=c[f>>2];i=e;return c[d>>2]|0}function ti(a){a=a|0;var b=0,d=0,e=0,f=0,g=0
,h=0;h=i;i=i+32|0;b=h+16|0;e=h+12|0;f=h+8|0;g=h+4|0;d=h;c[b>>2]=a;c[e>>2]=c[b>>2];if(!(c[e>
x3e;2]|0)){i=h;return}c[f>>2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[e>>2]|0)+532
x3e;>2];if(c[g>>2]|0)Va[c[(c[g>>2]|0)+12>>2]&63](c[e>>2]|0);c[d>>2]=
c[(c[e>>2]|0)+692>>2];if(!(c[d>>2]|0)){i=h;return}ui(c[d>>2]|0);Fb(c[f>>2]|0,c
[(c[e>>2]|0)+692>>2]|0);c[(c[e>>2]|0)+692>>2]=0;i=h;return}function ui(a){a=a|0;var b=0,
d=0,e=0,f=0;f=i;i=i+16|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;c[e>>2]=c[(c[b>>2]|0)+4>>2];li((c
[b>>2]|0)+84|0);li((c[b>>2]|0)+1208|0);li((c[b>>2]|0)+20|0);li((c[b>>2]|0)+1176|0);if((c
[(c[b>>2]|0)+1892>>2]|0)>>>0>0){c[d>>2]=0;while(1){a=c[e>>2]|0;if((c
[d>>2]|0)>>>0>=(c[(c[b>>2]|0)+1892>>2]|0)>>>0)break;vi(a,c[(c[b
>>2]|0)+1896+(c[d>>2]<<2)>>2]|0);c[d>>2]=(c[d>>2]|0)+1}Fb(a,c[(c[b
x3e;>2]|0)+1896>>2]|0);c[(c[b>>2]|0)+1896>>2]=0}wi((c[b>>2]|0)+116|0);xi((c[b>
x3e;2]|0)+1152|0,c[c[b>>2]>>2]|0);vi(c[e>>2]|0,(c[b>>2]|0)+1324|0);zi((c[b>>2]|
0)+2024|0,c[c[b>>2]>>2]|0);Fb(c[e>>2]|0,c[(c[b>>2]|0)+2060>>2]|0);c[(c[b>
x3e;2]|0)+2060>>2]=0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1304>>2]|0);c[(c[b>>2]|0)+1304
>>2]=0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1308>>2]|0);c[(c[b>>2]|0)+1308>>2]=
0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1316>>2]|0);c[(c[b>>2]|0)+1316>>2]=0;Fb(c[e>
x3e;2]|0,c[(c[b>>2]|0)+1320>>2]|0);c[(c[b>>2]|0)+1320>>2]=0;i=f;return}function vi(a,b){
a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=f;return
}li((c[e>>2]|0)+532|0);Fb(c[d>>2]|0,c[(c[e>>2]|0)+564>>2]|0);c[(c[e>>2]|0)+564
>>2]=0;i=f;return}function wi(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]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+8>>2]=0;i=b;return}function xi(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)+28>>2];yi(c[e>>2]|0,c[f>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>
2]|0);c[(c[e>>2]|0)+8>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;i=
d;return}function yi(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;Fb(c[f>
;>2]|0,c[(c[e>>2]|0)+12>>2]|0);c[(c[e>>2]|0)+12>>2]=0;c[(c[e>>2]|0)+16>
;>2]=0;i=d;return}function zi(b,d){b=b|0;d=d|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]=d;if(c[(c[e>>2]|0)+8>>2]|0)fe(c[f>>2]|0,(c[e>>2]|0)+8|0);c[(c[e>>2]|0)+12
x3e;>2]=0;a[c[e>>2]>>0]=0;c[(c[e>>2]|0)+4>>2]=0;i=g;return}function Ai(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;o=i;i=i+240|0;k=o+232|0;n=o+228|0;l=o+224|0;e=o+220|0;b=o+216|0;d=o+212|0;m=o+208
|0;h=o+12|0;g=o+8|0;f=o+4|0;j=o;c[k>>2]=a;c[n>>2]=c[k>>2];c[l>>2]=0;c[e>>2]=Bi
(c[n>>2]|0)|0;do if(c[e>>2]|0){c[b>>2]=c[c[k>>2]>>2];c[d>>2]=c[(c[b
x3e;>2]|0)+692>>2];c[g>>2]=c[(c[c[k>>2]>>2]|0)+100>>2];c[m>>2]=
bc(c[g>>2]|0,132,l)|0;if(c[l>>2]|0){n=c[l>>2]|0;i=o;return n|0}Ci((c[d>>2]|0)+1324|0,h);
c[l>>2]=Oa[c[c[e>>2]>>2]&63](c[(c[c[k>>2]>>2]|0)+100>>2]|0,h,c[
m>>2]|0)|0;if(c[l>>2]|0){n=c[l>>2]|0;i=o;return n|0}c[f>>2]=c[(c[d>>2]|0)+1892
>>2];while(1){if((c[f>>2]|0)>>>0<=0){a=8;break}c[j>>2]=c[(c[d>>2]|0)+
1896+((c[f>>2]|0)-1<<2)>>2];Ci(c[j>>2]|0,h);c[l>>2]=Oa[c[c[e>>2]>
;>2]&63](c[(c[c[k>>2]>>2]|0)+100>>2]|0,h,(c[m>>2]|0)+4+((c[f>>2]|0)-
1<<2)|0)|0;if(c[l>>2]|0){a=10;break}c[f>>2]=(c[f>>2]|0)+-1}if((a|0)==8){c[(c[k>>
;2]|0)+40>>2]=c[m>>2];break}else if((a|0)==10){n=c[l>>2]|0;i=o;return n|0}}while(0);c[(c[n>
x3e;2]|0)+44>>2]=-1;n=c[l>>2]|0;i=o;return n|0}function Bi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=i;i=i+32|0
;f=e+16|0;h=e+12|0;g=e+8|0;d=e+4|0;b=e;c[f>>2]=a;c[h>>2]=c[c[f>>2]>>2];c[g>>2]=
c[(c[h>>2]|0)+692>>2];c[d>>2]=c[(c[g>>2]|0)+2052>>2];c[b>>2]=Wc(c[(c
[(c[c[f>>2]>>2]|0)+96>>2]|0)+4>>2]|0,11524)|0;if(!((c[b>>2]|0)!=0&(c[d>
;>2]|0)!=0)){h=0;i=e;return h|0}if(!(c[c[d>>2]>>2]|0)){h=0;i=e;return h|0}h=Ta[c[c[d>>2]>
;>2]&63](c[b>>2]|0)|0;i=e;return h|0}function Ci(d,e){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;l
=k+16|0;f=k+12|0;h=k+8|0;j=k+4|0;g=k;c[l>>2]=d;c[f>>2]=e;c[h>>2]=(c[l>>2]|0)+172;Ns(c[f
x3e;>2]|0,0,196)|0;d=a[c[h>>2]>>0]|0;a[(c[f>>2]|0)+8>>0]=d;c[g>>2]=d&
;255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break
;b[(c[f>>2]|0)+12+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+4+(c[j>>2]<<
;2)>>2];c[j>>2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|0)+1>>0]|0;a[(c[f>>2]|0)+
9>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c
[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+40+(c[j>>2]<<1)>>1]=c[(c[h>
;>2]|0)+60+(c[j>>2]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|
0)+2>>0]|0;a[(c[f>>2]|0)+10>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if((c[
j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+60+(c[j>
x3e;2]<<1)>>1]=c[(c[h>>2]|0)+100+(c[j>>2]<<2)>>2];c[j>>2]=(
c[j>>2]|0)+1}l=a[(c[h>>2]|0)+3>>0]|0;a[(c[f>>2]|0)+11>>0]=l;c[g>>2]=
l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>
;0)break;b[(c[f>>2]|0)+88+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+156+(c[j>>2
]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}c[(c[f>>2]|0)+108>>2]=c[(c[h>
x3e;2]|0)+196>>2];c[(c[f>>2]|0)+112>>2]=c[(c[h>>2]|0)+200>>2];c[(c[f>>
;2]|0)+116>>2]=c[(c[h>>2]|0)+204>>2];b[(c[f>>2]|0)+120>>1]=c[(c[h>>2
]|0)+208>>2];b[(c[f>>2]|0)+122>>1]=c[(c[h>>2]|0)+212>>2];l=a[(c[h>>2
]|0)+216>>0]|0;a[(c[f>>2]|0)+124>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if
((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+128+(c[j
x3e;>2]<<1)>>1]=c[(c[h>>2]|0)+220+(c[j>>2]<<2)>>2];c[j>>
;2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|0)+217>>0]|0;a[(c[f>>2]|0)+125>>0]=l;c[g>
x3e;2]=l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>
;>0)break;b[(c[f>>2]|0)+154+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+272+(c[j>
x3e;2]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}a[(c[f>>2]|0)+126>>0]=a[(c[h>
;>2]|0)+324>>0]|0;c[(c[f>>2]|0)+184>>2]=c[(c[h>>2]|0)+336>>2];c[(c[f>
;>2]|0)+4>>2]=c[(c[h>>2]|0)+332>>2];i=k;return}function Di(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h
=0,j=0,k=0;h=i;i=i+32|0;j=h+24|0;g=h+20|0;k=h+16|0;b=h+12|0;f=h+8|0;d=h+4|0;e=h;c[j>>2]=a;c[g>>2]=c[j>
x3e;2];c[k>>2]=c[c[g>>2]>>2];c[b>>2]=c[(c[k>>2]|0)+692>>2];c[f>
x3e;2]=c[(c[j>>2]|0)+40>>2];if(!(c[f>>2]|0)){i=h;return}c[d>>2]=Bi(c[g>>2]|0)|
0;if(!(c[d>>2]|0)){i=h;return}Va[c[(c[d>>2]|0)+8>>2]&63](c[c[f>>2]>>2]|0);
c[e>>2]=c[(c[b>>2]|0)+1892>>2];while(1){if((c[e>>2]|0)>>>0<=0)break;
Va[c[(c[d>>2]|0)+8>>2]&63](c[(c[f>>2]|0)+4+((c[e>>2]|0)-1<<2)>>
2]|0);c[e>>2]=(c[e>>2]|0)+-1}i=h;return}function Ei(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;g=i;i=i+32|0;b=
g+20|0;j=g+16|0;h=g+12|0;f=g+8|0;e=g+4|0;d=g;c[b>>2]=a;c[j>>2]=c[(c[b>>2]|0)+4>>2];c[h
x3e;>2]=c[(c[j>>2]|0)+692>>2];c[f>>2]=c[(c[h>>2]|0)+2052>>2];if(!(c[f>
;>2]|0)){i=g;return 0}c[e>>2]=Wc(c[(c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2]|0)+4>>
;2]|0,11524)|0;if(!(c[e>>2]|0)){i=g;return 0}c[d>>2]=Ta[c[(c[f>>2]|0)+8>>2]&63](c[e
>>2]|0)|0;c[(c[(c[b>>2]|0)+156>>2]|0)+36>>2]=c[d>>2];i=g;return 0}function Fi(
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)+156>>2]|0)+36>>2]=0;i=b
;return}function Gi(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o+
20|0;j=o+16|0;k=o+12|0;l=o+8|0;n=o+4|0;m=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[n
x3e;>2]=c[g>>2];c[m>>2]=c[h>>2];if(!(c[n>>2]|0)){c[f>>2]=37;n=c[f>
x3e;2]|0;i=o;return n|0}if(!(c[m>>2]|0))c[k>>2]=c[k>>2]|3;if(c[k>>2]&1|0)c[m>
x3e;2]=0;if(c[m>>2]|0?(c[c[h>>2]>>2]|0)!=(c[(c[g>>2]|0)+4>>2]|0):0){c[f>
x3e;2]=35;n=c[f>>2]|0;i=o;return n|0}c[l>>2]=Hi(c[n>>2]|0,c[m>>2]|0,c[j>>2]|0,
c[k>>2]|0)|0;c[f>>2]=c[l>>2];n=c[f>>2]|0;i=o;return n|0}function Hi(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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;V=i;i=i+1120|0;A=V+1092|0;B=V+1088|0;C=V+1084|0;x=V+1080|0;D=V+1076|0;I=V+1072|0;H=V+144
|0;J=V+140|0;O=V+1113|0;M=V+1112|0;r=V+136|0;K=V+120|0;L=V+112|0;k=V+108|0;m=V+104|0;n=V+100|0;l=V+1104|0;q=V+96|0;p=V+92|0;o=V+
1101|0;s=V+88|0;t=V+84|0;u=V+80|0;v=V+64|0;w=V+56|0;F=V+40|0;P=V+32|0;E=V+24|0;N=V+1100|0;z=V+1098|0;y=V+1096|0;Q=V+16|0;G=V+12|
0;R=V+8|0;S=V+4|0;T=V;c[B>>2]=f;c[C>>2]=g;c[x>>2]=h;c[D>>2]=j;c[J>>2]=c[(c[B
x3e;>2]|0)+4>>2];c[r>>2]=c[(c[J>>2]|0)+692>>2];a[M>>0]=0;if((c[(c[r>
x3e;2]|0)+1324+128>>2]|0)!=65535?c[(c[r>>2]|0)+1152+12>>2]|0:0){if(c[x>>2]|0?(c[x>
x3e;2]=pi((c[r>>2]|0)+1152|0,c[x>>2]|0)|0,(c[x>>2]|0)==0):0){c[A>>2]=6;U=c[A>>
2]|0;i=V;return U|0}}else U=6;if((U|0)==6?(c[x>>2]|0)>>>0>=(c[(c[r>>2]|0)+12>>
2]|0)>>>0:0){c[A>>2]=6;U=c[A>>2]|0;i=V;return U|0}if(c[D>>2]&1024|0)c[D>
x3e;2]=c[D>>2]|3;c[(c[B>>2]|0)+164>>2]=65536;c[(c[B>>2]|0)+168>>2]=65536;if(c[
C>>2]|0){c[(c[B>>2]|0)+164>>2]=c[(c[C>>2]|0)+12+4>>2];c[(c[B>>2]|0)+
168>>2]=c[(c[C>>2]|0)+12+8>>2]}if((((c[C>>2]|0?(c[k>>2]=c[c[C>>2]>
;>2],c[m>>2]=c[(c[k>>2]|0)+532>>2],c[n>>2]=c[(c[k>>2]|0)+104>>2
],(c[(c[C>>2]|0)+44>>2]|0)!=-1):0)?c[(c[m>>2]|0)+140>>2]|0:0)?(c[D>>2]&8|
0)==0:0)?(c[I>>2]=Na[c[(c[m>>2]|0)+104>>2]&1](c[J>>2]|0,c[(c[C>>2]|0)+44
x3e;>2]|0,c[x>>2]|0,c[D>>2]|0,c[n>>2]|0,(c[B>>2]|0)+76|0,l)|0,(c[I>>2]|0)==
0):0){b[(c[B>>2]|0)+108+2>>1]=0;b[(c[B>>2]|0)+108>>1]=0;c[(c[B>>2]|0)+24>
x3e;2]=d[l+1>>0]<<6;c[(c[B>>2]|0)+24+4>>2]=d[l>>0]<<6;c[(c[B>
x3e;2]|0)+24+8>>2]=a[l+2>>0]<<6;c[(c[B>>2]|0)+24+12>>2]=a[l+3>>0]<
;<6;c[(c[B>>2]|0)+24+16>>2]=d[l+4>>0]<<6;c[(c[B>>2]|0)+24+20>>2
]=a[l+5>>0]<<6;c[(c[B>>2]|0)+24+24>>2]=a[l+6>>0]<<6;c[(c[B>>
;2]|0)+24+28>>2]=d[l+7>>0]<<6;c[(c[B>>2]|0)+72>>2]=1651078259;if(c[D>>
;2]&16|0){c[(c[B>>2]|0)+100>>2]=a[l+5>>0];c[(c[B>>2]|0)+104>>2]=a[l+6>
;>0]}else{c[(c[B>>2]|0)+100>>2]=a[l+2>>0];c[(c[B>>2]|0)+104>>2]=a[l+3>
;>0]}c[A>>2]=c[I>>2];U=c[A>>2]|0;i=V;return U|0}if(c[D>>2]&16384|0){c[A>
x3e;2]=6;U=c[A>>2]|0;i=V;return U|0}k=c[r>>2]|0;if(c[(c[r>>2]|0)+1892>>2]|0){a[o>
x3e;0]=Ii(k+2024|0,c[x>>2]|0)|0;if((d[o>>0]|0)>>>0>=(c[(c[r>>2]|0)+1892>
x3e;2]|0)>>>0)a[o>>0]=(c[(c[r>>2]|0)+1892>>2]|0)-1;c[q>>2]=c[(c[r>
x3e;2]|0)+1324+64>>2];c[p>>2]=c[(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|
0)+64>>2];n=(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|0)+48|0;c[K>>2]=c[n
>>2];c[K+4>>2]=c[n+4>>2];c[K+8>>2]=c[n+8>>2];c[K+12>>2]=c[n+12>
x3e;2];o=(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|0)+68|0;c[L>>2]=c[o>>2
];c[L+4>>2]=c[o+4>>2];if((c[q>>2]|0)!=(c[p>>2]|0)){o=xb(c[(c[B>>2]|0)+164>
;>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[(c[B>>2]|0)+164>>2]=o;q=xb(c[(c[B>>2]|0)+
168>>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[(c[B>>2]|0)+168>>2]=q;a[M>>0]=1}}
else{q=k+1324+48|0;c[K>>2]=c[q>>2];c[K+4>>2]=c[q+4>>2];c[K+8>>2]=c[q+8>
x3e;2];c[K+12>>2]=c[q+12>>2];q=(c[r>>2]|0)+1324+68|0;c[L>>2]=c[q>>2];c[L+4>
;>2]=c[q+4>>2]}b[(c[B>>2]|0)+108+2>>1]=0;b[(c[B>>2]|0)+108>>1]=0;if(!(c[D
>>2]&1))k=(c[D>>2]&2|0)==0;else k=0;a[O>>0]=k&1;c[(c[B>>2]|0)+72>>
;2]=1869968492;Ji(H,c[J>>2]|0,c[C>>2]|0,c[B>>2]|0,a[O>>0]|0,c[D>>2]>>
;16&15);if(c[D>>2]&256|0)a[H+753>>0]=1;a[H+66>>0]=c[D>>2]&0;c[I>>
;2]=Mi(c[J>>2]|0,c[x>>2]|0,s,t)|0;do if(((c[I>>2]|0)==0?(c[I>>2]=Ni(H,c[C>>2]|
0,c[x>>2]|0)|0,(c[I>>2]|0)==0):0)?(c[I>>2]=Oi(H,c[s>>2]|0,c[t>>2]|0)|0,Yi(c[J
x3e;>2]|0,s,c[t>>2]|0),(c[I>>2]|0)==0):0){if(c[(c[(c[J>>2]|0)+128>>2]|0)+52>
x3e;2]|0){c[(c[B>>2]|0)+136>>2]=0;c[(c[B>>2]|0)+140>>2]=0;break}c[u>>2]=(c[r
x3e;>2]|0)+1176;if(c[(c[u>>2]|0)+24>>2]|0){c[(c[B>>2]|0)+136>>2]=(c[(c[u>>
;2]|0)+28>>2]|0)+(c[(c[(c[u>>2]|0)+24>>2]|0)+(c[x>>2]<<2)>>2]|0)+-1;
c[(c[B>>2]|0)+140>>2]=c[t>>2]}}while(0);if(!(c[I>>2]|0))Zi(H);if(((c[I>>2]|0)==
0?c[(c[(c[J>>2]|0)+128>>2]|0)+52>>2]|0:0)?c[(c[c[(c[(c[J>>2]|0)+128>>2]|0)+52
x3e;>2]>>2]|0)+8>>2]|0:0){c[v>>2]=c[H+32>>2];c[v+4>>2]=0;c[v+8>>
;2]=c[H+40>>2];c[v+12>>2]=c[H+40+4>>2];c[I>>2]=Wa[c[(c[c[(c[(c[J>>2]|0)+128>
;>2]|0)+52>>2]>>2]|0)+8>>2]&31](c[(c[(c[(c[J>>2]|0)+128>>2]|0)+52>
;>2]|0)+4>>2]|0,c[x>>2]|0,0,v)|0;c[H+32>>2]=c[v>>2];c[H+40>>2]=c[v+8>
;>2];c[H+40+4>>2]=c[v+12>>2]}do if(!(c[I>>2]|0)){k=c[B>>2]|0;if(c[D>>2]
x26;1024|0){c[w>>2]=c[k+156>>2];c[(c[B>>2]|0)+24+8>>2]=c[H+32>>2];c[(c[B>
x3e;2]|0)+24+16>>2]=c[H+744>>2];U=(c[w>>2]|0)+12|0;c[U>>2]=c[K>>2];c[U+4>
x3e;2]=c[K+4>>2];c[U+8>>2]=c[K+8>>2];c[U+12>>2]=c[K+12>>2];U=(c[w>>2
]|0)+28|0;c[U>>2]=c[L>>2];c[U+4>>2]=c[L+4>>2];a[(c[w>>2]|0)+8>>0]=1;
break}c[P>>2]=k+24;c[(c[P>>2]|0)+16>>2]=c[H+744>>2];c[(c[B>>2]|0)+56>>
;2]=c[H+744>>2];a[(c[(c[B>>2]|0)+156>>2]|0)+8>>0]=0;if(d[(c[J>>2]|0)+296>
x3e;0]|0?(e[(c[J>>2]|0)+300+34>>1]|0)>0:0)k=(c[(c[J>>2]|0)+300+36>>2]|0)!=0;else k=
0;a[N>>0]=k&1;do if(!(a[N>>0]|0)){k=c[J>>2]|0;if((e[(c[J>>2]|0)+368>>1]|0
)!=65535){c[(c[P>>2]|0)+28>>2]=(b[k+368+70>>1]|0)-(b[(c[J>>2]|0)+368+72>>1]|0);
break}else{c[(c[P>>2]|0)+28>>2]=(b[k+216+4>>1]|0)-(b[(c[J>>2]|0)+216+6>>1]|0);
break}}else{b[z>>1]=0;b[y>>1]=0;Za[c[(c[(c[J>>2]|0)+532>>2]|0)+156>>2]&31
](c[J>>2]|0,1,c[x>>2]|0,z,y)|0;c[(c[P>>2]|0)+24>>2]=b[z>>1];c[(c[P>>
2]|0)+28>>2]=e[y>>1]}while(0);c[(c[B>>2]|0)+60>>2]=c[(c[P>>2]|0)+28>>
;2];c[(c[B>>2]|0)+72>>2]=1869968492;c[(c[B>>2]|0)+108+16>>2]=0;if(c[C>>2]|0?(e
[(c[C>>2]|0)+12+2>>1]|0)<24:0){J=(c[B>>2]|0)+108+16|0;c[J>>2]=c[J>>2]|256
}J=(c[B>>2]|0)+108+16|0;c[J>>2]=c[J>>2]|4;do if((c[K>>2]|0)==65536?(c[K+12>>2]|
0)==65536:0){if(c[K+4>>2]|0){U=64;break}if(c[K+8>>2]|0)U=64}else U=64;while(0);if((U|0)==64)Kb((c[B>>
;2]|0)+108|0,K);if(!((c[L>>2]|0)==0?!(c[L+4>>2]|0):0))Nb((c[B>>2]|0)+108|0,c[L>>2]|0,c[L
+4>>2]|0);c[E>>2]=c[(c[P>>2]|0)+16>>2];c[E+4>>2]=0;Lb(E,K);c[(c[P>>2
]|0)+16>>2]=(c[E>>2]|0)+(c[L>>2]|0);c[E>>2]=0;c[E+4>>2]=c[(c[P>>2]|0
)+28>>2];Lb(E,K);c[(c[P>>2]|0)+28>>2]=(c[E+4>>2]|0)+(c[L+4>>2]|0);if(!((c[D>
;>2]&1|0)!=0?!(d[M>>0]|0):0)){c[G>>2]=(c[B>>2]|0)+108;c[R>>2]=c[(c[G>>
;2]|0)+4>>2];c[S>>2]=c[(c[B>>2]|0)+164>>2];c[T>>2]=c[(c[B>>2]|0)+168
>>2];if(!(a[O>>0]|0?(c[H+68>>2]|0)!=0:0))U=72;a:do if((U|0)==72){c[Q>>2]=b[(c[G>>
;2]|0)+2>>1];while(1){if((c[Q>>2]|0)<=0)break a;U=Mb(c[c[R>>2]>>2]|0,c[S>>
;2]|0)|0;c[c[R>>2]>>2]=U;U=Mb(c[(c[R>>2]|0)+4>>2]|0,c[T>>2]|0)|0;c[(c[R>
x3e;2]|0)+4>>2]=U;c[Q>>2]=(c[Q>>2]|0)+-1;c[R>>2]=(c[R>>2]|0)+8}}while(0);U=Mb(
c[(c[P>>2]|0)+16>>2]|0,c[S>>2]|0)|0;c[(c[P>>2]|0)+16>>2]=U;U=Mb(c[(c[P>
x3e;2]|0)+28>>2]|0,c[T>>2]|0)|0;c[(c[P>>2]|0)+28>>2]=U}_d((c[B>>2]|0)+108|0,F);
c[c[P>>2]>>2]=(c[F+8>>2]|0)-(c[F>>2]|0);c[(c[P>>2]|0)+4>>2]=(c[F+12
x3e;>2]|0)-(c[F+4>>2]|0);c[(c[P>>2]|0)+8>>2]=c[F>>2];c[(c[P>>2]|0)+12>
;>2]=c[F+12>>2];if(a[N>>0]|0){c[(c[P>>2]|0)+20>>2]=(c[(c[P>>2]|0)+8>
x3e;2]|0)-((c[(c[P>>2]|0)+16>>2]|0)/2|0);break}if(!(c[D>>2]&16))break;Bd(c[P>>2]|0,
c[(c[P>>2]|0)+28>>2]|0)}while(0);c[A>>2]=c[I>>2];U=c[A>>2]|0;i=V;return U|0}function
Ii(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;o=i;i=i+32|0;j=o+20|0;f=o+16|0;k=o+25|0;g=o+12|0;h=o+8|0;l=o+24|0;m
=o+4|0;n=o;c[j>>2]=b;c[f>>2]=e;a[k>>0]=0;switch(d[c[j>>2]>>0]|0|0){case 0:{a[k
>>0]=a[(c[(c[j>>2]|0)+8>>2]|0)+(c[f>>2]|0)>>0]|0;n=a[k>>0]|0;i=o;return
n|0}case 3:{b=c[j>>2]|0;if(((c[f>>2]|0)-(c[(c[j>>2]|0)+16>>2]|0)|0)>>>0
x3c;(c[(c[j>>2]|0)+20>>2]|0)>>>0){a[k>>0]=a[b+24>>0]|0;n=a[k>>0
]|0;i=o;return n|0}c[g>>2]=c[b+8>>2];c[h>>2]=(c[g>>2]|0)+(c[(c[j>>2]|0)+12>
;>2]|0);c[g>>2]=(c[g>>2]|0)+2;c[m>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[g>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;while(1){if((c[f>>
2]|0)>>>0<(c[m>>2]|0)>>>0){b=10;break}e=c[g>>2]|0;c[g>>2]=e+1;a
[l>>0]=a[e>>0]|0;c[g>>2]=(c[g>>2]|0)+2;c[n>>2]=(((d[(c[g>>2]|0)+-2
x3e;>0]|0)&65535)<<8|((d[(c[g>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if
((c[f>>2]|0)>>>0<(c[n>>2]|0)>>>0){b=8;break}c[m>>2]=c[n>
x3e;2];if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>>0){b=10;break}}if((b|0)==8){a[k
x3e;>0]=a[l>>0]|0;c[(c[j>>2]|0)+16>>2]=c[m>>2];c[(c[j>>2]|0)+20>>
;2]=(c[n>>2]|0)-(c[m>>2]|0);a[(c[j>>2]|0)+24>>0]=a[l>>0]|0;n=a[k>>0]|
0;i=o;return n|0}else if((b|0)==10){n=a[k>>0]|0;i=o;return n|0}break}default:{n=a[k>>0]|0;i=o;return n|0}}return
0}function Ji(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;j=i;i=i+32|0;k=j+20|0;q=j+16
|0;p=j+12|0;o=j+8|0;n=j+24|0;l=j+4|0;m=j;c[k>>2]=b;c[q>>2]=d;c[p>>2]=e;c[o>>2]=f;a[n>
;>0]=g;c[l>>2]=h;c[m>>2]=c[(c[q>>2]|0)+692>>2];Ns(c[k>>2]|0,0,928)|0;Ki(c
[k>>2]|0,c[q>>2]|0,c[p>>2]|0,c[o>>2]|0,a[n>>0]|0);c[(c[k>>2]|0)+76
x3e;>2]=c[m>>2];c[(c[k>>2]|0)+892>>2]=c[(c[m>>2]|0)+84+8>>2];c[(c[k>
x3e;2]|0)+908>>2]=c[(c[m>>2]|0)+1308>>2];f=Li(c[(c[m>>2]|0)+1324+44>>2]|0,c[(c
[k>>2]|0)+892>>2]|0)|0;c[(c[k>>2]|0)+900>>2]=f;c[(c[k>>2]|0)+920>>2]=
c[l>>2];i=j;return}function Ki(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;p=i;i=i+32
|0;j=p+20|0;q=p+16|0;k=p+12|0;l=p+8|0;m=p+24|0;o=p+4|0;n=p;c[j>>2]=b;c[q>>2]=e;c[k>>2]=f;c[l>
x3e;2]=g;a[m>>0]=h;a[(c[j>>2]|0)+64>>0]=0;a[(c[j>>2]|0)+65>>0]=1;c[(c[j>
x3e;2]|0)+4>>2]=c[q>>2];c[(c[j>>2]|0)+8>>2]=c[l>>2];c[c[j>>2]>
x3e;2]=c[(c[q>>2]|0)+100>>2];if(c[l>>2]|0?(c[o>>2]=c[c[(c[l>>2]|0)+156>
x3e;2]>>2],c[(c[j>>2]|0)+12>>2]=c[o>>2],c[(c[j>>2]|0)+16>>2]=(c[o>
;>2]|0)+20,c[(c[j>>2]|0)+20>>2]=(c[o>>2]|0)+56,dc(c[o>>2]|0),c[(c[j>>2]|0
)+72>>2]=0,c[(c[j>>2]|0)+68>>2]=0,(d[m>>0]|0|0)!=0&(c[k>>2]|0)!=0):0){c[n
>>2]=c[(c[k>>2]|0)+40>>2];c[(c[j>>2]|0)+72>>2]=c[c[n>>2]>>
2];c[(c[j>>2]|0)+68>>2]=c[(c[(c[l>>2]|0)+156>>2]|0)+36>>2]}c[(c[j>>2
]|0)+24>>2]=0;c[(c[j>>2]|0)+28>>2]=0;c[(c[j>>2]|0)+32>>2]=0;c[(c[j>>
2]|0)+32+4>>2]=0;c[(c[j>>2]|0)+40>>2]=0;c[(c[j>>2]|0)+40+4>>2]=0;i=p;return}function
Li(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[d>>2]=b;do if((c[g>
;>2]|0)!=1){if((c[d>>2]|0)>>>0<1240){c[e>>2]=107;break}if((c[d>>2]|0)>
;>>0<33900){c[e>>2]=1131;break}else{c[e>>2]=32768;break}}else c[e>>2]=0;while(0);i=
f;return c[e>>2]|0}function Mi(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;o=i;i=i+48|0;f
=o+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;m=o+8|0;n=o+4|0;l=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k
x3e;>2]=e;a=c[g>>2]|0;if(c[(c[(c[g>>2]|0)+128>>2]|0)+52>>2]|0){c[n>>2]=Oa
[c[c[c[(c[a+128>>2]|0)+52>>2]>>2]>>2]&63](c[(c[(c[(c[g>>2]|0)+128>
x3e;2]|0)+52>>2]|0)+4>>2]|0,c[h>>2]|0,m)|0;c[c[j>>2]>>2]=c[m>>2];c[c
[k>>2]>>2]=c[m+4>>2];c[f>>2]=c[n>>2];n=c[f>>2]|0;i=o;return n|0}else
{c[l>>2]=c[a+692>>2];c[f>>2]=Zh((c[l>>2]|0)+1176|0,c[h>>2]|0,c[j>>2]|
0,c[k>>2]|0)|0;n=c[f>>2]|0;i=o;return n|0}return 0}function Ni(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;q=i;i=i+48|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;l=q+12|0;p=q+8|0;m=q+4|0;n=q+32|0;o=q;c[g>>2]=
b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=c[g>>2];c[l>>2]=c[(c[(c[k>>2]|0)+4>
;>2]|0)+692>>2];c[p>>2]=(c[l>>2]|0)+1324;c[m>>2]=0;do if(c[(c[l>>2]|0)+1892
>>2]|0){a[n>>0]=Ii((c[l>>2]|0)+2024|0,c[j>>2]|0)|0;if((d[n>>0]|0)>>
x3e;0>=(c[(c[l>>2]|0)+1892>>2]|0)>>>0){c[m>>2]=3;p=c[m>>2]|0;i=q;return
p|0}else{c[p>>2]=c[(c[l>>2]|0)+1896+((d[n>>0]|0)<<2)>>2];if(!(c[h>>
2]|0?(c[(c[k>>2]|0)+68>>2]|0)!=0:0))break;c[o>>2]=c[(c[h>>2]|0)+40>>2];c[(c[k
x3e;>2]|0)+72>>2]=c[(c[o>>2]|0)+4+((d[n>>0]|0)<<2)>>2];break}}while(0);c[(
c[g>>2]|0)+888>>2]=c[(c[p>>2]|0)+532+8>>2];c[(c[g>>2]|0)+904>>2]=c[(
c[p>>2]|0)+564>>2];e=Li(c[(c[(c[g>>2]|0)+76>>2]|0)+1324+44>>2]|0,c[(c[g>
x3e;2]|0)+888>>2]|0)|0;c[(c[g>>2]|0)+896>>2]=e;c[(c[g>>2]|0)+744>>2]=c[(c[p>
;>2]|0)+172+352>>2];c[(c[g>>2]|0)+748>>2]=c[(c[p>>2]|0)+172+356>>2];p=c[m
>>2]|0;i=q;return p|0}function Oi(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,$=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;ta=i;i=i+272|0;h=
ta+256|0;j=ta+252|0;va=ta+248|0;ua=ta+244|0;y=ta+240|0;ra=ta+236|0;K=ta+232|0;L=ta+228|0;m=ta+224|0;pa=ta+220|0;qa=ta+216|0;$=ta
+212|0;ca=ta+208|0;n=ta+204|0;A=ta+200|0;W=ta+196|0;la=ta+260|0;ba=ta+192|0;ma=ta+188|0;l=ta+184|0;T=ta+180|0;Z=ta+176|0;aa=ta+172
|0;X=ta+168|0;M=ta+164|0;N=ta+160|0;O=ta+156|0;Y=ta+152|0;P=ta+148|0;V=ta+144|0;Q=ta+140|0;U=ta+136|0;R=ta+132|0;ea=ta+128|0;fa=
ta+124|0;da=ta+120|0;ga=ta+116|0;w=ta+112|0;x=ta+108|0;B=ta+104|0;s=ta+100|0;ha=ta+96|0;v=ta+92|0;z=ta+88|0;k=ta+84|0;t=ta+80|0;
_=ta+76|0;S=ta+72|0;ia=ta+68|0;E=ta+64|0;u=ta+60|0;F=ta+56|0;ja=ta+52|0;C=ta+48|0;ka=ta+44|0;D=ta+40|0;na=ta+36|0;G=ta+32|0;H=ta
+28|0;oa=ta+24|0;o=ta+20|0;p=ta+16|0;q=ta+12|0;r=ta+8|0;I=ta+4|0;J=ta;c[j>>2]=e;c[va>>2]=f;c[ua>>2
]=g;c[m>>2]=c[j>>2];c[n>>2]=c[(c[(c[j>>2]|0)+76>>2]|0)+1324+44>>2];c
[(c[j>>2]|0)+756>>2]=0;a[(c[j>>2]|0)+752>>0]=1;c[$>>2]=$^j^va;e=(c[$>>
;2]^c[$>>2]>>10^c[$>>2]>>20)&65535;c[$>>2]=e;c[$>>2]=(c[$>
x3e;2]|0)==0?29572:e;c[(c[j>>2]|0)+276>>2]=(c[j>>2]|0)+80;c[(c[j>>2]|0)+676>>2
]=(c[j>>2]|0)+280;c[ra>>2]=(c[j>>2]|0)+280;c[ca>>2]=c[(c[j>>2]|0)+276>>
;2];c[A>>2]=c[(c[m>>2]|0)+68>>2];a[(c[m>>2]|0)+64>>0]=0;c[c[ra>>2]
x3e;>2]=c[va>>2];e=(c[va>>2]|0)+(c[ua>>2]|0)|0;c[(c[ra>>2]|0)+4>>2]=e;c[L
>>2]=e;e=c[c[ra>>2]>>2]|0;c[(c[ra>>2]|0)+8>>2]=e;c[K>>2]=e;c[y>
x3e;2]=0;c[pa>>2]=c[(c[m>>2]|0)+24>>2];c[qa>>2]=c[(c[m>>2]|0)+28>>2];
if(c[A>>2]|0)Va[c[(c[A>>2]|0)+4>>2]&63](c[c[A>>2]>>2]|0);a:while(1){if((c
[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0){sa=307;break}va=c[K>>2]|0;c[K
x3e;>2]=va+1;a[la>>0]=a[va>>0]|0;if((d[la>>0]|0)<32?(d[la>>0]|0)!=28:0){c[l>
;>2]=c[(c[j>>2]|0)+276>>2];c[T>>2]=((c[l>>2]|0)-((c[j>>2]|0)+80)|0)/4|0;c
[W>>2]=0;b:do switch(d[la>>0]|0){case 1:{c[W>>2]=19;break}case 3:{c[W>>2]=20;break}case
4:{c[W>>2]=3;break}case 5:{c[W>>2]=4;break}case 6:{c[W>>2]=5;break}case 7:{c[W>>2]=6;break
}case 8:{c[W>>2]=7;break}case 9:{c[W>>2]=53;break}case 10:{c[W>>2]=49;break}case 11:{c[W>>
;2]=51;break}case 12:{if((c[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0)break a;va=c[K
x3e;>2]|0;c[K>>2]=va+1;a[la>>0]=a[va>>0]|0;do switch(d[la>>0]|0){case 0:{c[W>
x3e;2]=25;break b}case 1:{c[W>>2]=20;break b}case 2:{c[W>>2]=19;break b}case 3:{c[W>>2]=44;break b
}case 4:{c[W>>2]=45;break b}case 5:{c[W>>2]=46;break b}case 6:{c[W>>2]=56;break b}case 7:{c[W>
;>2]=57;break b}case 8:{c[W>>2]=42;break b}case 9:{c[W>>2]=26;break b}case 10:{c[W>>2]=27;break
b}case 11:{c[W>>2]=28;break b}case 12:{c[W>>2]=29;break b}case 13:{c[W>>2]=43;break b}case 14:{c[
W>>2]=30;break b}case 15:{c[W>>2]=47;break b}case 16:{c[W>>2]=54;break b}case 17:{c[W>>2
]=55;break b}case 18:{c[W>>2]=35;break b}case 20:{c[W>>2]=40;break b}case 21:{c[W>>2]=41;break b}case
22:{c[W>>2]=48;break b}case 23:{c[W>>2]=31;break b}case 24:{c[W>>2]=32;break b}case 26:{c[W>
x3e;2]=33;break b}case 27:{c[W>>2]=39;break b}case 28:{c[W>>2]=36;break b}case 29:{c[W>>2]=37;break
b}case 30:{c[W>>2]=38;break b}case 33:{c[W>>2]=58;break b}case 34:{c[W>>2]=15;break b}case 35:{c[
W>>2]=14;break b}case 36:{c[W>>2]=16;break b}case 37:{c[W>>2]=17;break b}default:{c[K>>2
]=(c[K>>2]|0)+-1;break b}}while(0)}case 13:{c[W>>2]=52;break}case 14:{c[W>>2]=18;break}case 16:{c[
W>>2]=34;break}case 18:{c[W>>2]=21;break}case 19:{c[W>>2]=23;break}case 20:{c[W>>2]=24;break
}case 21:{c[W>>2]=1;break}case 22:{c[W>>2]=2;break}case 23:{c[W>>2]=22;break}case 24:{c[W>>
;2]=10;break}case 25:{c[W>>2]=11;break}case 26:{c[W>>2]=13;break}case 27:{c[W>>2]=8;break}case 29:{
c[W>>2]=50;break}case 30:{c[W>>2]=12;break}case 31:{c[W>>2]=9;break}default:{}}while(0);if(!(c[W
x3e;>2]|0))break;c[Z>>2]=d[11281+(c[W>>2]|0)>>0];if(c[Z>>2]&128|0){if((c[T>
;>2]|0)>0?d[(c[j>>2]|0)+752>>0]|0:0){switch(c[W>>2]|0){case 3:case 2:{c[aa>>2]=
c[T>>2]&2;break}case 24:case 23:case 1:case 22:case 21:case 20:case 19:{c[aa>>2]=c[T>>2]&
;1;break}case 18:{c[aa>>2]=((c[T>>2]|0)==5?1:(c[T>>2]|0)==1)&1;break}default:c[aa>>
2]=0}if(c[aa>>2]|0){c[(c[j>>2]|0)+744>>2]=(c[(c[j>>2]|0)+748>>2]|0)+(c[c[ca>
;>2]>>2]>>16);if(a[(c[j>>2]|0)+753>>0]|0){sa=307;break}c[T>>2]=(c[T>
x3e;2]|0)+-1}}a[(c[j>>2]|0)+752>>0]=0;c[Z>>2]=0}c[Z>>2]=c[Z>>2]&15;if((c[
T>>2]|0)<(c[Z>>2]|0)){sa=309;break}c[l>>2]=(c[l>>2]|0)+(0-(c[Z>>2]|0)<
;<2);c[T>>2]=(c[T>>2]|0)-(c[Z>>2]|0);do switch(c[W>>2]|0){case 56:{sa=220;break a}case
18:{sa=221;break a}case 22:case 21:case 20:case 19:{if(c[A>>2]|0)_a[c[(c[A>>2]|0)+12>>2]&15](
c[c[A>>2]>>2]|0,((c[W>>2]|0)==19?1:(c[W>>2]|0)==21)&1,(c[T>>2]|0)/2|0,(c[
l>>2]|0)+(0-(c[T>>2]&-2)<<2)|0);va=(c[j>>2]|0)+756|0;c[va>>2]=(c[va>
x3e;2]|0)+((c[T>>2]|0)/2|0);c[l>>2]=c[ca>>2];break}case 24:case 23:{if((c[T>>2]|0)>
0){if(c[A>>2]|0)_a[c[(c[A>>2]|0)+12>>2]&15](c[c[A>>2]>>2]|0,0,(c[T>
x3e;2]|0)/2|0,(c[l>>2]|0)+(0-(c[T>>2]&-2)<<2)|0);va=(c[j>>2]|0)+756|0;c[va>>
;2]=(c[va>>2]|0)+((c[T>>2]|0)/2|0)}if(((c[K>>2]|0)+((c[(c[j>>2]|0)+756>>2]|0)+
7>>3)|0)>>>0>=(c[L>>2]|0)>>>0)break a;do if(c[A>>2]|0){f=c[A>
;>2]|0;if((c[W>>2]|0)==23){_a[c[f+16>>2]&15](c[c[A>>2]>>2]|0,b[(c[(c[m>
x3e;2]|0)+20>>2]|0)+2>>1]|0,c[(c[j>>2]|0)+756>>2]|0,c[K>>2]|0);break}else{Ua[c
[f+20>>2]&31](c[c[A>>2]>>2]|0,c[(c[j>>2]|0)+756>>2]|0,c[K>>2]|0
);break}}while(0);c[K>>2]=(c[K>>2]|0)+((c[(c[j>>2]|0)+756>>2]|0)+7>>3);c[l>
;>2]=c[ca>>2];break}case 1:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64>>0]=0;c[pa>>2]=(
c[pa>>2]|0)+(c[(c[l>>2]|0)+-8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>
2]|0)+-4>>2]|0);c[l>>2]=c[ca>>2];break}case 3:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64
x3e;>0]=0;c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+-4>>2]|0);c[l>>2]=c[ca>
;>2];break}case 2:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64>>0]=0;c[pa>>2]=(c[pa>>2
]|0)+(c[(c[l>>2]|0)+-4>>2]|0);c[l>>2]=c[ca>>2];break}case 4:{if(Qi(c[m>>2]|0,c
[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[T>>2]|0)/2|0)|0){sa=307;break
a}if((c[T>>2]|0)<2){sa=309;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[T>>2]&-2)<
x3c;2);while(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>
;0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|
0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>
;2]=(c[l>>2]|0)+8}c[l>>2]=c[ca>>2];break}case 6:case 5:{c[X>>2]=(c[W>>2]|0)==5
&1;if((c[T>>2]|0)<1){sa=309;break a}if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){
sa=307;break a}if(Ti(c[m>>2]|0,c[T>>2]|0)|0){sa=307;break a}c[l>>2]=c[ca>>2];while(1){if
((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;f=c[c[l
x3e;>2]>>2]|0;if(c[X>>2]|0)c[pa>>2]=(c[pa>>2]|0)+f;else c[qa>>2]=(c[qa>
;>2]|0)+f;if(Si(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>
;>2]|0)+4;c[X>>2]=c[X>>2]^1}c[l>>2]=c[ca>>2];break}case 7:{if((c[T>>2]|0)
x3c;6){sa=309;break a}c[M>>2]=(c[T>>2]|0)-((c[T>>2]|0)%6|0);if(Qi(c[m>>2]|0,c[pa>
x3e;2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[M>>2]|0)/2|0)|0){sa=307;break a}c[l>
;>2]=(c[l>>2]|0)+(0-(c[M>>2]|0)<<2);while(1){if((c[l>>2]|0)>>>0>
;=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>
x3e;2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>
2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>
;2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>
x3e;2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>
;>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0,1);c[l>>2]=(c[l>>2]|0)+24}c[l>>2]=c[ca>>2];break}case 13:{if((c[T>
x3e;2]|0)<4){sa=309;break a}c[N>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0)-(
c[N>>2]|0)|0)>0)c[N>>2]=(c[N>>2]|0)+1;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[N>>2]|0)<<2);if(c[N>>
2]&1|0){c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2
]|0)+4;c[N>>2]=(c[N>>2]|0)+-1}if(Ti(c[m>>2]|0,((c[N>>2]|0)/4|0)*3|0)|0){sa=307;break a}while
(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;c[qa
>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>
;>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[qa
>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c
[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+16}c[l>>2]=c[ca>>2];break}case 8:{if((c[T>
;>2]|0)<4){sa=309;break a}c[O>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0
)-(c[O>>2]|0)|0)>0)c[O>>2]=(c[O>>2]|0)+1;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[O>>2]|0)<<2);if(c[O>>
;2]&1|0){c[qa>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>
2]|0)+4;c[O>>2]=(c[O>>2]|0)+-1}if(Ti(c[m>>2]|0,((c[O>>2]|0)/4|0)*3|0)|0){sa=307;break a}
while(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break
;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa
>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[
qa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0
,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+16}c[l>>2]=c[ca>>2];break}case 9:case
12:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if((c[T>>2]|0)<4){sa=309
;break a}c[P>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0)-(c[P>>2]|0)|0)
x3e;0)c[P>>2]=(c[P>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+(0-(c[P>>2]|0)<<2);if
(Ti(c[m>>2]|0,((c[P>>2]|0)/4|0)*3|0)|0){sa=309;break a}c[Y>>2]=(c[W>>2]|0)==9&1;while
(1){if((c[P>>2]|0)<4)break;c[P>>2]=(c[P>>2]|0)-4;f=c[c[l>>2]>>2]|0;if(c[Y
>>2]|0){c[pa>>2]=(c[pa>>2]|0)+f;Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0
);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0
)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[qa>>
;2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);if((c[P>>2]|0)==1)c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1)}else
{c[qa>>2]=(c[qa>>2]|0)+f;Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>
;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
x3e;2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
x3e;2]|0)+(c[(c[l>>2]|0)+12>>2]|0);if((c[P>>2]|0)==1)c[qa>>2]=(c[qa>>2]|0)+(c[(
c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1)}c[l>>2]=(
c[l>>2]|0)+16;c[Y>>2]=c[Y>>2]^1}c[l>>2]=c[ca>>2];break}case 11:{if((c[T>
x3e;2]|0)<8){sa=309;break a}c[Q>>2]=c[T>>2]&-2;c[V>>2]=((c[Q>>2]|0)-6|0)/2|0;if
(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[V>>2
]|0)+3|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[Q>>2]|0)<<2);while(1){va=(c[V>
;>2]|0)>0;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>
;>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);f=c[m>>2]|0;g=c[pa>>2]|0;e=c[qa>>2]|0;if(!
va)break;Ui(f,g,e,1);c[l>>2]=(c[l>>2]|0)+8;c[V>>2]=(c[V>>2]|0)+-1}Ui(f,g,e,0);c[pa>
x3e;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
;>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20
x3e;>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case
10:{if((c[T>>2]|0)<8){sa=309;break a}c[R>>2]=(c[T>>2]|0)-2;c[R>>2]=(c[R>>
;2]|0)-((c[R>>2]|0)%6|0)+2;c[U>>2]=((c[R>>2]|0)-2|0)/6|0;if(Qi(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,((c[U>>2]|0)*3|0)+2|0)|0){sa=307;break a}c[l
x3e;>2]=(c[l>>2]|0)+(0-(c[R>>2]|0)<<2);while(1){va=(c[U>>2]|0)>0;c[pa>>
;2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|
0)+4>>2]|0);f=c[m>>2]|0;g=c[pa>>2]|0;e=c[qa>>2]|0;if(!va)break;Ui(f,g,e,0);c[pa>>
;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
x3e;2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
x3e;2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20>
;>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+24;c[U
x3e;>2]=(c[U>>2]|0)+-1}Ui(f,g,e,1);c[l>>2]=c[ca>>2];break}case 16:{if(Qi(c[m>>2]|0,
c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;break a}c[ea>>2]=c
[qa>>2];c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>
x3e;2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa
x3e;>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[
l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c
[pa>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|
0,1);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);Ui(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0);c[qa>
x3e;2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+28>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+32>>2]|0);c[qa>>2]=c[ea>
;>2];Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 15
:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;
break a}c[fa>>2]=c[qa>>2];c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);Ui
(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2
]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>
2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+12>>
;2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>
;>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);c[qa>>2]=c[fa>>2];Ui(c[m>>2]|0,c[pa>
;>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0);Ui(c[
m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 17:{c[w>>
;2]=0;c[x>>2]=0;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>
x3e;2]|0,6)|0){sa=307;break a}c[da>>2]=c[pa>>2];c[ga>>2]=c[qa>>2];c[ha>>2]=c[l
>>2];c[s>>2]=5;while(1){if((c[s>>2]|0)<=0)break;c[w>>2]=(c[w>>2]|0)+(c[c[
ha>>2]>>2]|0);c[x>>2]=(c[x>>2]|0)+(c[(c[ha>>2]|0)+4>>2]|0);c[ha>
;>2]=(c[ha>>2]|0)+8;c[s>>2]=(c[s>>2]|0)+-1}if((c[w>>2]|0)<0)c[w>>2]=
0-(c[w>>2]|0);if((c[x>>2]|0)<0)c[x>>2]=0-(c[x>>2]|0);c[B>>2]=(c[w>
x3e;2]|0)>(c[x>>2]|0)&1;c[s>>2]=5;while(1){if((c[s>>2]|0)<=0)break;c[pa>>
2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|
0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,(c[s>>2]|0)==3&255);c[l>
;>2]=(c[l>>2]|0)+8;c[s>>2]=(c[s>>2]|0)+-1}if(c[B>>2]|0){c[pa>>2]=(c[pa>
;>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=c[ga>>2]}else{c[pa>>2]=c[da>>
;2];c[qa>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0)}Ui(c[m>>2]|0,c[pa>>2]|0,
c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 14:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;break a}c[v>>2]=6;while(1){if((c[v>>
;2]|0)>>>0<=0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>
;>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,((c[v>>2]|0)==4?1:(c[v>>2]|0)==1)&1);c[l>>2]=(c[l>>2]|0)+8;c[v>>
;2]=(c[v>>2]|0)+-1}c[l>>2]=c[ca>>2];break}case 26:{if((c[c[l>>2]>>2]|0)<0
)c[c[l>>2]>>2]=0-(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case
27:{va=c[l>>2]|0;c[va>>2]=(c[va>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>
2]=(c[l>>2]|0)+4;break}case 28:{va=c[l>>2]|0;c[va>>2]=(c[va>>2]|0)-(c[(c[l>>2]|
0)+4>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case 29:{va=Vb(c[c[l>>2]>>2]|0,c[(c[l
x3e;>2]|0)+4>>2]|0)|0;c[c[l>>2]>>2]=va;c[l>>2]=(c[l>>2]|0)+4;break}case 30
:{c[c[l>>2]>>2]=0-(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case
31:{c[k>>2]=c[$>>2];if((c[k>>2]|0)>=32768)c[k>>2]=(c[k>>2]|0)+1;c[c[l>
;>2]>>2]=c[k>>2];c[$>>2]=Mb(c[$>>2]|0,65536-(c[$>>2]|0)|0)|0;if(!(c[$>
;>2]|0))c[$>>2]=(c[$>>2]|0)+10355;c[l>>2]=(c[l>>2]|0)+4;break}case 32:{va=Mb(c[c[l
x3e;>2]>>2]|0,c[(c[l>>2]|0)+4>>2]|0)|0;c[c[l>>2]>>2]=va;c[l>>2]=(
c[l>>2]|0)+4;break}case 33:{if((c[c[l>>2]>>2]|0)>0){c[t>>2]=9;c[_>>2]=c[c
[l>>2]>>2];while(1){f=c[_>>2]|0;c[S>>2]=f+(Vb(c[c[l>>2]>>2]|0,c[_>
;>2]|0)|0)+1>>1;f=c[S>>2]|0;if((c[t>>2]|0)<=0?1:(c[S>>2]|0)==(c[_>>2
]|0))break;c[_>>2]=f}c[c[l>>2]>>2]=f}else c[c[l>>2]>>2]=0;c[l>>2]=(c
[l>>2]|0)+4;break}case 25:case 35:break;case 36:{c[ia>>2]=c[c[l>>2]>>2];c[c[l>>
;2]>>2]=c[(c[l>>2]|0)+4>>2];c[(c[l>>2]|0)+4>>2]=c[ia>>2];c[l>
x3e;2]=(c[l>>2]|0)+8;break}case 37:{c[E>>2]=c[c[l>>2]>>2]>>16;if((c[E>>
;2]|0)>=0){if((c[E>>2]|0)>((c[T>>2]|0)-2|0))c[E>>2]=(c[T>>2]|0)-2}else c[E>
;>2]=0;c[c[l>>2]>>2]=c[(c[l>>2]|0)+(0-((c[E>>2]|0)+1)<<2)>>2];c
[l>>2]=(c[l>>2]|0)+4;break}case 38:{c[u>>2]=c[c[l>>2]>>2]>>16;c[F>
;>2]=c[(c[l>>2]|0)+4>>2]>>16;if((c[u>>2]|0)<=0)c[u>>2]=1;c[l>
x3e;2]=(c[l>>2]|0)+(0-(c[u>>2]|0)<<2);if((c[l>>2]|0)>>>0<(c[ca>
x3e;2]|0)>>>0){sa=309;break a}c:do if((c[F>>2]|0)>=0)while(1){if((c[F>>2]|0)<=0)break
c;c[ja>>2]=c[(c[l>>2]|0)+((c[u>>2]|0)-1<<2)>>2];c[C>>2]=(c[u>
x3e;2]|0)-2;while(1){if((c[C>>2]|0)<0)break;c[(c[l>>2]|0)+((c[C>>2]|0)+1<<2)>
x3e;2]=c[(c[l>>2]|0)+(c[C>>2]<<2)>>2];c[C>>2]=(c[C>>2]|0)+-1}c[c[l
x3e;>2]>>2]=c[ja>>2];c[F>>2]=(c[F>>2]|0)+-1}else while(1){if((c[F>>2]|0)
x3e;=0)break c;c[ka>>2]=c[c[l>>2]>>2];c[D>>2]=0;while(1){if((c[D>>2]|0)>=((
c[u>>2]|0)-1|0))break;c[(c[l>>2]|0)+(c[D>>2]<<2)>>2]=c[(c[l>>2]|0)+((
c[D>>2]|0)+1<<2)>>2];c[D>>2]=(c[D>>2]|0)+1}c[(c[l>>2]|0)+((c[u>
x3e;2]|0)-1<<2)>>2]=c[ka>>2];c[F>>2]=(c[F>>2]|0)+1}while(0);c[l>>2]=(
c[l>>2]|0)+(c[u>>2]<<2);break}case 39:{c[(c[l>>2]|0)+4>>2]=c[c[l>>2]
x3e;>2];c[l>>2]=(c[l>>2]|0)+8;break}case 40:{c[na>>2]=c[c[l>>2]>>2];c[G
x3e;>2]=c[(c[l>>2]|0)+4>>2]>>16;if((c[G>>2]|0)>=0&(c[G>>2]|0)
x3c;32)c[(c[j>>2]|0)+760+(c[G>>2]<<2)>>2]=c[na>>2];break}case 41:{c[H>>
;2]=c[c[l>>2]>>2]>>16;c[oa>>2]=0;if((c[H>>2]|0)>=0&(c[H>>2
]|0)<32)c[oa>>2]=c[(c[j>>2]|0)+760+(c[H>>2]<<2)>>2];c[c[l>>2]
x3e;>2]=c[oa>>2];c[l>>2]=(c[l>>2]|0)+4;break}case 51:{if((c[(c[j>>2]|0)+676>
x3e;2]|0)>>>0<=((c[j>>2]|0)+280|0)>>>0)break a;va=(c[j>>2]|0)+676|0;c[va
x3e;>2]=(c[va>>2]|0)+-12;c[ra>>2]=c[(c[j>>2]|0)+676>>2];c[K>>2]=c[(c[ra
x3e;>2]|0)+8>>2];c[L>>2]=c[(c[ra>>2]|0)+4>>2];break}case 50:{c[J>>2]=(c[c
[l>>2]>>2]>>16)+(c[(c[j>>2]|0)+900>>2]|0);if((c[J>>2]|0)>>
x3e;0>=(c[(c[j>>2]|0)+892>>2]|0)>>>0)break a;if((((c[ra>>2]|0)-((c[j>>
;2]|0)+280)|0)/12|0|0)>=32)break a;c[(c[ra>>2]|0)+8>>2]=c[K>>2];c[ra>>2]=(c[ra>
;>2]|0)+12;c[c[ra>>2]>>2]=c[(c[(c[j>>2]|0)+908>>2]|0)+(c[J>>2]<<
;2)>>2];c[(c[ra>>2]|0)+4>>2]=c[(c[(c[j>>2]|0)+908>>2]|0)+((c[J>>2]|0
)+1<<2)>>2];c[(c[ra>>2]|0)+8>>2]=c[c[ra>>2]>>2];if(!(c[c[ra>>
;2]>>2]|0))break a;if((c[(c[ra>>2]|0)+4>>2]|0)==(c[c[ra>>2]>>2]|0))break a;c[(
c[j>>2]|0)+676>>2]=c[ra>>2];c[K>>2]=c[c[ra>>2]>>2];c[L>>2]=
c[(c[ra>>2]|0)+4>>2];break}case 53:{c[l>>2]=c[ca>>2];break}case 52:{c[(c[j>>2]|
0)+744>>2]=(c[(c[j>>2]|0)+748>>2]|0)+(c[(c[l>>2]|0)+4>>2]>>16);c[(c[
j>>2]|0)+32>>2]=c[c[l>>2]>>2];c[(c[j>>2]|0)+32+4>>2]=0;c[pa>>
;2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=c[(c[j>>2]|0
)+28>>2];c[l>>2]=c[ca>>2];break}case 57:{c[(c[j>>2]|0)+744>>2]=(c[(c[j>
x3e;2]|0)+748>>2]|0)+(c[(c[l>>2]|0)+8>>2]>>16);c[(c[j>>2]|0)+32>>2]=
c[c[l>>2]>>2];c[(c[j>>2]|0)+32+4>>2]=c[(c[l>>2]|0)+4>>2];c[pa>
x3e;2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[(c[j>>
2]|0)+28>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>2]=c[ca>>2];break}case 58:{c[pa
x3e;>2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[(c[j>
x3e;2]|0)+28>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>2]=c[ca>>2];break}case 54:{c[
l>>2]=(c[l>>2]|0)+(0-(2+(c[(c[l>>2]|0)+-8>>2]>>16))<<2);if((c[l>
;>2]|0)>>>0<(c[ca>>2]|0)>>>0){sa=309;break a}break}case 55:{c[l>>2]=(
c[l>>2]|0)+4;break}case 44:{if(c[c[l>>2]>>2]|0)f=(c[(c[l>>2]|0)+4>>2]|0)!=0;else
f=0;c[o>>2]=f&1;c[c[l>>2]>>2]=c[o>>2]|0?65536:0;c[l>>2]=(c[l>>
2]|0)+4;break}case 45:{if(c[c[l>>2]>>2]|0)f=1;else f=(c[(c[l>>2]|0)+4>>2]|0)!=0;c[p>
;>2]=f&1;c[c[l>>2]>>2]=c[p>>2]|0?65536:0;c[l>>2]=(c[l>>2]|0)+4;break
}case 47:{c[q>>2]=((c[c[l>>2]>>2]|0)!=0^1)&1;c[c[l>>2]>>2]=c[q>>
;2]|0?65536:0;c[l>>2]=(c[l>>2]|0)+4;break}case 48:{c[r>>2]=(c[(c[l>>2]|0)+8>>2
]|0)<=(c[(c[l>>2]|0)+12>>2]|0)&1;if(!(c[r>>2]|0))c[c[l>>2]>>2]=c[(c[
l>>2]|0)+4>>2];c[l>>2]=(c[l>>2]|0)+4;break}case 49:{c[I>>2]=(c[c[l>>
2]>>2]>>16)+(c[(c[j>>2]|0)+896>>2]|0);if((c[I>>2]|0)>>>0>=(
c[(c[j>>2]|0)+888>>2]|0)>>>0)break a;if((((c[ra>>2]|0)-((c[j>>2]|0)+280)|
0)/12|0|0)>=32)break a;c[(c[ra>>2]|0)+8>>2]=c[K>>2];c[ra>>2]=(c[ra>>2]|0)+
12;c[c[ra>>2]>>2]=c[(c[(c[j>>2]|0)+904>>2]|0)+(c[I>>2]<<2)>>
;2];c[(c[ra>>2]|0)+4>>2]=c[(c[(c[j>>2]|0)+904>>2]|0)+((c[I>>2]|0)+1<<
;2)>>2];c[(c[ra>>2]|0)+8>>2]=c[c[ra>>2]>>2];if(!(c[c[ra>>2]>>
;2]|0))break a;if((c[(c[ra>>2]|0)+4>>2]|0)==(c[c[ra>>2]>>2]|0))break a;c[(c[j>>
;2]|0)+676>>2]=c[ra>>2];c[K>>2]=c[c[ra>>2]>>2];c[L>>2]=c[(c[ra>
x3e;2]|0)+4>>2];break}default:{sa=305;break a}}while(0);c[(c[j>>2]|0)+276>>2]=c[l>>2];if
((((c[(c[j>>2]|0)+276>>2]|0)-(c[ca>>2]|0)|0)/4|0|0)>=48){sa=310;break}else continue}c[ba>
;>2]=16;do if((d[la>>0]|0)!=28){f=d[la>>0]|0;if((d[la>>0]|0)<247){c[ma>>2]=f-139
;break}if((f|0)<251){if((c[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0)break a;ua=(
d[la>>0]|0)-247<<8;va=c[K>>2]|0;c[K>>2]=va+1;c[ma>>2]=ua+(d[va>>0]|0
)+108;break}f=c[K>>2]|0;if((d[la>>0]|0)<255){if(f>>>0>=(c[L>>2]|0)>
x3e;>0)break a;ua=0-((d[la>>0]|0)-251)<<8;va=c[K>>2]|0;c[K>>2]=va+1;c[ma>>
;2]=ua-(d[va>>0]|0)-108;break}if((f+3|0)>>>0>=(c[L>>2]|0)>>>0)break a;c[ma
>>2]=d[c[K>>2]>>0]<<24|d[(c[K>>2]|0)+1>>0]<<16|d[(c[K>
;>2]|0)+2>>0]<<8|d[(c[K>>2]|0)+3>>0];c[K>>2]=(c[K>>2]|0)+4;if((
c[n>>2]|0)==2)c[ba>>2]=0}else{if(((c[K>>2]|0)+1|0)>>>0>=(c[L>>2]|0)
x3e;>>0)break a;c[ma>>2]=((d[c[K>>2]>>0]<<8|d[(c[K>>2]|0)+1>>
;0])&65535)<<16>>16;c[K>>2]=(c[K>>2]|0)+2}while(0);if((((c[(c[j>>2]|0)+276
>>2]|0)-(c[ca>>2]|0)|0)/4|0|0)>=48){sa=310;break}c[ma>>2]=c[ma>>2]<<c[ba
x3e;>2];ua=c[ma>>2]|0;e=(c[j>>2]|0)+276|0;va=c[e>>2]|0;c[e>>2]=va+4;c[va>>
;2]=ua}do if((sa|0)==220){c[y>>2]=Vi(c[j>>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[(c[l>>2]|0)+12>>2]>>16,c[(c[l>
x3e;2]|0)+16>>2]>>16)|0;oc(c[(c[m>>2]|0)+12>>2]|0);c[h>>2]=c[y>>2];va
=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==221){if((c[T>>2]|0)>=4){c[z>>2]=c[(c[j>>
;2]|0)+744>>2];c[y>>2]=Vi(c[j>>2]|0,0,c[(c[l>>2]|0)+-16>>2]|0,c[(c[l>>
;2]|0)+-12>>2]|0,c[(c[l>>2]|0)+-8>>2]>>16,c[(c[l>>2]|0)+-4>>2]>
x3e;16)|0;c[(c[j>>2]|0)+744>>2]=c[z>>2]}else{if(!(c[y>>2]|0))c[y>>2]=0;Pi(c[m
x3e;>2]|0);if(c[A>>2]|0){if(Ya[c[(c[A>>2]|0)+8>>2]&127](c[c[A>>2]>>2
]|0,b[(c[(c[m>>2]|0)+20>>2]|0)+2>>1]|0)|0)break;Wa[c[(c[A>>2]|0)+24>>2]&31
](c[c[A>>2]>>2]|0,c[(c[m>>2]|0)+20>>2]|0,c[(c[m>>2]|0)+72>>2]|0,c[(c
[j>>2]|0)+920>>2]|0)|0}oc(c[(c[m>>2]|0)+12>>2]|0)}c[h>>2]=c[y>>2];va
=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==305){c[h>>2]=7;va=c[h>>2]|0;i=ta;return va|0}else if((
sa|0)==307){c[h>>2]=c[y>>2];va=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==309){c[h>>2]=129
;va=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==310){c[h>>2]=130;va=c[h>>2]|0;i=ta;return va|0}while
(0);c[h>>2]=3;va=c[h>>2]|0;i=ta;return va|0}function Pi(a){a=a|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|
0;l=k+20|0;j=k+16|0;h=k+12|0;f=k+8|0;g=k+4|0;e=k;c[l>>2]=a;c[j>>2]=c[(c[l>>2]|0)+20>>2];
if(!(c[j>>2]|0)){i=k;return}if((b[c[j>>2]>>1]|0)<=1)a=0;else a=(b[(c[(c[j>>2]|0)+12
>>2]|0)+((b[c[j>>2]>>1]|0)-2<<1)>>1]|0)+1|0;c[h>>2]=a;if((((b[(c[j
x3e;>2]|0)+2>>1]|0)>1?(c[f>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[h>>2]<
;<3),c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(b[(c[j>>2]|0)+2>>1]<<3)+-
8,c[e>>2]=(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>>2]|0)+2>>1]|0)+-1,(c[c[f>>
;2]>>2]|0)==(c[c[g>>2]>>2]|0)):0)?(c[(c[f>>2]|0)+4>>2]|0)==(c[(c[g>>
2]|0)+4>>2]|0):0)?(d[c[e>>2]>>0]|0)==1:0){l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>
x3e;1]|0)+-1<<16>>16}if((b[c[j>>2]>>1]|0)<=0){i=k;return}a=c[j>>2]|0;if((
c[h>>2]|0)==((b[(c[j>>2]|0)+2>>1]|0)-1|0)){b[a>>1]=(b[a>>1]|0)+-1<<16
>>16;l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>>1]|0)+-1<<16>>16;i=k;return}else
{b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>1]|0)-1<<1)>>1]=(b[a+2>
;>1]|0)-1;i=k;return}}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;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=
k;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2]=0;if(a[(c[f>>2]|0)+64>>0]|0){
e=c[j>>2]|0;i=k;return e|0}a[(c[f>>2]|0)+64>>0]=1;c[j>>2]=Ri(c[f>>2]|0)|0;if(c
[j>>2]|0){e=c[j>>2]|0;i=k;return e|0}c[j>>2]=Si(c[f>>2]|0,c[g>>2]|0,c[h>
x3e;2]|0)|0;e=c[j>>2]|0;i=k;return e|0}function Ri(d){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[e>>2]=d;c[h>>2]=c[(c[e>>2]|0)+20>>2];if(!(a[(c[e>>2]|0)+65>>
;0]|0)){h=c[h>>2]|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16;c[f>>2]=0;h=c[f>
;>2]|0;i=j;return h|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20>>1]|0)+(b[(c[(c[e>>2]|0)+12
>>2]|0)+56>>1]|0)+1|0)>>>0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+8>>
;2]|0)>>>0)e=0;else e=kc(c[(c[e>>2]|0)+12>>2]|0,0,1)|0;c[g>>2]=e;if(!(c[g>>
;2]|0)){if((b[c[h>>2]>>1]|0)>0)b[(c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>
;>1]|0)-1<<1)>>1]=(b[(c[h>>2]|0)+2>>1]|0)-1;h=c[h>>2]|0;b[h>>1]=(
b[h>>1]|0)+1<<16>>16}c[f>>2]=c[g>>2];h=c[f>>2]|0;i=j;return h|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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>
;2]=b;c[g>>2]=d;c[h>>2]=Ti(c[e>>2]|0,1)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=j;return
d|0}Ui(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0,1);d=c[h>>2]|0;i=j;return d|0}function Ti(a,d){a=a
|0;d=d|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]=d;if(!(c[f>>2]|0)){d=0;i=g;return
d|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20+2>>1]|0)+(b[(c[(c[e>>2]|0)+12>>2]|0)+56
+2>>1]|0)+(c[f>>2]|0)|0)>>>0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+4>>
;2]|0)>>>0){d=0;i=g;return d|0}d=kc(c[(c[e>>2]|0)+12>>2]|0,c[f>>2]|0,0)|0;i=g;return
d|0}function Ui(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;p=i;i=i+32|0;q=p+20|0;j=p+16|0;k=p+12|0;l=
p+24|0;n=p+8|0;o=p+4|0;m=p;c[q>>2]=e;c[j>>2]=f;c[k>>2]=g;a[l>>0]=h;c[n>>2]=c[(
c[q>>2]|0)+20>>2];if(!(a[(c[q>>2]|0)+65>>0]|0)){q=c[n>>2]|0;q=q+2|0;g=b[q>
;>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}c[o>>2]=(c[(c[n>>2]|0)+4>
x3e;2]|0)+(b[(c[n>>2]|0)+2>>1]<<3);c[m>>2]=(c[(c[n>>2]|0)+8>>2]|0)+(
b[(c[n>>2]|0)+2>>1]|0);c[c[o>>2]>>2]=c[j>>2]>>16;c[(c[o>>2
]|0)+4>>2]=c[k>>2]>>16;a[c[m>>2]>>0]=d[l>>0]|0?1:2;q=c[n>>
2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}function Vi(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,D=0,E=0,F=0,G=0
;G=i;i=i+96|0;k=G+92|0;l=G+88|0;m=G+84|0;n=G+80|0;o=G+76|0;p=G+72|0;q=G+68|0;y=G+64|0;u=G+60|0;t=G+56|0;r=G+52|0;z=G+48|0;C=G+40
|0;s=G+32|0;w=G+24|0;x=G+20|0;B=G+16|0;v=G+12|0;A=G+8|0;D=G+4|0;E=G;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;
c[o>>2]=g;c[p>>2]=h;c[q>>2]=j;c[u>>2]=c[l>>2];c[z>>2]=c[(c[l>
x3e;2]|0)+4>>2];if(a[(c[l>>2]|0)+924>>0]|0){c[k>>2]=160;F=c[k>>2]|0;i=G;return
F|0}c[n>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+32>>2]|0);c[o>>2]=(c[o>>2]|0
)+(c[(c[l>>2]|0)+32+4>>2]|0);if(c[(c[(c[z>>2]|0)+128>>2]|0)+52>>2]|0){c[t>
;>2]=c[p>>2];c[r>>2]=c[q>>2]}else{c[v>>2]=c[(c[z>>2]|0)+692>>2];
c[t>>2]=Wi(c[v>>2]|0,c[p>>2]|0)|0;c[r>>2]=Wi(c[v>>2]|0,c[q>>2]|0)|0}
if((c[t>>2]|0)<0|(c[r>>2]|0)<0){c[k>>2]=160;F=c[k>>2]|0;i=G;return F|0}if(a[(c
[u>>2]|0)+66>>0]|0){c[A>>2]=c[(c[u>>2]|0)+8>>2];c[D>>2]=c[c[(c[A>
;>2]|0)+156>>2]>>2];c[y>>2]=lc(c[D>>2]|0,2)|0;if(!(c[y>>2]|0)){c[E>
x3e;2]=c[(c[D>>2]|0)+56+32>>2];c[c[E>>2]>>2]=c[t>>2];b[(c[E>>2]|0)+4
>>1]=514;c[(c[E>>2]|0)+8>>2]=0;c[(c[E>>2]|0)+12>>2]=0;c[E>>2]=(c[E
x3e;>2]|0)+32;c[c[E>>2]>>2]=c[r>>2];b[(c[E>>2]|0)+4>>1]=2;c[(c[E>>
;2]|0)+8>>2]=c[n>>2]>>16;c[(c[E>>2]|0)+12>>2]=c[o>>2]>>16;
c[(c[A>>2]|0)+128>>2]=2;c[(c[A>>2]|0)+132>>2]=c[(c[D>>2]|0)+20+32>>2
];c[(c[A>>2]|0)+72>>2]=1668246896;c[(c[D>>2]|0)+56+28>>2]=2;F=11}}else F=11;do if((F|0)==
11){nc(c[(c[u>>2]|0)+12>>2]|0);c[y>>2]=Mi(c[z>>2]|0,c[t>>2]|0,w,x)|0;if((c[y
x3e;>2]|0)==0?(a[(c[l>>2]|0)+924>>0]=1,c[y>>2]=Oi(c[l>>2]|0,c[w>>2]|0,c[x
>>2]|0)|0,a[(c[l>>2]|0)+924>>0]=0,Yi(c[z>>2]|0,w,c[x>>2]|0),c[y>>2]|
0):0)break;F=(c[u>>2]|0)+32|0;c[C>>2]=c[F>>2];c[C+4>>2]=c[F+4>>2];F=(c[u>
x3e;2]|0)+40|0;c[s>>2]=c[F>>2];c[s+4>>2]=c[F+4>>2];c[B>>2]=c[(c[l>>2
]|0)+744>>2];c[(c[u>>2]|0)+32>>2]=0;c[(c[u>>2]|0)+32+4>>2]=0;c[(c[u>>
;2]|0)+24>>2]=(c[n>>2]|0)-(c[m>>2]|0);c[(c[u>>2]|0)+28>>2]=c[o>>2];c
[y>>2]=Mi(c[z>>2]|0,c[r>>2]|0,w,x)|0;if((c[y>>2]|0)==0?(a[(c[l>>2]|0)+924>
;>0]=1,c[y>>2]=Oi(c[l>>2]|0,c[w>>2]|0,c[x>>2]|0)|0,a[(c[l>>2]|0)+924>
;>0]=0,Yi(c[z>>2]|0,w,c[x>>2]|0),c[y>>2]|0):0)break;F=(c[u>>2]|0)+32|0;c[F>>
;2]=c[C>>2];c[F+4>>2]=c[C+4>>2];F=(c[u>>2]|0)+40|0;c[F>>2]=c[s>>2];c
[F+4>>2]=c[s+4>>2];c[(c[l>>2]|0)+744>>2]=c[B>>2];c[(c[u>>2]|0)+24>
;>2]=0;c[(c[u>>2]|0)+28>>2]=0}while(0);c[k>>2]=c[y>>2];F=c[k>>2]|0;i=G;return
F|0}function Wi(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l+12|0;g=l+8|0;f=l+4|0;j=l;h=l+16|0;c[g>>
2]=a;c[f>>2]=d;if(!(c[(c[g>>2]|0)+1152+8>>2]|0)){c[k>>2]=-1;k=c[k>>2]|0;i=l;return
k|0}if((c[f>>2]|0)<0|(c[f>>2]|0)>255){c[k>>2]=-1;k=c[k>>2]|0;i=l;return k|0}b
[h>>1]=Xi(c[f>>2]|0)|0;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[
g>>2]|0)+12>>2]|0)>>>0){f=10;break}a=c[j>>2]|0;if((e[(c[(c[g>>2]|0)+1152+
8>>2]|0)+(c[j>>2]<<1)>>1]|0|0)==(e[h>>1]|0|0)){f=8;break}c[j>>2]=a+1
}if((f|0)==8){c[k>>2]=a;k=c[k>>2]|0;i=l;return k|0}else if((f|0)==10){c[k>>2]=-1;k=c[k>>
2]|0;i=l;return k|0}return 0}function Xi(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<256)b=e[6520+(c[b>>2]<<1)>>1]|0;else b=0;i=d;return b&65535|0}function Yi
(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;e=k+24|0;f=k+20|0;g=k+16|0;j=k+8|0;h=k;c[e>>2]=a;c[
f>>2]=b;c[g>>2]=d;if(c[(c[(c[e>>2]|0)+128>>2]|0)+52>>2]|0){c[j>>2]=c
[c[f>>2]>>2];c[j+4>>2]=c[g>>2];Ra[c[(c[c[(c[(c[e>>2]|0)+128>>2]|0)+52
>>2]>>2]|0)+4>>2]&7](c[(c[(c[(c[e>>2]|0)+128>>2]|0)+52>>2]|0)+4
>>2]|0,j);i=k;return}else{c[h>>2]=c[(c[e>>2]|0)+692>>2];ji((c[h>>2]|0)+1176|0,
c[f>>2]|0);i=k;return}}function Zi(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;c[d>>
;2]=c[(c[b>>2]|0)+8>>2];if(!(c[d>>2]|0)){i=e;return}d=(c[d>>2]|0)+108|0;a=c[(c[b>
x3e;2]|0)+16>>2]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a
+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];i=e;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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2]=c[m>>2];c[k>>2]=c[(
c[j>>2]|0)+532>>2];c[c[h>>2]>>2]=0;c[(c[h>>2]|0)+4>>2]=0;if(!(c[k>
;>2]|0)){i=l;return 0}m=Oa[c[(c[k>>2]|0)+128>>2]&63](c[j>>2]|0,c[f>>2]|0,c[g
x3e;>2]|0)|0;c[c[h>>2]>>2]=m;i=l;return 0}function $i(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;p=i;i=i+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;m=p+8|0;o=p+4|0;n=p;c[g>>2]=
a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[o>>2]=0;c[n>>2]=c[(c[g
x3e;>2]|0)+84>>2];c[k>>2]=c[k>>2]|256;c[m>>2]=0;while(1){if((c[m>>2]|0)
x3e;>>0>=(c[j>>2]|0)>>>0){f=8;break}c[o>>2]=Gi(c[n>>2]|0,c[(c[g>
;>2]|0)+88>>2]|0,(c[h>>2]|0)+(c[m>>2]|0)|0,c[k>>2]|0)|0;if(c[o>>2]|0){f=8
;break}f=c[n>>2]|0;if(c[k>>2]&16|0)f=c[f+60>>2]|0;else f=c[f+56>>2]|0;c[(c[l>
x3e;2]|0)+(c[m>>2]<<2)>>2]=f;c[m>>2]=(c[m>>2]|0)+1}if((f|0)==8){i=p;return c[o
>>2]|0}return 0}function aj(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;v=i;i=i+80|0;k=v+64|0;l=v+60|0;d=v+56|0;g=v+52|0;n=v+48|0;e=v+44|0;h=v+40|0;j=v+36|0;f=v+32|0;m=v+28|0;p=v+24|0;s=v+20|0;o=v+
16|0;q=v+12|0;r=v+8|0;t=v+4|0;u=v;c[l>>2]=a;c[d>>2]=b;c[g>>2]=c[l>>2];do if(c[(c[c[l>
;>2]>>2]|0)+8>>2]&2|0){c[e>>2]=c[c[l>>2]>>2];c[h>>2]=c[(c[
e>>2]|0)+532>>2];if(Oa[c[(c[h>>2]|0)+148>>2]&63](c[e>>2]|0,c[d>>
;2]|0,j)|0){c[(c[g>>2]|0)+44>>2]=-1;break}c[k>>2]=bj(c[l>>2]|0,c[j>>2]|0)|0;u=
c[k>>2]|0;i=v;return u|0}while(0);Ed(c[c[l>>2]>>2]|0,c[d>>2]|0);c[n>>2]=Bi(c[g
>>2]|0)|0;a:do if(c[n>>2]|0){c[f>>2]=c[c[l>>2]>>2];c[m>>2]=c[(c[f>
;>2]|0)+692>>2];c[p>>2]=c[(c[l>>2]|0)+40>>2];c[s>>2]=c[(c[m>>2]|
0)+1324+64>>2];Za[c[(c[n>>2]|0)+4>>2]&31](c[c[p>>2]>>2]|0,c[(c[l>>
;2]|0)+12+4>>2]|0,c[(c[l>>2]|0)+12+8>>2]|0,0,0)|0;c[o>>2]=c[(c[m>>2]|0)+1892
x3e;>2];while(1){if((c[o>>2]|0)>>>0<=0)break a;c[q>>2]=c[(c[m>>2]|0)+1896
+((c[o>>2]|0)-1<<2)>>2];c[r>>2]=c[(c[q>>2]|0)+64>>2];d=c[(c[l>
x3e;2]|0)+12+4>>2]|0;if((c[s>>2]|0)!=(c[r>>2]|0)){c[t>>2]=xb(d,c[s>>2]|0,c[r
x3e;>2]|0)|0;c[u>>2]=xb(c[(c[l>>2]|0)+12+8>>2]|0,c[s>>2]|0,c[r>>2]|0)|0}else
{c[t>>2]=d;c[u>>2]=c[(c[l>>2]|0)+12+8>>2]}Za[c[(c[n>>2]|0)+4>>2]&
;31](c[(c[p>>2]|0)+4+((c[o>>2]|0)-1<<2)>>2]|0,c[t>>2]|0,c[u>>2]|0,0,
0)|0;c[o>>2]=(c[o>>2]|0)+-1}}while(0);c[k>>2]=0;u=c[k>>2]|0;i=v;return u|0}function bj(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;p=i;i=i+64|0;e=p+48|0;r=p+44|0;q=p+40|0;g=p+36|0;d=p
+32|0;f=p+28|0;j=p+24|0;m=p+20|0;h=p+16|0;k=p+12|0;l=p+8|0;n=p+4|0;o=p;c[e>>2]=a;c[r>>2]=b;c[q>>2]=
c[e>>2];c[(c[q>>2]|0)+44>>2]=c[r>>2];Cd(c[c[e>>2]>>2]|0,c[r>>
;2]|0);c[g>>2]=Bi(c[q>>2]|0)|0;if(!(c[g>>2]|0)){i=p;return 0}c[d>>2]=c[c[e>>2]
x3e;>2];c[f>>2]=c[(c[d>>2]|0)+692>>2];c[j>>2]=c[(c[e>>2]|0)+40>>
;2];c[m>>2]=c[(c[f>>2]|0)+1324+64>>2];Za[c[(c[g>>2]|0)+4>>2]&31](c[c[j>
;>2]>>2]|0,c[(c[e>>2]|0)+12+4>>2]|0,c[(c[e>>2]|0)+12+8>>2]|0,0,0)|0;c[h
x3e;>2]=c[(c[f>>2]|0)+1892>>2];while(1){if((c[h>>2]|0)>>>0<=0)break;c[k
x3e;>2]=c[(c[f>>2]|0)+1896+((c[h>>2]|0)-1<<2)>>2];c[l>>2]=c[(c[k>>
;2]|0)+64>>2];d=c[(c[e>>2]|0)+12+4>>2]|0;if((c[m>>2]|0)!=(c[l>>2]|0)){c[n>
;>2]=xb(d,c[m>>2]|0,c[l>>2]|0)|0;c[o>>2]=xb(c[(c[e>>2]|0)+12+8>>2]|0,c[m
x3e;>2]|0,c[l>>2]|0)|0}else{c[n>>2]=d;c[o>>2]=c[(c[e>>2]|0)+12+8>>2]}Za[c
[(c[g>>2]|0)+4>>2]&31](c[(c[j>>2]|0)+4+((c[h>>2]|0)-1<<2)>>2]|0
,c[n>>2]|0,c[o>>2]|0,0,0)|0;c[h>>2]=(c[h>>2]|0)+-1}i=p;return 0}function cj(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];i=d;return 0}function dj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;h=g+8|0;e=g+4|0;f=g;c[h>>2
]=a;c[e>>2]=b;c[f>>2]=c[(c[h>>2]|0)+16>>2];if((c[e>>2]|0)>>>0
x3e;=256){h=0;i=g;return h|0}h=d[(c[f>>2]|0)+(6+(c[e>>2]|0))>>0]|0;i=g;return h|0}function ej(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;l=i;i=i+32|0;m=l+20|0;e=l+16|0;j=l+12|0;f=l+8|0;h=l+4|0;g=l;c[m>>2]=a;
c[e>>2]=b;c[j>>2]=c[(c[m>>2]|0)+16>>2];c[f>>2]=c[c[e>>2]>>
2];c[h>>2]=0;c[g>>2]=0;c[j>>2]=(c[j>>2]|0)+6;do{m=(c[f>>2]|0)+1|0;c[f>>
;2]=m;if(m>>>0>=256){k=5;break}c[g>>2]=d[(c[j>>2]|0)+(c[f>>2]|0)>>0]}
while(!(c[g>>2]|0));if((k|0)==5){k=c[h>>2]|0;m=c[e>>2]|0;c[m>>2]=k;m=c[g>>2]|0
;i=l;return m|0}c[h>>2]=c[f>>2];k=c[h>>2]|0;m=c[e>>2]|0;c[m>>2]=k;m=c[g>
x3e;2]|0;i=l;return m|0}function fj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;e=k+20|0;f=k+16|0;j=k+12|0;l=k
+8|0;h=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[j>>2]=(c[e>>2]|0)+2;c[j>>2]=(c[j>
x3e;2]|0)+2;c[l>>2]=(((d[(c[j>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[j>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535;if((c[l>>2]|0)>>>0<262?1:((c[e>>
;2]|0)+(c[l>>2]|0)|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>
;>2]|0,8);if((c[(c[f>>2]|0)+8>>2]|0)>>>0<1){i=k;return 0}c[j>>2]=(c[e>
;>2]|0)+6;c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>=256)break;l=c[j>>2]|0;c[
j>>2]=l+1;c[g>>2]=d[l>>0];if((c[g>>2]|0)>>>0>=(c[(c[f>>2]|
0)+172>>2]|0)>>>0)sc(c[f>>2]|0,16);c[h>>2]=(c[h>>2]|0)+1}i=k;return 0}function
gj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>
;2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=0;c[c[f>>2]>>2]=(((
d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&65535)<<
;0)&65535;i=e;return 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,o=0,p=0,q=0,r=0;p=i;i=i+48|0;r=p+40
|0;f=p+36|0;q=p+32|0;m=p+28|0;o=p+24|0;l=p+20|0;j=p+16|0;n=p+12|0;g=p+8|0;h=p+4|0;k=p;c[r>>2]=b;c[f>>2]=e;c[
q>>2]=c[(c[r>>2]|0)+16>>2];c[m>>2]=0;c[o>>2]=ij(c[q>>2]|0,c[f>
x3e;2]|0)|0;if(!(c[o>>2]|0)){r=c[m>>2]|0;i=p;return r|0}c[l>>2]=c[o>>2];c[j>>2
]=c[f>>2]&255;c[l>>2]=(c[l>>2]|0)+2;c[n>>2]=((d[(c[l>>2]|0)+-2>>
;0]&65535)<<8|(d[(c[l>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[l>>2]=(
c[l>>2]|0)+2;c[g>>2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>>
2]|0)+-2+1>>0]&65535)<<0)&65535;c[l>>2]=(c[l>>2]|0)+2;c[h>>2]=((a[(c
[l>>2]|0)+-2>>0]<<16>>16<<8|d[(c[l>>2]|0)+-2+1>>0]<
x3c;0)&65535)<<16>>16;c[k>>2]=((d[c[l>>2]>>0]&65535)<<8|(d
[(c[l>>2]|0)+1>>0]&65535)<<0)&65535;c[j>>2]=(c[j>>2]|0)-(c[n>
x3e;2]|0);if(!(c[k>>2]|0?(c[j>>2]|0)>>>0<(c[g>>2]|0)>>>0:0)){r=
c[m>>2]|0;i=p;return r|0}c[l>>2]=(c[l>>2]|0)+((c[k>>2]|0)+(c[j>>2]<<
1));c[j>>2]=((d[c[l>>2]>>0]&65535)<<8|(d[(c[l>>2]|0)+1>>0]&
;65535)<<0)&65535;if(!(c[j>>2]|0)){r=c[m>>2]|0;i=p;return r|0}c[m>>2]=(c[j>>
;2]|0)+(c[h>>2]|0)&65535;r=c[m>>2]|0;i=p;return r|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,m=0,n=0;n=i;i=i+32|0;e=n+28|0;f=n+24|0;k=n+20|0;h=n+16|0;g=n+12|0;j=n+8|0;m=n+4|0;l=n;c[e>>2]=a;c[f>>
;2]=b;c[k>>2]=0;if((c[f>>2]|0)>>>0>=65536){a=c[k>>2]|0;i=n;return a|0}c[h>
;>2]=c[f>>2]&255;c[g>>2]=(c[f>>2]|0)>>>8;c[j>>2]=(c[e>>
;2]|0)+6;c[m>>2]=(c[e>>2]|0)+518;if(!(c[g>>2]|0)){c[l>>2]=c[m>>2];c[j>>
;2]=(c[j>>2]|0)+(c[h>>2]<<1);if((((d[c[j>>2]>>0]|0)&65535)<<8|((
d[(c[j>>2]|0)+1>>0]|0)&65535)<<0)&65535|0){a=c[k>>2]|0;i=n;return a|0}}else{c[
j>>2]=(c[j>>2]|0)+(c[g>>2]<<1);c[l>>2]=(c[m>>2]|0)+((((d[c[j>
x3e;2]>>0]|0)&65535)<<8|((d[(c[j>>2]|0)+1>>0]|0)&65535)<<0)&65535
&-8);if((c[l>>2]|0)==(c[m>>2]|0)){a=c[k>>2]|0;i=n;return a|0}}c[k>>2]=c[l>>
;2];a=c[k>>2]|0;i=n;return a|0}function jj(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;v=i;i=i+64|0;w=v+56|0;f=v+52|0;t=v+48|0;l=v+44|0;q=v+40|0;h=v+36|0;s=v+32|0;o=v+28|0;r=v+24|0;j=v+20|0;k=v+16|0;n=
v+12|0;g=v+8|0;p=v+4|0;m=v;c[w>>2]=b;c[f>>2]=e;c[t>>2]=c[(c[w>>2]|0)+16>>2];c[
l>>2]=0;c[q>>2]=0;c[h>>2]=(c[c[f>>2]>>2]|0)+1;a:while(1){if((c[h>>2]|
0)>>>0>=65536){u=15;break}c[s>>2]=ij(c[t>>2]|0,c[h>>2]|0)|0;b:do if(c[s>
x3e;2]|0?(c[o>>2]=c[s>>2],c[o>>2]=(c[o>>2]|0)+2,c[r>>2]=((d[(c[o>>2]|
0)+-2>>0]&65535)<<8|(d[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535,c[
o>>2]=(c[o>>2]|0)+2,c[j>>2]=((d[(c[o>>2]|0)+-2>>0]&65535)<<8|(d
[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535,c[o>>2]=(c[o>>2]|0)+2,c[k>
;>2]=((a[(c[o>>2]|0)+-2>>0]<<16>>16<<8|d[(c[o>>2]|0)+-2+1>
x3e;0]<<0)&65535)<<16>>16,c[n>>2]=((d[c[o>>2]>>0]&65535)
x3c;<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535,c[g>>2]=c[h>>2]&
;255,c[n>>2]|0):0){if((c[g>>2]|0)>>>0<(c[r>>2]|0)>>>0){c[g>
;>2]=c[r>>2];c[p>>2]=0}else c[p>>2]=(c[g>>2]|0)-(c[r>>2]|0);c[o>>
;2]=(c[o>>2]|0)+((c[n>>2]|0)+(c[p>>2]<<1));c[h>>2]=(c[h>>2]&-256
)+(c[g>>2]|0);while(1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break
b;c[o>>2]=(c[o>>2]|0)+2;c[m>>2]=((d[(c[o>>2]|0)+-2>>0]&65535)<<
;8|(d[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535;if(c[m>>2]|0?(c[l>>2]=(c
[m>>2]|0)+(c[k>>2]|0)&65535,c[l>>2]|0):0)break a;c[p>>2]=(c[p>>2]|0)+1;c[
h>>2]=(c[h>>2]|0)+1}}while(0);c[h>>2]=(c[h>>2]&-256)+256}if((u|0)==15){u=c[q>
x3e;2]|0;w=c[f>>2]|0;c[w>>2]=u;w=c[l>>2]|0;i=v;return w|0}c[q>>2]=c[h>>2];u=c[
q>>2]|0;w=c[f>>2]|0;c[w>>2]=u;w=c[l>>2]|0;i=v;return w|0}function kj(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;x=i;i=i+80|0;g=x+64|0;h=x+60|0;v=x+56|0;q=x+52|0;t=x+48
|0;s=x+44|0;f=x+40|0;w=x+36|0;m=x+32|0;o=x+28|0;l=x+24|0;j=x+20|0;u=x+16|0;k=x+12|0;n=x+8|0;r=x+4|0;p=x;c[g>>2]=b;c[h
x3e;>2]=e;c[v>>2]=(c[g>>2]|0)+2;c[q>>2]=((d[c[v>>2]>>0]&65535)<
x3c;8|(d[(c[v>>2]|0)+1>>0]&65535)<<0)&65535;if((c[q>>2]|0)>>>0
x3c;518?1:((c[g>>2]|0)+(c[q>>2]|0)|0)>>>0>(c[(c[h>>2]|0)+4>>2]|0)>
;>>0)sc(c[h>>2]|0,8);c[f>>2]=(c[g>>2]|0)+6;c[v>>2]=c[f>>2];c[s>
x3e;2]=0;c[t>>2]=0;while(1){f=c[v>>2]|0;if((c[t>>2]|0)>>>0>=256)break;c[v>
;>2]=f+2;c[o>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+
1>>0]&65535)<<0)&65535;if((c[(c[h>>2]|0)+8>>2]|0)>>>0>=2?c
[o>>2]&7|0:0)sc(c[h>>2]|0,8);c[o>>2]=(c[o>>2]|0)>>>3;if((c[o>
x3e;2]|0)>>>0>(c[s>>2]|0)>>>0)c[s>>2]=c[o>>2];c[t>>2]=(
c[t>>2]|0)+1}c[w>>2]=f;c[m>>2]=(c[w>>2]|0)+((c[s>>2]|0)+1<<3);if((c[
m>>2]|0)>>>0>(c[(c[h>>2]|0)+4>>2]|0)>>>0)sc(c[h>>2]|0
,8);c[t>>2]=0;while(1){if((c[t>>2]|0)>>>0>(c[s>>2]|0)>>>0)break
;c[v>>2]=(c[v>>2]|0)+2;c[l>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8
|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[v>>2]=(c[v>>2]|0)+2;c[j
x3e;>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>>0]&
;65535)<<0)&65535;c[v>>2]=(c[v>>2]|0)+2;c[k>>2]=((a[(c[v>>2]|0)+-2>
x3e;0]<<16>>16<<8|d[(c[v>>2]|0)+-2+1>>0]<<0)&65535)<<
16>>16;c[v>>2]=(c[v>>2]|0)+2;c[u>>2]=((d[(c[v>>2]|0)+-2>>0]&65535
)<<8|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0)&65535;a:do if(c[j>>2]|0){do
if((c[(c[h>>2]|0)+8>>2]|0)>>>0>=2){if((c[l>>2]|0)>>>0<256?((
c[l>>2]|0)+(c[j>>2]|0)|0)>>>0<=256:0)break;sc(c[h>>2]|0,8)}while(0);if(c[u>
;>2]|0){c[n>>2]=(c[v>>2]|0)+-2+(c[u>>2]|0);if(!((c[n>>2]|0)>>>0>
;=(c[m>>2]|0)>>>0?((c[n>>2]|0)+(c[j>>2]<<1)|0)>>>0<=((
c[g>>2]|0)+(c[q>>2]|0)|0)>>>0:0))sc(c[h>>2]|0,9);if((c[(c[h>>2]|0)+8>
;>2]|0)>>>0>=1){c[r>>2]=(c[v>>2]|0)+(c[j>>2]<<1);while(1){if((c
[v>>2]|0)>>>0>=(c[r>>2]|0)>>>0)break a;c[v>>2]=(c[v>>
2]|0)+2;c[p>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>
;>0]&65535)<<0)&65535;if(!(c[p>>2]|0))continue;c[p>>2]=(c[p>>2]|0)+(c[k
x3e;>2]|0)&65535;if((c[p>>2]|0)>>>0<(c[(c[h>>2]|0)+172>>2]|0)>
x3e;>0)continue;sc(c[h>>2]|0,16)}}}}while(0);c[t>>2]=(c[t>>2]|0)+1}i=x;return 0}function lj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(
c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=2;c[c[f>>2]>>2]=(((d[c
[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&65535)<<0
)&65535;i=e;return 0}function mj(a,b){a=a|0;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[f>>2]=a;
c[h>>2]=b;c[(c[f>>2]|0)+16>>2]=c[h>>2];c[g>>2]=(c[h>>2]|0)+6;c[(c[f
x3e;>2]|0)+32>>2]=((((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1
x3e;>0]|0)&65535)<<0)&65535)>>1;c[(c[f>>2]|0)+24>>2]=-1;c[(c[f>>
;2]|0)+28>>2]=0;i=e;return 0}function nj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>
;>2]=a;c[f>>2]=b;do if((c[f>>2]|0)>>>0<65536){b=c[e>>2]|0;if(c[(c[e>
x3e;2]|0)+20>>2]&1|0){c[d>>2]=oj(b,f,0)|0;break}else{c[d>>2]=pj(b,f,0)|0;break}}else c[d>
;>2]=0;while(0);i=g;return c[d>>2]|0}function oj(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;z=i;i=i+80|0;g=z+60|0;h=z+56|0;j=z+52|0;k=z+64|0;t=z+48|0;x=z+44|0;n=z+40|0;u=z+36|0;m=
z+32|0;q=z+28|0;s=z+24|0;l=z+20|0;p=z+16|0;v=z+12|0;w=z+8|0;o=z+4|0;r=z;c[h>>2]=b;c[j>>2]=e;a[k>>0
]=f;c[l>>2]=c[c[j>>2]>>2];c[p>>2]=0;c[v>>2]=(c[(c[h>>2]|0)+16>
x3e;2]|0)+6;c[t>>2]=((d[c[v>>2]>>0]&65535)<<8|(d[(c[v>>2]|0)+1>>
;0]&65535)<<0)&65535&-2;c[s>>2]=(c[t>>2]|0)>>>1;if(!(c[s>>
2]|0)){c[g>>2]=0;y=c[g>>2]|0;i=z;return y|0}if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1
;while(1){if((c[l>>2]|0)>>>0>65535)break;c[v>>2]=(c[(c[h>>2]|0)+16>>
2]|0)+14;c[w>>2]=(c[(c[h>>2]|0)+16>>2]|0)+16+(c[t>>2]|0);c[q>>2]=0;while(1){if
((c[q>>2]|0)>>>0>=(c[s>>2]|0)>>>0)break;c[v>>2]=(c[v>>
;2]|0)+2;c[n>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>
;>0]&65535)<<0)&65535;c[w>>2]=(c[w>>2]|0)+2;c[x>>2]=((d[(c[w>>2
]|0)+-2>>0]&65535)<<8|(d[(c[w>>2]|0)+-2+1>>0]&65535)<<0)&65535;
if((c[l>>2]|0)>>>0>=(c[x>>2]|0)>>>0?(c[l>>2]|0)>>>
;0<=(c[n>>2]|0)>>>0:0){c[v>>2]=(c[w>>2]|0)+-2+(c[t>>2]|0);c[m>
x3e;2]=((a[c[v>>2]>>0]<<16>>16<<8|d[(c[v>>2]|0)+1>>0]<
;<0)&65535)<<16>>16;c[v>>2]=(c[v>>2]|0)+(c[t>>2]|0);c[u>>2
]=((d[c[v>>2]>>0]&65535)<<8|(d[(c[v>>2]|0)+1>>0]&65535)<<0
)&65535;if((((c[x>>2]|0)==65535?(c[q>>2]|0)>>>0>=((c[s>>2]|0)-1|0)>
x3e;>0:0)&(c[n>>2]|0)==65535?(c[o>>2]=c[c[h>>2]>>2],c[r>>2]=(c[(c[o
x3e;>2]|0)+500>>2]|0)+(c[(c[o>>2]|0)+504>>2]|0),c[u>>2]|0):0)?((c[v>>2]|0
)+(c[u>>2]|0)+2|0)>>>0>(c[r>>2]|0)>>>0:0){c[m>>2]=1;c[u>
x3e;2]=0}if((c[u>>2]|0)!=65535){y=15;break}}c[q>>2]=(c[q>>2]|0)+1}do if((y|0)==15){y=0;if(!(c[u>
;>2]|0)){c[p>>2]=(c[l>>2]|0)+(c[m>>2]|0)&65535;break}c[v>>2]=(c[v>>2
]|0)+((c[u>>2]|0)+((c[l>>2]|0)-(c[x>>2]|0)<<1));c[p>>2]=((d[c[v>>2]
x3e;>0]&65535)<<8|(d[(c[v>>2]|0)+1>>0]&65535)<<0)&65535;if(c[p>
x3e;2]|0)c[p>>2]=(c[p>>2]|0)+(c[m>>2]|0)&65535}while(0);if((a[k>>0]|0)==0|(c[p>
;>2]|0)!=0)break;c[l>>2]=(c[l>>2]|0)+1}if((d[k>>0]|0)!=0&(c[p>>2]|0)!=0)c[c[j
x3e;>2]>>2]=c[l>>2];c[g>>2]=c[p>>2];y=c[g>>2]|0;i=z;return y|0}function pj
(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,D=0,E=0,F=
0,G=0;G=i;i=i+96|0;g=G+88|0;h=G+84|0;j=G+80|0;k=G+92|0;z=G+76|0;E=G+72|0;o=G+68|0;A=G+64|0;n=G+60|0;t=G+56|0;v=G+52|0;u=G+48|0;y
=G+44|0;l=G+40|0;q=G+36|0;C=G+32|0;p=G+28|0;s=G+24|0;r=G+20|0;D=G+16|0;B=G+12|0;w=G+8|0;x=G+4|0;m=G;c[h>>2]=b;c[j>
;>2]=e;a[k>>0]=f;c[l>>2]=c[c[j>>2]>>2];c[q>>2]=0;c[C>>2]=(c[(c[
h>>2]|0)+16>>2]|0)+6;c[z>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C
x3e;>2]|0)+1>>0]&65535)<<0)&65535&-2;if(!(c[z>>2]|0)){c[g>>2]=0;F=c[
g>>2]|0;i=G;return F|0}c[y>>2]=(c[z>>2]|0)>>>1;c[u>>2]=c[y>>2];
c[o>>2]=65535;if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1;c[v>>2]=0;c[t>>2]=c
[y>>2];while(1){if((c[v>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[u
x3e;>2]=((c[v>>2]|0)+(c[t>>2]|0)|0)>>>1;c[C>>2]=(c[(c[h>>2]|0)+16>
;>2]|0)+14+(c[u>>2]<<1);c[o>>2]=((d[c[C>>2]>>0]&65535)<<8|(
d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(2+(c[z>
;>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>
;0]&65535)<<0)&65535;if((c[l>>2]|0)>>>0<(c[E>>2]|0)>>>
;0){c[t>>2]=c[u>>2];continue}if((c[l>>2]|0)>>>0<=(c[o>>2]|0)>
x3e;>0){F=11;break}c[v>>2]=(c[u>>2]|0)+1}do if((F|0)==11){c[C>>2]=(c[C>>2]|0)+(c[z
x3e;>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>>
;2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>
x3e;2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0
]&65535)<<0)&65535;if((((c[E>>2]|0)==65535?(c[u>>2]|0)>>>0>=((c[y>
;>2]|0)-1|0)>>>0:0)&(c[o>>2]|0)==65535?(c[p>>2]=c[c[h>>2]>>2],c
[s>>2]=(c[(c[p>>2]|0)+500>>2]|0)+(c[(c[p>>2]|0)+504>>2]|0),c[A>>2]|0
):0)?((c[C>>2]|0)+(c[A>>2]|0)+2|0)>>>0>(c[s>>2]|0)>>>0:0){c[n
x3e;>2]=1;c[A>>2]=0}if(c[(c[h>>2]|0)+20>>2]&2|0){c[t>>2]=c[u>>2];if((
c[A>>2]|0)==65535)c[u>>2]=(c[t>>2]|0)+1;c[r>>2]=c[t>>2];while(1){if((c[r>
x3e;2]|0)>>>0<=0)break;c[B>>2]=c[C>>2];c[C>>2]=(c[(c[h>>2]|0)+16>
;>2]|0)+14+((c[r>>2]|0)-1<<1);c[D>>2]=((d[c[C>>2]>>0]&65535)<
x3c;8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[l>>2]|0)>>>0
x3e;(c[D>>2]|0)>>>0){F=21;break}c[o>>2]=c[D>>2];c[C>>2]=(c[C>>2
]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>
;2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>
;>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>>2]|0)+1>>0]
x3c;<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>
;2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<
;0)&65535;if((c[A>>2]|0)!=65535)c[u>>2]=(c[r>>2]|0)-1;c[r>>2]=(c[r>>2]|0)+-
1}if((F|0)==21)c[C>>2]=c[B>>2];if((c[u>>2]|0)==((c[t>>2]|0)+1|0)){if((c[r>>2]|
0)!=(c[t>>2]|0)){c[C>>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[t>>2]<<1);c[
o>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535
)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>
;2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>
;>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>
x3e;16<<8|d[(c[C>>2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>
;2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(
d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535}c[u>>2]=c[t>>2];c[r>>
2]=(c[t>>2]|0)+1;while(1){if((c[r>>2]|0)>>>0>=(c[y>>2]|0)>>>0)break
;c[C>>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[r>>2]<<1);c[w>>2]=((d[c[C>
;>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c
[C>>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[x>>2]=((d[c[C>>2]>>0]&65535
)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[l>>2]|0)>>
;>0<(c[x>>2]|0)>>>0)break;c[o>>2]=c[w>>2];c[E>>2]=c[x>>
;2];c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<
;16>>16<<8|d[(c[C>>2]|0)+1>>0]<<0)&65535)<<16>>16;c[C
>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[A>>2]|0)!=65535)c[u>
x3e;2]=c[r>>2];c[r>>2]=(c[r>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+-1;if((c[u>>
;2]|0)==(c[t>>2]|0)){c[u>>2]=c[r>>2];break}}if((c[u>>2]|0)!=(c[r>>2]|0)){c[C
x3e;>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[u>>2]<<1);c[o>>2]=((d[c[C>>
;2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>
;>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(
c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>
x3e;2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>
;>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>
;0]&65535)<<0)&65535}}else if((c[A>>2]|0)==65535)break;if(!(c[A>>2]|0)){c[q>>2
]=(c[l>>2]|0)+(c[n>>2]|0)&65535;break}c[C>>2]=(c[C>>2]|0)+((c[A>>2]|0)+((
c[l>>2]|0)-(c[E>>2]|0)<<1));c[q>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if(c[q>>2]|0)c[q>>2]=(
c[q>>2]|0)+(c[n>>2]|0)&65535}while(0);do if(a[k>>0]|0){c[m>>2]=c[h>>2];if
((c[l>>2]|0)>>>0>(c[o>>2]|0)>>>0?(c[u>>2]=(c[u>>2]|0)+
1,(c[u>>2]|0)==(c[y>>2]|0)):0){c[g>>2]=0;F=c[g>>2]|0;i=G;return F|0}if(qj(c[m>>
;2]|0,c[u>>2]|0)|0){if(!(c[q>>2]|0))break;c[c[j>>2]>>2]=c[l>>2];break}c[(c[m
x3e;>2]|0)+24>>2]=c[l>>2];if(c[q>>2]|0)c[(c[m>>2]|0)+28>>2]=c[q>>
;2];else{c[(c[m>>2]|0)+24>>2]=c[l>>2];rj(c[m>>2]|0);c[q>>2]=c[(c[m>>
2]|0)+28>>2]}if(c[q>>2]|0)c[c[j>>2]>>2]=c[(c[m>>2]|0)+24>>2]}while(0
);c[g>>2]=c[q>>2];F=c[g>>2]|0;i=G;return F|0}function qj(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;p=i;i=i+48|0;k=p+32|0;l=p+28|0;m=p+24|0;j=p+20|0;o=p+16|0;h=p+12|0;n=p+8|0;f=p+4|0;g=p;c[l>>2]=b;c
[m>>2]=e;c[j>>2]=c[(c[l>>2]|0)+16>>2];c[h>>2]=c[(c[l>>2]|0)+32>
x3e;2];while(1){if((c[m>>2]|0)>>>0>=(c[h>>2]|0)>>>0){b=12;break}c[o>
x3e;2]=(c[j>>2]|0)+14+(c[m>>2]<<1);c[(c[l>>2]|0)+44>>2]=((d[c[o>>2]
x3e;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;c[o>>
;2]=(c[o>>2]|0)+(2+(c[h>>2]<<1));c[(c[l>>2]|0)+40>>2]=((d[c[o>>2]>
;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;c[o>>
2]=(c[o>>2]|0)+(c[h>>2]<<1);c[(c[l>>2]|0)+48>>2]=((a[c[o>>2]>
x3e;0]<<16>>16<<8|d[(c[o>>2]|0)+1>>0]<<0)&65535)<<16
x3e;>16;c[o>>2]=(c[o>>2]|0)+(c[h>>2]<<1);c[n>>2]=((d[c[o>>2]>
;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;if(((((c[m>
;>2]|0)>>>0>=((c[h>>2]|0)-1|0)>>>0?(c[(c[l>>2]|0)+40>>2]|0
)==65535:0)?(c[(c[l>>2]|0)+44>>2]|0)==65535:0)?(c[f>>2]=c[c[l>>2]>>2],c[g>
;>2]=(c[(c[f>>2]|0)+500>>2]|0)+(c[(c[f>>2]|0)+504>>2]|0),c[n>>2]|0):0)?((
c[o>>2]|0)+(c[n>>2]|0)+2|0)>>>0>(c[g>>2]|0)>>>0:0){c[(c[l>
x3e;2]|0)+48>>2]=1;c[n>>2]=0}if((c[n>>2]|0)!=65535){b=10;break}c[m>>2]=(c[m>>2
]|0)+1}if((b|0)==10){c[(c[l>>2]|0)+52>>2]=c[n>>2]|0?(c[o>>2]|0)+(c[n>>2]|0)|0:
0;c[(c[l>>2]|0)+36>>2]=c[m>>2];c[k>>2]=0;o=c[k>>2]|0;i=p;return o|0}else if((b
|0)==12){c[k>>2]=-1;o=c[k>>2]|0;i=p;return o|0}return 0}function rj(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;n=i;i=i+32|0;j=n+28|0;k=n+24|0;h=n+20|0;f=n+16|0;e=n+12|0;g=n+8|0;l=n+4|0;m=n;c[j>>2]=a;a:do if((c[(c[j
x3e;>2]|0)+24>>2]|0)>>>0<65535){c[k>>2]=(c[(c[j>>2]|0)+24>>2]|0
)+1;if((c[k>>2]|0)>>>0<(c[(c[j>>2]|0)+40>>2]|0)>>>0)c[k>
x3e;2]=c[(c[j>>2]|0)+40>>2];b:while(1){c[h>>2]=c[(c[j>>2]|0)+52>>2];c[f>
x3e;2]=c[(c[j>>2]|0)+44>>2];c[e>>2]=c[(c[j>>2]|0)+48>>2];c:do if((c[k>>
;2]|0)>>>0<=(c[f>>2]|0)>>>0){if(!(c[h>>2]|0))while(1){c[m>>2]=(
c[k>>2]|0)+(c[e>>2]|0)&65535;b=c[k>>2]|0;if(c[m>>2]|0){a=12;break b}b=b+1|0;c[k>
;>2]=b;if(b>>>0>(c[f>>2]|0)>>>0)break c}c[g>>2]=(c[h>>2]|0
)+((c[k>>2]|0)-(c[(c[j>>2]|0)+40>>2]|0)<<1);do{c[g>>2]=(c[g>>2]|0)+2
;c[l>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+-2+1>
x3e;0]|0)&65535)<<0)&65535;if(c[l>>2]|0?(c[l>>2]=(c[l>>2]|0)+(c[e>>2
]|0)&65535,c[l>>2]|0):0){a=9;break b}b=(c[k>>2]|0)+1|0;c[k>>2]=b}while(b>>>0
x3c;=(c[f>>2]|0)>>>0)}while(0);if((qj(c[j>>2]|0,(c[(c[j>>2]|0)+36>>2]|0)+
1|0)|0)<0)break a;if((c[k>>2]|0)>>>0>=(c[(c[j>>2]|0)+40>>2]|0)>>
;>0)continue;c[k>>2]=c[(c[j>>2]|0)+40>>2]}if((a|0)==9){c[(c[j>>2]|0)+24>>
2]=c[k>>2];c[(c[j>>2]|0)+28>>2]=c[l>>2];i=n;return}else if((a|0)==12){c[(c[j>>
2]|0)+24>>2]=b;c[(c[j>>2]|0)+28>>2]=c[m>>2];i=n;return}}while(0);c[(c[j>>2]|0)+
24>>2]=-1;c[(c[j>>2]|0)+28>>2]=0;i=n;return}function sj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=b;if((c[c[f>>2]>>
;2]|0)>>>0>=65535){c[d>>2]=0;h=c[d>>2]|0;i=j;return h|0}a=c[e>>2]|0;do if(!(c[(
c[e>>2]|0)+20>>2]&1|0)){c[g>>2]=a;if((c[c[f>>2]>>2]|0)!=(c[(c[g>>
;2]|0)+24>>2]|0)){c[h>>2]=pj(c[e>>2]|0,c[f>>2]|0,1)|0;break}rj(c[g>>2]|0);c[h
x3e;>2]=c[(c[g>>2]|0)+28>>2];if(c[h>>2]|0)c[c[f>>2]>>2]=c[(c[g>>
;2]|0)+24>>2]}else c[h>>2]=oj(a,c[f>>2]|0,1)|0;while(0);c[d>>2]=c[h>>2];h=c[d
x3e;>2]|0;i=j;return h|0}function tj(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,D=0,E=0,F=0,G=0,H=0;H=i;i=i+112|0;n=H+104|0;o=H+100|0;B=H+96|0;x=H+92|0;g=H+88|0;m=H+84|0;j=H+80|0;f=
H+76|0;s=H+72|0;z=H+68|0;r=H+64|0;l=H+60|0;h=H+56|0;k=H+52|0;G=H+48|0;q=H+44|0;A=H+40|0;y=H+36|0;w=H+32|0;v=H+28|0;p=H+24|0;F=H+
20|0;D=H+16|0;C=H+12|0;E=H+8|0;t=H+4|0;u=H;c[n>>2]=b;c[o>>2]=e;c[B>>2]=(c[n>>2]|0)+2;c[B
>>2]=(c[B>>2]|0)+2;c[x>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<<8|(d[(
c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[r>>2]=0;if((c[x>>2]|0)>
x3e;>0<16)sc(c[o>>2]|0,8);if(((c[n>>2]|0)+(c[x>>2]|0)|0)>>>0>(c[(c[o
>>2]|0)+4>>2]|0)>>>0){if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=
1)sc(c[o>>2]|0,8);c[x>>2]=(c[(c[o>>2]|0)+4>>2]|0)-(c[n>>2]|0)}c[B>>2
]=(c[n>>2]|0)+6;c[B>>2]=(c[B>>2]|0)+2;c[z>>2]=((d[(c[B>>2]|0)+-2>>0]
x26;65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if((c[(c[o>>2
]|0)+8>>2]|0)>>>0>=2?c[z>>2]&1|0:0)sc(c[o>>2]|0,8);c[z>>2]=((c[
z>>2]|0)>>>0)/2|0;if((c[x>>2]|0)>>>0<(16+(c[z>>2]<<1
x3c;<2)|0)>>>0)sc(c[o>>2]|0,8);do if((c[(c[o>>2]|0)+8>>2]|0)>>>
0>=2){c[B>>2]=(c[B>>2]|0)+2;c[l>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<
;<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[B>>2]=(c[B>>2]|0
)+2;c[h>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<<8|(d[(c[B>>2]|0)+-2+1>>
;0]&65535)<<0)&65535;c[B>>2]=(c[B>>2]|0)+2;c[k>>2]=((d[(c[B>>2]|0)+-
2>>0]&65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if((c[
l>>2]|c[k>>2])&1|0)sc(c[o>>2]|0,8);c[l>>2]=((c[l>>2]|0)>>>
0)/2|0;c[k>>2]=((c[k>>2]|0)>>>0)/2|0;if((((c[l>>2]|0)>>>0<=(c[z
>>2]|0)>>>0?c[l>>2]<<1>>>0>=(c[z>>2]|0)>>
x3e;0:0)?((c[l>>2]|0)+(c[k>>2]|0)|0)==(c[z>>2]|0):0)?(c[l>>2]|0)==(1<<c[h>
;>2]|0):0)break;sc(c[o>>2]|0,8)}while(0);c[g>>2]=(c[n>>2]|0)+14;c[m>>2]=(c[n>
x3e;2]|0)+16+(c[z>>2]<<1);c[f>>2]=(c[m>>2]|0)+(c[z>>2]<<1);c[j>
x3e;2]=(c[f>>2]|0)+(c[z>>2]<<1);c[s>>2]=(c[j>>2]|0)+(c[z>>2]<
x3c;1);if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=2?(c[B>>2]=(c[g>>2]|0)+((c[z
x3e;>2]|0)-1<<1),(((d[c[B>>2]>>0]&65535)<<8|(d[(c[B>>2]|0)+1>
x3e;0]&65535)<<0)&65535|0)!=65535):0)sc(c[o>>2]|0,8);c[w>>2]=0;c[v>>2]=0;c[F
x3e;>2]=c[m>>2];c[D>>2]=c[g>>2];c[C>>2]=c[f>>2];c[E>>2]=c[j>
;>2];c[y>>2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[z>>2]|0)>>>
0)break;c[B>>2]=c[E>>2];c[F>>2]=(c[F>>2]|0)+2;c[G>>2]=((d[(c[F>>2]|0
)+-2>>0]&65535)<<8|(d[(c[F>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[D
>>2]=(c[D>>2]|0)+2;c[q>>2]=((d[(c[D>>2]|0)+-2>>0]&65535)<<8|(d[(
c[D>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+2;c[p>
x3e;2]=((a[(c[C>>2]|0)+-2>>0]<<16>>16<<8|d[(c[C>>2]|0)+-2+1>>
;0]<<0)&65535)<<16>>16;c[E>>2]=(c[E>>2]|0)+2;c[A>>2]=((d[(c[E
x3e;>2]|0)+-2>>0]&65535)<<8|(d[(c[E>>2]|0)+-2+1>>0]&65535)<<0)
x26;65535;if((c[G>>2]|0)>>>0>(c[q>>2]|0)>>>0)sc(c[o>>2]|0,8);do
if((c[y>>2]|0)>>>0>0?(c[G>>2]|0)>>>0<=(c[v>>2]|0)>
x3e;>0:0){if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=1){sc(c[o>>2]|0,8);break}if((c[
w>>2]|0)>>>0<=(c[G>>2]|0)>>>0?(c[v>>2]|0)>>>0<
;=(c[q>>2]|0)>>>0:0){c[r>>2]=c[r>>2]|2;break}c[r>>2]=c[r>>2]|1}
while(0);f=c[A>>2]|0;a:do if((c[A>>2]|0)!=0&(c[A>>2]|0)!=65535){c[B>>2]=(c[B>
x3e;2]|0)+f;do if((c[(c[o>>2]|0)+8>>2]|0)>>>0<1){if(!(((c[G>>2]|0)==65535?(c[y
>>2]|0)==((c[z>>2]|0)-1|0):0)&(c[q>>2]|0)==65535)){if((c[B>>2]|0)>>>
0>=(c[s>>2]|0)>>>0?((c[B>>2]|0)+((c[q>>2]|0)-(c[G>>2]|0)+1<<
;1)|0)>>>0<=(c[(c[o>>2]|0)+4>>2]|0)>>>0:0)break;sc(c[o>>2]|0,8)}}
else{if((c[B>>2]|0)>>>0>=(c[s>>2]|0)>>>0?((c[B>>2]|0)+((c[q>
;>2]|0)-(c[G>>2]|0)+1<<1)|0)>>>0<=((c[n>>2]|0)+(c[x>>2]|0)|0)
x3e;>>0:0)break;sc(c[o>>2]|0,8)}while(0);if((c[(c[o>>2]|0)+8>>2]|0)>>>0
x3e;=1){c[t>>2]=c[G>>2];while(1){if((c[t>>2]|0)>>>0>=(c[q>>2]|0)>
;>>0)break a;c[B>>2]=(c[B>>2]|0)+2;c[u>>2]=((d[(c[B>>2]|0)+-2>>0]&
;65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if(c[u>>2]|0?(c[
u>>2]=(c[u>>2]|0)+(c[p>>2]|0)&65535,(c[u>>2]|0)>>>0>=(c[(c[o>
;>2]|0)+172>>2]|0)>>>0):0)sc(c[o>>2]|0,16);c[t>>2]=(c[t>>2]|0)+1}}}else
if((f|0)==65535){if((c[(c[o>>2]|0)+8>>2]|0)>>>0<2?((c[G>>2]|0)==65535?(c[y>
;>2]|0)==((c[z>>2]|0)-1|0):0)&(c[q>>2]|0)==65535:0)break;sc(c[o>>2]|0,8)}while(0);c[w>
;>2]=c[G>>2];c[v>>2]=c[q>>2];c[y>>2]=(c[y>>2]|0)+1}i=H;return c[r>
x3e;2]|0}function uj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=
b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=4;c[c[f>>2]
x3e;>2]=(((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&
65535)<<0)&65535;i=e;return 0}function vj(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;h=i;i=i+32|0;n
=h+28|0;l=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;k=h+8|0;j=h+4|0;e=h;c[n>>2]=a;c[l>>2]=b;c[m>>2]=c[(c[n
>>2]|0)+16>>2];c[g>>2]=0;c[f>>2]=(c[m>>2]|0)+6;c[f>>2]=(c[f>>
;2]|0)+2;c[k>>2]=(((d[(c[f>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+-2+
1>>0]|0)&65535)<<0)&65535;c[f>>2]=(c[f>>2]|0)+2;c[j>>2]=(((d[(c[f>
;>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+-2+1>>0]|0)&65535)<<
;0)&65535;c[e>>2]=(c[l>>2]|0)-(c[k>>2]|0);if((c[e>>2]|0)>>>0>=(
c[j>>2]|0)>>>0){n=c[g>>2]|0;i=h;return n|0}c[f>>2]=(c[f>>2]|0)+(c[e>
x3e;2]<<1);c[g>>2]=(((d[c[f>>2]>>0]|0)&65535)<<8|((d[(c[f>>2]|0
)+1>>0]|0)&65535)<<0)&65535;n=c[g>>2]|0;i=h;return n|0}function wj(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;o=i;i=i+48|0;q=o+36|0;f=o+32|0;p=o+28|0;m=o+24|0;g=o+20|0;j=o+16|0;l=o+12|0;e=o+
8|0;h=o+4|0;k=o;c[q>>2]=a;c[f>>2]=b;c[p>>2]=c[(c[q>>2]|0)+16>>2];c[m>>
;2]=0;c[g>>2]=(c[c[f>>2]>>2]|0)+1;c[j>>2]=0;c[l>>2]=(c[p>>2]|0)+6;c[
l>>2]=(c[l>>2]|0)+2;c[e>>2]=(((d[(c[l>>2]|0)+-2>>0]|0)&65535)<<
8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[l>>2]=(c[l>>2]|0)+2
;c[h>>2]=(((d[(c[l>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>
x3e;0]|0)&65535)<<0)&65535;if((c[g>>2]|0)>>>0>=65536){p=c[m>>2]|0;q=
c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}if((c[g>>2]|0)>>>0<(c
[e>>2]|0)>>>0)c[g>>2]=c[e>>2];c[k>>2]=(c[g>>2]|0)-(c[e>>
;2]|0);c[l>>2]=(c[l>>2]|0)+(c[k>>2]<<1);while(1){if((c[k>>2]|0)>>>
;0>=(c[h>>2]|0)>>>0){n=9;break}c[l>>2]=(c[l>>2]|0)+2;c[j>>2]=(((d[(c
[l>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<
;<0)&65535;a=c[g>>2]|0;if(c[j>>2]|0)break;c[g>>2]=a+1;c[k>>2]=(c[k>>
2]|0)+1}if((n|0)==9){p=c[m>>2]|0;q=c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}c[m>
;>2]=a;p=c[m>>2]|0;q=c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}function xj(a,b
){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;k=l+12|0;j=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[
f>>2]=b;if(((c[e>>2]|0)+10|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>
;>0)sc(c[f>>2]|0,8);c[k>>2]=(c[e>>2]|0)+2;c[k>>2]=(c[k>>2]|0)+2;c[j>
x3e;2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)
x26;65535)<<0)&65535;c[k>>2]=(c[e>>2]|0)+8;c[k>>2]=(c[k>>2]|0)+2;c[g>
;>2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0
)&65535)<<0)&65535;if(!(((c[e>>2]|0)+(c[j>>2]|0)|0)>>>0<=(c[(c[f>
;>2]|0)+4>>2]|0)>>>0?(c[j>>2]|0)>>>0>=(10+(c[g>>2]<
x3c;1)|0)>>>0:0))sc(c[f>>2]|0,8);if(!((c[g>>2]|0)>>>0>0?(c[(c[f>>
;2]|0)+8>>2]|0)>>>0>=1:0)){i=l;return 0}do{c[k>>2]=(c[k>>2]|0)+2;c[h>>
;2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)&
;65535)<<0)&65535;if((c[h>>2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)
x3e;>>0)sc(c[f>>2]|0,16);c[g>>2]=(c[g>>2]|0)+-1}while((c[g>>2]|0)>>
x3e;0>0);i=l;return 0}function yj(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;f=e+4|0;g=e;c[h>>2]=a
;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=6;
c[c[f>>2]>>2]=(((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1
x3e;>0]|0)&65535)<<0)&65535;i=e;return 0}function zj(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;m=i;i=i+48|0;o=m+32|0;h=m+28|0;n=m+24|0;j=m+20|0;g=m+16|0;f=m+12|0;k=m+8|0;e=m+4|0;l=m;c[o>>2]=a;c[h>
x3e;2]=b;c[n>>2]=c[(c[o>>2]|0)+16>>2];c[j>>2]=0;c[g>>2]=(c[n>>2]|0)+
8204;c[g>>2]=(c[g>>2]|0)+4;c[f>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(
c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>
;>2]|0)+-4+3>>0]|0)<<0;while(1){if((c[f>>2]|0)>>>0<=0){b=7;break}c[g>
;>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>
;2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-
4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[e>>2]=(d[(c[g>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[l>
x3e;2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if((c[h
x3e;>2]|0)>>>0<(c[k>>2]|0)>>>0){b=7;break}if((c[h>>2]|0)>>
x3e;0<=(c[e>>2]|0)>>>0){b=5;break}c[f>>2]=(c[f>>2]|0)+-1}if((b|0)==5){c[j>
;>2]=(c[l>>2]|0)+(c[h>>2]|0)-(c[k>>2]|0);o=c[j>>2]|0;i=m;return o|0}else if((b|0)==
7){o=c[j>>2]|0;i=m;return o|0}return 0}function Aj(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;p=i;i=i+48|0;r=p+40|0;e=p+36|0;l=p+32|0;f=p+28|0;h=p+24|0;q=p+20|0;k=p+16|0;j=p+12|0;m=p+8|0;g=p+4|0;n=p;c[r>>2]=
a;c[e>>2]=b;c[l>>2]=0;c[f>>2]=(c[c[e>>2]>>2]|0)+1;c[h>>2]=0;c[q>
;>2]=c[(c[r>>2]|0)+16>>2];c[k>>2]=(c[q>>2]|0)+8204;c[k>>2]=(c[k>>
;2]|0)+4;c[j>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<
;<0;c[k>>2]=(c[q>>2]|0)+8208;while(1){if((c[j>>2]|0)>>>0<=0){o=9;break}c[
k>>2]=(c[k>>2]|0)+4;c[m>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>
;>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>
2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>2]|0)+4;c[g>>2]=(d[(c[k>>2]|0)+-4
>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>
x3e;0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>2]|0)+4;c[n
>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<
x3c;16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;if
((c[f>>2]|0)>>>0<(c[m>>2]|0)>>>0)c[f>>2]=c[m>>2];if((
c[f>>2]|0)>>>0<=(c[g>>2]|0)>>>0?(c[h>>2]=(c[f>>2]|0)-(
c[m>>2]|0)+(c[n>>2]|0),c[h>>2]|0):0)break;c[j>>2]=(c[j>>2]|0)+-1}if((o|0)==9){
q=c[l>>2]|0;r=c[e>>2]|0;c[r>>2]=q;r=c[h>>2]|0;i=p;return r|0}c[l>>2]=c[f>
x3e;2];q=c[l>>2]|0;r=c[e>>2]|0;c[r>>2]=q;r=c[h>>2]|0;i=p;return r|0}function Bj(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;t=i;i=i+64|0;e=t+52|0;f=t+48|0;q=t+44|0;k=t+40|0;m=t+36
|0;p=t+32|0;o=t+28|0;r=t+24|0;h=t+20|0;s=t+16|0;g=t+12|0;l=t+8|0;j=t+4|0;n=t;c[e>>2]=a;c[f>>2]=b;c[q>
x3e;2]=(c[e>>2]|0)+4;if(((c[e>>2]|0)+16+8192|0)>>>0>(c[(c[f>>2]|0)+4>>
;2]|0)>>>0)sc(c[f>>2]|0,8);c[q>>2]=(c[q>>2]|0)+4;c[m>>2]=(d[(c[q>>
;2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-
4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;if((c[m>>2]|0)>>
;>0<8208?1:(c[m>>2]|0)>>>0>((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>
2]|0)|0)>>>0)sc(c[f>>2]|0,8);c[k>>2]=(c[e>>2]|0)+12;c[q>>2]=(c[k>>
;2]|0)+8192;c[q>>2]=(c[q>>2]|0)+4;c[p>>2]=(d[(c[q>>2]|0)+-4>>0]|0)<<
24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(
c[q>>2]|0)+-4+3>>0]|0)<<0;if(((c[q>>2]|0)+((c[p>>2]|0)*12|0)|0)>>>
;0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[l>>2]=0;c[o>
x3e;2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[q>>
;2]=(c[q>>2]|0)+4;c[r>>2]=(d[(c[q>>2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3
x3e;>0]|0)<<0;c[q>>2]=(c[q>>2]|0)+4;c[h>>2]=(d[(c[q>>2]|0)+-4>>
0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;c[q>>2]=(c[q>>2]|0)+4;c[s>>
;2]=(d[(c[q>>2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(
c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;if((c[r>
;>2]|0)>>>0>(c[h>>2]|0)>>>0)sc(c[f>>2]|0,8);if((c[o>>2]|0)
x3e;>>0>0?(c[r>>2]|0)>>>0<=(c[l>>2]|0)>>>0:0)sc(c[f>
x3e;2]|0,8);a:do if((c[(c[f>>2]|0)+8>>2]|0)>>>0>=1){if(((c[s>>2]|0)+(c[h>
x3e;2]|0)-(c[r>>2]|0)|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)>>>0)sc(
c[f>>2]|0,16);c[g>>2]=(c[h>>2]|0)-(c[r>>2]|0)+1;if(c[r>>2]&-65536|0)while
(1){if((c[g>>2]|0)>>>0<=0)break a;c[j>>2]=(c[r>>2]|0)>>>16;c[n
x3e;>2]=c[r>>2]&65535;if(!((d[(c[k>>2]|0)+((c[j>>2]|0)>>>3)>>0]|
0)&128>>(c[j>>2]&7)))sc(c[f>>2]|0,8);if(!((d[(c[k>>2]|0)+((c[n>>2]|0
)>>>3)>>0]|0)&128>>(c[n>>2]&7)))sc(c[f>>2]|0,8);c[g>>
2]=(c[g>>2]|0)+-1;c[r>>2]=(c[r>>2]|0)+1}else{if(c[h>>2]&-65536|0)sc(c[f>>
2]|0,8);while(1){if((c[g>>2]|0)>>>0<=0)break a;c[n>>2]=c[r>>2]&65535;if((
d[(c[k>>2]|0)+((c[n>>2]|0)>>>3)>>0]|0)&128>>(c[n>>2]&
7)|0)sc(c[f>>2]|0,8);c[g>>2]=(c[g>>2]|0)+-1;c[r>>2]=(c[r>>2]|0)+1}}}while(0);c
[l>>2]=c[h>>2];c[o>>2]=(c[o>>2]|0)+1}i=t;return 0}function Cj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16
>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=8;c[c[f>>2]>>2]=(d[c[g>>2]>>
0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>>0]|0)<
x3c;8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function Dj(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;h=i;i=i+32|0;n=h+28|0;l=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;k=h+8|0;j=h+4|0;e=h;c[n>>2]=a;c[l>>
;2]=b;c[m>>2]=c[(c[n>>2]|0)+16>>2];c[g>>2]=0;c[f>>2]=(c[m>>2]|0)+12;
c[f>>2]=(c[f>>2]|0)+4;c[k>>2]=(d[(c[f>>2]|0)+-4>>0]|0)<<24|(d[(c[f
x3e;>2]|0)+-4+1>>0]|0)<<16|(d[(c[f>>2]|0)+-4+2>>0]|0)<<8|(d[(c[f>>
;2]|0)+-4+3>>0]|0)<<0;c[f>>2]=(c[f>>2]|0)+4;c[j>>2]=(d[(c[f>>2]|0)+-
4>>0]|0)<<24|(d[(c[f>>2]|0)+-4+1>>0]|0)<<16|(d[(c[f>>2]|0)+-4+2>
;>0]|0)<<8|(d[(c[f>>2]|0)+-4+3>>0]|0)<<0;c[e>>2]=(c[l>>2]|0)-(c
[k>>2]|0);if((c[e>>2]|0)>>>0>=(c[j>>2]|0)>>>0){n=c[g>>
;2]|0;i=h;return n|0}c[f>>2]=(c[f>>2]|0)+(c[e>>2]<<1);c[g>>2]=(((d[c[f>
x3e;2]>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+1>>0]|0)&65535)<<0)&65535
;n=c[g>>2]|0;i=h;return n|0}function Ej(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;m=i;i=i+48|0;o=m+
32|0;j=m+28|0;n=m+24|0;k=m+20|0;l=m+16|0;g=m+12|0;h=m+8|0;e=m+4|0;f=m;c[o>>2]=a;c[j>>2]=b;c[n>>2]=
c[(c[o>>2]|0)+16>>2];c[k>>2]=(c[c[j>>2]>>2]|0)+1;c[l>>2]=0;c[g>
x3e;2]=(c[n>>2]|0)+12;c[g>>2]=(c[g>>2]|0)+4;c[h>>2]=(d[(c[g>>2]|0)+-4>>
;0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[e>>
;2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(
c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if((c[k>
;>2]|0)>>>0<(c[h>>2]|0)>>>0)c[k>>2]=c[h>>2];c[f>>
;2]=(c[k>>2]|0)-(c[h>>2]|0);c[g>>2]=(c[g>>2]|0)+(c[f>>2]<<1);while(1
){if((c[f>>2]|0)>>>0>=(c[e>>2]|0)>>>0){a=7;break}c[g>>2]=(c[g
x3e;>2]|0)+2;c[l>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[g>>
2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if(c[l>>2]|0){a=7;break}c[k>>2]=(c[k>
x3e;2]|0)+1;c[f>>2]=(c[f>>2]|0)+1}if((a|0)==7){c[c[j>>2]>>2]=c[k>>2];i=m;return
c[l>>2]|0}return 0}function Fj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;k=l+12
|0;j=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[f>>2]=b;c[k>>2]=(c[e>>2]|0)+4;if(((c[e>>2]|
0)+20|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[k>
;>2]=(c[k>>2]|0)+4;c[j>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>
;2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-
4+3>>0]|0)<<0;c[k>>2]=(c[e>>2]|0)+16;c[k>>2]=(c[k>>2]|0)+4;c[g>
x3e;2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;if(!((c[j
>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>2]|0)|0)>>>
;0?(c[j>>2]|0)>>>0>=(20+(c[g>>2]<<1)|0)>>>0:0))sc(c[f>>
;2]|0,8);if(!((c[g>>2]|0)>>>0>0?(c[(c[f>>2]|0)+8>>2]|0)>>>0>
;=1:0)){i=l;return 0}do{c[k>>2]=(c[k>>2]|0)+2;c[h>>2]=(((d[(c[k>>2]|0)+-2>>0]|
0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c[h>
x3e;2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)>>>0)sc(c[f>>2]|0,16);c
[g>>2]=(c[g>>2]|0)+-1}while((c[g>>2]|0)>>>0>0);i=l;return 0}function Gj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[
h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=10;c[c[f>>2]>>2]=(d[c[g>
;>2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>
;>0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function Hj(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;c[(c[g>>2]|0)+16>>2]=c[h>
x3e;2];c[h>>2]=(c[h>>2]|0)+12;c[(c[g>>2]|0)+40>>2]=(d[c[h>>2]>>0]|0)
x3c;<24|(d[(c[h>>2]|0)+1>>0]|0)<<16|(d[(c[h>>2]|0)+2>>0]|0)<<8|(
d[(c[h>>2]|0)+3>>0]|0)<<0;a[(c[g>>2]|0)+24>>0]=0;i=f;return 0}function Ij(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=Jj(c[f>>2]|0,e,0)|0;i=d
;return a|0}function Jj(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;x=i;i=i
+64|0;g=x+52|0;h=x+48|0;j=x+44|0;k=x+56|0;o=x+40|0;t=x+36|0;s=x+32|0;l=x+28|0;u=x+24|0;n=x+20|0;v=x+16|0;p=x+12|0;r=x+8|0;q=x+4|
0;m=x;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;c[o>>2]=0;c[t>>2]=(c[(c[h>>2]|0)+
16>>2]|0)+12;c[s>>2]=d[c[t>>2]>>0]<<24|d[(c[t>>2]|0)+1>>0]
x3c;<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t>>2]|0)+3>>0]<<0;c[l>
x3e;2]=c[c[j>>2]>>2];if(!(c[s>>2]|0)){c[g>>2]=0;w=c[g>>2]|0;i=x;return w|0}c[q
>>2]=c[s>>2];c[n>>2]=-1;if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1;c[r>
x3e;2]=0;c[p>>2]=c[s>>2];while(1){if((c[r>>2]|0)>>>0>=(c[p>>2]|0)>
;>>0)break;c[q>>2]=((c[r>>2]|0)+(c[p>>2]|0)|0)>>>1;c[t>>2]=(c[(
c[h>>2]|0)+16>>2]|0)+16+((c[q>>2]|0)*12|0);c[t>>2]=(c[t>>2]|0)+4;c[u>>
;2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>>2]|0)+-4+1>>0]<<16|d[(c[t>
x3e;2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4+3>>0]<<0;c[t>>2]=(c[t>
x3e;2]|0)+4;c[n>>2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>>2]|0)+-4+1>>0]
x3c;<16|d[(c[t>>2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4+3>>0]<<0;if((
c[l>>2]|0)>>>0<(c[u>>2]|0)>>>0){c[p>>2]=c[q>>2];continue
}if((c[l>>2]|0)>>>0<=(c[n>>2]|0)>>>0){w=11;break}c[r>>2]=(c[q
x3e;>2]|0)+1}if((w|0)==11){c[v>>2]=d[c[t>>2]>>0]<<24|d[(c[t>>2]|0)+1>
;>0]<<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t>>2]|0)+3>>0]<<
0;c[o>>2]=(c[v>>2]|0)+(c[l>>2]|0)-(c[u>>2]|0)}if(a[k>>0]|0){c[m>>2]=
c[h>>2];if((c[l>>2]|0)>>>0>(c[n>>2]|0)>>>0?(c[q>>2]=(
c[q>>2]|0)+1,(c[q>>2]|0)==(c[s>>2]|0)):0){c[g>>2]=0;w=c[g>>2]|0;i=x;return w|0
}a[(c[m>>2]|0)+24>>0]=1;c[(c[m>>2]|0)+28>>2]=c[l>>2];c[(c[m>>2]|0)+36
>>2]=c[q>>2];if(!(c[o>>2]|0)){Kj(c[m>>2]|0);if(a[(c[m>>2]|0)+24>>0]|
0)c[o>>2]=c[(c[m>>2]|0)+32>>2]}else c[(c[m>>2]|0)+32>>2]=c[o>>2];if(
c[o>>2]|0)c[c[j>>2]>>2]=c[(c[m>>2]|0)+28>>2]}c[g>>2]=c[o>>
2];w=c[g>>2]|0;i=x;return w|0}function Kj(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;e=n+28|0;k=n+24
|0;l=n+20|0;g=n+16|0;m=n+12|0;f=n+8|0;j=n+4|0;h=n;c[e>>2]=b;a:do if((c[(c[e>>2]|0)+28>>2]|0)>
x3e;>0<4294967295){c[f>>2]=(c[(c[e>>2]|0)+28>>2]|0)+1;c[j>>2]=c[(c[e>>
;2]|0)+36>>2];c[j>>2]=c[(c[e>>2]|0)+36>>2];b:while(1){if((c[j>>2]|0)>>
;>0>=(c[(c[e>>2]|0)+40>>2]|0)>>>0)break a;c[k>>2]=(c[(c[e>>2]|0
)+16>>2]|0)+16+((c[j>>2]|0)*12|0);c[k>>2]=(c[k>>2]|0)+4;c[l>>2]=(d[(c[k>
x3e;2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0
)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>
;2]|0)+4;c[g>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<
;<0;c[m>>2]=(d[c[k>>2]>>0]|0)<<24|(d[(c[k>>2]|0)+1>>0]|0)<
x3c;16|(d[(c[k>>2]|0)+2>>0]|0)<<8|(d[(c[k>>2]|0)+3>>0]|0)<<0;if((c[f
>>2]|0)>>>0<(c[l>>2]|0)>>>0)c[f>>2]=c[l>>2];while(1){
if((c[f>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[h>>2]=(c[m>>
;2]|0)+(c[f>>2]|0)-(c[l>>2]|0);b=c[f>>2]|0;if(c[h>>2]|0)break b;c[f>>2]=b+1}c[
j>>2]=(c[j>>2]|0)+1}c[(c[e>>2]|0)+28>>2]=b;c[(c[e>>2]|0)+32>>2]=c[h
x3e;>2];c[(c[e>>2]|0)+36>>2]=c[j>>2];i=n;return}while(0);a[(c[e>>2]|0)+24>>
;0]=0;i=n;return}function Lj(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m
;c[g>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];if((c[(c[j>>2]|0)+28>>2]|0)>
;>>0>=4294967295){c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}do if(d[(c[j>>2]|0)+24>
x3e;0]|0?(c[(c[j>>2]|0)+28>>2]|0)==(c[c[h>>2]>>2]|0):0){Kj(c[j>>2]|0);if(!(a[(
c[j>>2]|0)+24>>0]|0)){c[k>>2]=0;break}c[k>>2]=c[(c[j>>2]|0)+32>>2];if
(c[k>>2]|0)c[c[h>>2]>>2]=c[(c[j>>2]|0)+28>>2]}else l=9;while(0);if((l|0)==9)c[
k>>2]=Jj(c[g>>2]|0,c[h>>2]|0,1)|0;c[f>>2]=c[k>>2];l=c[f>>2]|0;i=m;return
l|0}function Mj(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0;m=p+28|0;j=p+24
|0;l=p+20|0;k=p+16|0;n=p+12|0;g=p+8|0;o=p+4|0;h=p;c[e>>2]=a;c[f>>2]=b;if(((c[e>>2]|0)+16|0)>
x3e;>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[m>>2]=(c[e
>>2]|0)+4;c[m>>2]=(c[m>>2]|0)+4;c[j>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<
;<24|(d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<
;8|(d[(c[m>>2]|0)+-4+3>>0]|0)<<0;c[m>>2]=(c[e>>2]|0)+12;c[m>>2]=(c[m
>>2]|0)+4;c[l>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1
x3e;>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>
;0]|0)<<0;if(!((c[j>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>
x3e;2]|0)|0)>>>0?(c[j>>2]|0)>>>0>=(16+((c[l>>2]|0)*12|0)|0)>>
x3e;0:0))sc(c[f>>2]|0,8);c[h>>2]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0
x3e;=(c[l>>2]|0)>>>0)break;c[m>>2]=(c[m>>2]|0)+4;c[n>>2]=(d[(c[m>>
;2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-
4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>0]|0)<<0;c[m>>2]=(c[m>>
2]|0)+4;c[g>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1>>0]|
0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>0]|0)<
;<0;c[m>>2]=(c[m>>2]|0)+4;c[o>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(
d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m
x3e;>2]|0)+-4+3>>0]|0)<<0;if((c[n>>2]|0)>>>0>(c[g>>2]|0)>
x3e;>0)sc(c[f>>2]|0,8);if((c[k>>2]|0)>>>0>0?(c[n>>2]|0)>>>
0<=(c[h>>2]|0)>>>0:0)sc(c[f>>2]|0,8);if((c[(c[f>>2]|0)+8>>2]|0)>
;>>0>=1?((c[o>>2]|0)+(c[g>>2]|0)-(c[n>>2]|0)|0)>>>0>=(c[(c[f>
;>2]|0)+172>>2]|0)>>>0:0)sc(c[f>>2]|0,16);c[h>>2]=c[g>>2];c[k>
x3e;2]=(c[k>>2]|0)+1}i=p;return 0}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;h=e+8|0;f=e+4|0;g=e;c[
h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4
>>2]=12;c[c[f>>2]>>2]=(d[c[g>>2]>>0]|0)<<24|(d[(c[g>>2]|0)+
1>>0]|0)<<16|(d[(c[g>>2]|0)+2>>0]|0)<<8|(d[(c[g>>2]|0)+3>>
0]|0)<<0;i=e;return 0}function Oj(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;c[(c[g>>2]|0)+16>>2]=c[h>>2];c[h>>2]=(c[h>>2]|0)+12;c[(c[g>
x3e;2]|0)+40>>2]=(d[c[h>>2]>>0]|0)<<24|(d[(c[h>>2]|0)+1>>0]|0)<
x3c;16|(d[(c[h>>2]|0)+2>>0]|0)<<8|(d[(c[h>>2]|0)+3>>0]|0)<<0;a[(c[g
x3e;>2]|0)+24>>0]=0;i=f;return 0}function Pj(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>
x3e;2]=a;c[e>>2]=b;a=Qj(c[f>>2]|0,e,0)|0;i=d;return a|0}function Qj(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;w=i;i=i+64|0;g=w+48|0;h=w+44|0;j=w+40|0;k=w+52|0;o=w+36|0;t=w+32|0;s=w+28|0
;l=w+24|0;u=w+20|0;n=w+16|0;p=w+12|0;r=w+8|0;q=w+4|0;m=w;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;c[o>
x3e;2]=0;c[t>>2]=(c[(c[h>>2]|0)+16>>2]|0)+12;c[s>>2]=d[c[t>>2]>>0]
x3c;<24|d[(c[t>>2]|0)+1>>0]<<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t
x3e;>2]|0)+3>>0]<<0;c[l>>2]=c[c[j>>2]>>2];if(!(c[s>>2]|0)){c[g
x3e;>2]=0;v=c[g>>2]|0;i=w;return v|0}c[q>>2]=c[s>>2];c[n>>2]=-1;if(a[k>>0
]|0)c[l>>2]=(c[l>>2]|0)+1;c[r>>2]=0;c[p>>2]=c[s>>2];while(1){if((c[r>>
;2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[q>>2]=((c[r>>2]|0)+(c[p>
;>2]|0)|0)>>>1;c[t>>2]=(c[(c[h>>2]|0)+16>>2]|0)+16+((c[q>>2]|0)*12|0
);c[t>>2]=(c[t>>2]|0)+4;c[u>>2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>
;>2]|0)+-4+1>>0]<<16|d[(c[t>>2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4
+3>>0]<<0;c[t>>2]=(c[t>>2]|0)+4;c[n>>2]=d[(c[t>>2]|0)+-4>>
0]<<24|d[(c[t>>2]|0)+-4+1>>0]<<16|d[(c[t>>2]|0)+-4+2>>0]<<
8|d[(c[t>>2]|0)+-4+3>>0]<<0;if((c[l>>2]|0)>>>0<(c[u>>2]|0)
x3e;>>0){c[p>>2]=c[q>>2];continue}if((c[l>>2]|0)>>>0<=(c[n>>
;2]|0)>>>0){v=11;break}c[r>>2]=(c[q>>2]|0)+1}if((v|0)==11)c[o>>2]=d[c[t>>
2]>>0]<<24|d[(c[t>>2]|0)+1>>0]<<16|d[(c[t>>2]|0)+2>>0]<
;<8|d[(c[t>>2]|0)+3>>0]<<0;if(a[k>>0]|0){c[m>>2]=c[h>>2];if((c[
l>>2]|0)>>>0>(c[n>>2]|0)>>>0?(c[q>>2]=(c[q>>2]|0)+1,(
c[q>>2]|0)==(c[s>>2]|0)):0){c[g>>2]=0;v=c[g>>2]|0;i=w;return v|0}a[(c[m>>2]|0)+
24>>0]=1;c[(c[m>>2]|0)+28>>2]=c[l>>2];c[(c[m>>2]|0)+36>>2]=c[q>
x3e;2];if(!(c[o>>2]|0)){Rj(c[m>>2]|0);if(a[(c[m>>2]|0)+24>>0]|0)c[o>>2]=c[(c[m
>>2]|0)+32>>2]}else c[(c[m>>2]|0)+32>>2]=c[o>>2];if(c[o>>2]|0)c[c[j
x3e;>2]>>2]=c[(c[m>>2]|0)+28>>2]}c[g>>2]=c[o>>2];v=c[g>>2]|0;i=
w;return v|0}function Rj(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;e=n+28|0;l=n+24|0;m=n+20|0;g=n+16|0;j=n+12
|0;f=n+8|0;k=n+4|0;h=n;c[e>>2]=b;a:do if((c[(c[e>>2]|0)+28>>2]|0)>>>0<4294967295
){c[f>>2]=(c[(c[e>>2]|0)+28>>2]|0)+1;c[k>>2]=c[(c[e>>2]|0)+36>>2];c[
k>>2]=c[(c[e>>2]|0)+36>>2];while(1){if((c[k>>2]|0)>>>0>=(c[(c[e>
;>2]|0)+40>>2]|0)>>>0)break a;c[l>>2]=(c[(c[e>>2]|0)+16>>2]|0)+16+((
c[k>>2]|0)*12|0);c[l>>2]=(c[l>>2]|0)+4;c[m>>2]=(d[(c[l>>2]|0)+-4>>0]|
0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)<
;<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;c[l>>2]=(c[l>>2]|0)+4;c[g>>2]=(
d[(c[l>>2]|0)+-4>>0]|0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l
x3e;>2]|0)+-4+2>>0]|0)<<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;c[j>>2]=(
d[c[l>>2]>>0]|0)<<24|(d[(c[l>>2]|0)+1>>0]|0)<<16|(d[(c[l>>
2]|0)+2>>0]|0)<<8|(d[(c[l>>2]|0)+3>>0]|0)<<0;if((c[f>>2]|0)>>
;>0<(c[m>>2]|0)>>>0)c[f>>2]=c[m>>2];if((c[f>>2]|0)>>
x3e;0<=(c[g>>2]|0)>>>0?(c[h>>2]=c[j>>2],c[h>>2]|0):0)break;c[k>
x3e;2]=(c[k>>2]|0)+1}c[(c[e>>2]|0)+28>>2]=c[f>>2];c[(c[e>>2]|0)+32>>
2]=c[h>>2];c[(c[e>>2]|0)+36>>2]=c[k>>2];i=n;return}while(0);a[(c[e>>2]|0)+24
x3e;>0]=0;i=n;return}function Sj(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;j=
m+4|0;k=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];if((c[(c[j>>2]|0)+28>>
2]|0)>>>0>=4294967295){c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}do if(d[(c[j>>2]|0
)+24>>0]|0?(c[(c[j>>2]|0)+28>>2]|0)==(c[c[h>>2]>>2]|0):0){Rj(c[j>>2]|
0);if(!(a[(c[j>>2]|0)+24>>0]|0)){c[k>>2]=0;break}c[k>>2]=c[(c[j>>2]|0)+32>
;>2];if(c[k>>2]|0)c[c[h>>2]>>2]=c[(c[j>>2]|0)+28>>2]}else l=9;while(0);if
((l|0)==9)c[k>>2]=Qj(c[g>>2]|0,c[h>>2]|0,1)|0;c[f>>2]=c[k>>2];l=c[f>>
;2]|0;i=m;return l|0}function Tj(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0
;n=p+28|0;k=p+24|0;m=p+20|0;l=p+16|0;o=p+12|0;g=p+8|0;h=p+4|0;j=p;c[e>>2]=a;c[f>>2]=b;if(((c[e>>2]|
0)+16|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[n>
;>2]=(c[e>>2]|0)+4;c[n>>2]=(c[n>>2]|0)+4;c[k>>2]=(d[(c[n>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;c[n>>2]=(c[e>>2]|0)+12;c[n>
x3e;2]=(c[n>>2]|0)+4;c[m>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4
+3>>0]|0)<<0;if(!((c[k>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0
)-(c[e>>2]|0)|0)>>>0?(c[k>>2]|0)>>>0>=(16+((c[m>>2]|0)*12|0)|0)
x3e;>>0:0))sc(c[f>>2]|0,8);c[j>>2]=0;c[l>>2]=0;while(1){if((c[l>>2]|0)>
x3e;>0>=(c[m>>2]|0)>>>0)break;c[n>>2]=(c[n>>2]|0)+4;c[o>>2]=(d[(
c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>
;>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;c[n>>2]=(c
[n>>2]|0)+4;c[g>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1
>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>
x3e;0]|0)<<0;c[n>>2]=(c[n>>2]|0)+4;c[h>>2]=(d[(c[n>>2]|0)+-4>>0]|0)
x3c;<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<
x3c;8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;if((c[o>>2]|0)>>>0>(c[g>>
;2]|0)>>>0)sc(c[f>>2]|0,8);if((c[l>>2]|0)>>>0>0?(c[o>>2]|0)>
;>>0<=(c[j>>2]|0)>>>0:0)sc(c[f>>2]|0,8);if((c[(c[f>>2]|0)+8>>
;2]|0)>>>0>=1?(c[h>>2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)
x3e;>>0:0)sc(c[f>>2]|0,16);c[j>>2]=c[g>>2];c[l>>2]=(c[l>>2]|0)+1}i=p
;return 0}function Uj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2
]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=13;c[c[f>>
;2]>>2]=(d[c[g>>2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(
d[(c[g>>2]|0)+2>>0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function
Vj(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;c[(c[f>>2]|0)+16
>>2]=c[g>>2];c[g>>2]=(c[g>>2]|0)+6;c[(c[f>>2]|0)+24>>2]=(d[c[g>
x3e;2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>
x3e;0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;c[(c[f>>2]|0)+28>>2]=0;c[(c[
f>>2]|0)+32>>2]=0;i=e;return 0}function Wj(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>
2]=a;c[d>>2]=c[(c[b>>2]|0)+36>>2];c[(c[b>>2]|0)+28>>2]=0;if(!(c[d>>2
]|0)){i=e;return}if(!(c[(c[b>>2]|0)+32>>2]|0)){i=e;return}Fb(c[d>>2]|0,c[(c[b>>2]|0)+32
x3e;>2]|0);c[(c[b>>2]|0)+32>>2]=0;i=e;return}function Xj(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[f>>2]=c[f>>2];c[e>>2]=c[e>>2];i=d;
return 0}function Yj(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[f>
x3e;2]=c[f>>2];c[c[e>>2]>>2]=0;i=d;return 0}function Zj(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;o=i;i=i+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;p=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a
;c[j>>2]=b;c[k>>2]=e;c[p>>2]=f;c[n>>2]=_j((c[(c[h>>2]|0)+16>>2]|0)+6
|0,c[p>>2]|0)|0;if(!(c[n>>2]|0)){c[g>>2]=0;p=c[g>>2]|0;i=o;return p|0}c[n>>2]=(
c[n>>2]|0)+4;c[l>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+
1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>
x3e;0]|0)<<0;c[m>>2]=(d[c[n>>2]>>0]|0)<<24|(d[(c[n>>2]|0)+1>>
;0]|0)<<16|(d[(c[n>>2]|0)+2>>0]|0)<<8|(d[(c[n>>2]|0)+3>>0]|0)<
x3c;0;if(c[l>>2]|0?$j((c[(c[h>>2]|0)+16>>2]|0)+(c[l>>2]|0)|0,c[k>>2]|0)|0:0){c
[g>>2]=Ya[c[(c[(c[j>>2]|0)+12>>2]|0)+12>>2]&127](c[j>>2]|0,c[k>>
;2]|0)|0;p=c[g>>2]|0;i=o;return p|0}if(c[m>>2]|0){c[g>>2]=ak((c[(c[h>>2]|0)+16>>
;2]|0)+(c[m>>2]|0)|0,c[k>>2]|0)|0;p=c[g>>2]|0;i=o;return p|0}else{c[g>>2]=0;p=c[g>
x3e;2]|0;i=o;return p|0}return 0}function _j(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;n=i;i=i+48|0;l=n+32|0;
e=n+28|0;f=n+24|0;o=n+20|0;g=n+16|0;j=n+12|0;h=n+8|0;m=n+4|0;k=n;c[e>>2]=a;c[f>>2]=b;c[o>>2]=(d[c[
e>>2]>>0]|0)<<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>>2]|0
)+2>>0]|0)<<8|(d[(c[e>>2]|0)+3>>0]|0)<<0;c[j>>2]=0;c[g>>2]=
c[o>>2];c[e>>2]=(c[e>>2]|0)+4;while(1){if((c[j>>2]|0)>>>0>=(c[g>
;>2]|0)>>>0){e=8;break}c[h>>2]=((c[j>>2]|0)+(c[g>>2]|0)|0)>>>1;
c[m>>2]=(c[e>>2]|0)+((c[h>>2]|0)*11|0);c[m>>2]=(c[m>>2]|0)+3;c[k>>2]=(
d[(c[m>>2]|0)+-3>>0]|0)<<16|(d[(c[m>>2]|0)+-3+1>>0]|0)<<8|(d[(c[m>
;>2]|0)+-3+2>>0]|0)<<0;if((c[f>>2]|0)>>>0<(c[k>>2]|0)>>
;>0){c[g>>2]=c[h>>2];continue}if((c[f>>2]|0)>>>0<=(c[k>>2]|0)
x3e;>>0){e=7;break}c[j>>2]=(c[h>>2]|0)+1}if((e|0)==7){c[l>>2]=c[m>>2];o=c[l>
;>2]|0;i=n;return o|0}else if((e|0)==8){c[l>>2]=0;o=c[l>>2]|0;i=n;return o|0}return 0}function $j(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;o=i;i=i+48|0;n=o+36|0;e=o+32|0;f=o+28|0;p=o+24|0;h=o+20|0;k=o+16|0;j
=o+12|0;l=o+8|0;m=o+4|0;g=o;c[e>>2]=a;c[f>>2]=b;c[p>>2]=(d[c[e>>2]>>0]|0)<
;<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>>2]|0)+2>>0]|0)<<8|(d[(
c[e>>2]|0)+3>>0]|0)<<0;c[k>>2]=0;c[h>>2]=c[p>>2];c[e>>2]=(
c[e>>2]|0)+4;while(1){if((c[k>>2]|0)>>>0>=(c[h>>2]|0)>>>0){e=8;
break}c[j>>2]=((c[k>>2]|0)+(c[h>>2]|0)|0)>>>1;c[l>>2]=(c[e>>2]|
0)+(c[j>>2]<<2);c[l>>2]=(c[l>>2]|0)+3;c[m>>2]=(d[(c[l>>2]|0)+-3>
;>0]|0)<<16|(d[(c[l>>2]|0)+-3+1>>0]|0)<<8|(d[(c[l>>2]|0)+-3+2>>
0]|0)<<0;p=c[l>>2]|0;c[l>>2]=p+1;c[g>>2]=d[p>>0];if((c[f>>2]|0)>
;>>0<(c[m>>2]|0)>>>0){c[h>>2]=c[j>>2];continue}if((c[f>>2]|
0)>>>0<=((c[m>>2]|0)+(c[g>>2]|0)|0)>>>0){e=7;break}c[k>>2]=(c[j
>>2]|0)+1}if((e|0)==7){c[n>>2]=1;p=c[n>>2]|0;i=o;return p|0}else if((e|0)==8){c[n>>2]=0;
p=c[n>>2]|0;i=o;return p|0}return 0}function ak(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;n=i;i=i+48
|0;l=n+32|0;e=n+28|0;f=n+24|0;o=n+20|0;g=n+16|0;j=n+12|0;h=n+8|0;m=n+4|0;k=n;c[e>>2]=a;c[f>>2]=b;c[o>
x3e;2]=(d[c[e>>2]>>0]|0)<<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>
;>2]|0)+2>>0]|0)<<8|(d[(c[e>>2]|0)+3>>0]|0)<<0;c[j>>2]=0;c[g>
;>2]=c[o>>2];c[e>>2]=(c[e>>2]|0)+4;while(1){if((c[j>>2]|0)>>>0>=(
c[g>>2]|0)>>>0){e=8;break}c[h>>2]=((c[j>>2]|0)+(c[g>>2]|0)|0)>>
x3e;1;c[m>>2]=(c[e>>2]|0)+((c[h>>2]|0)*5|0);c[m>>2]=(c[m>>2]|0)+3;c[k>>
;2]=(d[(c[m>>2]|0)+-3>>0]|0)<<16|(d[(c[m>>2]|0)+-3+1>>0]|0)<<8|(d[(c
[m>>2]|0)+-3+2>>0]|0)<<0;if((c[f>>2]|0)>>>0<(c[k>>2]|0)>
;>>0){c[g>>2]=c[h>>2];continue}if((c[f>>2]|0)>>>0<=(c[k>>2
]|0)>>>0){e=7;break}c[j>>2]=(c[h>>2]|0)+1}if((e|0)==7){c[l>>2]=(((d[c[m>>
2]>>0]|0)&65535)<<8|((d[(c[m>>2]|0)+1>>0]|0)&65535)<<0)&65535;o
=c[l>>2]|0;i=n;return o|0}else if((e|0)==8){c[l>>2]=0;o=c[l>>2]|0;i=n;return o|0}return 0}function
bk(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;m=i;i=i+32|0;f=m+24|0;g=m+20|0;h=m+16|0;n=m+12|0;l=m+8|0;j=m+4|
0;k=m;c[g>>2]=a;c[h>>2]=b;c[n>>2]=e;c[l>>2]=_j((c[(c[g>>2]|0)+16>>2]|
0)+6|0,c[n>>2]|0)|0;if(!(c[l>>2]|0)){c[f>>2]=-1;n=c[f>>2]|0;i=m;return n|0}c[l>>
;2]=(c[l>>2]|0)+4;c[j>>2]=(d[(c[l>>2]|0)+-4>>0]|0)<<24|(d[(c[l>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)<<8|(d[(c[l>>2]|0)+-4+3
x3e;>0]|0)<<0;c[l>>2]=(c[l>>2]|0)+4;c[k>>2]=(d[(c[l>>2]|0)+-4>>
0]|0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;if(c[j>>2]|0?$j((c[(c[g>>2]|0)+16>
;>2]|0)+(c[j>>2]|0)|0,c[h>>2]|0)|0:0){c[f>>2]=1;n=c[f>>2]|0;i=m;return n|0}if(c[k
x3e;>2]|0?ak((c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]|0)|0,c[h>>2]|0)|0:0){c[f>>
2]=0;n=c[f>>2]|0;i=m;return n|0}c[f>>2]=-1;n=c[f>>2]|0;i=m;return n|0}function ck(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;l=i;i=i+32|0;e=l+28|0;n=l+24|0;m=l+20|0;f=l+16|0;g=l+12|0;j=l+8|0;k=l+4|0;h=l;c[n>
x3e;2]=a;c[m>>2]=b;c[f>>2]=c[n>>2];c[g>>2]=c[(c[f>>2]|0)+24>>2];c[j
x3e;>2]=(c[(c[n>>2]|0)+16>>2]|0)+10;if(dk(c[f>>2]|0,(c[g>>2]|0)+1|0,c[m>>
2]|0)|0){c[e>>2]=0;n=c[e>>2]|0;i=l;return n|0}c[k>>2]=c[(c[f>>2]|0)+32>>2];c[h
>>2]=0;while(1){if((c[h>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[j
x3e;>2]=(c[j>>2]|0)+3;c[(c[k>>2]|0)+(c[h>>2]<<2)>>2]=(d[(c[j>>2
]|0)+-3>>0]|0)<<16|(d[(c[j>>2]|0)+-3+1>>0]|0)<<8|(d[(c[j>>2]|0)+-3+2
>>0]|0)<<0;c[j>>2]=(c[j>>2]|0)+8;c[h>>2]=(c[h>>2]|0)+1}c[(c[k>
x3e;2]|0)+(c[h>>2]<<2)>>2]=0;c[e>>2]=c[k>>2];n=c[e>>2]|0;i=l;return
n|0}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,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0
;j=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=c[(c[f>>2]|0)+28>>2];c[j
x3e;>2]=0;do if((c[g>>2]|0)>>>0>(c[(c[f>>2]|0)+28>>2]|0)>>>
;0){c[(c[f>>2]|0)+36>>2]=c[h>>2];k=hc(c[h>>2]|0,4,c[k>>2]|0,c[g>>2]|
0,c[(c[f>>2]|0)+32>>2]|0,j)|0;c[(c[f>>2]|0)+32>>2]=k;if(!(c[j>>2]|0)){c[(c[f
x3e;>2]|0)+28>>2]=c[g>>2];break}c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|
0}while(0);c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|0}function ek(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;q=i;i=i+48|0;f=q+40|0;g=q+36|0;r=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;n=q+16|0;o=q+12|
0;p=q+8|0;l=q+4|0;m=q;c[g>>2]=a;c[r>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];c[k>
x3e;2]=c[(c[j>>2]|0)+24>>2];c[n>>2]=(c[(c[g>>2]|0)+16>>2]|0)+10;if(dk(c[j>
;>2]|0,(c[k>>2]|0)+1|0,c[r>>2]|0)|0){c[f>>2]=0;r=c[f>>2]|0;i=q;return r|0}c[o>
x3e;2]=c[(c[j>>2]|0)+32>>2];while(1){if((c[k>>2]|0)>>>0<=0)break;c[n>>
;2]=(c[n>>2]|0)+3;c[p>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0
)+-3+1>>0]|0)<<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;c[n>>2]=(c[n>>
;2]|0)+4;c[l>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<
;<0;c[n>>2]=(c[n>>2]|0)+4;c[m>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(
d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n
x3e;>2]|0)+-4+3>>0]|0)<<0;if(c[l>>2]|0?$j((c[(c[g>>2]|0)+16>>2]|0)+(c[l
x3e;>2]|0)|0,c[h>>2]|0)|0:0)e=9;else e=7;if(((e|0)==7?(e=0,c[m>>2]|0):0)?ak((c[(c[g>>2]|0)+16
>>2]|0)+(c[m>>2]|0)|0,c[h>>2]|0)|0:0)e=9;if((e|0)==9){c[c[o>>2]>>2]=c[p>
x3e;2];c[o>>2]=(c[o>>2]|0)+4}c[k>>2]=(c[k>>2]|0)+-1}c[c[o>>2]>>2]=0;
c[f>>2]=c[(c[j>>2]|0)+32>>2];r=c[f>>2]|0;i=q;return r|0}function fk(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;y=i;i=i+80|0;f=y+72|0;g=y+68|0;h=y+64|0
;z=y+60|0;w=y+56|0;x=y+52|0;p=y+48|0;l=y+44|0;s=y+40|0;j=y+36|0;u=y+32|0;t=y+28|0;o=y+24|0;k=y+20|0;v=y+16|0;n=y+12|0;m=y+8|0;r=
y+4|0;q=y;c[g>>2]=a;c[h>>2]=b;c[z>>2]=e;c[w>>2]=_j((c[(c[g>>2]|0)+16>>
;2]|0)+6|0,c[z>>2]|0)|0;if(!(c[w>>2]|0)){c[f>>2]=0;z=c[f>>2]|0;i=y;return z|0}c[w>
x3e;2]=(c[w>>2]|0)+4;c[l>>2]=(d[(c[w>>2]|0)+-4>>0]|0)<<24|(d[(c[w>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|0)<<8|(d[(c[w>>2]|0)+-4
+3>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+4;c[s>>2]=(d[(c[w>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[w>>2]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[w>>2]|0)+-4+3>>0]|0)<<0;if((c[l>>2]|0)==0&(c[s>>2]|
0)==0){c[f>>2]=0;z=c[f>>2]|0;i=y;return z|0}if(!(c[l>>2]|0)){c[f>>2]=gk(c[g>>2
]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[s>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return
z|0}a=c[g>>2]|0;if(!(c[s>>2]|0)){c[f>>2]=hk(a,(c[(c[g>>2]|0)+16>>2]|0)+(c[l
x3e;>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return z|0}c[j>>2]=a;c[w>>2]=(c[(c[g>
;>2]|0)+16>>2]|0)+(c[s>>2]|0);c[n>>2]=(c[(c[g>>2]|0)+16>>2]|0)+(c[l>
x3e;2]|0);c[w>>2]=(c[w>>2]|0)+4;c[t>>2]=(d[(c[w>>2]|0)+-4>>0]|0)<<24
|(d[(c[w>>2]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|0)<<8|(d[(c[
w>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=ik(c[n>>2]|0)|0;c[n>>2]=(c[n>
x3e;2]|0)+4;c[u>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>
;0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)
x3c;<0;if(!(c[t>>2]|0)){c[f>>2]=hk(c[g>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[
l>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return z|0}if(!(c[k>>2]|0)){c[f>>2]=gk
(c[g>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[s>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>
;2]|0;i=y;return z|0}if(dk(c[j>>2]|0,(c[k>>2]|0)+(c[t>>2]|0)+1|0,c[h>>2]|0)|0){c[f>
x3e;2]=0;z=c[f>>2]|0;i=y;return z|0}c[x>>2]=c[(c[j>>2]|0)+32>>2];c[n>>2]=(c[n
x3e;>2]|0)+3;c[o>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>
;>0]|0)<<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+
1;c[k>>2]=d[z>>0];c[m>>2]=1;c[w>>2]=(c[w>>2]|0)+3;c[v>>2]=(d[(c[w>
;>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<<8|(d[(c[w>>2]|
0)+-3+2>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+2;c[r>>2]=1;c[p>>2]=0;while(1){
if((c[v>>2]|0)>>>0<=((c[o>>2]|0)+(c[k>>2]|0)|0)>>>0){if((c[v>
;>2]|0)>>>0<(c[o>>2]|0)>>>0){s=c[v>>2]|0;z=c[p>>2]|0;c[p
x3e;>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=s}c[r>>2]=(c[r>>2]|0)+1;if((c[r>
;>2]|0)>>>0>(c[t>>2]|0)>>>0)break;c[w>>2]=(c[w>>2]|0)+3;c[
v>>2]=(d[(c[w>>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<
x3c;8|(d[(c[w>>2]|0)+-3+2>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+2;continue}c[q>
x3e;2]=0;while(1){if((c[q>>2]|0)>>>0>(c[k>>2]|0)>>>0)break;s=(c[o>
x3e;2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>
;2]=s;c[q>>2]=(c[q>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1;if((c[m>>2]|0)>>
x3e;0>(c[u>>2]|0)>>>0)break;c[n>>2]=(c[n>>2]|0)+3;c[o>>2]=(d[(c[n>
;>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>>0]|0)<<8|(d[(c[n>>2]|
0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+1;c[k>>2]=d[z>>0]}a:do if((c
[r>>2]|0)>>>0>(c[t>>2]|0)>>>0){if((c[m>>2]|0)>>>
0<=(c[u>>2]|0)>>>0){c[q>>2]=0;while(1){if((c[q>>2]|0)>>>0>(
c[k>>2]|0)>>>0)break;w=(c[o>>2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>
;2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=w;c[q>>2]=(c[q>>2]|0)+1}while(1){if((c[m>
;>2]|0)>>>0>=(c[u>>2]|0)>>>0)break a;c[n>>2]=(c[n>>2]|0)+3
;c[o>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>>0]|0)<
;<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+1;c[k>>
2]=d[z>>0];c[q>>2]=0;while(1){if((c[q>>2]|0)>>>0>(c[k>>2]|0)>
x3e;>0)break;w=(c[o>>2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>
2]|0)+(z<<2)>>2]=w;c[q>>2]=(c[q>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1}}}else
{v=c[v>>2]|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=v;while
(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a;c[w>>2]=(c[w>
;>2]|0)+3;v=(d[(c[w>>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<
x3c;8|(d[(c[w>>2]|0)+-3+2>>0]|0)<<0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>
2]|0)+(z<<2)>>2]=v;c[w>>2]=(c[w>>2]|0)+2;c[r>>2]=(c[r>>2]|0)+1}}while
(0);c[(c[x>>2]|0)+(c[p>>2]<<2)>>2]=0;c[f>>2]=c[x>>2];z=c[f>>
;2]|0;i=y;return z|0}function gk(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;m=i;i=i+32|0;f=m+28|0;o=m+24|0
;g=m+20|0;n=m+16|0;h=m+12|0;k=m+8|0;j=m+4|0;l=m;c[o>>2]=a;c[g>>2]=b;c[n>>2]=e;c[h>>2]=c[
o>>2];c[g>>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<
x3c;24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(
d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if(dk(c[h>>2]|0,(c[k>>2]|0)+1|0,c[n>>2]|
0)|0){c[f>>2]=0;o=c[f>>2]|0;i=m;return o|0}c[l>>2]=c[(c[h>>2]|0)+32>>2];c[j>
;>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break;c[g>
x3e;2]=(c[g>>2]|0)+3;c[(c[l>>2]|0)+(c[j>>2]<<2)>>2]=(d[(c[g>>2]|0)+-
3>>0]|0)<<16|(d[(c[g>>2]|0)+-3+1>>0]|0)<<8|(d[(c[g>>2]|0)+-3+2>
x3e;0]|0)<<0;c[g>>2]=(c[g>>2]|0)+2;c[j>>2]=(c[j>>2]|0)+1}c[(c[l>>2]|
0)+(c[j>>2]<<2)>>2]=0;c[f>>2]=c[l>>2];o=c[f>>2]|0;i=m;return o|0}function
hk(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;n=i;i=i+48|0;f=n+32|0;p=n+28|0;g=n+24|0;o=n+20|0;h=n+16
|0;k=n+12|0;j=n+8|0;l=n+4|0;m=n;c[p>>2]=a;c[g>>2]=b;c[o>>2]=e;c[h>>2]=c[p>>2];
c[j>>2]=ik(c[g>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-
4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>
;>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if(dk(c[h>>2]|0,(c[j>>
2]|0)+1|0,c[o>>2]|0)|0){c[f>>2]=0;p=c[f>>2]|0;i=n;return p|0}c[l>>2]=c[(c[h>>2
]|0)+32>>2];while(1){if((c[k>>2]|0)>>>0<=0)break;c[g>>2]=(c[g>>2]|0)+
3;c[m>>2]=(d[(c[g>>2]|0)+-3>>0]|0)<<16|(d[(c[g>>2]|0)+-3+1>>0]|0)<
;<8|(d[(c[g>>2]|0)+-3+2>>0]|0)<<0;p=c[g>>2]|0;c[g>>2]=p+1;c[j>>
2]=(d[p>>0]|0)+1;do{c[c[l>>2]>>2]=c[m>>2];c[m>>2]=(c[m>>2]|0)+1;c[l
x3e;>2]=(c[l>>2]|0)+4;p=(c[j>>2]|0)+-1|0;c[j>>2]=p}while((p|0)!=0);c[k>>2]=(c[k>
;>2]|0)+-1}c[c[l>>2]>>2]=0;c[f>>2]=c[(c[h>>2]|0)+32>>2];p=c[f>>
2]|0;i=n;return p|0}function ik(a){a=a|0;var b=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+8|0;e=g+4|0;f=g;c[b>>2]=a;c[b>>
;2]=(c[b>>2]|0)+4;c[e>>2]=(d[(c[b>>2]|0)+-4>>0]|0)<<24|(d[(c[b>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[b>>2]|0)+-4+2>>0]|0)<<8|(d[(c[b>>2]|0)+-4+3
x3e;>0]|0)<<0;c[f>>2]=0;c[b>>2]=(c[b>>2]|0)+3;while(1){if((c[e>>2]|0)>
;>>0<=0)break;c[f>>2]=(c[f>>2]|0)+(1+(d[c[b>>2]>>0]|0));c[b>>2]=(
c[b>>2]|0)+4;c[e>>2]=(c[e>>2]|0)+-1}i=g;return c[f>>2]|0}function jk(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;B=i;i=i+96|0;e=B+84|0;f=B+80|0;y=B+
76|0;r=B+72|0;x=B+68|0;s=B+64|0;q=B+60|0;A=B+56|0;j=B+52|0;u=B+48|0;k=B+44|0;w=B+40|0;m=B+36|0;o=B+32|0;g=B+28|0;h=B+24|0;t=B+20
|0;v=B+16|0;n=B+12|0;p=B+8|0;z=B+4|0;l=B;c[e>>2]=a;c[f>>2]=b;c[y>>2]=(c[e>>2]|0)+2;c[y
x3e;>2]=(c[y>>2]|0)+4;c[r>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[y>
x3e;2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>>2]|
0)+-4+3>>0]|0)<<0;c[y>>2]=(c[y>>2]|0)+4;c[x>>2]=(d[(c[y>>2]|0)+-4>
;>0]|0)<<24|(d[(c[y>>2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>
;0]|0)<<8|(d[(c[y>>2]|0)+-4+3>>0]|0)<<0;if(!((c[r>>2]|0)>>>0<
;=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>2]|0)|0)>>>0?(c[r>>2]|0)>>>
;0>=(10+((c[x>>2]|0)*11|0)|0)>>>0:0))sc(c[f>>2]|0,8);c[q>>2]=1;c[s>>
2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[x>>2]|0)>>>0)break;c[y>>2]=(
c[y>>2]|0)+3;c[A>>2]=(d[(c[y>>2]|0)+-3>>0]|0)<<16|(d[(c[y>>2]|0)+-3+
1>>0]|0)<<8|(d[(c[y>>2]|0)+-3+2>>0]|0)<<0;c[y>>2]=(c[y>>2]|
0)+4;c[j>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[y>>2]|0)+-4+1>>0]|0)
x3c;<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>>2]|0)+-4+3>>0]|0)<<
;0;c[y>>2]=(c[y>>2]|0)+4;c[u>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[
y>>2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>
x3e;2]|0)+-4+3>>0]|0)<<0;if(!((c[j>>2]|0)>>>0<(c[r>>2]|0)>>
;>0?(c[u>>2]|0)>>>0<(c[r>>2]|0)>>>0:0))sc(c[f>>2]|0,8);if((
c[A>>2]|0)>>>0<(c[q>>2]|0)>>>0)sc(c[f>>2]|0,8);c[q>>2
]=(c[A>>2]|0)+1;a:do if(c[j>>2]|0){c[k>>2]=(c[e>>2]|0)+(c[j>>2]|0);c[k>
x3e;2]=(c[k>>2]|0)+4;c[w>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4
+3>>0]|0)<<0;c[o>>2]=0;if(((c[k>>2]|0)+(c[w>>2]<<2)|0)>>
x3e;0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[m>>2]=0;while(1){
if((c[m>>2]|0)>>>0>=(c[w>>2]|0)>>>0)break a;c[k>>2]=(c[k>
x3e;2]|0)+3;c[g>>2]=(d[(c[k>>2]|0)+-3>>0]|0)<<16|(d[(c[k>>2]|0)+-3+1>>
;0]|0)<<8|(d[(c[k>>2]|0)+-3+2>>0]|0)<<0;b=c[k>>2]|0;c[k>>2]=b+1;c[h
x3e;>2]=d[b>>0];if(((c[g>>2]|0)+(c[h>>2]|0)|0)>>>0>=1114112)sc(c[f>
x3e;2]|0,8);if((c[g>>2]|0)>>>0<(c[o>>2]|0)>>>0)sc(c[f>>2]|0,8);
c[o>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+1}}while(0);b:do if(c[u
x3e;>2]|0){c[t>>2]=(c[e>>2]|0)+(c[u>>2]|0);c[t>>2]=(c[t>>2]|0)+4;c[v>
;>2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16
|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-4+3>>0]|0)<<0;c[p>
;>2]=0;if(c[v>>2]<<2>>>0>((c[(c[f>>2]|0)+4>>2]|0)-(c[t>>
;2]|0)|0)>>>0)sc(c[f>>2]|0,8);c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0
x3e;=(c[v>>2]|0)>>>0)break b;c[t>>2]=(c[t>>2]|0)+3;c[z>>2]=(d[(c[t>
x3e;2]|0)+-3>>0]|0)<<16|(d[(c[t>>2]|0)+-3+1>>0]|0)<<8|(d[(c[t>>2]|0)+-
3+2>>0]|0)<<0;c[t>>2]=(c[t>>2]|0)+2;c[l>>2]=(((d[(c[t>>2]|0)+-2>
;>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c
[z>>2]|0)>>>0>=1114112)sc(c[f>>2]|0,8);if((c[z>>2]|0)>>>0<(
c[p>>2]|0)>>>0)sc(c[f>>2]|0,8);c[p>>2]=(c[z>>2]|0)+1;if((c[(c[f>>
;2]|0)+8>>2]|0)>>>0>=1?(c[l>>2]|0)>>>0>=(c[(c[f>>2]|0)+172
>>2]|0)>>>0:0)sc(c[f>>2]|0,16);c[n>>2]=(c[n>>2]|0)+1}}while(0);c[s>
x3e;2]=(c[s>>2]|0)+1}i=B;return 0}function kk(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[f>>2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=14;c[c[e>>2]>
;>2]=-1;i=d;return 0}function lk(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;m=k+20|0;l=k
+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[m>>2]=a;c[l>>2]=b;c[f>>2]=d;c[g>>2]=e;c[j>>
;2]=mk(c[m>>2]|0,c[l>>2]|0)|0;if(!(c[j>>2]|0)){c[h>>2]=142;m=c[h>>2]|0;i=k;return
m|0}if(c[g>>2]|0)c[c[g>>2]>>2]=c[(c[j>>2]|0)+12>>2];c[h>>2]=Kc(c[f
x3e;>2]|0,c[(c[j>>2]|0)+8>>2]|0)|0;m=c[h>>2]|0;i=k;return m|0}function mk(a,b){a=a|0;b=b|0;var
d=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;g=j+16|0;k=j+12|0;d=j+8|0;h=j+4|0;f=j;c[k>>2]=a;c[d>>2]=b;c[h>>
;2]=c[(c[k>>2]|0)+156>>2];c[f>>2]=(c[h>>2]|0)+((e[(c[k>>2]|0)+152>>1
]|0)<<4);while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>>0){d=7;break
}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)?c[(c[h>>2]|0)+12>>2]|0:0){d=5;break}c[h>
;>2]=(c[h>>2]|0)+16}if((d|0)==5){c[g>>2]=c[h>>2];k=c[g>>2]|0;i=j;return k|0}else if
((d|0)==7){c[g>>2]=0;k=c[g>>2]|0;i=j;return k|0}return 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,r=0,s=0;q=i;i=i+48|0;g=q+40|0;h=q+36|0;j=q+32|0;k=q+28|0;s=q+24|0;r=q+20|0;m=q+16|
0;n=q+12|0;p=q+8|0;o=q+4|0;l=q;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[s>>2]=e;c[r>>2]=
f;c[n>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+4>>2];c[s>>2]=c[s>>2];c[r>
x3e;2]=c[r>>2];c[p>>2]=c[(c[j>>2]|0)+532>>2];do if(!(c[p>>2]|0)){c[p>>
;2]=Ud(c[n>>2]|0,11340)|0;if(c[p>>2]|0){c[(c[j>>2]|0)+532>>2]=c[p>>2];c[(c[j
x3e;>2]|0)+508>>2]=c[c[p>>2]>>2];break}c[g>>2]=3;s=c[g>>2]|0;i=q;return s
|0}while(0);c[o>>2]=c[(c[j>>2]|0)+96>>2];c[l>>2]=Vd(c[o>>2]|0,71003)|0;c[(c[j
x3e;>2]|0)+536>>2]=c[l>>2];c[m>>2]=ok(c[h>>2]|0,c[j>>2]|0)|0;if(c[m>
x3e;2]|0){c[g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}if((c[k>>2]|0)<0)c[k>>
;2]=0;if((c[k>>2]|0)>=(c[(c[j>>2]|0)+132+8>>2]|0)){c[g>>2]=6;s=c[g>>2]|0;
i=q;return s|0}s=Kc(c[h>>2]|0,c[(c[(c[j>>2]|0)+132+12>>2]|0)+(c[k>>2]<<2)>
;>2]|0)|0;c[m>>2]=s;if(s|0){c[g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}c[m>>
;2]=Ya[c[(c[p>>2]|0)+132>>2]&127](c[j>>2]|0,c[h>>2]|0)|0;if(c[m>>2]|0){c[
g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}else{c[c[j>>2]>>2]=c[(c[j>>
2]|0)+132+8>>2];c[(c[j>>2]|0)+4>>2]=c[k>>2];c[g>>2]=c[m>>2];s=c[g>
;>2]|0;i=q;return s|0}return 0}function ok(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;m=i;i=i+32|0;g=m+28|0;h
=m+24|0;j=m+20|0;d=m+16|0;k=m+12|0;f=m+8|0;e=m+4|0;l=m;c[h>>2]=a;c[j>>2]=b;c[d>>2]=c[(c[h>>
;2]|0)+28>>2];c[(c[j>>2]|0)+132>>2]=0;c[(c[j>>2]|0)+132+4>>2]=0;c[(c[j>
x3e;2]|0)+132+8>>2]=0;c[e>>2]=Mc(c[h>>2]|0)|0;c[f>>2]=Oc(c[h>>2]|0,k)|0;if(c[k
>>2]|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}if((c[f>>2]|0)!=65536&(
c[f>>2]|0)!=1953784678&(c[f>>2]|0)!=1330926671&(c[f>>2]|0)!=1953658213&(c[f>
x3e;2]|0)!=1954115633&(c[f>>2]|0)!=131072){c[g>>2]=2;l=c[g>>2]|0;i=m;return l|0}c[(c[j>
x3e;2]|0)+132>>2]=1953784678;do if((c[f>>2]|0)==1953784678){f=le(c[h>>2]|0,7544,(c[j>>2]|
0)+132|0)|0;c[k>>2]=f;if(f|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}f=hc(c[d>
x3e;2]|0,4,0,c[(c[j>>2]|0)+132+8>>2]|0,0,k)|0;c[(c[j>>2]|0)+132+12>>2]=f;if(c[k>>
;2]|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}f=ee(c[h>>2]|0,c[(c[j>>2]|0)+
132+8>>2]<<2)|0;c[k>>2]=f;if(f|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return
l|0}c[l>>2]=0;while(1){b=c[h>>2]|0;if((c[l>>2]|0)>=(c[(c[j>>2]|0)+132+8>>
;2]|0))break;f=je(b)|0;c[(c[(c[j>>2]|0)+132+12>>2]|0)+(c[l>>2]<<2)>>2]=f;c[l
x3e;>2]=(c[l>>2]|0)+1}ge(b)}else{c[(c[j>>2]|0)+132+4>>2]=65536;c[(c[j>>2]|0)+132+8
x3e;>2]=1;l=bc(c[d>>2]|0,4,k)|0;c[(c[j>>2]|0)+132+12>>2]=l;if(!(c[k>>2]|0)){c[c[(c[
j>>2]|0)+132+12>>2]>>2]=c[e>>2];break}c[g>>2]=c[k>>2];l=c[g>>
;2]|0;i=m;return l|0}while(0);c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}function pk(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;I=i;i=i+112|0;o=I+92|0;F=I+88|0;J=I+84|0;l=I+80|0;m=I+76|0;G=I+72|0;x=I+68|0;r=I+103|0;u=I+102|0;s=I+101|0;t=I+100|0;D=I+64|
0;n=I+60|0;H=I+56|0;q=I+52|0;v=I+48|0;p=I+44|0;B=I+40|0;E=I+36|0;w=I+32|0;A=I+98|0;y=I+96|0;C=I+4|0;z=I;c[o>>2]=f;c[F
x3e;>2]=g;c[J>>2]=h;c[l>>2]=j;c[m>>2]=k;a[s>>0]=0;a[t>>0]=0;c[D>>
;2]=c[(c[F>>2]|0)+532>>2];c[J>>2]=c[J>>2];c[n>>2]=0;while(1){if((c[n>>
;2]|0)>=(c[l>>2]|0))break;if((c[(c[m>>2]|0)+(c[n>>2]<<3)>>2]|0)!=1768386662
){if((c[(c[m>>2]|0)+(c[n>>2]<<3)>>2]|0)==1768386675)a[t>>0]=1}else a[s>
x3e;0]=1;c[n>>2]=(c[n>>2]|0)+1}if(!(c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]|0)?!(mk
(c[F>>2]|0,1735162214)|0):0)l=(mk(c[F>>2]|0,1128678944)|0)!=0;else l=1;a[r>>0]=l&1;a[u>
x3e;0]=0;if((a[r>>0]|0)==0?c[(c[D>>2]|0)+84>>2]|0:0){c[G>>2]=Ya[c[(c[D>>2]|0)+
84>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;a[u>>0]=((c[G>>2]|0)!=0^1)&1}if((
a[u>>0]|0)==0?(c[G>>2]=Ya[c[(c[D>>2]|0)+32>>2]&127](c[F>>2]|0,c[o>
x3e;2]|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if(!(e[(c[F>>2]|0)+160+18>>1]|0)){c
[G>>2]=8;J=c[G>>2]|0;i=I;return J|0}c[G>>2]=Ya[c[(c[D>>2]|0)+44>>2]&127](
c[F>>2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+40>>2]&127](c[F>>
;2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+56>>2]&127](c[F>>2]|0,c[o>
;>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+52>>2]&127](c[F>>2]|0,c[o>>2]|0)|
0;c[x>>2]=c[G>>2];if(!(a[u>>0]|0)){c[G>>2]=Oa[c[(c[D>>2]|0)+36>>2]
x26;63](c[F>>2]|0,c[o>>2]|0,0)|0;do if(c[G>>2]|0){if((c[G>>2]|0)==142){if((c[(c[F>
x3e;2]|0)+148>>2]|0)==1953658213){a[r>>0]=0;c[G>>2]=0;break}c[G>>2]=143;if(c[(c[(c[F>
;>2]|0)+128>>2]|0)+52>>2]|0?c[(c[c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]>
x3e;2]|0)+8>>2]|0:0){b[(c[F>>2]|0)+216+34>>1]=0;c[G>>2]=0}}}else{c[G>>2]=Oa[c[(
c[D>>2]|0)+136>>2]&63](c[F>>2]|0,c[o>>2]|0,0)|0;if(((c[G>>2]|0)==142?(c[G
>>2]=147,c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]|0):0)?c[(c[c[(c[(c[F>>2]|0)+128>
;>2]|0)+52>>2]>>2]|0)+8>>2]|0:0){b[(c[F>>2]|0)+216+34>>1]=0;c[G>>
;2]=0}}while(0);if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}c[G>>2]=Oa[c[(c[D>>2]|0)+36>
;>2]&63](c[F>>2]|0,c[o>>2]|0,1)|0;if((c[G>>2]|0)==0?(c[G>>2]=Oa[c[(c[D>
x3e;2]|0)+136>>2]&63](c[F>>2]|0,c[o>>2]|0,1)|0,(c[G>>2]|0)==0):0)a[(c[F>>
2]|0)+296>>0]=1;if((c[G>>2]|0)!=0&(c[G>>2]|0)!=142){J=c[G>>2]|0;i=I;return J|0}c[G
x3e;>2]=Ya[c[(c[D>>2]|0)+48>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;if(c[G>>
2]|0)b[(c[F>>2]|0)+368>>1]=-1}do if(c[(c[D>>2]|0)+140>>2]|0?(c[G>>2]=Ya[c[(c[D
>>2]|0)+140>>2]&127](c[F>>2]|0,c[o>>2]|0)|0,c[G>>2]|0):0)if((c[G>>
;2]|0)==142){c[G>>2]=0;break}else{J=c[G>>2]|0;i=I;return J|0}while(0);c[G>>2]=Ya[c[(c[D>>
;2]|0)+80>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;do if(c[G>>2]|0)if((c[G>>2]|0)!=
142){J=c[G>>2]|0;i=I;return J|0}else{c[(c[F>>2]|0)+556>>2]=0;break}while(0);c[G>>2]=Ya[c
[(c[D>>2]|0)+76>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>
x3e;2]|0)+72>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;c[(c[F>>2]|0)+16>>2]=e[(c[F
x3e;>2]|0)+260+4>>1];c[(c[F>>2]|0)+20>>2]=0;c[(c[F>>2]|0)+24>>2]=0;if((e[(
c[F>>2]|0)+368>>1]|0)!=65535?e[(c[F>>2]|0)+368+64>>1]&256|0:0){if((a[s>>0
]|0)==0?(c[G>>2]=qk(c[F>>2]|0,16,(c[F>>2]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0
;i=I;return J|0}if((c[(c[F>>2]|0)+20>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,1,(c[F>>2
]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if((a[t>>0]|0)==0?(c[G>>2]=qk(c[F
x3e;>2]|0,17,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if((c[(c[F>>
;2]|0)+24>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,2,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){
J=c[G>>2]|0;i=I;return J|0}}else{c[G>>2]=qk(c[F>>2]|0,21,(c[F>>2]|0)+20|0)|0;if(c[G>
;>2]|0){J=c[G>>2]|0;i=I;return J|0}if(!(a[s>>0]|0?1:(c[(c[F>>2]|0)+20>>2]|0)!=0)?(c
[G>>2]=qk(c[F>>2]|0,16,(c[F>>2]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return
J|0}if((c[(c[F>>2]|0)+20>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,1,(c[F>>2]|0)+20|0)|
0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}c[G>>2]=qk(c[F>>2]|0,22,(c[F>>2]|0)+
24|0)|0;if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}if(!(a[t>>0]|0?1:(c[(c[F>>2]|0)+24>
;>2]|0)!=0)?(c[G>>2]=qk(c[F>>2]|0,17,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>
x3e;2]|0;i=I;return J|0}if((c[(c[F>>2]|0)+24>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,2,(c[F>
;>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}}c[H>>2]=c[F>>2];c[q>
x3e;2]=c[(c[H>>2]|0)+8>>2];if((d[r>>0]|0)==1)c[q>>2]=c[q>>2]|1;c[q>>
2]=c[q>>2]|24;if((c[x>>2]|0)==0?(c[(c[F>>2]|0)+468>>2]|0)!=196608:0)c[q>>2]=c[
q>>2]|512;if(c[(c[F>>2]|0)+468+12>>2]|0)c[q>>2]=c[q>>2]|4;if(a[(c[F>>
;2]|0)+296>>0]|0)c[q>>2]=c[q>>2]|32;if(c[(c[F>>2]|0)+784>>2]|0)c[q>>
2]=c[q>>2]|64;if((mk(c[F>>2]|0,1735162214)|0?mk(c[F>>2]|0,1719034226)|0:0)?mk(c[F>>2]|0,
1735811442)|0:0)c[q>>2]=c[q>>2]|256;c[(c[H>>2]|0)+8>>2]=c[q>>2];c[q>>
;2]=0;if((d[r>>0]|0)==1?(e[(c[F>>2]|0)+368>>1]|0)!=65535:0){if(!(!(e[(c[F>>2]|0)+368+64
x3e;>1]&512|0)?!(e[(c[F>>2]|0)+368+64>>1]&1|0):0))c[q>>2]=c[q>>2]|1;if(e[(
c[F>>2]|0)+368+64>>1]&32|0)c[q>>2]=c[q>>2]|2}else{if(e[(c[F>>2]|0)+160+44
>>1]&1|0)c[q>>2]=c[q>>2]|2;if(e[(c[F>>2]|0)+160+44>>1]&2|0)c[q>
x3e;2]=c[q>>2]|1}c[(c[H>>2]|0)+12>>2]=c[q>>2];tk(c[F>>2]|0)|0;c[v>>2
]=0;while(1){if((c[v>>2]|0)>=(c[(c[H>>2]|0)+36>>2]|0))break;c[p>>2]=c[(c[(c[H>
x3e;2]|0)+40>>2]|0)+(c[v>>2]<<2)>>2];J=uk(e[(c[p>>2]|0)+8>>1]|0,e[(c
[p>>2]|0)+10>>1]|0)|0;c[(c[p>>2]|0)+4>>2]=J;c[v>>2]=(c[v>>2]|0)+1}c[
E>>2]=c[(c[F>>2]|0)+612>>2];do if((c[E>>2]|0)>>>0>0){c[w>>
2]=c[(c[(c[F>>2]|0)+104>>2]|0)+28>>2];b[A>>1]=b[(c[F>>2]|0)+160+18>>
1]|0;b[y>>1]=b[(c[F>>2]|0)+368+2>>1]|0;if(!((e[A>>1]|0)!=0?(e[(c[F>>2]|0)+368
x3e;>1]|0)!=65535:0)){b[y>>1]=0;b[A>>1]=1}J=hc(c[w>>2]|0,16,0,c[E>>2]|0,0,G)|0;c[(c
[H>>2]|0)+32>>2]=J;if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}c[B>>2]=0;while(1){
m=c[H>>2]|0;if((c[B>>2]|0)>>>0>=(c[E>>2]|0)>>>0){l=103;break}c[
z>>2]=(c[m+32>>2]|0)+(c[B>>2]<<4);c[G>>2]=Oa[c[(c[D>>2]|0)+152>
x3e;2]&63](c[F>>2]|0,c[B>>2]|0,C)|0;if(c[G>>2]|0){l=112;break}b[c[z>>2]>>
1]=c[C+20>>2]>>6;J=_(b[y>>1]|0,e[C>>1]|0)|0;b[(c[z>>2]|0)+2>>1]=(J+((
e[A>>1]|0)/2|0)|0)/(e[A>>1]|0)|0;c[(c[z>>2]|0)+8>>2]=e[C>>1]<<6;c[(c
[z>>2]|0)+12>>2]=e[C+2>>1]<<6;c[(c[z>>2]|0)+4>>2]=e[C+2>>1
]<<6;c[B>>2]=(c[B>>2]|0)+1}if((l|0)==103){J=m+8|0;c[J>>2]=c[J>>2]|2;c[(c[H>
;>2]|0)+28>>2]=c[E>>2];break}else if((l|0)==112){J=c[G>>2]|0;i=I;return J|0}}while(0);if((c[(
c[H>>2]|0)+8>>2]&2|0)==0?(c[(c[H>>2]|0)+8>>2]&1|0)==0:0){J=(c[H>>2]|
0)+8|0;c[J>>2]=c[J>>2]|1}if(!(c[(c[H>>2]|0)+8>>2]&1)){J=c[G>>2]|0;i=I;return
J|0}c[(c[H>>2]|0)+52>>2]=b[(c[F>>2]|0)+160+36>>1];c[(c[H>>2]|0)+52+4>>
;2]=b[(c[F>>2]|0)+160+38>>1];c[(c[H>>2]|0)+52+8>>2]=b[(c[F>>2]|0)+160+40>
x3e;1];c[(c[H>>2]|0)+52+12>>2]=b[(c[F>>2]|0)+160+42>>1];b[(c[H>>2]|0)+68>
x3e;1]=b[(c[F>>2]|0)+160+18>>1]|0;b[(c[H>>2]|0)+70>>1]=b[(c[F>>2]|0)+216+4>
;>1]|0;b[(c[H>>2]|0)+72>>1]=b[(c[F>>2]|0)+216+6>>1]|0;b[(c[H>>2]|0)+74>
;>1]=(b[(c[H>>2]|0)+70>>1]|0)-(b[(c[H>>2]|0)+72>>1]|0)+(b[(c[F>>2]|0)+216
+8>>1]|0);b[(c[H>>2]|0)+76>>1]=b[(c[F>>2]|0)+216+10>>1]|0;if(d[(c[F>>
;2]|0)+296>>0]|0)l=e[(c[F>>2]|0)+300+10>>1]|0;else l=b[(c[H>>2]|0)+74>>1]|0;b[(
c[H>>2]|0)+78>>1]=l;b[(c[H>>2]|0)+80>>1]=(b[(c[F>>2]|0)+468+8>>1]|0)-((
b[(c[F>>2]|0)+468+10>>1]|0)/2|0);b[(c[H>>2]|0)+82>>1]=b[(c[F>>2]|0)+468+10>
;>1]|0;J=c[G>>2]|0;i=I;return J|0}function qk(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,r=
0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=i;i=i+64|0;h=z+48|0;j=z+54|0;k=z+44|0;t=z+40|0;m=z+36|0;w=z+32|0;u=z+52|0;v=z+28|0;n=z+24|0;
p=z+20|0;o=z+16|0;r=z+12|0;q=z+8|0;s=z+56|0;l=z+4|0;x=z;c[h>>2]=d;b[j>>1]=f;c[k>>2]=g;c[t>>
;2]=c[(c[h>>2]|0)+100>>2];c[m>>2]=0;c[w>>2]=0;c[n>>2]=-1;c[p>>2]=-1;
c[o>>2]=-1;c[r>>2]=-1;c[q>>2]=-1;a[s>>0]=0;c[v>>2]=c[(c[h>>2]|0)+348
+12>>2];b[u>>1]=0;while(1){if((e[u>>1]|0)>=(e[(c[h>>2]|0)+344>>1]|0))break
;a:do if((e[(c[v>>2]|0)+6>>1]|0)==(e[j>>1]|0)?(e[(c[v>>2]|0)+8>>1]|0)>0:0
)switch(e[c[v>>2]>>1]|0){case 2:case 0:{c[q>>2]=e[u>>1];break a}case 1:{if(!(e[(c[v>
;>2]|0)+4>>1]|0)){c[o>>2]=e[u>>1];break a}if(e[(c[v>>2]|0)+2>>1]|0)break
a;c[p>>2]=e[u>>1];break a}case 3:{if((c[r>>2]|0)!=-1?(e[(c[v>>2]|0)+4>>1]&
;1023|0)!=9:0)break a;switch(e[(c[v>>2]|0)+2>>1]|0){case 10:case 1:case 0:break;default:break a}a[s>>
;0]=(e[(c[v>>2]|0)+4>>1]&1023|0)==9;c[r>>2]=e[u>>1];break a}default:break a}while(0
);b[u>>1]=(b[u>>1]|0)+1<<16>>16;c[v>>2]=(c[v>>2]|0)+20}c[n>>
;2]=c[p>>2];if((c[o>>2]|0)>=0)c[n>>2]=c[o>>2];c[l>>2]=0;b:do if((c[r>
;>2]|0)>=0?(c[n>>2]|0)<0|(a[s>>0]|0)!=0:0){c[v>>2]=(c[(c[h>>2]|0)+348+12
x3e;>2]|0)+((c[r>>2]|0)*20|0);switch(e[(c[v>>2]|0)+2>>1]|0){case 0:case 1:{c[l>>2]=
106;break b}case 10:{c[l>>2]=106;break b}default:break b}}else y=23;while(0);do if((y|0)==23){if((c[n>>2]|0)
x3e;=0){c[v>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[n>>2]|0)*20|0);c[l>>2]=107;break
}if((c[q>>2]|0)>=0){c[v>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[q>>2]|0)*20|
0);c[l>>2]=106}}while(0);if(!((c[v>>2]|0)!=0&(c[l>>2]|0)!=0)){x=c[w>>2]|0;y=c[k>
;>2]|0;c[y>>2]=x;y=c[m>>2]|0;i=z;return y|0}do if(!(c[(c[v>>2]|0)+16>>2]|0)){c[x>
;>2]=c[(c[h>>2]|0)+348+16>>2];y=hc(c[t>>2]|0,1,0,e[(c[v>>2]|0)+8>>1]|0,0,
m)|0;c[(c[v>>2]|0)+16>>2]=y;if(((c[m>>2]|0)==0?(y=Kc(c[x>>2]|0,c[(c[v>>2]|0)+12
>>2]|0)|0,c[m>>2]=y,(y|0)==0):0)?(y=Rc(c[x>>2]|0,c[(c[v>>2]|0)+16>>2]|0,e[(c[v
>>2]|0)+8>>1]|0)|0,c[m>>2]=y,(y|0)==0):0)break;Fb(c[t>>2]|0,c[(c[v>>2]|0)+16
x3e;>2]|0);c[(c[v>>2]|0)+16>>2]=0;b[(c[v>>2]|0)+8>>1]=0;c[w>>2]=0;x=c[w
x3e;>2]|0;y=c[k>>2]|0;c[y>>2]=x;y=c[m>>2]|0;i=z;return y|0}while(0);c[w>>2]=Ya[c[l
x3e;>2]&127](c[v>>2]|0,c[t>>2]|0)|0;x=c[w>>2]|0;y=c[k>>2]|0;c[y>>2]=
x;y=c[m>>2]|0;i=z;return y|0}function rk(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,q=0;n=i;i=i+48|0;g=n
+32|0;q=n+28|0;p=n+24|0;m=n+20|0;j=n+16|0;h=n+12|0;k=n+8|0;l=n+4|0;o=n;c[q>>2]=b;c[p>>2]=f;c[m>>2]=
0;c[l>>2]=c[(c[q>>2]|0)+16>>2];c[j>>2]=((e[(c[q>>2]|0)+8>>1]|0)>
;>>0)/2|0;c[m>>2]=hc(c[p>>2]|0,1,0,(c[j>>2]|0)+1|0,0,o)|0;if(c[o>>2]|0){c[g>
;>2]=0;q=c[g>>2]|0;i=n;return q|0}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=(
c[j>>2]|0)>>>0)break;c[l>>2]=(c[l>>2]|0)+2;q=(((d[(c[l>>2]|0)+-2>>
;0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[h>
x3e;2]=q;c[h>>2]=(c[h>>2]|0)>>>0<32|(c[h>>2]|0)>>>0>127?63
:q;a[(c[m>>2]|0)+(c[k>>2]|0)>>0]=c[h>>2];c[k>>2]=(c[k>>2]|0)+1}a[(c[
m>>2]|0)+(c[j>>2]|0)>>0]=0;c[g>>2]=c[m>>2];q=c[g>>2]|0;i=n;return q|
0}function sk(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,q=0;n=i;i=i+48|0;g=n+32|0;q=n+28|0;p=n+24|0;m=n+20|0;j=n+
16|0;h=n+12|0;k=n+8|0;l=n+4|0;o=n;c[q>>2]=b;c[p>>2]=f;c[m>>2]=0;c[l>>2]=c[(c[q>>
;2]|0)+16>>2];c[j>>2]=e[(c[q>>2]|0)+8>>1];c[m>>2]=hc(c[p>>2]|0,1,0,(
c[j>>2]|0)+1|0,0,o)|0;if(c[o>>2]|0){c[g>>2]=0;q=c[g>>2]|0;i=n;return q|0}c[k>>
2]=0;while(1){if((c[k>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;q=c[l>>
2]|0;c[l>>2]=q+1;q=d[q>>0]|0;c[h>>2]=q;c[h>>2]=(c[h>>2]|0)>>>0
x3c;32|(c[h>>2]|0)>>>0>127?63:q;a[(c[m>>2]|0)+(c[k>>2]|0)>>0]=c[h>
;>2];c[k>>2]=(c[k>>2]|0)+1}a[(c[m>>2]|0)+(c[j>>2]|0)>>0]=0;c[g>>
;2]=c[m>>2];q=c[g>>2]|0;i=n;return q|0}function tk(a){a=a|0;var f=0,g=0,h=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,A=0;A=i;i=i+224|0;y=4;x=Fs(40)|0;c[x>>2]=0;s=A+216|0;t=A+212|0;l=A+200|0;p=A+196|0;r=A+192
|0;u=A+188|0;m=A+184|0;w=A+8|0;q=A+4|0;v=A;j=c[a+500>>2]|0;k=j+(c[a+504>>2]|0)|0;c[t>>2]=j;if(c[t
x3e;>2]|0?((c[t>>2]|0)+4|0)>>>0<=k>>>0:0){c[t>>2]=(c[t>>2]|
0)+2;f=c[t>>2]|0;if((((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535|0){c[t>>2]=f+-2;z=8;Gs(x|0);i=A;return z|0}c[t>>2]=
f+2;c[s>>2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>
;>0]|0)&65535)<<0)&65535;while(1){if((c[s>>2]|0)>>>0<=0)break;if(((c[t>
;>2]|0)+8|0)>>>0>k>>>0)break;c[t>>2]=(c[t>>2]|0)+2;b[l+8>>
1]=((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535
)<<0;c[t>>2]=(c[t>>2]|0)+2;b[l+10>>1]=((d[(c[t>>2]|0)+-2>>0]|0)&
;65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0;c[l>>2]=a;c[l+4>>
;2]=0;c[t>>2]=(c[t>>2]|0)+4;f=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>
2]|0)+-4+1>>0]|0)<<16|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-
4+3>>0]|0)<<0;if(f|0?f>>>0<=((c[a+504>>2]|0)-2|0)>>>0:0){c[p>
;>2]=j+f;c[r>>2]=(((d[c[p>>2]>>0]|0)&65535)<<8|((d[(c[p>>2]|0)+1>
;>0]|0)&65535)<<0)&65535;c[u>>2]=3080;while(1){if(!(c[c[u>>2]>>2]|0))break
;c[m>>2]=c[c[u>>2]>>2];if((c[(c[m>>2]|0)+40>>2]|0)==(c[r>>2]|0)){z=14
;break}c[u>>2]=(c[u>>2]|0)+4}a:do if((z|0)==14){z=0;c[q>>2]=0;n=0;qa(10,w|0,c[p>>2]|0,k|
0,0);f=n;n=0;if((f|0)!=0&(o|0)!=0){g=Rs(c[f>>2]|0,x|0,y|0)|0;if(!g)ta(f|0,o|0);C=o}else g=-1;if((g|0)!=1){c[w+172
>>2]=e[a+260+4>>1];x=Qs(w+16|0,1,x|0,y|0)|0;y=C;n=0;f=n;n=0;if((f|0)!=0&(o|0)!=0){g=Rs(c[f>>2
]|0,x|0,y|0)|0;if(!g)ta(f|0,o|0);C=o}else g=-1;if((g|0)!=1)f=0;else f=C}else f=C;while(1){if(!f){n=0;f=oa(c[(c[m>>2]|0
)+44>>2]|0,c[p>>2]|0,w|0)|0;g=n;n=0;if((g|0)!=0&(o|0)!=0){h=Rs(c[g>>2]|0,x|0,y|0)|0;if(!h)ta(
g|0,o|0);C=o}else h=-1;if((h|0)==1){f=C;continue}c[q>>2]=f}if(c[w+12>>2]|0)break a;n=0;f=ma(23,c[m>>
;2]|0,c[p>>2]|0,l|0,v|0)|0;g=n;n=0;if((g|0)!=0&(o|0)!=0){h=Rs(c[g>>2]|0,x|0,y|0)|0;if(!h)ta(g|0,o|0);C=
o}else h=-1;if((h|0)==1)f=C;else break}if(!f)c[(c[v>>2]|0)+20>>2]=c[q>>2]}while(0)}c[s>>
2]=(c[s>>2]|0)+-1}z=0;Gs(x|0);i=A;return z|0}z=8;Gs(x|0);i=A;return z|0}function uk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g
=0,h=0,j=0;j=i;i=i+32|0;g=j+16|0;d=j+12|0;e=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[h>>2]=3120;c[f
>>2]=(c[h>>2]|0)+132;while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>
x3e;>0){d=8;break}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)){if((c[(c[h>>2]|0)+4>>
;2]|0)==(c[e>>2]|0)){d=6;break}if((c[(c[h>>2]|0)+4>>2]|0)==-1){d=6;break}}c[h>>2]=(c[h
x3e;>2]|0)+12}if((d|0)==6){c[g>>2]=c[(c[h>>2]|0)+8>>2];h=c[g>>2]|0;i=j;return h|0}else
if((d|0)==8){c[g>>2]=0;h=c[g>>2]|0;i=j;return h|0}return 0}function vk(d){d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i
;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=d;if(!(c[e>>2]|0)){i=j;return}c[f>>2]=c[(c[e>
x3e;2]|0)+100>>2];c[g>>2]=c[(c[e>>2]|0)+532>>2];if(c[g>>2]|0){if(c[(c[g>
x3e;2]|0)+116>>2]|0)Va[c[(c[g>>2]|0)+116>>2]&63](c[e>>2]|0);if(c[(c[g>>2]|
0)+144>>2]|0)Va[c[(c[g>>2]|0)+144>>2]&63](c[e>>2]|0)}wk(c[e>>2]|0);xk(c[e
>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+132+12>>2]|0);c[(c[e>>2]|0)+132+12>>
;2]=0;c[(c[e>>2]|0)+132+8>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+156>>2]|0);c[(c[e
x3e;>2]|0)+156>>2]=0;b[(c[e>>2]|0)+152>>1]=0;c[h>>2]=c[(c[e>>2]|0)+104>
;>2];fe(c[h>>2]|0,(c[e>>2]|0)+500|0);c[(c[e>>2]|0)+504>>2]=0;Fb(c[f>>2]|0
,c[(c[e>>2]|0)+216+36>>2]|0);c[(c[e>>2]|0)+216+36>>2]=0;Fb(c[f>>2]|0,c[(c[e>
;>2]|0)+216+40>>2]|0);c[(c[e>>2]|0)+216+40>>2]=0;if(a[(c[e>>2]|0)+296>>0]|
0){Fb(c[f>>2]|0,c[(c[e>>2]|0)+300+36>>2]|0);c[(c[e>>2]|0)+300+36>>2]=0;Fb(c[f
x3e;>2]|0,c[(c[e>>2]|0)+300+40>>2]|0);c[(c[e>>2]|0)+300+40>>2]=0;a[(c[e>>
2]|0)+296>>0]=0}Fb(c[f>>2]|0,c[(c[e>>2]|0)+548+4>>2]|0);c[(c[e>>2]|0)+548+4>
;>2]=0;b[(c[e>>2]|0)+548+2>>1]=0;if(c[g>>2]|0)Va[c[(c[g>>2]|0)+60>>2]&
;63](c[e>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+20>>2]|0);c[(c[e>>2]|0)+20>>
;2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;Fb(c[f>
x3e;2]|0,c[(c[e>>2]|0)+32>>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[(c[e>>2]|0)+28>
x3e;2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+700>>2]|0);c[(c[e>>2]|0)+700>>2]=0;c[(c[e
x3e;>2]|0)+532>>2]=0;i=j;return}function wk(b){b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=b;c[e>>2]=(c[d>>2]|0)+792;if(!(a[(c[e>>2]|0)+20>>0]|0)){i=g;return}c[f>
x3e;2]=c[(c[d>>2]|0)+104>>2];if(c[c[e>>2]>>2]|0)fe(c[f>>2]|0,c[e>>2]|
0);c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|0)+12>>2]=
0;i=g;return}function xk(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]|0)+104>>2];fe(c[e>>2]|0,(c[d>>2]|0)+772|0);c[(c[d>>2]|0)+776>>2]=0;c[(c[d
x3e;>2]|0)+780>>2]=0;c[(c[d>>2]|0)+784>>2]=0;c[(c[d>>2]|0)+788>>2]=0;i=b;
return}function yk(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[f>
x3e;2]=c[f>>2];b=qc(3252,c[e>>2]|0)|0;i=d;return b|0}function zk(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;s=i;i=i+48|0;g=s+36|0;h=s+32|0;j=s+28|0;k=s+24|0;l=s+20|0;m=s+16|0;n=s+12|0;p=s
+8|0;q=s+4|0;o=s;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;e=c[h>
x3e;2]|0;do if(c[j>>2]|0){c[q>>2]=mk(e,c[j>>2]|0)|0;if(c[q>>2]|0){c[k>>2]=(c[k
>>2]|0)+(c[(c[q>>2]|0)+8>>2]|0);c[o>>2]=c[(c[q>>2]|0)+12>>2];r=6;break
}else{c[n>>2]=142;break}}else{c[o>>2]=c[(c[e+104>>2]|0)+4>>2];r=6}while(0);if((r|0)==6){
if(c[m>>2]|0?(c[c[m>>2]>>2]|0)==0:0){c[c[m>>2]>>2]=c[o>>2];c[g>
x3e;2]=0;r=c[g>>2]|0;i=s;return r|0}if(c[m>>2]|0)c[o>>2]=c[c[m>>2]>>2];c[p>
;>2]=c[(c[h>>2]|0)+104>>2];c[n>>2]=Sc(c[p>>2]|0,c[k>>2]|0,c[l>>
2]|0,c[o>>2]|0)|0}c[g>>2]=c[n>>2];r=c[g>>2]|0;i=s;return r|0}function Ak(a,b){a=a|0;b=b|
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]=a;c[j>>2]=b;switch(c[j>>2]|0){case
0:{c[g>>2]=(c[f>>2]|0)+160;break}case 3:{c[g>>2]=(c[f>>2]|0)+216;break}case 4:{c[g>
x3e;2]=d[(c[f>>2]|0)+296>>0]|0|0?(c[f>>2]|0)+300|0:0;break}case 2:{c[g>>2]=(e[(c[f>
x3e;2]|0)+368>>1]|0|0)==65535?0:(c[f>>2]|0)+368|0;break}case 5:{c[g>>2]=(c[f>>2]|0)+468;
break}case 1:{c[g>>2]=(c[f>>2]|0)+260;break}case 6:{c[g>>2]=c[(c[f>>2]|0)+556>>
;2]|0?(c[f>>2]|0)+556|0:0;break}default:c[g>>2]=0}i=h;return c[g>>2]|0}function Bk(a,b,d,f,g){a=a|
0;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;o=i;i=i+32|0;h=o+20|0;j=o+16|0;k=o+12|0;l=o+8|0;m=o+4|0;n=o;c[j>
x3e;2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=f;c[n>>2]=g;if(!((c[l>>2]|0)!=0&(c[m
>>2]|0)!=0&(c[n>>2]|0)!=0)){c[h>>2]=6;d=c[h>>2]|0;i=o;return d|0}if((c[k>>
;2]|0)>>>0>=(e[(c[j>>2]|0)+152>>1]|0)>>>0){c[h>>2]=142;d=c[h>
;>2]|0;i=o;return d|0}else{c[c[l>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>>
;2]<<4)>>2];c[c[m>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>>
;2]<<4)+8>>2];c[c[n>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>
x3e;2]<<4)+12>>2];c[h>>2]=0;d=c[h>>2]|0;i=o;return d|0}return 0}function Ck(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,z=0,A=0;A=i;i=i+80|0;g=A+72|0;h=A+68|0;r=A+64|0;m=A+60|
0;l=A+56|0;x=A+52|0;s=A+48|0;p=A+44|0;t=A+40|0;n=A+36|0;j=A+32|0;y=A+28|0;w=A+24|0;v=A+20|0;q=A+16|0;u=A+12|0;o=A+8|0;k=A+4|0;z=
A;c[h>>2]=f;c[x>>2]=0;if(c[(c[h>>2]|0)+700>>2]|0){c[g>>2]=c[(c[h>>2]|
0)+700>>2];z=c[g>>2]|0;i=A;return z|0}c[m>>2]=-1;c[l>>2]=-1;c[r>>2]=0;while(1){
if((c[r>>2]|0)>=(e[(c[h>>2]|0)+344>>1]|0|0))break;c[s>>2]=(c[(c[h>>2]|0)+
348+12>>2]|0)+((c[r>>2]|0)*20|0);if((e[(c[s>>2]|0)+6>>1]|0|0)==6?(e[(c[s>>2]|0
)+8>>1]|0|0)>0:0){if(((e[c[s>>2]>>1]|0|0)==3?(e[(c[s>>2]|0)+2>>1]|0|0)==1
:0)?(e[(c[s>>2]|0)+4>>1]|0|0)==1033:0)c[m>>2]=c[r>>2];if(((e[c[s>>2]>>
;1]|0|0)==1?(e[(c[s>>2]|0)+2>>1]|0|0)==0:0)?(e[(c[s>>2]|0)+4>>1]|0|0)==0:0)c[l>>
;2]=c[r>>2]}c[r>>2]=(c[r>>2]|0)+1}do if((c[m>>2]|0)!=-1){c[p>>2]=c[(c[h>
x3e;2]|0)+100>>2];c[t>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[m>>2]|0)*20|0);c[n
x3e;>2]=(e[(c[t>>2]|0)+8>>1]|0|0)/2|0;c[j>>2]=0;c[j>>2]=c[j>>2];c[x>
x3e;2]=bc(c[p>>2]|0,(e[(c[t>>2]|0)+8>>1]|0)+1|0,j)|0;if(!(c[j>>2]|0)){c[y>>2]=
c[(c[h>>2]|0)+348+16>>2];c[w>>2]=c[x>>2];c[v>>2]=c[(c[t>>2]|0)+16>
;>2];z=Kc(c[y>>2]|0,c[(c[t>>2]|0)+12>>2]|0)|0;c[j>>2]=z;if((z|0)==0?(z=ee(c[y>
x3e;2]|0,e[(c[t>>2]|0)+8>>1]|0)|0,c[j>>2]=z,(z|0)==0):0){c[v>>2]=c[(c[y>>2]|0)+
32>>2];while(1){if((c[n>>2]|0)>>>0<=0)break;if(((d[c[v>>2]>>0]|0|0)==
0?(d[(c[v>>2]|0)+1>>0]|0|0)>=32:0)?(d[(c[v>>2]|0)+1>>0]|0|0)<128:0){u=a[(c[v
x3e;>2]|0)+1>>0]|0;z=c[w>>2]|0;c[w>>2]=z+1;a[z>>0]=u}c[n>>2]=(c[n>
x3e;2]|0)+-1;c[v>>2]=(c[v>>2]|0)+2}a[c[w>>2]>>0]=0;ge(c[y>>2]|0);break}Fb(c[p
x3e;>2]|0,c[x>>2]|0);c[x>>2]=0;b[(c[t>>2]|0)+8>>1]=0;c[(c[t>>2]|0)+12>
;>2]=0;Fb(c[p>>2]|0,c[(c[t>>2]|0)+16>>2]|0);c[(c[t>>2]|0)+16>>2]=0}}else
if((c[l>>2]|0)!=-1?(c[q>>2]=c[(c[h>>2]|0)+100>>2],c[u>>2]=(c[(c[h>>2
]|0)+348+12>>2]|0)+((c[l>>2]|0)*20|0),c[o>>2]=e[(c[u>>2]|0)+8>>1],c[k>>
;2]=0,c[k>>2]=c[k>>2],c[x>>2]=bc(c[q>>2]|0,(c[o>>2]|0)+1|0,k)|0,(c[k>>
;2]|0)==0):0){c[z>>2]=c[(c[h>>2]|0)+348+16>>2];y=Kc(c[z>>2]|0,c[(c[u>>2]|0)+12
>>2]|0)|0;c[k>>2]=y;if((y|0)==0?(z=Rc(c[z>>2]|0,c[x>>2]|0,c[o>>2]|0)|0,c[k>
;>2]=z,(z|0)==0):0){a[(c[x>>2]|0)+(c[o>>2]|0)>>0]=0;break}c[(c[u>>2]|0)+12>>
;2]=0;b[(c[u>>2]|0)+8>>1]=0;Fb(c[q>>2]|0,c[(c[u>>2]|0)+16>>2]|0);c[(c[u>
x3e;2]|0)+16>>2]=0;Fb(c[q>>2]|0,c[x>>2]|0);c[x>>2]=0}while(0);c[(c[h>>2]|0)+700
>>2]=c[x>>2];c[g>>2]=c[x>>2];z=c[g>>2]|0;i=A;return z|0}function Dk(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;m=k+20|0;l=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[m>>
;2]=a;c[l>>2]=b;c[f>>2]=d;c[g>>2]=e;c[h>>2]=Ek(c[m>>2]|0,c[l>>2]|0,j
)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=k;return m|0}pe(c[f>>2]|0,c[j>>2]|0,c[g>>2]|0)|
0;m=c[h>>2]|0;i=k;return m|0}function Ek(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,r=0,s=0,t=0;
t=i;i=i+48|0;h=t+36|0;j=t+32|0;k=t+28|0;l=t+24|0;m=t+20|0;p=t+16|0;n=t+12|0;q=t+8|0;r=t+4|0;o=t+40|0;s=t;c[j>>2]=d;c[k
>>2]=f;c[l>>2]=g;if(!(c[j>>2]|0)){c[h>>2]=35;s=c[h>>2]|0;i=t;return s|0}if((c[
k>>2]|0)>>>0>=(e[(c[j>>2]|0)+260+4>>1]|0)>>>0){c[h>>2
]=16;s=c[h>>2]|0;i=t;return s|0}c[q>>2]=c[(c[j>>2]|0)+536>>2];if(!(c[q>>2]|0)){
c[h>>2]=7;s=c[h>>2]|0;i=t;return s|0}c[p>>2]=(c[j>>2]|0)+628;f=Ta[c[(c[q>>2]|0
)+16>>2]&63](0)|0;c[c[l>>2]>>2]=f;c[n>>2]=c[(c[j>>2]|0)+468>>2];
do if((c[n>>2]|0)==65536){if((c[k>>2]|0)>>>0<258){s=Ta[c[(c[q>>2]|0)+16>
x3e;2]&63](c[k>>2]|0)|0;c[c[l>>2]>>2]=s}}else{if((c[n>>2]|0)!=131072){if((c[n>
x3e;2]|0)!=163840)break;c[s>>2]=(c[p>>2]|0)+4;if((a[c[p>>2]>>0]|0)==0?(c[m>>2]=
Fk(c[j>>2]|0)|0,c[m>>2]|0):0)break;if((c[k>>2]|0)>>>0>=(e[c[s>>2]>
;>1]|0)>>>0)break;c[k>>2]=(c[k>>2]|0)+(a[(c[(c[s>>2]|0)+4>>2]|0)+(c[
k>>2]|0)>>0]|0);s=Ta[c[(c[q>>2]|0)+16>>2]&63](c[k>>2]|0)|0;c[c[l>>
;2]>>2]=s;break}c[r>>2]=(c[p>>2]|0)+4;if((a[c[p>>2]>>0]|0)==0?(c[m>>
2]=Fk(c[j>>2]|0)|0,c[m>>2]|0):0)break;if((c[k>>2]|0)>>>0<(e[c[r>>2]
x3e;>1]|0)>>>0){b[o>>1]=b[(c[(c[r>>2]|0)+4>>2]|0)+(c[k>>2]<<
;1)>>1]|0;if((e[o>>1]|0)<258){s=Ta[c[(c[q>>2]|0)+16>>2]&63](e[o>>1]|
0)|0;c[c[l>>2]>>2]=s;break}else{c[c[l>>2]>>2]=c[(c[(c[r>>2]|0)+8>>2]|
0)+((e[o>>1]|0)-258<<2)>>2];break}}}while(0);c[h>>2]=0;s=c[h>>2]|0;i=t;return
s|0}function Fk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;j=k+16|0;e=k+12|0;f=k+8|0;g=k+4|0;h=k;c[d>
x3e;2]=b;c[j>>2]=c[(c[d>>2]|0)+104>>2];c[e>>2]=Wa[c[(c[d>>2]|0)+508>>
;2]&31](c[d>>2]|0,1886352244,c[j>>2]|0,g)|0;if(c[e>>2]|0){j=c[e>>2]|0;i=k;return j|
0}b=Mc(c[j>>2]|0)|0;c[h>>2]=b+(c[g>>2]|0);c[f>>2]=c[(c[d>>2]|0)+468>>
;2];g=Qc(c[j>>2]|0,32)|0;c[e>>2]=g;if(g|0){j=c[e>>2]|0;i=k;return j|0}do if((c[f>>2]|0)!=
131072)if((c[f>>2]|0)==163840){c[e>>2]=Hk(c[d>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;break
}else{c[e>>2]=3;break}else c[e>>2]=Gk(c[d>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;while(0
);a[(c[d>>2]|0)+628>>0]=1;j=c[e>>2]|0;i=k;return j|0}function Gk(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,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=i;i=i+64|0;l=A+52|0;m=A+48|0;n=A+44|0;o=A+40|0;s=A+36|
0;p=A+32|0;w=A+28|0;x=A+60|0;q=A+24|0;v=A+20|0;j=A+16|0;k=A+12|0;h=A+8|0;t=A+58|0;r=A+4|0;y=A;u=A+56|0;c[m>>2]=d;c[n
x3e;>2]=f;c[o>>2]=g;c[s>>2]=c[(c[n>>2]|0)+28>>2];c[q>>2]=0;c[v>>
;2]=0;c[w>>2]=(Pc(c[n>>2]|0,p)|0)&65535;do if(!(c[p>>2]|0)){if((c[w>>2]|0)>(e[(
c[m>>2]|0)+260+4>>1]|0|0)){c[p>>2]=3;break}c[q>>2]=hc(c[s>>2]|0,2,0,c[w>
x3e;2]|0,0,p)|0;a:do if((c[p>>2]|0)==0?(f=ee(c[n>>2]|0,c[w>>2]<<1)|0,c[p>>2]=f
,(f|0)==0):0){c[j>>2]=0;while(1){d=c[n>>2]|0;if((c[j>>2]|0)>=(c[w>>2]|0))break;f=ie
(d)|0;b[(c[q>>2]|0)+(c[j>>2]<<1)>>1]=f;c[j>>2]=(c[j>>2]|0)+1}ge(d);b
[x>>1]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[w>>2]|0))break;c[h>>2]=e[(
c[q>>2]|0)+(c[k>>2]<<1)>>1];if((c[h>>2]|0)>=258?(c[h>>2]=(c[h
x3e;>2]|0)-257,(c[h>>2]|0)>(e[x>>1]|0|0)):0)b[x>>1]=c[h>>2];c[k>>2]=(
c[k>>2]|0)+1}c[v>>2]=hc(c[s>>2]|0,4,0,e[x>>1]|0,0,p)|0;if(!(c[p>>2]|0)){b[t>
;>1]=0;while(1){if((e[t>>1]|0|0)>=(e[x>>1]|0|0)){z=28;break}k=Mc(c[n>>2]|0)|0;if((k|0)
x3e;=(c[o>>2]|0)){z=28;break}c[r>>2]=(ke(c[n>>2]|0,p)|0)&255;if(c[p>>2]|0)break;if(!((
c[r>>2]|0)<=(c[o>>2]|0)?(k=Mc(c[n>>2]|0)|0,(k|0)<=((c[o>>2]|0)-(c[r>>
;2]|0)|0)):0)){k=c[o>>2]|0;if(0>(k-(Mc(c[n>>2]|0)|0)|0))d=0;else{d=c[o>>2]|0;d=d-(Mc(c[n>
;>2]|0)|0)|0}c[r>>2]=d}k=hc(c[s>>2]|0,1,0,(c[r>>2]|0)+1|0,0,p)|0;c[(c[v>>2]|0)+((e[
t>>1]|0)<<2)>>2]=k;if(c[p>>2]|0)break;k=Rc(c[n>>2]|0,c[(c[v>>2]|0)+((
e[t>>1]|0)<<2)>>2]|0,c[r>>2]|0)|0;c[p>>2]=k;if(k|0)break;a[(c[(c[v>>
2]|0)+((e[t>>1]|0)<<2)>>2]|0)+(c[r>>2]|0)>>0]=0;b[t>>1]=(b[t>
x3e;1]|0)+1<<16>>16}b:do if((z|0)==28){c:do if((e[t>>1]|0|0)<(e[x>>1]|0|0))while(1){
if((e[t>>1]|0|0)>=(e[x>>1]|0|0))break c;z=hc(c[s>>2]|0,1,0,1,0,p)|0;c[(c[v>>2]|0)+((
e[t>>1]|0)<<2)>>2]=z;if(c[p>>2]|0)break b;a[c[(c[v>>2]|0)+((e[t>>1]|
0)<<2)>>2]>>0]=0;b[t>>1]=(b[t>>1]|0)+1<<16>>16}while(0);c[
y>>2]=(c[m>>2]|0)+628+4;b[c[y>>2]>>1]=c[w>>2];b[(c[y>>2]|0)+2>
x3e;1]=b[x>>1]|0;c[(c[y>>2]|0)+4>>2]=c[q>>2];c[(c[y>>2]|0)+8>>2]=c[v
>>2];c[l>>2]=0;z=c[l>>2]|0;i=A;return z|0}while(0);b[u>>1]=0;while(1){if((e[u>>
;1]|0|0)>=(e[x>>1]|0|0))break a;Fb(c[s>>2]|0,c[(c[v>>2]|0)+((e[u>>1]|0)<<
2)>>2]|0);c[(c[v>>2]|0)+((e[u>>1]|0)<<2)>>2]=0;b[u>>1]=(b[u>>
;1]|0)+1<<16>>16}}}while(0);Fb(c[s>>2]|0,c[v>>2]|0);c[v>>2]=0;Fb(c[s>>
;2]|0,c[q>>2]|0);c[q>>2]=0}while(0);c[l>>2]=c[p>>2];z=c[l>>2]|0;i=A;return z|0
}function Hk(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,r=0,s=0,t=0,u=0;t=i;i=i+48|0;h=t+40|0;j=t+36|0;k=t
+32|0;u=t+28|0;n=t+24|0;l=t+20|0;p=t+16|0;q=t+12|0;o=t+8|0;m=t+4|0;r=t;c[j>>2]=d;c[k>>2]=f;c[u>>2]=
g;c[n>>2]=c[(c[k>>2]|0)+28>>2];c[q>>2]=0;c[u>>2]=c[u>>2];c[p>
x3e;2]=(Pc(c[k>>2]|0,l)|0)&65535;do if(!(c[l>>2]|0)){if((c[p>>2]|0)>258?1:(c[p>>
;2]|0)>(e[(c[j>>2]|0)+260+4>>1]|0)){c[l>>2]=3;break}c[q>>2]=hc(c[n>>2]|0,
1,0,c[p>>2]|0,0,l)|0;do if((c[l>>2]|0)==0?(u=Rc(c[k>>2]|0,c[q>>2]|0,c[p>>2]|0)|
0,c[l>>2]=u,(u|0)==0):0){c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[p>>2]|0))break;c[m
x3e;>2]=(c[o>>2]|0)+(a[(c[q>>2]|0)+(c[o>>2]|0)>>0]|0);if((c[m>>2]|0)<
;0){s=10;break}if((c[m>>2]|0)>(c[p>>2]|0)){s=10;break}c[o>>2]=(c[o>>2]|0)+1}if((s|0
)==10){c[l>>2]=3;break}c[r>>2]=(c[j>>2]|0)+628+4;b[c[r>>2]>>1]=c[p>>
2];c[(c[r>>2]|0)+4>>2]=c[q>>2];c[h>>2]=0;u=c[h>>2]|0;i=t;return u|0}while(0);Fb
(c[n>>2]|0,c[q>>2]|0);c[q>>2]=0}while(0);c[h>>2]=c[l>>2];u=c[h>>2]|0
;i=t;return u|0}function Ik(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;m=i;i=i+32|0;k=m+28|0;d=m+24|0;e=m+20|0;j=m
+16|0;l=m+12|0;h=m+8|0;g=m+4|0;f=m;c[d>>2]=a;c[e>>2]=b;c[j>>2]=c[d>>2];c[h>>2]=-
1;if((c[(c[j>>2]|0)+16>>2]|0)<0){c[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}if((c[(c[j>
;>2]|0)+16>>2]|0)>>>0<4294967295)c[h>>2]=c[(c[j>>2]|0)+16>>2];c
[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[h>>2]|0)>>>0){d=11;break
}c[f>>2]=Ek(c[d>>2]|0,c[l>>2]|0,g)|0;if((c[f>>2]|0)==0?(Kr(c[e>>2]|0,c[g>
x3e;2]|0)|0)==0:0){d=9;break}c[l>>2]=(c[l>>2]|0)+1}if((d|0)==9){c[k>>2]=c[l>>2];l=c[k>
;>2]|0;i=m;return l|0}else if((d|0)==11){c[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}return 0}function Jk(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;l=i;i=i+48|0;e=l+32|0;f=l+28|0;g=l+24|0;h=l+16|0;k=l+8|0;j=l;c[e>>
;2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=Kk(c[e>>2]|0,11392,k)|0;if(c[j>>2]|0){k=c[j
x3e;>2]|0;i=l;return k|0}c[j>>2]=Kk(c[e>>2]|0,11409,h)|0;if(c[j>>2]|0){k=c[j>>2]|0;
i=l;return k|0}if((c[k>>2]|0)==1?(c[h>>2]|0)==1:0){c[c[f>>2]>>2]=c[h+4>>2];c[c
[g>>2]>>2]=c[k+4>>2];k=c[j>>2]|0;i=l;return k|0}c[j>>2]=6;k=c[j>>2]|
0;i=l;return k|0}function Kk(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;x=
i;i=i+64|0;g=x+56|0;h=x+52|0;j=x+48|0;m=x+44|0;s=x+40|0;o=x+36|0;q=x+32|0;n=x+28|0;t=x+24|0;r=x+20|0;l=x+16|0;k=x+12|0;u=x+8|0;p
=x+4|0;v=x;c[g>>2]=a;c[h>>2]=b;c[j>>2]=f;c[m>>2]=(c[g>>2]|0)+792;c[s>>
;2]=c[(c[g>>2]|0)+88>>2];c[o>>2]=0;c[c[j>>2]>>2]=0;if((d[(c[m>>2]|0)+
20>>0]|0|0)==0?(c[o>>2]=Lk(c[g>>2]|0,c[(c[g>>2]|0)+104>>2]|0)|0,c[o>>
;2]|0):0){w=c[o>>2]|0;i=x;return w|0}c[n>>2]=c[(c[m>>2]|0)+16>>2];c[q>>2]=(c[c
[m>>2]>>2]|0)+8;c[t>>2]=(c[q>>2]|0)+(c[n>>2]<<2);c[o>>2]=6
;if((c[s>>2]|0)==0|(c[h>>2]|0)==0){w=c[o>>2]|0;i=x;return w|0}c[r>>2]=cs(c[h>>
2]|0)|0;if(!((c[r>>2]|0)!=0&(c[n>>2]|0)>>>0>0)){w=c[o>>2]|0;i=x;return w|
0}while(1){c[q>>2]=(c[q>>2]|0)+2;c[l>>2]=(((d[(c[q>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[q>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[q>>2]=(c[q>
x3e;2]|0)+2;c[k>>2]=(((d[(c[q>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[q>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535;g=c[k>>2]|0;if((c[l>>2]|0)==(e[(c[s>>2]|
0)+12+2>>1]|0|0))break;c[t>>2]=(c[t>>2]|0)+(g*10|0);c[n>>2]=(c[n>>2]|0)+-1;if((
c[n>>2]|0)>>>0<=0){w=20;break}}if((w|0)==20){w=c[o>>2]|0;i=x;return w|0}c[n>>2
]=g;c[q>>2]=c[t>>2];a:while(1){if((c[n>>2]|0)>>>0<=0){w=20;break}c[u>>
;2]=(((d[(c[q>>2]|0)+4>>0]|0)&65535)<<8|((d[(c[q>>2]|0)+4+1>>0]|0)&65535
)<<0)&65535;b:do if(((c[u>>2]&16|0?(c[p>>2]=(d[c[q>>2]>>0]|0)<
x3c;24|(d[(c[q>>2]|0)+1>>0]|0)<<16|(d[(c[q>>2]|0)+2>>0]|0)<<8|(d[(c[
q>>2]|0)+3>>0]|0)<<0,c[v>>2]=(d[(c[q>>2]|0)+6>>0]|0)<<24|(
d[(c[q>>2]|0)+6+1>>0]|0)<<16|(d[(c[q>>2]|0)+6+2>>0]|0)<<8|(d[(c[q>
;>2]|0)+6+3>>0]|0)<<0,(c[p>>2]|0)>>>0<(c[(c[m>>2]|0)+12>
x3e;2]|0)>>>0):0)?(c[r>>2]|0)>>>0<((c[(c[m>>2]|0)+12>>2]|0)-(c[
p>>2]|0)|0)>>>0:0)?(Lr(c[h>>2]|0,(c[(c[m>>2]|0)+8>>2]|0)+(c[p>>
2]|0)|0,(c[(c[m>>2]|0)+12>>2]|0)-(c[p>>2]|0)|0)|0)==0:0){switch(c[u>>2]&15|0){case
2:{w=17;break a}case 3:{w=18;break a}case 1:case 0:break;default:break b}if((c[v>>2]|0)>>>0<(c[(c[
m>>2]|0)+12>>2]|0)>>>0?Ur((c[(c[m>>2]|0)+8>>2]|0)+(c[v>>2]|0)|0
,0,c[(c[m>>2]|0)+12>>2]|0)|0:0){w=16;break a}}while(0);c[q>>2]=(c[q>>2]|0)+10;c[n>
x3e;2]=(c[n>>2]|0)+-1}if((w|0)==16){c[c[j>>2]>>2]=1;c[(c[j>>2]|0)+4>>2]=(c[(c[
m>>2]|0)+8>>2]|0)+(c[v>>2]|0);c[o>>2]=0;w=c[o>>2]|0;i=x;return w|0}else if((w|
0)==17){c[c[j>>2]>>2]=2;c[(c[j>>2]|0)+4>>2]=c[v>>2];c[o>>2]=0;w=c[o
x3e;>2]|0;i=x;return w|0}else if((w|0)==18){c[c[j>>2]>>2]=3;c[(c[j>>2]|0)+4>>2]=c[v
>>2];c[o>>2]=0;w=c[o>>2]|0;i=x;return w|0}else if((w|0)==20){w=c[o>>2]|0;i=x;return w|0}
return 0}function Lk(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;r=i;i=i+48|0;s=r+44|0;f=r+40|0;g=r
+36|0;k=r+32|0;j=r+28|0;n=r+24|0;q=r+20|0;m=r+16|0;p=r+12|0;h=r+8|0;o=r+4|0;l=r;c[s>>2]=b;c[f>>2]=e;c[g>
;>2]=(c[s>>2]|0)+792;e=c[g>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12
>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[j>>2]=lk(c[s>>2]|0,1111770656,c[f>>
;2]|0,k)|0;if(!((c[j>>2]|0)!=0|(c[k>>2]|0)>>>0<8)?(s=de(c[f>>2]|0,c[k>>
;2]|0,c[g>>2]|0)|0,c[j>>2]=s,(s|0)==0):0){c[(c[g>>2]|0)+4>>2]=(c[c[g>>2]>
x3e;2]|0)+(c[k>>2]|0);c[n>>2]=c[c[g>>2]>>2];c[n>>2]=(c[n>>2]|0)+2;c[
q>>2]=(((d[(c[n>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[n>>2]|0)+-2+1>>
;0]|0)&65535)<<0)&65535;c[n>>2]=(c[n>>2]|0)+2;c[m>>2]=(((d[(c[n>>2]|
0)+-2>>0]|0)&65535)<<8|((d[(c[n>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535
;c[n>>2]=(c[n>>2]|0)+4;c[p>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n
x3e;>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>
;2]|0)+-4+3>>0]|0)<<0;if((!((c[q>>2]|0)!=1|(c[p>>2]|0)>>>0<8)?((((c[
p>>2]|0)-8|0)>>>0)/4|0)>>>0>=(c[m>>2]|0)>>>0:0)?((c[p>
;>2]|0)+1|0)>>>0<=(c[k>>2]|0)>>>0:0){c[(c[g>>2]|0)+16>>2]=
c[m>>2];c[(c[g>>2]|0)+8>>2]=(c[c[g>>2]>>2]|0)+(c[p>>2]|0);c[(c[g>
;>2]|0)+12>>2]=(c[k>>2]|0)-(c[p>>2]|0);c[h>>2]=c[(c[g>>2]|0)+16>>
;2];c[n>>2]=(c[c[g>>2]>>2]|0)+8;c[o>>2]=(c[n>>2]|0)+(c[h>>2]<
x3c;2);while(1){if((c[h>>2]|0)>>>0<=0)break;c[l>>2]=(((d[(c[n>>2]|0)+2>
x3e;0]|0)&65535)<<8|((d[(c[n>>2]|0)+2+1>>0]|0)&65535)<<0)&65535;c[o>
x3e;2]=(c[o>>2]|0)+((c[l>>2]|0)*10|0);c[n>>2]=(c[n>>2]|0)+4;c[h>>2]=(c[h>
x3e;2]|0)+-1}if((c[o>>2]|0)>>>0<=(c[(c[g>>2]|0)+8>>2]|0)>>>0){a
[(c[g>>2]|0)+20>>0]=1;s=c[j>>2]|0;i=r;return s|0}}fe(c[f>>2]|0,c[g>>2]|0);s=c[
g>>2]|0;c[s>>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[j>>2]=8;s=c[j>>2]|0;i=r;return s|0}c[j>>2]=8;s=c[j>>2]|0;i=r;return
s|0}function Mk(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;h=d+4|0;g=d;c[f>>2]=a;c[e>
;>2]=b;c[h>>2]=c[f>>2];c[g>>2]=c[(c[h>>2]|0)+12>>2];b=Ya[c[(c[g>>
;2]|0)+48>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return b|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;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;c[k>>2]=c[k>>2];c[j>>2]=c[j>>2];c[h>>2]=c[h>>
;2];c[g>>2]=c[g>>2];i=f;return 7}function Ok(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;c[h>>2]=c[h>>2];c[g>>2]=
c[g>>2];c[f>>2]=c[f>>2];i=e;return 7}function Pk(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=Qk(c[f>>2]|0,c[e>>2]|0,1751474532)|0;i=d;return b|0}function
Qk(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+16|0;f=j+12|0;k=j+8|0;g=j+4|0;h=j;c[e>>2]=a;
c[f>>2]=b;c[k>>2]=d;c[g>>2]=Wa[c[(c[e>>2]|0)+508>>2]&31](c[e>>2
]|0,c[k>>2]|0,c[f>>2]|0,0)|0;if(c[g>>2]|0){k=c[g>>2]|0;i=j;return k|0}c[h>>2]=(
c[e>>2]|0)+160;c[g>>2]=le(c[f>>2]|0,7560,c[h>>2]|0)|0;k=c[g>>2]|0;i=j;return k
|0}function Rk(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;f=l+16|0;g=l+12|0;m=l+20|0;h=l+8|0;j=l+4|0;
k=l;c[f>>2]=b;c[g>>2]=d;a[m>>0]=e;b=c[f>>2]|0;do if(a[m>>0]|0){c[k>>
2]=b+300;c[h>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1986553185,c[g>>2
]|0,0)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=l;return m|0}else{c[j>>2]=c[k>>2];break}}else{c[h
x3e;>2]=Wa[c[b+508>>2]&31](c[f>>2]|0,1751672161,c[g>>2]|0,0)|0;if(c[h>>2]|0){m
=c[h>>2]|0;i=l;return m|0}else{c[j>>2]=(c[f>>2]|0)+216;break}}while(0);m=le(c[g>>2]|0,7644
,c[j>>2]|0)|0;c[h>>2]=m;if(m|0){m=c[h>>2]|0;i=l;return m|0}c[(c[j>>2]|0)+36>>2
]=0;c[(c[j>>2]|0)+40>>2]=0;m=c[h>>2]|0;i=l;return m|0}function Sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0
,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Wa[c[(c[d>>2]|0)+508
x3e;>2]&31](c[d>>2]|0,1668112752,c[e>>2]|0,(c[d>>2]|0)+504|0)|0;if(c[f>>2]|0){
b=c[f>>2]|0;i=g;return b|0}b=de(c[e>>2]|0,c[(c[d>>2]|0)+504>>2]|0,(c[d>>2]|0)+
500|0)|0;c[f>>2]=b;if(!b){b=c[f>>2]|0;i=g;return b|0}c[(c[d>>2]|0)+504>>2]=0;b=c[f>
x3e;2]|0;i=g;return b|0}function Tk(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;k=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>
x3e;2]=a;c[f>>2]=d;c[h>>2]=(c[k>>2]|0)+260;c[g>>2]=Wa[c[(c[k>>2]|0)+508>
x3e;2]&31](c[k>>2]|0,1835104368,c[f>>2]|0,0)|0;if(c[g>>2]|0){k=c[g>>2]|0;i=j;return
k|0}k=le(c[f>>2]|0,7720,c[h>>2]|0)|0;c[g>>2]=k;if(k|0){k=c[g>>2]|0;i=j;return k|0}b[(c[
h>>2]|0)+6>>1]=0;b[(c[h>>2]|0)+8>>1]=0;b[(c[h>>2]|0)+10>>1]=0;b[(c[h
>>2]|0)+12>>1]=0;b[(c[h>>2]|0)+14>>1]=0;b[(c[h>>2]|0)+16>>1]=0;b[(c[
h>>2]|0)+18>>1]=0;b[(c[h>>2]|0)+20>>1]=0;b[(c[h>>2]|0)+22>>1]=0;b[(c
[h>>2]|0)+24>>1]=0;b[(c[h>>2]|0)+26>>1]=0;b[(c[h>>2]|0)+28>>1]=0;b[(
c[h>>2]|0)+30>>1]=0;if((c[c[h>>2]>>2]|0)<65536){k=c[g>>2]|0;i=j;return k|
0}k=le(c[f>>2]|0,7736,c[h>>2]|0)|0;c[g>>2]=k;if(k|0){k=c[g>>2]|0;i=j;return k|0}if((e[(c
[h>>2]|0)+20>>1]|0|0)<64)b[(c[h>>2]|0)+20>>1]=64;if((e[(c[h>>2]|0)+16>
;>1]|0)>>>0>65531)b[(c[h>>2]|0)+16>>1]=-5;if((e[(c[h>>2]|0)+30>>
;1]|0|0)<=100){k=c[g>>2]|0;i=j;return k|0}b[(c[h>>2]|0)+30>>1]=100;k=c[g>>2]|0;i=j;
return k|0}function Uk(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[
g>>2]=d;c[h>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1330851634,c[g>
;>2]|0,0)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=k;return d|0}c[j>>2]=(c[f>>2]|0)+368;d=le(c
[g>>2]|0,7796,c[j>>2]|0)|0;c[h>>2]=d;if(d|0){d=c[h>>2]|0;i=k;return d|0}c[(c[j>>
;2]|0)+80>>2]=0;c[(c[j>>2]|0)+84>>2]=0;b[(c[j>>2]|0)+88>>1]=0;b[(c[j>>
;2]|0)+90>>1]=0;b[(c[j>>2]|0)+92>>1]=0;b[(c[j>>2]|0)+94>>1]=0;b[(c[j>>
;2]|0)+96>>1]=0;if((e[c[j>>2]>>1]|0|0)<1){d=c[h>>2]|0;i=k;return d|0}d=le(c[g>
x3e;2]|0,7972,c[j>>2]|0)|0;c[h>>2]=d;if(d|0){d=c[h>>2]|0;i=k;return d|0}if((e[c[j>>2]>
;>1]|0|0)<2){d=c[h>>2]|0;i=k;return d|0}c[h>>2]=le(c[g>>2]|0,7988,c[j>>2]|0)|0
;d=c[h>>2]|0;i=k;return d|0}function Vk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;j=h+12|0;e=
h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[g>>2]=(c[j>>2]|0)+468;c[f>>2]=Wa[c[(c[
j>>2]|0)+508>>2]&31](c[j>>2]|0,1886352244,c[e>>2]|0,0)|0;if(c[f>>2]|0){c[
d>>2]=c[f>>2];j=c[d>>2]|0;i=h;return j|0}j=le(c[e>>2]|0,8016,c[g>>2]|0)|0;c[f
x3e;>2]=j;if(j|0){c[d>>2]=c[f>>2];j=c[d>>2]|0;i=h;return j|0}else{c[d>>2]=0;j=c[d
x3e;>2]|0;i=h;return j|0}return 0}function Wk(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,q=0,r=0;r=i;i=i+
48|0;f=r+40|0;g=r+36|0;k=r+32|0;l=r+28|0;q=r+24|0;p=r+20|0;n=r+16|0;m=r+12|0;h=r+8|0;o=r+4|0;j=r;c[f>>2]=a;c[g>
x3e;2]=d;c[l>>2]=c[(c[g>>2]|0)+28>>2];c[o>>2]=(c[f>>2]|0)+348;c[(c[o>>
;2]|0)+16>>2]=c[g>>2];c[k>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>
;2]|0,1851878757,c[g>>2]|0,p)|0;if(c[k>>2]|0){q=c[k>>2]|0;i=r;return q|0}c[q>>2]=Mc(c[g
x3e;>2]|0)|0;d=le(c[g>>2]|0,8060,c[o>>2]|0)|0;c[k>>2]=d;if(d|0){q=c[k>>2]|0;i=r;return
q|0}c[n>>2]=(c[q>>2]|0)+6+((c[(c[o>>2]|0)+4>>2]|0)*12|0);c[m>>2]=(c[q>
x3e;2]|0)+(c[p>>2]|0);if((c[n>>2]|0)>>>0>(c[m>>2]|0)>>>0){c[k
x3e;>2]=145;q=c[k>>2]|0;i=r;return q|0}c[h>>2]=c[(c[o>>2]|0)+4>>2];c[(c[o>>
;2]|0)+4>>2]=0;p=hc(c[l>>2]|0,20,0,c[h>>2]|0,0,k)|0;c[(c[o>>2]|0)+12>>2]=p;if(
c[k>>2]|0){q=c[k>>2]|0;i=r;return q|0}p=ee(c[g>>2]|0,(c[h>>2]|0)*12|0)|0;c[k>>
2]=p;if(p|0){q=c[k>>2]|0;i=r;return q|0}c[j>>2]=c[(c[o>>2]|0)+12>>2];while(1){if((c[h>
;>2]|0)>>>0<=0)break;p=le(c[g>>2]|0,8080,c[j>>2]|0)|0;c[k>>2]=p;do if((p|
0)==0?e[(c[j>>2]|0)+8>>1]|0|0:0){p=(c[j>>2]|0)+12|0;c[p>>2]=(c[p>>2]|0)+((c[q
x3e;>2]|0)+(c[(c[o>>2]|0)+8>>2]|0));if((c[(c[j>>2]|0)+12>>2]|0)>>>0
x3e;=(c[n>>2]|0)>>>0?((c[(c[j>>2]|0)+12>>2]|0)+(e[(c[j>>2]|0)+8>>
;1]|0)|0)>>>0<=(c[m>>2]|0)>>>0:0){c[j>>2]=(c[j>>2]|0)+20;break}
c[(c[j>>2]|0)+12>>2]=0;b[(c[j>>2]|0)+8>>1]=0}while(0);c[h>>2]=(c[h>>
2]|0)+-1}c[(c[o>>2]|0)+4>>2]=((c[j>>2]|0)-(c[(c[o>>2]|0)+12>>2]|0)|0)/20|0;ge(
c[g>>2]|0);b[(c[f>>2]|0)+344>>1]=c[(c[o>>2]|0)+4>>2];q=c[k>>2]|0;i=r
;return q|0}function Xk(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;j=h+16|0;f=h+12|0;g=h+8|0;e=h+4|0;d=h;c[j>>2
]=a;c[f>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+8>>2];c[g>>2]=(c[j>>2]|0)+348
;c[e>>2]=c[(c[g>>2]|0)+12>>2];c[d>>2]=c[(c[g>>2]|0)+4>>2];if(!(c[(c[
g>>2]|0)+12>>2]|0)){j=c[g>>2]|0;j=j+4|0;c[j>>2]=0;j=c[g>>2]|0;b[j>>1
]=0;j=c[g>>2]|0;j=j+8|0;c[j>>2]=0;i=h;return}while(1){a=c[f>>2]|0;if((c[d>>2]|0)>
x3e;>0<=0)break;Fb(a,c[(c[e>>2]|0)+16>>2]|0);c[(c[e>>2]|0)+16>>2]=0;b[(c[e>
;>2]|0)+8>>1]=0;c[d>>2]=(c[d>>2]|0)+-1;c[e>>2]=(c[e>>2]|0)+20}Fb(a,c[(c[g
>>2]|0)+12>>2]|0);c[(c[g>>2]|0)+12>>2]=0;j=c[g>>2]|0;j=j+4|0;c[j>>2]=
0;j=c[g>>2]|0;b[j>>1]=0;j=c[g>>2]|0;j=j+8|0;c[j>>2]=0;i=h;return}function Yk(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[f>>2]=c[f>>2];c[e
x3e;>2]=c[e>>2];i=d;return 7}function Zk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>
;2]=c[d>>2];i=b;return}function _k(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;x=i;i=i+80|0;e=x+68|0;f=x+64|0;l=x+60|0;w=x+56|0;t=x+52|0;u=x+48|0;o=x+44|0;q=x+40|0;g=x+36|0;s=x+32|0;p=x+28|0;m=
x+24|0;j=x+20|0;v=x+16|0;n=x+12|0;h=x+8|0;r=x+4|0;k=x;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;c[s>>
;2]=0;c[l>>2]=Wa[c[(c[e>>2]|0)+508>>2]&31](c[e>>2]|0,1801810542,c[f>>2]|0
,w)|0;if(c[l>>2]|0){w=c[l>>2]|0;i=x;return w|0}if((c[w>>2]|0)>>>0<4){c[l>
x3e;2]=142;w=c[l>>2]|0;i=x;return w|0}b=de(c[f>>2]|0,c[w>>2]|0,(c[e>>2]|0)+772|0)|0;c[l
x3e;>2]=b;if(b|0){w=c[l>>2]|0;i=x;return w|0}c[(c[e>>2]|0)+776>>2]=c[w>>2];c[t>
;>2]=c[(c[e>>2]|0)+772>>2];c[u>>2]=(c[t>>2]|0)+(c[w>>2]|0);c[t>>
;2]=(c[t>>2]|0)+2;c[t>>2]=(c[t>>2]|0)+2;w=(((d[(c[t>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[q>>2]=w;c[q>
;>2]=(c[q>>2]|0)>>>0>32?32:w;c[o>>2]=0;while(1){if((c[o>>2]|0)>>
;>0>=(c[q>>2]|0)>>>0)break;c[n>>2]=1<<c[o>>2];if(((c[t>>
;2]|0)+6|0)>>>0>(c[u>>2]|0)>>>0)break;c[v>>2]=c[t>>2];c[t>
x3e;2]=(c[t>>2]|0)+2;c[t>>2]=(c[t>>2]|0)+2;c[m>>2]=(((d[(c[t>>2]|0)+-2>
x3e;0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[t>
;>2]=(c[t>>2]|0)+2;c[j>>2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(
c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c[m>>2]|0)>>>0<
;=6)break;c[v>>2]=(c[v>>2]|0)+(c[m>>2]|0);if((c[v>>2]|0)>>>0>(c[u>
;>2]|0)>>>0)c[v>>2]=c[u>>2];if((c[j>>2]&-9|0)==1?((c[t>>2]|0)+8
|0)>>>0<=(c[u>>2]|0)>>>0:0){c[t>>2]=(c[t>>2]|0)+2;c[p>>
;2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&
;65535)<<0)&65535;c[t>>2]=(c[t>>2]|0)+6;if(((c[v>>2]|0)-(c[t>>2]|0)|0)<
;((c[p>>2]|0)*6|0))c[p>>2]=((c[v>>2]|0)-(c[t>>2]|0)|0)/6|0;c[g>>2]=c[g>
x3e;2]|c[n>>2];if((c[p>>2]|0)>>>0>0){c[t>>2]=(c[t>>2]|0)+4;c[r>
x3e;2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-4+3>>0]|0)<<0;c[t>
x3e;2]=(c[t>>2]|0)+2;c[h>>2]=(c[p>>2]|0)-1;while(1){if((c[h>>2]|0)>>>0<
;=0)break;c[t>>2]=(c[t>>2]|0)+4;c[k>>2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24
|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[
t>>2]|0)+-4+3>>0]|0)<<0;if((c[k>>2]|0)>>>0<=(c[r>>2]|0)>
;>>0)break;c[t>>2]=(c[t>>2]|0)+2;c[r>>2]=c[k>>2];c[h>>2]=(c[h>
x3e;2]|0)+-1}if(!(c[h>>2]|0))c[s>>2]=c[s>>2]|c[n>>2]}}c[t>>2]=c[v>>2
];c[o>>2]=(c[o>>2]|0)+1}c[(c[e>>2]|0)+780>>2]=c[o>>2];c[(c[e>>2]|0)+
784>>2]=c[g>>2];c[(c[e>>2]|0)+788>>2]=c[s>>2];w=c[l>>2]|0;i=x;return
w|0}function $k(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;n=i;i=i+32|0;f=n+24|0;h=n+20|0;j=n+16|0;g=n+12|0;l=n+8|0;m
=n+4|0;k=n;c[f>>2]=a;c[h>>2]=d;c[g>>2]=c[(c[h>>2]|0)+28>>2];c[j>>2]=
Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1734439792,c[h>>2]|0,0)|0;if(c[j>>
2]|0){m=c[j>>2]|0;i=n;return m|0}d=ee(c[h>>2]|0,4)|0;c[j>>2]=d;if(d|0){m=c[j>>2]|0;i=n;return
m|0}a=ie(c[h>>2]|0)|0;b[(c[f>>2]|0)+548>>1]=a;a=ie(c[h>>2]|0)|0;b[(c[f>>2]|0)+
548+2>>1]=a;ge(c[h>>2]|0);a=(c[f>>2]|0)+548+2|0;if((e[(c[f>>2]|0)+548>>1]|0|0)
x3e;=2){b[a>>1]=0;c[j>>2]=8;m=c[j>>2]|0;i=n;return m|0}c[m>>2]=e[a>>1];c[k>
;>2]=hc(c[g>>2]|0,4,0,c[m>>2]|0,0,j)|0;if(c[j>>2]|0){m=c[j>>2]|0;i=n;return m|0}g=ee
(c[h>>2]|0,c[m>>2]<<2)|0;c[j>>2]=g;if(g|0){m=c[j>>2]|0;i=n;return m|0}c[(c[f
x3e;>2]|0)+548+4>>2]=c[k>>2];c[l>>2]=0;while(1){a=c[h>>2]|0;if((c[l>>2]|0
)>>>0>=(c[m>>2]|0)>>>0)break;g=ie(a)|0;b[(c[k>>2]|0)+(c[l>>2]
x3c;<2)>>1]=g;g=ie(c[h>>2]|0)|0;b[(c[k>>2]|0)+(c[l>>2]<<2)+2>>1
]=g;c[l>>2]=(c[l>>2]|0)+1}ge(a);m=c[j>>2]|0;i=n;return m|0}function al(a,b){a=a|0;b=b|0;var d=0,e=
0,f=0,g=0,h=0;g=i;i=i+16|0;h=g+12|0;d=g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[d>>2]=b;c[f>>2]=(c[h>>
;2]|0)+556;c[e>>2]=Wa[c[(c[h>>2]|0)+508>>2]&31](c[h>>2]|0,1346587732,c[d>>
;2]|0,0)|0;if(c[e>>2]|0){h=c[e>>2]|0;i=g;return h|0}c[e>>2]=le(c[d>>2]|0,8108,c[f>
x3e;2]|0)|0;h=c[e>>2]|0;i=g;return h|0}function bl(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>
x3e;2]=a;c[e>>2]=b;b=Qk(c[f>>2]|0,c[e>>2]|0,1651008868)|0;i=d;return b|0}function cl(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;j=f+32|0;l=f+28|0;k=f+24|0;g=f+20|0;h=f;c[j>>2]=a;c[l>
;>2]=b;c[k>>2]=d;c[g>>2]=e;c[h>>2]=0;c[h+4>>2]=c[l>>2];c[h+8>>2
]=c[k>>2];c[h+12>>2]=0;c[h+16>>2]=0;c[c[g>>2]>>2]=2147483647;d=dl(c[j>>
;2]|0,h,c[g>>2]|0)|0;i=f;return d|0}function dl(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;b=Ad(c[h>>2]|0,c[g>>2]|0,0,c[f>>
;2]|0)|0;i=e;return b|0}function el(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[f>>2]=c[f>>2];c[e>>2]=c[e>>2];i=d;return 7}function fl(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;r=i;i=i+48|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0;m=r+16|0;n=
r+12|0;o=r+8|0;p=r+4|0;q=r;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c
[o>>2]=g;if((c[(c[j>>2]|0)+616>>2]|0?(c[(c[j>>2]|0)+612>>2]|0)>>>
;0>(c[l>>2]|0)>>>0:0)?(c[q>>2]=(c[(c[j>>2]|0)+616>>2]|0)+((c[l>
x3e;2]|0)*48|0),c[p>>2]=gl(c[k>>2]|0,c[q>>2]|0,c[m>>2]|0,c[o>>2]|0)|0,(c[p>
;>2]|0)==0):0){c[c[n>>2]>>2]=c[q>>2];c[h>>2]=0;d=c[h>>2]|0;i=r;return d|0
}c[c[m>>2]>>2]=0;c[c[n>>2]>>2]=0;c[c[o>>2]>>2]=0;c[h>>2]=6
;d=c[h>>2]|0;i=r;return d|0}function gl(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;r
=i;i=i+48|0;h=r+28|0;j=r+24|0;k=r+20|0;l=r+16|0;m=r+12|0;p=r+8|0;q=r+4|0;n=r+32|0;o=r;c[j>>2]=a;c[k>>2]=d;c[
l>>2]=f;c[m>>2]=g;a:do if(((c[j>>2]|0)>>>0>=(e[(c[k>>2]|0)+40>
x3e;1]|0)>>>0?(c[j>>2]|0)>>>0<=(e[(c[k>>2]|0)+42>>1]|0)>
x3e;>0:0)?(c[p>>2]=c[(c[k>>2]|0)+4>>2],c[q>>2]=(c[p>>2]|0)+((c[c[k>
x3e;2]>>2]|0)*40|0),c[p>>2]|0):0){while(1){if((c[p>>2]|0)>>>0>=(c[q>>
;2]|0)>>>0)break a;if((c[j>>2]|0)>>>0>=(e[c[p>>2]>>1]|0)>
x3e;>0?(c[j>>2]|0)>>>0<=(e[(c[p>>2]|0)+2>>1]|0)>>>0:0)break
;c[p>>2]=(c[p>>2]|0)+40}b[n>>1]=(c[j>>2]|0)-(e[c[p>>2]>>1]|0);b:do switch
(e[(c[p>>2]|0)+4>>1]|0|0){case 3:case 1:{c[c[m>>2]>>2]=c[(c[(c[p>>2]|0)+28>
;>2]|0)+((e[n>>1]|0)<<2)>>2];break}case 2:{d=(c[(c[p>>2]|0)+8>>2]|0)+(_(c
[(c[p>>2]|0)+12>>2]|0,e[n>>1]|0)|0)|0;c[c[m>>2]>>2]=d;break}case 5:case 4:{c[o
>>2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[(c[p>>2]|0)+24>>2]|0)>
x3e;>0)break a;if((e[(c[(c[p>>2]|0)+32>>2]|0)+(c[o>>2]<<1)>>1]|0|0)==(c[j
>>2]|0))break;c[o>>2]=(c[o>>2]|0)+1}if((e[(c[p>>2]|0)+4>>1]|0|0)==4){c[c[m>
;>2]>>2]=c[(c[(c[p>>2]|0)+28>>2]|0)+(c[o>>2]<<2)>>2];break b}else
{d=(c[(c[p>>2]|0)+8>>2]|0)+(_(c[o>>2]|0,c[(c[p>>2]|0)+12>>2]|0)|0)|0;c[c[m>
;>2]>>2]=d;break b}}default:break a}while(0);c[c[l>>2]>>2]=c[p>>2];c[h>>2
]=0;d=c[h>>2]|0;i=r;return d|0}while(0);c[c[l>>2]>>2]=0;c[c[m>>2]>>2]=0;c[h>
;>2]=6;d=c[h>>2]|0;i=r;return d|0}function hl(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;n=i;i=i+32
|0;g=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;l=n;m=n+20|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=f;c[l>>2]=
0;switch(e[(c[j>>2]|0)+6>>1]|0|0){case 8:case 2:case 1:{b=le(c[h>>2]|0,8172,m)|0;c[l>>2]=
b;if(!b){a[c[k>>2]>>0]=a[m>>0]|0;a[(c[k>>2]|0)+1>>0]=a[m+1>>0]|0;a[(
c[k>>2]|0)+2>>0]=a[m+2>>0]|0;a[(c[k>>2]|0)+3>>0]=a[m+3>>0]|0;a[(c[k
x3e;>2]|0)+4>>0]=a[m+4>>0]|0;a[(c[k>>2]|0)+5>>0]=0;a[(c[k>>2]|0)+6>
x3e;0]=0;a[(c[k>>2]|0)+7>>0]=0}break}case 9:case 7:case 6:{c[l>>2]=le(c[h>>2]|0,8200,c[k
>>2]|0)|0;break}default:{if((e[(c[j>>2]|0)+4>>1]|0|0)!=2?(e[(c[j>>2]|0)+4>>1]|
0|0)!=5:0){c[g>>2]=3;b=c[g>>2]|0;i=n;return b|0}b=c[k>>2]|0;m=(c[j>>2]|0)+16|0;a[b>
x3e;0]=a[m>>0]|0;a[b+1>>0]=a[m+1>>0]|0;a[b+2>>0]=a[m+2>>0]|0;a[b+3>>
0]=a[m+3>>0]|0;a[b+4>>0]=a[m+4>>0]|0;a[b+5>>0]=a[m+5>>0]|0;a[b+6>>0]=
a[m+6>>0]|0;a[b+7>>0]=a[m+7>>0]|0}}c[g>>2]=c[l>>2];b=c[g>>2]|0;i=n;return
b|0}function il(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;w=i;i=i+64|0;l=w+48|0;x=w+44|0;y=w+40|0;m=w+36|0;n=w+32|0;o=w+28|0;p=w+24|0;s=w+20|0;r=w+16|0;t=w+12|0;v=w+8|0;u=w+4|0;q=w
;c[l>>2]=b;c[x>>2]=e;c[y>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[p>
;>2]=k;c[s>>2]=fl(c[l>>2]|0,c[y>>2]|0,c[x>>2]|0,u,v,t)|0;if(c[s>>2]|0){y=
c[s>>2]|0;i=w;return y|0}c[s>>2]=Wa[c[(c[l>>2]|0)+508>>2]&31](c[l>>2]|0,1161970772
,c[n>>2]|0,0)|0;if(c[s>>2]|0)c[s>>2]=Wa[c[(c[l>>2]|0)+508>>2]&31](c[l>
;>2]|0,1650745716,c[n>>2]|0,0)|0;if(c[s>>2]|0){y=c[s>>2]|0;i=w;return y|0}c[r>>2]=Mc
(c[n>>2]|0)|0;c[s>>2]=jl(c[v>>2]|0,c[u>>2]|0,c[r>>2]|0,c[t>>2]|0,c[(
c[l>>2]|0)+84>>2]|0,0,0,c[n>>2]|0,c[p>>2]|0,0)|0;if(c[s>>2]|0){y=c[s>>
;2]|0;i=w;return y|0}if(a[(c[v>>2]|0)+47>>0]&1|0){c[q>>2]=(a[(c[v>>2]|0)+16>
x3e;0]|0)-(a[(c[v>>2]|0)+16+1>>0]|0);a[(c[p>>2]|0)+5>>0]=(0-(d[(c[p>>2]|0)+1
x3e;>0]|0)|0)/2|0;a[(c[p>>2]|0)+6>>0]=((c[q>>2]|0)-(d[c[p>>2]>>0]|0)|0)/2
|0;a[(c[p>>2]|0)+7>>0]=((c[q>>2]|0)*12|0)/10|0}if(!(c[m>>2]&64)){y=c[s>>2
]|0;i=w;return y|0}ml(c[o>>2]|0,c[p>>2]|0);y=c[s>>2]|0;i=w;return y|0}function jl(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;L=i;i=i+96|0;u=L+72|0;v=L+68|0;q=L+64|0;x=L+60|0;M=L+56|0;y=L+52|0;z=L+48|0;A=L+44|0;B=L+40|0;r
=L+36|0;w=L+32|0;J=L+28|0;s=L+24|0;I=L+20|0;t=L+16|0;D=L+12|0;C=L+8|0;K=L+78|0;E=L+76|0;H=L+4|0;F=L+80|0;G=L;c[v>>2]=f
;c[q>>2]=g;c[x>>2]=h;c[M>>2]=j;c[y>>2]=k;c[z>>2]=l;c[A>>2]=m;c[B>
;>2]=n;c[r>>2]=o;c[w>>2]=p;c[J>>2]=c[(c[B>>2]|0)+28>>2];c[s>>2]=(
c[y>>2]|0)+76;m=Kc(c[B>>2]|0,(c[x>>2]|0)+(c[M>>2]|0)|0)|0;c[I>>2]=m;a:do if((m
|0)==0?(c[I>>2]=hl(c[B>>2]|0,c[q>>2]|0,c[r>>2]|0)|0,(c[I>>2]|0)==0):0){if(!(c[
w>>2]|0)){c[(c[s>>2]|0)+4>>2]=d[(c[r>>2]|0)+1>>0];c[c[s>>2]>>
;2]=d[c[r>>2]>>0];switch(d[(c[v>>2]|0)+46>>0]|0){case 1:{a[(c[s>>2]|0)+18>
;>0]=1;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|0)+4>>2]|0)+7>>3;break}case 2:{a[(
c[s>>2]|0)+18>>0]=3;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|0)+4>>2]|0)+3>
;>2;break}case 4:{a[(c[s>>2]|0)+18>>0]=4;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|
0)+4>>2]|0)+1>>1;break}case 8:{a[(c[s>>2]|0)+18>>0]=2;c[(c[s>>2]|0)+8>>
;2]=c[(c[s>>2]|0)+4>>2];break}default:{c[u>>2]=3;M=c[u>>2]|0;i=L;return M|0}}c[t>
x3e;2]=_(c[c[s>>2]>>2]|0,c[(c[s>>2]|0)+8>>2]|0)|0;if(!(c[t>>2]|0))break;c[I>
;>2]=xc(c[y>>2]|0,c[t>>2]|0)|0;if(c[I>>2]|0)break}switch(e[(c[q>>2]|0)+6>>
;1]|0){case 7:case 6:case 5:case 2:case 1:{c[u>>2]=kl(c[s>>2]|0,c[z>>2]|0,c[A>>2]|0,d[(c
[v>>2]|0)+46>>0]|0,b[(c[q>>2]|0)+6>>1]|0,c[r>>2]|0,c[B>>2]|0)|0;M=c[
u>>2]|0;i=L;return M|0}case 8:{M=Qc(c[B>>2]|0,1)|0;c[I>>2]=M;if(M|0){c[I>>2]=83;break a}
break}case 9:break;default:{c[u>>2]=3;M=c[u>>2]|0;i=L;return M|0}}b[K>>1]=Pc(c[B>>2]|0,I
)|0;if((c[I>>2]|0)==0?(c[D>>2]=hc(c[J>>2]|0,4,0,e[K>>1]|0,0,I)|0,(c[I>>2]|0)==
0):0){b[E>>1]=b[K>>1]|0;M=ee(c[B>>2]|0,e[K>>1]<<2)|0;c[I>>2]=M;b:do
if(!M){c[C>>2]=c[D>>2];while(1){q=c[B>>2]|0;if((e[E>>1]|0)<=0)break;M=ie(q)|0;b[c[C
>>2]>>1]=M;M=he(c[B>>2]|0)|0;a[(c[C>>2]|0)+2>>0]=M;M=he(c[B>>2]|0)|0
;a[(c[C>>2]|0)+3>>0]=M;b[E>>1]=(b[E>>1]|0)+-1<<16>>16;c[C>>
;2]=(c[C>>2]|0)+4}ge(q);b[E>>1]=b[K>>1]|0;c[C>>2]=c[D>>2];while(1){if((e[E>
;>1]|0)<=0)break b;c[I>>2]=gl(e[c[C>>2]>>1]|0,c[v>>2]|0,H,G)|0;if(c[I>>
;2]|0)break b;c[I>>2]=jl(c[v>>2]|0,c[H>>2]|0,c[x>>2]|0,c[G>>2]|0,c[y>>
;2]|0,(c[z>>2]|0)+(a[(c[C>>2]|0)+2>>0]|0)|0,(c[A>>2]|0)+(a[(c[C>>2]|0)+3>
x3e;0]|0)|0,c[B>>2]|0,F,(c[w>>2]|0)+1|0)|0;if(c[I>>2]|0)break b;b[E>>1]=(b[E>>
1]|0)+-1<<16>>16;c[C>>2]=(c[C>>2]|0)+4}}while(0);Fb(c[J>>2]|0,c[D>>2
]|0);c[D>>2]=0}}while(0);c[u>>2]=c[I>>2];M=c[u>>2]|0;i=L;return M|0}function kl(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;C=i;i=i+64|
0;n=C+48|0;o=C+44|0;p=C+40|0;q=C+36|0;r=C+32|0;s=C+52|0;t=C+28|0;u=C+24|0;v=C+20|0;y=C+16|0;w=C+12|0;x=C+8|0;z=C+4|0;B=C+54|0;A=
C;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;c[r>>2]=j;b[s>>1]=k;c[t>>2]=l;c[u>
;>2]=m;if(((c[p>>2]|0)>=0?!((c[q>>2]|0)<0?1:((c[p>>2]|0)+(d[(c[t>>2]|0)+1
>>0]|0)|0)>(c[(c[o>>2]|0)+4>>2]|0)):0)?((c[q>>2]|0)+(d[c[t>>2]>>
;0]|0)|0)<=(c[c[o>>2]>>2]|0):0){c[y>>2]=d[(c[t>>2]|0)+1>>0];c[w>>
;2]=d[c[t>>2]>>0];c[z>>2]=_(c[r>>2]|0,c[y>>2]|0)|0;a[B>>0]=0;switch(
e[s>>1]|0|0){case 6:case 1:{switch(c[r>>2]|0){case 1:{c[A>>2]=(c[y>>2]|0)+7>>3
;break}case 2:{c[A>>2]=(c[y>>2]|0)+3>>2;break}case 4:{c[A>>2]=(c[y>>2]|0)+1>
;>1;break}default:c[A>>2]=c[y>>2]}c[x>>2]=_(c[w>>2]|0,c[A>>2]|0)|0;a[B>
;>0]=1;break}case 7:case 5:case 2:{c[z>>2]=_(c[y>>2]|0,c[r>>2]|0)|0;c[x>>2]=(_(c[w
x3e;>2]|0,c[z>>2]|0)|0)+7>>3;break}default:{c[n>>2]=3;h=c[n>>2]|0;i=C;return h|0}}h
=ee(c[u>>2]|0,c[x>>2]|0)|0;c[v>>2]=h;if(!h){h=_(c[p>>2]|0,c[r>>2]|0)|0;ll(c[o
x3e;>2]|0,c[(c[u>>2]|0)+32>>2]|0,c[z>>2]|0,a[B>>0]|0,h,c[q>>2]|0,d[c[t>
;>2]>>0]|0);ge(c[u>>2]|0)}}else c[v>>2]=6;c[n>>2]=c[v>>2];h=c[n>>
;2]|0;i=C;return h|0}function ll(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,D=0,E=0,F=0;F=i;i=i+64|0;n=F+44|0;q=F+40|0;r=F+36|0;s=F+54|0;t=F+32|0;o=F+28|0;p=F+24|0;y=F+20|0;z
=F+16|0;x=F+12|0;u=F+48|0;A=F+8|0;w=F+4|0;v=F;B=F+53|0;C=F+52|0;D=F+51|0;E=F+50|0;c[n>>2]=f;c[q>>2]=g;c[r>
;>2]=h;a[s>>0]=j;c[t>>2]=k;c[o>>2]=l;c[p>>2]=m;c[z>>2]=c[(c[n>>
2]|0)+8>>2];c[y>>2]=c[(c[n>>2]|0)+12>>2];if((c[z>>2]|0)<0){l=_(c[z>
x3e;2]|0,(c[c[n>>2]>>2]|0)-1|0)|0;c[y>>2]=(c[y>>2]|0)+(0-l)}l=(c[t>>2]>
x3e;3)+(_(c[o>>2]|0,c[z>>2]|0)|0)|0;c[y>>2]=(c[y>>2]|0)+l;b[u>>1]=0;c[A>
x3e;2]=0;c[x>>2]=c[p>>2];while(1){if((c[x>>2]|0)<=0)break;c[w>>2]=c[y>>2];
c[v>>2]=c[r>>2];a[B>>0]=c[t>>2]&7;a[C>>0]=8-(d[B>>0]|0);if((c[v
>>2]|0)>=8){c[v>>2]=(c[v>>2]|0)-8;do{if((c[A>>2]|0)>>>0<8){l=c[
q>>2]|0;c[q>>2]=l+1;b[u>>1]=e[u>>1]|(d[l>>0]&65535)<<8-(c[A>
;>2]|0)&65535;c[A>>2]=(c[A>>2]|0)+8}a[D>>0]=e[u>>1]>>8;n=d[D>
x3e;0]|0;if(a[B>>0]|0){l=c[w>>2]|0;a[l>>0]=d[l>>0]|n>>d[B>>0]&255
;l=(c[w>>2]|0)+1|0;a[l>>0]=d[l>>0]|d[D>>0]<<d[C>>0]&255}else{l=
c[w>>2]|0;a[l>>0]=d[l>>0]|n}c[w>>2]=(c[w>>2]|0)+1;b[u>>1]=e[u>
x3e;1]<<8;c[A>>2]=(c[A>>2]|0)-8;c[v>>2]=(c[v>>2]|0)-8}while((c[v>>2]|
0)>=0);c[v>>2]=(c[v>>2]|0)+8}if((c[v>>2]|0)>0){if((c[A>>2]|0)<(c[v>
x3e;2]|0)){l=c[q>>2]|0;c[q>>2]=l+1;b[u>>1]=e[u>>1]|(d[l>>0]&65535)<
x3c;8-(c[A>>2]|0)&65535;c[A>>2]=(c[A>>2]|0)+8}a[E>>0]=e[u>>1]>>
8&255&~(255>>c[v>>2]);l=c[w>>2]|0;a[l>>0]=d[l>>0]|d[E>>0]
x3e;>d[B>>0]&255;if((c[v>>2]|0)>(d[C>>0]|0)){l=(c[w>>2]|0)+1|0;a[l>
x3e;0]=d[l>>0]|d[E>>0]<<d[C>>0]&255}b[u>>1]=e[u>>1]<<
c[v>>2];c[A>>2]=(c[A>>2]|0)-(c[v>>2]|0)}if(a[s>>0]|0){b[u>>1]=0;c[A
x3e;>2]=0}c[y>>2]=(c[y>>2]|0)+(c[z>>2]|0);c[x>>2]=(c[x>>2]|0)+-1}i=F;return
}function ml(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;z=i;i=i+80|0;l
=z+60|0;m=z+56|0;w=z+52|0;f=z+48|0;r=z+44|0;q=z+40|0;g=z+36|0;j=z+32|0;h=z+28|0;k=z+24|0;o=z+20|0;t=z+16|0;y=z+12|0;u=z+66|0;n=z
+8|0;x=z+65|0;v=z+4|0;p=z;s=z+64|0;c[l>>2]=b;c[m>>2]=e;c[q>>2]=c[(c[l>>2]|0)+12>>
;2];c[w>>2]=c[c[l>>2]>>2];c[r>>2]=c[(c[l>>2]|0)+8>>2];c[f>>
;2]=0;a:while(1){if((c[f>>2]|0)>=(c[w>>2]|0))break;c[g>>2]=c[q>>2];c[j>>2
]=(c[q>>2]|0)+(c[r>>2]|0);while(1){if((c[g>>2]|0)>>>0>=(c[j>>2]|0)
x3e;>>0)break;if(a[c[g>>2]>>0]|0)break a;c[g>>2]=(c[g>>2]|0)+1}c[q>>
2]=c[j>>2];c[f>>2]=(c[f>>2]|0)+1}if((c[f>>2]|0)>=(c[w>>2]|0)){c[(c[l>
;>2]|0)+4>>2]=0;c[c[l>>2]>>2]=0;c[(c[l>>2]|0)+8>>2]=0;a[(c[l>>2
]|0)+18>>0]=1;i=z;return}if((c[f>>2]|0)>0){c[q>>2]=c[(c[l>>2]|0)+12>>2];e
=(c[q>>2]|0)+(_(c[f>>2]|0,c[r>>2]|0)|0)|0;Ts(c[q>>2]|0,e|0,_((c[w>>2]|0)-(c[f
x3e;>2]|0)|0,c[r>>2]|0)|0)|0;a[c[m>>2]>>0]=(d[c[m>>2]>>0]|0)-(c[f>
x3e;2]|0);a[(c[m>>2]|0)+3>>0]=(a[(c[m>>2]|0)+3>>0]|0)-(c[f>>2]|0);a[(c[m>
x3e;2]|0)+6>>0]=(a[(c[m>>2]|0)+6>>0]|0)-(c[f>>2]|0);e=c[l>>2]|0;c[e>>
;2]=(c[e>>2]|0)-(c[f>>2]|0);c[w>>2]=(c[w>>2]|0)-(c[f>>2]|0)}c[q>>2]=(
c[(c[l>>2]|0)+12>>2]|0)+(_((c[w>>2]|0)-1|0,c[r>>2]|0)|0);c[f>>2]=0;b:while(1){
if((c[f>>2]|0)>=(c[w>>2]|0))break;c[h>>2]=c[q>>2];c[k>>2]=(c[q>>
;2]|0)+(c[r>>2]|0);while(1){if((c[h>>2]|0)>>>0>=(c[k>>2]|0)>>>0
)break;if(a[c[h>>2]>>0]|0)break b;c[h>>2]=(c[h>>2]|0)+1}c[q>>2]=(c[q>>
;2]|0)+(0-(c[r>>2]|0));c[f>>2]=(c[f>>2]|0)+1}if((c[f>>2]|0)>0){a[c[m>>2]
x3e;>0]=(d[c[m>>2]>>0]|0)-(c[f>>2]|0);c[w>>2]=(c[w>>2]|0)-(c[f>>
;2]|0);e=c[l>>2]|0;c[e>>2]=(c[e>>2]|0)-(c[f>>2]|0)}c:do{c[q>>2]=c[(c[l>
x3e;2]|0)+12>>2];c[o>>2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);while(1){if((c
[q>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(d[c[q>>2]>>0]
x26;128|0)break c;c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}c[q>>2]=c[(c[l>>2]|0)+12>
;>2];c[o>>2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);while(1){f=(c[l>>2]|0
)+4|0;g=c[f>>2]|0;if((c[q>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[y
>>2]=g;c[n>>2]=c[q>>2];a[u>>0]=d[c[n>>2]>>0]<<1;c[t>
x3e;2]=8;while(1){if((c[t>>2]|0)>=(c[y>>2]|0))break;a[x>>0]=a[(c[n>>2]|0)+1>
x3e;0]|0;a[c[n>>2]>>0]=d[u>>0]|d[x>>0]>>7;a[u>>0]=d[x>>0]
x3c;<1;c[n>>2]=(c[n>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+8}a[c[n>>2]>>0
]=a[u>>0]|0;c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}c[f>>2]=g+-1;e=(c[m>>2]|
0)+2|0;a[e>>0]=(a[e>>0]|0)+1<<24>>24;e=(c[m>>2]|0)+5|0;a[e>>0]=(a[e
x3e;>0]|0)+1<<24>>24;e=(c[m>>2]|0)+1|0;a[e>>0]=(a[e>>0]|0)+-1<<
24>>24}while((c[(c[l>>2]|0)+4>>2]|0)>0);d:while(1){c[v>>2]=(c[(c[l>>2]|0)+
4>>2]|0)-1;c[q>>2]=(c[(c[l>>2]|0)+12>>2]|0)+(c[v>>2]>>3);c[p>
x3e;2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);a[s>>0]=128>>(c[v>>2]
x26;7);while(1){if((c[q>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;if(d[c[q>
x3e;2]>>0]&d[s>>0]|0){f=37;break d}c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}y=(c[l
>>2]|0)+4|0;c[y>>2]=(c[y>>2]|0)+-1;y=(c[m>>2]|0)+1|0;a[y>>0]=(a[y>>0
]|0)+-1<<24>>24;if((c[(c[l>>2]|0)+4>>2]|0)<=0){f=37;break}}if((f|0)==37){i=z;return
}}function nl(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return}function
ol(d){d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;f=n+20|0;j=n+16|0;l=n+12|0;g=n+8|0;m=n+4|0;k=n+24|0;h=n;c[f>
x3e;2]=d;c[j>>2]=c[(c[f>>2]|0)+100>>2];c[l>>2]=(c[f>>2]|0)+628;if(!(a[c[l>
;>2]>>0]|0)){m=c[l>>2]|0;a[m>>0]=0;i=n;return}c[g>>2]=c[(c[f>>2]|0)+468
x3e;>2];if((c[g>>2]|0)!=131072){if((c[g>>2]|0)!=163840){m=c[l>>2]|0;a[m>>0]=0;i=n;return
}c[h>>2]=(c[l>>2]|0)+4;Fb(c[j>>2]|0,c[(c[h>>2]|0)+4>>2]|0);c[(c[h>>2
]|0)+4>>2]=0;b[c[h>>2]>>1]=0;m=c[l>>2]|0;a[m>>0]=0;i=n;return}c[m>>2
]=(c[l>>2]|0)+4;Fb(c[j>>2]|0,c[(c[m>>2]|0)+4>>2]|0);c[(c[m>>2]|0)+4>>
;2]=0;b[c[m>>2]>>1]=0;b[k>>1]=0;while(1){f=c[j>>2]|0;if((e[k>>1]|0)>=(e[(
c[m>>2]|0)+2>>1]|0))break;Fb(f,c[(c[(c[m>>2]|0)+8>>2]|0)+(e[k>>1]<<2
)>>2]|0);c[(c[(c[m>>2]|0)+8>>2]|0)+(e[k>>1]<<2)>>2]=0;b[k>>
;1]=(b[k>>1]|0)+1<<16>>16}Fb(f,c[(c[m>>2]|0)+8>>2]|0);c[(c[m>>2]|0)+
8>>2]=0;b[(c[m>>2]|0)+2>>1]=0;m=c[l>>2]|0;a[m>>0]=0;i=n;return}function pl(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;c[h>>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>>2];i=e;return 7}function
ql(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[f>>2]=c[f>
;>2];c[e>>2]=c[e>>2];i=d;return 0}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,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=i;i=i+96|0;g=E+88|0;h=E+84|0;j=E+80|0;D=E+76|0;l=E+72|0;s=
E+68|0;y=E+64|0;z=E+60|0;k=E+56|0;w=E+52|0;C=E+48|0;r=E+44|0;n=E+40|0;x=E+36|0;B=E+32|0;p=E+28|0;v=E+24|0;t=E+20|0;u=E+16|0;A=E+
12|0;o=E+8|0;m=E+4|0;q=E;c[g>>2]=b;c[h>>2]=e;c[j>>2]=f;c[D>>2]=0;c[s>>2]=1;c[y
>>2]=c[(c[g>>2]|0)+772>>2];c[z>>2]=(c[y>>2]|0)+(c[(c[g>>2]|0)+776>
;>2]|0);c[y>>2]=(c[y>>2]|0)+4;c[s>>2]=1;c[l>>2]=c[(c[g>>2]|0)+780>
x3e;2];while(1){if((c[l>>2]|0)>>>0<=0){b=28;break}if(((c[y>>2]|0)+6|0)>>>
0>(c[z>>2]|0)>>>0){b=28;break}c[k>>2]=c[y>>2];c[w>>2]=c[k>>
;2];c[y>>2]=(c[y>>2]|0)+2;c[C>>2]=((d[(c[y>>2]|0)+-2>>0]&65535)<<
;8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[y>>2]=(c[y>>2]|0)+2;c[
r>>2]=((d[(c[y>>2]|0)+-2>>0]&65535)<<8|(d[(c[y>>2]|0)+-2+1>>0]
x26;65535)<<0)&65535;c[y>>2]=(c[y>>2]|0)+2;c[n>>2]=((d[(c[y>>2]|0)+-2>
;>0]&65535)<<8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[B>>
;2]=0;c[C>>2]=c[C>>2];c[w>>2]=(c[k>>2]|0)+(c[r>>2]|0);if((c[w>>2]|0)
x3e;>>0>(c[z>>2]|0)>>>0)c[w>>2]=c[z>>2];a:do if(c[(c[g>>2]|
0)+784>>2]&c[s>>2]|0?((c[y>>2]|0)+8|0)>>>0<=(c[w>>2]|0)>
x3e;>0:0){c[y>>2]=(c[y>>2]|0)+2;c[x>>2]=((d[(c[y>>2]|0)+-2>>0]&65535
)<<8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[y>>2]=(c[y>>
;2]|0)+6;if(((c[w>>2]|0)-(c[y>>2]|0)|0)<((c[x>>2]|0)*6|0))c[x>>2]=((c[w>>
2]|0)-(c[y>>2]|0)|0)/6|0;if(!((c[n>>2]|0)>>>8)){c[p>>2]=c[h>>2]<<
;16|c[j>>2];if(c[(c[g>>2]|0)+788>>2]&c[s>>2]|0){c[v>>2]=0;c[t>>
2]=c[x>>2];while(1){if((c[v>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a
;c[u>>2]=((c[v>>2]|0)+(c[t>>2]|0)|0)>>>1;c[A>>2]=(c[y>>2]|0)+((
c[u>>2]|0)*6|0);c[A>>2]=(c[A>>2]|0)+4;c[o>>2]=d[(c[A>>2]|0)+-4>>0]
x3c;<24|d[(c[A>>2]|0)+-4+1>>0]<<16|d[(c[A>>2]|0)+-4+2>>0]<<8|d[(
c[A>>2]|0)+-4+3>>0]<<0;if((c[o>>2]|0)==(c[p>>2]|0))break;b=c[u>>2]|0
;if((c[o>>2]|0)>>>0<(c[p>>2]|0)>>>0){c[v>>2]=b+1;continue}else{
c[t>>2]=b;continue}}c[B>>2]=((a[c[A>>2]>>0]<<16>>16<<8|d[(
c[A>>2]|0)+1>>0]<<0)&65535)<<16>>16}else{c[m>>2]=c[x>>
;2];while(1){if((c[m>>2]|0)>>>0<=0)break a;c[y>>2]=(c[y>>2]|0)+4;c[q>>
;2]=d[(c[y>>2]|0)+-4>>0]<<24|d[(c[y>>2]|0)+-4+1>>0]<<16|d[(c[y>
x3e;2]|0)+-4+2>>0]<<8|d[(c[y>>2]|0)+-4+3>>0]<<0;b=c[y>>2]|0;if((c[q
x3e;>2]|0)==(c[p>>2]|0))break;c[y>>2]=b+2;c[m>>2]=(c[m>>2]|0)+-1}c[B>>2]=((
a[b>>0]<<16>>16<<8|d[(c[y>>2]|0)+1>>0]<<0)&65535)<
;<16>>16}b=c[B>>2]|0;if(c[n>>2]&8|0){c[D>>2]=b;break}else{c[D>>2]=(c
[D>>2]|0)+b;break}}}while(0);c[y>>2]=c[w>>2];c[l>>2]=(c[l>>2]|0)+-1;c[s>
x3e;2]=c[s>>2]<<1}if((b|0)==28){i=E;return c[D>>2]|0}return 0}function sl(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;n=i;i=i+48|0;f=n+36|0;h=n+32|0;m=n+16|0;k=n+12|0;g=n+8|0;j=n+4|0;l=n;c[f>>2]=a;c[h>
x3e;2]=d;c[g>>2]=c[(c[h>>2]|0)+28>>2];c[m+12>>2]=Mc(c[h>>2]|0)|0;c[m>>
;2]=Oc(c[h>>2]|0,k)|0;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}d=le(c[h>>2]|0,8240,m)|0;
c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}c[k>>2]=tl(m,c[h>>2]|0)|0;if(c[k>>
;2]|0){m=c[k>>2]|0;i=n;return m|0}b[(c[f>>2]|0)+152>>1]=b[m+4>>1]|0;c[(c[f>>2]|
0)+148>>2]=c[m>>2];d=hc(c[g>>2]|0,16,0,e[(c[f>>2]|0)+152>>1]|0,0,k)|0;c[(c[f
x3e;>2]|0)+156>>2]=d;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}d=Kc(c[h>>2]|0,(c[m+12
>>2]|0)+12|0)|0;c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}d=ee(c[h>>2]|0,(e[(c[f>
;>2]|0)+152>>1]|0)<<4)|0;c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}c[j>>
;2]=c[(c[f>>2]|0)+156>>2];c[l>>2]=0;while(1){f=c[h>>2]|0;if((c[l>>2]|0)>=(
e[m+4>>1]|0|0))break;d=je(f)|0;c[c[j>>2]>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>>2]|0)+
4>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>>2]|0)+8>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>
x3e;2]|0)+12>>2]=d;if(((c[(c[j>>2]|0)+8>>2]|0)+(c[(c[j>>2]|0)+12>>2]|0)|0)>
;>>0<=(c[(c[h>>2]|0)+4>>2]|0)>>>0)c[j>>2]=(c[j>>2]|0)+16;c
[l>>2]=(c[l>>2]|0)+1}ge(f);m=c[k>>2]|0;i=n;return m|0}function tl(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,q=0,r=0,s=0;s=i;i=i+64|0;f=s+48|0;g=s+44|0;h=s+40|0;n=s+54|0;q=s+52|0;j=s+36|0;l=s+32|0;k=s+28|0;o=
s+24|0;p=s+8|0;m=s;c[f>>2]=a;c[g>>2]=d;b[q>>1]=0;c[j>>2]=0;c[l>>2]=0;c[k>
x3e;2]=0;c[o>>2]=(c[(c[f>>2]|0)+12>>2]|0)+12;d=Kc(c[g>>2]|0,c[o>>2]|0)|0;c[h
x3e;>2]=d;if(d|0){r=c[h>>2]|0;i=s;return r|0}b[n>>1]=0;a:while(1){if((e[n>>1]|0|0)>=(e[(
c[f>>2]|0)+4>>1]|0|0))break;d=le(c[g>>2]|0,8264,p)|0;c[h>>2]=d;if(d|0){r=5;break}do if(((
c[p+8>>2]|0)+(c[p+12>>2]|0)|0)>>>0<=(c[(c[g>>2]|0)+4>>2]|0)>>
;>0){b[q>>1]=(b[q>>1]|0)+1<<16>>16;if((c[p>>2]|0)!=1751474532?(c[p>
x3e;2]|0)!=1651008868:0){if((c[p>>2]|0)==1397313095){c[l>>2]=1;break}if((c[p>>2]|0)!=1296389185)break
;c[k>>2]=1;break}c[j>>2]=1;if((c[p+12>>2]|0)>>>0<54){r=10;break a}d=Kc(c[g>
;>2]|0,(c[p+8>>2]|0)+12|0)|0;c[h>>2]=d;if(d|0){r=27;break a}c[m>>2]=Oc(c[g>>2]|0,h)|
0;if(c[h>>2]|0){r=27;break a}if((c[m>>2]|0)!=1594834165){r=14;break a}d=Kc(c[g>>2]|0,(c[o>>
;2]|0)+((e[n>>1]|0)+1<<4)|0)|0;c[h>>2]=d;if(d|0){r=27;break a}}while(0);b[n>>1]=(b[n>
;>1]|0)+1<<16>>16}if((r|0)==5){b[n>>1]=(b[n>>1]|0)+-1<<16>>16;b
[(c[f>>2]|0)+4>>1]=b[n>>1]|0}else if((r|0)==10){c[h>>2]=142;r=c[h>>2]|0;i=s;return
r|0}else if((r|0)==14){c[h>>2]=142;r=c[h>>2]|0;i=s;return r|0}else if((r|0)==27){r=c[h>>2]|0;i=s;
return r|0}b[(c[f>>2]|0)+4>>1]=b[q>>1]|0;if(!(e[(c[f>>2]|0)+4>>1]|0)){c[h>
;>2]=2;r=c[h>>2]|0;i=s;return r|0}if((c[j>>2]|0)==0?!((c[l>>2]|0)!=0&(c[k>>2]|
0)!=0):0){c[h>>2]=142;r=c[h>>2]|0;i=s;return r|0}c[h>>2]=0;r=c[h>>2]|0;i=s;return r|0}function
ul(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;E=i;i=i
+80|0;B=E+72|0;j=E+68|0;C=E+78|0;D=E+64|0;r=E+60|0;z=E+56|0;t=E+52|0;s=E+48|0;u=E+44|0;q=E+40|0;w=E+36|0;v=E+32|0;o=E+28|0;x=E+24
|0;p=E+20|0;y=E+16|0;k=E+12|0;m=E+8|0;l=E+4|0;n=E;A=E+76|0;c[B>>2]=f;c[j>>2]=g;a[C>>0]=h;c[r>
x3e;2]=c[(c[j>>2]|0)+28>>2];f=c[B>>2]|0;if(a[C>>0]|0){c[o>>2]=f+300+36;c[x>
;>2]=(c[B>>2]|0)+300+40;c[D>>2]=Wa[c[(c[B>>2]|0)+508>>2]&31](c[B>>2]|
0,1986884728,c[j>>2]|0,z)|0;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}c[s>>2]=e[(c[B>
;>2]|0)+300+34>>1];if((c[s>>2]|0)>>>0>(((c[z>>2]|0)>>>0)/4
|0)>>>0)c[s>>2]=((c[z>>2]|0)>>>0)/4|0;b[(c[B>>2]|0)+300+34>>
;1]=0;c[q>>2]=c[o>>2];c[w>>2]=c[x>>2]}else{c[p>>2]=f+216+36;c[y>>2]=(
c[B>>2]|0)+216+40;c[D>>2]=Wa[c[(c[B>>2]|0)+508>>2]&31](c[B>>2]|0,1752003704
,c[j>>2]|0,z)|0;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}c[s>>2]=e[(c[B>>2]|0)+
216+34>>1];if((c[s>>2]|0)>>>0>(((c[z>>2]|0)>>>0)/4|0)>>
;>0)c[s>>2]=((c[z>>2]|0)>>>0)/4|0;b[(c[B>>2]|0)+216+34>>1]=0;c[q>
;>2]=c[p>>2];c[w>>2]=c[y>>2]}c[t>>2]=(e[(c[B>>2]|0)+260+4>>1]|0
)-(c[s>>2]|0);c[u>>2]=(((c[z>>2]|0)-(c[s>>2]<<2)|0)>>>0)/2|0;if
((c[t>>2]|0)<0)c[t>>2]=0;y=hc(c[r>>2]|0,4,0,c[s>>2]|0,0,D)|0;c[c[q>>2]>
;>2]=y;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}y=hc(c[r>>2]|0,2,0,c[t>>2]|0,0,D)|0
;c[c[w>>2]>>2]=y;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}z=ee(c[j>>2]|0,c[z
x3e;>2]|0)|0;c[D>>2]=z;if(z|0){D=c[D>>2]|0;i=E;return D|0}c[v>>2]=c[(c[j>>2]|0)+32
x3e;>2];c[k>>2]=c[c[q>>2]>>2];c[m>>2]=(c[k>>2]|0)+(c[s>>2]<
;<2);while(1){if((c[k>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;c[v>>
;2]=(c[v>>2]|0)+2;b[c[k>>2]>>1]=(d[(c[v>>2]|0)+-2>>0]&65535)<<8
|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0;c[v>>2]=(c[v>>2]|0)+2;b[(c[k>>
;2]|0)+2>>1]=a[(c[v>>2]|0)+-2>>0]<<16>>16<<8|d[(c[v>>2]|0)+-
2+1>>0]<<0;c[k>>2]=(c[k>>2]|0)+4}c[l>>2]=c[c[w>>2]>>2];c[n
>>2]=(c[l>>2]|0)+(((c[t>>2]|0)<(c[u>>2]|0)?c[t>>2]|0:c[u>>2]|0)
x3c;<1);while(1){if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[v>
x3e;2]=(c[v>>2]|0)+2;b[c[l>>2]>>1]=a[(c[v>>2]|0)+-2>>0]<<16>>
;16<<8|d[(c[v>>2]|0)+-2+1>>0]<<0;c[l>>2]=(c[l>>2]|0)+2}a:do if((c[u
x3e;>2]|0)>0?(c[t>>2]|0)>(c[u>>2]|0):0){b[A>>1]=b[(c[c[w>>2]>>2
]|0)+((c[u>>2]|0)-1<<1)>>1]|0;c[n>>2]=(c[c[w>>2]>>2]|0)+(c[t>
x3e;2]<<1);while(1){if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a
;b[c[l>>2]>>1]=b[A>>1]|0;c[l>>2]=(c[l>>2]|0)+2}}while(0);ge(c[j>>2]|
0);g=c[s>>2]&65535;f=c[B>>2]|0;if(a[C>>0]|0){b[f+300+34>>1]=g;D=c[D>>2]|0
;i=E;return D|0}else{b[f+216+34>>1]=g;D=c[D>>2]|0;i=E;return D|0}return 0}function vl(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;s=i;i=i+64|0;e=s+48|0;k=s+44|0;r=s+40|0;n=s+36|0;j=s+32|0;g=s+28|0;q=s+24
|0;h=s+20|0;f=s+16|0;p=s+12|0;l=s+8|0;o=s+4|0;m=s;c[e>>2]=a;c[k>>2]=d;c[r>>2]=0;c[n>>2]=
c[(c[k>>2]|0)+28>>2];c[(c[e>>2]|0)+612>>2]=0;c[r>>2]=Wa[c[(c[e>>2]|0
)+508>>2]&31](c[e>>2]|0,1161972803,c[k>>2]|0,0)|0;if(c[r>>2]|0)c[r>>2]=Wa
[c[(c[e>>2]|0)+508>>2]&31](c[e>>2]|0,1651273571,c[k>>2]|0,0)|0;if(c[r>>2]|
0){r=c[r>>2]|0;i=s;return r|0}c[q>>2]=Mc(c[k>>2]|0)|0;d=ee(c[k>>2]|0,8)|0;c[r>>
;2]=d;if(d|0){r=c[r>>2]|0;i=s;return r|0}c[j>>2]=je(c[k>>2]|0)|0;c[g>>2]=je(c[k>>
;2]|0)|0;ge(c[k>>2]|0);if((c[j>>2]|0)!=131072|(c[g>>2]|0)>>>0>=65536){c[r>
;>2]=3;r=c[r>>2]|0;i=s;return r|0}j=hc(c[n>>2]|0,48,0,c[g>>2]|0,0,r)|0;c[(c[e>>2]|0
)+616>>2]=j;if(c[r>>2]|0){r=c[r>>2]|0;i=s;return r|0}c[(c[e>>2]|0)+612>>2]=c[g
>>2];c[h>>2]=c[(c[e>>2]|0)+616>>2];c[f>>2]=c[g>>2];j=ee(c[k>>
;2]|0,(c[g>>2]|0)*48|0)|0;c[r>>2]=j;if(j|0){r=c[r>>2]|0;i=s;return r|0}while(1){if((c[f>>
;2]|0)>>>0<=0)break;j=le(c[k>>2]|0,8288,c[h>>2]|0)|0;c[r>>2]=j;if(j|0)break;j=
le(c[k>>2]|0,8308,(c[h>>2]|0)+16|0)|0;c[r>>2]=j;if(j|0)break;j=le(c[k>>2]|0,8308,(c[h>
;>2]|0)+28|0)|0;c[r>>2]=j;if(j|0)break;j=le(c[k>>2]|0,8360,c[h>>2]|0)|0;c[r>>2]=j;if
(j|0)break;c[f>>2]=(c[f>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+48}ge(c[k>>2]|0);c[p>
;>2]=c[(c[e>>2]|0)+616>>2];c[l>>2]=c[g>>2];a:while(1){if((c[l>>2]|0)>
;>>0<=0){e=30;break}c[m>>2]=c[c[p>>2]>>2];j=Kc(c[k>>2]|0,(c[q>>
2]|0)+(c[(c[p>>2]|0)+8>>2]|0)|0)|0;c[r>>2]=j;if(j|0){e=30;break}j=ee(c[k>>2]|0,c[c[p>
;>2]>>2]<<3)|0;c[r>>2]=j;if(j|0){e=30;break}j=hc(c[n>>2]|0,40,0,c[c[p>>2]
x3e;>2]|0,0,r)|0;c[(c[p>>2]|0)+4>>2]=j;if(c[r>>2]|0){e=30;break}c[o>>2]=c[(c[p>
;>2]|0)+4>>2];while(1){e=c[k>>2]|0;if((c[m>>2]|0)>>>0<=0)break;j=ie(e)|0;
b[c[o>>2]>>1]=j;j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+2>>1]=j;j=(c[q>>2]|0
)+(c[(c[p>>2]|0)+8>>2]|0)|0;j=j+(je(c[k>>2]|0)|0)|0;c[(c[o>>2]|0)+36>>2]=j;c[m
>>2]=(c[m>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+40}ge(e);c[m>>2]=c[c[p>>2]
x3e;>2];c[o>>2]=c[(c[p>>2]|0)+4>>2];while(1){if((c[m>>2]|0)>>>0<
;=0)break;j=Kc(c[k>>2]|0,c[(c[o>>2]|0)+36>>2]|0)|0;c[r>>2]=j;if(j|0){e=30;break a}j=ee(c
[k>>2]|0,8)|0;c[r>>2]=j;if(j|0){e=30;break a}j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+4>>
;1]=j;j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+6>>1]=j;j=je(c[k>>2]|0)|0;c[(c[o>>2]|0)+
8>>2]=j;ge(c[k>>2]|0);c[r>>2]=wl(c[o>>2]|0,c[k>>2]|0)|0;if(c[r>>2]|0
){e=30;break a}c[m>>2]=(c[m>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+40}c[l>>2]=(c[l>
;>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+48}if((e|0)==30){r=c[r>>2]|0;i=s;return r|0}return 0}function
wl(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;p=i;i=i+32|0;j=p+24|0;k=p+20|0;l=p+16|0;g=p+12|0;o=p+8|0;n=p+4|0;h=p
;m=p+28|0;c[j>>2]=b;c[k>>2]=f;c[g>>2]=c[(c[k>>2]|0)+28>>2];switch(e[(c[j>
x3e;2]|0)+4>>1]|0|0){case 3:case 1:{a[m>>0]=(e[(c[j>>2]|0)+4>>1]|0|0)==1;if((e[(c[j>
;>2]|0)+2>>1]|0|0)<(e[c[j>>2]>>1]|0|0)){c[l>>2]=3;o=c[l>>2]|0;i=p;return
o|0}c[o>>2]=(e[(c[j>>2]|0)+2>>1]|0)-(e[c[j>>2]>>1]|0)+1;c[(c[j>>2]|
0)+24>>2]=c[o>>2];c[o>>2]=(c[o>>2]|0)+1;c[h>>2]=d[m>>0]|0|0?4:2;f=hc
(c[g>>2]|0,4,0,c[o>>2]|0,0,l)|0;c[(c[j>>2]|0)+28>>2]=f;if(c[l>>2]|0){o=c[l>
;>2]|0;i=p;return o|0}f=ee(c[k>>2]|0,_(c[o>>2]|0,c[h>>2]|0)|0)|0;c[l>>2]=f;if(f|0){
o=c[l>>2]|0;i=p;return o|0}c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0>=(c[o>
x3e;2]|0)>>>0)break;b=c[(c[j>>2]|0)+8>>2]|0;g=c[k>>2]|0;if(d[m>>0]|0|0)g=
je(g)|0;else g=(ie(g)|0)&65535;c[(c[(c[j>>2]|0)+28>>2]|0)+(c[n>>2]<<2)>>2
]=b+g;c[n>>2]=(c[n>>2]|0)+1}ge(c[k>>2]|0);o=c[l>>2]|0;i=p;return o|0}case 2:{c[l>
x3e;2]=xl(c[j>>2]|0,c[k>>2]|0)|0;o=c[l>>2]|0;i=p;return o|0}case 4:{c[l>>2]=yl(c[j>
x3e;2]|0,c[k>>2]|0,1)|0;o=c[l>>2]|0;i=p;return o|0}case 5:{c[l>>2]=xl(c[j>>2]|0,c[k>
;>2]|0)|0;if(c[l>>2]|0){o=c[l>>2]|0;i=p;return o|0}c[l>>2]=yl(c[j>>2]|0,c[k>
x3e;2]|0,0)|0;o=c[l>>2]|0;i=p;return o|0}default:{c[l>>2]=3;o=c[l>>2]|0;i=p;return o|0}}return 0}function
xl(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;b
=Oc(c[f>>2]|0,g)|0;c[(c[e>>2]|0)+12>>2]=b;if(c[g>>2]|0){c[d>>2]=c[g>>
;2];b=c[d>>2]|0;i=h;return b|0}else{b=le(c[f>>2]|0,8200,(c[e>>2]|0)+16|0)|0;c[g>>2]=b;c[
d>>2]=(b|0)!=0&1;b=c[d>>2]|0;i=h;return b|0}return 0}function yl(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;p=i;i=i+32|0;j=p+24|0;k=p+20|0;l=p+28|0;n=p+16|0;m=p+12|0;o=p+8|0;h=p+4|0;g=p;c[j>>2]=d;c[k
>>2]=e;a[l>>0]=f;c[g>>2]=c[(c[k>>2]|0)+28>>2];c[m>>2]=Oc(c[k>
x3e;2]|0,n)|0;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}c[(c[j>>2]|0)+24>>2]=c[m>>
;2];do if(a[l>>0]|0){e=hc(c[g>>2]|0,4,0,c[m>>2]|0,0,n)|0;c[(c[j>>2]|0)+28>>2]=
e;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}else{c[h>>2]=c[m>>2]<<2;break}}else
c[h>>2]=c[m>>2]<<1;while(0);e=hc(c[g>>2]|0,2,0,c[m>>2]|0,0,n)|0;c[(c[j>
x3e;2]|0)+32>>2]=e;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}e=ee(c[k>>2]|0,c[h>>
;2]|0)|0;c[n>>2]=e;if(e|0){o=c[n>>2]|0;i=p;return o|0}c[o>>2]=0;while(1){f=c[k>>2]|0;if((
c[o>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;e=ie(f)|0;b[(c[(c[j>>2]|0
)+32>>2]|0)+(c[o>>2]<<1)>>1]=e;if(a[l>>0]|0){e=c[(c[j>>2]|0)+8>
x3e;2]|0;e=e+((ie(c[k>>2]|0)|0)&65535)|0;c[(c[(c[j>>2]|0)+28>>2]|0)+(c[o>>2]<
x3c;2)>>2]=e}c[o>>2]=(c[o>>2]|0)+1}ge(f);o=c[n>>2]|0;i=p;return o|0}function zl(a){a=a|0
;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;b=j+20|0;d=j+16|0;g=j+12|0;h=j+8|0;e=j+4|0;f=j;c[b>>2]=a;c[d>>
2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[b>>2]|0)+616>>2];c[h>>2]=(c[g
x3e;>2]|0)+((c[(c[b>>2]|0)+612>>2]|0)*48|0);if(!(c[g>>2]|0)){h=c[b>>2]|0;h=h+612|0;
c[h>>2]=0;i=j;return}while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>>
;0)break;c[e>>2]=c[(c[g>>2]|0)+4>>2];c[f>>2]=(c[e>>2]|0)+((c[c[g>>2]
x3e;>2]|0)*40|0);a:do if(c[e>>2]|0)while(1){if((c[e>>2]|0)>>>0>=(c[f>>2]|
0)>>>0)break a;Fb(c[d>>2]|0,c[(c[e>>2]|0)+28>>2]|0);c[(c[e>>2]|0)+28>
;>2]=0;Fb(c[d>>2]|0,c[(c[e>>2]|0)+32>>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[e>
;>2]=(c[e>>2]|0)+40}while(0);Fb(c[d>>2]|0,c[(c[g>>2]|0)+4>>2]|0);c[(c[g>>
2]|0)+4>>2]=0;c[c[g>>2]>>2]=0;c[g>>2]=(c[g>>2]|0)+48}Fb(c[d>>2]|0,c[(
c[b>>2]|0)+616>>2]|0);c[(c[b>>2]|0)+616>>2]=0;h=c[b>>2]|0;h=h+612|0;c[h>
x3e;2]=0;i=j;return}function Al(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;n=i;i=i+32|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+
4|0;m=n;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;if((c[k>>2]|0)>>>0>=(c[(c[j>
;>2]|0)+612>>2]|0)>>>0){c[h>>2]=6;f=c[h>>2]|0;i=n;return f|0}else{c[m>>
;2]=(c[(c[j>>2]|0)+616>>2]|0)+((c[k>>2]|0)*48|0);b[c[l>>2]>>1]=d[(c[m>>
;2]|0)+44>>0]|0;b[(c[l>>2]|0)+2>>1]=d[(c[m>>2]|0)+45>>0]|0;c[(c[l>>2
]|0)+12>>2]=a[(c[m>>2]|0)+16>>0]<<6;c[(c[l>>2]|0)+16>>2]=a[(c[m>
;>2]|0)+16+1>>0]<<6;c[(c[l>>2]|0)+24>>2]=(a[(c[m>>2]|0)+16+6>>0
]|0)+(d[(c[m>>2]|0)+16+2>>0]|0)+(a[(c[m>>2]|0)+16+7>>0]|0)<<6;c[(c[l>>
;2]|0)+20>>2]=(c[(c[l>>2]|0)+12>>2]|0)-(c[(c[l>>2]|0)+16>>2]|0);c[h>>
;2]=0;f=c[h>>2]|0;i=n;return f|0}return 0}function Bl(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;s=i;i=i+48|0;l=s+32|0;t=s+28|0;w=s+38|0;m=s+24|0;n=s+20|0;o=s+16|0;v=s+12|0;u=s+8|0;p=s+4|0;r=s;q=s
+36|0;c[t>>2]=f;a[w>>0]=g;c[m>>2]=h;c[n>>2]=j;c[o>>2]=k;c[v>>2]=(c[t
>>2]|0)+300;c[u>>2]=(c[t>>2]|0)+216;c[p>>2]=d[w>>0]|0|0?c[v>>2]|0:c[
u>>2]|0;b[q>>1]=b[(c[p>>2]|0)+34>>1]|0;if((e[q>>1]|0|0?c[(c[p>>2]|0)+
36>>2]|0:0)?(c[m>>2]|0)>>>0<(e[(c[t>>2]|0)+260+4>>1]|0)>>
x3e;0:0){if((c[m>>2]|0)>>>0<(e[q>>1]|0)>>>0){c[r>>2]=(c[(c[p>
;>2]|0)+36>>2]|0)+(c[m>>2]<<2);b[c[n>>2]>>1]=b[(c[r>>2]|0)+2>
;>1]|0;b[c[o>>2]>>1]=b[c[r>>2]>>1]|0}else{b[c[n>>2]>>1]=b[(c[(c
[p>>2]|0)+40>>2]|0)+((c[m>>2]|0)-(e[q>>1]|0)<<1)>>1]|0;b[c[o>
x3e;2]>>1]=b[(c[(c[p>>2]|0)+36>>2]|0)+((e[q>>1]|0)-1<<2)>>1]|0}c[l
x3e;>2]=0;w=c[l>>2]|0;i=s;return w|0}b[c[o>>2]>>1]=0;b[c[n>>2]>>1]=0;c[l
x3e;>2]=0;w=c[l>>2]|0;i=s;return w|0}function Cl(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;Dl(c[f>>2]|0,c[e>>2]|0);i=d;return 0}function Dl(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)+112>>2]=c[f>>
2];c[(c[e>>2]|0)+104>>2]=c[(c[f>>2]|0)+4+24>>2];i=d;return}function El(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[f>>2]=c[f>>2];c[e>
x3e;2]=c[e>>2];i=d;return 0}function Fl(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+16|0;f=k+12|0;h=
k+8|0;j=k+4|0;g=k;c[d>>2]=a;c[f>>2]=b;c[h>>2]=0;c[j>>2]=c[(c[f>>2]|0)+92>
x3e;2];c[(c[d>>2]|0)+36>>2]=e[(c[f>>2]|0)+68>>1];c[g>>2]=0;while(1){if(!(c[3616
+(c[g>>2]<<2)>>2]|0))break;c[h>>2]=Id(c[f>>2]|0,c[3616+(c[g>>2]<
;<2)>>2]|0)|0;if(!(c[h>>2]|0))break;c[g>>2]=(c[g>>2]|0)+1}if(c[h>>2]|0){a
=c[f>>2]|0;j=c[j>>2]|0;Jd(a,j)|0;i=k;return 0}Gl(c[d>>2]|0,c[f>>2]|0,111);Pl(c[d>
x3e;2]|0,c[f>>2]|0);Rl(c[d>>2]|0,c[f>>2]|0);a=c[f>>2]|0;j=c[j>>2]|0;Jd(a,j)|0;
i=k;return 0}function Gl(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,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=
0;y=i;i=i+1024|0;t=y+1016|0;g=y+1012|0;z=y+1008|0;w=y+884|0;m=y+880|0;n=y+876|0;v=y+872|0;l=y+40|0;r=y+36|0;j=y+32|0;h=y+28|0;s=
y+24|0;o=y+20|0;p=y+16|0;q=y+12|0;k=y+8|0;u=y+4|0;x=y;c[t>>2]=d;c[g>>2]=e;c[z>>2]=f;Hl(w,c[(c[g>
;>2]|0)+100>>2]|0);c[(c[t>>2]|0)+40+8>>2]=0;c[(c[t>>2]|0)+40+396+8>>2]=0;
c[r>>2]=l+4;c[n>>2]=Dc(c[g>>2]|0,c[z>>2]|0)|0;a:do if(((c[n>>2]|0?(c[m>
x3e;2]=Cb(c[g>>2]|0,c[n>>2]|0,1)|0,(c[m>>2]|0)==0):0)?(b[(c[(c[g>>2]|0)+84>>2]|
0)+108+2>>1]|0)>0:0)?(Ns(l|0,0,832)|0,c[l+36>>2]=c[(c[t>>2]|0)+36>>2],c[(c[r>
x3e;2]|0)+8>>2]=65536,c[(c[r>>2]|0)+4>>2]=65536,c[(c[r>>2]|0)+16>>2]=0,c[(c[r
x3e;>2]|0)+12>>2]=0,c[c[r>>2]>>2]=c[g>>2],c[(c[r>>2]|0)+20>>2]=
0,c[(c[r>>2]|0)+24>>2]=0,Dl(w,l),c[m>>2]=Il(w,(c[(c[g>>2]|0)+84>>2]|0)+108|0)|
0,(c[m>>2]|0)==0):0){c[v>>2]=0;while(1){if((c[v>>2]|0)>=2)break a;c[j>>2]=(c[t>
;>2]|0)+40+((c[v>>2]|0)*396|0);c[h>>2]=w+48+((c[v>>2]|0)*28|0);c[q>>2]=0;c[m>
x3e;2]=Kl(w,c[v>>2]|0)|0;if(c[m>>2]|0)break a;Ml(w,c[v>>2]|0);c[s>>2]=c[(c[h>>
2]|0)+8>>2];c[o>>2]=(c[s>>2]|0)+((c[c[h>>2]>>2]|0)*52|0);while(1){if((c[s>
;>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[p>>2]=c[(c[s>>2]|0)+20
>>2];if((c[p>>2]|0?(c[(c[p>>2]|0)+20>>2]|0)==(c[s>>2]|0):0)?(c[p>>2]|
0)>>>0>(c[s>>2]|0)>>>0:0){c[k>>2]=(b[(c[s>>2]|0)+2>>1
]|0)-(b[(c[p>>2]|0)+2>>1]|0);if((c[k>>2]|0)<0)c[k>>2]=0-(c[k>>2]|0);if((c
[q>>2]|0)>>>0<16){r=c[k>>2]|0;z=c[q>>2]|0;c[q>>2]=z+1;c[(c[j>
x3e;2]|0)+12+(z*12|0)>>2]=r}}c[s>>2]=(c[s>>2]|0)+52}Nl(c[q>>2]|0,(c[j>>2]|0)+12
|0);c[(c[j>>2]|0)+8>>2]=c[q>>2];c[v>>2]=(c[v>>2]|0)+1}}while(0);c[v>>
;2]=0;while(1){if((c[v>>2]|0)>=2)break;c[u>>2]=(c[t>>2]|0)+40+((c[v>>2]|0)*396|0);if
((c[(c[u>>2]|0)+8>>2]|0)>>>0>0)g=c[(c[u>>2]|0)+12>>2]|0;else g=((c[(
c[t>>2]|0)+36>>2]|0)*50|0)/2048|0;c[x>>2]=g;c[(c[u>>2]|0)+204>>2]=(c[x>
x3e;2]|0)/5|0;c[(c[u>>2]|0)+208>>2]=c[x>>2];a[(c[u>>2]|0)+212>>0]=0;c[v>
x3e;2]=(c[v>>2]|0)+1}Ol(w);i=y;return}function Hl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>
x3e;2]=a;c[e>>2]=b;a=c[d>>2]|0;b=a+124|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[c[d>
x3e;2]>>2]=c[e>>2];i=f;return}function Il(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,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;M=i;i=i+128|0;g=M+112|0;h=M+108|0;A=M+104|0;z
=M+100|0;n=M+96|0;m=M+92|0;s=M+88|0;u=M+84|0;r=M+80|0;t=M+76|0;l=M+72|0;I=M+68|0;J=M+64|0;q=M+60|0;p=M+56|0;k=M+52|0;o=M+48|0;j=
M+44|0;v=M+40|0;w=M+36|0;x=M+32|0;y=M+116|0;B=M+28|0;K=M+24|0;D=M+20|0;E=M+16|0;C=M+12|0;F=M+8|0;G=M+4|0;H=M;c[g>>2]=d
;c[h>>2]=f;c[A>>2]=0;c[s>>2]=c[(c[g>>2]|0)+4>>2];c[u>>2]=c[(c[g>
;>2]|0)+12>>2];c[r>>2]=c[(c[g>>2]|0)+8>>2];c[t>>2]=c[(c[g>>2]|0
)+16>>2];c[l>>2]=c[c[g>>2]>>2];c[(c[g>>2]|0)+28>>2]=0;c[(c[g>
x3e;2]|0)+40>>2]=0;c[(c[g>>2]|0)+48>>2]=0;c[(c[g>>2]|0)+48+12>>2]=0;c[(c[g>
;>2]|0)+48+28>>2]=0;c[(c[g>>2]|0)+48+28+12>>2]=0;c[m>>2]=b[c[h>>2]>
x3e;1];c[n>>2]=c[(c[g>>2]|0)+36>>2];do if((c[m>>2]|0)>>>0>(c[n>
x3e;2]|0)>>>0){c[m>>2]=(c[m>>2]|0)+3&-4;f=hc(c[l>>2]|0,4,c[n>>2]|0,c
[m>>2]|0,c[(c[g>>2]|0)+44>>2]|0,A)|0;c[(c[g>>2]|0)+44>>2]=f;if(c[A>>
2]|0){L=c[A>>2]|0;i=M;return L|0}else{c[(c[g>>2]|0)+36>>2]=c[m>>2];break}}while(0);c[m
x3e;>2]=(b[(c[h>>2]|0)+2>>1]|0)+2;c[n>>2]=c[(c[g>>2]|0)+24>>2];do if((c[m
>>2]|0)>>>0>(c[n>>2]|0)>>>0){c[m>>2]=(c[m>>2]|0)+2+7
x26;-8;f=hc(c[l>>2]|0,40,c[n>>2]|0,c[m>>2]|0,c[(c[g>>2]|0)+32>>2]|0,A)|0;c[(c[
g>>2]|0)+32>>2]=f;if(c[A>>2]|0){L=c[A>>2]|0;i=M;return L|0}else{c[(c[g>>2]|0)+
24>>2]=c[m>>2];break}}while(0);c[(c[g>>2]|0)+28>>2]=b[(c[h>>2]|0)+2>>
;1];c[(c[g>>2]|0)+40>>2]=b[c[h>>2]>>1];c[(c[g>>2]|0)+48+24>>2]=2;c[(
c[g>>2]|0)+48+28+24>>2]=-1;if(($d(c[h>>2]|0)|0)==1){c[(c[g>>2]|0)+48+24>>2]=-2
;c[(c[g>>2]|0)+48+28+24>>2]=1}c[(c[g>>2]|0)+4>>2]=c[s>>2];c[(c[g>>2]|
0)+12>>2]=c[u>>2];c[(c[g>>2]|0)+8>>2]=c[r>>2];c[(c[g>>2]|0)+16>
x3e;2]=c[t>>2];c[(c[g>>2]|0)+116>>2]=0;c[(c[g>>2]|0)+120>>2]=0;c[z>>
2]=c[(c[g>>2]|0)+32>>2];if(!(c[(c[g>>2]|0)+28>>2]|0)){L=c[A>>2]|0;i=M;return L
|0}c[J>>2]=(c[z>>2]|0)+((c[(c[g>>2]|0)+28>>2]|0)*40|0);c[q>>2]=c[(c[h>>
;2]|0)+4>>2];c[p>>2]=c[(c[h>>2]|0)+8>>2];c[k>>2]=(c[z>>2]|0)+((b[c[(
c[h>>2]|0)+12>>2]>>1]|0)*40|0);c[o>>2]=c[k>>2];c[j>>2]=0;c[I>
x3e;2]=c[z>>2];while(1){if((c[I>>2]|0)>>>0>=(c[J>>2]|0)>>>0)break
;b[(c[I>>2]|0)+12>>1]=c[c[q>>2]>>2];b[(c[I>>2]|0)+14>>1]=c[(c[q>
;>2]|0)+4>>2];f=Mb(c[c[q>>2]>>2]|0,c[s>>2]|0)|0;f=f+(c[r>>2]|0)|0;c[(c[I
x3e;>2]|0)+16>>2]=f;c[(c[I>>2]|0)+4>>2]=f;f=Mb(c[(c[q>>2]|0)+4>>2]|0,c[u
x3e;>2]|0)|0;f=f+(c[t>>2]|0)|0;c[(c[I>>2]|0)+20>>2]=f;c[(c[I>>2]|0)+8>>2]=
f;switch(a[c[p>>2]>>0]&3|0){case 0:{b[c[I>>2]>>1]=1;break}case 2:{b[c[I>>
2]>>1]=2;break}default:b[c[I>>2]>>1]=0}c[(c[I>>2]|0)+36>>2]=c[o>>2];
c[(c[o>>2]|0)+32>>2]=c[I>>2];c[o>>2]=c[I>>2];if((c[I>>2]|0)==(c[k>
;>2]|0)?(f=(c[j>>2]|0)+1|0,c[j>>2]=f,(f|0)<(b[c[h>>2]>>1]|0)):0){c[k>>
;2]=(c[z>>2]|0)+((b[(c[(c[h>>2]|0)+12>>2]|0)+(c[j>>2]<<1)>>1]|0)*40|
0);c[o>>2]=c[k>>2]}c[I>>2]=(c[I>>2]|0)+40;c[q>>2]=(c[q>>2]|0)+8;c[p
x3e;>2]=(c[p>>2]|0)+1}c[v>>2]=c[(c[g>>2]|0)+44>>2];c[w>>2]=(c[v>>
;2]|0)+(c[(c[g>>2]|0)+40>>2]<<2);c[x>>2]=c[(c[h>>2]|0)+12>>2];b[y>
;>1]=0;while(1){g=c[z>>2]|0;if((c[v>>2]|0)>>>0>=(c[w>>2]|0)>>
x3e;0)break;c[c[v>>2]>>2]=g+((b[y>>1]|0)*40|0);b[y>>1]=(b[c[x>>2]>>1
]|0)+1;c[v>>2]=(c[v>>2]|0)+4;c[x>>2]=(c[x>>2]|0)+2}c[B>>2]=g;c[K>>2]=
0;c[D>>2]=0;c[E>>2]=0;c[C>>2]=4;c[I>>2]=c[z>>2];while(1){if((c[I>>2]|
0)>>>0>=(c[J>>2]|0)>>>0)break;if((c[I>>2]|0)==(c[B>>2]|0)){c[K
x3e;>2]=c[(c[B>>2]|0)+36>>2];c[D>>2]=(b[(c[B>>2]|0)+12>>1]|0)-(b[(c[K>
;>2]|0)+12>>1]|0);c[E>>2]=(b[(c[B>>2]|0)+14>>1]|0)-(b[(c[K>>2]|0)+14>
;>1]|0);c[C>>2]=Jl(c[D>>2]|0,c[E>>2]|0)|0;c[B>>2]=(c[K>>2]|0)+40}a[(c[I
x3e;>2]|0)+2>>0]=c[C>>2];c[F>>2]=c[(c[I>>2]|0)+32>>2];c[G>>2]=(
b[(c[F>>2]|0)+12>>1]|0)-(b[(c[I>>2]|0)+12>>1]|0);c[H>>2]=(b[(c[F>>2]|
0)+14>>1]|0)-(b[(c[I>>2]|0)+14>>1]|0);c[C>>2]=Jl(c[G>>2]|0,c[H>>2]|0
)|0;a[(c[I>>2]|0)+3>>0]=c[C>>2];do if(!(e[c[I>>2]>>1]&3|0)){g=c[I>
x3e;2]|0;if((a[(c[I>>2]|0)+3>>0]|0)!=(a[(c[I>>2]|0)+2>>0]|0))if((a[g+2>>0]|0)==(
0-(a[(c[I>>2]|0)+3>>0]|0)|0)){L=28;break}else break;if(!((a[g+3>>0]|0)==4?!($b(c[D>>2]|0
,c[E>>2]|0,c[G>>2]|0,c[H>>2]|0)|0):0))L=28}else L=28;while(0);if((L|0)==28){L=0;z=c[I>>2
]|0;b[z>>1]=e[z>>1]|256}c[D>>2]=c[G>>2];c[E>>2]=c[H>>2];c[K>>
;2]=c[I>>2];c[I>>2]=(c[I>>2]|0)+40}L=c[A>>2]|0;i=M;return L|0}function Jl(a,b){a=a|0;b=b
|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;g=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;a=(c[e
>>2]|0)>=(0-(c[d>>2]|0)|0);do if((c[e>>2]|0)>=(c[d>>2]|0))if(a){c[f>>
;2]=2;c[g>>2]=c[e>>2];c[h>>2]=c[d>>2];break}else{c[f>>2]=-1;c[g>>2]=
0-(c[d>>2]|0);c[h>>2]=c[e>>2];break}else if(a){c[f>>2]=1;c[g>>2]=c[d>>
;2];c[h>>2]=c[e>>2];break}else{c[f>>2]=-2;c[g>>2]=c[e>>2];c[h>>2]=c[
d>>2];break}while(0);c[h>>2]=(c[h>>2]|0)*14;d=c[g>>2]|0;e=c[h>>2]|0;if((((c[g
x3e;>2]|0)<0?0-d|0:d)|0)>(((c[h>>2]|0)<0?0-e|0:e)|0)){h=c[f>>2]|0;i=j;return h|0}c[f>
;>2]=4;h=c[f>>2]|0;i=j;return h|0}function Kl(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;P=i;i=i+176|0;j=P+164|0;k=P+160|0;p=P+
156|0;v=P+152|0;G=P+148|0;N=P+144|0;A=P+92|0;q=P+88|0;r=P+84|0;t=P+80|0;B=P+76|0;n=P+72|0;l=P+68|0;o=P+64|0;m=P+60|0;z=P+56|0;s=
P+52|0;x=P+48|0;w=P+44|0;u=P+40|0;y=P+168|0;D=P+36|0;E=P+32|0;C=P+28|0;O=P+24|0;H=P+20|0;J=P+16|0;I=P+12|0;K=P+8|0;L=P+4|0;M=P;c
[j>>2]=f;c[k>>2]=g;c[p>>2]=(c[j>>2]|0)+48+((c[k>>2]|0)*28|0);c[v>>2]=
c[c[j>>2]>>2];c[G>>2]=0;c[N>>2]=0;c[q>>2]=c[(c[j>>2]|0)+44>>
;2];c[r>>2]=(c[q>>2]|0)+(c[(c[j>>2]|0)+40>>2]<<2);f=A;h=f+52|0;do{c[f>>
;2]=0;f=f+4|0}while((f|0)<(h|0));c[A+32>>2]=32e3;a[A>>0]=0;g=c[(c[p>>2]|0)+24>>2]|0
;c[t>>2]=(c[(c[p>>2]|0)+24>>2]|0)<0?0-g|0:g;c[B>>2]=c[t>>2];c[c[p>
x3e;2]>>2]=0;g=c[(c[j>>2]|0)+32>>2]|0;a:do if(!(c[k>>2]|0)){c[n>>2]=g;c[l>
;>2]=(c[n>>2]|0)+((c[(c[j>>2]|0)+28>>2]|0)*40|0);while(1){if((c[n>>2]|0)>>
;>0>=(c[l>>2]|0)>>>0)break a;c[(c[n>>2]|0)+24>>2]=b[(c[n>>2]|0)+
12>>1];c[(c[n>>2]|0)+28>>2]=b[(c[n>>2]|0)+14>>1];c[n>>2]=(c[n>
x3e;2]|0)+40}}else{c[o>>2]=g;c[m>>2]=(c[o>>2]|0)+((c[(c[j>>2]|0)+28>>2]|0)*40|
0);while(1){if((c[o>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break a;c[(c[o>>
;2]|0)+24>>2]=b[(c[o>>2]|0)+14>>1];c[(c[o>>2]|0)+28>>2]=b[(c[o>>2]|0
)+12>>1];c[o>>2]=(c[o>>2]|0)+40}}while(0);b:while(1){if((c[q>>2]|0)>>>0
x3e;=(c[r>>2]|0)>>>0)break;c[z>>2]=c[c[q>>2]>>2];c[s>>2]=c[(c[z
>>2]|0)+36>>2];c[x>>2]=0;c[w>>2]=32e3;c[u>>2]=-32e3;c:do if((c[z>>2]|
0)!=(c[s>>2]|0)){o=a[(c[s>>2]|0)+3>>0]|0;d:do if((((a[(c[s>>2]|0)+3>>0]|0)<
;0?0-o|0:o)|0)==(c[t>>2]|0)?(o=a[(c[z>>2]|0)+3>>0]|0,(((a[(c[z>>2]|0)+3>>0]|0)
x3c;0?0-o|0:o)|0)==(c[t>>2]|0)):0){c[s>>2]=c[z>>2];while(1){c[z>>2]=c[(c[z>>2]|
0)+36>>2];o=a[(c[z>>2]|0)+3>>0]|0;g=c[z>>2]|0;if((((a[(c[z>>2]|0)+3>>
;0]|0)<0?0-o|0:o)|0)!=(c[t>>2]|0))break;if((g|0)==(c[s>>2]|0))break d}c[z>>2]=c[g+32>>
;2]}while(0);c[s>>2]=c[z>>2];a[y>>0]=0;while(1){do if(c[x>>2]|0){c[D>>2]=c[(c[
z>>2]|0)+24>>2];if((c[D>>2]|0)<(c[w>>2]|0))c[w>>2]=c[D>>2];if((
c[D>>2]|0)>(c[u>>2]|0))c[u>>2]=c[D>>2];if((a[(c[z>>2]|0)+3>>0]|
0)==(c[B>>2]|0)?(c[z>>2]|0)!=(c[s>>2]|0):0)break;c[(c[N>>2]|0)+44>>2]=c[z>
;>2];b[(c[N>>2]|0)+2>>1]=(c[w>>2]|0)+(c[u>>2]|0)>>1;if((e[c[(c[N>>
;2]|0)+40>>2]>>1]|e[c[z>>2]>>1])&3|0){o=c[N>>2]|0;a[o>>0]=d[o
x3e;>0]|1}o=c[(c[z>>2]|0)+28>>2]|0;c[u>>2]=o;c[w>>2]=o;c[E>>2]=c[(c[(c[N
x3e;>2]|0)+40>>2]|0)+28>>2];if((c[E>>2]|0)<(c[w>>2]|0))c[w>>2]=c[E
x3e;>2];if((c[E>>2]|0)>(c[u>>2]|0))c[u>>2]=c[E>>2];b[(c[N>>2]|0)+4
x3e;>1]=c[w>>2];b[(c[N>>2]|0)+6>>1]=c[u>>2];b[(c[N>>2]|0)+8>>1]=(
b[(c[N>>2]|0)+6>>1]|0)-(b[(c[N>>2]|0)+4>>1]|0);c[x>>2]=0;c[N>>2]=0}while
(0);if((c[z>>2]|0)==(c[s>>2]|0)){if(a[y>>0]|0)break c;a[y>>0]=1}if((c[x>>2]|0)==
0?(o=a[(c[z>>2]|0)+3>>0]|0,(((a[(c[z>>2]|0)+3>>0]|0)<0?0-o|0:o)|0)==(c[t>>
;2]|0)):0){c[B>>2]=a[(c[z>>2]|0)+3>>0];c[G>>2]=Ll(c[p>>2]|0,c[v>>2]|
0,N)|0;if(c[G>>2]|0){F=53;break b}f=c[N>>2]|0;g=A;h=f+52|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=
g+4|0}while((f|0)<(h|0));a[(c[N>>2]|0)+1>>0]=c[B>>2];o=c[(c[z>>2]|0)+24>>
2]|0;c[u>>2]=o;c[w>>2]=o;c[(c[N>>2]|0)+40>>2]=c[z>>2];c[(c[N>>2]|0)+
44>>2]=c[z>>2];c[(c[N>>2]|0)+48>>2]=c[q>>2];c[x>>2]=1}c[z>>
;2]=c[(c[z>>2]|0)+32>>2]}}while(0);c[q>>2]=(c[q>>2]|0)+4}if((F|0)==53){O=c[G>>
2]|0;i=P;return O|0}c[C>>2]=c[(c[p>>2]|0)+8>>2];c[O>>2]=(c[C>>2]|0)+((c[c[p>
;>2]>>2]|0)*52|0);c[N>>2]=c[C>>2];while(1){if((c[N>>2]|0)>>>0>=(
c[O>>2]|0)>>>0)break;c[H>>2]=c[(c[N>>2]|0)+40>>2];c[J>>2]=c[(c[
N>>2]|0)+44>>2];c[I>>2]=c[(c[H>>2]|0)+28>>2];c[K>>2]=c[(c[J>>
;2]|0)+28>>2];do if((c[H>>2]|0)!=(c[J>>2]|0)){g=c[(c[H>>2]|0)+36>>2]|0;if((c[I
>>2]|0)<(c[K>>2]|0)){c[L>>2]=g;if((c[(c[L>>2]|0)+28>>2]|0)<(c[I>
;>2]|0))b[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8>>1]|0)+((c[I>>2]|0)-(c[(c[L
x3e;>2]|0)+28>>2]|0)>>1);c[L>>2]=c[(c[J>>2]|0)+32>>2];if((c[(c[L>>
;2]|0)+28>>2]|0)<=(c[K>>2]|0))break;b[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8
x3e;>1]|0)+((c[(c[L>>2]|0)+28>>2]|0)-(c[K>>2]|0)>>1);break}else{c[M>>2]=g
;if((c[(c[M>>2]|0)+28>>2]|0)>(c[I>>2]|0))b[(c[N>>2]|0)+8>>1]=(b[(c[N>
;>2]|0)+8>>1]|0)+((c[(c[M>>2]|0)+28>>2]|0)-(c[I>>2]|0)>>1);c[M>>
;2]=c[(c[J>>2]|0)+32>>2];if((c[(c[M>>2]|0)+28>>2]|0)>=(c[K>>2]|0))break;b
[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8>>1]|0)+((c[K>>2]|0)-(c[(c[M>>2]|
0)+28>>2]|0)>>1);break}}while(0);c[N>>2]=(c[N>>2]|0)+52}O=c[G>>2]|0;i=P;return
O|0}function Ll(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;n=i;i=i+32|0;e=n+28|0;f=n+24|0;g=n+20|0;j=n+16
|0;m=n+12|0;l=n+8|0;k=n+4|0;h=n;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=0;c[m>>2
]=0;do if((c[c[e>>2]>>2]|0)>=(c[(c[e>>2]|0)+4>>2]|0)){c[l>>2]=c[(c[e>
;>2]|0)+4>>2];c[k>>2]=c[l>>2];c[h>>2]=41297762;if((c[l>>2]|0)>=(c[h
x3e;>2]|0)){c[j>>2]=64;l=c[m>>2]|0;m=c[g>>2]|0;c[m>>2]=l;m=c[j>>2]|0;i=n;
return m|0}c[k>>2]=(c[k>>2]|0)+((c[k>>2]>>2)+4);if(!((c[k>>2]|0)>=(c[l>
;>2]|0)?(c[k>>2]|0)<=(c[h>>2]|0):0))c[k>>2]=c[h>>2];l=hc(c[f>>2]|0,52
,c[l>>2]|0,c[k>>2]|0,c[(c[e>>2]|0)+8>>2]|0,j)|0;c[(c[e>>2]|0)+8>>2]=
l;if(c[j>>2]|0){l=c[m>>2]|0;m=c[g>>2]|0;c[m>>2]=l;m=c[j>>2]|0;i=n;return m|0}else
{c[(c[e>>2]|0)+4>>2]=c[k>>2];break}}while(0);k=c[(c[e>>2]|0)+8>>2]|0;b=c[e>
;>2]|0;l=c[b>>2]|0;c[b>>2]=l+1;c[m>>2]=k+(l*52|0);l=c[m>>2]|0;m=c[g>>2]|0
;c[m>>2]=l;m=c[j>>2]|0;i=n;return m|0}function Ml(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;u=i;i=i+64|0;v=u+60|0;w=u+56|0;f=u+52|0;t=u+48|0;s=u+44|0;k=u+40|0;j=u+36|0;q=u+32|0;r=u+28|0;n=u
+24|0;o=u+20|0;g=u+16|0;m=u+12|0;l=u+8|0;h=u+4|0;p=u;c[v>>2]=d;c[w>>2]=e;c[f>>2]=(c[v>>2
]|0)+48+((c[w>>2]|0)*28|0);c[t>>2]=c[(c[f>>2]|0)+8>>2];c[s>>2]=(c[t>>
;2]|0)+((c[c[f>>2]>>2]|0)*52|0);d=(c[(c[(c[v>>2]|0)+112>>2]|0)+36>>2]<<
;3|0)/2048|0;c[k>>2]=d;c[k>>2]=(c[k>>2]|0)==0?1:d;c[j>>2]=((c[(c[(c[v>>2]|0)+112
>>2]|0)+36>>2]|0)*6e3|0)/2048|0;c[q>>2]=c[t>>2];while(1){if((c[q>>2]|0)>
x3e;>0>=(c[s>>2]|0)>>>0)break;a:do if((a[(c[q>>2]|0)+1>>0]|0)==(c[(c[f>
;>2]|0)+24>>2]|0)?(c[(c[q>>2]|0)+40>>2]|0)!=(c[(c[q>>2]|0)+44>>2]|0):0){c
[r>>2]=c[t>>2];while(1){if((c[r>>2]|0)>>>0>=(c[s>>2]|0)>>
x3e;0)break a;if(((a[(c[q>>2]|0)+1>>0]|0)+(a[(c[r>>2]|0)+1>>0]|0)|0)==0?(b[(c[r>>
;2]|0)+2>>1]|0)>(b[(c[q>>2]|0)+2>>1]|0):0){c[n>>2]=b[(c[q>>2]|0)+2>
x3e;1];c[o>>2]=b[(c[r>>2]|0)+2>>1];c[g>>2]=(c[o>>2]|0)-(c[n>>2]|0);if
((c[g>>2]|0)<0)c[g>>2]=0-(c[g>>2]|0);c[m>>2]=b[(c[q>>2]|0)+4>>1
];c[l>>2]=b[(c[q>>2]|0)+6>>1];if((c[m>>2]|0)<(b[(c[r>>2]|0)+4>>
1]|0))c[m>>2]=b[(c[r>>2]|0)+4>>1];if((c[l>>2]|0)>(b[(c[r>>2]|0)+6>
x3e;1]|0))c[l>>2]=b[(c[r>>2]|0)+6>>1];c[h>>2]=(c[l>>2]|0)-(c[m>>2]|0
);if((c[h>>2]|0)>=(c[k>>2]|0)){c[p>>2]=(c[g>>2]|0)+((c[j>>2]|0)/(c[h>
;>2]|0)|0);if((c[p>>2]|0)<(c[(c[q>>2]|0)+32>>2]|0)){c[(c[q>>2]|0)+32>>
;2]=c[p>>2];c[(c[q>>2]|0)+20>>2]=c[r>>2]}if((c[p>>2]|0)<(c[(c[r>>
;2]|0)+32>>2]|0)){c[(c[r>>2]|0)+32>>2]=c[p>>2];c[(c[r>>2]|0)+20>>2]=
c[q>>2]}}}c[r>>2]=(c[r>>2]|0)+52}}while(0);c[q>>2]=(c[q>>2]|0)+52}c[q>>
;2]=c[t>>2];while(1){if((c[q>>2]|0)>>>0>=(c[s>>2]|0)>>>0)break;
c[r>>2]=c[(c[q>>2]|0)+20>>2];if(c[r>>2]|0?(c[(c[r>>2]|0)+20>>2]|0)!=(
c[q>>2]|0):0){c[(c[q>>2]|0)+20>>2]=0;c[(c[q>>2]|0)+24>>2]=c[(c[r>>2]|
0)+20>>2]}c[q>>2]=(c[q>>2]|0)+52}i=u;return}function Nl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;j=i;i=i+32|0;d=j+24|0;e=j+20|0;f=j+16|0;g=j+12|0;h=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=1;while(1){if((
c[f>>2]|0)>>>0>=(c[d>>2]|0)>>>0)break;c[g>>2]=c[f>>2];
while(1){if((c[g>>2]|0)>>>0<=0)break;if((c[(c[e>>2]|0)+((c[g>>2]|0)*12|0)>
;>2]|0)>(c[(c[e>>2]|0)+(((c[g>>2]|0)-1|0)*12|0)>>2]|0))break;b=(c[e>>2]|0)+((c
[g>>2]|0)*12|0)|0;c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+
8>>2];b=(c[e>>2]|0)+((c[g>>2]|0)*12|0)|0;a=(c[e>>2]|0)+(((c[g>>2]|0)-1|0)*12|0
)|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];b=(c[e
x3e;>2]|0)+(((c[g>>2]|0)-1|0)*12|0)|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];
c[b+8>>2]=c[h+8>>2];c[g>>2]=(c[g>>2]|0)+-1}c[f>>2]=(c[f>>2]|0)+1}i=j
;return}function Ol(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;f=g+8|0;e=g+4|0;d=g;c[b>>2]=a;if(!(c[b>
;>2]|0)){i=g;return}if(!(c[c[b>>2]>>2]|0)){i=g;return}c[f>>2]=c[c[b>>2]>>
2];c[e>>2]=0;while(1){if((c[e>>2]|0)>=2)break;c[d>>2]=(c[b>>2]|0)+48+((c[e>>
;2]|0)*28|0);c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;Fb(c[f>>2]|0,c[(c[d>
x3e;2]|0)+8>>2]|0);c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+12>>2]=0;c[(c[d>
x3e;2]|0)+16>>2]=0;Fb(c[f>>2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>
x3e;2]=0;c[e>>2]=(c[e>>2]|0)+1}Fb(c[f>>2]|0,c[(c[b>>2]|0)+44>>2]|0);c[(c[b>
;>2]|0)+44>>2]=0;c[(c[b>>2]|0)+36>>2]=0;c[(c[b>>2]|0)+40>>2]=0;Fb(c[f>
;>2]|0,c[(c[b>>2]|0)+32>>2]|0);c[(c[b>>2]|0)+32>>2]=0;c[(c[b>>2]|0)+28>
;>2]=0;c[(c[b>>2]|0)+24>>2]=0;c[c[b>>2]>>2]=0;i=g;return}function Pl(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;N=i;i=i+224|0;O=N+212|0;g=N+208|0;u=N+160|0;L=N+112|0;B=N+104|0;C=N+100|0;j=N+96|0;o=N+92|0;s=N+88|0;h=N+84|0;v=N
+80|0;F=N+76|0;y=N+72|0;p=N+68|0;q=N+64|0;w=N+60|0;n=N+56|0;m=N+52|0;k=N+48|0;l=N+44|0;G=N+40|0;K=N+217|0;A=N+36|0;t=N+32|0;x=N+
28|0;D=N+24|0;H=N+20|0;I=N+16|0;z=N+12|0;r=N+8|0;J=N+4|0;M=N;E=N+216|0;c[O>>2]=e;c[g>>2]=f;c[h>>2]=(
c[O>>2]|0)+40+396;c[v>>2]=c[(c[g>>2]|0)+84>>2];c[j>>2]=0;while(1){if((c[j>
;>2]|0)>=6)break;c[F>>2]=11435+((c[j>>2]|0)*13|0);c[y>>2]=(c[F>>2]|0)+12;c[B
x3e;>2]=0;c[C>>2]=0;while(1){if((c[F>>2]|0)>>>0>=(c[y>>2]|0)>>
x3e;0)break;if(!(a[c[F>>2]>>0]|0))break;a[K>>0]=0;c[w>>2]=Dc(c[g>>2]|0,a[c[F
x3e;>2]>>0]|0)|0;do if((c[w>>2]|0?(c[s>>2]=Cb(c[g>>2]|0,c[w>>2]|0,1)|0,(c
[s>>2]|0)==0):0)?(b[(c[v>>2]|0)+108+2>>1]|0)>0:0){c[G>>2]=c[(c[v>>2]|0)+108
+4>>2];c[m>>2]=-1;c[n>>2]=0;c[k>>2]=0;c[l>>2]=0;c[t>>2]=0;c[x>
x3e;2]=-1;c[A>>2]=0;while(1){f=c[m>>2]|0;if((c[A>>2]|0)>=(b[(c[v>>2]|0)+108>
x3e;1]|0))break;c[D>>2]=f;c[x>>2]=b[(c[(c[v>>2]|0)+108+12>>2]|0)+(c[A>>2]<
;<1)>>1];if((c[x>>2]|0)>(c[t>>2]|0)){O=(c[j>>2]|0)==0|(c[j>>2]|0)==2
|(c[j>>2]|0)==3;c[H>>2]=c[t>>2];a:do if(O)while(1){if((c[H>>2]|0)>(c[x>>2
]|0))break a;if(!((c[m>>2]|0)>=0?(c[(c[G>>2]|0)+(c[H>>2]<<3)+4>>2]|0)<
;=(c[n>>2]|0):0)){c[m>>2]=c[H>>2];c[n>>2]=c[(c[G>>2]|0)+(c[H>>2]<
;<3)+4>>2]}c[H>>2]=(c[H>>2]|0)+1}else while(1){if((c[H>>2]|0)>(c[x>>
2]|0))break a;if(!((c[m>>2]|0)>=0?(c[(c[G>>2]|0)+(c[H>>2]<<3)+4>>2]|0)>
;=(c[n>>2]|0):0)){c[m>>2]=c[H>>2];c[n>>2]=c[(c[G>>2]|0)+(c[H>>2]<
;<3)+4>>2]}c[H>>2]=(c[H>>2]|0)+1}while(0);if((c[m>>2]|0)!=(c[D>>2]|0)){c[
k>>2]=c[t>>2];c[l>>2]=c[x>>2]}}c[t>>2]=(c[x>>2]|0)+1;c[A>>
2]=(c[A>>2]|0)+1}if((f|0)>=0){c[I>>2]=c[m>>2];c[z>>2]=c[I>>2];do{if((c[I
x3e;>2]|0)>(c[k>>2]|0))c[I>>2]=(c[I>>2]|0)+-1;else c[I>>2]=c[l>>2];c
[r>>2]=(c[(c[G>>2]|0)+(c[I>>2]<<3)+4>>2]|0)-(c[n>>2]|0);if((c[r>
;>2]|0)<-5|(c[r>>2]|0)>5)break}while((c[I>>2]|0)!=(c[m>>2]|0));do{if((c[z>>
;2]|0)<(c[l>>2]|0))c[z>>2]=(c[z>>2]|0)+1;else c[z>>2]=c[k>>2];c[r>
x3e;2]=(c[(c[G>>2]|0)+(c[z>>2]<<3)+4>>2]|0)-(c[n>>2]|0);if((c[r>>2]|
0)<-5|(c[r>>2]|0)>5)break}while((c[z>>2]|0)!=(c[m>>2]|0));if((a[(c[(c[v>>2]|0)+
108+8>>2]|0)+(c[I>>2]|0)>>0]&3|0)!=1)f=1;else f=(a[(c[(c[v>>2]|0)+108+8>>
2]|0)+(c[z>>2]|0)>>0]&3|0)!=1;a[K>>0]=f&1}f=c[n>>2]|0;if(a[K>>0]|0){
O=c[C>>2]|0;c[C>>2]=O+1;c[L+(O<<2)>>2]=f;break}else{O=c[B>>2]|0;c[B>>
;2]=O+1;c[u+(O<<2)>>2]=f;break}}while(0);c[F>>2]=(c[F>>2]|0)+1}if(!((c[B>>2]|0
)==0&(c[C>>2]|0)==0)){Ql(c[C>>2]|0,L);Ql(c[B>>2]|0,u);c[o>>2]=(c[h>>2]|0)+
220+((c[(c[h>>2]|0)+216>>2]|0)*28|0);c[p>>2]=c[o>>2];c[q>>2]=(c[o>>2
]|0)+12;f=(c[h>>2]|0)+216|0;c[f>>2]=(c[f>>2]|0)+1;f=c[C>>2]|0;do if(c[B>>2]|0){
e=c[u+(((c[B>>2]|0)/2|0)<<2)>>2]|0;if(!f){c[c[q>>2]>>2]=e;c[c[p>>2]
x3e;>2]=e;break}else{c[c[p>>2]>>2]=e;c[c[q>>2]>>2]=c[L+(((c[C>>2]|0)/2|0)
x3c;<2)>>2];break}}else{O=c[L+(((f|0)/2|0)<<2)>>2]|0;c[c[q>>2]>>2]=O;c[c[
p>>2]>>2]=O}while(0);if((c[c[q>>2]>>2]|0)!=(c[c[p>>2]>>2]|0)){c[J>
;>2]=c[c[p>>2]>>2];c[M>>2]=c[c[q>>2]>>2];a[E>>0]=(c[M>>
;2]|0)>(c[J>>2]|0);if((c[j>>2]|0)==0|(c[j>>2]|0)==2)f=1;else f=(c[j>>2]|0)==3;if(f
x26;1^d[E>>0]|0){O=((c[M>>2]|0)+(c[J>>2]|0)|0)/2|0;c[c[p>>2]>>2]=O;c[c[q>
x3e;2]>>2]=O}}c[(c[o>>2]|0)+24>>2]=0;if((c[j>>2]|0)==0|(c[j>>2]|0)==2|(c[j>
;>2]|0)==3){O=(c[o>>2]|0)+24|0;c[O>>2]=c[O>>2]|2}if((c[j>>2]|0)==3){O=(c[o>>
;2]|0)+24|0;c[O>>2]=c[O>>2]|4}}c[j>>2]=(c[j>>2]|0)+1}i=N;return}function Ql(a,b){a=a|0;b
=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[d>>2]=a;c[e>>2]=b;c[f
x3e;>2]=1;while(1){if((c[f>>2]|0)>>>0>=(c[d>>2]|0)>>>0)break;c[g>
;>2]=c[f>>2];while(1){if((c[g>>2]|0)>>>0<=0)break;if((c[(c[e>>2]|0)+(c[g
x3e;>2]<<2)>>2]|0)>(c[(c[e>>2]|0)+((c[g>>2]|0)-1<<2)>>2]|0
))break;c[h>>2]=c[(c[e>>2]|0)+(c[g>>2]<<2)>>2];c[(c[e>>2]|0)+(c[g>
;>2]<<2)>>2]=c[(c[e>>2]|0)+((c[g>>2]|0)-1<<2)>>2];c[(c[e>
x3e;2]|0)+((c[g>>2]|0)-1<<2)>>2]=c[h>>2];c[g>>2]=(c[g>>2]|0)+-1}c[f
x3e;>2]=(c[f>>2]|0)+1}i=j;return}function Rl(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;o=i;i=i
+32|0;e=o+20|0;f=o+16|0;j=o+12|0;m=o+25|0;l=o+24|0;g=o+8|0;k=o+4|0;h=o;c[e>>2]=b;c[f>>2]=d;a[m>>0]=
0;a[l>>0]=1;c[k>>2]=0;c[j>>2]=48;a:while(1){if((c[j>>2]|0)>>>0>57){n
=10;break}c[h>>2]=Dc(c[f>>2]|0,c[j>>2]|0)|0;do if(c[h>>2]|0?(vb(c[f>>2]|0,c[h
x3e;>2]|0,2051,g)|0)==0:0){d=c[g>>2]|0;if(a[m>>0]|0)if((d|0)!=(c[k>>2]|0))break a;else break;
else{c[k>>2]=d;a[m>>0]=1;break}}while(0);c[j>>2]=(c[j>>2]|0)+1}if((n|0)==10){m=a[l>
x3e;0]|0;n=c[e>>2]|0;n=n+32|0;a[n>>0]=m;i=o;return}a[l>>0]=0;m=a[l>>0]|0;n=c[e>>
;2]|0;n=n+32|0;a[n>>0]=m;i=o;return}function Sl(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)+4+20>>2]=c[(c[e>>2]|0)+20>>2];c[(c[f>>
2]|0)+4>>2]=c[c[e>>2]>>2];Tl(c[f>>2]|0,c[e>>2]|0,0);Tl(c[f>>2]|0,c[e
>>2]|0,1);i=d;return}function Tl(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;x=i;i=i+64|0;m=x+60|0;f=x+56|0;n=x+52|0;w=x+48|0;r=x+44|0;p=x+40|0;v=x+36|0;g=x+32|0;h=x+28|0;k=x+24|0;j=x+20|0;
o=x+16|0;q=x+12|0;u=x+8|0;s=x+4|0;t=x;c[m>>2]=b;c[f>>2]=d;c[n>>2]=e;e=c[f>>2]|0;if(!(c[n
>>2]|0)){c[w>>2]=c[e+4>>2];c[r>>2]=c[(c[f>>2]|0)+12>>2]}else{c[w>
;>2]=c[e+8>>2];c[r>>2]=c[(c[f>>2]|0)+16>>2]}c[p>>2]=(c[m>>2]|0)+
40+((c[n>>2]|0)*396|0);if((c[(c[p>>2]|0)+388>>2]|0)==(c[w>>2]|0)?(c[(c[p>>2]|0
)+392>>2]|0)==(c[r>>2]|0):0){i=x;return}c[(c[p>>2]|0)+388>>2]=c[w>>2];c[(c[p
x3e;>2]|0)+392>>2]=c[r>>2];c[g>>2]=(c[m>>2]|0)+40+396;c[h>>2]=0;c[v>
x3e;2]=0;while(1){if((c[v>>2]|0)>>>0>=(c[(c[g>>2]|0)+216>>2]|0)>>>
;0)break;e=c[v>>2]|0;if(c[(c[g>>2]|0)+220+((c[v>>2]|0)*28|0)+24>>2]&4|0){l=9;break}
c[v>>2]=e+1}if((l|0)==9)c[h>>2]=(c[g>>2]|0)+220+(e*28|0);if(c[h>>2]|0?(c[k>>2]=
Mb(c[(c[h>>2]|0)+12>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0,c[j>>2]=(c[k>>2]|
0)+40&-64,(c[n>>2]|0)==1?(c[k>>2]|0)!=(c[j>>2]|0):0):0)c[w>>2]=xb(c[w>>2]|
0,c[j>>2]|0,c[k>>2]|0)|0;c[c[p>>2]>>2]=c[w>>2];c[(c[p>>2]|0)+4>
x3e;2]=c[r>>2];e=c[w>>2]|0;b=(c[m>>2]|0)+4|0;if(!(c[n>>2]|0)){c[b+4>>2]=e;c[(c
[m>>2]|0)+4+12>>2]=c[r>>2]}else{c[b+8>>2]=e;c[(c[m>>2]|0)+4+16>>2]=c
[r>>2]}c[v>>2]=0;while(1){e=c[p>>2]|0;if((c[v>>2]|0)>>>0>=(c[(c[p>
;>2]|0)+8>>2]|0)>>>0)break;c[o>>2]=e+12+((c[v>>2]|0)*12|0);m=Mb(c[c[o>>
;2]>>2]|0,c[w>>2]|0)|0;c[(c[o>>2]|0)+4>>2]=m;c[(c[o>>2]|0)+8>>2]=c[(
c[o>>2]|0)+4>>2];c[v>>2]=(c[v>>2]|0)+1}o=(Mb(c[e+208>>2]|0,c[w>>2]|0
)|0)<40&255;a[(c[p>>2]|0)+212>>0]=o;if((c[n>>2]|0)!=1){i=x;return}c[v>>2]=0;while
(1){if((c[v>>2]|0)>>>0>=(c[(c[p>>2]|0)+216>>2]|0)>>>0)break;c[q
>>2]=(c[p>>2]|0)+220+((c[v>>2]|0)*28|0);o=Mb(c[c[q>>2]>>2]|0,c[w>>2]|
0)|0;c[(c[q>>2]|0)+4>>2]=o+(c[r>>2]|0);c[(c[q>>2]|0)+8>>2]=c[(c[q>>2
]|0)+4>>2];o=Mb(c[(c[q>>2]|0)+12>>2]|0,c[w>>2]|0)|0;c[(c[q>>2]|0)+12+4>
x3e;2]=o+(c[r>>2]|0);c[(c[q>>2]|0)+12+8>>2]=c[(c[q>>2]|0)+12+4>>2];o=(c[q>
;>2]|0)+24|0;c[o>>2]=c[o>>2]&-2;c[u>>2]=Mb((c[c[q>>2]>>2]|0)-(c[(c[q
>>2]|0)+12>>2]|0)|0,c[w>>2]|0)|0;if((c[u>>2]|0)<=48&(c[u>>2]|0)>
;=-48){c[s>>2]=(c[(c[q>>2]|0)+12>>2]|0)-(c[c[q>>2]>>2]|0);c[t>>2]=c[
s>>2];if((c[s>>2]|0)<0)c[t>>2]=0-(c[t>>2]|0);c[t>>2]=Mb(c[t>>2]|
0,c[w>>2]|0)|0;do if((c[t>>2]|0)>=32){e=c[t>>2]|0;if((c[t>>2]|0)<64){c[t>
x3e;2]=32+(e-32+16&-32);break}else{c[t>>2]=e+32&-64;break}}else c[t>>2]=0;while(0);if((c[s>
x3e;2]|0)<0)c[t>>2]=0-(c[t>>2]|0);c[(c[q>>2]|0)+8>>2]=(c[(c[q>>2]|0)+4>
;>2]|0)+32&-64;c[(c[q>>2]|0)+12+8>>2]=(c[(c[q>>2]|0)+8>>2]|0)+(c[t>>
2]|0);o=(c[q>>2]|0)+24|0;c[o>>2]=c[o>>2]|1}c[v>>2]=(c[v>>2]|0)+1}i=x;return}function
Ul(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;d=j+20|0;k=j+16|0;f=j+12|0;h=j+8|0;g=j+4|0;e=j;c[d>>
2]=a;c[k>>2]=b;c[e>>2]=c[(c[k>>2]|0)+4>>2];Dl(c[d>>2]|0,c[k>>2]|0);c
[(c[d>>2]|0)+4>>2]=c[(c[k>>2]|0)+40>>2];c[(c[d>>2]|0)+8>>2]=c[(c[k
x3e;>2]|0)+40+4>>2];c[(c[d>>2]|0)+12>>2]=c[(c[k>>2]|0)+40+396>>2];c[(c[d
x3e;>2]|0)+16>>2]=c[(c[k>>2]|0)+40+396+4>>2];c[f>>2]=c[(c[k>>2]|0)+4+20
x3e;>2];c[h>>2]=c[(c[d>>2]|0)+104>>2];c[g>>2]=0;if((c[f>>2]|0)==2|(c[f>
;>2]|0)==3)c[g>>2]=c[g>>2]|1;if((c[f>>2]|0)==2|(c[f>>2]|0)==4)c[g>>2]=c[g
>>2]|2;if((c[f>>2]|0)!=1)c[g>>2]=c[g>>2]|4;if((c[f>>2]|0)==2)c[g>>2]=
c[g>>2]|8;if((c[f>>2]|0)!=1?(c[(c[e>>2]|0)+12>>2]&1|0)==0:0){k=c[h>>2]|0;
h=c[d>>2]|0;h=h+104|0;c[h>>2]=k;h=c[g>>2]|0;k=c[d>>2]|0;k=k+108|0;c[k>>2]=h;i=
j;return 0}c[h>>2]=c[h>>2]|1;k=c[h>>2]|0;h=c[d>>2]|0;h=h+104|0;c[h>>2]=k;h=c[g
>>2]|0;k=c[d>>2]|0;k=k+108|0;c[k>>2]=h;i=j;return 0}function Vl(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;f=k+16|0;g=k+12|0;e=k+8|0;j=k+4|0;h=k;c[f>>2]=a;c[g>>2]=b;c[e>>2]=
d;c[j>>2]=Il(c[f>>2]|0,c[g>>2]|0)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}if
((c[(c[f>>2]|0)+104>>2]&1|0)==0?(c[j>>2]=Wl(c[f>>2]|0,0)|0,c[j>>2]|0):0){
j=c[j>>2]|0;i=k;return j|0}do if(!(c[(c[f>>2]|0)+104>>2]&2)){c[j>>2]=Wl(c[f>
x3e;2]|0,1)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}else{Zl(c[f>>2]|0,c[e>>2]|0);break
}}while(0);c[h>>2]=0;while(1){if((c[h>>2]|0)>=2)break;if((c[h>>2]|0)==0?!(c[(c[f>>2
]|0)+104>>2]&1|0):0)e=13;else e=11;if(((e|0)==11?(e=0,(c[h>>2]|0)==1):0)?(c[(c[f>>2]|0)+104
x3e;>2]&2|0)==0:0)e=13;if((e|0)==13){_l(c[f>>2]|0,c[h>>2]|0);dm(c[f>>2]|0,c[h>>
;2]|0);em(c[f>>2]|0,c[h>>2]|0);fm(c[f>>2]|0,c[h>>2]|0)}c[h>>2]=(c[h>>
;2]|0)+1}im(c[f>>2]|0,c[g>>2]|0);j=c[j>>2]|0;i=k;return j|0}function Wl(a,b){a=a|0;b=b|0;var d=0,e
=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Kl(c[d>>2]|0,c[e
>>2]|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}Ml(c[d>>2]|0,c[e>>2]|0);c[f
>>2]=Xl(c[d>>2]|0,c[e>>2]|0)|0;a=c[f>>2]|0;i=g;return a|0}function Xl(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
;M=i;i=i+128|0;g=M+112|0;h=M+108|0;l=M+104|0;D=M+100|0;t=M+96|0;j=M+92|0;k=M+88|0;w=M+84|0;H=M+80|0;K=M+76|0;u=M+72|0;p=M+68|0;v
=M+64|0;s=M+60|0;r=M+56|0;n=M+52|0;m=M+48|0;o=M+44|0;q=M+40|0;C=M+36|0;z=M+32|0;E=M+28|0;G=M+24|0;L=M+20|0;y=M+16|0;F=M+116|0;A=
M+12|0;I=M+8|0;B=M+4|0;J=M;c[g>>2]=e;c[h>>2]=f;c[l>>2]=(c[g>>2]|0)+48+((c[h>>2
]|0)*28|0);c[D>>2]=0;c[t>>2]=c[c[g>>2]>>2];c[j>>2]=(c[(c[g>>2]|0)+112
>>2]|0)+40+((c[h>>2]|0)*396|0);c[k>>2]=c[(c[l>>2]|0)+8>>2];c[w>>2]=(
c[k>>2]|0)+((c[c[l>>2]>>2]|0)*52|0);c[(c[l>>2]|0)+12>>2]=0;f=c[g>>2]|
0;if(!(c[h>>2]|0))f=c[f+4>>2]|0;else f=c[f+12>>2]|0;c[u>>2]=f;c[K>>2]=(c[h>
;>2]|0)==0?2:1;if(!(c[h>>2]|0))c[v>>2]=Vb(64,c[(c[g>>2]|0)+12>>2]|0)|0;else c[v>
;>2]=0;j=Mb(c[(c[j>>2]|0)+204>>2]|0,c[u>>2]|0)|0;c[p>>2]=j;c[p>>2]=(c[p
x3e;>2]|0)>16?16:j;c[p>>2]=Vb(c[p>>2]|0,c[u>>2]|0)|0;c[H>>2]=c[k>>2];
a:while(1){if((c[H>>2]|0)>>>0>=(c[w>>2]|0)>>>0)break;c[s>>2]=0;
do if((b[(c[H>>2]|0)+8>>1]|0)>=(c[v>>2]|0)){if(c[(c[H>>2]|0)+24>>2]|0?(b[(
c[H>>2]|0)+8>>1]<<1|0)<((c[v>>2]|0)*3|0):0)break;c[r>>2]=0;while(1){if((c
[r>>2]|0)>=(c[(c[l>>2]|0)+12>>2]|0))break;c[n>>2]=(c[(c[l>>2]|0)+20>
x3e;2]|0)+((c[r>>2]|0)*48|0);c[m>>2]=(b[(c[H>>2]|0)+2>>1]|0)-(b[c[n>>2]>
x3e;1]|0);if((c[m>>2]|0)<0)c[m>>2]=0-(c[m>>2]|0);if((c[m>>2]|0)<(c[p>>
;2]|0)?(a[(c[n>>2]|0)+13>>0]|0)==(a[(c[H>>2]|0)+1>>0]|0):0){x=18;break}c[r>>2]=(
c[r>>2]|0)+1}if((x|0)==18){x=0;c[s>>2]=c[n>>2]}if(c[s>>2]|0){c[(c[H>>2]|0)+16
x3e;>2]=c[(c[s>>2]|0)+40>>2];c[(c[(c[s>>2]|0)+44>>2]|0)+16>>2]=c[H>
x3e;2];c[(c[s>>2]|0)+44>>2]=c[H>>2];break}c[D>>2]=Yl(c[l>>2]|0,b[(c[H>>
;2]|0)+2>>1]|0,a[(c[H>>2]|0)+1>>0]|0,c[t>>2]|0,o)|0;if(c[D>>2]|0){x=66;break a
}f=c[o>>2]|0;e=f+48|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(e|0));c[(c[o>>2]|0)+40>>2]=
c[H>>2];c[(c[o>>2]|0)+44>>2]=c[H>>2];b[c[o>>2]>>1]=b[(c[H>>
;2]|0)+2>>1]|0;a[(c[o>>2]|0)+13>>0]=a[(c[H>>2]|0)+1>>0]|0;k=Mb(b[(c[H>>
;2]|0)+2>>1]|0,c[u>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=k;c[(c[o>>2]|0)+4>>2
]=k;c[(c[H>>2]|0)+16>>2]=c[H>>2]}while(0);c[H>>2]=(c[H>>2]|0)+52}if((x|0)==66){
L=c[D>>2]|0;i=M;return L|0}c[q>>2]=c[(c[l>>2]|0)+20>>2];c[C>>2]=(c[q>>
;2]|0)+((c[(c[l>>2]|0)+12>>2]|0)*48|0);c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)
x3e;>>0>=(c[C>>2]|0)>>>0)break;c[H>>2]=c[(c[z>>2]|0)+40>>2
];if(c[H>>2]|0)do{c[(c[H>>2]|0)+12>>2]=c[z>>2];c[H>>2]=c[(c[H>>2]|0)+
16>>2]}while((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));c[z>>2]=(c[z>>2]|
0)+48}c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)>>>0>=(c[C>>2]|0)>
x3e;>0)break;c[E>>2]=0;c[G>>2]=0;c[L>>2]=0;c[y>>2]=0;c[H>>2]=c[(c[z>
x3e;2]|0)+40>>2];do{if(d[c[H>>2]>>0]&1|0)c[E>>2]=(c[E>>2]|0)+1;else c[G
x3e;>2]=(c[G>>2]|0)+1;f=(b[(c[H>>2]|0)+6>>1]|0)-(b[(c[H>>2]|0)+4>>1]|0)|0
;if((a[(c[H>>2]|0)+1>>0]|0)==(c[K>>2]|0))c[L>>2]=(c[L>>2]|0)+f;else c[y>
x3e;2]=(c[y>>2]|0)+f;if(c[(c[H>>2]|0)+24>>2]|0?c[(c[(c[H>>2]|0)+24>>2]|0)+12
x3e;>2]|0:0)f=(c[(c[(c[H>>2]|0)+24>>2]|0)+12>>2]|0)!=(c[z>>2]|0);else f=0;a[F>
x3e;0]=f&1;if(c[(c[H>>2]|0)+20>>2]|0?c[(c[(c[H>>2]|0)+20>>2]|0)+12>>2]|0:
0)x=45;else x=44;if((x|0)==44?(x=0,d[F>>0]|0):0)x=45;do if((x|0)==45){c[A>>2]=c[(c[z>>2]|0)+24>
;>2];c[I>>2]=c[(c[H>>2]|0)+20>>2];if(a[F>>0]|0){c[I>>2]=c[(c[H>>
;2]|0)+24>>2];c[A>>2]=c[(c[z>>2]|0)+28>>2]}if(c[A>>2]|0){c[B>>2]=(b[
c[z>>2]>>1]|0)-(b[c[A>>2]>>1]|0);if((c[B>>2]|0)<0)c[B>>2]=0-(c[
B>>2]|0);c[J>>2]=(b[(c[H>>2]|0)+2>>1]|0)-(b[(c[I>>2]|0)+2>>1]|0);if((
c[J>>2]|0)<0)c[J>>2]=0-(c[J>>2]|0);if((c[J>>2]|0)<(c[B>>2]|0))c[A>
;>2]=c[(c[I>>2]|0)+12>>2]}else c[A>>2]=c[(c[I>>2]|0)+12>>2];f=c[A>
x3e;2]|0;e=c[z>>2]|0;if(a[F>>0]|0){c[e+28>>2]=f;x=(c[A>>2]|0)+12|0;a[x>>0]=d[x
>>0]|2;break}else{c[e+24>>2]=f;break}}while(0);c[H>>2]=c[(c[H>>2]|0)+16>>2]}while
((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));a[(c[z>>2]|0)+12>>0]=0;if((c[E>
x3e;2]|0)>0?(c[E>>2]|0)>=(c[G>>2]|0):0){x=(c[z>>2]|0)+12|0;a[x>>0]=d[x>
x3e;0]|1}if(c[(c[z>>2]|0)+28>>2]|0?c[(c[z>>2]|0)+24>>2]|0:0)c[(c[z>>2]|0)+28
x3e;>2]=0;c[z>>2]=(c[z>>2]|0)+48}L=c[D>>2]|0;i=M;return L|0}function Yl(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,t=0,u=0;u=i;i=i+48|0;n=u+40|0;o=u+36|0;p=u+32|0;j=u+28|0;q=u+24|
0;t=u+20|0;r=u+16|0;s=u+12|0;m=u+8|0;l=u+4|0;k=u;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[j>>2]=g
;c[q>>2]=h;c[t>>2]=0;c[r>>2]=0;do if((c[(c[n>>2]|0)+12>>2]|0)>=(c[(c[n>
;>2]|0)+16>>2]|0)){c[m>>2]=c[(c[n>>2]|0)+16>>2];c[l>>2]=c[m>>2];
c[k>>2]=44739242;if((c[m>>2]|0)>=(c[k>>2]|0)){c[t>>2]=64;r=c[r>>2]|0;s=c[
q>>2]|0;c[s>>2]=r;t=c[t>>2]|0;i=u;return t|0}c[l>>2]=(c[l>>2]|0)+((c[l>
x3e;2]>>2)+4);if(!((c[l>>2]|0)>=(c[m>>2]|0)?(c[l>>2]|0)<=(c[k>>2]|0):
0))c[l>>2]=c[k>>2];m=hc(c[j>>2]|0,48,c[m>>2]|0,c[l>>2]|0,c[(c[n>>2]|
0)+20>>2]|0,t)|0;c[(c[n>>2]|0)+20>>2]=m;if(c[t>>2]|0){r=c[r>>2]|0;s=c[q>
x3e;2]|0;c[s>>2]=r;t=c[t>>2]|0;i=u;return t|0}else{c[(c[n>>2]|0)+16>>2]=c[l>>2
];break}}while(0);c[s>>2]=c[(c[n>>2]|0)+20>>2];c[r>>2]=(c[s>>2]|0)+((c[(c[n>
;>2]|0)+12>>2]|0)*48|0);while(1){if((c[r>>2]|0)>>>0<=(c[s>>2]|0)>>
;>0)break;if((b[(c[r>>2]|0)+-48>>1]|0)<(c[o>>2]|0))break;if((b[(c[r>>2]|0)+-48
>>1]|0)==(c[o>>2]|0)?(c[p>>2]|0)==(c[(c[n>>2]|0)+24>>2]|0):0)break;j=c[r>
x3e;2]|0;h=(c[r>>2]|0)+-48|0;d=j+48|0;do{c[j>>2]=c[h>>2];j=j+4|0;h=h+4|0}while((j|0)<(d|0));c
[r>>2]=(c[r>>2]|0)+-48}j=(c[n>>2]|0)+12|0;c[j>>2]=(c[j>>2]|0)+1;j=c[r>>
;2]|0;d=j+48|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(d|0));b[c[r>>2]>>1]=c[o>>2];a[(c[r
>>2]|0)+13>>0]=c[p>>2];r=c[r>>2]|0;s=c[q>>2]|0;c[s>>2]=r;t=c[t>
x3e;2]|0;i=u;return t|0}function Zl(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;v=i;i=i
+64|0;w=v+44|0;g=v+40|0;h=v+36|0;o=v+32|0;p=v+28|0;t=v+24|0;u=v+20|0;j=v+16|0;k=v+12|0;l=v+8|0;m=v+4|0;r=v+50|0;q=v+49|0;n=v;s=v
+48|0;c[w>>2]=e;c[g>>2]=f;c[h>>2]=(c[w>>2]|0)+48+28;c[o>>2]=c[(c[h>>
2]|0)+20>>2];c[p>>2]=(c[o>>2]|0)+((c[(c[h>>2]|0)+12>>2]|0)*48|0);c[t>>
;2]=(c[g>>2]|0)+40+396;c[u>>2]=c[c[t>>2]>>2];while(1){if((c[o>>2]|0)>>
;>0>=(c[p>>2]|0)>>>0)break;c[k>>2]=0;w=Mb(((c[(c[g>>2]|0)+36>>2
]|0)>>>0)/40|0,c[u>>2]|0)|0;c[l>>2]=w;c[l>>2]=(c[l>>2]|0)>32?32:w;c[
j>>2]=0;while(1){if((c[j>>2]|0)>=6)break;c[m>>2]=(c[t>>2]|0)+220+((c[j>>2
]|0)*28|0);if(c[(c[m>>2]|0)+24>>2]&1|0?(a[r>>0]=(c[(c[m>>2]|0)+24>>2]&
;2|0)!=0,a[q>>0]=(a[(c[o>>2]|0)+13>>0]|0)==(c[(c[h>>2]|0)+24>>2]|0),d[r>
x3e;0]^d[q>>0]|0):0){c[n>>2]=(b[c[o>>2]>>1]|0)-(c[c[m>>2]>>2]|0);if((
c[n>>2]|0)<0)c[n>>2]=0-(c[n>>2]|0);c[n>>2]=Mb(c[n>>2]|0,c[u>>2]|
0)|0;if((c[n>>2]|0)<(c[l>>2]|0)){c[l>>2]=c[n>>2];c[k>>2]=c[m>>2
]}if((c[n>>2]|0?(d[(c[o>>2]|0)+12>>0]&1|0)!=0:0)?(a[s>>0]=(b[c[o>>2]>
;>1]|0)<(c[c[m>>2]>>2]|0),d[r>>0]^d[s>>0]|0):0){c[m>>2]=(c[t>
x3e;2]|0)+220+((c[j>>2]|0)*28|0);c[n>>2]=(b[c[o>>2]>>1]|0)-(c[(c[m>>2]|0)+12
x3e;>2]|0);if((c[n>>2]|0)<0)c[n>>2]=0-(c[n>>2]|0);c[n>>2]=Mb(c[n>>2]|
0,c[u>>2]|0)|0;if((c[n>>2]|0)<(c[l>>2]|0)){c[l>>2]=c[n>>2];c[k>>
;2]=(c[m>>2]|0)+12}}}c[j>>2]=(c[j>>2]|0)+1}if(c[k>>2]|0)c[(c[o>>2]|0)+20>
x3e;2]=c[k>>2];c[o>>2]=(c[o>>2]|0)+48}i=v;return}function _l(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,D=0,E=0,F=0,G=0,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;U=i;i=i+176|0;M=U+160|0;j=U+156|0;V=U+152|0;T=U+148|0;S=U+144|0;K=U+140|0;R=U+136|0;O=U+132|0;J=U+128|0;
f=U+124|0;g=U+120|0;h=U+116|0;t=U+112|0;y=U+108|0;w=U+104|0;k=U+100|0;m=U+96|0;u=U+92|0;v=U+88|0;B=U+84|0;p=U+80|0;A=U+76|0;z=U+
72|0;x=U+68|0;l=U+64|0;n=U+60|0;o=U+56|0;r=U+52|0;s=U+48|0;C=U+44|0;q=U+40|0;G=U+36|0;H=U+32|0;I=U+28|0;E=U+24|0;F=U+20|0;L=U+16
|0;D=U+12|0;Q=U+8|0;P=U+4|0;N=U;c[M>>2]=b;c[j>>2]=e;c[V>>2]=(c[M>>2]|0)+48+((c[j>
x3e;2]|0)*28|0);c[T>>2]=c[(c[V>>2]|0)+20>>2];c[S>>2]=(c[T>>2]|0)+((c[(c[V>
;>2]|0)+12>>2]|0)*48|0);c[O>>2]=0;c[J>>2]=0;a:do if((c[j>>2]|0)==1){c[R>>
2]=c[T>>2];while(1){if((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break a
;if(!((d[(c[R>>2]|0)+12>>0]|0)&4)){c[f>>2]=c[(c[R>>2]|0)+20>>2];c[g>
x3e;2]=0;c[h>>2]=c[(c[R>>2]|0)+24>>2];if(!(c[f>>2]|0)){if(c[h>>2]|0?c[(c[h>
;>2]|0)+20>>2]|0:0){c[f>>2]=c[(c[h>>2]|0)+20>>2];c[g>>2]=c[h>>2
];c[h>>2]=c[R>>2]}}else c[g>>2]=c[R>>2];if(c[g>>2]|0){c[(c[g>>2]|0)+
8>>2]=c[(c[f>>2]|0)+8>>2];V=(c[g>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if(
c[h>>2]|0?(c[(c[h>>2]|0)+20>>2]|0)==0:0){$l(c[M>>2]|0,c[j>>2]|0,c[g>>
;2]|0,c[h>>2]|0);V=(c[h>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4}if(!(c[O>>2]|0))c[O>
;>2]=c[R>>2]}}c[R>>2]=(c[R>>2]|0)+48}}while(0);c[R>>2]=c[T>>2];while(1){if
((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;do if(!((d[(c[R>>2]|0)+
12>>0]|0)&4)){c[t>>2]=c[(c[R>>2]|0)+24>>2];if(!(c[t>>2]|0)){c[J>>
;2]=(c[J>>2]|0)+1;break}if(c[(c[t>>2]|0)+20>>2]|0){$l(c[M>>2]|0,c[j>>2]|0,c[t
x3e;>2]|0,c[R>>2]|0);V=(c[R>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;break}if(!(c[O>>
;2]|0)){c[y>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0);c[k>>
;2]=am(c[M>>2]|0,c[j>>2]|0,c[y>>2]|0,d[(c[R>>2]|0)+12>>0]|0,d[(c[t>>
2]|0)+12>>0]|0)|0;if((c[k>>2]|0)<=64){c[p>>2]=32;c[B>>2]=32}else{c[B>>2]=
38;c[p>>2]=26}f=c[(c[R>>2]|0)+4>>2]|0;if((c[k>>2]|0)<96){c[w>>2]=f+(c[y
x3e;>2]>>1);c[m>>2]=(c[w>>2]|0)+32&-64;c[u>>2]=(c[w>>2]|0)-((c[m>
;>2]|0)-(c[B>>2]|0));if((c[u>>2]|0)<0)c[u>>2]=0-(c[u>>2]|0);c[v>>2]=(
c[w>>2]|0)-((c[m>>2]|0)+(c[p>>2]|0));if((c[v>>2]|0)<0)c[v>>2]=0-(c[v>
;>2]|0);if((c[u>>2]|0)<(c[v>>2]|0))c[m>>2]=(c[m>>2]|0)-(c[B>>2]|0);else
c[m>>2]=(c[m>>2]|0)+(c[p>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[m>>2]|0)-((c
[k>>2]|0)/2|0);c[(c[t>>2]|0)+8>>2]=(c[(c[R>>2]|0)+8>>2]|0)+(c[k>>2]|
0)}else c[(c[R>>2]|0)+8>>2]=f+32&-64;c[O>>2]=c[R>>2];V=(c[R>>2]|0)+12|0;a
[V>>0]=d[V>>0]|0|4;$l(c[M>>2]|0,c[j>>2]|0,c[R>>2]|0,c[t>>2]|0);break
}c[A>>2]=(c[(c[O>>2]|0)+8>>2]|0)+((c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2
]|0)+4>>2]|0));c[z>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|
0);c[x>>2]=(c[A>>2]|0)+(c[z>>2]>>1);c[l>>2]=am(c[M>>2]|0,c[j>
x3e;2]|0,c[z>>2]|0,d[(c[R>>2]|0)+12>>0]|0,d[(c[t>>2]|0)+12>>0]|0)|0;do if((d[(
c[t>>2]|0)+12>>0]|0)&4|0)c[(c[R>>2]|0)+8>>2]=(c[(c[t>>2]|0)+8>>
2]|0)-(c[l>>2]|0);else{if((c[l>>2]|0)>=96){c[A>>2]=(c[(c[O>>2]|0)+8>>2]|0
)+((c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2]|0)+4>>2]|0));c[z>>2]=(c[(c[t>>
;2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0);c[x>>2]=(c[A>>2]|0)+(c[z>>2]
x3e;>1);c[l>>2]=am(c[M>>2]|0,c[j>>2]|0,c[z>>2]|0,d[(c[R>>2]|0)+12>
x3e;0]|0,d[(c[t>>2]|0)+12>>0]|0)|0;c[n>>2]=(c[A>>2]|0)+32&-64;c[r>>2]=(c[
n>>2]|0)+(c[l>>2]>>1)-(c[x>>2]|0);if((c[r>>2]|0)<0)c[r>>2]=0-(c
[r>>2]|0);c[o>>2]=((c[A>>2]|0)+(c[z>>2]|0)+32&-64)-(c[l>>2]|0);c[s>
x3e;2]=(c[o>>2]|0)+(c[l>>2]>>1)-(c[x>>2]|0);if((c[s>>2]|0)<0)c[s>>
;2]=0-(c[s>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[r>>2]|0)<(c[s>>2]|0)?c[n>
x3e;2]|0:c[o>>2]|0;c[(c[t>>2]|0)+8>>2]=(c[(c[R>>2]|0)+8>>2]|0)+(c[l>>
;2]|0);break}c[n>>2]=(c[x>>2]|0)+32&-64;if((c[l>>2]|0)<=64){c[q>>2]=32;c[C>
;>2]=32}else{c[C>>2]=38;c[q>>2]=26}c[r>>2]=(c[x>>2]|0)-((c[n>>2]|0)-(c[C
x3e;>2]|0));if((c[r>>2]|0)<0)c[r>>2]=0-(c[r>>2]|0);c[s>>2]=(c[x>>2]|
0)-((c[n>>2]|0)+(c[q>>2]|0));if((c[s>>2]|0)<0)c[s>>2]=0-(c[s>>2]|0);if((c
[r>>2]|0)<(c[s>>2]|0))c[n>>2]=(c[n>>2]|0)-(c[C>>2]|0);else c[n>>
;2]=(c[n>>2]|0)+(c[q>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[n>>2]|0)-((c[l>>2
]|0)/2|0);c[(c[t>>2]|0)+8>>2]=(c[n>>2]|0)+((c[l>>2]|0)/2|0)}while(0);V=(c[R>>2
]|0)+12|0;a[V>>0]=d[V>>0]|0|4;V=(c[t>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if((c[R
x3e;>2]|0)>>>0>(c[T>>2]|0)>>>0?(c[(c[R>>2]|0)+8>>2]|0)<
;(c[(c[R>>2]|0)+-48+8>>2]|0):0)c[(c[R>>2]|0)+8>>2]=c[(c[R>>2]|0)+-48+8>
x3e;2]}while(0);c[R>>2]=(c[R>>2]|0)+48}c[K>>2]=((c[S>>2]|0)-(c[T>>2]|0)|0)/48|
0;if((c[j>>2]|0)==0?(c[K>>2]|0)==6|(c[K>>2]|0)==12:0){f=c[T>>2]|0;if((c[K>>2]|
0)==6){c[G>>2]=f;c[H>>2]=(c[T>>2]|0)+96;c[I>>2]=(c[T>>2]|0)+192}else{c[G>
x3e;2]=f+48;c[H>>2]=(c[T>>2]|0)+240;c[I>>2]=(c[T>>2]|0)+432}c[E>>2]=(c[(c[H>
;>2]|0)+4>>2]|0)-(c[(c[G>>2]|0)+4>>2]|0);c[F>>2]=(c[(c[I>>2]|0)+4>
x3e;2]|0)-(c[(c[H>>2]|0)+4>>2]|0);c[L>>2]=(c[E>>2]|0)-(c[F>>2]|0);if((c[L>
;>2]|0)<0)c[L>>2]=0-(c[L>>2]|0);if((c[L>>2]|0)<8){c[D>>2]=(c[(c[I>
x3e;2]|0)+8>>2]|0)-((c[(c[H>>2]|0)+8>>2]<<1)-(c[(c[G>>2]|0)+8>>2]|0));
V=(c[I>>2]|0)+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0);if(c[(c[I>>2]|0)+24>>
;2]|0){V=(c[(c[I>>2]|0)+24>>2]|0)+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0)}if((c[K
x3e;>2]|0)==12){V=(c[T>>2]|0)+384+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0);V=(c[T>
x3e;2]|0)+528+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0)}V=(c[I>>2]|0)+12|0;a[V>>0]=d
[V>>0]|0|4;if(c[(c[I>>2]|0)+24>>2]|0){V=(c[(c[I>>2]|0)+24>>2]|0)+12|0;a[V>
;>0]=d[V>>0]|0|4}}}if((c[J>>2]|0)==0&(c[O>>2]|0)!=0){i=U;return}c[R>>2]=c[T>
;>2];while(1){if((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;if(!((d[(c[R
>>2]|0)+12>>0]|0)&4)){c[Q>>2]=1e3;if(c[(c[R>>2]|0)+28>>2]|0?(c[Q>>
;2]=(c[(c[(c[R>>2]|0)+28>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0),(c[Q>>
;2]|0)<0):0)c[Q>>2]=0-(c[Q>>2]|0);do if((c[Q>>2]|0)<80)cm(c[M>>2]|0,c[(c[R>
;>2]|0)+28>>2]|0,c[R>>2]|0);else{f=c[R>>2]|0;if(!(c[O>>2]|0)){c[(c[R>>2]|
0)+8>>2]=(c[f+4>>2]|0)+32&-64;c[O>>2]=c[R>>2];break}c[P>>2]=f+-48;while(1
){if((c[P>>2]|0)>>>0<(c[T>>2]|0)>>>0)break;if((d[(c[P>>2]|0)+12
>>0]|0)&4|0)break;c[P>>2]=(c[P>>2]|0)+-48}c[N>>2]=(c[R>>2]|0)+48;while(1){
if((c[N>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;if((d[(c[N>>2]|0)+12
x3e;>0]|0)&4|0)break;c[N>>2]=(c[N>>2]|0)+48}if((((c[P>>2]|0)>>>0>=(c
[T>>2]|0)>>>0?(c[P>>2]|0)>>>0<(c[R>>2]|0)>>>0:0)?(
c[N>>2]|0)>>>0<(c[S>>2]|0)>>>0:0)?(c[N>>2]|0)>>>
0>(c[R>>2]|0)>>>0:0){f=c[(c[P>>2]|0)+8>>2]|0;e=c[R>>2]|0;if((c[(c[N
x3e;>2]|0)+4>>2]|0)==(c[(c[P>>2]|0)+4>>2]|0)){c[e+8>>2]=f;break}else{V=f+(xb((c[e+4
>>2]|0)-(c[(c[P>>2]|0)+4>>2]|0)|0,(c[(c[N>>2]|0)+8>>2]|0)-(c[(c[P>>2
]|0)+8>>2]|0)|0,(c[(c[N>>2]|0)+4>>2]|0)-(c[(c[P>>2]|0)+4>>2]|0)|0)|0)|0;c[(c[R
>>2]|0)+8>>2]=V;break}}c[(c[R>>2]|0)+8>>2]=(c[(c[O>>2]|0)+8>>2]|0)+((
c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2]|0)+4>>2]|0)+16&-32)}while(0);V=(c[R>>2
]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if((c[R>>2]|0)>>>0>(c[T>>2]|0)>
x3e;>0?(c[(c[R>>2]|0)+8>>2]|0)<(c[(c[R>>2]|0)+-48+8>>2]|0):0)c[(c[R>>
;2]|0)+8>>2]=c[(c[R>>2]|0)+-48+8>>2];if((((c[R>>2]|0)+48|0)>>>0<(c[S
>>2]|0)>>>0?(d[(c[R>>2]|0)+48+12>>0]|0)&4|0:0)?(c[(c[R>>2]|0)+8>
;>2]|0)>(c[(c[R>>2]|0)+48+8>>2]|0):0)c[(c[R>>2]|0)+8>>2]=c[(c[R>>2]|
0)+48+8>>2]}c[R>>2]=(c[R>>2]|0)+48}i=U;return}function $l(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;g=i;i=i+32|0;n=g+20|0;m=g+16|0;k=g+12|0;h=g+8|0;l=g+4|0;j=g;c[n>>2]=a;c[m>>2]=b;c[k
>>2]=e;c[h>>2]=f;c[l>>2]=(c[(c[h>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+4>
;>2]|0);c[j>>2]=am(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,d[(c[k>>2]|0)+12>
x3e;0]|0,d[(c[h>>2]|0)+12>>0]|0)|0;c[(c[h>>2]|0)+8>>2]=(c[(c[k>>2]|0)+8>
x3e;2]|0)+(c[j>>2]|0);i=g;return}function am(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;u=i;i=i+64|0;q=u+52|0;j=u+48|0;v=u+44|0;h=u+40|0;o=u+36|0;k=u+32|0;w=u+28|0;p=u+24|0;s=u+20|0;t=
u+16|0;n=u+12|0;r=u+8|0;m=u+4|0;l=u;c[j>>2]=a;c[v>>2]=b;c[h>>2]=e;c[o>>2]=f;c[k>>
;2]=g;c[w>>2]=c[(c[j>>2]|0)+112>>2];c[p>>2]=(c[w>>2]|0)+40+((c[v>>2]|
0)*396|0);c[s>>2]=c[h>>2];c[t>>2]=0;c[n>>2]=(c[v>>2]|0)==1&1;if(c[(c[j>
;>2]|0)+108>>2]&4|0?(d[(c[p>>2]|0)+212>>0]|0|0)==0:0){if((c[s>>2]|0)<0){c
[s>>2]=0-(c[h>>2]|0);c[t>>2]=1}if(c[n>>2]|0?!(c[(c[j>>2]|0)+108>>2]
x26;2|0):0)b=10;else b=8;do if((b|0)==8){if((c[n>>2]|0)==0?(c[(c[j>>2]|0)+108>>2]&1|0)==0:0){
b=10;break}c[m>>2]=c[s>>2];c[s>>2]=bm((c[p>>2]|0)+12|0,c[(c[p>>2]|0)+8>
x3e;2]|0,c[s>>2]|0)|0;if(c[n>>2]|0)if((c[s>>2]|0)>=64){c[s>>2]=(c[s>>2]|0
)+16&-64;break}else{c[s>>2]=64;break}h=c[s>>2]|0;if(c[(c[j>>2]|0)+108>>2]&8|0)
if((h|0)<64){c[s>>2]=64;break}else{c[s>>2]=(c[s>>2]|0)+32&-64;break}f=c[s>>2]|
0;if((h|0)<48){c[s>>2]=f+64>>1;break}h=c[s>>2]|0;if((f|0)>=128){c[s>>2]=h+32
x26;-64;break}c[s>>2]=h+22&-64;c[l>>2]=(c[s>>2]|0)-(c[m>>2]|0);if((c[l>>2
]|0)<0)c[l>>2]=0-(c[l>>2]|0);if((c[l>>2]|0)>=16?(c[s>>2]=c[m>>2],(c[
s>>2]|0)<48):0)c[s>>2]=(c[s>>2]|0)+64>>1}while(0);do if((b|0)==10?!((c[k>>
;2]&2|0)!=0&(c[n>>2]|0)!=0&(c[s>>2]|0)<192):0){h=c[s>>2]|0;if(c[o>>2
]&1|0){if((h|0)<80)c[s>>2]=64}else if((h|0)<56)c[s>>2]=56;if((c[(c[p>>2]|0)+8>
x3e;2]|0)>>>0>0){c[r>>2]=(c[s>>2]|0)-(c[(c[p>>2]|0)+12+4>>2]|0);if((
c[r>>2]|0)<0)c[r>>2]=0-(c[r>>2]|0);if((c[r>>2]|0)<40){w=c[(c[p>>2]|0
)+12+4>>2]|0;c[s>>2]=w;c[s>>2]=(c[s>>2]|0)<48?48:w;break}h=c[s>>2]|0;if((
c[s>>2]|0)>=192){c[s>>2]=h+32&-64;break}c[r>>2]=h&63;c[s>>2]=c[s>>
;2]&-64;h=c[r>>2]|0;if((c[r>>2]|0)<10){c[s>>2]=(c[s>>2]|0)+h;break}if((h|0)<
;32){c[s>>2]=(c[s>>2]|0)+10;break}if((c[r>>2]|0)<54){c[s>>2]=(c[s>>2]|0)+
54;break}else{c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);break}}}while(0);if(c[t>>2]|0)c[s>>
;2]=0-(c[s>>2]|0);c[q>>2]=c[s>>2];w=c[q>>2]|0;i=u;return w|0}c[q>>2]=c[h>
x3e;2];w=c[q>>2]|0;i=u;return w|0}function bm(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;o=i
;i=i+48|0;e=o+32|0;f=o+28|0;m=o+24|0;j=o+20|0;g=o+16|0;n=o+12|0;l=o+8|0;k=o+4|0;h=o;c[e>>2]=a;c[f>>2]=b;c[m
x3e;>2]=d;c[g>>2]=98;c[n>>2]=c[m>>2];c[j>>2]=0;while(1){if((c[j>>2]|0)>
;=(c[f>>2]|0))break;c[k>>2]=c[(c[e>>2]|0)+((c[j>>2]|0)*12|0)+4>>2];c[h>
x3e;2]=(c[m>>2]|0)-(c[k>>2]|0);if((c[h>>2]|0)<0)c[h>>2]=0-(c[h>>2]|0);if((
c[h>>2]|0)<(c[g>>2]|0)){c[g>>2]=c[h>>2];c[n>>2]=c[k>>2]}c[j>
;>2]=(c[j>>2]|0)+1}c[l>>2]=(c[n>>2]|0)+32&-64;f=c[m>>2]|0;e=c[l>>2]|
0;if((c[m>>2]|0)>=(c[n>>2]|0)){if((f|0)>=(e+48|0)){n=c[m>>2]|0;i=o;return n|0}c[m>
x3e;2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}else{if((f|0)<=(e-48|0)){n=c[m>>2]|0;i=o;return n|0
}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}return 0}function cm(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;c[h>>2]=c[h
x3e;>2];c[(c[f>>2]|0)+8>>2]=(c[(c[g>>2]|0)+8>>2]|0)+((c[(c[f>>2]|0)+4>
;>2]|0)-(c[(c[g>>2]|0)+4>>2]|0));i=e;return}function dm(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,q=0,r=0,s=0,t=0,u=0;q=i;i=i+64|0;u=q+52|0;s=q+48|0;t=q+44|0;r=q+40|0;p=q+36|0;o=q+32|0;f=q+28|0;m=q+24|0;h=q+20|0;
k=q+16|0;g=q+12|0;n=q+8|0;j=q+4|0;l=q;c[u>>2]=a;c[s>>2]=d;c[t>>2]=(c[u>>2]|0)+48+((c[s
x3e;>2]|0)*28|0);c[r>>2]=c[(c[t>>2]|0)+8>>2];c[p>>2]=(c[r>>2]|0)+((c[c[t
x3e;>2]>>2]|0)*52|0);a=(c[s>>2]|0)==0;c[o>>2]=c[r>>2];if(a){while(1){if((c[o>
x3e;2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[f>>2]=c[(c[o>>2]|0)+12
x3e;>2];a:do if(c[f>>2]|0){c[h>>2]=c[(c[o>>2]|0)+40>>2];c[k>>2]=c[(c[o>
;>2]|0)+44>>2];c[m>>2]=c[h>>2];while(1){c[(c[m>>2]|0)+16>>2]=c[(c[f>
x3e;2]|0)+8>>2];u=c[m>>2]|0;b[u>>1]=e[u>>1]|0|64;if((c[m>>2]|0)==(c[k>>
;2]|0))break a;c[m>>2]=c[(c[m>>2]|0)+32>>2]}}while(0);c[o>>2]=(c[o>>2]|0)+52}i
=q;return}else{while(1){if((c[o>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[g>
;>2]=c[(c[o>>2]|0)+12>>2];b:do if(c[g>>2]|0){c[j>>2]=c[(c[o>>2]|0)+40>
;>2];c[l>>2]=c[(c[o>>2]|0)+44>>2];c[n>>2]=c[j>>2];while(1){c[(c[n>
x3e;2]|0)+20>>2]=c[(c[g>>2]|0)+8>>2];u=c[n>>2]|0;b[u>>1]=e[u>>1]|0|128
;if((c[n>>2]|0)==(c[l>>2]|0))break b;c[n>>2]=c[(c[n>>2]|0)+32>>2]}}while(0);c[
o>>2]=(c[o>>2]|0)+52}i=q;return}}function em(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,q=
0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;z=i;i=i+96|0;B=z+80|0;g=z+76|0;f=z+72|0;w=z+68|0;A=z+64|0;n=z+60|0;m=z+56|0;x=z+52
|0;v=z+48|0;l=z+44|0;y=z+40|0;u=z+36|0;p=z+32|0;k=z+28|0;s=z+24|0;q=z+20|0;r=z+16|0;o=z+12|0;t=z+8|0;j=z+4|0;h=z;c[B>>
2]=a;c[g>>2]=d;c[f>>2]=c[(c[B>>2]|0)+32>>2];c[w>>2]=(c[f>>2]|0)+((c[(
c[B>>2]|0)+28>>2]|0)*40|0);c[A>>2]=(c[B>>2]|0)+48+((c[g>>2]|0)*28|0);c[n>
x3e;2]=c[(c[A>>2]|0)+20>>2];c[m>>2]=(c[n>>2]|0)+((c[(c[A>>2]|0)+12>>
2]|0)*48|0);if(!(c[g>>2]|0))c[x>>2]=64;else c[x>>2]=128;if((c[n>>2]|0)>>>
0>=(c[m>>2]|0)>>>0){i=z;return}c[v>>2]=c[f>>2];while(1){if((c[v>>2]|
0)>>>0>=(c[w>>2]|0)>>>0)break;do if(!(e[c[v>>2]>>1]&c[x>
;>2])){if(e[c[v>>2]>>1]&256|0?(e[c[v>>2]>>1]&512|0)==0:0)break;d=c[v>
;>2]|0;if((c[g>>2]|0)==1){c[y>>2]=b[d+14>>1];c[u>>2]=c[(c[v>>2]|0)+8>
;>2]}else{c[y>>2]=b[d+12>>1];c[u>>2]=c[(c[v>>2]|0)+4>>2]}c[p>>2
]=c[y>>2];c[l>>2]=c[n>>2];c[k>>2]=(b[c[l>>2]>>1]|0)-(c[y>>
2]|0);a:do if((c[k>>2]|0)>=0)c[y>>2]=(c[(c[l>>2]|0)+8>>2]|0)-((c[(c[l>>2]|
0)+4>>2]|0)-(c[u>>2]|0));else{c[l>>2]=(c[m>>2]|0)+-48;c[k>>2]=(c[y>>
2]|0)-(b[c[l>>2]>>1]|0);if((c[k>>2]|0)>=0){c[y>>2]=(c[(c[l>>2]|0)+8>
x3e;2]|0)+((c[u>>2]|0)-(c[(c[l>>2]|0)+4>>2]|0));break}c[s>>2]=0;c[q>>2]=((c[m
x3e;>2]|0)-(c[n>>2]|0)|0)/48|0;b:do if((c[q>>2]|0)<=8){c[t>>2]=0;while(1){if((c[t>
x3e;2]|0)>=(c[q>>2]|0))break;if((b[(c[n>>2]|0)+((c[t>>2]|0)*48|0)>>1]|0)>=(c[y
>>2]|0))break;c[t>>2]=(c[t>>2]|0)+1}d=c[t>>2]|0;if((b[(c[n>>2]|0)+((c[t>
x3e;2]|0)*48|0)>>1]|0)==(c[y>>2]|0)){c[y>>2]=c[(c[n>>2]|0)+(d*48|0)+8>>2];break
a}else{c[s>>2]=d;break}}else{while(1){if((c[s>>2]|0)>=(c[q>>2]|0))break b;c[r>>2]=(
c[q>>2]|0)+(c[s>>2]|0)>>1;c[l>>2]=(c[n>>2]|0)+((c[r>>2]|0)*48|0);c[o
>>2]=b[c[l>>2]>>1];if((c[y>>2]|0)<(c[o>>2]|0)){c[q>>2]=c[r>
;>2];continue}if((c[y>>2]|0)<=(c[o>>2]|0))break;c[s>>2]=(c[r>>2]|0)+1}c[y>
;>2]=c[(c[l>>2]|0)+8>>2];break a}while(0);c[j>>2]=(c[n>>2]|0)+((c[s>>2]|0
)*48|0)+-48;c[h>>2]=(c[n>>2]|0)+((c[s>>2]|0)*48|0);if(!(c[(c[j>>2]|0)+16>>2]|0
)){B=Vb((c[(c[h>>2]|0)+8>>2]|0)-(c[(c[j>>2]|0)+8>>2]|0)|0,(b[c[h>>2]>>
;1]|0)-(b[c[j>>2]>>1]|0)|0)|0;c[(c[j>>2]|0)+16>>2]=B}B=c[(c[j>>2]|0)+8>
x3e;2]|0;c[y>>2]=B+(Mb((c[p>>2]|0)-(b[c[j>>2]>>1]|0)|0,c[(c[j>>2]|0)+16>
x3e;2]|0)|0)}while(0);d=c[y>>2]|0;a=c[v>>2]|0;if(!(c[g>>2]|0))c[a+16>>2]=d;else c[a+20
x3e;>2]=d;B=c[v>>2]|0;b[B>>1]=e[B>>1]|c[x>>2]}while(0);c[v>>2]=(c[v>
x3e;2]|0)+40}i=z;return}function fm(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,s=0;r=i;i=i+48|0;s=
r+44|0;d=r+40|0;o=r+36|0;n=r+32|0;f=r+28|0;g=r+24|0;p=r+20|0;m=r+16|0;h=r+12|0;j=r+8|0;k=r+4|0;l=r;c[s>>2]=a;c[d>
x3e;2]=b;c[o>>2]=c[(c[s>>2]|0)+32>>2];c[n>>2]=(c[o>>2]|0)+((c[(c[s>>
2]|0)+28>>2]|0)*40|0);c[f>>2]=c[(c[s>>2]|0)+44>>2];c[g>>2]=(c[f>>2]|
0)+(c[(c[s>>2]|0)+40>>2]<<2);a:do if(!(c[d>>2]|0)){c[p>>2]=64;c[m>>2
]=c[o>>2];while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a;
c[(c[m>>2]|0)+24>>2]=c[(c[m>>2]|0)+16>>2];c[(c[m>>2]|0)+28>>2]=c[(c[
m>>2]|0)+4>>2];c[m>>2]=(c[m>>2]|0)+40}}else{c[p>>2]=128;c[m>>2]=c[o
x3e;>2];while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a;c[(c[m
x3e;>2]|0)+24>>2]=c[(c[m>>2]|0)+20>>2];c[(c[m>>2]|0)+28>>2]=c[(c[m>
x3e;2]|0)+8>>2];c[m>>2]=(c[m>>2]|0)+40}}while(0);c[m>>2]=c[o>>2];while(1){if((
c[f>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[m>>2]=c[c[f>>
2]>>2];c[h>>2]=c[(c[m>>2]|0)+36>>2];c[j>>2]=c[m>>2];while(1){if((c[m
>>2]|0)>>>0>(c[h>>2]|0)>>>0)break;b=c[m>>2]|0;if((e[c[m>
x3e;2]>>1]|0)&c[p>>2]|0){q=14;break}c[m>>2]=b+40}do if((q|0)==14){q=0;c[k>>2]=b;c[l
>>2]=c[m>>2];b:while(1){if((c[m>>2]|0)>>>0<(c[h>>2]|0)>>
x3e;0)b=((e[(c[m>>2]|0)+40>>1]|0)&c[p>>2]|0)!=0;else b=0;a=c[m>>2]|0;if(b){c[m>
;>2]=a+40;continue}c[l>>2]=a;c[m>>2]=(c[m>>2]|0)+40;while(1){if((c[m>>2]|0)>
x3e;>0>(c[h>>2]|0)>>>0)break b;if((e[c[m>>2]>>1]|0)&c[p>>2
]|0)break;c[m>>2]=(c[m>>2]|0)+40}gm((c[l>>2]|0)+40|0,(c[m>>2]|0)+-40|0,c[l>>2]|
0,c[m>>2]|0)}if((c[l>>2]|0)==(c[k>>2]|0)){hm(c[j>>2]|0,c[h>>2]|0,c[k>>
;2]|0);break}if((c[l>>2]|0)>>>0<(c[h>>2]|0)>>>0)gm((c[l>>2]|0)+
40|0,c[h>>2]|0,c[l>>2]|0,c[k>>2]|0);if((c[k>>2]|0)>>>0>(c[o>>
;2]|0)>>>0)gm(c[j>>2]|0,(c[k>>2]|0)+-40|0,c[l>>2]|0,c[k>>2]|0)}while(0);c
[f>>2]=(c[f>>2]|0)+4}s=(c[d>>2]|0)==0;c[m>>2]=c[o>>2];if(s){while(1){if((c[m
x3e;>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[(c[m>>2]|0)+16>>2]=
c[(c[m>>2]|0)+24>>2];c[m>>2]=(c[m>>2]|0)+40}i=r;return}else{while(1){if((c[m>>
2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[(c[m>>2]|0)+20>>2]=c[(c[m>
;>2]|0)+24>>2];c[m>>2]=(c[m>>2]|0)+40}i=r;return}}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;q=i;i=i+48|0;f=q+36|0;g=q+32|0;h=q+28|0;j=q+24|0;m=q+20|0;n=q+16|0;o=q+12|0;p=
q+8|0;k=q+4|0;l=q;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[o>>2]=c[(c[h>
x3e;2]|0)+28>>2];c[p>>2]=c[(c[j>>2]|0)+28>>2];c[k>>2]=(c[(c[h>>2]|0)+
24>>2]|0)-(c[o>>2]|0);c[l>>2]=(c[(c[j>>2]|0)+24>>2]|0)-(c[p>>2]|0);if
((c[f>>2]|0)>>>0>(c[g>>2]|0)>>>0){i=q;return}if((c[o>>2]|0)==(c
[p>>2]|0)){c[m>>2]=c[f>>2];while(1){if((c[m>>2]|0)>>>0>(c[g>>
;2]|0)>>>0)break;c[n>>2]=c[(c[m>>2]|0)+28>>2];if((c[n>>2]|0)<=(c[o
x3e;>2]|0))c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);else c[n>>2]=(c[n>>2]|0)+(c[l
x3e;>2]|0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>2]|0)+40}i=q;return
}e=(c[o>>2]|0)<(c[p>>2]|0);c[m>>2]=c[f>>2];if(e){while(1){if((c[m>>2]|0)
x3e;>>0>(c[g>>2]|0)>>>0)break;c[n>>2]=c[(c[m>>2]|0)+28>>2];
do if((c[n>>2]|0)>(c[o>>2]|0))if((c[n>>2]|0)>=(c[p>>2]|0)){c[n>>2]=(
c[n>>2]|0)+(c[l>>2]|0);break}else{e=c[(c[h>>2]|0)+24>>2]|0;c[n>>2]=e+(xb((c[n
x3e;>2]|0)-(c[o>>2]|0)|0,(c[(c[j>>2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+24>>2]|0
)|0,(c[p>>2]|0)-(c[o>>2]|0)|0)|0);break}else c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);while
(0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>2]|0)+40}i=q;return}else{while(
1){if((c[m>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[n>>2]=c[(c[m>
;>2]|0)+28>>2];do if((c[n>>2]|0)>(c[p>>2]|0))if((c[n>>2]|0)>=(c[o>
x3e;2]|0)){c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);break}else{e=c[(c[h>>2]|0)+24>>2]|0
;c[n>>2]=e+(xb((c[n>>2]|0)-(c[o>>2]|0)|0,(c[(c[j>>2]|0)+24>>2]|0)-(c[(c[h>
;>2]|0)+24>>2]|0)|0,(c[p>>2]|0)-(c[o>>2]|0)|0)|0);break}else c[n>>2]=(c[n>>
;2]|0)+(c[l>>2]|0);while(0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>
;2]|0)+40}i=q;return}}function hm(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;e=k+16|0;f=k+12|0;g=k+8|0;j=
k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=(c[(c[g>>2]|0)+24>>2
]|0)-(c[(c[g>>2]|0)+28>>2]|0);if(!(c[h>>2]|0)){i=k;return}c[j>>2]=c[e>>2];while
(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[(c[j>>2]|0)+24
x3e;>2]=(c[(c[j>>2]|0)+28>>2]|0)+(c[h>>2]|0);c[j>>2]=(c[j>>2]|0)+40}c[j
x3e;>2]=(c[g>>2]|0)+40;while(1){if((c[j>>2]|0)>>>0>(c[f>>2]|0)>>
;>0)break;c[(c[j>>2]|0)+24>>2]=(c[(c[j>>2]|0)+28>>2]|0)+(c[h>>2]|0);c[j
x3e;>2]=(c[j>>2]|0)+40}i=k;return}function im(b,d){b=b|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;m=k+20
|0;l=k+16|0;g=k+12|0;f=k+8|0;j=k+4|0;h=k;c[m>>2]=b;c[l>>2]=d;c[g>>2]=c[(c[m>>2]|0)+32>
;>2];c[f>>2]=(c[g>>2]|0)+((c[(c[m>>2]|0)+28>>2]|0)*40|0);c[j>>2]=c[(c[l
x3e;>2]|0)+4>>2];c[h>>2]=c[(c[l>>2]|0)+8>>2];while(1){if((c[g>>2]|0)>
;>>0>=(c[f>>2]|0)>>>0)break;c[c[j>>2]>>2]=c[(c[g>>2]|0)+16
>>2];c[(c[j>>2]|0)+4>>2]=c[(c[g>>2]|0)+20>>2];do if(!((e[c[g>>2]>
;>1]|0)&1|0)){b=c[h>>2]|0;if((e[c[g>>2]>>1]|0)&2|0){a[b>>0]=2;break}else{
a[b>>0]=1;break}}else a[c[h>>2]>>0]=0;while(0);c[g>>2]=(c[g>>2]|0)+40;c[j>
;>2]=(c[j>>2]|0)+8;c[h>>2]=(c[h>>2]|0)+1}i=k;return}function jm(a,b){a=a|0;b=b|0;var d=0,f=0,
g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[f>>2]|0)+92>
;>2];c[(c[d>>2]|0)+36>>2]=e[(c[f>>2]|0)+68>>1];if(Id(c[f>>2]|0,1970170211
)|0){c[(c[f>>2]|0)+92>>2]=0;a=c[f>>2]|0;g=c[g>>2]|0;Jd(a,g)|0;i=h;return 0}else{Gl(c[d
x3e;>2]|0,c[f>>2]|0,3e4);Rl(c[d>>2]|0,c[f>>2]|0);a=c[f>>2]|0;g=c[g>>2]|0;
Jd(a,g)|0;i=h;return 0}return 0}function km(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)+4|0;a=c[e>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>
;>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2];c[b+16>>2]=c[a+16>>
;2];c[b+20>>2]=c[a+20>>2];c[b+24>>2]=c[a+24>>2];lm(c[f>>2]|0,c[e>>2]|
0,0);lm(c[f>>2]|0,c[e>>2]|0,1);i=d;return}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;g=i;i
=i+16|0;j=g+12|0;e=g+8|0;h=g+4|0;f=g;c[j>>2]=a;c[e>>2]=b;c[h>>2]=d;c[f>>2]=(c[j>>
;2]|0)+40+((c[h>>2]|0)*396|0);d=c[e>>2]|0;if(!(c[h>>2]|0)){c[c[f>>2]>>2]=c[d+4
>>2];c[(c[f>>2]|0)+4>>2]=c[(c[e>>2]|0)+12>>2];i=g;return}else{c[c[f>>
;2]>>2]=c[d+8>>2];c[(c[f>>2]|0)+4>>2]=c[(c[e>>2]|0)+16>>2];i=g;return
}}function mm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;j=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=
a;c[j>>2]=b;Dl(c[d>>2]|0,c[j>>2]|0);c[(c[d>>2]|0)+4>>2]=c[(c[j>>2]|0
)+40>>2];c[(c[d>>2]|0)+8>>2]=c[(c[j>>2]|0)+40+4>>2];c[(c[d>>2]|0)+12
>>2]=c[(c[j>>2]|0)+40+396>>2];c[(c[d>>2]|0)+16>>2]=c[(c[j>>2]|0)+40+
396+4>>2];c[e>>2]=c[(c[j>>2]|0)+4+20>>2];c[g>>2]=c[(c[d>>2]|0)+104
x3e;>2];c[f>>2]=0;if((c[e>>2]|0)==2|(c[e>>2]|0)==3)c[f>>2]=c[f>>2]|1;if((
c[e>>2]|0)==2|(c[e>>2]|0)==4)c[f>>2]=c[f>>2]|2;if((c[e>>2]|0)!=1)c[f>>
;2]=c[f>>2]|4;if((c[e>>2]|0)!=2){j=c[g>>2]|0;j=j|4;c[g>>2]=j;j=c[g>>2]|0;g=c[d
>>2]|0;g=g+104|0;c[g>>2]=j;g=c[f>>2]|0;j=c[d>>2]|0;j=j+108|0;c[j>>2]=g;i=h;return
0}c[f>>2]=c[f>>2]|8;j=c[g>>2]|0;j=j|4;c[g>>2]=j;j=c[g>>2]|0;g=c[d>>
2]|0;g=g+104|0;c[g>>2]=j;g=c[f>>2]|0;j=c[d>>2]|0;j=j+108|0;c[j>>2]=g;i=h;return 0}function
nm(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+16|0;f=j+12|0;k=j+8|0;h=j+4|0;g=j;c[e>>2]=a;
c[f>>2]=b;c[k>>2]=d;c[k>>2]=c[k>>2];c[h>>2]=Il(c[e>>2]|0,c[f>
x3e;2]|0)|0;if(c[h>>2]|0){k=c[h>>2]|0;i=j;return k|0}if((c[(c[e>>2]|0)+104>>2]&1|0)==
0?(c[h>>2]=om(c[e>>2]|0,0)|0,c[h>>2]|0):0){k=c[h>>2]|0;i=j;return k|0}if((c[(c[e>
x3e;2]|0)+104>>2]&2|0)==0?(c[h>>2]=om(c[e>>2]|0,1)|0,c[h>>2]|0):0){k=c[h>>
;2]|0;i=j;return k|0}c[g>>2]=0;while(1){if((c[g>>2]|0)>=2)break;if((c[g>>2]|0)==0?!(c[(c[e>
;>2]|0)+104>>2]&1|0):0)a=12;else a=10;if(((a|0)==10?(a=0,(c[g>>2]|0)==1):0)?(c[(c[e>>2]|
0)+104>>2]&2|0)==0:0)a=12;if((a|0)==12){sm(c[e>>2]|0,c[g>>2]|0);ym(c[e>>2]|0,c[g>
;>2]|0);em(c[e>>2]|0,c[g>>2]|0);fm(c[e>>2]|0,c[g>>2]|0)}c[g>>2]=(c[g>
;>2]|0)+1}im(c[e>>2]|0,c[f>>2]|0);k=c[h>>2]|0;i=j;return k|0}function om(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=pm(c[d>>2]|
0,c[e>>2]|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}qm(c[d>>2]|0,c[e>>2]|0
);c[f>>2]=rm(c[d>>2]|0,c[e>>2]|0)|0;a=c[f>>2]|0;i=g;return a|0}function pm(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,q=0,r=0,s=0,t=0;q=i;i=i+48|0;g=q+44|0;s=q+40|0;r=q+36|0;t=q+32|0;p=q+28|0;o=q+24|0;h
=q+20|0;n=q+16|0;m=q+12|0;l=q+8|0;j=q+4|0;k=q;c[s>>2]=b;c[r>>2]=f;c[t>>2]=(c[s>>2]|0)+48
+((c[r>>2]|0)*28|0);c[p>>2]=c[(c[t>>2]|0)+8>>2];c[o>>2]=(c[p>>2]|0)+((
c[c[t>>2]>>2]|0)*52|0);c[h>>2]=Kl(c[s>>2]|0,c[r>>2]|0)|0;if(c[h>>2]|
0){c[g>>2]=c[h>>2];t=c[g>>2]|0;i=q;return t|0}c[n>>2]=c[p>>2];while(1){if((c[n
>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[m>>2]=c[(c[n>>2]|
0)+40>>2];c[l>>2]=c[(c[n>>2]|0)+44>>2];c[j>>2]=(e[c[m>>2]>>
;1]|0)&3;t=c[n>>2]|0;a[t>>0]=(d[t>>0]|0)&-2;while(1){if((c[m>>2]|0)==(c[l>
;>2]|0))break;c[m>>2]=c[(c[m>>2]|0)+32>>2];c[k>>2]=(e[c[m>>2]>>
1]|0)&3;if(!((c[j>>2]|0)!=0|(c[k>>2]|0)!=0))break;if((c[m>>2]|0)==(c[l>>2]|0)){t=c[
n>>2]|0;a[t>>0]=d[t>>0]|0|1}c[j>>2]=c[k>>2]}c[n>>2]=(c[n>>
2]|0)+52}c[g>>2]=0;t=c[g>>2]|0;i=q;return t|0}function qm(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;v=i;i=i+80|0;x=v+68|0;w=v+64|0;y=v+60|0;u=v+56|0;t=v+52|0;n=v+48|0;r=v+44|0;s=v+40
|0;j=v+36|0;g=v+32|0;f=v+28|0;p=v+24|0;o=v+20|0;h=v+16|0;l=v+12|0;m=v+8|0;q=v+4|0;k=v;c[x>>2]=d;c[w>>2]=e;c[
y>>2]=(c[x>>2]|0)+48+((c[w>>2]|0)*28|0);c[u>>2]=c[(c[y>>2]|0)+8>>2];
c[t>>2]=(c[u>>2]|0)+((c[c[y>>2]>>2]|0)*52|0);c[n>>2]=c[(c[y>>2]|0)+24
>>2];c[j>>2]=(c[(c[(c[x>>2]|0)+112>>2]|0)+36>>2]<<3|0)/2048|0;e=c[x
x3e;>2]|0;if(!(c[w>>2]|0))e=c[e+4>>2]|0;else e=c[e+12>>2]|0;c[g>>2]=e;c[g>>
;2]=Vb(192,c[g>>2]|0)|0;c[r>>2]=c[u>>2];while(1){if((c[r>>2]|0)>>>0>=(
c[t>>2]|0)>>>0)break;a:do if((c[(c[r>>2]|0)+40>>2]|0)!=(c[(c[r>>2]|0)+44
x3e;>2]|0)?(a[(c[r>>2]|0)+1>>0]|0)==(c[n>>2]|0):0){c[s>>2]=c[u>>2];while(
1){if((c[s>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a;do if(((c[s>>2]|
0)!=(c[r>>2]|0)?((a[(c[r>>2]|0)+1>>0]|0)+(a[(c[s>>2]|0)+1>>0]|0)|0)==0:0)?(c[f
>>2]=(b[(c[s>>2]|0)+2>>1]|0)-(b[(c[r>>2]|0)+2>>1]|0),(c[f>>2]|0)>
;=0):0){c[p>>2]=b[(c[r>>2]|0)+4>>1];c[o>>2]=b[(c[r>>2]|0)+6>>1];if((
c[p>>2]|0)<(b[(c[s>>2]|0)+4>>1]|0))c[p>>2]=b[(c[s>>2]|0)+4>>1];
if((c[o>>2]|0)>(b[(c[s>>2]|0)+6>>1]|0))c[o>>2]=b[(c[s>>2]|0)+6>>
;1];c[h>>2]=(c[o>>2]|0)-(c[p>>2]|0);if((c[h>>2]|0)>=(c[j>>2]|0)){do if((c
[f>>2]<<3|0)<((c[(c[r>>2]|0)+32>>2]|0)*9|0)){if((c[f>>2]<<3|0)
x3e;=((c[(c[r>>2]|0)+32>>2]|0)*7|0)?(c[(c[r>>2]|0)+36>>2]|0)>=(c[h>>2]|0):
0)break;c[(c[r>>2]|0)+32>>2]=c[f>>2];c[(c[r>>2]|0)+36>>2]=c[h>>2];c[(
c[r>>2]|0)+20>>2]=c[s>>2]}while(0);if((c[f>>2]<<3|0)<((c[(c[s>>
2]|0)+32>>2]|0)*9|0)){if((c[f>>2]<<3|0)>=((c[(c[s>>2]|0)+32>>2]|0)*7|0)?(
c[(c[s>>2]|0)+36>>2]|0)>=(c[h>>2]|0):0)break;c[(c[s>>2]|0)+32>>2]=c[f>
;>2];c[(c[s>>2]|0)+36>>2]=c[h>>2];c[(c[s>>2]|0)+20>>2]=c[r>>2]}}}
while(0);c[s>>2]=(c[s>>2]|0)+52}}while(0);c[r>>2]=(c[r>>2]|0)+52}c[r>>2]=c[u
x3e;>2];while(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[l>
x3e;2]=c[(c[r>>2]|0)+20>>2];b:do if(((c[l>>2]|0?(c[(c[l>>2]|0)+20>>2]|0)==(c[r
>>2]|0):0)?(b[(c[l>>2]|0)+2>>1]|0)>(b[(c[r>>2]|0)+2>>1]|0):0)?(c[(c[r>
;>2]|0)+32>>2]|0)<(c[g>>2]|0):0){c[s>>2]=c[u>>2];c:while(1){if((c[s>>
;2]|0)>>>0>=(c[t>>2]|0)>>>0)break b;d:do if(((((b[(c[s>>2]|0)+2>>
;1]|0)<=(b[(c[r>>2]|0)+2>>1]|0)?(c[r>>2]|0)!=(c[s>>2]|0):0)?(c[m>>2]=c[(c
[s>>2]|0)+20>>2],c[m>>2]|0):0)?(c[(c[m>>2]|0)+20>>2]|0)==(c[s>>2]|0):
0)?(b[(c[m>>2]|0)+2>>1]|0)>=(b[(c[l>>2]|0)+2>>1]|0):0){if((b[(c[r>>2]|0)+
2>>1]|0)==(b[(c[s>>2]|0)+2>>1]|0)?(b[(c[l>>2]|0)+2>>1]|0)==(b[(c[m>>
2]|0)+2>>1]|0):0)break;if((c[(c[s>>2]|0)+32>>2]|0)>(c[(c[r>>2]|0)+32>>2]|
0)?(c[(c[r>>2]|0)+32>>2]<<2|0)>(c[(c[s>>2]|0)+32>>2]|0):0){if((c[(c[r>
;>2]|0)+36>>2]|0)<((c[(c[s>>2]|0)+36>>2]|0)*3|0))break c;c[q>>2]=c[u>>
;2];while(1){if((c[q>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break d;c[k>>2
]=c[(c[q>>2]|0)+20>>2];do if((c[k>>2]|0)==(c[s>>2]|0)){c[(c[q>>2]|0)+20>
x3e;2]=0;c[(c[q>>2]|0)+24>>2]=c[l>>2]}else{if((c[k>>2]|0)!=(c[m>>2]|0))break;c
[(c[q>>2]|0)+20>>2]=0;c[(c[q>>2]|0)+24>>2]=c[r>>2]}while(0);c[q>>2]=(
c[q>>2]|0)+52}}}while(0);c[s>>2]=(c[s>>2]|0)+52}c[(c[l>>2]|0)+20>>2]=0;c[(c[r
x3e;>2]|0)+20>>2]=0}while(0);c[r>>2]=(c[r>>2]|0)+52}c[r>>2]=c[u>>2];while
(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[s>>2]=c[(c[r>
;>2]|0)+20>>2];do if(c[s>>2]|0?(y=(c[s>>2]|0)+28|0,c[y>>2]=(c[y>>2]|0)+1,(
c[(c[s>>2]|0)+20>>2]|0)!=(c[r>>2]|0)):0){c[(c[r>>2]|0)+20>>2]=0;if((c[(c[s>
;>2]|0)+32>>2]|0)>=(c[g>>2]|0)?(c[(c[r>>2]|0)+32>>2]|0)>=(c[(c[s>>
;2]|0)+32>>2]<<2|0):0){y=(c[s>>2]|0)+28|0;c[y>>2]=(c[y>>2]|0)+-1;break}c[(c[r
x3e;>2]|0)+24>>2]=c[(c[s>>2]|0)+20>>2]}while(0);c[r>>2]=(c[r>>2]|0)+52}i=
v;return}
function Is(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=a+4|0;o=c[n>>2]|0;d=o&-8;k=a+d
|0;i=c[18404]|0;e=o&3;if(!((e|0)!=1&a>>>0>=i>>>0&a>>>0<k
x3e;>>0))ya();f=c[k+4>>2]|0;if(!(f&1))ya();if(!e){if(b>>>0<256){a=0;return a|0}if(d
>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[18520]<<1>>>0:0
)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a
|0;m=a+b|0;c[n>>2]=o&1|b|2;c[m+4>>2]=d|3;b=m+d+4|0;c[b>>2]=c[b>>2]|1;Js(m,d);return
a|0}if((k|0)==(c[18406]|0)){d=(c[18403]|0)+d|0;if(d>>>0<=b>>>0){a=0;return a|0}m=d-b|0;l=a+b
|0;c[n>>2]=o&1|b|2;c[l+4>>2]=m|1;c[18406]=l;c[18403]=m;return a|0}if((k|0)==(c[18405]|0)){e=(c[18402]|0
)+d|0;if(e>>>0<b>>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){e=a+b|0;m=e+d|0
;c[n>>2]=o&1|b|2;c[e+4>>2]=d|1;c[m>>2]=d;b=m+4|0;c[b>>2]=c[b>>2]&-2}
else{c[n>>2]=o&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[18402]=d;c[18405]=e;return a|0}if(
f&2|0){a=0;return a|0}l=(f&-8)+d|0;if(l>>>0<b>>>0){a=0;return a|0}m=l-b|0;g=f>
x3e;>3;do if(f>>>0>=256){h=c[k+24>>2]|0;f=c[k+12>>2]|0;do if((f|0)==(k|0)){e=k+16|0
;f=e+4|0;d=c[f>>2]|0;if(!d){d=c[e>>2]|0;if(!d){j=0;break}}else e=f;while(1){f=d+20|0;g=c[f>>2]|0;if
(g|0){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0<i>>>
0)ya();else{c[e>>2]=0;j=d;break}}else{g=c[k+8>>2]|0;if(g>>>0<i>>>0)ya();d
=g+12|0;if((c[d>>2]|0)!=(k|0))ya();e=f+8|0;if((c[e>>2]|0)==(k|0)){c[d>>2]=f;c[e>>2]=g;j=
f;break}else ya()}while(0);if(h|0){d=c[k+28>>2]|0;e=73904+(d<<2)|0;if((k|0)==(c[e>>2]|0)){c[e>
;>2]=j;if(!j){c[18401]=c[18401]&~(1<<d);break}}else{if(h>>>0<(c[18404]|0)>>>
;0)ya();d=h+16|0;if((c[d>>2]|0)==(k|0))c[d>>2]=j;else c[h+20>>2]=j;if(!j)break}f=c[18404]|0;if(j
x3e;>>0<f>>>0)ya();c[j+24>>2]=h;d=k+16|0;e=c[d>>2]|0;do if(e|0)if(e>>
;>0<f>>>0)ya();else{c[j+16>>2]=e;c[e+24>>2]=j;break}while(0);d=c[d+4>>2]|
0;if(d|0)if(d>>>0<(c[18404]|0)>>>0)ya();else{c[j+20>>2]=d;c[d+24>>2]=j;break
}}}else{e=c[k+8>>2]|0;f=c[k+12>>2]|0;d=73640+(g<<1<<2)|0;if((e|0)!=(d|0)){if(e>>
;>0<i>>>0)ya();if((c[e+12>>2]|0)!=(k|0))ya()}if((f|0)==(e|0)){c[18400]=c[18400]&~(1<
;<g);break}if((f|0)!=(d|0)){if(f>>>0<i>>>0)ya();d=f+8|0;if((c[d>>2]|0)==(k|0))
h=d;else ya()}else h=f+8|0;c[e+12>>2]=f;c[h>>2]=e}while(0);if(m>>>0<16){c[n>>2
]=l|o&1|2;b=a+l+4|0;c[b>>2]=c[b>>2]|1;return a|0}else{l=a+b|0;c[n>>2]=o&1|b|2;c[l+4>
;>2]=m|3;b=l+m+4|0;c[b>>2]=c[b>>2]|1;Js(l,m);return a|0}return 0}function Js(a,b){a=a|0;b=b|0;var d=0,e
=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;
if(!(d&3))return;l=a+(0-f)|0;k=f+b|0;i=c[18404]|0;if(l>>>0<i>>>0)ya();if((l|0)==(c[18405
]|0)){a=o+4|0;d=c[a>>2]|0;if((d&3|0)!=3){r=l;g=k;break}c[18402]=k;c[a>>2]=d&-2;c[l+4>>2]=
k|1;c[l+k>>2]=k;return}e=f>>>3;if(f>>>0<256){a=c[l+8>>2]|0;b=c[l+12>
x3e;2]|0;d=73640+(e<<1<<2)|0;if((a|0)!=(d|0)){if(a>>>0<i>>>0)ya();if((c[a
+12>>2]|0)!=(l|0))ya()}if((b|0)==(a|0)){c[18400]=c[18400]&~(1<<e);r=l;g=k;break}if((b|0)!=(d|0)){if(b
x3e;>>0<i>>>0)ya();d=b+8|0;if((c[d>>2]|0)==(l|0))h=d;else ya()}else h=b+8|0;c[a+12>
x3e;2]=b;c[h>>2]=a;r=l;g=k;break}f=c[l+24>>2]|0;b=c[l+12>>2]|0;do if((b|0)==(l|0)){a=l+16|0;b=a+4|
0;d=c[b>>2]|0;if(!d){d=c[a>>2]|0;if(!d){j=0;break}}else a=b;while(1){b=d+20|0;e=c[b>>2]|0;if(e|0){
d=e;a=b;continue}b=d+16|0;e=c[b>>2]|0;if(!e)break;else{d=e;a=b}}if(a>>>0<i>>>0)ya();
else{c[a>>2]=0;j=d;break}}else{e=c[l+8>>2]|0;if(e>>>0<i>>>0)ya();d=e+12|0
;if((c[d>>2]|0)!=(l|0))ya();a=b+8|0;if((c[a>>2]|0)==(l|0)){c[d>>2]=b;c[a>>2]=e;j=b;break
}else ya()}while(0);if(f){d=c[l+28>>2]|0;a=73904+(d<<2)|0;if((l|0)==(c[a>>2]|0)){c[a>>2]=
j;if(!j){c[18401]=c[18401]&~(1<<d);r=l;g=k;break}}else{if(f>>>0<(c[18404]|0)>>>
;0)ya();d=f+16|0;if((c[d>>2]|0)==(l|0))c[d>>2]=j;else c[f+20>>2]=j;if(!j){r=l;g=k;break}}b=c[18404
]|0;if(j>>>0<b>>>0)ya();c[j+24>>2]=f;d=l+16|0;a=c[d>>2]|0;do if(a|0)if(a
x3e;>>0<b>>>0)ya();else{c[j+16>>2]=a;c[a+24>>2]=j;break}while(0);d=c[d+4>
x3e;2]|0;if(d)if(d>>>0<(c[18404]|0)>>>0)ya();else{c[j+20>>2]=d;c[d+24>>2]=
j;r=l;g=k;break}else{r=l;g=k}}else{r=l;g=k}}else{r=a;g=b}while(0);h=c[18404]|0;if(o>>>0<h>>>0
)ya();d=o+4|0;a=c[d>>2]|0;if(!(a&2)){if((o|0)==(c[18406]|0)){q=(c[18403]|0)+g|0;c[18403]=q;c[18406]=r;c[r+4>
x3e;2]=q|1;if((r|0)!=(c[18405]|0))return;c[18405]=0;c[18402]=0;return}if((o|0)==(c[18405]|0)){q=(c[18402]|0)+g|0;c[18402]=q;c[18405
]=r;c[r+4>>2]=q|1;c[r+q>>2]=q;return}g=(a&-8)+g|0;e=a>>>3;do if(a>>>0>
;=256){f=c[o+24>>2]|0;b=c[o+12>>2]|0;do if((b|0)==(o|0)){a=o+16|0;b=a+4|0;d=c[b>>2]|0;if(!d){d=c[a
>>2]|0;if(!d){n=0;break}}else a=b;while(1){b=d+20|0;e=c[b>>2]|0;if(e|0){d=e;a=b;continue}b=d+16|0;e=c[b>
;>2]|0;if(!e)break;else{d=e;a=b}}if(a>>>0<h>>>0)ya();else{c[a>>2]=0;n=d;break}}
else{e=c[o+8>>2]|0;if(e>>>0<h>>>0)ya();d=e+12|0;if((c[d>>2]|0)!=(o|0))ya();
a=b+8|0;if((c[a>>2]|0)==(o|0)){c[d>>2]=b;c[a>>2]=e;n=b;break}else ya()}while(0);if(f|0){d=c[o+28
x3e;>2]|0;a=73904+(d<<2)|0;if((o|0)==(c[a>>2]|0)){c[a>>2]=n;if(!n){c[18401]=c[18401]&~(1
<<d);break}}else{if(f>>>0<(c[18404]|0)>>>0)ya();d=f+16|0;if((c[d>>2]|0)==(
o|0))c[d>>2]=n;else c[f+20>>2]=n;if(!n)break}b=c[18404]|0;if(n>>>0<b>>>0)
ya();c[n+24>>2]=f;d=o+16|0;a=c[d>>2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else
{c[n+16>>2]=a;c[a+24>>2]=n;break}while(0);d=c[d+4>>2]|0;if(d|0)if(d>>>0<(c[18404
]|0)>>>0)ya();else{c[n+20>>2]=d;c[d+24>>2]=n;break}}}else{a=c[o+8>>2]|0;b=c[o+12>
;>2]|0;d=73640+(e<<1<<2)|0;if((a|0)!=(d|0)){if(a>>>0<h>>>0)ya();if((
c[a+12>>2]|0)!=(o|0))ya()}if((b|0)==(a|0)){c[18400]=c[18400]&~(1<<e);break}if((b|0)!=(d|0)){if(b>
x3e;>0<h>>>0)ya();d=b+8|0;if((c[d>>2]|0)==(o|0))m=d;else ya()}else m=b+8|0;c[a+12>>
2]=b;c[m>>2]=a}while(0);c[r+4>>2]=g|1;c[r+g>>2]=g;if((r|0)==(c[18405]|0)){c[18402]=g;return}}else{
c[d>>2]=a&-2;c[r+4>>2]=g|1;c[r+g>>2]=g}d=g>>>3;if(g>>>0<256
){b=73640+(d<<1<<2)|0;a=c[18400]|0;d=1<<d;if(a&d){d=b+8|0;a=c[d>>2]|0;if(a>>
;>0<(c[18404]|0)>>>0)ya();else{p=d;q=a}}else{c[18400]=a|d;p=b+8|0;q=b}c[p>>2]=r;c[q+12>
x3e;2]=r;c[r+8>>2]=q;c[r+12>>2]=b;return}d=g>>>8;if(d)if(g>>>0>16777215)b
=31;else{p=(d+1048320|0)>>>16&8;q=d<<p;o=(q+520192|0)>>>16&4;q=q<<o;
b=(q+245760|0)>>>16&2;b=14-(o|p|b)+(q<<b>>>15)|0;b=g>>>(b+7|0)&
1|b<<1}else b=0;e=73904+(b<<2)|0;c[r+28>>2]=b;c[r+20>>2]=0;c[r+16>>2]=0;d=c[18401
]|0;a=1<<b;if(!(d&a)){c[18401]=d|a;c[e>>2]=r;c[r+24>>2]=e;c[r+12>>2]=r;c[r+8>
x3e;2]=r;return}f=g<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]
x26;-8|0)==(g|0)){b=d;e=127;break}a=d+16+(f>>>31<<2)|0;b=c[a>>2]|0;if(!b){e=124;break}else{f=
f<<1;d=b}}if((e|0)==124){if(a>>>0<(c[18404]|0)>>>0)ya();c[a>>2]=r;c[r+24
x3e;>2]=d;c[r+12>>2]=r;c[r+8>>2]=r;return}else if((e|0)==127){d=b+8|0;a=c[d>>2]|0;q=c[18404]|
0;if(!(a>>>0>=q>>>0&b>>>0>=q>>>0))ya();c[a+12>
x3e;2]=r;c[d>>2]=r;c[r+8>>2]=a;c[r+12>>2]=b;c[r+24>>2]=0;return}}function Ks(){}function
Ls(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (C=d,a-c
>>>0|0)|0}function Ms(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (C=b+d+(c>>>
;0<a>>>0|0)>>>0,c|0)|0}function Ns(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;h=b&3;i=d|d<<8|d<<16|d<<24;g=f&~3;if(h){h=b+4-h|0;while((b|0)
x3c;(h|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(g|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(f|0)){a[b>
x3e;0]=d;b=b+1|0}return b-e|0}function Os(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>>c;return a>>
x3e;c|(b&(1<<c)-1)<<32-c}C=0;return b>>>c-32|0}function Ps(a,b,c){a=a|0;b=b|0;c=c|0;if((
c|0)<32){C=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}C=a<
x3c;c-32;return 0}function Qs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;p=p+1|0;c[a>>2]=p;while((f|0)<(e|0)){if(!(
c[d+(f<<3)>>2]|0)){c[d+(f<<3)>>2]=p;c[d+((f<<3)+4)>>2]=b;c[d+((f<
;<3)+8)>>2]=0;C=e;return d|0}f=f+1|0}e=e*2|0;d=Hs(d|0,8*(e+1|0)|0)|0;d=Qs(a|0,b|0,d|0,e|0)|0;C=e;return d|0}function
Rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;while((f|0)<(d|0)){e=c[b+(f<<3)>>2]|0;if(!e)break;if((e|0)==(a
|0))return c[b+((f<<3)+4)>>2]|0;f=f+1|0}return 0}function Ss(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=
4096)return Ea(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if(!e)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 Ts(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 Ss(b,c,d)|0;return b|0}function Us(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>c;return a>
;>>c|(b&(1<<c)-1)<<32-c}C=(b|0)<0?-1:0;return b>>c-32|0}function Vs(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 Ws(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=_(e,f)|0;d=a>>
;>16;a=(c>>>16)+(_(e,d)|0)|0;e=b>>>16;b=_(e,f)|0;return (C=(a>>>16)+(_(e,d)|0)+(((
a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Xs(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)<
x3c;1;h=Ls(j^a|0,i^b|0,j|0,i|0)|0;g=C;a=f^j;b=e^i;return Ls((at(h,g,Ls(f^c|0,e^d|0,f|0,e|0)|0,C,0)|0)^a|0,C^b|0,a|0,b|0)|0}function
Ys(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+16|0;j=f|0;h=b>>31|((b|0)<0?-1:0)<
x3c;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;a=Ls(h^a|0,g^b|0,h|0,g|0)|0;b=C;at(a,b,Ls(l^d|0,k^e|0,l|0,k|0)|
0,C,j)|0;e=Ls(c[j>>2]^h|0,c[j+4>>2]^g|0,h|0,g|0)|0;d=C;i=f;return (C=d,e)|0}function Zs(a,b,c,d){a=a|0;b=b|0
;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Ws(e,f)|0;a=C;return (C=(_(b,f)|0)+(_(d,e)|0)+a|a&0,c|0|0)|0}function _s(a,b,c,d){a=a|0;
b=b|0;c=c|0;d=d|0;return at(a,b,c,d,0)|0}function $s(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+16|0;f=g|0;at(a,b,d,e,
f)|0;i=g;return (C=c[f+4>>2]|0,c[f>>2]|0)|0}function at(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0
,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(
h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (C=n,f
)|0}else{if(!g){n=0;f=0;return (C=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (C=n,f)|0}}g=(i|0)==0
;do if(h){if(!g){g=(aa(i|0)|0)-(aa(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>
;>>(m>>>0)&b|k<<i;b=k>>>(m>>>0)&b;g=0;i=l<<
i;break}if(!f){n=0;f=0;return (C=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (C=n,f)|0}g=h-1|0;if
(g&h|0){i=(aa(h|0)|0)+33-(aa(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>
31&k>>>(o>>>0)|(k<<m|l>>>(i>>>0))&b;b=b&k
x3e;>>(i>>>0);g=l<<p&j;i=(k<<p|l>>>(o>>>0))&
;j|l<<m&i-33>>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&
;0;p=a|0|0;return (C=o,p)|0}else{p=Vs(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>
;(p>>>0)|0;return (C=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c
[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (C=o,p)|0}if(!l){if(f|0){c[f
x3e;>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>
;0)>>>0;return (C=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&
;0}o=0;p=k>>>((Vs(i|0)|0)>>>0);return (C=o,p)|0}g=(aa(i|0)|0)-(aa(k|0)|0)|0;if(g>>>
0<=30){b=g+1|0;i=31-g|0;h=b;a=k<<i|l>>>(b>>>0);b=k>>>(b>>
x3e;0);g=0;i=l<<i;break}if(!f){o=0;p=0;return (C=o,p)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return
(C=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Ms(m|0,l|0,-1,-1)|0;d=C;j=i;i=0;do{e=j;j=g>>>31
|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Ls(k|0,d|0,
e|0,n|0)|0;p=C;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Ls(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>
x3e;31|((p|0)<0?-1:0)<<1)&l|0)|0;b=C;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4
x3e;>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|
0>>>31)&-2|i;return (C=o,p)|0}function bt(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return
Na[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ct(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Oa[a&63](b|0,c|0,d|0)|0}function
dt(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Pa[a&1](b|0,c|0,d|0,e|0,f|0)}function et(a,b,c,d,e,f,g,h,i,j){a=a|0;b=
b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;return Qa[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)|0}function ft(a,b,c
){a=a|0;b=b|0;c=c|0;Ra[a&7](b|0,c|0)}function gt(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 Sa[a&
3](b|0,c|0,d|0,e|0,f|0,g|0)|0}function ht(a,b){a=a|0;b=b|0;return Ta[a&63](b|0)|0}function it(a,b,c,d){a=a|0;b=b|0;c=c|0;d=
d|0;Ua[a&31](b|0,c|0,d|0)}function jt(a,b){a=a|0;b=b|0;Va[a&63](b|0)}function kt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=
e|0;return Wa[a&31](b|0,c|0,d|0,e|0)|0}function lt(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;Xa[a&7](b|
0,c|0,d|0,e|0,f|0,g|0)}function mt(a,b,c){a=a|0;b=b|0;c=c|0;return Ya[a&127](b|0,c|0)|0}function nt(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 Za[a&31](b|0,c|0,d|0,e|0,f|0)|0}function ot(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;_a[a
x26;15](b|0,c|0,d|0,e|0)}function pt(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;ba(0);return 0}function qt(a,b,c){
a=a|0;b=b|0;c=c|0;ba(1);return 0}function rt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(2)}function st(a,b,c,d,e,f,g,h,i){a=a|0
;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;ba(3);return 0}function tt(a,b){a=a|0;b=b|0;ba(4)}function ut(a,b,c,d,e,f){a=a|
0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ba(5);return 0}function vt(a){a=a|0;ba(6);return 0}function wt(a,b,c){a=a|0;b=b|0;c=c|0;ba(7)}function
xt(a){a=a|0;ba(8)}function yt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(9);return 0}function zt(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;
e=e|0;f=f|0;ba(10)}function At(a,b){a=a|0;b=b|0;ba(11);return 0}function Bt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(12);return
0}function Ct(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(13)}
...
function callMain(args){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"]),"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);try{var ret= Module["_main"](argc,argv,0);exit(ret,true)}catch(e){if(e instanceof ExitStatus){return}else if(e=="SimulateInfiniteLoop"){Module ["noExitRuntime"]=true;return}else{if(e&&typeof e==="object"&&e.stack)Module.printErr("exception thrown: "+[e,e.stack]);throw e}} finally{calledMain=true}}
n/a
function ccallFunc(ident, returnType, argTypes, args, opts){var func=getCFunc(ident);var cArgs=[];var stack=0;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){if(opts &&opts.async){EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(stack)}));return}Runtime.stackRestore(stack )}return ret}
n/a
function Module_createContext(canvas, useWebGL, setInModule, webGLContextAttributes){return Browser.createContext(canvas,useWebGL,setInModule ,webGLContextAttributes)}
...
var Module;if(typeof Module==="undefined")Module={};if(!Module.expectedDataFileDownloads){Module.expectedDataFileDownloads
=0;Module.finishedDataFileDownloads=0}Module.expectedDataFileDownloads++;((function(){var loadPackage=(function(metadata){function
runWithFS(){var fileData0=[];fileData0.push.apply(fileData0,[79,84,84,79,0,13,0,128,0,3,0,80,67,70,70,32,137,224,82,238,0,0,7,132
,0,0,45,223,70,70,84,77,101,130,23,249,0,0,55,12,0,0,0,28,71,68,69,70,0,160,0,4,0,0,53,100,0,0,0,32,71,80,79,83,184,255,184,254,
0,0,54,220,0,0,0,48,71,83,85,66,234,147,151,221,0,0,53,132,0,0,1,88,79,83,47,50,131,156,137,79,0,0,1,64,0,0,0,96,99,109,97,112,146
,230,183,142,0,0,5,184,0,0,1,170,104,101,97,100,251,7,171,9,0,0,0,220,0,0,0,54,104,104,101,97,7,42,2,2,0,0,1,20,0,0,0,36,104,109
,116,120,33,252,29,155,0,0,55,40,0,0,0,234,109,97,120,112,0,115,80,0,0,0,1,56,0,0,0,6,110,97,109,101,152,108,186,46,0,0,1,160,0,
0,4,23,112,111,115,116,0,3,0,1,0,0,7,100,0,0,0,32,0,1,0,0,0,2,0,0,252,84,172,109,95,15,60,245,0,11,3,232,0,0,0,0,204,138,51,83,0
,0,0,0,204,138,51,83,0,87,255,44,2,124,4,82,0,0,0,8,0,2,0,0,0,0,0,0,0,1,0,0,4,82,255,44,0,90,2,211,0,0,0,0,2,124,0,1,0,0,0,0,0,0
,0,0,0,0,0,0,0,0,0,2,0,0,80,0,0,115,0,0,0,3,2,211,1,144,0,5,0,0,2,138,2,188,0,0,0,140,2,138,2,188,0,0,1,224,0,49,1,2,0,0,2,0,5,9
,0,0,0,0,0,0,0,0,0,35,0,0,42,0,0,0,0,0,0,0,0,0,80,102,69,100,0,64,0,32,37,160,3,32,255,56,0,90,4,82,0,212,0,0,0,1,0,0,0,0,2,56,3
,12,0,32,0,32,0,1,0,0,0,24,1,38,0,1,0,0,0,0,0,0,0,86,0,174,0,1,0,0,0,0,0,1,0,4,1,15,0,1,0,0,0,0,0,2,0,7,1,36,0,1,0,0,0,0,0,3,0,33
,1,112,0,1,0,0,0,0,0,4,0,5,1,158,0,1,0,0,0,0,0,5,0,10,1,186,0,1,0,0,0,0,0,6,0,4,1,207,0,1,0,0,0,0,1,0,0,16,2,224,0,1,0,0,0,0,1,1
,0,23,2,166,0,1,0,0,0,0,1,2,0,20,2,97,0,1,0,0,0,0,1,3,0,15,2,39,0,1,0,0,0,0,1,4,0,16,1,246,0,3,0,1,4,9,0,0,0,172,0,0,0,3,0,1,4,9
,0,1,0,8,1,5,0,3,0,1,4,9,0,2,0,14,1,20,0,3,0,1,4,9,0,3,0,66,1,44,0,3,0,1,4,9,0,4,0,10,1,146,0,3,0,1,4,9,0,5,0,20,1,164,0,3,0,1,4
,9,0,6,0,8,1,197,0,3,0,1,4,9,1,0,0,32,2,190,0,3,0,1,4,9,1,1,0,46,2,118,0,3,0,1,4,9,1,2,0,40,2,55,0,3,0,1,4,9,1,3,0,30,2,7,0,3,0,
1,4,9,1,4,0,32,1,212,0,77,0,97,0,116,0,116,0,104,0,101,0,119,0,32,0,83,0,107,0,97,0,108,0,97,0,32,0,40,0,50,0,48,0,49,0,49,0,45,
0,49,0,50,0,41,0,59,0,32,0,98,0,97,0,115,0,101,0,100,0,32,0,111,0,110,0,32,0,99,0,111,0,100,0,101,0,32,0,98,0,121,0,32,0,82,0,105
,0,99,0,104,0,97,0,114,0,100,0,32,0,66,0,46,0,32,0,87,0,97,0,108,0,101,0,115,0,32,0,40,0,49,0,57,0,56,0,56,0,45,0,56,0,57,0,41,0
,32,0,97,0,110,0,100,0,32,0,84,0,111,0,114,0,32,0,76,0,105,0,108,0,108,0,113,0,118,0,105,0,115,0,116,0,0,77,97,116,116,104,101,119
,32,83,107,97,108,97,32,40,50,48,49,49,45,49,50,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,82,105,99,104
,97,114,100,32,66,46,32,87,97,108,101,115,32,40,49,57,56,56,45,56,57,41,32,97,110,100,32,84,111,114,32,76,105,108,108,113,118,105
,115,116,0,0,79,0,67,0,82,0,65,0,0,79,67,82,65,0,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,0,82,101,103,117,108,97,114,0,0,70,0,
111,0,110,0,116,0,70,0,111,0,114,0,103,0,101,0,32,0,50,0,46,0,48,0,32,0,58,0,32,0,79,0,67,0,82,0,32,0,65,0,32,0,58,0,32,0,50,0,55
,0,45,0,57,0,45,0,50,0,48,0,49,0,50,0,0,70,111,110,116,70,111,114,103,101,32,50,46,48,32,58,32,79,67,82,32,65,32,58,32,50,55,45,
57,45,50,48,49,50,0,0,79,0,67,0,82,0,32,0,65,0,0,79,67,82,32,65,0,0,86,0,101,0,114,0,115,0,105,0,111,0,110,0,32,0,50,0,32,0,0,86
,101,114,115,105,111,110,32,50,32,0,0,79,0,67,0,82,0,65,0,0,79,67,82,65,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,
32,0,104,0,121,0,112,0,104,0,101,0,110,0,0,65,108,116,101,114,110,97,116,101,32,104,121,112,104,101,110,0,0,65,0,108,0,116,0,101
,0,114,0,110,0,97,0,116,0,101,0,32,0,99,0,111,0,109,0,109,0,97,0,0,65,108,116,101,114,110,97,116,101,32,99,111,109,109,97,0,0,65
,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,97,0,112,0,111,0,115,0,116,0,114,0,111,0,112,0,104,0,101,0,0,65,108,116,101
,114,110,97,116,101,32,97,112,111,115,116,114,111,112,104,101,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,113,0
,117,0,101,0,115,0,116,0,105,0,111,0,110,0,32,0,109,0,97,0,114,0,107,0,0,65,108,116,101,114,110,97,116,101,32,113,117,101,115,116
,105,111,110,32,109,97,114,107,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,112,0,101,0,114,0,105,0,111,0,100,0,
0,65,108,116,101,114,110,97,116,101,32,112,101,114,105,111,100,0,0,0,0,0,3,0,0,0,3,0,0,0,28,0,1,0,0,0,0,0,164,0,3,0,1,0,0,0,28,0
,4,0,136,0,0,0,30,0,16,0,3,0,14,0,93,0,125,0,163,0,165,0,198,0,209,0,214,0,216,0,220,2,198,2,220,36,66,37,2,37,160,255,255,0,0,0
,32,0,95,0,163,0,165,0,196,0,209,0,214,0,216,0,220,2,198,2,220,36,64,37,2,37,160,255,255,255,225,255,225,255,192,255,191,255,167
,255,157,255,153,255,152,255,149,253,121,253,131,220,40,219,112,218,192,0,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,1,6,0,0,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,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,0,64,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,91,92,93,94,0,0,107,108,0,0,110,111,113,0
,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,109,112,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,95,0,0,0,0,0,0,0,0,0,0,0,
3,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,0,0,0,0,0,1,0,4,4,0,1,1,1,5,79,67,82,65,0,1,2,0,1,0,52,248,37,0,248,38,1,248
,39,2,248,40,3,248,24,4,140,12,1,139,12,3,139,12,4,226,251,104,249,16,250,230,5,28,1,37,15,28,0,0,16,28,2,10,17,28,0,52,28,44,255
,18,0,14,2,0,1,0,8,0,18,0,30,0,45,0,54,0,64,0,71,0,78,0,85,0,92,0,93,0,179,0,184,0,188,117,110,105,50,53,65,48,112,101,114,105,111
,100,46,97,108,116,113,117,101,115,116,105,111,110,46,97,108,116,113,117,111,116,101,115,105,110,103,108,101,46,97,108,116,99,111
,109,109,97,46,97,108,116,104,121,112,104,101,110,46,97,108,116,117,110,105,50,52,52,48,117,110,105,50,52,52,49,117,110,105,50,52
,52,50,117,110,105,50,53,48,50,50,77,97,116,116,104,101,119,32,83,107,97,108,97,32,40,50,48,49,49,45,49,50,41,59,32,98,97,115,101
,100,32,111,110,32,99,111,100,101,32,98,121,32,82,105,99,104,97,114,100,32,66,46,32,87,97,108,101,115,32,40,49,57,56,56,45,56,57
,41,32,97,110,100,32,84,111,114,32,76,105,108,108,113,118,105,115,116,79,67,82,32,65,79,67,82,65,0,0,0,0,1,0,2,0,3,0,4,0,5,0,6,0
,7,0,104,0,9,0,10,0,11,0,12,0,13,0,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,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,54,0,55,0,56,0,57,0,58
,0,59,0,60,0,61,0,62,0,126,0,64,0,124,0,66,0,67,0,68,0,69,0,70,0,71,0,72,0,73,0,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,94,0,127,1,135,1,136,1,137,0,98,0,100,1,138,1,139,1,140,1,141,1,142,1,143,0,
173,0,175,0,138,0,186,0,189,0,141,0,195,1,144,0,115,2,0,1,0,2,0,3,0,83,0,176,1,63,1,187,2,61,2,234,3,34,3,139,3,246,4,140,4,211,
5,14,5,53,5,71,5,130,5,188,6,14,6,92,6,201,7,21,7,123,7,211,8,39,8,144,8,232,9,27,9,119,9,196,9,216,10,39,10,170,11,66,11,143,11
,243,12,105,12,231,13,39,13,99,13,228,14,46,14,118,14,188,15,28,15,68,15,149,15,210,16,117,16,190,17,91,17,192,18,53,18,125,18,197
,19,19,19,142,20,9,20,87,20,138,20,206,21,11,21,83,21,150,21,183,21,243,22,121,23,30,23,143,23,241,24,117,24,203,25,137,25,231,26
,82,26,217,27,62,27,121,27,254,28,88,28,228,29,153,29,252,30,80,30,236,31,77,31,171,32,7,32,141,33,8,33,124,33,201,34,51,34,94,34
,199,35,51,35,66,35,109,35,221,36,79,36,202,37,3,37,58,37,70,37,124,37,187,38,0,38,114,38,227,39,107,39,238,40,193,41,142,41,252
,42,11,14,14,139,247,35,249,17,119,1,247,178,247,43,3,247,178,190,21,111,162,116,167,30,188,6,167,162,162,167,31,181,7,167,116,161
,111,30,90,6,111,116,117,111,31,249,17,4,164,252,19,5,141,111,160,117,167,139,8,165,163,160,168,31,164,248,19,139,142,5,165,115,
160,112,30,90,6,111,116,116,112,31,14,249,59,240,1,247,55,238,3,247,3,249,110,21,191,251,157,5,144,116,159,121,164,139,163,139,160
,157,143,162,8,181,247,106,247,6,139,180,251,97,5,139,137,138,137,139,137,139,115,165,119,165,139,170,139,155,163,144,165,153,216
,154,221,159,212,8,153,7,140,144,140,145,139,144,139,143,138,143,143,12,37,171,252,134,102,7,138,134,138,135,139,135,8,14,247,189
,240,247,3,240,247,62,119,1,247,104,240,236,240,3,247,5,247,240,21,111,161,116,167,30,188,251,11,6,111,161,116,167,167,162,162,167
,30,247,11,236,251,11,7,111,162,116,167,167,161,162,167,30,247,11,188,7,167,162,162,167,166,116,162,111,31,90,247,3,188,6,167,162
,162,167,167,116,161,111,31,90,247,12,6,166,117,162,111,111,116,116,112,30,251,12,42,247,12,7,166,116,162,111,111,117,116,112,30
,251,12,90,7,111,117,117,111,111,161,116,167,31,188,251,3,90,6,111,117,116,112,31,247,92,189,21,247,3,236,251,3,7,14,160,118,247
,62,240,207,241,207,240,247,62,119,1,247,5,239,237,240,237,240,3,20,112,247,5,247,112,21,111,161,117,167,30,247,40,251,11,6,111,
162,116,167,166,162,162,167,30,247,11,247,40,7,167,162,161,167,31,247,62,7,167,116,162,111,30,251,239,207,247,239,6,167,162,162,
167,167,116,161,111,31,251,40,247,12,6,166,116,162,112,111,116,116,112,30,251,12,251,40,7,111,117,117,111,31,251,62,7,111,161,116
,167,30,247,239,71,251,239,6,111,117,116,111,31,14,139,247,78,248,44,247,78,1,247,5,247,92,236,247,93,3,247,5,247,27,21,111,161,
117,167,30,155,139,154,146,148,151,8,248,33,248,146,5,146,147,143,150,139,151,139,167,116,161,111,139,123,139,124,132,130,127,8,
252,33,252,146,5,132,131,136,128,139,127,8,248,146,4,111,161,116,167,30,238,6,167,162,162,167,31,224,7,166,116,162,111,30,40,6,111
,117,116,112,31,247,189,253,59,21,111,162,116,167,30,238,6,167,162,162,167,31,223,7,167,116,162,111,30,40,6,111,116,116,111,31,14
,139,240,248,129,240,1,247,5,240,247,88,240,3,247,5,247,43,21,57,207,70,222,30,237,6,151,139,150,144,148,146,8,213,202,194,80,5,
148,129,152,133,154,139,167,139,162,162,139,167,139,152,133,151,131,148,8,87,195,5,161,157,183,163,139,176,139,167,116,162,111,139
,126,139,128,134,130,132,8,88,95,32,247,6,247,17,246,5,150,148,145,154,139,154,8,208,7,221,71,208,56,30,43,6,56,71,70,57,31,70,7
,139,126,144,126,147,130,8,235,37,47,60,5,128,129,133,126,139,123,8,240,70,21,139,185,217,205,246,251,6,83,91,60,139,5,112,116,161
,167,31,247,236,4,188,7,167,162,161,166,30,235,6,165,163,115,113,31,139,93,251,3,45,5,14,249,160,119,18,247,153,247,93,251,93,239
,19,160,247,153,248,26,21,111,162,117,167,30,163,139,158,155,145,161,8,238,247,229,5,19,192,140,144,140,144,139,144,8,166,116,162
,111,30,40,6,111,116,116,112,31,14,160,118,249,160,119,1,247,153,240,3,247,153,247,186,21,139,87,158,97,163,108,8,247,9,251,42,5
,148,128,154,131,155,139,167,139,161,162,139,167,139,150,135,150,133,148,8,251,9,247,41,5,127,155,129,160,139,165,8,247,84,7,139
,165,149,160,151,155,8,247,9,247,41,5,145,148,143,150,139,151,139,166,117,162,111,139,123,139,124,131,130,128,8,251,9,251,42,5,115
,108,120,97,139,87,8,14,160,118,249,160,119,1,247,253,240,3,247,104,190,21,111,161,116,167,30,155,139,154,147,148,150,8,247,9,247
,42,5,163,170,158,181,139,191,8,247,84,7,139,191,120,181,115,170,8,251,9,247,42,5,130,150,124,147,123,139,111,139,117,116,139,112
,139,127,143,128,145,130,8,247,9,251,41,5,151,123,149,118,139,113,8,251,84,7,139,113,129,118,127,123,8,251,9,251,41,5,133,130,135
,128,139,128,8,14,247,203,240,3,247,5,247,112,21,111,161,117,167,30,152,139,150,143,148,147,8,247,7,237,139,251,37,5,111,162,117
,167,166,162,161,167,30,139,247,37,247,7,41,5,148,131,150,135,152,139,167,139,162,161,139,167,139,155,132,152,128,149,8,251,45,247
,23,247,45,247,23,5,150,149,146,152,139,155,139,167,116,161,111,139,126,139,128,135,130,131,8,251,7,41,139,247,37,5,167,116,161,
112,111,116,117,111,30,139,251,37,251,7,237,5,130,147,128,143,126,139,111,139,117,117,139,111,139,123,145,126,150,129,8,247,45,251
,23,251,45,251,23,5,128,129,133,126,139,123,8,14,247,232,240,1,247,203,240,3,247,5,248,26,21,111,161,117,167,30,247,40,251,40,6,
111,162,116,167,166,162,162,167,30,247,40,247,40,7,167,162,161,167,167,116,162,111,31,251,40,247,40,6,166,116,162,112,111,116,116
,112,30,251,40,251,40,7,111,117,116,111,31,14,160,118,247,147,240,18,247,104,247,191,38,240,19,224,247,104,247,197,21,111,161,117
,167,30,19,208,247,40,251,96,6,111,162,116,167,167,161,162,167,30,19,224,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31
,14,247,189,247,36,1,247,5,247,240,21,111,161,116,167,30,248,33,6,167,162,162,167,31,181,7,167,116,162,111,30,252,33,6,111,117,116
,111,31,14,247,19,247,78,1,247,153,247,93,3,247,153,247,70,21,32,10,14,160,118,249,160,119,1,247,5,190,21,111,161,116,167,30,158
,139,155,149,148,154,8,248,33,249,59,5,143,147,142,147,139,149,139,166,116,162,111,139,120,139,123,129,130,124,8,252,33,253,59,5
,135,131,137,131,139,130,8,14,139,240,248,214,240,1,247,5,240,247,188,240,3,247,5,240,21,84,185,93,194,30,247,188,6,193,186,186,
193,31,248,214,7,193,92,186,85,30,251,188,6,84,93,93,84,31,240,252,214,21,248,214,247,188,252,214,7,14,139,240,248,214,240,18,247
,5,247,191,38,240,237,240,19,232,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,247,146,7,167,116,162,111,111,117,116
,111,30,251,96,7,19,216,41,249,59,251,141,6,19,232,111,117,116,112,111,161,116,167,31,19,216,247,40,252,214,251,40,6,111,117,116
,112,31,14,139,240,247,131,239,247,131,240,1,247,5,240,247,188,240,3,20,224,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31
,251,238,247,131,247,188,6,193,186,185,193,31,247,131,7,193,92,186,85,30,251,239,6,111,117,116,112,111,161,116,167,31,247,239,251
,131,251,188,6,84,93,94,84,31,14,139,240,247,131,240,247,130,240,1,248,146,240,3,20,224,247,5,190,21,111,161,116,167,30,247,239,
6,193,186,186,193,31,247,80,7,139,177,124,175,114,166,164,166,154,174,139,178,8,247,80,7,193,92,186,85,30,251,239,6,111,117,116,
112,111,161,116,167,31,247,239,251,80,6,112,116,116,111,30,251,89,6,111,117,116,111,111,161,117,167,31,247,89,6,166,163,115,112,
31,251,80,251,239,7,111,117,116,112,31,14,160,118,247,147,240,248,60,119,1,247,29,240,247,89,240,3,247,29,247,147,21,247,190,251
,96,6,111,162,116,167,166,162,162,167,30,247,96,7,167,161,161,167,167,117,162,111,31,247,181,7,167,116,161,112,111,116,117,111,30
,251,181,251,89,248,10,7,166,117,162,111,111,116,116,112,30,14,139,240,84,236,247,89,240,247,130,240,18,247,104,240,247,89,240,20
,176,19,124,247,5,232,21,139,118,151,121,157,131,8,19,188,181,121,181,111,195,139,8,247,119,6,193,186,186,193,31,247,131,7,193,92
,186,85,30,251,89,247,130,247,139,6,167,162,162,167,166,116,162,111,31,251,240,252,76,247,190,251,131,251,129,6,49,177,5,19,124,
133,142,132,140,132,139,8,111,117,117,111,31,14,139,240,247,46,240,247,215,240,18,247,5,247,42,251,42,239,247,189,240,19,236,247
,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,247,146,7,167,116,162,111,30,251,239,247,215,6,19,244,167,161,162,167,31
,19,236,166,117,162,111,30,89,6,19,244,111,117,116,112,31,19,236,239,253,9,21,247,46,247,189,251,46,7,14,160,118,249,59,240,1,247
,203,240,237,240,3,247,5,249,67,21,111,161,117,167,30,164,139,160,157,143,163,8,247,189,251,73,6,251,73,251,46,5,128,129,132,125
,139,124,8,251,146,7,111,162,116,167,166,162,162,167,30,139,247,123,247,73,247,46,5,150,149,146,153,139,154,8,247,197,252,84,7,111
,117,116,112,31,14,139,240,247,131,240,247,130,240,18,247,5,239,139,239,236,239,139,240,19,240,247,5,240,21,19,234,84,185,93,193
,30,247,189,6,193,186,186,193,31,247,131,7,19,228,193,92,186,85,30,19,234,247,181,7,166,118,162,111,30,251,91,6,111,118,116,112,
31,251,181,7,19,240,84,94,92,85,31,239,251,131,21,247,131,7,19,242,247,189,251,131,6,19,236,251,89,247,232,21,247,130,236,251,130
,7,14,139,240,247,215,240,247,46,240,18,247,5,239,247,139,247,43,38,240,19,244,247,5,248,111,21,111,161,116,167,30,247,239,251,215
,6,19,248,111,117,116,112,31,19,244,111,161,116,167,30,189,6,19,248,167,162,162,167,31,19,244,249,59,7,166,116,162,111,30,252,33
,6,111,117,116,112,31,239,251,97,21,247,46,247,189,251,46,7,14,247,19,247,78,247,46,247,78,1,247,153,247,93,3,247,153,247,70,21,
32,10,247,146,4,111,162,117,167,30,238,6,167,162,161,167,31,224,7,167,116,162,111,30,40,6,111,116,116,111,31,14,160,118,247,147,
240,247,45,247,78,18,247,104,247,92,137,240,19,240,247,104,247,197,21,111,161,117,167,30,19,232,247,40,251,96,6,111,162,116,167,
167,161,162,167,30,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31,19,240,247,147,4,111,161,116,167,30,239,6,166,162,162
,167,31,224,7,167,116,161,112,30,39,6,111,117,117,111,31,14,247,5,248,4,21,139,120,149,124,153,130,8,248,33,251,125,5,147,134,148
,137,148,139,167,139,162,161,139,167,139,158,128,155,125,148,8,251,251,247,103,247,251,247,103,5,153,148,150,155,139,158,139,167
,116,161,111,139,130,139,130,137,131,134,8,252,33,251,125,5,125,130,129,123,139,120,8,14,247,147,240,247,3,240,1,247,5,247,197,21
,33,10,247,104,4,33,10,14,247,5,247,27,21,111,161,117,167,30,148,139,148,141,147,144,8,248,38,247,128,5,152,147,146,155,139,156,
8,181,7,139,158,128,155,125,148,8,252,33,247,125,5,131,144,130,141,130,139,111,139,117,117,139,111,139,120,149,123,153,130,8,247
,252,251,103,251,252,251,103,5,125,130,129,123,139,120,8,14,139,240,249,59,119,1,247,104,240,3,247,5,248,111,21,111,161,116,167,
30,152,139,150,144,148,146,8,247,157,247,119,188,97,139,101,251,173,251,131,5,128,130,133,124,139,124,8,54,7,111,161,117,167,167
,162,161,167,30,139,201,247,172,247,131,5,150,149,146,152,139,155,8,224,7,139,154,132,153,128,148,8,40,224,5,130,146,127,144,127
,139,126,139,128,134,130,12,37,251,190,251,147,5,128,130,133,125,139,124,8,238,252,60,21,111,161,116,167,167,162,162,167,166,116
,162,111,111,117,116,112,30,14,139,240,247,173,240,247,88,240,1,247,5,240,236,240,237,240,3,20,224,20,28,247,5,247,42,21,57,206,
71,221,30,177,139,174,154,166,163,165,115,174,124,177,139,8,220,208,207,221,31,248,88,7,235,58,221,42,30,251,35,6,93,139,96,120,
105,108,118,120,106,109,139,103,139,111,161,116,167,139,158,139,157,150,147,155,153,166,171,170,175,139,8,247,35,6,181,174,104,97
,31,252,88,7,113,117,116,112,112,117,161,166,30,247,174,7,167,116,162,112,30,39,6,57,72,71,57,31,240,251,75,21,247,75,7,166,160,
161,166,30,188,251,124,6,112,117,117,112,112,118,161,166,30,14,160,118,247,62,240,248,145,119,1,247,2,190,21,111,163,116,167,30,
162,139,159,154,145,160,8,178,247,26,247,115,139,178,251,26,5,145,118,158,124,162,139,8,167,163,162,167,31,251,94,249,73,5,133,160
,118,154,117,139,116,139,120,124,133,118,8,106,252,109,21,220,247,170,221,251,170,5,14,139,240,247,131,240,247,130,240,1,247,5,240
,247,188,240,3,247,5,22,247,188,6,247,2,231,232,247,1,31,176,7,139,198,111,194,97,176,181,176,167,194,139,198,8,176,7,247,1,47,232
,251,2,30,251,188,6,240,253,59,21,247,131,247,87,7,193,186,92,85,31,102,7,85,92,92,85,30,251,87,247,232,21,247,130,247,87,7,193,
186,92,85,31,102,7,85,92,93,85,30,14,139,240,248,214,240,1,247,5,240,3,247,5,248,26,21,139,98,149,107,153,109,171,69,174,73,174,
72,162,94,189,100,201,139,8,247,78,6,167,162,162,167,166,116,162,111,31,251,78,6,119,139,122,152,132,154,8,36,247,95,5,131,156,134
,157,139,162,139,162,144,157,156,12,37,242,247,95,5,146,154,156,152,159,139,8,247,78,6,167,162,162,167,166,116,162,111,31,251,78
,6,77,139,86,102,118,93,8,38,251,96,5,125,110,129,106,139,98,8,14,139,240,248,214,240,1,247,104,240,247,89,240,3,247,5,190,21,111
,161,116,167,30,247,78,6,201,139,192,176,160,185,8,240,247,96,5,153,168,150,173,139,179,139,179,128,173,125,168,8,37,247,95,5,116
,184,89,178,77,139,8,251,78,6,111,117,116,112,111,161,116,167,31,188,252,214,90,6,111,117,116,112,31,247,92,189,21,248,214,175,7
,159,139,156,126,146,124,8,242,251,95,5,147,123,145,119,139,117,139,117,132,120,122,12,37,36,251,95,5,132,124,122,126,119,139,8,
14,139,240,247,131,240,247,130,240,1,247,5,240,3,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31,251,238,247,131,247,40,6,166
,162,161,167,167,116,162,112,31,251,40,247,130,247,238,6,167,162,162,167,166,116,162,111,31,252,83,6,14,160,118,248,60,240,247,46
,240,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,248,9,247,139,7,167,161,162,167,167,117,161,111,31,251,139,247
,46,247,238,6,167,162,162,167,166,116,162,111,31,252,83,6,14,139,240,247,46,240,247,215,240,18,247,5,240,247,39,247,142,38,240,19
,244,247,5,247,44,21,56,206,70,223,30,247,87,6,222,208,208,222,31,247,96,251,92,7,19,248,111,117,116,111,111,161,117,167,31,19,244
,238,36,6,111,115,116,112,30,251,87,6,112,116,162,167,31,247,163,7,139,165,148,159,151,155,8,247,28,247,66,5,147,150,153,148,157
,139,8,247,41,6,167,162,162,167,166,116,162,111,31,251,41,6,86,139,97,113,114,107,8,251,28,251,68,5,115,108,121,99,139,87,8,14,160
,118,247,232,240,247,231,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,247,181,247,188,251,181,7
,111,161,116,167,167,162,162,167,30,249,59,7,166,116,162,111,111,117,116,112,30,251,181,251,188,247,181,7,166,116,162,111,111,117
,116,112,30,14,139,240,248,214,240,1,247,203,240,3,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251
,40,248,214,247,40,6,167,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,111,161,116,167,31,247,40,252,214,251,40,6,111,
117,116,112,31,14,139,240,249,59,119,1,247,54,240,247,89,240,3,247,54,247,43,21,56,208,71,222,30,234,6,222,208,208,221,31,248,215
,7,166,116,162,111,111,117,116,112,30,252,215,7,112,116,116,111,30,44,6,111,116,161,167,31,247,46,7,167,117,162,111,111,116,116,
111,30,14,160,118,249,160,119,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,121,247,205,251,160,5,148,132
,150,134,152,139,167,139,162,162,139,167,139,154,132,153,128,148,8,251,244,247,193,247,244,247,193,5,150,148,146,153,139,155,139
,166,116,162,111,139,126,139,128,134,130,132,8,251,205,251,160,139,247,122,5,166,116,162,111,111,117,116,112,30,14,139,240,249,59
,119,1,247,5,240,3,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31,251,238,249,9,6,166,116,162,111,111,117,116,112,30,14,160
,118,249,160,119,1,247,5,240,236,240,237,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,248,224,236,251,30,139,113,5,
111,162,116,167,166,162,162,167,30,139,165,237,247,32,139,252,226,5,111,161,116,167,167,162,162,167,30,249,109,251,19,7,251,14,251
,67,251,15,247,67,251,18,139,5,14,160,118,249,160,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,
139,248,185,247,155,252,236,247,26,139,139,249,110,5,166,116,162,111,111,117,116,112,30,139,252,188,251,156,248,238,251,25,139,5
,14,139,240,248,214,240,1,247,5,240,247,188,240,3,247,5,248,26,21,139,98,148,106,154,110,8,246,251,107,5,159,101,182,105,193,139
,194,139,182,173,159,177,8,246,247,107,5,153,168,150,173,139,179,139,179,128,173,125,168,8,32,247,107,5,119,177,96,173,84,139,85
,139,96,105,119,101,8,32,251,107,5,125,110,129,106,139,98,8,247,6,197,21,247,0,247,105,5,144,149,148,147,151,139,151,139,150,130
,143,12,37,247,0,251,105,5,147,123,145,119,139,117,139,117,132,120,122,12,37,32,251,107,5,134,129,130,133,125,139,127,139,129,147
,135,148,8,251,0,247,106,5,131,156,134,157,139,162,139,162,144,157,156,12,37,14,160,118,247,189,240,247,173,240,1,247,5,240,247,
188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,247,138,247,137,7,222,208,208,222,31,247,72,7,221,70,208,56,30,251,238
,6,240,252,18,21,247,173,247,137,7,165,164,116,112,31,251,72,7,111,115,116,112,30,14,139,240,249,59,119,1,247,5,240,236,247,13,217
,240,3,247,5,247,15,21,72,194,83,206,30,172,139,166,152,158,156,8,214,203,176,45,247,26,139,5,167,162,162,167,166,116,162,111,31
,74,139,115,200,5,201,191,217,189,139,247,3,8,247,174,7,206,82,195,72,30,107,139,110,126,121,122,8,251,117,251,82,5,100,105,108,
85,139,72,8,240,251,174,21,247,174,7,139,174,154,165,158,156,8,247,124,247,87,146,139,5,152,149,130,127,31,251,174,7,139,80,93,113
,107,111,126,173,127,199,94,139,111,139,116,116,139,111,139,133,140,132,141,134,8,176,45,251,0,47,131,139,5,126,131,148,152,31,14
,160,118,248,60,240,247,46,240,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,248,9,208,7,247,125,252
,35,5,148,124,155,129,158,139,167,139,162,162,139,167,139,148,136,147,135,147,8,251,95,247,240,197,139,5,221,209,209,221,31,191,
7,222,70,208,56,30,251,238,6,240,251,147,21,247,46,247,137,7,166,163,116,111,31,87,7,112,115,115,112,30,14,139,240,248,214,240,1
,247,5,240,247,188,240,3,247,5,247,27,21,65,201,78,212,30,247,141,6,203,139,187,192,141,200,139,167,128,164,125,156,8,252,8,248,
114,139,143,139,142,5,146,146,142,144,30,247,141,6,157,156,123,121,111,161,116,167,167,162,162,167,213,76,200,66,31,251,141,6,78
,87,88,79,31,136,7,139,111,149,115,152,121,8,248,10,252,118,5,131,132,134,133,30,251,141,6,120,124,154,158,167,116,162,111,111,117
,116,111,31,14,160,118,248,230,247,78,38,240,18,247,5,240,236,240,237,240,19,220,247,5,249,25,21,111,161,116,167,167,162,162,167
,30,19,188,173,236,253,8,7,111,162,116,167,166,162,162,167,30,249,8,237,105,7,19,220,111,161,116,167,167,162,162,167,30,19,188,247
,27,252,134,7,14,139,240,249,59,119,1,247,5,240,247,188,240,3,247,5,247,43,21,57,207,70,222,30,247,87,6,222,208,208,221,31,248,215
,7,166,116,162,111,111,117,116,112,30,252,215,7,112,114,116,113,30,251,87,6,112,116,161,167,31,248,215,7,166,116,162,111,111,117
,116,112,30,14,160,118,249,160,119,1,247,5,240,247,188,240,3,247,5,248,185,21,247,93,252,153,5,147,120,157,126,161,139,160,139,157
,152,147,158,8,247,94,248,154,139,247,72,5,166,116,162,111,111,117,116,112,30,139,251,53,251,40,252,14,251,40,248,14,139,247,53,
5,166,116,162,111,111,117,116,112,30,14,139,240,249,59,119,1,247,5,240,236,240,237,240,3,247,5,247,14,21,195,42,5,148,124,156,129
,158,139,8,236,6,164,139,154,156,150,157,149,120,155,123,163,139,8,237,6,158,139,155,149,148,154,8,196,236,139,248,244,5,166,116
,162,111,111,117,116,112,30,139,252,217,110,91,98,139,5,131,153,130,159,128,156,8,247,215,7,167,116,161,112,111,116,117,111,30,251
,215,7,128,122,130,119,131,125,8,98,139,111,187,139,248,217,5,166,116,162,111,111,117,116,112,30,14,160,118,249,160,119,1,247,5,
190,21,111,161,116,167,30,158,139,155,149,148,154,8,247,47,247,156,247,46,251,156,5,148,124,155,129,158,139,167,139,162,162,139,
167,139,148,136,147,135,147,8,251,76,247,206,247,76,247,206,5,143,147,142,147,139,149,139,166,116,162,111,139,120,139,123,129,130
,124,8,251,46,251,156,251,47,247,156,5,130,154,123,149,120,139,111,139,117,116,139,112,139,129,141,131,143,131,8,247,76,251,206,
251,76,251,206,5,135,131,137,131,139,130,8,14,160,118,249,160,119,1,247,5,240,236,240,236,241,3,247,5,249,7,21,247,90,251,146,139
,251,214,5,111,162,116,167,166,162,162,167,30,139,247,214,247,91,247,146,139,242,5,166,116,162,111,111,116,116,112,30,139,71,251
,39,251,82,251,40,247,82,139,207,5,166,116,162,111,111,117,116,112,30,14,139,240,248,214,240,1,247,4,203,21,140,75,248,83,139,5,
167,162,162,167,166,116,162,111,31,251,201,139,247,252,248,251,139,203,252,84,139,5,111,117,116,112,111,161,116,167,31,247,201,6
,14,139,240,248,214,240,1,247,5,239,187,240,3,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,90
,248,214,247,90,6,167,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,31,239,253,9,21,248,214,187,252,214,7,14,160,118,249
,160,119,1,247,5,249,110,21,139,129,141,131,143,131,8,248,33,253,59,5,148,124,155,129,158,139,167,139,162,162,139,167,139,148,136
,147,135,147,8,252,33,249,59,5,130,154,123,149,120,139,111,139,117,116,139,112,8,14,139,240,248,214,240,1,247,253,240,187,240,3,
247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,249,59,7,166,116,162,111,30,252,33,6,111,117,116,112,111,161,116,167
,31,247,90,252,214,251,90,6,111,117,116,112,31,247,241,189,21,248,214,187,252,214,7,14,247,4,247,82,21,140,127,5,111,161,116,167
,30,157,139,154,148,147,151,8,247,50,247,128,247,49,251,128,5,147,127,154,130,157,139,167,139,162,162,139,167,139,146,137,146,136
,146,8,251,92,248,20,5,131,155,122,150,120,139,119,139,122,128,131,123,8,14,38,240,1,247,5,89,21,111,161,116,167,30,248,33,6,167
,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,31,14,249,160,119,1,247,54,249,110,21,139,123,146,125,150,130,8,247,190
,251,147,5,147,133,149,133,153,139,167,139,162,162,139,167,139,148,137,147,135,146,8,251,95,247,154,5,130,151,124,146,123,139,8,
40,6,111,116,116,112,31,14,139,240,247,46,240,247,3,240,18,247,5,240,247,177,238,45,246,19,244,247,5,247,42,21,57,206,71,221,30,
247,41,6,148,139,148,141,146,144,8,213,182,5,112,161,116,166,167,163,161,167,30,19,248,126,248,9,5,136,218,74,205,57,139,8,251,78
,6,111,117,116,111,111,161,117,167,31,247,78,6,195,139,132,76,141,84,125,144,124,141,124,139,8,251,85,6,57,72,71,57,31,240,83,21
,195,7,165,161,162,165,30,247,85,6,19,244,163,164,116,115,31,139,95,32,76,251,27,139,5,112,118,161,166,31,14,139,240,248,2,240,247
,104,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,154,7,174,107,177,105,201,139,8,214,6,180,139
,172,155,162,159,180,175,188,173,139,214,8,247,98,7,139,189,115,178,110,164,104,169,104,176,75,139,8,64,6,80,139,98,108,104,106,
8,247,118,7,166,116,162,111,111,117,116,112,30,240,252,142,21,247,12,7,139,155,145,153,150,146,8,225,213,5,146,146,150,144,153,139
,8,214,6,157,139,151,130,150,129,155,123,168,124,139,109,8,251,98,7,139,123,131,126,129,131,121,124,120,111,108,139,8,64,6,125,139
,128,144,132,146,8,53,213,5,129,147,132,151,139,156,8,14,139,240,248,2,240,1,247,5,240,3,247,5,247,116,21,139,88,162,101,168,114
,8,225,65,5,163,118,171,124,181,139,8,247,103,6,167,162,162,167,166,116,162,111,31,251,103,6,125,139,128,144,132,146,8,53,212,5,
129,148,132,151,139,156,8,247,12,7,139,155,145,153,150,146,8,225,213,5,146,146,150,144,153,139,8,247,103,6,167,162,161,167,167,116
,162,111,31,251,103,6,51,139,93,70,89,98,110,114,116,101,139,88,8,14,139,240,248,2,240,247,104,119,1,247,5,240,247,188,240,3,247
,5,247,73,21,139,88,161,101,169,114,174,108,173,103,204,139,8,214,6,203,139,176,173,174,172,8,123,7,111,161,116,167,167,162,162,
167,30,249,59,7,166,116,162,111,111,117,116,112,30,251,123,7,103,170,105,177,73,139,8,64,6,98,139,106,123,116,119,97,104,92,105,
139,63,8,240,251,98,21,34,10,14,139,240,247,3,240,247,46,240,1,247,5,240,247,188,240,3,247,5,247,73,21,139,88,161,101,169,114,174
,108,173,103,204,139,8,247,153,6,167,162,162,167,166,116,162,111,31,251,153,6,125,139,130,144,130,146,120,156,105,155,139,174,8,
170,247,238,7,167,162,162,167,31,247,16,7,139,190,115,177,110,164,104,170,104,175,75,139,8,251,17,6,98,139,106,123,116,119,97,104
,92,104,139,64,8,240,65,21,213,7,139,156,146,151,149,147,157,154,158,167,170,139,8,247,17,6,173,191,95,103,31,65,7,14,160,118,248
,103,240,247,3,240,1,247,128,240,3,247,29,248,153,21,111,161,117,167,30,188,252,52,6,111,162,116,167,167,161,162,167,30,248,52,238
,7,166,162,161,167,167,116,162,112,31,40,173,6,181,173,174,182,30,247,13,6,167,161,162,167,166,117,162,111,31,251,13,6,41,59,60,
40,31,105,90,7,111,117,116,111,31,14,251,104,240,247,45,240,247,216,240,1,247,5,239,247,189,240,3,247,5,247,116,21,139,88,162,101
,168,114,174,109,174,101,203,139,8,214,6,201,139,178,174,174,172,8,251,33,7,139,124,131,125,129,131,121,125,120,110,108,139,8,251
,103,6,111,116,116,111,111,162,117,167,31,247,103,6,180,139,172,155,162,159,180,175,188,173,139,214,8,248,184,7,167,116,162,111,
111,117,116,111,30,121,7,103,170,105,177,73,139,8,64,6,98,139,106,123,116,119,97,104,92,106,139,62,8,239,251,55,21,247,55,7,139,
156,147,150,149,149,159,153,154,167,172,139,8,214,6,153,139,150,134,146,132,8,225,65,5,148,131,148,125,139,124,8,61,7,139,123,131
,126,129,131,8,53,65,5,132,132,128,134,125,139,8,64,6,104,88,184,175,31,14,160,118,248,103,240,247,104,119,1,247,5,240,247,188,239
,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,203,247,55,244,210,139,5,166,139,159,117,141,114,8,152,252,7,5,112,162
,117,166,167,161,162,167,30,127,248,8,5,136,218,74,205,57,139,8,82,6,106,139,113,129,117,125,8,43,78,139,247,139,5,166,116,162,111
,111,117,116,112,30,14,139,240,248,2,240,247,3,247,35,18,247,54,247,142,251,43,247,43,39,239,19,240,247,54,190,21,35,10,19,228,41
,6,19,240,248,52,7,167,116,162,112,30,251,41,6,111,116,116,111,111,162,117,167,31,19,228,238,252,2,40,6,111,116,116,112,31,19,232
,238,249,59,21,19,228,111,162,116,167,30,189,6,19,232,166,162,162,167,31,181,7,167,116,161,112,30,19,228,89,6,19,232,111,116,117
,111,31,14,251,104,240,248,214,240,247,3,247,35,18,247,153,247,192,251,43,247,43,39,239,19,232,247,54,62,21,131,7,150,70,202,81,
215,139,8,237,6,19,228,222,207,206,222,31,19,240,248,215,7,167,116,162,111,30,251,90,6,111,116,116,111,111,162,117,167,31,19,228
,247,41,252,165,6,19,232,112,115,117,112,30,41,6,77,139,162,224,79,139,8,111,116,116,111,31,247,140,249,187,21,19,228,111,162,116
,167,30,188,6,19,232,167,162,162,167,31,181,7,167,116,161,111,30,19,228,90,6,19,232,111,116,117,111,31,14,160,118,248,204,119,247
,124,119,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,38,187,181,247,157,251,119,5,148,132,151,134,152,
139,167,139,161,162,139,167,139,154,132,153,128,148,8,251,145,247,108,247,95,247,66,5,150,148,146,153,139,154,139,167,116,162,111
,139,127,139,127,134,131,132,8,251,156,251,117,139,248,35,5,166,116,162,111,111,117,116,112,30,14,139,240,248,214,240,18,247,54,
247,142,38,240,19,224,247,54,190,21,35,10,19,208,41,6,19,224,249,9,7,166,116,162,112,30,251,41,6,111,116,116,112,111,162,116,167
,31,19,208,237,252,214,41,6,111,116,116,112,31,14,160,118,248,103,240,18,244,240,244,240,230,239,53,240,19,248,244,190,21,111,161
,116,167,167,162,162,167,30,139,247,243,214,204,147,139,5,153,147,131,125,31,252,30,7,111,162,116,167,166,162,162,167,30,139,247
,250,207,197,145,139,5,149,139,145,128,140,131,8,19,244,153,252,35,5,140,112,162,117,166,139,8,167,161,162,167,31,19,248,124,248
,37,5,137,203,82,188,78,139,114,139,112,131,116,120,8,117,121,5,117,168,103,158,100,139,102,139,111,122,118,121,133,159,119,154,
117,139,8,111,117,116,111,31,14,160,118,248,103,240,1,247,5,240,247,188,239,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139
,247,203,247,55,244,210,139,5,166,139,159,117,141,114,8,152,252,7,5,112,162,117,166,167,161,162,167,30,127,248,8,5,136,218,74,205
,57,139,8,82,6,106,139,113,129,117,125,8,43,78,139,173,5,167,116,162,111,111,117,116,111,30,14,139,240,248,2,240,1,247,5,240,247
,188,240,3,247,5,247,73,21,139,89,161,100,169,114,175,109,172,102,204,139,8,247,17,6,180,139,172,155,162,159,180,175,188,173,139
,214,8,247,98,7,139,189,115,178,110,164,104,169,104,176,75,139,8,251,17,6,98,139,106,123,116,119,97,104,92,104,139,64,8,240,251,
98,21,247,98,7,139,156,146,151,149,147,157,154,158,167,170,139,8,247,17,6,173,191,95,103,31,251,98,7,139,123,131,126,129,131,121
,124,120,111,108,139,8,251,17,6,125,139,130,144,130,146,120,156,105,155,139,174,8,14,251,83,118,247,83,240,248,44,240,1,247,5,240
,247,188,240,3,247,5,251,54,21,111,161,117,167,167,162,161,167,30,247,108,7,173,102,178,101,205,139,8,160,6,181,139,171,154,163,
160,8,225,213,5,168,164,163,179,139,188,8,247,53,7,139,220,82,175,95,179,104,171,101,175,76,139,8,118,6,70,139,105,98,103,103,8,
166,7,166,116,162,111,111,117,116,112,30,240,251,212,21,247,22,7,139,154,144,151,148,146,8,229,230,5,147,147,152,145,153,139,8,160
,6,151,139,153,133,145,133,8,226,64,5,148,132,147,124,139,124,8,251,53,7,139,124,131,124,130,132,8,52,65,5,132,132,128,134,125,139
,8,118,6,122,139,130]);fileData0.push.apply(fileData0,[144,130,148,118,158,120,160,119,159,122,156,112,154,139,172,8,14,251,83,118
,247,104,240,248,2,240,1,247,5,240,247,188,240,3,247,5,247,73,21,139,88,161,101,169,114,174,108,173,103,204,139,8,214,6,203,139,
176,173,174,172,8,251,121,7,111,161,117,167,167,162,161,167,30,249,59,7,167,116,162,111,111,117,116,111,30,121,7,103,170,105,177
,73,139,8,64,6,98,139,106,123,116,119,97,104,92,105,139,63,8,240,251,98,21,34,10,14,160,118,248,103,240,1,247,5,240,247,188,240,
3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,165,247,58,247,35,220,139,5,166,161,116,113,31,111,7,111,161,117,167,167
,162,161,167,30,167,7,221,70,207,58,30,40,6,129,139,128,137,131,133,8,251,11,37,139,198,5,167,116,162,111,111,117,116,111,30,14,
139,240,248,2,240,1,247,17,239,247,174,242,3,247,5,232,21,139,123,146,125,151,129,172,111,181,114,199,139,8,247,81,6,223,139,208
,207,140,223,8,141,7,139,204,95,193,92,160,8,251,170,247,12,5,128,143,134,149,139,149,8,153,149,154,157,30,247,106,6,176,139,148
,96,175,139,167,139,162,162,139,167,139,150,135,150,133,147,114,172,94,169,86,139,8,251,106,6,105,139,106,125,115,115,113,114,128
,108,139,108,139,88,169,89,185,119,8,247,169,251,12,5,159,130,148,120,139,120,8,112,122,112,105,30,251,95,6,132,139,127,147,132,
141,114,146,131,164,107,139,111,139,118,117,139,111,8,14,139,240,248,2,240,1,247,104,240,3,247,5,248,153,21,111,161,117,167,30,188
,251,209,6,58,207,70,220,30,239,6,214,139,201,198,152,207,8,147,7,167,116,162,111,30,78,139,162,54,78,139,8,39,6,113,117,161,166
,31,247,209,247,89,7,167,161,161,167,167,117,162,111,31,251,89,247,11,6,167,116,162,111,111,117,116,111,30,251,11,90,7,111,117,116
,111,31,14,139,240,248,103,119,1,247,5,239,247,189,240,3,247,5,248,153,21,151,252,9,5,141,61,206,73,220,139,8,196,6,172,139,165,
149,161,153,8,236,201,139,104,5,111,161,116,167,167,162,162,167,30,248,102,7,167,116,162,111,111,117,116,111,30,139,251,204,251,
56,35,68,139,5,112,139,119,160,137,165,8,126,248,7,5,166,116,161,112,111,117,116,111,30,14,160,118,248,204,119,1,247,5,240,247,188
,240,3,247,5,248,68,21,139,132,140,132,142,133,8,247,59,252,18,5,147,121,156,127,160,139,8,202,6,160,139,156,151,147,157,8,247,59
,248,18,5,142,145,141,146,139,146,8,224,7,167,116,162,111,111,117,116,111,30,139,65,251,41,251,231,251,39,247,231,139,213,5,167,
116,162,111,111,117,116,111,30,14,160,118,248,204,119,1,241,240,247,0,240,247,0,240,3,20,56,241,248,152,21,149,251,190,191,251,74
,5,145,118,159,124,162,139,8,188,6,158,139,155,149,148,154,8,195,234,194,44,5,148,124,155,129,158,139,8,188,6,162,139,159,154,145
,160,8,190,247,62,150,247,202,139,141,5,166,115,162,112,30,112,139,117,117,138,112,8,129,251,183,107,251,0,73,247,6,139,247,6,5,
166,116,162,112,111,116,116,112,30,139,251,6,73,251,6,107,247,0,129,247,183,5,138,166,117,161,112,139,8,111,116,115,111,31,14,160
,118,248,204,119,1,247,5,190,21,111,161,116,167,30,155,139,153,146,148,150,8,247,52,247,85,247,51,251,85,5,148,128,153,132,155,139
,167,139,162,162,139,167,139,151,135,150,132,148,8,251,65,247,100,247,53,247,86,5,146,148,144,150,139,151,139,167,116,162,111,139
,124,139,125,132,129,127,8,251,40,251,71,251,41,247,71,5,129,151,125,146,124,139,111,139,116,116,139,111,139,127,144,128,146,130
,8,247,53,251,86,251,65,251,100,5,132,130,136,128,139,127,8,14,251,104,240,249,59,119,1,247,5,240,247,187,241,3,247,5,251,54,21,
111,161,117,167,30,247,28,6,160,139,157,151,147,157,8,247,152,248,230,5,142,145,141,146,139,146,8,224,7,167,116,162,111,111,116,
116,111,30,139,65,251,24,251,192,107,139,251,23,247,192,139,213,5,167,116,162,111,111,117,116,111,30,54,7,139,132,140,132,142,133
,8,247,41,251,231,5,146,121,157,126,160,139,8,160,139,72,251,45,36,139,5,111,117,116,111,31,14,139,240,248,2,240,1,247,5,190,21,
111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,208,139,247,243,247,229,5,149,149,145,152,139,153,8,181,7,167
,116,162,111,30,252,9,6,111,117,116,111,111,161,117,167,31,247,185,139,251,244,251,230,5,129,130,134,126,139,125,8,14,139,240,247
,131,240,247,130,240,1,247,203,240,3,247,5,248,26,21,111,161,117,167,30,236,6,167,162,115,112,31,251,80,7,85,186,92,193,30,247,40
,6,167,162,162,167,166,116,162,111,31,251,40,247,80,6,139,178,124,174,115,166,163,166,154,174,139,178,8,247,80,247,40,7,167,162,
162,167,166,116,162,111,31,251,40,6,85,92,92,85,31,251,80,7,112,117,116,110,30,42,6,111,117,116,111,31,14,160,118,249,160,119,1,
247,203,240,3,247,203,190,21,111,162,116,167,166,162,162,167,30,247,181,38,7,240,4,240,247,181,6,166,116,162,112,111,116,116,112
,30,14,139,240,247,131,240,247,130,240,1,247,203,240,3,247,5,190,21,111,161,116,167,30,247,40,6,193,186,186,193,31,247,80,7,165,
161,164,167,30,237,6,167,162,161,167,167,116,162,111,31,41,6,111,117,162,166,31,247,80,7,193,92,186,85,30,251,40,6,111,117,116,112
,111,161,116,167,31,247,40,251,80,6,139,100,154,104,163,112,115,112,124,104,139,100,8,251,80,251,40,7,111,117,116,112,31,14,248,
62,238,247,45,240,1,247,5,240,236,240,237,240,3,20,56,247,5,248,153,21,111,161,117,167,167,162,161,167,30,247,3,7,166,160,162,166
,166,161,116,112,30,87,7,139,99,155,101,167,110,169,109,176,126,175,139,8,217,214,200,228,31,247,3,7,167,116,162,111,111,117,116
,111,30,251,3,7,113,117,114,112,112,117,164,165,30,191,7,139,180,123,177,111,167,109,169,103,153,103,139,8,62,63,77,50,31,14,226
,248,185,3,226,114,21,248,185,249,210,252,185,6,14,139,247,142,1,247,129,247,141,3,247,129,190,21,111,161,116,167,30,247,41,6,167
,161,162,167,31,247,40,7,167,117,162,111,30,251,41,6,111,117,116,111,31,14,160,118,249,160,119,1,247,104,240,3,247,5,248,111,21,
111,161,116,167,30,152,139,150,144,148,146,8,247,157,247,119,188,97,139,101,251,173,251,131,5,128,130,133,124,139,124,8,251,146,
7,111,161,116,167,167,162,162,167,30,139,247,123,247,172,247,131,5,150,149,146,152,139,155,8,224,7,139,154,132,153,128,148,8,40,
224,5,130,146,127,144,127,139,126,139,128,134,130,12,37,251,190,251,147,5,128,130,133,125,139,124,8,14,139,240,247,131,240,247,130
,240,1,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,122,139,209,247,131,247,52,139,5,167,162,
161,167,167,116,162,111,31,251,23,139,198,247,94,5,145,158,158,156,162,139,8,163,6,167,162,162,167,166,116,162,111,31,115,6,67,139
,83,87,122,82,8,72,251,122,251,53,139,5,111,117,116,111,111,161,117,167,31,247,23,139,70,251,131,77,139,5,111,117,116,112,31,14,
160,118,247,147,240,248,60,119,1,247,203,240,3,247,5,247,197,21,111,161,117,167,30,247,40,251,96,6,111,162,116,167,166,162,162,167
,30,247,96,247,40,7,167,162,161,167,167,116,162,111,31,251,40,160,6,247,84,247,219,5,143,147,142,147,139,149,139,166,116,162,111
,139,120,139,123,129,130,124,8,251,46,251,157,251,47,247,157,5,130,154,123,149,120,139,111,139,117,116,139,112,139,129,141,131,143
,131,8,247,84,251,219,139,118,251,40,139,5,111,117,116,111,31,14,249,160,119,1,247,201,243,3,247,151,249,110,21,190,251,148,5,139
,137,138,137,139,137,8,115,166,119,165,165,164,162,166,30,190,247,148,5,139,141,140,141,139,141,8,163,111,159,113,30,40,6,111,114
,116,112,31,14,160,118,247,104,247,36,1,247,253,247,42,3,247,104,247,155,21,111,161,116,167,30,238,251,53,6,111,161,116,167,30,189
,6,167,161,162,167,31,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31,14,247,232,240,1,247,5,248,26,21,33,10,14,139,240
,248,214,240,1,247,5,240,236,240,237,240,3,247,5,22,247,191,249,59,237,251,96,6,111,161,116,167,167,162,162,167,30,247,197,251,192
,253,59,42,247,96,7,167,116,162,111,111,117,116,111,30,14,160,118,247,232,240,247,231,119,1,247,5,240,247,188,240,3,247,5,190,21
,111,161,116,167,167,162,162,167,30,247,181,247,188,251,181,7,111,161,116,167,167,162,162,167,30,249,59,7,166,116,162,111,111,117
,116,112,30,251,181,252,33,7,14,160,118,247,232,240,247,231,119,1,247,5,240,236,240,237,240,3,247,5,247,232,21,247,90,251,181,6,
111,162,116,167,166,162,162,167,30,247,181,247,91,248,26,7,166,116,162,111,111,117,116,112,30,251,181,251,188,247,181,7,166,116,
162,111,111,117,116,112,30,14,160,118,247,19,240,248,2,247,78,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,30,160,139,
158,152,146,158,8,176,234,247,121,139,176,44,5,146,120,158,126,160,139,167,139,162,162,139,167,139,145,137,145,137,145,8,251,90,
248,145,5,131,158,120,152,118,139,117,139,122,126,131,120,8,251,90,252,145,5,137,133,138,133,139,133,8,248,230,4,36,10,247,65,252
,138,21,214,247,85,214,251,85,5,213,248,53,21,36,10,14,160,118,247,62,240,248,44,240,1,247,54,240,247,89,240,3,247,1,191,21,111,
164,115,167,30,162,139,159,154,145,160,8,179,247,26,247,114,139,178,251,26,5,145,118,159,124,162,139,8,167,163,162,167,31,251,27
,248,96,5,185,148,176,181,139,187,8,208,7,193,92,186,85,30,251,89,6,85,92,92,85,31,70,7,139,91,176,97,185,130,8,157,238,21,208,247
,89,70,7,251,71,251,231,21,209,247,130,161,139,209,251,130,5,14,139,240,208,240,208,240,247,130,240,18,247,253,247,142,251,142,240
,19,244,247,5,190,21,111,161,116,167,30,161,139,157,153,146,158,8,189,247,29,240,139,5,19,248,251,11,7,111,161,116,167,30,247,41
,6,167,162,162,167,166,116,162,111,31,19,244,41,247,131,237,6,19,248,167,162,161,167,167,116,162,111,31,19,244,41,247,130,237,6,
19,248,167,162,162,167,166,116,162,111,31,251,41,6,121,139,122,129,130,125,8,251,143,253,68,5,137,133,138,134,139,133,8,247,76,247
,112,21,19,244,203,247,67,139,251,67,5,14,160,118,249,16,247,36,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162
,167,30,139,247,188,247,201,251,223,5,148,129,152,133,154,139,8,167,162,162,167,31,248,60,7,167,116,161,111,111,117,117,111,30,139
,251,189,251,202,247,223,5,130,149,126,145,124,139,8,111,117,117,111,31,247,104,4,111,161,116,167,30,162,139,159,155,145,160,8,247
,240,102,142,139,5,166,160,163,166,31,182,7,166,116,162,111,30,116,139,119,123,134,118,8,251,241,176,135,139,5,113,119,115,113,31
,14,139,240,248,44,240,123,247,78,18,247,5,239,247,188,241,19,216,247,5,247,172,21,139,113,147,120,150,123,8,220,251,5,139,134,5
,172,95,169,82,214,139,8,160,6,229,139,176,225,178,196,8,192,215,5,150,155,148,159,139,164,8,189,7,139,165,130,158,128,155,8,57,
247,5,5,105,185,114,199,61,139,8,118,6,92,139,103,116,119,109,101,82,100,85,100,84,128,122,131,122,139,112,8,247,207,4,19,184,111
,161,116,167,167,161,162,167,30,224,7,166,117,162,111,111,117,116,112,30,239,252,89,21,139,192,247,10,247,61,5,19,216,143,144,147
,144,147,139,8,160,6,147,139,147,134,143,134,8,247,10,251,61,139,88,251,10,251,59,5,135,133,132,134,130,139,8,118,6,130,139,131,
144,136,145,8,247,70,248,169,21,19,184,111,162,116,167,167,162,162,167,30,224,7,166,116,162,111,111,116,116,112,30,14,139,240,248
,214,240,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,30,182,139,156,192,156,167,158,96,183,101,197,139,194,139,182,173
,159,177,8,246,247,107,5,153,168,150,173,139,179,139,222,95,198,110,198,8,205,247,5,5,143,147,142,147,139,149,139,166,116,162,111
,139,96,139,122,86,122,111,120,182,95,177,80,139,85,139,96,105,119,101,8,32,251,107,5,125,110,129,106,139,98,139,54,182,83,168,79
,8,73,251,5,5,135,131,137,131,139,130,8,240,247,231,21,139,162,144,157,147,156,8,247,0,247,105,5,144,149,148,147,151,139,151,139
,150,130,143,12,37,173,72,251,68,251,192,5,125,167,121,166,139,180,8,226,251,96,21,247,68,247,192,5,153,112,158,109,139,100,139,
117,132,120,132,122,8,251,0,251,106,5,134,129,131,132,125,139,127,139,129,147,135,12,37,14,139,240,248,129,247,78,18,247,5,240,137
,240,236,239,139,240,19,228,247,5,247,44,21,56,206,70,223,30,247,87,6,222,208,208,222,31,248,44,7,167,116,161,111,111,117,117,111
,30,252,44,7,111,115,116,112,30,251,87,6,112,116,162,167,31,248,44,7,167,116,161,111,111,117,117,111,30,19,208,238,224,21,36,10,
19,200,247,90,54,21,111,162,116,167,167,160,162,167,30,224,7,166,118,162,111,111,116,116,112,30,14,247,203,240,3,247,203,38,21,240
,28,4,183,38,6,14,249,103,20,139,21,139,139,248,204,139,247,104,139,6,251,104,139,7,158,12,10,240,10,236,142,140,140,180,140,181
,203,12,12,240,11,236,143,189,189,188,188,247,142,12,13,139,12,14,28,0,52,19,0,5,1,1,28,54,125,143,164,111,162,116,167,30,238,6,
167,162,162,167,31,224,7,167,116,161,111,30,40,6,111,116,117,111,31,11,111,161,117,167,30,248,33,6,167,162,161,167,167,116,162,111
,31,252,33,6,111,117,116,111,31,11,247,98,7,139,157,147,150,149,148,158,154,155,166,171,139,8,214,6,153,139,150,134,146,132,8,225
,65,5,148,131,148,125,139,124,8,251,12,7,139,123,131,125,129,132,8,53,65,5,132,133,128,133,125,139,8,64,6,125,139,130,144,130,146
,120,156,105,155,139,174,8,11,111,162,116,167,30,247,189,6,167,162,162,167,166,116,162,111,31,11,111,161,116,167,167,162,162,167
,30,224,7,166,116,162,111,111,117,116,112,30,11,0,0,1,0,0,0,14,0,0,0,24,0,0,0,0,0,2,0,1,0,1,0,114,0,1,0,4,0,0,0,2,0,0,0,1,0,0,0,
10,0,68,0,162,0,2,68,70,76,84,0,14,108,97,116,110,0,36,0,4,0,0,0,0,255,255,0,6,0,0,0,1,0,2,0,3,0,4,0,5,0,4,0,0,0,0,255,255,0,6,0
,0,0,1,0,2,0,3,0,4,0,5,0,6,97,97,108,116,0,38,115,115,48,49,0,44,115,115,48,50,0,50,115,115,48,51,0,56,115,115,48,52,0,62,115,115
,48,53,0,68,0,0,0,1,0,0,0,30,0,1,0,1,0,28,0,1,0,2,0,26,0,1,0,3,0,24,0,1,0,4,0,22,0,1,0,5,0,0,1,0,0,0,1,1,0,0,1,2,0,0,1,3,0,0,1,4
,0,6,0,14,0,22,0,30,0,38,0,46,0,54,0,3,0,0,0,1,0,48,0,1,0,0,0,1,0,100,0,1,0,0,0,1,0,104,0,1,0,0,0,1,0,108,0,1,0,0,0,1,0,112,0,1,
0,0,0,1,0,116,0,1,0,46,0,5,0,16,0,22,0,28,0,34,0,40,0,2,0,8,0,101,0,2,0,13,0,102,0,2,0,14,0,103,0,2,0,15,0,97,0,2,0,32,0,98,0,1,
0,5,0,8,0,13,0,14,0,15,0,32,0,1,0,6,0,82,0,1,0,1,0,15,0,1,0,6,0,66,0,1,0,1,0,32,0,1,0,6,0,93,0,1,0,1,0,8,0,1,0,6,0,89,0,1,0,1,0,
13,0,1,0,6,0,89,0,1,0,1,0,14,0,1,0,0,0,10,0,44,0,46,0,2,68,70,76,84,0,14,108,97,116,110,0,24,0,4,0,0,0,0,255,255,0,0,0,4,0,0,0,0
,255,255,0,0,0,0,0,0,0,0,0,1,0,0,0,0,204,109,177,85,0,0,0,0,204,138,51,80,0,0,0,0,204,138,51,83,2,211,0,0,2,211,0,0,1,30,0,111,0
,113,0,113,0,113,0,113,1,5,1,5,0,212,0,113,0,113,0,212,0,113,1,5,0,113,0,113,0,113,0,113,0,113,0,137,0,113,0,113,0,113,0,113,0,113
,1,5,0,212,0,113,0,113,0,113,0,113,0,113,0,110,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,162,0,113,0,113,0,113,0,113,0,113
,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,112,0,113,0,113,0,113,0,112,0,113,0,162,0,113,0,113,0,113,0,113,0
,113,0,137,0,113,0,113,0,162,0,162,0,113,0,162,0,105,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,102,0,113,0,113,0,113
,0,113,1,55,0,113,0,113,0,87,0,237,0,113,0,113,0,113,1,3,0,212,0,113,0,113,0,113,0,113,0,113,0,109,0,113,0,113,0,113,0,113,0,113
,1,55,0,0]);Module["FS_createDataFile"]("/","OCRA.otf",fileData0,true,true);var fileData1=[];fileData1
.push.apply(fileData1,[79,84,84,79,0,13,0,128,0,3,0,80,67,70,70,32,129,193,239,92,0,0,6,176,0,0,60,213,70,70,84,77,108,79,91,201
,0,0,68,252,0,0,0,28,71,68,69,70,0,190,0,4,0,0,67,136,0,0,0,32,71,80,79,83,184,255,184,254,0,0,68,204,0,0,0,48,71,83,85,66,119,90
,101,154,0,0,67,168,0,0,1,36,79,83,47,50,90,188,142,61,0,0,1,64,0,0,0,96,99,109,97,112,83,222,211,245,0,0,4,28,0,0,2,114,104,101
,97,100,6,47,76,75,0,0,0,220,0,0,0,54,104,104,101,97,4,6,251,46,0,0,1,20,0,0,0,36,104,109,116,120,49,149,74,40,0,0,69,24,0,0,1,240
,109,97,120,112,0,145,80,0,0,0,1,56,0,0,0,6,110,97,109,101,174,145,152,55,0,0,1,160,0,0,2,121,112,111,115,116,0,3,0,0,0,0,6,144,
0,0,0,32,0,1,0,0,0,2,0,0,89,59,114,1,95,15,60,245,0,11,3,232,0,0,0,0,211,135,133,179,0,0,0,0,211,135,133,179,249,67,249,67,6,189
,6,189,0,0,0,8,0,2,0,0,0,0,0,0,0,1,0,0,3,170,254,176,0,90,2,211,249,67,249,67,6,189,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,103,0,0,80
,0,0,145,0,0,0,2,2,211,1,144,0,5,0,0,2,138,2,188,0,0,0,140,2,138,2,188,0,0,1,224,0,49,1,2,0,0,2,0,5,9,0,0,0,0,0,0,0,0,0,175,0,0,
0,104,0,0,0,0,0,0,0,0,80,102,69,100,0,64,0,32,43,88,3,32,255,56,0,90,3,170,1,80,0,0,0,1,0,0,0,0,2,22,2,189,0,32,0,32,0,1,0,0,0,14
,0,174,0,1,0,0,0,0,0,0,0,67,0,136,0,1,0,0,0,0,0,1,0,4,0,214,0,1,0,0,0,0,0,2,0,7,0,235,0,1,0,0,0,0,0,3,0,41,1,71,0,1,0,0,0,0,0,4,
0,13,1,141,0,1,0,0,0,0,0,5,0,10,1,177,0,1,0,0,0,0,0,6,0,4,1,198,0,3,0,1,4,9,0,0,0,134,0,0,0,3,0,1,4,9,0,1,0,8,0,204,0,3,0,1,4,9,
0,2,0,14,0,219,0,3,0,1,4,9,0,3,0,82,0,243,0,3,0,1,4,9,0,4,0,26,1,113,0,3,0,1,4,9,0,5,0,20,1,155,0,3,0,1,4,9,0,6,0,8,1,188,0,77,0
,97,0,116,0,116,0,104,0,101,0,119,0,32,0,83,0,107,0,97,0,108,0,97,0,32,0,40,0,50,0,48,0,49,0,49,0,41,0,59,0,32,0,98,0,97,0,115,0
,101,0,100,0,32,0,111,0,110,0,32,0,99,0,111,0,100,0,101,0,32,0,98,0,121,0,32,0,78,0,111,0,114,0,98,0,101,0,114,0,116,0,32,0,83,0
,99,0,104,0,119,0,97,0,114,0,122,0,32,0,40,0,49,0,57,0,56,0,54,0,44,0,32,0,50,0,48,0,49,0,49,0,41,0,0,77,97,116,116,104,101,119,
32,83,107,97,108,97,32,40,50,48,49,49,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,78,111,114,98,101,114
,116,32,83,99,104,119,97,114,122,32,40,49,57,56,54,44,32,50,48,49,49,41,0,0,79,0,67,0,82,0,66,0,0,79,67,82,66,0,0,82,0,101,0,103
,0,117,0,108,0,97,0,114,0,0,82,101,103,117,108,97,114,0,0,70,0,111,0,110,0,116,0,70,0,111,0,114,0,103,0,101,0,32,0,50,0,46,0,48,
0,32,0,58,0,32,0,79,0,67,0,82,0,32,0,66,0,32,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,32,0,58,0,32,0,50,0,55,0,45,0,57,0,45,0,50
,0,48,0,49,0,50,0,0,70,111,110,116,70,111,114,103,101,32,50,46,48,32,58,32,79,67,82,32,66,32,82,101,103,117,108,97,114,32,58,32,
50,55,45,57,45,50,48,49,50,0,0,79,0,67,0,82,0,32,0,66,0,32,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,0,79,67,82,32,66,32,82,101,
103,117,108,97,114,0,0,86,0,101,0,114,0,115,0,105,0,111,0,110,0,32,0,50,0,32,0,0,86,101,114,115,105,111,110,32,50,32,0,0,79,0,67
,0,82,0,66,0,0,79,67,82,66,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,28,0,1,0,0,0,0,1,108,0,3,0,1,0,0,0,28,0,4,1,80,0,0,0,80,0,64,0,5,0,16,0
,126,0,161,0,164,0,169,0,175,0,180,0,184,0,191,0,196,0,198,0,214,0,216,0,220,0,223,0,228,0,230,0,246,0,248,0,252,1,49,1,83,2,55,
2,199,2,217,2,220,3,147,3,152,3,155,3,158,3,160,3,163,3,166,3,168,33,38,33,145,33,147,34,6,43,34,43,88,255,255,0,0,0,32,0,161,0,
164,0,167,0,174,0,180,0,184,0,191,0,196,0,198,0,214,0,216,0,220,0,223,0,228,0,230,0,246,0,248,0,252,1,49,1,82,2,55,2,198,2,216,2
,220,3,147,3,152,3,155,3,158,3,160,3,163,3,165,3,168,33,38,33,145,33,147,34,6,43,34,43,88,255,255,255,225,255,191,255,189,255,187
,255,183,255,179,255,176,255,170,255,166,255,165,255,150,255,149,255,146,255,144,255,140,255,139,255,124,255,123,255,120,255,68,
255,36,254,65,253,179,253,163,253,161,252,235,252,231,252,229,252,227,252,226,252,224,252,223,252,222,223,97,222,247,222,246,222
,132,213,105,213,52,0,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,1,6,0,0,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,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,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,91,92,93,94,95,0,106,0,0,0,0,108,110,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,0,0,0,0,116,0,0,0,0,98,0,0,111,101,100,0
,103,99,0,107,109,0,0,0,0,0,0,0,0,0,0,0,0,0,0,113,115,105,96,0,0,0,0,138,0,0,0,0,0,0,0,118,119,0,0,0,0,0,0,0,0,0,0,0,0,0,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,121,125,102,123,124,0,104,0,0,122,0,0,0,3,0,0,0,0,0,0,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,4,4,0,1,1,1,5,79,67,82,66,0,1,2,0,1,0,54,248,47,0,248,48,1,248,49,2,248,50,3,248,51,4,139,12,3,139,12,4,28
,249,67,28,249,67,28,6,189,28,6,189,5,28,1,96,15,28,0,0,16,28,2,129,17,28,0,70,28,58,29,18,0,25,2,0,1,0,9,0,14,0,19,0,25,0,27,0,
29,0,34,0,41,0,44,0,47,0,50,0,57,0,66,0,71,0,78,0,85,0,100,0,109,0,121,0,128,0,133,0,200,0,213,0,217,0,223,100,111,116,108,101,115
,115,106,71,97,109,109,97,84,104,101,116,97,76,97,109,98,100,97,88,105,80,105,83,105,103,109,97,85,112,115,105,108,111,110,80,104
,105,80,115,105,79,104,109,97,114,114,111,119,117,112,97,114,114,111,119,100,111,119,110,68,101,108,116,97,117,110,105,50,66,50,
50,117,110,105,50,66,53,56,113,117,111,116,101,115,105,110,103,108,101,46,97,108,116,103,114,97,118,101,46,97,108,116,113,117,111
,116,101,100,98,108,46,97,108,116,98,97,114,46,97,108,116,50,46,48,48,48,77,97,116,116,104,101,119,32,83,107,97,108,97,32,40,50,
48,49,49,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,78,111,114,98,101,114,116,32,83,99,104,119,97,114,
122,32,40,49,57,56,54,44,32,50,48,49,49,41,79,67,82,32,66,32,82,101,103,117,108,97,114,79,67,82,66,78,111,114,109,97,108,0,0,0,0
,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,
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,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,94,0,95,0,96,0,103,0,102,0,131,0,170,0,165,0,128,0,125,0
,133,0,123,0,173,0,138,0,189,0,141,0,195,0,149,0,202,0,144,0,218,0,147,0,224,0,145,0,142,0,148,1,135,0,126,0,136,0,129,0,130,0,127
,1,136,1,137,1,138,1,139,1,140,1,141,1,142,1,143,1,144,1,145,1,146,1,147,1,148,1,149,1,150,1,151,1,152,1,153,1,154,0,145,2,0,1,0
,2,0,3,0,31,0,134,1,64,1,254,2,176,3,110,3,165,3,251,4,77,4,200,5,15,5,80,5,119,5,161,5,218,6,78,6,146,7,13,7,136,7,236,8,103,8,
208,9,37,9,176,10,36,10,87,10,169,10,245,11,55,11,131,12,3,12,205,13,33,13,167,14,30,14,116,14,191,14,254,15,163,15,235,16,47,16
,142,16,236,17,26,17,125,17,206,18,9,18,96,19,6,19,124,20,12,20,67,20,156,20,225,21,106,21,227,22,58,22,133,22,189,22,248,23,52,
23,60,23,101,23,162,24,29,24,164,25,33,25,166,26,21,26,116,27,26,27,118,27,165,28,14,28,114,28,183,29,47,29,127,29,152,30,22,30,
154,30,241,31,128,31,239,32,81,32,167,33,31,33,152,34,3,34,80,34,222,35,1,35,141,35,172,35,200,36,138,37,81,37,142,38,150,38,174
,38,209,39,13,39,94,39,222,40,102,40,217,41,86,42,19,42,173,43,64,43,208,44,172,44,233,45,146,46,7,46,38,46,203,47,89,47,163,47,
171,47,251,48,68,48,86,48,117,48,183,49,20,49,120,49,170,49,245,50,118,50,228,51,146,52,7,52,175,53,15,53,111,53,164,53,188,53,189
,53,224,54,29,54,90,54,118,14,14,66,247,38,18,247,182,247,38,251,15,239,19,192,247,182,116,21,32,10,19,160,162,247,198,21,33,10,
14,248,86,247,212,18,247,53,247,22,251,22,239,247,84,247,15,251,15,237,19,160,247,53,248,136,21,113,163,115,165,30,166,139,159,160
,142,161,8,168,247,119,5,19,192,139,141,140,140,139,141,8,162,115,161,112,30,110,6,112,116,116,112,31,19,136,247,184,251,112,21,
112,162,116,166,30,165,139,156,157,144,161,8,19,144,164,247,122,139,143,5,164,114,160,114,30,116,6,112,116,117,111,31,14,247,96,
239,247,49,239,247,104,119,1,247,242,238,195,238,3,247,5,247,146,21,139,113,159,118,164,136,8,102,251,59,5,112,163,116,165,30,163
,139,159,156,144,161,8,179,247,70,247,17,139,104,251,48,139,128,5,112,162,116,166,30,162,139,160,157,144,160,8,179,247,70,193,139
,5,166,162,162,166,166,117,162,111,31,108,139,174,247,49,155,139,5,166,162,162,166,31,139,164,120,160,115,143,8,173,247,43,139,150
,5,167,116,161,112,30,114,139,122,120,132,119,8,100,251,65,251,18,139,175,247,54,5,165,115,163,113,30,115,139,119,121,134,118,8,
100,251,65,84,139,5,111,117,117,111,111,162,117,166,31,172,139,103,251,49,122,139,5,111,117,117,111,31,247,61,189,21,175,247,49,
247,17,139,104,251,49,5,14,181,239,248,54,118,213,241,1,247,8,238,237,239,239,239,3,247,5,247,69,21,139,133,139,132,142,133,169,
64,211,106,234,131,8,137,7,111,162,117,166,166,162,162,166,30,141,7,247,1,155,230,205,139,247,2,139,247,14,41,178,37,170,8,247,79
,7,177,131,165,122,161,111,148,127,152,130,158,139,166,139,162,162,139,165,139,150,135,149,133,147,102,193,86,173,62,149,8,144,7
,166,116,162,112,112,116,117,111,30,134,7,33,127,48,85,139,251,2,139,251,13,238,102,237,111,8,251,103,7,113,141,114,143,120,149,
108,155,134,192,95,139,112,139,116,117,139,111,8,241,247,250,21,139,191,186,158,190,146,8,251,49,7,102,153,78,155,139,188,8,247,
90,252,26,21,247,72,7,188,122,190,113,139,91,139,86,92,113,86,129,8,14,126,239,228,239,247,100,239,228,239,18,247,7,237,199,236,
124,237,199,236,19,249,247,5,182,21,111,162,116,166,30,156,139,157,151,148,152,8,248,35,249,55,5,143,146,142,148,139,148,139,166
,116,162,112,139,126,139,125,135,129,129,8,252,42,253,65,5,134,132,137,130,139,130,8,141,248,218,21,68,180,69,226,30,19,253,224,
181,211,211,211,97,212,54,55,95,64,66,31,237,142,21,162,146,161,162,162,146,116,117,120,131,114,117,30,130,6,123,144,134,161,139
,156,8,19,251,247,34,252,136,21,68,180,69,226,224,181,212,211,211,97,211,54,30,55,95,64,66,31,237,142,21,162,145,161,163,162,146
,116,117,120,130,114,118,30,133,6,138,140,138,140,138,139,8,123,134,167,153,31,14,126,239,248,222,239,18,247,5,239,67,239,247,75
,239,127,240,19,228,247,5,247,97,21,139,251,26,227,56,247,24,138,8,145,6,197,139,187,154,179,164,152,122,150,119,167,139,166,139
,162,162,139,166,139,165,120,155,128,155,176,195,158,212,139,220,8,166,116,163,112,112,115,116,111,30,139,95,132,98,125,105,8,251
,35,247,91,5,19,216,206,191,247,1,204,139,247,9,8,236,51,193,43,251,10,58,70,251,8,30,139,61,172,85,175,90,8,85,91,96,79,139,45,
8,19,224,239,22,139,197,167,170,169,169,8,247,47,251,107,5,115,125,111,131,106,139,8,133,6,62,140,94,178,139,217,8,19,216,167,248
,19,21,199,178,164,199,175,187,127,100,30,139,115,121,114,126,123,111,105,101,111,100,111,8,115,173,116,176,139,189,8,14,247,168
,247,67,3,247,168,249,100,21,159,251,182,5,141,114,160,121,166,139,8,173,6,165,139,157,156,144,163,8,160,247,184,5,139,140,140,140
,139,140,139,162,118,160,116,142,8,58,6,112,116,117,111,31,14,249,153,119,1,247,148,239,3,247,148,248,7,21,139,251,76,237,251,9,
247,4,64,147,134,149,136,149,139,166,139,162,161,139,167,139,156,129,156,127,147,50,196,62,232,139,247,35,8,144,7,141,247,46,209
,228,233,201,152,148,148,155,139,155,139,167,116,161,112,139,129,139,129,136,131,133,251,6,60,45,251,9,137,251,83,8,14,249,153,119
,1,248,6,239,3,247,73,176,21,112,162,116,166,30,149,139,149,142,147,144,247,6,216,236,247,10,139,247,79,139,247,84,43,247,8,251,
7,218,131,145,130,142,128,139,112,139,116,116,139,112,139,126,148,115,152,135,8,230,77,215,47,139,251,43,139,251,41,64,50,47,79,
127,131,129,121,139,123,8,14,247,205,239,3,247,5,248,82,21,139,115,154,123,158,131,8,247,26,95,49,251,13,5,133,130,135,129,139,128
,139,112,161,116,167,139,153,139,151,143,149,148,8,246,247,36,223,251,36,5,148,130,153,135,152,139,167,139,161,161,139,167,139,148
,137,147,135,147,8,62,247,23,247,9,178,5,159,146,154,156,139,163,139,166,116,162,112,139,133,139,134,138,134,137,8,251,26,95,139
,247,43,5,166,116,162,112,112,116,117,111,30,139,251,43,251,41,188,5,112,115,114,112,31,14,247,222,239,1,247,205,239,3,247,5,248
,16,21,111,162,117,166,30,247,42,251,71,6,111,162,117,166,166,162,162,166,30,247,71,247,42,7,166,162,162,166,166,116,162,112,31,
251,42,247,70,6,166,117,162,111,111,117,117,111,30,251,70,251,42,7,112,116,117,111,31,14,251,55,118,1,247,51,251,26,21,111,161,117
,167,30,167,6,152,139,152,143,149,149,8,247,146,247,153,5,148,148,144,152,139,152,8,170,7,167,116,161,112,30,251,3,6,126,139,124
,135,130,129,8,251,70,251,194,5,135,131,137,131,139,130,8,14,247,208,247,20,1,247,5,248,2,21,111,161,117,167,30,248,36,6,167,161
,162,166,31,167,7,166,117,162,111,30,252,36,6,111,117,117,111,31,14,129,247,89,1,247,133,247,135,3,247,133,179,21,112,162,116,166
,30,247,35,6,166,162,161,167,31,236,7,167,116,161,112,30,251,35,6,112,116,116,112,31,14,249,153,119,1,247,65,176,21,111,162,117,
166,30,159,139,159,153,145,156,8,247,172,249,66,5,142,145,140,145,139,146,139,166,116,162,112,139,119,139,119,125,133,122,8,251,
172,253,66,5,136,133,138,133,139,132,8,14,125,239,248,222,239,1,247,5,239,247,192,239,3,247,5,247,235,21,251,87,189,251,53,247,92
,30,149,139,148,138,149,139,8,154,6,247,54,152,183,247,65,139,247,62,8,247,122,119,247,92,251,122,251,124,121,251,91,251,123,30,
239,22,139,215,139,227,154,201,156,208,172,174,224,139,155,139,161,139,148,137,237,120,144,251,32,139,251,15,8,93,7,251,0,126,251
,40,251,7,30,117,6,123,139,117,139,129,141,50,158,126,247,26,139,240,8,14,247,248,239,3,247,36,248,202,21,112,161,116,167,30,151
,139,151,143,148,147,8,247,21,247,2,139,252,234,5,111,162,117,166,166,162,162,166,30,249,60,7,166,116,162,112,30,107,6,127,139,128
,135,130,131,8,251,75,251,49,5,129,131,134,125,139,126,8,14,140,239,248,208,239,1,248,123,239,3,247,22,249,50,21,113,163,116,165
,30,149,139,150,142,147,145,183,170,183,151,205,139,207,139,195,96,139,69,139,112,128,114,123,118,112,103,87,106,94,110,59,88,60
,77,113,48,8,130,108,138,96,139,100,8,118,7,112,162,116,166,30,247,244,6,166,162,162,166,166,117,162,111,31,251,193,6,145,247,8,
202,177,218,189,224,193,247,4,208,139,247,24,139,247,20,42,224,251,19,139,47,139,81,119,77,98,127,131,130,120,139,124,8,14,126,239
,248,207,239,1,248,140,239,3,247,5,208,21,66,247,36,130,199,30,247,46,139,247,18,227,146,247,43,8,154,7,139,247,17,53,216,251,5,
168,8,247,51,247,60,5,148,148,145,150,139,152,8,174,7,166,116,162,112,30,251,255,6,111,117,117,111,112,162,116,166,31,247,171,139
,251,76,251,85,5,131,131,136,127,139,128,8,112,162,116,166,241,241,98,36,30,130,7,134,40,55,94,41,139,93,139,93,148,96,158,133,141
,133,141,132,139,8,112,116,117,111,31,14,247,56,239,1,248,46,239,3,247,5,247,106,21,111,162,117,166,30,247,139,251,16,6,112,162,
116,166,166,162,162,166,30,247,16,192,7,166,162,162,166,166,117,162,111,31,86,247,8,6,166,116,162,112,112,116,116,112,30,251,8,251
,81,7,247,96,248,71,5,142,145,141,146,139,147,139,166,116,162,112,139,120,139,119,126,133,123,8,251,109,252,99,5,136,132,137,133
,139,131,8,14,126,239,247,218,239,247,37,239,1,248,109,239,3,247,31,176,21,111,162,117,166,30,246,139,247,3,157,220,211,183,179,
180,203,139,215,8,247,65,251,13,222,251,67,30,124,139,147,247,37,247,139,139,5,166,162,163,165,166,117,162,111,31,251,186,6,112,
139,118,119,137,112,8,125,251,143,139,136,5,113,163,118,165,30,143,6,160,141,161,140,160,139,204,139,202,127,174,101,165,111,146
,100,139,100,139,117,132,118,129,120,91,54,251,6,116,34,139,8,112,116,117,111,31,14,126,239,247,192,239,1,247,5,239,247,192,239,
3,247,5,247,121,21,143,251,37,238,42,247,39,139,8,247,39,242,238,247,35,247,49,44,240,251,47,31,117,139,119,137,119,135,191,212,
200,206,199,204,147,148,144,151,139,152,139,166,116,162,112,139,126,139,125,134,130,129,61,54,60,53,78,38,8,101,76,107,58,139,41
,8,239,127,21,237,192,199,236,239,189,81,39,51,78,85,50,49,79,192,228,30,14,249,38,239,1,247,131,239,3,247,5,249,88,21,112,162,116
,166,30,247,232,6,131,118,126,120,127,121,91,69,78,79,97,65,78,32,120,251,17,139,251,16,8,111,162,117,166,166,162,162,166,30,139
,245,153,247,0,192,232,180,210,200,197,184,206,173,189,165,194,139,199,8,166,117,162,111,30,252,36,6,111,117,117,111,31,14,126,239
,248,222,239,18,247,5,238,74,239,247,124,239,73,239,19,228,247,5,247,92,21,251,19,245,53,247,36,30,183,6,247,10,148,227,237,139,
245,139,237,70,212,63,191,8,19,216,201,178,188,189,139,227,8,244,251,3,207,34,33,251,2,72,33,30,139,51,189,87,200,102,8,63,87,70
,67,139,40,8,19,228,238,22,139,222,229,193,202,171,204,105,222,83,139,60,8,77,80,88,69,30,118,6,57,70,178,213,31,19,216,174,248,
36,21,190,209,161,185,185,209,117,88,30,139,72,80,113,82,113,8,83,165,79,166,139,205,8,14,247,165,239,247,192,239,1,247,5,239,247
,192,239,3,247,5,248,150,21,251,26,236,32,247,45,30,159,139,160,140,159,142,92,65,82,72,74,80,129,129,133,127,139,124,139,111,162
,117,166,139,151,139,151,144,148,147,222,213,210,226,195,235,8,182,212,177,214,139,245,8,247,50,251,2,240,251,32,251,32,251,2,251
,10,251,33,30,239,22,225,204,212,224,228,200,79,40,30,139,114,136,115,132,116,123,83,76,126,78,139,8,46,82,197,222,31,14,129,247
,72,247,75,247,72,1,247,151,247,100,3,247,151,179,21,111,162,117,166,30,247,0,6,166,162,162,166,31,219,7,166,116,162,112,30,251,
0,6,112,116,117,111,31,247,175,4,34,10,14,247,245,247,72,1,247,171,247,100,3,247,48,251,21,21,111,162,117,166,30,182,6,152,139,152
,145,148,148,8,247,96,247,159,5,141,141,140,142,139,142,139,143,138,143,139,143,8,166,116,162,112,30,251,3,6,117,139,122,126,133
,124,8,251,16,251,145,5,136,133,138,131,139,132,8,247,15,248,168,21,34,10,14,247,18,247,236,21,248,45,251,163,5,147,133,149,136,
149,139,166,139,162,162,139,166,139,153,134,151,129,149,8,251,237,247,122,247,237,247,122,5,151,147,142,153,139,153,139,166,116,
162,112,139,129,139,129,136,131,133,8,252,45,251,163,5,130,130,135,125,139,126,139,126,143,125,139,130,8,14,247,108,239,247,20,239
,1,247,5,247,158,21,111,161,117,167,30,248,36,6,167,161,162,166,166,116,162,112,31,252,36,6,112,116,117,111,31,247,120,4,111,162
,117,166,30,248,36,6,166,162,162,166,166,117,162,111,31,252,36,6,111,117,117,111,31,14,247,5,247,6,21,111,162,117,166,30,149,139
,148,142,148,145,8,248,44,247,163,5,150,146,142,155,139,152,139,152,135,153,139,148,8,252,44,247,163,5,130,145,130,142,129,139,112
,139,116,117,139,111,139,125,144,127,148,129,8,247,237,251,122,251,237,251,122,5,130,129,134,127,139,125,8,14,72,247,38,248,173,
237,18,247,33,239,188,247,38,251,15,239,182,239,19,236,247,33,248,156,21,140,114,161,117,166,139,8,167,161,161,167,31,139,142,139
,144,5,139,197,193,160,191,145,8,142,6,148,139,148,136,148,139,179,130,178,119,139,92,139,105,109,91,119,118,103,99,82,109,139,66
,8,111,162,117,166,166,162,162,166,30,139,146,143,146,143,144,155,161,163,153,157,159,175,177,179,207,140,204,8,141,7,247,10,40,
196,38,33,251,1,76,251,13,30,19,244,247,41,252,183,21,32,10,14,120,239,247,132,239,247,89,239,1,247,5,239,247,15,239,216,239,3,247
,5,247,86,21,139,251,9,173,47,247,3,135,8,147,6,185,139,173,154,166,162,161,113,171,128,172,139,174,139,175,152,165,163,191,187,
143,202,139,238,8,247,6,7,247,95,90,247,64,251,96,30,130,6,251,17,136,45,81,123,32,8,132,7,111,161,117,167,30,164,139,160,158,142
,162,147,199,198,159,208,142,8,148,6,247,32,152,251,31,251,28,31,139,251,6,139,113,5,139,80,136,79,91,136,8,138,6,121,139,133,161
,138,162,8,247,135,7,165,116,163,112,30,122,139,122,129,130,124,117,154,103,151,108,139,251,7,138,113,251,2,139,251,8,8,239,133,
21,139,145,139,156,5,184,141,204,178,30,177,139,169,108,153,112,8,251,19,7,126,111,123,112,100,139,8,133,6,91,142,138,193,139,189
,8,14,247,91,239,248,44,119,1,247,11,179,21,111,162,117,166,30,162,139,159,156,144,159,8,183,247,64,247,95,139,184,251,64,5,144,
119,159,122,162,139,8,166,163,163,165,31,251,57,249,16,5,134,157,119,152,118,139,8,71,6,116,139,118,122,134,119,8,251,53,252,253
,5,247,60,247,138,21,215,247,184,215,251,184,5,14,140,239,247,107,239,247,77,239,18,247,5,239,247,178,238,54,239,19,244,247,5,190
,21,111,162,117,166,30,247,63,6,211,139,213,145,195,183,188,177,167,198,139,200,8,141,7,139,200,111,196,92,176,8,19,248,180,175,
158,189,139,189,139,207,104,206,78,174,88,167,80,140,81,139,8,251,63,6,111,117,117,111,31,239,252,186,21,247,107,247,42,7,19,244
,219,139,208,111,140,62,8,138,7,48,47,121,52,30,251,13,247,207,21,247,77,247,13,7,19,248,226,139,210,128,146,60,8,130,7,70,70,122
,72,30,14,126,239,248,97,118,228,239,1,247,53,239,247,99,237,3,247,53,247,234,21,141,251,71,188,251,68,247,77,139,227,139,207,193
,152,215,8,148,7,166,117,162,112,30,115,139,118,120,135,117,133,108,110,122,103,139,251,12,139,125,247,35,137,247,6,8,156,7,139,
247,8,160,247,25,247,2,145,8,144,6,157,139,156,134,154,128,167,118,132,87,188,139,8,166,161,162,166,31,149,7,122,214,72,193,52,139
,8,134,6,251,70,135,88,251,68,139,251,75,8,14,161,118,249,80,119,1,247,56,239,247,115,239,3,247,56,190,21,112,162,116,166,30,177
,139,176,139,176,146,247,41,166,247,4,247,13,139,247,67,139,227,109,215,99,193,74,226,51,204,251,42,139,8,111,117,116,112,31,239
,252,184,21,248,131,7,181,134,172,126,168,118,203,93,194,63,139,33,139,251,36,49,67,251,25,127,8,14,140,239,247,107,239,247,77,239
,1,247,51,239,3,247,51,190,21,111,162,117,166,30,247,234,6,166,162,161,167,167,117,161,111,31,251,184,247,107,247,136,6,167,161,
162,166,166,116,162,112,31,251,136,247,77,247,184,6,166,162,161,167,167,117,161,111,31,251,234,6,111,117,117,111,31,14,247,208,239
,247,77,239,1,247,102,239,3,247,102,179,21,112,162,116,166,166,162,162,166,30,247,168,247,71,7,166,162,162,166,166,115,162,113,31
,251,71,247,77,247,116,6,166,162,161,167,167,117,161,111,31,251,166,6,111,117,116,112,31,14,124,241,247,84,239,247,126,241,18,247
,13,240,247,3,247,155,39,239,19,244,247,13,247,245,21,139,251,9,170,251,9,199,77,183,93,205,113,214,139,169,139,171,143,171,148,
175,149,208,158,139,186,8,19,248,247,147,7,166,116,162,112,30,251,55,6,112,116,117,111,111,161,117,167,31,19,244,247,5,251,66,6,
105,127,106,133,109,139,69,139,84,172,115,207,121,189,129,202,139,200,139,222,158,220,182,183,168,168,177,153,177,139,181,139,180
,122,166,108,8,149,128,151,132,155,139,166,139,162,162,139,166,139,151,135,150,131,148,102,184,86,168,81,148,125,141,125,140,126
,139,66,139,79,106,98,98,8,78,78,109,251,5,139,251,6,8,14,247,202,239,247,195,119,1,247,33,239,247,135,239,3,247,33,179,21,112,162
,116,166,166,162,161,167,30,247,162,247,135,251,162,7,112,162,116,166,166,162,161,167,30,249,3,7,167,116,161,112,112,116,116,112
,30,251,145,251,135,247,145,7,167,116,161,112,112,116,116,112,30,14,140,239,248,136,239,1,247,205,239,3,247,62,190,21,112,162,116
,166,30,247,178,6,166,162,162,166,166,117,162,111,31,46,248,136,212,6,166,162,162,166,166,117,162,111,31,251,138,6,111,117,116,112
,112,162,116,166,31,212,252,136,46,6,111,117,116,112,31,14,123,241,249,7,119,1,247,22,239,247,52,239,3,247,22,247,57,21,139,66,184
,82,189,111,169,123,169,132,167,139,236,139,220,223,139,232,139,143,138,144,139,143,8,248,125,7,166,116,162,112,112,116,116,112,
30,252,133,7,83,103,115,102,97,94,169,189,30,139,144,140,144,140,145,8,148,7,167,118,161,111,30,113,139,121,122,134,116,136,126,
138,128,139,127,8,14,249,93,119,1,247,19,239,3,247,19,179,21,112,162,116,166,166,162,162,166,30,139,247,167,247,192,251,202,5,149
,129,152,134,152,139,166,139,162,162,139,166,139,152,133,151,130,149,8,251,172,247,182,247,149,247,155,5,148,148,145,152,139,152
,139,166,116,162,112,139,126,139,126,133,129,130,8,251,169,251,174,139,247,139,5,166,116,162,112,112,116,116,112,30,14,140,239,248
,248,119,1,247,33,239,3,247,33,190,21,112,162,116,166,30,248,8,6,166,162,162,166,166,117,162,111,31,251,214,248,198,6,167,116,161
,112,112,116,116,112,30,14,249,93,119,1,247,5,239,247,192,239,3,247,5,179,21,111,162,117,166,166,162,162,166,30,139,248,175,241,
251,228,5,145,119,159,123,161,139,163,139,156,156,146,158,8,241,247,228,139,252,175,5,111,162,117,166,166,162,162,166,30,249,3,7
,166,116,162,112,30,62,6,116,139,119,123,134,119,8,64,251,139,64,247,139,5,133,158,120,156,116,139,8,62,6,112,116,117,111,31,14,
249,93,119,1,247,19,239,247,164,239,3,247,19,179,21,112,162,116,166,166,162,162,166,30,139,248,116,247,131,252,138,5,147,123,156
,127,159,139,8,177,6,165,163,162,166,31,249,3,7,166,115,162,113,112,116,117,111,30,139,252,117,251,132,248,138,5,131,155,122,152
,119,139,8,102,6,112,116,116,112,31,14,126,239,248,170,239,1,247,8,239,247,186,239,3,247,8,247,246,21,35,10,239,135,21,144,7,139
,218,161,222,179,191,157,162,169,164,176,139,8,243,182,251,47,251,4,35,93,251,55,38,31,37,139,95,247,55,138,243,8,14,247,179,239
,247,106,239,1,247,33,239,247,164,239,3,247,33,179,21,112,162,116,166,166,162,161,167,30,247,139,247,14,7,219,139,222,158,187,203
,164,171,151,179,141,181,8,150,7,247,30,251,0,207,251,34,30,251,64,6,111,117,116,112,31,239,251,156,21,247,106,247,14,7,224,204,
117,55,31,132,7,135,58,66,119,66,139,8,14,171,239,248,120,239,1,247,7,242,247,164,235,3,247,7,248,13,21,139,66,149,66,159,89,172
,59,223,70,230,139,178,139,180,152,178,169,8,193,69,5,148,127,153,136,152,139,166,139,163,162,139,166,139,150,135,150,132,148,8,
74,223,5,171,199,156,219,139,220,8,247,61,65,247,63,251,51,30,130,6,40,139,69,61,109,69,119,91,129,68,139,67,8,242,163,21,192,7,
144,214,181,226,220,139,235,139,187,251,15,139,251,14,139,94,132,94,126,100,8,60,241,5,130,150,124,143,125,139,112,139,117,116,139
,112,139,127,143,129,146,130,8,236,251,17,5,121,126,119,131,115,139,129,139,129,140,128,142,45,164,132,247,6,139,247,18,8,14,247
,179,239,247,106,239,1,247,45,239,247,123,239,3,247,45,179,21,111,162,117,166,166,162,162,166,30,247,139,225,7,247,56,251,175,5,
148,129,154,135,152,139,166,139,162,162,139,166,139,148,138,147,134,147,8,251,28,247,126,5,237,175,177,236,139,247,3,139,237,251
,15,191,45,147,8,251,56,6,111,117,117,111,31,239,251,156,21,247,106,247,0,7,171,139,171,127,167,123,153,132,156,129,139,126,139,
90,137,86,102,108,117,120,108,135,110,139,8,14,124,239,248,167,239,1,247,45,239,247,118,239,3,247,39,247,45,21,152,41,229,69,245
,139,151,139,152,140,152,141,244,156,219,214,139,247,1,139,247,50,251,37,176,34,193,101,159,101,161,139,196,139,190,199,167,195,
139,8,168,139,167,132,158,123,166,116,139,85,187,139,167,139,161,162,139,166,139,143,138,144,138,143,116,222,66,193,35,139,8,133
,6,251,2,137,40,69,139,32,139,251,45,247,33,100,242,87,180,118,180,117,139,78,139,110,128,109,116,122,115,121,107,129,108,139,86
,139,89,166,131,194,8,136,162,118,159,113,139,8,112,116,116,112,31,14,248,237,239,1,247,205,239,3,247,5,249,31,21,111,162,117,166
,30,247,42,252,197,6,111,162,117,166,166,162,162,166,30,248,197,247,42,7,166,162,162,166,166,117,162,111,31,252,36,6,111,117,117
,111,31,14,126,239,249,6,119,1,247,19,239,247,164,239,3,247,19,247,103,21,139,65,171,67,201,98,181,111,189,130,189,139,189,139,189
,148,181,167,200,180,172,211,139,213,8,248,88,7,166,115,162,113,112,116,117,111,30,252,88,7,62,86,92,56,30,109,139,107,143,114,155
,105,162,124,179,139,180,8,248,88,7,166,116,162,112,112,116,116,112,30,14,249,93,119,1,247,4,249,43,21,247,59,253,16,5,144,120,160
,121,163,139,8,207,6,162,139,159,156,144,159,8,247,61,249,16,5,165,115,163,112,30,115,139,121,122,132,119,8,251,43,252,207,251,44
,248,207,5,134,159,119,156,116,139,8,112,115,116,112,31,14,249,93,119,1,247,5,239,247,191,240,3,247,5,249,43,21,147,251,120,151,
251,102,182,251,88,144,119,158,120,165,139,8,167,6,165,139,155,156,145,158,8,200,247,103,199,251,92,5,147,113,174,118,173,139,163
,139,160,158,143,159,181,247,87,153,247,103,147,247,120,8,141,7,164,115,162,113,113,114,116,112,30,133,251,55,130,251,43,119,251
,35,8,81,247,86,5,133,157,121,157,115,139,8,122,6,115,139,123,124,132,121,8,80,251,96,5,118,247,38,131,247,46,133,247,56,138,165
,118,163,111,139,8,113,115,118,112,31,14,249,93,119,1,247,25,179,21,111,162,117,166,30,159,139,153,151,149,153,8,247,28,247,142,
247,34,251,154,5,149,129,154,135,152,139,166,139,162,162,139,166,139,147,137,148,135,146,8,251,53,247,188,247,47,247,170,5,143,147
,141,147,139,148,139,166,116,162,112,139,119,139,125,126,129,126,8,251,22,251,127,251,30,247,139,5,130,148,125,144,126,139,112,139
,116,117,139,111,139,130,141,131,143,131,8,247,47,251,170,251,53,251,188,5,135,132,137,130,139,131,8,14,249,93,119,1,247,205,239
,3,247,28,249,43,21,139,130,141,131,143,132,8,247,63,251,212,139,251,171,5,111,162,117,166,166,162,162,166,30,139,247,171,247,63
,247,212,5,143,146,141,147,139,148,139,166,116,162,112,139,121,139,119,127,133,124,8,251,25,251,141,251,25,247,141,5,130,154,124
,151,119,139,112,139,116,117,139,111,8,14,140,239,248,136,239,1,247,33,190,21,112,162,116,166,30,247,235,6,166,162,161,167,167,117
,161,111,31,251,153,139,247,163,248,163,5,143,146,141,147,139,147,8,165,116,163,112,30,251,198,6,111,117,116,112,112,162,116,166
,31,247,116,139,251,163,252,163,5,135,132,137,131,139,131,8,14,126,239,248,222,239,1,247,102,239,3,247,102,176,21,112,162,116,166
,30,247,178,6,166,162,162,166,166,116,162,112,31,251,128,248,222,247,128,6,167,161,162,166,166,116,162,112,31,251,178,6,112,116,
116,112,31,14,249,153,119,1,247,65,249,103,21,139,132,140,133,142,133,8,247,172,253,66,5,146,122,158,125,159,139,166,139,162,162
,139,166,139,146,138,145,136,145,8,251,172,249,66,5,132,155,120,154,119,139,112,139,116,117,139,111,8,14,126,239,248,222,239,1,248
,52,239,3,247,22,176,21,112,162,116,166,30,247,178,6,166,162,162,166,31,249,66,7,166,116,162,112,30,251,178,6,112,116,116,112,112
,161,116,167,31,247,128,252,222,251,128,6,112,116,116,112,31,14,247,5,248,53,21,36,10,14,251,128,247,21,1,247,5,251,49,21,110,7,
111,162,117,166,30,248,36,6,166,162,162,166,31,168,7,166,116,162,112,30,252,36,6,112,116,117,111,31,14,248,220,247,78,1,247,151,
247,46,3,247,151,249,100,21,139,129,141,130,144,131,8,199,45,5,149,129,153,134,152,139,166,139,162,162,139,166,139,149,136,148,134
,147,8,79,234,5,132,150,123,142,126,139,112,139,116,117,139,111,8,14,122,240,247,50,236,244,239,1,247,19,239,247,141,239,3,247,19
,247,46,21,139,39,230,75,223,133,145,139,145,138,144,139,202,139,191,165,181,175,8,131,7,111,162,117,166,166,162,162,166,30,247,
202,7,139,194,117,193,99,177,99,176,83,152,84,139,77,139,80,116,89,103,128,131,131,122,139,125,139,111,161,117,167,139,150,139,150
,142,148,146,8,170,164,177,152,179,139,169,139,170,136,161,118,161,119,144,108,142,109,251,66,138,251,67,127,139,251,64,8,239,22
,37,10,14,123,238,247,250,237,247,126,119,1,247,16,239,247,181,239,3,247,16,176,21,112,162,116,166,166,162,161,167,30,143,7,177,
109,184,118,190,134,148,138,148,139,148,139,8,247,48,211,247,28,247,53,31,145,7,138,247,20,68,228,251,1,166,118,144,119,142,120,
139,81,139,89,116,99,107,8,247,131,7,167,116,161,112,112,116,116,112,30,239,252,159,21,247,17,7,161,183,175,178,183,159,159,148,
158,143,157,139,216,139,190,60,141,62,8,131,7,139,62,124,76,91,107,115,123,115,133,116,139,70,139,77,198,115,197,8,14,121,239,247
,248,239,1,247,59,239,247,93,237,3,247,59,247,166,21,139,251,19,170,44,223,94,172,121,172,132,172,139,227,139,217,195,158,215,8,
151,7,166,117,162,112,30,114,139,120,120,134,119,132,112,115,121,112,133,127,136,127,138,129,139,48,139,121,237,139,233,139,205,
153,203,185,161,156,147,162,143,163,139,8,172,139,170,130,147,116,146,118,156,121,163,139,8,167,160,161,167,31,151,7,124,200,84,
176,75,147,124,141,125,140,125,139,251,43,139,74,251,5,139,251,43,8,14,124,235,247,250,239,247,126,119,1,247,5,239,247,180,239,3
,247,5,247,161,21,139,251,36,197,32,247,14,112,159,135,158,137,158,139,197,139,190,158,180,170,140,113,162,117,165,139,8,166,162
,161,167,31,249,66,7,167,116,161,112,112,116,116,112,30,251,130,7,101,167,85,165,79,139,121,139,120,136,120,134,251,5,108,72,45,
139,251,29,8,239,22,139,205,157,189,183,169,164,156,165,146,163,139,207,139,197,83,164,84,8,251,20,7,123,89,99,101,94,121,118,130
,119,135,121,139,53,139,97,234,139,232,8,14,124,237,247,45,239,247,0,239,1,247,19,248,56,3,247,19,247,166,21,139,251,29,195,35,246
,104,164,131,173,134,175,139,8,217,223,162,205,167,116,161,111,31,126,139,127,134,130,130,126,126,123,131,118,136,127,137,127,138
,128,139,45,139,94,202,130,229,8,247,212,6,166,162,162,166,247,40,60,247,2,251,44,31,133,6,251,42,136,54,251,10,139,251,41,8,246
,201,21,156,201,181,185,210,139,226,139,165,99,153,71,8,14,248,69,239,247,29,239,1,247,199,239,3,247,39,248,119,21,112,161,116,167
,30,247,2,139,145,252,32,5,111,162,117,166,166,162,162,166,30,133,248,32,247,14,139,5,166,162,162,166,166,115,162,113,31,251,14,
148,6,139,161,139,171,143,152,151,182,189,157,192,139,8,166,162,162,166,166,116,162,112,251,41,69,61,251,42,31,130,251,2,7,112,116
,116,112,31,14,251,82,239,247,1,239,247,212,239,1,247,8,239,247,163,239,3,247,8,247,161,21,251,28,217,251,6,247,32,30,205,139,187
,161,178,172,8,139,114,139,117,5,139,117,138,117,130,119,121,98,99,127,82,139,110,139,97,139,117,149,113,151,138,177,100,139,112
,139,116,117,139,111,139,132,140,132,142,133,8,170,67,212,121,240,139,247,30,139,229,219,139,247,19,139,153,138,154,137,154,8,248
,61,7,166,116,162,112,30,114,139,116,118,137,114,107,165,99,157,91,143,131,140,131,139,131,139,8,251,42,62,251,10,251,44,31,239,
22,235,175,213,233,30,152,6,208,134,178,77,159,84,8,55,7,108,86,99,78,57,139,8,57,103,211,217,31,14,248,75,239,247,126,119,1,247
,48,239,247,106,239,3,247,48,176,21,111,162,117,166,166,162,162,166,30,247,184,7,166,191,178,197,214,139,8,210,141,70,67,31,139,
127,139,251,141,5,112,162,116,166,166,162,162,166,30,247,141,7,139,182,139,186,129,176,119,210,80,194,55,139,78,139,94,118,104,110
,8,247,126,7,166,116,162,112,112,116,117,111,30,14,248,60,239,242,247,38,18,247,73,247,172,251,34,247,37,36,239,19,224,247,73,248
,110,21,112,162,116,166,30,19,200,38,10,19,224,39,10,19,208,247,30,247,95,21,40,10,14,251,75,242,248,140,239,241,247,38,18,247,102
,247,138,251,29,247,37,251,0,239,19,228,247,45,251,21,21,95,182,129,185,30,163,139,163,142,160,141,195,144,187,188,161,184,157,176
,140,183,139,181,8,139,152,5,19,240,41,10,19,228,235,252,3,6,139,107,139,99,129,118,133,125,118,111,121,138,8,88,137,5,125,139,125
,140,125,139,8,134,6,111,117,117,111,31,19,232,247,58,249,186,21,40,10,14,248,172,119,247,149,119,1,247,65,239,3,247,65,176,21,111
,162,117,166,166,162,162,166,30,247,99,142,7,247,117,251,134,5,148,129,153,134,152,139,166,139,162,162,139,166,139,152,134,151,131
,148,8,251,98,247,113,247,64,247,50,5,149,148,145,152,139,153,139,166,116,162,112,139,126,139,127,133,130,130,8,251,88,251,69,136
,139,139,248,15,5,166,116,162,112,112,116,117,111,30,14,132,239,249,60,119,18,247,145,238,46,239,19,224,247,145,247,120,21,139,68
,147,88,173,94,183,81,204,129,241,139,8,166,162,162,166,166,116,162,112,31,113,139,101,139,125,141,74,148,128,192,139,210,8,19,208
,146,248,130,5,167,116,162,112,111,117,116,111,30,14,248,75,239,1,247,5,239,239,239,239,239,3,20,112,247,5,176,21,111,162,117,166
,166,162,162,166,30,247,170,7,178,165,224,183,30,161,139,146,114,140,121,8,251,251,7,111,162,117,166,166,162,162,166,30,247,170,
7,179,166,223,182,30,161,139,146,114,140,121,8,251,251,7,111,162,117,166,166,162,162,166,30,248,3,7,209,85,204,63,30,99,139,104,
120,113,111,116,167,104,158,98,139,108,139,113,129,117,123,130,153,124,148,122,139,8,112,116,117,111,31,14,248,75,239,1,247,19,239
,247,164,239,3,247,19,176,21,112,162,116,166,166,162,162,166,30,247,158,7,165,203,191,211,225,139,8,230,156,76,49,31,251,141,7,111
,162,117,166,165,163,162,166,30,247,141,7,247,41,81,243,251,42,30,71,139,85,114,97,102,8,148,7,166,116,161,112,112,116,117,112,30
,14,123,239,247,252,239,1,247,5,239,247,192,239,3,247,5,247,155,21,42,10,239,22,43,10,14,251,55,118,247,60,239,247,248,238,1,247
,16,239,247,181,239,3]);fileData1.push.apply(fileData1,[247,16,251,26,21,112,161,116,167,167,161,161,167,30,247,64,7,176,109,185
,118,192,136,8,156,6,247,46,221,247,13,247,44,31,139,247,37,79,238,251,14,169,117,144,119,142,119,139,82,139,90,118,100,107,8,167
,116,161,112,112,116,116,112,30,239,251,172,21,247,10,7,163,192,189,196,207,144,144,139,143,140,143,139,238,139,174,53,139,42,139
,54,107,75,66,120,126,136,127,137,127,139,62,139,96,208,112,192,8,14,251,55,118,247,60,237,247,249,239,1,247,5,239,247,180,239,3
,247,5,247,149,21,139,251,31,203,38,247,9,113,160,134,158,137,158,139,198,139,189,160,178,171,8,251,63,7,112,161,116,167,167,161
,161,167,30,249,0,7,167,116,161,112,112,116,116,112,30,100,171,90,160,82,139,119,139,119,136,117,134,251,15,109,81,40,139,251,37
,8,239,22,139,207,153,202,187,168,164,154,164,146,162,139,210,139,195,78,165,83,8,251,11,7,120,93,103,95,93,120,118,131,120,135,
121,139,55,139,94,225,139,228,8,14,248,75,239,1,247,96,239,247,84,239,3,247,96,176,21,112,162,116,166,166,162,161,167,30,247,116
,7,139,214,183,228,219,150,146,139,146,142,146,139,144,139,145,136,144,139,157,135,152,124,139,121,140,112,161,117,166,139,166,139
,162,162,139,167,8,138,214,81,202,51,139,79,139,91,119,102,106,8,167,117,160,111,112,116,117,112,30,14,123,236,247,255,239,1,247
,51,239,247,112,239,3,247,45,236,21,139,130,140,130,144,131,176,79,203,112,232,139,8,149,6,247,7,142,240,183,139,247,10,139,247,
31,251,40,152,251,3,168,109,147,108,152,139,177,8,190,197,143,185,30,165,6,169,137,173,135,146,111,144,118,159,123,163,139,166,139
,162,162,139,166,139,143,138,143,138,144,121,207,67,175,66,143,8,108,6,32,42,96,251,4,31,139,251,31,247,30,122,247,2,110,169,131
,181,129,139,102,139,91,77,119,79,139,106,139,108,145,118,149,114,151,131,177,103,139,112,139,116,117,139,111,8,14,126,239,247,232
,239,18,247,141,239,44,239,19,224,247,19,248,113,21,112,162,116,166,30,214,139,136,251,118,139,127,5,139,44,162,72,212,111,158,132
,169,134,169,139,8,201,206,158,190,166,116,162,112,31,110,139,114,119,108,139,8,137,6,72,139,185,205,31,142,247,120,247,43,139,5
,166,162,162,166,166,116,162,112,31,19,208,251,41,139,141,240,5,166,117,162,111,111,117,118,110,30,137,38,62,139,5,112,116,116,112
,31,14,123,239,248,88,119,1,247,19,239,247,164,239,3,247,19,247,134,21,139,100,140,100,148,105,163,53,205,81,245,137,8,143,6,207
,139,192,163,180,175,8,132,7,111,162,117,166,165,163,162,166,30,248,85,7,166,115,162,113,112,116,117,111,30,251,151,7,116,71,90,
64,52,139,8,134,6,42,142,128,204,139,244,8,247,121,7,166,115,162,112,113,116,115,113,30,251,121,7,14,248,172,119,1,247,8,248,122
,21,139,133,140,133,141,134,8,247,52,252,85,5,146,120,158,125,160,139,8,213,6,159,139,161,154,144,157,8,247,52,248,85,5,141,144,
140,145,139,145,139,166,116,162,112,139,118,139,118,123,134,121,8,251,40,252,51,135,139,251,40,248,51,5,132,158,122,154,116,139,
112,139,116,117,139,111,8,14,248,172,119,1,247,7,239,247,187,240,3,247,7,248,122,21,194,252,91,5,142,116,160,118,165,139,8,189,6
,162,139,156,155,146,158,8,185,247,51,185,251,51,5,145,120,157,123,163,139,8,188,6,164,139,161,159,141,163,8,195,248,91,139,143,
5,163,114,161,113,30,113,139,119,118,135,116,8,100,251,216,102,247,18,5,133,159,121,155,115,139,8,93,6,116,139,119,123,134,119,8
,102,251,18,99,247,216,5,137,163,117,159,114,139,8,112,115,116,112,31,14,248,172,119,1,247,39,176,21,112,162,116,166,30,152,139,
153,143,148,149,8,247,22,247,77,247,21,251,77,5,148,127,153,137,153,139,165,139,163,162,139,166,139,149,135,149,133,148,8,251,32
,247,92,247,22,247,84,5,144,147,142,149,139,149,139,166,116,162,112,139,126,139,125,134,130,130,8,251,10,251,67,251,10,247,67,5,
132,149,123,143,126,139,112,139,116,117,139,111,139,129,142,129,144,131,8,247,21,251,84,251,32,251,92,5,133,130,136,129,139,129,
8,14,251,75,241,248,253,119,1,247,5,251,23,21,139,114,156,120,161,134,148,137,149,138,148,139,189,139,183,170,157,176,8,247,207,
248,212,5,143,146,141,148,139,148,139,166,116,162,112,139,126,139,124,134,129,130,8,251,49,251,182,251,61,247,182,5,130,148,125,
144,126,139,112,139,116,117,139,111,139,130,141,130,144,132,8,247,84,251,223,251,0,251,90,5,133,127,130,138,129,139,8,123,6,112,
116,117,111,31,14,138,239,247,217,239,1,247,39,188,21,112,161,116,167,30,247,232,6,167,161,162,166,166,116,162,112,31,251,151,139
,247,164,247,194,5,148,148,144,151,139,151,8,179,7,167,117,161,111,30,251,200,6,111,117,117,111,111,162,117,166,31,247,124,139,251
,170,251,200,5,131,130,134,128,139,127,8,14,126,239,247,135,239,247,135,239,1,247,176,239,3,20,224,247,5,248,15,21,111,162,118,166
,30,175,139,181,139,161,117,159,118,140,109,139,111,139,41,161,62,204,100,184,112,220,138,205,139,8,166,162,162,166,166,116,162,
112,31,91,139,68,139,118,152,102,162,137,186,139,198,139,193,127,196,100,178,183,172,146,213,139,196,139,172,139,177,158,164,162
,171,185,141,196,139,8,173,6,167,161,162,166,166,116,162,112,31,251,8,139,64,131,90,72,107,95,132,83,139,84,8,129,7,139,110,138,
108,124,121,118,114,93,139,101,139,8,112,116,116,111,31,14,249,153,119,1,247,205,239,3,247,205,251,3,21,111,161,117,167,167,161,
162,166,30,249,214,7,166,116,162,112,112,116,117,111,30,14,126,239,247,135,239,247,135,239,1,247,233,239,3,20,224,247,5,176,21,111
,162,117,166,30,205,139,220,139,184,167,204,178,160,215,139,238,139,167,140,169,160,160,161,161,181,139,175,139,8,166,162,161,166
,166,116,163,112,31,135,6,102,139,96,139,118,164,122,159,139,176,139,170,139,194,133,195,107,183,90,206,63,147,251,7,139,8,112,116
,117,111,111,161,117,167,31,178,139,196,139,160,132,190,124,149,93,139,77,139,84,146,63,183,106,100,100,127,82,139,85,139,106,139
,101,129,115,120,95,90,136,72,139,8,106,6,112,116,117,111,31,14,248,171,239,125,240,107,159,18,139,238,247,166,238,19,88,247,19,
248,233,21,44,10,19,184,45,10,19,88,46,10,14,247,191,247,37,18,247,182,247,38,251,15,239,19,192,248,216,247,241,21,47,10,162,252
,201,21,33,10,14,247,56,239,247,124,239,1,247,39,239,247,124,239,3,247,118,247,72,21,111,162,117,166,30,152,139,152,144,148,149,
8,190,190,5,172,119,178,127,181,139,180,139,177,150,173,160,8,190,88,5,149,129,152,134,152,139,166,139,162,162,139,166,139,152,134
,152,129,148,8,87,191,5,160,172,151,178,139,180,139,180,126,178,119,172,8,191,191,5,149,148,144,152,139,152,139,166,116,162,112,
139,126,139,126,134,129,129,8,88,88,5,106,159,100,151,98,139,97,139,100,127,106,119,8,88,190,5,130,149,126,144,126,139,112,139,116
,117,139,111,139,126,144,126,148,130,8,191,87,5,119,106,127,100,139,98,139,97,151,101,159,106,8,87,87,5,130,130,134,126,139,126,
8,247,26,247,92,21,203,191,191,203,203,191,87,75,75,84,87,78,75,87,191,203,30,14,247,134,248,24,21,139,32,241,102,238,131,204,134
,247,6,147,139,65,139,75,73,126,78,138,8,133,6,69,139,88,156,119,190,131,157,121,153,118,139,111,139,117,116,139,111,139,133,140
,134,141,133,174,52,217,94,247,12,139,8,147,6,247,10,141,247,1,190,139,247,12,8,144,7,138,184,125,172,115,164,162,165,155,172,139
,179,8,143,7,136,241,50,181,44,148,76,145,35,130,139,212,139,202,204,155,201,139,168,139,166,134,158,126,169,119,139,88,186,139,
165,139,163,163,139,165,8,139,145,138,144,137,144,114,216,66,185,38,139,251,16,139,36,82,139,251,14,139,100,149,109,155,116,110,
110,116,100,139,93,8,239,22,139,163,160,161,158,152,181,126,189,134,189,134,178,136,198,133,139,95,139,112,123,126,122,128,120,144
,118,142,118,141,84,144,251,23,131,139,200,8,14,247,165,247,49,1,247,119,239,211,239,3,248,90,247,215,21,112,161,116,167,167,161
,162,166,30,196,7,166,116,162,112,112,116,116,112,30,247,64,82,21,111,161,117,167,166,162,162,166,30,196,7,166,115,162,113,112,116
,117,111,30,14,139,28,249,67,247,192,247,192,247,192,247,192,247,192,248,86,247,192,247,192,247,192,247,192,247,192,1,28,249,67,
247,192,247,192,247,192,247,192,247,192,248,86,247,192,247,192,247,192,247,192,247,192,3,247,117,4,247,16,240,38,251,16,251,16,38
,38,251,16,251,16,38,240,247,16,247,16,240,240,247,16,31,247,192,4,251,182,251,127,251,127,251,182,251,182,247,127,251,127,247,182
,247,182,247,127,247,127,247,182,247,182,251,127,247,127,251,182,31,135,247,192,21,248,89,248,12,252,4,252,89,252,89,252,12,252,
12,252,89,252,89,252,4,248,12,248,89,248,89,248,4,248,4,248,89,31,247,192,4,252,255,252,138,252,138,252,255,252,255,248,138,252,
146,248,255,248,255,248,146,248,146,248,255,248,255,252,146,248,138,252,255,31,247,192,4,249,165,249,24,253,16,253,165,253,165,253
,24,253,24,253,165,253,165,253,16,249,24,249,165,249,165,249,16,249,16,249,165,31,143,247,192,21,254,74,253,155,253,155,254,74,254
,74,249,155,253,155,250,74,250,74,249,155,249,155,250,74,250,74,253,155,249,155,254,74,31,14,248,159,251,92,251,16,21,247,92,39,
247,92,239,139,247,140,251,92,239,251,92,39,5,14,248,172,239,1,247,146,248,222,21,112,161,116,167,30,248,8,6,166,162,162,166,166
,115,162,113,31,252,8,6,112,116,116,112,31,14,248,137,247,78,1,247,205,247,46,3,249,6,248,187,21,111,162,117,166,30,152,139,153,
144,148,148,8,199,234,5,144,147,142,149,139,148,139,166,116,162,112,139,126,139,125,135,130,129,8,79,44,5,134,131,136,130,139,129
,8,14,251,228,239,239,247,89,1,247,193,239,145,239,3,248,238,150,21,42,7,112,162,116,166,30,142,139,143,139,5,166,161,117,111,112
,116,116,111,31,137,139,136,139,5,111,117,116,112,31,139,112,161,118,165,137,8,146,6,222,207,205,223,31,139,208,94,195,78,157,8,
193,7,167,117,161,111,111,117,116,112,30,14,251,113,239,248,173,247,37,18,247,62,239,159,247,38,251,15,239,210,239,19,236,247,232
,107,21,125,7,146,34,221,69,247,5,139,8,148,6,247,1,143,233,213,139,245,8,150,7,137,165,118,160,112,139,8,111,117,116,112,31,139
,137,139,135,5,83,83,109,84,30,87,139,89,165,138,194,8,143,7,139,186,158,162,165,161,184,177,192,177,139,210,8,222,7,166,116,162
,112,112,116,117,111,30,56,7,139,112,101,116,114,118,8,96,102,102,87,139,64,8,19,244,247,12,248,134,21,47,10,14,247,35,240,47,238
,248,1,247,49,79,119,18,247,5,239,247,192,239,19,44,247,118,249,46,21,48,10,142,253,63,21,111,162,117,166,30,163,139,155,155,146
,159,8,19,76,177,247,18,5,19,156,247,119,130,174,251,9,5,144,119,159,123,161,139,166,139,162,162,139,166,139,144,138,144,138,143
,8,251,78,249,3,5,133,157,121,157,115,139,8,116,6,115,139,123,124,132,121,8,251,78,253,6,5,137,135,139,134,139,134,8,19,76,247,56
,247,103,21,222,247,167,5,19,140,223,251,174,5,205,248,58,21,19,44,48,10,14,140,239,237,239,156,239,247,80,239,1,251,2,178,21,114
,165,115,165,30,163,139,157,157,146,158,8,183,247,64,247,95,139,180,251,52,5,145,118,157,122,164,139,8,247,215,6,166,162,162,166
,166,117,162,111,31,251,177,139,83,247,107,247,233,139,5,167,161,162,166,166,116,162,112,31,252,2,139,90,247,80,248,51,139,5,166
,162,162,166,166,117,162,111,31,252,186,6,115,139,120,122,134,119,8,147,252,4,21,214,247,183,215,251,183,5,14,126,239,248,68,238
,137,247,49,18,247,5,239,47,239,247,175,239,48,239,19,176,247,118,249,46,21,48,10,147,252,56,21,139,251,12,178,46,208,84,172,113
,181,117,198,139,188,139,187,156,176,170,208,195,177,229,139,247,14,139,247,56,63,247,43,251,57,139,116,139,116,136,117,131,8,251
,3,100,76,251,10,139,251,39,8,239,22,241,178,247,6,242,242,177,251,6,37,35,100,251,4,37,30,120,139,124,148,123,142,75,172,111,218
,139,231,8,19,162,247,184,247,255,21,48,10,14,126,239,248,170,239,1,247,10,237,247,186,239,3,247,66,119,21,112,162,116,166,30,157
,139,155,150,148,152,8,191,226,5,175,105,183,119,190,139,247,53,139,224,247,88,140,247,63,8,145,7,139,218,121,218,106,203,8,211,
247,13,5,144,146,141,148,139,148,139,167,117,161,112,139,125,139,126,134,129,130,8,81,44,5,103,172,96,158,87,139,99,139,90,121,109
,115,57,73,95,251,20,139,251,22,139,60,155,59,173,72,8,65,251,15,5,135,131,136,130,139,130,8,247,21,248,10,21,144,7,139,218,161,
222,179,191,157,162,169,164,176,139,171,139,165,124,160,115,8,251,102,251,238,5,128,179,134,181,139,175,8,207,251,119,21,247,102
,247,241,5,150,98,144,96,139,101,139,35,93,251,55,38,139,107,139,113,155,118,163,8,14,126,239,248,222,239,18,247,5,239,39,247,43
,247,89,247,44,39,239,19,228,247,118,247,178,21,251,77,207,251,6,247,74,247,74,207,247,7,247,76,30,247,143,7,166,116,162,112,112
,116,117,111,30,251,143,7,139,103,138,102,130,104,124,77,89,110,64,139,87,139,95,154,115,170,113,173,135,203,139,194,8,247,143,7
,166,116,162,112,112,116,117,111,30,247,78,4,111,161,117,167,30,19,224,189,6,19,208,168,161,161,167,31,19,224,167,116,161,111,30
,89,6,112,116,117,111,31,19,200,247,240,22,112,161,116,167,30,191,6,167,161,162,166,166,116,162,112,31,87,6,112,116,116,112,31,14
,132,239,247,140,247,8,247,105,239,18,247,28,239,247,146,239,62,237,19,248,247,164,176,21,111,162,117,166,166,162,162,166,30,248
,56,7,247,10,146,234,247,12,211,194,105,68,30,139,81,97,92,89,136,114,137,119,118,139,114,8,121,7,112,161,116,165,30,141,139,142
,139,141,139,5,19,244,210,139,172,81,140,72,8,135,7,139,83,118,77,82,138,114,138,116,116,139,113,139,113,164,115,165,139,247,9,142
,195,245,139,247,0,139,218,109,219,79,179,8,19,248,180,175,167,194,139,203,8,142,7,137,247,18,44,216,251,22,139,8,251,76,96,251,
24,251,73,31,14,122,240,247,50,236,244,239,154,247,49,18,247,19,239,139,239,211,239,116,239,19,249,247,146,247,46,21,139,39,230,
75,223,133,145,139,145,138,144,139,202,139,191,165,181,175,8,131,7,111,162,117,166,166,162,162,166,30,247,202,7,139,194,117,193,
99,177,99,176,83,152,84,139,77,139,80,116,89,103,128,131,131,122,139,125,139,111,161,117,167,139,150,139,150,142,148,146,8,170,164
,177,152,179,139,169,139,170,136,161,118,161,119,144,108,142,109,8,251,66,138,251,67,127,139,251,64,8,239,22,37,10,19,244,248,90
,4,49,10,247,64,81,21,50,10,14,124,237,247,45,239,247,0,239,1,103,239,3,67,247,46,21,139,39,230,75,223,133,145,139,145,138,144,139
,203,139,190,166,181,175,8,130,7,111,162,117,166,30,164,139,160,158,143,163,157,125,160,129,162,131,164,131,174,134,175,139,8,217
,224,162,205,166,116,162,111,31,126,139,125,134,129,130,8,137,7,129,125,118,134,122,136,127,137,127,138,128,139,45,139,94,202,130
,229,8,247,211,6,167,161,161,167,247,40,62,247,2,251,45,31,133,6,64,137,81,110,99,92,103,191,71,165,68,139,77,139,78,119,91,100,
127,130,132,125,139,123,139,112,161,116,167,139,150,139,150,142,148,146,8,170,164,177,152,179,139,169,139,170,136,161,118,161,119
,145,108,141,109,251,65,138,251,68,126,139,251,63,8,239,22,214,229,152,229,30,163,139,162,138,161,138,8,99,7,108,89,89,73,64,139
,8,129,6,104,141,91,164,139,182,8,247,248,247,74,21,51,10,14,123,239,247,252,239,154,247,49,1,247,5,239,153,239,210,240,153,239,
3,247,118,247,155,21,42,10,239,22,43,10,153,247,237,21,49,10,247,63,81,21,113,162,116,166,166,163,161,166,30,197,7,166,114,162,113
,113,115,116,112,30,14,123,239,247,252,239,1,247,5,239,247,192,239,3,247,32,116,21,112,162,116,166,30,152,139,152,144,148,149,8,
208,220,5,177,114,185,125,194,139,247,52,139,229,247,15,139,247,48,139,203,124,197,111,185,8,213,227,5,146,148,144,150,139,151,139
,166,117,162,111,139,125,139,127,134,129,130,8,68,57,5,102,164,94,153,85,139,251,55,139,52,251,15,139,251,50,139,76,153,81,167,93
,8,66,52,5,131,130,135,128,139,127,8,247,35,247,178,21,238,187,221,241,30,167,139,163,133,159,128,8,251,101,251,139,5,130,164,135
,167,139,169,8,216,251,54,21,247,101,247,139,5,148,114,144,110,139,108,139,40,92,59,36,139,111,139,114,145,119,150,8,14,123,239,
248,88,119,182,247,49,18,247,19,239,139,239,211,239,139,239,19,242,247,146,247,134,21,139,100,140,100,148,105,163,53,205,81,245,
137,8,143,6,207,139,192,163,180,176,8,131,7,111,162,117,166,165,163,162,166,30,248,85,7,166,115,162,113,112,116,117,111,30,251,151
,7,116,71,90,64,52,139,8,134,6,42,142,128,204,139,244,8,247,121,7,166,115,162,112,113,116,115,113,30,251,121,7,239,247,243,21,49
,10,247,64,81,21,50,10,14,248,60,239,18,247,73,247,172,39,239,19,192,247,254,248,110,21,112,162,116,166,30,19,160,38,10,19,192,39
,10,14,126,239,53,239,247,107,239,247,77,239,59,239,18,58,239,247,186,239,19,166,251,54,247,246,21,140,251,63,226,251,88,247,51,
139,198,139,189,166,177,182,8,133,7,19,118,111,162,117,166,30,247,235,6,166,162,162,166,166,117,162,111,31,251,185,247,107,247,136
,6,167,160,161,167,166,117,162,112,31,251,136,247,77,247,185,6,166,162,162,166,166,117,162,111,31,251,235,6,111,139,119,119,137,
112,8,19,174,100,180,90,165,80,139,8,251,60,60,251,83,251,63,31,239,134,21,145,7,139,217,157,223,181,189,162,166,165,161,177,139
,240,139,184,251,41,140,251,3,8,132,7,138,35,95,251,55,37,139,37,139,95,247,55,138,243,8,14,123,239,247,44,239,247,0,239,1,52,239
,3,251,66,247,155,21,251,50,228,251,13,247,53,30,229,139,206,177,182,201,165,98,177,110,187,123,163,131,174,134,175,139,8,218,224
,162,205,166,116,162,111,31,126,139,124,135,130,129,127,125,123,132,119,136,127,137,127,138,128,139,45,139,94,202,130,229,8,247,
211,6,167,161,161,167,247,40,62,247,2,251,45,31,133,6,54,137,76,102,99,80,97,199,72,177,51,139,8,251,55,52,251,15,251,50,31,239,
22,238,187,221,241,240,188,58,39,40,91,59,37,37,91,219,238,30,248,43,212,21,51,10,14,251,71,239,248,139,239,18,247,102,247,138,39
,239,19,208,247,198,251,21,21,111,162,117,166,30,177,139,209,139,145,141,239,162,178,229,139,247,13,8,19,224,41,10,19,208,235,252
,3,6,139,107,139,99,129,117,122,101,106,134,97,139,123,139,122,140,121,139,8,111,117,117,111,31,14,247,5,248,53,21,36,10,14,248,
196,118,1,247,118,250,12,21,139,130,142,129,144,131,8,247,97,251,201,5,149,130,153,135,152,139,152,139,152,143,148,139,8,247,94,
247,195,5,146,149,145,150,139,151,139,166,117,162,111,139,126,139,127,133,129,130,8,251,57,251,73,251,57,247,74,5,130,149,126,143
,126,139,8,111,117,117,111,31,14,249,33,239,1,247,5,239,247,192,239,3,247,118,250,9,21,149,251,23,247,1,38,247,23,139,247,23,139
,247,1,240,149,247,23,8,142,7,166,117,162,111,30,112,139,118,119,137,113,133,61,74,78,60,139,60,139,74,200,133,217,137,164,118,160
,112,139,8,111,117,117,111,31,14,248,112,247,37,1,247,182,247,38,3,248,216,248,162,21,47,10,14,248,171,239,125,240,127,119,18,139
,238,247,166,238,19,88,247,19,248,233,21,44,10,19,184,45,10,19,88,46,10,14,161,118,248,128,247,112,39,239,18,247,33,239,247,164,
239,19,184,247,174,190,21,112,162,116,166,166,162,161,167,30,248,198,247,164,69,7,19,216,111,161,117,167,167,161,162,166,30,247,
12,7,166,116,162,112,30,19,184,252,8,6,112,116,116,112,31,14,126,239,247,109,239,247,109,239,1,247,8,239,179,247,106,179,239,3,20
,252,247,124,247,246,21,35,10,239,135,21,144,7,139,236,170,236,198,186,154,151,160,148,160,139,8,243,182,251,47,251,4,35,93,251,
55,38,31,37,139,95,247,55,138,243,8,179,22,111,162,117,166,30,247,6,6,166,162,162,166,166,117,162,111,31,251,6,6,111,117,117,111
,31,14,249,87,119,1,247,33,247,50,247,20,247,49,3,247,174,179,21,112,162,116,166,30,197,6,166,162,162,166,31,139,154,132,153,127
,148,8,222,247,249,222,251,249,5,127,130,132,125,139,124,8,112,162,116,166,30,196,6,166,162,161,167,31,139,163,122,157,117,145,8
,251,25,248,216,5,134,160,120,157,114,139,116,139,118,122,134,117,8,251,28,252,216,5,118,133,123,119,139,117,8,14,140,239,247,107
,239,247,77,239,1,247,140,190,21,52,10,248,236,4,52,10,199,251,177,21,112,161,116,167,30,247,149,6,167,161,161,167,167,116,161,112
,31,251,149,6,112,116,116,112,31,14,248,249,239,1,247,33,239,247,135,239,3,247,118,249,43,21,139,119,150,122,156,131,8,252,214,7
,112,162,116,166,166,162,161,167,30,248,209,247,135,252,209,7,112,162,116,166,166,162,161,167,30,248,214,7,156,147,151,156,139,159
,8,166,116,162,112,30,252,36,6,112,116,117,111,31,14,140,239,39,247,21,248,79,247,20,39,239,18,19,128,247,210,190,21,111,162,117
,166,30,19,64,247,234,6,166,162,161,167,31,168,7,167,116,161,112,30,19,144,120,139,121,127,131,122,8,251,118,139,226,247,125,5,141
,144,140,145,139,145,139,145,138,145,139,145,8,52,247,124,247,118,139,5,19,32,147,123,156,127,159,139,8,167,161,161,167,31,167,7
,167,117,161,111,30,19,144,251,234,6,111,117,117,111,31,139,133,140,133,141,134,8,244,251,175,34,251,174,5,137,133,138,133,139,133
,8,14,248,216,237,1,247,205,239,3,247,204,248,207,21,111,162,117,166,30,152,139,152,145,148,148,152,152,139,170,161,139,8,144,6,
165,134,145,107,139,110,8,252,113,7,111,162,117,166,166,162,162,166,30,248,113,7,139,168,145,170,165,145,8,143,6,150,139,148,132
,141,128,143,117,159,120,164,139,8,166,161,162,166,31,148,7,128,202,86,174,84,139,108,139,108,128,114,116,114,162,108,150,108,139
,84,139,85,104,128,76,8,14,127,242,18,247,5,239,210,247,49,251,20,239,239,239,19,216,247,118,247,155,21,139,251,32,210,251,4,247
,21,116,8,110,7,19,232,122,131,127,122,139,119,8,112,162,116,166,30,196,6,166,162,161,167,31,19,216,139,159,128,156,122,147,8,168
,7,247,20,162,211,247,5,139,247,31,139,247,32,66,247,5,251,19,163,8,168,7,19,232,155,147,151,156,139,159,8,167,117,161,111,30,82
,6,111,117,116,112,31,19,216,139,120,151,121,156,131,8,110,7,251,19,112,66,36,139,251,39,8,239,22,139,204,161,199,181,169,149,146
,152,143,152,144,8,251,235,7,71,161,107,208,139,220,8,247,92,251,64,21,247,237,7,206,117,172,70,139,57,139,58,107,70,71,117,8,14
,247,205,239,196,239,3,247,204,248,207,21,147,251,38,5,152,251,52,142,251,121,247,25,95,8,90,7,111,162,117,166,166,162,162,166,30
,188,7,235,174,170,247,28,151,247,10,8,157,247,182,139,142,5,165,116,160,112,30,112,139,118,118,137,113,134,42,133,45,130,46,135
,91,133,58,112,94,8,248,106,7,166,116,162,112,112,116,117,111,30,252,106,7,112,183,133,220,135,188,131,232,132,233,134,236,137,165
,118,160,112,139,8,111,117,117,111,31,14,249,101,239,18,247,6,238,125,247,20,211,247,20,126,235,19,192,247,120,248,201,21,139,107
,143,106,146,104,165,251,24,169,251,23,173,251,22,8,19,160,129,130,133,125,139,124,8,111,162,117,166,30,167,6,166,162,162,166,31
,139,144,138,144,138,143,100,247,36,105,247,37,110,247,39,8,19,200,134,165,134,165,139,166,8,145,7,141,225,200,205,226,139,232,139
,197,66,139,48,139,117,135,115,132,116,8,19,144,35,252,78,139,127,5,111,162,117,166,30,167,6,166,162,162,166,31,139,154,132,152,
128,149,8,230,248,26,5,19,200,146,169,142,168,139,167,139,247,43,44,247,13,251,44,139,72,139,74,115,92,91,8,89,89,119,77,139,67,
8,14,249,81,119,1,247,205,239,3,247,232,248,145,21,112,161,116,167,30,152,139,152,144,148,148,8,197,196,139,252,126,5,111,162,117
,166,166,162,162,166,30,139,248,126,196,82,5,149,130,151,134,153,139,167,139,161,162,139,166,139,152,133,151,130,149,8,251,35,247
,35,5,130,148,126,144,126,139,124,139,127,134,130,139,8,251,34,251,35,5,129,129,134,127,139,126,8,14,249,81,119,1,247,205,239,3,
247,232,247,75,21,139,126,144,126,149,129,8,247,34,251,34,5,149,129,152,134,152,139,152,139,152,144,148,139,8,247,35,247,34,5,148
,149,145,152,139,152,139,166,116,162,112,139,125,139,127,134,129,129,8,82,82,139,248,126,5,166,117,162,111,111,117,117,111,30,139
,252,126,81,196,5,130,149,126,144,126,139,8,112,116,116,112,31,14,129,239,248,253,119,1,247,172,179,21,114,162,114,167,30,247,235
,6,166,163,162,166,31,251,66,249,10,5,133,159,119,156,117,139,117,139,117,123,134,118,8,83,252,216,21,244,248,16,244,252,16,5,14
,247,17,4,247,142,251,17,247,142,247,17,139,247,142,251,142,247,17,251,142,251,17,5,14,14,248,137,247,78,1,247,205,239,3,249,6,248
,187,21,111,162,117,166,166,162,162,166,30,225,7,166,116,162,112,112,116,117,111,30,14,248,137,247,78,1,247,151,247,46,3,248,154
,249,17,21,139,130,141,129,144,131,8,200,45,5,149,130,152,133,152,139,166,139,162,162,139,166,139,149,136,148,134,147,8,79,234,5
,132,150,123,142,126,139,112,139,116,117,139,111,8,14,248,232,247,66,1,247,111,239,227,239,3,248,74,249,26,21,111,161,117,167,167
,161,162,166,30,213,7,166,116,162,112,112,116,117,111,30,247,80,65,21,112,161,116,167,167,161,162,166,30,213,7,166,116,162,112,112
,116,116,112,30,14,146,239,3,153,68,21,112,161,116,167,167,161,162,166,30,249,94,7,166,116,162,112,112,116,116,112,30,14,249,103
,20,139,21,121,156,248,173,147,247,49,159,188,142,6,251,76,140,7,30,10,3,150,37,255,12,9,155,12,10,239,10,239,167,157,150,156,145
,145,150,162,239,12,12,239,11,239,167,157,147,143,155,173,145,168,247,3,12,13,30,10,6,255,12,18,28,0,70,19,0,21,2,0,1,0,28,0,50,
0,79,0,124,0,195,0,226,0,241,1,2,1,29,1,50,1,80,1,98,1,129,1,180,1,194,1,221,1,242,2,7,2,28,2,42,2,68,112,162,116,166,30,185,6,166
,162,162,166,31,185,7,166,116,162,112,30,93,6,112,116,116,112,31,11,111,161,117,167,167,161,162,166,30,248,27,7,166,116,162,112,
112,116,117,111,30,11,111,161,117,167,30,247,0,6,167,161,162,166,31,219,7,166,116,162,112,30,251,0,6,112,116,117,111,31,11,140,251
,63,226,251,88,247,51,139,247,53,139,224,247,88,140,247,63,8,142,7,247,70,51,247,78,251,51,30,99,139,90,122,109,114,59,74,91,251
,14,139,251,26,8,11,111,162,117,166,30,152,139,152,144,148,149,8,247,56,247,66,247,57,251,66,5,149,129,152,134,152,139,166,139,162
,162,139,166,139,149,136,149,133,147,8,251,97,247,200,5,131,150,123,142,126,139,126,139,126,135,129,139,8,251,97,251,200,5,134,131
,136,129,139,129,8,11,214,229,152,229,30,163,139,162,138,161,138,8,99,7,107,87,87,75,64,139,8,131,6,105,141,91,164,139,182,8,11,
247,22,252,23,6,112,162,116,166,166,162,161,167,30,11,248,73,7,167,117,161,111,30,251,72,6,111,117,116,112,31,11,111,162,117,166
,30,184,6,166,162,161,167,31,185,7,167,116,161,112,30,94,6,112,116,117,111,31,11,248,53,7,166,117,162,111,30,251,38,6,111,117,116
,112,112,162,116,166,31,11,251,50,228,251,13,247,53,247,52,229,247,15,247,48,247,50,47,247,15,251,50,251,55,52,251,15,251,50,30,
11,238,187,221,241,240,188,58,39,40,92,59,36,36,92,219,238,30,11,112,162,116,166,30,163,139,160,157,143,161,145,164,153,148,155,
139,163,139,168,121,157,125,172,114,175,115,181,135,8,11,144,139,143,138,144,139,206,139,198,187,152,206,140,142,140,143,139,142
,139,166,115,162,113,139,116,139,117,121,135,117,134,113,126,130,122,139,8,115,139,109,158,121,153,106,164,102,163,98,143,8,11,134
,139,135,140,134,139,72,139,79,91,125,72,8,11,112,161,116,167,30,185,6,167,161,162,166,31,184,7,166,117,162,111,30,93,6,111,117,
116,112,31,11,111,161,117,167,167,161,162,166,30,196,7,166,116,162,112,112,116,117,111,30,11,113,162,116,166,166,162,162,165,30,
197,7,166,116,162,112,112,116,116,112,30,11,112,161,117,167,166,162,162,165,30,197,7,166,115,162,113,112,116,117,111,30,11,155,201
,181,185,209,139,226,139,167,99,154,71,8,11,112,162,116,166,30,248,13,6,166,162,161,167,167,117,161,111,31,252,13,6,111,117,116,
112,31,11,0,0,0,0,1,0,0,0,14,0,0,0,24,0,0,0,0,0,2,0,1,0,1,0,144,0,1,0,4,0,0,0,2,0,0,0,1,0,0,0,10,0,64,0,142,0,2,68,70,76,84,0,14
,108,97,116,110,0,34,0,4,0,0,0,0,255,255,0,5,0,0,0,1,0,2,0,3,0,4,0,4,0,0,0,0,255,255,0,5,0,0,0,1,0,2,0,3,0,4,0,5,97,97,108,116,0
,32,115,115,48,49,0,38,115,115,48,50,0,44,115,115,48,51,0,50,115,115,48,52,0,56,0,0,0,1,0,0,0,24,0,1,0,1,0,22,0,1,0,2,0,20,0,1,0
,3,0,18,0,1,0,4,0,0,1,0,0,0,1,1,0,0,1,2,0,0,1,3,0,5,0,12,0,20,0,28,0,36,0,44,0,3,0,0,0,1,0,40,0,1,0,0,0,1,0,82,0,1,0,0,0,1,0,86,
0,1,0,0,0,1,0,90,0,1,0,0,0,1,0,94,0,1,0,38,0,4,0,14,0,20,0,26,0,32,0,2,0,3,0,143,0,2,0,8,0,141,0,2,0,65,0,142,0,2,0,93,0,144,0,1
,0,4,0,3,0,8,0,65,0,93,0,1,0,6,0,77,0,1,0,1,0,65,0,1,0,6,0,140,0,1,0,1,0,3,0,1,0,6,0,133,0,1,0,1,0,8,0,1,0,6,0,51,0,1,0,1,0,93,0
,1,0,0,0,10,0,44,0,46,0,2,68,70,76,84,0,14,108,97,116,110,0,24,0,4,0,0,0,0,255,255,0,0,0,4,0,0,0,0,255,255,0,0,0,0,0,0,0,0,0,1,0
,0,0,0,204,61,162,207,0,0,0,0,204,138,51,83,0,0,0,0,211,135,133,166,2,211,0,0,2,211,0,0,2,211,1,34,2,211,0,161,2,211,0,113,2,211
,0,113,2,211,0,113,2,211,0,113,2,211,1,20,2,211,1,0,2,211,0,181,2,211,0,113,2,211,0,113,2,211,0,159,2,211,0,113,2,211,0,241,2,211
,0,173,2,211,0,113,2,211,0,144,2,211,0,130,2,211,0,113,2,211,0,113,2,211,0,139,2,211,0,113,2,211,0,113,2,211,0,113,2,211,0,113,2
,211,1,3,2,211,0,156,2,211,0,113,2,211,0,113,2,211,0,113,2,211,0,141,2,211,0,113,2,211,0,119,2,211,0,113,2,211,0,161,2,211,0,164
,2,211,0,159,2,211,0,210,2,211,0,121,2,211,0,141,2,211,0,170,2,211,0,130,2,211,0,127,2,211,0,141,2,211,0,113,2,211,0,127,2,211,0
,116,2,211,0,141,2,211,0,115,2,211,0,153,2,211,0,147,2,211,0,113,2,211,0,127,2,211,0,112,2,211,0,113,2,211,0,133,2,211,0,136,2,211
,0,141,2,211,0,210,2,211,0,173,2,211,0,130,2,211,0,113,2,211,0,113,2,211,1,3,2,211,0,127,2,211,0,124,2,211,0,167,2,211,0,113,2,211
,0,127,2,211,0,147,2,211,0,116,2,211,0,156,2,211,0,181,2,211,0,153,2,211,0,173,2,211,0,253,2,211,0,113,2,211,0,127,2,211,0,113,2
,211,0,124,2,211,0,113,2,211,0,204,2,211,0,153,2,211,0,127,2,211,0,127,2,211,0,116,2,211,0,115,2,211,0,147,2,211,0,113,2,211,0,147
,2,211,0,113,2,211,1,57,2,211,0,113,2,211,0,127,2,211,2,68,2,211,0,226,2,211,0,242,2,211,1,198,0,0,249,67,2,11,255,56,2,211,0,254
,2,114,2,90,1,84,0,226,255,146,0,226,0,174,0,226,1,16,0,254,255,184,0,226,0,140,0,254,1,106,255,94,255,82,1,50,0,113,0,226,0,226
,2,68,0,127,1,26,0,232,1,26,0,248,0,226,1,62,1,56,0,226,1,56,0,228,1,84,1,84,1,24,0,0,0,0,2,114,2,6,1,182,0,14]);Module["FS_createDataFile
"]("/","OCRB.otf",fileData1,true,true)}if(Module["calledRun"]){runWithFS()}else{if(!Module[
x22;preRun"])Module["preRun"]=[];Module["preRun"].push(runWithFS)}});loadPackage({"files":[]})}))();
var Module;if(!Module)Module=(typeof Module!=="undefined"?Module:null)||{};var moduleOverrides={};for(var key in Module
){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;
var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"
;]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER
=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"
;]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("The provided Module['ENVIRONMENT'] value
is not valid. It must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER
=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require===
x22;function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&
;&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["
;print"]=console.log;if(!Module["printErr"])Module["printErr"]=console.warn;var nodeFS;var nodePath;Module
["read"]=function read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("
path");filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);if(!ret&
x26;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){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(
ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process
["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function read(){throw"no read() available (jsc?)"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}}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};Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response)}else{onerror()}};xhr.onerror=onerror;xhr.send(null)};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.warn(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&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"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var Runtime={setTempRet0:(function(value){tempRet0=value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),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}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)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),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}),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[sig]){Runtime.funcWrappers[sig]={}}var sigCache=Runtime.funcWrappers[sig];if(!sigCache[func]){sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func,arguments)}}return sigCache[func]}),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+15&-16;return ret}),staticAlloc:(function(size){var ret=STATICTOP;STATICTOP=STATICTOP+size|0;STATICTOP=STATICTOP+15&-16;return ret}),dynamicAlloc:(function(size){var ret=DYNAMICTOP;DYNAMICTOP=DYNAMICTOP+size|0;DYNAMICTOP=DYNAMICTOP+15&-16;if(DYNAMICTOP>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){DYNAMICTOP=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module["Runtime"]=Runtime;var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];if(!func){try{func=eval("_"+ident)}catch(e){}}assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)");return func}var cwrap,ccall;((function(){var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"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){ret=Runtime.stackAlloc((str.length<<2)+1);writeStringToMemory(str,ret)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;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){if(opts&&opts.async){EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(stack)}));return}Runtime.stackRestore(stack)}return ret};var sourceRegex=/^function\s*[a-zA-Z$_0-9]*\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/;function parseJSFunc(jsfunc){var parsed=jsfunc.toString().match(sourceRegex).slice(1);return{arguments:parsed[0],body:parsed[1],returnValue:parsed[2]}}var JSsource=null;function ensureJSsource(){if(!JSsource){JSsource={};for(var fun in JSfuncs){if(JSfuncs.hasOwnProperty(fun)){JSsource[fun]=parseJSFunc(JSfuncs[fun])}}}}cwrap=function cwrap(ident,returnType,argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident);var numericArgs=argTypes.every((function(type){return type==="number"}));var numericRet=returnType!=="string";if(numericRet&&numericArgs){return cfunc}var argNames=argTypes.map((function(x,i){return"$"+i}));var funcstr="(function("+argNames.join(",")+") {";var nargs=argTypes.length;if(!numericArgs){ensureJSsource();funcstr+="var stack = "+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"];funcstr+="var "+convertCode.arguments+" = "+arg+";";funcstr+=convertCode.body+";";funcstr+=arg+"=("+convertCode.returnValue+");"}}var cfuncname=parseJSFunc((function(){return cfunc})).returnValue;funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");";if(!numericRet){var strgfy=parseJSFunc((function(){return Pointer_stringify})).returnValue;funcstr+="ret = "+strgfy+"(ret);"}if(!numericArgs){ensureJSsource();funcstr+=JSsource["stackRestore"].body.replace("()","(stack)")+";"}funcstr+="return ret})";return eval(funcstr)}}))();Module["ccall"]=ccall;Module["cwrap"]=cwrap;function setValue(ptr,value,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";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?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}Module["setValue"]=setValue;function getValue(ptr,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";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;var ALLOC_STACK=1;var ALLOC_STATIC=2;var ALLOC_DYNAMIC=3;var ALLOC_NONE=4;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;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:Runtime.staticAlloc,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";setValue(ret+i,curr,type);if(previousType!==type){typeSize=Runtime.getNativeTypeSize(type);previousType=type}i+=typeSize}return ret}Module["allocate"]=allocate;function getMemory(size){if(!staticSealed)return Runtime.staticAlloc(size);if(typeof _sbrk!=="undefined"&&!_sbrk.called||!runtimeInitialized)return Runtime.dynamicAlloc(size);return _malloc(size)}Module["getMemory"]=getMemory;function Pointer_stringify(ptr,length){if(length===0||!ptr)return"";var hasUtf=0;var t;var i=0;while(1){t=HEAPU8[ptr+i>>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module["UTF8ToString"](ptr)}Module["Pointer_stringify"]=Pointer_stringify;function AsciiToString(ptr){var str="";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module["AsciiToString"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module["stringToAscii"]=stringToAscii;function UTF8ArrayToString(u8Array,idx){var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}Module["UTF8ArrayToString"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module["UTF8ToString"]=UTF8ToString;function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}Module["stringToUTF8Array"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}Module["stringToUTF8"]=stringToUTF8;function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}Module["lengthBytesUTF8"]=lengthBytesUTF8;function demangle(func){var hasLibcxxabi=!!Module["___cxa_demangle"];if(hasLibcxxabi){try{var buf=_malloc(func.length);writeStringToMemory(func.substr(1),buf);var status=_malloc(4);var ret=Module["___cxa_demangle"](buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){return func}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}}Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");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 jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module["stackTrace"]=stackTrace;var PAGE_SIZE=4096;function alignMemoryPage(x){if(x%4096>0){x+=4096-x%4096}return x}var HEAP;var buffer;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE=0,STATICTOP=0,staticSealed=false;var STACK_BASE=0,STACKTOP=0,STACK_MAX=0;var DYNAMIC_BASE=0,DYNAMICTOP=0;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;var totalMemory=64*1024;while(totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK){if(totalMemory<16*1024*1024){totalMemory*=2}else{totalMemory+=16*1024*1024}}if(totalMemory!==TOTAL_MEMORY){TOTAL_MEMORY=totalMemory}if(Module["buffer"]){buffer=Module["buffer"]}else{buffer=new ArrayBuffer(TOTAL_MEMORY)}updateGlobalBufferViews();HEAP32[0]=255;if(HEAPU8[0]!==255||HEAPU8[3]!==0)throw"Typed arrays 2 must be run on a little-endian system";Module["HEAP"]=HEAP;Module["buffer"]=buffer;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__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}Module["addOnPreRun"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}Module["intArrayToString"]=intArrayToString;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++>>0]=array[i]}}Module["writeArrayToMemory"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}Module["writeAsciiToMemory"]=writeAsciiToMemory;if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];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;var Math_clz32=Math.clz32;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}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()}}}Module["removeRunDependency"]=removeRunDependency;Module["preloadedImages"]={};Module["preloadedAudios"]={};var ASM_CONSTS=[];STATIC_BASE=8;STATICTOP=STATIC_BASE+75136;__ATINIT__.push();allocate([90,0,0,0,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,1,0,0,124,2,0,0,68,11,0,0,80,15,0,0,116,15,0,0,188,15,0,0,100,16,0,0,160,16,0,0,220,16,0,0,216,19,0,0,24,20,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,8,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,89,111,63,0,0,0,45,0,167,144,26,0,71,9,14,0,1,32,7,0,139,147,3,0,56,202,1,0,42,229,0,0,151,114,0,0,76,57,0,0,166,28,0,0,83,14,0,0,41,7,0,0,149,3,0,0,202,1,0,0,229,0,0,0,115,0,0,0,57,0,0,0,29,0,0,0,14,0,0,0,7,0,0,0,4,0,0,0,2,0,0,0,1,0,0,0,1,5,0,0,84,0,0,0,249,40,0,0,0,0,1,0,0,0,2,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,56,3,0,0,48,1,0,0,160,0,0,0,10,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,11,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,12,0,0,0,2,0,0,0,3,0,0,0,213,43,0,0,2,41,0,0,11,41,0,0,164,1,0,0,49,41,0,0,184,1,0,0,65,41,0,0,188,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,4,0,0,0,88,240,188,5,228,2,0,0,241,59,35,40,196,135,0,0,234,161,68,163,225,1,0,0,88,240,188,5,228,2,0,0,241,59,35,40,196,135,0,0,235,161,68,163,225,1,0,0,212,234,229,17,80,3,0,0,59,202,48,90,99,144,0,0,2,38,164,19,126,0,0,0,252,255,251,255,8,0,0,0,184,72,158,156,162,190,0,0,18,1,2,112,8,0,0,0,252,255,251,255,8,0,0,0,131,4,90,10,57,124,1,0,18,1,2,112,8,0,0,0,0,0,0,0,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,0,1,0,0,0,64,0,0,0,1,0,0,0,1,0,0,0,68,0,0,0,0,0,0,0,0,0,0,0,9,0,3,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,1,5,0,0,44,0,0,0,209,43,0,0,0,0,1,0,0,0,2,0,0,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,56,3,0,0,48,0,0,0,172,0,0,0,13,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,11,0,0,0,1,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,6,0,0,0,7,0,0,0,213,43,0,0,230,43,0,0,234,43,0,0,28,3,0,0,92,44,0,0,44,3,0,0,113,44,0,0,48,3,0,0,162,44,0,0,56,3,0,0,250,43,0,0,140,3,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,10,0,0,0,20,0,0,0,9,0,0,0,8,0,0,0,11,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,10,0,0,0,9,0,0,0,13,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,15,0,0,0,5,0,0,0,4,0,0,0,0,16,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,16,0,0,4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,17,0,0,8,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,2,16,0,0,12,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,16,0,0,16,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,16,0,0,20,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,1,17,0,0,24,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,17,0,0,28,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,17,0,0,32,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,17,0,0,36,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,17,0,0,40,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,6,17,0,0,44,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,7,17,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,13,16,0,0,76,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,5,16,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,17,0,0,96,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,15,16,0,0,100,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,16,16,0,0,104,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,17,16,0,0,108,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,18,16,0,0,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,20,17,0,0,120,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,21,17,0,0,124,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,30,17,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,31,17,0,0,140,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,17,0,0,144,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,33,17,0,0,148,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,34,17,0,0,152,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,35,17,0,0,156,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,36,17,0,0,160,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,37,17,0,0,164,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,38,17,0,0,168,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,6,32,0,0,4,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,6,0,0,0,7,32,0,0,60,0,0,0,4,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,6,0,0,0,8,32,0,0,100,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,2,0,0,0,6,0,0,0,9,32,0,0,156,0,0,0,4,0,0,0,0,0,0,0,10,0,0,0,3,0,0,0,3,0,0,0,9,33,0,0,196,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,33,0,0,200,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,33,0,0,204,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,32,0,0,208,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,32,0,0,212,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,12,33,0,0,220,0,0,0,4,0,0,0,0,0,0,0,13,0,0,0,216,0,0,0,6,0,0,0,13,33,0,0,16,1,0,0,4,0,0,0,0,0,0,0,13,0,0,0,217,0,0,0,5,0,0,0,14,33,0,0,68,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,15,33,0,0,72,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,16,33,0,0,76,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,17,33,0,0,80,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,18,33,0,0,84,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,19,33,0,0,88,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,19,32,0,0,92,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,20,32,0,0,96,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,21,32,0,0,100,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5,0,202,154,59,24,0,0,0,16,0,0,0,0,0,0,0,17,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,19,0,0,0,20,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,21,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,23,0,0,0,24,0,0,0,56,0,0,0,25,0,0,0,0,0,0,0,26,0,0,0,27,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,28,0,0,0,29,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,30,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,32,0,0,0,33,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,34,0,0,0,35,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,36,0,0,0,37,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,38,0,0,0,39,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,40,0,0,0,41,0,0,0,44,0,0,0,42,0,0,0,0,0,0,0,43,0,0,0,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,45,0,0,0,46,0,0,0,44,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,50,0,0,0,51,0,0,0,40,0,0,0,52,0,0,0,10,0,0,0,53,0,0,0,54,0,0,0,7,0,0,0,6,0,0,0,55,0,0,0,7,0,0,0,8,0,0,0,14,0,0,0,56,0,0,0,57,0,0,0,0,0,0,0,20,0,0,0,76,44,0,0,0,0,1,0,0,0,2,0,104,11,0,0,0,0,0,0,0,0,0,0,58,0,0,0,8,0,0,0,15,0,0,0,16,0,0,0,11,0,0,0,58,0,0,0,17,0,0,0,9,0,0,0,9,0,0,0,59,0,0,0,10,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,12,0,0,0,65,0,0,0,13,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,10,0,0,0,70,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,14,0,0,0,12,0,0,0,15,0,0,0,13,0,0,0,71,0,0,0,14,0,0,0,72,0,0,0,15,0,0,0,73,0,0,0,16,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,112,9,0,0,164,9,0,0,216,9,0,0,12,10,0,0,64,10,0,0,116,10,0,0,168,10,0,0,220,10,0,0,16,11,0,0,0,0,0,0,2,0,0,0,255,255,255,255,99,105,110,117,0,0,0,0,255,255,255,255,99,105,110,117,1,0,0,0,0,0,0,0,110,109,114,97,3,0,0,0,0,0,0,0,98,109,121,115,3,0,0,0,10,0,0,0,99,105,110,117,3,0,0,0,1,0,0,0,99,105,110,117,3,0,0,0,2,0,0,0,115,105,106,115,3,0,0,0,3,0,0,0,32,32,98,103,3,0,0,0,4,0,0,0,53,103,105,98,3,0,0,0,5,0,0,0,115,110,97,119,3,0,0,0,6,0,0,0,97,104,111,106,81,44,0,0,228,12,0,0,92,44,0,0,240,12,0,0,113,44,0,0,244,12,0,0,124,44,0,0,252,12,0,0,162,44,0,0,4,13,0,0,0,0,0,0,0,0,0,0,17,0,0,0,74,0,0,0,19,0,0,0,15,0,0,0,11,0,0,0,75,0,0,0,18,0,0,0,19,0,0,0,76,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,77,0,0,0,78,0,0,0,1,0,0,0,72,13,0,0,64,3,0,0,79,0,0,0,1,0,0,0,0,0,0,0,80,0,0,0,20,0,0,0,32,0,0,0,127,0,0,0,160,0,0,0,255,0,0,0,0,1,0,0,127,1,0,0,128,1,0,0,79,2,0,0,80,2,0,0,175,2,0,0,176,2,0,0,255,2,0,0,0,3,0,0,111,3,0,0,112,3,0,0,255,3,0,0,0,4,0,0,255,4,0,0,0,5,0,0,47,5,0,0,0,29,0,0,127,29,0,0,128,29,0,0,191,29,0,0,192,29,0,0,255,29,0,0,0,30,0,0,255,30,0,0,0,31,0,0,255,31,0,0,0,32,0,0,111,32,0,0,112,32,0,0,159,32,0,0,160,32,0,0,207,32,0,0,80,33,0,0,143,33,0,0,96,36,0,0,255,36,0,0,96,44,0,0,127,44,0,0,224,45,0,0,255,45,0,0,64,166,0,0,159,166,0,0,32,167,0,0,255,167,0,0,0,251,0,0,6,251,0,0,0,212,1,0,255,215,1,0,0,0,0,0,0,0,0,0,99,105,110,117,110,109,114,97,66,79,68,65,49,116,97,108,0,0,0,0,2,0,0,0,84,14,0,0,64,3,0,0,81,0,0,0,2,0,0,0,0,0,0,0,82,0,0,0,21,0,0,0,128,46,0,0,255,46,0,0,0,47,0,0,223,47,0,0,0,48,0,0,63,48,0,0,64,48,0,0,159,48,0,0,160,48,0,0,255,48,0,0,0,49,0,0,47,49,0,0,48,49,0,0,143,49,0,0,160,49,0,0,191,49,0,0,192,49,0,0,239,49,0,0,240,49,0,0,255,49,0,0,0,50,0,0,255,50,0,0,0,51,0,0,255,51,0,0,0,52,0,0,191,77,0,0,192,77,0,0,255,77,0,0,0,78,0,0,255,159,0,0,0,249,0,0,255,250,0,0,48,254,0,0,79,254,0,0,0,255,0,0,239,255,0,0,0,0,2,0,223,166,2,0,0,248,2,0,31,250,2,0,0,0,0,0,0,0,0,0,3,0,0,0,28,15,0,0,64,3,0,0,83,0,0,0,3,0,0,0,0,0,0,0,84,0,0,0,22,0,0,0,0,9,0,0,255,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,8,13,0,0,40,13,0,0,52,14,0,0,252,14,0,0,0,0,0,0,4,0,0,0,204,0,0,0,249,44,0,0,0,0,1,0,0,0,2,0,44,15,0,0,16,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,176,0,0,0,4,45,0,0,0,0,1,0,0,0,2,0,152,15,0,0,17,0,0,0,18,0,0,0,0,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,108,116,117,111,85,0,0,0,1,0,0,0,2,0,0,0,86,0,0,0,19,0,0,0,2,0,0,0,72,0,0,0,13,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,12,0,0,0,13,0,0,0,3,0,0,0,23,0,0,0,164,15,0,0,2,0,0,0,72,0,0,0,21,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,12,0,0,0,13,0,0,0,3,0,0,0,23,0,0,0,164,15,0,0,108,116,117,111,87,0,0,0,4,0,0,0,0,0,0,0,88,0,0,0,20,0,0,0,89,0,0,0,90,0,0,0,24,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,72,0,0,0,29,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,15,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,2,0,0,0,72,0,0,0,36,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,17,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,2,0,0,0,72,0,0,0,47,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,18,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,26,0,0,0,21,0,0,0,19,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,23,0,0,0,91,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,4,0,0,0,2,0,0,0,22,0,0,0,23,0,0,0,1,0,0,0,26,0,0,0,92,0,0,0,3,0,0,0,28,0,0,0,24,0,0,0,29,0,0,0,27,0,0,0,1,0,0,0,28,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,5,0,0,0,4,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,4,0,0,0,2,0,0,0,2,0,0,0,6,0,0,0,4,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,6,0,0,0,2,0,0,0,6,0,0,0,2,0,0,0,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,21,0,0,0,29,0,0,0,25,0,0,0,204,45,0,0,213,45,0,0,223,45,0,0,232,45,0,0,234,45,0,0,249,45,0,0,8,46,0,0,29,46,0,0,31,46,0,0,34,46,0,0,37,46,0,0,47,46,0,0,57,46,0,0,70,46,0,0,81,46,0,0,91,46,0,0,106,46,0,0,114,46,0,0,129,46,0,0,143,46,0,0,156,46,0,0,171,46,0,0,183,46,0,0,196,46,0,0,209,46,0,0,217,46,0,0,228,46,0,0,237,46,0,0,246,46,0,0,255,46,0,0,10,47,0,0,20,47,0,0,33,47,0,0,42,47,0,0,54,47,0,0,57,47,0,0,61,47,0,0,65,47,0,0,69,47,0,0,71,47,0,0,85,47,0,0,97,47,0,0,99,47,0,0,106,47,0,0,110,47,0,0,120,47,0,0,137,47,0,0,153,47,0,0,187,45,0,0,168,47,0,0,182,47,0,0,197,47,0,0,213,47,0,0,229,47,0,0,244,47,0,0,250,47,0,0,0,48,0,0,10,48,0,0,28,48,0,0,47,48,0,0,50,48,0,0,58,48,0,0,66,48,0,0,68,48,0,0,71,48,0,0,75,48,0,0,79,48,0,0,82,48,0,0,86,48,0,0,90,48,0,0,93,48,0,0,96,48,0,0,103,48,0,0,116,48,0,0,32,0,0,0,26,0,0,0,30,0,0,0,93,0,0,0,94,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,27,0,0,0,30,0,0,0,93,0,0,0,94,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,0,0,0,28,0,0,0,31,0,0,0,95,0,0,0,96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,29,0,0,0,32,0,0,0,97,0,0,0,98,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,19,0,0,80,19,0,0,120,19,0,0,160,19,0,0,0,0,0,0,20,0,0,0,129,48,0,0,0,0,2,0,0,0,2,0,252,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,0,0,40,17,0,0,92,17,0,0,124,17,0,0,6,0,0,0,200,19,0,0,244,17,0,0,0,0,0,0,20,0,0,0,135,48,0,0,0,0,1,0,0,0,2,0,60,20,0,0,0,0,0,0,0,0,0,0,99,0,0,0,30,0,0,0,2,0,0,0,100,0,0,0,101,0,0,0,31,0,0,0,32,0,0,0,120,25,0,0,214,37,0,0,0,0,0,0,6,0,0,0,12,0,0,0,21,0,0,0,28,0,0,0,35,0,0,0,38,0,0,0,53,0,0,0,59,0,0,0,72,0,0,0,148,3,0,0,169,3,0,0,21,34,0,0,173,0,0,0,201,2,0,0,188,3,0,0,25,34,0,0,160,0,0,0,26,2,0,0,27,2,0,0,91,21,1,0,60,20,0,0,0,0,0,0,0,0,0,0,192,20,0,0,5,0,0,0,0,0,0,0,0,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,32,0,0,0,120,33,1,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,20,0,0,4,0,16,0,17,4,0,0,12,2,4,0,12,2,6,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,0,0,0,0,4,0,20,0,16,4,0,0,16,4,4,0,16,4,8,0,16,4,12,0,12,2,16,0,12,2,18,0,0,0,0,0,4,0,20,0,17,4,0,0,12,2,4,0,12,2,6,0,16,4,8,0,12,2,12,0,12,2,14,0,16,4,16,0,0,0,0,0,4,0,4,0,8,1,16,0,8,1,17,0,8,1,18,0,8,1,19,0,0,0,0,0,0,0,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,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,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,94,0,95,0,96,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,111,0,112,0,113,0,114,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,123,0,124,0,125,0,126,0,127,0,128,0,129,0,130,0,131,0,132,0,133,0,134,0,135,0,136,0,137,0,138,0,139,0,140,0,141,0,142,0,143,0,144,0,145,0,146,0,147,0,148,0,149,0,150,0,151,0,152,0,153,0,154,0,155,0,156,0,157,0,158,0,159,0,160,0,161,0,162,0,163,0,164,0,165,0,166,0,167,0,168,0,169,0,170,0,171,0,172,0,173,0,174,0,175,0,176,0,177,0,178,0,179,0,180,0,181,0,182,0,183,0,184,0,185,0,186,0,187,0,188,0,189,0,190,0,191,0,192,0,193,0,194,0,195,0,196,0,197,0,198,0,199,0,200,0,201,0,202,0,203,0,204,0,205,0,206,0,207,0,208,0,209,0,210,0,211,0,212,0,213,0,214,0,215,0,216,0,217,0,218,0,219,0,220,0,221,0,222,0,223,0,224,0,225,0,226,0,227,0,228,0,0,0,1,0,229,0,230,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,253,0,254,0,255,0,0,1,1,1,2,1,3,1,4,1,5,1,6,1,7,1,8,1,9,1,10,1,109,0,110,0,11,1,12,1,13,1,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,1,48,1,49,1,50,1,51,1,52,1,53,1,54,1,55,1,56,1,57,1,58,1,59,1,60,1,61,1,62,1,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,0,0,1,0,231,0,232,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,253,0,254,0,255,0,0,1,1,1,2,1,3,1,4,1,5,1,6,1,7,1,8,1,9,1,10,1,109,0,110,0,11,1,12,1,13,1,14,1,16,1,44,1,45,1,46,1,49,1,58,1,59,1,158,0,155,0,163,0,64,1,65,1,66,1,67,1,68,1,69,1,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,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,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,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,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,94,0,95,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,0,0,111,0,112,0,113,0,114,0,0,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,0,0,123,0,0,0,124,0,125,0,126,0,127,0,128,0,129,0,130,0,131,0,0,0,132,0,133,0,0,0,134,0,135,0,136,0,137,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,138,0,0,0,139,0,0,0,0,0,0,0,0,0,140,0,141,0,142,0,143,0,0,0,0,0,0,0,0,0,0,0,144,0,0,0,0,0,0,0,145,0,0,0,0,0,146,0,147,0,148,0,149,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,229,0,230,0,0,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,0,0,253,0,254,0,255,0,0,1,1,1,0,0,0,0,0,0,2,1,0,0,0,0,3,1,4,1,5,1,6,1,0,0,0,0,7,1,8,1,9,1,0,0,10,1,109,0,110,0,11,1,12,1,13,1,0,0,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,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,48,1,49,1,50,1,0,0,0,0,51,1,52,1,53,1,54,1,55,1,0,0,56,1,0,0,0,0,56,1,0,0,0,0,58,1,59,1,0,0,0,0,60,1,61,1,62,1,0,0,0,0,0,0,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,0,0,0,0,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,4,0,8,0,17,4,4,0,17,4,8,0,0,0,0,0,4,0,54,0,16,4,0,0,16,4,4,0,17,4,8,0,17,4,12,0,12,2,16,0,12,2,18,0,17,4,20,0,17,4,24,0,17,4,28,0,17,4,32,0,13,2,36,0,13,2,38,0,13,2,40,0,13,2,42,0,12,2,44,0,12,2,46,0,13,2,48,0,13,2,50,0,13,2,52,0,0,0,0,0,4,0,36,0,16,4,0,0,13,2,4,0,13,2,6,0,13,2,8,0,12,2,10,0,13,2,12,0,13,2,14,0,13,2,16,0,13,2,18,0,13,2,20,0,13,2,22,0,13,2,24,0,13,2,26,0,13,2,28,0,13,2,30,0,13,2,32,0,12,2,34,0,0,0,0,0,4,0,6,0,17,4,0,0,12,2,4,0,0,0,0,0,4,0,26,0,12,2,6,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,12,2,16,0,12,2,18,0,12,2,20,0,12,2,22,0,12,2,24,0,12,2,26,0,12,2,28,0,12,2,30,0,0,0,0,0,4,0,78,0,12,2,0,0,13,2,2,0,12,2,4,0,12,2,6,0,13,2,8,0,13,2,10,0,13,2,12,0,13,2,14,0,13,2,16,0,13,2,18,0,13,2,20,0,13,2,22,0,13,2,24,0,13,2,26,0,13,2,28,0,13,2,30,0,8,1,32,0,8,1,33,0,8,1,34,0,8,1,35,0,8,1,36,0,8,1,37,0,8,1,38,0,8,1,39,0,8,1,40,0,8,1,41,0,16,4,44,0,16,4,48,0,16,4,52,0,16,4,56,0,8,1,60,0,8,1,61,0,8,1,62,0,8,1,63,0,12,2,64,0,12,2,66,0,12,2,68,0,13,2,70,0,13,2,72,0,13,2,74,0,12,2,76,0,12,2,78,0,0,0,0,0,4,0,8,0,16,4,80,0,16,4,84,0,0,0,0,0,4,0,10,0,13,2,88,0,13,2,90,0,12,2,92,0,12,2,94,0,12,2,96,0,0,0,0,0,4,0,32,0,16,4,0,0,16,4,4,0,13,2,8,0,13,2,10,0,16,4,12,0,16,4,16,0,16,4,20,0,16,4,24,0,16,4,28,0,0,0,0,0,4,0,6,0,12,2,0,0,12,4,4,0,12,4,8,0,0,0,0,0,12,2,0,0,12,2,2,0,12,2,4,0,12,2,6,0,12,2,8,0,12,4,12,0,0,0,0,0,4,0,54,0,16,4,0,0,16,4,4,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,12,2,16,0,24,16,20,0,24,8,36,0,24,6,44,0,9,1,50,0,9,1,51,0,8,1,52,0,8,1,53,0,0,0,0,0,4,0,5,0,8,1,0,0,8,1,1,0,9,1,2,0,9,1,3,0,8,1,4,0,0,0,0,0,4,0,8,0,8,1,0,0,8,1,1,0,9,1,2,0,9,1,3,0,8,1,4,0,9,1,5,0,9,1,6,0,8,1,7,0,0,0,0,0,4,0,8,0,12,2,4,0,12,2,6,0,12,2,8,0,12,2,10,0,0,0,0,0,4,0,16,0,16,4,0,0,16,4,4,0,16,4,8,0,16,4,12,0,0,0,0,0,16,4,8,0,17,0,0,0,16,4,0,0,16,4,12,0,0,0,0,0,9,1,0,0,9,1,1,0,8,1,2,0,9,1,3,0,9,1,4,0,9,1,5,0,9,1,6,0,9,1,7,0,9,1,8,0,9,1,9,0,9,1,10,0,9,1,11,0,0,0,0,0,12,2,40,0,12,2,42,0,8,1,44,0,8,1,45,0,8,1,46,0,9,1,47,0,0,0,0,0,253,0,0,0,6,0,5,1,11,1,18,1,27,1,38,1,45,1,53,1,246,2,74,1,84,1,95,1,104,1,109,1,115,1,122,1,129,1,135,1,140,1,144,1,148,1,154,1,159,1,164,1,168,1,174,1,180,1,185,1,191,1,201,1,206,1,212,1,220,1,229,1,232,1,234,1,236,1,238,1,240,1,242,1,244,1,246,1,248,1,250,1,252,1,254,1,0,2,2,2,4,2,6,2,8,2,10,2,12,2,14,2,16,2,18,2,20,2,22,2,24,2,26,2,28,2,40,2,50,2,63,2,75,2,211,3,96,2,98,2,100,2,102,2,104,2,106,2,108,2,110,2,112,2,114,2,116,2,118,2,120,2,122,2,124,2,126,2,128,2,130,2,132,2,134,2,136,2,138,2,140,2,142,2,144,2,146,2,148,2,158,2,162,2,173,2,95,5,112,5,125,5,134,5,206,5,232,5,26,6,67,6,96,6,74,6,86,6,109,6,103,6,116,6,125,6,154,6,132,6,144,6,161,6,190,6,168,6,180,6,197,6,204,6,233,6,211,6,223,6,240,6,254,6,27,7,5,7,17,7,71,3,239,4,195,2,200,2,229,2,113,3,103,3,136,4,22,5,66,5,173,4,217,3,7,4,23,0,62,4,84,4,32,0,195,4,41,0,51,0,218,2,170,4,64,0,76,0,86,0,94,0,97,0,65,4,94,4,106,0,107,4,126,4,198,3,184,2,159,4,112,0,222,2,120,0,132,0,15,3,162,3,177,3,138,0,105,5,118,5,249,5,91,4,133,4,64,3,55,4,2,3,148,3,86,2,63,1,222,4,155,0,41,7,50,6,209,2,237,2,29,3,43,3,58,3,61,3,78,3,88,3,120,3,135,3,186,3,83,5,141,5,76,5,153,5,163,5,170,5,177,5,189,5,199,5,213,5,220,5,163,0,242,5,7,6,14,6,36,6,110,4,223,3,234,3,240,3,247,3,253,3,16,4,21,4,29,4,42,4,49,4,77,4,119,4,0,6,247,6,60,6,51,7,229,4,183,4,39,5,43,6,34,7,205,4,246,4,33,5,43,5,147,4,10,5,52,5,187,4,211,4,252,4,169,0,175,0,182,0,189,0,200,0,209,0,218,0,225,0,232,0,239,0,246,0,253,0,5,1,11,1,18,1,27,1,38,1,45,1,53,1,63,1,74,1,84,1,95,1,104,1,109,1,115,1,122,1,129,1,135,1,140,1,144,1,148,1,154,1,159,1,164,1,168,1,174,1,180,1,185,1,191,1,201,1,206,1,212,1,220,1,229,1,232,1,234,1,236,1,238,1,240,1,242,1,244,1,246,1,248,1,250,1,252,1,254,1,0,2,2,2,4,2,6,2,8,2,10,2,12,2,14,2,16,2,18,2,20,2,22,2,24,2,26,2,28,2,40,2,50,2,63,2,75,2,86,2,96,2,98,2,100,2,102,2,104,2,106,2,108,2,110,2,112,2,114,2,116,2,118,2,120,2,122,2,124,2,126,2,128,2,130,2,132,2,134,2,136,2,138,2,140,2,142,2,144,2,146,2,148,2,158,2,162,2,173,2,184,2,195,2,200,2,209,2,218,2,222,2,229,2,237,2,246,2,2,3,15,3,29,3,43,3,58,3,61,3,64,3,71,3,78,3,88,3,103,3,113,3,120,3,135,3,148,3,162,3,177,3,186,3,198,3,211,3,217,3,223,3,234,3,240,3,247,3,253,3,7,4,16,4,21,4,29,4,42,4,49,4,55,4,62,4,65,4,77,4,84,4,91,4,94,4,107,4,110,4,119,4,126,4,133,4,136,4,147,4,159,4,170,4,173,4,183,4,187,4,195,4,205,4,211,4,222,4,229,4,239,4,246,4,252,4,10,5,22,5,33,5,39,5,43,5,52,5,66,5,76,5,83,5,95,5,105,5,112,5,118,5,125,5,134,5,141,5,153,5,163,5,170,5,177,5,189,5,199,5,206,5,213,5,220,5,232,5,242,5,249,5,0,6,7,6,14,6,26,6,36,6,43,6,50,6,60,6,67,6,74,6,86,6,96,6,103,6,109,6,116,6,125,6,132,6,144,6,154,6,161,6,168,6,180,6,190,6,197,6,204,6,211,6,223,6,233,6,240,6,247,6,254,6,5,7,17,7,27,7,34,7,41,7,51,7,58,7,70,7,88,7,103,7,118,7,133,7,144,7,162,7,181,7,196,7,211,7,224,7,236,7,248,7,6,8,19,8,32,8,44,8,58,8,72,8,85,8,99,8,119,8,134,8,148,8,158,8,168,8,181,8,191,8,201,8,211,8,221,8,231,8,241,8,251,8,5,9,15,9,25,9,28,9,32,9,36,9,54,9,73,9,89,9,104,9,115,9,122,9,129,9,136,9,143,9,150,9,157,9,164,9,171,9,178,9,185,9,192,9,199,9,206,9,213,9,220,9,227,9,234,9,241,9,248,9,255,9,6,10,13,10,20,10,27,10,34,10,41,10,55,10,65,10,72,10,83,10,99,10,112,10,124,10,136,10,148,10,162,10,173,10,184,10,199,10,211,10,222,10,237,10,249,10,3,11,16,11,34,11,44,11,57,11,69,11,82,11,91,11,101,11,114,11,127,11,140,11,152,11,166,11,180,11,193,11,206,11,218,11,230,11,244,11,1,12,14,12,26,12,40,12,54,12,67,12,80,12,95,12,110,12,124,12,136,12,148,12,165,12,177,12,192,12,203,12,211,12,225,12,237,12,249,12,10,13,25,13,37,13,49,13,66,13,81,13,90,13,102,13,114,13,126,13,143,13,155,13,170,13,178,13,190,13,202,13,214,13,231,13,246,13,2,14,13,14,28,14,36,14,44,14,52,14,60,14,66,14,71,14,76,14,82,14,89,14,97,14,103,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,229,0,230,0,0,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,0,0,253,0,254,0,255,0,0,1,1,1,0,0,0,0,0,0,2,1,0,0,0,0,3,1,4,1,5,1,6,1,0,0,0,0,7,1,8,1,9,1,0,0,10,1,109,0,110,0,11,1,12,1,13,1,0,0,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,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,48,1,49,1,50,1,0,0,0,0,51,1,52,1,53,1,54,1,55,1,0,0,56,1,0,0,0,0,57,1,0,0,0,0,58,1,59,1,0,0,0,0,60,1,61,1,62,1,0,0,0,0,0,0,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,0,0,0,0,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,108,111,97,100,95,102,111,110,116,40,37,115,44,37,115,41,58,32,116,111,111,32,109,97,110,121,32,102,111,110,116,115,33,10,0,78,101,119,95,70,97,99,101,40,37,115,44,37,115,41],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([32,69,114,114,111,114,33,32,37,100,10,0,83,101,116,95,67,104,97,114,95,83,105,122,101,32,69,114,114,111,114,33,32,37,100,10,0,76,111,97,100,95,67,104,97,114,32,69,114,114,111,114,33,32,37,100,10,0,73,110,105,116,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,65,46,111,116,102,0,78,101,119,95,70,97,99,101,40,79,67,82,45,65,41,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,66,46,111,116,102,0,78,101,119,95,70,97,99,101,40,79,67,82,45,66,41,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,45,65,0,79,67,82,45,66,0,99,105,100,0,116,121,112,101,49,0,79,84,84,79,0,46,95,0,47,46,46,110,97,109,101,100,102,111,114,107,47,114,115,114,99,0,47,114,115,114,99,0,114,101,115,111,117,114,99,101,46,102,114,107,47,0,46,114,101,115,111,117,114,99,101,47,0,37,0,46,65,112,112,108,101,68,111,117,98,108,101,47,0,116,114,117,101,116,121,112,101,0,84,114,117,101,84,121,112,101,0,109,117,108,116,105,45,109,97,115,116,101,114,115,0,87,105,100,116,104,0,79,112,116,105,99,97,108,83,105,122,101,0,83,108,97,110,116,0,116,114,117,101,116,121,112,101,45,101,110,103,105,110,101,0,116,116,45,103,108,121,102,0,68,70,75,97,105,83,104,111,45,83,66,0,0,0,0,0,0,68,70,75,97,105,83,104,117,0,0,0,0,0,0,0,0,0,68,70,75,97,105,45,83,66,0,0,0,0,0,0,0,0,0,72,117,97,84,105,97,110,75,97,105,84,105,63,0,0,0,0,72,117,97,84,105,97,110,83,111,110,103,84,105,63,0,0,0,77,105,110,103,76,105,85,0,0,0,0,0,0,0,0,0,0,80,77,105,110,103,76,105,85,0,0,0,0,0,0,0,0,0,77,105,110,103,76,105,52,51,0,0,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,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,255,254,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,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,2,3,4,5,6,7,8,9,3,5,7,9,11,13,15,17,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,32,32,32,32,32,32,2,2,0,80,16,16,16,16,16,16,16,16,0,0,16,0,16,16,16,16,18,16,0,34,1,17,16,32,0,16,32,16,16,0,16,16,0,0,0,0,16,16,16,16,16,0,32,32,0,0,32,32,0,0,32,17,32,17,17,17,32,33,33,1,1,0,0,16,33,33,33,33,33,33,17,17,16,0,33,33,17,16,16,16,33,33,33,33,17,17,17,17,17,17,17,17,17,17,17,17,32,16,16,16,16,16,16,16,32,32,0,0,0,0,16,16,0,32,32,0,0,16,32,32,17,16,51,33,33,16,32,0,0,0,0,0,0,0,0,0,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,1,2,3,4,5,6,7,8,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,99,102,102,0,120,102,56,54,45,100,114,105,118,101,114,45,110,97,109,101,0,67,70,70,0,112,111,115,116,115,99,114,105,112,116,45,105,110,102,111,0,67,73,68,0,82,101,103,117,108,97,114,0,66,111,108,100,0,66,108,97,99,107,0,0,194,193,193,32,32,32,32,32,32,32,32,32,32,13,7,9,11,128,130,130,130,130,128,128,0,1,2,2,2,1,0,2,1,1,1,2,1,2,1,2,1,4,3,2,2,1,2,4,1,1,0,2,0,0,0,5,4,2,115,102,110,116,0,115,102,110,116,45,116,97,98,108,101,0,112,111,115,116,115,99,114,105,112,116,45,102,111,110,116,45,110,97,109,101,0,103,108,121,112,104,45,100,105,99,116,0,98,100,102,0,67,72,65,82,83,69,84,95,82,69,71,73,83,84,82,89,0,67,72,65,82,83,69,84,95,69,78,67,79,68,73,78,71,0,116,116,45,99,109,97,112,115,0,84,72,69,90,79,67,81,83,0,0,0,0,0,72,69,90,76,79,67,85,83,0,0,0,0,0,102,105,106,107,100,98,104,0,0,0,0,0,0,120,122,114,111,101,115,99,0,0,0,0,0,0,120,122,114,111,101,115,99,0,0,0,0,0,0,112,113,103,106,121,0,0,0,0,0,0,0,0,97,117,116,111,102,105,116,116,101,114,0,112,115,104,105,110,116,101,114,0,114,97,115,116,101,114,49,0,114,97,115,116,101,114,53,0,115,109,111,111,116,104,0,115,109,111,111,116,104,45,108,99,100,0,115,109,111,111,116,104,45,108,99,100,118,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,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,255,255,255,255,255,255,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,255,255,255,255,255,83,116,97,114,116,70,111,110,116,77,101,116,114,105,99,115,0,65,115,99,101,110,100,101,114,0,65,120,105,115,76,97,98,101,108,0,65,120,105,115,84,121,112,101,0,66,0,66,108,101,110,100,65,120,105,115,84,121,112,101,115,0,66,108,101,110,100,68,101,115,105,103,110,77,97,112,0,66,108,101,110,100,68,101,115,105,103,110,80,111,115,105,116,105,111,110,115,0,67,0,67,67,0,67,72,0,67,97,112,72,101,105,103,104,116,0,67,104,97,114,87,105,100,116,104,0,67,104,97,114,97,99,116,101,114,83,101,116,0,67,104,97,114,97,99,116,101,114,115,0,68,101,115,99,101,110,100,101,114,0,69,110,99,111,100,105,110,103,83,99,104,101,109,101,0,69,110,100,65,120,105,115,0,69,110,100,67,104,97,114,77,101,116,114,105,99,115,0,69,110,100,67,111,109,112,111,115,105,116,101,115,0,69,110,100,68,105,114,101,99,116,105,111,110,0,69,110,100,70,111,110,116,77,101,116,114,105,99,115,0,69,110,100,75,101,114,110,68,97,116,97,0,69,110,100,75,101,114,110,80,97,105,114,115,0,69,110,100,84,114,97,99,107,75,101,114,110,0,69,115,99,67,104,97,114,0,70,97,109,105,108,121,78,97,109,101,0,70,111,110,116,66,66,111,120,0,70,111,110,116,78,97,109,101,0,70,117,108,108,78,97,109,101,0,73,115,66,97,115,101,70,111,110,116,0,73,115,67,73,68,70,111,110,116,0,73,115,70,105,120,101,100,80,105,116,99,104,0,73,115,70,105,120,101,100,86,0,73,116,97,108,105,99,65,110,103,108,101,0,75,80,0,75,80,72,0,75,80,88,0,75,80,89,0,76,0,77,97,112,112,105,110,103,83,99,104,101,109,101,0,77,101,116,114,105,99,115,83,101,116,115,0,78,0,78,111,116,105,99,101,0,80,67,67,0,83,116,97,114,116,65,120,105,115,0,83,116,97,114,116,67,104,97,114,77,101,116,114,105,99,115,0,83,116,97,114,116,67,111,109,112,111,115,105,116,101,115,0,83,116,97,114,116,68,105,114,101,99,116,105,111,110,0,83,116,97,114,116,75,101,114,110,68,97,116,97,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,48,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,49,0,83,116,97,114,116,84,114,97,99,107,75,101,114,110,0,83,116,100,72,87,0,83,116,100,86,87,0,84,114,97,99,107,75,101,114,110,0,85,110,100,101,114,108,105,110,101,80,111,115,105,116,105,111,110,0,85,110,100,101,114,108,105,110,101,84,104,105,99,107,110,101,115,115,0,86,86,0,86,86,101,99,116,111,114,0,86,101,114,115,105,111,110,0,87,0,87,48,0,87,48,88,0,87,48,89,0,87,49,0,87,49,88,0,87,49,89,0,87,88,0,87,89,0,87,101,105,103,104,116,0,87,101,105,103,104,116,86,101,99,116,111,114,0,88,72,101,105,103,104,116,0,116,114,117,101,0,112,115,97,117,120,0,112,115,110,97,109,101,115,0,0,52,0,106,2,167,3,63,4,220,6,125,9,143,10,23,11,137,12,199,14,246,15,87,16,233,17,219,18,104,19,88,22,110,23,32,23,71,24,77,27,156,29,73,31,247,32,107,32,222,33,55,34,154,35,218,53,84,59,196,68,6,75,183,83,178,88,135,93,242,101,165,109,185,111,55,117,254,123,73,130,238,138,206,145,31,153,182,156,189,163,249,178,221,193,17,197,99,199,240,204,27,204,155,210,100,65,143,0,65,0,140,0,175,0,193,1,15,1,147,1,233,1,251,2,7,2,40,2,57,2,82,2,91,2,128,2,136,2,154,69,131,0,198,0,150,0,158,0,167,225,227,245,244,101,128,1,252,237,225,227,242,239,110,128,1,226,243,237,225,236,108,128,247,230,225,227,245,244,101,129,0,193,0,185,243,237,225,236,108,128,247,225,226,242,229,246,101,134,1,2,0,213,0,221,0,232,0,243,0,251,1,7,225,227,245,244,101,128,30,174,227,249,242,233,236,236,233,99,128,4,208,228,239,244,226,229,236,239,119,128,30,182,231,242,225,246,101,128,30,176,232,239,239,235,225,226,239,246,101,128,30,178,244,233,236,228,101,128,30,180,99,4,1,25,1,32,1,121,1,137,225,242,239,110,128,1,205,233,242,99,2,1,40,1,45,236,101,128,36,182,245,237,230,236,229,120,134,0,194,1,66,1,74,1,85,1,93,1,105,1,113,225,227,245,244,101,128,30,164,228,239,244,226,229,236,239,119,128,30,172,231,242,225,246,101,128,30,166,232,239,239,235,225,226,239,246,101,128,30,168,243,237,225,236,108,128,247,226,244,233,236,228,101,128,30,170,245,244,101,129,246,201,1,129,243,237,225,236,108,128,247,180,249,242,233,236,236,233,99,128,4,16,100,3,1,155,1,165,1,209,226,236,231,242,225,246,101,128,2,0,233,229,242,229,243,233,115,131,0,196,1,181,1,192,1,201,227,249,242,233,236,236,233,99,128,4,210,237,225,227,242,239,110,128,1,222,243,237,225,236,108,128,247,228,239,116,2,1,216,1,224,226,229,236,239,119,128,30,160,237,225,227,242,239,110,128,1,224,231,242,225,246,101,129,0,192,1,243,243,237,225,236,108,128,247,224,232,239,239,235,225,226,239,246,101,128,30,162,105,2,2,13,2,25,229,227,249,242,233,236,236,233,99,128,4,212,238,246,229,242,244,229,228,226,242,229,246,101,128,2,2,236,240,232,97,129,3,145,2,49,244,239,238,239,115,128,3,134,109,2,2,63,2,71,225,227,242,239,110,128,1,0,239,238,239,243,240,225,227,101,128,255,33,239,231,239,238,229,107,128,1,4,242,233,238,103,131,0,197,2,104,2,112,2,120,225,227,245,244,101,128,1,250,226,229,236,239,119,128,30,0,243,237,225,236,108,128,247,229,243,237,225,236,108,128,247,97,244,233,236,228,101,129,0,195,2,146,243,237,225,236,108,128,247,227,249,226,225,242,237,229,238,233,225,110,128,5,49,66,137,0,66,2,189,2,198,2,223,3,3,3,10,3,22,3,34,3,46,3,54,227,233,242,227,236,101,128,36,183,228,239,116,2,2,206,2,215,225,227,227,229,238,116,128,30,2,226,229,236,239,119,128,30,4,101,3,2,231,2,242,2,254,227,249,242,233,236,236,233,99,128,4,17,238,225,242,237,229,238,233,225,110,128,5,50,244,97,128,3,146,232,239,239,107,128,1,129,236,233,238,229,226,229,236,239,119,128,30,6,237,239,238,239,243,240,225,227,101,128,255,34,242,229,246,229,243,237,225,236,108,128,246,244,243,237,225,236,108,128,247,98,244,239,240,226,225,114,128,1,130,67,137,0,67,3,85,3,127,3,193,3,210,3,224,4,171,4,188,4,200,4,212,97,3,3,93,3,104,3,111,225,242,237,229,238,233,225,110,128,5,62,227,245,244,101,128,1,6,242,239,110,129,246,202,3,119,243,237,225,236,108,128,246,245,99,3,3,135,3,142,3,171,225,242,239,110,128,1,12,229,228,233,236,236,97,130,0,199,3,155,3,163,225,227,245,244,101,128,30,8,243,237,225,236,108,128,247,231,233,242,99,2,3,179,3,184,236,101,128,36,184,245,237,230,236,229,120,128,1,8,228,239,116,129,1,10,3,201,225,227,227,229,238,116,128,1,10,229,228,233,236,236,225,243,237,225,236,108,128,247,184,104,4,3,234,3,246,4,161,4,165,225,225,242,237,229,238,233,225,110,128,5,73,101,6,4,4,4,24,4,35,4,103,4,115,4,136,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,188,227,249,242,233,236,236,233,99,128,4,39,100,2,4,41,4,85,229,243,227,229,238,228,229,114,2,4,54,4,74,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,190,227,249,242,233,236,236,233,99,128,4,182,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,244,232,225,242,237,229,238,233,225,110,128,5,67,235,232,225,235,225,243,243,233,225,238,227,249,242,233,236,236,233,99,128,4,203,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,184,105,128,3,167,239,239,107,128,1,135,233,242,227,245,237,230,236,229,248,243,237,225,236,108,128,246,246,237,239,238,239,243,240,225,227,101,128,255,35,239,225,242,237,229,238,233,225,110,128,5,81,243,237,225,236,108,128,247,99,68,142,0,68,4,252,5,10,5,36,5,96,5,121,5,166,5,173,5,231,5,244,6,0,6,12,6,28,6,48,6,57,90,129,1,241,5,2,227,225,242,239,110,128,1,196,97,2,5,16,5,27,225,242,237,229,238,233,225,110,128,5,52,230,242,233,227,225,110,128,1,137,99,4,5,46,5,53,5,62,5,89,225,242,239,110,128,1,14,229,228,233,236,236,97,128,30,16,233,242,99,2,5,70,5,75,236,101,128,36,185,245,237,230,236,229,248,226,229,236,239,119,128,30,18,242,239,225,116,128,1,16,228,239,116,2,5,104,5,113,225,227,227,229,238,116,128,30,10,226,229,236,239,119,128,30,12,101,3,5,129,5,140,5,150,227,249,242,233,236,236,233,99,128,4,20,233,227,239,240,244,233,99,128,3,238,236,244,97,129,34,6,5,158,231,242,229,229,107,128,3,148,232,239,239,107,128,1,138,105,2,5,179,5,218,229,242,229,243,233,115,131,246,203,5,194,5,202,5,210,193,227,245,244,101,128,246,204,199,242,225,246,101,128,246,205,243,237,225,236,108,128,247,168,231,225,237,237,225,231,242,229,229,107,128,3,220,234,229,227,249,242,233,236,236,233,99,128,4,2,236,233,238,229,226,229,236,239,119,128,30,14,237,239,238,239,243,240,225,227,101,128,255,36,239,244,225,227,227,229,238,244,243,237,225,236,108,128,246,247,115,2,6,34,6,41,236,225,243,104,128,1,16,237,225,236,108,128,247,100,244,239,240,226,225,114,128,1,139,122,131,1,242,6,67,6,75,6,112,227,225,242,239,110,128,1,197,101,2,6,81,6,101,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,224,227,249,242,233,236,236,233,99,128,4,5,232,229,227,249,242,233,236,236,233,99,128,4,15,69,146,0,69,6,165,6,183,6,191,7,89,7,153,7,165,7,183,7,211,8,7,8,36,8,94,8,169,8,189,8,208,8,248,9,44,9,109,9,115,225,227,245,244,101,129,0,201,6,175,243,237,225,236,108,128,247,233,226,242,229,246,101,128,1,20,99,5,6,203,6,210,6,224,6,236,7,79,225,242,239,110,128,1,26,229,228,233,236,236,225,226,242,229,246,101,128,30,28,232,225,242,237,229,238,233,225,110,128,5,53,233,242,99,2,6,244,6,249,236,101,128,36,186,245,237,230,236,229,120,135,0,202,7,16,7,24,7,32,7,43,7,51,7,63,7,71,225,227,245,244,101,128,30,190,226,229,236,239,119,128,30,24,228,239,244,226,229,236,239,119,128,30,198,231,242,225,246,101,128,30,192,232,239,239,235,225,226,239,246,101,128,30,194,243,237,225,236,108,128,247,234,244,233,236,228,101,128,30,196,249,242,233,236,236,233,99,128,4,4,100,3,7,97,7,107,7,127,226,236,231,242,225,246,101,128,2,4,233,229,242,229,243,233,115,129,0,203,7,119,243,237,225,236,108,128,247,235,239,116,130,1,22,7,136,7,145,225,227,227,229,238,116,128,1,22,226,229,236,239,119,128,30,184,230,227,249,242,233,236,236,233,99,128,4,36,231,242,225,246,101,129,0,200,7,175,243,237,225,236,108,128,247,232,104,2,7,189,7,200,225,242,237,229,238,233,225,110,128,5,55,239,239,235,225,226,239,246,101,128,30,186,105,3,7,219,7,230,7,245,231,232,244,242,239,237,225,110,128,33,103,238,246,229,242,244,229,228,226,242,229,246,101,128,2,6,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,100,108,2,8,13,8,24,227,249,242,233,236,236,233,99,128,4,27,229,246,229,238,242,239,237,225,110,128,33,106,109,3,8,44,8,72,8,83,225,227,242,239,110,130,1,18,8,56,8,64,225,227,245,244,101,128,30,22,231,242,225,246,101,128,30,20,227,249,242,233,236,236,233,99,128,4,28,239,238,239,243,240,225,227,101,128,255,37,110,4,8,104,8,115,8,135,8,154,227,249,242,233,236,236,233,99,128,4,29,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,162,103,129,1,74,8,141,232,229,227,249,242,233,236,236,233,99,128,4,164,232,239,239,235,227,249,242,233,236,236,233,99,128,4,199,111,2,8,175,8,183,231,239,238,229,107,128,1,24,240,229,110,128,1,144,240,243,233,236,239,110,129,3,149,8,200,244,239,238,239,115,128,3,136,114,2,8,214,8,225,227,249,242,233,236,236,233,99,128,4,32,229,246,229,242,243,229,100,129,1,142,8,237,227,249,242,233,236,236,233,99,128,4,45,115,4,9,2,9,13,9,33,9,37,227,249,242,233,236,236,233,99,128,4,33,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,170,104,128,1,169,237,225,236,108,128,247,101,116,3,9,52,9,78,9,92,97,130,3,151,9,60,9,70,242,237,229,238,233,225,110,128,5,56,244,239,238,239,115,128,3,137,104,129,0,208,9,84,243,237,225,236,108,128,247,240,233,236,228,101,129,30,188,9,101,226,229,236,239,119,128,30,26,245,242,111,128,32,172,250,104,130,1,183,9,124,9,132,227,225,242,239,110,128,1,238,242,229,246,229,242,243,229,100,128,1,184,70,136,0,70,9,163,9,172,9,184,9,212,9,219,9,248,10,4,10,15,227,233,242,227,236,101,128,36,187,228,239,244,225,227,227,229,238,116,128,30,30,101,2,9,190,9,202,232,225,242,237,229,238,233,225,110,128,5,86,233,227,239,240,244,233,99,128,3,228,232,239,239,107,128,1,145,105,2,9,225,9,238,244,225,227,249,242,233,236,236,233,99,128,4,114,246,229,242,239,237,225,110,128,33,100,237,239,238,239,243,240,225,227,101,128,255,38,239,245,242,242,239,237,225,110,128,33,99,243,237,225,236,108,128,247,102,71,140,0,71,10,51,10,61,10,107,10,115,10,176,10,193,10,205,11,39,11,52,11,65,11,90,11,107,194,243,241,245,225,242,101,128,51,135,97,3,10,69,10,76,10,94,227,245,244,101,128,1,244,237,237,97,129,3,147,10,84,225,230,242,233,227,225,110,128,1,148,238,231,233,225,227,239,240,244,233,99,128,3,234,226,242,229,246,101,128,1,30,99,4,10,125,10,132,10,141,10,163,225,242,239,110,128,1,230,229,228,233,236,236,97,128,1,34,233,242,99,2,10,149,10,154,236,101,128,36,188,245,237,230,236,229,120,128,1,28,239,237,237,225,225,227,227,229,238,116,128,1,34,228,239,116,129,1,32,10,184,225,227,227,229,238,116,128,1,32,229,227,249,242,233,236,236,233,99,128,4,19,104,3,10,213,10,226,11,33,225,228,225,242,237,229,238,233,225,110,128,5,66,101,3,10,234,10,255,11,16,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,148,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,146,245,240,244,245,242,238,227,249,242,233,236,236,233,99,128,4,144,239,239,107,128,1,147,233,237,225,242,237,229,238,233,225,110,128,5,51,234,229,227,249,242,233,236,236,233,99,128,4,3,109,2,11,71,11,79,225,227,242,239,110,128,30,32,239,238,239,243,240,225,227,101,128,255,39,242,225,246,101,129,246,206,11,99,243,237,225,236,108,128,247,96,115,2,11,113,11,129,237,225,236,108,129,247,103,11,122,232,239,239,107,128,2,155,244,242,239,235,101,128,1,228,72,140,0,72,11,165,11,190,11,198,11,208,12,17,12,40,12,77,12,117,12,129,12,157,12,165,12,189,177,184,53,3,11,175,11,180,11,185,179,51,128,37,207,180,51,128,37,170,181,49,128,37,171,178,178,176,183,51,128,37,161,208,243,241,245,225,242,101,128,51,203,97,3,11,216,11,236,12,0,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,168,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,178,242,228,243,233,231,238,227,249,242,233,236,236,233,99,128,4,42,98,2,12,23,12,28,225,114,128,1,38,242,229,246,229,226,229,236,239,119,128,30,42,99,2,12,46,12,55,229,228,233,236,236,97,128,30,40,233,242,99,2,12,63,12,68,236,101,128,36,189,245,237,230,236,229,120,128,1,36,100,2,12,83,12,93,233,229,242,229,243,233,115,128,30,38,239,116,2,12,100,12,109,225,227,227,229,238,116,128,30,34,226,229,236,239,119,128,30,36,237,239,238,239,243,240,225,227,101,128,255,40,111,2,12,135,12,146,225,242,237,229,238,233,225,110,128,5,64,242,233,227,239,240,244,233,99,128,3,232,243,237,225,236,108,128,247,104,245,238,231,225,242,245,237,236,225,245,116,129,246,207,12,181,243,237,225,236,108,128,246,248,250,243,241,245,225,242,101,128,51,144,73,146,0,73,12,239,12,251,12,255,13,11,13,29,13,37,13,94,13,181,13,214,13,224,13,242,13,254,14,48,14,86,14,99,14,166,14,187,14,205,193,227,249,242,233,236,236,233,99,128,4,47,74,128,1,50,213,227,249,242,233,236,236,233,99,128,4,46,225,227,245,244,101,129,0,205,13,21,243,237,225,236,108,128,247,237,226,242,229,246,101,128,1,44,99,3,13,45,13,52,13,84,225,242,239,110,128,1,207,233,242,99,2,13,60,13,65,236,101,128,36,190,245,237,230,236,229,120,129,0,206,13,76,243,237,225,236,108,128,247,238,249,242,233,236,236,233,99,128,4,6,100,3,13,102,13,112,13,155,226,236,231,242,225,246,101,128,2,8,233,229,242,229,243,233,115,131,0,207,13,128,13,136,13,147,225,227,245,244,101,128,30,46,227,249,242,233,236,236,233,99,128,4,228,243,237,225,236,108,128,247,239,239,116,130,1,48,13,164,13,173,225,227,227,229,238,116,128,1,48,226,229,236,239,119,128,30,202,101,2,13,187,13,203,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,214,227,249,242,233,236,236,233,99,128,4,21,230,242,225,235,244,245,114,128,33,17,231,242,225,246,101,129,0,204,13,234,243,237,225,236,108,128,247,236,232,239,239,235,225,226,239,246,101,128,30,200,105,3,14,6,14,17,14,32,227,249,242,233,236,236,233,99,128,4,24,238,246,229,242,244,229,228,226,242,229,246,101,128,2,10,243,232,239,242,244,227,249,242,233,236,236,233,99,128,4,25,109,2,14,54,14,75,225,227,242,239,110,129,1,42,14,64,227,249,242,233,236,236,233,99,128,4,226,239,238,239,243,240,225,227,101,128,255,41,238,233,225,242,237,229,238,233,225,110,128,5,59,111,3,14,107,14,118,14,126,227,249,242,233,236,236,233,99,128,4,1,231,239,238,229,107,128,1,46,244,97,131,3,153,14,137,14,147,14,158,225,230,242,233,227,225,110,128,1,150,228,233,229,242,229,243,233,115,128,3,170,244,239,238,239,115,128,3,138,115,2,14,172,14,179,237,225,236,108,128,247,105,244,242,239,235,101,128,1,151,244,233,236,228,101,129,1,40,14,197,226,229,236,239,119,128,30,44,250,232,233,244,243,97,2,14,216,14,227,227,249,242,233,236,236,233,99,128,4,116,228,226,236,231,242,225,246,229,227,249,242,233,236,236,233,99,128,4,118,74,134,0,74,15,6,15,18,15,41,15,53,15,67,15,79,225,225,242,237,229,238,233,225,110,128,5,65,227,233,242,99,2,15,27,15,32,236,101,128,36,191,245,237,230,236,229,120,128,1,52,229,227,249,242,233,236,236,233,99,128,4,8,232,229,232,225,242,237,229,238,233,225,110,128,5,75,237,239,238,239,243,240,225,227,101,128,255,42,243,237,225,236,108,128,247,106,75,140,0,75,15,115,15,125,15,135,16,18,16,65,16,76,16,106,16,143,16,156,16,168,16,180,16,208,194,243,241,245,225,242,101,128,51,133,203,243,241,245,225,242,101,128,51,205,97,7,15,151,15,169,15,191,15,211,15,226,15,232,15,249,226,225,243,232,235,233,242,227,249,242,233,236,236,233,99,128,4,160,99,2,15,175,15,181,245,244,101,128,30,48,249,242,233,236,236,233,99,128,4,26,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,154,232,239,239,235,227,249,242,233,236,236,233,99,128,4,195,240,240,97,128,3,154,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,158,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,156,99,4,16,28,16,35,16,44,16,52,225,242,239,110,128,1,232,229,228,233,236,236,97,128,1,54,233,242,227,236,101,128,36,192,239,237,237,225,225,227,227,229,238,116,128,1,54,228,239,244,226,229,236,239,119,128,30,50,101,2,16,82,16,94,232,225,242,237,229,238,233,225,110,128,5,84,238,225,242,237,229,238,233,225,110,128,5,63,104,3,16,114,16,126,16,137,225,227,249,242,233,236,236,233,99,128,4,37,229,233,227,239,240,244,233,99,128,3,230,239,239,107,128,1,152,234,229,227,249,242,233,236,236,233,99,128,4,12,236,233,238,229,226,229,236,239,119,128,30,52,237,239,238,239,243,240,225,227,101,128,255,43,239,240,240,97,2,16,189,16,200,227,249,242,233,236,236,233,99,128,4,128,231,242,229,229,107,128,3,222,115,2,16,214,16,226,233,227,249,242,233,236,236,233,99,128,4,110,237,225,236,108,128,247,107,76,138,0,76,17,1,17,5,17,9,17,29,17,95,17,133,17,147,17,165,17,177,17,189,74,128,1,199,76,128,246,191,97,2,17,15,17,22,227,245,244,101,128,1,57,237,226,228,97,128,3,155,99,4,17,39,17,46,17,55,17,82,225,242,239,110,128,1,61,229,228,233,236,236,97,128,1,59,233,242,99,2,17,63,17,68,236,101,128,36,193,245,237,230,236,229,248,226,229,236,239,119,128,30,60,239,237,237,225,225,227,227,229,238,116,128,1,59,228,239,116,130,1,63,17,105,17,114,225,227,227,229,238,116,128,1,63,226,229,236,239,119,129,30,54,17,124,237,225,227,242,239,110,128,30,56,233,247,238,225,242,237,229,238,233,225,110,128,5,60,106,129,1,200,17,153,229,227,249,242,233,236,236,233,99,128,4,9,236,233,238,229,226,229,236,239,119,128,30,58,237,239,238,239,243,240,225,227,101,128,255,44,115,2,17,195,17,212,236,225,243,104,129,1,65,17,204,243,237,225,236,108,128,246,249,237,225,236,108,128,247,108,77,137,0,77,17,241,17,251,18,24,18,33,18,58,18,71,18,83,18,91,18,100,194,243,241,245,225,242,101,128,51,134,225,99,2,18,2,18,18,242,239,110,129,246,208,18,10,243,237,225,236,108,128,247,175,245,244,101,128,30,62,227,233,242,227,236,101,128,36,194,228,239,116,2,18,41,18,50,225,227,227,229,238,116,128,30,64,226,229,236,239,119,128,30,66,229,238,225,242,237,229,238,233,225,110,128,5,68,237,239,238,239,243,240,225,227,101,128,255,45,243,237,225,236,108,128,247,109,244,245,242,238,229,100,128,1,156,117,128,3,156,78,141,0,78,18,134,18,138,18,146,18,212,18,237,18,248,19,3,19,21,19,33,19,45,19,58,19,66,19,84,74,128,1,202,225,227,245,244,101,128,1,67,99,4,18,156,18,163,18,172,18,199,225,242,239,110,128,1,71,229,228,233,236,236,97,128,1,69,233,242,99,2,18,180,18,185,236,101,128,36,195,245,237,230,236,229,248,226,229,236,239,119,128,30,74,239,237,237,225,225,227,227,229,238,116,128,1,69,228,239,116,2,18,220,18,229,225,227,227,229,238,116,128,30,68,226,229,236,239,119,128,30,70,232,239,239,235,236,229,230,116,128,1,157,233,238,229,242,239,237,225,110,128,33,104,106,129,1,203,19,9,229,227,249,242,233,236,236,233,99,128,4,10,236,233,238,229,226,229,236,239,119,128,30,72,237,239,238,239,243,240,225,227,101,128,255,46,239,247,225,242,237,229,238,233,225,110,128,5,70,243,237,225,236,108,128,247,110,244,233,236,228,101,129,0,209,19,76,243,237,225,236,108,128,247,241,117,128,3,157,79,141,0,79,19,118,19,132,19,150,19,203,20,78,20,152,20,187,21,48,21,69,21,213,21,223,21,254,22,53,69,129,1,82,19,124,243,237,225,236,108,128,246,250,225,227,245,244,101,129,0,211,19,142,243,237,225,236,108,128,247,243,98,2,19,156,19,196,225,242,242,229,100,2,19,166,19,177,227,249,242,233,236,236,233,99,128,4,232,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,234,242,229,246,101,128,1,78,99,4,19,213,19,220,19,235,20,68,225,242,239,110,128,1,209,229,238,244,229,242,229,228,244,233,236,228,101,128,1,159,233,242,99,2,19,243,19,248,236,101,128,36,196,245,237,230,236,229,120,134,0,212,20,13,20,21,20,32,20,40,20,52,20,60,225,227,245,244,101,128,30,208,228,239,244,226,229,236,239,119,128,30,216,231,242,225,246,101,128,30,210,232,239,239,235,225,226,239,246,101,128,30,212,243,237,225,236,108,128,247,244,244,233,236,228,101,128,30,214,249,242,233,236,236,233,99,128,4,30,100,3,20,86,20,109,20,142,226,108,2,20,93,20,101,225,227,245,244,101,128,1,80,231,242,225,246,101,128,2,12,233,229,242,229,243,233,115,130,0,214,20,123,20,134,227,249,242,233,236,236,233,99,128,4,230,243,237,225,236,108,128,247,246,239,244,226,229,236,239,119,128,30,204,103,2,20,158,20,170,239,238,229,235,243,237,225,236,108,128,246,251,242,225,246,101,129,0,210,20,179,243,237,225,236,108,128,247,242,104,4,20,197,20,208,20,212,21,34,225,242,237,229,238,233,225,110,128,5,85,109,128,33,38,111,2,20,218,20,228,239,235,225,226,239,246,101,128,30,206,242,110,133,1,160,20,243,20,251,21,6,21,14,21,26,225,227,245,244,101,128,30,218,228,239,244,226,229,236,239,119,128,30,226,231,242,225,246,101,128,30,220,232,239,239,235,225,226,239,246,101,128,30,222,244,233,236,228,101,128,30,224,245,238,231,225,242,245,237,236,225,245,116,128,1,80,105,129,1,162,21,54,238,246,229,242,244,229,228,226,242,229,246,101,128,2,14,109,4,21,79,21,107,21,184,21,202,225,227,242,239,110,130,1,76,21,91,21,99,225,227,245,244,101,128,30,82,231,242,225,246,101,128,30,80,229,231,97,132,33,38,21,121,21,132,21,140,21,156,227,249,242,233,236,236,233,99,128,4,96,231,242,229,229,107,128,3,169,242,239,245,238,228,227,249,242,233,236,236,233,99,128,4,122,116,2,21,162,21,177,233,244,236,239,227,249,242,233,236,236,233,99,128,4,124,239,238,239,115,128,3,143,233,227,242,239,110,129,3,159,21,194,244,239,238,239,115,128,3,140,239,238,239,243,240,225,227,101,128,255,47,238,229,242,239,237,225,110,128,33,96,111,2,21,229,21,248,231,239,238,229,107,129,1,234,21,239,237,225,227,242,239,110,128,1,236,240,229,110,128,1,134,115,3,22,6,22,33,22,40,236,225,243,104,130,0,216,22,17,22,25,225,227,245,244,101,128,1,254,243,237,225,236,108,128,247,248,237,225,236,108,128,247,111,244,242,239,235,229,225,227,245,244,101,128,1,254,116,2,22,59,22,70,227,249,242,233,236,236,233,99,128,4,126,233,236,228,101,131,0,213,22,83,22,91,22,102,225,227,245,244,101,128,30,76,228,233,229,242,229,243,233,115,128,30,78,243,237,225,236,108,128,247,245,80,136,0,80,22,130,22,138,22,147,22,159,22,211,22,227,22,246,23,2,225,227,245,244,101,128,30,84,227,233,242,227,236,101,128,36,197,228,239,244,225,227,227,229,238,116,128,30,86,101,3,22,167,22,178,22,190,227,249,242,233,236,236,233,99,128,4,31,232,225,242,237,229,238,233,225,110,128,5,74,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,166,104,2,22,217,22,221,105,128,3,166,239,239,107,128,1,164,105,129,3,160,22,233,247,242,225,242,237,229,238,233,225,110,128,5,83,237,239,238,239,243,240,225,227,101,128,255,48,115,2,23,8,23,25,105,129,3,168,23,14,227,249,242,233,236,236,233,99,128,4,112,237,225,236,108,128,247,112,81,131,0,81,23,42,23,51,23,63,227,233,242,227,236,101,128,36,198,237,239,238,239,243,240,225,227,101,128,255,49,243,237,225,236,108,128,247,113,82,138,0,82,23,95,23,119,23,166,23,217,23,230,23,240,23,245,24,19,24,31,24,43,97,2,23,101,23,112,225,242,237,229,238,233,225,110,128,5,76,227,245,244,101,128,1,84,99,4,23,129,23,136,23,145,23,153,225,242,239,110,128,1,88,229,228,233,236,236,97,128,1,86,233,242,227,236,101,128,36,199,239,237,237,225,225,227,227,229,238,116,128,1,86,100,2,23,172,23,182,226,236,231,242,225,246,101,128,2,16,239,116,2,23,189,23,198,225,227,227,229,238,116,128,30,88,226,229,236,239,119,129,30,90,23,208,237,225,227,242,239,110,128,30,92,229,232,225,242,237,229,238,233,225,110,128,5,80,230,242,225,235,244,245,114,128,33,28,232,111,128,3,161,233,110,2,23,252,24,5,231,243,237,225,236,108,128,246,252,246,229,242,244,229,228,226,242,229,246,101,128,2,18,236,233,238,229,226,229,236,239,119,128,30,94,237,239,238,239,243,240,225,227,101,128,255,50,243,237,225,236,108,129,247,114,24,53,233,238,246,229,242,244,229,100,129,2,129,24,66,243,245,240,229,242,233,239,114,128,2,182,83,139,0,83,24,103,26,17,26,55,26,182,26,221,26,250,27,84,27,105,27,117,27,135,27,143,70,6,24,117,24,209,24,241,25,77,25,119,25,221,48,9,24,137,24,145,24,153,24,161,24,169,24,177,24,185,24,193,24,201,177,176,176,176,48,128,37,12,178,176,176,176,48,128,37,20,179,176,176,176,48,128,37,16,180,176,176,176,48,128,37,24,181,176,176,176,48,128,37,60,182,176,176,176,48,128,37,44,183,176,176,176,48,128,37,52,184,176,176,176,48,128,37,28,185,176,176,176,48,128,37,36,49,3,24,217,24,225,24,233,176,176,176,176,48,128,37,0,177,176,176,176,48,128,37,2,185,176,176,176,48,128,37,97,50,9,25,5,25,13,25,21,25,29,25,37,25,45,25,53,25,61,25,69,176,176,176,176,48,128,37,98,177,176,176,176,48,128,37,86,178,176,176,176,48,128,37,85,179,176,176,176,48,128,37,99,180,176,176,176,48,128,37,81,181,176,176,176,48,128,37,87,182,176,176,176,48,128,37,93,183,176,176,176,48,128,37,92,184,176,176,176,48,128,37,91,51,4,25,87,25,95,25,103,25,111,182,176,176,176,48,128,37,94,183,176,176,176,48,128,37,95,184,176,176,176,48,128,37,90,185,176,176,176,48,128,37,84,52,10,25,141,25,149,25,157,25,165,25,173,25,181,25,189,25,197,25,205,25,213,176,176,176,176,48,128,37,105,177,176,176,176,48,128,37,102,178,176,176,176,48,128,37,96,179,176,176,176,48,128,37,80,180,176,176,176,48,128,37,108,181,176,176,176,48,128,37,103,182,176,176,176,48,128,37,104,183,176,176,176,48,128,37,100,184,176,176,176,48,128,37,101,185,176,176,176,48,128,37,89,53,5,25,233,25,241,25,249,26,1,26,9,176,176,176,176,48,128,37,88,177,176,176,176,48,128,37,82,178,176,176,176,48,128,37,83,179,176,176,176,48,128,37,107,180,176,176,176,48,128,37,106,97,2,26,23,26,44,227,245,244,101,129,1,90,26,32,228,239,244,225,227,227,229,238,116,128,30,100,237,240,233,231,242,229,229,107,128,3,224,99,5,26,67,26,98,26,107,26,147,26,169,225,242,239,110,130,1,96,26,78,26,90,228,239,244,225,227,227,229,238,116,128,30,102,243,237,225,236,108,128,246,253,229,228,233,236,236,97,128,1,94,232,247,97,130,1,143,26,117,26,128,227,249,242,233,236,236,233,99,128,4,216,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,218,233,242,99,2,26,155,26,160,236,101,128,36,200,245,237,230,236,229,120,128,1,92,239,237,237,225,225,227,227,229,238,116,128,2,24,228,239,116,2,26,190,26,199,225,227,227,229,238,116,128,30,96,226,229,236,239,119,129,30,98,26,209,228,239,244,225,227,227,229,238,116,128,30,104,101,2,26,227,26,239,232,225,242,237,229,238,233,225,110,128,5,77,246,229,238,242,239,237,225,110,128,33,102,104,5,27,6,27,34,27,48,27,59,27,72,97,2,27,12,27,23,225,242,237,229,238,233,225,110,128,5,71,227,249,242,233,236,236,233,99,128,4,40,227,232,225,227,249,242,233,236,236,233,99,128,4,41,229,233,227,239,240,244,233,99,128,3,226,232,225,227,249,242,233,236,236,233,99,128,4,186,233,237,225,227,239,240,244,233,99,128,3,236,105,2,27,90,27,96,231,237,97,128,3,163,248,242,239,237,225,110,128,33,101,237,239,238,239,243,240,225,227,101,128,255,51,239,230,244,243,233,231,238,227,249,242,233,236,236,233,99,128,4,44,243,237,225,236,108,128,247,115,244,233,231,237,225,231,242,229,229,107,128,3,218,84,141,0,84,27,186,27,191,27,197,28,7,28,32,28,96,28,147,28,177,28,189,28,201,28,246,29,6,29,46,225,117,128,3,164,226,225,114,128,1,102,99,4,27,207,27,214,27,223,27,250,225,242,239,110,128,1,100,229,228,233,236,236,97,128,1,98,233,242,99,2,27,231,27,236,236,101,128,36,201,245,237,230,236,229,248,226,229,236,239,119,128,30,112,239,237,237,225,225,227,227,229,238,116,128,1,98,228,239,116,2,28,15,28,24,225,227,227,229,238,116,128,30,106,226,229,236,239,119,128,30,108,101,4,28,42,28,53,28,73,28,82,227,249,242,233,236,236,233,99,128,4,34,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,172,238,242,239,237,225,110,128,33,105,244,243,229,227,249,242,233,236,236,233,99,128,4,180,104,3,28,104,28,110,28,136,229,244,97,128,3,152,111,2,28,116,28,121,239,107,128,1,172,242,110,129,0,222,28,128,243,237,225,236,108,128,247,254,242,229,229,242,239,237,225,110,128,33,98,105,2,28,153,28,164,236,228,229,243,237,225,236,108,128,246,254,247,238,225,242,237,229,238,233,225,110,128,5,79,236,233,238,229,226,229,236,239,119,128,30,110,237,239,238,239,243,240,225,227,101,128,255,52,111,2,28,207,28,218,225,242,237,229,238,233,225,110,128,5,57,238,101,3,28,227,28,234,28,240,230,233,246,101,128,1,188,243,233,120,128,1,132,244,247,111,128,1,167,242,229,244,242,239,230,236,229,248,232,239,239,107,128,1,174,115,3,29,14,29,26,29,39,229,227,249,242,233,236,236,233,99,128,4,38,232,229,227,249,242,233,236,236,233,99,128,4,11,237,225,236,108,128,247,116,119,2,29,52,29,64,229,236,246,229,242,239,237,225,110,128,33,107,239,242,239,237,225,110,128,33,97,85,142,0,85,29,105,29,123,29,131,29,198,30,69,30,87,30,198,30,214,30,226,31,21,31,30,31,142,31,149,31,219,225,227,245,244,101,129,0,218,29,115,243,237,225,236,108,128,247,250,226,242,229,246,101,128,1,108,99,3,29,139,29,146,29,188,225,242,239,110,128,1,211,233,242,99,2,29,154,29,159,236,101,128,36,202,245,237,230,236,229,120,130,0,219,29,172,29,180,226,229,236,239,119,128,30,118,243,237,225,236,108,128,247,251,249,242,233,236,236,233,99,128,4,35,100,3,29,206,29,229,30,59,226,108,2,29,213,29,221,225,227,245,244,101,128,1,112,231,242,225,246,101,128,2,20,233,229,242,229,243,233,115,134,0,220,29,251,30,3,30,11,30,34,30,42,30,51,225,227,245,244,101,128,1,215,226,229,236,239,119,128,30,114,99,2,30,17,30,24,225,242,239,110,128,1,217,249,242,233,236,236,233,99,128,4,240,231,242,225,246,101,128,1,219,237,225,227,242,239,110,128,1,213,243,237,225,236,108,128,247,252,239,244,226,229,236,239,119,128,30,228,231,242,225,246,101,129,0,217,30,79,243,237,225,236,108,128,247,249,104,2,30,93,30,171,111,2,30,99,30,109,239,235,225,226,239,246,101,128,30,230,242,110,133,1,175,30,124,30,132,30,143,30,151,30,163,225,227,245,244,101,128,30,232,228,239,244,226,229,236,239,119,128,30,240,231,242,225,246,101,128,30,234,232,239,239,235,225,226,239,246,101,128,30,236,244,233,236,228,101,128,30,238,245,238,231,225,242,245,237,236,225,245,116,129,1,112,30,187,227,249,242,233,236,236,233,99,128,4,242,233,238,246,229,242,244,229,228,226,242,229,246,101,128,2,22,235,227,249,242,233,236,236,233,99,128,4,120,109,2,30,232,31,10,225,227,242,239,110,130,1,106,30,244,30,255,227,249,242,233,236,236,233,99,128,4,238,228,233,229,242,229,243,233,115,128,30,122,239,238,239,243,240,225,227,101,128,255,53,239,231,239,238,229,107,128,1,114,240,243,233,236,239,110,133,3,165,31,49,31,53,31,90,31,121,31,134,49,128,3,210,97,2,31,59,31,81,227,245,244,229,232,239,239,235,243,249,237,226,239,236,231,242,229,229,107,128,3,211,230,242,233,227,225,110,128,1,177,228,233,229,242,229,243,233,115,129,3,171,31,103,232,239,239,235,243,249,237,226,239,236,231,242,229,229,107,128,3,212],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10240);allocate([232,239,239,235,243,249,237,226,239,108,128,3,210,244,239,238,239,115,128,3,142,242,233,238,103,128,1,110,115,3,31,157,31,172,31,179,232,239,242,244,227,249,242,233,236,236,233,99,128,4,14,237,225,236,108,128,247,117,244,242,225,233,231,232,116,2,31,191,31,202,227,249,242,233,236,236,233,99,128,4,174,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,176,244,233,236,228,101,130,1,104,31,231,31,239,225,227,245,244,101,128,30,120,226,229,236,239,119,128,30,116,86,136,0,86,32,11,32,20,32,31,32,60,32,67,32,79,32,91,32,99,227,233,242,227,236,101,128,36,203,228,239,244,226,229,236,239,119,128,30,126,101,2,32,37,32,48,227,249,242,233,236,236,233,99,128,4,18,247,225,242,237,229,238,233,225,110,128,5,78,232,239,239,107,128,1,178,237,239,238,239,243,240,225,227,101,128,255,54,239,225,242,237,229,238,233,225,110,128,5,72,243,237,225,236,108,128,247,118,244,233,236,228,101,128,30,124,87,134,0,87,32,123,32,131,32,154,32,194,32,202,32,214,225,227,245,244,101,128,30,130,227,233,242,99,2,32,140,32,145,236,101,128,36,204,245,237,230,236,229,120,128,1,116,100,2,32,160,32,170,233,229,242,229,243,233,115,128,30,132,239,116,2,32,177,32,186,225,227,227,229,238,116,128,30,134,226,229,236,239,119,128,30,136,231,242,225,246,101,128,30,128,237,239,238,239,243,240,225,227,101,128,255,55,243,237,225,236,108,128,247,119,88,134,0,88,32,238,32,247,33,18,33,31,33,35,33,47,227,233,242,227,236,101,128,36,205,100,2,32,253,33,7,233,229,242,229,243,233,115,128,30,140,239,244,225,227,227,229,238,116,128,30,138,229,232,225,242,237,229,238,233,225,110,128,5,61,105,128,3,158,237,239,238,239,243,240,225,227,101,128,255,56,243,237,225,236,108,128,247,120,89,139,0,89,33,81,33,116,33,139,33,189,33,228,33,236,33,253,34,40,34,52,34,60,34,68,97,2,33,87,33,104,227,245,244,101,129,0,221,33,96,243,237,225,236,108,128,247,253,244,227,249,242,233,236,236,233,99,128,4,98,227,233,242,99,2,33,125,33,130,236,101,128,36,206,245,237,230,236,229,120,128,1,118,100,2,33,145,33,165,233,229,242,229,243,233,115,129,1,120,33,157,243,237,225,236,108,128,247,255,239,116,2,33,172,33,181,225,227,227,229,238,116,128,30,142,226,229,236,239,119,128,30,244,229,114,2,33,196,33,208,233,227,249,242,233,236,236,233,99,128,4,43,245,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,248,231,242,225,246,101,128,30,242,232,239,239,107,129,1,179,33,245,225,226,239,246,101,128,30,246,105,3,34,5,34,16,34,27,225,242,237,229,238,233,225,110,128,5,69,227,249,242,233,236,236,233,99,128,4,7,247,238,225,242,237,229,238,233,225,110,128,5,82,237,239,238,239,243,240,225,227,101,128,255,57,243,237,225,236,108,128,247,121,244,233,236,228,101,128,30,248,245,115,2,34,75,34,113,226,233,103,2,34,83,34,94,227,249,242,233,236,236,233,99,128,4,106,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,108,236,233,244,244,236,101,2,34,124,34,135,227,249,242,233,236,236,233,99,128,4,102,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,104,90,136,0,90,34,174,34,198,34,243,35,14,35,81,35,173,35,185,35,197,97,2,34,180,34,191,225,242,237,229,238,233,225,110,128,5,54,227,245,244,101,128,1,121,99,2,34,204,34,221,225,242,239,110,129,1,125,34,213,243,237,225,236,108,128,246,255,233,242,99,2,34,229,34,234,236,101,128,36,207,245,237,230,236,229,120,128,30,144,228,239,116,130,1,123,34,253,35,6,225,227,227,229,238,116,128,1,123,226,229,236,239,119,128,30,146,101,3,35,22,35,33,35,76,227,249,242,233,236,236,233,99,128,4,23,100,2,35,39,35,58,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,152,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,222,244,97,128,3,150,232,101,4,35,92,35,103,35,119,35,130,225,242,237,229,238,233,225,110,128,5,58,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,193,227,249,242,233,236,236,233,99,128,4,22,100,2,35,136,35,155,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,150,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,220,236,233,238,229,226,229,236,239,119,128,30,148,237,239,238,239,243,240,225,227,101,128,255,58,115,2,35,203,35,210,237,225,236,108,128,247,122,244,242,239,235,101,128,1,181,97,149,0,97,36,8,36,144,37,35,37,211,38,55,38,91,45,10,45,47,45,74,46,43,46,81,47,170,47,242,48,197,48,206,49,79,51,87,52,77,52,124,53,19,53,33,97,7,36,24,36,34,36,41,36,48,36,73,36,89,36,100,226,229,238,231,225,236,105,128,9,134,227,245,244,101,128,0,225,228,229,246,97,128,9,6,231,117,2,36,55,36,64,234,225,242,225,244,105,128,10,134,242,237,245,235,232,105,128,10,6,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,62,242,245,243,241,245,225,242,101,128,51,3,246,239,247,229,236,243,233,231,110,3,36,116,36,126,36,133,226,229,238,231,225,236,105,128,9,190,228,229,246,97,128,9,62,231,245,234,225,242,225,244,105,128,10,190,98,4,36,154,36,195,36,204,36,214,226,242,229,246,233,225,244,233,239,110,2,36,169,36,184,237,225,242,235,225,242,237,229,238,233,225,110,128,5,95,243,233,231,238,228,229,246,97,128,9,112,229,238,231,225,236,105,128,9,133,239,240,239,237,239,230,111,128,49,26,242,229,246,101,134,1,3,36,233,36,241,36,252,37,7,37,15,37,27,225,227,245,244,101,128,30,175,227,249,242,233,236,236,233,99,128,4,209,228,239,244,226,229,236,239,119,128,30,183,231,242,225,246,101,128,30,177,232,239,239,235,225,226,239,246,101,128,30,179,244,233,236,228,101,128,30,181,99,4,37,45,37,52,37,131,37,201,225,242,239,110,128,1,206,233,242,99,2,37,60,37,65,236,101,128,36,208,245,237,230,236,229,120,133,0,226,37,84,37,92,37,103,37,111,37,123,225,227,245,244,101,128,30,165,228,239,244,226,229,236,239,119,128,30,173,231,242,225,246,101,128,30,167,232,239,239,235,225,226,239,246,101,128,30,169,244,233,236,228,101,128,30,171,245,244,101,133,0,180,37,147,37,158,37,175,37,182,37,191,226,229,236,239,247,227,237,98,128,3,23,99,2,37,164,37,169,237,98,128,3,1,239,237,98,128,3,1,228,229,246,97,128,9,84,236,239,247,237,239,100,128,2,207,244,239,238,229,227,237,98,128,3,65,249,242,233,236,236,233,99,128,4,48,100,5,37,223,37,233,37,247,37,253,38,31,226,236,231,242,225,246,101,128,2,1,228,225,235,231,245,242,237,245,235,232,105,128,10,113,229,246,97,128,9,5,233,229,242,229,243,233,115,130,0,228,38,11,38,22,227,249,242,233,236,236,233,99,128,4,211,237,225,227,242,239,110,128,1,223,239,116,2,38,38,38,46,226,229,236,239,119,128,30,161,237,225,227,242,239,110,128,1,225,101,131,0,230,38,65,38,73,38,82,225,227,245,244,101,128,1,253,235,239,242,229,225,110,128,49,80,237,225,227,242,239,110,128,1,227,230,233,105,6,38,107,38,127,41,64,41,70,41,85,44,185,48,2,38,113,38,120,176,178,176,56,128,32,21,184,185,180,49,128,32,164,177,48,3,38,136,40,160,41,39,48,9,38,156,38,176,38,238,39,44,39,106,39,168,39,230,40,36,40,98,49,3,38,164,38,168,38,172,55,128,4,16,56,128,4,17,57,128,4,18,50,10,38,198,38,202,38,206,38,210,38,214,38,218,38,222,38,226,38,230,38,234,48,128,4,19,49,128,4,20,50,128,4,21,51,128,4,1,52,128,4,22,53,128,4,23,54,128,4,24,55,128,4,25,56,128,4,26,57,128,4,27,51,10,39,4,39,8,39,12,39,16,39,20,39,24,39,28,39,32,39,36,39,40,48,128,4,28,49,128,4,29,50,128,4,30,51,128,4,31,52,128,4,32,53,128,4,33,54,128,4,34,55,128,4,35,56,128,4,36,57,128,4,37,52,10,39,66,39,70,39,74,39,78,39,82,39,86,39,90,39,94,39,98,39,102,48,128,4,38,49,128,4,39,50,128,4,40,51,128,4,41,52,128,4,42,53,128,4,43,54,128,4,44,55,128,4,45,56,128,4,46,57,128,4,47,53,10,39,128,39,132,39,136,39,140,39,144,39,148,39,152,39,156,39,160,39,164,48,128,4,144,49,128,4,2,50,128,4,3,51,128,4,4,52,128,4,5,53,128,4,6,54,128,4,7,55,128,4,8,56,128,4,9,57,128,4,10,54,10,39,190,39,194,39,198,39,202,39,206,39,210,39,214,39,218,39,222,39,226,48,128,4,11,49,128,4,12,50,128,4,14,51,128,246,196,52,128,246,197,53,128,4,48,54,128,4,49,55,128,4,50,56,128,4,51,57,128,4,52,55,10,39,252,40,0,40,4,40,8,40,12,40,16,40,20,40,24,40,28,40,32,48,128,4,53,49,128,4,81,50,128,4,54,51,128,4,55,52,128,4,56,53,128,4,57,54,128,4,58,55,128,4,59,56,128,4,60,57,128,4,61,56,10,40,58,40,62,40,66,40,70,40,74,40,78,40,82,40,86,40,90,40,94,48,128,4,62,49,128,4,63,50,128,4,64,51,128,4,65,52,128,4,66,53,128,4,67,54,128,4,68,55,128,4,69,56,128,4,70,57,128,4,71,57,10,40,120,40,124,40,128,40,132,40,136,40,140,40,144,40,148,40,152,40,156,48,128,4,72,49,128,4,73,50,128,4,74,51,128,4,75,52,128,4,76,53,128,4,77,54,128,4,78,55,128,4,79,56,128,4,145,57,128,4,82,49,4,40,170,40,232,40,237,41,7,48,10,40,192,40,196,40,200,40,204,40,208,40,212,40,216,40,220,40,224,40,228,48,128,4,83,49,128,4,84,50,128,4,85,51,128,4,86,52,128,4,87,53,128,4,88,54,128,4,89,55,128,4,90,56,128,4,91,57,128,4,92,177,48,128,4,94,52,4,40,247,40,251,40,255,41,3,53,128,4,15,54,128,4,98,55,128,4,114,56,128,4,116,57,5,41,19,41,23,41,27,41,31,41,35,50,128,246,198,51,128,4,95,52,128,4,99,53,128,4,115,54,128,4,117,56,2,41,45,41,59,51,2,41,51,41,55,49,128,246,199,50,128,246,200,180,54,128,4,217,178,185,57,128,32,14,179,48,2,41,77,41,81,48,128,32,15,49,128,32,13,181,55,7,41,102,41,172,42,237,43,58,44,15,44,108,44,179,51,2,41,108,41,122,56,2,41,114,41,118,49,128,6,106,56,128,6,12,57,8,41,140,41,144,41,148,41,152,41,156,41,160,41,164,41,168,50,128,6,96,51,128,6,97,52,128,6,98,53,128,6,99,54,128,6,100,55,128,6,101,56,128,6,102,57,128,6,103,52,7,41,188,41,220,42,26,42,88,42,120,42,176,42,232,48,5,41,200,41,204,41,208,41,212,41,216,48,128,6,104,49,128,6,105,51,128,6,27,55,128,6,31,57,128,6,33,49,10,41,242,41,246,41,250,41,254,42,2,42,6,42,10,42,14,42,18,42,22,48,128,6,34,49,128,6,35,50,128,6,36,51,128,6,37,52,128,6,38,53,128,6,39,54,128,6,40,55,128,6,41,56,128,6,42,57,128,6,43,50,10,42,48,42,52,42,56,42,60,42,64,42,68,42,72,42,76,42,80,42,84,48,128,6,44,49,128,6,45,50,128,6,46,51,128,6,47,52,128,6,48,53,128,6,49,54,128,6,50,55,128,6,51,56,128,6,52,57,128,6,53,51,5,42,100,42,104,42,108,42,112,42,116,48,128,6,54,49,128,6,55,50,128,6,56,51,128,6,57,52,128,6,58,52,9,42,140,42,144,42,148,42,152,42,156,42,160,42,164,42,168,42,172,48,128,6,64,49,128,6,65,50,128,6,66,51,128,6,67,52,128,6,68,53,128,6,69,54,128,6,70,56,128,6,72,57,128,6,73,53,9,42,196,42,200,42,204,42,208,42,212,42,216,42,220,42,224,42,228,48,128,6,74,49,128,6,75,50,128,6,76,51,128,6,77,52,128,6,78,53,128,6,79,54,128,6,80,55,128,6,81,56,128,6,82,183,48,128,6,71,53,3,42,245,43,21,43,53,48,5,43,1,43,5,43,9,43,13,43,17,53,128,6,164,54,128,6,126,55,128,6,134,56,128,6,152,57,128,6,175,49,5,43,33,43,37,43,41,43,45,43,49,49,128,6,121,50,128,6,136,51,128,6,145,52,128,6,186,57,128,6,210,179,52,128,6,213,54,7,43,74,43,79,43,84,43,89,43,127,43,189,43,251,179,54,128,32,170,180,53,128,5,190,181,56,128,5,195,54,6,43,103,43,107,43,111,43,115,43,119,43,123,52,128,5,208,53,128,5,209,54,128,5,210,55,128,5,211,56,128,5,212,57,128,5,213,55,10,43,149,43,153,43,157,43,161,43,165,43,169,43,173,43,177,43,181,43,185,48,128,5,214,49,128,5,215,50,128,5,216,51,128,5,217,52,128,5,218,53,128,5,219,54,128,5,220,55,128,5,221,56,128,5,222,57,128,5,223,56,10,43,211,43,215,43,219,43,223,43,227,43,231,43,235,43,239,43,243,43,247,48,128,5,224,49,128,5,225,50,128,5,226,51,128,5,227,52,128,5,228,53,128,5,229,54,128,5,230,55,128,5,231,56,128,5,232,57,128,5,233,57,3,44,3,44,7,44,11,48,128,5,234,52,128,251,42,53,128,251,43,55,4,44,25,44,39,44,59,44,64,48,2,44,31,44,35,48,128,251,75,53,128,251,31,49,3,44,47,44,51,44,55,54,128,5,240,55,128,5,241,56,128,5,242,178,51,128,251,53,57,7,44,80,44,84,44,88,44,92,44,96,44,100,44,104,51,128,5,180,52,128,5,181,53,128,5,182,54,128,5,187,55,128,5,184,56,128,5,183,57,128,5,176,56,3,44,116,44,160,44,165,48,7,44,132,44,136,44,140,44,144,44,148,44,152,44,156,48,128,5,178,49,128,5,177,50,128,5,179,51,128,5,194,52,128,5,193,54,128,5,185,55,128,5,188,179,57,128,5,189,52,2,44,171,44,175,49,128,5,191,50,128,5,192,185,178,57,128,2,188,54,3,44,193,44,252,45,3,49,4,44,203,44,219,44,225,44,246,50,2,44,209,44,214,180,56,128,33,5,184,57,128,33,19,179,181,50,128,33,22,181,55,3,44,234,44,238,44,242,51,128,32,44,52,128,32,45,53,128,32,46,182,182,52,128,32,12,179,177,182,55,128,6,109,180,185,179,55,128,2,189,103,2,45,16,45,23,242,225,246,101,128,0,224,117,2,45,29,45,38,234,225,242,225,244,105,128,10,133,242,237,245,235,232,105,128,10,5,104,2,45,53,45,63,233,242,225,231,225,238,97,128,48,66,239,239,235,225,226,239,246,101,128,30,163,105,7,45,90,45,115,45,122,45,134,45,159,45,175,45,255,98,2,45,96,45,105,229,238,231,225,236,105,128,9,144,239,240,239,237,239,230,111,128,49,30,228,229,246,97,128,9,16,229,227,249,242,233,236,236,233,99,128,4,213,231,117,2,45,141,45,150,234,225,242,225,244,105,128,10,144,242,237,245,235,232,105,128,10,16,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,72,110,5,45,187,45,196,45,210,45,226,45,241,225,242,225,226,233,99,128,6,57,230,233,238,225,236,225,242,225,226,233,99,128,254,202,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,203,237,229,228,233,225,236,225,242,225,226,233,99,128,254,204,246,229,242,244,229,228,226,242,229,246,101,128,2,3,246,239,247,229,236,243,233,231,110,3,46,15,46,25,46,32,226,229,238,231,225,236,105,128,9,200,228,229,246,97,128,9,72,231,245,234,225,242,225,244,105,128,10,200,107,2,46,49,46,73,225,244,225,235,225,238,97,129,48,162,46,61,232,225,236,230,247,233,228,244,104,128,255,113,239,242,229,225,110,128,49,79,108,3,46,89,47,145,47,154,101,2,46,95,47,140,102,136,5,208,46,115,46,124,46,139,46,153,46,242,47,0,47,111,47,125,225,242,225,226,233,99,128,6,39,228,225,231,229,243,232,232,229,226,242,229,119,128,251,48,230,233,238,225,236,225,242,225,226,233,99,128,254,142,104,2,46,159,46,234,225,237,250,97,2,46,168,46,201,225,226,239,246,101,2,46,178,46,187,225,242,225,226,233,99,128,6,35,230,233,238,225,236,225,242,225,226,233,99,128,254,132,226,229,236,239,119,2,46,211,46,220,225,242,225,226,233,99,128,6,37,230,233,238,225,236,225,242,225,226,233,99,128,254,136,229,226,242,229,119,128,5,208,236,225,237,229,228,232,229,226,242,229,119,128,251,79,237,97,2,47,7,47,43,228,228,225,225,226,239,246,101,2,47,20,47,29,225,242,225,226,233,99,128,6,34,230,233,238,225,236,225,242,225,226,233,99,128,254,130,235,243,245,242,97,4,47,57,47,66,47,80,47,96,225,242,225,226,233,99,128,6,73,230,233,238,225,236,225,242,225,226,233,99,128,254,240,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,243,237,229,228,233,225,236,225,242,225,226,233,99,128,254,244,240,225,244,225,232,232,229,226,242,229,119,128,251,46,241,225,237,225,244,243,232,229,226,242,229,119,128,251,47,240,104,128,33,53,236,229,241,245,225,108,128,34,76,240,232,97,129,3,177,47,162,244,239,238,239,115,128,3,172,109,4,47,180,47,188,47,199,47,233,225,227,242,239,110,128,1,1,239,238,239,243,240,225,227,101,128,255,65,240,229,242,243,225,238,100,130,0,38,47,213,47,225,237,239,238,239,243,240,225,227,101,128,255,6,243,237,225,236,108,128,247,38,243,241,245,225,242,101,128,51,194,110,4,47,252,48,7,48,129,48,139,226,239,240,239,237,239,230,111,128,49,34,103,4,48,17,48,28,48,42,48,121,226,239,240,239,237,239,230,111,128,49,36,235,232,225,238,235,232,245,244,232,225,105,128,14,90,236,101,131,34,32,48,53,48,106,48,113,226,242,225,227,235,229,116,2,48,65,48,85,236,229,230,116,129,48,8,48,74,246,229,242,244,233,227,225,108,128,254,63,242,233,231,232,116,129,48,9,48,95,246,229,242,244,233,227,225,108,128,254,64,236,229,230,116,128,35,41,242,233,231,232,116,128,35,42,243,244,242,239,109,128,33,43,239,244,229,236,229,233,97,128,3,135,117,2,48,145,48,157,228,225,244,244,225,228,229,246,97,128,9,82,243,246,225,242,97,3,48,169,48,179,48,186,226,229,238,231,225,236,105,128,9,130,228,229,246,97,128,9,2,231,245,234,225,242,225,244,105,128,10,130,239,231,239,238,229,107,128,1,5,112,3,48,214,48,238,49,12,97,2,48,220,48,232,225,244,239,243,241,245,225,242,101,128,51,0,242,229,110,128,36,156,239,243,244,242,239,240,232,101,2,48,251,49,6,225,242,237,229,238,233,225,110,128,5,90,237,239,100,128,2,188,112,2,49,18,49,23,236,101,128,248,255,242,111,2,49,30,49,38,225,227,232,229,115,128,34,80,120,2,49,44,49,64,229,241,245,225,108,129,34,72,49,54,239,242,233,237,225,231,101,128,34,82,233,237,225,244,229,236,249,229,241,245,225,108,128,34,69,114,4,49,89,49,116,49,120,49,165,225,229,97,2,49,97,49,107,229,235,239,242,229,225,110,128,49,142,235,239,242,229,225,110,128,49,141,99,128,35,18,105,2,49,126,49,140,231,232,244,232,225,236,230,242,233,238,103,128,30,154,238,103,130,0,229,49,149,49,157,225,227,245,244,101,128,1,251,226,229,236,239,119,128,30,1,242,239,119,8,49,185,49,192,50,65,50,131,50,181,50,236,51,3,51,78,226,239,244,104,128,33,148,100,3,49,200,49,239,50,30,225,243,104,4,49,212,49,219,49,226,49,234,228,239,247,110,128,33,227,236,229,230,116,128,33,224,242,233,231,232,116,128,33,226,245,112,128,33,225,226,108,5,49,252,50,3,50,10,50,17,50,25,226,239,244,104,128,33,212,228,239,247,110,128,33,211,236,229,230,116,128,33,208,242,233,231,232,116,128,33,210,245,112,128,33,209,239,247,110,131,33,147,50,42,50,49,50,57,236,229,230,116,128,33,153,242,233,231,232,116,128,33,152,247,232,233,244,101,128,33,233,104,2,50,71,50,122,229,225,100,4,50,83,50,93,50,103,50,114,228,239,247,238,237,239,100,128,2,197,236,229,230,244,237,239,100,128,2,194,242,233,231,232,244,237,239,100,128,2,195,245,240,237,239,100,128,2,196,239,242,233,250,229,120,128,248,231,236,229,230,116,131,33,144,50,144,50,161,50,173,228,226,108,129,33,208,50,152,243,244,242,239,235,101,128,33,205,239,246,229,242,242,233,231,232,116,128,33,198,247,232,233,244,101,128,33,230,242,233,231,232,116,132,33,146,50,197,50,209,50,217,50,228,228,226,236,243,244,242,239,235,101,128,33,207,232,229,225,246,121,128,39,158,239,246,229,242,236,229,230,116,128,33,196,247,232,233,244,101,128,33,232,244,225,98,2,50,244,50,251,236,229,230,116,128,33,228,242,233,231,232,116,128,33,229,245,112,132,33,145,51,16,51,44,51,62,51,70,100,2,51,22,51,34,110,129,33,149,51,28,226,243,101,128,33,168,239,247,238,226,225,243,101,128,33,168,236,229,230,116,129,33,150,51,53,239,230,228,239,247,110,128,33,197,242,233,231,232,116,128,33,151,247,232,233,244,101,128,33,231,246,229,242,244,229,120,128,248,230,115,5,51,99,51,175,51,220,52,47,52,57,99,2,51,105,51,157,233,105,2,51,112,51,135,227,233,242,227,245,109,129,0,94,51,123,237,239,238,239,243,240,225,227,101,128,255,62,244,233,236,228,101,129,0,126,51,145,237,239,238,239,243,240,225,227,101,128,255,94,242,233,240,116,129,2,81,51,166,244,245,242,238,229,100,128,2,82,237,225,236,108,2,51,184,51,195,232,233,242,225,231,225,238,97,128,48,65,235,225,244,225,235,225,238,97,129,48,161,51,208,232,225,236,230,247,233,228,244,104,128,255,103,244,229,242,233,115,2,51,230,52,43,107,131,0,42,51,240,52,12,52,35,97,2,51,246,52,4,236,244,239,238,229,225,242,225,226,233,99,128,6,109,242,225,226,233,99,128,6,109,109,2,52,18,52,24,225,244,104,128,34,23,239,238,239,243,240,225,227,101,128,255,10,243,237,225,236,108,128,254,97,109,128,32,66,245,240,229,242,233,239,114,128,246,233,249,237,240,244,239,244,233,227,225,236,236,249,229,241,245,225,108,128,34,67,116,132,0,64,52,89,52,96,52,108,52,116,233,236,228,101,128,0,227,237,239,238,239,243,240,225,227,101,128,255,32,243,237,225,236,108,128,254,107,245,242,238,229,100,128,2,80,117,6,52,138,52,163,52,170,52,195,52,215,52,231,98,2,52,144,52,153,229,238,231,225,236,105,128,9,148,239,240,239,237,239,230,111,128,49,32,228,229,246,97,128,9,20,231,117,2,52,177,52,186,234,225,242,225,244,105,128,10,148,242,237,245,235,232,105,128,10,20,236,229,238,231,244,232,237,225,242,235,226,229,238,231,225,236,105,128,9,215,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,76,246,239,247,229,236,243,233,231,110,3,52,247,53,1,53,8,226,229,238,231,225,236,105,128,9,204,228,229,246,97,128,9,76,231,245,234,225,242,225,244,105,128,10,204,246,225,231,242,225,232,225,228,229,246,97,128,9,61,121,2,53,39,53,51,226,225,242,237,229,238,233,225,110,128,5,97,233,110,130,5,226,53,60,53,75,225,236,244,239,238,229,232,229,226,242,229,119,128,251,32,232,229,226,242,229,119,128,5,226,98,144,0,98,53,120,53,255,54,10,54,19,54,44,55,85,55,147,55,220,57,146,57,158,57,201,57,209,57,219,59,89,59,113,59,122,97,7,53,136,53,146,53,170,53,177,53,202,53,226,53,237,226,229,238,231,225,236,105,128,9,172,227,235,243,236,225,243,104,129,0,92,53,158,237,239,238,239,243,240,225,227,101,128,255,60,228,229,246,97,128,9,44,231,117,2,53,184,53,193,234,225,242,225,244,105,128,10,172,242,237,245,235,232,105,128,10,44,104,2,53,208,53,218,233,242,225,231,225,238,97,128,48,112,244,244,232,225,105,128,14,63,235,225,244,225,235,225,238,97,128,48,208,114,129,0,124,53,243,237,239,238,239,243,240,225,227,101,128,255,92,226,239,240,239,237,239,230,111,128,49,5,227,233,242,227,236,101,128,36,209,228,239,116,2,54,27,54,36,225,227,227,229,238,116,128,30,3,226,229,236,239,119,128,30,5,101,6,54,58,54,79,54,102,54,244,54,255,55,11,225,237,229,228,243,233,248,244,229,229,238,244,232,238,239,244,229,115,128,38,108,99,2,54,85,54,92,225,245,243,101,128,34,53,249,242,233,236,236,233,99,128,4,49,104,5,54,114,54,123,54,137,54,167,54,226,225,242,225,226,233,99,128,6,40,230,233,238,225,236,225,242,225,226,233,99,128,254,144,105,2,54,143,54,158,238,233,244,233,225,236,225,242,225,226,233,99,128,254,145,242,225,231,225,238,97,128,48,121,237,101,2,54,174,54,187,228,233,225,236,225,242,225,226,233,99,128,254,146,229,237,105,2,54,195,54,210,238,233,244,233,225,236,225,242,225,226,233,99,128,252,159,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,8,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,109,235,225,244,225,235,225,238,97,128,48,217,238,225,242,237,229,238,233,225,110,128,5,98,116,132,5,209,55,23,55,43,55,63,55,72,97,129,3,178,55,29,243,249,237,226,239,236,231,242,229,229,107,128,3,208,228,225,231,229,243,104,129,251,49,55,54,232,229,226,242,229,119,128,251,49,232,229,226,242,229,119,128,5,209,242,225,230,229,232,229,226,242,229,119,128,251,76,104,2,55,91,55,141,97,3,55,99,55,109,55,116,226,229,238,231,225,236,105,128,9,173,228,229,246,97,128,9,45,231,117,2,55,123,55,132,234,225,242,225,244,105,128,10,173,242,237,245,235,232,105,128,10,45,239,239,107,128,2,83,105,5,55,159,55,170,55,181,55,195,55,209,232,233,242,225,231,225,238,97,128,48,115,235,225,244,225,235,225,238,97,128,48,211,236,225,226,233,225,236,227,236,233,227,107,128,2,152,238,228,233,231,245,242,237,245,235,232,105,128,10,2,242,245,243,241,245,225,242,101,128,51,49,108,3,55,228,57,129,57,140,97,2,55,234,57,124,227,107,6,55,249,56,2,56,39,56,188,56,243,57,39,227,233,242,227,236,101,128,37,207,100,2,56,8,56,17,233,225,237,239,238,100,128,37,198,239,247,238,240,239,233,238,244,233,238,231,244,242,233,225,238,231,236,101,128,37,188,108,2,56,45,56,148,101,2,56,51,56,87,230,244,240,239,233,238,244,233,238,103,2,56,66,56,76,240,239,233,238,244,229,114,128,37,196,244,242,233,225,238,231,236,101,128,37,192,238,244,233,227,245,236,225,242,226,242,225,227,235,229,116,2,56,107,56,127,236,229,230,116,129,48,16,56,116,246,229,242,244,233,227,225,108,128,254,59,242,233,231,232,116,129,48,17,56,137,246,229,242,244,233,227,225,108,128,254,60,239,247,229,114,2,56,157,56,172,236,229,230,244,244,242,233,225,238,231,236,101,128,37,227,242,233,231,232,244,244,242,233,225,238,231,236,101,128,37,226,114,2,56,194,56,205,229,227,244,225,238,231,236,101,128,37,172,233,231,232,244,240,239,233,238,244,233,238,103,2,56,222,56,232,240,239,233,238,244,229,114,128,37,186,244,242,233,225,238,231,236,101,128,37,182,115,3,56,251,57,25,57,33,109,2,57,1,57,13,225,236,236,243,241,245,225,242,101,128,37,170,233,236,233,238,231,230,225,227,101,128,38,59,241,245,225,242,101,128,37,160,244,225,114,128,38,5,245,240,112,2,57,47,57,85,229,114,2,57,54,57,69,236,229,230,244,244,242,233,225,238,231,236,101,128,37,228,242,233,231,232,244,244,242,233,225,238,231,236,101,128,37,229,239,233,238,244,233,238,103,2,57,97,57,113,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,180,244,242,233,225,238,231,236,101,128,37,178,238,107,128,36,35,233,238,229,226,229,236,239,119,128,30,7,239,227,107,128,37,136,237,239,238,239,243,240,225,227,101,128,255,66,111,3,57,166,57,179,57,190,226,225,233,237,225,233,244,232,225,105,128,14,26,232,233,242,225,231,225,238,97,128,48,124,235,225,244,225,235,225,238,97,128,48,220,240,225,242,229,110,128,36,157,241,243,241,245,225,242,101,128,51,195,114,4,57,229,58,223,59,40,59,79,225,99,2,57,236,58,130,101,3,57,244,57,249,58,61,229,120,128,248,244,236,229,230,116,133,0,123,58,10,58,15,58,37,58,45,58,50,226,116,128,248,243,109,2,58,21,58,26,233,100,128,248,242,239,238,239,243,240,225,227,101,128,255,91,243,237,225,236,108,128,254,91,244,112,128,248,241,246,229,242,244,233,227,225,108,128,254,55,242,233,231,232,116,133,0,125,58,79,58,84,58,106,58,114,58,119,226,116,128,248,254,109,2,58,90,58,95,233,100,128,248,253,239,238,239,243,240,225,227,101,128,255,93,243,237,225,236,108,128,254,92,244,112,128,248,252,246,229,242,244,233,227,225,108,128,254,56,235,229,116,2,58,138,58,180,236,229,230,116,132,0,91,58,153,58,158,58,163,58,175,226,116,128,248,240,229,120,128,248,239,237,239,238,239,243,240,225,227,101,128,255,59,244,112,128,248,238,242,233,231,232,116,132,0,93,58,196,58,201,58,206,58,218,226,116,128,248,251,229,120,128,248,250,237,239,238,239,243,240,225,227,101,128,255,61,244,112,128,248,249,229,246,101,131,2,216,58,235,58,246,58,252,226,229,236,239,247,227,237,98,128,3,46,227,237,98,128,3,6,233,238,246,229,242,244,229,100,3,59,11,59,22,59,28,226,229,236,239,247,227,237,98,128,3,47,227,237,98,128,3,17,228,239,245,226,236,229,227,237,98,128,3,97,233,228,231,101,2,59,49,59,60,226,229,236,239,247,227,237,98,128,3,42,233,238,246,229,242,244,229,228,226,229,236,239,247,227,237,98,128,3,58,239,235,229,238,226,225,114,128,0,166,115,2,59,95,59,103,244,242,239,235,101,128,1,128,245,240,229,242,233,239,114,128,246,234,244,239,240,226,225,114,128,1,131,117,3,59,130,59,141,59,152,232,233,242,225,231,225,238,97,128,48,118,235,225,244,225,235,225,238,97,128,48,214,236,108,2,59,159,59,189,229,116,130,32,34,59,168,59,178,233,238,246,229,242,243,101,128,37,216,239,240,229,242,225,244,239,114,128,34,25,243,229,249,101,128,37,206,99,143,0,99,59,230,60,179,60,190,60,254,61,29,61,122,63,33,64,17,64,117,64,166,67,158,67,166,67,176,67,188,67,221,97,9,59,250,60,5,60,15,60,22,60,29,60,54,60,64,60,116,60,125,225,242,237,229,238,233,225,110,128,5,110,226,229,238,231,225,236,105,128,9,154,227,245,244,101,128,1,7,228,229,246,97,128,9,26,231,117,2,60,36,60,45,234,225,242,225,244,105,128,10,154,242,237,245,235,232,105,128,10,26,236,243,241,245,225,242,101,128,51,136,238,228,242,225,226,233,238,228,117,4,60,82,60,92,60,98,60,105,226,229,238,231,225,236,105,128,9,129,227,237,98,128,3,16,228,229,246,97,128,9,1,231,245,234,225,242,225,244,105,128,10,129,240,243,236,239,227,107,128,33,234,114,3,60,133,60,139,60,165,229,239,102,128,33,5,239,110,130,2,199,60,148,60,159,226,229,236,239,247,227,237,98,128,3,44,227,237,98,128,3,12,242,233,225,231,229,242,229,244,245,242,110,128,33,181,226,239,240,239,237,239,230,111,128,49,24,99,4,60,200,60,207,60,226,60,248,225,242,239,110,128,1,13,229,228,233,236,236,97,129,0,231,60,218,225,227,245,244,101,128,30,9,233,242,99,2,60,234,60,239,236,101,128,36,210,245,237,230,236,229,120,128,1,9,245,242,108,128,2,85,100,2,61,4,61,20,239,116,129,1,11,61,11,225,227,227,229,238,116,128,1,11,243,241,245,225,242,101,128,51,197,101,2,61,35,61,51,228,233,236,236,97,129,0,184,61,45,227,237,98,128,3,39,238,116,132,0,162,61,64,61,88,61,100,61,111,105,2,61,70,61,78,231,242,225,228,101,128,33,3,238,230,229,242,233,239,114,128,246,223,237,239,238,239,243,240,225,227,101,128,255,224,239,236,228,243,244,249,236,101,128,247,162,243,245,240,229,242,233,239,114,128,246,224,104,5,61,134,61,197,61,208,62,136,62,228,97,4,61,144,61,155,61,165,61,172,225,242,237,229,238,233,225,110,128,5,121,226,229,238,231,225,236,105,128,9,155,228,229,246,97,128,9,27,231,117,2,61,179,61,188,234,225,242,225,244,105,128,10,155,242,237,245,235,232,105,128,10,27,226,239,240,239,237,239,230,111,128,49,20,101,6,61,222,61,242,62,10,62,78,62,90,62,111,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,189,99,2,61,248,62,0,235,237,225,242,107,128,39,19,249,242,233,236,236,233,99,128,4,71,100,2,62,16,62,60,229,243,227,229,238,228,229,114,2,62,29,62,49,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,191,227,249,242,233,236,236,233,99,128,4,183,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,245,232,225,242,237,229,238,233,225,110,128,5,115,235,232,225,235,225,243,243,233,225,238,227,249,242,233,236,236,233,99,128,4,204,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,185,105,129,3,199,62,142,229,245,227,104,4,62,155,62,190,62,205,62,214,97,2,62,161,62,176,227,233,242,227,236,229,235,239,242,229,225,110,128,50,119,240,225,242,229,238,235,239,242,229,225,110,128,50,23,227,233,242,227,236,229,235,239,242,229,225,110,128,50,105,235,239,242,229,225,110,128,49,74,240,225,242,229,238,235,239,242,229,225,110,128,50,9,111,2,62,234,63,28,227,104,3,62,243,63,9,63,19,225,110,2,62,250,63,2,231,244,232,225,105,128,14,10,244,232,225,105,128,14,8,233,238,231,244,232,225,105,128,14,9,239,229,244,232,225,105,128,14,12,239,107,128,1,136,105,2,63,39,63,141,229,245,99,5,63,53,63,88,63,103,63,112,63,126,97,2,63,59,63,74,227,233,242,227,236,229,235,239,242,229,225,110,128,50,118,240,225,242,229,238,235,239,242,229,225,110,128,50,22,227,233,242,227,236,229,235,239,242,229,225,110,128,50,104,235,239,242,229,225,110,128,49,72,240,225,242,229,238,235,239,242,229,225,110,128,50,8,245,240,225,242,229,238,235,239,242,229,225,110,128,50,28,242,99,2,63,148,63,243,236,101,132,37,203,63,161,63,172,63,177,63,201,237,245,236,244,233,240,236,121,128,34,151,239,116,128,34,153,112,2,63,183,63,189,236,245,115,128,34,149,239,243,244,225,236,237,225,242,107,128,48,54,247,233,244,104,2,63,210,63,226,236,229,230,244,232,225,236,230,226,236,225,227,107,128,37,208,242,233,231,232,244,232,225,236,230,226,236,225,227,107,128,37,209,245,237,230,236,229,120,130,2,198,64,0,64,11,226,229,236,239,247,227,237,98,128,3,45,227,237,98,128,3,2,108,3,64,25,64,31,64,85,229,225,114,128,35,39,233,227,107,4,64,43,64,54,64,63,64,73,225,236,246,229,239,236,225,114,128,1,194,228,229,238,244,225,108,128,1,192,236,225,244,229,242,225,108,128,1,193,242,229,244,242,239,230,236,229,120,128,1,195,245,98,129,38,99,64,92,243,245,233,116,2,64,101,64,109,226,236,225,227,107,128,38,99,247,232,233,244,101,128,38,103,109,3,64,125,64,139,64,150,227,245,226,229,228,243,241,245,225,242,101,128,51,164,239,238,239,243,240,225,227,101,128,255,67,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,160,111,8,64,184,64,195,65,26,65,224,66,253,67,28,67,135,67,144,225,242,237,229,238,233,225,110,128,5,129,236,239,110,131,0,58,64,207,64,232,64,251,237,239,110,2,64,215,64,223,229,244,225,242,121,128,32,161,239,243,240,225,227,101,128,255,26,115,2,64,238,64,244,233,231,110,128,32,161,237,225,236,108,128,254,85,244,242,233,225,238,231,245,236,225,114,2,65,10,65,20,232,225,236,230,237,239,100,128,2,209,237,239,100,128,2,208,109,2,65,32,65,217,237,97,134,0,44,65,49,65,113,65,124,65,136,65,166,65,189,97,3,65,57,65,83,65,91,226,239,246,101,2,65,66,65,72,227,237,98,128,3,19,242,233,231,232,244,227,237,98,128,3,21,227,227,229,238,116,128,246,195,114,2,65,97,65,104,225,226,233,99,128,6,12,237,229,238,233,225,110,128,5,93,233,238,230,229,242,233,239,114,128,246,225,237,239,238,239,243,240,225,227,101,128,255,12,242,229,246,229,242,243,229,100,2,65,149,65,160,225,226,239,246,229,227,237,98,128,3,20,237,239,100,128,2,189,115,2,65,172,65,179,237,225,236,108,128,254,80,245,240,229,242,233,239,114,128,246,226,244,245,242,238,229,100,2,65,200,65,211,225,226,239,246,229,227,237,98,128,3,18,237,239,100,128,2,187,240,225,243,115,128,38,60,110,2,65,230,65,239,231,242,245,229,238,116,128,34,69,116,2,65,245,66,3,239,245,242,233,238,244,229,231,242,225,108,128,34,46,242,239,108,142,35,3,66,37,66,43,66,58,66,73,66,117,66,162,66,176,66,181,66,186,66,191,66,197,66,202,66,243,66,248,193,195,75,128,0,6,66,2,66,49,66,54,197,76,128,0,7,83,128,0,8,67,2,66,64,66,69,193,78,128,0,24,82,128,0,13,68,3,66,81,66,107,66,112,67,4,66,91,66,95,66,99,66,103,49,128,0,17,50,128,0,18,51,128,0,19,52,128,0,20,197,76,128,0,127,204,69,128,0,16,69,5,66,129,66,133,66,138,66,143,66,148,77,128,0,25,206,81,128,0,5,207,84,128,0,4,211,67,128,0,27,84,2,66,154,66,158,66,128,0,23,88,128,0,3,70,2,66,168,66,172,70,128,0,12,83,128,0,28,199,83,128,0,29,200,84,128,0,9,204,70,128,0,10,206,193,75,128,0,21,210,83,128,0,30,83,5,66,214,66,218,66,228,66,233,66,238,73,128,0,15,79,129,0,14,66,224,84,128,0,2,212,88,128,0,1,213,66,128,0,26,217,78,128,0,22,213,83,128,0,31,214,84,128,0,11,240,249,242,233,231,232,116,129,0,169,67,9,115,2,67,15,67,21,225,238,115,128,248,233,229,242,233,102,128,246,217,114,2,67,34,67,118,238,229,242,226,242,225,227,235,229,116,2,67,49,67,83,236,229,230,116,130,48,12,67,60,67,72,232,225,236,230,247,233,228,244,104,128,255,98,246,229,242,244,233,227,225,108,128,254,65,242,233,231,232,116,130,48,13,67,95,67,107,232,225,236,230,247,233,228,244,104,128,255,99,246,229,242,244,233,227,225,108,128,254,66,240,239,242,225,244,233,239,238,243,241,245,225,242,101,128,51,127,243,241,245,225,242,101,128,51,199,246,229,242,235,231,243,241,245,225,242,101,128,51,198,240,225,242,229,110,128,36,158,242,245,250,229,233,242,111,128,32,162,243,244,242,229,244,227,232,229,100,128,2,151,245,114,2,67,195,67,213,236,121,2,67,202,67,208,225,238,100,128,34,207,239,114,128,34,206,242,229,238,227,121,128,0,164,249,114,4,67,232,67,240,67,247,67,255,194,242,229,246,101,128,246,209,198,236,229,120,128,246,210,226,242,229,246,101,128,246,212,230,236,229,120,128,246,213,100,146,0,100,68,46,69,184,70,208,71,12,71,188,72,142,72,204,73,133,73,146,73,155,73,181,73,206,73,215,75,26,75,34,75,45,75,65,75,93,97,11,68,70,68,81,68,91,68,163,68,226,68,237,68,248,69,61,69,123,69,129,69,159,225,242,237,229,238,233,225,110,128,5,100,226,229,238,231,225,236,105,128,9,166,100,5,68,103,68,112,68,118,68,132,68,148,225,242,225,226,233,99,128,6,54,229,246,97,128,9,38,230,233,238,225,236,225,242,225,226,233,99,128,254,190,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,191,237,229,228,233,225,236,225,242,225,226,233,99,128,254,192,103,3,68,171,68,188,68,202,229,243,104,129,5,188,68,179,232,229,226,242,229,119,128,5,188,231,229,114,129,32,32,68,196,228,226,108,128,32,33,117,2,68,208,68,217,234,225,242,225,244,105,128,10,166,242,237,245,235,232,105,128,10,38,232,233,242,225,231,225,238,97,128,48,96,235,225,244,225,235,225,238,97,128,48,192,108,3,69,0,69,9,69,47,225,242,225,226,233,99,128,6,47,229,116,130,5,211,69,18,69,38,228,225,231,229,243,104,129,251,51,69,29,232,229,226,242,229,119,128,251,51,232,229,226,242,229,119,128,5,211,230,233,238,225,236,225,242,225,226,233,99,128,254,170,237,237,97,3,69,71,69,80,69,92,225,242,225,226,233,99,128,6,79,236,239,247,225,242,225,226,233,99,128,6,79,244,225,238,97,2,69,101,69,115,236,244,239,238,229,225,242,225,226,233,99,128,6,76,242,225,226,233,99,128,6,76,238,228,97,128,9,100,242,231,97,2,69,137,69,146,232,229,226,242,229,119,128,5,167,236,229,230,244,232,229,226,242,229,119,128,5,167,243,233,225,240,238,229,245,237,225,244,225,227,249,242,233,236,236,233,227,227,237,98,128,4,133,98,3,69,192,70,189,70,199,108,9,69,212,69,220,70,77,70,85,70,101,70,112,70,130,70,144,70,155,199,242,225,246,101,128,246,211,97,2,69,226,70,27,238,231,236,229,226,242,225,227,235,229,116,2,69,242,70,6,236,229,230,116,129,48,10,69,251,246,229,242,244,233,227,225,108,128,254,61,242,233,231,232,116,129,48,11,70,16,246,229,242,244,233,227,225,108,128,254,62,114,2,70,33,70,54,227,232,233,238,246,229,242,244,229,228,226,229,236,239,247,227,237,98,128,3,43,242,239,119,2,70,62,70,69,236,229,230,116,128,33,212,242,233,231,232,116,128,33,210,228,225,238,228,97,128,9,101,231,242,225,246,101,129,246,214,70,95,227,237,98,128,3,15,233,238,244,229,231,242,225,108,128,34,44,236,239,247,236,233,238,101,129,32,23,70,124,227,237,98,128,3,51,239,246,229,242,236,233,238,229,227,237,98,128,3,63,240,242,233,237,229,237,239,100,128,2,186,246,229,242,244,233,227,225,108,2,70,168,70,174,226,225,114,128,32,22,236,233,238,229,225,226,239,246,229,227,237,98,128,3,14,239,240,239,237,239,230,111,128,49,9,243,241,245,225,242,101,128,51,200,99,4,70,218,70,225,70,234,71,5,225,242,239,110,128,1,15,229,228,233,236,236,97,128,30,17,233,242,99,2,70,242,70,247,236,101,128,36,211,245,237,230,236,229,248,226,229,236,239,119,128,30,19,242,239,225,116,128,1,17,100,4,71,22,71,103,71,113,71,164,97,4,71,32,71,42,71,49,71,74,226,229,238,231,225,236,105,128,9,161,228,229,246,97,128,9,33,231,117,2,71,56,71,65,234,225,242,225,244,105,128,10,161,242,237,245,235,232,105,128,10,33,108,2,71,80,71,89,225,242,225,226,233,99,128,6,136,230,233,238,225,236,225,242,225,226,233,99,128,251,137,228,232,225,228,229,246,97,128,9,92,232,97,3,71,122,71,132,71],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+20480);allocate([139,226,229,238,231,225,236,105,128,9,162,228,229,246,97,128,9,34,231,117,2,71,146,71,155,234,225,242,225,244,105,128,10,162,242,237,245,235,232,105,128,10,34,239,116,2,71,171,71,180,225,227,227,229,238,116,128,30,11,226,229,236,239,119,128,30,13,101,8,71,206,72,3,72,10,72,35,72,45,72,56,72,101,72,137,99,2,71,212,71,249,233,237,225,236,243,229,240,225,242,225,244,239,114,2,71,230,71,239,225,242,225,226,233,99,128,6,107,240,229,242,243,233,225,110,128,6,107,249,242,233,236,236,233,99,128,4,52,231,242,229,101,128,0,176,232,105,2,72,17,72,26,232,229,226,242,229,119,128,5,173,242,225,231,225,238,97,128,48,103,233,227,239,240,244,233,99,128,3,239,235,225,244,225,235,225,238,97,128,48,199,108,2,72,62,72,85,229,244,101,2,72,70,72,77,236,229,230,116,128,35,43,242,233,231,232,116,128,35,38,244,97,129,3,180,72,92,244,245,242,238,229,100,128,1,141,238,239,237,233,238,225,244,239,242,237,233,238,245,243,239,238,229,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,248,250,104,128,2,164,104,2,72,148,72,198,97,3,72,156,72,166,72,173,226,229,238,231,225,236,105,128,9,167,228,229,246,97,128,9,39,231,117,2,72,180,72,189,234,225,242,225,244,105,128,10,167,242,237,245,235,232,105,128,10,39,239,239,107,128,2,87,105,6,72,218,73,11,73,71,73,82,73,93,73,103,97,2,72,224,72,246,236,249,244,233,235,225,244,239,238,239,115,129,3,133,72,240,227,237,98,128,3,68,237,239,238,100,129,38,102,72,255,243,245,233,244,247,232,233,244,101,128,38,98,229,242,229,243,233,115,133,0,168,73,30,73,38,73,49,73,55,73,63,225,227,245,244,101,128,246,215,226,229,236,239,247,227,237,98,128,3,36,227,237,98,128,3,8,231,242,225,246,101,128,246,216,244,239,238,239,115,128,3,133,232,233,242,225,231,225,238,97,128,48,98,235,225,244,225,235,225,238,97,128,48,194,244,244,239,237,225,242,107,128,48,3,246,105,2,73,110,73,121,228,101,129,0,247,73,117,115,128,34,35,243,233,239,238,243,236,225,243,104,128,34,21,234,229,227,249,242,233,236,236,233,99,128,4,82,235,243,232,225,228,101,128,37,147,108,2,73,161,73,172,233,238,229,226,229,236,239,119,128,30,15,243,241,245,225,242,101,128,51,151,109,2,73,187,73,195,225,227,242,239,110,128,1,17,239,238,239,243,240,225,227,101,128,255,68,238,226,236,239,227,107,128,37,132,111,10,73,237,73,249,74,3,74,14,74,25,74,97,74,102,74,113,74,228,74,254,227,232,225,228,225,244,232,225,105,128,14,14,228,229,235,244,232,225,105,128,14,20,232,233,242,225,231,225,238,97,128,48,105,235,225,244,225,235,225,238,97,128,48,201,236,236,225,114,132,0,36,74,40,74,51,74,63,74,74,233,238,230,229,242,233,239,114,128,246,227,237,239,238,239,243,240,225,227,101,128,255,4,239,236,228,243,244,249,236,101,128,247,36,115,2,74,80,74,87,237,225,236,108,128,254,105,245,240,229,242,233,239,114,128,246,228,238,103,128,32,171,242,245,243,241,245,225,242,101,128,51,38,116,6,74,127,74,144,74,166,74,177,74,209,74,216,225,227,227,229,238,116,129,2,217,74,138,227,237,98,128,3,7,226,229,236,239,247,99,2,74,155,74,160,237,98,128,3,35,239,237,98,128,3,35,235,225,244,225,235,225,238,97,128,48,251,236,229,243,115,2,74,186,74,190,105,128,1,49,106,129,246,190,74,196,243,244,242,239,235,229,232,239,239,107,128,2,132,237,225,244,104,128,34,197,244,229,228,227,233,242,227,236,101,128,37,204,245,226,236,229,249,239,228,240,225,244,225,104,129,251,31,74,245,232,229,226,242,229,119,128,251,31,247,238,244,225,227,107,2,75,9,75,20,226,229,236,239,247,227,237,98,128,3,30,237,239,100,128,2,213,240,225,242,229,110,128,36,159,243,245,240,229,242,233,239,114,128,246,235,116,2,75,51,75,57,225,233,108,128,2,86,239,240,226,225,114,128,1,140,117,2,75,71,75,82,232,233,242,225,231,225,238,97,128,48,101,235,225,244,225,235,225,238,97,128,48,197,122,132,1,243,75,105,75,114,75,133,75,170,225,236,244,239,238,101,128,2,163,99,2,75,120,75,127,225,242,239,110,128,1,198,245,242,108,128,2,165,101,2,75,139,75,159,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,225,227,249,242,233,236,236,233,99,128,4,85,232,229,227,249,242,233,236,236,233,99,128,4,95,101,151,0,101,75,233,75,252,76,30,77,4,77,66,77,99,77,111,77,134,77,187,79,43,79,101,79,203,80,63,80,198,81,17,81,48,81,110,81,163,82,98,82,231,82,251,83,39,83,130,97,2,75,239,75,246,227,245,244,101,128,0,233,242,244,104,128,38,65,98,3,76,4,76,13,76,23,229,238,231,225,236,105,128,9,143,239,240,239,237,239,230,111,128,49,28,242,229,246,101,128,1,21,99,5,76,42,76,115,76,129,76,161,76,250,97,2,76,48,76,109,238,228,242,97,3,76,59,76,66,76,77,228,229,246,97,128,9,13,231,245,234,225,242,225,244,105,128,10,141,246,239,247,229,236,243,233,231,110,2,76,91,76,98,228,229,246,97,128,9,69,231,245,234,225,242,225,244,105,128,10,197,242,239,110,128,1,27,229,228,233,236,236,225,226,242,229,246,101,128,30,29,104,2,76,135,76,146,225,242,237,229,238,233,225,110,128,5,101,249,233,247,238,225,242,237,229,238,233,225,110,128,5,135,233,242,99,2,76,169,76,174,236,101,128,36,212,245,237,230,236,229,120,134,0,234,76,195,76,203,76,211,76,222,76,230,76,242,225,227,245,244,101,128,30,191,226,229,236,239,119,128,30,25,228,239,244,226,229,236,239,119,128,30,199,231,242,225,246,101,128,30,193,232,239,239,235,225,226,239,246,101,128,30,195,244,233,236,228,101,128,30,197,249,242,233,236,236,233,99,128,4,84,100,4,77,14,77,24,77,30,77,40,226,236,231,242,225,246,101,128,2,5,229,246,97,128,9,15,233,229,242,229,243,233,115,128,0,235,239,116,130,1,23,77,49,77,58,225,227,227,229,238,116,128,1,23,226,229,236,239,119,128,30,185,101,2,77,72,77,83,231,245,242,237,245,235,232,105,128,10,15,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,71,230,227,249,242,233,236,236,233,99,128,4,68,103,2,77,117,77,124,242,225,246,101,128,0,232,245,234,225,242,225,244,105,128,10,143,104,4,77,144,77,155,77,166,77,176,225,242,237,229,238,233,225,110,128,5,103,226,239,240,239,237,239,230,111,128,49,29,233,242,225,231,225,238,97,128,48,72,239,239,235,225,226,239,246,101,128,30,187,105,4,77,197,77,208,79,10,79,25,226,239,240,239,237,239,230,111,128,49,31,231,232,116,142,0,56,77,242,77,251,78,5,78,35,78,42,78,80,78,105,78,150,78,184,78,196,78,207,78,240,78,248,79,3,225,242,225,226,233,99,128,6,104,226,229,238,231,225,236,105,128,9,238,227,233,242,227,236,101,129,36,103,78,16,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,145,228,229,246,97,128,9,110,229,229,110,2,78,50,78,59,227,233,242,227,236,101,128,36,113,112,2,78,65,78,72,225,242,229,110,128,36,133,229,242,233,239,100,128,36,153,231,117,2,78,87,78,96,234,225,242,225,244,105,128,10,238,242,237,245,235,232,105,128,10,110,104,2,78,111,78,137,97,2,78,117,78,128,227,235,225,242,225,226,233,99,128,6,104,238,231,250,232,239,117,128,48,40,238,239,244,229,226,229,225,237,229,100,128,38,107,105,2,78,156,78,174,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,39,238,230,229,242,233,239,114,128,32,136,237,239,238,239,243,240,225,227,101,128,255,24,239,236,228,243,244,249,236,101,128,247,56,112,2,78,213,78,220,225,242,229,110,128,36,123,229,114,2,78,227,78,233,233,239,100,128,36,143,243,233,225,110,128,6,248,242,239,237,225,110,128,33,119,243,245,240,229,242,233,239,114,128,32,120,244,232,225,105,128,14,88,238,246,229,242,244,229,228,226,242,229,246,101,128,2,7,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,101,107,2,79,49,79,73,225,244,225,235,225,238,97,129,48,168,79,61,232,225,236,230,247,233,228,244,104,128,255,116,111,2,79,79,79,94,238,235,225,242,231,245,242,237,245,235,232,105,128,10,116,242,229,225,110,128,49,84,108,3,79,109,79,120,79,181,227,249,242,233,236,236,233,99,128,4,59,101,2,79,126,79,133,237,229,238,116,128,34,8,246,229,110,3,79,143,79,152,79,173,227,233,242,227,236,101,128,36,106,112,2,79,158,79,165,225,242,229,110,128,36,126,229,242,233,239,100,128,36,146,242,239,237,225,110,128,33,122,236,233,240,243,233,115,129,32,38,79,192,246,229,242,244,233,227,225,108,128,34,238,109,5,79,215,79,243,79,254,80,18,80,29,225,227,242,239,110,130,1,19,79,227,79,235,225,227,245,244,101,128,30,23,231,242,225,246,101,128,30,21,227,249,242,233,236,236,233,99,128,4,60,228,225,243,104,129,32,20,80,7,246,229,242,244,233,227,225,108,128,254,49,239,238,239,243,240,225,227,101,128,255,69,112,2,80,35,80,55,232,225,243,233,243,237,225,242,235,225,242,237,229,238,233,225,110,128,5,91,244,249,243,229,116,128,34,5,110,6,80,77,80,88,80,99,80,143,80,175,80,190,226,239,240,239,237,239,230,111,128,49,35,227,249,242,233,236,236,233,99,128,4,61,100,2,80,105,80,124,225,243,104,129,32,19,80,113,246,229,242,244,233,227,225,108,128,254,50,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,163,103,130,1,75,80,151,80,162,226,239,240,239,237,239,230,111,128,49,37,232,229,227,249,242,233,236,236,233,99,128,4,165,232,239,239,235,227,249,242,233,236,236,233,99,128,4,200,243,240,225,227,101,128,32,2,111,3,80,206,80,214,80,223,231,239,238,229,107,128,1,25,235,239,242,229,225,110,128,49,83,240,229,110,130,2,91,80,233,80,242,227,236,239,243,229,100,128,2,154,242,229,246,229,242,243,229,100,130,2,92,81,1,81,10,227,236,239,243,229,100,128,2,94,232,239,239,107,128,2,93,112,2,81,23,81,30,225,242,229,110,128,36,160,243,233,236,239,110,129,3,181,81,40,244,239,238,239,115,128,3,173,241,117,2,81,55,81,99,225,108,130,0,61,81,64,81,76,237,239,238,239,243,240,225,227,101,128,255,29,115,2,81,82,81,89,237,225,236,108,128,254,102,245,240,229,242,233,239,114,128,32,124,233,246,225,236,229,238,227,101,128,34,97,114,3,81,118,81,129,81,140,226,239,240,239,237,239,230,111,128,49,38,227,249,242,233,236,236,233,99,128,4,64,229,246,229,242,243,229,100,129,2,88,81,152,227,249,242,233,236,236,233,99,128,4,77,115,6,81,177,81,188,81,208,82,33,82,78,82,88,227,249,242,233,236,236,233,99,128,4,65,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,171,104,132,2,131,81,220,81,227,82,2,82,17,227,245,242,108,128,2,134,239,242,116,2,81,235,81,242,228,229,246,97,128,9,14,246,239,247,229,236,243,233,231,238,228,229,246,97,128,9,70,242,229,246,229,242,243,229,228,236,239,239,112,128,1,170,243,241,245,225,244,242,229,246,229,242,243,229,100,128,2,133,237,225,236,108,2,82,42,82,53,232,233,242,225,231,225,238,97,128,48,71,235,225,244,225,235,225,238,97,129,48,167,82,66,232,225,236,230,247,233,228,244,104,128,255,106,244,233,237,225,244,229,100,128,33,46,245,240,229,242,233,239,114,128,246,236,116,5,82,110,82,136,82,140,82,157,82,223,97,130,3,183,82,118,82,128,242,237,229,238,233,225,110,128,5,104,244,239,238,239,115,128,3,174,104,128,0,240,233,236,228,101,129,30,189,82,149,226,229,236,239,119,128,30,27,238,225,232,244,97,3,82,169,82,201,82,210,230,239,245,235,104,2,82,179,82,188,232,229,226,242,229,119,128,5,145,236,229,230,244,232,229,226,242,229,119,128,5,145,232,229,226,242,229,119,128,5,145,236,229,230,244,232,229,226,242,229,119,128,5,145,245,242,238,229,100,128,1,221,117,2,82,237,82,246,235,239,242,229,225,110,128,49,97,242,111,128,32,172,246,239,247,229,236,243,233,231,110,3,83,11,83,21,83,28,226,229,238,231,225,236,105,128,9,199,228,229,246,97,128,9,71,231,245,234,225,242,225,244,105,128,10,199,120,2,83,45,83,118,227,236,225,109,132,0,33,83,60,83,71,83,98,83,110,225,242,237,229,238,233,225,110,128,5,92,100,2,83,77,83,82,226,108,128,32,60,239,247,110,129,0,161,83,90,243,237,225,236,108,128,247,161,237,239,238,239,243,240,225,227,101,128,255,1,243,237,225,236,108,128,247,33,233,243,244,229,238,244,233,225,108,128,34,3,250,104,131,2,146,83,141,83,160,83,171,99,2,83,147,83,154,225,242,239,110,128,1,239,245,242,108,128,2,147,242,229,246,229,242,243,229,100,128,1,185,244,225,233,108,128,1,186,102,140,0,102,83,206,84,32,84,43,84,52,84,64,84,167,84,183,86,191,86,204,86,230,88,107,88,115,97,4,83,216,83,223,83,234,83,245,228,229,246,97,128,9,94,231,245,242,237,245,235,232,105,128,10,94,232,242,229,238,232,229,233,116,128,33,9,244,232,97,3,83,255,84,8,84,20,225,242,225,226,233,99,128,6,78,236,239,247,225,242,225,226,233,99,128,6,78,244,225,238,225,242,225,226,233,99,128,6,75,226,239,240,239,237,239,230,111,128,49,8,227,233,242,227,236,101,128,36,213,228,239,244,225,227,227,229,238,116,128,30,31,101,3,84,72,84,150,84,160,104,4,84,82,84,105,84,119,84,135,225,114,2,84,89,84,96,225,226,233,99,128,6,65,237,229,238,233,225,110,128,5,134,230,233,238,225,236,225,242,225,226,233,99,128,254,210,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,211,237,229,228,233,225,236,225,242,225,226,233,99,128,254,212,233,227,239,240,244,233,99,128,3,229,237,225,236,101,128,38,64,102,130,251,0,84,175,84,179,105,128,251,3,108,128,251,4,105,136,251,1,84,203,84,243,84,254,85,20,85,142,85,159,85,167,85,180,230,244,229,229,110,2,84,213,84,222,227,233,242,227,236,101,128,36,110,112,2,84,228,84,235,225,242,229,110,128,36,130,229,242,233,239,100,128,36,150,231,245,242,229,228,225,243,104,128,32,18,236,236,229,100,2,85,7,85,13,226,239,120,128,37,160,242,229,227,116,128,37,172,238,225,108,5,85,34,85,73,85,90,85,107,85,123,235,225,102,130,5,218,85,44,85,64,228,225,231,229,243,104,129,251,58,85,55,232,229,226,242,229,119,128,251,58,232,229,226,242,229,119,128,5,218,237,229,109,129,5,221,85,81,232,229,226,242,229,119,128,5,221,238,245,110,129,5,223,85,98,232,229,226,242,229,119,128,5,223,240,101,129,5,227,85,114,232,229,226,242,229,119,128,5,227,244,243,225,228,105,129,5,229,85,133,232,229,226,242,229,119,128,5,229,242,243,244,244,239,238,229,227,232,233,238,229,243,101,128,2,201,243,232,229,249,101,128,37,201,244,225,227,249,242,233,236,236,233,99,128,4,115,246,101,142,0,53,85,213,85,222,85,232,86,6,86,13,86,23,86,48,86,75,86,109,86,121,86,132,86,165,86,173,86,184,225,242,225,226,233,99,128,6,101,226,229,238,231,225,236,105,128,9,235,227,233,242,227,236,101,129,36,100,85,243,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,142,228,229,246,97,128,9,107,229,233,231,232,244,232,115,128,33,93,231,117,2,86,30,86,39,234,225,242,225,244,105,128,10,235,242,237,245,235,232,105,128,10,107,232,97,2,86,55,86,66,227,235,225,242,225,226,233,99,128,6,101,238,231,250,232,239,117,128,48,37,105,2,86,81,86,99,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,36,238,230,229,242,233,239,114,128,32,133,237,239,238,239,243,240,225,227,101,128,255,21,239,236,228,243,244,249,236,101,128,247,53,112,2,86,138,86,145,225,242,229,110,128,36,120,229,114,2,86,152,86,158,233,239,100,128,36,140,243,233,225,110,128,6,245,242,239,237,225,110,128,33,116,243,245,240,229,242,233,239,114,128,32,117,244,232,225,105,128,14,85,108,129,251,2,86,197,239,242,233,110,128,1,146,109,2,86,210,86,221,239,238,239,243,240,225,227,101,128,255,70,243,241,245,225,242,101,128,51,153,111,4,86,240,87,6,87,18,87,25,230,97,2,86,247,86,255,238,244,232,225,105,128,14,31,244,232,225,105,128,14,29,238,231,237,225,238,244,232,225,105,128,14,79,242,225,236,108,128,34,0,245,114,142,0,52,87,58,87,67,87,77,87,107,87,114,87,139,87,166,87,200,87,212,87,231,87,242,88,19,88,27,88,38,225,242,225,226,233,99,128,6,100,226,229,238,231,225,236,105,128,9,234,227,233,242,227,236,101,129,36,99,87,88,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,141,228,229,246,97,128,9,106,231,117,2,87,121,87,130,234,225,242,225,244,105,128,10,234,242,237,245,235,232,105,128,10,106,232,97,2,87,146,87,157,227,235,225,242,225,226,233,99,128,6,100,238,231,250,232,239,117,128,48,36,105,2,87,172,87,190,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,35,238,230,229,242,233,239,114,128,32,132,237,239,238,239,243,240,225,227,101,128,255,20,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,247,239,236,228,243,244,249,236,101,128,247,52,112,2,87,248,87,255,225,242,229,110,128,36,119,229,114,2,88,6,88,12,233,239,100,128,36,139,243,233,225,110,128,6,244,242,239,237,225,110,128,33,115,243,245,240,229,242,233,239,114,128,32,116,116,2,88,44,88,82,229,229,110,2,88,52,88,61,227,233,242,227,236,101,128,36,109,112,2,88,67,88,74,225,242,229,110,128,36,129,229,242,233,239,100,128,36,149,104,2,88,88,88,93,225,105,128,14,84,244,239,238,229,227,232,233,238,229,243,101,128,2,203,240,225,242,229,110,128,36,161,242,97,2,88,122,88,130,227,244,233,239,110,128,32,68,238,99,128,32,163,103,144,0,103,88,171,89,117,89,140,89,201,89,218,90,139,91,132,91,217,91,230,92,88,92,113,92,141,92,163,93,108,93,130,93,232,97,9,88,191,88,201,88,208,88,215,89,23,89,48,89,59,89,70,89,104,226,229,238,231,225,236,105,128,9,151,227,245,244,101,128,1,245,228,229,246,97,128,9,23,102,4,88,225,88,234,88,248,89,8,225,242,225,226,233,99,128,6,175,230,233,238,225,236,225,242,225,226,233,99,128,251,147,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,148,237,229,228,233,225,236,225,242,225,226,233,99,128,251,149,231,117,2,89,30,89,39,234,225,242,225,244,105,128,10,151,242,237,245,235,232,105,128,10,23,232,233,242,225,231,225,238,97,128,48,76,235,225,244,225,235,225,238,97,128,48,172,237,237,97,130,3,179,89,80,89,93,236,225,244,233,238,243,237,225,236,108,128,2,99,243,245,240,229,242,233,239,114,128,2,224,238,231,233,225,227,239,240,244,233,99,128,3,235,98,2,89,123,89,133,239,240,239,237,239,230,111,128,49,13,242,229,246,101,128,1,31,99,4,89,150,89,157,89,166,89,188,225,242,239,110,128,1,231,229,228,233,236,236,97,128,1,35,233,242,99,2,89,174,89,179,236,101,128,36,214,245,237,230,236,229,120,128,1,29,239,237,237,225,225,227,227,229,238,116,128,1,35,228,239,116,129,1,33,89,209,225,227,227,229,238,116,128,1,33,101,6,89,232,89,243,89,254,90,9,90,28,90,130,227,249,242,233,236,236,233,99,128,4,51,232,233,242,225,231,225,238,97,128,48,82,235,225,244,225,235,225,238,97,128,48,178,239,237,229,244,242,233,227,225,236,236,249,229,241,245,225,108,128,34,81,114,3,90,36,90,85,90,95,229,243,104,3,90,46,90,61,90,70,225,227,227,229,238,244,232,229,226,242,229,119,128,5,156,232,229,226,242,229,119,128,5,243,237,245,241,228,225,237,232,229,226,242,229,119,128,5,157,237,225,238,228,226,236,115,128,0,223,243,232,225,249,233,109,2,90,106,90,121,225,227,227,229,238,244,232,229,226,242,229,119,128,5,158,232,229,226,242,229,119,128,5,244,244,225,237,225,242,107,128,48,19,104,5,90,151,91,28,91,91,91,116,91,122,97,4,90,161,90,171,90,194,90,219,226,229,238,231,225,236,105,128,9,152,100,2,90,177,90,188,225,242,237,229,238,233,225,110,128,5,114,229,246,97,128,9,24,231,117,2,90,201,90,210,234,225,242,225,244,105,128,10,152,242,237,245,235,232,105,128,10,24,233,110,4,90,230,90,239,90,253,91,13,225,242,225,226,233,99,128,6,58,230,233,238,225,236,225,242,225,226,233,99,128,254,206,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,207,237,229,228,233,225,236,225,242,225,226,233,99,128,254,208,101,3,91,36,91,57,91,74,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,149,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,147,245,240,244,245,242,238,227,249,242,233,236,236,233,99,128,4,145,232,97,2,91,98,91,105,228,229,246,97,128,9,90,231,245,242,237,245,235,232,105,128,10,90,239,239,107,128,2,96,250,243,241,245,225,242,101,128,51,147,105,3,91,140,91,151,91,162,232,233,242,225,231,225,238,97,128,48,78,235,225,244,225,235,225,238,97,128,48,174,109,2,91,168,91,179,225,242,237,229,238,233,225,110,128,5,99,229,108,130,5,210,91,188,91,208,228,225,231,229,243,104,129,251,50,91,199,232,229,226,242,229,119,128,251,50,232,229,226,242,229,119,128,5,210,234,229,227,249,242,233,236,236,233,99,128,4,83,236,239,244,244,225,108,2,91,241,92,2,233,238,246,229,242,244,229,228,243,244,242,239,235,101,128,1,190,243,244,239,112,132,2,148,92,17,92,28,92,34,92,66,233,238,246,229,242,244,229,100,128,2,150,237,239,100,128,2,192,242,229,246,229,242,243,229,100,130,2,149,92,49,92,55,237,239,100,128,2,193,243,245,240,229,242,233,239,114,128,2,228,243,244,242,239,235,101,129,2,161,92,77,242,229,246,229,242,243,229,100,128,2,162,109,2,92,94,92,102,225,227,242,239,110,128,30,33,239,238,239,243,240,225,227,101,128,255,71,111,2,92,119,92,130,232,233,242,225,231,225,238,97,128,48,84,235,225,244,225,235,225,238,97,128,48,180,240,97,2,92,148,92,154,242,229,110,128,36,162,243,241,245,225,242,101,128,51,172,114,2,92,169,93,10,97,2,92,175,92,183,228,233,229,238,116,128,34,7,246,101,134,0,96,92,200,92,211,92,228,92,235,92,244,93,0,226,229,236,239,247,227,237,98,128,3,22,99,2,92,217,92,222,237,98,128,3,0,239,237,98,128,3,0,228,229,246,97,128,9,83,236,239,247,237,239,100,128,2,206,237,239,238,239,243,240,225,227,101,128,255,64,244,239,238,229,227,237,98,128,3,64,229,225,244,229,114,132,0,62,93,26,93,45,93,57,93,100,229,241,245,225,108,129,34,101,93,36,239,242,236,229,243,115,128,34,219,237,239,238,239,243,240,225,227,101,128,255,30,111,2,93,63,93,89,114,2,93,69,93,82,229,241,245,233,246,225,236,229,238,116,128,34,115,236,229,243,115,128,34,119,246,229,242,229,241,245,225,108,128,34,103,243,237,225,236,108,128,254,101,115,2,93,114,93,122,227,242,233,240,116,128,2,97,244,242,239,235,101,128,1,229,117,4,93,140,93,151,93,208,93,219,232,233,242,225,231,225,238,97,128,48,80,233,108,2,93,158,93,183,236,229,237,239,116,2,93,168,93,175,236,229,230,116,128,0,171,242,233,231,232,116,128,0,187,243,233,238,231,108,2,93,193,93,200,236,229,230,116,128,32,57,242,233,231,232,116,128,32,58,235,225,244,225,235,225,238,97,128,48,176,242,225,237,245,243,241,245,225,242,101,128,51,24,249,243,241,245,225,242,101,128,51,201,104,144,0,104,94,22,96,164,96,199,96,236,97,20,98,164,98,184,99,149,99,161,99,173,100,241,100,249,101,4,101,13,101,93,101,97,97,13,94,50,94,89,94,99,94,129,94,154,94,232,94,244,95,13,95,28,95,57,95,70,95,128,95,137,97,2,94,56,94,75,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,169,236,244,239,238,229,225,242,225,226,233,99,128,6,193,226,229,238,231,225,236,105,128,9,185,228,101,2,94,106,94,124,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,179,246,97,128,9,57,231,117,2,94,136,94,145,234,225,242,225,244,105,128,10,185,242,237,245,235,232,105,128,10,57,104,4,94,164,94,173,94,187,94,217,225,242,225,226,233,99,128,6,45,230,233,238,225,236,225,242,225,226,233,99,128,254,162,105,2,94,193,94,208,238,233,244,233,225,236,225,242,225,226,233,99,128,254,163,242,225,231,225,238,97,128,48,111,237,229,228,233,225,236,225,242,225,226,233,99,128,254,164,233,244,245,243,241,245,225,242,101,128,51,42,235,225,244,225,235,225,238,97,129,48,207,95,1,232,225,236,230,247,233,228,244,104,128,255,138,236,225,238,244,231,245,242,237,245,235,232,105,128,10,77,237,250,97,2,95,36,95,45,225,242,225,226,233,99,128,6,33,236,239,247,225,242,225,226,233,99,128,6,33,238,231,245,236,230,233,236,236,229,114,128,49,100,114,2,95,76,95,92,228,243,233,231,238,227,249,242,233,236,236,233,99,128,4,74,240,239,239,110,2,95,101,95,114,236,229,230,244,226,225,242,226,245,112,128,33,188,242,233,231,232,244,226,225,242,226,245,112,128,33,192,243,241,245,225,242,101,128,51,202,244,225,102,3,95,147,95,239,96,74,240,225,244,225,104,134,5,178,95,167,95,172,95,186,95,195,95,210,95,226,177,54,128,5,178,50,2,95,178,95,182,51,128,5,178,102,128,5,178,232,229,226,242,229,119,128,5,178,238,225,242,242,239,247,232,229,226,242,229,119,128,5,178,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,178,247,233,228,229,232,229,226,242,229,119,128,5,178,241,225,237,225,244,115,135,5,179,96,6,96,11,96,16,96,21,96,30,96,45,96,61,177,98,128,5,179,178,56,128,5,179,179,52,128,5,179,232,229,226,242,229,119,128,5,179,238,225,242,242,239,247,232,229,226,242,229,119,128,5,179,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,179,247,233,228,229,232,229,226,242,229,119,128,5,179,243,229,231,239,108,135,5,177,96,96,96,101,96,106,96,111,96,120,96,135,96,151,177,55,128,5,177,178,52,128,5,177,179,48,128,5,177,232,229,226,242,229,119,128,5,177,238,225,242,242,239,247,232,229,226,242,229,119,128,5,177,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,177,247,233,228,229,232,229,226,242,229,119,128,5,177,98,3,96,172,96,177,96,187,225,114,128,1,39,239,240,239,237,239,230,111,128,49,15,242,229,246,229,226,229,236,239,119,128,30,43,99,2,96,205,96,214,229,228,233,236,236,97,128,30,41,233,242,99,2,96,222,96,227,236,101,128,36,215,245,237,230,236,229,120,128,1,37,100,2,96,242,96,252,233,229,242,229,243,233,115,128,30,39,239,116,2,97,3,97,12,225,227,227,229,238,116,128,30,35,226,229,236,239,119,128,30,37,101,136,5,212,97,40,97,73,97,93,98,66,98,82,98,127,98,136,98,149,225,242,116,129,38,101,97,48,243,245,233,116,2,97,57,97,65,226,236,225,227,107,128,38,101,247,232,233,244,101,128,38,97,228,225,231,229,243,104,129,251,52,97,84,232,229,226,242,229,119,128,251,52,104,6,97,107,97,135,97,143,97,193,97,239,98,32,97,2,97,113,97,127,236,244,239,238,229,225,242,225,226,233,99,128,6,193,242,225,226,233,99,128,6,71,229,226,242,229,119,128,5,212,230,233,238,225,236,97,2,97,154,97,185,236,116,2,97,161,97,173,239,238,229,225,242,225,226,233,99,128,251,167,244,247,239,225,242,225,226,233,99,128,254,234,242,225,226,233,99,128,254,234,232,225,237,250,225,225,226,239,246,101,2,97,208,97,222,230,233,238,225,236,225,242,225,226,233,99,128,251,165,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,251,164,105,2,97,245,98,23,238,233,244,233,225,236,97,2,98,1,98,15,236,244,239,238,229,225,242,225,226,233,99,128,251,168,242,225,226,233,99,128,254,235,242,225,231,225,238,97,128,48,120,237,229,228,233,225,236,97,2,98,44,98,58,236,244,239,238,229,225,242,225,226,233,99,128,251,169,242,225,226,233,99,128,254,236,233,243,229,233,229,242,225,243,241,245,225,242,101,128,51,123,107,2,98,88,98,112,225,244,225,235,225,238,97,129,48,216,98,100,232,225,236,230,247,233,228,244,104,128,255,141,245,244,225,225,242,245,243,241,245,225,242,101,128,51,54,238,231,232,239,239,107,128,2,103,242,245,244,245,243,241,245,225,242,101,128,51,57,116,129,5,215,98,155,232,229,226,242,229,119,128,5,215,232,239,239,107,129,2,102,98,173,243,245,240,229,242,233,239,114,128,2,177,105,4,98,194,99,23,99,34,99,59,229,245,104,4,98,206,98,241,99,0,99,9,97,2,98,212,98,227,227,233,242,227,236,229,235,239,242,229,225,110,128,50,123,240,225,242,229,238,235,239,242,229,225,110,128,50,27,227,233,242,227,236,229,235,239,242,229,225,110,128,50,109,235,239,242,229,225,110,128,49,78,240,225,242,229,238,235,239,242,229,225,110,128,50,13,232,233,242,225,231,225,238,97,128,48,114,235,225,244,225,235,225,238,97,129,48,210,99,47,232,225,236,230,247,233,228,244,104,128,255,139,242,233,113,134,5,180,99,77,99,82,99,96,99,105,99,120,99,136,177,52,128,5,180,50,2,99,88,99,92,49,128,5,180,100,128,5,180,232,229,226,242,229,119,128,5,180,238,225,242,242,239,247,232,229,226,242,229,119,128,5,180,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,180,247,233,228,229,232,229,226,242,229,119,128,5,180,236,233,238,229,226,229,236,239,119,128,30,150,237,239,238,239,243,240,225,227,101,128,255,72,111,9,99,193,99,204,99,228,99,253,100,85,100,98,100,184,100,224,100,235,225,242,237,229,238,233,225,110,128,5,112,232,105,2,99,211,99,219,240,244,232,225,105,128,14,43,242,225,231,225,238,97,128,48,123,235,225,244,225,235,225,238,97,129,48,219,99,241,232,225,236,230,247,233,228,244,104,128,255,142,236,225,109,135,5,185,100,17,100,22,100,27,100,32,100,41,100,56,100,72,177,57,128,5,185,178,54,128,5,185,179,50,128,5,185,232,229,226,242,229,119,128,5,185,238,225,242,242,239,247,232,229,226,242,229,119,128,5,185,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,185,247,233,228,229,232,229,226,242,229,119,128,5,185,238,239,235,232,245,235,244,232,225,105,128,14,46,111,2,100,104,100,174,107,4,100,114,100,126,100,132,100,154,225,226,239,246,229,227,239,237,98,128,3,9,227,237,98,128,3,9,240,225,236,225,244,225,236,233,250,229,228,226,229,236,239,247,227,237,98,128,3,33,242,229,244,242,239,230,236,229,248,226,229,236,239,247,227,237,98,128,3,34,238,243,241,245,225,242,101,128,51,66,114,2,100,190,100,217,105,2,100,196,100,205,227,239,240,244,233,99,128,3,233,250,239,238,244,225,236,226,225,114,128,32,21,238,227,237,98,128,3,27,244,243,240,242,233,238,231,115,128,38,104,245,243,101,128,35,2,240,225,242,229,110,128,36,163,243,245,240,229,242,233,239,114,128,2,176,244,245,242,238,229,100,128,2,101,117,4,101,23,101,34,101,47,101,72,232,233,242,225,231,225,238,97,128,48,117,233,233,244,239,243,241,245,225,242,101,128,51,51,235,225,244,225,235,225,238,97,129,48,213,101,60,232,225,236,230,247,233,228,244,104,128,255,140,238,231,225,242,245,237,236,225,245,116,129,2,221,101,87,227,237,98,128,3,11,118,128,1,149,249,240,232,229,110,132,0,45,101,113,101,124,101,136,101,159,233,238,230,229,242,233,239,114,128,246,229,237,239,238,239,243,240,225,227,101,128,255,13,115,2,101,142,101,149,237,225,236,108,128,254,99,245,240,229,242,233,239,114,128,246,230,244,247,111,128,32,16,105,149,0,105,101,211,101,234,102,12,102,59,105,197,106,61,106,98,106,125,107,31,107,35,107,73,107,95,107,179,108,88,108,163,108,171,108,184,109,15,109,72,109,100,109,144,225,99,2,101,218,101,224,245,244,101,128,0,237,249,242,233,236,236,233,99,128,4,79,98,3,101,242,101,251,102,5,229,238,231,225,236,105,128,9,135,239,240,239,237,239,230,111,128,49,39,242,229,246,101,128,1,45,99,3,102,20,102,27,102,49,225,242,239,110,128,1,208,233,242,99,2,102,35,102,40,236,101,128,36,216,245,237,230,236,229,120,128,0,238,249,242,233,236,236,233,99,128,4,86,100,4,102,69,102,79,105,154,105,187,226,236,231,242,225,246,101,128,2,9,101,2,102,85,105,149,239,231,242,225,240,104,7,102,106,102,120,102,133,105,62,105,93,105,106,105,118,229,225,242,244,232,227,233,242,227,236,101,128,50,143,230,233,242,229,227,233,242,227,236,101,128,50,139,233,99,14,102,164,102,180,103,23,103,77,103,143,103,172,103,188,103,245,104,38,104,50,104,77,104,144,105,26,105,55,225,236,236,233,225,238,227,229,240,225,242,229,110,128,50,63,99,4,102,190,102,201,102,215,102,222,225,236,236,240,225,242,229,110,128,50,58,229,238,244,242,229,227,233,242,227,236,101,128,50,165,236,239,243,101,128,48,6,111,3,102,230,102,245,103,9,237,237,97,129,48,1,102,238,236,229,230,116,128,255,100,238,231,242,225,244,245,236,225,244,233,239,238,240,225,242,229,110,128,50,55,242,242,229,227,244,227,233,242,227,236,101,128,50,163,101,3,103,31,103,43,103,60,225,242,244,232,240,225,242,229,110,128,50,47,238,244,229,242,240,242,233,243,229,240,225,242,229,110,128,50,61,248,227,229,236,236,229,238,244,227,233,242,227,236,101,128,50,157,102,2,103,83,103,98,229,243,244,233,246,225,236,240,225,242,229,110,128,50,64,105,2,103,104,103,133,238,225,238,227,233,225,108,2,103,116,103,125,227,233,242,227,236,101,128,50,150,240,225,242,229,110,128,50,54,242,229,240,225,242,229,110,128,50,43,104,2,103,149,103,160,225,246,229,240,225,242,229,110,128,50,50,233,231,232,227,233,242,227,236,101,128,50,164,233,244,229,242,225,244,233,239,238,237,225,242,107,128,48,5,108,3,103,196,103,222,103,234,225,226,239,114,2,103,205,103,214,227,233,242,227,236,101,128,50,152,240,225,242,229,110,128,50,56,229,230,244,227,233,242,227,236,101,128,50,167,239,247,227,233,242,227,236,101,128,50,166,109,2,103,251,104,27,101,2,104,1,104,16,228,233,227,233,238,229,227,233,242,227,236,101,128,50,169,244,225,236,240,225,242,229,110,128,50,46,239,239,238,240,225,242,229,110,128,50,42,238,225,237,229,240,225,242,229,110,128,50,52,112,2,104,56,104,64,229,242,233,239,100,128,48,2,242,233,238,244,227,233,242,227,236,101,128,50,158,114,2,104,83,104,131,101,3,104,91,104,102,104,117,225,227,232,240,225,242,229,110,128,50,67,240,242,229,243,229,238,244,240,225,242,229,110,128,50,57,243,239,245,242,227,229,240,225,242,229,110,128,50,62,233,231,232,244,227,233,242,227,236,101,128,50,168,115,5,104,156,104,185,104,199,104,224,104,252,101,2,104,162,104,175,227,242,229,244,227,233,242,227,236,101,128,50,153,236,230,240,225,242,229,110,128,50,66,239,227,233,229,244,249,240,225,242,229,110,128,50,51,112,2,104,205,104,211,225,227,101,128,48,0,229,227,233,225,236,240,225,242,229,110,128,50,53,116,2,104,230,104,241,239,227,235,240,225,242,229,110,128,50,49,245,228,249,240,225,242,229,110,128,50,59,117,2,105,2,105,11,238,240,225,242,229,110,128,50,48,240,229,242,246,233,243,229,240,225,242,229,110,128,50,60,119,2,105,32,105,44,225,244,229,242,240,225,242,229,110,128,50,44,239,239,228,240,225,242,229,110,128,50,45,250,229,242,111,128,48,7,109,2,105,68,105,81,229,244,225,236,227,233,242,227,236,101,128,50,142,239,239,238,227,233,242,227,236,101,128,50,138,238,225,237,229,227,233,242,227,236,101,128,50,148,243,245,238,227,233,242,227,236,101,128,50,144,119,2,105,124,105,137,225,244,229,242,227,233,242,227,236,101,128,50,140,239,239,228,227,233,242,227,236,101,128,50,141,246,97,128,9,7,233,229,242,229,243,233,115,130,0,239,105,168,105,176,225,227,245,244,101,128,30,47,227,249,242,233,236,236,233,99,128,4,229,239,244,226,229,236,239,119,128,30,203,101,3,105,205,105,221,105,232,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,215,227,249,242,233,236,236,233,99,128,4,53,245,238,103,4,105,244,106,23,106,38,106,47,97,2,105,250,106,9,227,233,242,227,236,229,235,239,242,229,225,110,128,50,117,240,225,242,229,238,235,239,242,229,225,110,128,50,21,227,233,242,227,236,229,235,239,242,229,225,110,128,50,103,235,239,242,229,225,110,128,49,71,240,225,242,229,238,235,239,242,229,225,110,128,50,7,103,2,106,67,106,74,242,225,246,101,128,0,236,117,2,106,80,106,89,234,225,242,225,244,105,128,10,135,242,237,245,235,232,105,128,10,7,104,2,106,104,106,114,233,242,225,231,225,238,97,128,48,68,239,239,235,225,226,239,246,101,128,30,201,105,8,106,143,106,153,106,164,106,171,106,196,106,212,106,227,106,243,226,229,238,231,225,236,105,128,9,136,227,249,242,233,236,236,233,99,128,4,56,228,229,246,97,128,9,8,231,117,2,106,178,106,187,234,225,242,225,244,105,128,10,136,242,237,245,235,232,105,128,10,8,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,64,238,246,229,242,244,229,228,226,242,229,246,101,128,2,11,243,232,239,242,244,227,249,242,233,236,236,233,99,128,4,57,246,239,247,229,236,243,233,231,110,3,107,3,107,13,107,20,226,229,238,231,225,236,105,128,9,192,228,229,246,97,128,9,64,231,245,234,225,242,225,244,105,128,10,192,106,128,1,51,107,2,107,41,107,65,225,244,225,235,225,238,97,129,48,164,107,53,232,225,236,230,247,233,228,244,104,128,255,114,239,242,229,225,110,128,49,99,108,2,107,79,107,84,228,101,128,2,220,245,249,232,229,226,242,229,119,128,5,172,109,2,107,101,107,168,97,3,107,109,107,129,107,154,227,242,239,110,129,1,43,107,118,227,249,242,233,236,236,233,99,128,4,227,231,229,239,242,225,240,240,242,239,248,233,237,225,244,229,236,249,229,241,245,225,108,128,34,83,244,242,225,231,245,242,237,245,235,232,105,128,10,63,239,238,239,243,240,225,227,101,128,255,73,110,5,107,191,107,201,107,210,107,222,108,50,227,242,229,237,229,238,116,128,34,6,230,233,238,233,244,121,128,34,30,233,225,242,237,229,238,233,225,110,128,5,107,116,2,107,228,108,40,101,2,107,234,108,29,231,242,225,108,131,34,43,107,247,108,9,108,14,98,2,107,253,108,5,239,244,244,239,109,128,35,33,116,128,35,33,229,120,128,248,245,116,2,108,20,108,25,239,112,128,35,32,112,128,35,32,242,243,229,227,244,233,239,110,128,34,41,233,243,241,245,225,242,101,128,51,5,118,3,108,58,108,67,108,76,226,245,236,236,229,116,128,37,216,227,233,242,227,236,101,128,37,217,243,237,233,236,229,230,225,227,101,128,38,59,111,3,108,96,108,107,108,115,227,249,242,233,236,236,233,99,128,4,81,231,239,238,229,107,128,1,47,244,97,131,3,185,108,126,108,147,108,155,228,233,229,242,229,243,233,115,129,3,202,108,139,244,239,238,239,115,128,3,144,236,225,244,233,110,128,2,105,244,239,238,239,115,128,3,175,240,225,242,229,110,128,36,164,242,233,231,245,242,237,245,235,232,105,128,10,114,115,4,108,194,108,239,108,253,109,5,237,225,236,108,2,108,203,108,214,232,233,242,225,231,225,238,97,128,48,67,235,225,244,225,235,225,238,97,129,48,163,108,227,232,225,236,230,247,233,228,244,104,128,255,104,243,232,225,242,226,229,238,231,225,236,105,128,9,250,244,242,239,235,101,128,2,104,245,240,229,242,233,239,114,128,246,237,116,2,109,21,109,55,229,242,225,244,233,239,110,2,109,33,109,44,232,233,242,225,231,225,238,97,128,48,157,235,225,244,225,235,225,238,97,128,48,253,233,236,228,101,129,1,41,109,64,226,229,236,239,119,128,30,45,117,2,109,78,109,89,226,239,240,239,237,239,230,111,128,49,41,227,249,242,233,236,236,233,99,128,4,78,246,239,247,229,236,243,233,231,110,3,109,116,109,126,109,133,226,229,238,231,225,236,105,128,9,191,228,229,246,97,128,9,63,231,245,234,225,242,225,244,105,128,10,191,250,232,233,244,243,97,2,109,155,109,166,227,249,242,233,236,236,233,99,128,4,117,228,226,236,231,242,225,246,229,227,249,242,233,236,236,233,99,128,4,119,106,138,0,106,109,209,110,16,110,27,110,77,110,93,110,206,111,19,111,24,111,36,111,44,97,4,109,219,109,230,109,240,109,247,225,242,237,229,238,233,225,110,128,5,113,226,229,238,231,225,236,105,128,9,156,228,229,246,97,128,9,28,231,117,2,109,254,110,7,234,225,242,225,244,105,128,10,156,242,237,245,235,232,105,128,10,28,226,239,240,239,237,239,230,111,128,49,16,99,3,110,35,110,42,110,64,225,242,239,110,128,1,240,233,242,99,2,110,50,110,55,236,101,128,36,217,245,237,230,236,229,120,128,1,53,242,239,243,243,229,228,244,225,233,108,128,2,157,228,239,244,236,229,243,243,243,244,242,239,235,101,128,2,95,101,3,110,101,110,112,110,177,227,249,242,233,236,236,233,99,128,4,88,229,109,4,110,123,110,132,110,146,110,162,225,242,225,226,233,99,128,6,44,230,233,238,225,236,225,242,225,226,233,99,128,254,158,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,159,237,229,228,233,225,236,225,242,225,226,233,99,128,254,160,104,2,110,183,110,192,225,242,225,226,233,99,128,6,152,230,233,238,225,236,225,242,225,226,233,99,128,251,139,104,2,110,212,111,6,97,3,110,220,110,230,110,237,226,229,238,231,225,236,105,128,9,157,228,229,246,97,128,9,29,231,117,2,110,244,110,253,234,225,242,225,244,105,128,10,157,242,237,245,235,232,105,128,10,29,229,232,225,242,237,229,238,233,225,110,128,5,123,233,115,128,48,4,237,239,238,239,243,240,225,227,101,128,255,74,240,225,242,229,110,128,36,165,243,245,240,229,242,233,239,114,128,2,178,107,146,0,107,111,95,113,184,113,195,114,1,114,12,114,102,114,116,115,224,116,164,116,177,116,203,116,252,117,134,117,156,117,169,117,192,117,234,117,244,97,12,111,121,111,153,111,175,111,205,112,63,112,88,112,118,112,143,112,249,113,7,113,130,113,159],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+30720);allocate([98,2,111,127,111,144,225,243,232,235,233,242,227,249,242,233,236,236,233,99,128,4,161,229,238,231,225,236,105,128,9,149,99,2,111,159,111,165,245,244,101,128,30,49,249,242,233,236,236,233,99,128,4,58,228,101,2,111,182,111,200,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,155,246,97,128,9,21,102,135,5,219,111,223,111,232,111,252,112,10,112,19,112,35,112,50,225,242,225,226,233,99,128,6,67,228,225,231,229,243,104,129,251,59,111,243,232,229,226,242,229,119,128,251,59,230,233,238,225,236,225,242,225,226,233,99,128,254,218,232,229,226,242,229,119,128,5,219,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,219,237,229,228,233,225,236,225,242,225,226,233,99,128,254,220,242,225,230,229,232,229,226,242,229,119,128,251,77,231,117,2,112,70,112,79,234,225,242,225,244,105,128,10,149,242,237,245,235,232,105,128,10,21,104,2,112,94,112,104,233,242,225,231,225,238,97,128,48,75,239,239,235,227,249,242,233,236,236,233,99,128,4,196,235,225,244,225,235,225,238,97,129,48,171,112,131,232,225,236,230,247,233,228,244,104,128,255,118,112,2,112,149,112,170,240,97,129,3,186,112,156,243,249,237,226,239,236,231,242,229,229,107,128,3,240,249,229,239,245,110,3,112,182,112,196,112,230,237,233,229,245,237,235,239,242,229,225,110,128,49,113,112,2,112,202,112,217,232,233,229,245,240,232,235,239,242,229,225,110,128,49,132,233,229,245,240,235,239,242,229,225,110,128,49,120,243,243,225,238,231,240,233,229,245,240,235,239,242,229,225,110,128,49,121,242,239,242,233,233,243,241,245,225,242,101,128,51,13,115,5,113,19,113,63,113,78,113,86,113,114,232,233,228,225,225,245,244,111,2,113,32,113,41,225,242,225,226,233,99,128,6,64,238,239,243,233,228,229,226,229,225,242,233,238,231,225,242,225,226,233,99,128,6,64,237,225,236,236,235,225,244,225,235,225,238,97,128,48,245,241,245,225,242,101,128,51,132,242,97,2,113,93,113,102,225,242,225,226,233,99,128,6,80,244,225,238,225,242,225,226,233,99,128,6,77,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,159,244,225,232,233,242,225,240,242,239,236,239,238,231,237,225,242,235,232,225,236,230,247,233,228,244,104,128,255,112,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,157,226,239,240,239,237,239,230,111,128,49,14,99,4,113,205,113,227,113,236,113,244,97,2,113,211,113,221,236,243,241,245,225,242,101,128,51,137,242,239,110,128,1,233,229,228,233,236,236,97,128,1,55,233,242,227,236,101,128,36,218,239,237,237,225,225,227,227,229,238,116,128,1,55,228,239,244,226,229,236,239,119,128,30,51,101,4,114,22,114,49,114,74,114,86,104,2,114,28,114,39,225,242,237,229,238,233,225,110,128,5,132,233,242,225,231,225,238,97,128,48,81,235,225,244,225,235,225,238,97,129,48,177,114,62,232,225,236,230,247,233,228,244,104,128,255,121,238,225,242,237,229,238,233,225,110,128,5,111,243,237,225,236,236,235,225,244,225,235,225,238,97,128,48,246,231,242,229,229,238,236,225,238,228,233,99,128,1,56,104,6,114,130,115,3,115,14,115,39,115,126,115,214,97,5,114,142,114,152,114,163,114,170,114,195,226,229,238,231,225,236,105,128,9,150,227,249,242,233,236,236,233,99,128,4,69,228,229,246,97,128,9,22,231,117,2,114,177,114,186,234,225,242,225,244,105,128,10,150,242,237,245,235,232,105,128,10,22,104,4,114,205,114,214,114,228,114,244,225,242,225,226,233,99,128,6,46,230,233,238,225,236,225,242,225,226,233,99,128,254,166,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,167,237,229,228,233,225,236,225,242,225,226,233,99,128,254,168,229,233,227,239,240,244,233,99,128,3,231,232,97,2,115,21,115,28,228,229,246,97,128,9,89,231,245,242,237,245,235,232,105,128,10,89,233,229,245,235,104,4,115,53,115,88,115,103,115,112,97,2,115,59,115,74,227,233,242,227,236,229,235,239,242,229,225,110,128,50,120,240,225,242,229,238,235,239,242,229,225,110,128,50,24,227,233,242,227,236,229,235,239,242,229,225,110,128,50,106,235,239,242,229,225,110,128,49,75,240,225,242,229,238,235,239,242,229,225,110,128,50,10,111,4,115,136,115,185,115,195,115,200,235,104,4,115,147,115,156,115,165,115,175,225,233,244,232,225,105,128,14,2,239,238,244,232,225,105,128,14,5,245,225,244,244,232,225,105,128,14,3,247,225,233,244,232,225,105,128,14,4,237,245,244,244,232,225,105,128,14,91,239,107,128,1,153,242,225,235,232,225,238,231,244,232,225,105,128,14,6,250,243,241,245,225,242,101,128,51,145,105,4,115,234,115,245,116,14,116,63,232,233,242,225,231,225,238,97,128,48,77,235,225,244,225,235,225,238,97,129,48,173,116,2,232,225,236,230,247,233,228,244,104,128,255,119,242,111,3,116,23,116,38,116,54,231,245,242,225,237,245,243,241,245,225,242,101,128,51,21,237,229,229,244,239,242,245,243,241,245,225,242,101,128,51,22,243,241,245,225,242,101,128,51,20,249,229,239,107,5,116,78,116,113,116,128,116,137,116,151,97,2,116,84,116,99,227,233,242,227,236,229,235,239,242,229,225,110,128,50,110,240,225,242,229,238,235,239,242,229,225,110,128,50,14,227,233,242,227,236,229,235,239,242,229,225,110,128,50,96,235,239,242,229,225,110,128,49,49,240,225,242,229,238,235,239,242,229,225,110,128,50,0,243,233,239,243,235,239,242,229,225,110,128,49,51,234,229,227,249,242,233,236,236,233,99,128,4,92,108,2,116,183,116,194,233,238,229,226,229,236,239,119,128,30,53,243,241,245,225,242,101,128,51,152,109,3,116,211,116,225,116,236,227,245,226,229,228,243,241,245,225,242,101,128,51,166,239,238,239,243,240,225,227,101,128,255,75,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,162,111,5,117,8,117,34,117,72,117,84,117,98,104,2,117,14,117,24,233,242,225,231,225,238,97,128,48,83,237,243,241,245,225,242,101,128,51,192,235,97,2,117,41,117,49,233,244,232,225,105,128,14,1,244,225,235,225,238,97,129,48,179,117,60,232,225,236,230,247,233,228,244,104,128,255,122,239,240,239,243,241,245,225,242,101,128,51,30,240,240,225,227,249,242,233,236,236,233,99,128,4,129,114,2,117,104,117,124,229,225,238,243,244,225,238,228,225,242,228,243,249,237,226,239,108,128,50,127,239,238,233,243,227,237,98,128,3,67,240,97,2,117,141,117,147,242,229,110,128,36,166,243,241,245,225,242,101,128,51,170,243,233,227,249,242,233,236,236,233,99,128,4,111,116,2,117,175,117,184,243,241,245,225,242,101,128,51,207,245,242,238,229,100,128,2,158,117,2,117,198,117,209,232,233,242,225,231,225,238,97,128,48,79,235,225,244,225,235,225,238,97,129,48,175,117,222,232,225,236,230,247,233,228,244,104,128,255,120,246,243,241,245,225,242,101,128,51,184,247,243,241,245,225,242,101,128,51,190,108,146,0,108,118,38,120,65,120,94,120,160,120,198,121,94,121,103,121,119,121,143,121,161,122,23,122,64,122,199,122,207,122,240,122,249,123,1,123,63,97,7,118,54,118,64,118,71,118,78,118,103,118,119,120,53,226,229,238,231,225,236,105,128,9,178,227,245,244,101,128,1,58,228,229,246,97,128,9,50,231,117,2,118,85,118,94,234,225,242,225,244,105,128,10,178,242,237,245,235,232,105,128,10,50,235,235,232,225,238,231,249,225,239,244,232,225,105,128,14,69,109,10,118,141,119,80,119,97,119,135,119,149,119,168,119,184,119,204,119,224,119,247,97,2,118,147,119,72,236,229,102,4,118,159,118,173,119,9,119,26,230,233,238,225,236,225,242,225,226,233,99,128,254,252,232,225,237,250,97,2,118,183,118,224,225,226,239,246,101,2,118,193,118,207,230,233,238,225,236,225,242,225,226,233,99,128,254,248,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,247,226,229,236,239,119,2,118,234,118,248,230,233,238,225,236,225,242,225,226,233,99,128,254,250,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,249,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,251,237,225,228,228,225,225,226,239,246,101,2,119,41,119,55,230,233,238,225,236,225,242,225,226,233,99,128,254,246,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,245,242,225,226,233,99,128,6,68,226,228,97,129,3,187,119,88,243,244,242,239,235,101,128,1,155,229,100,130,5,220,119,106,119,126,228,225,231,229,243,104,129,251,60,119,117,232,229,226,242,229,119,128,251,60,232,229,226,242,229,119,128,5,220,230,233,238,225,236,225,242,225,226,233,99,128,254,222,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,202,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,223,234,229,229,237,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,201,235,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,203,236,225,237,232,229,232,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,253,242,237,101,2,119,254,120,11,228,233,225,236,225,242,225,226,233,99,128,254,224,229,109,2,120,18,120,37,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,253,136,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,204,242,231,229,227,233,242,227,236,101,128,37,239,98,3,120,73,120,78,120,84,225,114,128,1,154,229,236,116,128,2,108,239,240,239,237,239,230,111,128,49,12,99,4,120,104,120,111,120,120,120,147,225,242,239,110,128,1,62,229,228,233,236,236,97,128,1,60,233,242,99,2,120,128,120,133,236,101,128,36,219,245,237,230,236,229,248,226,229,236,239,119,128,30,61,239,237,237,225,225,227,227,229,238,116,128,1,60,228,239,116,130,1,64,120,170,120,179,225,227,227,229,238,116,128,1,64,226,229,236,239,119,129,30,55,120,189,237,225,227,242,239,110,128,30,57,101,3,120,206,120,244,121,89,230,116,2,120,213,120,229,225,238,231,236,229,225,226,239,246,229,227,237,98,128,3,26,244,225,227,235,226,229,236,239,247,227,237,98,128,3,24,243,115,132,0,60,121,1,121,23,121,35,121,81,229,241,245,225,108,129,34,100,121,11,239,242,231,242,229,225,244,229,114,128,34,218,237,239,238,239,243,240,225,227,101,128,255,28,111,2,121,41,121,70,114,2,121,47,121,60,229,241,245,233,246,225,236,229,238,116,128,34,114,231,242,229,225,244,229,114,128,34,118,246,229,242,229,241,245,225,108,128,34,102,243,237,225,236,108,128,254,100,250,104,128,2,110,230,226,236,239,227,107,128,37,140,232,239,239,235,242,229,244,242,239,230,236,229,120,128,2,109,105,2,121,125,121,130,242,97,128,32,164,247,238,225,242,237,229,238,233,225,110,128,5,108,106,129,1,201,121,149,229,227,249,242,233,236,236,233,99,128,4,89,108,132,246,192,121,173,121,197,121,208,121,217,97,2,121,179,121,186,228,229,246,97,128,9,51,231,245,234,225,242,225,244,105,128,10,179,233,238,229,226,229,236,239,119,128,30,59,236,225,228,229,246,97,128,9,52,246,239,227,225,236,233,99,3,121,231,121,241,121,248,226,229,238,231,225,236,105,128,9,225,228,229,246,97,128,9,97,246,239,247,229,236,243,233,231,110,2,122,6,122,16,226,229,238,231,225,236,105,128,9,227,228,229,246,97,128,9,99,109,3,122,31,122,44,122,55,233,228,228,236,229,244,233,236,228,101,128,2,107,239,238,239,243,240,225,227,101,128,255,76,243,241,245,225,242,101,128,51,208,111,6,122,78,122,90,122,132,122,143,122,149,122,191,227,232,245,236,225,244,232,225,105,128,14,44,231,233,227,225,108,3,122,102,122,108,122,127,225,238,100,128,34,39,238,239,116,129,0,172,122,116,242,229,246,229,242,243,229,100,128,35,16,239,114,128,34,40,236,233,238,231,244,232,225,105,128,14,37,238,231,115,128,1,127,247,236,233,238,101,2,122,159,122,182,99,2,122,165,122,177,229,238,244,229,242,236,233,238,101,128,254,78,237,98,128,3,50,228,225,243,232,229,100,128,254,77,250,229,238,231,101,128,37,202,240,225,242,229,110,128,36,167,115,3,122,215,122,222,122,230,236,225,243,104,128,1,66,241,245,225,242,101,128,33,19,245,240,229,242,233,239,114,128,246,238,244,243,232,225,228,101,128,37,145,245,244,232,225,105,128,14,38,246,239,227,225,236,233,99,3,123,15,123,25,123,32,226,229,238,231,225,236,105,128,9,140,228,229,246,97,128,9,12,246,239,247,229,236,243,233,231,110,2,123,46,123,56,226,229,238,231,225,236,105,128,9,226,228,229,246,97,128,9,98,248,243,241,245,225,242,101,128,51,211,109,144,0,109,123,109,125,218,125,243,126,14,126,39,127,92,127,114,128,169,128,199,128,248,129,99,129,121,129,146,129,155,130,182,130,210,97,12,123,135,123,145,123,209,123,216,123,241,124,33,125,125,125,150,125,155,125,169,125,181,125,186,226,229,238,231,225,236,105,128,9,174,99,2,123,151,123,203,242,239,110,132,0,175,123,165,123,176,123,182,123,191,226,229,236,239,247,227,237,98,128,3,49,227,237,98,128,3,4,236,239,247,237,239,100,128,2,205,237,239,238,239,243,240,225,227,101,128,255,227,245,244,101,128,30,63,228,229,246,97,128,9,46,231,117,2,123,223,123,232,234,225,242,225,244,105,128,10,174,242,237,245,235,232,105,128,10,46,104,2,123,247,124,23,225,240,225,235,104,2,124,1,124,10,232,229,226,242,229,119,128,5,164,236,229,230,244,232,229,226,242,229,119,128,5,164,233,242,225,231,225,238,97,128,48,126,105,5,124,45,124,114,124,177,124,207,125,113,227,232,225,244,244,225,247,97,3,124,60,124,91,124,98,236,239,119,2,124,68,124,79,236,229,230,244,244,232,225,105,128,248,149,242,233,231,232,244,244,232,225,105,128,248,148,244,232,225,105,128,14,75,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,147,229,107,3,124,123,124,154,124,161,236,239,119,2,124,131,124,142,236,229,230,244,244,232,225,105,128,248,140,242,233,231,232,244,244,232,225,105,128,248,139,244,232,225,105,128,14,72,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,138,232,225,238,225,235,225,116,2,124,189,124,200,236,229,230,244,244,232,225,105,128,248,132,244,232,225,105,128,14,49,116,3,124,215,124,243,125,50,225,233,235,232,117,2,124,225,124,236,236,229,230,244,244,232,225,105,128,248,137,244,232,225,105,128,14,71,232,111,3,124,252,125,27,125,34,236,239,119,2,125,4,125,15,236,229,230,244,244,232,225,105,128,248,143,242,233,231,232,244,244,232,225,105,128,248,142,244,232,225,105,128,14,73,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,141,242,105,3,125,59,125,90,125,97,236,239,119,2,125,67,125,78,236,229,230,244,244,232,225,105,128,248,146,242,233,231,232,244,244,232,225,105,128,248,145,244,232,225,105,128,14,74,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,144,249,225,237,239,235,244,232,225,105,128,14,70,235,225,244,225,235,225,238,97,129,48,222,125,138,232,225,236,230,247,233,228,244,104,128,255,143,236,101,128,38,66,238,243,249,239,238,243,241,245,225,242,101,128,51,71,241,225,230,232,229,226,242,229,119,128,5,190,242,115,128,38,66,115,2,125,192,125,210,239,242,225,227,233,242,227,236,229,232,229,226,242,229,119,128,5,175,241,245,225,242,101,128,51,131,98,2,125,224,125,234,239,240,239,237,239,230,111,128,49,7,243,241,245,225,242,101,128,51,212,99,2,125,249,126,1,233,242,227,236,101,128,36,220,245,226,229,228,243,241,245,225,242,101,128,51,165,228,239,116,2,126,22,126,31,225,227,227,229,238,116,128,30,65,226,229,236,239,119,128,30,67,101,7,126,55,126,182,126,193,126,208,126,233,127,14,127,26,101,2,126,61,126,169,109,4,126,71,126,80,126,94,126,110,225,242,225,226,233,99,128,6,69,230,233,238,225,236,225,242,225,226,233,99,128,254,226,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,227,237,101,2,126,117,126,130,228,233,225,236,225,242,225,226,233,99,128,254,228,229,237,105,2,126,138,126,153,238,233,244,233,225,236,225,242,225,226,233,99,128,252,209,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,72,244,239,242,245,243,241,245,225,242,101,128,51,77,232,233,242,225,231,225,238,97,128,48,129,233,250,233,229,242,225,243,241,245,225,242,101,128,51,126,235,225,244,225,235,225,238,97,129,48,225,126,221,232,225,236,230,247,233,228,244,104,128,255,146,109,130,5,222,126,241,127,5,228,225,231,229,243,104,129,251,62,126,252,232,229,226,242,229,119,128,251,62,232,229,226,242,229,119,128,5,222,238,225,242,237,229,238,233,225,110,128,5,116,242,235,232,97,3,127,37,127,46,127,79,232,229,226,242,229,119,128,5,165,235,229,230,245,236,97,2,127,57,127,66,232,229,226,242,229,119,128,5,166,236,229,230,244,232,229,226,242,229,119,128,5,166,236,229,230,244,232,229,226,242,229,119,128,5,165,104,2,127,98,127,104,239,239,107,128,2,113,250,243,241,245,225,242,101,128,51,146,105,6,127,128,127,165,128,46,128,57,128,82,128,139,228,100,2,127,135,127,160,236,229,228,239,244,235,225,244,225,235,225,238,225,232,225,236,230,247,233,228,244,104,128,255,101,239,116,128,0,183,229,245,109,5,127,179,127,214,127,229,127,238,128,33,97,2,127,185,127,200,227,233,242,227,236,229,235,239,242,229,225,110,128,50,114,240,225,242,229,238,235,239,242,229,225,110,128,50,18,227,233,242,227,236,229,235,239,242,229,225,110,128,50,100,235,239,242,229,225,110,128,49,65,112,2,127,244,128,20,97,2,127,250,128,8,238,243,233,239,243,235,239,242,229,225,110,128,49,112,242,229,238,235,239,242,229,225,110,128,50,4,233,229,245,240,235,239,242,229,225,110,128,49,110,243,233,239,243,235,239,242,229,225,110,128,49,111,232,233,242,225,231,225,238,97,128,48,127,235,225,244,225,235,225,238,97,129,48,223,128,70,232,225,236,230,247,233,228,244,104,128,255,144,238,117,2,128,89,128,134,115,132,34,18,128,101,128,112,128,121,128,127,226,229,236,239,247,227,237,98,128,3,32,227,233,242,227,236,101,128,34,150,237,239,100,128,2,215,240,236,245,115,128,34,19,244,101,128,32,50,242,105,2,128,146,128,160,226,225,225,242,245,243,241,245,225,242,101,128,51,74,243,241,245,225,242,101,128,51,73,108,2,128,175,128,190,239,238,231,236,229,231,244,245,242,238,229,100,128,2,112,243,241,245,225,242,101,128,51,150,109,3,128,207,128,221,128,232,227,245,226,229,228,243,241,245,225,242,101,128,51,163,239,238,239,243,240,225,227,101,128,255,77,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,159,111,5,129,4,129,30,129,55,129,65,129,74,104,2,129,10,129,20,233,242,225,231,225,238,97,128,48,130,237,243,241,245,225,242,101,128,51,193,235,225,244,225,235,225,238,97,129,48,226,129,43,232,225,236,230,247,233,228,244,104,128,255,147,236,243,241,245,225,242,101,128,51,214,237,225,244,232,225,105,128,14,33,246,229,242,243,243,241,245,225,242,101,129,51,167,129,89,228,243,241,245,225,242,101,128,51,168,240,97,2,129,106,129,112,242,229,110,128,36,168,243,241,245,225,242,101,128,51,171,115,2,129,127,129,136,243,241,245,225,242,101,128,51,179,245,240,229,242,233,239,114,128,246,239,244,245,242,238,229,100,128,2,111,117,141,0,181,129,185,129,189,129,199,129,223,129,233,129,255,130,10,130,35,130,58,130,68,130,98,130,162,130,172,49,128,0,181,225,243,241,245,225,242,101,128,51,130,227,104,2,129,206,129,216,231,242,229,225,244,229,114,128,34,107,236,229,243,115,128,34,106,230,243,241,245,225,242,101,128,51,140,103,2,129,239,129,246,242,229,229,107,128,3,188,243,241,245,225,242,101,128,51,141,232,233,242,225,231,225,238,97,128,48,128,235,225,244,225,235,225,238,97,129,48,224,130,23,232,225,236,230,247,233,228,244,104,128,255,145,108,2,130,41,130,50,243,241,245,225,242,101,128,51,149,244,233,240,236,121,128,0,215,237,243,241,245,225,242,101,128,51,155,238,225,104,2,130,76,130,85,232,229,226,242,229,119,128,5,163,236,229,230,244,232,229,226,242,229,119,128,5,163,115,2,130,104,130,153,233,99,3,130,113,130,130,130,141,225,236,238,239,244,101,129,38,106,130,124,228,226,108,128,38,107,230,236,225,244,243,233,231,110,128,38,109,243,232,225,242,240,243,233,231,110,128,38,111,243,241,245,225,242,101,128,51,178,246,243,241,245,225,242,101,128,51,182,247,243,241,245,225,242,101,128,51,188,118,2,130,188,130,201,237,229,231,225,243,241,245,225,242,101,128,51,185,243,241,245,225,242,101,128,51,183,119,2,130,216,130,229,237,229,231,225,243,241,245,225,242,101,128,51,191,243,241,245,225,242,101,128,51,189,110,150,0,110,131,30,131,164,131,188,131,254,132,23,132,81,132,91,132,158,132,201,134,235,134,253,135,22,135,53,135,79,135,144,137,126,137,134,137,159,137,167,138,135,138,145,138,155,97,8,131,48,131,68,131,75,131,82,131,107,131,118,131,143,131,155,98,2,131,54,131,63,229,238,231,225,236,105,128,9,168,236,97,128,34,7,227,245,244,101,128,1,68,228,229,246,97,128,9,40,231,117,2,131,89,131,98,234,225,242,225,244,105,128,10,168,242,237,245,235,232,105,128,10,40,232,233,242,225,231,225,238,97,128,48,106,235,225,244,225,235,225,238,97,129,48,202,131,131,232,225,236,230,247,233,228,244,104,128,255,133,240,239,243,244,242,239,240,232,101,128,1,73,243,241,245,225,242,101,128,51,129,98,2,131,170,131,180,239,240,239,237,239,230,111,128,49,11,243,240,225,227,101,128,0,160,99,4,131,198,131,205,131,214,131,241,225,242,239,110,128,1,72,229,228,233,236,236,97,128,1,70,233,242,99,2,131,222,131,227,236,101,128,36,221,245,237,230,236,229,248,226,229,236,239,119,128,30,75,239,237,237,225,225,227,227,229,238,116,128,1,70,228,239,116,2,132,6,132,15,225,227,227,229,238,116,128,30,69,226,229,236,239,119,128,30,71,101,3,132,31,132,42,132,67,232,233,242,225,231,225,238,97,128,48,109,235,225,244,225,235,225,238,97,129,48,205,132,55,232,225,236,230,247,233,228,244,104,128,255,136,247,243,232,229,241,229,236,243,233,231,110,128,32,170,230,243,241,245,225,242,101,128,51,139,103,2,132,97,132,147,97,3,132,105,132,115,132,122,226,229,238,231,225,236,105,128,9,153,228,229,246,97,128,9,25,231,117,2,132,129,132,138,234,225,242,225,244,105,128,10,153,242,237,245,235,232,105,128,10,25,239,238,231,245,244,232,225,105,128,14,7,104,2,132,164,132,174,233,242,225,231,225,238,97,128,48,147,239,239,107,2,132,182,132,189,236,229,230,116,128,2,114,242,229,244,242,239,230,236,229,120,128,2,115,105,4,132,211,133,124,133,135,133,193,229,245,110,7,132,229,133,8,133,40,133,54,133,63,133,96,133,109,97,2,132,235,132,250,227,233,242,227,236,229,235,239,242,229,225,110,128,50,111,240,225,242,229,238,235,239,242,229,225,110,128,50,15,227,105,2,133,15,133,27,229,245,227,235,239,242,229,225,110,128,49,53,242,227,236,229,235,239,242,229,225,110,128,50,97,232,233,229,245,232,235,239,242,229,225,110,128,49,54,235,239,242,229,225,110,128,49,52,240,97,2,133,70,133,84,238,243,233,239,243,235,239,242,229,225,110,128,49,104,242,229,238,235,239,242,229,225,110,128,50,1,243,233,239,243,235,239,242,229,225,110,128,49,103,244,233,235,229,245,244,235,239,242,229,225,110,128,49,102,232,233,242,225,231,225,238,97,128,48,107,107,2,133,141,133,165,225,244,225,235,225,238,97,129,48,203,133,153,232,225,236,230,247,233,228,244,104,128,255,134,232,225,232,233,116,2,133,175,133,186,236,229,230,244,244,232,225,105,128,248,153,244,232,225,105,128,14,77,238,101,141,0,57,133,224,133,233,133,243,134,17,134,24,134,49,134,76,134,110,134,122,134,133,134,166,134,174,134,185,225,242,225,226,233,99,128,6,105,226,229,238,231,225,236,105,128,9,239,227,233,242,227,236,101,129,36,104,133,254,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,146,228,229,246,97,128,9,111,231,117,2,134,31,134,40,234,225,242,225,244,105,128,10,239,242,237,245,235,232,105,128,10,111,232,97,2,134,56,134,67,227,235,225,242,225,226,233,99,128,6,105,238,231,250,232,239,117,128,48,41,105,2,134,82,134,100,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,40,238,230,229,242,233,239,114,128,32,137,237,239,238,239,243,240,225,227,101,128,255,25,239,236,228,243,244,249,236,101,128,247,57,112,2,134,139,134,146,225,242,229,110,128,36,124,229,114,2,134,153,134,159,233,239,100,128,36,144,243,233,225,110,128,6,249,242,239,237,225,110,128,33,120,243,245,240,229,242,233,239,114,128,32,121,116,2,134,191,134,229,229,229,110,2,134,199,134,208,227,233,242,227,236,101,128,36,114,112,2,134,214,134,221,225,242,229,110,128,36,134,229,242,233,239,100,128,36,154,232,225,105,128,14,89,106,129,1,204,134,241,229,227,249,242,233,236,236,233,99,128,4,90,235,225,244,225,235,225,238,97,129,48,243,135,10,232,225,236,230,247,233,228,244,104,128,255,157,108,2,135,28,135,42,229,231,242,233,231,232,244,236,239,238,103,128,1,158,233,238,229,226,229,236,239,119,128,30,73,109,2,135,59,135,70,239,238,239,243,240,225,227,101,128,255,78,243,241,245,225,242,101,128,51,154,110,2,135,85,135,135,97,3,135,93,135,103,135,110,226,229,238,231,225,236,105,128,9,163,228,229,246,97,128,9,35,231,117,2,135,117,135,126,234,225,242,225,244,105,128,10,163,242,237,245,235,232,105,128,10,35,238,225,228,229,246,97,128,9,41,111,6,135,158,135,169,135,194,135,235,136,187,137,114,232,233,242,225,231,225,238,97,128,48,110,235,225,244,225,235,225,238,97,129,48,206,135,182,232,225,236,230,247,233,228,244,104,128,255,137,110,3,135,202,135,218,135,227,226,242,229,225,235,233,238,231,243,240,225,227,101,128,0,160,229,238,244,232,225,105,128,14,19,245,244,232,225,105,128,14,25,239,110,7,135,252,136,5,136,19,136,53,136,69,136,110,136,169,225,242,225,226,233,99,128,6,70,230,233,238,225,236,225,242,225,226,233,99,128,254,230,231,232,245,238,238,97,2,136,30,136,39,225,242,225,226,233,99,128,6,186,230,233,238,225,236,225,242,225,226,233,99,128,251,159,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,231,234,229,229,237,105,2,136,79,136,94,238,233,244,233,225,236,225,242,225,226,233,99,128,252,210,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,75,237,101,2,136,117,136,130,228,233,225,236,225,242,225,226,233,99,128,254,232,229,237,105,2,136,138,136,153,238,233,244,233,225,236,225,242,225,226,233,99,128,252,213,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,78,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,141,116,7,136,203,136,214,136,243,137,22,137,34,137,54,137,80,227,239,238,244,225,233,238,115,128,34,12,101,2,136,220,136,236,236,229,237,229,238,116,129,34,9,136,231,239,102,128,34,9,241,245,225,108,128,34,96,231,242,229,225,244,229,114,129,34,111,136,255,238,239,114,2,137,7,137,15,229,241,245,225,108,128,34,113,236,229,243,115,128,34,121,233,228,229,238,244,233,227,225,108,128,34,98,236,229,243,115,129,34,110,137,43,238,239,242,229,241,245,225,108,128,34,112,112,2,137,60,137,70,225,242,225,236,236,229,108,128,34,38,242,229,227,229,228,229,115,128,34,128,243,117,3,137,89,137,96,137,105,226,243,229,116,128,34,132,227,227,229,229,228,115,128,34,129,240,229,242,243,229,116,128,34,133,247,225,242,237,229,238,233,225,110,128,5,118,240,225,242,229,110,128,36,169,115,2,137,140,137,149,243,241,245,225,242,101,128,51,177,245,240,229,242,233,239,114,128,32,127,244,233,236,228,101,128,0,241,117,132,3,189,137,179,137,190,138,15,138,98,232,233,242,225,231,225,238,97,128,48,108,107,2,137,196,137,220,225,244,225,235,225,238,97,129,48,204,137,208,232,225,236,230,247,233,228,244,104,128,255,135,244,97,3,137,229,137,239,137,246,226,229,238,231,225,236,105,128,9,188,228,229,246,97,128,9,60,231,117,2,137,253,138,6,234,225,242,225,244,105,128,10,188,242,237,245,235,232,105,128,10,60,109,2,138,21,138,55,226,229,242,243,233,231,110,130,0,35,138,35,138,47,237,239,238,239,243,240,225,227,101,128,255,3,243,237,225,236,108,128,254,95,229,114,2,138,62,138,94,225,236,243,233,231,110,2,138,73,138,81,231,242,229,229,107,128,3,116,236,239,247,229,242,231,242,229,229,107,128,3,117,111,128,33,22,110,130,5,224,138,106,138,126,228,225,231,229,243,104,129,251,64,138,117,232,229,226,242,229,119,128,251,64,232,229,226,242,229,119,128,5,224,246,243,241,245,225,242,101,128,51,181,247,243,241,245,225,242,101,128,51,187,249,97,3,138,164,138,174,138,181,226,229,238,231,225,236,105,128,9,158,228,229,246,97,128,9,30,231,117,2,138,188,138,197,234,225,242,225,244,105,128,10,158,242,237,245,235,232,105,128,10,30,111,147,0,111,138,248,139,14,139,92,140,6,140,78,140,93,140,133,141,0,141,21,141,59,141,70,141,248,143,82,143,146,143,179,143,225,144,98,144,145,144,157,97,2,138,254,139,5,227,245,244,101,128,0,243,238,231,244,232,225,105,128,14,45,98,4,139,24,139,66,139,75,139,85,225,242,242,229,100,130,2,117,139,36,139,47,227,249,242,233,236,236,233,99,128,4,233,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,235,229,238,231,225,236,105,128,9,147,239,240,239,237,239,230,111,128,49,27,242,229,246,101,128,1,79,99,3,139,100,139,173,139,252,97,2,139,106,139,167,238,228,242,97,3,139,117,139,124,139,135,228,229,246,97,128,9,17,231,245,234,225,242,225,244,105,128,10,145,246,239,247,229,236,243,233,231,110,2,139,149,139,156,228,229,246,97,128,9,73,231,245,234,225,242,225,244,105,128,10,201,242,239,110,128,1,210,233,242,99,2,139,181,139,186,236,101,128,36,222,245,237,230,236,229,120,133,0,244,139,205,139,213,139,224,139,232,139,244,225,227,245,244,101,128,30,209,228,239,244,226,229,236,239,119,128,30,217,231,242,225,246,101,128,30,211,232,239,239,235,225,226,239,246,101,128,30,213,244,233,236,228,101,128,30,215,249,242,233,236,236,233,99,128,4,62,100,4,140,16,140,39,140,45,140,68,226,108,2,140,23,140,31,225,227,245,244,101,128,1,81,231,242,225,246,101,128,2,13,229,246,97,128,9,19,233,229,242,229,243,233,115,129,0,246,140,57,227,249,242,233,236,236,233,99,128,4,231,239,244,226,229,236,239,119,128,30,205,101,129,1,83,140,84,235,239,242,229,225,110,128,49,90,103,3,140,101,140,116,140,123,239,238,229,107,129,2,219,140,110,227,237,98,128,3,40,242,225,246,101,128,0,242,245,234,225,242,225,244,105,128,10,147,104,4,140,143,140,154,140,164,140,242,225,242,237,229,238,233,225,110,128,5,133,233,242,225,231,225,238,97,128,48,74,111,2,140,170,140,180,239,235,225,226,239,246,101,128,30,207,242,110,133,1,161,140,195,140,203,140,214,140,222,140,234,225,227,245,244,101,128,30,219,228,239,244,226,229,236,239,119,128,30,227,231,242,225,246,101,128,30,221,232,239,239,235,225,226,239,246,101,128,30,223,244,233,236,228,101,128,30,225,245,238,231,225,242,245,237,236,225,245,116,128,1,81,105,129,1,163,141,6,238,246,229,242,244,229,228,226,242,229,246,101,128,2,15,107,2,141,27,141,51,225,244,225,235,225,238,97,129,48,170,141,39,232,225,236,230,247,233,228,244,104,128,255,117,239,242,229,225,110,128,49,87,236,229,232,229,226,242,229,119,128,5,171,109,6,141,84,141,112,141,119,141,208,141,219,141,237,225,227,242,239,110,130,1,77,141,96,141,104,225,227,245,244,101,128,30,83,231,242,225,246,101,128,30,81,228,229,246,97,128,9,80,229,231,97,133,3,201,141,135,141,139,141,150,141,164,141,180,49,128,3,214,227,249,242,233,236,236,233,99,128,4,97,236,225,244,233,238,227,236,239,243,229,100,128,2,119,242,239,245,238,228,227,249,242,233,236,236,233,99,128,4,123,116,2,141,186,141,201,233,244,236,239,227,249,242,233,236,236,233,99,128,4,125,239,238,239,115,128,3,206,231,245,234,225,242,225,244,105,128,10,208,233,227,242,239,110,129,3,191,141,229,244,239,238,239,115,128,3,204,239,238,239,243,240,225,227,101,128,255,79,238,101,145,0,49,142,31,142,40,142,50,142,80,142,105,142,114,142,123,142,148,142,182,142,216,142,228,142,247,143,2,143,35,143,45,143,53,143,64,225,242,225,226,233,99,128,6,97,226,229,238,231,225,236,105,128,9,231,227,233,242,227,236,101,129,36,96,142,61,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,138,100,2,142,86,142,92,229,246,97,128,9,103,239,244,229,238,236,229,225,228,229,114,128,32,36,229,233,231,232,244,104,128,33,91,230,233,244,244,229,100,128,246,220,231,117,2,142,130,142,139,234,225,242,225,244,105,128,10,231,242,237,245,235,232,105,128,10,103,232,97,3,142,157,142,168,142,173,227,235,225,242,225,226,233,99,128,6,97,236,102,128,0,189,238,231,250,232,239,117,128,48,33,105,2,142,188,142,206,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,32,238,230,229,242,233,239,114,128,32,129,237,239,238,239,243,240,225,227,101,128,255,17,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,244,239,236,228,243,244,249,236,101,128,247,49,112,2,143,8,143,15,225,242,229,110,128,36,116,229,114,2,143,22,143,28,233,239,100,128,36,136,243,233,225,110,128,6,241,241,245,225,242,244,229,114,128,0,188,242,239,237,225,110,128,33,112,243,245,240,229,242,233,239,114,128,0,185,244,104,2,143,71,143,76,225,105,128,14,81,233,242,100,128,33,83,111,3,143,90,143,124,143,140,103,2,143,96,143,114,239,238,229,107,129,1,235,143,105,237,225,227,242,239,110,128,1,237,245,242,237,245,235,232,105,128,10,19,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,75,240,229,110,128,2,84,112,3,143,154,143,161,143,172,225,242,229,110,128,36,170,229,238,226,245,236,236,229,116,128,37,230,244,233,239,110,128,35,37,114,2,143,185,143,214,100,2,143,191,143,202,230,229,237,233,238,233,238,101,128,0,170,237,225,243,227,245,236,233,238,101,128,0,186,244,232,239,231,239,238,225,108,128,34,31,115,5,143,237,144,13,144,30,144,75,144,88,232,239,242,116,2,143,246,143,253,228,229,246,97,128,9,18,246,239,247,229,236,243,233,231,238,228,229,246,97,128,9,74,236,225,243,104,129,0,248,144,22,225,227,245,244,101,128,1,255,237,225,236,108,2,144,39,144,50,232,233,242,225,231,225,238,97,128,48,73,235,225,244,225,235,225,238,97,129,48,169,144,63,232,225,236,230,247,233,228,244,104,128,255,107,244,242,239,235,229,225,227,245,244,101,128,1,255,245,240,229,242,233,239,114,128,246,240,116,2,144,104,144,115,227,249,242,233,236,236,233,99,128,4,127,233,236,228,101,130,0,245,144,126,144,134,225,227,245,244,101,128,30,77,228,233,229,242,229,243,233,115,128,30,79,245,226,239,240,239,237,239,230,111,128,49,33,118,2,144,163,144,244,229,114,2,144,170,144,236,236,233,238,101,131,32,62,144,183,144,206,144,229,99,2,144,189,144,201,229,238,244,229,242,236,233,238,101,128,254,74,237,98,128,3,5,100,2,144,212,144,220,225,243,232,229,100,128,254,73,226,236,247,225,246,121,128,254,76,247,225,246,121,128,254,75,243,227,239,242,101,128,0,175,239,247,229,236,243,233,231,110,3,145,3,145,13,145,20,226,229,238,231,225,236,105,128,9,203,228,229,246,97,128,9,75,231,245,234,225,242,225,244,105,128,10,203,112,145,0,112,145,69,147,197,147,208,147,217,147,229,149,154,149,164,150,156,151,175,152,9,152,35,152,166,152,174,153,76,153,134,153,162,153,172,97,14,145,99,145,131,145,141,145,148,145,155,145,203,145,214,145,228,145,239,146,30,146,44,147,56,147,95,147,185,97,2,145,105,145,117,237,240,243,243,241,245,225,242,101,128,51,128,243,229,238,244,239,243,241,245,225,242,101,128,51,43,226,229,238,231,225,236,105,128,9,170,227,245,244,101,128,30,85,228,229,246,97,128,9,42,103,2,145,161,145,179,101,2,145,167,145,174,228,239,247,110,128,33,223,245,112,128,33,222,117,2,145,185,145,194,234,225,242,225,244,105,128,10,170,242,237,245,235,232,105,128,10,42,232,233,242,225,231,225,238,97,128,48,113,233,249,225,238,238,239,233,244,232,225,105,128,14,47,235,225,244,225,235,225,238,97,128,48,209,108,2,145,245,146,14,225,244,225,236,233,250,225,244,233,239,238,227,249,242,233,236,236,233,227,227,237,98,128,4,132,239,227,232,235,225,227,249,242,233,236,236,233,99,128,4,192,238,243,233,239,243,235,239,242,229,225,110,128,49,127,114,3,146,52,146,73,147,45,97,2,146,58,146,66,231,242,225,240,104,128,0,182,236,236,229,108,128,34,37,229,110,2,146,80,146,190,236,229,230,116,136,0,40,146,103,146,118,146,123,146,128,146,139,146,151,146,174,146,179,225,236,244,239,238,229,225,242,225,226,233,99,128,253,62,226,116,128,248,237,229,120,128,248,236,233,238,230,229,242,233,239,114,128,32,141,237,239,238,239,243,240,225,227,101,128,255,8,115,2,146,157,146,164,237,225,236,108,128,254,89,245,240,229,242,233,239,114,128,32,125,244,112,128,248,235,246,229,242,244,233,227,225,108,128,254,53,242,233,231,232,116,136,0,41,146,214,146,229,146,234,146,239,146,250,147,6,147,29,147,34,225,236,244,239,238,229,225,242,225,226,233,99,128,253,63,226,116,128,248,248,229,120,128,248,247,233,238,230,229,242,233,239,114,128,32,142,237,239,238,239,243,240,225,227,101,128,255,9,115,2,147,12,147,19,237,225,236,108,128,254,90,245,240,229,242,233,239,114,128,32,126,244,112,128,248,246,246,229,242,244,233,227,225,108,128,254,54,244,233,225,236,228,233,230,102,128,34,2,115,3,147,64,147,75,147,87,229,241,232,229,226,242,229,119,128,5,192,232,244,225,232,229,226,242,229,119,128,5,153,241,245,225,242,101,128,51,169,244,225,104,134,5,183,147,113,147,127,147,132,147,141,147,156,147,172,49,2,147,119,147,123,49,128,5,183,100,128,5,183,178,97,128,5,183,232,229,226,242,229,119,128,5,183,238,225,242,242,239,247,232,229,226,242,229,119,128,5,183,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,183,247,233,228,229,232,229,226,242,229,119,128,5,183,250,229,242,232,229,226,242,229,119,128,5,161,226,239,240,239,237,239,230,111,128,49,6,227,233,242,227,236,101,128,36,223,228,239,244,225,227,227,229,238,116,128,30,87,101,137,5,228,147,251,148,6,148,26,148,38,148,58,148,160,148,171,148,192,149,147,227,249,242,233,236,236,233,99,128,4,63,228,225,231,229,243,104,129,251,68,148,17,232,229,226,242,229,119,128,251,68,229,250,233,243,241,245,225,242,101,128,51,59,230,233,238,225,236,228,225,231,229,243,232,232,229,226,242,229,119,128,251,67,104,5,148,70,148,93,148,101,148,115,148,145,225,114,2,148,77,148,84,225,226,233,99,128,6,126,237,229,238,233,225,110,128,5,122,229,226,242,229,119,128,5,228,230,233,238,225,236,225,242,225,226,233,99,128,251,87,105,2,148,121,148,136,238,233,244,233,225,236,225,242,225,226,233,99,128,251,88,242,225,231,225,238,97,128,48,122,237,229,228,233,225,236,225,242,225,226,233,99,128,251,89,235,225,244,225,235,225,238,97,128,48,218,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,167,114,5,148,204,148,216,149,2,149,123,149,136,225,230,229,232,229,226,242,229,119,128,251,78,227,229,238,116,131,0,37,148,229,148,238,148,250,225,242,225,226,233,99,128,6,106,237,239,238,239,243,240,225,227,101,128,255,5,243,237,225,236,108,128,254,106,105,2,149,8,149,105,239,100,134,0,46,149,25,149,36,149,47,149,59,149,70,149,82,225,242,237,229,238,233,225,110,128,5,137,227,229,238,244,229,242,229,100,128,0,183,232,225,236,230,247,233,228,244,104,128,255,97,233,238,230,229,242,233,239,114,128,246,231,237,239,238,239,243,240,225,227,101,128,255,14,115,2,149,88,149,95,237,225,236,108,128,254,82,245,240,229,242,233,239,114,128,246,232,243,240,239,237,229,238,233,231,242,229,229,235,227,237,98,128,3,66,240,229,238,228,233,227,245,236,225,114,128,34,165,244,232,239,245,243,225,238,100,128,32,48,243,229,244,97,128,32,167,230,243,241,245,225,242,101,128,51,138,104,3,149,172,149,222,150,103,97,3,149,180,149,190,149,197,226,229,238,231,225,236,105,128,9,171,228,229,246,97,128,9,43,231,117,2,149,204,149,213,234,225,242,225,244,105,128,10,171,242,237,245,235,232,105,128,10,43,105,133,3,198,149,236,149,240,150,70,150,78,150,89,49,128,3,213,229,245,240,104,4,149,253,150,32,150,47,150,56,97,2,150,3,150,18,227,233,242,227,236,229,235,239,242,229,225,110,128,50,122,240,225,242,229,238,235,239,242,229,225,110,128,50,26,227,233,242,227,236,229,235,239,242,229,225,110,128,50,108,235,239,242,229,225,110,128,49,77,240,225,242,229,238,235,239,242,229,225,110,128,50,12,236,225,244,233,110,128,2,120,238,244,232,245,244,232,225,105,128,14,58,243,249,237,226,239,236,231,242,229,229,107,128,3,213,111,3,150,111,150,116,150,142,239,107,128,1,165,240,104,2,150,123,150,132,225,238,244,232,225,105,128,14,30,245,238,231,244,232,225,105,128,14,28,243,225,237,240,232,225,239,244,232,225,105,128,14,32,105,133,3,192,150,170,151,126,151,137,151,148,151,162,229,245,112,6,150,186,150,221,150,253,151,25,151,39,151,91,97,2,150,192,150,207,227,233,242,227,236,229,235,239,242,229,225,110,128,50,115,240,225,242,229,238,235,239,242,229,225,110,128,50,19,227,105,2,150,228,150,240,229,245,227,235,239,242,229,225,110,128,49,118,242,227,236,229,235,239,242,229,225,110,128,50,101,107,2,151,3,151,17,233,249,229,239,235,235,239,242,229,225,110,128,49,114,239,242,229,225,110,128,49,66,240,225,242,229,238,235,239,242,229,225,110,128,50,5,243,233,239,115,2,151,48,151,76,107,2,151,54,151,68,233,249,229,239,235,235,239,242,229,225,110,128,49,116,239,242,229,225,110,128,49,68,244,233,235,229,245,244,235,239,242,229,225,110,128,49,117,116,2,151,97,151,112,232,233,229,245,244,232,235,239,242,229,225,110,128,49,119,233,235,229,245,244,235,239,242,229],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+40960);allocate([225,110,128,49,115,232,233,242,225,231,225,238,97,128,48,116,235,225,244,225,235,225,238,97,128,48,212,243,249,237,226,239,236,231,242,229,229,107,128,3,214,247,242,225,242,237,229,238,233,225,110,128,5,131,236,245,115,132,0,43,151,189,151,200,151,209,151,242,226,229,236,239,247,227,237,98,128,3,31,227,233,242,227,236,101,128,34,149,109,2,151,215,151,222,233,238,245,115,128,0,177,111,2,151,228,151,232,100,128,2,214,238,239,243,240,225,227,101,128,255,11,115,2,151,248,151,255,237,225,236,108,128,254,98,245,240,229,242,233,239,114,128,32,122,109,2,152,15,152,26,239,238,239,243,240,225,227,101,128,255,80,243,241,245,225,242,101,128,51,216,111,5,152,47,152,58,152,125,152,136,152,146,232,233,242,225,231,225,238,97,128,48,125,233,238,244,233,238,231,233,238,228,229,120,4,152,78,152,90,152,102,152,115,228,239,247,238,247,232,233,244,101,128,38,31,236,229,230,244,247,232,233,244,101,128,38,28,242,233,231,232,244,247,232,233,244,101,128,38,30,245,240,247,232,233,244,101,128,38,29,235,225,244,225,235,225,238,97,128,48,221,240,236,225,244,232,225,105,128,14,27,243,244,225,236,237,225,242,107,129,48,18,152,159,230,225,227,101,128,48,32,240,225,242,229,110,128,36,171,114,3,152,182,152,208,152,233,101,2,152,188,152,196,227,229,228,229,115,128,34,122,243,227,242,233,240,244,233,239,110,128,33,30,233,237,101,2,152,216,152,222,237,239,100,128,2,185,242,229,246,229,242,243,229,100,128,32,53,111,4,152,243,152,250,153,4,153,17,228,245,227,116,128,34,15,234,229,227,244,233,246,101,128,35,5,236,239,238,231,229,228,235,225,238,97,128,48,252,112,2,153,23,153,60,101,2,153,29,153,36,236,236,239,114,128,35,24,242,243,117,2,153,44,153,51,226,243,229,116,128,34,130,240,229,242,243,229,116,128,34,131,239,242,244,233,239,110,129,34,55,153,71,225,108,128,34,29,115,2,153,82,153,125,105,130,3,200,153,90,153,101,227,249,242,233,236,236,233,99,128,4,113,236,233,240,238,229,245,237,225,244,225,227,249,242,233,236,236,233,227,227,237,98,128,4,134,243,241,245,225,242,101,128,51,176,117,2,153,140,153,151,232,233,242,225,231,225,238,97,128,48,119,235,225,244,225,235,225,238,97,128,48,215,246,243,241,245,225,242,101,128,51,180,247,243,241,245,225,242,101,128,51,186,113,136,0,113,153,202,154,251,155,6,155,15,155,22,155,34,155,72,155,80,97,4,153,212,153,235,154,43,154,234,100,2,153,218,153,224,229,246,97,128,9,88,237,225,232,229,226,242,229,119,128,5,168,102,4,153,245,153,254,154,12,154,28,225,242,225,226,233,99,128,6,66,230,233,238,225,236,225,242,225,226,233,99,128,254,214,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,215,237,229,228,233,225,236,225,242,225,226,233,99,128,254,216,237,225,244,115,136,5,184,154,66,154,86,154,100,154,105,154,110,154,119,154,134,154,221,49,3,154,74,154,78,154,82,48,128,5,184,97,128,5,184,99,128,5,184,50,2,154,92,154,96,55,128,5,184,57,128,5,184,179,51,128,5,184,228,101,128,5,184,232,229,226,242,229,119,128,5,184,238,225,242,242,239,247,232,229,226,242,229,119,128,5,184,113,2,154,140,154,206,225,244,225,110,4,154,153,154,162,154,177,154,193,232,229,226,242,229,119,128,5,184,238,225,242,242,239,247,232,229,226,242,229,119,128,5,184,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,184,247,233,228,229,232,229,226,242,229,119,128,5,184,245,225,242,244,229,242,232,229,226,242,229,119,128,5,184,247,233,228,229,232,229,226,242,229,119,128,5,184,242,238,229,249,240,225,242,225,232,229,226,242,229,119,128,5,159,226,239,240,239,237,239,230,111,128,49,17,227,233,242,227,236,101,128,36,224,232,239,239,107,128,2,160,237,239,238,239,243,240,225,227,101,128,255,81,239,102,130,5,231,155,43,155,63,228,225,231,229,243,104,129,251,71,155,54,232,229,226,242,229,119,128,251,71,232,229,226,242,229,119,128,5,231,240,225,242,229,110,128,36,172,117,4,155,90,155,102,155,191,156,22,225,242,244,229,242,238,239,244,101,128,38,105,226,245,244,115,135,5,187,155,123,155,128,155,133,155,138,155,147,155,162,155,178,177,56,128,5,187,178,53,128,5,187,179,49,128,5,187,232,229,226,242,229,119,128,5,187,238,225,242,242,239,247,232,229,226,242,229,119,128,5,187,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,187,247,233,228,229,232,229,226,242,229,119,128,5,187,229,243,244,233,239,110,133,0,63,155,210,155,233,155,250,156,2,156,14,225,114,2,155,217,155,224,225,226,233,99,128,6,31,237,229,238,233,225,110,128,5,94,228,239,247,110,129,0,191,155,242,243,237,225,236,108,128,247,191,231,242,229,229,107,128,3,126,237,239,238,239,243,240,225,227,101,128,255,31,243,237,225,236,108,128,247,63,239,244,101,4,156,34,156,105,156,125,156,154,228,226,108,133,0,34,156,50,156,57,156,64,156,76,156,97,226,225,243,101,128,32,30,236,229,230,116,128,32,28,237,239,238,239,243,240,225,227,101,128,255,2,240,242,233,237,101,129,48,30,156,86,242,229,246,229,242,243,229,100,128,48,29,242,233,231,232,116,128,32,29,236,229,230,116,129,32,24,156,114,242,229,246,229,242,243,229,100,128,32,27,114,2,156,131,156,141,229,246,229,242,243,229,100,128,32,27,233,231,232,116,129,32,25,156,150,110,128,1,73,243,233,238,231,108,2,156,164,156,171,226,225,243,101,128,32,26,101,129,0,39,156,177,237,239,238,239,243,240,225,227,101,128,255,7,114,145,0,114,156,227,157,231,157,242,158,33,158,84,159,101,159,125,159,220,161,254,162,35,162,47,162,101,162,109,163,15,163,26,163,61,163,161,97,11,156,251,157,6,157,16,157,23,157,88,157,104,157,129,157,140,157,165,157,188,157,225,225,242,237,229,238,233,225,110,128,5,124,226,229,238,231,225,236,105,128,9,176,227,245,244,101,128,1,85,100,4,157,33,157,39,157,53,157,79,229,246,97,128,9,48,233,227,225,108,129,34,26,157,48,229,120,128,248,229,239,246,229,242,243,243,241,245,225,242,101,129,51,174,157,69,228,243,241,245,225,242,101,128,51,175,243,241,245,225,242,101,128,51,173,230,101,129,5,191,157,95,232,229,226,242,229,119,128,5,191,231,117,2,157,111,157,120,234,225,242,225,244,105,128,10,176,242,237,245,235,232,105,128,10,48,232,233,242,225,231,225,238,97,128,48,137,235,225,244,225,235,225,238,97,129,48,233,157,153,232,225,236,230,247,233,228,244,104,128,255,151,236,239,247,229,242,228,233,225,231,239,238,225,236,226,229,238,231,225,236,105,128,9,241,109,2,157,194,157,217,233,228,228,236,229,228,233,225,231,239,238,225,236,226,229,238,231,225,236,105,128,9,240,243,232,239,242,110,128,2,100,244,233,111,128,34,54,226,239,240,239,237,239,230,111,128,49,22,99,4,157,252,158,3,158,12,158,20,225,242,239,110,128,1,89,229,228,233,236,236,97,128,1,87,233,242,227,236,101,128,36,225,239,237,237,225,225,227,227,229,238,116,128,1,87,100,2,158,39,158,49,226,236,231,242,225,246,101,128,2,17,239,116,2,158,56,158,65,225,227,227,229,238,116,128,30,89,226,229,236,239,119,129,30,91,158,75,237,225,227,242,239,110,128,30,93,101,6,158,98,158,143,158,178,158,233,159,2,159,35,102,2,158,104,158,117,229,242,229,238,227,229,237,225,242,107,128,32,59,236,229,248,243,117,2,158,127,158,134,226,243,229,116,128,34,134,240,229,242,243,229,116,128,34,135,231,233,243,244,229,114,2,158,154,158,159,229,100,128,0,174,115,2,158,165,158,171,225,238,115,128,248,232,229,242,233,102,128,246,218,104,3,158,186,158,209,158,223,225,114,2,158,193,158,200,225,226,233,99,128,6,49,237,229,238,233,225,110,128,5,128,230,233,238,225,236,225,242,225,226,233,99,128,254,174,233,242,225,231,225,238,97,128,48,140,235,225,244,225,235,225,238,97,129,48,236,158,246,232,225,236,230,247,233,228,244,104,128,255,154,243,104,130,5,232,159,11,159,26,228,225,231,229,243,232,232,229,226,242,229,119,128,251,72,232,229,226,242,229,119,128,5,232,118,3,159,43,159,56,159,88,229,242,243,229,228,244,233,236,228,101,128,34,61,233,97,2,159,63,159,72,232,229,226,242,229,119,128,5,151,237,245,231,242,225,243,232,232,229,226,242,229,119,128,5,151,236,239,231,233,227,225,236,238,239,116,128,35,16,230,233,243,232,232,239,239,107,129,2,126,159,114,242,229,246,229,242,243,229,100,128,2,127,104,2,159,131,159,154,97,2,159,137,159,147,226,229,238,231,225,236,105,128,9,221,228,229,246,97,128,9,93,111,131,3,193,159,164,159,193,159,207,239,107,129,2,125,159,171,244,245,242,238,229,100,129,2,123,159,182,243,245,240,229,242,233,239,114,128,2,181,243,249,237,226,239,236,231,242,229,229,107,128,3,241,244,233,227,232,239,239,235,237,239,100,128,2,222,105,6,159,234,161,22,161,68,161,79,161,104,161,240,229,245,108,9,160,0,160,35,160,50,160,64,160,110,160,124,160,210,160,223,161,2,97,2,160,6,160,21,227,233,242,227,236,229,235,239,242,229,225,110,128,50,113,240,225,242,229,238,235,239,242,229,225,110,128,50,17,227,233,242,227,236,229,235,239,242,229,225,110,128,50,99,232,233,229,245,232,235,239,242,229,225,110,128,49,64,107,2,160,70,160,102,233,249,229,239,107,2,160,80,160,89,235,239,242,229,225,110,128,49,58,243,233,239,243,235,239,242,229,225,110,128,49,105,239,242,229,225,110,128,49,57,237,233,229,245,237,235,239,242,229,225,110,128,49,59,112,3,160,132,160,164,160,179,97,2,160,138,160,152,238,243,233,239,243,235,239,242,229,225,110,128,49,108,242,229,238,235,239,242,229,225,110,128,50,3,232,233,229,245,240,232,235,239,242,229,225,110,128,49,63,233,229,245,112,2,160,188,160,197,235,239,242,229,225,110,128,49,60,243,233,239,243,235,239,242,229,225,110,128,49,107,243,233,239,243,235,239,242,229,225,110,128,49,61,116,2,160,229,160,244,232,233,229,245,244,232,235,239,242,229,225,110,128,49,62,233,235,229,245,244,235,239,242,229,225,110,128,49,106,249,229,239,242,233,238,232,233,229,245,232,235,239,242,229,225,110,128,49,109,231,232,116,2,161,30,161,38,225,238,231,236,101,128,34,31,116,2,161,44,161,58,225,227,235,226,229,236,239,247,227,237,98,128,3,25,242,233,225,238,231,236,101,128,34,191,232,233,242,225,231,225,238,97,128,48,138,235,225,244,225,235,225,238,97,129,48,234,161,92,232,225,236,230,247,233,228,244,104,128,255,152,110,2,161,110,161,226,103,131,2,218,161,120,161,131,161,137,226,229,236,239,247,227,237,98,128,3,37,227,237,98,128,3,10,232,225,236,102,2,161,146,161,192,236,229,230,116,131,2,191,161,159,161,170,161,181,225,242,237,229,238,233,225,110,128,5,89,226,229,236,239,247,227,237,98,128,3,28,227,229,238,244,229,242,229,100,128,2,211,242,233,231,232,116,130,2,190,161,204,161,215,226,229,236,239,247,227,237,98,128,3,57,227,229,238,244,229,242,229,100,128,2,210,246,229,242,244,229,228,226,242,229,246,101,128,2,19,244,244,239,242,245,243,241,245,225,242,101,128,51,81,108,2,162,4,162,15,233,238,229,226,229,236,239,119,128,30,95,239,238,231,236,229,103,129,2,124,162,26,244,245,242,238,229,100,128,2,122,237,239,238,239,243,240,225,227,101,128,255,82,111,3,162,55,162,66,162,91,232,233,242,225,231,225,238,97,128,48,141,235,225,244,225,235,225,238,97,129,48,237,162,79,232,225,236,230,247,233,228,244,104,128,255,155,242,245,225,244,232,225,105,128,14,35,240,225,242,229,110,128,36,173,114,3,162,117,162,153,162,183,97,3,162,125,162,135,162,142,226,229,238,231,225,236,105,128,9,220,228,229,246,97,128,9,49,231,245,242,237,245,235,232,105,128,10,92,229,104,2,162,160,162,169,225,242,225,226,233,99,128,6,145,230,233,238,225,236,225,242,225,226,233,99,128,251,141,246,239,227,225,236,233,99,4,162,199,162,209,162,216,162,227,226,229,238,231,225,236,105,128,9,224,228,229,246,97,128,9,96,231,245,234,225,242,225,244,105,128,10,224,246,239,247,229,236,243,233,231,110,3,162,243,162,253,163,4,226,229,238,231,225,236,105,128,9,196,228,229,246,97,128,9,68,231,245,234,225,242,225,244,105,128,10,196,243,245,240,229,242,233,239,114,128,246,241,116,2,163,32,163,40,226,236,239,227,107,128,37,144,245,242,238,229,100,129,2,121,163,50,243,245,240,229,242,233,239,114,128,2,180,117,4,163,71,163,82,163,107,163,154,232,233,242,225,231,225,238,97,128,48,139,235,225,244,225,235,225,238,97,129,48,235,163,95,232,225,236,230,247,233,228,244,104,128,255,153,112,2,163,113,163,148,229,101,2,163,120,163,134,237,225,242,235,226,229,238,231,225,236,105,128,9,242,243,233,231,238,226,229,238,231,225,236,105,128,9,243,233,225,104,128,246,221,244,232,225,105,128,14,36,246,239,227,225,236,233,99,4,163,177,163,187,163,194,163,205,226,229,238,231,225,236,105,128,9,139,228,229,246,97,128,9,11,231,245,234,225,242,225,244,105,128,10,139,246,239,247,229,236,243,233,231,110,3,163,221,163,231,163,238,226,229,238,231,225,236,105,128,9,195,228,229,246,97,128,9,67,231,245,234,225,242,225,244,105,128,10,195,115,147,0,115,164,35,166,5,166,16,166,142,166,181,169,123,169,134,172,21,174,159,174,205,174,232,175,167,175,234,177,11,177,21,177,207,178,24,178,194,178,204,97,9,164,55,164,65,164,86,164,158,164,183,164,194,164,219,164,251,165,35,226,229,238,231,225,236,105,128,9,184,227,245,244,101,129,1,91,164,74,228,239,244,225,227,227,229,238,116,128,30,101,100,5,164,98,164,107,164,113,164,127,164,143,225,242,225,226,233,99,128,6,53,229,246,97,128,9,56,230,233,238,225,236,225,242,225,226,233,99,128,254,186,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,187,237,229,228,233,225,236,225,242,225,226,233,99,128,254,188,231,117,2,164,165,164,174,234,225,242,225,244,105,128,10,184,242,237,245,235,232,105,128,10,56,232,233,242,225,231,225,238,97,128,48,85,235,225,244,225,235,225,238,97,129,48,181,164,207,232,225,236,230,247,233,228,244,104,128,255,123,236,236,225,236,236,225,232,239,245,225,236,225,249,232,229,247,225,243,225,236,236,225,237,225,242,225,226,233,99,128,253,250,237,229,235,104,130,5,225,165,6,165,26,228,225,231,229,243,104,129,251,65,165,17,232,229,226,242,229,119,128,251,65,232,229,226,242,229,119,128,5,225,242,97,5,165,48,165,122,165,130,165,180,165,188,97,5,165,60,165,68,165,76,165,107,165,115,225,244,232,225,105,128,14,50,229,244,232,225,105,128,14,65,233,237,225,233,109,2,165,86,165,97,225,236,225,233,244,232,225,105,128,14,68,245,225,238,244,232,225,105,128,14,67,237,244,232,225,105,128,14,51,244,232,225,105,128,14,48,229,244,232,225,105,128,14,64,105,3,165,138,165,162,165,173,105,2,165,144,165,155,236,229,230,244,244,232,225,105,128,248,134,244,232,225,105,128,14,53,236,229,230,244,244,232,225,105,128,248,133,244,232,225,105,128,14,52,239,244,232,225,105,128,14,66,117,3,165,196,165,246,165,253,101,3,165,204,165,228,165,239,101,2,165,210,165,221,236,229,230,244,244,232,225,105,128,248,136,244,232,225,105,128,14,55,236,229,230,244,244,232,225,105,128,248,135,244,232,225,105,128,14,54,244,232,225,105,128,14,56,245,244,232,225,105,128,14,57,226,239,240,239,237,239,230,111,128,49,25,99,5,166,28,166,49,166,58,166,107,166,129,225,242,239,110,129,1,97,166,37,228,239,244,225,227,227,229,238,116,128,30,103,229,228,233,236,236,97,128,1,95,232,247,97,131,2,89,166,70,166,81,166,100,227,249,242,233,236,236,233,99,128,4,217,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,219,232,239,239,107,128,2,90,233,242,99,2,166,115,166,120,236,101,128,36,226,245,237,230,236,229,120,128,1,93,239,237,237,225,225,227,227,229,238,116,128,2,25,228,239,116,2,166,150,166,159,225,227,227,229,238,116,128,30,97,226,229,236,239,119,129,30,99,166,169,228,239,244,225,227,227,229,238,116,128,30,105,101,9,166,201,166,217,166,252,167,61,167,164,167,191,167,216,168,41,168,68,225,231,245,236,236,226,229,236,239,247,227,237,98,128,3,60,99,2,166,223,166,245,239,238,100,129,32,51,166,231,244,239,238,229,227,232,233,238,229,243,101,128,2,202,244,233,239,110,128,0,167,229,110,4,167,7,167,16,167,30,167,46,225,242,225,226,233,99,128,6,51,230,233,238,225,236,225,242,225,226,233,99,128,254,178,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,179,237,229,228,233,225,236,225,242,225,226,233,99,128,254,180,231,239,108,135,5,182,167,81,167,95,167,100,167,109,167,124,167,140,167,151,49,2,167,87,167,91,51,128,5,182,102,128,5,182,178,99,128,5,182,232,229,226,242,229,119,128,5,182,238,225,242,242,239,247,232,229,226,242,229,119,128,5,182,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,182,244,225,232,229,226,242,229,119,128,5,146,247,233,228,229,232,229,226,242,229,119,128,5,182,104,2,167,170,167,181,225,242,237,229,238,233,225,110,128,5,125,233,242,225,231,225,238,97,128,48,91,235,225,244,225,235,225,238,97,129,48,187,167,204,232,225,236,230,247,233,228,244,104,128,255,126,237,105,2,167,223,168,10,227,239,236,239,110,131,0,59,167,237,167,246,168,2,225,242,225,226,233,99,128,6,27,237,239,238,239,243,240,225,227,101,128,255,27,243,237,225,236,108,128,254,84,246,239,233,227,229,228,237,225,242,235,235,225,238,97,129,48,156,168,29,232,225,236,230,247,233,228,244,104,128,255,159,238,116,2,168,48,168,58,233,243,241,245,225,242,101,128,51,34,239,243,241,245,225,242,101,128,51,35,246,229,110,142,0,55,168,102,168,111,168,121,168,151,168,158,168,168,168,193,168,220,168,254,169,10,169,21,169,54,169,62,169,73,225,242,225,226,233,99,128,6,103,226,229,238,231,225,236,105,128,9,237,227,233,242,227,236,101,129,36,102,168,132,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,144,228,229,246,97,128,9,109,229,233,231,232,244,232,115,128,33,94,231,117,2,168,175,168,184,234,225,242,225,244,105,128,10,237,242,237,245,235,232,105,128,10,109,232,97,2,168,200,168,211,227,235,225,242,225,226,233,99,128,6,103,238,231,250,232,239,117,128,48,39,105,2,168,226,168,244,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,38,238,230,229,242,233,239,114,128,32,135,237,239,238,239,243,240,225,227,101,128,255,23,239,236,228,243,244,249,236,101,128,247,55,112,2,169,27,169,34,225,242,229,110,128,36,122,229,114,2,169,41,169,47,233,239,100,128,36,142,243,233,225,110,128,6,247,242,239,237,225,110,128,33,118,243,245,240,229,242,233,239,114,128,32,119,116,2,169,79,169,117,229,229,110,2,169,87,169,96,227,233,242,227,236,101,128,36,112,112,2,169,102,169,109,225,242,229,110,128,36,132,229,242,233,239,100,128,36,152,232,225,105,128,14,87,230,244,232,249,240,232,229,110,128,0,173,104,7,169,150,170,124,170,135,170,149,171,94,171,107,172,15,97,6,169,164,169,175,169,185,169,196,170,83,170,108,225,242,237,229,238,233,225,110,128,5,119,226,229,238,231,225,236,105,128,9,182,227,249,242,233,236,236,233,99,128,4,72,100,2,169,202,170,42,228,97,4,169,213,169,222,169,253,170,11,225,242,225,226,233,99,128,6,81,228,225,237,237,97,2,169,232,169,241,225,242,225,226,233,99,128,252,97,244,225,238,225,242,225,226,233,99,128,252,94,230,225,244,232,225,225,242,225,226,233,99,128,252,96,235,225,243,242,97,2,170,21,170,30,225,242,225,226,233,99,128,252,98,244,225,238,225,242,225,226,233,99,128,252,95,101,132,37,146,170,54,170,61,170,69,170,78,228,225,242,107,128,37,147,236,233,231,232,116,128,37,145,237,229,228,233,245,109,128,37,146,246,97,128,9,54,231,117,2,170,90,170,99,234,225,242,225,244,105,128,10,182,242,237,245,235,232,105,128,10,54,236,243,232,229,236,229,244,232,229,226,242,229,119,128,5,147,226,239,240,239,237,239,230,111,128,49,21,227,232,225,227,249,242,233,236,236,233,99,128,4,73,101,4,170,159,170,224,170,234,170,251,229,110,4,170,170,170,179,170,193,170,209,225,242,225,226,233,99,128,6,52,230,233,238,225,236,225,242,225,226,233,99,128,254,182,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,183,237,229,228,233,225,236,225,242,225,226,233,99,128,254,184,233,227,239,240,244,233,99,128,3,227,241,229,108,129,32,170,170,242,232,229,226,242,229,119,128,32,170,246,97,134,5,176,171,12,171,27,171,41,171,50,171,65,171,81,49,2,171,18,171,23,177,53,128,5,176,53,128,5,176,50,2,171,33,171,37,50,128,5,176,101,128,5,176,232,229,226,242,229,119,128,5,176,238,225,242,242,239,247,232,229,226,242,229,119,128,5,176,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,176,247,233,228,229,232,229,226,242,229,119,128,5,176,232,225,227,249,242,233,236,236,233,99,128,4,187,105,2,171,113,171,124,237,225,227,239,240,244,233,99,128,3,237,110,131,5,233,171,134,171,217,171,226,100,2,171,140,171,206,225,231,229,243,104,130,251,73,171,152,171,161,232,229,226,242,229,119,128,251,73,115,2,171,167,171,187,232,233,238,228,239,116,129,251,44,171,178,232,229,226,242,229,119,128,251,44,233,238,228,239,116,129,251,45,171,197,232,229,226,242,229,119,128,251,45,239,244,232,229,226,242,229,119,128,5,193,232,229,226,242,229,119,128,5,233,115,2,171,232,171,252,232,233,238,228,239,116,129,251,42,171,243,232,229,226,242,229,119,128,251,42,233,238,228,239,116,129,251,43,172,6,232,229,226,242,229,119,128,251,43,239,239,107,128,2,130,105,8,172,39,172,83,172,94,172,119,172,149,172,157,172,170,173,85,231,237,97,131,3,195,172,51,172,55,172,63,49,128,3,194,230,233,238,225,108,128,3,194,236,245,238,225,244,229,243,249,237,226,239,236,231,242,229,229,107,128,3,242,232,233,242,225,231,225,238,97,128,48,87,235,225,244,225,235,225,238,97,129,48,183,172,107,232,225,236,230,247,233,228,244,104,128,255,124,236,245,113,2,172,127,172,136,232,229,226,242,229,119,128,5,189,236,229,230,244,232,229,226,242,229,119,128,5,189,237,233,236,225,114,128,34,60,238,228,239,244,232,229,226,242,229,119,128,5,194,239,115,6,172,185,172,220,172,252,173,24,173,38,173,70,97,2,172,191,172,206,227,233,242,227,236,229,235,239,242,229,225,110,128,50,116,240,225,242,229,238,235,239,242,229,225,110,128,50,20,227,105,2,172,227,172,239,229,245,227,235,239,242,229,225,110,128,49,126,242,227,236,229,235,239,242,229,225,110,128,50,102,107,2,173,2,173,16,233,249,229,239,235,235,239,242,229,225,110,128,49,122,239,242,229,225,110,128,49,69,238,233,229,245,238,235,239,242,229,225,110,128,49,123,112,2,173,44,173,57,225,242,229,238,235,239,242,229,225,110,128,50,6,233,229,245,240,235,239,242,229,225,110,128,49,125,244,233,235,229,245,244,235,239,242,229,225,110,128,49,124,120,141,0,54,173,115,173,124,173,134,173,164,173,171,173,196,173,223,174,1,174,13,174,24,174,57,174,65,174,76,225,242,225,226,233,99,128,6,102,226,229,238,231,225,236,105,128,9,236,227,233,242,227,236,101,129,36,101,173,145,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,143,228,229,246,97,128,9,108,231,117,2,173,178,173,187,234,225,242,225,244,105,128,10,236,242,237,245,235,232,105,128,10,108,232,97,2,173,203,173,214,227,235,225,242,225,226,233,99,128,6,102,238,231,250,232,239,117,128,48,38,105,2,173,229,173,247,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,37,238,230,229,242,233,239,114,128,32,134,237,239,238,239,243,240,225,227,101,128,255,22,239,236,228,243,244,249,236,101,128,247,54,112,2,174,30,174,37,225,242,229,110,128,36,121,229,114,2,174,44,174,50,233,239,100,128,36,141,243,233,225,110,128,6,246,242,239,237,225,110,128,33,117,243,245,240,229,242,233,239,114,128,32,118,116,2,174,82,174,153,229,229,110,2,174,90,174,132,99,2,174,96,174,104,233,242,227,236,101,128,36,111,245,242,242,229,238,227,249,228,229,238,239,237,233,238,225,244,239,242,226,229,238,231,225,236,105,128,9,249,112,2,174,138,174,145,225,242,229,110,128,36,131,229,242,233,239,100,128,36,151,232,225,105,128,14,86,108,2,174,165,174,185,225,243,104,129,0,47,174,173,237,239,238,239,243,240,225,227,101,128,255,15,239,238,103,129,1,127,174,193,228,239,244,225,227,227,229,238,116,128,30,155,109,2,174,211,174,221,233,236,229,230,225,227,101,128,38,58,239,238,239,243,240,225,227,101,128,255,83,111,6,174,246,175,40,175,51,175,76,175,121,175,132,102,2,174,252,175,10,240,225,243,245,241,232,229,226,242,229,119,128,5,195,116,2,175,16,175,25,232,249,240,232,229,110,128,0,173,243,233,231,238,227,249,242,233,236,236,233,99,128,4,76,232,233,242,225,231,225,238,97,128,48,93,235,225,244,225,235,225,238,97,129,48,189,175,64,232,225,236,230,247,233,228,244,104,128,255,127,236,233,228,245,115,2,175,86,175,103,236,239,238,231,239,246,229,242,236,225,249,227,237,98,128,3,56,243,232,239,242,244,239,246,229,242,236,225,249,227,237,98,128,3,55,242,245,243,233,244,232,225,105,128,14,41,115,3,175,140,175,150,175,158,225,236,225,244,232,225,105,128,14,40,239,244,232,225,105,128,14,11,245,225,244,232,225,105,128,14,42,240,97,3,175,176,175,196,175,228,227,101,129,0,32,175,183,232,225,227,235,225,242,225,226,233,99,128,0,32,228,101,129,38,96,175,203,243,245,233,116,2,175,212,175,220,226,236,225,227,107,128,38,96,247,232,233,244,101,128,38,100,242,229,110,128,36,174,241,245,225,242,101,11,176,6,176,17,176,31,176,56,176,73,176,99,176,114,176,147,176,174,176,230,176,245,226,229,236,239,247,227,237,98,128,3,59,99,2,176,23,176,27,99,128,51,196,109,128,51,157,228,233,225,231,239,238,225,236,227,242,239,243,243,232,225,244,227,232,230,233,236,108,128,37,169,232,239,242,233,250,239,238,244,225,236,230,233,236,108,128,37,164,107,2,176,79,176,83,103,128,51,143,109,129,51,158,176,89,227,225,240,233,244,225,108,128,51,206,108,2,176,105,176,109,110,128,51,209,239,103,128,51,210,109,4,176,124,176,128,176,133,176,137,103,128,51,142,233,108,128,51,213,109,128,51,156,243,241,245,225,242,229,100,128,51,161,239,242,244,232,239,231,239,238,225,236,227,242,239,243,243,232,225,244,227,232,230,233,236,108,128,37,166,245,240,240,229,114,2,176,184,176,207,236,229,230,244,244,239,236,239,247,229,242,242,233,231,232,244,230,233,236,108,128,37,167,242,233,231,232,244,244,239,236,239,247,229,242,236,229,230,244,230,233,236,108,128,37,168,246,229,242,244,233,227,225,236,230,233,236,108,128,37,165,247,232,233,244,229,247,233,244,232,243,237,225,236,236,226,236,225,227,107,128,37,163,242,243,241,245,225,242,101,128,51,219,115,2,177,27,177,197,97,4,177,37,177,47,177,54,177,65,226,229,238,231,225,236,105,128,9,183,228,229,246,97,128,9,55,231,245,234,225,242,225,244,105,128,10,183,238,103,8,177,84,177,98,177,112,177,126,177,141,177,155,177,169,177,182,227,233,229,245,227,235,239,242,229,225,110,128,49,73,232,233,229,245,232,235,239,242,229,225,110,128,49,133,233,229,245,238,231,235,239,242,229,225,110,128,49,128,235,233,249,229,239,235,235,239,242,229,225,110,128,49,50,238,233,229,245,238,235,239,242,229,225,110,128,49,101,240,233,229,245,240,235,239,242,229,225,110,128,49,67,243,233,239,243,235,239,242,229,225,110,128,49,70,244,233,235,229,245,244,235,239,242,229,225,110,128,49,56,245,240,229,242,233,239,114,128,246,242,116,2,177,213,177,236,229,242,236,233,238,103,129,0,163,177,224,237,239,238,239,243,240,225,227,101,128,255,225,242,239,235,101,2,177,245,178,6,236,239,238,231,239,246,229,242,236,225,249,227,237,98,128,3,54,243,232,239,242,244,239,246,229,242,236,225,249,227,237,98,128,3,53,117,7,178,40,178,72,178,94,178,105,178,146,178,156,178,160,226,243,229,116,130,34,130,178,51,178,62,238,239,244,229,241,245,225,108,128,34,138,239,242,229,241,245,225,108,128,34,134,99,2,178,78,178,86,227,229,229,228,115,128,34,123,232,244,232,225,116,128,34,11,232,233,242,225,231,225,238,97,128,48,89,107,2,178,111,178,135,225,244,225,235,225,238,97,129,48,185,178,123,232,225,236,230,247,233,228,244,104,128,255,125,245,238,225,242,225,226,233,99,128,6,82,237,237,225,244,233,239,110,128,34,17,110,128,38,60,240,229,242,243,229,116,130,34,131,178,173,178,184,238,239,244,229,241,245,225,108,128,34,139,239,242,229,241,245,225,108,128,34,135,246,243,241,245,225,242,101,128,51,220,249,239,245,247,225,229,242,225,243,241,245,225,242,101,128,51,124,116,144,0,116,179,1,180,10,180,31,180,174,180,214,183,6,186,144,187,219,187,231,187,243,189,20,189,45,189,131,190,55,190,239,191,73,97,10,179,23,179,33,179,54,179,61,179,86,179,164,179,181,179,206,179,220,179,224,226,229,238,231,225,236,105,128,9,164,227,107,2,179,40,179,47,228,239,247,110,128,34,164,236,229,230,116,128,34,163,228,229,246,97,128,9,36,231,117,2,179,68,179,77,234,225,242,225,244,105,128,10,164,242,237,245,235,232,105,128,10,36,104,4,179,96,179,105,179,119,179,149,225,242,225,226,233,99,128,6,55,230,233,238,225,236,225,242,225,226,233,99,128,254,194,105,2,179,125,179,140,238,233,244,233,225,236,225,242,225,226,233,99,128,254,195,242,225,231,225,238,97,128,48,95,237,229,228,233,225,236,225,242,225,226,233,99,128,254,196,233,243,249,239,245,229,242,225,243,241,245,225,242,101,128,51,125,235,225,244,225,235,225,238,97,129,48,191,179,194,232,225,236,230,247,233,228,244,104,128,255,128,244,247,229,229,236,225,242,225,226,233,99,128,6,64,117,128,3,196,118,130,5,234,179,232,180,1,228,225,231,229,115,129,251,74,179,242,104,129,251,74,179,248,232,229,226,242,229,119,128,251,74,232,229,226,242,229,119,128,5,234,98,2,180,16,180,21,225,114,128,1,103,239,240,239,237,239,230,111,128,49,10,99,6,180,45,180,52,180,59,180,68,180,134,180,161,225,242,239,110,128,1,101,227,245,242,108,128,2,168,229,228,233,236,236,97,128,1,99,232,229,104,4,180,80,180,89,180,103,180,119,225,242,225,226,233,99,128,6,134,230,233,238,225,236,225,242,225,226,233,99,128,251,123,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,124,237,229,228,233,225,236,225,242,225,226,233,99,128,251,125,233,242,99,2,180,142,180,147,236,101,128,36,227,245,237,230,236,229,248,226,229,236,239,119,128,30,113,239,237,237,225,225,227,227,229,238,116,128,1,99,100,2,180,180,180,190,233,229,242,229,243,233,115,128,30,151,239,116,2,180,197,180,206,225,227,227,229,238,116,128,30,107,226,229,236,239,119,128,30,109,101,9,180,234,180,245,181,9,182,19,182,44,182,108,182,175,182,180,182,232,227,249,242,233,236,236,233,99,128,4,66,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,173,104,7,181,25,181,34,181,48,181,88,181,118,181,159,182,1,225,242,225,226,233,99,128,6,42,230,233,238,225,236,225,242,225,226,233,99,128,254,150,232,225,232,105,2,181,57,181,72,238,233,244,233,225,236,225,242,225,226,233,99,128,252,162,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,12,105,2,181,94,181,109,238,233,244,233,225,236,225,242,225,226,233,99,128,254,151,242,225,231,225,238,97,128,48,102,234,229,229,237,105,2,181,128,181,143,238,233,244,233,225,236,225,242,225,226,233,99,128,252,161,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,11,109,2,181,165,181,199,225,242,226,245,244,97,2,181,176,181,185,225,242,225,226,233,99,128,6,41,230,233,238,225,236,225,242,225,226,233,99,128,254,148,101,2,181,205,181,218,228,233,225,236,225,242,225,226,233,99,128,254,152,229,237,105,2,181,226,181,241,238,233,244,233,225,236,225,242,225,226,233,99,128,252,164,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,14,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,115,235,225,244,225,235,225,238,97,129,48,198,182,32,232,225,236,230,247,233,228,244,104,128,255,131,108,2,182,50,182,69,229,240,232,239,238,101,129,33,33,182,61,226,236,225,227,107,128,38,14,233,243,232,97,2,182,78,182,93,231,229,228,239,236,225,232,229,226,242,229,119,128,5,160,241,229,244,225,238,225,232,229,226,242,229,119,128,5,169,110,4,182,118,182,127,182,146,182,167,227,233,242,227,236,101,128,36,105,233,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,41,112,2,182,152,182,159,225,242,229,110,128,36,125,229,242,233,239,100,128,36,145,242,239,237,225,110,128,33,121,243,104,128,2,167,116,131,5,216,182,190,182,210,182,219,228,225,231,229,243,104,129,251,56,182,201,232,229,226,242,229,119,128,251,56,232,229,226,242,229,119,128,5,216,243,229,227,249,242,233,236,236,233,99,128,4,181,246,233,114,2,182,240,182,249,232,229,226,242,229,119,128,5,155,236,229,230,244,232,229,226,242,229,119,128,5,155,104,6,183,20,183,172,184,38,184,170,185,77,186,134,97,5,183,32,183,42,183,49,183,74,183,103,226,229,238,231,225,236,105,128,9,165,228,229,246,97,128,9,37,231,117,2,183,56,183,65,234,225,242,225,244,105,128,10,165,242,237,245,235,232,105,128,10,37,108,2,183,80,183,89,225,242,225,226,233,99,128,6,48,230,233,238,225,236,225,242,225,226,233,99,128,254,172,238,244,232,225,235,232,225,116,3,183,118,183,149,183,156,236,239,119,2,183,126,183,137,236,229,230,244,244,232,225,105,128,248,152,242,233,231,232,244,244,232,225,105,128,248,151,244,232,225,105,128,14,76,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,150,101,3,183,180,183,244,184,11,104,4,183,190,183,199,183,213,183,229,225,242,225,226,233,99,128,6,43,230,233,238,225,236,225,242,225,226,233,99,128,254,154,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,155,237,229,228,233,225,236,225,242,225,226,233,99,128,254,156,242,101,2,183,251,184,4,229,248,233,243,244,115,128,34,3,230,239,242,101,128,34,52,244,97,130,3,184,184,20,184,24,49,128,3,209,243,249,237,226,239,236,231,242,229,229,107,128,3,209,105,2,184,44,184,130,229,245,244,104,4,184,57,184,92,184,107,184,116,97,2,184,63,184,78,227,233,242,227,236,229,235,239,242,229,225,110,128,50,121,240,225,242,229,238,235,239,242,229,225,110,128,50,25,227,233,242,227,236,229,235,239,242,229,225,110,128,50,107,235,239,242,229,225,110,128,49,76,240,225,242,229,238,235,239,242,229,225,110,128,50,11,242,244,229,229,110,2,184,140,184,149,227,233,242,227,236,101,128,36,108,112,2,184,155,184,162,225,242,229,110,128,36,128,229,242,233,239,100,128,36,148,111,6,184,184,184,201,184,206,184,220,184,225,185,22,238,225,238,231,237,239,238,244,232,239,244,232,225,105,128,14,17,239,107,128,1,173,240,232,245,244,232,225,239,244,232,225,105,128,14,18,242,110,128,0,254,244,104,3,184,234,185,2,185,12,97,2,184,240,184,250,232,225,238,244,232,225,105,128,14,23,238,244,232,225,105,128,14,16,239,238,231,244,232,225,105,128,14,24,245,238,231,244,232,225,105,128,14,22,245,243,225,238,100,2,185,32,185,43,227,249,242,233,236,236,233,99,128,4,130,243,243,229,240,225,242,225,244,239,114,2,185,58,185,67,225,242,225,226,233,99,128,6,108,240,229,242,243,233,225,110,128,6,108,242,229,101,144,0,51,185,115,185,124,185,134,185,164,185,171,185,181,185,206,185,233,186,11,186,23,186,42,186,53,186,86,186,108,186,116,186,127,225,242,225,226,233,99,128,6,99,226,229,238,231,225,236,105,128,9,233,227,233,242,227,236,101,129,36,98,185,145,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,140,228,229,246,97,128,9,105,229,233,231,232,244,232,115,128,33,92,231,117,2,185,188,185,197,234,225,242,225,244,105,128,10,233,242,237,245,235,232,105,128,10,105,232,97,2,185,213,185,224,227,235,225,242,225,226,233,99,128,6,99,238,231,250,232,239,117,128,48,35,105,2,185,239,186,1,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,34,238,230,229,242,233,239,114,128,32,131,237,239,238,239,243,240,225,227,101,128,255,19,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,246,239,236,228,243,244,249,236,101,128,247,51,112,2,186,59,186,66,225,242,229,110,128,36,118,229,114,2,186,73,186,79,233,239,100,128,36,138,243,233,225,110,128,6,243,241,245,225,242,244,229,242,115,129,0,190,186,99,229,237,228,225,243,104,128,246,222,242,239,237,225,110,128,33,114,243,245,240,229,242,233,239,114,128,0,179,244,232,225,105,128,14,83,250,243,241,245,225,242,101,128,51,148,105,7,186,160,186,171,187,30,187,128,187,140,187,189,187,206,232,233,242,225,231,225,238,97,128,48,97,107,2,186,177,186,201,225,244,225,235,225,238,97,129,48,193,186,189,232,225,236,230,247,233,228,244,104,128,255,129,229,245,116,4,186,213,186,248,187,7,187,16,97,2,186,219,186,234,227,233,242,227,236,229,235,239,242,229,225,110,128,50,112,240,225,242,229,238,235,239,242,229,225,110,128,50,16,227,233,242,227,236,229,235,239,242,229,225,110,128,50,98,235,239,242,229,225,110,128,49,55,240,225,242,229,238,235,239,242,229,225,110,128,50,2,236,228,101,133,2,220,187,46,187,57,187,74,187,86,187,114,226,229,236,239,247,227,237,98,128,3,48,99,2,187,63,187,68,237,98,128,3,3,239,237,98,128,3,3,228,239,245,226,236,229,227,237,98,128,3,96,111,2,187,92,187,102,240,229,242,225,244,239,114,128,34,60,246,229,242,236,225,249,227,237,98,128,3,52,246,229,242,244,233,227,225,236,227,237,98,128,3,62,237,229,243,227,233,242,227,236,101,128,34,151,112,2,187,146,187,176,229,232,97,2,187,154,187,163,232,229,226,242,229,119,128,5,150,236,229,230,244,232,229,226,242,229,119,128,5,150,240,233,231,245,242,237,245,235,232,105,128,10,112,244,236,239,227,249,242,233,236,236,233,227,227,237,98,128,4,131,247,238,225,242,237,229,238,233,225,110,128,5,127,236,233,238,229,226,229,236,239,119,128,30,111,237,239,238,239,243,240,225,227,101,128,255,84,111,7,188,3,188,14,188,25,188,50,188,170,188,182,189,10,225,242,237,229,238,233,225,110,128,5,105,232,233,242,225,231,225,238,97,128,48,104,235,225,244,225,235,225,238,97,129,48,200,188,38,232,225,236,230,247,233,228,244,104,128,255,132,110,3,188,58,188,156,188,161,101,4,188,68,188,137,188,144,188,150,226,225,114,4,188,80,188,109,188,119,188,128,229,248,244,242,97,2,188,90,188,100,232,233,231,232,237,239,100,128,2,229,236,239,247,237,239,100,128,2,233,232,233,231,232,237,239,100,128,2,230,236,239,247,237,239,100,128,2,232,237,233,228,237,239,100,128,2,231,230,233,246,101,128,1,189,243,233,120,128,1,133,244,247,111,128,1,168,239,115,128,3,132,243,241,245,225,242,101,128,51,39,240,225,244,225,235,244,232,225,105,128,14,15,242,244,239,233,243,229,243,232,229,236,236,226,242,225,227,235,229,116,2,188,205,188,235,236,229,230,116,130,48,20,188,216,188,224,243,237,225,236,108,128,254,93,246,229,242,244,233,227,225,108,128,254,57,242,233,231,232,116,130,48,21,188,247,188,255,243,237,225,236,108,128,254,94,246,229,242,244,233,227,225,108,128,254,58,244,225,239,244,232,225,105,128,14,21,240,97,2,189,27,189,39,236,225,244,225,236,232,239,239,107,128,1,171,242,229,110,128,36,175,114,3,189,53,189,84,189,99,225,228,229,237,225,242,107,129,33,34,189,65,115,2,189,71,189,77,225,238,115,128,248,234,229,242,233,102,128,246,219,229,244,242,239,230,236,229,248,232,239,239,107,128,2,136,233,225,103,4,189,111,189,116,189,121,189,126,228,110,128,37,188,236,102,128,37,196,242,116,128,37,186,245,112,128,37,178,115,132,2,166,189,143,189,182,190,32,190,45,225,228,105,130,5,230,189,153,189,173,228,225,231,229,243,104,129,251,70,189,164,232,229,226,242,229,119,128,251,70,232,229,226,242,229,119,128,5,230,101,2,189,188,189,199,227,249,242,233,236,236,233,99,128,4,70,242,101,134,5,181,189,216,189,230,189,235,189,244,190,3,190,19,49,2,189,222,189,226,50,128,5,181,101,128,5,181,178,98,128,5,181,232,229,226,242,229,119,128,5,181,238,225,242,242,239,247,232,229,226,242,229,119,128,5,181,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,181,247,233,228,229,232,229,226,242,229,119,128,5,181,232,229,227,249,242,233,236,236,233,99,128,4,91,245,240,229,242,233,239,114,128,246,243,116,4,190,65,190,115,190,180,190,231,97,3,190,73,190,83,190,90,226,229,238,231,225,236,105,128,9,159,228,229,246,97,128,9,31,231,117,2,190,97,190,106,234,225,242,225,244,105,128,10,159,242,237,245,235,232,105,128,10,31,229,104,4,190,126,190,135,190,149,190,165,225,242,225,226,233,99,128,6,121,230,233,238,225,236,225,242,225,226,233,99,128,251,103,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,104,237,229,228,233,225,236,225,242,225,226,233,99,128,251,105,232,97,3,190,189,190,199,190,206,226,229,238,231,225,236,105,128,9,160,228,229,246,97,128,9,32,231,117,2,190,213,190,222,234,225,242,225,244,105,128,10,160,242,237,245,235,232,105,128,10,32,245,242,238,229,100,128,2,135,117,3,190,247,191,2,191,27,232,233,242,225,231,225,238,97,128,48,100,235,225,244,225,235,225,238,97,129,48,196,191,15,232,225,236,230,247,233,228,244,104,128,255,130,243,237,225,236,108,2,191,37,191,48,232,233,242,225,231,225,238,97,128,48,99,235,225,244,225,235,225,238,97,129,48,195,191,61,232,225,236,230,247,233,228,244,104,128,255,111,119,2,191,79,191,184,101,2,191,85,191,133,236,246,101,3,191,95,191,104,191,125,227,233,242,227,236,101,128,36,107,112,2,191,110,191,117,225,242,229,110,128,36,127,229,242,233,239],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+51200);allocate([100,128,36,147,242,239,237,225,110,128,33,123,238,244,121,3,191,143,191,152,191,163,227,233,242,227,236,101,128,36,115,232,225,238,231,250,232,239,117,128,83,68,112,2,191,169,191,176,225,242,229,110,128,36,135,229,242,233,239,100,128,36,155,111,142,0,50,191,216,191,225,191,235,192,9,192,61,192,86,192,113,192,147,192,159,192,178,192,189,192,222,192,230,192,254,225,242,225,226,233,99,128,6,98,226,229,238,231,225,236,105,128,9,232,227,233,242,227,236,101,129,36,97,191,246,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,139,100,2,192,15,192,21,229,246,97,128,9,104,239,116,2,192,28,192,39,229,238,236,229,225,228,229,114,128,32,37,236,229,225,228,229,114,129,32,37,192,50,246,229,242,244,233,227,225,108,128,254,48,231,117,2,192,68,192,77,234,225,242,225,244,105,128,10,232,242,237,245,235,232,105,128,10,104,232,97,2,192,93,192,104,227,235,225,242,225,226,233,99,128,6,98,238,231,250,232,239,117,128,48,34,105,2,192,119,192,137,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,33,238,230,229,242,233,239,114,128,32,130,237,239,238,239,243,240,225,227,101,128,255,18,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,245,239,236,228,243,244,249,236,101,128,247,50,112,2,192,195,192,202,225,242,229,110,128,36,117,229,114,2,192,209,192,215,233,239,100,128,36,137,243,233,225,110,128,6,242,242,239,237,225,110,128,33,113,115,2,192,236,192,244,244,242,239,235,101,128,1,187,245,240,229,242,233,239,114,128,0,178,244,104,2,193,5,193,10,225,105,128,14,82,233,242,228,115,128,33,84,117,145,0,117,193,55,193,63,193,104,193,161,194,43,194,80,194,203,194,219,195,14,195,84,195,165,195,174,196,37,196,61,196,169,196,197,197,55,225,227,245,244,101,128,0,250,98,4,193,73,193,78,193,87,193,97,225,114,128,2,137,229,238,231,225,236,105,128,9,137,239,240,239,237,239,230,111,128,49,40,242,229,246,101,128,1,109,99,3,193,112,193,119,193,151,225,242,239,110,128,1,212,233,242,99,2,193,127,193,132,236,101,128,36,228,245,237,230,236,229,120,129,0,251,193,143,226,229,236,239,119,128,30,119,249,242,233,236,236,233,99,128,4,67,100,5,193,173,193,184,193,207,193,213,194,33,225,244,244,225,228,229,246,97,128,9,81,226,108,2,193,191,193,199,225,227,245,244,101,128,1,113,231,242,225,246,101,128,2,21,229,246,97,128,9,9,233,229,242,229,243,233,115,133,0,252,193,233,193,241,193,249,194,16,194,24,225,227,245,244,101,128,1,216,226,229,236,239,119,128,30,115,99,2,193,255,194,6,225,242,239,110,128,1,218,249,242,233,236,236,233,99,128,4,241,231,242,225,246,101,128,1,220,237,225,227,242,239,110,128,1,214,239,244,226,229,236,239,119,128,30,229,103,2,194,49,194,56,242,225,246,101,128,0,249,117,2,194,62,194,71,234,225,242,225,244,105,128,10,137,242,237,245,235,232,105,128,10,9,104,3,194,88,194,98,194,176,233,242,225,231,225,238,97,128,48,70,111,2,194,104,194,114,239,235,225,226,239,246,101,128,30,231,242,110,133,1,176,194,129,194,137,194,148,194,156,194,168,225,227,245,244,101,128,30,233,228,239,244,226,229,236,239,119,128,30,241,231,242,225,246,101,128,30,235,232,239,239,235,225,226,239,246,101,128,30,237,244,233,236,228,101,128,30,239,245,238,231,225,242,245,237,236,225,245,116,129,1,113,194,192,227,249,242,233,236,236,233,99,128,4,243,233,238,246,229,242,244,229,228,226,242,229,246,101,128,2,23,107,3,194,227,194,251,195,6,225,244,225,235,225,238,97,129,48,166,194,239,232,225,236,230,247,233,228,244,104,128,255,115,227,249,242,233,236,236,233,99,128,4,121,239,242,229,225,110,128,49,92,109,2,195,20,195,73,97,2,195,26,195,59,227,242,239,110,130,1,107,195,37,195,48,227,249,242,233,236,236,233,99,128,4,239,228,233,229,242,229,243,233,115,128,30,123,244,242,225,231,245,242,237,245,235,232,105,128,10,65,239,238,239,243,240,225,227,101,128,255,85,110,2,195,90,195,145,228,229,242,243,227,239,242,101,132,0,95,195,109,195,115,195,127,195,138,228,226,108,128,32,23,237,239,238,239,243,240,225,227,101,128,255,63,246,229,242,244,233,227,225,108,128,254,51,247,225,246,121,128,254,79,105,2,195,151,195,156,239,110,128,34,42,246,229,242,243,225,108,128,34,0,239,231,239,238,229,107,128,1,115,112,5,195,186,195,193,195,201,195,216,196,11,225,242,229,110,128,36,176,226,236,239,227,107,128,37,128,240,229,242,228,239,244,232,229,226,242,229,119,128,5,196,243,233,236,239,110,131,3,197,195,230,195,251,196,3,228,233,229,242,229,243,233,115,129,3,203,195,243,244,239,238,239,115,128,3,176,236,225,244,233,110,128,2,138,244,239,238,239,115,128,3,205,244,225,227,107,2,196,20,196,31,226,229,236,239,247,227,237,98,128,3,29,237,239,100,128,2,212,114,2,196,43,196,55,225,231,245,242,237,245,235,232,105,128,10,115,233,238,103,128,1,111,115,3,196,69,196,84,196,129,232,239,242,244,227,249,242,233,236,236,233,99,128,4,94,237,225,236,108,2,196,93,196,104,232,233,242,225,231,225,238,97,128,48,69,235,225,244,225,235,225,238,97,129,48,165,196,117,232,225,236,230,247,233,228,244,104,128,255,105,244,242,225,233,231,232,116,2,196,141,196,152,227,249,242,233,236,236,233,99,128,4,175,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,177,244,233,236,228,101,130,1,105,196,181,196,189,225,227,245,244,101,128,30,121,226,229,236,239,119,128,30,117,117,5,196,209,196,219,196,226,196,251,197,11,226,229,238,231,225,236,105,128,9,138,228,229,246,97,128,9,10,231,117,2,196,233,196,242,234,225,242,225,244,105,128,10,138,242,237,245,235,232,105,128,10,10,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,66,246,239,247,229,236,243,233,231,110,3,197,27,197,37,197,44,226,229,238,231,225,236,105,128,9,194,228,229,246,97,128,9,66,231,245,234,225,242,225,244,105,128,10,194,246,239,247,229,236,243,233,231,110,3,197,71,197,81,197,88,226,229,238,231,225,236,105,128,9,193,228,229,246,97,128,9,65,231,245,234,225,242,225,244,105,128,10,193,118,139,0,118,197,125,198,17,198,26,198,37,198,222,198,229,199,71,199,83,199,183,199,191,199,212,97,4,197,135,197,142,197,167,197,178,228,229,246,97,128,9,53,231,117,2,197,149,197,158,234,225,242,225,244,105,128,10,181,242,237,245,235,232,105,128,10,53,235,225,244,225,235,225,238,97,128,48,247,118,132,5,213,197,190,197,217,197,249,198,5,228,225,231,229,243,104,130,251,53,197,203,197,208,182,53,128,251,53,232,229,226,242,229,119,128,251,53,104,2,197,223,197,231,229,226,242,229,119,128,5,213,239,236,225,109,129,251,75,197,240,232,229,226,242,229,119,128,251,75,246,225,246,232,229,226,242,229,119,128,5,240,249,239,228,232,229,226,242,229,119,128,5,241,227,233,242,227,236,101,128,36,229,228,239,244,226,229,236,239,119,128,30,127,101,6,198,51,198,62,198,126,198,137,198,143,198,210,227,249,242,233,236,236,233,99,128,4,50,104,4,198,72,198,81,198,95,198,111,225,242,225,226,233,99,128,6,164,230,233,238,225,236,225,242,225,226,233,99,128,251,107,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,108,237,229,228,233,225,236,225,242,225,226,233,99,128,251,109,235,225,244,225,235,225,238,97,128,48,249,238,245,115,128,38,64,242,244,233,227,225,108,2,198,154,198,160,226,225,114,128,0,124,236,233,238,101,4,198,173,198,184,198,195,198,204,225,226,239,246,229,227,237,98,128,3,13,226,229,236,239,247,227,237,98,128,3,41,236,239,247,237,239,100,128,2,204,237,239,100,128,2,200,247,225,242,237,229,238,233,225,110,128,5,126,232,239,239,107,128,2,139,105,3,198,237,198,248,199,31,235,225,244,225,235,225,238,97,128,48,248,242,225,237,97,3,199,3,199,13,199,20,226,229,238,231,225,236,105,128,9,205,228,229,246,97,128,9,77,231,245,234,225,242,225,244,105,128,10,205,243,225,242,231,97,3,199,43,199,53,199,60,226,229,238,231,225,236,105,128,9,131,228,229,246,97,128,9,3,231,245,234,225,242,225,244,105,128,10,131,237,239,238,239,243,240,225,227,101,128,255,86,111,3,199,91,199,102,199,172,225,242,237,229,238,233,225,110,128,5,120,233,227,229,100,2,199,111,199,147,233,244,229,242,225,244,233,239,110,2,199,125,199,136,232,233,242,225,231,225,238,97,128,48,158,235,225,244,225,235,225,238,97,128,48,254,237,225,242,235,235,225,238,97,129,48,155,199,160,232,225,236,230,247,233,228,244,104,128,255,158,235,225,244,225,235,225,238,97,128,48,250,240,225,242,229,110,128,36,177,116,2,199,197,199,204,233,236,228,101,128,30,125,245,242,238,229,100,128,2,140,117,2,199,218,199,229,232,233,242,225,231,225,238,97,128,48,148,235,225,244,225,235,225,238,97,128,48,244,119,143,0,119,200,18,200,251,201,5,201,28,201,68,201,135,201,143,203,114,203,155,203,167,203,242,203,250,204,1,204,12,204,21,97,8,200,36,200,43,200,53,200,64,200,102,200,134,200,146,200,182,227,245,244,101,128,30,131,229,235,239,242,229,225,110,128,49,89,232,233,242,225,231,225,238,97,128,48,143,107,2,200,70,200,94,225,244,225,235,225,238,97,129,48,239,200,82,232,225,236,230,247,233,228,244,104,128,255,156,239,242,229,225,110,128,49,88,243,237,225,236,108,2,200,112,200,123,232,233,242,225,231,225,238,97,128,48,142,235,225,244,225,235,225,238,97,128,48,238,244,244,239,243,241,245,225,242,101,128,51,87,118,2,200,152,200,160,229,228,225,243,104,128,48,28,249,245,238,228,229,242,243,227,239,242,229,246,229,242,244,233,227,225,108,128,254,52,119,3,200,190,200,199,200,213,225,242,225,226,233,99,128,6,72,230,233,238,225,236,225,242,225,226,233,99,128,254,238,232,225,237,250,225,225,226,239,246,101,2,200,228,200,237,225,242,225,226,233,99,128,6,36,230,233,238,225,236,225,242,225,226,233,99,128,254,134,226,243,241,245,225,242,101,128,51,221,227,233,242,99,2,201,14,201,19,236,101,128,36,230,245,237,230,236,229,120,128,1,117,100,2,201,34,201,44,233,229,242,229,243,233,115,128,30,133,239,116,2,201,51,201,60,225,227,227,229,238,116,128,30,135,226,229,236,239,119,128,30,137,101,4,201,78,201,89,201,101,201,125,232,233,242,225,231,225,238,97,128,48,145,233,229,242,243,244,242,225,243,115,128,33,24,107,2,201,107,201,117,225,244,225,235,225,238,97,128,48,241,239,242,229,225,110,128,49,94,239,235,239,242,229,225,110,128,49,93,231,242,225,246,101,128,30,129,232,233,244,101,8,201,164,201,173,202,1,202,91,202,175,202,220,203,16,203,72,226,245,236,236,229,116,128,37,230,99,2,201,179,201,199,233,242,227,236,101,129,37,203,201,189,233,238,246,229,242,243,101,128,37,217,239,242,238,229,242,226,242,225,227,235,229,116,2,201,216,201,236,236,229,230,116,129,48,14,201,225,246,229,242,244,233,227,225,108,128,254,67,242,233,231,232,116,129,48,15,201,246,246,229,242,244,233,227,225,108,128,254,68,100,2,202,7,202,48,233,225,237,239,238,100,129,37,199,202,18,227,239,238,244,225,233,238,233,238,231,226,236,225,227,235,243,237,225,236,236,228,233,225,237,239,238,100,128,37,200,239,247,238,240,239,233,238,244,233,238,103,2,202,64,202,80,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,191,244,242,233,225,238,231,236,101,128,37,189,236,101,2,202,98,202,140,230,244,240,239,233,238,244,233,238,103,2,202,113,202,129,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,195,244,242,233,225,238,231,236,101,128,37,193,238,244,233,227,245,236,225,242,226,242,225,227,235,229,116,2,202,160,202,167,236,229,230,116,128,48,22,242,233,231,232,116,128,48,23,242,233,231,232,244,240,239,233,238,244,233,238,103,2,202,193,202,209,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,185,244,242,233,225,238,231,236,101,128,37,183,115,3,202,228,203,2,203,10,109,2,202,234,202,246,225,236,236,243,241,245,225,242,101,128,37,171,233,236,233,238,231,230,225,227,101,128,38,58,241,245,225,242,101,128,37,161,244,225,114,128,38,6,116,2,203,22,203,33,229,236,229,240,232,239,238,101,128,38,15,239,242,244,239,233,243,229,243,232,229,236,236,226,242,225,227,235,229,116,2,203,57,203,64,236,229,230,116,128,48,24,242,233,231,232,116,128,48,25,245,240,240,239,233,238,244,233,238,103,2,203,87,203,103,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,181,244,242,233,225,238,231,236,101,128,37,179,105,2,203,120,203,131,232,233,242,225,231,225,238,97,128,48,144,107,2,203,137,203,147,225,244,225,235,225,238,97,128,48,240,239,242,229,225,110,128,49,95,237,239,238,239,243,240,225,227,101,128,255,87,111,4,203,177,203,188,203,213,203,231,232,233,242,225,231,225,238,97,128,48,146,235,225,244,225,235,225,238,97,129,48,242,203,201,232,225,236,230,247,233,228,244,104,128,255,102,110,129,32,169,203,219,237,239,238,239,243,240,225,227,101,128,255,230,247,225,229,238,244,232,225,105,128,14,39,240,225,242,229,110,128,36,178,242,233,238,103,128,30,152,243,245,240,229,242,233,239,114,128,2,183,244,245,242,238,229,100,128,2,141,249,238,110,128,1,191,120,137,0,120,204,49,204,60,204,71,204,80,204,107,204,120,204,124,204,136,204,144,225,226,239,246,229,227,237,98,128,3,61,226,239,240,239,237,239,230,111,128,49,18,227,233,242,227,236,101,128,36,231,100,2,204,86,204,96,233,229,242,229,243,233,115,128,30,141,239,244,225,227,227,229,238,116,128,30,139,229,232,225,242,237,229,238,233,225,110,128,5,109,105,128,3,190,237,239,238,239,243,240,225,227,101,128,255,88,240,225,242,229,110,128,36,179,243,245,240,229,242,233,239,114,128,2,227,121,143,0,121,204,189,205,148,205,171,205,211,207,177,207,185,207,202,208,10,208,22,209,19,209,59,209,71,209,82,209,103,210,76,97,11,204,213,204,225,204,235,204,242,204,249,205,3,205,28,205,39,205,77,205,90,205,136,225,228,239,243,241,245,225,242,101,128,51,78,226,229,238,231,225,236,105,128,9,175,227,245,244,101,128,0,253,228,229,246,97,128,9,47,229,235,239,242,229,225,110,128,49,82,231,117,2,205,10,205,19,234,225,242,225,244,105,128,10,175,242,237,245,235,232,105,128,10,47,232,233,242,225,231,225,238,97,128,48,132,107,2,205,45,205,69,225,244,225,235,225,238,97,129,48,228,205,57,232,225,236,230,247,233,228,244,104,128,255,148,239,242,229,225,110,128,49,81,237,225,235,235,225,238,244,232,225,105,128,14,78,243,237,225,236,108,2,205,100,205,111,232,233,242,225,231,225,238,97,128,48,131,235,225,244,225,235,225,238,97,129,48,227,205,124,232,225,236,230,247,233,228,244,104,128,255,108,244,227,249,242,233,236,236,233,99,128,4,99,227,233,242,99,2,205,157,205,162,236,101,128,36,232,245,237,230,236,229,120,128,1,119,100,2,205,177,205,187,233,229,242,229,243,233,115,128,0,255,239,116,2,205,194,205,203,225,227,227,229,238,116,128,30,143,226,229,236,239,119,128,30,245,101,7,205,227,206,235,206,244,207,6,207,38,207,114,207,165,104,8,205,245,205,254,206,32,206,46,206,119,206,135,206,194,206,212,225,242,225,226,233,99,128,6,74,226,225,242,242,229,101,2,206,9,206,18,225,242,225,226,233,99,128,6,210,230,233,238,225,236,225,242,225,226,233,99,128,251,175,230,233,238,225,236,225,242,225,226,233,99,128,254,242,232,225,237,250,225,225,226,239,246,101,4,206,65,206,74,206,88,206,104,225,242,225,226,233,99,128,6,38,230,233,238,225,236,225,242,225,226,233,99,128,254,138,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,139,237,229,228,233,225,236,225,242,225,226,233,99,128,254,140,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,243,237,101,2,206,142,206,155,228,233,225,236,225,242,225,226,233,99,128,254,244,229,237,105,2,206,163,206,178,238,233,244,233,225,236,225,242,225,226,233,99,128,252,221,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,88,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,148,244,232,242,229,229,228,239,244,243,226,229,236,239,247,225,242,225,226,233,99,128,6,209,235,239,242,229,225,110,128,49,86,110,129,0,165,206,250,237,239,238,239,243,240,225,227,101,128,255,229,111,2,207,12,207,21,235,239,242,229,225,110,128,49,85,242,233,238,232,233,229,245,232,235,239,242,229,225,110,128,49,134,114,3,207,46,207,82,207,94,225,232,226,229,238,249,239,237,111,2,207,60,207,69,232,229,226,242,229,119,128,5,170,236,229,230,244,232,229,226,242,229,119,128,5,170,233,227,249,242,233,236,236,233,99,128,4,75,245,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,249,243,233,229,245,238,103,3,207,127,207,136,207,152,235,239,242,229,225,110,128,49,129,240,225,238,243,233,239,243,235,239,242,229,225,110,128,49,131,243,233,239,243,235,239,242,229,225,110,128,49,130,244,233,246,232,229,226,242,229,119,128,5,154,231,242,225,246,101,128,30,243,232,239,239,107,129,1,180,207,194,225,226,239,246,101,128,30,247,105,5,207,214,207,225,207,236,207,245,207,253,225,242,237,229,238,233,225,110,128,5,117,227,249,242,233,236,236,233,99,128,4,87,235,239,242,229,225,110,128,49,98,238,249,225,238,103,128,38,47,247,238,225,242,237,229,238,233,225,110,128,5,130,237,239,238,239,243,240,225,227,101,128,255,89,111,7,208,38,208,108,208,119,208,129,208,167,208,213,208,222,100,131,5,217,208,48,208,68,208,77,228,225,231,229,243,104,129,251,57,208,59,232,229,226,242,229,119,128,251,57,232,229,226,242,229,119,128,5,217,249,239,100,2,208,85,208,94,232,229,226,242,229,119,128,5,242,240,225,244,225,232,232,229,226,242,229,119,128,251,31,232,233,242,225,231,225,238,97,128,48,136,233,235,239,242,229,225,110,128,49,137,107,2,208,135,208,159,225,244,225,235,225,238,97,129,48,232,208,147,232,225,236,230,247,233,228,244,104,128,255,150,239,242,229,225,110,128,49,91,243,237,225,236,108,2,208,177,208,188,232,233,242,225,231,225,238,97,128,48,135,235,225,244,225,235,225,238,97,129,48,231,208,201,232,225,236,230,247,233,228,244,104,128,255,110,244,231,242,229,229,107,128,3,243,121,2,208,228,209,9,97,2,208,234,208,244,229,235,239,242,229,225,110,128,49,136,107,2,208,250,209,2,239,242,229,225,110,128,49,135,244,232,225,105,128,14,34,233,238,231,244,232,225,105,128,14,13,112,2,209,25,209,32,225,242,229,110,128,36,180,239,231,229,231,242,225,237,237,229,238,105,129,3,122,209,48,231,242,229,229,235,227,237,98,128,3,69,114,129,1,166,209,65,233,238,103,128,30,153,243,245,240,229,242,233,239,114,128,2,184,116,2,209,88,209,95,233,236,228,101,128,30,249,245,242,238,229,100,128,2,142,117,5,209,115,209,126,209,136,209,174,210,50,232,233,242,225,231,225,238,97,128,48,134,233,235,239,242,229,225,110,128,49,140,107,2,209,142,209,166,225,244,225,235,225,238,97,129,48,230,209,154,232,225,236,230,247,233,228,244,104,128,255,149,239,242,229,225,110,128,49,96,115,3,209,182,209,220,210,5,226,233,103,2,209,190,209,201,227,249,242,233,236,236,233,99,128,4,107,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,109,236,233,244,244,236,101,2,209,231,209,242,227,249,242,233,236,236,233,99,128,4,103,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,105,237,225,236,108,2,210,14,210,25,232,233,242,225,231,225,238,97,128,48,133,235,225,244,225,235,225,238,97,129,48,229,210,38,232,225,236,230,247,233,228,244,104,128,255,109,249,101,2,210,57,210,66,235,239,242,229,225,110,128,49,139,239,235,239,242,229,225,110,128,49,138,249,97,2,210,83,210,93,226,229,238,231,225,236,105,128,9,223,228,229,246,97,128,9,95,122,142,0,122,210,132,211,140,211,151,211,194,211,221,213,0,213,108,213,150,213,162,213,174,213,202,213,210,213,226,213,235,97,10,210,154,210,165,210,172,210,179,210,190,211,12,211,42,211,53,211,89,211,101,225,242,237,229,238,233,225,110,128,5,102,227,245,244,101,128,1,122,228,229,246,97,128,9,91,231,245,242,237,245,235,232,105,128,10,91,104,4,210,200,210,209,210,223,210,253,225,242,225,226,233,99,128,6,56,230,233,238,225,236,225,242,225,226,233,99,128,254,198,105,2,210,229,210,244,238,233,244,233,225,236,225,242,225,226,233,99,128,254,199,242,225,231,225,238,97,128,48,86,237,229,228,233,225,236,225,242,225,226,233,99,128,254,200,233,110,2,211,19,211,28,225,242,225,226,233,99,128,6,50,230,233,238,225,236,225,242,225,226,233,99,128,254,176,235,225,244,225,235,225,238,97,128,48,182,241,229,102,2,211,61,211,75,231,225,228,239,236,232,229,226,242,229,119,128,5,149,241,225,244,225,238,232,229,226,242,229,119,128,5,148,242,241,225,232,229,226,242,229,119,128,5,152,249,233,110,130,5,214,211,111,211,131,228,225,231,229,243,104,129,251,54,211,122,232,229,226,242,229,119,128,251,54,232,229,226,242,229,119,128,5,214,226,239,240,239,237,239,230,111,128,49,23,99,3,211,159,211,166,211,188,225,242,239,110,128,1,126,233,242,99,2,211,174,211,179,236,101,128,36,233,245,237,230,236,229,120,128,30,145,245,242,108,128,2,145,228,239,116,130,1,124,211,204,211,213,225,227,227,229,238,116,128,1,124,226,229,236,239,119,128,30,147,101,6,211,235,211,246,212,33,212,44,212,55,212,251,227,249,242,233,236,236,233,99,128,4,55,100,2,211,252,212,15,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,153,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,223,232,233,242,225,231,225,238,97,128,48,92,235,225,244,225,235,225,238,97,128,48,188,242,111,140,0,48,212,84,212,93,212,103,212,110,212,135,212,148,212,159,212,171,212,182,212,192,212,203,212,210,225,242,225,226,233,99,128,6,96,226,229,238,231,225,236,105,128,9,230,228,229,246,97,128,9,102,231,117,2,212,117,212,126,234,225,242,225,244,105,128,10,230,242,237,245,235,232,105,128,10,102,232,225,227,235,225,242,225,226,233,99,128,6,96,233,238,230,229,242,233,239,114,128,32,128,237,239,238,239,243,240,225,227,101,128,255,16,239,236,228,243,244,249,236,101,128,247,48,240,229,242,243,233,225,110,128,6,240,243,245,240,229,242,233,239,114,128,32,112,244,232,225,105,128,14,80,247,233,228,244,104,3,212,222,212,231,212,243,234,239,233,238,229,114,128,254,255,238,239,238,234,239,233,238,229,114,128,32,12,243,240,225,227,101,128,32,11,244,97,128,3,182,104,2,213,6,213,17,226,239,240,239,237,239,230,111,128,49,19,101,4,213,27,213,38,213,54,213,65,225,242,237,229,238,233,225,110,128,5,106,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,194,227,249,242,233,236,236,233,99,128,4,54,100,2,213,71,213,90,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,151,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,221,105,3,213,116,213,127,213,138,232,233,242,225,231,225,238,97,128,48,88,235,225,244,225,235,225,238,97,128,48,184,238,239,242,232,229,226,242,229,119,128,5,174,236,233,238,229,226,229,236,239,119,128,30,149,237,239,238,239,243,240,225,227,101,128,255,90,111,2,213,180,213,191,232,233,242,225,231,225,238,97,128,48,94,235,225,244,225,235,225,238,97,128,48,190,240,225,242,229,110,128,36,181,242,229,244,242,239,230,236,229,248,232,239,239,107,128,2,144,243,244,242,239,235,101,128,1,182,117,2,213,241,213,252,232,233,242,225,231,225,238,97,128,48,90,235,225,244,225,235,225,238,97,128,48,186,68,101,108,116,97,0,79,109,101,103,97,0,102,114,97,99,116,105,111,110,0,104,121,112,104,101,110,0,109,97,99,114,111,110,0,109,117,0,112,101,114,105,111,100,99,101,110,116,101,114,101,100,0,115,112,97,99,101,0,84,99,111,109,109,97,97,99,99,101,110,116,0,116,99,111,109,109,97,97,99,99,101,110,116,0,46,110,117,108,108,0,110,111,110,109,97,114,107,105,110,103,114,101,116,117,114,110,0,110,111,116,101,113,117,97,108,0,105,110,102,105,110,105,116,121,0,108,101,115,115,101,113,117,97,108,0,103,114,101,97,116,101,114,101,113,117,97,108,0,112,97,114,116,105,97,108,100,105,102,102,0,115,117,109,109,97,116,105,111,110,0,112,114,111,100,117,99,116,0,112,105,0,105,110,116,101,103,114,97,108,0,79,109,101,103,97,0,114,97,100,105,99,97,108,0,97,112,112,114,111,120,101,113,117,97,108,0,68,101,108,116,97,0,110,111,110,98,114,101,97,107,105,110,103,115,112,97,99,101,0,108,111,122,101,110,103,101,0,97,112,112,108,101,0,102,114,97,110,99,0,71,98,114,101,118,101,0,103,98,114,101,118,101,0,73,100,111,116,97,99,99,101,110,116,0,83,99,101,100,105,108,108,97,0,115,99,101,100,105,108,108,97,0,67,97,99,117,116,101,0,99,97,99,117,116,101,0,67,99,97,114,111,110,0,99,99,97,114,111,110,0,100,99,114,111,97,116,0,46,110,111,116,100,101,102,0,115,112,97,99,101,0,101,120,99,108,97,109,0,113,117,111,116,101,100,98,108,0,110,117,109,98,101,114,115,105,103,110,0,100,111,108,108,97,114,0,112,101,114,99,101,110,116,0,97,109,112,101,114,115,97,110,100,0,113,117,111,116,101,114,105,103,104,116,0,112,97,114,101,110,108,101,102,116,0,112,97,114,101,110,114,105,103,104,116,0,97,115,116,101,114,105,115,107,0,112,108,117,115,0,99,111,109,109,97,0,104,121,112,104,101,110,0,112,101,114,105,111,100,0,115,108,97,115,104,0,122,101,114,111,0,111,110,101,0,116,119,111,0,116,104,114,101,101,0,102,111,117,114,0,102,105,118,101,0,115,105,120,0,115,101,118,101,110,0,101,105,103,104,116,0,110,105,110,101,0,99,111,108,111,110,0,115,101,109,105,99,111,108,111,110,0,108,101,115,115,0,101,113,117,97,108,0,103,114,101,97,116,101,114,0,113,117,101,115,116,105,111,110,0,97,116,0,65,0,66,0,67,0,68,0,69,0,70,0,71,0,72,0,73,0,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,98,114,97,99,107,101,116,108,101,102,116,0,98,97,99,107,115,108,97,115,104,0,98,114,97,99,107,101,116,114,105,103,104,116,0,97,115,99,105,105,99,105,114,99,117,109,0,117,110,100,101,114,115,99,111,114,101,0,113,117,111,116,101,108,101,102,116,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,111,0,112,0,113,0,114,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,98,114,97,99,101,108,101,102,116,0,98,97,114,0,98,114,97,99,101,114,105,103,104,116,0,97,115,99,105,105,116,105,108,100,101,0,101,120,99,108,97,109,100,111,119,110,0,99,101,110,116,0,115,116,101,114,108,105,110,103,0,102,114,97,99,116,105,111,110,0,121,101,110,0,102,108,111,114,105,110,0,115,101,99,116,105,111,110,0,99,117,114,114,101,110,99,121,0,113,117,111,116,101,115,105,110,103,108,101,0,113,117,111,116,101,100,98,108,108,101,102,116,0,103,117,105,108,108,101,109,111,116,108,101,102,116,0,103,117,105,108,115,105,110,103,108,108,101,102,116,0,103,117,105,108,115,105,110,103,108,114,105,103,104,116,0,102,105,0,102,108,0,101,110,100,97,115,104,0,100,97,103,103,101,114,0,100,97,103,103,101,114,100,98,108,0,112,101,114,105,111,100,99,101,110,116,101,114,101,100,0,112,97,114,97,103,114,97,112,104,0,98,117,108,108,101,116,0,113,117,111,116,101,115,105,110,103,108,98,97,115,101,0,113,117,111,116,101,100,98,108,98,97,115,101,0,113,117,111,116,101,100,98,108,114,105,103,104,116,0,103,117,105,108,108,101,109,111,116,114,105,103,104,116,0,101,108,108,105,112,115,105,115,0,112,101,114,116,104,111,117,115,97,110,100,0,113,117,101,115,116,105,111,110,100,111,119,110,0,103,114,97,118,101,0,97,99,117,116,101,0,99,105,114,99,117,109,102,108,101,120,0,116,105,108,100,101,0,109,97,99,114,111,110,0,98,114,101,118,101,0,100,111,116,97,99,99,101,110,116,0,100,105,101,114,101,115,105,115,0,114,105,110,103,0,99,101,100,105,108,108,97,0,104,117,110,103,97,114,117,109,108,97,117,116,0,111,103,111,110,101,107,0,99,97,114,111,110,0,101,109,100,97,115,104,0,65,69,0,111,114,100,102,101,109,105,110,105,110,101,0,76,115,108,97,115,104,0,79,115,108,97,115,104,0,79,69,0,111,114,100,109,97,115,99,117,108,105,110,101,0,97,101,0,100,111,116,108,101,115,115,105,0,108,115,108,97,115,104,0,111,115,108,97,115,104,0,111,101,0,103,101,114,109,97,110,100,98,108,115,0,111,110,101,115,117,112,101,114,105,111,114,0,108,111,103,105,99,97,108,110,111,116,0,109,117,0,116,114,97,100,101,109,97,114,107,0,69,116,104,0,111,110,101,104,97,108,102,0,112,108,117,115,109,105,110,117,115,0,84,104,111,114,110,0,111,110,101,113,117,97,114,116,101,114,0,100,105,118,105,100,101,0,98,114,111,107,101,110,98,97,114,0,100,101,103,114,101,101,0,116,104,111,114,110,0,116,104,114,101,101,113,117,97,114,116,101,114,115,0,116,119,111,115,117,112,101,114,105,111,114,0,114,101,103,105,115,116,101,114,101,100,0,109,105,110,117,115,0,101,116,104,0,109,117,108,116,105,112,108,121,0,116,104,114,101,101,115,117,112,101,114,105,111,114,0,99,111,112,121,114,105,103,104,116,0,65,97,99,117,116,101,0,65,99,105,114,99,117,109,102,108,101,120,0,65,100,105,101,114,101,115,105,115,0,65,103,114,97,118,101,0,65,114,105,110,103,0,65,116,105,108,100,101,0,67,99,101,100,105,108,108,97,0,69,97,99,117,116,101,0,69,99,105,114,99,117,109,102,108,101,120,0,69,100,105,101,114,101,115,105,115,0,69,103,114,97,118,101,0,73,97,99,117,116,101,0,73,99,105,114,99,117,109,102,108,101,120,0,73,100,105,101,114,101,115,105,115,0,73,103,114,97,118,101,0,78,116,105,108,100,101,0,79,97,99,117,116,101,0,79,99,105,114,99,117,109,102,108,101,120,0,79,100,105,101,114,101,115,105,115,0,79,103,114,97,118,101,0,79,116,105,108,100,101,0,83,99,97,114,111,110,0,85,97,99,117,116,101,0,85,99,105,114,99,117,109,102,108,101,120,0,85,100,105,101,114,101,115,105,115,0,85,103,114,97,118,101,0,89,97,99,117,116,101,0,89,100,105,101,114,101,115,105,115,0,90,99,97,114,111,110,0,97,97,99,117,116,101,0,97,99,105,114,99,117,109,102,108,101,120,0,97,100,105,101,114,101,115,105,115,0,97,103,114,97,118,101,0,97,114,105,110,103,0,97,116,105,108,100,101,0,99,99,101,100,105,108,108,97,0,101,97,99,117,116,101,0,101,99,105,114,99,117,109,102,108,101,120,0,101,100,105,101,114,101,115,105,115,0,101,103,114,97,118,101,0,105,97,99,117,116,101,0,105,99,105,114,99,117,109,102,108,101,120,0,105,100,105,101,114,101,115,105,115,0,105,103,114,97,118,101,0,110,116,105,108,100,101,0,111,97,99,117,116,101,0,111,99,105,114,99,117,109,102,108,101,120,0,111,100,105,101,114,101,115,105,115,0,111,103,114,97,118,101,0,111,116,105,108,100,101,0,115,99,97,114,111,110,0,117,97,99,117,116,101,0,117,99,105,114,99,117,109,102,108,101,120,0,117,100,105,101,114,101,115,105,115,0,117,103,114,97,118,101,0,121,97,99,117,116,101,0,121,100,105,101,114,101,115,105,115,0,122,99,97,114,111,110,0,101,120,99,108,97,109,115,109,97,108,108,0,72,117,110,103,97,114,117,109,108,97,117,116,115,109,97,108,108,0,100,111,108,108,97,114,111,108,100,115,116,121,108,101,0,100,111,108,108,97,114,115,117,112,101,114,105,111,114,0,97,109,112,101,114,115,97,110,100,115,109,97,108,108,0,65,99,117,116,101,115,109,97,108,108,0,112,97,114,101,110,108,101,102,116,115,117,112,101,114,105,111,114,0,112,97,114,101,110,114,105,103,104,116,115,117,112,101,114,105,111,114,0,116,119,111,100,111,116,101,110,108,101,97,100,101,114,0,111,110,101,100,111,116,101,110,108,101,97,100,101,114,0,122,101,114,111,111,108,100,115,116,121,108,101,0,111,110,101,111,108,100,115,116,121,108,101,0,116,119,111,111,108,100,115,116,121,108,101,0,116,104,114,101,101,111,108,100,115,116,121,108,101,0,102,111,117,114,111,108,100,115,116,121,108,101,0,102,105,118,101,111,108,100,115,116,121,108,101,0,115,105,120,111,108,100,115,116,121,108,101,0,115,101,118,101,110,111,108,100,115,116,121,108,101,0,101,105,103,104,116,111,108,100,115,116,121,108,101,0,110,105,110,101,111,108,100,115,116,121,108,101,0,99,111,109,109,97,115,117,112,101,114,105,111,114,0,116,104,114,101,101,113,117,97,114,116,101,114,115,101,109,100,97,115,104,0,112,101,114,105,111,100,115,117,112,101,114,105,111,114,0,113,117,101,115,116,105,111,110,115,109,97,108,108,0,97,115,117,112,101,114,105,111,114,0,98,115,117,112,101,114,105,111,114,0,99,101,110,116,115,117,112,101,114,105,111,114,0,100,115,117,112,101,114,105,111,114,0,101,115,117,112,101,114,105,111,114,0,105,115,117,112,101,114,105,111,114,0,108,115,117,112,101,114,105,111,114,0,109,115,117,112,101,114,105,111,114,0,110,115,117,112,101,114,105,111,114,0,111,115,117,112,101,114,105,111,114,0,114,115,117,112,101,114,105,111,114,0,115,115,117,112,101,114,105,111,114,0,116,115,117,112,101,114,105,111,114,0,102,102,0,102,102,105,0,102,102,108,0,112,97,114,101,110,108,101,102,116,105,110,102,101,114,105,111,114,0,112,97,114,101,110,114,105,103,104,116,105,110,102,101,114,105,111,114,0,67,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,104,121,112,104,101,110,115,117,112,101,114,105,111,114,0,71,114,97,118,101,115,109,97,108,108,0,65,115,109,97,108,108,0,66,115,109,97,108,108,0,67,115,109,97,108,108,0,68,115,109,97,108,108,0,69,115,109,97,108,108,0,70,115,109,97,108,108,0,71,115,109,97,108,108,0,72,115,109,97,108,108,0,73,115,109,97,108,108,0,74,115,109,97,108,108,0,75,115,109,97,108,108,0,76,115,109,97,108,108,0,77,115,109,97,108,108,0,78,115,109,97,108,108,0,79,115,109,97,108,108,0,80,115,109,97,108,108,0,81,115,109,97,108,108,0,82,115,109,97,108,108,0,83,115,109,97,108,108,0,84,115,109,97,108,108,0,85,115,109,97,108,108,0,86,115,109,97,108,108,0,87,115,109,97,108,108,0,88,115,109,97,108,108,0,89,115,109,97,108,108,0,90,115,109,97,108,108,0,99,111,108,111,110,109,111,110,101,116,97,114,121,0,111,110,101,102,105,116,116,101,100,0,114,117,112,105,97,104,0,84,105,108,100,101,115,109,97,108,108,0,101,120,99,108,97,109,100,111,119,110,115,109,97,108,108,0,99,101,110,116,111,108,100,115,116,121,108,101,0,76,115,108,97,115,104,115,109,97,108,108,0,83,99,97,114,111,110,115,109,97,108,108,0,90,99,97,114,111,110,115,109,97,108,108,0,68,105,101,114,101,115,105,115,115,109,97,108,108,0,66,114,101,118,101,115,109,97,108,108,0,67,97,114,111,110,115,109,97,108,108,0,68,111,116,97,99,99,101,110,116,115,109,97,108,108,0,77,97,99,114,111,110,115,109,97,108,108,0,102,105,103,117,114,101,100,97,115,104,0,104,121,112,104,101,110,105,110,102,101,114,105,111,114,0,79,103,111,110,101,107,115,109,97,108,108,0,82,105,110,103,115,109,97,108,108,0,67,101,100,105,108,108,97,115,109,97,108,108,0,113,117,101,115,116,105,111,110,100,111,119,110,115,109,97,108,108,0,111,110,101,101,105,103,104,116,104,0,116,104,114,101,101,101,105,103,104,116,104,115,0,102,105,118,101,101,105,103,104,116,104,115,0,115,101,118,101,110,101,105,103,104,116,104,115,0,111,110,101,116,104,105,114,100,0,116,119,111,116,104,105,114,100,115,0,122,101,114,111,115,117,112,101,114,105,111,114,0,102,111,117,114,115,117,112,101,114,105,111,114,0,102,105,118,101,115,117,112,101,114,105,111,114,0,115,105,120,115,117,112,101,114,105,111,114,0,115,101,118,101,110,115,117,112,101,114,105,111,114,0,101,105,103,104,116,115,117,112,101,114,105,111,114,0,110,105,110,101,115,117,112,101,114,105,111,114,0,122,101,114,111,105,110,102,101,114,105,111,114,0,111,110,101,105,110,102,101,114,105,111,114,0,116,119,111,105,110,102,101,114,105,111,114,0,116,104,114,101,101,105,110,102,101,114,105,111,114,0,102,111,117,114,105,110,102,101,114,105,111,114,0,102,105,118,101,105,110,102,101,114,105,111,114,0,115,105,120,105,110,102,101,114,105,111,114,0,115,101,118,101,110,105,110,102,101,114,105,111,114,0,101,105,103,104,116,105,110,102,101,114,105,111,114,0,110,105,110,101,105,110,102,101,114,105,111,114,0,99,101,110,116,105,110,102,101,114,105,111,114,0,100,111,108,108,97,114,105,110,102,101,114,105,111,114,0,112,101,114,105,111,100,105,110,102,101,114,105,111,114,0,99,111,109,109,97,105,110,102,101,114,105,111,114,0,65,103,114,97,118,101,115,109,97,108,108,0,65,97,99,117,116,101,115,109,97,108,108,0,65,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,65,116,105,108,100,101,115,109,97,108,108,0,65,100,105,101,114,101,115,105,115,115,109,97,108,108,0,65,114,105,110,103,115,109,97,108,108,0,65,69,115,109,97,108,108,0,67,99,101,100,105,108,108,97,115,109,97,108,108,0,69,103,114,97,118,101,115,109,97,108,108,0,69,97,99,117,116,101,115,109,97,108,108,0,69,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,69,100,105,101,114,101,115,105,115,115,109,97,108,108,0,73,103,114,97,118,101,115,109,97,108,108,0,73,97,99,117,116,101,115,109,97,108,108,0,73,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,73,100,105,101,114,101,115,105,115,115,109,97,108,108,0,69,116,104,115,109,97,108,108,0,78,116,105,108,100,101,115,109,97,108,108,0,79,103,114,97,118,101,115,109,97,108,108,0,79,97,99,117,116,101,115,109,97,108,108,0,79,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,79,116,105,108,100,101,115,109,97,108,108,0,79,100,105,101,114,101,115,105,115,115,109,97,108,108,0,79,69,115,109,97,108,108,0,79,115,108,97,115,104,115,109,97,108,108,0,85,103,114,97,118,101,115,109,97,108,108,0,85,97,99,117,116,101,115,109,97,108,108,0,85,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,85,100,105,101,114,101,115,105,115,115,109,97,108,108,0,89,97,99,117,116,101,115,109,97,108,108,0,84,104,111,114,110,115,109,97,108,108,0,89,100,105,101,114,101,115,105,115,115,109,97,108,108,0,48,48,49,46,48,48,48,0,48,48,49,46,48,48,49,0,48,48,49,46,48,48,50,0,48,48,49,46,48,48,51,0,66,108,97,99,107,0,66,111,108,100,0,66,111,111,107,0,76,105,103,104,116,0,77,101,100,105,117,109,0,82,101,103,117,108,97,114,0,82,111,109,97,110,0,83,101,109,105,98,111,108,100,0,112,111,115,116,115,99,114,105,112,116,45,99,109,97,112,115,0,114,98,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,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,18,0,0,0,18,18,18,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,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+61440);allocate([0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0,114,119,97,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+71680);var tempDoublePtr=STATICTOP;STATICTOP+=16;Module["_i64Subtract"]=_i64Subtract;Module["_i64Add"]=_i64Add;Module["_memset"]=_memset;function _pthread_cleanup_push(routine,arg){__ATEXIT__.push((function(){Runtime.dynCall("vi",routine,[arg])}));_pthread_cleanup_push.level=__ATEXIT__.length}Module["_bitshift64Lshr"]=_bitshift64Lshr;Module["_bitshift64Shl"]=_bitshift64Shl;function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!");__ATEXIT__.pop();_pthread_cleanup_push.level=__ATEXIT__.length}function _abort(){Module["abort"]()}function _realloc(){throw"bad"}Module["_realloc"]=_realloc;Module["_saveSetjmp"]=_saveSetjmp;Module["_testSetjmp"]=_testSetjmp;function _longjmp(env,value){asm["setThrew"](env,value||1);throw"longjmp"}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"};function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>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){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up--;up){parts.unshift("..")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))}),join2:(function(l,r){return PATH.normalize(l+"/"+r)}),resolve:(function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter((function(p){return!!p})),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start<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(){}),shutdown:(function(){}),register:(function(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)}),stream_ops:{open:(function(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}stream.tty=tty;stream.seekable=false}),close:(function(stream){stream.tty.ops.flush(stream.tty)}),flush:(function(stream){stream.tty.ops.flush(stream.tty)}),read:(function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(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){var BUFSIZE=256;var buf=new Buffer(BUFSIZE);var bytesRead=0;var fd=process.stdin.fd;var usingDevice=false;try{fd=fs.openSync("/dev/stdin","r");usingDevice=true}catch(e){}bytesRead=fs.readSync(fd,buf,0,BUFSIZE,null);if(usingDevice){fs.closeSync(fd)}if(bytesRead>0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;i<node.usedBytes;++i)arr.push(node.contents[i]);return arr}return node.contents}),getFileDataAsTypedArray:(function(node){if(!node.contents)return new Uint8Array;if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)}),expandFileStorage:(function(node,newCapacity){if(node.contents&&node.contents.subarray&&newCapacity>node.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.buffer.byteLength:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity<CAPACITY_DOUBLING_MAX?2:1.125)|0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}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;node.usedBytes=0;return}if(!node.contents||node.contents.subarray){var oldContents=node.contents;node.contents=new Uint8Array(new ArrayBuffer(newSize));if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize;return}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={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}}),lookup:(function(parent,name){throw FS.genericErrors[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(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)}}}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|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){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i<size;i++)buffer[offset+i]=contents[position+i]}return size}),write:(function(stream,buffer,offset,length,position,canOwn){if(!length)return 0;var node=stream.node;node.timestamp=Date.now();if(buffer.subarray&&(!node.contents||node.contents.subarray)){if(canOwn){node.contents=buffer.subarray(offset,offset+length);node.usedBytes=length;return length}else if(node.usedBytes===0&&position===0){node.contents=new Uint8Array(buffer.subarray(offset,offset+length));node.usedBytes=length;return length}else if(position+length<=node.usedBytes){node.contents.set(buffer.subarray(offset,offset+length),position);return length}}MEMFS.expandFileStorage(node,position+length);if(node.contents.subarray&&buffer.subarray)node.contents.set(buffer.subarray(offset,offset+length),position);else{for(var i=0;i<length;i++){node.contents[position+i]=buffer[offset+i]}}node.usedBytes=Math.max(node.usedBytes,position+length);return length}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.usedBytes}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}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;if(!(flags&2)&&(contents.buffer===buffer||contents.buffer===buffer.buffer)){allocated=false;ptr=contents.byteOffset}else{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}}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}if(mmapFlags&2){return 0}var bytesWritten=MEMFS.stream_ops.write(stream,buffer,0,length,offset,false);return 0})}};var IDBFS={dbs:{},indexedDB:(function(){if(typeof indexedDB!=="undefined")return indexedDB;var ret=null;if(typeof window==="object")ret=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;assert(ret,"IDBFS used, but indexedDB not supported");return ret}),DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",mount:(function(mount){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){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)}if(!fileStore.indexNames.contains("timestamp")){fileStore.createIndex("timestamp","timestamp",{unique:false})}});req.onsuccess=(function(){db=req.result;IDBFS.dbs[name]=db;callback(null,db)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),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(e){callback(this.error);e.preventDefault()});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)){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.chmod(path,entry.mode);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(e){callback(this.error);e.preventDefault()})}),storeRemoteEntry:(function(store,path,entry,callback){var req=store.put(entry,path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),removeRemoteEntry:(function(store,path,callback){var req=store.delete(path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),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 completed=0;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err){if(!done.errored){done.errored=true;return callback(err)}return}if(++completed>=total){return callback(null)}}transaction.onerror=(function(e){done(this.error);e.preventDefault()});create.sort().forEach((function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,(function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)}))}else{IDBFS.loadLocalEntry(path,(function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)}))}}));remove.sort().reverse().forEach((function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}}))})};var NODEFS={isWindows:false,staticInit:(function(){NODEFS.isWindows=!!process.platform.match(/^win/)}),mount:(function(mount){assert(ENVIRONMENT_IS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)}),createNode:(function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node}),getMode:(function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&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){flags&=~32768;flags&=~524288;if(flags in NODEFS.flagsToPermissionStringMap){return NODEFS.flagsToPermissionStringMap[flags]}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.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){if(length===0)return 0;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){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){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:(function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i<parts.length-1;i++){var curr=parts.slice(0,i+1).join("/");if(!createdParents[curr]){createdParents[curr]=WORKERFS.createNode(parent,curr,WORKERFS.DIR_MODE,0)}parent=createdParents[curr]}return parent}function base(path){var parts=path.split("/");return parts[parts.length-1]}Array.prototype.forEach.call(mount.opts["files"]||[],(function(file){WORKERFS.createNode(ensureParent(file.name),base(file.name),WORKERFS.FILE_MODE,0,file,file.lastModifiedDate)}));(mount.opts["blobs"]||[]).forEach((function(obj){WORKERFS.createNode(ensureParent(obj["name"]),base(obj["name"]),WORKERFS.FILE_MODE,0,obj["data"])}));(mount.opts["packages"]||[]).forEach((function(pack){pack["metadata"].files.forEach((function(file){var name=file.filename.substr(1);WORKERFS.createNode(ensureParent(name),base(name),WORKERFS.FILE_MODE,0,pack["blob"].slice(file.start,file.end))}))}));return root}),createNode:(function(parent,name,mode,dev,contents,mtime){var node=FS.createNode(parent,name,mode);node.mode=mode;node.node_ops=WORKERFS.node_ops;node.stream_ops=WORKERFS.stream_ops;node.timestamp=(mtime||new Date).getTime();assert(WORKERFS.FILE_MODE!==WORKERFS.DIR_MODE);if(mode===WORKERFS.FILE_MODE){node.size=contents.size;node.contents=contents}else{node.size=4096;node.contents={}}if(parent){parent.contents[name]=node}return node}),node_ops:{getattr:(function(node){return{dev:1,ino:undefined,mode:node.mode,nlink:1,uid:0,gid:0,rdev:undefined,size:node.size,atime:new Date(node.timestamp),mtime:new Date(node.timestamp),ctime:new Date(node.timestamp),blksize:4096,blocks:Math.ceil(node.size/4096)}}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}}),lookup:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}),mknod:(function(parent,name,mode,dev){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rename:(function(oldNode,newDir,newName){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),unlink:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rmdir:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readdir:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),symlink:(function(parent,newName,oldPath){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readlink:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)})},stream_ops:{read:(function(stream,buffer,offset,length,position){if(position>=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size}),write:(function(stream,buffer,offset,length,position){throw new FS.ErrnoError(ERRNO_CODES.EIO)}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};STATICTOP+=16;STATICTOP+=16;STATICTOP+=16;var FS={root:null,mounts:[],devices:[null],streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i<parts.length;i++){var islast=i===parts.length-1;if(islast&&opts.parent){break}current=FS.lookupNode(current,parts[i]);current_path=PATH.join2(current_path,parts[i]);if(FS.isMountpoint(current)){if(!islast||islast&&opts.follow_mount){current=current.mounted.root}}if(!islast||opts.follow){var count=0;while(FS.isLink(current.mode)){var link=FS.readlink(current_path);current_path=PATH.resolve(PATH.dirname(current_path),link);var lookup=FS.lookupPath(current_path,{recurse_count:opts.recurse_count});current=lookup.node;if(count++>40){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,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return ERRNO_CODES.EACCES}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return ERRNO_CODES.EACCES}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return ERRNO_CODES.EACCES}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return ERRNO_CODES.EACCES;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return ERRNO_CODES.EEXIST}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return ERRNO_CODES.ENOTDIR}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return ERRNO_CODES.EBUSY}}else{if(FS.isDir(node.mode)){return ERRNO_CODES.EISDIR}}return 0}),mayOpen:(function(node,flags){if(!node){return ERRNO_CODES.ENOENT}if(FS.isLink(node.mode)){return ERRNO_CODES.ELOOP}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return ERRNO_CODES.EISDIR}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(ERRNO_CODES.EMFILE)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdev:(function(path,mode,dev){if(typeof dev==="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)}),symlink:(function(oldpath,newpath){if(!PATH.resolve(oldpath)){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}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);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)}if(!old_dir||!new_dir)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(ERRNO_CODES.EXDEV)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}relative=PATH.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var err=FS.mayDelete(old_dir,old_name,isdir);if(err){throw new FS.ErrnoError(err)}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(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)}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}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){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){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!link.node_ops.readlink){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return PATH.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))}),stat:(function(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}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()})}),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:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path==="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(ERRNO_CODES.EEXIST)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}if(!created){var err=FS.mayOpen(node,flags);if(err){throw new FS.ErrnoError(err)}}if(flags&512){FS.truncate(node,0)}flags&=~(128|512);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false},fd_start,fd_end);if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1;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){if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}}),llseek:(function(stream,offset,whence){if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position}),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){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){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)}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!stream||!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)}),munmap:(function(stream){return 0}),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=UTF8ArrayToString(buf,0)}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 buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,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");FS.mkdir("/home");FS.mkdir("/home/web_user")}),createDefaultDevices:(function(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:(function(){return 0}),write:(function(stream,buffer,offset,length,pos){return length})});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var random_device;if(typeof crypto!=="undefined"){var randomBuffer=new Uint8Array(1);random_device=(function(){crypto.getRandomValues(randomBuffer);return randomBuffer[0]})}else if(ENVIRONMENT_IS_NODE){random_device=(function(){return require("crypto").randomBytes(1)[0]})}else{random_device=(function(){return Math.random()*256|0})}FS.createDevice("/dev","random",random_device);FS.createDevice("/dev","urandom",random_device);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")}),createSpecialDirectories:(function(){FS.mkdir("/proc");FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:(function(){var node=FS.createNode("/proc/self","fd",16384|511,73);node.node_ops={lookup:(function(parent,name){var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:(function(){return stream.path})}};ret.parent=ret;return ret})};return node})},{},"/proc/self/fd")}),createStandardStreams:(function(){if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin","r");assert(stdin.fd===0,"invalid handle for stdin ("+stdin.fd+")");var stdout=FS.open("/dev/stdout","w");assert(stdout.fd===1,"invalid handle for stdout ("+stdout.fd+")");var stderr=FS.open("/dev/stderr","w");assert(stderr.fd===2,"invalid handle for stderr ("+stderr.fd+")")}),ensureErrnoError:(function(){if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.node=node;this.setErrno=(function(errno){this.errno=errno;for(var key in ERRNO_CODES){if(ERRNO_CODES[key]===errno){this.code=key;break}}});this.setErrno(errno);this.message=ERRNO_MESSAGES[errno]};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[ERRNO_CODES.ENOENT].forEach((function(code){FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack="<generic error, no stack>"}))}),staticInit:(function(){FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS,"IDBFS":IDBFS,"NODEFS":NODEFS,"WORKERFS":WORKERFS}}),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();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()}),quit:(function(){FS.init.initialized=false;var fflush=Module["_fflush"];if(fflush)fflush(0);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){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){}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}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);FS.registerDevice(dev,{open:(function(stream){stream.seekable=false}),close:(function(stream){if(output&&output.buffer&&output.buffer.length){output(10)}}),read:(function(stream,buffer,offset,length,pos){var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=input()}catch(e){throw new FS.ErrnoError(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"]){try{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){function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype.get=function LazyUint8Array_get(idx){if(idx>this.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i<size;i++){buffer[offset+i]=contents[position+i]}}else{for(var i=0;i<size;i++){buffer[offset+i]=contents.get(position+i)}}return size};node.stream_ops=stream_ops;return node}),createPreloadedFile:(function(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish){Browser.init();var fullname=name?PATH.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency("cp "+fullname);function processData(byteArray){function finish(byteArray){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency(dep)}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(dep)}));handled=true}}));if(!handled)finish(byteArray)}addRunDependency(dep);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;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})};var SYSCALLS={DEFAULT_POLLMASK:5,mappings:{},umask:511,calculateAt:(function(dirfd,path){if(path[0]!=="/"){var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=FS.getStream(dirfd);if(!dirstream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);dir=dirstream.path}path=PATH.join2(dir,path)}return path}),doStat:(function(func,path,buf){try{var stat=func(path)}catch(e){if(e&&e.node&&PATH.normalize(path)!==PATH.normalize(FS.getPath(e.node))){return-ERRNO_CODES.ENOTDIR}throw e}HEAP32[buf>>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;HEAP32[buf+36>>2]=stat.size;HEAP32[buf+40>>2]=4096;HEAP32[buf+44>>2]=stat.blocks;HEAP32[buf+48>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+52>>2]=0;HEAP32[buf+56>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ino;return 0}),doMsync:(function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)}),doMkdir:(function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0}),doMknod:(function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-ERRNO_CODES.EINVAL}FS.mknod(path,mode,dev);return 0}),doReadlink:(function(path,buf,bufsize){if(bufsize<=0)return-ERRNO_CODES.EINVAL;var ret=FS.readlink(path);ret=ret.slice(0,Math.max(0,bufsize));writeStringToMemory(ret,buf,true);return ret.length}),doAccess:(function(path,amode){if(amode&~7){return-ERRNO_CODES.EINVAL}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-ERRNO_CODES.EACCES}return 0}),doDup:(function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd}),doReadv:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr<len)break}return ret}),doWritev:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret}),varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),getStreamFromFD:(function(){var stream=FS.getStream(SYSCALLS.get());if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return stream}),getSocketFromFD:(function(){var socket=SOCKFS.getSocket(SYSCALLS.get());if(!socket)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return socket}),getSocketAddress:(function(allowNull){var addrp=SYSCALLS.get(),addrlen=SYSCALLS.get();if(allowNull&&addrp===0)return null;var info=__read_sockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___lock(){}function ___unlock(){}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:return totalMemory/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 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 79:return 0;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:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}function _sbrk(bytes){var self=_sbrk;if(!self.called){DYNAMICTOP=alignMemoryPage(DYNAMICTOP);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){var success=self.alloc(bytes);if(!success)return-1>>>0}return ret}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;Module["_memmove"]=_memmove;function _emscripten_set_main_loop_timing(mode,value){Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){setTimeout(Browser.mainLoop.runner,value)};Browser.mainLoop.method="timeout"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method="rAF"}else if(mode==2){if(!window["setImmediate"]){var setImmediates=[];var emscriptenMainLoopMessageId="__emcc";function Browser_setImmediate_messageHandler(event){if(event.source===window&&event.data===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}}window.addEventListener("message",Browser_setImmediate_messageHandler,true);window["setImmediate"]=function Browser_emulated_setImmediate(func){setImmediates.push(func);window.postMessage(emscriptenMainLoopMessageId,"*")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){window["setImmediate"](Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop,arg,noSetTiming){Module["noExitRuntime"]=true;assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");Browser.mainLoop.func=func;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;Browser.mainLoop.runner=function Browser_mainLoop_runner(){if(ABORT)return;if(Browser.mainLoop.queue.length>0){var start=Date.now();var blocker=Browser.mainLoop.queue.shift();blocker.func(blocker.arg);if(Browser.mainLoop.remainingBlockers){var remaining=Browser.mainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){Browser.mainLoop.remainingBlockers=next}else{next=next+.5;Browser.mainLoop.remainingBlockers=(8*remaining+next)/9}}console.log('main loop blocker "'+blocker.name+'" took '+(Date.now()-start)+" ms");Browser.mainLoop.updateStatus();if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;setTimeout(Browser.mainLoop.runner,0);return}if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0;if(Browser.mainLoop.timingMode==1&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}if(Browser.mainLoop.method==="timeout"&&Module.ctx){Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!");Browser.mainLoop.method=""}Browser.mainLoop.runIter((function(){if(typeof arg!=="undefined"){Runtime.dynCall("vi",func,[arg])}else{Runtime.dynCall("v",func)}}));if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;if(typeof SDL==="object"&&SDL.audio&&SDL.audio.queueNewAudioData)SDL.audio.queueNewAudioData();Browser.mainLoop.scheduler()};if(!noSetTiming){if(fps&&fps>0)_emscripten_set_main_loop_timing(0,1e3/fps);else _emscripten_set_main_loop_timing(1,1);Browser.mainLoop.scheduler()}if(simulateInfiniteLoop){throw"SimulateInfiniteLoop"}}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:(function(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++}),resume:(function(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;_emscripten_set_main_loop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()}),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}}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"]=[];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}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){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);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;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);var audio=new Audio;audio.addEventListener("canplaythrough",(function(){finish(audio)}),false);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&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src="data:audio/x-"+name.substr(-3)+";base64,"+encode64(byteArray);finish(audio)};audio.src=url;Browser.safeSetTimeout((function(){finish(audio)}),1e4)}else{return fail()}};Module["preloadPlugins"].push(audioPlugin);var canvas=Module["canvas"];function pointerLockChange(){Browser.pointerLock=document["pointerLockElement"]===canvas||document["mozPointerLockElement"]===canvas||document["webkitPointerLockElement"]===canvas||document["msPointerLockElement"]===canvas}if(canvas){canvas.requestPointerLock=canvas["requestPointerLock"]||canvas["mozRequestPointerLock"]||canvas["webkitRequestPointerLock"]||canvas["msRequestPointerLock"]||(function(){});canvas.exitPointerLock=document["exitPointerLock"]||document["mozExitPointerLock"]||document["webkitExitPointerLock"]||document["msExitPointerLock"]||(function(){});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&&canvas==Module.canvas)return Module.ctx;var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}canvas.style.backgroundColor="black"}else{ctx=canvas.getContext("2d")}if(!ctx)return null;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)GL.makeContextCurrent(contextHandle);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,vrDevice){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;Browser.vrDevice=vrDevice;if(typeof Browser.lockPointer==="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas==="undefined")Browser.resizeCanvas=false;if(typeof Browser.vrDevice==="undefined")Browser.vrDevice=null;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{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)}var canvasContainer=document.createElement("div");canvas.parentNode.insertBefore(canvasContainer,canvas);canvasContainer.appendChild(canvas);canvasContainer.requestFullScreen=canvasContainer["requestFullScreen"]||canvasContainer["mozRequestFullScreen"]||canvasContainer["msRequestFullscreen"]||(canvasContainer["webkitRequestFullScreen"]?(function(){canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"])}):null);if(vrDevice){canvasContainer.requestFullScreen({vrDisplay:vrDevice})}else{canvasContainer.requestFullScreen()}}),nextRAF:0,fakeRequestAnimationFrame:(function(func){var now=Date.now();if(Browser.nextRAF===0){Browser.nextRAF=now+1e3/60}else{while(now+2>=Browser.nextRAF){Browser.nextRAF+=1e3/60}}var delay=Math.max(Browser.nextRAF-now,0);setTimeout(func,delay)}),requestAnimationFrame:function requestAnimationFrame(func){if(typeof window==="undefined"){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)})}),allowAsyncCallbacks:true,queuedAsyncCallbacks:[],pauseAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=false}),resumeAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=true;if(Browser.queuedAsyncCallbacks.length>0){var callbacks=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[];callbacks.forEach((function(func){func()}))}}),safeRequestAnimationFrame:(function(func){return Browser.requestAnimationFrame((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}))}),safeSetTimeout:(function(func,timeout){Module["noExitRuntime"]=true;return setTimeout((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}),timeout)}),safeSetInterval:(function(func,timeout){Module["noExitRuntime"]=true;return setInterval((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){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 delta}),mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:(function(event){if(Browser.pointerLock){if(event.type!="mousemove"&&"mozMovementX"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}if(typeof SDL!="undefined"){Browser.mouseX=SDL.mouseX+Browser.mouseMovementX;Browser.mouseY=SDL.mouseY+Browser.mouseMovementY}else{Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}}else{var rect=Module["canvas"].getBoundingClientRect();var cw=Module["canvas"].width;var ch=Module["canvas"].height;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}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"){var last=Browser.touches[touch.identifier];if(!last)last=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}var x=event.pageX-(scrollX+rect.left);var y=event.pageY-(scrollY+rect.top);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}}),asyncLoad:(function(url,onload,onerror,noRunDep){Module["readAsync"](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(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags|8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),setWindowedCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags&~8388608;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")}}}}),wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle:(function(){var handle=Browser.nextWgetRequestHandle;Browser.nextWgetRequestHandle++;return handle})};function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}function _pthread_self(){return 0}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;assert(offset_high===0);FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21506:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((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;Module["FS_unlink"]=FS.unlink;__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}Module["requestFullScreen"]=function Module_requestFullScreen(lockPointer,resizeCanvas,vrDevice){Browser.requestFullScreen(lockPointer,resizeCanvas,vrDevice)};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()};Module["createContext"]=function Module_createContext(canvas,useWebGL,setInModule,webGLContextAttributes){return Browser.createContext(canvas,useWebGL,setInModule,webGLContextAttributes)};STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);staticSealed=true;STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX);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);function invoke_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){try{return Module["dynCall_iiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}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_viiiii(index,a1,a2,a3,a4,a5){try{Module["dynCall_viiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){try{return Module["dynCall_iiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9)}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_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_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)}}Module.asmGlobalArg={"Math":Math,"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Uint32Array":Uint32Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,"Infinity":Infinity};Module.asmLibraryArg={"abort":abort,"assert":assert,"invoke_iiiiiiii":invoke_iiiiiiii,"invoke_iiii":invoke_iiii,"invoke_viiiii":invoke_viiiii,"invoke_iiiiiiiiii":invoke_iiiiiiiiii,"invoke_vii":invoke_vii,"invoke_iiiiiii":invoke_iiiiiii,"invoke_ii":invoke_ii,"invoke_viii":invoke_viii,"invoke_vi":invoke_vi,"invoke_iiiii":invoke_iiiii,"invoke_viiiiii":invoke_viiiiii,"invoke_iii":invoke_iii,"invoke_iiiiii":invoke_iiiiii,"invoke_viiii":invoke_viiii,"_pthread_cleanup_pop":_pthread_cleanup_pop,"___syscall221":___syscall221,"_longjmp":_longjmp,"___lock":___lock,"_time":_time,"_emscripten_set_main_loop":_emscripten_set_main_loop,"_pthread_self":_pthread_self,"_abort":_abort,"_emscripten_set_main_loop_timing":_emscripten_set_main_loop_timing,"___syscall6":___syscall6,"_sbrk":_sbrk,"___syscall5":___syscall5,"_pthread_cleanup_push":_pthread_cleanup_push,"_emscripten_memcpy_big":_emscripten_memcpy_big,"___syscall54":___syscall54,"___unlock":___unlock,"___syscall140":___syscall140,"_sysconf":_sysconf,"___syscall145":___syscall145,"___syscall146":___syscall146,"___setErrNo":___setErrNo,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"cttz_i8":cttz_i8};// EMSCRIPTEN_START_ASM
var asm=(function(global,env,buffer) {
"use asm";var a=new global.Int8Array(buffer);var b=new global.Int16Array(buffer);var c=new global.Int32Array(buffer);var
d=new global.Uint8Array(buffer);var e=new global.Uint16Array(buffer);var f=new global.Uint32Array(buffer);var g=new global.Float32Array
(buffer);var h=new global.Float64Array(buffer);var i=env.STACKTOP|0;var j=env.STACK_MAX|0;var k=env.tempDoublePtr|0;var l=env.ABORT
|0;var m=env.cttz_i8|0;var n=0;var o=0;var p=0;var q=0;var r=global.NaN,s=global.Infinity;var t=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,
B=0.0;var C=0;var D=0;var E=0;var F=0;var G=0;var H=0;var I=0;var J=0;var K=0;var L=0;var M=global.Math.floor;var N=global.Math.
abs;var O=global.Math.sqrt;var P=global.Math.pow;var Q=global.Math.cos;var R=global.Math.sin;var S=global.Math.tan;var T=global.
Math.acos;var U=global.Math.asin;var V=global.Math.atan;var W=global.Math.atan2;var X=global.Math.exp;var Y=global.Math.log;var
Z=global.Math.ceil;var _=global.Math.imul;var $=global.Math.min;var aa=global.Math.clz32;var ba=env.abort;var ca=env.assert;var
da=env.invoke_iiiiiiii;var ea=env.invoke_iiii;var fa=env.invoke_viiiii;var ga=env.invoke_iiiiiiiiii;var ha=env.invoke_vii;var ia
=env.invoke_iiiiiii;var ja=env.invoke_ii;var ka=env.invoke_viii;var la=env.invoke_vi;var ma=env.invoke_iiiii;var na=env.invoke_viiiiii
;var oa=env.invoke_iii;var pa=env.invoke_iiiiii;var qa=env.invoke_viiii;var ra=env._pthread_cleanup_pop;var sa=env.___syscall221
;var ta=env._longjmp;var ua=env.___lock;var va=env._time;var wa=env._emscripten_set_main_loop;var xa=env._pthread_self;var ya=env
._abort;var za=env._emscripten_set_main_loop_timing;var Aa=env.___syscall6;var Ba=env._sbrk;var Ca=env.___syscall5;var Da=env._pthread_cleanup_push
;var Ea=env._emscripten_memcpy_big;var Fa=env.___syscall54;var Ga=env.___unlock;var Ha=env.___syscall140;var Ia=env._sysconf;var
Ja=env.___syscall145;var Ka=env.___syscall146;var La=env.___setErrNo;var Ma=0.0;
// EMSCRIPTEN_START_FUNCS
function $a(a){a=a|0;var b=0;b=i;i=i+a|0;i=i+15&-16;return b|0}function ab(){return i|0}function bb(a){a=a|0;i=a}function cb
(a,b){a=a|0;b=b|0;i=a;j=b}function db(a,b){a=a|0;b=b|0;if(!n){n=a;o=b}}function eb(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]}function
fb(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 gb(a){a=a|0;C=a}function hb(){return C|0}function
ib(a){a=a|0;c[18364]=(a|0)!=0&1;return 0}function jb(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+32|0;h=j+8|0
;f=j;e=c[18367]|0;if((e|0)!=0?(As(e,b)|0)==0:0){e=73468;f=2;g=4}else g=3;do if((g|0)==3){e=c[18368]|0;if(e|0?(As(e,b)|0)==0:0){e
=73472;f=3;g=4;break}e=c[18369]|0;if(e|0?(As(e,b)|0)==0:0){e=73476;f=4;g=4;break}e=c[18370]|0;if(e|0?(As(e,b)|0)==0:0){e=73480;f
=5;g=4;break}e=c[18371]|0;if(e|0?(As(e,b)|0)==0:0){e=73484;f=6;g=4;break}e=c[18372]|0;if(e|0?(As(e,b)|0)==0:0){e=73488;f=7;g=4;break
}e=c[18373]|0;if(e|0?(As(e,b)|0)==0:0){e=73492;f=8;g=4;break}e=c[18374]|0;if(e|0?(As(e,b)|0)==0:0){e=73496;f=9;g=4;break}if(c[18367
]|0)if(c[18368]|0)if(c[18369]|0)if(c[18370]|0)if(c[18371]|0)if(c[18372]|0)if(c[18373]|0)if(!(c[18374]|0))f=9;else{c[f>>
;2]=a;c[f+4>>2]=b;ss(10198,f)|0;h=-1;i=j;return h|0}else f=8;else f=7;else f=6;else f=5;else f=4;else f=3;else f=2}while
(0);if((g|0)==4){g=73500+(f<<2)|0;vd(c[g>>2]|0)|0;Gs(c[e>>2]|0);c[e>>2]=0;c[g>>
;2]=0}e=Ec(c[18385]|0,a,0,73500+(f<<2)|0)|0;if(!e){c[73460+(f<<2)>>2]=ws(b)|0;c[8+(f<<2)
x3e;>2]=d;h=0;i=j;return h|0}else{c[h>>2]=a;c[h+4>>2]=b;c[h+8>>2]=e;ss(10233,h)|0;h=e;i=j;return
h|0}return 0}function kb(a){a=a|0;var b=0,d=0;b=c[18365]|0;if(b)if(As(a,b)|0){b=c[18366]|0;if(((b|0)!=0?(As(a,b)|0)!=0:0)?(d=c[
18367]|0,(d|0)!=0):0)if(As(a,d)|0){b=c[18368]|0;if(b)if(As(a,b)|0){b=c[18369]|0;if(b)if(As(a,b)|0){b=c[18370]|0;if(b)if(As(a,b)|
0){b=c[18371]|0;if(b)if(As(a,b)|0){b=c[18372]|0;if(b)if(As(a,b)|0){b=c[18373]|0;if(b)if(As(a,b)|0){b=c[18374]|0;if(!b)b=1;else{a
=(As(a,b)|0)==0;return (a?9:1)|0}}else b=8;else b=1}else b=7;else b=1}else b=6;else b=1}else b=5;else b=1}else b=4;else b=1}else
b=3;else b=1}else b=2;else b=1}else b=0;else b=1;return b|0}function lb(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;p=i;i=i+16|0;k=p+8|0;j=p;if(!(b>>>0<=9?(c[73460+(b<<2)>>2]|0)!=0:0))b=1;h=
c[73500+(b<<2)>>2]|0;b=c[8+(b<<2)>>2]|0;f=(_(f<<6,b)|0)/100|0;b=(_(g<<
;6,b)|0)/100|0;if((e+-65|0)>>>0<26&(h|0)==(c[18376]|0))b=(b*108|0)/100|0;b=Hd(h,f,b,72,0)|0;if(b|0){c[j
>>2]=b;ss(10260,j)|0;o=0;i=p;return o|0}c[18386]=c[h+84>>2];if((h|0)==(c[18375]|0)|(h|0)==(c[18376]|0))if((e
|0)==126)e=732;else e=(e|0)==94?710:e;if(!(c[18364]|0))e=Cc(h,e,4)|0;else e=Cc(h,e,131076)|0;if(e|0){c[k>>2]=e;ss(10285
,k)|0;o=0;i=p;return o|0}b=c[18386]|0;if(!(c[18364]|0)){o=c[b+88>>2]|0;i=p;return o|0}e=c[18387]|0;if(e|0)Gs(e);m=b+80
|0;f=c[m>>2]|0;n=b+76|0;g=c[n>>2]|0;e=Fs(_(g,f)|0)|0;c[18387]=e;if(!e){o=0;i=p;return o|0}if((g|0)<=0){
o=e;i=p;return o|0}o=b+84|0;l=b+88|0;b=e;k=0;do{j=_(c[o>>2]|0,k)|0;j=(c[l>>2]|0)+j|0;if((f|0)>0){h=0;while
(1){g=b+1|0;a[b>>0]=(((d[j+(h>>3)>>0]|0)&1<<(h&7^7)|0)!=0)<<31>
x3e;31;h=h+1|0;f=c[m>>2]|0;if((h|0)>=(f|0)){b=g;break}else b=g}g=c[n>>2]|0}k=k+1|0}while((k|0)<(g|
0));i=p;return e|0}function mb(){return c[(c[18386]|0)+100>>2]|0}function nb(){return c[(c[18386]|0)+104>>2]|
0}function ob(){return c[(c[18386]|0)+80>>2]|0}function pb(){return c[(c[18386]|0)+76>>2]|0}function qb(){return
c[(c[18386]|0)+84>>2]|0}function rb(){return c[(c[18386]|0)+64>>2]>>6|0}function sb(){var a=0,b=0
,d=0,e=0,f=0;f=i;i=i+32|0;e=f+16|0;d=f+8|0;b=f;a=ub(73540)|0;if(a|0){c[b>>2]=a;ss(10306,b)|0;e=1;i=f;return e|0}a=Ec(c
[18385]|0,10322,0,73500)|0;if(a|0){c[d>>2]=a;ss(10331,d)|0;e=1;i=f;return e|0}a=Ec(c[18385]|0,10358,0,73504)|0;if(!a){
c[18365]=ws(10394)|0;c[18366]=ws(10400)|0;e=0;i=f;return e|0}else{c[e>>2]=a;ss(10367,e)|0;e=1;i=f;return e|0}return 0}
function tb(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;c[d>>2]=48;while(1){if(!(
c[c[d>>2]>>2]|0))break;c[e>>2]=Nd(c[b>>2]|0,c[c[d>>2]>>2]|0)|0;c[d
x3e;>2]=(c[d>>2]|0)+4}i=f;return}function ub(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;d=g+8|0;e=g+4
|0;f=g;c[d>>2]=a;c[f>>2]=tr()|0;if(!(c[f>>2]|0)){c[b>>2]=7;f=c[b>>2]|0;i=g;return
f|0}c[e>>2]=Wd(c[f>>2]|0,c[d>>2]|0)|0;if(c[e>>2]|0)xr(c[f>>2]|0);else tb(c[c[
d>>2]>>2]|0);c[b>>2]=c[e>>2];f=c[b>>2]|0;i=g;return f|0}function vb(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;
c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(!(c[g>>2]|0)){c[f>>2]=35;
e=c[f>>2]|0;i=n;return e|0}if((c[h>>2]|0)>>>0>=(c[(c[g>>2]|0)+16>>2]|
0)>>>0){c[f>>2]=16;e=c[f>>2]|0;i=n;return e|0}c[m>>2]=c[(c[(c[(c[g>>2]|0)+
96>>2]|0)+20>>2]|0)+92>>2];do if(c[m>>2]|0){if((c[j>>2]&3|0)==0?(c[j>
;>2]>>16&15|0)!=1:0)break;c[l>>2]=Za[c[m>>2]&31](c[g>>2]|0,c[h>>
;2]|0,1,c[j>>2]|0,c[k>>2]|0)|0;if(!(c[l>>2]|0)){c[f>>2]=wb(c[g>>2]|0,c[k>
x3e;2]|0,1,c[j>>2]|0)|0;e=c[f>>2]|0;i=n;return e|0}if((c[l>>2]|0)!=7){c[f>>2]=c[l>
x3e;2];e=c[f>>2]|0;i=n;return e|0}}while(0);c[f>>2]=Bb(c[g>>2]|0,c[h>>2]|0,1,c[j>
x3e;2]|0,c[k>>2]|0)|0;e=c[f>>2]|0;i=n;return e|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,m=0,n=0;n=i;i=i+32|0;g=n+24|0;f=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;c[f>>2]=a;c[h>>2]=
b;c[j>>2]=d;c[k>>2]=e;if(c[k>>2]&1|0){c[g>>2]=0;m=c[g>>2]|0;i=n;return m|
0}if(!(c[(c[f>>2]|0)+88>>2]|0)){c[g>>2]=36;m=c[g>>2]|0;i=n;return m|0}f=(c[(c[f>>
;2]|0)+88>>2]|0)+12|0;if(c[k>>2]&16|0)c[m>>2]=c[f+8>>2];else c[m>>2]=c[f+
4>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[j>>2]|0)>>
x3e;0)break;k=xb(c[(c[h>>2]|0)+(c[l>>2]<<2)>>2]|0,c[m>>2]|0,64)|0;c[(c[h>
x3e;2]|0)+(c[l>>2]<<2)>>2]=k;c[l>>2]=(c[l>>2]|0)+1}c[g>>2]=0;m=c[g
x3e;>2]|0;i=n;return m|0}function xb(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;m=i;i=i+48|0;e=m+32|0;f=m
+28|0;g=m+24|0;h=m+20|0;j=m+16|0;k=m+8|0;l=m;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(c[f>>2]|0?(
c[g>>2]|0)!=(c[h>>2]|0):0){c[j>>2]=c[f>>2];d=c[f>>2]|0;c[f>>2]=(c[f
x3e;>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[g>>2];d=c[g>>2]|0;c[g>>2]=(c[
g>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[h>>2];d=c[h>>2]|0;c[h>>2]=(
c[h>>2]|0)<0?0-d|0:d;do if(!((c[f>>2]|0)<=46340&(c[g>>2]|0)<=46340&(c[h
x3e;>2]|0)<=176095&(c[h>>2]|0)>0))if((c[h>>2]|0)>0){yb(c[f>>2]|0,c[g>
;>2]|0,k);c[l+4>>2]=0;c[l>>2]=c[h>>2]>>1;zb(k,l,k);c[f>>2]=Ab(c[k+4>
x3e;2]|0,c[k>>2]|0,c[h>>2]|0)|0;break}else{c[f>>2]=2147483647;break}else{l=_(c[f>>2]|0,c
[g>>2]|0)|0;c[f>>2]=(l+(c[h>>2]>>1)|0)/(c[h>>2]|0)|0}while(0);l=c[f>>
;2]|0;c[e>>2]=(c[j>>2]|0)<0?0-l|0:l;l=c[e>>2]|0;i=m;return l|0}c[e>>2]=c[f>>
;2];l=c[e>>2]|0;i=m;return l|0}function yb(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;e=i;i=i+48|0;q=e+40|0;p=e+36|0;f=e+32|0;o=e+28|0;m=e+24|0;n=e+20|0;l=e+16|0;h=e+12|0;g=e+8|0;j=e+4|0;k=e;c[q>>2]=a;c
[p>>2]=b;c[f>>2]=d;c[o>>2]=c[q>>2]&65535;c[m>>2]=(c[q>>2]|0)>
;>>16;c[n>>2]=c[p>>2]&65535;c[l>>2]=(c[p>>2]|0)>>>16;c[h
x3e;>2]=_(c[o>>2]|0,c[n>>2]|0)|0;c[j>>2]=_(c[o>>2]|0,c[l>>2]|0)|0;c[k>
;>2]=_(c[n>>2]|0,c[m>>2]|0)|0;c[g>>2]=_(c[m>>2]|0,c[l>>2]|0)|0;c[j>
x3e;2]=(c[j>>2]|0)+(c[k>>2]|0);c[g>>2]=(c[g>>2]|0)+(((c[j>>2]|0)>>
x3e;0<(c[k>>2]|0)>>>0&1)<<16);c[g>>2]=(c[g>>2]|0)+((c[j>
x3e;2]|0)>>>16);c[j>>2]=c[j>>2]<<16;c[h>>2]=(c[h>>2]|0)+(c[j>
;>2]|0);c[g>>2]=(c[g>>2]|0)+((c[h>>2]|0)>>>0<(c[j>>2]|0)>
x3e;>0&1);c[c[f>>2]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2
];i=e;return}function zb(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+12|0;f=e+8|0;h=e+4|0;g=e
;c[j>>2]=a;c[k>>2]=b;c[f>>2]=d;c[h>>2]=(c[c[j>>2]>>2]|0)+(c[c[k>
;>2]>>2]|0);c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[k>>2]|0)+4>>2
]|0)+((c[h>>2]|0)>>>0<(c[c[j>>2]>>2]|0)>>>0&1);c[c[f>
x3e;2]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2];i=e;return}function Ab(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+32|0;e=l+24|0;m=l+20|0;f=l+16|0;g=l+12|0;k=l+8|0;j=l+4|0;h=l;c[m>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=0;c[k>>2]=c[m>>2];if((c[k>>2
]|0)>>>0>=(c[g>>2]|0)>>>0){c[e>>2]=2147483647;m=c[e>>2]|0;i=l;return
m|0}c[h>>2]=32;do{c[k>>2]=c[k>>2]<<1;c[j>>2]=c[j>>2]<<1;c
[k>>2]=c[k>>2]|(c[f>>2]|0)>>>31;if((c[k>>2]|0)>>>0>=(
c[g>>2]|0)>>>0){c[k>>2]=(c[k>>2]|0)-(c[g>>2]|0);c[j>>2]=c[j>
;>2]|1}c[f>>2]=c[f>>2]<<1;m=(c[h>>2]|0)+-1|0;c[h>>2]=m}while((m|0)!=0);c[
e>>2]=c[j>>2];m=c[e>>2]|0;i=l;return m|0}function Bb(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;t=i;i=i+48|0;l=t+40|0;m=t+36|0;n=t+32|0;o=t+28|0;p=t+24|0;q=t+20|0;h=t+16|0;
j=t+12|0;g=t+8|0;s=t+4|0;r=t;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f
;c[r>>2]=0;if(!(c[m>>2]|0)){c[l>>2]=35;s=c[l>>2]|0;i=t;return s|0}c[j>>2]=c[(c
[m>>2]|0)+16>>2];c[g>>2]=(c[n>>2]|0)+(c[o>>2]|0);if(((c[n>>2]|0)>
;>>0<(c[j>>2]|0)>>>0?(c[g>>2]|0)>>>0>=(c[n>>2]|0
)>>>0:0)?(c[g>>2]|0)>>>0<=(c[j>>2]|0)>>>0:0){if(!(c[o>
;>2]|0)){c[l>>2]=0;s=c[l>>2]|0;i=t;return s|0}c[h>>2]=c[(c[(c[(c[m>>2]|0)+96>
x3e;2]|0)+20>>2]|0)+92>>2];do if(c[h>>2]|0){if((c[p>>2]&3|0)==0?(c[p>>2]
x3e;>16&15|0)!=1:0){k=15;break}c[r>>2]=Za[c[h>>2]&31](c[m>>2]|0,c[n>>2]|0
,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;if(c[r>>2]|0)if((c[r>>2]|0)!=7){c[l>>
;2]=c[r>>2];s=c[l>>2]|0;i=t;return s|0}else k=15}else k=15;while(0);if((k|0)==15){c[r>>2]=0;if(c[p
>>2]&536870912|0){c[l>>2]=7;s=c[l>>2]|0;i=t;return s|0}c[p>>2]=c[p>>2]|256
;c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c
[r>>2]=Cb(c[m>>2]|0,(c[n>>2]|0)+(c[s>>2]|0)|0,c[p>>2]|0)|0;if(c[r>>2
]|0)break;d=(c[(c[m>>2]|0)+84>>2]|0)+64|0;if(c[p>>2]&16|0)d=c[d+4>>2]|0;else d=c[d
x3e;>2]|0;c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]=d;c[s>>2]=(c[s>>2]|0)+
1}if(c[r>>2]|0){c[l>>2]=c[r>>2];s=c[l>>2]|0;i=t;return s|0}}c[l>>2]=wb(c[m>
;>2]|0,c[q>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;s=c[l>>2]|0;i=t;return s|0}c[l>>2
]=16;s=c[l>>2]|0;i=t;return s|0}function Cb(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;A=i;i=i+80|0;r=A+64|0;s=A+60|0;g=A+56|0;t=A+52|0;u=A+48|0;j=A+44|0;z=A+40|0;n=A+36|0;h=A+68|0
;k=A+32|0;o=A+28|0;l=A+24|0;m=A+20|0;p=A+16|0;w=A+12|0;v=A+8|0;y=A+4|0;x=A;c[s>>2]=b;c[g>>2]=e;c[t>>
;2]=f;a[h>>0]=0;if((c[s>>2]|0?c[(c[s>>2]|0)+88>>2]|0:0)?c[(c[s>>2]|0)+84>
x3e;2]|0:0){c[z>>2]=c[(c[s>>2]|0)+84>>2];Db(c[z>>2]|0);c[j>>2]=c[(c[s>>
;2]|0)+96>>2];c[n>>2]=c[(c[j>>2]|0)+4>>2];c[k>>2]=c[(c[n>>2]|0)+168
x3e;>2];if(c[t>>2]&1024|0)c[t>>2]=c[t>>2]|2049;if(c[t>>2]&1|0){c[t>
x3e;2]=c[t>>2]|10;c[t>>2]=c[t>>2]&-5}do if(((((c[k>>2]|0?(c[t>>2]&2|
0)==0:0)?(c[t>>2]&32768|0)==0:0)?c[c[c[j>>2]>>2]>>2]&256|0:0)?(c[c[c[j>
x3e;2]>>2]>>2]&512|0)==0:0)?(c[(c[s>>2]|0)+8>>2]&8192|0)==0:0){if(!((c[(c[(c[s
>>2]|0)+128>>2]|0)+4+8>>2]|0)==0?(c[(c[(c[s>>2]|0)+128>>2]|0)+4>>2]|
0)!=0:0)){if(c[(c[(c[s>>2]|0)+128>>2]|0)+4>>2]|0)break;if(!(c[(c[(c[s>>2]|0)+128>
x3e;2]|0)+4+8>>2]|0))break}if((c[t>>2]&32|0)==0?c[c[c[j>>2]>>2]>>2]&
1024|0:0){c[o>>2]=c[t>>2]>>16&15;if((c[o>>2]|0)!=1?(d[(c[(c[s>>2]|0)+128
x3e;>2]|0)+56>>0]|0)==0:0)break;a[h>>0]=1;break}a[h>>0]=1}while(0);do if(!(a[h>>0]|
0)){c[u>>2]=Wa[c[(c[(c[j>>2]|0)+20>>2]|0)+80>>2]&31](c[z>>2]|0,c[(c[s>
;>2]|0)+88>>2]|0,c[g>>2]|0,c[t>>2]|0)|0;if(!(c[u>>2]|0))if((c[(c[z>>2]|0)+
72>>2]|0)==1869968492){c[u>>2]=Gb((c[z>>2]|0)+108|0)|0;if(!(c[u>>2]|0))if(c[t>>
;2]&2|0)q=36;else{Hb(c[z>>2]|0,c[t>>2]&16);q=36}}else q=36}else{if(((c[(c[s>>2]|0)+8>
;>2]&2|0?(c[t>>2]&8|0)==0:0)?(c[u>>2]=Wa[c[(c[(c[j>>2]|0)+20>>2]|0)+80>
;>2]&31](c[z>>2]|0,c[(c[s>>2]|0)+88>>2]|0,c[g>>2]|0,c[t>>2]|16384)|0
,(c[u>>2]|0)==0):0)?(c[(c[z>>2]|0)+72>>2]|0)==1651078259:0){q=36;break}c[m>>2]=c[(c[s>
;>2]|0)+128>>2];c[p>>2]=c[(c[m>>2]|0)+28>>2];c[(c[m>>2]|0)+28>>
2]=0;c[l>>2]=c[(c[c[k>>2]>>2]|0)+20>>2];c[u>>2]=Za[c[(c[l>>2]|0)+12
x3e;>2]&31](c[k>>2]|0,c[z>>2]|0,c[(c[s>>2]|0)+88>>2]|0,c[g>>2]|0,c[t
>>2]|0)|0;c[(c[m>>2]|0)+28>>2]=c[p>>2];q=36}while(0);if((q|0)==36){g=c[z>>2]|0
;if(c[t>>2]&16|0){c[g+64>>2]=0;c[(c[z>>2]|0)+64+4>>2]=c[(c[z>>2]|0)+24+28
>>2]}else{c[(c[z>>2]|0)+64>>2]=c[g+24+16>>2];c[(c[z>>2]|0)+64+4>>2]=
0}if((c[t>>2]&8192|0)==0?c[(c[s>>2]|0)+8>>2]&1|0:0){c[w>>2]=(c[(c[s>>
;2]|0)+88>>2]|0)+12;q=xb(c[(c[z>>2]|0)+56>>2]|0,c[(c[w>>2]|0)+4>>2]|0,64)|0;c[(
c[z>>2]|0)+56>>2]=q;w=xb(c[(c[z>>2]|0)+60>>2]|0,c[(c[w>>2]|0)+8>>2]|
0,64)|0;c[(c[z>>2]|0)+60>>2]=w}if((c[t>>2]&2048|0)==0?(c[v>>2]=c[(c[s>>2]|
0)+128>>2],c[(c[v>>2]|0)+28>>2]|0):0){c[y>>2]=Ib(c[z>>2]|0)|0;if(!(c[y>
x3e;2]|0)){if((c[(c[z>>2]|0)+72>>2]|0)==1869968492){if((c[v>>2]|0)+4|0)Kb((c[z>>2]|0)+108
|0,(c[v>>2]|0)+4|0);if((c[v>>2]|0)+20|0)Nb((c[z>>2]|0)+108|0,c[(c[v>>2]|0)+20>>
;2]|0,c[(c[v>>2]|0)+20+4>>2]|0)}}else c[u>>2]=Wa[c[(c[(c[y>>2]|0)+20>>2]|0)+44
>>2]&31](c[y>>2]|0,c[z>>2]|0,(c[v>>2]|0)+4|0,(c[v>>2]|0)+20|0)|0;Lb((c[z
x3e;>2]|0)+64|0,(c[v>>2]|0)+4|0)}if((((c[u>>2]|0)==0?(c[(c[z>>2]|0)+72>>2]|0)!=1651078259
:0)?(c[(c[z>>2]|0)+72>>2]|0)!=1668246896:0)?c[t>>2]&4|0:0){c[x>>2]=c[t>>2
]>>16&15;if((c[x>>2]|0)==0?c[t>>2]&4096|0:0)c[x>>2]=2;c[u>>2]=Ob(c[z
>>2]|0,c[x>>2]|0)|0}}c[r>>2]=c[u>>2];z=c[r>>2]|0;i=A;return z|0}c[r>>
;2]=35;z=c[r>>2]|0;i=A;return z|0}function Db(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;Eb(c[e>
x3e;2]|0);b=(c[e>>2]|0)+24|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[
b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;c[b+28>>2]=0;b=(c[e>>2]|0)+108|0;c[b>
;>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[(c[e>>2]|0)+76
+4>>2]=0;c[(c[e>>2]|0)+76>>2]=0;c[(c[e>>2]|0)+76+8>>2]=0;a[(c[e>>2]|
0)+76+18>>0]=0;c[(c[e>>2]|0)+100>>2]=0;c[(c[e>>2]|0)+104>>2]=0;c[(c[e>>
;2]|0)+128>>2]=0;c[(c[e>>2]|0)+132>>2]=0;c[(c[e>>2]|0)+136>>2]=0;c[(c[e>
x3e;2]|0)+140>>2]=0;c[(c[e>>2]|0)+152>>2]=0;c[(c[e>>2]|0)+72>>2]=0;c[(c[e>
;>2]|0)+56>>2]=0;c[(c[e>>2]|0)+60>>2]=0;c[(c[e>>2]|0)+144>>2]=0;c[(c[e>
;>2]|0)+148>>2]=0;i=d;return}function Eb(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if
(c[(c[b>>2]|0)+156>>2]|0?c[(c[(c[b>>2]|0)+156>>2]|0)+4>>2]&1|0:0){c[d>
;>2]=c[(c[(c[b>>2]|0)+4>>2]|0)+100>>2];Fb(c[d>>2]|0,c[(c[b>>2]|0)+76+12
x3e;>2]|0);c[(c[b>>2]|0)+76+12>>2]=0;a=(c[(c[b>>2]|0)+156>>2]|0)+4|0;c[a>>
;2]=c[a>>2]&-2;i=e;return}c[(c[b>>2]|0)+76+12>>2]=0;i=e;return}function Fb(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=f;return}Ra[c[(c[d>
;>2]|0)+8>>2]&7](c[d>>2]|0,c[e>>2]|0);i=f;return}function Gb(a){a=a|0;var d=0,e=0,f=0,g=
0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;d=l+24|0;e=l+20|0;k=l+16|0;j=l+12|0;g=l+8|0;f=l+4|0;h=l;c[e>>2]=a;a:do if(c[e>>
;2]|0){c[k>>2]=b[(c[e>>2]|0)+2>>1];c[j>>2]=b[c[e>>2]>>1];if((c[k>
;>2]|0)==0&(c[j>>2]|0)==0){c[d>>2]=0;a=c[d>>2]|0;i=l;return a|0}if(!((c[k>>2]|
0)<=0|(c[j>>2]|0)<=0)){c[f>>2]=-1;c[g>>2]=-1;c[h>>2]=0;while(1){if((c[h>
x3e;2]|0)>=(c[j>>2]|0))break;c[f>>2]=b[(c[(c[e>>2]|0)+12>>2]|0)+(c[h>>2]
x3c;<1)>>1];if((c[f>>2]|0)<=(c[g>>2]|0))break a;if((c[f>>2]|0)>=(c[k>
;>2]|0))break a;c[g>>2]=c[f>>2];c[h>>2]=(c[h>>2]|0)+1}if((c[f>>2]|0)==((c
[k>>2]|0)-1|0)){c[d>>2]=0;a=c[d>>2]|0;i=l;return a|0}}}while(0);c[d>>2]=6;a=c[d>>
;2]|0;i=l;return a|0}function Hb(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+32|0;k=h+12|0;j=h+16|0;f=h+8|0;g=h+4|0;e=h
;c[k>>2]=b;a[j>>0]=d;c[f>>2]=(c[k>>2]|0)+24;b=c[f>>2]|0;if(a[j>>0]|0
){c[(c[f>>2]|0)+8>>2]=c[b+8>>2]&-64;c[(c[f>>2]|0)+12>>2]=(c[(c[f>>
;2]|0)+12>>2]|0)+63&-64;c[g>>2]=(c[(c[f>>2]|0)+20>>2]|0)+(c[c[f>>2]>
x3e;2]|0)+63&-64;c[e>>2]=(c[(c[f>>2]|0)+24>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0)+
63&-64;c[(c[f>>2]|0)+20>>2]=c[(c[f>>2]|0)+20>>2]&-64;c[(c[f>>2]|0)+24
>>2]=c[(c[f>>2]|0)+24>>2]&-64;c[c[f>>2]>>2]=(c[g>>2]|0)-(c[(c[f
>>2]|0)+20>>2]|0);c[(c[f>>2]|0)+4>>2]=(c[e>>2]|0)-(c[(c[f>>2]|0)+24
x3e;>2]|0);k=c[f>>2]|0;k=k+16|0;k=c[k>>2]|0;k=k+32|0;k=k&-64;j=c[f>>2]|0;j=j+16|0;c[j>
;>2]=k;j=c[f>>2]|0;j=j+28|0;j=c[j>>2]|0;j=j+32|0;j=j&-64;k=c[f>>2]|0;k=k+28|0;c[k>
x3e;2]=j;i=h;return}else{c[(c[f>>2]|0)+20>>2]=c[b+20>>2]&-64;c[(c[f>>2]|0)+24>
x3e;2]=c[(c[f>>2]|0)+24>>2]&-64;c[g>>2]=(c[(c[f>>2]|0)+8>>2]|0)+(c[c[f>
;>2]>>2]|0)+63&-64;c[e>>2]=(c[(c[f>>2]|0)+12>>2]|0)-(c[(c[f>>2]|0)+4
>>2]|0)&-64;c[(c[f>>2]|0)+8>>2]=c[(c[f>>2]|0)+8>>2]&-64;c[(c[f>
x3e;2]|0)+12>>2]=(c[(c[f>>2]|0)+12>>2]|0)+63&-64;c[c[f>>2]>>2]=(c[g>
x3e;2]|0)-(c[(c[f>>2]|0)+8>>2]|0);c[(c[f>>2]|0)+4>>2]=(c[(c[f>>2]|0)+12>
x3e;2]|0)-(c[e>>2]|0);k=c[f>>2]|0;k=k+16|0;k=c[k>>2]|0;k=k+32|0;k=k&-64;j=c[f>>2]|0
;j=j+16|0;c[j>>2]=k;j=c[f>>2]|0;j=j+28|0;j=c[j>>2]|0;j=j+32|0;j=j&-64;k=c[f>>2]|0;k
=k+28|0;c[k>>2]=j;i=h;return}}function Ib(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;b=f+12|0;g=f+8|0;d=f+4|0;e=f;c
[b>>2]=a;c[g>>2]=c[(c[b>>2]|0)+4>>2];c[d>>2]=c[(c[(c[g>>2]|0)+96>
;>2]|0)+4>>2];c[e>>2]=c[(c[d>>2]|0)+164>>2];if(c[e>>2]|0?(c[(c[e>>
;2]|0)+24>>2]|0)==(c[(c[b>>2]|0)+72>>2]|0):0){g=c[e>>2]|0;i=f;return g|0}c[e>>
2]=Jb(c[d>>2]|0,c[(c[b>>2]|0)+72>>2]|0,0)|0;g=c[e>>2]|0;i=f;return g|0}function Jb(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;m=i;i=i+32|0;e=m+20|0;f=m+16|0;g=m+12|0;h=m+8|0;k=m+4|0;j=m;c[e>>
;2]=a;c[f>>2]=b;c[g>>2]=d;c[k>>2]=0;if(!(c[e>>2]|0)){l=c[k>>2]|0;i=m;return l|
0}c[h>>2]=c[(c[e>>2]|0)+156>>2];if(c[g>>2]|0){if(c[c[g>>2]>>2]|0)c[h
>>2]=c[(c[c[g>>2]>>2]|0)+4>>2];c[c[g>>2]>>2]=0}while(1){if(!(c[h>
;>2]|0)){l=12;break}c[j>>2]=c[(c[h>>2]|0)+8>>2];if((c[(c[j>>2]|0)+24>>2]|
0)==(c[f>>2]|0))break;c[h>>2]=c[(c[h>>2]|0)+4>>2]}if((l|0)==12){l=c[k>>2]|0;i=
m;return l|0}if(c[g>>2]|0)c[c[g>>2]>>2]=c[h>>2];c[k>>2]=c[j>>2];l=c[
k>>2]|0;i=m;return l|0}function Kb(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;
c[e>>2]=a;c[f>>2]=d;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=j;return}c[h>>
2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=(c[h>>2]|0)+(b[(c[e>>2]|0)+2>>1]<
;<3);while(1){if((c[h>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;Lb(c[h>
x3e;2]|0,c[f>>2]|0);c[h>>2]=(c[h>>2]|0)+8}i=j;return}function Lb(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;if(!((c[d>>2]|0)!=0&(c[
e>>2]|0)!=0)){i=h;return}a=Mb(c[c[d>>2]>>2]|0,c[c[e>>2]>>2]|0)|0;c[f>>
;2]=a+(Mb(c[(c[d>>2]|0)+4>>2]|0,c[(c[e>>2]|0)+4>>2]|0)|0);a=Mb(c[c[d>>2]>
x3e;2]|0,c[(c[e>>2]|0)+8>>2]|0)|0;c[g>>2]=a+(Mb(c[(c[d>>2]|0)+4>>2]|0,c[(c[e
x3e;>2]|0)+12>>2]|0)|0);c[c[d>>2]>>2]=c[f>>2];c[(c[d>>2]|0)+4>>
2]=c[g>>2];i=h;return}function Mb(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;l=i;i=i+32|0;f=l+24|0;d=l+20|0;
e=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;g=l;c[d>>2]=a;c[e>>2]=b;a=c[d>>2]|0;if((c[d>>2]|0)==0|(
c[e>>2]|0)==65536){c[f>>2]=a;k=c[f>>2]|0;i=l;return k|0}c[h>>2]=a;a=c[d>>2]|0;
c[d>>2]=(c[d>>2]|0)<0?0-a|0:a;c[h>>2]=c[h>>2]^c[e>>2];a=c[e>>2]|
0;c[e>>2]=(c[e>>2]|0)<0?0-a|0:a;c[j>>2]=c[d>>2];c[k>>2]=c[e>>2];
a=c[j>>2]|0;if((c[j>>2]|0)>>>0<=2048&(c[k>>2]|0)>>>0<=
1048576)c[j>>2]=((_(a,c[k>>2]|0)|0)+32768|0)>>>16;else{c[g>>2]=a&65535;e=_((c[
j>>2]|0)>>>16,c[k>>2]|0)|0;e=e+(_(c[g>>2]|0,(c[k>>2]|0)>>>
16)|0)|0;c[j>>2]=e+(((_(c[g>>2]|0,c[k>>2]&65535)|0)+32768|0)>>>16)}k=c[j>
x3e;2]|0;c[f>>2]=(c[h>>2]|0)<0?0-k|0:k;k=c[f>>2]|0;i=l;return k|0}function Nb(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;m=i;i=i+32|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m+16|0;l=m;c[g>>2]=a;c[h>>2]=d
;c[j>>2]=f;if(!(c[g>>2]|0)){i=m;return}c[l>>2]=c[(c[g>>2]|0)+4>>2];b[k>
x3e;1]=0;while(1){if((e[k>>1]|0)>=(b[(c[g>>2]|0)+2>>1]|0))break;f=c[l>>2]|0;c[f>
;>2]=(c[f>>2]|0)+(c[h>>2]|0);f=(c[l>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+(c[j
x3e;>2]|0);c[l>>2]=(c[l>>2]|0)+8;b[k>>1]=(b[k>>1]|0)+1<<16>>16}
i=m;return}function Ob(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[
f>>2]=b;if(c[e>>2]|0?c[(c[e>>2]|0)+4>>2]|0:0){c[g>>2]=c[(c[(c[(c[e>>
2]|0)+4>>2]|0)+96>>2]|0)+4>>2];c[d>>2]=Pb(c[g>>2]|0,c[e>>2]|0,c[f>
;>2]|0)|0;a=c[d>>2]|0;i=h;return a|0}c[d>>2]=6;a=c[d>>2]|0;i=h;return a|0}function Pb(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;o=i;i=i+32|0;g=o+20|0;h=o+16|0;j=o+12|0;k=o+8|0;m=o+4|0;l=o;n=o+24|0;c[g
x3e;>2]=b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=0;if((c[(c[h>>2]|0)+72>>2]|0)==1651078259
){n=c[k>>2]|0;i=o;return n|0}c[l>>2]=0;a[n>>0]=0;b=c[g>>2]|0;if((c[(c[h>>2]|0)+
72>>2]|0)==1869968492){c[m>>2]=c[b+164>>2];c[l>>2]=c[(c[g>>2]|0)+156>>
;2]}else c[m>>2]=Jb(b,c[(c[h>>2]|0)+72>>2]|0,l)|0;c[k>>2]=7;while(1){if(!(c[m>>
;2]|0))break;c[k>>2]=Wa[c[(c[m>>2]|0)+68>>2]&31](c[m>>2]|0,c[h>>2]|0,c[j
x3e;>2]|0,0)|0;if(!(c[k>>2]|0))break;if((c[k>>2]&255|0)!=19)break;c[m>>2]=Jb(c[g>
x3e;2]|0,c[(c[h>>2]|0)+72>>2]|0,l)|0;a[n>>0]=1}if(c[k>>2]|0){n=c[k>>2]|0;i=o;return
n|0}if(!((d[n>>0]|0|0)!=0&(c[m>>2]|0)!=0)){n=c[k>>2]|0;i=o;return n|0}Qb(c[g>>2]|0
,c[m>>2]|0,0,0)|0;n=c[k>>2]|0;i=o;return n|0}function Qb(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o+20|0;j=o+16|0;k=o+12|0;m=o+8|0;l=o+4|0;n=o;c[g>>2]=a;c[h>
;>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=0;if(!(c[g>>2]|0)){c[f>>2]=33;n=c[f>
;>2]|0;i=o;return n|0}if(!(c[h>>2]|0)){c[f>>2]=6;n=c[f>>2]|0;i=o;return n|0}c[m>>2]=
Rb((c[g>>2]|0)+156|0,c[h>>2]|0)|0;a:do if(c[m>>2]|0){Sb((c[g>>2]|0)+156|0,c[m>>
;2]|0);if((c[(c[h>>2]|0)+24>>2]|0)==1869968492)c[(c[g>>2]|0)+164>>2]=c[h>>2];if
((c[j>>2]|0)>>>0>0){c[n>>2]=c[(c[(c[h>>2]|0)+20>>2]|0)+52>>
;2];while(1){if((c[j>>2]|0)>>>0<=0)break a;c[l>>2]=Oa[c[n>>2]&63](c[h>
;>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0)|0;if(c[l>>2]|0)break a;c[j
x3e;>2]=(c[j>>2]|0)+-1}}}else c[l>>2]=6;while(0);c[f>>2]=c[l>>2];n=c[f>>2
]|0;i=o;return n|0}function Rb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;f=g+12|0;h=g+8|0;d=g+4|0;e=g;c[h>>
;2]=a;c[d>>2]=b;c[e>>2]=c[c[h>>2]>>2];while(1){if(!(c[e>>2]|0)){b=6;break}a=c[
e>>2]|0;if((c[(c[e>>2]|0)+8>>2]|0)==(c[d>>2]|0)){b=4;break}c[e>>2]=c[a+4>
x3e;2]}if((b|0)==4){c[f>>2]=a;h=c[f>>2]|0;i=g;return h|0}else if((b|0)==6){c[f>>2]=0;h=c[f>
x3e;2]|0;i=g;return h|0}return 0}function Sb(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;e=h+12|0;f=h+8|0;d=h+4|0;g=h;
c[e>>2]=a;c[f>>2]=b;c[d>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[f>>
2]|0)+4>>2];if(!(c[d>>2]|0)){i=h;return}c[(c[d>>2]|0)+4>>2]=c[g>>2];d=c[d>
;>2]|0;if(c[g>>2]|0)c[c[g>>2]>>2]=d;else c[(c[e>>2]|0)+4>>2]=d;c[c[f>
;>2]>>2]=0;c[(c[f>>2]|0)+4>>2]=c[c[e>>2]>>2];c[c[c[e>>2]>
x3e;2]>>2]=c[f>>2];c[c[e>>2]>>2]=c[f>>2];i=h;return}function Tb(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;if((c[d>>2]|0)>=0){d=a+32768&-65536;i=b;return
d|0}else{d=0-(0-a+32768&-65536)|0;i=b;return d|0}return 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;l=i;i=i+32|0;e=l+24|0;f=l+20|0;g=l+16|0;h=l+12|0;j=l+8|0;k=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if
(c[f>>2]|0?(c[g>>2]|0)!=(c[h>>2]|0):0){c[j>>2]=c[f>>2];d=c[f>>2]|0;c
[f>>2]=(c[f>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[g>>2];d=c[g>>2]|
0;c[g>>2]=(c[g>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[h>>2];d=c[h>>
2]|0;c[h>>2]=(c[h>>2]|0)<0?0-d|0:d;do if(!((c[f>>2]|0)<=46340&(c[g>>2]|0)
x3c;=46340&(c[h>>2]|0)>0))if((c[h>>2]|0)>0){yb(c[f>>2]|0,c[g>>2]|0,k);c[f
>>2]=Ab(c[k+4>>2]|0,c[k>>2]|0,c[h>>2]|0)|0;break}else{c[f>>2]=2147483647;break
}else{k=_(c[f>>2]|0,c[g>>2]|0)|0;c[f>>2]=(k|0)/(c[h>>2]|0)|0}while(0);k=c[f>>2
]|0;c[e>>2]=(c[j>>2]|0)<0?0-k|0:k;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=c[f>>
;2];k=c[e>>2]|0;i=l;return k|0}function Vb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+28|0;e=k+
24|0;g=k+20|0;f=k+16|0;h=k+8|0;j=k;c[d>>2]=a;c[e>>2]=b;c[g>>2]=c[d>>2];b=c[d>>
2]|0;c[d>>2]=(c[d>>2]|0)<0?0-b|0:b;c[g>>2]=c[g>>2]^c[e>>2];b=c[e>>
;2]|0;c[e>>2]=(c[e>>2]|0)<0?0-b|0:b;do if(c[e>>2]|0){a=c[d>>2]|0;if(!(c[d>>
;2]>>16)){c[f>>2]=(((a<<16)+(c[e>>2]>>1)|0)>>>0)/((c[e>>
;2]|0)>>>0)|0;break}else{c[h+4>>2]=a>>16;c[h>>2]=c[d>>2]<<16;c[
j+4>>2]=0;c[j>>2]=c[e>>2]>>1;zb(h,j,h);c[f>>2]=Ab(c[h+4>>2]|0,c[h>
;>2]|0,c[e>>2]|0)|0;break}}else c[f>>2]=2147483647;while(0);j=c[f>>2]|0;i=k;return ((c[g>
;>2]|0)<0?0-j|0:j)|0}function Wb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0;f=h+4|0;g
=h;c[d>>2]=a;if(!(c[d>>2]|0)){c[b>>2]=6;g=c[b>>2]|0;i=h;return g|0}a=Mb(c[c[d>>
;2]>>2]|0,c[(c[d>>2]|0)+12>>2]|0)|0;c[e>>2]=a-(Mb(c[(c[d>>2]|0)+4>>2
]|0,c[(c[d>>2]|0)+8>>2]|0)|0);if(c[e>>2]|0){a=0-(Vb(c[(c[d>>2]|0)+4>>2]|0,c[e
x3e;>2]|0)|0)|0;c[(c[d>>2]|0)+4>>2]=a;a=0-(Vb(c[(c[d>>2]|0)+8>>2]|0,c[e>>
2]|0)|0)|0;c[(c[d>>2]|0)+8>>2]=a;c[f>>2]=c[c[d>>2]>>2];c[g>>2]=c[(c[
d>>2]|0)+12>>2];g=Vb(c[g>>2]|0,c[e>>2]|0)|0;c[c[d>>2]>>2]=g;g=Vb(c[f
>>2]|0,c[e>>2]|0)|0;c[(c[d>>2]|0)+12>>2]=g;c[b>>2]=0;g=c[b>>2]|0;i=h
;return g|0}else{c[b>>2]=6;g=c[b>>2]|0;i=h;return g|0}return 0}function Xb(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;m=i;i=i+32|0;e=m+28|0;f=m+24|0;n=m+20|0;h=m+16|0;j=m+12|0;k=m+8|0;l=m+4|0;g=m;c[e>>2]=
a;c[f>>2]=b;c[n>>2]=d;c[g>>2]=c[n>>2]<<16;if(!((c[e>>2]|0)!=0&(
c[f>>2]|0)!=0)){i=m;return}n=xb(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0,c[g>>
;2]|0)|0;c[h>>2]=n+(xb(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>
x3e;2]|0)|0);n=xb(c[c[e>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0;c[j>
x3e;2]=n+(xb(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);n=xb(c
[(c[e>>2]|0)+8>>2]|0,c[c[f>>2]>>2]|0,c[g>>2]|0)|0;c[k>>2]=n+(xb(c[(c
[e>>2]|0)+12>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>>2]|0)|0);n=xb(c[(c[e>>
2]|0)+8>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0;c[l>>2]=n+(xb(c[(c[e>>
;2]|0)+12>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);c[c[f>>2]>>2]=c
[h>>2];c[(c[f>>2]|0)+4>>2]=c[j>>2];c[(c[f>>2]|0)+8>>2]=c[k>>
;2];c[(c[f>>2]|0)+12>>2]=c[l>>2];i=m;return}function Yb(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;k=i;i=i+32|0;e=k+20|0;f=k+16|0;l=k+12|0;h=k+8|0;j=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[l>>
;2]=d;c[g>>2]=c[l>>2]<<16;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=k;return
}l=xb(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0,c[g>>2]|0)|0;c[h>>2]=l+(xb(c[(
c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0);l=xb(c[c[e>>2
]>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>>2]|0)|0;c[j>>2]=l+(xb(c[(c[e>>2]|
0)+4>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);c[c[e>>2]>>2]=c[h>
;>2];c[(c[e>>2]|0)+4>>2]=c[j>>2];i=k;return}function Zb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,
j=0;j=i;i=i+32|0;b=j+20|0;g=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;d=j;c[b>>2]=a;c[g>>2]=0;if((c[b>>2]|0)
x3c;=0){a=c[g>>2]|0;i=j;return a|0}c[e>>2]=0;c[f>>2]=c[b>>2];c[d>>2]=24;do{c[e
>>2]=c[e>>2]<<2|(c[f>>2]|0)>>>30;c[f>>2]=c[f>>2]<
;<2;c[g>>2]=c[g>>2]<<1;c[h>>2]=(c[g>>2]<<1)+1;if((c[e>>
;2]|0)>>>0>=(c[h>>2]|0)>>>0){c[e>>2]=(c[e>>2]|0)-(c[h>>
;2]|0);c[g>>2]=(c[g>>2]|0)+1}a=(c[d>>2]|0)+-1|0;c[d>>2]=a}while((a|0)!=0);a=c[g>>
;2]|0;i=j;return a|0}function _b(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;n=i;i=i+48|0;f=n+32|0;k=n+
28|0;g=n+24|0;l=n+20|0;m=n+16|0;h=n+8|0;j=n;c[f>>2]=a;c[k>>2]=b;c[g>>2]=d;c[l>>2]=e;b=c[
f>>2]|0;do if(!(c[k>>2]|0)){a=c[l>>2]|0;if((b|0)>=0){c[m>>2]=a;break}else{c[m>
x3e;2]=0-a;break}}else{if(!b){a=c[g>>2]|0;if((c[k>>2]|0)>=0){c[m>>2]=0-a;break}else{c[m>
x3e;2]=a;break}}b=c[g>>2]|0;if(!(c[l>>2]|0)){a=c[k>>2]|0;if((b|0)>=0){c[m>>2]=a;break
}else{c[m>>2]=0-a;break}}if(!b){a=c[f>>2]|0;if((c[l>>2]|0)>=0){c[m>>2]=0-a;break}else
{c[m>>2]=a;break}}yb(c[f>>2]|0,c[l>>2]|0,h);yb(c[k>>2]|0,c[g>>2]|0,j);if((c[h+
4>>2]|0)>>>0>(c[j+4>>2]|0)>>>0){c[m>>2]=1;break}if((c[h+4>
x3e;2]|0)>>>0<(c[j+4>>2]|0)>>>0){c[m>>2]=-1;break}if((c[h>>2]|0
)>>>0>(c[j>>2]|0)>>>0){c[m>>2]=1;break}if((c[h>>2]|0)>>
;>0<(c[j>>2]|0)>>>0){c[m>>2]=-1;break}else{c[m>>2]=0;break}}while(0);i=n;
return c[m>>2]|0}function $b(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;p=i;i=i+48|0
;f=p+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;n=p+8|0;o=p+4|0;m=p;c[f>>2]=a;c[g>>2]=b;c[h>>
;2]=d;c[j>>2]=e;c[k>>2]=c[f>>2];c[l>>2]=c[g>>2];if((c[k>>2]|0)<
0)c[k>>2]=0-(c[k>>2]|0);if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>>2]|0);c[n>
x3e;2]=(c[k>>2]|0)+(c[l>>2]|0);c[k>>2]=c[h>>2];if((c[k>>2]|0)<0)c[k>
x3e;2]=0-(c[k>>2]|0);c[l>>2]=c[j>>2];if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>
;>2]|0);c[o>>2]=(c[k>>2]|0)+(c[l>>2]|0);c[k>>2]=(c[h>>2]|0)+(c[f>>
;2]|0);if((c[k>>2]|0)<0)c[k>>2]=0-(c[k>>2]|0);c[l>>2]=(c[j>>2]|0)+(c[g>
;>2]|0);if((c[l>>2]|0)>=0){e=c[k>>2]|0;d=c[l>>2]|0;d=e+d|0;c[m>>2]=d;d=c[n>
;>2]|0;e=c[o>>2]|0;e=d+e|0;d=c[m>>2]|0;d=e-d|0;e=c[m>>2]|0;e=e>>4;e=(d|0)<(e|0
);e=e&1;i=p;return e|0}c[l>>2]=0-(c[l>>2]|0);e=c[k>>2]|0;d=c[l>>2]|0;d=e+d|0;c[m>
;>2]=d;d=c[n>>2]|0;e=c[o>>2]|0;e=d+e|0;d=c[m>>2]|0;d=e-d|0;e=c[m>>2]|0;e=e>>
;4;e=(d|0)<(e|0);e=e&1;i=p;return e|0}function ac(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;d=h+12|0;e=h+8
|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[g>>2]=bc(c[d>>2]|0,96,f)|0;if(c
[f>>2]|0){a=c[f>>2]|0;i=h;return a|0}c[c[g>>2]>>2]=c[d>>2];c[c[e>>2]
x3e;>2]=c[g>>2];a=c[f>>2]|0;i=h;return a|0}function bc(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;k=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[k>>2]=a;c[e>>2]=b;c[f>>2]=d;c[g>>
;2]=cc(c[k>>2]|0,c[e>>2]|0,h)|0;if((c[h>>2]|0)==0&(c[e>>2]|0)>0)Ns(c[g>
x3e;2]|0,0,c[e>>2]|0)|0;c[c[f>>2]>>2]=c[h>>2];i=j;return c[g>>2]|0}function cc
(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;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f
>>2]=b;c[g>>2]=d;c[j>>2]=0;c[h>>2]=0;if((c[f>>2]|0)>0){c[h>>2]=
Ya[c[(c[e>>2]|0)+4>>2]&127](c[e>>2]|0,c[f>>2]|0)|0;if(!(c[h>>2]|0))c[j>
;>2]=64}else if((c[f>>2]|0)<0)c[j>>2]=6;c[c[g>>2]>>2]=c[j>>2];i=k;return
c[h>>2]|0}function dc(a){a=a|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[d>>
;2]=(c[g>>2]|0)+20;c[e>>2]=(c[g>>2]|0)+56;b[(c[d>>2]|0)+2>>1]=0;b[c[d>>
;2]>>1]=0;c[(c[d>>2]|0)+28>>2]=0;a=c[e>>2]|0;d=c[d>>2]|0;e=a+36|0;do{c[a>
x3e;2]=c[d>>2];a=a+4|0;d=d+4|0}while((a|0)<(e|0));i=f;return}function ec(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];Fb(c[e>>2]|0,c[(c[d>>2]|0)+
20+4>>2]|0);c[(c[d>>2]|0)+20+4>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+8>>
;2]|0);c[(c[d>>2]|0)+20+8>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+12>>2]|0);c[(c[d
>>2]|0)+20+12>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+20>>2]|0);c[(c[d>>
2]|0)+20+20>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+32>>2]|0);c[(c[d>>2]|0)+20+32
x3e;>2]=0;c[(c[d>>2]|0)+20+24>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+8
>>2]=0;c[(c[d>>2]|0)+12>>2]=0;dc(c[d>>2]|0);i=b;return}function fc(a){a=a|0;var b=0,d=0,
e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(!(c[b>>2]|0)){i=e;return}c[d>>2]=c[c[b>>2]>
;>2];ec(c[b>>2]|0);Fb(c[d>>2]|0,c[b>>2]|0);c[b>>2]=0;i=e;return}function gc(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[g>>2]=c[c[d>>2]>>2];b
=hc(c[g>>2]|0,8,0,c[(c[d>>2]|0)+4>>2]<<1,0,e)|0;c[(c[d>>2]|0)+20+20>>
;2]=b;if(c[e>>2]|0){g=c[e>>2]|0;i=f;return g|0}a[(c[d>>2]|0)+16>>0]=1;c[(c[d>>
2]|0)+20+24>>2]=(c[(c[d>>2]|0)+20+20>>2]|0)+(c[(c[d>>2]|0)+4>>2]<<3);
jc(c[d>>2]|0);g=c[e>>2]|0;i=f;return g|0}function hc(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;o=i;i=i+32|0;p=o+24|0;h=o+20|0;j=o+16|0;k=o+12|0;l=o+8|0;m=o+4|0;n=o;c[p>>2]=a;c[h>
x3e;2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=0;c[l>>2]=ic
(c[p>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,n)|0;if((c[n>>2]|
0)==0?(c[k>>2]|0)>(c[j>>2]|0):0){p=(c[l>>2]|0)+(_(c[j>>2]|0,c[h>>2]|0)|0)|
0;Ns(p|0,0,_((c[k>>2]|0)-(c[j>>2]|0)|0,c[h>>2]|0)|0)|0}c[c[m>>2]>>2]=c[n>
x3e;2];i=o;return c[l>>2]|0}function ic(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;s=i;i=i+48|0;h=s+36|0;j=s+32|0;k=s+28|0;l=s+24|0;m=s+20|0;n=s+16|0;q=s+12|0;o=s+8|0;p=s+4|0;r=s;c[h>>
;2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[q>>2]=0;do
if(!((c[k>>2]|0)<0|(c[l>>2]|0)<0|(c[j>>2]|0)<0)){if((c[l>>2]|0)==0|(c[j
x3e;>2]|0)==0){Fb(c[h>>2]|0,c[m>>2]|0);c[m>>2]=0;break}if((c[l>>2]|0)>(2147483647
/(c[j>>2]|0)|0|0)){c[q>>2]=10;break}if(!(c[k>>2]|0)){c[m>>2]=bc(c[h>>2]|0,_(c[
l>>2]|0,c[j>>2]|0)|0,q)|0;break}c[p>>2]=_(c[k>>2]|0,c[j>>2]|0)|0;c[r>>
;2]=_(c[l>>2]|0,c[j>>2]|0)|0;c[o>>2]=Wa[c[(c[h>>2]|0)+12>>2]&31](c[h>
;>2]|0,c[p>>2]|0,c[r>>2]|0,c[m>>2]|0)|0;if(!(c[o>>2]|0)){c[q>>2]=64;break
}else{c[m>>2]=c[o>>2];break}}else c[q>>2]=6;while(0);c[c[n>>2]>>2]=c[q>
x3e;2];i=s;return c[m>>2]|0}function jc(d){d=d|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
]=d;c[f>>2]=(c[e>>2]|0)+20;c[h>>2]=(c[e>>2]|0)+56;c[(c[h>>2]|0)+4>>2
]=(c[(c[f>>2]|0)+4>>2]|0)+(b[(c[f>>2]|0)+2>>1]<<3);c[(c[h>>2]|0)+8
x3e;>2]=(c[(c[f>>2]|0)+8>>2]|0)+(b[(c[f>>2]|0)+2>>1]|0);c[(c[h>>2]|0)+12
x3e;>2]=(c[(c[f>>2]|0)+12>>2]|0)+(b[c[f>>2]>>1]<<1);if(!(a[(c[e>>
;2]|0)+16>>0]|0)){i=g;return}c[(c[e>>2]|0)+56+20>>2]=(c[(c[e>>2]|0)+20+20>>2]|
0)+(b[(c[f>>2]|0)+2>>1]<<3);c[(c[e>>2]|0)+56+24>>2]=(c[(c[e>>2]|0)+20
+24>>2]|0)+(b[(c[f>>2]|0)+2>>1]<<3);i=g;return}function kc(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,s=0,t=0;s=i;i=i+48|0;g=s+36|0;h=s+32|0;t=s+28|0;j=s+24|0;o=s+20|0;n=s+16|0;l=s+12|0;
m=s+8|0;k=s+40|0;p=s+4|0;q=s;c[h>>2]=d;c[t>>2]=e;c[j>>2]=f;c[o>>2]=c[c[h>>2]
x3e;>2];c[n>>2]=0;c[l>>2]=(c[h>>2]|0)+20;c[m>>2]=(c[h>>2]|0)+56;a[k>
x3e;0]=0;c[p>>2]=(b[(c[l>>2]|0)+2>>1]|0)+(b[(c[m>>2]|0)+2>>1]|0)+(c[t>>
;2]|0);c[q>>2]=c[(c[h>>2]|0)+4>>2];do if((c[p>>2]|0)>>>0>(c[q>
x3e;2]|0)>>>0){c[p>>2]=(c[p>>2]|0)+7&-8;if((c[p>>2]|0)>>>0>
;32767){c[g>>2]=10;t=c[g>>2]|0;i=s;return t|0}t=hc(c[o>>2]|0,8,c[q>>2]|0,c[p>>
2]|0,c[(c[l>>2]|0)+4>>2]|0,n)|0;c[(c[l>>2]|0)+4>>2]=t;if((c[n>>2]|0)==0?(t=hc(
c[o>>2]|0,1,c[q>>2]|0,c[p>>2]|0,c[(c[l>>2]|0)+8>>2]|0,n)|0,c[(c[l>>2
]|0)+8>>2]=t,(c[n>>2]|0)==0):0){if(a[(c[h>>2]|0)+16>>0]|0){t=hc(c[o>>2]|0,8,c[
q>>2]<<1,c[p>>2]<<1,c[(c[h>>2]|0)+20+20>>2]|0,n)|0;c[(c[h>>
;2]|0)+20+20>>2]=t;if(c[n>>2]|0)break;Ts((c[(c[h>>2]|0)+20+20>>2]|0)+(c[p>>2]
x3c;<3)|0,(c[(c[h>>2]|0)+20+20>>2]|0)+(c[q>>2]<<3)|0,c[q>>2]<<3
|0)|0;c[(c[h>>2]|0)+20+24>>2]=(c[(c[h>>2]|0)+20+20>>2]|0)+(c[p>>2]<<
3)}a[k>>0]=1;c[(c[h>>2]|0)+4>>2]=c[p>>2];r=10}}else r=10;while(0);a:do if((r|0)==10){c[q
>>2]=c[(c[h>>2]|0)+8>>2];c[p>>2]=(b[c[l>>2]>>1]|0)+(b[c[m>>
;2]>>1]|0)+(c[j>>2]|0);do if((c[p>>2]|0)>>>0>(c[q>>2]|0)>>
x3e;0){c[p>>2]=(c[p>>2]|0)+3&-4;if((c[p>>2]|0)>>>0>32767){c[g>>
2]=10;t=c[g>>2]|0;i=s;return t|0}else{t=hc(c[o>>2]|0,2,c[q>>2]|0,c[p>>2]|0,c[(c[l>
x3e;2]|0)+12>>2]|0,n)|0;c[(c[l>>2]|0)+12>>2]=t;if(c[n>>2]|0)break a;a[k>>0]=1;
c[(c[h>>2]|0)+8>>2]=c[p>>2];break}}while(0);if(a[k>>0]|0)jc(c[h>>2]|0)}while(0
);c[g>>2]=c[n>>2];t=c[g>>2]|0;i=s;return t|0}function lc(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;d=k+28|0;l=k+24|0;g=k+20|0;f=k+16|0;h=k+12|0;j=k+8|0;e=k+4|0;m=k;c[d>>2]=a;c[l>>
;2]=b;c[g>>2]=c[c[d>>2]>>2];c[f>>2]=0;c[e>>2]=(c[d>>2]|0)+20;c[m>
;>2]=(c[d>>2]|0)+56;c[h>>2]=(c[(c[e>>2]|0)+28>>2]|0)+(c[(c[m>>2]|0)+28>
;>2]|0)+(c[l>>2]|0);c[j>>2]=c[(c[d>>2]|0)+12>>2];if((c[h>>2]|0)>>
;>0<=(c[j>>2]|0)>>>0){m=c[f>>2]|0;i=k;return m|0}c[h>>2]=(c[h>>
2]|0)+1&-2;m=hc(c[g>>2]|0,32,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+32>>2]|0,f
)|0;c[(c[e>>2]|0)+32>>2]=m;if(c[f>>2]|0){m=c[f>>2]|0;i=k;return m|0}c[(c[d>>2]|
0)+12>>2]=c[h>>2];mc(c[d>>2]|0);m=c[f>>2]|0;i=k;return m|0}function mc(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+4|0;d=b;c[f>>2]=a;c[e>>2]=(c[f>>2]|0)+20;c[d>>2]=(c
[f>>2]|0)+56;c[(c[d>>2]|0)+32>>2]=(c[(c[e>>2]|0)+32>>2]|0)+(c[(c[e>>
2]|0)+28>>2]<<5);i=b;return}function nc(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;c[f>>2]=(c[e>>2]|0)+56;b[(c[f>>2]|0)+2>>1]=0;b[c[f>>2]>>1]=0;c[(c[
f>>2]|0)+28>>2]=0;jc(c[e>>2]|0);mc(c[e>>2]|0);i=d;return}function oc(a){a=a|0;var d=0,e=
0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[d>>2]=a;if(!(c[d>>2]|0)){
i=k;return}c[e>>2]=(c[d>>2]|0)+20;c[f>>2]=(c[d>>2]|0)+56;c[j>>2]=b[c[f>
x3e;2]>>1];c[h>>2]=b[(c[e>>2]|0)+2>>1];b[(c[e>>2]|0)+2>>1]=(b[(c[e
x3e;>2]|0)+2>>1]|0)+(b[(c[f>>2]|0)+2>>1]|0);b[c[e>>2]>>1]=(b[c[e>>
;2]>>1]|0)+(b[c[f>>2]>>1]|0);a=(c[e>>2]|0)+28|0;c[a>>2]=(c[a>>2]|0)+(
c[(c[f>>2]|0)+28>>2]|0);c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[j
x3e;>2]|0)>>>0)break;b[(c[(c[f>>2]|0)+12>>2]|0)+(c[g>>2]<<1)>
x3e;1]=(b[(c[(c[f>>2]|0)+12>>2]|0)+(c[g>>2]<<1)>>1]|0)+(c[h>>2]|0);c
[g>>2]=(c[g>>2]|0)+1}nc(c[d>>2]|0);i=k;return}function pc(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,j=0,k=0
,l=0,m=0,n=0;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;l=n+12|0;k=n+8|0;m=n+4|0;j=n;c[f>>2]=a;c[g>>2]=e;c[l>
;>2]=b[(c[g>>2]|0)+20+2>>1];c[k>>2]=b[(c[g>>2]|0)+20>>1];c[h>>2
]=kc(c[f>>2]|0,c[l>>2]|0,c[k>>2]|0)|0;if(c[h>>2]|0){a=c[h>>2]|0;i=n;return a|0
}c[m>>2]=(c[f>>2]|0)+20;c[j>>2]=(c[g>>2]|0)+20;Ss(c[(c[m>>2]|0)+4>>2
]|0,c[(c[j>>2]|0)+4>>2]|0,c[l>>2]<<3|0)|0;Ss(c[(c[m>>2]|0)+8>>2]|0,c
[(c[j>>2]|0)+8>>2]|0,c[l>>2]|0)|0;Ss(c[(c[m>>2]|0)+12>>2]|0,c[(c[j>>
2]|0)+12>>2]|0,c[k>>2]<<1|0)|0;if(d[(c[f>>2]|0)+16>>0]|0?d[(c[g>>2]|
0)+16>>0]|0:0){Ss(c[(c[f>>2]|0)+20+20>>2]|0,c[(c[g>>2]|0)+20+20>>2]|0,c[l>
;>2]<<3|0)|0;Ss(c[(c[f>>2]|0)+20+24>>2]|0,c[(c[g>>2]|0)+20+24>>2]|0,c[l
x3e;>2]<<3|0)|0}b[(c[m>>2]|0)+2>>1]=c[l>>2];b[c[m>>2]>>1]=c[k
x3e;>2];jc(c[f>>2]|0);a=c[h>>2]|0;i=n;return a|0}function qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;h=i;i=i+16|0;j=h+12|0;d=h+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=0;c[e>>2]=c[j
x3e;>2];if(!((c[e>>2]|0)!=0&(c[d>>2]|0)!=0)){j=c[f>>2]|0;i=h;return j|0}while(1){if(!(c[
c[e>>2]>>2]|0)){g=6;break}j=(Kr(c[c[e>>2]>>2]|0,c[d>>2]|0)|0)==0;a=c[e>
x3e;2]|0;if(j)break;c[e>>2]=a+8}if((g|0)==6){j=c[f>>2]|0;i=h;return j|0}c[f>>2]=c[a+4>>2
];j=c[f>>2]|0;i=h;return j|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;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;c[c[g>>2]>
x3e;2]=c[k>>2];c[(c[g>>2]|0)+4>>2]=c[j>>2];c[(c[g>>2]|0)+8>>2]=c[h
x3e;>2];c[(c[g>>2]|0)+12>>2]=0;i=f;return}function sc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d
+8|0;f=d+4|0;c[e>>2]=a;c[f>>2]=b;c[d>>2]=(c[e>>2]|0)+16;c[(c[e>>2]|0)+12>
x3e;2]=c[f>>2];ta(c[d>>2]|0,1)}function tc(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;m=i;
i=i+32|0;h=m+24|0;e=m+20|0;f=m+16|0;j=m+12|0;k=m+8|0;g=m+4|0;l=m;c[e>>2]=a;c[f>>2]=b;c[j>>2]=d;c[c
[j>>2]>>2]=0;if(!(c[e>>2]|0)){c[h>>2]=33;l=c[h>>2]|0;i=m;return l|0}if(!(c[f
x3e;>2]|0)){c[h>>2]=6;l=c[h>>2]|0;i=m;return l|0}c[g>>2]=c[c[e>>2]>>2];c[
l>>2]=bc(c[g>>2]|0,40,k)|0;if(!(c[k>>2]|0)){c[(c[l>>2]|0)+28>>2]=c[g>>
;2];do if(c[c[f>>2]>>2]&1|0)uc(c[l>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[(c[f>
;>2]|0)+8>>2]|0);else{if(c[c[f>>2]>>2]&4|0){c[k>>2]=qr(c[l>>2]|0,c[(
c[f>>2]|0)+12>>2]|0)|0;c[(c[l>>2]|0)+16>>2]=c[(c[f>>2]|0)+12>>2];break
}if(c[c[f>>2]>>2]&2|0?c[(c[f>>2]|0)+16>>2]|0:0){Fb(c[g>>2]|0,c[l>>
;2]|0);c[l>>2]=0;c[l>>2]=c[(c[f>>2]|0)+16>>2];break}c[k>>2]=6}while(0);e=c[g
x3e;>2]|0;f=c[l>>2]|0;if(c[k>>2]|0){Fb(e,f);c[l>>2]=0}else c[f+28>>2]=e;c[c[j>
x3e;2]>>2]=c[l>>2]}c[h>>2]=c[k>>2];l=c[h>>2]|0;i=m;return l|0}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;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]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2];c[(c[f>
x3e;2]|0)+8>>2]=0;c[(c[f>>2]|0)+32>>2]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>
x3e;2]|0)+24>>2]=0;i=e;return}function vc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=a;c[e>>2]=b;if(!(c[d>>2]|0)){i=g;return}c[f>>2]=c[(c[d>>2]|0)+28>>2];
wc(c[d>>2]|0);if(c[e>>2]|0){i=g;return}Fb(c[f>>2]|0,c[d>>2]|0);c[d>>2]=0;i=g;return
}function wc(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)){i=d;return}if(!(c[(c[b>
x3e;2]|0)+24>>2]|0)){i=d;return}Va[c[(c[b>>2]|0)+24>>2]&63](c[b>>2]|0);i=d;return}function
xc(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c
[g>>2]=c[(c[(c[d>>2]|0)+4>>2]|0)+100>>2];if(c[(c[(c[d>>2]|0)+156>>2]|
0)+4>>2]&1|0){Fb(c[g>>2]|0,c[(c[d>>2]|0)+76+12>>2]|0);c[(c[d>>2]|0)+76+12
>>2]=0}else{a=(c[(c[d>>2]|0)+156>>2]|0)+4|0;c[a>>2]=c[a>>2]|1}a=bc(c[g>
x3e;2]|0,c[e>>2]|0,f)|0;c[(c[d>>2]|0)+76+12>>2]=a;i=h;return c[f>>2]|0}function yc(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;m=i;i=i+32|0;d=m+28|0;e=m+24|0;f=m+20|0;j=m+16|0;h=m+12|0;g=m+8|0;k=m+4|0;l=
m;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0?c[(c[e>>2]|0)+96>>2]|0:0){c[h>>2]=
c[(c[e>>2]|0)+96>>2];c[g>>2]=c[(c[h>>2]|0)+20>>2];c[k>>2]=c[(c[h>
;>2]|0)+8>>2];c[l>>2]=bc(c[k>>2]|0,c[(c[g>>2]|0)+44>>2]|0,j)|0;do if(c[j
x3e;>2]|0){if(c[f>>2]|0)c[c[f>>2]>>2]=0}else{c[(c[l>>2]|0)+4>>2]=c[e>
;>2];c[j>>2]=zc(c[l>>2]|0)|0;if(c[j>>2]|0){Ac(c[l>>2]|0);Fb(c[k>>2]|0,c[l
>>2]|0);c[l>>2]=0;break}c[(c[l>>2]|0)+8>>2]=c[(c[e>>2]|0)+84>>2];c[(
c[e>>2]|0)+84>>2]=c[l>>2];if(c[f>>2]|0)c[c[f>>2]>>2]=c[l>>
2]}while(0);c[d>>2]=c[j>>2];l=c[d>>2]|0;i=m;return l|0}c[d>>2]=6;l=c[d>>2]|0;i
=m;return l|0}function zc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;b=j+20|0;e=j+16|0;d=j+12|0;h=j+8|0;f=j+4|0;g=j;c
[b>>2]=a;c[e>>2]=c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2];c[d>>2]=c[(c[e>
;>2]|0)+20>>2];c[h>>2]=c[(c[e>>2]|0)+8>>2];c[f>>2]=0;c[g>>2]=0;
c[c[b>>2]>>2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=bc(c[h>>2]|0,40,f)|0;if(c[
f>>2]|0){a=c[f>>2]|0;i=j;return a|0}c[(c[b>>2]|0)+156>>2]=c[g>>2];if(!(c[c[c[e
>>2]>>2]>>2]&512))c[f>>2]=ac(c[h>>2]|0,c[g>>2]|0)|0;if(c[f>
;>2]|0){a=c[f>>2]|0;i=j;return a|0}if(!(c[(c[d>>2]|0)+64>>2]|0)){a=c[f>>2]|0;i=j;return
a|0}c[f>>2]=Ta[c[(c[d>>2]|0)+64>>2]&63](c[b>>2]|0)|0;a=c[f>>2]|0;i=j;return
a|0}function Ac(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;d=g+4|0;f=g;c[b>>2]=a;c[e>>2
]=c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2];c[d>>2]=c[(c[e>>2]|0)+20>>2];c[f
x3e;>2]=c[(c[e>>2]|0)+8>>2];if(c[(c[d>>2]|0)+68>>2]|0)Va[c[(c[d>>2]|0)+68
>>2]&63](c[b>>2]|0);Eb(c[b>>2]|0);if(!(c[(c[b>>2]|0)+156>>2]|0)){i=g;return
}if(!(c[c[c[e>>2]>>2]>>2]&512)){fc(c[c[(c[b>>2]|0)+156>>2]>>2]|
0);c[c[(c[b>>2]|0)+156>>2]>>2]=0}Fb(c[f>>2]|0,c[(c[b>>2]|0)+156>>2]|
0);c[(c[b>>2]|0)+156>>2]=0;i=g;return}function Bc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+
16|0;d=j+12|0;g=j+8|0;h=j+4|0;b=j;c[f>>2]=a;if(!(c[f>>2]|0)){i=j;return}c[d>>2]=c[(c[(c[f>>
;2]|0)+4>>2]|0)+96>>2];c[g>>2]=c[(c[d>>2]|0)+8>>2];c[h>>2]=0;c[b>
;>2]=c[(c[(c[f>>2]|0)+4>>2]|0)+84>>2];while(1){if(!(c[b>>2]|0)){e=10;break}if((c[b
x3e;>2]|0)==(c[f>>2]|0))break;c[h>>2]=c[b>>2];c[b>>2]=c[(c[b>>2]|0)+8>
;>2]}if((e|0)==10){i=j;return}b=c[(c[b>>2]|0)+8>>2]|0;if(c[h>>2]|0)c[(c[h>>2]|0)+8
x3e;>2]=b;else c[(c[(c[f>>2]|0)+4>>2]|0)+84>>2]=b;Ac(c[f>>2]|0);Fb(c[g>>2
]|0,c[f>>2]|0);c[f>>2]=0;i=j;return}function Cc(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;e=k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[f>>2]|0
)){c[e>>2]=35;d=c[e>>2]|0;i=k;return d|0}c[j>>2]=c[g>>2];if(c[(c[f>>2]|0)+92
x3e;>2]|0)c[j>>2]=Dc(c[f>>2]|0,c[g>>2]|0)|0;c[e>>2]=Cb(c[f>>2]|0,c[j>
;>2]|0,c[h>>2]|0)|0;d=c[e>>2]|0;i=k;return d|0}function Dc(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;if(!(c[d>>2]|0)){g=
c[g>>2]|0;i=h;return g|0}if(!(c[(c[d>>2]|0)+92>>2]|0)){g=c[g>>2]|0;i=h;return g|0}c[f>
;>2]=c[(c[d>>2]|0)+92>>2];c[g>>2]=Ya[c[(c[(c[f>>2]|0)+12>>2]|0)+12>
x3e;2]&127](c[f>>2]|0,c[e>>2]|0)|0;g=c[g>>2]|0;i=h;return g|0}function Ec(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;m=i;i=i+64|0;f=m+48|0;g=m+44|0;h=m+40|0;j=m+36|0;k=m+32|0;l=m;c[g>>2]=a;
c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(c[h>>2]|0){c[l>>2]=4;c[l+12>>2]=c[h
>>2];c[l+16>>2]=0;c[f>>2]=Fc(c[g>>2]|0,l,c[j>>2]|0,c[k>>2]|0)|0;b=c[
f>>2]|0;i=m;return b|0}else{c[f>>2]=6;b=c[f>>2]|0;i=m;return b|0}return 0}function Fc(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;G=i;i=i
+96|0;C=G+80|0;j=G+76|0;k=G+72|0;l=G+68|0;D=G+64|0;E=G+60|0;o=G+56|0;u=G+52|0;B=G+48|0;q=G+44|0;v=G+40|0;p=G+84|0;n=G+36|0;t=G+32
|0;w=G+28|0;y=G+24|0;x=G+20|0;z=G+16|0;A=G+12|0;r=G+8|0;m=G+4|0;s=G;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;
c[D>>2]=h;c[B>>2]=0;c[q>>2]=0;c[v>>2]=0;if(!(((c[D>>2]|0)==0&(c[l>
x3e;2]|0)>=0^1)&(c[k>>2]|0)!=0)){c[C>>2]=6;F=c[C>>2]|0;i=G;return F|0}if(c[c[k>>
;2]>>2]&2|0)h=(c[(c[k>>2]|0)+16>>2]|0)!=0;else h=0;a[p>>0]=h&1;c[E>>
2]=tc(c[j>>2]|0,c[k>>2]|0,B)|0;a:do if(!(c[E>>2]|0)){c[u>>2]=c[c[j>>2]>
x3e;2];do if(c[c[k>>2]>>2]&8|0?c[(c[k>>2]|0)+20>>2]|0:0){c[o>>2]=c[(c[k
x3e;>2]|0)+20>>2];if(c[c[c[o>>2]>>2]>>2]&1|0){c[w>>2]=0;c[y>>
;2]=0;if(c[c[k>>2]>>2]&16|0){c[w>>2]=c[(c[k>>2]|0)+24>>2];c[y>>
2]=c[(c[k>>2]|0)+28>>2]}c[E>>2]=Gc(c[o>>2]|0,c[B>>2]|0,c[l>>2]|0,c[w
>>2]|0,c[y>>2]|0,q)|0;if(!(c[E>>2]|0))break}else c[E>>2]=32;vc(c[B>>2]|0,d[p
x3e;>0]|0);F=60;break a}else F=14;while(0);b:do if((F|0)==14){c[n>>2]=(c[j>>2]|0)+28;c[t>>2]=(
c[n>>2]|0)+(c[(c[j>>2]|0)+24>>2]<<2);while(1){if((c[n>>2]|0)>>>
0>=(c[t>>2]|0)>>>0){F=27;break a}if(c[c[c[c[n>>2]>>2]>>2]>>
;2]&1|0){c[x>>2]=0;c[z>>2]=0;c[o>>2]=c[c[n>>2]>>2];if(c[c[k>>2]
x3e;>2]&16|0){c[x>>2]=c[(c[k>>2]|0)+24>>2];c[z>>2]=c[(c[k>>2]|0)+28
x3e;>2]}c[E>>2]=Gc(c[o>>2]|0,c[B>>2]|0,c[l>>2]|0,c[x>>2]|0,c[z>>
;2]|0,q)|0;if(!(c[E>>2]|0))break b;if((Kr(c[(c[c[c[n>>2]>>2]>>2]|0)+8>>2]|0,10489
)|0)==0?(c[E>>2]&255|0)==142:0){if(Kc(c[B>>2]|0,0)|0){F=27;break a}c[E>>2]=Lc(c[j>>
2]|0,c[B>>2]|0,c[l>>2]|0,c[x>>2]|0,c[z>>2]|0,c[D>>2]|0)|0;if(!(c[E>>
2]|0))break}if((c[E>>2]&255|0)!=2){F=27;break a}}c[n>>2]=(c[n>>2]|0)+4}vc(c[B>>2]|0
,d[p>>0]|0);c[C>>2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}while(0);if(a[p>>0]|0){
B=(c[q>>2]|0)+8|0;c[B>>2]=c[B>>2]|1024}c[v>>2]=bc(c[u>>2]|0,12,E)|0;if(!(c[E
x3e;>2]|0)){c[(c[v>>2]|0)+8>>2]=c[q>>2];td((c[(c[q>>2]|0)+96>>2]|0)+24|0,
c[v>>2]|0);if((c[l>>2]|0)>=0){c[E>>2]=yc(c[q>>2]|0,0)|0;if(c[E>>2]|0){F=60
;break}c[E>>2]=ud(c[q>>2]|0,A)|0;if(c[E>>2]|0){F=60;break}c[(c[q>>2]|0)+88>>2]=
c[A>>2]}if(c[(c[q>>2]|0)+8>>2]&1|0){if((b[(c[q>>2]|0)+74>>1]|0)<0)b[(
c[q>>2]|0)+74>>1]=0-(b[(c[q>>2]|0)+74>>1]|0);if(!(c[(c[q>>2]|0)+8>>2
]&32))b[(c[q>>2]|0)+78>>1]=b[(c[q>>2]|0)+74>>1]|0}c:do if(c[(c[q>>2]|0)+8
>>2]&2|0){c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[(c[q>>2]|0)+28>>2]|0
))break c;c[m>>2]=(c[(c[q>>2]|0)+32>>2]|0)+(c[r>>2]<<4);if((b[c[m>>2
]>>1]|0)<0)b[c[m>>2]>>1]=0-(b[c[m>>2]>>1]|0);if((c[(c[m>>2]|0)+
8>>2]|0)<0)c[(c[m>>2]|0)+8>>2]=(0-(c[(c[m>>2]|0)+8>>2]|0)&65535)<
;<16>>16;if((c[(c[m>>2]|0)+12>>2]|0)<0)c[(c[m>>2]|0)+12>>2]=0-(c[(c[
m>>2]|0)+12>>2]|0);c[r>>2]=(c[r>>2]|0)+1}}while(0);c[s>>2]=c[(c[q>>2
]|0)+128>>2];c[(c[s>>2]|0)+4>>2]=65536;c[(c[s>>2]|0)+4+4>>2]=0;c[(c[s>>
;2]|0)+4+8>>2]=0;c[(c[s>>2]|0)+4+12>>2]=65536;c[(c[s>>2]|0)+20>>2]=0;c[(c[s>
;>2]|0)+20+4>>2]=0;c[(c[s>>2]|0)+60>>2]=1;h=c[q>>2]|0;if(c[D>>2]|0){c[c[D
>>2]>>2]=h;break}else{vd(h)|0;break}}else F=60}else F=27;while(0);if((F|0)==27){if(!(((c[E>>2]&
;255|0)!=81?(c[E>>2]&255|0)!=2:0)?(c[E>>2]&255|0)!=85:0))F=30;do if((F|0)==30){c[E>>2]=Xc
(c[j>>2]|0,c[B>>2]|0,c[l>>2]|0,c[D>>2]|0,c[k>>2]|0)|0;if(c[E>>2]|0){
if((c[E>>2]&255|0)!=2)break;c[E>>2]=2;break}else{vc(c[B>>2]|0,d[p>>0]|0);c[C>
x3e;2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}}while(0);vc(c[B>>2]|0,d[p>>0]|0);F=60}if((F|0
)==60)vd(c[q>>2]|0)|0;c[C>>2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}function Gc(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;v=i;i=i+64|0;h=v+48|0;j=v+44|0
;k=v+40|0;l=v+36|0;m=v+32|0;n=v+28|0;u=v+24|0;o=v+20|0;r=v+16|0;p=v+12|0;q=v+8|0;t=v+4|0;s=v;c[h>>2]=a;c[j>>
2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[r>>2]=0;c[t>>2]=0;c[o
>>2]=c[(c[h>>2]|0)+20>>2];c[u>>2]=c[(c[h>>2]|0)+8>>2];c[r>>
;2]=bc(c[u>>2]|0,c[(c[o>>2]|0)+36>>2]|0,p)|0;do if((c[p>>2]|0)==0?(c[t>>2]=bc(
c[u>>2]|0,64,p)|0,(c[p>>2]|0)==0):0){c[(c[r>>2]|0)+128>>2]=c[t>>2];c[(c[r>
;>2]|0)+96>>2]=c[h>>2];c[(c[r>>2]|0)+100>>2]=c[u>>2];c[(c[r>>2]|
0)+104>>2]=c[j>>2];c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]=0;c[s>>2]=0;while
(1){if((c[s>>2]|0)>=(c[l>>2]|0))break;if(!((c[(c[(c[r>>2]|0)+128>>2]|0)+52>>
;2]|0)!=0^1))break;if((c[(c[m>>2]|0)+(c[s>>2]<<3)>>2]|0)==1768842098)c[(c[(c[r>>
;2]|0)+128>>2]|0)+52>>2]=c[(c[m>>2]|0)+(c[s>>2]<<3)+4>>2];c[s>
x3e;2]=(c[s>>2]|0)+1}if(c[(c[o>>2]|0)+48>>2]|0)c[p>>2]=Za[c[(c[o>>2]|0)+48>
;>2]&31](c[j>>2]|0,c[r>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(!(c
[p>>2]|0)){c[q>>2]=Hc(c[r>>2]|0)|0;if((c[q>>2]|0)!=0&(c[q>>2]|0)!=38){c[p
>>2]=c[q>>2];break}else{c[c[n>>2]>>2]=c[r>>2];break}}}while(0);if(!(c[p>
x3e;2]|0)){b=c[p>>2]|0;i=v;return b|0}Ic(c[r>>2]|0,c[u>>2]|0);if(c[(c[o>>2]|0)+52>
x3e;2]|0)Va[c[(c[o>>2]|0)+52>>2]&63](c[r>>2]|0);Fb(c[u>>2]|0,c[t>>2]|0);c
[t>>2]=0;Fb(c[u>>2]|0,c[r>>2]|0);c[r>>2]=0;c[c[n>>2]>>2]=0;b=c[p>
;>2]|0;i=v;return b|0}function Hc(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;b=j+12|0;d=j+8|0;g=j+4|0;f=j;c[d>
x3e;2]=a;c[g>>2]=c[(c[d>>2]|0)+40>>2];if(!(c[g>>2]|0)){c[b>>2]=38;h=c[b>
x3e;2]|0;i=j;return h|0}c[f>>2]=(c[g>>2]|0)+(c[(c[d>>2]|0)+36>>2]<<2);while(1){
a=(c[f>>2]|0)+-4|0;c[f>>2]=a;if(a>>>0<(c[g>>2]|0)>>>0)break;if((
c[(c[c[f>>2]>>2]|0)+4>>2]|0)!=1970170211)continue;if(!((e[(c[c[f>>2]>>2]|0)+8
x3e;>1]|0|0)==3?(e[(c[c[f>>2]>>2]|0)+10>>1]|0|0)==10:0)){if(e[(c[c[f>>2]>>
;2]|0)+8>>1]|0|0)continue;if((e[(c[c[f>>2]>>2]|0)+10>>1]|0|0)!=4)continue}if((((c[f>
;>2]|0)-(c[g>>2]|0)|0)/4|0|0)<=15){h=11;break}}if((h|0)==11){c[(c[d>>2]|0)+92>>2]=c[c[f
x3e;>2]>>2];c[b>>2]=0;h=c[b>>2]|0;i=j;return h|0}c[f>>2]=(c[g>>2]|0)+(c[(
c[d>>2]|0)+36>>2]<<2);while(1){h=(c[f>>2]|0)+-4|0;c[f>>2]=h;if(h>>
x3e;0<(c[g>>2]|0)>>>0){h=17;break}if((c[(c[c[f>>2]>>2]|0)+4>>2]|0)!=
1970170211)continue;if((((c[f>>2]|0)-(c[g>>2]|0)|0)/4|0|0)<=15){h=16;break}}if((h|0)==16){c[(c[d>
x3e;2]|0)+92>>2]=c[c[f>>2]>>2];c[b>>2]=0;h=c[b>>2]|0;i=j;return h|0}else if((h
|0)==17){c[b>>2]=38;h=c[b>>2]|0;i=j;return h|0}return 0}function Ic(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;if(!(c[d>>2]|0)){i=h;return}c[g>
;>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[d>>2]|0)+36>>2]|0))break;c[f>>2]=c[(c[(c
[d>>2]|0)+40>>2]|0)+(c[g>>2]<<2)>>2];Jc(c[f>>2]|0);c[(c[(c[d>
x3e;2]|0)+40>>2]|0)+(c[g>>2]<<2)>>2]=0;c[g>>2]=(c[g>>2]|0)+1}Fb(c[e
x3e;>2]|0,c[(c[d>>2]|0)+40>>2]|0);c[(c[d>>2]|0)+40>>2]=0;c[(c[d>>2]|0)+36
>>2]=0;i=h;return}function Jc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;b=f+12|0;d=f+8|0;g=f+4|0;e=f;c[b>>
;2]=a;c[d>>2]=c[(c[b>>2]|0)+12>>2];c[g>>2]=c[c[b>>2]>>2];c[e>
x3e;2]=c[(c[g>>2]|0)+100>>2];if(!(c[(c[d>>2]|0)+8>>2]|0)){e=c[e>>2]|0;g=c[b>
;>2]|0;Fb(e,g);c[b>>2]=0;i=f;return}Va[c[(c[d>>2]|0)+8>>2]&63](c[b>>2]|0);e=c[
e>>2]|0;g=c[b>>2]|0;Fb(e,g);c[b>>2]=0;i=f;return}function Kc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;
g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;if(c[(c[d>>2]|0)+20>
x3e;2]|0){if(Wa[c[(c[d>>2]|0)+20>>2]&31](c[d>>2]|0,c[e>>2]|0,0,0)|0)c[f>>
2]=85}else if((c[e>>2]|0)>>>0>(c[(c[d>>2]|0)+4>>2]|0)>>>0)c[f
x3e;>2]=85;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[(c[d>>2]|0)+8>>2]=c[e>
x3e;2];a=c[f>>2]|0;i=g;return a|0}function Lc(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0
,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;w=i;i=i+64|0;j=w+52|0;k=w+48|0;l=w+44|0;m=w+40|0;y=w+36|0;x=w+32|0;n=w+28|0;o=w+24|
0;s=w+20|0;t=w+16|0;r=w+12|0;u=w+8|0;q=w+56|0;v=w+4|0;p=w;c[k>>2]=a;c[l>>2]=b;c[m>>2]=e;c[y>
x3e;2]=f;c[x>>2]=g;c[n>>2]=h;c[s>>2]=c[c[k>>2]>>2];c[y>>2]=c[y>
x3e;2];c[x>>2]=c[x>>2];c[u>>2]=Mc(c[l>>2]|0)|0;c[o>>2]=Nc(c[l>>2]|0,
c[m>>2]|0,t,r,q)|0;if((((c[o>>2]|0)==0?(Kc(c[l>>2]|0,(c[u>>2]|0)+(c[t>>2]|0)|0
)|0)==0:0)?(c[v>>2]=bc(c[s>>2]|0,c[r>>2]|0,o)|0,(c[o>>2]|0)==0):0)?(c[o>>2]=Rc
(c[l>>2]|0,c[v>>2]|0,c[r>>2]|0)|0,(c[o>>2]|0)==0):0)c[o>>2]=Tc(c[k>>
2]|0,c[v>>2]|0,c[r>>2]|0,(c[m>>2]|0)<0?c[m>>2]|0:0,d[q>>0]|0|0?10406:10410
,c[n>>2]|0)|0;if((c[o>>2]|0)==2?(c[p>>2]=Kc(c[l>>2]|0,c[u>>2]|0)|0,c[p>
x3e;2]|0):0){c[j>>2]=c[p>>2];y=c[j>>2]|0;i=w;return y|0}c[j>>2]=c[o>>2];y=c[j
x3e;>2]|0;i=w;return y|0}function Mc(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 Nc(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;v=i;i=i+48|0;t=v+36|0;k=v+32|0;l=v+28|0;m=v+24|0;n=v+20|0;o=v+16|0;u=v+12|0;q=v+40|0;r=v+8|0;s=v+4|0;p=v;c[k>>2]=d;c
[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[c[m>>2]>>2]=0;c[c[n>
x3e;2]>>2]=0;a[c[o>>2]>>0]=0;c[s>>2]=Oc(c[k>>2]|0,u)|0;if(c[u>>2]|0){
c[t>>2]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}if((c[s>>2]|0)!=1954115633){c[t>>2]=
2;u=c[t>>2]|0;i=v;return u|0}b[q>>1]=Pc(c[k>>2]|0,u)|0;if(c[u>>2]|0){c[t>>2]=c
[u>>2];u=c[t>>2]|0;i=v;return u|0}d=Qc(c[k>>2]|0,6)|0;c[u>>2]=d;if(d|0){c[t>>2
]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}c[r>>2]=-1;a[c[o>>2]>>0]=0;c[p>>
;2]=0;while(1){if((c[p>>2]|0)>=(e[q>>1]|0|0)){k=26;break}c[s>>2]=Oc(c[k>>2]|0,u)|0;
if(c[u>>2]|0){k=15;break}d=Qc(c[k>>2]|0,4)|0;c[u>>2]=d;if(d|0){k=15;break}d=Oc(c[k>>2]|0
,u)|0;c[c[m>>2]>>2]=d;if(c[u>>2]|0){k=15;break}d=Oc(c[k>>2]|0,u)|0;c[c[n>>2]
x3e;>2]=d;if(c[u>>2]|0){k=15;break}if((c[s>>2]|0)==1128875040){c[r>>2]=(c[r>>2]|0)+
1;d=c[m>>2]|0;c[d>>2]=(c[d>>2]|0)+22;d=c[n>>2]|0;c[d>>2]=(c[d>>2]|0)-
22;a[c[o>>2]>>0]=1;if((c[l>>2]|0)<0){k=18;break}}else if((c[s>>2]|0)==1415139377?(c
[r>>2]=(c[r>>2]|0)+1,d=c[m>>2]|0,c[d>>2]=(c[d>>2]|0)+24,d=c[n>>2]|0,
c[d>>2]=(c[d>>2]|0)-24,a[c[o>>2]>>0]=0,(c[l>>2]|0)<0):0){k=21;break}if((c
[l>>2]|0)>=0?(c[r>>2]|0)==(c[l>>2]|0):0){k=24;break}c[p>>2]=(c[p>>2]|0)+1
}if((k|0)==15){c[t>>2]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}else if((k|0)==18){c[t>>2]=0;u
=c[t>>2]|0;i=v;return u|0}else if((k|0)==21){c[t>>2]=0;u=c[t>>2]|0;i=v;return u|0}else if((k|0)==24
){c[t>>2]=0;u=c[t>>2]|0;i=v;return u|0}else if((k|0)==26){c[t>>2]=142;u=c[t>>2]|0;i=v;return
u|0}return 0}function Oc(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;k=m+20|0;j=m+4
|0;l=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=0;c[l>>2]=0;c[c[h>>2]>>2]=0;do if
(((c[(c[g>>2]|0)+8>>2]|0)+3|0)>>>0<(c[(c[g>>2]|0)+4>>2]|0)>>
;>0){e=c[g>>2]|0;if(c[(c[g>>2]|0)+20>>2]|0){if((Wa[c[e+20>>2]&31](c[g>>
;2]|0,c[(c[g>>2]|0)+8>>2]|0,k,4)|0)!=4)break;c[j>>2]=k}else c[j>>2]=(c[e>>2]|0
)+(c[(c[g>>2]|0)+8>>2]|0);if(c[j>>2]|0){c[j>>2]=(c[j>>2]|0)+4;c[l>>2
]=a[(c[j>>2]|0)+-4>>0]<<24|d[(c[j>>2]|0)+-4+1>>0]<<16|d[(c[j>
x3e;2]|0)+-4+2>>0]<<8|d[(c[j>>2]|0)+-4+3>>0]<<0}k=(c[g>>2]|0)+8|0;c[
k>>2]=(c[k>>2]|0)+4;c[f>>2]=c[l>>2];l=c[f>>2]|0;i=m;return l|0}while(0);c[c[h
x3e;>2]>>2]=85;c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}function Pc(e,f){e=e|0;f=f|0;var g=0,h=0,
j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;g=n+14|0;h=n+8|0;j=n+4|0;l=n+16|0;k=n;m=n+12|0;c[h>>2]=e;c[j>>2]=f;c[k>
;>2]=0;b[m>>1]=0;c[c[j>>2]>>2]=0;do if(((c[(c[h>>2]|0)+8>>2]|0)+1|0)>
;>>0<(c[(c[h>>2]|0)+4>>2]|0)>>>0){f=c[h>>2]|0;if(c[(c[h>>2
]|0)+20>>2]|0){if((Wa[c[f+20>>2]&31](c[h>>2]|0,c[(c[h>>2]|0)+8>>2]|0,l,2)|
0)!=2)break;c[k>>2]=l}else c[k>>2]=(c[f>>2]|0)+(c[(c[h>>2]|0)+8>>2]|0);if(c[k
x3e;>2]|0){c[k>>2]=(c[k>>2]|0)+2;b[m>>1]=a[(c[k>>2]|0)+-2>>0]<<
16>>16<<8|d[(c[k>>2]|0)+-2+1>>0]<<0}l=(c[h>>2]|0)+8|0;c[l>>
;2]=(c[l>>2]|0)+2;b[g>>1]=b[m>>1]|0;m=b[g>>1]|0;i=n;return m|0}while(0);c[c[j>>
;2]>>2]=85;b[g>>1]=0;m=b[g>>1]|0;i=n;return m|0}function Qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g
=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)<0){c[d>>2]=85;a=
c[d>>2]|0;i=g;return a|0}else{c[d>>2]=Kc(c[e>>2]|0,(c[(c[e>>2]|0)+8>>2]|0)+(c[
f>>2]|0)|0)|0;a=c[d>>2]|0;i=g;return a|0}return 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+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=Sc(c[h>>2]|0,c[(c[h>
;>2]|0)+8>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function Sc(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g>>2]=
a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=0;if((c[h>>2]|0)>>>0>
;=(c[(c[g>>2]|0)+4>>2]|0)>>>0){c[f>>2]=85;m=c[f>>2]|0;i=n;return m|0}d=c[
g>>2]|0;if(c[(c[g>>2]|0)+20>>2]|0)c[m>>2]=Wa[c[d+20>>2]&31](c[g>>
;2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;else{c[m>>2]=(c[d+4>>2]|0)-(c[h>
x3e;2]|0);if((c[m>>2]|0)>>>0>(c[k>>2]|0)>>>0)c[m>>2]=c[k>
x3e;2];Ss(c[j>>2]|0,(c[c[g>>2]>>2]|0)+(c[h>>2]|0)|0,c[m>>2]|0)|0}c[(c[g>
x3e;2]|0)+8>>2]=(c[h>>2]|0)+(c[m>>2]|0);if((c[m>>2]|0)>>>0<(c[k>
;>2]|0)>>>0)c[l>>2]=85;c[f>>2]=c[l>>2];m=c[f>>2]|0;i=n;return m|0}function
Tc(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;s=i;i=i+80|0;h=s+72|0;j
=s+68|0;k=s+64|0;t=s+60|0;l=s+56|0;m=s+52|0;n=s+48|0;o=s+16|0;p=s+8|0;r=s+4|0;q=s;c[j>>2]=a;c[k>>2]=b;c[t>
;>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[r>>2]=0;c[q>>2]=c[c[j>>2
]>>2];c[p>>2]=Vc(c[j>>2]|0,c[k>>2]|0,c[t>>2]|0,33,r)|0;if(c[p>>2]|0){
Fb(c[q>>2]|0,c[k>>2]|0);c[k>>2]=0;c[h>>2]=c[p>>2];t=c[h>>2]|0;i=s;return
t|0}c[o>>2]=2;c[o+16>>2]=c[r>>2];if(c[m>>2]|0){c[o>>2]=c[o>>2]|8;c[
o+20>>2]=Wc(c[j>>2]|0,c[m>>2]|0)|0}c[p>>2]=Fc(c[j>>2]|0,o,c[l>>2]|0,
c[n>>2]|0)|0;if(!(c[p>>2]|0)){t=(c[c[n>>2]>>2]|0)+8|0;c[t>>2]=c[t>>2
]&-1025}else{wc(c[r>>2]|0);Fb(c[q>>2]|0,c[r>>2]|0);c[r>>2]=0}c[h>>2]=c[p
x3e;>2];t=c[h>>2]|0;i=s;return t|0}function Uc(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]|0)+28>>2];Fb(c[e>>2]|0,c[c[d>>2]>>2]|0);c[c[d
>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;c[(c[d>>2
]|0)+24>>2]=0;i=b;return}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,j=0,k=0,l=0,m=0,n=0,o=0,p=0,
q=0;q=i;i=i+48|0;g=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;l=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;p=q;c[h>>2]=a;c[j>>2]=
b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;if(!(c[h>>2]|0)){c[g>>2]=33;p=c[g>>2
]|0;i=q;return p|0}if(!(c[j>>2]|0)){c[g>>2]=6;p=c[g>>2]|0;i=q;return p|0}c[c[m>>2]>
x3e;2]=0;c[o>>2]=c[c[h>>2]>>2];c[p>>2]=bc(c[o>>2]|0,40,n)|0;if(!(c[n>>
;2]|0)){uc(c[p>>2]|0,c[j>>2]|0,c[k>>2]|0);c[(c[p>>2]|0)+24>>2]=c[l>>
2];c[c[m>>2]>>2]=c[p>>2]}c[g>>2]=c[n>>2];p=c[g>>2]|0;i=q;return p|0}
function Wc(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;l=i;i=i+32|0;e=l+20|0;d=l+16|0;f=l+12|0;j=l+8|0;g=l+4|0;h=l;c[d
>>2]=a;c[f>>2]=b;c[j>>2]=0;if(!((c[d>>2]|0)!=0&(c[f>>2]|0)!=0)){c[e>
x3e;2]=c[j>>2];k=c[e>>2]|0;i=l;return k|0}c[g>>2]=(c[d>>2]|0)+28;c[h>>2]=(c[g
x3e;>2]|0)+(c[(c[d>>2]|0)+24>>2]<<2);while(1){if((c[g>>2]|0)>>>0>
;=(c[h>>2]|0)>>>0)break;b=(Kr(c[(c[c[c[g>>2]>>2]>>2]|0)+8>>2]|0
,c[f>>2]|0)|0)==0;d=c[g>>2]|0;if(b){k=6;break}c[g>>2]=d+4}if((k|0)==6)c[j>>2]=c[d>
x3e;2];c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|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;n=i;i=i+32|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g>>2]=a;c[h>
x3e;2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[l>>2]=c[l>>2];c[m>>2]=Yc(c[
g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;if((c[m>>2]&255|0)==2)c[m>
x3e;2]=Zc(c[g>>2]|0,c[h>>2]|0,0,c[j>>2]|0,c[k>>2]|0)|0;if((c[m>>2]&255|0)!=
2?(c[m>>2]&255|0)!=85:0){b=c[m>>2]|0;i=n;return b|0}if(!(c[c[l>>2]>>2]&4)){b=c
[m>>2]|0;i=n;return b|0}c[m>>2]=dd(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>
;2]|0,c[l>>2]|0)|0;b=c[m>>2]|0;i=n;return b|0}function Yc(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;q=i;i=i+160|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;l=q+12|0;o=q+32|0;n=q+8|0;m=q+4|0;p=q;c[h>>
;2]=a;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;if(!(c[j>>2]|0)){c[g>>2]=85;b=c[g>>
;2]|0;i=q;return b|0}c[n>>2]=Kc(c[j>>2]|0,0)|0;if((c[n>>2]|0)==0?(c[n>>2]=Rc(c[j>
x3e;2]|0,o,128)|0,(c[n>>2]|0)==0):0){if(((((((d[o>>0]|0|0)==0?(d[o+74>>0]|0|0)==0:0)?(d[o+82>
x3e;0]|0|0)==0:0)?d[o+1>>0]|0|0:0)?(d[o+1>>0]|0|0)<=33:0)?(d[o+63>>0]|0|0)==0:0)?(d[o+(2+(d[o
+1>>0]|0))>>0]|0|0)==0:0){c[m>>2]=(d[o+83>>0]|0)<<24|(d[o+84>>0]|0)
x3c;<16|(d[o+85>>0]|0)<<8|(d[o+86>>0]|0);c[p>>2]=128+((c[m>>2]|0)+127&
;-128);c[g>>2]=Zc(c[h>>2]|0,c[j>>2]|0,c[p>>2]|0,c[k>>2]|0,c[l>>2]|0)|
0;b=c[g>>2]|0;i=q;return b|0}c[g>>2]=2;b=c[g>>2]|0;i=q;return b|0}c[g>>2]=c[n>>
;2];b=c[g>>2]|0;i=q;return b|0}function Zc(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;t=i;i=i+64|0;g=t+48|0;h=t+44|0;j=t+40|0;u=t+36|0;k=t+32|0;l=t+28|0;r=t+24|0;o=t+20|0;q=t+16|0;s=t+12|0
;n=t+8|0;m=t+4|0;p=t;c[h>>2]=a;c[j>>2]=b;c[u>>2]=d;c[k>>2]=e;c[l>>2]=f;c[r>
;>2]=c[c[h>>2]>>2];c[o>>2]=_c(c[h>>2]|0,c[j>>2]|0,c[u>>2]|0,q,s
)|0;if(c[o>>2]|0){c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return u|0}c[o>>2]=$c(c[h>
;>2]|0,c[j>>2]|0,c[q>>2]|0,c[s>>2]|0,1347375956,n,m)|0;f=c[h>>2]|0;e=c[j>>
;2]|0;if(!(c[o>>2]|0)){c[o>>2]=bd(f,e,c[n>>2]|0,c[m>>2]|0,c[k>>2]|0,c[l>
x3e;2]|0)|0;Fb(c[r>>2]|0,c[n>>2]|0);c[n>>2]=0;if(!(c[o>>2]|0))c[c[c[l>>2]>
;>2]>>2]=1;c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return u|0}c[o>>2]=$c(f,e,c[q
x3e;>2]|0,c[s>>2]|0,1936092788,n,m)|0;if((c[o>>2]|0)==0?(c[p>>2]=(c[k>>2]|0)%(c[m
x3e;>2]|0)|0,c[o>>2]=cd(c[h>>2]|0,c[j>>2]|0,c[n>>2]|0,c[m>>2]|0,c[p>
x3e;2]|0,c[l>>2]|0)|0,Fb(c[r>>2]|0,c[n>>2]|0),c[n>>2]=0,(c[o>>2]|0)==0):0)c[c[
c[l>>2]>>2]>>2]=c[m>>2];c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return
u|0}function _c(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;x=
i;i=i+96|0;j=x+48|0;y=x+44|0;k=x+40|0;l=x+36|0;m=x+32|0;n=x+28|0;q=x+24|0;r=x+72|0;s=x+56|0;u=x+20|0;v=x+16|0;p=x+12|0;o=x+8|0;t
=x+4|0;w=x;c[y>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[y>>2]=
c[y>>2];c[q>>2]=Kc(c[k>>2]|0,c[l>>2]|0)|0;if(c[q>>2]|0){c[j>>2]=c[q
x3e;>2];y=c[j>>2]|0;i=x;return y|0}c[q>>2]=Rc(c[k>>2]|0,r,16)|0;if(c[q>>2]|0){c[j
x3e;>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}c[c[n>>2]>>2]=(c[l>>2]|0)+((d[
r>>0]|0)<<24|(d[r+1>>0]|0)<<16|(d[r+2>>0]|0)<<8|(d[r+3>>0]|
0));c[u>>2]=(c[l>>2]|0)+((d[r+4>>0]|0)<<24|(d[r+5>>0]|0)<<16|(d[r+6
x3e;>0]|0)<<8|(d[r+7>>0]|0));c[v>>2]=(d[r+8>>0]|0)<<24|(d[r+9>>
0]|0)<<16|(d[r+10>>0]|0)<<8|(d[r+11>>0]|0);if(((c[c[n>>2]>>2]|0)+(c[
v>>2]|0)|0)==(c[u>>2]|0)?(c[u>>2]|0)!=(c[l>>2]|0):0){c[q>>2]=Kc(c[k>>
;2]|0,c[u>>2]|0)|0;if(c[q>>2]|0){c[j>>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}a[
s+15>>0]=(d[r+15>>0]|0)+1;c[q>>2]=Rc(c[k>>2]|0,s,16)|0;if(c[q>>2]|0){c[j>
x3e;2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}c[p>>2]=1;c[o>>2]=1;c[t>>2]=0;while(
1){if((c[t>>2]|0)>=16)break;if(d[s+(c[t>>2]|0)>>0]|0|0)c[p>>2]=0;if((d[s+(c[t>
x3e;2]|0)>>0]|0|0)!=(d[r+(c[t>>2]|0)>>0]|0|0))c[o>>2]=0;c[t>>2]=(c[t>>
;2]|0)+1}if(!((c[p>>2]|0)!=0|(c[o>>2]|0)!=0)){c[j>>2]=2;y=c[j>>2]|0;i=x;return y|0}c[q
x3e;>2]=Qc(c[k>>2]|0,8)|0;c[w>>2]=(Pc(c[k>>2]|0,q)|0)&65535;if(c[q>>2]|0){c[j
x3e;>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}if((c[w>>2]|0)==-1){c[j>>2]=2;y=c[j>
;>2]|0;i=x;return y|0}c[q>>2]=Kc(c[k>>2]|0,(c[u>>2]|0)+(c[w>>2]|0)|0)|0;if(c[q>
;>2]|0){c[j>>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}else{c[c[m>>2]>>2]=(c[
u>>2]|0)+(c[w>>2]|0);c[j>>2]=0;y=c[j>>2]|0;i=x;return y|0}}c[j>>2]=2;y=c[j>
;>2]|0;i=x;return y|0}function $c(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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=i;i=i+80|0;o=C+72|0;D=C+68|0;p=C+64|0;q=C+60|0;r=C+56|0;k=C+52|0;s=C+48|0;
t=C+44|0;u=C+40|0;m=C+36|0;v=C+32|0;l=C+28|0;A=C+24|0;n=C+20|0;z=C+16|0;w=C+12|0;B=C+8|0;x=C+4|0;y=C;c[D>>2]=a;c[p>
;>2]=d;c[q>>2]=e;c[r>>2]=f;c[k>>2]=g;c[s>>2]=h;c[t>>2]=j;c[w>>2
]=c[c[D>>2]>>2];c[u>>2]=Kc(c[p>>2]|0,c[q>>2]|0)|0;if(c[u>>2]|0){c[o
x3e;>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[l>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if
(c[u>>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[l>>2]=(c[l>>
;2]|0)+1;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[l>>2]|0)){k=30;break}c[n>>2]=Oc(c[p
x3e;>2]|0,u)|0;if(c[u>>2]|0){k=10;break}c[A>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if(c[u>
x3e;2]|0){k=10;break}c[z>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if(c[u>>2]|0){k=10;break}if((c[n>
x3e;2]|0)==(c[k>>2]|0)){k=12;break}c[m>>2]=(c[m>>2]|0)+1}if((k|0)==10){c[o>>2]=c[u>
x3e;2];D=c[o>>2]|0;i=C;return D|0}else if((k|0)==12){c[c[t>>2]>>2]=(c[A>>2]|0)+1;c[z>
;>2]=(c[z>>2]|0)+(c[q>>2]|0);c[u>>2]=Kc(c[p>>2]|0,c[z>>2]|0)|0;if(c[u>
;>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[y>>2]=hc(c[w>>2]|0,8
,0,c[c[t>>2]>>2]|0,0,u)|0;if(c[u>>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;
i=C;return D|0}c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[c[t>>2]>>2]|0)){k=23;break}D=Pc
(c[p>>2]|0,u)|0;b[(c[y>>2]|0)+(c[v>>2]<<3)>>1]=D;if(c[u>>2]|0)break;
D=Qc(c[p>>2]|0,2)|0;c[u>>2]=D;if(D|0)break;c[B>>2]=Oc(c[p>>2]|0,u)|0;if(c[u>>2
]|0)break;D=Qc(c[p>>2]|0,4)|0;c[u>>2]=D;if(D|0)break;c[(c[y>>2]|0)+(c[v>>2]<<3
)+4>>2]=c[B>>2]&16777215;c[v>>2]=(c[v>>2]|0)+1}if((k|0)==23?(Bs(c[y>>2]|0
,c[c[t>>2]>>2]|0,8,102),c[x>>2]=hc(c[w>>2]|0,4,0,c[c[t>>2]>>2]|0,0,u
)|0,(c[u>>2]|0)==0):0){c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[c[t>>2]>>2]|
0))break;c[(c[x>>2]|0)+(c[v>>2]<<2)>>2]=(c[r>>2]|0)+(c[(c[y>>2]|0)+(
c[v>>2]<<3)+4>>2]|0);c[v>>2]=(c[v>>2]|0)+1}c[c[s>>2]>>2]=c
[x>>2];c[u>>2]=0}Fb(c[w>>2]|0,c[y>>2]|0);c[y>>2]=0;c[o>>2]=c[u>
x3e;2];D=c[o>>2]|0;i=C;return D|0}else if((k|0)==30){c[o>>2]=1;D=c[o>>2]|0;i=C;return D|0}return 0
}function ad(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=b;do if
((e[c[f>>2]>>1]|0|0)>=(e[c[g>>2]>>1]|0|0))if((e[c[f>>2]>>1]|0|0
)>(e[c[g>>2]>>1]|0|0)){c[d>>2]=1;break}else{c[d>>2]=0;break}else c[d>>2]=-
1;while(0);i=h;return c[d>>2]|0}function bd(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,C=0,D=0;D=i;i=i+80|0;j=D+72|0;k=D+68|0;l=D+64|0;m=D+60|0;n=D+56|0;o=D+52|
0;p=D+48|0;q=D+44|0;u=D+40|0;v=D+36|0;s=D+32|0;B=D+28|0;r=D+24|0;t=D+20|0;w=D+16|0;y=D+12|0;x=D+8|0;z=D+4|0;A=D;c[k>>2
]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;c[q>>2]=1;c[u
x3e;>2]=c[c[k>>2]>>2];if((c[o>>2]|0)==-1)c[o>>2]=0;if(c[o>>2]|0){c[j>
;>2]=c[q>>2];C=c[j>>2]|0;i=D;return C|0}c[w>>2]=0;c[s>>2]=0;while(1){if((c[s>
x3e;2]|0)>=(c[n>>2]|0)){C=10;break}c[q>>2]=Kc(c[l>>2]|0,c[(c[m>>2]|0)+(c[s>>
;2]<<2)>>2]|0)|0;if(c[q>>2]|0)break;c[A>>2]=Oc(c[l>>2]|0,q)|0;if(c[q>>
;2]|0)break;c[w>>2]=(c[w>>2]|0)+((c[A>>2]|0)+6);c[s>>2]=(c[s>>2]|0)+1}a:do if((
C|0)==10?(c[v>>2]=bc(c[u>>2]|0,(c[w>>2]|0)+2|0,q)|0,(c[q>>2]|0)==0):0){a[c[v>>
2]>>0]=-128;a[(c[v>>2]|0)+1>>0]=1;a[(c[v>>2]|0)+2>>0]=0;a[(c[v>>2]|0
)+3>>0]=0;a[(c[v>>2]|0)+4>>0]=0;a[(c[v>>2]|0)+5>>0]=0;c[y>>2]=6;c[x
x3e;>2]=2;c[t>>2]=0;c[B>>2]=1;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[n>>
;2]|0)){C=31;break}c[q>>2]=Kc(c[l>>2]|0,c[(c[m>>2]|0)+(c[s>>2]<<2)>>
2]|0)|0;if(c[q>>2]|0)break;c[z>>2]=Oc(c[l>>2]|0,q)|0;if(c[q>>2]|0)break a;c[r>>
;2]=(Pc(c[l>>2]|0,q)|0)&65535;if(c[q>>2]|0)break a;if(c[r>>2]>>8|0){if((c[z>
x3e;2]|0)>2)c[z>>2]=(c[z>>2]|0)-2;else c[z>>2]=0;if((c[r>>2]>>8|0)==(c[B
x3e;>2]|0))c[t>>2]=(c[t>>2]|0)+(c[z>>2]|0);else{if(((c[x>>2]|0)+3|0)>((c[w>
;>2]|0)+2|0))break;a[(c[v>>2]|0)+(c[x>>2]|0)>>0]=c[t>>2];a[(c[v>>2]|0)+((
c[x>>2]|0)+1)>>0]=c[t>>2]>>8;a[(c[v>>2]|0)+((c[x>>2]|0)+2)>>
;0]=c[t>>2]>>16;a[(c[v>>2]|0)+((c[x>>2]|0)+3)>>0]=c[t>>2]>>
;24;if((c[r>>2]>>8|0)==5){C=31;break}if(((c[y>>2]|0)+6|0)>((c[w>>2]|0)+2|0))break;d
=c[y>>2]|0;c[y>>2]=d+1;a[(c[v>>2]|0)+d>>0]=-128;c[B>>2]=c[r>>2]>
;>8;c[t>>2]=c[z>>2];d=c[B>>2]&255;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>
;>2]|0)+A>>0]=d;c[x>>2]=c[y>>2];A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>
;2]|0)+A>>0]=0;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>2]|0)+A>>0]=0;A=c[y>>
2]|0;c[y>>2]=A+1;a[(c[v>>2]|0)+A>>0]=0;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>
;2]|0)+A>>0]=0}c[q>>2]=1;if((c[y>>2]|0)>(c[w>>2]|0))break;if(((c[y>>2]|0)+(
c[z>>2]|0)|0)>(c[w>>2]|0))break;c[q>>2]=Rc(c[l>>2]|0,(c[v>>2]|0)+(c[y>
;>2]|0)|0,c[z>>2]|0)|0;if(c[q>>2]|0)break;c[y>>2]=(c[y>>2]|0)+(c[z>>2]|0)}
c[s>>2]=(c[s>>2]|0)+1}if(((C|0)==31?((c[y>>2]|0)+2|0)<=((c[w>>2]|0)+2|0):0)?(C=c[y
x3e;>2]|0,c[y>>2]=C+1,a[(c[v>>2]|0)+C>>0]=-128,C=c[y>>2]|0,c[y>>2]=C+1,a[(
c[v>>2]|0)+C>>0]=3,((c[x>>2]|0)+3|0)<=((c[w>>2]|0)+2|0)):0){a[(c[v>>2]|0)+(
c[x>>2]|0)>>0]=c[t>>2];a[(c[v>>2]|0)+((c[x>>2]|0)+1)>>0]=c[t>
x3e;2]>>8;a[(c[v>>2]|0)+((c[x>>2]|0)+2)>>0]=c[t>>2]>>16;a[(c[v>
x3e;2]|0)+((c[x>>2]|0)+3)>>0]=c[t>>2]>>24;c[j>>2]=Tc(c[k>>2]|0,c[v
x3e;>2]|0,c[y>>2]|0,c[o>>2]|0,10410,c[p>>2]|0)|0;C=c[j>>2]|0;i=D;return C|0}Fb(c[u
x3e;>2]|0,c[v>>2]|0);c[v>>2]=0}while(0);c[j>>2]=c[q>>2];C=c[j>>2]|0;i=D;return
C|0}function cd(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;w=i;i=i+64|0;o=w+52|0;p=w+48|0;h=w+44|0;j=w+40|0;k=w+36|0;l=w+32|0;q=w+28|0;n=w+24|0;v=w+20|0;r=w+16|0;m=w+12|0;u=w+8|0;t=w+4|
0;s=w;c[p>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[q>>2]=g;c[
n>>2]=c[c[p>>2]>>2];c[s>>2]=0;if((c[l>>2]|0)==-1)c[l>>2]=0;if((c[l
x3e;>2]|0)>=(c[k>>2]|0)){c[o>>2]=1;v=c[o>>2]|0;i=w;return v|0}c[m>>2]=c[(c[j
x3e;>2]|0)+(c[l>>2]<<2)>>2];c[r>>2]=Kc(c[h>>2]|0,c[m>>2]|0)|0;if
((c[r>>2]|0)==0?(c[u>>2]=Oc(c[h>>2]|0,r)|0,(c[r>>2]|0)==0):0){if((c[u>>2]|0)==-
1){c[o>>2]=1;v=c[o>>2]|0;i=w;return v|0}c[r>>2]=Lc(c[p>>2]|0,c[h>>2]|0,c[l>
;>2]|0,0,0,c[q>>2]|0)|0;if(c[r>>2]|0?(Kc(c[h>>2]|0,(c[m>>2]|0)+4|0)|0)==0:0){c[v>
;>2]=bc(c[n>>2]|0,c[u>>2]|0,r)|0;if(c[r>>2]|0){c[o>>2]=c[r>>2];v=c[o>
;>2]|0;i=w;return v|0}c[r>>2]=Rc(c[h>>2]|0,c[v>>2]|0,c[u>>2]|0)|0;if(!(c[r>>
;2]|0)){if((c[u>>2]|0)>4)h=($r(c[v>>2]|0,10416,4)|0)!=0^1;else h=0;c[t>>2]=h&1;c[r>
x3e;2]=Tc(c[p>>2]|0,c[v>>2]|0,c[u>>2]|0,c[s>>2]|0,c[t>>2]|0?11217:10489,c[q>
;>2]|0)|0}}}c[o>>2]=c[r>>2];v=c[o>>2]|0;i=w;return v|0}function dd(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;y=i;i=i+192|0;j=y+176|0;z=y+172|0;k=y+168
|0;l=y+164|0;m=y+160|0;t=y+156|0;o=y+152|0;r=y+148|0;q=y+112|0;u=y+76|0;p=y+40|0;s=y+181|0;w=y+180|0;n=y+8|0;v=y;c[j>>
2]=b;c[z>>2]=e;c[k>>2]=f;c[l>>2]=g;c[m>>2]=h;c[t>>2]=c[c[j>>2]>
x3e;2];c[o>>2]=2;a[w>>0]=0;c[v>>2]=0;ed(c[j>>2]|0,c[z>>2]|0,c[(c[m>>
2]|0)+12>>2]|0,q,u,p);c[r>>2]=0;while(1){if((c[r>>2]|0)>=9)break;a[s>>0]=rd(c[r>
;>2]|0)|0;if(!(d[s>>0]|0?(d[w>>0]|0)!=0:0))x=5;if((x|0)==5?(x=0,(c[p+(c[r>>2]<<2)
x3e;>2]|0)==0):0){c[n>>2]=4;if(c[q+(c[r>>2]<<2)>>2]|0)g=c[q+(c[r>>2]<
;<2)>>2]|0;else g=c[(c[m>>2]|0)+12>>2]|0;c[n+12>>2]=g;c[o>>2]=tc(c[j>
;>2]|0,n,v)|0;if((d[s>>0]|0)!=0&(c[o>>2]|0)==81)a[w>>0]=1;if(!(c[o>>2]|0)){c[o
>>2]=Zc(c[j>>2]|0,c[v>>2]|0,c[u+(c[r>>2]<<2)>>2]|0,c[k>>2]|
0,c[l>>2]|0)|0;vc(c[v>>2]|0,0);if(!(c[o>>2]|0))break;if(a[s>>0]|0)a[w>>0]=1}}c
[r>>2]=(c[r>>2]|0)+1}c[r>>2]=0;while(1){if((c[r>>2]|0)>=9)break;if(c[q+(c[r>
x3e;2]<<2)>>2]|0){Fb(c[t>>2]|0,c[q+(c[r>>2]<<2)>>2]|0);c[q+(c[r>
;>2]<<2)>>2]=0}c[r>>2]=(c[r>>2]|0)+1}if(!(c[o>>2]|0)){z=c[o>>2]|
0;i=y;return z|0}c[o>>2]=2;z=c[o>>2]|0;i=y;return z|0}function ed(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;p=i;i=i+32|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;m=p+8|0;n=p+4|0;o=p;c[h>>2
]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=0;while
(1){if((c[o>>2]|0)>=9)break;c[(c[l>>2]|0)+(c[o>>2]<<2)>>2]=0;if(c[j>
x3e;2]|0){b=Kc(c[j>>2]|0,0)|0;c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]=b}else c[(c[n>
;>2]|0)+(c[o>>2]<<2)>>2]=0;if(!(c[(c[n>>2]|0)+(c[o>>2]<<2)>
;>2]|0)){b=Za[c[96+(c[o>>2]<<3)>>2]&31](c[h>>2]|0,c[j>>2]|0,c[k>
;>2]|0,(c[l>>2]|0)+(c[o>>2]<<2)|0,(c[m>>2]|0)+(c[o>>2]<<2)|0)|0
;c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]=b}c[o>>2]=(c[o>>2]|0)+1}i=p;return}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,m=0,n=0,o=0;n=i;i=i+32|0;g=n+24|0;h=n+20|0;j=n+16|0;k=n+12|
0;o=n+8|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[o>>2]=e;c[l>>2]=f;c[m>
;>2]=333319;c[c[o>>2]>>2]=0;if(!(c[j>>2]|0)){c[g>>2]=81;o=c[g>>2]|0;i=n;return
o|0}else{c[g>>2]=gd(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[m>>2]|0,c[l>>2]|
0)|0;o=c[g>>2]|0;i=n;return o|0}return 0}function gd(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,v=0,w=0,x=0;v=i;i=i+64|0;r=v+52|0;x=v+48|0;m=v+44|0;w=v+40|0;j=v+36|0;s=v+32|0;k=v+28|0;u=v+24|0;l=v
+20|0;q=v+56|0;p=v+16|0;n=v+12|0;t=v+8|0;o=v+4|0;c[x>>2]=a;c[m>>2]=d;c[w>>2]=f;c[j>>2]=g
;c[s>>2]=h;c[l>>2]=0;c[o>>2]=0;c[v>>2]=2;c[x>>2]=c[x>>2];c[w>
x3e;2]=c[w>>2];c[l>>2]=c[l>>2];c[o>>2]=c[o>>2];c[k>>2]=Oc(c[m>
x3e;2]|0,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}if((c[k>>
;2]|0)!=(c[j>>2]|0)){c[r>>2]=2;x=c[r>>2]|0;i=v;return x|0}c[l>>2]=Oc(c[m>>2]|0
,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}c[u>>2]=Qc(c[m
x3e;>2]|0,16)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}b[q>
x3e;1]=Pc(c[m>>2]|0,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return
x|0}if(!(e[q>>1]|0)){c[r>>2]=2;x=c[r>>2]|0;i=v;return x|0}c[p>>2]=0;while(1){if((c[p>
;>2]|0)>=(e[q>>1]|0|0)){j=24;break}c[n>>2]=Oc(c[m>>2]|0,u)|0;if(c[u>>2]|0){j=16
;break}j=c[m>>2]|0;if((c[n>>2]|0)==2){c[t>>2]=Oc(j,u)|0;if((c[u>>2]|0)==0?(c[o>>
;2]=Oc(c[m>>2]|0,u)|0,(c[u>>2]|0)==0):0){j=20;break}}else{c[u>>2]=Qc(j,8)|0;if(c[u>>2]|0
){j=22;break}}c[p>>2]=(c[p>>2]|0)+1}if((j|0)==16){c[r>>2]=c[u>>2];x=c[r>>2]|0;
i=v;return x|0}else if((j|0)==20){c[c[s>>2]>>2]=c[t>>2];c[r>>2]=0;x=c[r>>2]|0;
i=v;return x|0}else if((j|0)==22){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}else if((j|0)==24){c[
r>>2]=2;x=c[r>>2]|0;i=v;return x|0}return 0}function hd(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;n=i;i=i+32|0;g=n+24|0;h=n+20|0;j=n+16|0;k=n+12|0;o=n+8|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>
;2]=b;c[k>>2]=d;c[o>>2]=e;c[l>>2]=f;c[m>>2]=333312;c[c[o>>2]>>2]=0;if
(!(c[j>>2]|0)){c[g>>2]=81;o=c[g>>2]|0;i=n;return o|0}else{c[g>>2]=gd(c[h>>2]|0
,c[j>>2]|0,c[k>>2]|0,c[m>>2]|0,c[l>>2]|0)|0;o=c[g>>2]|0;i=n;return o|0}return
0}function id(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;o=i;i=i+48|0;g=o+32|0;h=o+28|
0;q=o+24|0;p=o+20|0;j=o+16|0;k=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;c[p>>2]=d;c[j>
x3e;2]=e;c[k>>2]=f;c[q>>2]=c[q>>2];c[m>>2]=c[c[h>>2]>>2];c[n>
x3e;2]=jd(c[m>>2]|0,c[p>>2]|0,10421)|0;if(!(c[n>>2]|0)){c[g>>2]=64;q=c[g>>2]|0
;i=o;return q|0}c[l>>2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;if(c[l>>2]|0){Fb(c
[m>>2]|0,c[n>>2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c[n>>2];c[g>
x3e;2]=c[l>>2];q=c[g>>2]|0;i=o;return q|0}function jd(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;f=m+32|0;p=m+28|0;g=m+24|0;h=m+20|0;j=m+16|0;l=m+12|0;k=m+8|0;o=m+4|0;n=m;c[p>>2]=b;c[g>
;>2]=d;c[h>>2]=e;c[j>>2]=0;c[n>>2]=0;c[n>>2]=c[n>>2];d=cs(c[g>>
2]|0)|0;c[o>>2]=d+(cs(c[h>>2]|0)|0);c[j>>2]=bc(c[p>>2]|0,(c[o>>2]|0)+1|0,n)|0;
if(c[n>>2]|0){c[f>>2]=0;p=c[f>>2]|0;i=m;return p|0}c[l>>2]=xs(c[g>>2]|0,47)|0;
if(c[l>>2]|0){as(c[j>>2]|0,c[g>>2]|0,(c[l>>2]|0)-(c[g>>2]|0)+1|0)|0;a[(c[j>
;>2]|0)+((c[l>>2]|0)-(c[g>>2]|0)+1)>>0]=0;c[k>>2]=(c[l>>2]|0)+1}else{c[k
x3e;>2]=c[g>>2];a[c[j>>2]>>0]=0}zs(c[j>>2]|0,c[h>>2]|0)|0;zs(c[j>>
;2]|0,c[k>>2]|0)|0;c[f>>2]=c[j>>2];p=c[f>>2]|0;i=m;return p|0}function kd(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;m=i;i=i+64|0;e=m+60|0;f=m+56|0;g=m+52|0;h=m+48|0;n=m+16|0;l=m+8|0;k=m+4|0;j=m
;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=0;c[n>>2]=4;c[n+12>>2]=c[g>
;>2];c[j>>2]=tc(c[f>>2]|0,n,l)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];n=c[e>
;>2]|0;i=m;return n|0}else{c[j>>2]=fd(c[f>>2]|0,c[l>>2]|0,c[g>>2]|0,k,c[h>>
;2]|0)|0;vc(c[l>>2]|0,0);c[e>>2]=c[j>>2];n=c[e>>2]|0;i=m;return n|0}return 0}function ld
(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;q=i;i=i+48|0;m=q+36|0;r=q+32|0;s=q+28|
0;h=q+24|0;n=q+20|0;o=q+16|0;k=q+12|0;p=q+8|0;l=q+4|0;j=q;c[r>>2]=b;c[s>>2]=d;c[h>>2]=e;c[n>
x3e;2]=f;c[o>>2]=g;c[j>>2]=cs(c[h>>2]|0)|0;c[s>>2]=c[s>>2];c[l>>2]=c
[c[r>>2]>>2];if(((c[j>>2]|0)+18|0)>2147483647){c[m>>2]=10;s=c[m>>2]|0;i=q
;return s|0}c[p>>2]=bc(c[l>>2]|0,(c[j>>2]|0)+18|0,k)|0;if(c[k>>2]|0){c[m>>2]=c
[k>>2];s=c[m>>2]|0;i=q;return s|0}else{Ss(c[p>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;h=(
c[p>>2]|0)+(c[j>>2]|0)|0;j=10424;e=h+18|0;do{a[h>>0]=a[j>>0]|0;h=h+1|0;j=j+1|0}while((h|
0)<(e|0));c[c[n>>2]>>2]=c[p>>2];c[c[o>>2]>>2]=0;c[m>>2]=0;s=c[m
>>2]|0;i=q;return s|0}return 0}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,o=0,p=
0,q=0,r=0,s=0;q=i;i=i+48|0;h=q+36|0;r=q+32|0;s=q+28|0;j=q+24|0;k=q+20|0;l=q+16|0;n=q+12|0;p=q+8|0;o=q+4|0;m=q;c[r>>2]=
b;c[s>>2]=d;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[m>>2]=cs(c[j>>2]|0)|0;c[
s>>2]=c[s>>2];c[o>>2]=c[c[r>>2]>>2];if(((c[m>>2]|0)+6|0)>2147483647
){c[h>>2]=10;s=c[h>>2]|0;i=q;return s|0}c[p>>2]=bc(c[o>>2]|0,(c[m>>2]|0)+6|0,n
)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];s=c[h>>2]|0;i=q;return s|0}else{Ss(c[p>>2]|0
,c[j>>2]|0,c[m>>2]|0)|0;s=(c[p>>2]|0)+(c[m>>2]|0)|0;a[s>>0]=a[10442]|0;a[s+1
x3e;>0]=a[10443]|0;a[s+2>>0]=a[10444]|0;a[s+3>>0]=a[10445]|0;a[s+4>>0]=a[10446]|0;a[s+5>
x3e;0]=a[10447]|0;c[c[k>>2]>>2]=c[p>>2];c[c[l>>2]>>2]=0;c[h>>2]=0;s=
c[h>>2]|0;i=q;return s|0}return 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,m=0,n=0
,o=0,p=0;l=i;i=i+32|0;g=l+28|0;o=l+24|0;p=l+20|0;m=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;n=l;c[o>>2]=a;c[p>>2]=b;c
[m>>2]=d;c[h>>2]=e;c[j>>2]=f;c[p>>2]=c[p>>2];c[n>>2]=c[c[o>>
;2]>>2];c[k>>2]=jd(c[n>>2]|0,c[m>>2]|0,10448)|0;if(c[k>>2]|0){c[c[h>>
;2]>>2]=c[k>>2];c[c[j>>2]>>2]=0;c[g>>2]=0;p=c[g>>2]|0;i=l;return p|0
}else{c[g>>2]=64;p=c[g>>2]|0;i=l;return p|0}return 0}function od(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+32|0;g=l+28|0;o=l+24|0;p=l+20|0;m=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;n=l;c[o>>
;2]=a;c[p>>2]=b;c[m>>2]=d;c[h>>2]=e;c[j>>2]=f;c[p>>2]=c[p>>2];c[n>
;>2]=c[c[o>>2]>>2];c[k>>2]=jd(c[n>>2]|0,c[m>>2]|0,10462)|0;if(c[k>
x3e;2]|0){c[c[h>>2]>>2]=c[k>>2];c[c[j>>2]>>2]=0;c[g>>2]=0;p=c[g>
;>2]|0;i=l;return p|0}else{c[g>>2]=64;p=c[g>>2]|0;i=l;return p|0}return 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;o=i;i=i+48|0;g=o+32|0;h=o+28|0;q=o+24|0;p=o+20|0;j=o+16|0;k=
o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;c[p>>2]=d;c[j>>2]=e;c[k>>2]=f;c
[q>>2]=c[q>>2];c[m>>2]=c[c[h>>2]>>2];c[n>>2]=jd(c[m>>2]|0,
c[p>>2]|0,10473)|0;if(!(c[n>>2]|0)){c[g>>2]=64;q=c[g>>2]|0;i=o;return q|0}c[l>>
;2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;if(c[l>>2]|0){Fb(c[m>>2]|0,c[n>
x3e;2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c[n>>2];c[g>>2]=c[l>>2];q=c[g
>>2]|0;i=o;return q|0}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,p=0,q=0
;o=i;i=i+48|0;g=o+32|0;h=o+28|0;q=o+24|0;p=o+20|0;j=o+16|0;k=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;
c[p>>2]=d;c[j>>2]=e;c[k>>2]=f;c[q>>2]=c[q>>2];c[m>>2]=c[c[h>>
;2]>>2];c[n>>2]=jd(c[m>>2]|0,c[p>>2]|0,10475)|0;if(!(c[n>>2]|0)){c[g>>
;2]=64;q=c[g>>2]|0;i=o;return q|0}c[l>>2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;
if(c[l>>2]|0){Fb(c[m>>2]|0,c[n>>2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c
[n>>2];c[g>>2]=c[l>>2];q=c[g>>2]|0;i=o;return q|0}function rd(b){b=b|0;var d=0,e=0,f=0;e
=i;i=i+16|0;d=e+4|0;f=e;c[f>>2]=b;if(((sd(c[f>>2]|0)|0)+-3|0)>>>0<2){a[d>>0]=1
;f=a[d>>0]|0;i=e;return f|0}else{a[d>>0]=0;f=a[d>>0]|0;i=e;return f|0}return 0}function sd(a){a=a|
0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[d>>2]=a;if((c[d>>2]|0)>>>0>=9){c[b>>
;2]=-2;a=c[b>>2]|0;i=e;return a|0}else{c[b>>2]=c[96+(c[d>>2]<<3)+4>>2];a=c[b
x3e;>2]|0;i=e;return a|0}return 0}function td(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|0)+4>>2];c[(c[e>>2]|0)+4>>2
]=0;c[c[e>>2]>>2]=c[f>>2];a=c[e>>2]|0;if(c[f>>2]|0){c[(c[f>>2]|0)+4
x3e;>2]=a;e=c[e>>2]|0;f=c[d>>2]|0;f=f+4|0;c[f>>2]=e;i=g;return}else{c[c[d>>2]>
x3e;2]=a;e=c[e>>2]|0;f=c[d>>2]|0;f=f+4|0;c[f>>2]=e;i=g;return}}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;n=i;i=i+48|0;d=n+32|0;e=n+28|0;f=n+24|0;j=n+20|0;k=n+16|0;h=n+12|0;g=n+8|0;m=n+4|0;l=n;c[e
>>2]=a;c[f>>2]=b;c[m>>2]=0;c[l>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=35;m=c
[d>>2]|0;i=n;return m|0}if(!(c[f>>2]|0)){c[d>>2]=36;m=c[d>>2]|0;i=n;return m|0}if(!(c[(c
[e>>2]|0)+96>>2]|0)){c[d>>2]=34;m=c[d>>2]|0;i=n;return m|0}c[c[f>>2]>>
;2]=0;c[h>>2]=c[(c[e>>2]|0)+96>>2];c[g>>2]=c[(c[h>>2]|0)+20>>2];c[k
x3e;>2]=c[(c[e>>2]|0)+100>>2];c[m>>2]=bc(c[k>>2]|0,c[(c[g>>2]|0)+40>
x3e;2]|0,j)|0;if((c[j>>2]|0)==0?(c[l>>2]=bc(c[k>>2]|0,12,j)|0,(c[j>>2]|0)==0):0){c[c[m
x3e;>2]>>2]=c[e>>2];c[(c[m>>2]|0)+40>>2]=0;if(c[(c[g>>2]|0)+56>>
;2]|0)c[j>>2]=Ta[c[(c[g>>2]|0)+56>>2]&63](c[m>>2]|0)|0;if(!(c[j>>2]|0)){c
[c[f>>2]>>2]=c[m>>2];c[(c[l>>2]|0)+8>>2]=c[m>>2];td((c[e>>
2]|0)+108|0,c[l>>2]|0)}}if(c[j>>2]|0){Fb(c[k>>2]|0,c[l>>2]|0);c[l>>2]=0;Fb(c[k
>>2]|0,c[m>>2]|0);c[m>>2]=0}c[d>>2]=c[j>>2];m=c[d>>2]|0;i=n;return m
|0}function vd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;e=h+12|0;d=h+8|0;f=h+4|0;g=h;c[b>>2]=a;c[e
x3e;>2]=35;if(!(c[b>>2]|0)){g=c[e>>2]|0;i=h;return g|0}if(!(c[(c[b>>2]|0)+96>>2]|0)){
g=c[e>>2]|0;i=h;return g|0}a=(c[(c[b>>2]|0)+128>>2]|0)+60|0;c[a>>2]=(c[a>>2]|0
)+-1;if((c[(c[(c[b>>2]|0)+128>>2]|0)+60>>2]|0)>>>0>0){c[e>>2]=0;g=c[
e>>2]|0;i=h;return g|0}c[d>>2]=c[(c[b>>2]|0)+96>>2];c[f>>2]=c[(c[d>>
2]|0)+8>>2];c[g>>2]=Rb((c[d>>2]|0)+24|0,c[b>>2]|0)|0;if(!(c[g>>2]|0)){g=c[e>
;>2]|0;i=h;return g|0}wd((c[d>>2]|0)+24|0,c[g>>2]|0);Fb(c[f>>2]|0,c[g>>2]|0);c[g>
;>2]=0;xd(c[f>>2]|0,c[b>>2]|0,c[d>>2]|0);c[e>>2]=0;g=c[e>>2]|0;i=h;return
g|0}function wd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+12|0;h=g+8|0;d=g+4|0;f=g;c[e>>2]=a;c[h>
;>2]=b;c[d>>2]=c[c[h>>2]>>2];c[f>>2]=c[(c[h>>2]|0)+4>>2];a=c[f
x3e;>2]|0;if(c[d>>2]|0)c[(c[d>>2]|0)+4>>2]=a;else c[c[e>>2]>>2]=a;a=c[d
x3e;>2]|0;if(c[f>>2]|0){c[c[f>>2]>>2]=a;i=g;return}else{c[(c[e>>2]|0)+4>>
2]=a;i=g;return}}function xd(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[(c[g>>2]|0)+20>>2];if(c[(c[f>
x3e;2]|0)+116+4>>2]|0)Va[c[(c[f>>2]|0)+116+4>>2]&63](c[(c[f>>2]|0)+116>>2
]|0);while(1){d=c[f>>2]|0;if(!(c[(c[f>>2]|0)+84>>2]|0))break;Bc(c[d+84>>2]|0)}zd(d+108|0
,7,c[e>>2]|0,c[g>>2]|0);c[(c[f>>2]|0)+88>>2]=0;if(c[(c[f>>2]|0)+44+4>>
;2]|0)Va[c[(c[f>>2]|0)+44+4>>2]&63](c[f>>2]|0);Ic(c[f>>2]|0,c[e>>2]|0);if
(c[(c[h>>2]|0)+52>>2]|0)Va[c[(c[h>>2]|0)+52>>2]&63](c[f>>2]|0);vc(c[(c[f
x3e;>2]|0)+104>>2]|0,(c[(c[f>>2]|0)+8>>2]&1024|0)!=0&1);c[(c[f>>2]|0)+104
>>2]=0;if(!(c[(c[f>>2]|0)+128>>2]|0)){g=c[e>>2]|0;h=c[f>>2]|0;Fb(g,h);c[f>
;>2]=0;i=j;return}Fb(c[e>>2]|0,c[(c[f>>2]|0)+128>>2]|0);c[(c[f>>2]|0)+128>>
;2]=0;g=c[e>>2]|0;h=c[f>>2]|0;Fb(g,h);c[f>>2]=0;i=j;return}function yd(a,b,d){a=a|0;b=b|0;d=d|0;var
e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[(c[f>>
;2]|0)+4+4>>2]|0)Va[c[(c[f>>2]|0)+4+4>>2]&63](c[f>>2]|0);if(c[(c[(c[g>>2]|
0)+20>>2]|0)+60>>2]|0)Va[c[(c[(c[g>>2]|0)+20>>2]|0)+60>>2]&63](c[f>
x3e;2]|0);Fb(c[e>>2]|0,c[(c[f>>2]|0)+40>>2]|0);c[(c[f>>2]|0)+40>>2]=0;Fb(c[e
x3e;>2]|0,c[f>>2]|0);c[f>>2]=0;i=h;return}function zd(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;c[f>>2]=a;c[g>>2]=b
;c[h>>2]=d;c[j>>2]=e;c[k>>2]=c[c[f>>2]>>2];while(1){if(!(c[k>>2]|0))
break;c[m>>2]=c[(c[k>>2]|0)+4>>2];c[l>>2]=c[(c[k>>2]|0)+8>>2];if(c[g
>>2]|0)Ua[c[g>>2]&31](c[h>>2]|0,c[l>>2]|0,c[j>>2]|0);Fb(c[h>>2]|
0,c[k>>2]|0);c[k>>2]=0;c[k>>2]=c[m>>2]}c[c[f>>2]>>2]=0;c[(c[f>
x3e;2]|0)+4>>2]=0;i=n;return}function Ad(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;s=i;i=i+48|0;h=s+28|0;j=s+24|0;k=s+20|0;l=s+32|0;m=s+16|0;p=s+12|0;q=s+8|0;o=s+4|0;n=s;c[j>>2]=b;c[k>>2]=
e;a[l>>0]=f;c[m>>2]=g;if(!(c[(c[j>>2]|0)+8>>2]&2)){c[h>>2]=35;r=c[h>
x3e;2]|0;i=s;return r|0}if(c[c[k>>2]>>2]|0){c[h>>2]=7;r=c[h>>2]|0;i=s;return r|0}b=c[(c[
k>>2]|0)+4>>2]|0;if(c[(c[k>>2]|0)+12>>2]|0)b=((_(b,c[(c[k>>2]|0)+12>>
;2]|0)|0)+36|0)/72|0;c[q>>2]=b;b=c[(c[k>>2]|0)+8>>2]|0;if(c[(c[k>>2]|0)+16>>2]|
0)b=((_(b,c[(c[k>>2]|0)+16>>2]|0)|0)+36|0)/72|0;c[o>>2]=b;if(c[(c[k>>2]|0)+4>>
2]|0?!(c[(c[k>>2]|0)+8>>2]|0):0)c[o>>2]=c[q>>2];else r=12;if(((r|0)==12?(c[(c[k>>
;2]|0)+4>>2]|0)==0:0)?c[(c[k>>2]|0)+8>>2]|0:0)c[q>>2]=c[o>>2];c[q>>2
]=(c[q>>2]|0)+32&-64;c[o>>2]=(c[o>>2]|0)+32&-64;c[p>>2]=0;while(1){if((c[p>
;>2]|0)>=(c[(c[j>>2]|0)+28>>2]|0)){r=24;break}c[n>>2]=(c[(c[j>>2]|0)+32>
x3e;2]|0)+(c[p>>2]<<4);if((c[o>>2]|0)==((c[(c[n>>2]|0)+12>>2]|0)+32&-64|0
)){if((c[q>>2]|0)==((c[(c[n>>2]|0)+8>>2]|0)+32&-64|0))break;if(d[l>>0]|0|0)break}c[
p>>2]=(c[p>>2]|0)+1}if((r|0)==24){c[h>>2]=23;r=c[h>>2]|0;i=s;return r|0}if(c[m>>
;2]|0)c[c[m>>2]>>2]=c[p>>2];c[h>>2]=0;r=c[h>>2]|0;i=s;return r|0}function Bd(a
,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c
[(c[d>>2]|0)+4>>2];if((c[(c[d>>2]|0)+12>>2]|0)<0){if((c[f>>2]|0)<(c[(
c[d>>2]|0)+12>>2]|0))c[f>>2]=c[(c[d>>2]|0)+12>>2]}else if((c[(c[d>>2
]|0)+12>>2]|0)>0)c[f>>2]=(c[f>>2]|0)-(c[(c[d>>2]|0)+12>>2]|0);if(!(c[e>
;>2]|0))c[e>>2]=((c[f>>2]|0)*12|0)/10|0;c[(c[d>>2]|0)+20>>2]=(c[(c[d>>2]|
0)+8>>2]|0)-((c[(c[d>>2]|0)+16>>2]|0)/2|0);c[(c[d>>2]|0)+24>>2]=((c[e>>
;2]|0)-(c[f>>2]|0)|0)/2|0;c[(c[d>>2]|0)+28>>2]=c[e>>2];i=g;return}function Cd(a,d){a=a|0
;d=d|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;f=j+12|0;k=j+8|0;h=j+4|0;g=j;c[f>>2]=a;c[k>>2]=d;c[h>>
2]=(c[(c[f>>2]|0)+88>>2]|0)+12;c[g>>2]=(c[(c[f>>2]|0)+32>>2]|0)+(c[k>>
;2]<<4);b[c[h>>2]>>1]=(c[(c[g>>2]|0)+8>>2]|0)+32>>6;b[(c[h>>
;2]|0)+2>>1]=(c[(c[g>>2]|0)+12>>2]|0)+32>>6;if(c[(c[f>>2]|0)+8>>2]
x26;1|0){k=Vb(c[(c[g>>2]|0)+8>>2]|0,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[h>>2]|0)+4
x3e;>2]=k;k=Vb(c[(c[g>>2]|0)+12>>2]|0,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[h>>2
]|0)+8>>2]=k;Dd(c[f>>2]|0,c[h>>2]|0);i=j;return}else{c[(c[h>>2]|0)+4>>2]=65536
;c[(c[h>>2]|0)+8>>2]=65536;c[(c[h>>2]|0)+12>>2]=c[(c[g>>2]|0)+12>>2];
c[(c[h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+20>>2]=b[c[g>>2]>>1]<<
;6;c[(c[h>>2]|0)+24>>2]=c[(c[g>>2]|0)+8>>2];i=j;return}}function Dd(a,d){a=a|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]=a;c[f>>2]=d;d=(Mb(b[(c[g>>2]|0)+70>>1]|0,c
[(c[f>>2]|0)+8>>2]|0)|0)+63&-64;c[(c[f>>2]|0)+12>>2]=d;d=(Mb(b[(c[g>>2]|0
)+72>>1]|0,c[(c[f>>2]|0)+8>>2]|0)|0)&-64;c[(c[f>>2]|0)+16>>2]=d;d=(Mb(b[(
c[g>>2]|0)+74>>1]|0,c[(c[f>>2]|0)+8>>2]|0)|0)+32&-64;c[(c[f>>2]|0)+20>
;>2]=d;d=(Mb(b[(c[g>>2]|0)+76>>1]|0,c[(c[f>>2]|0)+4>>2]|0)|0)+32&-64;c[(c[f>
;>2]|0)+24>>2]=d;i=e;return}function Ed(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;o=i;i=i+32|0;j=o
+24|0;k=o+20|0;l=o+16|0;h=o+12|0;g=o+8|0;n=o+4|0;m=o;c[j>>2]=a;c[k>>2]=d;c[l>>2]=(c[(c[j>>
;2]|0)+88>>2]|0)+12;if(!(c[(c[j>>2]|0)+8>>2]&1)){n=c[l>>2]|0;c[n>>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[(c[l>>2]|0)+4>>2]=65536;c[(c[l>>2]|0)+8>>2]=65536;i=o;return}c[h>>2]=0
;c[g>>2]=0;c[n>>2]=0;c[m>>2]=0;a:do switch(c[c[k>>2]>>2]|0){case 0:{f=e[(c[j
x3e;>2]|0)+68>>1]|0;c[g>>2]=f;c[h>>2]=f;f=11;break}case 1:{f=(b[(c[j>>2]|0)+70>
;>1]|0)-(b[(c[j>>2]|0)+72>>1]|0)|0;c[g>>2]=f;c[h>>2]=f;f=11;break}case 2:{c[h>
x3e;2]=(c[(c[j>>2]|0)+52+8>>2]|0)-(c[(c[j>>2]|0)+52>>2]|0);c[g>>2]=(c[(c[j>
;>2]|0)+52+12>>2]|0)-(c[(c[j>>2]|0)+52+4>>2]|0);f=11;break}case 3:{c[h>>2]=b[(c[j
x3e;>2]|0)+76>>1];c[g>>2]=(b[(c[j>>2]|0)+70>>1]|0)-(b[(c[j>>2]|0)+72>
;>1]|0);f=11;break}case 4:{c[(c[l>>2]|0)+4>>2]=c[(c[k>>2]|0)+4>>2];c[(c[l>>
;2]|0)+8>>2]=c[(c[k>>2]|0)+8>>2];a=c[(c[l>>2]|0)+8>>2]|0;if(!(c[(c[l>>
;2]|0)+4>>2]|0)){c[(c[l>>2]|0)+4>>2]=a;break a}if(!a)c[(c[l>>2]|0)+8>>2]=c[(c[
l>>2]|0)+4>>2];break}default:f=11}while(0);do if((f|0)==11){if((c[h>>2]|0)<0)c[h>>2
]=0-(c[h>>2]|0);if((c[g>>2]|0)<0)c[g>>2]=0-(c[g>>2]|0);a=c[(c[k>>2]|0)+4
x3e;>2]|0;if(c[(c[k>>2]|0)+12>>2]|0)a=((_(a,c[(c[k>>2]|0)+12>>2]|0)|0)+36|0)/72|0;c
[n>>2]=a;a=c[(c[k>>2]|0)+8>>2]|0;if(c[(c[k>>2]|0)+16>>2]|0)a=((_(a,c[(c[k>
;>2]|0)+16>>2]|0)|0)+36|0)/72|0;c[m>>2]=a;if(!(c[(c[k>>2]|0)+4>>2]|0)){f=Vb(c[m>
;>2]|0,c[g>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=f;c[(c[l>>2]|0)+4>>2]=f;c[n>
x3e;2]=xb(c[m>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;break}f=Vb(c[n>>2]|0,c[h>>2]|0)|0;c
[(c[l>>2]|0)+4>>2]=f;if(!(c[(c[k>>2]|0)+8>>2]|0)){c[(c[l>>2]|0)+8>>2
]=c[(c[l>>2]|0)+4>>2];c[m>>2]=xb(c[n>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;break
}h=Vb(c[m>>2]|0,c[g>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=h;if((c[c[k>>2]>>2]|
0)==3){a=c[l>>2]|0;if((c[(c[l>>2]|0)+8>>2]|0)>(c[(c[l>>2]|0)+4>>2]|0)){c[(
c[l>>2]|0)+8>>2]=c[a+4>>2];break}else{c[(c[l>>2]|0)+4>>2]=c[a+8>>2];
break}}}while(0);if(c[c[k>>2]>>2]|0){c[n>>2]=Mb(e[(c[j>>2]|0)+68>>1]|0,c[(c[l
x3e;>2]|0)+4>>2]|0)|0;c[m>>2]=Mb(e[(c[j>>2]|0)+68>>1]|0,c[(c[l>>2]|0)+8
x3e;>2]|0)|0}b[c[l>>2]>>1]=(c[n>>2]|0)+32>>6;b[(c[l>>2]|0)+2>>1
]=(c[m>>2]|0)+32>>6;Dd(c[j>>2]|0,c[l>>2]|0);i=o;return}function Fd(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0?c[(
c[e>>2]|0)+8>>2]&2|0:0){if((c[f>>2]|0)>=0?(c[f>>2]|0)<(c[(c[e>>
2]|0)+28>>2]|0):0){c[g>>2]=c[(c[(c[e>>2]|0)+96>>2]|0)+20>>2];if(c[(c[g>
x3e;2]|0)+100>>2]|0){c[d>>2]=Ya[c[(c[g>>2]|0)+100>>2]&127](c[(c[e>>2]|0)+
88>>2]|0,c[f>>2]|0)|0;b=c[d>>2]|0;i=h;return b|0}else{Cd(c[e>>2]|0,c[f>>2]|0);
c[d>>2]=0;b=c[d>>2]|0;i=h;return b|0}}c[d>>2]=6;b=c[d>>2]|0;i=h;return b|0}c[d>>
;2]=35;b=c[d>>2]|0;i=h;return b|0}function Gd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e
=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=35;j=c
[d>>2]|0;i=k;return j|0}if(((c[f>>2]|0?(c[(c[f>>2]|0)+4>>2]|0)>=0:0)?(c[(c[f>
x3e;2]|0)+8>>2]|0)>=0:0)?(c[c[f>>2]>>2]|0)>>>0<5:0){c[g>>2]=c[(
c[(c[e>>2]|0)+96>>2]|0)+20>>2];if(c[(c[g>>2]|0)+96>>2]|0){c[d>>2]=Ya
[c[(c[g>>2]|0)+96>>2]&127](c[(c[e>>2]|0)+88>>2]|0,c[f>>2]|0)|0;j=c[d>
;>2]|0;i=k;return j|0}if((c[(c[e>>2]|0)+8>>2]&1|0)==0?c[(c[e>>2]|0)+8>>2]&
;2|0:0){c[h>>2]=Ad(c[e>>2]|0,c[f>>2]|0,0,j)|0;if(c[h>>2]|0){c[d>>2]=c[h>
x3e;2];j=c[d>>2]|0;i=k;return j|0}else{c[d>>2]=Fd(c[e>>2]|0,c[j>>2]|0)|0;j=c[d>>
;2]|0;i=k;return j|0}}Ed(c[e>>2]|0,c[f>>2]|0);c[d>>2]=0;j=c[d>>2]|0;i=k;return j|0}c[d
x3e;>2]=6;j=c[d>>2]|0;i=k;return j|0}function Hd(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;n=i;i=i+48|0;g=n+36|0;h=n+32|0;j=n+28|0;k=n+24|0;l=n+20|0;m=n;c[g>>2]=a;c[h>>2]=b;c[j>>2]=
d;c[k>>2]=e;c[l>>2]=f;d=c[j>>2]|0;if(c[h>>2]|0){if(!d)c[j>>2]=c[h>>2
]}else c[h>>2]=d;d=c[l>>2]|0;if(c[k>>2]|0){if(!d)c[l>>2]=c[k>>2]}else c[k>
;>2]=d;if((c[h>>2]|0)<64)c[h>>2]=64;if((c[j>>2]|0)<64)c[j>>2]=64;if(!(c[k
>>2]|0)){c[l>>2]=72;c[k>>2]=72}c[m>>2]=0;c[m+4>>2]=c[h>>2];c[m+8>
;>2]=c[j>>2];c[m+12>>2]=c[k>>2];c[m+16>>2]=c[l>>2];m=Gd(c[g>>2]|
0,m)|0;i=n;return m|0}function Id(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+16|0;g=j+12|0;d=j+8|0;h=j+4|0;e=
j;c[g>>2]=a;c[d>>2]=b;if(!(c[g>>2]|0)){c[f>>2]=35;h=c[f>>2]|0;i=j;return h|0}if
(!(c[d>>2]|0)){c[f>>2]=6;h=c[f>>2]|0;i=j;return h|0}b=c[g>>2]|0;if((c[d>>2]|0)==
1970170211){c[f>>2]=Hc(b)|0;h=c[f>>2]|0;i=j;return h|0}c[h>>2]=c[b+40>>2];if(!(c[h>
x3e;2]|0)){c[f>>2]=38;h=c[f>>2]|0;i=j;return h|0}c[e>>2]=(c[h>>2]|0)+(c[(c[g>>
2]|0)+36>>2]<<2);while(1){if((c[h>>2]|0)>>>0>=(c[e>>2]|0)>>
;>0){b=15;break}if((c[(c[c[h>>2]>>2]|0)+4>>2]|0)==(c[d>>2]|0)?(((c[h>>2]|
0)-(c[(c[g>>2]|0)+40>>2]|0)|0)/4|0|0)<=15:0){b=13;break}c[h>>2]=(c[h>>2]|0)+4}if((b
|0)==13){c[(c[g>>2]|0)+92>>2]=c[c[h>>2]>>2];c[f>>2]=0;h=c[f>>2]|0;i=
j;return h|0}else if((b|0)==15){c[f>>2]=6;h=c[f>>2]|0;i=j;return h|0}return 0}function Jd(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+16|0;g=j+12|0;d=j+8|0;h=j+4|0;e=j;c[g>>2]=a;c[d>>2]=b;if(!(c[g>
;>2]|0)){c[f>>2]=35;h=c[f>>2]|0;i=j;return h|0}c[h>>2]=c[(c[g>>2]|0)+40>>
2];if(!(c[h>>2]|0)){c[f>>2]=38;h=c[f>>2]|0;i=j;return h|0}if((Kd(c[d>>2]|0)|0)==14){c[f
x3e;>2]=6;h=c[f>>2]|0;i=j;return h|0}c[e>>2]=(c[h>>2]|0)+(c[(c[g>>2]|0)+36>>
;2]<<2);while(1){if((c[h>>2]|0)>>>0>=(c[e>>2]|0)>>>0){d=13;break
}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)?(((c[h>>2]|0)-(c[(c[g>>2]|0)+40>>
2]|0)|0)/4|0|0)<=15:0){d=11;break}c[h>>2]=(c[h>>2]|0)+4}if((d|0)==11){c[(c[g>>2]|0)+92>
x3e;2]=c[c[h>>2]>>2];c[f>>2]=0;h=c[f>>2]|0;i=j;return h|0}else if((d|0)==13){c[f>
x3e;2]=6;h=c[f>>2]|0;i=j;return h|0}return 0}function Kd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;b=k
+28|0;d=k+24|0;j=k+20|0;g=k+16|0;f=k+8|0;h=k+4|0;e=k;c[d>>2]=a;if(c[d>>2]|0?c[c[d>>2]>>2
]|0:0){c[g>>2]=c[c[d>>2]>>2];c[h>>2]=c[(c[g>>2]|0)+96>>2];c[e>
x3e;2]=0;if(c[(c[c[h>>2]>>2]|0)+32>>2]|0)c[e>>2]=Ya[c[(c[c[h>>2]>>2]|
0)+32>>2]&127](c[h>>2]|0,11426)|0;c[j>>2]=c[e>>2];if(!(c[j>>2]|0)){c[b>
;>2]=-1;j=c[b>>2]|0;i=k;return j|0}if(Ya[c[c[j>>2]>>2]&127](c[d>>2]|0,f)|0){c[
b>>2]=-1;j=c[b>>2]|0;i=k;return j|0}else{c[b>>2]=c[f+4>>2];j=c[b>>2]|0;i=k;return
j|0}}c[b>>2]=-1;j=c[b>>2]|0;i=k;return j|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,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;f=q+32|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;l=q;c[g>>
;2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=0;if(!((c[g>>2]|0)==0|(c[j>
x3e;2]|0)==0)?c[c[j>>2]>>2]|0:0){c[n>>2]=c[c[j>>2]>>2];c[o>>2]=c[(c[
n>>2]|0)+100>>2];c[l>>2]=bc(c[o>>2]|0,c[c[g>>2]>>2]|0,m)|0;do if(!(c
[m>>2]|0)){b=c[l>>2]|0;a=c[j>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4
x3e;>2];c[b+8>>2]=c[a+8>>2];c[(c[l>>2]|0)+12>>2]=c[g>>2];if(!(c[(c[g>
;>2]|0)+4>>2]|0?(c[m>>2]=Ya[c[(c[g>>2]|0)+4>>2]&127](c[l>>2]|0,c[h
x3e;>2]|0)|0,(c[m>>2]|0)!=0):0))p=7;if((p|0)==7?(p=hc(c[o>>2]|0,4,c[(c[n>>2]|0)+36>>
;2]|0,(c[(c[n>>2]|0)+36>>2]|0)+1|0,c[(c[n>>2]|0)+40>>2]|0,m)|0,c[(c[n>>2]|0)+40
>>2]=p,(c[m>>2]|0)==0):0){o=c[l>>2]|0;b=(c[n>>2]|0)+36|0;p=c[b>>2]|0;c[b>
x3e;2]=p+1;c[(c[(c[n>>2]|0)+40>>2]|0)+(p<<2)>>2]=o;break}Jc(c[l>>2]|0);c[l>
;>2]=0}while(0);if(c[k>>2]|0)c[c[k>>2]>>2]=c[l>>2];c[f>>2]=c[m>>
;2];p=c[f>>2]|0;i=q;return p|0}c[f>>2]=6;p=c[f>>2]|0;i=q;return p|0}function Md(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;m=i;i=i+32|0;e=m+24|0;f=m+20|0;g=m+16|0;l=m+12|0;k=m+8|0;j=m+4|0;h=m;c[e>>2
]=a;c[f>>2]=b;c[g>>2]=d;c[l>>2]=0;c[k>>2]=0;if((c[e>>2]|0?c[(c[e>>2]|
0)+92>>2]|0:0)?c[(c[e>>2]|0)+16>>2]|0:0){c[j>>2]=c[f>>2];c[h>>2]=c[(
c[e>>2]|0)+92>>2];do c[k>>2]=Ya[c[(c[(c[h>>2]|0)+12>>2]|0)+16>>2]&
;127](c[h>>2]|0,j)|0;while((c[k>>2]|0)>>>0>=(c[(c[e>>2]|0)+16>>2]|0)
x3e;>>0);c[l>>2]=(c[k>>2]|0)==0?0:c[j>>2]|0}if(!(c[g>>2]|0)){l=c[l>>
2]|0;i=m;return l|0}c[c[g>>2]>>2]=c[k>>2];l=c[l>>2]|0;i=m;return l|0}function Nd(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;p=i;i=i+48|0;d=p+36|0;e=p+32|0;f=p+28|0;j=p+24|0;k=p+20|0;l=p+16|0
;m=p+12|0;g=p+8|0;h=p+4|0;n=p;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=33;o=c[d>
;>2]|0;i=p;return o|0}if(!(c[f>>2]|0)){c[d>>2]=6;o=c[d>>2]|0;i=p;return o|0}if((c[(c[f>
x3e;2]|0)+16>>2]|0)>131076){c[d>>2]=4;o=c[d>>2]|0;i=p;return o|0}c[m>>2]=0;while(1){
if((c[m>>2]|0)>>>0>=(c[(c[e>>2]|0)+24>>2]|0)>>>0)break;c[l>
;>2]=c[(c[e>>2]|0)+28+(c[m>>2]<<2)>>2];if(!(Kr(c[(c[c[l>>2]>>2]|
0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0)){o=10;break}c[m>>2]=(c[m>>2]|0)+1}do if((
o|0)==10){if((c[(c[f>>2]|0)+12>>2]|0)>(c[(c[c[l>>2]>>2]|0)+12>>2]|0)){Od(
c[e>>2]|0,c[l>>2]|0)|0;break}c[d>>2]=5;o=c[d>>2]|0;i=p;return o|0}while(0);c[k>>
;2]=c[c[e>>2]>>2];c[j>>2]=0;a:do if((c[(c[e>>2]|0)+24>>2]|0)>>>
0<32){c[l>>2]=bc(c[k>>2]|0,c[(c[f>>2]|0)+4>>2]|0,j)|0;if(!(c[j>>2]|0)){c[(
c[l>>2]|0)+4>>2]=c[e>>2];c[(c[l>>2]|0)+8>>2]=c[k>>2];c[c[l>>
;2]>>2]=c[f>>2];if(!(c[c[c[l>>2]>>2]>>2]&2|0?(c[j>>2]=Td(c[l>
;>2]|0)|0,(c[j>>2]|0)!=0):0))o=19;do if((o|0)==19){if(c[c[c[l>>2]>>2]>>2]&4|0)
c[(c[e>>2]|0)+168>>2]=c[l>>2];if((c[c[c[l>>2]>>2]>>2]&1|0?(c[g
x3e;>2]=c[l>>2],c[(c[g>>2]|0)+20>>2]=c[c[l>>2]>>2],(c[c[c[g>>2]
x3e;>2]>>2]&512|0)==0):0)?(c[j>>2]=ac(c[k>>2]|0,(c[g>>2]|0)+36|0)|0,c[j>
x3e;2]|0):0)break;if(c[(c[f>>2]|0)+24>>2]|0?(c[j>>2]=Ta[c[(c[f>>2]|0)+24>>2]
x26;63](c[l>>2]|0)|0,c[j>>2]|0):0)break;n=c[l>>2]|0;m=(c[e>>2]|0)+24|0;o=c[m>>
2]|0;c[m>>2]=o+1;c[(c[e>>2]|0)+28+(o<<2)>>2]=n;break a}while(0);if(c[c[c[l>>2]
x3e;>2]>>2]&1|0?(c[h>>2]=c[l>>2],(c[c[c[h>>2]>>2]>>2]&
;512|0)==0):0)fc(c[(c[h>>2]|0)+36>>2]|0);if((c[c[c[l>>2]>>2]>>2]&2|0?(c[n
>>2]=c[l>>2],(c[(c[(c[n>>2]|0)+20>>2]|0)+36>>2]|0)==1869968492):0)?c[(c[n>
;>2]|0)+60>>2]|0:0)Va[c[(c[(c[(c[n>>2]|0)+20>>2]|0)+56>>2]|0)+20>>2]&
;63](c[(c[n>>2]|0)+60>>2]|0);Fb(c[k>>2]|0,c[l>>2]|0);c[l>>2]=0}}else c[j>
x3e;2]=48;while(0);c[d>>2]=c[j>>2];o=c[d>>2]|0;i=p;return o|0}function Od(a,b){a=a|0;b=b|0;var d=0
,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;if(!(c[e>
x3e;2]|0)){c[d>>2]=33;b=c[d>>2]|0;i=j;return b|0}a:do if(c[f>>2]|0){c[g>>2]=(c[e>
x3e;2]|0)+28;c[h>>2]=(c[g>>2]|0)+(c[(c[e>>2]|0)+24>>2]<<2);while(1){if((c[g>
;>2]|0)>>>0>=(c[h>>2]|0)>>>0)break a;if((c[c[g>>2]>>2]|0)==(
c[f>>2]|0))break;c[g>>2]=(c[g>>2]|0)+4}b=(c[e>>2]|0)+24|0;c[b>>2]=(c[b>
x3e;2]|0)+-1;c[h>>2]=(c[h>>2]|0)+-4;while(1){if((c[g>>2]|0)>>>0>=(c[h>>
;2]|0)>>>0)break;c[c[g>>2]>>2]=c[(c[g>>2]|0)+4>>2];c[g>>2]=(c[g
>>2]|0)+4}c[c[h>>2]>>2]=0;Pd(c[f>>2]|0);c[d>>2]=0;b=c[d>>2]|0;i=j;return
b|0}while(0);c[d>>2]=34;b=c[d>>2]|0;i=j;return b|0}function Pd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|
0;b=g+12|0;f=g+8|0;d=g+4|0;e=g;c[b>>2]=a;c[f>>2]=c[(c[b>>2]|0)+8>>2];c[d>>2]=c
[c[b>>2]>>2];c[e>>2]=c[(c[b>>2]|0)+4>>2];if(c[(c[b>>2]|0)+12+4>
x3e;2]|0)Va[c[(c[b>>2]|0)+12+4>>2]&63](c[b>>2]|0);if(c[e>>2]|0?(c[(c[e>>2
]|0)+168>>2]|0)==(c[b>>2]|0):0)c[(c[e>>2]|0)+168>>2]=0;if(c[c[c[b>>2]>>
;2]>>2]&2|0)Qd(c[b>>2]|0);if(c[c[c[b>>2]>>2]>>2]&1|0)Sd(c[b>>
;2]|0);if(!(c[(c[d>>2]|0)+28>>2]|0)){f=c[f>>2]|0;a=c[b>>2]|0;Fb(f,a);c[b>>2]=0
;i=g;return}Va[c[(c[d>>2]|0)+28>>2]&63](c[b>>2]|0);f=c[f>>2]|0;a=c[b>>2]|
0;Fb(f,a);c[b>>2]=0;i=g;return}function Qd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0
;f=h+4|0;g=h;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+4>>2];c[e>>2]=c[c[d>>2]
x3e;>2];c[f>>2]=Rb((c[d>>2]|0)+156|0,c[b>>2]|0)|0;if(!(c[f>>2]|0)){i=h;return}c[g
x3e;>2]=c[b>>2];if((c[(c[(c[g>>2]|0)+20>>2]|0)+36>>2]|0)==1869968492?c[(c[g>
x3e;2]|0)+60>>2]|0:0)Va[c[(c[(c[(c[g>>2]|0)+20>>2]|0)+56>>2]|0)+20>>2]&63
](c[(c[g>>2]|0)+60>>2]|0);wd((c[d>>2]|0)+156|0,c[f>>2]|0);Fb(c[e>>2]|0,c[f>
;>2]|0);c[f>>2]=0;Rd(c[d>>2]|0);i=h;return}function Rd(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]=Jb(c[d>>2]|0,1869968492,0)|0;c[(c[d>>2]|0)+164>>2]=c[e>
;>2];i=b;return}function Sd(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;zd((c[b>>2]|0)+24|0,8,c[(c[
b>>2]|0)+8>>2]|0,c[b>>2]|0);if(c[c[c[b>>2]>>2]>>2]&512|0){i=d;return
}fc(c[(c[b>>2]|0)+36>>2]|0);i=d;return}function Td(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+
32|0;b=l+24|0;f=l+20|0;g=l+16|0;e=l+12|0;h=l+8|0;j=l+4|0;d=l;c[b>>2]=a;c[f>>2]=c[(c[b>>2]|0)+4>
;>2];c[g>>2]=c[c[f>>2]>>2];c[h>>2]=0;c[h>>2]=bc(c[g>>2]|0,12,e)|
0;if(c[e>>2]|0){k=c[e>>2]|0;i=l;return k|0}c[j>>2]=c[b>>2];c[d>>2]=c[c[b>
x3e;2]>>2];c[(c[j>>2]|0)+20>>2]=c[d>>2];c[(c[j>>2]|0)+24>>2]=c[(c[d
x3e;>2]|0)+36>>2];if((c[(c[d>>2]|0)+36>>2]|0)==1869968492?c[(c[(c[d>>2]|0)+56>
x3e;2]|0)+4>>2]|0:0){c[e>>2]=Ya[c[(c[(c[d>>2]|0)+56>>2]|0)+4>>2]&127](c[g
>>2]|0,(c[j>>2]|0)+60|0)|0;if(!(c[e>>2]|0)){c[(c[j>>2]|0)+64>>2]=c[(c[(c[d>
;>2]|0)+56>>2]|0)+16>>2];c[(c[j>>2]|0)+68>>2]=c[(c[d>>2]|0)+40>>
;2];k=6}}else k=6;if((k|0)==6){c[(c[h>>2]|0)+8>>2]=c[b>>2];td((c[f>>2]|0)+156|0,c[h>
;>2]|0);Rd(c[f>>2]|0)}if(!(c[e>>2]|0)){k=c[e>>2]|0;i=l;return k|0}Fb(c[g>>2]|0,c[h
x3e;>2]|0);c[h>>2]=0;k=c[e>>2]|0;i=l;return k|0}function Ud(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]=Wc(c[g>>2]|0,c[f>>2]|0)|
0;if(!(c[d>>2]|0)){g=0;i=e;return g|0}g=c[(c[c[d>>2]>>2]|0)+20>>2]|0;i=e;return g|0}function
Vd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;j=k+12|0;g=k+8|0;f=k+4|0;h=k;c[d>>
2]=a;c[e>>2]=b;c[j>>2]=0;if(!(c[d>>2]|0)){j=c[j>>2]|0;i=k;return j|0}if(c[(c[c[d>
x3e;2]>>2]|0)+32>>2]|0)c[j>>2]=Ya[c[(c[c[d>>2]>>2]|0)+32>>2]&127
](c[d>>2]|0,c[e>>2]|0)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}c[g>>2]=c[(c
[d>>2]|0)+4>>2];c[f>>2]=(c[g>>2]|0)+28;c[h>>2]=(c[f>>2]|0)+(c[(c[g
x3e;>2]|0)+24>>2]<<2);while(1){if((c[f>>2]|0)>>>0>=(c[h>>2]|0)
x3e;>>0){d=11;break}if(((c[c[f>>2]>>2]|0)!=(c[d>>2]|0)?c[(c[c[c[f>>2]>>
;2]>>2]|0)+32>>2]|0:0)?(c[j>>2]=Ya[c[(c[c[c[f>>2]>>2]>>2]|0)+32>
;>2]&127](c[c[f>>2]>>2]|0,c[e>>2]|0)|0,c[j>>2]|0):0){d=11;break}c[f>>
;2]=(c[f>>2]|0)+4}if((d|0)==11){j=c[j>>2]|0;i=k;return j|0}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;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=b;c[h>>2]=0;
if(!(c[e>>2]|0)){c[d>>2]=6;a=c[d>>2]|0;i=j;return a|0}c[h>>2]=bc(c[e>>2]|0,200
,g)|0;if(c[g>>2]|0){c[d>>2]=c[g>>2];a=c[d>>2]|0;i=j;return a|0}c[c[h>>2]>
x3e;2]=c[e>>2];c[(c[h>>2]|0)+176>>2]=16384;a=bc(c[e>>2]|0,16384,g)|0;c[(c[h>>2
]|0)+172>>2]=a;if(c[g>>2]|0){Fb(c[e>>2]|0,c[h>>2]|0);c[h>>2]=0;c[d>>
2]=c[g>>2];a=c[d>>2]|0;i=j;return a|0}else{c[(c[h>>2]|0)+12>>2]=2;c[(c[h>>2]|0
)+16>>2]=4;c[(c[h>>2]|0)+20>>2]=4;c[(c[h>>2]|0)+196>>2]=1;c[c[f>>2]
x3e;>2]=c[h>>2];c[d>>2]=0;a=c[d>>2]|0;i=j;return a|0}return 0}function Xd(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;p=i;i=i+48|0;g=p+44|0;h=p+40|0;j=p+36|0;k=p+32|0;l=p+28|0;m=p+24|0
;o=p+4|0;n=p;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>
2]=c[(c[c[h>>2]>>2]|0)+96>>2];if(!(c[(c[(c[n>>2]|0)+20>>2]|0)+96>>2]|
0)){c[g>>2]=0;b=c[g>>2]|0;i=p;return b|0}c[o>>2]=0;c[o+4>>2]=c[j>>2];c[o+8>
;>2]=c[k>>2];if(!(c[l>>2]|0))c[l>>2]=c[m>>2];if(!(c[m>>2]|0))c[m>>
;2]=c[l>>2];if(!(c[l>>2]|0)){c[m>>2]=72;c[l>>2]=72}c[o+12>>2]=c[l>>2
];c[o+16>>2]=c[m>>2];c[g>>2]=Ya[c[(c[(c[n>>2]|0)+20>>2]|0)+96>>2]&
;127](c[h>>2]|0,o)|0;b=c[g>>2]|0;i=p;return b|0}function Yd(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;l=i;i=i+48|0;e=l+36|0;f=l+32|0;g=l+28|0;h=l+24|0;k=l+4|0;j=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=
d;c[j>>2]=c[(c[c[f>>2]>>2]|0)+96>>2];if(c[(c[(c[j>>2]|0)+20>>2]|0)+96
>>2]|0){c[k>>2]=0;c[k+4>>2]=c[g>>2]<<6;c[k+8>>2]=c[h>>2]
x3c;<6;c[k+12>>2]=0;c[k+16>>2]=0;c[e>>2]=Ya[c[(c[(c[j>>2]|0)+20>>2]|0)+96
>>2]&127](c[f>>2]|0,k)|0;b=c[e>>2]|0;i=l;return b|0}else{c[e>>2]=0;b=c[e>>
;2]|0;i=l;return b|0}return 0}function Zd(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,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;E=i;i=i+128|0;g=E+124|0;h=E+120|0;j=E+116|0;k=E+112|0;w=E+104|0;v=E+96|0;y=E+88|0;r=E+84|
0;p=E+80|0;u=E+76|0;m=E+72|0;q=E+68|0;n=E+64|0;t=E+60|0;s=E+56|0;l=E+52|0;o=E+48|0;z=E+40|0;A=E+32|0;x=E+24|0;B=E+16|0;C=E+8|0;D
=E;c[h>>2]=d;c[j>>2]=e;c[k>>2]=f;if(!((c[h>>2]|0)!=0&(c[j>>2]|0)!=0)){c[g
>>2]=6;D=c[g>>2]|0;i=E;return D|0}c[s>>2]=c[(c[j>>2]|0)+16>>2];c[l>>
2]=c[(c[j>>2]|0)+20>>2];c[n>>2]=0;c[q>>2]=0;a:while(1){if((c[q>>2]|0)>=(b
[c[h>>2]>>1]|0)){e=32;break}c[o>>2]=b[(c[(c[h>>2]|0)+12>>2]|0)+(c[q>>
;2]<<1)>>1];if((c[o>>2]|0)<0){e=34;break}c[p>>2]=(c[(c[h>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<3);f=(c[(c[h>>2]|0)+4>>2]|0)+(c[n>>2]<<3)|0;c[y
x3e;>2]=c[f>>2];c[y+4>>2]=c[f+4>>2];c[y>>2]=(c[y>>2]<<c[s>
x3e;2])-(c[l>>2]|0);c[y+4>>2]=(c[y+4>>2]<<c[s>>2])-(c[l>>2]|0);f=(c[(
c[h>>2]|0)+4>>2]|0)+(c[o>>2]<<3)|0;c[w>>2]=c[f>>2];c[w+4>>
2]=c[f+4>>2];c[w>>2]=(c[w>>2]<<c[s>>2])-(c[l>>2]|0);c[w+4>>
;2]=(c[w+4>>2]<<c[s>>2])-(c[l>>2]|0);c[v>>2]=c[y>>2];c[v+4>>
;2]=c[y+4>>2];c[r>>2]=(c[(c[h>>2]|0)+4>>2]|0)+(c[n>>2]<<3);c[u>
x3e;2]=(c[(c[h>>2]|0)+8>>2]|0)+(c[n>>2]|0);c[t>>2]=a[c[u>>2]>>0]&
;3;if((c[t>>2]|0)==2){e=34;break}if(!(c[t>>2]|0)){if((a[(c[(c[h>>2]|0)+8>>2]|0)+(c[o>
;>2]|0)>>0]&3|0)==1){c[y>>2]=c[w>>2];c[y+4>>2]=c[w+4>>2];c[p>
x3e;2]=(c[p>>2]|0)+-8}else{c[y>>2]=((c[y>>2]|0)+(c[w>>2]|0)|0)/2|0;c[y+4>>2]=((
c[y+4>>2]|0)+(c[w+4>>2]|0)|0)/2|0;c[w>>2]=c[y>>2];c[w+4>>2]=c[y+4>>2
]}c[r>>2]=(c[r>>2]|0)+-8;c[u>>2]=(c[u>>2]|0)+-1}c[m>>2]=Ya[c[c[j>>2]
x3e;>2]&127](y,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break}b:while(1){if((c[r>>2]|0)>>
;>0>=(c[p>>2]|0)>>>0){e=29;break}c[r>>2]=(c[r>>2]|0)+8;c[u>>2]=(
c[u>>2]|0)+1;c[t>>2]=a[c[u>>2]>>0]&3;switch(c[t>>2]|0){case 1:{c[z>
x3e;2]=(c[c[r>>2]>>2]<<c[s>>2])-(c[l>>2]|0);c[z+4>>2]=(c[(c[r>
x3e;2]|0)+4>>2]<<c[s>>2])-(c[l>>2]|0);c[m>>2]=Ya[c[(c[j>>2]|0)+4>
;>2]&127](z,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else continue b}case 0:{c[v>>2]=(c[c
[r>>2]>>2]<<c[s>>2])-(c[l>>2]|0);c[v+4>>2]=(c[(c[r>>2]|0)+
4>>2]<<c[s>>2])-(c[l>>2]|0);while(1){if((c[r>>2]|0)>>>0>=(
c[p>>2]|0)>>>0){e=23;break b}c[r>>2]=(c[r>>2]|0)+8;c[u>>2]=(c[u>>
;2]|0)+1;c[t>>2]=a[c[u>>2]>>0]&3;c[A>>2]=(c[c[r>>2]>>2]<
x3c;c[s>>2])-(c[l>>2]|0);c[A+4>>2]=(c[(c[r>>2]|0)+4>>2]<<c[s>
x3e;2])-(c[l>>2]|0);if((c[t>>2]|0)==1)break;if(c[t>>2]|0){e=34;break a}c[x>>2]=((c[v>
;>2]|0)+(c[A>>2]|0)|0)/2|0;c[x+4>>2]=((c[v+4>>2]|0)+(c[A+4>>2]|0)|0)/2|0;c[m>
x3e;2]=Oa[c[(c[j>>2]|0)+8>>2]&63](v,x,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a};c[v
x3e;>2]=c[A>>2];c[v+4>>2]=c[A+4>>2]}c[m>>2]=Oa[c[(c[j>>2]|0)+8>>
;2]&63](v,A,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else continue b}default:{if(((c[r>>2]|0)+
8|0)>>>0>(c[p>>2]|0)>>>0){e=34;break a}if((a[(c[u>>2]|0)+1>>0]
x26;3|0)!=2){e=34;break a}c[r>>2]=(c[r>>2]|0)+16;c[u>>2]=(c[u>>2]|0)+2;c[B>>2]=(
c[(c[r>>2]|0)+-16>>2]<<c[s>>2])-(c[l>>2]|0);c[B+4>>2]=(c[(c[r>
x3e;2]|0)+-16+4>>2]<<c[s>>2])-(c[l>>2]|0);c[C>>2]=(c[(c[r>>2]|0)+-8
x3e;>2]<<c[s>>2])-(c[l>>2]|0);c[C+4>>2]=(c[(c[r>>2]|0)+-8+4>>2]
x3c;<c[s>>2])-(c[l>>2]|0);if((c[r>>2]|0)>>>0>(c[p>>2]|0)>
x3e;>0){e=28;break b}c[D>>2]=(c[c[r>>2]>>2]<<c[s>>2])-(c[l>>2]|
0);c[D+4>>2]=(c[(c[r>>2]|0)+4>>2]<<c[s>>2])-(c[l>>2]|0);c[m>>
;2]=Wa[c[(c[j>>2]|0)+12>>2]&31](B,C,D,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else
continue b}}}if((e|0)==23)c[m>>2]=Oa[c[(c[j>>2]|0)+8>>2]&63](v,y,c[k>>2]|0)|0;else
if((e|0)==28)c[m>>2]=Wa[c[(c[j>>2]|0)+12>>2]&31](B,C,y,c[k>>2]|0)|0;else if((e|0)==
29)c[m>>2]=Ya[c[(c[j>>2]|0)+4>>2]&127](y,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;
break}c[n>>2]=(c[o>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+1}if((e|0)==32){c[g>>2]=0;D=c[
g>>2]|0;i=E;return D|0}else if((e|0)==33){c[g>>2]=c[m>>2];D=c[g>>2]|0;i=E;return D|0}else
if((e|0)==34){c[g>>2]=20;D=c[g>>2]|0;i=E;return D|0}return 0}function _d(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0;l=p+28|0;o=p+24|0;k=p+20|0;n=p+16|0;h=p+12|0;g=p+8|0;j=p+4|0;m=p;c
[e>>2]=a;c[f>>2]=d;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=p;return}a:do if(!(b[(c[e
>>2]|0)+2>>1]|0)){c[l>>2]=0;c[o>>2]=0;c[k>>2]=0;c[n>>2]=0}else{c[h
x3e;>2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=(c[h>>2]|0)+(b[(c[e>>2]|0)+2>>
;1]<<3);a=c[c[h>>2]>>2]|0;c[k>>2]=a;c[l>>2]=a;a=c[(c[h>>2]|0)+4>
;>2]|0;c[n>>2]=a;c[o>>2]=a;c[h>>2]=(c[h>>2]|0)+8;while(1){if((c[h>>2]|0)
x3e;>>0>=(c[g>>2]|0)>>>0)break a;c[j>>2]=c[c[h>>2]>>2];if((
c[j>>2]|0)<(c[l>>2]|0))c[l>>2]=c[j>>2];if((c[j>>2]|0)>(c[k>>
;2]|0))c[k>>2]=c[j>>2];c[m>>2]=c[(c[h>>2]|0)+4>>2];if((c[m>>2]|0)<
;(c[o>>2]|0))c[o>>2]=c[m>>2];if((c[m>>2]|0)>(c[n>>2]|0))c[n>>2]=
c[m>>2];c[h>>2]=(c[h>>2]|0)+8}}while(0);c[c[f>>2]>>2]=c[l>>2];c[(c[f
>>2]|0)+8>>2]=c[k>>2];c[(c[f>>2]|0)+4>>2]=c[o>>2];c[(c[f>>
2]|0)+12>>2]=c[n>>2];i=p;return}function $d(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,o=0,p=0,q=0
,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+128|0;d=F+116|0;e=F+112|0;z=F+108|0;D=F+104|0;C=F+100|0;A=F
+96|0;B=F+92|0;f=F+88|0;l=F+84|0;n=F+80|0;s=F+76|0;r=F+72|0;m=F+68|0;t=F+56|0;u=F+44|0;h=F+40|0;g=F+36|0;k=F+32|0;j=F+28|0;q=F+24
|0;x=F+20|0;o=F+16|0;p=F+12|0;v=F+8|0;w=F+4|0;y=F;c[e>>2]=a;c[z>>2]=32768;c[D>>2]=32768;c[C>
x3e;2]=-32768;c[A>>2]=0;c[B>>2]=0;c[u>>2]=c[42];c[u+4>>2]=c[43];c[u+8>>2]=c[44
];if(c[e>>2]|0?(b[(c[e>>2]|0)+2>>1]|0)>0:0){c[l>>2]=c[(c[e>>2]|0)+4>
x3e;2];c[f>>2]=c[(c[e>>2]|0)+12>>2];while(1){if((c[f>>2]|0)>>>0>=((c
[(c[e>>2]|0)+12>>2]|0)+(b[c[e>>2]>>1]<<1)|0)>>>0)break;c[h>
;>2]=32768;c[g>>2]=-32768;c[k>>2]=32768;c[j>>2]=-32768;c[n>>2]=(c[(c[e>>2
]|0)+4>>2]|0)+(b[c[f>>2]>>1]<<3);if((c[n>>2]|0)>>>0>=((c[l
>>2]|0)+16|0)>>>0){c[r>>2]=c[l>>2];while(1){if((c[r>>2]|0)>>>
;0>(c[n>>2]|0)>>>0)break;if((c[c[r>>2]>>2]|0)<(c[h>>2]|0))c[h
x3e;>2]=c[c[r>>2]>>2];if((c[c[r>>2]>>2]|0)>(c[g>>2]|0))c[g>>
;2]=c[c[r>>2]>>2];if((c[(c[r>>2]|0)+4>>2]|0)<(c[k>>2]|0))c[k>>2
]=c[(c[r>>2]|0)+4>>2];if((c[(c[r>>2]|0)+4>>2]|0)>(c[j>>2]|0))c[j>>
;2]=c[(c[r>>2]|0)+4>>2];c[r>>2]=(c[r>>2]|0)+8}if(((c[h>>2]|0)<(c[z>
x3e;2]|0)?(c[h>>2]|0)!=(c[g>>2]|0):0)?(c[k>>2]|0)!=(c[j>>2]|0):0){c[z>>2]=c[h
x3e;>2];c[D>>2]=c[k>>2];c[C>>2]=c[j>>2];c[A>>2]=c[l>>2];c[B>
;>2]=c[n>>2]}}c[f>>2]=(c[f>>2]|0)+2;c[l>>2]=(c[n>>2]|0)+8}if((c[z>
x3e;2]|0)==32768){c[d>>2]=0;E=c[d>>2]|0;i=F;return E|0}c[t>>2]=((c[D>>2]|0)*3|0)+(c[C>
;>2]|0)>>2;c[t+4>>2]=(c[D>>2]|0)+(c[C>>2]|0)>>1;c[t+8>>2]=(c[D
x3e;>2]|0)+((c[C>>2]|0)*3|0)>>2;c[m>>2]=0;while(1){if((c[m>>2]|0)>=3)break;a:while
(1){c[q>>2]=32768;c[x>>2]=-32768;c[w>>2]=0;c[v>>2]=0;c[p>>2]=0;c[o>>
2]=0;c[s>>2]=c[B>>2];c[r>>2]=c[A>>2];while(1){if((c[r>>2]|0)>>>
0>(c[B>>2]|0)>>>0)break a;if((c[(c[r>>2]|0)+4>>2]|0)==(c[t+(c[m>>2]
x3c;<2)>>2]|0))break;if((c[(c[s>>2]|0)+4>>2]|0)==(c[t+(c[m>>2]<<2)>
x3e;2]|0))break;if(!((c[(c[r>>2]|0)+4>>2]|0)<(c[t+(c[m>>2]<<2)>>2]|0)?(c[(
c[s>>2]|0)+4>>2]|0)<(c[t+(c[m>>2]<<2)>>2]|0):0))E=34;do if((E|0)==34){E=0
;if((c[(c[r>>2]|0)+4>>2]|0)>(c[t+(c[m>>2]<<2)>>2]|0)?(c[(c[s>>2
]|0)+4>>2]|0)>(c[t+(c[m>>2]<<2)>>2]|0):0)break;D=xb((c[c[r>>2]>>
;2]|0)-(c[c[s>>2]>>2]|0)|0,(c[t+(c[m>>2]<<2)>>2]|0)-(c[(c[s>>2]|0)+4
>>2]|0)|0,(c[(c[r>>2]|0)+4>>2]|0)-(c[(c[s>>2]|0)+4>>2]|0)|0)|0;c[y>>
2]=D+(c[c[s>>2]>>2]|0);if((c[y>>2]|0)<(c[q>>2]|0)){c[q>>2]=c[y>>
;2];c[o>>2]=c[s>>2];c[p>>2]=c[r>>2]}if((c[y>>2]|0)>(c[x>>2]|0)){
c[x>>2]=c[y>>2];c[v>>2]=c[s>>2];c[w>>2]=c[r>>2]}}while(0);c[s>
x3e;2]=c[r>>2];c[r>>2]=(c[r>>2]|0)+8}D=t+(c[m>>2]<<2)|0;c[D>>2]=(c[D
>>2]|0)+1}do if((c[o>>2]|0)!=0&(c[v>>2]|0)!=0){if((c[(c[o>>2]|0)+4>>2]|0)
x3c;(c[(c[p>>2]|0)+4>>2]|0)?(c[(c[v>>2]|0)+4>>2]|0)>(c[(c[w>>2]|0)+4>
;>2]|0):0){c[u+(c[m>>2]<<2)>>2]=0;break}if((c[(c[o>>2]|0)+4>>2]|0)>(
c[(c[p>>2]|0)+4>>2]|0)?(c[(c[v>>2]|0)+4>>2]|0)<(c[(c[w>>2]|0)+4>>
;2]|0):0){c[u+(c[m>>2]<<2)>>2]=1;break}c[u+(c[m>>2]<<2)>>2]=2}while(
0);c[m>>2]=(c[m>>2]|0)+1}do if((c[u>>2]|0)!=2){if((c[u>>2]|0)!=(c[u+4>>2]|0)?(
c[u>>2]|0)!=(c[u+8>>2]|0):0)break;c[d>>2]=c[u>>2];E=c[d>>2]|0;i=F;return E|0}while
(0);if((c[u+4>>2]|0)!=2?(c[u+4>>2]|0)==(c[u+8>>2]|0):0){c[d>>2]=c[u+4>>2];E=c[
d>>2]|0;i=F;return E|0}c[d>>2]=0;E=c[d>>2]|0;i=F;return E|0}c[d>>2]=0;E=c[d>>2
]|0;i=F;return E|0}function ae(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;f=h+12|0;g=h+8|0;b=h+4|0;e=h;c[d
x3e;>2]=a;c[f>>2]=c[c[d>>2]>>2];c[g>>2]=c[(c[d>>2]|0)+4>>2];j=c
[f>>2]|0;a=c[g>>2]|0;c[b>>2]=((c[f>>2]|0)>=0?j:0-j|0)|((c[g>>2]|0)>=
0?a:0-a|0);c[e>>2]=0;if((c[b>>2]|0)>=65536){c[b>>2]=c[b>>2]>>16;c[e>
x3e;2]=(c[e>>2]|0)+16}if((c[b>>2]|0)>=256){c[b>>2]=c[b>>2]>>8;c[e>
x3e;2]=(c[e>>2]|0)+8}if((c[b>>2]|0)>=16){c[b>>2]=c[b>>2]>>4;c[e>>
;2]=(c[e>>2]|0)+4}if((c[b>>2]|0)>=4){c[b>>2]=c[b>>2]>>2;c[e>>2]=(
c[e>>2]|0)+2}if((c[b>>2]|0)>=2){c[b>>2]=c[b>>2]>>1;c[e>>2]=(c[e
>>2]|0)+1}a=c[e>>2]|0;if((c[e>>2]|0)<=27){c[e>>2]=27-a;c[c[d>>2]>>
;2]=c[f>>2]<<c[e>>2];c[(c[d>>2]|0)+4>>2]=c[g>>2]<<c[e>
;>2];j=c[e>>2]|0;i=h;return j|0}else{c[e>>2]=a-27;c[c[d>>2]>>2]=c[f>>2]
x3e;>c[e>>2];c[(c[d>>2]|0)+4>>2]=c[g>>2]>>c[e>>2];c[e>>
;2]=0-(c[e>>2]|0);j=c[e>>2]|0;i=h;return j|0}return 0}function be(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k
=0,l=0;l=i;i=i+32|0;h=l+24|0;j=l+20|0;g=l+16|0;e=l+12|0;k=l+8|0;f=l+4|0;d=l;c[h>>2]=a;c[k>>2]=c[c[h>>
;2]>>2];c[f>>2]=c[(c[h>>2]|0)+4>>2];c[j>>2]=0;if((c[k>>2]|0)<0){
c[k>>2]=0-(c[k>>2]|0);c[f>>2]=0-(c[f>>2]|0);c[j>>2]=11796480}if((c[f>>
;2]|0)>0)c[j>>2]=0-(c[j>>2]|0);c[d>>2]=180;a=c[f>>2]|0;b=c[k>>2]<<
;1;if((c[f>>2]|0)<0){c[g>>2]=a+b;c[k>>2]=(c[k>>2]|0)-(c[f>>2]<<
1);c[f>>2]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)-(c[b
x3e;>2]|0)}else{c[g>>2]=a-b;c[k>>2]=(c[k>>2]|0)+(c[f>>2]<<1);c[f>>
;2]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)+(c[b>>2]|0)}
c[e>>2]=0;do{a=c[f>>2]|0;b=c[k>>2]>>c[e>>2];if((c[f>>2]|0)<0){c
[g>>2]=a+b;c[k>>2]=(c[k>>2]|0)-(c[f>>2]>>c[e>>2]);c[f>>2]=
c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)-(c[b>>2]|0)}else
{c[g>>2]=a-b;c[k>>2]=(c[k>>2]|0)+(c[f>>2]>>c[e>>2]);c[f>>2
]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)+(c[b>>2]|0)}b=(
c[e>>2]|0)+1|0;c[e>>2]=b}while((b|0)<23);a=c[j>>2]|0;if((c[j>>2]|0)>=0){c[j>
;>2]=a+16&-32;g=c[k>>2]|0;k=c[h>>2]|0;c[k>>2]=g;j=c[j>>2]|0;k=c[h>>2
]|0;k=k+4|0;c[k>>2]=j;i=l;return}else{c[j>>2]=0-(0-a+16&-32);g=c[k>>2]|0;k=c[h>>2]|
0;c[k>>2]=g;j=c[j>>2]|0;k=c[h>>2]|0;k=k+4|0;c[k>>2]=j;i=l;return}}function ce(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;f=i;i=i+48|0;b=f+36|0;e=f+32|0;m=f+28|0;k=f+24|0;n=f+20|0;l=f+16|0;d=f+12|0;h=f+8|0
;j=f+4|0;g=f;c[b>>2]=a;c[e>>2]=c[b>>2];a=c[b>>2]|0;c[b>>2]=(c[b>>2]|
0)>=0?a:0-a|0;c[m>>2]=(c[b>>2]|0)>>>16;c[k>>2]=c[b>>2]&65535;c[
n>>2]=17797;c[l>>2]=47593;c[d>>2]=_(c[n>>2]|0,c[m>>2]|0)|0;a=_(c[n>>
2]|0,c[k>>2]|0)|0;c[h>>2]=a+(_(c[l>>2]|0,c[m>>2]|0)|0);c[j>>2]=(_(c[l>>
;2]|0,c[k>>2]|0)|0)>>>16;c[g>>2]=(c[h>>2]|0)>>>0>=(c[j>>
;2]|0)>>>0?c[h>>2]|0:c[j>>2]|0;c[h>>2]=(c[h>>2]|0)+(c[j>>2]|0);
c[d>>2]=(c[d>>2]|0)+((c[h>>2]|0)>>>16);if((c[h>>2]|0)>>>0
x3e;=(c[g>>2]|0)>>>0){l=c[d>>2]|0;c[b>>2]=l;l=c[e>>2]|0;l=(l|0)>=0;m
=c[b>>2]|0;n=0-m|0;n=l?m:n;i=f;return n|0}c[d>>2]=(c[d>>2]|0)+65536;l=c[d>>2]|0;c[b>
;>2]=l;l=c[e>>2]|0;l=(l|0)>=0;m=c[b>>2]|0;n=0-m|0;n=l?m:n;i=f;return n|0}function de(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;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[j>>2]=b;c[f>
x3e;2]=d;c[g>>2]=ee(c[e>>2]|0,c[j>>2]|0)|0;if(c[g>>2]|0){j=c[g>>2]|0;i=h;return
j|0}c[c[f>>2]>>2]=c[(c[e>>2]|0)+32>>2];c[(c[e>>2]|0)+32>>2]=0;c[(c[
e>>2]|0)+36>>2]=0;j=c[g>>2]|0;i=h;return j|0}function ee(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,
j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;b=c[d>
x3e;2]|0;if(!(c[(c[d>>2]|0)+20>>2]|0)){if((c[b+8>>2]|0)>>>0<(c[(c[d>>
;2]|0)+4>>2]|0)>>>0?((c[(c[d>>2]|0)+4>>2]|0)-(c[(c[d>>2]|0)+8>>
2]|0)|0)>>>0>=(c[e>>2]|0)>>>0:0){c[(c[d>>2]|0)+32>>2]=(c[c[d>
;>2]>>2]|0)+(c[(c[d>>2]|0)+8>>2]|0);c[(c[d>>2]|0)+36>>2]=(c[(c[d>>
;2]|0)+32>>2]|0)+(c[e>>2]|0);h=(c[d>>2]|0)+8|0;c[h>>2]=(c[h>>2]|0)+(c[e>
x3e;2]|0);h=c[f>>2]|0;i=j;return h|0}c[f>>2]=85;h=c[f>>2]|0;i=j;return h|0}c[g>>2]=c[b+28
>>2];if((c[e>>2]|0)>>>0>(c[(c[d>>2]|0)+4>>2]|0)>>>0){
c[f>>2]=85;h=c[f>>2]|0;i=j;return h|0}a=cc(c[g>>2]|0,c[e>>2]|0,f)|0;c[c[d>>2]
x3e;>2]=a;if(c[f>>2]|0){h=c[f>>2]|0;i=j;return h|0}c[h>>2]=Wa[c[(c[d>>2]|0)+20>
;>2]&31](c[d>>2]|0,c[(c[d>>2]|0)+8>>2]|0,c[c[d>>2]>>2]|0,c[e>
x3e;2]|0)|0;if((c[h>>2]|0)>>>0<(c[e>>2]|0)>>>0){Fb(c[g>>2]|0,c[
c[d>>2]>>2]|0);c[c[d>>2]>>2]=0;c[f>>2]=85}c[(c[d>>2]|0)+32>>
;2]=c[c[d>>2]>>2];c[(c[d>>2]|0)+36>>2]=(c[(c[d>>2]|0)+32>>2]|0)+(c[e
>>2]|0);g=(c[d>>2]|0)+8|0;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0);h=c[f>>2]|
0;i=j;return h|0}function fe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>
x3e;2]=b;if(c[d>>2]|0?c[(c[d>>2]|0)+20>>2]|0:0){c[f>>2]=c[(c[d>>2]|0)+28>
x3e;2];Fb(c[f>>2]|0,c[c[e>>2]>>2]|0);c[c[e>>2]>>2]=0}c[c[e>>2]>
x3e;2]=0;i=g;return}function ge(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(c[(c[b>>2]|0)+
20>>2]|0){c[d>>2]=c[(c[b>>2]|0)+28>>2];Fb(c[d>>2]|0,c[c[b>>2]>
x3e;2]|0);c[c[b>>2]>>2]=0}c[(c[b>>2]|0)+32>>2]=0;c[(c[b>>2]|0)+36>>2
]=0;i=e;return}function he(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f;e=f+4|0;c[d>>2]=b;a[e>>0]=0;if((c[(c[d
x3e;>2]|0)+32>>2]|0)>>>0>=(c[(c[d>>2]|0)+36>>2]|0)>>>0){b=
a[e>>0]|0;i=f;return b|0}d=(c[d>>2]|0)+32|0;b=c[d>>2]|0;c[d>>2]=b+1;a[e>>0]=a[
b>>0]|0;b=a[e>>0]|0;i=f;return b|0}function ie(e){e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;f=j+4|0;g=j;h=j+8|0
;c[f>>2]=e;b[h>>1]=0;c[g>>2]=c[(c[f>>2]|0)+32>>2];if(((c[g>>2]|0)+1|
0)>>>0>=(c[(c[f>>2]|0)+36>>2]|0)>>>0){g=c[g>>2]|0;e=c[f>
x3e;2]|0;e=e+32|0;c[e>>2]=g;e=b[h>>1]|0;i=j;return e|0}c[g>>2]=(c[g>>2]|0)+2;b[h>
x3e;1]=a[(c[g>>2]|0)+-2>>0]<<16>>16<<8|d[(c[g>>2]|0)+-2+1>>
;0]<<0;g=c[g>>2]|0;e=c[f>>2]|0;e=e+32|0;c[e>>2]=g;e=b[h>>1]|0;i=j;return e|0}function
je(b){b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=b;c[g>>2]=0;c[f>>2]=c[(c
[e>>2]|0)+32>>2];if(((c[f>>2]|0)+3|0)>>>0>=(c[(c[e>>2]|0)+36>
x3e;2]|0)>>>0){f=c[f>>2]|0;b=c[e>>2]|0;b=b+32|0;c[b>>2]=f;b=c[g>>2]|0;i=h
;return b|0}c[f>>2]=(c[f>>2]|0)+4;c[g>>2]=a[(c[f>>2]|0)+-4>>0]<<24|d
[(c[f>>2]|0)+-4+1>>0]<<16|d[(c[f>>2]|0)+-4+2>>0]<<8|d[(c[f>>
;2]|0)+-4+3>>0]<<0;f=c[f>>2]|0;b=c[e>>2]|0;b=b+32|0;c[b>>2]=f;b=c[g>>
;2]|0;i=h;return b|0}function ke(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+9|0;f=j+4|0;g=j;h=j+8|0;c[f>>
;2]=b;c[g>>2]=d;a[h>>0]=0;c[c[g>>2]>>2]=0;d=c[f>>2]|0;if(c[(c[f>>2]|
0)+20>>2]|0)if((Wa[c[d+20>>2]&31](c[f>>2]|0,c[(c[f>>2]|0)+8>>2]|0,h,1)|0)!=
1)d=6;else d=5;else if((c[d+8>>2]|0)>>>0<(c[(c[f>>2]|0)+4>>2]|0)>>
x3e;0){a[h>>0]=a[(c[c[f>>2]>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)>>0]|0;d=5
}else d=6;if((d|0)==5){g=(c[f>>2]|0)+8|0;c[g>>2]=(c[g>>2]|0)+1;a[e>>0]=a[h>>0]|
0;h=a[e>>0]|0;i=j;return h|0}else if((d|0)==6){c[c[g>>2]>>2]=85;a[e>>0]=0;h=a[e>>
;0]|0;i=j;return h|0}return 0}function le(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;v=i;i
=i+48|0;j=v+36|0;k=v+32|0;l=v+28|0;m=v+24|0;o=v+20|0;p=v+40|0;n=v+16|0;t=v+12|0;s=v+8|0;r=v+4|0;q=v;c[k>>2]=f;c[l>
;>2]=g;c[m>>2]=h;a[p>>0]=0;if(!((c[l>>2]|0)!=0&(c[k>>2]|0)!=0)){c[j>>
;2]=6;u=c[j>>2]|0;i=v;return u|0}c[n>>2]=c[(c[k>>2]|0)+32>>2];c[o>>2]=0;a:while
(1){switch(d[c[l>>2]>>0]|0){case 4:{c[o>>2]=ee(c[k>>2]|0,e[(c[l>>2]|0)+2>
x3e;1]|0)|0;if(c[o>>2]|0)break a;a[p>>0]=1;c[n>>2]=c[(c[k>>2]|0)+32>>2];c[l>
;>2]=(c[l>>2]|0)+4;continue a}case 25:case 24:{c[q>>2]=d[(c[l>>2]|0)+1>>0];if(((c[n
>>2]|0)+(c[q>>2]|0)|0)>>>0>(c[(c[k>>2]|0)+36>>2]|0)>>>
;0){u=8;break a}if((d[c[l>>2]>>0]|0)==24){c[r>>2]=(c[m>>2]|0)+(e[(c[l>>2]|0)+2
>>1]|0);Ss(c[r>>2]|0,c[n>>2]|0,c[q>>2]|0)|0}c[n>>2]=(c[n>>2]|0)+(c[q
>>2]|0);c[l>>2]=(c[l>>2]|0)+4;continue a}case 9:case 8:{h=c[n>>2]|0;c[n>>2]=h+
1;c[t>>2]=d[h>>0];c[s>>2]=24;break}case 12:case 13:{c[n>>2]=(c[n>>2]|0)+2;c[t
x3e;>2]=((d[(c[n>>2]|0)+-2>>0]&65535)<<8|(d[(c[n>>2]|0)+-2+1>>0]&
;65535)<<0)&65535;c[s>>2]=16;break}case 14:case 15:{c[n>>2]=(c[n>>2]|0)+2;c[t>
x3e;2]=((d[(c[n>>2]|0)+-2+1>>0]&65535)<<8|(d[(c[n>>2]|0)+-2>>0]&65535
)<<0)&65535;c[s>>2]=16;break}case 16:case 17:{c[n>>2]=(c[n>>2]|0)+4;c[t>>
2]=d[(c[n>>2]|0)+-4>>0]<<24|d[(c[n>>2]|0)+-4+1>>0]<<16|d[(c[n>
x3e;2]|0)+-4+2>>0]<<8|d[(c[n>>2]|0)+-4+3>>0]<<0;c[s>>2]=0;break}case
18:case 19:{c[n>>2]=(c[n>>2]|0)+4;c[t>>2]=d[(c[n>>2]|0)+-4+3>>0]<<24
|d[(c[n>>2]|0)+-4+2>>0]<<16|d[(c[n>>2]|0)+-4+1>>0]<<8|d[(c[n>
x3e;2]|0)+-4>>0]<<0;c[s>>2]=0;break}case 20:case 21:{c[n>>2]=(c[n>>2]|0)+3;c[t
>>2]=d[(c[n>>2]|0)+-3>>0]<<16|d[(c[n>>2]|0)+-3+1>>0]<<8|d[(
c[n>>2]|0)+-3+2>>0]<<0;c[s>>2]=8;break}case 22:case 23:{c[n>>2]=(c[n>>
;2]|0)+3;c[t>>2]=d[(c[n>>2]|0)+-3+2>>0]<<16|d[(c[n>>2]|0)+-3+1>>0]
x3c;<8|d[(c[n>>2]|0)+-3>>0]<<0;c[s>>2]=8;break}default:{u=19;break a}}if(d[c[l>
;>2]>>0]&1|0)c[t>>2]=c[t>>2]<<c[s>>2]>>c[s>>2];c
[r>>2]=(c[m>>2]|0)+(e[(c[l>>2]|0)+2>>1]|0);switch(d[(c[l>>2]|0)+1>>0
]|0){case 1:{a[c[r>>2]>>0]=c[t>>2];break}case 2:{b[c[r>>2]>>1]=c[t>>
2];break}case 4:{c[c[r>>2]>>2]=c[t>>2];break}default:c[c[r>>2]>>2]=c[t>
x3e;2]}c[l>>2]=(c[l>>2]|0)+4}if((u|0)==8)c[o>>2]=85;else if((u|0)==19)c[(c[k>>2]|0)+32
x3e;>2]=c[n>>2];if(a[p>>0]|0)ge(c[k>>2]|0);c[j>>2]=c[o>>2];u=c[j>>
;2]|0;i=v;return u|0}function me(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+32|0;d=f+16|0;g=f+12|0;e=f+8|0;b=f;c[g>>2]=a
;a=c[g>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];a=c[b+4>>2]|0;if(!(
c[b>>2]|0)){g=c[b+4>>2]|0;c[d>>2]=(a|0)>=0?g:0-g|0;g=c[d>>2]|0;i=f;return g|0}if(!a
){g=c[b>>2]|0;c[d>>2]=(c[b>>2]|0)>=0?g:0-g|0;g=c[d>>2]|0;i=f;return g|0}c[e>
x3e;2]=ae(b)|0;be(b);c[b>>2]=ce(c[b>>2]|0)|0;a=c[b>>2]|0;b=c[e>>2]|0;if((c[e>>
2]|0)>0){c[d>>2]=a+(1<<b-1)>>c[e>>2];g=c[d>>2]|0;i=f;return g|0}else{c[d
x3e;>2]=a<<0-b;g=c[d>>2]|0;i=f;return g|0}return 0}function ne(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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>>2]=a;c[f>>2]=b;c[g
>>2]=d;c[h>>2]=e;c[k>>2]=cc(c[m>>2]|0,c[g>>2]|0,j)|0;if(!((c[j>>2]|0
)==0&(c[f>>2]|0)!=0)){d=c[j>>2]|0;m=c[h>>2]|0;c[m>>2]=d;m=c[k>>2]|0;i=l;return
m|0}Ss(c[k>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;d=c[j>>2]|0;m=c[h>>2]|0;c[m>>
;2]=d;m=c[k>>2]|0;i=l;return m|0}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;j=i;i=i+16|0;e=j+12|0;f=
j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[f>>2]|0)a=(cs(c[f>>2]|0)|
0)+1|0;else a=0;c[h>>2]=a;h=ne(c[e>>2]|0,c[f>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=j;
return h|0}function pe(b,d,e){b=b|0;d=d|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]=b;c[g>
;>2]=d;c[h>>2]=e;while(1){if((c[h>>2]|0)>>>0<=1)break;if(!(a[c[g>>2]>
;>0]|0))break;e=c[g>>2]|0;c[g>>2]=e+1;e=a[e>>0]|0;d=c[f>>2]|0;c[f>>2]=d+1
;a[d>>0]=e;c[h>>2]=(c[h>>2]|0)+-1}a[c[f>>2]>>0]=0;i=j;return (a[c[g>>
;2]>>0]|0)!=0|0}function qe(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]=c[f>>2];if(re(c[e>>2]|0)|0){c[b>>2]=0;f=c[b>>2]|0;i=d;return f|0}else{c[b>
;>2]=153;f=c[b>>2]|0;i=d;return f|0}return 0}function re(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16
|0;d=h+12|0;f=h+8|0;g=h+4|0;e=h;c[d>>2]=a;c[g>>2]=c[(c[d>>2]|0)+8>>2];c[f>>2]=
c[(c[d>>2]|0)+40>>2];do if(!(c[(c[d>>2]|0)+40>>2]|0)){c[f>>2]=bc(c[g>>
;2]|0,608,e)|0;if((c[e>>2]|0)==0?(c[e>>2]=se(c[f>>2]|0,c[g>>2]|0)|0,(c[e>>2]|0
)==0):0){c[(c[d>>2]|0)+40>>2]=c[f>>2];break}c[b>>2]=0;g=c[b>>2]|0;i=h;return g
|0}while(0);c[b>>2]=c[(c[d>>2]|0)+40>>2];g=c[b>>2]|0;i=h;return g|0}function se(a,d){a=a
|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;f=h+8|0;j=h+4|0;g=h;c[f>>2]=a;c[j>>2]=d;c[(c[f>
x3e;2]|0)+8>>2]=c[j>>2];c[(c[f>>2]|0)+432>>2]=32;a=hc(c[j>>2]|0,16,0,c[(c[f>
;>2]|0)+432>>2]|0,0,g)|0;c[(c[f>>2]|0)+436>>2]=a;a=c[f>>2]|0;if(c[g>>2]|0
){te(a)|0;c[e>>2]=c[g>>2];j=c[e>>2]|0;i=h;return j|0}else{b[a+440>>1]=0;b[(c[f>>
;2]|0)+442>>1]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>>2]|0)+388>>2]=0;c[(c[f>
x3e;2]|0)+24>>2]=0;c[(c[f>>2]|0)+392>>2]=0;c[c[f>>2]>>2]=0;c[(c[f>>2
]|0)+4>>2]=0;c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}return 0}function te(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;c[f>>2]=c[(c[e>>2]|0)+8>>2];b[(c[e>>2]|0)+440
>>1]=0;b[(c[e>>2]|0)+442>>1]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);
c[(c[e>>2]|0)+24>>2]=0;c[(c[e>>2]|0)+20>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2
]|0)+436>>2]|0);c[(c[e>>2]|0)+436>>2]=0;c[(c[e>>2]|0)+432>>2]=0;c[(c[e>
x3e;2]|0)+428>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+392>>2]|0);c[(c[e>>2]|0)+392>
;>2]=0;c[(c[e>>2]|0)+388>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[c[e>>2]>>
;2]=0;Fb(c[f>>2]|0,c[e>>2]|0);c[e>>2]=0;i=d;return 0}function ue(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];if(!(c[(c[b>>2]|0)+40>>2]|0)){i=d;return
}te(c[(c[b>>2]|0)+40>>2]|0)|0;c[(c[b>>2]|0)+40>>2]=0;i=d;return}function ve(a,b){a=a|0;b
=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=qc(380,c[f>>2]|0)|0;if(c[g>>2]|0){c[d>>2]=c[g>>2];b=c[d>
x3e;2]|0;i=k;return b|0}if(!(c[e>>2]|0)){c[d>>2]=0;b=c[d>>2]|0;i=k;return b|0}c[j>>2]=Wc
(c[(c[e>>2]|0)+4>>2]|0,11340)|0;if(c[j>>2]|0?(c[h>>2]=c[(c[c[j>>2]>>
2]|0)+20>>2],c[h>>2]|0):0){c[d>>2]=Ya[c[(c[h>>2]|0)+16>>2]&127](c[e>
x3e;2]|0,c[f>>2]|0)|0;b=c[d>>2]|0;i=k;return b|0}c[d>>2]=0;b=c[d>>2]|0;i=k;return b|0}function
we(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;q=i;i=i+48|0;f=q+32|0;g=q+28|0;h=q+24|0;k=q+20|0;j=
q+16|0;o=q+12|0;l=q+8|0;n=q+4|0;m=q;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=0;c[n>>
;2]=c[(c[f>>2]|0)+100>>2];a[(c[f>>2]|0)+708>>0]=0;if((c[(c[f>>2]|0)+712>
x3e;2]|0)==0?(d=xe(c[f>>2]|0,0)|0,c[k>>2]=d,d|0):0){p=c[k>>2]|0;i=q;return p|0}c[j>>2]=c
[(c[f>>2]|0)+712>>2];c[o>>2]=c[(c[j>>2]|0)+8>>2];if((c[g>>2]|0)!=(c[
c[o>>2]>>2]|0)){c[k>>2]=6;p=c[k>>2]|0;i=q;return p|0}c[l>>2]=0;while(1){if((c[
l>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;if((c[(c[h>>2]|0)+(c[l>
;>2]<<2)>>2]|0)<-65536){p=9;break}if((c[(c[h>>2]|0)+(c[l>>2]<<2)>
;>2]|0)>65536){p=9;break}c[l>>2]=(c[l>>2]|0)+1}if((p|0)==9){c[k>>2]=6;p=c[k>>2
]|0;i=q;return p|0}if((c[(c[j>>2]|0)+36>>2]|0)==0?(p=ye(c[f>>2]|0)|0,c[k>>2]=p,p|0):0){p
=c[k>>2]|0;i=q;return p|0}a:do if(!(c[(c[j>>2]|0)+4>>2]|0)){p=hc(c[n>>2]|0,4,0,c[g>
x3e;2]|0,0,k)|0;c[(c[j>>2]|0)+4>>2]=p;if(c[k>>2]|0){p=c[k>>2]|0;i=q;return p|0}else{c[m
x3e;>2]=1;break}}else{c[m>>2]=0;c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c
[g>>2]|0)>>>0)break a;if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[l>>2]<<2
)>>2]|0)!=(c[(c[h>>2]|0)+(c[l>>2]<<2)>>2]|0))break;c[l>>2]=(c[l>
;>2]|0)+1}c[m>>2]=2}while(0);c[c[j>>2]>>2]=c[g>>2];Ss(c[(c[j>>2]|0)+4>
;>2]|0,c[h>>2]|0,c[g>>2]<<2|0)|0;a[(c[f>>2]|0)+708>>0]=1;if(!(c[(c[f>
;>2]|0)+672>>2]|0)){p=c[k>>2]|0;i=q;return p|0}switch(c[m>>2]|0){case 2:{Fb(c[n>>2]|
0,c[(c[f>>2]|0)+672>>2]|0);c[(c[f>>2]|0)+672>>2]=0;c[(c[f>>2]|0)+672>>
;2]=0;ze(c[f>>2]|0,c[(c[f>>2]|0)+104>>2]|0)|0;p=c[k>>2]|0;i=q;return p|0}case 1:{Ae(c[f
x3e;>2]|0,c[(c[f>>2]|0)+104>>2]|0)|0;p=c[k>>2]|0;i=q;return p|0}default:{p=c[k>>2]|
0;i=q;return p|0}}return 0}function xe(b,d){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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,
x=0,y=0;y=i;i=i+96|0;k=y+92|0;s=y+88|0;r=y+84|0;o=y+80|0;f=y+76|0;u=y+72|0;h=y+68|0;m=y+64|0;n=y+60|0;v=y+56|0;p=y+52|0;x=y+48|0
;t=y+44|0;q=y+40|0;l=y+24|0;g=y+4|0;w=y;c[k>>2]=b;c[s>>2]=d;c[r>>2]=c[(c[k>>2]|0)+104>
;>2];c[o>>2]=c[(c[k>>2]|0)+100>>2];c[u>>2]=0;a:do if(!(c[(c[k>>2]|0)+712
x3e;>2]|0)){d=Wa[c[(c[k>>2]|0)+508>>2]&31](c[k>>2]|0,1735811442,c[r>>2]|0,f)|0
;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0}d=Wa[c[(c[k>>2]|0)+508>>2]&31](c[k>
;>2]|0,1719034226,c[r>>2]|0,f)|0;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0}c[h>>
2]=Mc(c[r>>2]|0)|0;d=le(c[r>>2]|0,5428,l)|0;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0
}if(((((((c[l>>2]|0)==65536?(e[l+6>>1]|0|0)==2:0)?(e[l+10>>1]|0|0)==20:0)?(e[l+8>>1]|0|0
)<=16382:0)?(e[l+14>>1]|0|0)==(4+((e[l+8>>1]|0)<<2)|0):0)?(e[l+12>>1]|0|0)<=32511
:0)?(d=(e[l+4>>1]|0)+((e[l+8>>1]|0)*20|0)+(_(e[l+12>>1]|0,e[l+14>>1]|0)|0)|0,d>>
;>0<=(c[f>>2]|0)>>>0):0){f=bc(c[o>>2]|0,40,u)|0;c[(c[k>>2]|0)+712>
x3e;2]=f;if(c[u>>2]|0){x=c[u>>2]|0;i=y;return x|0}f=20+((e[l+8>>1]|0)*24|0)+((e[l+12>>1]|
0)<<3)+((_(e[l+12>>1]|0,e[l+8>>1]|0)|0)<<2)|0;c[(c[(c[k>>2]|0)+712>>
2]|0)+12>>2]=f+((e[l+8>>1]|0)*5|0);c[v>>2]=bc(c[o>>2]|0,c[(c[(c[k>>2]|0)+712
x3e;>2]|0)+12>>2]|0,u)|0;if(c[u>>2]|0){x=c[u>>2]|0;i=y;return x|0}c[(c[(c[k>>2]|0)+
712>>2]|0)+8>>2]=c[v>>2];c[c[v>>2]>>2]=e[l+8>>1];c[(c[v>>2
]|0)+4>>2]=-1;c[(c[v>>2]|0)+8>>2]=e[l+12>>1];c[(c[v>>2]|0)+12>>2]=(c
[v>>2]|0)+20;c[(c[v>>2]|0)+16>>2]=(c[(c[v>>2]|0)+12>>2]|0)+((e[l+8>>
1]|0)*24|0);c[p>>2]=(c[(c[v>>2]|0)+16>>2]|0)+((e[l+12>>1]|0)<<3);c[m>>
;2]=0;while(1){b=c[p>>2]|0;if((c[m>>2]|0)>=(e[l+12>>1]|0|0))break;c[(c[(c[v>>2]|0)+
16>>2]|0)+(c[m>>2]<<3)>>2]=b;c[p>>2]=(c[p>>2]|0)+((e[l+8>>
1]|0)<<2);c[m>>2]=(c[m>>2]|0)+1}c[x>>2]=b;c[m>>2]=0;while(1){if((c[m>>
;2]|0)>=(e[l+8>>1]|0|0))break;c[(c[(c[v>>2]|0)+12>>2]|0)+((c[m>>2]|0)*24|0)>
x3e;2]=c[x>>2];c[x>>2]=(c[x>>2]|0)+5;c[m>>2]=(c[m>>2]|0)+1}h=Kc(c[r>>
;2]|0,(c[h>>2]|0)+(e[l+4>>1]|0)|0)|0;c[u>>2]=h;if(h|0){x=c[u>>2]|0;i=y;return x|0}c[t>
;>2]=c[(c[v>>2]|0)+12>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(e[l+8>>
;1]|0|0))break;h=le(c[r>>2]|0,5464,g)|0;c[u>>2]=h;if(h|0){j=50;break}c[(c[t>>2]|0)+16>>2
]=c[g>>2];c[(c[t>>2]|0)+4>>2]=c[g+4>>2];c[(c[t>>2]|0)+8>>2]=c[g+8>
;>2];c[(c[t>>2]|0)+12>>2]=c[g+12>>2];c[(c[t>>2]|0)+20>>2]=e[g+18>>
;1];a[c[c[t>>2]>>2]>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>24;a[(c[c[t
x3e;>2]>>2]|0)+1>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>16;a[(c[c[t>>
;2]>>2]|0)+2>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>8;a[(c[c[t>>2]>
;>2]|0)+3>>0]=c[(c[t>>2]|0)+16>>2];a[(c[c[t>>2]>>2]|0)+4>>0]=0;
c[t>>2]=(c[t>>2]|0)+24;c[m>>2]=(c[m>>2]|0)+1}if((j|0)==50){x=c[u>>2]|0;i=y;return
x|0}c[q>>2]=c[(c[v>>2]|0)+16>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(e[l
+12>>1]|0|0))break a;j=ee(c[r>>2]|0,4+((e[l+8>>1]|0)<<2)|0)|0;c[u>>2]=j;if(j|0
)break;j=(ie(c[r>>2]|0)|0)&65535;c[(c[q>>2]|0)+4>>2]=j;ie(c[r>>2]|0)|0;c[n>>
;2]=0;while(1){b=c[r>>2]|0;if((c[n>>2]|0)>=(e[l+8>>1]|0|0))break;j=je(b)|0;c[(c[c[q>>
;2]>>2]|0)+(c[n>>2]<<2)>>2]=j;c[n>>2]=(c[n>>2]|0)+1}ge(b);c[m>
x3e;2]=(c[m>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+8}x=c[u>>2]|0;i=y;return x|0}c[u>>2]=
8;x=c[u>>2]|0;i=y;return x|0}while(0);if(!(c[s>>2]|0)){x=c[u>>2]|0;i=y;return x|0}c[v>>2
]=bc(c[o>>2]|0,c[(c[(c[k>>2]|0)+712>>2]|0)+12>>2]|0,u)|0;if(c[u>>2]|0){x=c[u
x3e;>2]|0;i=y;return x|0}Ss(c[v>>2]|0,c[(c[(c[k>>2]|0)+712>>2]|0)+8>>2]|0,c[(c[(c[k
>>2]|0)+712>>2]|0)+12>>2]|0)|0;c[(c[v>>2]|0)+12>>2]=(c[v>>2]|0)+20;c
[(c[v>>2]|0)+16>>2]=(c[(c[v>>2]|0)+12>>2]|0)+((c[c[v>>2]>>2]|0)*24|0
);c[p>>2]=(c[(c[v>>2]|0)+16>>2]|0)+(c[(c[v>>2]|0)+8>>2]<<3);c[w>
;>2]=0;while(1){if((c[w>>2]|0)>>>0>=(c[(c[v>>2]|0)+8>>2]|0)>>
x3e;0)break;c[(c[(c[v>>2]|0)+16>>2]|0)+(c[w>>2]<<3)>>2]=c[p>>2];c[p
x3e;>2]=(c[p>>2]|0)+(c[c[v>>2]>>2]<<2);c[w>>2]=(c[w>>2]|0)+1}c[
t>>2]=c[(c[v>>2]|0)+12>>2];c[x>>2]=c[p>>2];c[w>>2]=0;while(1){if((c[
w>>2]|0)>>>0>=(c[c[v>>2]>>2]|0)>>>0)break;c[c[t>>2]
x3e;>2]=c[x>>2];b=c[t>>2]|0;do if((c[(c[t>>2]|0)+16>>2]|0)!=2003265652){d=c[t>
x3e;2]|0;if((c[b+16>>2]|0)==2003072104){c[d>>2]=10521;break}b=c[t>>2]|0;if((c[d+16>>2]|0
)==1869640570){c[b>>2]=10527;break}if((c[b+16>>2]|0)==1936486004)c[c[t>>2]>>2]=10539}else
c[b>>2]=12384;while(0);c[x>>2]=(c[x>>2]|0)+5;c[t>>2]=(c[t>>2]|0)+24;c[w>
x3e;2]=(c[w>>2]|0)+1}c[c[s>>2]>>2]=c[v>>2];x=c[u>>2]|0;i=y;return x|0}function
ye(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+64|0;b=o+56|0;n=o+52|0;l=o+48|0;d=o+44|0;f=o+40|0;j=o+36|0;
k=o+32|0;h=o+24|0;m=o+20|0;g=o;c[b>>2]=a;c[n>>2]=c[(c[b>>2]|0)+104>>2];c[l>>2]=
c[(c[n>>2]|0)+28>>2];c[d>>2]=c[(c[b>>2]|0)+712>>2];b=Wa[c[(c[b>>2]|0
)+508>>2]&31](c[b>>2]|0,1735811442,c[n>>2]|0,o+28|0)|0;c[f>>2]=b;if(b|0){n=c[f>
;>2]|0;i=o;return n|0}c[h>>2]=Mc(c[n>>2]|0)|0;b=le(c[n>>2]|0,5496,g)|0;c[f>>2]=b;if
(b|0){n=c[f>>2]|0;i=o;return n|0}c[(c[d>>2]|0)+24>>2]=e[g+6>>1];c[(c[d>>2]|0)+
32>>2]=e[g+12>>1];c[m>>2]=(c[h>>2]|0)+(c[g+16>>2]|0);if((c[g>>2]|0)==
65536?(e[g+4>>1]|0|0)==(c[c[(c[d>>2]|0)+8>>2]>>2]&65535|0):0){b=hc(c[l>>2
]|0,4,0,(c[(c[d>>2]|0)+32>>2]|0)+1|0,0,f)|0;c[(c[d>>2]|0)+36>>2]=b;if(c[f>>2]|
0){n=c[f>>2]|0;i=o;return n|0}a=c[n>>2]|0;b=(c[(c[d>>2]|0)+32>>2]|0)+1|0;if((e[g+14>
;>1]|0)&1|0){b=ee(a,b<<2)|0;c[f>>2]=b;if(b|0){n=c[f>>2]|0;i=o;return n|0}c[j>>
2]=0;while(1){if((c[j>>2]|0)>>>0>(c[(c[d>>2]|0)+32>>2]|0)>>>0)break
;b=c[m>>2]|0;b=b+(je(c[n>>2]|0)|0)|0;c[(c[(c[d>>2]|0)+36>>2]|0)+(c[j>>2]<
x3c;2)>>2]=b;c[j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|0)}else{b=ee(a,b<<1)|0;c[f>
x3e;2]=b;if(b|0){n=c[f>>2]|0;i=o;return n|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0
x3e;(c[(c[d>>2]|0)+32>>2]|0)>>>0)break;b=c[m>>2]|0;b=b+(((ie(c[n>>2]|0)|0
)&65535)<<1)|0;c[(c[(c[d>>2]|0)+36>>2]|0)+(c[j>>2]<<2)>>2]=b;c[
j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|0)}if(!(c[(c[d>>2]|0)+24>>2]|0)){n=c[f>>
;2]|0;i=o;return n|0}m=hc(c[l>>2]|0,4,0,_(e[g+4>>1]|0,c[(c[d>>2]|0)+24>>2]|0)|0,0,f)|0;c
[(c[d>>2]|0)+28>>2]=m;if(c[f>>2]|0){n=c[f>>2]|0;i=o;return n|0}m=Kc(c[n>>2]|0,(
c[h>>2]|0)+(c[g+8>>2]|0)|0)|0;c[f>>2]=m;if(m|0){n=c[f>>2]|0;i=o;return n|0}m=ee(c[n>
;>2]|0,(_(c[(c[d>>2]|0)+24>>2]|0,e[g+4>>1]|0)|0)<<1)|0;c[f>>2]=m;if(m|0){
n=c[f>>2]|0;i=o;return n|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[d>
;>2]|0)+24>>2]|0)>>>0)break;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>
;0>=(e[g+4>>1]|0)>>>0)break;l=(ie(c[n>>2]|0)|0)<<16>>16<<2
;m=_(c[j>>2]|0,e[g+4>>1]|0)|0;c[(c[(c[d>>2]|0)+28>>2]|0)+(m+(c[k>>2]|0)<
x3c;2)>>2]=l;c[k>>2]=(c[k>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|
0);n=c[f>>2]|0;i=o;return n|0}c[f>>2]=8;n=c[f>>2]|0;i=o;return n|0}function ze(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;n=i;i=i+32|0;h=n+24|0;j=n+20|0;l=n+16|0;f=n+12|0;g=n+8|0;k=n+4|0;m=n;c[h>>2]=d;c[j>
;>2]=e;c[f>>2]=c[(c[j>>2]|0)+28>>2];c[l>>2]=Wa[c[(c[h>>2]|0)+508>>
;2]&31](c[h>>2]|0,1668707360,c[j>>2]|0,g)|0;if(c[l>>2]|0){c[(c[h>>2]|0)+668>
x3e;2]=0;c[(c[h>>2]|0)+672>>2]=0;c[l>>2]=0;m=c[l>>2]|0;i=n;return m|0}c[(c[h>>
2]|0)+668>>2]=((c[g>>2]|0)>>>0)/2|0;g=hc(c[f>>2]|0,2,0,c[(c[h>>2]|0)+668
x3e;>2]|0,0,l)|0;c[(c[h>>2]|0)+672>>2]=g;if(c[l>>2]|0){m=c[l>>2]|0;i=n;return m|0}g
=ee(c[j>>2]|0,c[(c[h>>2]|0)+668>>2]<<1)|0;c[l>>2]=g;if(g|0){m=c[l>>2
]|0;i=n;return m|0}c[k>>2]=c[(c[h>>2]|0)+672>>2];c[m>>2]=(c[k>>2]|0)+(c[(c[h
x3e;>2]|0)+668>>2]<<1);while(1){d=c[j>>2]|0;if((c[k>>2]|0)>>>0>=(
c[m>>2]|0)>>>0)break;g=ie(d)|0;b[c[k>>2]>>1]=g;c[k>>2]=(c[k>>2]|
0)+2}ge(d);if(!(a[(c[h>>2]|0)+708>>0]|0)){m=c[l>>2]|0;i=n;return m|0}c[l>>2]=Ae(c[h>
;>2]|0,c[j>>2]|0)|0;m=c[l>>2]|0;i=n;return m|0}function Ae(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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=i;i=i+96|0;h=C+84|0;j=C+80|0;n=C+76|0;u=C+72|0;g=C+68|0;f
=C+64|0;y=C+60|0;v=C+56|0;o=C+52|0;p=C+48|0;s=C+44|0;B=C+40|0;r=C+36|0;q=C+32|0;l=C+28|0;x=C+24|0;t=C+20|0;m=C+16|0;z=C+12|0;A=C
+8|0;k=C+4|0;w=C;c[h>>2]=a;c[j>>2]=d;c[u>>2]=c[(c[j>>2]|0)+28>>2];c[B>>
;2]=0;c[r>>2]=0;c[q>>2]=0;c[l>>2]=c[(c[h>>2]|0)+712>>2];if(!(c[l>>2]|
0)){c[n>>2]=0;z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>
;>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>
;2]|0;i=C;return B|0}if(!(c[(c[h>>2]|0)+672>>2]|0)){c[n>>2]=0;z=c[u>>2]|0;A=c[B>>
;2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;
B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}c[n>>2]=Wa[c[(c[h>>2]|
0)+508>>2]&31](c[h>>2]|0,1668702578,c[j>>2]|0,f)|0;if(c[n>>2]|0){c[n>>2]=
0;z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[
r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}f
=ee(c[j>>2]|0,c[f>>2]|0)|0;c[n>>2]=f;if(f|0){c[n>>2]=0;z=c[u>>2]|0;A=c[B>
x3e;2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|
0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}c[g>>2]=(c[(c[j>>2]|
0)+32>>2]|0)-(c[c[j>>2]>>2]|0);a:do if((je(c[j>>2]|0)|0)==65536){c[B>>2]=hc(c[
u>>2]|0,4,0,c[c[l>>2]>>2]|0,0,n)|0;if(((c[n>>2]|0)==0?(c[r>>2]=hc(c[u>>
;2]|0,4,0,c[c[l>>2]>>2]|0,0,n)|0,(c[n>>2]|0)==0):0)?(c[q>>2]=hc(c[u>>2]|0,4,0,
c[c[l>>2]>>2]|0,0,n)|0,(c[n>>2]|0)==0):0){c[y>>2]=(ie(c[j>>2]|0)|0)&65535
;g=c[g>>2]|0;c[v>>2]=g+((ie(c[j>>2]|0)|0)&65535);c[p>>2]=0;while(1){if((c[p>
x3e;2]|0)>>>0>=(c[y>>2]&4095)>>>0)break a;c[z>>2]=(ie(c[j>>
;2]|0)|0)&65535;c[A>>2]=(ie(c[j>>2]|0)|0)&65535;do if(c[A>>2]&32768|0){c[s>>
;2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[c[l>>2]>>2]|0)>>>0)break;
g=(ie(c[j>>2]|0)|0)<<16>>16<<2;c[(c[B>>2]|0)+(c[s>>2]<<2)
x3e;>2]=g;c[s>>2]=(c[s>>2]|0)+1}b:do if(c[A>>2]&16384|0){c[s>>2]=0;while(1){if
((c[s>>2]|0)>>>0>=(c[c[l>>2]>>2]|0)>>>0)break;g=(ie(c[j>
x3e;2]|0)|0)<<16>>16<<2;c[(c[r>>2]|0)+(c[s>>2]<<2)>>2]=g;c
[s>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[c[l
x3e;>2]>>2]|0)>>>0)break b;g=(ie(c[j>>2]|0)|0)<<16>>16<<2;
c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]=g;c[s>>2]=(c[s>>2]|0)+1}}while(0);c[k
>>2]=Be(c[l>>2]|0,c[A>>2]&65535,c[B>>2]|0,c[r>>2]|0,c[q>>2]|0)|
0;if(c[k>>2]|0?c[A>>2]&8192|0:0){c[o>>2]=(c[(c[j>>2]|0)+32>>2]|0)-(c[c[j
x3e;>2]>>2]|0);c[(c[j>>2]|0)+32>>2]=(c[c[j>>2]>>2]|0)+(c[v>>2]|
0);c[t>>2]=Ce(c[j>>2]|0,x)|0;if(!(c[x>>2]|0))a=c[(c[h>>2]|0)+668>>2]|0;else a=
c[x>>2]|0;c[m>>2]=De(c[j>>2]|0,a)|0;c:do if(!((c[t>>2]|0)==0|(c[m>>2]|0)==0)){
g=(c[t>>2]|0)==(-1|0);c[s>>2]=0;if(g)while(1){if((c[s>>2]|0)>>>0>=(c[(c[h>
;>2]|0)+668>>2]|0)>>>0)break c;g=b[(c[(c[h>>2]|0)+672>>2]|0)+(c[s>>2
]<<1)>>1]|0;g=g+(Mb(b[(c[m>>2]|0)+(c[s>>2]<<1)>>1]|0,c[k>>
2]|0)|0)&65535;b[(c[(c[h>>2]|0)+672>>2]|0)+(c[s>>2]<<1)>>1]=g;c[s>
x3e;2]=(c[s>>2]|0)+1}else while(1){if((c[s>>2]|0)>>>0>=(c[x>>2]|0)>>
x3e;0)break c;c[w>>2]=e[(c[t>>2]|0)+(c[s>>2]<<1)>>1];g=b[(c[(c[h>>2]|
0)+672>>2]|0)+(c[w>>2]<<1)>>1]|0;g=g+(Mb(b[(c[m>>2]|0)+(c[s>>2]<
;<1)>>1]|0,c[k>>2]|0)|0)&65535;b[(c[(c[h>>2]|0)+672>>2]|0)+(c[w>>2]
x3c;<1)>>1]=g;c[s>>2]=(c[s>>2]|0)+1}}while(0);if((c[t>>2]|0)!=(-1|0)){Fb(c[u>
x3e;2]|0,c[t>>2]|0);c[t>>2]=0}Fb(c[u>>2]|0,c[m>>2]|0);c[m>>2]=0;c[v>>
;2]=(c[v>>2]|0)+(c[z>>2]|0);c[(c[j>>2]|0)+32>>2]=(c[c[j>>2]>>2]|0)+(
c[o>>2]|0);break}c[v>>2]=(c[v>>2]|0)+(c[z>>2]|0)}else{d:do if(c[A>>2]&16384
|0){c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=c[c[l>>2]>>2]<<
1>>>0)break d;ie(c[j>>2]|0)|0;c[s>>2]=(c[s>>2]|0)+1}}while(0);c[v>>2]=(c[
v>>2]|0)+(c[z>>2]|0)}while(0);c[p>>2]=(c[p>>2]|0)+1}}}else c[n>>2]=0;while(0);
ge(c[j>>2]|0);z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>
;>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>
;2]|0;i=C;return B|0}function Be(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;r=i;i=i+32|0;j
=r+24|0;k=r+28|0;l=r+20|0;m=r+16|0;n=r+12|0;o=r+8|0;q=r+4|0;p=r;c[j>>2]=a;b[k>>1]=d;c[l>>2]=f;c[m
x3e;>2]=g;c[n>>2]=h;c[q>>2]=65536;c[o>>2]=0;a:while(1){if((c[o>>2]|0)>>
x3e;0>=(c[c[j>>2]>>2]|0)>>>0){a=19;break}do if(c[(c[l>>2]|0)+(c[o>>2
]<<2)>>2]|0){if(!(c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>
2]|0)){a=9;break a}if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)<0?(c
[(c[l>>2]|0)+(c[o>>2]<<2)>>2]|0)>0:0){a=9;break a}if((c[(c[(c[j>>2]|0)+4
x3e;>2]|0)+(c[o>>2]<<2)>>2]|0)>0?(c[(c[l>>2]|0)+(c[o>>2]<<
2)>>2]|0)<0:0){a=9;break a}if(!((e[k>>1]|0)&16384)){f=c[(c[(c[j>>2]|0)+4>>2]|0
)+(c[o>>2]<<2)>>2]|0;c[q>>2]=xb(c[q>>2]|0,(c[(c[(c[j>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<2)>>2]|0)>0?f:0-f|0,65536)|0;break}if((c[(c[(c[j>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<2)>>2]|0)<=(c[(c[m>>2]|0)+(c[o>>2]<<2)>
;>2]|0)){a=14;break a}if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)
x3e;=(c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]|0)){a=14;break a}a=c[o>>2]|0;if((c[(c[(c[
j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)<(c[(c[l>>2]|0)+(c[o>
x3e;2]<<2)>>2]|0)){c[p>>2]=xb((c[(c[(c[j>>2]|0)+4>>2]|0)+(a<<2)>
;>2]|0)-(c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]|0)|0,65536,(c[(c[l>>2]|0)+(c[o>
;>2]<<2)>>2]|0)-(c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]|0)|0)|0;c[q>
;>2]=xb(c[q>>2]|0,c[p>>2]|0,65536)|0;break}else{c[p>>2]=xb((c[(c[n>>2]|0)+(a<
x3c;2)>>2]|0)-(c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)|0,65536
,(c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[l>>2]|0)+(c[o>>2]<<
;2)>>2]|0)|0)|0;c[q>>2]=xb(c[q>>2]|0,c[p>>2]|0,65536)|0;break}}while(0);c[o>>2
]=(c[o>>2]|0)+1}if((a|0)==9){c[q>>2]=0;q=c[q>>2]|0;i=r;return q|0}else if((a|0)==14){c[q>>
;2]=0;q=c[q>>2]|0;i=r;return q|0}else if((a|0)==19){q=c[q>>2]|0;i=r;return q|0}return 0}function Ce(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;p=i;i=i+48|0;e=p+40|0;f=p+36|0;q=p+32|0;n=p+28|0;m=p+24|0;o=p+20|0;
j=p+16|0;k=p+12|0;h=p+8|0;l=p+4|0;g=p;c[f>>2]=a;c[q>>2]=d;c[l>>2]=c[(c[f>>2]|0)+28>
x3e;2];c[g>>2]=0;c[g>>2]=c[g>>2];a=(he(c[f>>2]|0)|0)&255;c[m>>2]=a;c[c[q
x3e;>2]>>2]=a;if(!(c[m>>2]|0)){c[e>>2]=-1;q=c[e>>2]|0;i=p;return q|0}if(c[m>
x3e;2]&128|0){q=(he(c[f>>2]|0)|0)&255;c[m>>2]=q|(c[m>>2]&127)<<8}c[n>
;>2]=hc(c[l>>2]|0,2,0,c[m>>2]|0,0,g)|0;if(c[g>>2]|0){c[e>>2]=0;q=c[e>>2]|
0;i=p;return q|0}c[j>>2]=0;a:while(1){if((c[j>>2]|0)>=(c[m>>2]|0))break;c[o>>2]=(he
(c[f>>2]|0)|0)&255;if(c[o>>2]&128|0){c[o>>2]=c[o>>2]&127;q=ie(c[f>
x3e;2]|0)|0;a=c[j>>2]|0;c[j>>2]=a+1;b[(c[n>>2]|0)+(a<<1)>>1]=q;c[h>>
2]=q&65535;if((c[o>>2]|0)<1)break;if(((c[j>>2]|0)+(c[o>>2]|0)|0)>=(c[m>>2
]|0))break;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[o>>2]|0))continue a;a=(ie(c[f>>2]|
0)|0)&65535;a=(c[h>>2]|0)+a|0;c[h>>2]=a;q=c[j>>2]|0;c[j>>2]=q+1;b[(c[n>>2
]|0)+(q<<1)>>1]=a;c[k>>2]=(c[k>>2]|0)+1}}else{q=(he(c[f>>2]|0)|0)&255;a=c
[j>>2]|0;c[j>>2]=a+1;b[(c[n>>2]|0)+(a<<1)>>1]=q;c[h>>2]=q&65535
;if((c[o>>2]|0)<1)break;if(((c[j>>2]|0)+(c[o>>2]|0)|0)>=(c[m>>2]|0))break;c[k
x3e;>2]=0;while(1){if((c[k>>2]|0)>=(c[o>>2]|0))continue a;a=(he(c[f>>2]|0)|0)&255;a
=(c[h>>2]|0)+a|0;c[h>>2]=a;q=c[j>>2]|0;c[j>>2]=q+1;b[(c[n>>2]|0)+(q<<
;1)>>1]=a;c[k>>2]=(c[k>>2]|0)+1}}}c[e>>2]=c[n>>2];q=c[e>>2]|0;i=p;return
q|0}function De(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;n=i;i=i+48|0;k=n+32|0;e=n+28|0;f=n+24|0;l=n+20|0;j
=n+16|0;g=n+12|0;h=n+8|0;m=n+4|0;o=n;c[e>>2]=a;c[f>>2]=d;c[l>>2]=0;c[m>>2]=c[(c[e>
x3e;2]|0)+28>>2];c[o>>2]=0;c[o>>2]=c[o>>2];c[l>>2]=hc(c[m>>2]|0,2,0,
c[f>>2]|0,0,o)|0;if(c[o>>2]|0){c[k>>2]=0;o=c[k>>2]|0;i=n;return o|0}c[g>>2]=0;
while(1){if((c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0){e=19;break}c[j>>2
]=(he(c[e>>2]|0)|0)&255;a:do if(!(c[j>>2]&128|0)){o=(c[j>>2]&64|0)!=0;c[h>>
;2]=0;if(o)while(1){if((c[h>>2]|0)>>>0>(c[j>>2]&63)>>>0)break a;if((
c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break a;a=ie(c[e>>2]|0)|0;o=c[g
>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=a;c[h>>2]=(c[h>>
;2]|0)+1}else while(1){if((c[h>>2]|0)>>>0>(c[j>>2]&63)>>>0)break a;if
((c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break a;a=(he(c[e>>2]|0)|0)
x3c;<24>>24;o=c[g>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=a;
c[h>>2]=(c[h>>2]|0)+1}}else{c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>(c
[j>>2]&63)>>>0)break a;if((c[g>>2]|0)>>>0>=(c[f>>2]|0)>
;>>0)break a;o=c[g>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=0;c[h
x3e;>2]=(c[h>>2]|0)+1}}while(0);if((c[h>>2]|0)>>>0<=(c[j>>2]&63)>
;>>0){e=18;break}}if((e|0)==18){Fb(c[m>>2]|0,c[l>>2]|0);c[l>>2]=0;c[k>>2]=0;o=
c[k>>2]|0;i=n;return o|0}else if((e|0)==19){c[k>>2]=c[l>>2];o=c[k>>2]|0;i=n;return o|0}return
0}function Ee(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,t=0,u=0;u=i;i=i+48|0;g=u+44|0;h=u+40
|0;j=u+36|0;n=u+32|0;s=u+28|0;m=u+24|0;r=u+20|0;o=u+16|0;p=u+12|0;k=u+8|0;l=u+4|0;q=u;c[g>>2]=b;c[h>>2]=d;c[
j>>2]=f;c[n>>2]=0;c[s>>2]=0;c[q>>2]=c[(c[g>>2]|0)+100>>2];if((c[(c[g
>>2]|0)+712>>2]|0)==0?(d=xe(c[g>>2]|0,0)|0,c[n>>2]=d,d|0):0){r=c[q>>2]|0;t=c[s
>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}c[m>>2]=c[(c[g>>2]|0)+712
x3e;>2];c[r>>2]=c[(c[m>>2]|0)+8>>2];if((c[h>>2]|0)!=(c[c[r>>2]>>
;2]|0)){c[n>>2]=6;r=c[q>>2]|0;t=c[s>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return
t|0}c[s>>2]=hc(c[q>>2]|0,4,0,c[c[r>>2]>>2]|0,0,n)|0;if(c[n>>2]|0){r=c[q>
x3e;2]|0;t=c[s>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}c[k>>2]=c[(c[r>
x3e;2]|0)+12>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[c[r>>2]
x3e;>2]|0)>>>0)break;if((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|0)>(c[(
c[k>>2]|0)+12>>2]|0)){t=10;break}if((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|
0)<(c[(c[k>>2]|0)+4>>2]|0)){t=10;break}do if((c[(c[j>>2]|0)+(c[o>>2]<<2)
x3e;>2]|0)>=(c[(c[k>>2]|0)+8>>2]|0)){f=c[o>>2]|0;if((c[(c[k>>2]|0)+12>>
;2]|0)==(c[(c[k>>2]|0)+8>>2]|0)){c[(c[s>>2]|0)+(f<<2)>>2]=0;break}else{d=xb((c
[(c[j>>2]|0)+(f<<2)>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0,65536,(c[(c[k>>
2]|0)+12>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0)|0;c[(c[s>>2]|0)+(c[o>>2]<<
;2)>>2]=d;break}}else{d=0-(xb((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[k>
x3e;2]|0)+8>>2]|0)|0,65536,(c[(c[k>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0)|
0)|0;c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]=d}while(0);c[o>>2]=(c[o>>2]|0)+1
;c[k>>2]=(c[k>>2]|0)+24}if((t|0)==10){c[n>>2]=6;r=c[q>>2]|0;t=c[s>>2]|0;Fb(r,t
);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}if(!(a[(c[m>>2]|0)+16>>0]|0))Fe(c[g>>2]|
0);a:do if(c[(c[m>>2]|0)+20>>2]|0){c[l>>2]=c[(c[m>>2]|0)+20>>2];c[o>>
;2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[c[r>>2]>>2]|0)>>>0)break
a;c[p>>2]=1;while(1){if((c[p>>2]|0)>>>0>=(e[c[l>>2]>>1]|0)>>
;>0)break;if((c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]|0)<(c[(c[(c[l>>2]|0)+4
x3e;>2]|0)+(c[p>>2]<<3)>>2]|0)){t=25;break}c[p>>2]=(c[p>>2]|0)+1}if((t|0)==
25){t=0;m=xb((c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[(c[l>>2]|0)+4>>
;2]|0)+((c[p>>2]|0)-1<<3)>>2]|0)|0,65536,(c[(c[(c[l>>2]|0)+4>>2]|0)+(c[p>
x3e;2]<<3)>>2]|0)-(c[(c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1<<3)>
;>2]|0)|0)|0;m=xb(m,(c[(c[(c[l>>2]|0)+4>>2]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(
c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1<<3)+4>>2]|0)|0,65536)|0;c[(c[s>>
;2]|0)+(c[o>>2]<<2)>>2]=m+(c[(c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1
x3c;<3)+4>>2]|0)}c[o>>2]=(c[o>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+8}}while(0);c[
n>>2]=we(c[g>>2]|0,c[h>>2]|0,c[s>>2]|0)|0;r=c[q>>2]|0;t=c[s>>2]|0;Fb
(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|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,p=0,
q=0,r=0;q=i;i=i+48|0;r=q+40|0;p=q+36|0;o=q+32|0;m=q+28|0;j=q+24|0;g=q+20|0;l=q+16|0;f=q+12|0;h=q+8|0;n=q+4|0;k=q;c[r>>
2]=d;c[p>>2]=c[(c[r>>2]|0)+104>>2];c[o>>2]=c[(c[p>>2]|0)+28>>2];c[m
x3e;>2]=c[(c[r>>2]|0)+712>>2];c[g>>2]=0;c[g>>2]=c[g>>2];a[(c[m>>
;2]|0)+16>>0]=1;d=Wa[c[(c[r>>2]|0)+508>>2]&31](c[r>>2]|0,1635148146,c[p>>
2]|0,k)|0;c[g>>2]=d;if(d|0){i=q;return}r=ee(c[p>>2]|0,c[k>>2]|0)|0;c[g>>2]=r;if(r|0){i=q
;return}c[l>>2]=je(c[p>>2]|0)|0;c[f>>2]=je(c[p>>2]|0)|0;a:do if(((c[l>>2]|0)==
65536?(c[f>>2]|0)==(c[c[(c[m>>2]|0)+8>>2]>>2]|0):0)?(r=hc(c[o>>2]|0,8,0,c[f>
;>2]|0,0,g)|0,c[(c[m>>2]|0)+20>>2]=r,(c[g>>2]|0)==0):0){c[j>>2]=c[(c[m>>2
]|0)+20>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[f>>2]|0))break a;r=ie(c[p>
x3e;2]|0)|0;b[c[j>>2]>>1]=r;r=hc(c[o>>2]|0,8,0,e[c[j>>2]>>1]|0,0,g)|0;c[(c[j
x3e;>2]|0)+4>>2]=r;if(c[g>>2]|0)break;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(e[c[
j>>2]>>1]|0|0))break;r=(ie(c[p>>2]|0)|0)<<16>>16<<2;c[(c[(c[j>
x3e;2]|0)+4>>2]|0)+(c[n>>2]<<3)>>2]=r;r=(ie(c[p>>2]|0)|0)<<16>
x3e;16<<2;c[(c[(c[j>>2]|0)+4>>2]|0)+(c[n>>2]<<3)+4>>2]=r;c[n>
x3e;2]=(c[n>>2]|0)+1}c[h>>2]=(c[h>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+8}c[n>>
;2]=(c[h>>2]|0)-1;while(1){f=c[o>>2]|0;if((c[n>>2]|0)<0)break;Fb(f,c[(c[(c[m>>2]|0)+
20>>2]|0)+(c[n>>2]<<3)+4>>2]|0);c[(c[(c[m>>2]|0)+20>>2]|0)+(c[n>
;>2]<<3)+4>>2]=0;c[n>>2]=(c[n>>2]|0)+-1}Fb(f,c[(c[m>>2]|0)+20>>
2]|0);c[(c[m>>2]|0)+20>>2]=0;c[(c[m>>2]|0)+20>>2]=0}while(0);ge(c[p>>2]|0);i=q
;return}function Ge(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;p=i;i=i+32|0;h=p+28|0;j=p+24|0;g=p+20|0;k=p
+16|0;n=p+12|0;o=p+8|0;l=p+4|0;m=p;c[j>>2]=a;c[g>>2]=e;c[k>>2]=f;c[o>>2]=0;c[n>>
;2]=0;do if((c[g>>2]|0)>>>0<(c[(c[j>>2]|0)+732>>2]|0)>>>0){a=c[(
c[j>>2]|0)+736>>2]|0;f=c[g>>2]|0;if(b[(c[j>>2]|0)+160+50>>1]|0){c[l>>
;2]=a+(f<<2);c[m>>2]=(c[(c[j>>2]|0)+736>>2]|0)+(c[(c[j>>2]|0)+732>>2
]<<2);c[l>>2]=(c[l>>2]|0)+4;c[n>>2]=d[(c[l>>2]|0)+-4>>0]<<
24|d[(c[l>>2]|0)+-4+1>>0]<<16|d[(c[l>>2]|0)+-4+2>>0]<<8|d[(c[l>
x3e;2]|0)+-4+3>>0]<<0;c[o>>2]=c[n>>2];if(((c[l>>2]|0)+4|0)>>>0
x3e;(c[m>>2]|0)>>>0)break;c[l>>2]=(c[l>>2]|0)+4;c[o>>2]=d[(c[l>>
;2]|0)+-4>>0]<<24|d[(c[l>>2]|0)+-4+1>>0]<<16|d[(c[l>>2]|0)+-4+2>
;>0]<<8|d[(c[l>>2]|0)+-4+3>>0]<<0;break}c[l>>2]=a+(f<<1);c[m>
;>2]=(c[(c[j>>2]|0)+736>>2]|0)+(c[(c[j>>2]|0)+732>>2]<<1);c[l>>
2]=(c[l>>2]|0)+2;c[n>>2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>
x3e;2]|0)+-2+1>>0]&65535)<<0)&65535;c[o>>2]=c[n>>2];if(((c[l>>2]|0)+
2|0)>>>0<=(c[m>>2]|0)>>>0){c[l>>2]=(c[l>>2]|0)+2;c[o>>
;2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>>2]|0)+-2+1>>0]&65535)
x3c;<0)&65535}c[n>>2]=c[n>>2]<<1;c[o>>2]=c[o>>2]<<1}while(
0);if((c[n>>2]|0)>>>0>=(c[(c[j>>2]|0)+704>>2]|0)>>>0){c[c[k>
;>2]>>2]=0;c[h>>2]=0;o=c[h>>2]|0;i=p;return o|0}if((c[o>>2]|0)>>>0
x3e;=(c[(c[j>>2]|0)+704>>2]|0)>>>0)c[o>>2]=c[(c[j>>2]|0)+704>>2
];if((c[o>>2]|0)>>>0>=(c[n>>2]|0)>>>0)c[c[k>>2]>>2]=(
c[o>>2]|0)-(c[n>>2]|0);else c[c[k>>2]>>2]=(c[(c[j>>2]|0)+704>>2]|0)-(
c[n>>2]|0);c[h>>2]=c[n>>2];o=c[h>>2]|0;i=p;return o|0}function He(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;r=i;i=i+48|0;g=r+36|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0
;m=r+16|0;n=r+12|0;s=r+8|0;p=r+4|0;o=r;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>
x3e;2]=f;c[o>>2]=c[j>>2];c[s>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+4>>2];c[
p>>2]=Ud(c[s>>2]|0,11340)|0;do if(c[p>>2]|0){s=Kc(c[h>>2]|0,0)|0;c[n>>2]=s;if((
s|0)==0?(c[n>>2]=Za[c[(c[p>>2]|0)+4>>2]&31](c[h>>2]|0,c[o>>2]|0,c[k>
x3e;2]|0,c[l>>2]|0,c[m>>2]|0)|0,(c[n>>2]|0)==0):0){if(((c[(c[o>>2]|0)+148>>2]|
0)!=65536?(c[(c[o>>2]|0)+148>>2]|0)!=131072:0)?(c[(c[o>>2]|0)+148>>2]|0)!=1953658213:0){
q=24;break}s=(c[j>>2]|0)+8|0;c[s>>2]=c[s>>2]|2048;if((c[k>>2]|0)<0){c[g>>
2]=0;s=c[g>>2]|0;i=r;return s|0}c[n>>2]=Za[c[(c[p>>2]|0)+8>>2]&31](c[h>>2
]|0,c[o>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(!(c[n>>2]|0)){if((Ie(c[j>
;>2]|0)|0)<<24>>24){s=(c[j>>2]|0)+8|0;c[s>>2]=c[s>>2]|8192}c[n>>
;2]=Ne(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0)){if(c[(c[j>>2]|0)+8>>2]&1|0
){if(!(c[(c[(c[j>>2]|0)+128>>2]|0)+52>>2]|0))c[n>>2]=Oe(c[o>>2]|0,c[h>>
;2]|0)|0;if(!(c[n>>2]|0))c[n>>2]=ze(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0))c[n
>>2]=Pe(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0))c[n>>2]=Qe(c[o>>2]|0,
c[h>>2]|0)|0}Re(c[o>>2]|0)}}}}else q=24;while(0);if((q|0)==24)c[n>>2]=2;c[g>>2]=c[n>
;>2];s=c[g>>2]|0;i=r;return s|0}function Ie(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[e>>2]=b
;do if(c[e>>2]|0){b=c[e>>2]|0;if(c[(c[e>>2]|0)+20>>2]|0)if((Je(c[b+20>>2]|0)|0
)<<24>>24){a[d>>0]=1;break}else{a[d>>0]=0;break}else if((Ke(b)|0)<<24>>
;24){a[d>>0]=1;break}else{a[d>>0]=0;break}}else a[d>>0]=0;while(0);i=f;return a[d>>0]|0}
function Je(b){b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;f=g+8|0;d=g+4|0;e=g;c[d>>2]=b;c[e>>2]=0;while(1){if((c
[e>>2]|0)>=8){d=6;break}if(vs(c[d>>2]|0,10569+((c[e>>2]|0)*17|0)|0)|0){d=4;break}c[e>>
;2]=(c[e>>2]|0)+1}if((d|0)==4){a[f>>0]=1;f=a[f>>0]|0;i=g;return f|0}else if((d|0)==6){a[f>>
;0]=0;f=a[f>>0]|0;i=g;return f|0}return 0}function Ke(b){b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+48|0;d=
n+40|0;f=n+36|0;g=n+32|0;l=n+12|0;h=n+8|0;j=n+4|0;k=n;c[f>>2]=b;c[l>>2]=0;c[l+4>>2]=0;c[l+8>
x3e;2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[h>>2]=0;a:while(1){if((c[h>>2]|0)>=(e[(c[f>
;>2]|0)+152>>1]|0|0)){m=18;break}c[g>>2]=0;b=c[(c[(c[f>>2]|0)+156>>2]|0)+(c[h>
x3e;2]<<4)>>2]|0;b:do if((b|0)>=1718642541)if((b|0)<1886545264){switch(b|0){case 1718642541:break;
default:break b}c[k>>2]=1;m=7;break}else{switch(b|0){case 1886545264:break;default:break b}c[k>>2]=2;m=7;break
}else{switch(b|0){case 1668707360:break;default:break b}c[k>>2]=0;m=7}while(0);c:do if((m|0)==7){m=0;c[j>>2]=
0;while(1){if((c[j>>2]|0)>=5)break c;if((c[(c[(c[f>>2]|0)+156>>2]|0)+(c[h>>2]<
x3c;4)+12>>2]|0)==(c[448+((c[j>>2]|0)*24|0)+(c[k>>2]<<3)+4>>2]|0)){if(!(c[g>
;>2]|0))c[g>>2]=Le(c[f>>2]|0,c[h>>2]&65535)|0;if((c[448+((c[j>>2]|0)*24|0)+(c[
k>>2]<<3)>>2]|0)==(c[g>>2]|0)){b=l+(c[j>>2]<<2)|0;c[b>>2]=(
c[b>>2]|0)+1}if((c[l+(c[j>>2]<<2)>>2]|0)==3){m=15;break a}}c[j>>2]=(c[j>
x3e;2]|0)+1}}while(0);c[h>>2]=(c[h>>2]|0)+1}if((m|0)==15){a[d>>0]=1;m=a[d>>0]|0;i=n;return
m|0}else if((m|0)==18){a[d>>0]=0;m=a[d>>0]|0;i=n;return m|0}return 0}function Le(a,d){a=a|0;d=d|0;var f=0,g
=0,h=0,j=0;j=i;i=i+16|0;f=j+4|0;g=j;h=j+8|0;c[g>>2]=a;b[h>>1]=d;if(c[(c[(c[g>>2]|0)+156>>
;2]|0)+((e[h>>1]|0)<<4)+4>>2]|0){c[f>>2]=c[(c[(c[g>>2]|0)+156>>2]|0)+((
e[h>>1]|0)<<4)+4>>2];d=c[f>>2]|0;i=j;return d|0}if(!(c[(c[g>>2]|0)+508>
x3e;2]|0)){c[f>>2]=0;d=c[f>>2]|0;i=j;return d|0}if(Wa[c[(c[g>>2]|0)+508>>2]&31](c[g
>>2]|0,c[(c[(c[g>>2]|0)+156>>2]|0)+((e[h>>1]|0)<<4)>>2]|0,c[(c[g>
;>2]|0)+104>>2]|0,0)|0){c[f>>2]=Me(c[(c[g>>2]|0)+104>>2]|0,c[(c[(c[g>>2]|
0)+156>>2]|0)+((e[h>>1]|0)<<4)+12>>2]|0)|0;d=c[f>>2]|0;i=j;return d|0}else{c[f
>>2]=0;d=c[f>>2]|0;i=j;return d|0}return 0}function Me(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+
32|0;d=j+20|0;e=j+16|0;f=j+12|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;a=ee(c[e>>2]|0
,c[f>>2]|0)|0;c[j+8>>2]=a;if(a|0){c[d>>2]=0;h=c[d>>2]|0;i=j;return h|0}while(1){if((c[f
x3e;>2]|0)>>>0<=3)break;a=je(c[e>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+a;c[f>
x3e;2]=(c[f>>2]|0)-4}c[h>>2]=3;while(1){b=c[e>>2]|0;if((c[f>>2]|0)>>>0<
;=0)break;a=(he(b)|0)&255;c[g>>2]=(c[g>>2]|0)+(a<<(c[h>>2]<<3));c[f>
x3e;2]=(c[f>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+-1}ge(b);c[d>>2]=c[g>>2];h=c[d>
x3e;2]|0;i=j;return h|0}function Ne(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;s=i;i=i+48|0;f=s+44
|0;g=s+40|0;h=s+36|0;j=s+32|0;l=s+28|0;r=s+24|0;m=s+20|0;n=s+16|0;q=s+12|0;p=s+8|0;o=s+4|0;k=s;c[g>>2]=b;c[h>>
;2]=e;c[l>>2]=c[(c[h>>2]|0)+28>>2];c[j>>2]=Wa[c[(c[g>>2]|0)+508>>2]
x26;31](c[g>>2]|0,1751412088,c[h>>2]|0,q)|0;if((c[j>>2]|0)!=0|(c[q>>2]|0)>>>
;0<8){c[f>>2]=0;r=c[f>>2]|0;i=s;return r|0}e=de(c[h>>2]|0,c[q>>2]|0,(c[g>>
;2]|0)+740|0)|0;c[j>>2]=e;do if(!e){c[o>>2]=c[(c[g>>2]|0)+740>>2];c[k>>2]=(c[o
>>2]|0)+(c[q>>2]|0);c[o>>2]=(c[o>>2]|0)+2;c[r>>2]=(((d[(c[o>>2]|0)+-
2>>0]|0)&65535)<<8|((d[(c[o>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535
;c[o>>2]=(c[o>>2]|0)+2;c[n>>2]=(((d[(c[o>>2]|0)+-2>>0]|0)&65535)<<
;8|((d[(c[o>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[o>>2]=(c[o>>2]|0)+
4;c[p>>2]=(d[(c[o>>2]|0)+-4>>0]|0)<<24|(d[(c[o>>2]|0)+-4+1>>0]|0)<
;<16|(d[(c[o>>2]|0)+-4+2>>0]|0)<<8|(d[(c[o>>2]|0)+-4+3>>0]|0)<<
0;if((c[p>>2]|0)>>>0>=4294901760)c[p>>2]=c[p>>2]&65535;if(!((c[r>>
;2]|0)!=0|(c[n>>2]|0)>>>0>255|(c[p>>2]|0)>>>0>65537)){r=hc(c[l>
x3e;2]|0,1,0,c[n>>2]|0,0,j)|0;c[(c[g>>2]|0)+756>>2]=r;if(!(c[j>>2]|0)){c[m>>2]=
0;while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;if(((c[o>>
2]|0)+(c[p>>2]|0)|0)>>>0>(c[k>>2]|0)>>>0)break;a[(c[(c[g>>2]|0)+
756>>2]|0)+(c[m>>2]|0)>>0]=a[c[o>>2]>>0]|0;c[o>>2]=(c[o>>2
]|0)+(c[p>>2]|0);c[m>>2]=(c[m>>2]|0)+1}c[(c[g>>2]|0)+748>>2]=c[m>>2];
c[(c[g>>2]|0)+744>>2]=c[q>>2];c[(c[g>>2]|0)+752>>2]=c[p>>2];break}}else
c[j>>2]=3;fe(c[h>>2]|0,(c[g>>2]|0)+740|0);c[(c[g>>2]|0)+744>>2]=0}while(0);c[
f>>2]=c[j>>2];r=c[f>>2]|0;i=s;return r|0}function Oe(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,q=0,r=0;r=i;i=i+48|0;g=r+40|0;h=r+36|0;m=r+32|0;q=r+28|0;f=r+24|0;o=r+20|0;l=r+16|0;n=r+12|0;p=r+8|0;k=r+4|0;j=r
;c[g>>2]=a;c[h>>2]=d;c[m>>2]=Wa[c[(c[g>>2]|0)+508>>2]&31](c[g>>
2]|0,1735162214,c[h>>2]|0,(c[g>>2]|0)+704|0)|0;if((c[m>>2]|0)!=142){if(c[m>>2]|0){q=c[m
x3e;>2]|0;i=r;return q|0}}else c[(c[g>>2]|0)+704>>2]=0;c[m>>2]=Wa[c[(c[g>>2]|0)+508
>>2]&31](c[g>>2]|0,1819239265,c[h>>2]|0,q)|0;if(c[m>>2]|0){c[m>>2]=144;q=
c[m>>2]|0;i=r;return q|0}do if(b[(c[g>>2]|0)+160+50>>1]|0){c[f>>2]=2;if((c[q>>
2]|0)>>>0<262144){c[(c[g>>2]|0)+732>>2]=(c[q>>2]|0)>>>(c[f>
;>2]|0);break}c[m>>2]=8;q=c[m>>2]|0;i=r;return q|0}else{c[f>>2]=1;if((c[q>>2]|0)>
;>>0<131072){c[(c[g>>2]|0)+732>>2]=(c[q>>2]|0)>>>(c[f>>2]|
0);break}c[m>>2]=8;q=c[m>>2]|0;i=r;return q|0}while(0);if((c[(c[g>>2]|0)+732>>2]|0)!=(c[(
c[g>>2]|0)+16>>2]|0)?(c[(c[g>>2]|0)+732>>2]|0)>>>0<(c[(c[g>>
;2]|0)+16>>2]|0)>>>0:0){c[o>>2]=c[(c[g>>2]|0)+16>>2]<<c[f>
x3e;2];c[l>>2]=c[(c[g>>2]|0)+156>>2];c[n>>2]=(c[l>>2]|0)+(e[(c[g>>2]|
0)+152>>1]<<4);c[p>>2]=Mc(c[h>>2]|0)|0;c[k>>2]=2147483647;while(1){a=c[l>
x3e;2]|0;if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[j>>2]=(c[a
+8>>2]|0)-(c[p>>2]|0);if((c[j>>2]|0)>0?(c[j>>2]|0)<(c[k>>2]|0):0)c[k
>>2]=c[j>>2];c[l>>2]=(c[l>>2]|0)+16}if((a|0)==(c[n>>2]|0))c[k>>2]=(c
[(c[h>>2]|0)+4>>2]|0)-(c[p>>2]|0);if((c[o>>2]|0)<=(c[k>>2]|0)){c[(c[g>
;>2]|0)+732>>2]=c[(c[g>>2]|0)+16>>2];c[q>>2]=c[o>>2]}}c[m>>2]=de
(c[h>>2]|0,c[q>>2]|0,(c[g>>2]|0)+736|0)|0;q=c[m>>2]|0;i=r;return q|0}function Pe(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>
;2]=Wa[c[(c[d>>2]|0)+508>>2]&31](c[d>>2]|0,1718642541,c[e>>2]|0,g)|0;if(c[f>
x3e;2]|0){c[(c[d>>2]|0)+656>>2]=0;c[(c[d>>2]|0)+652>>2]=0;c[f>>2]=0;g=c[f>
;>2]|0;i=h;return g|0}else{c[(c[d>>2]|0)+652>>2]=c[g>>2];c[f>>2]=de(c[e>>
2]|0,c[g>>2]|0,(c[d>>2]|0)+656|0)|0;g=c[f>>2]|0;i=h;return g|0}return 0}function Qe(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Wa
[c[(c[d>>2]|0)+508>>2]&31](c[d>>2]|0,1886545264,c[e>>2]|0,g)|0;if(c[f>>2]|
0){c[(c[d>>2]|0)+664>>2]=0;c[(c[d>>2]|0)+660>>2]=0;c[f>>2]=0;g=c[f>>
2]|0;i=h;return g|0}else{c[(c[d>>2]|0)+660>>2]=c[g>>2];c[f>>2]=de(c[e>>2]|0,c[
g>>2]|0,(c[d>>2]|0)+664|0)|0;g=c[f>>2]|0;i=h;return g|0}return 0}function Re(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)+512>>2]=22;c[(c[d>>2]|0)+520>>2]=34;c
[(c[d>>2]|0)+524>>2]=35;c[(c[d>>2]|0)+528>>2]=36;c[(c[d>>2]|0)+516>>
2]=34;i=b;return}function Se(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;g=l+20|0
;n=l+16|0;m=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=a;c[n>>2]=b;c[m>>2]=d;c[h>>2]=e;c[k>
x3e;2]=c[(c[g>>2]|0)+24>>2];c[n>>2]=c[n>>2];d=Kc(c[k>>2]|0,c[m>>2]|0
)|0;c[j>>2]=d;if((d|0)==0?(n=ee(c[k>>2]|0,c[h>>2]|0)|0,c[j>>2]=n,(n|0)==0):0){c[(c[g>
;>2]|0)+200>>2]=c[(c[k>>2]|0)+32>>2];c[(c[g>>2]|0)+204>>2]=c[(c[k>
x3e;2]|0)+36>>2];c[f>>2]=0;n=c[f>>2]|0;i=l;return n|0}c[f>>2]=c[j>>2];n=c[f>
;>2]|0;i=l;return n|0}function Te(e){e=e|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;f=j+12|0;g=j+8|0;h=j+4|0;k=j;c[g>>
;2]=e;c[h>>2]=c[(c[g>>2]|0)+200>>2];c[k>>2]=c[(c[g>>2]|0)+204>>2];if
(((c[h>>2]|0)+10|0)>>>0>(c[k>>2]|0)>>>0){c[f>>2]=20;k=c[f>
x3e;2]|0;i=j;return k|0}else{c[h>>2]=(c[h>>2]|0)+2;b[(c[g>>2]|0)+32>>1]=a[(c[h>>
;2]|0)+-2>>0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0;c[h>
;>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36>>2]=((a[(c[h>>2]|0)+-2>>0]<<
;16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<16>>16;
c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+4>>2]=((a[(c[h>>2]|0)+-2>>0]
x3c;<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<16>
x3e;16;c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+8>>2]=((a[(c[h>>2]|0)+-2>
x3e;0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<
16>>16;c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+12>>2]=((a[(c[h>>2]|0)+-
2>>0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<
;<16>>16;c[(c[g>>2]|0)+200>>2]=c[h>>2];c[f>>2]=0;k=c[f>>2]|0;i=
j;return k|0}return 0}function Ue(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,z=0,A=0,B
=0,C=0,D=0,E=0,F=0,G=0,H=0;H=i;i=i+96|0;j=H+72|0;o=H+68|0;A=H+64|0;v=H+60|0;u=H+56|0;w=H+52|0;z=H+48|0;r=H+44|0;x=H+78|0;y=H+40|
0;s=H+36|0;t=H+32|0;k=H+83|0;n=H+82|0;B=H+28|0;C=H+24|0;D=H+20|0;l=H+16|0;m=H+12|0;g=H+76|0;E=H+8|0;F=H+4|0;p=H+81|0;G=H;q=H+80|
0;c[j>>2]=f;c[A>>2]=c[(c[j>>2]|0)+200>>2];c[v>>2]=c[(c[j>>2]|0)+204
x3e;>2];c[u>>2]=c[(c[j>>2]|0)+12>>2];c[w>>2]=b[(c[j>>2]|0)+32>>
1];c[r>>2]=c[c[j>>2]>>2];c[E>>2]=0;if((c[w>>2]|0)!=0?((b[(c[u>>2]|0)+
20>>1]|0)+(b[(c[u>>2]|0)+56>>1]|0)+(c[w>>2]|0)|0)>>>0>(c[(c[u>
x3e;2]|0)+8>>2]|0)>>>0:0)f=kc(c[u>>2]|0,0,c[w>>2]|0)|0;else f=0;c[o>>2]=f
;if(c[o>>2]|0){G=c[o>>2]|0;i=H;return G|0}c[l>>2]=c[(c[u>>2]|0)+56+12>>2];c[m
x3e;>2]=(c[l>>2]|0)+(c[w>>2]<<1);a:do if((c[w>>2]|0)<4095?((c[A>>2]|
0)+((c[w>>2]|0)+1<<1)|0)>>>0<=(c[v>>2]|0)>>>0:0){c[A>>
;2]=(c[A>>2]|0)+2;b[g>>1]=(d[(c[A>>2]|0)+-2>>0]&65535)<<8|(d[(c[A>
x3e;2]|0)+-2+1>>0]&65535)<<0;if((c[w>>2]|0)>0)b[c[l>>2]>>1]=b[g>
;>1]|0;c[l>>2]=(c[l>>2]|0)+2;while(1){if((c[l>>2]|0)>>>0>=(c[m>>
;2]|0)>>>0)break;c[A>>2]=(c[A>>2]|0)+2;b[c[l>>2]>>1]=(d[(c[A>>2
]|0)+-2>>0]&65535)<<8|(d[(c[A>>2]|0)+-2+1>>0]&65535)<<0;if((b[c[l>
;>2]>>1]|0)<=(b[g>>1]|0)){h=12;break}b[g>>1]=b[c[l>>2]>>1]|0;c[l>
;>2]=(c[l>>2]|0)+2}if((h|0)==12){c[o>>2]=8;G=c[o>>2]|0;i=H;return G|0}c[y>>2]=0;if((
c[w>>2]|0)>0?(c[y>>2]=(b[(c[l>>2]|0)+-2>>1]|0)+1,(c[y>>2]|0)<0):0)break
;if(((c[y>>2]|0)+4|0)!=0?((b[(c[u>>2]|0)+20+2>>1]|0)+(b[(c[u>>2]|0)+56+2>>1]|0
)+((c[y>>2]|0)+4)|0)>>>0>(c[(c[u>>2]|0)+4>>2]|0)>>>0:0)f=kc(c[u
>>2]|0,(c[y>>2]|0)+4|0,0)|0;else f=0;c[o>>2]=f;if(c[o>>2]|0){G=c[o>>2]|0;i=H;return
G|0}c[z>>2]=(c[u>>2]|0)+56;c[l>>2]=(c[(c[z>>2]|0)+12>>2]|0)+2;while(1){if((c[
l>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;if((b[(c[l>>2]|0)+-2>
x3e;1]|0)>=(b[c[l>>2]>>1]|0))break a;c[l>>2]=(c[l>>2]|0)+2}c[(c[(c[j>>2]|
0)+8>>2]|0)+140>>2]=0;c[(c[(c[j>>2]|0)+8>>2]|0)+136>>2]=0;if(((c[A>>
2]|0)+2|0)>>>0<=(c[v>>2]|0)>>>0){c[A>>2]=(c[A>>2]|0)+2;b[x>
;>1]=(d[(c[A>>2]|0)+-2>>0]&65535)<<8|(d[(c[A>>2]|0)+-2+1>>0]&65535
)<<0;if((e[x>>1]|0)>(e[(c[r>>2]|0)+260+26>>1]|0)){c[o>>2]=22;G=c[o>
x3e;2]|0;i=H;return G|0}if(((c[v>>2]|0)-(c[A>>2]|0)|0)<(e[x>>1]|0)){c[o>>2]=22;G=c[
o>>2]|0;i=H;return G|0}if(!(c[(c[j>>2]|0)+16>>2]&2)){c[(c[(c[j>>2]|0)+8>>
2]|0)+140>>2]=e[x>>1];c[(c[(c[j>>2]|0)+8>>2]|0)+136>>2]=c[(c[(c[j>>2
]|0)+160>>2]|0)+392>>2];Ss(c[(c[(c[j>>2]|0)+160>>2]|0)+392>>2]|0,c[A>>
;2]|0,e[x>>1]|0)|0}c[A>>2]=(c[A>>2]|0)+(e[x>>1]|0);c[s>>2]=c[(c[z>>2
]|0)+8>>2];c[t>>2]=(c[s>>2]|0)+(c[y>>2]|0);b:while(1){if((c[s>>2]|0)>>
;>0>=(c[t>>2]|0)>>>0)break;if(((c[A>>2]|0)+1|0)>>>0>(c[v>
x3e;2]|0)>>>0)break a;r=c[A>>2]|0;c[A>>2]=r+1;r=a[r>>0]|0;a[k>>0]=r;x=c[s
>>2]|0;c[s>>2]=x+1;a[x>>0]=r;if(!(d[k>>0]&8))continue;if(((c[A>>2]|0)+1|0
)>>>0>(c[v>>2]|0)>>>0)break a;x=c[A>>2]|0;c[A>>2]=x+1;a[n>
x3e;0]=a[x>>0]|0;if(((c[s>>2]|0)+(d[n>>0]|0)|0)>>>0>(c[t>>2]|0)>
;>>0)break a;while(1){if((d[n>>0]|0)<=0)continue b;r=a[k>>0]|0;x=c[s>>2]|0;c[s>
;>2]=x+1;a[x>>0]=r;a[n>>0]=(a[n>>0]|0)+-1<<24>>24}}c[B>>2]=c[(c
[z>>2]|0)+4>>2];c[C>>2]=(c[B>>2]|0)+(c[y>>2]<<3);c[s>>2]=c
[(c[z>>2]|0)+8>>2];c[D>>2]=0;if(((c[A>>2]|0)+(c[E>>2]|0)|0)>>>0
<=(c[v>>2]|0)>>>0){while(1){if((c[B>>2]|0)>>>0>=(c[C>>2]|0
)>>>0)break;c[F>>2]=0;a[p>>0]=a[c[s>>2]>>0]|0;if(d[p>>0]&2
|0){if(((c[A>>2]|0)+1|0)>>>0>(c[v>>2]|0)>>>0)break a;E=c[A>>2]|
0;c[A>>2]=E+1;c[F>>2]=d[E>>0];if(!(d[p>>0]&16))c[F>>2]=0-(c[F>>
2]|0)}else if(!(d[p>>0]&16)){if(((c[A>>2]|0)+2|0)>>>0>(c[v>>2]|0)>
x3e;>0)break a;c[A>>2]=(c[A>>2]|0)+2;c[F>>2]=((a[(c[A>>2]|0)+-2>>0]<
x3c;16>>16<<8|d[(c[A>>2]|0)+-2+1>>0]<<0)&65535)<<16>>
16}c[D>>2]=(c[D>>2]|0)+(c[F>>2]|0);c[c[B>>2]>>2]=c[D>>2];a[c[s>
x3e;2]>>0]=d[p>>0]&-19;c[B>>2]=(c[B>>2]|0)+8;c[s>>2]=(c[s>>2]|0
)+1}c[B>>2]=c[(c[u>>2]|0)+56+4>>2];c[C>>2]=(c[B>>2]|0)+(c[y>>2]<
;<3);c[s>>2]=c[(c[z>>2]|0)+8>>2];c[D>>2]=0;while(1){if((c[B>>2]|0)>
x3e;>0>=(c[C>>2]|0)>>>0)break;c[G>>2]=0;a[q>>0]=a[c[s>>2]>
x3e;0]|0;if(d[q>>0]&4|0){if(((c[A>>2]|0)+1|0)>>>0>(c[v>>2]|0)>>
x3e;0)break a;F=c[A>>2]|0;c[A>>2]=F+1;c[G>>2]=d[F>>0];if(!(d[q>>0]&32))c[
G>>2]=0-(c[G>>2]|0)}else if(!(d[q>>0]&32)){if(((c[A>>2]|0)+2|0)>>>0
x3e;(c[v>>2]|0)>>>0)break a;c[A>>2]=(c[A>>2]|0)+2;c[G>>2]=((a[(c[A>
x3e;2]|0)+-2>>0]<<16>>16<<8|d[(c[A>>2]|0)+-2+1>>0]<<0)&
;65535)<<16>>16}c[D>>2]=(c[D>>2]|0)+(c[G>>2]|0);c[(c[B>>2]|0)+4>
;>2]=c[D>>2];a[c[s>>2]>>0]=d[q>>0]&1;c[B>>2]=(c[B>>2]|0)+8
;c[s>>2]=(c[s>>2]|0)+1}b[(c[z>>2]|0)+2>>1]=c[y>>2];b[c[z>>2]>
x3e;1]=c[w>>2];c[(c[j>>2]|0)+200>>2]=c[A>>2];G=c[o>>2]|0;i=H;return G|0}}}while
(0);c[o>>2]=20;G=c[o>>2]|0;i=H;return G|0}function Ve(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;u=i;i=i+64|0;n=u+48|0;o=u+44|0;s=u+40|0;q=u+36|0;p=u+32|0;h=u+28|0;r=u+24|0;j=u+20|0;k=u+16|0;m=u+12|0;l=u+8|0;g=
u+4|0;t=u;c[n>>2]=f;c[s>>2]=c[(c[n>>2]|0)+200>>2];c[q>>2]=c[(c[n>>2]|
0)+204>>2];c[p>>2]=c[(c[n>>2]|0)+12>>2];c[r>>2]=0;while(1){c[o>>2]=lc
(c[p>>2]|0,(c[r>>2]|0)+1|0)|0;if(c[o>>2]|0){f=24;break}if(((c[s>>2]|0)+4|0)>>
x3e;0>(c[q>>2]|0)>>>0){f=25;break}c[h>>2]=(c[(c[p>>2]|0)+56+32>>2]|0
)+(c[r>>2]<<5);c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+8>>2]=0;c[s>
;>2]=(c[s>>2]|0)+2;b[(c[h>>2]|0)+4>>1]=(d[(c[s>>2]|0)+-2>>0]&65535)
x3c;<8|(d[(c[s>>2]|0)+-2+1>>0]&65535)<<0;c[s>>2]=(c[s>>2]|0)+2;c[c[h
>>2]>>2]=((d[(c[s>>2]|0)+-2>>0]&65535)<<8|(d[(c[s>>2]|0)+-2+1
x3e;>0]&65535)<<0)&65535;c[g>>2]=2;if(e[(c[h>>2]|0)+4>>1]&1|0)c[g>
;>2]=(c[g>>2]|0)+2;do if(!(e[(c[h>>2]|0)+4>>1]&8|0)){if(e[(c[h>>2]|0)+4>
x3e;1]&64|0){c[g>>2]=(c[g>>2]|0)+4;break}if(e[(c[h>>2]|0)+4>>1]&128|0)c[g>
;>2]=(c[g>>2]|0)+8}else c[g>>2]=(c[g>>2]|0)+2;while(0);if(((c[s>>2]|0)+(c[g>
x3e;2]|0)|0)>>>0>(c[q>>2]|0)>>>0){f=25;break}f=c[s>>2]|0;if(e[(c[h>
x3e;2]|0)+4>>1]&1|0){c[s>>2]=f+2;c[(c[h>>2]|0)+8>>2]=((a[(c[s>>2]|0)+-2
x3e;>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<
x3c;16>>16;c[s>>2]=(c[s>>2]|0)+2;c[(c[h>>2]|0)+12>>2]=((a[(c[s>>2]|0
)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)
x3c;<16>>16}else{c[s>>2]=f+1;c[(c[h>>2]|0)+8>>2]=a[f>>0];f=c[s>>
;2]|0;c[s>>2]=f+1;c[(c[h>>2]|0)+12>>2]=a[f>>0]}c[m>>2]=65536;c[j>>2]=
65536;c[l>>2]=0;c[k>>2]=0;do if(!(e[(c[h>>2]|0)+4>>1]&8|0)){if(e[(c[h>>2]|
0)+4>>1]&64|0){c[s>>2]=(c[s>>2]|0)+2;c[j>>2]=((a[(c[s>>2]|0)+-2>>
;0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<<16
x3e;>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[m>>2]=((a[(c[s>>2]|0)+-2>>0]
x3c;<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<<16>
x3e;16<<2;break}if(e[(c[h>>2]|0)+4>>1]&128|0){c[s>>2]=(c[s>>2]|0)+2;c[j
x3e;>2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>
;>0]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[l>
x3e;2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>
;0]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[k>>
2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0
]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[m>>2]=((
a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<
;<0)&65535)<<16>>16<<2}}else{c[s>>2]=(c[s>>2]|0)+2;c[j>>2]=((
a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<
;<0)&65535)<<16>>16<<2;c[m>>2]=c[j>>2]}while(0);c[(c[h>>2]|
0)+16>>2]=c[j>>2];c[(c[h>>2]|0)+16+4>>2]=c[k>>2];c[(c[h>>2]|0)+16+8
x3e;>2]=c[l>>2];c[(c[h>>2]|0)+16+12>>2]=c[m>>2];c[r>>2]=(c[r>>2
]|0)+1;if(!(e[(c[h>>2]|0)+4>>1]&32)){f=23;break}}if((f|0)==23){c[(c[p>>2]|0)+56+28>>
;2]=c[r>>2];c[t>>2]=c[(c[n>>2]|0)+24>>2];t=Mc(c[t>>2]|0)|0;c[(c[n>>2
]|0)+168>>2]=(c[s>>2]|0)+t-(c[q>>2]|0);c[(c[n>>2]|0)+200>>2]=c[s>>2];
t=c[o>>2]|0;i=u;return t|0}else if((f|0)==24){t=c[o>>2]|0;i=u;return t|0}else if((f|0)==25){c[o>>2
]=21;t=c[o>>2]|0;i=u;return t|0}return 0}function We(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];ge(c[d>>2]|0);i=b;return}function Xe(a){a=a|0;var b=0,
d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[b>>2]=a;c[d>>2]=c[b>>2];if
(!(c[d>>2]|0)){i=h;return}c[e>>2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[b>
x3e;2]|0)+104>>2];c[f>>2]=c[(c[d>>2]|0)+532>>2];if(c[(c[d>>2]|0)+692+4>
x3e;2]|0)Va[c[(c[d>>2]|0)+692+4>>2]&63](c[(c[d>>2]|0)+692>>2]|0);if(c[f>>
2]|0)Va[c[(c[f>>2]|0)+12>>2]&63](c[d>>2]|0);Ye(c[d>>2]|0);Ze(c[d>>2]|0);Fb
(c[e>>2]|0,c[(c[d>>2]|0)+672>>2]|0);c[(c[d>>2]|0)+672>>2]=0;c[(c[d>>
2]|0)+668>>2]=0;fe(c[g>>2]|0,(c[d>>2]|0)+656|0);fe(c[g>>2]|0,(c[d>>2]|0)+664|0
);c[(c[d>>2]|0)+652>>2]=0;c[(c[d>>2]|0)+660>>2]=0;_e(c[e>>2]|0,c[(c[d>>
;2]|0)+712>>2]|0);c[(c[d>>2]|0)+712>>2]=0;i=h;return}function Ye(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]|0)+104>>2];fe(c[e>>2]|0,(c[d>
;>2]|0)+736|0);c[(c[d>>2]|0)+732>>2]=0;i=b;return}function Ze(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)+104>>2];c[f>>2]=c[(c[e>
;>2]|0)+28>>2];Fb(c[f>>2]|0,c[(c[d>>2]|0)+756>>2]|0);c[(c[d>>2]|0)+756>
;>2]=0;fe(c[e>>2]|0,(c[d>>2]|0)+740|0);i=b;return}function _e(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;
i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=g;return}Fb(c[d>>2]|
0,c[(c[e>>2]|0)+4>>2]|0);c[(c[e>>2]|0)+4>>2]=0;Fb(c[d>>2]|0,c[(c[e>>
2]|0)+8>>2]|0);c[(c[e>>2]|0)+8>>2]=0;if(c[(c[e>>2]|0)+20>>2]|0){c[f>>
;2]=0;while(1){b=c[d>>2]|0;if((c[f>>2]|0)>>>0>=(c[c[e>>2]>>2]|0)>
;>>0)break;Fb(b,c[(c[(c[e>>2]|0)+20>>2]|0)+(c[f>>2]<<3)+4>>2]|0);c[(
c[(c[e>>2]|0)+20>>2]|0)+(c[f>>2]<<3)+4>>2]=0;c[f>>2]=(c[f>>
;2]|0)+1}Fb(b,c[(c[e>>2]|0)+20>>2]|0);c[(c[e>>2]|0)+20>>2]=0}Fb(c[d>>2]|0,c[(c
[e>>2]|0)+28>>2]|0);c[(c[e>>2]|0)+28>>2]=0;Fb(c[d>>2]|0,c[(c[e>>2]|0
)+36>>2]|0);c[(c[e>>2]|0)+36>>2]=0;Fb(c[d>>2]|0,c[e>>2]|0);c[e>>2]=0
;i=g;return}function $e(b){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]=b;c[f>>2]=c[g
x3e;>2];c[d>>2]=0;a[(c[f>>2]|0)+300>>0]=0;a[(c[f>>2]|0)+301>>0]=0;a[(c[f
x3e;>2]|0)+72+36>>0]=0;c[(c[f>>2]|0)+112>>2]=-1;i=e;return c[d>>2]|0}function af(b){
b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=b;c[e>>2]=c[d>>2];if(a[(c[e>>2]|0
)+300>>0]|0)bf(c[d>>2]|0);a[(c[e>>2]|0)+72+36>>0]=0;i=f;return}function bf(d){d=d|0;var
e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;j=g+12|0;f=g+8|0;h=g+4|0;e=g;c[j>>2]=d;c[f>>2]=c[j>>2];c[h>
x3e;2]=c[c[j>>2]>>2];c[e>>2]=c[(c[h>>2]|0)+100>>2];if(a[(c[f>>2]|0)+
292>>0]|0){c[(c[f>>2]|0)+296>>2]=0;a[(c[f>>2]|0)+292>>0]=0}Fb(c[e>>2
]|0,c[(c[f>>2]|0)+244>>2]|0);c[(c[f>>2]|0)+244>>2]=0;c[(c[f>>2]|0)+240>
x3e;2]=0;Fb(c[e>>2]|0,c[(c[f>>2]|0)+252>>2]|0);c[(c[f>>2]|0)+252>>2]=0;b[(c[f
x3e;>2]|0)+248>>1]=0;cf((c[f>>2]|0)+256|0);Fb(c[e>>2]|0,c[(c[f>>2]|0)+124>>
;2]|0);c[(c[f>>2]|0)+124>>2]=0;Fb(c[e>>2]|0,c[(c[f>>2]|0)+136>>2]|0);c[(c[f>
;>2]|0)+136>>2]=0;c[(c[f>>2]|0)+116>>2]=0;c[(c[f>>2]|0)+120>>2]=0;c[(c[f
x3e;>2]|0)+128>>2]=0;c[(c[f>>2]|0)+132>>2]=0;c[(c[f>>2]|0)+140>>2]=0;c[(c
[f>>2]|0)+144>>2]=0;a[(c[f>>2]|0)+300>>0]=0;a[(c[f>>2]|0)+301>>0]=0;
i=g;return}function cf(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=c[c[d>>
2]>>2];if(!(c[e>>2]|0)){i=f;return}Fb(c[e>>2]|0,c[(c[d>>2]|0)+28>>2]|0);c[(c[d
>>2]|0)+28>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+24>>2]|0);c[(c[d>>2]|0)+
24>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+16>>2]=0
;Fb(c[e>>2]|0,c[(c[d>>2]|0)+12>>2]|0);c[(c[d>>2]|0)+12>>2]=0;Fb(c[e>>
;2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>>2]=0;b[(c[d>>2]|0)+8>>
;1]=0;b[(c[d>>2]|0)+4>>1]=0;b[(c[d>>2]|0)+10>>1]=0;b[(c[d>>2]|0)+6>>
1]=0;c[c[d>>2]>>2]=0;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;a=gc(c
[c[(c[d>>2]|0)+156>>2]>>2]|0)|0;i=b;return a|0}function ef(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+32|0;o=n+28|0;p=n+24|0;g=n+20|0;h=n+16|0;m=n+12|0;l=n+8|0;k=n+4|0;j=n;c[o
>>2]=a;c[p>>2]=b;c[g>>2]=d;c[h>>2]=e;c[m>>2]=c[o>>2];c[l>>
2]=c[p>>2];c[k>>2]=c[(c[o>>2]|0)+4>>2];if(!(c[m>>2]|0)){c[f>>2]=37;p
=c[f>>2]|0;i=n;return p|0}if(!(c[l>>2]|0)){c[f>>2]=36;p=c[f>>2]|0;i=n;return p|0}if(!(c[
k>>2]|0)){c[f>>2]=6;p=c[f>>2]|0;i=n;return p|0}if((c[g>>2]|0)>>>0>=(
c[(c[k>>2]|0)+16>>2]|0)>>>0?(c[(c[(c[k>>2]|0)+128>>2]|0)+52>>2]|
0)==0:0){c[f>>2]=6;p=c[f>>2]|0;i=n;return p|0}if(c[h>>2]&2|0){if(c[(c[k>>2]|0)+8>
;>2]&8192|0)c[h>>2]=c[h>>2]&-3;if(c[h>>2]&32768|0)c[h>>2]=c[h>
x3e;2]|2}if(c[h>>2]&1025|0?(c[h>>2]=c[h>>2]|9,(c[(c[k>>2]|0)+8>>2]&8192
|0)==0):0)c[h>>2]=c[h>>2]|2;c[j>>2]=ff(c[l>>2]|0,c[m>>2]|0,c[g>>2]|0
,c[h>>2]|0)|0;c[f>>2]=c[j>>2];p=c[f>>2]|0;i=n;return p|0}function ff(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;r=i;i=i+256|0;h=r+240|0;j=r+236|0;k=r+232|0;l=r+228|0;m=r+224|0;o=r+220
|0;n=r+216|0;p=r+8|0;q=r;c[j>>2]=b;c[k>>2]=d;c[l>>2]=f;c[m>>2]=g;c[o>>2]=c[(c[
k>>2]|0)+4>>2];c[n>>2]=0;if(((c[(c[j>>2]|0)+112>>2]|0)!=-1?(c[m>>2]
x26;8|0)==0:0)?(c[n>>2]=gf(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0,(c[n>
;>2]|0)==0):0){c[q>>2]=c[o>>2];if((c[(c[q>>2]|0)+8>>2]&1|0?(hf(p,c[j>>
;2]|0,c[k>>2]|0,c[m>>2]|0,1)|0,ah(p,c[l>>2]|0,0,1)|0,c[(c[k>>2]|0)+56>>2]=c[p+
60>>2],c[(c[k>>2]|0)+60>>2]=(c[p+176>>2]|0)+(c[p+36+12>>2]|0)-(c[p+180>
x3e;2]|0),c[(c[o>>2]|0)+468+12>>2]|0):0)?(c[m>>2]&512|0)==0:0)c[(c[k>>2]|0)+56>
;>2]=e[(c[o>>2]|0)+216+10>>1];c[h>>2]=0;b=c[h>>2]|0;i=r;return b|0}if((c[m>>
;2]&1|0)==0?(a[(c[j>>2]|0)+72+36>>0]|0)==0:0){c[h>>2]=36;b=c[h>>2]|0;i=r;return b|0
}if(c[m>>2]&16384|0){c[h>>2]=6;b=c[h>>2]|0;i=r;return b|0}c[n>>2]=hf(p,c[j>>
;2]|0,c[k>>2]|0,c[m>>2]|0,0)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];b=c[h>>
2]|0;i=r;return b|0}c[(c[k>>2]|0)+72>>2]=1869968492;c[(c[k>>2]|0)+128>>2]=0;c[(c[k>
x3e;2]|0)+108+16>>2]=0;c[n>>2]=ah(p,c[l>>2]|0,0,0)|0;if(!(c[n>>2]|0)){if((c[(c[k>
x3e;2]|0)+72>>2]|0)!=1668246896){b=(c[k>>2]|0)+108|0;q=(c[p+12>>2]|0)+20|0;c[b>>2]=c[q
x3e;>2];c[b+4>>2]=c[q+4>>2];c[b+8>>2]=c[q+8>>2];c[b+12>>2]=c[q+12>
x3e;2];c[b+16>>2]=c[q+16>>2];b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]&-513;
if(c[p+68>>2]|0)Nb((c[k>>2]|0)+108|0,0-(c[p+68>>2]|0)|0,0)}else{c[(c[k>>2]|0)+128>
x3e;2]=c[(c[p+12>>2]|0)+20+28>>2];c[(c[k>>2]|0)+132>>2]=c[(c[p+12>>2]|0)+20+32
>>2]}a:do if(!(c[m>>2]&2)){if(!(a[(c[p+160>>2]|0)+284+53>>0]|0)){b=(c[k>>
2]|0)+108+16|0;c[b>>2]=c[b>>2]|8;break}switch(c[(c[p+160>>2]|0)+284+56>>2]|0){case 1:break
a;case 0:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|32;break a}case 4:{b=(c[k>>2]|0)+108+16
|0;c[b>>2]=c[b>>2]|48;break a}case 5:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|16
;break a}default:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|8;break a}}}while(0);nh(p,c[l>>
2]|0)|0}if((c[m>>2]&1|0)==0?(e[(c[j>>2]|0)+12+2>>1]|0)<24:0){b=(c[k>>2]|0)+108
+16|0;c[b>>2]=c[b>>2]|256}c[h>>2]=c[n>>2];b=c[h>>2]|0;i=r;return b|0}function
gf(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;n=i;i=i+48|0;q=n+28|0;j=n+24|0;p=n+20|0;k=n+16|0
;r=n+12|0;s=n+8|0;o=n+4|0;l=n;m=n+32|0;c[q>>2]=e;c[j>>2]=f;c[p>>2]=g;c[k>>2]=h;c[r>
x3e;2]=c[(c[j>>2]|0)+4>>2];c[s>>2]=c[(c[r>>2]|0)+532>>2];c[o>>2]=c[(
c[r>>2]|0)+104>>2];c[l>>2]=Na[c[(c[s>>2]|0)+104>>2]&1](c[r>>2]|
0,c[(c[q>>2]|0)+112>>2]|0,c[p>>2]|0,c[k>>2]|0,c[o>>2]|0,(c[j>>2]|0)+
76|0,m)|0;if(c[l>>2]|0){s=c[l>>2]|0;i=n;return s|0}b[(c[j>>2]|0)+108+2>>1]=0;b[(c[j>
;>2]|0)+108>>1]=0;c[(c[j>>2]|0)+24>>2]=d[m+1>>0]<<6;c[(c[j>>2]|
0)+24+4>>2]=d[m>>0]<<6;c[(c[j>>2]|0)+24+8>>2]=a[m+2>>0]<<6
;c[(c[j>>2]|0)+24+12>>2]=a[m+3>>0]<<6;c[(c[j>>2]|0)+24+16>>2]=d[m+4
x3e;>0]<<6;c[(c[j>>2]|0)+24+20>>2]=a[m+5>>0]<<6;c[(c[j>>2]|0)+24
+24>>2]=a[m+6>>0]<<6;c[(c[j>>2]|0)+24+28>>2]=d[m+7>>0]<<6;
c[(c[j>>2]|0)+72>>2]=1651078259;if(c[k>>2]&16|0){c[(c[j>>2]|0)+100>>2]=a[
m+5>>0];c[(c[j>>2]|0)+104>>2]=a[m+6>>0];s=c[l>>2]|0;i=n;return s|0}else{c[(c[j
>>2]|0)+100>>2]=a[m+2>>0];c[(c[j>>2]|0)+104>>2]=a[m+3>>0];s=c[l>
;>2]|0;i=n;return s|0}return 0}function hf(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;y=i;i=i+64|0;n=y+44|0;o=y+40|0;p=y+36|0;q=y+32|0;r=y+28|0;s=y+49|0;v=y+24|0;x=y+20|0;u=y+16|0;l=y+48|0;
k=y+12|0;m=y+8|0;t=y+4|0;w=y;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;a[s>>0]=j
;c[v>>2]=c[(c[q>>2]|0)+4>>2];c[x>>2]=c[(c[v>>2]|0)+104>>2];Ns(c[o>
;>2]|0,0,208)|0;if(!((c[r>>2]&2|0)!=0|(a[s>>0]|0)!=0)){if((a[(c[p>>2]|0)+301>>
0]|0)==0?(c[k>>2]=jf(c[p>>2]|0)|0,c[k>>2]|0):0){c[n>>2]=c[k>>2];x=c[n>>
;2]|0;i=y;return x|0}if(d[(c[p>>2]|0)+292>>0]|0)k=c[(c[p>>2]|0)+296>>2]|0;else k=c[(c[(c
[v>>2]|0)+96>>2]|0)+40>>2]|0;c[u>>2]=k;if(!(c[u>>2]|0)){c[n>>2]=153;
x=c[n>>2]|0;i=y;return x|0}a[l>>0]=(c[r>>2]>>16&15|0)!=2;Vg(c[u>>2]|0,c[v
>>2]|0,c[p>>2]|0)|0;if((d[l>>0]|0)!=(d[(c[u>>2]|0)+604>>0]|0)){a[(c[u>>
;2]|0)+604>>0]=a[l>>0]|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[(
c[p>>2]|0)+240>>2]|0)>>>0)break;l=Mb(b[(c[(c[v>>2]|0)+672>>2]|0)+(c[m>
;>2]<<1)>>1]|0,c[(c[p>>2]|0)+72+16>>2]|0)|0;c[(c[(c[p>>2]|0)+244>>
;2]|0)+(c[m>>2]<<2)>>2]=l;c[m>>2]=(c[m>>2]|0)+1}$g(c[p>>2]|0)|0}if(d
[(c[u>>2]|0)+284+52>>0]&1|0)c[r>>2]=c[r>>2]|2;if(d[(c[u>>2]|0)+284+52>
;>0]&2|0){k=(c[u>>2]|0)+284|0;j=568;g=k+68|0;do{c[k>>2]=c[j>>2];k=k+4|0;j=j+4|0}while((k
|0)<(g|0))}a[(c[u>>2]|0)+561>>0]=c[r>>2]&128;c[(c[o>>2]|0)+160>>2]=c
[u>>2];c[(c[o>>2]|0)+164>>2]=c[(c[u>>2]|0)+392>>2]}do if(c[(c[(c[v>>
2]|0)+128>>2]|0)+52>>2]|0)c[(c[o>>2]|0)+84>>2]=0;else{c[t>>2]=Wa[c[(c[v>
x3e;2]|0)+508>>2]&31](c[v>>2]|0,1735162214,c[x>>2]|0,0)|0;if((c[t>>2]|0)==142){c[(c
[o>>2]|0)+84>>2]=0;break}if(!(c[t>>2]|0)){u=Mc(c[x>>2]|0)|0;c[(c[o>>2]|0)+84
x3e;>2]=u;break}c[n>>2]=c[t>>2];x=c[n>>2]|0;i=y;return x|0}while(0);if(!(a[s>>0]|0)){
c[w>>2]=c[c[(c[q>>2]|0)+156>>2]>>2];dc(c[w>>2]|0);c[(c[o>>2]|0)+12
x3e;>2]=c[w>>2]}c[(c[o>>2]|0)+16>>2]=c[r>>2];c[c[o>>2]>>2]=c[v
x3e;>2];c[(c[o>>2]|0)+4>>2]=c[p>>2];c[(c[o>>2]|0)+8>>2]=c[q>>2];
c[(c[o>>2]|0)+24>>2]=c[x>>2];c[n>>2]=0;x=c[n>>2]|0;i=y;return x|0}function jf(
d){d=d|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;h=k+12|0;j=k+8|0;g=k+4|0;f=k;c[h>>2]=d;c[j>>2]=0;if((a[(c[h>
;>2]|0)+300>>0]|0)==0?(c[j>>2]=kf(c[h>>2]|0)|0,c[j>>2]|0):0){j=c[j>>2]|0;
i=k;return j|0}if(a[(c[h>>2]|0)+301>>0]|0){j=c[j>>2]|0;i=k;return j|0}c[f>>2]=c[c[h>
;>2]>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[(c[h>>2]|0)+
240>>2]|0)>>>0)break;d=Mb(b[(c[(c[f>>2]|0)+672>>2]|0)+(c[g>>2]<<
;1)>>1]|0,c[(c[h>>2]|0)+72+16>>2]|0)|0;c[(c[(c[h>>2]|0)+244>>2]|0)+(c[g>
x3e;2]<<2)>>2]=d;c[g>>2]=(c[g>>2]|0)+1}c[g>>2]=0;while(1){if((c[g>>2
]|0)>>>0>=(e[(c[h>>2]|0)+256+8>>1]|0)>>>0)break;c[(c[(c[h>>2]|0
)+256+12>>2]|0)+(c[g>>2]<<3)>>2]=0;c[(c[(c[h>>2]|0)+256+12>>2]|0)+(c
[g>>2]<<3)+4>>2]=0;c[(c[(c[h>>2]|0)+256+16>>2]|0)+(c[g>>2]<<
;3)>>2]=0;c[(c[(c[h>>2]|0)+256+16>>2]|0)+(c[g>>2]<<3)+4>>2]=0;c[g>
;>2]=(c[g>>2]|0)+1}c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(e[(c[h>
x3e;2]|0)+248>>1]|0)>>>0)break;c[(c[(c[h>>2]|0)+252>>2]|0)+(c[g>>2]<
x3c;2)>>2]=0;c[g>>2]=(c[g>>2]|0)+1}f=(c[h>>2]|0)+172|0;g=568;d=f+68|0;do{c[f>>
2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(d|0));c[j>>2]=$g(c[h>>2]|0)|0;if(c[j>>2]|0){
j=c[j>>2]|0;i=k;return j|0}a[(c[h>>2]|0)+301>>0]=1;j=c[j>>2]|0;i=k;return j|0}function kf
(d){d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;l=q+32|0;m=q+28|0;p=q+24|0;n=q+20|0;h=q+16|0;f=q+12|0;k=q
+36|0;g=q+8|0;j=q+4|0;o=q;c[l>>2]=d;c[p>>2]=c[l>>2];c[n>>2]=c[c[l>>2]>>
;2];c[h>>2]=c[(c[n>>2]|0)+100>>2];c[g>>2]=(c[n>>2]|0)+260;a[(c[p>>2]|
0)+300>>0]=1;a[(c[p>>2]|0)+301>>0]=0;c[(c[p>>2]|0)+120>>2]=e[(c[g>>2
]|0)+20>>1];c[(c[p>>2]|0)+132>>2]=e[(c[g>>2]|0)+22>>1];c[(c[p>>2]|0)+
116>>2]=0;c[(c[p>>2]|0)+128>>2]=0;c[(c[p>>2]|0)+140>>2]=0;c[(c[p>>2]|
0)+144>>2]=0;c[(c[p>>2]|0)+240>>2]=c[(c[n>>2]|0)+668>>2];b[(c[p>>2]|
0)+248>>1]=b[(c[g>>2]|0)+18>>1]|0;c[j>>2]=(c[p>>2]|0)+72;a[(c[j>>2]|
0)+37>>0]=0;a[(c[j>>2]|0)+38>>0]=0;c[f>>2]=0;while(1){if((c[f>>2]|0)>=4)break
;c[(c[j>>2]|0)+20+(c[f>>2]<<2)>>2]=0;c[f>>2]=(c[f>>2]|0)+1}j=hc(c[h
x3e;>2]|0,16,0,c[(c[p>>2]|0)+120>>2]|0,0,m)|0;c[(c[p>>2]|0)+124>>2]=j;if(((((c[m>
;>2]|0)==0?(j=hc(c[h>>2]|0,16,0,c[(c[p>>2]|0)+132>>2]|0,0,m)|0,c[(c[p>>2]|0)+136>
;>2]=j,(c[m>>2]|0)==0):0)?(j=hc(c[h>>2]|0,4,0,c[(c[p>>2]|0)+240>>2]|0,0,m)|0,c[(c[p
>>2]|0)+244>>2]=j,(c[m>>2]|0)==0):0)?(j=hc(c[h>>2]|0,4,0,e[(c[p>>2]|0)+248>
;>1]|0,0,m)|0,c[(c[p>>2]|0)+252>>2]=j,(c[m>>2]|0)==0):0)?(b[k>>1]=b[(c[g>>
;2]|0)+16>>1]|0,b[k>>1]=(e[k>>1]|0)+4,c[m>>2]=lf(c[h>>2]|0,b[k>>1]|0
,0,(c[p>>2]|0)+256|0)|0,(c[m>>2]|0)==0):0){b[(c[p>>2]|0)+256+8>>1]=b[k>>1]|0;d
=(c[p>>2]|0)+172|0;f=568;g=d+68|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));c[o
x3e;>2]=c[(c[(c[n>>2]|0)+96>>2]|0)+4>>2];c[(c[n>>2]|0)+688>>2]=c[(c[o>
;>2]|0)+180>>2];if(!(c[(c[n>>2]|0)+688>>2]|0))c[(c[n>>2]|0)+688>>2]=37;c[
m>>2]=Ug(c[p>>2]|0)|0}if(!(c[m>>2]|0)){p=c[m>>2]|0;i=q;return p|0}bf(c[l>>2]|0
);p=c[m>>2]|0;i=q;return p|0}function lf(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;n=i;i=i+16|0;h=n
+8|0;j=n+14|0;k=n+12|0;l=n+4|0;m=n;c[h>>2]=a;b[j>>1]=d;b[k>>1]=f;c[l>>2]=g;f=c[l>
x3e;2]|0;d=f+36|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(d|0));c[c[l>>2]>>2]=c[h>>2];g=hc
(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0;c[(c[l>>2]|0)+12>>2]=g;if(((((c[m>>2]|0)==0?(g
=hc(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+16>>2]=g,(c[m>>2]|0)==0):0)?(
g=hc(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+20>>2]=g,(c[m>>2]|0)==0):0)?(
g=hc(c[h>>2]|0,1,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+24>>2]=g,(c[m>>2]|0)==0):0)?(
h=hc(c[h>>2]|0,2,0,b[k>>1]|0,0,m)|0,c[(c[l>>2]|0)+28>>2]=h,(c[m>>2]|0)==0):0){
b[(c[l>>2]|0)+4>>1]=b[j>>1]|0;b[(c[l>>2]|0)+6>>1]=b[k>>1]|0;m=c[m>
;>2]|0;i=n;return m|0}cf(c[l>>2]|0);m=c[m>>2]|0;i=n;return m|0}function mf(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,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=i;i=i+96|0;h=G+68|0;j=G+64|0;C=G+60|0
;z=G+56|0;E=G+80|0;k=G+78|0;l=G+76|0;t=G+74|0;v=G+52|0;x=G+48|0;u=G+72|0;w=G+44|0;y=G+40|0;r=G+36|0;s=G+32|0;m=G+28|0;n=G+24|0;o
=G+20|0;p=G+16|0;q=G+12|0;B=G+8|0;D=G+4|0;A=G;c[j>>2]=f;c[C>>2]=0;c[(c[j>>2]|0)+244+12>>
2]=0;f=(c[j>>2]|0)+592|0;if((e[(c[j>>2]|0)+216>>1]|0)!=(e[(c[j>>2]|0)+216+2>>1
]|0)){c[f>>2]=103;c[(c[j>>2]|0)+596>>2]=9;c[(c[j>>2]|0)+600>>2]=10}else{c[f>
;>2]=104;c[(c[j>>2]|0)+596>>2]=11;c[(c[j>>2]|0)+600>>2]=12}vf(c[j>>2]|0);
Hf(c[j>>2]|0,c[(c[j>>2]|0)+284+28>>2]&255);a:while(1){a[(c[j>>2]|0)+368>>
0]=a[(c[(c[j>>2]|0)+356>>2]|0)+(c[(c[j>>2]|0)+360>>2]|0)>>0]|0;g=a[10705+(d[(c
[j>>2]|0)+368>>0]|0)>>0]|0;c[(c[j>>2]|0)+372>>2]=g;if((g|0)<0){if(((c[(c[
j>>2]|0)+360>>2]|0)+1|0)>(c[(c[j>>2]|0)+364>>2]|0)){F=196;break}g=2-(_(c[(c[j>
x3e;2]|0)+372>>2]|0,d[(c[(c[j>>2]|0)+356>>2]|0)+((c[(c[j>>2]|0)+360>>2]|0)+1)
x3e;>0]|0)|0)|0;c[(c[j>>2]|0)+372>>2]=g}if(((c[(c[j>>2]|0)+360>>2]|0)+(c[(c[j>
x3e;2]|0)+372>>2]|0)|0)>(c[(c[j>>2]|0)+364>>2]|0)){F=196;break}c[(c[j>>2]|0)+28>
;>2]=(c[(c[j>>2]|0)+16>>2]|0)-(d[10961+(d[(c[j>>2]|0)+368>>0]|0)>>0]>
;>4);f=c[j>>2]|0;if((c[(c[j>>2]|0)+28>>2]|0)<0){F=10;break}c[(c[j>>2]|0)+32>
;>2]=(c[f+28>>2]|0)+(d[10961+(d[(c[j>>2]|0)+368>>0]|0)>>0]&15);f=c[j>>
;2]|0;if((c[(c[j>>2]|0)+32>>2]|0)>>>0>(c[(c[j>>2]|0)+20>>2]|0)>
x3e;>0){F=12;break}a[f+376>>0]=1;c[(c[j>>2]|0)+12>>2]=0;c[z>>2]=(c[(c[j>>
2]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<2);a[E>>0]=a[(c[j>>2]|0)+368
x3e;>0]|0;b:do switch(d[E>>0]|0){case 5:case 4:case 3:case 2:case 1:case 0:{b[k>>1]=(d[E>>0]
x26;1)<<14;b[l>>1]=b[k>>1]^16384;if((d[E>>0]|0)<4){b[(c[j>>2]|0)+284+10
x3e;>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+10+2>>1]=b[l>>1]|0;b[(c[j>>2]|0)+284+
6>>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+6+2>>1]=b[l>>1]|0}if(!(d[E>>0]&
;2)){b[(c[j>>2]|0)+284+14>>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+14+2>>1]=b[l>
x3e;1]|0}vf(c[j>>2]|0);break}case 7:case 6:{if(!((Qf(c[j>>2]|0,c[(c[z>>2]|0)+4>>2]&
65535,c[c[z>>2]>>2]&65535,d[(c[j>>2]|0)+368>>0]|0,(c[j>>2]|0)+284+10|0)|0
)&255)){g=(c[j>>2]|0)+284+6|0;f=(c[j>>2]|0)+284+10|0;b[g>>1]=b[f>>1]|0;b[g+2>
x3e;1]=b[f+2>>1]|0;vf(c[j>>2]|0)}break}case 9:case 8:{if(!((Qf(c[j>>2]|0,c[(c[z>>2]|0)+4
>>2]&65535,c[c[z>>2]>>2]&65535,d[(c[j>>2]|0)+368>>0]|0,(c[j>>
;2]|0)+284+14|0)|0)&255))vf(c[j>>2]|0);break}case 10:{b[t>>1]=c[(c[z>>2]|0)+4>>2];c
[x>>2]=b[t>>1];b[t>>1]=c[c[z>>2]>>2];c[v>>2]=b[t>>1];Rf(c[
j>>2]|0,c[v>>2]|0,c[x>>2]|0,(c[j>>2]|0)+284+10|0)|0;g=(c[j>>2]|0)+284+6|0;f=(c
[j>>2]|0)+284+10|0;b[g>>1]=b[f>>1]|0;b[g+2>>1]=b[f+2>>1]|0;vf(c[j>>2
]|0);break}case 11:{b[u>>1]=c[(c[z>>2]|0)+4>>2];c[y>>2]=b[u>>1];b[u>>
;1]=c[c[z>>2]>>2];c[w>>2]=b[u>>1];Rf(c[j>>2]|0,c[w>>2]|0,c[y>
x3e;2]|0,(c[j>>2]|0)+284+14|0)|0;vf(c[j>>2]|0);break}case 12:{c[c[z>>2]>>2]=b[(c[j>
x3e;2]|0)+284+10>>1];c[(c[z>>2]|0)+4>>2]=b[(c[j>>2]|0)+284+10+2>>1];break}case
13:{c[c[z>>2]>>2]=b[(c[j>>2]|0)+284+14>>1];c[(c[z>>2]|0)+4>>2]=b[(c
[j>>2]|0)+284+14+2>>1];break}case 14:{g=(c[j>>2]|0)+284+14|0;f=(c[j>>2]|0)+284+10|0;b[g
x3e;>1]=b[f>>1]|0;b[g+2>>1]=b[f+2>>1]|0;vf(c[j>>2]|0);break}case 15:{Sf(c[j>
x3e;2]|0,c[z>>2]|0);break}case 16:{b[(c[j>>2]|0)+284>>1]=c[c[z>>2]>>2];break}case
17:{b[(c[j>>2]|0)+284+2>>1]=c[c[z>>2]>>2];break}case 18:{b[(c[j>>2]|0)+284+4
x3e;>1]=c[c[z>>2]>>2];break}case 19:{Tf(c[j>>2]|0,c[z>>2]|0);break}case 20:{Uf(c[j
x3e;>2]|0,c[z>>2]|0);break}case 21:{Vf(c[j>>2]|0,c[z>>2]|0);break}case 22:{Wf(c[j>>
2]|0,c[z>>2]|0);break}case 23:if((c[c[z>>2]>>2]|0)<0){c[(c[j>>2]|0)+12>>2
]=132;break b}else{c[(c[j>>2]|0)+284+20>>2]=c[c[z>>2]>>2];break b}case 24:{c[(c[j>
x3e;2]|0)+284+28>>2]=1;c[(c[j>>2]|0)+568>>2]=33;break}case 25:{c[(c[j>>2]|0)+284+28>
;>2]=0;c[(c[j>>2]|0)+568>>2]=34;break}case 26:{c[(c[j>>2]|0)+284+24>>2]=c[c[z>
x3e;2]>>2];break}case 27:{Xf(c[j>>2]|0,c[z>>2]|0);break}case 28:{g=(c[j>>2]|0)+360|0;c[g
>>2]=(c[g>>2]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|0)+360>>2]|0)<
;0)c[(c[j>>2]|0)+12>>2]=132;a[(c[j>>2]|0)+376>>0]=0;break}case 29:{c[(c[j>>2]|
0)+284+36>>2]=c[c[z>>2]>>2];break}case 30:{c[(c[j>>2]|0)+284+40>>2]=c[c[z>
;>2]>>2];break}case 31:{c[(c[j>>2]|0)+284+44>>2]=c[c[z>>2]>>2]>>
;10;break}case 32:{c[(c[z>>2]|0)+4>>2]=c[c[z>>2]>>2];break}case 127:case 126:case 89:case
33:break;case 34:{c[(c[j>>2]|0)+32>>2]=0;break}case 35:{c[r>>2]=c[c[z>>2]>>2];
c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>>2];c[(c[z>>2]|0)+4>>2]=c[r>>
;2];break}case 36:{c[c[z>>2]>>2]=c[(c[j>>2]|0)+16>>2];break}case 37:{c[s>>2]=c
[c[z>>2]>>2];if((c[s>>2]|0)>0?(c[s>>2]|0)<=(c[(c[j>>2]|0)+28>
x3e;2]|0):0){c[c[z>>2]>>2]=c[(c[(c[j>>2]|0)+24>>2]|0)+((c[(c[j>>2]|0)+28>
x3e;2]|0)-(c[s>>2]|0)<<2)>>2];break b}c[(c[j>>2]|0)+12>>2]=134;break}case 38:{
Zf(c[j>>2]|0,c[z>>2]|0);break}case 39:{_f(c[j>>2]|0,c[z>>2]|0);break}case 40:{$f(c[j>
;>2]|0,c[z>>2]|0);break}case 41:{bg(c[j>>2]|0,c[z>>2]|0);break}case 42:{cg(c[j>>2]|
0,c[z>>2]|0);break}case 43:{dg(c[j>>2]|0,c[z>>2]|0);break}case 44:{eg(c[j>>2]|0,c[z>
;>2]|0);break}case 45:{fg(c[j>>2]|0,c[z>>2]|0);break}case 47:case 46:{gg(c[j>>2]|0,c[z>
x3e;2]|0);break}case 49:case 48:{hg(c[j>>2]|0,c[z>>2]|0);break}case 51:case 50:{kg(c[j>>2]|0,c[z
x3e;>2]|0);break}case 53:case 52:{ng(c[j>>2]|0,c[z>>2]|0);break}case 55:case 54:{og(c[j>>2]|0
,c[z>>2]|0);break}case 56:{pg(c[j>>2]|0,c[z>>2]|0);break}case 57:{rg(c[j>>2]|0,c[z>
x3e;2]|0);break}case 59:case 58:{sg(c[j>>2]|0,c[z>>2]|0);break}case 60:{tg(c[j>>2]|0,c[z>>
;2]|0);break}case 61:{c[(c[j>>2]|0)+284+28>>2]=2;c[(c[j>>2]|0)+568>>2]=35;break}case 63:
case 62:{ug(c[j>>2]|0,c[z>>2]|0);break}case 64:{vg(c[j>>2]|0,c[z>>2]|0);break}case 65:{wg
(c[j>>2]|0,c[z>>2]|0);break}case 66:{c[m>>2]=c[c[z>>2]>>2];if((c[m>>
2]|0)>>>0>=(e[(c[j>>2]|0)+468>>1]|0)>>>0)if(a[(c[j>>2]|0)+561
x3e;>0]|0){F=81;break b}else break b;else{c[(c[(c[j>>2]|0)+472>>2]|0)+(c[m>>2]<<2)
x3e;>2]=c[(c[z>>2]|0)+4>>2];break b}}case 67:{c[n>>2]=c[c[z>>2]>>2];if((c
[n>>2]|0)>>>0<(e[(c[j>>2]|0)+468>>1]|0)>>>0){c[c[z>>2
]>>2]=c[(c[(c[j>>2]|0)+472>>2]|0)+(c[n>>2]<<2)>>2];break b}if(a[(c[j
>>2]|0)+561>>0]|0)F=81;else c[c[z>>2]>>2]=0;break}case 68:{c[o>>2]=c[c[z>
x3e;2]>>2];f=c[j>>2]|0;if((c[o>>2]|0)>>>0>=(c[(c[j>>2]|0)+380>
x3e;2]|0)>>>0)if(a[f+561>>0]|0){F=81;break b}else break b;else{Ua[c[f+596>>2]&31](c[j>
;>2]|0,c[o>>2]|0,c[(c[z>>2]|0)+4>>2]|0);break b}}case 69:{c[p>>2]=c[c[z>>
2]>>2];f=c[j>>2]|0;if((c[p>>2]|0)>>>0<(c[(c[j>>2]|0)+380>>
2]|0)>>>0){g=Ya[c[f+592>>2]&127](c[j>>2]|0,c[p>>2]|0)|0;c[c[z>>2]>
;>2]=g;break b}if(a[f+561>>0]|0)F=81;else c[c[z>>2]>>2]=0;break}case 71:case 70:{yg(c[j>
x3e;2]|0,c[z>>2]|0);break}case 72:{zg(c[j>>2]|0,c[z>>2]|0);break}case 74:case 73:{Ag(c[j>>
;2]|0,c[z>>2]|0);break}case 75:{g=Bg(c[j>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 76:{g=Bg(c[
j>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 77:{a[(c[j>>2]|0)+284+32>>0]=1;break}case
78:{a[(c[j>>2]|0)+284+32>>0]=0;break}case 79:{c[(c[j>>2]|0)+12>>2]=135;break}case 80:{c
[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<(c[(c[z>>2]|0)+4>>2]|0)&1;break
}case 81:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<=(c[(c[z>>2]|0)+4>>2]|
0)&1;break}case 82:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)>(c[(c[z>>2]|0)+4
>>2]|0)&1;break}case 83:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)>=(c[(c[z>
;>2]|0)+4>>2]|0)&1;break}case 84:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)==(
c[(c[z>>2]|0)+4>>2]|0)&1;break}case 85:{c[c[z>>2]>>2]=(c[c[z>>2]>>
;2]|0)!=(c[(c[z>>2]|0)+4>>2]|0)&1;break}case 86:{g=((Oa[c[(c[j>>2]|0)+568>>2]&
63](c[j>>2]|0,c[c[z>>2]>>2]|0,0)|0)&127|0)==64&1;c[c[z>>2]>>2]=g;break
}case 87:{g=((Oa[c[(c[j>>2]|0)+568>>2]&63](c[j>>2]|0,c[c[z>>2]>>2]|0,0)|0
)&127|0)==0&1;c[c[z>>2]>>2]=g;break}case 88:{Cg(c[j>>2]|0,c[z>>2]|0);break}case
90:{if(c[c[z>>2]>>2]|0)f=(c[(c[z>>2]|0)+4>>2]|0)!=0;else f=0;c[c[z>>2]>
x3e;2]=f&1;break}case 91:{if(c[c[z>>2]>>2]|0)f=1;else f=(c[(c[z>>2]|0)+4>>2]|0)!=0;
c[c[z>>2]>>2]=f&1;break}case 92:{c[c[z>>2]>>2]=((c[c[z>>2]>>2]|
0)!=0^1)&1;break}case 93:{Dg(c[j>>2]|0,c[z>>2]|0);break}case 94:{b[(c[j>>2]|0)+284+48>
x3e;1]=c[c[z>>2]>>2];break}case 95:{b[(c[j>>2]|0)+284+50>>1]=c[c[z>>2]>
x3e;2];break}case 96:{g=c[z>>2]|0;c[g>>2]=(c[g>>2]|0)+(c[(c[z>>2]|0)+4>>2]|0);
break}case 97:{g=c[z>>2]|0;c[g>>2]=(c[g>>2]|0)-(c[(c[z>>2]|0)+4>>2]|0);break}case
98:if(!(c[(c[z>>2]|0)+4>>2]|0)){c[(c[j>>2]|0)+12>>2]=133;break b}else{g=Ub(c[c[z>
x3e;2]>>2]|0,64,c[(c[z>>2]|0)+4>>2]|0)|0;c[c[z>>2]>>2]=g;break b}case 99:{g=xb
(c[c[z>>2]>>2]|0,c[(c[z>>2]|0)+4>>2]|0,64)|0;c[c[z>>2]>>2]=g;break}case
100:{g=c[c[z>>2]>>2]|0;c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<0?0-g|0
:g;break}case 101:{c[c[z>>2]>>2]=0-(c[c[z>>2]>>2]|0);break}case 102:{c[c[z>>2]
x3e;>2]=c[c[z>>2]>>2]&-64;break}case 103:{c[c[z>>2]>>2]=(c[c[z>>2]
x3e;>2]|0)+63&-64;break}case 107:case 106:case 105:case 104:{g=Oa[c[(c[j>>2]|0)+568>>2]&63](c
[j>>2]|0,c[c[z>>2]>>2]|0,c[(c[j>>2]|0)+244+20+((d[(c[j>>2]|0)+368>>0
]|0)-104<<2)>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 111:case 110:case 109:case 108:{g=If(c[
j>>2]|0,c[c[z>>2]>>2]|0,c[(c[j>>2]|0)+244+20+((d[(c[j>>2]|0)+368>>0]|
0)-108<<2)>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 112:{c[q>>2]=c[c[z>>2
]>>2];if((c[q>>2]|0)>>>0>=(c[(c[j>>2]|0)+380>>2]|0)>>>
;0)if(a[(c[j>>2]|0)+561>>0]|0){F=81;break b}else break b;else{g=Mb(c[(c[z>>2]|0)+4>>2]|0
,c[(c[j>>2]|0)+244+16>>2]|0)|0;c[(c[(c[j>>2]|0)+384>>2]|0)+(c[q>>2]<<
;2)>>2]=g;break b}}case 114:case 113:{Dg(c[j>>2]|0,c[z>>2]|0);break}case 117:case 116:case 115:{Eg
(c[j>>2]|0,c[z>>2]|0);break}case 118:{Fg(c[j>>2]|0,16384,c[c[z>>2]>>2]|0);c[(c
[j>>2]|0)+284+28>>2]=6;c[(c[j>>2]|0)+568>>2]=36;break}case 119:{Fg(c[j>>2]|0,11585
,c[c[z>>2]>>2]|0);c[(c[j>>2]|0)+284+28>>2]=7;c[(c[j>>2]|0)+568>>2]=37
;break}case 120:{if(c[(c[z>>2]|0)+4>>2]|0){g=(c[j>>2]|0)+360|0;c[g>>2]=(c[g>>2
]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|0)+360>>2]|0)<0)c[(c[j>>2]|0)+12>
;>2]=132;a[(c[j>>2]|0)+376>>0]=0}break}case 121:{if(!(c[(c[z>>2]|0)+4>>2]|0)){g=(c[
j>>2]|0)+360|0;c[g>>2]=(c[g>>2]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|
0)+360>>2]|0)<0)c[(c[j>>2]|0)+12>>2]=132;a[(c[j>>2]|0)+376>>0]=0}break}case
122:{c[(c[j>>2]|0)+284+28>>2]=5;c[(c[j>>2]|0)+568>>2]=38;break}case 123:{$f(c[j>
x3e;2]|0,c[z>>2]|0);break}case 124:{c[(c[j>>2]|0)+284+28>>2]=4;c[(c[j>>2]|0)+568>
x3e;2]=39;break}case 125:{c[(c[j>>2]|0)+284+28>>2]=3;c[(c[j>>2]|0)+568>>2]=40;break}case
128:{Gg(c[j>>2]|0,c[z>>2]|0);break}case 129:{Hg(c[j>>2]|0,c[z>>2]|0);break}case 130:{Ig
(c[j>>2]|0,c[z>>2]|0);break}case 132:case 131:{$f(c[j>>2]|0,c[z>>2]|0);break}case 133:{Jg
(c[j>>2]|0,c[z>>2]|0);break}case 135:case 134:{Kg(c[j>>2]|0,c[z>>2]|0);break}case 136:{Lg
(c[j>>2]|0,c[z>>2]|0);break}case 137:{Mg(c[j>>2]|0,c[z>>2]|0);break}case 138:{Ng(c[j>
;>2]|0,c[z>>2]|0);break}case 139:{if((c[(c[z>>2]|0)+4>>2]|0)>(c[c[z>>2]>
x3e;2]|0))c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>>2];break}case 140:{if((c[(c[z>>2]|0)+
4>>2]|0)<(c[c[z>>2]>>2]|0))c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>
x3e;2];break}case 141:{Og(c[j>>2]|0,c[z>>2]|0);break}case 142:{Pg(c[j>>2]|0,c[z>>2]|0);break
}case 143:{$f(c[j>>2]|0,c[z>>2]|0);break}default:{if((d[E>>0]|0)>=224){Qg(c[j>>2]|0
,c[z>>2]|0);break b}if((d[E>>0]|0)>=192){Rg(c[j>>2]|0,c[z>>2]|0);break b}if((d[E>
;>0]|0)>=184){Sg(c[j>>2]|0,c[z>>2]|0);break b}f=c[j>>2]|0;g=c[z>>2]|0;if((d[E
x3e;>0]|0)>=176){Tg(f,g);break b}else{$f(f,g);break b}}}while(0);if((F|0)==81){F=0;c[(c[j>>2]|0)+12>>
;2]=134}f=c[j>>2]|0;if(c[(c[j>>2]|0)+12>>2]|0){if((c[f+12>>2]|0)!=128)break;c[B>>
;2]=c[(c[j>>2]|0)+416>>2];c[D>>2]=(c[B>>2]|0)+(c[(c[j>>2]|0)+408>>2]
x3c;<4);while(1){if((c[B>>2]|0)>>>0>=(c[D>>2]|0)>>>0){F=186;break a}
if(d[(c[B>>2]|0)+12>>0]|0?(d[(c[j>>2]|0)+368>>0]|0)==(c[(c[B>>2]|0)+8>>
;2]&255|0):0)break;c[B>>2]=(c[B>>2]|0)+16}f=c[j>>2]|0;if((c[(c[j>>2]|0)+428>
x3e;2]|0)>=(c[(c[j>>2]|0)+432>>2]|0)){F=183;break}c[A>>2]=(c[(c[j>>2]|0)+436>
x3e;2]|0)+(c[f+428>>2]<<4);c[c[A>>2]>>2]=c[(c[j>>2]|0)+352>>2];c[(c[
A>>2]|0)+4>>2]=(c[(c[j>>2]|0)+360>>2]|0)+1;c[(c[A>>2]|0)+8>>2]=1;c[(
c[A>>2]|0)+12>>2]=c[(c[B>>2]|0)+4>>2];if(((ag(c[j>>2]|0,c[c[B>>2]>
;>2]|0,c[(c[B>>2]|0)+4>>2]|0)|0)&255|0)==1)break}else{c[(c[j>>2]|0)+16>>2]=c[f
+32>>2];if(a[(c[j>>2]|0)+376>>0]|0){g=(c[j>>2]|0)+360|0;c[g>>2]=(c[g>>
;2]|0)+(c[(c[j>>2]|0)+372>>2]|0)}g=(c[C>>2]|0)+1|0;c[C>>2]=g;if((g|0)>1e6){F=190;break
}}f=c[j>>2]|0;if((c[(c[j>>2]|0)+360>>2]|0)>=(c[(c[j>>2]|0)+364>>2]|0)){F=
192;break}if(!((a[f+488>>0]|0)!=0^1)){F=195;break}}if((F|0)==10)c[f+12>>2]=129;else if((F|0)==12)c[f+12>
;>2]=130;else if((F|0)==183)c[f+12>>2]=134;else if((F|0)==186)c[(c[j>>2]|0)+12>>2]=128;else if
((F|0)==190){c[h>>2]=139;F=c[h>>2]|0;i=G;return F|0}else if((F|0)==192)if((c[f+428>>2]|0)>0)c
[(c[j>>2]|0)+12>>2]=131;else F=195;else if((F|0)==196)c[(c[j>>2]|0)+12>>2]=131;if((F|0)==
195){c[h>>2]=0;F=c[h>>2]|0;i=G;return F|0}if(c[(c[j>>2]|0)+12>>2]|0?(a[(c[j>>2
]|0)+488>>0]|0)==0:0)a[(c[(c[j>>2]|0)+4>>2]|0)+301>>0]=0;c[h>>2]=c[(c[j>
x3e;2]|0)+12>>2];F=c[h>>2]|0;i=G;return F|0}function nf(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[(c[(c[e>>2]|0)+384>>2]|0)+(c[f>>2]<<2)
x3e;>2]|0;b=Mb(b,of(c[e>>2]|0)|0)|0;i=d;return b|0}function of(a){a=a|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+
8|0;f=h+4|0;g=h;c[e>>2]=a;do if(!(c[(c[e>>2]|0)+244+12>>2]|0)){a=c[e>>2]|0;if(!(b[(c[e
x3e;>2]|0)+284+10+2>>1]|0)){c[(c[e>>2]|0)+244+12>>2]=c[a+244>>2];break}d=c[e>
x3e;2]|0;if(!(b[a+284+10>>1]|0)){c[(c[e>>2]|0)+244+12>>2]=c[d+244+4>>2];break}else{c[f
x3e;>2]=xb(b[d+284+10>>1]|0,c[(c[e>>2]|0)+244>>2]|0,16384)|0;c[g>>2]=xb(b[(c[e>
;>2]|0)+284+10+2>>1]|0,c[(c[e>>2]|0)+244+4>>2]|0,16384)|0;g=pf(c[f>>2]|0,c[g>
x3e;2]|0)|0;c[(c[e>>2]|0)+244+12>>2]=g;break}}while(0);i=h;return c[(c[e>>2]|0)+244+12>>
2]|0}function pf(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;f=d+8|0;e=d;c[g>>2]=a;c[f>>2]=b;
c[e>>2]=c[g>>2];c[e+4>>2]=c[f>>2];b=me(e)|0;i=d;return b|0}function qf(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;d=c[h
x3e;>2]|0;d=Vb(d,of(c[g>>2]|0)|0)|0;c[(c[(c[g>>2]|0)+384>>2]|0)+(c[f>>2]<<
;2)>>2]=d;i=e;return}function rf(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;b=c[h>>2]|0;b=Vb(b,of(c[g>>2]|0)|0)|0;d=(c[(c[g>>
;2]|0)+384>>2]|0)+(c[f>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+b;i=e;return}function sf(
a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f+4|0;d=f;c[e>>2]=a;c[d>>2]=b;i=f;return c[(c[(c[e>>
;2]|0)+384>>2]|0)+(c[d>>2]<<2)>>2]|0}function tf(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;c[(c[(c[g>>2]|0)+384
>>2]|0)+(c[f>>2]<<2)>>2]=c[h>>2];i=e;return}function uf(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[(c[h>
;>2]|0)+384>>2]|0)+(c[g>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+(c[f>>2]|
0);i=e;return}function vf(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=a;d=(c[e>>2]|0)+284|0;do if((b[(
c[e>>2]|0)+284+14>>1]|0)!=16384){a=(c[e>>2]|0)+284+10|0;if((b[d+14+2>>1]|0)==16384){c[(c
[e>>2]|0)+564>>2]=b[a+2>>1]<<16;break}else{d=(_(b[a>>1]|0,b[(c[e>>2]|
0)+284+14>>1]|0)|0)<<2;d=d+((_(b[(c[e>>2]|0)+284+10+2>>1]|0,b[(c[e>>2]|0)+284+
14+2>>1]|0)|0)<<2)|0;c[(c[e>>2]|0)+564>>2]=d;break}}else c[(c[e>>2]|0)+564>
;>2]=b[d+10>>1]<<16;while(0);a=c[e>>2]|0;do if((b[(c[e>>2]|0)+284+10>>1]|
0)!=16384){d=(c[e>>2]|0)+572|0;if((b[a+284+10+2>>1]|0)==16384){c[d>>2]=42;break}else{c[d>>
;2]=43;break}}else c[a+572>>2]=41;while(0);a=c[e>>2]|0;do if((b[(c[e>>2]|0)+284+6>>1]|0)!=
16384){d=(c[e>>2]|0)+576|0;if((b[a+284+6+2>>1]|0)==16384){c[d>>2]=42;break}else{c[d>>2]=
44;break}}else c[a+576>>2]=41;while(0);c[(c[e>>2]|0)+584>>2]=4;c[(c[e>>2]|0)+588>
x3e;2]=5;do if((c[(c[e>>2]|0)+564>>2]|0)==1073741824){a=c[e>>2]|0;if((b[(c[e>>2]|0)+284+
14>>1]|0)==16384){c[a+584>>2]=6;c[(c[e>>2]|0)+588>>2]=7;break}if((b[a+284+14+2>>
;1]|0)==16384){c[(c[e>>2]|0)+584>>2]=8;c[(c[e>>2]|0)+588>>2]=9}}while(0);d=c[(c[e>
x3e;2]|0)+564>>2]|0;if((((c[(c[e>>2]|0)+564>>2]|0)<0?0-d|0:d)|0)>=67108864){e=c[e>
x3e;2]|0;e=e+244|0;e=e+12|0;c[e>>2]=0;i=f;return}c[(c[e>>2]|0)+564>>2]=1073741824;e=c[e>>
;2]|0;e=e+244|0;e=e+12|0;c[e>>2]=0;i=f;return}function wf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=i;i=i+16|0;h=
f+8|0;e=f+4|0;g=f;c[h>>2]=a;c[e>>2]=b;c[g>>2]=d;c[h>>2]=c[h>>2];c[g>>
;2]=c[g>>2];i=f;return c[e>>2]|0}function xf(a,b,d){a=a|0;b=b|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]=b;c[e>>2]=d;c[h>>2]=c[h>>2];c[g>>2]=
c[g>>2];i=f;return c[e>>2]|0}function yf(a,d,e){a=a|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]=a;c[j>>2]=d;c[h>>2]=e;a=zf(c[j>>2]|0,c[h>>2]|0,b[(c[g>
x3e;2]|0)+284+10>>1]|0,b[(c[g>>2]|0)+284+10+2>>1]|0)|0;i=f;return a|0}function zf(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;h=i;i=i+64|0;t=h+48|0;r=h+44|0;s=h+40|0;q=h+36|0;p=
h+32|0;k=h+28|0;n=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;l=h+8|0;o=h+4|0;j=h;c[t>>2]=a;c[r>>2]=b;c[s>>2
]=d;c[q>>2]=e;c[f>>2]=_(c[t>>2]&65535,c[s>>2]|0)|0;c[p>>2]=_(c[t>>
;2]>>16,c[s>>2]|0)|0;c[l>>2]=(c[f>>2]|0)+(c[p>>2]<<16);c[n>>
;2]=(c[p>>2]>>16)+(c[f>>2]>>31)+((c[l>>2]|0)>>>0<(c[f>
;>2]|0)>>>0&1);c[f>>2]=_(c[r>>2]&65535,c[q>>2]|0)|0;c[p>>2
]=_(c[r>>2]>>16,c[q>>2]|0)|0;c[o>>2]=(c[f>>2]|0)+(c[p>>2]<<
;16);c[m>>2]=(c[p>>2]>>16)+(c[f>>2]>>31)+((c[o>>2]|0)>>>
;0<(c[f>>2]|0)>>>0&1);c[j>>2]=(c[l>>2]|0)+(c[o>>2]|0);c[g>
x3e;2]=(c[n>>2]|0)+(c[m>>2]|0)+((c[j>>2]|0)>>>0<(c[l>>2]|0)>>
;>0&1);c[k>>2]=c[g>>2]>>31;c[f>>2]=(c[j>>2]|0)+(c[k>>2]|0);
c[g>>2]=(c[g>>2]|0)+((c[k>>2]|0)+((c[f>>2]|0)>>>0<(c[j>>2]|
0)>>>0&1));c[j>>2]=c[f>>2];c[f>>2]=(c[j>>2]|0)+8192;c[g>>2
]=(c[g>>2]|0)+((c[f>>2]|0)>>>0<(c[j>>2]|0)>>>0&1);i=h;return
c[g>>2]<<18|(c[f>>2]|0)>>>14|0}function Af(a,d,e){a=a|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]=a;c[j>>2]=d;c[h>>2]=e;a=zf(c[j>>2]|0,c[h
x3e;>2]|0,b[(c[g>>2]|0)+284+6>>1]|0,b[(c[g>>2]|0)+284+6+2>>1]|0)|0;i=f;return a|0}function
Bf(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;p=i;i=i+32|0;k=p+12|0;l=p+8|0;m=p+16|0;n=p+4|0;o=p;c[k>>
;2]=f;c[l>>2]=g;b[m>>1]=h;c[n>>2]=j;c[o>>2]=b[(c[k>>2]|0)+284+14>>1];
if(c[o>>2]|0){h=xb(c[n>>2]|0,c[o>>2]<<16,c[(c[k>>2]|0)+564>>2]|0)|0;
g=(c[(c[l>>2]|0)+16>>2]|0)+(e[m>>1]<<3)|0;c[g>>2]=(c[g>>2]|0)+h;g=(c
[(c[l>>2]|0)+24>>2]|0)+(e[m>>1]|0)|0;a[g>>0]=d[g>>0]|8}c[o>>2]=b[(c[
k>>2]|0)+284+14+2>>1];if(!(c[o>>2]|0)){i=p;return}o=xb(c[n>>2]|0,c[o>>2]<
x3c;16,c[(c[k>>2]|0)+564>>2]|0)|0;g=(c[(c[l>>2]|0)+16>>2]|0)+(e[m>>1]<<
;3)+4|0;c[g>>2]=(c[g>>2]|0)+o;g=(c[(c[l>>2]|0)+24>>2]|0)+(e[m>>1]|0)|0;a[g>
;>0]=d[g>>0]|16;i=p;return}function Cf(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;n=i;i=i+32|0;
h=n+12|0;j=n+8|0;k=n+16|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>2]=d;b[k>>1]=f;c[l>>2]=g;c[m>
x3e;2]=b[(c[h>>2]|0)+284+14>>1];if(c[m>>2]|0){f=xb(c[l>>2]|0,c[m>>2]<<
;16,c[(c[h>>2]|0)+564>>2]|0)|0;d=(c[(c[j>>2]|0)+12>>2]|0)+(e[k>>1]<<
3)|0;c[d>>2]=(c[d>>2]|0)+f}c[m>>2]=b[(c[h>>2]|0)+284+14+2>>1];if(!(c[m>
x3e;2]|0)){i=n;return}m=xb(c[l>>2]|0,c[m>>2]<<16,c[(c[h>>2]|0)+564>>2]|0)|0;d=(
c[(c[j>>2]|0)+12>>2]|0)+(e[k>>1]<<3)+4|0;c[d>>2]=(c[d>>2]|0)+m;i=n;return
}function Df(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;k=i;i=i+16|0;o=k+8|0;m=k+4|0;l=k+12|0;n=k;c[o>>2
]=f;c[m>>2]=g;b[l>>1]=h;c[n>>2]=j;c[o>>2]=c[o>>2];g=(c[(c[m>>2]|0)+16
>>2]|0)+((e[l>>1]|0)<<3)|0;c[g>>2]=(c[g>>2]|0)+(c[n>>2]|0);g=(c[(c[m
>>2]|0)+24>>2]|0)+(e[l>>1]|0)|0;a[g>>0]=d[g>>0]|0|8;i=k;return}function Ef(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;h=i;i=i+16|0;m=h+8|0;l=h+4|0;k=h+12|0;j=h;c[m>>2]=a;c[l>>
;2]=d;b[k>>1]=f;c[j>>2]=g;c[m>>2]=c[m>>2];d=(c[(c[l>>2]|0)+12>>2]|0)+((
e[k>>1]|0)<<3)|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);i=h;return}function Ff(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;k=i;i=i+16|0;o=k+8|0;m=k+4|0;l=k+12|0;n=k;c[o>>2]=f;c[m>>
2]=g;b[l>>1]=h;c[n>>2]=j;c[o>>2]=c[o>>2];g=(c[(c[m>>2]|0)+16>>2]|0)+((
e[l>>1]|0)<<3)+4|0;c[g>>2]=(c[g>>2]|0)+(c[n>>2]|0);g=(c[(c[m>>2]|0)+
24>>2]|0)+(e[l>>1]|0)|0;a[g>>0]=d[g>>0]|0|16;i=k;return}function Gf(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;h=i;i=i+16|0;m=h+8|0;l=h+4|0;k=h+12|0;j=h;c[m>>2]=a;c[l>>2]=d;b[k>
x3e;1]=f;c[j>>2]=g;c[m>>2]=c[m>>2];d=(c[(c[l>>2]|0)+12>>2]|0)+((e[k>>
;1]|0)<<3)+4|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);i=h;return}function Hf(b,e){b=b|0;e=e|0;var
f=0,g=0,h=0;g=i;i=i+16|0;f=g;h=g+4|0;c[f>>2]=b;a[h>>0]=e;switch(d[h>>0]|0|0){case 5:{c[(c[f>
x3e;2]|0)+568>>2]=38;break}case 1:{c[(c[f>>2]|0)+568>>2]=33;break}case 4:{c[(c[f>>2]|0)+
568>>2]=39;break}case 3:{c[(c[f>>2]|0)+568>>2]=40;break}case 0:{c[(c[f>>2]|0)+568>
x3e;2]=34;break}case 2:{c[(c[f>>2]|0)+568>>2]=35;break}case 6:{c[(c[f>>2]|0)+568>>2]=36;
break}case 7:{c[(c[f>>2]|0)+568>>2]=37;break}default:{}}i=g;return}function If(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;j=g+12|0;e=g+8|0;h=g+4|0;f=g;c[j>>2]=a;c[e>>2]=b;c[h>>2]=d;c[j>
;>2]=c[j>>2];d=c[e>>2]|0;b=c[h>>2]|0;if((c[e>>2]|0)>=0){j=d+b|0;c[f>>
;2]=j;c[f>>2]=(c[e>>2]|0)!=0&(c[f>>2]|0)<0?0:j;j=c[f>>2]|0;i=g;return j|0}else
{j=d-b|0;c[f>>2]=j;c[f>>2]=(c[f>>2]|0)>0?0:j;j=c[f>>2]|0;i=g;return j|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,j=0;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>
;2]=b;c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e
x3e;>2]|0)+32&-64)|0;c[g>>2]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;
return j|0}c[g>>2]=(c[e>>2]|0)+(c[f>>2]|0)+32;if((c[e>>2]|0)!=0&(c[g>>2]|
0)>0){c[g>>2]=c[g>>2]&-64;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>
;>2]|0;i=h;return j|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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f
=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|
0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)+63&-64)|0;c[g>>2]=j;c[g>>2]=(c[g>>
;2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2]=(c[e>>2]|0)+(c[f>>2]|0)+63;if((c[e
x3e;>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2]=c[g>>2]&-64;j=c[g>>2]|0;i=h;return
j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c[j>>2]=
c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)&-64)|0;c[g>>2
]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2]=(c[e>>2]|
0)+(c[f>>2]|0);if((c[e>>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2]=c[g>>2]&
;-64;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|0}return 0}function Mf(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;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;
c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|0)>=0){j=((c[e>>2]|0)+(c[f>>
;2]|0)&-64)+32|0;c[g>>2]=j;c[g>>2]=(c[e>>2]|0)!=0&(c[g>>2]|0)<0?0:j;j=c[g
>>2]|0;i=h;return j|0}else{j=0-(((c[f>>2]|0)-(c[e>>2]|0)&-64)+32)|0;c[g>>2]=j;c[g
x3e;>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}return 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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c
[j>>2]=c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)+16&-32
)|0;c[g>>2]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2
]=(c[e>>2]|0)+(c[f>>2]|0)+16;if((c[e>>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2
]=c[g>>2]&-32;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|0}
return 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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2
]=a;c[f>>2]=b;c[g>>2]=d;if((c[f>>2]|0)>=0){a=(c[f>>2]|0)-(c[(c[e>>2]|0)+480
>>2]|0)+(c[(c[e>>2]|0)+484>>2]|0)+(c[g>>2]|0)&0-(c[(c[e>>2]|0)+476>
x3e;2]|0);c[h>>2]=a;c[h>>2]=(c[f>>2]|0)!=0&(c[h>>2]|0)<0?0:a;c[h>>2]=(
c[h>>2]|0)+(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}else{a=0-((c[(c[e>
x3e;2]|0)+484>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0)-(c[f>>2]|0)+(c[g>>2]|0)&0-(
c[(c[e>>2]|0)+476>>2]|0))|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>0?0:a;c[h>
x3e;2]=(c[h>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}return 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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>
;2]=b;c[g>>2]=d;if((c[f>>2]|0)>=0){a=_(((c[f>>2]|0)-(c[(c[e>>2]|0)+480>>2
]|0)+(c[(c[e>>2]|0)+484>>2]|0)+(c[g>>2]|0)|0)/(c[(c[e>>2]|0)+476>>2]|0)|0,c[(c
[e>>2]|0)+476>>2]|0)|0;c[h>>2]=a;c[h>>2]=(c[f>>2]|0)!=0&(c[h>>2
]|0)<0?0:a;c[h>>2]=(c[h>>2]|0)+(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;
return h|0}else{a=0-(_(((c[(c[e>>2]|0)+484>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0)-(c[f>
x3e;2]|0)+(c[g>>2]|0)|0)/(c[(c[e>>2]|0)+476>>2]|0)|0,c[(c[e>>2]|0)+476>>2]|0)|
0)|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>0?0:a;c[h>>2]=(c[h>>2]|0)-(c[(c[e>
;>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}return 0}function Qf(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;v=i;i=i+48|0;k=v+36|0;l=v+28|0;m=v+34|0;n=v+32|0;o=v+24|0;p=v+20|0;q=v+
16|0;r=v+12|0;s=v+8|0;t=v+4|0;u=v;c[l>>2]=d;b[m>>1]=f;b[n>>1]=g;c[o>>2]=h;c[p>>
;2]=j;if((e[m>>1]|0)>>>0<(e[(c[l>>2]|0)+108+8>>1]|0)>>>0?(e[n
x3e;>1]|0)>>>0<(e[(c[l>>2]|0)+72+8>>1]|0)>>>0:0){c[t>>2]=(
c[(c[l>>2]|0)+72+16>>2]|0)+(e[n>>1]<<3);c[u>>2]=(c[(c[l>>2]|0)+108+16
>>2]|0)+(e[m>>1]<<3);c[q>>2]=(c[c[t>>2]>>2]|0)-(c[c[u>>2]
x3e;>2]|0);c[r>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[u>>2]|0)+4>>2]|0);if(c[o
>>2]&1|0){c[s>>2]=c[r>>2];c[r>>2]=c[q>>2];c[q>>2]=0-(c[s>
x3e;2]|0)}Rf(c[l>>2]|0,c[q>>2]|0,c[r>>2]|0,c[p>>2]|0)|0;a[k>>0]=0;u=a[k>
x3e;0]|0;i=v;return u|0}if(a[(c[l>>2]|0)+561>>0]|0)c[(c[l>>2]|0)+12>>2]=134;a[k>>
;0]=1;u=a[k>>0]|0;i=v;return u|0}function Rf(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;
p=i;i=i+32|0;h=p+22|0;q=p+16|0;j=p+12|0;k=p+8|0;l=p+4|0;o=p;m=p+21|0;n=p+20|0;c[q>>2]=d;c[j>>2]=e;c[k>
x3e;2]=f;c[l>>2]=g;c[q>>2]=c[q>>2];d=c[j>>2]|0;if((((c[j>>2]|0)<0?0-d|0:d
)|0)<65536?(q=c[k>>2]|0,(((c[k>>2]|0)<0?0-q|0:q)|0)<65536):0){c[j>>2]=c[j>>
;2]<<8;c[k>>2]=c[k>>2]<<8;c[o>>2]=pf(c[j>>2]|0,c[k>>2]|0)|
0;if(!(c[o>>2]|0)){a[h>>0]=0;q=a[h>>0]|0;i=p;return q|0}else{q=(xb(c[j>>2]|0,16384,c[o
x3e;>2]|0)|0)&65535;b[c[l>>2]>>1]=q;q=(xb(c[k>>2]|0,16384,c[o>>2]|0)|0)&65535
;b[(c[l>>2]|0)+2>>1]=q;a[h>>0]=0;q=a[h>>0]|0;i=p;return q|0}}c[o>>2]=pf(c[j>
;>2]|0,c[k>>2]|0)|0;c[j>>2]=xb(c[j>>2]|0,16384,c[o>>2]|0)|0;c[k>>2]=xb(c[
k>>2]|0,16384,c[o>>2]|0)|0;q=_(c[j>>2]|0,c[j>>2]|0)|0;c[o>>2]=q+(_(c[k>
x3e;2]|0,c[k>>2]|0)|0);if((c[j>>2]|0)<0){c[j>>2]=0-(c[j>>2]|0);a[m>>0]=1}
else a[m>>0]=0;if((c[k>>2]|0)<0){c[k>>2]=0-(c[k>>2]|0);a[n>>0]=1}else a[n
>>0]=0;while(1){if((c[o>>2]|0)>=268435456)break;if((c[j>>2]|0)<(c[k>>2]|0))c[j
>>2]=(c[j>>2]|0)+1;else c[k>>2]=(c[k>>2]|0)+1;q=_(c[j>>2]|0,c[j>>2]|
0)|0;c[o>>2]=q+(_(c[k>>2]|0,c[k>>2]|0)|0)}while(1){if((c[o>>2]|0)<268451840)break;if
((c[j>>2]|0)<(c[k>>2]|0))c[j>>2]=(c[j>>2]|0)+-1;else c[k>>2]=(c[k>
x3e;2]|0)+-1;q=_(c[j>>2]|0,c[j>>2]|0)|0;c[o>>2]=q+(_(c[k>>2]|0,c[k>>2]|0)|0)}if
(a[m>>0]|0)c[j>>2]=0-(c[j>>2]|0);if(a[n>>0]|0)c[k>>2]=0-(c[k>>2]|0);
b[c[l>>2]>>1]=c[j>>2];b[(c[l>>2]|0)+2>>1]=c[k>>2];a[h>>0]=
0;q=a[h>>0]|0;i=p;return q|0}function Sf(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;x=i;i=i+64|0;h=x+44|0;y=x+40|0;v=x+56|0;k=x+54|0;l=x+52|0;m=x+50|0;n=x+48|0;s=x+36|0;t=x+32|0;u=x+28|0;o=x+24|0;p=x+
20|0;q=x+16|0;r=x+12|0;w=x+8|0;j=x;c[h>>2]=f;c[y>>2]=g;b[v>>1]=c[c[y>>2]>>2];b
[k>>1]=c[(c[y>>2]|0)+4>>2];b[l>>1]=c[(c[y>>2]|0)+8>>2];b[m>>
;1]=c[(c[y>>2]|0)+12>>2];b[n>>1]=c[(c[y>>2]|0)+16>>2];if(((((e[m>>1]|
0)>>>0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0?(e[n>>1]|0)>>
x3e;0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0:0)?(e[k>>1]|0)>>>0<(e
[(c[h>>2]|0)+72+8>>1]|0)>>>0:0)?(e[l>>1]|0)>>>0<(e[(c[h>
x3e;2]|0)+72+8>>1]|0)>>>0:0)?(e[v>>1]|0)>>>0<(e[(c[h>>2]|0)+108
+8>>1]|0)>>>0:0){c[q>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1
]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>>
2]|0);c[r>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)+4>>2]|0)-(
c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0);c[o>>2]=(c[(c[(c
[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+72+16
x3e;>2]|0)+(e[k>>1]<<3)>>2]|0);c[p>>2]=(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]
x3c;<3)+4>>2]|0);c[t>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<
;3)>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2]|0);c[u>
;>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)-(c[(c[(c[h>
;>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0);y=(c[(c[h>>2]|0)+108+24>
x3e;2]|0)+(e[v>>1]|0)|0;a[y>>0]=d[y>>0]|24;y=xb(c[o>>2]|0,0-(c[r>>2]|0)|0,64)|
0;c[s>>2]=y+(xb(c[p>>2]|0,c[q>>2]|0,64)|0);y=c[s>>2]|0;if((((c[s>>2]|0)<0
?0-y|0:y)|0)>=64){y=xb(c[t>>2]|0,0-(c[r>>2]|0)|0,64)|0;c[w>>2]=y+(xb(c[u>>2]|0,c[q
x3e;>2]|0,64)|0);c[j>>2]=xb(c[w>>2]|0,c[o>>2]|0,c[s>>2]|0)|0;c[j+4>>2]=xb
(c[w>>2]|0,c[p>>2]|0,c[s>>2]|0)|0;c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>
;1]<<3)>>2]=(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2
]|0)+(c[j>>2]|0);c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)+4>>2]=(
c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)+(c[j+4>>2]|0);i=
x;return}else{c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)>>2]=((c[(c[(c[h>
;>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2]|0)+(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]
x3c;<3)>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)>>2]|
0)|0)/4|0;c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)+4>>2]=((c[(c[(c[h>
x3e;2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]
x3c;<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)+4>>
;2]|0)|0)/4|0;i=x;return}}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=x;return}c[(c[h>>2]|0)+12>>2]=
134;i=x;return}function Tf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e
;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>2]|0)+36|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e
x3e;>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{e=(c[g>>2]|0)+36|0;d=(c[g>
x3e;2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c
[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>>2]=134;i=j;return}}b[(c[g>>
2]|0)+284+60>>1]=c[c[h>>2]>>2];i=j;return}function Uf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i
+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>
2]|0)+72|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));
break}case 1:{e=(c[g>>2]|0)+72|0;d=(c[g>>2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0
;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>
2]|0)+12>>2]=134;i=j;return}}b[(c[g>>2]|0)+284+62>>1]=c[c[h>>2]>>2];i=j;return
}function Vf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h
x3e;>2]>>2]|0){case 0:{e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=
c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+144
|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c[g>>
;2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>>2]=134;i=j;return}}b[(c[g>>2]|0)+284+64
x3e;>1]=c[c[h>>2]>>2];i=j;return}function Wf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;
h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>2]|0)+36|0;d=(
c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{
e=(c[g>>2]|0)+36|0;d=(c[g>>2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while
((e|0)<(f|0));break}default:{if(!(a[(c[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>
x3e;2]=134;i=j;return}}e=(c[g>>2]|0)+72|0;d=(c[g>>2]|0)+36|0;f=e+36|0;do{c[e>>2]=c[d>>2];
e=e+4|0;d=d+4|0}while((e|0)<(f|0));e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+36|0;f=e+36|0;do{c[e>>2]=
c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));b[(c[g>>2]|0)+284+60>>1]=c[c[h>>2]>
x3e;2];b[(c[g>>2]|0)+284+62>>1]=c[c[h>>2]>>2];b[(c[g>>2]|0)+284+64>>
1]=c[c[h>>2]>>2];i=j;return}function Xf(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+8|0;h=g+4|0;f=
g;c[e>>2]=a;c[h>>2]=b;c[e>>2]=c[e>>2];c[h>>2]=c[h>>2];c[f>>
;2]=1;while(1){if(((Yf(c[e>>2]|0)|0)&255|0)==1){e=7;break}switch(d[(c[e>>2]|0)+368>>0]|0|0){case
88:{c[f>>2]=(c[f>>2]|0)+1;break}case 89:{c[f>>2]=(c[f>>2]|0)+-1;break}default:{}}if(!(c
[f>>2]|0)){e=7;break}}if((e|0)==7){i=g;return}}function Yf(b){b=b|0;var e=0,f=0,g=0;g=i;i=i+16|0;e=g+4|0;f=g;c[f>
x3e;2]=b;b=(c[f>>2]|0)+360|0;c[b>>2]=(c[b>>2]|0)+(c[(c[f>>2]|0)+372>>2]|0);do
if((c[(c[f>>2]|0)+360>>2]|0)<(c[(c[f>>2]|0)+364>>2]|0)){a[(c[f>>2]|0)+368
>>0]=a[(c[(c[f>>2]|0)+356>>2]|0)+(c[(c[f>>2]|0)+360>>2]|0)>>0]|0;c[(
c[f>>2]|0)+372>>2]=a[10705+(d[(c[f>>2]|0)+368>>0]|0)>>0];if((c[(c[f>>
;2]|0)+372>>2]|0)<0){if(((c[(c[f>>2]|0)+360>>2]|0)+1|0)>(c[(c[f>>2]|0)+364>
;>2]|0))break;b=2-(_(c[(c[f>>2]|0)+372>>2]|0,d[(c[(c[f>>2]|0)+356>>2]|0)+((c[(c[f
x3e;>2]|0)+360>>2]|0)+1)>>0]|0)|0)|0;c[(c[f>>2]|0)+372>>2]=b}if(((c[(c[f>>
;2]|0)+360>>2]|0)+(c[(c[f>>2]|0)+372>>2]|0)|0)<=(c[(c[f>>2]|0)+364>>2]|0)){
a[e>>0]=0;b=a[e>>0]|0;i=g;return b|0}}while(0);c[(c[f>>2]|0)+12>>2]=131;a[e>>0
]=1;b=a[e>>0]|0;i=g;return b|0}function Zf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;d=g+12|0;h=g+8|0;f=g+
4|0;e=g;c[d>>2]=a;c[h>>2]=b;c[f>>2]=c[c[h>>2]>>2];if((c[f>>2]|0)>
;0?(c[f>>2]|0)<=(c[(c[d>>2]|0)+28>>2]|0):0){c[e>>2]=c[(c[(c[d>>2]|0)+24
x3e;>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)<<2)>>2];Ts((c[(c[d>
x3e;2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)<<2)|0,(c[(c[d>
x3e;2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)+1<<2)|0,(c[f>
x3e;2]|0)-1<<2|0)|0;c[(c[(c[d>>2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-1<
;<2)>>2]=c[e>>2];i=g;return}c[(c[d>>2]|0)+12>>2]=134;i=g;return}function _f(d,f){d=
d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;g=l+8|0;m=l+4|0;j=l+14|0;k=l+12|0;h=l;c[g>>2]=d;c[m>>2]=f
;b[j>>1]=c[c[m>>2]>>2];b[k>>1]=c[(c[m>>2]|0)+4>>2];if((e[j>>
;1]|0)>>>0<(e[(c[g>>2]|0)+72+8>>1]|0)>>>0?(e[k>>1]|0)>>
;>0<(e[(c[g>>2]|0)+36+8>>1]|0)>>>0:0){c[h>>2]=(Oa[c[(c[g>>2]|0)+
572>>2]&63](c[g>>2]|0,(c[(c[(c[g>>2]|0)+36+16>>2]|0)+(e[k>>1]<<
3)>>2]|0)-(c[(c[(c[g>>2]|0)+72+16>>2]|0)+(e[j>>1]<<3)>>2]|0)|0,(c[(c
[(c[g>>2]|0)+36+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)-(c[(c[(c[g>>2]|0)+72
+16>>2]|0)+(e[j>>1]<<3)+4>>2]|0)|0)|0)/2|0;_a[c[(c[g>>2]|0)+584>>2]
x26;15](c[g>>2]|0,(c[g>>2]|0)+72|0,b[j>>1]|0,c[h>>2]|0);_a[c[(c[g>>2]|0)+584
x3e;>2]&15](c[g>>2]|0,(c[g>>2]|0)+36|0,b[k>>1]|0,0-(c[h>>2]|0)|0);i=l;return}if
(!(a[(c[g>>2]|0)+561>>0]|0)){i=l;return}c[(c[g>>2]|0)+12>>2]=134;i=l;return}function $f(
b,e){b=b|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+16|0;m=l+12|0;k=l+8|0;f=l+4|0;j=l;c[h>>2]=b;c[m>
;>2]=e;c[k>>2]=c[(c[h>>2]|0)+416>>2];c[f>>2]=(c[k>>2]|0)+(c[(c[h>>
;2]|0)+408>>2]<<4);c[h>>2]=c[h>>2];c[m>>2]=c[m>>2];while(1){if((c[k
x3e;>2]|0)>>>0>=(c[f>>2]|0)>>>0){g=9;break}if((c[(c[k>>2]|0)+8>
x3e;2]&255|0)==(d[(c[h>>2]|0)+368>>0]|0|0)?d[(c[k>>2]|0)+12>>0]|0|0:0)break;c[k>
;>2]=(c[k>>2]|0)+16}if((g|0)==9){c[(c[h>>2]|0)+12>>2]=128;i=l;return}e=c[h>>2]|0;if
((c[(c[h>>2]|0)+428>>2]|0)>=(c[(c[h>>2]|0)+432>>2]|0)){c[e+12>>2]=130;i=l
;return}else{g=c[e+436>>2]|0;f=(c[h>>2]|0)+428|0;m=c[f>>2]|0;c[f>>2]=m+1;c[j>>
2]=g+(m<<4);c[c[j>>2]>>2]=c[(c[h>>2]|0)+352>>2];c[(c[j>>2]|0)+4>
;>2]=(c[(c[h>>2]|0)+360>>2]|0)+1;c[(c[j>>2]|0)+8>>2]=1;c[(c[j>>2]|0)+12
x3e;>2]=c[(c[k>>2]|0)+4>>2];ag(c[h>>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>
;2]|0)+4>>2]|0)|0;a[(c[h>>2]|0)+376>>0]=0;i=l;return}}function ag(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;l=i;i=i+32|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=b;c[h>>2]=d;c[j>>2
]=e;if((c[h>>2]|0)<1|(c[h>>2]|0)>3){c[(c[g>>2]|0)+12>>2]=132;a[f>>0]=
1;k=a[f>>0]|0;i=l;return k|0}c[k>>2]=(c[g>>2]|0)+444+((c[h>>2]|0)-1<<3);if(!(c
[c[k>>2]>>2]|0)){c[(c[g>>2]|0)+12>>2]=138;a[f>>0]=1;k=a[f>>0]|0;i=l;
return k|0}if((c[j>>2]|0)>>>0>(c[(c[k>>2]|0)+4>>2]|0)>>>0){c[(c
[g>>2]|0)+12>>2]=131;a[f>>0]=1;k=a[f>>0]|0;i=l;return k|0}else{c[(c[g>>2]|0)+356
>>2]=c[c[k>>2]>>2];c[(c[g>>2]|0)+364>>2]=c[(c[k>>2]|0)+4>>
2];c[(c[g>>2]|0)+360>>2]=c[j>>2];c[(c[g>>2]|0)+352>>2]=c[h>>2];a[f
x3e;>0]=0;k=a[f>>0]|0;i=l;return k|0}return 0}function bg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;h
=l+4|0;m=l;k=l+8|0;j=l+10|0;c[h>>2]=f;c[m>>2]=g;b[k>>1]=c[c[m>>2]>>2];if((e[k
x3e;>1]|0)>>>0>=(e[(c[h>>2]|0)+36+8>>1]|0)>>>0){if(!(a[(c[h>>
;2]|0)+561>>0]|0)){i=l;return}c[(c[h>>2]|0)+12>>2]=134;i=l;return}a[j>>0]=-1;if(b[(c[h
x3e;>2]|0)+284+14>>1]|0)a[j>>0]=d[j>>0]&-9;if(b[(c[h>>2]|0)+284+14+2>>
;1]|0)a[j>>0]=d[j>>0]&-17;m=(c[(c[h>>2]|0)+36+24>>2]|0)+(e[k>>1]|0)|0;a[m
>>0]=d[m>>0]&d[j>>0];i=l;return}function cg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;
l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;k=l+8|0;h=l+4|0;j=l;c[e>>2]=b;c[f>>2]=d;c[g>>2]=c[(c[f>
;>2]|0)+4>>2];do if((c[g>>2]|0)>>>0<((c[(c[e>>2]|0)+420>>2]|0)+
1|0)>>>0){c[h>>2]=(c[(c[e>>2]|0)+404>>2]|0)+(c[g>>2]<<4);if(!(((
c[(c[e>>2]|0)+420>>2]|0)+1|0)==(c[(c[e>>2]|0)+396>>2]|0)?(c[(c[h>>2]|0)+8>
;>2]|0)==(c[g>>2]|0):0)){c[h>>2]=c[(c[e>>2]|0)+404>>2];c[j>>2]=(c[h>
x3e;2]|0)+(c[(c[e>>2]|0)+396>>2]<<4);while(1){if((c[h>>2]|0)>>>0<(c[
j>>2]|0)>>>0)d=(c[(c[h>>2]|0)+8>>2]|0)!=(c[g>>2]|0);else d=0;b=c[h>
x3e;2]|0;if(!d)break;c[h>>2]=b+16}if((b|0)==(c[j>>2]|0))break}if(a[(c[h>>2]|0)+12>>0]|0){
if((c[(c[e>>2]|0)+428>>2]|0)>=(c[(c[e>>2]|0)+432>>2]|0)){c[(c[e>>2]|0)+12
>>2]=130;i=l;return}if((c[c[f>>2]>>2]|0)<=0){i=l;return}c[k>>2]=(c[(c[e>>
2]|0)+436>>2]|0)+(c[(c[e>>2]|0)+428>>2]<<4);c[c[k>>2]>>2]=c[(c[e>
;>2]|0)+352>>2];c[(c[k>>2]|0)+4>>2]=(c[(c[e>>2]|0)+360>>2]|0)+1;c[(c[k>
;>2]|0)+8>>2]=c[c[f>>2]>>2];c[(c[k>>2]|0)+12>>2]=c[(c[h>>2]|0)+
4>>2];k=(c[e>>2]|0)+428|0;c[k>>2]=(c[k>>2]|0)+1;ag(c[e>>2]|0,c[c[h>>
2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0)|0;a[(c[e>>2]|0)+376>>0]=0;i=l;return}}while(0);
c[(c[e>>2]|0)+12>>2]=134;i=l;return}function dg(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;g=k+20|0;l=k+16|0;e=k+12|0;j=k+8|0;h=k+4|0;f=k;c[g>>2]=b;c[l>>2]=d;c[e>>2]=c[c[l>>2]
x3e;>2];do if((c[e>>2]|0)>>>0<((c[(c[g>>2]|0)+420>>2]|0)+1|0)>>
x3e;0){c[h>>2]=(c[(c[g>>2]|0)+404>>2]|0)+(c[e>>2]<<4);if(!(((c[(c[g>>
;2]|0)+420>>2]|0)+1|0)==(c[(c[g>>2]|0)+396>>2]|0)?(c[(c[h>>2]|0)+8>>2]|0)==(c[
e>>2]|0):0)){c[h>>2]=c[(c[g>>2]|0)+404>>2];c[f>>2]=(c[h>>2]|0)+(c[(c
[g>>2]|0)+396>>2]<<4);while(1){if((c[h>>2]|0)>>>0<(c[f>>2]|
0)>>>0)b=(c[(c[h>>2]|0)+8>>2]|0)!=(c[e>>2]|0);else b=0;d=c[h>>2]|0;if(!b)
break;c[h>>2]=d+16}if((d|0)==(c[f>>2]|0))break}if(a[(c[h>>2]|0)+12>>0]|0){d=c[g>>
;2]|0;if((c[(c[g>>2]|0)+428>>2]|0)>=(c[(c[g>>2]|0)+432>>2]|0)){c[d+12>>2]=
130;i=k;return}else{c[j>>2]=(c[d+436>>2]|0)+(c[(c[g>>2]|0)+428>>2]<<4);c[c[j
x3e;>2]>>2]=c[(c[g>>2]|0)+352>>2];c[(c[j>>2]|0)+4>>2]=(c[(c[g>>
2]|0)+360>>2]|0)+1;c[(c[j>>2]|0)+8>>2]=1;c[(c[j>>2]|0)+12>>2]=c[(c[h>>
;2]|0)+4>>2];l=(c[g>>2]|0)+428|0;c[l>>2]=(c[l>>2]|0)+1;ag(c[g>>2]|0,c[c[h>
;>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0)|0;a[(c[g>>2]|0)+376>>0]=0;i=k;return}}}
while(0);c[(c[g>>2]|0)+12>>2]=134;i=k;return}function eg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=
i+32|0;j=k+16|0;l=k+12|0;g=k+8|0;h=k+4|0;f=k;c[j>>2]=b;c[l>>2]=e;c[h>>2]=c[(c[j>>2]|0)+404
>>2];c[f>>2]=(c[h>>2]|0)+(c[(c[j>>2]|0)+396>>2]<<4);c[g>>2
]=c[c[l>>2]>>2];while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>
x3e;0)break;if((c[(c[h>>2]|0)+8>>2]|0)==(c[g>>2]|0))break;c[h>>2]=(c[h>>2]|0)+
16}do if((c[h>>2]|0)==(c[f>>2]|0)){e=c[j>>2]|0;if((c[(c[j>>2]|0)+396>>2]|0)>
;>>0<(c[(c[j>>2]|0)+400>>2]|0)>>>0){l=e+396|0;c[l>>2]=(c[l>>
;2]|0)+1;break}c[e+12>>2]=140;i=k;return}while(0);e=c[j>>2]|0;if((c[g>>2]|0)>>>0>
;65535){c[e+12>>2]=140;i=k;return}c[c[h>>2]>>2]=c[e+352>>2];c[(c[h>>2]|0)+8>
;>2]=c[g>>2]&65535;c[(c[h>>2]|0)+4>>2]=(c[(c[j>>2]|0)+360>>2]|0)+1;a
[(c[h>>2]|0)+12>>0]=1;if((c[g>>2]|0)>>>0>(c[(c[j>>2]|0)+420>>
;2]|0)>>>0)c[(c[j>>2]|0)+420>>2]=c[g>>2]&65535;a:while(1){if((Yf(c[j>>
;2]|0)|0)&255|0){e=16;break}switch(d[(c[j>>2]|0)+368>>0]|0|0){case 44:case 137:{e=15;break a}case 45:{e
=16;break a}default:{}}}if((e|0)==15){c[(c[j>>2]|0)+12>>2]=137;i=k;return}else if((e|0)==16){i=k;return}}function
fg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+8|0;h=g+4|0;f=g;c[e>>2]=b;c[h>>2]=d;c[e>>
;2]=c[e>>2];c[h>>2]=c[h>>2];d=c[e>>2]|0;if((c[(c[e>>2]|0)+428>>2]|0)
x3c;=0){c[d+12>>2]=136;i=g;return}d=d+428|0;c[d>>2]=(c[d>>2]|0)+-1;c[f>>2]=(c[(c[e>
x3e;2]|0)+436>>2]|0)+(c[(c[e>>2]|0)+428>>2]<<4);d=(c[f>>2]|0)+8|0;c[d>>
;2]=(c[d>>2]|0)+-1;a[(c[e>>2]|0)+376>>0]=0;d=c[e>>2]|0;if((c[(c[f>>2]|0)+8>
;>2]|0)>0){h=d+428|0;c[h>>2]=(c[h>>2]|0)+1;c[(c[e>>2]|0)+360>>2]=c[(c[f>
x3e;2]|0)+12>>2];i=g;return}else{ag(d,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0
;i=g;return}}function gg(f,g){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;h=m+12|0;n=m+8|0;l=m+16|0;j=m+4|0;k=m;c[h>
;>2]=f;c[n>>2]=g;b[l>>1]=c[c[n>>2]>>2];g=c[h>>2]|0;if((e[l>>1]|
0)>>>0>=(e[(c[h>>2]|0)+36+8>>1]|0)>>>0){if(!(a[g+561>>0]|0)){i=
m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}if(d[g+368>>0]&1|0){c[j>>2]=Oa[c[(c[h
x3e;>2]|0)+572>>2]&63](c[h>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[l>>
;1]<<3)>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[l>>1]<<3)+4>>
;2]|0)|0;n=Oa[c[(c[h>>2]|0)+568>>2]&63](c[h>>2]|0,c[j>>2]|0,c[(c[h>>2]|0)+
244+20>>2]|0)|0;c[k>>2]=n-(c[j>>2]|0)}else c[k>>2]=0;_a[c[(c[h>>2]|0)+584>
;>2]&15](c[h>>2]|0,(c[h>>2]|0)+36|0,b[l>>1]|0,c[k>>2]|0);b[(c[h>>2]|
0)+284>>1]=b[l>>1]|0;b[(c[h>>2]|0)+284+2>>1]=b[l>>1]|0;i=m;return}function hg(
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;r=i;i=i+64|0;h=r+44|0;s=r+40|0;j=r+24|0;p=r+50|0;n=r+16|0;m=r+12
|0;o=r+8|0;l=r+4|0;q=r;k=r+48|0;c[h>>2]=f;c[s>>2]=g;c[h>>2]=c[h>>2];c[s>>2]=c[
s>>2];if(!(b[(c[h>>2]|0)+144+10>>1]|0)){i=r;return}if(d[(c[h>>2]|0)+368>>0]&
;1|0){a[p>>0]=8;c[j>>2]=c[(c[h>>2]|0)+144+12>>2];c[j+4>>2]=c[(c[h>>2
]|0)+144+16>>2];c[j+8>>2]=c[(c[h>>2]|0)+144+20>>2]}else{a[p>>0]=16;c[j>
x3e;2]=(c[(c[h>>2]|0)+144+12>>2]|0)+4;c[j+4>>2]=(c[(c[h>>2]|0)+144+16>>2]|0)+4
;c[j+8>>2]=(c[(c[h>>2]|0)+144+20>>2]|0)+4}c[j+12>>2]=e[(c[h>>2]|0)+144+8>
x3e;1];b[k>>1]=0;c[q>>2]=0;do{c[m>>2]=(e[(c[(c[h>>2]|0)+144+28>>2]|0)+(b[k>
;>1]<<1)>>1]|0)-(e[(c[h>>2]|0)+144+32>>1]|0);c[n>>2]=c[q>>2];if
((c[m>>2]|0)>>>0>=(e[(c[h>>2]|0)+144+8>>1]|0)>>>0)c[m>>
;2]=(e[(c[h>>2]|0)+144+8>>1]|0)-1;while(1){if((c[q>>2]|0)>>>0<=(c[m>>
;2]|0)>>>0)g=(d[(c[(c[h>>2]|0)+144+24>>2]|0)+(c[q>>2]|0)>>0]&d[p>
;>0]|0)==0;else g=0;f=c[q>>2]|0;if(!g)break;c[q>>2]=f+1}do if(f>>>0<=(c[m>>
;2]|0)>>>0){c[o>>2]=c[q>>2];c[l>>2]=c[q>>2];c[q>>2]=(c[q>
x3e;2]|0)+1;while(1){if((c[q>>2]|0)>>>0>(c[m>>2]|0)>>>0)break;if(d[(c[(c[
h>>2]|0)+144+24>>2]|0)+(c[q>>2]|0)>>0]&d[p>>0]|0){ig(j,(c[l>>2]|
0)+1|0,(c[q>>2]|0)-1|0,c[l>>2]|0,c[q>>2]|0);c[l>>2]=c[q>>2]}c[q>>2]=(
c[q>>2]|0)+1}if((c[l>>2]|0)==(c[o>>2]|0)){jg(j,c[n>>2]|0,c[m>>2]|0,c[l>
x3e;2]|0);break}ig(j,(c[l>>2]|0)+1&65535,c[m>>2]|0,c[l>>2]|0,c[o>>2]|0);if((c[o>
;>2]|0)>>>0>0)ig(j,c[n>>2]|0,(c[o>>2]|0)-1|0,c[l>>2]|0,c[o>>2]|
0)}while(0);b[k>>1]=(b[k>>1]|0)+1<<16>>16}while((b[k>>1]|0)<(b[(c[h>
x3e;2]|0)+144+10>>1]|0));i=r;return}function ig(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,x=0,y=0,z=0,A=0;A=i;i=i+80|0;h=A+64|0;j=A+60|0;k=A+56|0;l=A+52|0;m=A+48|0;p=A+44|0;s=A+40|0;t
=A+36|0;q=A+32|0;r=A+28|0;n=A+24|0;o=A+20|0;w=A+16|0;x=A+12|0;y=A+8|0;u=A+4|0;v=A+68|0;z=A;c[h>>2]=b;c[j>>2]=
d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;if((c[j>>2]|0)>>>0>(c[k>>2
]|0)>>>0){i=A;return}if((c[l>>2]|0)>>>0>=(c[(c[h>>2]|0)+12>>2]|
0)>>>0){i=A;return}if((c[m>>2]|0)>>>0>=(c[(c[h>>2]|0)+12>>2]|0)
x3e;>>0){i=A;return}c[s>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+(c[l>>2]<<3)
x3e;>2];c[t>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+(c[m>>2]<<3)>>2];if((
c[s>>2]|0)>(c[t>>2]|0)){c[w>>2]=c[s>>2];c[s>>2]=c[t>>2];c[t>
;>2]=c[w>>2];c[x>>2]=c[l>>2];c[l>>2]=c[m>>2];c[m>>2]=c[x>
x3e;2]}c[q>>2]=c[(c[c[h>>2]>>2]|0)+(c[l>>2]<<3)>>2];c[r>>2
]=c[(c[c[h>>2]>>2]|0)+(c[m>>2]<<3)>>2];c[n>>2]=(c[(c[(c[h>>
;2]|0)+4>>2]|0)+(c[l>>2]<<3)>>2]|0)-(c[q>>2]|0);c[o>>2]=(c[(c[(c[h
x3e;>2]|0)+4>>2]|0)+(c[m>>2]<<3)>>2]|0)-(c[r>>2]|0);if((c[s>>2]|
0)==(c[t>>2]|0)){c[p>>2]=c[j>>2];while(1){if((c[p>>2]|0)>>>0>(c[k>
;>2]|0)>>>0)break;c[y>>2]=c[(c[c[h>>2]>>2]|0)+(c[p>>2]<<3)
x3e;>2];if((c[y>>2]|0)<=(c[q>>2]|0))c[y>>2]=(c[y>>2]|0)+(c[n>>2]|0);
else c[y>>2]=(c[y>>2]|0)+(c[o>>2]|0);c[(c[(c[h>>2]|0)+4>>2]|0)+(c[p>>
;2]<<3)>>2]=c[y>>2];c[p>>2]=(c[p>>2]|0)+1}i=A;return}c[u>>2]=0;a[v
x3e;>0]=0;c[p>>2]=c[j>>2];while(1){if((c[p>>2]|0)>>>0>(c[k>>2]|
0)>>>0)break;c[z>>2]=c[(c[c[h>>2]>>2]|0)+(c[p>>2]<<3)>>
;2];do if((c[z>>2]|0)<=(c[q>>2]|0))c[z>>2]=(c[z>>2]|0)+(c[n>>2]|0);else{if
((c[z>>2]|0)>=(c[r>>2]|0)){c[z>>2]=(c[z>>2]|0)+(c[o>>2]|0);break}if(!(a[v
>>0]|0)){a[v>>0]=1;c[u>>2]=xb((c[r>>2]|0)+(c[o>>2]|0)-((c[q>>2]|0)+(
c[n>>2]|0))|0,65536,(c[t>>2]|0)-(c[s>>2]|0)|0)|0}y=(c[q>>2]|0)+(c[n>>2]|0)|0;c
[z>>2]=y+(Mb((c[(c[(c[h>>2]|0)+8>>2]|0)+(c[p>>2]<<3)>>2]|0)-(c[s>
;>2]|0)|0,c[u>>2]|0)|0)}while(0);c[(c[(c[h>>2]|0)+4>>2]|0)+(c[p>>2]<<3)
x3e;>2]=c[z>>2];c[p>>2]=(c[p>>2]|0)+1}i=A;return}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;m=i;i=i+32|0;f=m+20|0;g=m+16|0;h=m+12|0;j=m+8|0;l=m+4|0;k=m;c[f>>2]=a;c[g>>
2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=(c[(c[(c[f>>2]|0)+4>>2]|0)+(c[j>>2]
x3c;<3)>>2]|0)-(c[(c[c[f>>2]>>2]|0)+(c[j>>2]<<3)>>2]|0);if(!(c[
k>>2]|0)){i=m;return}c[l>>2]=c[g>>2];while(1){if((c[l>>2]|0)>>>0>=(c
[j>>2]|0)>>>0)break;a=(c[(c[f>>2]|0)+4>>2]|0)+(c[l>>2]<<3)|0;c[
a>>2]=(c[a>>2]|0)+(c[k>>2]|0);c[l>>2]=(c[l>>2]|0)+1}c[l>>2]=(c[j>
;>2]|0)+1;while(1){if((c[l>>2]|0)>>>0>(c[h>>2]|0)>>>0)break;a=(c[(c[
f>>2]|0)+4>>2]|0)+(c[l>>2]<<3)|0;c[a>>2]=(c[a>>2]|0)+(c[k>>
;2]|0);c[l>>2]=(c[l>>2]|0)+1}i=m;return}function kg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+64|
0;k=l+48|0;m=l+44|0;g=l+4|0;h=l;j=l+52|0;c[k>>2]=d;c[m>>2]=f;c[k>>2]=c[k>>2];c[m>
x3e;2]=c[m>>2];f=c[k>>2]|0;if((c[(c[k>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0)+284
+20>>2]|0)){c[f+12>>2]=134;i=l;return}if((lg(f,g,h,l+8|0,l+54|0)|0)<<24>>24){i=l;return}
while(1){d=c[k>>2]|0;if((c[(c[k>>2]|0)+284+20>>2]|0)<=0){f=10;break}f=d+28|0;c[f>>2
]=(c[f>>2]|0)+-1;b[j>>1]=c[(c[(c[k>>2]|0)+24>>2]|0)+(c[(c[k>>2]|0)+28>>
;2]<<2)>>2];f=c[k>>2]|0;if((e[j>>1]|0)>>>0>=(e[(c[k>>2]|0)+
108+8>>1]|0)>>>0){if(a[f+561>>0]|0){f=7;break}}else mg(f,b[j>>1]|0,c[g>>2
]|0,c[h>>2]|0,1);m=(c[k>>2]|0)+284+20|0;c[m>>2]=(c[m>>2]|0)+-1}if((f|0)==7){c[(c[k>
x3e;2]|0)+12>>2]=134;i=l;return}else if((f|0)==10){c[d+284+20>>2]=1;c[(c[k>>2]|0)+32>>2]=
c[(c[k>>2]|0)+28>>2];i=l;return}}function lg(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;u=i;i=i+64|0;l=u+62|0;m=u+56|0;n=u+52|0;o=u+48|0;p=u+44|0;q=u+40|0;t=u+4|0;s=u+60|0;r=u;c[m>>2]=
f;c[n>>2]=g;c[o>>2]=h;c[p>>2]=j;c[q>>2]=k;f=c[m>>2]|0;if(d[(c[m>>2]|
0)+368>>0]&1|0){g=t;f=f+36|0;k=g+36|0;do{c[g>>2]=c[f>>2];g=g+4|0;f=f+4|0}while((g|0)<(k|
0));b[s>>1]=b[(c[m>>2]|0)+284+2>>1]|0}else{g=t;f=f+72|0;k=g+36|0;do{c[g>>2]=c[f>>
;2];g=g+4|0;f=f+4|0}while((g|0)<(k|0));b[s>>1]=b[(c[m>>2]|0)+284+4>>1]|0}if((e[s>>1
]|0)>>>0<(e[t+8>>1]|0)>>>0){g=c[p>>2]|0;f=t;k=g+36|0;do{c[g>>2]=
c[f>>2];g=g+4|0;f=f+4|0}while((g|0)<(k|0));b[c[q>>2]>>1]=b[s>>1]|0;c[r>>2
]=Oa[c[(c[m>>2]|0)+572>>2]&63](c[m>>2]|0,(c[(c[t+16>>2]|0)+(e[s>>1]<
x3c;3)>>2]|0)-(c[(c[t+12>>2]|0)+(e[s>>1]<<3)>>2]|0)|0,(c[(c[t+16>>2]|
0)+(e[s>>1]<<3)+4>>2]|0)-(c[(c[t+12>>2]|0)+(e[s>>1]<<3)+4>>
;2]|0)|0)|0;t=xb(c[r>>2]|0,b[(c[m>>2]|0)+284+14>>1]<<16,c[(c[m>>2]|0)+564>
;>2]|0)|0;c[c[n>>2]>>2]=t;t=xb(c[r>>2]|0,b[(c[m>>2]|0)+284+14+2>>1]<
x3c;16,c[(c[m>>2]|0)+564>>2]|0)|0;c[c[o>>2]>>2]=t;a[l>>0]=0;t=a[l>>0
]|0;i=u;return t|0}if(a[(c[m>>2]|0)+561>>0]|0)c[(c[m>>2]|0)+12>>2]=134;b[c[q>>
2]>>1]=0;a[l>>0]=1;t=a[l>>0]|0;i=u;return t|0}function mg(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;q=i;i=i+16|0;l=q+8|0;m=q+12|0;n=q+4|0;o=q;p=q+14|0;c[l>>2]=f;b[m>>1]=g;c[n>
;>2]=h;c[o>>2]=j;a[p>>0]=k;if(b[(c[l>>2]|0)+284+14>>1]|0?(k=(c[(c[l>>2]|0
)+108+16>>2]|0)+(e[m>>1]<<3)|0,c[k>>2]=(c[k>>2]|0)+(c[n>>2]|0),a[p
x3e;>0]|0):0){k=(c[(c[l>>2]|0)+108+24>>2]|0)+(e[m>>1]|0)|0;a[k>>0]=d[k>>0
]|8}if(!(b[(c[l>>2]|0)+284+14+2>>1]|0)){i=q;return}k=(c[(c[l>>2]|0)+108+16>>2]|0)+(e[m
x3e;>1]<<3)+4|0;c[k>>2]=(c[k>>2]|0)+(c[o>>2]|0);if(!(a[p>>0]|0)){i=q;return
}k=(c[(c[l>>2]|0)+108+24>>2]|0)+(e[m>>1]|0)|0;a[k>>0]=d[k>>0]|16;i=q;return}function
ng(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;q=i;i=i+64|0;g=q+48|0;r=q+44|0;p=q+8|0;o=q+60|0;j=q+4|0;k=q
;h=q+58|0;l=q+56|0;n=q+54|0;m=q+52|0;c[g>>2]=d;c[r>>2]=f;b[h>>1]=c[c[r>>2]>>2];
f=c[g>>2]|0;if((b[h>>1]|0)>>>0>=(b[(c[g>>2]|0)+144+10>>1]|0)>
x3e;>0){if(!(a[f+561>>0]|0)){i=q;return}c[(c[g>>2]|0)+12>>2]=134;i=q;return}if((lg(f,j,k,p,o)|
0)<<24>>24){i=q;return}if(!(b[h>>1]|0))b[l>>1]=0;else b[l>>1]=(e[(c[(c[g>
x3e;2]|0)+144+28>>2]|0)+((b[h>>1]|0)-1<<1)>>1]|0)+1-(e[(c[g>>2]|0)+144+32>
;>1]|0);b[n>>1]=(e[(c[(c[g>>2]|0)+144+28>>2]|0)+(b[h>>1]<<1)>>1
]|0)-(e[(c[g>>2]|0)+144+32>>1]|0);do if((e[n>>1]|0)>>>0>=(e[(c[g>>2]|
0)+108+8>>1]|0)>>>0)if((e[(c[g>>2]|0)+108+8>>1]|0)>0){b[n>>1]=(e[(c[
g>>2]|0)+108+8>>1]|0)-1;break}else{b[n>>1]=0;break}while(0);b[m>>1]=b[l>>1]|0;
while(1){if((e[m>>1]|0)>(e[n>>1]|0))break;if(!((c[p+16>>2]|0)==(c[(c[g>>2]|0)+108+16
>>2]|0)?(e[o>>1]|0)==(e[m>>1]|0):0))mg(c[g>>2]|0,b[m>>1]|0,c[j>>2]|0
,c[k>>2]|0,1);b[m>>1]=(b[m>>1]|0)+1<<16>>16}i=q;return}function og(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;p=i;i=i+64|0;g=p+48|0;q=p+44|0;n=p+8|0;m=p+56|0;h=p+4|0;j=p;l=p+54|0;k=p+52|0;
c[g>>2]=d;c[q>>2]=f;f=c[g>>2]|0;if((c[c[q>>2]>>2]|0)>>>0>=
2){if(!(a[f+561>>0]|0)){i=p;return}c[(c[g>>2]|0)+12>>2]=134;i=p;return}if((lg(f,h,j,n,m)|0)<
x3c;24>>24){i=p;return}if((e[(c[g>>2]|0)+284+64>>1]|0)==0?(e[(c[g>>2]|0)+108+8>>
;1]|0)>0:0)b[l>>1]=(e[(c[g>>2]|0)+108+8>>1]|0)-1;else o=8;do if((o|0)==8){if((e[(c[g>>
;2]|0)+284+64>>1]|0)==1?(b[(c[g>>2]|0)+108+10>>1]|0)>0:0){b[l>>1]=b[(c[(c[g>
x3e;2]|0)+108+28>>2]|0)+((b[(c[g>>2]|0)+108+10>>1]|0)-1<<1)>>1]|0;if((e[l>
;>1]|0)>>>0<(e[(c[g>>2]|0)+108+8>>1]|0)>>>0)break;if(!(a[(c[g>
x3e;2]|0)+561>>0]|0)){i=p;return}c[(c[g>>2]|0)+12>>2]=134;i=p;return}b[l>>1]=0}while(0);
b[k>>1]=0;while(1){if((e[k>>1]|0)>(e[l>>1]|0))break;if(!((c[n+16>>2]|0)==(c[(c[g>
;>2]|0)+108+16>>2]|0)?(e[m>>1]|0)==(e[k>>1]|0):0))mg(c[g>>2]|0,b[k>>1]|0,
c[h>>2]|0,c[j>>2]|0,0);b[k>>1]=(b[k>>1]|0)+1<<16>>16}i=p;return}function
pg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;l=m+12|0;g=m+8|0;h=m+4|0;j=m;k=m+16|0;c[l>>2]=d;c[g>
;>2]=f;if((c[(c[l>>2]|0)+16>>2]|0)<((c[(c[l>>2]|0)+284+20>>2]|0)+1|0)){c[(c[l
x3e;>2]|0)+12>>2]=134;i=m;return}c[h>>2]=qg(c[c[g>>2]>>2]|0,b[(c[l>>2]|0)+
284+14>>1]|0)|0;c[j>>2]=qg(c[c[g>>2]>>2]|0,b[(c[l>>2]|0)+284+14+2>>1
]|0)|0;while(1){f=c[l>>2]|0;if((c[(c[l>>2]|0)+284+20>>2]|0)<=0){g=10;break}g=f+28|0;c[g>
x3e;2]=(c[g>>2]|0)+-1;b[k>>1]=c[(c[(c[l>>2]|0)+24>>2]|0)+(c[(c[l>>2]|0)+28>
;>2]<<2)>>2];g=c[l>>2]|0;if((e[k>>1]|0)>>>0>=(e[(c[l>>
;2]|0)+108+8>>1]|0)>>>0){if(a[g+561>>0]|0){g=7;break}}else mg(g,b[k>>1]|0,c[h>
x3e;2]|0,c[j>>2]|0,1);d=(c[l>>2]|0)+284+20|0;c[d>>2]=(c[d>>2]|0)+-1}if((g|0)==7){c[(c[l
x3e;>2]|0)+12>>2]=134;i=m;return}else if((g|0)==10){c[f+284+20>>2]=1;c[(c[l>>2]|0)+32>
x3e;2]=c[(c[l>>2]|0)+28>>2];i=m;return}}function qg(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
;m=i;i=i+32|0;d=m+28|0;e=m+24|0;l=m+20|0;f=m+16|0;g=m+12|0;k=m+8|0;j=m+4|0;h=m;c[d>>2]=a;c[e>>2]=b;c[l>
x3e;2]=c[d>>2]^c[e>>2];if((c[d>>2]|0)<0)c[d>>2]=0-(c[d>>2]|0);if((c[e>
;>2]|0)<0)c[e>>2]=0-(c[e>>2]|0);c[f>>2]=c[d>>2]>>16&65535;c[g
x3e;>2]=c[d>>2]&65535;c[j>>2]=_(c[g>>2]|0,c[e>>2]|0)|0;c[k>>2]=_(c[f
>>2]|0,c[e>>2]|0)|0;c[h>>2]=(c[k>>2]|0)>>>16;c[k>>2]=(c[k>
x3e;2]<<16)+8192;c[j>>2]=(c[j>>2]|0)+(c[k>>2]|0);if((c[j>>2]|0)>>>
;0>=(c[k>>2]|0)>>>0){b=c[j>>2]|0;b=b>>>14;j=c[h>>2]|0;j=j<
x3c;18;j=b|j;c[k>>2]=j;j=c[l>>2]|0;j=(j|0)>=0;k=c[k>>2]|0;l=0-k|0;l=j?k:l;i=m;return l|0}c[h
x3e;>2]=(c[h>>2]|0)+1;b=c[j>>2]|0;b=b>>>14;j=c[h>>2]|0;j=j<<18;j=b|j
;c[k>>2]=j;j=c[l>>2]|0;j=(j|0)>=0;k=c[k>>2]|0;l=0-k|0;l=j?k:l;i=m;return l|0}function rg(b,d){
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,q=0,r=0,s=0;s=i;i=i+48|0;r=s+40|0;g=s+36|0;m=s+32|0;k=s+28|0;o=s+24|0;h=
s+20|0;q=s+16|0;p=s+12|0;n=s+8|0;j=s+4|0;l=s;c[r>>2]=b;c[g>>2]=d;c[r>>2]=c[r>>2];c[g>
;>2]=c[g>>2];d=c[r>>2]|0;if((c[(c[r>>2]|0)+16>>2]|0)<(c[(c[r>>2]|0)+
284+20>>2]|0)){c[d+12>>2]=134;i=s;return}if((e[d+284+60>>1]|0)!=0?(e[(c[r>>2]|0)+284+62
x3e;>1]|0)!=0:0)d=(e[(c[r>>2]|0)+284+64>>1]|0)==0;else d=1;c[q>>2]=d&1;if((e[(c[r>
x3e;2]|0)+284+2>>1]|0)>>>0>=(e[(c[r>>2]|0)+36+8>>1]|0)>>>0){if(!(
a[(c[r>>2]|0)+561>>0]|0)){i=s;return}c[(c[r>>2]|0)+12>>2]=134;i=s;return}d=e[(c[r>
x3e;2]|0)+284+2>>1]|0;b=(c[r>>2]|0)+36|0;if(c[q>>2]|0)c[o>>2]=(c[b+12>>2]|0)+(
d<<3);else c[o>>2]=(c[b+20>>2]|0)+(d<<3);c[h>>2]=(c[(c[r>>2]|0)+36+16
>>2]|0)+(e[(c[r>>2]|0)+284+2>>1]<<3);if((e[(c[r>>2]|0)+284+2>>1]|0)
x3e;>>0<(e[(c[r>>2]|0)+36+8>>1]|0)>>>0?(e[(c[r>>2]|0)+284+4>>
;1]|0)>>>0<(e[(c[r>>2]|0)+72+8>>1]|0)>>>0:0){d=c[(c[r>>2]|0)+576
>>2]|0;b=c[r>>2]|0;f=e[(c[r>>2]|0)+284+4>>1]|0;g=(c[r>>2]|0)+72|0;if(c[q>
x3e;2]|0)c[m>>2]=Oa[d&63](b,(c[(c[g+12>>2]|0)+(f<<3)>>2]|0)-(c[c[o>>2]>
;>2]|0)|0,(c[(c[(c[r>>2]|0)+72+12>>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)+4
x3e;>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;else c[m>>2]=Oa[d&63](b,(c[(c[g+20>>2]|
0)+(f<<3)>>2]|0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+72+20>>2]|0)+(
e[(c[r>>2]|0)+284+4>>1]<<3)+4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;c[
k>>2]=Oa[c[(c[r>>2]|0)+572>>2]&63](c[r>>2]|0,(c[(c[(c[r>>2]|0)+72+16>
;>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)>>2]|0)-(c[c[h>>2]>>2]|0)|0
,(c[(c[(c[r>>2]|0)+72+16>>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)+4>>2]|0
)-(c[(c[h>>2]|0)+4>>2]|0)|0)|0}else{c[m>>2]=0;c[k>>2]=0}while(1){b=c[r>>2]|0;if
((c[(c[r>>2]|0)+284+20>>2]|0)<=0){d=34;break}f=b+28|0;g=(c[f>>2]|0)+-1|0;c[f>>2]=g;
c[p>>2]=c[(c[(c[r>>2]|0)+24>>2]|0)+(g<<2)>>2];if((c[p>>2]|0)>
x3e;>0>=(e[(c[r>>2]|0)+108+8>>1]|0)>>>0){if(a[(c[r>>2]|0)+561>>
0]|0){d=22;break}}else{d=c[(c[r>>2]|0)+576>>2]|0;b=c[r>>2]|0;f=c[p>>2]|0;g=(c[r>>
;2]|0)+108|0;if(c[q>>2]|0)c[n>>2]=Oa[d&63](b,(c[(c[g+12>>2]|0)+(f<<3)>>2]|
0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+12>>2]|0)+(c[p>>2]<<3)+
4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;else c[n>>2]=Oa[d&63](b,(c[(c[g+20>>
;2]|0)+(f<<3)>>2]|0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+20>>2
]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;c[j>>2]=Oa[c
[(c[r>>2]|0)+572>>2]&63](c[r>>2]|0,(c[(c[(c[r>>2]|0)+108+16>>2]|0)+(c[p
x3e;>2]<<3)>>2]|0)-(c[c[h>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+16>>
;2]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0)|0)|0;if(c[n>>2]|
0){if(c[m>>2]|0)d=xb(c[n>>2]|0,c[k>>2]|0,c[m>>2]|0)|0;else d=c[j>>2]|0;c[l>
;>2]=d}else c[l>>2]=0;_a[c[(c[r>>2]|0)+584>>2]&15](c[r>>2]|0,(c[r>>2
]|0)+108|0,c[p>>2]&65535,(c[l>>2]|0)-(c[j>>2]|0)|0)}g=(c[r>>2]|0)+284+20|0;c[g>
;>2]=(c[g>>2]|0)+-1}if((d|0)==22){c[(c[r>>2]|0)+12>>2]=134;i=s;return}else if((d|0)==34){c[b+
284+20>>2]=1;c[(c[r>>2]|0)+32>>2]=c[(c[r>>2]|0)+28>>2];i=s;return}}function sg
(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+8|0;j=m+4|0;l=m+12|0;k=m;c[h>>2]=f;c[j>>2]=g;b[l
x3e;>1]=c[c[j>>2]>>2];if((e[l>>1]|0)>>>0<(e[(c[h>>2]|0)+72+8>
;>1]|0)>>>0?(e[(c[h>>2]|0)+284>>1]|0)>>>0<(e[(c[h>>2]|0)+36
+8>>1]|0)>>>0:0){if(!(e[(c[h>>2]|0)+284+62>>1]|0)){f=(c[(c[h>>2]|0)+72+12
>>2]|0)+(e[l>>1]<<3)|0;g=(c[(c[h>>2]|0)+36+12>>2]|0)+(e[(c[h>>2]|0)+
284>>1]<<3)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];_a[c[(c[h>>
;2]|0)+588>>2]&15](c[h>>2]|0,(c[h>>2]|0)+72|0,b[l>>1]|0,c[(c[j>>2]|0)+4
x3e;>2]|0);f=(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)|0;g=(c[(c[h>>2]|0)+
72+12>>2]|0)+(e[l>>1]<<3)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>
;2]}c[k>>2]=Oa[c[(c[h>>2]|0)+572>>2]&63](c[h>>2]|0,(c[(c[(c[h>>2]|0)+72+16
>>2]|0)+(e[l>>1]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[(c[h
x3e;>2]|0)+284>>1]<<3)>>2]|0)|0,(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>
x3e;1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[(c[h>>2]|0)+284>>
;1]<<3)+4>>2]|0)|0)|0;_a[c[(c[h>>2]|0)+584>>2]&15](c[h>>2]|0,(c[h>
x3e;2]|0)+72|0,b[l>>1]|0,(c[(c[j>>2]|0)+4>>2]|0)-(c[k>>2]|0)|0);b[(c[h>>2]|0)+
284+2>>1]=b[(c[h>>2]|0)+284>>1]|0;b[(c[h>>2]|0)+284+4>>1]=b[l>>1]|0;
if(!(d[(c[h>>2]|0)+368>>0]&1)){i=m;return}b[(c[h>>2]|0)+284>>1]=b[l>>1]|0
;i=m;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return
}function tg(d,f){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+8|0;l=k+4|0;h=k+12|0;g=k;c[j>>2]=d;c[l>>
;2]=f;c[j>>2]=c[j>>2];c[l>>2]=c[l>>2];if((c[(c[j>>2]|0)+16>>2]|0)>
;=(c[(c[j>>2]|0)+284+20>>2]|0)?(e[(c[j>>2]|0)+284>>1]|0)>>>0<(e[(c[j
>>2]|0)+36+8>>1]|0)>>>0:0){while(1){d=c[j>>2]|0;if((c[(c[j>>2]|0)+284+20
x3e;>2]|0)<=0){f=11;break}f=d+28|0;c[f>>2]=(c[f>>2]|0)+-1;b[h>>1]=c[(c[(c[j>>2
]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<2)>>2];f=c[j>>2]|0;if((e[h>
;>1]|0)>>>0>=(e[(c[j>>2]|0)+72+8>>1]|0)>>>0){if(a[f+561>>0
]|0){f=8;break}}else{c[g>>2]=Oa[c[f+572>>2]&63](c[j>>2]|0,(c[(c[(c[j>>2]|0)+72+16
x3e;>2]|0)+(e[h>>1]<<3)>>2]|0)-(c[(c[(c[j>>2]|0)+36+16>>2]|0)+(e[(c[j>
;>2]|0)+284>>1]<<3)>>2]|0)|0,(c[(c[(c[j>>2]|0)+72+16>>2]|0)+(e[h>>
;1]<<3)+4>>2]|0)-(c[(c[(c[j>>2]|0)+36+16>>2]|0)+(e[(c[j>>2]|0)+284>>
1]<<3)+4>>2]|0)|0)|0;_a[c[(c[j>>2]|0)+584>>2]&15](c[j>>2]|0,(c[j>>
;2]|0)+72|0,b[h>>1]|0,0-(c[g>>2]|0)|0)}l=(c[j>>2]|0)+284+20|0;c[l>>2]=(c[l>>2]|
0)+-1}if((f|0)==8){c[(c[j>>2]|0)+12>>2]=134;i=k;return}else if((f|0)==11){c[d+284+20>>2]=1;c[(c[j
x3e;>2]|0)+32>>2]=c[(c[j>>2]|0)+28>>2];i=k;return}}if(!(a[(c[j>>2]|0)+561>>
;0]|0)){i=k;return}c[(c[j>>2]|0)+12>>2]=134;i=k;return}function ug(f,g){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;h=n+16|0;o=n+12|0;j=n+8|0;m=n+20|0;k=n+4|0;l=n;c[h>>2]=f;c[o>>2]=g;c[j>>2]=c[(
c[o>>2]|0)+4>>2];b[m>>1]=c[c[o>>2]>>2];if((e[m>>1]|0)>>>
;0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0?(c[j>>2]|0)>>>0<(c[(c[h
x3e;>2]|0)+380>>2]|0)>>>0:0){c[k>>2]=Ya[c[(c[h>>2]|0)+592>>2]&127
](c[h>>2]|0,c[j>>2]|0)|0;if(!(e[(c[h>>2]|0)+284+60>>1]|0)){o=qg(c[k>>2]|0,b[(c
[h>>2]|0)+284+14>>1]|0)|0;c[(c[(c[h>>2]|0)+36+12>>2]|0)+(e[m>>1]<<3)
x3e;>2]=o;o=qg(c[k>>2]|0,b[(c[h>>2]|0)+284+14+2>>1]|0)|0;c[(c[(c[h>>2]|0)+36+12>
;>2]|0)+(e[m>>1]<<3)+4>>2]=o;o=(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>
;1]<<3)|0;f=(c[(c[h>>2]|0)+36+12>>2]|0)+(e[m>>1]<<3)|0;c[o>>2]=c[f
x3e;>2];c[o+4>>2]=c[f+4>>2]}c[l>>2]=Oa[c[(c[h>>2]|0)+572>>2]&63](c[h
>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>>2]|0,c[(c[(c[h>
;>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)|0;if(d[(c[h>>2]|0)+368>
x3e;0]&1|0){o=(c[k>>2]|0)-(c[l>>2]|0)|0;if(((((c[k>>2]|0)-(c[l>>2]|0)|0)<0?0-o
|0:o)|0)>(c[(c[h>>2]|0)+284+36>>2]|0))c[k>>2]=c[l>>2];c[k>>2]=Oa[c[(c[h
x3e;>2]|0)+568>>2]&63](c[h>>2]|0,c[k>>2]|0,c[(c[h>>2]|0)+244+20>>2]|
0)|0}_a[c[(c[h>>2]|0)+584>>2]&15](c[h>>2]|0,(c[h>>2]|0)+36|0,b[m>>1]|0,(c
[k>>2]|0)-(c[l>>2]|0)|0);b[(c[h>>2]|0)+284>>1]=b[m>>1]|0;b[(c[h>>2]|
0)+284+2>>1]=b[m>>1]|0;i=n;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=n;return}c[(c[h>
x3e;2]|0)+12>>2]=134;i=n;return}function vg(a,f){a=a|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+4|0;h=l;k=l+10|0
;j=l+8|0;c[g>>2]=a;c[h>>2]=f;b[k>>1]=d[(c[(c[g>>2]|0)+356>>2]|0)+((c[(c[g>
;>2]|0)+360>>2]|0)+1)>>0]|0;if((e[k>>1]|0)>>>0>=((c[(c[g>>2]|0)+
20>>2]|0)+1-(c[(c[g>>2]|0)+16>>2]|0)|0)>>>0){c[(c[g>>2]|0)+12>>
2]=130;i=l;return}b[j>>1]=1;while(1){if((e[j>>1]|0|0)>(e[k>>1]|0|0))break;c[(c[h>>2
]|0)+((e[j>>1]|0)-1<<2)>>2]=d[(c[(c[g>>2]|0)+356>>2]|0)+((c[(c[g>>2]|
0)+360>>2]|0)+(e[j>>1]|0)+1)>>0];b[j>>1]=(b[j>>1]|0)+1<<16>>
;16}a=(c[g>>2]|0)+32|0;c[a>>2]=(c[a>>2]|0)+(e[k>>1]|0);i=l;return}function wg(f,g){f=f|0
;g=g|0;var h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+4|0;j=m;l=m+10|0;k=m+8|0;c[h>>2]=f;c[j>>2]=g;b[l>>
1]=d[(c[(c[h>>2]|0)+356>>2]|0)+((c[(c[h>>2]|0)+360>>2]|0)+1)>>0]|0;g=c[h>
x3e;2]|0;if((e[l>>1]|0)>>>0>=((c[(c[h>>2]|0)+20>>2]|0)+1-(c[(c[h>>2]|
0)+16>>2]|0)|0)>>>0){c[g+12>>2]=130;i=m;return}f=g+360|0;c[f>>2]=(c[f>>2]|
0)+2;b[k>>1]=0;while(1){g=c[h>>2]|0;if((e[k>>1]|0|0)>=(e[l>>1]|0|0))break;f=(xg(g)|
0)<<16>>16;c[(c[j>>2]|0)+((e[k>>1]|0)<<2)>>2]=f;b[k>>1]=(b
[k>>1]|0)+1<<16>>16}a[g+376>>0]=0;k=(c[h>>2]|0)+32|0;c[k>>2]=(c[k>
;>2]|0)+(e[l>>1]|0);i=m;return}function xg(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;a=(c[b>
x3e;2]|0)+360|0;c[a>>2]=(c[a>>2]|0)+2;i=e;return ((d[(c[(c[b>>2]|0)+356>>2]|0)+((c[(c[b
x3e;>2]|0)+360>>2]|0)-2)>>0]|0)<<8)+(d[(c[(c[b>>2]|0)+356>>2]|0)+((c[(c[b
>>2]|0)+360>>2]|0)-1)>>0]|0)&65535|0}function yg(b,f){b=b|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i
;i=i+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=b;c[h>>2]=f;c[j>>2]=c[c[h>>2]>>
2];f=c[g>>2]|0;do if((c[j>>2]|0)>>>0<(e[(c[g>>2]|0)+108+8>>1]|0)>
;>>0){b=c[g>>2]|0;if(d[f+368>>0]&1|0){c[k>>2]=Oa[c[b+576>>2]&63](c[g
>>2]|0,c[(c[(c[g>>2]|0)+108+12>>2]|0)+(c[j>>2]<<3)>>2]|0,c[(c[(c[g
x3e;>2]|0)+108+12>>2]|0)+(c[j>>2]<<3)+4>>2]|0)|0;break}else{c[k>>2]=Oa[c[
b+572>>2]&63](c[g>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(c[j>>2]<<
;3)>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(c[j>>2]<<3)+4>>2]|0)|0;break
}}else{if(!(a[f+561>>0]|0)){c[k>>2]=0;break}c[(c[g>>2]|0)+12>>2]=134;i=l;return}while(0);
c[c[h>>2]>>2]=c[k>>2];i=l;return}function zg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0
;g=l+8|0;h=l+4|0;j=l;k=l+12|0;c[g>>2]=d;c[h>>2]=f;b[k>>1]=c[c[h>>2]>>2];f=c[g
x3e;>2]|0;if((e[k>>1]|0)>>>0>=(e[(c[g>>2]|0)+108+8>>1]|0)>>>
;0){if(!(a[f+561>>0]|0)){i=l;return}c[(c[g>>2]|0)+12>>2]=134;i=l;return}else{c[j>>2]=Oa[
c[f+572>>2]&63](c[g>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(e[k>>1]<
x3c;3)>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)|0;
_a[c[(c[g>>2]|0)+584>>2]&15](c[g>>2]|0,(c[g>>2]|0)+108|0,b[k>>1]|0,(c[(c[
h>>2]|0)+4>>2]|0)-(c[j>>2]|0)|0);if(e[(c[g>>2]|0)+284+64>>1]|0){i=l;return}j=(
c[(c[g>>2]|0)+108+12>>2]|0)+(e[k>>1]<<3)|0;k=(c[(c[g>>2]|0)+108+16>>
2]|0)+(e[k>>1]<<3)|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];i=l;return}}
function Ag(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;r=i;i=i+32|0;h=r+24|0;j=r+20|0;l=r+30|0;m=r+28|0;k=r+16
|0;o=r+12|0;p=r+8|0;n=r;c[h>>2]=f;c[j>>2]=g;b[l>>1]=c[(c[j>>2]|0)+4>>2];b[m>
;>1]=c[c[j>>2]>>2];do if((e[m>>1]|0)>>>0<(e[(c[h>>2]|0)+36+8>
;>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h>>2]|0)+72+8>>1]|0)>
;>>0:0){g=c[h>>2]|0;if(d[(c[h>>2]|0)+368>>0]&1|0){c[k>>2]=Oa[c[g+572>
;>2]&63](c[h>>2]|0,(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>
x3e;2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)>>2]|0)|0,(c[(c[(c[h>
;>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>
x3e;2]|0)+(e[l>>1]<<3)+4>>2]|0)|0)|0;break}c[o>>2]=(c[g+36+20>>2]|0)+(e[m>
;>1]<<3);c[p>>2]=(c[(c[h>>2]|0)+72+20>>2]|0)+(e[l>>1]<<3);if((c
[(c[h>>2]|0)+216+4>>2]|0)==(c[(c[h>>2]|0)+216+8>>2]|0)){c[k>>2]=Oa[c[(c[h>
;>2]|0)+576>>2]&63](c[h>>2]|0,(c[c[o>>2]>>2]|0)-(c[c[p>>2]>>
;2]|0)|0,(c[(c[o>>2]|0)+4>>2]|0)-(c[(c[p>>2]|0)+4>>2]|0)|0)|0;c[k>>2]=Mb(c[k
x3e;>2]|0,c[(c[h>>2]|0)+216+4>>2]|0)|0;break}else{c[n>>2]=Mb((c[c[o>>2]>>
2]|0)-(c[c[p>>2]>>2]|0)|0,c[(c[h>>2]|0)+216+4>>2]|0)|0;c[n+4>>2]=Mb((c[(c[o>
;>2]|0)+4>>2]|0)-(c[(c[p>>2]|0)+4>>2]|0)|0,c[(c[h>>2]|0)+216+8>>2]|0)|0;c
[k>>2]=Oa[c[(c[h>>2]|0)+576>>2]&63](c[h>>2]|0,c[n>>2]|0,c[n+4>>
2]|0)|0;break}}else q=3;while(0);do if((q|0)==3){if(!(a[(c[h>>2]|0)+561>>0]|0)){c[k>>2]=0;break}c[(
c[h>>2]|0)+12>>2]=134;i=r;return}while(0);c[c[j>>2]>>2]=c[k>>2];i=r;return}function
Bg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=e[(c[d>>2]|0)+244+8>>1]|0;a=Mb(a,of(c[d>
;>2]|0)|0)|0;i=b;return a|0}function Cg(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+8|0;k=j+4|0;h=j;g=j+12|0;
c[f>>2]=b;c[k>>2]=e;if(c[c[k>>2]>>2]|0){i=j;return}c[h>>2]=1;a[g>>0]=
0;while(1){if(((Yf(c[f>>2]|0)|0)&255|0)==1){f=9;break}switch(d[(c[f>>2]|0)+368>>0]|0|0){case
88:{c[h>>2]=(c[h>>2]|0)+1;break}case 27:{a[g>>0]=(c[h>>2]|0)==1;break}case 89:{c[h>
x3e;2]=(c[h>>2]|0)+-1;a[g>>0]=(c[h>>2]|0)==0;break}default:{}}if(d[g>>0]|0|0){f=9;break}}
if((f|0)==9){i=j;return}}function Dg(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;p=i;i=i+32|0;o=p+20|0;h=p+16|0;m=p+12|
0;n=p+8|0;j=p+24|0;l=p+4|0;k=p;c[o>>2]=f;c[h>>2]=g;c[n>>2]=c[c[h>>2]>>2];c[m
x3e;>2]=1;while(1){h=c[(c[o>>2]|0)+28>>2]|0;if((c[m>>2]|0)>>>0>(c[n>
x3e;2]|0)>>>0){g=16;break}f=c[o>>2]|0;if((h|0)<2){g=4;break}h=f+28|0;c[h>>2]=(c[h>
x3e;2]|0)-2;b[j>>1]=c[(c[(c[o>>2]|0)+24>>2]|0)+((c[(c[o>>2]|0)+28>>2]|0)+1<
;<2)>>2];c[k>>2]=c[(c[(c[o>>2]|0)+24>>2]|0)+(c[(c[o>>2]|0)+28>>
2]<<2)>>2];if((e[j>>1]|0)>>>0>=(e[(c[o>>2]|0)+36+8>>1]|0)
x3e;>>0){if(a[(c[o>>2]|0)+561>>0]|0)c[(c[o>>2]|0)+12>>2]=134}else{c[l>>
;2]=(c[k>>2]&240)>>>4;switch(d[(c[o>>2]|0)+368>>0]|0){case 114:{c[l>>
;2]=(c[l>>2]|0)+32;break}case 113:{c[l>>2]=(c[l>>2]|0)+16;break}default:{}}c[l>>2]=(c[l
x3e;>2]|0)+(b[(c[o>>2]|0)+284+48>>1]|0);h=Bg(c[o>>2]|0)|0;if((h|0)==(c[l>>2]|0)){c[
k>>2]=(c[k>>2]&15)-8;if((c[k>>2]|0)>=0)c[k>>2]=(c[k>>2]|0)+1;c[k>
;>2]=(c[k>>2]<<6|0)/(1<<b[(c[o>>2]|0)+284+50>>1]|0)|0;_a[c[(c[o>>
;2]|0)+584>>2]&15](c[o>>2]|0,(c[o>>2]|0)+36|0,b[j>>1]|0,c[k>>2]|0)}}c[m
x3e;>2]=(c[m>>2]|0)+1}if((g|0)==4){c[f+12>>2]=129;i=p;return}else if((g|0)==16){c[(c[o>>2]|0)+
32>>2]=h;i=p;return}}function Eg(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;o=i;i=i+32|0;n=o+24|0;g=o+20|0;m
=o+16|0;l=o+12|0;h=o+8|0;k=o+4|0;j=o;c[n>>2]=e;c[g>>2]=f;c[m>>2]=c[c[g>>2]>>2];
c[l>>2]=1;while(1){g=c[(c[n>>2]|0)+28>>2]|0;if((c[l>>2]|0)>>>0>(c[m
x3e;>2]|0)>>>0){f=16;break}e=c[n>>2]|0;if((g|0)<2){f=4;break}g=e+28|0;c[g>>2]=(c[g
x3e;>2]|0)-2;c[h>>2]=c[(c[(c[n>>2]|0)+24>>2]|0)+((c[(c[n>>2]|0)+28>>2]|0)+
1<<2)>>2];c[j>>2]=c[(c[(c[n>>2]|0)+24>>2]|0)+(c[(c[n>>2]|0)+28>
x3e;2]<<2)>>2];if((c[h>>2]|0)>>>0>=(c[(c[n>>2]|0)+380>>2]|
0)>>>0){if(a[(c[n>>2]|0)+561>>0]|0){f=7;break}}else{c[k>>2]=(c[j>>2]&
;240)>>>4;switch(d[(c[n>>2]|0)+368>>0]|0){case 117:{c[k>>2]=(c[k>>2]|0)+32
;break}case 116:{c[k>>2]=(c[k>>2]|0)+16;break}default:{}}c[k>>2]=(c[k>>2]|0)+(b[(c[n>
;>2]|0)+284+48>>1]|0);g=Bg(c[n>>2]|0)|0;if((g|0)==(c[k>>2]|0)){c[j>>2]=(c[j>
x3e;2]&15)-8;if((c[j>>2]|0)>=0)c[j>>2]=(c[j>>2]|0)+1;c[j>>2]=(c[j>>2
]<<6|0)/(1<<b[(c[n>>2]|0)+284+50>>1]|0)|0;Ua[c[(c[n>>2]|0)+600>>2]
x26;31](c[n>>2]|0,c[h>>2]|0,c[j>>2]|0)}}c[l>>2]=(c[l>>2]|0)+1}if((f|0)==4){c[e
+12>>2]=129;i=o;return}else if((f|0)==7){c[(c[n>>2]|0)+12>>2]=134;i=o;return}else if((f|0)==16){c[(
c[n>>2]|0)+32>>2]=g;i=o;return}}function Fg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|
0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;switch(c[g>>2]&192|0){case 0:{c[(c[e>
;>2]|0)+476>>2]=(c[f>>2]|0)/2|0;break}case 64:{c[(c[e>>2]|0)+476>>2]=c[f>>
;2];break}case 128:{c[(c[e>>2]|0)+476>>2]=c[f>>2]<<1;break}case 192:{c[(c[e>>2
]|0)+476>>2]=c[f>>2];break}default:{}}switch(c[g>>2]&48|0){case 0:{c[(c[e>>2]|0)+480
>>2]=0;break}case 16:{c[(c[e>>2]|0)+480>>2]=(c[(c[e>>2]|0)+476>>2]|0)/4|0;break
}case 32:{c[(c[e>>2]|0)+480>>2]=(c[(c[e>>2]|0)+476>>2]|0)/2|0;break}case 48:{c[(c[e>
;>2]|0)+480>>2]=((c[(c[e>>2]|0)+476>>2]|0)*3|0)/4|0;break}default:{}}if(!(c[g>>2]
x26;15)){c[(c[e>>2]|0)+484>>2]=(c[(c[e>>2]|0)+476>>2]|0)-1;d=c[e>>2]|0;d=d+476
|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+480|0;a=c[d>>2]|0;a=(a|0)/256|0;c
[d>>2]=a;d=c[e>>2]|0;d=d+484|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;i=h;return}else{d=(_((
c[g>>2]&15)-4|0,c[(c[e>>2]|0)+476>>2]|0)|0)/8|0;c[(c[e>>2]|0)+484>>2]=d;d
=c[e>>2]|0;d=d+476|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+480|0;a=c[d>
;>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+484|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>
;2]=a;i=h;return}}function Gg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0;k=i;i=i+16|0;j=k+4|0;l=k;h=k+8|0;c[j>>2]=f;c[l>
;>2]=g;c[j>>2]=c[j>>2];c[l>>2]=c[l>>2];if((c[(c[j>>2]|0)+16>>2]|
0)<(c[(c[j>>2]|0)+284+20>>2]|0)){c[(c[j>>2]|0)+12>>2]=129;i=k;return}while(1){f=c[j
>>2]|0;if((c[(c[j>>2]|0)+284+20>>2]|0)<=0){g=9;break}l=f+28|0;c[l>>2]=(c[l>>
;2]|0)+-1;b[h>>1]=c[(c[(c[j>>2]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<
2)>>2];if((e[h>>1]|0)>>>0>=(e[(c[j>>2]|0)+144+8>>1]|0)>>
x3e;0){if(a[(c[j>>2]|0)+561>>0]|0){g=6;break}}else{l=(c[(c[j>>2]|0)+144+24>>2]|0)+(e[h
x3e;>1]|0)|0;a[l>>0]=d[l>>0]^1}l=(c[j>>2]|0)+284+20|0;c[l>>2]=(c[l>>2]|0)+-
1}if((g|0)==6){c[(c[j>>2]|0)+12>>2]=134;i=k;return}else if((g|0)==9){c[f+284+20>>2]=1;c[(c[j>
x3e;2]|0)+32>>2]=c[(c[j>>2]|0)+28>>2];i=k;return}}function Hg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0
,m=0,n=0;m=i;i=i+16|0;h=m+4|0;n=m;j=m+12|0;k=m+10|0;l=m+8|0;c[h>>2]=f;c[n>>2]=g;b[k>>1]=c[(c[n>
;>2]|0)+4>>2];b[l>>1]=c[c[n>>2]>>2];if((e[k>>1]|0)>>>0<
;(e[(c[h>>2]|0)+144+8>>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h>
x3e;2]|0)+144+8>>1]|0)>>>0:0){b[j>>1]=b[l>>1]|0;while(1){if((e[j>>1]|0)
x3e;(e[k>>1]|0))break;n=(c[(c[h>>2]|0)+144+24>>2]|0)+(e[j>>1]|0)|0;a[n>>0]=d[n
>>0]|1;b[j>>1]=(b[j>>1]|0)+1<<16>>16}i=m;return}if(!(a[(c[h>>2]|0)+561
>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}function Ig(f,g){f=f|0;g=g|0;var h=0,j=0,k
=0,l=0,m=0,n=0;m=i;i=i+16|0;h=m+4|0;n=m;j=m+12|0;k=m+10|0;l=m+8|0;c[h>>2]=f;c[n>>2]=g;b[k>>1]=c[(c
[n>>2]|0)+4>>2];b[l>>1]=c[c[n>>2]>>2];if((e[k>>1]|0)>>>
;0<(e[(c[h>>2]|0)+144+8>>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h
>>2]|0)+144+8>>1]|0)>>>0:0){b[j>>1]=b[l>>1]|0;while(1){if((e[j>>
;1]|0)>(e[k>>1]|0))break;n=(c[(c[h>>2]|0)+144+24>>2]|0)+(e[j>>1]|0)|0;a[n>>
;0]=d[n>>0]&-2;b[j>>1]=(b[j>>1]|0)+1<<16>>16}i=m;return}if(!(a[(c[h>
x3e;2]|0)+561>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}function Jg(b,f){b=b|0;f=f|0;
var g=0,h=0,j=0,k=0;k=i;i=i+16|0;g=k+8|0;h=k+4|0;j=k;c[g>>2]=b;c[h>>2]=f;c[j>>2]=c[c[h>>
2]>>2]&255;if((c[j>>2]|0)==255){a[(c[g>>2]|0)+284+53>>0]=1;i=k;return}if(!(c[j>
;>2]|0)){a[(c[g>>2]|0)+284+53>>0]=0;i=k;return}if(c[c[h>>2]>>2]&256|0?(e[(c[g
x3e;>2]|0)+244+8>>1]|0|0)<=(c[j>>2]|0):0)a[(c[g>>2]|0)+284+53>>0]=1;if(c[c[h
x3e;>2]>>2]&512|0?d[(c[g>>2]|0)+244+37>>0]|0|0:0)a[(c[g>>2]|0)+284+53>>
;0]=1;if(c[c[h>>2]>>2]&1024|0?d[(c[g>>2]|0)+244+38>>0]|0|0:0)a[(c[g>>2]|0
)+284+53>>0]=1;if(c[c[h>>2]>>2]&2048|0?(e[(c[g>>2]|0)+244+8>>1]|0|0)>
;(c[j>>2]|0):0)a[(c[g>>2]|0)+284+53>>0]=0;if(c[c[h>>2]>>2]&4096|0?d[(c[g
x3e;>2]|0)+244+37>>0]|0|0:0)a[(c[g>>2]|0)+284+53>>0]=0;if(!(c[c[h>>2]>>2]
x26;8192)){i=k;return}if(!(d[(c[g>>2]|0)+244+38>>0]|0)){i=k;return}a[(c[g>>2]|0)+284+53>>
;0]=0;i=k;return}function Kg(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;s=i;i=i+48|0;h=s+32|0;t=s+28|0
;j=s+24|0;k=s+20|0;l=s+16|0;m=s+38|0;n=s+36|0;o=s+12|0;q=s+8|0;p=s+4|0;r=s;c[h>>2]=f;c[t>>2]=g;b[m>>
;1]=c[(c[t>>2]|0)+4>>2];b[n>>1]=c[c[t>>2]>>2];if((e[n>>1]|0)>
x3e;>0<(e[(c[h>>2]|0)+72+8>>1]|0)>>>0?(e[m>>1]|0)>>>0<
;(e[(c[h>>2]|0)+108+8>>1]|0)>>>0:0){c[o>>2]=(c[(c[h>>2]|0)+72+12>>
;2]|0)+(e[n>>1]<<3);c[q>>2]=(c[(c[h>>2]|0)+108+12>>2]|0)+(e[m>>1]<
;<3);c[j>>2]=(c[c[o>>2]>>2]|0)-(c[c[q>>2]>>2]|0);c[k>>2]=(c[(c[
o>>2]|0)+4>>2]|0)-(c[(c[q>>2]|0)+4>>2]|0);if(d[(c[h>>2]|0)+368>>0]
x26;1|0){c[l>>2]=c[k>>2];c[k>>2]=c[j>>2];c[j>>2]=0-(c[l>>2]|0)}Rf(c[
h>>2]|0,c[j>>2]|0,c[k>>2]|0,(c[h>>2]|0)+284+6|0)|0;c[p>>2]=(c[(c[h>>
2]|0)+72+16>>2]|0)+(e[n>>1]<<3);c[r>>2]=(c[(c[h>>2]|0)+108+16>>2]|0)+(
e[m>>1]<<3);c[j>>2]=(c[c[p>>2]>>2]|0)-(c[c[r>>2]>>2]|0);c[
k>>2]=(c[(c[p>>2]|0)+4>>2]|0)-(c[(c[r>>2]|0)+4>>2]|0);if(d[(c[h>>2]|
0)+368>>0]&1|0){c[l>>2]=c[k>>2];c[k>>2]=c[j>>2];c[j>>2]=0-(c[l
x3e;>2]|0)}Rf(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,(c[h>>2]|0)+284+10|0)|0;vf(c[h>>
;2]|0);i=s;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=s;return}c[(c[h>>2]|0)+12>>2]=134;i=s
;return}function Lg(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=
b;c[g>>2]=0;c[g>>2]=c[c[f>>2]>>2]&1|0?35:0;if(c[c[f>>2]>>2]&
;2|0?d[(c[e>>2]|0)+244+37>>0]|0|0:0)c[g>>2]=c[g>>2]|128;if(c[c[f>>2]>>
;2]&4|0?d[(c[e>>2]|0)+244+38>>0]|0|0:0)c[g>>2]=c[g>>2]|256;if(!(c[c[f>>2]
x3e;>2]&32)){b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}if(!(d[(c[e>>2]|0)+604
>>0]|0)){b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}c[g>>2]=c[g>>2
]|4096;b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}function Mg(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;j=k+12|0;g=k+8|0;h=k+4|0;f=k;c[j>>2]=b;c[g>>2]=e;c[h>>2]=c[(c[j>>2]|
0)+416>>2];c[f>>2]=(c[h>>2]|0)+(c[(c[j>>2]|0)+408>>2]<<4);while(1){if
((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break;if((c[(c[h>>2]|0)+8>
;>2]|0)==(c[c[g>>2]>>2]|0))break;c[h>>2]=(c[h>>2]|0)+16}do if((c[h>>2]|0)==(
c[f>>2]|0)){e=c[j>>2]|0;if((c[(c[j>>2]|0)+408>>2]|0)>>>0<(c[(c[j>
;>2]|0)+412>>2]|0)>>>0){f=e+408|0;c[f>>2]=(c[f>>2]|0)+1;break}c[e+12>>
;2]=141;i=k;return}while(0);if(0<=(c[c[g>>2]>>2]|0)?(c[c[g>>2]>>2]|0)<=255:0){
c[(c[h>>2]|0)+8>>2]=c[c[g>>2]>>2]&255;c[(c[h>>2]|0)+4>>2]=(c[(c
[j>>2]|0)+360>>2]|0)+1;c[c[h>>2]>>2]=c[(c[j>>2]|0)+352>>2];a[(c[h>
;>2]|0)+12>>0]=1;if((c[c[g>>2]>>2]|0)>>>0>(c[(c[j>>2]|0)+424>
;>2]|0)>>>0)c[(c[j>>2]|0)+424>>2]=c[c[g>>2]>>2]&255;a:while(1){
if((Yf(c[j>>2]|0)|0)&255|0){e=17;break}switch(d[(c[j>>2]|0)+368>>0]|0|0){case 44:case 137:{e=
16;break a}case 45:{e=17;break a}default:{}}}if((e|0)==16){c[(c[j>>2]|0)+12>>2]=137;i=k;return}else if((e|0)==
17){i=k;return}}c[(c[j>>2]|0)+12>>2]=141;i=k;return}function Ng(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;g=d+8|0;f=d+4|0;h=d;c[j>>2]=a;c[e>>2]=b;c[j>>2]=c[j>>2];
c[g>>2]=c[(c[e>>2]|0)+8>>2];c[f>>2]=c[(c[e>>2]|0)+4>>2];c[h>>
;2]=c[c[e>>2]>>2];c[(c[e>>2]|0)+8>>2]=c[h>>2];c[(c[e>>2]|0)+4>
x3e;2]=c[g>>2];c[c[e>>2]>>2]=c[f>>2];i=d;return}function Og(a,b){a=a|0;b=b|0;var d=0,e=0
,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if((c[c[e>>2]>>2]|0)<0){i=f;return
}c[(c[d>>2]|0)+284+56>>2]=c[c[e>>2]>>2];i=f;return}function Pg(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;k=j+8|0;g=j+4|0;h=j;c[f>>2]=b;c[k>>2]=e;c[g>>2]=c[(c[k>
x3e;2]|0)+4>>2];c[h>>2]=c[c[k>>2]>>2];if((c[g>>2]|0)<1|(c[g>>2]|
0)>2){if(!(a[(c[f>>2]|0)+561>>0]|0)){i=j;return}c[(c[f>>2]|0)+12>>2]=134;i=j;return
}else{if(c[h>>2]|0)c[h>>2]=c[g>>2];a[(c[f>>2]|0)+284+52>>0]=d[(c[f>>
2]|0)+284+52>>0]&~(c[g>>2]&255)|c[h>>2]&255;i=j;return}}function Qg(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;p=i;i=i+32|0;k=p+24|0;q=p+20|0;o=p+28|0;h=p+16|0;j=p+12|0;m=p+8|0;l=p+4|0;n=p;c[k>
;>2]=f;c[q>>2]=g;b[o>>1]=c[c[q>>2]>>2];c[h>>2]=(c[(c[q>>2]|0)+4
>>2]|0)+1;if(((e[o>>1]|0)>>>0<(e[(c[k>>2]|0)+72+8>>1]|0)>>
x3e;0?(c[h>>2]|0)>>>0<((c[(c[k>>2]|0)+380>>2]|0)+1|0)>>>0:0)?(e
[(c[k>>2]|0)+284>>1]|0)>>>0<(e[(c[k>>2]|0)+36+8>>1]|0)>>
x3e;0:0){if(c[h>>2]|0)c[j>>2]=Ya[c[(c[k>>2]|0)+592>>2]&127](c[k>>2]|0,(c[
h>>2]|0)-1|0)|0;else c[j>>2]=0;q=(c[j>>2]|0)-(c[(c[k>>2]|0)+284+44>>2]|0)|0;do
if(((((c[j>>2]|0)-(c[(c[k>>2]|0)+284+44>>2]|0)|0)<0?0-q|0:q)|0)<(c[(c[k>>2]|0
)+284+40>>2]|0)){g=c[(c[k>>2]|0)+284+44>>2]|0;if((c[j>>2]|0)>=0){c[j>>2]=
g;break}else{c[j>>2]=0-g;break}}while(0);if(!(e[(c[k>>2]|0)+284+62>>1]|0)){q=c[(c[(c[k>>
2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)>>2]|0;q=q+(qg(c[j>>2]|
0,b[(c[k>>2]|0)+284+14>>1]|0)|0)|0;c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<
;<3)>>2]=q;q=c[(c[(c[k>>2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<
x3c;3)+4>>2]|0;q=q+(qg(c[j>>2]|0,b[(c[k>>2]|0)+284+14+2>>1]|0)|0)|0;c[(c[(c[k>>
;2]|0)+72+12>>2]|0)+(e[o>>1]<<3)+4>>2]=q;q=(c[(c[k>>2]|0)+72+16>>2]|
0)+(e[o>>1]<<3)|0;f=(c[(c[k>>2]|0)+36+16>>2]|0)+(e[o>>1]<<3)|0;c[q
x3e;>2]=c[f>>2];c[q+4>>2]=c[f+4>>2]}c[n>>2]=Oa[c[(c[k>>2]|0)+576>>
;2]&63](c[k>>2]|0,(c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<<3)>>
2]|0)-(c[(c[(c[k>>2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)>>2]|
0)|0,(c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<<3)+4>>2]|0)-(c[(c[(c[k>>
;2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)+4>>2]|0)|0)|0;c[l>>2]=
Oa[c[(c[k>>2]|0)+572>>2]&63](c[k>>2]|0,(c[(c[(c[k>>2]|0)+72+16>>2]|0)+(e[
o>>1]<<3)>>2]|0)-(c[(c[(c[k>>2]|0)+36+16>>2]|0)+(e[(c[k>>2]|0)+284
x3e;>1]<<3)>>2]|0)|0,(c[(c[(c[k>>2]|0)+72+16>>2]|0)+(e[o>>1]<<3
)+4>>2]|0)-(c[(c[(c[k>>2]|0)+36+16>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)+
4>>2]|0)|0)|0;if(a[(c[k>>2]|0)+284+32>>0]|0?(c[n>>2]^c[j>>2]|0)<0:0)c[j
x3e;>2]=0-(c[j>>2]|0);g=c[k>>2]|0;if(d[(c[k>>2]|0)+368>>0]&4|0){if((e[g+284+60
>>1]|0)==(e[(c[k>>2]|0)+284+62>>1]|0)?(q=(c[j>>2]|0)-(c[n>>2]|0)|0,((((c[j>
;>2]|0)-(c[n>>2]|0)|0)<0?0-q|0:q)|0)>=(c[(c[k>>2]|0)+284+36>>2]|0)):0)c[j>>
;2]=c[n>>2];c[m>>2]=Oa[c[(c[k>>2]|0)+568>>2]&63](c[k>>2]|0,c[j>>
;2]|0,c[(c[k>>2]|0)+244+20+((d[(c[k>>2]|0)+368>>0]&3)<<2)>>2]|0)|0}else c
[m>>2]=If(g,c[j>>2]|0,c[(c[k>>2]|0)+244+20+((d[(c[k>>2]|0)+368>>0]&3)<
;<2)>>2]|0)|0;do if(d[(c[k>>2]|0)+368>>0]&8|0){g=c[m>>2]|0;h=c[(c[k>>
;2]|0)+284+24>>2]|0;if((c[n>>2]|0)>=0){if((g|0)>=(h|0))break;c[m>>2]=c[(c[k>>2
]|0)+284+24>>2];break}else{if((g|0)<=(0-h|0))break;c[m>>2]=0-(c[(c[k>>2]|0)+284+24>>
;2]|0);break}}while(0);_a[c[(c[k>>2]|0)+584>>2]&15](c[k>>2]|0,(c[k>>2]|0)+72|0,b[o
x3e;>1]|0,(c[m>>2]|0)-(c[l>>2]|0)|0);b[(c[k>>2]|0)+284+2>>1]=b[(c[k>>2]|0
)+284>>1]|0;if(d[(c[k>>2]|0)+368>>0]&16|0)b[(c[k>>2]|0)+284>>1]=b[o>
x3e;1]|0;b[(c[k>>2]|0)+284+4>>1]=b[o>>1]|0;i=p;return}if(!(a[(c[k>>2]|0)+561>>
0]|0)){i=p;return}c[(c[k>>2]|0)+12>>2]=134;i=p;return}function Rg(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;s=i;i=i+48|0;o=s+36|0;t=s+32|0;r=s+40|0;q=s+28|0;p=s+24|0;j=s+20|0;l=s+16|0;k=s+12|0;m=s+8|0;h=s;c[o
x3e;>2]=f;c[t>>2]=g;b[r>>1]=c[c[t>>2]>>2];if((e[r>>1]|0)>>>
;0<(e[(c[o>>2]|0)+72+8>>1]|0)>>>0?(e[(c[o>>2]|0)+284>>1]|0)>>
;>0<(e[(c[o>>2]|0)+36+8>>1]|0)>>>0:0){do if((e[(c[o>>2]|0)+284+60>
x3e;1]|0)!=0?(e[(c[o>>2]|0)+284+62>>1]|0)!=0:0){c[k>>2]=(c[(c[o>>2]|0)+72+20>>
2]|0)+(e[r>>1]<<3);c[m>>2]=(c[(c[o>>2]|0)+36+20>>2]|0)+(e[(c[o>>2]|0
)+284>>1]<<3);if((c[(c[o>>2]|0)+216+4>>2]|0)==(c[(c[o>>2]|0)+216+8>>
2]|0)){c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o>>2]|0,(c[c[k>>2]>>
;2]|0)-(c[c[m>>2]>>2]|0)|0,(c[(c[k>>2]|0)+4>>2]|0)-(c[(c[m>>2]|0)+4>>
;2]|0)|0)|0;c[q>>2]=Mb(c[q>>2]|0,c[(c[o>>2]|0)+216+4>>2]|0)|0;break}else{c[h>>
2]=Mb((c[c[k>>2]>>2]|0)-(c[c[m>>2]>>2]|0)|0,c[(c[o>>2]|0)+216+4>>2]|
0)|0;c[h+4>>2]=Mb((c[(c[k>>2]|0)+4>>2]|0)-(c[(c[m>>2]|0)+4>>2]|0)|0,c[(c[o>
;>2]|0)+216+8>>2]|0)|0;c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o>>2]|
0,c[h>>2]|0,c[h+4>>2]|0)|0;break}}else n=7;while(0);if((n|0)==7){c[j>>2]=(c[(c[o>>2]|0)+
72+12>>2]|0)+(e[r>>1]<<3);c[l>>2]=(c[(c[o>>2]|0)+36+12>>2]|0)+(e[(c[
o>>2]|0)+284>>1]<<3);c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o
x3e;>2]|0,(c[c[j>>2]>>2]|0)-(c[c[l>>2]>>2]|0)|0,(c[(c[j>>2]|0)+4>>
;2]|0)-(c[(c[l>>2]|0)+4>>2]|0)|0)|0}t=(c[q>>2]|0)-(c[(c[o>>2]|0)+284+44>>2]|0)|
0;do if(((((c[q>>2]|0)-(c[(c[o>>2]|0)+284+44>>2]|0)|0)<0?0-t|0:t)|0)<(c[(c[o>>
2]|0)+284+40>>2]|0)){g=c[(c[o>>2]|0)+284+44>>2]|0;if((c[q>>2]|0)>=0){c[q>>
;2]=g;break}else{c[q>>2]=0-g;break}}while(0);g=c[o>>2]|0;if(d[(c[o>>2]|0)+368>>0]&4
|0)c[p>>2]=Oa[c[g+568>>2]&63](c[o>>2]|0,c[q>>2]|0,c[(c[o>>2]|0)+244+20+((
d[(c[o>>2]|0)+368>>0]&3)<<2)>>2]|0)|0;else c[p>>2]=If(g,c[q>>2]|
0,c[(c[o>>2]|0)+244+20+((d[(c[o>>2]|0)+368>>0]&3)<<2)>>2]|0)|0;do if(d[(c
[o>>2]|0)+368>>0]&8|0){g=c[p>>2]|0;f=c[(c[o>>2]|0)+284+24>>2]|0;if((c[q
x3e;>2]|0)>=0){if((g|0)>=(f|0))break;c[p>>2]=c[(c[o>>2]|0)+284+24>>2];break}else{if
((g|0)<=(0-f|0))break;c[p>>2]=0-(c[(c[o>>2]|0)+284+24>>2]|0);break}}while(0);c[q>>2
]=Oa[c[(c[o>>2]|0)+572>>2]&63](c[o>>2]|0,(c[(c[(c[o>>2]|0)+72+16>>2]|0)+(
e[r>>1]<<3)>>2]|0)-(c[(c[(c[o>>2]|0)+36+16>>2]|0)+(e[(c[o>>2]|0)+284
>>1]<<3)>>2]|0)|0,(c[(c[(c[o>>2]|0)+72+16>>2]|0)+(e[r>>1]<<
;3)+4>>2]|0)-(c[(c[(c[o>>2]|0)+36+16>>2]|0)+(e[(c[o>>2]|0)+284>>1]<<
3)+4>>2]|0)|0)|0;_a[c[(c[o>>2]|0)+584>>2]&15](c[o>>2]|0,(c[o>>2]|0)+72|0,
b[r>>1]|0,(c[p>>2]|0)-(c[q>>2]|0)|0);b[(c[o>>2]|0)+284+2>>1]=b[(c[o>>
;2]|0)+284>>1]|0;b[(c[o>>2]|0)+284+4>>1]=b[r>>1]|0;if(!(d[(c[o>>2]|0)+368>
;>0]&16)){i=s;return}b[(c[o>>2]|0)+284>>1]=b[r>>1]|0;i=s;return}if(!(a[(c[o>>2
]|0)+561>>0]|0)){i=s;return}c[(c[o>>2]|0)+12>>2]=134;i=s;return}function Sg(f,g){f=f|0;g=g|0;var h
=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+4|0;j=m;l=m+10|0;k=m+8|0;c[h>>2]=f;c[j>>2]=g;b[l>>1]=(d[(c[h
x3e;>2]|0)+368>>0]|0)-184+1;g=c[h>>2]|0;if((e[l>>1]|0)>>>0>=((c[(c[h>
;>2]|0)+20>>2]|0)+1-(c[(c[h>>2]|0)+16>>2]|0)|0)>>>0){c[g+12>>2]=130;
i=m;return}f=g+360|0;c[f>>2]=(c[f>>2]|0)+1;b[k>>1]=0;while(1){g=c[h>>2]|0;if((e[k>
x3e;1]|0|0)>=(e[l>>1]|0|0))break;f=(xg(g)|0)<<16>>16;c[(c[j>>2]|0)+((e[k>>
;1]|0)<<2)>>2]=f;b[k>>1]=(b[k>>1]|0)+1<<16>>16}a[g+376>>0]=
0;i=m;return}function Tg(a,f){a=a|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+4|0;h=l;k=l+10|0;j=l+8|0;c[g>>2]=a;
c[h>>2]=f;b[k>>1]=(d[(c[g>>2]|0)+368>>0]|0)-176+1;if((e[k>>1]|0)>>
x3e;0>=((c[(c[g>>2]|0)+20>>2]|0)+1-(c[(c[g>>2]|0)+16>>2]|0)|0)>>>0){
c[(c[g>>2]|0)+12>>2]=130;i=l;return}b[j>>1]=1;while(1){if((e[j>>1]|0|0)>(e[k>
x3e;1]|0|0))break;c[(c[h>>2]|0)+((e[j>>1]|0)-1<<2)>>2]=d[(c[(c[g>>2]|0)+356>
;>2]|0)+((c[(c[g>>2]|0)+360>>2]|0)+(e[j>>1]|0))>>0];b[j>>1]=(b[j>>
;1]|0)+1<<16>>16}i=l;return}function Ug(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;e=m+24|0;f
=m+20|0;j=m+16|0;h=m+12|0;g=m+8|0;k=m+4|0;l=m;c[f>>2]=d;c[j>>2]=c[c[f>>2]>>2];if(a[(c[f
x3e;>2]|0)+292>>0]|0)c[h>>2]=c[(c[f>>2]|0)+296>>2];else c[h>>2]=c[(c[(c[j
>>2]|0)+96>>2]|0)+40>>2];if(!(c[h>>2]|0)){c[e>>2]=153;l=c[e>>2]|0;i=
m;return l|0}Vg(c[h>>2]|0,c[j>>2]|0,c[f>>2]|0)|0;c[(c[h>>2]|0)+428>>2]=0;c[(c[
h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+476>>2]=64;c[(c[h>>2]|0)+480>>2]=0;c
[(c[h>>2]|0)+484>>2]=0;a[(c[h>>2]|0)+488>>0]=0;c[(c[h>>2]|0)+564>>2]=
65536;c[k>>2]=(c[h>>2]|0)+216;c[l>>2]=(c[h>>2]|0)+244;b[c[k>>2]>>1]=
0;b[(c[k>>2]|0)+2>>1]=0;c[(c[k>>2]|0)+4>>2]=0;c[(c[k>>2]|0)+8>>2]=0;
b[(c[l>>2]|0)+8>>1]=0;c[(c[l>>2]|0)+16>>2]=0;c[(c[l>>2]|0)+12>>2]=65536
;Xg(c[h>>2]|0,1,c[(c[j>>2]|0)+656>>2]|0,c[(c[j>>2]|0)+652>>2]|0)|0;Yg(c[h>
;>2]|0,2)|0;Yg(c[h>>2]|0,3)|0;if((c[(c[j>>2]|0)+652>>2]|0)>>>0>0){c[g>
;>2]=Zg(c[h>>2]|0,1,0)|0;if(!(c[g>>2]|0))c[g>>2]=Ta[c[(c[j>>2]|0)+688>>2]
x26;63](c[h>>2]|0)|0}else c[g>>2]=0;if(!(c[g>>2]|0))_g(c[h>>2]|0,c[f>>2]|0)|0;
c[e>>2]=c[g>>2];l=c[e>>2]|0;i=m;return l|0}function Vg(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;p=i;i=i+32|0;h=p+28|0;j=p+24|0;q=p+20|0;k=p+16|0;m=p+12|0;o=p+8|0;n=p+4|0;l=p;c[j>>2]=d;c[q>
;>2]=f;c[k>>2]=g;c[c[j>>2]>>2]=c[q>>2];c[n>>2]=(c[q>>2]|0)+260;
c[(c[j>>2]|0)+4>>2]=c[k>>2];if(c[k>>2]|0){c[(c[j>>2]|0)+396>>2]=c[(c
[k>>2]|0)+116>>2];c[(c[j>>2]|0)+400>>2]=c[(c[k>>2]|0)+120>>2];c[(c[j
>>2]|0)+408>>2]=c[(c[k>>2]|0)+128>>2];c[(c[j>>2]|0)+412>>2]=c[(c[k
x3e;>2]|0)+132>>2];c[(c[j>>2]|0)+404>>2]=c[(c[k>>2]|0)+124>>2];c[(c[j>
;>2]|0)+416>>2]=c[(c[k>>2]|0)+136>>2];d=(c[j>>2]|0)+244|0;f=(c[k>>2]|0)+72
|0;g=d+40|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));q=(c[j>>2]|0)+216|0;g=(c[k
x3e;>2]|0)+44|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[q+8>>2]=c[g+8>
x3e;2];c[q+12>>2]=c[g+12>>2];c[q+16>>2]=c[g+16>>2];c[q+20>>2]=c[g+20>>
;2];c[q+24>>2]=c[g+24>>2];c[(c[j>>2]|0)+420>>2]=c[(c[k>>2]|0)+140>>2
];c[(c[j>>2]|0)+424>>2]=c[(c[k>>2]|0)+144>>2];c[m>>2]=0;while(1){if((c[m>
x3e;2]|0)>=3)break;q=(c[j>>2]|0)+444+(c[m>>2]<<3)|0;g=(c[k>>2]|0)+148+(c[m>>
;2]<<3)|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[m>>2]=(c[m>>
;2]|0)+1}d=(c[j>>2]|0)+284|0;f=(c[k>>2]|0)+172|0;g=d+68|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f
+4|0}while((d|0)<(g|0));c[(c[j>>2]|0)+380>>2]=c[(c[k>>2]|0)+240>>2];c[(c[j>>
;2]|0)+384>>2]=c[(c[k>>2]|0)+244>>2];b[(c[j>>2]|0)+468>>1]=b[(c[k>>2
]|0)+248>>1]|0;c[(c[j>>2]|0)+472>>2]=c[(c[k>>2]|0)+252>>2];d=(c[j>>2
]|0)+180|0;f=(c[k>>2]|0)+256|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));
d=(c[j>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+72|0;f=(c[j
>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>
;2]|0)+108|0;f=(c[j>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0))}
c[o>>2]=c[(c[j>>2]|0)+20>>2];c[l>>2]=Wg(c[(c[j>>2]|0)+8>>2]|0,o,4,(c
[j>>2]|0)+24|0,(e[(c[n>>2]|0)+24>>1]|0)+32|0)|0;c[(c[j>>2]|0)+20>>2]=c[o>
x3e;2];if(c[l>>2]|0){c[h>>2]=c[l>>2];q=c[h>>2]|0;i=p;return q|0}c[o>>2]=c[(c[j
>>2]|0)+388>>2];c[l>>2]=Wg(c[(c[j>>2]|0)+8>>2]|0,o,1,(c[j>>2]|0)+392
|0,e[(c[n>>2]|0)+26>>1]|0)|0;c[(c[j>>2]|0)+388>>2]=c[o>>2]&65535;if(c[l
x3e;>2]|0){c[h>>2]=c[l>>2];q=c[h>>2]|0;i=p;return q|0}else{b[(c[j>>2]|0)+144+8>
;>1]=0;b[(c[j>>2]|0)+144+10>>1]=0;d=(c[j>>2]|0)+72|0;f=(c[j>>2]|0)+144|0;g=d+36|0;do
{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+108|0;f=(c[j>>2]|
0)+144|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+36|0;f=(
c[j>>2]|0)+144|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));a[(c[j>
x3e;2]|0)+488>>0]=0;c[h>>2]=0;q=c[h>>2]|0;i=p;return q|0}return 0}function Wg(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;o=i;i=i+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;p=o+12|0;l=o+8|0;m
=o+4|0;n=o;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[p>>2]=e;c[l>>2]=f;c[n>>2]=
c[p>>2];do if((c[c[j>>2]>>2]|0)>>>0<(c[l>>2]|0)>>>0){
b=_(c[c[j>>2]>>2]|0,c[k>>2]|0)|0;p=_(c[l>>2]|0,c[k>>2]|0)|0;p=hc(c[h>>
;2]|0,1,b,p,c[c[n>>2]>>2]|0,m)|0;c[c[n>>2]>>2]=p;if(!(c[m>>2]|0)){c[c[j>
x3e;2]>>2]=c[l>>2];break}c[g>>2]=c[m>>2];p=c[g>>2]|0;i=o;return p|0}while(0);c
[g>>2]=0;p=c[g>>2]|0;i=o;return p|0}function Xg(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;g=f+8|0;k=f+4|0;j=f;c[h>>2]=a;c[g>>2]=b;c[k>>2]=d;c[j>>2]=e;c[(c[h>
;>2]|0)+444+((c[g>>2]|0)-1<<3)>>2]=c[k>>2];c[(c[h>>2]|0)+444+((c[g>
x3e;2]|0)-1<<3)+4>>2]=c[j>>2];i=f;return 0}function Yg(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)+444+((c[e>>2]|0)-1<<3)>
x3e;2]=0;c[(c[f>>2]|0)+444+((c[e>>2]|0)-1<<3)+4>>2]=0;i=d;return 0}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;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>
;>2]=d;c[j>>2]=(c[f>>2]|0)+444+((c[g>>2]|0)-1<<3);c[(c[f>>2]|0)+356>
x3e;2]=c[c[j>>2]>>2];c[(c[f>>2]|0)+364>>2]=c[(c[j>>2]|0)+4>>2];c[(c[
f>>2]|0)+360>>2]=c[h>>2];c[(c[f>>2]|0)+352>>2]=c[g>>2];i=e;return 0}
function _g(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[(c[e
>>2]|0)+116>>2]=c[(c[d>>2]|0)+396>>2];c[(c[e>>2]|0)+128>>2]=c[(c[d
x3e;>2]|0)+408>>2];c[(c[e>>2]|0)+140>>2]=c[(c[d>>2]|0)+420>>2];c[(c[e>
;>2]|0)+144>>2]=c[(c[d>>2]|0)+424>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)
x3e;=3)break;b=(c[e>>2]|0)+148+(c[f>>2]<<3)|0;a=(c[d>>2]|0)+444+(c[f>>2]<
x3c;3)|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[f>>2]=(c[f>>2]|0)+1}i
=g;return 0}function $g(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;f=k+16|0;g=k+12|0;d=k+8|0;j=k+4|0;h=k;c[g>>
;2]=b;c[d>>2]=c[c[g>>2]>>2];if(a[(c[g>>2]|0)+292>>0]|0)c[j>>2]=c[(c[
g>>2]|0)+296>>2];else c[j>>2]=c[(c[(c[d>>2]|0)+96>>2]|0)+40>>2];if(!(
c[j>>2]|0)){c[f>>2]=153;j=c[f>>2]|0;i=k;return j|0}Vg(c[j>>2]|0,c[d>>2]|0,c[g
x3e;>2]|0)|0;c[(c[j>>2]|0)+428>>2]=0;c[(c[j>>2]|0)+16>>2]=0;a[(c[j>>2]|0)+
488>>0]=0;Xg(c[j>>2]|0,2,c[(c[d>>2]|0)+664>>2]|0,c[(c[d>>2]|0)+660>>
2]|0)|0;Yg(c[j>>2]|0,3)|0;if((c[(c[d>>2]|0)+660>>2]|0)>>>0>0){c[h>>2
]=Zg(c[j>>2]|0,2,0)|0;if((c[h>>2]|0)==0?(a[(c[g>>2]|0)+292>>0]|0)==0:0)c[h>>2]=
Ta[c[(c[d>>2]|0)+688>>2]&63](c[j>>2]|0)|0}else c[h>>2]=0;d=(c[g>>2]|0)+172
|0;b=(c[j>>2]|0)+284|0;e=d+68|0;do{c[d>>2]=c[b>>2];d=d+4|0;b=b+4|0}while((d|0)<(e|0));_g(c[j
x3e;>2]|0,c[g>>2]|0)|0;c[f>>2]=c[h>>2];j=c[f>>2]|0;i=k;return j|0}function ah(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,P=0,Q=0,R=0;R=i;i=i+192|0;l=R+180|0;m=R+176|0;n=R+172|0;o=R+186|0;q=R+168|0;P=R+164|0;Q=R+160|0;G=R+
156|0;r=R+152|0;s=R+148|0;J=R+185|0;p=R+144|0;w=R+104|0;t=R+96|0;u=R+184|0;z=R+92|0;M=R+88|0;L=R+84|0;x=R+80|0;v=R+76|0;y=R+72|0
;N=R+68|0;A=R+64|0;B=R+60|0;C=R+56|0;O=R+52|0;E=R+48|0;F=R+44|0;D=R+40|0;I=R+36|0;H=R+32|0;K=R;c[l>>2]=f;c[m>>
;2]=g;c[n>>2]=h;a[o>>0]=j;c[q>>2]=0;c[r>>2]=c[c[l>>2]>>2];c[s>
x3e;2]=c[(c[l>>2]|0)+12>>2];a[J>>0]=0;c[p>>2]=0;a[u>>0]=0;if((c[n>>2
]|0)>>>0>1?(c[n>>2]|0)>>>0>(e[(c[r>>2]|0)+260+30>>1]|0)>
;>>0:0)c[q>>2]=21;else k=4;a:do if((k|0)==4){if((c[m>>2]|0)>>>0>=(c[(c[r>
x3e;2]|0)+16>>2]|0)>>>0){c[q>>2]=16;break}c[(c[l>>2]|0)+20>>2]=c[m>
x3e;2];if(!(c[(c[l>>2]|0)+16>>2]&1)){c[P>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+44
+4>>2];c[Q>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+44+8>>2]}else{c[P>>2]=65536
;c[Q>>2]=65536}bh(c[l>>2]|0,c[m>>2]|0);g=c[r>>2]|0;if(c[(c[(c[r>>2]|0)+128>
;>2]|0)+52>>2]|0){c[q>>2]=Oa[c[c[c[(c[g+128>>2]|0)+52>>2]>>2]>>
2]&63](c[(c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,c[m>>2]|0,t)|0;if
(c[q>>2]|0)break;a[u>>0]=1;c[G>>2]=0;c[(c[l>>2]|0)+28>>2]=c[t+4>>2];
g=w;j=g+40|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(j|0));uc(w,c[t>>2]|0,c[t+4>>2]|0);c[(c[l>
x3e;2]|0)+24>>2]=w}else c[G>>2]=Ge(g,c[m>>2]|0,(c[l>>2]|0)+28|0)|0;if((c[(c[l>>
;2]|0)+28>>2]|0)>0){if((c[(c[l>>2]|0)+84>>2]|0)==0?(c[(c[(c[r>>2]|0)+128>>
;2]|0)+52>>2]|0)==0:0){c[q>>2]=8;break}c[q>>2]=Wa[c[(c[r>>2]|0)+512>>2]&31
](c[l>>2]|0,c[m>>2]|0,(c[(c[l>>2]|0)+84>>2]|0)+(c[G>>2]|0)|0,c[(c[l>>
;2]|0)+28>>2]|0)|0;if(c[q>>2]|0)break;a[J>>0]=1;c[q>>2]=Ta[c[(c[r>>2]|0)+520
x3e;>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;if(d[o>>0]|0)break}if(c[(c[l>>2]|0
)+28>>2]|0?b[(c[l>>2]|0)+32>>1]|0:0){c[(c[l>>2]|0)+68>>2]=(c[(c[l>>2
]|0)+36>>2]|0)-(c[(c[l>>2]|0)+52>>2]|0);c[(c[l>>2]|0)+68+4>>2]=0;c[(c[l>
x3e;2]|0)+76>>2]=(c[(c[l>>2]|0)+68>>2]|0)+(c[(c[l>>2]|0)+56>>2]|0);c[(c[l>
;>2]|0)+76+4>>2]=0;c[(c[l>>2]|0)+184>>2]=0;c[(c[l>>2]|0)+184+4>>2]=(c[(c[
l>>2]|0)+176>>2]|0)+(c[(c[l>>2]|0)+36+12>>2]|0);c[(c[l>>2]|0)+192>>2
]=0;c[(c[l>>2]|0)+192+4>>2]=(c[(c[l>>2]|0)+184+4>>2]|0)-(c[(c[l>>2]|0)+180>
;>2]|0);eh(c[l>>2]|0,c[m>>2]|0);if((b[(c[l>>2]|0)+32>>1]|0)>0){c[q>>
2]=Ta[c[(c[r>>2]|0)+524>>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;Va[c[(c[r>>
;2]|0)+516>>2]&63](c[l>>2]|0);a[J>>0]=0;c[q>>2]=gh(c[l>>2]|0)|0;if(c[q>
;>2]|0)break;oc(c[s>>2]|0);break}if((b[(c[l>>2]|0)+32>>1]|0)!=-1){c[q>>2]=20;break}
c[M>>2]=b[(c[s>>2]|0)+20+2>>1];c[L>>2]=b[(c[s>>2]|0)+20>>1];c[q>
;>2]=Ta[c[(c[r>>2]|0)+528>>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;c[x>>
;2]=c[(c[l>>2]|0)+168>>2];Va[c[(c[r>>2]|0)+516>>2]&63](c[l>>2]|0);a[J>
;>0]=0;if(a[(c[r>>2]|0)+708>>0]|0){c[A>>2]=c[(c[r>>2]|0)+100>>2];G=fh(c[r
>>2]|0,c[m>>2]|0,p,(c[(c[s>>2]|0)+56+28>>2]|0)+4|0)|0;c[q>>2]=G;if(G|0)break;c
[N>>2]=(c[(c[s>>2]|0)+56+32>>2]|0)+(c[(c[s>>2]|0)+20+28>>2]<<5);c[y
x3e;>2]=c[(c[s>>2]|0)+56+28>>2];c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[y>
x3e;2]|0))break;if(e[(c[N>>2]|0)+4>>1]&2|0){G=(c[N>>2]|0)+8|0;c[G>>2]=(c[G>>
;2]|0)+((c[(c[p>>2]|0)+(c[v>>2]<<3)>>2]&65535)<<16>>16);G=(c[N
x3e;>2]|0)+12|0;c[G>>2]=(c[G>>2]|0)+((c[(c[p>>2]|0)+(c[v>>2]<<3)+4>
x3e;2]&65535)<<16>>16)}c[v>>2]=(c[v>>2]|0)+1;c[N>>2]=(c[N>>2]|0
)+32}N=(c[l>>2]|0)+68|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+0<
;<3)>>2]|0);N=(c[l>>2]|0)+68+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v
>>2]|0)+0<<3)+4>>2]|0);N=(c[l>>2]|0)+76|0;c[N>>2]=(c[N>>2]|0)+(c[(c[
p>>2]|0)+((c[v>>2]|0)+1<<3)>>2]|0);N=(c[l>>2]|0)+76+4|0;c[N>>2]=(c[N
>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+1<<3)+4>>2]|0);N=(c[l>>2]|0)+184
|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+2<<3)>>2]|0);N=(c
[l>>2]|0)+184+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+2<<
;3)+4>>2]|0);N=(c[l>>2]|0)+192|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>
;>2]|0)+3<<3)>>2]|0);N=(c[l>>2]|0)+192+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>
;>2]|0)+((c[v>>2]|0)+3<<3)+4>>2]|0);Fb(c[A>>2]|0,c[p>>2]|0);c[p>>
;2]=0}if(!(c[(c[l>>2]|0)+16>>2]&1)){N=Mb(c[(c[l>>2]|0)+68>>2]|0,c[P>>2]|0
)|0;c[(c[l>>2]|0)+68>>2]=N;P=Mb(c[(c[l>>2]|0)+76>>2]|0,c[P>>2]|0)|0;c[(c[l>
;>2]|0)+76>>2]=P;P=Mb(c[(c[l>>2]|0)+184+4>>2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0
)+184+4>>2]=P;Q=Mb(c[(c[l>>2]|0)+192+4>>2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0)+192+4
x3e;>2]=Q}if(c[(c[l>>2]|0)+16>>2]&1024|0){oc(c[s>>2]|0);c[(c[(c[l>>2]|0)+8>
;>2]|0)+72>>2]=1668246896;break}c[O>>2]=0;c[E>>2]=c[M>>2];c[F>>2]=c[(c[s
x3e;>2]|0)+56+28>>2];c[D>>2]=c[(c[s>>2]|0)+20+28>>2];c[I>>2]=c[(c[l>
x3e;2]|0)+24>>2];c[H>>2]=c[(c[l>>2]|0)+28>>2];oc(c[s>>2]|0);c[B>>2]=
0;while(1){if((c[B>>2]|0)>>>0>=(c[F>>2]|0)>>>0)break;c[O>>2]=(c
[(c[s>>2]|0)+20+32>>2]|0)+(c[D>>2]<<5)+(c[B>>2]<<5);Q=(c[l>>
;2]|0)+68|0;c[K>>2]=c[Q>>2];c[K+4>>2]=c[Q+4>>2];Q=K+8|0;P=(c[l>>2]|0)+76|0;c[Q
>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=K+16|0;P=(c[l>>2]|0)+184|0;c[Q>>2
]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=K+24|0;P=(c[l>>2]|0)+192|0;c[Q>>2]=c[P>
x3e;2];c[Q+4>>2]=c[P+4>>2];c[C>>2]=b[(c[s>>2]|0)+20+2>>1];c[q>>2]=ah
(c[l>>2]|0,c[c[O>>2]>>2]|0,(c[n>>2]|0)+1|0,0)|0;if(c[q>>2]|0)break a;c[O>
x3e;2]=(c[(c[s>>2]|0)+20+32>>2]|0)+(c[D>>2]<<5)+(c[B>>2]<<5);if(!(e[(
c[O>>2]|0)+4>>1]&512)){Q=(c[l>>2]|0)+68|0;c[Q>>2]=c[K>>2];c[Q+4>>
;2]=c[K+4>>2];Q=(c[l>>2]|0)+76|0;P=K+8|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>
x3e;2];Q=(c[l>>2]|0)+184|0;P=K+16|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=(c[l
>>2]|0)+192|0;P=K+24|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2]}c[E>>2]=b
[(c[s>>2]|0)+20+2>>1];if((c[E>>2]|0)!=(c[C>>2]|0))lh(c[l>>2]|0,c[O>>
2]|0,c[M>>2]|0,c[C>>2]|0)|0;c[B>>2]=(c[B>>2]|0)+1}c[(c[l>>2]|0)+24>>
2]=c[I>>2];c[(c[l>>2]|0)+28>>2]=c[H>>2];c[(c[l>>2]|0)+168>>2]=c[x>
;>2];if(c[(c[l>>2]|0)+16>>2]&2|0)break;if(!(e[(c[O>>2]|0)+4>>1]&256))break
;if((c[E>>2]|0)>>>0<=(c[M>>2]|0)>>>0)break;mh(c[l>>2]|0,c[M>
;>2]|0,c[L>>2]|0)|0;break}c[(c[l>>2]|0)+36>>2]=0;c[(c[l>>2]|0)+36+8>>2]=0
;c[(c[l>>2]|0)+36+4>>2]=0;c[(c[l>>2]|0)+36+12>>2]=0;if(!(a[o>>0]|0)){c[(c[l>
;>2]|0)+68>>2]=(c[(c[l>>2]|0)+36>>2]|0)-(c[(c[l>>2]|0)+52>>2]|0);c[(c[l
x3e;>2]|0)+68+4>>2]=0;c[(c[l>>2]|0)+76>>2]=(c[(c[l>>2]|0)+68>>2]|0)+(c[(c
[l>>2]|0)+56>>2]|0);c[(c[l>>2]|0)+76+4>>2]=0;c[(c[l>>2]|0)+184>>2]=0
;c[(c[l>>2]|0)+184+4>>2]=(c[(c[l>>2]|0)+176>>2]|0)+(c[(c[l>>2]|0)+36+12>
x3e;2]|0);c[(c[l>>2]|0)+192>>2]=0;c[(c[l>>2]|0)+192+4>>2]=(c[(c[l>>2]|0)+184+4
>>2]|0)-(c[(c[l>>2]|0)+180>>2]|0);eh(c[l>>2]|0,c[m>>2]|0);if(a[(c[c[l>>
;2]>>2]|0)+708>>0]|0){c[z>>2]=c[(c[c[l>>2]>>2]|0)+100>>2];c[q>
x3e;2]=fh(c[c[l>>2]>>2]|0,c[m>>2]|0,p,4)|0;if(c[q>>2]|0)break;O=(c[l>>2]|0)+68
|0;c[O>>2]=(c[O>>2]|0)+(c[c[p>>2]>>2]|0);O=(c[l>>2]|0)+68+4|0;c[O>>2
]=(c[O>>2]|0)+(c[(c[p>>2]|0)+4>>2]|0);O=(c[l>>2]|0)+76|0;c[O>>2]=(c[O>>
;2]|0)+(c[(c[p>>2]|0)+8>>2]|0);O=(c[l>>2]|0)+76+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[
p>>2]|0)+8+4>>2]|0);O=(c[l>>2]|0)+184|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>
;2]|0)+16>>2]|0);O=(c[l>>2]|0)+184+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+16+4
>>2]|0);O=(c[l>>2]|0)+192|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+24>>2
]|0);O=(c[l>>2]|0)+192+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+24+4>>2]|0);Fb(c
[z>>2]|0,c[p>>2]|0);c[p>>2]=0}if(!(c[(c[l>>2]|0)+16>>2]&1)){O=Mb(c[(c[l
x3e;>2]|0)+68>>2]|0,c[P>>2]|0)|0;c[(c[l>>2]|0)+68>>2]=O;P=Mb(c[(c[l>>2]|0
)+76>>2]|0,c[P>>2]|0)|0;c[(c[l>>2]|0)+76>>2]=P;P=Mb(c[(c[l>>2]|0)+184+4>
x3e;2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0)+184+4>>2]=P;Q=Mb(c[(c[l>>2]|0)+192+4>>2]|0
,c[Q>>2]|0)|0;c[(c[l>>2]|0)+192+4>>2]=Q}c[q>>2]=0}}while(0);if(a[J>>0]|0)Va[c[(
c[r>>2]|0)+516>>2]&63](c[l>>2]|0);if(!(a[u>>0]|0)){Q=c[q>>2]|0;i=R;return
Q|0}Ra[c[(c[c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]>>2]|0)+4>>2]&7](c[(c[(c[(
c[r>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,t);Q=c[q>>2]|0;i=R;return Q|0}function
bh(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;j=i;i=i+32|0;g=j+8|0;n=j+4|0;o=j;m=j+18|0;l=j+16|0;h=j+14|0;k=j+12|0;c[
g>>2]=d;c[n>>2]=f;c[o>>2]=c[c[g>>2]>>2];b[m>>1]=0;b[l>>1]=
0;b[h>>1]=0;b[k>>1]=0;ch(c[o>>2]|0,c[n>>2]|0,((c[(c[g>>2]|0)+16>>2]
x26;512|0)!=0^1)&1,m,h);dh(c[o>>2]|0,c[n>>2]|0,((c[(c[g>>2]|0)+16>>2]&512|0)!=
0^1)&1,l,k);c[(c[g>>2]|0)+52>>2]=b[m>>1];c[(c[g>>2]|0)+56>>2]=e[h>
x3e;1];c[(c[g>>2]|0)+176>>2]=b[l>>1];c[(c[g>>2]|0)+180>>2]=e[k>>1];if
(a[(c[g>>2]|0)+64>>0]|0){i=j;return}a[(c[g>>2]|0)+64>>0]=1;c[(c[g>>2]|0)+60>
;>2]=e[h>>1];i=j;return}function ch(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;m=i;i=i+
32|0;k=m+12|0;p=m+8|0;n=m+16|0;o=m+4|0;l=m;c[k>>2]=e;c[p>>2]=f;a[n>>0]=g;c[o>>2]=h;c[l
x3e;>2]=j;Za[c[(c[(c[k>>2]|0)+532>>2]|0)+156>>2]&31](c[k>>2]|0,0,c[p>>
;2]|0,c[o>>2]|0,c[l>>2]|0)|0;if(!(d[n>>0]|0)){i=m;return}if(!(c[(c[k>>2]|0)+468+12>
x3e;2]|0)){i=m;return}b[c[l>>2]>>1]=b[(c[k>>2]|0)+216+10>>1]|0;i=m;return}function dh(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;n=i;i=i+32|0;j=n+12|0;k=n+8|0;o=n+16|0;l=n+4|0;m=n;c[j>
x3e;2]=d;c[k>>2]=e;a[o>>0]=f;c[l>>2]=g;c[m>>2]=h;a[o>>0]=a[o>>0]|0;if
(a[(c[j>>2]|0)+296>>0]|0){Za[c[(c[(c[j>>2]|0)+532>>2]|0)+156>>2]&31](c[j
x3e;>2]|0,1,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;i=n;return}else{b[c[l>>2]>>1
]=0;b[c[m>>2]>>1]=b[(c[j>>2]|0)+68>>1]|0;i=n;return}}function eh(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;q=i;i=i+48|0;g=q+32|0;h=q+28|0;m=q+24|0;n=q+42|0;p=q+40|0;k=q+38|0;j=q+36|0;o=q+8|0;l=q;c[
g>>2]=d;c[h>>2]=f;c[m>>2]=c[c[g>>2]>>2];b[n>>1]=0;b[p>>1]=
0;b[k>>1]=0;b[j>>1]=0;if(!(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)){i=q;return}if
(!(c[(c[c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]>>2]|0)+8>>2]|0)){i=q;return}c[o>
;>2]=c[(c[g>>2]|0)+52>>2];c[o+4>>2]=0;c[o+8>>2]=c[(c[g>>2]|0)+56>>
;2];c[o+12>>2]=0;c[l>>2]=Wa[c[(c[c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]>>
;2]|0)+8>>2]&31](c[(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,c[h>
;>2]|0,0,o)|0;if(c[l>>2]|0){i=q;return}b[n>>1]=c[o>>2];b[k>>1]=c[o+8>>2];
c[(c[g>>2]|0)+52>>2]=b[n>>1];c[(c[g>>2]|0)+56>>2]=e[k>>1];c[(c[g>
;>2]|0)+176>>2]=b[p>>1];c[(c[g>>2]|0)+180>>2]=e[j>>1];if(a[(c[g>>
;2]|0)+64>>0]|0){i=q;return}a[(c[g>>2]|0)+64>>0]=1;c[(c[g>>2]|0)+60>>2]=e[k>
;>1];i=q;return}function fh(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,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;M=i;i=i+128|0;j=M+112|0;N=M+108|0;k=M+104|0;l=M+100|0;m=M+96|0
;G=M+92|0;A=M+88|0;o=M+84|0;p=M+80|0;s=M+76|0;t=M+72|0;H=M+68|0;B=M+64|0;u=M+60|0;v=M+56|0;y=M+52|0;K=M+48|0;x=M+44|0;w=M+40|0;C
=M+36|0;F=M+32|0;E=M+28|0;z=M+24|0;D=M+20|0;q=M+16|0;r=M+12|0;I=M+8|0;J=M+4|0;n=M;c[N>>2]=d;c[k>>2]=f;c[l>
;>2]=g;c[m>>2]=h;c[G>>2]=c[(c[N>>2]|0)+104>>2];c[A>>2]=c[(c[G>>
2]|0)+28>>2];c[o>>2]=c[(c[N>>2]|0)+712>>2];c[K>>2]=0;c[x>>2]=0;c[w
x3e;>2]=0;c[F>>2]=0;c[E>>2]=0;c[z>>2]=0;if((c[o>>2]|0)==0?1:(a[(c[N>>2]|0
)+708>>0]|0)==0){c[j>>2]=6;N=c[j>>2]|0;i=M;return N|0}c[p>>2]=hc(c[A>>2]|0,8,0
,c[m>>2]|0,0,s)|0;do if(!(c[s>>2]|0)){c[c[l>>2]>>2]=c[p>>2];if((c[k>>
;2]|0)>>>0<(c[(c[o>>2]|0)+32>>2]|0)>>>0?(c[(c[(c[o>>2]|0)+36>
;>2]|0)+(c[k>>2]<<2)>>2]|0)!=(c[(c[(c[o>>2]|0)+36>>2]|0)+((c[k>>
;2]|0)+1<<2)>>2]|0):0){N=Kc(c[G>>2]|0,c[(c[(c[o>>2]|0)+36>>2]|0)+(c[k>>
;2]<<2)>>2]|0)|0;c[s>>2]=N;if((N|0)==0?(N=ee(c[G>>2]|0,(c[(c[(c[o>>2]|0)+36>
;>2]|0)+((c[k>>2]|0)+1<<2)>>2]|0)-(c[(c[(c[o>>2]|0)+36>>2]|0)+(c[k>
x3e;2]<<2)>>2]|0)|0)|0,c[s>>2]=N,(N|0)==0):0){c[t>>2]=(c[(c[G>>2]|0)+32>
x3e;2]|0)-(c[c[G>>2]>>2]|0);c[K>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0
,0,s)|0;if(((c[s>>2]|0)==0?(c[x>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0,0,s)|0,(c
[s>>2]|0)==0):0)?(c[w>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0,0,s)|0,(c[s>
x3e;2]|0)==0):0){c[H>>2]=(ie(c[G>>2]|0)|0)&65535;N=c[t>>2]|0;c[B>>2]=N+((ie(c[G>
;>2]|0)|0)&65535);if(c[H>>2]&32768|0){c[u>>2]=(c[(c[G>>2]|0)+32>>2]|0)-(c
[c[G>>2]>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[B>>
;2]|0);c[E>>2]=Ce(c[G>>2]|0,F)|0;c[B>>2]=(c[(c[G>>2]|0)+32>>2]|0)-(c[c[G>
x3e;2]>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[u>>2]|0)}c[v
>>2]=0;a:while(1){if((c[v>>2]|0)>>>0>=(c[H>>2]&4095)>>>0)break
;c[I>>2]=(ie(c[G>>2]|0)|0)&65535;c[J>>2]=(ie(c[G>>2]|0)|0)&65535;b:do if(c[J
x3e;>2]&32768|0){c[y>>2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[c[o>>2]
x3e;>2]|0)>>>0)break b;N=(ie(c[G>>2]|0)|0)<<16>>16<<2;c[(c[K>
x3e;2]|0)+(c[y>>2]<<2)>>2]=N;c[y>>2]=(c[y>>2]|0)+1}}else{if((c[J>>2]
x26;4095)>>>0>=(c[(c[o>>2]|0)+24>>2]|0)>>>0){L=21;break a}N=_(c[J>
x3e;2]&4095,c[c[o>>2]>>2]|0)|0;Ss(c[K>>2]|0,(c[(c[o>>2]|0)+28>>2]|0)+(N
x3c;<2)|0,c[c[o>>2]>>2]<<2|0)|0}while(0);c:do if(c[J>>2]&16384|0){c[y>>
;2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[c[o>>2]>>2]|0)>>>0)break;
N=(ie(c[G>>2]|0)|0)<<16>>16<<2;c[(c[x>>2]|0)+(c[y>>2]<<2)
x3e;>2]=N;c[y>>2]=(c[y>>2]|0)+1}c[y>>2]=0;while(1){if((c[y>>2]|0)>>>
0>=(c[c[o>>2]>>2]|0)>>>0)break c;N=(ie(c[G>>2]|0)|0)<<16>>
16<<2;c[(c[w>>2]|0)+(c[y>>2]<<2)>>2]=N;c[y>>2]=(c[y>>2]|0)+
1}}while(0);c[n>>2]=Be(c[o>>2]|0,c[J>>2]&65535,c[K>>2]|0,c[x>>2]|0,c[w>
;>2]|0)|0;if(!(c[n>>2]|0))c[B>>2]=(c[B>>2]|0)+(c[I>>2]|0);else{c[u>>2]=(c
[(c[G>>2]|0)+32>>2]|0)-(c[c[G>>2]>>2]|0);if(c[J>>2]&8192|0){c[(c[G>
x3e;2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[B>>2]|0);c[z>>2]=Ce(c[G>>2]|0,
C)|0;c[D>>2]=c[z>>2]}else{c[D>>2]=c[E>>2];c[C>>2]=c[F>>2]}c[q>
x3e;2]=De(c[G>>2]|0,(c[C>>2]|0)==0?c[m>>2]|0:c[C>>2]|0)|0;c[r>>2]=De(c[G>
x3e;2]|0,(c[C>>2]|0)==0?c[m>>2]|0:c[C>>2]|0)|0;d:do if(!((c[D>>2]|0)==0|(c[r>>
2]|0)==0|(c[q>>2]|0)==0)){N=(c[D>>2]|0)==(-1|0);c[y>>2]=0;if(N)while(1){if((c[y>>2]|0)
x3e;>>0>=(c[m>>2]|0)>>>0)break d;N=Mb(b[(c[q>>2]|0)+(c[y>>2]<
x3c;1)>>1]|0,c[n>>2]|0)|0;h=(c[p>>2]|0)+(c[y>>2]<<3)|0;c[h>>2]=(c[h
x3e;>2]|0)+N;h=Mb(b[(c[r>>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;N=(c[p>
;>2]|0)+(c[y>>2]<<3)+4|0;c[N>>2]=(c[N>>2]|0)+h;c[y>>2]=(c[y>>2]|
0)+1}else while(1){if((c[y>>2]|0)>>>0>=(c[C>>2]|0)>>>0)break d;N=Mb(b[(c[
q>>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;h=(c[p>>2]|0)+(e[(c[z>
x3e;2]|0)+(c[y>>2]<<1)>>1]<<3)|0;c[h>>2]=(c[h>>2]|0)+N;h=Mb(b[(c[r
x3e;>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;N=(c[p>>2]|0)+(e[(c[z>>
;2]|0)+(c[y>>2]<<1)>>1]<<3)+4|0;c[N>>2]=(c[N>>2]|0)+h;c[y>>
;2]=(c[y>>2]|0)+1}}while(0);if((c[z>>2]|0)!=(-1|0)){Fb(c[A>>2]|0,c[z>>2]|0);c[z>>
;2]=0}Fb(c[A>>2]|0,c[q>>2]|0);c[q>>2]=0;Fb(c[A>>2]|0,c[r>>2]|0);c[r>>
;2]=0;c[B>>2]=(c[B>>2]|0)+(c[I>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2
]>>2]|0)+(c[u>>2]|0)}c[v>>2]=(c[v>>2]|0)+1}if((L|0)==21)c[s>>2]=8;Fb(c[A>
x3e;2]|0,c[K>>2]|0);c[K>>2]=0;Fb(c[A>>2]|0,c[x>>2]|0);c[x>>2]=0;Fb(c[A>
x3e;2]|0,c[w>>2]|0);c[w>>2]=0}ge(c[G>>2]|0)}if(!(c[s>>2]|0))break;Fb(c[A>>2]|0
,c[p>>2]|0);c[p>>2]=0;c[c[l>>2]>>2]=0;break}c[j>>2]=0;N=c[j>>2]|0;i=
M;return N|0}while(0);c[j>>2]=c[s>>2];N=c[j>>2]|0;i=M;return N|0}function gh(d){d=d|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;t=i;i=i+64|0;f=t+48|0;g=t+44|0;k=t+40|0;j=t+36|0;p=t+32|0;o=t+28|0;h=t+24|0;
n=t+20|0;l=t+16|0;q=t+12|0;m=t+8|0;r=t+4|0;s=t;c[g>>2]=d;c[k>>2]=c[(c[g>>2]|0)+12>>2];c[
j>>2]=0;c[p>>2]=(c[k>>2]|0)+56;c[o>>2]=b[(c[p>>2]|0)+2>>1];d=(c[(c[p
>>2]|0)+4>>2]|0)+(c[o>>2]<<3)|0;u=(c[g>>2]|0)+68|0;c[d>>2]=c[u>
x3e;2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)+1<<
;3)|0;u=(c[g>>2]|0)+76|0;c[d>>2]=c[u>>2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>
x3e;2]|0)+4>>2]|0)+((c[o>>2]|0)+2<<3)|0;u=(c[g>>2]|0)+184|0;c[d>>2]=c[u>
x3e;2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)+3<<
;3)|0;u=(c[g>>2]|0)+192|0;c[d>>2]=c[u>>2];c[d+4>>2]=c[u+4>>2];a[(c[(c[p>
x3e;2]|0)+8>>2]|0)+(c[o>>2]|0)>>0]=0;a[(c[(c[p>>2]|0)+8>>2]|0)+((c[o>>
;2]|0)+1)>>0]=0;a[(c[(c[p>>2]|0)+8>>2]|0)+((c[o>>2]|0)+2)>>0]=0;a[(c[(c[p>
;>2]|0)+8>>2]|0)+((c[o>>2]|0)+3)>>0]=0;c[o>>2]=(c[o>>2]|0)+4;if(a[(c[c[g
x3e;>2]>>2]|0)+708>>0]|0){c[n>>2]=c[(c[c[g>>2]>>2]|0)+100>>2];c
[j>>2]=fh(c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+20>>2]|0,h,c[o>>2]|0)|0;if(c
[j>>2]|0){c[f>>2]=c[j>>2];u=c[f>>2]|0;i=t;return u|0}c[l>>2]=0;while(1){if((c[
l>>2]|0)>=(c[o>>2]|0))break;u=(c[(c[p>>2]|0)+4>>2]|0)+(c[l>>2]<<
;3)|0;c[u>>2]=(c[u>>2]|0)+(c[(c[h>>2]|0)+(c[l>>2]<<3)>>2]|0);u=(c[(c
[p>>2]|0)+4>>2]|0)+(c[l>>2]<<3)+4|0;c[u>>2]=(c[u>>2]|0)+(c[(c[h>
;>2]|0)+(c[l>>2]<<3)+4>>2]|0);c[l>>2]=(c[l>>2]|0)+1}Fb(c[n>>2]|
0,c[h>>2]|0);c[h>>2]=0}if(!(c[(c[g>>2]|0)+16>>2]&2)){hh((c[g>>2]|0)+124|0
,(c[k>>2]|0)+56|0,0,0);Ss(c[(c[g>>2]|0)+124+20>>2]|0,c[(c[g>>2]|0)+124+16>>2]|
0,(e[(c[g>>2]|0)+124+8>>1]|0)+4<<3|0)|0}if(!(c[(c[g>>2]|0)+16>>2]&1)){c[q
>>2]=c[(c[p>>2]|0)+4>>2];c[m>>2]=(c[(c[p>>2]|0)+4>>2]|0)+(c[o>
x3e;2]<<3);c[r>>2]=c[(c[(c[g>>2]|0)+4>>2]|0)+44+4>>2];c[s>>2]=c[(c[(
c[g>>2]|0)+4>>2]|0)+44+8>>2];while(1){if((c[q>>2]|0)>>>0>=(c[m>
x3e;2]|0)>>>0)break;u=Mb(c[c[q>>2]>>2]|0,c[r>>2]|0)|0;c[c[q>>2]>>
;2]=u;u=Mb(c[(c[q>>2]|0)+4>>2]|0,c[s>>2]|0)|0;c[(c[q>>2]|0)+4>>2]=u;c[q>
x3e;2]=(c[q>>2]|0)+8}u=(c[g>>2]|0)+68|0;s=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-
4<<3)|0;c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];u=(c[g>>2]|0)+76|0;s=(c[(
c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-3<<3)|0;c[u>>2]=c[s>>2];c[u+4>
x3e;2]=c[s+4>>2];u=(c[g>>2]|0)+184|0;s=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-2
x3c;<3)|0;c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];u=(c[g>>2]|0)+192|0;s=(c[(c
[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-1<<3)|0;c[u>>2]=c[s>>2];c[u+4>
x3e;2]=c[s+4>>2]}if(!(c[(c[g>>2]|0)+16>>2]&2)){u=(c[g>>2]|0)+124+8|0;b[u>>
;1]=(e[u>>1]|0)+4;c[j>>2]=ih(c[g>>2]|0,0)|0}c[f>>2]=c[j>>2];u=c[f>>2
]|0;i=t;return u|0}function hh(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;l=g+8|0;j=g+4|0;k=
g;c[h>>2]=a;c[l>>2]=d;c[j>>2]=e;c[k>>2]=f;b[(c[h>>2]|0)+8>>1]=(b[(c[
l>>2]|0)+2>>1]|0)-(c[j>>2]|0);b[(c[h>>2]|0)+10>>1]=(b[c[l>>2]>
x3e;1]|0)-(c[k>>2]|0);c[(c[h>>2]|0)+12>>2]=(c[(c[l>>2]|0)+20>>2]|0)+(c[j>
x3e;2]<<3);c[(c[h>>2]|0)+16>>2]=(c[(c[l>>2]|0)+4>>2]|0)+(c[j>>2]<
;<3);c[(c[h>>2]|0)+20>>2]=(c[(c[l>>2]|0)+24>>2]|0)+(c[j>>2]<<3);
c[(c[h>>2]|0)+24>>2]=(c[(c[l>>2]|0)+8>>2]|0)+(c[j>>2]|0);c[(c[h>>2]|
0)+28>>2]=(c[(c[l>>2]|0)+12>>2]|0)+(c[k>>2]<<1);b[(c[h>>2]|0)+32>
;>1]=c[j>>2];i=g;return}function ih(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,q=0,r=0;r=i;i=i+64|0
;l=r+44|0;m=r+40|0;h=r+49|0;q=r+36|0;g=r+32|0;k=r+28|0;o=r+48|0;p=r+24|0;j=r+20|0;n=r;c[m>>2]=b;a[h>>0]=f;c[
q>>2]=(c[m>>2]|0)+124;c[k>>2]=c[(c[(c[m>>2]|0)+8>>2]|0)+140>>2];c[g
x3e;>2]=c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-4<<3)>
x3e;2];c[g>>2]=((c[g>>2]|0)+32&-64)-(c[g>>2]|0);if(c[g>>2]|0)jh(e[(c[q>>2
]|0)+8>>1]|0,c[(c[q>>2]|0)+16>>2]|0,c[g>>2]|0,0);if((c[k>>2]|0)>>>
;0>0)Ss(c[(c[q>>2]|0)+12>>2]|0,c[(c[q>>2]|0)+16>>2]|0,e[(c[q>>2]|0)+8>
;>1]<<3|0)|0;f=(c[(c[m>>2]|0)+160>>2]|0)+284|0;b=(c[(c[m>>2]|0)+4>>2]|0)+
172|0;g=f+68|0;do{c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0}while((f|0)<(g|0));f=c[m>>2]|0;if(a[h>
x3e;0]|0){c[(c[f+160>>2]|0)+216+4>>2]=65536;c[(c[(c[m>>2]|0)+160>>2]|0)+216+8>>
;2]=65536;Ss(c[(c[q>>2]|0)+20>>2]|0,c[(c[q>>2]|0)+16>>2]|0,e[(c[q>>2]|0)+8>
;>1]<<3|0)|0}else{c[(c[(c[m>>2]|0)+160>>2]|0)+216+4>>2]=c[(c[f+4>>2]|0)+44
+4>>2];c[(c[(c[m>>2]|0)+160>>2]|0)+216+8>>2]=c[(c[(c[m>>2]|0)+4>>2]|
0)+44+8>>2]}c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-3<<3
)>>2]=(c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-3<<3)>
;>2]|0)+32&-64;c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<
;3)+4>>2]=(c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<3)+
4>>2]|0)+32&-64;if((c[k>>2]|0)>>>0>0){c[j>>2]=c[(c[m>>2]|0)+12
x3e;>2];j=(c[j>>2]|0)+56|0;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>
;>2]=c[j+8>>2];c[n+12>>2]=c[j+12>>2];c[n+16>>2]=c[j+16>>2];c[p>>
;2]=Xg(c[(c[m>>2]|0)+160>>2]|0,3,c[(c[(c[m>>2]|0)+160>>2]|0)+392>>2]|0,c[k>
;>2]|0)|0;if(c[p>>2]|0){c[l>>2]=c[p>>2];q=c[l>>2]|0;i=r;return q|0}a[(c[(c[m>
x3e;2]|0)+160>>2]|0)+560>>0]=a[h>>0]|0;f=(c[(c[m>>2]|0)+160>>2]|0)+144|0;b=c[q
>>2]|0;g=f+36|0;do{c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0}while((f|0)<(g|0));if(c[(c[m>>2]|
0)+16>>2]&1|0)f=0;else f=(d[(c[(c[m>>2]|0)+4>>2]|0)+292>>0]|0)!=0;a[o>>0]=
f&1;c[p>>2]=kh(c[(c[m>>2]|0)+160>>2]|0,a[o>>0]|0)|0;if(c[p>>2]|0?d[(c[(c[
m>>2]|0)+160>>2]|0)+561>>0]|0:0){c[l>>2]=c[p>>2];q=c[l>>2]|0;i=r;return
q|0}p=c[n+8>>2]|0;a[p>>0]=a[p>>0]|(c[(c[(c[m>>2]|0)+160>>2]|0)+284+56>
x3e;2]<<5|4)}if(!(a[(c[m>>2]|0)+65>>0]|0)){p=(c[m>>2]|0)+68|0;o=(c[(c[q>>2]|0)+
16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-4<<3)|0;c[p>>2]=c[o>>2];c[p+4>
;>2]=c[o+4>>2];p=(c[m>>2]|0)+76|0;o=(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|
0)+8>>1]|0)-3<<3)|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];p=(c[m>
x3e;2]|0)+184|0;o=(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-2<<3)|0;c[
p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];p=(c[m>>2]|0)+192|0;q=(c[(c[q>>2]|
0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<3)|0;c[p>>2]=c[q>>2];c[p+4
x3e;>2]=c[q+4>>2]}c[l>>2]=0;q=c[l>>2]|0;i=r;return q|0}function jh(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;l=i;i=i+32|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[f>>2]=a;c[g>>2]=b;c[
h>>2]=d;c[j>>2]=e;a:do if(c[h>>2]|0){c[k>>2]=0;while(1){if((c[k>>2]|0)>
x3e;>0>=(c[f>>2]|0)>>>0)break a;a=(c[g>>2]|0)+(c[k>>2]<<3)|0;c[
a>>2]=(c[a>>2]|0)+(c[h>>2]|0);c[k>>2]=(c[k>>2]|0)+1}}while(0);if(!(c[j>
x3e;2]|0)){i=l;return}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=(c[f>>2]|0)>
x3e;>0)break;a=(c[g>>2]|0)+(c[k>>2]<<3)+4|0;c[a>>2]=(c[a>>2]|0)+(c[j>
;>2]|0);c[k>>2]=(c[k>>2]|0)+1}i=l;return}function kh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16
|0;g=k+8|0;h=k+4|0;j=k+12|0;f=k;c[h>>2]=d;a[j>>0]=e;d=Zg(c[h>>2]|0,3,0)|0;c[f>>2]=d;if(d
|0){c[g>>2]=c[f>>2];j=c[g>>2]|0;i=k;return j|0}else{e=(c[h>>2]|0)+36|0;f=(c[h>>
;2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(d|0));e=(c[h>>2]|0)+72|
0;f=(c[h>>2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(d|0));e=(c[h
x3e;>2]|0)+108|0;f=(c[h>>2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)
x3c;(d|0));b[(c[h>>2]|0)+284+60>>1]=1;b[(c[h>>2]|0)+284+62>>1]=1;b[(c[h>>2]|0)+
284+64>>1]=1;b[(c[h>>2]|0)+284+10>>1]=16384;b[(c[h>>2]|0)+284+10+2>>1]=0;d=(c[
h>>2]|0)+284+14|0;f=(c[h>>2]|0)+284+10|0;b[d>>1]=b[f>>1]|0;b[d+2>>1]=b[f+2>
;>1]|0;d=(c[h>>2]|0)+284+6|0;f=(c[h>>2]|0)+284+10|0;b[d>>1]=b[f>>1]|0;b[d+2>
x3e;1]=b[f+2>>1]|0;c[(c[h>>2]|0)+284+28>>2]=1;c[(c[h>>2]|0)+284+20>>2]=1;c[(c[
h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+428>>2]=0;a[j>>0]=a[j>>0]|0;c[g>
;>2]=Ta[c[(c[c[h>>2]>>2]|0)+688>>2]&63](c[h>>2]|0)|0;j=c[g>>2]|0;i=k
;return j|0}return 0}function lh(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;E=i;i=i+80|0;l=E+72|0;m=E+68|0;n=E+64|0;o=E+60|0;p=E+56|0;r=E+52|0;q=E+48|0;x=E+44|0;s=E+76|0;A=E+40|0
;C=E+36|0;k=E+32|0;t=E+28|0;u=E+24|0;y=E+20|0;z=E+16|0;v=E+12|0;w=E+8|0;B=E+4|0;D=E;c[m>>2]=f;c[n>>2]=g;c[o
x3e;>2]=h;c[p>>2]=j;c[r>>2]=c[(c[m>>2]|0)+12>>2];c[q>>2]=c[(c[r>>
;2]|0)+20+4>>2];c[x>>2]=b[(c[r>>2]|0)+20+2>>1];a[s>>0]=e[(c[n>>2]|0)+
4>>1]&200;a:do if(a[s>>0]|0){c[k>>2]=c[p>>2];while(1){if((c[k>>2]|0)>
;>>0>=(c[x>>2]|0)>>>0)break a;Lb((c[q>>2]|0)+(c[k>>2]<<3)|
0,(c[n>>2]|0)+16|0);c[k>>2]=(c[k>>2]|0)+1}}while(0);k=c[(c[n>>2]|0)+8>>2]|0;do
if(e[(c[n>>2]|0)+4>>1]&2|0){c[A>>2]=k;c[C>>2]=c[(c[n>>2]|0)+12>>
;2];if(!((c[A>>2]|0)!=0|(c[C>>2]|0)!=0)){c[l>>2]=0;D=c[l>>2]|0;i=E;return D|0}if(d[s>
;>0]|0?e[(c[n>>2]|0)+4>>1]&2048|0:0){z=Mb(c[(c[n>>2]|0)+16>>2]|0,c[(c[n>
x3e;2]|0)+16>>2]|0)|0;c[v>>2]=Zb(z+(Mb(c[(c[n>>2]|0)+16+4>>2]|0,c[(c[n>>2]|0)+
16+4>>2]|0)|0)|0)|0;z=Mb(c[(c[n>>2]|0)+16+12>>2]|0,c[(c[n>>2]|0)+16+12>>2]|0)|
0;c[w>>2]=Zb(z+(Mb(c[(c[n>>2]|0)+16+8>>2]|0,c[(c[n>>2]|0)+16+8>>2]|0)|0)|0)|0;
c[A>>2]=Mb(c[A>>2]|0,c[v>>2]|0)|0;c[C>>2]=Mb(c[C>>2]|0,c[w>>2]|0)|0}
if((c[(c[m>>2]|0)+16>>2]&1|0)==0?(c[B>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+44+4
x3e;>2],c[D>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+44+8>>2],c[A>>2]=Mb(c[A>
x3e;2]|0,c[B>>2]|0)|0,c[C>>2]=Mb(c[C>>2]|0,c[D>>2]|0)|0,e[(c[n>>2]|0)+4>
x3e;1]&4|0):0){c[A>>2]=(c[A>>2]|0)+32&-64;c[C>>2]=(c[C>>2]|0)+32&-64}}else
{c[t>>2]=k;c[u>>2]=c[(c[n>>2]|0)+12>>2];c[t>>2]=(c[t>>2]|0)+(c[o>
;>2]|0);c[u>>2]=(c[u>>2]|0)+(c[p>>2]|0);if((c[t>>2]|0)>>>0<(c[p
>>2]|0)>>>0?(c[u>>2]|0)>>>0<(c[x>>2]|0)>>>0:0){c
[y>>2]=(c[(c[r>>2]|0)+20+4>>2]|0)+(c[t>>2]<<3);c[z>>2]=(c[(c[r>
x3e;2]|0)+20+4>>2]|0)+(c[u>>2]<<3);c[A>>2]=(c[c[y>>2]>>2]|0)-(c[c[z
x3e;>2]>>2]|0);c[C>>2]=(c[(c[y>>2]|0)+4>>2]|0)-(c[(c[z>>2]|0)+4>>
;2]|0);break}c[l>>2]=21;D=c[l>>2]|0;i=E;return D|0}while(0);if((c[A>>2]|0)!=0|(c[C>>2]|0
)!=0)jh((c[x>>2]|0)-(c[p>>2]|0)|0,(c[q>>2]|0)+(c[p>>2]<<3)|0,c[A>>2]|
0,c[C>>2]|0);c[l>>2]=0;D=c[l>>2]|0;i=E;return D|0}function mh(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;u=i;i=i+48|0;k=u+32|0;l=u+28|0;m=u+24|0;n=u+20|0;o=u+16|0;j=u+12|0;p=u+8|0;s=u+4|0;r=u+
38|0;q=u+36|0;t=u;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[j>>2]=(c[(c[l>>2]|0)+12>
;>2]|0)+20;if(((b[(c[j>>2]|0)+2>>1]|0)+4|0)!=0?((b[(c[(c[l>>2]|0)+12>>2]|0)+20+2>
;>1]|0)+(b[(c[(c[l>>2]|0)+12>>2]|0)+56+2>>1]|0)+((b[(c[j>>2]|0)+2>>1]|0)+
4)|0)>>>0>(c[(c[(c[l>>2]|0)+12>>2]|0)+4>>2]|0)>>>0:0)f=kc(c[(c[
l>>2]|0)+12>>2]|0,(b[(c[j>>2]|0)+2>>1]|0)+4|0,0)|0;else f=0;c[o>>2]=f;if(c[o
x3e;>2]|0){c[k>>2]=c[o>>2];t=c[k>>2]|0;i=u;return t|0}g=(c[(c[j>>2]|0)+4>>
;2]|0)+(b[(c[j>>2]|0)+2>>1]<<3)|0;h=(c[l>>2]|0)+68|0;c[g>>2]=c[h>>2];
c[g+4>>2]=c[h+4>>2];g=(c[(c[j>>2]|0)+4>>2]|0)+((b[(c[j>>2]|0)+2>>1]|
0)+1<<3)|0;h=(c[l>>2]|0)+76|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];g=(
c[(c[j>>2]|0)+4>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+2<<3)|0;h=(c[l>>2]|0
)+184|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];g=(c[(c[j>>2]|0)+4>>2]|0
)+((b[(c[j>>2]|0)+2>>1]|0)+3<<3)|0;h=(c[l>>2]|0)+192|0;c[g>>2]=c[h>>
2];c[g+4>>2]=c[h+4>>2];a[(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>>2]|0)+2>>1
]|0)>>0]=0;a[(c[(c[j>>2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+1)>>0]=
0;a[(c[(c[j>>2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+2)>>0]=0;a[(c[(c[j>
x3e;2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+3)>>0]=0;c[s>>2]=c[(c[l>>
;2]|0)+24>>2];j=Kc(c[s>>2]|0,c[(c[l>>2]|0)+168>>2]|0)|0;c[o>>2]=j;if((j|0)==0?(
b[r>>1]=Pc(c[s>>2]|0,o)|0,(c[o>>2]|0)==0):0){b[q>>1]=b[(c[c[l>>2]>>2
]|0)+260+26>>1]|0;f=e[r>>1]|0;if((e[r>>1]|0)>(e[q>>1]|0)){if((f|0)>(c[(c[l>
;>2]|0)+28>>2]|0)){c[k>>2]=22;t=c[k>>2]|0;i=u;return t|0}c[t>>2]=c[(c[(c[l>>
;2]|0)+160>>2]|0)+388>>2];c[o>>2]=Wg(c[(c[(c[l>>2]|0)+160>>2]|0)+8>>
2]|0,t,1,(c[(c[l>>2]|0)+160>>2]|0)+392|0,e[r>>1]|0)|0;c[(c[(c[l>>2]|0)+160>>2]|
0)+388>>2]=c[t>>2]&65535;if(c[o>>2]|0){c[k>>2]=c[o>>2];t=c[k>>2
]|0;i=u;return t|0}}else if(!f){c[k>>2]=0;t=c[k>>2]|0;i=u;return t|0}t=Rc(c[s>>2]|0,c[(c[(c[l>
;>2]|0)+160>>2]|0)+392>>2]|0,e[r>>1]|0)|0;c[o>>2]=t;if(t|0){c[k>>2]=c[o
x3e;>2];t=c[k>>2]|0;i=u;return t|0}c[(c[(c[l>>2]|0)+8>>2]|0)+136>>2]=c[(c[(c[l>
;>2]|0)+160>>2]|0)+392>>2];c[(c[(c[l>>2]|0)+8>>2]|0)+140>>2]=e[r>>
;1];hh((c[l>>2]|0)+124|0,(c[(c[l>>2]|0)+12>>2]|0)+20|0,c[m>>2]|0,c[n>>2]|0);c[
p>>2]=c[m>>2];while(1){if((c[p>>2]|0)>>>0>=(e[(c[l>>2]|0)+124+8>
;>1]|0)>>>0)break;t=(c[(c[l>>2]|0)+124+24>>2]|0)+(c[p>>2]|0)|0;a[t>>
0]=d[t>>0]&-25;c[p>>2]=(c[p>>2]|0)+1}t=(c[l>>2]|0)+124+8|0;b[t>>1]=(e[t
x3e;>1]|0)+4;c[k>>2]=ih(c[l>>2]|0,1)|0;t=c[k>>2]|0;i=u;return t|0}c[k>>2]=c[o>
x3e;2];t=c[k>>2]|0;i=u;return t|0}function nh(a,f){a=a|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;y=i;i=i+96|0;m=y+88|0;n=y+84|0;o=y+80|0;h=y+64|0;r=y+60|0;x=y+56|0;s=y+52|0;j=y+48|0;g=y+44|0;k=y+40|0;w=y+
36|0;p=y+32|0;t=y+28|0;u=y+24|0;v=y+8|0;q=y;c[n>>2]=a;c[o>>2]=f;c[r>>2]=c[c[n>>2]>
x3e;2];c[s>>2]=c[(c[n>>2]|0)+8>>2];c[j>>2]=c[(c[n>>2]|0)+4>>2];c[x
x3e;>2]=65536;if(!(c[(c[n>>2]|0)+16>>2]&1))c[x>>2]=c[(c[j>>2]|0)+12+8>>
;2];if((c[(c[s>>2]|0)+72>>2]|0)!=1668246896)_d((c[s>>2]|0)+108|0,h);else{a=(c[n>>2]|0)+36
|0;c[h>>2]=c[a>>2];c[h+4>>2]=c[a+4>>2];c[h+8>>2]=c[a+8>>2];c[h+12>
;>2]=c[a+12>>2]}c[g>>2]=c[(c[n>>2]|0)+60>>2];if(c[(c[r>>2]|0)+468+12>
;>2]|0?(c[(c[n>>2]|0)+16>>2]&512|0)==0:0)c[g>>2]=e[(c[r>>2]|0)+216+10>>
;1];c[(c[s>>2]|0)+56>>2]=c[g>>2];c[(c[s>>2]|0)+24+8>>2]=c[h>>2];c[(c
[s>>2]|0)+24+12>>2]=c[h+12>>2];c[(c[s>>2]|0)+24+16>>2]=(c[(c[n>>2]|0
)+76>>2]|0)-(c[(c[n>>2]|0)+68>>2]|0);if(((c[(c[r>>2]|0)+468+12>>2]|0)==0?(c[(c
[n>>2]|0)+16>>2]&2|0)==0:0)?(c[k>>2]=oh(c[r>>2]|0,e[(c[j>>2]|0)+12>
x3e;1]|0,c[o>>2]|0)|0,c[k>>2]|0):0)c[(c[s>>2]|0)+24+16>>2]=d[c[k>>2]>>
;0]<<6;c[(c[s>>2]|0)+24>>2]=(c[h+8>>2]|0)-(c[h>>2]|0);c[(c[s>>2]|0)+
24+4>>2]=(c[h+12>>2]|0)-(c[h+4>>2]|0);do if(d[(c[r>>2]|0)+296>>0]|0?(e[(c[r>
;>2]|0)+300+34>>1]|0)>0:0){c[w>>2]=((Vb((c[(c[n>>2]|0)+184+4>>2]|0)-(c[h+12>
;>2]|0)|0,c[x>>2]|0)|0)&65535)<<16>>16;if((c[(c[n>>2]|0)+184+4>>2]|0
)<=(c[(c[n>>2]|0)+192+4>>2]|0)){c[p>>2]=0;break}else{c[p>>2]=(Vb((c[(c[n>>
;2]|0)+184+4>>2]|0)-(c[(c[n>>2]|0)+192+4>>2]|0)|0,c[x>>2]|0)|0)&65535;break}}else l
=18;while(0);if((l|0)==18){c[t>>2]=((Vb((c[h+12>>2]|0)-(c[h+4>>2]|0)|0,c[x>>2]|0)|0)&
;65535)<<16>>16;g=c[r>>2]|0;if((e[(c[r>>2]|0)+368>>1]|0)!=65535)c[p>>
;2]=(b[g+368+70>>1]|0)-(b[(c[r>>2]|0)+368+72>>1]|0);else c[p>>2]=(b[g+216+4>>1
]|0)-(b[(c[r>>2]|0)+216+6>>1]|0);c[w>>2]=((c[p>>2]|0)-(c[t>>2]|0)|0)/2|0}c[u
x3e;>2]=c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2];do if(c[u>>2]|0?c[(c[c[u>>2]
x3e;>2]|0)+8>>2]|0:0){c[v>>2]=0;c[v+4>>2]=c[w>>2];c[v+8>>2]=c[p>>
;2];c[q>>2]=Wa[c[(c[c[u>>2]>>2]|0)+8>>2]&31](c[(c[u>>2]|0)+4>>2
]|0,c[o>>2]|0,1,v)|0;if(!(c[q>>2]|0)){c[w>>2]=c[v+4>>2];c[p>>2]=c[v+8>>
;2];break}c[m>>2]=c[q>>2];x=c[m>>2]|0;i=y;return x|0}while(0);c[(c[s>>2]|0)+60>>
;2]=c[p>>2];if(!(c[(c[n>>2]|0)+16>>2]&1)){c[w>>2]=Mb(c[w>>2]|0,c[x>
x3e;2]|0)|0;c[p>>2]=Mb(c[p>>2]|0,c[x>>2]|0)|0}c[(c[s>>2]|0)+24+20>>2]=(c[(c[s
x3e;>2]|0)+24+8>>2]|0)-((c[(c[s>>2]|0)+24+16>>2]|0)/2|0);c[(c[s>>2]|0)+24+24>
x3e;2]=c[w>>2];c[(c[s>>2]|0)+24+28>>2]=c[p>>2];c[m>>2]=0;x=c[m>>2]|0
;i=y;return x|0}function oh(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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;h=o+
16|0;j=o+12|0;m=o+8|0;l=o+4|0;k=o;c[f>>2]=a;c[g>>2]=b;c[h>>2]=e;c[m>>2]=0;c[l>>
;2]=c[(c[f>>2]|0)+752>>2];c[k>>2]=(c[(c[f>>2]|0)+740>>2]|0)+8;c[j>>2
]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[f>>2]|0)+748>>2]|0)>>>0){
n=7;break}if((d[(c[(c[f>>2]|0)+756>>2]|0)+(c[j>>2]|0)>>0]|0|0)==(c[g>>2]|0))break
;c[j>>2]=(c[j>>2]|0)+1}if((n|0)==7){n=c[m>>2]|0;i=o;return n|0}c[h>>2]=(c[h>>2
]|0)+2;if((c[h>>2]|0)>>>0>=(c[l>>2]|0)>>>0){n=c[m>>2]|0;i=o;return
n|0}n=(c[k>>2]|0)+(_(c[j>>2]|0,c[l>>2]|0)|0)|0;c[m>>2]=n+(c[h>>2]|0);n=c[m>
;>2]|0;i=o;return n|0}function ph(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;l=i;i=i+32|0;m=l+20|0;f=
l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>
;2]=c[m>>2];c[k>>2]=c[(c[j>>2]|0)+532>>2];c[c[h>>2]>>2]=0;c[(c[h>
;>2]|0)+4>>2]=0;if(!(c[k>>2]|0)){i=l;return 0}m=Oa[c[(c[k>>2]|0)+128>>2]&63](c
[j>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;c[c[h>>2]>>2]=m;i=l;return 0}function qh(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,s=0,t=0,u=0,v=0;t=i;i=i+48|0;v=t+24|0;j=t+20|0;k=t+16
|0;u=t+12|0;l=t+8|0;r=t+4|0;p=t;o=t+36|0;s=t+34|0;m=t+32|0;q=t+30|0;n=t+28|0;c[v>>2]=b;c[j>>2]=d;c[k>
x3e;2]=f;c[u>>2]=g;c[l>>2]=h;c[p>>2]=c[v>>2];a[o>>0]=((c[u>>2]&
512|0)!=0^1)&1;b=(c[u>>2]&16|0)!=0;c[r>>2]=0;if(b){while(1){if((c[r>>2]|0)>>
x3e;0>=(c[k>>2]|0)>>>0)break;dh(c[p>>2]|0,(c[j>>2]|0)+(c[r>>2]|0)|0,
a[o>>0]|0,s,m);c[(c[l>>2]|0)+(c[r>>2]<<2)>>2]=e[m>>1];c[r>>
;2]=(c[r>>2]|0)+1}i=t;return 0}else{while(1){if((c[r>>2]|0)>>>0>=(c[k>>2]|0)
x3e;>>0)break;ch(c[p>>2]|0,(c[j>>2]|0)+(c[r>>2]|0)|0,a[o>>0]|0,q,n);c[(c[l>
;>2]|0)+(c[r>>2]<<2)>>2]=e[n>>1];c[r>>2]=(c[r>>2]|0)+1}i=t;return
0}return 0}function rh(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;m=i;i=i+32|0;d=m+28|0;e=m+24|0;f=m+20|0;l=m+16|
0;g=m+12|0;k=m+8|0;h=m+4|0;j=m;c[e>>2]=a;c[f>>2]=b;c[l>>2]=c[e>>2];c[g>>2]=0;do
if(c[(c[c[e>>2]>>2]|0)+8>>2]&2|0){c[k>>2]=c[c[e>>2]>>2];c[h>
;>2]=c[(c[k>>2]|0)+532>>2];c[g>>2]=Oa[c[(c[h>>2]|0)+148>>2]&63](c[k
x3e;>2]|0,c[f>>2]|0,j)|0;if(c[g>>2]|0){c[(c[l>>2]|0)+112>>2]=-1;break}c[d>>
;2]=sh(c[e>>2]|0,c[j>>2]|0)|0;l=c[d>>2]|0;i=m;return l|0}while(0);Ed(c[c[e>>2]>>
;2]|0,c[f>>2]|0);if(c[(c[c[e>>2]>>2]|0)+8>>2]&1|0)c[g>>2]=th(c[l>>
;2]|0)|0;c[d>>2]=c[g>>2];l=c[d>>2]|0;i=m;return l|0}function sh(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;l=i;i=i+32|0;d=l+24|0;e=l+20|0;j=l+16|0;k=l+12|0;f=l+8|0;h=l+4|0;g=l;c[d>>2]=a;c[e>>2]=b;
c[j>>2]=c[c[d>>2]>>2];c[k>>2]=c[d>>2];c[f>>2]=0;c[(c[k>>2]|
0)+112>>2]=c[e>>2];if(c[(c[c[d>>2]>>2]|0)+8>>2]&1|0){Cd(c[c[d>>
2]>>2]|0,c[e>>2]|0);th(c[k>>2]|0)|0;k=c[f>>2]|0;i=l;return k|0}c[h>>2]=c[(c[j
x3e;>2]|0)+532>>2];c[g>>2]=(c[d>>2]|0)+12;c[f>>2]=Oa[c[(c[h>>2]|0)+152>
;>2]&63](c[j>>2]|0,c[e>>2]|0,c[g>>2]|0)|0;if(!(c[f>>2]|0)){k=c[f>>2]|
0;i=l;return k|0}c[(c[k>>2]|0)+112>>2]=-1;k=c[f>>2]|0;i=l;return k|0}function th(d){d=d|0;var f=0,
g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;g=l+16|0;h=l+12|0;f=l+8|0;j=l+4|0;k=l;c[h>>2]=d;c[j>>2]=0;a[(c[h>
x3e;2]|0)+72+36>>0]=0;c[f>>2]=c[c[h>>2]>>2];c[k>>2]=(c[h>>2]|0)+44;d
=c[k>>2]|0;m=(c[h>>2]|0)+12|0;c[d>>2]=c[m>>2];c[d+4>>2]=c[m+4>>2];c[
d+8>>2]=c[m+8>>2];c[d+12>>2]=c[m+12>>2];c[d+16>>2]=c[m+16>>2];c[d+20
>>2]=c[m+20>>2];c[d+24>>2]=c[m+24>>2];if((e[c[k>>2]>>1]|0)>=1?(
e[(c[k>>2]|0)+2>>1]|0)>=1:0){if(e[(c[f>>2]|0)+160+16>>1]&8|0){m=Vb(e[c[k>
x3e;2]>>1]<<6,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[k>>2]|0)+4>>2]=m;m=Vb(e
[(c[k>>2]|0)+2>>1]<<6,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[k>>2]|0)+8>
;>2]=m;m=(Mb(b[(c[f>>2]|0)+70>>1]|0,c[(c[k>>2]|0)+8>>2]|0)|0)+32&-64;c[(c[k>
;>2]|0)+12>>2]=m;m=(Mb(b[(c[f>>2]|0)+72>>1]|0,c[(c[k>>2]|0)+8>>2]|0)|0)+32
&-64;c[(c[k>>2]|0)+16>>2]=m;m=(Mb(b[(c[f>>2]|0)+74>>1]|0,c[(c[k>>2]|0)+8
x3e;>2]|0)|0)+32&-64;c[(c[k>>2]|0)+20>>2]=m;m=(Mb(b[(c[f>>2]|0)+76>>1]|0,c[(c[
k>>2]|0)+4>>2]|0)|0)+32&-64;c[(c[k>>2]|0)+24>>2]=m}f=c[k>>2]|0;if((e[c[k
x3e;>2]>>1]|0)>=(e[(c[k>>2]|0)+2>>1]|0)){c[(c[h>>2]|0)+72+16>>2]=c[f
+4>>2];b[(c[h>>2]|0)+72+8>>1]=b[c[k>>2]>>1]|0;c[(c[h>>2]|0)+72>
x3e;2]=65536;m=xb(e[(c[k>>2]|0)+2>>1]|0,65536,e[c[k>>2]>>1]|0)|0;c[(c[h>>2]|0)+
72+4>>2]=m}else{c[(c[h>>2]|0)+72+16>>2]=c[f+8>>2];b[(c[h>>2]|0)+72+8>>
;1]=b[(c[k>>2]|0)+2>>1]|0;m=xb(e[c[k>>2]>>1]|0,65536,e[(c[k>>2]|0)+2>>
;1]|0)|0;c[(c[h>>2]|0)+72>>2]=m;c[(c[h>>2]|0)+72+4>>2]=65536}a[(c[h>>2]|0)+301
>>0]=0;if(!(c[j>>2]|0))a[(c[h>>2]|0)+72+36>>0]=1;c[g>>2]=c[j>>2];m=c
[g>>2]|0;i=l;return m|0}c[g>>2]=151;m=c[g>>2]|0;i=l;return m|0}function uh(a){a=a|0;var b=0,d=0;b=
i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return 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[d>>2]=c[d>>2];i=b;return}function wh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=
0;j=i;i=i+32|0;h=j+16|0;d=j+12|0;e=j+8|0;g=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=qc(740,c[e>
x3e;2]|0)|0;if(c[f>>2]|0){c[h>>2]=c[f>>2];h=c[h>>2]|0;i=j;return h|0}if(!(c[d>>
;2]|0)){c[h>>2]=0;h=c[h>>2]|0;i=j;return h|0}c[g>>2]=Wc(c[(c[d>>2]|0)+4>>2]|0,
11340)|0;if(c[g>>2]|0)d=Ya[c[(c[c[g>>2]>>2]|0)+32>>2]&127](c[g>>2]|0,c[e
x3e;>2]|0)|0;else d=0;c[h>>2]=d;h=c[h>>2]|0;i=j;return h|0}function xh(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;k=n+12|0;j=n+8|0;l=n+4|0;m=n;c[f>>2]=d;c[g>>2]=
e;c[h>>2]=c[(c[f>>2]|0)+692>>2];c[k>>2]=0;do if(c[h>>2]|0?(c[(c[h>>2
]|0)+2060>>2]|0)==0:0){c[j>>2]=(c[h>>2]|0)+1324;c[m>>2]=c[(c[f>>2]|0)+100>
;>2];c[l>>2]=bc(c[m>>2]|0,32,k)|0;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}else{m=yh
(c[h>>2]|0,c[c[j>>2]>>2]|0)|0;c[c[l>>2]>>2]=m;m=yh(c[h>>2]|0,c[(c[j
x3e;>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+4>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+
12>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+16>>2
]|0)|0;c[(c[l>>2]|0)+12>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+20>>2]|0)|0;c[(c[l
x3e;>2]|0)+16>>2]=m;c[(c[l>>2]|0)+20>>2]=c[(c[j>>2]|0)+28>>2];a[(c[l>
;>2]|0)+24>>0]=a[(c[j>>2]|0)+24>>0]|0;b[(c[l>>2]|0)+26>>1]=c[(c[j>
x3e;2]|0)+32>>2];b[(c[l>>2]|0)+28>>1]=c[(c[j>>2]|0)+36>>2];c[(c[h>>2
]|0)+2060>>2]=c[l>>2];break}}while(0);if(!(c[h>>2]|0)){m=c[k>>2]|0;i=n;return m|0}m=c[g
x3e;>2]|0;l=c[(c[h>>2]|0)+2060>>2]|0;c[m>>2]=c[l>>2];c[m+4>>2]=c[l+4>
;>2];c[m+8>>2]=c[l+8>>2];c[m+12>>2]=c[l+12>>2];c[m+16>>2]=c[l+16>>
;2];c[m+20>>2]=c[l+20>>2];c[m+24>>2]=c[l+24>>2];c[m+28>>2]=c[l+28>>2
];m=c[k>>2]|0;i=n;return m|0}function yh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>
;>2]=a;c[f>>2]=b;do if((c[f>>2]|0)!=65535){a=c[e>>2]|0;if((c[f>>2]|0)>>
x3e;0>390){c[d>>2]=zh(a,(c[f>>2]|0)-391|0)|0;break}if(c[a+2056>>2]|0){c[d>>2]=Ta[c[(
c[(c[e>>2]|0)+2056>>2]|0)+20>>2]&63](c[f>>2]|0)|0;break}else{c[d>>2]=0;break
}}else c[d>>2]=0;while(0);i=g;return c[d>>2]|0}function zh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f
+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if((c[e>>2]|0)>>>0>=(c[(c[d>>2]|0)+1312
>>2]|0)>>>0){a=0;i=f;return a|0}a=c[(c[(c[d>>2]|0)+1316>>2]|0)+(c[e>>2]
x3c;<2)>>2]|0;i=f;return a|0}function Ah(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]&512|0)>0|0}function Bh(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[(c[e>>2]|0)+692>>2];i=d;return c[(c[b>>2]|0)+1304>>2]|0}
function Ch(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;p=i;i=i+32|0;q=p+24|0;h=p+20|0;j=p+16|0;k=p
+12|0;m=p+8|0;n=p+4|0;o=p+28|0;l=p;c[q>>2]=a;c[h>>2]=d;c[j>>2]=f;c[k>>2]=g;c[m>>
;2]=c[(c[q>>2]|0)+692>>2];if(!(c[(c[m>>2]|0)+2056>>2]|0)){c[l>>2]=2;q=c[l>
;>2]|0;i=p;return q|0}b[o>>1]=b[(c[(c[m>>2]|0)+1152+8>>2]|0)+(c[h>>2]<<1)
x3e;>1]|0;c[n>>2]=yh(c[m>>2]|0,e[o>>1]|0)|0;if(c[n>>2]|0)pe(c[j>>2]|0,c[n
>>2]|0,c[k>>2]|0)|0;c[l>>2]=0;q=c[l>>2]|0;i=p;return q|0}function Dh(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,q=0,r=0;o=i;i=i+48|0;m=o+36|0;r=o+32|0;f=o+28|0;g=o+24|0;h=o+20|0;k=o+16|0;j=o+12|0;l=o
+40|0;n=o+8|0;q=o+4|0;p=o;c[r>>2]=a;c[f>>2]=d;c[g>>2]=c[(c[r>>2]|0)+692>>2];c[
h>>2]=(c[g>>2]|0)+1152;c[q>>2]=c[(c[r>>2]|0)+96>>2];c[p>>2]=Vd(c[q
x3e;>2]|0,71003)|0;c[k>>2]=c[p>>2];if(!(c[k>>2]|0)){c[m>>2]=0;r=c[m>>2]|0
;i=o;return r|0}c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0>=(c[(c[g>>2]|0)+12>
x3e;2]|0)>>>0){f=12;break}b[l>>1]=b[(c[(c[h>>2]|0)+8>>2]|0)+(c[n>>2]<
;<1)>>1]|0;if((e[l>>1]|0|0)>390)c[j>>2]=zh(c[g>>2]|0,(e[l>>1]|0)-391
|0)|0;else c[j>>2]=Ta[c[(c[k>>2]|0)+20>>2]&63](e[l>>1]|0)|0;if(c[j>>2]|0?(
Kr(c[f>>2]|0,c[j>>2]|0)|0)==0:0){f=10;break}c[n>>2]=(c[n>>2]|0)+1}if((f|0)==10){c[m>
;>2]=c[n>>2];r=c[m>>2]|0;i=o;return r|0}else if((f|0)==12){c[m>>2]=0;r=c[m>>2]|0;i=
o;return r|0}return 0}function Eh(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;l=i;i=i+32|0;d=l+28|0;e=l+24|0;f=l+20
|0;g=l+16|0;m=l+12|0;h=l+8|0;k=l+4|0;j=l;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[d>>2];c[g>
x3e;2]=0;c[m>>2]=c[c[f>>2]>>2];c[h>>2]=c[(c[(c[m>>2]|0)+96>>2]|0)+4
x3e;>2];c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;if((c[(c[f>>2]|0)+12>
x3e;2]|0)==828){m=c[g>>2]|0;i=l;return m|0}if((c[(c[f>>2]|0)+12>>2]|0)==868){m=c[g>>2]|0
;i=l;return m|0}c[k>>2]=Wc(c[h>>2]|0,11340)|0;c[j>>2]=Vd(c[k>>2]|0,11426)|0;if(!(c[j>
;>2]|0)){m=c[g>>2]|0;i=l;return m|0}if(!(c[c[j>>2]>>2]|0)){m=c[g>>2]|0;i=l;return m
|0}c[g>>2]=Ya[c[c[j>>2]>>2]&127](c[d>>2]|0,c[e>>2]|0)|0;m=c[g>>
2]|0;i=l;return m|0}function Fh(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;f=b+4|0;e=b;c[d>>2]=a;c
[g>>2]=c[c[d>>2]>>2];c[f>>2]=c[(c[g>>2]|0)+692>>2];c[e>>2]=(
c[f>>2]|0)+116;c[(c[d>>2]|0)+16>>2]=(c[e>>2]|0)+524;i=b;return 0}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)+16>>2]=0;i=b;return}function Hh(a,b){a=a|0;b=b|0
;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=b;c[g>>2]=0;if((c[f>
x3e;2]|0)>>>0>=256){g=c[g>>2]|0;i=h;return g|0}c[g>>2]=e[(c[(c[d>>2]|0)+16>
;>2]|0)+(c[f>>2]<<1)>>1];g=c[g>>2]|0;i=h;return g|0}function Ih(a,b){a=a|0;b=b|0;var
d=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;f=l+16|0;g=l+12|0;j=l+8|0;d=l+4|0;h=l;c[f>>2]=a;c[g>>2]=b;c[j>
;>2]=0;c[d>>2]=c[c[g>>2]>>2];c[c[g>>2]>>2]=0;if((c[d>>2]|0)>
;>>0>=255){k=c[j>>2]|0;i=l;return k|0}c[h>>2]=(c[d>>2]|0)+1;while(1){if((c[h>
x3e;2]|0)>>>0>=256){k=7;break}c[j>>2]=e[(c[(c[f>>2]|0)+16>>2]|0)+(c[h>>
;2]<<1)>>1];d=c[h>>2]|0;if(c[j>>2]|0)break;c[h>>2]=d+1}if((k|0)==7){k=c[j>
;>2]|0;i=l;return k|0}c[c[g>>2]>>2]=d;k=c[j>>2]|0;i=l;return k|0}function Jh(a){a=a|0;var b=0
,d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;b=j+24|0;d=j+20|0;f=j+16|0;g=j+12|0;e=j+8|0;k=j+4|0;h=j;c[d>>2]=a;c[f>
x3e;2]=c[c[d>>2]>>2];c[g>>2]=c[(c[f>>2]|0)+100>>2];c[e>>2]=c[(c[f>
;>2]|0)+692>>2];c[k>>2]=(c[e>>2]|0)+1152;c[h>>2]=c[(c[e>>2]|0)+2056>
x3e;2];if(c[(c[k>>2]|0)+8>>2]|0){c[b>>2]=Sa[c[(c[h>>2]|0)+4>>2]&3](c[g>
;>2]|0,c[d>>2]|0,c[(c[e>>2]|0)+12>>2]|0,105,0,c[f>>2]|0)|0;k=c[b>>2]|0;i=
j;return k|0}else{c[b>>2]=163;k=c[b>>2]|0;i=j;return k|0}return 0}function Kh(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;k=d+16|0;h=d+12|0;g=d+8|0;j=d+4|0;f=d;c[k>>2]=a;c[h>>2]=b;c[g>>2]=c[(c
[k>>2]|0)+692>>2];c[j>>2]=(c[g>>2]|0)+1152;c[f>>2]=e[(c[(c[j>>2]|0)+
8>>2]|0)+(c[h>>2]<<1)>>1];b=yh(c[g>>2]|0,c[f>>2]|0)|0;i=d;return b|0
}function Lh(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]=c[c[d>>
;2]>>2];c[e>>2]=c[(c[f>>2]|0)+100>>2];Fb(c[e>>2]|0,c[(c[d>>2]|0)+20
x3e;>2]|0);c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>2]=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,j=0;d=i;i=i+32|0;f=d+16|0;e=d+12|0;j=d+8|0;h=d+4|0;g=d;c[f>>2]=a;c[e>>
2]=b;c[j>>2]=c[c[f>>2]>>2];c[h>>2]=c[(c[j>>2]|0)+692>>2];c[g>
x3e;2]=c[(c[h>>2]|0)+2056>>2];a=Ya[c[(c[g>>2]|0)+8>>2]&127](c[f>>2]|0,c[e
>>2]|0)|0;i=d;return a|0}function Nh(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;e=d+12|0;j=d+8
|0;h=d+4|0;g=d;c[f>>2]=a;c[e>>2]=b;c[j>>2]=c[c[f>>2]>>2];c[h>>2]=c[(
c[j>>2]|0)+692>>2];c[g>>2]=c[(c[h>>2]|0)+2056>>2];a=Ya[c[(c[g>>2]|0)+
12>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Oh(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;m=i;i=i+32|0;n=m+24|0;f=m+20|0;g=m+16|0;h=m+12|0;l=m+8|0;j=m+4|0;k=m;c[n>>2]=a;c
[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[l>>2]=0;c[j>>2]=c[(c[n>>2]|0)+692>
;>2];if(!(c[j>>2]|0)){n=c[l>>2]|0;i=m;return n|0}c[k>>2]=(c[j>>2]|0)+1324;if((c[(c[
k>>2]|0)+128>>2]|0)==65535){c[l>>2]=6;n=c[l>>2]|0;i=m;return n|0}if(c[f>>2]|0){
if(!(c[(c[j>>2]|0)+2064>>2]|0)){n=yh(c[j>>2]|0,c[(c[k>>2]|0)+128>>2]|0)|0;c[(c
[j>>2]|0)+2064>>2]=n}c[c[f>>2]>>2]=c[(c[j>>2]|0)+2064>>2]}if(c[g>
;>2]|0){if(!(c[(c[j>>2]|0)+2068>>2]|0)){n=yh(c[j>>2]|0,c[(c[k>>2]|0)+132>>
;2]|0)|0;c[(c[j>>2]|0)+2068>>2]=n}c[c[g>>2]>>2]=c[(c[j>>2]|0)+2068>>
2]}if(!(c[h>>2]|0)){n=c[l>>2]|0;i=m;return n|0}c[c[h>>2]>>2]=c[(c[k>>2]|0)+136
>>2];n=c[l>>2]|0;i=m;return n|0}function Ph(b,d){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;k=j+16
|0;e=j+12|0;h=j+8|0;f=j+4|0;g=j;c[k>>2]=b;c[e>>2]=d;c[h>>2]=0;c[f>>2]=c[(c[k>>
2]|0)+692>>2];a[c[e>>2]>>0]=0;if(!(c[f>>2]|0)){k=c[h>>2]|0;i=j;return k|0}c[g
x3e;>2]=(c[f>>2]|0)+1324;if((c[(c[g>>2]|0)+128>>2]|0)==65535){k=c[h>>2]|0;i=j;return
k|0}a[c[e>>2]>>0]=1;k=c[h>>2]|0;i=j;return k|0}function Qh(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;m=i;i=i+32|0;n=m+24|0;f=m+20|0;g=m+16|0;l=m+12|0;j=m+8|0;h=m+4|0;k=m;c[n>>2]=a;c[f>>2
]=b;c[g>>2]=d;c[l>>2]=0;c[j>>2]=c[(c[n>>2]|0)+692>>2];do if(c[j>>2]|
0){c[k>>2]=(c[j>>2]|0)+1324;if((c[(c[k>>2]|0)+128>>2]|0)==65535){c[l>>2]=6;break
}if((c[f>>2]|0)>>>0>(c[(c[j>>2]|0)+12>>2]|0)>>>0){c[l>>
;2]=6;break}c[h>>2]=e[(c[(c[j>>2]|0)+1152+8>>2]|0)+(c[f>>2]<<1)>>1];
if(c[g>>2]|0)c[c[g>>2]>>2]=c[h>>2]}while(0);i=m;return c[l>>2]|0}
function rm(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;L=i;i=i+128|0;N=L+116|0;M=L+112|0;j=L+108|0;D=L+104|0;v=L+100|0;g=L+96|0;h=L+92|0;y=L+88|0;
H=L+84|0;w=L+80|0;p=L+76|0;s=L+72|0;k=L+68|0;r=L+64|0;n=L+60|0;l=L+56|0;t=L+52|0;x=L+48|0;u=L+44|0;m=L+40|0;o=L+36|0;q=L+32|0;C=
L+28|0;z=L+24|0;E=L+20|0;G=L+16|0;F=L+120|0;A=L+12|0;I=L+8|0;B=L+4|0;J=L;c[N>>2]=e;c[M>>2]=f;c[j>>
2]=(c[N>>2]|0)+48+((c[M>>2]|0)*28|0);c[D>>2]=0;c[v>>2]=c[c[N>>2]>>2];
c[g>>2]=(c[(c[N>>2]|0)+112>>2]|0)+40+((c[M>>2]|0)*396|0);c[h>>2]=c[(c[j>
x3e;2]|0)+8>>2];c[y>>2]=(c[h>>2]|0)+((c[c[j>>2]>>2]|0)*52|0);c[(c[j>>
;2]|0)+12>>2]=0;f=c[N>>2]|0;if(!(c[M>>2]|0))f=c[f+4>>2]|0;else f=c[f+12>>2]|0;
c[w>>2]=f;c[p>>2]=Mb(c[(c[g>>2]|0)+204>>2]|0,c[w>>2]|0)|0;if((c[p>>2
]|0)>16)c[p>>2]=Vb(16,c[w>>2]|0)|0;else c[p>>2]=c[(c[g>>2]|0)+204>>2];c[H
>>2]=c[h>>2];while(1){if((c[H>>2]|0)>>>0>=(c[y>>2]|0)>>>
;0)break;c[s>>2]=0;c[k>>2]=65535;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[(c[j>
x3e;2]|0)+12>>2]|0))break;c[n>>2]=(c[(c[j>>2]|0)+20>>2]|0)+((c[r>>2]|0)*48|0);
do if((a[(c[n>>2]|0)+13>>0]|0)==(a[(c[H>>2]|0)+1>>0]|0)){c[l>>2]=(b[(c[H>
x3e;2]|0)+2>>1]|0)-(b[c[n>>2]>>1]|0);if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>
;>2]|0);if((c[l>>2]|0)<(c[p>>2]|0)?(c[l>>2]|0)<(c[k>>2]|0):0){c[t>
x3e;2]=c[(c[H>>2]|0)+20>>2];if(c[t>>2]|0){c[x>>2]=c[(c[n>>2]|0)+40>>
2];c[m>>2]=0;do{c[u>>2]=c[(c[x>>2]|0)+20>>2];if(c[u>>2]|0){if((b[(c[t>>
;2]|0)+2>>1]|0)>(b[(c[u>>2]|0)+2>>1]|0))f=(b[(c[t>>2]|0)+2>>1]|0)-(b[(c[u
>>2]|0)+2>>1]|0)|0;else f=(b[(c[u>>2]|0)+2>>1]|0)-(b[(c[t>>2]|0)+2>>
1]|0)|0;c[m>>2]=f;if((c[m>>2]|0)>=(c[p>>2]|0))break}N=c[(c[x>>2]|0)+16>>2
]|0;c[x>>2]=N}while((N|0)!=(c[(c[n>>2]|0)+40>>2]|0));if((c[m>>2]|0)>=(c[p>>
;2]|0))break}c[k>>2]=c[l>>2];c[s>>2]=c[n>>2]}}while(0);c[r>>2]=(c[r>>
;2]|0)+1}if(c[s>>2]|0){c[(c[H>>2]|0)+16>>2]=c[(c[s>>2]|0)+40>>2];c[(c[(c[s>
;>2]|0)+44>>2]|0)+16>>2]=c[H>>2];c[(c[s>>2]|0)+44>>2]=c[H>>2]}else
{c[D>>2]=Yl(c[j>>2]|0,b[(c[H>>2]|0)+2>>1]|0,a[(c[H>>2]|0)+1>>0]|0,c[
v>>2]|0,o)|0;if(c[D>>2]|0){K=69;break}f=c[o>>2]|0;e=f+48|0;do{c[f>>2]=0;f=f+4|0}while((f
|0)<(e|0));c[(c[o>>2]|0)+40>>2]=c[H>>2];c[(c[o>>2]|0)+44>>2]=c[H>>
;2];b[c[o>>2]>>1]=b[(c[H>>2]|0)+2>>1]|0;N=Mb(b[(c[H>>2]|0)+2>>1]|0,c
[w>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=N;c[(c[o>>2]|0)+4>>2]=N;c[(c[H>>2]|0
)+16>>2]=c[H>>2];a[(c[o>>2]|0)+13>>0]=a[(c[H>>2]|0)+1>>0]|0}c[H>
;>2]=(c[H>>2]|0)+52}if((K|0)==69){N=c[D>>2]|0;i=L;return N|0}c[q>>2]=c[(c[j>>2]|0)+
20>>2];c[C>>2]=(c[q>>2]|0)+((c[(c[j>>2]|0)+12>>2]|0)*48|0);c[z>>2]=c
[q>>2];while(1){if((c[z>>2]|0)>>>0>=(c[C>>2]|0)>>>0)break;c[H
x3e;>2]=c[(c[z>>2]|0)+40>>2];if(c[H>>2]|0)do{c[(c[H>>2]|0)+12>>2]=c[z>
;>2];c[H>>2]=c[(c[H>>2]|0)+16>>2]}while((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>
;>2]|0));c[z>>2]=(c[z>>2]|0)+48}c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)
x3e;>>0>=(c[C>>2]|0)>>>0)break;c[E>>2]=0;c[G>>2]=0;c[H>>2]=
c[(c[z>>2]|0)+40>>2];do{if(d[c[H>>2]>>0]&1|0)c[E>>2]=(c[E>>2]|0
)+1;else c[G>>2]=(c[G>>2]|0)+1;if(c[(c[H>>2]|0)+24>>2]|0)f=(c[(c[(c[H>>2]|0)+24
>>2]|0)+12>>2]|0)!=(c[z>>2]|0);else f=0;a[F>>0]=f&1;if(!(!(c[(c[H>>2]|0)+
20>>2]|0)?!(d[F>>0]|0):0))K=47;do if((K|0)==47){K=0;c[A>>2]=c[(c[z>>2]|0)+24>>
2];c[I>>2]=c[(c[H>>2]|0)+20>>2];if(a[F>>0]|0){c[I>>2]=c[(c[H>>2]|0)+
24>>2];c[A>>2]=c[(c[z>>2]|0)+28>>2]}if(c[A>>2]|0){c[B>>2]=(b[c[z>
;>2]>>1]|0)-(b[c[A>>2]>>1]|0);if((c[B>>2]|0)<0)c[B>>2]=0-(c[B>
x3e;2]|0);if((b[(c[H>>2]|0)+2>>1]|0)>(b[(c[I>>2]|0)+2>>1]|0))f=(b[(c[H>>2
]|0)+2>>1]|0)-(b[(c[I>>2]|0)+2>>1]|0)|0;else f=(b[(c[I>>2]|0)+2>>1]|0)-(b[(c[H
>>2]|0)+2>>1]|0)|0;c[J>>2]=f;if((c[J>>2]|0)<(c[B>>2]|0))c[A>>2]=
c[(c[I>>2]|0)+12>>2]}else c[A>>2]=c[(c[I>>2]|0)+12>>2];f=c[A>>2]|0;e
=c[z>>2]|0;if(a[F>>0]|0){c[e+28>>2]=f;N=(c[A>>2]|0)+12|0;a[N>>0]=d[N>>
;0]|2;break}else{c[e+24>>2]=f;break}}while(0);c[H>>2]=c[(c[H>>2]|0)+16>>2]}while((c[H>
;>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));a[(c[z>>2]|0)+12>>0]=0;if((c[E>>2]|0)
x3e;0?(c[E>>2]|0)>=(c[G>>2]|0):0){N=(c[z>>2]|0)+12|0;a[N>>0]=d[N>>0]|1}if
(c[(c[z>>2]|0)+28>>2]|0?c[(c[z>>2]|0)+24>>2]|0:0)c[(c[z>>2]|0)+28>>2
]=0;c[z>>2]=(c[z>>2]|0)+48}N=c[D>>2]|0;i=L;return N|0}function sm(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;A=i;i=i+80|0;u=A+72|0;h=A+68|0;g=A+64|0;z=A+60|0;y=A+56|0;r
=A+52|0;x=A+48|0;j=A+44|0;l=A+40|0;s=A+36|0;k=A+32|0;o=A+28|0;p=A+24|0;q=A+20|0;m=A+16|0;n=A+12|0;t=A+8|0;w=A+4|0;v=A;c[u>
x3e;2]=e;c[h>>2]=f;c[g>>2]=(c[u>>2]|0)+48+((c[h>>2]|0)*28|0);c[z>>2]=c[(c[g>
;>2]|0)+20>>2];c[y>>2]=(c[z>>2]|0)+((c[(c[g>>2]|0)+12>>2]|0)*48|0);c[j>
;>2]=0;c[l>>2]=0;c[s>>2]=0;c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>
x3e;>0>=(c[y>>2]|0)>>>0)break;do if(!(d[(c[x>>2]|0)+12>>0]&4)){c[k
x3e;>2]=c[(c[x>>2]|0)+24>>2];if(!(c[k>>2]|0)){c[s>>2]=(c[s>>2]|0)+1;break
}if((c[k>>2]|0)>>>0<(c[x>>2]|0)>>>0){tm(c[u>>2]|0,c[h>>
;2]|0,c[k>>2]|0,c[x>>2]|0);g=(c[x>>2]|0)+12|0;a[g>>0]=d[g>>0]|4;break}f=c[u>
;>2]|0;e=c[x>>2]|0;g=c[k>>2]|0;if((c[h>>2]|0)==1|(c[j>>2]|0)!=0)wm(f,e,g,c[l>
x3e;2]|0,c[h>>2]|0)|0;else c[l>>2]=wm(f,e,g,0,0)|0;c[j>>2]=c[x>>2];g=(c[x>>2]|
0)+12|0;a[g>>0]=d[g>>0]|4;g=(c[k>>2]|0)+12|0;a[g>>0]=d[g>>0]|4}while(0);c[x>
;>2]=(c[x>>2]|0)+48}c[r>>2]=((c[y>>2]|0)-(c[z>>2]|0)|0)/48|0;if((c[h>>2]|
0)==0?(c[r>>2]|0)==6|(c[r>>2]|0)==12:0){f=c[z>>2]|0;if((c[r>>2]|0)==6){c[o>>2]=
f;c[p>>2]=(c[z>>2]|0)+96;c[q>>2]=(c[z>>2]|0)+192}else{c[o>>2]=f+48;c[p>
x3e;2]=(c[z>>2]|0)+240;c[q>>2]=(c[z>>2]|0)+432}c[m>>2]=(c[(c[p>>2]|0)+4>
x3e;2]|0)-(c[(c[o>>2]|0)+4>>2]|0);c[n>>2]=(c[(c[q>>2]|0)+4>>2]|0)-(c[(c[p>
;>2]|0)+4>>2]|0);c[t>>2]=(c[m>>2]|0)-(c[n>>2]|0);if((c[t>>2]|0)<0)c[
t>>2]=0-(c[t>>2]|0);if(((c[(c[o>>2]|0)+24>>2]|0)==((c[o>>2]|0)+48|0)?(c[(c[p
x3e;>2]|0)+24>>2]|0)==((c[p>>2]|0)+48|0):0)?((c[t>>2]|0)<8?(c[(c[q>>2]|0)+24
x3e;>2]|0)==((c[q>>2]|0)+48|0):0):0){c[l>>2]=(c[(c[q>>2]|0)+8>>2]|0)-((c[(c[p>
x3e;2]|0)+8>>2]<<1)-(c[(c[o>>2]|0)+8>>2]|0));t=(c[q>>2]|0)+8|0;c[t>>
2]=(c[t>>2]|0)-(c[l>>2]|0);if(c[(c[q>>2]|0)+24>>2]|0){t=(c[(c[q>>2]|0)+24>
;>2]|0)+8|0;c[t>>2]=(c[t>>2]|0)-(c[l>>2]|0)}if((c[r>>2]|0)==12){t=(c[z>>2
]|0)+384+8|0;c[t>>2]=(c[t>>2]|0)-(c[l>>2]|0);t=(c[z>>2]|0)+528+8|0;c[t>>2]=(c[
t>>2]|0)-(c[l>>2]|0)}t=(c[q>>2]|0)+12|0;a[t>>0]=d[t>>0]|4;if(c[(c[q>>
;2]|0)+24>>2]|0){t=(c[(c[q>>2]|0)+24>>2]|0)+12|0;a[t>>0]=d[t>>0]|4}}}if(!(c[s
x3e;>2]|0)){i=A;return}c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>>>0>=(c[y
x3e;>2]|0)>>>0)break;if((d[(c[x>>2]|0)+12>>0]&4|0)==0?c[(c[x>>2]|0)+28>
;>2]|0:0){xm(c[u>>2]|0,c[(c[x>>2]|0)+28>>2]|0,c[x>>2]|0);t=(c[x>>2]|0)+12
|0;a[t>>0]=d[t>>0]|4;c[s>>2]=(c[s>>2]|0)+-1}c[x>>2]=(c[x>>2]|0)+48}if
(!(c[s>>2]|0)){i=A;return}c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>>>0>
;=(c[y>>2]|0)>>>0)break;do if(!(d[(c[x>>2]|0)+12>>0]&4)){t=c[x>>2]|0
;c[v>>2]=t;c[w>>2]=t;do{t=(c[w>>2]|0)+-48|0;c[w>>2]=t;if(t>>>0<(c[z
x3e;>2]|0)>>>0)break}while(!(d[(c[w>>2]|0)+12>>0]&4|0));do{t=(c[v>>2]|0)+
48|0;c[v>>2]=t;if(t>>>0>=(c[y>>2]|0)>>>0)break}while(!(d[(c[v>>
2]|0)+12>>0]&4|0));if((c[w>>2]|0)>>>0<(c[z>>2]|0)>>>0?(c[v
>>2]|0)>>>0>=(c[y>>2]|0)>>>0:0)break;if((c[w>>2]|0)>>
x3e;0<(c[z>>2]|0)>>>0){xm(c[u>>2]|0,c[v>>2]|0,c[x>>2]|0);break}if((c
[v>>2]|0)>>>0>=(c[y>>2]|0)>>>0){xm(c[u>>2]|0,c[w>>2]|
0,c[x>>2]|0);break}f=c[(c[w>>2]|0)+8>>2]|0;e=c[x>>2]|0;if((b[c[v>>2]>>
;1]|0)==(b[c[w>>2]>>1]|0)){c[e+8>>2]=f;break}else{t=f+(xb((b[e>>1]|0)-(b[c[w>>
2]>>1]|0)|0,(c[(c[v>>2]|0)+8>>2]|0)-(c[(c[w>>2]|0)+8>>2]|0)|0,(b[c[v>>
;2]>>1]|0)-(b[c[w>>2]>>1]|0)|0)|0)|0;c[(c[x>>2]|0)+8>>2]=t;break}}while(0);c[x
>>2]=(c[x>>2]|0)+48}i=A;return}function tm(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;
g=i;i=i+32|0;n=g+20|0;m=g+16|0;k=g+12|0;h=g+8|0;l=g+4|0;j=g;c[n>>2]=a;c[m>>2]=b;c[k>>2]=e;c[h>
;>2]=f;c[l>>2]=(c[(c[h>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+4>>2]|0);c[j>
x3e;2]=um(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,d[(c[k>>2]|0)+12>>0]|0,d[(c[h>>
;2]|0)+12>>0]|0)|0;c[(c[h>>2]|0)+8>>2]=(c[(c[k>>2]|0)+8>>2]|0)+(c[j>>
;2]|0);i=g;return}function um(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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+44|0;k=p+40|0;s=p+36|0;g=p+32|0;r=p+28|0;q=p+24|0;t=p+20|0;h=p+16|0;n=p+12|0;o=p+8|0;j=p+4|0;l=p;c[k>>
2]=a;c[s>>2]=b;c[g>>2]=d;c[r>>2]=e;c[q>>2]=f;c[t>>2]=c[(c[k>>2]|0)+112
>>2];c[h>>2]=(c[t>>2]|0)+40+((c[s>>2]|0)*396|0);c[n>>2]=c[g>>2];c[o
x3e;>2]=0;c[j>>2]=(c[s>>2]|0)==1&1;c[r>>2]=c[r>>2];c[q>>2]=c[q>
x3e;2];if(!(c[(c[k>>2]|0)+108>>2]&4)){c[m>>2]=c[g>>2];t=c[m>>2]|0;i=p;return
t|0}if((c[n>>2]|0)<0){c[n>>2]=0-(c[g>>2]|0);c[o>>2]=1}if(c[j>>2]|0?!(c[(
c[k>>2]|0)+108>>2]&2|0):0)b=9;else b=7;do if((b|0)==7){if((c[j>>2]|0)==0?(c[(c[k>>2
]|0)+108>>2]&1|0)==0:0){b=9;break}c[n>>2]=vm((c[h>>2]|0)+12|0,c[(c[h>>2]|0)+8>
x3e;2]|0,c[n>>2]|0)|0;if(c[j>>2]|0)if((c[n>>2]|0)>=64){c[n>>2]=(c[n>>2]|0
)+16&-64;break}else{c[n>>2]=64;break}g=c[n>>2]|0;if(c[(c[k>>2]|0)+108>>2]&8|0)
if((g|0)<64){c[n>>2]=64;break}else{c[n>>2]=(c[n>>2]|0)+32&-64;break}e=c[n>>2]|
0;if((g|0)<48){c[n>>2]=e+64>>1;break}g=c[n>>2]|0;if((e|0)<128){c[n>>2]=g+22&
;-64;break}else{c[n>>2]=g+32&-64;break}}while(0);do if((b|0)==9){if((c[(c[h>>2]|0)+8>>2]|0)
x3e;>>0>0?(t=(c[n>>2]|0)-(c[(c[h>>2]|0)+12+4>>2]|0)|0,((((c[n>>2]|0)-(c[(
c[h>>2]|0)+12+4>>2]|0)|0)<0?0-t|0:t)|0)<40):0){t=c[(c[h>>2]|0)+12+4>>2]|0;c[n
x3e;>2]=t;c[n>>2]=(c[n>>2]|0)<48?48:t;break}g=c[n>>2]|0;if((c[n>>2]|0)<54
){c[n>>2]=(c[n>>2]|0)+((54-g|0)/2|0);break}if((g|0)<192){c[l>>2]=c[n>>2]&63;c[
n>>2]=c[n>>2]&-64;g=c[l>>2]|0;if((c[l>>2]|0)<10){c[n>>2]=(c[n>
x3e;2]|0)+g;break}if((g|0)<22){c[n>>2]=(c[n>>2]|0)+10;break}g=c[l>>2]|0;if((c[l>>2]|
0)<42){c[n>>2]=(c[n>>2]|0)+g;break}if((g|0)<54){c[n>>2]=(c[n>>2]|0)+54;break}else
{c[n>>2]=(c[n>>2]|0)+(c[l>>2]|0);break}}}while(0);if(c[o>>2]|0)c[n>>2]=0-(c[n
x3e;>2]|0);c[m>>2]=c[n>>2];t=c[m>>2]|0;i=p;return t|0}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,l=0,m=0,n=0,o=0;o=i;i=i+48|0;e=o+32|0;f=o+28|0;m=o+24|0;j=o+20|0;g=o+16|0;n=o+12|0;l=o+8|0;k=o+4|0;h=o;
c[e>>2]=a;c[f>>2]=b;c[m>>2]=d;c[g>>2]=98;c[n>>2]=c[m>>2];c[j>
x3e;2]=0;while(1){if((c[j>>2]|0)>=(c[f>>2]|0))break;c[k>>2]=c[(c[e>>2]|0)+((c[j>
;>2]|0)*12|0)+4>>2];c[h>>2]=(c[m>>2]|0)-(c[k>>2]|0);if((c[h>>2]|0)<0
)c[h>>2]=0-(c[h>>2]|0);if((c[h>>2]|0)<(c[g>>2]|0)){c[g>>2]=c[h>>
;2];c[n>>2]=c[k>>2]}c[j>>2]=(c[j>>2]|0)+1}c[l>>2]=(c[n>>2]|0)+32&
;-64;f=c[m>>2]|0;e=c[l>>2]|0;if((c[m>>2]|0)>=(c[n>>2]|0)){if((f|0)>=(e+48|0)){
n=c[m>>2]|0;i=o;return n|0}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}else{if((f|0)<
;=(e-48|0)){n=c[m>>2]|0;i=o;return n|0}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}return
0}function wm(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,y=0,
z=0;z=i;i=i+80|0;h=z+64|0;u=z+60|0;v=z+56|0;j=z+52|0;k=z+48|0;q=z+44|0;w=z+40|0;p=z+36|0;x=z+32|0;l=z+28|0;m=z+24|0;s=z+20|0;n=z
+16|0;t=z+12|0;y=z+8|0;o=z+4|0;r=z;c[h>>2]=a;c[u>>2]=b;c[v>>2]=e;c[j>>2]=f;c[k>>
;2]=g;c[r>>2]=64;do if(!(c[(c[h>>2]|0)+108>>2]&4)){if((d[(c[u>>2]|0)+12>>
0]|0)&1|0?(d[(c[v>>2]|0)+12>>0]|0)&1|0:0)if((c[k>>2]|0)==1){c[r>>2]=55;break}else
{c[r>>2]=49;break}if((c[k>>2]|0)==1){c[r>>2]=61;break}else{c[r>>2]=59;break}}while(0);c[
q>>2]=(c[(c[v>>2]|0)+4>>2]|0)-(c[(c[u>>2]|0)+4>>2]|0);c[w>>2]=um(c[h
>>2]|0,c[k>>2]|0,c[q>>2]|0,d[(c[u>>2]|0)+12>>0]|0,d[(c[v>>2]|0)+12
x3e;>0]|0)|0;c[p>>2]=(((c[(c[u>>2]|0)+4>>2]|0)+(c[(c[v>>2]|0)+4>>2]|0)|0)/
2|0)+(c[j>>2]|0);c[x>>2]=(c[p>>2]|0)-((c[w>>2]|0)/2|0);c[l>>2]=(c[x>>
;2]|0)+(c[w>>2]|0);c[m>>2]=(c[x>>2]|0)-(c[x>>2]&-64);c[n>>2]=(c[l>
x3e;2]|0)-(c[l>>2]&-64);c[s>>2]=64-(c[m>>2]|0);c[t>>2]=64-(c[n>>2]|0);c[y
>>2]=0;do if(!((c[m>>2]|0)==0|(c[n>>2]|0)==0)){if((c[w>>2]|0)<=(c[r>>2]|0
)){if((c[n>>2]|0)>=(c[w>>2]|0))break;if((c[s>>2]|0)<=(c[n>>2]|0)){c[y>>
;2]=c[s>>2];break}else{c[y>>2]=0-(c[n>>2]|0);break}}if((c[r>>2]|0)<64){if((c[m>
;>2]|0)>=(c[r>>2]|0))break;if((c[s>>2]|0)>=(c[r>>2]|0))break;if((c[n>>2]|
0)>=(c[r>>2]|0))break;if((c[t>>2]|0)>=(c[r>>2]|0))break}c[o>>2]=(c[w>>
;2]|0)%64|0;if((c[o>>2]|0)<32){if((c[s>>2]|0)<=(c[o>>2]|0))break;if((c[n>>2]|0
)<=(c[o>>2]|0))break}else c[o>>2]=64-(c[r>>2]|0);c[m>>2]=(c[r>>2]|0)-(c[s
>>2]|0);c[s>>2]=(c[s>>2]|0)-(c[o>>2]|0);c[t>>2]=(c[r>>2]|0)-(c[n>
;>2]|0);c[n>>2]=(c[n>>2]|0)-(c[o>>2]|0);if((c[m>>2]|0)<=(c[s>>2]|0))
c[s>>2]=0-(c[m>>2]|0);if((c[n>>2]|0)<=(c[t>>2]|0))c[t>>2]=0-(c[n>>
;2]|0);q=c[s>>2]|0;r=c[t>>2]|0;if((((c[s>>2]|0)<0?0-q|0:q)|0)<=(((c[t>>2]|0)
x3c;0?0-r|0:r)|0)){c[y>>2]=c[s>>2];break}else{c[y>>2]=c[t>>2];break}}while(0);do if(!(c[(
c[h>>2]|0)+108>>2]&4)){if((c[y>>2]|0)>14){c[y>>2]=14;break}if((c[y>>
2]|0)<-14)c[y>>2]=-14}while(0);c[x>>2]=(c[x>>2]|0)+(c[y>>2]|0);h=c[x>>2]|
0;if((c[(c[u>>2]|0)+4>>2]|0)<(c[(c[v>>2]|0)+4>>2]|0)){c[(c[u>>2]|0)+8>
;>2]=h;c[(c[v>>2]|0)+8>>2]=(c[x>>2]|0)+(c[w>>2]|0);y=c[y>>2]|0;i=z;return
y|0}else{c[(c[u>>2]|0)+8>>2]=h+(c[w>>2]|0);c[(c[v>>2]|0)+8>>2]=c[x>>
;2];y=c[y>>2]|0;i=z;return y|0}return 0}function xm(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;c[h>>2]=c[h>>2];c[(c[f>>2]|
0)+8>>2]=(c[(c[g>>2]|0)+8>>2]|0)+((c[(c[f>>2]|0)+4>>2]|0)-(c[(c[g>>2
]|0)+4>>2]|0));i=e;return}function ym(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;r=i;i=i+48|
0;g=r+36|0;j=r+32|0;s=r+28|0;h=r+24|0;m=r+20|0;l=r+16|0;q=r+40|0;p=r+12|0;n=r+8|0;k=r+4|0;o=r;c[g>>2]=d;c[j>>
;2]=f;c[s>>2]=(c[g>>2]|0)+48+((c[j>>2]|0)*28|0);c[h>>2]=c[(c[s>>2]|0)+20>
x3e;2];c[m>>2]=(c[h>>2]|0)+((c[(c[s>>2]|0)+12>>2]|0)*48|0);if((c[j>>2]|0)==0?c
[(c[g>>2]|0)+108>>2]&1|0:0)g=1;else if((c[j>>2]|0)==1)g=(c[(c[g>>2]|0)+108>>
;2]&2|0)!=0;else g=0;a[q>>0]=g&1;c[l>>2]=c[h>>2];while(1){if((c[l>>2]|0)>
x3e;>0>=(c[m>>2]|0)>>>0)break;c[p>>2]=c[(c[l>>2]|0)+40>>2];if(a
[q>>0]|0)do{c[n>>2]=c[(c[p>>2]|0)+40>>2];while(1){g=c[(c[l>>2]|0)+8>>
;2]|0;f=c[n>>2]|0;if(!(c[j>>2]|0)){c[f+16>>2]=g;s=c[n>>2]|0;b[s>>1]=e[s>
x3e;1]|64}else{c[f+20>>2]=g;s=c[n>>2]|0;b[s>>1]=e[s>>1]|128}if((c[n>>2]|0)==(c
[(c[p>>2]|0)+44>>2]|0))break;c[n>>2]=c[(c[n>>2]|0)+32>>2]}c[p>>2]=c[(
c[p>>2]|0)+16>>2]}while((c[p>>2]|0)!=(c[(c[l>>2]|0)+40>>2]|0));else{c[k>
x3e;2]=(c[(c[l>>2]|0)+8>>2]|0)-(c[(c[l>>2]|0)+4>>2]|0);do{c[o>>2]=c[(c[p>
x3e;2]|0)+40>>2];while(1){g=c[k>>2]|0;f=c[o>>2]|0;if(!(c[j>>2]|0)){s=f+16|0;c[s>>
;2]=(c[s>>2]|0)+g;s=c[o>>2]|0;b[s>>1]=e[s>>1]|64}else{s=f+20|0;c[s>>2]=(c[s>
;>2]|0)+g;s=c[o>>2]|0;b[s>>1]=e[s>>1]|128}if((c[o>>2]|0)==(c[(c[p>>2]|0)+
44>>2]|0))break;c[o>>2]=c[(c[o>>2]|0)+32>>2]}c[p>>2]=c[(c[p>>2]|0)+16
>>2]}while((c[p>>2]|0)!=(c[(c[l>>2]|0)+40>>2]|0))}c[l>>2]=(c[l>>2]|0
)+48}i=r;return}function zm(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=
jm(c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Am(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;km(c[f>>2]|0,c[e>>2]|0);i=d;return}function Bm(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=mm(c[f>>2]|0,c[e>>2]|0)|0;i=
d;return b|0}function Cm(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
x3e;>2]=b;c[f>>2]=d;b=nm(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return b|0}function Dm
(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;l=g+16|0;k=g+12|0;m=g+8|0;j=g+4|0;h=g;c[l>
;>2]=a;c[k>>2]=b;c[m>>2]=d;c[j>>2]=e;c[h>>2]=f;c[m>>2]=c[m>>2];
b=Em((c[l>>2]|0)+20|0,c[(c[k>>2]|0)+4>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=g;return
b|0}function Em(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;q=i;i=i+64|0;j=q+60|0;k=q+56|0;
f=q+52|0;l=q+48|0;m=q+44|0;n=q+40|0;h=q+36|0;p=q+8|0;o=q+4|0;g=q;c[k>>2]=a;c[f>>2]=b;c[l>>2]=d;c[m
>>2]=e;c[h>>2]=c[(c[f>>2]|0)+88>>2];if(!(c[h>>2]|0)){c[j>>2]=6;p=c[j
>>2]|0;i=q;return p|0};c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[p+16
x3e;>2]=0;c[p+20>>2]=0;c[p+24>>2]=0;c[p>>2]=c[f>>2];c[p+4>>2]=c[(c[h>
;>2]|0)+12+4>>2];c[p+12>>2]=0;c[p+8>>2]=c[(c[h>>2]|0)+12+8>>2];c[p+16>
;>2]=0;c[p+20>>2]=(c[m>>2]|0)>>>16&15;c[p+24>>2]=0;c[n>>2]=Fm(c
[k>>2]|0,c[f>>2]|0)|0;do if((c[n>>2]|0)==0?(c[g>>2]=0,c[n>>2]=Jm(c[(c[k>
x3e;2]|0)+4>>2]|0,c[l>>2]|0,c[g>>2]|0,o)|0,(c[n>>2]|0)==0):0){c[(c[k>>2]|0)+136
>>2]=c[o>>2];f=c[o>>2]|0;if(c[(c[c[o>>2]>>2]|0)+16>>2]|0)Ra[c[(c[f
x3e;>2]|0)+16>>2]&7](c[o>>2]|0,p);else{h=f+4|0;c[h>>2]=c[p>>2];c[h+4>>
;2]=c[p+4>>2];c[h+8>>2]=c[p+8>>2];c[h+12>>2]=c[p+12>>2];c[h+16>>2]=c
[p+16>>2];c[h+20>>2]=c[p+20>>2];c[h+24>>2]=c[p+24>>2]}c[m>>2]=c[m>
;>2]|2049;c[m>>2]=c[m>>2]&-5;if(c[(c[c[o>>2]>>2]|0)+24>>2]|0?(c[n>
;>2]=Ya[c[(c[c[o>>2]>>2]|0)+24>>2]&127]((c[k>>2]|0)+12|0,c[o>>2]|0)|
0,c[n>>2]|0):0)break;c[n>>2]=Km(c[k>>2]|0,p,c[l>>2]|0,c[m>>2]|0,0)|0}while(0);
c[j>>2]=c[n>>2];p=c[j>>2]|0;i=q;return p|0}function Fm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=
i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;c[c[d>>2]>>2]=c[e>
;>2];c[(c[d>>2]|0)+4>>2]=c[(c[e>>2]|0)+116>>2];dc(c[(c[d>>2]|0)+8>
x3e;2]|0);if(c[(c[d>>2]|0)+4>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[f>>2]=Gm(c[e>>
;2]|0,(c[d>>2]|0)+4|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[(c[e>>2]|0)+116>
;>2]=c[(c[d>>2]|0)+4>>2];c[(c[e>>2]|0)+116+4>>2]=35;a=c[f>>2]|0;i=g;return
a|0}function Gm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;e=h+12|0;f=h+8|0;j=h+4|0;g=h;c[d>>
2]=a;c[e>>2]=b;c[g>>2]=0;c[j>>2]=c[(c[d>>2]|0)+100>>2];c[g>>2]=bc(c[
j>>2]|0,28+(c[(c[d>>2]|0)+16>>2]|0)|0,f)|0;if((c[f>>2]|0)==0?(c[c[g>>2]>
x3e;2]=c[d>>2],c[(c[g>>2]|0)+4>>2]=c[(c[d>>2]|0)+16>>2],c[(c[g>>2]|0
)+8>>2]=(c[g>>2]|0)+28,c[f>>2]=Hm(c[g>>2]|0)|0,c[f>>2]|0):0){Im(c[g>>
;2]|0);c[g>>2]=0}c[c[e>>2]>>2]=c[g>>2];i=h;return c[f>>2]|0}function Hm(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;s=i;i=i+64|0;e=s+48|0;h=s+44|0;j=s+40|0;p=s+36|0;m=s+32|0;r=s+28|
0;n=s+24|0;g=s+20|0;q=s+16|0;f=s+12|0;k=s+8|0;l=s+4|0;o=s;c[e>>2]=b;c[h>>2]=0;c[j>>2]=c[c[e>
x3e;2]>>2];c[p>>2]=c[(c[j>>2]|0)+92>>2];c[m>>2]=c[(c[e>>2]|0)+8>
;>2];Ns(c[(c[e>>2]|0)+8>>2]|0,127,c[(c[e>>2]|0)+4>>2]|0)|0;c[h>>2]=Id(c[j
>>2]|0,1970170211)|0;a:do if(c[h>>2]|0)c[h>>2]=0;else{c[r>>2]=0;while(1){if(!(c[3900+(c[
r>>2]<<2)>>2]|0))break;c[g>>2]=c[3900+(c[r>>2]<<2)>>2];b:do
if(c[(c[g>>2]|0)+4>>2]|0){c[q>>2]=c[(c[g>>2]|0)+4>>2];while(1){if(!(c[c[q>
;>2]>>2]|0))break b;c[f>>2]=c[c[q>>2]>>2];c[k>>2]=Dc(c[j>>2]|0,
c[f>>2]|0)|0;if((c[k>>2]|0?(c[k>>2]|0)>>>0<(c[(c[e>>2]|0)+4>>
;2]|0)>>>0:0)?(d[(c[m>>2]|0)+(c[k>>2]|0)>>0]|0|0)==127:0)a[(c[m>>2]|0)+(c
[k>>2]|0)>>0]=c[r>>2];while(1){c[f>>2]=Md(c[j>>2]|0,c[f>>2]|0,k)|0;if
(!(c[k>>2]|0))break;if((c[f>>2]|0)>>>0>(c[(c[q>>2]|0)+4>>2]|0)>
x3e;>0)break;if((c[k>>2]|0)>>>0>=(c[(c[e>>2]|0)+4>>2]|0)>>>
;0)continue;if((d[(c[m>>2]|0)+(c[k>>2]|0)>>0]|0|0)!=127)continue;a[(c[m>>2]|0)+(c[k>
;>2]|0)>>0]=c[r>>2]}c[q>>2]=(c[q>>2]|0)+8}}while(0);c[r>>2]=(c[r>>
;2]|0)+1}c[n>>2]=48;while(1){if((c[n>>2]|0)>>>0>57)break a;c[l>>2]=Dc(c[j>
;>2]|0,c[n>>2]|0)|0;if(c[l>>2]|0?(c[l>>2]|0)>>>0<(c[(c[e>>2]|0)+
4>>2]|0)>>>0:0){r=(c[m>>2]|0)+(c[l>>2]|0)|0;a[r>>0]=d[r>>0]|0|128
}c[n>>2]=(c[n>>2]|0)+1}}while(0);c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[e>
x3e;2]|0)+4>>2]|0))break;if(((d[(c[m>>2]|0)+(c[o>>2]|0)>>0]|0)&-129|0)==127){r=(c[m
>>2]|0)+(c[o>>2]|0)|0;a[r>>0]=(d[r>>0]|0)&-128;r=(c[m>>2]|0)+(c[o>
x3e;2]|0)|0;a[r>>0]=d[r>>0]|0|2}c[o>>2]=(c[o>>2]|0)+1}Jd(c[j>>2]|0,c[p>
x3e;2]|0)|0;i=s;return c[h>>2]|0}function Im(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;f=g+4|0;d=
g;c[b>>2]=a;if(!(c[b>>2]|0)){i=g;return}c[e>>2]=c[(c[c[b>>2]>>2]|0)+100>
x3e;2];c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=4)break;if(c[(c[b>>2]|0)+12+(c[f
>>2]<<2)>>2]|0){c[d>>2]=c[3900+(c[f>>2]<<2)>>2];if(c[(c[d
x3e;>2]|0)+20>>2]|0)Va[c[(c[d>>2]|0)+20>>2]&63](c[(c[b>>2]|0)+12+(c[f>>
;2]<<2)>>2]|0);Fb(c[e>>2]|0,c[(c[b>>2]|0)+12+(c[f>>2]<<2)>>
;2]|0);c[(c[b>>2]|0)+12+(c[f>>2]<<2)>>2]=0}c[f>>2]=(c[f>>2]|0)+1}c[(
c[b>>2]|0)+4>>2]=0;c[(c[b>>2]|0)+8>>2]=0;c[c[b>>2]>>2]=0;Fb(c[e>
;>2]|0,c[b>>2]|0);c[b>>2]=0;i=g;return}function Jm(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;q=i;i=i+48|0;g=q+40|0;h=q+36|0;r=q+32|0;j=q+28|0;o=q+24|0;m=q+20|0;k=q+16|0;p=q+12|0;l=q+4|0;n=q;c[
g>>2]=a;c[h>>2]=b;c[r>>2]=e;c[j>>2]=f;c[o>>2]=0;c[p>>2]=c[r>>
;2]&15;c[q+8>>2]=5;c[l>>2]=0;if((c[h>>2]|0)>>>0>=(c[(c[g>>2]|0)+
4>>2]|0)>>>0){c[l>>2]=6;p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l
>>2]|0;i=q;return r|0}c[m>>2]=c[p>>2];if(!((c[m>>2]|0)!=0?((c[m>>2]|0)+1|0)>
;>>0<5:0))c[m>>2]=(d[(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]|0)>>0]|0)
x26;127;c[k>>2]=c[3900+(c[m>>2]<<2)>>2];if(!(c[p>>2]|0))c[p>>2]=c[c[
k>>2]>>2];c[o>>2]=c[(c[g>>2]|0)+12+(c[c[k>>2]>>2]<<2)>
;>2];if(c[o>>2]|0){p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l>>2]|0;i=q;return
r|0}c[n>>2]=c[(c[c[g>>2]>>2]|0)+100>>2];c[o>>2]=bc(c[n>>2]|0,c[(c[k
>>2]|0)+8>>2]|0,l)|0;if(c[l>>2]|0){p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p
;r=c[l>>2]|0;i=q;return r|0}c[c[o>>2]>>2]=c[k>>2];if(c[(c[k>>2]|0)+12>>
;2]|0?(c[l>>2]=Ya[c[(c[k>>2]|0)+12>>2]&127](c[o>>2]|0,c[c[g>>2]>>
;2]|0)|0,c[l>>2]|0):0){if(c[(c[k>>2]|0)+20>>2]|0)Va[c[(c[k>>2]|0)+20>>2]&
63](c[o>>2]|0);Fb(c[n>>2]|0,c[o>>2]|0);c[o>>2]=0;p=c[o>>2]|0;r=c[j>>
2]|0;c[r>>2]=p;r=c[l>>2]|0;i=q;return r|0}c[(c[g>>2]|0)+12+(c[c[k>>2]>>2]<
;<2)>>2]=c[o>>2];p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l>>2]|0;
i=q;return r|0}function Km(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;da=i;i=i+240|0;S=da+236|0;T=da+232|0;U=da+228|0;y=da+224|0;V=da+220|0;X=da+216|0;ea=da+212|0;Y=da+208|0;$=da+204|0;
Z=da+200|0;aa=da+196|0;_=da+192|0;l=da+176|0;r=da+168|0;q=da+164|0;p=da+160|0;u=da+156|0;x=da+152|0;m=da+148|0;n=da+144|0;o=da+140
|0;s=da+136|0;v=da+132|0;t=da+128|0;w=da+124|0;E=da+120|0;J=da+116|0;G=da+112|0;O=da+108|0;P=da+104|0;M=da+96|0;N=da+88|0;Q=da+84
|0;R=da+80|0;I=da+76|0;H=da+72|0;F=da+68|0;z=da+64|0;D=da+60|0;B=da+56|0;C=da+52|0;K=da+48|0;L=da+44|0;A=da+24|0;W=da+8|0;ba=da;
c[S>>2]=f;c[T>>2]=g;c[U>>2]=h;c[y>>2]=j;c[V>>2]=k;c[ea>>2]=c[c[S>
;>2]>>2];c[Y>>2]=c[(c[S>>2]|0)+8>>2];c[$>>2]=c[(c[S>>2]|0)+136
x3e;>2];c[Z>>2]=(c[S>>2]|0)+12;c[aa>>2]=c[(c[ea>>2]|0)+84>>2];c[_>
x3e;2]=c[(c[aa>>2]|0)+156>>2];c[X>>2]=Cb(c[ea>>2]|0,c[U>>2]|0,c[y>>2
]|0)|0;if(c[X>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}a[(c[S>>2]|0)+140>>0]=a[(c[_>>
;2]|0)+8>>0]|0;if(a[(c[S>>2]|0)+140>>0]|0){ea=(c[S>>2]|0)+144|0;g=(c[_>>2]|0)+
12|0;c[ea>>2]=c[g>>2];c[ea+4>>2]=c[g+4>>2];c[ea+8>>2]=c[g+8>>2];c[ea
+12>>2]=c[g+12>>2];ea=(c[S>>2]|0)+160|0;g=(c[_>>2]|0)+28|0;c[ea>>2]=c[g>
x3e;2];c[ea+4>>2]=c[g+4>>2];ea=(c[S>>2]|0)+144|0;c[l>>2]=c[ea>>2];c[l+4>
x3e;2]=c[ea+4>>2];c[l+8>>2]=c[ea+8>>2];c[l+12>>2]=c[ea+12>>2];Wb(l)|0;Lb((c[S
x3e;>2]|0)+160|0,l)}c[(c[aa>>2]|0)+56>>2]=c[(c[aa>>2]|0)+24+16>>2];c[(c[aa>>
;2]|0)+60>>2]=c[(c[aa>>2]|0)+24+28>>2];k=c[(c[aa>>2]|0)+72>>2]|0;a:do if((k|0)
x3e;=1869968492){switch(k|0){case 1869968492:break;default:{ca=49;break a}}if(a[(c[S>>2]|0)+140>>0]|0)Nb((c[
aa>>2]|0)+108|0,c[(c[S>>2]|0)+160>>2]|0,c[(c[S>>2]|0)+160+4>>2]|0);if(((b[(c[aa
>>2]|0)+108+2>>1]|0)+4|0)!=0?((b[(c[Y>>2]|0)+20+2>>1]|0)+(b[(c[Y>>2]|0)+56+2
x3e;>1]|0)+((b[(c[aa>>2]|0)+108+2>>1]|0)+4)|0)>>>0>(c[(c[Y>>2]|0)+4>
x3e;2]|0)>>>0:0)ca=11;else if((b[(c[aa>>2]|0)+108>>1]|0)!=0?((b[(c[Y>>2]|0)+20>
;>1]|0)+(b[(c[Y>>2]|0)+56>>1]|0)+(b[(c[aa>>2]|0)+108>>1]|0)|0)>>>0
x3e;(c[(c[Y>>2]|0)+8>>2]|0)>>>0:0)ca=11;else k=0;if((ca|0)==11)k=kc(c[Y>>2]|0,(b[(c
[aa>>2]|0)+108+2>>1]|0)+4|0,b[(c[aa>>2]|0)+108>>1]|0)|0;c[X>>2]=k;if(c[X>
x3e;2]|0){ea=c[X>>2]|0;i=da;return ea|0}Ss(c[(c[Y>>2]|0)+56+4>>2]|0,c[(c[aa>>2]|0)+108+4
>>2]|0,b[(c[aa>>2]|0)+108+2>>1]<<3|0)|0;Ss(c[(c[Y>>2]|0)+56+12>>2]|0
,c[(c[aa>>2]|0)+108+12>>2]|0,b[(c[aa>>2]|0)+108>>1]<<1|0)|0;Ss(c[(c[Y>>
;2]|0)+56+8>>2]|0,c[(c[aa>>2]|0)+108+8>>2]|0,b[(c[aa>>2]|0)+108+2>>1]|0)|0;b[(
c[Y>>2]|0)+56+2>>1]=b[(c[aa>>2]|0)+108+2>>1]|0;b[(c[Y>>2]|0)+56>>1]=
b[(c[aa>>2]|0)+108>>1]|0;c[(c[S>>2]|0)+168>>2]=c[(c[Z>>2]|0)+8>>2];c
[(c[S>>2]|0)+168+4>>2]=c[(c[Z>>2]|0)+16>>2];ea=Mb(c[(c[aa>>2]|0)+24+16>
x3e;2]|0,c[(c[Z>>2]|0)+4>>2]|0)|0;c[(c[S>>2]|0)+176>>2]=ea+(c[(c[Z>>2]|0)+8>
;>2]|0);c[(c[S>>2]|0)+176+4>>2]=c[(c[Z>>2]|0)+16>>2];if(b[(c[aa>>2]|0)+108
+2>>1]|0){if(c[(c[c[$>>2]>>2]|0)+28>>2]|0)Oa[c[(c[c[$>>2]>>2]|0)+28
x3e;>2]&63](c[Z>>2]|0,(c[Y>>2]|0)+56|0,c[$>>2]|0)|0;do if((c[(c[T>>2]|0)+20>
;>2]|0)!=1){c[m>>2]=(c[Z>>2]|0)+48;c[n>>2]=c[(c[m>>2]|0)+20>>2];c[o>
x3e;2]=(c[n>>2]|0)+((c[(c[m>>2]|0)+12>>2]|0)*48|0)+-48;if((c[(c[m>>2]|0)+12>>2
]|0)>1?(c[(c[Z>>2]|0)+104>>2]&4|0)==0:0){c[r>>2]=(c[(c[S>>2]|0)+176>>
;2]|0)-(c[(c[o>>2]|0)+4>>2]|0);c[q>>2]=c[(c[n>>2]|0)+4>>2];c[p>>2]=c
[(c[n>>2]|0)+8>>2];c[u>>2]=(c[p>>2]|0)-(c[q>>2]|0);c[x>>2]=(c[(c[o
x3e;>2]|0)+8>>2]|0)+(c[r>>2]|0);if((c[q>>2]|0)<24)c[u>>2]=(c[u>>2]|0
)-8;if((c[r>>2]|0)<24)c[x>>2]=(c[x>>2]|0)+8;c[(c[S>>2]|0)+168>>2]=(c[u>
;>2]|0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[x>>2]|0)+32&-64;if((c[q>>2]|0)>
;0?(c[(c[S>>2]|0)+168>>2]|0)>=(c[p>>2]|0):0){ea=(c[S>>2]|0)+168|0;c[ea>>2
]=(c[ea>>2]|0)-64}if((c[r>>2]|0)>0?(c[(c[S>>2]|0)+176>>2]|0)<=(c[(c[o>>
;2]|0)+8>>2]|0):0){ea=(c[S>>2]|0)+176|0;c[ea>>2]=(c[ea>>2]|0)+64}c[(c[aa>>2]|0
)+144>>2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[u>>2]|0);c[(c[aa>>2]|0)+148>>
2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[x>>2]|0);break}c[s>>2]=c[(c[S>>2]|0)+168>
x3e;2];c[v>>2]=c[(c[S>>2]|0)+176>>2];c[(c[S>>2]|0)+168>>2]=(c[s>>2]|
0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[v>>2]|0)+32&-64;c[(c[aa>>2]|0)+144>>
;2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[s>>2]|0);c[(c[aa>>2]|0)+148>>2]=(c[(c[S>
x3e;2]|0)+176>>2]|0)-(c[v>>2]|0)}else{c[t>>2]=c[(c[S>>2]|0)+168>>2];c[w>
x3e;2]=c[(c[S>>2]|0)+176>>2];c[(c[S>>2]|0)+168>>2]=(c[t>>2]|0)+(c[(c[Z>
x3e;2]|0)+116>>2]|0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[w>>2]|0)+(c[(c[Z>>2]|
0)+120>>2]|0)+32&-64;c[(c[aa>>2]|0)+144>>2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[
t>>2]|0);c[(c[aa>>2]|0)+148>>2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[w>>2]|0
)}while(0);oc(c[Y>>2]|0)}}else{switch(k|0){case 1668246896:break;default:{ca=49;break a}}c[J>>2]=c[(c[aa>
;>2]|0)+128>>2];c[O>>2]=b[(c[Y>>2]|0)+20+2>>1];c[X>>2]=lc(c[Y>>
2]|0,c[J>>2]|0)|0;if(c[X>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}Ss(c[(c[Y>>2]|0)+56+32>
;>2]|0,c[(c[aa>>2]|0)+132>>2]|0,c[J>>2]<<5|0)|0;c[(c[Y>>2]|0)+56+28>
x3e;2]=c[J>>2];c[G>>2]=c[(c[Y>>2]|0)+20+28>>2];c[E>>2]=0;while(1){if((c[E>
;>2]|0)>>>0>=(c[J>>2]|0)>>>0)break a;c[P>>2]=(c[(c[Y>>2]|0
)+20+32>>2]|0)+(c[G>>2]<<5)+(c[E>>2]<<5);ea=(c[S>>2]|0)+168|0;c[M>
;>2]=c[ea>>2];c[M+4>>2]=c[ea+4>>2];ea=(c[S>>2]|0)+176|0;c[N>>2]=c[ea>
;>2];c[N+4>>2]=c[ea+4>>2];c[F>>2]=b[(c[Y>>2]|0)+20+2>>1];c[X>>2
]=Km(c[S>>2]|0,c[T>>2]|0,c[c[P>>2]>>2]|0,c[y>>2]|0,(c[V>>2]|0)+1|0)|
0;if(c[X>>2]|0){ca=63;break}c[P>>2]=(c[(c[Y>>2]|0)+20+32>>2]|0)+(c[G>>2]<
x3c;5)+(c[E>>2]<<5);k=(c[S>>2]|0)+168|0;if(e[(c[P>>2]|0)+4>>1]&512|0){c[M
>>2]=c[k>>2];c[M+4>>2]=c[k+4>>2];ea=(c[S>>2]|0)+176|0;c[N>>2]=c[ea
x3e;>2];c[N+4>>2]=c[ea+4>>2]}else{c[k>>2]=c[M>>2];c[k+4>>2]=c[M+4>
x3e;2];ea=(c[S>>2]|0)+176|0;c[ea>>2]=c[N>>2];c[ea+4>>2]=c[N+4>>2]}c[I>>
;2]=b[(c[Y>>2]|0)+20+2>>1];c[H>>2]=(c[I>>2]|0)-(c[F>>2]|0);b:do if(e[(c[P>
;>2]|0)+4>>1]&200|0){c[z>>2]=(c[(c[Y>>2]|0)+20+4>>2]|0)+(c[F>>2]<
;<3);c[D>>2]=(c[z>>2]|0)+(c[H>>2]<<3);while(1){if((c[z>>2]|0)>>
x3e;0>=(c[D>>2]|0)>>>0)break b;Lb(c[z>>2]|0,(c[P>>2]|0)+16|0);c[z>>2
]=(c[z>>2]|0)+8}}while(0);k=c[(c[P>>2]|0)+8>>2]|0;if(e[(c[P>>2]|0)+4>>1]&
2|0){ea=Mb(k,c[(c[Z>>2]|0)+4>>2]|0)|0;c[Q>>2]=ea+(c[(c[Z>>2]|0)+8>>2]|0);ea=Mb
(c[(c[P>>2]|0)+12>>2]|0,c[(c[Z>>2]|0)+12>>2]|0)|0;c[R>>2]=ea+(c[(c[Z>>
;2]|0)+16>>2]|0);c[Q>>2]=(c[Q>>2]|0)+32&-64;c[R>>2]=(c[R>>2]|0)+32&-
64}else{c[B>>2]=k;c[C>>2]=c[(c[P>>2]|0)+12>>2];if(((c[O>>2]|0)+(c[B>>
;2]|0)|0)>>>0>=(c[F>>2]|0)>>>0)break;if((c[C>>2]|0)>>>0>
;=(c[H>>2]|0)>>>0)break;c[C>>2]=(c[C>>2]|0)+(c[F>>2]|0);c[K>>2]=(
c[(c[Y>>2]|0)+20+4>>2]|0)+(c[O>>2]<<3)+(c[B>>2]<<3);c[L>>2
]=(c[(c[Y>>2]|0)+20+4>>2]|0)+(c[O>>2]<<3)+(c[C>>2]<<3);c[Q>>
;2]=(c[c[K>>2]>>2]|0)-(c[c[L>>2]>>2]|0);c[R>>2]=(c[(c[K>>2]|0)+4>
;>2]|0)-(c[(c[L>>2]|0)+4>>2]|0)}ea=(c[Y>>2]|0)+20|0;c[A>>2]=c[ea>>2];c[A+
4>>2]=c[ea+4>>2];c[A+8>>2]=c[ea+8>>2];c[A+12>>2]=c[ea+12>>2];c[A+16
x3e;>2]=c[ea+16>>2];ea=A+4|0;c[ea>>2]=(c[ea>>2]|0)+(c[F>>2]<<3);b[A+2>
;>1]=c[H>>2];Nb(A,c[Q>>2]|0,c[R>>2]|0);c[E>>2]=(c[E>>2]|0)+1}if((ca|0)==63
){ea=c[X>>2]|0;i=da;return ea|0}c[X>>2]=21;ea=c[X>>2]|0;i=da;return ea|0}while(0);if((ca|0)==49)c[
X>>2]=7;if(c[V>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}c[ba>>2]=(c[(c[aa>>2]|0)+24
+20>>2]|0)-(c[(c[aa>>2]|0)+24+8>>2]|0);c[ba+4>>2]=(c[(c[aa>>2]|0)+24+24>
x3e;2]|0)-(c[(c[aa>>2]|0)+24+12>>2]|0);c[ba>>2]=Mb(c[ba>>2]|0,c[(c[$>>2]|0)+4+
4>>2]|0)|0;c[ba+4>>2]=Mb(c[ba+4>>2]|0,c[(c[$>>2]|0)+4+8>>2]|0)|0;if(a[(c[S>
;>2]|0)+140>>0]|0){Kb((c[Y>>2]|0)+20|0,(c[S>>2]|0)+144|0);Lb(ba,(c[S>>2]|0)+144|0)}
if(c[(c[S>>2]|0)+168>>2]|0)Nb((c[Y>>2]|0)+20|0,0-(c[(c[S>>2]|0)+168>>2]|0)|0,0
);_d((c[Y>>2]|0)+20|0,W);c[W>>2]=c[W>>2]&-64;c[W+4>>2]=c[W+4>>2]&-64
;c[W+8>>2]=(c[W+8>>2]|0)+63&-64;c[W+12>>2]=(c[W+12>>2]|0)+63&-64;c[(c[aa>
x3e;2]|0)+24>>2]=(c[W+8>>2]|0)-(c[W>>2]|0);c[(c[aa>>2]|0)+24+4>>2]=(c[W+12>
;>2]|0)-(c[W+4>>2]|0);c[(c[aa>>2]|0)+24+8>>2]=c[W>>2];c[(c[aa>>2]|0)+24+12
>>2]=c[W+12>>2];c[(c[aa>>2]|0)+24+20>>2]=(c[W>>2]|0)+(c[ba>>2]|0)&
;-64;c[(c[aa>>2]|0)+24+24>>2]=(c[W+12>>2]|0)+(c[ba+4>>2]|0)&-64;do if(!(c[(c[(c[aa
x3e;>2]|0)+4>>2]|0)+8>>2]&4|0)){if((Lm(c[(c[S>>2]|0)+4>>2]|0,c[U>>2]|
0)|0)&255|0?d[(c[$>>2]|0)+32>>0]|0:0){ca=58;break}if(c[(c[aa>>2]|0)+24+16>>2]|0)c[(
c[aa>>2]|0)+24+16>>2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[(c[S>>2]|0)+168>>
2]|0)}else ca=58;while(0);if((ca|0)==58){ea=Mb(c[(c[aa>>2]|0)+24+16>>2]|0,c[(c[$>>2]|0)+4+4>
x3e;2]|0)|0;c[(c[aa>>2]|0)+24+16>>2]=ea;c[(c[aa>>2]|0)+144>>2]=0;c[(c[aa>>2]|0
)+148>>2]=0}ea=Mb(c[(c[aa>>2]|0)+24+28>>2]|0,c[(c[$>>2]|0)+4+8>>2]|0)|0;c[(c[aa
>>2]|0)+24+28>>2]=ea;c[(c[aa>>2]|0)+24+16>>2]=(c[(c[aa>>2]|0)+24+16>>
;2]|0)+32&-64;c[(c[aa>>2]|0)+24+28>>2]=(c[(c[aa>>2]|0)+24+28>>2]|0)+32&-64;dc(
c[c[_>>2]>>2]|0);c[X>>2]=pc(c[c[_>>2]>>2]|0,c[Y>>2]|0)|0;if(c[X>
;>2]|0){ea=c[X>>2]|0;i=da;return ea|0}ea=(c[aa>>2]|0)+108|0;ca=(c[c[_>>2]>>2]|0)+20
|0;c[ea>>2]=c[ca>>2];c[ea+4>>2]=c[ca+4>>2];c[ea+8>>2]=c[ca+8>>2];c[ea
+12>>2]=c[ca+12>>2];c[ea+16>>2]=c[ca+16>>2];c[(c[aa>>2]|0)+72>>2]=1869968492
;ea=c[X>>2]|0;i=da;return ea|0}function Lm(b,e){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[g
x3e;>2]=b;c[h>>2]=e;if((c[h>>2]|0)>>>0<(c[(c[g>>2]|0)+4>>2]|0)
x3e;>>0){a[f>>0]=(d[(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]|0)>>0]|0)&
128;b=a[f>>0]|0;i=j;return b|0}else{a[f>>0]=0;b=a[f>>0]|0;i=j;return b|0}return 0}function Mm(a){a
=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Nm((c[d>>2]|0)+20|0,c[c[(c[d>>2]|0)+4>>2]
x3e;>2]|0)|0;i=b;return a|0}function Nm(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
x3e;>2]=b;Ns(c[e>>2]|0,0,184)|0;Hl((c[e>>2]|0)+12|0,c[f>>2]|0);b=ac(c[f>>2]|0,(c[e
x3e;>2]|0)+8|0)|0;i=d;return b|0}function Om(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Pm((c[d>>2
]|0)+20|0);i=b;return}function Pm(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Ol((c[d>>2]|0)+12|0);c[c[d
>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;fc(c[(c[d>>2]|0)+8>>2]|0);c[(c[d>
;>2]|0)+8>>2]=0;i=b;return}function Qm(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
x3e;>2]|0)+108|0}function Rm(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)+120
|0}function Sm(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)+148|0}function Tm(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]=c[(c[d>>2]|0)+8>
x3e;2];c[e>>2]=(c[d>>2]|0)+20;Um((c[d>>2]|0)+20|0,c[f>>2]|0)|0;Vm((c[d>>2]|0)+
108|0);bn((c[d>>2]|0)+120|0);c[(c[d>>2]|0)+120>>2]=c[e>>2];ao((c[d>>2]|0)+148|
0);c[(c[d>>2]|0)+148>>2]=c[e>>2];i=b;return 0}function Um(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i
+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;a=c[d>>2]|0;b=a+88|0;do{c[a>>2]=0;a=a+4|0}while((a
|0)<(b|0));c[c[d>>2]>>2]=c[e>>2];i=f;return 0}function Vm(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]=45;c[(c[d>>2]|0)+4>>2]=24;c[(c[d>>2]|0)+8
>>2]=36;i=b;return}function Wm(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;t=i;i=i+48
|0;h=t+40|0;j=t+36|0;k=t+32|0;p=t+28|0;o=t+24|0;l=t+20|0;q=t+16|0;m=t+12|0;r=t+8|0;n=t+4|0;s=t;c[h>>2]=a;c[j>>
;2]=f;c[k>>2]=g;c[p>>2]=0;c[p>>2]=bc(c[h>>2]|0,2496,o)|0;if(c[o>>2]|0){r=c[p
x3e;>2]|0;s=c[k>>2]|0;c[s>>2]=r;s=c[o>>2]|0;i=t;return s|0}c[c[p>>2]>>2]=
c[h>>2];c[m>>2]=(c[p>>2]|0)+4+204;c[r>>2]=(c[m>>2]|0)+4;c[c[r>>2]>
;>2]=e[(c[j>>2]|0)+120>>1];c[r>>2]=(c[r>>2]|0)+12;c[q>>2]=(c[j>>
;2]|0)+128;c[l>>2]=d[(c[j>>2]|0)+124>>0];while(1){if((c[l>>2]|0)>>>0<
;=0)break;c[c[r>>2]>>2]=b[c[q>>2]>>1];c[r>>2]=(c[r>>2]|0)+12;c[q>
;>2]=(c[q>>2]|0)+2;c[l>>2]=(c[l>>2]|0)+-1}c[c[m>>2]>>2]=(d[(c[j>>
;2]|0)+124>>0]|0)+1;c[n>>2]=(c[p>>2]|0)+4;c[s>>2]=(c[n>>2]|0)+4;c[c[s>>
;2]>>2]=e[(c[j>>2]|0)+122>>1];c[s>>2]=(c[s>>2]|0)+12;c[q>>2]=(c[j>
;>2]|0)+154;c[l>>2]=d[(c[j>>2]|0)+125>>0];while(1){if((c[l>>2]|0)>>>
0<=0)break;c[c[s>>2]>>2]=b[c[q>>2]>>1];c[s>>2]=(c[s>>2]|0)+12;c
[q>>2]=(c[q>>2]|0)+2;c[l>>2]=(c[l>>2]|0)+-1}c[c[n>>2]>>2]=(d[(c[j>
;>2]|0)+125>>0]|0)+1;Xm((c[p>>2]|0)+412|0,d[(c[j>>2]|0)+8>>0]|0,(c[j>>2]|
0)+12|0,d[(c[j>>2]|0)+9>>0]|0,(c[j>>2]|0)+40|0,c[(c[j>>2]|0)+116>>2]|0,0);Xm((
c[p>>2]|0)+412|0,d[(c[j>>2]|0)+10>>0]|0,(c[j>>2]|0)+60|0,d[(c[j>>2]|0)+11>
;>0]|0,(c[j>>2]|0)+88|0,c[(c[j>>2]|0)+116>>2]|0,1);c[(c[p>>2]|0)+412+2064>>
;2]=c[(c[j>>2]|0)+108>>2];c[(c[p>>2]|0)+412+2068>>2]=c[(c[j>>2]|0)+112>
x3e;2];c[(c[p>>2]|0)+412+2076>>2]=c[(c[j>>2]|0)+116>>2];c[(c[p>>2]|0)+4+196>
;>2]=0;c[(c[p>>2]|0)+4+200>>2]=0;c[(c[p>>2]|0)+4+204+196>>2]=0;c[(c[p>>2]|
0)+4+204+200>>2]=0;r=c[p>>2]|0;s=c[k>>2]|0;c[s>>2]=r;s=c[o>>2]|0;i=t;return s|
0}function Xm(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;C=i;i=i+80|0;j=C+76|0;t=C+72|0;k=C+68|0;l=C+64|0;m=C+60|0;u=C+56|0;D=C+52|0;q=C+48|0;w=C+44|0;n=C
+40|0;x=C+36|0;r=C+32|0;o=C+28|0;s=C+24|0;p=C+20|0;z=C+16|0;A=C+12|0;v=C+8|0;y=C+4|0;B=C;c[j>>2]=a;c[t>>2]=b
;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[u>>2]=g;c[D>>2]=h;d=c[j>>2]|0;if(c[
D>>2]|0){c[q>>2]=d+1032;c[w>>2]=(c[j>>2]|0)+1548}else{c[q>>2]=d;c[w>>
;2]=(c[j>>2]|0)+516}c[c[q>>2]>>2]=0;c[c[w>>2]>>2]=0;Ym(c[j>>2]|0,0,c
[t>>2]|0,c[k>>2]|0,c[q>>2]|0,c[w>>2]|0);Ym(c[j>>2]|0,1,c[l>>2]|0,c[m
>>2]|0,c[q>>2]|0,c[w>>2]|0);c[n>>2]=c[c[q>>2]>>2];c[x>>2]=
c[c[w>>2]>>2];a:do if((c[n>>2]|0)>0){c[r>>2]=(c[q>>2]|0)+4;c[t>>
;2]=c[n>>2];while(1){if((c[t>>2]|0)>>>0<=0)break a;if((c[t>>2]|0)>>
x3e;0>1?(c[o>>2]=(c[(c[r>>2]|0)+32>>2]|0)-(c[c[r>>2]>>2]|0),(c[(c[r>
x3e;2]|0)+4>>2]|0)>(c[o>>2]|0)):0)c[(c[r>>2]|0)+4>>2]=c[o>>2];c[(c[r>
;>2]|0)+12>>2]=c[c[r>>2]>>2];c[(c[r>>2]|0)+8>>2]=(c[(c[r>>2]|0)+
4>>2]|0)+(c[c[r>>2]>>2]|0);c[t>>2]=(c[t>>2]|0)+-1;c[r>>2]=(c[r>
x3e;2]|0)+32}}while(0);b:do if((c[x>>2]|0)>0){c[s>>2]=(c[w>>2]|0)+4;c[t>>2]=c[x>
;>2];while(1){if((c[t>>2]|0)>>>0<=0)break b;if((c[t>>2]|0)>>>0>
1?(c[p>>2]=(c[c[s>>2]>>2]|0)-(c[(c[s>>2]|0)+32>>2]|0),(c[(c[s>>2]|0)+
4>>2]|0)<(c[p>>2]|0)):0)c[(c[s>>2]|0)+4>>2]=c[p>>2];c[(c[s>>2]|
0)+8>>2]=c[c[s>>2]>>2];c[(c[s>>2]|0)+12>>2]=(c[(c[s>>2]|0)+4>
x3e;2]|0)+(c[c[s>>2]>>2]|0);c[t>>2]=(c[t>>2]|0)+-1;c[s>>2]=(c[s>>2]|
0)+32}}while(0);c[B>>2]=(c[q>>2]|0)+4;c[t>>2]=c[n>>2];c[z>>2]=1;while(1){if((c
[z>>2]|0)<0)break;if((c[t>>2]|0)>>>0>0){D=(c[B>>2]|0)+12|0;c[D>>
;2]=(c[D>>2]|0)-(c[u>>2]|0);c[A>>2]=c[(c[B>>2]|0)+8>>2];c[t>>2]=(c[t
>>2]|0)+-1;while(1){if((c[t>>2]|0)>>>0<=0)break;c[v>>2]=c[(c[B>>2]|0
)+32+12>>2];c[y>>2]=(c[v>>2]|0)-(c[A>>2]|0);d=c[A>>2]|0;if((c[y>>2]|
0)<(c[u>>2]<<1|0)){D=d+((c[y>>2]|0)/2|0)|0;c[(c[B>>2]|0)+32+12>>2]=D;c[(c
[B>>2]|0)+8>>2]=D}else{c[(c[B>>2]|0)+8>>2]=d+(c[u>>2]|0);c[(c[B>>2]|
0)+32+12>>2]=(c[v>>2]|0)-(c[u>>2]|0)}c[B>>2]=(c[B>>2]|0)+32;c[A>>2]=
c[(c[B>>2]|0)+8>>2];c[t>>2]=(c[t>>2]|0)+-1}c[(c[B>>2]|0)+8>>2]=(c[A
x3e;>2]|0)+(c[u>>2]|0)}c[B>>2]=(c[w>>2]|0)+4;c[t>>2]=c[x>>2];c[z>>
;2]=(c[z>>2]|0)+-1}i=C;return}function Ym(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;A=i;i=i+64|0;B=A+48|0;l=A+54|0;m=A+44|0;n=A+40|0;o=A+36|0;p=A+32|0;s=A+28|0;r=A+24|
0;v=A+53|0;w=A+20|0;t=A+16|0;q=A+12|0;z=A+8|0;y=A+4|0;x=A+52|0;u=A;c[B>>2]=e;a[l>>0]=f;c[m>>2]=g;c
[n>>2]=h;c[o>>2]=j;c[p>>2]=k;c[s>>2]=c[c[o>>2]>>2];c[r>>2]=
c[c[p>>2]>>2];a[v>>0]=1;c[B>>2]=c[B>>2];while(1){if((c[m>>2]|0)>
;>>0<=1)break;a[x>>0]=0;if(!(d[v>>0]|0)?!(d[l>>0]|0):0){c[w>>2]=b[c[n>
;>2]>>1];c[t>>2]=(b[(c[n>>2]|0)+2>>1]|0)-(c[w>>2]|0);c[z>>2]=(c
[o>>2]|0)+4;c[q>>2]=c[s>>2];a[x>>0]=1}else{c[w>>2]=b[(c[n>>2]|0)+2
x3e;>1];c[t>>2]=(b[c[n>>2]>>1]|0)-(c[w>>2]|0);c[z>>2]=(c[p>>2]|
0)+4;c[q>>2]=c[r>>2];a[v>>0]=0}c[y>>2]=c[z>>2];while(1){if((c[q>>2]|
0)>>>0<=0){k=17;break}if((c[w>>2]|0)<(c[c[y>>2]>>2]|0)){k=17;break}if((c[
w>>2]|0)==(c[c[y>>2]>>2]|0)){k=11;break}c[q>>2]=(c[q>>2]|0)+-1;c[y>>
2]=(c[y>>2]|0)+32}do if((k|0)==11){c[u>>2]=c[(c[y>>2]|0)+4>>2];k=c[t>>2]|0;f=c
[u>>2]|0;if((c[t>>2]|0)<0){if((k|0)>=(f|0))break;c[(c[y>>2]|0)+4>>2]=c[t>
x3e;2];break}else{if((k|0)<=(f|0))break;c[(c[y>>2]|0)+4>>2]=c[t>>2];break}}else if((k|0)==17){
while(1){if((c[q>>2]|0)>>>0<=0)break;k=(c[y>>2]|0)+(c[q>>2]<<5)|0;B=(
c[y>>2]|0)+((c[q>>2]|0)-1<<5)|0;c[k>>2]=c[B>>2];c[k+4>>2]=c[B+4>
;>2];c[k+8>>2]=c[B+8>>2];c[k+12>>2]=c[B+12>>2];c[k+16>>2]=c[B+16>>
;2];c[k+20>>2]=c[B+20>>2];c[k+24>>2]=c[B+24>>2];c[k+28>>2]=c[B+28>>2
];c[q>>2]=(c[q>>2]|0)+-1;k=17}c[c[y>>2]>>2]=c[w>>2];c[(c[y>>2]|0)+4
x3e;>2]=c[t>>2];if(a[x>>0]|0){c[s>>2]=(c[s>>2]|0)+1;break}else{c[r>>2]=(c
[r>>2]|0)+1;break}}while(0);c[n>>2]=(c[n>>2]|0)+4;c[m>>2]=(c[m>>2]|0)-2}c[c[o
x3e;>2]>>2]=c[s>>2];c[c[p>>2]>>2]=c[r>>2];i=A;return}function Zm(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;n=i;i=i+32|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g
>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=(c[g>>
;2]|0)+4;c[m>>2]=(c[g>>2]|0)+4;if(!((c[h>>2]|0)==(c[(c[m>>2]|0)+196>>2]|0)?(c[
k>>2]|0)==(c[(c[m>>2]|0)+200>>2]|0):0)){c[(c[m>>2]|0)+196>>2]=c[h>>2
];c[(c[m>>2]|0)+200>>2]=c[k>>2];_m(c[g>>2]|0,0)}c[m>>2]=(c[g>>2]|0)+
4+204;if((c[j>>2]|0)==(c[(c[m>>2]|0)+196>>2]|0)?(c[l>>2]|0)==(c[(c[m>>2]|0)+200
>>2]|0):0){i=n;return 0}c[(c[m>>2]|0)+196>>2]=c[j>>2];c[(c[m>>2]|0)+200>
x3e;2]=c[l>>2];_m(c[g>>2]|0,1);$m((c[g>>2]|0)+412|0,c[j>>2]|0,c[l>>2]|0);i=n;return
0}function _m(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;k=i;i=i+48|0;o=k+36|0;n=k+32|0;l=k+28|0;m=k+24|0
;d=k+20|0;j=k+16|0;g=k+12|0;f=k+8|0;h=k+4|0;e=k;c[o>>2]=a;c[n>>2]=b;c[l>>2]=(c[o>>2]|0)+
4+((c[n>>2]|0)*204|0);c[m>>2]=c[l>>2];c[d>>2]=c[c[m>>2]>>2];c[j>
;>2]=(c[m>>2]|0)+4;c[g>>2]=c[j>>2];c[f>>2]=c[(c[l>>2]|0)+196>>2
];if((c[d>>2]|0)>>>0<=0){i=k;return}o=Mb(c[c[j>>2]>>2]|0,c[f>>2]|0)|
0;c[(c[j>>2]|0)+4>>2]=o;c[(c[j>>2]|0)+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+
32&-64;c[j>>2]=(c[j>>2]|0)+12;c[d>>2]=(c[d>>2]|0)+-1;while(1){if((c[d>>2]|
0)>>>0<=0)break;c[h>>2]=Mb(c[c[j>>2]>>2]|0,c[f>>2]|0)|0;c[e>>
;2]=(c[h>>2]|0)-(c[(c[g>>2]|0)+4>>2]|0);if((c[e>>2]|0)<0)c[e>>2]=0-(c[e
x3e;>2]|0);if((c[e>>2]|0)<128)c[h>>2]=c[(c[g>>2]|0)+4>>2];c[(c[j>>2]|
0)+4>>2]=c[h>>2];c[(c[j>>2]|0)+8>>2]=(c[h>>2]|0)+32&-64;c[d>>2]=(
c[d>>2]|0)+-1;c[j>>2]=(c[j>>2]|0)+12}i=k;return}function $m(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;w=i;i=i+64|0;l=w+56|0;m=w+52|0;f=w+48|0;g=w+44|0;s=w+40|0;h=w+36|0;j=
w+32|0;k=w+28|0;t=w+24|0;u=w+20|0;o=w+16|0;p=w+12|0;r=w+8|0;q=w+4|0;n=w;c[l>>2]=b;c[m>>2]=d;c[f>>2
]=e;c[h>>2]=0;b=c[m>>2]|0;if((c[m>>2]|0)>=34359738)a[(c[l>>2]|0)+2080>>0]=(
b|0)<((c[(c[l>>2]|0)+2064>>2]<<3|0)/125|0|0);else a[(c[l>>2]|0)+2080>>0]=(
b*125|0)<(c[(c[l>>2]|0)+2064>>2]<<3|0);c[j>>2]=c[(c[l>>2]|0)+2068>
x3e;2];while(1){if((c[j>>2]|0)>0)b=(Mb(c[j>>2]|0,c[m>>2]|0)|0)>32;else b=0;e=c[j>
x3e;2]|0;if(!b)break;c[j>>2]=e+-1}c[(c[l>>2]|0)+2072>>2]=e;c[s>>2]=0;while(1){if((c[s>
;>2]|0)>>>0>=4)break;switch(c[s>>2]|0){case 0:{c[h>>2]=c[l>>2];break}case
1:{c[h>>2]=(c[l>>2]|0)+516;break}case 2:{c[h>>2]=(c[l>>2]|0)+1032;break}default:c[h>
;>2]=(c[l>>2]|0)+1548}c[k>>2]=(c[h>>2]|0)+4;c[g>>2]=c[c[h>>2]>>
2];while(1){if((c[g>>2]|0)>>>0<=0)break;j=Mb(c[(c[k>>2]|0)+8>>2]|0,c[m>
x3e;2]|0)|0;c[(c[k>>2]|0)+28>>2]=j+(c[f>>2]|0);j=Mb(c[(c[k>>2]|0)+12>>2]|0,c[m
>>2]|0)|0;c[(c[k>>2]|0)+24>>2]=j+(c[f>>2]|0);j=Mb(c[c[k>>2]>>2]|0,c[
m>>2]|0)|0;c[(c[k>>2]|0)+16>>2]=j+(c[f>>2]|0);j=Mb(c[(c[k>>2]|0)+4>>
2]|0,c[m>>2]|0)|0;c[(c[k>>2]|0)+20>>2]=j;c[(c[k>>2]|0)+16>>2]=(c[(c[k>>
;2]|0)+16>>2]|0)+32&-64;c[g>>2]=(c[g>>2]|0)+-1;c[k>>2]=(c[k>>2]|0)+32}c[s
>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=2)break;b=
c[l>>2]|0;if(!(c[s>>2]|0)){c[r>>2]=b;c[q>>2]=(c[l>>2]|0)+1032}else{c[r>
x3e;2]=b+516;c[q>>2]=(c[l>>2]|0)+1548}c[t>>2]=(c[r>>2]|0)+4;c[o>>2]=c[c[r>
;>2]>>2];while(1){if((c[o>>2]|0)>>>0<=0)break;c[u>>2]=(c[q>>2]|
0)+4;c[p>>2]=c[c[q>>2]>>2];while(1){if((c[p>>2]|0)>>>0<=0)break;c[n
x3e;>2]=(c[c[t>>2]>>2]|0)-(c[c[u>>2]>>2]|0);if((c[n>>2]|0)<0)c[n>
;>2]=0-(c[n>>2]|0);if((Mb(c[n>>2]|0,c[m>>2]|0)|0)<64){v=32;break}c[p>>2]=(c[p
x3e;>2]|0)+-1;c[u>>2]=(c[u>>2]|0)+32}if((v|0)==32){v=0;c[(c[t>>2]|0)+28>>2]=c[(c[u
x3e;>2]|0)+28>>2];c[(c[t>>2]|0)+24>>2]=c[(c[u>>2]|0)+24>>2];c[(c[t>
x3e;2]|0)+16>>2]=c[(c[u>>2]|0)+16>>2];c[(c[t>>2]|0)+20>>2]=c[(c[u>>2
]|0)+20>>2]}c[o>>2]=(c[o>>2]|0)+-1;c[t>>2]=(c[t>>2]|0)+32}c[s>>2]=(c
[s>>2]|0)+1}i=w;return}function an(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(!(c[b>
;>2]|0)){i=e;return}c[d>>2]=c[c[b>>2]>>2];c[(c[b>>2]|0)+4>>2]=0;c[(c[b>
;>2]|0)+4+204>>2]=0;c[(c[b>>2]|0)+412>>2]=0;c[(c[b>>2]|0)+412+516>>2]=0;c
[(c[b>>2]|0)+412+1032>>2]=0;c[(c[b>>2]|0)+412+1548>>2]=0;Fb(c[d>>2]|0,c[b>
;>2]|0);c[b>>2]=0;i=e;return}function bn(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=b;b=c[e>
;>2]|0;d=b+28|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(d|0));c[(c[e>>2]|0)+4>>2]=37;c[(c[e>
;>2]|0)+8>>2]=108;c[(c[e>>2]|0)+12>>2]=13;c[(c[e>>2]|0)+16>>2]=14;c[(c[e
x3e;>2]|0)+20>>2]=5;c[(c[e>>2]|0)+24>>2]=24;i=f;return}function cn(a){a=a|0;var b=0,d=0;b=i;i
=i+16|0;d=b;c[d>>2]=a;dn(c[d>>2]|0,1);i=b;return}function dn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d
=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;b=(c[d>>2]|0)+4|0;if(((c[e>>2]|0)+-1|0)>>>
0<2){c[b>>2]=0;c[(c[d>>2]|0)+12>>2]=c[e>>2];en((c[d>>2]|0)+16|0);en((c[d
x3e;>2]|0)+16+36|0);i=f;return}else{c[b>>2]=6;c[(c[d>>2]|0)+12>>2]=c[e>>2];i=f;return
}}function en(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]=0;c[(c[d>>2]|
0)+12>>2]=0;c[(c[d>>2]|0)+24>>2]=0;i=b;return}function fn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0
,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;g=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[g>>2]=c[(c[d>
x3e;2]|0)+4>>2];if(c[g>>2]|0){h=c[g>>2]|0;i=j;return h|0}c[h>>2]=c[c[d>>2]>
;>2];c[f>>2]=(c[d>>2]|0)+16;c[g>>2]=gn(c[f>>2]|0,c[e>>2]|0,c[h>>
;2]|0)|0;if(c[g>>2]|0){h=c[g>>2]|0;i=j;return h|0}c[g>>2]=gn((c[f>>2]|0)+36|0,c[e>
x3e;2]|0,c[h>>2]|0)|0;h=c[g>>2]|0;i=j;return h|0}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+16|0;g=e+8|0;h=e+4|0;f=e;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;hn(c[g>>2]|0,c[h>>
;2]|0);d=jn((c[g>>2]|0)+24|0,c[f>>2]|0)|0;i=e;return d|0}function hn(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|0)+12
>>2];if((c[f>>2]|0)>>>0<=0){i=h;return}c[g>>2]=(c[(c[d>>2]|0)+12+8
x3e;>2]|0)+(c[f>>2]<<4)+-16;c[(c[g>>2]|0)+12>>2]=c[e>>2];i=h;return}function
jn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+16|0;e=k+12|0;g=k+8|0;h=k+4|0;f=k;c[d>>2]=a;c[e
x3e;>2]=b;c[f>>2]=0;c[g>>2]=(c[c[d>>2]>>2]|0)-1;while(1){if((c[g>>2]|0)
x3c;=0){j=9;break}c[h>>2]=(c[g>>2]|0)-1;while(1){if((c[h>>2]|0)<0)break;if(kn(c[d>>
2]|0,c[g>>2]|0,c[h>>2]|0)|0){j=6;break}c[h>>2]=(c[h>>2]|0)+-1}if((j|0)==6?(j=0,c[f>
x3e;2]=ln(c[d>>2]|0,c[h>>2]|0,c[g>>2]|0,c[e>>2]|0)|0,c[f>>2]|0):0){j=9;break}c
[g>>2]=(c[g>>2]|0)+-1}if((j|0)==9){i=k;return c[f>>2]|0}return 0}function kn(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;l=i;i=i+48|0;f=l+40|0;r=l+36|0;s=l+32|0;q=l+28|0;p=l+24|0;o=l+20|0;h
=l+16|0;j=l+12|0;n=l+8|0;m=l+4|0;g=l;c[r>>2]=a;c[s>>2]=b;c[q>>2]=e;c[p>>2]=(c[(c[r>
x3e;2]|0)+8>>2]|0)+(c[s>>2]<<4);c[o>>2]=(c[(c[r>>2]|0)+8>>2]|0)+(c[q
>>2]<<4);c[h>>2]=c[(c[p>>2]|0)+8>>2];c[j>>2]=c[(c[o>>2]|0)+
8>>2];c[n>>2]=c[c[p>>2]>>2];c[m>>2]=c[c[o>>2]>>2];c[g>
;>2]=(c[n>>2]|0)>>>0<=(c[m>>2]|0)>>>0?c[n>>2]|0:c[m>
x3e;2]|0;while(1){if((c[g>>2]|0)>>>0<8)break;if((d[c[h>>2]>>0]|0)&(d[c[j
x3e;>2]>>0]|0)|0){k=4;break}c[h>>2]=(c[h>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1;c
[g>>2]=(c[g>>2]|0)-8}if((k|0)==4){c[f>>2]=1;s=c[f>>2]|0;i=l;return s|0}if(!(c[g>>
;2]|0)){c[f>>2]=0;s=c[f>>2]|0;i=l;return s|0}else{c[f>>2]=(d[c[h>>2]>>0]|0)&
;(d[c[j>>2]>>0]|0)&~(255>>c[g>>2]);s=c[f>>2]|0;i=l;return s|0}return 0}function
ln(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;x=i;i=i+80|0;h=x+68|0;j
=x+64|0;k=x+60|0;l=x+56|0;v=x+52|0;q=x+48|0;r=x+44|0;s=x+40|0;m=x+36|0;n=x+32|0;o=x+28|0;t=x+24|0;u=x+20|0;w=x+16|0;p=x;c[h>
;>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[q>>2]=0;if((c[j>>2]|0)>(c[k
x3e;>2]|0)){c[v>>2]=c[j>>2];c[j>>2]=c[k>>2];c[k>>2]=c[v>>2]}if(!((
c[j>>2]|0)>=0?(c[j>>2]|0)<(c[k>>2]|0):0)){w=c[q>>2]|0;i=x;return w|0}if((c[k
x3e;>2]|0)>=(c[c[h>>2]>>2]|0)){w=c[q>>2]|0;i=x;return w|0}c[r>>2]=(c[(c[h>
;>2]|0)+8>>2]|0)+(c[j>>2]<<4);c[s>>2]=(c[(c[h>>2]|0)+8>>2]|0)+(
c[k>>2]<<4);c[m>>2]=c[c[r>>2]>>2];c[n>>2]=c[c[s>>2]>
x3e;2];a:do if((c[n>>2]|0)>>>0>0){b:do if((c[n>>2]|0)>>>0>(c[m>
x3e;2]|0)>>>0){c[q>>2]=mn(c[r>>2]|0,c[n>>2]|0,c[l>>2]|0)|0;if(c[q>
x3e;2]|0){w=c[q>>2]|0;i=x;return w|0}c[t>>2]=c[m>>2];while(1){if((c[t>>2]|0)>>
x3e;0>=(c[n>>2]|0)>>>0)break b;nn(c[r>>2]|0,c[t>>2]|0);c[t>>2]=(c[t
x3e;>2]|0)+1}}while(0);c[u>>2]=c[(c[s>>2]|0)+8>>2];c[w>>2]=c[(c[r>>2]|0)+
8>>2];c[t>>2]=((c[n>>2]|0)+7|0)>>>3;while(1){if((c[t>>2]|0)>>
x3e;0<=0)break a;a[c[w>>2]>>0]=d[c[w>>2]>>0]|0|(d[c[u>>2]>>0]|0
);c[w>>2]=(c[w>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+-1
}}while(0);c[c[s>>2]>>2]=0;c[(c[s>>2]|0)+12>>2]=0;c[o>>2]=(c[c[h>>2]
x3e;>2]|0)-1-(c[k>>2]|0);if((c[o>>2]|0)>0){w=c[s>>2]|0;c[p>>2]=c[w>>
2];c[p+4>>2]=c[w+4>>2];c[p+8>>2]=c[w+8>>2];c[p+12>>2]=c[w+12>>2];Ts(
c[s>>2]|0,(c[s>>2]|0)+16|0,c[o>>2]<<4|0)|0;w=(c[s>>2]|0)+(c[o>>2]<
;<4)|0;c[w>>2]=c[p>>2];c[w+4>>2]=c[p+4>>2];c[w+8>>2]=c[p+8>>2];
c[w+12>>2]=c[p+12>>2]}w=c[h>>2]|0;c[w>>2]=(c[w>>2]|0)+-1;w=c[q>>2]|0
;i=x;return w|0}function mn(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;k=i;i=i+32|0;e=k+20|0;l=k+16|0;f=k+12|0;j=k
+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=((c[(c[e>>2]|0)+4>
x3e;2]|0)+7|0)>>>3;c[h>>2]=((c[l>>2]|0)+7|0)>>>3;c[g>>2]=0;if((c[h
x3e;>2]|0)>>>0<=(c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>
;>2]=(c[h>>2]|0)+7&-8;l=hc(c[f>>2]|0,1,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2
]|0)+8>>2]|0,g)|0;c[(c[e>>2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l
|0}c[(c[e>>2]|0)+4>>2]=c[h>>2]<<3;l=c[g>>2]|0;i=k;return l|0}function nn(b,e){
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]=b;c[g>>2]=e;if((c[g>>2]|0
)>>>0>=(c[c[f>>2]>>2]|0)>>>0){i=j;return}c[h>>2]=(c[(c[f>
x3e;2]|0)+8>>2]|0)+(c[g>>2]>>3);a[c[h>>2]>>0]=(d[c[h>>2]>>
0]|0)&~(128>>(c[g>>2]&7));i=j;return}function on(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]=(Tb(c[c
[j>>2]>>2]|0)|0)>>16;c[f+4>>2]=(Tb(c[(c[j>>2]|0)+4>>2]|0)|0)>
x3e;16;pn(c[h>>2]|0,c[g>>2]|0,1,f);i=e;return}function pn(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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;h=o+16|0;j=o+12|0;k=o+8|0;l=o+4|0;m=o;c[f>>2]=a;c[g>>2
]=b;c[h>>2]=d;c[j>>2]=e;if(c[(c[f>>2]|0)+4>>2]|0){i=o;return}if((c[g>>2]|0)<
;0|(c[g>>2]|0)>1)c[g>>2]=(c[g>>2]|0)!=0&1;if(((c[(c[f>>2]|0)+12>>2]|
0)+-1|0)>>>0>=2){i=o;return}c[k>>2]=(c[f>>2]|0)+16+((c[g>>2]|0)*36|0);while(1){
if((c[h>>2]|0)>>>0<=0){n=10;break}c[m>>2]=c[c[f>>2]>>2];c[l>>
;2]=qn(c[k>>2]|0,c[c[j>>2]>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[m>>2]|0,0)|
0;if(c[l>>2]|0)break;c[h>>2]=(c[h>>2]|0)+-1;c[j>>2]=(c[j>>2]|0)+8}if((n|0)==10
){i=o;return}c[(c[f>>2]|0)+4>>2]=c[l>>2];i=o;return}function qn(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;s=i;i=i+48|0;g=s+40|0;h=s+36|0;j=s+32|0;k=s+28|0;l=s+24|0;m=s+20|0;n=
s+16|0;q=s+12|0;p=s+8|0;r=s+4|0;o=s;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>
;2]=f;c[m>>2]=0;c[n>>2]=0;if((c[j>>2]|0)<0){c[n>>2]=c[n>>2]|1;if((c[j>
;>2]|0)==-21){c[n>>2]=c[n>>2]|2;c[h>>2]=(c[h>>2]|0)+(c[j>>2]|0)}c[j>
x3e;2]=0}if(c[l>>2]|0)c[c[l>>2]>>2]=-1;c[r>>2]=c[c[g>>2]>>2];c[o>
;>2]=c[(c[g>>2]|0)+8>>2];c[p>>2]=0;while(1){if((c[p>>2]|0)>>>0>=(
c[r>>2]|0)>>>0)break;if((c[c[o>>2]>>2]|0)==(c[h>>2]|0)?(c[(c[o>>
;2]|0)+4>>2]|0)==(c[j>>2]|0):0)break;c[p>>2]=(c[p>>2]|0)+1;c[o>>2]=(c[o>
x3e;2]|0)+12}do if((c[p>>2]|0)>>>0>=(c[r>>2]|0)>>>0){c[m>>2]=rn
(c[g>>2]|0,c[k>>2]|0,o)|0;if(c[m>>2]|0){b=c[m>>2]|0;i=s;return b|0}else{c[c[o>>
;2]>>2]=c[h>>2];c[(c[o>>2]|0)+4>>2]=c[j>>2];c[(c[o>>2]|0)+8>>
;2]=c[n>>2];break}}while(0);c[m>>2]=tn((c[g>>2]|0)+12|0,c[k>>2]|0,q)|0;if(c[m>>
;2]|0){b=c[m>>2]|0;i=s;return b|0}c[m>>2]=wn(c[q>>2]|0,c[p>>2]|0,c[k>>2]|0)|0;
if(!((c[m>>2]|0)==0&(c[l>>2]|0)!=0)){b=c[m>>2]|0;i=s;return b|0}c[c[l>>2]>>
;2]=c[p>>2];b=c[m>>2]|0;i=s;return b|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;
l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;j=l+8|0;h=l+4|0;k=l;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>
;>2]=0;c[k>>2]=0;c[h>>2]=c[c[e>>2]>>2];c[h>>2]=(c[h>>2]|0)+1;if
((c[h>>2]|0)>>>0>=(c[(c[e>>2]|0)+4>>2]|0)>>>0?(c[j>>2
]=sn(c[e>>2]|0,c[h>>2]|0,c[f>>2]|0)|0,c[j>>2]|0):0){b=c[k>>2]|0;a=c[g>>
;2]|0;c[a>>2]=b;a=c[j>>2]|0;i=l;return a|0}c[k>>2]=(c[(c[e>>2]|0)+8>>2]|0)+((c
[h>>2]|0)*12|0)+-12;c[c[k>>2]>>2]=0;c[(c[k>>2]|0)+4>>2]=0;c[(c[k>>2]|
0)+8>>2]=0;c[c[e>>2]>>2]=c[h>>2];b=c[k>>2]|0;a=c[g>>2]|0;c[a>
x3e;2]=b;a=c[j>>2]|0;i=l;return a|0}function sn(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;k=i;i=i+32|0;
e=k+20|0;l=k+16|0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=c[(
c[e>>2]|0)+4>>2];c[h>>2]=c[l>>2];c[g>>2]=0;if((c[h>>2]|0)>>
;>0<=(c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>>2]=(c[h>>
2]|0)+7&-8;l=hc(c[f>>2]|0,12,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+8>>2]|0,g)|
0;c[(c[e>>2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l|0}c[(c[e>>2]|0)+
4>>2]=c[h>>2];l=c[g>>2]|0;i=k;return l|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;k=i;i=i+32|0;l=k+20|0;e=k+16|0;f=k+12|0;h=k+8|0;g=k+4|0;j=k;c[l>>2]=a;c[e>>2]=b;c[f>>2
]=d;c[h>>2]=0;c[g>>2]=c[c[l>>2]>>2];d=c[l>>2]|0;if(!(c[g>>2]|0)){c[h
>>2]=un(d,c[e>>2]|0,j)|0;j=c[j>>2]|0;l=c[f>>2]|0;c[l>>2]=j;l=c[h>>2]|
0;i=k;return l|0}else{c[j>>2]=(c[d+8>>2]|0)+(c[g>>2]<<4)+-16;j=c[j>>2]|0;l=c[f
>>2]|0;c[l>>2]=j;l=c[h>>2]|0;i=k;return l|0}return 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;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[e>>2]=a;c[f>>2]=b;c[g
x3e;>2]=d;c[j>>2]=0;c[k>>2]=0;c[h>>2]=c[c[e>>2]>>2];c[h>>2]=(c[
h>>2]|0)+1;if((c[h>>2]|0)>>>0>(c[(c[e>>2]|0)+4>>2]|0)>>>
;0?(c[j>>2]=vn(c[e>>2]|0,c[h>>2]|0,c[f>>2]|0)|0,c[j>>2]|0):0){b=c[k>>
;2]|0;a=c[g>>2]|0;c[a>>2]=b;a=c[j>>2]|0;i=l;return a|0}c[k>>2]=(c[(c[e>>2]|0)+
8>>2]|0)+(c[h>>2]<<4)+-16;c[c[k>>2]>>2]=0;c[(c[k>>2]|0)+12>>
;2]=0;c[c[e>>2]>>2]=c[h>>2];b=c[k>>2]|0;a=c[g>>2]|0;c[a>>2]=b;a=c[j
x3e;>2]|0;i=l;return a|0}function vn(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;k=i;i=i+32|0;e=k+20|0;l=k+16|
0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=c[(c[e>>2
]|0)+4>>2];c[h>>2]=c[l>>2];c[g>>2]=0;if((c[h>>2]|0)>>>0<=(
c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>>2]=(c[h>>2]|0)+7&-8;
l=hc(c[f>>2]|0,16,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+8>>2]|0,g)|0;c[(c[e>
x3e;2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l|0}c[(c[e>>2]|0)+4>>2]=
c[h>>2];l=c[g>>2]|0;i=k;return l|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;m=i;i=i+
32|0;g=m+16|0;h=m+12|0;j=m+8|0;k=m+4|0;l=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=0;if((c
[h>>2]|0)<0){l=c[k>>2]|0;i=m;return l|0}do if((c[h>>2]|0)>>>0>=(c[c[g>
;>2]>>2]|0)>>>0){c[k>>2]=mn(c[g>>2]|0,(c[h>>2]|0)+1|0,c[j>>
;2]|0)|0;if(c[k>>2]|0){l=c[k>>2]|0;i=m;return l|0}else{c[c[g>>2]>>2]=(c[h>>2]|
0)+1;break}}while(0);c[l>>2]=(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]>>3);a[c[l>
x3e;2]>>0]=d[c[l>>2]>>0]|0|128>>(c[h>>2]&7);l=c[k>>2]|0;i=m;return
l|0}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,l=0,m=0,n=0;n=i;i=i+48|0;f=n+36|0;e=n+32|0;g=n+28|0;k=n+24
|0;j=n+20|0;m=n+16|0;h=n+12|0;l=n;c[f>>2]=a;c[e>>2]=b;c[g>>2]=d;c[k>>2]=0;if(c[(c[f>
;>2]|0)+4>>2]|0){i=n;return}c[m>>2]=c[c[f>>2]>>2];if((c[e>>2]|0)<0|(
c[e>>2]|0)>1)c[e>>2]=(c[e>>2]|0)!=0&1;c[j>>2]=(c[f>>2]|0)+16+((c[e
x3e;>2]|0)*36|0);a:do if((c[(c[f>>2]|0)+12>>2]|0)==1){c[h>>2]=0;while(1){e=c[j>>2]|
0;if((c[h>>2]|0)>=3)break;a=(Tb(c[c[g>>2]>>2]|0)|0)>>16;d=(Tb(c[(c[g>>2]|
0)+4>>2]|0)|0)>>16;c[k>>2]=qn(e,a,d,c[m>>2]|0,l+(c[h>>2]<<2)|0)|0;if
(c[k>>2]|0)break a;c[h>>2]=(c[h>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+8}c[k>>
2]=yn(e,c[l>>2]|0,c[l+4>>2]|0,c[l+8>>2]|0,c[m>>2]|0)|0;if(!(c[k>>2]|0)){i=n;return
}}else c[k>>2]=6;while(0);c[(c[f>>2]|0)+4>>2]=c[k>>2];i=n;return}function yn(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;p=i;i=i+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;
o=p+8|0;m=p+4|0;n=p;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[o>
;>2]=0;c[m>>2]=c[(c[g>>2]|0)+24>>2];c[n>>2]=c[(c[g>>2]|0)+24+8>>
;2];while(1){if((c[m>>2]|0)>>>0<=0)break;if(zn(c[n>>2]|0,c[h>>2]|0)|0)break;if
(zn(c[n>>2]|0,c[j>>2]|0)|0)break;if(zn(c[n>>2]|0,c[k>>2]|0)|0)break;c[m>>2]=(c
[m>>2]|0)+-1;c[n>>2]=(c[n>>2]|0)+16}if((c[m>>2]|0)==0?(c[o>>2]=un((c[g>
x3e;2]|0)+24|0,c[l>>2]|0,n)|0,c[o>>2]|0):0){f=c[o>>2]|0;i=p;return f|0}c[o>>2]=wn(c[n>
;>2]|0,c[h>>2]|0,c[l>>2]|0)|0;if(c[o>>2]|0){f=c[o>>2]|0;i=p;return f|0}c[o>>
;2]=wn(c[n>>2]|0,c[j>>2]|0,c[l>>2]|0)|0;if(c[o>>2]|0){f=c[o>>2]|0;i=p;return f
|0}c[o>>2]=wn(c[n>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;f=c[o>>2]|0;i=p;return f|0}function
zn(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=b;if((c[g>
x3e;2]|0)>>>0>=(c[c[f>>2]>>2]|0)>>>0){c[e>>2]=0;a=c[e>>
;2]|0;i=h;return a|0}else{c[e>>2]=(d[(c[(c[f>>2]|0)+8>>2]|0)+(c[g>>2]>>3)>
;>0]|0)&128>>(c[g>>2]&7);a=c[e>>2]|0;i=h;return a|0}return 0}function An(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>
2]=0;if(c[(c[d>>2]|0)+4>>2]|0){i=h;return}c[g>>2]=c[c[d>>2]>>2];if((c[(c[d>
;>2]|0)+12>>2]|0)==1){c[f>>2]=Bn((c[d>>2]|0)+16|0,c[e>>2]|0,c[g>>2]|0)|0;
if((c[f>>2]|0)==0?(c[f>>2]=Bn((c[d>>2]|0)+16+36|0,c[e>>2]|0,c[g>>2]|0)|0,(c[f
x3e;>2]|0)==0):0){i=h;return}}else c[f>>2]=6;c[(c[d>>2]|0)+4>>2]=c[f>>2];i=h;return
}function Bn(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+8|0;f=e+4|0;c[g>>2]=a;c[h>>
;2]=b;c[f>>2]=d;hn(c[g>>2]|0,c[h>>2]|0);d=un((c[g>>2]|0)+12|0,c[f>>2]|0,e)|0;i
=e;return d|0}function Cn(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,x=0,y
=0,z=0;z=i;i=i+208|0;h=z+192|0;j=z+188|0;k=z+184|0;l=z+180|0;m=z+176|0;s=z+40|0;q=z+36|0;p=z+32|0;n=z+28|0;o=z+24|0;x=z+20|0;y=z
+16|0;t=z+12|0;u=z+8|0;w=z+4|0;r=z;v=z+196|0;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[s
>>2]=z+48;if(b[(c[k>>2]|0)+2>>1]|0?b[c[k>>2]>>1]|0:0){c[q>>2]=Dn(c[s
>>2]|0,c[k>>2]|0,c[j>>2]|0,c[l>>2]|0)|0;a:do if(!(c[q>>2]|0)){c[n>>2
]=(c[(c[s>>2]|0)+24>>2]|0)+4;c[o>>2]=(c[(c[s>>2]|0)+24>>2]|0)+4+204;c[x>
x3e;2]=c[(c[n>>2]|0)+196>>2];c[y>>2]=c[(c[o>>2]|0)+196>>2];c[t>>2]=c
[x>>2];c[u>>2]=c[y>>2];a[v>>0]=0;c[w>>2]=Mb(c[(c[l>>2]|0)+412+4>
;>2]|0,c[y>>2]|0)|0;c[r>>2]=(c[w>>2]|0)+32&-64;if(c[r>>2]|0?(c[w>>2]|
0)!=(c[r>>2]|0):0){a[v>>0]=1;c[y>>2]=xb(c[y>>2]|0,c[r>>2]|0,c[w>>2]|
0)|0;if((c[r>>2]|0)<(c[w>>2]|0))c[x>>2]=(c[x>>2]|0)-((c[x>>2]|0)/50|0);Zm
(c[(c[s>>2]|0)+24>>2]|0,c[x>>2]|0,c[y>>2]|0,0,0)|0}a[(c[s>>2]|0)+120>>
;0]=1;a[(c[s>>2]|0)+121>>0]=1;a[(c[s>>2]|0)+122>>0]=((c[m>>2]|0)==2?1:(c[m>
;>2]|0)==3)&1;a[(c[s>>2]|0)+123>>0]=((c[m>>2]|0)==2?1:(c[m>>2]|0)==4)&1;a
[(c[s>>2]|0)+124>>0]=(c[m>>2]|0)!=1;c[p>>2]=0;while(1){if((c[p>>2]|0)>=2)
break a;Fn(c[s>>2]|0,c[p>>2]|0);Ln(c[s>>2]|0);Mn((c[s>>2]|0)+28+((c[p>>2]|0)*40
|0)|0,c[(c[s>>2]|0)+24>>2]|0,c[p>>2]|0,c[s>>2]|0);Rn(c[s>>2]|0,c[p>>
2]|0);if((c[p>>2]|0)==1)Vn((c[l>>2]|0)+412|0,c[s>>2]|0);Wn(c[s>>2]|0,c[p>>2]|0
);Xn(c[s>>2]|0,c[p>>2]|0);Yn(c[s>>2]|0,c[p>>2]|0);Zn(c[s>>2]|0,c[p>>
2]|0);if(a[v>>0]|0)Zm(c[(c[s>>2]|0)+24>>2]|0,c[t>>2]|0,c[u>>2]|0,0,0)|0;c[p>
;>2]=(c[p>>2]|0)+1}}while(0);_n(c[s>>2]|0);c[h>>2]=c[q>>2];y=c[h>>2]|0;i=
z;return y|0}c[h>>2]=0;y=c[h>>2]|0;i=z;return y|0}function Dn(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,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+96|0;p=F+88|0;q=F+84|0;r=F+80|0;s
=F+76|0;x=F+72|0;y=F+68|0;k=F+64|0;m=F+60|0;l=F+56|0;o=F+52|0;h=F+48|0;j=F+44|0;n=F+40|0;D=F+36|0;C=F+32|0;E=F+28|0;z=F+24|0;B=F
+20|0;A=F+16|0;t=F+12|0;v=F+8|0;u=F+4|0;w=F;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;g=c[
p>>2]|0;d=g+128|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(d|0));f=c[c[s>>2]>>2]|0;c[(c[p
x3e;>2]|0)+16>>2]=f;c[y>>2]=f;f=hc(c[y>>2]|0,48,0,b[(c[q>>2]|0)+2>>1]|0,0
,x)|0;c[(c[p>>2]|0)+8>>2]=f;if(c[x>>2]|0){E=c[x>>2]|0;i=F;return E|0}f=hc(c[y>>
;2]|0,8,0,b[c[q>>2]>>1]|0,0,x)|0;c[(c[p>>2]|0)+12>>2]=f;if(c[x>>2]|0){E=c[x>
;>2]|0;i=F;return E|0}c[c[p>>2]>>2]=b[(c[q>>2]|0)+2>>1];c[(c[p>>2]|0)+4
x3e;>2]=b[c[q>>2]>>1];c[k>>2]=0;c[o>>2]=c[(c[p>>2]|0)+8>>2];c[h
>>2]=c[(c[p>>2]|0)+12>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0
>=(c[(c[p>>2]|0)+4>>2]|0)>>>0)break;c[m>>2]=(b[(c[(c[q>>2]|0)+12>
;>2]|0)+(c[l>>2]<<1)>>1]|0)+1;c[j>>2]=(c[m>>2]|0)-(c[k>>2]|0);c
[c[h>>2]>>2]=(c[o>>2]|0)+((c[k>>2]|0)*48|0);c[(c[h>>2]|0)+4>>2]=c[j
x3e;>2];if((c[j>>2]|0)>0){c[n>>2]=(c[o>>2]|0)+((c[k>>2]|0)*48|0);c[c[n>
x3e;2]>>2]=(c[o>>2]|0)+((c[m>>2]|0)*48|0)+-48;c[(c[n>>2]|0)+8>>2]=c[h>>
;2];while(1){if((c[j>>2]|0)<=1)break;c[(c[n>>2]|0)+4>>2]=(c[n>>2]|0)+48;c[(c[n>
;>2]|0)+48>>2]=c[n>>2];c[n>>2]=(c[n>>2]|0)+48;c[(c[n>>2]|0)+8>>
2]=c[h>>2];c[j>>2]=(c[j>>2]|0)+-1}c[(c[n>>2]|0)+4>>2]=(c[o>>2]|0)+((
c[k>>2]|0)*48|0)}c[h>>2]=(c[h>>2]|0)+8;c[k>>2]=c[m>>2];c[l>>2]=(c[l
x3e;>2]|0)+1}c[D>>2]=c[(c[p>>2]|0)+8>>2];c[C>>2]=c[D>>2];c[E>>2
]=c[(c[q>>2]|0)+4>>2];c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[c[p
x3e;>2]>>2]|0)>>>0)break;c[B>>2]=((c[c[C>>2]>>2]|0)-(c[D>>
2]|0)|0)/48|0;c[A>>2]=((c[(c[C>>2]|0)+4>>2]|0)-(c[D>>2]|0)|0)/48|0;if(!(a[(c[(c[q>
x3e;2]|0)+8>>2]|0)+(c[z>>2]|0)>>0]&1))c[(c[C>>2]|0)+12>>2]=1;c[t>>
;2]=(c[(c[E>>2]|0)+(c[z>>2]<<3)>>2]|0)-(c[(c[E>>2]|0)+(c[B>>2]<
x3c;3)>>2]|0);c[v>>2]=(c[(c[E>>2]|0)+(c[z>>2]<<3)+4>>2]|0)-(c[(c[E
x3e;>2]|0)+(c[B>>2]<<3)+4>>2]|0);g=(En(c[t>>2]|0,c[v>>2]|0)|0)&255;a
[(c[C>>2]|0)+20>>0]=g;c[u>>2]=(c[(c[E>>2]|0)+(c[A>>2]<<3)>>
;2]|0)-(c[(c[E>>2]|0)+(c[z>>2]<<3)>>2]|0);c[w>>2]=(c[(c[E>>2]|0)+(c[
A>>2]<<3)+4>>2]|0)-(c[(c[E>>2]|0)+(c[z>>2]<<3)+4>>2]|0);g=(
En(c[u>>2]|0,c[w>>2]|0)|0)&255;a[(c[C>>2]|0)+21>>0]=g;g=c[C>>2]|0;do if(!(
c[(c[C>>2]|0)+12>>2]&1|0)){if((a[g+20>>0]|0)==(a[(c[C>>2]|0)+21>>0]|0)){if
((a[(c[C>>2]|0)+21>>0]|0)==4?($b(c[t>>2]|0,c[v>>2]|0,c[u>>2]|0,c[w>>
2]|0)|0)==0:0)break;o=(c[C>>2]|0)+12|0;c[o>>2]=c[o>>2]|2}}else{o=g+12|0;c[o>>2]=c[o>
;>2]|2}while(0);c[z>>2]=(c[z>>2]|0)+1;c[C>>2]=(c[C>>2]|0)+48}c[(c[p>>2]|0
)+20>>2]=c[q>>2];c[(c[p>>2]|0)+24>>2]=c[s>>2];Fn(c[p>>2]|0,0);Gn(c[p
>>2]|0);c[x>>2]=Hn((c[p>>2]|0)+28|0,(c[r>>2]|0)+16|0,(c[r>>2]|0)+16+12|0,(c[r
x3e;>2]|0)+16+24|0,c[y>>2]|0)|0;if(c[x>>2]|0){E=c[x>>2]|0;i=F;return E|0}c[x>>2]=Hn
((c[p>>2]|0)+28+40|0,(c[r>>2]|0)+16+36|0,(c[r>>2]|0)+16+36+12|0,(c[r>>2]|0)+16+36+24|0,c
[y>>2]|0)|0;E=c[x>>2]|0;i=F;return E|0}function En(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0
;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[d>>2]=a;c[e>>2]=b;c[h>>2]=4;b=c[d>>2]|0;c[f>
;>2]=(c[d>>2]|0)>=0?b:0-b|0;b=c[e>>2]|0;c[g>>2]=(c[e>>2]|0)>=0?b:0-b|0;if
(((c[g>>2]|0)*12|0)<(c[f>>2]|0)){c[h>>2]=(c[d>>2]|0)>=0?2:-2;h=c[h>>
2]|0;i=j;return h|0}if(((c[f>>2]|0)*12|0)>=(c[g>>2]|0)){h=c[h>>2]|0;i=j;return h|0}c[h>
x3e;2]=(c[e>>2]|0)>=0?-1:1;h=c[h>>2]|0;i=j;return h|0}function Fn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,
h=0,j=0;h=i;i=i+32|0;j=h+16|0;d=h+12|0;g=h+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[g>>2]=c[(c[(c[j
x3e;>2]|0)+20>>2]|0)+4>>2];c[f>>2]=c[(c[j>>2]|0)+8>>2];c[e>>2]=
c[c[j>>2]>>2];while(1){if((c[e>>2]|0)>>>0<=0)break;c[(c[f>>2]|0)+16
x3e;>2]=0;c[(c[f>>2]|0)+32>>2]=0;b=c[g>>2]|0;if(!(c[d>>2]|0)){c[(c[f>>2]|
0)+36>>2]=c[b>>2];c[(c[f>>2]|0)+40>>2]=c[(c[g>>2]|0)+4>>2]}else{c[(c
[f>>2]|0)+36>>2]=c[b+4>>2];c[(c[f>>2]|0)+40>>2]=c[c[g>>2]>>
;2]}c[e>>2]=(c[e>>2]|0)+-1;c[f>>2]=(c[f>>2]|0)+48;c[g>>2]=(c[g>>2]|0
)+8}i=h;return}function Gn(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;r=i;i=i+64|0;b=r+52|0;l=r+48
|0;h=r+44|0;q=r+40|0;f=r+36|0;e=r+32|0;d=r+28|0;j=r+24|0;k=r+20|0;o=r+16|0;p=r+12|0;n=r+8|0;m=r+4|0;g=r;c[b>>2]=a;c[l
x3e;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[(c[b>>2]|0)+4>>2]|0)>>
;>0)break;c[g>>2]=0;a:do if((c[(c[(c[b>>2]|0)+12>>2]|0)+(c[l>>2]<<3)+4>
;>2]|0)>>>0>=4){c[h>>2]=c[(c[(c[b>>2]|0)+12>>2]|0)+(c[l>>2]<
;<3)>>2];a=c[h>>2]|0;c[f>>2]=a;c[q>>2]=a;do{c[f>>2]=c[(c[f>>2]|
0)+4>>2];if((c[f>>2]|0)==(c[h>>2]|0))break a;c[j>>2]=(c[(c[f>>2]|0)+36>
x3e;2]|0)-(c[(c[q>>2]|0)+36>>2]|0);c[k>>2]=(c[(c[f>>2]|0)+40>>2]|0)-(c[(c[q>
;>2]|0)+40>>2]|0)}while((c[j>>2]|0)==0?(c[k>>2]|0)==0:0);c[e>>2]=c[q>>2];
while(1){c[q>>2]=c[e>>2];c[e>>2]=c[c[e>>2]>>2];if((c[e>>2]|0)==(c[h
x3e;>2]|0))break a;c[o>>2]=(c[(c[q>>2]|0)+36>>2]|0)-(c[(c[e>>2]|0)+36>>2]|
0);c[p>>2]=(c[(c[q>>2]|0)+40>>2]|0)-(c[(c[e>>2]|0)+40>>2]|0);if((c[o>>
;2]|0)==0?(c[p>>2]|0)==0:0)continue;c[n>>2]=_b(c[j>>2]|0,c[k>>2]|0,c[o>>2]|0,c
[p>>2]|0)|0;if(c[n>>2]|0)break}c[h>>2]=c[q>>2];c[j>>2]=c[o>>2];c[k
x3e;>2]=c[p>>2];do{c[d>>2]=c[f>>2];while(1){c[f>>2]=c[d>>2];c[d>>
;2]=c[(c[d>>2]|0)+4>>2];if((c[d>>2]|0)==(c[h>>2]|0))c[g>>2]=1;c[o>>2
]=(c[(c[d>>2]|0)+36>>2]|0)-(c[(c[f>>2]|0)+36>>2]|0);c[p>>2]=(c[(c[d>>
;2]|0)+40>>2]|0)-(c[(c[f>>2]|0)+40>>2]|0);if((c[o>>2]|0)==0?(c[p>>2]|0)==0:0)continue
;c[m>>2]=_b(c[j>>2]|0,c[k>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;if(c[m>>2]|0)
break}if((c[m>>2]^c[n>>2]|0)<0){do{a=(c[q>>2]|0)+12|0;c[a>>2]=c[a>>2]|4;c
[q>>2]=c[(c[q>>2]|0)+4>>2]}while((c[q>>2]|0)!=(c[f>>2]|0));a=(c[q>>2
]|0)+12|0;c[a>>2]=c[a>>2]|4}c[q>>2]=c[f>>2];c[f>>2]=c[d>>2];c[n>
;>2]=c[m>>2];c[j>>2]=c[o>>2];c[k>>2]=c[p>>2]}while((c[g>>2]|0)!=
0^1)}while(0);c[l>>2]=(c[l>>2]|0)+1}i=r;return}function Hn(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;r=i;i=i+48|0;g=r+40|0;h=r+36|0;j=r+32|0;s=r+28|0;k=r+24|0;l=r+20|0;m=r+16|0;q=r+12|0
;p=r+8|0;o=r+4|0;n=r;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[s>>2]=e;c[k>>2]=f;c[s>
;>2]=c[s>>2];c[l>>2]=c[c[h>>2]>>2];a=hc(c[k>>2]|0,4,0,c[l>>2]
x3c;<1,0,m)|0;c[(c[g>>2]|0)+12>>2]=a;if(c[m>>2]|0){s=c[m>>2]|0;i=r;return s|0}s=hc(
c[k>>2]|0,28,0,c[l>>2]|0,0,m)|0;c[(c[g>>2]|0)+8>>2]=s;if(c[m>>2]|0){s=c[m>
;>2]|0;i=r;return s|0}s=hc(c[k>>2]|0,16,0,(c[l>>2]<<1)+1|0,0,m)|0;c[(c[g>>2]|0)+24
x3e;>2]=s;if(c[m>>2]|0){s=c[m>>2]|0;i=r;return s|0}c[c[g>>2]>>2]=c[l>>2];
c[(c[g>>2]|0)+16>>2]=(c[(c[g>>2]|0)+12>>2]|0)+(c[l>>2]<<2);c[(c[g>
;>2]|0)+4>>2]=0;c[(c[g>>2]|0)+20>>2]=0;c[(c[g>>2]|0)+28>>2]=0;c[q>
x3e;2]=c[(c[g>>2]|0)+8>>2];c[p>>2]=c[(c[h>>2]|0)+8>>2];while(1){if((c[l>
x3e;2]|0)>>>0<=0)break;c[c[q>>2]>>2]=c[c[p>>2]>>2];c[(c[q>>
;2]|0)+4>>2]=c[(c[p>>2]|0)+4>>2];c[(c[q>>2]|0)+16>>2]=c[(c[p>>2]|0)+
8>>2];c[l>>2]=(c[l>>2]|0)+-1;c[q>>2]=(c[q>>2]|0)+28;c[p>>2]=(c[p>
;>2]|0)+12}a:do if(c[j>>2]|0){c[o>>2]=c[(c[j>>2]|0)+8>>2];c[l>>2]=c[c[j
x3e;>2]>>2];c[(c[g>>2]|0)+32>>2]=c[j>>2];while(1){if((c[l>>2]|0)>>
;>0<=0)break a;In(c[g>>2]|0,c[o>>2]|0);c[l>>2]=(c[l>>2]|0)+-1;c[o>>2
]=(c[o>>2]|0)+16}}while(0);if((c[(c[g>>2]|0)+4>>2]|0)==(c[c[g>>2]>>2]|0)){s=c[
m>>2]|0;i=r;return s|0}c[l>>2]=c[c[g>>2]>>2];c[n>>2]=0;while(1){if((c[n>
x3e;2]|0)>>>0>=(c[l>>2]|0)>>>0)break;Jn(c[g>>2]|0,c[n>>2]|0);c[
n>>2]=(c[n>>2]|0)+1}s=c[m>>2]|0;i=r;return s|0}function In(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;l=i;i=i+32|0;e=l+24|0;m=l+20|0;j=l+16|0;k=l+12|0;f=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[m>>2]=b;c[j
x3e;>2]=0;c[k>>2]=0;c[f>>2]=c[(c[m>>2]|0)+8>>2];c[h>>2]=c[c[m>>
2]>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>
;>0)break;if(!(c[j>>2]|0)){m=c[f>>2]|0;c[f>>2]=m+1;c[k>>2]=d[m>>0];c[j>
;>2]=128}if(c[k>>2]&c[j>>2]|0)Jn(c[e>>2]|0,c[g>>2]|0);c[j>>2]=c[j>
;>2]>>1;c[g>>2]=(c[g>>2]|0)+1}i=l;return}function Jn(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;k=i;i=i+32|0;d=k+20|0;l=k+16|0;f=k+12|0;h=k+8|0;e=k+4|0;g=k;c[d>>2]=a;c[l>>2]=b;c[f>>
2]=(c[(c[d>>2]|0)+8>>2]|0)+((c[l>>2]|0)*28|0);if((c[l>>2]|0)>>>0>=(c
[c[d>>2]>>2]|0)>>>0){i=k;return}if(c[(c[f>>2]|0)+16>>2]&4|0){i=k;return
}l=(c[f>>2]|0)+16|0;c[l>>2]=c[l>>2]|4;c[h>>2]=c[(c[d>>2]|0)+16>>2];c
[e>>2]=c[(c[d>>2]|0)+4>>2];c[(c[f>>2]|0)+20>>2]=0;while(1){if((c[e>>
2]|0)>>>0<=0)break;c[g>>2]=c[c[h>>2]>>2];if(Kn(c[f>>2]|0,c[g>
x3e;2]|0)|0){j=6;break}c[e>>2]=(c[e>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+4}if((j|0)==6)c[(c[f
x3e;>2]|0)+20>>2]=c[g>>2];if((c[(c[d>>2]|0)+4>>2]|0)>>>0>=(c[c[
d>>2]>>2]|0)>>>0){i=k;return}j=c[f>>2]|0;a=(c[d>>2]|0)+4|0;l=c[a>>
;2]|0;c[a>>2]=l+1;c[(c[(c[d>>2]|0)+16>>2]|0)+(l<<2)>>2]=j;i=k;return}function
Kn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(((c[c[d>>2]>
;>2]|0)+(c[(c[d>>2]|0)+4>>2]|0)|0)<(c[c[e>>2]>>2]|0)){b=0;b=b&1;i=f;return
b|0}b=((c[c[e>>2]>>2]|0)+(c[(c[e>>2]|0)+4>>2]|0)|0)>=(c[c[d>>2]>>
;2]|0);b=b&1;i=f;return b|0}function Ln(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;o=i;i=i+48|0;d=o+32|0;
k=o+28|0;j=o+24|0;l=o+20|0;g=o+16|0;e=o+12|0;m=o+8|0;h=o+4|0;f=o;c[d>>2]=a;c[k>>2]=0;a:while(1){if((c[k>
;>2]|0)>>>0>=(c[(c[d>>2]|0)+4>>2]|0)>>>0){n=17;break}c[j>>
2]=c[(c[(c[d>>2]|0)+12>>2]|0)+(c[k>>2]<<3)>>2];b:do if(c[(c[(c[d>>2]|
0)+12>>2]|0)+(c[k>>2]<<3)+4>>2]|0){c[l>>2]=c[j>>2];c[g>>2]=
c[l>>2];c[e>>2]=c[l>>2];do{c[g>>2]=c[c[g>>2]>>2];if((c[g>>
2]|0)==(c[j>>2]|0)){n=30;break a}}while((c[(c[g>>2]|0)+36>>2]|0)==(c[(c[l>>2]|0)+36>
;>2]|0));b=c[(c[g>>2]|0)+4>>2]|0;c[l>>2]=b;c[j>>2]=b;while(1){c[e>>2]=c[l
>>2];do{c[e>>2]=c[(c[e>>2]|0)+4>>2];if((c[e>>2]|0)==(c[j>>2]|0))break
b}while((c[(c[e>>2]|0)+36>>2]|0)==(c[(c[l>>2]|0)+36>>2]|0));a=c[(c[e>>2]|0)+36
>>2]|0;b=c[(c[l>>2]|0)+36>>2]|0;if((c[(c[g>>2]|0)+36>>2]|0)<(c[(c[l>
x3e;2]|0)+36>>2]|0)){if((a|0)<(b|0))n=14}else if((a|0)>(b|0))n=14;if((n|0)==14)while(1){n=0;b=(c[l>>
;2]|0)+16|0;c[b>>2]=c[b>>2]|64;c[l>>2]=c[(c[l>>2]|0)+4>>2];if((c[l>>
2]|0)!=(c[e>>2]|0))n=14;else break}c[g>>2]=c[c[e>>2]>>2];c[l>>2]=c[e>>
;2]}}while(0);c[k>>2]=(c[k>>2]|0)+1}if((n|0)==17)c[k>>2]=0;c:while(1){if((n|0)==30)c[k>>
2]=(c[k>>2]|0)+1;if((c[k>>2]|0)>>>0>=(c[c[d>>2]>>2]|0)>>
x3e;0)break;c[m>>2]=(c[(c[d>>2]|0)+8>>2]|0)+((c[k>>2]|0)*48|0);c[h>>2]=c[m>
;>2];c[f>>2]=c[m>>2];if(c[(c[m>>2]|0)+16>>2]&64|0){while(1){c[h>>2]=
c[c[h>>2]>>2];if((c[h>>2]|0)==(c[m>>2]|0)){n=30;continue c}if((c[(c[h>>2]|0)+40
>>2]|0)!=(c[(c[m>>2]|0)+40>>2]|0))break}while(1){c[f>>2]=c[(c[f>>2]|0)+4>
x3e;2];if((c[f>>2]|0)==(c[m>>2]|0)){n=30;continue c}if((c[(c[f>>2]|0)+40>>2]|0)!=(c[(c[m
>>2]|0)+40>>2]|0))break}}if((c[(c[h>>2]|0)+40>>2]|0)<(c[(c[m>>2]|0)+40>
;>2]|0)?(c[(c[f>>2]|0)+40>>2]|0)>(c[(c[m>>2]|0)+40>>2]|0):0){n=(c[m>>
;2]|0)+16|0;c[n>>2]=c[n>>2]|128;n=30;continue}if((c[(c[h>>2]|0)+40>>2]|0)<=(c[(c[m
x3e;>2]|0)+40>>2]|0)){n=30;continue}if((c[(c[f>>2]|0)+40>>2]|0)>=(c[(c[m>>2]|0
)+40>>2]|0)){n=30;continue}n=(c[m>>2]|0)+16|0;c[n>>2]=c[n>>2]|256;n=30}i=o;return}function
Mn(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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0;j=l
;c[m>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=c[(c[m>>2]|0)+8>
;>2];c[j>>2]=c[c[m>>2]>>2];while(1){if((c[j>>2]|0)>>>0<=0)break
;Nn(c[k>>2]|0,c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);c[j>>2]=(c[j>>2]|0)+-1;
c[k>>2]=(c[k>>2]|0)+28}i=l;return}function Nn(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;E=i;i=i+96|0;B=E+88|0;k=E+84|0;l=E+80|0;m=E+76|0;p=E+72|0;u=E
+68|0;h=E+64|0;D=E+60|0;C=E+56|0;w=E+52|0;q=E+48|0;v=E+36|0;t=E+32|0;s=E+28|0;r=E+24|0;o=E+20|0;n=E+16|0;y=E+12|0;A=E+8|0;x=E+4|
0;z=E;c[B>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[p>>2]=(c[k>>2]|0)+4+((
c[l>>2]|0)*204|0);c[u>>2]=c[(c[p>>2]|0)+196>>2];c[h>>2]=c[(c[p>>2]|0
)+200>>2];if(c[(c[B>>2]|0)+16>>2]&8|0){i=E;return}b=Mb(c[c[B>>2]>>2]|0,c[
u>>2]|0)|0;c[D>>2]=b+(c[h>>2]|0);c[C>>2]=Mb(c[(c[B>>2]|0)+4>>2]|0,c[
u>>2]|0)|0;if(!((c[l>>2]|0)==0?!(a[(c[m>>2]|0)+120>>0]|0):0))j=4;do if((j|0)==4){if((c[l
>>2]|0)==1?(a[(c[m>>2]|0)+121>>0]|0)==0:0)break;if((c[l>>2]|0)==0?d[(c[m>>2]|0
)+122>>0]|0:0)h=1;else if((c[l>>2]|0)==1)h=(d[(c[m>>2]|0)+123>>0]|0)!=0;else h=0;c[w>
;>2]=h&1;j=c[C>>2]|0;c[q>>2]=j;c[(c[B>>2]|0)+12>>2]=j;c[v>>2]=0;c[v+
4>>2]=0;c[v+8>>2]=0;if((c[l>>2]|0)==1)On((c[k>>2]|0)+412|0,(c[c[B>>2]>>
;2]|0)+(c[(c[B>>2]|0)+4>>2]|0)|0,c[c[B>>2]>>2]|0,v);switch(c[v>>2]|0){case 1:{
c[(c[B>>2]|0)+8>>2]=(c[v+4>>2]|0)-(c[q>>2]|0);break}case 2:{c[(c[B>>2]|0)+8>
;>2]=c[v+8>>2];break}case 3:{c[(c[B>>2]|0)+8>>2]=c[v+8>>2];c[(c[B>>2]|0)+
12>>2]=(c[v+4>>2]|0)-(c[v+8>>2]|0);break}default:{c[t>>2]=c[(c[B>>2]|0)+20>
;>2];if(c[t>>2]|0){if(!(c[(c[t>>2]|0)+16>>2]&8))Nn(c[t>>2]|0,c[k>>2]|
0,c[l>>2]|0,c[m>>2]|0);c[s>>2]=(c[c[t>>2]>>2]|0)+(c[(c[t>>2]|0)+4>
;>2]>>1);c[r>>2]=(c[(c[t>>2]|0)+8>>2]|0)+(c[(c[t>>2]|0)+12>>2]
x3e;>1);c[o>>2]=(c[c[B>>2]>>2]|0)+(c[(c[B>>2]|0)+4>>2]>>1);c[n
x3e;>2]=Mb((c[o>>2]|0)-(c[s>>2]|0)|0,c[u>>2]|0)|0;c[D>>2]=(c[r>>2]|0)+(c[
n>>2]|0)-(c[C>>2]>>1)}c[(c[B>>2]|0)+8>>2]=c[D>>2];c[(c[B>>
2]|0)+12>>2]=c[q>>2];do if(a[(c[m>>2]|0)+124>>0]|0){if((c[C>>2]|0)>64){c[
C>>2]=Pn(c[p>>2]|0,c[C>>2]|0,0)|0;break}if((c[C>>2]|0)>=32){c[D>>2]=(c[D
x3e;>2]|0)+(c[C>>2]>>1)&-64;c[C>>2]=64;break}h=(c[D>>2]|0)+32&-64;if((c[C
>>2]|0)<=0){c[D>>2]=h;break}c[y>>2]=h;c[A>>2]=(c[D>>2]|0)+(c[C>>
;2]|0)+32&-64;c[x>>2]=(c[y>>2]|0)-(c[D>>2]|0);c[z>>2]=(c[A>>2]|0)-((c[D
x3e;>2]|0)+(c[C>>2]|0));if((c[x>>2]|0)<0)c[x>>2]=0-(c[x>>2]|0);if((c[z>
x3e;2]|0)<0)c[z>>2]=0-(c[z>>2]|0);if((c[x>>2]|0)<=(c[z>>2]|0)){c[D>>
2]=c[y>>2];break}else{c[D>>2]=c[A>>2];break}}while(0);A=(c[D>>2]|0)+(Qn(c[D>>2
]|0,c[C>>2]|0)|0)|0;c[(c[B>>2]|0)+8>>2]=A;c[(c[B>>2]|0)+12>>2]=c[C>>
2]}}a:do if(c[w>>2]|0){c[D>>2]=c[(c[B>>2]|0)+8>>2];c[C>>2]=c[(c[B>>2
]|0)+12>>2];if((c[C>>2]|0)<64)c[C>>2]=64;else c[C>>2]=(c[C>>2]|0)+32&
;-64;switch(c[v>>2]|0){case 3:break a;case 1:{c[(c[B>>2]|0)+8>>2]=(c[v+4>>2]|0)-(c[C>
;>2]|0);c[(c[B>>2]|0)+12>>2]=c[C>>2];break a}case 2:{c[(c[B>>2]|0)+12>>2]=
c[C>>2];break a}default:{c[(c[B>>2]|0)+12>>2]=c[C>>2];h=(c[D>>2]|0)+(c[C>
x3e;2]>>1)|0;if(c[C>>2]&64|0)c[D>>2]=(h&-64)+32;else c[D>>2]=h+32&-64;c[(
c[B>>2]|0)+8>>2]=(c[D>>2]|0)-(c[C>>2]>>1);c[(c[B>>2]|0)+12>>
;2]=c[C>>2];break a}}}while(0);D=(c[B>>2]|0)+16|0;c[D>>2]=c[D>>2]|8;i=E;return}while(0);
c[(c[B>>2]|0)+8>>2]=c[D>>2];c[(c[B>>2]|0)+12>>2]=c[C>>2];D=(c[B>
;>2]|0)+16|0;c[D>>2]=c[D>>2]|8;i=E;return}function On(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;r=i;i=i+48|0;g=r+32|0;h=r+28|0;j=r+24|0;k=r+20|0;o=r+16|0;l=r+12|0;m=r+8|0;p=r+4|0;n=r;c[g>
x3e;2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[c[k>>2]>>2]=0;c[n>>2]=d[(c[
g>>2]|0)+2080>>0];c[o>>2]=c[g>>2];c[l>>2]=c[c[o>>2]>>2];c[
p>>2]=(c[o>>2]|0)+4;while(1){if((c[l>>2]|0)>>>0<=0)break;c[m>>2]=(c[
h>>2]|0)-(c[(c[p>>2]|0)+12>>2]|0);if((c[m>>2]|0)<(0-(c[(c[g>>2]|0)+2076
x3e;>2]|0)|0))break;if((c[h>>2]|0)<=((c[(c[p>>2]|0)+8>>2]|0)+(c[(c[g>>2]|0)+2076
>>2]|0)|0)){q=5;break}c[l>>2]=(c[l>>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+32}do if((q|0
)==5){if((c[n>>2]|0)==0?(c[m>>2]|0)>(c[(c[g>>2]|0)+2072>>2]|0):0)break;q=c[k>
x3e;2]|0;c[q>>2]=c[q>>2]|1;c[(c[k>>2]|0)+4>>2]=c[(c[p>>2]|0)+16>>2]}
while(0);c[o>>2]=(c[g>>2]|0)+516;c[l>>2]=c[c[o>>2]>>2];c[p>>2]=(c[o
x3e;>2]|0)+4+(c[l>>2]<<5)+-32;while(1){if((c[l>>2]|0)>>>0<=0){q=17;break}
c[m>>2]=(c[(c[p>>2]|0)+8>>2]|0)-(c[j>>2]|0);if((c[m>>2]|0)<(0-(c[(c[g>
;>2]|0)+2076>>2]|0)|0)){q=17;break}if((c[j>>2]|0)>=((c[(c[p>>2]|0)+12>>2]|0)-(
c[(c[g>>2]|0)+2076>>2]|0)|0)){q=13;break}c[l>>2]=(c[l>>2]|0)+-1;c[p>>2]=(c[p
x3e;>2]|0)+-32}if((q|0)==13){if((c[n>>2]|0)==0?(c[m>>2]|0)>=(c[(c[g>>2]|0)+2072>>
;2]|0):0){i=r;return}q=c[k>>2]|0;c[q>>2]=c[q>>2]|2;c[(c[k>>2]|0)+8>>2]=c[(c[p
x3e;>2]|0)+16>>2];i=r;return}else if((q|0)==17){i=r;return}}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;k=i;i=i+16|0;f=k+8|0;g=k+4|0;h=k+12|0;j=k;c[f>>2]=b;c[g>>2]=d;a[h>>0]=e;do if((c[g>
x3e;2]|0)>64){c[j>>2]=(c[g>>2]|0)-(c[(c[f>>2]|0)+4+4>>2]|0);if((c[j>>2]|0
)<0)c[j>>2]=0-(c[j>>2]|0);if((c[j>>2]|0)<40){d=c[(c[f>>2]|0)+4+4>>2]|
0;c[g>>2]=d;c[g>>2]=(c[g>>2]|0)<48?48:d}f=c[g>>2]|0;if((c[g>>2]|0)>=
192){c[g>>2]=f+32&-64;break}c[j>>2]=f&63;c[g>>2]=c[g>>2]&-64;f=c[j>
x3e;2]|0;if((c[j>>2]|0)<10){c[g>>2]=(c[g>>2]|0)+f;break}if((f|0)<32){c[g>>2]=(
c[g>>2]|0)+10;break}if((c[j>>2]|0)<54){c[g>>2]=(c[g>>2]|0)+54;break}else{c[g>
x3e;2]=(c[g>>2]|0)+(c[j>>2]|0);break}}else c[g>>2]=64;while(0);if(!(a[h>>0]|0)){j=c[g>
;>2]|0;i=k;return j|0}c[g>>2]=(c[g>>2]|0)+32&-64;j=c[g>>2]|0;i=k;return j|0}function Qn(
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;d=g+16|0;j=g+12|0;h=g+8|0;e=g+4|0;f=g;c[j>>2]=a;c[h>>
;2]=b;c[e>>2]=((c[j>>2]|0)+32&-64)-(c[j>>2]|0);c[f>>2]=((c[j>>2]|0)+(c[h
x3e;>2]|0)+32&-64)-(c[j>>2]|0)-(c[h>>2]|0);b=c[e>>2]|0;a=c[f>>2]|0;if((((c[e
x3e;>2]|0)<0?0-b|0:b)|0)<=(((c[f>>2]|0)<0?0-a|0:a)|0)){c[d>>2]=c[e>>2];j=c[d
x3e;>2]|0;i=g;return j|0}else{c[d>>2]=c[f>>2];j=c[d>>2]|0;i=g;return j|0}return 0}function Rn
(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;s=i;i=i+80|0;d=s+64|0;v=s+60|0;q=s
+56|0;k=s+52|0;m=s+48|0;h=s+44|0;j=s+40|0;u=s+36|0;t=s+32|0;r=s+28|0;l=s+24|0;e=s+20|0;n=s+16|0;f=s+12|0;o=s+8|0;g=s+4|0;p=s;c[d
>>2]=a;c[v>>2]=b;c[q>>2]=(c[d>>2]|0)+28+((c[v>>2]|0)*40|0);c[k>>2]=c
[(c[(c[q>>2]|0)+32>>2]|0)+8>>2];c[m>>2]=c[c[(c[q>>2]|0)+32>>2]>
x3e;2];c[h>>2]=0;c[j>>2]=(c[v>>2]|0)==0?1:2;c[u>>2]=(c[(c[d>>2]|0)+24>>
;2]|0)+4+((c[v>>2]|0)*204|0);c[t>>2]=c[(c[u>>2]|0)+196>>2];a=Vb(32,c[t>>2]|0)|
0;c[r>>2]=a;c[r>>2]=(c[r>>2]|0)>30?30:a;a:do if((c[m>>2]|0)>>>0>
;1?(c[c[d>>2]>>2]|0)>>>0>0:0){if((c[(c[k>>2]|0)+12>>2]|0)>>
;>0>(c[c[d>>2]>>2]|0)>>>0)b=c[c[d>>2]>>2]|0;else b=c[(c[k>
x3e;2]|0)+12>>2]|0;c[h>>2]=b;c[k>>2]=(c[k>>2]|0)+16;while(1){if((c[m>>2]|0)>
;>>0<=1)break a;if((c[(c[k>>2]|0)+12>>2]|0)>>>0>(c[c[d>>2]>
;>2]|0)>>>0)b=c[c[d>>2]>>2]|0;else b=c[(c[k>>2]|0)+12>>2]|0;c[l>
;>2]=b;c[e>>2]=(c[l>>2]|0)-(c[h>>2]|0);if((c[e>>2]|0)>0){c[n>>2]=(c[(
c[d>>2]|0)+8>>2]|0)+((c[h>>2]|0)*48|0);Sn(c[q>>2]|0,c[k>>2]|0);Un(c[q>>
;2]|0,c[n>>2]|0,c[e>>2]|0,c[r>>2]|0,c[j>>2]|0)}c[h>>2]=c[l>>2];c[m
x3e;>2]=(c[m>>2]|0)+-1;c[k>>2]=(c[k>>2]|0)+16}}while(0);if((c[m>>2]|0)==1){c[f>
;>2]=c[c[d>>2]>>2];c[o>>2]=c[(c[d>>2]|0)+8>>2];Sn(c[q>>2]|0,c[(
c[(c[q>>2]|0)+32>>2]|0)+8>>2]|0);Un(c[q>>2]|0,c[o>>2]|0,c[f>>2]|0,c[
r>>2]|0,c[j>>2]|0)}c[g>>2]=c[c[d>>2]>>2];c[p>>2]=c[(c[d>>2
]|0)+8>>2];while(1){if((c[g>>2]|0)>>>0<=0)break;if(c[(c[p>>2]|0)+32>>
;2]|0?(c[(c[p>>2]|0)+16>>2]&16|0)==0:0){v=(c[p>>2]|0)+16|0;c[v>>2]=c[v>>2
]|16}c[g>>2]=(c[g>>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+48}i=s;return}function Sn(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;t=i;i=i+64|0;e=t+56|0;u=t+52|0;q=t+48|0;s=t+44|0;h=t+40|0
;o=t+36|0;p=t+32|0;f=t+28|0;j=t+24|0;g=t+20|0;m=t+16|0;n=t+12|0;k=t+8|0;l=t+4|0;r=t;c[e>>2]=a;c[u>>2]=b;c[q
x3e;>2]=0;c[s>>2]=0;c[h>>2]=c[(c[u>>2]|0)+8>>2];c[p>>2]=c[c[u>>
2]>>2];c[f>>2]=0;Tn(c[e>>2]|0);c[o>>2]=0;while(1){if((c[o>>2]|0)>>
x3e;0>=(c[p>>2]|0)>>>0)break;if(!(c[q>>2]|0)){u=c[h>>2]|0;c[h>>2]=u+
1;c[s>>2]=d[u>>0];c[q>>2]=128}if(((c[s>>2]&c[q>>2]|0?(c[j>>2]=(
c[(c[e>>2]|0)+8>>2]|0)+((c[o>>2]|0)*28|0),(c[(c[j>>2]|0)+16>>2]&4|0)==0):
0)?(c[g>>2]=0,(c[g>>2]|0)==0):0)?(u=(c[j>>2]|0)+16|0,c[u>>2]=c[u>>2]|4,(c[f>
;>2]|0)>>>0<(c[c[e>>2]>>2]|0)>>>0):0){a=c[j>>2]|0;u=c[f>
;>2]|0;c[f>>2]=u+1;c[(c[(c[e>>2]|0)+12>>2]|0)+(u<<2)>>2]=a}c[q>>
;2]=c[q>>2]>>1;c[o>>2]=(c[o>>2]|0)+1}c[(c[e>>2]|0)+4>>2]=c[f>
x3e;2];c[r>>2]=c[(c[e>>2]|0)+12>>2];c[m>>2]=1;while(1){if((c[m>>2]|0)>=(c
[f>>2]|0))break;c[k>>2]=c[(c[r>>2]|0)+(c[m>>2]<<2)>>2];c[n>>
;2]=(c[m>>2]|0)-1;while(1){if((c[n>>2]|0)<0)break;c[l>>2]=c[(c[r>>2]|0)+(c[n>
x3e;2]<<2)>>2];if((c[c[l>>2]>>2]|0)<(c[c[k>>2]>>2]|0))break;c[(
c[r>>2]|0)+((c[n>>2]|0)+1<<2)>>2]=c[l>>2];c[(c[r>>2]|0)+(c[n>
x3e;2]<<2)>>2]=c[k>>2];c[n>>2]=(c[n>>2]|0)+-1}c[m>>2]=(c[m>>
;2]|0)+1}i=t;return}function Tn(a){a=a|0;var b=0,d=0,e=0,f=0;e=i;i=i+16|0;f=e+8|0;b=e+4|0;d=e;c[f>>2]=a;c[b>>
;2]=c[c[f>>2]>>2];c[d>>2]=c[(c[f>>2]|0)+8>>2];while(1){if((c[b>>2]|0
)>>>0<=0)break;f=(c[d>>2]|0)+16|0;c[f>>2]=c[f>>2]&-5;c[(c[d>>2]|
0)+24>>2]=-1;c[b>>2]=(c[b>>2]|0)+-1;c[d>>2]=(c[d>>2]|0)+28}i=e;return}function
Un(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,x=0,y=0,z=0,A=0,B=0
,C=0,D=0,E=0,F=0,G=0;F=i;i=i+96|0;G=F+88|0;h=F+84|0;j=F+80|0;k=F+76|0;l=F+72|0;D=F+68|0;A=F+64|0;C=F+60|0;B=F+56|0;x=F+52|0;q=F+
48|0;m=F+44|0;y=F+40|0;r=F+36|0;n=F+32|0;z=F+28|0;w=F+24|0;v=F+20|0;s=F+16|0;o=F+12|0;t=F+8|0;p=F+4|0;u=F;c[G>>2]=b;c[
h>>2]=d;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[D>>2]=c[(c[G>>2]|0)+12>
x3e;2];c[A>>2]=c[(c[G>>2]|0)+4>>2];while(1){if((c[j>>2]|0)>>>0<=0)break
;c[C>>2]=0;c[B>>2]=c[(c[h>>2]|0)+36>>2];a:do if(!(c[(c[h>>2]|0)+16>>
2]&16)){do if((a[(c[h>>2]|0)+20>>0]|0)!=(c[l>>2]|0)?(a[(c[h>>2]|0)+20>>0]|
0)!=(0-(c[l>>2]|0)|0):0){if((a[(c[h>>2]|0)+21>>0]|0)!=(c[l>>2]|0)?(a[(c[h>>2]|
0)+21>>0]|0)!=(0-(c[l>>2]|0)|0):0)break;c[C>>2]=a[(c[h>>2]|0)+21>>0]}else E=6;
while(0);if((E|0)==6){E=0;c[C>>2]=a[(c[h>>2]|0)+20>>0]}if(c[C>>2]|0){if((c[C>>
2]|0)==(c[l>>2]|0)){c[x>>2]=0;while(1){if((c[x>>2]|0)>>>0>=(c[A>>2]|
0)>>>0)break a;c[q>>2]=c[(c[D>>2]|0)+(c[x>>2]<<2)>>2];c[m>
x3e;2]=(c[B>>2]|0)-(c[c[q>>2]>>2]|0);if((c[m>>2]|0)<(c[k>>2]|0)?(0-(c[m
x3e;>2]|0)|0)<(c[k>>2]|0):0)break;c[x>>2]=(c[x>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G
>>2]=c[G>>2]|16;G=(c[h>>2]|0)+16|0;c[G>>2]=c[G>>2]|512;c[(c[h>>2]|0)+
32>>2]=c[q>>2];break}if((c[C>>2]|0)!=(0-(c[l>>2]|0)|0))break;c[y>>2]=0;while(1
){if((c[y>>2]|0)>>>0>=(c[A>>2]|0)>>>0)break a;c[r>>2]=c[(c[D>
;>2]|0)+(c[y>>2]<<2)>>2];c[n>>2]=(c[B>>2]|0)-(c[c[r>>2]>
x3e;2]|0)-(c[(c[r>>2]|0)+4>>2]|0);if((c[n>>2]|0)<(c[k>>2]|0)?(0-(c[n>>2]|
0)|0)<(c[k>>2]|0):0)break;c[y>>2]=(c[y>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>2
]=c[G>>2]|16;G=(c[h>>2]|0)+16|0;c[G>>2]=c[G>>2]|1024;c[(c[h>>2]|0)+32>>
;2]=c[r>>2];break}if(c[(c[h>>2]|0)+16>>2]&64|0){if((c[l>>2]|0)==2){c[w>>2
]=128;c[v>>2]=256}else{c[w>>2]=256;c[v>>2]=128}b:do if(!(c[(c[h>>2]|0)+16>>2]
x26;c[w>>2]|0)){if(c[(c[h>>2]|0)+16>>2]&c[v>>2]|0){c[z>>2]=0;while(1){if((
c[z>>2]|0)>>>0>=(c[A>>2]|0)>>>0)break b;c[t>>2]=c[(c[D>>
;2]|0)+(c[z>>2]<<2)>>2];c[p>>2]=(c[B>>2]|0)-(c[c[t>>2]>>2]|
0)-(c[(c[t>>2]|0)+4>>2]|0);if((c[p>>2]|0)<(c[k>>2]|0)?(0-(c[p>>2]|0)|0)
x3c;(c[k>>2]|0):0)break;c[z>>2]=(c[z>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>2]=c[G
x3e;>2]|1024;c[(c[h>>2]|0)+32>>2]=c[t>>2];G=(c[h>>2]|0)+16|0;c[G>>2]=c[G
x3e;>2]|16}}else{c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[A>>2]|0)>
x3e;>0)break b;c[s>>2]=c[(c[D>>2]|0)+(c[z>>2]<<2)>>2];c[o>>2]=(
c[B>>2]|0)-(c[c[s>>2]>>2]|0);if((c[o>>2]|0)<(c[k>>2]|0)?(0-(c[o>>
;2]|0)|0)<(c[k>>2]|0):0)break;c[z>>2]=(c[z>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>
;2]=c[G>>2]|512;c[(c[h>>2]|0)+32>>2]=c[s>>2];G=(c[h>>2]|0)+16|0;c[G>>
;2]=c[G>>2]|16}while(0);if(!(c[(c[h>>2]|0)+32>>2]|0)){c[z>>2]=0;while(1){if((c[z>
x3e;2]|0)>>>0>=(c[A>>2]|0)>>>0)break a;c[u>>2]=c[(c[D>>2]|0)+(c
[z>>2]<<2)>>2];if((c[B>>2]|0)>=(c[c[u>>2]>>2]|0)?(c[B>>
;2]|0)<=((c[c[u>>2]>>2]|0)+(c[(c[u>>2]|0)+4>>2]|0)|0):0)break;c[z>>2]=(c[
z>>2]|0)+1}c[(c[h>>2]|0)+32>>2]=c[u>>2]}}}while(0);c[j>>2]=(c[j>>2]|
0)+-1;c[h>>2]=(c[h>>2]|0)+48}i=F;return}function Vn(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;q=i;i=i+48|0;f=q+36|0;r=q+32|0;m=q+28|0;o=q+24|0;k=q+20|0;g=q+16|0;l=q+12|0;n=q+8|0;h=q+4|0;j=q;c[f>>2]=b
;c[r>>2]=e;c[k>>2]=c[c[r>>2]>>2];c[l>>2]=c[(c[r>>2]|0)+8>>
2];while(1){if((c[k>>2]|0)>>>0<=0)break;if(!((((a[(c[l>>2]|0)+20>>0]|0)!=2?(a[(
c[l>>2]|0)+20>>0]|0)!=-2:0)?(a[(c[l>>2]|0)+21>>0]|0)!=2:0)?(a[(c[l>>2]|0)+21
x3e;>0]|0)!=-2:0))p=7;a:do if((p|0)==7?(p=0,(c[(c[l>>2]|0)+16>>2]&16|0)==0):0){c[n>>2]=c
[(c[l>>2]|0)+36>>2];c[m>>2]=c[f>>2];c[g>>2]=c[c[m>>2]>>2];
c[o>>2]=(c[m>>2]|0)+4;while(1){if((c[g>>2]|0)>>>0<=0)break;c[h>>2]=(
c[n>>2]|0)-(c[(c[o>>2]|0)+12>>2]|0);if((c[h>>2]|0)<(0-(c[(c[f>>2]|0)+2076
>>2]|0)|0))break;do if((c[n>>2]|0)<=((c[(c[o>>2]|0)+8>>2]|0)+(c[(c[f>>2]|
0)+2076>>2]|0)|0)){if((d[(c[f>>2]|0)+2080>>0]|0)==0?(c[h>>2]|0)>(c[(c[f>>
2]|0)+2072>>2]|0):0)break;c[(c[l>>2]|0)+44>>2]=c[(c[o>>2]|0)+24>>2];r=(c[l>
;>2]|0)+16|0;c[r>>2]=c[r>>2]|16;r=(c[l>>2]|0)+16|0;c[r>>2]=c[r>>2]|32}while
(0);c[g>>2]=(c[g>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+32}c[m>>2]=(c[f>>2]|0
)+516;c[g>>2]=c[c[m>>2]>>2];c[o>>2]=(c[m>>2]|0)+4+(c[g>>2]<<
;5)+-32;while(1){if((c[g>>2]|0)>>>0<=0)break a;c[j>>2]=(c[(c[o>>2]|0)+8>
x3e;2]|0)-(c[n>>2]|0);if((c[j>>2]|0)<(0-(c[(c[f>>2]|0)+2076>>2]|0)|0))break a;do if
((c[n>>2]|0)>=((c[(c[o>>2]|0)+12>>2]|0)-(c[(c[f>>2]|0)+2076>>2]|0)|0)){if
((d[(c[f>>2]|0)+2080>>0]|0)==0?(c[j>>2]|0)>=(c[(c[f>>2]|0)+2072>>2]|0):0)
break;c[(c[l>>2]|0)+44>>2]=c[(c[o>>2]|0)+28>>2];r=(c[l>>2]|0)+16|0;c[r>
x3e;2]=c[r>>2]|16;r=(c[l>>2]|0)+16|0;c[r>>2]=c[r>>2]|32}while(0);c[g>>2]=(c[g
x3e;>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+-32}}while(0);c[k>>2]=(c[k>>2]|0)+-1;c[l>>
;2]=(c[l>>2]|0)+48}i=q;return}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,l=0,m=0;j=i;i=i+32|0;k=j+28
|0;m=j+24|0;l=j+20|0;h=j+16|0;d=j+12|0;g=j+8|0;f=j+4|0;e=j;c[k>>2]=a;c[m>>2]=b;c[l>>2]=(c[(c[k>
;>2]|0)+24>>2]|0)+4+((c[m>>2]|0)*204|0);c[h>>2]=c[(c[l>>2]|0)+196>>2];c[d
>>2]=c[c[k>>2]>>2];c[g>>2]=c[(c[k>>2]|0)+8>>2];while(1){if((c[d>
;>2]|0)>>>0<=0)break;c[f>>2]=c[(c[g>>2]|0)+32>>2];if(c[f>>2]|0){
do if(!(c[(c[g>>2]|0)+16>>2]&512|0)){if(c[(c[g>>2]|0)+16>>2]&1024|0){c[(c[g>
;>2]|0)+44>>2]=(c[(c[f>>2]|0)+8>>2]|0)+(c[(c[f>>2]|0)+12>>2]|0);break}c[e
>>2]=(c[(c[g>>2]|0)+36>>2]|0)-(c[c[f>>2]>>2]|0);if((c[e>>2]|0)<=
0){m=c[(c[f>>2]|0)+8>>2]|0;m=m+(Mb(c[e>>2]|0,c[h>>2]|0)|0)|0;c[(c[g>>2]|0)+44
x3e;>2]=m;break}b=c[(c[f>>2]|0)+8>>2]|0;if((c[e>>2]|0)>=(c[(c[f>>2]|0)+4>
x3e;2]|0)){m=b+(c[(c[f>>2]|0)+12>>2]|0)|0;m=m+(Mb((c[e>>2]|0)-(c[(c[f>>2]|0)+4>>
;2]|0)|0,c[h>>2]|0)|0)|0;c[(c[g>>2]|0)+44>>2]=m;break}else{m=b+(xb(c[e>>2]|0,c[(c[f>
;>2]|0)+12>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0)|0;c[(c[g>>2]|0)+44>>2]=m;break
}}else c[(c[g>>2]|0)+44>>2]=c[(c[f>>2]|0)+8>>2];while(0);m=(c[g>>2]|0)+16|0;c[
m>>2]=c[m>>2]|32}c[d>>2]=(c[d>>2]|0)+-1;c[g>>2]=(c[g>>2]|0)+48}i=j;return
}function Xn(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;t=i;i=i+128|0;u=t+124|
0;w=t+120|0;v=t+116|0;p=t+112|0;k=t+108|0;q=t+104|0;r=t+40|0;m=t+36|0;g=t+32|0;o=t+28|0;n=t+24|0;e=t+20|0;f=t+16|0;j=t+12|0;h=t+
8|0;l=t+4|0;s=t;c[u>>2]=b;c[w>>2]=d;c[v>>2]=(c[(c[u>>2]|0)+24>>2]|0)+4+((c[w
x3e;>2]|0)*204|0);c[p>>2]=c[(c[v>>2]|0)+196>>2];c[k>>2]=c[(c[u>>2]|0)+16
x3e;>2];c[q>>2]=0;c[m>>2]=0;c[g>>2]=c[(c[u>>2]|0)+8>>2];c[o>>2]=(
c[g>>2]|0)+((c[c[u>>2]>>2]|0)*48|0);c[n>>2]=c[g>>2];while(1){if((c[n>>
;2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(c[(c[n>>2]|0)+16>>2]&
16|0)c[m>>2]=(c[m>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+48}if(!(c[m>>2]|0)){i=t;return}
if((c[m>>2]|0)>>>0>16){c[q>>2]=hc(c[k>>2]|0,4,0,c[m>>2]|0,0,e)|0;if(
c[e>>2]|0){i=t;return}}else c[q>>2]=r;c[m>>2]=0;c[n>>2]=c[g>>2];while(1){if((c
[n>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(c[(c[n>>2]|0)+16>
x3e;2]&16|0){c[f>>2]=(c[q>>2]|0)+(c[m>>2]<<2);while(1){if((c[f>>2]|0)>
;>>0<=(c[q>>2]|0)>>>0)break;if((c[(c[(c[f>>2]|0)+-4>>2]|0)+36>
x3e;2]|0)<=(c[(c[n>>2]|0)+36>>2]|0))break;c[c[f>>2]>>2]=c[(c[f>>2]|0)+-4
x3e;>2];c[f>>2]=(c[f>>2]|0)+-4}c[c[f>>2]>>2]=c[n>>2];c[m>>2]=(c
[m>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+48}c[n>>2]=c[g>>2];while(1){if((c[n>>
;2]|0)>>>0>=(c[o>>2]|0)>>>0)break;do if(!(c[(c[n>>2]|0)+16>>2]
x26;16)){if(c[(c[n>>2]|0)+12>>2]&2|0){if((a[(c[n>>2]|0)+20>>0]|0)==4)break;if((a[(c
[n>>2]|0)+20>>0]|0)!=(a[(c[n>>2]|0)+21>>0]|0))break;if((c[(c[n>>2]|0)+16>
x3e;2]&64|0)==0?(c[(c[n>>2]|0)+12>>2]&4|0)==0:0)break;w=(c[n>>2]|0)+12|0;c[w>>
2]=c[w>>2]&-3}c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[m>>2]|0
)>>>0)break;if((c[(c[(c[q>>2]|0)+(c[l>>2]<<2)>>2]|0)+36>>2]|0)
x3e;(c[(c[n>>2]|0)+36>>2]|0))break;c[l>>2]=(c[l>>2]|0)+1}do if(c[l>>2]|0){c[j
x3e;>2]=c[(c[q>>2]|0)+((c[l>>2]|0)-1<<2)>>2];c[l>>2]=c[m>>2];while
(1){if((c[l>>2]|0)>>>0<=0)break;if((c[(c[(c[q>>2]|0)+((c[l>>2]|0)-1<<
;2)>>2]|0)+36>>2]|0)<(c[(c[n>>2]|0)+36>>2]|0))break;c[l>>2]=(c[l>>
;2]|0)+-1}d=c[l>>2]|0;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=c[(c[q>>2]|0)+(d-1
x3c;<2)>>2];w=c[(c[j>>2]|0)+44>>2]|0;w=w+(Mb((c[(c[n>>2]|0)+36>>2]|0)-(c[(
c[j>>2]|0)+36>>2]|0)|0,c[p>>2]|0)|0)|0;c[(c[n>>2]|0)+44>>2]=w;break}c[h>
x3e;2]=c[(c[q>>2]|0)+(d<<2)>>2];c[s>>2]=c[(c[n>>2]|0)+36>>2];if((c[s
>>2]|0)==(c[(c[j>>2]|0)+36>>2]|0)){c[(c[n>>2]|0)+44>>2]=c[(c[j>>2]|0
)+44>>2];break}if((c[s>>2]|0)==(c[(c[h>>2]|0)+36>>2]|0)){c[(c[n>>2]|0)+44>
;>2]=c[(c[h>>2]|0)+44>>2];break}else{w=c[(c[j>>2]|0)+44>>2]|0;w=w+(xb((c[s>>
;2]|0)-(c[(c[j>>2]|0)+36>>2]|0)|0,(c[(c[h>>2]|0)+44>>2]|0)-(c[(c[j>>2]|0)+44
x3e;>2]|0)|0,(c[(c[h>>2]|0)+36>>2]|0)-(c[(c[j>>2]|0)+36>>2]|0)|0)|0)|0;c[(c[n>
x3e;2]|0)+44>>2]=w;break}}else{c[h>>2]=c[c[q>>2]>>2];w=c[(c[h>>2]|0)+44>
x3e;2]|0;w=w+(Mb((c[(c[n>>2]|0)+36>>2]|0)-(c[(c[h>>2]|0)+36>>2]|0)|0,c[p>>2]|0
)|0)|0;c[(c[n>>2]|0)+44>>2]=w}while(0);w=(c[n>>2]|0)+16|0;c[w>>2]=c[w>>2]|32}while
(0);c[n>>2]=(c[n>>2]|0)+48}if((c[q>>2]|0)==(r|0)){i=t;return}Fb(c[k>>2]|0,c[q>>
;2]|0);c[q>>2]=0;i=t;return}function Yn(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;v=i;i=i+80|0;w=v+76|0;y=v+72|0;x=v+68|0;s=v+64|0;h=v+60|0;d=v+56|0;m=v+52|0;u=v+48|0;j=v+44|0;l=v+40|
0;r=v+36|0;k=v+32|0;n=v+28|0;o=v+24|0;e=v+20|0;f=v+16|0;q=v+12|0;p=v+8|0;g=v+4|0;t=v;c[w>>2]=a;c[y>>2]=b;c[x
>>2]=(c[(c[w>>2]|0)+24>>2]|0)+4+((c[y>>2]|0)*204|0);c[s>>2]=c[(c[x>>
2]|0)+196>>2];c[h>>2]=c[(c[x>>2]|0)+200>>2];c[d>>2]=c[(c[w>>2]|0)+12
>>2];c[m>>2]=c[(c[w>>2]|0)+4>>2];while(1){if((c[m>>2]|0)>>>0<
;=0)break;c[u>>2]=c[c[d>>2]>>2];c[l>>2]=(c[u>>2]|0)+((c[(c[d>>2]|0)+
4>>2]|0)*48|0);c[k>>2]=0;c[j>>2]=0;c[r>>2]=c[u>>2];while(1){if((c[r>>
;2]|0)>>>0>=(c[l>>2]|0)>>>0)break;if(c[(c[r>>2]|0)+16>>2]&
32|0){if(!(c[j>>2]|0))c[j>>2]=c[r>>2];c[k>>2]=(c[k>>2]|0)+1}c[r>>2]=(
c[r>>2]|0)+48}a:do if((c[k>>2]|0)>>>0<2){if((c[k>>2]|0)==1){y=c[(c[j>>
;2]|0)+44>>2]|0;c[h>>2]=y-(Mb(c[(c[j>>2]|0)+36>>2]|0,c[s>>2]|0)|0)}c[r>
x3e;2]=c[u>>2];while(1){if((c[r>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break
a;if((c[r>>2]|0)!=(c[j>>2]|0)){y=Mb(c[(c[r>>2]|0)+36>>2]|0,c[s>>2]|0)|0;c[(c[
r>>2]|0)+44>>2]=y+(c[h>>2]|0)}c[r>>2]=(c[r>>2]|0)+48}}else{c[u>>2]=c
[j>>2];do{c[r>>2]=c[j>>2];while(1){c[l>>2]=c[(c[j>>2]|0)+4>>2];if((c
[l>>2]|0)==(c[u>>2]|0))break a;if(!(c[(c[l>>2]|0)+16>>2]&32))break;c[j>>2
]=c[l>>2]}do c[l>>2]=c[(c[l>>2]|0)+4>>2];while(!(c[(c[l>>2]|0)+16>>2
]&32|0));if((c[(c[j>>2]|0)+36>>2]|0)<=(c[(c[l>>2]|0)+36>>2]|0)){c[n>>
;2]=c[(c[j>>2]|0)+36>>2];c[e>>2]=c[(c[j>>2]|0)+44>>2];c[o>>2]=(c[(c[
l>>2]|0)+36>>2]|0)-(c[n>>2]|0);c[f>>2]=(c[(c[l>>2]|0)+44>>2]|0)-(c[e
>>2]|0)}else{c[n>>2]=c[(c[l>>2]|0)+36>>2];c[e>>2]=c[(c[l>>2]|0)+44
x3e;>2];c[o>>2]=(c[(c[j>>2]|0)+36>>2]|0)-(c[n>>2]|0);c[f>>2]=(c[(c[j>
;>2]|0)+44>>2]|0)-(c[e>>2]|0)}c[t>>2]=65536;if((c[o>>2]|0)>0)c[t>>2]=
Vb(c[f>>2]|0,c[o>>2]|0)|0;c[r>>2]=c[(c[j>>2]|0)+4>>2];do{c[q>>2]=c[(
c[r>>2]|0)+36>>2];c[p>>2]=(c[q>>2]|0)-(c[n>>2]|0);do if((c[p>>2]|0)
x3e;0){b=c[e>>2]|0;if((c[p>>2]|0)>=(c[o>>2]|0)){y=b+(c[f>>2]|0)|0;c[g>>2]=
y+(Mb((c[p>>2]|0)-(c[o>>2]|0)|0,c[s>>2]|0)|0);break}else{c[g>>2]=b+(Mb(c[p>>2]|
0,c[t>>2]|0)|0);break}}else{y=c[e>>2]|0;c[g>>2]=y+(Mb(c[p>>2]|0,c[s>>2]|0)|0)}
while(0);c[(c[r>>2]|0)+44>>2]=c[g>>2];c[r>>2]=c[(c[r>>2]|0)+4>>2]}while
((c[r>>2]|0)!=(c[l>>2]|0));c[j>>2]=c[l>>2]}while((c[j>>2]|0)!=(c[u>>
2]|0))}while(0);c[m>>2]=(c[m>>2]|0)+-1;c[d>>2]=(c[d>>2]|0)+8}i=v;return}function Zn(b,d){
b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0;j=l;c[e>>2]=b;c[f
x3e;>2]=d;c[h>>2]=c[(c[e>>2]|0)+8>>2];c[k>>2]=c[(c[(c[e>>2]|0)+20>
x3e;2]|0)+4>>2];c[j>>2]=c[(c[(c[e>>2]|0)+20>>2]|0)+8>>2];c[g>>2]=0;while
(1){if((c[g>>2]|0)>>>0>=(c[c[e>>2]>>2]|0)>>>0)break;d=c[(c[h>
;>2]|0)+44>>2]|0;b=(c[k>>2]|0)+(c[g>>2]<<3)|0;if(!(c[f>>2]|0))c[b>
x3e;2]=d;else c[b+4>>2]=d;if(c[(c[h>>2]|0)+16>>2]&16|0){b=(c[j>>2]|0)+(c[g>>
;2]|0)|0;a[b>>0]=a[b>>0]|(((c[f>>2]|0)==0?32:64)&255)<<24>>24}c[h>
x3e;2]=(c[h>>2]|0)+48;c[g>>2]=(c[g>>2]|0)+1}i=l;return}function _n(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]|0)+16>>2];$n((c[d>>2]|0)+28+40
|0,c[e>>2]|0);$n((c[d>>2]|0)+28|0,c[e>>2]|0);Fb(c[e>>2]|0,c[(c[d>>2]|0)+8>
;>2]|0);c[(c[d>>2]|0)+8>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+12>>2]|0);c[(c[d
>>2]|0)+12>>2]=0;c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>
x3e;2]|0)+16>>2]=0;i=b;return}function $n(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2
]=0;c[(c[e>>2]|0)+20>>2]=0;c[(c[e>>2]|0)+28>>2]=0;Fb(c[f>>2]|0,c[(c[e>>
;2]|0)+12>>2]|0);c[(c[e>>2]|0)+12>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>
;2]|0);c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[c[e>>2]>>2]=0;c
[(c[e>>2]|0)+16>>2]=0;i=d;return}function ao(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;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c
[a+20>>2]=0;c[a+24>>2]=0;c[(c[d>>2]|0)+4>>2]=38;c[(c[d>>2]|0)+8>>2]=
108;c[(c[d>>2]|0)+12>>2]=11;c[(c[d>>2]|0)+16>>2]=12;c[(c[d>>2]|0)+20>>
;2]=15;c[(c[d>>2]|0)+24>>2]=24;i=b;return}function bo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2
]=a;dn(c[d>>2]|0,2);i=b;return}function co(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;o=
i;i=i+160|0;f=o+156|0;g=o+152|0;h=o+148|0;j=o+144|0;l=o+16|0;n=o+8|0;k=o+4|0;m=o;c[f>>2]=a;c[g>>2]=b;c[h>
;>2]=d;c[j>>2]=e;c[m>>2]=c[h>>2];c[n>>2]=0;while(1){if((c[m>>2]|0)<=
0)break;a=c[m>>2]|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>16?16:a;c[k>>2]=0;while
(1){if((c[k>>2]|0)>=(c[h>>2]<<1|0))break;c[n>>2]=(c[n>>2]|0)+(c[(c[j>
;>2]|0)+(c[k>>2]<<2)>>2]|0);a=(Tb(c[n>>2]|0)|0)>>16;c[l+(c[k>>2
]<<2)>>2]=a;c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)
x3e;=(c[h>>2]<<1|0))break;c[l+((c[k>>2]|0)+1<<2)>>2]=(c[l+((c[k>>2]|
0)+1<<2)>>2]|0)-(c[l+(c[k>>2]<<2)>>2]|0);c[k>>2]=(c[k>>2]|
0)+2}pn(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,l);c[m>>2]=(c[m>>2]|0)-(c[h>>2
]|0)}i=o;return}function eo(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;p=i;i=i+48|0;f=p+32|0;g
=p+28|0;h=p+24|0;j=p+20|0;n=p+16|0;m=p+12|0;o=p+8|0;k=p+4|0;l=p;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j
x3e;>2]=e;if(c[(c[f>>2]|0)+4>>2]|0){i=p;return}c[m>>2]=(c[f>>2]|0)+16;c[o>>
;2]=c[c[f>>2]>>2];c[k>>2]=c[c[m>>2]>>2];c[l>>2]=c[(c[m>>2]|
0)+36>>2];if((c[h>>2]|0)!=((c[k>>2]|0)+(c[l>>2]|0)|0)){i=p;return}c[n>>2]=fo(c
[m>>2]|0,c[j>>2]|0,c[l>>2]|0,c[k>>2]|0,c[g>>2]|0,c[o>>2]|0)|0;if((c[
n>>2]|0)==0?(c[n>>2]=fo((c[m>>2]|0)+36|0,c[j>>2]|0,0,c[l>>2]|0,c[g>>
2]|0,c[o>>2]|0)|0,(c[n>>2]|0)==0):0){i=p;return}c[(c[f>>2]|0)+4>>2]=c[n>>2];i=
p;return}function fo(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;o=i;i=i+32|0;h=o+24|0;
j=o+20|0;k=o+16|0;l=o+12|0;p=o+8|0;m=o+4|0;n=o;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c
[p>>2]=f;c[m>>2]=g;c[n>>2]=0;c[n>>2]=Bn(c[h>>2]|0,c[p>>2]|0,c[m>
;>2]|0)|0;if(c[n>>2]|0){p=c[n>>2]|0;i=o;return p|0}c[n>>2]=go((c[h>>2]|0)+12|0,c[j
x3e;>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;p=c[n>>2]|0;i=o;return p|0}function go(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;u=i;i=i+48|0;v=u+44|0;j=u+40|0;k
=u+36|0;l=u+32|0;m=u+28|0;n=u+24|0;o=u+20|0;p=u+16|0;q=u+12|0;t=u+8|0;s=u+4|0;r=u;c[v>>2]=b;c[j>>2]=e;c[k>
;>2]=f;c[l>>2]=g;c[m>>2]=h;c[n>>2]=0;c[n>>2]=tn(c[v>>2]|0,c[m>>
2]|0,o)|0;if(c[n>>2]|0){v=c[n>>2]|0;i=u;return v|0}c[n>>2]=mn(c[o>>2]|0,c[l>>2
]|0,c[m>>2]|0)|0;if(c[n>>2]|0){v=c[n>>2]|0;i=u;return v|0}c[c[o>>2]>>2]=c[l>
;>2];c[p>>2]=(c[j>>2]|0)+((c[k>>2]|0)>>>3);c[q>>2]=128>>(c
[k>>2]&7);c[t>>2]=c[(c[o>>2]|0)+8>>2];c[s>>2]=128;while(1){if((c[l>
x3e;2]|0)>>>0<=0)break;c[r>>2]=(d[c[t>>2]>>0]|0)&~c[s>>2];if((d
[c[p>>2]>>0]|0)&c[q>>2]|0)c[r>>2]=c[r>>2]|c[s>>2];a[c[t>
x3e;2]>>0]=c[r>>2];c[q>>2]=c[q>>2]>>1;if(!(c[q>>2]|0)){c[p>>
;2]=(c[p>>2]|0)+1;c[q>>2]=128}c[s>>2]=c[s>>2]>>1;if(!(c[s>>2]|0)){c[
t>>2]=(c[t>>2]|0)+1;c[s>>2]=128}c[l>>2]=(c[l>>2]|0)+-1}v=c[n>>2]|0;i
=u;return v|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,m=0,n=0;n=i;i=i+32|0;e=n+28|0;f=n+24|0;g=n+20
|0;l=n+16|0;k=n+12|0;m=n+8|0;h=n+4|0;j=n;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[(c[e>>2]|0)+
4>>2]|0){i=n;return}c[k>>2]=(c[e>>2]|0)+16;c[m>>2]=c[c[e>>2]>>2];c[h
>>2]=c[c[k>>2]>>2];c[j>>2]=c[(c[k>>2]|0)+36>>2];if((c[f>>2
]|0)!=((c[h>>2]|0)+(c[j>>2]|0)|0)){i=n;return}c[l>>2]=fo(c[k>>2]|0,c[g>>2]|0,0
,c[h>>2]|0,0,c[m>>2]|0)|0;if((c[l>>2]|0)==0?(c[l>>2]=fo((c[k>>2]|0)+36|0,c[g
x3e;>2]|0,c[h>>2]|0,c[j>>2]|0,0,c[m>>2]|0)|0,(c[l>>2]|0)==0):0){i=n;return}c[(c[e
x3e;>2]|0)+4>>2]=c[l>>2];i=n;return}function io(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)+120>>2]=0;c[(c[d>>2]|0)+148>>2]=0;jo((c[d>>2]|0)+20|0);i=b;return
}function jo(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]>
x3e;2];ko((c[d>>2]|0)+16|0,c[e>>2]|0);ko((c[d>>2]|0)+16+36|0,c[e>>2]|0);c[(c[d>>
;2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;i=b;return}function ko(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;lo((c[f>>2]|0)+24|0,c[e>>2]|0);lo((c[f>>2]|0
)+12|0,c[e>>2]|0);no(c[f>>2]|0,c[e>>2]|0);i=d;return}function lo(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|
0)+4>>2];c[g>>2]=c[(c[d>>2]|0)+8>>2];while(1){if((c[f>>2]|0)>>>
0<=0)break;mo(c[g>>2]|0,c[e>>2]|0);c[f>>2]=(c[f>>2]|0)+-1;c[g>>2]=(c[g>
;>2]|0)+16}Fb(c[e>>2]|0,c[(c[d>>2]|0)+8>>2]|0);c[(c[d>>2]|0)+8>>2]=0;c[c[
d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;i=h;return}function mo(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>2
]|0);c[(c[e>>2]|0)+8>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[(
c[e>>2]|0)+12>>2]=0;i=d;return}function no(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>2]|0);c[(c[e>>2]|0)+8>
;>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;i=d;return}function oo(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;
c[c[e>>2]>>2]=0;c[g>>2]=bc(c[d>>2]|0,24,f)|0;if(c[f>>2]|0){g=c[f>>2]|
0;i=h;return g|0}c[(c[g>>2]|0)+8>>2]=c[d>>2];po(c[g>>2]|0);c[c[e>>2]>>
;2]=c[g>>2];g=c[f>>2]|0;i=h;return g|0}function po(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a
;c[d>>2]=c[d>>2];i=b;return}function qo(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;e=j+12
|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(!(c[e>>2]|0)){i=j;return}if((c[f
>>2]|0)!=0&(c[g>>2]|0)>=3076){c[h>>2]=c[f>>2];c[c[e>>2]>>2
]=(c[f>>2]|0)+1032;c[(c[e>>2]|0)+4>>2]=(c[f>>2]|0)+(c[g>>2]|0)-(c[c[e>>
;2]>>2]|0);c[(c[e>>2]|0)+12>>2]=c[h>>2];i=j;return}else{c[c[e>>2]>>2
]=0;c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+12>>2]=0;i=j;return}}function ro(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;c[h
x3e;>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>>2];i=e;return}function so(a,
d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l+20|0;e=l+16|0;j=l+12|0;f=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c
[j>>2]=d;c[f>>2]=c[(c[j>>2]|0)+4>>2];c[g>>2]=c[c[j>>2]>>2];
if((c[e>>2]|0?c[c[e>>2]>>2]|0:0)?c[(c[e>>2]|0)+4>>2]|0:0){if(!(c[f>>
2]|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}if(b[(c[f>>2]|0)+2>>1]|0?(b[c[f>>
2]>>1]|0)>0:0){if(c[(c[f>>2]|0)+12>>2]|0?c[(c[f>>2]|0)+4>>2]|0:0){if((b[(
c[f>>2]|0)+2>>1]|0)!=((b[(c[(c[f>>2]|0)+12>>2]|0)+((b[c[f>>2]>>1]|0)-
1<<1)>>1]|0)+1|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}c[h>>2]=c[(c[e>
x3e;2]|0)+12>>2];if(c[(c[j>>2]|0)+8>>2]&2|0){c[k>>2]=19;k=c[k>>2]|0;i=l;return
k|0}if(!(c[g>>2]|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}if(c[(c[g>>2]|0)+4>>
;2]|0?c[c[g>>2]>>2]|0:0){if(!(c[(c[g>>2]|0)+12>>2]|0)){c[k>>2]=20;k=c[k>
x3e;2]|0;i=l;return k|0}a=(c[h>>2]|0)+128|0;d=c[f>>2]|0;c[a>>2]=c[d>>2];c[a+4>>
;2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];c[a+16>>2]=c
[d+16>>2];a=(c[h>>2]|0)+104|0;g=c[g>>2]|0;c[a>>2]=c[g>>2];c[a+4>>2]=
c[g+4>>2];c[a+8>>2]=c[g+8>>2];c[a+12>>2]=c[g+12>>2];c[a+16>>2]=c[g+16
>>2];c[a+20>>2]=c[g+20>>2];c[(c[h>>2]|0)+28>>2]=c[c[e>>2]>>
;2];c[(c[h>>2]|0)+32>>2]=(c[(c[h>>2]|0)+28>>2]|0)+((((c[(c[e>>2]|0)+4>>
;2]|0)>>>0)/4|0)<<2);e=c[h>>2]|0;if(c[(c[j>>2]|0)+8>>2]&1|0)e=to(e)|
0;else e=uo(e)|0;c[k>>2]=e;k=c[k>>2]|0;i=l;return k|0}c[k>>2]=0;k=c[k>>2]|0;i=l;return k
|0}c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}c[k>>2]=0;k=c[k>>2]|0;i=l;return k|0}c[k>
x3e;2]=96;k=c[k>>2]|0;i=l;return k|0}function to(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>
x3e;2]=c[d>>2];i=b;return 19}function uo(e){e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;g=k+8|0;h=k+4|0;j=k;c[h>
x3e;2]=e;vo(c[h>>2]|0,c[(c[h>>2]|0)+128+16>>2]&256);c[(c[h>>2]|0)+24>>2]=
c[(c[h>>2]|0)+12>>2];e=c[h>>2]|0;if(!(c[(c[h>>2]|0)+128+16>>2]&8|0)){f=(c
[h>>2]|0)+180|0;if(c[e+128+16>>2]&16|0)a[f>>0]=4;else a[f>>0]=0;if(!(c[(c[h>
x3e;2]|0)+128+16>>2]&32)){f=(c[h>>2]|0)+180|0;a[f>>0]=(d[f>>0]|0)+1}}else a[e+180
x3e;>0]=2;a[(c[h>>2]|0)+181>>0]=((c[(c[h>>2]|0)+128+16>>2]&512|0)!=0^1)&1
;c[(c[h>>2]|0)+164>>2]=16;c[(c[h>>2]|0)+168>>2]=1;c[(c[h>>2]|0)+172>>
;2]=2;c[(c[h>>2]|0)+176>>2]=39;c[(c[h>>2]|0)+1024>>2]=0;b[(c[h>>2]|0)+960>
;>1]=0;b[(c[h>>2]|0)+960+2>>1]=(c[(c[h>>2]|0)+104>>2]|0)-1;b[(c[h>>2]|0)+
56>>1]=c[(c[h>>2]|0)+104+4>>2];c[(c[h>>2]|0)+60>>2]=c[(c[h>>2]|0)+104
+12>>2];f=Ao(c[h>>2]|0,0)|0;c[j>>2]=f;if(f|0){c[g>>2]=c[j>>2];j=c[g>>
;2]|0;i=k;return j|0}if((a[(c[h>>2]|0)+181>>0]|0?(d[(c[h>>2]|0)+180>>0]|0)!=2:0)?(c[(c[h
>>2]|0)+164>>2]=17,c[(c[h>>2]|0)+168>>2]=3,c[(c[h>>2]|0)+172>>2]=4,c
[(c[h>>2]|0)+176>>2]=40,c[(c[h>>2]|0)+1024>>2]=0,b[(c[h>>2]|0)+960>>
1]=0,b[(c[h>>2]|0)+960+2>>1]=(c[(c[h>>2]|0)+104+4>>2]|0)-1,h=Ao(c[h>>2]|0,1)|0
,c[j>>2]=h,h|0):0){c[g>>2]=c[j>>2];j=c[g>>2]|0;i=k;return j|0}c[g>>2]=0;j=c[g
x3e;>2]|0;i=k;return j|0}function vo(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;b=c[d>>2]|0;if(c[f>>2]|0){c[b>>2]=12;c[(c[d>>2]|0)+16>>2]=256;c[(c
[d>>2]|0)+20>>2]=50}else{c[b>>2]=6;c[(c[d>>2]|0)+16>>2]=32;c[(c[d>>2
]|0)+20>>2]=2}c[(c[d>>2]|0)+4>>2]=1<<c[c[d>>2]>>2];c[(c[d>>
;2]|0)+8>>2]=(c[(c[d>>2]|0)+4>>2]|0)/2|0;c[(c[d>>2]|0)+12>>2]=(c[c[d>>
;2]>>2]|0)-6;i=e;return}function wo(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;h=i;i=i+16|0;f=h+12|0;j=h+8|0;k=h
+4|0;g=h;c[f>>2]=a;c[j>>2]=d;c[k>>2]=e;c[g>>2]=c[(c[f>>2]|0)+104+8>>
2];c[k>>2]=c[k>>2];b[(c[f>>2]|0)+156>>1]=0-(c[g>>2]|0);a=_(0-(b[c[j>>
;2]>>1]|0)|0,c[g>>2]|0)|0;c[(c[f>>2]|0)+148>>2]=a;if((c[g>>2]|0)<=0){k=c[
f>>2]|0;k=k+158|0;b[k>>1]=0;k=c[f>>2]|0;k=k+160|0;b[k>>1]=0;i=h;return}j=_((c[(c[f>
x3e;2]|0)+104>>2]|0)-1|0,c[g>>2]|0)|0;k=(c[f>>2]|0)+148|0;c[k>>2]=(c[k>>2]|0)+
j;k=c[f>>2]|0;k=k+158|0;b[k>>1]=0;k=c[f>>2]|0;k=k+160|0;b[k>>1]=0;i=h;return}function xo
(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;v=i;i=i+48|0;m=v+36
|0;z=v+40|0;w=v+32|0;n=v+28|0;y=v+24|0;x=v+20|0;p=v+16|0;q=v+12|0;o=v+8|0;s=v+4|0;r=v+43|0;t=v+42|0;u=v;c[m>>2]=f;b[z
x3e;>1]=g;c[w>>2]=h;c[n>>2]=j;c[y>>2]=k;c[x>>2]=l;b[z>>1]=b[z>>
1]|0;c[y>>2]=c[y>>2];c[x>>2]=c[x>>2];c[p>>2]=((c[w>>2]|0)+(c[(c[m>
;>2]|0)+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>2]|0))>>c[c[m>>2]>>
2];if(((c[n>>2]|0)-(c[w>>2]|0)-(c[(c[m>>2]|0)+4>>2]|0)|0)<=(c[(c[m>>2]|0)+
20>>2]|0))c[q>>2]=c[p>>2];else c[q>>2]=(c[n>>2]&0-(c[(c[m>>2]|0
)+4>>2]|0))>>c[c[m>>2]>>2];if((c[q>>2]|0)<0){i=v;return}if((c[p>>
;2]|0)>=(e[(c[m>>2]|0)+56>>1]|0)){i=v;return}if((c[p>>2]|0)<0)c[p>>2]=0;if((c[
q>>2]|0)>=(e[(c[m>>2]|0)+56>>1]|0))c[q>>2]=(e[(c[m>>2]|0)+56>>1
]|0)-1;c[o>>2]=(c[p>>2]>>3&65535)<<16>>16;c[s>>2]=(c[q>>
;2]>>3&65535)<<16>>16;a[r>>0]=255>>(c[p>>2]&7);a[t>
x3e;0]=~(127>>(c[q>>2]&7));if((b[(c[m>>2]|0)+158>>1]|0)>(c[o>>2]|0))
b[(c[m>>2]|0)+158>>1]=c[o>>2];if((b[(c[m>>2]|0)+160>>1]|0)<(c[s>>
;2]|0))b[(c[m>>2]|0)+160>>1]=c[s>>2];c[u>>2]=(c[(c[m>>2]|0)+60>>2]|0
)+(c[(c[m>>2]|0)+148>>2]|0)+(c[o>>2]|0);c[s>>2]=(c[s>>2]|0)-(c[o>>2]|
0);m=d[r>>0]|0;if((c[s>>2]|0)<=0){z=c[u>>2]|0;a[z>>0]=d[z>>0]|m&d[t
x3e;>0];i=v;return}z=c[u>>2]|0;a[z>>0]=d[z>>0]|m;c[s>>2]=(c[s>>2]|0)+-1;while
(1){if((c[s>>2]|0)<=0)break;z=(c[u>>2]|0)+1|0;c[u>>2]=z;a[z>>0]=-1;c[s>>2
]=(c[s>>2]|0)+-1}z=(c[u>>2]|0)+1|0;a[z>>0]=d[z>>0]|d[t>>0];i=v;return}function
yo(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;y=i;i=i+48|0;m=y+32
|0;n=y+40|0;o=y+28|0;p=y+24|0;q=y+20|0;r=y+16|0;u=y+12|0;v=y+8|0;x=y+4|0;s=y+38|0;w=y+36|0;t=y;c[m>>2]=f;b[n>>
;1]=g;c[o>>2]=h;c[p>>2]=j;c[q>>2]=k;c[r>>2]=l;c[u>>2]=(c[o>>2]|0)+(c
[(c[m>>2]|0)+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>2]|0);c[v>>2]=c[p>>
2]&0-(c[(c[m>>2]|0)+4>>2]|0);c[x>>2]=c[u>>2];if((c[u>>2]|0)>(c[v>
;>2]|0)){c[t>>2]=c[(c[q>>2]|0)+12>>2]&7;if((c[u>>2]|0)!=((c[v>>2]|0)+(
c[(c[m>>2]|0)+4>>2]|0)|0)){i=y;return}a:do switch(c[t>>2]|0){case 0:{c[x>>2]=c[v>
x3e;2];break}case 4:{c[x>>2]=(((c[o>>2]|0)+(c[p>>2]|0)-1|0)/2|0)+(c[(c[m>>2]|0)+8>
x3e;2]|0)&0-(c[(c[m>>2]|0)+4>>2]|0);break}case 5:case 1:{if((c[(c[q>>2]|0)+28>>2]|0
)==(c[r>>2]|0)?(c[(c[q>>2]|0)+16>>2]|0)<=0:0){if(!(c[(c[q>>2]|0)+12>>2]
x26;16)){i=y;return}if(((c[p>>2]|0)-(c[o>>2]|0)|0)<(c[(c[m>>2]|0)+8>>2]|0)){i=y;return
}}if((c[(c[r>>2]|0)+28>>2]|0)==(c[q>>2]|0)?(c[(c[q>>2]|0)+20>>2]|0)==(b[n>
;>1]|0):0){if(!(c[(c[q>>2]|0)+12>>2]&32)){i=y;return}if(((c[p>>2]|0)-(c[o>>2]|
0)|0)<(c[(c[m>>2]|0)+8>>2]|0)){i=y;return}}if((c[t>>2]|0)==1){c[x>>2]=c[v>>
;2];break a}else{c[x>>2]=(((c[o>>2]|0)+(c[p>>2]|0)-1|0)/2|0)+(c[(c[m>>2]|0)+8>>
;2]|0)&0-(c[(c[m>>2]|0)+4>>2]|0);break a}}default:{i=y;return}}while(0);c[u>>2]=(c[x>>
;2]|0)==(c[u>>2]|0)?c[v>>2]|0:c[u>>2]|0;c[u>>2]=c[u>>2]>>c[c[m>
x3e;2]>>2];b[s>>1]=c[u>>2]>>3;b[w>>1]=c[u>>2]&7;if(((c[u>
x3e;2]|0)>=0?(c[u>>2]|0)<(e[(c[m>>2]|0)+56>>1]|0):0)?d[(c[(c[m>>2]|0)+60>
x3e;2]|0)+((c[(c[m>>2]|0)+148>>2]|0)+(b[s>>1]|0))>>0]&128>>b[w>>
;1]|0:0){i=y;return}}c[u>>2]=c[x>>2]>>c[c[m>>2]>>2];if((c[u>>2]|0)
x3c;0){i=y;return}if((c[u>>2]|0)>=(e[(c[m>>2]|0)+56>>1]|0)){i=y;return}b[s>>1]=c[u
x3e;>2]>>3;b[w>>1]=c[u>>2]&7;if((b[(c[m>>2]|0)+158>>1]|0)>(b[s
x3e;>1]|0))b[(c[m>>2]|0)+158>>1]=b[s>>1]|0;if((b[(c[m>>2]|0)+160>>1]|0)
x3c;(b[s>>1]|0))b[(c[m>>2]|0)+160>>1]=b[s>>1]|0;g=(c[(c[m>>2]|0)+60>>
;2]|0)+((c[(c[m>>2]|0)+148>>2]|0)+(b[s>>1]|0))|0;a[g>>0]=d[g>>0]|(128>>
;b[w>>1]&255)<<24>>24;i=y;return}function zo(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>
x3e;2]=a;a=(c[e>>2]|0)+148|0;c[a>>2]=(c[a>>2]|0)+(b[(c[e>>2]|0)+156>>1]|0);i=d
;return}function Ao(d,e){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+16|0;k=m+4|0;l=m;f=m+14|0;g=m+12|0;h=m+10|0;j=m+8|0
;c[l>>2]=d;a[f>>0]=e;while(1){if((c[(c[l>>2]|0)+1024>>2]|0)<0){e=14;break}d=_(b[(c[
l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>>1]|0,c[(c[l>>2]|0)+4>
;>2]|0)|0;c[(c[l>>2]|0)+80>>2]=d;d=_(b[(c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>
;2]<<2)>>1]|0,c[(c[l>>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+76>>2]=d;c[(c[l
>>2]|0)+40>>2]=c[(c[l>>2]|0)+28>>2];c[(c[l>>2]|0)+44>>2]=0;d=(Bo(c[l
>>2]|0,a[f>>0]|0)|0)<<24>>24!=0;e=c[l>>2]|0;if(!d){if(c[e+92>>2]|0?(
Qo(c[l>>2]|0)|0)<<24>>24:0){e=12;break}d=(c[l>>2]|0)+1024|0;c[d>>2]=(c[d>
x3e;2]|0)+-1;continue}if((c[e+44>>2]|0)!=98){e=5;break}c[(c[l>>2]|0)+44>>2]=0;b[g>>1]=b[(
c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)>>1]|0;b[h>>1]=b[(c[l>
;>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>>1]|0;b[j>>1]=((b[g>>
1]|0)+(b[h>>1]|0)|0)/2|0;if((c[(c[l>>2]|0)+1024>>2]|0)>=7){e=8;break}if((b[j>>1]|0)
x3c;(b[g>>1]|0)){e=8;break}b[(c[l>>2]|0)+960+((c[(c[l>>2]|0)+1024>>2]|0)+1<<2)
x3e;>1]=b[j>>1]|0;b[(c[l>>2]|0)+960+((c[(c[l>>2]|0)+1024>>2]|0)+1<<2)+2
x3e;>1]=b[h>>1]|0;b[(c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>
x3e;1]=(b[j>>1]|0)-1;d=(c[l>>2]|0)+1024|0;c[d>>2]=(c[d>>2]|0)+1}if((e|0)==5){c[k>
x3e;2]=1;l=c[k>>2]|0;i=m;return l|0}else if((e|0)==8){c[(c[l>>2]|0)+1024>>2]=0;c[(c[l>>2
]|0)+44>>2]=20;c[k>>2]=c[(c[l>>2]|0)+44>>2];l=c[k>>2]|0;i=m;return l|0}else if
((e|0)==12){c[k>>2]=c[(c[l>>2]|0)+44>>2];l=c[k>>2]|0;i=m;return l|0}else if((e|0)==14){c
[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}return 0}function Bo(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;n=i;i=i+32|0;l=n+21|0;m=n+16|0;f=n+12|0;g=n+8|0;k=n+4|0;h=n;j=n+20|0;c[m>>2]=d;c[f>>2]=e;c[(c[m>>
;2]|0)+92>>2]=0;a[(c[m>>2]|0)+87>>0]=0;a[(c[m>>2]|0)+86>>0]=0;c[(c[m>>
;2]|0)+36>>2]=(c[(c[m>>2]|0)+32>>2]|0)+-32;c[(c[m>>2]|0)+48>>2]=0;c[(c[m>
x3e;2]|0)+88>>2]=c[(c[m>>2]|0)+40>>2];c[(c[(c[m>>2]|0)+88>>2]|0)+8>>
2]=c[(c[m>>2]|0)+40>>2];b[(c[m>>2]|0)+84>>1]=0;c[k>>2]=0;c[g>>2]=0;while
(1){d=c[m>>2]|0;if((c[g>>2]|0)>=(b[(c[m>>2]|0)+128>>1]|0)){e=19;break}c[d+100>
x3e;2]=0;c[(c[m>>2]|0)+96>>2]=0;if((Co(c[m>>2]|0,c[k>>2]&65535,b[(c[(c[m>>
;2]|0)+128+12>>2]|0)+(c[g>>2]<<1)>>1]|0,c[f>>2]|0)|0)<<24>>
;24){e=4;break}c[k>>2]=(b[(c[(c[m>>2]|0)+128+12>>2]|0)+(c[g>>2]<<1)>>
;1]|0)+1;if(((((c[(c[m>>2]|0)+72>>2]&(c[(c[m>>2]|0)+4>>2]|0)-1|0)==0?(c[(c[m>
x3e;2]|0)+72>>2]|0)>=(c[(c[m>>2]|0)+76>>2]|0):0)?(c[(c[m>>2]|0)+72>>2]|0)
x3c;=(c[(c[m>>2]|0)+80>>2]|0):0)?c[(c[m>>2]|0)+96>>2]|0:0)?(c[(c[(c[m>>2]|0)+96
>>2]|0)+12>>2]&8|0)==(c[(c[(c[m>>2]|0)+88>>2]|0)+12>>2]&8|0):0){d=(c
[m>>2]|0)+40|0;c[d>>2]=(c[d>>2]|0)+-4}c[h>>2]=c[(c[m>>2]|0)+88>>2];e
=c[(c[m>>2]|0)+72>>2]|0;d=c[m>>2]|0;if(c[(c[(c[m>>2]|0)+88>>2]|0)+12>>
;2]&8|0)a[j>>0]=(e-(c[d+72>>2]&0-(c[(c[m>>2]|0)+4>>2]|0))|0)>=(c[(c[m>
;>2]|0)+8>>2]|0);else a[j>>0]=((e+(c[d+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>
;2]|0))-(c[(c[m>>2]|0)+72>>2]|0)|0)>=(c[(c[m>>2]|0)+8>>2]|0);if((Fo(c[m>>
2]|0,a[j>>0]|0)|0)<<24>>24){e=15;break}if(c[(c[m>>2]|0)+96>>2]|0)c[(c[h>
x3e;2]|0)+28>>2]=c[(c[m>>2]|0)+96>>2];c[g>>2]=(c[g>>2]|0)+1}if((e|0)==4){a[l
x3e;>0]=1;m=a[l>>0]|0;i=n;return m|0}else if((e|0)==15){a[l>>0]=1;m=a[l>>0]|0;i=n;return m|0}
else if((e|0)==19)if((Oo(d)|0)<<24>>24){a[l>>0]=1;m=a[l>>0]|0;i=n;return m|0}else{a[l>
;>0]=(c[(c[m>>2]|0)+40>>2]|0)>>>0<(c[(c[m>>2]|0)+36>>2]|0)>
;>>0?0:1;m=a[l>>0]|0;i=n;return m|0}return 0}function Co(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,P=0,Q=0,R=0;R=i;i=
i+144|0;k=R+140|0;l=R+132|0;m=R+138|0;n=R+136|0;o=R+128|0;D=R+120|0;C=R+112|0;F=R+104|0;r=R+96|0;q=R+92|0;p=R+88|0;B=R+84|0;A=R+
80|0;s=R+76|0;t=R+72|0;G=R+68|0;L=R+64|0;u=R+60|0;v=R+56|0;E=R+48|0;K=R+44|0;P=R+40|0;w=R+36|0;H=R+32|0;M=R+28|0;I=R+24|0;N=R+20
|0;J=R+16|0;O=R+12|0;x=R+8|0;y=R+4|0;z=R;c[l>>2]=f;b[m>>1]=g;b[n>>1]=h;c[o>>2]=j;c[r>
;>2]=c[(c[l>>2]|0)+128+4>>2];c[p>>2]=(c[r>>2]|0)+(e[n>>1]<<3);c
[F>>2]=(c[(c[r>>2]|0)+(e[m>>1]<<3)>>2]<<c[(c[l>>2]|0)+24
x3e;>2])-(c[(c[l>>2]|0)+8>>2]|0);c[F+4>>2]=(c[(c[r>>2]|0)+(e[m>>1]<
x3c;3)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[D>
;>2]=(c[(c[r>>2]|0)+(e[n>>1]<<3)>>2]<<c[(c[l>>2]|0)+24>>
;2])-(c[(c[l>>2]|0)+8>>2]|0);c[D+4>>2]=(c[(c[r>>2]|0)+(e[n>>1]<<3)+4
>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>>
;2]|0){c[s>>2]=c[F>>2];c[F>>2]=c[F+4>>2];c[F+4>>2]=c[s>>2];c[t>
x3e;2]=c[D>>2];c[D>>2]=c[D+4>>2];c[D+4>>2]=c[t>>2]};c[C>>2]=c[F>
;>2];c[C+4>>2]=c[F+4>>2];c[q>>2]=(c[r>>2]|0)+(e[m>>1]<<3);c[B
x3e;>2]=(c[(c[l>>2]|0)+128+8>>2]|0)+(e[m>>1]|0);if(a[c[B>>2]>>0]&4|0
)a[(c[l>>2]|0)+180>>0]=d[c[B>>2]>>0]>>5;c[A>>2]=a[c[B>>2]
x3e;>0]&3;a:do if((c[A>>2]|0)==2)Q=39;else{if(!(c[A>>2]|0)){if((a[(c[(c[l>>2]|0)+128+8
x3e;>2]|0)+(e[n>>1]|0)>>0]&3|0)==1){c[F>>2]=c[D>>2];c[F+4>>2]=c[D+4
x3e;>2];c[p>>2]=(c[p>>2]|0)+-8}else{c[F>>2]=((c[F>>2]|0)+(c[D>>2]|0)|0)/2
|0;c[F+4>>2]=((c[F+4>>2]|0)+(c[D+4>>2]|0)|0)/2|0;c[D>>2]=c[F>>2];c[D+4>
x3e;2]=c[F+4>>2]}c[q>>2]=(c[q>>2]|0)+-8;c[B>>2]=(c[B>>2]|0)+-1}c[(c[l>>
;2]|0)+68>>2]=c[F>>2];c[(c[l>>2]|0)+72>>2]=c[F+4>>2];b:while(1){if((c[q>
x3e;2]|0)>>>0>=(c[p>>2]|0)>>>0){Q=37;break}c[q>>2]=(c[q>>2]|0)+
8;c[B>>2]=(c[B>>2]|0)+1;c[A>>2]=a[c[B>>2]>>0]&3;switch(c[A>>2]|
0){case 1:{c[G>>2]=(c[c[q>>2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>
;>2]|0)+8>>2]|0);c[L>>2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24
>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>>2]|0){c[u>>2]=c[G>>2];c[G>
;>2]=c[L>>2];c[L>>2]=c[u>>2]}if((Do(c[l>>2]|0,c[G>>2]|0,c[L>>2]|
0)|0)<<24>>24)break a;else continue b}case 0:{c[C>>2]=(c[c[q>>2]>>2]<<
;c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[C+4>>2]=(c[(c[q>>2]|
0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>
x3e;2]|0){c[v>>2]=c[C>>2];c[C>>2]=c[C+4>>2];c[C+4>>2]=c[v>>2]}while(
1){if((c[q>>2]|0)>>>0>=(c[p>>2]|0)>>>0){Q=27;break b}c[q>>2]=(c
[q>>2]|0)+8;c[B>>2]=(c[B>>2]|0)+1;c[A>>2]=a[c[B>>2]>>0]&3;c[K
x3e;>2]=(c[c[q>>2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8
x3e;>2]|0);c[P>>2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(
c[(c[l>>2]|0)+8>>2]|0);if(c[o>>2]|0){c[w>>2]=c[K>>2];c[K>>2]=c[P>
;>2];c[P>>2]=c[w>>2]}if((c[A>>2]|0)==1)break;if(c[A>>2]|0){Q=39;break a}c[E>
x3e;2]=((c[C>>2]|0)+(c[K>>2]|0)|0)/2|0;c[E+4>>2]=((c[C+4>>2]|0)+(c[P>>2]|0)|0)/
2|0;if((Io(c[l>>2]|0,c[C>>2]|0,c[C+4>>2]|0,c[E>>2]|0,c[E+4>>2]|0)|0)<<
;24>>24)break a;c[C>>2]=c[K>>2];c[C+4>>2]=c[P>>2]}if((Io(c[l>>2]|0,c
[C>>2]|0,c[C+4>>2]|0,c[K>>2]|0,c[P>>2]|0)|0)<<24>>24)break a;else continue
b}default:{if(((c[q>>2]|0)+8|0)>>>0>(c[p>>2]|0)>>>0){Q=39;break a}if((a[(
c[B>>2]|0)+1>>0]&3|0)!=2){Q=39;break a}c[q>>2]=(c[q>>2]|0)+16;c[B>>2]=(c[
B>>2]|0)+2;c[H>>2]=(c[(c[q>>2]|0)+-16>>2]<<c[(c[l>>2]|0)+24>>
;2])-(c[(c[l>>2]|0)+8>>2]|0);c[M>>2]=(c[(c[q>>2]|0)+-16+4>>2]<<c[(c[
l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[I>>2]=(c[(c[q>>2]|0)+-8
x3e;>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[N>>2]=(
c[(c[q>>2]|0)+-8+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>
x3e;2]|0);if(c[o>>2]|0){c[x>>2]=c[H>>2];c[H>>2]=c[M>>2];c[M>>2]=c[x
x3e;>2];c[y>>2]=c[I>>2];c[I>>2]=c[N>>2];c[N>>2]=c[y>>2]}if((c[q
>>2]|0)>>>0>(c[p>>2]|0)>>>0){Q=36;break b}c[J>>2]=(c[c[q>
x3e;2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[O>
x3e;2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8
x3e;>2]|0);if(c[o>>2]|0){c[z>>2]=c[J>>2];c[J>>2]=c[O>>2];c[O>>2
]=c[z>>2]}if((Mo(c[l>>2]|0,c[H>>2]|0,c[M>>2]|0,c[I>>2]|0,c[N>>2]|0,c
[J>>2]|0,c[O>>2]|0)|0)<<24>>24)break a;else continue b}}}if((Q|0)==27){if((Io(c[l>
x3e;2]|0,c[C>>2]|0,c[C+4>>2]|0,c[F>>2]|0,c[F+4>>2]|0)|0)<<24>>24)break
}else if((Q|0)==36){if((Mo(c[l>>2]|0,c[H>>2]|0,c[M>>2]|0,c[I>>2]|0,c[N>>2]|0,c
[F>>2]|0,c[F+4>>2]|0)|0)<<24>>24)break}else if((Q|0)==37?(Do(c[l>>2]|0,c[F>
;>2]|0,c[F+4>>2]|0)|0)<<24>>24:0)break;a[k>>0]=0;Q=a[k>>0]|0;i=R;return Q
|0}while(0);if((Q|0)==39)c[(c[l>>2]|0)+44>>2]=20;a[k>>0]=1;Q=a[k>>0]|0;i=R;return Q|0}function
Do(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[g>>2]=b;c[h>>
;2]=d;c[j>>2]=e;a:do switch(c[(c[g>>2]|0)+100>>2]|0){case 0:{if((c[j>>2]|0)>(c[(c[g
>>2]|0)+72>>2]|0)){if(!((Eo(c[g>>2]|0,1,(((c[(c[g>>2]|0)+72>>2]|0)+(c[(c[g>
;>2]|0)+4>>2]|0)-1&0-(c[(c[g>>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72>>2]|
0)|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24))break a;a[f>>0]=1;e=
a[f>>0]|0;i=k;return e|0}if((c[j>>2]|0)<(c[(c[g>>2]|0)+72>>2]|0)?(Eo(c[g>>
;2]|0,2,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>2]&0-(c[(c[g>>2]|0)+
4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24:0){a[f>
x3e;0]=1;e=a[f>>0]|0;i=k;return e|0}break}case 1:{if((c[j>>2]|0)<(c[(c[g>>2]|0)+72>>
;2]|0)){if(((Fo(c[g>>2]|0,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>2]&
;0-(c[(c[g>>2]|0)+4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24
x3e;>24|0)==0?((Eo(c[g>>2]|0,2,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>
;2]&0-(c[(c[g>>2]|0)+4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<
x3c;24>>24|0)==0:0)break a;a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}case 2:{if((c[j>>2
]|0)>(c[(c[g>>2]|0)+72>>2]|0)){if(((Fo(c[g>>2]|0,(((c[(c[g>>2]|0)+72>>2]|
0)+(c[(c[g>>2]|0)+4>>2]|0)-1&0-(c[(c[g>>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72
>>2]|0)|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24|0)==0?((Eo(c[g
x3e;>2]|0,1,(((c[(c[g>>2]|0)+72>>2]|0)+(c[(c[g>>2]|0)+4>>2]|0)-1&0-(c[(c[g>
;>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72>>2]|0)|0)>=(c[(c[g>>2]|0)+8>>2]|
0)&255)|0)<<24>>24|0)==0:0)break a;a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}default
:{}}while(0);switch(c[(c[g>>2]|0)+100>>2]|0){case 1:{if((Go(c[g>>2]|0,c[(c[g>>2]|0)+68
x3e;>2]|0,c[(c[g>>2]|0)+72>>2]|0,c[h>>2]|0,c[j>>2]|0,c[(c[g>>2]|0)+76>
;>2]|0,c[(c[g>>2]|0)+80>>2]|0)|0)<<24>>24){a[f>>0]=1;e=a[f>>0]|
0;i=k;return e|0}break}case 2:{if((Ho(c[g>>2]|0,c[(c[g>>2]|0)+68>>2]|0,c[(c[g>>2]|0)+72
x3e;>2]|0,c[h>>2]|0,c[j>>2]|0,c[(c[g>>2]|0)+76>>2]|0,c[(c[g>>2]|0)+80>
;>2]|0)|0)<<24>>24){a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}default:{}}c[(c[g>
;>2]|0)+68>>2]=c[h>>2];c[(c[g>>2]|0)+72>>2]=c[j>>2];a[f>>0]=0;e
=a[f>>0]|0;i=k;return e|0}function Eo(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+9|0;h=l+4|0;j=
l;k=l+8|0;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;if(!(c[(c[h>>2]|0)+92>>2]|0)){c[(c[h
x3e;>2]|0)+88>>2]=c[(c[h>>2]|0)+40>>2];c[(c[h>>2]|0)+92>>2]=c[(c[h>
x3e;2]|0)+88>>2];b=(c[h>>2]|0)+40|0;c[b>>2]=(c[b>>2]|0)+32}e=c[h>>2]|0;if((c[(
c[h>>2]|0)+40>>2]|0)>>>0>=(c[(c[h>>2]|0)+36>>2]|0)>>>
0){c[e+44>>2]=98;a[g>>0]=1;k=a[g>>0]|0;i=l;return k|0}c[(c[e+88>>2]|0)+12>>2]=
0;c[(c[(c[h>>2]|0)+88>>2]|0)+20>>2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+16>>
;2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+8>>2]=c[(c[h>>2]|0)+40>>2];c[(c[(c[h>>
;2]|0)+88>>2]|0)+4>>2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+28>>2]=0;c[(c[(c[h>
x3e;2]|0)+88>>2]|0)+12>>2]=d[(c[h>>2]|0)+180>>0];switch(c[j>>2]|0){case 1:{b=(
c[(c[h>>2]|0)+88>>2]|0)+12|0;c[b>>2]=c[b>>2]|8;if(a[k>>0]|0){k=(c[(c[h>
x3e;2]|0)+88>>2]|0)+12|0;c[k>>2]=c[k>>2]|32}break}case 2:{if(a[k>>0]|0){k=(c[(c[h>
x3e;2]|0)+88>>2]|0)+12|0;c[k>>2]=c[k>>2]|16}break}default:{c[(c[h>>2]|0)+44>>2
]=20;a[g>>0]=1;k=a[g>>0]|0;i=l;return k|0}}if(!(c[(c[h>>2]|0)+96>>2]|0))c[(c[h>>
;2]|0)+96>>2]=c[(c[h>>2]|0)+88>>2];c[(c[h>>2]|0)+100>>2]=c[j>>2];a[(
c[h>>2]|0)+86>>0]=1;a[(c[h>>2]|0)+87>>0]=0;a[g>>0]=0;k=a[g>>0]|0;i=l
;return k|0}function Fo(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;j=l+13|0;k=l+8|0;f=l+12|0;g=l+4|0;h=l;c[k>
;>2]=d;a[f>>0]=e;c[g>>2]=((c[(c[k>>2]|0)+40>>2]|0)-(c[(c[(c[k>>2]|0)+88
x3e;>2]|0)+8>>2]|0)|0)/4|0;if((c[g>>2]|0)<0){c[(c[k>>2]|0)+44>>2]=99;a[j>
x3e;0]=1;k=a[j>>0]|0;i=l;return k|0}if((c[g>>2]|0)>0){c[(c[(c[k>>2]|0)+88>>2]|0)+16
>>2]=c[g>>2];do if(a[f>>0]|0){f=(c[(c[k>>2]|0)+88>>2]|0)+12|0;g=c[f>>
;2]|0;if(c[(c[(c[k>>2]|0)+88>>2]|0)+12>>2]&8|0){c[f>>2]=g|16;break}else{c[f>
x3e;2]=g|32;break}}while(0);c[h>>2]=c[(c[k>>2]|0)+88>>2];c[(c[k>>2]|0)+88>>2]=
c[(c[k>>2]|0)+40>>2];d=(c[k>>2]|0)+40|0;c[d>>2]=(c[d>>2]|0)+32;c[(c[(c[k>
x3e;2]|0)+88>>2]|0)+16>>2]=0;c[(c[(c[k>>2]|0)+88>>2]|0)+8>>2]=c[(c[k>>
;2]|0)+40>>2];c[(c[h>>2]|0)+28>>2]=c[(c[k>>2]|0)+88>>2];h=(c[k>>2]|0
)+84|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}f=c[k>>2]|0;if((c[(c[k>>2]|0)+40
>>2]|0)>>>0>=(c[(c[k>>2]|0)+36>>2]|0)>>>0){c[f+44>>2]=
98;a[j>>0]=1;k=a[j>>0]|0;i=l;return k|0}else{a[f+87>>0]=0;a[j>>0]=0;k=a[j>>0]|
0;i=l;return k|0}return 0}function Go(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;C=i;i=i+80|0;s=C+72|0;t=C+68|0;u=C+64|0;k=C+60|0;D=C+56|0;l=C+52|0;m=C+48|0;n
=C+44|0;w=C+40|0;x=C+36|0;o=C+32|0;p=C+28|0;q=C+24|0;r=C+20|0;A=C+16|0;y=C+12|0;z=C+8|0;v=C+4|0;B=C;c[t>>2]=b;c[u>
;>2]=d;c[k>>2]=e;c[D>>2]=f;c[l>>2]=g;c[m>>2]=h;c[n>>2]=j;c[w>>2
]=(c[D>>2]|0)-(c[u>>2]|0);c[x>>2]=(c[l>>2]|0)-(c[k>>2]|0);if(((c[x>>
2]|0)>0?(c[l>>2]|0)>=(c[m>>2]|0):0)?(c[k>>2]|0)<=(c[n>>2]|0):0){if((c[k
x3e;>2]|0)<(c[m>>2]|0)){D=xb(c[w>>2]|0,(c[m>>2]|0)-(c[k>>2]|0)|0,c[x>>
;2]|0)|0;c[u>>2]=(c[u>>2]|0)+D;c[o>>2]=c[m>>2]>>c[c[t>>2]>>
;2];c[q>>2]=0}else{c[o>>2]=c[k>>2]>>c[c[t>>2]>>2];c[q>>2]=
c[k>>2]&(c[(c[t>>2]|0)+4>>2]|0)-1}if((c[l>>2]|0)>(c[n>>2]|0)){c[p>
;>2]=c[n>>2]>>c[c[t>>2]>>2];c[r>>2]=0}else{c[p>>2]=c[l>>
;2]>>c[c[t>>2]>>2];c[r>>2]=c[l>>2]&(c[(c[t>>2]|0)+4>>
2]|0)-1}do if((c[q>>2]|0)<=0){if(a[(c[t>>2]|0)+87>>0]|0){D=(c[t>>2]|0)+40|0;c[D>
;>2]=(c[D>>2]|0)+-4;a[(c[t>>2]|0)+87>>0]=0}}else{if((c[o>>2]|0)!=(c[p>>2]|
0)){D=xb(c[w>>2]|0,(c[(c[t>>2]|0)+4>>2]|0)-(c[q>>2]|0)|0,c[x>>2]|0)|0;c[u>
;>2]=(c[u>>2]|0)+D;c[o>>2]=(c[o>>2]|0)+1;break}a[s>>0]=0;D=a[s>>0]|0;i=C;
return D|0}while(0);a[(c[t>>2]|0)+87>>0]=(c[r>>2]|0)==0;if(a[(c[t>>2]|0)+86>>0
]|0){c[(c[(c[t>>2]|0)+88>>2]|0)+20>>2]=c[o>>2];a[(c[t>>2]|0)+86>>0]=
0}c[A>>2]=(c[p>>2]|0)-(c[o>>2]|0)+1;if(((c[(c[t>>2]|0)+40>>2]|0)+(c[A>>
;2]<<2)|0)>>>0>=(c[(c[t>>2]|0)+36>>2]|0)>>>0){c[(c[t>>
;2]|0)+44>>2]=98;a[s>>0]=1;D=a[s>>0]|0;i=C;return D|0}k=c[(c[t>>2]|0)+4>>2]|0;
l=c[w>>2]|0;if((c[w>>2]|0)>0){c[y>>2]=xb(k,l,c[x>>2]|0)|0;D=_(c[(c[t>>2]|
0)+4>>2]|0,c[w>>2]|0)|0;c[z>>2]=(D|0)%(c[x>>2]|0)|0;c[w>>2]=1}else{c[y>
x3e;2]=_(xb(k,0-l|0,c[x>>2]|0)|0,-1)|0;D=_(c[(c[t>>2]|0)+4>>2]|0,0-(c[w>>2]|0)|0)|0;c[z
x3e;>2]=(D|0)%(c[x>>2]|0)|0;c[w>>2]=-1}c[v>>2]=0-(c[x>>2]|0);c[B>>2]=c[(c
[t>>2]|0)+40>>2];while(1){if((c[A>>2]|0)<=0)break;g=c[u>>2]|0;D=c[B>>2]|0
;c[B>>2]=D+4;c[D>>2]=g;c[u>>2]=(c[u>>2]|0)+(c[y>>2]|0);c[v>>2]=(c[v
x3e;>2]|0)+(c[z>>2]|0);if((c[v>>2]|0)>=0){c[v>>2]=(c[v>>2]|0)-(c[x>>
2]|0);c[u>>2]=(c[u>>2]|0)+(c[w>>2]|0)}c[A>>2]=(c[A>>2]|0)+-1}c[(c[t>>
;2]|0)+40>>2]=c[B>>2];a[s>>0]=0;D=a[s>>0]|0;i=C;return D|0}a[s>>0]=0;D=a[s>
;>0]|0;i=C;return D|0}function Ho(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;m=i;i=i+32|0;k=m+24|0;t=m+20|0;s=m+16|0;r=m+12|0;q=m+8|0;o=m+4|0;p=m;l=m+29|0;n=m+28|0;c[k>>2]=b;c[t>
x3e;2]=d;c[s>>2]=e;c[r>>2]=f;c[q>>2]=g;c[o>>2]=h;c[p>>2]=j;a[n>>0]=a
[(c[k>>2]|0)+86>>0]|0;a[l>>0]=Go(c[k>>2]|0,c[t>>2]|0,0-(c[s>>2]|0)|0
,c[r>>2]|0,0-(c[q>>2]|0)|0,0-(c[p>>2]|0)|0,0-(c[o>>2]|0)|0)|0;if(!(a[n>>0]|0)){
t=a[l>>0]|0;i=m;return t|0}if(a[(c[k>>2]|0)+86>>0]|0){t=a[l>>0]|0;i=m;return t|0}c[(c[(c
[k>>2]|0)+88>>2]|0)+20>>2]=0-(c[(c[(c[k>>2]|0)+88>>2]|0)+20>>2]|0);t
=a[l>>0]|0;i=m;return t|0}function Io(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,x=0;t=i;i=i+64|0;h=t+49|0;j=t+44|0;x=t+40|0;w=t+36|0;v=t+32|0;u=t+28|0;n=t+24|0;o=t+20|0;p=t+16|0;m=t+12
|0;r=t+8|0;q=t+4|0;l=t;k=t+48|0;c[j>>2]=b;c[x>>2]=d;c[w>>2]=e;c[v>>2]=f;c[u>>2
]=g;c[(c[j>>2]|0)+52>>2]=(c[j>>2]|0)+184;c[(c[(c[j>>2]|0)+52>>2]|0)+16>
x3e;2]=c[(c[j>>2]|0)+68>>2];c[(c[(c[j>>2]|0)+52>>2]|0)+16+4>>2]=c[(c[j>
x3e;2]|0)+72>>2];c[(c[(c[j>>2]|0)+52>>2]|0)+8>>2]=c[x>>2];c[(c[(c[j>>
;2]|0)+52>>2]|0)+8+4>>2]=c[w>>2];c[c[(c[j>>2]|0)+52>>2]>>2]=c[v>
;>2];c[(c[(c[j>>2]|0)+52>>2]|0)+4>>2]=c[u>>2];a:while(1){c[n>>2]=c[(c[(c[
j>>2]|0)+52>>2]|0)+16+4>>2];c[o>>2]=c[(c[(c[j>>2]|0)+52>>2]|0)+8+4
x3e;>2];c[p>>2]=c[(c[(c[j>>2]|0)+52>>2]|0)+4>>2];c[m>>2]=c[c[(c[j>
x3e;2]|0)+52>>2]>>2];if((c[n>>2]|0)<=(c[p>>2]|0)){c[r>>2]=c[n>>
2];c[q>>2]=c[p>>2]}else{c[r>>2]=c[p>>2];c[q>>2]=c[n>>2]}do if((c[o
x3e;>2]|0)>=(c[r>>2]|0)?(c[o>>2]|0)<=(c[q>>2]|0):0){if((c[n>>2]|0)==(c[p
x3e;>2]|0)){x=(c[j>>2]|0)+52|0;c[x>>2]=(c[x>>2]|0)+-16;break}c[l>>2]=(c[n>>
;2]|0)<(c[p>>2]|0)?1:2;if((c[(c[j>>2]|0)+100>>2]|0)!=(c[l>>2]|0)){d=c[n>>
2]|0;if((c[l>>2]|0)==1)d=((d+(c[(c[j>>2]|0)+4>>2]|0)-1&0-(c[(c[j>>2]|0)+4>>
;2]|0))-(c[n>>2]|0)|0)>=(c[(c[j>>2]|0)+8>>2]|0);else d=(d-(c[n>>2]&0-(c[(c[j
x3e;>2]|0)+4>>2]|0))|0)>=(c[(c[j>>2]|0)+8>>2]|0);a[k>>0]=d&1;if(c[(c[j>
;>2]|0)+100>>2]|0?(Fo(c[j>>2]|0,a[k>>0]|0)|0)<<24>>24|0:0){s=22;break a}if
((Eo(c[j>>2]|0,c[l>>2]|0,a[k>>0]|0)|0)<<24>>24){s=22;break a}}d=c[j>>
;2]|0;e=c[(c[j>>2]|0)+76>>2]|0;b=c[(c[j>>2]|0)+80>>2]|0;if((c[l>>2]|0)==1)if((
Ko(d,2,41,e,b)|0)<<24>>24){s=22;break a}else break;else if((Lo(d,2,41,e,b)|0)<<24>>24){s
=22;break a}else break}else s=7;while(0);if((s|0)==7){s=0;Jo(c[(c[j>>2]|0)+52>>2]|0);x=(c[j>>2]|0)+
52|0;c[x>>2]=(c[x>>2]|0)+16}if((c[(c[j>>2]|0)+52>>2]|0)>>>0<((c[j>
;>2]|0)+184|0)>>>0){s=21;break}}if((s|0)==21){c[(c[j>>2]|0)+68>>2]=c[m>>2];c[(
c[j>>2]|0)+72>>2]=c[p>>2];a[h>>0]=0;x=a[h>>0]|0;i=t;return x|0}else if((s|0)==
22){a[h>>0]=1;x=a[h>>0]|0;i=t;return x|0}return 0}function Jo(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[(c[d>>2]|0)+32>>2]=c[(c[d>>2]|0)+16>>2];c[e>
x3e;2]=c[(c[d>>2]|0)+8>>2];a=((c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c
[d>>2]|0)+24>>2]=a;c[f>>2]=a;a=((c[c[d>>2]>>2]|0)+(c[e>>2]|0)|0)/2|0
;c[(c[d>>2]|0)+8>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16>>2]=((c[f>>2]|0)+(
c[e>>2]|0)|0)/2|0;c[(c[d>>2]|0)+32+4>>2]=c[(c[d>>2]|0)+16+4>>2];c[e>>
;2]=c[(c[d>>2]|0)+8+4>>2];a=((c[(c[d>>2]|0)+16+4>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(
c[d>>2]|0)+24+4>>2]=a;c[f>>2]=a;a=((c[(c[d>>2]|0)+4>>2]|0)+(c[e>>2]|
0)|0)/2|0;c[(c[d>>2]|0)+8+4>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16+4>>2]=((c[f>
x3e;2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function Ko(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,t=0,u=0,v=0,w=0,x=0,y=0;y=i;i=i+64|0;j=y+54|0;k=y+48|0;l=y+44|0;m=y+40|0;n=y+36|0;o=y+32|0;w=y+28|0;x=y+24|0;
q=y+20|0;s=y+16|0;r=y+12|0;t=y+52|0;p=y+8|0;u=y+4|0;v=y;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>
;2]=g;c[o>>2]=h;c[p>>2]=c[(c[k>>2]|0)+52>>2];c[w>>2]=c[(c[p>>2]|0)+(
c[l>>2]<<3)+4>>2];c[x>>2]=c[(c[p>>2]|0)+4>>2];c[v>>2]=c[(c
[k>>2]|0)+40>>2];a:do if((c[x>>2]|0)>=(c[n>>2]|0)?(c[w>>2]|0)<=(c[o
x3e;>2]|0):0){c[s>>2]=c[x>>2]&0-(c[(c[k>>2]|0)+4>>2]|0);if((c[s>>2]|
0)>(c[o>>2]|0))c[s>>2]=c[o>>2];c[r>>2]=c[n>>2];if((c[w>>2]|0)
x3e;=(c[n>>2]|0)){c[q>>2]=(c[w>>2]|0)+(c[(c[k>>2]|0)+4>>2]|0)-1&0-(c[(c[k
>>2]|0)+4>>2]|0);b[t>>1]=c[w>>2]&(c[(c[k>>2]|0)+4>>2]|0)-1;c[r
x3e;>2]=c[q>>2];if(!(b[t>>1]|0)){if(a[(c[k>>2]|0)+87>>0]|0){c[v>>2]=(c[v
x3e;>2]|0)+-4;a[(c[k>>2]|0)+87>>0]=0}f=c[(c[p>>2]|0)+(c[l>>2]<<3)>
x3e;2]|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[q>>2]=(c[q>>2]|0)+(c[(c[k>
x3e;2]|0)+4>>2]|0)}}else c[q>>2]=c[n>>2];if(a[(c[k>>2]|0)+86>>0]|0){c[(c[(c[k
x3e;>2]|0)+88>>2]|0)+20>>2]=c[r>>2]>>c[c[k>>2]>>2];a[(c[k>
x3e;2]|0)+86>>0]=0}if((c[s>>2]|0)>=(c[q>>2]|0)){if(((c[v>>2]|0)+((c[s>>2]|
0)-(c[q>>2]|0)>>c[c[k>>2]>>2]<<2)+4|0)>>>0>=(c[(c[k>
x3e;2]|0)+36>>2]|0)>>>0){c[(c[k>>2]|0)+40>>2]=c[v>>2];c[(c[k>>2
]|0)+44>>2]=98;a[j>>0]=1;x=a[j>>0]|0;i=y;return x|0}c[u>>2]=c[p>>2];while(1){if
((c[p>>2]|0)>>>0<(c[u>>2]|0)>>>0)break a;if((c[q>>2]|0)>(c
[s>>2]|0))break a;a[(c[k>>2]|0)+87>>0]=0;c[x>>2]=c[(c[p>>2]|0)+4>>2];
if((c[x>>2]|0)>(c[q>>2]|0)){c[w>>2]=c[(c[p>>2]|0)+(c[l>>2]<<3)+
4>>2];if(((c[x>>2]|0)-(c[w>>2]|0)|0)>=(c[(c[k>>2]|0)+16>>2]|0)){Va[c[m>
;>2]&63](c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[l>>2]<<3);continue}else{f
=_((c[c[p>>2]>>2]|0)-(c[(c[p>>2]|0)+(c[l>>2]<<3)>>2]|0)|0,(c[q>
x3e;2]|0)-(c[w>>2]|0)|0)|0;f=(c[(c[p>>2]|0)+(c[l>>2]<<3)>>2]|0)+((f|0)/((c[x
x3e;>2]|0)-(c[w>>2]|0)|0)|0)|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[p>>2]=(
c[p>>2]|0)+(0-(c[l>>2]|0)<<3);c[q>>2]=(c[q>>2]|0)+(c[(c[k>>2]|0)+4
x3e;>2]|0);continue}}else{if((c[x>>2]|0)==(c[q>>2]|0)){a[(c[k>>2]|0)+87>>0]=1;f=c[c
[p>>2]>>2]|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[q>>2]=(c[q>>
;2]|0)+(c[(c[k>>2]|0)+4>>2]|0)}c[p>>2]=(c[p>>2]|0)+(0-(c[l>>2]|0)<<3
);continue}}}}while(0);c[(c[k>>2]|0)+40>>2]=c[v>>2];x=(c[k>>2]|0)+52|0;c[x>>2]=(
c[x>>2]|0)+(0-(c[l>>2]|0)<<3);a[j>>0]=0;x=a[j>>0]|0;i=y;return x|0}function Lo
(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;q=i;i=i+32|0;h=q+20|0;j=q+16|0;k=q+12|0;l=q+8|
0;m=q+4|0;n=q;p=q+25|0;o=q+24|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2
]=g;c[n>>2]=c[(c[h>>2]|0)+52>>2];c[(c[n>>2]|0)+4>>2]=0-(c[(c[n>>2]|0
)+4>>2]|0);c[(c[n>>2]|0)+8+4>>2]=0-(c[(c[n>>2]|0)+8+4>>2]|0);c[(c[n>>
;2]|0)+16+4>>2]=0-(c[(c[n>>2]|0)+16+4>>2]|0);if((c[j>>2]|0)>2)c[(c[n>>2]|
0)+24+4>>2]=0-(c[(c[n>>2]|0)+24+4>>2]|0);a[o>>0]=a[(c[h>>2]|0)+86>>0
]|0;a[p>>0]=Ko(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,0-(c[m>>2]|0)|0,0-(c[l>>
;2]|0)|0)|0;if(a[o>>0]|0?(a[(c[h>>2]|0)+86>>0]|0)==0:0)c[(c[(c[h>>2]|0)+88>>2]|
0)+20>>2]=0-(c[(c[(c[h>>2]|0)+88>>2]|0)+20>>2]|0);c[(c[n>>2]|0)+4>>2
]=0-(c[(c[n>>2]|0)+4>>2]|0);i=q;return a[p>>0]|0}function Mo(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;y=i;i=i+80|0;k=y+69|
0;l=y+64|0;E=y+60|0;D=y+56|0;C=y+52|0;B=y+48|0;A=y+44|0;z=y+40|0;p=y+36|0;q=y+32|0;r=y+28|0;s=y+24|0;o=y+20|0;v=y+16|0;t=y+12|0;
w=y+8|0;u=y+4|0;n=y;m=y+68|0;c[l>>2]=b;c[E>>2]=d;c[D>>2]=e;c[C>>2]=f;c[B>>2]=g
;c[A>>2]=h;c[z>>2]=j;c[(c[l>>2]|0)+52>>2]=(c[l>>2]|0)+184;c[(c[(c[l>>
;2]|0)+52>>2]|0)+24>>2]=c[(c[l>>2]|0)+68>>2];c[(c[(c[l>>2]|0)+52>>2]|
0)+24+4>>2]=c[(c[l>>2]|0)+72>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+16>>2]=c
[E>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+16+4>>2]=c[D>>2];c[(c[(c[l>>2]|0)+
52>>2]|0)+8>>2]=c[C>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+8+4>>2]=c[B>
x3e;2];c[c[(c[l>>2]|0)+52>>2]>>2]=c[A>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+
4>>2]=c[z>>2];a:while(1){c[p>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+24+4>>2];
c[q>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+16+4>>2];c[r>>2]=c[(c[(c[l>>2]|0)+
52>>2]|0)+8+4>>2];c[s>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+4>>2];c[o>
x3e;2]=c[c[(c[l>>2]|0)+52>>2]>>2];if((c[p>>2]|0)<=(c[s>>2]|0)){c[v>
x3e;2]=c[p>>2];c[t>>2]=c[s>>2]}else{c[v>>2]=c[s>>2];c[t>>2]=c[p>
;>2]}if((c[q>>2]|0)<=(c[r>>2]|0)){c[w>>2]=c[q>>2];c[u>>2]=c[r>
x3e;2]}else{c[w>>2]=c[r>>2];c[u>>2]=c[q>>2]}do if((c[w>>2]|0)>=(c[v>
x3e;2]|0)?(c[u>>2]|0)<=(c[t>>2]|0):0){if((c[p>>2]|0)==(c[s>>2]|0)){E=(c[l>>
;2]|0)+52|0;c[E>>2]=(c[E>>2]|0)+-24;break}c[n>>2]=(c[p>>2]|0)<=(c[s>>2]|0
)?1:2;if((c[(c[l>>2]|0)+100>>2]|0)!=(c[n>>2]|0)){d=c[p>>2]|0;if((c[n>>2]|0)==1
)d=((d+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[l>>2]|0)+4>>2]|0))-(c[p>>2]|0)|0
)>=(c[(c[l>>2]|0)+8>>2]|0);else d=(d-(c[p>>2]&0-(c[(c[l>>2]|0)+4>>2]|
0))|0)>=(c[(c[l>>2]|0)+8>>2]|0);a[m>>0]=d&1;if(c[(c[l>>2]|0)+100>>2]|
0?(Fo(c[l>>2]|0,a[m>>0]|0)|0)<<24>>24|0:0){x=25;break a}if((Eo(c[l>>2]|0,c[n
x3e;>2]|0,a[m>>0]|0)|0)<<24>>24){x=25;break a}}d=c[l>>2]|0;f=c[(c[l>>2]|0
)+76>>2]|0;e=c[(c[l>>2]|0)+80>>2]|0;if((c[n>>2]|0)==1)if((Ko(d,3,42,f,e)|0)<<24
>>24){x=25;break a}else break;else if((Lo(d,3,42,f,e)|0)<<24>>24){x=25;break a}else break}else x=10
;while(0);if((x|0)==10){x=0;No(c[(c[l>>2]|0)+52>>2]|0);E=(c[l>>2]|0)+52|0;c[E>>2]=(c[E
x3e;>2]|0)+24}if((c[(c[l>>2]|0)+52>>2]|0)>>>0<((c[l>>2]|0)+184|0)>
x3e;>0){x=24;break}}if((x|0)==24){c[(c[l>>2]|0)+68>>2]=c[o>>2];c[(c[l>>2]|0)+72>
;>2]=c[s>>2];a[k>>0]=0;E=a[k>>0]|0;i=y;return E|0}else if((x|0)==25){a[k>>0]=1;E=a[
k>>0]|0;i=y;return E|0}return 0}function No(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;f=b+12|0;e=b+8|
0;g=b+4|0;h=b;c[d>>2]=a;c[(c[d>>2]|0)+48>>2]=c[(c[d>>2]|0)+24>>2];c[g>>
;2]=c[(c[d>>2]|0)+8>>2];c[h>>2]=c[(c[d>>2]|0)+16>>2];a=(c[c[d>>2]>
;>2]|0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+8>>2]=a;a=(c[(c[d>
x3e;2]|0)+24>>2]|0)+(c[h>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>>2]|0)+40>>2]=
a;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1>>1;a=(c[f>>2]|0)+(c[g>>2]|0)+1
x3e;>1;c[f>>2]=a;c[(c[d>>2]|0)+16>>2]=a;a=(c[e>>2]|0)+(c[g>>2]|0)+1>
x3e;1;c[e>>2]=a;c[(c[d>>2]|0)+32>>2]=a;c[(c[d>>2]|0)+24>>2]=(c[f>>2]|
0)+(c[e>>2]|0)+1>>1;c[(c[d>>2]|0)+48+4>>2]=c[(c[d>>2]|0)+24+4>>2];c[
g>>2]=c[(c[d>>2]|0)+8+4>>2];c[h>>2]=c[(c[d>>2]|0)+16+4>>2];a=(c[(c[d
>>2]|0)+4>>2]|0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+8+4>
x3e;2]=a;a=(c[(c[d>>2]|0)+24+4>>2]|0)+(c[h>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>
x3e;2]|0)+40+4>>2]=a;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1>>1;a=(c[f>>2]|
0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+16+4>>2]=a;a=(c[e>>2]|0)+(
c[g>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>>2]|0)+32+4>>2]=a;c[(c[d>>2]|0)+24+
4>>2]=(c[f>>2]|0)+(c[e>>2]|0)+1>>1;i=b;return}function Oo(d){d=d|0;var f=0,g=0,h=0,j=0,k
=0,l=0,m=0;m=i;i=i+32|0;f=m+18|0;g=m+12|0;h=m+8|0;l=m+4|0;j=m+16|0;k=m;c[g>>2]=d;b[j>>1]=b[(c[g>>2
]|0)+84>>1]|0;c[k>>2]=c[(c[g>>2]|0)+92>>2];a:do if((e[j>>1]|0|0)>1&(
c[k>>2]|0)!=0){while(1){if((e[j>>1]|0|0)<=0)break a;d=c[k>>2]|0;if((e[j>>1]|0|0)>
;1)c[(c[k>>2]|0)+4>>2]=(c[d+8>>2]|0)+(c[(c[k>>2]|0)+16>>2]<<2);else
c[d+4>>2]=0;d=c[(c[k>>2]|0)+20>>2]|0;if(c[(c[k>>2]|0)+12>>2]&8|0){c[h>
;>2]=d;c[l>>2]=(c[(c[k>>2]|0)+20>>2]|0)+(c[(c[k>>2]|0)+16>>2]|0)-1}else{c
[h>>2]=d-(c[(c[k>>2]|0)+16>>2]|0)+1;c[l>>2]=c[(c[k>>2]|0)+20>>2];c[(
c[k>>2]|0)+20>>2]=c[h>>2];d=(c[k>>2]|0)+8|0;c[d>>2]=(c[d>>2]|0)+((c[(
c[k>>2]|0)+16>>2]|0)-1<<2)}if((Po(c[g>>2]|0,c[h>>2]|0)|0)<<24>
x3e;24|0)break;if((Po(c[g>>2]|0,(c[l>>2]|0)+1|0)|0)<<24>>24|0)break;c[k>>2]=c[(
c[k>>2]|0)+4>>2];b[j>>1]=(b[j>>1]|0)+-1<<16>>16}a[f>>0]=1;
l=a[f>>0]|0;i=m;return l|0}else c[(c[g>>2]|0)+92>>2]=0;while(0);a[f>>0]=0;l=a[f>>
;0]|0;i=m;return l|0}function Po(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;h=l+20|0;j=l+16|0;k=l+12|0;g=l+8|
0;f=l+4|0;e=l;c[j>>2]=b;c[k>>2]=d;c[e>>2]=(c[(c[j>>2]|0)+48>>2]|0)-1;c[g>
x3e;2]=(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j>>2]|0)+48>>2]|0)<<2);while(1){if((c
[e>>2]|0)>=0)d=(c[k>>2]|0)<(c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]|
0);else d=0;b=c[e>>2]|0;if(!d)break;c[e>>2]=b+-1}if((b|0)>=0?((c[e>>2]|0)>=0?(c[k>
x3e;2]|0)>(c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]|0):0):0)do{c[f>>2]=c[(c[g>
x3e;2]|0)+(c[e>>2]<<2)>>2];c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]=
c[k>>2];c[k>>2]=c[f>>2];c[e>>2]=(c[e>>2]|0)+-1}while((c[e>>2]|0)>
;=0);do if((c[e>>2]|0)<0){b=(c[j>>2]|0)+36|0;c[b>>2]=(c[b>>2]|0)+-4;b=c[j>>
;2]|0;if((c[(c[j>>2]|0)+36>>2]|0)>>>0>(c[(c[j>>2]|0)+40>>2]|0)>
x3e;>0){g=b+48|0;c[g>>2]=(c[g>>2]|0)+1;c[(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j>
x3e;2]|0)+48>>2]|0)<<2)>>2]=c[k>>2];break}c[b+44>>2]=98;a[h>>0]=1;k=
a[h>>0]|0;i=l;return k|0}while(0);a[h>>0]=0;k=a[h>>0]|0;i=l;return k|0}function Qo(d){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;D=i;i=i+80|0;h=D+72|0;j=D+52|0
;z=D+70|0;A=D+68|0;B=D+66|0;k=D+48|0;n=D+44|0;l=D+40|0;m=D+36|0;g=D+64|0;u=D+62|0;f=D+60|0;e=D+58|0;r=D+56|0;w=D+32|0;x=D+28|0;y
=D+24|0;s=D+20|0;t=D+16|0;v=D+12|0;o=D+8|0;p=D+4|0;q=D;c[j>>2]=d;Ro(v);Ro(o);Ro(p);c[k>>2]=c[(c[j>>
;2]|0)+92>>2];b[u>>1]=c[(c[j>>2]|0)+76>>2]>>c[c[j>>2]>>2];
b[g>>1]=c[(c[j>>2]|0)+80>>2]>>c[c[j>>2]>>2];while(1){if(!(c[k>
x3e;2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];b[e>>1]=c[(c[k>>2]|0)+20>>
;2];b[f>>1]=(c[(c[k>>2]|0)+20>>2]|0)+(c[(c[k>>2]|0)+16>>2]|0)-1;if((b[g>
x3e;1]|0)>(b[e>>1]|0))b[g>>1]=b[e>>1]|0;if((b[u>>1]|0)<(b[f>>1]|0))b
[u>>1]=b[f>>1]|0;c[c[k>>2]>>2]=0;So(v,c[k>>2]|0);c[k>>2]=c[n>
x3e;2]}e=c[j>>2]|0;if(!(c[(c[j>>2]|0)+48>>2]|0)){c[e+44>>2]=20;a[h>>0]=1;C=a[h
>>0]|0;i=D;return C|0}Ua[c[e+164>>2]&31](c[j>>2]|0,g,u);c[k>>2]=c[v>>2];while
(1){if(!(c[k>>2]|0))break;c[(c[k>>2]|0)+24>>2]=(c[(c[k>>2]|0)+20>>2]|0)-(b[g
x3e;>1]|0)&65535;c[k>>2]=c[(c[k>>2]|0)+4>>2]}b[z>>1]=b[g>>1]|0;b[B
x3e;>1]=0;if((c[(c[j>>2]|0)+48>>2]|0)>0?(c[(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j
>>2]|0)+48>>2]|0)<<2)>>2]|0)==(b[g>>1]|0):0){g=(c[j>>2]|0)+48|0;c[g
x3e;>2]=(c[g>>2]|0)+-1}a:while(1){if((c[(c[j>>2]|0)+48>>2]|0)<=0)break;c[k>>2]=
c[v>>2];while(1){if(!(c[k>>2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];g=(c[k>
;>2]|0)+24|0;c[g>>2]=(c[g>>2]|0)-(b[B>>1]|0);do if(!(c[(c[k>>2]|0)+24>>2]|
0)){To(v,c[k>>2]|0);e=c[k>>2]|0;if(c[(c[k>>2]|0)+12>>2]&8|0){So(o,e);break}else{So(
p,e);break}}while(0);c[k>>2]=c[n>>2]}Uo(o);Uo(p);d=(c[j>>2]|0)+48|0;g=c[d>>2]|0;c[d>
;>2]=g+-1;b[A>>1]=c[(c[(c[j>>2]|0)+32>>2]|0)+(0-g<<2)>>2];b[B>>
1]=(b[A>>1]|0)-(b[z>>1]|0);while(1){if((b[z>>1]|0)>=(b[A>>1]|0))break;b[r>>
;1]=0;c[l>>2]=c[o>>2];c[m>>2]=c[p>>2];while(1){if(!(c[l>>2]|0))break;c[w>
x3e;2]=c[c[l>>2]>>2];c[x>>2]=c[c[m>>2]>>2];if((c[w>>2]|0)>(c[x
x3e;>2]|0)){c[y>>2]=c[w>>2];c[w>>2]=c[x>>2];c[x>>2]=c[y>>2]}c[s
>>2]=c[w>>2]&0-(c[(c[j>>2]|0)+4>>2]|0);c[t>>2]=(c[x>>2]|0)+(c[(
c[j>>2]|0)+4>>2]|0)-1&0-(c[(c[j>>2]|0)+4>>2]|0);do if((((c[x>>2]|0)-(c[w
x3e;>2]|0)|0)<=(c[(c[j>>2]|0)+4>>2]|0)?(c[s>>2]|0)!=(c[w>>2]|0):0)?(c[t>
x3e;2]|0)!=(c[x>>2]|0):0){if((c[s>>2]|0)<=(c[t>>2]|0)?(c[t>>2]|0)!=((c[s>>
;2]|0)+(c[(c[j>>2]|0)+4>>2]|0)|0):0){C=37;break}c[q>>2]=c[(c[l>>2]|0)+12>>2]
x26;7;if((c[q>>2]|0)!=2){c[c[l>>2]>>2]=c[w>>2];c[c[m>>2]>>2]=c[x>
;>2];c[(c[l>>2]|0)+24>>2]=1;b[r>>1]=(b[r>>1]|0)+1<<16>>16}}else
C=37;while(0);if((C|0)==37){C=0;Xa[c[(c[j>>2]|0)+168>>2]&7](c[j>>2]|0,b[z>>1]|0,c[
w>>2]|0,c[x>>2]|0,c[l>>2]|0,c[m>>2]|0)}c[l>>2]=c[(c[l>>2]|0)+4>
x3e;2];c[m>>2]=c[(c[m>>2]|0)+4>>2]}b:do if((b[r>>1]|0)>0){c[l>>2]=c[o>
;>2];c[m>>2]=c[p>>2];while(1){if(!(c[l>>2]|0))break b;if(c[(c[l>>2]|0)+24>>
;2]|0){c[(c[l>>2]|0)+24>>2]=0;Xa[c[(c[j>>2]|0)+172>>2]&7](c[j>>2]|0,b[z
x3e;>1]|0,c[c[l>>2]>>2]|0,c[c[m>>2]>>2]|0,c[l>>2]|0,c[m>>2]|0)}
c[l>>2]=c[(c[l>>2]|0)+4>>2];c[m>>2]=c[(c[m>>2]|0)+4>>2]}}while(0);Va
[c[(c[j>>2]|0)+176>>2]&63](c[j>>2]|0);b[z>>1]=(b[z>>1]|0)+1<<16
>>16;if((b[z>>1]|0)>=(b[A>>1]|0))continue;Uo(o);Uo(p)}c[k>>2]=c[o>>2];while
(1){if(!(c[k>>2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];if(!(c[(c[k>>2]|0)+16>
;>2]|0))To(o,c[k>>2]|0);c[k>>2]=c[n>>2]}c[k>>2]=c[p>>2];while(1){if(!(c[k
>>2]|0))continue a;c[n>>2]=c[(c[k>>2]|0)+4>>2];if(!(c[(c[k>>2]|0)+16>>
;2]|0))To(p,c[k>>2]|0);c[k>>2]=c[n>>2]}}while(1){if((b[z>>1]|0)>(b[u>>1]|
0))break;Va[c[(c[j>>2]|0)+176>>2]&63](c[j>>2]|0);b[z>>1]=(b[z>>1]|0)+1<
;<16>>16}a[h>>0]=0;C=a[h>>0]|0;i=D;return C|0}function Ro(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]=0;i=b;return}function So(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h
=i;i=i+32|0;j=h+16|0;d=h+12|0;f=h+8|0;e=h+4|0;g=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=c[j>>2];c[
e>>2]=c[c[f>>2]>>2];c[g>>2]=c[c[d>>2]>>2];while(1){if(!(c[e>>
;2]|0))break;if((c[g>>2]|0)<(c[c[e>>2]>>2]|0))break;c[f>>2]=(c[e>>2]|0)+4
;c[e>>2]=c[c[f>>2]>>2]}c[(c[d>>2]|0)+4>>2]=c[e>>2];c[c[f>>
2]>>2]=c[d>>2];i=h;return}function To(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;j=h+12|0;d=h
+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=c[j>>2];c[e>>2]=c[c[f>>
2]>>2];while(1){if(!(c[e>>2]|0)){g=6;break}a=(c[e>>2]|0)+4|0;if((c[e>>2]|0)==(c[d>
x3e;2]|0))break;c[f>>2]=a;c[e>>2]=c[c[f>>2]>>2]}if((g|0)==6){i=h;return}c[c[f>>
;2]>>2]=c[a>>2];i=h;return}function Uo(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;f=g+8|0;d=g+4|
0;e=g;c[b>>2]=a;c[d>>2]=c[c[b>>2]>>2];while(1){if(!(c[d>>2]|0))break;c[c[d>
;>2]>>2]=c[c[(c[d>>2]|0)+8>>2]>>2];a=(c[d>>2]|0)+8|0;c[a>>2]=(c
[a>>2]|0)+((c[(c[d>>2]|0)+12>>2]&8|0?1:-1)<<2);a=(c[d>>2]|0)+16|0;c[a>
;>2]=(c[a>>2]|0)+-1;c[d>>2]=c[(c[d>>2]|0)+4>>2]}c[f>>2]=c[b>>2];
c[d>>2]=c[c[f>>2]>>2];if(!(c[d>>2]|0)){i=g;return}c[e>>2]=c[(c[d>>2]|
0)+4>>2];while(1){if(!(c[e>>2]|0)){b=11;break}if((c[c[d>>2]>>2]|0)<=(c[c[e>>
;2]>>2]|0)){c[f>>2]=(c[d>>2]|0)+4;c[d>>2]=c[c[f>>2]>>2];if(!(c[d>
;>2]|0)){b=11;break}}else{c[c[f>>2]>>2]=c[e>>2];c[(c[d>>2]|0)+4>>2]=c[(c[
e>>2]|0)+4>>2];c[(c[e>>2]|0)+4>>2]=c[d>>2];c[f>>2]=c[b>>2];
c[d>>2]=c[c[f>>2]>>2]}c[e>>2]=c[(c[d>>2]|0)+4>>2]}if((b|0)==11){i=g;
return}}function Vo(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>
x3e;2]=b;c[f>>2]=d;c[h>>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>
x3e;2];i=e;return}function Wo(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;u=i;i=i+48|0;l=u+32|0;m=u+36|0;n=u+28|0;o=u+24|0;w=u+20|0;v=u+16|0;q=u+12|0;r=u+8|0;p=u+4|0;s=u+38|0;t=u;c[l>>2]=e;
b[m>>1]=f;c[n>>2]=g;c[o>>2]=h;c[w>>2]=j;c[v>>2]=k;c[w>>2]=c[w>
x3e;2];c[v>>2]=c[v>>2];if(((c[o>>2]|0)-(c[n>>2]|0)|0)>=(c[(c[l>>2]|0)+4
x3e;>2]|0)){i=u;return}c[q>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[l
>>2]|0)+4>>2]|0);c[r>>2]=c[o>>2]&0-(c[(c[l>>2]|0)+4>>2]|0);if((
c[q>>2]|0)!=(c[r>>2]|0)){i=u;return}c[p>>2]=(c[(c[l>>2]|0)+60>>2]|0)+(b[m>
;>1]>>3);a[s>>0]=128>>(b[m>>1]&7);c[q>>2]=c[q>>2]>>
;c[c[l>>2]>>2];if((c[q>>2]|0)<0){i=u;return}if((c[q>>2]|0)>=(c[(c[l>>
;2]|0)+104>>2]|0)){i=u;return}c[t>>2]=(c[p>>2]|0)+(0-(_(c[q>>2]|0,c[(c[l>>2]|0
)+104+8>>2]|0)|0));if((c[(c[l>>2]|0)+104+8>>2]|0)>0){w=_((c[(c[l>>2]|0)+104>
x3e;2]|0)-1|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[t>>2]=(c[t>>2]|0)+w}w=c[t>>2]|0;a
[w>>0]=d[w>>0]|d[s>>0];i=u;return}function Xo(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;x=i;i=i+48|0;l=x+36|0;m=x+40|0;n=x+32|0;o=x+28|0;p=x+24|0;q=x+20|0;t=x+16|0
;u=x+12|0;w=x+8|0;r=x+4|0;v=x+42|0;s=x;c[l>>2]=e;b[m>>1]=f;c[n>>2]=g;c[o>>2]=h;c[p>
x3e;2]=j;c[q>>2]=k;c[t>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[
l>>2]|0)+4>>2]|0);c[u>>2]=c[o>>2]&0-(c[(c[l>>2]|0)+4>>2]|0);c[w
>>2]=c[t>>2];if((c[t>>2]|0)>(c[u>>2]|0)){c[s>>2]=c[(c[p>>2]|0)+
12>>2]&7;if((c[t>>2]|0)!=((c[u>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)|0)){i=x;return
}a:do switch(c[s>>2]|0){case 0:{c[w>>2]=c[u>>2];break}case 4:{c[w>>2]=(((c[n>>
2]|0)+(c[o>>2]|0)-1|0)/2|0)+(c[(c[l>>2]|0)+8>>2]|0)&0-(c[(c[l>>2]|0)+4>>2
]|0);break}case 5:case 1:{if((c[(c[p>>2]|0)+28>>2]|0)==(c[q>>2]|0)?(c[(c[p>>2]|0)+16>
;>2]|0)<=0:0){if(!(c[(c[p>>2]|0)+12>>2]&16)){i=x;return}if(((c[o>>2]|0)-(c[n>
x3e;2]|0)|0)<(c[(c[l>>2]|0)+8>>2]|0)){i=x;return}}if((c[(c[q>>2]|0)+28>>2]|0)==(c[p
>>2]|0)?(c[(c[p>>2]|0)+20>>2]|0)==(b[m>>1]|0):0){if(!(c[(c[p>>2]|0)+12>
x3e;2]&32)){i=x;return}if(((c[o>>2]|0)-(c[n>>2]|0)|0)<(c[(c[l>>2]|0)+8>>2]|0)){
i=x;return}}if((c[s>>2]|0)==1){c[w>>2]=c[u>>2];break a}else{c[w>>2]=(((c[n>>2]|
0)+(c[o>>2]|0)-1|0)/2|0)+(c[(c[l>>2]|0)+8>>2]|0)&0-(c[(c[l>>2]|0)+4>>2]|0
);break a}}default:{i=x;return}}while(0);c[t>>2]=(c[w>>2]|0)==(c[t>>2]|0)?c[u>>2]|0:c[t
x3e;>2]|0;c[t>>2]=c[t>>2]>>c[c[l>>2]>>2];c[r>>2]=(c[(c[l>
x3e;2]|0)+60>>2]|0)+(b[m>>1]>>3);a[v>>0]=128>>(b[m>>1]&7);f=_(c
[t>>2]|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[r>>2]=(c[r>>2]|0)+(0-f);if((c[(c[l>
;>2]|0)+104+8>>2]|0)>0){f=_((c[(c[l>>2]|0)+104>>2]|0)-1|0,c[(c[l>>2]|0)+104+8
x3e;>2]|0)|0;c[r>>2]=(c[r>>2]|0)+f}if(((c[t>>2]|0)>=0?(c[t>>2]|0)<(c[(c[l
>>2]|0)+104>>2]|0):0)?d[c[r>>2]>>0]&d[v>>0]|0:0){i=x;return}}c[r>>
;2]=(c[(c[l>>2]|0)+60>>2]|0)+(b[m>>1]>>3);a[v>>0]=128>>(b[m>>
;1]&7);c[t>>2]=c[w>>2]>>c[c[l>>2]>>2];if((c[t>>2]|0)<0){i=
x;return}if((c[t>>2]|0)>=(c[(c[l>>2]|0)+104>>2]|0)){i=x;return}f=_(c[t>>2]|0,c[(c[l
>>2]|0)+104+8>>2]|0)|0;c[r>>2]=(c[r>>2]|0)+(0-f);if((c[(c[l>>2]|0)+104+8>
x3e;2]|0)>0){f=_((c[(c[l>>2]|0)+104>>2]|0)-1|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[r>
;>2]=(c[r>>2]|0)+f}f=c[r>>2]|0;a[f>>0]=d[f>>0]|d[v>>0];i=x;return}function
Yo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return}function Zo(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]|0)+8>>2];Fb(c[e
x3e;>2]|0,c[d>>2]|0);c[d>>2]=0;i=b;return}function _o(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)+4>>2];Ua[c[(c[(c[(c[e>>2]|0)+20>>2]|
0)+56>>2]|0)+8>>2]&31](c[(c[e>>2]|0)+60>>2]|0,c[(c[d>>2]|0)+172>>
;2]|0,c[(c[d>>2]|0)+176>>2]|0);i=b;return 0}function $o(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;w=i;i=i+128|0;j=w+112|0;k=w+108|0;l=w+104|0;m=w+100|0;h=w+96|0;p=w+92|0;s=w+88|0;o=
w+72|0;v=w+64|0;q=w+60|0;u=w+56|0;n=w+52|0;r=w+48|0;t=w;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[h>>
;2]=g;if((c[(c[l>>2]|0)+72>>2]|0)==(c[(c[k>>2]|0)+24>>2]|0)){f=c[(c[k>>2]|0)+20
>>2]|0;if((c[m>>2]|0)!=2){if((f|0)==4028){c[j>>2]=19;v=c[j>>2]|0;i=w;return v|0}}else if
((f|0)==4088){c[j>>2]=19;v=c[j>>2]|0;i=w;return v|0}c[s>>2]=(c[l>>2]|0)+108;if(c[h>
x3e;2]|0)Nb(c[s>>2]|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0);_d(c[s>>
;2]|0,o);c[o>>2]=c[o>>2]&-64;c[o+4>>2]=c[o+4>>2]&-64;c[o+8>>2]=(c[o+
8>>2]|0)+63&-64;c[o+12>>2]=(c[o+12>>2]|0)+63&-64;c[v>>2]=(c[o+8>>2]|
0)-(c[o>>2]|0)>>6;c[q>>2]=(c[o+12>>2]|0)-(c[o+4>>2]|0)>>6;c[n>
x3e;2]=(c[l>>2]|0)+76;c[r>>2]=c[(c[k>>2]|0)+8>>2];if(c[(c[(c[l>>2]|0)+156>
;>2]|0)+4>>2]&1|0){Fb(c[r>>2]|0,c[(c[n>>2]|0)+12>>2]|0);c[(c[n>>2]|0
)+12>>2]=0;h=(c[(c[l>>2]|0)+156>>2]|0)+4|0;c[h>>2]=c[h>>2]&-2}f=c[v>
x3e;2]|0;if(c[m>>2]&2|0){c[u>>2]=(f+15|0)>>>4<<1;a[(c[n>>2]|0)+18>
;>0]=1}else{c[u>>2]=f+3&-4;a[(c[n>>2]|0)+18>>0]=2;b[(c[n>>2]|0)+16>>
1]=256}c[(c[n>>2]|0)+4>>2]=c[v>>2];c[c[n>>2]>>2]=c[q>>2];c[(c[n>
;>2]|0)+8>>2]=c[u>>2];v=hc(c[r>>2]|0,c[q>>2]|0,0,c[u>>2]|0,0,p)|0;c[(c[n
x3e;>2]|0)+12>>2]=v;if(!(c[p>>2]|0)){v=(c[(c[l>>2]|0)+156>>2]|0)+4|0;c[v>>
;2]=c[v>>2]|1;Nb(c[s>>2]|0,0-(c[o>>2]|0)|0,0-(c[o+4>>2]|0)|0);c[t>>2]=c[n>
;>2];c[t+4>>2]=c[s>>2];c[t+8>>2]=0;if((a[(c[n>>2]|0)+18>>0]|0)==2){v=t+8|
0;c[v>>2]=c[v>>2]|1}c[p>>2]=Ya[c[(c[k>>2]|0)+64>>2]&127](c[(c[k>>
;2]|0)+60>>2]|0,t)|0;Nb(c[s>>2]|0,c[o>>2]|0,c[o+4>>2]|0);if(!(c[p>>2]|0)){c[(c
[l>>2]|0)+72>>2]=1651078259;c[(c[l>>2]|0)+100>>2]=c[o>>2]>>6;c[(c[l
x3e;>2]|0)+104>>2]=c[o+12>>2]>>6}}}else c[p>>2]=6;c[j>>2]=c[p>>
2];v=c[j>>2]|0;i=w;return v|0}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,l=0;k=i;i=i+32|0;l=
k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[l>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>
;2]=0;if((c[(c[f>>2]|0)+72>>2]|0)!=(c[(c[l>>2]|0)+24>>2]|0)){c[j>>2]=6;l=c[j
x3e;>2]|0;i=k;return l|0}if(c[g>>2]|0)Kb((c[f>>2]|0)+108|0,c[g>>2]|0);if(!(c[h>>2]|
0)){l=c[j>>2]|0;i=k;return l|0}Nb((c[f>>2]|0)+108|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|
0)+4>>2]|0);l=c[j>>2]|0;i=k;return l|0}function bp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0
;h=g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[e>>2]=b;c[f>>2]=d;b=c[f>>2]|0;c[b>>2]=0;c[b+4
>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;if((c[(c[e>>2]|0)+72>>2]|0)!=(c[(c[h>>
;2]|0)+24>>2]|0)){i=g;return}_d((c[e>>2]|0)+108|0,c[f>>2]|0);i=g;return}function cp(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=Oa
[c[(c[(c[(c[h>>2]|0)+20>>2]|0)+56>>2]|0)+12>>2]&63](c[(c[h>>2]|0)+60>
;>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function dp(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[c[e>>2]>>
2]=0;c[g>>2]=bc(c[d>>2]|0,20,f)|0;if(c[f>>2]|0){g=c[f>>2]|0;i=h;return g|0}c[(c[g>
x3e;2]|0)+12>>2]=c[d>>2];c[c[e>>2]>>2]=c[g>>2];g=c[f>>2]|0;i=h;return
g|0}function ep(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;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>
;>2]=a;c[e>>2]=b;c[f>>2]=d;c[g>>2]=c[k>>2];if(!(c[k>>2]|0)){i=j;return}if
((c[e>>2]|0)!=0&(c[f>>2]|0)>=3476){c[h>>2]=c[e>>2];c[(c[g>>2]|0)+16
x3e;>2]=c[h>>2];c[c[g>>2]>>2]=(c[e>>2]|0)+1440;c[(c[g>>2]|0)+4>>
;2]=(c[e>>2]|0)+(c[f>>2]|0)-(c[c[g>>2]>>2]|0)&-16;c[(c[g>>2]|0)+8>
x3e;2]=((c[(c[g>>2]|0)+4>>2]|0)>>>0)/128|0;i=j;return}else{c[c[g>>2]>>2]=
0;c[(c[g>>2]|0)+4>>2]=0;c[(c[g>>2]|0)+16>>2]=0;i=j;return}}function fp(a,d){a=a|0;d=d|0;
var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[f>>2]=a;c[g>>2
]=d;c[h>>2]=c[(c[g>>2]|0)+4>>2];c[j>>2]=c[c[g>>2]>>2];if((c[f>
x3e;2]|0?c[c[f>>2]>>2]|0:0)?c[(c[f>>2]|0)+4>>2]|0:0){if(!(c[h>>2]|0)){c[e>
;>2]=20;k=c[e>>2]|0;i=l;return k|0}if(b[(c[h>>2]|0)+2>>1]|0?(b[c[h>>2]>>1
]|0)>0:0){if(c[(c[h>>2]|0)+12>>2]|0?c[(c[h>>2]|0)+4>>2]|0:0){if((b[(c[h>>
2]|0)+2>>1]|0)!=((b[(c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>>1]|0)-1<<1
)>>1]|0)+1|0)){c[e>>2]=20;k=c[e>>2]|0;i=l;return k|0}c[k>>2]=c[(c[f>>2]|0)+16
x3e;>2];do if(!(c[(c[g>>2]|0)+8>>2]&2)){if(!(c[j>>2]|0)){c[e>>2]=6;k=c[e>
x3e;2]|0;i=l;return k|0}if(c[(c[j>>2]|0)+4>>2]|0?c[c[j>>2]>>2]|0:0){if(c[(c[j>>
;2]|0)+12>>2]|0)break;c[e>>2]=6;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=0;k=c[e>>2]|
0;i=l;return k|0}while(0);if(!(c[(c[g>>2]|0)+8>>2]&1)){c[e>>2]=19;k=c[e>>2]|0;i=l;return
k|0}do if(c[(c[g>>2]|0)+8>>2]&2|0){d=(c[k>>2]|0)+1024|0;if(c[(c[g>>2]|0)+8>
x3e;2]&4|0){a=(c[g>>2]|0)+32|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8
x3e;>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];break}else{c[d>>2]=-32768;c[(c[k>>
;2]|0)+1024+4>>2]=-32768;c[(c[k>>2]|0)+1024+8>>2]=32767;c[(c[k>>2]|0)+1024+12>>
;2]=32767;break}}else{c[(c[k>>2]|0)+1024>>2]=0;c[(c[k>>2]|0)+1024+4>>2]=0;c[(c[k>
x3e;2]|0)+1024+8>>2]=c[(c[j>>2]|0)+4>>2];c[(c[k>>2]|0)+1024+12>>2]=c[c[j>
x3e;2]>>2]}while(0);gp(c[k>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|
0);a=(c[k>>2]|0)+980|0;h=c[h>>2]|0;c[a>>2]=c[h>>2];c[a+4>>2]=c[h+4>>
2];c[a+8>>2]=c[h+8>>2];c[a+12>>2]=c[h+12>>2];c[a+16>>2]=c[h+16>>2];c
[(c[k>>2]|0)+52>>2]=0;c[(c[k>>2]|0)+40>>2]=1;c[(c[k>>2]|0)+1248>>2]=
c[(c[f>>2]|0)+8>>2];c[(c[k>>2]|0)+1232>>2]=0;if(c[(c[g>>2]|0)+8>>2]
x26;2|0){c[(c[k>>2]|0)+1236>>2]=c[(c[g>>2]|0)+12>>2];c[(c[k>>2]|0)+1240>
x3e;2]=c[(c[g>>2]|0)+28>>2]}else{h=(c[k>>2]|0)+1e3|0;j=c[j>>2]|0;c[h>>2]=c[j
x3e;>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[h+12>>2]=c[j+12>
x3e;2];c[h+16>>2]=c[j+16>>2];c[h+20>>2]=c[j+20>>2];c[(c[k>>2]|0)+1236>>
;2]=13;c[(c[k>>2]|0)+1240>>2]=c[k>>2]}c[e>>2]=ip(c[k>>2]|0)|0;k=c[e>>
;2]|0;i=l;return k|0}c[e>>2]=20;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=0;k=c[e>>2]|0;i=l;return
k|0}c[e>>2]=6;k=c[e>>2]|0;i=l;return k|0}function gp(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[(c[f>>2]|0)+1412>>2]=c[
g>>2];c[(c[f>>2]|0)+1416>>2]=c[h>>2];c[(c[f>>2]|0)+1420>>2]=c[g>
;>2];c[(c[f>>2]|0)+44>>2]=0;c[(c[f>>2]|0)+48>>2]=0;c[(c[f>>2]|0)+52>
x3e;2]=0;c[(c[f>>2]|0)+32>>2]=0;c[(c[f>>2]|0)+36>>2]=0;c[(c[f>>2]|0)+40>
x3e;2]=1;i=e;return}function hp(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;r=i;i=i+32|0;s=r+24
|0;l=r+20|0;m=r+16|0;t=r+12|0;o=r+8|0;k=r+4|0;n=r+28|0;p=r;c[s>>2]=f;c[l>>2]=g;c[m>>2]=h;c[t>
x3e;2]=j;c[k>>2]=(c[t>>2]|0)+1e3;c[o>>2]=(c[(c[k>>2]|0)+12>>2]|0)+(0-(_(c[s>
;>2]|0,c[(c[k>>2]|0)+8>>2]|0)|0));if((c[(c[k>>2]|0)+8>>2]|0)>=0){t=_((c[c[k>
;>2]>>2]|0)-1|0,c[(c[k>>2]|0)+8>>2]|0)|0;c[o>>2]=(c[o>>2]|0)+t}while(1){if
((c[l>>2]|0)<=0)break;a[n>>0]=a[(c[m>>2]|0)+4>>0]|0;a:do if(a[n>>0]|0){g=(
c[o>>2]|0)+(b[c[m>>2]>>1]|0)|0;if((e[(c[m>>2]|0)+2>>1]|0)>=8){Ns(g|0,d[n
x3e;>0]&255|0,e[(c[m>>2]|0)+2>>1]|0)|0;break}c[p>>2]=g;switch(e[(c[m>>2]|0)+2
x3e;>1]|0){case 7:{t=a[n>>0]|0;q=c[p>>2]|0;c[p>>2]=q+1;a[q>>0]=t;q=9;break}case 6:{
q=9;break}case 5:{q=10;break}case 4:{q=11;break}case 3:{q=12;break}case 2:{q=13;break}case 1:break;default:break a}if((q|0)==9){
s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s;q=10}if((q|0)==10){s=a[n>>0]|0;t
=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s;q=11}if((q|0)==11){s=a[n>>0]|0;t=c[p>>2]|0;c[
p>>2]=t+1;a[t>>0]=s;q=12}if((q|0)==12){s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t
>>0]=s;q=13}if((q|0)==13){q=0;s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s}a[
c[p>>2]>>0]=a[n>>0]|0}while(0);c[l>>2]=(c[l>>2]|0)+-1;c[m>>2]=(c[m
x3e;>2]|0)+6}i=r;return}function ip(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;w=i;i=i+400|0;u=w+388|0;v=w+384|0;d=w+64|0;b=w+60|0;q=w+56|0;r=w+52|0;p=w+48|0;m=w+44|0;n=w+40|0;k=w+36|0;e=w+32|0;s=w+28|
0;o=w+24|0;l=w+20|0;j=w+16|0;t=w+12|0;h=w+8|0;f=w+4|0;g=w;c[v>>2]=a;jp(c[v>>2]|0);c[k>>2]=(c[v>
;>2]|0)+1024;if((((c[(c[v>>2]|0)+12>>2]|0)>(c[c[k>>2]>>2]|0)?(c[(c[v>>
;2]|0)+8>>2]|0)<(c[(c[k>>2]|0)+8>>2]|0):0)?(c[(c[v>>2]|0)+20>>2]|0)>(
c[(c[k>>2]|0)+4>>2]|0):0)?(c[(c[v>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0)+12>
;>2]|0):0){if((c[(c[v>>2]|0)+8>>2]|0)<(c[c[k>>2]>>2]|0))c[(c[v>>2]|0
)+8>>2]=c[c[k>>2]>>2];if((c[(c[v>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0
)+4>>2]|0))c[(c[v>>2]|0)+16>>2]=c[(c[k>>2]|0)+4>>2];if((c[(c[v>>2]|0
)+12>>2]|0)>(c[(c[k>>2]|0)+8>>2]|0))c[(c[v>>2]|0)+12>>2]=c[(c[k>>
;2]|0)+8>>2];if((c[(c[v>>2]|0)+20>>2]|0)>(c[(c[k>>2]|0)+12>>2]|0))c[(c[v
x3e;>2]|0)+20>>2]=c[(c[k>>2]|0)+12>>2];c[(c[v>>2]|0)+24>>2]=(c[(c[v>
x3e;2]|0)+12>>2]|0)-(c[(c[v>>2]|0)+8>>2]|0);c[(c[v>>2]|0)+28>>2]=(c[(c[v>
x3e;2]|0)+20>>2]|0)-(c[(c[v>>2]|0)+16>>2]|0);c[r>>2]=((c[(c[v>>2]|0)+20>
x3e;2]|0)-(c[(c[v>>2]|0)+16>>2]|0)|0)/(c[(c[v>>2]|0)+1248>>2]|0)|0;if(!(c[r>>2
]|0))c[r>>2]=1;if((c[r>>2]|0)>=39)c[r>>2]=39;c[(c[v>>2]|0)+1252>>2]=0;c[p
>>2]=c[(c[v>>2]|0)+16>>2];c[n>>2]=c[(c[v>>2]|0)+20>>2];c[q>>
;2]=0;a:while(1){if((c[q>>2]|0)>=(c[r>>2]|0)){b=42;break}c[m>>2]=(c[p>>2]|0)+(c[(c[
v>>2]|0)+1248>>2]|0);if(!((c[q>>2]|0)!=((c[r>>2]|0)-1|0)?(c[m>>2]|0)<=(c[
n>>2]|0):0))c[m>>2]=c[n>>2];c[d>>2]=c[p>>2];c[d+4>>2]=c[m>>
;2];c[b>>2]=d;b:while(1){if((c[b>>2]|0)>>>0<d>>>0)break;c[(c[v>>
;2]|0)+1420>>2]=c[(c[v>>2]|0)+1412>>2];c[(c[v>>2]|0)+1424>>2]=(c[(c[b>>
;2]|0)+4>>2]|0)-(c[c[b>>2]>>2]|0);c[h>>2]=c[(c[v>>2]|0)+1424>>2]<
;<2;c[g>>2]=((c[h>>2]|0)>>>0)%16|0;if((c[g>>2]|0)>0)c[h>>2]=(c[
h>>2]|0)+(16-(c[g>>2]|0));c[f>>2]=c[(c[v>>2]|0)+1416>>2];c[f>>2]=(c[
f>>2]|0)-(((c[f>>2]|0)>>>0)%16|0);c[j>>2]=(c[(c[v>>2]|0)+1412>>
2]|0)+(c[f>>2]|0);c[(c[v>>2]|0)+44>>2]=(c[(c[v>>2]|0)+1412>>2]|0)+(c[h>
x3e;2]|0);do if((c[(c[v>>2]|0)+44>>2]|0)>>>0<(c[j>>2]|0)>>>0?(c
[(c[v>>2]|0)+48>>2]=((c[j>>2]|0)-(c[(c[v>>2]|0)+44>>2]|0)|0)/16|0,(c[(c[v>
;>2]|0)+48>>2]|0)>=2):0){c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[(c[v>>2]|0
)+1424>>2]|0))break;c[(c[(c[v>>2]|0)+1420>>2]|0)+(c[t>>2]<<2)>>2]=0;
c[t>>2]=(c[t>>2]|0)+1}c[(c[v>>2]|0)+52>>2]=0;c[(c[v>>2]|0)+40>>2]=1;
c[(c[v>>2]|0)+16>>2]=c[c[b>>2]>>2];c[(c[v>>2]|0)+20>>2]=c[(c[b>
x3e;2]|0)+4>>2];c[(c[v>>2]|0)+28>>2]=(c[(c[b>>2]|0)+4>>2]|0)-(c[c[b>>
;2]>>2]|0);c[l>>2]=kp(c[v>>2]|0)|0;if(c[l>>2]|0)if((c[l>>2]|0)!=64){b=35;break
a}else break;else{zp(c[v>>2]|0,(c[v>>2]|0)+1e3|0);c[b>>2]=(c[b>>2]|0)+-8;continue b}}while
(0);c[e>>2]=c[c[b>>2]>>2];c[s>>2]=c[(c[b>>2]|0)+4>>2];c[o>>
;2]=(c[e>>2]|0)+((c[s>>2]|0)-(c[e>>2]|0)>>1);if((c[o>>2]|0)==(c[e>>2
]|0)){b=37;break a}if(((c[e>>2]|0)-(c[s>>2]|0)|0)>=(c[(c[v>>2]|0)+1248>>2]|0)){a=(c
[v>>2]|0)+1252|0;c[a>>2]=(c[a>>2]|0)+1}c[(c[b>>2]|0)+8>>2]=c[e>>2];c
[(c[b>>2]|0)+8+4>>2]=c[o>>2];c[c[b>>2]>>2]=c[o>>2];c[(c[b>>
;2]|0)+4>>2]=c[s>>2];c[b>>2]=(c[b>>2]|0)+8}c[q>>2]=(c[q>>2]|0)+1;c[p
>>2]=c[m>>2]}if((b|0)==35){c[u>>2]=1;v=c[u>>2]|0;i=w;return v|0}else if((b|0)==37){c[u
x3e;>2]=1;v=c[u>>2]|0;i=w;return v|0}else if((b|0)==42){if((c[(c[v>>2]|0)+1252>>2]|0)>8?(
c[(c[v>>2]|0)+1248>>2]|0)>16:0)c[(c[v>>2]|0)+1248>>2]=(c[(c[v>>2]|0)+1248
>>2]|0)/2|0;c[u>>2]=0;v=c[u>>2]|0;i=w;return v|0}}c[u>>2]=0;v=c[u>>2]|0;i=w;return
v|0}function jp(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;d=j+20|0;k=j+16|0;f=j+12|0;e=j+8|0;g=j+4|0;h=j;c[d>
x3e;2]=a;c[k>>2]=(c[d>>2]|0)+980;c[f>>2]=c[(c[k>>2]|0)+4>>2];c[e>>2]=(
c[f>>2]|0)+(b[(c[k>>2]|0)+2>>1]<<3);if((b[(c[k>>2]|0)+2>>1]|0)<=
0){c[(c[d>>2]|0)+12>>2]=0;c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+20>>2]=
0;c[(c[d>>2]|0)+16>>2]=0;i=j;return}k=c[c[f>>2]>>2]|0;c[(c[d>>2]|0)+12>
x3e;2]=k;c[(c[d>>2]|0)+8>>2]=k;k=c[(c[f>>2]|0)+4>>2]|0;c[(c[d>>2]|0)+20>
x3e;2]=k;c[(c[d>>2]|0)+16>>2]=k;c[f>>2]=(c[f>>2]|0)+8;while(1){if((c[f>>2]|0)
x3e;>>0>=(c[e>>2]|0)>>>0)break;c[g>>2]=c[c[f>>2]>>2];c[h
x3e;>2]=c[(c[f>>2]|0)+4>>2];if((c[g>>2]|0)<(c[(c[d>>2]|0)+8>>2]|0))c
[(c[d>>2]|0)+8>>2]=c[g>>2];if((c[g>>2]|0)>(c[(c[d>>2]|0)+12>>2]|
0))c[(c[d>>2]|0)+12>>2]=c[g>>2];if((c[h>>2]|0)<(c[(c[d>>2]|0)+16>>
;2]|0))c[(c[d>>2]|0)+16>>2]=c[h>>2];if((c[h>>2]|0)>(c[(c[d>>2]|0)+20>
;>2]|0))c[(c[d>>2]|0)+20>>2]=c[h>>2];c[f>>2]=(c[f>>2]|0)+8}c[(c[d>
x3e;2]|0)+8>>2]=c[(c[d>>2]|0)+8>>2]>>6;c[(c[d>>2]|0)+16>>2]=c[(c[d
x3e;>2]|0)+16>>2]>>6;c[(c[d>>2]|0)+12>>2]=(c[(c[d>>2]|0)+12>>2]|
0)+63>>6;c[(c[d>>2]|0)+20>>2]=(c[(c[d>>2]|0)+20>>2]|0)+63>>6;i=j;return
}function kp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;h=4;f=Fs(40)|0;c[f>>2]=0;g=j;c[g>>2]=0;h=
Qs(a+1256|0,1,f|0,h|0)|0;f=C;n=0;b=n;n=0;if((b|0)!=0&(o|0)!=0){d=Rs(c[b>>2]|0,h|0,f|0)|0;if(!d)ta(b|0,o|0);C=o}else
d=-1;if((d|0)==1)b=C;else b=0;while(1){if(b|0){b=7;break}n=0;b=ea(46,a+980|0,4172,a|0)|0;d=n;n=0;if((d|0)!=0&(o|0)!=0){e=Rs
(c[d>>2]|0,h|0,f|0)|0;if(!e)ta(d|0,o|0);C=o}else e=-1;if((e|0)==1){b=C;continue}c[g>>2]=b;n=0;la(43,a|0);b=n
;n=0;if((b|0)!=0&(o|0)!=0){d=Rs(c[b>>2]|0,h|0,f|0)|0;if(!d)ta(b|0,o|0);C=o}else d=-1;if((d|0)==1)b=C;else{b=6;break
}}if((b|0)==6){g=c[g>>2]|0;Gs(h|0);i=j;return g|0}else if((b|0)==7){c[g>>2]=64;g=c[g>>2]|0;Gs(h|0);
i=j;return g|0}return 0}function lp(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;e=d+8|0;g=d+4|0;f=d;c[h>
x3e;2]=a;c[e>>2]=b;mp(c[e>>2]|0);c[g>>2]=c[c[h>>2]>>2]<<2;c[f>
x3e;2]=c[(c[h>>2]|0)+4>>2]<<2;op(c[e>>2]|0,c[g>>2]>>8,c[f>>
;2]>>8);c[(c[e>>2]|0)+64>>2]=c[g>>2];c[(c[e>>2]|0)+68>>2]=c[f>
x3e;2];i=d;return 0}function mp(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(c[(c[b>>2]|0)+
40>>2]|0){i=e;return}if(!(c[(c[b>>2]|0)+32>>2]|c[(c[b>>2]|0)+36>>2])){i=e;return
}c[d>>2]=np(c[b>>2]|0)|0;a=(c[d>>2]|0)+8|0;c[a>>2]=(c[a>>2]|0)+(c[(c[b>
x3e;2]|0)+32>>2]|0);a=(c[d>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+(c[(c[b>>2]|0)+36>
;>2]|0);i=e;return}function np(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+12|0;f=h+8|0;e=h+4|0;g=h;c[d>>
;2]=a;c[g>>2]=c[c[d>>2]>>2];if((c[g>>2]|0)>(c[(c[d>>2]|0)+24>>2
]|0))c[g>>2]=c[(c[d>>2]|0)+24>>2];c[f>>2]=(c[(c[d>>2]|0)+1420>>2]|0)+(
c[(c[d>>2]|0)+4>>2]<<2);while(1){c[e>>2]=c[c[f>>2]>>2];if(!(c[e>
;>2]|0))break;if((c[c[e>>2]>>2]|0)>(c[g>>2]|0))break;if((c[c[e>>2]>>
2]|0)==(c[g>>2]|0)){b=11;break}c[f>>2]=(c[e>>2]|0)+12}if((b|0)==11){g=c[e>>2]|0;i=h;return
g|0}a=c[d>>2]|0;if((c[(c[d>>2]|0)+52>>2]|0)>=(c[(c[d>>2]|0)+48>>2]|0))ta
(a+1256|0,1);b=c[a+44>>2]|0;a=(c[d>>2]|0)+52|0;d=c[a>>2]|0;c[a>>2]=d+1;c[e>>2]=
b+(d<<4);c[c[e>>2]>>2]=c[g>>2];c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>
;2]|0)+4>>2]=0;c[(c[e>>2]|0)+12>>2]=c[c[f>>2]>>2];c[c[f>>2]>>
;2]=c[e>>2];g=c[e>>2]|0;i=h;return g|0}function op(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0
;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if((c[f>>2]|0)>(c[(c[e>>
;2]|0)+12>>2]|0))c[f>>2]=c[(c[e>>2]|0)+12>>2];if((c[f>>2]|0)<(c[(c[e>
;>2]|0)+8>>2]|0))c[f>>2]=(c[(c[e>>2]|0)+8>>2]|0)-1;c[(c[e>>2]|0)+32>
x3e;2]=0;c[(c[e>>2]|0)+36>>2]=0;c[c[e>>2]>>2]=(c[f>>2]|0)-(c[(c[e>>2
]|0)+8>>2]|0);c[(c[e>>2]|0)+4>>2]=(c[g>>2]|0)-(c[(c[e>>2]|0)+16>>2]|
0);c[(c[e>>2]|0)+72>>2]=c[g>>2]<<8;c[(c[e>>2]|0)+40>>2]=0;pp(c[e>
;>2]|0,c[f>>2]|0,c[g>>2]|0);i=h;return}function pp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i
+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[g>>2]=(c[g>>2]|0)-(c
[(c[e>>2]|0)+16>>2]|0);if((c[f>>2]|0)>(c[(c[e>>2]|0)+12>>2]|0))c[f>
x3e;2]=c[(c[e>>2]|0)+12>>2];a=(c[f>>2]|0)-(c[(c[e>>2]|0)+8>>2]|0)|0;c[f>
x3e;2]=a;c[f>>2]=(c[f>>2]|0)<0?-1:a;if(!((c[f>>2]|0)==(c[c[e>>2]>>2]|0)?(
c[g>>2]|0)==(c[(c[e>>2]|0)+4>>2]|0):0)){if(!(c[(c[e>>2]|0)+40>>2]|0))mp(c[e>
;>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[(c[e>>2]|0)+36>>2]=0}c[c[e>>2]>>
;2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=c[g>>2];if((c[g>>2]|0)>>>0>
;=(c[(c[e>>2]|0)+28>>2]|0)>>>0){d=1;d=d&1;a=c[e>>2]|0;a=a+40|0;c[a>>
2]=d;i=h;return}d=(c[f>>2]|0)>=(c[(c[e>>2]|0)+24>>2]|0);d=d&1;a=c[e>>2]|0;a=a+
40|0;c[a>>2]=d;i=h;return}function qp(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;rp(c[f>>2]|0,c[c[e>>2]>>2]<<2,c[(c[e>>2]|0)+4>>2]
x3c;<2);i=d;return 0}function rp(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,y=0,z=0,A=0,B=0,C=0;C=i;i=i+96|0;e=C+88|0;f=C+84|0;g=C+80|0;n=C+76|0;o=C+72|0;q=C+68|0;r=C+64|0;w=C+60|0;k=C+56|0
;l=C+52|0;A=C+48|0;B=C+44|0;x=C+40|0;p=C+36|0;j=C+32|0;y=C+28|0;t=C+24|0;s=C+20|0;v=C+16|0;u=C+12|0;m=C+8|0;z=C+4|0;h=C;c[e>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[n>>2]=c[(c[e>>2]|0)+72>>2]>>8;c[o
x3e;>2]=c[g>>2]>>8;c[q>>2]=(c[(c[e>>2]|0)+68>>2]|0)-(c[(c[e>>2]|
0)+72>>2]|0);c[r>>2]=(c[g>>2]|0)-(c[o>>2]<<8);c[k>>2]=(c[f>>
;2]|0)-(c[(c[e>>2]|0)+64>>2]|0);c[l>>2]=(c[g>>2]|0)-(c[(c[e>>2]|0)+68>>
;2]|0);c[v>>2]=c[n>>2];c[u>>2]=c[o>>2];if((c[n>>2]|0)>(c[o>>2]|
0)){c[v>>2]=c[o>>2];c[u>>2]=c[n>>2]}if((c[v>>2]|0)>=(c[(c[e>>2]|
0)+20>>2]|0)){A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>
;>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=
A;i=C;return}if((c[u>>2]|0)<(c[(c[e>>2]|0)+16>>2]|0)){A=c[f>>2]|0;B=c[e>>
2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0
;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C;return}if((c[n>>2]|0)==(c[o>>2]|0)){
sp(c[e>>2]|0,c[n>>2]|0,c[(c[e>>2]|0)+64>>2]|0,c[q>>2]|0,c[f>>2]|0,c[
r>>2]|0);A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>
;2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C
;return}c[s>>2]=1;if(!(c[k>>2]|0)){c[m>>2]=c[(c[e>>2]|0)+64>>2]>>8;c
[z>>2]=(c[(c[e>>2]|0)+64>>2]|0)-(c[m>>2]<<8)<<1;c[p>>2]=256
;if((c[l>>2]|0)<0){c[p>>2]=0;c[s>>2]=-1}c[j>>2]=(c[p>>2]|0)-(c[q>>
;2]|0);A=_(c[z>>2]|0,c[j>>2]|0)|0;B=(c[e>>2]|0)+32|0;c[B>>2]=(c[B>>2]|0)+A;B=(
c[e>>2]|0)+36|0;c[B>>2]=(c[B>>2]|0)+(c[j>>2]|0);c[n>>2]=(c[n>>2]|0)+(
c[s>>2]|0);pp(c[e>>2]|0,c[m>>2]|0,c[n>>2]|0);c[j>>2]=(c[p>>2]|0)+(c[
p>>2]|0)-256;c[h>>2]=_(c[z>>2]|0,c[j>>2]|0)|0;while(1){if((c[n>>2]|0)==(c[o>
;>2]|0))break;B=(c[e>>2]|0)+32|0;c[B>>2]=(c[B>>2]|0)+(c[h>>2]|0);B=(c[e>>
2]|0)+36|0;c[B>>2]=(c[B>>2]|0)+(c[j>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[s>>
;2]|0);pp(c[e>>2]|0,c[m>>2]|0,c[n>>2]|0)}c[j>>2]=(c[r>>2]|0)-256+(c[p>>
;2]|0);B=_(c[z>>2]|0,c[j>>2]|0)|0;A=(c[e>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+B;A=(
c[e>>2]|0)+36|0;c[A>>2]=(c[A>>2]|0)+(c[j>>2]|0);A=c[f>>2]|0;B=c[e>>2
]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;
A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C;return}c[x>>2]=_(256-(c[q>>2]|0)|0,c
[k>>2]|0)|0;c[p>>2]=256;c[s>>2]=1;if((c[l>>2]|0)<0){c[x>>2]=_(c[q>
x3e;2]|0,c[k>>2]|0)|0;c[p>>2]=0;c[s>>2]=-1;c[l>>2]=0-(c[l>>2]|0)}c[j>>
;2]=(c[x>>2]|0)/(c[l>>2]|0)|0;c[w>>2]=(c[x>>2]|0)%(c[l>>2]|0)|0;if((c[w>
x3e;2]|0)<0){c[j>>2]=(c[j>>2]|0)+-1;c[w>>2]=(c[w>>2]|0)+(c[l>>2]|0)}c[A
x3e;>2]=(c[(c[e>>2]|0)+64>>2]|0)+(c[j>>2]|0);sp(c[e>>2]|0,c[n>>2]|0,c[(c[
e>>2]|0)+64>>2]|0,c[q>>2]|0,c[A>>2]|0,c[p>>2]|0);c[n>>2]=(c[n>
x3e;2]|0)+(c[s>>2]|0);pp(c[e>>2]|0,c[A>>2]>>8,c[n>>2]|0);a:do if((c[n>>
;2]|0)!=(c[o>>2]|0)){c[x>>2]=c[k>>2]<<8;c[t>>2]=(c[x>>2]|0)/(c[l>
;>2]|0)|0;c[y>>2]=(c[x>>2]|0)%(c[l>>2]|0)|0;if((c[y>>2]|0)<0){c[t>>2
]=(c[t>>2]|0)+-1;c[y>>2]=(c[y>>2]|0)+(c[l>>2]|0)}c[w>>2]=(c[w>>2]|0)-(
c[l>>2]|0);while(1){if((c[n>>2]|0)==(c[o>>2]|0))break a;c[j>>2]=c[t>>2];c[w>
;>2]=(c[w>>2]|0)+(c[y>>2]|0);if((c[w>>2]|0)>=0){c[w>>2]=(c[w>>2]|0)-(
c[l>>2]|0);c[j>>2]=(c[j>>2]|0)+1}c[B>>2]=(c[A>>2]|0)+(c[j>>2]|0);sp(
c[e>>2]|0,c[n>>2]|0,c[A>>2]|0,256-(c[p>>2]|0)|0,c[B>>2]|0,c[p>>2]|0);
c[A>>2]=c[B>>2];c[n>>2]=(c[n>>2]|0)+(c[s>>2]|0);pp(c[e>>2]|0,c[A>
;>2]>>8,c[n>>2]|0)}}while(0);sp(c[e>>2]|0,c[n>>2]|0,c[A>>2]|0,256-(c[p>
;>2]|0)|0,c[f>>2]|0,c[r>>2]|0);A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A
;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>
;2]|0;B=B+72|0;c[B>>2]=A;i=C;return}function sp(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;y=i;i=i+80|0;h=y+68|0;j=y+64|0;A=y+60|0;k=y+56|0;z=y+52|0;l=y+48|0;o=
y+44|0;p=y+40|0;r=y+36|0;s=y+32|0;m=y+28|0;v=y+24|0;u=y+20|0;x=y+16|0;w=y+12|0;q=y+8|0;n=y+4|0;t=y;c[h>>2]=a;c[j>
x3e;2]=b;c[A>>2]=d;c[k>>2]=e;c[z>>2]=f;c[l>>2]=g;c[n>>2]=(c[z>>2]|0)-(
c[A>>2]|0);c[o>>2]=c[A>>2]>>8;c[p>>2]=c[z>>2]>>8;c[r>
x3e;2]=(c[A>>2]|0)-(c[o>>2]<<8);c[s>>2]=(c[z>>2]|0)-(c[p>>2]<
x3c;8);if((c[k>>2]|0)==(c[l>>2]|0)){pp(c[h>>2]|0,c[p>>2]|0,c[j>>2]|0);i=y;return
}if((c[o>>2]|0)==(c[p>>2]|0)){c[m>>2]=(c[l>>2]|0)-(c[k>>2]|0);z=_((c[r>
x3e;2]|0)+(c[s>>2]|0)|0,c[m>>2]|0)|0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;
A=(c[h>>2]|0)+36|0;c[A>>2]=(c[A>>2]|0)+(c[m>>2]|0);i=y;return}c[w>>2]=_(256-(c
[r>>2]|0)|0,(c[l>>2]|0)-(c[k>>2]|0)|0)|0;c[q>>2]=256;c[t>>2]=1;if((c[n>
x3e;2]|0)<0){c[w>>2]=_(c[r>>2]|0,(c[l>>2]|0)-(c[k>>2]|0)|0)|0;c[q>>2]=0;c
[t>>2]=-1;c[n>>2]=0-(c[n>>2]|0)}c[m>>2]=(c[w>>2]|0)/(c[n>>2]|0)|0;c[
v>>2]=(c[w>>2]|0)%(c[n>>2]|0)|0;if((c[v>>2]|0)<0){c[m>>2]=(c[m>>
;2]|0)+-1;c[v>>2]=(c[v>>2]|0)+(c[n>>2]|0)}z=_((c[r>>2]|0)+(c[q>>2]|0)|0,c[m>
;>2]|0)|0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;A=(c[h>>2]|0)+36|0;c[A>>
;2]=(c[A>>2]|0)+(c[m>>2]|0);c[o>>2]=(c[o>>2]|0)+(c[t>>2]|0);pp(c[h>>
2]|0,c[o>>2]|0,c[j>>2]|0);c[k>>2]=(c[k>>2]|0)+(c[m>>2]|0);a:do if((c[o>
x3e;2]|0)!=(c[p>>2]|0)){c[w>>2]=(c[l>>2]|0)-(c[k>>2]|0)+(c[m>>2]|0)<<
;8;c[u>>2]=(c[w>>2]|0)/(c[n>>2]|0)|0;c[x>>2]=(c[w>>2]|0)%(c[n>>2]|0)|
0;if((c[x>>2]|0)<0){c[u>>2]=(c[u>>2]|0)+-1;c[x>>2]=(c[x>>2]|0)+(c[n>
x3e;2]|0)}c[v>>2]=(c[v>>2]|0)-(c[n>>2]|0);while(1){if((c[o>>2]|0)==(c[p>>2]|0))
break a;c[m>>2]=c[u>>2];c[v>>2]=(c[v>>2]|0)+(c[x>>2]|0);if((c[v>>2]|
0)>=0){c[v>>2]=(c[v>>2]|0)-(c[n>>2]|0);c[m>>2]=(c[m>>2]|0)+1}A=(c[h>
x3e;2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+(c[m>>2]<<8);A=(c[h>>2]|0)+36|0;c[A>
x3e;2]=(c[A>>2]|0)+(c[m>>2]|0);c[k>>2]=(c[k>>2]|0)+(c[m>>2]|0);c[o>>
2]=(c[o>>2]|0)+(c[t>>2]|0);pp(c[h>>2]|0,c[o>>2]|0,c[j>>2]|0)}}while(0);c[m>
;>2]=(c[l>>2]|0)-(c[k>>2]|0);z=_((c[s>>2]|0)+256-(c[q>>2]|0)|0,c[m>>2]|0)|
0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;A=(c[h>>2]|0)+36|0;c[A>>2]=(c[A>
;>2]|0)+(c[m>>2]|0);i=y;return}function tp(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;up(c[h>>2]|0,c[g>>2]|0,c[f>>2]|
0);i=e;return 0}function up(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;p=i;i=i+48|0;e=p+44
|0;q=p+40|0;r=p+36|0;g=p+32|0;h=p+28|0;n=p+24|0;j=p+20|0;k=p+16|0;f=p+12|0;m=p+8|0;l=p+4|0;o=p;c[e>>2]=a;c[q>>
;2]=b;c[r>>2]=d;c[f>>2]=(c[e>>2]|0)+76;c[c[f>>2]>>2]=c[c[r>>2]>
x3e;2]<<2;c[(c[f>>2]|0)+4>>2]=c[(c[r>>2]|0)+4>>2]<<2;c[(c[f>>
;2]|0)+8>>2]=c[c[q>>2]>>2]<<2;c[(c[f>>2]|0)+8+4>>2]=c[(c[q>>
;2]|0)+4>>2]<<2;c[(c[f>>2]|0)+16>>2]=c[(c[e>>2]|0)+64>>2];c[(c[f>
;>2]|0)+16+4>>2]=c[(c[e>>2]|0)+68>>2];a=(c[(c[f>>2]|0)+16>>2]|0)+(c[c[f
x3e;>2]>>2]|0)-(c[(c[f>>2]|0)+8>>2]<<1)|0;c[g>>2]=((c[(c[f>>2]|
0)+16>>2]|0)+(c[c[f>>2]>>2]|0)-(c[(c[f>>2]|0)+8>>2]<<1)|0)<0?0-
a|0:a;a=(c[(c[f>>2]|0)+16+4>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0)-(c[(c[f>>2]|0)+8+4
x3e;>2]<<1)|0;c[h>>2]=((c[(c[f>>2]|0)+16+4>>2]|0)+(c[(c[f>>2]|0)+4>
x3e;2]|0)-(c[(c[f>>2]|0)+8+4>>2]<<1)|0)<0?0-a|0:a;if((c[g>>2]|0)<(c[h>>
;2]|0))c[g>>2]=c[h>>2];if((c[g>>2]|0)<=64){rp(c[e>>2]|0,c[c[f>>2]>
x3e;2]|0,c[(c[f>>2]|0)+4>>2]|0);i=p;return}c[j>>2]=0;while(1){if((c[g>>2]|0)<=64)break
;c[g>>2]=c[g>>2]>>2;c[j>>2]=(c[j>>2]|0)+1}c[k>>2]=(c[e>>2]|
0)+852;c[c[k>>2]>>2]=c[j>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)<0)break;c[
j>>2]=c[(c[k>>2]|0)+(c[n>>2]<<2)>>2];if((c[j>>2]|0)>1){r=c[(c[f
>>2]|0)+4>>2]|0;c[l>>2]=r;c[m>>2]=r;c[o>>2]=c[(c[f>>2]|0)+8+4>
x3e;2];if((c[o>>2]|0)<(c[m>>2]|0))c[m>>2]=c[o>>2];if((c[o>>2]|0)>(c[
l>>2]|0))c[l>>2]=c[o>>2];c[o>>2]=c[(c[f>>2]|0)+16+4>>2];if((c[o>
;>2]|0)<(c[m>>2]|0))c[m>>2]=c[o>>2];if((c[o>>2]|0)>(c[l>>2]|0))
c[l>>2]=c[o>>2];if((c[m>>2]>>8|0)<(c[(c[e>>2]|0)+20>>2]|0)?(c[l
>>2]>>8|0)>=(c[(c[e>>2]|0)+16>>2]|0):0){vp(c[f>>2]|0);c[f>>2]=(
c[f>>2]|0)+16;c[n>>2]=(c[n>>2]|0)+1;r=(c[j>>2]|0)-1|0;c[(c[k>>2]|0)+((c[n>
;>2]|0)-1<<2)>>2]=r;c[(c[k>>2]|0)+(c[n>>2]<<2)>>2]=r;continue}}
rp(c[e>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0);c[n>>2]=(c[n>
;>2]|0)+-1;c[f>>2]=(c[f>>2]|0)+-16}i=p;return}function vp(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[(c[d>>2]|0)+32>>2]=c[(c[d>>2]|0)+16>>2];c[e>
x3e;2]=c[(c[d>>2]|0)+8>>2];a=((c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c
[d>>2]|0)+24>>2]=a;c[f>>2]=a;a=((c[c[d>>2]>>2]|0)+(c[e>>2]|0)|0)/2|0
;c[(c[d>>2]|0)+8>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16>>2]=((c[f>>2]|0)+(
c[e>>2]|0)|0)/2|0;c[(c[d>>2]|0)+32+4>>2]=c[(c[d>>2]|0)+16+4>>2];c[e>>
;2]=c[(c[d>>2]|0)+8+4>>2];a=((c[(c[d>>2]|0)+16+4>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(
c[d>>2]|0)+24+4>>2]=a;c[f>>2]=a;a=((c[(c[d>>2]|0)+4>>2]|0)+(c[e>>2]|
0)|0)/2|0;c[(c[d>>2]|0)+8+4>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16+4>>2]=((c[f>
x3e;2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function wp(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;h=f+8|0;g=f+4|0;k=f;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;c[k>>2]=e;xp(c[k>>
;2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0);i=f;return 0}function xp(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;w=i;i=i+80|0;f=w+72|0;x=w+68|0;y=w+64|0;z=w+60|
0;h=w+56|0;s=w+52|0;r=w+48|0;v=w+44|0;j=w+40|0;n=w+36|0;m=w+32|0;q=w+28|0;k=w+24|0;o=w+20|0;l=w+16|0;p=w+12|0;g=w+8|0;t=w+4|0;u=
w;c[f>>2]=a;c[x>>2]=b;c[y>>2]=d;c[z>>2]=e;c[h>>2]=(c[f>>2]|0)+76;c[c
[h>>2]>>2]=c[c[z>>2]>>2]<<2;c[(c[h>>2]|0)+4>>2]=c[(c[z>
;>2]|0)+4>>2]<<2;c[(c[h>>2]|0)+8>>2]=c[c[y>>2]>>2]<<2
;c[(c[h>>2]|0)+8+4>>2]=c[(c[y>>2]|0)+4>>2]<<2;c[(c[h>>2]|0)+16>
x3e;2]=c[c[x>>2]>>2]<<2;c[(c[h>>2]|0)+16+4>>2]=c[(c[x>>2]|0)+4>
x3e;2]<<2;c[(c[h>>2]|0)+24>>2]=c[(c[f>>2]|0)+64>>2];c[(c[h>>2]|0)+24
+4>>2]=c[(c[f>>2]|0)+68>>2];a:while(1){z=c[(c[h>>2]|0)+4>>2]|0;c[r>>
2]=z;c[s>>2]=z;c[v>>2]=c[(c[h>>2]|0)+8+4>>2];if((c[v>>2]|0)<(c[s>>
;2]|0))c[s>>2]=c[v>>2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>
2];c[v>>2]=c[(c[h>>2]|0)+16+4>>2];if((c[v>>2]|0)<(c[s>>2]|0))c[s>>
;2]=c[v>>2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>2];c[v>>2]=
c[(c[h>>2]|0)+24+4>>2];if((c[v>>2]|0)<(c[s>>2]|0))c[s>>2]=c[v>>
2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>2];do if((c[s>>2]>>8
|0)<(c[(c[f>>2]|0)+20>>2]|0)?(c[r>>2]>>8|0)>=(c[(c[f>>2]|0)+16>
x3e;2]|0):0){c[j>>2]=(c[(c[h>>2]|0)+24>>2]|0)-(c[c[h>>2]>>2]|0);c[n>>
;2]=(c[(c[h>>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0);b=c[j>>2]|0;c[m>
x3e;2]=(c[j>>2]|0)<0?0-b|0:b;b=c[n>>2]|0;c[q>>2]=(c[n>>2]|0)<0?0-b|0:b;b=c[m
x3e;>2]|0;if((c[m>>2]|0)>(c[q>>2]|0))b=(b*236|0)+((c[q>>2]|0)*97|0)|0;else b=(b*97|0)+((
c[q>>2]|0)*236|0)|0;c[g>>2]=b>>8;if(((((((c[g>>2]|0)<=32767?(c[u>>2]=(c[g
>>2]|0)*42,c[k>>2]=(c[(c[h>>2]|0)+8>>2]|0)-(c[c[h>>2]>>2]|0),c[o>
;>2]=(c[(c[h>>2]|0)+8+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0),y=_(c[n>>2]|0,c[k
x3e;>2]|0)|0,y=(y-(_(c[j>>2]|0,c[o>>2]|0)|0)|0)<0,z=_(c[n>>2]|0,c[k>>2]|0)|0,z
=z-(_(c[j>>2]|0,c[o>>2]|0)|0)|0,c[t>>2]=y?0-z|0:z,(c[t>>2]|0)<=(c[u>>2]|0
)):0)?(c[l>>2]=(c[(c[h>>2]|0)+16>>2]|0)-(c[c[h>>2]>>2]|0),c[p>>2]=(c
[(c[h>>2]|0)+16+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0),y=_(c[n>>2]|0,c[l>>
2]|0)|0,y=(y-(_(c[j>>2]|0,c[p>>2]|0)|0)|0)<0,z=_(c[n>>2]|0,c[l>>2]|0)|0,z=z-(_(c[j
x3e;>2]|0,c[p>>2]|0)|0)|0,c[t>>2]=y?0-z|0:z,(c[t>>2]|0)<=(c[u>>2]|0)):0)?(z=_(
c[n>>2]|0,c[o>>2]|0)|0,(z+(_(c[j>>2]|0,c[k>>2]|0)|0)|0)>=0):0)?(z=_(c[n>>
2]|0,c[p>>2]|0)|0,(z+(_(c[j>>2]|0,c[l>>2]|0)|0)|0)>=0):0)?(z=_(c[n>>2]|0,(c[(c[h>
;>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+8+4>>2]|0)|0)|0,(z+(_(c[j>>2]|0,(c[(c[h>>
;2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+8>>2]|0)|0)|0)|0)>=0):0)?(z=_(c[n>>2]|0,(c[(c[h>
;>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+16+4>>2]|0)|0)|0,(z+(_(c[j>>2]|0,(c[(c[h>
x3e;2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+16>>2]|0)|0)|0)|0)>=0):0)break;yp(c[h>>2]|0);c[h
>>2]=(c[h>>2]|0)+24;continue a}while(0);rp(c[f>>2]|0,c[c[h>>2]>>2]|0,c[(c[h>
;>2]|0)+4>>2]|0);if((c[h>>2]|0)==((c[f>>2]|0)+76|0))break;c[h>>2]=(c[h>>2
]|0)+-24}i=w;return}function yp(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;f=b+12|0;e=b+8|0;g=b+4|0;h=b;c[d>
;>2]=a;c[(c[d>>2]|0)+48>>2]=c[(c[d>>2]|0)+24>>2];c[g>>2]=c[(c[d>>
;2]|0)+8>>2];c[h>>2]=c[(c[d>>2]|0)+16>>2];a=((c[c[d>>2]>>2]|0)+(c[g
x3e;>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+8>>2]=a;a=((c[(c[d>>2]|0)+24>>2
]|0)+(c[h>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+40>>2]=a;c[g>>2]=((c[g>
x3e;2]|0)+(c[h>>2]|0)|0)/2|0;a=((c[f>>2]|0)+(c[g>>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>
;2]|0)+16>>2]=a;a=((c[e>>2]|0)+(c[g>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+32
x3e;>2]=a;c[(c[d>>2]|0)+24>>2]=((c[f>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c[d>>2]|
0)+48+4>>2]=c[(c[d>>2]|0)+24+4>>2];c[g>>2]=c[(c[d>>2]|0)+8+4>>2];c[h
>>2]=c[(c[d>>2]|0)+16+4>>2];a=((c[(c[d>>2]|0)+4>>2]|0)+(c[g>>2]|0)|0
)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+8+4>>2]=a;a=((c[(c[d>>2]|0)+24+4>>2]|0)+(c[h>
;>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+40+4>>2]=a;c[g>>2]=((c[g>>2]|0)+(c
[h>>2]|0)|0)/2|0;a=((c[f>>2]|0)+(c[g>>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+16+
4>>2]=a;a=((c[e>>2]|0)+(c[g>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+32+4>
x3e;2]=a;c[(c[d>>2]|0)+24+4>>2]=((c[f>>2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function zp(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;k=i;i=i+32|0;d=k+24|0;l=k+20|0;j=k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;e=k;c[d>
;>2]=a;c[l>>2]=b;c[l>>2]=c[l>>2];if(!(c[(c[d>>2]|0)+52>>2]|0)){i=k;return
}c[(c[d>>2]|0)+1232>>2]=0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[d>>2]|
0)+1424>>2]|0))break;c[f>>2]=c[(c[(c[d>>2]|0)+1420>>2]|0)+(c[j>>2]<<
2)>>2];c[g>>2]=0;c[h>>2]=0;while(1){if(!(c[f>>2]|0))break;if(c[g>>2]|0?(c[c[f
x3e;>2]>>2]|0)>(c[h>>2]|0):0)Ap(c[d>>2]|0,c[h>>2]|0,c[j>>2]|0,c[g>
;>2]<<9,(c[c[f>>2]>>2]|0)-(c[h>>2]|0)|0);c[g>>2]=(c[g>>2]|0)+(c
[(c[f>>2]|0)+4>>2]|0);c[e>>2]=(c[g>>2]<<9)-(c[(c[f>>2]|0)+8>>
;2]|0);if(c[e>>2]|0?(c[c[f>>2]>>2]|0)>=0:0)Ap(c[d>>2]|0,c[c[f>>2]>
x3e;2]|0,c[j>>2]|0,c[e>>2]|0,1);c[h>>2]=(c[c[f>>2]>>2]|0)+1;c[f>>2]=
c[(c[f>>2]|0)+12>>2]}if(c[g>>2]|0)Ap(c[d>>2]|0,c[h>>2]|0,c[j>>2]|0,c
[g>>2]<<9,(c[(c[d>>2]|0)+24>>2]|0)-(c[h>>2]|0)|0);c[j>>2]=(c[j>
x3e;2]|0)+1}if(!(c[(c[d>>2]|0)+1236>>2]|0)){i=k;return}if((c[(c[d>>2]|0)+1232>>2]|0)<
;=0){i=k;return}_a[c[(c[d>>2]|0)+1236>>2]&15](c[(c[d>>2]|0)+1244>>2]|0,c[(c[d>
x3e;2]|0)+1232>>2]|0,(c[d>>2]|0)+1040|0,c[(c[d>>2]|0)+1240>>2]|0);i=k;return}function Ap
(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;s=i;i=i+32|0;l=s+28|0;m=s+24|0;n=s+20|0;t=s+16
|0;o=s+12|0;r=s+8|0;p=s+4|0;q=s;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[t>>2]=j;c[o>>2
]=k;c[q>>2]=c[t>>2]>>9;if((c[q>>2]|0)<0)c[q>>2]=0-(c[q>>2]|0);k
=c[q>>2]|0;do if(c[(c[l>>2]|0)+980+16>>2]&2|0){c[q>>2]=k&511;k=c[q>>
2]|0;if((c[q>>2]|0)>256){c[q>>2]=512-k;break}if((k|0)==256)c[q>>2]=255}else if((k|0)>=256
)c[q>>2]=255;while(0);c[n>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);t=(c[m>
;>2]|0)+(c[(c[l>>2]|0)+8>>2]|0)|0;c[m>>2]=t;c[m>>2]=(c[m>>2]|0)>=32767
?32767:t;if((c[n>>2]|0)>=2147483647)c[n>>2]=2147483647;if(!(c[q>>2]|0)){i=s;return}c[p>
x3e;2]=c[(c[l>>2]|0)+1232>>2];c[r>>2]=(c[l>>2]|0)+1040+((c[p>>2]|0)*6|0)+-6;if
((((c[p>>2]|0)>0?(c[(c[l>>2]|0)+1244>>2]|0)==(c[n>>2]|0):0)?((b[c[r>>2]
x3e;>1]|0)+(e[(c[r>>2]|0)+2>>1]|0)|0)==(c[m>>2]|0):0)?(d[(c[r>>2]|0)+4>>0
]|0)==(c[q>>2]|0):0){b[(c[r>>2]|0)+2>>1]=(e[(c[r>>2]|0)+2>>1]|0)+(c[o>>
;2]|0);i=s;return}if((c[p>>2]|0)>=32?1:(c[(c[l>>2]|0)+1244>>2]|0)!=(c[n>>2]|0)){if((
c[p>>2]|0)>0?(c[(c[l>>2]|0)+1236>>2]|0)!=0:0)_a[c[(c[l>>2]|0)+1236>>2]&
;15](c[(c[l>>2]|0)+1244>>2]|0,c[p>>2]|0,(c[l>>2]|0)+1040|0,c[(c[l>>2]|0)+1240
x3e;>2]|0);c[(c[l>>2]|0)+1232>>2]=0;c[(c[l>>2]|0)+1244>>2]=c[n>>2];c[p>
;>2]=0;c[r>>2]=(c[l>>2]|0)+1040}else c[r>>2]=(c[r>>2]|0)+6;b[c[r>>2]>
;>1]=c[m>>2];b[(c[r>>2]|0)+2>>1]=c[o>>2];a[(c[r>>2]|0)+4>>0]=c[
q>>2];t=(c[l>>2]|0)+1232|0;c[t>>2]=(c[t>>2]|0)+1;i=s;return}function Bp(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]|0)+12>>2];Fb(c[e>>
;2]|0,c[d>>2]|0);c[d>>2]=0;i=b;return}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]=c[(c[e>>2]|0)+4>>2];Ua[c[(c[(c[(c[e>>2]|0)+20>>2]|0)+56>
;>2]|0)+8>>2]&31](c[(c[e>>2]|0)+60>>2]|0,c[(c[d>>2]|0)+172>>2]|0,c[(
c[d>>2]|0)+176>>2]|0);i=b;return 0}function Dp(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;k=i;
i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;if((c[h>
;>2]|0)==1)c[h>>2]=0;b=Ep(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,0)|0;i=
k;return b|0}function Ep(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;P=i;i=i+192|0;k=P+180|0;l=P+176|0;m=P+172|0;n=P+168|0;o=P+
164|0;p=P+160|0;t=P+156|0;B=P+152|0;r=P+136|0;H=P+128|0;u=P+124|0;v=P+120|0;I=P+116|0;D=P+112|0;q=P+108|0;A=P+104|0;y=P+100|0;G=
P+96|0;L=P+92|0;N=P+88|0;K=P+84|0;O=P+80|0;C=P+32|0;z=P+28|0;w=P+24|0;M=P+20|0;s=P+16|0;E=P+12|0;F=P+8|0;J=P+4|0;x=P;c[l>
x3e;2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=h;c[p>>2]=j;c[B>>2]=0;c[y>>2]=(
c[n>>2]|0)==3&1;c[G>>2]=(c[n>>2]|0)==4&1;do if((c[(c[m>>2]|0)+72>>2]|
0)==(c[(c[l>>2]|0)+24>>2]|0)){if((c[n>>2]|0)!=(c[p>>2]|0)){c[k>>2]=19;O=c[k>
;>2]|0;i=P;return O|0}c[B>>2]=(c[m>>2]|0)+108;if(c[o>>2]|0)Nb(c[B>>2]|0,c[c[o>
x3e;2]>>2]|0,c[(c[o>>2]|0)+4>>2]|0);_d(c[B>>2]|0,r);c[r>>2]=c[r>>2]
x26;-64;c[r+4>>2]=c[r+4>>2]&-64;c[r+8>>2]=(c[r+8>>2]|0)+63&-64;c[r+12>>
;2]=(c[r+12>>2]|0)+63&-64;if((c[r>>2]|0)<0?(c[r+8>>2]|0)>(2147483647+(c[r>>
;2]|0)|0):0){c[k>>2]=98;O=c[k>>2]|0;i=P;return O|0}c[H>>2]=(c[r+8>>2]|0)-(c[r>>
;2]|0)>>6;if((c[r+4>>2]|0)<0?(c[r+12>>2]|0)>(2147483647+(c[r+4>>2]|0)|0):0){c[
k>>2]=98;O=c[k>>2]|0;i=P;return O|0}c[u>>2]=(c[r+12>>2]|0)-(c[r+4>>2]|0)>
x3e;6;c[q>>2]=(c[m>>2]|0)+76;c[A>>2]=c[(c[l>>2]|0)+8>>2];c[I>>2]=c[H
>>2];c[v>>2]=c[u>>2];if(c[(c[(c[m>>2]|0)+156>>2]|0)+4>>2]&1|0){
Fb(c[A>>2]|0,c[(c[q>>2]|0)+12>>2]|0);c[(c[q>>2]|0)+12>>2]=0;f=(c[(c[m>>
;2]|0)+156>>2]|0)+4|0;c[f>>2]=c[f>>2]&-2}c[D>>2]=c[H>>2];if(c[y>>
;2]|0){c[H>>2]=(c[H>>2]|0)*3;c[D>>2]=(c[H>>2]|0)+3&-4}if(c[G>>2]|0)c[u>
;>2]=(c[u>>2]|0)*3;c[L>>2]=c[r>>2];c[N>>2]=c[r+4>>2];c[K>>2]=c[
r>>2]>>6;c[O>>2]=c[r+12>>2]>>6;if((c[H>>2]|0)>>>0>
;32767|(c[u>>2]|0)>>>0>32767){c[k>>2]=98;O=c[k>>2]|0;i=P;return O|0}a[(c[q>
;>2]|0)+18>>0]=2;b[(c[q>>2]|0)+16>>1]=256;c[(c[q>>2]|0)+4>>2]=c[H>
x3e;2];c[c[q>>2]>>2]=c[u>>2];c[(c[q>>2]|0)+8>>2]=c[D>>2];Nb(c[B>
;>2]|0,0-(c[L>>2]|0)|0,0-(c[N>>2]|0)|0);f=bc(c[A>>2]|0,_(c[D>>2]|0,c[u>>2
]|0)|0,t)|0;c[(c[q>>2]|0)+12>>2]=f;if(!(c[t>>2]|0)){f=(c[(c[m>>2]|0)+156>>2]|0
)+4|0;c[f>>2]=c[f>>2]|1;c[C>>2]=c[q>>2];c[C+4>>2]=c[B>>2];c[C+8>
;>2]=1;c[t>>2]=Ya[c[(c[l>>2]|0)+64>>2]&127](c[(c[l>>2]|0)+60>>2]|0,C
)|0;a:do if(c[y>>2]|0){c[z>>2]=c[(c[q>>2]|0)+12>>2];c[w>>2]=c[v>>2];
while(1){if((c[w>>2]|0)>>>0<=0)break a;c[s>>2]=(c[z>>2]|0)+(c[H>>2]|
0);c[M>>2]=c[I>>2];while(1){if((c[M>>2]|0)>>>0<=0)break;c[E>>2]=d[(c
[z>>2]|0)+((c[M>>2]|0)-1)>>0];a[(c[s>>2]|0)+-3>>0]=c[E>>2];a[(c[s>
;>2]|0)+-2>>0]=c[E>>2];a[(c[s>>2]|0)+-1>>0]=c[E>>2];c[s>>2]=(c[
s>>2]|0)+-3;c[M>>2]=(c[M>>2]|0)+-1}c[w>>2]=(c[w>>2]|0)+-1;c[z>>2]=(c
[z>>2]|0)+(c[D>>2]|0)}}while(0);b:do if(c[G>>2]|0){c[F>>2]=(c[(c[q>>2]|0)+12
x3e;>2]|0)+(_((c[u>>2]|0)-(c[v>>2]|0)|0,c[D>>2]|0)|0);c[J>>2]=c[(c[q>>2]|
0)+12>>2];c[x>>2]=c[v>>2];while(1){if((c[x>>2]|0)>>>0<=0)break b;Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);c[F
>>2]=(c[F>>2]|0)+(c[D>>2]|0);c[x>>2]=(c[x>>2]|0)+-1}}while(0);Nb(c[B>>
;2]|0,c[L>>2]|0,c[N>>2]|0);if((c[K>>2]|0)>2147483647|(c[O>>2]|0)>2147483647){c
[k>>2]=23;O=c[k>>2]|0;i=P;return O|0}else{if(c[t>>2]|0)break;c[(c[m>>2]|0)+72>>
;2]=1651078259;c[(c[m>>2]|0)+100>>2]=c[K>>2];c[(c[m>>2]|0)+104>>2]=c[O>
x3e;2];break}}}else c[t>>2]=6;while(0);if((c[B>>2]|0)!=0&(c[o>>2]|0)!=0)Nb(c[B>>2]|
0,0-(c[c[o>>2]>>2]|0)|0,0-(c[(c[o>>2]|0)+4>>2]|0)|0);c[k>>2]=c[t>>2];
O=c[k>>2]|0;i=P;return O|0}function Fp(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;l=k+16
|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[l>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2
]=0;if((c[(c[f>>2]|0)+72>>2]|0)!=(c[(c[l>>2]|0)+24>>2]|0)){c[j>>2]=6;l=c[j>
;>2]|0;i=k;return l|0}if(c[g>>2]|0)Kb((c[f>>2]|0)+108|0,c[g>>2]|0);if(!(c[h>>2]|0)){
l=c[j>>2]|0;i=k;return l|0}Nb((c[f>>2]|0)+108|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+
4>>2]|0);l=c[j>>2]|0;i=k;return l|0}function Gp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;h=
g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[e>>2]=b;c[f>>2]=d;b=c[f>>2]|0;c[b>>2]=0;c[b+4>
;>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;if((c[(c[e>>2]|0)+72>>2]|0)!=(c[(c[h>>2]|
0)+24>>2]|0)){i=g;return}_d((c[e>>2]|0)+108|0,c[f>>2]|0);i=g;return}function Hp(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=Oa[c[(
c[(c[(c[h>>2]|0)+20>>2]|0)+56>>2]|0)+12>>2]&63](c[(c[h>>2]|0)+60>>
;2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function Ip(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;j=i;i=i+32|0;m=j+16|0;g=j+12|0;l=j+8|0;k=j+4|0;h=j;c[m>>2]=b;c[g>>2]=d;c[l>>2]=e;c[k>
;>2]=f;c[h>>2]=Ep(c[m>>2]|0,c[g>>2]|0,c[l>>2]|0,c[k>>2]|0,3)|0;if(c[h>
;>2]|0){m=c[h>>2]|0;i=j;return m|0}a[(c[g>>2]|0)+76+18>>0]=5;m=c[h>>2]|0;i=j;return
m|0}function Jp(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;j=i;i=i+32|0;m=j+16|0;g=j+12|0;l=j+8|0;k=j+4|0;h=j
;c[m>>2]=b;c[g>>2]=d;c[l>>2]=e;c[k>>2]=f;c[h>>2]=Ep(c[m>>2]|0,c[g>
;>2]|0,c[l>>2]|0,c[k>>2]|0,4)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=j;return m|0}a[(c[g>
;>2]|0)+76+18>>0]=6;m=c[h>>2]|0;i=j;return m|0}function Kp(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[(c[e>>2]|
0)+32>>2]=c[g>>2];a=hc(c[g>>2]|0,4,0,c[f>>2]|0,0,h)|0;c[(c[e>>2]|0)+24>
x3e;2]=a;if((c[h>>2]|0)==0?(a=hc(c[g>>2]|0,4,0,c[f>>2]|0,0,h)|0,c[(c[e>>2]|0)+28>
x3e;2]=a,(c[h>>2]|0)==0):0){c[(c[e>>2]|0)+16>>2]=c[f>>2];c[(c[e>>2]|0)+12>
;>2]=-559038737;c[(c[e>>2]|0)+20>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+8>
;>2]=0;c[(c[e>>2]|0)+4>>2]=0;a=(c[e>>2]|0)+36|0;c[a>>2]=c[1094];c[a+4>>2]=
c[1095];c[a+8>>2]=c[1096];c[a+12>>2]=c[1097]}if(!(c[h>>2]|0)){a=c[h>>2]|0;i=j;return a|0
}Fb(c[g>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;a=c[h>>
2]|0;i=j;return a|0}function Lp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;d=g+4|0;f=g;c[b>>2]=a;c
[e>>2]=c[(c[b>>2]|0)+32>>2];c[f>>2]=c[c[b>>2]>>2];if(!(c[f>>
;2]|0)){i=g;return}a=bc(c[e>>2]|0,c[(c[b>>2]|0)+4>>2]|0,d)|0;c[c[b>>2]>>2]=a;if
(c[d>>2]|0){i=g;return}Ss(c[c[b>>2]>>2]|0,c[f>>2]|0,c[(c[b>>2]|0)+4>>
;2]|0)|0;Mp(c[b>>2]|0,c[f>>2]|0);c[(c[b>>2]|0)+8>>2]=c[(c[b>>2]|0)+4>>
;2];Fb(c[e>>2]|0,c[f>>2]|0);c[f>>2]=0;c[d>>2]=c[d>>2];i=g;return}function Mp(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;h=g+16|0;j=g+12|0;d=g+8|0;f=g+4|0;e=g;c[h>>2]=a;c[j>>
;2]=b;c[d>>2]=(c[c[h>>2]>>2]|0)-(c[j>>2]|0);c[f>>2]=c[(c[h>>2]|0)+24
>>2];c[e>>2]=(c[f>>2]|0)+(c[(c[h>>2]|0)+16>>2]<<2);while(1){if((c[f
x3e;>2]|0)>>>0>=(c[e>>2]|0)>>>0)break;if(c[c[f>>2]>>2]|0){
j=c[f>>2]|0;c[j>>2]=(c[j>>2]|0)+(c[d>>2]|0)}c[f>>2]=(c[f>>2]|0)+4}i=
g;return}function Np(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o
+20|0;j=o+16|0;k=o+12|0;l=o+8|0;n=o+4|0;m=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if((
c[h>>2]|0)>=0?(c[h>>2]|0)<(c[(c[g>>2]|0)+16>>2]|0):0){if((c[k>>2]|0)
x3c;0){c[f>>2]=6;a=c[f>>2]|0;i=o;return a|0}do if(((c[(c[g>>2]|0)+4>>2]|0)+(c[k>>
;2]|0)|0)>>>0>(c[(c[g>>2]|0)+8>>2]|0)>>>0){c[n>>2]=c[(c[g>
x3e;2]|0)+8>>2];a=(c[j>>2]|0)-(c[c[g>>2]>>2]|0)|0;c[m>>2]=a;c[m>>2]=(
c[m>>2]|0)>>>0>=(c[(c[g>>2]|0)+8>>2]|0)>>>0?-1:a;while(1){if((c
[n>>2]|0)>>>0>=((c[(c[g>>2]|0)+4>>2]|0)+(c[k>>2]|0)|0)>>
x3e;0)break;c[n>>2]=(c[n>>2]|0)+(((c[n>>2]|0)>>>2)+1);c[n>>2]=(c[n>
x3e;2]|0)+1023&-1024}c[l>>2]=Op(c[g>>2]|0,c[n>>2]|0)|0;if(c[l>>2]|0){c[f>>
;2]=c[l>>2];a=c[f>>2]|0;i=o;return a|0}else{if((c[m>>2]|0)<0)break;c[j>>2]=(c[c[g
x3e;>2]>>2]|0)+(c[m>>2]|0);break}}while(0);c[(c[(c[g>>2]|0)+24>>2]|0)+(c[h>>
;2]<<2)>>2]=(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+4>>2]|0);c[(c[(c[g>
;>2]|0)+28>>2]|0)+(c[h>>2]<<2)>>2]=c[k>>2];Ss((c[c[g>>2]>
x3e;2]|0)+(c[(c[g>>2]|0)+4>>2]|0)|0,c[j>>2]|0,c[k>>2]|0)|0;a=(c[g>>2]|0)+4|0;c
[a>>2]=(c[a>>2]|0)+(c[k>>2]|0);c[f>>2]=0;a=c[f>>2]|0;i=o;return a|0}c[f>
x3e;2]=6;a=c[f>>2]|0;i=o;return a|0}function Op(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0
;e=k+16|0;f=k+12|0;h=k+8|0;j=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[h>>2]=c[(c[e>>2]|0)+32>
;>2];c[j>>2]=c[c[e>>2]>>2];b=bc(c[h>>2]|0,c[f>>2]|0,g)|0;c[c[e>>
;2]>>2]=b;b=c[j>>2]|0;if(c[g>>2]|0){c[c[e>>2]>>2]=b;c[d>>2]=c[g>
;>2];j=c[d>>2]|0;i=k;return j|0}if(b|0){Ss(c[c[e>>2]>>2]|0,c[j>>2]|0,c[(c[e>
x3e;2]|0)+8>>2]|0)|0;Mp(c[e>>2]|0,c[j>>2]|0);Fb(c[h>>2]|0,c[j>>2]|0);c[j>
x3e;2]=0}c[(c[e>>2]|0)+8>>2]=c[f>>2];c[d>>2]=0;j=c[d>>2]|0;i=k;return j|0}function
Pp(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+32>>
;2];if((c[(c[b>>2]|0)+12>>2]|0)!=-559038737){i=e;return}Fb(c[d>>2]|0,c[c[b>>2]>>
;2]|0);c[c[b>>2]>>2]=0;Fb(c[d>>2]|0,c[(c[b>>2]|0)+24>>2]|0);c[(c[b>>
2]|0)+24>>2]=0;Fb(c[d>>2]|0,c[(c[b>>2]|0)+28>>2]|0);c[(c[b>>2]|0)+28>>
;2]=0;c[(c[b>>2]|0)+12>>2]=0;i=e;return}function Qp(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;j=f+8|0;k=f+4|0;h=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[h>>2]=e;c[(c[
g>>2]|0)+12>>2]=0;c[(c[g>>2]|0)+4>>2]=c[j>>2];c[(c[g>>2]|0)+8>
x3e;2]=c[k>>2];c[c[g>>2]>>2]=c[j>>2];c[(c[g>>2]|0)+16>>2]=c[h>
x3e;2];b=(c[g>>2]|0)+20|0;d=4392;e=b+52|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0
));i=f;return}function Rp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return
}function Sp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Tp(c[d>>2]|0,c[(c[d>>2]|0)+8>>
;2]|0);i=b;return}function Tp(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+8|0;e=h+4|0;g=h;c[f>>2]=a;c[e>
;>2]=b;c[g>>2]=c[c[f>>2]>>2];while(1){if((c[g>>2]|0)>>>0>=(c[e
x3e;>2]|0)>>>0){e=12;break}if((((((d[c[g>>2]>>0]|0|0)!=32?(d[c[g>>2]>>
;0]|0|0)!=13:0)?(d[c[g>>2]>>0]|0|0)!=10:0)?(d[c[g>>2]>>0]|0|0)!=9:0)?(d[c[g>>2
]>>0]|0|0)!=12:0)?d[c[g>>2]>>0]|0|0:0){if((d[c[g>>2]>>0]|0|0)!=37){e=12;break}
Up(g,c[e>>2]|0)}c[g>>2]=(c[g>>2]|0)+1}if((e|0)==12){c[c[f>>2]>>2]=c[g>>
;2];i=h;return}}function Up(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=c[c[e>>2]>>2];while(1){if((c[g>>2]|0)>>>0>=(c[f>
;>2]|0)>>>0)break;if((d[c[g>>2]>>0]|0|0)==13)break;if((d[c[g>>2]>>0]|
0|0)==10)break;c[g>>2]=(c[g>>2]|0)+1}c[c[e>>2]>>2]=c[g>>2];i=h;return}function
Vp(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=c[c[e
x3e;>2]>>2];c[h>>2]=c[(c[e>>2]|0)+8>>2];c[g>>2]=0;Tp(f,c[h>>2]|
0);a:do if((c[f>>2]|0)>>>0<(c[h>>2]|0)>>>0){if((d[c[f>>2]>
x3e;0]|0|0)!=91?(d[c[f>>2]>>0]|0|0)!=93:0){if((d[c[f>>2]>>0]|0|0)==123){c[g>>2
]=Wp(f,c[h>>2]|0)|0;break}if((d[c[f>>2]>>0]|0|0)==40){c[g>>2]=Xp(f,c[h>>2]|0)|
0;break}a=c[f>>2]|0;if((d[c[f>>2]>>0]|0|0)==60){if((a+1|0)>>>0<(c[h>>
;2]|0)>>>0?(d[(c[f>>2]|0)+1>>0]|0|0)==60:0){c[f>>2]=(c[f>>2]|0)+1;c[f>
;>2]=(c[f>>2]|0)+1;break}c[g>>2]=Yp(f,c[h>>2]|0)|0;break}b=c[f>>2]|0;if((d[a>
x3e;0]|0|0)==62){c[f>>2]=b+1;if((c[f>>2]|0)>>>0<(c[h>>2]|0)>>>0
?(d[c[f>>2]>>0]|0|0)==62:0){c[f>>2]=(c[f>>2]|0)+1;break}c[g>>2]=3;break}if((d[
b>>0]|0|0)==47)c[f>>2]=(c[f>>2]|0)+1;while(1){if((c[f>>2]|0)>>>0>=(c
[h>>2]|0)>>>0)break a;if((d[c[f>>2]>>0]|0|0)==32)break a;if((d[c[f>>2]>
;>0]|0|0)==13)break a;if((d[c[f>>2]>>0]|0|0)==10)break a;if((d[c[f>>2]>>0]|0|0)==9)
break a;if((d[c[f>>2]>>0]|0|0)==12)break a;if(!(d[c[f>>2]>>0]|0))break a;if((d[c[f>
x3e;2]>>0]|0|0)==47)break a;if((d[c[f>>2]>>0]|0|0)==40)break a;if((d[c[f>>2]>>
0]|0|0)==41)break a;if((d[c[f>>2]>>0]|0|0)==60)break a;if((d[c[f>>2]>>0]|0|0)==62)break
a;if((d[c[f>>2]>>0]|0|0)==91)break a;if((d[c[f>>2]>>0]|0|0)==93)break a;if((d[c[f>
x3e;2]>>0]|0|0)==123)break a;if((d[c[f>>2]>>0]|0|0)==125)break a;if((d[c[f>>2]>>
;0]|0|0)==37)break a;c[f>>2]=(c[f>>2]|0)+1}}c[f>>2]=(c[f>>2]|0)+1}while(0);if((c[f>
x3e;2]|0)!=(c[c[e>>2]>>2]|0)){h=c[g>>2]|0;g=c[e>>2]|0;g=g+12|0;c[g>>2]=h;g=c[f
>>2]|0;h=c[e>>2]|0;c[h>>2]=g;i=j;return}c[g>>2]=3;h=c[g>>2]|0;g=c[e>>
;2]|0;g=g+12|0;c[g>>2]=h;g=c[f>>2]|0;h=c[e>>2]|0;c[h>>2]=g;i=j;return}function Wp(a,b){a
=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+16|0;f=l+12|0;g=l+8|0;h=l+4|0;j=l;c[e>>2]=a;c[f>>
;2]=b;c[h>>2]=0;c[j>>2]=0;c[g>>2]=c[c[e>>2]>>2];a:while(1){if(!((c[g>>
;2]|0)>>>0<(c[f>>2]|0)>>>0?(c[j>>2]|0)==0:0))break;switch(d[c[g>>
;2]>>0]|0|0){case 123:{c[h>>2]=(c[h>>2]|0)+1;break}case 125:{c[h>>2]=(c[h>>2]|
0)+-1;if(!(c[h>>2]|0)){k=6;break a}break}case 40:{c[j>>2]=Xp(g,c[f>>2]|0)|0;break}case 60:{c[j>
;>2]=Yp(g,c[f>>2]|0)|0;break}case 37:{Up(g,c[f>>2]|0);break}default:{}}c[g>>2]=(c[g>>
;2]|0)+1}if((k|0)==6)c[g>>2]=(c[g>>2]|0)+1;if(!(c[h>>2]|0)){b=c[g>>2]|0;k=c[e>>
;2]|0;c[k>>2]=b;k=c[j>>2]|0;i=l;return k|0}c[j>>2]=3;b=c[g>>2]|0;k=c[e>>2]|0;c
[k>>2]=b;k=c[j>>2]|0;i=l;return k|0}function Xp(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;n=i;i=i
+32|0;k=n+20|0;f=n+16|0;l=n+12|0;h=n+8|0;m=n+4|0;j=n;g=n+24|0;c[k>>2]=b;c[f>>2]=e;c[l>>2]=c[c[k>
;>2]>>2];c[h>>2]=0;c[m>>2]=3;a:while(1){if((c[l>>2]|0)>>>0>=(c[
f>>2]|0)>>>0){f=18;break}a[g>>0]=a[c[l>>2]>>0]|0;c[l>>2]=(c[l
x3e;>2]|0)+1;if((d[g>>0]|0|0)!=92){if((d[g>>0]|0|0)==40){c[h>>2]=(c[h>>2]|0)+1;continue
}if((d[g>>0]|0|0)!=41)continue;c[h>>2]=(c[h>>2]|0)+-1;if(!(c[h>>2]|0)){f=17;break}else continue
}if((c[l>>2]|0)==(c[f>>2]|0)){f=18;break}switch(d[c[l>>2]>>0]|0|0){case 41:case 40:case
92:case 102:case 98:case 116:case 114:case 110:{c[l>>2]=(c[l>>2]|0)+1;continue a}default:{}}c[j>>2
]=0;while(1){if((c[j>>2]|0)>>>0>=3)continue a;if((c[l>>2]|0)>>>0>=(c
[f>>2]|0)>>>0)continue a;if(48>(d[c[l>>2]>>0]|0|0))continue a;if((d[c[l>
x3e;2]>>0]|0|0)>55)continue a;c[l>>2]=(c[l>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1
}}if((f|0)==17){c[m>>2]=0;e=c[l>>2]|0;l=c[k>>2]|0;c[l>>2]=e;m=c[m>>2]|0;i=n;return
m|0}else if((f|0)==18){e=c[l>>2]|0;l=c[k>>2]|0;c[l>>2]=e;m=c[m>>2]|0;i=n;return m|0}return
0}function Yp(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=c[c[e>>2]>>2];c[h>>2]=0;while(1){b=(c[g>>2]|0)+1|0;c[g>
x3e;2]=b;if(b>>>0>=(c[f>>2]|0)>>>0)break;Tp(g,c[f>>2]|0);if((c[g>>
;2]|0)>>>0>=(c[f>>2]|0)>>>0)break;if((d[c[g>>2]>>0]|0|0)>=
48?(d[c[g>>2]>>0]|0|0)<=57:0)continue;if((d[c[g>>2]>>0]|0|0)>=65?(d[c[g>
x3e;2]>>0]|0|0)<=70:0)continue;if((d[c[g>>2]>>0]|0|0)<97)break;if((d[c[g>>2]
x3e;>0]|0|0)>102)break}if((c[g>>2]|0)>>>0<(c[f>>2]|0)>>>0?(d[c[
g>>2]>>0]|0|0)!=62:0){c[h>>2]=3;g=c[g>>2]|0;b=c[e>>2]|0;c[b>>2]=g;b=
c[h>>2]|0;i=j;return b|0}c[g>>2]=(c[g>>2]|0)+1;g=c[g>>2]|0;b=c[e>>2]|0;c[b>
;>2]=g;b=c[h>>2]|0;i=j;return b|0}function Zp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Sp(c[d>
;>2]|0);a=_p(c[d>>2]|0,c[(c[d>>2]|0)+8>>2]|0)|0;i=b;return a|0}function _p(a,b){a=a|0;b=b|0;var
e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[f>>2]=a;c[g>>2]=b;c[h>>
;2]=$p(c[f>>2]|0,c[g>>2]|0,10)|0;c[j>>2]=c[c[f>>2]>>2];if((c[j>>2]|0
)>>>0<(c[g>>2]|0)>>>0?(d[c[j>>2]>>0]|0|0)==35:0){c[c[f>>
;2]>>2]=(c[j>>2]|0)+1;c[e>>2]=$p(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;j=
c[e>>2]|0;i=k;return j|0}c[e>>2]=c[h>>2];j=c[e>>2]|0;i=k;return j|0}function $p(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;q=i;i=i+32|0;g=q+20|0;h=q+16|0;j=q+12|0;k=q+8|0;n=q+4|0;m=q;o=q+25|
0;l=q+24|0;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[n>>2]=c[c[h>>2]>>2];c[m
x3e;>2]=0;a[o>>0]=0;if(((c[k>>2]|0)<2?1:(c[n>>2]|0)==(c[j>>2]|0))|(c[k>
x3e;2]|0)>36){c[g>>2]=0;p=c[g>>2]|0;i=q;return p|0}if(!((d[c[n>>2]>>0]|0)!=45?(d[c[
n>>2]>>0]|0)!=43:0))p=5;if((p|0)==5?(a[o>>0]=(d[c[n>>2]>>0]|0)==45,c[n>
x3e;2]=(c[n>>2]|0)+1,(c[n>>2]|0)==(c[j>>2]|0)):0){c[g>>2]=0;p=c[g>>2]|0;i=q;return
p|0}while(1){if((c[n>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;if((d[c[n>
x3e;2]>>0]|0)==32)break;if((d[c[n>>2]>>0]|0)==13)break;if((d[c[n>>2]>>0]|0)==10
)break;if((d[c[n>>2]>>0]|0)==9)break;if((d[c[n>>2]>>0]|0)==12)break;if(!(d[c[n>>
;2]>>0]|0))break;if((d[c[n>>2]>>0]|0)>=128)break;a[l>>0]=a[11579+(d[c[n>>
2]>>0]&127)>>0]|0;if((a[l>>0]|0)<0)break;if((a[l>>0]|0)>=(c[k>>
2]|0))break;p=_(c[m>>2]|0,c[k>>2]|0)|0;c[m>>2]=p+(a[l>>0]|0);c[n>>2]=(c[n>
;>2]|0)+1}if(a[o>>0]|0)c[m>>2]=0-(c[m>>2]|0);c[c[h>>2]>>2]=c[n>>
;2];c[g>>2]=c[m>>2];p=c[g>>2]|0;i=q;return p|0}function aq(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;Sp(c[f>>2]|0);b=bq(c[f>>2]|0,c[(c[f>>2]|
0)+8>>2]|0,c[e>>2]|0)|0;i=d;return b|0}function bq(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;s=i;i=i+48|0;g=s+28|0;h=s+24|0;j=s+20|0;k=s+16|0;p=s+12|0;o=s+8|0;m=s+4|0;n=s;q=s+33|0;l=s+32|0;c[h>>
;2]=b;c[j>>2]=e;c[k>>2]=f;c[p>>2]=c[c[h>>2]>>2];c[m>>2]=0;c[n>
x3e;2]=1;a[q>>0]=0;if((c[p>>2]|0)==(c[j>>2]|0)){c[g>>2]=0;r=c[g>>2]|0;i=s;return
r|0}if(!((d[c[p>>2]>>0]|0)!=45?(d[c[p>>2]>>0]|0)!=43:0))r=5;if((r|0)==5?(a[q>>
;0]=(d[c[p>>2]>>0]|0)==45,c[p>>2]=(c[p>>2]|0)+1,(c[p>>2]|0)==(c[j>>2
]|0)):0){c[g>>2]=0;r=c[g>>2]|0;i=s;return r|0}if((d[c[p>>2]>>0]|0)!=46)c[o>>2]=(
_p(p,c[j>>2]|0)|0)<<16;else c[o>>2]=0;a:do if((c[p>>2]|0)>>>0<(c[j
x3e;>2]|0)>>>0?(d[c[p>>2]>>0]|0)==46:0){c[p>>2]=(c[p>>2]|0)+1;while(
1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break a;if((d[c[p>>2]>
;>0]|0)==32)break a;if((d[c[p>>2]>>0]|0)==13)break a;if((d[c[p>>2]>>0]|0)==10)break
a;if((d[c[p>>2]>>0]|0)==9)break a;if((d[c[p>>2]>>0]|0)==12)break a;if(!(d[c[p>>
;2]>>0]|0))break a;if((d[c[p>>2]>>0]|0)>=128)break a;a[l>>0]=a[11579+(d[c[p>
x3e;2]>>0]&127)>>0]|0;if((a[l>>0]|0)<0)break a;if((a[l>>0]|0)>=10)break a
;if(!((c[o>>2]|0)==0&(c[k>>2]|0)>0)){if((c[n>>2]|0)<1e7){c[m>>2]=((c[m>
;>2]|0)*10|0)+(a[l>>0]|0);c[n>>2]=(c[n>>2]|0)*10}}else{c[k>>2]=(c[k>>2]|0
)+-1;c[m>>2]=((c[m>>2]|0)*10|0)+(a[l>>0]|0)}c[p>>2]=(c[p>>2]|0)+1}}while(0);do
if(((c[p>>2]|0)+1|0)>>>0<(c[j>>2]|0)>>>0){if((d[c[p>>2]>
x3e;0]|0)!=101?(d[c[p>>2]>>0]|0)!=69:0)break;c[p>>2]=(c[p>>2]|0)+1;r=_p(p,c[j>>
;2]|0)|0;c[k>>2]=(c[k>>2]|0)+r}while(0);while(1){if((c[k>>2]|0)<=0)break;c[o>>2]=(c
[o>>2]|0)*10;c[m>>2]=(c[m>>2]|0)*10;c[k>>2]=(c[k>>2]|0)+-1}while(1){if((c[k>
;>2]|0)>=0)break;c[o>>2]=(c[o>>2]|0)/10|0;c[n>>2]=(c[n>>2]|0)*10;c[k>>
;2]=(c[k>>2]|0)+1}if(c[m>>2]|0){r=Vb(c[m>>2]|0,c[n>>2]|0)|0;c[o>>2]=(c[o>
x3e;2]|0)+r}if(a[q>>0]|0)c[o>>2]=0-(c[o>>2]|0);c[c[h>>2]>>2]=c[p>>2];
c[g>>2]=c[o>>2];r=c[g>>2]|0;i=s;return r|0}function cq(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;q=i;i=i+32|0;j=q+20|0;k=q+16|0;l=q+12|0;m=q+8|0;n=q+24|0;p=q+4|0;o=q;c[j>>2]=b;c[k>
;>2]=e;c[l>>2]=f;c[m>>2]=g;a[n>>0]=h;c[p>>2]=0;Sp(c[j>>2]|0);c[o>>
;2]=c[c[j>>2]>>2];if((c[o>>2]|0)>>>0>=(c[(c[j>>2]|0)+8>>2]|
0)>>>0){g=c[p>>2]|0;i=q;return g|0}do if(a[n>>0]|0){if((d[c[o>>2]>>0]|0)==
60){c[o>>2]=(c[o>>2]|0)+1;break}c[p>>2]=3;g=c[p>>2]|0;i=q;return g|0}while(0);g=dq(o,c[(
c[j>>2]|0)+8>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;c[c[m>>2]>>2]=g;if(a[n>
;>0]|0){if((c[o>>2]|0)>>>0<(c[(c[j>>2]|0)+8>>2]|0)>>>0?(d[
c[o>>2]>>0]|0)!=62:0){c[p>>2]=3;g=c[p>>2]|0;i=q;return g|0}c[o>>2]=(c[o>
x3e;2]|0)+1}c[c[j>>2]>>2]=c[o>>2];g=c[p>>2]|0;i=q;return g|0}function dq(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;r=i;i=i+48|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0;n=r+16|0;p=r+12|0
;q=r+8|0;o=r+4|0;m=r;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[p>>2]=0;c[q>
;>2]=0;c[o>>2]=1;c[l>>2]=c[l>>2]<<1;c[n>>2]=c[c[h>>2]>>
;2];if((c[l>>2]|0)>>>0>((c[j>>2]|0)-(c[n>>2]|0)|0)>>>0)c[l>
;>2]=(c[j>>2]|0)-(c[n>>2]|0);while(1){if((c[p>>2]|0)>>>0>=(c[l>>
;2]|0)>>>0)break;c[m>>2]=d[(c[n>>2]|0)+(c[p>>2]|0)>>0];if(!((c[m>>
;2]|0)==32|(c[m>>2]|0)==13|(c[m>>2]|0)==10|(c[m>>2]|0)==9|(c[m>>2]|0)==12|(c[m>>
;2]|0)==0)){if((c[m>>2]|0)>>>0>=128)break;c[m>>2]=a[11579+(c[m>>2]&127)
x3e;>0];if((c[m>>2]|0)>>>0>=16)break;c[o>>2]=c[o>>2]<<4|c[m>
;>2];if(c[o>>2]&256|0){e=c[o>>2]&255;g=c[q>>2]|0;c[q>>2]=g+1;a[(c[k>
x3e;2]|0)+g>>0]=e;c[o>>2]=1}}c[p>>2]=(c[p>>2]|0)+1}if((c[o>>2]|0)==1){n=c[n>
;>2]|0;o=c[p>>2]|0;o=n+o|0;p=c[h>>2]|0;c[p>>2]=o;q=c[q>>2]|0;i=r;return q|0}g=c[o
x3e;>2]<<4&255;o=c[q>>2]|0;c[q>>2]=o+1;a[(c[k>>2]|0)+o>>0]=g;n=c[n
x3e;>2]|0;o=c[p>>2]|0;o=n+o|0;p=c[h>>2]|0;c[p>>2]=o;q=c[q>>2]|0;i=r;return q|0}function
eq(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;Sp(c[h>>2]|0);a=fq(c[h>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[g>>2]|0,c[f
x3e;>2]|0)|0;i=e;return a|0}function fq(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;t=
i;i=i+32|0;q=t+24|0;k=t+20|0;l=t+16|0;m=t+12|0;s=t+8|0;r=t+4|0;j=t+31|0;o=t+30|0;n=t+28|0;p=t;c[q>>2]=e;c[k>>
;2]=f;c[l>>2]=g;c[m>>2]=h;c[s>>2]=c[c[q>>2]>>2];c[r>>2]=0;a:do if((c
[s>>2]|0)>>>0<(c[k>>2]|0)>>>0){a[j>>0]=a[c[s>>2]>
;>0]|0;a[o>>0]=0;if((d[j>>0]|0)!=91){if((d[j>>0]|0)==123)a[o>>0]=125}else a[o>
x3e;0]=93;if(a[o>>0]|0)c[s>>2]=(c[s>>2]|0)+1;while(1){if((c[s>>2]|0)>>>0
x3e;=(c[k>>2]|0)>>>0)break a;Tp(s,c[k>>2]|0);if((c[s>>2]|0)>>>0>
;=(c[k>>2]|0)>>>0)break a;j=c[s>>2]|0;if((d[c[s>>2]>>0]|0)==(d[o>>
;0]|0)){e=11;break}c[p>>2]=j;if(c[m>>2]|0?(c[r>>2]|0)>=(c[l>>2]|0):0)break a;e=(bq(
s,c[k>>2]|0,0)|0)>>16&65535;if(c[m>>2]|0)j=(c[m>>2]|0)+(c[r>>2]<<
;1)|0;else j=n;b[j>>1]=e;if((c[p>>2]|0)==(c[s>>2]|0)){e=17;break}c[r>>2]=(c[r>>
;2]|0)+1;if(!(a[o>>0]|0))break a}if((e|0)==11){c[s>>2]=j+1;break}else if((e|0)==17){c[r>>2]=-1;break
}}while(0);c[c[q>>2]>>2]=c[s>>2];i=t;return c[r>>2]|0}function gq(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>
x3e;2]=d;c[g>>2]=e;Sp(c[k>>2]|0);d=hq(c[k>>2]|0,c[(c[k>>2]|0)+8>>2]|0,c[j>
;>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=f;return d|0}function hq(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;u=i;i=i+48|0;r=u+32|0;k=u+28|0;l=u+24|0;m=u+20|0;n=u+16|0;t=u+12|0;s=u+8|0;j=u+37
|0;p=u+36|0;o=u+4|0;q=u;c[r>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[t
x3e;>2]=c[c[r>>2]>>2];c[s>>2]=0;a:do if((c[t>>2]|0)>>>0<(c[k>
;>2]|0)>>>0){a[j>>0]=a[c[t>>2]>>0]|0;a[p>>0]=0;if((d[j>>0]|
0)!=91){if((d[j>>0]|0)==123)a[p>>0]=125}else a[p>>0]=93;if(a[p>>0]|0)c[t>>2]=(
c[t>>2]|0)+1;while(1){if((c[t>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break
a;Tp(t,c[k>>2]|0);if((c[t>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break a;
j=c[t>>2]|0;if((d[c[t>>2]>>0]|0)==(d[p>>0]|0)){b=11;break}c[q>>2]=j;if(c[m>
;>2]|0?(c[s>>2]|0)>=(c[l>>2]|0):0)break a;b=bq(t,c[k>>2]|0,c[n>>2]|0)|0;if(c[m
>>2]|0)j=(c[m>>2]|0)+(c[s>>2]<<2)|0;else j=o;c[j>>2]=b;if((c[q>>2]|0
)==(c[t>>2]|0)){b=17;break}c[s>>2]=(c[s>>2]|0)+1;if(!(a[p>>0]|0))break a}if((b|0)==11){c
[t>>2]=j+1;break}else if((b|0)==17){c[s>>2]=-1;break}}while(0);c[c[r>>2]>>2]=c[t>
x3e;2];i=u;return c[s>>2]|0}function iq(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;e=k+16|0;f=k+12|0;g=
k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;c[(c[f>>2]|0)+8>>2]=0;c[c[f>>2]>>
;2]=0;c[(c[f>>2]|0)+4>>2]=0;Sp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];c[j
x3e;>2]=c[(c[e>>2]|0)+8>>2];if((c[g>>2]|0)>>>0>=(c[j>>2]|0)>
;>>0){i=k;return}a:do switch(d[c[g>>2]>>0]|0|0){case 40:{c[(c[f>>2]|0)+8>>2]=2
;c[c[f>>2]>>2]=c[g>>2];if(!(Xp(g,c[j>>2]|0)|0))c[(c[f>>2]|0)+4>>2]=c
[g>>2];break}case 123:{c[(c[f>>2]|0)+8>>2]=3;c[c[f>>2]>>2]=c[g>>2];if
(!(Wp(g,c[j>>2]|0)|0))c[(c[f>>2]|0)+4>>2]=c[g>>2];break}case 91:{c[(c[f>>2]|0)+
8>>2]=3;c[h>>2]=1;b=c[g>>2]|0;c[g>>2]=b+1;c[c[f>>2]>>2]=b;c[c[e>
;>2]>>2]=c[g>>2];Sp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];while(1){if
((c[g>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break a;if(!((c[(c[e>>2]|0)+12
>>2]|0)!=0^1))break a;if((d[c[g>>2]>>0]|0|0)!=91){if((d[c[g>>2]>>0]|0|0)==93?(
c[h>>2]=(c[h>>2]|0)+-1,(c[h>>2]|0)<=0):0)break}else c[h>>2]=(c[h>>2]|0)+1
;c[c[e>>2]>>2]=c[g>>2];Vp(c[e>>2]|0);Sp(c[e>>2]|0);c[g>>2]=c[c[e>
;>2]>>2]}b=(c[g>>2]|0)+1|0;c[g>>2]=b;c[(c[f>>2]|0)+4>>2]=b;break}default:{
c[c[f>>2]>>2]=c[g>>2];c[(c[f>>2]|0)+8>>2]=(d[c[g>>2]>>0]|0
|0)==47?4:1;Vp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];if(!(c[(c[e>>2]|0)+12>>
;2]|0))c[(c[f>>2]|0)+4>>2]=c[g>>2]}}while(0);if(!(c[(c[f>>2]|0)+4>>2]|0)){c[c[
f>>2]>>2]=0;c[(c[f>>2]|0)+8>>2]=0}c[c[e>>2]>>2]=c[g>>2];i=
k;return}function jq(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;q=i;i=i+64|0;f=q+52|0;g=q+
48|0;h=q+44|0;j=q+40|0;m=q+28|0;n=q+24|0;o=q+20|0;k=q+16|0;l=q+12|0;p=q;c[f>>2]=a;c[g>>2]=b;c[h>>2
]=d;c[j>>2]=e;c[c[j>>2]>>2]=-1;iq(c[f>>2]|0,m);if((c[m+8>>2]|0)!=3){i=q;return
}c[n>>2]=c[c[f>>2]>>2];c[o>>2]=c[(c[f>>2]|0)+8>>2];c[k>>2]=
c[g>>2];c[l>>2]=(c[k>>2]|0)+((c[h>>2]|0)*12|0);c[c[f>>2]>>2]=(c[m>
;>2]|0)+1;c[(c[f>>2]|0)+8>>2]=(c[m+4>>2]|0)+-1;while(1){if((c[c[f>>2]>>2]|
0)>>>0>=(c[(c[f>>2]|0)+8>>2]|0)>>>0)break;iq(c[f>>2]|0,p);if(!(
c[p+8>>2]|0))break;if(c[g>>2]|0?(c[k>>2]|0)>>>0<(c[l>>2]|0)>>
;>0:0){b=c[k>>2]|0;c[b>>2]=c[p>>2];c[b+4>>2]=c[p+4>>2];c[b+8>>2
]=c[p+8>>2]}c[k>>2]=(c[k>>2]|0)+12}c[c[j>>2]>>2]=((c[k>>2]|0)-(c[g
x3e;>2]|0)|0)/12|0;c[c[f>>2]>>2]=c[n>>2];c[(c[f>>2]|0)+8>>2]=c[o>>
;2];i=q;return}function kq(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;H=i;i=i+128|0;k=H+112|0;l=H+108|0;m=H+104|0;n=H+100|0;o=H+96|0;D=H+84|0;r=H+80|0;v=H+76|
0;q=H+72|0;t=H+68|0;s=H+64|0;E=H+52|0;x=H+48|0;y=H+44|0;z=H+40|0;F=H+36|0;B=H+32|0;w=H+28|0;u=H+24|0;C=H+8|0;p=H+4|0;A=H;c[k>
;>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;iq(c[k>>2]|0,D);a:do if(c[
D+8>>2]|0){c[q>>2]=1;c[t>>2]=0;c[r>>2]=c[D>>2];c[v>>2]=c[D+4>
x3e;2];if((c[(c[l>>2]|0)+8>>2]|0)==7){c[x>>2]=c[c[k>>2]>>2];c[y>>2]=
c[(c[k>>2]|0)+8>>2];c[c[k>>2]>>2]=(c[D>>2]|0)+1;c[(c[k>>2]|0)+8>
;>2]=(c[D+4>>2]|0)+-1;iq(c[k>>2]|0,E);c[c[k>>2]>>2]=c[x>>2];c[(c[k>
x3e;2]|0)+8>>2]=c[y>>2];if((c[E+8>>2]|0)==3)G=5}else if((c[D+8>>2]|0)==3)G=5;if((G|0)==5
){if(!(c[n>>2]|0))break;c[q>>2]=c[n>>2];c[t>>2]=1;c[r>>2]=(c[r>>2]|0
)+1;c[v>>2]=(c[v>>2]|0)+-1}b:while(1){if((c[q>>2]|0)>>>0<=0){G=32;break}c[z>
;>2]=(c[(c[m>>2]|0)+(c[t>>2]<<2)>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0
);Tp(r,c[v>>2]|0);switch(c[(c[l>>2]|0)+8>>2]|0){case 1:{c[F>>2]=lq(r,c[v>>2]|0
)|0;G=13;break}case 3:{c[F>>2]=bq(r,c[v>>2]|0,0)|0;G=13;break}case 4:{c[F>>2]=bq(r,c[v>>
2]|0,3)|0;G=13;break}case 2:{c[F>>2]=_p(r,c[v>>2]|0)|0;G=13;break}case 6:case 5:{c[w>>2]=c[(c[k>
;>2]|0)+16>>2];c[u>>2]=(c[v>>2]|0)-(c[r>>2]|0);if((c[r>>2]|0)>>
x3e;0<(c[v>>2]|0)>>>0){if((c[D+8>>2]|0)==4){c[u>>2]=(c[u>>2]|0)+-1;c
[r>>2]=(c[r>>2]|0)+1}else{if((c[D+8>>2]|0)!=2){G=23;break b}c[r>>2]=(c[r>>2]|0
)+1;c[u>>2]=(c[u>>2]|0)-2}if(c[c[z>>2]>>2]|0){Fb(c[w>>2]|0,c[c[z>>2]
x3e;>2]|0);c[c[z>>2]>>2]=0;c[c[z>>2]>>2]=0}c[B>>2]=bc(c[w>>2]|0
,(c[u>>2]|0)+1|0,s)|0;if(c[s>>2]|0){G=33;break b}Ss(c[B>>2]|0,c[r>>2]|0,c[u>>2
]|0)|0;a[(c[B>>2]|0)+(c[u>>2]|0)>>0]=0;c[c[z>>2]>>2]=c[B>>2]}break}case
7:{c[p>>2]=c[z>>2];c[A>>2]=hq(r,c[v>>2]|0,4,C,0)|0;if((c[A>>2]|0)<0){G=29
;break b}E=Tb(c[C>>2]|0)|0;c[c[p>>2]>>2]=E;E=Tb(c[C+4>>2]|0)|0;c[(c[p>>2]|0)+4
>>2]=E;E=Tb(c[C+8>>2]|0)|0;c[(c[p>>2]|0)+8>>2]=E;E=Tb(c[C+12>>2]|0)|0;c[(c[p
x3e;>2]|0)+12>>2]=E;break}default:break a}c:do if((G|0)==13){G=0;switch(d[(c[l>>2]|0)+20>>0]|
0|0){case 1:{a[c[z>>2]>>0]=c[F>>2];break c}case 2:{b[c[z>>2]>>1]=c[F>>
;2];break c}case 4:{c[c[z>>2]>>2]=c[F>>2];break c}default:{c[c[z>>2]>>2]=c[F
x3e;>2];break c}}}while(0);c[q>>2]=(c[q>>2]|0)+-1;c[t>>2]=(c[t>>2]|0)+1}if((G|0)==23
){c[s>>2]=3;G=c[s>>2]|0;i=H;return G|0}else if((G|0)==29){c[s>>2]=3;G=c[s>>2]|0;i=H;return
G|0}else if((G|0)==32){c[o>>2]=c[o>>2];c[s>>2]=0;G=c[s>>2]|0;i=H;return G|0}else if((G|
0)==33){G=c[s>>2]|0;i=H;return G|0}}while(0);c[s>>2]=3;G=c[s>>2]|0;i=H;return G|0}function lq(b,e){
b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;f=l+8|0;g=l+4|0;h=l;j=l+12|0;c[f>>2]=b;c[g>>2]=e;c[h>
;>2]=c[c[f>>2]>>2];a[j>>0]=0;if((((((c[h>>2]|0)+3|0)>>>0<(c[g
x3e;>2]|0)>>>0?(d[c[h>>2]>>0]|0|0)==116:0)?(d[(c[h>>2]|0)+1>>0]|0|0)==
114:0)?(d[(c[h>>2]|0)+2>>0]|0|0)==117:0)?(d[(c[h>>2]|0)+3>>0]|0|0)==101:0){a[j>>
;0]=1;c[h>>2]=(c[h>>2]|0)+5}else k=7;if(((((((k|0)==7?((c[h>>2]|0)+4|0)>>>0<(c
[g>>2]|0)>>>0:0)?(d[c[h>>2]>>0]|0|0)==102:0)?(d[(c[h>>2]|0)+1>>
0]|0|0)==97:0)?(d[(c[h>>2]|0)+2>>0]|0|0)==108:0)?(d[(c[h>>2]|0)+3>>0]|0|0)==115:0)?(d[(c
[h>>2]|0)+4>>0]|0|0)==101:0){a[j>>0]=0;c[h>>2]=(c[h>>2]|0)+6}c[c[f>>
2]>>2]=c[h>>2];i=l;return d[j>>0]|0|0}function mq(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;v=i;i=i+464|0;j=v+456|0;k=v+452|0;l=v+448|0;m=v+444|0;n=v+440|0;o=v+56|0;u=v+52
|0;r=v+48|0;p=v+44|0;s=v+40|0;t=v+36|0;q=v;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n
x3e;>2]=h;c[p>>2]=0;e=q;g=c[k>>2]|0;f=e+36|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while
((e|0)<(f|0));c[q+8>>2]=2;if(!((c[(c[k>>2]|0)+8>>2]|0)!=9?(c[(c[k>>2]|0)+8>>
;2]|0)!=7:0))c[q+8>>2]=3;jq(c[j>>2]|0,o,32,r);if((c[r>>2]|0)<0){c[p>>2]=162;u=c[p
x3e;>2]|0;i=v;return u|0}if((c[r>>2]|0)>>>0>(c[(c[k>>2]|0)+24>>2]|0)>
;>>0)c[r>>2]=c[(c[k>>2]|0)+24>>2];c[s>>2]=c[c[j>>2]>>2];c[
t>>2]=c[(c[j>>2]|0)+8>>2];if((c[(c[k>>2]|0)+8>>2]|0)!=7?c[(c[k>>2]|0
)+28>>2]|0:0)a[(c[c[l>>2]>>2]|0)+(c[(c[k>>2]|0)+28>>2]|0)>>0]=c[r>
;>2];c[u>>2]=o;while(1){if((c[r>>2]|0)<=0)break;c[c[j>>2]>>2]=c[c[u>>
;2]>>2];c[(c[j>>2]|0)+8>>2]=c[(c[u>>2]|0)+4>>2];kq(c[j>>2]|0,q,c[l
x3e;>2]|0,c[m>>2]|0,0)|0;o=q+16|0;c[o>>2]=(c[o>>2]|0)+(d[q+20>>0]|0);c[r>>
;2]=(c[r>>2]|0)+-1;c[u>>2]=(c[u>>2]|0)+12}c[n>>2]=c[n>>2];c[c[j>>2]
x3e;>2]=c[s>>2];c[(c[j>>2]|0)+8>>2]=c[t>>2];u=c[p>>2]|0;i=v;return u|0}function
nq(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;h=n+16|0;o=n+12|0;j=n+8|0;k=n+4|0;l=n+
20|0;m=n;c[h>>2]=b;c[o>>2]=d;c[j>>2]=e;c[k>>2]=f;a[l>>0]=g;c[(c[h>>2
]|0)+64>>2]=0;a[(c[h>>2]|0)+68>>0]=1;c[(c[h>>2]|0)+4>>2]=c[o>>2];c[(
c[h>>2]|0)+8>>2]=c[k>>2];c[c[h>>2]>>2]=c[(c[o>>2]|0)+100>>
2];if(c[k>>2]|0?(c[m>>2]=c[c[(c[k>>2]|0)+156>>2]>>2],c[(c[h>>2]|0)+12
>>2]=c[m>>2],c[(c[h>>2]|0)+16>>2]=(c[m>>2]|0)+20,c[(c[h>>2]|0)+20>
;>2]=(c[m>>2]|0)+56,dc(c[m>>2]|0),c[(c[h>>2]|0)+76>>2]=c[(c[j>>2]|0)+40
x3e;>2],c[(c[h>>2]|0)+72>>2]=0,a[l>>0]|0):0)c[(c[h>>2]|0)+72>>2]=c[(c[(c[
k>>2]|0)+156>>2]|0)+36>>2];c[(c[h>>2]|0)+24>>2]=0;c[(c[h>>2]|0)+28
x3e;>2]=0;c[(c[h>>2]|0)+32>>2]=0;c[(c[h>>2]|0)+32+4>>2]=0;c[(c[h>>2]|0)+40
>>2]=0;c[(c[h>>2]|0)+40+4>>2]=0;o=(c[h>>2]|0)+80|0;c[o>>2]=c[1111];c[o+4>
x3e;2]=c[1112];c[o+8>>2]=c[1113];c[o+12>>2]=c[1114];c[o+16>>2]=c[1115];c[o+20>>2]=c[1116
];c[o+24>>2]=c[1117];c[o+28>>2]=c[1118];i=n;return}function oq(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0
;d=e;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+8>>2];if(!(c[d>>2]|0)){i=e;return}d=(c[d
x3e;>2]|0)+108|0;a=c[(c[b>>2]|0)+16>>2]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4
>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>
;>2];i=e;return}function pq(a,d){a=a|0;d=d|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]=
d;if(!(c[f>>2]|0)){d=0;i=g;return d|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20+2>>1]|0)+(b[(c[(
c[e>>2]|0)+12>>2]|0)+56+2>>1]|0)+(c[f>>2]|0)|0)>>>0<=(c[(c[(c[e>
;>2]|0)+12>>2]|0)+4>>2]|0)>>>0){d=0;i=g;return d|0}d=kc(c[(c[e>>2]|0)+12>
x3e;2]|0,c[f>>2]|0,0)|0;i=g;return d|0}function qq(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;p=i;i=i+32|0;q=p+20|0;j=p+16|0;k=p+12|0;l=p+24|0;n=p+8|0;o=p+4|0;m=p;c[q>>2]=e;c[j>>2]=f;c[k>>2]=
g;a[l>>0]=h;c[n>>2]=c[(c[q>>2]|0)+20>>2];if(!(a[(c[q>>2]|0)+68>>0]|0
)){q=c[n>>2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}c[o>
;>2]=(c[(c[n>>2]|0)+4>>2]|0)+(b[(c[n>>2]|0)+2>>1]<<3);c[m>>2]=(
c[(c[n>>2]|0)+8>>2]|0)+(b[(c[n>>2]|0)+2>>1]|0);q=(Tb(c[j>>2]|0)|0)>>
16;c[c[o>>2]>>2]=q;q=(Tb(c[k>>2]|0)|0)>>16;c[(c[o>>2]|0)+4>>2]=q;a[c
[m>>2]>>0]=d[l>>0]|0?1:2;q=c[n>>2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16
x3e;>16;b[q>>1]=g;i=p;return}function rq(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;e=j+12|0;f
=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=pq(c[e>>2]|0,1)|0;if(
c[h>>2]|0){d=c[h>>2]|0;i=j;return d|0}qq(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0,1);d=c[
h>>2]|0;i=j;return d|0}function sq(d){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[e>
;>2]=d;c[h>>2]=c[(c[e>>2]|0)+20>>2];if(!(c[h>>2]|0)){c[f>>2]=3;h=c[f>
;>2]|0;i=j;return h|0}if(!(a[(c[e>>2]|0)+68>>0]|0)){h=c[h>>2]|0;b[h>>1]=(b[h>
x3e;1]|0)+1<<16>>16;c[f>>2]=0;h=c[f>>2]|0;i=j;return h|0}if(((b[(c[(c[e>>2]|0)+
12>>2]|0)+20>>1]|0)+(b[(c[(c[e>>2]|0)+12>>2]|0)+56>>1]|0)+1|0)>>>
;0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+8>>2]|0)>>>0)e=0;else e=kc(c[(c[e>>2
]|0)+12>>2]|0,0,1)|0;c[g>>2]=e;if(!(c[g>>2]|0)){if((b[c[h>>2]>>1]|0)>0)b[(
c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>>1]|0)-1<<1)>>1]=(b[(c[h>
x3e;2]|0)+2>>1]|0)-1;h=c[h>>2]|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}c[f
x3e;>2]=c[g>>2];h=c[f>>2]|0;i=j;return h|0}function tq(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=3;if((c
[(c[e>>2]|0)+64>>2]|0)==3){c[h>>2]=0;d=c[h>>2]|0;i=j;return d|0}c[(c[e>>2]|0)+
64>>2]=3;c[h>>2]=sq(c[e>>2]|0)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=j;return d|0}c[h
x3e;>2]=rq(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;d=c[h>>2]|0;i=j;return d|0}function uq(
a){a=a|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;l=k+20|0;j=k+16|0;h=k+12|0;f=k+8|0;g=k+4|0;e=k;c[l>>2]=a;c[j>
;>2]=c[(c[l>>2]|0)+20>>2];if(!(c[j>>2]|0)){i=k;return}if((b[c[j>>2]>>1]|0
)<=1)a=0;else a=(b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>1]|0)-2<<1)>
;>1]|0)+1|0;c[h>>2]=a;if((((b[(c[j>>2]|0)+2>>1]|0)>1?(c[f>>2]=(c[(c[j>>
;2]|0)+4>>2]|0)+(c[h>>2]<<3),c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(b[(c[j
>>2]|0)+2>>1]<<3)+-8,c[e>>2]=(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>
x3e;2]|0)+2>>1]|0)+-1,(c[c[f>>2]>>2]|0)==(c[c[g>>2]>>2]|0)):0)?(c[(c[f>
x3e;2]|0)+4>>2]|0)==(c[(c[g>>2]|0)+4>>2]|0):0)?(d[c[e>>2]>>0]|0)==1:0){l=(c[j
x3e;>2]|0)+2|0;b[l>>1]=(b[l>>1]|0)+-1<<16>>16}if((b[c[j>>2]>>1]|
0)<=0){i=k;return}a=c[j>>2]|0;if((c[h>>2]|0)==((b[(c[j>>2]|0)+2>>1]|0)-1|0)){b[a>
;>1]=(b[a>>1]|0)+-1<<16>>16;l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>>1]|
0)+-1<<16>>16;i=k;return}else{b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>
;1]|0)-1<<1)>>1]=(b[a+2>>1]|0)-1;i=k;return}}function vq(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;x=i;i=i+64|0;m=x+44|0;n=x+40|0;o=x+36
|0;p=x+32|0;q=x+28|0;r=x+24|0;s=x+20|0;t=x+48|0;u=x+16|0;v=x+12|0;w=x+8|0;z=x+4|0;y=x;c[n>>2]=b;c[o>>2]=d;c[
p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=h;a[t>>0]=j;c[u>>2]=k;c[v>
x3e;2]=l;Ns(c[n>>2]|0,0,1500)|0;c[w>>2]=0;c[z>>2]=c[(c[o>>2]|0)+96>>2];c[y>
;>2]=Vd(c[z>>2]|0,71003)|0;c[w>>2]=c[y>>2];if(c[w>>2]|0){c[(c[n>>2]|0)+1348
>>2]=c[w>>2];nq(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,a[t>>
;0]|0);c[(c[n>>2]|0)+1352>>2]=c[(c[o>>2]|0)+16>>2];c[(c[n>>2]|0)+1356>>
;2]=c[r>>2];c[(c[n>>2]|0)+1468>>2]=c[u>>2];c[(c[n>>2]|0)+1464>>2]=c[
s>>2];c[(c[n>>2]|0)+1472>>2]=c[v>>2];z=(c[n>>2]|0)+1476|0;c[z>>2]=c[
1119];c[z+4>>2]=c[1120];c[z+8>>2]=c[1121];c[m>>2]=0;z=c[m>>2]|0;i=x;return z|0}else{c[m
x3e;>2]=7;z=c[m>>2]|0;i=x;return z|0}return 0}function wq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=
a;oq(c[d>>2]|0);i=b;return}function xq(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;Y=i;i=
i+176|0;k=Y+156|0;l=Y+152|0;h=Y+148|0;j=Y+144|0;v=Y+140|0;W=Y+136|0;C=Y+132|0;F=Y+128|0;s=Y+124|0;U=Y+120|0;V=Y+116|0;L=Y+112|0;
M=Y+108|0;D=Y+104|0;R=Y+100|0;E=Y+160|0;N=Y+96|0;w=Y+92|0;Q=Y+88|0;K=Y+84|0;S=Y+80|0;O=Y+76|0;n=Y+72|0;x=Y+68|0;o=Y+64|0;J=Y+60|
0;H=Y+56|0;G=Y+52|0;t=Y+48|0;T=Y+44|0;P=Y+40|0;y=Y+36|0;p=Y+32|0;z=Y+28|0;q=Y+24|0;A=Y+20|0;r=Y+16|0;m=Y+12|0;I=Y+8|0;B=Y+4|0;u=
Y;c[l>>2]=e;c[h>>2]=f;c[j>>2]=g;c[s>>2]=c[l>>2];c[D>>2]=0;c[R>
x3e;2]=0;c[N>>2]=N^l^h;e=(c[N>>2]^c[N>>2]>>10^c[N>>2]>>20)&65535
;c[N>>2]=e;c[N>>2]=(c[N>>2]|0)==0?29572:e;c[(c[l>>2]|0)+1136>>2]=(c[l>>
;2]|0)+112;c[(c[l>>2]|0)+1344>>2]=(c[l>>2]|0)+1140;c[W>>2]=(c[l>>2]|0)+1140;c[(
c[s>>2]|0)+64>>2]=0;c[w>>2]=c[(c[s>>2]|0)+72>>2];if((c[(c[l>>2]|0)+1492
>>2]|0)>>>0>0)Ns(c[(c[l>>2]|0)+1488>>2]|0,0,c[(c[l>>2]|0)+1492>
x3e;2]<<2|0)|0;c[(c[W>>2]|0)+4>>2]=c[h>>2];e=(c[h>>2]|0)+(c[j>>2]|0)|
0;c[(c[W>>2]|0)+8>>2]=e;c[F>>2]=e;e=c[(c[W>>2]|0)+4>>2]|0;c[c[W>>2]
x3e;>2]=e;c[C>>2]=e;c[v>>2]=0;e=c[(c[s>>2]|0)+24>>2]|0;c[L>>2]=e;c[U>
;>2]=e;e=c[(c[s>>2]|0)+28>>2]|0;c[M>>2]=e;c[V>>2]=e;if(c[w>>2]|0)Va[c[(c[
w>>2]|0)+4>>2]&63](c[c[w>>2]>>2]|0);a[E>>0]=0;a:while(1){if((c[C>>
;2]|0)>>>0>=(c[F>>2]|0)>>>0){X=186;break}c[Q>>2]=c[(c[l>>2]|0)+
1136>>2];c[K>>2]=0;c[S>>2]=0;e=c[C>>2]|0;c[C>>2]=e+1;b:do switch(d[e>>
;0]|0){case 1:{c[K>>2]=16;break}case 3:{c[K>>2]=18;break}case 4:{c[K>>2]=14;break}case 5:{c[K>
;>2]=9;break}case 6:{c[K>>2]=6;break}case 7:{c[K>>2]=13;break}case 8:{c[K>>2]=11;break}case 9
:{c[K>>2]=5;break}case 10:{c[K>>2]=22;break}case 11:{c[K>>2]=24;break}case 13:{c[K>>2]=2
;break}case 14:{c[K>>2]=1;break}case 15:{c[K>>2]=26;break}case 21:{c[K>>2]=10;break}case 22:{c[K
x3e;>2]=7;break}case 30:{c[K>>2]=12;break}case 31:{c[K>>2]=8;break}case 12:{if((c[C>>2]|0)>
;>>0>(c[F>>2]|0)>>>0)break a;e=c[C>>2]|0;c[C>>2]=e+1;switch(d[e>
;>0]|0){case 0:{c[K>>2]=15;break b}case 1:{c[K>>2]=19;break b}case 2:{c[K>>2]=17;break b}case
6:{c[K>>2]=3;break b}case 7:{c[K>>2]=4;break b}case 12:{c[K>>2]=20;break b}case 16:{c[K>>
;2]=21;break b}case 17:{c[K>>2]=23;break b}case 33:{c[K>>2]=25;break b}default:break a}}case 255:{if(((c[C
x3e;>2]|0)+4|0)>>>0>(c[F>>2]|0)>>>0)break a;c[S>>2]=d[c[C>>
;2]>>0]<<24|d[(c[C>>2]|0)+1>>0]<<16|d[(c[C>>2]|0)+2>>0]<
;<8|d[(c[C>>2]|0)+3>>0];c[C>>2]=(c[C>>2]|0)+4;h=(a[E>>0]|0)!=0;if((c[S>
;>2]|0)>32e3|(c[S>>2]|0)<-32e3){if(h)break b;a[E>>0]=1;break b}else{if(h)break b;c[S>>
;2]=c[S>>2]<<16;break b}}default:{if((d[(c[C>>2]|0)+-1>>0]|0)<32)break a;h=c[C>
;>2]|0;do if((d[(c[C>>2]|0)+-1>>0]|0)>=247){e=h+1|0;c[C>>2]=e;if(e>>>0>
;(c[F>>2]|0)>>>0)break a;h=d[(c[C>>2]|0)+-2>>0]|0;if((d[(c[C>>2]|0)+-2>
;>0]|0)<251){c[S>>2]=(h-247<<8)+(d[(c[C>>2]|0)+-1>>0]|0)+108;break}else{c[S>
;>2]=0-((h-251<<8)+(d[(c[C>>2]|0)+-1>>0]|0)+108);break}}else c[S>>2]=(d[h+-1>
x3e;0]|0)-139;while(0);if(!(a[E>>0]|0))c[S>>2]=c[S>>2]<<16}}while(0);c:do if((c[R>
x3e;2]|0)>0){switch(c[K>>2]|0){case 23:case 0:case 24:case 22:break c;default:{}}c[R>>2]=0}while(0);if(!((
d[E>>0]|0)==0|(c[K>>2]|0)==0|(c[K>>2]|0)==20))a[E>>0]=0;if(!(c[K>>2]|0)){if((((
c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)>=256)break;g=c[S>>2]|0;e=c[Q>>2]|0;c[Q>
x3e;2]=e+4;c[e>>2]=g;c[(c[l>>2]|0)+1136>>2]=c[Q>>2];continue}if((c[K>>2]|0)==21
){if((((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)<2){X=188;break}c[Q>>2]=(c[Q>>2]|0)+-
8;c[O>>2]=c[(c[Q>>2]|0)+4>>2]>>16;c[n>>2]=c[c[Q>>2]>>2]>
;>16;if((c[n>>2]|0)>(((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)){X=188;break}c[Q>>
;2]=(c[Q>>2]|0)+(0-(c[n>>2]|0)<<2);c[D>>2]=0;c[R>>2]=0;do switch(c[O>>
;2]|0){case 1:{if(c[n>>2]|0)break a;c[(c[l>>2]|0)+1400>>2]=1;c[(c[l>>2]|0)+1404>>
;2]=0;e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}e=pq(c[s>
;>2]|0,6)|0;c[v>>2]=e;if(e|0){X=186;break a}break}case 2:{if(c[n>>2]|0)break a;g=(c[l>>2]|0)+
1404|0;e=c[g>>2]|0;c[g>>2]=e+1;c[x>>2]=e;if((c[x>>2]|0)>0&(c[x>>2]|0
)<7)qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,((c[x>>2]|0)==3?1:(c[x>>2]|0)==6)&
;1);break}case 0:{if((c[n>>2]|0)!=3)break a;if(!(c[(c[l>>2]|0)+1400>>2]|0))break a;if((c[(c[l>
;>2]|0)+1404>>2]|0)!=7)break a;c[c[Q>>2]>>2]=c[U>>2];c[(c[Q>>2]|0)+4>
;>2]=c[V>>2];c[D>>2]=2;break}case 3:{if((c[n>>2]|0)!=1)break a;c[D>>2]=1;if(c[w>
;>2]|0)Ra[c[(c[w>>2]|0)+20>>2]&7](c[c[w>>2]>>2]|0,b[(c[(c[s>>2]|0)+20
>>2]|0)+2>>1]|0);break}case 13:case 12:{c[Q>>2]=(c[l>>2]|0)+112;break}case 18:case 17:case
16:case 15:case 14:{c[o>>2]=c[(c[l>>2]|0)+1464>>2];if(!(c[o>>2]|0))break a;c[J>>
;2]=(c[O>>2]|0)-13+((c[O>>2]|0)==18&1);if((c[n>>2]|0)!=(_(c[J>>2]|0,c[c[o>>
;2]>>2]|0)|0))break a;c[t>>2]=(c[Q>>2]|0)+(c[J>>2]<<2);c[T>>2]=c[Q
x3e;>2];c[H>>2]=0;while(1){if((c[H>>2]|0)>>>0>=(c[J>>2]|0)>>>
;0)break;c[P>>2]=c[c[T>>2]>>2];c[G>>2]=1;while(1){if((c[G>>2]|0)>>
x3e;0>=(c[c[o>>2]>>2]|0)>>>0)break;e=c[t>>2]|0;c[t>>2]=e+4;e=Mb(c[e
x3e;>2]|0,c[(c[(c[o>>2]|0)+136>>2]|0)+(c[G>>2]<<2)>>2]|0)|0;c[P>>
;2]=(c[P>>2]|0)+e;c[G>>2]=(c[G>>2]|0)+1}g=c[P>>2]|0;e=c[T>>2]|0;c[T>>
;2]=e+4;c[e>>2]=g;c[H>>2]=(c[H>>2]|0)+1}c[D>>2]=c[J>>2];break}case 19:{c[p>
;>2]=c[(c[l>>2]|0)+1464>>2];if((c[n>>2]|0)!=1|(c[p>>2]|0)==0)break a;c[y>>
;2]=c[c[Q>>2]>>2]>>16;if((c[y>>2]|0)<0)break a;if(((c[y>>2]|0)+(c[c[p>
;>2]>>2]|0)|0)>>>0>(c[(c[l>>2]|0)+1492>>2]|0)>>>0)break a;
Ss((c[(c[l>>2]|0)+1488>>2]|0)+(c[y>>2]<<2)|0,c[(c[p>>2]|0)+136>>2]|0
,c[c[p>>2]>>2]<<2|0)|0;break}case 20:{if((c[n>>2]|0)!=2)break a;e=c[Q>>2]|0;c[
e>>2]=(c[e>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);c[D>>2]=1;break}case 21:{if((c[n>
;>2]|0)!=2)break a;e=c[Q>>2]|0;c[e>>2]=(c[e>>2]|0)-(c[(c[Q>>2]|0)+4>>2]|0
);c[D>>2]=1;break}case 22:{if((c[n>>2]|0)!=2)break a;e=Mb(c[c[Q>>2]>>2]|0,c[(c[Q>
x3e;2]|0)+4>>2]|0)|0;c[c[Q>>2]>>2]=e;c[D>>2]=1;break}case 23:{if((c[n>>2]|0)!=
2)break a;if(!(c[(c[Q>>2]|0)+4>>2]|0))break a;e=Vb(c[c[Q>>2]>>2]|0,c[(c[Q>>2]|
0)+4>>2]|0)|0;c[c[Q>>2]>>2]=e;c[D>>2]=1;break}case 24:{c[q>>2]=c[(c[l>>
;2]|0)+1464>>2];if((c[n>>2]|0)!=2|(c[q>>2]|0)==0)break a;c[z>>2]=c[(c[Q>>2]|0)+
4>>2]>>16;if((c[z>>2]|0)<0)break a;if((c[z>>2]|0)>>>0>=(c[(c[l
x3e;>2]|0)+1492>>2]|0)>>>0)break a;c[(c[(c[l>>2]|0)+1488>>2]|0)+(c[z>>
;2]<<2)>>2]=c[c[Q>>2]>>2];break}case 25:{c[r>>2]=c[(c[l>>2]|0)+1464
x3e;>2];if((c[n>>2]|0)!=1|(c[r>>2]|0)==0)break a;c[A>>2]=c[c[Q>>2]>>2]>
;>16;if((c[A>>2]|0)<0)break a;if((c[A>>2]|0)>>>0>=(c[(c[l>>2]|0)+1492
>>2]|0)>>>0)break a;c[c[Q>>2]>>2]=c[(c[(c[l>>2]|0)+1488>>2]|0)+(
c[A>>2]<<2)>>2];c[D>>2]=1;break}case 27:{if((c[n>>2]|0)!=4)break a;if((c[(c[Q
x3e;>2]|0)+8>>2]|0)>(c[(c[Q>>2]|0)+12>>2]|0))c[c[Q>>2]>>2]=c[(c[Q>
;>2]|0)+4>>2];c[D>>2]=1;break}case 28:{if(c[n>>2]|0)break a;c[m>>2]=c[N>>
2];if((c[m>>2]|0)>=32768)c[m>>2]=(c[m>>2]|0)+1;c[c[Q>>2]>>2]=c[m>>
;2];c[N>>2]=Mb(c[N>>2]|0,65536-(c[N>>2]|0)|0)|0;if(!(c[N>>2]|0))c[N>>2]=(c[N
x3e;>2]|0)+10355;c[D>>2]=1;break}default:c[R>>2]=c[n>>2]}while(0);c[Q>>2]=(c[Q>
;>2]|0)+(c[D>>2]<<2);c[(c[l>>2]|0)+1136>>2]=c[Q>>2];continue}c[I>>
;2]=c[4488+(c[K>>2]<<2)>>2];if((((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)<(
c[I>>2]|0)){X=188;break}c[Q>>2]=(c[Q>>2]|0)+(0-(c[I>>2]|0)<<2);d:do switch(c[K
>>2]|0){case 1:{X=121;break a}case 3:{X=127;break a}case 2:{c[(c[s>>2]|0)+64>>2]=1;e=(c[s>>
;2]|0)+32|0;c[e>>2]=(c[e>>2]|0)+(c[c[Q>>2]>>2]|0);c[(c[s>>2]|0)+40>>
2]=c[(c[Q>>2]|0)+4>>2];c[(c[s>>2]|0)+40+4>>2]=0;e=(c[(c[s>>2]|0)+24>>
;2]|0)+(c[c[Q>>2]>>2]|0)|0;c[U>>2]=e;c[L>>2]=e;e=c[(c[s>>2]|0)+28>>2
]|0;c[V>>2]=e;c[M>>2]=e;c[M>>2]=c[M>>2];if(a[(c[s>>2]|0)+70>>0]|0){X
=126;break a}break}case 4:{c[(c[s>>2]|0)+64>>2]=1;e=(c[s>>2]|0)+32|0;c[e>>2]=(c[e>
x3e;2]|0)+(c[c[Q>>2]>>2]|0);e=(c[s>>2]|0)+32+4|0;c[e>>2]=(c[e>>2]|0)+(c[(c[Q
x3e;>2]|0)+4>>2]|0);c[(c[s>>2]|0)+40>>2]=c[(c[Q>>2]|0)+8>>2];c[(c[s>
x3e;2]|0)+40+4>>2]=c[(c[Q>>2]|0)+12>>2];c[U>>2]=(c[(c[s>>2]|0)+24>>2
]|0)+(c[c[Q>>2]>>2]|0);c[V>>2]=(c[(c[s>>2]|0)+28>>2]|0)+(c[(c[Q>>2]|
0)+4>>2]|0);if(a[(c[s>>2]|0)+70>>0]|0){X=129;break a}break}case 5:{if(!((c[(c[s>>2]|0)+64
>>2]|0)!=3?(c[(c[s>>2]|0)+64>>2]|0)!=2:0))uq(c[s>>2]|0);c[(c[s>>2]|0)+64>
x3e;2]=1;break}case 6:{X=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=X;if(X|0){X=186;break
a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);X=144;break}case 7:{c[U>>2]=(c[U>
;>2]|0)+(c[c[Q>>2]>>2]|0);if(!(c[(c[l>>2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|
0)+64>>2]|0))break a;c[(c[s>>2]|0)+64>>2]=2}break}case 8:{e=tq(c[s>>2]|0,c[U>>
2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){
X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);qq(c[s>>2]|0,c[U>>
;2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);c[V>>
2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2
]|0,0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+12>>2]|0);qq(c[s>>2]|0,c[U>>
;2]|0,c[V>>2]|0,1);break}case 9:{X=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=
X;if(X|0){X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);c[V>>2]=(c[V>
;>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);X=144;break}case 10:{c[U>>2]=(c[U>>2]|0)+(c[c[Q>
;>2]>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);if(!(c[(c[l>
x3e;2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|0)+64>>2]|0))break a;c[(c[s>>2]|0)+64>>
2]=2}break}case 11:{e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break
a}e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>
x3e;2]>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);qq(c[s>>2]|
0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);
c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+12>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,
c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+16>>2]|0);c[V>>2]=(c
[V>>2]|0)+(c[(c[Q>>2]|0)+20>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,
1);break}case 12:{e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}
e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){X=186;break a}c[V>>2]=(c[V>>2]|0)+(c[c[Q>>
;2]>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(
c[(c[Q>>2]|0)+4>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);qq
(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+
12>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,1);break}case 13:{X=tq(c[s>>2]|0,c[
U>>2]|0,c[V>>2]|0)|0;c[v>>2]=X;if(X|0){X=186;break a}c[V>>2]=(c[V>>2]|0)+(c[c[
Q>>2]>>2]|0);X=144;break}case 14:{c[V>>2]=(c[V>>2]|0)+(c[c[Q>>2]>>2]|
0);if(!(c[(c[l>>2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|0)+64>>2]|0))break a;c[(c[s>>
;2]|0)+64>>2]=2}break}case 20:{e=Vb(c[c[Q>>2]>>2]|0,c[(c[Q>>2]|0)+4>>2]|0)|0;c
[c[Q>>2]>>2]=e;c[Q>>2]=(c[Q>>2]|0)+4;a[E>>0]=0;break}case 22:{c[B>>2
]=c[c[Q>>2]>>2]>>16;if((c[B>>2]|0)<0)break a;if((c[B>>2]|0)>=(c[(c[l
>>2]|0)+1364>>2]|0))break a;if((((c[W>>2]|0)-((c[l>>2]|0)+1140)|0)/12|0|0)>=16)break
a;c[c[W>>2]>>2]=c[C>>2];c[W>>2]=(c[W>>2]|0)+12;c[(c[W>>2]|0)+4>
;>2]=c[(c[(c[l>>2]|0)+1368>>2]|0)+(c[B>>2]<<2)>>2];if(c[(c[l>>2
]|0)+1372>>2]|0)c[(c[W>>2]|0)+8>>2]=(c[(c[W>>2]|0)+4>>2]|0)+(c[(c[(c[l>
x3e;2]|0)+1372>>2]|0)+(c[B>>2]<<2)>>2]|0);else{if((c[(c[l>>2]|0)+1360>>
;2]|0)>=0)h=c[(c[l>>2]|0)+1360>>2]|0;else h=0;e=(c[W>>2]|0)+4|0;c[e>>2]=(c[e>
x3e;2]|0)+h;c[(c[W>>2]|0)+8>>2]=c[(c[(c[l>>2]|0)+1368>>2]|0)+((c[B>>2]|0)+1<
;<2)>>2]}c[c[W>>2]>>2]=c[(c[W>>2]|0)+4>>2];if(!(c[(c[W>>2]|0)+4
>>2]|0))break a;c[(c[l>>2]|0)+1344>>2]=c[W>>2];c[C>>2]=c[(c[W>>2]|0)+
4>>2];c[F>>2]=c[(c[W>>2]|0)+8>>2];break}case 23:{if((c[D>>2]|0)>0){c[D>
;>2]=(c[D>>2]|0)+-1;break d}if(!(c[R>>2]|0))break a;c[R>>2]=(c[R>>2]|0)+-1;c[Q>
;>2]=(c[Q>>2]|0)+4;break}case 24:{if((c[W>>2]|0)>>>0<=((c[l>>2]|0)+1140|0
)>>>0)break a;c[W>>2]=(c[W>>2]|0)+-12;c[C>>2]=c[c[W>>2]>>2];c[F
>>2]=c[(c[W>>2]|0)+8>>2];c[(c[l>>2]|0)+1344>>2]=c[W>>2];break}case 26
:case 15:break;case 16:{if(c[w>>2]|0)Ua[c[(c[w>>2]|0)+12>>2]&31](c[c[w>>2]>>
;2]|0,1,c[Q>>2]|0);break}case 17:{if(c[w>>2]|0)Ua[c[(c[w>>2]|0)+16>>2]&31](c[c[w>
;>2]>>2]|0,1,c[Q>>2]|0);break}case 18:{if(c[w>>2]|0){e=c[Q>>2]|0;c[e>>2]=(
c[e>>2]|0)+(c[L>>2]|0);Ua[c[(c[w>>2]|0)+12>>2]&31](c[c[w>>2]>>2
]|0,0,c[Q>>2]|0)}break}case 19:{if(c[w>>2]|0){c[u>>2]=c[L>>2];e=c[Q>>2]|0;c[e
x3e;>2]=(c[e>>2]|0)+(c[u>>2]|0);e=(c[Q>>2]|0)+8|0;c[e>>2]=(c[e>>2]|0)+(c[
u>>2]|0);e=(c[Q>>2]|0)+16|0;c[e>>2]=(c[e>>2]|0)+(c[u>>2]|0);Ua[c[(c[w>>
;2]|0)+16>>2]&31](c[c[w>>2]>>2]|0,0,c[Q>>2]|0)}break}case 25:{c[U>>2]=c[c
[Q>>2]>>2];c[V>>2]=c[(c[Q>>2]|0)+4>>2];c[(c[l>>2]|0)+1400>>
;2]=0;break}default:break a}while(0);if((X|0)==144?(X=0,e=rq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0,c[v
x3e;>2]=e,e|0):0){X=186;break}c[(c[l>>2]|0)+1136>>2]=c[Q>>2]}do if((X|0)==121){uq(c[s>
x3e;2]|0);if(c[w>>2]|0){if(Ya[c[(c[w>>2]|0)+8>>2]&127](c[c[w>>2]>>2]|0,b[(
c[(c[s>>2]|0)+20>>2]|0)+2>>1]|0)|0)break;Wa[c[(c[w>>2]|0)+24>>2]&31](c[c[
w>>2]>>2]|0,c[(c[s>>2]|0)+20>>2]|0,c[(c[s>>2]|0)+76>>2]|0,c[(c[l>
;>2]|0)+1468>>2]|0)|0}oc(c[(c[s>>2]|0)+12>>2]|0);c[k>>2]=0;X=c[k>>2]|0;i=
Y;return X|0}else if((X|0)==126){c[k>>2]=0;X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==127){c[k>>2]=
yq(c[l>>2]|0,c[c[Q>>2]>>2]|0,c[(c[Q>>2]|0)+4>>2]|0,c[(c[Q>>2]|0)+8
x3e;>2]|0,c[(c[Q>>2]|0)+12>>2]>>16,c[(c[Q>>2]|0)+16>>2]>>16)|0;
X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==129){c[k>>2]=0;X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==
186){c[k>>2]=c[v>>2];X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==188){c[k>>2]=161;X=c[k>
;>2]|0;i=Y;return X|0}while(0);c[k>>2]=160;X=c[k>>2]|0;i=Y;return X|0}function yq(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;A=i;i=i+80|0;n=A+68|0;o=A+64
|0;p=A+60|0;q=A+56|0;r=A+52|0;k=A+48|0;l=A+44|0;v=A+40|0;u=A+36|0;s=A+32|0;x=A+24|0;t=A+16|0;m=A+12|0;w=A+8|0;y=A+4|0;z=A;c[o>
;>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[k>>2]=h;c[l>>2]=j;c[m>>2
]=c[(c[o>>2]|0)+4>>2];if(a[(c[o>>2]|0)+1496>>0]|0){c[n>>2]=160;z=c[n>>
;2]|0;i=A;return z|0}c[q>>2]=(c[q>>2]|0)+(c[(c[o>>2]|0)+32>>2]|0);if((c[(c[o>>
2]|0)+1356>>2]|0)==0?(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)==0:0){c[n>>2]=160;
z=c[n>>2]|0;i=A;return z|0}if(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0){c[u>>2]=c[
k>>2];c[s>>2]=c[l>>2]}else{c[u>>2]=zq(c[o>>2]|0,c[k>>2]|0)|0;c[s>
;>2]=zq(c[o>>2]|0,c[l>>2]|0)|0}if((c[u>>2]|0)<0|(c[s>>2]|0)<0){c[n>
x3e;2]=160;z=c[n>>2]|0;i=A;return z|0}k=c[o>>2]|0;if(a[(c[o>>2]|0)+69>>0]|0){c[w>
x3e;2]=c[k+8>>2];c[y>>2]=c[c[(c[w>>2]|0)+156>>2]>>2];c[v>>2]=lc(c[y
x3e;>2]|0,2)|0;if(!(c[v>>2]|0)){c[z>>2]=c[(c[y>>2]|0)+56+32>>2];c[c[z>>2]
x3e;>2]=c[u>>2];b[(c[z>>2]|0)+4>>1]=514;c[(c[z>>2]|0)+8>>2]=0;c[(c[z>
;>2]|0)+12>>2]=0;c[z>>2]=(c[z>>2]|0)+32;c[c[z>>2]>>2]=c[s>>2];b
[(c[z>>2]|0)+4>>1]=2;x=(Tb((c[q>>2]|0)-(c[p>>2]|0)|0)|0)>>16;c[(c[z>>
;2]|0)+8>>2]=x;x=(Tb(c[r>>2]|0)|0)>>16;c[(c[z>>2]|0)+12>>2]=x;c[(c[w>>
;2]|0)+128>>2]=2;c[(c[w>>2]|0)+132>>2]=c[(c[y>>2]|0)+20+32>>2];c[(c[w>>
;2]|0)+72>>2]=1668246896;c[(c[y>>2]|0)+56+28>>2]=2}}else{nc(c[k+12>>2]|0);a[(c[o>
x3e;2]|0)+1496>>0]=1;c[v>>2]=Aq(c[o>>2]|0,c[u>>2]|0)|0;a[(c[o>>2]|0)+1496>
;>0]=0;if((c[v>>2]|0)==0?(z=(c[o>>2]|0)+32|0,c[x>>2]=c[z>>2],c[x+4>>2]=c[
z+4>>2],z=(c[o>>2]|0)+40|0,c[t>>2]=c[z>>2],c[t+4>>2]=c[z+4>>2],c[(c[
o>>2]|0)+32>>2]=0,c[(c[o>>2]|0)+32+4>>2]=0,c[(c[o>>2]|0)+24>>2]=(c[q
>>2]|0)-(c[p>>2]|0),c[(c[o>>2]|0)+28>>2]=c[r>>2],a[(c[o>>2]|0)+1496
x3e;>0]=1,c[v>>2]=Aq(c[o>>2]|0,c[s>>2]|0)|0,a[(c[o>>2]|0)+1496>>0]=0,(c[v
>>2]|0)==0):0){z=(c[o>>2]|0)+32|0;c[z>>2]=c[x>>2];c[z+4>>2]=c[x+4>>2
];z=(c[o>>2]|0)+40|0;c[z>>2]=c[t>>2];c[z+4>>2]=c[t+4>>2];c[(c[o>>2]|
0)+24>>2]=0;c[(c[o>>2]|0)+28>>2]=0}}c[n>>2]=c[v>>2];z=c[n>>2]|0;i=A;
return z|0}function zq(b,d){b=b|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;l=n+24|0;f=n+20|0;g=n+16|0;m=n+12|0;h=n
+8|0;k=n+4|0;j=n;c[f>>2]=b;c[g>>2]=d;c[k>>2]=c[(c[f>>2]|0)+1348>>2];if((c[g>
;>2]|0)<0|(c[g>>2]|0)>255){c[l>>2]=-1;m=c[l>>2]|0;i=n;return m|0}c[h>>2]=
Ta[c[(c[k>>2]|0)+20>>2]&63](e[(c[(c[k>>2]|0)+24>>2]|0)+(c[g>>2]<<
;1)>>1]|0)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[(c[f>>2]|0)+1352
>>2]|0)>>>0){f=10;break}c[j>>2]=c[(c[(c[f>>2]|0)+1356>>2]|0)+(c[m>
x3e;2]<<2)>>2];if((c[j>>2]|0?(a[c[j>>2]>>0]|0)==(a[c[h>>2]>>
;0]|0):0)?(Kr(c[j>>2]|0,c[h>>2]|0)|0)==0:0){f=8;break}c[m>>2]=(c[m>>2]|0)+1}if((f|0)==8){
c[l>>2]=c[m>>2];m=c[l>>2]|0;i=n;return m|0}else if((f|0)==10){c[l>>2]=-1;m=c[l>>
;2]|0;i=n;return m|0}return 0}function Aq(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=Ya[c[(c[f>>2]|0)+1472>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return b|0}
function Bq(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|
0;k=n+8|0;m=n+4|0;l=n;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=0;c[m>
;>2]=bc(c[h>>2]|0,16,l)|0;if(c[l>>2]|0){c[f>>2]=c[l>>2];m=c[f>>2]|0;i=n;return
m|0}else{a=c[j>>2]|0;c[(c[m>>2]|0)+4>>2]=a;c[c[m>>2]>>2]=a;c[(c[m>>
2]|0)+8>>2]=c[k>>2];c[(c[m>>2]|0)+12>>2]=2;c[c[g>>2]>>2]=c[h>
x3e;2];c[(c[g>>2]|0)+4>>2]=c[m>>2];c[(c[g>>2]|0)+8>>2]=0;c[(c[g>>2]|
0)+12>>2]=0;c[f>>2]=0;m=c[f>>2]|0;i=n;return m|0}return 0}function Cq(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];Fb(c[e>>2]|0,c[(c[d>
;>2]|0)+4>>2]|0);c[(c[d>>2]|0)+4>>2]=0;i=b;return}function Dq(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;o=i;i=i+80|0;j=o+68|0;k=o+64|0;n=o+60|0;m=o+56|0;l=o+52|0;d=o+48|0;e=o+44|0;f=o+40|0;h=o+8|0;g=o;c[k
x3e;>2]=b;c[n>>2]=c[c[k>>2]>>2];c[m>>2]=c[(c[k>>2]|0)+8>>2];c[l
>>2]=160;c[f>>2]=0;if(!(c[m>>2]|0)){c[j>>2]=6;n=c[j>>2]|0;i=o;return n|0}c[d
x3e;>2]=Eq(c[k>>2]|0,1,e)|0;if(!((c[d>>2]|0)==0|(c[e>>2]|0)!=16)?(Lr(c[d>>2]|0,11707
,16)|0)==0:0){a:while(1){b=Eq(c[k>>2]|0,1,e)|0;c[d>>2]=b;if(!b){d=24;break}switch(Iq(c[d>>2]|0,c[e
>>2]|0)|0){case 49:{d=22;break a}case 20:{d=23;break a}case 40:{if(Jq(c[k>>2]|0,f)|0){d=24;break a}if((c[f
x3e;>2]|0)!=0&(c[f>>2]|0)!=2){d=10;break a}else continue a}case 30:{c[h>>2]=4;if((Kq(c[k>>
;2]|0,h,1)|0)!=1){d=24;break a}a[c[m>>2]>>0]=a[h+4>>0]|0;continue a}case 26:{c[h>>2]=2;c
[h+8>>2]=2;c[h+16>>2]=2;c[h+24>>2]=2;if((Kq(c[k>>2]|0,h,4)|0)!=4){d=24;break a}c[(c[m>
;>2]|0)+4>>2]=c[h+4>>2];c[(c[m>>2]|0)+4+4>>2]=c[h+8+4>>2];c[(c[m>>
;2]|0)+4+8>>2]=c[h+16+4>>2];c[(c[m>>2]|0)+4+12>>2]=c[h+24+4>>2];continue a}case
0:{c[h>>2]=2;if((Kq(c[k>>2]|0,h,1)|0)!=1){d=24;break a}c[(c[m>>2]|0)+20>>2]=c[h+4>
x3e;2];continue a}case 14:{c[h>>2]=2;if((Kq(c[k>>2]|0,h,1)|0)!=1){d=24;break a}c[(c[m>>2]|0)+24>
;>2]=c[h+4>>2];continue a}case 45:{c[g>>2]=0;if(Jq(c[k>>2]|0,g)|0){d=24;break a}c[l>>
;2]=Lq(c[k>>2]|0,c[g>>2]|0,17)|0;if(c[l>>2]|0){d=21;break a}else continue a}default:continue a}}if
((d|0)==10){c[l>>2]=7;d=24}else if((d|0)==21){c[j>>2]=c[l>>2];n=c[j>>2]|0;i=o;return n|0
}else if((d|0)==22){c[l>>2]=Mq(c[k>>2]|0)|0;if(c[l>>2]|0)d=24;else d=23}if((d|0)==23){c[j>>
;2]=0;n=c[j>>2]|0;i=o;return n|0}else if((d|0)==24){Fb(c[n>>2]|0,c[(c[m>>2]|0)+28>>2]|0);
c[(c[m>>2]|0)+28>>2]=0;c[(c[m>>2]|0)+32>>2]=0;Fb(c[n>>2]|0,c[(c[m>>2
]|0)+36>>2]|0);c[(c[m>>2]|0)+36>>2]=0;c[(c[m>>2]|0)+40>>2]=0;a[c[m>>
2]>>0]=0;c[j>>2]=c[l>>2];n=c[j>>2]|0;i=o;return n|0}}c[j>>2]=2;n=c[j>>
;2]|0;i=o;return n|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,l=0;j=i;i=i+32|0;l=j+12|0;k=j+16|0;g=j+8|0;f=j
+4|0;h=j;c[l>>2]=b;a[k>>0]=d;c[g>>2]=e;c[f>>2]=c[(c[l>>2]|0)+4>>2];c
[h>>2]=0;a:do if(a[k>>0]|0)do{if((c[(c[f>>2]|0)+12>>2]|0)<2)Fq(c[f>>2]|0)|
0;c[(c[f>>2]|0)+12>>2]=0;c[h>>2]=Hq(c[f>>2]|0)|0;if(c[h>>2]|0)break a;if((c[(c
[f>>2]|0)+12>>2]|0)>=3)break a}while((c[(c[f>>2]|0)+12>>2]|0)>=2);else while(1
){e=c[f>>2]|0;if((c[(c[f>>2]|0)+12>>2]|0)>=1^1){Hq(e)|0;continue}c[e+12>>2]=0;c[h
x3e;>2]=Hq(c[f>>2]|0)|0;if(c[h>>2]|0)break a;if((c[(c[f>>2]|0)+12>>2]|0)>=3)break
a;if((c[(c[f>>2]|0)+12>>2]|0)<1)break}while(0);if(!(c[g>>2]|0)){l=c[h>>2]|0;i=j;return
l|0}if(c[h>>2]|0)e=(c[c[f>>2]>>2]|0)-(c[h>>2]|0)-1|0;else e=0;c[c[g>>2]>
x3e;2]=e;l=c[h>>2]|0;i=j;return l|0}function Fq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;f=h+8|0;g=h
+4|0;b=h;c[f>>2]=a;Gq(c[f>>2]|0)|0;if((c[(c[f>>2]|0)+12>>2]|0)>=2){c[e>>2
]=0;g=c[e>>2]|0;i=h;return g|0}c[g>>2]=(c[c[f>>2]>>2]|0)+-1;while(1){if((c[c[f>>
;2]>>2]|0)>>>0<(c[(c[f>>2]|0)+8>>2]|0)>>>0){j=c[f>>2]|
0;a=c[j>>2]|0;c[j>>2]=a+1;a=d[a>>0]|0}else a=-1;c[b>>2]=a;if((c[b>>2]|0)==13|(
c[b>>2]|0)==10){a=7;break}if((c[b>>2]|0)==-1|(c[b>>2]|0)==26){a=9;break}}if((a|0)==7)c[(c[f>
x3e;2]|0)+12>>2]=2;else if((a|0)==9)c[(c[f>>2]|0)+12>>2]=3;c[e>>2]=c[g>>2];j=c
[e>>2]|0;i=h;return j|0}function Gq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;b=g+8|0;e=g+4|0;f=g;c[e>>2
]=a;c[f>>2]=0;if((c[(c[e>>2]|0)+12>>2]|0)>=1){c[b>>2]=59;f=c[b>>2]|0;i=g;
return f|0}do{if((c[c[e>>2]>>2]|0)>>>0<(c[(c[e>>2]|0)+8>>2]|0)>
x3e;>0){h=c[e>>2]|0;a=c[h>>2]|0;c[h>>2]=a+1;a=d[a>>0]|0}else a=-1;c[f>>2]=
a}while((c[f>>2]|0)==32|(c[f>>2]|0)==9);do if(!((c[f>>2]|0)==13|(c[f>>2]|0)==10)){if((c[
f>>2]|0)==59){c[(c[e>>2]|0)+12>>2]=1;break}if((c[f>>2]|0)==-1|(c[f>>2]|0)==26)
c[(c[e>>2]|0)+12>>2]=3}else c[(c[e>>2]|0)+12>>2]=2;while(0);c[b>>2]=c[f>
x3e;2];h=c[b>>2]|0;i=g;return h|0}function Hq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;b=j+12|0;e=j+8|0;g
=j+4|0;f=j;c[e>>2]=a;Gq(c[e>>2]|0)|0;if((c[(c[e>>2]|0)+12>>2]|0)>=1){c[b>>
;2]=0;h=c[b>>2]|0;i=j;return h|0}c[g>>2]=(c[c[e>>2]>>2]|0)+-1;while(1){if((c[c[e>
x3e;2]>>2]|0)>>>0<(c[(c[e>>2]|0)+8>>2]|0)>>>0){k=c[e>>
;2]|0;a=c[k>>2]|0;c[k>>2]=a+1;a=d[a>>0]|0}else a=-1;c[f>>2]=a;if((c[f>>2]|0)==
32|(c[f>>2]|0)==9)break;if((c[f>>2]|0)==13|(c[f>>2]|0)==10){h=8;break}if((c[f>>2]|0)==59
){h=10;break}if((c[f>>2]|0)==-1|(c[f>>2]|0)==26){h=12;break}}if((h|0)==8)c[(c[e>>2]|0)+12>>
;2]=2;else if((h|0)==10)c[(c[e>>2]|0)+12>>2]=1;else if((h|0)==12)c[(c[e>>2]|0)+12>>2]=3;
c[b>>2]=c[g>>2];k=c[b>>2]|0;i=j;return k|0}function Iq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=
i;i=i+16|0;h=j+12|0;e=j+8|0;f=j+4|0;g=j;c[e>>2]=b;c[f>>2]=d;c[g>>2]=0;a:while(1){if((c[g>>
;2]|0)>=74){b=10;break}if((c[g>>2]|0)<74?(a[c[4608+(c[g>>2]<<2)>>2]>>
;0]|0)==(a[c[e>>2]>>0]|0):0)do{if((a[c[4608+(c[g>>2]<<2)>>2]>>0]|0)!=(
a[c[e>>2]>>0]|0)){b=5;break a}b=(Lr(c[4608+(c[g>>2]<<2)>>2]|0,c[e>>2
]|0,c[f>>2]|0)|0)==0;d=c[g>>2]|0;if(b){b=7;break a}c[g>>2]=d+1}while((c[g>>2]|0)<74
);c[g>>2]=(c[g>>2]|0)+1}if((b|0)==5){c[h>>2]=75;h=c[h>>2]|0;i=j;return h|0}else if((b|0)==
7){c[h>>2]=d;h=c[h>>2]|0;i=j;return h|0}else if((b|0)==10){c[h>>2]=75;h=c[h>>2]|0;i=j;return
h|0}return 0}function Jq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+32|0;d=g+16|0;h=g+12|0;e=g+8|0;f=g;c[h>>2]=
a;c[e>>2]=b;c[f>>2]=3;if((Kq(c[h>>2]|0,f,1)|0)==1){c[c[e>>2]>>2]=c[f+4>
x3e;2];c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}else{c[d>>2]=160;h=c[d>>2]|0;i=g;return h|0}
return 0}function Kq(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;r=i;i=i+48|0;f=r+40|0;g=r+36|0
;h=r+32|0;j=r+28|0;p=r+24|0;o=r+20|0;l=r+16|0;m=r+12|0;q=r+8|0;n=r+4|0;k=r;c[g>>2]=b;c[h>>2]=d;c[j>>
;2]=e;c[p>>2]=c[(c[g>>2]|0)+4>>2];if((c[j>>2]|0)>>>0>5){c[f>>
;2]=0;q=c[f>>2]|0;i=r;return q|0}c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[j
x3e;>2]|0)>>>0)break;c[q>>2]=(c[h>>2]|0)+(c[l>>2]<<3);e=c[p>>
;2]|0;if(!(c[c[q>>2]>>2]|0))c[o>>2]=Fq(e)|0;else c[o>>2]=Hq(e)|0;if(!(c[o>>2]|
0))break;c[m>>2]=(c[c[p>>2]>>2]|0)-(c[o>>2]|0)-1;a:do switch(c[c[q>>2]>
x3e;2]|0){case 1:case 0:{c[n>>2]=c[c[g>>2]>>2];d=cc(c[n>>2]|0,(c[m>>2]|0)+1|0,
k)|0;c[(c[q>>2]|0)+4>>2]=d;if(!(c[k>>2]|0)){Ss(c[(c[q>>2]|0)+4>>2]|0,c[o>
x3e;2]|0,c[m>>2]|0)|0;a[(c[(c[q>>2]|0)+4>>2]|0)+(c[m>>2]|0)>>0]=0}break}case 2
:{d=bq(o,(c[o>>2]|0)+(c[m>>2]|0)|0,0)|0;c[(c[q>>2]|0)+4>>2]=d;break}case 3:{d=_p(o,(c[o
x3e;>2]|0)+(c[m>>2]|0)|0)|0;c[(c[q>>2]|0)+4>>2]=d;break}case 4:{if((c[m>>2]|0)==4)e
=(Lr(c[o>>2]|0,12412,4)|0)!=0^1;else e=0;a[(c[q>>2]|0)+4>>0]=e&1;break}case 5:if(c[(c[g>
x3e;2]|0)+12>>2]|0){d=Oa[c[(c[g>>2]|0)+12>>2]&63](c[o>>2]|0,c[m>>2]|0,c[(
c[g>>2]|0)+16>>2]|0)|0;c[(c[q>>2]|0)+4>>2]=d;break a}else{c[(c[q>>2]|0)+4>
;>2]=0;break a}default:{}}while(0);c[l>>2]=(c[l>>2]|0)+1}c[f>>2]=c[l>>2];q=c[f>
;>2]|0;i=r;return q|0}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,l=0,m=0,n=0;n=i;i=i+32|0;e=n+24|0;f=
n+20|0;g=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;l=n;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;do{a=c[g>>2]|
0;c[g>>2]=a+-1;if(a>>>0<=0){m=4;break}c[j>>2]=Eq(c[f>>2]|0,1,0)|0}while((c[j
x3e;>2]|0)!=0);a:do if((m|0)==4){while(1){m=Eq(c[f>>2]|0,1,k)|0;c[j>>2]=m;if(!m)break a;c[l>>
2]=Iq(c[j>>2]|0,c[k>>2]|0)|0;if((c[l>>2]|0)==20?1:(c[l>>2]|0)==(c[h>>2]|0))break
;else m=4}c[e>>2]=0;m=c[e>>2]|0;i=n;return m|0}while(0);c[e>>2]=160;m=c[e>>2]|0;i=n;return
m|0}function Mq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;f=h+16|0;b=h+12|0;g=h+8|0;d=h+4|0;e=h;c[b>>2]=a;a:while
(1){a=Eq(c[b>>2]|0,1,e)|0;c[d>>2]=a;if(!a){b=9;break}switch(Iq(c[d>>2]|0,c[e>>2]|0)|0){case
75:continue a;case 20:case 21:{b=8;break a}case 53:{c[g>>2]=Nq(c[b>>2]|0)|0;if(c[g>>2]|0){b=5;break
a}else continue a}case 51:case 50:{c[g>>2]=Oq(c[b>>2]|0)|0;if(c[g>>2]|0){b=7;break a}else continue
a}default:{b=9;break a}}}if((b|0)==5)c[f>>2]=c[g>>2];else if((b|0)==7)c[f>>2]=c[g>>2];else
if((b|0)==8)c[f>>2]=0;else if((b|0)==9)c[f>>2]=160;i=h;return c[f>>2]|0}function Nq(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;n=i;i=i+80|0;b=n+72|0;d=n+68|0;f=n+64|0;m=n+60|0;g=n+56|0;h=n+52|0;k=n+48|0;j=n+44|0
;e=n+40|0;l=n;c[d>>2]=a;c[f>>2]=c[(c[d>>2]|0)+8>>2];c[k>>2]=-1;a:do if(!(Jq(c[
d>>2]|0,(c[f>>2]|0)+32|0)|0)){if(c[(c[f>>2]|0)+32>>2]|0?(c[j>>2]=c[c[d>
x3e;2]>>2],a=hc(c[j>>2]|0,20,0,c[(c[f>>2]|0)+32>>2]|0,0,e)|0,c[(c[f>>2]|0)+28
x3e;>2]=a,c[e>>2]|0):0){c[b>>2]=c[e>>2];m=c[b>>2]|0;i=n;return m|0}b:while(1){a=Eq(
c[d>>2]|0,1,h)|0;c[g>>2]=a;if(!a)break a;switch(Iq(c[g>>2]|0,c[h>>2]|0)|0){case 75:continue
b;case 20:case 21:case 23:break b;case 56:break;default:break a}c[k>>2]=(c[k>>2]|0)+1;if((c[k>>2]|
0)>=(c[(c[f>>2]|0)+32>>2]|0))break a;c[m>>2]=(c[(c[f>>2]|0)+28>>2]|0)+((c
[k>>2]|0)*20|0);c[l>>2]=3;c[l+8>>2]=2;c[l+16>>2]=2;c[l+24>>2]=2;c[l+32>
x3e;2]=2;if((Kq(c[d>>2]|0,l,5)|0)!=5)break a;c[c[m>>2]>>2]=c[l+4>>2];c[(c[m>>2
]|0)+4>>2]=c[l+8+4>>2];c[(c[m>>2]|0)+8>>2]=c[l+16+4>>2];c[(c[m>>2]|0
)+12>>2]=c[l+24+4>>2];c[(c[m>>2]|0)+16>>2]=c[l+32+4>>2];if((c[c[m>>2
]>>2]|0)>=0)continue;if((c[(c[m>>2]|0)+8>>2]|0)<=0)continue;c[(c[m>>2]|0)+8>
;>2]=0-(c[(c[m>>2]|0)+8>>2]|0)}c[(c[f>>2]|0)+32>>2]=(c[k>>2]|0)+1;c[b>
;>2]=0;m=c[b>>2]|0;i=n;return m|0}while(0);c[b>>2]=160;m=c[b>>2]|0;i=n;return m|0}function Oq
(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;p=i;i=i+80|0;e=p+72|0;f=p+68|0;g=p+64|0;j=p+60|0;h=p+56|0;k=p+
52|0;l=p+48|0;d=p+44|0;b=p+40|0;o=p+36|0;m=p+32|0;n=p;c[f>>2]=a;c[g>>2]=c[(c[f>>2]|0)+8>>
;2];c[l>>2]=-1;a:do if(!(Jq(c[f>>2]|0,(c[g>>2]|0)+40|0)|0)){if(c[(c[g>>2]|0)+40>>
;2]|0?(c[d>>2]=c[c[f>>2]>>2],a=hc(c[d>>2]|0,16,0,c[(c[g>>2]|0)+40>>2
]|0,0,b)|0,c[(c[g>>2]|0)+36>>2]=a,c[b>>2]|0):0){c[e>>2]=c[b>>2];o=c[e>>
;2]|0;i=p;return o|0}b:while(1){a=Eq(c[f>>2]|0,1,k)|0;c[h>>2]=a;if(!a)break a;c[o>>2]=Iq(c[h>
x3e;2]|0,c[k>>2]|0)|0;switch(c[o>>2]|0){case 75:continue b;case 20:case 21:case 22:break b;case 37:case 36:case
34:break;default:break a}c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)>=(c[(c[g>>2]|0)+40
x3e;>2]|0))break a;c[j>>2]=(c[(c[g>>2]|0)+36>>2]|0)+(c[l>>2]<<4);c[n>
;>2]=5;c[n+8>>2]=5;c[n+16>>2]=3;c[n+24>>2]=3;c[m>>2]=Kq(c[f>>2]|0,n,4)|0;
if((c[m>>2]|0)<3)break a;c[c[j>>2]>>2]=c[n+4>>2];c[(c[j>>2]|0)+4>>
;2]=c[n+8+4>>2];if((c[o>>2]|0)==37){c[(c[j>>2]|0)+8>>2]=0;c[(c[j>>2]|0)+12>
;>2]=c[n+16+4>>2];continue}c[(c[j>>2]|0)+8>>2]=c[n+16+4>>2];if((c[o>>2]|0
)==34&(c[m>>2]|0)==4)b=c[n+24+4>>2]|0;else b=0;c[(c[j>>2]|0)+12>>2]=b}c[(c[g>
x3e;2]|0)+40>>2]=(c[l>>2]|0)+1;Bs(c[(c[g>>2]|0)+36>>2]|0,c[(c[g>>2]|0)+40>
;>2]|0,16,109);c[e>>2]=0;o=c[e>>2]|0;i=p;return o|0}while(0);c[e>>2]=160;o=c[e>>2]|
0;i=p;return o|0}function Pq(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;g=i;i=i+32|0;d=g+24|0;l=g+20|0;k=g+16|0;j=g+12
|0;h=g+8|0;e=g+4|0;f=g;c[l>>2]=a;c[k>>2]=b;c[j>>2]=c[l>>2];c[h>>2]=c[k>
x3e;2];c[e>>2]=c[c[j>>2]>>2]<<16|c[(c[j>>2]|0)+4>>2];c[f>>
2]=c[c[h>>2]>>2]<<16|c[(c[h>>2]|0)+4>>2];if((c[e>>2]|0)>>
x3e;0>(c[f>>2]|0)>>>0){c[d>>2]=1;l=c[d>>2]|0;i=g;return l|0}if((c[e>>
;2]|0)>>>0<(c[f>>2]|0)>>>0){c[d>>2]=-1;l=c[d>>2]|0;i=g;return l
|0}else{c[d>>2]=0;l=c[d>>2]|0;i=g;return l|0}return 0}function Qq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d
x3e;>2]=a;Rq(c[d>>2]|0,0);i=b;return 0}function Rq(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[d>>2]=a;c[f>>2]=b;c[h>>2]=c[c[d>>2]>>2];c[g>>
2]=c[(c[h>>2]|0)+484>>2];c[(c[d>>2]|0)+24>>2]=c[(c[h>>2]|0)+132+284>>
;2];c[(c[d>>2]|0)+28>>2]=c[(c[h>>2]|0)+132+288>>2];c[(c[d>>2]|0)+20>>
;2]=c[(c[g>>2]|0)+20>>2];a=c[g>>2]|0;if(c[f>>2]|0){g=c[a+28>>2]|0;h=c[d>
x3e;2]|0;h=h+16|0;c[h>>2]=g;i=e;return}else{g=c[a+24>>2]|0;h=c[d>>2]|0;h=h+16|0;c[h>>2]=
g;i=e;return}}function Sq(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)+24>>2]=0;c
[(c[d>>2]|0)+28>>2]=0;c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>2]=0;
i=b;return}function Tq(b,d){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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;m=o+16|0;h=o+12|0
;l=o+8|0;j=o+4|0;k=o;c[f>>2]=b;c[g>>2]=d;c[m>>2]=0;if((c[g>>2]|0)>>>0>
;=256){n=c[m>>2]|0;i=o;return n|0}c[h>>2]=e[(c[(c[f>>2]|0)+16>>2]|0)+(c[g>>2]
x3c;<1)>>1];c[j>>2]=Ta[c[(c[f>>2]|0)+20>>2]&63](c[h>>2]|0)|0;c[l>
;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[(c[f>>2]|0)+24>>2]|0)>>
x3e;0){n=9;break}c[k>>2]=c[(c[(c[f>>2]|0)+28>>2]|0)+(c[l>>2]<<2)>>2];
if((c[k>>2]|0?(a[c[k>>2]>>0]|0)==(a[c[j>>2]>>0]|0):0)?(Kr(c[k>>2]|0,
c[j>>2]|0)|0)==0:0)break;c[l>>2]=(c[l>>2]|0)+1}if((n|0)==9){n=c[m>>2]|0;i=o;return n|0}c
[m>>2]=c[l>>2];n=c[m>>2]|0;i=o;return n|0}function Uq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0
;j=i;i=i+16|0;d=j+12|0;e=j+8|0;g=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[f>>2]=(c[c[e
x3e;>2]>>2]|0)+1;while(1){if((c[f>>2]|0)>>>0>=256)break;c[g>>2]=Tq(c[d>
;>2]|0,c[f>>2]|0)|0;if(c[g>>2]|0){h=6;break}c[f>>2]=(c[f>>2]|0)+1}if((h|0)==6){b=c[
f>>2]|0;h=c[e>>2]|0;c[h>>2]=b;h=c[g>>2]|0;i=j;return h|0}c[f>>2]=0;b=c[f>
x3e;2]|0;h=c[e>>2]|0;c[h>>2]=b;h=c[g>>2]|0;i=j;return h|0}function Vq(a){a=a|0;var b=0,d=0;b=i;i=i
+16|0;d=b;c[d>>2]=a;Rq(c[d>>2]|0,1);i=b;return 0}function Wq(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]=c[c[d>>2]>>2];c[e>>2]=(c[f>>2]|0)+132
+240;c[(c[d>>2]|0)+16>>2]=c[(c[e>>2]|0)+4>>2];c[(c[d>>2]|0)+20>>2]=(
c[(c[e>>2]|0)+8>>2]|0)-(c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+24>>2]=
c[(c[e>>2]|0)+12>>2];i=b;return 0}function Xq(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)+24>>2]=0;c[(c[d>>2]|0)+16>>2]=0;c[(c[d>>2]|0)+20>>2]=0;i=b
;return}function Yq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=
b;c[g>>2]=0;if((c[f>>2]|0)>>>0<(c[(c[d>>2]|0)+16>>2]|0)>>
x3e;0){g=c[g>>2]|0;i=h;return g|0}if((c[f>>2]|0)>>>0>=((c[(c[d>>2]|0)+16>
x3e;2]|0)+(c[(c[d>>2]|0)+20>>2]|0)|0)>>>0){g=c[g>>2]|0;i=h;return g|0}c[g>>
;2]=e[(c[(c[d>>2]|0)+24>>2]|0)+(c[f>>2]<<1)>>1];g=c[g>>2]|0;i=h;return
g|0}function Zq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;d=k+12|0;f=k+8|0;h=k+4|0;g=k;c[d>>2]=a;c[f
x3e;>2]=b;c[h>>2]=0;c[g>>2]=c[c[f>>2]>>2];c[g>>2]=(c[g>>2]|0)+1
;if((c[g>>2]|0)>>>0<(c[(c[d>>2]|0)+16>>2]|0)>>>0)c[g>>
;2]=c[(c[d>>2]|0)+16>>2];while(1){if((c[g>>2]|0)>>>0>=((c[(c[d>>2]|0
)+16>>2]|0)+(c[(c[d>>2]|0)+20>>2]|0)|0)>>>0)break;c[h>>2]=e[(c[(c[d>
x3e;2]|0)+24>>2]|0)+(c[g>>2]<<1)>>1];if(c[h>>2]|0){j=7;break}c[g>>2]=(
c[g>>2]|0)+1}if((j|0)==7){b=c[g>>2]|0;j=c[f>>2]|0;c[j>>2]=b;j=c[h>>2]|0;i=k;return
j|0}c[g>>2]=0;b=c[g>>2]|0;j=c[f>>2]|0;c[j>>2]=b;j=c[h>>2]|0;i=k;return j|0}function
_q(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;d=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[d>>2]=c[c[e>
x3e;2]>>2];c[f>>2]=c[(c[d>>2]|0)+100>>2];c[g>>2]=c[(c[d>>2]|0)+484
x3e;>2];a=Sa[c[(c[g>>2]|0)+4>>2]&3](c[f>>2]|0,c[e>>2]|0,c[(c[d>>2]|0
)+132+284>>2]|0,110,0,c[d>>2]|0)|0;i=b;return a|0}function $q(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;
e=f+4|0;d=f;c[e>>2]=a;c[d>>2]=b;i=f;return c[(c[(c[e>>2]|0)+132+288>>2]|0)+(c[d>>
;2]<<2)>>2]|0}function ar(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]=c[c[d>>2]>>2];c[e>>2]=c[(c[f>>2]|0)+100>>2];Fb(c[e>>
;2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>
;2]=0;i=b;return}function br(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;h=d+4|0;g=d;c[f>>2
]=a;c[e>>2]=b;c[h>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[h>>2]|0)+484>
x3e;2];a=Ya[c[(c[g>>2]|0)+8>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function
cr(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;h=d+4|0;g=d;c[f>>2]=a;c[e>>2]=b;c
[h>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[h>>2]|0)+484>>2];a=Ya[c[(c[g>
x3e;2]|0)+12>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function dr(a,d,e){a=a|0;d=d|0;e=
e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+4|0;h=f;g=f+8|0;c[j>>2]=a;c[h>>2]=d;b[g>>1]=e;er(j,(c[j
x3e;>2]|0)+(c[h>>2]|0)|0,c[j>>2]|0,c[h>>2]|0,g)|0;i=f;return}function er(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;v=i;i=i+48|0;l=v+36|0;m=v+32|0;n=v+28|0;o=v+24|0;p=v+20|0;r
=v+16|0;s=v+12|0;t=v+8|0;u=v+4|0;q=v;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[p>
x3e;2]=k;c[t>>2]=e[c[p>>2]>>1];c[r>>2]=c[c[l>>2]>>2];if((c[o>
x3e;2]|0)>>>0>((c[m>>2]|0)-(c[r>>2]|0)|0)>>>0)c[o>>2]=(c[m>
;>2]|0)-(c[r>>2]|0);c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[o>>
;2]|0)>>>0)break;c[u>>2]=d[(c[r>>2]|0)+(c[s>>2]|0)>>0];c[q>>2]=
c[u>>2]^(c[t>>2]|0)>>>8;c[t>>2]=(((c[u>>2]|0)+(c[t>>2]|0)|0)*52845
|0)+22719&65535;a[(c[n>>2]|0)+(c[s>>2]|0)>>0]=c[q>>2];c[s>>2]=(c[s>
x3e;2]|0)+1}c[c[l>>2]>>2]=(c[r>>2]|0)+(c[o>>2]|0);b[c[p>>2]>>1]=c[t
x3e;>2];i=v;return c[s>>2]|0}function fr(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
,u=0;u=i;i=i+64|0;r=u+44|0;e=u+40|0;h=u+36|0;o=u+32|0;m=u+28|0;f=u+49|0;k=u+24|0;j=u+20|0;p=u+16|0;n=u+12|0;g=u+48|0;l=u+8|0;t=u
+4|0;s=u;c[e>>2]=b;if(((a[c[e>>2]>>0]|0)==117?(a[(c[e>>2]|0)+1>>0]|0)==110:0)?(
a[(c[e>>2]|0)+2>>0]|0)==105:0){c[o>>2]=0;c[m>>2]=(c[e>>2]|0)+3;c[h>>
2]=4;while(1){if((c[h>>2]|0)<=0)break;a[f>>0]=a[c[m>>2]>>0]|0;c[k>>2]=(d[
f>>0]|0)-48;do if((c[k>>2]|0)>>>0>=10){c[k>>2]=(d[f>>0]|0)-65;if((c[
k>>2]|0)>>>0>=6){c[k>>2]=16;break}else{c[k>>2]=(c[k>>2]|0)+10;break}}
while(0);if((c[k>>2]|0)>>>0>=16)break;c[o>>2]=(c[o>>2]<<4)+(c[k>
;>2]|0);c[h>>2]=(c[h>>2]|0)+-1;c[m>>2]=(c[m>>2]|0)+1}if(!(c[h>>2]|0)){if(!(
a[c[m>>2]>>0]|0)){c[r>>2]=c[o>>2];t=c[r>>2]|0;i=u;return t|0}if((a[c[m>
x3e;2]>>0]|0)==46){c[r>>2]=c[o>>2]|-2147483648;t=c[r>>2]|0;i=u;return t|0}}}if((a[c[e>
;>2]>>0]|0)==117){c[p>>2]=0;c[n>>2]=(c[e>>2]|0)+1;c[j>>2]=6;while(1){if((
c[j>>2]|0)<=0)break;a[g>>0]=a[c[n>>2]>>0]|0;c[l>>2]=(d[g>>0]|0)-
48;do if((c[l>>2]|0)>>>0>=10){c[l>>2]=(d[g>>0]|0)-65;if((c[l>>2]|0)
x3e;>>0>=6){c[l>>2]=16;break}else{c[l>>2]=(c[l>>2]|0)+10;break}}while(0);if((c[l>
;>2]|0)>>>0>=16)break;c[p>>2]=(c[p>>2]<<4)+(c[l>>2]|0);c[j>
;>2]=(c[j>>2]|0)+-1;c[n>>2]=(c[n>>2]|0)+1}if((c[j>>2]|0)<=2){if(!(a[c[n>
x3e;2]>>0]|0)){c[r>>2]=c[p>>2];t=c[r>>2]|0;i=u;return t|0}if((a[c[n>>2]>
x3e;0]|0)==46){c[r>>2]=c[p>>2]|-2147483648;t=c[r>>2]|0;i=u;return t|0}}}c[t>>2]=c[e>
;>2];c[s>>2]=0;while(1){if(!(a[c[t>>2]>>0]|0))break;if((a[c[t>>2]>>0]|0)==
46?(c[t>>2]|0)>>>0>(c[e>>2]|0)>>>0:0){q=35;break}c[t>>2]=(c[t
x3e;>2]|0)+1}if((q|0)==35)c[s>>2]=c[t>>2];e=c[e>>2]|0;if(c[s>>2]|0){c[r>>
2]=gr(e,c[s>>2]|0)|0|-2147483648;t=c[r>>2]|0;i=u;return t|0}else{c[r>>2]=gr(e,c[t>>2]|0)|
0;t=c[r>>2]|0;i=u;return t|0}return 0}function gr(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;t=i;i=i+64|0;f=t+48|0;g=t+44|0;h=t+40|0;j=t+36|0;l=t+32|0;o=t+28|0;m=t+24|0;q=t+20|0;n=t+16|0;r=t+12|0;k=t+8|0;p=t+4|0;
s=t;c[g>>2]=b;c[h>>2]=e;c[j>>2]=0;c[q>>2]=12431;a:do if(c[g>>2]|0?(c[g>
x3e;2]|0)>>>0<(c[h>>2]|0)>>>0:0){b=c[g>>2]|0;c[g>>2]=b+1;c[j>
;>2]=a[b>>0];c[l>>2]=d[(c[q>>2]|0)+1>>0];c[q>>2]=(c[q>>2]|0)+2;
c[o>>2]=0;c[m>>2]=c[l>>2];while(1){if((c[o>>2]|0)>=(c[m>>2]|0))break a;c[
n>>2]=(c[o>>2]|0)+(c[m>>2]|0)>>1;c[r>>2]=(c[q>>2]|0)+(c[n>>
;2]<<1);c[r>>2]=12431+(d[c[r>>2]>>0]<<8|d[(c[r>>2]|0)+1>>0
]);c[k>>2]=d[c[r>>2]>>0]&127;if((c[k>>2]|0)==(c[j>>2]|0))break;e=c[n>
;>2]|0;if((c[k>>2]|0)<(c[j>>2]|0)){c[o>>2]=e+1;continue}else{c[m>>2]=e;continue
}}c[q>>2]=c[r>>2];while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>
;>0)break;r=c[g>>2]|0;c[g>>2]=r+1;c[j>>2]=a[r>>0];r=(d[c[q>>2]>>
;0]&128|0)!=0;c[q>>2]=(c[q>>2]|0)+1;if(r)if((c[j>>2]|0)!=(d[c[q>>2]>>0]
x26;127|0))break a;else continue;c[l>>2]=d[c[q>>2]>>0]&127;if(d[c[q>>2]>>
0]&128|0)c[q>>2]=(c[q>>2]|0)+2;c[q>>2]=(c[q>>2]|0)+1;while(1){if((c[l>>2]|
0)<=0)break a;c[p>>2]=d[c[q>>2]>>0]<<8|d[(c[q>>2]|0)+1>>0];c[s
x3e;>2]=12431+(c[p>>2]|0);if((c[j>>2]|0)==(d[c[s>>2]>>0]&127|0))break;c[l>
;>2]=(c[l>>2]|0)+-1;c[q>>2]=(c[q>>2]|0)+2}c[q>>2]=c[s>>2]}if((d[c[q>
x3e;2]>>0]&128|0)==0?d[(c[q>>2]|0)+1>>0]&128|0:0){c[f>>2]=d[(c[q>>2]|
0)+2>>0]<<8|d[(c[q>>2]|0)+3>>0];s=c[f>>2]|0;i=t;return s|0}}while(0);c[f>
x3e;2]=0;s=c[f>>2]|0;i=t;return s|0}function hr(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;w=i;i=i+144|0;h=w+128|0;j=w+124|0;k=w+120|0;l=w+116|0;m=w+112|0;n=w+108|0;p=w+104|0;q
=w+64|0;r=w+24|0;u=w+16|0;o=w+12|0;t=w+8|0;v=w+4|0;s=w;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>
;2]=e;c[m>>2]=f;c[n>>2]=g;f=q;e=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(e|0));c[(c[j>
x3e;2]|0)+16>>2]=0;c[(c[j>>2]|0)+20>>2]=0;b=hc(c[h>>2]|0,8,0,(c[k>>2]|0)+10|0,
0,p)|0;c[(c[j>>2]|0)+20>>2]=b;if(c[p>>2]|0){v=c[p>>2]|0;i=w;return v|0}c[t>>2]=
c[(c[j>>2]|0)+20>>2];c[u>>2]=0;while(1){if((c[u>>2]|0)>>>0>=(c[k>
;>2]|0)>>>0)break;c[s>>2]=Ya[c[l>>2]&127](c[n>>2]|0,c[u>>2]|0)|
0;if(c[s>>2]|0){ir(c[s>>2]|0,c[u>>2]|0,r,q);c[v>>2]=fr(c[s>>2]|0)|0;if(c[v>
;>2]&2147483647|0){jr(c[v>>2]|0,q);c[c[t>>2]>>2]=c[v>>2];c[(c[t>>2]|
0)+4>>2]=c[u>>2];c[t>>2]=(c[t>>2]|0)+8}if(c[m>>2]|0)Ra[c[m>>2]&
7](c[n>>2]|0,c[s>>2]|0)}c[u>>2]=(c[u>>2]|0)+1}c[u>>2]=0;while(1){if((c[u>
x3e;2]|0)>>>0>=10)break;if((c[q+(c[u>>2]<<2)>>2]|0)==1){c[c[t>>2]>
;>2]=c[5252+(c[u>>2]<<2)>>2];c[(c[t>>2]|0)+4>>2]=c[r+(c[u>>2]
x3c;<2)>>2];c[t>>2]=(c[t>>2]|0)+8}c[u>>2]=(c[u>>2]|0)+1}c[o>>2]=((
c[t>>2]|0)-(c[(c[j>>2]|0)+20>>2]|0)|0)/8|0;if(!(c[o>>2]|0)){Fb(c[h>>2]|0,c[(c[
j>>2]|0)+20>>2]|0);c[(c[j>>2]|0)+20>>2]=0;if(!(c[p>>2]|0))c[p>>2]=163
}else{if((c[o>>2]|0)>>>0<(((c[k>>2]|0)>>>0)/2|0)>>>0){v=hc
(c[h>>2]|0,8,c[k>>2]|0,c[o>>2]|0,c[(c[j>>2]|0)+20>>2]|0,p)|0;c[(c[j>>
;2]|0)+20>>2]=v;c[p>>2]=0}Bs(c[(c[j>>2]|0)+20>>2]|0,c[o>>2]|0,8,111)}c[(c[j>
;>2]|0)+16>>2]=c[o>>2];v=c[p>>2]|0;i=w;return v|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,l=0,m=0;m=i;i=i+32|0;f=m+16|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m;c[f>>2]=a;c[g>>2]=b;c[h
>>2]=d;c[j>>2]=e;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=10){l=7;break
}e=(Kr(67222+(c[5212+(c[k>>2]<<2)>>2]|0)|0,c[f>>2]|0)|0)==0;d=c[k>>2]|0;if(e)break
;c[k>>2]=d+1}if((l|0)==7){i=m;return}if(c[(c[j>>2]|0)+(d<<2)>>2]|0){i=m;return}c[(c[j>
;>2]|0)+(c[k>>2]<<2)>>2]=1;c[(c[h>>2]|0)+(c[k>>2]<<2)>>
;2]=c[g>>2];i=m;return}function jr(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;d=h+8|0;e=h+4|0;f=h;c[d>
x3e;2]=a;c[e>>2]=b;c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=10){g=6;break}b=c[f
x3e;>2]|0;if((c[d>>2]|0)==(c[5252+(c[f>>2]<<2)>>2]|0))break;c[f>>2]=b+1}if
((g|0)==6){i=h;return}c[(c[e>>2]|0)+(b<<2)>>2]=2;i=h;return}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;j=i;i=i+32|0;d=j+24|0;l=j+20|0;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[l>>2]=a;c[k>>
;2]=b;c[e>>2]=c[l>>2];c[f>>2]=c[k>>2];c[g>>2]=c[c[e>>2]>>2
]&2147483647;c[h>>2]=c[c[f>>2]>>2]&2147483647;do if((c[g>>2]|0)==(c[h>>
;2]|0)){if((c[c[e>>2]>>2]|0)>>>0>(c[c[f>>2]>>2]|0)>>>
0){c[d>>2]=1;break}if((c[c[e>>2]>>2]|0)>>>0<(c[c[f>>2]>>2]|
0)>>>0){c[d>>2]=-1;break}else{c[d>>2]=0;break}}else{if((c[g>>2]|0)>>>
;0>(c[h>>2]|0)>>>0){c[d>>2]=1;break}if((c[g>>2]|0)>>>0<(c[
h>>2]|0)>>>0){c[d>>2]=-1;break}else{c[d>>2]=0;break}}while(0);i=j;return c[d>
x3e;2]|0}function lr(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;m=i;i=i+32|0;d=m+28|0;n=m+24|0;e=m+20|0;j=m+16
|0;g=m+12|0;h=m+8|0;k=m+4|0;f=m;c[n>>2]=a;c[e>>2]=b;c[k>>2]=0;c[j>>2]=c[(c[n>>
2]|0)+20>>2];c[g>>2]=(c[j>>2]|0)+(c[(c[n>>2]|0)+16>>2]<<3)+-8;while(
1){if((c[j>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[h>>2]=(c[j>
x3e;2]|0)+((((c[g>>2]|0)-(c[j>>2]|0)|0)/8|0)>>1<<3);a=c[h>>2]|0;if((c[c[h>
;>2]>>2]|0)==(c[e>>2]|0)){l=4;break}c[f>>2]=c[a>>2]&2147483647;if((c[f>
x3e;2]|0)==(c[e>>2]|0))c[k>>2]=c[h>>2];if((c[j>>2]|0)==(c[g>>2]|0))break;a=c[h
>>2]|0;if((c[f>>2]|0)>>>0<(c[e>>2]|0)>>>0){c[j>>2]=a+
8;continue}else{c[g>>2]=a+-8;continue}}if((l|0)==4)c[k>>2]=a;if(c[k>>2]|0){c[d>>2]=c[(c[
k>>2]|0)+4>>2];n=c[d>>2]|0;i=m;return n|0}else{c[d>>2]=0;n=c[d>>2]|0;i=m;return
n|0}return 0}function mr(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;o=i;i=i+48|0;d=o+32|0;e=o+28|0;m=o+24
|0;g=o+20|0;l=o+16|0;j=o+12|0;k=o+8|0;h=o+4|0;f=o;c[d>>2]=a;c[e>>2]=b;c[m>>2]=0;c[g>>2]=(
c[c[e>>2]>>2]|0)+1;c[l>>2]=0;c[j>>2]=c[(c[d>>2]|0)+16>>2];while(1){if
((c[l>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;c[k>>2]=(c[l>>
;2]|0)+(((c[j>>2]|0)-(c[l>>2]|0)|0)>>>1);c[h>>2]=(c[(c[d>>2]|0)+20>
x3e;2]|0)+(c[k>>2]<<3);a=c[h>>2]|0;if((c[c[h>>2]>>2]|0)==(c[g>>2]|0)){
n=4;break}c[f>>2]=c[a>>2]&2147483647;if((c[f>>2]|0)==(c[g>>2]|0))c[m>>2]=
c[(c[h>>2]|0)+4>>2];a=c[k>>2]|0;if((c[f>>2]|0)>>>0<(c[g>>2
]|0)>>>0){c[l>>2]=a+1;continue}else{c[j>>2]=a;continue}}if((n|0)==4){c[m>>2]=c[a+4
x3e;>2];l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}if(c[m>
x3e;2]|0){l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}c[g>>2]=
0;if((c[l>>2]|0)>>>0>=(c[(c[d>>2]|0)+16>>2]|0)>>>0){l=c[g>
x3e;2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}c[h>>2]=(c[(c[d>>2]|
0)+20>>2]|0)+(c[l>>2]<<3);c[m>>2]=c[(c[h>>2]|0)+4>>2];c[g>>
;2]=c[c[h>>2]>>2]&2147483647;l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>
;>2]|0;i=o;return n|0}function nr(a){a=a|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=a;c[d>>2]=(c[d>>
;2]|0)>>>0>=258?0:a;i=e;return 67307+(b[8388+(c[d>>2]<<1)>>1]|0)|0}function or
(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[e>>2]=a;if((c[e>>2]|0)>>>0>=391){c[
d>>2]=0;a=c[d>>2]|0;i=f;return a|0}else{c[d>>2]=67307+(b[8904+(c[e>>2]<<1)>
;>1]|0);a=c[d>>2]|0;i=f;return a|0}return 0}function pr(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[f>>2]=c[f>>2];b=qc(5292,c[e>>2]|0)|0;i=d;return b|0}function
qr(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;e=h+12|0;f=h+8|0;d=h+4|0;g=h;c[f>>2]=a;c[d>>2]=b;if
(!(c[f>>2]|0)){c[e>>2]=40;g=c[e>>2]|0;i=h;return g|0}c[(c[f>>2]|0)+12>>2]=0;c[(
c[f>>2]|0)+16>>2]=c[d>>2];c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+8>>
;2]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>>2]|0)+24>>2]=0;c[g>>2]=fs(c[d>>
2]|0,71020)|0;if(!(c[g>>2]|0)){c[e>>2]=1;g=c[e>>2]|0;i=h;return g|0}us(c[g>>2]|0,0,2)|0;
d=ps(c[g>>2]|0)|0;c[(c[f>>2]|0)+4>>2]=d;d=c[g>>2]|0;if(c[(c[f>>2]|0)+4>
x3e;2]|0){us(d,0,0)|0;c[(c[f>>2]|0)+12>>2]=c[g>>2];c[(c[f>>2]|0)+20>>2]=25;c[(
c[f>>2]|0)+24>>2]=44;c[e>>2]=0;g=c[e>>2]|0;i=h;return g|0}else{ks(d)|0;c[e>>2]=
81;g=c[e>>2]|0;i=h;return g|0}return 0}function rr(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;m=
i;i=i+32|0;f=m+20|0;g=m+16|0;h=m+12|0;j=m+8|0;k=m+4|0;l=m;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>
x3e;2]=e;if((c[k>>2]|0)==0?(c[h>>2]|0)>>>0>(c[(c[g>>2]|0)+4>>2]|0)
x3e;>>0:0){c[f>>2]=1;a=c[f>>2]|0;i=m;return a|0}c[l>>2]=c[(c[g>>2]|0)+12>
x3e;2];if((c[(c[g>>2]|0)+8>>2]|0)!=(c[h>>2]|0))us(c[l>>2]|0,c[h>>2]|0,0)|0;c[f
>>2]=ts(c[j>>2]|0,1,c[k>>2]|0,c[l>>2]|0)|0;a=c[f>>2]|0;i=m;return a|0}function
sr(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;ks(c[(c[d>>2]|0)+12>>2]|0)|0;c[(c[d>>
;2]|0)+12>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;i=b;return}function tr(){
var a=0,b=0;b=i;i=i+16|0;a=b;c[a>>2]=Fs(16)|0;if(!(c[a>>2]|0)){a=c[a>>2]|0;i=b;return a|0}c[c[a>
;>2]>>2]=0;c[(c[a>>2]|0)+4>>2]=112;c[(c[a>>2]|0)+12>>2]=26;c[(c[a>
x3e;2]|0)+8>>2]=6;a=c[a>>2]|0;i=b;return a|0}function ur(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[f>>2]=c[f>>2];b=Fs(c[e>>2]|0)|0;i=d;return b|0}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;f=i;i=i+16|0;k=f+12|0;j=f+8|0;g=f+4|0;h=f;c[k>>2]=a;c[j
x3e;>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=c[k>>2];c[j>>2]=c[j>>2];d
=Hs(c[h>>2]|0,c[g>>2]|0)|0;i=f;return d|0}function wr(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[f>>2]=c[f>>2];Gs(c[e>>2]|0);i=d;return}function xr(a
){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Gs(c[d>>2]|0);i=b;return}function yr(a){a=a|0;var b=0,d=0;b=i
;i=i+16|0;d=b;c[d>>2]=c[a+60>>2];a=zr(Aa(6,d|0)|0)|0;i=b;return a|0}function zr(a){a=a|0;if(a>>>
;0>4294963200){c[(Ar()|0)>>2]=0-a;a=-1}return a|0}function Ar(){var a=0;if(!(c[18388]|0))a=73596;else a=c[(xa()|0
)+64>>2]|0;return a|0}function Br(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+80|0;f=g;c[b+36>>2]=47;if((c[
b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21505,c[f+8>>2]=g+12,Fa(54,f
|0)|0):0)a[b+75>>0]=-1;f=Cr(b,d,e)|0;i=g;return f|0}function Cr(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;q=i;i=i+48|0;n=q+16|0;m=q;e=q+32|0;o=a+28|0;f=c[o>>2]|0;c[e>>2]=f;p=a+20|0;f=(c[p>
;>2]|0)-f|0;c[e+4>>2]=f;c[e+8>>2]=b;c[e+12>>2]=d;k=a+60|0;l=a+44|0;b=2;f=f+d|0;while(1){if(!(
c[18388]|0)){c[n>>2]=c[k>>2];c[n+4>>2]=e;c[n+8>>2]=b;h=zr(Ka(146,n|0)|0)|0}else{Da(45,a|
0);c[m>>2]=c[k>>2];c[m+4>>2]=e;c[m+8>>2]=b;h=zr(Ka(146,m|0)|0)|0;ra(0)}if((f|0)==(h|0)){
f=6;break}if((h|0)<0){f=8;break}f=f-h|0;g=c[e+4>>2]|0;if(h>>>0<=g>>>0)if((b|0)==
2){c[o>>2]=(c[o>>2]|0)+h;j=g;b=2}else j=g;else{j=c[l>>2]|0;c[o>>2]=j;c[p>>2]=j
;j=c[e+12>>2]|0;h=h-g|0;e=e+8|0;b=b+-1|0}c[e>>2]=(c[e>>2]|0)+h;c[e+4>>2]=j-h}if((f|0)==6
){n=c[l>>2]|0;c[a+16>>2]=n+(c[a+48>>2]|0);a=n;c[o>>2]=a;c[p>>2]=a}else if((f|0
)==8){c[a+16>>2]=0;c[o>>2]=0;c[p>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else
d=d-(c[e+4>>2]|0)|0}i=q;return d|0}function Dr(a){a=a|0;if(!(c[a+68>>2]|0))Er(a);return}function Er(a){a=a|
0;return}function Fr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c
[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((zr(Ha(140,g|0)|0)|0)<0){c[e>
;>2]=-1;a=-1}else a=c[e>>2]|0;i=f;return a|0}function Gr(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;m=i;i=i+48|0;h=m+16|0;g=m;f=m+32|0;c[f>>2]=d;j=f+4|0;l=b+48|0;n=c[l>>2]|0;c[j>>2]=e-((n|0)!=0
&1);k=b+44|0;c[f+8>>2]=c[k>>2];c[f+12>>2]=n;if(!(c[18388]|0)){c[h>>2]=c[b+60>
x3e;2];c[h+4>>2]=f;c[h+8>>2]=2;f=zr(Ja(145,h|0)|0)|0}else{Da(46,b|0);c[g>>2]=c[b+60>>2];
c[g+4>>2]=f;c[g+8>>2]=2;f=zr(Ja(145,g|0)|0)|0;ra(0)}if((f|0)>=1){j=c[j>>2]|0;if(f>>
x3e;0>j>>>0){g=c[k>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-j);if(!(c[l>>
;2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else{c[b>>2]=c[b>>2
]|f&48^16;c[b+8>>2]=0;c[b+4>>2]=0}i=m;return f|0}function Hr(a){a=a|0;if(!(c[a+68>>2]|0))Er(a
);return}function Ir(a){a=a|0;var b=0;b=(Jr(a)|0)==0;return (b?a:a|32)|0}function Jr(a){a=a|0;return (a+-65|0)>>>
0<26|0}function Kr(b,c){b=b|0;c=c|0;var d=0,e=0;e=a[b>>0]|0;d=a[c>>0]|0;if(e<<24>>24
==0?1:e<<24>>24!=d<<24>>24)c=e;else{do{b=b+1|0;c=c+1|0;e=a[b>>0]|0;d=a[c>
x3e;0]|0}while(!(e<<24>>24==0?1:e<<24>>24!=d<<24>>24));c=e}return (c
&255)-(d&255)|0}function Lr(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;if(!e)c=0;else{f=a[b>>0]|0;a:do if(!(f<
;<24>>24))f=0;else while(1){e=e+-1|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>
;>24&((e|0)!=0&g<<24>>24!=0)))break a;b=b+1|0;c=c+1|0;f=a[b>>0]|0;if(!(f<<
;24>>24)){f=0;break}}while(0);c=(f&255)-(d[c>>0]|0)|0}return c|0}function Mr(b){b=b|0;var d=0,e=0;d=b+74
|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+44|0;if((c[d>>2]|0)>>>0>(c[e>
x3e;2]|0)>>>0)Oa[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[b+28>>2]=0;c[d>
x3e;2]=0;d=c[b>>2]|0;if(d&20)if(!(d&4))d=-1;else{c[b>>2]=d|32;d=-1}else{d=c[e>>2]|0;c[b+
8>>2]=d;c[b+4>>2]=d;d=0}return d|0}function Nr(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;s=i;i=i+224|0;o=s+120|0;r=s+80|0;q=s;p=s+136|0;f=r;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(
g|0));c[o>>2]=c[e>>2];if((Or(0,d,o,q,r)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)m=_r(b)|0;else
m=0;e=c[b>>2]|0;n=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;e=b+48|0;if(!(c[e>
x3e;2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=p;j=b+28|0;c[j>>2]=p;k=b+20|0;c[k>>2]=p;c[e>
;>2]=80;l=b+16|0;c[l>>2]=p+80;f=Or(b,d,o,q,r)|0;if(h){Oa[c[b+36>>2]&63](b,0,0)|0;f=(c[k>>
;2]|0)==0?-1:f;c[g>>2]=h;c[e>>2]=0;c[l>>2]=0;c[j>>2]=0;c[k>>2]=0}}else f=Or(b,
d,o,q,r)|0;e=c[b>>2]|0;c[b>>2]=e|n;if(m|0)Er(b);e=(e&32|0)==0?f:-1}i=s;return e|0}function Or(e,f,g,j,l
){e=e|0;f=f|0;g=g|0;j=j|0;l=l|0;var m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,
J=0,K=0,L=0,M=0,N=0,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;ia=i;i=i+624
|0;da=ia+24|0;fa=ia+16|0;ea=ia+588|0;aa=ia+576|0;ca=ia;W=ia+536|0;ha=ia+8|0;ga=ia+528|0;M=(e|0)!=0;N=W+40|0;V=N;W=W+39|0;X=ha+4|
0;Y=ea;Z=0-Y|0;$=aa+12|0;aa=aa+11|0;ba=$;O=ba-Y|0;P=-2-Y|0;Q=ba+2|0;R=da+288|0;S=ea+9|0;T=S;U=ea+8|0;m=0;o=0;n=0;y=f;a:while(1){
do if((m|0)>-1)if((o|0)>(2147483647-m|0)){c[(Ar()|0)>>2]=75;m=-1;break}else{m=o+m|0;break}while(0);f=a[y>
;>0]|0;if(!(f<<24>>24)){L=244;break}else o=y;b:while(1){switch(f<<24>>24){case 37:{
f=o;L=9;break b}case 0:{f=o;break b}default:{}}K=o+1|0;f=a[K>>0]|0;o=K}c:do if((L|0)==9)while(1){L=0;if((a[f+1>
x3e;0]|0)!=37)break c;o=o+1|0;f=f+2|0;if((a[f>>0]|0)==37)L=9;else break}while(0);w=o-y|0;if(M?(c[e>>2]&
32|0)==0:0)Pr(y,w,e)|0;if((o|0)!=(y|0)){o=w;y=f;continue}r=f+1|0;o=a[r>>0]|0;p=(o<<24>>24)+-48|0;if
(p>>>0<10){K=(a[f+2>>0]|0)==36;r=K?f+3|0:r;o=a[r>>0]|0;u=K?p:-1;n=K?1:n}else u=-1;f=o<
;<24>>24;d:do if((f&-32|0)==32){p=0;while(1){if(!(1<<f+-32&75913)){s=p;break d}p=1<<
;(o<<24>>24)+-32|p;r=r+1|0;o=a[r>>0]|0;f=o<<24>>24;if((f&-32|0)!=32){s=p;
break}}}else s=0;while(0);do if(o<<24>>24==42){o=r+1|0;f=(a[o>>0]|0)+-48|0;if(f>>>0
<10?(a[r+2>>0]|0)==36:0){c[l+(f<<2)>>2]=10;n=1;r=r+3|0;f=c[j+((a[o>>0]|0)+-48<
x3c;3)>>2]|0}else{if(n|0){m=-1;break a}if(!M){v=s;n=0;r=o;K=0;break}n=(c[g>>2]|0)+(4-1)&~(4-1);f=c[n>
;>2]|0;c[g>>2]=n+4;n=0;r=o}if((f|0)<0){v=s|8192;K=0-f|0}else{v=s;K=f}}else{p=(o<<24>>24)+-
48|0;if(p>>>0<10){f=r;o=0;do{o=(o*10|0)+p|0;f=f+1|0;p=(a[f>>0]|0)+-48|0}while(p>>>0
<10);if((o|0)<0){m=-1;break a}else{v=s;r=f;K=o}}else{v=s;K=0}}while(0);e:do if((a[r>>0]|0)==46){f=r+1|0;o=a[
f>>0]|0;if(o<<24>>24!=42){p=(o<<24>>24)+-48|0;if(p>>>0<10)
o=0;else{s=0;break}while(1){o=(o*10|0)+p|0;f=f+1|0;p=(a[f>>0]|0)+-48|0;if(p>>>0>=10){s=o;break e}}}
f=r+2|0;o=(a[f>>0]|0)+-48|0;if(o>>>0<10?(a[r+3>>0]|0)==36:0){c[l+(o<<2)>
x3e;2]=10;s=c[j+((a[f>>0]|0)+-48<<3)>>2]|0;f=r+4|0;break}if(n|0){m=-1;break a}if(M){J=(c[g>
x3e;2]|0)+(4-1)&~(4-1);s=c[J>>2]|0;c[g>>2]=J+4}else s=0}else{s=-1;f=r}while(0);t=0;while(1){o=(a[f>
;>0]|0)+-65|0;if(o>>>0>57){m=-1;break a}p=f+1|0;o=a[71023+(t*58|0)+o>>0]|0;r=o&255;if((r
+-1|0)>>>0<8){f=p;t=r}else{J=p;break}}if(!(o<<24>>24)){m=-1;break}p=(u|0)>-1;do if(
o<<24>>24==19)if(p){m=-1;break a}else L=52;else{if(p){c[l+(u<<2)>>2]=r;H=j+(u<<
;3)|0;I=c[H+4>>2]|0;L=ca;c[L>>2]=c[H>>2];c[L+4>>2]=I;L=52;break}if(!M){m=0;break a}Rr(ca
,r,g)}while(0);if((L|0)==52?(L=0,!M):0){o=w;y=J;continue}u=a[f>>0]|0;u=(t|0)!=0&(u&15|0)==3?u&-33:u;p=v
&-65537;I=(v&8192|0)==0?v:p;f:do switch(u|0){case 110:switch(t|0){case 0:{c[c[ca>>2]>>2]=m;o=w;y=J
;continue a}case 1:{c[c[ca>>2]>>2]=m;o=w;y=J;continue a}case 2:{o=c[ca>>2]|0;c[o>>2]=m;c
[o+4>>2]=((m|0)<0)<<31>>31;o=w;y=J;continue a}case 3:{b[c[ca>>2]>>1]=m;o=
w;y=J;continue a}case 4:{a[c[ca>>2]>>0]=m;o=w;y=J;continue a}case 6:{c[c[ca>>2]>>2]=m;o=
w;y=J;continue a}case 7:{o=c[ca>>2]|0;c[o>>2]=m;c[o+4>>2]=((m|0)<0)<<31>>
31;o=w;y=J;continue a}default:{o=w;y=J;continue a}}case 112:{t=I|8;s=s>>>0>8?s:8;u=120;L=64;break}case 88:case
120:{t=I;L=64;break}case 111:{p=ca;o=c[p>>2]|0;p=c[p+4>>2]|0;if((o|0)==0&(p|0)==0)f=N;else{f=N;do{f=f+-
1|0;a[f>>0]=o&7|48;o=Os(o|0,p|0,3)|0;p=C}while(!((o|0)==0&(p|0)==0))}if(!(I&8)){o=I;t=0;r=71503;L=77}else
{t=V-f|0;o=I;s=(s|0)>(t|0)?s:t+1|0;t=0;r=71503;L=77}break}case 105:case 100:{o=ca;f=c[o>>2]|0;o=c[o+4>>
2]|0;if((o|0)<0){f=Ls(0,0,f|0,o|0)|0;o=C;p=ca;c[p>>2]=f;c[p+4>>2]=o;p=1;r=71503;L=76;break f}if(!(I&
;2048)){r=I&1;p=r;r=(r|0)==0?71503:71505;L=76}else{p=1;r=71504;L=76}break}case 117:{o=ca;f=c[o>>2]|0;o=c[o+4>
;>2]|0;p=0;r=71503;L=76;break}case 99:{a[W>>0]=c[ca>>2];f=W;u=1;w=0;v=71503;o=N;break}case 109:{o=Tr(c[(
Ar()|0)>>2]|0)|0;L=82;break}case 115:{o=c[ca>>2]|0;o=o|0?o:73405;L=82;break}case 67:{c[ha>>2]=c[ca
>>2];c[X>>2]=0;c[ca>>2]=ha;f=ha;s=-1;L=86;break}case 83:{f=c[ca>>2]|0;if(!s){Vr(e,32,K,0
,I);f=0;L=97}else L=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{q=+h[ca>>3];c[fa>
;>2]=0;h[k>>3]=q;if((c[k+4>>2]|0)>=0)if(!(I&2048)){H=I&1;G=H;H=(H|0)==0?73413:73418}else
{G=1;H=73415}else{q=-q;G=1;H=73412}h[k>>3]=q;F=c[k+4>>2]&2146435072;do if(F>>>0<2146435072
|(F|0)==2146435072&0<0){x=+Yr(q,fa)*2.0;o=x!=0.0;if(o)c[fa>>2]=(c[fa>>2]|0)+-1;D=u|32;if((D|0)==97
){v=u&32;y=(v|0)==0?H:H+9|0;w=G|2;f=12-s|0;do if(!(s>>>0>11|(f|0)==0)){q=8.0;do{f=f+-1|0;q=q*16.0}while
((f|0)!=0);if((a[y>>0]|0)==45){q=-(q+(-x-q));break}else{q=x+q-q;break}}else q=x;while(0);o=c[fa>>2]|0;f=(o|0
)<0?0-o|0:o;f=Sr(f,((f|0)<0)<<31>>31,$)|0;if((f|0)==($|0)){a[aa>>0]=48;f=aa}a[f+-1>
x3e;0]=(o>>31&2)+43;t=f+-2|0;a[t>>0]=u+15;r=(s|0)<1;p=(I&8|0)==0;o=ea;while(1){H=~~q;f=o+1|0;
a[o>>0]=d[71487+H>>0]|v;q=(q-+(H|0))*16.0;do if((f-Y|0)==1){if(p&(r&q==0.0))break;a[f>>0
]=46;f=o+2|0}while(0);if(!(q!=0.0))break;else o=f}p=t;s=(s|0)!=0&(P+f|0)<(s|0)?Q+s-p|0:O-p+f|0;r=s+w|0;Vr(e,32,K,r,I);
if(!(c[e>>2]&32))Pr(y,w,e)|0;Vr(e,48,K,r,I^65536);o=f-Y|0;if(!(c[e>>2]&32))Pr(ea,o,e)|0;f=ba-p|0;Vr
(e,48,s-(o+f)|0,0,0);if(!(c[e>>2]&32))Pr(t,f,e)|0;Vr(e,32,K,r,I^8192);f=(r|0)<(K|0)?K:r;break}f=(s|0)<0
?6:s;if(o){o=(c[fa>>2]|0)+-28|0;c[fa>>2]=o;q=x*268435456.0}else{q=x;o=c[fa>>2]|0}F=(o|0)<0?da
:R;E=F;o=F;do{B=~~q>>>0;c[o>>2]=B;o=o+4|0;q=(q-+(B>>>0))*1.0e9}while(q!=0.0);p=o;o=c[fa
x3e;>2]|0;if((o|0)>0){s=F;while(1){t=(o|0)>29?29:o;r=p+-4|0;do if(r>>>0<s>>>0)
r=s;else{o=0;do{B=Ps(c[r>>2]|0,0,t|0)|0;B=Ms(B|0,C|0,o|0,0)|0;o=C;A=$s(B|0,o|0,1e9,0)|0;c[r>>2]=A;o=_s(B|0,o
|0,1e9,0)|0;r=r+-4|0}while(r>>>0>=s>>>0);if(!o){r=s;break}r=s+-4|0;c[r>>2]=o}while(
0);while(1){if(p>>>0<=r>>>0)break;o=p+-4|0;if(!(c[o>>2]|0))p=o;else break}o=(c[fa
x3e;>2]|0)-t|0;c[fa>>2]=o;if((o|0)>0)s=r;else break}}else r=F;if((o|0)<0){y=((f+25|0)/9|0)+1|0;z=(D|0)==
102;v=r;while(1){w=0-o|0;w=(w|0)>9?9:w;do if(v>>>0<p>>>0){o=(1<<w)+-1|0;s=1e9
x3e;>>w;r=0;t=v;do{B=c[t>>2]|0;c[t>>2]=(B>>>w)+r;r=_(B&o,s)|0;t=t+4|0}while(t
x3e;>>0<p>>>0);o=(c[v>>2]|0)==0?v+4|0:v;if(!r){r=o;break}c[p>>2]=r;r=o;p=p+4|0
}else r=(c[v>>2]|0)==0?v+4|0:v;while(0);o=z?F:r;p=(p-o>>2|0)>(y|0)?o+(y<<2)|0:p;o=(c[fa>
x3e;2]|0)+w|0;c[fa>>2]=o;if((o|0)>=0){z=r;break}else v=r}}else z=r;do if(z>>>0<p>>
x3e;0){o=(E-z>>2)*9|0;s=c[z>>2]|0;if(s>>>0<10)break;else r=10;do{r=r*10|0;o=o+1|0}while(
s>>>0>=r>>>0)}else o=0;while(0);A=(D|0)==103;B=(f|0)!=0;r=f-((D|0)!=102?o:0)+((B&A)<
;<31>>31)|0;if((r|0)<(((p-E>>2)*9|0)+-9|0)){t=r+9216|0;r=F+4+(((t|0)/9|0)+-1024<<2)|0;t=((
t|0)%9|0)+1|0;if((t|0)<9){s=10;do{s=s*10|0;t=t+1|0}while((t|0)!=9)}else s=10;w=c[r>>2]|0;y=(w>>>0)%(
s>>>0)|0;t=(r+4|0)==(p|0);do if(t&(y|0)==0)s=z;else{x=(((w>>>0)/(s>>>0)|0)&
;1|0)==0?9007199254740992.0:9007199254740994.0;v=(s|0)/2|0;if(y>>>0<v>>>0)q=.5;else q=t&(
y|0)==(v|0)?1.0:1.5;do if(G){if((a[H>>0]|0)!=45)break;x=-x;q=-q}while(0);t=w-y|0;c[r>>2]=t;if(!(x+q!=x)){s=z
;break}D=t+s|0;c[r>>2]=D;if(D>>>0>999999999){o=z;while(1){s=r+-4|0;c[r>>2]=0;if(s>
x3e;>0<o>>>0){o=o+-4|0;c[o>>2]=0}D=(c[s>>2]|0)+1|0;c[s>>2]=D;if(D>
x3e;>0>999999999)r=s;else{v=o;r=s;break}}}else v=z;o=(E-v>>2)*9|0;t=c[v>>2]|0;if(t>>>
;0<10){s=v;break}else s=10;do{s=s*10|0;o=o+1|0}while(t>>>0>=s>>>0);s=v}while(0);D=r+4|0;
z=s;p=p>>>0>D>>>0?D:p}w=0-o|0;while(1){if(p>>>0<=z>>>0){y=
0;D=p;break}r=p+-4|0;if(!(c[r>>2]|0))p=r;else{y=1;D=p;break}}do if(A){f=(B&1^1)+f|0;if((f|0)>(o|0)&(o|0
)>-5){u=u+-1|0;f=f+-1-o|0}else{u=u+-2|0;f=f+-1|0}p=I&8;if(p|0)break;do if(y){p=c[D+-4>>2]|0;if(!p){r=9;break
}if(!((p>>>0)%10|0)){s=10;r=0}else{r=0;break}do{s=s*10|0;r=r+1|0}while(!((p>>>0)%(s>>>
;0)|0|0))}else r=9;while(0);p=((D-E>>2)*9|0)+-9|0;if((u|32|0)==102){p=p-r|0;p=(p|0)<0?0:p;f=(f|0)<(p|0)?f:p;
p=0;break}else{p=p+o-r|0;p=(p|0)<0?0:p;f=(f|0)<(p|0)?f:p;p=0;break}}else p=I&8;while(0);v=f|p;s=(v|0)!=0&1;t
=(u|32|0)==102;if(t){o=(o|0)>0?o:0;u=0}else{r=(o|0)<0?w:o;r=Sr(r,((r|0)<0)<<31>>31,$)|0;if((ba
-r|0)<2)do{r=r+-1|0;a[r>>0]=48}while((ba-r|0)<2);a[r+-1>>0]=(o>>31&2)+43;E=r+-2|0;a
[E>>0]=u;o=ba-E|0;u=E}w=G+1+f+s+o|0;Vr(e,32,K,w,I);if(!(c[e>>2]&32))Pr(H,G,e)|0;Vr(e,48,K,w,I^65536);do
if(t){r=z>>>0>F>>>0?F:z;o=r;do{p=Sr(c[o>>2]|0,0,S)|0;do if((o|0)==(r|0)){if((p|0)!=(
S|0))break;a[U>>0]=48;p=U}else{if(p>>>0<=ea>>>0)break;Ns(ea|0,48,p-Y|0)|0;do p=p+-1
|0;while(p>>>0>ea>>>0)}while(0);if(!(c[e>>2]&32))Pr(p,T-p|0,e)|0;o=o+4|0}while
(o>>>0<=F>>>0);do if(v|0){if(c[e>>2]&32|0)break;Pr(73447,1,e)|0}while(0);if((f
|0)>0&o>>>0<D>>>0){p=o;while(1){o=Sr(c[p>>2]|0,0,S)|0;if(o>>>
;0>ea>>>0){Ns(ea|0,48,o-Y|0)|0;do o=o+-1|0;while(o>>>0>ea>>>0)}if(!(c[e
x3e;>2]&32))Pr(o,(f|0)>9?9:f,e)|0;p=p+4|0;o=f+-9|0;if(!((f|0)>9&p>>>0<D>>
x3e;0)){f=o;break}else f=o}}Vr(e,48,f+9|0,9,0)}else{t=y?D:z+4|0;if((f|0)>-1){s=(p|0)==0;r=z;do{o=Sr(c[r>>2]|0,0,S
)|0;if((o|0)==(S|0)){a[U>>0]=48;o=U}do if((r|0)==(z|0)){p=o+1|0;if(!(c[e>>2]&32))Pr(o,1,e)|0;if(s&(
f|0)<1){o=p;break}if(c[e>>2]&32|0){o=p;break}Pr(73447,1,e)|0;o=p}else{if(o>>>0<=ea>
x3e;>0)break;Ns(ea|0,48,o+Z|0)|0;do o=o+-1|0;while(o>>>0>ea>>>0)}while(0);p=T-o|0;if(!(c
[e>>2]&32))Pr(o,(f|0)>(p|0)?p:f,e)|0;f=f-p|0;r=r+4|0}while(r>>>0<t>>>0&
;(f|0)>-1)}Vr(e,48,f+18|0,18,0);if(c[e>>2]&32|0)break;Pr(u,ba-u|0,e)|0}while(0);Vr(e,32,K,w,I^8192);f=(w|0)
x3c;(K|0)?K:w}else{t=(u&32|0)!=0;s=q!=q|0.0!=0.0;o=s?0:G;r=o+3|0;Vr(e,32,K,r,p);f=c[e>>2]|0;if(!(f&32)){Pr(H
,o,e)|0;f=c[e>>2]|0}if(!(f&32))Pr(s?(t?73439:73443):t?73431:73435,3,e)|0;Vr(e,32,K,r,I^8192);f=(r|0)<(K|0)?K
:r}while(0);o=f;y=J;continue a}default:{f=y;p=I;u=s;w=0;v=71503;o=N}}while(0);g:do if((L|0)==64){p=ca;o=c[p>>2]|0;p=c[
p+4>>2]|0;r=u&32;if(!((o|0)==0&(p|0)==0)){f=N;do{f=f+-1|0;a[f>>0]=d[71487+(o&15)>>0
]|r;o=Os(o|0,p|0,4)|0;p=C}while(!((o|0)==0&(p|0)==0));L=ca;if((t&8|0)==0|(c[L>>2]|0)==0&(c[L+4>>
;2]|0)==0){o=t;t=0;r=71503;L=77}else{o=t;t=2;r=71503+(u>>4)|0;L=77}}else{f=N;o=t;t=0;r=71503;L=77}}else if((L|0)==76){
f=Sr(f,o,N)|0;o=I;t=p;L=77}else if((L|0)==82){L=0;I=Ur(o,0,s)|0;H=(I|0)==0;f=o;u=H?s:I-o|0;w=0;v=71503;o=H?o+s|0:I}else if((L|0)==
86){L=0;p=0;o=0;t=f;while(1){r=c[t>>2]|0;if(!r)break;o=Wr(ga,r)|0;if((o|0)<0|o>>>0>(s-p|0)>
;>>0)break;p=o+p|0;if(s>>>0>p>>>0)t=t+4|0;else break}if((o|0)<0){m=-1;break a}
Vr(e,32,K,p,I);if(!p){f=0;L=97}else{r=0;while(1){o=c[f>>2]|0;if(!o){f=p;L=97;break g}o=Wr(ga,o)|0;r=o+r|0;if((r|0)>
;(p|0)){f=p;L=97;break g}if(!(c[e>>2]&32))Pr(ga,o,e)|0;if(r>>>0>=p>>>0){f=p;L=
97;break}else f=f+4|0}}}while(0);if((L|0)==97){L=0;Vr(e,32,K,f,I^8192);o=(K|0)>(f|0)?K:f;y=J;continue}if((L|0)==77){L=0;p=(
s|0)>-1?o&-65537:o;o=ca;o=(c[o>>2]|0)!=0|(c[o+4>>2]|0)!=0;if((s|0)!=0|o){u=(o&1^1)+(V-f)|0;u=(
s|0)>(u|0)?s:u;w=t;v=r;o=N}else{f=N;u=0;w=t;v=r;o=N}}t=o-f|0;r=(u|0)<(t|0)?t:u;s=w+r|0;o=(K|0)<(s|0)?s:K;Vr(e,32,
o,s,p);if(!(c[e>>2]&32))Pr(v,w,e)|0;Vr(e,48,o,s,p^65536);Vr(e,48,r,t,0);if(!(c[e>>2]&32))Pr(f,t,e)|
0;Vr(e,32,o,s,p^8192);y=J}h:do if((L|0)==244)if(!e)if(n){m=1;while(1){n=c[l+(m<<2)>>2]|0;if(!n)break;Rr(j+(m
<<3)|0,n,g);m=m+1|0;if((m|0)>=10){m=1;break h}}if((m|0)<10)while(1){if(c[l+(m<<2)>>2]|0){
m=-1;break h}m=m+1|0;if((m|0)>=10){m=1;break}}else m=1}else m=0;while(0);i=ia;return m|0}function Pr(b,d,e){b=b|0;d=d|0;e=e
|0;var f=0,g=0,h=0,i=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(Qr(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((
h|0)==5){i=e+20|0;f=c[i>>2]|0;h=f;if((g-f|0)>>>0<d>>>0){f=Oa[c[e+36>>2]
x26;63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){f=d;while(1){if(!f){g=h;f=0;break b}g=f+-1|0;if((a[b+g>>
;0]|0)==10)break;else f=g}if((Oa[c[e+36>>2]&63](e,b,f)|0)>>>0<f>>>0)break a;d=
d-f|0;b=b+f|0;g=c[i>>2]|0}else{g=h;f=0}while(0);Ss(g|0,b|0,d|0)|0;c[i>>2]=(c[i>>2]|0)+d;f=f+d|0}while
(0);return f|0}function Qr(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if
(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;d=c[b+44>>2]|0;c[b+28>>2]=d;c[b+20>>2]=d
;c[b+16>>2]=d+(c[b+48>>2]|0);d=0}else{c[b>>2]=d|32;d=-1}return d|0}function Rr(a,b,d){a=a|0;b=b|0;
d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b
=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e
x3e;>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break
a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4
x3e;>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d
x3e;>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f
x3e;>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((
e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>
;>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1
);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>
;2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;
c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&
;~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1
);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function Sr(b,
c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295)while(1){e=$s(b
|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e|48;e=_s(b|0,c|0,10,0)|0;if(c>>>0>9|(c|0)==9&b>>
x3e;0>4294967295){b=e;c=C}else{b=e;break}}if(b)while(1){d=d+-1|0;a[d>>0]=(b>>>0)%10|0|48;if(b>
;>>0<10)break;else b=(b>>>0)/10|0}return d|0}function Tr(b){b=b|0;var c=0,e=0;c=0;while(1){if((d[71513
+c>>0]|0)==(b|0)){e=2;break}c=c+1|0;if((c|0)==87){c=87;b=71601;e=5;break}}if((e|0)==2)if(!c)b=71601;else{b=71601;e=5}if
((e|0)==5)while(1){e=b;while(1){b=e+1|0;if(!(a[e>>0]|0))break;else e=b}c=c+-1|0;if(!c)break;else e=5}return b|0}function
Ur(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if
((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5
;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24
>>24){f=_(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144
)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e
){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(
0);return (e|0?b:0)|0}function Vr(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;j=i;i=i+256|0;h=j;do if((d|0)>(e
|0)&(f&73728|0)==0){f=d-e|0;Ns(h|0,b|0,(f>>>0>256?256:f)|0)|0;b=c[a>>2]|0;g=(b&32|0
)==0;if(f>>>0>255){e=d-e|0;do{if(g){Pr(h,256,a)|0;b=c[a>>2]|0}f=f+-256|0;g=(b&32|0)==0}while(
f>>>0>255);if(g)f=e&255;else break}else if(!g)break;Pr(h,f,a)|0}while(0);i=j;return}function Wr(a,b){a=
a|0;b=b|0;if(!a)a=0;else a=Xr(a,b,0)|0;return a|0}function Xr(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128
){a[b>>0]=d;b=1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0
]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224
;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>
;0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>
x3e;0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(Ar()|0)>>2]=84;b=-1;break}}
else b=1;while(0);return b|0}function Yr(a,b){a=+a;b=b|0;return +(+Zr(a,b))}function Zr(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[k>
;>3]=a;d=c[k>>2]|0;e=c[k+4>>2]|0;f=Os(d|0,e|0,52)|0;f=f&2047;switch(f|0){case 0:{if(a!=0.0){a=+Zr(
a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>
x3e;2]=f+-1022;c[k>>2]=d;c[k+4>>2]=e&-2146435073|1071644672;a=+h[k>>3]}}return +a}function _r
(a){a=a|0;return 0}function $r(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)d=0;else{f=d;e=b;while(1){b=a[e>>0]|0;d
=a[c>>0]|0;if(b<<24>>24!=d<<24>>24)break;f=f+-1|0;if(!f){d=0;break a}else{e=e+
1|0;c=c+1|0}}d=(b&255)-(d&255)|0}while(0);return d|0}function as(a,b,c){a=a|0;b=b|0;c=c|0;bs(a,b,c)|0;return a|0}function
bs(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;do if(!((g^b)&3)){f=(e|0)!=0;a:do if(f&(g&3|0)!=0)while(1){g=a[d
>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0;if(!(f&
;(d&3|0)!=0)){h=5;break}}else h=5;while(0);if((h|0)==5)if(!f){e=0;break}if(a[d>>0]|0){b:do if(e>>>
0>3)do{f=c[d>>2]|0;if((f&-2139062144^-2139062144)&f+-16843009|0)break b;c[b>>2]=f;e=e+-4|0;d=
d+4|0;b=b+4|0}while(e>>>0>3);while(0);h=11}}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a
[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|
0}while(0);Ns(b|0,0,e|0)|0;return b|0}function cs(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=b;b=f;while(1){if(!(
a[d>>0]|0))break a;d=d+1|0;b=d;if(!(b&3)){b=d;e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if
(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;
while((a[b>>0]|0)!=0)}return b-f|0}function ds(a,b){a=a|0;b=b|0;es(a,b)|0;return a|0}function es(b,d){b=b|0;d=d|0;var
e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24
))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){
f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break
;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+
1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function fs(b,d){b=b|0;
d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+32|0;f=g+16|0;e=g;if(Ur(73449,a[d>>0]|0,4)|0){h=gs(d)|0|32768;c[e>>2]=b;c[
e+4>>2]=h;c[e+8>>2]=438;e=zr(Ca(5,e|0)|0)|0;if((e|0)>=0){b=js(e,d)|0;if(!b){c[f>>2]=e;Aa(6,f|
0)|0;b=0}}else b=0}else{c[(Ar()|0)>>2]=22;b=0}i=g;return b|0}function gs(b){b=b|0;var c=0,d=0,e=0;d=(hs(b,43)|0)==0;c=
a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(hs(b,120)|0)==0;d=e?d:d|128;b=(hs(b,101)|0)==0;b=b?d:d|524288
;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==
97?b|1024:b)|0}function hs(b,c){b=b|0;c=c|0;b=is(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?
b:0)|0}function is(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(cs(b)|0)|0;else{if(b&3){e=d&255;do{g=
a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b
=b+1|0}while((b&3|0)!=0)}f=_(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009
))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144
^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g
x3c;<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function js(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;o=i;i=i+112|0;n=o+40|0;l=o+24|0;k=o+16|0;g=o;m=o+52|0;f=a[d>>0]|0;if(Ur(73449
,f<<24>>24,4)|0){e=Fs(1144)|0;if(!e)e=0;else{h=e;j=h+112|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(
j|0));if(!(hs(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(hs(d,101)|0){c[g>>2]=b;c[g+4>
x3e;2]=2;c[g+8>>2]=1;sa(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[k>>2]=b;c[k
+4>>2]=3;f=sa(221,k|0)|0;if(!(f&1024)){c[l>>2]=b;c[l+4>>2]=4;c[l+8>>2]=f|1024;sa(221
,l|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+120
;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21505,c[n+8
>>2]=m,(Fa(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=48;c[e+36>>2]=47;c[e+40>>2]=
32;c[e+12>>2]=33;if(!(c[18389]|0))c[e+76>>2]=-1;ua(73580);f=c[18394]|0;c[e+56>>2]=f;if(f|0)c[f+52
x3e;>2]=e;c[18394]=e;Ga(73580)}}else{c[(Ar()|0)>>2]=22;e=0}i=o;return e|0}function ks(a){a=a|0;var b=0,d=0,e=0;e=(
c[a>>2]&1|0)!=0;if(!e){ua(73580);d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];
b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[18394]|0)==(a|0))c[18394]=b;Ga(73580)}b=ls(a)|0;b=Ta[c[a+12>>
;2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)Gs(d);if(!e)Gs(a);return b|0}function ls(a){a=a|0;var b=0,d=0;do if(a){if((c
[a+76>>2]|0)<=-1){b=ms(a)|0;break}d=(_r(a)|0)==0;b=ms(a)|0;if(!d)Er(a)}else{if(!(c[1356]|0))b=0;else b=ls(c[1356]|
0)|0;ua(73580);a=c[18394]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=_r(a)|0;else d=0;if((c[a+20>>2]|0)>>
;>0>(c[a+28>>2]|0)>>>0)b=ms(a)|0|b;if(d|0)Er(a);a=c[a+56>>2]|0}while((a|0)!=0);Ga(73580
)}while(0);return b|0}function ms(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;g=a+28|0;if((c[b>>2]|0)>>>
;0>(c[g>>2]|0)>>>0?(Oa[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)b=-1;else
{h=a+4|0;d=c[h>>2]|0;e=a+8|0;f=c[e>>2]|0;if(d>>>0<f>>>0)Oa[c[a+40>
x3e;2]&63](a,d-f|0,1)|0;c[a+16>>2]=0;c[g>>2]=0;c[b>>2]=0;c[e>>2]=0;c[h>>2
]=0;b=0}return b|0}function ns(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>
x3e;0>(c[a+28>>2]|0)>>>0?2:1;b=Oa[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a
+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function os(a){a=a|0;
var b=0;if((c[a+76>>2]|0)>-1){b=(_r(a)|0)==0;a=ns(a)|0}else a=ns(a)|0;return a|0}function ps(a){a=a|0;return os(a
)|0}function qs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(_r(a)|0)==0;b=rs(a,b,d)|0;if(!e)Er(a)}else
b=rs(a,b,d)|0;return b|0}function rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>
x3e;2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Oa[c[a+
36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>
;2]=0;if((Oa[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>
;2]=c[a>>2]&-17;b=0}}return b|0}function ss(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;b=Nr
(c[1327]|0,a,e)|0;i=d;return b|0}function ts(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;j=_(e,d)|0;if((c[f+76
x3e;>2]|0)>-1)k=_r(f)|0;else k=0;g=f+74|0;i=a[g>>0]|0;a[g>>0]=i+255|i;g=f+4|0;i=c[g>>2]|
0;h=(c[f+8>>2]|0)-i|0;if((h|0)>0){h=h>>>0<j>>>0?h:j;Ss(b|0,i|0,h|0)|0;c[g>
;>2]=i+h;b=b+h|0;g=j-h|0}else g=j;a:do if(!g)l=13;else{i=f+32|0;h=g;while(1){if(Mr(f)|0){e=h;break}g=Oa[c[i>>2]
x26;63](f,b,h)|0;if((g+1|0)>>>0<2){e=h;break}if((h|0)==(g|0)){l=13;break a}else{b=b+g|0;h=h-g|0}}if(k|0)Er(f
);e=((j-e|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(k)Er(f);return e|0}function us(a,b,c){a=a|0;b
=b|0;c=c|0;return qs(a,b,c)|0}function vs(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;w=i;i=i+1056|0;u=w+1024|0;v=w;k=a[e>>0]|0;do if(k<<24>>24){t=hs(b,k<<24>>24
)|0;if(t){j=a[e+1>>0]|0;if(j<<24>>24){f=t+1|0;m=a[f>>0]|0;if(m<<24>>
24){h=a[e+2>>0]|0;if(!(h<<24>>24)){j=j&255|(k&255)<<8;b=m;g=d[t>>0]
x3c;<8|m&255;while(1){g=g&65535;if((g|0)==(j|0))break;f=f+1|0;h=a[f>>0]|0;if(!(h<<24>>
;24)){b=0;break}else{b=h;g=h&255|g<<8}}b=b<<24>>24?f+-1|0:0;break}f=t+2|0;b=a[f>>0]|
0;if(b<<24>>24){g=a[e+3>>0]|0;if(!(g<<24>>24)){h=(j&255)<<16|(k
&255)<<24|(h&255)<<8;g=(b&255)<<8|(m&255)<<16|d[t>>0]<
;<24;if((g|0)!=(h|0))do{f=f+1|0;b=a[f>>0]|0;g=(b&255|g)<<8}while(!(b<<24>>24==
0|(g|0)==(h|0)));b=b<<24>>24?f+-2|0:0;break}f=t+3|0;l=a[f>>0]|0;if(l<<24>>24){
if(!(a[e+4>>0]|0)){h=(j&255)<<16|(k&255)<<24|(h&255)<<8|g&255;b=(b
x26;255)<<8|(m&255)<<16|l&255|d[t>>0]<<24;if((b|0)==(h|0))b=l;else{g=b;do{f=f+
1|0;b=a[f>>0]|0;g=b&255|g<<8}while(!(b<<24>>24==0|(g|0)==(h|0)))}b=b<<24
x3e;>24?f+-3|0:0;break};c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[u+12>>2]=0;c[u+16>
x3e;2]=0;c[u+20>>2]=0;c[u+24>>2]=0;c[u+28>>2]=0;b=k;g=0;while(1){if(!(a[t+g>>0]|0)){b=0;
break}f=u+(((b&255)>>>5&255)<<2)|0;c[f>>2]=c[f>>2]|1<<(b&31
);f=g+1|0;c[v+((b&255)<<2)>>2]=f;b=a[e+f>>0]|0;if(!(b<<24>>24)){n=23;break
}else g=f}a:do if((n|0)==23){b:do if(f>>>0>1){h=1;n=-1;b=0;c:while(1){m=1;while(1){d:while(1){j=1;while(1){k
=a[e+(j+n)>>0]|0;l=a[e+h>>0]|0;if(k<<24>>24!=l<<24>>24){m=h;j=k;h=l;
break d}if((j|0)==(m|0))break;j=j+1|0;h=j+b|0;if(h>>>0>=f>>>0){b=n;p=m;break c}}b=b+m|0;h=b+1
|0;if(h>>>0>=f>>>0){b=n;p=m;break c}}k=m-n|0;if((j&255)<=(h&255))break;b=m+1|0
;if(b>>>0<f>>>0){h=b;b=m;m=k}else{b=n;p=k;break c}}h=b+2|0;if(h>>>0>=f>
;>>0){p=1;break}else{n=b;b=b+1|0}}j=1;k=-1;h=0;while(1){l=h;h=1;while(1){o=l;e:while(1){l=1;while(1){n=a[e+(l+k)>
x3e;0]|0;m=a[e+j>>0]|0;if(n<<24>>24!=m<<24>>24){l=j;j=o;break e}if((l|0)==(h|0
))break;l=l+1|0;j=l+o|0;if(j>>>0>=f>>>0){j=p;break b}}o=o+h|0;j=o+1|0;if(j>>>0
>=f>>>0){j=p;break b}}h=l-k|0;if((n&255)>=(m&255)){h=j;break}j=l+1|0;if(j>>>0
x3e;=f>>>0){j=p;break b}}j=h+2|0;if(j>>>0>=f>>>0){k=h;j=p;h=1;break}else{k=h;h
=h+1|0}}}else{b=-1;k=-1;j=1;h=1}while(0);r=(k+1|0)>>>0>(b+1|0)>>>0;h=r?h:j;r=r?k:b;q=r+1|0;if
(!($r(e,e+h|0,q)|0))s=f-h|0;else{h=f-r+-1|0;s=0;h=(r>>>0>h>>>0?r:h)+1|0}n=f|63;o=(s|0)!=0;p=f
-h|0;b=t;m=0;l=t;f:while(1){j=b;do if((l-j|0)>>>0<f>>>0){k=Ur(l,0,n)|0;if(k)if((k-j|0)>
x3e;>0<f>>>0){b=0;break a}else break;else{k=l+n|0;break}}else k=l;while(0);j=a[b+g>>0]|0;if(!(
1<<(j&31)&c[u+(((j&255)>>>5&255)<<2)>>2])){b=b+f|0;m=0;l=k;continue
}t=c[v+((j&255)<<2)>>2]|0;j=f-t|0;if((f|0)!=(t|0)){b=b+(o&(m|0)!=0&j>>>0<
h>>>0?p:j)|0;m=0;l=k;continue}j=q>>>0>m>>>0?q:m;l=a[e+j>>0]|0;g:do if
(!(l<<24>>24))j=q;else{while(1){if(l<<24>>24!=(a[b+j>>0]|0))break;j=j+1|0;l=a[
e+j>>0]|0;if(!(l<<24>>24)){j=q;break g}}b=b+(j-r)|0;m=0;l=k;continue f}while(0);do{if(j>>
;>0<=m>>>0)break a;j=j+-1|0}while((a[e+j>>0]|0)==(a[b+j>>0]|0));b=b+h|0;m=s;l=k}}while
(0)}else b=0}else b=0}else b=0}else b=t}else b=0}while(0);i=w;return b|0}function ws(a){a=a|0;var b=0,c=0;c=(cs(a)|0)+1|0;b=Fs(c
)|0;if(!b)b=0;else Ss(b|0,a|0,c|0)|0;return b|0}function xs(a,b){a=a|0;b=b|0;return ys(a,b,(cs(a)|0)+1|0)|0}function ys(b,c,d){b
=b|0;c=c|0;d=d|0;var e=0;e=c&255;do{if(!d){c=0;break}d=d+-1|0;c=b+d|0}while((a[c>>0]|0)!=e<<24>>
;24);return c|0}function zs(a,b){a=a|0;b=b|0;ds(a+(cs(a)|0)|0,b)|0;return a|0}function As(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;e=a[b
>>0]|0;a:do if(!(e<<24>>24))b=0;else{g=e;f=e&255;while(1){e=a[c>>0]|0;if(!(e<
x3c;24>>24)){b=g;break a}if(g<<24>>24!=e<<24>>24?(g=Ir(f)|0,(g|0)!=(Ir(d[c>
;>0]|0)|0)):0)break;b=b+1|0;c=c+1|0;e=a[b>>0]|0;if(!(e<<24>>24)){b=0;break a}else{g=e;f=e&
;255}}b=a[b>>0]|0}while(0);g=Ir(b&255)|0;return g-(Ir(d[c>>0]|0)|0)|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,r=0;r=i;i=i+208|0;o=r+8|0;p=r;f=_(d,b)|0;n=p;c[n>>2]=1;c[n
+4>>2]=0;if(f|0){n=0-d|0;c[o+4>>2]=d;c[o>>2]=d;g=d;b=d;h=2;while(1){b=b+d+g|0;c[o+(h<<2)
x3e;>2]=b;if(b>>>0<f>>>0){m=g;g=b;h=h+1|0;b=m}else break}h=a+f+n|0;m=p+4|0;if(h>>
;>0>a>>>0){j=h;g=1;f=1;while(1){do if((g&3|0)==3){Cs(a,d,e,f,o);l=c[m>>2]|0;b=l<<
;30|(c[p>>2]|0)>>>2;c[p>>2]=b;c[m>>2]=l>>>2;f=f+2|0}else{b=f+-1|0;if
((c[o+(b<<2)>>2]|0)>>>0<(j-a|0)>>>0)Cs(a,d,e,f,o);else Es(a,d,e,p,f,0,o);
if((f|0)==1){b=c[p>>2]|0;c[m>>2]=b>>>31|c[m>>2]<<1;b=b<<1;c[p
x3e;>2]=b;f=0;break}if(b>>>0>31){g=c[p>>2]|0;c[m>>2]=g;c[p>>2]=0;b=f+-33|
0;f=g;g=0}else{f=c[m>>2]|0;g=c[p>>2]|0}c[m>>2]=g>>>(32-b|0)|f<<b;b=g<
;<b;c[p>>2]=b;f=1}while(0);g=b|1;c[p>>2]=g;b=a+d|0;if(b>>>0>=h>>>0){
a=f;break}else a=b}}else{b=a;a=1}Es(b,d,e,p,a,0,o);l=p+4|0;g=c[p>>2]|0;h=c[l>>2]|0;f=(h|0)==0;if(!((a|0)==1
x26;(g|0)==1&f)){k=h;while(1){if((a|0)<2){h=g+-1|0;do if(h){if(!(h&1)){f=0;do{f=f+1|0;h=h>>>1}while
(!(h&1|0))}else{if(f)f=32;else{if(!(k&1)){h=k;f=0}else{j=0;h=k;f=0;break}do{f=f+1|0;h=h>>>1}while(!(h
x26;1|0))}f=f+32|0}if(f>>>0>31)q=28;else{j=f;h=k}}else{f=32;q=28}while(0);if((q|0)==28){q=0;c[p>>2
]=k;c[m>>2]=0;j=f+-32|0;g=k;h=0}c[p>>2]=h<<32-j|g>>>j;c[m>>2]=h>>
;>j;b=b+n|0;h=f+a|0}else{j=g>>>30;h=a+-2|0;c[p>>2]=(g<<1&2147483646|j<<31
)^3;c[m>>2]=(j|k<<2)>>>1;Es(b+(0-(c[o+(h<<2)>>2]|0))+n|0,d,e,p,a+-1|0,1,o
);k=c[p>>2]|0;c[m>>2]=k>>>31|c[m>>2]<<1;c[p>>2]=k<<1|
1;b=b+n|0;Es(b,d,e,p,h,1,o)}g=c[p>>2]|0;k=c[l>>2]|0;f=(k|0)==0;if((h|0)==1&(g|0)==1&f)break;else a
=h}}}i=r;return}function Cs(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;p=i;i=i+240|0;o=p;c
[o>>2]=a;a:do if((e|0)>1){n=0-b|0;g=e;h=a;k=a;l=1;while(1){a=h+n|0;m=g+-2|0;j=a+(0-(c[f+(m<<2)>>
;2]|0))|0;if((Ya[d&127](k,j)|0)>-1?(Ya[d&127](k,a)|0)>-1:0){e=l;break a}e=l+1|0;h=o+(l<<2)|0;if((Ya
[d&127](j,a)|0)>-1){c[h>>2]=j;a=j;g=g+-1|0}else{c[h>>2]=a;g=m}if((g|0)<=1)break a;h=a;k=c[o
x3e;>2]|0;l=e}}else e=1;while(0);Ds(b,o,e);i=p;return}function Ds(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+
256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0>256?256:
a;Ss(e|0,c[b>>2]|0,f|0)|0;e=0;do{j=b+(e<<2)|0;e=e+1|0;Ss(c[j>>2]|0,c[b+(e<<2)>>
;2]|0,f|0)|0;c[j>>2]=(c[j>>2]|0)+f}while((e|0)!=(d|0));if((a|0)==(f|0))break a;a=a-f|0;e=c[g>>2]|0
}while(0);i=h;return}function Es(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;r=i;i=i+240|0;p=r;l=c[e>>2]|0;k=c[e+4>>2]|0;c[p>>2]=a;o=0-b|0;a:do if((k|0)!=0|(l|0)!=1?(j=a+(0-(
c[h+(f<<2)>>2]|0))|0,(Ya[d&127](j,a)|0)>=1):0){g=(g|0)==0;m=1;n=l;while(1){if(g&(f|0)>1){
e=a+o|0;g=c[h+(f+-2<<2)>>2]|0;if((Ya[d&127](e,j)|0)>-1){g=f;e=m;q=19;break a}if((Ya[d&127](e+(
0-g)|0,j)|0)>-1){g=f;e=m;q=19;break a}}e=m+1|0;c[p+(m<<2)>>2]=j;g=n+-1|0;do if(g){if(!(g&1)){a=0;do
{a=a+1|0;g=g>>>1}while(!(g&1|0))}else{if(!k)g=32;else{if(!(k&1)){a=k;g=0}else{l=0;g=n;a=0;break}do{g=g+
1|0;a=a>>>1}while(!(a&1|0))}a=g+32|0}if(a>>>0>31)q=15;else{l=a;g=n}}else{a=32;q=15}while
(0);if((q|0)==15){q=0;l=a+-32|0;g=k;k=0}n=k<<32-l|g>>>l;k=k>>>l;g=a+f|0;if(!((k|0)!=0|(n
|0)!=1)){a=j;q=19;break a}a=j+(0-(c[h+(g<<2)>>2]|0))|0;if((Ya[d&127](a,c[p>>2]|0)|0)<1){
a=j;f=g;g=0;q=18;break}else{l=j;f=g;g=1;j=a;m=e;a=l}}}else{e=1;q=18}while(0);if((q|0)==18?(g|0)==0:0){g=f;q=19}if((q|0)==19){Ds(
b,p,e);Cs(a,b,d,g,h)}i=r;return}function Fs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,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;do if(a>>>0<245){o=a>>>
;0<11?16:a+11&-8;a=o>>>3;j=c[18400]|0;b=j>>>a;if(b&3|0){b=(b&1^1)+a|0;d=73640+(
b<<1<<2)|0;e=d+8|0;f=c[e>>2]|0;g=f+8|0;h=c[g>>2]|0;do if((d|0)!=(h|0)){if(h>>
x3e;0<(c[18404]|0)>>>0)ya();a=h+12|0;if((c[a>>2]|0)==(f|0)){c[a>>2]=d;c[e>>2]=
h;break}else ya()}else c[18400]=j&~(1<<b);while(0);L=b<<3;c[f+4>>2]=L|3;L=f+L+4|0;c[L>
x3e;2]=c[L>>2]|1;L=g;return L|0}h=c[18402]|0;if(o>>>0>h>>>0){if(b|0){d=2<<
;a;d=b<<a&(d|0-d);d=(d&0-d)+-1|0;i=d>>>12&16;d=d>>>i;f=d>>>
;5&8;d=d>>>f;g=d>>>2&4;d=d>>>g;e=d>>>1&2;d=d>>
;>e;b=d>>>1&1;b=(f|i|g|e|b)+(d>>>b)|0;d=73640+(b<<1<<2)|0;e=d+8|0;g=
c[e>>2]|0;i=g+8|0;f=c[i>>2]|0;do if((d|0)!=(f|0)){if(f>>>0<(c[18404]|0)>>>
;0)ya();a=f+12|0;if((c[a>>2]|0)==(g|0)){c[a>>2]=d;c[e>>2]=f;k=c[18402]|0;break}else ya()}else{c[18400
]=j&~(1<<b);k=h}while(0);h=(b<<3)-o|0;c[g+4>>2]=o|3;e=g+o|0;c[e+4>>2]=h|1;c[e+h>
;>2]=h;if(k|0){f=c[18405]|0;b=k>>>3;d=73640+(b<<1<<2)|0;a=c[18400]|0;b=1<<b;if
(a&b){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{l=a;m=b}}else{c[
18400]=a|b;l=d+8|0;m=d}c[l>>2]=f;c[m+12>>2]=f;c[f+8>>2]=m;c[f+12>>2]=d}c[18402]=h;c[18405
]=e;L=i;return L|0}a=c[18401]|0;if(a){d=(a&0-a)+-1|0;K=d>>>12&16;d=d>>>K;J=d>>
x3e;5&8;d=d>>>J;L=d>>>2&4;d=d>>>L;b=d>>>1&2;d=d>
x3e;>b;e=d>>>1&1;e=c[73904+((J|K|L|b|e)+(d>>>e)<<2)>>2]|0;d=(c[e+4
x3e;>2]&-8)-o|0;b=e;while(1){a=c[b+16>>2]|0;if(!a){a=c[b+20>>2]|0;if(!a){j=e;break}}b=(c[a+4>
x3e;2]&-8)-o|0;L=b>>>0<d>>>0;d=L?b:d;b=a;e=L?a:e}g=c[18404]|0;if(j>>>0<
;g>>>0)ya();i=j+o|0;if(j>>>0>=i>>>0)ya();h=c[j+24>>2]|0;e=c[j+12>
;>2]|0;do if((e|0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if(!a){b=j+16|0;a=c[b>>2]|0;if(!a){n=0;break}}while(1){
e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;b=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;b=e}}if(b>>
;>0<g>>>0)ya();else{c[b>>2]=0;n=a;break}}else{f=c[j+8>>2]|0;if(f>>>0
<g>>>0)ya();a=f+12|0;if((c[a>>2]|0)!=(j|0))ya();b=e+8|0;if((c[b>>2]|0)==(j|0)){c[a>
x3e;2]=e;c[b>>2]=f;n=e;break}else ya()}while(0);do if(h|0){a=c[j+28>>2]|0;b=73904+(a<<2)|0;if((j|0
)==(c[b>>2]|0)){c[b>>2]=n;if(!n){c[18401]=c[18401]&~(1<<a);break}}else{if(h>>>
0<(c[18404]|0)>>>0)ya();a=h+16|0;if((c[a>>2]|0)==(j|0))c[a>>2]=n;else c[h+20>>
2]=n;if(!n)break}b=c[18404]|0;if(n>>>0<b>>>0)ya();c[n+24>>2]=h;a=c[j+16>>
2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else{c[n+16>>2]=a;c[a+24>>2]=n;break}while
(0);a=c[j+20>>2]|0;if(a|0)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[n+20>>2]=
a;c[a+24>>2]=n;break}}while(0);if(d>>>0<16){L=d+o|0;c[j+4>>2]=L|3;L=j+L+4|0;c[L>>
;2]=c[L>>2]|1}else{c[j+4>>2]=o|3;c[i+4>>2]=d|1;c[i+d>>2]=d;a=c[18402]|0;if(a|0){f=c[18405
]|0;b=a>>>3;e=73640+(b<<1<<2)|0;a=c[18400]|0;b=1<<b;if(a&b){a=e+8|0;b=c[a>
;>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{p=a;q=b}}else{c[18400]=a|b;p=e+8|0;q=e}c[p>
;>2]=f;c[q+12>>2]=f;c[f+8>>2]=q;c[f+12>>2]=e}c[18402]=d;c[18405]=i}L=j+8|0;return L|0}}}else
if(a>>>0<=4294967231){a=a+11|0;o=a&-8;j=c[18401]|0;if(j){d=0-o|0;a=a>>>8;if(a)if(o>
x3e;>0>16777215)i=31;else{q=(a+1048320|0)>>>16&8;E=a<<q;p=(E+520192|0)>>>
16&4;E=E<<p;i=(E+245760|0)>>>16&2;i=14-(p|q|i)+(E<<i>>>15)|0;i=o>
;>>(i+7|0)&1|i<<1}else i=0;b=c[73904+(i<<2)>>2]|0;a:do if(!b){a=0;b=0;E=86}else{f=d
;a=0;g=o<<((i|0)==31?0:25-(i>>>1)|0);h=b;b=0;while(1){e=c[h+4>>2]&-8;d=e-o|0;if(d>
x3e;>0<f>>>0)if((e|0)==(o|0)){a=h;b=h;E=90;break a}else b=h;else d=f;e=c[h+20>>2]|0;h=c[h+16+(
g>>>31<<2)>>2]|0;a=(e|0)==0|(e|0)==(h|0)?a:e;e=(h|0)==0;if(e){E=86;break}else{f=d;g=g<
x3c;(e&1^1)}}}while(0);if((E|0)==86){if((a|0)==0&(b|0)==0){a=2<<i;a=j&(a|0-a);if(!a)break;q=(a&0-a
)+-1|0;m=q>>>12&16;q=q>>>m;l=q>>>5&8;q=q>>>l;n=q>>
;>2&4;q=q>>>n;p=q>>>1&2;q=q>>>p;a=q>>>1&1;a=c[73904
+((l|m|n|p|a)+(q>>>a)<<2)>>2]|0}if(!a){i=d;j=b}else E=90}if((E|0)==90)while(1){E=0;q=(c[a+4
x3e;>2]&-8)-o|0;e=q>>>0<d>>>0;d=e?q:d;b=e?a:b;e=c[a+16>>2]|0;if(e|0){a=e;
E=90;continue}a=c[a+20>>2]|0;if(!a){i=d;j=b;break}else E=90}if((j|0)!=0?i>>>0<((c[18402]|0)-o|0)
x3e;>>0:0){f=c[18404]|0;if(j>>>0<f>>>0)ya();h=j+o|0;if(j>>>0>=h
>>>0)ya();g=c[j+24>>2]|0;d=c[j+12>>2]|0;do if((d|0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if
(!a){b=j+16|0;a=c[b>>2]|0;if(!a){s=0;break}}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;
e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<f>>>0)ya();else{c[b>>2]=0;
s=a;break}}else{e=c[j+8>>2]|0;if(e>>>0<f>>>0)ya();a=e+12|0;if((c[a>>2]|0)!=(
j|0))ya();b=d+8|0;if((c[b>>2]|0)==(j|0)){c[a>>2]=d;c[b>>2]=e;s=d;break}else ya()}while(0);do if(g|
0){a=c[j+28>>2]|0;b=73904+(a<<2)|0;if((j|0)==(c[b>>2]|0)){c[b>>2]=s;if(!s){c[18401]=c[18401
]&~(1<<a);break}}else{if(g>>>0<(c[18404]|0)>>>0)ya();a=g+16|0;if((c[a>>
;2]|0)==(j|0))c[a>>2]=s;else c[g+20>>2]=s;if(!s)break}b=c[18404]|0;if(s>>>0<b>>
;>0)ya();c[s+24>>2]=g;a=c[j+16>>2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else
{c[s+16>>2]=a;c[a+24>>2]=s;break}while(0);a=c[j+20>>2]|0;if(a|0)if(a>>>0<(c[18404
]|0)>>>0)ya();else{c[s+20>>2]=a;c[a+24>>2]=s;break}}while(0);do if(i>>>0>=
16){c[j+4>>2]=o|3;c[h+4>>2]=i|1;c[h+i>>2]=i;a=i>>>3;if(i>>>0<256
){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>
;>0<(c[18404]|0)>>>0)ya();else{u=a;v=b}}else{c[18400]=b|a;u=d+8|0;v=d}c[u>>2]=h;c[v+12>
x3e;2]=h;c[h+8>>2]=v;c[h+12>>2]=d;break}a=i>>>8;if(a)if(i>>>0>16777215)d=
31;else{K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|0)>>>16&4;L=L<<J;d
=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>>15)|0;d=i>>>(d+7|0)&1
|d<<1}else d=0;e=73904+(d<<2)|0;c[h+28>>2]=d;a=h+16|0;c[a+4>>2]=0;c[a>>2]=0;a=
c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[e>>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8
>>2]=h;break}f=i<<((d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>
x3e;2]&-8|0)==(i|0)){d=a;E=148;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d){E=145;break
}else{f=f<<1;a=d}}if((E|0)==145)if(b>>>0<(c[18404]|0)>>>0)ya();else{c[b>>
2]=h;c[h+24>>2]=a;c[h+12>>2]=h;c[h+8>>2]=h;break}else if((E|0)==148){a=d+8|0;b=c[a>>2]|0
;L=c[18404]|0;if(b>>>0>=L>>>0&d>>>0>=L>>>0){c[b+12>
;>2]=h;c[a>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;c[h+24>>2]=0;break}else ya()}}else{L=i+o|
0;c[j+4>>2]=L|3;L=j+L+4|0;c[L>>2]=c[L>>2]|1}while(0);L=j+8|0;return L|0}}}else o=-1;while(0);d=c[18402
]|0;if(d>>>0>=o>>>0){a=d-o|0;b=c[18405]|0;if(a>>>0>15){L=b+o|0;c[18405]=L
;c[18402]=a;c[L+4>>2]=a|1;c[L+a>>2]=a;c[b+4>>2]=o|3}else{c[18402]=0;c[18405]=0;c[b+4>>2]=
d|3;L=b+d+4|0;c[L>>2]=c[L>>2]|1}L=b+8|0;return L|0}a=c[18403]|0;if(a>>>0>o>>
x3e;0){J=a-o|0;c[18403]=J;L=c[18406]|0;K=L+o|0;c[18406]=K;c[K+4>>2]=J|1;c[L+4>>2]=o|3;L=L+8|0;return L|0}do
if(!(c[18518]|0)){a=Ia(30)|0;if(!(a+-1&a)){c[18520]=a;c[18519]=a;c[18521]=-1;c[18522]=-1;c[18523]=0;c[18511]=0;c[18518]=(va
(0)|0)&-16^1431655768;break}else ya()}while(0);h=o+48|0;g=c[18520]|0;i=o+47|0;f=g+i|0;g=0-g|0;j=f&g;if(j>>
x3e;0<=o>>>0){L=0;return L|0}a=c[18510]|0;if(a|0?(u=c[18508]|0,v=u+j|0,v>>>0<=u>>
;>0|v>>>0>a>>>0):0){L=0;return L|0}b:do if(!(c[18511]&4)){a=c[18406]|0;c:do if(a){d
=74048;while(1){b=c[d>>2]|0;if(b>>>0<=a>>>0?(r=d+4|0,(b+(c[r>>2]|0)|0)>
;>>0>a>>>0):0){e=d;d=r;break}d=c[d+8>>2]|0;if(!d){E=173;break c}}a=f-(c[18403]|0)&g
;if(a>>>0<2147483647){b=Ba(a|0)|0;if((b|0)==((c[e>>2]|0)+(c[d>>2]|0)|0)){if((b|0)!=(-1|0
)){h=b;f=a;E=193;break b}}else E=183}}else E=173;while(0);do if((E|0)==173?(t=Ba(0)|0,(t|0)!=(-1|0)):0){a=t;b=c[18519]|0;d=b+-1|
0;if(!(d&a))a=j;else a=j-a+(d+a&0-b)|0;b=c[18508]|0;d=b+a|0;if(a>>>0>o>>>0&a
x3e;>>0<2147483647){v=c[18510]|0;if(v|0?d>>>0<=b>>>0|d>>>0>
;v>>>0:0)break;b=Ba(a|0)|0;if((b|0)==(t|0)){h=t;f=a;E=193;break b}else E=183}}while(0);d:do if((E|0)==183){d=0-a|
0;do if(h>>>0>a>>>0&(a>>>0<2147483647&(b|0)!=(-1|0))?(w=c[18520
]|0,w=i-a+w&0-w,w>>>0<2147483647):0)if((Ba(w|0)|0)==(-1|0)){Ba(d|0)|0;break d}else{a=w+a|0;break}while(
0);if((b|0)!=(-1|0)){h=b;f=a;E=193;break b}}while(0);c[18511]=c[18511]|4;E=190}else E=190;while(0);if((((E|0)==190?j>>
x3e;0<2147483647:0)?(x=Ba(j|0)|0,y=Ba(0)|0,x>>>0<y>>>0&((x|0)!=(-1|0)&(y|0)!=(-
1|0))):0)?(z=y-x|0,z>>>0>(o+40|0)>>>0):0){h=x;f=z;E=193}if((E|0)==193){a=(c[18508]|0)+f|0;c[18508
]=a;if(a>>>0>(c[18509]|0)>>>0)c[18509]=a;i=c[18406]|0;do if(i){e=74048;do{a=c[e>>2]|
0;b=e+4|0;d=c[b>>2]|0;if((h|0)==(a+d|0)){A=a;B=b;C=d;D=e;E=203;break}e=c[e+8>>2]|0}while((e|0)!=0);if(((E|0)==
203?(c[D+12>>2]&8|0)==0:0)?i>>>0<h>>>0&i>>>0>=A>
x3e;>0:0){c[B>>2]=C+f;L=i+8|0;L=(L&7|0)==0?0:0-L&7;K=i+L|0;L=f-L+(c[18403]|0)|0;c[18406]=K;c[18403]=L;c
[K+4>>2]=L|1;c[K+L+4>>2]=40;c[18407]=c[18522];break}a=c[18404]|0;if(h>>>0<a>>
x3e;0){c[18404]=h;j=h}else j=a;d=h+f|0;a=74048;while(1){if((c[a>>2]|0)==(d|0)){b=a;E=211;break}a=c[a+8>>2]|0
;if(!a){b=74048;break}}if((E|0)==211)if(!(c[a+12>>2]&8)){c[b>>2]=h;l=a+4|0;c[l>>2]=(c[l>
x3e;2]|0)+f;l=h+8|0;l=h+((l&7|0)==0?0:0-l&7)|0;a=d+8|0;a=d+((a&7|0)==0?0:0-a&7)|0;k=l+o|0;g=a-l-o|0;c[l+4>
;>2]=o|3;do if((a|0)!=(i|0)){if((a|0)==(c[18405]|0)){L=(c[18402]|0)+g|0;c[18402]=L;c[18405]=k;c[k+4>>2]=L|1;c[k+L
>>2]=L;break}b=c[a+4>>2]|0;if((b&3|0)==1){i=b&-8;f=b>>>3;e:do if(b>>>
;0>=256){h=c[a+24>>2]|0;e=c[a+12>>2]|0;do if((e|0)==(a|0)){d=a+16|0;e=d+4|0;b=c[e>>2]|0;if(!b
){b=c[d>>2]|0;if(!b){J=0;break}}else d=e;while(1){e=b+20|0;f=c[e>>2]|0;if(f|0){b=f;d=e;continue}e=b+16|0;f=c
[e>>2]|0;if(!f)break;else{b=f;d=e}}if(d>>>0<j>>>0)ya();else{c[d>>2]=0;J=b
;break}}else{f=c[a+8>>2]|0;if(f>>>0<j>>>0)ya();b=f+12|0;if((c[b>>2]|0)!=(
a|0))ya();d=e+8|0;if((c[d>>2]|0)==(a|0)){c[b>>2]=e;c[d>>2]=f;J=e;break}else ya()}while(0);if(!h)break
;b=c[a+28>>2]|0;d=73904+(b<<2)|0;do if((a|0)!=(c[d>>2]|0)){if(h>>>0<(c[18404]|
0)>>>0)ya();b=h+16|0;if((c[b>>2]|0)==(a|0))c[b>>2]=J;else c[h+20>>2]=J;if(!J)break
e}else{c[d>>2]=J;if(J|0)break;c[18401]=c[18401]&~(1<<b);break e}while(0);e=c[18404]|0;if(J>>
x3e;0<e>>>0)ya();c[J+24>>2]=h;b=a+16|0;d=c[b>>2]|0;do if(d|0)if(d>>>0<
;e>>>0)ya();else{c[J+16>>2]=d;c[d+24>>2]=J;break}while(0);b=c[b+4>>2]|0;if(!b)break
;if(b>>>0<(c[18404]|0)>>>0)ya();else{c[J+20>>2]=b;c[b+24>>2]=J;break}}else
{d=c[a+8>>2]|0;e=c[a+12>>2]|0;b=73640+(f<<1<<2)|0;do if((d|0)!=(b|0)){if(d>>
x3e;0<j>>>0)ya();if((c[d+12>>2]|0)==(a|0))break;ya()}while(0);if((e|0)==(d|0)){c[18400]=c[18400]
x26;~(1<<f);break}do if((e|0)==(b|0))G=e+8|0;else{if(e>>>0<j>>>0)ya();b=e+8|0;if((c
[b>>2]|0)==(a|0)){G=b;break}ya()}while(0);c[d+12>>2]=e;c[G>>2]=d}while(0);a=a+i|0;g=i+g|0}a=a+4|0;
c[a>>2]=c[a>>2]&-2;c[k+4>>2]=g|1;c[k+g>>2]=g;a=g>>>3;if(g>>
;>0<256){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;do if(!(b&a)){c[18400]=b|a;K=d+8|0
;L=d}else{a=d+8|0;b=c[a>>2]|0;if(b>>>0>=(c[18404]|0)>>>0){K=a;L=b;break}ya()}while(
0);c[K>>2]=k;c[L+12>>2]=k;c[k+8>>2]=L;c[k+12>>2]=d;break}a=g>>>8;do if(!a
)d=0;else{if(g>>>0>16777215){d=31;break}K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192
|0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>
;>15)|0;d=g>>>(d+7|0)&1|d<<1}while(0);e=73904+(d<<2)|0;c[k+28>>2]=d;a=k+16
|0;c[a+4>>2]=0;c[a>>2]=0;a=c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[e>>2]=k;c[k+
24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}f=g<<((d|0)==31?0:25-(d>>>1)|0);a
=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0)==(g|0)){d=a;E=281;break}b=a+16+(f>>>31<<
;2)|0;d=c[b>>2]|0;if(!d){E=278;break}else{f=f<<1;a=d}}if((E|0)==278)if(b>>>0<(c[18404]|0
)>>>0)ya();else{c[b>>2]=k;c[k+24>>2]=a;c[k+12>>2]=k;c[k+8>>2]=k;break}else
if((E|0)==281){a=d+8|0;b=c[a>>2]|0;L=c[18404]|0;if(b>>>0>=L>>>0&d>>
x3e;0>=L>>>0){c[b+12>>2]=k;c[a>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;c[k+24
>>2]=0;break}else ya()}}else{L=(c[18403]|0)+g|0;c[18403]=L;c[18406]=k;c[k+4>>2]=L|1}while(0);L=l+8|0;return
L|0}else b=74048;while(1){a=c[b>>2]|0;if(a>>>0<=i>>>0?(F=a+(c[b+4>>2]|0)|
0,F>>>0>i>>>0):0){b=F;break}b=c[b+8>>2]|0}g=b+-47|0;d=g+8|0;d=g+((d&7|0)==0?0:
0-d&7)|0;g=i+16|0;d=d>>>0<g>>>0?i:d;a=d+8|0;e=h+8|0;e=(e&7|0)==0?0:0-e&7;L=h+e
|0;e=f+-40-e|0;c[18406]=L;c[18403]=e;c[L+4>>2]=e|1;c[L+e+4>>2]=40;c[18407]=c[18522];e=d+4|0;c[e>>2
]=27;c[a>>2]=c[18512];c[a+4>>2]=c[18513];c[a+8>>2]=c[18514];c[a+12>>2]=c[18515];c[18512]=
h;c[18513]=f;c[18515]=0;c[18514]=a;a=d+24|0;do{a=a+4|0;c[a>>2]=7}while((a+4|0)>>>0<b>>
x3e;0);if((d|0)!=(i|0)){h=d-i|0;c[e>>2]=c[e>>2]&-2;c[i+4>>2]=h|1;c[d>>2]=h;a=h>
;>>3;if(h>>>0<256){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;if(b&
;a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{H=a;I=b}}else{c[18400]=
b|a;H=d+8|0;I=d}c[H>>2]=i;c[I+12>>2]=i;c[i+8>>2]=I;c[i+12>>2]=d;break}a=h>>>
;8;if(a)if(h>>>0>16777215)d=31;else{K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|
0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>
;>15)|0;d=h>>>(d+7|0)&1|d<<1}else d=0;f=73904+(d<<2)|0;c[i+28>>2]=d;c[i+20
>>2]=0;c[g>>2]=0;a=c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[f>>2]=i;c[i+24>
x3e;2]=f;c[i+12>>2]=i;c[i+8>>2]=i;break}e=h<<((d|0)==31?0:25-(d>>>1)|0);a=c[f>
x3e;2]|0;while(1){if((c[a+4>>2]&-8|0)==(h|0)){d=a;E=307;break}b=a+16+(e>>>31<<2)|0;d=c[b
>>2]|0;if(!d){E=304;break}else{e=e<<1;a=d}}if((E|0)==304)if(b>>>0<(c[18404]|0)>>
;>0)ya();else{c[b>>2]=i;c[i+24>>2]=a;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((E|0)==
307){a=d+8|0;b=c[a>>2]|0;L=c[18404]|0;if(b>>>0>=L>>>0&d>>>0>
;=L>>>0){c[b+12>>2]=i;c[a>>2]=i;c[i+8>>2]=b;c[i+12>>2]=d;c[i+24>>
;2]=0;break}else ya()}}}else{L=c[18404]|0;if((L|0)==0|h>>>0<L>>>0)c[18404]=h;c[18512]=h;c[18513
]=f;c[18515]=0;c[18409]=c[18518];c[18408]=-1;a=0;do{L=73640+(a<<1<<2)|0;c[L+12>>2]=L;c[L+8>
x3e;2]=L;a=a+1|0}while((a|0)!=32);L=h+8|0;L=(L&7|0)==0?0:0-L&7;K=h+L|0;L=f+-40-L|0;c[18406]=K;c[18403]=L;c[K+4>
x3e;2]=L|1;c[K+L+4>>2]=40;c[18407]=c[18522]}while(0);a=c[18403]|0;if(a>>>0>o>>>0){J
=a-o|0;c[18403]=J;L=c[18406]|0;K=L+o|0;c[18406]=K;c[K+4>>2]=J|1;c[L+4>>2]=o|3;L=L+8|0;return L|0}}c[(Ar()|0)
x3e;>2]=12;L=0;return L|0}function Gs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;if(!a)return
;d=a+-8|0;h=c[18404]|0;if(d>>>0<h>>>0)ya();a=c[a+-4>>2]|0;b=a&3;if((b|0)==1)ya
();e=a&-8;m=d+e|0;do if(!(a&1)){a=c[d>>2]|0;if(!b)return;k=d+(0-a)|0;j=a+e|0;if(k>>>0<h
x3e;>>0)ya();if((k|0)==(c[18405]|0)){a=m+4|0;b=c[a>>2]|0;if((b&3|0)!=3){q=k;g=j;break}c[18402]=j;c[a>
;>2]=b&-2;c[k+4>>2]=j|1;c[k+j>>2]=j;return}e=a>>>3;if(a>>>0<256
){b=c[k+8>>2]|0;d=c[k+12>>2]|0;a=73640+(e<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>
;0<h>>>0)ya();if((c[b+12>>2]|0)!=(k|0))ya()}if((d|0)==(b|0)){c[18400]=c[18400]&~(1<<
;e);q=k;g=j;break}if((d|0)!=(a|0)){if(d>>>0<h>>>0)ya();a=d+8|0;if((c[a>>2]|0)==(k|0
))f=a;else ya()}else f=d+8|0;c[b+12>>2]=d;c[f>>2]=b;q=k;g=j;break}f=c[k+24>>2]|0;d=c[k+12>>
;2]|0;do if((d|0)==(k|0)){b=k+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){i=0;break}}else b=d;while(1
){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>
;>0<h>>>0)ya();else{c[b>>2]=0;i=a;break}}else{e=c[k+8>>2]|0;if(e>>>0
<h>>>0)ya();a=e+12|0;if((c[a>>2]|0)!=(k|0))ya();b=d+8|0;if((c[b>>2]|0)==(k|0)){c[a>
x3e;2]=d;c[b>>2]=e;i=d;break}else ya()}while(0);if(f){a=c[k+28>>2]|0;b=73904+(a<<2)|0;if((k|0)==(c
[b>>2]|0)){c[b>>2]=i;if(!i){c[18401]=c[18401]&~(1<<a);q=k;g=j;break}}else{if(f>>>
;0<(c[18404]|0)>>>0)ya();a=f+16|0;if((c[a>>2]|0)==(k|0))c[a>>2]=i;else c[f+20>>
;2]=i;if(!i){q=k;g=j;break}}d=c[18404]|0;if(i>>>0<d>>>0)ya();c[i+24>>2]=f;a=k+16|0;
b=c[a>>2]|0;do if(b|0)if(b>>>0<d>>>0)ya();else{c[i+16>>2]=b;c[b+24>
x3e;2]=i;break}while(0);a=c[a+4>>2]|0;if(a)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[i+
20>>2]=a;c[a+24>>2]=i;q=k;g=j;break}else{q=k;g=j}}else{q=k;g=j}}else{q=d;g=e}while(0);if(q>>>
0>=m>>>0)ya();a=m+4|0;b=c[a>>2]|0;if(!(b&1))ya();if(!(b&2)){if((m|0)==(c[18406]|0)){p=(c
[18403]|0)+g|0;c[18403]=p;c[18406]=q;c[q+4>>2]=p|1;if((q|0)!=(c[18405]|0))return;c[18405]=0;c[18402]=0;return}if((m|0)==(
c[18405]|0)){p=(c[18402]|0)+g|0;c[18402]=p;c[18405]=q;c[q+4>>2]=p|1;c[q+p>>2]=p;return}g=(b&-8)+g|0;e=b
>>>3;do if(b>>>0>=256){f=c[m+24>>2]|0;a=c[m+12>>2]|0;do if((a|0)==(m|0)){
b=m+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){n=0;break}}else b=d;while(1){d=a+20|0;e=c[d>>
;2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<(c[18404]|0
)>>>0)ya();else{c[b>>2]=0;n=a;break}}else{b=c[m+8>>2]|0;if(b>>>0<(c[18404
]|0)>>>0)ya();d=b+12|0;if((c[d>>2]|0)!=(m|0))ya();e=a+8|0;if((c[e>>2]|0)==(m|0)){c[d>>
;2]=a;c[e>>2]=b;n=a;break}else ya()}while(0);if(f|0){a=c[m+28>>2]|0;b=73904+(a<<2)|0;if((m|0)==(c[
b>>2]|0)){c[b>>2]=n;if(!n){c[18401]=c[18401]&~(1<<a);break}}else{if(f>>>0<
;(c[18404]|0)>>>0)ya();a=f+16|0;if((c[a>>2]|0)==(m|0))c[a>>2]=n;else c[f+20>>2]=n;if
(!n)break}d=c[18404]|0;if(n>>>0<d>>>0)ya();c[n+24>>2]=f;a=m+16|0;b=c[a>>2
]|0;do if(b|0)if(b>>>0<d>>>0)ya();else{c[n+16>>2]=b;c[b+24>>2]=n;break}while
(0);a=c[a+4>>2]|0;if(a|0)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[n+20>>2]=a
;c[a+24>>2]=n;break}}}else{b=c[m+8>>2]|0;d=c[m+12>>2]|0;a=73640+(e<<1<<2)|0;if
((b|0)!=(a|0)){if(b>>>0<(c[18404]|0)>>>0)ya();if((c[b+12>>2]|0)!=(m|0))ya()}if((d|0
)==(b|0)){c[18400]=c[18400]&~(1<<e);break}if((d|0)!=(a|0)){if(d>>>0<(c[18404]|0)>>
x3e;0)ya();a=d+8|0;if((c[a>>2]|0)==(m|0))l=a;else ya()}else l=d+8|0;c[b+12>>2]=d;c[l>>2]=b}while(0
);c[q+4>>2]=g|1;c[q+g>>2]=g;if((q|0)==(c[18405]|0)){c[18402]=g;return}}else{c[a>>2]=b&-2;c[q+
4>>2]=g|1;c[q+g>>2]=g}a=g>>>3;if(g>>>0<256){d=73640+(a<<1<
x3c;2)|0;b=c[18400]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>
;>>0)ya();else{o=a;p=b}}else{c[18400]=b|a;o=d+8|0;p=d}c[o>>2]=q;c[p+12>>2]=q;c[q+8>>2]=p
;c[q+12>>2]=d;return}a=g>>>8;if(a)if(g>>>0>16777215)d=31;else{o=(a+1048320|0)>
x3e;>16&8;p=a<<o;n=(p+520192|0)>>>16&4;p=p<<n;d=(p+245760|0)>>>
16&2;d=14-(n|o|d)+(p<<d>>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=73904
+(d<<2)|0;c[q+28>>2]=d;c[q+20>>2]=0;c[q+16>>2]=0;a=c[18401]|0;b=1<<d;do if(a
x26;b){f=g<<((d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0
)==(g|0)){d=a;e=130;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d){e=127;break}else{f=f<
x3c;1;a=d}}if((e|0)==127)if(b>>>0<(c[18404]|0)>>>0)ya();else{c[b>>2]=q;c[q+24>
x3e;2]=a;c[q+12>>2]=q;c[q+8>>2]=q;break}else if((e|0)==130){a=d+8|0;b=c[a>>2]|0;p=c[18404]|0;if(b
x3e;>>0>=p>>>0&d>>>0>=p>>>0){c[b+12>>2]=q;c[a>
;>2]=q;c[q+8>>2]=b;c[q+12>>2]=d;c[q+24>>2]=0;break}else ya()}}else{c[18401]=a|b;c[e>>
;2]=q;c[q+24>>2]=e;c[q+12>>2]=q;c[q+8>>2]=q}while(0);q=(c[18408]|0)+-1|0;c[18408]=q;if(!q)a=74056;
else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[18408]=-1;return}function Hs(a,b){a=a|0;b=b|0;var d=0,e=0;
if(!a){a=Fs(b)|0;return a|0}if(b>>>0>4294967231){c[(Ar()|0)>>2]=12;a=0;return a|0}d=Is(a+-8|0,b>
;>>0<11?16:b+11&-8)|0;if(d|0){a=d+8|0;return a|0}d=Fs(b)|0;if(!d){a=0;return a|0}e=c[a+-4>>2]|0;e=(
e&-8)-((e&3|0)==0?8:4)|0;Ss(d|0,a|0,(e>>>0<b>>>0?e:b)|0)|0;Gs(a);a=d;return a|0}
function Rh(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;ca=i;i=i+192
|0;Y=ca+172|0;l=ca+168|0;I=ca+164|0;H=ca+160|0;m=ca+156|0;n=ca+152|0;p=ca+148|0;aa=ca+144|0;u=ca+140|0;t=ca+136|0;s=ca+132|0;U=ca
+177|0;V=ca+176|0;q=ca+128|0;r=ca+124|0;o=ca+120|0;J=ca+116|0;M=ca+112|0;S=ca+108|0;P=ca+104|0;z=ca+100|0;v=ca+96|0;w=ca+92|0;y=
ca+88|0;x=ca+84|0;D=ca+80|0;F=ca+76|0;A=ca+72|0;B=ca+68|0;G=ca+64|0;E=ca+60|0;C=ca+56|0;W=ca+52|0;Q=ca+48|0;R=ca+44|0;N=ca+40|0;
O=ca+36|0;K=ca+32|0;X=ca+28|0;_=ca+16|0;L=ca+12|0;T=ca+8|0;$=ca+4|0;Z=ca;c[l>>2]=f;c[I>>2]=g;c[H>>
2]=h;c[m>>2]=j;c[n>>2]=k;c[p>>2]=c[I>>2];a[U>>0]=1;a[V>>0]=0;c[q>
;>2]=c[(c[(c[I>>2]|0)+96>>2]|0)+4>>2];c[u>>2]=Ud(c[q>>2]|0,11340)|0;do if
(c[u>>2]|0){c[r>>2]=c[(c[p>>2]|0)+96>>2];c[o>>2]=Vd(c[r>>2]|0,71003)|
0;c[t>>2]=c[o>>2];c[s>>2]=Ud(c[q>>2]|0,11524)|0;f=Kc(c[l>>2]|0,0)|0;c[aa>
x3e;2]=f;if(!f){c[aa>>2]=Za[c[(c[u>>2]|0)+4>>2]&31](c[l>>2]|0,c[p>>2]|0,c
[H>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;if(!(c[aa>>2]|0)){if((c[(c[p>>2]|0)+148>
x3e;2]|0)!=1330926671){ba=112;break}if((c[H>>2]|0)<0){c[Y>>2]=0;ba=c[Y>>2]|0;i=ca;return ba|0
}if((c[H>>2]|0)>0){c[aa>>2]=6;break}a[V>>0]=1;c[aa>>2]=Wa[c[(c[p>>2]|0)+508
>>2]&31](c[p>>2]|0,1751474532,c[l>>2]|0,0)|0;if(c[aa>>2]|0){c[aa>>2]=Ya[c
[(c[u>>2]|0)+40>>2]&127](c[p>>2]|0,c[l>>2]|0)|0;if(c[aa>>2]|0)break}else{
a[U>>0]=0;c[aa>>2]=Za[c[(c[u>>2]|0)+8>>2]&31](c[l>>2]|0,c[p>>2]|
0,0,c[m>>2]|0,c[n>>2]|0)|0;if(c[aa>>2]|0)break}c[aa>>2]=Wa[c[(c[p>>2]|0)+508
x3e;>2]&31](c[p>>2]|0,1128678944,c[l>>2]|0,0)|0;if(c[aa>>2]|0)break}else{f=Kc(c[l>
x3e;2]|0,0)|0;c[aa>>2]=f;if(f|0)break;c[aa>>2]=0}c[S>>2]=c[(c[I>>2]|0)+100>>2];
c[J>>2]=bc(c[S>>2]|0,2072,aa)|0;if((c[aa>>2]|0)==0?(c[(c[p>>2]|0)+692>>2]=c[J
x3e;>2],c[aa>>2]=Sh(c[q>>2]|0,c[l>>2]|0,c[H>>2]|0,c[J>>2]|0,a[U>>
;0]|0)|0,(c[aa>>2]|0)==0):0){c[(c[J>>2]|0)+2052>>2]=c[s>>2];c[(c[J>>2]|0)+2056
>>2]=c[t>>2];c[(c[I>>2]|0)+4>>2]=c[H>>2];c[(c[I>>2]|0)+16>>
;2]=c[(c[J>>2]|0)+12>>2];c[M>>2]=(c[J>>2]|0)+1324;if(c[t>>2]|0?1:(c[(c[M>
x3e;2]|0)+128>>2]|0)!=65535){if(!(c[(c[M>>2]|0)+64>>2]|0)){if(d[U>>0]|0)l=1e3;else l=e[(
c[p>>2]|0)+68>>1]|0;c[(c[M>>2]|0)+64>>2]=l}c[v>>2]=(c[M>>2]|0)+48;c[
w>>2]=(c[M>>2]|0)+68;c[y>>2]=(c[M>>2]|0)+64;f=c[(c[v>>2]|0)+12>>2]|0
;c[x>>2]=(c[(c[v>>2]|0)+12>>2]|0)<0?0-f|0:f;if((c[x>>2]|0)!=65536){f=Vb(c[c[y>
x3e;2]>>2]|0,c[x>>2]|0)|0;c[c[y>>2]>>2]=f;y=Vb(c[c[v>>2]>>2]|0,c[x
x3e;>2]|0)|0;c[c[v>>2]>>2]=y;y=Vb(c[(c[v>>2]|0)+8>>2]|0,c[x>>2]|0)|0;c[(c
[v>>2]|0)+8>>2]=y;y=Vb(c[(c[v>>2]|0)+4>>2]|0,c[x>>2]|0)|0;c[(c[v>>2]|
0)+4>>2]=y;y=Vb(c[(c[v>>2]|0)+12>>2]|0,c[x>>2]|0)|0;c[(c[v>>2]|0)+12>>
;2]=y;y=Vb(c[c[w>>2]>>2]|0,c[x>>2]|0)|0;c[c[w>>2]>>2]=y;y=Vb(c[(c[w>>
;2]|0)+4>>2]|0,c[x>>2]|0)|0;c[(c[w>>2]|0)+4>>2]=y}y=c[w>>2]|0;c[y>>2
]=c[y>>2]>>16;y=(c[w>>2]|0)+4|0;c[y>>2]=c[y>>2]>>16;c[z>>2
]=c[(c[J>>2]|0)+1892>>2];while(1){if((c[z>>2]|0)>>>0<=0)break;c[D>>2
]=c[(c[J>>2]|0)+1896+((c[z>>2]|0)-1<<2)>>2];c[F>>2]=(c[J>>2]|0)+1324
;if(c[(c[D>>2]|0)+64>>2]|0){if((c[(c[F>>2]|0)+64>>2]|0)>>>0>1?(c[(c[
D>>2]|0)+64>>2]|0)>>>0>1:0){if((c[(c[F>>2]|0)+64>>2]|0)>>
x3e;0<(c[(c[D>>2]|0)+64>>2]|0)>>>0)l=c[(c[F>>2]|0)+64>>2]|0;else l=c
[(c[D>>2]|0)+64>>2]|0;c[C>>2]=l}else c[C>>2]=1;Xb((c[F>>2]|0)+48|0,(c[D>
x3e;2]|0)+48|0,c[C>>2]|0);Yb((c[D>>2]|0)+68|0,(c[F>>2]|0)+48|0,c[C>>2]|0);y=xb(c[(c[D>
;>2]|0)+64>>2]|0,c[(c[F>>2]|0)+64>>2]|0,c[C>>2]|0)|0;c[(c[D>>2]|0)+64>
;>2]=y}else{y=(c[D>>2]|0)+48|0;x=(c[F>>2]|0)+48|0;c[y>>2]=c[x>>2];c[y+4>>
2]=c[x+4>>2];c[y+8>>2]=c[x+8>>2];c[y+12>>2]=c[x+12>>2];y=(c[D>>2]|0)+
68|0;x=(c[F>>2]|0)+68|0;c[y>>2]=c[x>>2];c[y+4>>2]=c[x+4>>2];c[(c[D>>
2]|0)+64>>2]=c[(c[F>>2]|0)+64>>2]}c[A>>2]=(c[D>>2]|0)+48;c[B>>2]=(c[
D>>2]|0)+68;c[G>>2]=(c[D>>2]|0)+64;y=c[(c[A>>2]|0)+12>>2]|0;c[E>>2]=(
c[(c[A>>2]|0)+12>>2]|0)<0?0-y|0:y;if((c[E>>2]|0)!=65536){y=Vb(c[c[G>>2]>>
2]|0,c[E>>2]|0)|0;c[c[G>>2]>>2]=y;if((c[c[G>>2]>>2]|0)>>>0>
;1e5)c[c[G>>2]>>2]=(((c[c[G>>2]>>2]|0)+500|0)>>>0)/1e3|0;y=Vb(c[c[A>
x3e;2]>>2]|0,c[E>>2]|0)|0;c[c[A>>2]>>2]=y;y=Vb(c[(c[A>>2]|0)+8>>2]|0
,c[E>>2]|0)|0;c[(c[A>>2]|0)+8>>2]=y;y=Vb(c[(c[A>>2]|0)+4>>2]|0,c[E>>
2]|0)|0;c[(c[A>>2]|0)+4>>2]=y;y=Vb(c[(c[A>>2]|0)+12>>2]|0,c[E>>2]|0)|0;c[(c[A
x3e;>2]|0)+12>>2]=y;y=Vb(c[c[B>>2]>>2]|0,c[E>>2]|0)|0;c[c[B>>2]>>
;2]=y;y=Vb(c[(c[B>>2]|0)+4>>2]|0,c[E>>2]|0)|0;c[(c[B>>2]|0)+4>>2]=y}y=c[B>
;>2]|0;c[y>>2]=c[y>>2]>>16;y=(c[B>>2]|0)+4|0;c[y>>2]=c[y>>2]>
;>16;c[z>>2]=(c[z>>2]|0)+-1}if(a[U>>0]|0){c[W>>2]=0;c[c[I>>2]>>
2]=c[(c[J>>2]|0)+8>>2];l=c[J>>2]|0;if((c[(c[M>>2]|0)+128>>2]|0)!=65535)c[(c[I
x3e;>2]|0)+16>>2]=(c[l+1152+16>>2]|0)+1;else c[(c[I>>2]|0)+16>>2]=c[l+1176+8>
x3e;2];c[(c[I>>2]|0)+52>>2]=c[(c[M>>2]|0)+80>>2]>>16;c[(c[I>>2]|0)+52
+4>>2]=c[(c[M>>2]|0)+80+4>>2]>>16;c[(c[I>>2]|0)+52+8>>2]=(c[(c[M>
;>2]|0)+80+8>>2]|0)+65535>>16;c[(c[I>>2]|0)+52+12>>2]=(c[(c[M>>2]|0)+80+12
>>2]|0)+65535>>16;b[(c[I>>2]|0)+68>>1]=c[(c[M>>2]|0)+64>>2];b[(c[I
x3e;>2]|0)+70>>1]=c[(c[I>>2]|0)+52+12>>2];b[(c[I>>2]|0)+72>>1]=c[(c[I>
;>2]|0)+52+4>>2];b[(c[I>>2]|0)+74>>1]=((e[(c[I>>2]|0)+68>>1]|0)*12|0)/10|
0;if((b[(c[I>>2]|0)+74>>1]|0)<((b[(c[I>>2]|0)+70>>1]|0)-(b[(c[I>>2]|0)+72
>>1]|0)|0))b[(c[I>>2]|0)+74>>1]=(b[(c[I>>2]|0)+70>>1]|0)-(b[(c[I>>2]|
0)+72>>1]|0);b[(c[I>>2]|0)+80>>1]=c[(c[M>>2]|0)+32>>2]>>16;b[(c[I>
;>2]|0)+82>>1]=c[(c[M>>2]|0)+36>>2]>>16;l=qi(c[J>>2]|0,c[H>>2]|
0)|0;c[(c[I>>2]|0)+20>>2]=l;l=c[J>>2]|0;m=c[M>>2]|0;a:do if(c[(c[I>>2]|0)+20
x3e;>2]|0){c[Q>>2]=yh(l,c[m+12>>2]|0)|0;c[R>>2]=c[Q>>2];c[N>>2]=c[(c[I>
;>2]|0)+20>>2];c[O>>2]=0;ri(c[(c[I>>2]|0)+20>>2]|0);if(c[(c[M>>2]|0)+16
x3e;>2]|0?(c[O>>2]=yh(c[J>>2]|0,c[(c[M>>2]|0)+16>>2]|0)|0,c[O>>2]|0):0)c[
N>>2]=c[O>>2];if((c[Q>>2]|0)!=0&(c[N>>2]|0)!=0){b:while(1){if(!(a[c[R>>2]
x3e;>0]|0))break a;if((a[c[R>>2]>>0]|0)==(a[c[N>>2]>>0]|0)){c[N>>2]=(c[N
x3e;>2]|0)+1;c[R>>2]=(c[R>>2]|0)+1;continue}do if((a[c[R>>2]>>0]|0)!=32){if((a[c[R
x3e;>2]>>0]|0)==45)break;if((a[c[N>>2]>>0]|0)!=32?(a[c[N>>2]>>0]|0)!=45:0
)break b;c[N>>2]=(c[N>>2]|0)+1;continue b}while(0);c[R>>2]=(c[R>>2]|0)+1}if((a[c[N>
x3e;2]>>0]|0)==0?a[c[R>>2]>>0]|0:0)c[W>>2]=si(c[S>>2]|0,c[R>>2]|0)|0
}}else{c[K>>2]=yh(l,c[m+168>>2]|0)|0;if(c[K>>2]|0){R=si(c[S>>2]|0,c[K>>2]|0)|0
;c[(c[I>>2]|0)+20>>2]=R}}while(0);if(c[W>>2]|0)c[(c[I>>2]|0)+24>>2]=c[W>
x3e;2];else{W=si(c[S>>2]|0,11262)|0;c[(c[I>>2]|0)+24>>2]=W}c[P>>2]=2065;if(a[V>>
;0]|0)c[P>>2]=c[P>>2]|8;if(a[(c[M>>2]|0)+24>>0]|0)c[P>>2]=c[P>>2]|4;
c[(c[I>>2]|0)+8>>2]=c[P>>2];c[P>>2]=0;if(c[(c[M>>2]|0)+28>>2]|0)c[P
x3e;>2]=c[P>>2]|1;c[X>>2]=yh(c[J>>2]|0,c[(c[M>>2]|0)+20>>2]|0)|0;do if(c[
X>>2]|0){if(Kr(c[X>>2]|0,11270)|0?Kr(c[X>>2]|0,11275)|0:0)break;c[P>>2]=c[P>>2
]|2}while(0);do if(!(c[P>>2]&2)){if(!(c[(c[I>>2]|0)+24>>2]|0))break;if(Lr(c[(c[I>>2
]|0)+24>>2]|0,11270,4)|0?Lr(c[(c[I>>2]|0)+24>>2]|0,11275,5)|0:0)break;c[P>>2]=c[P>
x3e;2]|2}while(0);c[(c[I>>2]|0)+12>>2]=c[P>>2]}if((c[(c[M>>2]|0)+128>>2]|0)==65535
){X=(c[I>>2]|0)+8|0;c[X>>2]=c[X>>2]|512}if((c[(c[M>>2]|0)+128>>2]|0)!=65535?d[
U>>0]|0:0){X=(c[I>>2]|0)+8|0;c[X>>2]=c[X>>2]|4096}c[$>>2]=(c[J>>2]|0
)+116;c[T>>2]=0;while(1){if((c[T>>2]|0)>>>0>=(c[(c[I>>2]|0)+36>>2]|0
)>>>0){ba=96;break}c[L>>2]=c[(c[(c[I>>2]|0)+40>>2]|0)+(c[T>>2]<<
;2)>>2];if((e[(c[L>>2]|0)+8>>1]|0)==3?(e[(c[L>>2]|0)+10>>1]|0)==1:0)break;if(!(
e[(c[L>>2]|0)+8>>1]|0))break;c[T>>2]=(c[T>>2]|0)+1}if((ba|0)==96){if(d[U>>0]|0
?(c[(c[J>>2]|0)+1324+128>>2]|0)!=65535:0)break;if(((c[T>>2]|0)+1|0)>>>0>15)break
;c[_>>2]=c[I>>2];b[_+8>>1]=3;b[_+10>>1]=1;c[_+4>>2]=1970170211;c[T>>
2]=c[(c[I>>2]|0)+36>>2];c[aa>>2]=Ld(868,0,_,0)|0;if((c[aa>>2]|0)!=0&163!=(c[aa>
;>2]|0))break;c[aa>>2]=0;if((c[(c[I>>2]|0)+92>>2]|0)==0?(c[T>>2]|0)!=(c[(c[I>
x3e;2]|0)+36>>2]|0):0)c[(c[I>>2]|0)+92>>2]=c[(c[(c[I>>2]|0)+40>>2]|0)+(c[T>
;>2]<<2)>>2]}if((c[T>>2]|0)>>>0<=15?(c[(c[$>>2]|0)+8>>
;2]|0)>>>0>0:0){c[_>>2]=c[I>>2];b[_+8>>1]=7;do if(c[(c[$>>2]|0)+4>
;>2]|0){l=_+10|0;if((c[(c[$>>2]|0)+4>>2]|0)==1){b[l>>1]=1;c[_+4>>2]=1094992453;c[Z
x3e;>2]=828;break}else{b[l>>1]=2;c[_+4>>2]=1094992451;c[Z>>2]=828;break}}else{b[_+10>>
;1]=0;c[_+4>>2]=1094995778;c[Z>>2]=828}while(0);c[aa>>2]=Ld(c[Z>>2]|0,0,_,0)|0}}else ba=
112}}}else ba=112;while(0);if((ba|0)==112)c[aa>>2]=2;c[Y>>2]=c[aa>>2];ba=c[Y>>2]|0;i=ca;
return ba|0}function Sh(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
;x=i;i=i+112|0;j=x+100|0;p=x+96|0;q=x+92|0;r=x+88|0;k=x+105|0;u=x+84|0;n=x+80|0;s=x+76|0;t=x+72|0;w=x+40|0;l=x+8|0;o=x+4|0;m=x;v
=x+104|0;c[j>>2]=b;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;a[k>>0]=h;c[n>>2]=c
[(c[p>>2]|0)+28>>2];Ns(c[r>>2]|0,0,2072)|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>
x3e;2]=0;c[w+12>>2]=0;c[w+16>>2]=0;c[w+20>>2]=0;c[w+24>>2]=0;c[w+28>>2]=0;c[c[
r>>2]>>2]=c[p>>2];c[(c[r>>2]|0)+4>>2]=c[n>>2];c[t>>2]=(c[r
>>2]|0)+1324;c[s>>2]=Mc(c[p>>2]|0)|0;e=le(c[p>>2]|0,5532,c[r>>2]|0)|0;c[u>
;>2]=e;a:do if(!e){if(((d[(c[r>>2]|0)+16>>0]|0|0)==1?(d[(c[r>>2]|0)+18>>0]|0|0)>
;=4:0)?(d[(c[r>>2]|0)+19>>0]|0|0)<=4:0){e=Qc(c[p>>2]|0,(d[(c[r>>2]|0)+18>>
;0]|0)-4|0)|0;c[u>>2]=e;if(e|0)break;e=Th((c[r>>2]|0)+20|0,c[p>>2]|0,0)|0;c[u>>2]=e;if(e
|0)break;e=Th((c[r>>2]|0)+1208|0,c[p>>2]|0,0)|0;c[u>>2]=e;if(e|0)break;e=Th(w,c[p>>2]|0,
1)|0;c[u>>2]=e;if(e|0)break;e=Th((c[r>>2]|0)+84|0,c[p>>2]|0,1)|0;c[u>>2]=e;if(e|0)break;
e=Vh(w,(c[r>>2]|0)+1316|0,(c[r>>2]|0)+1320|0)|0;c[u>>2]=e;if(e|0)break;c[(c[r>>2]|0)+1312
>>2]=c[w+8>>2];c[(c[r>>2]|0)+8>>2]=c[(c[r>>2]|0)+20+8>>2];if((c[q>
;>2]|0)>=(c[(c[r>>2]|0)+8>>2]|0))c[u>>2]=6;if((c[q>>2]|0)<0)break;c[u>
;>2]=Xh((c[r>>2]|0)+1324|0,(c[r>>2]|0)+1208|0,c[q>>2]|0,c[p>>2]|0,c[s>>2]|
0,c[j>>2]|0)|0;if(c[u>>2]|0)break;e=Kc(c[p>>2]|0,(c[s>>2]|0)+(c[(c[t>>2]|0)+108
>>2]|0)|0)|0;c[u>>2]=e;if(e|0)break;c[u>>2]=Th((c[r>>2]|0)+1176|0,c[p>>2]|0,0)|
0;if(c[u>>2]|0)break;if((c[(c[t>>2]|0)+128>>2]|0)!=65535){e=Kc(c[p>>2]|0,(c[s>>
;2]|0)+(c[(c[t>>2]|0)+160>>2]|0)|0)|0;c[u>>2]=e;if(e|0)break;c[u>>2]=Th(l,c[p>>
;2]|0,0)|0;if(c[u>>2]|0)break;b:do if((c[l+8>>2]|0)>>>0<=32){c[(c[r>>2]|0)+1892
>>2]=c[l+8>>2];c[o>>2]=hc(c[n>>2]|0,568,0,c[l+8>>2]|0,0,u)|0;if(c[u>>
;2]|0)break;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[l+8>>2]|0)>>
x3e;0)break;c[(c[r>>2]|0)+1896+(c[m>>2]<<2)>>2]=(c[o>>2]|0)+((c[m>>2
]|0)*568|0);c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0
x3e;=(c[l+8>>2]|0)>>>0)break;c[o>>2]=c[(c[r>>2]|0)+1896+(c[m>>2]<<
;2)>>2];c[u>>2]=Xh(c[o>>2]|0,l,c[m>>2]|0,c[p>>2]|0,c[s>>2]|0,c[j>
;>2]|0)|0;if(c[u>>2]|0)break b;c[m>>2]=(c[m>>2]|0)+1}c[u>>2]=ki((c[r>>2]|
0)+2024|0,c[(c[r>>2]|0)+1176+8>>2]|0,c[p>>2]|0,(c[s>>2]|0)+(c[(c[t>>2]|0)+164
x3e;>2]|0)|0)|0}while(0);li(l);if(c[u>>2]|0)break}else c[(c[r>>2]|0)+1892>>2]=0;if(!(c[(c[t
x3e;>2]|0)+108>>2]|0)){c[u>>2]=2;break}c[(c[r>>2]|0)+12>>2]=c[(c[r>>2]|0)+
1176+8>>2];c[u>>2]=Vh((c[r>>2]|0)+84|0,(c[r>>2]|0)+1308|0,0)|0;if(c[u>>2]|0)break
;do if((c[(c[r>>2]|0)+12>>2]|0)>>>0>0){if((c[(c[t>>2]|0)+128>>2]|0)!=
65535)j=(d[k>>0]|0|0)!=0;else j=0;a[v>>0]=j&1;c[u>>2]=mi((c[r>>2]|0)+1152|0,c[(c[r
x3e;>2]|0)+12>>2]|0,c[p>>2]|0,c[s>>2]|0,c[(c[t>>2]|0)+100>>2]|0,a[v>
x3e;0]|0)|0;if(c[u>>2]|0)break a;if((c[(c[t>>2]|0)+128>>2]|0)!=65535)break;c[u>>2]=oi((c
[r>>2]|0)+116|0,(c[r>>2]|0)+1152|0,c[(c[r>>2]|0)+12>>2]|0,c[p>>2]|0,c[s>
x3e;2]|0,c[(c[t>>2]|0)+104>>2]|0)|0;if(c[u>>2]|0)break a}while(0);v=qi(c[r>>2]|0,c[q>
;>2]|0)|0;c[(c[r>>2]|0)+1304>>2]=v;break}c[u>>2]=2}while(0);li(w);i=x;return c[u>>2
]|0}function Th(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;r=i;i=i+32|0;n=r+16|0;j=r+12|0;o=r+23|0;p=r+8|0
;q=r+4|0;k=r+20|0;l=r+22|0;m=r;c[n>>2]=f;c[j>>2]=g;a[o>>0]=h;c[q>>2]=c[(c[j>>2
]|0)+28>>2];g=c[n>>2]|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=
0;c[g+16>>2]=0;c[g+20>>2]=0;c[g+24>>2]=0;c[g+28>>2]=0;c[c[n>>2]>>2]=
c[j>>2];g=Mc(c[j>>2]|0)|0;c[(c[n>>2]|0)+4>>2]=g;b[k>>1]=Pc(c[j>>2]|0
,p)|0;do if(((c[p>>2]|0)==0?(e[k>>1]|0)>0:0)?(a[l>>0]=ke(c[j>>2]|0,p)|0,(c[p>
x3e;2]|0)==0):0){if((d[l>>0]|0)>=1?(d[l>>0]|0)<=4:0){c[(c[n>>2]|0)+8>>2]=e[k
x3e;>1];a[(c[n>>2]|0)+12>>0]=a[l>>0]|0;c[m>>2]=_((e[k>>1]|0)+1|0,d[l>
;>0]|0)|0;c[(c[n>>2]|0)+16>>2]=(c[(c[n>>2]|0)+4>>2]|0)+3+(c[m>>2]|0);g=Qc
(c[j>>2]|0,(c[m>>2]|0)-(d[l>>0]|0)|0)|0;c[p>>2]=g;if(g|0)break;c[m>>2]=Uh(c[n
x3e;>2]|0,p)|0;if(c[p>>2]|0)break;if(!(c[m>>2]|0)){c[p>>2]=8;break}k=(c[m>>2]|0)+-1
|0;c[m>>2]=k;c[(c[n>>2]|0)+20>>2]=k;k=c[j>>2]|0;j=c[m>>2]|0;if(a[o>>
0]|0){c[p>>2]=de(k,j,(c[n>>2]|0)+28|0)|0;break}else{c[p>>2]=Qc(k,j)|0;break}}c[p>>2]=8}while
(0);if(!(c[p>>2]|0)){q=c[p>>2]|0;i=r;return q|0}Fb(c[q>>2]|0,c[(c[n>>2]|0)+24>>
;2]|0);c[(c[n>>2]|0)+24>>2]=0;q=c[p>>2]|0;i=r;return q|0}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,m=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;m=l+8|0;k=l+24|0;j=l+4|0;h=l;c[e>>2]=a;c[f>>
2]=b;c[m>>2]=c[c[e>>2]>>2];c[j>>2]=0;a=Rc(c[m>>2]|0,k,d[(c[e>>2]|0)+
12>>0]|0)|0;c[g>>2]=a;if(a|0){k=c[g>>2]|0;m=c[f>>2]|0;c[m>>2]=k;m=c[j>>
;2]|0;i=l;return m|0}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(d[(c[e>>2]|0)+12>>0]|0|0))
break;c[j>>2]=c[j>>2]<<8|(d[k+(c[h>>2]|0)>>0]|0);c[h>>2]=(c[h>
x3e;2]|0)+1}k=c[g>>2]|0;m=c[f>>2]|0;c[m>>2]=k;m=c[j>>2]|0;i=l;return m|0}function Vh(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;t=i;i=i+48|0;f=t+44|0;g=t+40|0;h=t+36|0;k=t+32
|0;m=t+28|0;r=t+24|0;o=t+20|0;n=t+16|0;j=t+12|0;l=t+8|0;q=t+4|0;p=t;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;
c[k>>2]=0;c[m>>2]=c[(c[c[f>>2]>>2]|0)+28>>2];c[o>>2]=0;c[c[g>
x3e;2]>>2]=0;if((c[(c[f>>2]|0)+24>>2]|0)==0?(c[k>>2]=Wh(c[f>>2]|0)|0,c[k>
x3e;2]|0):0){s=c[k>>2]|0;i=t;return s|0}if((c[(c[f>>2]|0)+8>>2]|0)>>>0<=0){s=c
[k>>2]|0;i=t;return s|0}c[r>>2]=hc(c[m>>2]|0,4,0,(c[(c[f>>2]|0)+8>>2]|0)+1|0,0
,k)|0;if(c[k>>2]|0){s=c[k>>2]|0;i=t;return s|0}if(c[h>>2]|0?(c[o>>2]=bc(c[m>>2
]|0,(c[(c[f>>2]|0)+20>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)|0,k)|0,c[k>>2]|0):0){s=c[
k>>2]|0;i=t;return s|0}c[l>>2]=0;c[q>>2]=c[(c[f>>2]|0)+28>>2];d=(c[c[(c[f>
;>2]|0)+24>>2]>>2]|0)-1|0;c[j>>2]=d;c[j>>2]=(c[j>>2]|0)>>>
0>=(c[(c[f>>2]|0)+20>>2]|0)>>>0?0:d;if(c[h>>2]|0)c[c[r>>2]>>
;2]=(c[o>>2]|0)+(c[j>>2]|0);else c[c[r>>2]>>2]=(c[q>>2]|0)+(c[j>>2]|
0);c[n>>2]=1;while(1){if((c[n>>2]|0)>>>0>(c[(c[f>>2]|0)+8>>2]|0)>
;>>0)break;c[p>>2]=(c[(c[(c[f>>2]|0)+24>>2]|0)+(c[n>>2]<<2)>>
;2]|0)-1;if((c[p>>2]|0)!=0?(c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0:0){
if((c[p>>2]|0)>>>0>=(c[(c[f>>2]|0)+20>>2]|0)>>>0?(c[n>>
;2]|0)>>>0<(c[(c[f>>2]|0)+8>>2]|0)>>>0:0)s=16}else s=16;if((s|0)==16){s=0
;c[p>>2]=c[j>>2]}if(c[h>>2]|0){c[(c[r>>2]|0)+(c[n>>2]<<2)>>
;2]=(c[o>>2]|0)+(c[p>>2]|0)+(c[l>>2]|0);if((c[p>>2]|0)!=(c[j>>2]|0)){Ss(c[(c[r
>>2]|0)+((c[n>>2]|0)-1<<2)>>2]|0,(c[q>>2]|0)+(c[j>>2]|0)|0,(c[(c[r
x3e;>2]|0)+(c[n>>2]<<2)>>2]|0)-(c[(c[r>>2]|0)+((c[n>>2]|0)-1<<2
)>>2]|0)|0)|0;a[c[(c[r>>2]|0)+(c[n>>2]<<2)>>2]>>0]=0;d=(c[r>>
;2]|0)+(c[n>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+1}}else
c[(c[r>>2]|0)+(c[n>>2]<<2)>>2]=(c[q>>2]|0)+(c[p>>2]|0);c[j>>
;2]=c[p>>2];c[n>>2]=(c[n>>2]|0)+1}c[c[g>>2]>>2]=c[r>>2];if(!(c[h>
;>2]|0)){s=c[k>>2]|0;i=t;return s|0}c[c[h>>2]>>2]=c[o>>2];s=c[k>>2]|0;i=t
;return s|0}function Wh(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;o=i;i=i+48|0;e=o+28|0;g=o+24|0;n=o+20|0;h=o+16|0;j=
o+32|0;f=o+12|0;k=o+8|0;l=o+4|0;m=o;c[e>>2]=b;c[g>>2]=0;c[n>>2]=c[c[e>>2]>>2];
c[h>>2]=c[(c[n>>2]|0)+28>>2];if(((((c[(c[e>>2]|0)+8>>2]|0)>>>0
x3e;0?(c[(c[e>>2]|0)+24>>2]|0)==0:0)?(a[j>>0]=a[(c[e>>2]|0)+12>>0]|0,c[f>
x3e;2]=_((c[(c[e>>2]|0)+8>>2]|0)+1|0,d[j>>0]|0)|0,b=hc(c[h>>2]|0,4,0,(c[(c[e>>
2]|0)+8>>2]|0)+1|0,0,g)|0,c[(c[e>>2]|0)+24>>2]=b,(c[g>>2]|0)==0):0)?(b=Kc(c[n>>
;2]|0,(c[(c[e>>2]|0)+4>>2]|0)+3|0)|0,c[g>>2]=b,(b|0)==0):0)?(b=ee(c[n>>2]|0,c[f>>
;2]|0)|0,c[g>>2]=b,(b|0)==0):0){c[m>>2]=c[(c[e>>2]|0)+24>>2];c[k>>2]=c[(c[n>
;>2]|0)+32>>2];c[l>>2]=(c[k>>2]|0)+(c[f>>2]|0);a:do switch(d[j>>0]|0){case
1:while(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>
2]>>2]=d[c[k>>2]>>0];c[k>>2]=(c[k>>2]|0)+1;c[m>>2]=(c[m>>2
]|0)+4}case 2:while(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m
x3e;>2]>>2]=((d[c[k>>2]>>0]&65535)<<8|(d[(c[k>>2]|0)+1>>0]
x26;65535)<<0)&65535;c[k>>2]=(c[k>>2]|0)+2;c[m>>2]=(c[m>>2]|0)+4}case 3:while
(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>2]>
x3e;2]=a[c[k>>2]>>0]<<16|d[(c[k>>2]|0)+1>>0]<<8|d[(c[k>>2]|
0)+2>>0]<<0;c[k>>2]=(c[k>>2]|0)+3;c[m>>2]=(c[m>>2]|0)+4}default:while
(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>2]>
x3e;2]=d[c[k>>2]>>0]<<24|d[(c[k>>2]|0)+1>>0]<<16|d[(c[k>>2
]|0)+2>>0]<<8|d[(c[k>>2]|0)+3>>0]<<0;c[k>>2]=(c[k>>2]|0)+4
;c[m>>2]=(c[m>>2]|0)+4}}while(0);ge(c[n>>2]|0)}if(!(c[g>>2]|0)){n=c[g>>2]|0;i=
o;return n|0}Fb(c[h>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;n=c[g
>>2]|0;i=o;return n|0}function Xh(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;v=i;i=i+464|0;k=v+456|0;l=v+452|0;w=v+448|0;m=v+444|0;n=v+440|0;o=v+436|0;r=v+432|0;s=v+16|0;p=v+12|0;q=v+8
|0;u=v+4|0;t=v;c[k>>2]=b;c[l>>2]=e;c[w>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>
;2]=j;c[p>>2]=0;c[u>>2]=c[k>>2];c[t>>2]=(c[k>>2]|0)+172;Yh(s,4096,c[k>>
;2]|0,c[o>>2]|0);Ns(c[u>>2]|0,0,172)|0;c[(c[u>>2]|0)+32>>2]=-6553600;c[(c[u>>2
]|0)+36>>2]=3276800;c[(c[u>>2]|0)+44>>2]=2;c[(c[u>>2]|0)+48>>2]=65536;c[(c[u
x3e;>2]|0)+48+12>>2]=65536;c[(c[u>>2]|0)+152>>2]=8720;c[c[u>>2]>>2]=65535
;c[(c[u>>2]|0)+4>>2]=65535;c[(c[u>>2]|0)+8>>2]=65535;c[(c[u>>2]|0)+12>>
;2]=65535;c[(c[u>>2]|0)+16>>2]=65535;c[(c[u>>2]|0)+20>>2]=65535;c[(c[u>>2]|0)+
124>>2]=65535;c[(c[u>>2]|0)+128>>2]=65535;c[(c[u>>2]|0)+132>>2]=65535;c[(c[u
x3e;>2]|0)+168>>2]=65535;c[r>>2]=Zh(c[l>>2]|0,c[w>>2]|0,p,q)|0;if(!(c[r>>
2]|0))c[r>>2]=_h(s,c[p>>2]|0,(c[p>>2]|0)+(c[q>>2]|0)|0)|0;ji(c[l>>2]|0,p);if(c
[r>>2]|0){w=c[r>>2]|0;i=v;return w|0}if((c[(c[u>>2]|0)+128>>2]|0)!=65535){w=c[r>>
;2]|0;i=v;return w|0}do if(c[(c[u>>2]|0)+112>>2]|0?c[(c[u>>2]|0)+116>>2]|0:0){Ns(c[t>
;>2]|0,0,360)|0;c[(c[t>>2]|0)+200>>2]=7;c[(c[t>>2]|0)+204>>2]=1;c[(c[t>>2
]|0)+332>>2]=-1;c[(c[t>>2]|0)+340>>2]=3932;c[(c[t>>2]|0)+196>>2]=2596864;Yh(s,
8192,c[t>>2]|0,c[o>>2]|0);w=Kc(c[m>>2]|0,(c[n>>2]|0)+(c[(c[k>>2]|0)+112>
x3e;2]|0)|0)|0;c[r>>2]=w;if(w|0){w=c[r>>2]|0;i=v;return w|0}w=ee(c[m>>2]|0,c[(c[k>>2]|0)+
116>>2]|0)|0;c[r>>2]=w;if(w|0){w=c[r>>2]|0;i=v;return w|0}c[r>>2]=_h(s,c[(c[m>>
;2]|0)+32>>2]|0,c[(c[m>>2]|0)+36>>2]|0)|0;ge(c[m>>2]|0);if(c[r>>2]|0){w=c[r>
;>2]|0;i=v;return w|0}else{w=c[t>>2]|0;a[w>>0]=(d[w>>0]|0)&-2;break}}while(0);if(!(c[(c[
t>>2]|0)+348>>2]|0)){w=c[r>>2]|0;i=v;return w|0}w=Kc(c[m>>2]|0,(c[n>>2]|0)+(c[(
c[u>>2]|0)+112>>2]|0)+(c[(c[t>>2]|0)+348>>2]|0)|0)|0;c[r>>2]=w;if(w|0){w=c[r
x3e;>2]|0;i=v;return w|0}c[r>>2]=Th((c[k>>2]|0)+532|0,c[m>>2]|0,1)|0;if(c[r>>2]|0){
w=c[r>>2]|0;i=v;return w|0}c[r>>2]=Vh((c[k>>2]|0)+532|0,(c[k>>2]|0)+564|0,0)|0;w=c[r>
;>2]|0;i=v;return w|0}function Yh(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;Ns(c[g>>2]|0,0,416)|0;c[(c[g
>>2]|0)+404>>2]=(c[g>>2]|0)+16;c[(c[g>>2]|0)+408>>2]=c[k>>2];c[(c[g
x3e;>2]|0)+412>>2]=c[j>>2];c[c[g>>2]>>2]=c[h>>2];i=f;return}function Zh(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;q=i;i=i+48|0;g=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;l=q
+16|0;p=q+12|0;m=q+8|0;n=q+4|0;o=q;c[g>>2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>
;2]=0;if(c[g>>2]|0?(c[(c[g>>2]|0)+8>>2]|0)>>>0>(c[h>>2]|0)>>
;>0:0){c[p>>2]=c[c[g>>2]>>2];c[n>>2]=0;b=c[h>>2]|0;a=c[g>>2]|0;
a:do if(c[(c[g>>2]|0)+24>>2]|0){c[m>>2]=c[(c[a+24>>2]|0)+(b<<2)>>2];
if(c[m>>2]|0)do{c[h>>2]=(c[h>>2]|0)+1;c[n>>2]=c[(c[(c[g>>2]|0)+24>>2
]|0)+(c[h>>2]<<2)>>2];if(c[n>>2]|0)break a}while((c[h>>2]|0)>>>
0<(c[(c[g>>2]|0)+8>>2]|0)>>>0)}else{c[o>>2]=_(b,d[a+12>>0]|0)|0;o=Kc
(c[p>>2]|0,(c[(c[g>>2]|0)+4>>2]|0)+3+(c[o>>2]|0)|0)|0;c[l>>2]=o;if(o|0){p=c[l
x3e;>2]|0;i=q;return p|0}c[m>>2]=Uh(c[g>>2]|0,l)|0;if(c[l>>2]|0){p=c[l>>2]|0;i=q;return
p|0}if(c[m>>2]|0)do{c[h>>2]=(c[h>>2]|0)+1;c[n>>2]=Uh(c[g>>2]|0,l)|0;if(c[n>
;>2]|0)break a}while((c[h>>2]|0)>>>0<(c[(c[g>>2]|0)+8>>2]|0)>>
x3e;0)}while(0);if(!((c[n>>2]|0)>>>0<=((c[(c[p>>2]|0)+4>>2]|0)+1|0)>>
;>0?(c[(c[g>>2]|0)+16>>2]|0)>>>0<=((c[(c[p>>2]|0)+4>>2]|0)-(c[n
>>2]|0)+1|0)>>>0:0))c[n>>2]=(c[(c[p>>2]|0)+4>>2]|0)-(c[(c[g>>2]|
0)+16>>2]|0)+1;if(c[m>>2]|0?(c[n>>2]|0)>>>0>(c[m>>2]|0)>>
x3e;0:0){c[c[k>>2]>>2]=(c[n>>2]|0)-(c[m>>2]|0);if(c[(c[g>>2]|0)+28>>
2]|0){c[c[j>>2]>>2]=(c[(c[g>>2]|0)+28>>2]|0)+(c[m>>2]|0)+-1;p=c[l>>2
]|0;i=q;return p|0}o=Kc(c[p>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[m>>2]|0)-1|0)|0;c[l>
x3e;2]=o;if(o|0){p=c[l>>2]|0;i=q;return p|0}c[l>>2]=de(c[p>>2]|0,(c[n>>2]|0)-(c[m>
x3e;2]|0)|0,c[j>>2]|0)|0;p=c[l>>2]|0;i=q;return p|0}c[c[j>>2]>>2]=0;c[c[k>>2]
x3e;>2]=0;p=c[l>>2]|0;i=q;return p|0}c[l>>2]=6;p=c[l>>2]|0;i=q;return p|0}function _h(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;v=i;i=i+64|0;h=v+52|0;w=v+48|0;j=v+44|0;p=
v+40|0;m=v+36|0;x=v+32|0;s=v+28|0;k=v+24|0;o=v+20|0;n=v+16|0;t=v+12|0;q=v+8|0;r=v+4|0;l=v;c[h>>2]=e;c[w>>2]=
f;c[j>>2]=g;c[p>>2]=c[w>>2];c[m>>2]=0;c[x>>2]=c[c[h>>2]>>2
];c[x>>2]=c[x>>2];c[(c[h>>2]|0)+404>>2]=(c[h>>2]|0)+16;c[(c[h>>2]|0)+
4>>2]=c[w>>2];c[(c[h>>2]|0)+8>>2]=c[j>>2];c[(c[h>>2]|0)+12>>
;2]=c[w>>2];a:while(1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0){u=47
;break}c[s>>2]=d[c[p>>2]>>0];g=((c[(c[h>>2]|0)+404>>2]|0)-((c[h>>2]|
0)+16)|0)/4|0;b:do if((c[s>>2]|0)>>>0>=27&(c[s>>2]|0)!=31){if((g|0)>=96){u=48;
break a}w=c[p>>2]|0;f=(c[h>>2]|0)+404|0;x=c[f>>2]|0;c[f>>2]=x+4;c[x>>2]=w;if((
c[s>>2]|0)==30){c[p>>2]=(c[p>>2]|0)+1;while(1){if((c[p>>2]|0)>>>0>=(
c[j>>2]|0)>>>0){u=47;break a}c[s>>2]=(d[c[p>>2]>>0]|0)>>4;if((c
[s>>2]|0)==15)break b;c[s>>2]=(d[c[p>>2]>>0]|0)&15;if((c[s>>2]|0)==15)break
b;c[p>>2]=(c[p>>2]|0)+1}}if((c[s>>2]|0)==28){c[p>>2]=(c[p>>2]|0)+2;break}if((
c[s>>2]|0)==29){c[p>>2]=(c[p>>2]|0)+4;break}if((c[s>>2]|0)>>>0>246)c
[p>>2]=(c[p>>2]|0)+1}else{c[o>>2]=g;c[c[(c[h>>2]|0)+404>>2]>>2]=c[p
x3e;>2];c[k>>2]=c[s>>2];if((c[s>>2]|0)==12){c[p>>2]=(c[p>>2]|0)+1;if((c[p
>>2]|0)>>>0>=(c[j>>2]|0)>>>0){u=50;break a}c[k>>2]=256|(d[c[p
x3e;>2]>>0]|0)}c[k>>2]=c[k>>2]|c[(c[h>>2]|0)+408>>2];c[n>>2]=920
;while(1){if(!(c[c[n>>2]>>2]|0))break;if((c[(c[n>>2]|0)+4>>2]|0)==(c[k>>2]|0)){
u=23;break}c[n>>2]=(c[n>>2]|0)+28}c:do if((u|0)==23){u=0;c[q>>2]=(c[(c[h>>2]|0)+412>
;>2]|0)+(c[(c[n>>2]|0)+8>>2]|0);if((c[o>>2]|0)>>>0<1?(c[c[n>>2]
x3e;>2]|0)!=6:0){u=49;break a}switch(c[c[n>>2]>>2]|0){case 1:case 4:case 5:{c[t>>2]=hi((c[h
x3e;>2]|0)+16|0)|0;break}case 2:{c[t>>2]=fi((c[h>>2]|0)+16|0)|0;break}case 3:{c[t>>2]=di((c[h
>>2]|0)+16|0,3)|0;break}case 6:{c[r>>2]=(c[(c[h>>2]|0)+412>>2]|0)+(c[(c[n>>2]|
0)+24>>2]|0);c[l>>2]=(c[h>>2]|0)+16;if((c[o>>2]|0)>>>0>(c[(c[n>
x3e;2]|0)+20>>2]|0)>>>0)c[o>>2]=c[(c[n>>2]|0)+20>>2];a[c[r>>2]
x3e;>0]=c[o>>2];c[t>>2]=0;while(1){if((c[o>>2]|0)>>>0<=0)break c;x=c[l>
;>2]|0;c[l>>2]=x+4;x=hi(x)|0;c[t>>2]=(c[t>>2]|0)+x;switch(d[(c[n>>2]|0)+12>>
;0]|0|0){case 1:{a[c[q>>2]>>0]=c[t>>2];break}case 2:{b[c[q>>2]>>1]=c[t>
x3e;2];break}case 4:{c[c[q>>2]>>2]=c[t>>2];break}default:c[c[q>>2]>>2]=c[t>
;>2]}c[q>>2]=(c[q>>2]|0)+(d[(c[n>>2]|0)+12>>0]|0);c[o>>2]=(c[o>>
;2]|0)+-1}}default:{c[m>>2]=Ta[c[(c[n>>2]|0)+16>>2]&63](c[h>>2]|0)|0;if(c[m>
x3e;2]|0){u=47;break a}else break c}}switch(d[(c[n>>2]|0)+12>>0]|0|0){case 1:{a[c[q>>2]>>
;0]=c[t>>2];break c}case 2:{b[c[q>>2]>>1]=c[t>>2];break c}case 4:{c[c[q>>2]>
;>2]=c[t>>2];break c}default:{c[c[q>>2]>>2]=c[t>>2];break c}}}while(0);c[(c[h>
x3e;2]|0)+404>>2]=(c[h>>2]|0)+16}while(0);c[p>>2]=(c[p>>2]|0)+1}if((u|0)==47){x=c[m>
;>2]|0;i=v;return x|0}else if((u|0)==48){c[m>>2]=6;x=c[m>>2]|0;i=v;return x|0}else if((u|0)==49){c[m>
;>2]=6;x=c[m>>2]|0;i=v;return x|0}else if((u|0)==50){c[m>>2]=6;x=c[m>>2]|0;i=v;return x|0}return
0}function $h(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;k=j+28|0;l=j+24|0;e=j+20|0;f=j+16|0;h=j+12|0;b=j+8|
0;d=j+4|0;g=j;c[k>>2]=a;c[l>>2]=c[(c[k>>2]|0)+412>>2];c[e>>2]=(c[l>>
2]|0)+48;c[f>>2]=(c[l>>2]|0)+68;c[h>>2]=(c[l>>2]|0)+64;c[b>>2]=(c[k>>
;2]|0)+16;c[d>>2]=161;if((c[(c[k>>2]|0)+404>>2]|0)>>>0<((c[k>>2]|0)+
16+24|0)>>>0){l=c[d>>2]|0;i=j;return l|0}c[d>>2]=0;l=c[b>>2]|0;c[b>>2]=l+
4;l=ai(l,g)|0;c[c[e>>2]>>2]=l;c[g>>2]=0-(c[g>>2]|0);if((c[g>>2]|0)<0|(c[g
>>2]|0)>9){c[c[e>>2]>>2]=65536;c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|
0)+8>>2]=0;c[(c[e>>2]|0)+12>>2]=65536;c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+
4>>2]=0;c[c[h>>2]>>2]=1;l=c[d>>2]|0;i=j;return l|0}else{l=c[b>>2]|0;c[b>
x3e;2]=l+4;l=di(l,c[g>>2]|0)|0;c[(c[e>>2]|0)+8>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l
=di(l,c[g>>2]|0)|0;c[(c[e>>2]|0)+4>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l=di(l,c[g>
;>2]|0)|0;c[(c[e>>2]|0)+12>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l=di(l,c[g>>2]|0
)|0;c[c[f>>2]>>2]=l;l=di(c[b>>2]|0,c[g>>2]|0)|0;c[(c[f>>2]|0)+4>>2]=
l;c[c[h>>2]>>2]=c[2376+(c[g>>2]<<2)>>2];l=c[d>>2]|0;i=j;return l|0}return
0}function ai(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;e=j+16|0;k=j+12|0;f=j+8|0;h=j+4|0;g=j;c[k>>2]=
a;c[f>>2]=b;b=c[c[k>>2]>>2]|0;a=c[(c[k>>2]|0)+4>>2]|0;if((d[c[c[k>>2
]>>2]>>0]|0|0)==30){c[e>>2]=bi(b,a,0,c[f>>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}c
[h>>2]=ci(b,a)|0;if((c[h>>2]|0)<=32767){c[c[f>>2]>>2]=0;c[e>>2]=c[h>
x3e;2]<<16;k=c[e>>2]|0;i=j;return k|0}c[g>>2]=5;while(1){if((c[g>>2]|0)>=10)break;if
((c[h>>2]|0)<(c[2376+(c[g>>2]<<2)>>2]|0))break;c[g>>2]=(c[g>>2]|
0)+1}a=c[g>>2]|0;if(((c[h>>2]|0)/(c[2376+((c[g>>2]|0)-5<<2)>>2]|0)|0|0)>32767
){c[c[f>>2]>>2]=a-4;c[e>>2]=Vb(c[h>>2]|0,c[2376+((c[g>>2]|0)-4<<2)
x3e;>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}else{c[c[f>>2]>>2]=a-5;c[e>>2]=Vb(c[h>
x3e;2]|0,c[2376+((c[g>>2]|0)-5<<2)>>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}return 0}function
bi(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,v=0,w=0,x=0,y=0,z=0;y=i;i=i+80|
0;z=y+64|0;g=y+60|0;h=y+56|0;t=y+52|0;n=y+48|0;m=y+44|0;o=y+40|0;w=y+36|0;r=y+32|0;u=y+28|0;x=y+24|0;k=y+20|0;j=y+16|0;l=y+12|0;
v=y+8|0;q=y+4|0;s=y;c[z>>2]=a;c[g>>2]=b;c[h>>2]=e;c[t>>2]=f;c[n>>2]=c[z>
x3e;2];c[x>>2]=0;c[k>>2]=0;if(c[t>>2]|0)c[c[t>>2]>>2]=0;c[w>>2]=0;c[
r>>2]=0;c[u>>2]=0;c[j>>2]=0;c[l>>2]=0;c[v>>2]=0;c[o>>2]=4;while(1){if
(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n>>2]|0)>>>0>=(c[g>>2
]|0)>>>0):0){p=54;break}c[m>>2]=(d[c[n>>2]>>0]|0)>>c[o>>2]&
;15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|0)==14){c[x>>2]=1;continue}if((c[m>>2]|0
)>>>0>9)break;if((c[r>>2]|0)>=214748364){c[j>>2]=(c[j>>2]|0)+1;continue}if
(!((c[m>>2]|0)!=0|(c[r>>2]|0)!=0))continue;c[l>>2]=(c[l>>2]|0)+1;c[r>>2]=((c[r
>>2]|0)*10|0)+(c[m>>2]|0)}if((p|0)==54){z=c[w>>2]|0;i=y;return z|0}a:do if((c[m>>2]|0)==
10){while(1){if(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n>>2]|0)>>>0>=(c
[g>>2]|0)>>>0):0)break;c[m>>2]=(d[c[n>>2]>>0]|0)>>c[o>>
;2]&15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|0)>>>0>=10)break a;if(!((c[m>
;>2]|0)!=0|(c[r>>2]|0)!=0)){c[j>>2]=(c[j>>2]|0)+-1;continue}if(!((c[r>>2]|0)<214748364
&(c[v>>2]|0)<9))continue;c[v>>2]=(c[v>>2]|0)+1;c[r>>2]=((c[r>>2]|0)*
10|0)+(c[m>>2]|0)}z=c[w>>2]|0;i=y;return z|0}while(0);if((c[m>>2]|0)==12){c[k>>2]=1;c[m
x3e;>2]=11}do if((c[m>>2]|0)==11){while(1){if(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n
>>2]|0)>>>0>=(c[g>>2]|0)>>>0):0){p=54;break}c[m>>2]=(d[c[n>
;>2]>>0]|0)>>c[o>>2]&15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|
0)>>>0>=10){p=28;break}c[u>>2]=((c[u>>2]|0)*10|0)+(c[m>>2]|0);if((c[u>>
;2]|0)>1e3){p=54;break}}if((p|0)==28){if(!(c[k>>2]|0))break;c[u>>2]=0-(c[u>>2]|0);break}else
if((p|0)==54){z=c[w>>2]|0;i=y;return z|0}}while(0);c[u>>2]=(c[u>>2]|0)+((c[h>>2]|0)+(c[j
>>2]|0));do if(!(c[t>>2]|0)){c[l>>2]=(c[l>>2]|0)+(c[u>>2]|0);c[v>>2]=(
c[v>>2]|0)-(c[u>>2]|0);z=c[l>>2]|0;if((((c[l>>2]|0)<0?0-z|0:z)|0)>5){z=c[w>
;>2]|0;i=y;return z|0}if((c[l>>2]|0)<0){c[r>>2]=(c[r>>2]|0)/(c[2376+(0-(c[l>>2
]|0)<<2)>>2]|0)|0;c[v>>2]=(c[v>>2]|0)+(c[l>>2]|0)}if((c[v>>2]|0)==10
){c[r>>2]=(c[r>>2]|0)/10|0;c[v>>2]=(c[v>>2]|0)-1}if((c[v>>2]|0)>0)if(((c[
r>>2]|0)/(c[2376+(c[v>>2]<<2)>>2]|0)|0|0)>32767){z=c[w>>2]|0;i=y;return z
|0}else{c[w>>2]=Vb(c[r>>2]|0,c[2376+(c[v>>2]<<2)>>2]|0)|0;break}else{c[r>
x3e;2]=_(c[r>>2]|0,c[2376+(0-(c[v>>2]|0)<<2)>>2]|0)|0;if((c[r>>2]|0)>32767
){z=c[w>>2]|0;i=y;return z|0}else{c[w>>2]=c[r>>2]<<16;break}}}else{c[v>>2]=(c[
v>>2]|0)+(c[l>>2]|0);c[u>>2]=(c[u>>2]|0)+(c[l>>2]|0);j=c[r>>2]|0;if((
c[v>>2]|0)>5){g=c[r>>2]|0;h=c[v>>2]|0;if(((j|0)/(c[2376+((c[v>>2]|0)-5<<2
)>>2]|0)|0|0)>32767){c[w>>2]=Vb(g,c[2376+(h-4<<2)>>2]|0)|0;c[c[t>>2]>
;>2]=(c[u>>2]|0)-4;break}else{c[w>>2]=Vb(g,c[2376+(h-5<<2)>>2]|0)|0;c[c[t>>
;2]>>2]=(c[u>>2]|0)-5;break}}if((j|0)>32767){c[w>>2]=Vb(c[r>>2]|0,10)|0;c[c[t>
x3e;2]>>2]=(c[u>>2]|0)-(c[v>>2]|0)+1;break}if((c[u>>2]|0)>0){c[q>>2]=(c[u
>>2]|0)<5?c[u>>2]|0:5;c[u>>2]=(c[u>>2]|0)-(c[q>>2]|0);c[s>>2]=(
c[q>>2]|0)-(c[v>>2]|0);c[r>>2]=_(c[r>>2]|0,c[2376+(c[s>>2]<<2)>
x3e;2]|0)|0;if((c[r>>2]|0)>32767){c[r>>2]=(c[r>>2]|0)/10|0;c[u>>2]=(c[u>>
2]|0)+1}}else c[u>>2]=(c[u>>2]|0)-(c[v>>2]|0);c[w>>2]=c[r>>2]<<16;c[
c[t>>2]>>2]=c[u>>2]}while(0);if(!(c[x>>2]|0)){z=c[w>>2]|0;i=y;return z|0}c[w
x3e;>2]=0-(c[w>>2]|0);z=c[w>>2]|0;i=y;return z|0}function ci(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k
=0;j=i;i=i+32|0;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>>2]=a;c[e>>2]=b;c[f>>2]=c[k>>2
];a=c[f>>2]|0;c[f>>2]=a+1;c[g>>2]=d[a>>0];c[h>>2]=0;do if((c[g>>2]|0
)==28){if(((c[f>>2]|0)+2|0)>>>0<=(c[e>>2]|0)>>>0){c[h>>2]=(((d[
c[f>>2]>>0]|0)<<8|(d[(c[f>>2]|0)+1>>0]|0))&65535)<<16>>
;16;c[f>>2]=(c[f>>2]|0)+2;k=c[h>>2]|0;i=j;return k|0}}else{if((c[g>>2]|0)==29){if(((c[f
x3e;>2]|0)+4|0)>>>0>(c[e>>2]|0)>>>0)break;c[h>>2]=(d[c[f>>
2]>>0]|0)<<24|(d[(c[f>>2]|0)+1>>0]|0)<<16|(d[(c[f>>2]|0)+2>>
;0]|0)<<8|(d[(c[f>>2]|0)+3>>0]|0);c[f>>2]=(c[f>>2]|0)+4;k=c[h>>2]|0;
i=j;return k|0}a=c[g>>2]|0;if((c[g>>2]|0)<247){c[h>>2]=a-139;k=c[h>>2]|0;i=j;return
k|0}b=((c[f>>2]|0)+1|0)>>>0>(c[e>>2]|0)>>>0;if((a|0)<251){if(b)break
;c[h>>2]=((c[g>>2]|0)-247<<8)+(d[c[f>>2]>>0]|0)+108;c[f>>2]=(c[f>
;>2]|0)+1;k=c[h>>2]|0;i=j;return k|0}else{if(b)break;c[h>>2]=(0-((c[g>>2]|0)-251)<<
8)-(d[c[f>>2]>>0]|0)-108;c[f>>2]=(c[f>>2]|0)+1;k=c[h>>2]|0;i=j;return k|0}}while
(0);c[h>>2]=0;k=c[h>>2]|0;i=j;return k|0}function di(a,b){a=a|0;b=b|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]=b;b=c[c[g>>2]>>2]|0;a=c[(c[g>>2]|0)+4>>2]|0;if((
d[c[c[g>>2]>>2]>>0]|0|0)==30){g=bi(b,a,c[e>>2]|0,0)|0;i=f;return g|0}else{g=ci(b,a)|0;g=(
_(g,c[2376+(c[e>>2]<<2)>>2]|0)|0)<<16;i=f;return g|0}return 0}function ei(a){a=a|0;var b
=0,d=0,e=0,f=0,g=0,h=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;b=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[h>>2]=c[(c[g>>
;2]|0)+412>>2];c[b>>2]=(c[h>>2]|0)+80;c[d>>2]=(c[g>>2]|0)+16;c[e>>2]=
161;if((c[(c[g>>2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+16|0)>>>0){
h=c[e>>2]|0;i=f;return h|0}h=c[d>>2]|0;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[c[b>>2]>>
2]=h;h=c[d>>2]|0;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[(c[b>>2]|0)+4>>2]=h;h=c[d>>2]|0
;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[(c[b>>2]|0)+8>>2]=h;h=Tb(fi(c[d>>2]|0)|0)|0;c[(c[b>
x3e;2]|0)+12>>2]=h;c[e>>2]=0;h=c[e>>2]|0;i=f;return h|0}function fi(a){a=a|0;var b=0,e=0,f=0;e=i;i
=i+16|0;f=e;c[f>>2]=a;b=c[c[f>>2]>>2]|0;a=c[(c[f>>2]|0)+4>>2]|0;if((d[c[c[f>
;>2]>>2]>>0]|0|0)==30){f=bi(b,a,0,0)|0;i=e;return f|0}else{f=(ci(b,a)|0)<<16;i=e;return f|0}return
0}function gi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+12|0;d=f+8|0;b=f+4|0;e=f;c[g>>2]=a;c[d>>2]=
c[(c[g>>2]|0)+412>>2];c[b>>2]=(c[g>>2]|0)+16;c[e>>2]=161;if((c[(c[g>>
;2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+8|0)>>>0){g=c[e>>2]|0;i=f
;return g|0}g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+116>>2]=g;g=hi(c[b>>
;2]|0)|0;c[(c[d>>2]|0)+112>>2]=g;c[e>>2]=0;g=c[e>>2]|0;i=f;return g|0}function hi(a){a=a
|0;var b=0,e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=a;b=c[c[f>>2]>>2]|0;a=c[(c[f>>2]|0)+4>
x3e;2]|0;if((d[c[c[f>>2]>>2]>>0]|0|0)==30){f=(bi(b,a,0,0)|0)>>16;i=e;return f|0}else{f=ci
(b,a)|0;i=e;return f|0}return 0}function ii(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+12|0;d=f+8|0;b=f+4|0;e=f;c[g>
x3e;2]=a;c[d>>2]=c[(c[g>>2]|0)+412>>2];c[b>>2]=(c[g>>2]|0)+16;c[e>>2
]=161;if((c[(c[g>>2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+12|0)>>>
0){g=c[e>>2]|0;i=f;return g|0}g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+128>
x3e;2]=g;g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+132>>2]=g;g=hi(c[b>>2
]|0)|0;c[(c[d>>2]|0)+136>>2]=g;c[e>>2]=0;g=c[e>>2]|0;i=f;return g|0}function ji(a,b){a=a
|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;if(c[(c[d>>2]|0)+
28>>2]|0){i=g;return}c[f>>2]=c[c[d>>2]>>2];fe(c[f>>2]|0,c[e>>2]|0);i
=g;return}function ki(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;o=i;i=i+32|0;h=o+20|0;j=o+16|0;k=o+12
|0;p=o+8|0;l=o+4|0;m=o+24|0;n=o;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[p>>2]=g;f=Kc(c[k>
x3e;2]|0,c[p>>2]|0)|0;c[l>>2]=f;if(f|0){p=c[l>>2]|0;i=o;return p|0}a[m>>0]=ke(c[k>
x3e;2]|0,l)|0;if(c[l>>2]|0){p=c[l>>2]|0;i=o;return p|0}a[c[h>>2]>>0]=a[m>>0]|0
;c[(c[h>>2]|0)+20>>2]=0;a:do switch(d[m>>0]|0|0){case 0:{c[(c[h>>2]|0)+12>>2]=
c[j>>2];break}case 3:{c[n>>2]=(Pc(c[k>>2]|0,l)|0)&65535;if(c[l>>2]|0){p=c[l>
x3e;2]|0;i=o;return p|0}else{c[(c[h>>2]|0)+12>>2]=((c[n>>2]|0)*3|0)+2;break a}}default:{c[l>
x3e;2]=3;p=c[l>>2]|0;i=o;return p|0}}while(0);c[l>>2]=de(c[k>>2]|0,c[(c[h>>2]|0)+12>
;>2]|0,(c[h>>2]|0)+8|0)|0;p=c[l>>2]|0;i=o;return p|0}function li(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16
|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;if(!(c[c[b>>2]>>2]|0)){i=f;return}c[e>>2]=c[c[b>
x3e;2]>>2];c[d>>2]=c[(c[e>>2]|0)+28>>2];if(c[(c[b>>2]|0)+28>>2]|0)fe
(c[e>>2]|0,(c[b>>2]|0)+28|0);Fb(c[d>>2]|0,c[(c[b>>2]|0)+24>>2]|0);c[(c[b>
x3e;2]|0)+24>>2]=0;e=c[b>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>
x3e;2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0;i=f;return}function mi(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,v=0,w=0,x=0,y=0;y=i;i=i+48|0;r=y+36|0;s
=y+32|0;t=y+28|0;l=y+24|0;m=y+20|0;u=y+42|0;x=y+16|0;v=y+12|0;n=y+40|0;w=y+8|0;p=y+4|0;o=y;c[r>>2]=d;c[s>>2]=
f;c[t>>2]=g;c[l>>2]=h;c[m>>2]=j;a[u>>0]=k;c[x>>2]=c[(c[t>>2]|0)+28
x3e;>2];c[v>>2]=0;a:do if((c[m>>2]|0)>>>0>2){c[(c[r>>2]|0)+4>>2
]=(c[l>>2]|0)+(c[m>>2]|0);g=Kc(c[t>>2]|0,c[(c[r>>2]|0)+4>>2]|0)|0;c[v>>
;2]=g;if(((g|0)==0?(g=(ke(c[t>>2]|0,v)|0)&255,c[c[r>>2]>>2]=g,(c[v>>2]|0)==0):0)?(g
=hc(c[x>>2]|0,2,0,c[s>>2]|0,0,v)|0,c[(c[r>>2]|0)+8>>2]=g,(c[v>>2]|0)==0):0){b[
c[(c[r>>2]|0)+8>>2]>>1]=0;switch(c[c[r>>2]>>2]|0){case 0:{if((c[s>>2
]|0)>>>0<=0){q=39;break a}p=ee(c[t>>2]|0,(c[s>>2]|0)-1<<1)|0;c[v>>2]=
p;if(p|0)break a;c[w>>2]=1;while(1){l=c[t>>2]|0;if((c[w>>2]|0)>>>0>=(c[s>
x3e;2]|0)>>>0)break;q=ie(l)|0;b[(c[(c[r>>2]|0)+8>>2]|0)+(c[w>>2]<<1)>
;>1]=q;c[w>>2]=(c[w>>2]|0)+1}ge(l);q=39;break a}case 2:case 1:{c[w>>2]=1;b:while(1){if((c[w
x3e;>2]|0)>>>0>=(c[s>>2]|0)>>>0){q=39;break a}b[n>>1]=Pc(c[t>
x3e;2]|0,v)|0;if(c[v>>2]|0)break a;l=c[t>>2]|0;if((c[c[r>>2]>>2]|0)==2){c[p>>2
]=(Pc(l,v)|0)&65535;if(c[v>>2]|0)break a}else{c[p>>2]=(ke(l,v)|0)&255;if(c[v>>2]|0)break
a}if((e[n>>1]|0)>>>0>(65535-(c[p>>2]|0)|0)>>>0)c[p>>2]=65535-(
e[n>>1]|0);c[o>>2]=0;while(1){if((c[w>>2]|0)>>>0>=(c[s>>2]|0)>
x3e;>0)continue b;if((c[o>>2]|0)>>>0>(c[p>>2]|0)>>>0)continue b;b[(c
[(c[r>>2]|0)+8>>2]|0)+(c[w>>2]<<1)>>1]=b[n>>1]|0;c[o>>2]=(
c[o>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1;b[n>>1]=(b[n>>1]|0)+1<<16>
x3e;16}}}default:{c[v>>2]=3;break a}}}}else{c[(c[r>>2]|0)+4>>2]=c[m>>2];switch(c[m>
x3e;2]|0){case 0:{if((c[s>>2]|0)>>>0>229){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0
,c[s>>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+
8>>2]|0,5556,c[s>>2]<<1|0)|0;q=39;break a}case 1:{if((c[s>>2]|0)>>>0>
;166){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0,c[s>>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2
]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+8>>2]|0,6014,c[s>>2]<<1|0)|0;q=39;break
a}case 2:{if((c[s>>2]|0)>>>0>87){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0,c[s>
;>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+8>
x3e;2]|0,6346,c[s>>2]<<1|0)|0;q=39;break a}default:{c[v>>2]=3;break a}}}while(0);if((q|0)==39?a[u
x3e;>0]|0:0)c[v>>2]=ni(c[r>>2]|0,c[s>>2]|0,c[x>>2]|0)|0;if(!(c[v>>2]|0)){
x=c[v>>2]|0;i=y;return x|0}Fb(c[x>>2]|0,c[(c[r>>2]|0)+8>>2]|0);c[(c[r>>2]|0)+8
>>2]=0;Fb(c[x>>2]|0,c[(c[r>>2]|0)+12>>2]|0);c[(c[r>>2]|0)+12>>2]=0;c
[c[r>>2]>>2]=0;c[(c[r>>2]|0)+4>>2]=0;c[(c[r>>2]|0)+8>>2]=0;x=c[v>
;>2]|0;i=y;return x|0}function ni(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;o=i;i=i+32|0;g=o+20|0;h=o+16
|0;j=o+12|0;k=o+8|0;l=o+4|0;m=o;n=o+24|0;c[g>>2]=a;c[h>>2]=d;c[j>>2]=f;c[k>>2]=0;b[n>
;>1]=0;if((c[(c[g>>2]|0)+16>>2]|0)>>>0>0){d=c[k>>2]|0;i=o;return d|0}c[l
x3e;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[h>>2]|0)>>>0)break;if((e[(
c[(c[g>>2]|0)+8>>2]|0)+(c[l>>2]<<1)>>1]|0|0)>(e[n>>1]|0|0))b[n
x3e;>1]=b[(c[(c[g>>2]|0)+8>>2]|0)+(c[l>>2]<<1)>>1]|0;c[l>>2]=(c
[l>>2]|0)+1}d=hc(c[j>>2]|0,2,0,(e[n>>1]|0)+1|0,0,k)|0;c[(c[g>>2]|0)+12>>2]=d;if
(c[k>>2]|0){d=c[k>>2]|0;i=o;return d|0}c[m>>2]=(c[h>>2]|0)-1;while(1){if((c[m>>
;2]|0)<0)break;b[(c[(c[g>>2]|0)+12>>2]|0)+((e[(c[(c[g>>2]|0)+8>>2]|0)+(c[m>>
;2]<<1)>>1]|0)<<1)>>1]=c[m>>2];c[m>>2]=(c[m>>2]|0)+-1}c[(c
[g>>2]|0)+16>>2]=e[n>>1];c[(c[g>>2]|0)+20>>2]=c[h>>2];d=c[k>>
;2]|0;i=o;return d|0}function oi(a,f,g,h,j,k){a=a|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;F=i;i=i+80|0;l=F+64|0;m=F+60|0;o=F+56|0;p=F+52|0;q=F+48|0;r=F+44|0;t=F+40|0;s=F+36|0;z
=F+32|0;x=F+68|0;w=F+28|0;C=F+24|0;B=F+20|0;y=F+16|0;A=F+12|0;v=F+8|0;D=F+4|0;u=F;c[l>>2]=a;c[m>>2]=f;c[o>
;>2]=g;c[p>>2]=h;c[q>>2]=j;c[r>>2]=k;c[t>>2]=0;if(!(c[(c[m>>2]|0)+8>
x3e;2]|0)){c[t>>2]=3;E=c[t>>2]|0;i=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>
x3e;>0>=256)break;b[(c[l>>2]|0)+12+(c[z>>2]<<1)>>1]=0;b[(c[l>>2]|0)+
524+(c[z>>2]<<1)>>1]=0;c[z>>2]=(c[z>>2]|0)+1}if((c[r>>2]|0)>>
;>0<=1){switch(c[r>>2]|0){case 0:{Ss((c[l>>2]|0)+12|0,6520,512)|0;break}case 1:{Ss((c[l>>
;2]|0)+12|0,7032,512)|0;break}default:{c[t>>2]=3;E=c[t>>2]|0;i=F;return E|0}}c[(c[l>>2]|0)+8>
x3e;2]=0;c[t>>2]=ni(c[m>>2]|0,c[o>>2]|0,c[(c[p>>2]|0)+28>>2]|0)|0;if(c[t>
x3e;2]|0){E=c[t>>2]|0;i=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=256
)break;c[D>>2]=e[(c[l>>2]|0)+12+(c[z>>2]<<1)>>1];c[u>>2]=0;if(c[D>
;>2]|0)c[u>>2]=pi(c[m>>2]|0,c[D>>2]|0)|0;if(c[u>>2]|0){b[(c[l>>2]|0)+524+(
c[z>>2]<<1)>>1]=c[u>>2];c[(c[l>>2]|0)+8>>2]=(c[z>>2]|0)+1}
else{b[(c[l>>2]|0)+524+(c[z>>2]<<1)>>1]=0;b[(c[l>>2]|0)+12+(c[z>>2]
x3c;<1)>>1]=0}c[z>>2]=(c[z>>2]|0)+1}E=c[t>>2]|0;i=F;return E|0}c[(c[l>>2]|
0)+4>>2]=(c[q>>2]|0)+(c[r>>2]|0);h=Kc(c[p>>2]|0,c[(c[l>>2]|0)+4>>2]|
0)|0;c[t>>2]=h;if(h|0){E=c[t>>2]|0;i=F;return E|0}h=(ke(c[p>>2]|0,t)|0)&255;c[c[l>>
2]>>2]=h;if(c[t>>2]|0){E=c[t>>2]|0;i=F;return E|0}c[s>>2]=(ke(c[p>>2]|0,t)|0)
x26;255;if(c[t>>2]|0){E=c[t>>2]|0;i=F;return E|0}a:do switch(c[c[l>>2]>>2]&127|0){case
0:{c[(c[l>>2]|0)+8>>2]=(c[s>>2]|0)+1;h=ee(c[p>>2]|0,c[s>>2]|0)|0;c[t>>
;2]=h;if(h|0){E=c[t>>2]|0;i=F;return E|0}c[C>>2]=c[(c[p>>2]|0)+32>>2];c[z>>2]=
1;while(1){if((c[z>>2]|0)>>>0>(c[s>>2]|0)>>>0)break;h=c[C>>2]|0
;c[C>>2]=h+1;c[w>>2]=d[h>>0];if((c[z>>2]|0)>>>0<(c[o>>2]|0
)>>>0){b[(c[l>>2]|0)+524+(c[w>>2]<<1)>>1]=c[z>>2];b[(c[l>
x3e;2]|0)+12+(c[w>>2]<<1)>>1]=b[(c[(c[m>>2]|0)+8>>2]|0)+(c[z>>2]<
;<1)>>1]|0}c[z>>2]=(c[z>>2]|0)+1}ge(c[p>>2]|0);break}case 1:{c[y>>2]=1;c[(
c[l>>2]|0)+8>>2]=0;c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[s>
x3e;2]|0)>>>0){E=30;break}c[w>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break
}c[B>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break}c[B>>2]=(c[B>>2
]|0)+1;if((c[B>>2]|0)>>>0>(c[(c[l>>2]|0)+8>>2]|0)>>>0)c[(c[l>
;>2]|0)+8>>2]=c[B>>2];c[A>>2]=c[y>>2];while(1){if((c[A>>2]|0)>>
x3e;0>=((c[B>>2]|0)+(c[y>>2]|0)|0)>>>0)break;if((c[w>>2]|0)>>>0
<256?(c[A>>2]|0)>>>0<(c[o>>2]|0)>>>0:0){b[(c[l>>2]|0)+524+(
c[w>>2]<<1)>>1]=c[A>>2];b[(c[l>>2]|0)+12+(c[w>>2]<<1)>
;>1]=b[(c[(c[m>>2]|0)+8>>2]|0)+(c[A>>2]<<1)>>1]|0}c[A>>2]=(c[A
x3e;>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1}c[z>>2]=(c[z>>2]|0)+1;c[y>>2]=(c[y>
;>2]|0)+(c[B>>2]|0)}if((E|0)==30){if((c[(c[l>>2]|0)+8>>2]|0)>>>0<=256)break
a;c[(c[l>>2]|0)+8>>2]=256;break a}else if((E|0)==58){E=c[t>>2]|0;i=F;return E|0}break}default:{c[
t>>2]=3;E=c[t>>2]|0;i=F;return E|0}}while(0);if(!(c[c[l>>2]>>2]&128)){E=c[t>
x3e;2]|0;i=F;return E|0}c[s>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=c[t>>2]|0;i
=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[s>>2]|0)>>
x3e;0){E=58;break}c[w>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break}b[x>>1]=
Pc(c[p>>2]|0,t)|0;if(c[t>>2]|0){E=58;break}b[(c[l>>2]|0)+12+(c[w>>2]<<1)>
x3e;1]=b[x>>1]|0;c[v>>2]=0;while(1){if((c[v>>2]|0)>>>0>=(c[o>>2]|0)
x3e;>>0)break;n=c[v>>2]|0;if((e[(c[(c[m>>2]|0)+8>>2]|0)+(c[v>>2]<<1)
x3e;>1]|0|0)==(e[x>>1]|0|0)){E=42;break}c[v>>2]=n+1}if((E|0)==42){E=0;b[(c[l>>2]|0)+524+(c[w
x3e;>2]<<1)>>1]=n}c[z>>2]=(c[z>>2]|0)+1}if((E|0)==58){E=c[t>>2]|0;i=F;return
E|0}return 0}function pi(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>
;2]=b;c[g>>2]=0;if((c[f>>2]|0)>>>0>(c[(c[d>>2]|0)+16>>2]|0)>>
;>0){g=c[g>>2]|0;i=h;return g|0}c[g>>2]=e[(c[(c[d>>2]|0)+12>>2]|0)+(c[f>>
2]<<1)>>1];g=c[g>>2]|0;i=h;return g|0}function qi(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+32|0;n=l+28|0;m=l+24|0;h=l+20|0;j=l+16|0;f=l+12|0;e=l+8|0;g=l+4|0;k=l;c[n>>2]=b;c[m>>2]=d;c
[h>>2]=(c[n>>2]|0)+20;c[j>>2]=c[(c[c[h>>2]>>2]|0)+28>>2];c[k>
x3e;2]=0;c[g>>2]=Zh(c[h>>2]|0,c[m>>2]|0,f,e)|0;if(c[g>>2]|0){n=c[k>>2]|0;i=l;return
n|0}c[k>>2]=bc(c[j>>2]|0,(c[e>>2]|0)+1|0,g)|0;if(!(c[g>>2]|0)){Ss(c[k>>2]|0,c
[f>>2]|0,c[e>>2]|0)|0;a[(c[k>>2]|0)+(c[e>>2]|0)>>0]=0}ji(c[h>>2]|0,f
);n=c[k>>2]|0;i=l;return n|0}function ri(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;e=h+12|0;c[
d>>2]=b;c[f>>2]=0;c[g>>2]=(cs(c[d>>2]|0)|0)+1;a[e>>0]=1;a:while(1){if(!(a[e>
;>0]|0))break;if((c[g>>2]|0)>=7?(a[(c[d>>2]|0)+6>>0]|0)==43:0){c[f>>2]=0;while
(1){if((c[f>>2]|0)>=6)break;if(!(65<=(a[(c[d>>2]|0)+(c[f>>2]|0)>>0]|0)?(a[(c[d
>>2]|0)+(c[f>>2]|0)>>0]|0)<=90:0))a[e>>0]=0;c[f>>2]=(c[f>>2]|0)+
1}if(!(a[e>>0]|0))continue;c[f>>2]=7;while(1){if((c[f>>2]|0)>=(c[g>>2]|0))continue
a;a[(c[d>>2]|0)+((c[f>>2]|0)-7)>>0]=a[(c[d>>2]|0)+(c[f>>2]|0)>>0]|0;
c[f>>2]=(c[f>>2]|0)+1}}a[e>>0]=0}i=h;return}function si(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;g=e+8|0;f=e+4|0;d=e;c[h>>2]=a;c[g>>2]=b;c[d>>2]=oe(c[h>>2]|0,c[g>
;>2]|0,f)|0;c[f>>2]=c[f>>2];i=e;return c[d>>2]|0}function ti(a){a=a|0;var b=0,d=0,e=0,f=0,g=0
,h=0;h=i;i=i+32|0;b=h+16|0;e=h+12|0;f=h+8|0;g=h+4|0;d=h;c[b>>2]=a;c[e>>2]=c[b>>2];if(!(c[e>
x3e;2]|0)){i=h;return}c[f>>2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[e>>2]|0)+532
x3e;>2];if(c[g>>2]|0)Va[c[(c[g>>2]|0)+12>>2]&63](c[e>>2]|0);c[d>>2]=
c[(c[e>>2]|0)+692>>2];if(!(c[d>>2]|0)){i=h;return}ui(c[d>>2]|0);Fb(c[f>>2]|0,c
[(c[e>>2]|0)+692>>2]|0);c[(c[e>>2]|0)+692>>2]=0;i=h;return}function ui(a){a=a|0;var b=0,
d=0,e=0,f=0;f=i;i=i+16|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;c[e>>2]=c[(c[b>>2]|0)+4>>2];li((c
[b>>2]|0)+84|0);li((c[b>>2]|0)+1208|0);li((c[b>>2]|0)+20|0);li((c[b>>2]|0)+1176|0);if((c
[(c[b>>2]|0)+1892>>2]|0)>>>0>0){c[d>>2]=0;while(1){a=c[e>>2]|0;if((c
[d>>2]|0)>>>0>=(c[(c[b>>2]|0)+1892>>2]|0)>>>0)break;vi(a,c[(c[b
>>2]|0)+1896+(c[d>>2]<<2)>>2]|0);c[d>>2]=(c[d>>2]|0)+1}Fb(a,c[(c[b
x3e;>2]|0)+1896>>2]|0);c[(c[b>>2]|0)+1896>>2]=0}wi((c[b>>2]|0)+116|0);xi((c[b>
x3e;2]|0)+1152|0,c[c[b>>2]>>2]|0);vi(c[e>>2]|0,(c[b>>2]|0)+1324|0);zi((c[b>>2]|
0)+2024|0,c[c[b>>2]>>2]|0);Fb(c[e>>2]|0,c[(c[b>>2]|0)+2060>>2]|0);c[(c[b>
x3e;2]|0)+2060>>2]=0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1304>>2]|0);c[(c[b>>2]|0)+1304
>>2]=0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1308>>2]|0);c[(c[b>>2]|0)+1308>>2]=
0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1316>>2]|0);c[(c[b>>2]|0)+1316>>2]=0;Fb(c[e>
x3e;2]|0,c[(c[b>>2]|0)+1320>>2]|0);c[(c[b>>2]|0)+1320>>2]=0;i=f;return}function vi(a,b){
a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=f;return
}li((c[e>>2]|0)+532|0);Fb(c[d>>2]|0,c[(c[e>>2]|0)+564>>2]|0);c[(c[e>>2]|0)+564
>>2]=0;i=f;return}function wi(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]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+8>>2]=0;i=b;return}function xi(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)+28>>2];yi(c[e>>2]|0,c[f>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>
2]|0);c[(c[e>>2]|0)+8>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;i=
d;return}function yi(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;Fb(c[f>
;>2]|0,c[(c[e>>2]|0)+12>>2]|0);c[(c[e>>2]|0)+12>>2]=0;c[(c[e>>2]|0)+16>
;>2]=0;i=d;return}function zi(b,d){b=b|0;d=d|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]=d;if(c[(c[e>>2]|0)+8>>2]|0)fe(c[f>>2]|0,(c[e>>2]|0)+8|0);c[(c[e>>2]|0)+12
x3e;>2]=0;a[c[e>>2]>>0]=0;c[(c[e>>2]|0)+4>>2]=0;i=g;return}function Ai(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;o=i;i=i+240|0;k=o+232|0;n=o+228|0;l=o+224|0;e=o+220|0;b=o+216|0;d=o+212|0;m=o+208
|0;h=o+12|0;g=o+8|0;f=o+4|0;j=o;c[k>>2]=a;c[n>>2]=c[k>>2];c[l>>2]=0;c[e>>2]=Bi
(c[n>>2]|0)|0;do if(c[e>>2]|0){c[b>>2]=c[c[k>>2]>>2];c[d>>2]=c[(c[b
x3e;>2]|0)+692>>2];c[g>>2]=c[(c[c[k>>2]>>2]|0)+100>>2];c[m>>2]=
bc(c[g>>2]|0,132,l)|0;if(c[l>>2]|0){n=c[l>>2]|0;i=o;return n|0}Ci((c[d>>2]|0)+1324|0,h);
c[l>>2]=Oa[c[c[e>>2]>>2]&63](c[(c[c[k>>2]>>2]|0)+100>>2]|0,h,c[
m>>2]|0)|0;if(c[l>>2]|0){n=c[l>>2]|0;i=o;return n|0}c[f>>2]=c[(c[d>>2]|0)+1892
>>2];while(1){if((c[f>>2]|0)>>>0<=0){a=8;break}c[j>>2]=c[(c[d>>2]|0)+
1896+((c[f>>2]|0)-1<<2)>>2];Ci(c[j>>2]|0,h);c[l>>2]=Oa[c[c[e>>2]>
;>2]&63](c[(c[c[k>>2]>>2]|0)+100>>2]|0,h,(c[m>>2]|0)+4+((c[f>>2]|0)-
1<<2)|0)|0;if(c[l>>2]|0){a=10;break}c[f>>2]=(c[f>>2]|0)+-1}if((a|0)==8){c[(c[k>>
;2]|0)+40>>2]=c[m>>2];break}else if((a|0)==10){n=c[l>>2]|0;i=o;return n|0}}while(0);c[(c[n>
x3e;2]|0)+44>>2]=-1;n=c[l>>2]|0;i=o;return n|0}function Bi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=i;i=i+32|0
;f=e+16|0;h=e+12|0;g=e+8|0;d=e+4|0;b=e;c[f>>2]=a;c[h>>2]=c[c[f>>2]>>2];c[g>>2]=
c[(c[h>>2]|0)+692>>2];c[d>>2]=c[(c[g>>2]|0)+2052>>2];c[b>>2]=Wc(c[(c
[(c[c[f>>2]>>2]|0)+96>>2]|0)+4>>2]|0,11524)|0;if(!((c[b>>2]|0)!=0&(c[d>
;>2]|0)!=0)){h=0;i=e;return h|0}if(!(c[c[d>>2]>>2]|0)){h=0;i=e;return h|0}h=Ta[c[c[d>>2]>
;>2]&63](c[b>>2]|0)|0;i=e;return h|0}function Ci(d,e){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;l
=k+16|0;f=k+12|0;h=k+8|0;j=k+4|0;g=k;c[l>>2]=d;c[f>>2]=e;c[h>>2]=(c[l>>2]|0)+172;Ns(c[f
x3e;>2]|0,0,196)|0;d=a[c[h>>2]>>0]|0;a[(c[f>>2]|0)+8>>0]=d;c[g>>2]=d&
;255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break
;b[(c[f>>2]|0)+12+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+4+(c[j>>2]<<
;2)>>2];c[j>>2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|0)+1>>0]|0;a[(c[f>>2]|0)+
9>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c
[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+40+(c[j>>2]<<1)>>1]=c[(c[h>
;>2]|0)+60+(c[j>>2]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|
0)+2>>0]|0;a[(c[f>>2]|0)+10>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if((c[
j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+60+(c[j>
x3e;2]<<1)>>1]=c[(c[h>>2]|0)+100+(c[j>>2]<<2)>>2];c[j>>2]=(
c[j>>2]|0)+1}l=a[(c[h>>2]|0)+3>>0]|0;a[(c[f>>2]|0)+11>>0]=l;c[g>>2]=
l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>
;0)break;b[(c[f>>2]|0)+88+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+156+(c[j>>2
]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}c[(c[f>>2]|0)+108>>2]=c[(c[h>
x3e;2]|0)+196>>2];c[(c[f>>2]|0)+112>>2]=c[(c[h>>2]|0)+200>>2];c[(c[f>>
;2]|0)+116>>2]=c[(c[h>>2]|0)+204>>2];b[(c[f>>2]|0)+120>>1]=c[(c[h>>2
]|0)+208>>2];b[(c[f>>2]|0)+122>>1]=c[(c[h>>2]|0)+212>>2];l=a[(c[h>>2
]|0)+216>>0]|0;a[(c[f>>2]|0)+124>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if
((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+128+(c[j
x3e;>2]<<1)>>1]=c[(c[h>>2]|0)+220+(c[j>>2]<<2)>>2];c[j>>
;2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|0)+217>>0]|0;a[(c[f>>2]|0)+125>>0]=l;c[g>
x3e;2]=l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>
;>0)break;b[(c[f>>2]|0)+154+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+272+(c[j>
x3e;2]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}a[(c[f>>2]|0)+126>>0]=a[(c[h>
;>2]|0)+324>>0]|0;c[(c[f>>2]|0)+184>>2]=c[(c[h>>2]|0)+336>>2];c[(c[f>
;>2]|0)+4>>2]=c[(c[h>>2]|0)+332>>2];i=k;return}function Di(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h
=0,j=0,k=0;h=i;i=i+32|0;j=h+24|0;g=h+20|0;k=h+16|0;b=h+12|0;f=h+8|0;d=h+4|0;e=h;c[j>>2]=a;c[g>>2]=c[j>
x3e;2];c[k>>2]=c[c[g>>2]>>2];c[b>>2]=c[(c[k>>2]|0)+692>>2];c[f>
x3e;2]=c[(c[j>>2]|0)+40>>2];if(!(c[f>>2]|0)){i=h;return}c[d>>2]=Bi(c[g>>2]|0)|
0;if(!(c[d>>2]|0)){i=h;return}Va[c[(c[d>>2]|0)+8>>2]&63](c[c[f>>2]>>2]|0);
c[e>>2]=c[(c[b>>2]|0)+1892>>2];while(1){if((c[e>>2]|0)>>>0<=0)break;
Va[c[(c[d>>2]|0)+8>>2]&63](c[(c[f>>2]|0)+4+((c[e>>2]|0)-1<<2)>>
2]|0);c[e>>2]=(c[e>>2]|0)+-1}i=h;return}function Ei(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;g=i;i=i+32|0;b=
g+20|0;j=g+16|0;h=g+12|0;f=g+8|0;e=g+4|0;d=g;c[b>>2]=a;c[j>>2]=c[(c[b>>2]|0)+4>>2];c[h
x3e;>2]=c[(c[j>>2]|0)+692>>2];c[f>>2]=c[(c[h>>2]|0)+2052>>2];if(!(c[f>
;>2]|0)){i=g;return 0}c[e>>2]=Wc(c[(c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2]|0)+4>>
;2]|0,11524)|0;if(!(c[e>>2]|0)){i=g;return 0}c[d>>2]=Ta[c[(c[f>>2]|0)+8>>2]&63](c[e
>>2]|0)|0;c[(c[(c[b>>2]|0)+156>>2]|0)+36>>2]=c[d>>2];i=g;return 0}function Fi(
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)+156>>2]|0)+36>>2]=0;i=b
;return}function Gi(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o+
20|0;j=o+16|0;k=o+12|0;l=o+8|0;n=o+4|0;m=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[n
x3e;>2]=c[g>>2];c[m>>2]=c[h>>2];if(!(c[n>>2]|0)){c[f>>2]=37;n=c[f>
x3e;2]|0;i=o;return n|0}if(!(c[m>>2]|0))c[k>>2]=c[k>>2]|3;if(c[k>>2]&1|0)c[m>
x3e;2]=0;if(c[m>>2]|0?(c[c[h>>2]>>2]|0)!=(c[(c[g>>2]|0)+4>>2]|0):0){c[f>
x3e;2]=35;n=c[f>>2]|0;i=o;return n|0}c[l>>2]=Hi(c[n>>2]|0,c[m>>2]|0,c[j>>2]|0,
c[k>>2]|0)|0;c[f>>2]=c[l>>2];n=c[f>>2]|0;i=o;return n|0}function Hi(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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;V=i;i=i+1120|0;A=V+1092|0;B=V+1088|0;C=V+1084|0;x=V+1080|0;D=V+1076|0;I=V+1072|0;H=V+144
|0;J=V+140|0;O=V+1113|0;M=V+1112|0;r=V+136|0;K=V+120|0;L=V+112|0;k=V+108|0;m=V+104|0;n=V+100|0;l=V+1104|0;q=V+96|0;p=V+92|0;o=V+
1101|0;s=V+88|0;t=V+84|0;u=V+80|0;v=V+64|0;w=V+56|0;F=V+40|0;P=V+32|0;E=V+24|0;N=V+1100|0;z=V+1098|0;y=V+1096|0;Q=V+16|0;G=V+12|
0;R=V+8|0;S=V+4|0;T=V;c[B>>2]=f;c[C>>2]=g;c[x>>2]=h;c[D>>2]=j;c[J>>2]=c[(c[B
x3e;>2]|0)+4>>2];c[r>>2]=c[(c[J>>2]|0)+692>>2];a[M>>0]=0;if((c[(c[r>
x3e;2]|0)+1324+128>>2]|0)!=65535?c[(c[r>>2]|0)+1152+12>>2]|0:0){if(c[x>>2]|0?(c[x>
x3e;2]=pi((c[r>>2]|0)+1152|0,c[x>>2]|0)|0,(c[x>>2]|0)==0):0){c[A>>2]=6;U=c[A>>
2]|0;i=V;return U|0}}else U=6;if((U|0)==6?(c[x>>2]|0)>>>0>=(c[(c[r>>2]|0)+12>>
2]|0)>>>0:0){c[A>>2]=6;U=c[A>>2]|0;i=V;return U|0}if(c[D>>2]&1024|0)c[D>
x3e;2]=c[D>>2]|3;c[(c[B>>2]|0)+164>>2]=65536;c[(c[B>>2]|0)+168>>2]=65536;if(c[
C>>2]|0){c[(c[B>>2]|0)+164>>2]=c[(c[C>>2]|0)+12+4>>2];c[(c[B>>2]|0)+
168>>2]=c[(c[C>>2]|0)+12+8>>2]}if((((c[C>>2]|0?(c[k>>2]=c[c[C>>2]>
;>2],c[m>>2]=c[(c[k>>2]|0)+532>>2],c[n>>2]=c[(c[k>>2]|0)+104>>2
],(c[(c[C>>2]|0)+44>>2]|0)!=-1):0)?c[(c[m>>2]|0)+140>>2]|0:0)?(c[D>>2]&8|
0)==0:0)?(c[I>>2]=Na[c[(c[m>>2]|0)+104>>2]&1](c[J>>2]|0,c[(c[C>>2]|0)+44
x3e;>2]|0,c[x>>2]|0,c[D>>2]|0,c[n>>2]|0,(c[B>>2]|0)+76|0,l)|0,(c[I>>2]|0)==
0):0){b[(c[B>>2]|0)+108+2>>1]=0;b[(c[B>>2]|0)+108>>1]=0;c[(c[B>>2]|0)+24>
x3e;2]=d[l+1>>0]<<6;c[(c[B>>2]|0)+24+4>>2]=d[l>>0]<<6;c[(c[B>
x3e;2]|0)+24+8>>2]=a[l+2>>0]<<6;c[(c[B>>2]|0)+24+12>>2]=a[l+3>>0]<
;<6;c[(c[B>>2]|0)+24+16>>2]=d[l+4>>0]<<6;c[(c[B>>2]|0)+24+20>>2
]=a[l+5>>0]<<6;c[(c[B>>2]|0)+24+24>>2]=a[l+6>>0]<<6;c[(c[B>>
;2]|0)+24+28>>2]=d[l+7>>0]<<6;c[(c[B>>2]|0)+72>>2]=1651078259;if(c[D>>
;2]&16|0){c[(c[B>>2]|0)+100>>2]=a[l+5>>0];c[(c[B>>2]|0)+104>>2]=a[l+6>
;>0]}else{c[(c[B>>2]|0)+100>>2]=a[l+2>>0];c[(c[B>>2]|0)+104>>2]=a[l+3>
;>0]}c[A>>2]=c[I>>2];U=c[A>>2]|0;i=V;return U|0}if(c[D>>2]&16384|0){c[A>
x3e;2]=6;U=c[A>>2]|0;i=V;return U|0}k=c[r>>2]|0;if(c[(c[r>>2]|0)+1892>>2]|0){a[o>
x3e;0]=Ii(k+2024|0,c[x>>2]|0)|0;if((d[o>>0]|0)>>>0>=(c[(c[r>>2]|0)+1892>
x3e;2]|0)>>>0)a[o>>0]=(c[(c[r>>2]|0)+1892>>2]|0)-1;c[q>>2]=c[(c[r>
x3e;2]|0)+1324+64>>2];c[p>>2]=c[(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|
0)+64>>2];n=(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|0)+48|0;c[K>>2]=c[n
>>2];c[K+4>>2]=c[n+4>>2];c[K+8>>2]=c[n+8>>2];c[K+12>>2]=c[n+12>
x3e;2];o=(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|0)+68|0;c[L>>2]=c[o>>2
];c[L+4>>2]=c[o+4>>2];if((c[q>>2]|0)!=(c[p>>2]|0)){o=xb(c[(c[B>>2]|0)+164>
;>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[(c[B>>2]|0)+164>>2]=o;q=xb(c[(c[B>>2]|0)+
168>>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[(c[B>>2]|0)+168>>2]=q;a[M>>0]=1}}
else{q=k+1324+48|0;c[K>>2]=c[q>>2];c[K+4>>2]=c[q+4>>2];c[K+8>>2]=c[q+8>
x3e;2];c[K+12>>2]=c[q+12>>2];q=(c[r>>2]|0)+1324+68|0;c[L>>2]=c[q>>2];c[L+4>
;>2]=c[q+4>>2]}b[(c[B>>2]|0)+108+2>>1]=0;b[(c[B>>2]|0)+108>>1]=0;if(!(c[D
>>2]&1))k=(c[D>>2]&2|0)==0;else k=0;a[O>>0]=k&1;c[(c[B>>2]|0)+72>>
;2]=1869968492;Ji(H,c[J>>2]|0,c[C>>2]|0,c[B>>2]|0,a[O>>0]|0,c[D>>2]>>
;16&15);if(c[D>>2]&256|0)a[H+753>>0]=1;a[H+66>>0]=c[D>>2]&0;c[I>>
;2]=Mi(c[J>>2]|0,c[x>>2]|0,s,t)|0;do if(((c[I>>2]|0)==0?(c[I>>2]=Ni(H,c[C>>2]|
0,c[x>>2]|0)|0,(c[I>>2]|0)==0):0)?(c[I>>2]=Oi(H,c[s>>2]|0,c[t>>2]|0)|0,Yi(c[J
x3e;>2]|0,s,c[t>>2]|0),(c[I>>2]|0)==0):0){if(c[(c[(c[J>>2]|0)+128>>2]|0)+52>
x3e;2]|0){c[(c[B>>2]|0)+136>>2]=0;c[(c[B>>2]|0)+140>>2]=0;break}c[u>>2]=(c[r
x3e;>2]|0)+1176;if(c[(c[u>>2]|0)+24>>2]|0){c[(c[B>>2]|0)+136>>2]=(c[(c[u>>
;2]|0)+28>>2]|0)+(c[(c[(c[u>>2]|0)+24>>2]|0)+(c[x>>2]<<2)>>2]|0)+-1;
c[(c[B>>2]|0)+140>>2]=c[t>>2]}}while(0);if(!(c[I>>2]|0))Zi(H);if(((c[I>>2]|0)==
0?c[(c[(c[J>>2]|0)+128>>2]|0)+52>>2]|0:0)?c[(c[c[(c[(c[J>>2]|0)+128>>2]|0)+52
x3e;>2]>>2]|0)+8>>2]|0:0){c[v>>2]=c[H+32>>2];c[v+4>>2]=0;c[v+8>>
;2]=c[H+40>>2];c[v+12>>2]=c[H+40+4>>2];c[I>>2]=Wa[c[(c[c[(c[(c[J>>2]|0)+128>
;>2]|0)+52>>2]>>2]|0)+8>>2]&31](c[(c[(c[(c[J>>2]|0)+128>>2]|0)+52>
;>2]|0)+4>>2]|0,c[x>>2]|0,0,v)|0;c[H+32>>2]=c[v>>2];c[H+40>>2]=c[v+8>
;>2];c[H+40+4>>2]=c[v+12>>2]}do if(!(c[I>>2]|0)){k=c[B>>2]|0;if(c[D>>2]
x26;1024|0){c[w>>2]=c[k+156>>2];c[(c[B>>2]|0)+24+8>>2]=c[H+32>>2];c[(c[B>
x3e;2]|0)+24+16>>2]=c[H+744>>2];U=(c[w>>2]|0)+12|0;c[U>>2]=c[K>>2];c[U+4>
x3e;2]=c[K+4>>2];c[U+8>>2]=c[K+8>>2];c[U+12>>2]=c[K+12>>2];U=(c[w>>2
]|0)+28|0;c[U>>2]=c[L>>2];c[U+4>>2]=c[L+4>>2];a[(c[w>>2]|0)+8>>0]=1;
break}c[P>>2]=k+24;c[(c[P>>2]|0)+16>>2]=c[H+744>>2];c[(c[B>>2]|0)+56>>
;2]=c[H+744>>2];a[(c[(c[B>>2]|0)+156>>2]|0)+8>>0]=0;if(d[(c[J>>2]|0)+296>
x3e;0]|0?(e[(c[J>>2]|0)+300+34>>1]|0)>0:0)k=(c[(c[J>>2]|0)+300+36>>2]|0)!=0;else k=
0;a[N>>0]=k&1;do if(!(a[N>>0]|0)){k=c[J>>2]|0;if((e[(c[J>>2]|0)+368>>1]|0
)!=65535){c[(c[P>>2]|0)+28>>2]=(b[k+368+70>>1]|0)-(b[(c[J>>2]|0)+368+72>>1]|0);
break}else{c[(c[P>>2]|0)+28>>2]=(b[k+216+4>>1]|0)-(b[(c[J>>2]|0)+216+6>>1]|0);
break}}else{b[z>>1]=0;b[y>>1]=0;Za[c[(c[(c[J>>2]|0)+532>>2]|0)+156>>2]&31
](c[J>>2]|0,1,c[x>>2]|0,z,y)|0;c[(c[P>>2]|0)+24>>2]=b[z>>1];c[(c[P>>
2]|0)+28>>2]=e[y>>1]}while(0);c[(c[B>>2]|0)+60>>2]=c[(c[P>>2]|0)+28>>
;2];c[(c[B>>2]|0)+72>>2]=1869968492;c[(c[B>>2]|0)+108+16>>2]=0;if(c[C>>2]|0?(e
[(c[C>>2]|0)+12+2>>1]|0)<24:0){J=(c[B>>2]|0)+108+16|0;c[J>>2]=c[J>>2]|256
}J=(c[B>>2]|0)+108+16|0;c[J>>2]=c[J>>2]|4;do if((c[K>>2]|0)==65536?(c[K+12>>2]|
0)==65536:0){if(c[K+4>>2]|0){U=64;break}if(c[K+8>>2]|0)U=64}else U=64;while(0);if((U|0)==64)Kb((c[B>>
;2]|0)+108|0,K);if(!((c[L>>2]|0)==0?!(c[L+4>>2]|0):0))Nb((c[B>>2]|0)+108|0,c[L>>2]|0,c[L
+4>>2]|0);c[E>>2]=c[(c[P>>2]|0)+16>>2];c[E+4>>2]=0;Lb(E,K);c[(c[P>>2
]|0)+16>>2]=(c[E>>2]|0)+(c[L>>2]|0);c[E>>2]=0;c[E+4>>2]=c[(c[P>>2]|0
)+28>>2];Lb(E,K);c[(c[P>>2]|0)+28>>2]=(c[E+4>>2]|0)+(c[L+4>>2]|0);if(!((c[D>
;>2]&1|0)!=0?!(d[M>>0]|0):0)){c[G>>2]=(c[B>>2]|0)+108;c[R>>2]=c[(c[G>>
;2]|0)+4>>2];c[S>>2]=c[(c[B>>2]|0)+164>>2];c[T>>2]=c[(c[B>>2]|0)+168
>>2];if(!(a[O>>0]|0?(c[H+68>>2]|0)!=0:0))U=72;a:do if((U|0)==72){c[Q>>2]=b[(c[G>>
;2]|0)+2>>1];while(1){if((c[Q>>2]|0)<=0)break a;U=Mb(c[c[R>>2]>>2]|0,c[S>>
;2]|0)|0;c[c[R>>2]>>2]=U;U=Mb(c[(c[R>>2]|0)+4>>2]|0,c[T>>2]|0)|0;c[(c[R>
x3e;2]|0)+4>>2]=U;c[Q>>2]=(c[Q>>2]|0)+-1;c[R>>2]=(c[R>>2]|0)+8}}while(0);U=Mb(
c[(c[P>>2]|0)+16>>2]|0,c[S>>2]|0)|0;c[(c[P>>2]|0)+16>>2]=U;U=Mb(c[(c[P>
x3e;2]|0)+28>>2]|0,c[T>>2]|0)|0;c[(c[P>>2]|0)+28>>2]=U}_d((c[B>>2]|0)+108|0,F);
c[c[P>>2]>>2]=(c[F+8>>2]|0)-(c[F>>2]|0);c[(c[P>>2]|0)+4>>2]=(c[F+12
x3e;>2]|0)-(c[F+4>>2]|0);c[(c[P>>2]|0)+8>>2]=c[F>>2];c[(c[P>>2]|0)+12>
;>2]=c[F+12>>2];if(a[N>>0]|0){c[(c[P>>2]|0)+20>>2]=(c[(c[P>>2]|0)+8>
x3e;2]|0)-((c[(c[P>>2]|0)+16>>2]|0)/2|0);break}if(!(c[D>>2]&16))break;Bd(c[P>>2]|0,
c[(c[P>>2]|0)+28>>2]|0)}while(0);c[A>>2]=c[I>>2];U=c[A>>2]|0;i=V;return U|0}function
Ii(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;o=i;i=i+32|0;j=o+20|0;f=o+16|0;k=o+25|0;g=o+12|0;h=o+8|0;l=o+24|0;m
=o+4|0;n=o;c[j>>2]=b;c[f>>2]=e;a[k>>0]=0;switch(d[c[j>>2]>>0]|0|0){case 0:{a[k
>>0]=a[(c[(c[j>>2]|0)+8>>2]|0)+(c[f>>2]|0)>>0]|0;n=a[k>>0]|0;i=o;return
n|0}case 3:{b=c[j>>2]|0;if(((c[f>>2]|0)-(c[(c[j>>2]|0)+16>>2]|0)|0)>>>0
x3c;(c[(c[j>>2]|0)+20>>2]|0)>>>0){a[k>>0]=a[b+24>>0]|0;n=a[k>>0
]|0;i=o;return n|0}c[g>>2]=c[b+8>>2];c[h>>2]=(c[g>>2]|0)+(c[(c[j>>2]|0)+12>
;>2]|0);c[g>>2]=(c[g>>2]|0)+2;c[m>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[g>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;while(1){if((c[f>>
2]|0)>>>0<(c[m>>2]|0)>>>0){b=10;break}e=c[g>>2]|0;c[g>>2]=e+1;a
[l>>0]=a[e>>0]|0;c[g>>2]=(c[g>>2]|0)+2;c[n>>2]=(((d[(c[g>>2]|0)+-2
x3e;>0]|0)&65535)<<8|((d[(c[g>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if
((c[f>>2]|0)>>>0<(c[n>>2]|0)>>>0){b=8;break}c[m>>2]=c[n>
x3e;2];if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>>0){b=10;break}}if((b|0)==8){a[k
x3e;>0]=a[l>>0]|0;c[(c[j>>2]|0)+16>>2]=c[m>>2];c[(c[j>>2]|0)+20>>
;2]=(c[n>>2]|0)-(c[m>>2]|0);a[(c[j>>2]|0)+24>>0]=a[l>>0]|0;n=a[k>>0]|
0;i=o;return n|0}else if((b|0)==10){n=a[k>>0]|0;i=o;return n|0}break}default:{n=a[k>>0]|0;i=o;return n|0}}return
0}function Ji(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;j=i;i=i+32|0;k=j+20|0;q=j+16
|0;p=j+12|0;o=j+8|0;n=j+24|0;l=j+4|0;m=j;c[k>>2]=b;c[q>>2]=d;c[p>>2]=e;c[o>>2]=f;a[n>
;>0]=g;c[l>>2]=h;c[m>>2]=c[(c[q>>2]|0)+692>>2];Ns(c[k>>2]|0,0,928)|0;Ki(c
[k>>2]|0,c[q>>2]|0,c[p>>2]|0,c[o>>2]|0,a[n>>0]|0);c[(c[k>>2]|0)+76
x3e;>2]=c[m>>2];c[(c[k>>2]|0)+892>>2]=c[(c[m>>2]|0)+84+8>>2];c[(c[k>
x3e;2]|0)+908>>2]=c[(c[m>>2]|0)+1308>>2];f=Li(c[(c[m>>2]|0)+1324+44>>2]|0,c[(c
[k>>2]|0)+892>>2]|0)|0;c[(c[k>>2]|0)+900>>2]=f;c[(c[k>>2]|0)+920>>2]=
c[l>>2];i=j;return}function Ki(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;p=i;i=i+32
|0;j=p+20|0;q=p+16|0;k=p+12|0;l=p+8|0;m=p+24|0;o=p+4|0;n=p;c[j>>2]=b;c[q>>2]=e;c[k>>2]=f;c[l>
x3e;2]=g;a[m>>0]=h;a[(c[j>>2]|0)+64>>0]=0;a[(c[j>>2]|0)+65>>0]=1;c[(c[j>
x3e;2]|0)+4>>2]=c[q>>2];c[(c[j>>2]|0)+8>>2]=c[l>>2];c[c[j>>2]>
x3e;2]=c[(c[q>>2]|0)+100>>2];if(c[l>>2]|0?(c[o>>2]=c[c[(c[l>>2]|0)+156>
x3e;2]>>2],c[(c[j>>2]|0)+12>>2]=c[o>>2],c[(c[j>>2]|0)+16>>2]=(c[o>
;>2]|0)+20,c[(c[j>>2]|0)+20>>2]=(c[o>>2]|0)+56,dc(c[o>>2]|0),c[(c[j>>2]|0
)+72>>2]=0,c[(c[j>>2]|0)+68>>2]=0,(d[m>>0]|0|0)!=0&(c[k>>2]|0)!=0):0){c[n
>>2]=c[(c[k>>2]|0)+40>>2];c[(c[j>>2]|0)+72>>2]=c[c[n>>2]>>
2];c[(c[j>>2]|0)+68>>2]=c[(c[(c[l>>2]|0)+156>>2]|0)+36>>2]}c[(c[j>>2
]|0)+24>>2]=0;c[(c[j>>2]|0)+28>>2]=0;c[(c[j>>2]|0)+32>>2]=0;c[(c[j>>
2]|0)+32+4>>2]=0;c[(c[j>>2]|0)+40>>2]=0;c[(c[j>>2]|0)+40+4>>2]=0;i=p;return}function
Li(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[d>>2]=b;do if((c[g>
;>2]|0)!=1){if((c[d>>2]|0)>>>0<1240){c[e>>2]=107;break}if((c[d>>2]|0)>
;>>0<33900){c[e>>2]=1131;break}else{c[e>>2]=32768;break}}else c[e>>2]=0;while(0);i=
f;return c[e>>2]|0}function Mi(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;o=i;i=i+48|0;f
=o+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;m=o+8|0;n=o+4|0;l=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k
x3e;>2]=e;a=c[g>>2]|0;if(c[(c[(c[g>>2]|0)+128>>2]|0)+52>>2]|0){c[n>>2]=Oa
[c[c[c[(c[a+128>>2]|0)+52>>2]>>2]>>2]&63](c[(c[(c[(c[g>>2]|0)+128>
x3e;2]|0)+52>>2]|0)+4>>2]|0,c[h>>2]|0,m)|0;c[c[j>>2]>>2]=c[m>>2];c[c
[k>>2]>>2]=c[m+4>>2];c[f>>2]=c[n>>2];n=c[f>>2]|0;i=o;return n|0}else
{c[l>>2]=c[a+692>>2];c[f>>2]=Zh((c[l>>2]|0)+1176|0,c[h>>2]|0,c[j>>2]|
0,c[k>>2]|0)|0;n=c[f>>2]|0;i=o;return n|0}return 0}function Ni(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;q=i;i=i+48|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;l=q+12|0;p=q+8|0;m=q+4|0;n=q+32|0;o=q;c[g>>2]=
b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=c[g>>2];c[l>>2]=c[(c[(c[k>>2]|0)+4>
;>2]|0)+692>>2];c[p>>2]=(c[l>>2]|0)+1324;c[m>>2]=0;do if(c[(c[l>>2]|0)+1892
>>2]|0){a[n>>0]=Ii((c[l>>2]|0)+2024|0,c[j>>2]|0)|0;if((d[n>>0]|0)>>
x3e;0>=(c[(c[l>>2]|0)+1892>>2]|0)>>>0){c[m>>2]=3;p=c[m>>2]|0;i=q;return
p|0}else{c[p>>2]=c[(c[l>>2]|0)+1896+((d[n>>0]|0)<<2)>>2];if(!(c[h>>
2]|0?(c[(c[k>>2]|0)+68>>2]|0)!=0:0))break;c[o>>2]=c[(c[h>>2]|0)+40>>2];c[(c[k
x3e;>2]|0)+72>>2]=c[(c[o>>2]|0)+4+((d[n>>0]|0)<<2)>>2];break}}while(0);c[(
c[g>>2]|0)+888>>2]=c[(c[p>>2]|0)+532+8>>2];c[(c[g>>2]|0)+904>>2]=c[(
c[p>>2]|0)+564>>2];e=Li(c[(c[(c[g>>2]|0)+76>>2]|0)+1324+44>>2]|0,c[(c[g>
x3e;2]|0)+888>>2]|0)|0;c[(c[g>>2]|0)+896>>2]=e;c[(c[g>>2]|0)+744>>2]=c[(c[p>
;>2]|0)+172+352>>2];c[(c[g>>2]|0)+748>>2]=c[(c[p>>2]|0)+172+356>>2];p=c[m
>>2]|0;i=q;return p|0}function Oi(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,$=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;ta=i;i=i+272|0;h=
ta+256|0;j=ta+252|0;va=ta+248|0;ua=ta+244|0;y=ta+240|0;ra=ta+236|0;K=ta+232|0;L=ta+228|0;m=ta+224|0;pa=ta+220|0;qa=ta+216|0;$=ta
+212|0;ca=ta+208|0;n=ta+204|0;A=ta+200|0;W=ta+196|0;la=ta+260|0;ba=ta+192|0;ma=ta+188|0;l=ta+184|0;T=ta+180|0;Z=ta+176|0;aa=ta+172
|0;X=ta+168|0;M=ta+164|0;N=ta+160|0;O=ta+156|0;Y=ta+152|0;P=ta+148|0;V=ta+144|0;Q=ta+140|0;U=ta+136|0;R=ta+132|0;ea=ta+128|0;fa=
ta+124|0;da=ta+120|0;ga=ta+116|0;w=ta+112|0;x=ta+108|0;B=ta+104|0;s=ta+100|0;ha=ta+96|0;v=ta+92|0;z=ta+88|0;k=ta+84|0;t=ta+80|0;
_=ta+76|0;S=ta+72|0;ia=ta+68|0;E=ta+64|0;u=ta+60|0;F=ta+56|0;ja=ta+52|0;C=ta+48|0;ka=ta+44|0;D=ta+40|0;na=ta+36|0;G=ta+32|0;H=ta
+28|0;oa=ta+24|0;o=ta+20|0;p=ta+16|0;q=ta+12|0;r=ta+8|0;I=ta+4|0;J=ta;c[j>>2]=e;c[va>>2]=f;c[ua>>2
]=g;c[m>>2]=c[j>>2];c[n>>2]=c[(c[(c[j>>2]|0)+76>>2]|0)+1324+44>>2];c
[(c[j>>2]|0)+756>>2]=0;a[(c[j>>2]|0)+752>>0]=1;c[$>>2]=$^j^va;e=(c[$>>
;2]^c[$>>2]>>10^c[$>>2]>>20)&65535;c[$>>2]=e;c[$>>2]=(c[$>
x3e;2]|0)==0?29572:e;c[(c[j>>2]|0)+276>>2]=(c[j>>2]|0)+80;c[(c[j>>2]|0)+676>>2
]=(c[j>>2]|0)+280;c[ra>>2]=(c[j>>2]|0)+280;c[ca>>2]=c[(c[j>>2]|0)+276>>
;2];c[A>>2]=c[(c[m>>2]|0)+68>>2];a[(c[m>>2]|0)+64>>0]=0;c[c[ra>>2]
x3e;>2]=c[va>>2];e=(c[va>>2]|0)+(c[ua>>2]|0)|0;c[(c[ra>>2]|0)+4>>2]=e;c[L
>>2]=e;e=c[c[ra>>2]>>2]|0;c[(c[ra>>2]|0)+8>>2]=e;c[K>>2]=e;c[y>
x3e;2]=0;c[pa>>2]=c[(c[m>>2]|0)+24>>2];c[qa>>2]=c[(c[m>>2]|0)+28>>2];
if(c[A>>2]|0)Va[c[(c[A>>2]|0)+4>>2]&63](c[c[A>>2]>>2]|0);a:while(1){if((c
[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0){sa=307;break}va=c[K>>2]|0;c[K
x3e;>2]=va+1;a[la>>0]=a[va>>0]|0;if((d[la>>0]|0)<32?(d[la>>0]|0)!=28:0){c[l>
;>2]=c[(c[j>>2]|0)+276>>2];c[T>>2]=((c[l>>2]|0)-((c[j>>2]|0)+80)|0)/4|0;c
[W>>2]=0;b:do switch(d[la>>0]|0){case 1:{c[W>>2]=19;break}case 3:{c[W>>2]=20;break}case
4:{c[W>>2]=3;break}case 5:{c[W>>2]=4;break}case 6:{c[W>>2]=5;break}case 7:{c[W>>2]=6;break
}case 8:{c[W>>2]=7;break}case 9:{c[W>>2]=53;break}case 10:{c[W>>2]=49;break}case 11:{c[W>>
;2]=51;break}case 12:{if((c[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0)break a;va=c[K
x3e;>2]|0;c[K>>2]=va+1;a[la>>0]=a[va>>0]|0;do switch(d[la>>0]|0){case 0:{c[W>
x3e;2]=25;break b}case 1:{c[W>>2]=20;break b}case 2:{c[W>>2]=19;break b}case 3:{c[W>>2]=44;break b
}case 4:{c[W>>2]=45;break b}case 5:{c[W>>2]=46;break b}case 6:{c[W>>2]=56;break b}case 7:{c[W>
;>2]=57;break b}case 8:{c[W>>2]=42;break b}case 9:{c[W>>2]=26;break b}case 10:{c[W>>2]=27;break
b}case 11:{c[W>>2]=28;break b}case 12:{c[W>>2]=29;break b}case 13:{c[W>>2]=43;break b}case 14:{c[
W>>2]=30;break b}case 15:{c[W>>2]=47;break b}case 16:{c[W>>2]=54;break b}case 17:{c[W>>2
]=55;break b}case 18:{c[W>>2]=35;break b}case 20:{c[W>>2]=40;break b}case 21:{c[W>>2]=41;break b}case
22:{c[W>>2]=48;break b}case 23:{c[W>>2]=31;break b}case 24:{c[W>>2]=32;break b}case 26:{c[W>
x3e;2]=33;break b}case 27:{c[W>>2]=39;break b}case 28:{c[W>>2]=36;break b}case 29:{c[W>>2]=37;break
b}case 30:{c[W>>2]=38;break b}case 33:{c[W>>2]=58;break b}case 34:{c[W>>2]=15;break b}case 35:{c[
W>>2]=14;break b}case 36:{c[W>>2]=16;break b}case 37:{c[W>>2]=17;break b}default:{c[K>>2
]=(c[K>>2]|0)+-1;break b}}while(0)}case 13:{c[W>>2]=52;break}case 14:{c[W>>2]=18;break}case 16:{c[
W>>2]=34;break}case 18:{c[W>>2]=21;break}case 19:{c[W>>2]=23;break}case 20:{c[W>>2]=24;break
}case 21:{c[W>>2]=1;break}case 22:{c[W>>2]=2;break}case 23:{c[W>>2]=22;break}case 24:{c[W>>
;2]=10;break}case 25:{c[W>>2]=11;break}case 26:{c[W>>2]=13;break}case 27:{c[W>>2]=8;break}case 29:{
c[W>>2]=50;break}case 30:{c[W>>2]=12;break}case 31:{c[W>>2]=9;break}default:{}}while(0);if(!(c[W
x3e;>2]|0))break;c[Z>>2]=d[11281+(c[W>>2]|0)>>0];if(c[Z>>2]&128|0){if((c[T>
;>2]|0)>0?d[(c[j>>2]|0)+752>>0]|0:0){switch(c[W>>2]|0){case 3:case 2:{c[aa>>2]=
c[T>>2]&2;break}case 24:case 23:case 1:case 22:case 21:case 20:case 19:{c[aa>>2]=c[T>>2]&
;1;break}case 18:{c[aa>>2]=((c[T>>2]|0)==5?1:(c[T>>2]|0)==1)&1;break}default:c[aa>>
2]=0}if(c[aa>>2]|0){c[(c[j>>2]|0)+744>>2]=(c[(c[j>>2]|0)+748>>2]|0)+(c[c[ca>
;>2]>>2]>>16);if(a[(c[j>>2]|0)+753>>0]|0){sa=307;break}c[T>>2]=(c[T>
x3e;2]|0)+-1}}a[(c[j>>2]|0)+752>>0]=0;c[Z>>2]=0}c[Z>>2]=c[Z>>2]&15;if((c[
T>>2]|0)<(c[Z>>2]|0)){sa=309;break}c[l>>2]=(c[l>>2]|0)+(0-(c[Z>>2]|0)<
;<2);c[T>>2]=(c[T>>2]|0)-(c[Z>>2]|0);do switch(c[W>>2]|0){case 56:{sa=220;break a}case
18:{sa=221;break a}case 22:case 21:case 20:case 19:{if(c[A>>2]|0)_a[c[(c[A>>2]|0)+12>>2]&15](
c[c[A>>2]>>2]|0,((c[W>>2]|0)==19?1:(c[W>>2]|0)==21)&1,(c[T>>2]|0)/2|0,(c[
l>>2]|0)+(0-(c[T>>2]&-2)<<2)|0);va=(c[j>>2]|0)+756|0;c[va>>2]=(c[va>
x3e;2]|0)+((c[T>>2]|0)/2|0);c[l>>2]=c[ca>>2];break}case 24:case 23:{if((c[T>>2]|0)>
0){if(c[A>>2]|0)_a[c[(c[A>>2]|0)+12>>2]&15](c[c[A>>2]>>2]|0,0,(c[T>
x3e;2]|0)/2|0,(c[l>>2]|0)+(0-(c[T>>2]&-2)<<2)|0);va=(c[j>>2]|0)+756|0;c[va>>
;2]=(c[va>>2]|0)+((c[T>>2]|0)/2|0)}if(((c[K>>2]|0)+((c[(c[j>>2]|0)+756>>2]|0)+
7>>3)|0)>>>0>=(c[L>>2]|0)>>>0)break a;do if(c[A>>2]|0){f=c[A>
;>2]|0;if((c[W>>2]|0)==23){_a[c[f+16>>2]&15](c[c[A>>2]>>2]|0,b[(c[(c[m>
x3e;2]|0)+20>>2]|0)+2>>1]|0,c[(c[j>>2]|0)+756>>2]|0,c[K>>2]|0);break}else{Ua[c
[f+20>>2]&31](c[c[A>>2]>>2]|0,c[(c[j>>2]|0)+756>>2]|0,c[K>>2]|0
);break}}while(0);c[K>>2]=(c[K>>2]|0)+((c[(c[j>>2]|0)+756>>2]|0)+7>>3);c[l>
;>2]=c[ca>>2];break}case 1:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64>>0]=0;c[pa>>2]=(
c[pa>>2]|0)+(c[(c[l>>2]|0)+-8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>
2]|0)+-4>>2]|0);c[l>>2]=c[ca>>2];break}case 3:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64
x3e;>0]=0;c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+-4>>2]|0);c[l>>2]=c[ca>
;>2];break}case 2:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64>>0]=0;c[pa>>2]=(c[pa>>2
]|0)+(c[(c[l>>2]|0)+-4>>2]|0);c[l>>2]=c[ca>>2];break}case 4:{if(Qi(c[m>>2]|0,c
[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[T>>2]|0)/2|0)|0){sa=307;break
a}if((c[T>>2]|0)<2){sa=309;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[T>>2]&-2)<
x3c;2);while(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>
;0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|
0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>
;2]=(c[l>>2]|0)+8}c[l>>2]=c[ca>>2];break}case 6:case 5:{c[X>>2]=(c[W>>2]|0)==5
&1;if((c[T>>2]|0)<1){sa=309;break a}if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){
sa=307;break a}if(Ti(c[m>>2]|0,c[T>>2]|0)|0){sa=307;break a}c[l>>2]=c[ca>>2];while(1){if
((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;f=c[c[l
x3e;>2]>>2]|0;if(c[X>>2]|0)c[pa>>2]=(c[pa>>2]|0)+f;else c[qa>>2]=(c[qa>
;>2]|0)+f;if(Si(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>
;>2]|0)+4;c[X>>2]=c[X>>2]^1}c[l>>2]=c[ca>>2];break}case 7:{if((c[T>>2]|0)
x3c;6){sa=309;break a}c[M>>2]=(c[T>>2]|0)-((c[T>>2]|0)%6|0);if(Qi(c[m>>2]|0,c[pa>
x3e;2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[M>>2]|0)/2|0)|0){sa=307;break a}c[l>
;>2]=(c[l>>2]|0)+(0-(c[M>>2]|0)<<2);while(1){if((c[l>>2]|0)>>>0>
;=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>
x3e;2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>
2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>
;2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>
x3e;2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>
;>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0,1);c[l>>2]=(c[l>>2]|0)+24}c[l>>2]=c[ca>>2];break}case 13:{if((c[T>
x3e;2]|0)<4){sa=309;break a}c[N>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0)-(
c[N>>2]|0)|0)>0)c[N>>2]=(c[N>>2]|0)+1;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[N>>2]|0)<<2);if(c[N>>
2]&1|0){c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2
]|0)+4;c[N>>2]=(c[N>>2]|0)+-1}if(Ti(c[m>>2]|0,((c[N>>2]|0)/4|0)*3|0)|0){sa=307;break a}while
(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;c[qa
>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>
;>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[qa
>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c
[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+16}c[l>>2]=c[ca>>2];break}case 8:{if((c[T>
;>2]|0)<4){sa=309;break a}c[O>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0
)-(c[O>>2]|0)|0)>0)c[O>>2]=(c[O>>2]|0)+1;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[O>>2]|0)<<2);if(c[O>>
;2]&1|0){c[qa>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>
2]|0)+4;c[O>>2]=(c[O>>2]|0)+-1}if(Ti(c[m>>2]|0,((c[O>>2]|0)/4|0)*3|0)|0){sa=307;break a}
while(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break
;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa
>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[
qa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0
,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+16}c[l>>2]=c[ca>>2];break}case 9:case
12:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if((c[T>>2]|0)<4){sa=309
;break a}c[P>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0)-(c[P>>2]|0)|0)
x3e;0)c[P>>2]=(c[P>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+(0-(c[P>>2]|0)<<2);if
(Ti(c[m>>2]|0,((c[P>>2]|0)/4|0)*3|0)|0){sa=309;break a}c[Y>>2]=(c[W>>2]|0)==9&1;while
(1){if((c[P>>2]|0)<4)break;c[P>>2]=(c[P>>2]|0)-4;f=c[c[l>>2]>>2]|0;if(c[Y
>>2]|0){c[pa>>2]=(c[pa>>2]|0)+f;Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0
);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0
)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[qa>>
;2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);if((c[P>>2]|0)==1)c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1)}else
{c[qa>>2]=(c[qa>>2]|0)+f;Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>
;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
x3e;2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
x3e;2]|0)+(c[(c[l>>2]|0)+12>>2]|0);if((c[P>>2]|0)==1)c[qa>>2]=(c[qa>>2]|0)+(c[(
c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1)}c[l>>2]=(
c[l>>2]|0)+16;c[Y>>2]=c[Y>>2]^1}c[l>>2]=c[ca>>2];break}case 11:{if((c[T>
x3e;2]|0)<8){sa=309;break a}c[Q>>2]=c[T>>2]&-2;c[V>>2]=((c[Q>>2]|0)-6|0)/2|0;if
(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[V>>2
]|0)+3|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[Q>>2]|0)<<2);while(1){va=(c[V>
;>2]|0)>0;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>
;>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);f=c[m>>2]|0;g=c[pa>>2]|0;e=c[qa>>2]|0;if(!
va)break;Ui(f,g,e,1);c[l>>2]=(c[l>>2]|0)+8;c[V>>2]=(c[V>>2]|0)+-1}Ui(f,g,e,0);c[pa>
x3e;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
;>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20
x3e;>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case
10:{if((c[T>>2]|0)<8){sa=309;break a}c[R>>2]=(c[T>>2]|0)-2;c[R>>2]=(c[R>>
;2]|0)-((c[R>>2]|0)%6|0)+2;c[U>>2]=((c[R>>2]|0)-2|0)/6|0;if(Qi(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,((c[U>>2]|0)*3|0)+2|0)|0){sa=307;break a}c[l
x3e;>2]=(c[l>>2]|0)+(0-(c[R>>2]|0)<<2);while(1){va=(c[U>>2]|0)>0;c[pa>>
;2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|
0)+4>>2]|0);f=c[m>>2]|0;g=c[pa>>2]|0;e=c[qa>>2]|0;if(!va)break;Ui(f,g,e,0);c[pa>>
;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
x3e;2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
x3e;2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20>
;>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+24;c[U
x3e;>2]=(c[U>>2]|0)+-1}Ui(f,g,e,1);c[l>>2]=c[ca>>2];break}case 16:{if(Qi(c[m>>2]|0,
c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;break a}c[ea>>2]=c
[qa>>2];c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>
x3e;2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa
x3e;>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[
l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c
[pa>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|
0,1);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);Ui(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0);c[qa>
x3e;2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+28>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+32>>2]|0);c[qa>>2]=c[ea>
;>2];Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 15
:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;
break a}c[fa>>2]=c[qa>>2];c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);Ui
(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2
]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>
2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+12>>
;2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>
;>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);c[qa>>2]=c[fa>>2];Ui(c[m>>2]|0,c[pa>
;>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0);Ui(c[
m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 17:{c[w>>
;2]=0;c[x>>2]=0;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>
x3e;2]|0,6)|0){sa=307;break a}c[da>>2]=c[pa>>2];c[ga>>2]=c[qa>>2];c[ha>>2]=c[l
>>2];c[s>>2]=5;while(1){if((c[s>>2]|0)<=0)break;c[w>>2]=(c[w>>2]|0)+(c[c[
ha>>2]>>2]|0);c[x>>2]=(c[x>>2]|0)+(c[(c[ha>>2]|0)+4>>2]|0);c[ha>
;>2]=(c[ha>>2]|0)+8;c[s>>2]=(c[s>>2]|0)+-1}if((c[w>>2]|0)<0)c[w>>2]=
0-(c[w>>2]|0);if((c[x>>2]|0)<0)c[x>>2]=0-(c[x>>2]|0);c[B>>2]=(c[w>
x3e;2]|0)>(c[x>>2]|0)&1;c[s>>2]=5;while(1){if((c[s>>2]|0)<=0)break;c[pa>>
2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|
0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,(c[s>>2]|0)==3&255);c[l>
;>2]=(c[l>>2]|0)+8;c[s>>2]=(c[s>>2]|0)+-1}if(c[B>>2]|0){c[pa>>2]=(c[pa>
;>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=c[ga>>2]}else{c[pa>>2]=c[da>>
;2];c[qa>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0)}Ui(c[m>>2]|0,c[pa>>2]|0,
c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 14:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;break a}c[v>>2]=6;while(1){if((c[v>>
;2]|0)>>>0<=0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>
;>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,((c[v>>2]|0)==4?1:(c[v>>2]|0)==1)&1);c[l>>2]=(c[l>>2]|0)+8;c[v>>
;2]=(c[v>>2]|0)+-1}c[l>>2]=c[ca>>2];break}case 26:{if((c[c[l>>2]>>2]|0)<0
)c[c[l>>2]>>2]=0-(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case
27:{va=c[l>>2]|0;c[va>>2]=(c[va>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>
2]=(c[l>>2]|0)+4;break}case 28:{va=c[l>>2]|0;c[va>>2]=(c[va>>2]|0)-(c[(c[l>>2]|
0)+4>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case 29:{va=Vb(c[c[l>>2]>>2]|0,c[(c[l
x3e;>2]|0)+4>>2]|0)|0;c[c[l>>2]>>2]=va;c[l>>2]=(c[l>>2]|0)+4;break}case 30
:{c[c[l>>2]>>2]=0-(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case
31:{c[k>>2]=c[$>>2];if((c[k>>2]|0)>=32768)c[k>>2]=(c[k>>2]|0)+1;c[c[l>
;>2]>>2]=c[k>>2];c[$>>2]=Mb(c[$>>2]|0,65536-(c[$>>2]|0)|0)|0;if(!(c[$>
;>2]|0))c[$>>2]=(c[$>>2]|0)+10355;c[l>>2]=(c[l>>2]|0)+4;break}case 32:{va=Mb(c[c[l
x3e;>2]>>2]|0,c[(c[l>>2]|0)+4>>2]|0)|0;c[c[l>>2]>>2]=va;c[l>>2]=(
c[l>>2]|0)+4;break}case 33:{if((c[c[l>>2]>>2]|0)>0){c[t>>2]=9;c[_>>2]=c[c
[l>>2]>>2];while(1){f=c[_>>2]|0;c[S>>2]=f+(Vb(c[c[l>>2]>>2]|0,c[_>
;>2]|0)|0)+1>>1;f=c[S>>2]|0;if((c[t>>2]|0)<=0?1:(c[S>>2]|0)==(c[_>>2
]|0))break;c[_>>2]=f}c[c[l>>2]>>2]=f}else c[c[l>>2]>>2]=0;c[l>>2]=(c
[l>>2]|0)+4;break}case 25:case 35:break;case 36:{c[ia>>2]=c[c[l>>2]>>2];c[c[l>>
;2]>>2]=c[(c[l>>2]|0)+4>>2];c[(c[l>>2]|0)+4>>2]=c[ia>>2];c[l>
x3e;2]=(c[l>>2]|0)+8;break}case 37:{c[E>>2]=c[c[l>>2]>>2]>>16;if((c[E>>
;2]|0)>=0){if((c[E>>2]|0)>((c[T>>2]|0)-2|0))c[E>>2]=(c[T>>2]|0)-2}else c[E>
;>2]=0;c[c[l>>2]>>2]=c[(c[l>>2]|0)+(0-((c[E>>2]|0)+1)<<2)>>2];c
[l>>2]=(c[l>>2]|0)+4;break}case 38:{c[u>>2]=c[c[l>>2]>>2]>>16;c[F>
;>2]=c[(c[l>>2]|0)+4>>2]>>16;if((c[u>>2]|0)<=0)c[u>>2]=1;c[l>
x3e;2]=(c[l>>2]|0)+(0-(c[u>>2]|0)<<2);if((c[l>>2]|0)>>>0<(c[ca>
x3e;2]|0)>>>0){sa=309;break a}c:do if((c[F>>2]|0)>=0)while(1){if((c[F>>2]|0)<=0)break
c;c[ja>>2]=c[(c[l>>2]|0)+((c[u>>2]|0)-1<<2)>>2];c[C>>2]=(c[u>
x3e;2]|0)-2;while(1){if((c[C>>2]|0)<0)break;c[(c[l>>2]|0)+((c[C>>2]|0)+1<<2)>
x3e;2]=c[(c[l>>2]|0)+(c[C>>2]<<2)>>2];c[C>>2]=(c[C>>2]|0)+-1}c[c[l
x3e;>2]>>2]=c[ja>>2];c[F>>2]=(c[F>>2]|0)+-1}else while(1){if((c[F>>2]|0)
x3e;=0)break c;c[ka>>2]=c[c[l>>2]>>2];c[D>>2]=0;while(1){if((c[D>>2]|0)>=((
c[u>>2]|0)-1|0))break;c[(c[l>>2]|0)+(c[D>>2]<<2)>>2]=c[(c[l>>2]|0)+((
c[D>>2]|0)+1<<2)>>2];c[D>>2]=(c[D>>2]|0)+1}c[(c[l>>2]|0)+((c[u>
x3e;2]|0)-1<<2)>>2]=c[ka>>2];c[F>>2]=(c[F>>2]|0)+1}while(0);c[l>>2]=(
c[l>>2]|0)+(c[u>>2]<<2);break}case 39:{c[(c[l>>2]|0)+4>>2]=c[c[l>>2]
x3e;>2];c[l>>2]=(c[l>>2]|0)+8;break}case 40:{c[na>>2]=c[c[l>>2]>>2];c[G
x3e;>2]=c[(c[l>>2]|0)+4>>2]>>16;if((c[G>>2]|0)>=0&(c[G>>2]|0)
x3c;32)c[(c[j>>2]|0)+760+(c[G>>2]<<2)>>2]=c[na>>2];break}case 41:{c[H>>
;2]=c[c[l>>2]>>2]>>16;c[oa>>2]=0;if((c[H>>2]|0)>=0&(c[H>>2
]|0)<32)c[oa>>2]=c[(c[j>>2]|0)+760+(c[H>>2]<<2)>>2];c[c[l>>2]
x3e;>2]=c[oa>>2];c[l>>2]=(c[l>>2]|0)+4;break}case 51:{if((c[(c[j>>2]|0)+676>
x3e;2]|0)>>>0<=((c[j>>2]|0)+280|0)>>>0)break a;va=(c[j>>2]|0)+676|0;c[va
x3e;>2]=(c[va>>2]|0)+-12;c[ra>>2]=c[(c[j>>2]|0)+676>>2];c[K>>2]=c[(c[ra
x3e;>2]|0)+8>>2];c[L>>2]=c[(c[ra>>2]|0)+4>>2];break}case 50:{c[J>>2]=(c[c
[l>>2]>>2]>>16)+(c[(c[j>>2]|0)+900>>2]|0);if((c[J>>2]|0)>>
x3e;0>=(c[(c[j>>2]|0)+892>>2]|0)>>>0)break a;if((((c[ra>>2]|0)-((c[j>>
;2]|0)+280)|0)/12|0|0)>=32)break a;c[(c[ra>>2]|0)+8>>2]=c[K>>2];c[ra>>2]=(c[ra>
;>2]|0)+12;c[c[ra>>2]>>2]=c[(c[(c[j>>2]|0)+908>>2]|0)+(c[J>>2]<<
;2)>>2];c[(c[ra>>2]|0)+4>>2]=c[(c[(c[j>>2]|0)+908>>2]|0)+((c[J>>2]|0
)+1<<2)>>2];c[(c[ra>>2]|0)+8>>2]=c[c[ra>>2]>>2];if(!(c[c[ra>>
;2]>>2]|0))break a;if((c[(c[ra>>2]|0)+4>>2]|0)==(c[c[ra>>2]>>2]|0))break a;c[(
c[j>>2]|0)+676>>2]=c[ra>>2];c[K>>2]=c[c[ra>>2]>>2];c[L>>2]=
c[(c[ra>>2]|0)+4>>2];break}case 53:{c[l>>2]=c[ca>>2];break}case 52:{c[(c[j>>2]|
0)+744>>2]=(c[(c[j>>2]|0)+748>>2]|0)+(c[(c[l>>2]|0)+4>>2]>>16);c[(c[
j>>2]|0)+32>>2]=c[c[l>>2]>>2];c[(c[j>>2]|0)+32+4>>2]=0;c[pa>>
;2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=c[(c[j>>2]|0
)+28>>2];c[l>>2]=c[ca>>2];break}case 57:{c[(c[j>>2]|0)+744>>2]=(c[(c[j>
x3e;2]|0)+748>>2]|0)+(c[(c[l>>2]|0)+8>>2]>>16);c[(c[j>>2]|0)+32>>2]=
c[c[l>>2]>>2];c[(c[j>>2]|0)+32+4>>2]=c[(c[l>>2]|0)+4>>2];c[pa>
x3e;2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[(c[j>>
2]|0)+28>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>2]=c[ca>>2];break}case 58:{c[pa
x3e;>2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[(c[j>
x3e;2]|0)+28>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>2]=c[ca>>2];break}case 54:{c[
l>>2]=(c[l>>2]|0)+(0-(2+(c[(c[l>>2]|0)+-8>>2]>>16))<<2);if((c[l>
;>2]|0)>>>0<(c[ca>>2]|0)>>>0){sa=309;break a}break}case 55:{c[l>>2]=(
c[l>>2]|0)+4;break}case 44:{if(c[c[l>>2]>>2]|0)f=(c[(c[l>>2]|0)+4>>2]|0)!=0;else
f=0;c[o>>2]=f&1;c[c[l>>2]>>2]=c[o>>2]|0?65536:0;c[l>>2]=(c[l>>
2]|0)+4;break}case 45:{if(c[c[l>>2]>>2]|0)f=1;else f=(c[(c[l>>2]|0)+4>>2]|0)!=0;c[p>
;>2]=f&1;c[c[l>>2]>>2]=c[p>>2]|0?65536:0;c[l>>2]=(c[l>>2]|0)+4;break
}case 47:{c[q>>2]=((c[c[l>>2]>>2]|0)!=0^1)&1;c[c[l>>2]>>2]=c[q>>
;2]|0?65536:0;c[l>>2]=(c[l>>2]|0)+4;break}case 48:{c[r>>2]=(c[(c[l>>2]|0)+8>>2
]|0)<=(c[(c[l>>2]|0)+12>>2]|0)&1;if(!(c[r>>2]|0))c[c[l>>2]>>2]=c[(c[
l>>2]|0)+4>>2];c[l>>2]=(c[l>>2]|0)+4;break}case 49:{c[I>>2]=(c[c[l>>
2]>>2]>>16)+(c[(c[j>>2]|0)+896>>2]|0);if((c[I>>2]|0)>>>0>=(
c[(c[j>>2]|0)+888>>2]|0)>>>0)break a;if((((c[ra>>2]|0)-((c[j>>2]|0)+280)|
0)/12|0|0)>=32)break a;c[(c[ra>>2]|0)+8>>2]=c[K>>2];c[ra>>2]=(c[ra>>2]|0)+
12;c[c[ra>>2]>>2]=c[(c[(c[j>>2]|0)+904>>2]|0)+(c[I>>2]<<2)>>
;2];c[(c[ra>>2]|0)+4>>2]=c[(c[(c[j>>2]|0)+904>>2]|0)+((c[I>>2]|0)+1<<
;2)>>2];c[(c[ra>>2]|0)+8>>2]=c[c[ra>>2]>>2];if(!(c[c[ra>>2]>>
;2]|0))break a;if((c[(c[ra>>2]|0)+4>>2]|0)==(c[c[ra>>2]>>2]|0))break a;c[(c[j>>
;2]|0)+676>>2]=c[ra>>2];c[K>>2]=c[c[ra>>2]>>2];c[L>>2]=c[(c[ra>
x3e;2]|0)+4>>2];break}default:{sa=305;break a}}while(0);c[(c[j>>2]|0)+276>>2]=c[l>>2];if
((((c[(c[j>>2]|0)+276>>2]|0)-(c[ca>>2]|0)|0)/4|0|0)>=48){sa=310;break}else continue}c[ba>
;>2]=16;do if((d[la>>0]|0)!=28){f=d[la>>0]|0;if((d[la>>0]|0)<247){c[ma>>2]=f-139
;break}if((f|0)<251){if((c[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0)break a;ua=(
d[la>>0]|0)-247<<8;va=c[K>>2]|0;c[K>>2]=va+1;c[ma>>2]=ua+(d[va>>0]|0
)+108;break}f=c[K>>2]|0;if((d[la>>0]|0)<255){if(f>>>0>=(c[L>>2]|0)>
x3e;>0)break a;ua=0-((d[la>>0]|0)-251)<<8;va=c[K>>2]|0;c[K>>2]=va+1;c[ma>>
;2]=ua-(d[va>>0]|0)-108;break}if((f+3|0)>>>0>=(c[L>>2]|0)>>>0)break a;c[ma
>>2]=d[c[K>>2]>>0]<<24|d[(c[K>>2]|0)+1>>0]<<16|d[(c[K>
;>2]|0)+2>>0]<<8|d[(c[K>>2]|0)+3>>0];c[K>>2]=(c[K>>2]|0)+4;if((
c[n>>2]|0)==2)c[ba>>2]=0}else{if(((c[K>>2]|0)+1|0)>>>0>=(c[L>>2]|0)
x3e;>>0)break a;c[ma>>2]=((d[c[K>>2]>>0]<<8|d[(c[K>>2]|0)+1>>
;0])&65535)<<16>>16;c[K>>2]=(c[K>>2]|0)+2}while(0);if((((c[(c[j>>2]|0)+276
>>2]|0)-(c[ca>>2]|0)|0)/4|0|0)>=48){sa=310;break}c[ma>>2]=c[ma>>2]<<c[ba
x3e;>2];ua=c[ma>>2]|0;e=(c[j>>2]|0)+276|0;va=c[e>>2]|0;c[e>>2]=va+4;c[va>>
;2]=ua}do if((sa|0)==220){c[y>>2]=Vi(c[j>>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[(c[l>>2]|0)+12>>2]>>16,c[(c[l>
x3e;2]|0)+16>>2]>>16)|0;oc(c[(c[m>>2]|0)+12>>2]|0);c[h>>2]=c[y>>2];va
=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==221){if((c[T>>2]|0)>=4){c[z>>2]=c[(c[j>>
;2]|0)+744>>2];c[y>>2]=Vi(c[j>>2]|0,0,c[(c[l>>2]|0)+-16>>2]|0,c[(c[l>>
;2]|0)+-12>>2]|0,c[(c[l>>2]|0)+-8>>2]>>16,c[(c[l>>2]|0)+-4>>2]>
x3e;16)|0;c[(c[j>>2]|0)+744>>2]=c[z>>2]}else{if(!(c[y>>2]|0))c[y>>2]=0;Pi(c[m
x3e;>2]|0);if(c[A>>2]|0){if(Ya[c[(c[A>>2]|0)+8>>2]&127](c[c[A>>2]>>2
]|0,b[(c[(c[m>>2]|0)+20>>2]|0)+2>>1]|0)|0)break;Wa[c[(c[A>>2]|0)+24>>2]&31
](c[c[A>>2]>>2]|0,c[(c[m>>2]|0)+20>>2]|0,c[(c[m>>2]|0)+72>>2]|0,c[(c
[j>>2]|0)+920>>2]|0)|0}oc(c[(c[m>>2]|0)+12>>2]|0)}c[h>>2]=c[y>>2];va
=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==305){c[h>>2]=7;va=c[h>>2]|0;i=ta;return va|0}else if((
sa|0)==307){c[h>>2]=c[y>>2];va=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==309){c[h>>2]=129
;va=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==310){c[h>>2]=130;va=c[h>>2]|0;i=ta;return va|0}while
(0);c[h>>2]=3;va=c[h>>2]|0;i=ta;return va|0}function Pi(a){a=a|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|
0;l=k+20|0;j=k+16|0;h=k+12|0;f=k+8|0;g=k+4|0;e=k;c[l>>2]=a;c[j>>2]=c[(c[l>>2]|0)+20>>2];
if(!(c[j>>2]|0)){i=k;return}if((b[c[j>>2]>>1]|0)<=1)a=0;else a=(b[(c[(c[j>>2]|0)+12
>>2]|0)+((b[c[j>>2]>>1]|0)-2<<1)>>1]|0)+1|0;c[h>>2]=a;if((((b[(c[j
x3e;>2]|0)+2>>1]|0)>1?(c[f>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[h>>2]<
;<3),c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(b[(c[j>>2]|0)+2>>1]<<3)+-
8,c[e>>2]=(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>>2]|0)+2>>1]|0)+-1,(c[c[f>>
;2]>>2]|0)==(c[c[g>>2]>>2]|0)):0)?(c[(c[f>>2]|0)+4>>2]|0)==(c[(c[g>>
2]|0)+4>>2]|0):0)?(d[c[e>>2]>>0]|0)==1:0){l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>
x3e;1]|0)+-1<<16>>16}if((b[c[j>>2]>>1]|0)<=0){i=k;return}a=c[j>>2]|0;if((
c[h>>2]|0)==((b[(c[j>>2]|0)+2>>1]|0)-1|0)){b[a>>1]=(b[a>>1]|0)+-1<<16
>>16;l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>>1]|0)+-1<<16>>16;i=k;return}else
{b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>1]|0)-1<<1)>>1]=(b[a+2>
;>1]|0)-1;i=k;return}}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;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=
k;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2]=0;if(a[(c[f>>2]|0)+64>>0]|0){
e=c[j>>2]|0;i=k;return e|0}a[(c[f>>2]|0)+64>>0]=1;c[j>>2]=Ri(c[f>>2]|0)|0;if(c
[j>>2]|0){e=c[j>>2]|0;i=k;return e|0}c[j>>2]=Si(c[f>>2]|0,c[g>>2]|0,c[h>
x3e;2]|0)|0;e=c[j>>2]|0;i=k;return e|0}function Ri(d){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[e>>2]=d;c[h>>2]=c[(c[e>>2]|0)+20>>2];if(!(a[(c[e>>2]|0)+65>>
;0]|0)){h=c[h>>2]|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16;c[f>>2]=0;h=c[f>
;>2]|0;i=j;return h|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20>>1]|0)+(b[(c[(c[e>>2]|0)+12
>>2]|0)+56>>1]|0)+1|0)>>>0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+8>>
;2]|0)>>>0)e=0;else e=kc(c[(c[e>>2]|0)+12>>2]|0,0,1)|0;c[g>>2]=e;if(!(c[g>>
;2]|0)){if((b[c[h>>2]>>1]|0)>0)b[(c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>
;>1]|0)-1<<1)>>1]=(b[(c[h>>2]|0)+2>>1]|0)-1;h=c[h>>2]|0;b[h>>1]=(
b[h>>1]|0)+1<<16>>16}c[f>>2]=c[g>>2];h=c[f>>2]|0;i=j;return h|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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>
;2]=b;c[g>>2]=d;c[h>>2]=Ti(c[e>>2]|0,1)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=j;return
d|0}Ui(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0,1);d=c[h>>2]|0;i=j;return d|0}function Ti(a,d){a=a
|0;d=d|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]=d;if(!(c[f>>2]|0)){d=0;i=g;return
d|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20+2>>1]|0)+(b[(c[(c[e>>2]|0)+12>>2]|0)+56
+2>>1]|0)+(c[f>>2]|0)|0)>>>0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+4>>
;2]|0)>>>0){d=0;i=g;return d|0}d=kc(c[(c[e>>2]|0)+12>>2]|0,c[f>>2]|0,0)|0;i=g;return
d|0}function Ui(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;p=i;i=i+32|0;q=p+20|0;j=p+16|0;k=p+12|0;l=
p+24|0;n=p+8|0;o=p+4|0;m=p;c[q>>2]=e;c[j>>2]=f;c[k>>2]=g;a[l>>0]=h;c[n>>2]=c[(
c[q>>2]|0)+20>>2];if(!(a[(c[q>>2]|0)+65>>0]|0)){q=c[n>>2]|0;q=q+2|0;g=b[q>
;>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}c[o>>2]=(c[(c[n>>2]|0)+4>
x3e;2]|0)+(b[(c[n>>2]|0)+2>>1]<<3);c[m>>2]=(c[(c[n>>2]|0)+8>>2]|0)+(
b[(c[n>>2]|0)+2>>1]|0);c[c[o>>2]>>2]=c[j>>2]>>16;c[(c[o>>2
]|0)+4>>2]=c[k>>2]>>16;a[c[m>>2]>>0]=d[l>>0]|0?1:2;q=c[n>>
2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}function Vi(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,D=0,E=0,F=0,G=0
;G=i;i=i+96|0;k=G+92|0;l=G+88|0;m=G+84|0;n=G+80|0;o=G+76|0;p=G+72|0;q=G+68|0;y=G+64|0;u=G+60|0;t=G+56|0;r=G+52|0;z=G+48|0;C=G+40
|0;s=G+32|0;w=G+24|0;x=G+20|0;B=G+16|0;v=G+12|0;A=G+8|0;D=G+4|0;E=G;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;
c[o>>2]=g;c[p>>2]=h;c[q>>2]=j;c[u>>2]=c[l>>2];c[z>>2]=c[(c[l>
x3e;2]|0)+4>>2];if(a[(c[l>>2]|0)+924>>0]|0){c[k>>2]=160;F=c[k>>2]|0;i=G;return
F|0}c[n>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+32>>2]|0);c[o>>2]=(c[o>>2]|0
)+(c[(c[l>>2]|0)+32+4>>2]|0);if(c[(c[(c[z>>2]|0)+128>>2]|0)+52>>2]|0){c[t>
;>2]=c[p>>2];c[r>>2]=c[q>>2]}else{c[v>>2]=c[(c[z>>2]|0)+692>>2];
c[t>>2]=Wi(c[v>>2]|0,c[p>>2]|0)|0;c[r>>2]=Wi(c[v>>2]|0,c[q>>2]|0)|0}
if((c[t>>2]|0)<0|(c[r>>2]|0)<0){c[k>>2]=160;F=c[k>>2]|0;i=G;return F|0}if(a[(c
[u>>2]|0)+66>>0]|0){c[A>>2]=c[(c[u>>2]|0)+8>>2];c[D>>2]=c[c[(c[A>
;>2]|0)+156>>2]>>2];c[y>>2]=lc(c[D>>2]|0,2)|0;if(!(c[y>>2]|0)){c[E>
x3e;2]=c[(c[D>>2]|0)+56+32>>2];c[c[E>>2]>>2]=c[t>>2];b[(c[E>>2]|0)+4
>>1]=514;c[(c[E>>2]|0)+8>>2]=0;c[(c[E>>2]|0)+12>>2]=0;c[E>>2]=(c[E
x3e;>2]|0)+32;c[c[E>>2]>>2]=c[r>>2];b[(c[E>>2]|0)+4>>1]=2;c[(c[E>>
;2]|0)+8>>2]=c[n>>2]>>16;c[(c[E>>2]|0)+12>>2]=c[o>>2]>>16;
c[(c[A>>2]|0)+128>>2]=2;c[(c[A>>2]|0)+132>>2]=c[(c[D>>2]|0)+20+32>>2
];c[(c[A>>2]|0)+72>>2]=1668246896;c[(c[D>>2]|0)+56+28>>2]=2;F=11}}else F=11;do if((F|0)==
11){nc(c[(c[u>>2]|0)+12>>2]|0);c[y>>2]=Mi(c[z>>2]|0,c[t>>2]|0,w,x)|0;if((c[y
x3e;>2]|0)==0?(a[(c[l>>2]|0)+924>>0]=1,c[y>>2]=Oi(c[l>>2]|0,c[w>>2]|0,c[x
>>2]|0)|0,a[(c[l>>2]|0)+924>>0]=0,Yi(c[z>>2]|0,w,c[x>>2]|0),c[y>>2]|
0):0)break;F=(c[u>>2]|0)+32|0;c[C>>2]=c[F>>2];c[C+4>>2]=c[F+4>>2];F=(c[u>
x3e;2]|0)+40|0;c[s>>2]=c[F>>2];c[s+4>>2]=c[F+4>>2];c[B>>2]=c[(c[l>>2
]|0)+744>>2];c[(c[u>>2]|0)+32>>2]=0;c[(c[u>>2]|0)+32+4>>2]=0;c[(c[u>>
;2]|0)+24>>2]=(c[n>>2]|0)-(c[m>>2]|0);c[(c[u>>2]|0)+28>>2]=c[o>>2];c
[y>>2]=Mi(c[z>>2]|0,c[r>>2]|0,w,x)|0;if((c[y>>2]|0)==0?(a[(c[l>>2]|0)+924>
;>0]=1,c[y>>2]=Oi(c[l>>2]|0,c[w>>2]|0,c[x>>2]|0)|0,a[(c[l>>2]|0)+924>
;>0]=0,Yi(c[z>>2]|0,w,c[x>>2]|0),c[y>>2]|0):0)break;F=(c[u>>2]|0)+32|0;c[F>>
;2]=c[C>>2];c[F+4>>2]=c[C+4>>2];F=(c[u>>2]|0)+40|0;c[F>>2]=c[s>>2];c
[F+4>>2]=c[s+4>>2];c[(c[l>>2]|0)+744>>2]=c[B>>2];c[(c[u>>2]|0)+24>
;>2]=0;c[(c[u>>2]|0)+28>>2]=0}while(0);c[k>>2]=c[y>>2];F=c[k>>2]|0;i=G;return
F|0}function Wi(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l+12|0;g=l+8|0;f=l+4|0;j=l;h=l+16|0;c[g>>
2]=a;c[f>>2]=d;if(!(c[(c[g>>2]|0)+1152+8>>2]|0)){c[k>>2]=-1;k=c[k>>2]|0;i=l;return
k|0}if((c[f>>2]|0)<0|(c[f>>2]|0)>255){c[k>>2]=-1;k=c[k>>2]|0;i=l;return k|0}b
[h>>1]=Xi(c[f>>2]|0)|0;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[
g>>2]|0)+12>>2]|0)>>>0){f=10;break}a=c[j>>2]|0;if((e[(c[(c[g>>2]|0)+1152+
8>>2]|0)+(c[j>>2]<<1)>>1]|0|0)==(e[h>>1]|0|0)){f=8;break}c[j>>2]=a+1
}if((f|0)==8){c[k>>2]=a;k=c[k>>2]|0;i=l;return k|0}else if((f|0)==10){c[k>>2]=-1;k=c[k>>
2]|0;i=l;return k|0}return 0}function Xi(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<256)b=e[6520+(c[b>>2]<<1)>>1]|0;else b=0;i=d;return b&65535|0}function Yi
(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;e=k+24|0;f=k+20|0;g=k+16|0;j=k+8|0;h=k;c[e>>2]=a;c[
f>>2]=b;c[g>>2]=d;if(c[(c[(c[e>>2]|0)+128>>2]|0)+52>>2]|0){c[j>>2]=c
[c[f>>2]>>2];c[j+4>>2]=c[g>>2];Ra[c[(c[c[(c[(c[e>>2]|0)+128>>2]|0)+52
>>2]>>2]|0)+4>>2]&7](c[(c[(c[(c[e>>2]|0)+128>>2]|0)+52>>2]|0)+4
>>2]|0,j);i=k;return}else{c[h>>2]=c[(c[e>>2]|0)+692>>2];ji((c[h>>2]|0)+1176|0,
c[f>>2]|0);i=k;return}}function Zi(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;c[d>>
;2]=c[(c[b>>2]|0)+8>>2];if(!(c[d>>2]|0)){i=e;return}d=(c[d>>2]|0)+108|0;a=c[(c[b>
x3e;2]|0)+16>>2]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a
+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];i=e;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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2]=c[m>>2];c[k>>2]=c[(
c[j>>2]|0)+532>>2];c[c[h>>2]>>2]=0;c[(c[h>>2]|0)+4>>2]=0;if(!(c[k>
;>2]|0)){i=l;return 0}m=Oa[c[(c[k>>2]|0)+128>>2]&63](c[j>>2]|0,c[f>>2]|0,c[g
x3e;>2]|0)|0;c[c[h>>2]>>2]=m;i=l;return 0}function $i(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;p=i;i=i+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;m=p+8|0;o=p+4|0;n=p;c[g>>2]=
a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[o>>2]=0;c[n>>2]=c[(c[g
x3e;>2]|0)+84>>2];c[k>>2]=c[k>>2]|256;c[m>>2]=0;while(1){if((c[m>>2]|0)
x3e;>>0>=(c[j>>2]|0)>>>0){f=8;break}c[o>>2]=Gi(c[n>>2]|0,c[(c[g>
;>2]|0)+88>>2]|0,(c[h>>2]|0)+(c[m>>2]|0)|0,c[k>>2]|0)|0;if(c[o>>2]|0){f=8
;break}f=c[n>>2]|0;if(c[k>>2]&16|0)f=c[f+60>>2]|0;else f=c[f+56>>2]|0;c[(c[l>
x3e;2]|0)+(c[m>>2]<<2)>>2]=f;c[m>>2]=(c[m>>2]|0)+1}if((f|0)==8){i=p;return c[o
>>2]|0}return 0}function aj(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;v=i;i=i+80|0;k=v+64|0;l=v+60|0;d=v+56|0;g=v+52|0;n=v+48|0;e=v+44|0;h=v+40|0;j=v+36|0;f=v+32|0;m=v+28|0;p=v+24|0;s=v+20|0;o=v+
16|0;q=v+12|0;r=v+8|0;t=v+4|0;u=v;c[l>>2]=a;c[d>>2]=b;c[g>>2]=c[l>>2];do if(c[(c[c[l>
;>2]>>2]|0)+8>>2]&2|0){c[e>>2]=c[c[l>>2]>>2];c[h>>2]=c[(c[
e>>2]|0)+532>>2];if(Oa[c[(c[h>>2]|0)+148>>2]&63](c[e>>2]|0,c[d>>
;2]|0,j)|0){c[(c[g>>2]|0)+44>>2]=-1;break}c[k>>2]=bj(c[l>>2]|0,c[j>>2]|0)|0;u=
c[k>>2]|0;i=v;return u|0}while(0);Ed(c[c[l>>2]>>2]|0,c[d>>2]|0);c[n>>2]=Bi(c[g
>>2]|0)|0;a:do if(c[n>>2]|0){c[f>>2]=c[c[l>>2]>>2];c[m>>2]=c[(c[f>
;>2]|0)+692>>2];c[p>>2]=c[(c[l>>2]|0)+40>>2];c[s>>2]=c[(c[m>>2]|
0)+1324+64>>2];Za[c[(c[n>>2]|0)+4>>2]&31](c[c[p>>2]>>2]|0,c[(c[l>>
;2]|0)+12+4>>2]|0,c[(c[l>>2]|0)+12+8>>2]|0,0,0)|0;c[o>>2]=c[(c[m>>2]|0)+1892
x3e;>2];while(1){if((c[o>>2]|0)>>>0<=0)break a;c[q>>2]=c[(c[m>>2]|0)+1896
+((c[o>>2]|0)-1<<2)>>2];c[r>>2]=c[(c[q>>2]|0)+64>>2];d=c[(c[l>
x3e;2]|0)+12+4>>2]|0;if((c[s>>2]|0)!=(c[r>>2]|0)){c[t>>2]=xb(d,c[s>>2]|0,c[r
x3e;>2]|0)|0;c[u>>2]=xb(c[(c[l>>2]|0)+12+8>>2]|0,c[s>>2]|0,c[r>>2]|0)|0}else
{c[t>>2]=d;c[u>>2]=c[(c[l>>2]|0)+12+8>>2]}Za[c[(c[n>>2]|0)+4>>2]&
;31](c[(c[p>>2]|0)+4+((c[o>>2]|0)-1<<2)>>2]|0,c[t>>2]|0,c[u>>2]|0,0,
0)|0;c[o>>2]=(c[o>>2]|0)+-1}}while(0);c[k>>2]=0;u=c[k>>2]|0;i=v;return u|0}function bj(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;p=i;i=i+64|0;e=p+48|0;r=p+44|0;q=p+40|0;g=p+36|0;d=p
+32|0;f=p+28|0;j=p+24|0;m=p+20|0;h=p+16|0;k=p+12|0;l=p+8|0;n=p+4|0;o=p;c[e>>2]=a;c[r>>2]=b;c[q>>2]=
c[e>>2];c[(c[q>>2]|0)+44>>2]=c[r>>2];Cd(c[c[e>>2]>>2]|0,c[r>>
;2]|0);c[g>>2]=Bi(c[q>>2]|0)|0;if(!(c[g>>2]|0)){i=p;return 0}c[d>>2]=c[c[e>>2]
x3e;>2];c[f>>2]=c[(c[d>>2]|0)+692>>2];c[j>>2]=c[(c[e>>2]|0)+40>>
;2];c[m>>2]=c[(c[f>>2]|0)+1324+64>>2];Za[c[(c[g>>2]|0)+4>>2]&31](c[c[j>
;>2]>>2]|0,c[(c[e>>2]|0)+12+4>>2]|0,c[(c[e>>2]|0)+12+8>>2]|0,0,0)|0;c[h
x3e;>2]=c[(c[f>>2]|0)+1892>>2];while(1){if((c[h>>2]|0)>>>0<=0)break;c[k
x3e;>2]=c[(c[f>>2]|0)+1896+((c[h>>2]|0)-1<<2)>>2];c[l>>2]=c[(c[k>>
;2]|0)+64>>2];d=c[(c[e>>2]|0)+12+4>>2]|0;if((c[m>>2]|0)!=(c[l>>2]|0)){c[n>
;>2]=xb(d,c[m>>2]|0,c[l>>2]|0)|0;c[o>>2]=xb(c[(c[e>>2]|0)+12+8>>2]|0,c[m
x3e;>2]|0,c[l>>2]|0)|0}else{c[n>>2]=d;c[o>>2]=c[(c[e>>2]|0)+12+8>>2]}Za[c
[(c[g>>2]|0)+4>>2]&31](c[(c[j>>2]|0)+4+((c[h>>2]|0)-1<<2)>>2]|0
,c[n>>2]|0,c[o>>2]|0,0,0)|0;c[h>>2]=(c[h>>2]|0)+-1}i=p;return 0}function cj(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];i=d;return 0}function dj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;h=g+8|0;e=g+4|0;f=g;c[h>>2
]=a;c[e>>2]=b;c[f>>2]=c[(c[h>>2]|0)+16>>2];if((c[e>>2]|0)>>>0
x3e;=256){h=0;i=g;return h|0}h=d[(c[f>>2]|0)+(6+(c[e>>2]|0))>>0]|0;i=g;return h|0}function ej(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;l=i;i=i+32|0;m=l+20|0;e=l+16|0;j=l+12|0;f=l+8|0;h=l+4|0;g=l;c[m>>2]=a;
c[e>>2]=b;c[j>>2]=c[(c[m>>2]|0)+16>>2];c[f>>2]=c[c[e>>2]>>
2];c[h>>2]=0;c[g>>2]=0;c[j>>2]=(c[j>>2]|0)+6;do{m=(c[f>>2]|0)+1|0;c[f>>
;2]=m;if(m>>>0>=256){k=5;break}c[g>>2]=d[(c[j>>2]|0)+(c[f>>2]|0)>>0]}
while(!(c[g>>2]|0));if((k|0)==5){k=c[h>>2]|0;m=c[e>>2]|0;c[m>>2]=k;m=c[g>>2]|0
;i=l;return m|0}c[h>>2]=c[f>>2];k=c[h>>2]|0;m=c[e>>2]|0;c[m>>2]=k;m=c[g>
x3e;2]|0;i=l;return m|0}function fj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;e=k+20|0;f=k+16|0;j=k+12|0;l=k
+8|0;h=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[j>>2]=(c[e>>2]|0)+2;c[j>>2]=(c[j>
x3e;2]|0)+2;c[l>>2]=(((d[(c[j>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[j>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535;if((c[l>>2]|0)>>>0<262?1:((c[e>>
;2]|0)+(c[l>>2]|0)|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>
;>2]|0,8);if((c[(c[f>>2]|0)+8>>2]|0)>>>0<1){i=k;return 0}c[j>>2]=(c[e>
;>2]|0)+6;c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>=256)break;l=c[j>>2]|0;c[
j>>2]=l+1;c[g>>2]=d[l>>0];if((c[g>>2]|0)>>>0>=(c[(c[f>>2]|
0)+172>>2]|0)>>>0)sc(c[f>>2]|0,16);c[h>>2]=(c[h>>2]|0)+1}i=k;return 0}function
gj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>
;2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=0;c[c[f>>2]>>2]=(((
d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&65535)<<
;0)&65535;i=e;return 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,o=0,p=0,q=0,r=0;p=i;i=i+48|0;r=p+40
|0;f=p+36|0;q=p+32|0;m=p+28|0;o=p+24|0;l=p+20|0;j=p+16|0;n=p+12|0;g=p+8|0;h=p+4|0;k=p;c[r>>2]=b;c[f>>2]=e;c[
q>>2]=c[(c[r>>2]|0)+16>>2];c[m>>2]=0;c[o>>2]=ij(c[q>>2]|0,c[f>
x3e;2]|0)|0;if(!(c[o>>2]|0)){r=c[m>>2]|0;i=p;return r|0}c[l>>2]=c[o>>2];c[j>>2
]=c[f>>2]&255;c[l>>2]=(c[l>>2]|0)+2;c[n>>2]=((d[(c[l>>2]|0)+-2>>
;0]&65535)<<8|(d[(c[l>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[l>>2]=(
c[l>>2]|0)+2;c[g>>2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>>
2]|0)+-2+1>>0]&65535)<<0)&65535;c[l>>2]=(c[l>>2]|0)+2;c[h>>2]=((a[(c
[l>>2]|0)+-2>>0]<<16>>16<<8|d[(c[l>>2]|0)+-2+1>>0]<
x3c;0)&65535)<<16>>16;c[k>>2]=((d[c[l>>2]>>0]&65535)<<8|(d
[(c[l>>2]|0)+1>>0]&65535)<<0)&65535;c[j>>2]=(c[j>>2]|0)-(c[n>
x3e;2]|0);if(!(c[k>>2]|0?(c[j>>2]|0)>>>0<(c[g>>2]|0)>>>0:0)){r=
c[m>>2]|0;i=p;return r|0}c[l>>2]=(c[l>>2]|0)+((c[k>>2]|0)+(c[j>>2]<<
1));c[j>>2]=((d[c[l>>2]>>0]&65535)<<8|(d[(c[l>>2]|0)+1>>0]&
;65535)<<0)&65535;if(!(c[j>>2]|0)){r=c[m>>2]|0;i=p;return r|0}c[m>>2]=(c[j>>
;2]|0)+(c[h>>2]|0)&65535;r=c[m>>2]|0;i=p;return r|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,m=0,n=0;n=i;i=i+32|0;e=n+28|0;f=n+24|0;k=n+20|0;h=n+16|0;g=n+12|0;j=n+8|0;m=n+4|0;l=n;c[e>>2]=a;c[f>>
;2]=b;c[k>>2]=0;if((c[f>>2]|0)>>>0>=65536){a=c[k>>2]|0;i=n;return a|0}c[h>
;>2]=c[f>>2]&255;c[g>>2]=(c[f>>2]|0)>>>8;c[j>>2]=(c[e>>
;2]|0)+6;c[m>>2]=(c[e>>2]|0)+518;if(!(c[g>>2]|0)){c[l>>2]=c[m>>2];c[j>>
;2]=(c[j>>2]|0)+(c[h>>2]<<1);if((((d[c[j>>2]>>0]|0)&65535)<<8|((
d[(c[j>>2]|0)+1>>0]|0)&65535)<<0)&65535|0){a=c[k>>2]|0;i=n;return a|0}}else{c[
j>>2]=(c[j>>2]|0)+(c[g>>2]<<1);c[l>>2]=(c[m>>2]|0)+((((d[c[j>
x3e;2]>>0]|0)&65535)<<8|((d[(c[j>>2]|0)+1>>0]|0)&65535)<<0)&65535
&-8);if((c[l>>2]|0)==(c[m>>2]|0)){a=c[k>>2]|0;i=n;return a|0}}c[k>>2]=c[l>>
;2];a=c[k>>2]|0;i=n;return a|0}function jj(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;v=i;i=i+64|0;w=v+56|0;f=v+52|0;t=v+48|0;l=v+44|0;q=v+40|0;h=v+36|0;s=v+32|0;o=v+28|0;r=v+24|0;j=v+20|0;k=v+16|0;n=
v+12|0;g=v+8|0;p=v+4|0;m=v;c[w>>2]=b;c[f>>2]=e;c[t>>2]=c[(c[w>>2]|0)+16>>2];c[
l>>2]=0;c[q>>2]=0;c[h>>2]=(c[c[f>>2]>>2]|0)+1;a:while(1){if((c[h>>2]|
0)>>>0>=65536){u=15;break}c[s>>2]=ij(c[t>>2]|0,c[h>>2]|0)|0;b:do if(c[s>
x3e;2]|0?(c[o>>2]=c[s>>2],c[o>>2]=(c[o>>2]|0)+2,c[r>>2]=((d[(c[o>>2]|
0)+-2>>0]&65535)<<8|(d[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535,c[
o>>2]=(c[o>>2]|0)+2,c[j>>2]=((d[(c[o>>2]|0)+-2>>0]&65535)<<8|(d
[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535,c[o>>2]=(c[o>>2]|0)+2,c[k>
;>2]=((a[(c[o>>2]|0)+-2>>0]<<16>>16<<8|d[(c[o>>2]|0)+-2+1>
x3e;0]<<0)&65535)<<16>>16,c[n>>2]=((d[c[o>>2]>>0]&65535)
x3c;<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535,c[g>>2]=c[h>>2]&
;255,c[n>>2]|0):0){if((c[g>>2]|0)>>>0<(c[r>>2]|0)>>>0){c[g>
;>2]=c[r>>2];c[p>>2]=0}else c[p>>2]=(c[g>>2]|0)-(c[r>>2]|0);c[o>>
;2]=(c[o>>2]|0)+((c[n>>2]|0)+(c[p>>2]<<1));c[h>>2]=(c[h>>2]&-256
)+(c[g>>2]|0);while(1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break
b;c[o>>2]=(c[o>>2]|0)+2;c[m>>2]=((d[(c[o>>2]|0)+-2>>0]&65535)<<
;8|(d[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535;if(c[m>>2]|0?(c[l>>2]=(c
[m>>2]|0)+(c[k>>2]|0)&65535,c[l>>2]|0):0)break a;c[p>>2]=(c[p>>2]|0)+1;c[
h>>2]=(c[h>>2]|0)+1}}while(0);c[h>>2]=(c[h>>2]&-256)+256}if((u|0)==15){u=c[q>
x3e;2]|0;w=c[f>>2]|0;c[w>>2]=u;w=c[l>>2]|0;i=v;return w|0}c[q>>2]=c[h>>2];u=c[
q>>2]|0;w=c[f>>2]|0;c[w>>2]=u;w=c[l>>2]|0;i=v;return w|0}function kj(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;x=i;i=i+80|0;g=x+64|0;h=x+60|0;v=x+56|0;q=x+52|0;t=x+48
|0;s=x+44|0;f=x+40|0;w=x+36|0;m=x+32|0;o=x+28|0;l=x+24|0;j=x+20|0;u=x+16|0;k=x+12|0;n=x+8|0;r=x+4|0;p=x;c[g>>2]=b;c[h
x3e;>2]=e;c[v>>2]=(c[g>>2]|0)+2;c[q>>2]=((d[c[v>>2]>>0]&65535)<
x3c;8|(d[(c[v>>2]|0)+1>>0]&65535)<<0)&65535;if((c[q>>2]|0)>>>0
x3c;518?1:((c[g>>2]|0)+(c[q>>2]|0)|0)>>>0>(c[(c[h>>2]|0)+4>>2]|0)>
;>>0)sc(c[h>>2]|0,8);c[f>>2]=(c[g>>2]|0)+6;c[v>>2]=c[f>>2];c[s>
x3e;2]=0;c[t>>2]=0;while(1){f=c[v>>2]|0;if((c[t>>2]|0)>>>0>=256)break;c[v>
;>2]=f+2;c[o>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+
1>>0]&65535)<<0)&65535;if((c[(c[h>>2]|0)+8>>2]|0)>>>0>=2?c
[o>>2]&7|0:0)sc(c[h>>2]|0,8);c[o>>2]=(c[o>>2]|0)>>>3;if((c[o>
x3e;2]|0)>>>0>(c[s>>2]|0)>>>0)c[s>>2]=c[o>>2];c[t>>2]=(
c[t>>2]|0)+1}c[w>>2]=f;c[m>>2]=(c[w>>2]|0)+((c[s>>2]|0)+1<<3);if((c[
m>>2]|0)>>>0>(c[(c[h>>2]|0)+4>>2]|0)>>>0)sc(c[h>>2]|0
,8);c[t>>2]=0;while(1){if((c[t>>2]|0)>>>0>(c[s>>2]|0)>>>0)break
;c[v>>2]=(c[v>>2]|0)+2;c[l>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8
|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[v>>2]=(c[v>>2]|0)+2;c[j
x3e;>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>>0]&
;65535)<<0)&65535;c[v>>2]=(c[v>>2]|0)+2;c[k>>2]=((a[(c[v>>2]|0)+-2>
x3e;0]<<16>>16<<8|d[(c[v>>2]|0)+-2+1>>0]<<0)&65535)<<
16>>16;c[v>>2]=(c[v>>2]|0)+2;c[u>>2]=((d[(c[v>>2]|0)+-2>>0]&65535
)<<8|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0)&65535;a:do if(c[j>>2]|0){do
if((c[(c[h>>2]|0)+8>>2]|0)>>>0>=2){if((c[l>>2]|0)>>>0<256?((
c[l>>2]|0)+(c[j>>2]|0)|0)>>>0<=256:0)break;sc(c[h>>2]|0,8)}while(0);if(c[u>
;>2]|0){c[n>>2]=(c[v>>2]|0)+-2+(c[u>>2]|0);if(!((c[n>>2]|0)>>>0>
;=(c[m>>2]|0)>>>0?((c[n>>2]|0)+(c[j>>2]<<1)|0)>>>0<=((
c[g>>2]|0)+(c[q>>2]|0)|0)>>>0:0))sc(c[h>>2]|0,9);if((c[(c[h>>2]|0)+8>
;>2]|0)>>>0>=1){c[r>>2]=(c[v>>2]|0)+(c[j>>2]<<1);while(1){if((c
[v>>2]|0)>>>0>=(c[r>>2]|0)>>>0)break a;c[v>>2]=(c[v>>
2]|0)+2;c[p>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>
;>0]&65535)<<0)&65535;if(!(c[p>>2]|0))continue;c[p>>2]=(c[p>>2]|0)+(c[k
x3e;>2]|0)&65535;if((c[p>>2]|0)>>>0<(c[(c[h>>2]|0)+172>>2]|0)>
x3e;>0)continue;sc(c[h>>2]|0,16)}}}}while(0);c[t>>2]=(c[t>>2]|0)+1}i=x;return 0}function lj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(
c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=2;c[c[f>>2]>>2]=(((d[c
[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&65535)<<0
)&65535;i=e;return 0}function mj(a,b){a=a|0;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[f>>2]=a;
c[h>>2]=b;c[(c[f>>2]|0)+16>>2]=c[h>>2];c[g>>2]=(c[h>>2]|0)+6;c[(c[f
x3e;>2]|0)+32>>2]=((((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1
x3e;>0]|0)&65535)<<0)&65535)>>1;c[(c[f>>2]|0)+24>>2]=-1;c[(c[f>>
;2]|0)+28>>2]=0;i=e;return 0}function nj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>
;>2]=a;c[f>>2]=b;do if((c[f>>2]|0)>>>0<65536){b=c[e>>2]|0;if(c[(c[e>
x3e;2]|0)+20>>2]&1|0){c[d>>2]=oj(b,f,0)|0;break}else{c[d>>2]=pj(b,f,0)|0;break}}else c[d>
;>2]=0;while(0);i=g;return c[d>>2]|0}function oj(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;z=i;i=i+80|0;g=z+60|0;h=z+56|0;j=z+52|0;k=z+64|0;t=z+48|0;x=z+44|0;n=z+40|0;u=z+36|0;m=
z+32|0;q=z+28|0;s=z+24|0;l=z+20|0;p=z+16|0;v=z+12|0;w=z+8|0;o=z+4|0;r=z;c[h>>2]=b;c[j>>2]=e;a[k>>0
]=f;c[l>>2]=c[c[j>>2]>>2];c[p>>2]=0;c[v>>2]=(c[(c[h>>2]|0)+16>
x3e;2]|0)+6;c[t>>2]=((d[c[v>>2]>>0]&65535)<<8|(d[(c[v>>2]|0)+1>>
;0]&65535)<<0)&65535&-2;c[s>>2]=(c[t>>2]|0)>>>1;if(!(c[s>>
2]|0)){c[g>>2]=0;y=c[g>>2]|0;i=z;return y|0}if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1
;while(1){if((c[l>>2]|0)>>>0>65535)break;c[v>>2]=(c[(c[h>>2]|0)+16>>
2]|0)+14;c[w>>2]=(c[(c[h>>2]|0)+16>>2]|0)+16+(c[t>>2]|0);c[q>>2]=0;while(1){if
((c[q>>2]|0)>>>0>=(c[s>>2]|0)>>>0)break;c[v>>2]=(c[v>>
;2]|0)+2;c[n>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>
;>0]&65535)<<0)&65535;c[w>>2]=(c[w>>2]|0)+2;c[x>>2]=((d[(c[w>>2
]|0)+-2>>0]&65535)<<8|(d[(c[w>>2]|0)+-2+1>>0]&65535)<<0)&65535;
if((c[l>>2]|0)>>>0>=(c[x>>2]|0)>>>0?(c[l>>2]|0)>>>
;0<=(c[n>>2]|0)>>>0:0){c[v>>2]=(c[w>>2]|0)+-2+(c[t>>2]|0);c[m>
x3e;2]=((a[c[v>>2]>>0]<<16>>16<<8|d[(c[v>>2]|0)+1>>0]<
;<0)&65535)<<16>>16;c[v>>2]=(c[v>>2]|0)+(c[t>>2]|0);c[u>>2
]=((d[c[v>>2]>>0]&65535)<<8|(d[(c[v>>2]|0)+1>>0]&65535)<<0
)&65535;if((((c[x>>2]|0)==65535?(c[q>>2]|0)>>>0>=((c[s>>2]|0)-1|0)>
x3e;>0:0)&(c[n>>2]|0)==65535?(c[o>>2]=c[c[h>>2]>>2],c[r>>2]=(c[(c[o
x3e;>2]|0)+500>>2]|0)+(c[(c[o>>2]|0)+504>>2]|0),c[u>>2]|0):0)?((c[v>>2]|0
)+(c[u>>2]|0)+2|0)>>>0>(c[r>>2]|0)>>>0:0){c[m>>2]=1;c[u>
x3e;2]=0}if((c[u>>2]|0)!=65535){y=15;break}}c[q>>2]=(c[q>>2]|0)+1}do if((y|0)==15){y=0;if(!(c[u>
;>2]|0)){c[p>>2]=(c[l>>2]|0)+(c[m>>2]|0)&65535;break}c[v>>2]=(c[v>>2
]|0)+((c[u>>2]|0)+((c[l>>2]|0)-(c[x>>2]|0)<<1));c[p>>2]=((d[c[v>>2]
x3e;>0]&65535)<<8|(d[(c[v>>2]|0)+1>>0]&65535)<<0)&65535;if(c[p>
x3e;2]|0)c[p>>2]=(c[p>>2]|0)+(c[m>>2]|0)&65535}while(0);if((a[k>>0]|0)==0|(c[p>
;>2]|0)!=0)break;c[l>>2]=(c[l>>2]|0)+1}if((d[k>>0]|0)!=0&(c[p>>2]|0)!=0)c[c[j
x3e;>2]>>2]=c[l>>2];c[g>>2]=c[p>>2];y=c[g>>2]|0;i=z;return y|0}function pj
(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,D=0,E=0,F=
0,G=0;G=i;i=i+96|0;g=G+88|0;h=G+84|0;j=G+80|0;k=G+92|0;z=G+76|0;E=G+72|0;o=G+68|0;A=G+64|0;n=G+60|0;t=G+56|0;v=G+52|0;u=G+48|0;y
=G+44|0;l=G+40|0;q=G+36|0;C=G+32|0;p=G+28|0;s=G+24|0;r=G+20|0;D=G+16|0;B=G+12|0;w=G+8|0;x=G+4|0;m=G;c[h>>2]=b;c[j>
;>2]=e;a[k>>0]=f;c[l>>2]=c[c[j>>2]>>2];c[q>>2]=0;c[C>>2]=(c[(c[
h>>2]|0)+16>>2]|0)+6;c[z>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C
x3e;>2]|0)+1>>0]&65535)<<0)&65535&-2;if(!(c[z>>2]|0)){c[g>>2]=0;F=c[
g>>2]|0;i=G;return F|0}c[y>>2]=(c[z>>2]|0)>>>1;c[u>>2]=c[y>>2];
c[o>>2]=65535;if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1;c[v>>2]=0;c[t>>2]=c
[y>>2];while(1){if((c[v>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[u
x3e;>2]=((c[v>>2]|0)+(c[t>>2]|0)|0)>>>1;c[C>>2]=(c[(c[h>>2]|0)+16>
;>2]|0)+14+(c[u>>2]<<1);c[o>>2]=((d[c[C>>2]>>0]&65535)<<8|(
d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(2+(c[z>
;>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>
;0]&65535)<<0)&65535;if((c[l>>2]|0)>>>0<(c[E>>2]|0)>>>
;0){c[t>>2]=c[u>>2];continue}if((c[l>>2]|0)>>>0<=(c[o>>2]|0)>
x3e;>0){F=11;break}c[v>>2]=(c[u>>2]|0)+1}do if((F|0)==11){c[C>>2]=(c[C>>2]|0)+(c[z
x3e;>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>>
;2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>
x3e;2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0
]&65535)<<0)&65535;if((((c[E>>2]|0)==65535?(c[u>>2]|0)>>>0>=((c[y>
;>2]|0)-1|0)>>>0:0)&(c[o>>2]|0)==65535?(c[p>>2]=c[c[h>>2]>>2],c
[s>>2]=(c[(c[p>>2]|0)+500>>2]|0)+(c[(c[p>>2]|0)+504>>2]|0),c[A>>2]|0
):0)?((c[C>>2]|0)+(c[A>>2]|0)+2|0)>>>0>(c[s>>2]|0)>>>0:0){c[n
x3e;>2]=1;c[A>>2]=0}if(c[(c[h>>2]|0)+20>>2]&2|0){c[t>>2]=c[u>>2];if((
c[A>>2]|0)==65535)c[u>>2]=(c[t>>2]|0)+1;c[r>>2]=c[t>>2];while(1){if((c[r>
x3e;2]|0)>>>0<=0)break;c[B>>2]=c[C>>2];c[C>>2]=(c[(c[h>>2]|0)+16>
;>2]|0)+14+((c[r>>2]|0)-1<<1);c[D>>2]=((d[c[C>>2]>>0]&65535)<
x3c;8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[l>>2]|0)>>>0
x3e;(c[D>>2]|0)>>>0){F=21;break}c[o>>2]=c[D>>2];c[C>>2]=(c[C>>2
]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>
;2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>
;>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>>2]|0)+1>>0]
x3c;<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>
;2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<
;0)&65535;if((c[A>>2]|0)!=65535)c[u>>2]=(c[r>>2]|0)-1;c[r>>2]=(c[r>>2]|0)+-
1}if((F|0)==21)c[C>>2]=c[B>>2];if((c[u>>2]|0)==((c[t>>2]|0)+1|0)){if((c[r>>2]|
0)!=(c[t>>2]|0)){c[C>>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[t>>2]<<1);c[
o>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535
)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>
;2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>
;>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>
x3e;16<<8|d[(c[C>>2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>
;2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(
d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535}c[u>>2]=c[t>>2];c[r>>
2]=(c[t>>2]|0)+1;while(1){if((c[r>>2]|0)>>>0>=(c[y>>2]|0)>>>0)break
;c[C>>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[r>>2]<<1);c[w>>2]=((d[c[C>
;>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c
[C>>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[x>>2]=((d[c[C>>2]>>0]&65535
)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[l>>2]|0)>>
;>0<(c[x>>2]|0)>>>0)break;c[o>>2]=c[w>>2];c[E>>2]=c[x>>
;2];c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<
;16>>16<<8|d[(c[C>>2]|0)+1>>0]<<0)&65535)<<16>>16;c[C
>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[A>>2]|0)!=65535)c[u>
x3e;2]=c[r>>2];c[r>>2]=(c[r>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+-1;if((c[u>>
;2]|0)==(c[t>>2]|0)){c[u>>2]=c[r>>2];break}}if((c[u>>2]|0)!=(c[r>>2]|0)){c[C
x3e;>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[u>>2]<<1);c[o>>2]=((d[c[C>>
;2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>
;>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(
c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>
x3e;2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>
;>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>
;0]&65535)<<0)&65535}}else if((c[A>>2]|0)==65535)break;if(!(c[A>>2]|0)){c[q>>2
]=(c[l>>2]|0)+(c[n>>2]|0)&65535;break}c[C>>2]=(c[C>>2]|0)+((c[A>>2]|0)+((
c[l>>2]|0)-(c[E>>2]|0)<<1));c[q>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if(c[q>>2]|0)c[q>>2]=(
c[q>>2]|0)+(c[n>>2]|0)&65535}while(0);do if(a[k>>0]|0){c[m>>2]=c[h>>2];if
((c[l>>2]|0)>>>0>(c[o>>2]|0)>>>0?(c[u>>2]=(c[u>>2]|0)+
1,(c[u>>2]|0)==(c[y>>2]|0)):0){c[g>>2]=0;F=c[g>>2]|0;i=G;return F|0}if(qj(c[m>>
;2]|0,c[u>>2]|0)|0){if(!(c[q>>2]|0))break;c[c[j>>2]>>2]=c[l>>2];break}c[(c[m
x3e;>2]|0)+24>>2]=c[l>>2];if(c[q>>2]|0)c[(c[m>>2]|0)+28>>2]=c[q>>
;2];else{c[(c[m>>2]|0)+24>>2]=c[l>>2];rj(c[m>>2]|0);c[q>>2]=c[(c[m>>
2]|0)+28>>2]}if(c[q>>2]|0)c[c[j>>2]>>2]=c[(c[m>>2]|0)+24>>2]}while(0
);c[g>>2]=c[q>>2];F=c[g>>2]|0;i=G;return F|0}function qj(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;p=i;i=i+48|0;k=p+32|0;l=p+28|0;m=p+24|0;j=p+20|0;o=p+16|0;h=p+12|0;n=p+8|0;f=p+4|0;g=p;c[l>>2]=b;c
[m>>2]=e;c[j>>2]=c[(c[l>>2]|0)+16>>2];c[h>>2]=c[(c[l>>2]|0)+32>
x3e;2];while(1){if((c[m>>2]|0)>>>0>=(c[h>>2]|0)>>>0){b=12;break}c[o>
x3e;2]=(c[j>>2]|0)+14+(c[m>>2]<<1);c[(c[l>>2]|0)+44>>2]=((d[c[o>>2]
x3e;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;c[o>>
;2]=(c[o>>2]|0)+(2+(c[h>>2]<<1));c[(c[l>>2]|0)+40>>2]=((d[c[o>>2]>
;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;c[o>>
2]=(c[o>>2]|0)+(c[h>>2]<<1);c[(c[l>>2]|0)+48>>2]=((a[c[o>>2]>
x3e;0]<<16>>16<<8|d[(c[o>>2]|0)+1>>0]<<0)&65535)<<16
x3e;>16;c[o>>2]=(c[o>>2]|0)+(c[h>>2]<<1);c[n>>2]=((d[c[o>>2]>
;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;if(((((c[m>
;>2]|0)>>>0>=((c[h>>2]|0)-1|0)>>>0?(c[(c[l>>2]|0)+40>>2]|0
)==65535:0)?(c[(c[l>>2]|0)+44>>2]|0)==65535:0)?(c[f>>2]=c[c[l>>2]>>2],c[g>
;>2]=(c[(c[f>>2]|0)+500>>2]|0)+(c[(c[f>>2]|0)+504>>2]|0),c[n>>2]|0):0)?((
c[o>>2]|0)+(c[n>>2]|0)+2|0)>>>0>(c[g>>2]|0)>>>0:0){c[(c[l>
x3e;2]|0)+48>>2]=1;c[n>>2]=0}if((c[n>>2]|0)!=65535){b=10;break}c[m>>2]=(c[m>>2
]|0)+1}if((b|0)==10){c[(c[l>>2]|0)+52>>2]=c[n>>2]|0?(c[o>>2]|0)+(c[n>>2]|0)|0:
0;c[(c[l>>2]|0)+36>>2]=c[m>>2];c[k>>2]=0;o=c[k>>2]|0;i=p;return o|0}else if((b
|0)==12){c[k>>2]=-1;o=c[k>>2]|0;i=p;return o|0}return 0}function rj(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;n=i;i=i+32|0;j=n+28|0;k=n+24|0;h=n+20|0;f=n+16|0;e=n+12|0;g=n+8|0;l=n+4|0;m=n;c[j>>2]=a;a:do if((c[(c[j
x3e;>2]|0)+24>>2]|0)>>>0<65535){c[k>>2]=(c[(c[j>>2]|0)+24>>2]|0
)+1;if((c[k>>2]|0)>>>0<(c[(c[j>>2]|0)+40>>2]|0)>>>0)c[k>
x3e;2]=c[(c[j>>2]|0)+40>>2];b:while(1){c[h>>2]=c[(c[j>>2]|0)+52>>2];c[f>
x3e;2]=c[(c[j>>2]|0)+44>>2];c[e>>2]=c[(c[j>>2]|0)+48>>2];c:do if((c[k>>
;2]|0)>>>0<=(c[f>>2]|0)>>>0){if(!(c[h>>2]|0))while(1){c[m>>2]=(
c[k>>2]|0)+(c[e>>2]|0)&65535;b=c[k>>2]|0;if(c[m>>2]|0){a=12;break b}b=b+1|0;c[k>
;>2]=b;if(b>>>0>(c[f>>2]|0)>>>0)break c}c[g>>2]=(c[h>>2]|0
)+((c[k>>2]|0)-(c[(c[j>>2]|0)+40>>2]|0)<<1);do{c[g>>2]=(c[g>>2]|0)+2
;c[l>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+-2+1>
x3e;0]|0)&65535)<<0)&65535;if(c[l>>2]|0?(c[l>>2]=(c[l>>2]|0)+(c[e>>2
]|0)&65535,c[l>>2]|0):0){a=9;break b}b=(c[k>>2]|0)+1|0;c[k>>2]=b}while(b>>>0
x3c;=(c[f>>2]|0)>>>0)}while(0);if((qj(c[j>>2]|0,(c[(c[j>>2]|0)+36>>2]|0)+
1|0)|0)<0)break a;if((c[k>>2]|0)>>>0>=(c[(c[j>>2]|0)+40>>2]|0)>>
;>0)continue;c[k>>2]=c[(c[j>>2]|0)+40>>2]}if((a|0)==9){c[(c[j>>2]|0)+24>>
2]=c[k>>2];c[(c[j>>2]|0)+28>>2]=c[l>>2];i=n;return}else if((a|0)==12){c[(c[j>>
2]|0)+24>>2]=b;c[(c[j>>2]|0)+28>>2]=c[m>>2];i=n;return}}while(0);c[(c[j>>2]|0)+
24>>2]=-1;c[(c[j>>2]|0)+28>>2]=0;i=n;return}function sj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=b;if((c[c[f>>2]>>
;2]|0)>>>0>=65535){c[d>>2]=0;h=c[d>>2]|0;i=j;return h|0}a=c[e>>2]|0;do if(!(c[(
c[e>>2]|0)+20>>2]&1|0)){c[g>>2]=a;if((c[c[f>>2]>>2]|0)!=(c[(c[g>>
;2]|0)+24>>2]|0)){c[h>>2]=pj(c[e>>2]|0,c[f>>2]|0,1)|0;break}rj(c[g>>2]|0);c[h
x3e;>2]=c[(c[g>>2]|0)+28>>2];if(c[h>>2]|0)c[c[f>>2]>>2]=c[(c[g>>
;2]|0)+24>>2]}else c[h>>2]=oj(a,c[f>>2]|0,1)|0;while(0);c[d>>2]=c[h>>2];h=c[d
x3e;>2]|0;i=j;return h|0}function tj(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,D=0,E=0,F=0,G=0,H=0;H=i;i=i+112|0;n=H+104|0;o=H+100|0;B=H+96|0;x=H+92|0;g=H+88|0;m=H+84|0;j=H+80|0;f=
H+76|0;s=H+72|0;z=H+68|0;r=H+64|0;l=H+60|0;h=H+56|0;k=H+52|0;G=H+48|0;q=H+44|0;A=H+40|0;y=H+36|0;w=H+32|0;v=H+28|0;p=H+24|0;F=H+
20|0;D=H+16|0;C=H+12|0;E=H+8|0;t=H+4|0;u=H;c[n>>2]=b;c[o>>2]=e;c[B>>2]=(c[n>>2]|0)+2;c[B
>>2]=(c[B>>2]|0)+2;c[x>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<<8|(d[(
c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[r>>2]=0;if((c[x>>2]|0)>
x3e;>0<16)sc(c[o>>2]|0,8);if(((c[n>>2]|0)+(c[x>>2]|0)|0)>>>0>(c[(c[o
>>2]|0)+4>>2]|0)>>>0){if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=
1)sc(c[o>>2]|0,8);c[x>>2]=(c[(c[o>>2]|0)+4>>2]|0)-(c[n>>2]|0)}c[B>>2
]=(c[n>>2]|0)+6;c[B>>2]=(c[B>>2]|0)+2;c[z>>2]=((d[(c[B>>2]|0)+-2>>0]
x26;65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if((c[(c[o>>2
]|0)+8>>2]|0)>>>0>=2?c[z>>2]&1|0:0)sc(c[o>>2]|0,8);c[z>>2]=((c[
z>>2]|0)>>>0)/2|0;if((c[x>>2]|0)>>>0<(16+(c[z>>2]<<1
x3c;<2)|0)>>>0)sc(c[o>>2]|0,8);do if((c[(c[o>>2]|0)+8>>2]|0)>>>
0>=2){c[B>>2]=(c[B>>2]|0)+2;c[l>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<
;<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[B>>2]=(c[B>>2]|0
)+2;c[h>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<<8|(d[(c[B>>2]|0)+-2+1>>
;0]&65535)<<0)&65535;c[B>>2]=(c[B>>2]|0)+2;c[k>>2]=((d[(c[B>>2]|0)+-
2>>0]&65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if((c[
l>>2]|c[k>>2])&1|0)sc(c[o>>2]|0,8);c[l>>2]=((c[l>>2]|0)>>>
0)/2|0;c[k>>2]=((c[k>>2]|0)>>>0)/2|0;if((((c[l>>2]|0)>>>0<=(c[z
>>2]|0)>>>0?c[l>>2]<<1>>>0>=(c[z>>2]|0)>>
x3e;0:0)?((c[l>>2]|0)+(c[k>>2]|0)|0)==(c[z>>2]|0):0)?(c[l>>2]|0)==(1<<c[h>
;>2]|0):0)break;sc(c[o>>2]|0,8)}while(0);c[g>>2]=(c[n>>2]|0)+14;c[m>>2]=(c[n>
x3e;2]|0)+16+(c[z>>2]<<1);c[f>>2]=(c[m>>2]|0)+(c[z>>2]<<1);c[j>
x3e;2]=(c[f>>2]|0)+(c[z>>2]<<1);c[s>>2]=(c[j>>2]|0)+(c[z>>2]<
x3c;1);if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=2?(c[B>>2]=(c[g>>2]|0)+((c[z
x3e;>2]|0)-1<<1),(((d[c[B>>2]>>0]&65535)<<8|(d[(c[B>>2]|0)+1>
x3e;0]&65535)<<0)&65535|0)!=65535):0)sc(c[o>>2]|0,8);c[w>>2]=0;c[v>>2]=0;c[F
x3e;>2]=c[m>>2];c[D>>2]=c[g>>2];c[C>>2]=c[f>>2];c[E>>2]=c[j>
;>2];c[y>>2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[z>>2]|0)>>>
0)break;c[B>>2]=c[E>>2];c[F>>2]=(c[F>>2]|0)+2;c[G>>2]=((d[(c[F>>2]|0
)+-2>>0]&65535)<<8|(d[(c[F>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[D
>>2]=(c[D>>2]|0)+2;c[q>>2]=((d[(c[D>>2]|0)+-2>>0]&65535)<<8|(d[(
c[D>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+2;c[p>
x3e;2]=((a[(c[C>>2]|0)+-2>>0]<<16>>16<<8|d[(c[C>>2]|0)+-2+1>>
;0]<<0)&65535)<<16>>16;c[E>>2]=(c[E>>2]|0)+2;c[A>>2]=((d[(c[E
x3e;>2]|0)+-2>>0]&65535)<<8|(d[(c[E>>2]|0)+-2+1>>0]&65535)<<0)
x26;65535;if((c[G>>2]|0)>>>0>(c[q>>2]|0)>>>0)sc(c[o>>2]|0,8);do
if((c[y>>2]|0)>>>0>0?(c[G>>2]|0)>>>0<=(c[v>>2]|0)>
x3e;>0:0){if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=1){sc(c[o>>2]|0,8);break}if((c[
w>>2]|0)>>>0<=(c[G>>2]|0)>>>0?(c[v>>2]|0)>>>0<
;=(c[q>>2]|0)>>>0:0){c[r>>2]=c[r>>2]|2;break}c[r>>2]=c[r>>2]|1}
while(0);f=c[A>>2]|0;a:do if((c[A>>2]|0)!=0&(c[A>>2]|0)!=65535){c[B>>2]=(c[B>
x3e;2]|0)+f;do if((c[(c[o>>2]|0)+8>>2]|0)>>>0<1){if(!(((c[G>>2]|0)==65535?(c[y
>>2]|0)==((c[z>>2]|0)-1|0):0)&(c[q>>2]|0)==65535)){if((c[B>>2]|0)>>>
0>=(c[s>>2]|0)>>>0?((c[B>>2]|0)+((c[q>>2]|0)-(c[G>>2]|0)+1<<
;1)|0)>>>0<=(c[(c[o>>2]|0)+4>>2]|0)>>>0:0)break;sc(c[o>>2]|0,8)}}
else{if((c[B>>2]|0)>>>0>=(c[s>>2]|0)>>>0?((c[B>>2]|0)+((c[q>
;>2]|0)-(c[G>>2]|0)+1<<1)|0)>>>0<=((c[n>>2]|0)+(c[x>>2]|0)|0)
x3e;>>0:0)break;sc(c[o>>2]|0,8)}while(0);if((c[(c[o>>2]|0)+8>>2]|0)>>>0
x3e;=1){c[t>>2]=c[G>>2];while(1){if((c[t>>2]|0)>>>0>=(c[q>>2]|0)>
;>>0)break a;c[B>>2]=(c[B>>2]|0)+2;c[u>>2]=((d[(c[B>>2]|0)+-2>>0]&
;65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if(c[u>>2]|0?(c[
u>>2]=(c[u>>2]|0)+(c[p>>2]|0)&65535,(c[u>>2]|0)>>>0>=(c[(c[o>
;>2]|0)+172>>2]|0)>>>0):0)sc(c[o>>2]|0,16);c[t>>2]=(c[t>>2]|0)+1}}}else
if((f|0)==65535){if((c[(c[o>>2]|0)+8>>2]|0)>>>0<2?((c[G>>2]|0)==65535?(c[y>
;>2]|0)==((c[z>>2]|0)-1|0):0)&(c[q>>2]|0)==65535:0)break;sc(c[o>>2]|0,8)}while(0);c[w>
;>2]=c[G>>2];c[v>>2]=c[q>>2];c[y>>2]=(c[y>>2]|0)+1}i=H;return c[r>
x3e;2]|0}function uj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=
b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=4;c[c[f>>2]
x3e;>2]=(((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&
65535)<<0)&65535;i=e;return 0}function vj(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;h=i;i=i+32|0;n
=h+28|0;l=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;k=h+8|0;j=h+4|0;e=h;c[n>>2]=a;c[l>>2]=b;c[m>>2]=c[(c[n
>>2]|0)+16>>2];c[g>>2]=0;c[f>>2]=(c[m>>2]|0)+6;c[f>>2]=(c[f>>
;2]|0)+2;c[k>>2]=(((d[(c[f>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+-2+
1>>0]|0)&65535)<<0)&65535;c[f>>2]=(c[f>>2]|0)+2;c[j>>2]=(((d[(c[f>
;>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+-2+1>>0]|0)&65535)<<
;0)&65535;c[e>>2]=(c[l>>2]|0)-(c[k>>2]|0);if((c[e>>2]|0)>>>0>=(
c[j>>2]|0)>>>0){n=c[g>>2]|0;i=h;return n|0}c[f>>2]=(c[f>>2]|0)+(c[e>
x3e;2]<<1);c[g>>2]=(((d[c[f>>2]>>0]|0)&65535)<<8|((d[(c[f>>2]|0
)+1>>0]|0)&65535)<<0)&65535;n=c[g>>2]|0;i=h;return n|0}function wj(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;o=i;i=i+48|0;q=o+36|0;f=o+32|0;p=o+28|0;m=o+24|0;g=o+20|0;j=o+16|0;l=o+12|0;e=o+
8|0;h=o+4|0;k=o;c[q>>2]=a;c[f>>2]=b;c[p>>2]=c[(c[q>>2]|0)+16>>2];c[m>>
;2]=0;c[g>>2]=(c[c[f>>2]>>2]|0)+1;c[j>>2]=0;c[l>>2]=(c[p>>2]|0)+6;c[
l>>2]=(c[l>>2]|0)+2;c[e>>2]=(((d[(c[l>>2]|0)+-2>>0]|0)&65535)<<
8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[l>>2]=(c[l>>2]|0)+2
;c[h>>2]=(((d[(c[l>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>
x3e;0]|0)&65535)<<0)&65535;if((c[g>>2]|0)>>>0>=65536){p=c[m>>2]|0;q=
c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}if((c[g>>2]|0)>>>0<(c
[e>>2]|0)>>>0)c[g>>2]=c[e>>2];c[k>>2]=(c[g>>2]|0)-(c[e>>
;2]|0);c[l>>2]=(c[l>>2]|0)+(c[k>>2]<<1);while(1){if((c[k>>2]|0)>>>
;0>=(c[h>>2]|0)>>>0){n=9;break}c[l>>2]=(c[l>>2]|0)+2;c[j>>2]=(((d[(c
[l>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<
;<0)&65535;a=c[g>>2]|0;if(c[j>>2]|0)break;c[g>>2]=a+1;c[k>>2]=(c[k>>
2]|0)+1}if((n|0)==9){p=c[m>>2]|0;q=c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}c[m>
;>2]=a;p=c[m>>2]|0;q=c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}function xj(a,b
){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;k=l+12|0;j=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[
f>>2]=b;if(((c[e>>2]|0)+10|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>
;>0)sc(c[f>>2]|0,8);c[k>>2]=(c[e>>2]|0)+2;c[k>>2]=(c[k>>2]|0)+2;c[j>
x3e;2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)
x26;65535)<<0)&65535;c[k>>2]=(c[e>>2]|0)+8;c[k>>2]=(c[k>>2]|0)+2;c[g>
;>2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0
)&65535)<<0)&65535;if(!(((c[e>>2]|0)+(c[j>>2]|0)|0)>>>0<=(c[(c[f>
;>2]|0)+4>>2]|0)>>>0?(c[j>>2]|0)>>>0>=(10+(c[g>>2]<
x3c;1)|0)>>>0:0))sc(c[f>>2]|0,8);if(!((c[g>>2]|0)>>>0>0?(c[(c[f>>
;2]|0)+8>>2]|0)>>>0>=1:0)){i=l;return 0}do{c[k>>2]=(c[k>>2]|0)+2;c[h>>
;2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)&
;65535)<<0)&65535;if((c[h>>2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)
x3e;>>0)sc(c[f>>2]|0,16);c[g>>2]=(c[g>>2]|0)+-1}while((c[g>>2]|0)>>
x3e;0>0);i=l;return 0}function yj(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;f=e+4|0;g=e;c[h>>2]=a
;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=6;
c[c[f>>2]>>2]=(((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1
x3e;>0]|0)&65535)<<0)&65535;i=e;return 0}function zj(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;m=i;i=i+48|0;o=m+32|0;h=m+28|0;n=m+24|0;j=m+20|0;g=m+16|0;f=m+12|0;k=m+8|0;e=m+4|0;l=m;c[o>>2]=a;c[h>
x3e;2]=b;c[n>>2]=c[(c[o>>2]|0)+16>>2];c[j>>2]=0;c[g>>2]=(c[n>>2]|0)+
8204;c[g>>2]=(c[g>>2]|0)+4;c[f>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(
c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>
;>2]|0)+-4+3>>0]|0)<<0;while(1){if((c[f>>2]|0)>>>0<=0){b=7;break}c[g>
;>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>
;2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-
4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[e>>2]=(d[(c[g>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[l>
x3e;2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if((c[h
x3e;>2]|0)>>>0<(c[k>>2]|0)>>>0){b=7;break}if((c[h>>2]|0)>>
x3e;0<=(c[e>>2]|0)>>>0){b=5;break}c[f>>2]=(c[f>>2]|0)+-1}if((b|0)==5){c[j>
;>2]=(c[l>>2]|0)+(c[h>>2]|0)-(c[k>>2]|0);o=c[j>>2]|0;i=m;return o|0}else if((b|0)==
7){o=c[j>>2]|0;i=m;return o|0}return 0}function Aj(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;p=i;i=i+48|0;r=p+40|0;e=p+36|0;l=p+32|0;f=p+28|0;h=p+24|0;q=p+20|0;k=p+16|0;j=p+12|0;m=p+8|0;g=p+4|0;n=p;c[r>>2]=
a;c[e>>2]=b;c[l>>2]=0;c[f>>2]=(c[c[e>>2]>>2]|0)+1;c[h>>2]=0;c[q>
;>2]=c[(c[r>>2]|0)+16>>2];c[k>>2]=(c[q>>2]|0)+8204;c[k>>2]=(c[k>>
;2]|0)+4;c[j>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<
;<0;c[k>>2]=(c[q>>2]|0)+8208;while(1){if((c[j>>2]|0)>>>0<=0){o=9;break}c[
k>>2]=(c[k>>2]|0)+4;c[m>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>
;>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>
2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>2]|0)+4;c[g>>2]=(d[(c[k>>2]|0)+-4
>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>
x3e;0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>2]|0)+4;c[n
>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<
x3c;16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;if
((c[f>>2]|0)>>>0<(c[m>>2]|0)>>>0)c[f>>2]=c[m>>2];if((
c[f>>2]|0)>>>0<=(c[g>>2]|0)>>>0?(c[h>>2]=(c[f>>2]|0)-(
c[m>>2]|0)+(c[n>>2]|0),c[h>>2]|0):0)break;c[j>>2]=(c[j>>2]|0)+-1}if((o|0)==9){
q=c[l>>2]|0;r=c[e>>2]|0;c[r>>2]=q;r=c[h>>2]|0;i=p;return r|0}c[l>>2]=c[f>
x3e;2];q=c[l>>2]|0;r=c[e>>2]|0;c[r>>2]=q;r=c[h>>2]|0;i=p;return r|0}function Bj(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;t=i;i=i+64|0;e=t+52|0;f=t+48|0;q=t+44|0;k=t+40|0;m=t+36
|0;p=t+32|0;o=t+28|0;r=t+24|0;h=t+20|0;s=t+16|0;g=t+12|0;l=t+8|0;j=t+4|0;n=t;c[e>>2]=a;c[f>>2]=b;c[q>
x3e;2]=(c[e>>2]|0)+4;if(((c[e>>2]|0)+16+8192|0)>>>0>(c[(c[f>>2]|0)+4>>
;2]|0)>>>0)sc(c[f>>2]|0,8);c[q>>2]=(c[q>>2]|0)+4;c[m>>2]=(d[(c[q>>
;2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-
4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;if((c[m>>2]|0)>>
;>0<8208?1:(c[m>>2]|0)>>>0>((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>
2]|0)|0)>>>0)sc(c[f>>2]|0,8);c[k>>2]=(c[e>>2]|0)+12;c[q>>2]=(c[k>>
;2]|0)+8192;c[q>>2]=(c[q>>2]|0)+4;c[p>>2]=(d[(c[q>>2]|0)+-4>>0]|0)<<
24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(
c[q>>2]|0)+-4+3>>0]|0)<<0;if(((c[q>>2]|0)+((c[p>>2]|0)*12|0)|0)>>>
;0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[l>>2]=0;c[o>
x3e;2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[q>>
;2]=(c[q>>2]|0)+4;c[r>>2]=(d[(c[q>>2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3
x3e;>0]|0)<<0;c[q>>2]=(c[q>>2]|0)+4;c[h>>2]=(d[(c[q>>2]|0)+-4>>
0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;c[q>>2]=(c[q>>2]|0)+4;c[s>>
;2]=(d[(c[q>>2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(
c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;if((c[r>
;>2]|0)>>>0>(c[h>>2]|0)>>>0)sc(c[f>>2]|0,8);if((c[o>>2]|0)
x3e;>>0>0?(c[r>>2]|0)>>>0<=(c[l>>2]|0)>>>0:0)sc(c[f>
x3e;2]|0,8);a:do if((c[(c[f>>2]|0)+8>>2]|0)>>>0>=1){if(((c[s>>2]|0)+(c[h>
x3e;2]|0)-(c[r>>2]|0)|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)>>>0)sc(
c[f>>2]|0,16);c[g>>2]=(c[h>>2]|0)-(c[r>>2]|0)+1;if(c[r>>2]&-65536|0)while
(1){if((c[g>>2]|0)>>>0<=0)break a;c[j>>2]=(c[r>>2]|0)>>>16;c[n
x3e;>2]=c[r>>2]&65535;if(!((d[(c[k>>2]|0)+((c[j>>2]|0)>>>3)>>0]|
0)&128>>(c[j>>2]&7)))sc(c[f>>2]|0,8);if(!((d[(c[k>>2]|0)+((c[n>>2]|0
)>>>3)>>0]|0)&128>>(c[n>>2]&7)))sc(c[f>>2]|0,8);c[g>>
2]=(c[g>>2]|0)+-1;c[r>>2]=(c[r>>2]|0)+1}else{if(c[h>>2]&-65536|0)sc(c[f>>
2]|0,8);while(1){if((c[g>>2]|0)>>>0<=0)break a;c[n>>2]=c[r>>2]&65535;if((
d[(c[k>>2]|0)+((c[n>>2]|0)>>>3)>>0]|0)&128>>(c[n>>2]&
7)|0)sc(c[f>>2]|0,8);c[g>>2]=(c[g>>2]|0)+-1;c[r>>2]=(c[r>>2]|0)+1}}}while(0);c
[l>>2]=c[h>>2];c[o>>2]=(c[o>>2]|0)+1}i=t;return 0}function Cj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16
>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=8;c[c[f>>2]>>2]=(d[c[g>>2]>>
0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>>0]|0)<
x3c;8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function Dj(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;h=i;i=i+32|0;n=h+28|0;l=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;k=h+8|0;j=h+4|0;e=h;c[n>>2]=a;c[l>>
;2]=b;c[m>>2]=c[(c[n>>2]|0)+16>>2];c[g>>2]=0;c[f>>2]=(c[m>>2]|0)+12;
c[f>>2]=(c[f>>2]|0)+4;c[k>>2]=(d[(c[f>>2]|0)+-4>>0]|0)<<24|(d[(c[f
x3e;>2]|0)+-4+1>>0]|0)<<16|(d[(c[f>>2]|0)+-4+2>>0]|0)<<8|(d[(c[f>>
;2]|0)+-4+3>>0]|0)<<0;c[f>>2]=(c[f>>2]|0)+4;c[j>>2]=(d[(c[f>>2]|0)+-
4>>0]|0)<<24|(d[(c[f>>2]|0)+-4+1>>0]|0)<<16|(d[(c[f>>2]|0)+-4+2>
;>0]|0)<<8|(d[(c[f>>2]|0)+-4+3>>0]|0)<<0;c[e>>2]=(c[l>>2]|0)-(c
[k>>2]|0);if((c[e>>2]|0)>>>0>=(c[j>>2]|0)>>>0){n=c[g>>
;2]|0;i=h;return n|0}c[f>>2]=(c[f>>2]|0)+(c[e>>2]<<1);c[g>>2]=(((d[c[f>
x3e;2]>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+1>>0]|0)&65535)<<0)&65535
;n=c[g>>2]|0;i=h;return n|0}function Ej(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;m=i;i=i+48|0;o=m+
32|0;j=m+28|0;n=m+24|0;k=m+20|0;l=m+16|0;g=m+12|0;h=m+8|0;e=m+4|0;f=m;c[o>>2]=a;c[j>>2]=b;c[n>>2]=
c[(c[o>>2]|0)+16>>2];c[k>>2]=(c[c[j>>2]>>2]|0)+1;c[l>>2]=0;c[g>
x3e;2]=(c[n>>2]|0)+12;c[g>>2]=(c[g>>2]|0)+4;c[h>>2]=(d[(c[g>>2]|0)+-4>>
;0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[e>>
;2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(
c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if((c[k>
;>2]|0)>>>0<(c[h>>2]|0)>>>0)c[k>>2]=c[h>>2];c[f>>
;2]=(c[k>>2]|0)-(c[h>>2]|0);c[g>>2]=(c[g>>2]|0)+(c[f>>2]<<1);while(1
){if((c[f>>2]|0)>>>0>=(c[e>>2]|0)>>>0){a=7;break}c[g>>2]=(c[g
x3e;>2]|0)+2;c[l>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[g>>
2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if(c[l>>2]|0){a=7;break}c[k>>2]=(c[k>
x3e;2]|0)+1;c[f>>2]=(c[f>>2]|0)+1}if((a|0)==7){c[c[j>>2]>>2]=c[k>>2];i=m;return
c[l>>2]|0}return 0}function Fj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;k=l+12
|0;j=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[f>>2]=b;c[k>>2]=(c[e>>2]|0)+4;if(((c[e>>2]|
0)+20|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[k>
;>2]=(c[k>>2]|0)+4;c[j>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>
;2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-
4+3>>0]|0)<<0;c[k>>2]=(c[e>>2]|0)+16;c[k>>2]=(c[k>>2]|0)+4;c[g>
x3e;2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;if(!((c[j
>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>2]|0)|0)>>>
;0?(c[j>>2]|0)>>>0>=(20+(c[g>>2]<<1)|0)>>>0:0))sc(c[f>>
;2]|0,8);if(!((c[g>>2]|0)>>>0>0?(c[(c[f>>2]|0)+8>>2]|0)>>>0>
;=1:0)){i=l;return 0}do{c[k>>2]=(c[k>>2]|0)+2;c[h>>2]=(((d[(c[k>>2]|0)+-2>>0]|
0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c[h>
x3e;2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)>>>0)sc(c[f>>2]|0,16);c
[g>>2]=(c[g>>2]|0)+-1}while((c[g>>2]|0)>>>0>0);i=l;return 0}function Gj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[
h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=10;c[c[f>>2]>>2]=(d[c[g>
;>2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>
;>0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function Hj(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;c[(c[g>>2]|0)+16>>2]=c[h>
x3e;2];c[h>>2]=(c[h>>2]|0)+12;c[(c[g>>2]|0)+40>>2]=(d[c[h>>2]>>0]|0)
x3c;<24|(d[(c[h>>2]|0)+1>>0]|0)<<16|(d[(c[h>>2]|0)+2>>0]|0)<<8|(
d[(c[h>>2]|0)+3>>0]|0)<<0;a[(c[g>>2]|0)+24>>0]=0;i=f;return 0}function Ij(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=Jj(c[f>>2]|0,e,0)|0;i=d
;return a|0}function Jj(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;x=i;i=i
+64|0;g=x+52|0;h=x+48|0;j=x+44|0;k=x+56|0;o=x+40|0;t=x+36|0;s=x+32|0;l=x+28|0;u=x+24|0;n=x+20|0;v=x+16|0;p=x+12|0;r=x+8|0;q=x+4|
0;m=x;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;c[o>>2]=0;c[t>>2]=(c[(c[h>>2]|0)+
16>>2]|0)+12;c[s>>2]=d[c[t>>2]>>0]<<24|d[(c[t>>2]|0)+1>>0]
x3c;<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t>>2]|0)+3>>0]<<0;c[l>
x3e;2]=c[c[j>>2]>>2];if(!(c[s>>2]|0)){c[g>>2]=0;w=c[g>>2]|0;i=x;return w|0}c[q
>>2]=c[s>>2];c[n>>2]=-1;if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1;c[r>
x3e;2]=0;c[p>>2]=c[s>>2];while(1){if((c[r>>2]|0)>>>0>=(c[p>>2]|0)>
;>>0)break;c[q>>2]=((c[r>>2]|0)+(c[p>>2]|0)|0)>>>1;c[t>>2]=(c[(
c[h>>2]|0)+16>>2]|0)+16+((c[q>>2]|0)*12|0);c[t>>2]=(c[t>>2]|0)+4;c[u>>
;2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>>2]|0)+-4+1>>0]<<16|d[(c[t>
x3e;2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4+3>>0]<<0;c[t>>2]=(c[t>
x3e;2]|0)+4;c[n>>2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>>2]|0)+-4+1>>0]
x3c;<16|d[(c[t>>2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4+3>>0]<<0;if((
c[l>>2]|0)>>>0<(c[u>>2]|0)>>>0){c[p>>2]=c[q>>2];continue
}if((c[l>>2]|0)>>>0<=(c[n>>2]|0)>>>0){w=11;break}c[r>>2]=(c[q
x3e;>2]|0)+1}if((w|0)==11){c[v>>2]=d[c[t>>2]>>0]<<24|d[(c[t>>2]|0)+1>
;>0]<<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t>>2]|0)+3>>0]<<
0;c[o>>2]=(c[v>>2]|0)+(c[l>>2]|0)-(c[u>>2]|0)}if(a[k>>0]|0){c[m>>2]=
c[h>>2];if((c[l>>2]|0)>>>0>(c[n>>2]|0)>>>0?(c[q>>2]=(
c[q>>2]|0)+1,(c[q>>2]|0)==(c[s>>2]|0)):0){c[g>>2]=0;w=c[g>>2]|0;i=x;return w|0
}a[(c[m>>2]|0)+24>>0]=1;c[(c[m>>2]|0)+28>>2]=c[l>>2];c[(c[m>>2]|0)+36
>>2]=c[q>>2];if(!(c[o>>2]|0)){Kj(c[m>>2]|0);if(a[(c[m>>2]|0)+24>>0]|
0)c[o>>2]=c[(c[m>>2]|0)+32>>2]}else c[(c[m>>2]|0)+32>>2]=c[o>>2];if(
c[o>>2]|0)c[c[j>>2]>>2]=c[(c[m>>2]|0)+28>>2]}c[g>>2]=c[o>>
2];w=c[g>>2]|0;i=x;return w|0}function Kj(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;e=n+28|0;k=n+24
|0;l=n+20|0;g=n+16|0;m=n+12|0;f=n+8|0;j=n+4|0;h=n;c[e>>2]=b;a:do if((c[(c[e>>2]|0)+28>>2]|0)>
x3e;>0<4294967295){c[f>>2]=(c[(c[e>>2]|0)+28>>2]|0)+1;c[j>>2]=c[(c[e>>
;2]|0)+36>>2];c[j>>2]=c[(c[e>>2]|0)+36>>2];b:while(1){if((c[j>>2]|0)>>
;>0>=(c[(c[e>>2]|0)+40>>2]|0)>>>0)break a;c[k>>2]=(c[(c[e>>2]|0
)+16>>2]|0)+16+((c[j>>2]|0)*12|0);c[k>>2]=(c[k>>2]|0)+4;c[l>>2]=(d[(c[k>
x3e;2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0
)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>
;2]|0)+4;c[g>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<
;<0;c[m>>2]=(d[c[k>>2]>>0]|0)<<24|(d[(c[k>>2]|0)+1>>0]|0)<
x3c;16|(d[(c[k>>2]|0)+2>>0]|0)<<8|(d[(c[k>>2]|0)+3>>0]|0)<<0;if((c[f
>>2]|0)>>>0<(c[l>>2]|0)>>>0)c[f>>2]=c[l>>2];while(1){
if((c[f>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[h>>2]=(c[m>>
;2]|0)+(c[f>>2]|0)-(c[l>>2]|0);b=c[f>>2]|0;if(c[h>>2]|0)break b;c[f>>2]=b+1}c[
j>>2]=(c[j>>2]|0)+1}c[(c[e>>2]|0)+28>>2]=b;c[(c[e>>2]|0)+32>>2]=c[h
x3e;>2];c[(c[e>>2]|0)+36>>2]=c[j>>2];i=n;return}while(0);a[(c[e>>2]|0)+24>>
;0]=0;i=n;return}function Lj(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m
;c[g>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];if((c[(c[j>>2]|0)+28>>2]|0)>
;>>0>=4294967295){c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}do if(d[(c[j>>2]|0)+24>
x3e;0]|0?(c[(c[j>>2]|0)+28>>2]|0)==(c[c[h>>2]>>2]|0):0){Kj(c[j>>2]|0);if(!(a[(
c[j>>2]|0)+24>>0]|0)){c[k>>2]=0;break}c[k>>2]=c[(c[j>>2]|0)+32>>2];if
(c[k>>2]|0)c[c[h>>2]>>2]=c[(c[j>>2]|0)+28>>2]}else l=9;while(0);if((l|0)==9)c[
k>>2]=Jj(c[g>>2]|0,c[h>>2]|0,1)|0;c[f>>2]=c[k>>2];l=c[f>>2]|0;i=m;return
l|0}function Mj(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0;m=p+28|0;j=p+24
|0;l=p+20|0;k=p+16|0;n=p+12|0;g=p+8|0;o=p+4|0;h=p;c[e>>2]=a;c[f>>2]=b;if(((c[e>>2]|0)+16|0)>
x3e;>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[m>>2]=(c[e
>>2]|0)+4;c[m>>2]=(c[m>>2]|0)+4;c[j>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<
;<24|(d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<
;8|(d[(c[m>>2]|0)+-4+3>>0]|0)<<0;c[m>>2]=(c[e>>2]|0)+12;c[m>>2]=(c[m
>>2]|0)+4;c[l>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1
x3e;>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>
;0]|0)<<0;if(!((c[j>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>
x3e;2]|0)|0)>>>0?(c[j>>2]|0)>>>0>=(16+((c[l>>2]|0)*12|0)|0)>>
x3e;0:0))sc(c[f>>2]|0,8);c[h>>2]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0
x3e;=(c[l>>2]|0)>>>0)break;c[m>>2]=(c[m>>2]|0)+4;c[n>>2]=(d[(c[m>>
;2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-
4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>0]|0)<<0;c[m>>2]=(c[m>>
2]|0)+4;c[g>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1>>0]|
0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>0]|0)<
;<0;c[m>>2]=(c[m>>2]|0)+4;c[o>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(
d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m
x3e;>2]|0)+-4+3>>0]|0)<<0;if((c[n>>2]|0)>>>0>(c[g>>2]|0)>
x3e;>0)sc(c[f>>2]|0,8);if((c[k>>2]|0)>>>0>0?(c[n>>2]|0)>>>
0<=(c[h>>2]|0)>>>0:0)sc(c[f>>2]|0,8);if((c[(c[f>>2]|0)+8>>2]|0)>
;>>0>=1?((c[o>>2]|0)+(c[g>>2]|0)-(c[n>>2]|0)|0)>>>0>=(c[(c[f>
;>2]|0)+172>>2]|0)>>>0:0)sc(c[f>>2]|0,16);c[h>>2]=c[g>>2];c[k>
x3e;2]=(c[k>>2]|0)+1}i=p;return 0}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;h=e+8|0;f=e+4|0;g=e;c[
h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4
>>2]=12;c[c[f>>2]>>2]=(d[c[g>>2]>>0]|0)<<24|(d[(c[g>>2]|0)+
1>>0]|0)<<16|(d[(c[g>>2]|0)+2>>0]|0)<<8|(d[(c[g>>2]|0)+3>>
0]|0)<<0;i=e;return 0}function Oj(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;c[(c[g>>2]|0)+16>>2]=c[h>>2];c[h>>2]=(c[h>>2]|0)+12;c[(c[g>
x3e;2]|0)+40>>2]=(d[c[h>>2]>>0]|0)<<24|(d[(c[h>>2]|0)+1>>0]|0)<
x3c;16|(d[(c[h>>2]|0)+2>>0]|0)<<8|(d[(c[h>>2]|0)+3>>0]|0)<<0;a[(c[g
x3e;>2]|0)+24>>0]=0;i=f;return 0}function Pj(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>
x3e;2]=a;c[e>>2]=b;a=Qj(c[f>>2]|0,e,0)|0;i=d;return a|0}function Qj(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;w=i;i=i+64|0;g=w+48|0;h=w+44|0;j=w+40|0;k=w+52|0;o=w+36|0;t=w+32|0;s=w+28|0
;l=w+24|0;u=w+20|0;n=w+16|0;p=w+12|0;r=w+8|0;q=w+4|0;m=w;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;c[o>
x3e;2]=0;c[t>>2]=(c[(c[h>>2]|0)+16>>2]|0)+12;c[s>>2]=d[c[t>>2]>>0]
x3c;<24|d[(c[t>>2]|0)+1>>0]<<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t
x3e;>2]|0)+3>>0]<<0;c[l>>2]=c[c[j>>2]>>2];if(!(c[s>>2]|0)){c[g
x3e;>2]=0;v=c[g>>2]|0;i=w;return v|0}c[q>>2]=c[s>>2];c[n>>2]=-1;if(a[k>>0
]|0)c[l>>2]=(c[l>>2]|0)+1;c[r>>2]=0;c[p>>2]=c[s>>2];while(1){if((c[r>>
;2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[q>>2]=((c[r>>2]|0)+(c[p>
;>2]|0)|0)>>>1;c[t>>2]=(c[(c[h>>2]|0)+16>>2]|0)+16+((c[q>>2]|0)*12|0
);c[t>>2]=(c[t>>2]|0)+4;c[u>>2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>
;>2]|0)+-4+1>>0]<<16|d[(c[t>>2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4
+3>>0]<<0;c[t>>2]=(c[t>>2]|0)+4;c[n>>2]=d[(c[t>>2]|0)+-4>>
0]<<24|d[(c[t>>2]|0)+-4+1>>0]<<16|d[(c[t>>2]|0)+-4+2>>0]<<
8|d[(c[t>>2]|0)+-4+3>>0]<<0;if((c[l>>2]|0)>>>0<(c[u>>2]|0)
x3e;>>0){c[p>>2]=c[q>>2];continue}if((c[l>>2]|0)>>>0<=(c[n>>
;2]|0)>>>0){v=11;break}c[r>>2]=(c[q>>2]|0)+1}if((v|0)==11)c[o>>2]=d[c[t>>
2]>>0]<<24|d[(c[t>>2]|0)+1>>0]<<16|d[(c[t>>2]|0)+2>>0]<
;<8|d[(c[t>>2]|0)+3>>0]<<0;if(a[k>>0]|0){c[m>>2]=c[h>>2];if((c[
l>>2]|0)>>>0>(c[n>>2]|0)>>>0?(c[q>>2]=(c[q>>2]|0)+1,(
c[q>>2]|0)==(c[s>>2]|0)):0){c[g>>2]=0;v=c[g>>2]|0;i=w;return v|0}a[(c[m>>2]|0)+
24>>0]=1;c[(c[m>>2]|0)+28>>2]=c[l>>2];c[(c[m>>2]|0)+36>>2]=c[q>
x3e;2];if(!(c[o>>2]|0)){Rj(c[m>>2]|0);if(a[(c[m>>2]|0)+24>>0]|0)c[o>>2]=c[(c[m
>>2]|0)+32>>2]}else c[(c[m>>2]|0)+32>>2]=c[o>>2];if(c[o>>2]|0)c[c[j
x3e;>2]>>2]=c[(c[m>>2]|0)+28>>2]}c[g>>2]=c[o>>2];v=c[g>>2]|0;i=
w;return v|0}function Rj(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;e=n+28|0;l=n+24|0;m=n+20|0;g=n+16|0;j=n+12
|0;f=n+8|0;k=n+4|0;h=n;c[e>>2]=b;a:do if((c[(c[e>>2]|0)+28>>2]|0)>>>0<4294967295
){c[f>>2]=(c[(c[e>>2]|0)+28>>2]|0)+1;c[k>>2]=c[(c[e>>2]|0)+36>>2];c[
k>>2]=c[(c[e>>2]|0)+36>>2];while(1){if((c[k>>2]|0)>>>0>=(c[(c[e>
;>2]|0)+40>>2]|0)>>>0)break a;c[l>>2]=(c[(c[e>>2]|0)+16>>2]|0)+16+((
c[k>>2]|0)*12|0);c[l>>2]=(c[l>>2]|0)+4;c[m>>2]=(d[(c[l>>2]|0)+-4>>0]|
0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)<
;<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;c[l>>2]=(c[l>>2]|0)+4;c[g>>2]=(
d[(c[l>>2]|0)+-4>>0]|0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l
x3e;>2]|0)+-4+2>>0]|0)<<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;c[j>>2]=(
d[c[l>>2]>>0]|0)<<24|(d[(c[l>>2]|0)+1>>0]|0)<<16|(d[(c[l>>
2]|0)+2>>0]|0)<<8|(d[(c[l>>2]|0)+3>>0]|0)<<0;if((c[f>>2]|0)>>
;>0<(c[m>>2]|0)>>>0)c[f>>2]=c[m>>2];if((c[f>>2]|0)>>
x3e;0<=(c[g>>2]|0)>>>0?(c[h>>2]=c[j>>2],c[h>>2]|0):0)break;c[k>
x3e;2]=(c[k>>2]|0)+1}c[(c[e>>2]|0)+28>>2]=c[f>>2];c[(c[e>>2]|0)+32>>
2]=c[h>>2];c[(c[e>>2]|0)+36>>2]=c[k>>2];i=n;return}while(0);a[(c[e>>2]|0)+24
x3e;>0]=0;i=n;return}function Sj(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;j=
m+4|0;k=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];if((c[(c[j>>2]|0)+28>>
2]|0)>>>0>=4294967295){c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}do if(d[(c[j>>2]|0
)+24>>0]|0?(c[(c[j>>2]|0)+28>>2]|0)==(c[c[h>>2]>>2]|0):0){Rj(c[j>>2]|
0);if(!(a[(c[j>>2]|0)+24>>0]|0)){c[k>>2]=0;break}c[k>>2]=c[(c[j>>2]|0)+32>
;>2];if(c[k>>2]|0)c[c[h>>2]>>2]=c[(c[j>>2]|0)+28>>2]}else l=9;while(0);if
((l|0)==9)c[k>>2]=Qj(c[g>>2]|0,c[h>>2]|0,1)|0;c[f>>2]=c[k>>2];l=c[f>>
;2]|0;i=m;return l|0}function Tj(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0
;n=p+28|0;k=p+24|0;m=p+20|0;l=p+16|0;o=p+12|0;g=p+8|0;h=p+4|0;j=p;c[e>>2]=a;c[f>>2]=b;if(((c[e>>2]|
0)+16|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[n>
;>2]=(c[e>>2]|0)+4;c[n>>2]=(c[n>>2]|0)+4;c[k>>2]=(d[(c[n>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;c[n>>2]=(c[e>>2]|0)+12;c[n>
x3e;2]=(c[n>>2]|0)+4;c[m>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4
+3>>0]|0)<<0;if(!((c[k>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0
)-(c[e>>2]|0)|0)>>>0?(c[k>>2]|0)>>>0>=(16+((c[m>>2]|0)*12|0)|0)
x3e;>>0:0))sc(c[f>>2]|0,8);c[j>>2]=0;c[l>>2]=0;while(1){if((c[l>>2]|0)>
x3e;>0>=(c[m>>2]|0)>>>0)break;c[n>>2]=(c[n>>2]|0)+4;c[o>>2]=(d[(
c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>
;>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;c[n>>2]=(c
[n>>2]|0)+4;c[g>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1
>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>
x3e;0]|0)<<0;c[n>>2]=(c[n>>2]|0)+4;c[h>>2]=(d[(c[n>>2]|0)+-4>>0]|0)
x3c;<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<
x3c;8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;if((c[o>>2]|0)>>>0>(c[g>>
;2]|0)>>>0)sc(c[f>>2]|0,8);if((c[l>>2]|0)>>>0>0?(c[o>>2]|0)>
;>>0<=(c[j>>2]|0)>>>0:0)sc(c[f>>2]|0,8);if((c[(c[f>>2]|0)+8>>
;2]|0)>>>0>=1?(c[h>>2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)
x3e;>>0:0)sc(c[f>>2]|0,16);c[j>>2]=c[g>>2];c[l>>2]=(c[l>>2]|0)+1}i=p
;return 0}function Uj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2
]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=13;c[c[f>>
;2]>>2]=(d[c[g>>2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(
d[(c[g>>2]|0)+2>>0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function
Vj(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;c[(c[f>>2]|0)+16
>>2]=c[g>>2];c[g>>2]=(c[g>>2]|0)+6;c[(c[f>>2]|0)+24>>2]=(d[c[g>
x3e;2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>
x3e;0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;c[(c[f>>2]|0)+28>>2]=0;c[(c[
f>>2]|0)+32>>2]=0;i=e;return 0}function Wj(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>
2]=a;c[d>>2]=c[(c[b>>2]|0)+36>>2];c[(c[b>>2]|0)+28>>2]=0;if(!(c[d>>2
]|0)){i=e;return}if(!(c[(c[b>>2]|0)+32>>2]|0)){i=e;return}Fb(c[d>>2]|0,c[(c[b>>2]|0)+32
x3e;>2]|0);c[(c[b>>2]|0)+32>>2]=0;i=e;return}function Xj(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[f>>2]=c[f>>2];c[e>>2]=c[e>>2];i=d;
return 0}function Yj(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[f>
x3e;2]=c[f>>2];c[c[e>>2]>>2]=0;i=d;return 0}function Zj(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;o=i;i=i+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;p=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a
;c[j>>2]=b;c[k>>2]=e;c[p>>2]=f;c[n>>2]=_j((c[(c[h>>2]|0)+16>>2]|0)+6
|0,c[p>>2]|0)|0;if(!(c[n>>2]|0)){c[g>>2]=0;p=c[g>>2]|0;i=o;return p|0}c[n>>2]=(
c[n>>2]|0)+4;c[l>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+
1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>
x3e;0]|0)<<0;c[m>>2]=(d[c[n>>2]>>0]|0)<<24|(d[(c[n>>2]|0)+1>>
;0]|0)<<16|(d[(c[n>>2]|0)+2>>0]|0)<<8|(d[(c[n>>2]|0)+3>>0]|0)<
x3c;0;if(c[l>>2]|0?$j((c[(c[h>>2]|0)+16>>2]|0)+(c[l>>2]|0)|0,c[k>>2]|0)|0:0){c
[g>>2]=Ya[c[(c[(c[j>>2]|0)+12>>2]|0)+12>>2]&127](c[j>>2]|0,c[k>>
;2]|0)|0;p=c[g>>2]|0;i=o;return p|0}if(c[m>>2]|0){c[g>>2]=ak((c[(c[h>>2]|0)+16>>
;2]|0)+(c[m>>2]|0)|0,c[k>>2]|0)|0;p=c[g>>2]|0;i=o;return p|0}else{c[g>>2]=0;p=c[g>
x3e;2]|0;i=o;return p|0}return 0}function _j(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;n=i;i=i+48|0;l=n+32|0;
e=n+28|0;f=n+24|0;o=n+20|0;g=n+16|0;j=n+12|0;h=n+8|0;m=n+4|0;k=n;c[e>>2]=a;c[f>>2]=b;c[o>>2]=(d[c[
e>>2]>>0]|0)<<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>>2]|0
)+2>>0]|0)<<8|(d[(c[e>>2]|0)+3>>0]|0)<<0;c[j>>2]=0;c[g>>2]=
c[o>>2];c[e>>2]=(c[e>>2]|0)+4;while(1){if((c[j>>2]|0)>>>0>=(c[g>
;>2]|0)>>>0){e=8;break}c[h>>2]=((c[j>>2]|0)+(c[g>>2]|0)|0)>>>1;
c[m>>2]=(c[e>>2]|0)+((c[h>>2]|0)*11|0);c[m>>2]=(c[m>>2]|0)+3;c[k>>2]=(
d[(c[m>>2]|0)+-3>>0]|0)<<16|(d[(c[m>>2]|0)+-3+1>>0]|0)<<8|(d[(c[m>
;>2]|0)+-3+2>>0]|0)<<0;if((c[f>>2]|0)>>>0<(c[k>>2]|0)>>
;>0){c[g>>2]=c[h>>2];continue}if((c[f>>2]|0)>>>0<=(c[k>>2]|0)
x3e;>>0){e=7;break}c[j>>2]=(c[h>>2]|0)+1}if((e|0)==7){c[l>>2]=c[m>>2];o=c[l>
;>2]|0;i=n;return o|0}else if((e|0)==8){c[l>>2]=0;o=c[l>>2]|0;i=n;return o|0}return 0}function $j(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;o=i;i=i+48|0;n=o+36|0;e=o+32|0;f=o+28|0;p=o+24|0;h=o+20|0;k=o+16|0;j
=o+12|0;l=o+8|0;m=o+4|0;g=o;c[e>>2]=a;c[f>>2]=b;c[p>>2]=(d[c[e>>2]>>0]|0)<
;<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>>2]|0)+2>>0]|0)<<8|(d[(
c[e>>2]|0)+3>>0]|0)<<0;c[k>>2]=0;c[h>>2]=c[p>>2];c[e>>2]=(
c[e>>2]|0)+4;while(1){if((c[k>>2]|0)>>>0>=(c[h>>2]|0)>>>0){e=8;
break}c[j>>2]=((c[k>>2]|0)+(c[h>>2]|0)|0)>>>1;c[l>>2]=(c[e>>2]|
0)+(c[j>>2]<<2);c[l>>2]=(c[l>>2]|0)+3;c[m>>2]=(d[(c[l>>2]|0)+-3>
;>0]|0)<<16|(d[(c[l>>2]|0)+-3+1>>0]|0)<<8|(d[(c[l>>2]|0)+-3+2>>
0]|0)<<0;p=c[l>>2]|0;c[l>>2]=p+1;c[g>>2]=d[p>>0];if((c[f>>2]|0)>
;>>0<(c[m>>2]|0)>>>0){c[h>>2]=c[j>>2];continue}if((c[f>>2]|
0)>>>0<=((c[m>>2]|0)+(c[g>>2]|0)|0)>>>0){e=7;break}c[k>>2]=(c[j
>>2]|0)+1}if((e|0)==7){c[n>>2]=1;p=c[n>>2]|0;i=o;return p|0}else if((e|0)==8){c[n>>2]=0;
p=c[n>>2]|0;i=o;return p|0}return 0}function ak(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;n=i;i=i+48
|0;l=n+32|0;e=n+28|0;f=n+24|0;o=n+20|0;g=n+16|0;j=n+12|0;h=n+8|0;m=n+4|0;k=n;c[e>>2]=a;c[f>>2]=b;c[o>
x3e;2]=(d[c[e>>2]>>0]|0)<<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>
;>2]|0)+2>>0]|0)<<8|(d[(c[e>>2]|0)+3>>0]|0)<<0;c[j>>2]=0;c[g>
;>2]=c[o>>2];c[e>>2]=(c[e>>2]|0)+4;while(1){if((c[j>>2]|0)>>>0>=(
c[g>>2]|0)>>>0){e=8;break}c[h>>2]=((c[j>>2]|0)+(c[g>>2]|0)|0)>>
x3e;1;c[m>>2]=(c[e>>2]|0)+((c[h>>2]|0)*5|0);c[m>>2]=(c[m>>2]|0)+3;c[k>>
;2]=(d[(c[m>>2]|0)+-3>>0]|0)<<16|(d[(c[m>>2]|0)+-3+1>>0]|0)<<8|(d[(c
[m>>2]|0)+-3+2>>0]|0)<<0;if((c[f>>2]|0)>>>0<(c[k>>2]|0)>
;>>0){c[g>>2]=c[h>>2];continue}if((c[f>>2]|0)>>>0<=(c[k>>2
]|0)>>>0){e=7;break}c[j>>2]=(c[h>>2]|0)+1}if((e|0)==7){c[l>>2]=(((d[c[m>>
2]>>0]|0)&65535)<<8|((d[(c[m>>2]|0)+1>>0]|0)&65535)<<0)&65535;o
=c[l>>2]|0;i=n;return o|0}else if((e|0)==8){c[l>>2]=0;o=c[l>>2]|0;i=n;return o|0}return 0}function
bk(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;m=i;i=i+32|0;f=m+24|0;g=m+20|0;h=m+16|0;n=m+12|0;l=m+8|0;j=m+4|
0;k=m;c[g>>2]=a;c[h>>2]=b;c[n>>2]=e;c[l>>2]=_j((c[(c[g>>2]|0)+16>>2]|
0)+6|0,c[n>>2]|0)|0;if(!(c[l>>2]|0)){c[f>>2]=-1;n=c[f>>2]|0;i=m;return n|0}c[l>>
;2]=(c[l>>2]|0)+4;c[j>>2]=(d[(c[l>>2]|0)+-4>>0]|0)<<24|(d[(c[l>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)<<8|(d[(c[l>>2]|0)+-4+3
x3e;>0]|0)<<0;c[l>>2]=(c[l>>2]|0)+4;c[k>>2]=(d[(c[l>>2]|0)+-4>>
0]|0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;if(c[j>>2]|0?$j((c[(c[g>>2]|0)+16>
;>2]|0)+(c[j>>2]|0)|0,c[h>>2]|0)|0:0){c[f>>2]=1;n=c[f>>2]|0;i=m;return n|0}if(c[k
x3e;>2]|0?ak((c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]|0)|0,c[h>>2]|0)|0:0){c[f>>
2]=0;n=c[f>>2]|0;i=m;return n|0}c[f>>2]=-1;n=c[f>>2]|0;i=m;return n|0}function ck(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;l=i;i=i+32|0;e=l+28|0;n=l+24|0;m=l+20|0;f=l+16|0;g=l+12|0;j=l+8|0;k=l+4|0;h=l;c[n>
x3e;2]=a;c[m>>2]=b;c[f>>2]=c[n>>2];c[g>>2]=c[(c[f>>2]|0)+24>>2];c[j
x3e;>2]=(c[(c[n>>2]|0)+16>>2]|0)+10;if(dk(c[f>>2]|0,(c[g>>2]|0)+1|0,c[m>>
2]|0)|0){c[e>>2]=0;n=c[e>>2]|0;i=l;return n|0}c[k>>2]=c[(c[f>>2]|0)+32>>2];c[h
>>2]=0;while(1){if((c[h>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[j
x3e;>2]=(c[j>>2]|0)+3;c[(c[k>>2]|0)+(c[h>>2]<<2)>>2]=(d[(c[j>>2
]|0)+-3>>0]|0)<<16|(d[(c[j>>2]|0)+-3+1>>0]|0)<<8|(d[(c[j>>2]|0)+-3+2
>>0]|0)<<0;c[j>>2]=(c[j>>2]|0)+8;c[h>>2]=(c[h>>2]|0)+1}c[(c[k>
x3e;2]|0)+(c[h>>2]<<2)>>2]=0;c[e>>2]=c[k>>2];n=c[e>>2]|0;i=l;return
n|0}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,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0
;j=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=c[(c[f>>2]|0)+28>>2];c[j
x3e;>2]=0;do if((c[g>>2]|0)>>>0>(c[(c[f>>2]|0)+28>>2]|0)>>>
;0){c[(c[f>>2]|0)+36>>2]=c[h>>2];k=hc(c[h>>2]|0,4,c[k>>2]|0,c[g>>2]|
0,c[(c[f>>2]|0)+32>>2]|0,j)|0;c[(c[f>>2]|0)+32>>2]=k;if(!(c[j>>2]|0)){c[(c[f
x3e;>2]|0)+28>>2]=c[g>>2];break}c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|
0}while(0);c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|0}function ek(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;q=i;i=i+48|0;f=q+40|0;g=q+36|0;r=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;n=q+16|0;o=q+12|
0;p=q+8|0;l=q+4|0;m=q;c[g>>2]=a;c[r>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];c[k>
x3e;2]=c[(c[j>>2]|0)+24>>2];c[n>>2]=(c[(c[g>>2]|0)+16>>2]|0)+10;if(dk(c[j>
;>2]|0,(c[k>>2]|0)+1|0,c[r>>2]|0)|0){c[f>>2]=0;r=c[f>>2]|0;i=q;return r|0}c[o>
x3e;2]=c[(c[j>>2]|0)+32>>2];while(1){if((c[k>>2]|0)>>>0<=0)break;c[n>>
;2]=(c[n>>2]|0)+3;c[p>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0
)+-3+1>>0]|0)<<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;c[n>>2]=(c[n>>
;2]|0)+4;c[l>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<
;<0;c[n>>2]=(c[n>>2]|0)+4;c[m>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(
d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n
x3e;>2]|0)+-4+3>>0]|0)<<0;if(c[l>>2]|0?$j((c[(c[g>>2]|0)+16>>2]|0)+(c[l
x3e;>2]|0)|0,c[h>>2]|0)|0:0)e=9;else e=7;if(((e|0)==7?(e=0,c[m>>2]|0):0)?ak((c[(c[g>>2]|0)+16
>>2]|0)+(c[m>>2]|0)|0,c[h>>2]|0)|0:0)e=9;if((e|0)==9){c[c[o>>2]>>2]=c[p>
x3e;2];c[o>>2]=(c[o>>2]|0)+4}c[k>>2]=(c[k>>2]|0)+-1}c[c[o>>2]>>2]=0;
c[f>>2]=c[(c[j>>2]|0)+32>>2];r=c[f>>2]|0;i=q;return r|0}function fk(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;y=i;i=i+80|0;f=y+72|0;g=y+68|0;h=y+64|0
;z=y+60|0;w=y+56|0;x=y+52|0;p=y+48|0;l=y+44|0;s=y+40|0;j=y+36|0;u=y+32|0;t=y+28|0;o=y+24|0;k=y+20|0;v=y+16|0;n=y+12|0;m=y+8|0;r=
y+4|0;q=y;c[g>>2]=a;c[h>>2]=b;c[z>>2]=e;c[w>>2]=_j((c[(c[g>>2]|0)+16>>
;2]|0)+6|0,c[z>>2]|0)|0;if(!(c[w>>2]|0)){c[f>>2]=0;z=c[f>>2]|0;i=y;return z|0}c[w>
x3e;2]=(c[w>>2]|0)+4;c[l>>2]=(d[(c[w>>2]|0)+-4>>0]|0)<<24|(d[(c[w>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|0)<<8|(d[(c[w>>2]|0)+-4
+3>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+4;c[s>>2]=(d[(c[w>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[w>>2]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[w>>2]|0)+-4+3>>0]|0)<<0;if((c[l>>2]|0)==0&(c[s>>2]|
0)==0){c[f>>2]=0;z=c[f>>2]|0;i=y;return z|0}if(!(c[l>>2]|0)){c[f>>2]=gk(c[g>>2
]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[s>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return
z|0}a=c[g>>2]|0;if(!(c[s>>2]|0)){c[f>>2]=hk(a,(c[(c[g>>2]|0)+16>>2]|0)+(c[l
x3e;>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return z|0}c[j>>2]=a;c[w>>2]=(c[(c[g>
;>2]|0)+16>>2]|0)+(c[s>>2]|0);c[n>>2]=(c[(c[g>>2]|0)+16>>2]|0)+(c[l>
x3e;2]|0);c[w>>2]=(c[w>>2]|0)+4;c[t>>2]=(d[(c[w>>2]|0)+-4>>0]|0)<<24
|(d[(c[w>>2]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|0)<<8|(d[(c[
w>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=ik(c[n>>2]|0)|0;c[n>>2]=(c[n>
x3e;2]|0)+4;c[u>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>
;0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)
x3c;<0;if(!(c[t>>2]|0)){c[f>>2]=hk(c[g>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[
l>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return z|0}if(!(c[k>>2]|0)){c[f>>2]=gk
(c[g>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[s>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>
;2]|0;i=y;return z|0}if(dk(c[j>>2]|0,(c[k>>2]|0)+(c[t>>2]|0)+1|0,c[h>>2]|0)|0){c[f>
x3e;2]=0;z=c[f>>2]|0;i=y;return z|0}c[x>>2]=c[(c[j>>2]|0)+32>>2];c[n>>2]=(c[n
x3e;>2]|0)+3;c[o>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>
;>0]|0)<<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+
1;c[k>>2]=d[z>>0];c[m>>2]=1;c[w>>2]=(c[w>>2]|0)+3;c[v>>2]=(d[(c[w>
;>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<<8|(d[(c[w>>2]|
0)+-3+2>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+2;c[r>>2]=1;c[p>>2]=0;while(1){
if((c[v>>2]|0)>>>0<=((c[o>>2]|0)+(c[k>>2]|0)|0)>>>0){if((c[v>
;>2]|0)>>>0<(c[o>>2]|0)>>>0){s=c[v>>2]|0;z=c[p>>2]|0;c[p
x3e;>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=s}c[r>>2]=(c[r>>2]|0)+1;if((c[r>
;>2]|0)>>>0>(c[t>>2]|0)>>>0)break;c[w>>2]=(c[w>>2]|0)+3;c[
v>>2]=(d[(c[w>>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<
x3c;8|(d[(c[w>>2]|0)+-3+2>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+2;continue}c[q>
x3e;2]=0;while(1){if((c[q>>2]|0)>>>0>(c[k>>2]|0)>>>0)break;s=(c[o>
x3e;2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>
;2]=s;c[q>>2]=(c[q>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1;if((c[m>>2]|0)>>
x3e;0>(c[u>>2]|0)>>>0)break;c[n>>2]=(c[n>>2]|0)+3;c[o>>2]=(d[(c[n>
;>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>>0]|0)<<8|(d[(c[n>>2]|
0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+1;c[k>>2]=d[z>>0]}a:do if((c
[r>>2]|0)>>>0>(c[t>>2]|0)>>>0){if((c[m>>2]|0)>>>
0<=(c[u>>2]|0)>>>0){c[q>>2]=0;while(1){if((c[q>>2]|0)>>>0>(
c[k>>2]|0)>>>0)break;w=(c[o>>2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>
;2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=w;c[q>>2]=(c[q>>2]|0)+1}while(1){if((c[m>
;>2]|0)>>>0>=(c[u>>2]|0)>>>0)break a;c[n>>2]=(c[n>>2]|0)+3
;c[o>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>>0]|0)<
;<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+1;c[k>>
2]=d[z>>0];c[q>>2]=0;while(1){if((c[q>>2]|0)>>>0>(c[k>>2]|0)>
x3e;>0)break;w=(c[o>>2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>
2]|0)+(z<<2)>>2]=w;c[q>>2]=(c[q>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1}}}else
{v=c[v>>2]|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=v;while
(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a;c[w>>2]=(c[w>
;>2]|0)+3;v=(d[(c[w>>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<
x3c;8|(d[(c[w>>2]|0)+-3+2>>0]|0)<<0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>
2]|0)+(z<<2)>>2]=v;c[w>>2]=(c[w>>2]|0)+2;c[r>>2]=(c[r>>2]|0)+1}}while
(0);c[(c[x>>2]|0)+(c[p>>2]<<2)>>2]=0;c[f>>2]=c[x>>2];z=c[f>>
;2]|0;i=y;return z|0}function gk(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;m=i;i=i+32|0;f=m+28|0;o=m+24|0
;g=m+20|0;n=m+16|0;h=m+12|0;k=m+8|0;j=m+4|0;l=m;c[o>>2]=a;c[g>>2]=b;c[n>>2]=e;c[h>>2]=c[
o>>2];c[g>>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<
x3c;24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(
d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if(dk(c[h>>2]|0,(c[k>>2]|0)+1|0,c[n>>2]|
0)|0){c[f>>2]=0;o=c[f>>2]|0;i=m;return o|0}c[l>>2]=c[(c[h>>2]|0)+32>>2];c[j>
;>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break;c[g>
x3e;2]=(c[g>>2]|0)+3;c[(c[l>>2]|0)+(c[j>>2]<<2)>>2]=(d[(c[g>>2]|0)+-
3>>0]|0)<<16|(d[(c[g>>2]|0)+-3+1>>0]|0)<<8|(d[(c[g>>2]|0)+-3+2>
x3e;0]|0)<<0;c[g>>2]=(c[g>>2]|0)+2;c[j>>2]=(c[j>>2]|0)+1}c[(c[l>>2]|
0)+(c[j>>2]<<2)>>2]=0;c[f>>2]=c[l>>2];o=c[f>>2]|0;i=m;return o|0}function
hk(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;n=i;i=i+48|0;f=n+32|0;p=n+28|0;g=n+24|0;o=n+20|0;h=n+16
|0;k=n+12|0;j=n+8|0;l=n+4|0;m=n;c[p>>2]=a;c[g>>2]=b;c[o>>2]=e;c[h>>2]=c[p>>2];
c[j>>2]=ik(c[g>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-
4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>
;>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if(dk(c[h>>2]|0,(c[j>>
2]|0)+1|0,c[o>>2]|0)|0){c[f>>2]=0;p=c[f>>2]|0;i=n;return p|0}c[l>>2]=c[(c[h>>2
]|0)+32>>2];while(1){if((c[k>>2]|0)>>>0<=0)break;c[g>>2]=(c[g>>2]|0)+
3;c[m>>2]=(d[(c[g>>2]|0)+-3>>0]|0)<<16|(d[(c[g>>2]|0)+-3+1>>0]|0)<
;<8|(d[(c[g>>2]|0)+-3+2>>0]|0)<<0;p=c[g>>2]|0;c[g>>2]=p+1;c[j>>
2]=(d[p>>0]|0)+1;do{c[c[l>>2]>>2]=c[m>>2];c[m>>2]=(c[m>>2]|0)+1;c[l
x3e;>2]=(c[l>>2]|0)+4;p=(c[j>>2]|0)+-1|0;c[j>>2]=p}while((p|0)!=0);c[k>>2]=(c[k>
;>2]|0)+-1}c[c[l>>2]>>2]=0;c[f>>2]=c[(c[h>>2]|0)+32>>2];p=c[f>>
2]|0;i=n;return p|0}function ik(a){a=a|0;var b=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+8|0;e=g+4|0;f=g;c[b>>2]=a;c[b>>
;2]=(c[b>>2]|0)+4;c[e>>2]=(d[(c[b>>2]|0)+-4>>0]|0)<<24|(d[(c[b>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[b>>2]|0)+-4+2>>0]|0)<<8|(d[(c[b>>2]|0)+-4+3
x3e;>0]|0)<<0;c[f>>2]=0;c[b>>2]=(c[b>>2]|0)+3;while(1){if((c[e>>2]|0)>
;>>0<=0)break;c[f>>2]=(c[f>>2]|0)+(1+(d[c[b>>2]>>0]|0));c[b>>2]=(
c[b>>2]|0)+4;c[e>>2]=(c[e>>2]|0)+-1}i=g;return c[f>>2]|0}function jk(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;B=i;i=i+96|0;e=B+84|0;f=B+80|0;y=B+
76|0;r=B+72|0;x=B+68|0;s=B+64|0;q=B+60|0;A=B+56|0;j=B+52|0;u=B+48|0;k=B+44|0;w=B+40|0;m=B+36|0;o=B+32|0;g=B+28|0;h=B+24|0;t=B+20
|0;v=B+16|0;n=B+12|0;p=B+8|0;z=B+4|0;l=B;c[e>>2]=a;c[f>>2]=b;c[y>>2]=(c[e>>2]|0)+2;c[y
x3e;>2]=(c[y>>2]|0)+4;c[r>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[y>
x3e;2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>>2]|
0)+-4+3>>0]|0)<<0;c[y>>2]=(c[y>>2]|0)+4;c[x>>2]=(d[(c[y>>2]|0)+-4>
;>0]|0)<<24|(d[(c[y>>2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>
;0]|0)<<8|(d[(c[y>>2]|0)+-4+3>>0]|0)<<0;if(!((c[r>>2]|0)>>>0<
;=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>2]|0)|0)>>>0?(c[r>>2]|0)>>>
;0>=(10+((c[x>>2]|0)*11|0)|0)>>>0:0))sc(c[f>>2]|0,8);c[q>>2]=1;c[s>>
2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[x>>2]|0)>>>0)break;c[y>>2]=(
c[y>>2]|0)+3;c[A>>2]=(d[(c[y>>2]|0)+-3>>0]|0)<<16|(d[(c[y>>2]|0)+-3+
1>>0]|0)<<8|(d[(c[y>>2]|0)+-3+2>>0]|0)<<0;c[y>>2]=(c[y>>2]|
0)+4;c[j>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[y>>2]|0)+-4+1>>0]|0)
x3c;<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>>2]|0)+-4+3>>0]|0)<<
;0;c[y>>2]=(c[y>>2]|0)+4;c[u>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[
y>>2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>
x3e;2]|0)+-4+3>>0]|0)<<0;if(!((c[j>>2]|0)>>>0<(c[r>>2]|0)>>
;>0?(c[u>>2]|0)>>>0<(c[r>>2]|0)>>>0:0))sc(c[f>>2]|0,8);if((
c[A>>2]|0)>>>0<(c[q>>2]|0)>>>0)sc(c[f>>2]|0,8);c[q>>2
]=(c[A>>2]|0)+1;a:do if(c[j>>2]|0){c[k>>2]=(c[e>>2]|0)+(c[j>>2]|0);c[k>
x3e;2]=(c[k>>2]|0)+4;c[w>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4
+3>>0]|0)<<0;c[o>>2]=0;if(((c[k>>2]|0)+(c[w>>2]<<2)|0)>>
x3e;0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[m>>2]=0;while(1){
if((c[m>>2]|0)>>>0>=(c[w>>2]|0)>>>0)break a;c[k>>2]=(c[k>
x3e;2]|0)+3;c[g>>2]=(d[(c[k>>2]|0)+-3>>0]|0)<<16|(d[(c[k>>2]|0)+-3+1>>
;0]|0)<<8|(d[(c[k>>2]|0)+-3+2>>0]|0)<<0;b=c[k>>2]|0;c[k>>2]=b+1;c[h
x3e;>2]=d[b>>0];if(((c[g>>2]|0)+(c[h>>2]|0)|0)>>>0>=1114112)sc(c[f>
x3e;2]|0,8);if((c[g>>2]|0)>>>0<(c[o>>2]|0)>>>0)sc(c[f>>2]|0,8);
c[o>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+1}}while(0);b:do if(c[u
x3e;>2]|0){c[t>>2]=(c[e>>2]|0)+(c[u>>2]|0);c[t>>2]=(c[t>>2]|0)+4;c[v>
;>2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16
|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-4+3>>0]|0)<<0;c[p>
;>2]=0;if(c[v>>2]<<2>>>0>((c[(c[f>>2]|0)+4>>2]|0)-(c[t>>
;2]|0)|0)>>>0)sc(c[f>>2]|0,8);c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0
x3e;=(c[v>>2]|0)>>>0)break b;c[t>>2]=(c[t>>2]|0)+3;c[z>>2]=(d[(c[t>
x3e;2]|0)+-3>>0]|0)<<16|(d[(c[t>>2]|0)+-3+1>>0]|0)<<8|(d[(c[t>>2]|0)+-
3+2>>0]|0)<<0;c[t>>2]=(c[t>>2]|0)+2;c[l>>2]=(((d[(c[t>>2]|0)+-2>
;>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c
[z>>2]|0)>>>0>=1114112)sc(c[f>>2]|0,8);if((c[z>>2]|0)>>>0<(
c[p>>2]|0)>>>0)sc(c[f>>2]|0,8);c[p>>2]=(c[z>>2]|0)+1;if((c[(c[f>>
;2]|0)+8>>2]|0)>>>0>=1?(c[l>>2]|0)>>>0>=(c[(c[f>>2]|0)+172
>>2]|0)>>>0:0)sc(c[f>>2]|0,16);c[n>>2]=(c[n>>2]|0)+1}}while(0);c[s>
x3e;2]=(c[s>>2]|0)+1}i=B;return 0}function kk(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[f>>2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=14;c[c[e>>2]>
;>2]=-1;i=d;return 0}function lk(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;m=k+20|0;l=k
+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[m>>2]=a;c[l>>2]=b;c[f>>2]=d;c[g>>2]=e;c[j>>
;2]=mk(c[m>>2]|0,c[l>>2]|0)|0;if(!(c[j>>2]|0)){c[h>>2]=142;m=c[h>>2]|0;i=k;return
m|0}if(c[g>>2]|0)c[c[g>>2]>>2]=c[(c[j>>2]|0)+12>>2];c[h>>2]=Kc(c[f
x3e;>2]|0,c[(c[j>>2]|0)+8>>2]|0)|0;m=c[h>>2]|0;i=k;return m|0}function mk(a,b){a=a|0;b=b|0;var
d=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;g=j+16|0;k=j+12|0;d=j+8|0;h=j+4|0;f=j;c[k>>2]=a;c[d>>2]=b;c[h>>
;2]=c[(c[k>>2]|0)+156>>2];c[f>>2]=(c[h>>2]|0)+((e[(c[k>>2]|0)+152>>1
]|0)<<4);while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>>0){d=7;break
}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)?c[(c[h>>2]|0)+12>>2]|0:0){d=5;break}c[h>
;>2]=(c[h>>2]|0)+16}if((d|0)==5){c[g>>2]=c[h>>2];k=c[g>>2]|0;i=j;return k|0}else if
((d|0)==7){c[g>>2]=0;k=c[g>>2]|0;i=j;return k|0}return 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,r=0,s=0;q=i;i=i+48|0;g=q+40|0;h=q+36|0;j=q+32|0;k=q+28|0;s=q+24|0;r=q+20|0;m=q+16|
0;n=q+12|0;p=q+8|0;o=q+4|0;l=q;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[s>>2]=e;c[r>>2]=
f;c[n>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+4>>2];c[s>>2]=c[s>>2];c[r>
x3e;2]=c[r>>2];c[p>>2]=c[(c[j>>2]|0)+532>>2];do if(!(c[p>>2]|0)){c[p>>
;2]=Ud(c[n>>2]|0,11340)|0;if(c[p>>2]|0){c[(c[j>>2]|0)+532>>2]=c[p>>2];c[(c[j
x3e;>2]|0)+508>>2]=c[c[p>>2]>>2];break}c[g>>2]=3;s=c[g>>2]|0;i=q;return s
|0}while(0);c[o>>2]=c[(c[j>>2]|0)+96>>2];c[l>>2]=Vd(c[o>>2]|0,71003)|0;c[(c[j
x3e;>2]|0)+536>>2]=c[l>>2];c[m>>2]=ok(c[h>>2]|0,c[j>>2]|0)|0;if(c[m>
x3e;2]|0){c[g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}if((c[k>>2]|0)<0)c[k>>
;2]=0;if((c[k>>2]|0)>=(c[(c[j>>2]|0)+132+8>>2]|0)){c[g>>2]=6;s=c[g>>2]|0;
i=q;return s|0}s=Kc(c[h>>2]|0,c[(c[(c[j>>2]|0)+132+12>>2]|0)+(c[k>>2]<<2)>
;>2]|0)|0;c[m>>2]=s;if(s|0){c[g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}c[m>>
;2]=Ya[c[(c[p>>2]|0)+132>>2]&127](c[j>>2]|0,c[h>>2]|0)|0;if(c[m>>2]|0){c[
g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}else{c[c[j>>2]>>2]=c[(c[j>>
2]|0)+132+8>>2];c[(c[j>>2]|0)+4>>2]=c[k>>2];c[g>>2]=c[m>>2];s=c[g>
;>2]|0;i=q;return s|0}return 0}function ok(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;m=i;i=i+32|0;g=m+28|0;h
=m+24|0;j=m+20|0;d=m+16|0;k=m+12|0;f=m+8|0;e=m+4|0;l=m;c[h>>2]=a;c[j>>2]=b;c[d>>2]=c[(c[h>>
;2]|0)+28>>2];c[(c[j>>2]|0)+132>>2]=0;c[(c[j>>2]|0)+132+4>>2]=0;c[(c[j>
x3e;2]|0)+132+8>>2]=0;c[e>>2]=Mc(c[h>>2]|0)|0;c[f>>2]=Oc(c[h>>2]|0,k)|0;if(c[k
>>2]|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}if((c[f>>2]|0)!=65536&(
c[f>>2]|0)!=1953784678&(c[f>>2]|0)!=1330926671&(c[f>>2]|0)!=1953658213&(c[f>
x3e;2]|0)!=1954115633&(c[f>>2]|0)!=131072){c[g>>2]=2;l=c[g>>2]|0;i=m;return l|0}c[(c[j>
x3e;2]|0)+132>>2]=1953784678;do if((c[f>>2]|0)==1953784678){f=le(c[h>>2]|0,7544,(c[j>>2]|
0)+132|0)|0;c[k>>2]=f;if(f|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}f=hc(c[d>
x3e;2]|0,4,0,c[(c[j>>2]|0)+132+8>>2]|0,0,k)|0;c[(c[j>>2]|0)+132+12>>2]=f;if(c[k>>
;2]|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}f=ee(c[h>>2]|0,c[(c[j>>2]|0)+
132+8>>2]<<2)|0;c[k>>2]=f;if(f|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return
l|0}c[l>>2]=0;while(1){b=c[h>>2]|0;if((c[l>>2]|0)>=(c[(c[j>>2]|0)+132+8>>
;2]|0))break;f=je(b)|0;c[(c[(c[j>>2]|0)+132+12>>2]|0)+(c[l>>2]<<2)>>2]=f;c[l
x3e;>2]=(c[l>>2]|0)+1}ge(b)}else{c[(c[j>>2]|0)+132+4>>2]=65536;c[(c[j>>2]|0)+132+8
x3e;>2]=1;l=bc(c[d>>2]|0,4,k)|0;c[(c[j>>2]|0)+132+12>>2]=l;if(!(c[k>>2]|0)){c[c[(c[
j>>2]|0)+132+12>>2]>>2]=c[e>>2];break}c[g>>2]=c[k>>2];l=c[g>>
;2]|0;i=m;return l|0}while(0);c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}function pk(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;I=i;i=i+112|0;o=I+92|0;F=I+88|0;J=I+84|0;l=I+80|0;m=I+76|0;G=I+72|0;x=I+68|0;r=I+103|0;u=I+102|0;s=I+101|0;t=I+100|0;D=I+64|
0;n=I+60|0;H=I+56|0;q=I+52|0;v=I+48|0;p=I+44|0;B=I+40|0;E=I+36|0;w=I+32|0;A=I+98|0;y=I+96|0;C=I+4|0;z=I;c[o>>2]=f;c[F
x3e;>2]=g;c[J>>2]=h;c[l>>2]=j;c[m>>2]=k;a[s>>0]=0;a[t>>0]=0;c[D>>
;2]=c[(c[F>>2]|0)+532>>2];c[J>>2]=c[J>>2];c[n>>2]=0;while(1){if((c[n>>
;2]|0)>=(c[l>>2]|0))break;if((c[(c[m>>2]|0)+(c[n>>2]<<3)>>2]|0)!=1768386662
){if((c[(c[m>>2]|0)+(c[n>>2]<<3)>>2]|0)==1768386675)a[t>>0]=1}else a[s>
x3e;0]=1;c[n>>2]=(c[n>>2]|0)+1}if(!(c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]|0)?!(mk
(c[F>>2]|0,1735162214)|0):0)l=(mk(c[F>>2]|0,1128678944)|0)!=0;else l=1;a[r>>0]=l&1;a[u>
x3e;0]=0;if((a[r>>0]|0)==0?c[(c[D>>2]|0)+84>>2]|0:0){c[G>>2]=Ya[c[(c[D>>2]|0)+
84>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;a[u>>0]=((c[G>>2]|0)!=0^1)&1}if((
a[u>>0]|0)==0?(c[G>>2]=Ya[c[(c[D>>2]|0)+32>>2]&127](c[F>>2]|0,c[o>
x3e;2]|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if(!(e[(c[F>>2]|0)+160+18>>1]|0)){c
[G>>2]=8;J=c[G>>2]|0;i=I;return J|0}c[G>>2]=Ya[c[(c[D>>2]|0)+44>>2]&127](
c[F>>2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+40>>2]&127](c[F>>
;2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+56>>2]&127](c[F>>2]|0,c[o>
;>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+52>>2]&127](c[F>>2]|0,c[o>>2]|0)|
0;c[x>>2]=c[G>>2];if(!(a[u>>0]|0)){c[G>>2]=Oa[c[(c[D>>2]|0)+36>>2]
x26;63](c[F>>2]|0,c[o>>2]|0,0)|0;do if(c[G>>2]|0){if((c[G>>2]|0)==142){if((c[(c[F>
x3e;2]|0)+148>>2]|0)==1953658213){a[r>>0]=0;c[G>>2]=0;break}c[G>>2]=143;if(c[(c[(c[F>
;>2]|0)+128>>2]|0)+52>>2]|0?c[(c[c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]>
x3e;2]|0)+8>>2]|0:0){b[(c[F>>2]|0)+216+34>>1]=0;c[G>>2]=0}}}else{c[G>>2]=Oa[c[(
c[D>>2]|0)+136>>2]&63](c[F>>2]|0,c[o>>2]|0,0)|0;if(((c[G>>2]|0)==142?(c[G
>>2]=147,c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]|0):0)?c[(c[c[(c[(c[F>>2]|0)+128>
;>2]|0)+52>>2]>>2]|0)+8>>2]|0:0){b[(c[F>>2]|0)+216+34>>1]=0;c[G>>
;2]=0}}while(0);if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}c[G>>2]=Oa[c[(c[D>>2]|0)+36>
;>2]&63](c[F>>2]|0,c[o>>2]|0,1)|0;if((c[G>>2]|0)==0?(c[G>>2]=Oa[c[(c[D>
x3e;2]|0)+136>>2]&63](c[F>>2]|0,c[o>>2]|0,1)|0,(c[G>>2]|0)==0):0)a[(c[F>>
2]|0)+296>>0]=1;if((c[G>>2]|0)!=0&(c[G>>2]|0)!=142){J=c[G>>2]|0;i=I;return J|0}c[G
x3e;>2]=Ya[c[(c[D>>2]|0)+48>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;if(c[G>>
2]|0)b[(c[F>>2]|0)+368>>1]=-1}do if(c[(c[D>>2]|0)+140>>2]|0?(c[G>>2]=Ya[c[(c[D
>>2]|0)+140>>2]&127](c[F>>2]|0,c[o>>2]|0)|0,c[G>>2]|0):0)if((c[G>>
;2]|0)==142){c[G>>2]=0;break}else{J=c[G>>2]|0;i=I;return J|0}while(0);c[G>>2]=Ya[c[(c[D>>
;2]|0)+80>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;do if(c[G>>2]|0)if((c[G>>2]|0)!=
142){J=c[G>>2]|0;i=I;return J|0}else{c[(c[F>>2]|0)+556>>2]=0;break}while(0);c[G>>2]=Ya[c
[(c[D>>2]|0)+76>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>
x3e;2]|0)+72>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;c[(c[F>>2]|0)+16>>2]=e[(c[F
x3e;>2]|0)+260+4>>1];c[(c[F>>2]|0)+20>>2]=0;c[(c[F>>2]|0)+24>>2]=0;if((e[(
c[F>>2]|0)+368>>1]|0)!=65535?e[(c[F>>2]|0)+368+64>>1]&256|0:0){if((a[s>>0
]|0)==0?(c[G>>2]=qk(c[F>>2]|0,16,(c[F>>2]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0
;i=I;return J|0}if((c[(c[F>>2]|0)+20>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,1,(c[F>>2
]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if((a[t>>0]|0)==0?(c[G>>2]=qk(c[F
x3e;>2]|0,17,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if((c[(c[F>>
;2]|0)+24>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,2,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){
J=c[G>>2]|0;i=I;return J|0}}else{c[G>>2]=qk(c[F>>2]|0,21,(c[F>>2]|0)+20|0)|0;if(c[G>
;>2]|0){J=c[G>>2]|0;i=I;return J|0}if(!(a[s>>0]|0?1:(c[(c[F>>2]|0)+20>>2]|0)!=0)?(c
[G>>2]=qk(c[F>>2]|0,16,(c[F>>2]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return
J|0}if((c[(c[F>>2]|0)+20>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,1,(c[F>>2]|0)+20|0)|
0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}c[G>>2]=qk(c[F>>2]|0,22,(c[F>>2]|0)+
24|0)|0;if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}if(!(a[t>>0]|0?1:(c[(c[F>>2]|0)+24>
;>2]|0)!=0)?(c[G>>2]=qk(c[F>>2]|0,17,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>
x3e;2]|0;i=I;return J|0}if((c[(c[F>>2]|0)+24>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,2,(c[F>
;>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}}c[H>>2]=c[F>>2];c[q>
x3e;2]=c[(c[H>>2]|0)+8>>2];if((d[r>>0]|0)==1)c[q>>2]=c[q>>2]|1;c[q>>
2]=c[q>>2]|24;if((c[x>>2]|0)==0?(c[(c[F>>2]|0)+468>>2]|0)!=196608:0)c[q>>2]=c[
q>>2]|512;if(c[(c[F>>2]|0)+468+12>>2]|0)c[q>>2]=c[q>>2]|4;if(a[(c[F>>
;2]|0)+296>>0]|0)c[q>>2]=c[q>>2]|32;if(c[(c[F>>2]|0)+784>>2]|0)c[q>>
2]=c[q>>2]|64;if((mk(c[F>>2]|0,1735162214)|0?mk(c[F>>2]|0,1719034226)|0:0)?mk(c[F>>2]|0,
1735811442)|0:0)c[q>>2]=c[q>>2]|256;c[(c[H>>2]|0)+8>>2]=c[q>>2];c[q>>
;2]=0;if((d[r>>0]|0)==1?(e[(c[F>>2]|0)+368>>1]|0)!=65535:0){if(!(!(e[(c[F>>2]|0)+368+64
x3e;>1]&512|0)?!(e[(c[F>>2]|0)+368+64>>1]&1|0):0))c[q>>2]=c[q>>2]|1;if(e[(
c[F>>2]|0)+368+64>>1]&32|0)c[q>>2]=c[q>>2]|2}else{if(e[(c[F>>2]|0)+160+44
>>1]&1|0)c[q>>2]=c[q>>2]|2;if(e[(c[F>>2]|0)+160+44>>1]&2|0)c[q>
x3e;2]=c[q>>2]|1}c[(c[H>>2]|0)+12>>2]=c[q>>2];tk(c[F>>2]|0)|0;c[v>>2
]=0;while(1){if((c[v>>2]|0)>=(c[(c[H>>2]|0)+36>>2]|0))break;c[p>>2]=c[(c[(c[H>
x3e;2]|0)+40>>2]|0)+(c[v>>2]<<2)>>2];J=uk(e[(c[p>>2]|0)+8>>1]|0,e[(c
[p>>2]|0)+10>>1]|0)|0;c[(c[p>>2]|0)+4>>2]=J;c[v>>2]=(c[v>>2]|0)+1}c[
E>>2]=c[(c[F>>2]|0)+612>>2];do if((c[E>>2]|0)>>>0>0){c[w>>
2]=c[(c[(c[F>>2]|0)+104>>2]|0)+28>>2];b[A>>1]=b[(c[F>>2]|0)+160+18>>
1]|0;b[y>>1]=b[(c[F>>2]|0)+368+2>>1]|0;if(!((e[A>>1]|0)!=0?(e[(c[F>>2]|0)+368
x3e;>1]|0)!=65535:0)){b[y>>1]=0;b[A>>1]=1}J=hc(c[w>>2]|0,16,0,c[E>>2]|0,0,G)|0;c[(c
[H>>2]|0)+32>>2]=J;if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}c[B>>2]=0;while(1){
m=c[H>>2]|0;if((c[B>>2]|0)>>>0>=(c[E>>2]|0)>>>0){l=103;break}c[
z>>2]=(c[m+32>>2]|0)+(c[B>>2]<<4);c[G>>2]=Oa[c[(c[D>>2]|0)+152>
x3e;2]&63](c[F>>2]|0,c[B>>2]|0,C)|0;if(c[G>>2]|0){l=112;break}b[c[z>>2]>>
1]=c[C+20>>2]>>6;J=_(b[y>>1]|0,e[C>>1]|0)|0;b[(c[z>>2]|0)+2>>1]=(J+((
e[A>>1]|0)/2|0)|0)/(e[A>>1]|0)|0;c[(c[z>>2]|0)+8>>2]=e[C>>1]<<6;c[(c
[z>>2]|0)+12>>2]=e[C+2>>1]<<6;c[(c[z>>2]|0)+4>>2]=e[C+2>>1
]<<6;c[B>>2]=(c[B>>2]|0)+1}if((l|0)==103){J=m+8|0;c[J>>2]=c[J>>2]|2;c[(c[H>
;>2]|0)+28>>2]=c[E>>2];break}else if((l|0)==112){J=c[G>>2]|0;i=I;return J|0}}while(0);if((c[(
c[H>>2]|0)+8>>2]&2|0)==0?(c[(c[H>>2]|0)+8>>2]&1|0)==0:0){J=(c[H>>2]|
0)+8|0;c[J>>2]=c[J>>2]|1}if(!(c[(c[H>>2]|0)+8>>2]&1)){J=c[G>>2]|0;i=I;return
J|0}c[(c[H>>2]|0)+52>>2]=b[(c[F>>2]|0)+160+36>>1];c[(c[H>>2]|0)+52+4>>
;2]=b[(c[F>>2]|0)+160+38>>1];c[(c[H>>2]|0)+52+8>>2]=b[(c[F>>2]|0)+160+40>
x3e;1];c[(c[H>>2]|0)+52+12>>2]=b[(c[F>>2]|0)+160+42>>1];b[(c[H>>2]|0)+68>
x3e;1]=b[(c[F>>2]|0)+160+18>>1]|0;b[(c[H>>2]|0)+70>>1]=b[(c[F>>2]|0)+216+4>
;>1]|0;b[(c[H>>2]|0)+72>>1]=b[(c[F>>2]|0)+216+6>>1]|0;b[(c[H>>2]|0)+74>
;>1]=(b[(c[H>>2]|0)+70>>1]|0)-(b[(c[H>>2]|0)+72>>1]|0)+(b[(c[F>>2]|0)+216
+8>>1]|0);b[(c[H>>2]|0)+76>>1]=b[(c[F>>2]|0)+216+10>>1]|0;if(d[(c[F>>
;2]|0)+296>>0]|0)l=e[(c[F>>2]|0)+300+10>>1]|0;else l=b[(c[H>>2]|0)+74>>1]|0;b[(
c[H>>2]|0)+78>>1]=l;b[(c[H>>2]|0)+80>>1]=(b[(c[F>>2]|0)+468+8>>1]|0)-((
b[(c[F>>2]|0)+468+10>>1]|0)/2|0);b[(c[H>>2]|0)+82>>1]=b[(c[F>>2]|0)+468+10>
;>1]|0;J=c[G>>2]|0;i=I;return J|0}function qk(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,r=
0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=i;i=i+64|0;h=z+48|0;j=z+54|0;k=z+44|0;t=z+40|0;m=z+36|0;w=z+32|0;u=z+52|0;v=z+28|0;n=z+24|0;
p=z+20|0;o=z+16|0;r=z+12|0;q=z+8|0;s=z+56|0;l=z+4|0;x=z;c[h>>2]=d;b[j>>1]=f;c[k>>2]=g;c[t>>
;2]=c[(c[h>>2]|0)+100>>2];c[m>>2]=0;c[w>>2]=0;c[n>>2]=-1;c[p>>2]=-1;
c[o>>2]=-1;c[r>>2]=-1;c[q>>2]=-1;a[s>>0]=0;c[v>>2]=c[(c[h>>2]|0)+348
+12>>2];b[u>>1]=0;while(1){if((e[u>>1]|0)>=(e[(c[h>>2]|0)+344>>1]|0))break
;a:do if((e[(c[v>>2]|0)+6>>1]|0)==(e[j>>1]|0)?(e[(c[v>>2]|0)+8>>1]|0)>0:0
)switch(e[c[v>>2]>>1]|0){case 2:case 0:{c[q>>2]=e[u>>1];break a}case 1:{if(!(e[(c[v>
;>2]|0)+4>>1]|0)){c[o>>2]=e[u>>1];break a}if(e[(c[v>>2]|0)+2>>1]|0)break
a;c[p>>2]=e[u>>1];break a}case 3:{if((c[r>>2]|0)!=-1?(e[(c[v>>2]|0)+4>>1]&
;1023|0)!=9:0)break a;switch(e[(c[v>>2]|0)+2>>1]|0){case 10:case 1:case 0:break;default:break a}a[s>>
;0]=(e[(c[v>>2]|0)+4>>1]&1023|0)==9;c[r>>2]=e[u>>1];break a}default:break a}while(0
);b[u>>1]=(b[u>>1]|0)+1<<16>>16;c[v>>2]=(c[v>>2]|0)+20}c[n>>
;2]=c[p>>2];if((c[o>>2]|0)>=0)c[n>>2]=c[o>>2];c[l>>2]=0;b:do if((c[r>
;>2]|0)>=0?(c[n>>2]|0)<0|(a[s>>0]|0)!=0:0){c[v>>2]=(c[(c[h>>2]|0)+348+12
x3e;>2]|0)+((c[r>>2]|0)*20|0);switch(e[(c[v>>2]|0)+2>>1]|0){case 0:case 1:{c[l>>2]=
106;break b}case 10:{c[l>>2]=106;break b}default:break b}}else y=23;while(0);do if((y|0)==23){if((c[n>>2]|0)
x3e;=0){c[v>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[n>>2]|0)*20|0);c[l>>2]=107;break
}if((c[q>>2]|0)>=0){c[v>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[q>>2]|0)*20|
0);c[l>>2]=106}}while(0);if(!((c[v>>2]|0)!=0&(c[l>>2]|0)!=0)){x=c[w>>2]|0;y=c[k>
;>2]|0;c[y>>2]=x;y=c[m>>2]|0;i=z;return y|0}do if(!(c[(c[v>>2]|0)+16>>2]|0)){c[x>
;>2]=c[(c[h>>2]|0)+348+16>>2];y=hc(c[t>>2]|0,1,0,e[(c[v>>2]|0)+8>>1]|0,0,
m)|0;c[(c[v>>2]|0)+16>>2]=y;if(((c[m>>2]|0)==0?(y=Kc(c[x>>2]|0,c[(c[v>>2]|0)+12
>>2]|0)|0,c[m>>2]=y,(y|0)==0):0)?(y=Rc(c[x>>2]|0,c[(c[v>>2]|0)+16>>2]|0,e[(c[v
>>2]|0)+8>>1]|0)|0,c[m>>2]=y,(y|0)==0):0)break;Fb(c[t>>2]|0,c[(c[v>>2]|0)+16
x3e;>2]|0);c[(c[v>>2]|0)+16>>2]=0;b[(c[v>>2]|0)+8>>1]=0;c[w>>2]=0;x=c[w
x3e;>2]|0;y=c[k>>2]|0;c[y>>2]=x;y=c[m>>2]|0;i=z;return y|0}while(0);c[w>>2]=Ya[c[l
x3e;>2]&127](c[v>>2]|0,c[t>>2]|0)|0;x=c[w>>2]|0;y=c[k>>2]|0;c[y>>2]=
x;y=c[m>>2]|0;i=z;return y|0}function rk(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,q=0;n=i;i=i+48|0;g=n
+32|0;q=n+28|0;p=n+24|0;m=n+20|0;j=n+16|0;h=n+12|0;k=n+8|0;l=n+4|0;o=n;c[q>>2]=b;c[p>>2]=f;c[m>>2]=
0;c[l>>2]=c[(c[q>>2]|0)+16>>2];c[j>>2]=((e[(c[q>>2]|0)+8>>1]|0)>
;>>0)/2|0;c[m>>2]=hc(c[p>>2]|0,1,0,(c[j>>2]|0)+1|0,0,o)|0;if(c[o>>2]|0){c[g>
;>2]=0;q=c[g>>2]|0;i=n;return q|0}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=(
c[j>>2]|0)>>>0)break;c[l>>2]=(c[l>>2]|0)+2;q=(((d[(c[l>>2]|0)+-2>>
;0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[h>
x3e;2]=q;c[h>>2]=(c[h>>2]|0)>>>0<32|(c[h>>2]|0)>>>0>127?63
:q;a[(c[m>>2]|0)+(c[k>>2]|0)>>0]=c[h>>2];c[k>>2]=(c[k>>2]|0)+1}a[(c[
m>>2]|0)+(c[j>>2]|0)>>0]=0;c[g>>2]=c[m>>2];q=c[g>>2]|0;i=n;return q|
0}function sk(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,q=0;n=i;i=i+48|0;g=n+32|0;q=n+28|0;p=n+24|0;m=n+20|0;j=n+
16|0;h=n+12|0;k=n+8|0;l=n+4|0;o=n;c[q>>2]=b;c[p>>2]=f;c[m>>2]=0;c[l>>2]=c[(c[q>>
;2]|0)+16>>2];c[j>>2]=e[(c[q>>2]|0)+8>>1];c[m>>2]=hc(c[p>>2]|0,1,0,(
c[j>>2]|0)+1|0,0,o)|0;if(c[o>>2]|0){c[g>>2]=0;q=c[g>>2]|0;i=n;return q|0}c[k>>
2]=0;while(1){if((c[k>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;q=c[l>>
2]|0;c[l>>2]=q+1;q=d[q>>0]|0;c[h>>2]=q;c[h>>2]=(c[h>>2]|0)>>>0
x3c;32|(c[h>>2]|0)>>>0>127?63:q;a[(c[m>>2]|0)+(c[k>>2]|0)>>0]=c[h>
;>2];c[k>>2]=(c[k>>2]|0)+1}a[(c[m>>2]|0)+(c[j>>2]|0)>>0]=0;c[g>>
;2]=c[m>>2];q=c[g>>2]|0;i=n;return q|0}function tk(a){a=a|0;var f=0,g=0,h=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,A=0;A=i;i=i+224|0;y=4;x=Fs(40)|0;c[x>>2]=0;s=A+216|0;t=A+212|0;l=A+200|0;p=A+196|0;r=A+192
|0;u=A+188|0;m=A+184|0;w=A+8|0;q=A+4|0;v=A;j=c[a+500>>2]|0;k=j+(c[a+504>>2]|0)|0;c[t>>2]=j;if(c[t
x3e;>2]|0?((c[t>>2]|0)+4|0)>>>0<=k>>>0:0){c[t>>2]=(c[t>>2]|
0)+2;f=c[t>>2]|0;if((((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535|0){c[t>>2]=f+-2;z=8;Gs(x|0);i=A;return z|0}c[t>>2]=
f+2;c[s>>2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>
;>0]|0)&65535)<<0)&65535;while(1){if((c[s>>2]|0)>>>0<=0)break;if(((c[t>
;>2]|0)+8|0)>>>0>k>>>0)break;c[t>>2]=(c[t>>2]|0)+2;b[l+8>>
1]=((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535
)<<0;c[t>>2]=(c[t>>2]|0)+2;b[l+10>>1]=((d[(c[t>>2]|0)+-2>>0]|0)&
;65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0;c[l>>2]=a;c[l+4>>
;2]=0;c[t>>2]=(c[t>>2]|0)+4;f=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>
2]|0)+-4+1>>0]|0)<<16|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-
4+3>>0]|0)<<0;if(f|0?f>>>0<=((c[a+504>>2]|0)-2|0)>>>0:0){c[p>
;>2]=j+f;c[r>>2]=(((d[c[p>>2]>>0]|0)&65535)<<8|((d[(c[p>>2]|0)+1>
;>0]|0)&65535)<<0)&65535;c[u>>2]=3080;while(1){if(!(c[c[u>>2]>>2]|0))break
;c[m>>2]=c[c[u>>2]>>2];if((c[(c[m>>2]|0)+40>>2]|0)==(c[r>>2]|0)){z=14
;break}c[u>>2]=(c[u>>2]|0)+4}a:do if((z|0)==14){z=0;c[q>>2]=0;n=0;qa(10,w|0,c[p>>2]|0,k|
0,0);f=n;n=0;if((f|0)!=0&(o|0)!=0){g=Rs(c[f>>2]|0,x|0,y|0)|0;if(!g)ta(f|0,o|0);C=o}else g=-1;if((g|0)!=1){c[w+172
>>2]=e[a+260+4>>1];x=Qs(w+16|0,1,x|0,y|0)|0;y=C;n=0;f=n;n=0;if((f|0)!=0&(o|0)!=0){g=Rs(c[f>>2
]|0,x|0,y|0)|0;if(!g)ta(f|0,o|0);C=o}else g=-1;if((g|0)!=1)f=0;else f=C}else f=C;while(1){if(!f){n=0;f=oa(c[(c[m>>2]|0
)+44>>2]|0,c[p>>2]|0,w|0)|0;g=n;n=0;if((g|0)!=0&(o|0)!=0){h=Rs(c[g>>2]|0,x|0,y|0)|0;if(!h)ta(
g|0,o|0);C=o}else h=-1;if((h|0)==1){f=C;continue}c[q>>2]=f}if(c[w+12>>2]|0)break a;n=0;f=ma(23,c[m>>
;2]|0,c[p>>2]|0,l|0,v|0)|0;g=n;n=0;if((g|0)!=0&(o|0)!=0){h=Rs(c[g>>2]|0,x|0,y|0)|0;if(!h)ta(g|0,o|0);C=
o}else h=-1;if((h|0)==1)f=C;else break}if(!f)c[(c[v>>2]|0)+20>>2]=c[q>>2]}while(0)}c[s>>
2]=(c[s>>2]|0)+-1}z=0;Gs(x|0);i=A;return z|0}z=8;Gs(x|0);i=A;return z|0}function uk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g
=0,h=0,j=0;j=i;i=i+32|0;g=j+16|0;d=j+12|0;e=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[h>>2]=3120;c[f
>>2]=(c[h>>2]|0)+132;while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>
x3e;>0){d=8;break}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)){if((c[(c[h>>2]|0)+4>>
;2]|0)==(c[e>>2]|0)){d=6;break}if((c[(c[h>>2]|0)+4>>2]|0)==-1){d=6;break}}c[h>>2]=(c[h
x3e;>2]|0)+12}if((d|0)==6){c[g>>2]=c[(c[h>>2]|0)+8>>2];h=c[g>>2]|0;i=j;return h|0}else
if((d|0)==8){c[g>>2]=0;h=c[g>>2]|0;i=j;return h|0}return 0}function vk(d){d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i
;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=d;if(!(c[e>>2]|0)){i=j;return}c[f>>2]=c[(c[e>
x3e;2]|0)+100>>2];c[g>>2]=c[(c[e>>2]|0)+532>>2];if(c[g>>2]|0){if(c[(c[g>
x3e;2]|0)+116>>2]|0)Va[c[(c[g>>2]|0)+116>>2]&63](c[e>>2]|0);if(c[(c[g>>2]|
0)+144>>2]|0)Va[c[(c[g>>2]|0)+144>>2]&63](c[e>>2]|0)}wk(c[e>>2]|0);xk(c[e
>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+132+12>>2]|0);c[(c[e>>2]|0)+132+12>>
;2]=0;c[(c[e>>2]|0)+132+8>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+156>>2]|0);c[(c[e
x3e;>2]|0)+156>>2]=0;b[(c[e>>2]|0)+152>>1]=0;c[h>>2]=c[(c[e>>2]|0)+104>
;>2];fe(c[h>>2]|0,(c[e>>2]|0)+500|0);c[(c[e>>2]|0)+504>>2]=0;Fb(c[f>>2]|0
,c[(c[e>>2]|0)+216+36>>2]|0);c[(c[e>>2]|0)+216+36>>2]=0;Fb(c[f>>2]|0,c[(c[e>
;>2]|0)+216+40>>2]|0);c[(c[e>>2]|0)+216+40>>2]=0;if(a[(c[e>>2]|0)+296>>0]|
0){Fb(c[f>>2]|0,c[(c[e>>2]|0)+300+36>>2]|0);c[(c[e>>2]|0)+300+36>>2]=0;Fb(c[f
x3e;>2]|0,c[(c[e>>2]|0)+300+40>>2]|0);c[(c[e>>2]|0)+300+40>>2]=0;a[(c[e>>
2]|0)+296>>0]=0}Fb(c[f>>2]|0,c[(c[e>>2]|0)+548+4>>2]|0);c[(c[e>>2]|0)+548+4>
;>2]=0;b[(c[e>>2]|0)+548+2>>1]=0;if(c[g>>2]|0)Va[c[(c[g>>2]|0)+60>>2]&
;63](c[e>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+20>>2]|0);c[(c[e>>2]|0)+20>>
;2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;Fb(c[f>
x3e;2]|0,c[(c[e>>2]|0)+32>>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[(c[e>>2]|0)+28>
x3e;2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+700>>2]|0);c[(c[e>>2]|0)+700>>2]=0;c[(c[e
x3e;>2]|0)+532>>2]=0;i=j;return}function wk(b){b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=b;c[e>>2]=(c[d>>2]|0)+792;if(!(a[(c[e>>2]|0)+20>>0]|0)){i=g;return}c[f>
x3e;2]=c[(c[d>>2]|0)+104>>2];if(c[c[e>>2]>>2]|0)fe(c[f>>2]|0,c[e>>2]|
0);c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|0)+12>>2]=
0;i=g;return}function xk(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]|0)+104>>2];fe(c[e>>2]|0,(c[d>>2]|0)+772|0);c[(c[d>>2]|0)+776>>2]=0;c[(c[d
x3e;>2]|0)+780>>2]=0;c[(c[d>>2]|0)+784>>2]=0;c[(c[d>>2]|0)+788>>2]=0;i=b;
return}function yk(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[f>
x3e;2]=c[f>>2];b=qc(3252,c[e>>2]|0)|0;i=d;return b|0}function zk(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;s=i;i=i+48|0;g=s+36|0;h=s+32|0;j=s+28|0;k=s+24|0;l=s+20|0;m=s+16|0;n=s+12|0;p=s
+8|0;q=s+4|0;o=s;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;e=c[h>
x3e;2]|0;do if(c[j>>2]|0){c[q>>2]=mk(e,c[j>>2]|0)|0;if(c[q>>2]|0){c[k>>2]=(c[k
>>2]|0)+(c[(c[q>>2]|0)+8>>2]|0);c[o>>2]=c[(c[q>>2]|0)+12>>2];r=6;break
}else{c[n>>2]=142;break}}else{c[o>>2]=c[(c[e+104>>2]|0)+4>>2];r=6}while(0);if((r|0)==6){
if(c[m>>2]|0?(c[c[m>>2]>>2]|0)==0:0){c[c[m>>2]>>2]=c[o>>2];c[g>
x3e;2]=0;r=c[g>>2]|0;i=s;return r|0}if(c[m>>2]|0)c[o>>2]=c[c[m>>2]>>2];c[p>
;>2]=c[(c[h>>2]|0)+104>>2];c[n>>2]=Sc(c[p>>2]|0,c[k>>2]|0,c[l>>
2]|0,c[o>>2]|0)|0}c[g>>2]=c[n>>2];r=c[g>>2]|0;i=s;return r|0}function Ak(a,b){a=a|0;b=b|
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]=a;c[j>>2]=b;switch(c[j>>2]|0){case
0:{c[g>>2]=(c[f>>2]|0)+160;break}case 3:{c[g>>2]=(c[f>>2]|0)+216;break}case 4:{c[g>
x3e;2]=d[(c[f>>2]|0)+296>>0]|0|0?(c[f>>2]|0)+300|0:0;break}case 2:{c[g>>2]=(e[(c[f>
x3e;2]|0)+368>>1]|0|0)==65535?0:(c[f>>2]|0)+368|0;break}case 5:{c[g>>2]=(c[f>>2]|0)+468;
break}case 1:{c[g>>2]=(c[f>>2]|0)+260;break}case 6:{c[g>>2]=c[(c[f>>2]|0)+556>>
;2]|0?(c[f>>2]|0)+556|0:0;break}default:c[g>>2]=0}i=h;return c[g>>2]|0}function Bk(a,b,d,f,g){a=a|
0;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;o=i;i=i+32|0;h=o+20|0;j=o+16|0;k=o+12|0;l=o+8|0;m=o+4|0;n=o;c[j>
x3e;2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=f;c[n>>2]=g;if(!((c[l>>2]|0)!=0&(c[m
>>2]|0)!=0&(c[n>>2]|0)!=0)){c[h>>2]=6;d=c[h>>2]|0;i=o;return d|0}if((c[k>>
;2]|0)>>>0>=(e[(c[j>>2]|0)+152>>1]|0)>>>0){c[h>>2]=142;d=c[h>
;>2]|0;i=o;return d|0}else{c[c[l>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>>
;2]<<4)>>2];c[c[m>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>>
;2]<<4)+8>>2];c[c[n>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>
x3e;2]<<4)+12>>2];c[h>>2]=0;d=c[h>>2]|0;i=o;return d|0}return 0}function Ck(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,z=0,A=0;A=i;i=i+80|0;g=A+72|0;h=A+68|0;r=A+64|0;m=A+60|
0;l=A+56|0;x=A+52|0;s=A+48|0;p=A+44|0;t=A+40|0;n=A+36|0;j=A+32|0;y=A+28|0;w=A+24|0;v=A+20|0;q=A+16|0;u=A+12|0;o=A+8|0;k=A+4|0;z=
A;c[h>>2]=f;c[x>>2]=0;if(c[(c[h>>2]|0)+700>>2]|0){c[g>>2]=c[(c[h>>2]|
0)+700>>2];z=c[g>>2]|0;i=A;return z|0}c[m>>2]=-1;c[l>>2]=-1;c[r>>2]=0;while(1){
if((c[r>>2]|0)>=(e[(c[h>>2]|0)+344>>1]|0|0))break;c[s>>2]=(c[(c[h>>2]|0)+
348+12>>2]|0)+((c[r>>2]|0)*20|0);if((e[(c[s>>2]|0)+6>>1]|0|0)==6?(e[(c[s>>2]|0
)+8>>1]|0|0)>0:0){if(((e[c[s>>2]>>1]|0|0)==3?(e[(c[s>>2]|0)+2>>1]|0|0)==1
:0)?(e[(c[s>>2]|0)+4>>1]|0|0)==1033:0)c[m>>2]=c[r>>2];if(((e[c[s>>2]>>
;1]|0|0)==1?(e[(c[s>>2]|0)+2>>1]|0|0)==0:0)?(e[(c[s>>2]|0)+4>>1]|0|0)==0:0)c[l>>
;2]=c[r>>2]}c[r>>2]=(c[r>>2]|0)+1}do if((c[m>>2]|0)!=-1){c[p>>2]=c[(c[h>
x3e;2]|0)+100>>2];c[t>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[m>>2]|0)*20|0);c[n
x3e;>2]=(e[(c[t>>2]|0)+8>>1]|0|0)/2|0;c[j>>2]=0;c[j>>2]=c[j>>2];c[x>
x3e;2]=bc(c[p>>2]|0,(e[(c[t>>2]|0)+8>>1]|0)+1|0,j)|0;if(!(c[j>>2]|0)){c[y>>2]=
c[(c[h>>2]|0)+348+16>>2];c[w>>2]=c[x>>2];c[v>>2]=c[(c[t>>2]|0)+16>
;>2];z=Kc(c[y>>2]|0,c[(c[t>>2]|0)+12>>2]|0)|0;c[j>>2]=z;if((z|0)==0?(z=ee(c[y>
x3e;2]|0,e[(c[t>>2]|0)+8>>1]|0)|0,c[j>>2]=z,(z|0)==0):0){c[v>>2]=c[(c[y>>2]|0)+
32>>2];while(1){if((c[n>>2]|0)>>>0<=0)break;if(((d[c[v>>2]>>0]|0|0)==
0?(d[(c[v>>2]|0)+1>>0]|0|0)>=32:0)?(d[(c[v>>2]|0)+1>>0]|0|0)<128:0){u=a[(c[v
x3e;>2]|0)+1>>0]|0;z=c[w>>2]|0;c[w>>2]=z+1;a[z>>0]=u}c[n>>2]=(c[n>
x3e;2]|0)+-1;c[v>>2]=(c[v>>2]|0)+2}a[c[w>>2]>>0]=0;ge(c[y>>2]|0);break}Fb(c[p
x3e;>2]|0,c[x>>2]|0);c[x>>2]=0;b[(c[t>>2]|0)+8>>1]=0;c[(c[t>>2]|0)+12>
;>2]=0;Fb(c[p>>2]|0,c[(c[t>>2]|0)+16>>2]|0);c[(c[t>>2]|0)+16>>2]=0}}else
if((c[l>>2]|0)!=-1?(c[q>>2]=c[(c[h>>2]|0)+100>>2],c[u>>2]=(c[(c[h>>2
]|0)+348+12>>2]|0)+((c[l>>2]|0)*20|0),c[o>>2]=e[(c[u>>2]|0)+8>>1],c[k>>
;2]=0,c[k>>2]=c[k>>2],c[x>>2]=bc(c[q>>2]|0,(c[o>>2]|0)+1|0,k)|0,(c[k>>
;2]|0)==0):0){c[z>>2]=c[(c[h>>2]|0)+348+16>>2];y=Kc(c[z>>2]|0,c[(c[u>>2]|0)+12
>>2]|0)|0;c[k>>2]=y;if((y|0)==0?(z=Rc(c[z>>2]|0,c[x>>2]|0,c[o>>2]|0)|0,c[k>
;>2]=z,(z|0)==0):0){a[(c[x>>2]|0)+(c[o>>2]|0)>>0]=0;break}c[(c[u>>2]|0)+12>>
;2]=0;b[(c[u>>2]|0)+8>>1]=0;Fb(c[q>>2]|0,c[(c[u>>2]|0)+16>>2]|0);c[(c[u>
x3e;2]|0)+16>>2]=0;Fb(c[q>>2]|0,c[x>>2]|0);c[x>>2]=0}while(0);c[(c[h>>2]|0)+700
>>2]=c[x>>2];c[g>>2]=c[x>>2];z=c[g>>2]|0;i=A;return z|0}function Dk(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;m=k+20|0;l=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[m>>
;2]=a;c[l>>2]=b;c[f>>2]=d;c[g>>2]=e;c[h>>2]=Ek(c[m>>2]|0,c[l>>2]|0,j
)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=k;return m|0}pe(c[f>>2]|0,c[j>>2]|0,c[g>>2]|0)|
0;m=c[h>>2]|0;i=k;return m|0}function Ek(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,r=0,s=0,t=0;
t=i;i=i+48|0;h=t+36|0;j=t+32|0;k=t+28|0;l=t+24|0;m=t+20|0;p=t+16|0;n=t+12|0;q=t+8|0;r=t+4|0;o=t+40|0;s=t;c[j>>2]=d;c[k
>>2]=f;c[l>>2]=g;if(!(c[j>>2]|0)){c[h>>2]=35;s=c[h>>2]|0;i=t;return s|0}if((c[
k>>2]|0)>>>0>=(e[(c[j>>2]|0)+260+4>>1]|0)>>>0){c[h>>2
]=16;s=c[h>>2]|0;i=t;return s|0}c[q>>2]=c[(c[j>>2]|0)+536>>2];if(!(c[q>>2]|0)){
c[h>>2]=7;s=c[h>>2]|0;i=t;return s|0}c[p>>2]=(c[j>>2]|0)+628;f=Ta[c[(c[q>>2]|0
)+16>>2]&63](0)|0;c[c[l>>2]>>2]=f;c[n>>2]=c[(c[j>>2]|0)+468>>2];
do if((c[n>>2]|0)==65536){if((c[k>>2]|0)>>>0<258){s=Ta[c[(c[q>>2]|0)+16>
x3e;2]&63](c[k>>2]|0)|0;c[c[l>>2]>>2]=s}}else{if((c[n>>2]|0)!=131072){if((c[n>
x3e;2]|0)!=163840)break;c[s>>2]=(c[p>>2]|0)+4;if((a[c[p>>2]>>0]|0)==0?(c[m>>2]=
Fk(c[j>>2]|0)|0,c[m>>2]|0):0)break;if((c[k>>2]|0)>>>0>=(e[c[s>>2]>
;>1]|0)>>>0)break;c[k>>2]=(c[k>>2]|0)+(a[(c[(c[s>>2]|0)+4>>2]|0)+(c[
k>>2]|0)>>0]|0);s=Ta[c[(c[q>>2]|0)+16>>2]&63](c[k>>2]|0)|0;c[c[l>>
;2]>>2]=s;break}c[r>>2]=(c[p>>2]|0)+4;if((a[c[p>>2]>>0]|0)==0?(c[m>>
2]=Fk(c[j>>2]|0)|0,c[m>>2]|0):0)break;if((c[k>>2]|0)>>>0<(e[c[r>>2]
x3e;>1]|0)>>>0){b[o>>1]=b[(c[(c[r>>2]|0)+4>>2]|0)+(c[k>>2]<<
;1)>>1]|0;if((e[o>>1]|0)<258){s=Ta[c[(c[q>>2]|0)+16>>2]&63](e[o>>1]|
0)|0;c[c[l>>2]>>2]=s;break}else{c[c[l>>2]>>2]=c[(c[(c[r>>2]|0)+8>>2]|
0)+((e[o>>1]|0)-258<<2)>>2];break}}}while(0);c[h>>2]=0;s=c[h>>2]|0;i=t;return
s|0}function Fk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;j=k+16|0;e=k+12|0;f=k+8|0;g=k+4|0;h=k;c[d>
x3e;2]=b;c[j>>2]=c[(c[d>>2]|0)+104>>2];c[e>>2]=Wa[c[(c[d>>2]|0)+508>>
;2]&31](c[d>>2]|0,1886352244,c[j>>2]|0,g)|0;if(c[e>>2]|0){j=c[e>>2]|0;i=k;return j|
0}b=Mc(c[j>>2]|0)|0;c[h>>2]=b+(c[g>>2]|0);c[f>>2]=c[(c[d>>2]|0)+468>>
;2];g=Qc(c[j>>2]|0,32)|0;c[e>>2]=g;if(g|0){j=c[e>>2]|0;i=k;return j|0}do if((c[f>>2]|0)!=
131072)if((c[f>>2]|0)==163840){c[e>>2]=Hk(c[d>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;break
}else{c[e>>2]=3;break}else c[e>>2]=Gk(c[d>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;while(0
);a[(c[d>>2]|0)+628>>0]=1;j=c[e>>2]|0;i=k;return j|0}function Gk(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,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=i;i=i+64|0;l=A+52|0;m=A+48|0;n=A+44|0;o=A+40|0;s=A+36|
0;p=A+32|0;w=A+28|0;x=A+60|0;q=A+24|0;v=A+20|0;j=A+16|0;k=A+12|0;h=A+8|0;t=A+58|0;r=A+4|0;y=A;u=A+56|0;c[m>>2]=d;c[n
x3e;>2]=f;c[o>>2]=g;c[s>>2]=c[(c[n>>2]|0)+28>>2];c[q>>2]=0;c[v>>
;2]=0;c[w>>2]=(Pc(c[n>>2]|0,p)|0)&65535;do if(!(c[p>>2]|0)){if((c[w>>2]|0)>(e[(
c[m>>2]|0)+260+4>>1]|0|0)){c[p>>2]=3;break}c[q>>2]=hc(c[s>>2]|0,2,0,c[w>
x3e;2]|0,0,p)|0;a:do if((c[p>>2]|0)==0?(f=ee(c[n>>2]|0,c[w>>2]<<1)|0,c[p>>2]=f
,(f|0)==0):0){c[j>>2]=0;while(1){d=c[n>>2]|0;if((c[j>>2]|0)>=(c[w>>2]|0))break;f=ie
(d)|0;b[(c[q>>2]|0)+(c[j>>2]<<1)>>1]=f;c[j>>2]=(c[j>>2]|0)+1}ge(d);b
[x>>1]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[w>>2]|0))break;c[h>>2]=e[(
c[q>>2]|0)+(c[k>>2]<<1)>>1];if((c[h>>2]|0)>=258?(c[h>>2]=(c[h
x3e;>2]|0)-257,(c[h>>2]|0)>(e[x>>1]|0|0)):0)b[x>>1]=c[h>>2];c[k>>2]=(
c[k>>2]|0)+1}c[v>>2]=hc(c[s>>2]|0,4,0,e[x>>1]|0,0,p)|0;if(!(c[p>>2]|0)){b[t>
;>1]=0;while(1){if((e[t>>1]|0|0)>=(e[x>>1]|0|0)){z=28;break}k=Mc(c[n>>2]|0)|0;if((k|0)
x3e;=(c[o>>2]|0)){z=28;break}c[r>>2]=(ke(c[n>>2]|0,p)|0)&255;if(c[p>>2]|0)break;if(!((
c[r>>2]|0)<=(c[o>>2]|0)?(k=Mc(c[n>>2]|0)|0,(k|0)<=((c[o>>2]|0)-(c[r>>
;2]|0)|0)):0)){k=c[o>>2]|0;if(0>(k-(Mc(c[n>>2]|0)|0)|0))d=0;else{d=c[o>>2]|0;d=d-(Mc(c[n>
;>2]|0)|0)|0}c[r>>2]=d}k=hc(c[s>>2]|0,1,0,(c[r>>2]|0)+1|0,0,p)|0;c[(c[v>>2]|0)+((e[
t>>1]|0)<<2)>>2]=k;if(c[p>>2]|0)break;k=Rc(c[n>>2]|0,c[(c[v>>2]|0)+((
e[t>>1]|0)<<2)>>2]|0,c[r>>2]|0)|0;c[p>>2]=k;if(k|0)break;a[(c[(c[v>>
2]|0)+((e[t>>1]|0)<<2)>>2]|0)+(c[r>>2]|0)>>0]=0;b[t>>1]=(b[t>
x3e;1]|0)+1<<16>>16}b:do if((z|0)==28){c:do if((e[t>>1]|0|0)<(e[x>>1]|0|0))while(1){
if((e[t>>1]|0|0)>=(e[x>>1]|0|0))break c;z=hc(c[s>>2]|0,1,0,1,0,p)|0;c[(c[v>>2]|0)+((
e[t>>1]|0)<<2)>>2]=z;if(c[p>>2]|0)break b;a[c[(c[v>>2]|0)+((e[t>>1]|
0)<<2)>>2]>>0]=0;b[t>>1]=(b[t>>1]|0)+1<<16>>16}while(0);c[
y>>2]=(c[m>>2]|0)+628+4;b[c[y>>2]>>1]=c[w>>2];b[(c[y>>2]|0)+2>
x3e;1]=b[x>>1]|0;c[(c[y>>2]|0)+4>>2]=c[q>>2];c[(c[y>>2]|0)+8>>2]=c[v
>>2];c[l>>2]=0;z=c[l>>2]|0;i=A;return z|0}while(0);b[u>>1]=0;while(1){if((e[u>>
;1]|0|0)>=(e[x>>1]|0|0))break a;Fb(c[s>>2]|0,c[(c[v>>2]|0)+((e[u>>1]|0)<<
2)>>2]|0);c[(c[v>>2]|0)+((e[u>>1]|0)<<2)>>2]=0;b[u>>1]=(b[u>>
;1]|0)+1<<16>>16}}}while(0);Fb(c[s>>2]|0,c[v>>2]|0);c[v>>2]=0;Fb(c[s>>
;2]|0,c[q>>2]|0);c[q>>2]=0}while(0);c[l>>2]=c[p>>2];z=c[l>>2]|0;i=A;return z|0
}function Hk(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,r=0,s=0,t=0,u=0;t=i;i=i+48|0;h=t+40|0;j=t+36|0;k=t
+32|0;u=t+28|0;n=t+24|0;l=t+20|0;p=t+16|0;q=t+12|0;o=t+8|0;m=t+4|0;r=t;c[j>>2]=d;c[k>>2]=f;c[u>>2]=
g;c[n>>2]=c[(c[k>>2]|0)+28>>2];c[q>>2]=0;c[u>>2]=c[u>>2];c[p>
x3e;2]=(Pc(c[k>>2]|0,l)|0)&65535;do if(!(c[l>>2]|0)){if((c[p>>2]|0)>258?1:(c[p>>
;2]|0)>(e[(c[j>>2]|0)+260+4>>1]|0)){c[l>>2]=3;break}c[q>>2]=hc(c[n>>2]|0,
1,0,c[p>>2]|0,0,l)|0;do if((c[l>>2]|0)==0?(u=Rc(c[k>>2]|0,c[q>>2]|0,c[p>>2]|0)|
0,c[l>>2]=u,(u|0)==0):0){c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[p>>2]|0))break;c[m
x3e;>2]=(c[o>>2]|0)+(a[(c[q>>2]|0)+(c[o>>2]|0)>>0]|0);if((c[m>>2]|0)<
;0){s=10;break}if((c[m>>2]|0)>(c[p>>2]|0)){s=10;break}c[o>>2]=(c[o>>2]|0)+1}if((s|0
)==10){c[l>>2]=3;break}c[r>>2]=(c[j>>2]|0)+628+4;b[c[r>>2]>>1]=c[p>>
2];c[(c[r>>2]|0)+4>>2]=c[q>>2];c[h>>2]=0;u=c[h>>2]|0;i=t;return u|0}while(0);Fb
(c[n>>2]|0,c[q>>2]|0);c[q>>2]=0}while(0);c[h>>2]=c[l>>2];u=c[h>>2]|0
;i=t;return u|0}function Ik(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;m=i;i=i+32|0;k=m+28|0;d=m+24|0;e=m+20|0;j=m
+16|0;l=m+12|0;h=m+8|0;g=m+4|0;f=m;c[d>>2]=a;c[e>>2]=b;c[j>>2]=c[d>>2];c[h>>2]=-
1;if((c[(c[j>>2]|0)+16>>2]|0)<0){c[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}if((c[(c[j>
;>2]|0)+16>>2]|0)>>>0<4294967295)c[h>>2]=c[(c[j>>2]|0)+16>>2];c
[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[h>>2]|0)>>>0){d=11;break
}c[f>>2]=Ek(c[d>>2]|0,c[l>>2]|0,g)|0;if((c[f>>2]|0)==0?(Kr(c[e>>2]|0,c[g>
x3e;2]|0)|0)==0:0){d=9;break}c[l>>2]=(c[l>>2]|0)+1}if((d|0)==9){c[k>>2]=c[l>>2];l=c[k>
;>2]|0;i=m;return l|0}else if((d|0)==11){c[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}return 0}function Jk(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;l=i;i=i+48|0;e=l+32|0;f=l+28|0;g=l+24|0;h=l+16|0;k=l+8|0;j=l;c[e>>
;2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=Kk(c[e>>2]|0,11392,k)|0;if(c[j>>2]|0){k=c[j
x3e;>2]|0;i=l;return k|0}c[j>>2]=Kk(c[e>>2]|0,11409,h)|0;if(c[j>>2]|0){k=c[j>>2]|0;
i=l;return k|0}if((c[k>>2]|0)==1?(c[h>>2]|0)==1:0){c[c[f>>2]>>2]=c[h+4>>2];c[c
[g>>2]>>2]=c[k+4>>2];k=c[j>>2]|0;i=l;return k|0}c[j>>2]=6;k=c[j>>2]|
0;i=l;return k|0}function Kk(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;x=
i;i=i+64|0;g=x+56|0;h=x+52|0;j=x+48|0;m=x+44|0;s=x+40|0;o=x+36|0;q=x+32|0;n=x+28|0;t=x+24|0;r=x+20|0;l=x+16|0;k=x+12|0;u=x+8|0;p
=x+4|0;v=x;c[g>>2]=a;c[h>>2]=b;c[j>>2]=f;c[m>>2]=(c[g>>2]|0)+792;c[s>>
;2]=c[(c[g>>2]|0)+88>>2];c[o>>2]=0;c[c[j>>2]>>2]=0;if((d[(c[m>>2]|0)+
20>>0]|0|0)==0?(c[o>>2]=Lk(c[g>>2]|0,c[(c[g>>2]|0)+104>>2]|0)|0,c[o>>
;2]|0):0){w=c[o>>2]|0;i=x;return w|0}c[n>>2]=c[(c[m>>2]|0)+16>>2];c[q>>2]=(c[c
[m>>2]>>2]|0)+8;c[t>>2]=(c[q>>2]|0)+(c[n>>2]<<2);c[o>>2]=6
;if((c[s>>2]|0)==0|(c[h>>2]|0)==0){w=c[o>>2]|0;i=x;return w|0}c[r>>2]=cs(c[h>>
2]|0)|0;if(!((c[r>>2]|0)!=0&(c[n>>2]|0)>>>0>0)){w=c[o>>2]|0;i=x;return w|
0}while(1){c[q>>2]=(c[q>>2]|0)+2;c[l>>2]=(((d[(c[q>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[q>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[q>>2]=(c[q>
x3e;2]|0)+2;c[k>>2]=(((d[(c[q>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[q>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535;g=c[k>>2]|0;if((c[l>>2]|0)==(e[(c[s>>2]|
0)+12+2>>1]|0|0))break;c[t>>2]=(c[t>>2]|0)+(g*10|0);c[n>>2]=(c[n>>2]|0)+-1;if((
c[n>>2]|0)>>>0<=0){w=20;break}}if((w|0)==20){w=c[o>>2]|0;i=x;return w|0}c[n>>2
]=g;c[q>>2]=c[t>>2];a:while(1){if((c[n>>2]|0)>>>0<=0){w=20;break}c[u>>
;2]=(((d[(c[q>>2]|0)+4>>0]|0)&65535)<<8|((d[(c[q>>2]|0)+4+1>>0]|0)&65535
)<<0)&65535;b:do if(((c[u>>2]&16|0?(c[p>>2]=(d[c[q>>2]>>0]|0)<
x3c;24|(d[(c[q>>2]|0)+1>>0]|0)<<16|(d[(c[q>>2]|0)+2>>0]|0)<<8|(d[(c[
q>>2]|0)+3>>0]|0)<<0,c[v>>2]=(d[(c[q>>2]|0)+6>>0]|0)<<24|(
d[(c[q>>2]|0)+6+1>>0]|0)<<16|(d[(c[q>>2]|0)+6+2>>0]|0)<<8|(d[(c[q>
;>2]|0)+6+3>>0]|0)<<0,(c[p>>2]|0)>>>0<(c[(c[m>>2]|0)+12>
x3e;2]|0)>>>0):0)?(c[r>>2]|0)>>>0<((c[(c[m>>2]|0)+12>>2]|0)-(c[
p>>2]|0)|0)>>>0:0)?(Lr(c[h>>2]|0,(c[(c[m>>2]|0)+8>>2]|0)+(c[p>>
2]|0)|0,(c[(c[m>>2]|0)+12>>2]|0)-(c[p>>2]|0)|0)|0)==0:0){switch(c[u>>2]&15|0){case
2:{w=17;break a}case 3:{w=18;break a}case 1:case 0:break;default:break b}if((c[v>>2]|0)>>>0<(c[(c[
m>>2]|0)+12>>2]|0)>>>0?Ur((c[(c[m>>2]|0)+8>>2]|0)+(c[v>>2]|0)|0
,0,c[(c[m>>2]|0)+12>>2]|0)|0:0){w=16;break a}}while(0);c[q>>2]=(c[q>>2]|0)+10;c[n>
x3e;2]=(c[n>>2]|0)+-1}if((w|0)==16){c[c[j>>2]>>2]=1;c[(c[j>>2]|0)+4>>2]=(c[(c[
m>>2]|0)+8>>2]|0)+(c[v>>2]|0);c[o>>2]=0;w=c[o>>2]|0;i=x;return w|0}else if((w|
0)==17){c[c[j>>2]>>2]=2;c[(c[j>>2]|0)+4>>2]=c[v>>2];c[o>>2]=0;w=c[o
x3e;>2]|0;i=x;return w|0}else if((w|0)==18){c[c[j>>2]>>2]=3;c[(c[j>>2]|0)+4>>2]=c[v
>>2];c[o>>2]=0;w=c[o>>2]|0;i=x;return w|0}else if((w|0)==20){w=c[o>>2]|0;i=x;return w|0}
return 0}function Lk(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;r=i;i=i+48|0;s=r+44|0;f=r+40|0;g=r
+36|0;k=r+32|0;j=r+28|0;n=r+24|0;q=r+20|0;m=r+16|0;p=r+12|0;h=r+8|0;o=r+4|0;l=r;c[s>>2]=b;c[f>>2]=e;c[g>
;>2]=(c[s>>2]|0)+792;e=c[g>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12
>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[j>>2]=lk(c[s>>2]|0,1111770656,c[f>>
;2]|0,k)|0;if(!((c[j>>2]|0)!=0|(c[k>>2]|0)>>>0<8)?(s=de(c[f>>2]|0,c[k>>
;2]|0,c[g>>2]|0)|0,c[j>>2]=s,(s|0)==0):0){c[(c[g>>2]|0)+4>>2]=(c[c[g>>2]>
x3e;2]|0)+(c[k>>2]|0);c[n>>2]=c[c[g>>2]>>2];c[n>>2]=(c[n>>2]|0)+2;c[
q>>2]=(((d[(c[n>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[n>>2]|0)+-2+1>>
;0]|0)&65535)<<0)&65535;c[n>>2]=(c[n>>2]|0)+2;c[m>>2]=(((d[(c[n>>2]|
0)+-2>>0]|0)&65535)<<8|((d[(c[n>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535
;c[n>>2]=(c[n>>2]|0)+4;c[p>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n
x3e;>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>
;2]|0)+-4+3>>0]|0)<<0;if((!((c[q>>2]|0)!=1|(c[p>>2]|0)>>>0<8)?((((c[
p>>2]|0)-8|0)>>>0)/4|0)>>>0>=(c[m>>2]|0)>>>0:0)?((c[p>
;>2]|0)+1|0)>>>0<=(c[k>>2]|0)>>>0:0){c[(c[g>>2]|0)+16>>2]=
c[m>>2];c[(c[g>>2]|0)+8>>2]=(c[c[g>>2]>>2]|0)+(c[p>>2]|0);c[(c[g>
;>2]|0)+12>>2]=(c[k>>2]|0)-(c[p>>2]|0);c[h>>2]=c[(c[g>>2]|0)+16>>
;2];c[n>>2]=(c[c[g>>2]>>2]|0)+8;c[o>>2]=(c[n>>2]|0)+(c[h>>2]<
x3c;2);while(1){if((c[h>>2]|0)>>>0<=0)break;c[l>>2]=(((d[(c[n>>2]|0)+2>
x3e;0]|0)&65535)<<8|((d[(c[n>>2]|0)+2+1>>0]|0)&65535)<<0)&65535;c[o>
x3e;2]=(c[o>>2]|0)+((c[l>>2]|0)*10|0);c[n>>2]=(c[n>>2]|0)+4;c[h>>2]=(c[h>
x3e;2]|0)+-1}if((c[o>>2]|0)>>>0<=(c[(c[g>>2]|0)+8>>2]|0)>>>0){a
[(c[g>>2]|0)+20>>0]=1;s=c[j>>2]|0;i=r;return s|0}}fe(c[f>>2]|0,c[g>>2]|0);s=c[
g>>2]|0;c[s>>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[j>>2]=8;s=c[j>>2]|0;i=r;return s|0}c[j>>2]=8;s=c[j>>2]|0;i=r;return
s|0}function Mk(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;h=d+4|0;g=d;c[f>>2]=a;c[e>
;>2]=b;c[h>>2]=c[f>>2];c[g>>2]=c[(c[h>>2]|0)+12>>2];b=Ya[c[(c[g>>
;2]|0)+48>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return b|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;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;c[k>>2]=c[k>>2];c[j>>2]=c[j>>2];c[h>>2]=c[h>>
;2];c[g>>2]=c[g>>2];i=f;return 7}function Ok(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;c[h>>2]=c[h>>2];c[g>>2]=
c[g>>2];c[f>>2]=c[f>>2];i=e;return 7}function Pk(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=Qk(c[f>>2]|0,c[e>>2]|0,1751474532)|0;i=d;return b|0}function
Qk(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+16|0;f=j+12|0;k=j+8|0;g=j+4|0;h=j;c[e>>2]=a;
c[f>>2]=b;c[k>>2]=d;c[g>>2]=Wa[c[(c[e>>2]|0)+508>>2]&31](c[e>>2
]|0,c[k>>2]|0,c[f>>2]|0,0)|0;if(c[g>>2]|0){k=c[g>>2]|0;i=j;return k|0}c[h>>2]=(
c[e>>2]|0)+160;c[g>>2]=le(c[f>>2]|0,7560,c[h>>2]|0)|0;k=c[g>>2]|0;i=j;return k
|0}function Rk(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;f=l+16|0;g=l+12|0;m=l+20|0;h=l+8|0;j=l+4|0;
k=l;c[f>>2]=b;c[g>>2]=d;a[m>>0]=e;b=c[f>>2]|0;do if(a[m>>0]|0){c[k>>
2]=b+300;c[h>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1986553185,c[g>>2
]|0,0)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=l;return m|0}else{c[j>>2]=c[k>>2];break}}else{c[h
x3e;>2]=Wa[c[b+508>>2]&31](c[f>>2]|0,1751672161,c[g>>2]|0,0)|0;if(c[h>>2]|0){m
=c[h>>2]|0;i=l;return m|0}else{c[j>>2]=(c[f>>2]|0)+216;break}}while(0);m=le(c[g>>2]|0,7644
,c[j>>2]|0)|0;c[h>>2]=m;if(m|0){m=c[h>>2]|0;i=l;return m|0}c[(c[j>>2]|0)+36>>2
]=0;c[(c[j>>2]|0)+40>>2]=0;m=c[h>>2]|0;i=l;return m|0}function Sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0
,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Wa[c[(c[d>>2]|0)+508
x3e;>2]&31](c[d>>2]|0,1668112752,c[e>>2]|0,(c[d>>2]|0)+504|0)|0;if(c[f>>2]|0){
b=c[f>>2]|0;i=g;return b|0}b=de(c[e>>2]|0,c[(c[d>>2]|0)+504>>2]|0,(c[d>>2]|0)+
500|0)|0;c[f>>2]=b;if(!b){b=c[f>>2]|0;i=g;return b|0}c[(c[d>>2]|0)+504>>2]=0;b=c[f>
x3e;2]|0;i=g;return b|0}function Tk(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;k=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>
x3e;2]=a;c[f>>2]=d;c[h>>2]=(c[k>>2]|0)+260;c[g>>2]=Wa[c[(c[k>>2]|0)+508>
x3e;2]&31](c[k>>2]|0,1835104368,c[f>>2]|0,0)|0;if(c[g>>2]|0){k=c[g>>2]|0;i=j;return
k|0}k=le(c[f>>2]|0,7720,c[h>>2]|0)|0;c[g>>2]=k;if(k|0){k=c[g>>2]|0;i=j;return k|0}b[(c[
h>>2]|0)+6>>1]=0;b[(c[h>>2]|0)+8>>1]=0;b[(c[h>>2]|0)+10>>1]=0;b[(c[h
>>2]|0)+12>>1]=0;b[(c[h>>2]|0)+14>>1]=0;b[(c[h>>2]|0)+16>>1]=0;b[(c[
h>>2]|0)+18>>1]=0;b[(c[h>>2]|0)+20>>1]=0;b[(c[h>>2]|0)+22>>1]=0;b[(c
[h>>2]|0)+24>>1]=0;b[(c[h>>2]|0)+26>>1]=0;b[(c[h>>2]|0)+28>>1]=0;b[(
c[h>>2]|0)+30>>1]=0;if((c[c[h>>2]>>2]|0)<65536){k=c[g>>2]|0;i=j;return k|
0}k=le(c[f>>2]|0,7736,c[h>>2]|0)|0;c[g>>2]=k;if(k|0){k=c[g>>2]|0;i=j;return k|0}if((e[(c
[h>>2]|0)+20>>1]|0|0)<64)b[(c[h>>2]|0)+20>>1]=64;if((e[(c[h>>2]|0)+16>
;>1]|0)>>>0>65531)b[(c[h>>2]|0)+16>>1]=-5;if((e[(c[h>>2]|0)+30>>
;1]|0|0)<=100){k=c[g>>2]|0;i=j;return k|0}b[(c[h>>2]|0)+30>>1]=100;k=c[g>>2]|0;i=j;
return k|0}function Uk(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[
g>>2]=d;c[h>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1330851634,c[g>
;>2]|0,0)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=k;return d|0}c[j>>2]=(c[f>>2]|0)+368;d=le(c
[g>>2]|0,7796,c[j>>2]|0)|0;c[h>>2]=d;if(d|0){d=c[h>>2]|0;i=k;return d|0}c[(c[j>>
;2]|0)+80>>2]=0;c[(c[j>>2]|0)+84>>2]=0;b[(c[j>>2]|0)+88>>1]=0;b[(c[j>>
;2]|0)+90>>1]=0;b[(c[j>>2]|0)+92>>1]=0;b[(c[j>>2]|0)+94>>1]=0;b[(c[j>>
;2]|0)+96>>1]=0;if((e[c[j>>2]>>1]|0|0)<1){d=c[h>>2]|0;i=k;return d|0}d=le(c[g>
x3e;2]|0,7972,c[j>>2]|0)|0;c[h>>2]=d;if(d|0){d=c[h>>2]|0;i=k;return d|0}if((e[c[j>>2]>
;>1]|0|0)<2){d=c[h>>2]|0;i=k;return d|0}c[h>>2]=le(c[g>>2]|0,7988,c[j>>2]|0)|0
;d=c[h>>2]|0;i=k;return d|0}function Vk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;j=h+12|0;e=
h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[g>>2]=(c[j>>2]|0)+468;c[f>>2]=Wa[c[(c[
j>>2]|0)+508>>2]&31](c[j>>2]|0,1886352244,c[e>>2]|0,0)|0;if(c[f>>2]|0){c[
d>>2]=c[f>>2];j=c[d>>2]|0;i=h;return j|0}j=le(c[e>>2]|0,8016,c[g>>2]|0)|0;c[f
x3e;>2]=j;if(j|0){c[d>>2]=c[f>>2];j=c[d>>2]|0;i=h;return j|0}else{c[d>>2]=0;j=c[d
x3e;>2]|0;i=h;return j|0}return 0}function Wk(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,q=0,r=0;r=i;i=i+
48|0;f=r+40|0;g=r+36|0;k=r+32|0;l=r+28|0;q=r+24|0;p=r+20|0;n=r+16|0;m=r+12|0;h=r+8|0;o=r+4|0;j=r;c[f>>2]=a;c[g>
x3e;2]=d;c[l>>2]=c[(c[g>>2]|0)+28>>2];c[o>>2]=(c[f>>2]|0)+348;c[(c[o>>
;2]|0)+16>>2]=c[g>>2];c[k>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>
;2]|0,1851878757,c[g>>2]|0,p)|0;if(c[k>>2]|0){q=c[k>>2]|0;i=r;return q|0}c[q>>2]=Mc(c[g
x3e;>2]|0)|0;d=le(c[g>>2]|0,8060,c[o>>2]|0)|0;c[k>>2]=d;if(d|0){q=c[k>>2]|0;i=r;return
q|0}c[n>>2]=(c[q>>2]|0)+6+((c[(c[o>>2]|0)+4>>2]|0)*12|0);c[m>>2]=(c[q>
x3e;2]|0)+(c[p>>2]|0);if((c[n>>2]|0)>>>0>(c[m>>2]|0)>>>0){c[k
x3e;>2]=145;q=c[k>>2]|0;i=r;return q|0}c[h>>2]=c[(c[o>>2]|0)+4>>2];c[(c[o>>
;2]|0)+4>>2]=0;p=hc(c[l>>2]|0,20,0,c[h>>2]|0,0,k)|0;c[(c[o>>2]|0)+12>>2]=p;if(
c[k>>2]|0){q=c[k>>2]|0;i=r;return q|0}p=ee(c[g>>2]|0,(c[h>>2]|0)*12|0)|0;c[k>>
2]=p;if(p|0){q=c[k>>2]|0;i=r;return q|0}c[j>>2]=c[(c[o>>2]|0)+12>>2];while(1){if((c[h>
;>2]|0)>>>0<=0)break;p=le(c[g>>2]|0,8080,c[j>>2]|0)|0;c[k>>2]=p;do if((p|
0)==0?e[(c[j>>2]|0)+8>>1]|0|0:0){p=(c[j>>2]|0)+12|0;c[p>>2]=(c[p>>2]|0)+((c[q
x3e;>2]|0)+(c[(c[o>>2]|0)+8>>2]|0));if((c[(c[j>>2]|0)+12>>2]|0)>>>0
x3e;=(c[n>>2]|0)>>>0?((c[(c[j>>2]|0)+12>>2]|0)+(e[(c[j>>2]|0)+8>>
;1]|0)|0)>>>0<=(c[m>>2]|0)>>>0:0){c[j>>2]=(c[j>>2]|0)+20;break}
c[(c[j>>2]|0)+12>>2]=0;b[(c[j>>2]|0)+8>>1]=0}while(0);c[h>>2]=(c[h>>
2]|0)+-1}c[(c[o>>2]|0)+4>>2]=((c[j>>2]|0)-(c[(c[o>>2]|0)+12>>2]|0)|0)/20|0;ge(
c[g>>2]|0);b[(c[f>>2]|0)+344>>1]=c[(c[o>>2]|0)+4>>2];q=c[k>>2]|0;i=r
;return q|0}function Xk(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;j=h+16|0;f=h+12|0;g=h+8|0;e=h+4|0;d=h;c[j>>2
]=a;c[f>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+8>>2];c[g>>2]=(c[j>>2]|0)+348
;c[e>>2]=c[(c[g>>2]|0)+12>>2];c[d>>2]=c[(c[g>>2]|0)+4>>2];if(!(c[(c[
g>>2]|0)+12>>2]|0)){j=c[g>>2]|0;j=j+4|0;c[j>>2]=0;j=c[g>>2]|0;b[j>>1
]=0;j=c[g>>2]|0;j=j+8|0;c[j>>2]=0;i=h;return}while(1){a=c[f>>2]|0;if((c[d>>2]|0)>
x3e;>0<=0)break;Fb(a,c[(c[e>>2]|0)+16>>2]|0);c[(c[e>>2]|0)+16>>2]=0;b[(c[e>
;>2]|0)+8>>1]=0;c[d>>2]=(c[d>>2]|0)+-1;c[e>>2]=(c[e>>2]|0)+20}Fb(a,c[(c[g
>>2]|0)+12>>2]|0);c[(c[g>>2]|0)+12>>2]=0;j=c[g>>2]|0;j=j+4|0;c[j>>2]=
0;j=c[g>>2]|0;b[j>>1]=0;j=c[g>>2]|0;j=j+8|0;c[j>>2]=0;i=h;return}function Yk(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[f>>2]=c[f>>2];c[e
x3e;>2]=c[e>>2];i=d;return 7}function Zk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>
;2]=c[d>>2];i=b;return}function _k(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;x=i;i=i+80|0;e=x+68|0;f=x+64|0;l=x+60|0;w=x+56|0;t=x+52|0;u=x+48|0;o=x+44|0;q=x+40|0;g=x+36|0;s=x+32|0;p=x+28|0;m=
x+24|0;j=x+20|0;v=x+16|0;n=x+12|0;h=x+8|0;r=x+4|0;k=x;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;c[s>>
;2]=0;c[l>>2]=Wa[c[(c[e>>2]|0)+508>>2]&31](c[e>>2]|0,1801810542,c[f>>2]|0
,w)|0;if(c[l>>2]|0){w=c[l>>2]|0;i=x;return w|0}if((c[w>>2]|0)>>>0<4){c[l>
x3e;2]=142;w=c[l>>2]|0;i=x;return w|0}b=de(c[f>>2]|0,c[w>>2]|0,(c[e>>2]|0)+772|0)|0;c[l
x3e;>2]=b;if(b|0){w=c[l>>2]|0;i=x;return w|0}c[(c[e>>2]|0)+776>>2]=c[w>>2];c[t>
;>2]=c[(c[e>>2]|0)+772>>2];c[u>>2]=(c[t>>2]|0)+(c[w>>2]|0);c[t>>
;2]=(c[t>>2]|0)+2;c[t>>2]=(c[t>>2]|0)+2;w=(((d[(c[t>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[q>>2]=w;c[q>
;>2]=(c[q>>2]|0)>>>0>32?32:w;c[o>>2]=0;while(1){if((c[o>>2]|0)>>
;>0>=(c[q>>2]|0)>>>0)break;c[n>>2]=1<<c[o>>2];if(((c[t>>
;2]|0)+6|0)>>>0>(c[u>>2]|0)>>>0)break;c[v>>2]=c[t>>2];c[t>
x3e;2]=(c[t>>2]|0)+2;c[t>>2]=(c[t>>2]|0)+2;c[m>>2]=(((d[(c[t>>2]|0)+-2>
x3e;0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[t>
;>2]=(c[t>>2]|0)+2;c[j>>2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(
c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c[m>>2]|0)>>>0<
;=6)break;c[v>>2]=(c[v>>2]|0)+(c[m>>2]|0);if((c[v>>2]|0)>>>0>(c[u>
;>2]|0)>>>0)c[v>>2]=c[u>>2];if((c[j>>2]&-9|0)==1?((c[t>>2]|0)+8
|0)>>>0<=(c[u>>2]|0)>>>0:0){c[t>>2]=(c[t>>2]|0)+2;c[p>>
;2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&
;65535)<<0)&65535;c[t>>2]=(c[t>>2]|0)+6;if(((c[v>>2]|0)-(c[t>>2]|0)|0)<
;((c[p>>2]|0)*6|0))c[p>>2]=((c[v>>2]|0)-(c[t>>2]|0)|0)/6|0;c[g>>2]=c[g>
x3e;2]|c[n>>2];if((c[p>>2]|0)>>>0>0){c[t>>2]=(c[t>>2]|0)+4;c[r>
x3e;2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-4+3>>0]|0)<<0;c[t>
x3e;2]=(c[t>>2]|0)+2;c[h>>2]=(c[p>>2]|0)-1;while(1){if((c[h>>2]|0)>>>0<
;=0)break;c[t>>2]=(c[t>>2]|0)+4;c[k>>2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24
|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[
t>>2]|0)+-4+3>>0]|0)<<0;if((c[k>>2]|0)>>>0<=(c[r>>2]|0)>
;>>0)break;c[t>>2]=(c[t>>2]|0)+2;c[r>>2]=c[k>>2];c[h>>2]=(c[h>
x3e;2]|0)+-1}if(!(c[h>>2]|0))c[s>>2]=c[s>>2]|c[n>>2]}}c[t>>2]=c[v>>2
];c[o>>2]=(c[o>>2]|0)+1}c[(c[e>>2]|0)+780>>2]=c[o>>2];c[(c[e>>2]|0)+
784>>2]=c[g>>2];c[(c[e>>2]|0)+788>>2]=c[s>>2];w=c[l>>2]|0;i=x;return
w|0}function $k(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;n=i;i=i+32|0;f=n+24|0;h=n+20|0;j=n+16|0;g=n+12|0;l=n+8|0;m
=n+4|0;k=n;c[f>>2]=a;c[h>>2]=d;c[g>>2]=c[(c[h>>2]|0)+28>>2];c[j>>2]=
Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1734439792,c[h>>2]|0,0)|0;if(c[j>>
2]|0){m=c[j>>2]|0;i=n;return m|0}d=ee(c[h>>2]|0,4)|0;c[j>>2]=d;if(d|0){m=c[j>>2]|0;i=n;return
m|0}a=ie(c[h>>2]|0)|0;b[(c[f>>2]|0)+548>>1]=a;a=ie(c[h>>2]|0)|0;b[(c[f>>2]|0)+
548+2>>1]=a;ge(c[h>>2]|0);a=(c[f>>2]|0)+548+2|0;if((e[(c[f>>2]|0)+548>>1]|0|0)
x3e;=2){b[a>>1]=0;c[j>>2]=8;m=c[j>>2]|0;i=n;return m|0}c[m>>2]=e[a>>1];c[k>
;>2]=hc(c[g>>2]|0,4,0,c[m>>2]|0,0,j)|0;if(c[j>>2]|0){m=c[j>>2]|0;i=n;return m|0}g=ee
(c[h>>2]|0,c[m>>2]<<2)|0;c[j>>2]=g;if(g|0){m=c[j>>2]|0;i=n;return m|0}c[(c[f
x3e;>2]|0)+548+4>>2]=c[k>>2];c[l>>2]=0;while(1){a=c[h>>2]|0;if((c[l>>2]|0
)>>>0>=(c[m>>2]|0)>>>0)break;g=ie(a)|0;b[(c[k>>2]|0)+(c[l>>2]
x3c;<2)>>1]=g;g=ie(c[h>>2]|0)|0;b[(c[k>>2]|0)+(c[l>>2]<<2)+2>>1
]=g;c[l>>2]=(c[l>>2]|0)+1}ge(a);m=c[j>>2]|0;i=n;return m|0}function al(a,b){a=a|0;b=b|0;var d=0,e=
0,f=0,g=0,h=0;g=i;i=i+16|0;h=g+12|0;d=g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[d>>2]=b;c[f>>2]=(c[h>>
;2]|0)+556;c[e>>2]=Wa[c[(c[h>>2]|0)+508>>2]&31](c[h>>2]|0,1346587732,c[d>>
;2]|0,0)|0;if(c[e>>2]|0){h=c[e>>2]|0;i=g;return h|0}c[e>>2]=le(c[d>>2]|0,8108,c[f>
x3e;2]|0)|0;h=c[e>>2]|0;i=g;return h|0}function bl(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>
x3e;2]=a;c[e>>2]=b;b=Qk(c[f>>2]|0,c[e>>2]|0,1651008868)|0;i=d;return b|0}function cl(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;j=f+32|0;l=f+28|0;k=f+24|0;g=f+20|0;h=f;c[j>>2]=a;c[l>
;>2]=b;c[k>>2]=d;c[g>>2]=e;c[h>>2]=0;c[h+4>>2]=c[l>>2];c[h+8>>2
]=c[k>>2];c[h+12>>2]=0;c[h+16>>2]=0;c[c[g>>2]>>2]=2147483647;d=dl(c[j>>
;2]|0,h,c[g>>2]|0)|0;i=f;return d|0}function dl(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;b=Ad(c[h>>2]|0,c[g>>2]|0,0,c[f>>
;2]|0)|0;i=e;return b|0}function el(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[f>>2]=c[f>>2];c[e>>2]=c[e>>2];i=d;return 7}function fl(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;r=i;i=i+48|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0;m=r+16|0;n=
r+12|0;o=r+8|0;p=r+4|0;q=r;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c
[o>>2]=g;if((c[(c[j>>2]|0)+616>>2]|0?(c[(c[j>>2]|0)+612>>2]|0)>>>
;0>(c[l>>2]|0)>>>0:0)?(c[q>>2]=(c[(c[j>>2]|0)+616>>2]|0)+((c[l>
x3e;2]|0)*48|0),c[p>>2]=gl(c[k>>2]|0,c[q>>2]|0,c[m>>2]|0,c[o>>2]|0)|0,(c[p>
;>2]|0)==0):0){c[c[n>>2]>>2]=c[q>>2];c[h>>2]=0;d=c[h>>2]|0;i=r;return d|0
}c[c[m>>2]>>2]=0;c[c[n>>2]>>2]=0;c[c[o>>2]>>2]=0;c[h>>2]=6
;d=c[h>>2]|0;i=r;return d|0}function gl(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;r
=i;i=i+48|0;h=r+28|0;j=r+24|0;k=r+20|0;l=r+16|0;m=r+12|0;p=r+8|0;q=r+4|0;n=r+32|0;o=r;c[j>>2]=a;c[k>>2]=d;c[
l>>2]=f;c[m>>2]=g;a:do if(((c[j>>2]|0)>>>0>=(e[(c[k>>2]|0)+40>
x3e;1]|0)>>>0?(c[j>>2]|0)>>>0<=(e[(c[k>>2]|0)+42>>1]|0)>
x3e;>0:0)?(c[p>>2]=c[(c[k>>2]|0)+4>>2],c[q>>2]=(c[p>>2]|0)+((c[c[k>
x3e;2]>>2]|0)*40|0),c[p>>2]|0):0){while(1){if((c[p>>2]|0)>>>0>=(c[q>>
;2]|0)>>>0)break a;if((c[j>>2]|0)>>>0>=(e[c[p>>2]>>1]|0)>
x3e;>0?(c[j>>2]|0)>>>0<=(e[(c[p>>2]|0)+2>>1]|0)>>>0:0)break
;c[p>>2]=(c[p>>2]|0)+40}b[n>>1]=(c[j>>2]|0)-(e[c[p>>2]>>1]|0);b:do switch
(e[(c[p>>2]|0)+4>>1]|0|0){case 3:case 1:{c[c[m>>2]>>2]=c[(c[(c[p>>2]|0)+28>
;>2]|0)+((e[n>>1]|0)<<2)>>2];break}case 2:{d=(c[(c[p>>2]|0)+8>>2]|0)+(_(c
[(c[p>>2]|0)+12>>2]|0,e[n>>1]|0)|0)|0;c[c[m>>2]>>2]=d;break}case 5:case 4:{c[o
>>2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[(c[p>>2]|0)+24>>2]|0)>
x3e;>0)break a;if((e[(c[(c[p>>2]|0)+32>>2]|0)+(c[o>>2]<<1)>>1]|0|0)==(c[j
>>2]|0))break;c[o>>2]=(c[o>>2]|0)+1}if((e[(c[p>>2]|0)+4>>1]|0|0)==4){c[c[m>
;>2]>>2]=c[(c[(c[p>>2]|0)+28>>2]|0)+(c[o>>2]<<2)>>2];break b}else
{d=(c[(c[p>>2]|0)+8>>2]|0)+(_(c[o>>2]|0,c[(c[p>>2]|0)+12>>2]|0)|0)|0;c[c[m>
;>2]>>2]=d;break b}}default:break a}while(0);c[c[l>>2]>>2]=c[p>>2];c[h>>2
]=0;d=c[h>>2]|0;i=r;return d|0}while(0);c[c[l>>2]>>2]=0;c[c[m>>2]>>2]=0;c[h>
;>2]=6;d=c[h>>2]|0;i=r;return d|0}function hl(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;n=i;i=i+32
|0;g=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;l=n;m=n+20|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=f;c[l>>2]=
0;switch(e[(c[j>>2]|0)+6>>1]|0|0){case 8:case 2:case 1:{b=le(c[h>>2]|0,8172,m)|0;c[l>>2]=
b;if(!b){a[c[k>>2]>>0]=a[m>>0]|0;a[(c[k>>2]|0)+1>>0]=a[m+1>>0]|0;a[(
c[k>>2]|0)+2>>0]=a[m+2>>0]|0;a[(c[k>>2]|0)+3>>0]=a[m+3>>0]|0;a[(c[k
x3e;>2]|0)+4>>0]=a[m+4>>0]|0;a[(c[k>>2]|0)+5>>0]=0;a[(c[k>>2]|0)+6>
x3e;0]=0;a[(c[k>>2]|0)+7>>0]=0}break}case 9:case 7:case 6:{c[l>>2]=le(c[h>>2]|0,8200,c[k
>>2]|0)|0;break}default:{if((e[(c[j>>2]|0)+4>>1]|0|0)!=2?(e[(c[j>>2]|0)+4>>1]|
0|0)!=5:0){c[g>>2]=3;b=c[g>>2]|0;i=n;return b|0}b=c[k>>2]|0;m=(c[j>>2]|0)+16|0;a[b>
x3e;0]=a[m>>0]|0;a[b+1>>0]=a[m+1>>0]|0;a[b+2>>0]=a[m+2>>0]|0;a[b+3>>
0]=a[m+3>>0]|0;a[b+4>>0]=a[m+4>>0]|0;a[b+5>>0]=a[m+5>>0]|0;a[b+6>>0]=
a[m+6>>0]|0;a[b+7>>0]=a[m+7>>0]|0}}c[g>>2]=c[l>>2];b=c[g>>2]|0;i=n;return
b|0}function il(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;w=i;i=i+64|0;l=w+48|0;x=w+44|0;y=w+40|0;m=w+36|0;n=w+32|0;o=w+28|0;p=w+24|0;s=w+20|0;r=w+16|0;t=w+12|0;v=w+8|0;u=w+4|0;q=w
;c[l>>2]=b;c[x>>2]=e;c[y>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[p>
;>2]=k;c[s>>2]=fl(c[l>>2]|0,c[y>>2]|0,c[x>>2]|0,u,v,t)|0;if(c[s>>2]|0){y=
c[s>>2]|0;i=w;return y|0}c[s>>2]=Wa[c[(c[l>>2]|0)+508>>2]&31](c[l>>2]|0,1161970772
,c[n>>2]|0,0)|0;if(c[s>>2]|0)c[s>>2]=Wa[c[(c[l>>2]|0)+508>>2]&31](c[l>
;>2]|0,1650745716,c[n>>2]|0,0)|0;if(c[s>>2]|0){y=c[s>>2]|0;i=w;return y|0}c[r>>2]=Mc
(c[n>>2]|0)|0;c[s>>2]=jl(c[v>>2]|0,c[u>>2]|0,c[r>>2]|0,c[t>>2]|0,c[(
c[l>>2]|0)+84>>2]|0,0,0,c[n>>2]|0,c[p>>2]|0,0)|0;if(c[s>>2]|0){y=c[s>>
;2]|0;i=w;return y|0}if(a[(c[v>>2]|0)+47>>0]&1|0){c[q>>2]=(a[(c[v>>2]|0)+16>
x3e;0]|0)-(a[(c[v>>2]|0)+16+1>>0]|0);a[(c[p>>2]|0)+5>>0]=(0-(d[(c[p>>2]|0)+1
x3e;>0]|0)|0)/2|0;a[(c[p>>2]|0)+6>>0]=((c[q>>2]|0)-(d[c[p>>2]>>0]|0)|0)/2
|0;a[(c[p>>2]|0)+7>>0]=((c[q>>2]|0)*12|0)/10|0}if(!(c[m>>2]&64)){y=c[s>>2
]|0;i=w;return y|0}ml(c[o>>2]|0,c[p>>2]|0);y=c[s>>2]|0;i=w;return y|0}function jl(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;L=i;i=i+96|0;u=L+72|0;v=L+68|0;q=L+64|0;x=L+60|0;M=L+56|0;y=L+52|0;z=L+48|0;A=L+44|0;B=L+40|0;r
=L+36|0;w=L+32|0;J=L+28|0;s=L+24|0;I=L+20|0;t=L+16|0;D=L+12|0;C=L+8|0;K=L+78|0;E=L+76|0;H=L+4|0;F=L+80|0;G=L;c[v>>2]=f
;c[q>>2]=g;c[x>>2]=h;c[M>>2]=j;c[y>>2]=k;c[z>>2]=l;c[A>>2]=m;c[B>
;>2]=n;c[r>>2]=o;c[w>>2]=p;c[J>>2]=c[(c[B>>2]|0)+28>>2];c[s>>2]=(
c[y>>2]|0)+76;m=Kc(c[B>>2]|0,(c[x>>2]|0)+(c[M>>2]|0)|0)|0;c[I>>2]=m;a:do if((m
|0)==0?(c[I>>2]=hl(c[B>>2]|0,c[q>>2]|0,c[r>>2]|0)|0,(c[I>>2]|0)==0):0){if(!(c[
w>>2]|0)){c[(c[s>>2]|0)+4>>2]=d[(c[r>>2]|0)+1>>0];c[c[s>>2]>>
;2]=d[c[r>>2]>>0];switch(d[(c[v>>2]|0)+46>>0]|0){case 1:{a[(c[s>>2]|0)+18>
;>0]=1;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|0)+4>>2]|0)+7>>3;break}case 2:{a[(
c[s>>2]|0)+18>>0]=3;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|0)+4>>2]|0)+3>
;>2;break}case 4:{a[(c[s>>2]|0)+18>>0]=4;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|
0)+4>>2]|0)+1>>1;break}case 8:{a[(c[s>>2]|0)+18>>0]=2;c[(c[s>>2]|0)+8>>
;2]=c[(c[s>>2]|0)+4>>2];break}default:{c[u>>2]=3;M=c[u>>2]|0;i=L;return M|0}}c[t>
x3e;2]=_(c[c[s>>2]>>2]|0,c[(c[s>>2]|0)+8>>2]|0)|0;if(!(c[t>>2]|0))break;c[I>
;>2]=xc(c[y>>2]|0,c[t>>2]|0)|0;if(c[I>>2]|0)break}switch(e[(c[q>>2]|0)+6>>
;1]|0){case 7:case 6:case 5:case 2:case 1:{c[u>>2]=kl(c[s>>2]|0,c[z>>2]|0,c[A>>2]|0,d[(c
[v>>2]|0)+46>>0]|0,b[(c[q>>2]|0)+6>>1]|0,c[r>>2]|0,c[B>>2]|0)|0;M=c[
u>>2]|0;i=L;return M|0}case 8:{M=Qc(c[B>>2]|0,1)|0;c[I>>2]=M;if(M|0){c[I>>2]=83;break a}
break}case 9:break;default:{c[u>>2]=3;M=c[u>>2]|0;i=L;return M|0}}b[K>>1]=Pc(c[B>>2]|0,I
)|0;if((c[I>>2]|0)==0?(c[D>>2]=hc(c[J>>2]|0,4,0,e[K>>1]|0,0,I)|0,(c[I>>2]|0)==
0):0){b[E>>1]=b[K>>1]|0;M=ee(c[B>>2]|0,e[K>>1]<<2)|0;c[I>>2]=M;b:do
if(!M){c[C>>2]=c[D>>2];while(1){q=c[B>>2]|0;if((e[E>>1]|0)<=0)break;M=ie(q)|0;b[c[C
>>2]>>1]=M;M=he(c[B>>2]|0)|0;a[(c[C>>2]|0)+2>>0]=M;M=he(c[B>>2]|0)|0
;a[(c[C>>2]|0)+3>>0]=M;b[E>>1]=(b[E>>1]|0)+-1<<16>>16;c[C>>
;2]=(c[C>>2]|0)+4}ge(q);b[E>>1]=b[K>>1]|0;c[C>>2]=c[D>>2];while(1){if((e[E>
;>1]|0)<=0)break b;c[I>>2]=gl(e[c[C>>2]>>1]|0,c[v>>2]|0,H,G)|0;if(c[I>>
;2]|0)break b;c[I>>2]=jl(c[v>>2]|0,c[H>>2]|0,c[x>>2]|0,c[G>>2]|0,c[y>>
;2]|0,(c[z>>2]|0)+(a[(c[C>>2]|0)+2>>0]|0)|0,(c[A>>2]|0)+(a[(c[C>>2]|0)+3>
x3e;0]|0)|0,c[B>>2]|0,F,(c[w>>2]|0)+1|0)|0;if(c[I>>2]|0)break b;b[E>>1]=(b[E>>
1]|0)+-1<<16>>16;c[C>>2]=(c[C>>2]|0)+4}}while(0);Fb(c[J>>2]|0,c[D>>2
]|0);c[D>>2]=0}}while(0);c[u>>2]=c[I>>2];M=c[u>>2]|0;i=L;return M|0}function kl(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;C=i;i=i+64|
0;n=C+48|0;o=C+44|0;p=C+40|0;q=C+36|0;r=C+32|0;s=C+52|0;t=C+28|0;u=C+24|0;v=C+20|0;y=C+16|0;w=C+12|0;x=C+8|0;z=C+4|0;B=C+54|0;A=
C;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;c[r>>2]=j;b[s>>1]=k;c[t>>2]=l;c[u>
;>2]=m;if(((c[p>>2]|0)>=0?!((c[q>>2]|0)<0?1:((c[p>>2]|0)+(d[(c[t>>2]|0)+1
>>0]|0)|0)>(c[(c[o>>2]|0)+4>>2]|0)):0)?((c[q>>2]|0)+(d[c[t>>2]>>
;0]|0)|0)<=(c[c[o>>2]>>2]|0):0){c[y>>2]=d[(c[t>>2]|0)+1>>0];c[w>>
;2]=d[c[t>>2]>>0];c[z>>2]=_(c[r>>2]|0,c[y>>2]|0)|0;a[B>>0]=0;switch(
e[s>>1]|0|0){case 6:case 1:{switch(c[r>>2]|0){case 1:{c[A>>2]=(c[y>>2]|0)+7>>3
;break}case 2:{c[A>>2]=(c[y>>2]|0)+3>>2;break}case 4:{c[A>>2]=(c[y>>2]|0)+1>
;>1;break}default:c[A>>2]=c[y>>2]}c[x>>2]=_(c[w>>2]|0,c[A>>2]|0)|0;a[B>
;>0]=1;break}case 7:case 5:case 2:{c[z>>2]=_(c[y>>2]|0,c[r>>2]|0)|0;c[x>>2]=(_(c[w
x3e;>2]|0,c[z>>2]|0)|0)+7>>3;break}default:{c[n>>2]=3;h=c[n>>2]|0;i=C;return h|0}}h
=ee(c[u>>2]|0,c[x>>2]|0)|0;c[v>>2]=h;if(!h){h=_(c[p>>2]|0,c[r>>2]|0)|0;ll(c[o
x3e;>2]|0,c[(c[u>>2]|0)+32>>2]|0,c[z>>2]|0,a[B>>0]|0,h,c[q>>2]|0,d[c[t>
;>2]>>0]|0);ge(c[u>>2]|0)}}else c[v>>2]=6;c[n>>2]=c[v>>2];h=c[n>>
;2]|0;i=C;return h|0}function ll(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,D=0,E=0,F=0;F=i;i=i+64|0;n=F+44|0;q=F+40|0;r=F+36|0;s=F+54|0;t=F+32|0;o=F+28|0;p=F+24|0;y=F+20|0;z
=F+16|0;x=F+12|0;u=F+48|0;A=F+8|0;w=F+4|0;v=F;B=F+53|0;C=F+52|0;D=F+51|0;E=F+50|0;c[n>>2]=f;c[q>>2]=g;c[r>
;>2]=h;a[s>>0]=j;c[t>>2]=k;c[o>>2]=l;c[p>>2]=m;c[z>>2]=c[(c[n>>
2]|0)+8>>2];c[y>>2]=c[(c[n>>2]|0)+12>>2];if((c[z>>2]|0)<0){l=_(c[z>
x3e;2]|0,(c[c[n>>2]>>2]|0)-1|0)|0;c[y>>2]=(c[y>>2]|0)+(0-l)}l=(c[t>>2]>
x3e;3)+(_(c[o>>2]|0,c[z>>2]|0)|0)|0;c[y>>2]=(c[y>>2]|0)+l;b[u>>1]=0;c[A>
x3e;2]=0;c[x>>2]=c[p>>2];while(1){if((c[x>>2]|0)<=0)break;c[w>>2]=c[y>>2];
c[v>>2]=c[r>>2];a[B>>0]=c[t>>2]&7;a[C>>0]=8-(d[B>>0]|0);if((c[v
>>2]|0)>=8){c[v>>2]=(c[v>>2]|0)-8;do{if((c[A>>2]|0)>>>0<8){l=c[
q>>2]|0;c[q>>2]=l+1;b[u>>1]=e[u>>1]|(d[l>>0]&65535)<<8-(c[A>
;>2]|0)&65535;c[A>>2]=(c[A>>2]|0)+8}a[D>>0]=e[u>>1]>>8;n=d[D>
x3e;0]|0;if(a[B>>0]|0){l=c[w>>2]|0;a[l>>0]=d[l>>0]|n>>d[B>>0]&255
;l=(c[w>>2]|0)+1|0;a[l>>0]=d[l>>0]|d[D>>0]<<d[C>>0]&255}else{l=
c[w>>2]|0;a[l>>0]=d[l>>0]|n}c[w>>2]=(c[w>>2]|0)+1;b[u>>1]=e[u>
x3e;1]<<8;c[A>>2]=(c[A>>2]|0)-8;c[v>>2]=(c[v>>2]|0)-8}while((c[v>>2]|
0)>=0);c[v>>2]=(c[v>>2]|0)+8}if((c[v>>2]|0)>0){if((c[A>>2]|0)<(c[v>
x3e;2]|0)){l=c[q>>2]|0;c[q>>2]=l+1;b[u>>1]=e[u>>1]|(d[l>>0]&65535)<
x3c;8-(c[A>>2]|0)&65535;c[A>>2]=(c[A>>2]|0)+8}a[E>>0]=e[u>>1]>>
8&255&~(255>>c[v>>2]);l=c[w>>2]|0;a[l>>0]=d[l>>0]|d[E>>0]
x3e;>d[B>>0]&255;if((c[v>>2]|0)>(d[C>>0]|0)){l=(c[w>>2]|0)+1|0;a[l>
x3e;0]=d[l>>0]|d[E>>0]<<d[C>>0]&255}b[u>>1]=e[u>>1]<<
c[v>>2];c[A>>2]=(c[A>>2]|0)-(c[v>>2]|0)}if(a[s>>0]|0){b[u>>1]=0;c[A
x3e;>2]=0}c[y>>2]=(c[y>>2]|0)+(c[z>>2]|0);c[x>>2]=(c[x>>2]|0)+-1}i=F;return
}function ml(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;z=i;i=i+80|0;l
=z+60|0;m=z+56|0;w=z+52|0;f=z+48|0;r=z+44|0;q=z+40|0;g=z+36|0;j=z+32|0;h=z+28|0;k=z+24|0;o=z+20|0;t=z+16|0;y=z+12|0;u=z+66|0;n=z
+8|0;x=z+65|0;v=z+4|0;p=z;s=z+64|0;c[l>>2]=b;c[m>>2]=e;c[q>>2]=c[(c[l>>2]|0)+12>>
;2];c[w>>2]=c[c[l>>2]>>2];c[r>>2]=c[(c[l>>2]|0)+8>>2];c[f>>
;2]=0;a:while(1){if((c[f>>2]|0)>=(c[w>>2]|0))break;c[g>>2]=c[q>>2];c[j>>2
]=(c[q>>2]|0)+(c[r>>2]|0);while(1){if((c[g>>2]|0)>>>0>=(c[j>>2]|0)
x3e;>>0)break;if(a[c[g>>2]>>0]|0)break a;c[g>>2]=(c[g>>2]|0)+1}c[q>>
2]=c[j>>2];c[f>>2]=(c[f>>2]|0)+1}if((c[f>>2]|0)>=(c[w>>2]|0)){c[(c[l>
;>2]|0)+4>>2]=0;c[c[l>>2]>>2]=0;c[(c[l>>2]|0)+8>>2]=0;a[(c[l>>2
]|0)+18>>0]=1;i=z;return}if((c[f>>2]|0)>0){c[q>>2]=c[(c[l>>2]|0)+12>>2];e
=(c[q>>2]|0)+(_(c[f>>2]|0,c[r>>2]|0)|0)|0;Ts(c[q>>2]|0,e|0,_((c[w>>2]|0)-(c[f
x3e;>2]|0)|0,c[r>>2]|0)|0)|0;a[c[m>>2]>>0]=(d[c[m>>2]>>0]|0)-(c[f>
x3e;2]|0);a[(c[m>>2]|0)+3>>0]=(a[(c[m>>2]|0)+3>>0]|0)-(c[f>>2]|0);a[(c[m>
x3e;2]|0)+6>>0]=(a[(c[m>>2]|0)+6>>0]|0)-(c[f>>2]|0);e=c[l>>2]|0;c[e>>
;2]=(c[e>>2]|0)-(c[f>>2]|0);c[w>>2]=(c[w>>2]|0)-(c[f>>2]|0)}c[q>>2]=(
c[(c[l>>2]|0)+12>>2]|0)+(_((c[w>>2]|0)-1|0,c[r>>2]|0)|0);c[f>>2]=0;b:while(1){
if((c[f>>2]|0)>=(c[w>>2]|0))break;c[h>>2]=c[q>>2];c[k>>2]=(c[q>>
;2]|0)+(c[r>>2]|0);while(1){if((c[h>>2]|0)>>>0>=(c[k>>2]|0)>>>0
)break;if(a[c[h>>2]>>0]|0)break b;c[h>>2]=(c[h>>2]|0)+1}c[q>>2]=(c[q>>
;2]|0)+(0-(c[r>>2]|0));c[f>>2]=(c[f>>2]|0)+1}if((c[f>>2]|0)>0){a[c[m>>2]
x3e;>0]=(d[c[m>>2]>>0]|0)-(c[f>>2]|0);c[w>>2]=(c[w>>2]|0)-(c[f>>
;2]|0);e=c[l>>2]|0;c[e>>2]=(c[e>>2]|0)-(c[f>>2]|0)}c:do{c[q>>2]=c[(c[l>
x3e;2]|0)+12>>2];c[o>>2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);while(1){if((c
[q>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(d[c[q>>2]>>0]
x26;128|0)break c;c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}c[q>>2]=c[(c[l>>2]|0)+12>
;>2];c[o>>2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);while(1){f=(c[l>>2]|0
)+4|0;g=c[f>>2]|0;if((c[q>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[y
>>2]=g;c[n>>2]=c[q>>2];a[u>>0]=d[c[n>>2]>>0]<<1;c[t>
x3e;2]=8;while(1){if((c[t>>2]|0)>=(c[y>>2]|0))break;a[x>>0]=a[(c[n>>2]|0)+1>
x3e;0]|0;a[c[n>>2]>>0]=d[u>>0]|d[x>>0]>>7;a[u>>0]=d[x>>0]
x3c;<1;c[n>>2]=(c[n>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+8}a[c[n>>2]>>0
]=a[u>>0]|0;c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}c[f>>2]=g+-1;e=(c[m>>2]|
0)+2|0;a[e>>0]=(a[e>>0]|0)+1<<24>>24;e=(c[m>>2]|0)+5|0;a[e>>0]=(a[e
x3e;>0]|0)+1<<24>>24;e=(c[m>>2]|0)+1|0;a[e>>0]=(a[e>>0]|0)+-1<<
24>>24}while((c[(c[l>>2]|0)+4>>2]|0)>0);d:while(1){c[v>>2]=(c[(c[l>>2]|0)+
4>>2]|0)-1;c[q>>2]=(c[(c[l>>2]|0)+12>>2]|0)+(c[v>>2]>>3);c[p>
x3e;2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);a[s>>0]=128>>(c[v>>2]
x26;7);while(1){if((c[q>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;if(d[c[q>
x3e;2]>>0]&d[s>>0]|0){f=37;break d}c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}y=(c[l
>>2]|0)+4|0;c[y>>2]=(c[y>>2]|0)+-1;y=(c[m>>2]|0)+1|0;a[y>>0]=(a[y>>0
]|0)+-1<<24>>24;if((c[(c[l>>2]|0)+4>>2]|0)<=0){f=37;break}}if((f|0)==37){i=z;return
}}function nl(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return}function
ol(d){d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;f=n+20|0;j=n+16|0;l=n+12|0;g=n+8|0;m=n+4|0;k=n+24|0;h=n;c[f>
x3e;2]=d;c[j>>2]=c[(c[f>>2]|0)+100>>2];c[l>>2]=(c[f>>2]|0)+628;if(!(a[c[l>
;>2]>>0]|0)){m=c[l>>2]|0;a[m>>0]=0;i=n;return}c[g>>2]=c[(c[f>>2]|0)+468
x3e;>2];if((c[g>>2]|0)!=131072){if((c[g>>2]|0)!=163840){m=c[l>>2]|0;a[m>>0]=0;i=n;return
}c[h>>2]=(c[l>>2]|0)+4;Fb(c[j>>2]|0,c[(c[h>>2]|0)+4>>2]|0);c[(c[h>>2
]|0)+4>>2]=0;b[c[h>>2]>>1]=0;m=c[l>>2]|0;a[m>>0]=0;i=n;return}c[m>>2
]=(c[l>>2]|0)+4;Fb(c[j>>2]|0,c[(c[m>>2]|0)+4>>2]|0);c[(c[m>>2]|0)+4>>
;2]=0;b[c[m>>2]>>1]=0;b[k>>1]=0;while(1){f=c[j>>2]|0;if((e[k>>1]|0)>=(e[(
c[m>>2]|0)+2>>1]|0))break;Fb(f,c[(c[(c[m>>2]|0)+8>>2]|0)+(e[k>>1]<<2
)>>2]|0);c[(c[(c[m>>2]|0)+8>>2]|0)+(e[k>>1]<<2)>>2]=0;b[k>>
;1]=(b[k>>1]|0)+1<<16>>16}Fb(f,c[(c[m>>2]|0)+8>>2]|0);c[(c[m>>2]|0)+
8>>2]=0;b[(c[m>>2]|0)+2>>1]=0;m=c[l>>2]|0;a[m>>0]=0;i=n;return}function pl(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;c[h>>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>>2];i=e;return 7}function
ql(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[f>>2]=c[f>
;>2];c[e>>2]=c[e>>2];i=d;return 0}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,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=i;i=i+96|0;g=E+88|0;h=E+84|0;j=E+80|0;D=E+76|0;l=E+72|0;s=
E+68|0;y=E+64|0;z=E+60|0;k=E+56|0;w=E+52|0;C=E+48|0;r=E+44|0;n=E+40|0;x=E+36|0;B=E+32|0;p=E+28|0;v=E+24|0;t=E+20|0;u=E+16|0;A=E+
12|0;o=E+8|0;m=E+4|0;q=E;c[g>>2]=b;c[h>>2]=e;c[j>>2]=f;c[D>>2]=0;c[s>>2]=1;c[y
>>2]=c[(c[g>>2]|0)+772>>2];c[z>>2]=(c[y>>2]|0)+(c[(c[g>>2]|0)+776>
;>2]|0);c[y>>2]=(c[y>>2]|0)+4;c[s>>2]=1;c[l>>2]=c[(c[g>>2]|0)+780>
x3e;2];while(1){if((c[l>>2]|0)>>>0<=0){b=28;break}if(((c[y>>2]|0)+6|0)>>>
0>(c[z>>2]|0)>>>0){b=28;break}c[k>>2]=c[y>>2];c[w>>2]=c[k>>
;2];c[y>>2]=(c[y>>2]|0)+2;c[C>>2]=((d[(c[y>>2]|0)+-2>>0]&65535)<<
;8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[y>>2]=(c[y>>2]|0)+2;c[
r>>2]=((d[(c[y>>2]|0)+-2>>0]&65535)<<8|(d[(c[y>>2]|0)+-2+1>>0]
x26;65535)<<0)&65535;c[y>>2]=(c[y>>2]|0)+2;c[n>>2]=((d[(c[y>>2]|0)+-2>
;>0]&65535)<<8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[B>>
;2]=0;c[C>>2]=c[C>>2];c[w>>2]=(c[k>>2]|0)+(c[r>>2]|0);if((c[w>>2]|0)
x3e;>>0>(c[z>>2]|0)>>>0)c[w>>2]=c[z>>2];a:do if(c[(c[g>>2]|
0)+784>>2]&c[s>>2]|0?((c[y>>2]|0)+8|0)>>>0<=(c[w>>2]|0)>
x3e;>0:0){c[y>>2]=(c[y>>2]|0)+2;c[x>>2]=((d[(c[y>>2]|0)+-2>>0]&65535
)<<8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[y>>2]=(c[y>>
;2]|0)+6;if(((c[w>>2]|0)-(c[y>>2]|0)|0)<((c[x>>2]|0)*6|0))c[x>>2]=((c[w>>
2]|0)-(c[y>>2]|0)|0)/6|0;if(!((c[n>>2]|0)>>>8)){c[p>>2]=c[h>>2]<<
;16|c[j>>2];if(c[(c[g>>2]|0)+788>>2]&c[s>>2]|0){c[v>>2]=0;c[t>>
2]=c[x>>2];while(1){if((c[v>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a
;c[u>>2]=((c[v>>2]|0)+(c[t>>2]|0)|0)>>>1;c[A>>2]=(c[y>>2]|0)+((
c[u>>2]|0)*6|0);c[A>>2]=(c[A>>2]|0)+4;c[o>>2]=d[(c[A>>2]|0)+-4>>0]
x3c;<24|d[(c[A>>2]|0)+-4+1>>0]<<16|d[(c[A>>2]|0)+-4+2>>0]<<8|d[(
c[A>>2]|0)+-4+3>>0]<<0;if((c[o>>2]|0)==(c[p>>2]|0))break;b=c[u>>2]|0
;if((c[o>>2]|0)>>>0<(c[p>>2]|0)>>>0){c[v>>2]=b+1;continue}else{
c[t>>2]=b;continue}}c[B>>2]=((a[c[A>>2]>>0]<<16>>16<<8|d[(
c[A>>2]|0)+1>>0]<<0)&65535)<<16>>16}else{c[m>>2]=c[x>>
;2];while(1){if((c[m>>2]|0)>>>0<=0)break a;c[y>>2]=(c[y>>2]|0)+4;c[q>>
;2]=d[(c[y>>2]|0)+-4>>0]<<24|d[(c[y>>2]|0)+-4+1>>0]<<16|d[(c[y>
x3e;2]|0)+-4+2>>0]<<8|d[(c[y>>2]|0)+-4+3>>0]<<0;b=c[y>>2]|0;if((c[q
x3e;>2]|0)==(c[p>>2]|0))break;c[y>>2]=b+2;c[m>>2]=(c[m>>2]|0)+-1}c[B>>2]=((
a[b>>0]<<16>>16<<8|d[(c[y>>2]|0)+1>>0]<<0)&65535)<
;<16>>16}b=c[B>>2]|0;if(c[n>>2]&8|0){c[D>>2]=b;break}else{c[D>>2]=(c
[D>>2]|0)+b;break}}}while(0);c[y>>2]=c[w>>2];c[l>>2]=(c[l>>2]|0)+-1;c[s>
x3e;2]=c[s>>2]<<1}if((b|0)==28){i=E;return c[D>>2]|0}return 0}function sl(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;n=i;i=i+48|0;f=n+36|0;h=n+32|0;m=n+16|0;k=n+12|0;g=n+8|0;j=n+4|0;l=n;c[f>>2]=a;c[h>
x3e;2]=d;c[g>>2]=c[(c[h>>2]|0)+28>>2];c[m+12>>2]=Mc(c[h>>2]|0)|0;c[m>>
;2]=Oc(c[h>>2]|0,k)|0;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}d=le(c[h>>2]|0,8240,m)|0;
c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}c[k>>2]=tl(m,c[h>>2]|0)|0;if(c[k>>
;2]|0){m=c[k>>2]|0;i=n;return m|0}b[(c[f>>2]|0)+152>>1]=b[m+4>>1]|0;c[(c[f>>2]|
0)+148>>2]=c[m>>2];d=hc(c[g>>2]|0,16,0,e[(c[f>>2]|0)+152>>1]|0,0,k)|0;c[(c[f
x3e;>2]|0)+156>>2]=d;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}d=Kc(c[h>>2]|0,(c[m+12
>>2]|0)+12|0)|0;c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}d=ee(c[h>>2]|0,(e[(c[f>
;>2]|0)+152>>1]|0)<<4)|0;c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}c[j>>
;2]=c[(c[f>>2]|0)+156>>2];c[l>>2]=0;while(1){f=c[h>>2]|0;if((c[l>>2]|0)>=(
e[m+4>>1]|0|0))break;d=je(f)|0;c[c[j>>2]>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>>2]|0)+
4>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>>2]|0)+8>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>
x3e;2]|0)+12>>2]=d;if(((c[(c[j>>2]|0)+8>>2]|0)+(c[(c[j>>2]|0)+12>>2]|0)|0)>
;>>0<=(c[(c[h>>2]|0)+4>>2]|0)>>>0)c[j>>2]=(c[j>>2]|0)+16;c
[l>>2]=(c[l>>2]|0)+1}ge(f);m=c[k>>2]|0;i=n;return m|0}function tl(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,q=0,r=0,s=0;s=i;i=i+64|0;f=s+48|0;g=s+44|0;h=s+40|0;n=s+54|0;q=s+52|0;j=s+36|0;l=s+32|0;k=s+28|0;o=
s+24|0;p=s+8|0;m=s;c[f>>2]=a;c[g>>2]=d;b[q>>1]=0;c[j>>2]=0;c[l>>2]=0;c[k>
x3e;2]=0;c[o>>2]=(c[(c[f>>2]|0)+12>>2]|0)+12;d=Kc(c[g>>2]|0,c[o>>2]|0)|0;c[h
x3e;>2]=d;if(d|0){r=c[h>>2]|0;i=s;return r|0}b[n>>1]=0;a:while(1){if((e[n>>1]|0|0)>=(e[(
c[f>>2]|0)+4>>1]|0|0))break;d=le(c[g>>2]|0,8264,p)|0;c[h>>2]=d;if(d|0){r=5;break}do if(((
c[p+8>>2]|0)+(c[p+12>>2]|0)|0)>>>0<=(c[(c[g>>2]|0)+4>>2]|0)>>
;>0){b[q>>1]=(b[q>>1]|0)+1<<16>>16;if((c[p>>2]|0)!=1751474532?(c[p>
x3e;2]|0)!=1651008868:0){if((c[p>>2]|0)==1397313095){c[l>>2]=1;break}if((c[p>>2]|0)!=1296389185)break
;c[k>>2]=1;break}c[j>>2]=1;if((c[p+12>>2]|0)>>>0<54){r=10;break a}d=Kc(c[g>
;>2]|0,(c[p+8>>2]|0)+12|0)|0;c[h>>2]=d;if(d|0){r=27;break a}c[m>>2]=Oc(c[g>>2]|0,h)|
0;if(c[h>>2]|0){r=27;break a}if((c[m>>2]|0)!=1594834165){r=14;break a}d=Kc(c[g>>2]|0,(c[o>>
;2]|0)+((e[n>>1]|0)+1<<4)|0)|0;c[h>>2]=d;if(d|0){r=27;break a}}while(0);b[n>>1]=(b[n>
;>1]|0)+1<<16>>16}if((r|0)==5){b[n>>1]=(b[n>>1]|0)+-1<<16>>16;b
[(c[f>>2]|0)+4>>1]=b[n>>1]|0}else if((r|0)==10){c[h>>2]=142;r=c[h>>2]|0;i=s;return
r|0}else if((r|0)==14){c[h>>2]=142;r=c[h>>2]|0;i=s;return r|0}else if((r|0)==27){r=c[h>>2]|0;i=s;
return r|0}b[(c[f>>2]|0)+4>>1]=b[q>>1]|0;if(!(e[(c[f>>2]|0)+4>>1]|0)){c[h>
;>2]=2;r=c[h>>2]|0;i=s;return r|0}if((c[j>>2]|0)==0?!((c[l>>2]|0)!=0&(c[k>>2]|
0)!=0):0){c[h>>2]=142;r=c[h>>2]|0;i=s;return r|0}c[h>>2]=0;r=c[h>>2]|0;i=s;return r|0}function
ul(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;E=i;i=i
+80|0;B=E+72|0;j=E+68|0;C=E+78|0;D=E+64|0;r=E+60|0;z=E+56|0;t=E+52|0;s=E+48|0;u=E+44|0;q=E+40|0;w=E+36|0;v=E+32|0;o=E+28|0;x=E+24
|0;p=E+20|0;y=E+16|0;k=E+12|0;m=E+8|0;l=E+4|0;n=E;A=E+76|0;c[B>>2]=f;c[j>>2]=g;a[C>>0]=h;c[r>
x3e;2]=c[(c[j>>2]|0)+28>>2];f=c[B>>2]|0;if(a[C>>0]|0){c[o>>2]=f+300+36;c[x>
;>2]=(c[B>>2]|0)+300+40;c[D>>2]=Wa[c[(c[B>>2]|0)+508>>2]&31](c[B>>2]|
0,1986884728,c[j>>2]|0,z)|0;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}c[s>>2]=e[(c[B>
;>2]|0)+300+34>>1];if((c[s>>2]|0)>>>0>(((c[z>>2]|0)>>>0)/4
|0)>>>0)c[s>>2]=((c[z>>2]|0)>>>0)/4|0;b[(c[B>>2]|0)+300+34>>
;1]=0;c[q>>2]=c[o>>2];c[w>>2]=c[x>>2]}else{c[p>>2]=f+216+36;c[y>>2]=(
c[B>>2]|0)+216+40;c[D>>2]=Wa[c[(c[B>>2]|0)+508>>2]&31](c[B>>2]|0,1752003704
,c[j>>2]|0,z)|0;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}c[s>>2]=e[(c[B>>2]|0)+
216+34>>1];if((c[s>>2]|0)>>>0>(((c[z>>2]|0)>>>0)/4|0)>>
;>0)c[s>>2]=((c[z>>2]|0)>>>0)/4|0;b[(c[B>>2]|0)+216+34>>1]=0;c[q>
;>2]=c[p>>2];c[w>>2]=c[y>>2]}c[t>>2]=(e[(c[B>>2]|0)+260+4>>1]|0
)-(c[s>>2]|0);c[u>>2]=(((c[z>>2]|0)-(c[s>>2]<<2)|0)>>>0)/2|0;if
((c[t>>2]|0)<0)c[t>>2]=0;y=hc(c[r>>2]|0,4,0,c[s>>2]|0,0,D)|0;c[c[q>>2]>
;>2]=y;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}y=hc(c[r>>2]|0,2,0,c[t>>2]|0,0,D)|0
;c[c[w>>2]>>2]=y;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}z=ee(c[j>>2]|0,c[z
x3e;>2]|0)|0;c[D>>2]=z;if(z|0){D=c[D>>2]|0;i=E;return D|0}c[v>>2]=c[(c[j>>2]|0)+32
x3e;>2];c[k>>2]=c[c[q>>2]>>2];c[m>>2]=(c[k>>2]|0)+(c[s>>2]<
;<2);while(1){if((c[k>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;c[v>>
;2]=(c[v>>2]|0)+2;b[c[k>>2]>>1]=(d[(c[v>>2]|0)+-2>>0]&65535)<<8
|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0;c[v>>2]=(c[v>>2]|0)+2;b[(c[k>>
;2]|0)+2>>1]=a[(c[v>>2]|0)+-2>>0]<<16>>16<<8|d[(c[v>>2]|0)+-
2+1>>0]<<0;c[k>>2]=(c[k>>2]|0)+4}c[l>>2]=c[c[w>>2]>>2];c[n
>>2]=(c[l>>2]|0)+(((c[t>>2]|0)<(c[u>>2]|0)?c[t>>2]|0:c[u>>2]|0)
x3c;<1);while(1){if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[v>
x3e;2]=(c[v>>2]|0)+2;b[c[l>>2]>>1]=a[(c[v>>2]|0)+-2>>0]<<16>>
;16<<8|d[(c[v>>2]|0)+-2+1>>0]<<0;c[l>>2]=(c[l>>2]|0)+2}a:do if((c[u
x3e;>2]|0)>0?(c[t>>2]|0)>(c[u>>2]|0):0){b[A>>1]=b[(c[c[w>>2]>>2
]|0)+((c[u>>2]|0)-1<<1)>>1]|0;c[n>>2]=(c[c[w>>2]>>2]|0)+(c[t>
x3e;2]<<1);while(1){if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a
;b[c[l>>2]>>1]=b[A>>1]|0;c[l>>2]=(c[l>>2]|0)+2}}while(0);ge(c[j>>2]|
0);g=c[s>>2]&65535;f=c[B>>2]|0;if(a[C>>0]|0){b[f+300+34>>1]=g;D=c[D>>2]|0
;i=E;return D|0}else{b[f+216+34>>1]=g;D=c[D>>2]|0;i=E;return D|0}return 0}function vl(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;s=i;i=i+64|0;e=s+48|0;k=s+44|0;r=s+40|0;n=s+36|0;j=s+32|0;g=s+28|0;q=s+24
|0;h=s+20|0;f=s+16|0;p=s+12|0;l=s+8|0;o=s+4|0;m=s;c[e>>2]=a;c[k>>2]=d;c[r>>2]=0;c[n>>2]=
c[(c[k>>2]|0)+28>>2];c[(c[e>>2]|0)+612>>2]=0;c[r>>2]=Wa[c[(c[e>>2]|0
)+508>>2]&31](c[e>>2]|0,1161972803,c[k>>2]|0,0)|0;if(c[r>>2]|0)c[r>>2]=Wa
[c[(c[e>>2]|0)+508>>2]&31](c[e>>2]|0,1651273571,c[k>>2]|0,0)|0;if(c[r>>2]|
0){r=c[r>>2]|0;i=s;return r|0}c[q>>2]=Mc(c[k>>2]|0)|0;d=ee(c[k>>2]|0,8)|0;c[r>>
;2]=d;if(d|0){r=c[r>>2]|0;i=s;return r|0}c[j>>2]=je(c[k>>2]|0)|0;c[g>>2]=je(c[k>>
;2]|0)|0;ge(c[k>>2]|0);if((c[j>>2]|0)!=131072|(c[g>>2]|0)>>>0>=65536){c[r>
;>2]=3;r=c[r>>2]|0;i=s;return r|0}j=hc(c[n>>2]|0,48,0,c[g>>2]|0,0,r)|0;c[(c[e>>2]|0
)+616>>2]=j;if(c[r>>2]|0){r=c[r>>2]|0;i=s;return r|0}c[(c[e>>2]|0)+612>>2]=c[g
>>2];c[h>>2]=c[(c[e>>2]|0)+616>>2];c[f>>2]=c[g>>2];j=ee(c[k>>
;2]|0,(c[g>>2]|0)*48|0)|0;c[r>>2]=j;if(j|0){r=c[r>>2]|0;i=s;return r|0}while(1){if((c[f>>
;2]|0)>>>0<=0)break;j=le(c[k>>2]|0,8288,c[h>>2]|0)|0;c[r>>2]=j;if(j|0)break;j=
le(c[k>>2]|0,8308,(c[h>>2]|0)+16|0)|0;c[r>>2]=j;if(j|0)break;j=le(c[k>>2]|0,8308,(c[h>
;>2]|0)+28|0)|0;c[r>>2]=j;if(j|0)break;j=le(c[k>>2]|0,8360,c[h>>2]|0)|0;c[r>>2]=j;if
(j|0)break;c[f>>2]=(c[f>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+48}ge(c[k>>2]|0);c[p>
;>2]=c[(c[e>>2]|0)+616>>2];c[l>>2]=c[g>>2];a:while(1){if((c[l>>2]|0)>
;>>0<=0){e=30;break}c[m>>2]=c[c[p>>2]>>2];j=Kc(c[k>>2]|0,(c[q>>
2]|0)+(c[(c[p>>2]|0)+8>>2]|0)|0)|0;c[r>>2]=j;if(j|0){e=30;break}j=ee(c[k>>2]|0,c[c[p>
;>2]>>2]<<3)|0;c[r>>2]=j;if(j|0){e=30;break}j=hc(c[n>>2]|0,40,0,c[c[p>>2]
x3e;>2]|0,0,r)|0;c[(c[p>>2]|0)+4>>2]=j;if(c[r>>2]|0){e=30;break}c[o>>2]=c[(c[p>
;>2]|0)+4>>2];while(1){e=c[k>>2]|0;if((c[m>>2]|0)>>>0<=0)break;j=ie(e)|0;
b[c[o>>2]>>1]=j;j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+2>>1]=j;j=(c[q>>2]|0
)+(c[(c[p>>2]|0)+8>>2]|0)|0;j=j+(je(c[k>>2]|0)|0)|0;c[(c[o>>2]|0)+36>>2]=j;c[m
>>2]=(c[m>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+40}ge(e);c[m>>2]=c[c[p>>2]
x3e;>2];c[o>>2]=c[(c[p>>2]|0)+4>>2];while(1){if((c[m>>2]|0)>>>0<
;=0)break;j=Kc(c[k>>2]|0,c[(c[o>>2]|0)+36>>2]|0)|0;c[r>>2]=j;if(j|0){e=30;break a}j=ee(c
[k>>2]|0,8)|0;c[r>>2]=j;if(j|0){e=30;break a}j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+4>>
;1]=j;j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+6>>1]=j;j=je(c[k>>2]|0)|0;c[(c[o>>2]|0)+
8>>2]=j;ge(c[k>>2]|0);c[r>>2]=wl(c[o>>2]|0,c[k>>2]|0)|0;if(c[r>>2]|0
){e=30;break a}c[m>>2]=(c[m>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+40}c[l>>2]=(c[l>
;>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+48}if((e|0)==30){r=c[r>>2]|0;i=s;return r|0}return 0}function
wl(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;p=i;i=i+32|0;j=p+24|0;k=p+20|0;l=p+16|0;g=p+12|0;o=p+8|0;n=p+4|0;h=p
;m=p+28|0;c[j>>2]=b;c[k>>2]=f;c[g>>2]=c[(c[k>>2]|0)+28>>2];switch(e[(c[j>
x3e;2]|0)+4>>1]|0|0){case 3:case 1:{a[m>>0]=(e[(c[j>>2]|0)+4>>1]|0|0)==1;if((e[(c[j>
;>2]|0)+2>>1]|0|0)<(e[c[j>>2]>>1]|0|0)){c[l>>2]=3;o=c[l>>2]|0;i=p;return
o|0}c[o>>2]=(e[(c[j>>2]|0)+2>>1]|0)-(e[c[j>>2]>>1]|0)+1;c[(c[j>>2]|
0)+24>>2]=c[o>>2];c[o>>2]=(c[o>>2]|0)+1;c[h>>2]=d[m>>0]|0|0?4:2;f=hc
(c[g>>2]|0,4,0,c[o>>2]|0,0,l)|0;c[(c[j>>2]|0)+28>>2]=f;if(c[l>>2]|0){o=c[l>
;>2]|0;i=p;return o|0}f=ee(c[k>>2]|0,_(c[o>>2]|0,c[h>>2]|0)|0)|0;c[l>>2]=f;if(f|0){
o=c[l>>2]|0;i=p;return o|0}c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0>=(c[o>
x3e;2]|0)>>>0)break;b=c[(c[j>>2]|0)+8>>2]|0;g=c[k>>2]|0;if(d[m>>0]|0|0)g=
je(g)|0;else g=(ie(g)|0)&65535;c[(c[(c[j>>2]|0)+28>>2]|0)+(c[n>>2]<<2)>>2
]=b+g;c[n>>2]=(c[n>>2]|0)+1}ge(c[k>>2]|0);o=c[l>>2]|0;i=p;return o|0}case 2:{c[l>
x3e;2]=xl(c[j>>2]|0,c[k>>2]|0)|0;o=c[l>>2]|0;i=p;return o|0}case 4:{c[l>>2]=yl(c[j>
x3e;2]|0,c[k>>2]|0,1)|0;o=c[l>>2]|0;i=p;return o|0}case 5:{c[l>>2]=xl(c[j>>2]|0,c[k>
;>2]|0)|0;if(c[l>>2]|0){o=c[l>>2]|0;i=p;return o|0}c[l>>2]=yl(c[j>>2]|0,c[k>
x3e;2]|0,0)|0;o=c[l>>2]|0;i=p;return o|0}default:{c[l>>2]=3;o=c[l>>2]|0;i=p;return o|0}}return 0}function
xl(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;b
=Oc(c[f>>2]|0,g)|0;c[(c[e>>2]|0)+12>>2]=b;if(c[g>>2]|0){c[d>>2]=c[g>>
;2];b=c[d>>2]|0;i=h;return b|0}else{b=le(c[f>>2]|0,8200,(c[e>>2]|0)+16|0)|0;c[g>>2]=b;c[
d>>2]=(b|0)!=0&1;b=c[d>>2]|0;i=h;return b|0}return 0}function yl(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;p=i;i=i+32|0;j=p+24|0;k=p+20|0;l=p+28|0;n=p+16|0;m=p+12|0;o=p+8|0;h=p+4|0;g=p;c[j>>2]=d;c[k
>>2]=e;a[l>>0]=f;c[g>>2]=c[(c[k>>2]|0)+28>>2];c[m>>2]=Oc(c[k>
x3e;2]|0,n)|0;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}c[(c[j>>2]|0)+24>>2]=c[m>>
;2];do if(a[l>>0]|0){e=hc(c[g>>2]|0,4,0,c[m>>2]|0,0,n)|0;c[(c[j>>2]|0)+28>>2]=
e;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}else{c[h>>2]=c[m>>2]<<2;break}}else
c[h>>2]=c[m>>2]<<1;while(0);e=hc(c[g>>2]|0,2,0,c[m>>2]|0,0,n)|0;c[(c[j>
x3e;2]|0)+32>>2]=e;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}e=ee(c[k>>2]|0,c[h>>
;2]|0)|0;c[n>>2]=e;if(e|0){o=c[n>>2]|0;i=p;return o|0}c[o>>2]=0;while(1){f=c[k>>2]|0;if((
c[o>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;e=ie(f)|0;b[(c[(c[j>>2]|0
)+32>>2]|0)+(c[o>>2]<<1)>>1]=e;if(a[l>>0]|0){e=c[(c[j>>2]|0)+8>
x3e;2]|0;e=e+((ie(c[k>>2]|0)|0)&65535)|0;c[(c[(c[j>>2]|0)+28>>2]|0)+(c[o>>2]<
x3c;2)>>2]=e}c[o>>2]=(c[o>>2]|0)+1}ge(f);o=c[n>>2]|0;i=p;return o|0}function zl(a){a=a|0
;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;b=j+20|0;d=j+16|0;g=j+12|0;h=j+8|0;e=j+4|0;f=j;c[b>>2]=a;c[d>>
2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[b>>2]|0)+616>>2];c[h>>2]=(c[g
x3e;>2]|0)+((c[(c[b>>2]|0)+612>>2]|0)*48|0);if(!(c[g>>2]|0)){h=c[b>>2]|0;h=h+612|0;
c[h>>2]=0;i=j;return}while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>>
;0)break;c[e>>2]=c[(c[g>>2]|0)+4>>2];c[f>>2]=(c[e>>2]|0)+((c[c[g>>2]
x3e;>2]|0)*40|0);a:do if(c[e>>2]|0)while(1){if((c[e>>2]|0)>>>0>=(c[f>>2]|
0)>>>0)break a;Fb(c[d>>2]|0,c[(c[e>>2]|0)+28>>2]|0);c[(c[e>>2]|0)+28>
;>2]=0;Fb(c[d>>2]|0,c[(c[e>>2]|0)+32>>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[e>
;>2]=(c[e>>2]|0)+40}while(0);Fb(c[d>>2]|0,c[(c[g>>2]|0)+4>>2]|0);c[(c[g>>
2]|0)+4>>2]=0;c[c[g>>2]>>2]=0;c[g>>2]=(c[g>>2]|0)+48}Fb(c[d>>2]|0,c[(
c[b>>2]|0)+616>>2]|0);c[(c[b>>2]|0)+616>>2]=0;h=c[b>>2]|0;h=h+612|0;c[h>
x3e;2]=0;i=j;return}function Al(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;n=i;i=i+32|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+
4|0;m=n;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;if((c[k>>2]|0)>>>0>=(c[(c[j>
;>2]|0)+612>>2]|0)>>>0){c[h>>2]=6;f=c[h>>2]|0;i=n;return f|0}else{c[m>>
;2]=(c[(c[j>>2]|0)+616>>2]|0)+((c[k>>2]|0)*48|0);b[c[l>>2]>>1]=d[(c[m>>
;2]|0)+44>>0]|0;b[(c[l>>2]|0)+2>>1]=d[(c[m>>2]|0)+45>>0]|0;c[(c[l>>2
]|0)+12>>2]=a[(c[m>>2]|0)+16>>0]<<6;c[(c[l>>2]|0)+16>>2]=a[(c[m>
;>2]|0)+16+1>>0]<<6;c[(c[l>>2]|0)+24>>2]=(a[(c[m>>2]|0)+16+6>>0
]|0)+(d[(c[m>>2]|0)+16+2>>0]|0)+(a[(c[m>>2]|0)+16+7>>0]|0)<<6;c[(c[l>>
;2]|0)+20>>2]=(c[(c[l>>2]|0)+12>>2]|0)-(c[(c[l>>2]|0)+16>>2]|0);c[h>>
;2]=0;f=c[h>>2]|0;i=n;return f|0}return 0}function Bl(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;s=i;i=i+48|0;l=s+32|0;t=s+28|0;w=s+38|0;m=s+24|0;n=s+20|0;o=s+16|0;v=s+12|0;u=s+8|0;p=s+4|0;r=s;q=s
+36|0;c[t>>2]=f;a[w>>0]=g;c[m>>2]=h;c[n>>2]=j;c[o>>2]=k;c[v>>2]=(c[t
>>2]|0)+300;c[u>>2]=(c[t>>2]|0)+216;c[p>>2]=d[w>>0]|0|0?c[v>>2]|0:c[
u>>2]|0;b[q>>1]=b[(c[p>>2]|0)+34>>1]|0;if((e[q>>1]|0|0?c[(c[p>>2]|0)+
36>>2]|0:0)?(c[m>>2]|0)>>>0<(e[(c[t>>2]|0)+260+4>>1]|0)>>
x3e;0:0){if((c[m>>2]|0)>>>0<(e[q>>1]|0)>>>0){c[r>>2]=(c[(c[p>
;>2]|0)+36>>2]|0)+(c[m>>2]<<2);b[c[n>>2]>>1]=b[(c[r>>2]|0)+2>
;>1]|0;b[c[o>>2]>>1]=b[c[r>>2]>>1]|0}else{b[c[n>>2]>>1]=b[(c[(c
[p>>2]|0)+40>>2]|0)+((c[m>>2]|0)-(e[q>>1]|0)<<1)>>1]|0;b[c[o>
x3e;2]>>1]=b[(c[(c[p>>2]|0)+36>>2]|0)+((e[q>>1]|0)-1<<2)>>1]|0}c[l
x3e;>2]=0;w=c[l>>2]|0;i=s;return w|0}b[c[o>>2]>>1]=0;b[c[n>>2]>>1]=0;c[l
x3e;>2]=0;w=c[l>>2]|0;i=s;return w|0}function Cl(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;Dl(c[f>>2]|0,c[e>>2]|0);i=d;return 0}function Dl(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)+112>>2]=c[f>>
2];c[(c[e>>2]|0)+104>>2]=c[(c[f>>2]|0)+4+24>>2];i=d;return}function El(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[f>>2]=c[f>>2];c[e>
x3e;2]=c[e>>2];i=d;return 0}function Fl(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+16|0;f=k+12|0;h=
k+8|0;j=k+4|0;g=k;c[d>>2]=a;c[f>>2]=b;c[h>>2]=0;c[j>>2]=c[(c[f>>2]|0)+92>
x3e;2];c[(c[d>>2]|0)+36>>2]=e[(c[f>>2]|0)+68>>1];c[g>>2]=0;while(1){if(!(c[3616
+(c[g>>2]<<2)>>2]|0))break;c[h>>2]=Id(c[f>>2]|0,c[3616+(c[g>>2]<
;<2)>>2]|0)|0;if(!(c[h>>2]|0))break;c[g>>2]=(c[g>>2]|0)+1}if(c[h>>2]|0){a
=c[f>>2]|0;j=c[j>>2]|0;Jd(a,j)|0;i=k;return 0}Gl(c[d>>2]|0,c[f>>2]|0,111);Pl(c[d>
x3e;2]|0,c[f>>2]|0);Rl(c[d>>2]|0,c[f>>2]|0);a=c[f>>2]|0;j=c[j>>2]|0;Jd(a,j)|0;
i=k;return 0}function Gl(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,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=
0;y=i;i=i+1024|0;t=y+1016|0;g=y+1012|0;z=y+1008|0;w=y+884|0;m=y+880|0;n=y+876|0;v=y+872|0;l=y+40|0;r=y+36|0;j=y+32|0;h=y+28|0;s=
y+24|0;o=y+20|0;p=y+16|0;q=y+12|0;k=y+8|0;u=y+4|0;x=y;c[t>>2]=d;c[g>>2]=e;c[z>>2]=f;Hl(w,c[(c[g>
;>2]|0)+100>>2]|0);c[(c[t>>2]|0)+40+8>>2]=0;c[(c[t>>2]|0)+40+396+8>>2]=0;
c[r>>2]=l+4;c[n>>2]=Dc(c[g>>2]|0,c[z>>2]|0)|0;a:do if(((c[n>>2]|0?(c[m>
x3e;2]=Cb(c[g>>2]|0,c[n>>2]|0,1)|0,(c[m>>2]|0)==0):0)?(b[(c[(c[g>>2]|0)+84>>2]|
0)+108+2>>1]|0)>0:0)?(Ns(l|0,0,832)|0,c[l+36>>2]=c[(c[t>>2]|0)+36>>2],c[(c[r>
x3e;2]|0)+8>>2]=65536,c[(c[r>>2]|0)+4>>2]=65536,c[(c[r>>2]|0)+16>>2]=0,c[(c[r
x3e;>2]|0)+12>>2]=0,c[c[r>>2]>>2]=c[g>>2],c[(c[r>>2]|0)+20>>2]=
0,c[(c[r>>2]|0)+24>>2]=0,Dl(w,l),c[m>>2]=Il(w,(c[(c[g>>2]|0)+84>>2]|0)+108|0)|
0,(c[m>>2]|0)==0):0){c[v>>2]=0;while(1){if((c[v>>2]|0)>=2)break a;c[j>>2]=(c[t>
;>2]|0)+40+((c[v>>2]|0)*396|0);c[h>>2]=w+48+((c[v>>2]|0)*28|0);c[q>>2]=0;c[m>
x3e;2]=Kl(w,c[v>>2]|0)|0;if(c[m>>2]|0)break a;Ml(w,c[v>>2]|0);c[s>>2]=c[(c[h>>
2]|0)+8>>2];c[o>>2]=(c[s>>2]|0)+((c[c[h>>2]>>2]|0)*52|0);while(1){if((c[s>
;>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[p>>2]=c[(c[s>>2]|0)+20
>>2];if((c[p>>2]|0?(c[(c[p>>2]|0)+20>>2]|0)==(c[s>>2]|0):0)?(c[p>>2]|
0)>>>0>(c[s>>2]|0)>>>0:0){c[k>>2]=(b[(c[s>>2]|0)+2>>1
]|0)-(b[(c[p>>2]|0)+2>>1]|0);if((c[k>>2]|0)<0)c[k>>2]=0-(c[k>>2]|0);if((c
[q>>2]|0)>>>0<16){r=c[k>>2]|0;z=c[q>>2]|0;c[q>>2]=z+1;c[(c[j>
x3e;2]|0)+12+(z*12|0)>>2]=r}}c[s>>2]=(c[s>>2]|0)+52}Nl(c[q>>2]|0,(c[j>>2]|0)+12
|0);c[(c[j>>2]|0)+8>>2]=c[q>>2];c[v>>2]=(c[v>>2]|0)+1}}while(0);c[v>>
;2]=0;while(1){if((c[v>>2]|0)>=2)break;c[u>>2]=(c[t>>2]|0)+40+((c[v>>2]|0)*396|0);if
((c[(c[u>>2]|0)+8>>2]|0)>>>0>0)g=c[(c[u>>2]|0)+12>>2]|0;else g=((c[(
c[t>>2]|0)+36>>2]|0)*50|0)/2048|0;c[x>>2]=g;c[(c[u>>2]|0)+204>>2]=(c[x>
x3e;2]|0)/5|0;c[(c[u>>2]|0)+208>>2]=c[x>>2];a[(c[u>>2]|0)+212>>0]=0;c[v>
x3e;2]=(c[v>>2]|0)+1}Ol(w);i=y;return}function Hl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>
x3e;2]=a;c[e>>2]=b;a=c[d>>2]|0;b=a+124|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[c[d>
x3e;2]>>2]=c[e>>2];i=f;return}function Il(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,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;M=i;i=i+128|0;g=M+112|0;h=M+108|0;A=M+104|0;z
=M+100|0;n=M+96|0;m=M+92|0;s=M+88|0;u=M+84|0;r=M+80|0;t=M+76|0;l=M+72|0;I=M+68|0;J=M+64|0;q=M+60|0;p=M+56|0;k=M+52|0;o=M+48|0;j=
M+44|0;v=M+40|0;w=M+36|0;x=M+32|0;y=M+116|0;B=M+28|0;K=M+24|0;D=M+20|0;E=M+16|0;C=M+12|0;F=M+8|0;G=M+4|0;H=M;c[g>>2]=d
;c[h>>2]=f;c[A>>2]=0;c[s>>2]=c[(c[g>>2]|0)+4>>2];c[u>>2]=c[(c[g>
;>2]|0)+12>>2];c[r>>2]=c[(c[g>>2]|0)+8>>2];c[t>>2]=c[(c[g>>2]|0
)+16>>2];c[l>>2]=c[c[g>>2]>>2];c[(c[g>>2]|0)+28>>2]=0;c[(c[g>
x3e;2]|0)+40>>2]=0;c[(c[g>>2]|0)+48>>2]=0;c[(c[g>>2]|0)+48+12>>2]=0;c[(c[g>
;>2]|0)+48+28>>2]=0;c[(c[g>>2]|0)+48+28+12>>2]=0;c[m>>2]=b[c[h>>2]>
x3e;1];c[n>>2]=c[(c[g>>2]|0)+36>>2];do if((c[m>>2]|0)>>>0>(c[n>
x3e;2]|0)>>>0){c[m>>2]=(c[m>>2]|0)+3&-4;f=hc(c[l>>2]|0,4,c[n>>2]|0,c
[m>>2]|0,c[(c[g>>2]|0)+44>>2]|0,A)|0;c[(c[g>>2]|0)+44>>2]=f;if(c[A>>
2]|0){L=c[A>>2]|0;i=M;return L|0}else{c[(c[g>>2]|0)+36>>2]=c[m>>2];break}}while(0);c[m
x3e;>2]=(b[(c[h>>2]|0)+2>>1]|0)+2;c[n>>2]=c[(c[g>>2]|0)+24>>2];do if((c[m
>>2]|0)>>>0>(c[n>>2]|0)>>>0){c[m>>2]=(c[m>>2]|0)+2+7
x26;-8;f=hc(c[l>>2]|0,40,c[n>>2]|0,c[m>>2]|0,c[(c[g>>2]|0)+32>>2]|0,A)|0;c[(c[
g>>2]|0)+32>>2]=f;if(c[A>>2]|0){L=c[A>>2]|0;i=M;return L|0}else{c[(c[g>>2]|0)+
24>>2]=c[m>>2];break}}while(0);c[(c[g>>2]|0)+28>>2]=b[(c[h>>2]|0)+2>>
;1];c[(c[g>>2]|0)+40>>2]=b[c[h>>2]>>1];c[(c[g>>2]|0)+48+24>>2]=2;c[(
c[g>>2]|0)+48+28+24>>2]=-1;if(($d(c[h>>2]|0)|0)==1){c[(c[g>>2]|0)+48+24>>2]=-2
;c[(c[g>>2]|0)+48+28+24>>2]=1}c[(c[g>>2]|0)+4>>2]=c[s>>2];c[(c[g>>2]|
0)+12>>2]=c[u>>2];c[(c[g>>2]|0)+8>>2]=c[r>>2];c[(c[g>>2]|0)+16>
x3e;2]=c[t>>2];c[(c[g>>2]|0)+116>>2]=0;c[(c[g>>2]|0)+120>>2]=0;c[z>>
2]=c[(c[g>>2]|0)+32>>2];if(!(c[(c[g>>2]|0)+28>>2]|0)){L=c[A>>2]|0;i=M;return L
|0}c[J>>2]=(c[z>>2]|0)+((c[(c[g>>2]|0)+28>>2]|0)*40|0);c[q>>2]=c[(c[h>>
;2]|0)+4>>2];c[p>>2]=c[(c[h>>2]|0)+8>>2];c[k>>2]=(c[z>>2]|0)+((b[c[(
c[h>>2]|0)+12>>2]>>1]|0)*40|0);c[o>>2]=c[k>>2];c[j>>2]=0;c[I>
x3e;2]=c[z>>2];while(1){if((c[I>>2]|0)>>>0>=(c[J>>2]|0)>>>0)break
;b[(c[I>>2]|0)+12>>1]=c[c[q>>2]>>2];b[(c[I>>2]|0)+14>>1]=c[(c[q>
;>2]|0)+4>>2];f=Mb(c[c[q>>2]>>2]|0,c[s>>2]|0)|0;f=f+(c[r>>2]|0)|0;c[(c[I
x3e;>2]|0)+16>>2]=f;c[(c[I>>2]|0)+4>>2]=f;f=Mb(c[(c[q>>2]|0)+4>>2]|0,c[u
x3e;>2]|0)|0;f=f+(c[t>>2]|0)|0;c[(c[I>>2]|0)+20>>2]=f;c[(c[I>>2]|0)+8>>2]=
f;switch(a[c[p>>2]>>0]&3|0){case 0:{b[c[I>>2]>>1]=1;break}case 2:{b[c[I>>
2]>>1]=2;break}default:b[c[I>>2]>>1]=0}c[(c[I>>2]|0)+36>>2]=c[o>>2];
c[(c[o>>2]|0)+32>>2]=c[I>>2];c[o>>2]=c[I>>2];if((c[I>>2]|0)==(c[k>
;>2]|0)?(f=(c[j>>2]|0)+1|0,c[j>>2]=f,(f|0)<(b[c[h>>2]>>1]|0)):0){c[k>>
;2]=(c[z>>2]|0)+((b[(c[(c[h>>2]|0)+12>>2]|0)+(c[j>>2]<<1)>>1]|0)*40|
0);c[o>>2]=c[k>>2]}c[I>>2]=(c[I>>2]|0)+40;c[q>>2]=(c[q>>2]|0)+8;c[p
x3e;>2]=(c[p>>2]|0)+1}c[v>>2]=c[(c[g>>2]|0)+44>>2];c[w>>2]=(c[v>>
;2]|0)+(c[(c[g>>2]|0)+40>>2]<<2);c[x>>2]=c[(c[h>>2]|0)+12>>2];b[y>
;>1]=0;while(1){g=c[z>>2]|0;if((c[v>>2]|0)>>>0>=(c[w>>2]|0)>>
x3e;0)break;c[c[v>>2]>>2]=g+((b[y>>1]|0)*40|0);b[y>>1]=(b[c[x>>2]>>1
]|0)+1;c[v>>2]=(c[v>>2]|0)+4;c[x>>2]=(c[x>>2]|0)+2}c[B>>2]=g;c[K>>2]=
0;c[D>>2]=0;c[E>>2]=0;c[C>>2]=4;c[I>>2]=c[z>>2];while(1){if((c[I>>2]|
0)>>>0>=(c[J>>2]|0)>>>0)break;if((c[I>>2]|0)==(c[B>>2]|0)){c[K
x3e;>2]=c[(c[B>>2]|0)+36>>2];c[D>>2]=(b[(c[B>>2]|0)+12>>1]|0)-(b[(c[K>
;>2]|0)+12>>1]|0);c[E>>2]=(b[(c[B>>2]|0)+14>>1]|0)-(b[(c[K>>2]|0)+14>
;>1]|0);c[C>>2]=Jl(c[D>>2]|0,c[E>>2]|0)|0;c[B>>2]=(c[K>>2]|0)+40}a[(c[I
x3e;>2]|0)+2>>0]=c[C>>2];c[F>>2]=c[(c[I>>2]|0)+32>>2];c[G>>2]=(
b[(c[F>>2]|0)+12>>1]|0)-(b[(c[I>>2]|0)+12>>1]|0);c[H>>2]=(b[(c[F>>2]|
0)+14>>1]|0)-(b[(c[I>>2]|0)+14>>1]|0);c[C>>2]=Jl(c[G>>2]|0,c[H>>2]|0
)|0;a[(c[I>>2]|0)+3>>0]=c[C>>2];do if(!(e[c[I>>2]>>1]&3|0)){g=c[I>
x3e;2]|0;if((a[(c[I>>2]|0)+3>>0]|0)!=(a[(c[I>>2]|0)+2>>0]|0))if((a[g+2>>0]|0)==(
0-(a[(c[I>>2]|0)+3>>0]|0)|0)){L=28;break}else break;if(!((a[g+3>>0]|0)==4?!($b(c[D>>2]|0
,c[E>>2]|0,c[G>>2]|0,c[H>>2]|0)|0):0))L=28}else L=28;while(0);if((L|0)==28){L=0;z=c[I>>2
]|0;b[z>>1]=e[z>>1]|256}c[D>>2]=c[G>>2];c[E>>2]=c[H>>2];c[K>>
;2]=c[I>>2];c[I>>2]=(c[I>>2]|0)+40}L=c[A>>2]|0;i=M;return L|0}function Jl(a,b){a=a|0;b=b
|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;g=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;a=(c[e
>>2]|0)>=(0-(c[d>>2]|0)|0);do if((c[e>>2]|0)>=(c[d>>2]|0))if(a){c[f>>
;2]=2;c[g>>2]=c[e>>2];c[h>>2]=c[d>>2];break}else{c[f>>2]=-1;c[g>>2]=
0-(c[d>>2]|0);c[h>>2]=c[e>>2];break}else if(a){c[f>>2]=1;c[g>>2]=c[d>>
;2];c[h>>2]=c[e>>2];break}else{c[f>>2]=-2;c[g>>2]=c[e>>2];c[h>>2]=c[
d>>2];break}while(0);c[h>>2]=(c[h>>2]|0)*14;d=c[g>>2]|0;e=c[h>>2]|0;if((((c[g
x3e;>2]|0)<0?0-d|0:d)|0)>(((c[h>>2]|0)<0?0-e|0:e)|0)){h=c[f>>2]|0;i=j;return h|0}c[f>
;>2]=4;h=c[f>>2]|0;i=j;return h|0}function Kl(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;P=i;i=i+176|0;j=P+164|0;k=P+160|0;p=P+
156|0;v=P+152|0;G=P+148|0;N=P+144|0;A=P+92|0;q=P+88|0;r=P+84|0;t=P+80|0;B=P+76|0;n=P+72|0;l=P+68|0;o=P+64|0;m=P+60|0;z=P+56|0;s=
P+52|0;x=P+48|0;w=P+44|0;u=P+40|0;y=P+168|0;D=P+36|0;E=P+32|0;C=P+28|0;O=P+24|0;H=P+20|0;J=P+16|0;I=P+12|0;K=P+8|0;L=P+4|0;M=P;c
[j>>2]=f;c[k>>2]=g;c[p>>2]=(c[j>>2]|0)+48+((c[k>>2]|0)*28|0);c[v>>2]=
c[c[j>>2]>>2];c[G>>2]=0;c[N>>2]=0;c[q>>2]=c[(c[j>>2]|0)+44>>
;2];c[r>>2]=(c[q>>2]|0)+(c[(c[j>>2]|0)+40>>2]<<2);f=A;h=f+52|0;do{c[f>>
;2]=0;f=f+4|0}while((f|0)<(h|0));c[A+32>>2]=32e3;a[A>>0]=0;g=c[(c[p>>2]|0)+24>>2]|0
;c[t>>2]=(c[(c[p>>2]|0)+24>>2]|0)<0?0-g|0:g;c[B>>2]=c[t>>2];c[c[p>
x3e;2]>>2]=0;g=c[(c[j>>2]|0)+32>>2]|0;a:do if(!(c[k>>2]|0)){c[n>>2]=g;c[l>
;>2]=(c[n>>2]|0)+((c[(c[j>>2]|0)+28>>2]|0)*40|0);while(1){if((c[n>>2]|0)>>
;>0>=(c[l>>2]|0)>>>0)break a;c[(c[n>>2]|0)+24>>2]=b[(c[n>>2]|0)+
12>>1];c[(c[n>>2]|0)+28>>2]=b[(c[n>>2]|0)+14>>1];c[n>>2]=(c[n>
x3e;2]|0)+40}}else{c[o>>2]=g;c[m>>2]=(c[o>>2]|0)+((c[(c[j>>2]|0)+28>>2]|0)*40|
0);while(1){if((c[o>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break a;c[(c[o>>
;2]|0)+24>>2]=b[(c[o>>2]|0)+14>>1];c[(c[o>>2]|0)+28>>2]=b[(c[o>>2]|0
)+12>>1];c[o>>2]=(c[o>>2]|0)+40}}while(0);b:while(1){if((c[q>>2]|0)>>>0
x3e;=(c[r>>2]|0)>>>0)break;c[z>>2]=c[c[q>>2]>>2];c[s>>2]=c[(c[z
>>2]|0)+36>>2];c[x>>2]=0;c[w>>2]=32e3;c[u>>2]=-32e3;c:do if((c[z>>2]|
0)!=(c[s>>2]|0)){o=a[(c[s>>2]|0)+3>>0]|0;d:do if((((a[(c[s>>2]|0)+3>>0]|0)<
;0?0-o|0:o)|0)==(c[t>>2]|0)?(o=a[(c[z>>2]|0)+3>>0]|0,(((a[(c[z>>2]|0)+3>>0]|0)
x3c;0?0-o|0:o)|0)==(c[t>>2]|0)):0){c[s>>2]=c[z>>2];while(1){c[z>>2]=c[(c[z>>2]|
0)+36>>2];o=a[(c[z>>2]|0)+3>>0]|0;g=c[z>>2]|0;if((((a[(c[z>>2]|0)+3>>
;0]|0)<0?0-o|0:o)|0)!=(c[t>>2]|0))break;if((g|0)==(c[s>>2]|0))break d}c[z>>2]=c[g+32>>
;2]}while(0);c[s>>2]=c[z>>2];a[y>>0]=0;while(1){do if(c[x>>2]|0){c[D>>2]=c[(c[
z>>2]|0)+24>>2];if((c[D>>2]|0)<(c[w>>2]|0))c[w>>2]=c[D>>2];if((
c[D>>2]|0)>(c[u>>2]|0))c[u>>2]=c[D>>2];if((a[(c[z>>2]|0)+3>>0]|
0)==(c[B>>2]|0)?(c[z>>2]|0)!=(c[s>>2]|0):0)break;c[(c[N>>2]|0)+44>>2]=c[z>
;>2];b[(c[N>>2]|0)+2>>1]=(c[w>>2]|0)+(c[u>>2]|0)>>1;if((e[c[(c[N>>
;2]|0)+40>>2]>>1]|e[c[z>>2]>>1])&3|0){o=c[N>>2]|0;a[o>>0]=d[o
x3e;>0]|1}o=c[(c[z>>2]|0)+28>>2]|0;c[u>>2]=o;c[w>>2]=o;c[E>>2]=c[(c[(c[N
x3e;>2]|0)+40>>2]|0)+28>>2];if((c[E>>2]|0)<(c[w>>2]|0))c[w>>2]=c[E
x3e;>2];if((c[E>>2]|0)>(c[u>>2]|0))c[u>>2]=c[E>>2];b[(c[N>>2]|0)+4
x3e;>1]=c[w>>2];b[(c[N>>2]|0)+6>>1]=c[u>>2];b[(c[N>>2]|0)+8>>1]=(
b[(c[N>>2]|0)+6>>1]|0)-(b[(c[N>>2]|0)+4>>1]|0);c[x>>2]=0;c[N>>2]=0}while
(0);if((c[z>>2]|0)==(c[s>>2]|0)){if(a[y>>0]|0)break c;a[y>>0]=1}if((c[x>>2]|0)==
0?(o=a[(c[z>>2]|0)+3>>0]|0,(((a[(c[z>>2]|0)+3>>0]|0)<0?0-o|0:o)|0)==(c[t>>
;2]|0)):0){c[B>>2]=a[(c[z>>2]|0)+3>>0];c[G>>2]=Ll(c[p>>2]|0,c[v>>2]|
0,N)|0;if(c[G>>2]|0){F=53;break b}f=c[N>>2]|0;g=A;h=f+52|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=
g+4|0}while((f|0)<(h|0));a[(c[N>>2]|0)+1>>0]=c[B>>2];o=c[(c[z>>2]|0)+24>>
2]|0;c[u>>2]=o;c[w>>2]=o;c[(c[N>>2]|0)+40>>2]=c[z>>2];c[(c[N>>2]|0)+
44>>2]=c[z>>2];c[(c[N>>2]|0)+48>>2]=c[q>>2];c[x>>2]=1}c[z>>
;2]=c[(c[z>>2]|0)+32>>2]}}while(0);c[q>>2]=(c[q>>2]|0)+4}if((F|0)==53){O=c[G>>
2]|0;i=P;return O|0}c[C>>2]=c[(c[p>>2]|0)+8>>2];c[O>>2]=(c[C>>2]|0)+((c[c[p>
;>2]>>2]|0)*52|0);c[N>>2]=c[C>>2];while(1){if((c[N>>2]|0)>>>0>=(
c[O>>2]|0)>>>0)break;c[H>>2]=c[(c[N>>2]|0)+40>>2];c[J>>2]=c[(c[
N>>2]|0)+44>>2];c[I>>2]=c[(c[H>>2]|0)+28>>2];c[K>>2]=c[(c[J>>
;2]|0)+28>>2];do if((c[H>>2]|0)!=(c[J>>2]|0)){g=c[(c[H>>2]|0)+36>>2]|0;if((c[I
>>2]|0)<(c[K>>2]|0)){c[L>>2]=g;if((c[(c[L>>2]|0)+28>>2]|0)<(c[I>
;>2]|0))b[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8>>1]|0)+((c[I>>2]|0)-(c[(c[L
x3e;>2]|0)+28>>2]|0)>>1);c[L>>2]=c[(c[J>>2]|0)+32>>2];if((c[(c[L>>
;2]|0)+28>>2]|0)<=(c[K>>2]|0))break;b[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8
x3e;>1]|0)+((c[(c[L>>2]|0)+28>>2]|0)-(c[K>>2]|0)>>1);break}else{c[M>>2]=g
;if((c[(c[M>>2]|0)+28>>2]|0)>(c[I>>2]|0))b[(c[N>>2]|0)+8>>1]=(b[(c[N>
;>2]|0)+8>>1]|0)+((c[(c[M>>2]|0)+28>>2]|0)-(c[I>>2]|0)>>1);c[M>>
;2]=c[(c[J>>2]|0)+32>>2];if((c[(c[M>>2]|0)+28>>2]|0)>=(c[K>>2]|0))break;b
[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8>>1]|0)+((c[K>>2]|0)-(c[(c[M>>2]|
0)+28>>2]|0)>>1);break}}while(0);c[N>>2]=(c[N>>2]|0)+52}O=c[G>>2]|0;i=P;return
O|0}function Ll(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;n=i;i=i+32|0;e=n+28|0;f=n+24|0;g=n+20|0;j=n+16
|0;m=n+12|0;l=n+8|0;k=n+4|0;h=n;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=0;c[m>>2
]=0;do if((c[c[e>>2]>>2]|0)>=(c[(c[e>>2]|0)+4>>2]|0)){c[l>>2]=c[(c[e>
;>2]|0)+4>>2];c[k>>2]=c[l>>2];c[h>>2]=41297762;if((c[l>>2]|0)>=(c[h
x3e;>2]|0)){c[j>>2]=64;l=c[m>>2]|0;m=c[g>>2]|0;c[m>>2]=l;m=c[j>>2]|0;i=n;
return m|0}c[k>>2]=(c[k>>2]|0)+((c[k>>2]>>2)+4);if(!((c[k>>2]|0)>=(c[l>
;>2]|0)?(c[k>>2]|0)<=(c[h>>2]|0):0))c[k>>2]=c[h>>2];l=hc(c[f>>2]|0,52
,c[l>>2]|0,c[k>>2]|0,c[(c[e>>2]|0)+8>>2]|0,j)|0;c[(c[e>>2]|0)+8>>2]=
l;if(c[j>>2]|0){l=c[m>>2]|0;m=c[g>>2]|0;c[m>>2]=l;m=c[j>>2]|0;i=n;return m|0}else
{c[(c[e>>2]|0)+4>>2]=c[k>>2];break}}while(0);k=c[(c[e>>2]|0)+8>>2]|0;b=c[e>
;>2]|0;l=c[b>>2]|0;c[b>>2]=l+1;c[m>>2]=k+(l*52|0);l=c[m>>2]|0;m=c[g>>2]|0
;c[m>>2]=l;m=c[j>>2]|0;i=n;return m|0}function Ml(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;u=i;i=i+64|0;v=u+60|0;w=u+56|0;f=u+52|0;t=u+48|0;s=u+44|0;k=u+40|0;j=u+36|0;q=u+32|0;r=u+28|0;n=u
+24|0;o=u+20|0;g=u+16|0;m=u+12|0;l=u+8|0;h=u+4|0;p=u;c[v>>2]=d;c[w>>2]=e;c[f>>2]=(c[v>>2
]|0)+48+((c[w>>2]|0)*28|0);c[t>>2]=c[(c[f>>2]|0)+8>>2];c[s>>2]=(c[t>>
;2]|0)+((c[c[f>>2]>>2]|0)*52|0);d=(c[(c[(c[v>>2]|0)+112>>2]|0)+36>>2]<<
;3|0)/2048|0;c[k>>2]=d;c[k>>2]=(c[k>>2]|0)==0?1:d;c[j>>2]=((c[(c[(c[v>>2]|0)+112
>>2]|0)+36>>2]|0)*6e3|0)/2048|0;c[q>>2]=c[t>>2];while(1){if((c[q>>2]|0)>
x3e;>0>=(c[s>>2]|0)>>>0)break;a:do if((a[(c[q>>2]|0)+1>>0]|0)==(c[(c[f>
;>2]|0)+24>>2]|0)?(c[(c[q>>2]|0)+40>>2]|0)!=(c[(c[q>>2]|0)+44>>2]|0):0){c
[r>>2]=c[t>>2];while(1){if((c[r>>2]|0)>>>0>=(c[s>>2]|0)>>
x3e;0)break a;if(((a[(c[q>>2]|0)+1>>0]|0)+(a[(c[r>>2]|0)+1>>0]|0)|0)==0?(b[(c[r>>
;2]|0)+2>>1]|0)>(b[(c[q>>2]|0)+2>>1]|0):0){c[n>>2]=b[(c[q>>2]|0)+2>
x3e;1];c[o>>2]=b[(c[r>>2]|0)+2>>1];c[g>>2]=(c[o>>2]|0)-(c[n>>2]|0);if
((c[g>>2]|0)<0)c[g>>2]=0-(c[g>>2]|0);c[m>>2]=b[(c[q>>2]|0)+4>>1
];c[l>>2]=b[(c[q>>2]|0)+6>>1];if((c[m>>2]|0)<(b[(c[r>>2]|0)+4>>
1]|0))c[m>>2]=b[(c[r>>2]|0)+4>>1];if((c[l>>2]|0)>(b[(c[r>>2]|0)+6>
x3e;1]|0))c[l>>2]=b[(c[r>>2]|0)+6>>1];c[h>>2]=(c[l>>2]|0)-(c[m>>2]|0
);if((c[h>>2]|0)>=(c[k>>2]|0)){c[p>>2]=(c[g>>2]|0)+((c[j>>2]|0)/(c[h>
;>2]|0)|0);if((c[p>>2]|0)<(c[(c[q>>2]|0)+32>>2]|0)){c[(c[q>>2]|0)+32>>
;2]=c[p>>2];c[(c[q>>2]|0)+20>>2]=c[r>>2]}if((c[p>>2]|0)<(c[(c[r>>
;2]|0)+32>>2]|0)){c[(c[r>>2]|0)+32>>2]=c[p>>2];c[(c[r>>2]|0)+20>>2]=
c[q>>2]}}}c[r>>2]=(c[r>>2]|0)+52}}while(0);c[q>>2]=(c[q>>2]|0)+52}c[q>>
;2]=c[t>>2];while(1){if((c[q>>2]|0)>>>0>=(c[s>>2]|0)>>>0)break;
c[r>>2]=c[(c[q>>2]|0)+20>>2];if(c[r>>2]|0?(c[(c[r>>2]|0)+20>>2]|0)!=(
c[q>>2]|0):0){c[(c[q>>2]|0)+20>>2]=0;c[(c[q>>2]|0)+24>>2]=c[(c[r>>2]|
0)+20>>2]}c[q>>2]=(c[q>>2]|0)+52}i=u;return}function Nl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;j=i;i=i+32|0;d=j+24|0;e=j+20|0;f=j+16|0;g=j+12|0;h=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=1;while(1){if((
c[f>>2]|0)>>>0>=(c[d>>2]|0)>>>0)break;c[g>>2]=c[f>>2];
while(1){if((c[g>>2]|0)>>>0<=0)break;if((c[(c[e>>2]|0)+((c[g>>2]|0)*12|0)>
;>2]|0)>(c[(c[e>>2]|0)+(((c[g>>2]|0)-1|0)*12|0)>>2]|0))break;b=(c[e>>2]|0)+((c
[g>>2]|0)*12|0)|0;c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+
8>>2];b=(c[e>>2]|0)+((c[g>>2]|0)*12|0)|0;a=(c[e>>2]|0)+(((c[g>>2]|0)-1|0)*12|0
)|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];b=(c[e
x3e;>2]|0)+(((c[g>>2]|0)-1|0)*12|0)|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];
c[b+8>>2]=c[h+8>>2];c[g>>2]=(c[g>>2]|0)+-1}c[f>>2]=(c[f>>2]|0)+1}i=j
;return}function Ol(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;f=g+8|0;e=g+4|0;d=g;c[b>>2]=a;if(!(c[b>
;>2]|0)){i=g;return}if(!(c[c[b>>2]>>2]|0)){i=g;return}c[f>>2]=c[c[b>>2]>>
2];c[e>>2]=0;while(1){if((c[e>>2]|0)>=2)break;c[d>>2]=(c[b>>2]|0)+48+((c[e>>
;2]|0)*28|0);c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;Fb(c[f>>2]|0,c[(c[d>
x3e;2]|0)+8>>2]|0);c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+12>>2]=0;c[(c[d>
x3e;2]|0)+16>>2]=0;Fb(c[f>>2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>
x3e;2]=0;c[e>>2]=(c[e>>2]|0)+1}Fb(c[f>>2]|0,c[(c[b>>2]|0)+44>>2]|0);c[(c[b>
;>2]|0)+44>>2]=0;c[(c[b>>2]|0)+36>>2]=0;c[(c[b>>2]|0)+40>>2]=0;Fb(c[f>
;>2]|0,c[(c[b>>2]|0)+32>>2]|0);c[(c[b>>2]|0)+32>>2]=0;c[(c[b>>2]|0)+28>
;>2]=0;c[(c[b>>2]|0)+24>>2]=0;c[c[b>>2]>>2]=0;i=g;return}function Pl(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;N=i;i=i+224|0;O=N+212|0;g=N+208|0;u=N+160|0;L=N+112|0;B=N+104|0;C=N+100|0;j=N+96|0;o=N+92|0;s=N+88|0;h=N+84|0;v=N
+80|0;F=N+76|0;y=N+72|0;p=N+68|0;q=N+64|0;w=N+60|0;n=N+56|0;m=N+52|0;k=N+48|0;l=N+44|0;G=N+40|0;K=N+217|0;A=N+36|0;t=N+32|0;x=N+
28|0;D=N+24|0;H=N+20|0;I=N+16|0;z=N+12|0;r=N+8|0;J=N+4|0;M=N;E=N+216|0;c[O>>2]=e;c[g>>2]=f;c[h>>2]=(
c[O>>2]|0)+40+396;c[v>>2]=c[(c[g>>2]|0)+84>>2];c[j>>2]=0;while(1){if((c[j>
;>2]|0)>=6)break;c[F>>2]=11435+((c[j>>2]|0)*13|0);c[y>>2]=(c[F>>2]|0)+12;c[B
x3e;>2]=0;c[C>>2]=0;while(1){if((c[F>>2]|0)>>>0>=(c[y>>2]|0)>>
x3e;0)break;if(!(a[c[F>>2]>>0]|0))break;a[K>>0]=0;c[w>>2]=Dc(c[g>>2]|0,a[c[F
x3e;>2]>>0]|0)|0;do if((c[w>>2]|0?(c[s>>2]=Cb(c[g>>2]|0,c[w>>2]|0,1)|0,(c
[s>>2]|0)==0):0)?(b[(c[v>>2]|0)+108+2>>1]|0)>0:0){c[G>>2]=c[(c[v>>2]|0)+108
+4>>2];c[m>>2]=-1;c[n>>2]=0;c[k>>2]=0;c[l>>2]=0;c[t>>2]=0;c[x>
x3e;2]=-1;c[A>>2]=0;while(1){f=c[m>>2]|0;if((c[A>>2]|0)>=(b[(c[v>>2]|0)+108>
x3e;1]|0))break;c[D>>2]=f;c[x>>2]=b[(c[(c[v>>2]|0)+108+12>>2]|0)+(c[A>>2]<
;<1)>>1];if((c[x>>2]|0)>(c[t>>2]|0)){O=(c[j>>2]|0)==0|(c[j>>2]|0)==2
|(c[j>>2]|0)==3;c[H>>2]=c[t>>2];a:do if(O)while(1){if((c[H>>2]|0)>(c[x>>2
]|0))break a;if(!((c[m>>2]|0)>=0?(c[(c[G>>2]|0)+(c[H>>2]<<3)+4>>2]|0)<
;=(c[n>>2]|0):0)){c[m>>2]=c[H>>2];c[n>>2]=c[(c[G>>2]|0)+(c[H>>2]<
;<3)+4>>2]}c[H>>2]=(c[H>>2]|0)+1}else while(1){if((c[H>>2]|0)>(c[x>>
2]|0))break a;if(!((c[m>>2]|0)>=0?(c[(c[G>>2]|0)+(c[H>>2]<<3)+4>>2]|0)>
;=(c[n>>2]|0):0)){c[m>>2]=c[H>>2];c[n>>2]=c[(c[G>>2]|0)+(c[H>>2]<
;<3)+4>>2]}c[H>>2]=(c[H>>2]|0)+1}while(0);if((c[m>>2]|0)!=(c[D>>2]|0)){c[
k>>2]=c[t>>2];c[l>>2]=c[x>>2]}}c[t>>2]=(c[x>>2]|0)+1;c[A>>
2]=(c[A>>2]|0)+1}if((f|0)>=0){c[I>>2]=c[m>>2];c[z>>2]=c[I>>2];do{if((c[I
x3e;>2]|0)>(c[k>>2]|0))c[I>>2]=(c[I>>2]|0)+-1;else c[I>>2]=c[l>>2];c
[r>>2]=(c[(c[G>>2]|0)+(c[I>>2]<<3)+4>>2]|0)-(c[n>>2]|0);if((c[r>
;>2]|0)<-5|(c[r>>2]|0)>5)break}while((c[I>>2]|0)!=(c[m>>2]|0));do{if((c[z>>
;2]|0)<(c[l>>2]|0))c[z>>2]=(c[z>>2]|0)+1;else c[z>>2]=c[k>>2];c[r>
x3e;2]=(c[(c[G>>2]|0)+(c[z>>2]<<3)+4>>2]|0)-(c[n>>2]|0);if((c[r>>2]|
0)<-5|(c[r>>2]|0)>5)break}while((c[z>>2]|0)!=(c[m>>2]|0));if((a[(c[(c[v>>2]|0)+
108+8>>2]|0)+(c[I>>2]|0)>>0]&3|0)!=1)f=1;else f=(a[(c[(c[v>>2]|0)+108+8>>
2]|0)+(c[z>>2]|0)>>0]&3|0)!=1;a[K>>0]=f&1}f=c[n>>2]|0;if(a[K>>0]|0){
O=c[C>>2]|0;c[C>>2]=O+1;c[L+(O<<2)>>2]=f;break}else{O=c[B>>2]|0;c[B>>
;2]=O+1;c[u+(O<<2)>>2]=f;break}}while(0);c[F>>2]=(c[F>>2]|0)+1}if(!((c[B>>2]|0
)==0&(c[C>>2]|0)==0)){Ql(c[C>>2]|0,L);Ql(c[B>>2]|0,u);c[o>>2]=(c[h>>2]|0)+
220+((c[(c[h>>2]|0)+216>>2]|0)*28|0);c[p>>2]=c[o>>2];c[q>>2]=(c[o>>2
]|0)+12;f=(c[h>>2]|0)+216|0;c[f>>2]=(c[f>>2]|0)+1;f=c[C>>2]|0;do if(c[B>>2]|0){
e=c[u+(((c[B>>2]|0)/2|0)<<2)>>2]|0;if(!f){c[c[q>>2]>>2]=e;c[c[p>>2]
x3e;>2]=e;break}else{c[c[p>>2]>>2]=e;c[c[q>>2]>>2]=c[L+(((c[C>>2]|0)/2|0)
x3c;<2)>>2];break}}else{O=c[L+(((f|0)/2|0)<<2)>>2]|0;c[c[q>>2]>>2]=O;c[c[
p>>2]>>2]=O}while(0);if((c[c[q>>2]>>2]|0)!=(c[c[p>>2]>>2]|0)){c[J>
;>2]=c[c[p>>2]>>2];c[M>>2]=c[c[q>>2]>>2];a[E>>0]=(c[M>>
;2]|0)>(c[J>>2]|0);if((c[j>>2]|0)==0|(c[j>>2]|0)==2)f=1;else f=(c[j>>2]|0)==3;if(f
x26;1^d[E>>0]|0){O=((c[M>>2]|0)+(c[J>>2]|0)|0)/2|0;c[c[p>>2]>>2]=O;c[c[q>
x3e;2]>>2]=O}}c[(c[o>>2]|0)+24>>2]=0;if((c[j>>2]|0)==0|(c[j>>2]|0)==2|(c[j>
;>2]|0)==3){O=(c[o>>2]|0)+24|0;c[O>>2]=c[O>>2]|2}if((c[j>>2]|0)==3){O=(c[o>>
;2]|0)+24|0;c[O>>2]=c[O>>2]|4}}c[j>>2]=(c[j>>2]|0)+1}i=N;return}function Ql(a,b){a=a|0;b
=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[d>>2]=a;c[e>>2]=b;c[f
x3e;>2]=1;while(1){if((c[f>>2]|0)>>>0>=(c[d>>2]|0)>>>0)break;c[g>
;>2]=c[f>>2];while(1){if((c[g>>2]|0)>>>0<=0)break;if((c[(c[e>>2]|0)+(c[g
x3e;>2]<<2)>>2]|0)>(c[(c[e>>2]|0)+((c[g>>2]|0)-1<<2)>>2]|0
))break;c[h>>2]=c[(c[e>>2]|0)+(c[g>>2]<<2)>>2];c[(c[e>>2]|0)+(c[g>
;>2]<<2)>>2]=c[(c[e>>2]|0)+((c[g>>2]|0)-1<<2)>>2];c[(c[e>
x3e;2]|0)+((c[g>>2]|0)-1<<2)>>2]=c[h>>2];c[g>>2]=(c[g>>2]|0)+-1}c[f
x3e;>2]=(c[f>>2]|0)+1}i=j;return}function Rl(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;o=i;i=i
+32|0;e=o+20|0;f=o+16|0;j=o+12|0;m=o+25|0;l=o+24|0;g=o+8|0;k=o+4|0;h=o;c[e>>2]=b;c[f>>2]=d;a[m>>0]=
0;a[l>>0]=1;c[k>>2]=0;c[j>>2]=48;a:while(1){if((c[j>>2]|0)>>>0>57){n
=10;break}c[h>>2]=Dc(c[f>>2]|0,c[j>>2]|0)|0;do if(c[h>>2]|0?(vb(c[f>>2]|0,c[h
x3e;>2]|0,2051,g)|0)==0:0){d=c[g>>2]|0;if(a[m>>0]|0)if((d|0)!=(c[k>>2]|0))break a;else break;
else{c[k>>2]=d;a[m>>0]=1;break}}while(0);c[j>>2]=(c[j>>2]|0)+1}if((n|0)==10){m=a[l>
x3e;0]|0;n=c[e>>2]|0;n=n+32|0;a[n>>0]=m;i=o;return}a[l>>0]=0;m=a[l>>0]|0;n=c[e>>
;2]|0;n=n+32|0;a[n>>0]=m;i=o;return}function Sl(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)+4+20>>2]=c[(c[e>>2]|0)+20>>2];c[(c[f>>
2]|0)+4>>2]=c[c[e>>2]>>2];Tl(c[f>>2]|0,c[e>>2]|0,0);Tl(c[f>>2]|0,c[e
>>2]|0,1);i=d;return}function Tl(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;x=i;i=i+64|0;m=x+60|0;f=x+56|0;n=x+52|0;w=x+48|0;r=x+44|0;p=x+40|0;v=x+36|0;g=x+32|0;h=x+28|0;k=x+24|0;j=x+20|0;
o=x+16|0;q=x+12|0;u=x+8|0;s=x+4|0;t=x;c[m>>2]=b;c[f>>2]=d;c[n>>2]=e;e=c[f>>2]|0;if(!(c[n
>>2]|0)){c[w>>2]=c[e+4>>2];c[r>>2]=c[(c[f>>2]|0)+12>>2]}else{c[w>
;>2]=c[e+8>>2];c[r>>2]=c[(c[f>>2]|0)+16>>2]}c[p>>2]=(c[m>>2]|0)+
40+((c[n>>2]|0)*396|0);if((c[(c[p>>2]|0)+388>>2]|0)==(c[w>>2]|0)?(c[(c[p>>2]|0
)+392>>2]|0)==(c[r>>2]|0):0){i=x;return}c[(c[p>>2]|0)+388>>2]=c[w>>2];c[(c[p
x3e;>2]|0)+392>>2]=c[r>>2];c[g>>2]=(c[m>>2]|0)+40+396;c[h>>2]=0;c[v>
x3e;2]=0;while(1){if((c[v>>2]|0)>>>0>=(c[(c[g>>2]|0)+216>>2]|0)>>>
;0)break;e=c[v>>2]|0;if(c[(c[g>>2]|0)+220+((c[v>>2]|0)*28|0)+24>>2]&4|0){l=9;break}
c[v>>2]=e+1}if((l|0)==9)c[h>>2]=(c[g>>2]|0)+220+(e*28|0);if(c[h>>2]|0?(c[k>>2]=
Mb(c[(c[h>>2]|0)+12>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0,c[j>>2]=(c[k>>2]|
0)+40&-64,(c[n>>2]|0)==1?(c[k>>2]|0)!=(c[j>>2]|0):0):0)c[w>>2]=xb(c[w>>2]|
0,c[j>>2]|0,c[k>>2]|0)|0;c[c[p>>2]>>2]=c[w>>2];c[(c[p>>2]|0)+4>
x3e;2]=c[r>>2];e=c[w>>2]|0;b=(c[m>>2]|0)+4|0;if(!(c[n>>2]|0)){c[b+4>>2]=e;c[(c
[m>>2]|0)+4+12>>2]=c[r>>2]}else{c[b+8>>2]=e;c[(c[m>>2]|0)+4+16>>2]=c
[r>>2]}c[v>>2]=0;while(1){e=c[p>>2]|0;if((c[v>>2]|0)>>>0>=(c[(c[p>
;>2]|0)+8>>2]|0)>>>0)break;c[o>>2]=e+12+((c[v>>2]|0)*12|0);m=Mb(c[c[o>>
;2]>>2]|0,c[w>>2]|0)|0;c[(c[o>>2]|0)+4>>2]=m;c[(c[o>>2]|0)+8>>2]=c[(
c[o>>2]|0)+4>>2];c[v>>2]=(c[v>>2]|0)+1}o=(Mb(c[e+208>>2]|0,c[w>>2]|0
)|0)<40&255;a[(c[p>>2]|0)+212>>0]=o;if((c[n>>2]|0)!=1){i=x;return}c[v>>2]=0;while
(1){if((c[v>>2]|0)>>>0>=(c[(c[p>>2]|0)+216>>2]|0)>>>0)break;c[q
>>2]=(c[p>>2]|0)+220+((c[v>>2]|0)*28|0);o=Mb(c[c[q>>2]>>2]|0,c[w>>2]|
0)|0;c[(c[q>>2]|0)+4>>2]=o+(c[r>>2]|0);c[(c[q>>2]|0)+8>>2]=c[(c[q>>2
]|0)+4>>2];o=Mb(c[(c[q>>2]|0)+12>>2]|0,c[w>>2]|0)|0;c[(c[q>>2]|0)+12+4>
x3e;2]=o+(c[r>>2]|0);c[(c[q>>2]|0)+12+8>>2]=c[(c[q>>2]|0)+12+4>>2];o=(c[q>
;>2]|0)+24|0;c[o>>2]=c[o>>2]&-2;c[u>>2]=Mb((c[c[q>>2]>>2]|0)-(c[(c[q
>>2]|0)+12>>2]|0)|0,c[w>>2]|0)|0;if((c[u>>2]|0)<=48&(c[u>>2]|0)>
;=-48){c[s>>2]=(c[(c[q>>2]|0)+12>>2]|0)-(c[c[q>>2]>>2]|0);c[t>>2]=c[
s>>2];if((c[s>>2]|0)<0)c[t>>2]=0-(c[t>>2]|0);c[t>>2]=Mb(c[t>>2]|
0,c[w>>2]|0)|0;do if((c[t>>2]|0)>=32){e=c[t>>2]|0;if((c[t>>2]|0)<64){c[t>
x3e;2]=32+(e-32+16&-32);break}else{c[t>>2]=e+32&-64;break}}else c[t>>2]=0;while(0);if((c[s>
x3e;2]|0)<0)c[t>>2]=0-(c[t>>2]|0);c[(c[q>>2]|0)+8>>2]=(c[(c[q>>2]|0)+4>
;>2]|0)+32&-64;c[(c[q>>2]|0)+12+8>>2]=(c[(c[q>>2]|0)+8>>2]|0)+(c[t>>
2]|0);o=(c[q>>2]|0)+24|0;c[o>>2]=c[o>>2]|1}c[v>>2]=(c[v>>2]|0)+1}i=x;return}function
Ul(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;d=j+20|0;k=j+16|0;f=j+12|0;h=j+8|0;g=j+4|0;e=j;c[d>>
2]=a;c[k>>2]=b;c[e>>2]=c[(c[k>>2]|0)+4>>2];Dl(c[d>>2]|0,c[k>>2]|0);c
[(c[d>>2]|0)+4>>2]=c[(c[k>>2]|0)+40>>2];c[(c[d>>2]|0)+8>>2]=c[(c[k
x3e;>2]|0)+40+4>>2];c[(c[d>>2]|0)+12>>2]=c[(c[k>>2]|0)+40+396>>2];c[(c[d
x3e;>2]|0)+16>>2]=c[(c[k>>2]|0)+40+396+4>>2];c[f>>2]=c[(c[k>>2]|0)+4+20
x3e;>2];c[h>>2]=c[(c[d>>2]|0)+104>>2];c[g>>2]=0;if((c[f>>2]|0)==2|(c[f>
;>2]|0)==3)c[g>>2]=c[g>>2]|1;if((c[f>>2]|0)==2|(c[f>>2]|0)==4)c[g>>2]=c[g
>>2]|2;if((c[f>>2]|0)!=1)c[g>>2]=c[g>>2]|4;if((c[f>>2]|0)==2)c[g>>2]=
c[g>>2]|8;if((c[f>>2]|0)!=1?(c[(c[e>>2]|0)+12>>2]&1|0)==0:0){k=c[h>>2]|0;
h=c[d>>2]|0;h=h+104|0;c[h>>2]=k;h=c[g>>2]|0;k=c[d>>2]|0;k=k+108|0;c[k>>2]=h;i=
j;return 0}c[h>>2]=c[h>>2]|1;k=c[h>>2]|0;h=c[d>>2]|0;h=h+104|0;c[h>>2]=k;h=c[g
>>2]|0;k=c[d>>2]|0;k=k+108|0;c[k>>2]=h;i=j;return 0}function Vl(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;f=k+16|0;g=k+12|0;e=k+8|0;j=k+4|0;h=k;c[f>>2]=a;c[g>>2]=b;c[e>>2]=
d;c[j>>2]=Il(c[f>>2]|0,c[g>>2]|0)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}if
((c[(c[f>>2]|0)+104>>2]&1|0)==0?(c[j>>2]=Wl(c[f>>2]|0,0)|0,c[j>>2]|0):0){
j=c[j>>2]|0;i=k;return j|0}do if(!(c[(c[f>>2]|0)+104>>2]&2)){c[j>>2]=Wl(c[f>
x3e;2]|0,1)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}else{Zl(c[f>>2]|0,c[e>>2]|0);break
}}while(0);c[h>>2]=0;while(1){if((c[h>>2]|0)>=2)break;if((c[h>>2]|0)==0?!(c[(c[f>>2
]|0)+104>>2]&1|0):0)e=13;else e=11;if(((e|0)==11?(e=0,(c[h>>2]|0)==1):0)?(c[(c[f>>2]|0)+104
x3e;>2]&2|0)==0:0)e=13;if((e|0)==13){_l(c[f>>2]|0,c[h>>2]|0);dm(c[f>>2]|0,c[h>>
;2]|0);em(c[f>>2]|0,c[h>>2]|0);fm(c[f>>2]|0,c[h>>2]|0)}c[h>>2]=(c[h>>
;2]|0)+1}im(c[f>>2]|0,c[g>>2]|0);j=c[j>>2]|0;i=k;return j|0}function Wl(a,b){a=a|0;b=b|0;var d=0,e
=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Kl(c[d>>2]|0,c[e
>>2]|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}Ml(c[d>>2]|0,c[e>>2]|0);c[f
>>2]=Xl(c[d>>2]|0,c[e>>2]|0)|0;a=c[f>>2]|0;i=g;return a|0}function Xl(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
;M=i;i=i+128|0;g=M+112|0;h=M+108|0;l=M+104|0;D=M+100|0;t=M+96|0;j=M+92|0;k=M+88|0;w=M+84|0;H=M+80|0;K=M+76|0;u=M+72|0;p=M+68|0;v
=M+64|0;s=M+60|0;r=M+56|0;n=M+52|0;m=M+48|0;o=M+44|0;q=M+40|0;C=M+36|0;z=M+32|0;E=M+28|0;G=M+24|0;L=M+20|0;y=M+16|0;F=M+116|0;A=
M+12|0;I=M+8|0;B=M+4|0;J=M;c[g>>2]=e;c[h>>2]=f;c[l>>2]=(c[g>>2]|0)+48+((c[h>>2
]|0)*28|0);c[D>>2]=0;c[t>>2]=c[c[g>>2]>>2];c[j>>2]=(c[(c[g>>2]|0)+112
>>2]|0)+40+((c[h>>2]|0)*396|0);c[k>>2]=c[(c[l>>2]|0)+8>>2];c[w>>2]=(
c[k>>2]|0)+((c[c[l>>2]>>2]|0)*52|0);c[(c[l>>2]|0)+12>>2]=0;f=c[g>>2]|
0;if(!(c[h>>2]|0))f=c[f+4>>2]|0;else f=c[f+12>>2]|0;c[u>>2]=f;c[K>>2]=(c[h>
;>2]|0)==0?2:1;if(!(c[h>>2]|0))c[v>>2]=Vb(64,c[(c[g>>2]|0)+12>>2]|0)|0;else c[v>
;>2]=0;j=Mb(c[(c[j>>2]|0)+204>>2]|0,c[u>>2]|0)|0;c[p>>2]=j;c[p>>2]=(c[p
x3e;>2]|0)>16?16:j;c[p>>2]=Vb(c[p>>2]|0,c[u>>2]|0)|0;c[H>>2]=c[k>>2];
a:while(1){if((c[H>>2]|0)>>>0>=(c[w>>2]|0)>>>0)break;c[s>>2]=0;
do if((b[(c[H>>2]|0)+8>>1]|0)>=(c[v>>2]|0)){if(c[(c[H>>2]|0)+24>>2]|0?(b[(
c[H>>2]|0)+8>>1]<<1|0)<((c[v>>2]|0)*3|0):0)break;c[r>>2]=0;while(1){if((c
[r>>2]|0)>=(c[(c[l>>2]|0)+12>>2]|0))break;c[n>>2]=(c[(c[l>>2]|0)+20>
x3e;2]|0)+((c[r>>2]|0)*48|0);c[m>>2]=(b[(c[H>>2]|0)+2>>1]|0)-(b[c[n>>2]>
x3e;1]|0);if((c[m>>2]|0)<0)c[m>>2]=0-(c[m>>2]|0);if((c[m>>2]|0)<(c[p>>
;2]|0)?(a[(c[n>>2]|0)+13>>0]|0)==(a[(c[H>>2]|0)+1>>0]|0):0){x=18;break}c[r>>2]=(
c[r>>2]|0)+1}if((x|0)==18){x=0;c[s>>2]=c[n>>2]}if(c[s>>2]|0){c[(c[H>>2]|0)+16
x3e;>2]=c[(c[s>>2]|0)+40>>2];c[(c[(c[s>>2]|0)+44>>2]|0)+16>>2]=c[H>
x3e;2];c[(c[s>>2]|0)+44>>2]=c[H>>2];break}c[D>>2]=Yl(c[l>>2]|0,b[(c[H>>
;2]|0)+2>>1]|0,a[(c[H>>2]|0)+1>>0]|0,c[t>>2]|0,o)|0;if(c[D>>2]|0){x=66;break a
}f=c[o>>2]|0;e=f+48|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(e|0));c[(c[o>>2]|0)+40>>2]=
c[H>>2];c[(c[o>>2]|0)+44>>2]=c[H>>2];b[c[o>>2]>>1]=b[(c[H>>
;2]|0)+2>>1]|0;a[(c[o>>2]|0)+13>>0]=a[(c[H>>2]|0)+1>>0]|0;k=Mb(b[(c[H>>
;2]|0)+2>>1]|0,c[u>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=k;c[(c[o>>2]|0)+4>>2
]=k;c[(c[H>>2]|0)+16>>2]=c[H>>2]}while(0);c[H>>2]=(c[H>>2]|0)+52}if((x|0)==66){
L=c[D>>2]|0;i=M;return L|0}c[q>>2]=c[(c[l>>2]|0)+20>>2];c[C>>2]=(c[q>>
;2]|0)+((c[(c[l>>2]|0)+12>>2]|0)*48|0);c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)
x3e;>>0>=(c[C>>2]|0)>>>0)break;c[H>>2]=c[(c[z>>2]|0)+40>>2
];if(c[H>>2]|0)do{c[(c[H>>2]|0)+12>>2]=c[z>>2];c[H>>2]=c[(c[H>>2]|0)+
16>>2]}while((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));c[z>>2]=(c[z>>2]|
0)+48}c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)>>>0>=(c[C>>2]|0)>
x3e;>0)break;c[E>>2]=0;c[G>>2]=0;c[L>>2]=0;c[y>>2]=0;c[H>>2]=c[(c[z>
x3e;2]|0)+40>>2];do{if(d[c[H>>2]>>0]&1|0)c[E>>2]=(c[E>>2]|0)+1;else c[G
x3e;>2]=(c[G>>2]|0)+1;f=(b[(c[H>>2]|0)+6>>1]|0)-(b[(c[H>>2]|0)+4>>1]|0)|0
;if((a[(c[H>>2]|0)+1>>0]|0)==(c[K>>2]|0))c[L>>2]=(c[L>>2]|0)+f;else c[y>
x3e;2]=(c[y>>2]|0)+f;if(c[(c[H>>2]|0)+24>>2]|0?c[(c[(c[H>>2]|0)+24>>2]|0)+12
x3e;>2]|0:0)f=(c[(c[(c[H>>2]|0)+24>>2]|0)+12>>2]|0)!=(c[z>>2]|0);else f=0;a[F>
x3e;0]=f&1;if(c[(c[H>>2]|0)+20>>2]|0?c[(c[(c[H>>2]|0)+20>>2]|0)+12>>2]|0:
0)x=45;else x=44;if((x|0)==44?(x=0,d[F>>0]|0):0)x=45;do if((x|0)==45){c[A>>2]=c[(c[z>>2]|0)+24>
;>2];c[I>>2]=c[(c[H>>2]|0)+20>>2];if(a[F>>0]|0){c[I>>2]=c[(c[H>>
;2]|0)+24>>2];c[A>>2]=c[(c[z>>2]|0)+28>>2]}if(c[A>>2]|0){c[B>>2]=(b[
c[z>>2]>>1]|0)-(b[c[A>>2]>>1]|0);if((c[B>>2]|0)<0)c[B>>2]=0-(c[
B>>2]|0);c[J>>2]=(b[(c[H>>2]|0)+2>>1]|0)-(b[(c[I>>2]|0)+2>>1]|0);if((
c[J>>2]|0)<0)c[J>>2]=0-(c[J>>2]|0);if((c[J>>2]|0)<(c[B>>2]|0))c[A>
;>2]=c[(c[I>>2]|0)+12>>2]}else c[A>>2]=c[(c[I>>2]|0)+12>>2];f=c[A>
x3e;2]|0;e=c[z>>2]|0;if(a[F>>0]|0){c[e+28>>2]=f;x=(c[A>>2]|0)+12|0;a[x>>0]=d[x
>>0]|2;break}else{c[e+24>>2]=f;break}}while(0);c[H>>2]=c[(c[H>>2]|0)+16>>2]}while
((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));a[(c[z>>2]|0)+12>>0]=0;if((c[E>
x3e;2]|0)>0?(c[E>>2]|0)>=(c[G>>2]|0):0){x=(c[z>>2]|0)+12|0;a[x>>0]=d[x>
x3e;0]|1}if(c[(c[z>>2]|0)+28>>2]|0?c[(c[z>>2]|0)+24>>2]|0:0)c[(c[z>>2]|0)+28
x3e;>2]=0;c[z>>2]=(c[z>>2]|0)+48}L=c[D>>2]|0;i=M;return L|0}function Yl(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,t=0,u=0;u=i;i=i+48|0;n=u+40|0;o=u+36|0;p=u+32|0;j=u+28|0;q=u+24|
0;t=u+20|0;r=u+16|0;s=u+12|0;m=u+8|0;l=u+4|0;k=u;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[j>>2]=g
;c[q>>2]=h;c[t>>2]=0;c[r>>2]=0;do if((c[(c[n>>2]|0)+12>>2]|0)>=(c[(c[n>
;>2]|0)+16>>2]|0)){c[m>>2]=c[(c[n>>2]|0)+16>>2];c[l>>2]=c[m>>2];
c[k>>2]=44739242;if((c[m>>2]|0)>=(c[k>>2]|0)){c[t>>2]=64;r=c[r>>2]|0;s=c[
q>>2]|0;c[s>>2]=r;t=c[t>>2]|0;i=u;return t|0}c[l>>2]=(c[l>>2]|0)+((c[l>
x3e;2]>>2)+4);if(!((c[l>>2]|0)>=(c[m>>2]|0)?(c[l>>2]|0)<=(c[k>>2]|0):
0))c[l>>2]=c[k>>2];m=hc(c[j>>2]|0,48,c[m>>2]|0,c[l>>2]|0,c[(c[n>>2]|
0)+20>>2]|0,t)|0;c[(c[n>>2]|0)+20>>2]=m;if(c[t>>2]|0){r=c[r>>2]|0;s=c[q>
x3e;2]|0;c[s>>2]=r;t=c[t>>2]|0;i=u;return t|0}else{c[(c[n>>2]|0)+16>>2]=c[l>>2
];break}}while(0);c[s>>2]=c[(c[n>>2]|0)+20>>2];c[r>>2]=(c[s>>2]|0)+((c[(c[n>
;>2]|0)+12>>2]|0)*48|0);while(1){if((c[r>>2]|0)>>>0<=(c[s>>2]|0)>>
;>0)break;if((b[(c[r>>2]|0)+-48>>1]|0)<(c[o>>2]|0))break;if((b[(c[r>>2]|0)+-48
>>1]|0)==(c[o>>2]|0)?(c[p>>2]|0)==(c[(c[n>>2]|0)+24>>2]|0):0)break;j=c[r>
x3e;2]|0;h=(c[r>>2]|0)+-48|0;d=j+48|0;do{c[j>>2]=c[h>>2];j=j+4|0;h=h+4|0}while((j|0)<(d|0));c
[r>>2]=(c[r>>2]|0)+-48}j=(c[n>>2]|0)+12|0;c[j>>2]=(c[j>>2]|0)+1;j=c[r>>
;2]|0;d=j+48|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(d|0));b[c[r>>2]>>1]=c[o>>2];a[(c[r
>>2]|0)+13>>0]=c[p>>2];r=c[r>>2]|0;s=c[q>>2]|0;c[s>>2]=r;t=c[t>
x3e;2]|0;i=u;return t|0}function Zl(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;v=i;i=i
+64|0;w=v+44|0;g=v+40|0;h=v+36|0;o=v+32|0;p=v+28|0;t=v+24|0;u=v+20|0;j=v+16|0;k=v+12|0;l=v+8|0;m=v+4|0;r=v+50|0;q=v+49|0;n=v;s=v
+48|0;c[w>>2]=e;c[g>>2]=f;c[h>>2]=(c[w>>2]|0)+48+28;c[o>>2]=c[(c[h>>
2]|0)+20>>2];c[p>>2]=(c[o>>2]|0)+((c[(c[h>>2]|0)+12>>2]|0)*48|0);c[t>>
;2]=(c[g>>2]|0)+40+396;c[u>>2]=c[c[t>>2]>>2];while(1){if((c[o>>2]|0)>>
;>0>=(c[p>>2]|0)>>>0)break;c[k>>2]=0;w=Mb(((c[(c[g>>2]|0)+36>>2
]|0)>>>0)/40|0,c[u>>2]|0)|0;c[l>>2]=w;c[l>>2]=(c[l>>2]|0)>32?32:w;c[
j>>2]=0;while(1){if((c[j>>2]|0)>=6)break;c[m>>2]=(c[t>>2]|0)+220+((c[j>>2
]|0)*28|0);if(c[(c[m>>2]|0)+24>>2]&1|0?(a[r>>0]=(c[(c[m>>2]|0)+24>>2]&
;2|0)!=0,a[q>>0]=(a[(c[o>>2]|0)+13>>0]|0)==(c[(c[h>>2]|0)+24>>2]|0),d[r>
x3e;0]^d[q>>0]|0):0){c[n>>2]=(b[c[o>>2]>>1]|0)-(c[c[m>>2]>>2]|0);if((
c[n>>2]|0)<0)c[n>>2]=0-(c[n>>2]|0);c[n>>2]=Mb(c[n>>2]|0,c[u>>2]|
0)|0;if((c[n>>2]|0)<(c[l>>2]|0)){c[l>>2]=c[n>>2];c[k>>2]=c[m>>2
]}if((c[n>>2]|0?(d[(c[o>>2]|0)+12>>0]&1|0)!=0:0)?(a[s>>0]=(b[c[o>>2]>
;>1]|0)<(c[c[m>>2]>>2]|0),d[r>>0]^d[s>>0]|0):0){c[m>>2]=(c[t>
x3e;2]|0)+220+((c[j>>2]|0)*28|0);c[n>>2]=(b[c[o>>2]>>1]|0)-(c[(c[m>>2]|0)+12
x3e;>2]|0);if((c[n>>2]|0)<0)c[n>>2]=0-(c[n>>2]|0);c[n>>2]=Mb(c[n>>2]|
0,c[u>>2]|0)|0;if((c[n>>2]|0)<(c[l>>2]|0)){c[l>>2]=c[n>>2];c[k>>
;2]=(c[m>>2]|0)+12}}}c[j>>2]=(c[j>>2]|0)+1}if(c[k>>2]|0)c[(c[o>>2]|0)+20>
x3e;2]=c[k>>2];c[o>>2]=(c[o>>2]|0)+48}i=v;return}function _l(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,D=0,E=0,F=0,G=0,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;U=i;i=i+176|0;M=U+160|0;j=U+156|0;V=U+152|0;T=U+148|0;S=U+144|0;K=U+140|0;R=U+136|0;O=U+132|0;J=U+128|0;
f=U+124|0;g=U+120|0;h=U+116|0;t=U+112|0;y=U+108|0;w=U+104|0;k=U+100|0;m=U+96|0;u=U+92|0;v=U+88|0;B=U+84|0;p=U+80|0;A=U+76|0;z=U+
72|0;x=U+68|0;l=U+64|0;n=U+60|0;o=U+56|0;r=U+52|0;s=U+48|0;C=U+44|0;q=U+40|0;G=U+36|0;H=U+32|0;I=U+28|0;E=U+24|0;F=U+20|0;L=U+16
|0;D=U+12|0;Q=U+8|0;P=U+4|0;N=U;c[M>>2]=b;c[j>>2]=e;c[V>>2]=(c[M>>2]|0)+48+((c[j>
x3e;2]|0)*28|0);c[T>>2]=c[(c[V>>2]|0)+20>>2];c[S>>2]=(c[T>>2]|0)+((c[(c[V>
;>2]|0)+12>>2]|0)*48|0);c[O>>2]=0;c[J>>2]=0;a:do if((c[j>>2]|0)==1){c[R>>
2]=c[T>>2];while(1){if((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break a
;if(!((d[(c[R>>2]|0)+12>>0]|0)&4)){c[f>>2]=c[(c[R>>2]|0)+20>>2];c[g>
x3e;2]=0;c[h>>2]=c[(c[R>>2]|0)+24>>2];if(!(c[f>>2]|0)){if(c[h>>2]|0?c[(c[h>
;>2]|0)+20>>2]|0:0){c[f>>2]=c[(c[h>>2]|0)+20>>2];c[g>>2]=c[h>>2
];c[h>>2]=c[R>>2]}}else c[g>>2]=c[R>>2];if(c[g>>2]|0){c[(c[g>>2]|0)+
8>>2]=c[(c[f>>2]|0)+8>>2];V=(c[g>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if(
c[h>>2]|0?(c[(c[h>>2]|0)+20>>2]|0)==0:0){$l(c[M>>2]|0,c[j>>2]|0,c[g>>
;2]|0,c[h>>2]|0);V=(c[h>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4}if(!(c[O>>2]|0))c[O>
;>2]=c[R>>2]}}c[R>>2]=(c[R>>2]|0)+48}}while(0);c[R>>2]=c[T>>2];while(1){if
((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;do if(!((d[(c[R>>2]|0)+
12>>0]|0)&4)){c[t>>2]=c[(c[R>>2]|0)+24>>2];if(!(c[t>>2]|0)){c[J>>
;2]=(c[J>>2]|0)+1;break}if(c[(c[t>>2]|0)+20>>2]|0){$l(c[M>>2]|0,c[j>>2]|0,c[t
x3e;>2]|0,c[R>>2]|0);V=(c[R>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;break}if(!(c[O>>
;2]|0)){c[y>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0);c[k>>
;2]=am(c[M>>2]|0,c[j>>2]|0,c[y>>2]|0,d[(c[R>>2]|0)+12>>0]|0,d[(c[t>>
2]|0)+12>>0]|0)|0;if((c[k>>2]|0)<=64){c[p>>2]=32;c[B>>2]=32}else{c[B>>2]=
38;c[p>>2]=26}f=c[(c[R>>2]|0)+4>>2]|0;if((c[k>>2]|0)<96){c[w>>2]=f+(c[y
x3e;>2]>>1);c[m>>2]=(c[w>>2]|0)+32&-64;c[u>>2]=(c[w>>2]|0)-((c[m>
;>2]|0)-(c[B>>2]|0));if((c[u>>2]|0)<0)c[u>>2]=0-(c[u>>2]|0);c[v>>2]=(
c[w>>2]|0)-((c[m>>2]|0)+(c[p>>2]|0));if((c[v>>2]|0)<0)c[v>>2]=0-(c[v>
;>2]|0);if((c[u>>2]|0)<(c[v>>2]|0))c[m>>2]=(c[m>>2]|0)-(c[B>>2]|0);else
c[m>>2]=(c[m>>2]|0)+(c[p>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[m>>2]|0)-((c
[k>>2]|0)/2|0);c[(c[t>>2]|0)+8>>2]=(c[(c[R>>2]|0)+8>>2]|0)+(c[k>>2]|
0)}else c[(c[R>>2]|0)+8>>2]=f+32&-64;c[O>>2]=c[R>>2];V=(c[R>>2]|0)+12|0;a
[V>>0]=d[V>>0]|0|4;$l(c[M>>2]|0,c[j>>2]|0,c[R>>2]|0,c[t>>2]|0);break
}c[A>>2]=(c[(c[O>>2]|0)+8>>2]|0)+((c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2
]|0)+4>>2]|0));c[z>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|
0);c[x>>2]=(c[A>>2]|0)+(c[z>>2]>>1);c[l>>2]=am(c[M>>2]|0,c[j>
x3e;2]|0,c[z>>2]|0,d[(c[R>>2]|0)+12>>0]|0,d[(c[t>>2]|0)+12>>0]|0)|0;do if((d[(
c[t>>2]|0)+12>>0]|0)&4|0)c[(c[R>>2]|0)+8>>2]=(c[(c[t>>2]|0)+8>>
2]|0)-(c[l>>2]|0);else{if((c[l>>2]|0)>=96){c[A>>2]=(c[(c[O>>2]|0)+8>>2]|0
)+((c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2]|0)+4>>2]|0));c[z>>2]=(c[(c[t>>
;2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0);c[x>>2]=(c[A>>2]|0)+(c[z>>2]
x3e;>1);c[l>>2]=am(c[M>>2]|0,c[j>>2]|0,c[z>>2]|0,d[(c[R>>2]|0)+12>
x3e;0]|0,d[(c[t>>2]|0)+12>>0]|0)|0;c[n>>2]=(c[A>>2]|0)+32&-64;c[r>>2]=(c[
n>>2]|0)+(c[l>>2]>>1)-(c[x>>2]|0);if((c[r>>2]|0)<0)c[r>>2]=0-(c
[r>>2]|0);c[o>>2]=((c[A>>2]|0)+(c[z>>2]|0)+32&-64)-(c[l>>2]|0);c[s>
x3e;2]=(c[o>>2]|0)+(c[l>>2]>>1)-(c[x>>2]|0);if((c[s>>2]|0)<0)c[s>>
;2]=0-(c[s>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[r>>2]|0)<(c[s>>2]|0)?c[n>
x3e;2]|0:c[o>>2]|0;c[(c[t>>2]|0)+8>>2]=(c[(c[R>>2]|0)+8>>2]|0)+(c[l>>
;2]|0);break}c[n>>2]=(c[x>>2]|0)+32&-64;if((c[l>>2]|0)<=64){c[q>>2]=32;c[C>
;>2]=32}else{c[C>>2]=38;c[q>>2]=26}c[r>>2]=(c[x>>2]|0)-((c[n>>2]|0)-(c[C
x3e;>2]|0));if((c[r>>2]|0)<0)c[r>>2]=0-(c[r>>2]|0);c[s>>2]=(c[x>>2]|
0)-((c[n>>2]|0)+(c[q>>2]|0));if((c[s>>2]|0)<0)c[s>>2]=0-(c[s>>2]|0);if((c
[r>>2]|0)<(c[s>>2]|0))c[n>>2]=(c[n>>2]|0)-(c[C>>2]|0);else c[n>>
;2]=(c[n>>2]|0)+(c[q>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[n>>2]|0)-((c[l>>2
]|0)/2|0);c[(c[t>>2]|0)+8>>2]=(c[n>>2]|0)+((c[l>>2]|0)/2|0)}while(0);V=(c[R>>2
]|0)+12|0;a[V>>0]=d[V>>0]|0|4;V=(c[t>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if((c[R
x3e;>2]|0)>>>0>(c[T>>2]|0)>>>0?(c[(c[R>>2]|0)+8>>2]|0)<
;(c[(c[R>>2]|0)+-48+8>>2]|0):0)c[(c[R>>2]|0)+8>>2]=c[(c[R>>2]|0)+-48+8>
x3e;2]}while(0);c[R>>2]=(c[R>>2]|0)+48}c[K>>2]=((c[S>>2]|0)-(c[T>>2]|0)|0)/48|
0;if((c[j>>2]|0)==0?(c[K>>2]|0)==6|(c[K>>2]|0)==12:0){f=c[T>>2]|0;if((c[K>>2]|
0)==6){c[G>>2]=f;c[H>>2]=(c[T>>2]|0)+96;c[I>>2]=(c[T>>2]|0)+192}else{c[G>
x3e;2]=f+48;c[H>>2]=(c[T>>2]|0)+240;c[I>>2]=(c[T>>2]|0)+432}c[E>>2]=(c[(c[H>
;>2]|0)+4>>2]|0)-(c[(c[G>>2]|0)+4>>2]|0);c[F>>2]=(c[(c[I>>2]|0)+4>
x3e;2]|0)-(c[(c[H>>2]|0)+4>>2]|0);c[L>>2]=(c[E>>2]|0)-(c[F>>2]|0);if((c[L>
;>2]|0)<0)c[L>>2]=0-(c[L>>2]|0);if((c[L>>2]|0)<8){c[D>>2]=(c[(c[I>
x3e;2]|0)+8>>2]|0)-((c[(c[H>>2]|0)+8>>2]<<1)-(c[(c[G>>2]|0)+8>>2]|0));
V=(c[I>>2]|0)+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0);if(c[(c[I>>2]|0)+24>>
;2]|0){V=(c[(c[I>>2]|0)+24>>2]|0)+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0)}if((c[K
x3e;>2]|0)==12){V=(c[T>>2]|0)+384+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0);V=(c[T>
x3e;2]|0)+528+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0)}V=(c[I>>2]|0)+12|0;a[V>>0]=d
[V>>0]|0|4;if(c[(c[I>>2]|0)+24>>2]|0){V=(c[(c[I>>2]|0)+24>>2]|0)+12|0;a[V>
;>0]=d[V>>0]|0|4}}}if((c[J>>2]|0)==0&(c[O>>2]|0)!=0){i=U;return}c[R>>2]=c[T>
;>2];while(1){if((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;if(!((d[(c[R
>>2]|0)+12>>0]|0)&4)){c[Q>>2]=1e3;if(c[(c[R>>2]|0)+28>>2]|0?(c[Q>>
;2]=(c[(c[(c[R>>2]|0)+28>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0),(c[Q>>
;2]|0)<0):0)c[Q>>2]=0-(c[Q>>2]|0);do if((c[Q>>2]|0)<80)cm(c[M>>2]|0,c[(c[R>
;>2]|0)+28>>2]|0,c[R>>2]|0);else{f=c[R>>2]|0;if(!(c[O>>2]|0)){c[(c[R>>2]|
0)+8>>2]=(c[f+4>>2]|0)+32&-64;c[O>>2]=c[R>>2];break}c[P>>2]=f+-48;while(1
){if((c[P>>2]|0)>>>0<(c[T>>2]|0)>>>0)break;if((d[(c[P>>2]|0)+12
>>0]|0)&4|0)break;c[P>>2]=(c[P>>2]|0)+-48}c[N>>2]=(c[R>>2]|0)+48;while(1){
if((c[N>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;if((d[(c[N>>2]|0)+12
x3e;>0]|0)&4|0)break;c[N>>2]=(c[N>>2]|0)+48}if((((c[P>>2]|0)>>>0>=(c
[T>>2]|0)>>>0?(c[P>>2]|0)>>>0<(c[R>>2]|0)>>>0:0)?(
c[N>>2]|0)>>>0<(c[S>>2]|0)>>>0:0)?(c[N>>2]|0)>>>
0>(c[R>>2]|0)>>>0:0){f=c[(c[P>>2]|0)+8>>2]|0;e=c[R>>2]|0;if((c[(c[N
x3e;>2]|0)+4>>2]|0)==(c[(c[P>>2]|0)+4>>2]|0)){c[e+8>>2]=f;break}else{V=f+(xb((c[e+4
>>2]|0)-(c[(c[P>>2]|0)+4>>2]|0)|0,(c[(c[N>>2]|0)+8>>2]|0)-(c[(c[P>>2
]|0)+8>>2]|0)|0,(c[(c[N>>2]|0)+4>>2]|0)-(c[(c[P>>2]|0)+4>>2]|0)|0)|0)|0;c[(c[R
>>2]|0)+8>>2]=V;break}}c[(c[R>>2]|0)+8>>2]=(c[(c[O>>2]|0)+8>>2]|0)+((
c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2]|0)+4>>2]|0)+16&-32)}while(0);V=(c[R>>2
]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if((c[R>>2]|0)>>>0>(c[T>>2]|0)>
x3e;>0?(c[(c[R>>2]|0)+8>>2]|0)<(c[(c[R>>2]|0)+-48+8>>2]|0):0)c[(c[R>>
;2]|0)+8>>2]=c[(c[R>>2]|0)+-48+8>>2];if((((c[R>>2]|0)+48|0)>>>0<(c[S
>>2]|0)>>>0?(d[(c[R>>2]|0)+48+12>>0]|0)&4|0:0)?(c[(c[R>>2]|0)+8>
;>2]|0)>(c[(c[R>>2]|0)+48+8>>2]|0):0)c[(c[R>>2]|0)+8>>2]=c[(c[R>>2]|
0)+48+8>>2]}c[R>>2]=(c[R>>2]|0)+48}i=U;return}function $l(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;g=i;i=i+32|0;n=g+20|0;m=g+16|0;k=g+12|0;h=g+8|0;l=g+4|0;j=g;c[n>>2]=a;c[m>>2]=b;c[k
>>2]=e;c[h>>2]=f;c[l>>2]=(c[(c[h>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+4>
;>2]|0);c[j>>2]=am(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,d[(c[k>>2]|0)+12>
x3e;0]|0,d[(c[h>>2]|0)+12>>0]|0)|0;c[(c[h>>2]|0)+8>>2]=(c[(c[k>>2]|0)+8>
x3e;2]|0)+(c[j>>2]|0);i=g;return}function am(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;u=i;i=i+64|0;q=u+52|0;j=u+48|0;v=u+44|0;h=u+40|0;o=u+36|0;k=u+32|0;w=u+28|0;p=u+24|0;s=u+20|0;t=
u+16|0;n=u+12|0;r=u+8|0;m=u+4|0;l=u;c[j>>2]=a;c[v>>2]=b;c[h>>2]=e;c[o>>2]=f;c[k>>
;2]=g;c[w>>2]=c[(c[j>>2]|0)+112>>2];c[p>>2]=(c[w>>2]|0)+40+((c[v>>2]|
0)*396|0);c[s>>2]=c[h>>2];c[t>>2]=0;c[n>>2]=(c[v>>2]|0)==1&1;if(c[(c[j>
;>2]|0)+108>>2]&4|0?(d[(c[p>>2]|0)+212>>0]|0|0)==0:0){if((c[s>>2]|0)<0){c
[s>>2]=0-(c[h>>2]|0);c[t>>2]=1}if(c[n>>2]|0?!(c[(c[j>>2]|0)+108>>2]
x26;2|0):0)b=10;else b=8;do if((b|0)==8){if((c[n>>2]|0)==0?(c[(c[j>>2]|0)+108>>2]&1|0)==0:0){
b=10;break}c[m>>2]=c[s>>2];c[s>>2]=bm((c[p>>2]|0)+12|0,c[(c[p>>2]|0)+8>
x3e;2]|0,c[s>>2]|0)|0;if(c[n>>2]|0)if((c[s>>2]|0)>=64){c[s>>2]=(c[s>>2]|0
)+16&-64;break}else{c[s>>2]=64;break}h=c[s>>2]|0;if(c[(c[j>>2]|0)+108>>2]&8|0)
if((h|0)<64){c[s>>2]=64;break}else{c[s>>2]=(c[s>>2]|0)+32&-64;break}f=c[s>>2]|
0;if((h|0)<48){c[s>>2]=f+64>>1;break}h=c[s>>2]|0;if((f|0)>=128){c[s>>2]=h+32
x26;-64;break}c[s>>2]=h+22&-64;c[l>>2]=(c[s>>2]|0)-(c[m>>2]|0);if((c[l>>2
]|0)<0)c[l>>2]=0-(c[l>>2]|0);if((c[l>>2]|0)>=16?(c[s>>2]=c[m>>2],(c[
s>>2]|0)<48):0)c[s>>2]=(c[s>>2]|0)+64>>1}while(0);do if((b|0)==10?!((c[k>>
;2]&2|0)!=0&(c[n>>2]|0)!=0&(c[s>>2]|0)<192):0){h=c[s>>2]|0;if(c[o>>2
]&1|0){if((h|0)<80)c[s>>2]=64}else if((h|0)<56)c[s>>2]=56;if((c[(c[p>>2]|0)+8>
x3e;2]|0)>>>0>0){c[r>>2]=(c[s>>2]|0)-(c[(c[p>>2]|0)+12+4>>2]|0);if((
c[r>>2]|0)<0)c[r>>2]=0-(c[r>>2]|0);if((c[r>>2]|0)<40){w=c[(c[p>>2]|0
)+12+4>>2]|0;c[s>>2]=w;c[s>>2]=(c[s>>2]|0)<48?48:w;break}h=c[s>>2]|0;if((
c[s>>2]|0)>=192){c[s>>2]=h+32&-64;break}c[r>>2]=h&63;c[s>>2]=c[s>>
;2]&-64;h=c[r>>2]|0;if((c[r>>2]|0)<10){c[s>>2]=(c[s>>2]|0)+h;break}if((h|0)<
;32){c[s>>2]=(c[s>>2]|0)+10;break}if((c[r>>2]|0)<54){c[s>>2]=(c[s>>2]|0)+
54;break}else{c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);break}}}while(0);if(c[t>>2]|0)c[s>>
;2]=0-(c[s>>2]|0);c[q>>2]=c[s>>2];w=c[q>>2]|0;i=u;return w|0}c[q>>2]=c[h>
x3e;2];w=c[q>>2]|0;i=u;return w|0}function bm(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;o=i
;i=i+48|0;e=o+32|0;f=o+28|0;m=o+24|0;j=o+20|0;g=o+16|0;n=o+12|0;l=o+8|0;k=o+4|0;h=o;c[e>>2]=a;c[f>>2]=b;c[m
x3e;>2]=d;c[g>>2]=98;c[n>>2]=c[m>>2];c[j>>2]=0;while(1){if((c[j>>2]|0)>
;=(c[f>>2]|0))break;c[k>>2]=c[(c[e>>2]|0)+((c[j>>2]|0)*12|0)+4>>2];c[h>
x3e;2]=(c[m>>2]|0)-(c[k>>2]|0);if((c[h>>2]|0)<0)c[h>>2]=0-(c[h>>2]|0);if((
c[h>>2]|0)<(c[g>>2]|0)){c[g>>2]=c[h>>2];c[n>>2]=c[k>>2]}c[j>
;>2]=(c[j>>2]|0)+1}c[l>>2]=(c[n>>2]|0)+32&-64;f=c[m>>2]|0;e=c[l>>2]|
0;if((c[m>>2]|0)>=(c[n>>2]|0)){if((f|0)>=(e+48|0)){n=c[m>>2]|0;i=o;return n|0}c[m>
x3e;2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}else{if((f|0)<=(e-48|0)){n=c[m>>2]|0;i=o;return n|0
}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}return 0}function cm(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;c[h>>2]=c[h
x3e;>2];c[(c[f>>2]|0)+8>>2]=(c[(c[g>>2]|0)+8>>2]|0)+((c[(c[f>>2]|0)+4>
;>2]|0)-(c[(c[g>>2]|0)+4>>2]|0));i=e;return}function dm(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,q=0,r=0,s=0,t=0,u=0;q=i;i=i+64|0;u=q+52|0;s=q+48|0;t=q+44|0;r=q+40|0;p=q+36|0;o=q+32|0;f=q+28|0;m=q+24|0;h=q+20|0;
k=q+16|0;g=q+12|0;n=q+8|0;j=q+4|0;l=q;c[u>>2]=a;c[s>>2]=d;c[t>>2]=(c[u>>2]|0)+48+((c[s
x3e;>2]|0)*28|0);c[r>>2]=c[(c[t>>2]|0)+8>>2];c[p>>2]=(c[r>>2]|0)+((c[c[t
x3e;>2]>>2]|0)*52|0);a=(c[s>>2]|0)==0;c[o>>2]=c[r>>2];if(a){while(1){if((c[o>
x3e;2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[f>>2]=c[(c[o>>2]|0)+12
x3e;>2];a:do if(c[f>>2]|0){c[h>>2]=c[(c[o>>2]|0)+40>>2];c[k>>2]=c[(c[o>
;>2]|0)+44>>2];c[m>>2]=c[h>>2];while(1){c[(c[m>>2]|0)+16>>2]=c[(c[f>
x3e;2]|0)+8>>2];u=c[m>>2]|0;b[u>>1]=e[u>>1]|0|64;if((c[m>>2]|0)==(c[k>>
;2]|0))break a;c[m>>2]=c[(c[m>>2]|0)+32>>2]}}while(0);c[o>>2]=(c[o>>2]|0)+52}i
=q;return}else{while(1){if((c[o>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[g>
;>2]=c[(c[o>>2]|0)+12>>2];b:do if(c[g>>2]|0){c[j>>2]=c[(c[o>>2]|0)+40>
;>2];c[l>>2]=c[(c[o>>2]|0)+44>>2];c[n>>2]=c[j>>2];while(1){c[(c[n>
x3e;2]|0)+20>>2]=c[(c[g>>2]|0)+8>>2];u=c[n>>2]|0;b[u>>1]=e[u>>1]|0|128
;if((c[n>>2]|0)==(c[l>>2]|0))break b;c[n>>2]=c[(c[n>>2]|0)+32>>2]}}while(0);c[
o>>2]=(c[o>>2]|0)+52}i=q;return}}function em(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,q=
0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;z=i;i=i+96|0;B=z+80|0;g=z+76|0;f=z+72|0;w=z+68|0;A=z+64|0;n=z+60|0;m=z+56|0;x=z+52
|0;v=z+48|0;l=z+44|0;y=z+40|0;u=z+36|0;p=z+32|0;k=z+28|0;s=z+24|0;q=z+20|0;r=z+16|0;o=z+12|0;t=z+8|0;j=z+4|0;h=z;c[B>>
2]=a;c[g>>2]=d;c[f>>2]=c[(c[B>>2]|0)+32>>2];c[w>>2]=(c[f>>2]|0)+((c[(
c[B>>2]|0)+28>>2]|0)*40|0);c[A>>2]=(c[B>>2]|0)+48+((c[g>>2]|0)*28|0);c[n>
x3e;2]=c[(c[A>>2]|0)+20>>2];c[m>>2]=(c[n>>2]|0)+((c[(c[A>>2]|0)+12>>
2]|0)*48|0);if(!(c[g>>2]|0))c[x>>2]=64;else c[x>>2]=128;if((c[n>>2]|0)>>>
0>=(c[m>>2]|0)>>>0){i=z;return}c[v>>2]=c[f>>2];while(1){if((c[v>>2]|
0)>>>0>=(c[w>>2]|0)>>>0)break;do if(!(e[c[v>>2]>>1]&c[x>
;>2])){if(e[c[v>>2]>>1]&256|0?(e[c[v>>2]>>1]&512|0)==0:0)break;d=c[v>
;>2]|0;if((c[g>>2]|0)==1){c[y>>2]=b[d+14>>1];c[u>>2]=c[(c[v>>2]|0)+8>
;>2]}else{c[y>>2]=b[d+12>>1];c[u>>2]=c[(c[v>>2]|0)+4>>2]}c[p>>2
]=c[y>>2];c[l>>2]=c[n>>2];c[k>>2]=(b[c[l>>2]>>1]|0)-(c[y>>
2]|0);a:do if((c[k>>2]|0)>=0)c[y>>2]=(c[(c[l>>2]|0)+8>>2]|0)-((c[(c[l>>2]|
0)+4>>2]|0)-(c[u>>2]|0));else{c[l>>2]=(c[m>>2]|0)+-48;c[k>>2]=(c[y>>
2]|0)-(b[c[l>>2]>>1]|0);if((c[k>>2]|0)>=0){c[y>>2]=(c[(c[l>>2]|0)+8>
x3e;2]|0)+((c[u>>2]|0)-(c[(c[l>>2]|0)+4>>2]|0));break}c[s>>2]=0;c[q>>2]=((c[m
x3e;>2]|0)-(c[n>>2]|0)|0)/48|0;b:do if((c[q>>2]|0)<=8){c[t>>2]=0;while(1){if((c[t>
x3e;2]|0)>=(c[q>>2]|0))break;if((b[(c[n>>2]|0)+((c[t>>2]|0)*48|0)>>1]|0)>=(c[y
>>2]|0))break;c[t>>2]=(c[t>>2]|0)+1}d=c[t>>2]|0;if((b[(c[n>>2]|0)+((c[t>
x3e;2]|0)*48|0)>>1]|0)==(c[y>>2]|0)){c[y>>2]=c[(c[n>>2]|0)+(d*48|0)+8>>2];break
a}else{c[s>>2]=d;break}}else{while(1){if((c[s>>2]|0)>=(c[q>>2]|0))break b;c[r>>2]=(
c[q>>2]|0)+(c[s>>2]|0)>>1;c[l>>2]=(c[n>>2]|0)+((c[r>>2]|0)*48|0);c[o
>>2]=b[c[l>>2]>>1];if((c[y>>2]|0)<(c[o>>2]|0)){c[q>>2]=c[r>
;>2];continue}if((c[y>>2]|0)<=(c[o>>2]|0))break;c[s>>2]=(c[r>>2]|0)+1}c[y>
;>2]=c[(c[l>>2]|0)+8>>2];break a}while(0);c[j>>2]=(c[n>>2]|0)+((c[s>>2]|0
)*48|0)+-48;c[h>>2]=(c[n>>2]|0)+((c[s>>2]|0)*48|0);if(!(c[(c[j>>2]|0)+16>>2]|0
)){B=Vb((c[(c[h>>2]|0)+8>>2]|0)-(c[(c[j>>2]|0)+8>>2]|0)|0,(b[c[h>>2]>>
;1]|0)-(b[c[j>>2]>>1]|0)|0)|0;c[(c[j>>2]|0)+16>>2]=B}B=c[(c[j>>2]|0)+8>
x3e;2]|0;c[y>>2]=B+(Mb((c[p>>2]|0)-(b[c[j>>2]>>1]|0)|0,c[(c[j>>2]|0)+16>
x3e;2]|0)|0)}while(0);d=c[y>>2]|0;a=c[v>>2]|0;if(!(c[g>>2]|0))c[a+16>>2]=d;else c[a+20
x3e;>2]=d;B=c[v>>2]|0;b[B>>1]=e[B>>1]|c[x>>2]}while(0);c[v>>2]=(c[v>
x3e;2]|0)+40}i=z;return}function fm(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,s=0;r=i;i=i+48|0;s=
r+44|0;d=r+40|0;o=r+36|0;n=r+32|0;f=r+28|0;g=r+24|0;p=r+20|0;m=r+16|0;h=r+12|0;j=r+8|0;k=r+4|0;l=r;c[s>>2]=a;c[d>
x3e;2]=b;c[o>>2]=c[(c[s>>2]|0)+32>>2];c[n>>2]=(c[o>>2]|0)+((c[(c[s>>
2]|0)+28>>2]|0)*40|0);c[f>>2]=c[(c[s>>2]|0)+44>>2];c[g>>2]=(c[f>>2]|
0)+(c[(c[s>>2]|0)+40>>2]<<2);a:do if(!(c[d>>2]|0)){c[p>>2]=64;c[m>>2
]=c[o>>2];while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a;
c[(c[m>>2]|0)+24>>2]=c[(c[m>>2]|0)+16>>2];c[(c[m>>2]|0)+28>>2]=c[(c[
m>>2]|0)+4>>2];c[m>>2]=(c[m>>2]|0)+40}}else{c[p>>2]=128;c[m>>2]=c[o
x3e;>2];while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a;c[(c[m
x3e;>2]|0)+24>>2]=c[(c[m>>2]|0)+20>>2];c[(c[m>>2]|0)+28>>2]=c[(c[m>
x3e;2]|0)+8>>2];c[m>>2]=(c[m>>2]|0)+40}}while(0);c[m>>2]=c[o>>2];while(1){if((
c[f>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[m>>2]=c[c[f>>
2]>>2];c[h>>2]=c[(c[m>>2]|0)+36>>2];c[j>>2]=c[m>>2];while(1){if((c[m
>>2]|0)>>>0>(c[h>>2]|0)>>>0)break;b=c[m>>2]|0;if((e[c[m>
x3e;2]>>1]|0)&c[p>>2]|0){q=14;break}c[m>>2]=b+40}do if((q|0)==14){q=0;c[k>>2]=b;c[l
>>2]=c[m>>2];b:while(1){if((c[m>>2]|0)>>>0<(c[h>>2]|0)>>
x3e;0)b=((e[(c[m>>2]|0)+40>>1]|0)&c[p>>2]|0)!=0;else b=0;a=c[m>>2]|0;if(b){c[m>
;>2]=a+40;continue}c[l>>2]=a;c[m>>2]=(c[m>>2]|0)+40;while(1){if((c[m>>2]|0)>
x3e;>0>(c[h>>2]|0)>>>0)break b;if((e[c[m>>2]>>1]|0)&c[p>>2
]|0)break;c[m>>2]=(c[m>>2]|0)+40}gm((c[l>>2]|0)+40|0,(c[m>>2]|0)+-40|0,c[l>>2]|
0,c[m>>2]|0)}if((c[l>>2]|0)==(c[k>>2]|0)){hm(c[j>>2]|0,c[h>>2]|0,c[k>>
;2]|0);break}if((c[l>>2]|0)>>>0<(c[h>>2]|0)>>>0)gm((c[l>>2]|0)+
40|0,c[h>>2]|0,c[l>>2]|0,c[k>>2]|0);if((c[k>>2]|0)>>>0>(c[o>>
;2]|0)>>>0)gm(c[j>>2]|0,(c[k>>2]|0)+-40|0,c[l>>2]|0,c[k>>2]|0)}while(0);c
[f>>2]=(c[f>>2]|0)+4}s=(c[d>>2]|0)==0;c[m>>2]=c[o>>2];if(s){while(1){if((c[m
x3e;>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[(c[m>>2]|0)+16>>2]=
c[(c[m>>2]|0)+24>>2];c[m>>2]=(c[m>>2]|0)+40}i=r;return}else{while(1){if((c[m>>
2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[(c[m>>2]|0)+20>>2]=c[(c[m>
;>2]|0)+24>>2];c[m>>2]=(c[m>>2]|0)+40}i=r;return}}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;q=i;i=i+48|0;f=q+36|0;g=q+32|0;h=q+28|0;j=q+24|0;m=q+20|0;n=q+16|0;o=q+12|0;p=
q+8|0;k=q+4|0;l=q;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[o>>2]=c[(c[h>
x3e;2]|0)+28>>2];c[p>>2]=c[(c[j>>2]|0)+28>>2];c[k>>2]=(c[(c[h>>2]|0)+
24>>2]|0)-(c[o>>2]|0);c[l>>2]=(c[(c[j>>2]|0)+24>>2]|0)-(c[p>>2]|0);if
((c[f>>2]|0)>>>0>(c[g>>2]|0)>>>0){i=q;return}if((c[o>>2]|0)==(c
[p>>2]|0)){c[m>>2]=c[f>>2];while(1){if((c[m>>2]|0)>>>0>(c[g>>
;2]|0)>>>0)break;c[n>>2]=c[(c[m>>2]|0)+28>>2];if((c[n>>2]|0)<=(c[o
x3e;>2]|0))c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);else c[n>>2]=(c[n>>2]|0)+(c[l
x3e;>2]|0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>2]|0)+40}i=q;return
}e=(c[o>>2]|0)<(c[p>>2]|0);c[m>>2]=c[f>>2];if(e){while(1){if((c[m>>2]|0)
x3e;>>0>(c[g>>2]|0)>>>0)break;c[n>>2]=c[(c[m>>2]|0)+28>>2];
do if((c[n>>2]|0)>(c[o>>2]|0))if((c[n>>2]|0)>=(c[p>>2]|0)){c[n>>2]=(
c[n>>2]|0)+(c[l>>2]|0);break}else{e=c[(c[h>>2]|0)+24>>2]|0;c[n>>2]=e+(xb((c[n
x3e;>2]|0)-(c[o>>2]|0)|0,(c[(c[j>>2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+24>>2]|0
)|0,(c[p>>2]|0)-(c[o>>2]|0)|0)|0);break}else c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);while
(0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>2]|0)+40}i=q;return}else{while(
1){if((c[m>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[n>>2]=c[(c[m>
;>2]|0)+28>>2];do if((c[n>>2]|0)>(c[p>>2]|0))if((c[n>>2]|0)>=(c[o>
x3e;2]|0)){c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);break}else{e=c[(c[h>>2]|0)+24>>2]|0
;c[n>>2]=e+(xb((c[n>>2]|0)-(c[o>>2]|0)|0,(c[(c[j>>2]|0)+24>>2]|0)-(c[(c[h>
;>2]|0)+24>>2]|0)|0,(c[p>>2]|0)-(c[o>>2]|0)|0)|0);break}else c[n>>2]=(c[n>>
;2]|0)+(c[l>>2]|0);while(0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>
;2]|0)+40}i=q;return}}function hm(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;e=k+16|0;f=k+12|0;g=k+8|0;j=
k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=(c[(c[g>>2]|0)+24>>2
]|0)-(c[(c[g>>2]|0)+28>>2]|0);if(!(c[h>>2]|0)){i=k;return}c[j>>2]=c[e>>2];while
(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[(c[j>>2]|0)+24
x3e;>2]=(c[(c[j>>2]|0)+28>>2]|0)+(c[h>>2]|0);c[j>>2]=(c[j>>2]|0)+40}c[j
x3e;>2]=(c[g>>2]|0)+40;while(1){if((c[j>>2]|0)>>>0>(c[f>>2]|0)>>
;>0)break;c[(c[j>>2]|0)+24>>2]=(c[(c[j>>2]|0)+28>>2]|0)+(c[h>>2]|0);c[j
x3e;>2]=(c[j>>2]|0)+40}i=k;return}function im(b,d){b=b|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;m=k+20
|0;l=k+16|0;g=k+12|0;f=k+8|0;j=k+4|0;h=k;c[m>>2]=b;c[l>>2]=d;c[g>>2]=c[(c[m>>2]|0)+32>
;>2];c[f>>2]=(c[g>>2]|0)+((c[(c[m>>2]|0)+28>>2]|0)*40|0);c[j>>2]=c[(c[l
x3e;>2]|0)+4>>2];c[h>>2]=c[(c[l>>2]|0)+8>>2];while(1){if((c[g>>2]|0)>
;>>0>=(c[f>>2]|0)>>>0)break;c[c[j>>2]>>2]=c[(c[g>>2]|0)+16
>>2];c[(c[j>>2]|0)+4>>2]=c[(c[g>>2]|0)+20>>2];do if(!((e[c[g>>2]>
;>1]|0)&1|0)){b=c[h>>2]|0;if((e[c[g>>2]>>1]|0)&2|0){a[b>>0]=2;break}else{
a[b>>0]=1;break}}else a[c[h>>2]>>0]=0;while(0);c[g>>2]=(c[g>>2]|0)+40;c[j>
;>2]=(c[j>>2]|0)+8;c[h>>2]=(c[h>>2]|0)+1}i=k;return}function jm(a,b){a=a|0;b=b|0;var d=0,f=0,
g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[f>>2]|0)+92>
;>2];c[(c[d>>2]|0)+36>>2]=e[(c[f>>2]|0)+68>>1];if(Id(c[f>>2]|0,1970170211
)|0){c[(c[f>>2]|0)+92>>2]=0;a=c[f>>2]|0;g=c[g>>2]|0;Jd(a,g)|0;i=h;return 0}else{Gl(c[d
x3e;>2]|0,c[f>>2]|0,3e4);Rl(c[d>>2]|0,c[f>>2]|0);a=c[f>>2]|0;g=c[g>>2]|0;
Jd(a,g)|0;i=h;return 0}return 0}function km(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)+4|0;a=c[e>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>
;>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2];c[b+16>>2]=c[a+16>>
;2];c[b+20>>2]=c[a+20>>2];c[b+24>>2]=c[a+24>>2];lm(c[f>>2]|0,c[e>>2]|
0,0);lm(c[f>>2]|0,c[e>>2]|0,1);i=d;return}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;g=i;i
=i+16|0;j=g+12|0;e=g+8|0;h=g+4|0;f=g;c[j>>2]=a;c[e>>2]=b;c[h>>2]=d;c[f>>2]=(c[j>>
;2]|0)+40+((c[h>>2]|0)*396|0);d=c[e>>2]|0;if(!(c[h>>2]|0)){c[c[f>>2]>>2]=c[d+4
>>2];c[(c[f>>2]|0)+4>>2]=c[(c[e>>2]|0)+12>>2];i=g;return}else{c[c[f>>
;2]>>2]=c[d+8>>2];c[(c[f>>2]|0)+4>>2]=c[(c[e>>2]|0)+16>>2];i=g;return
}}function mm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;j=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=
a;c[j>>2]=b;Dl(c[d>>2]|0,c[j>>2]|0);c[(c[d>>2]|0)+4>>2]=c[(c[j>>2]|0
)+40>>2];c[(c[d>>2]|0)+8>>2]=c[(c[j>>2]|0)+40+4>>2];c[(c[d>>2]|0)+12
>>2]=c[(c[j>>2]|0)+40+396>>2];c[(c[d>>2]|0)+16>>2]=c[(c[j>>2]|0)+40+
396+4>>2];c[e>>2]=c[(c[j>>2]|0)+4+20>>2];c[g>>2]=c[(c[d>>2]|0)+104
x3e;>2];c[f>>2]=0;if((c[e>>2]|0)==2|(c[e>>2]|0)==3)c[f>>2]=c[f>>2]|1;if((
c[e>>2]|0)==2|(c[e>>2]|0)==4)c[f>>2]=c[f>>2]|2;if((c[e>>2]|0)!=1)c[f>>
;2]=c[f>>2]|4;if((c[e>>2]|0)!=2){j=c[g>>2]|0;j=j|4;c[g>>2]=j;j=c[g>>2]|0;g=c[d
>>2]|0;g=g+104|0;c[g>>2]=j;g=c[f>>2]|0;j=c[d>>2]|0;j=j+108|0;c[j>>2]=g;i=h;return
0}c[f>>2]=c[f>>2]|8;j=c[g>>2]|0;j=j|4;c[g>>2]=j;j=c[g>>2]|0;g=c[d>>
2]|0;g=g+104|0;c[g>>2]=j;g=c[f>>2]|0;j=c[d>>2]|0;j=j+108|0;c[j>>2]=g;i=h;return 0}function
nm(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+16|0;f=j+12|0;k=j+8|0;h=j+4|0;g=j;c[e>>2]=a;
c[f>>2]=b;c[k>>2]=d;c[k>>2]=c[k>>2];c[h>>2]=Il(c[e>>2]|0,c[f>
x3e;2]|0)|0;if(c[h>>2]|0){k=c[h>>2]|0;i=j;return k|0}if((c[(c[e>>2]|0)+104>>2]&1|0)==
0?(c[h>>2]=om(c[e>>2]|0,0)|0,c[h>>2]|0):0){k=c[h>>2]|0;i=j;return k|0}if((c[(c[e>
x3e;2]|0)+104>>2]&2|0)==0?(c[h>>2]=om(c[e>>2]|0,1)|0,c[h>>2]|0):0){k=c[h>>
;2]|0;i=j;return k|0}c[g>>2]=0;while(1){if((c[g>>2]|0)>=2)break;if((c[g>>2]|0)==0?!(c[(c[e>
;>2]|0)+104>>2]&1|0):0)a=12;else a=10;if(((a|0)==10?(a=0,(c[g>>2]|0)==1):0)?(c[(c[e>>2]|
0)+104>>2]&2|0)==0:0)a=12;if((a|0)==12){sm(c[e>>2]|0,c[g>>2]|0);ym(c[e>>2]|0,c[g>
;>2]|0);em(c[e>>2]|0,c[g>>2]|0);fm(c[e>>2]|0,c[g>>2]|0)}c[g>>2]=(c[g>
;>2]|0)+1}im(c[e>>2]|0,c[f>>2]|0);k=c[h>>2]|0;i=j;return k|0}function om(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=pm(c[d>>2]|
0,c[e>>2]|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}qm(c[d>>2]|0,c[e>>2]|0
);c[f>>2]=rm(c[d>>2]|0,c[e>>2]|0)|0;a=c[f>>2]|0;i=g;return a|0}function pm(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,q=0,r=0,s=0,t=0;q=i;i=i+48|0;g=q+44|0;s=q+40|0;r=q+36|0;t=q+32|0;p=q+28|0;o=q+24|0;h
=q+20|0;n=q+16|0;m=q+12|0;l=q+8|0;j=q+4|0;k=q;c[s>>2]=b;c[r>>2]=f;c[t>>2]=(c[s>>2]|0)+48
+((c[r>>2]|0)*28|0);c[p>>2]=c[(c[t>>2]|0)+8>>2];c[o>>2]=(c[p>>2]|0)+((
c[c[t>>2]>>2]|0)*52|0);c[h>>2]=Kl(c[s>>2]|0,c[r>>2]|0)|0;if(c[h>>2]|
0){c[g>>2]=c[h>>2];t=c[g>>2]|0;i=q;return t|0}c[n>>2]=c[p>>2];while(1){if((c[n
>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[m>>2]=c[(c[n>>2]|
0)+40>>2];c[l>>2]=c[(c[n>>2]|0)+44>>2];c[j>>2]=(e[c[m>>2]>>
;1]|0)&3;t=c[n>>2]|0;a[t>>0]=(d[t>>0]|0)&-2;while(1){if((c[m>>2]|0)==(c[l>
;>2]|0))break;c[m>>2]=c[(c[m>>2]|0)+32>>2];c[k>>2]=(e[c[m>>2]>>
1]|0)&3;if(!((c[j>>2]|0)!=0|(c[k>>2]|0)!=0))break;if((c[m>>2]|0)==(c[l>>2]|0)){t=c[
n>>2]|0;a[t>>0]=d[t>>0]|0|1}c[j>>2]=c[k>>2]}c[n>>2]=(c[n>>
2]|0)+52}c[g>>2]=0;t=c[g>>2]|0;i=q;return t|0}function qm(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;v=i;i=i+80|0;x=v+68|0;w=v+64|0;y=v+60|0;u=v+56|0;t=v+52|0;n=v+48|0;r=v+44|0;s=v+40
|0;j=v+36|0;g=v+32|0;f=v+28|0;p=v+24|0;o=v+20|0;h=v+16|0;l=v+12|0;m=v+8|0;q=v+4|0;k=v;c[x>>2]=d;c[w>>2]=e;c[
y>>2]=(c[x>>2]|0)+48+((c[w>>2]|0)*28|0);c[u>>2]=c[(c[y>>2]|0)+8>>2];
c[t>>2]=(c[u>>2]|0)+((c[c[y>>2]>>2]|0)*52|0);c[n>>2]=c[(c[y>>2]|0)+24
>>2];c[j>>2]=(c[(c[(c[x>>2]|0)+112>>2]|0)+36>>2]<<3|0)/2048|0;e=c[x
x3e;>2]|0;if(!(c[w>>2]|0))e=c[e+4>>2]|0;else e=c[e+12>>2]|0;c[g>>2]=e;c[g>>
;2]=Vb(192,c[g>>2]|0)|0;c[r>>2]=c[u>>2];while(1){if((c[r>>2]|0)>>>0>=(
c[t>>2]|0)>>>0)break;a:do if((c[(c[r>>2]|0)+40>>2]|0)!=(c[(c[r>>2]|0)+44
x3e;>2]|0)?(a[(c[r>>2]|0)+1>>0]|0)==(c[n>>2]|0):0){c[s>>2]=c[u>>2];while(
1){if((c[s>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a;do if(((c[s>>2]|
0)!=(c[r>>2]|0)?((a[(c[r>>2]|0)+1>>0]|0)+(a[(c[s>>2]|0)+1>>0]|0)|0)==0:0)?(c[f
>>2]=(b[(c[s>>2]|0)+2>>1]|0)-(b[(c[r>>2]|0)+2>>1]|0),(c[f>>2]|0)>
;=0):0){c[p>>2]=b[(c[r>>2]|0)+4>>1];c[o>>2]=b[(c[r>>2]|0)+6>>1];if((
c[p>>2]|0)<(b[(c[s>>2]|0)+4>>1]|0))c[p>>2]=b[(c[s>>2]|0)+4>>1];
if((c[o>>2]|0)>(b[(c[s>>2]|0)+6>>1]|0))c[o>>2]=b[(c[s>>2]|0)+6>>
;1];c[h>>2]=(c[o>>2]|0)-(c[p>>2]|0);if((c[h>>2]|0)>=(c[j>>2]|0)){do if((c
[f>>2]<<3|0)<((c[(c[r>>2]|0)+32>>2]|0)*9|0)){if((c[f>>2]<<3|0)
x3e;=((c[(c[r>>2]|0)+32>>2]|0)*7|0)?(c[(c[r>>2]|0)+36>>2]|0)>=(c[h>>2]|0):
0)break;c[(c[r>>2]|0)+32>>2]=c[f>>2];c[(c[r>>2]|0)+36>>2]=c[h>>2];c[(
c[r>>2]|0)+20>>2]=c[s>>2]}while(0);if((c[f>>2]<<3|0)<((c[(c[s>>
2]|0)+32>>2]|0)*9|0)){if((c[f>>2]<<3|0)>=((c[(c[s>>2]|0)+32>>2]|0)*7|0)?(
c[(c[s>>2]|0)+36>>2]|0)>=(c[h>>2]|0):0)break;c[(c[s>>2]|0)+32>>2]=c[f>
;>2];c[(c[s>>2]|0)+36>>2]=c[h>>2];c[(c[s>>2]|0)+20>>2]=c[r>>2]}}}
while(0);c[s>>2]=(c[s>>2]|0)+52}}while(0);c[r>>2]=(c[r>>2]|0)+52}c[r>>2]=c[u
x3e;>2];while(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[l>
x3e;2]=c[(c[r>>2]|0)+20>>2];b:do if(((c[l>>2]|0?(c[(c[l>>2]|0)+20>>2]|0)==(c[r
>>2]|0):0)?(b[(c[l>>2]|0)+2>>1]|0)>(b[(c[r>>2]|0)+2>>1]|0):0)?(c[(c[r>
;>2]|0)+32>>2]|0)<(c[g>>2]|0):0){c[s>>2]=c[u>>2];c:while(1){if((c[s>>
;2]|0)>>>0>=(c[t>>2]|0)>>>0)break b;d:do if(((((b[(c[s>>2]|0)+2>>
;1]|0)<=(b[(c[r>>2]|0)+2>>1]|0)?(c[r>>2]|0)!=(c[s>>2]|0):0)?(c[m>>2]=c[(c
[s>>2]|0)+20>>2],c[m>>2]|0):0)?(c[(c[m>>2]|0)+20>>2]|0)==(c[s>>2]|0):
0)?(b[(c[m>>2]|0)+2>>1]|0)>=(b[(c[l>>2]|0)+2>>1]|0):0){if((b[(c[r>>2]|0)+
2>>1]|0)==(b[(c[s>>2]|0)+2>>1]|0)?(b[(c[l>>2]|0)+2>>1]|0)==(b[(c[m>>
2]|0)+2>>1]|0):0)break;if((c[(c[s>>2]|0)+32>>2]|0)>(c[(c[r>>2]|0)+32>>2]|
0)?(c[(c[r>>2]|0)+32>>2]<<2|0)>(c[(c[s>>2]|0)+32>>2]|0):0){if((c[(c[r>
;>2]|0)+36>>2]|0)<((c[(c[s>>2]|0)+36>>2]|0)*3|0))break c;c[q>>2]=c[u>>
;2];while(1){if((c[q>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break d;c[k>>2
]=c[(c[q>>2]|0)+20>>2];do if((c[k>>2]|0)==(c[s>>2]|0)){c[(c[q>>2]|0)+20>
x3e;2]=0;c[(c[q>>2]|0)+24>>2]=c[l>>2]}else{if((c[k>>2]|0)!=(c[m>>2]|0))break;c
[(c[q>>2]|0)+20>>2]=0;c[(c[q>>2]|0)+24>>2]=c[r>>2]}while(0);c[q>>2]=(
c[q>>2]|0)+52}}}while(0);c[s>>2]=(c[s>>2]|0)+52}c[(c[l>>2]|0)+20>>2]=0;c[(c[r
x3e;>2]|0)+20>>2]=0}while(0);c[r>>2]=(c[r>>2]|0)+52}c[r>>2]=c[u>>2];while
(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[s>>2]=c[(c[r>
;>2]|0)+20>>2];do if(c[s>>2]|0?(y=(c[s>>2]|0)+28|0,c[y>>2]=(c[y>>2]|0)+1,(
c[(c[s>>2]|0)+20>>2]|0)!=(c[r>>2]|0)):0){c[(c[r>>2]|0)+20>>2]=0;if((c[(c[s>
;>2]|0)+32>>2]|0)>=(c[g>>2]|0)?(c[(c[r>>2]|0)+32>>2]|0)>=(c[(c[s>>
;2]|0)+32>>2]<<2|0):0){y=(c[s>>2]|0)+28|0;c[y>>2]=(c[y>>2]|0)+-1;break}c[(c[r
x3e;>2]|0)+24>>2]=c[(c[s>>2]|0)+20>>2]}while(0);c[r>>2]=(c[r>>2]|0)+52}i=
v;return}
function Is(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=a+4|0;o=c[n>>2]|0;d=o&-8;k=a+d
|0;i=c[18404]|0;e=o&3;if(!((e|0)!=1&a>>>0>=i>>>0&a>>>0<k
x3e;>>0))ya();f=c[k+4>>2]|0;if(!(f&1))ya();if(!e){if(b>>>0<256){a=0;return a|0}if(d
>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[18520]<<1>>>0:0
)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a
|0;m=a+b|0;c[n>>2]=o&1|b|2;c[m+4>>2]=d|3;b=m+d+4|0;c[b>>2]=c[b>>2]|1;Js(m,d);return
a|0}if((k|0)==(c[18406]|0)){d=(c[18403]|0)+d|0;if(d>>>0<=b>>>0){a=0;return a|0}m=d-b|0;l=a+b
|0;c[n>>2]=o&1|b|2;c[l+4>>2]=m|1;c[18406]=l;c[18403]=m;return a|0}if((k|0)==(c[18405]|0)){e=(c[18402]|0
)+d|0;if(e>>>0<b>>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){e=a+b|0;m=e+d|0
;c[n>>2]=o&1|b|2;c[e+4>>2]=d|1;c[m>>2]=d;b=m+4|0;c[b>>2]=c[b>>2]&-2}
else{c[n>>2]=o&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[18402]=d;c[18405]=e;return a|0}if(
f&2|0){a=0;return a|0}l=(f&-8)+d|0;if(l>>>0<b>>>0){a=0;return a|0}m=l-b|0;g=f>
x3e;>3;do if(f>>>0>=256){h=c[k+24>>2]|0;f=c[k+12>>2]|0;do if((f|0)==(k|0)){e=k+16|0
;f=e+4|0;d=c[f>>2]|0;if(!d){d=c[e>>2]|0;if(!d){j=0;break}}else e=f;while(1){f=d+20|0;g=c[f>>2]|0;if
(g|0){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0<i>>>
0)ya();else{c[e>>2]=0;j=d;break}}else{g=c[k+8>>2]|0;if(g>>>0<i>>>0)ya();d
=g+12|0;if((c[d>>2]|0)!=(k|0))ya();e=f+8|0;if((c[e>>2]|0)==(k|0)){c[d>>2]=f;c[e>>2]=g;j=
f;break}else ya()}while(0);if(h|0){d=c[k+28>>2]|0;e=73904+(d<<2)|0;if((k|0)==(c[e>>2]|0)){c[e>
;>2]=j;if(!j){c[18401]=c[18401]&~(1<<d);break}}else{if(h>>>0<(c[18404]|0)>>>
;0)ya();d=h+16|0;if((c[d>>2]|0)==(k|0))c[d>>2]=j;else c[h+20>>2]=j;if(!j)break}f=c[18404]|0;if(j
x3e;>>0<f>>>0)ya();c[j+24>>2]=h;d=k+16|0;e=c[d>>2]|0;do if(e|0)if(e>>
;>0<f>>>0)ya();else{c[j+16>>2]=e;c[e+24>>2]=j;break}while(0);d=c[d+4>>2]|
0;if(d|0)if(d>>>0<(c[18404]|0)>>>0)ya();else{c[j+20>>2]=d;c[d+24>>2]=j;break
}}}else{e=c[k+8>>2]|0;f=c[k+12>>2]|0;d=73640+(g<<1<<2)|0;if((e|0)!=(d|0)){if(e>>
;>0<i>>>0)ya();if((c[e+12>>2]|0)!=(k|0))ya()}if((f|0)==(e|0)){c[18400]=c[18400]&~(1<
;<g);break}if((f|0)!=(d|0)){if(f>>>0<i>>>0)ya();d=f+8|0;if((c[d>>2]|0)==(k|0))
h=d;else ya()}else h=f+8|0;c[e+12>>2]=f;c[h>>2]=e}while(0);if(m>>>0<16){c[n>>2
]=l|o&1|2;b=a+l+4|0;c[b>>2]=c[b>>2]|1;return a|0}else{l=a+b|0;c[n>>2]=o&1|b|2;c[l+4>
;>2]=m|3;b=l+m+4|0;c[b>>2]=c[b>>2]|1;Js(l,m);return a|0}return 0}function Js(a,b){a=a|0;b=b|0;var d=0,e
=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;
if(!(d&3))return;l=a+(0-f)|0;k=f+b|0;i=c[18404]|0;if(l>>>0<i>>>0)ya();if((l|0)==(c[18405
]|0)){a=o+4|0;d=c[a>>2]|0;if((d&3|0)!=3){r=l;g=k;break}c[18402]=k;c[a>>2]=d&-2;c[l+4>>2]=
k|1;c[l+k>>2]=k;return}e=f>>>3;if(f>>>0<256){a=c[l+8>>2]|0;b=c[l+12>
x3e;2]|0;d=73640+(e<<1<<2)|0;if((a|0)!=(d|0)){if(a>>>0<i>>>0)ya();if((c[a
+12>>2]|0)!=(l|0))ya()}if((b|0)==(a|0)){c[18400]=c[18400]&~(1<<e);r=l;g=k;break}if((b|0)!=(d|0)){if(b
x3e;>>0<i>>>0)ya();d=b+8|0;if((c[d>>2]|0)==(l|0))h=d;else ya()}else h=b+8|0;c[a+12>
x3e;2]=b;c[h>>2]=a;r=l;g=k;break}f=c[l+24>>2]|0;b=c[l+12>>2]|0;do if((b|0)==(l|0)){a=l+16|0;b=a+4|
0;d=c[b>>2]|0;if(!d){d=c[a>>2]|0;if(!d){j=0;break}}else a=b;while(1){b=d+20|0;e=c[b>>2]|0;if(e|0){
d=e;a=b;continue}b=d+16|0;e=c[b>>2]|0;if(!e)break;else{d=e;a=b}}if(a>>>0<i>>>0)ya();
else{c[a>>2]=0;j=d;break}}else{e=c[l+8>>2]|0;if(e>>>0<i>>>0)ya();d=e+12|0
;if((c[d>>2]|0)!=(l|0))ya();a=b+8|0;if((c[a>>2]|0)==(l|0)){c[d>>2]=b;c[a>>2]=e;j=b;break
}else ya()}while(0);if(f){d=c[l+28>>2]|0;a=73904+(d<<2)|0;if((l|0)==(c[a>>2]|0)){c[a>>2]=
j;if(!j){c[18401]=c[18401]&~(1<<d);r=l;g=k;break}}else{if(f>>>0<(c[18404]|0)>>>
;0)ya();d=f+16|0;if((c[d>>2]|0)==(l|0))c[d>>2]=j;else c[f+20>>2]=j;if(!j){r=l;g=k;break}}b=c[18404
]|0;if(j>>>0<b>>>0)ya();c[j+24>>2]=f;d=l+16|0;a=c[d>>2]|0;do if(a|0)if(a
x3e;>>0<b>>>0)ya();else{c[j+16>>2]=a;c[a+24>>2]=j;break}while(0);d=c[d+4>
x3e;2]|0;if(d)if(d>>>0<(c[18404]|0)>>>0)ya();else{c[j+20>>2]=d;c[d+24>>2]=
j;r=l;g=k;break}else{r=l;g=k}}else{r=l;g=k}}else{r=a;g=b}while(0);h=c[18404]|0;if(o>>>0<h>>>0
)ya();d=o+4|0;a=c[d>>2]|0;if(!(a&2)){if((o|0)==(c[18406]|0)){q=(c[18403]|0)+g|0;c[18403]=q;c[18406]=r;c[r+4>
x3e;2]=q|1;if((r|0)!=(c[18405]|0))return;c[18405]=0;c[18402]=0;return}if((o|0)==(c[18405]|0)){q=(c[18402]|0)+g|0;c[18402]=q;c[18405
]=r;c[r+4>>2]=q|1;c[r+q>>2]=q;return}g=(a&-8)+g|0;e=a>>>3;do if(a>>>0>
;=256){f=c[o+24>>2]|0;b=c[o+12>>2]|0;do if((b|0)==(o|0)){a=o+16|0;b=a+4|0;d=c[b>>2]|0;if(!d){d=c[a
>>2]|0;if(!d){n=0;break}}else a=b;while(1){b=d+20|0;e=c[b>>2]|0;if(e|0){d=e;a=b;continue}b=d+16|0;e=c[b>
;>2]|0;if(!e)break;else{d=e;a=b}}if(a>>>0<h>>>0)ya();else{c[a>>2]=0;n=d;break}}
else{e=c[o+8>>2]|0;if(e>>>0<h>>>0)ya();d=e+12|0;if((c[d>>2]|0)!=(o|0))ya();
a=b+8|0;if((c[a>>2]|0)==(o|0)){c[d>>2]=b;c[a>>2]=e;n=b;break}else ya()}while(0);if(f|0){d=c[o+28
x3e;>2]|0;a=73904+(d<<2)|0;if((o|0)==(c[a>>2]|0)){c[a>>2]=n;if(!n){c[18401]=c[18401]&~(1
<<d);break}}else{if(f>>>0<(c[18404]|0)>>>0)ya();d=f+16|0;if((c[d>>2]|0)==(
o|0))c[d>>2]=n;else c[f+20>>2]=n;if(!n)break}b=c[18404]|0;if(n>>>0<b>>>0)
ya();c[n+24>>2]=f;d=o+16|0;a=c[d>>2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else
{c[n+16>>2]=a;c[a+24>>2]=n;break}while(0);d=c[d+4>>2]|0;if(d|0)if(d>>>0<(c[18404
]|0)>>>0)ya();else{c[n+20>>2]=d;c[d+24>>2]=n;break}}}else{a=c[o+8>>2]|0;b=c[o+12>
;>2]|0;d=73640+(e<<1<<2)|0;if((a|0)!=(d|0)){if(a>>>0<h>>>0)ya();if((
c[a+12>>2]|0)!=(o|0))ya()}if((b|0)==(a|0)){c[18400]=c[18400]&~(1<<e);break}if((b|0)!=(d|0)){if(b>
x3e;>0<h>>>0)ya();d=b+8|0;if((c[d>>2]|0)==(o|0))m=d;else ya()}else m=b+8|0;c[a+12>>
2]=b;c[m>>2]=a}while(0);c[r+4>>2]=g|1;c[r+g>>2]=g;if((r|0)==(c[18405]|0)){c[18402]=g;return}}else{
c[d>>2]=a&-2;c[r+4>>2]=g|1;c[r+g>>2]=g}d=g>>>3;if(g>>>0<256
){b=73640+(d<<1<<2)|0;a=c[18400]|0;d=1<<d;if(a&d){d=b+8|0;a=c[d>>2]|0;if(a>>
;>0<(c[18404]|0)>>>0)ya();else{p=d;q=a}}else{c[18400]=a|d;p=b+8|0;q=b}c[p>>2]=r;c[q+12>
x3e;2]=r;c[r+8>>2]=q;c[r+12>>2]=b;return}d=g>>>8;if(d)if(g>>>0>16777215)b
=31;else{p=(d+1048320|0)>>>16&8;q=d<<p;o=(q+520192|0)>>>16&4;q=q<<o;
b=(q+245760|0)>>>16&2;b=14-(o|p|b)+(q<<b>>>15)|0;b=g>>>(b+7|0)&
1|b<<1}else b=0;e=73904+(b<<2)|0;c[r+28>>2]=b;c[r+20>>2]=0;c[r+16>>2]=0;d=c[18401
]|0;a=1<<b;if(!(d&a)){c[18401]=d|a;c[e>>2]=r;c[r+24>>2]=e;c[r+12>>2]=r;c[r+8>
x3e;2]=r;return}f=g<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]
x26;-8|0)==(g|0)){b=d;e=127;break}a=d+16+(f>>>31<<2)|0;b=c[a>>2]|0;if(!b){e=124;break}else{f=
f<<1;d=b}}if((e|0)==124){if(a>>>0<(c[18404]|0)>>>0)ya();c[a>>2]=r;c[r+24
x3e;>2]=d;c[r+12>>2]=r;c[r+8>>2]=r;return}else if((e|0)==127){d=b+8|0;a=c[d>>2]|0;q=c[18404]|
0;if(!(a>>>0>=q>>>0&b>>>0>=q>>>0))ya();c[a+12>
x3e;2]=r;c[d>>2]=r;c[r+8>>2]=a;c[r+12>>2]=b;c[r+24>>2]=0;return}}function Ks(){}function
Ls(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (C=d,a-c
>>>0|0)|0}function Ms(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (C=b+d+(c>>>
;0<a>>>0|0)>>>0,c|0)|0}function Ns(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;h=b&3;i=d|d<<8|d<<16|d<<24;g=f&~3;if(h){h=b+4-h|0;while((b|0)
x3c;(h|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(g|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(f|0)){a[b>
x3e;0]=d;b=b+1|0}return b-e|0}function Os(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>>c;return a>>
x3e;c|(b&(1<<c)-1)<<32-c}C=0;return b>>>c-32|0}function Ps(a,b,c){a=a|0;b=b|0;c=c|0;if((
c|0)<32){C=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}C=a<
x3c;c-32;return 0}function Qs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;p=p+1|0;c[a>>2]=p;while((f|0)<(e|0)){if(!(
c[d+(f<<3)>>2]|0)){c[d+(f<<3)>>2]=p;c[d+((f<<3)+4)>>2]=b;c[d+((f<
;<3)+8)>>2]=0;C=e;return d|0}f=f+1|0}e=e*2|0;d=Hs(d|0,8*(e+1|0)|0)|0;d=Qs(a|0,b|0,d|0,e|0)|0;C=e;return d|0}function
Rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;while((f|0)<(d|0)){e=c[b+(f<<3)>>2]|0;if(!e)break;if((e|0)==(a
|0))return c[b+((f<<3)+4)>>2]|0;f=f+1|0}return 0}function Ss(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=
4096)return Ea(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if(!e)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 Ts(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 Ss(b,c,d)|0;return b|0}function Us(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>c;return a>
;>>c|(b&(1<<c)-1)<<32-c}C=(b|0)<0?-1:0;return b>>c-32|0}function Vs(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 Ws(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=_(e,f)|0;d=a>>
;>16;a=(c>>>16)+(_(e,d)|0)|0;e=b>>>16;b=_(e,f)|0;return (C=(a>>>16)+(_(e,d)|0)+(((
a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Xs(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)<
x3c;1;h=Ls(j^a|0,i^b|0,j|0,i|0)|0;g=C;a=f^j;b=e^i;return Ls((at(h,g,Ls(f^c|0,e^d|0,f|0,e|0)|0,C,0)|0)^a|0,C^b|0,a|0,b|0)|0}function
Ys(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+16|0;j=f|0;h=b>>31|((b|0)<0?-1:0)<
x3c;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;a=Ls(h^a|0,g^b|0,h|0,g|0)|0;b=C;at(a,b,Ls(l^d|0,k^e|0,l|0,k|0)|
0,C,j)|0;e=Ls(c[j>>2]^h|0,c[j+4>>2]^g|0,h|0,g|0)|0;d=C;i=f;return (C=d,e)|0}function Zs(a,b,c,d){a=a|0;b=b|0
;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Ws(e,f)|0;a=C;return (C=(_(b,f)|0)+(_(d,e)|0)+a|a&0,c|0|0)|0}function _s(a,b,c,d){a=a|0;
b=b|0;c=c|0;d=d|0;return at(a,b,c,d,0)|0}function $s(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+16|0;f=g|0;at(a,b,d,e,
f)|0;i=g;return (C=c[f+4>>2]|0,c[f>>2]|0)|0}function at(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0
,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(
h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (C=n,f
)|0}else{if(!g){n=0;f=0;return (C=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (C=n,f)|0}}g=(i|0)==0
;do if(h){if(!g){g=(aa(i|0)|0)-(aa(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>
;>>(m>>>0)&b|k<<i;b=k>>>(m>>>0)&b;g=0;i=l<<
i;break}if(!f){n=0;f=0;return (C=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (C=n,f)|0}g=h-1|0;if
(g&h|0){i=(aa(h|0)|0)+33-(aa(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>
31&k>>>(o>>>0)|(k<<m|l>>>(i>>>0))&b;b=b&k
x3e;>>(i>>>0);g=l<<p&j;i=(k<<p|l>>>(o>>>0))&
;j|l<<m&i-33>>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&
;0;p=a|0|0;return (C=o,p)|0}else{p=Vs(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>
;(p>>>0)|0;return (C=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c
[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (C=o,p)|0}if(!l){if(f|0){c[f
x3e;>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>
;0)>>>0;return (C=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&
;0}o=0;p=k>>>((Vs(i|0)|0)>>>0);return (C=o,p)|0}g=(aa(i|0)|0)-(aa(k|0)|0)|0;if(g>>>
0<=30){b=g+1|0;i=31-g|0;h=b;a=k<<i|l>>>(b>>>0);b=k>>>(b>>
x3e;0);g=0;i=l<<i;break}if(!f){o=0;p=0;return (C=o,p)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return
(C=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Ms(m|0,l|0,-1,-1)|0;d=C;j=i;i=0;do{e=j;j=g>>>31
|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Ls(k|0,d|0,
e|0,n|0)|0;p=C;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Ls(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>
x3e;31|((p|0)<0?-1:0)<<1)&l|0)|0;b=C;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4
x3e;>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|
0>>>31)&-2|i;return (C=o,p)|0}function bt(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return
Na[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ct(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Oa[a&63](b|0,c|0,d|0)|0}function
dt(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Pa[a&1](b|0,c|0,d|0,e|0,f|0)}function et(a,b,c,d,e,f,g,h,i,j){a=a|0;b=
b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;return Qa[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)|0}function ft(a,b,c
){a=a|0;b=b|0;c=c|0;Ra[a&7](b|0,c|0)}function gt(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 Sa[a&
3](b|0,c|0,d|0,e|0,f|0,g|0)|0}function ht(a,b){a=a|0;b=b|0;return Ta[a&63](b|0)|0}function it(a,b,c,d){a=a|0;b=b|0;c=c|0;d=
d|0;Ua[a&31](b|0,c|0,d|0)}function jt(a,b){a=a|0;b=b|0;Va[a&63](b|0)}function kt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=
e|0;return Wa[a&31](b|0,c|0,d|0,e|0)|0}function lt(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;Xa[a&7](b|
0,c|0,d|0,e|0,f|0,g|0)}function mt(a,b,c){a=a|0;b=b|0;c=c|0;return Ya[a&127](b|0,c|0)|0}function nt(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 Za[a&31](b|0,c|0,d|0,e|0,f|0)|0}function ot(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;_a[a
x26;15](b|0,c|0,d|0,e|0)}function pt(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;ba(0);return 0}function qt(a,b,c){
a=a|0;b=b|0;c=c|0;ba(1);return 0}function rt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(2)}function st(a,b,c,d,e,f,g,h,i){a=a|0
;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;ba(3);return 0}function tt(a,b){a=a|0;b=b|0;ba(4)}function ut(a,b,c,d,e,f){a=a|
0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ba(5);return 0}function vt(a){a=a|0;ba(6);return 0}function wt(a,b,c){a=a|0;b=b|0;c=c|0;ba(7)}function
xt(a){a=a|0;ba(8)}function yt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(9);return 0}function zt(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;
e=e|0;f=f|0;ba(10)}function At(a,b){a=a|0;b=b|0;ba(11);return 0}function Bt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(12);return
0}function Ct(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(13)}
...
function cwrap(ident, returnType, argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident);var numericArgs=argTypes.every((function (type){return type==="number"}));var numericRet=returnType!=="string";if(numericRet&&numericArgs){return cfunc}var argNames=argTypes .map((function(x,i){return"$"+i}));var funcstr="(function("+argNames.join(",")+") {";var nargs=argTypes.length;if(!numericArgs){ ensureJSsource();funcstr+="var stack = "+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"];funcstr+="var "+convertCode.arguments+" = "+arg+";";funcstr +=convertCode.body+";";funcstr+=arg+"=("+convertCode.returnValue+");"}}var cfuncname=parseJSFunc((function(){return cfunc})).returnValue ;funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");";if(!numericRet){var strgfy=parseJSFunc((function(){return Pointer_stringify })).returnValue;funcstr+="ret = "+strgfy+"(ret);"}if(!numericArgs){ensureJSsource();funcstr+=JSsource["stackRestore"].body.replace ("()","(stack)")+";"}funcstr+="return ret})";return eval(funcstr)}
...
//console.log('Rendered in: ' + (ts2-ts1) + ' msecs');
//console.log('Elapsed: ' + (ts2-ts0) + ' msecs');
}
module.exports.loadFont = function(fontname, sizemult, fontfile) {
freetype.FS_createDataFile('/', fontname, fontfile, true, false);
var load_font = freetype.cwrap("load_font", 'number',
['string','string','number']);
var rv = load_font('/' + fontname, fontname, sizemult);
if (rv != 0) {
freetype.unlink('/' + fontname);
throw 'Error: font load failed [' + rv + ']';
}
}
...
function ht(a, b){a=a|0;b=b|0;return Ta[a&63](b|0)|0}
n/a
function mt(a, b, c){a=a|0;b=b|0;c=c|0;return Ya[a&127](b|0,c|0)|0}
n/a
function ct(a, b, c, d){a=a|0;b=b|0;c=c|0;d=d|0;return Oa[a&63](b|0,c|0,d|0)|0}
n/a
function kt(a, b, c, d, e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Wa[a&31](b|0,c|0,d|0,e|0)|0}
n/a
function nt(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 Za[a&31](b|0,c|0,d|0,e|0,f|0)|0}
n/a
function gt(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 Sa[a&3](b|0,c|0,d|0,e|0,f|0,g|0)|0}
n/a
function bt(a, b, c, d, e, f, g, h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return Na[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}
n/a
function et(a, b, c, d, e, f, g, h, i, j){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;return Qa[a&1](b|0,c|0,d|0,e|0,f|0, g|0,h|0,i|0,j|0)|0}
n/a
function jt(a, b){a=a|0;b=b|0;Va[a&63](b|0)}
n/a
function ft(a, b, c){a=a|0;b=b|0;c=c|0;Ra[a&7](b|0,c|0)}
n/a
function it(a, b, c, d){a=a|0;b=b|0;c=c|0;d=d|0;Ua[a&31](b|0,c|0,d|0)}
n/a
function ot(a, b, c, d, e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;_a[a&15](b|0,c|0,d|0,e|0)}
n/a
function dt(a, b, c, d, e, f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Pa[a&1](b|0,c|0,d|0,e|0,f|0)}
n/a
function lt(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;Xa[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}
n/a
function exit(status, implicit){if(implicit&&Module["noExitRuntime"]){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS =status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit "](status)}else if(ENVIRONMENT_IS_SHELL&&typeof quit==="function"){quit(status)}throw new ExitStatus(status)}
...
argv.option({ name: 'guardrightypos', type: 'int', description: 'Vertical position of the guard symbols
on the right, in points.' });
var commandLine = argv.run();
if (commandLine.targets.length === 0) {
console.error('You must specify an output path.');
process.exit(1);
}
if (commandLine.options.hasOwnProperty('textfont')) {
var font = fs.readFileSync(path.join('fonts', commandLine.options.textfont), 'binary');
bwipjs.loadFont(commandLine.options.textfont, 1, font);
}
...
function getMemory(size){if(!staticSealed)return Runtime.staticAlloc(size);if(typeof _sbrk!=="undefined"&&!_sbrk.called||!runtimeInitialized )return Runtime.dynamicAlloc(size);return _malloc(size)}
n/a
function Module_getUserMedia(){Browser.getUserMedia()}
...
var Module;if(typeof Module==="undefined")Module={};if(!Module.expectedDataFileDownloads){Module.expectedDataFileDownloads
=0;Module.finishedDataFileDownloads=0}Module.expectedDataFileDownloads++;((function(){var loadPackage=(function(metadata){function
runWithFS(){var fileData0=[];fileData0.push.apply(fileData0,[79,84,84,79,0,13,0,128,0,3,0,80,67,70,70,32,137,224,82,238,0,0,7,132
,0,0,45,223,70,70,84,77,101,130,23,249,0,0,55,12,0,0,0,28,71,68,69,70,0,160,0,4,0,0,53,100,0,0,0,32,71,80,79,83,184,255,184,254,
0,0,54,220,0,0,0,48,71,83,85,66,234,147,151,221,0,0,53,132,0,0,1,88,79,83,47,50,131,156,137,79,0,0,1,64,0,0,0,96,99,109,97,112,146
,230,183,142,0,0,5,184,0,0,1,170,104,101,97,100,251,7,171,9,0,0,0,220,0,0,0,54,104,104,101,97,7,42,2,2,0,0,1,20,0,0,0,36,104,109
,116,120,33,252,29,155,0,0,55,40,0,0,0,234,109,97,120,112,0,115,80,0,0,0,1,56,0,0,0,6,110,97,109,101,152,108,186,46,0,0,1,160,0,
0,4,23,112,111,115,116,0,3,0,1,0,0,7,100,0,0,0,32,0,1,0,0,0,2,0,0,252,84,172,109,95,15,60,245,0,11,3,232,0,0,0,0,204,138,51,83,0
,0,0,0,204,138,51,83,0,87,255,44,2,124,4,82,0,0,0,8,0,2,0,0,0,0,0,0,0,1,0,0,4,82,255,44,0,90,2,211,0,0,0,0,2,124,0,1,0,0,0,0,0,0
,0,0,0,0,0,0,0,0,0,2,0,0,80,0,0,115,0,0,0,3,2,211,1,144,0,5,0,0,2,138,2,188,0,0,0,140,2,138,2,188,0,0,1,224,0,49,1,2,0,0,2,0,5,9
,0,0,0,0,0,0,0,0,0,35,0,0,42,0,0,0,0,0,0,0,0,0,80,102,69,100,0,64,0,32,37,160,3,32,255,56,0,90,4,82,0,212,0,0,0,1,0,0,0,0,2,56,3
,12,0,32,0,32,0,1,0,0,0,24,1,38,0,1,0,0,0,0,0,0,0,86,0,174,0,1,0,0,0,0,0,1,0,4,1,15,0,1,0,0,0,0,0,2,0,7,1,36,0,1,0,0,0,0,0,3,0,33
,1,112,0,1,0,0,0,0,0,4,0,5,1,158,0,1,0,0,0,0,0,5,0,10,1,186,0,1,0,0,0,0,0,6,0,4,1,207,0,1,0,0,0,0,1,0,0,16,2,224,0,1,0,0,0,0,1,1
,0,23,2,166,0,1,0,0,0,0,1,2,0,20,2,97,0,1,0,0,0,0,1,3,0,15,2,39,0,1,0,0,0,0,1,4,0,16,1,246,0,3,0,1,4,9,0,0,0,172,0,0,0,3,0,1,4,9
,0,1,0,8,1,5,0,3,0,1,4,9,0,2,0,14,1,20,0,3,0,1,4,9,0,3,0,66,1,44,0,3,0,1,4,9,0,4,0,10,1,146,0,3,0,1,4,9,0,5,0,20,1,164,0,3,0,1,4
,9,0,6,0,8,1,197,0,3,0,1,4,9,1,0,0,32,2,190,0,3,0,1,4,9,1,1,0,46,2,118,0,3,0,1,4,9,1,2,0,40,2,55,0,3,0,1,4,9,1,3,0,30,2,7,0,3,0,
1,4,9,1,4,0,32,1,212,0,77,0,97,0,116,0,116,0,104,0,101,0,119,0,32,0,83,0,107,0,97,0,108,0,97,0,32,0,40,0,50,0,48,0,49,0,49,0,45,
0,49,0,50,0,41,0,59,0,32,0,98,0,97,0,115,0,101,0,100,0,32,0,111,0,110,0,32,0,99,0,111,0,100,0,101,0,32,0,98,0,121,0,32,0,82,0,105
,0,99,0,104,0,97,0,114,0,100,0,32,0,66,0,46,0,32,0,87,0,97,0,108,0,101,0,115,0,32,0,40,0,49,0,57,0,56,0,56,0,45,0,56,0,57,0,41,0
,32,0,97,0,110,0,100,0,32,0,84,0,111,0,114,0,32,0,76,0,105,0,108,0,108,0,113,0,118,0,105,0,115,0,116,0,0,77,97,116,116,104,101,119
,32,83,107,97,108,97,32,40,50,48,49,49,45,49,50,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,82,105,99,104
,97,114,100,32,66,46,32,87,97,108,101,115,32,40,49,57,56,56,45,56,57,41,32,97,110,100,32,84,111,114,32,76,105,108,108,113,118,105
,115,116,0,0,79,0,67,0,82,0,65,0,0,79,67,82,65,0,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,0,82,101,103,117,108,97,114,0,0,70,0,
111,0,110,0,116,0,70,0,111,0,114,0,103,0,101,0,32,0,50,0,46,0,48,0,32,0,58,0,32,0,79,0,67,0,82,0,32,0,65,0,32,0,58,0,32,0,50,0,55
,0,45,0,57,0,45,0,50,0,48,0,49,0,50,0,0,70,111,110,116,70,111,114,103,101,32,50,46,48,32,58,32,79,67,82,32,65,32,58,32,50,55,45,
57,45,50,48,49,50,0,0,79,0,67,0,82,0,32,0,65,0,0,79,67,82,32,65,0,0,86,0,101,0,114,0,115,0,105,0,111,0,110,0,32,0,50,0,32,0,0,86
,101,114,115,105,111,110,32,50,32,0,0,79,0,67,0,82,0,65,0,0,79,67,82,65,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,
32,0,104,0,121,0,112,0,104,0,101,0,110,0,0,65,108,116,101,114,110,97,116,101,32,104,121,112,104,101,110,0,0,65,0,108,0,116,0,101
,0,114,0,110,0,97,0,116,0,101,0,32,0,99,0,111,0,109,0,109,0,97,0,0,65,108,116,101,114,110,97,116,101,32,99,111,109,109,97,0,0,65
,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,97,0,112,0,111,0,115,0,116,0,114,0,111,0,112,0,104,0,101,0,0,65,108,116,101
,114,110,97,116,101,32,97,112,111,115,116,114,111,112,104,101,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,113,0
,117,0,101,0,115,0,116,0,105,0,111,0,110,0,32,0,109,0,97,0,114,0,107,0,0,65,108,116,101,114,110,97,116,101,32,113,117,101,115,116
,105,111,110,32,109,97,114,107,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,112,0,101,0,114,0,105,0,111,0,100,0,
0,65,108,116,101,114,110,97,116,101,32,112,101,114,105,111,100,0,0,0,0,0,3,0,0,0,3,0,0,0,28,0,1,0,0,0,0,0,164,0,3,0,1,0,0,0,28,0
,4,0,136,0,0,0,30,0,16,0,3,0,14,0,93,0,125,0,163,0,165,0,198,0,209,0,214,0,216,0,220,2,198,2,220,36,66,37,2,37,160,255,255,0,0,0
,32,0,95,0,163,0,165,0,196,0,209,0,214,0,216,0,220,2,198,2,220,36,64,37,2,37,160,255,255,255,225,255,225,255,192,255,191,255,167
,255,157,255,153,255,152,255,149,253,121,253,131,220,40,219,112,218,192,0,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,1,6,0,0,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,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,0,64,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,91,92,93,94,0,0,107,108,0,0,110,111,113,0
,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,109,112,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,95,0,0,0,0,0,0,0,0,0,0,0,
3,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,0,0,0,0,0,1,0,4,4,0,1,1,1,5,79,67,82,65,0,1,2,0,1,0,52,248,37,0,248,38,1,248
,39,2,248,40,3,248,24,4,140,12,1,139,12,3,139,12,4,226,251,104,249,16,250,230,5,28,1,37,15,28,0,0,16,28,2,10,17,28,0,52,28,44,255
,18,0,14,2,0,1,0,8,0,18,0,30,0,45,0,54,0,64,0,71,0,78,0,85,0,92,0,93,0,179,0,184,0,188,117,110,105,50,53,65,48,112,101,114,105,111
,100,46,97,108,116,113,117,101,115,116,105,111,110,46,97,108,116,113,117,111,116,101,115,105,110,103,108,101,46,97,108,116,99,111
,109,109,97,46,97,108,116,104,121,112,104,101,110,46,97,108,116,117,110,105,50,52,52,48,117,110,105,50,52,52,49,117,110,105,50,52
,52,50,117,110,105,50,53,48,50,50,77,97,116,116,104,101,119,32,83,107,97,108,97,32,40,50,48,49,49,45,49,50,41,59,32,98,97,115,101
,100,32,111,110,32,99,111,100,101,32,98,121,32,82,105,99,104,97,114,100,32,66,46,32,87,97,108,101,115,32,40,49,57,56,56,45,56,57
,41,32,97,110,100,32,84,111,114,32,76,105,108,108,113,118,105,115,116,79,67,82,32,65,79,67,82,65,0,0,0,0,1,0,2,0,3,0,4,0,5,0,6,0
,7,0,104,0,9,0,10,0,11,0,12,0,13,0,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,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,54,0,55,0,56,0,57,0,58
,0,59,0,60,0,61,0,62,0,126,0,64,0,124,0,66,0,67,0,68,0,69,0,70,0,71,0,72,0,73,0,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,94,0,127,1,135,1,136,1,137,0,98,0,100,1,138,1,139,1,140,1,141,1,142,1,143,0,
173,0,175,0,138,0,186,0,189,0,141,0,195,1,144,0,115,2,0,1,0,2,0,3,0,83,0,176,1,63,1,187,2,61,2,234,3,34,3,139,3,246,4,140,4,211,
5,14,5,53,5,71,5,130,5,188,6,14,6,92,6,201,7,21,7,123,7,211,8,39,8,144,8,232,9,27,9,119,9,196,9,216,10,39,10,170,11,66,11,143,11
,243,12,105,12,231,13,39,13,99,13,228,14,46,14,118,14,188,15,28,15,68,15,149,15,210,16,117,16,190,17,91,17,192,18,53,18,125,18,197
,19,19,19,142,20,9,20,87,20,138,20,206,21,11,21,83,21,150,21,183,21,243,22,121,23,30,23,143,23,241,24,117,24,203,25,137,25,231,26
,82,26,217,27,62,27,121,27,254,28,88,28,228,29,153,29,252,30,80,30,236,31,77,31,171,32,7,32,141,33,8,33,124,33,201,34,51,34,94,34
,199,35,51,35,66,35,109,35,221,36,79,36,202,37,3,37,58,37,70,37,124,37,187,38,0,38,114,38,227,39,107,39,238,40,193,41,142,41,252
,42,11,14,14,139,247,35,249,17,119,1,247,178,247,43,3,247,178,190,21,111,162,116,167,30,188,6,167,162,162,167,31,181,7,167,116,161
,111,30,90,6,111,116,117,111,31,249,17,4,164,252,19,5,141,111,160,117,167,139,8,165,163,160,168,31,164,248,19,139,142,5,165,115,
160,112,30,90,6,111,116,116,112,31,14,249,59,240,1,247,55,238,3,247,3,249,110,21,191,251,157,5,144,116,159,121,164,139,163,139,160
,157,143,162,8,181,247,106,247,6,139,180,251,97,5,139,137,138,137,139,137,139,115,165,119,165,139,170,139,155,163,144,165,153,216
,154,221,159,212,8,153,7,140,144,140,145,139,144,139,143,138,143,143,12,37,171,252,134,102,7,138,134,138,135,139,135,8,14,247,189
,240,247,3,240,247,62,119,1,247,104,240,236,240,3,247,5,247,240,21,111,161,116,167,30,188,251,11,6,111,161,116,167,167,162,162,167
,30,247,11,236,251,11,7,111,162,116,167,167,161,162,167,30,247,11,188,7,167,162,162,167,166,116,162,111,31,90,247,3,188,6,167,162
,162,167,167,116,161,111,31,90,247,12,6,166,117,162,111,111,116,116,112,30,251,12,42,247,12,7,166,116,162,111,111,117,116,112,30
,251,12,90,7,111,117,117,111,111,161,116,167,31,188,251,3,90,6,111,117,116,112,31,247,92,189,21,247,3,236,251,3,7,14,160,118,247
,62,240,207,241,207,240,247,62,119,1,247,5,239,237,240,237,240,3,20,112,247,5,247,112,21,111,161,117,167,30,247,40,251,11,6,111,
162,116,167,166,162,162,167,30,247,11,247,40,7,167,162,161,167,31,247,62,7,167,116,162,111,30,251,239,207,247,239,6,167,162,162,
167,167,116,161,111,31,251,40,247,12,6,166,116,162,112,111,116,116,112,30,251,12,251,40,7,111,117,117,111,31,251,62,7,111,161,116
,167,30,247,239,71,251,239,6,111,117,116,111,31,14,139,247,78,248,44,247,78,1,247,5,247,92,236,247,93,3,247,5,247,27,21,111,161,
117,167,30,155,139,154,146,148,151,8,248,33,248,146,5,146,147,143,150,139,151,139,167,116,161,111,139,123,139,124,132,130,127,8,
252,33,252,146,5,132,131,136,128,139,127,8,248,146,4,111,161,116,167,30,238,6,167,162,162,167,31,224,7,166,116,162,111,30,40,6,111
,117,116,112,31,247,189,253,59,21,111,162,116,167,30,238,6,167,162,162,167,31,223,7,167,116,162,111,30,40,6,111,116,116,111,31,14
,139,240,248,129,240,1,247,5,240,247,88,240,3,247,5,247,43,21,57,207,70,222,30,237,6,151,139,150,144,148,146,8,213,202,194,80,5,
148,129,152,133,154,139,167,139,162,162,139,167,139,152,133,151,131,148,8,87,195,5,161,157,183,163,139,176,139,167,116,162,111,139
,126,139,128,134,130,132,8,88,95,32,247,6,247,17,246,5,150,148,145,154,139,154,8,208,7,221,71,208,56,30,43,6,56,71,70,57,31,70,7
,139,126,144,126,147,130,8,235,37,47,60,5,128,129,133,126,139,123,8,240,70,21,139,185,217,205,246,251,6,83,91,60,139,5,112,116,161
,167,31,247,236,4,188,7,167,162,161,166,30,235,6,165,163,115,113,31,139,93,251,3,45,5,14,249,160,119,18,247,153,247,93,251,93,239
,19,160,247,153,248,26,21,111,162,117,167,30,163,139,158,155,145,161,8,238,247,229,5,19,192,140,144,140,144,139,144,8,166,116,162
,111,30,40,6,111,116,116,112,31,14,160,118,249,160,119,1,247,153,240,3,247,153,247,186,21,139,87,158,97,163,108,8,247,9,251,42,5
,148,128,154,131,155,139,167,139,161,162,139,167,139,150,135,150,133,148,8,251,9,247,41,5,127,155,129,160,139,165,8,247,84,7,139
,165,149,160,151,155,8,247,9,247,41,5,145,148,143,150,139,151,139,166,117,162,111,139,123,139,124,131,130,128,8,251,9,251,42,5,115
,108,120,97,139,87,8,14,160,118,249,160,119,1,247,253,240,3,247,104,190,21,111,161,116,167,30,155,139,154,147,148,150,8,247,9,247
,42,5,163,170,158,181,139,191,8,247,84,7,139,191,120,181,115,170,8,251,9,247,42,5,130,150,124,147,123,139,111,139,117,116,139,112
,139,127,143,128,145,130,8,247,9,251,41,5,151,123,149,118,139,113,8,251,84,7,139,113,129,118,127,123,8,251,9,251,41,5,133,130,135
,128,139,128,8,14,247,203,240,3,247,5,247,112,21,111,161,117,167,30,152,139,150,143,148,147,8,247,7,237,139,251,37,5,111,162,117
,167,166,162,161,167,30,139,247,37,247,7,41,5,148,131,150,135,152,139,167,139,162,161,139,167,139,155,132,152,128,149,8,251,45,247
,23,247,45,247,23,5,150,149,146,152,139,155,139,167,116,161,111,139,126,139,128,135,130,131,8,251,7,41,139,247,37,5,167,116,161,
112,111,116,117,111,30,139,251,37,251,7,237,5,130,147,128,143,126,139,111,139,117,117,139,111,139,123,145,126,150,129,8,247,45,251
,23,251,45,251,23,5,128,129,133,126,139,123,8,14,247,232,240,1,247,203,240,3,247,5,248,26,21,111,161,117,167,30,247,40,251,40,6,
111,162,116,167,166,162,162,167,30,247,40,247,40,7,167,162,161,167,167,116,162,111,31,251,40,247,40,6,166,116,162,112,111,116,116
,112,30,251,40,251,40,7,111,117,116,111,31,14,160,118,247,147,240,18,247,104,247,191,38,240,19,224,247,104,247,197,21,111,161,117
,167,30,19,208,247,40,251,96,6,111,162,116,167,167,161,162,167,30,19,224,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31
,14,247,189,247,36,1,247,5,247,240,21,111,161,116,167,30,248,33,6,167,162,162,167,31,181,7,167,116,162,111,30,252,33,6,111,117,116
,111,31,14,247,19,247,78,1,247,153,247,93,3,247,153,247,70,21,32,10,14,160,118,249,160,119,1,247,5,190,21,111,161,116,167,30,158
,139,155,149,148,154,8,248,33,249,59,5,143,147,142,147,139,149,139,166,116,162,111,139,120,139,123,129,130,124,8,252,33,253,59,5
,135,131,137,131,139,130,8,14,139,240,248,214,240,1,247,5,240,247,188,240,3,247,5,240,21,84,185,93,194,30,247,188,6,193,186,186,
193,31,248,214,7,193,92,186,85,30,251,188,6,84,93,93,84,31,240,252,214,21,248,214,247,188,252,214,7,14,139,240,248,214,240,18,247
,5,247,191,38,240,237,240,19,232,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,247,146,7,167,116,162,111,111,117,116
,111,30,251,96,7,19,216,41,249,59,251,141,6,19,232,111,117,116,112,111,161,116,167,31,19,216,247,40,252,214,251,40,6,111,117,116
,112,31,14,139,240,247,131,239,247,131,240,1,247,5,240,247,188,240,3,20,224,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31
,251,238,247,131,247,188,6,193,186,185,193,31,247,131,7,193,92,186,85,30,251,239,6,111,117,116,112,111,161,116,167,31,247,239,251
,131,251,188,6,84,93,94,84,31,14,139,240,247,131,240,247,130,240,1,248,146,240,3,20,224,247,5,190,21,111,161,116,167,30,247,239,
6,193,186,186,193,31,247,80,7,139,177,124,175,114,166,164,166,154,174,139,178,8,247,80,7,193,92,186,85,30,251,239,6,111,117,116,
112,111,161,116,167,31,247,239,251,80,6,112,116,116,111,30,251,89,6,111,117,116,111,111,161,117,167,31,247,89,6,166,163,115,112,
31,251,80,251,239,7,111,117,116,112,31,14,160,118,247,147,240,248,60,119,1,247,29,240,247,89,240,3,247,29,247,147,21,247,190,251
,96,6,111,162,116,167,166,162,162,167,30,247,96,7,167,161,161,167,167,117,162,111,31,247,181,7,167,116,161,112,111,116,117,111,30
,251,181,251,89,248,10,7,166,117,162,111,111,116,116,112,30,14,139,240,84,236,247,89,240,247,130,240,18,247,104,240,247,89,240,20
,176,19,124,247,5,232,21,139,118,151,121,157,131,8,19,188,181,121,181,111,195,139,8,247,119,6,193,186,186,193,31,247,131,7,193,92
,186,85,30,251,89,247,130,247,139,6,167,162,162,167,166,116,162,111,31,251,240,252,76,247,190,251,131,251,129,6,49,177,5,19,124,
133,142,132,140,132,139,8,111,117,117,111,31,14,139,240,247,46,240,247,215,240,18,247,5,247,42,251,42,239,247,189,240,19,236,247
,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,247,146,7,167,116,162,111,30,251,239,247,215,6,19,244,167,161,162,167,31
,19,236,166,117,162,111,30,89,6,19,244,111,117,116,112,31,19,236,239,253,9,21,247,46,247,189,251,46,7,14,160,118,249,59,240,1,247
,203,240,237,240,3,247,5,249,67,21,111,161,117,167,30,164,139,160,157,143,163,8,247,189,251,73,6,251,73,251,46,5,128,129,132,125
,139,124,8,251,146,7,111,162,116,167,166,162,162,167,30,139,247,123,247,73,247,46,5,150,149,146,153,139,154,8,247,197,252,84,7,111
,117,116,112,31,14,139,240,247,131,240,247,130,240,18,247,5,239,139,239,236,239,139,240,19,240,247,5,240,21,19,234,84,185,93,193
,30,247,189,6,193,186,186,193,31,247,131,7,19,228,193,92,186,85,30,19,234,247,181,7,166,118,162,111,30,251,91,6,111,118,116,112,
31,251,181,7,19,240,84,94,92,85,31,239,251,131,21,247,131,7,19,242,247,189,251,131,6,19,236,251,89,247,232,21,247,130,236,251,130
,7,14,139,240,247,215,240,247,46,240,18,247,5,239,247,139,247,43,38,240,19,244,247,5,248,111,21,111,161,116,167,30,247,239,251,215
,6,19,248,111,117,116,112,31,19,244,111,161,116,167,30,189,6,19,248,167,162,162,167,31,19,244,249,59,7,166,116,162,111,30,252,33
,6,111,117,116,112,31,239,251,97,21,247,46,247,189,251,46,7,14,247,19,247,78,247,46,247,78,1,247,153,247,93,3,247,153,247,70,21,
32,10,247,146,4,111,162,117,167,30,238,6,167,162,161,167,31,224,7,167,116,162,111,30,40,6,111,116,116,111,31,14,160,118,247,147,
240,247,45,247,78,18,247,104,247,92,137,240,19,240,247,104,247,197,21,111,161,117,167,30,19,232,247,40,251,96,6,111,162,116,167,
167,161,162,167,30,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31,19,240,247,147,4,111,161,116,167,30,239,6,166,162,162
,167,31,224,7,167,116,161,112,30,39,6,111,117,117,111,31,14,247,5,248,4,21,139,120,149,124,153,130,8,248,33,251,125,5,147,134,148
,137,148,139,167,139,162,161,139,167,139,158,128,155,125,148,8,251,251,247,103,247,251,247,103,5,153,148,150,155,139,158,139,167
,116,161,111,139,130,139,130,137,131,134,8,252,33,251,125,5,125,130,129,123,139,120,8,14,247,147,240,247,3,240,1,247,5,247,197,21
,33,10,247,104,4,33,10,14,247,5,247,27,21,111,161,117,167,30,148,139,148,141,147,144,8,248,38,247,128,5,152,147,146,155,139,156,
8,181,7,139,158,128,155,125,148,8,252,33,247,125,5,131,144,130,141,130,139,111,139,117,117,139,111,139,120,149,123,153,130,8,247
,252,251,103,251,252,251,103,5,125,130,129,123,139,120,8,14,139,240,249,59,119,1,247,104,240,3,247,5,248,111,21,111,161,116,167,
30,152,139,150,144,148,146,8,247,157,247,119,188,97,139,101,251,173,251,131,5,128,130,133,124,139,124,8,54,7,111,161,117,167,167
,162,161,167,30,139,201,247,172,247,131,5,150,149,146,152,139,155,8,224,7,139,154,132,153,128,148,8,40,224,5,130,146,127,144,127
,139,126,139,128,134,130,12,37,251,190,251,147,5,128,130,133,125,139,124,8,238,252,60,21,111,161,116,167,167,162,162,167,166,116
,162,111,111,117,116,112,30,14,139,240,247,173,240,247,88,240,1,247,5,240,236,240,237,240,3,20,224,20,28,247,5,247,42,21,57,206,
71,221,30,177,139,174,154,166,163,165,115,174,124,177,139,8,220,208,207,221,31,248,88,7,235,58,221,42,30,251,35,6,93,139,96,120,
105,108,118,120,106,109,139,103,139,111,161,116,167,139,158,139,157,150,147,155,153,166,171,170,175,139,8,247,35,6,181,174,104,97
,31,252,88,7,113,117,116,112,112,117,161,166,30,247,174,7,167,116,162,112,30,39,6,57,72,71,57,31,240,251,75,21,247,75,7,166,160,
161,166,30,188,251,124,6,112,117,117,112,112,118,161,166,30,14,160,118,247,62,240,248,145,119,1,247,2,190,21,111,163,116,167,30,
162,139,159,154,145,160,8,178,247,26,247,115,139,178,251,26,5,145,118,158,124,162,139,8,167,163,162,167,31,251,94,249,73,5,133,160
,118,154,117,139,116,139,120,124,133,118,8,106,252,109,21,220,247,170,221,251,170,5,14,139,240,247,131,240,247,130,240,1,247,5,240
,247,188,240,3,247,5,22,247,188,6,247,2,231,232,247,1,31,176,7,139,198,111,194,97,176,181,176,167,194,139,198,8,176,7,247,1,47,232
,251,2,30,251,188,6,240,253,59,21,247,131,247,87,7,193,186,92,85,31,102,7,85,92,92,85,30,251,87,247,232,21,247,130,247,87,7,193,
186,92,85,31,102,7,85,92,93,85,30,14,139,240,248,214,240,1,247,5,240,3,247,5,248,26,21,139,98,149,107,153,109,171,69,174,73,174,
72,162,94,189,100,201,139,8,247,78,6,167,162,162,167,166,116,162,111,31,251,78,6,119,139,122,152,132,154,8,36,247,95,5,131,156,134
,157,139,162,139,162,144,157,156,12,37,242,247,95,5,146,154,156,152,159,139,8,247,78,6,167,162,162,167,166,116,162,111,31,251,78
,6,77,139,86,102,118,93,8,38,251,96,5,125,110,129,106,139,98,8,14,139,240,248,214,240,1,247,104,240,247,89,240,3,247,5,190,21,111
,161,116,167,30,247,78,6,201,139,192,176,160,185,8,240,247,96,5,153,168,150,173,139,179,139,179,128,173,125,168,8,37,247,95,5,116
,184,89,178,77,139,8,251,78,6,111,117,116,112,111,161,116,167,31,188,252,214,90,6,111,117,116,112,31,247,92,189,21,248,214,175,7
,159,139,156,126,146,124,8,242,251,95,5,147,123,145,119,139,117,139,117,132,120,122,12,37,36,251,95,5,132,124,122,126,119,139,8,
14,139,240,247,131,240,247,130,240,1,247,5,240,3,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31,251,238,247,131,247,40,6,166
,162,161,167,167,116,162,112,31,251,40,247,130,247,238,6,167,162,162,167,166,116,162,111,31,252,83,6,14,160,118,248,60,240,247,46
,240,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,248,9,247,139,7,167,161,162,167,167,117,161,111,31,251,139,247
,46,247,238,6,167,162,162,167,166,116,162,111,31,252,83,6,14,139,240,247,46,240,247,215,240,18,247,5,240,247,39,247,142,38,240,19
,244,247,5,247,44,21,56,206,70,223,30,247,87,6,222,208,208,222,31,247,96,251,92,7,19,248,111,117,116,111,111,161,117,167,31,19,244
,238,36,6,111,115,116,112,30,251,87,6,112,116,162,167,31,247,163,7,139,165,148,159,151,155,8,247,28,247,66,5,147,150,153,148,157
,139,8,247,41,6,167,162,162,167,166,116,162,111,31,251,41,6,86,139,97,113,114,107,8,251,28,251,68,5,115,108,121,99,139,87,8,14,160
,118,247,232,240,247,231,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,247,181,247,188,251,181,7
,111,161,116,167,167,162,162,167,30,249,59,7,166,116,162,111,111,117,116,112,30,251,181,251,188,247,181,7,166,116,162,111,111,117
,116,112,30,14,139,240,248,214,240,1,247,203,240,3,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251
,40,248,214,247,40,6,167,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,111,161,116,167,31,247,40,252,214,251,40,6,111,
117,116,112,31,14,139,240,249,59,119,1,247,54,240,247,89,240,3,247,54,247,43,21,56,208,71,222,30,234,6,222,208,208,221,31,248,215
,7,166,116,162,111,111,117,116,112,30,252,215,7,112,116,116,111,30,44,6,111,116,161,167,31,247,46,7,167,117,162,111,111,116,116,
111,30,14,160,118,249,160,119,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,121,247,205,251,160,5,148,132
,150,134,152,139,167,139,162,162,139,167,139,154,132,153,128,148,8,251,244,247,193,247,244,247,193,5,150,148,146,153,139,155,139
,166,116,162,111,139,126,139,128,134,130,132,8,251,205,251,160,139,247,122,5,166,116,162,111,111,117,116,112,30,14,139,240,249,59
,119,1,247,5,240,3,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31,251,238,249,9,6,166,116,162,111,111,117,116,112,30,14,160
,118,249,160,119,1,247,5,240,236,240,237,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,248,224,236,251,30,139,113,5,
111,162,116,167,166,162,162,167,30,139,165,237,247,32,139,252,226,5,111,161,116,167,167,162,162,167,30,249,109,251,19,7,251,14,251
,67,251,15,247,67,251,18,139,5,14,160,118,249,160,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,
139,248,185,247,155,252,236,247,26,139,139,249,110,5,166,116,162,111,111,117,116,112,30,139,252,188,251,156,248,238,251,25,139,5
,14,139,240,248,214,240,1,247,5,240,247,188,240,3,247,5,248,26,21,139,98,148,106,154,110,8,246,251,107,5,159,101,182,105,193,139
,194,139,182,173,159,177,8,246,247,107,5,153,168,150,173,139,179,139,179,128,173,125,168,8,32,247,107,5,119,177,96,173,84,139,85
,139,96,105,119,101,8,32,251,107,5,125,110,129,106,139,98,8,247,6,197,21,247,0,247,105,5,144,149,148,147,151,139,151,139,150,130
,143,12,37,247,0,251,105,5,147,123,145,119,139,117,139,117,132,120,122,12,37,32,251,107,5,134,129,130,133,125,139,127,139,129,147
,135,148,8,251,0,247,106,5,131,156,134,157,139,162,139,162,144,157,156,12,37,14,160,118,247,189,240,247,173,240,1,247,5,240,247,
188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,247,138,247,137,7,222,208,208,222,31,247,72,7,221,70,208,56,30,251,238
,6,240,252,18,21,247,173,247,137,7,165,164,116,112,31,251,72,7,111,115,116,112,30,14,139,240,249,59,119,1,247,5,240,236,247,13,217
,240,3,247,5,247,15,21,72,194,83,206,30,172,139,166,152,158,156,8,214,203,176,45,247,26,139,5,167,162,162,167,166,116,162,111,31
,74,139,115,200,5,201,191,217,189,139,247,3,8,247,174,7,206,82,195,72,30,107,139,110,126,121,122,8,251,117,251,82,5,100,105,108,
85,139,72,8,240,251,174,21,247,174,7,139,174,154,165,158,156,8,247,124,247,87,146,139,5,152,149,130,127,31,251,174,7,139,80,93,113
,107,111,126,173,127,199,94,139,111,139,116,116,139,111,139,133,140,132,141,134,8,176,45,251,0,47,131,139,5,126,131,148,152,31,14
,160,118,248,60,240,247,46,240,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,248,9,208,7,247,125,252
,35,5,148,124,155,129,158,139,167,139,162,162,139,167,139,148,136,147,135,147,8,251,95,247,240,197,139,5,221,209,209,221,31,191,
7,222,70,208,56,30,251,238,6,240,251,147,21,247,46,247,137,7,166,163,116,111,31,87,7,112,115,115,112,30,14,139,240,248,214,240,1
,247,5,240,247,188,240,3,247,5,247,27,21,65,201,78,212,30,247,141,6,203,139,187,192,141,200,139,167,128,164,125,156,8,252,8,248,
114,139,143,139,142,5,146,146,142,144,30,247,141,6,157,156,123,121,111,161,116,167,167,162,162,167,213,76,200,66,31,251,141,6,78
,87,88,79,31,136,7,139,111,149,115,152,121,8,248,10,252,118,5,131,132,134,133,30,251,141,6,120,124,154,158,167,116,162,111,111,117
,116,111,31,14,160,118,248,230,247,78,38,240,18,247,5,240,236,240,237,240,19,220,247,5,249,25,21,111,161,116,167,167,162,162,167
,30,19,188,173,236,253,8,7,111,162,116,167,166,162,162,167,30,249,8,237,105,7,19,220,111,161,116,167,167,162,162,167,30,19,188,247
,27,252,134,7,14,139,240,249,59,119,1,247,5,240,247,188,240,3,247,5,247,43,21,57,207,70,222,30,247,87,6,222,208,208,221,31,248,215
,7,166,116,162,111,111,117,116,112,30,252,215,7,112,114,116,113,30,251,87,6,112,116,161,167,31,248,215,7,166,116,162,111,111,117
,116,112,30,14,160,118,249,160,119,1,247,5,240,247,188,240,3,247,5,248,185,21,247,93,252,153,5,147,120,157,126,161,139,160,139,157
,152,147,158,8,247,94,248,154,139,247,72,5,166,116,162,111,111,117,116,112,30,139,251,53,251,40,252,14,251,40,248,14,139,247,53,
5,166,116,162,111,111,117,116,112,30,14,139,240,249,59,119,1,247,5,240,236,240,237,240,3,247,5,247,14,21,195,42,5,148,124,156,129
,158,139,8,236,6,164,139,154,156,150,157,149,120,155,123,163,139,8,237,6,158,139,155,149,148,154,8,196,236,139,248,244,5,166,116
,162,111,111,117,116,112,30,139,252,217,110,91,98,139,5,131,153,130,159,128,156,8,247,215,7,167,116,161,112,111,116,117,111,30,251
,215,7,128,122,130,119,131,125,8,98,139,111,187,139,248,217,5,166,116,162,111,111,117,116,112,30,14,160,118,249,160,119,1,247,5,
190,21,111,161,116,167,30,158,139,155,149,148,154,8,247,47,247,156,247,46,251,156,5,148,124,155,129,158,139,167,139,162,162,139,
167,139,148,136,147,135,147,8,251,76,247,206,247,76,247,206,5,143,147,142,147,139,149,139,166,116,162,111,139,120,139,123,129,130
,124,8,251,46,251,156,251,47,247,156,5,130,154,123,149,120,139,111,139,117,116,139,112,139,129,141,131,143,131,8,247,76,251,206,
251,76,251,206,5,135,131,137,131,139,130,8,14,160,118,249,160,119,1,247,5,240,236,240,236,241,3,247,5,249,7,21,247,90,251,146,139
,251,214,5,111,162,116,167,166,162,162,167,30,139,247,214,247,91,247,146,139,242,5,166,116,162,111,111,116,116,112,30,139,71,251
,39,251,82,251,40,247,82,139,207,5,166,116,162,111,111,117,116,112,30,14,139,240,248,214,240,1,247,4,203,21,140,75,248,83,139,5,
167,162,162,167,166,116,162,111,31,251,201,139,247,252,248,251,139,203,252,84,139,5,111,117,116,112,111,161,116,167,31,247,201,6
,14,139,240,248,214,240,1,247,5,239,187,240,3,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,90
,248,214,247,90,6,167,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,31,239,253,9,21,248,214,187,252,214,7,14,160,118,249
,160,119,1,247,5,249,110,21,139,129,141,131,143,131,8,248,33,253,59,5,148,124,155,129,158,139,167,139,162,162,139,167,139,148,136
,147,135,147,8,252,33,249,59,5,130,154,123,149,120,139,111,139,117,116,139,112,8,14,139,240,248,214,240,1,247,253,240,187,240,3,
247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,249,59,7,166,116,162,111,30,252,33,6,111,117,116,112,111,161,116,167
,31,247,90,252,214,251,90,6,111,117,116,112,31,247,241,189,21,248,214,187,252,214,7,14,247,4,247,82,21,140,127,5,111,161,116,167
,30,157,139,154,148,147,151,8,247,50,247,128,247,49,251,128,5,147,127,154,130,157,139,167,139,162,162,139,167,139,146,137,146,136
,146,8,251,92,248,20,5,131,155,122,150,120,139,119,139,122,128,131,123,8,14,38,240,1,247,5,89,21,111,161,116,167,30,248,33,6,167
,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,31,14,249,160,119,1,247,54,249,110,21,139,123,146,125,150,130,8,247,190
,251,147,5,147,133,149,133,153,139,167,139,162,162,139,167,139,148,137,147,135,146,8,251,95,247,154,5,130,151,124,146,123,139,8,
40,6,111,116,116,112,31,14,139,240,247,46,240,247,3,240,18,247,5,240,247,177,238,45,246,19,244,247,5,247,42,21,57,206,71,221,30,
247,41,6,148,139,148,141,146,144,8,213,182,5,112,161,116,166,167,163,161,167,30,19,248,126,248,9,5,136,218,74,205,57,139,8,251,78
,6,111,117,116,111,111,161,117,167,31,247,78,6,195,139,132,76,141,84,125,144,124,141,124,139,8,251,85,6,57,72,71,57,31,240,83,21
,195,7,165,161,162,165,30,247,85,6,19,244,163,164,116,115,31,139,95,32,76,251,27,139,5,112,118,161,166,31,14,139,240,248,2,240,247
,104,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,154,7,174,107,177,105,201,139,8,214,6,180,139
,172,155,162,159,180,175,188,173,139,214,8,247,98,7,139,189,115,178,110,164,104,169,104,176,75,139,8,64,6,80,139,98,108,104,106,
8,247,118,7,166,116,162,111,111,117,116,112,30,240,252,142,21,247,12,7,139,155,145,153,150,146,8,225,213,5,146,146,150,144,153,139
,8,214,6,157,139,151,130,150,129,155,123,168,124,139,109,8,251,98,7,139,123,131,126,129,131,121,124,120,111,108,139,8,64,6,125,139
,128,144,132,146,8,53,213,5,129,147,132,151,139,156,8,14,139,240,248,2,240,1,247,5,240,3,247,5,247,116,21,139,88,162,101,168,114
,8,225,65,5,163,118,171,124,181,139,8,247,103,6,167,162,162,167,166,116,162,111,31,251,103,6,125,139,128,144,132,146,8,53,212,5,
129,148,132,151,139,156,8,247,12,7,139,155,145,153,150,146,8,225,213,5,146,146,150,144,153,139,8,247,103,6,167,162,161,167,167,116
,162,111,31,251,103,6,51,139,93,70,89,98,110,114,116,101,139,88,8,14,139,240,248,2,240,247,104,119,1,247,5,240,247,188,240,3,247
,5,247,73,21,139,88,161,101,169,114,174,108,173,103,204,139,8,214,6,203,139,176,173,174,172,8,123,7,111,161,116,167,167,162,162,
167,30,249,59,7,166,116,162,111,111,117,116,112,30,251,123,7,103,170,105,177,73,139,8,64,6,98,139,106,123,116,119,97,104,92,105,
139,63,8,240,251,98,21,34,10,14,139,240,247,3,240,247,46,240,1,247,5,240,247,188,240,3,247,5,247,73,21,139,88,161,101,169,114,174
,108,173,103,204,139,8,247,153,6,167,162,162,167,166,116,162,111,31,251,153,6,125,139,130,144,130,146,120,156,105,155,139,174,8,
170,247,238,7,167,162,162,167,31,247,16,7,139,190,115,177,110,164,104,170,104,175,75,139,8,251,17,6,98,139,106,123,116,119,97,104
,92,104,139,64,8,240,65,21,213,7,139,156,146,151,149,147,157,154,158,167,170,139,8,247,17,6,173,191,95,103,31,65,7,14,160,118,248
,103,240,247,3,240,1,247,128,240,3,247,29,248,153,21,111,161,117,167,30,188,252,52,6,111,162,116,167,167,161,162,167,30,248,52,238
,7,166,162,161,167,167,116,162,112,31,40,173,6,181,173,174,182,30,247,13,6,167,161,162,167,166,117,162,111,31,251,13,6,41,59,60,
40,31,105,90,7,111,117,116,111,31,14,251,104,240,247,45,240,247,216,240,1,247,5,239,247,189,240,3,247,5,247,116,21,139,88,162,101
,168,114,174,109,174,101,203,139,8,214,6,201,139,178,174,174,172,8,251,33,7,139,124,131,125,129,131,121,125,120,110,108,139,8,251
,103,6,111,116,116,111,111,162,117,167,31,247,103,6,180,139,172,155,162,159,180,175,188,173,139,214,8,248,184,7,167,116,162,111,
111,117,116,111,30,121,7,103,170,105,177,73,139,8,64,6,98,139,106,123,116,119,97,104,92,106,139,62,8,239,251,55,21,247,55,7,139,
156,147,150,149,149,159,153,154,167,172,139,8,214,6,153,139,150,134,146,132,8,225,65,5,148,131,148,125,139,124,8,61,7,139,123,131
,126,129,131,8,53,65,5,132,132,128,134,125,139,8,64,6,104,88,184,175,31,14,160,118,248,103,240,247,104,119,1,247,5,240,247,188,239
,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,203,247,55,244,210,139,5,166,139,159,117,141,114,8,152,252,7,5,112,162
,117,166,167,161,162,167,30,127,248,8,5,136,218,74,205,57,139,8,82,6,106,139,113,129,117,125,8,43,78,139,247,139,5,166,116,162,111
,111,117,116,112,30,14,139,240,248,2,240,247,3,247,35,18,247,54,247,142,251,43,247,43,39,239,19,240,247,54,190,21,35,10,19,228,41
,6,19,240,248,52,7,167,116,162,112,30,251,41,6,111,116,116,111,111,162,117,167,31,19,228,238,252,2,40,6,111,116,116,112,31,19,232
,238,249,59,21,19,228,111,162,116,167,30,189,6,19,232,166,162,162,167,31,181,7,167,116,161,112,30,19,228,89,6,19,232,111,116,117
,111,31,14,251,104,240,248,214,240,247,3,247,35,18,247,153,247,192,251,43,247,43,39,239,19,232,247,54,62,21,131,7,150,70,202,81,
215,139,8,237,6,19,228,222,207,206,222,31,19,240,248,215,7,167,116,162,111,30,251,90,6,111,116,116,111,111,162,117,167,31,19,228
,247,41,252,165,6,19,232,112,115,117,112,30,41,6,77,139,162,224,79,139,8,111,116,116,111,31,247,140,249,187,21,19,228,111,162,116
,167,30,188,6,19,232,167,162,162,167,31,181,7,167,116,161,111,30,19,228,90,6,19,232,111,116,117,111,31,14,160,118,248,204,119,247
,124,119,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,38,187,181,247,157,251,119,5,148,132,151,134,152,
139,167,139,161,162,139,167,139,154,132,153,128,148,8,251,145,247,108,247,95,247,66,5,150,148,146,153,139,154,139,167,116,162,111
,139,127,139,127,134,131,132,8,251,156,251,117,139,248,35,5,166,116,162,111,111,117,116,112,30,14,139,240,248,214,240,18,247,54,
247,142,38,240,19,224,247,54,190,21,35,10,19,208,41,6,19,224,249,9,7,166,116,162,112,30,251,41,6,111,116,116,112,111,162,116,167
,31,19,208,237,252,214,41,6,111,116,116,112,31,14,160,118,248,103,240,18,244,240,244,240,230,239,53,240,19,248,244,190,21,111,161
,116,167,167,162,162,167,30,139,247,243,214,204,147,139,5,153,147,131,125,31,252,30,7,111,162,116,167,166,162,162,167,30,139,247
,250,207,197,145,139,5,149,139,145,128,140,131,8,19,244,153,252,35,5,140,112,162,117,166,139,8,167,161,162,167,31,19,248,124,248
,37,5,137,203,82,188,78,139,114,139,112,131,116,120,8,117,121,5,117,168,103,158,100,139,102,139,111,122,118,121,133,159,119,154,
117,139,8,111,117,116,111,31,14,160,118,248,103,240,1,247,5,240,247,188,239,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139
,247,203,247,55,244,210,139,5,166,139,159,117,141,114,8,152,252,7,5,112,162,117,166,167,161,162,167,30,127,248,8,5,136,218,74,205
,57,139,8,82,6,106,139,113,129,117,125,8,43,78,139,173,5,167,116,162,111,111,117,116,111,30,14,139,240,248,2,240,1,247,5,240,247
,188,240,3,247,5,247,73,21,139,89,161,100,169,114,175,109,172,102,204,139,8,247,17,6,180,139,172,155,162,159,180,175,188,173,139
,214,8,247,98,7,139,189,115,178,110,164,104,169,104,176,75,139,8,251,17,6,98,139,106,123,116,119,97,104,92,104,139,64,8,240,251,
98,21,247,98,7,139,156,146,151,149,147,157,154,158,167,170,139,8,247,17,6,173,191,95,103,31,251,98,7,139,123,131,126,129,131,121
,124,120,111,108,139,8,251,17,6,125,139,130,144,130,146,120,156,105,155,139,174,8,14,251,83,118,247,83,240,248,44,240,1,247,5,240
,247,188,240,3,247,5,251,54,21,111,161,117,167,167,162,161,167,30,247,108,7,173,102,178,101,205,139,8,160,6,181,139,171,154,163,
160,8,225,213,5,168,164,163,179,139,188,8,247,53,7,139,220,82,175,95,179,104,171,101,175,76,139,8,118,6,70,139,105,98,103,103,8,
166,7,166,116,162,111,111,117,116,112,30,240,251,212,21,247,22,7,139,154,144,151,148,146,8,229,230,5,147,147,152,145,153,139,8,160
,6,151,139,153,133,145,133,8,226,64,5,148,132,147,124,139,124,8,251,53,7,139,124,131,124,130,132,8,52,65,5,132,132,128,134,125,139
,8,118,6,122,139,130]);fileData0.push.apply(fileData0,[144,130,148,118,158,120,160,119,159,122,156,112,154,139,172,8,14,251,83,118
,247,104,240,248,2,240,1,247,5,240,247,188,240,3,247,5,247,73,21,139,88,161,101,169,114,174,108,173,103,204,139,8,214,6,203,139,
176,173,174,172,8,251,121,7,111,161,117,167,167,162,161,167,30,249,59,7,167,116,162,111,111,117,116,111,30,121,7,103,170,105,177
,73,139,8,64,6,98,139,106,123,116,119,97,104,92,105,139,63,8,240,251,98,21,34,10,14,160,118,248,103,240,1,247,5,240,247,188,240,
3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,165,247,58,247,35,220,139,5,166,161,116,113,31,111,7,111,161,117,167,167
,162,161,167,30,167,7,221,70,207,58,30,40,6,129,139,128,137,131,133,8,251,11,37,139,198,5,167,116,162,111,111,117,116,111,30,14,
139,240,248,2,240,1,247,17,239,247,174,242,3,247,5,232,21,139,123,146,125,151,129,172,111,181,114,199,139,8,247,81,6,223,139,208
,207,140,223,8,141,7,139,204,95,193,92,160,8,251,170,247,12,5,128,143,134,149,139,149,8,153,149,154,157,30,247,106,6,176,139,148
,96,175,139,167,139,162,162,139,167,139,150,135,150,133,147,114,172,94,169,86,139,8,251,106,6,105,139,106,125,115,115,113,114,128
,108,139,108,139,88,169,89,185,119,8,247,169,251,12,5,159,130,148,120,139,120,8,112,122,112,105,30,251,95,6,132,139,127,147,132,
141,114,146,131,164,107,139,111,139,118,117,139,111,8,14,139,240,248,2,240,1,247,104,240,3,247,5,248,153,21,111,161,117,167,30,188
,251,209,6,58,207,70,220,30,239,6,214,139,201,198,152,207,8,147,7,167,116,162,111,30,78,139,162,54,78,139,8,39,6,113,117,161,166
,31,247,209,247,89,7,167,161,161,167,167,117,162,111,31,251,89,247,11,6,167,116,162,111,111,117,116,111,30,251,11,90,7,111,117,116
,111,31,14,139,240,248,103,119,1,247,5,239,247,189,240,3,247,5,248,153,21,151,252,9,5,141,61,206,73,220,139,8,196,6,172,139,165,
149,161,153,8,236,201,139,104,5,111,161,116,167,167,162,162,167,30,248,102,7,167,116,162,111,111,117,116,111,30,139,251,204,251,
56,35,68,139,5,112,139,119,160,137,165,8,126,248,7,5,166,116,161,112,111,117,116,111,30,14,160,118,248,204,119,1,247,5,240,247,188
,240,3,247,5,248,68,21,139,132,140,132,142,133,8,247,59,252,18,5,147,121,156,127,160,139,8,202,6,160,139,156,151,147,157,8,247,59
,248,18,5,142,145,141,146,139,146,8,224,7,167,116,162,111,111,117,116,111,30,139,65,251,41,251,231,251,39,247,231,139,213,5,167,
116,162,111,111,117,116,111,30,14,160,118,248,204,119,1,241,240,247,0,240,247,0,240,3,20,56,241,248,152,21,149,251,190,191,251,74
,5,145,118,159,124,162,139,8,188,6,158,139,155,149,148,154,8,195,234,194,44,5,148,124,155,129,158,139,8,188,6,162,139,159,154,145
,160,8,190,247,62,150,247,202,139,141,5,166,115,162,112,30,112,139,117,117,138,112,8,129,251,183,107,251,0,73,247,6,139,247,6,5,
166,116,162,112,111,116,116,112,30,139,251,6,73,251,6,107,247,0,129,247,183,5,138,166,117,161,112,139,8,111,116,115,111,31,14,160
,118,248,204,119,1,247,5,190,21,111,161,116,167,30,155,139,153,146,148,150,8,247,52,247,85,247,51,251,85,5,148,128,153,132,155,139
,167,139,162,162,139,167,139,151,135,150,132,148,8,251,65,247,100,247,53,247,86,5,146,148,144,150,139,151,139,167,116,162,111,139
,124,139,125,132,129,127,8,251,40,251,71,251,41,247,71,5,129,151,125,146,124,139,111,139,116,116,139,111,139,127,144,128,146,130
,8,247,53,251,86,251,65,251,100,5,132,130,136,128,139,127,8,14,251,104,240,249,59,119,1,247,5,240,247,187,241,3,247,5,251,54,21,
111,161,117,167,30,247,28,6,160,139,157,151,147,157,8,247,152,248,230,5,142,145,141,146,139,146,8,224,7,167,116,162,111,111,116,
116,111,30,139,65,251,24,251,192,107,139,251,23,247,192,139,213,5,167,116,162,111,111,117,116,111,30,54,7,139,132,140,132,142,133
,8,247,41,251,231,5,146,121,157,126,160,139,8,160,139,72,251,45,36,139,5,111,117,116,111,31,14,139,240,248,2,240,1,247,5,190,21,
111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,208,139,247,243,247,229,5,149,149,145,152,139,153,8,181,7,167
,116,162,111,30,252,9,6,111,117,116,111,111,161,117,167,31,247,185,139,251,244,251,230,5,129,130,134,126,139,125,8,14,139,240,247
,131,240,247,130,240,1,247,203,240,3,247,5,248,26,21,111,161,117,167,30,236,6,167,162,115,112,31,251,80,7,85,186,92,193,30,247,40
,6,167,162,162,167,166,116,162,111,31,251,40,247,80,6,139,178,124,174,115,166,163,166,154,174,139,178,8,247,80,247,40,7,167,162,
162,167,166,116,162,111,31,251,40,6,85,92,92,85,31,251,80,7,112,117,116,110,30,42,6,111,117,116,111,31,14,160,118,249,160,119,1,
247,203,240,3,247,203,190,21,111,162,116,167,166,162,162,167,30,247,181,38,7,240,4,240,247,181,6,166,116,162,112,111,116,116,112
,30,14,139,240,247,131,240,247,130,240,1,247,203,240,3,247,5,190,21,111,161,116,167,30,247,40,6,193,186,186,193,31,247,80,7,165,
161,164,167,30,237,6,167,162,161,167,167,116,162,111,31,41,6,111,117,162,166,31,247,80,7,193,92,186,85,30,251,40,6,111,117,116,112
,111,161,116,167,31,247,40,251,80,6,139,100,154,104,163,112,115,112,124,104,139,100,8,251,80,251,40,7,111,117,116,112,31,14,248,
62,238,247,45,240,1,247,5,240,236,240,237,240,3,20,56,247,5,248,153,21,111,161,117,167,167,162,161,167,30,247,3,7,166,160,162,166
,166,161,116,112,30,87,7,139,99,155,101,167,110,169,109,176,126,175,139,8,217,214,200,228,31,247,3,7,167,116,162,111,111,117,116
,111,30,251,3,7,113,117,114,112,112,117,164,165,30,191,7,139,180,123,177,111,167,109,169,103,153,103,139,8,62,63,77,50,31,14,226
,248,185,3,226,114,21,248,185,249,210,252,185,6,14,139,247,142,1,247,129,247,141,3,247,129,190,21,111,161,116,167,30,247,41,6,167
,161,162,167,31,247,40,7,167,117,162,111,30,251,41,6,111,117,116,111,31,14,160,118,249,160,119,1,247,104,240,3,247,5,248,111,21,
111,161,116,167,30,152,139,150,144,148,146,8,247,157,247,119,188,97,139,101,251,173,251,131,5,128,130,133,124,139,124,8,251,146,
7,111,161,116,167,167,162,162,167,30,139,247,123,247,172,247,131,5,150,149,146,152,139,155,8,224,7,139,154,132,153,128,148,8,40,
224,5,130,146,127,144,127,139,126,139,128,134,130,12,37,251,190,251,147,5,128,130,133,125,139,124,8,14,139,240,247,131,240,247,130
,240,1,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,122,139,209,247,131,247,52,139,5,167,162,
161,167,167,116,162,111,31,251,23,139,198,247,94,5,145,158,158,156,162,139,8,163,6,167,162,162,167,166,116,162,111,31,115,6,67,139
,83,87,122,82,8,72,251,122,251,53,139,5,111,117,116,111,111,161,117,167,31,247,23,139,70,251,131,77,139,5,111,117,116,112,31,14,
160,118,247,147,240,248,60,119,1,247,203,240,3,247,5,247,197,21,111,161,117,167,30,247,40,251,96,6,111,162,116,167,166,162,162,167
,30,247,96,247,40,7,167,162,161,167,167,116,162,111,31,251,40,160,6,247,84,247,219,5,143,147,142,147,139,149,139,166,116,162,111
,139,120,139,123,129,130,124,8,251,46,251,157,251,47,247,157,5,130,154,123,149,120,139,111,139,117,116,139,112,139,129,141,131,143
,131,8,247,84,251,219,139,118,251,40,139,5,111,117,116,111,31,14,249,160,119,1,247,201,243,3,247,151,249,110,21,190,251,148,5,139
,137,138,137,139,137,8,115,166,119,165,165,164,162,166,30,190,247,148,5,139,141,140,141,139,141,8,163,111,159,113,30,40,6,111,114
,116,112,31,14,160,118,247,104,247,36,1,247,253,247,42,3,247,104,247,155,21,111,161,116,167,30,238,251,53,6,111,161,116,167,30,189
,6,167,161,162,167,31,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31,14,247,232,240,1,247,5,248,26,21,33,10,14,139,240
,248,214,240,1,247,5,240,236,240,237,240,3,247,5,22,247,191,249,59,237,251,96,6,111,161,116,167,167,162,162,167,30,247,197,251,192
,253,59,42,247,96,7,167,116,162,111,111,117,116,111,30,14,160,118,247,232,240,247,231,119,1,247,5,240,247,188,240,3,247,5,190,21
,111,161,116,167,167,162,162,167,30,247,181,247,188,251,181,7,111,161,116,167,167,162,162,167,30,249,59,7,166,116,162,111,111,117
,116,112,30,251,181,252,33,7,14,160,118,247,232,240,247,231,119,1,247,5,240,236,240,237,240,3,247,5,247,232,21,247,90,251,181,6,
111,162,116,167,166,162,162,167,30,247,181,247,91,248,26,7,166,116,162,111,111,117,116,112,30,251,181,251,188,247,181,7,166,116,
162,111,111,117,116,112,30,14,160,118,247,19,240,248,2,247,78,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,30,160,139,
158,152,146,158,8,176,234,247,121,139,176,44,5,146,120,158,126,160,139,167,139,162,162,139,167,139,145,137,145,137,145,8,251,90,
248,145,5,131,158,120,152,118,139,117,139,122,126,131,120,8,251,90,252,145,5,137,133,138,133,139,133,8,248,230,4,36,10,247,65,252
,138,21,214,247,85,214,251,85,5,213,248,53,21,36,10,14,160,118,247,62,240,248,44,240,1,247,54,240,247,89,240,3,247,1,191,21,111,
164,115,167,30,162,139,159,154,145,160,8,179,247,26,247,114,139,178,251,26,5,145,118,159,124,162,139,8,167,163,162,167,31,251,27
,248,96,5,185,148,176,181,139,187,8,208,7,193,92,186,85,30,251,89,6,85,92,92,85,31,70,7,139,91,176,97,185,130,8,157,238,21,208,247
,89,70,7,251,71,251,231,21,209,247,130,161,139,209,251,130,5,14,139,240,208,240,208,240,247,130,240,18,247,253,247,142,251,142,240
,19,244,247,5,190,21,111,161,116,167,30,161,139,157,153,146,158,8,189,247,29,240,139,5,19,248,251,11,7,111,161,116,167,30,247,41
,6,167,162,162,167,166,116,162,111,31,19,244,41,247,131,237,6,19,248,167,162,161,167,167,116,162,111,31,19,244,41,247,130,237,6,
19,248,167,162,162,167,166,116,162,111,31,251,41,6,121,139,122,129,130,125,8,251,143,253,68,5,137,133,138,134,139,133,8,247,76,247
,112,21,19,244,203,247,67,139,251,67,5,14,160,118,249,16,247,36,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162
,167,30,139,247,188,247,201,251,223,5,148,129,152,133,154,139,8,167,162,162,167,31,248,60,7,167,116,161,111,111,117,117,111,30,139
,251,189,251,202,247,223,5,130,149,126,145,124,139,8,111,117,117,111,31,247,104,4,111,161,116,167,30,162,139,159,155,145,160,8,247
,240,102,142,139,5,166,160,163,166,31,182,7,166,116,162,111,30,116,139,119,123,134,118,8,251,241,176,135,139,5,113,119,115,113,31
,14,139,240,248,44,240,123,247,78,18,247,5,239,247,188,241,19,216,247,5,247,172,21,139,113,147,120,150,123,8,220,251,5,139,134,5
,172,95,169,82,214,139,8,160,6,229,139,176,225,178,196,8,192,215,5,150,155,148,159,139,164,8,189,7,139,165,130,158,128,155,8,57,
247,5,5,105,185,114,199,61,139,8,118,6,92,139,103,116,119,109,101,82,100,85,100,84,128,122,131,122,139,112,8,247,207,4,19,184,111
,161,116,167,167,161,162,167,30,224,7,166,117,162,111,111,117,116,112,30,239,252,89,21,139,192,247,10,247,61,5,19,216,143,144,147
,144,147,139,8,160,6,147,139,147,134,143,134,8,247,10,251,61,139,88,251,10,251,59,5,135,133,132,134,130,139,8,118,6,130,139,131,
144,136,145,8,247,70,248,169,21,19,184,111,162,116,167,167,162,162,167,30,224,7,166,116,162,111,111,116,116,112,30,14,139,240,248
,214,240,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,30,182,139,156,192,156,167,158,96,183,101,197,139,194,139,182,173
,159,177,8,246,247,107,5,153,168,150,173,139,179,139,222,95,198,110,198,8,205,247,5,5,143,147,142,147,139,149,139,166,116,162,111
,139,96,139,122,86,122,111,120,182,95,177,80,139,85,139,96,105,119,101,8,32,251,107,5,125,110,129,106,139,98,139,54,182,83,168,79
,8,73,251,5,5,135,131,137,131,139,130,8,240,247,231,21,139,162,144,157,147,156,8,247,0,247,105,5,144,149,148,147,151,139,151,139
,150,130,143,12,37,173,72,251,68,251,192,5,125,167,121,166,139,180,8,226,251,96,21,247,68,247,192,5,153,112,158,109,139,100,139,
117,132,120,132,122,8,251,0,251,106,5,134,129,131,132,125,139,127,139,129,147,135,12,37,14,139,240,248,129,247,78,18,247,5,240,137
,240,236,239,139,240,19,228,247,5,247,44,21,56,206,70,223,30,247,87,6,222,208,208,222,31,248,44,7,167,116,161,111,111,117,117,111
,30,252,44,7,111,115,116,112,30,251,87,6,112,116,162,167,31,248,44,7,167,116,161,111,111,117,117,111,30,19,208,238,224,21,36,10,
19,200,247,90,54,21,111,162,116,167,167,160,162,167,30,224,7,166,118,162,111,111,116,116,112,30,14,247,203,240,3,247,203,38,21,240
,28,4,183,38,6,14,249,103,20,139,21,139,139,248,204,139,247,104,139,6,251,104,139,7,158,12,10,240,10,236,142,140,140,180,140,181
,203,12,12,240,11,236,143,189,189,188,188,247,142,12,13,139,12,14,28,0,52,19,0,5,1,1,28,54,125,143,164,111,162,116,167,30,238,6,
167,162,162,167,31,224,7,167,116,161,111,30,40,6,111,116,117,111,31,11,111,161,117,167,30,248,33,6,167,162,161,167,167,116,162,111
,31,252,33,6,111,117,116,111,31,11,247,98,7,139,157,147,150,149,148,158,154,155,166,171,139,8,214,6,153,139,150,134,146,132,8,225
,65,5,148,131,148,125,139,124,8,251,12,7,139,123,131,125,129,132,8,53,65,5,132,133,128,133,125,139,8,64,6,125,139,130,144,130,146
,120,156,105,155,139,174,8,11,111,162,116,167,30,247,189,6,167,162,162,167,166,116,162,111,31,11,111,161,116,167,167,162,162,167
,30,224,7,166,116,162,111,111,117,116,112,30,11,0,0,1,0,0,0,14,0,0,0,24,0,0,0,0,0,2,0,1,0,1,0,114,0,1,0,4,0,0,0,2,0,0,0,1,0,0,0,
10,0,68,0,162,0,2,68,70,76,84,0,14,108,97,116,110,0,36,0,4,0,0,0,0,255,255,0,6,0,0,0,1,0,2,0,3,0,4,0,5,0,4,0,0,0,0,255,255,0,6,0
,0,0,1,0,2,0,3,0,4,0,5,0,6,97,97,108,116,0,38,115,115,48,49,0,44,115,115,48,50,0,50,115,115,48,51,0,56,115,115,48,52,0,62,115,115
,48,53,0,68,0,0,0,1,0,0,0,30,0,1,0,1,0,28,0,1,0,2,0,26,0,1,0,3,0,24,0,1,0,4,0,22,0,1,0,5,0,0,1,0,0,0,1,1,0,0,1,2,0,0,1,3,0,0,1,4
,0,6,0,14,0,22,0,30,0,38,0,46,0,54,0,3,0,0,0,1,0,48,0,1,0,0,0,1,0,100,0,1,0,0,0,1,0,104,0,1,0,0,0,1,0,108,0,1,0,0,0,1,0,112,0,1,
0,0,0,1,0,116,0,1,0,46,0,5,0,16,0,22,0,28,0,34,0,40,0,2,0,8,0,101,0,2,0,13,0,102,0,2,0,14,0,103,0,2,0,15,0,97,0,2,0,32,0,98,0,1,
0,5,0,8,0,13,0,14,0,15,0,32,0,1,0,6,0,82,0,1,0,1,0,15,0,1,0,6,0,66,0,1,0,1,0,32,0,1,0,6,0,93,0,1,0,1,0,8,0,1,0,6,0,89,0,1,0,1,0,
13,0,1,0,6,0,89,0,1,0,1,0,14,0,1,0,0,0,10,0,44,0,46,0,2,68,70,76,84,0,14,108,97,116,110,0,24,0,4,0,0,0,0,255,255,0,0,0,4,0,0,0,0
,255,255,0,0,0,0,0,0,0,0,0,1,0,0,0,0,204,109,177,85,0,0,0,0,204,138,51,80,0,0,0,0,204,138,51,83,2,211,0,0,2,211,0,0,1,30,0,111,0
,113,0,113,0,113,0,113,1,5,1,5,0,212,0,113,0,113,0,212,0,113,1,5,0,113,0,113,0,113,0,113,0,113,0,137,0,113,0,113,0,113,0,113,0,113
,1,5,0,212,0,113,0,113,0,113,0,113,0,113,0,110,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,162,0,113,0,113,0,113,0,113,0,113
,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,112,0,113,0,113,0,113,0,112,0,113,0,162,0,113,0,113,0,113,0,113,0
,113,0,137,0,113,0,113,0,162,0,162,0,113,0,162,0,105,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,102,0,113,0,113,0,113
,0,113,1,55,0,113,0,113,0,87,0,237,0,113,0,113,0,113,1,3,0,212,0,113,0,113,0,113,0,113,0,113,0,109,0,113,0,113,0,113,0,113,0,113
,1,55,0,0]);Module["FS_createDataFile"]("/","OCRA.otf",fileData0,true,true);var fileData1=[];fileData1
.push.apply(fileData1,[79,84,84,79,0,13,0,128,0,3,0,80,67,70,70,32,129,193,239,92,0,0,6,176,0,0,60,213,70,70,84,77,108,79,91,201
,0,0,68,252,0,0,0,28,71,68,69,70,0,190,0,4,0,0,67,136,0,0,0,32,71,80,79,83,184,255,184,254,0,0,68,204,0,0,0,48,71,83,85,66,119,90
,101,154,0,0,67,168,0,0,1,36,79,83,47,50,90,188,142,61,0,0,1,64,0,0,0,96,99,109,97,112,83,222,211,245,0,0,4,28,0,0,2,114,104,101
,97,100,6,47,76,75,0,0,0,220,0,0,0,54,104,104,101,97,4,6,251,46,0,0,1,20,0,0,0,36,104,109,116,120,49,149,74,40,0,0,69,24,0,0,1,240
,109,97,120,112,0,145,80,0,0,0,1,56,0,0,0,6,110,97,109,101,174,145,152,55,0,0,1,160,0,0,2,121,112,111,115,116,0,3,0,0,0,0,6,144,
0,0,0,32,0,1,0,0,0,2,0,0,89,59,114,1,95,15,60,245,0,11,3,232,0,0,0,0,211,135,133,179,0,0,0,0,211,135,133,179,249,67,249,67,6,189
,6,189,0,0,0,8,0,2,0,0,0,0,0,0,0,1,0,0,3,170,254,176,0,90,2,211,249,67,249,67,6,189,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,103,0,0,80
,0,0,145,0,0,0,2,2,211,1,144,0,5,0,0,2,138,2,188,0,0,0,140,2,138,2,188,0,0,1,224,0,49,1,2,0,0,2,0,5,9,0,0,0,0,0,0,0,0,0,175,0,0,
0,104,0,0,0,0,0,0,0,0,80,102,69,100,0,64,0,32,43,88,3,32,255,56,0,90,3,170,1,80,0,0,0,1,0,0,0,0,2,22,2,189,0,32,0,32,0,1,0,0,0,14
,0,174,0,1,0,0,0,0,0,0,0,67,0,136,0,1,0,0,0,0,0,1,0,4,0,214,0,1,0,0,0,0,0,2,0,7,0,235,0,1,0,0,0,0,0,3,0,41,1,71,0,1,0,0,0,0,0,4,
0,13,1,141,0,1,0,0,0,0,0,5,0,10,1,177,0,1,0,0,0,0,0,6,0,4,1,198,0,3,0,1,4,9,0,0,0,134,0,0,0,3,0,1,4,9,0,1,0,8,0,204,0,3,0,1,4,9,
0,2,0,14,0,219,0,3,0,1,4,9,0,3,0,82,0,243,0,3,0,1,4,9,0,4,0,26,1,113,0,3,0,1,4,9,0,5,0,20,1,155,0,3,0,1,4,9,0,6,0,8,1,188,0,77,0
,97,0,116,0,116,0,104,0,101,0,119,0,32,0,83,0,107,0,97,0,108,0,97,0,32,0,40,0,50,0,48,0,49,0,49,0,41,0,59,0,32,0,98,0,97,0,115,0
,101,0,100,0,32,0,111,0,110,0,32,0,99,0,111,0,100,0,101,0,32,0,98,0,121,0,32,0,78,0,111,0,114,0,98,0,101,0,114,0,116,0,32,0,83,0
,99,0,104,0,119,0,97,0,114,0,122,0,32,0,40,0,49,0,57,0,56,0,54,0,44,0,32,0,50,0,48,0,49,0,49,0,41,0,0,77,97,116,116,104,101,119,
32,83,107,97,108,97,32,40,50,48,49,49,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,78,111,114,98,101,114
,116,32,83,99,104,119,97,114,122,32,40,49,57,56,54,44,32,50,48,49,49,41,0,0,79,0,67,0,82,0,66,0,0,79,67,82,66,0,0,82,0,101,0,103
,0,117,0,108,0,97,0,114,0,0,82,101,103,117,108,97,114,0,0,70,0,111,0,110,0,116,0,70,0,111,0,114,0,103,0,101,0,32,0,50,0,46,0,48,
0,32,0,58,0,32,0,79,0,67,0,82,0,32,0,66,0,32,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,32,0,58,0,32,0,50,0,55,0,45,0,57,0,45,0,50
,0,48,0,49,0,50,0,0,70,111,110,116,70,111,114,103,101,32,50,46,48,32,58,32,79,67,82,32,66,32,82,101,103,117,108,97,114,32,58,32,
50,55,45,57,45,50,48,49,50,0,0,79,0,67,0,82,0,32,0,66,0,32,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,0,79,67,82,32,66,32,82,101,
103,117,108,97,114,0,0,86,0,101,0,114,0,115,0,105,0,111,0,110,0,32,0,50,0,32,0,0,86,101,114,115,105,111,110,32,50,32,0,0,79,0,67
,0,82,0,66,0,0,79,67,82,66,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,28,0,1,0,0,0,0,1,108,0,3,0,1,0,0,0,28,0,4,1,80,0,0,0,80,0,64,0,5,0,16,0
,126,0,161,0,164,0,169,0,175,0,180,0,184,0,191,0,196,0,198,0,214,0,216,0,220,0,223,0,228,0,230,0,246,0,248,0,252,1,49,1,83,2,55,
2,199,2,217,2,220,3,147,3,152,3,155,3,158,3,160,3,163,3,166,3,168,33,38,33,145,33,147,34,6,43,34,43,88,255,255,0,0,0,32,0,161,0,
164,0,167,0,174,0,180,0,184,0,191,0,196,0,198,0,214,0,216,0,220,0,223,0,228,0,230,0,246,0,248,0,252,1,49,1,82,2,55,2,198,2,216,2
,220,3,147,3,152,3,155,3,158,3,160,3,163,3,165,3,168,33,38,33,145,33,147,34,6,43,34,43,88,255,255,255,225,255,191,255,189,255,187
,255,183,255,179,255,176,255,170,255,166,255,165,255,150,255,149,255,146,255,144,255,140,255,139,255,124,255,123,255,120,255,68,
255,36,254,65,253,179,253,163,253,161,252,235,252,231,252,229,252,227,252,226,252,224,252,223,252,222,223,97,222,247,222,246,222
,132,213,105,213,52,0,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,1,6,0,0,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,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,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,91,92,93,94,95,0,106,0,0,0,0,108,110,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,0,0,0,0,116,0,0,0,0,98,0,0,111,101,100,0
,103,99,0,107,109,0,0,0,0,0,0,0,0,0,0,0,0,0,0,113,115,105,96,0,0,0,0,138,0,0,0,0,0,0,0,118,119,0,0,0,0,0,0,0,0,0,0,0,0,0,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,121,125,102,123,124,0,104,0,0,122,0,0,0,3,0,0,0,0,0,0,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,4,4,0,1,1,1,5,79,67,82,66,0,1,2,0,1,0,54,248,47,0,248,48,1,248,49,2,248,50,3,248,51,4,139,12,3,139,12,4,28
,249,67,28,249,67,28,6,189,28,6,189,5,28,1,96,15,28,0,0,16,28,2,129,17,28,0,70,28,58,29,18,0,25,2,0,1,0,9,0,14,0,19,0,25,0,27,0,
29,0,34,0,41,0,44,0,47,0,50,0,57,0,66,0,71,0,78,0,85,0,100,0,109,0,121,0,128,0,133,0,200,0,213,0,217,0,223,100,111,116,108,101,115
,115,106,71,97,109,109,97,84,104,101,116,97,76,97,109,98,100,97,88,105,80,105,83,105,103,109,97,85,112,115,105,108,111,110,80,104
,105,80,115,105,79,104,109,97,114,114,111,119,117,112,97,114,114,111,119,100,111,119,110,68,101,108,116,97,117,110,105,50,66,50,
50,117,110,105,50,66,53,56,113,117,111,116,101,115,105,110,103,108,101,46,97,108,116,103,114,97,118,101,46,97,108,116,113,117,111
,116,101,100,98,108,46,97,108,116,98,97,114,46,97,108,116,50,46,48,48,48,77,97,116,116,104,101,119,32,83,107,97,108,97,32,40,50,
48,49,49,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,78,111,114,98,101,114,116,32,83,99,104,119,97,114,
122,32,40,49,57,56,54,44,32,50,48,49,49,41,79,67,82,32,66,32,82,101,103,117,108,97,114,79,67,82,66,78,111,114,109,97,108,0,0,0,0
,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,
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,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,94,0,95,0,96,0,103,0,102,0,131,0,170,0,165,0,128,0,125,0
,133,0,123,0,173,0,138,0,189,0,141,0,195,0,149,0,202,0,144,0,218,0,147,0,224,0,145,0,142,0,148,1,135,0,126,0,136,0,129,0,130,0,127
,1,136,1,137,1,138,1,139,1,140,1,141,1,142,1,143,1,144,1,145,1,146,1,147,1,148,1,149,1,150,1,151,1,152,1,153,1,154,0,145,2,0,1,0
,2,0,3,0,31,0,134,1,64,1,254,2,176,3,110,3,165,3,251,4,77,4,200,5,15,5,80,5,119,5,161,5,218,6,78,6,146,7,13,7,136,7,236,8,103,8,
208,9,37,9,176,10,36,10,87,10,169,10,245,11,55,11,131,12,3,12,205,13,33,13,167,14,30,14,116,14,191,14,254,15,163,15,235,16,47,16
,142,16,236,17,26,17,125,17,206,18,9,18,96,19,6,19,124,20,12,20,67,20,156,20,225,21,106,21,227,22,58,22,133,22,189,22,248,23,52,
23,60,23,101,23,162,24,29,24,164,25,33,25,166,26,21,26,116,27,26,27,118,27,165,28,14,28,114,28,183,29,47,29,127,29,152,30,22,30,
154,30,241,31,128,31,239,32,81,32,167,33,31,33,152,34,3,34,80,34,222,35,1,35,141,35,172,35,200,36,138,37,81,37,142,38,150,38,174
,38,209,39,13,39,94,39,222,40,102,40,217,41,86,42,19,42,173,43,64,43,208,44,172,44,233,45,146,46,7,46,38,46,203,47,89,47,163,47,
171,47,251,48,68,48,86,48,117,48,183,49,20,49,120,49,170,49,245,50,118,50,228,51,146,52,7,52,175,53,15,53,111,53,164,53,188,53,189
,53,224,54,29,54,90,54,118,14,14,66,247,38,18,247,182,247,38,251,15,239,19,192,247,182,116,21,32,10,19,160,162,247,198,21,33,10,
14,248,86,247,212,18,247,53,247,22,251,22,239,247,84,247,15,251,15,237,19,160,247,53,248,136,21,113,163,115,165,30,166,139,159,160
,142,161,8,168,247,119,5,19,192,139,141,140,140,139,141,8,162,115,161,112,30,110,6,112,116,116,112,31,19,136,247,184,251,112,21,
112,162,116,166,30,165,139,156,157,144,161,8,19,144,164,247,122,139,143,5,164,114,160,114,30,116,6,112,116,117,111,31,14,247,96,
239,247,49,239,247,104,119,1,247,242,238,195,238,3,247,5,247,146,21,139,113,159,118,164,136,8,102,251,59,5,112,163,116,165,30,163
,139,159,156,144,161,8,179,247,70,247,17,139,104,251,48,139,128,5,112,162,116,166,30,162,139,160,157,144,160,8,179,247,70,193,139
,5,166,162,162,166,166,117,162,111,31,108,139,174,247,49,155,139,5,166,162,162,166,31,139,164,120,160,115,143,8,173,247,43,139,150
,5,167,116,161,112,30,114,139,122,120,132,119,8,100,251,65,251,18,139,175,247,54,5,165,115,163,113,30,115,139,119,121,134,118,8,
100,251,65,84,139,5,111,117,117,111,111,162,117,166,31,172,139,103,251,49,122,139,5,111,117,117,111,31,247,61,189,21,175,247,49,
247,17,139,104,251,49,5,14,181,239,248,54,118,213,241,1,247,8,238,237,239,239,239,3,247,5,247,69,21,139,133,139,132,142,133,169,
64,211,106,234,131,8,137,7,111,162,117,166,166,162,162,166,30,141,7,247,1,155,230,205,139,247,2,139,247,14,41,178,37,170,8,247,79
,7,177,131,165,122,161,111,148,127,152,130,158,139,166,139,162,162,139,165,139,150,135,149,133,147,102,193,86,173,62,149,8,144,7
,166,116,162,112,112,116,117,111,30,134,7,33,127,48,85,139,251,2,139,251,13,238,102,237,111,8,251,103,7,113,141,114,143,120,149,
108,155,134,192,95,139,112,139,116,117,139,111,8,241,247,250,21,139,191,186,158,190,146,8,251,49,7,102,153,78,155,139,188,8,247,
90,252,26,21,247,72,7,188,122,190,113,139,91,139,86,92,113,86,129,8,14,126,239,228,239,247,100,239,228,239,18,247,7,237,199,236,
124,237,199,236,19,249,247,5,182,21,111,162,116,166,30,156,139,157,151,148,152,8,248,35,249,55,5,143,146,142,148,139,148,139,166
,116,162,112,139,126,139,125,135,129,129,8,252,42,253,65,5,134,132,137,130,139,130,8,141,248,218,21,68,180,69,226,30,19,253,224,
181,211,211,211,97,212,54,55,95,64,66,31,237,142,21,162,146,161,162,162,146,116,117,120,131,114,117,30,130,6,123,144,134,161,139
,156,8,19,251,247,34,252,136,21,68,180,69,226,224,181,212,211,211,97,211,54,30,55,95,64,66,31,237,142,21,162,145,161,163,162,146
,116,117,120,130,114,118,30,133,6,138,140,138,140,138,139,8,123,134,167,153,31,14,126,239,248,222,239,18,247,5,239,67,239,247,75
,239,127,240,19,228,247,5,247,97,21,139,251,26,227,56,247,24,138,8,145,6,197,139,187,154,179,164,152,122,150,119,167,139,166,139
,162,162,139,166,139,165,120,155,128,155,176,195,158,212,139,220,8,166,116,163,112,112,115,116,111,30,139,95,132,98,125,105,8,251
,35,247,91,5,19,216,206,191,247,1,204,139,247,9,8,236,51,193,43,251,10,58,70,251,8,30,139,61,172,85,175,90,8,85,91,96,79,139,45,
8,19,224,239,22,139,197,167,170,169,169,8,247,47,251,107,5,115,125,111,131,106,139,8,133,6,62,140,94,178,139,217,8,19,216,167,248
,19,21,199,178,164,199,175,187,127,100,30,139,115,121,114,126,123,111,105,101,111,100,111,8,115,173,116,176,139,189,8,14,247,168
,247,67,3,247,168,249,100,21,159,251,182,5,141,114,160,121,166,139,8,173,6,165,139,157,156,144,163,8,160,247,184,5,139,140,140,140
,139,140,139,162,118,160,116,142,8,58,6,112,116,117,111,31,14,249,153,119,1,247,148,239,3,247,148,248,7,21,139,251,76,237,251,9,
247,4,64,147,134,149,136,149,139,166,139,162,161,139,167,139,156,129,156,127,147,50,196,62,232,139,247,35,8,144,7,141,247,46,209
,228,233,201,152,148,148,155,139,155,139,167,116,161,112,139,129,139,129,136,131,133,251,6,60,45,251,9,137,251,83,8,14,249,153,119
,1,248,6,239,3,247,73,176,21,112,162,116,166,30,149,139,149,142,147,144,247,6,216,236,247,10,139,247,79,139,247,84,43,247,8,251,
7,218,131,145,130,142,128,139,112,139,116,116,139,112,139,126,148,115,152,135,8,230,77,215,47,139,251,43,139,251,41,64,50,47,79,
127,131,129,121,139,123,8,14,247,205,239,3,247,5,248,82,21,139,115,154,123,158,131,8,247,26,95,49,251,13,5,133,130,135,129,139,128
,139,112,161,116,167,139,153,139,151,143,149,148,8,246,247,36,223,251,36,5,148,130,153,135,152,139,167,139,161,161,139,167,139,148
,137,147,135,147,8,62,247,23,247,9,178,5,159,146,154,156,139,163,139,166,116,162,112,139,133,139,134,138,134,137,8,251,26,95,139
,247,43,5,166,116,162,112,112,116,117,111,30,139,251,43,251,41,188,5,112,115,114,112,31,14,247,222,239,1,247,205,239,3,247,5,248
,16,21,111,162,117,166,30,247,42,251,71,6,111,162,117,166,166,162,162,166,30,247,71,247,42,7,166,162,162,166,166,116,162,112,31,
251,42,247,70,6,166,117,162,111,111,117,117,111,30,251,70,251,42,7,112,116,117,111,31,14,251,55,118,1,247,51,251,26,21,111,161,117
,167,30,167,6,152,139,152,143,149,149,8,247,146,247,153,5,148,148,144,152,139,152,8,170,7,167,116,161,112,30,251,3,6,126,139,124
,135,130,129,8,251,70,251,194,5,135,131,137,131,139,130,8,14,247,208,247,20,1,247,5,248,2,21,111,161,117,167,30,248,36,6,167,161
,162,166,31,167,7,166,117,162,111,30,252,36,6,111,117,117,111,31,14,129,247,89,1,247,133,247,135,3,247,133,179,21,112,162,116,166
,30,247,35,6,166,162,161,167,31,236,7,167,116,161,112,30,251,35,6,112,116,116,112,31,14,249,153,119,1,247,65,176,21,111,162,117,
166,30,159,139,159,153,145,156,8,247,172,249,66,5,142,145,140,145,139,146,139,166,116,162,112,139,119,139,119,125,133,122,8,251,
172,253,66,5,136,133,138,133,139,132,8,14,125,239,248,222,239,1,247,5,239,247,192,239,3,247,5,247,235,21,251,87,189,251,53,247,92
,30,149,139,148,138,149,139,8,154,6,247,54,152,183,247,65,139,247,62,8,247,122,119,247,92,251,122,251,124,121,251,91,251,123,30,
239,22,139,215,139,227,154,201,156,208,172,174,224,139,155,139,161,139,148,137,237,120,144,251,32,139,251,15,8,93,7,251,0,126,251
,40,251,7,30,117,6,123,139,117,139,129,141,50,158,126,247,26,139,240,8,14,247,248,239,3,247,36,248,202,21,112,161,116,167,30,151
,139,151,143,148,147,8,247,21,247,2,139,252,234,5,111,162,117,166,166,162,162,166,30,249,60,7,166,116,162,112,30,107,6,127,139,128
,135,130,131,8,251,75,251,49,5,129,131,134,125,139,126,8,14,140,239,248,208,239,1,248,123,239,3,247,22,249,50,21,113,163,116,165
,30,149,139,150,142,147,145,183,170,183,151,205,139,207,139,195,96,139,69,139,112,128,114,123,118,112,103,87,106,94,110,59,88,60
,77,113,48,8,130,108,138,96,139,100,8,118,7,112,162,116,166,30,247,244,6,166,162,162,166,166,117,162,111,31,251,193,6,145,247,8,
202,177,218,189,224,193,247,4,208,139,247,24,139,247,20,42,224,251,19,139,47,139,81,119,77,98,127,131,130,120,139,124,8,14,126,239
,248,207,239,1,248,140,239,3,247,5,208,21,66,247,36,130,199,30,247,46,139,247,18,227,146,247,43,8,154,7,139,247,17,53,216,251,5,
168,8,247,51,247,60,5,148,148,145,150,139,152,8,174,7,166,116,162,112,30,251,255,6,111,117,117,111,112,162,116,166,31,247,171,139
,251,76,251,85,5,131,131,136,127,139,128,8,112,162,116,166,241,241,98,36,30,130,7,134,40,55,94,41,139,93,139,93,148,96,158,133,141
,133,141,132,139,8,112,116,117,111,31,14,247,56,239,1,248,46,239,3,247,5,247,106,21,111,162,117,166,30,247,139,251,16,6,112,162,
116,166,166,162,162,166,30,247,16,192,7,166,162,162,166,166,117,162,111,31,86,247,8,6,166,116,162,112,112,116,116,112,30,251,8,251
,81,7,247,96,248,71,5,142,145,141,146,139,147,139,166,116,162,112,139,120,139,119,126,133,123,8,251,109,252,99,5,136,132,137,133
,139,131,8,14,126,239,247,218,239,247,37,239,1,248,109,239,3,247,31,176,21,111,162,117,166,30,246,139,247,3,157,220,211,183,179,
180,203,139,215,8,247,65,251,13,222,251,67,30,124,139,147,247,37,247,139,139,5,166,162,163,165,166,117,162,111,31,251,186,6,112,
139,118,119,137,112,8,125,251,143,139,136,5,113,163,118,165,30,143,6,160,141,161,140,160,139,204,139,202,127,174,101,165,111,146
,100,139,100,139,117,132,118,129,120,91,54,251,6,116,34,139,8,112,116,117,111,31,14,126,239,247,192,239,1,247,5,239,247,192,239,
3,247,5,247,121,21,143,251,37,238,42,247,39,139,8,247,39,242,238,247,35,247,49,44,240,251,47,31,117,139,119,137,119,135,191,212,
200,206,199,204,147,148,144,151,139,152,139,166,116,162,112,139,126,139,125,134,130,129,61,54,60,53,78,38,8,101,76,107,58,139,41
,8,239,127,21,237,192,199,236,239,189,81,39,51,78,85,50,49,79,192,228,30,14,249,38,239,1,247,131,239,3,247,5,249,88,21,112,162,116
,166,30,247,232,6,131,118,126,120,127,121,91,69,78,79,97,65,78,32,120,251,17,139,251,16,8,111,162,117,166,166,162,162,166,30,139
,245,153,247,0,192,232,180,210,200,197,184,206,173,189,165,194,139,199,8,166,117,162,111,30,252,36,6,111,117,117,111,31,14,126,239
,248,222,239,18,247,5,238,74,239,247,124,239,73,239,19,228,247,5,247,92,21,251,19,245,53,247,36,30,183,6,247,10,148,227,237,139,
245,139,237,70,212,63,191,8,19,216,201,178,188,189,139,227,8,244,251,3,207,34,33,251,2,72,33,30,139,51,189,87,200,102,8,63,87,70
,67,139,40,8,19,228,238,22,139,222,229,193,202,171,204,105,222,83,139,60,8,77,80,88,69,30,118,6,57,70,178,213,31,19,216,174,248,
36,21,190,209,161,185,185,209,117,88,30,139,72,80,113,82,113,8,83,165,79,166,139,205,8,14,247,165,239,247,192,239,1,247,5,239,247
,192,239,3,247,5,248,150,21,251,26,236,32,247,45,30,159,139,160,140,159,142,92,65,82,72,74,80,129,129,133,127,139,124,139,111,162
,117,166,139,151,139,151,144,148,147,222,213,210,226,195,235,8,182,212,177,214,139,245,8,247,50,251,2,240,251,32,251,32,251,2,251
,10,251,33,30,239,22,225,204,212,224,228,200,79,40,30,139,114,136,115,132,116,123,83,76,126,78,139,8,46,82,197,222,31,14,129,247
,72,247,75,247,72,1,247,151,247,100,3,247,151,179,21,111,162,117,166,30,247,0,6,166,162,162,166,31,219,7,166,116,162,112,30,251,
0,6,112,116,117,111,31,247,175,4,34,10,14,247,245,247,72,1,247,171,247,100,3,247,48,251,21,21,111,162,117,166,30,182,6,152,139,152
,145,148,148,8,247,96,247,159,5,141,141,140,142,139,142,139,143,138,143,139,143,8,166,116,162,112,30,251,3,6,117,139,122,126,133
,124,8,251,16,251,145,5,136,133,138,131,139,132,8,247,15,248,168,21,34,10,14,247,18,247,236,21,248,45,251,163,5,147,133,149,136,
149,139,166,139,162,162,139,166,139,153,134,151,129,149,8,251,237,247,122,247,237,247,122,5,151,147,142,153,139,153,139,166,116,
162,112,139,129,139,129,136,131,133,8,252,45,251,163,5,130,130,135,125,139,126,139,126,143,125,139,130,8,14,247,108,239,247,20,239
,1,247,5,247,158,21,111,161,117,167,30,248,36,6,167,161,162,166,166,116,162,112,31,252,36,6,112,116,117,111,31,247,120,4,111,162
,117,166,30,248,36,6,166,162,162,166,166,117,162,111,31,252,36,6,111,117,117,111,31,14,247,5,247,6,21,111,162,117,166,30,149,139
,148,142,148,145,8,248,44,247,163,5,150,146,142,155,139,152,139,152,135,153,139,148,8,252,44,247,163,5,130,145,130,142,129,139,112
,139,116,117,139,111,139,125,144,127,148,129,8,247,237,251,122,251,237,251,122,5,130,129,134,127,139,125,8,14,72,247,38,248,173,
237,18,247,33,239,188,247,38,251,15,239,182,239,19,236,247,33,248,156,21,140,114,161,117,166,139,8,167,161,161,167,31,139,142,139
,144,5,139,197,193,160,191,145,8,142,6,148,139,148,136,148,139,179,130,178,119,139,92,139,105,109,91,119,118,103,99,82,109,139,66
,8,111,162,117,166,166,162,162,166,30,139,146,143,146,143,144,155,161,163,153,157,159,175,177,179,207,140,204,8,141,7,247,10,40,
196,38,33,251,1,76,251,13,30,19,244,247,41,252,183,21,32,10,14,120,239,247,132,239,247,89,239,1,247,5,239,247,15,239,216,239,3,247
,5,247,86,21,139,251,9,173,47,247,3,135,8,147,6,185,139,173,154,166,162,161,113,171,128,172,139,174,139,175,152,165,163,191,187,
143,202,139,238,8,247,6,7,247,95,90,247,64,251,96,30,130,6,251,17,136,45,81,123,32,8,132,7,111,161,117,167,30,164,139,160,158,142
,162,147,199,198,159,208,142,8,148,6,247,32,152,251,31,251,28,31,139,251,6,139,113,5,139,80,136,79,91,136,8,138,6,121,139,133,161
,138,162,8,247,135,7,165,116,163,112,30,122,139,122,129,130,124,117,154,103,151,108,139,251,7,138,113,251,2,139,251,8,8,239,133,
21,139,145,139,156,5,184,141,204,178,30,177,139,169,108,153,112,8,251,19,7,126,111,123,112,100,139,8,133,6,91,142,138,193,139,189
,8,14,247,91,239,248,44,119,1,247,11,179,21,111,162,117,166,30,162,139,159,156,144,159,8,183,247,64,247,95,139,184,251,64,5,144,
119,159,122,162,139,8,166,163,163,165,31,251,57,249,16,5,134,157,119,152,118,139,8,71,6,116,139,118,122,134,119,8,251,53,252,253
,5,247,60,247,138,21,215,247,184,215,251,184,5,14,140,239,247,107,239,247,77,239,18,247,5,239,247,178,238,54,239,19,244,247,5,190
,21,111,162,117,166,30,247,63,6,211,139,213,145,195,183,188,177,167,198,139,200,8,141,7,139,200,111,196,92,176,8,19,248,180,175,
158,189,139,189,139,207,104,206,78,174,88,167,80,140,81,139,8,251,63,6,111,117,117,111,31,239,252,186,21,247,107,247,42,7,19,244
,219,139,208,111,140,62,8,138,7,48,47,121,52,30,251,13,247,207,21,247,77,247,13,7,19,248,226,139,210,128,146,60,8,130,7,70,70,122
,72,30,14,126,239,248,97,118,228,239,1,247,53,239,247,99,237,3,247,53,247,234,21,141,251,71,188,251,68,247,77,139,227,139,207,193
,152,215,8,148,7,166,117,162,112,30,115,139,118,120,135,117,133,108,110,122,103,139,251,12,139,125,247,35,137,247,6,8,156,7,139,
247,8,160,247,25,247,2,145,8,144,6,157,139,156,134,154,128,167,118,132,87,188,139,8,166,161,162,166,31,149,7,122,214,72,193,52,139
,8,134,6,251,70,135,88,251,68,139,251,75,8,14,161,118,249,80,119,1,247,56,239,247,115,239,3,247,56,190,21,112,162,116,166,30,177
,139,176,139,176,146,247,41,166,247,4,247,13,139,247,67,139,227,109,215,99,193,74,226,51,204,251,42,139,8,111,117,116,112,31,239
,252,184,21,248,131,7,181,134,172,126,168,118,203,93,194,63,139,33,139,251,36,49,67,251,25,127,8,14,140,239,247,107,239,247,77,239
,1,247,51,239,3,247,51,190,21,111,162,117,166,30,247,234,6,166,162,161,167,167,117,161,111,31,251,184,247,107,247,136,6,167,161,
162,166,166,116,162,112,31,251,136,247,77,247,184,6,166,162,161,167,167,117,161,111,31,251,234,6,111,117,117,111,31,14,247,208,239
,247,77,239,1,247,102,239,3,247,102,179,21,112,162,116,166,166,162,162,166,30,247,168,247,71,7,166,162,162,166,166,115,162,113,31
,251,71,247,77,247,116,6,166,162,161,167,167,117,161,111,31,251,166,6,111,117,116,112,31,14,124,241,247,84,239,247,126,241,18,247
,13,240,247,3,247,155,39,239,19,244,247,13,247,245,21,139,251,9,170,251,9,199,77,183,93,205,113,214,139,169,139,171,143,171,148,
175,149,208,158,139,186,8,19,248,247,147,7,166,116,162,112,30,251,55,6,112,116,117,111,111,161,117,167,31,19,244,247,5,251,66,6,
105,127,106,133,109,139,69,139,84,172,115,207,121,189,129,202,139,200,139,222,158,220,182,183,168,168,177,153,177,139,181,139,180
,122,166,108,8,149,128,151,132,155,139,166,139,162,162,139,166,139,151,135,150,131,148,102,184,86,168,81,148,125,141,125,140,126
,139,66,139,79,106,98,98,8,78,78,109,251,5,139,251,6,8,14,247,202,239,247,195,119,1,247,33,239,247,135,239,3,247,33,179,21,112,162
,116,166,166,162,161,167,30,247,162,247,135,251,162,7,112,162,116,166,166,162,161,167,30,249,3,7,167,116,161,112,112,116,116,112
,30,251,145,251,135,247,145,7,167,116,161,112,112,116,116,112,30,14,140,239,248,136,239,1,247,205,239,3,247,62,190,21,112,162,116
,166,30,247,178,6,166,162,162,166,166,117,162,111,31,46,248,136,212,6,166,162,162,166,166,117,162,111,31,251,138,6,111,117,116,112
,112,162,116,166,31,212,252,136,46,6,111,117,116,112,31,14,123,241,249,7,119,1,247,22,239,247,52,239,3,247,22,247,57,21,139,66,184
,82,189,111,169,123,169,132,167,139,236,139,220,223,139,232,139,143,138,144,139,143,8,248,125,7,166,116,162,112,112,116,116,112,
30,252,133,7,83,103,115,102,97,94,169,189,30,139,144,140,144,140,145,8,148,7,167,118,161,111,30,113,139,121,122,134,116,136,126,
138,128,139,127,8,14,249,93,119,1,247,19,239,3,247,19,179,21,112,162,116,166,166,162,162,166,30,139,247,167,247,192,251,202,5,149
,129,152,134,152,139,166,139,162,162,139,166,139,152,133,151,130,149,8,251,172,247,182,247,149,247,155,5,148,148,145,152,139,152
,139,166,116,162,112,139,126,139,126,133,129,130,8,251,169,251,174,139,247,139,5,166,116,162,112,112,116,116,112,30,14,140,239,248
,248,119,1,247,33,239,3,247,33,190,21,112,162,116,166,30,248,8,6,166,162,162,166,166,117,162,111,31,251,214,248,198,6,167,116,161
,112,112,116,116,112,30,14,249,93,119,1,247,5,239,247,192,239,3,247,5,179,21,111,162,117,166,166,162,162,166,30,139,248,175,241,
251,228,5,145,119,159,123,161,139,163,139,156,156,146,158,8,241,247,228,139,252,175,5,111,162,117,166,166,162,162,166,30,249,3,7
,166,116,162,112,30,62,6,116,139,119,123,134,119,8,64,251,139,64,247,139,5,133,158,120,156,116,139,8,62,6,112,116,117,111,31,14,
249,93,119,1,247,19,239,247,164,239,3,247,19,179,21,112,162,116,166,166,162,162,166,30,139,248,116,247,131,252,138,5,147,123,156
,127,159,139,8,177,6,165,163,162,166,31,249,3,7,166,115,162,113,112,116,117,111,30,139,252,117,251,132,248,138,5,131,155,122,152
,119,139,8,102,6,112,116,116,112,31,14,126,239,248,170,239,1,247,8,239,247,186,239,3,247,8,247,246,21,35,10,239,135,21,144,7,139
,218,161,222,179,191,157,162,169,164,176,139,8,243,182,251,47,251,4,35,93,251,55,38,31,37,139,95,247,55,138,243,8,14,247,179,239
,247,106,239,1,247,33,239,247,164,239,3,247,33,179,21,112,162,116,166,166,162,161,167,30,247,139,247,14,7,219,139,222,158,187,203
,164,171,151,179,141,181,8,150,7,247,30,251,0,207,251,34,30,251,64,6,111,117,116,112,31,239,251,156,21,247,106,247,14,7,224,204,
117,55,31,132,7,135,58,66,119,66,139,8,14,171,239,248,120,239,1,247,7,242,247,164,235,3,247,7,248,13,21,139,66,149,66,159,89,172
,59,223,70,230,139,178,139,180,152,178,169,8,193,69,5,148,127,153,136,152,139,166,139,163,162,139,166,139,150,135,150,132,148,8,
74,223,5,171,199,156,219,139,220,8,247,61,65,247,63,251,51,30,130,6,40,139,69,61,109,69,119,91,129,68,139,67,8,242,163,21,192,7,
144,214,181,226,220,139,235,139,187,251,15,139,251,14,139,94,132,94,126,100,8,60,241,5,130,150,124,143,125,139,112,139,117,116,139
,112,139,127,143,129,146,130,8,236,251,17,5,121,126,119,131,115,139,129,139,129,140,128,142,45,164,132,247,6,139,247,18,8,14,247
,179,239,247,106,239,1,247,45,239,247,123,239,3,247,45,179,21,111,162,117,166,166,162,162,166,30,247,139,225,7,247,56,251,175,5,
148,129,154,135,152,139,166,139,162,162,139,166,139,148,138,147,134,147,8,251,28,247,126,5,237,175,177,236,139,247,3,139,237,251
,15,191,45,147,8,251,56,6,111,117,117,111,31,239,251,156,21,247,106,247,0,7,171,139,171,127,167,123,153,132,156,129,139,126,139,
90,137,86,102,108,117,120,108,135,110,139,8,14,124,239,248,167,239,1,247,45,239,247,118,239,3,247,39,247,45,21,152,41,229,69,245
,139,151,139,152,140,152,141,244,156,219,214,139,247,1,139,247,50,251,37,176,34,193,101,159,101,161,139,196,139,190,199,167,195,
139,8,168,139,167,132,158,123,166,116,139,85,187,139,167,139,161,162,139,166,139,143,138,144,138,143,116,222,66,193,35,139,8,133
,6,251,2,137,40,69,139,32,139,251,45,247,33,100,242,87,180,118,180,117,139,78,139,110,128,109,116,122,115,121,107,129,108,139,86
,139,89,166,131,194,8,136,162,118,159,113,139,8,112,116,116,112,31,14,248,237,239,1,247,205,239,3,247,5,249,31,21,111,162,117,166
,30,247,42,252,197,6,111,162,117,166,166,162,162,166,30,248,197,247,42,7,166,162,162,166,166,117,162,111,31,252,36,6,111,117,117
,111,31,14,126,239,249,6,119,1,247,19,239,247,164,239,3,247,19,247,103,21,139,65,171,67,201,98,181,111,189,130,189,139,189,139,189
,148,181,167,200,180,172,211,139,213,8,248,88,7,166,115,162,113,112,116,117,111,30,252,88,7,62,86,92,56,30,109,139,107,143,114,155
,105,162,124,179,139,180,8,248,88,7,166,116,162,112,112,116,116,112,30,14,249,93,119,1,247,4,249,43,21,247,59,253,16,5,144,120,160
,121,163,139,8,207,6,162,139,159,156,144,159,8,247,61,249,16,5,165,115,163,112,30,115,139,121,122,132,119,8,251,43,252,207,251,44
,248,207,5,134,159,119,156,116,139,8,112,115,116,112,31,14,249,93,119,1,247,5,239,247,191,240,3,247,5,249,43,21,147,251,120,151,
251,102,182,251,88,144,119,158,120,165,139,8,167,6,165,139,155,156,145,158,8,200,247,103,199,251,92,5,147,113,174,118,173,139,163
,139,160,158,143,159,181,247,87,153,247,103,147,247,120,8,141,7,164,115,162,113,113,114,116,112,30,133,251,55,130,251,43,119,251
,35,8,81,247,86,5,133,157,121,157,115,139,8,122,6,115,139,123,124,132,121,8,80,251,96,5,118,247,38,131,247,46,133,247,56,138,165
,118,163,111,139,8,113,115,118,112,31,14,249,93,119,1,247,25,179,21,111,162,117,166,30,159,139,153,151,149,153,8,247,28,247,142,
247,34,251,154,5,149,129,154,135,152,139,166,139,162,162,139,166,139,147,137,148,135,146,8,251,53,247,188,247,47,247,170,5,143,147
,141,147,139,148,139,166,116,162,112,139,119,139,125,126,129,126,8,251,22,251,127,251,30,247,139,5,130,148,125,144,126,139,112,139
,116,117,139,111,139,130,141,131,143,131,8,247,47,251,170,251,53,251,188,5,135,132,137,130,139,131,8,14,249,93,119,1,247,205,239
,3,247,28,249,43,21,139,130,141,131,143,132,8,247,63,251,212,139,251,171,5,111,162,117,166,166,162,162,166,30,139,247,171,247,63
,247,212,5,143,146,141,147,139,148,139,166,116,162,112,139,121,139,119,127,133,124,8,251,25,251,141,251,25,247,141,5,130,154,124
,151,119,139,112,139,116,117,139,111,8,14,140,239,248,136,239,1,247,33,190,21,112,162,116,166,30,247,235,6,166,162,161,167,167,117
,161,111,31,251,153,139,247,163,248,163,5,143,146,141,147,139,147,8,165,116,163,112,30,251,198,6,111,117,116,112,112,162,116,166
,31,247,116,139,251,163,252,163,5,135,132,137,131,139,131,8,14,126,239,248,222,239,1,247,102,239,3,247,102,176,21,112,162,116,166
,30,247,178,6,166,162,162,166,166,116,162,112,31,251,128,248,222,247,128,6,167,161,162,166,166,116,162,112,31,251,178,6,112,116,
116,112,31,14,249,153,119,1,247,65,249,103,21,139,132,140,133,142,133,8,247,172,253,66,5,146,122,158,125,159,139,166,139,162,162
,139,166,139,146,138,145,136,145,8,251,172,249,66,5,132,155,120,154,119,139,112,139,116,117,139,111,8,14,126,239,248,222,239,1,248
,52,239,3,247,22,176,21,112,162,116,166,30,247,178,6,166,162,162,166,31,249,66,7,166,116,162,112,30,251,178,6,112,116,116,112,112
,161,116,167,31,247,128,252,222,251,128,6,112,116,116,112,31,14,247,5,248,53,21,36,10,14,251,128,247,21,1,247,5,251,49,21,110,7,
111,162,117,166,30,248,36,6,166,162,162,166,31,168,7,166,116,162,112,30,252,36,6,112,116,117,111,31,14,248,220,247,78,1,247,151,
247,46,3,247,151,249,100,21,139,129,141,130,144,131,8,199,45,5,149,129,153,134,152,139,166,139,162,162,139,166,139,149,136,148,134
,147,8,79,234,5,132,150,123,142,126,139,112,139,116,117,139,111,8,14,122,240,247,50,236,244,239,1,247,19,239,247,141,239,3,247,19
,247,46,21,139,39,230,75,223,133,145,139,145,138,144,139,202,139,191,165,181,175,8,131,7,111,162,117,166,166,162,162,166,30,247,
202,7,139,194,117,193,99,177,99,176,83,152,84,139,77,139,80,116,89,103,128,131,131,122,139,125,139,111,161,117,167,139,150,139,150
,142,148,146,8,170,164,177,152,179,139,169,139,170,136,161,118,161,119,144,108,142,109,251,66,138,251,67,127,139,251,64,8,239,22
,37,10,14,123,238,247,250,237,247,126,119,1,247,16,239,247,181,239,3,247,16,176,21,112,162,116,166,166,162,161,167,30,143,7,177,
109,184,118,190,134,148,138,148,139,148,139,8,247,48,211,247,28,247,53,31,145,7,138,247,20,68,228,251,1,166,118,144,119,142,120,
139,81,139,89,116,99,107,8,247,131,7,167,116,161,112,112,116,116,112,30,239,252,159,21,247,17,7,161,183,175,178,183,159,159,148,
158,143,157,139,216,139,190,60,141,62,8,131,7,139,62,124,76,91,107,115,123,115,133,116,139,70,139,77,198,115,197,8,14,121,239,247
,248,239,1,247,59,239,247,93,237,3,247,59,247,166,21,139,251,19,170,44,223,94,172,121,172,132,172,139,227,139,217,195,158,215,8,
151,7,166,117,162,112,30,114,139,120,120,134,119,132,112,115,121,112,133,127,136,127,138,129,139,48,139,121,237,139,233,139,205,
153,203,185,161,156,147,162,143,163,139,8,172,139,170,130,147,116,146,118,156,121,163,139,8,167,160,161,167,31,151,7,124,200,84,
176,75,147,124,141,125,140,125,139,251,43,139,74,251,5,139,251,43,8,14,124,235,247,250,239,247,126,119,1,247,5,239,247,180,239,3
,247,5,247,161,21,139,251,36,197,32,247,14,112,159,135,158,137,158,139,197,139,190,158,180,170,140,113,162,117,165,139,8,166,162
,161,167,31,249,66,7,167,116,161,112,112,116,116,112,30,251,130,7,101,167,85,165,79,139,121,139,120,136,120,134,251,5,108,72,45,
139,251,29,8,239,22,139,205,157,189,183,169,164,156,165,146,163,139,207,139,197,83,164,84,8,251,20,7,123,89,99,101,94,121,118,130
,119,135,121,139,53,139,97,234,139,232,8,14,124,237,247,45,239,247,0,239,1,247,19,248,56,3,247,19,247,166,21,139,251,29,195,35,246
,104,164,131,173,134,175,139,8,217,223,162,205,167,116,161,111,31,126,139,127,134,130,130,126,126,123,131,118,136,127,137,127,138
,128,139,45,139,94,202,130,229,8,247,212,6,166,162,162,166,247,40,60,247,2,251,44,31,133,6,251,42,136,54,251,10,139,251,41,8,246
,201,21,156,201,181,185,210,139,226,139,165,99,153,71,8,14,248,69,239,247,29,239,1,247,199,239,3,247,39,248,119,21,112,161,116,167
,30,247,2,139,145,252,32,5,111,162,117,166,166,162,162,166,30,133,248,32,247,14,139,5,166,162,162,166,166,115,162,113,31,251,14,
148,6,139,161,139,171,143,152,151,182,189,157,192,139,8,166,162,162,166,166,116,162,112,251,41,69,61,251,42,31,130,251,2,7,112,116
,116,112,31,14,251,82,239,247,1,239,247,212,239,1,247,8,239,247,163,239,3,247,8,247,161,21,251,28,217,251,6,247,32,30,205,139,187
,161,178,172,8,139,114,139,117,5,139,117,138,117,130,119,121,98,99,127,82,139,110,139,97,139,117,149,113,151,138,177,100,139,112
,139,116,117,139,111,139,132,140,132,142,133,8,170,67,212,121,240,139,247,30,139,229,219,139,247,19,139,153,138,154,137,154,8,248
,61,7,166,116,162,112,30,114,139,116,118,137,114,107,165,99,157,91,143,131,140,131,139,131,139,8,251,42,62,251,10,251,44,31,239,
22,235,175,213,233,30,152,6,208,134,178,77,159,84,8,55,7,108,86,99,78,57,139,8,57,103,211,217,31,14,248,75,239,247,126,119,1,247
,48,239,247,106,239,3,247,48,176,21,111,162,117,166,166,162,162,166,30,247,184,7,166,191,178,197,214,139,8,210,141,70,67,31,139,
127,139,251,141,5,112,162,116,166,166,162,162,166,30,247,141,7,139,182,139,186,129,176,119,210,80,194,55,139,78,139,94,118,104,110
,8,247,126,7,166,116,162,112,112,116,117,111,30,14,248,60,239,242,247,38,18,247,73,247,172,251,34,247,37,36,239,19,224,247,73,248
,110,21,112,162,116,166,30,19,200,38,10,19,224,39,10,19,208,247,30,247,95,21,40,10,14,251,75,242,248,140,239,241,247,38,18,247,102
,247,138,251,29,247,37,251,0,239,19,228,247,45,251,21,21,95,182,129,185,30,163,139,163,142,160,141,195,144,187,188,161,184,157,176
,140,183,139,181,8,139,152,5,19,240,41,10,19,228,235,252,3,6,139,107,139,99,129,118,133,125,118,111,121,138,8,88,137,5,125,139,125
,140,125,139,8,134,6,111,117,117,111,31,19,232,247,58,249,186,21,40,10,14,248,172,119,247,149,119,1,247,65,239,3,247,65,176,21,111
,162,117,166,166,162,162,166,30,247,99,142,7,247,117,251,134,5,148,129,153,134,152,139,166,139,162,162,139,166,139,152,134,151,131
,148,8,251,98,247,113,247,64,247,50,5,149,148,145,152,139,153,139,166,116,162,112,139,126,139,127,133,130,130,8,251,88,251,69,136
,139,139,248,15,5,166,116,162,112,112,116,117,111,30,14,132,239,249,60,119,18,247,145,238,46,239,19,224,247,145,247,120,21,139,68
,147,88,173,94,183,81,204,129,241,139,8,166,162,162,166,166,116,162,112,31,113,139,101,139,125,141,74,148,128,192,139,210,8,19,208
,146,248,130,5,167,116,162,112,111,117,116,111,30,14,248,75,239,1,247,5,239,239,239,239,239,3,20,112,247,5,176,21,111,162,117,166
,166,162,162,166,30,247,170,7,178,165,224,183,30,161,139,146,114,140,121,8,251,251,7,111,162,117,166,166,162,162,166,30,247,170,
7,179,166,223,182,30,161,139,146,114,140,121,8,251,251,7,111,162,117,166,166,162,162,166,30,248,3,7,209,85,204,63,30,99,139,104,
120,113,111,116,167,104,158,98,139,108,139,113,129,117,123,130,153,124,148,122,139,8,112,116,117,111,31,14,248,75,239,1,247,19,239
,247,164,239,3,247,19,176,21,112,162,116,166,166,162,162,166,30,247,158,7,165,203,191,211,225,139,8,230,156,76,49,31,251,141,7,111
,162,117,166,165,163,162,166,30,247,141,7,247,41,81,243,251,42,30,71,139,85,114,97,102,8,148,7,166,116,161,112,112,116,117,112,30
,14,123,239,247,252,239,1,247,5,239,247,192,239,3,247,5,247,155,21,42,10,239,22,43,10,14,251,55,118,247,60,239,247,248,238,1,247
,16,239,247,181,239,3]);fileData1.push.apply(fileData1,[247,16,251,26,21,112,161,116,167,167,161,161,167,30,247,64,7,176,109,185
,118,192,136,8,156,6,247,46,221,247,13,247,44,31,139,247,37,79,238,251,14,169,117,144,119,142,119,139,82,139,90,118,100,107,8,167
,116,161,112,112,116,116,112,30,239,251,172,21,247,10,7,163,192,189,196,207,144,144,139,143,140,143,139,238,139,174,53,139,42,139
,54,107,75,66,120,126,136,127,137,127,139,62,139,96,208,112,192,8,14,251,55,118,247,60,237,247,249,239,1,247,5,239,247,180,239,3
,247,5,247,149,21,139,251,31,203,38,247,9,113,160,134,158,137,158,139,198,139,189,160,178,171,8,251,63,7,112,161,116,167,167,161
,161,167,30,249,0,7,167,116,161,112,112,116,116,112,30,100,171,90,160,82,139,119,139,119,136,117,134,251,15,109,81,40,139,251,37
,8,239,22,139,207,153,202,187,168,164,154,164,146,162,139,210,139,195,78,165,83,8,251,11,7,120,93,103,95,93,120,118,131,120,135,
121,139,55,139,94,225,139,228,8,14,248,75,239,1,247,96,239,247,84,239,3,247,96,176,21,112,162,116,166,166,162,161,167,30,247,116
,7,139,214,183,228,219,150,146,139,146,142,146,139,144,139,145,136,144,139,157,135,152,124,139,121,140,112,161,117,166,139,166,139
,162,162,139,167,8,138,214,81,202,51,139,79,139,91,119,102,106,8,167,117,160,111,112,116,117,112,30,14,123,236,247,255,239,1,247
,51,239,247,112,239,3,247,45,236,21,139,130,140,130,144,131,176,79,203,112,232,139,8,149,6,247,7,142,240,183,139,247,10,139,247,
31,251,40,152,251,3,168,109,147,108,152,139,177,8,190,197,143,185,30,165,6,169,137,173,135,146,111,144,118,159,123,163,139,166,139
,162,162,139,166,139,143,138,143,138,144,121,207,67,175,66,143,8,108,6,32,42,96,251,4,31,139,251,31,247,30,122,247,2,110,169,131
,181,129,139,102,139,91,77,119,79,139,106,139,108,145,118,149,114,151,131,177,103,139,112,139,116,117,139,111,8,14,126,239,247,232
,239,18,247,141,239,44,239,19,224,247,19,248,113,21,112,162,116,166,30,214,139,136,251,118,139,127,5,139,44,162,72,212,111,158,132
,169,134,169,139,8,201,206,158,190,166,116,162,112,31,110,139,114,119,108,139,8,137,6,72,139,185,205,31,142,247,120,247,43,139,5
,166,162,162,166,166,116,162,112,31,19,208,251,41,139,141,240,5,166,117,162,111,111,117,118,110,30,137,38,62,139,5,112,116,116,112
,31,14,123,239,248,88,119,1,247,19,239,247,164,239,3,247,19,247,134,21,139,100,140,100,148,105,163,53,205,81,245,137,8,143,6,207
,139,192,163,180,175,8,132,7,111,162,117,166,165,163,162,166,30,248,85,7,166,115,162,113,112,116,117,111,30,251,151,7,116,71,90,
64,52,139,8,134,6,42,142,128,204,139,244,8,247,121,7,166,115,162,112,113,116,115,113,30,251,121,7,14,248,172,119,1,247,8,248,122
,21,139,133,140,133,141,134,8,247,52,252,85,5,146,120,158,125,160,139,8,213,6,159,139,161,154,144,157,8,247,52,248,85,5,141,144,
140,145,139,145,139,166,116,162,112,139,118,139,118,123,134,121,8,251,40,252,51,135,139,251,40,248,51,5,132,158,122,154,116,139,
112,139,116,117,139,111,8,14,248,172,119,1,247,7,239,247,187,240,3,247,7,248,122,21,194,252,91,5,142,116,160,118,165,139,8,189,6
,162,139,156,155,146,158,8,185,247,51,185,251,51,5,145,120,157,123,163,139,8,188,6,164,139,161,159,141,163,8,195,248,91,139,143,
5,163,114,161,113,30,113,139,119,118,135,116,8,100,251,216,102,247,18,5,133,159,121,155,115,139,8,93,6,116,139,119,123,134,119,8
,102,251,18,99,247,216,5,137,163,117,159,114,139,8,112,115,116,112,31,14,248,172,119,1,247,39,176,21,112,162,116,166,30,152,139,
153,143,148,149,8,247,22,247,77,247,21,251,77,5,148,127,153,137,153,139,165,139,163,162,139,166,139,149,135,149,133,148,8,251,32
,247,92,247,22,247,84,5,144,147,142,149,139,149,139,166,116,162,112,139,126,139,125,134,130,130,8,251,10,251,67,251,10,247,67,5,
132,149,123,143,126,139,112,139,116,117,139,111,139,129,142,129,144,131,8,247,21,251,84,251,32,251,92,5,133,130,136,129,139,129,
8,14,251,75,241,248,253,119,1,247,5,251,23,21,139,114,156,120,161,134,148,137,149,138,148,139,189,139,183,170,157,176,8,247,207,
248,212,5,143,146,141,148,139,148,139,166,116,162,112,139,126,139,124,134,129,130,8,251,49,251,182,251,61,247,182,5,130,148,125,
144,126,139,112,139,116,117,139,111,139,130,141,130,144,132,8,247,84,251,223,251,0,251,90,5,133,127,130,138,129,139,8,123,6,112,
116,117,111,31,14,138,239,247,217,239,1,247,39,188,21,112,161,116,167,30,247,232,6,167,161,162,166,166,116,162,112,31,251,151,139
,247,164,247,194,5,148,148,144,151,139,151,8,179,7,167,117,161,111,30,251,200,6,111,117,117,111,111,162,117,166,31,247,124,139,251
,170,251,200,5,131,130,134,128,139,127,8,14,126,239,247,135,239,247,135,239,1,247,176,239,3,20,224,247,5,248,15,21,111,162,118,166
,30,175,139,181,139,161,117,159,118,140,109,139,111,139,41,161,62,204,100,184,112,220,138,205,139,8,166,162,162,166,166,116,162,
112,31,91,139,68,139,118,152,102,162,137,186,139,198,139,193,127,196,100,178,183,172,146,213,139,196,139,172,139,177,158,164,162
,171,185,141,196,139,8,173,6,167,161,162,166,166,116,162,112,31,251,8,139,64,131,90,72,107,95,132,83,139,84,8,129,7,139,110,138,
108,124,121,118,114,93,139,101,139,8,112,116,116,111,31,14,249,153,119,1,247,205,239,3,247,205,251,3,21,111,161,117,167,167,161,
162,166,30,249,214,7,166,116,162,112,112,116,117,111,30,14,126,239,247,135,239,247,135,239,1,247,233,239,3,20,224,247,5,176,21,111
,162,117,166,30,205,139,220,139,184,167,204,178,160,215,139,238,139,167,140,169,160,160,161,161,181,139,175,139,8,166,162,161,166
,166,116,163,112,31,135,6,102,139,96,139,118,164,122,159,139,176,139,170,139,194,133,195,107,183,90,206,63,147,251,7,139,8,112,116
,117,111,111,161,117,167,31,178,139,196,139,160,132,190,124,149,93,139,77,139,84,146,63,183,106,100,100,127,82,139,85,139,106,139
,101,129,115,120,95,90,136,72,139,8,106,6,112,116,117,111,31,14,248,171,239,125,240,107,159,18,139,238,247,166,238,19,88,247,19,
248,233,21,44,10,19,184,45,10,19,88,46,10,14,247,191,247,37,18,247,182,247,38,251,15,239,19,192,248,216,247,241,21,47,10,162,252
,201,21,33,10,14,247,56,239,247,124,239,1,247,39,239,247,124,239,3,247,118,247,72,21,111,162,117,166,30,152,139,152,144,148,149,
8,190,190,5,172,119,178,127,181,139,180,139,177,150,173,160,8,190,88,5,149,129,152,134,152,139,166,139,162,162,139,166,139,152,134
,152,129,148,8,87,191,5,160,172,151,178,139,180,139,180,126,178,119,172,8,191,191,5,149,148,144,152,139,152,139,166,116,162,112,
139,126,139,126,134,129,129,8,88,88,5,106,159,100,151,98,139,97,139,100,127,106,119,8,88,190,5,130,149,126,144,126,139,112,139,116
,117,139,111,139,126,144,126,148,130,8,191,87,5,119,106,127,100,139,98,139,97,151,101,159,106,8,87,87,5,130,130,134,126,139,126,
8,247,26,247,92,21,203,191,191,203,203,191,87,75,75,84,87,78,75,87,191,203,30,14,247,134,248,24,21,139,32,241,102,238,131,204,134
,247,6,147,139,65,139,75,73,126,78,138,8,133,6,69,139,88,156,119,190,131,157,121,153,118,139,111,139,117,116,139,111,139,133,140
,134,141,133,174,52,217,94,247,12,139,8,147,6,247,10,141,247,1,190,139,247,12,8,144,7,138,184,125,172,115,164,162,165,155,172,139
,179,8,143,7,136,241,50,181,44,148,76,145,35,130,139,212,139,202,204,155,201,139,168,139,166,134,158,126,169,119,139,88,186,139,
165,139,163,163,139,165,8,139,145,138,144,137,144,114,216,66,185,38,139,251,16,139,36,82,139,251,14,139,100,149,109,155,116,110,
110,116,100,139,93,8,239,22,139,163,160,161,158,152,181,126,189,134,189,134,178,136,198,133,139,95,139,112,123,126,122,128,120,144
,118,142,118,141,84,144,251,23,131,139,200,8,14,247,165,247,49,1,247,119,239,211,239,3,248,90,247,215,21,112,161,116,167,167,161
,162,166,30,196,7,166,116,162,112,112,116,116,112,30,247,64,82,21,111,161,117,167,166,162,162,166,30,196,7,166,115,162,113,112,116
,117,111,30,14,139,28,249,67,247,192,247,192,247,192,247,192,247,192,248,86,247,192,247,192,247,192,247,192,247,192,1,28,249,67,
247,192,247,192,247,192,247,192,247,192,248,86,247,192,247,192,247,192,247,192,247,192,3,247,117,4,247,16,240,38,251,16,251,16,38
,38,251,16,251,16,38,240,247,16,247,16,240,240,247,16,31,247,192,4,251,182,251,127,251,127,251,182,251,182,247,127,251,127,247,182
,247,182,247,127,247,127,247,182,247,182,251,127,247,127,251,182,31,135,247,192,21,248,89,248,12,252,4,252,89,252,89,252,12,252,
12,252,89,252,89,252,4,248,12,248,89,248,89,248,4,248,4,248,89,31,247,192,4,252,255,252,138,252,138,252,255,252,255,248,138,252,
146,248,255,248,255,248,146,248,146,248,255,248,255,252,146,248,138,252,255,31,247,192,4,249,165,249,24,253,16,253,165,253,165,253
,24,253,24,253,165,253,165,253,16,249,24,249,165,249,165,249,16,249,16,249,165,31,143,247,192,21,254,74,253,155,253,155,254,74,254
,74,249,155,253,155,250,74,250,74,249,155,249,155,250,74,250,74,253,155,249,155,254,74,31,14,248,159,251,92,251,16,21,247,92,39,
247,92,239,139,247,140,251,92,239,251,92,39,5,14,248,172,239,1,247,146,248,222,21,112,161,116,167,30,248,8,6,166,162,162,166,166
,115,162,113,31,252,8,6,112,116,116,112,31,14,248,137,247,78,1,247,205,247,46,3,249,6,248,187,21,111,162,117,166,30,152,139,153,
144,148,148,8,199,234,5,144,147,142,149,139,148,139,166,116,162,112,139,126,139,125,135,130,129,8,79,44,5,134,131,136,130,139,129
,8,14,251,228,239,239,247,89,1,247,193,239,145,239,3,248,238,150,21,42,7,112,162,116,166,30,142,139,143,139,5,166,161,117,111,112
,116,116,111,31,137,139,136,139,5,111,117,116,112,31,139,112,161,118,165,137,8,146,6,222,207,205,223,31,139,208,94,195,78,157,8,
193,7,167,117,161,111,111,117,116,112,30,14,251,113,239,248,173,247,37,18,247,62,239,159,247,38,251,15,239,210,239,19,236,247,232
,107,21,125,7,146,34,221,69,247,5,139,8,148,6,247,1,143,233,213,139,245,8,150,7,137,165,118,160,112,139,8,111,117,116,112,31,139
,137,139,135,5,83,83,109,84,30,87,139,89,165,138,194,8,143,7,139,186,158,162,165,161,184,177,192,177,139,210,8,222,7,166,116,162
,112,112,116,117,111,30,56,7,139,112,101,116,114,118,8,96,102,102,87,139,64,8,19,244,247,12,248,134,21,47,10,14,247,35,240,47,238
,248,1,247,49,79,119,18,247,5,239,247,192,239,19,44,247,118,249,46,21,48,10,142,253,63,21,111,162,117,166,30,163,139,155,155,146
,159,8,19,76,177,247,18,5,19,156,247,119,130,174,251,9,5,144,119,159,123,161,139,166,139,162,162,139,166,139,144,138,144,138,143
,8,251,78,249,3,5,133,157,121,157,115,139,8,116,6,115,139,123,124,132,121,8,251,78,253,6,5,137,135,139,134,139,134,8,19,76,247,56
,247,103,21,222,247,167,5,19,140,223,251,174,5,205,248,58,21,19,44,48,10,14,140,239,237,239,156,239,247,80,239,1,251,2,178,21,114
,165,115,165,30,163,139,157,157,146,158,8,183,247,64,247,95,139,180,251,52,5,145,118,157,122,164,139,8,247,215,6,166,162,162,166
,166,117,162,111,31,251,177,139,83,247,107,247,233,139,5,167,161,162,166,166,116,162,112,31,252,2,139,90,247,80,248,51,139,5,166
,162,162,166,166,117,162,111,31,252,186,6,115,139,120,122,134,119,8,147,252,4,21,214,247,183,215,251,183,5,14,126,239,248,68,238
,137,247,49,18,247,5,239,47,239,247,175,239,48,239,19,176,247,118,249,46,21,48,10,147,252,56,21,139,251,12,178,46,208,84,172,113
,181,117,198,139,188,139,187,156,176,170,208,195,177,229,139,247,14,139,247,56,63,247,43,251,57,139,116,139,116,136,117,131,8,251
,3,100,76,251,10,139,251,39,8,239,22,241,178,247,6,242,242,177,251,6,37,35,100,251,4,37,30,120,139,124,148,123,142,75,172,111,218
,139,231,8,19,162,247,184,247,255,21,48,10,14,126,239,248,170,239,1,247,10,237,247,186,239,3,247,66,119,21,112,162,116,166,30,157
,139,155,150,148,152,8,191,226,5,175,105,183,119,190,139,247,53,139,224,247,88,140,247,63,8,145,7,139,218,121,218,106,203,8,211,
247,13,5,144,146,141,148,139,148,139,167,117,161,112,139,125,139,126,134,129,130,8,81,44,5,103,172,96,158,87,139,99,139,90,121,109
,115,57,73,95,251,20,139,251,22,139,60,155,59,173,72,8,65,251,15,5,135,131,136,130,139,130,8,247,21,248,10,21,144,7,139,218,161,
222,179,191,157,162,169,164,176,139,171,139,165,124,160,115,8,251,102,251,238,5,128,179,134,181,139,175,8,207,251,119,21,247,102
,247,241,5,150,98,144,96,139,101,139,35,93,251,55,38,139,107,139,113,155,118,163,8,14,126,239,248,222,239,18,247,5,239,39,247,43
,247,89,247,44,39,239,19,228,247,118,247,178,21,251,77,207,251,6,247,74,247,74,207,247,7,247,76,30,247,143,7,166,116,162,112,112
,116,117,111,30,251,143,7,139,103,138,102,130,104,124,77,89,110,64,139,87,139,95,154,115,170,113,173,135,203,139,194,8,247,143,7
,166,116,162,112,112,116,117,111,30,247,78,4,111,161,117,167,30,19,224,189,6,19,208,168,161,161,167,31,19,224,167,116,161,111,30
,89,6,112,116,117,111,31,19,200,247,240,22,112,161,116,167,30,191,6,167,161,162,166,166,116,162,112,31,87,6,112,116,116,112,31,14
,132,239,247,140,247,8,247,105,239,18,247,28,239,247,146,239,62,237,19,248,247,164,176,21,111,162,117,166,166,162,162,166,30,248
,56,7,247,10,146,234,247,12,211,194,105,68,30,139,81,97,92,89,136,114,137,119,118,139,114,8,121,7,112,161,116,165,30,141,139,142
,139,141,139,5,19,244,210,139,172,81,140,72,8,135,7,139,83,118,77,82,138,114,138,116,116,139,113,139,113,164,115,165,139,247,9,142
,195,245,139,247,0,139,218,109,219,79,179,8,19,248,180,175,167,194,139,203,8,142,7,137,247,18,44,216,251,22,139,8,251,76,96,251,
24,251,73,31,14,122,240,247,50,236,244,239,154,247,49,18,247,19,239,139,239,211,239,116,239,19,249,247,146,247,46,21,139,39,230,
75,223,133,145,139,145,138,144,139,202,139,191,165,181,175,8,131,7,111,162,117,166,166,162,162,166,30,247,202,7,139,194,117,193,
99,177,99,176,83,152,84,139,77,139,80,116,89,103,128,131,131,122,139,125,139,111,161,117,167,139,150,139,150,142,148,146,8,170,164
,177,152,179,139,169,139,170,136,161,118,161,119,144,108,142,109,8,251,66,138,251,67,127,139,251,64,8,239,22,37,10,19,244,248,90
,4,49,10,247,64,81,21,50,10,14,124,237,247,45,239,247,0,239,1,103,239,3,67,247,46,21,139,39,230,75,223,133,145,139,145,138,144,139
,203,139,190,166,181,175,8,130,7,111,162,117,166,30,164,139,160,158,143,163,157,125,160,129,162,131,164,131,174,134,175,139,8,217
,224,162,205,166,116,162,111,31,126,139,125,134,129,130,8,137,7,129,125,118,134,122,136,127,137,127,138,128,139,45,139,94,202,130
,229,8,247,211,6,167,161,161,167,247,40,62,247,2,251,45,31,133,6,64,137,81,110,99,92,103,191,71,165,68,139,77,139,78,119,91,100,
127,130,132,125,139,123,139,112,161,116,167,139,150,139,150,142,148,146,8,170,164,177,152,179,139,169,139,170,136,161,118,161,119
,145,108,141,109,251,65,138,251,68,126,139,251,63,8,239,22,214,229,152,229,30,163,139,162,138,161,138,8,99,7,108,89,89,73,64,139
,8,129,6,104,141,91,164,139,182,8,247,248,247,74,21,51,10,14,123,239,247,252,239,154,247,49,1,247,5,239,153,239,210,240,153,239,
3,247,118,247,155,21,42,10,239,22,43,10,153,247,237,21,49,10,247,63,81,21,113,162,116,166,166,163,161,166,30,197,7,166,114,162,113
,113,115,116,112,30,14,123,239,247,252,239,1,247,5,239,247,192,239,3,247,32,116,21,112,162,116,166,30,152,139,152,144,148,149,8,
208,220,5,177,114,185,125,194,139,247,52,139,229,247,15,139,247,48,139,203,124,197,111,185,8,213,227,5,146,148,144,150,139,151,139
,166,117,162,111,139,125,139,127,134,129,130,8,68,57,5,102,164,94,153,85,139,251,55,139,52,251,15,139,251,50,139,76,153,81,167,93
,8,66,52,5,131,130,135,128,139,127,8,247,35,247,178,21,238,187,221,241,30,167,139,163,133,159,128,8,251,101,251,139,5,130,164,135
,167,139,169,8,216,251,54,21,247,101,247,139,5,148,114,144,110,139,108,139,40,92,59,36,139,111,139,114,145,119,150,8,14,123,239,
248,88,119,182,247,49,18,247,19,239,139,239,211,239,139,239,19,242,247,146,247,134,21,139,100,140,100,148,105,163,53,205,81,245,
137,8,143,6,207,139,192,163,180,176,8,131,7,111,162,117,166,165,163,162,166,30,248,85,7,166,115,162,113,112,116,117,111,30,251,151
,7,116,71,90,64,52,139,8,134,6,42,142,128,204,139,244,8,247,121,7,166,115,162,112,113,116,115,113,30,251,121,7,239,247,243,21,49
,10,247,64,81,21,50,10,14,248,60,239,18,247,73,247,172,39,239,19,192,247,254,248,110,21,112,162,116,166,30,19,160,38,10,19,192,39
,10,14,126,239,53,239,247,107,239,247,77,239,59,239,18,58,239,247,186,239,19,166,251,54,247,246,21,140,251,63,226,251,88,247,51,
139,198,139,189,166,177,182,8,133,7,19,118,111,162,117,166,30,247,235,6,166,162,162,166,166,117,162,111,31,251,185,247,107,247,136
,6,167,160,161,167,166,117,162,112,31,251,136,247,77,247,185,6,166,162,162,166,166,117,162,111,31,251,235,6,111,139,119,119,137,
112,8,19,174,100,180,90,165,80,139,8,251,60,60,251,83,251,63,31,239,134,21,145,7,139,217,157,223,181,189,162,166,165,161,177,139
,240,139,184,251,41,140,251,3,8,132,7,138,35,95,251,55,37,139,37,139,95,247,55,138,243,8,14,123,239,247,44,239,247,0,239,1,52,239
,3,251,66,247,155,21,251,50,228,251,13,247,53,30,229,139,206,177,182,201,165,98,177,110,187,123,163,131,174,134,175,139,8,218,224
,162,205,166,116,162,111,31,126,139,124,135,130,129,127,125,123,132,119,136,127,137,127,138,128,139,45,139,94,202,130,229,8,247,
211,6,167,161,161,167,247,40,62,247,2,251,45,31,133,6,54,137,76,102,99,80,97,199,72,177,51,139,8,251,55,52,251,15,251,50,31,239,
22,238,187,221,241,240,188,58,39,40,91,59,37,37,91,219,238,30,248,43,212,21,51,10,14,251,71,239,248,139,239,18,247,102,247,138,39
,239,19,208,247,198,251,21,21,111,162,117,166,30,177,139,209,139,145,141,239,162,178,229,139,247,13,8,19,224,41,10,19,208,235,252
,3,6,139,107,139,99,129,117,122,101,106,134,97,139,123,139,122,140,121,139,8,111,117,117,111,31,14,247,5,248,53,21,36,10,14,248,
196,118,1,247,118,250,12,21,139,130,142,129,144,131,8,247,97,251,201,5,149,130,153,135,152,139,152,139,152,143,148,139,8,247,94,
247,195,5,146,149,145,150,139,151,139,166,117,162,111,139,126,139,127,133,129,130,8,251,57,251,73,251,57,247,74,5,130,149,126,143
,126,139,8,111,117,117,111,31,14,249,33,239,1,247,5,239,247,192,239,3,247,118,250,9,21,149,251,23,247,1,38,247,23,139,247,23,139
,247,1,240,149,247,23,8,142,7,166,117,162,111,30,112,139,118,119,137,113,133,61,74,78,60,139,60,139,74,200,133,217,137,164,118,160
,112,139,8,111,117,117,111,31,14,248,112,247,37,1,247,182,247,38,3,248,216,248,162,21,47,10,14,248,171,239,125,240,127,119,18,139
,238,247,166,238,19,88,247,19,248,233,21,44,10,19,184,45,10,19,88,46,10,14,161,118,248,128,247,112,39,239,18,247,33,239,247,164,
239,19,184,247,174,190,21,112,162,116,166,166,162,161,167,30,248,198,247,164,69,7,19,216,111,161,117,167,167,161,162,166,30,247,
12,7,166,116,162,112,30,19,184,252,8,6,112,116,116,112,31,14,126,239,247,109,239,247,109,239,1,247,8,239,179,247,106,179,239,3,20
,252,247,124,247,246,21,35,10,239,135,21,144,7,139,236,170,236,198,186,154,151,160,148,160,139,8,243,182,251,47,251,4,35,93,251,
55,38,31,37,139,95,247,55,138,243,8,179,22,111,162,117,166,30,247,6,6,166,162,162,166,166,117,162,111,31,251,6,6,111,117,117,111
,31,14,249,87,119,1,247,33,247,50,247,20,247,49,3,247,174,179,21,112,162,116,166,30,197,6,166,162,162,166,31,139,154,132,153,127
,148,8,222,247,249,222,251,249,5,127,130,132,125,139,124,8,112,162,116,166,30,196,6,166,162,161,167,31,139,163,122,157,117,145,8
,251,25,248,216,5,134,160,120,157,114,139,116,139,118,122,134,117,8,251,28,252,216,5,118,133,123,119,139,117,8,14,140,239,247,107
,239,247,77,239,1,247,140,190,21,52,10,248,236,4,52,10,199,251,177,21,112,161,116,167,30,247,149,6,167,161,161,167,167,116,161,112
,31,251,149,6,112,116,116,112,31,14,248,249,239,1,247,33,239,247,135,239,3,247,118,249,43,21,139,119,150,122,156,131,8,252,214,7
,112,162,116,166,166,162,161,167,30,248,209,247,135,252,209,7,112,162,116,166,166,162,161,167,30,248,214,7,156,147,151,156,139,159
,8,166,116,162,112,30,252,36,6,112,116,117,111,31,14,140,239,39,247,21,248,79,247,20,39,239,18,19,128,247,210,190,21,111,162,117
,166,30,19,64,247,234,6,166,162,161,167,31,168,7,167,116,161,112,30,19,144,120,139,121,127,131,122,8,251,118,139,226,247,125,5,141
,144,140,145,139,145,139,145,138,145,139,145,8,52,247,124,247,118,139,5,19,32,147,123,156,127,159,139,8,167,161,161,167,31,167,7
,167,117,161,111,30,19,144,251,234,6,111,117,117,111,31,139,133,140,133,141,134,8,244,251,175,34,251,174,5,137,133,138,133,139,133
,8,14,248,216,237,1,247,205,239,3,247,204,248,207,21,111,162,117,166,30,152,139,152,145,148,148,152,152,139,170,161,139,8,144,6,
165,134,145,107,139,110,8,252,113,7,111,162,117,166,166,162,162,166,30,248,113,7,139,168,145,170,165,145,8,143,6,150,139,148,132
,141,128,143,117,159,120,164,139,8,166,161,162,166,31,148,7,128,202,86,174,84,139,108,139,108,128,114,116,114,162,108,150,108,139
,84,139,85,104,128,76,8,14,127,242,18,247,5,239,210,247,49,251,20,239,239,239,19,216,247,118,247,155,21,139,251,32,210,251,4,247
,21,116,8,110,7,19,232,122,131,127,122,139,119,8,112,162,116,166,30,196,6,166,162,161,167,31,19,216,139,159,128,156,122,147,8,168
,7,247,20,162,211,247,5,139,247,31,139,247,32,66,247,5,251,19,163,8,168,7,19,232,155,147,151,156,139,159,8,167,117,161,111,30,82
,6,111,117,116,112,31,19,216,139,120,151,121,156,131,8,110,7,251,19,112,66,36,139,251,39,8,239,22,139,204,161,199,181,169,149,146
,152,143,152,144,8,251,235,7,71,161,107,208,139,220,8,247,92,251,64,21,247,237,7,206,117,172,70,139,57,139,58,107,70,71,117,8,14
,247,205,239,196,239,3,247,204,248,207,21,147,251,38,5,152,251,52,142,251,121,247,25,95,8,90,7,111,162,117,166,166,162,162,166,30
,188,7,235,174,170,247,28,151,247,10,8,157,247,182,139,142,5,165,116,160,112,30,112,139,118,118,137,113,134,42,133,45,130,46,135
,91,133,58,112,94,8,248,106,7,166,116,162,112,112,116,117,111,30,252,106,7,112,183,133,220,135,188,131,232,132,233,134,236,137,165
,118,160,112,139,8,111,117,117,111,31,14,249,101,239,18,247,6,238,125,247,20,211,247,20,126,235,19,192,247,120,248,201,21,139,107
,143,106,146,104,165,251,24,169,251,23,173,251,22,8,19,160,129,130,133,125,139,124,8,111,162,117,166,30,167,6,166,162,162,166,31
,139,144,138,144,138,143,100,247,36,105,247,37,110,247,39,8,19,200,134,165,134,165,139,166,8,145,7,141,225,200,205,226,139,232,139
,197,66,139,48,139,117,135,115,132,116,8,19,144,35,252,78,139,127,5,111,162,117,166,30,167,6,166,162,162,166,31,139,154,132,152,
128,149,8,230,248,26,5,19,200,146,169,142,168,139,167,139,247,43,44,247,13,251,44,139,72,139,74,115,92,91,8,89,89,119,77,139,67,
8,14,249,81,119,1,247,205,239,3,247,232,248,145,21,112,161,116,167,30,152,139,152,144,148,148,8,197,196,139,252,126,5,111,162,117
,166,166,162,162,166,30,139,248,126,196,82,5,149,130,151,134,153,139,167,139,161,162,139,166,139,152,133,151,130,149,8,251,35,247
,35,5,130,148,126,144,126,139,124,139,127,134,130,139,8,251,34,251,35,5,129,129,134,127,139,126,8,14,249,81,119,1,247,205,239,3,
247,232,247,75,21,139,126,144,126,149,129,8,247,34,251,34,5,149,129,152,134,152,139,152,139,152,144,148,139,8,247,35,247,34,5,148
,149,145,152,139,152,139,166,116,162,112,139,125,139,127,134,129,129,8,82,82,139,248,126,5,166,117,162,111,111,117,117,111,30,139
,252,126,81,196,5,130,149,126,144,126,139,8,112,116,116,112,31,14,129,239,248,253,119,1,247,172,179,21,114,162,114,167,30,247,235
,6,166,163,162,166,31,251,66,249,10,5,133,159,119,156,117,139,117,139,117,123,134,118,8,83,252,216,21,244,248,16,244,252,16,5,14
,247,17,4,247,142,251,17,247,142,247,17,139,247,142,251,142,247,17,251,142,251,17,5,14,14,248,137,247,78,1,247,205,239,3,249,6,248
,187,21,111,162,117,166,166,162,162,166,30,225,7,166,116,162,112,112,116,117,111,30,14,248,137,247,78,1,247,151,247,46,3,248,154
,249,17,21,139,130,141,129,144,131,8,200,45,5,149,130,152,133,152,139,166,139,162,162,139,166,139,149,136,148,134,147,8,79,234,5
,132,150,123,142,126,139,112,139,116,117,139,111,8,14,248,232,247,66,1,247,111,239,227,239,3,248,74,249,26,21,111,161,117,167,167
,161,162,166,30,213,7,166,116,162,112,112,116,117,111,30,247,80,65,21,112,161,116,167,167,161,162,166,30,213,7,166,116,162,112,112
,116,116,112,30,14,146,239,3,153,68,21,112,161,116,167,167,161,162,166,30,249,94,7,166,116,162,112,112,116,116,112,30,14,249,103
,20,139,21,121,156,248,173,147,247,49,159,188,142,6,251,76,140,7,30,10,3,150,37,255,12,9,155,12,10,239,10,239,167,157,150,156,145
,145,150,162,239,12,12,239,11,239,167,157,147,143,155,173,145,168,247,3,12,13,30,10,6,255,12,18,28,0,70,19,0,21,2,0,1,0,28,0,50,
0,79,0,124,0,195,0,226,0,241,1,2,1,29,1,50,1,80,1,98,1,129,1,180,1,194,1,221,1,242,2,7,2,28,2,42,2,68,112,162,116,166,30,185,6,166
,162,162,166,31,185,7,166,116,162,112,30,93,6,112,116,116,112,31,11,111,161,117,167,167,161,162,166,30,248,27,7,166,116,162,112,
112,116,117,111,30,11,111,161,117,167,30,247,0,6,167,161,162,166,31,219,7,166,116,162,112,30,251,0,6,112,116,117,111,31,11,140,251
,63,226,251,88,247,51,139,247,53,139,224,247,88,140,247,63,8,142,7,247,70,51,247,78,251,51,30,99,139,90,122,109,114,59,74,91,251
,14,139,251,26,8,11,111,162,117,166,30,152,139,152,144,148,149,8,247,56,247,66,247,57,251,66,5,149,129,152,134,152,139,166,139,162
,162,139,166,139,149,136,149,133,147,8,251,97,247,200,5,131,150,123,142,126,139,126,139,126,135,129,139,8,251,97,251,200,5,134,131
,136,129,139,129,8,11,214,229,152,229,30,163,139,162,138,161,138,8,99,7,107,87,87,75,64,139,8,131,6,105,141,91,164,139,182,8,11,
247,22,252,23,6,112,162,116,166,166,162,161,167,30,11,248,73,7,167,117,161,111,30,251,72,6,111,117,116,112,31,11,111,162,117,166
,30,184,6,166,162,161,167,31,185,7,167,116,161,112,30,94,6,112,116,117,111,31,11,248,53,7,166,117,162,111,30,251,38,6,111,117,116
,112,112,162,116,166,31,11,251,50,228,251,13,247,53,247,52,229,247,15,247,48,247,50,47,247,15,251,50,251,55,52,251,15,251,50,30,
11,238,187,221,241,240,188,58,39,40,92,59,36,36,92,219,238,30,11,112,162,116,166,30,163,139,160,157,143,161,145,164,153,148,155,
139,163,139,168,121,157,125,172,114,175,115,181,135,8,11,144,139,143,138,144,139,206,139,198,187,152,206,140,142,140,143,139,142
,139,166,115,162,113,139,116,139,117,121,135,117,134,113,126,130,122,139,8,115,139,109,158,121,153,106,164,102,163,98,143,8,11,134
,139,135,140,134,139,72,139,79,91,125,72,8,11,112,161,116,167,30,185,6,167,161,162,166,31,184,7,166,117,162,111,30,93,6,111,117,
116,112,31,11,111,161,117,167,167,161,162,166,30,196,7,166,116,162,112,112,116,117,111,30,11,113,162,116,166,166,162,162,165,30,
197,7,166,116,162,112,112,116,116,112,30,11,112,161,117,167,166,162,162,165,30,197,7,166,115,162,113,112,116,117,111,30,11,155,201
,181,185,209,139,226,139,167,99,154,71,8,11,112,162,116,166,30,248,13,6,166,162,161,167,167,117,161,111,31,252,13,6,111,117,116,
112,31,11,0,0,0,0,1,0,0,0,14,0,0,0,24,0,0,0,0,0,2,0,1,0,1,0,144,0,1,0,4,0,0,0,2,0,0,0,1,0,0,0,10,0,64,0,142,0,2,68,70,76,84,0,14
,108,97,116,110,0,34,0,4,0,0,0,0,255,255,0,5,0,0,0,1,0,2,0,3,0,4,0,4,0,0,0,0,255,255,0,5,0,0,0,1,0,2,0,3,0,4,0,5,97,97,108,116,0
,32,115,115,48,49,0,38,115,115,48,50,0,44,115,115,48,51,0,50,115,115,48,52,0,56,0,0,0,1,0,0,0,24,0,1,0,1,0,22,0,1,0,2,0,20,0,1,0
,3,0,18,0,1,0,4,0,0,1,0,0,0,1,1,0,0,1,2,0,0,1,3,0,5,0,12,0,20,0,28,0,36,0,44,0,3,0,0,0,1,0,40,0,1,0,0,0,1,0,82,0,1,0,0,0,1,0,86,
0,1,0,0,0,1,0,90,0,1,0,0,0,1,0,94,0,1,0,38,0,4,0,14,0,20,0,26,0,32,0,2,0,3,0,143,0,2,0,8,0,141,0,2,0,65,0,142,0,2,0,93,0,144,0,1
,0,4,0,3,0,8,0,65,0,93,0,1,0,6,0,77,0,1,0,1,0,65,0,1,0,6,0,140,0,1,0,1,0,3,0,1,0,6,0,133,0,1,0,1,0,8,0,1,0,6,0,51,0,1,0,1,0,93,0
,1,0,0,0,10,0,44,0,46,0,2,68,70,76,84,0,14,108,97,116,110,0,24,0,4,0,0,0,0,255,255,0,0,0,4,0,0,0,0,255,255,0,0,0,0,0,0,0,0,0,1,0
,0,0,0,204,61,162,207,0,0,0,0,204,138,51,83,0,0,0,0,211,135,133,166,2,211,0,0,2,211,0,0,2,211,1,34,2,211,0,161,2,211,0,113,2,211
,0,113,2,211,0,113,2,211,0,113,2,211,1,20,2,211,1,0,2,211,0,181,2,211,0,113,2,211,0,113,2,211,0,159,2,211,0,113,2,211,0,241,2,211
,0,173,2,211,0,113,2,211,0,144,2,211,0,130,2,211,0,113,2,211,0,113,2,211,0,139,2,211,0,113,2,211,0,113,2,211,0,113,2,211,0,113,2
,211,1,3,2,211,0,156,2,211,0,113,2,211,0,113,2,211,0,113,2,211,0,141,2,211,0,113,2,211,0,119,2,211,0,113,2,211,0,161,2,211,0,164
,2,211,0,159,2,211,0,210,2,211,0,121,2,211,0,141,2,211,0,170,2,211,0,130,2,211,0,127,2,211,0,141,2,211,0,113,2,211,0,127,2,211,0
,116,2,211,0,141,2,211,0,115,2,211,0,153,2,211,0,147,2,211,0,113,2,211,0,127,2,211,0,112,2,211,0,113,2,211,0,133,2,211,0,136,2,211
,0,141,2,211,0,210,2,211,0,173,2,211,0,130,2,211,0,113,2,211,0,113,2,211,1,3,2,211,0,127,2,211,0,124,2,211,0,167,2,211,0,113,2,211
,0,127,2,211,0,147,2,211,0,116,2,211,0,156,2,211,0,181,2,211,0,153,2,211,0,173,2,211,0,253,2,211,0,113,2,211,0,127,2,211,0,113,2
,211,0,124,2,211,0,113,2,211,0,204,2,211,0,153,2,211,0,127,2,211,0,127,2,211,0,116,2,211,0,115,2,211,0,147,2,211,0,113,2,211,0,147
,2,211,0,113,2,211,1,57,2,211,0,113,2,211,0,127,2,211,2,68,2,211,0,226,2,211,0,242,2,211,1,198,0,0,249,67,2,11,255,56,2,211,0,254
,2,114,2,90,1,84,0,226,255,146,0,226,0,174,0,226,1,16,0,254,255,184,0,226,0,140,0,254,1,106,255,94,255,82,1,50,0,113,0,226,0,226
,2,68,0,127,1,26,0,232,1,26,0,248,0,226,1,62,1,56,0,226,1,56,0,228,1,84,1,84,1,24,0,0,0,0,2,114,2,6,1,182,0,14]);Module["FS_createDataFile
"]("/","OCRB.otf",fileData1,true,true)}if(Module["calledRun"]){runWithFS()}else{if(!Module[
x22;preRun"])Module["preRun"]=[];Module["preRun"].push(runWithFS)}});loadPackage({"files":[]})}))();
var Module;if(!Module)Module=(typeof Module!=="undefined"?Module:null)||{};var moduleOverrides={};for(var key in Module
){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;
var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"
;]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER
=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"
;]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("The provided Module['ENVIRONMENT'] value
is not valid. It must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER
=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require===
x22;function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&
;&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["
;print"]=console.log;if(!Module["printErr"])Module["printErr"]=console.warn;var nodeFS;var nodePath;Module
["read"]=function read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("
path");filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);if(!ret&
x26;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){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(
ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process
["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function read(){throw"no read() available (jsc?)"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}}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};Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response)}else{onerror()}};xhr.onerror=onerror;xhr.send(null)};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.warn(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&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"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var Runtime={setTempRet0:(function(value){tempRet0=value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),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}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)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),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}),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[sig]){Runtime.funcWrappers[sig]={}}var sigCache=Runtime.funcWrappers[sig];if(!sigCache[func]){sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func,arguments)}}return sigCache[func]}),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+15&-16;return ret}),staticAlloc:(function(size){var ret=STATICTOP;STATICTOP=STATICTOP+size|0;STATICTOP=STATICTOP+15&-16;return ret}),dynamicAlloc:(function(size){var ret=DYNAMICTOP;DYNAMICTOP=DYNAMICTOP+size|0;DYNAMICTOP=DYNAMICTOP+15&-16;if(DYNAMICTOP>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){DYNAMICTOP=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module["Runtime"]=Runtime;var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];if(!func){try{func=eval("_"+ident)}catch(e){}}assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)");return func}var cwrap,ccall;((function(){var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"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){ret=Runtime.stackAlloc((str.length<<2)+1);writeStringToMemory(str,ret)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;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){if(opts&&opts.async){EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(stack)}));return}Runtime.stackRestore(stack)}return ret};var sourceRegex=/^function\s*[a-zA-Z$_0-9]*\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/;function parseJSFunc(jsfunc){var parsed=jsfunc.toString().match(sourceRegex).slice(1);return{arguments:parsed[0],body:parsed[1],returnValue:parsed[2]}}var JSsource=null;function ensureJSsource(){if(!JSsource){JSsource={};for(var fun in JSfuncs){if(JSfuncs.hasOwnProperty(fun)){JSsource[fun]=parseJSFunc(JSfuncs[fun])}}}}cwrap=function cwrap(ident,returnType,argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident);var numericArgs=argTypes.every((function(type){return type==="number"}));var numericRet=returnType!=="string";if(numericRet&&numericArgs){return cfunc}var argNames=argTypes.map((function(x,i){return"$"+i}));var funcstr="(function("+argNames.join(",")+") {";var nargs=argTypes.length;if(!numericArgs){ensureJSsource();funcstr+="var stack = "+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"];funcstr+="var "+convertCode.arguments+" = "+arg+";";funcstr+=convertCode.body+";";funcstr+=arg+"=("+convertCode.returnValue+");"}}var cfuncname=parseJSFunc((function(){return cfunc})).returnValue;funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");";if(!numericRet){var strgfy=parseJSFunc((function(){return Pointer_stringify})).returnValue;funcstr+="ret = "+strgfy+"(ret);"}if(!numericArgs){ensureJSsource();funcstr+=JSsource["stackRestore"].body.replace("()","(stack)")+";"}funcstr+="return ret})";return eval(funcstr)}}))();Module["ccall"]=ccall;Module["cwrap"]=cwrap;function setValue(ptr,value,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";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?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}Module["setValue"]=setValue;function getValue(ptr,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";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;var ALLOC_STACK=1;var ALLOC_STATIC=2;var ALLOC_DYNAMIC=3;var ALLOC_NONE=4;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;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:Runtime.staticAlloc,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";setValue(ret+i,curr,type);if(previousType!==type){typeSize=Runtime.getNativeTypeSize(type);previousType=type}i+=typeSize}return ret}Module["allocate"]=allocate;function getMemory(size){if(!staticSealed)return Runtime.staticAlloc(size);if(typeof _sbrk!=="undefined"&&!_sbrk.called||!runtimeInitialized)return Runtime.dynamicAlloc(size);return _malloc(size)}Module["getMemory"]=getMemory;function Pointer_stringify(ptr,length){if(length===0||!ptr)return"";var hasUtf=0;var t;var i=0;while(1){t=HEAPU8[ptr+i>>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module["UTF8ToString"](ptr)}Module["Pointer_stringify"]=Pointer_stringify;function AsciiToString(ptr){var str="";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module["AsciiToString"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module["stringToAscii"]=stringToAscii;function UTF8ArrayToString(u8Array,idx){var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}Module["UTF8ArrayToString"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module["UTF8ToString"]=UTF8ToString;function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}Module["stringToUTF8Array"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}Module["stringToUTF8"]=stringToUTF8;function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}Module["lengthBytesUTF8"]=lengthBytesUTF8;function demangle(func){var hasLibcxxabi=!!Module["___cxa_demangle"];if(hasLibcxxabi){try{var buf=_malloc(func.length);writeStringToMemory(func.substr(1),buf);var status=_malloc(4);var ret=Module["___cxa_demangle"](buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){return func}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}}Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");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 jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module["stackTrace"]=stackTrace;var PAGE_SIZE=4096;function alignMemoryPage(x){if(x%4096>0){x+=4096-x%4096}return x}var HEAP;var buffer;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE=0,STATICTOP=0,staticSealed=false;var STACK_BASE=0,STACKTOP=0,STACK_MAX=0;var DYNAMIC_BASE=0,DYNAMICTOP=0;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;var totalMemory=64*1024;while(totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK){if(totalMemory<16*1024*1024){totalMemory*=2}else{totalMemory+=16*1024*1024}}if(totalMemory!==TOTAL_MEMORY){TOTAL_MEMORY=totalMemory}if(Module["buffer"]){buffer=Module["buffer"]}else{buffer=new ArrayBuffer(TOTAL_MEMORY)}updateGlobalBufferViews();HEAP32[0]=255;if(HEAPU8[0]!==255||HEAPU8[3]!==0)throw"Typed arrays 2 must be run on a little-endian system";Module["HEAP"]=HEAP;Module["buffer"]=buffer;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__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}Module["addOnPreRun"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}Module["intArrayToString"]=intArrayToString;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++>>0]=array[i]}}Module["writeArrayToMemory"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}Module["writeAsciiToMemory"]=writeAsciiToMemory;if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];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;var Math_clz32=Math.clz32;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}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()}}}Module["removeRunDependency"]=removeRunDependency;Module["preloadedImages"]={};Module["preloadedAudios"]={};var ASM_CONSTS=[];STATIC_BASE=8;STATICTOP=STATIC_BASE+75136;__ATINIT__.push();allocate([90,0,0,0,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,1,0,0,124,2,0,0,68,11,0,0,80,15,0,0,116,15,0,0,188,15,0,0,100,16,0,0,160,16,0,0,220,16,0,0,216,19,0,0,24,20,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,8,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,89,111,63,0,0,0,45,0,167,144,26,0,71,9,14,0,1,32,7,0,139,147,3,0,56,202,1,0,42,229,0,0,151,114,0,0,76,57,0,0,166,28,0,0,83,14,0,0,41,7,0,0,149,3,0,0,202,1,0,0,229,0,0,0,115,0,0,0,57,0,0,0,29,0,0,0,14,0,0,0,7,0,0,0,4,0,0,0,2,0,0,0,1,0,0,0,1,5,0,0,84,0,0,0,249,40,0,0,0,0,1,0,0,0,2,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,56,3,0,0,48,1,0,0,160,0,0,0,10,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,11,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,12,0,0,0,2,0,0,0,3,0,0,0,213,43,0,0,2,41,0,0,11,41,0,0,164,1,0,0,49,41,0,0,184,1,0,0,65,41,0,0,188,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,4,0,0,0,88,240,188,5,228,2,0,0,241,59,35,40,196,135,0,0,234,161,68,163,225,1,0,0,88,240,188,5,228,2,0,0,241,59,35,40,196,135,0,0,235,161,68,163,225,1,0,0,212,234,229,17,80,3,0,0,59,202,48,90,99,144,0,0,2,38,164,19,126,0,0,0,252,255,251,255,8,0,0,0,184,72,158,156,162,190,0,0,18,1,2,112,8,0,0,0,252,255,251,255,8,0,0,0,131,4,90,10,57,124,1,0,18,1,2,112,8,0,0,0,0,0,0,0,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,0,1,0,0,0,64,0,0,0,1,0,0,0,1,0,0,0,68,0,0,0,0,0,0,0,0,0,0,0,9,0,3,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,1,5,0,0,44,0,0,0,209,43,0,0,0,0,1,0,0,0,2,0,0,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,56,3,0,0,48,0,0,0,172,0,0,0,13,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,11,0,0,0,1,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,6,0,0,0,7,0,0,0,213,43,0,0,230,43,0,0,234,43,0,0,28,3,0,0,92,44,0,0,44,3,0,0,113,44,0,0,48,3,0,0,162,44,0,0,56,3,0,0,250,43,0,0,140,3,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,10,0,0,0,20,0,0,0,9,0,0,0,8,0,0,0,11,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,10,0,0,0,9,0,0,0,13,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,15,0,0,0,5,0,0,0,4,0,0,0,0,16,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,16,0,0,4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,17,0,0,8,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,2,16,0,0,12,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,16,0,0,16,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,16,0,0,20,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,1,17,0,0,24,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,17,0,0,28,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,17,0,0,32,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,17,0,0,36,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,17,0,0,40,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,6,17,0,0,44,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,7,17,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,13,16,0,0,76,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,5,16,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,17,0,0,96,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,15,16,0,0,100,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,16,16,0,0,104,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,17,16,0,0,108,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,18,16,0,0,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,20,17,0,0,120,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,21,17,0,0,124,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,30,17,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,31,17,0,0,140,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,17,0,0,144,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,33,17,0,0,148,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,34,17,0,0,152,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,35,17,0,0,156,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,36,17,0,0,160,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,37,17,0,0,164,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,38,17,0,0,168,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,6,32,0,0,4,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,6,0,0,0,7,32,0,0,60,0,0,0,4,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,6,0,0,0,8,32,0,0,100,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,2,0,0,0,6,0,0,0,9,32,0,0,156,0,0,0,4,0,0,0,0,0,0,0,10,0,0,0,3,0,0,0,3,0,0,0,9,33,0,0,196,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,33,0,0,200,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,33,0,0,204,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,32,0,0,208,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,32,0,0,212,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,12,33,0,0,220,0,0,0,4,0,0,0,0,0,0,0,13,0,0,0,216,0,0,0,6,0,0,0,13,33,0,0,16,1,0,0,4,0,0,0,0,0,0,0,13,0,0,0,217,0,0,0,5,0,0,0,14,33,0,0,68,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,15,33,0,0,72,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,16,33,0,0,76,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,17,33,0,0,80,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,18,33,0,0,84,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,19,33,0,0,88,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,19,32,0,0,92,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,20,32,0,0,96,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,21,32,0,0,100,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5,0,202,154,59,24,0,0,0,16,0,0,0,0,0,0,0,17,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,19,0,0,0,20,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,21,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,23,0,0,0,24,0,0,0,56,0,0,0,25,0,0,0,0,0,0,0,26,0,0,0,27,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,28,0,0,0,29,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,30,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,32,0,0,0,33,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,34,0,0,0,35,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,36,0,0,0,37,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,38,0,0,0,39,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,40,0,0,0,41,0,0,0,44,0,0,0,42,0,0,0,0,0,0,0,43,0,0,0,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,45,0,0,0,46,0,0,0,44,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,50,0,0,0,51,0,0,0,40,0,0,0,52,0,0,0,10,0,0,0,53,0,0,0,54,0,0,0,7,0,0,0,6,0,0,0,55,0,0,0,7,0,0,0,8,0,0,0,14,0,0,0,56,0,0,0,57,0,0,0,0,0,0,0,20,0,0,0,76,44,0,0,0,0,1,0,0,0,2,0,104,11,0,0,0,0,0,0,0,0,0,0,58,0,0,0,8,0,0,0,15,0,0,0,16,0,0,0,11,0,0,0,58,0,0,0,17,0,0,0,9,0,0,0,9,0,0,0,59,0,0,0,10,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,12,0,0,0,65,0,0,0,13,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,10,0,0,0,70,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,14,0,0,0,12,0,0,0,15,0,0,0,13,0,0,0,71,0,0,0,14,0,0,0,72,0,0,0,15,0,0,0,73,0,0,0,16,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,112,9,0,0,164,9,0,0,216,9,0,0,12,10,0,0,64,10,0,0,116,10,0,0,168,10,0,0,220,10,0,0,16,11,0,0,0,0,0,0,2,0,0,0,255,255,255,255,99,105,110,117,0,0,0,0,255,255,255,255,99,105,110,117,1,0,0,0,0,0,0,0,110,109,114,97,3,0,0,0,0,0,0,0,98,109,121,115,3,0,0,0,10,0,0,0,99,105,110,117,3,0,0,0,1,0,0,0,99,105,110,117,3,0,0,0,2,0,0,0,115,105,106,115,3,0,0,0,3,0,0,0,32,32,98,103,3,0,0,0,4,0,0,0,53,103,105,98,3,0,0,0,5,0,0,0,115,110,97,119,3,0,0,0,6,0,0,0,97,104,111,106,81,44,0,0,228,12,0,0,92,44,0,0,240,12,0,0,113,44,0,0,244,12,0,0,124,44,0,0,252,12,0,0,162,44,0,0,4,13,0,0,0,0,0,0,0,0,0,0,17,0,0,0,74,0,0,0,19,0,0,0,15,0,0,0,11,0,0,0,75,0,0,0,18,0,0,0,19,0,0,0,76,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,77,0,0,0,78,0,0,0,1,0,0,0,72,13,0,0,64,3,0,0,79,0,0,0,1,0,0,0,0,0,0,0,80,0,0,0,20,0,0,0,32,0,0,0,127,0,0,0,160,0,0,0,255,0,0,0,0,1,0,0,127,1,0,0,128,1,0,0,79,2,0,0,80,2,0,0,175,2,0,0,176,2,0,0,255,2,0,0,0,3,0,0,111,3,0,0,112,3,0,0,255,3,0,0,0,4,0,0,255,4,0,0,0,5,0,0,47,5,0,0,0,29,0,0,127,29,0,0,128,29,0,0,191,29,0,0,192,29,0,0,255,29,0,0,0,30,0,0,255,30,0,0,0,31,0,0,255,31,0,0,0,32,0,0,111,32,0,0,112,32,0,0,159,32,0,0,160,32,0,0,207,32,0,0,80,33,0,0,143,33,0,0,96,36,0,0,255,36,0,0,96,44,0,0,127,44,0,0,224,45,0,0,255,45,0,0,64,166,0,0,159,166,0,0,32,167,0,0,255,167,0,0,0,251,0,0,6,251,0,0,0,212,1,0,255,215,1,0,0,0,0,0,0,0,0,0,99,105,110,117,110,109,114,97,66,79,68,65,49,116,97,108,0,0,0,0,2,0,0,0,84,14,0,0,64,3,0,0,81,0,0,0,2,0,0,0,0,0,0,0,82,0,0,0,21,0,0,0,128,46,0,0,255,46,0,0,0,47,0,0,223,47,0,0,0,48,0,0,63,48,0,0,64,48,0,0,159,48,0,0,160,48,0,0,255,48,0,0,0,49,0,0,47,49,0,0,48,49,0,0,143,49,0,0,160,49,0,0,191,49,0,0,192,49,0,0,239,49,0,0,240,49,0,0,255,49,0,0,0,50,0,0,255,50,0,0,0,51,0,0,255,51,0,0,0,52,0,0,191,77,0,0,192,77,0,0,255,77,0,0,0,78,0,0,255,159,0,0,0,249,0,0,255,250,0,0,48,254,0,0,79,254,0,0,0,255,0,0,239,255,0,0,0,0,2,0,223,166,2,0,0,248,2,0,31,250,2,0,0,0,0,0,0,0,0,0,3,0,0,0,28,15,0,0,64,3,0,0,83,0,0,0,3,0,0,0,0,0,0,0,84,0,0,0,22,0,0,0,0,9,0,0,255,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,8,13,0,0,40,13,0,0,52,14,0,0,252,14,0,0,0,0,0,0,4,0,0,0,204,0,0,0,249,44,0,0,0,0,1,0,0,0,2,0,44,15,0,0,16,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,176,0,0,0,4,45,0,0,0,0,1,0,0,0,2,0,152,15,0,0,17,0,0,0,18,0,0,0,0,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,108,116,117,111,85,0,0,0,1,0,0,0,2,0,0,0,86,0,0,0,19,0,0,0,2,0,0,0,72,0,0,0,13,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,12,0,0,0,13,0,0,0,3,0,0,0,23,0,0,0,164,15,0,0,2,0,0,0,72,0,0,0,21,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,12,0,0,0,13,0,0,0,3,0,0,0,23,0,0,0,164,15,0,0,108,116,117,111,87,0,0,0,4,0,0,0,0,0,0,0,88,0,0,0,20,0,0,0,89,0,0,0,90,0,0,0,24,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,72,0,0,0,29,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,15,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,2,0,0,0,72,0,0,0,36,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,17,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,2,0,0,0,72,0,0,0,47,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,18,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,26,0,0,0,21,0,0,0,19,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,23,0,0,0,91,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,4,0,0,0,2,0,0,0,22,0,0,0,23,0,0,0,1,0,0,0,26,0,0,0,92,0,0,0,3,0,0,0,28,0,0,0,24,0,0,0,29,0,0,0,27,0,0,0,1,0,0,0,28,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,5,0,0,0,4,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,4,0,0,0,2,0,0,0,2,0,0,0,6,0,0,0,4,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,6,0,0,0,2,0,0,0,6,0,0,0,2,0,0,0,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,21,0,0,0,29,0,0,0,25,0,0,0,204,45,0,0,213,45,0,0,223,45,0,0,232,45,0,0,234,45,0,0,249,45,0,0,8,46,0,0,29,46,0,0,31,46,0,0,34,46,0,0,37,46,0,0,47,46,0,0,57,46,0,0,70,46,0,0,81,46,0,0,91,46,0,0,106,46,0,0,114,46,0,0,129,46,0,0,143,46,0,0,156,46,0,0,171,46,0,0,183,46,0,0,196,46,0,0,209,46,0,0,217,46,0,0,228,46,0,0,237,46,0,0,246,46,0,0,255,46,0,0,10,47,0,0,20,47,0,0,33,47,0,0,42,47,0,0,54,47,0,0,57,47,0,0,61,47,0,0,65,47,0,0,69,47,0,0,71,47,0,0,85,47,0,0,97,47,0,0,99,47,0,0,106,47,0,0,110,47,0,0,120,47,0,0,137,47,0,0,153,47,0,0,187,45,0,0,168,47,0,0,182,47,0,0,197,47,0,0,213,47,0,0,229,47,0,0,244,47,0,0,250,47,0,0,0,48,0,0,10,48,0,0,28,48,0,0,47,48,0,0,50,48,0,0,58,48,0,0,66,48,0,0,68,48,0,0,71,48,0,0,75,48,0,0,79,48,0,0,82,48,0,0,86,48,0,0,90,48,0,0,93,48,0,0,96,48,0,0,103,48,0,0,116,48,0,0,32,0,0,0,26,0,0,0,30,0,0,0,93,0,0,0,94,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,27,0,0,0,30,0,0,0,93,0,0,0,94,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,0,0,0,28,0,0,0,31,0,0,0,95,0,0,0,96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,29,0,0,0,32,0,0,0,97,0,0,0,98,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,19,0,0,80,19,0,0,120,19,0,0,160,19,0,0,0,0,0,0,20,0,0,0,129,48,0,0,0,0,2,0,0,0,2,0,252,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,0,0,40,17,0,0,92,17,0,0,124,17,0,0,6,0,0,0,200,19,0,0,244,17,0,0,0,0,0,0,20,0,0,0,135,48,0,0,0,0,1,0,0,0,2,0,60,20,0,0,0,0,0,0,0,0,0,0,99,0,0,0,30,0,0,0,2,0,0,0,100,0,0,0,101,0,0,0,31,0,0,0,32,0,0,0,120,25,0,0,214,37,0,0,0,0,0,0,6,0,0,0,12,0,0,0,21,0,0,0,28,0,0,0,35,0,0,0,38,0,0,0,53,0,0,0,59,0,0,0,72,0,0,0,148,3,0,0,169,3,0,0,21,34,0,0,173,0,0,0,201,2,0,0,188,3,0,0,25,34,0,0,160,0,0,0,26,2,0,0,27,2,0,0,91,21,1,0,60,20,0,0,0,0,0,0,0,0,0,0,192,20,0,0,5,0,0,0,0,0,0,0,0,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,32,0,0,0,120,33,1,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,20,0,0,4,0,16,0,17,4,0,0,12,2,4,0,12,2,6,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,0,0,0,0,4,0,20,0,16,4,0,0,16,4,4,0,16,4,8,0,16,4,12,0,12,2,16,0,12,2,18,0,0,0,0,0,4,0,20,0,17,4,0,0,12,2,4,0,12,2,6,0,16,4,8,0,12,2,12,0,12,2,14,0,16,4,16,0,0,0,0,0,4,0,4,0,8,1,16,0,8,1,17,0,8,1,18,0,8,1,19,0,0,0,0,0,0,0,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,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,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,94,0,95,0,96,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,111,0,112,0,113,0,114,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,123,0,124,0,125,0,126,0,127,0,128,0,129,0,130,0,131,0,132,0,133,0,134,0,135,0,136,0,137,0,138,0,139,0,140,0,141,0,142,0,143,0,144,0,145,0,146,0,147,0,148,0,149,0,150,0,151,0,152,0,153,0,154,0,155,0,156,0,157,0,158,0,159,0,160,0,161,0,162,0,163,0,164,0,165,0,166,0,167,0,168,0,169,0,170,0,171,0,172,0,173,0,174,0,175,0,176,0,177,0,178,0,179,0,180,0,181,0,182,0,183,0,184,0,185,0,186,0,187,0,188,0,189,0,190,0,191,0,192,0,193,0,194,0,195,0,196,0,197,0,198,0,199,0,200,0,201,0,202,0,203,0,204,0,205,0,206,0,207,0,208,0,209,0,210,0,211,0,212,0,213,0,214,0,215,0,216,0,217,0,218,0,219,0,220,0,221,0,222,0,223,0,224,0,225,0,226,0,227,0,228,0,0,0,1,0,229,0,230,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,253,0,254,0,255,0,0,1,1,1,2,1,3,1,4,1,5,1,6,1,7,1,8,1,9,1,10,1,109,0,110,0,11,1,12,1,13,1,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,1,48,1,49,1,50,1,51,1,52,1,53,1,54,1,55,1,56,1,57,1,58,1,59,1,60,1,61,1,62,1,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,0,0,1,0,231,0,232,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,253,0,254,0,255,0,0,1,1,1,2,1,3,1,4,1,5,1,6,1,7,1,8,1,9,1,10,1,109,0,110,0,11,1,12,1,13,1,14,1,16,1,44,1,45,1,46,1,49,1,58,1,59,1,158,0,155,0,163,0,64,1,65,1,66,1,67,1,68,1,69,1,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,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,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,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,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,94,0,95,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,0,0,111,0,112,0,113,0,114,0,0,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,0,0,123,0,0,0,124,0,125,0,126,0,127,0,128,0,129,0,130,0,131,0,0,0,132,0,133,0,0,0,134,0,135,0,136,0,137,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,138,0,0,0,139,0,0,0,0,0,0,0,0,0,140,0,141,0,142,0,143,0,0,0,0,0,0,0,0,0,0,0,144,0,0,0,0,0,0,0,145,0,0,0,0,0,146,0,147,0,148,0,149,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,229,0,230,0,0,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,0,0,253,0,254,0,255,0,0,1,1,1,0,0,0,0,0,0,2,1,0,0,0,0,3,1,4,1,5,1,6,1,0,0,0,0,7,1,8,1,9,1,0,0,10,1,109,0,110,0,11,1,12,1,13,1,0,0,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,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,48,1,49,1,50,1,0,0,0,0,51,1,52,1,53,1,54,1,55,1,0,0,56,1,0,0,0,0,56,1,0,0,0,0,58,1,59,1,0,0,0,0,60,1,61,1,62,1,0,0,0,0,0,0,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,0,0,0,0,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,4,0,8,0,17,4,4,0,17,4,8,0,0,0,0,0,4,0,54,0,16,4,0,0,16,4,4,0,17,4,8,0,17,4,12,0,12,2,16,0,12,2,18,0,17,4,20,0,17,4,24,0,17,4,28,0,17,4,32,0,13,2,36,0,13,2,38,0,13,2,40,0,13,2,42,0,12,2,44,0,12,2,46,0,13,2,48,0,13,2,50,0,13,2,52,0,0,0,0,0,4,0,36,0,16,4,0,0,13,2,4,0,13,2,6,0,13,2,8,0,12,2,10,0,13,2,12,0,13,2,14,0,13,2,16,0,13,2,18,0,13,2,20,0,13,2,22,0,13,2,24,0,13,2,26,0,13,2,28,0,13,2,30,0,13,2,32,0,12,2,34,0,0,0,0,0,4,0,6,0,17,4,0,0,12,2,4,0,0,0,0,0,4,0,26,0,12,2,6,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,12,2,16,0,12,2,18,0,12,2,20,0,12,2,22,0,12,2,24,0,12,2,26,0,12,2,28,0,12,2,30,0,0,0,0,0,4,0,78,0,12,2,0,0,13,2,2,0,12,2,4,0,12,2,6,0,13,2,8,0,13,2,10,0,13,2,12,0,13,2,14,0,13,2,16,0,13,2,18,0,13,2,20,0,13,2,22,0,13,2,24,0,13,2,26,0,13,2,28,0,13,2,30,0,8,1,32,0,8,1,33,0,8,1,34,0,8,1,35,0,8,1,36,0,8,1,37,0,8,1,38,0,8,1,39,0,8,1,40,0,8,1,41,0,16,4,44,0,16,4,48,0,16,4,52,0,16,4,56,0,8,1,60,0,8,1,61,0,8,1,62,0,8,1,63,0,12,2,64,0,12,2,66,0,12,2,68,0,13,2,70,0,13,2,72,0,13,2,74,0,12,2,76,0,12,2,78,0,0,0,0,0,4,0,8,0,16,4,80,0,16,4,84,0,0,0,0,0,4,0,10,0,13,2,88,0,13,2,90,0,12,2,92,0,12,2,94,0,12,2,96,0,0,0,0,0,4,0,32,0,16,4,0,0,16,4,4,0,13,2,8,0,13,2,10,0,16,4,12,0,16,4,16,0,16,4,20,0,16,4,24,0,16,4,28,0,0,0,0,0,4,0,6,0,12,2,0,0,12,4,4,0,12,4,8,0,0,0,0,0,12,2,0,0,12,2,2,0,12,2,4,0,12,2,6,0,12,2,8,0,12,4,12,0,0,0,0,0,4,0,54,0,16,4,0,0,16,4,4,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,12,2,16,0,24,16,20,0,24,8,36,0,24,6,44,0,9,1,50,0,9,1,51,0,8,1,52,0,8,1,53,0,0,0,0,0,4,0,5,0,8,1,0,0,8,1,1,0,9,1,2,0,9,1,3,0,8,1,4,0,0,0,0,0,4,0,8,0,8,1,0,0,8,1,1,0,9,1,2,0,9,1,3,0,8,1,4,0,9,1,5,0,9,1,6,0,8,1,7,0,0,0,0,0,4,0,8,0,12,2,4,0,12,2,6,0,12,2,8,0,12,2,10,0,0,0,0,0,4,0,16,0,16,4,0,0,16,4,4,0,16,4,8,0,16,4,12,0,0,0,0,0,16,4,8,0,17,0,0,0,16,4,0,0,16,4,12,0,0,0,0,0,9,1,0,0,9,1,1,0,8,1,2,0,9,1,3,0,9,1,4,0,9,1,5,0,9,1,6,0,9,1,7,0,9,1,8,0,9,1,9,0,9,1,10,0,9,1,11,0,0,0,0,0,12,2,40,0,12,2,42,0,8,1,44,0,8,1,45,0,8,1,46,0,9,1,47,0,0,0,0,0,253,0,0,0,6,0,5,1,11,1,18,1,27,1,38,1,45,1,53,1,246,2,74,1,84,1,95,1,104,1,109,1,115,1,122,1,129,1,135,1,140,1,144,1,148,1,154,1,159,1,164,1,168,1,174,1,180,1,185,1,191,1,201,1,206,1,212,1,220,1,229,1,232,1,234,1,236,1,238,1,240,1,242,1,244,1,246,1,248,1,250,1,252,1,254,1,0,2,2,2,4,2,6,2,8,2,10,2,12,2,14,2,16,2,18,2,20,2,22,2,24,2,26,2,28,2,40,2,50,2,63,2,75,2,211,3,96,2,98,2,100,2,102,2,104,2,106,2,108,2,110,2,112,2,114,2,116,2,118,2,120,2,122,2,124,2,126,2,128,2,130,2,132,2,134,2,136,2,138,2,140,2,142,2,144,2,146,2,148,2,158,2,162,2,173,2,95,5,112,5,125,5,134,5,206,5,232,5,26,6,67,6,96,6,74,6,86,6,109,6,103,6,116,6,125,6,154,6,132,6,144,6,161,6,190,6,168,6,180,6,197,6,204,6,233,6,211,6,223,6,240,6,254,6,27,7,5,7,17,7,71,3,239,4,195,2,200,2,229,2,113,3,103,3,136,4,22,5,66,5,173,4,217,3,7,4,23,0,62,4,84,4,32,0,195,4,41,0,51,0,218,2,170,4,64,0,76,0,86,0,94,0,97,0,65,4,94,4,106,0,107,4,126,4,198,3,184,2,159,4,112,0,222,2,120,0,132,0,15,3,162,3,177,3,138,0,105,5,118,5,249,5,91,4,133,4,64,3,55,4,2,3,148,3,86,2,63,1,222,4,155,0,41,7,50,6,209,2,237,2,29,3,43,3,58,3,61,3,78,3,88,3,120,3,135,3,186,3,83,5,141,5,76,5,153,5,163,5,170,5,177,5,189,5,199,5,213,5,220,5,163,0,242,5,7,6,14,6,36,6,110,4,223,3,234,3,240,3,247,3,253,3,16,4,21,4,29,4,42,4,49,4,77,4,119,4,0,6,247,6,60,6,51,7,229,4,183,4,39,5,43,6,34,7,205,4,246,4,33,5,43,5,147,4,10,5,52,5,187,4,211,4,252,4,169,0,175,0,182,0,189,0,200,0,209,0,218,0,225,0,232,0,239,0,246,0,253,0,5,1,11,1,18,1,27,1,38,1,45,1,53,1,63,1,74,1,84,1,95,1,104,1,109,1,115,1,122,1,129,1,135,1,140,1,144,1,148,1,154,1,159,1,164,1,168,1,174,1,180,1,185,1,191,1,201,1,206,1,212,1,220,1,229,1,232,1,234,1,236,1,238,1,240,1,242,1,244,1,246,1,248,1,250,1,252,1,254,1,0,2,2,2,4,2,6,2,8,2,10,2,12,2,14,2,16,2,18,2,20,2,22,2,24,2,26,2,28,2,40,2,50,2,63,2,75,2,86,2,96,2,98,2,100,2,102,2,104,2,106,2,108,2,110,2,112,2,114,2,116,2,118,2,120,2,122,2,124,2,126,2,128,2,130,2,132,2,134,2,136,2,138,2,140,2,142,2,144,2,146,2,148,2,158,2,162,2,173,2,184,2,195,2,200,2,209,2,218,2,222,2,229,2,237,2,246,2,2,3,15,3,29,3,43,3,58,3,61,3,64,3,71,3,78,3,88,3,103,3,113,3,120,3,135,3,148,3,162,3,177,3,186,3,198,3,211,3,217,3,223,3,234,3,240,3,247,3,253,3,7,4,16,4,21,4,29,4,42,4,49,4,55,4,62,4,65,4,77,4,84,4,91,4,94,4,107,4,110,4,119,4,126,4,133,4,136,4,147,4,159,4,170,4,173,4,183,4,187,4,195,4,205,4,211,4,222,4,229,4,239,4,246,4,252,4,10,5,22,5,33,5,39,5,43,5,52,5,66,5,76,5,83,5,95,5,105,5,112,5,118,5,125,5,134,5,141,5,153,5,163,5,170,5,177,5,189,5,199,5,206,5,213,5,220,5,232,5,242,5,249,5,0,6,7,6,14,6,26,6,36,6,43,6,50,6,60,6,67,6,74,6,86,6,96,6,103,6,109,6,116,6,125,6,132,6,144,6,154,6,161,6,168,6,180,6,190,6,197,6,204,6,211,6,223,6,233,6,240,6,247,6,254,6,5,7,17,7,27,7,34,7,41,7,51,7,58,7,70,7,88,7,103,7,118,7,133,7,144,7,162,7,181,7,196,7,211,7,224,7,236,7,248,7,6,8,19,8,32,8,44,8,58,8,72,8,85,8,99,8,119,8,134,8,148,8,158,8,168,8,181,8,191,8,201,8,211,8,221,8,231,8,241,8,251,8,5,9,15,9,25,9,28,9,32,9,36,9,54,9,73,9,89,9,104,9,115,9,122,9,129,9,136,9,143,9,150,9,157,9,164,9,171,9,178,9,185,9,192,9,199,9,206,9,213,9,220,9,227,9,234,9,241,9,248,9,255,9,6,10,13,10,20,10,27,10,34,10,41,10,55,10,65,10,72,10,83,10,99,10,112,10,124,10,136,10,148,10,162,10,173,10,184,10,199,10,211,10,222,10,237,10,249,10,3,11,16,11,34,11,44,11,57,11,69,11,82,11,91,11,101,11,114,11,127,11,140,11,152,11,166,11,180,11,193,11,206,11,218,11,230,11,244,11,1,12,14,12,26,12,40,12,54,12,67,12,80,12,95,12,110,12,124,12,136,12,148,12,165,12,177,12,192,12,203,12,211,12,225,12,237,12,249,12,10,13,25,13,37,13,49,13,66,13,81,13,90,13,102,13,114,13,126,13,143,13,155,13,170,13,178,13,190,13,202,13,214,13,231,13,246,13,2,14,13,14,28,14,36,14,44,14,52,14,60,14,66,14,71,14,76,14,82,14,89,14,97,14,103,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,229,0,230,0,0,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,0,0,253,0,254,0,255,0,0,1,1,1,0,0,0,0,0,0,2,1,0,0,0,0,3,1,4,1,5,1,6,1,0,0,0,0,7,1,8,1,9,1,0,0,10,1,109,0,110,0,11,1,12,1,13,1,0,0,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,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,48,1,49,1,50,1,0,0,0,0,51,1,52,1,53,1,54,1,55,1,0,0,56,1,0,0,0,0,57,1,0,0,0,0,58,1,59,1,0,0,0,0,60,1,61,1,62,1,0,0,0,0,0,0,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,0,0,0,0,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,108,111,97,100,95,102,111,110,116,40,37,115,44,37,115,41,58,32,116,111,111,32,109,97,110,121,32,102,111,110,116,115,33,10,0,78,101,119,95,70,97,99,101,40,37,115,44,37,115,41],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([32,69,114,114,111,114,33,32,37,100,10,0,83,101,116,95,67,104,97,114,95,83,105,122,101,32,69,114,114,111,114,33,32,37,100,10,0,76,111,97,100,95,67,104,97,114,32,69,114,114,111,114,33,32,37,100,10,0,73,110,105,116,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,65,46,111,116,102,0,78,101,119,95,70,97,99,101,40,79,67,82,45,65,41,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,66,46,111,116,102,0,78,101,119,95,70,97,99,101,40,79,67,82,45,66,41,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,45,65,0,79,67,82,45,66,0,99,105,100,0,116,121,112,101,49,0,79,84,84,79,0,46,95,0,47,46,46,110,97,109,101,100,102,111,114,107,47,114,115,114,99,0,47,114,115,114,99,0,114,101,115,111,117,114,99,101,46,102,114,107,47,0,46,114,101,115,111,117,114,99,101,47,0,37,0,46,65,112,112,108,101,68,111,117,98,108,101,47,0,116,114,117,101,116,121,112,101,0,84,114,117,101,84,121,112,101,0,109,117,108,116,105,45,109,97,115,116,101,114,115,0,87,105,100,116,104,0,79,112,116,105,99,97,108,83,105,122,101,0,83,108,97,110,116,0,116,114,117,101,116,121,112,101,45,101,110,103,105,110,101,0,116,116,45,103,108,121,102,0,68,70,75,97,105,83,104,111,45,83,66,0,0,0,0,0,0,68,70,75,97,105,83,104,117,0,0,0,0,0,0,0,0,0,68,70,75,97,105,45,83,66,0,0,0,0,0,0,0,0,0,72,117,97,84,105,97,110,75,97,105,84,105,63,0,0,0,0,72,117,97,84,105,97,110,83,111,110,103,84,105,63,0,0,0,77,105,110,103,76,105,85,0,0,0,0,0,0,0,0,0,0,80,77,105,110,103,76,105,85,0,0,0,0,0,0,0,0,0,77,105,110,103,76,105,52,51,0,0,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,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,255,254,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,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,2,3,4,5,6,7,8,9,3,5,7,9,11,13,15,17,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,32,32,32,32,32,32,2,2,0,80,16,16,16,16,16,16,16,16,0,0,16,0,16,16,16,16,18,16,0,34,1,17,16,32,0,16,32,16,16,0,16,16,0,0,0,0,16,16,16,16,16,0,32,32,0,0,32,32,0,0,32,17,32,17,17,17,32,33,33,1,1,0,0,16,33,33,33,33,33,33,17,17,16,0,33,33,17,16,16,16,33,33,33,33,17,17,17,17,17,17,17,17,17,17,17,17,32,16,16,16,16,16,16,16,32,32,0,0,0,0,16,16,0,32,32,0,0,16,32,32,17,16,51,33,33,16,32,0,0,0,0,0,0,0,0,0,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,1,2,3,4,5,6,7,8,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,99,102,102,0,120,102,56,54,45,100,114,105,118,101,114,45,110,97,109,101,0,67,70,70,0,112,111,115,116,115,99,114,105,112,116,45,105,110,102,111,0,67,73,68,0,82,101,103,117,108,97,114,0,66,111,108,100,0,66,108,97,99,107,0,0,194,193,193,32,32,32,32,32,32,32,32,32,32,13,7,9,11,128,130,130,130,130,128,128,0,1,2,2,2,1,0,2,1,1,1,2,1,2,1,2,1,4,3,2,2,1,2,4,1,1,0,2,0,0,0,5,4,2,115,102,110,116,0,115,102,110,116,45,116,97,98,108,101,0,112,111,115,116,115,99,114,105,112,116,45,102,111,110,116,45,110,97,109,101,0,103,108,121,112,104,45,100,105,99,116,0,98,100,102,0,67,72,65,82,83,69,84,95,82,69,71,73,83,84,82,89,0,67,72,65,82,83,69,84,95,69,78,67,79,68,73,78,71,0,116,116,45,99,109,97,112,115,0,84,72,69,90,79,67,81,83,0,0,0,0,0,72,69,90,76,79,67,85,83,0,0,0,0,0,102,105,106,107,100,98,104,0,0,0,0,0,0,120,122,114,111,101,115,99,0,0,0,0,0,0,120,122,114,111,101,115,99,0,0,0,0,0,0,112,113,103,106,121,0,0,0,0,0,0,0,0,97,117,116,111,102,105,116,116,101,114,0,112,115,104,105,110,116,101,114,0,114,97,115,116,101,114,49,0,114,97,115,116,101,114,53,0,115,109,111,111,116,104,0,115,109,111,111,116,104,45,108,99,100,0,115,109,111,111,116,104,45,108,99,100,118,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,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,255,255,255,255,255,255,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,255,255,255,255,255,83,116,97,114,116,70,111,110,116,77,101,116,114,105,99,115,0,65,115,99,101,110,100,101,114,0,65,120,105,115,76,97,98,101,108,0,65,120,105,115,84,121,112,101,0,66,0,66,108,101,110,100,65,120,105,115,84,121,112,101,115,0,66,108,101,110,100,68,101,115,105,103,110,77,97,112,0,66,108,101,110,100,68,101,115,105,103,110,80,111,115,105,116,105,111,110,115,0,67,0,67,67,0,67,72,0,67,97,112,72,101,105,103,104,116,0,67,104,97,114,87,105,100,116,104,0,67,104,97,114,97,99,116,101,114,83,101,116,0,67,104,97,114,97,99,116,101,114,115,0,68,101,115,99,101,110,100,101,114,0,69,110,99,111,100,105,110,103,83,99,104,101,109,101,0,69,110,100,65,120,105,115,0,69,110,100,67,104,97,114,77,101,116,114,105,99,115,0,69,110,100,67,111,109,112,111,115,105,116,101,115,0,69,110,100,68,105,114,101,99,116,105,111,110,0,69,110,100,70,111,110,116,77,101,116,114,105,99,115,0,69,110,100,75,101,114,110,68,97,116,97,0,69,110,100,75,101,114,110,80,97,105,114,115,0,69,110,100,84,114,97,99,107,75,101,114,110,0,69,115,99,67,104,97,114,0,70,97,109,105,108,121,78,97,109,101,0,70,111,110,116,66,66,111,120,0,70,111,110,116,78,97,109,101,0,70,117,108,108,78,97,109,101,0,73,115,66,97,115,101,70,111,110,116,0,73,115,67,73,68,70,111,110,116,0,73,115,70,105,120,101,100,80,105,116,99,104,0,73,115,70,105,120,101,100,86,0,73,116,97,108,105,99,65,110,103,108,101,0,75,80,0,75,80,72,0,75,80,88,0,75,80,89,0,76,0,77,97,112,112,105,110,103,83,99,104,101,109,101,0,77,101,116,114,105,99,115,83,101,116,115,0,78,0,78,111,116,105,99,101,0,80,67,67,0,83,116,97,114,116,65,120,105,115,0,83,116,97,114,116,67,104,97,114,77,101,116,114,105,99,115,0,83,116,97,114,116,67,111,109,112,111,115,105,116,101,115,0,83,116,97,114,116,68,105,114,101,99,116,105,111,110,0,83,116,97,114,116,75,101,114,110,68,97,116,97,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,48,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,49,0,83,116,97,114,116,84,114,97,99,107,75,101,114,110,0,83,116,100,72,87,0,83,116,100,86,87,0,84,114,97,99,107,75,101,114,110,0,85,110,100,101,114,108,105,110,101,80,111,115,105,116,105,111,110,0,85,110,100,101,114,108,105,110,101,84,104,105,99,107,110,101,115,115,0,86,86,0,86,86,101,99,116,111,114,0,86,101,114,115,105,111,110,0,87,0,87,48,0,87,48,88,0,87,48,89,0,87,49,0,87,49,88,0,87,49,89,0,87,88,0,87,89,0,87,101,105,103,104,116,0,87,101,105,103,104,116,86,101,99,116,111,114,0,88,72,101,105,103,104,116,0,116,114,117,101,0,112,115,97,117,120,0,112,115,110,97,109,101,115,0,0,52,0,106,2,167,3,63,4,220,6,125,9,143,10,23,11,137,12,199,14,246,15,87,16,233,17,219,18,104,19,88,22,110,23,32,23,71,24,77,27,156,29,73,31,247,32,107,32,222,33,55,34,154,35,218,53,84,59,196,68,6,75,183,83,178,88,135,93,242,101,165,109,185,111,55,117,254,123,73,130,238,138,206,145,31,153,182,156,189,163,249,178,221,193,17,197,99,199,240,204,27,204,155,210,100,65,143,0,65,0,140,0,175,0,193,1,15,1,147,1,233,1,251,2,7,2,40,2,57,2,82,2,91,2,128,2,136,2,154,69,131,0,198,0,150,0,158,0,167,225,227,245,244,101,128,1,252,237,225,227,242,239,110,128,1,226,243,237,225,236,108,128,247,230,225,227,245,244,101,129,0,193,0,185,243,237,225,236,108,128,247,225,226,242,229,246,101,134,1,2,0,213,0,221,0,232,0,243,0,251,1,7,225,227,245,244,101,128,30,174,227,249,242,233,236,236,233,99,128,4,208,228,239,244,226,229,236,239,119,128,30,182,231,242,225,246,101,128,30,176,232,239,239,235,225,226,239,246,101,128,30,178,244,233,236,228,101,128,30,180,99,4,1,25,1,32,1,121,1,137,225,242,239,110,128,1,205,233,242,99,2,1,40,1,45,236,101,128,36,182,245,237,230,236,229,120,134,0,194,1,66,1,74,1,85,1,93,1,105,1,113,225,227,245,244,101,128,30,164,228,239,244,226,229,236,239,119,128,30,172,231,242,225,246,101,128,30,166,232,239,239,235,225,226,239,246,101,128,30,168,243,237,225,236,108,128,247,226,244,233,236,228,101,128,30,170,245,244,101,129,246,201,1,129,243,237,225,236,108,128,247,180,249,242,233,236,236,233,99,128,4,16,100,3,1,155,1,165,1,209,226,236,231,242,225,246,101,128,2,0,233,229,242,229,243,233,115,131,0,196,1,181,1,192,1,201,227,249,242,233,236,236,233,99,128,4,210,237,225,227,242,239,110,128,1,222,243,237,225,236,108,128,247,228,239,116,2,1,216,1,224,226,229,236,239,119,128,30,160,237,225,227,242,239,110,128,1,224,231,242,225,246,101,129,0,192,1,243,243,237,225,236,108,128,247,224,232,239,239,235,225,226,239,246,101,128,30,162,105,2,2,13,2,25,229,227,249,242,233,236,236,233,99,128,4,212,238,246,229,242,244,229,228,226,242,229,246,101,128,2,2,236,240,232,97,129,3,145,2,49,244,239,238,239,115,128,3,134,109,2,2,63,2,71,225,227,242,239,110,128,1,0,239,238,239,243,240,225,227,101,128,255,33,239,231,239,238,229,107,128,1,4,242,233,238,103,131,0,197,2,104,2,112,2,120,225,227,245,244,101,128,1,250,226,229,236,239,119,128,30,0,243,237,225,236,108,128,247,229,243,237,225,236,108,128,247,97,244,233,236,228,101,129,0,195,2,146,243,237,225,236,108,128,247,227,249,226,225,242,237,229,238,233,225,110,128,5,49,66,137,0,66,2,189,2,198,2,223,3,3,3,10,3,22,3,34,3,46,3,54,227,233,242,227,236,101,128,36,183,228,239,116,2,2,206,2,215,225,227,227,229,238,116,128,30,2,226,229,236,239,119,128,30,4,101,3,2,231,2,242,2,254,227,249,242,233,236,236,233,99,128,4,17,238,225,242,237,229,238,233,225,110,128,5,50,244,97,128,3,146,232,239,239,107,128,1,129,236,233,238,229,226,229,236,239,119,128,30,6,237,239,238,239,243,240,225,227,101,128,255,34,242,229,246,229,243,237,225,236,108,128,246,244,243,237,225,236,108,128,247,98,244,239,240,226,225,114,128,1,130,67,137,0,67,3,85,3,127,3,193,3,210,3,224,4,171,4,188,4,200,4,212,97,3,3,93,3,104,3,111,225,242,237,229,238,233,225,110,128,5,62,227,245,244,101,128,1,6,242,239,110,129,246,202,3,119,243,237,225,236,108,128,246,245,99,3,3,135,3,142,3,171,225,242,239,110,128,1,12,229,228,233,236,236,97,130,0,199,3,155,3,163,225,227,245,244,101,128,30,8,243,237,225,236,108,128,247,231,233,242,99,2,3,179,3,184,236,101,128,36,184,245,237,230,236,229,120,128,1,8,228,239,116,129,1,10,3,201,225,227,227,229,238,116,128,1,10,229,228,233,236,236,225,243,237,225,236,108,128,247,184,104,4,3,234,3,246,4,161,4,165,225,225,242,237,229,238,233,225,110,128,5,73,101,6,4,4,4,24,4,35,4,103,4,115,4,136,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,188,227,249,242,233,236,236,233,99,128,4,39,100,2,4,41,4,85,229,243,227,229,238,228,229,114,2,4,54,4,74,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,190,227,249,242,233,236,236,233,99,128,4,182,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,244,232,225,242,237,229,238,233,225,110,128,5,67,235,232,225,235,225,243,243,233,225,238,227,249,242,233,236,236,233,99,128,4,203,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,184,105,128,3,167,239,239,107,128,1,135,233,242,227,245,237,230,236,229,248,243,237,225,236,108,128,246,246,237,239,238,239,243,240,225,227,101,128,255,35,239,225,242,237,229,238,233,225,110,128,5,81,243,237,225,236,108,128,247,99,68,142,0,68,4,252,5,10,5,36,5,96,5,121,5,166,5,173,5,231,5,244,6,0,6,12,6,28,6,48,6,57,90,129,1,241,5,2,227,225,242,239,110,128,1,196,97,2,5,16,5,27,225,242,237,229,238,233,225,110,128,5,52,230,242,233,227,225,110,128,1,137,99,4,5,46,5,53,5,62,5,89,225,242,239,110,128,1,14,229,228,233,236,236,97,128,30,16,233,242,99,2,5,70,5,75,236,101,128,36,185,245,237,230,236,229,248,226,229,236,239,119,128,30,18,242,239,225,116,128,1,16,228,239,116,2,5,104,5,113,225,227,227,229,238,116,128,30,10,226,229,236,239,119,128,30,12,101,3,5,129,5,140,5,150,227,249,242,233,236,236,233,99,128,4,20,233,227,239,240,244,233,99,128,3,238,236,244,97,129,34,6,5,158,231,242,229,229,107,128,3,148,232,239,239,107,128,1,138,105,2,5,179,5,218,229,242,229,243,233,115,131,246,203,5,194,5,202,5,210,193,227,245,244,101,128,246,204,199,242,225,246,101,128,246,205,243,237,225,236,108,128,247,168,231,225,237,237,225,231,242,229,229,107,128,3,220,234,229,227,249,242,233,236,236,233,99,128,4,2,236,233,238,229,226,229,236,239,119,128,30,14,237,239,238,239,243,240,225,227,101,128,255,36,239,244,225,227,227,229,238,244,243,237,225,236,108,128,246,247,115,2,6,34,6,41,236,225,243,104,128,1,16,237,225,236,108,128,247,100,244,239,240,226,225,114,128,1,139,122,131,1,242,6,67,6,75,6,112,227,225,242,239,110,128,1,197,101,2,6,81,6,101,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,224,227,249,242,233,236,236,233,99,128,4,5,232,229,227,249,242,233,236,236,233,99,128,4,15,69,146,0,69,6,165,6,183,6,191,7,89,7,153,7,165,7,183,7,211,8,7,8,36,8,94,8,169,8,189,8,208,8,248,9,44,9,109,9,115,225,227,245,244,101,129,0,201,6,175,243,237,225,236,108,128,247,233,226,242,229,246,101,128,1,20,99,5,6,203,6,210,6,224,6,236,7,79,225,242,239,110,128,1,26,229,228,233,236,236,225,226,242,229,246,101,128,30,28,232,225,242,237,229,238,233,225,110,128,5,53,233,242,99,2,6,244,6,249,236,101,128,36,186,245,237,230,236,229,120,135,0,202,7,16,7,24,7,32,7,43,7,51,7,63,7,71,225,227,245,244,101,128,30,190,226,229,236,239,119,128,30,24,228,239,244,226,229,236,239,119,128,30,198,231,242,225,246,101,128,30,192,232,239,239,235,225,226,239,246,101,128,30,194,243,237,225,236,108,128,247,234,244,233,236,228,101,128,30,196,249,242,233,236,236,233,99,128,4,4,100,3,7,97,7,107,7,127,226,236,231,242,225,246,101,128,2,4,233,229,242,229,243,233,115,129,0,203,7,119,243,237,225,236,108,128,247,235,239,116,130,1,22,7,136,7,145,225,227,227,229,238,116,128,1,22,226,229,236,239,119,128,30,184,230,227,249,242,233,236,236,233,99,128,4,36,231,242,225,246,101,129,0,200,7,175,243,237,225,236,108,128,247,232,104,2,7,189,7,200,225,242,237,229,238,233,225,110,128,5,55,239,239,235,225,226,239,246,101,128,30,186,105,3,7,219,7,230,7,245,231,232,244,242,239,237,225,110,128,33,103,238,246,229,242,244,229,228,226,242,229,246,101,128,2,6,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,100,108,2,8,13,8,24,227,249,242,233,236,236,233,99,128,4,27,229,246,229,238,242,239,237,225,110,128,33,106,109,3,8,44,8,72,8,83,225,227,242,239,110,130,1,18,8,56,8,64,225,227,245,244,101,128,30,22,231,242,225,246,101,128,30,20,227,249,242,233,236,236,233,99,128,4,28,239,238,239,243,240,225,227,101,128,255,37,110,4,8,104,8,115,8,135,8,154,227,249,242,233,236,236,233,99,128,4,29,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,162,103,129,1,74,8,141,232,229,227,249,242,233,236,236,233,99,128,4,164,232,239,239,235,227,249,242,233,236,236,233,99,128,4,199,111,2,8,175,8,183,231,239,238,229,107,128,1,24,240,229,110,128,1,144,240,243,233,236,239,110,129,3,149,8,200,244,239,238,239,115,128,3,136,114,2,8,214,8,225,227,249,242,233,236,236,233,99,128,4,32,229,246,229,242,243,229,100,129,1,142,8,237,227,249,242,233,236,236,233,99,128,4,45,115,4,9,2,9,13,9,33,9,37,227,249,242,233,236,236,233,99,128,4,33,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,170,104,128,1,169,237,225,236,108,128,247,101,116,3,9,52,9,78,9,92,97,130,3,151,9,60,9,70,242,237,229,238,233,225,110,128,5,56,244,239,238,239,115,128,3,137,104,129,0,208,9,84,243,237,225,236,108,128,247,240,233,236,228,101,129,30,188,9,101,226,229,236,239,119,128,30,26,245,242,111,128,32,172,250,104,130,1,183,9,124,9,132,227,225,242,239,110,128,1,238,242,229,246,229,242,243,229,100,128,1,184,70,136,0,70,9,163,9,172,9,184,9,212,9,219,9,248,10,4,10,15,227,233,242,227,236,101,128,36,187,228,239,244,225,227,227,229,238,116,128,30,30,101,2,9,190,9,202,232,225,242,237,229,238,233,225,110,128,5,86,233,227,239,240,244,233,99,128,3,228,232,239,239,107,128,1,145,105,2,9,225,9,238,244,225,227,249,242,233,236,236,233,99,128,4,114,246,229,242,239,237,225,110,128,33,100,237,239,238,239,243,240,225,227,101,128,255,38,239,245,242,242,239,237,225,110,128,33,99,243,237,225,236,108,128,247,102,71,140,0,71,10,51,10,61,10,107,10,115,10,176,10,193,10,205,11,39,11,52,11,65,11,90,11,107,194,243,241,245,225,242,101,128,51,135,97,3,10,69,10,76,10,94,227,245,244,101,128,1,244,237,237,97,129,3,147,10,84,225,230,242,233,227,225,110,128,1,148,238,231,233,225,227,239,240,244,233,99,128,3,234,226,242,229,246,101,128,1,30,99,4,10,125,10,132,10,141,10,163,225,242,239,110,128,1,230,229,228,233,236,236,97,128,1,34,233,242,99,2,10,149,10,154,236,101,128,36,188,245,237,230,236,229,120,128,1,28,239,237,237,225,225,227,227,229,238,116,128,1,34,228,239,116,129,1,32,10,184,225,227,227,229,238,116,128,1,32,229,227,249,242,233,236,236,233,99,128,4,19,104,3,10,213,10,226,11,33,225,228,225,242,237,229,238,233,225,110,128,5,66,101,3,10,234,10,255,11,16,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,148,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,146,245,240,244,245,242,238,227,249,242,233,236,236,233,99,128,4,144,239,239,107,128,1,147,233,237,225,242,237,229,238,233,225,110,128,5,51,234,229,227,249,242,233,236,236,233,99,128,4,3,109,2,11,71,11,79,225,227,242,239,110,128,30,32,239,238,239,243,240,225,227,101,128,255,39,242,225,246,101,129,246,206,11,99,243,237,225,236,108,128,247,96,115,2,11,113,11,129,237,225,236,108,129,247,103,11,122,232,239,239,107,128,2,155,244,242,239,235,101,128,1,228,72,140,0,72,11,165,11,190,11,198,11,208,12,17,12,40,12,77,12,117,12,129,12,157,12,165,12,189,177,184,53,3,11,175,11,180,11,185,179,51,128,37,207,180,51,128,37,170,181,49,128,37,171,178,178,176,183,51,128,37,161,208,243,241,245,225,242,101,128,51,203,97,3,11,216,11,236,12,0,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,168,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,178,242,228,243,233,231,238,227,249,242,233,236,236,233,99,128,4,42,98,2,12,23,12,28,225,114,128,1,38,242,229,246,229,226,229,236,239,119,128,30,42,99,2,12,46,12,55,229,228,233,236,236,97,128,30,40,233,242,99,2,12,63,12,68,236,101,128,36,189,245,237,230,236,229,120,128,1,36,100,2,12,83,12,93,233,229,242,229,243,233,115,128,30,38,239,116,2,12,100,12,109,225,227,227,229,238,116,128,30,34,226,229,236,239,119,128,30,36,237,239,238,239,243,240,225,227,101,128,255,40,111,2,12,135,12,146,225,242,237,229,238,233,225,110,128,5,64,242,233,227,239,240,244,233,99,128,3,232,243,237,225,236,108,128,247,104,245,238,231,225,242,245,237,236,225,245,116,129,246,207,12,181,243,237,225,236,108,128,246,248,250,243,241,245,225,242,101,128,51,144,73,146,0,73,12,239,12,251,12,255,13,11,13,29,13,37,13,94,13,181,13,214,13,224,13,242,13,254,14,48,14,86,14,99,14,166,14,187,14,205,193,227,249,242,233,236,236,233,99,128,4,47,74,128,1,50,213,227,249,242,233,236,236,233,99,128,4,46,225,227,245,244,101,129,0,205,13,21,243,237,225,236,108,128,247,237,226,242,229,246,101,128,1,44,99,3,13,45,13,52,13,84,225,242,239,110,128,1,207,233,242,99,2,13,60,13,65,236,101,128,36,190,245,237,230,236,229,120,129,0,206,13,76,243,237,225,236,108,128,247,238,249,242,233,236,236,233,99,128,4,6,100,3,13,102,13,112,13,155,226,236,231,242,225,246,101,128,2,8,233,229,242,229,243,233,115,131,0,207,13,128,13,136,13,147,225,227,245,244,101,128,30,46,227,249,242,233,236,236,233,99,128,4,228,243,237,225,236,108,128,247,239,239,116,130,1,48,13,164,13,173,225,227,227,229,238,116,128,1,48,226,229,236,239,119,128,30,202,101,2,13,187,13,203,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,214,227,249,242,233,236,236,233,99,128,4,21,230,242,225,235,244,245,114,128,33,17,231,242,225,246,101,129,0,204,13,234,243,237,225,236,108,128,247,236,232,239,239,235,225,226,239,246,101,128,30,200,105,3,14,6,14,17,14,32,227,249,242,233,236,236,233,99,128,4,24,238,246,229,242,244,229,228,226,242,229,246,101,128,2,10,243,232,239,242,244,227,249,242,233,236,236,233,99,128,4,25,109,2,14,54,14,75,225,227,242,239,110,129,1,42,14,64,227,249,242,233,236,236,233,99,128,4,226,239,238,239,243,240,225,227,101,128,255,41,238,233,225,242,237,229,238,233,225,110,128,5,59,111,3,14,107,14,118,14,126,227,249,242,233,236,236,233,99,128,4,1,231,239,238,229,107,128,1,46,244,97,131,3,153,14,137,14,147,14,158,225,230,242,233,227,225,110,128,1,150,228,233,229,242,229,243,233,115,128,3,170,244,239,238,239,115,128,3,138,115,2,14,172,14,179,237,225,236,108,128,247,105,244,242,239,235,101,128,1,151,244,233,236,228,101,129,1,40,14,197,226,229,236,239,119,128,30,44,250,232,233,244,243,97,2,14,216,14,227,227,249,242,233,236,236,233,99,128,4,116,228,226,236,231,242,225,246,229,227,249,242,233,236,236,233,99,128,4,118,74,134,0,74,15,6,15,18,15,41,15,53,15,67,15,79,225,225,242,237,229,238,233,225,110,128,5,65,227,233,242,99,2,15,27,15,32,236,101,128,36,191,245,237,230,236,229,120,128,1,52,229,227,249,242,233,236,236,233,99,128,4,8,232,229,232,225,242,237,229,238,233,225,110,128,5,75,237,239,238,239,243,240,225,227,101,128,255,42,243,237,225,236,108,128,247,106,75,140,0,75,15,115,15,125,15,135,16,18,16,65,16,76,16,106,16,143,16,156,16,168,16,180,16,208,194,243,241,245,225,242,101,128,51,133,203,243,241,245,225,242,101,128,51,205,97,7,15,151,15,169,15,191,15,211,15,226,15,232,15,249,226,225,243,232,235,233,242,227,249,242,233,236,236,233,99,128,4,160,99,2,15,175,15,181,245,244,101,128,30,48,249,242,233,236,236,233,99,128,4,26,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,154,232,239,239,235,227,249,242,233,236,236,233,99,128,4,195,240,240,97,128,3,154,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,158,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,156,99,4,16,28,16,35,16,44,16,52,225,242,239,110,128,1,232,229,228,233,236,236,97,128,1,54,233,242,227,236,101,128,36,192,239,237,237,225,225,227,227,229,238,116,128,1,54,228,239,244,226,229,236,239,119,128,30,50,101,2,16,82,16,94,232,225,242,237,229,238,233,225,110,128,5,84,238,225,242,237,229,238,233,225,110,128,5,63,104,3,16,114,16,126,16,137,225,227,249,242,233,236,236,233,99,128,4,37,229,233,227,239,240,244,233,99,128,3,230,239,239,107,128,1,152,234,229,227,249,242,233,236,236,233,99,128,4,12,236,233,238,229,226,229,236,239,119,128,30,52,237,239,238,239,243,240,225,227,101,128,255,43,239,240,240,97,2,16,189,16,200,227,249,242,233,236,236,233,99,128,4,128,231,242,229,229,107,128,3,222,115,2,16,214,16,226,233,227,249,242,233,236,236,233,99,128,4,110,237,225,236,108,128,247,107,76,138,0,76,17,1,17,5,17,9,17,29,17,95,17,133,17,147,17,165,17,177,17,189,74,128,1,199,76,128,246,191,97,2,17,15,17,22,227,245,244,101,128,1,57,237,226,228,97,128,3,155,99,4,17,39,17,46,17,55,17,82,225,242,239,110,128,1,61,229,228,233,236,236,97,128,1,59,233,242,99,2,17,63,17,68,236,101,128,36,193,245,237,230,236,229,248,226,229,236,239,119,128,30,60,239,237,237,225,225,227,227,229,238,116,128,1,59,228,239,116,130,1,63,17,105,17,114,225,227,227,229,238,116,128,1,63,226,229,236,239,119,129,30,54,17,124,237,225,227,242,239,110,128,30,56,233,247,238,225,242,237,229,238,233,225,110,128,5,60,106,129,1,200,17,153,229,227,249,242,233,236,236,233,99,128,4,9,236,233,238,229,226,229,236,239,119,128,30,58,237,239,238,239,243,240,225,227,101,128,255,44,115,2,17,195,17,212,236,225,243,104,129,1,65,17,204,243,237,225,236,108,128,246,249,237,225,236,108,128,247,108,77,137,0,77,17,241,17,251,18,24,18,33,18,58,18,71,18,83,18,91,18,100,194,243,241,245,225,242,101,128,51,134,225,99,2,18,2,18,18,242,239,110,129,246,208,18,10,243,237,225,236,108,128,247,175,245,244,101,128,30,62,227,233,242,227,236,101,128,36,194,228,239,116,2,18,41,18,50,225,227,227,229,238,116,128,30,64,226,229,236,239,119,128,30,66,229,238,225,242,237,229,238,233,225,110,128,5,68,237,239,238,239,243,240,225,227,101,128,255,45,243,237,225,236,108,128,247,109,244,245,242,238,229,100,128,1,156,117,128,3,156,78,141,0,78,18,134,18,138,18,146,18,212,18,237,18,248,19,3,19,21,19,33,19,45,19,58,19,66,19,84,74,128,1,202,225,227,245,244,101,128,1,67,99,4,18,156,18,163,18,172,18,199,225,242,239,110,128,1,71,229,228,233,236,236,97,128,1,69,233,242,99,2,18,180,18,185,236,101,128,36,195,245,237,230,236,229,248,226,229,236,239,119,128,30,74,239,237,237,225,225,227,227,229,238,116,128,1,69,228,239,116,2,18,220,18,229,225,227,227,229,238,116,128,30,68,226,229,236,239,119,128,30,70,232,239,239,235,236,229,230,116,128,1,157,233,238,229,242,239,237,225,110,128,33,104,106,129,1,203,19,9,229,227,249,242,233,236,236,233,99,128,4,10,236,233,238,229,226,229,236,239,119,128,30,72,237,239,238,239,243,240,225,227,101,128,255,46,239,247,225,242,237,229,238,233,225,110,128,5,70,243,237,225,236,108,128,247,110,244,233,236,228,101,129,0,209,19,76,243,237,225,236,108,128,247,241,117,128,3,157,79,141,0,79,19,118,19,132,19,150,19,203,20,78,20,152,20,187,21,48,21,69,21,213,21,223,21,254,22,53,69,129,1,82,19,124,243,237,225,236,108,128,246,250,225,227,245,244,101,129,0,211,19,142,243,237,225,236,108,128,247,243,98,2,19,156,19,196,225,242,242,229,100,2,19,166,19,177,227,249,242,233,236,236,233,99,128,4,232,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,234,242,229,246,101,128,1,78,99,4,19,213,19,220,19,235,20,68,225,242,239,110,128,1,209,229,238,244,229,242,229,228,244,233,236,228,101,128,1,159,233,242,99,2,19,243,19,248,236,101,128,36,196,245,237,230,236,229,120,134,0,212,20,13,20,21,20,32,20,40,20,52,20,60,225,227,245,244,101,128,30,208,228,239,244,226,229,236,239,119,128,30,216,231,242,225,246,101,128,30,210,232,239,239,235,225,226,239,246,101,128,30,212,243,237,225,236,108,128,247,244,244,233,236,228,101,128,30,214,249,242,233,236,236,233,99,128,4,30,100,3,20,86,20,109,20,142,226,108,2,20,93,20,101,225,227,245,244,101,128,1,80,231,242,225,246,101,128,2,12,233,229,242,229,243,233,115,130,0,214,20,123,20,134,227,249,242,233,236,236,233,99,128,4,230,243,237,225,236,108,128,247,246,239,244,226,229,236,239,119,128,30,204,103,2,20,158,20,170,239,238,229,235,243,237,225,236,108,128,246,251,242,225,246,101,129,0,210,20,179,243,237,225,236,108,128,247,242,104,4,20,197,20,208,20,212,21,34,225,242,237,229,238,233,225,110,128,5,85,109,128,33,38,111,2,20,218,20,228,239,235,225,226,239,246,101,128,30,206,242,110,133,1,160,20,243,20,251,21,6,21,14,21,26,225,227,245,244,101,128,30,218,228,239,244,226,229,236,239,119,128,30,226,231,242,225,246,101,128,30,220,232,239,239,235,225,226,239,246,101,128,30,222,244,233,236,228,101,128,30,224,245,238,231,225,242,245,237,236,225,245,116,128,1,80,105,129,1,162,21,54,238,246,229,242,244,229,228,226,242,229,246,101,128,2,14,109,4,21,79,21,107,21,184,21,202,225,227,242,239,110,130,1,76,21,91,21,99,225,227,245,244,101,128,30,82,231,242,225,246,101,128,30,80,229,231,97,132,33,38,21,121,21,132,21,140,21,156,227,249,242,233,236,236,233,99,128,4,96,231,242,229,229,107,128,3,169,242,239,245,238,228,227,249,242,233,236,236,233,99,128,4,122,116,2,21,162,21,177,233,244,236,239,227,249,242,233,236,236,233,99,128,4,124,239,238,239,115,128,3,143,233,227,242,239,110,129,3,159,21,194,244,239,238,239,115,128,3,140,239,238,239,243,240,225,227,101,128,255,47,238,229,242,239,237,225,110,128,33,96,111,2,21,229,21,248,231,239,238,229,107,129,1,234,21,239,237,225,227,242,239,110,128,1,236,240,229,110,128,1,134,115,3,22,6,22,33,22,40,236,225,243,104,130,0,216,22,17,22,25,225,227,245,244,101,128,1,254,243,237,225,236,108,128,247,248,237,225,236,108,128,247,111,244,242,239,235,229,225,227,245,244,101,128,1,254,116,2,22,59,22,70,227,249,242,233,236,236,233,99,128,4,126,233,236,228,101,131,0,213,22,83,22,91,22,102,225,227,245,244,101,128,30,76,228,233,229,242,229,243,233,115,128,30,78,243,237,225,236,108,128,247,245,80,136,0,80,22,130,22,138,22,147,22,159,22,211,22,227,22,246,23,2,225,227,245,244,101,128,30,84,227,233,242,227,236,101,128,36,197,228,239,244,225,227,227,229,238,116,128,30,86,101,3,22,167,22,178,22,190,227,249,242,233,236,236,233,99,128,4,31,232,225,242,237,229,238,233,225,110,128,5,74,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,166,104,2,22,217,22,221,105,128,3,166,239,239,107,128,1,164,105,129,3,160,22,233,247,242,225,242,237,229,238,233,225,110,128,5,83,237,239,238,239,243,240,225,227,101,128,255,48,115,2,23,8,23,25,105,129,3,168,23,14,227,249,242,233,236,236,233,99,128,4,112,237,225,236,108,128,247,112,81,131,0,81,23,42,23,51,23,63,227,233,242,227,236,101,128,36,198,237,239,238,239,243,240,225,227,101,128,255,49,243,237,225,236,108,128,247,113,82,138,0,82,23,95,23,119,23,166,23,217,23,230,23,240,23,245,24,19,24,31,24,43,97,2,23,101,23,112,225,242,237,229,238,233,225,110,128,5,76,227,245,244,101,128,1,84,99,4,23,129,23,136,23,145,23,153,225,242,239,110,128,1,88,229,228,233,236,236,97,128,1,86,233,242,227,236,101,128,36,199,239,237,237,225,225,227,227,229,238,116,128,1,86,100,2,23,172,23,182,226,236,231,242,225,246,101,128,2,16,239,116,2,23,189,23,198,225,227,227,229,238,116,128,30,88,226,229,236,239,119,129,30,90,23,208,237,225,227,242,239,110,128,30,92,229,232,225,242,237,229,238,233,225,110,128,5,80,230,242,225,235,244,245,114,128,33,28,232,111,128,3,161,233,110,2,23,252,24,5,231,243,237,225,236,108,128,246,252,246,229,242,244,229,228,226,242,229,246,101,128,2,18,236,233,238,229,226,229,236,239,119,128,30,94,237,239,238,239,243,240,225,227,101,128,255,50,243,237,225,236,108,129,247,114,24,53,233,238,246,229,242,244,229,100,129,2,129,24,66,243,245,240,229,242,233,239,114,128,2,182,83,139,0,83,24,103,26,17,26,55,26,182,26,221,26,250,27,84,27,105,27,117,27,135,27,143,70,6,24,117,24,209,24,241,25,77,25,119,25,221,48,9,24,137,24,145,24,153,24,161,24,169,24,177,24,185,24,193,24,201,177,176,176,176,48,128,37,12,178,176,176,176,48,128,37,20,179,176,176,176,48,128,37,16,180,176,176,176,48,128,37,24,181,176,176,176,48,128,37,60,182,176,176,176,48,128,37,44,183,176,176,176,48,128,37,52,184,176,176,176,48,128,37,28,185,176,176,176,48,128,37,36,49,3,24,217,24,225,24,233,176,176,176,176,48,128,37,0,177,176,176,176,48,128,37,2,185,176,176,176,48,128,37,97,50,9,25,5,25,13,25,21,25,29,25,37,25,45,25,53,25,61,25,69,176,176,176,176,48,128,37,98,177,176,176,176,48,128,37,86,178,176,176,176,48,128,37,85,179,176,176,176,48,128,37,99,180,176,176,176,48,128,37,81,181,176,176,176,48,128,37,87,182,176,176,176,48,128,37,93,183,176,176,176,48,128,37,92,184,176,176,176,48,128,37,91,51,4,25,87,25,95,25,103,25,111,182,176,176,176,48,128,37,94,183,176,176,176,48,128,37,95,184,176,176,176,48,128,37,90,185,176,176,176,48,128,37,84,52,10,25,141,25,149,25,157,25,165,25,173,25,181,25,189,25,197,25,205,25,213,176,176,176,176,48,128,37,105,177,176,176,176,48,128,37,102,178,176,176,176,48,128,37,96,179,176,176,176,48,128,37,80,180,176,176,176,48,128,37,108,181,176,176,176,48,128,37,103,182,176,176,176,48,128,37,104,183,176,176,176,48,128,37,100,184,176,176,176,48,128,37,101,185,176,176,176,48,128,37,89,53,5,25,233,25,241,25,249,26,1,26,9,176,176,176,176,48,128,37,88,177,176,176,176,48,128,37,82,178,176,176,176,48,128,37,83,179,176,176,176,48,128,37,107,180,176,176,176,48,128,37,106,97,2,26,23,26,44,227,245,244,101,129,1,90,26,32,228,239,244,225,227,227,229,238,116,128,30,100,237,240,233,231,242,229,229,107,128,3,224,99,5,26,67,26,98,26,107,26,147,26,169,225,242,239,110,130,1,96,26,78,26,90,228,239,244,225,227,227,229,238,116,128,30,102,243,237,225,236,108,128,246,253,229,228,233,236,236,97,128,1,94,232,247,97,130,1,143,26,117,26,128,227,249,242,233,236,236,233,99,128,4,216,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,218,233,242,99,2,26,155,26,160,236,101,128,36,200,245,237,230,236,229,120,128,1,92,239,237,237,225,225,227,227,229,238,116,128,2,24,228,239,116,2,26,190,26,199,225,227,227,229,238,116,128,30,96,226,229,236,239,119,129,30,98,26,209,228,239,244,225,227,227,229,238,116,128,30,104,101,2,26,227,26,239,232,225,242,237,229,238,233,225,110,128,5,77,246,229,238,242,239,237,225,110,128,33,102,104,5,27,6,27,34,27,48,27,59,27,72,97,2,27,12,27,23,225,242,237,229,238,233,225,110,128,5,71,227,249,242,233,236,236,233,99,128,4,40,227,232,225,227,249,242,233,236,236,233,99,128,4,41,229,233,227,239,240,244,233,99,128,3,226,232,225,227,249,242,233,236,236,233,99,128,4,186,233,237,225,227,239,240,244,233,99,128,3,236,105,2,27,90,27,96,231,237,97,128,3,163,248,242,239,237,225,110,128,33,101,237,239,238,239,243,240,225,227,101,128,255,51,239,230,244,243,233,231,238,227,249,242,233,236,236,233,99,128,4,44,243,237,225,236,108,128,247,115,244,233,231,237,225,231,242,229,229,107,128,3,218,84,141,0,84,27,186,27,191,27,197,28,7,28,32,28,96,28,147,28,177,28,189,28,201,28,246,29,6,29,46,225,117,128,3,164,226,225,114,128,1,102,99,4,27,207,27,214,27,223,27,250,225,242,239,110,128,1,100,229,228,233,236,236,97,128,1,98,233,242,99,2,27,231,27,236,236,101,128,36,201,245,237,230,236,229,248,226,229,236,239,119,128,30,112,239,237,237,225,225,227,227,229,238,116,128,1,98,228,239,116,2,28,15,28,24,225,227,227,229,238,116,128,30,106,226,229,236,239,119,128,30,108,101,4,28,42,28,53,28,73,28,82,227,249,242,233,236,236,233,99,128,4,34,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,172,238,242,239,237,225,110,128,33,105,244,243,229,227,249,242,233,236,236,233,99,128,4,180,104,3,28,104,28,110,28,136,229,244,97,128,3,152,111,2,28,116,28,121,239,107,128,1,172,242,110,129,0,222,28,128,243,237,225,236,108,128,247,254,242,229,229,242,239,237,225,110,128,33,98,105,2,28,153,28,164,236,228,229,243,237,225,236,108,128,246,254,247,238,225,242,237,229,238,233,225,110,128,5,79,236,233,238,229,226,229,236,239,119,128,30,110,237,239,238,239,243,240,225,227,101,128,255,52,111,2,28,207,28,218,225,242,237,229,238,233,225,110,128,5,57,238,101,3,28,227,28,234,28,240,230,233,246,101,128,1,188,243,233,120,128,1,132,244,247,111,128,1,167,242,229,244,242,239,230,236,229,248,232,239,239,107,128,1,174,115,3,29,14,29,26,29,39,229,227,249,242,233,236,236,233,99,128,4,38,232,229,227,249,242,233,236,236,233,99,128,4,11,237,225,236,108,128,247,116,119,2,29,52,29,64,229,236,246,229,242,239,237,225,110,128,33,107,239,242,239,237,225,110,128,33,97,85,142,0,85,29,105,29,123,29,131,29,198,30,69,30,87,30,198,30,214,30,226,31,21,31,30,31,142,31,149,31,219,225,227,245,244,101,129,0,218,29,115,243,237,225,236,108,128,247,250,226,242,229,246,101,128,1,108,99,3,29,139,29,146,29,188,225,242,239,110,128,1,211,233,242,99,2,29,154,29,159,236,101,128,36,202,245,237,230,236,229,120,130,0,219,29,172,29,180,226,229,236,239,119,128,30,118,243,237,225,236,108,128,247,251,249,242,233,236,236,233,99,128,4,35,100,3,29,206,29,229,30,59,226,108,2,29,213,29,221,225,227,245,244,101,128,1,112,231,242,225,246,101,128,2,20,233,229,242,229,243,233,115,134,0,220,29,251,30,3,30,11,30,34,30,42,30,51,225,227,245,244,101,128,1,215,226,229,236,239,119,128,30,114,99,2,30,17,30,24,225,242,239,110,128,1,217,249,242,233,236,236,233,99,128,4,240,231,242,225,246,101,128,1,219,237,225,227,242,239,110,128,1,213,243,237,225,236,108,128,247,252,239,244,226,229,236,239,119,128,30,228,231,242,225,246,101,129,0,217,30,79,243,237,225,236,108,128,247,249,104,2,30,93,30,171,111,2,30,99,30,109,239,235,225,226,239,246,101,128,30,230,242,110,133,1,175,30,124,30,132,30,143,30,151,30,163,225,227,245,244,101,128,30,232,228,239,244,226,229,236,239,119,128,30,240,231,242,225,246,101,128,30,234,232,239,239,235,225,226,239,246,101,128,30,236,244,233,236,228,101,128,30,238,245,238,231,225,242,245,237,236,225,245,116,129,1,112,30,187,227,249,242,233,236,236,233,99,128,4,242,233,238,246,229,242,244,229,228,226,242,229,246,101,128,2,22,235,227,249,242,233,236,236,233,99,128,4,120,109,2,30,232,31,10,225,227,242,239,110,130,1,106,30,244,30,255,227,249,242,233,236,236,233,99,128,4,238,228,233,229,242,229,243,233,115,128,30,122,239,238,239,243,240,225,227,101,128,255,53,239,231,239,238,229,107,128,1,114,240,243,233,236,239,110,133,3,165,31,49,31,53,31,90,31,121,31,134,49,128,3,210,97,2,31,59,31,81,227,245,244,229,232,239,239,235,243,249,237,226,239,236,231,242,229,229,107,128,3,211,230,242,233,227,225,110,128,1,177,228,233,229,242,229,243,233,115,129,3,171,31,103,232,239,239,235,243,249,237,226,239,236,231,242,229,229,107,128,3,212],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10240);allocate([232,239,239,235,243,249,237,226,239,108,128,3,210,244,239,238,239,115,128,3,142,242,233,238,103,128,1,110,115,3,31,157,31,172,31,179,232,239,242,244,227,249,242,233,236,236,233,99,128,4,14,237,225,236,108,128,247,117,244,242,225,233,231,232,116,2,31,191,31,202,227,249,242,233,236,236,233,99,128,4,174,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,176,244,233,236,228,101,130,1,104,31,231,31,239,225,227,245,244,101,128,30,120,226,229,236,239,119,128,30,116,86,136,0,86,32,11,32,20,32,31,32,60,32,67,32,79,32,91,32,99,227,233,242,227,236,101,128,36,203,228,239,244,226,229,236,239,119,128,30,126,101,2,32,37,32,48,227,249,242,233,236,236,233,99,128,4,18,247,225,242,237,229,238,233,225,110,128,5,78,232,239,239,107,128,1,178,237,239,238,239,243,240,225,227,101,128,255,54,239,225,242,237,229,238,233,225,110,128,5,72,243,237,225,236,108,128,247,118,244,233,236,228,101,128,30,124,87,134,0,87,32,123,32,131,32,154,32,194,32,202,32,214,225,227,245,244,101,128,30,130,227,233,242,99,2,32,140,32,145,236,101,128,36,204,245,237,230,236,229,120,128,1,116,100,2,32,160,32,170,233,229,242,229,243,233,115,128,30,132,239,116,2,32,177,32,186,225,227,227,229,238,116,128,30,134,226,229,236,239,119,128,30,136,231,242,225,246,101,128,30,128,237,239,238,239,243,240,225,227,101,128,255,55,243,237,225,236,108,128,247,119,88,134,0,88,32,238,32,247,33,18,33,31,33,35,33,47,227,233,242,227,236,101,128,36,205,100,2,32,253,33,7,233,229,242,229,243,233,115,128,30,140,239,244,225,227,227,229,238,116,128,30,138,229,232,225,242,237,229,238,233,225,110,128,5,61,105,128,3,158,237,239,238,239,243,240,225,227,101,128,255,56,243,237,225,236,108,128,247,120,89,139,0,89,33,81,33,116,33,139,33,189,33,228,33,236,33,253,34,40,34,52,34,60,34,68,97,2,33,87,33,104,227,245,244,101,129,0,221,33,96,243,237,225,236,108,128,247,253,244,227,249,242,233,236,236,233,99,128,4,98,227,233,242,99,2,33,125,33,130,236,101,128,36,206,245,237,230,236,229,120,128,1,118,100,2,33,145,33,165,233,229,242,229,243,233,115,129,1,120,33,157,243,237,225,236,108,128,247,255,239,116,2,33,172,33,181,225,227,227,229,238,116,128,30,142,226,229,236,239,119,128,30,244,229,114,2,33,196,33,208,233,227,249,242,233,236,236,233,99,128,4,43,245,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,248,231,242,225,246,101,128,30,242,232,239,239,107,129,1,179,33,245,225,226,239,246,101,128,30,246,105,3,34,5,34,16,34,27,225,242,237,229,238,233,225,110,128,5,69,227,249,242,233,236,236,233,99,128,4,7,247,238,225,242,237,229,238,233,225,110,128,5,82,237,239,238,239,243,240,225,227,101,128,255,57,243,237,225,236,108,128,247,121,244,233,236,228,101,128,30,248,245,115,2,34,75,34,113,226,233,103,2,34,83,34,94,227,249,242,233,236,236,233,99,128,4,106,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,108,236,233,244,244,236,101,2,34,124,34,135,227,249,242,233,236,236,233,99,128,4,102,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,104,90,136,0,90,34,174,34,198,34,243,35,14,35,81,35,173,35,185,35,197,97,2,34,180,34,191,225,242,237,229,238,233,225,110,128,5,54,227,245,244,101,128,1,121,99,2,34,204,34,221,225,242,239,110,129,1,125,34,213,243,237,225,236,108,128,246,255,233,242,99,2,34,229,34,234,236,101,128,36,207,245,237,230,236,229,120,128,30,144,228,239,116,130,1,123,34,253,35,6,225,227,227,229,238,116,128,1,123,226,229,236,239,119,128,30,146,101,3,35,22,35,33,35,76,227,249,242,233,236,236,233,99,128,4,23,100,2,35,39,35,58,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,152,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,222,244,97,128,3,150,232,101,4,35,92,35,103,35,119,35,130,225,242,237,229,238,233,225,110,128,5,58,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,193,227,249,242,233,236,236,233,99,128,4,22,100,2,35,136,35,155,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,150,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,220,236,233,238,229,226,229,236,239,119,128,30,148,237,239,238,239,243,240,225,227,101,128,255,58,115,2,35,203,35,210,237,225,236,108,128,247,122,244,242,239,235,101,128,1,181,97,149,0,97,36,8,36,144,37,35,37,211,38,55,38,91,45,10,45,47,45,74,46,43,46,81,47,170,47,242,48,197,48,206,49,79,51,87,52,77,52,124,53,19,53,33,97,7,36,24,36,34,36,41,36,48,36,73,36,89,36,100,226,229,238,231,225,236,105,128,9,134,227,245,244,101,128,0,225,228,229,246,97,128,9,6,231,117,2,36,55,36,64,234,225,242,225,244,105,128,10,134,242,237,245,235,232,105,128,10,6,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,62,242,245,243,241,245,225,242,101,128,51,3,246,239,247,229,236,243,233,231,110,3,36,116,36,126,36,133,226,229,238,231,225,236,105,128,9,190,228,229,246,97,128,9,62,231,245,234,225,242,225,244,105,128,10,190,98,4,36,154,36,195,36,204,36,214,226,242,229,246,233,225,244,233,239,110,2,36,169,36,184,237,225,242,235,225,242,237,229,238,233,225,110,128,5,95,243,233,231,238,228,229,246,97,128,9,112,229,238,231,225,236,105,128,9,133,239,240,239,237,239,230,111,128,49,26,242,229,246,101,134,1,3,36,233,36,241,36,252,37,7,37,15,37,27,225,227,245,244,101,128,30,175,227,249,242,233,236,236,233,99,128,4,209,228,239,244,226,229,236,239,119,128,30,183,231,242,225,246,101,128,30,177,232,239,239,235,225,226,239,246,101,128,30,179,244,233,236,228,101,128,30,181,99,4,37,45,37,52,37,131,37,201,225,242,239,110,128,1,206,233,242,99,2,37,60,37,65,236,101,128,36,208,245,237,230,236,229,120,133,0,226,37,84,37,92,37,103,37,111,37,123,225,227,245,244,101,128,30,165,228,239,244,226,229,236,239,119,128,30,173,231,242,225,246,101,128,30,167,232,239,239,235,225,226,239,246,101,128,30,169,244,233,236,228,101,128,30,171,245,244,101,133,0,180,37,147,37,158,37,175,37,182,37,191,226,229,236,239,247,227,237,98,128,3,23,99,2,37,164,37,169,237,98,128,3,1,239,237,98,128,3,1,228,229,246,97,128,9,84,236,239,247,237,239,100,128,2,207,244,239,238,229,227,237,98,128,3,65,249,242,233,236,236,233,99,128,4,48,100,5,37,223,37,233,37,247,37,253,38,31,226,236,231,242,225,246,101,128,2,1,228,225,235,231,245,242,237,245,235,232,105,128,10,113,229,246,97,128,9,5,233,229,242,229,243,233,115,130,0,228,38,11,38,22,227,249,242,233,236,236,233,99,128,4,211,237,225,227,242,239,110,128,1,223,239,116,2,38,38,38,46,226,229,236,239,119,128,30,161,237,225,227,242,239,110,128,1,225,101,131,0,230,38,65,38,73,38,82,225,227,245,244,101,128,1,253,235,239,242,229,225,110,128,49,80,237,225,227,242,239,110,128,1,227,230,233,105,6,38,107,38,127,41,64,41,70,41,85,44,185,48,2,38,113,38,120,176,178,176,56,128,32,21,184,185,180,49,128,32,164,177,48,3,38,136,40,160,41,39,48,9,38,156,38,176,38,238,39,44,39,106,39,168,39,230,40,36,40,98,49,3,38,164,38,168,38,172,55,128,4,16,56,128,4,17,57,128,4,18,50,10,38,198,38,202,38,206,38,210,38,214,38,218,38,222,38,226,38,230,38,234,48,128,4,19,49,128,4,20,50,128,4,21,51,128,4,1,52,128,4,22,53,128,4,23,54,128,4,24,55,128,4,25,56,128,4,26,57,128,4,27,51,10,39,4,39,8,39,12,39,16,39,20,39,24,39,28,39,32,39,36,39,40,48,128,4,28,49,128,4,29,50,128,4,30,51,128,4,31,52,128,4,32,53,128,4,33,54,128,4,34,55,128,4,35,56,128,4,36,57,128,4,37,52,10,39,66,39,70,39,74,39,78,39,82,39,86,39,90,39,94,39,98,39,102,48,128,4,38,49,128,4,39,50,128,4,40,51,128,4,41,52,128,4,42,53,128,4,43,54,128,4,44,55,128,4,45,56,128,4,46,57,128,4,47,53,10,39,128,39,132,39,136,39,140,39,144,39,148,39,152,39,156,39,160,39,164,48,128,4,144,49,128,4,2,50,128,4,3,51,128,4,4,52,128,4,5,53,128,4,6,54,128,4,7,55,128,4,8,56,128,4,9,57,128,4,10,54,10,39,190,39,194,39,198,39,202,39,206,39,210,39,214,39,218,39,222,39,226,48,128,4,11,49,128,4,12,50,128,4,14,51,128,246,196,52,128,246,197,53,128,4,48,54,128,4,49,55,128,4,50,56,128,4,51,57,128,4,52,55,10,39,252,40,0,40,4,40,8,40,12,40,16,40,20,40,24,40,28,40,32,48,128,4,53,49,128,4,81,50,128,4,54,51,128,4,55,52,128,4,56,53,128,4,57,54,128,4,58,55,128,4,59,56,128,4,60,57,128,4,61,56,10,40,58,40,62,40,66,40,70,40,74,40,78,40,82,40,86,40,90,40,94,48,128,4,62,49,128,4,63,50,128,4,64,51,128,4,65,52,128,4,66,53,128,4,67,54,128,4,68,55,128,4,69,56,128,4,70,57,128,4,71,57,10,40,120,40,124,40,128,40,132,40,136,40,140,40,144,40,148,40,152,40,156,48,128,4,72,49,128,4,73,50,128,4,74,51,128,4,75,52,128,4,76,53,128,4,77,54,128,4,78,55,128,4,79,56,128,4,145,57,128,4,82,49,4,40,170,40,232,40,237,41,7,48,10,40,192,40,196,40,200,40,204,40,208,40,212,40,216,40,220,40,224,40,228,48,128,4,83,49,128,4,84,50,128,4,85,51,128,4,86,52,128,4,87,53,128,4,88,54,128,4,89,55,128,4,90,56,128,4,91,57,128,4,92,177,48,128,4,94,52,4,40,247,40,251,40,255,41,3,53,128,4,15,54,128,4,98,55,128,4,114,56,128,4,116,57,5,41,19,41,23,41,27,41,31,41,35,50,128,246,198,51,128,4,95,52,128,4,99,53,128,4,115,54,128,4,117,56,2,41,45,41,59,51,2,41,51,41,55,49,128,246,199,50,128,246,200,180,54,128,4,217,178,185,57,128,32,14,179,48,2,41,77,41,81,48,128,32,15,49,128,32,13,181,55,7,41,102,41,172,42,237,43,58,44,15,44,108,44,179,51,2,41,108,41,122,56,2,41,114,41,118,49,128,6,106,56,128,6,12,57,8,41,140,41,144,41,148,41,152,41,156,41,160,41,164,41,168,50,128,6,96,51,128,6,97,52,128,6,98,53,128,6,99,54,128,6,100,55,128,6,101,56,128,6,102,57,128,6,103,52,7,41,188,41,220,42,26,42,88,42,120,42,176,42,232,48,5,41,200,41,204,41,208,41,212,41,216,48,128,6,104,49,128,6,105,51,128,6,27,55,128,6,31,57,128,6,33,49,10,41,242,41,246,41,250,41,254,42,2,42,6,42,10,42,14,42,18,42,22,48,128,6,34,49,128,6,35,50,128,6,36,51,128,6,37,52,128,6,38,53,128,6,39,54,128,6,40,55,128,6,41,56,128,6,42,57,128,6,43,50,10,42,48,42,52,42,56,42,60,42,64,42,68,42,72,42,76,42,80,42,84,48,128,6,44,49,128,6,45,50,128,6,46,51,128,6,47,52,128,6,48,53,128,6,49,54,128,6,50,55,128,6,51,56,128,6,52,57,128,6,53,51,5,42,100,42,104,42,108,42,112,42,116,48,128,6,54,49,128,6,55,50,128,6,56,51,128,6,57,52,128,6,58,52,9,42,140,42,144,42,148,42,152,42,156,42,160,42,164,42,168,42,172,48,128,6,64,49,128,6,65,50,128,6,66,51,128,6,67,52,128,6,68,53,128,6,69,54,128,6,70,56,128,6,72,57,128,6,73,53,9,42,196,42,200,42,204,42,208,42,212,42,216,42,220,42,224,42,228,48,128,6,74,49,128,6,75,50,128,6,76,51,128,6,77,52,128,6,78,53,128,6,79,54,128,6,80,55,128,6,81,56,128,6,82,183,48,128,6,71,53,3,42,245,43,21,43,53,48,5,43,1,43,5,43,9,43,13,43,17,53,128,6,164,54,128,6,126,55,128,6,134,56,128,6,152,57,128,6,175,49,5,43,33,43,37,43,41,43,45,43,49,49,128,6,121,50,128,6,136,51,128,6,145,52,128,6,186,57,128,6,210,179,52,128,6,213,54,7,43,74,43,79,43,84,43,89,43,127,43,189,43,251,179,54,128,32,170,180,53,128,5,190,181,56,128,5,195,54,6,43,103,43,107,43,111,43,115,43,119,43,123,52,128,5,208,53,128,5,209,54,128,5,210,55,128,5,211,56,128,5,212,57,128,5,213,55,10,43,149,43,153,43,157,43,161,43,165,43,169,43,173,43,177,43,181,43,185,48,128,5,214,49,128,5,215,50,128,5,216,51,128,5,217,52,128,5,218,53,128,5,219,54,128,5,220,55,128,5,221,56,128,5,222,57,128,5,223,56,10,43,211,43,215,43,219,43,223,43,227,43,231,43,235,43,239,43,243,43,247,48,128,5,224,49,128,5,225,50,128,5,226,51,128,5,227,52,128,5,228,53,128,5,229,54,128,5,230,55,128,5,231,56,128,5,232,57,128,5,233,57,3,44,3,44,7,44,11,48,128,5,234,52,128,251,42,53,128,251,43,55,4,44,25,44,39,44,59,44,64,48,2,44,31,44,35,48,128,251,75,53,128,251,31,49,3,44,47,44,51,44,55,54,128,5,240,55,128,5,241,56,128,5,242,178,51,128,251,53,57,7,44,80,44,84,44,88,44,92,44,96,44,100,44,104,51,128,5,180,52,128,5,181,53,128,5,182,54,128,5,187,55,128,5,184,56,128,5,183,57,128,5,176,56,3,44,116,44,160,44,165,48,7,44,132,44,136,44,140,44,144,44,148,44,152,44,156,48,128,5,178,49,128,5,177,50,128,5,179,51,128,5,194,52,128,5,193,54,128,5,185,55,128,5,188,179,57,128,5,189,52,2,44,171,44,175,49,128,5,191,50,128,5,192,185,178,57,128,2,188,54,3,44,193,44,252,45,3,49,4,44,203,44,219,44,225,44,246,50,2,44,209,44,214,180,56,128,33,5,184,57,128,33,19,179,181,50,128,33,22,181,55,3,44,234,44,238,44,242,51,128,32,44,52,128,32,45,53,128,32,46,182,182,52,128,32,12,179,177,182,55,128,6,109,180,185,179,55,128,2,189,103,2,45,16,45,23,242,225,246,101,128,0,224,117,2,45,29,45,38,234,225,242,225,244,105,128,10,133,242,237,245,235,232,105,128,10,5,104,2,45,53,45,63,233,242,225,231,225,238,97,128,48,66,239,239,235,225,226,239,246,101,128,30,163,105,7,45,90,45,115,45,122,45,134,45,159,45,175,45,255,98,2,45,96,45,105,229,238,231,225,236,105,128,9,144,239,240,239,237,239,230,111,128,49,30,228,229,246,97,128,9,16,229,227,249,242,233,236,236,233,99,128,4,213,231,117,2,45,141,45,150,234,225,242,225,244,105,128,10,144,242,237,245,235,232,105,128,10,16,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,72,110,5,45,187,45,196,45,210,45,226,45,241,225,242,225,226,233,99,128,6,57,230,233,238,225,236,225,242,225,226,233,99,128,254,202,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,203,237,229,228,233,225,236,225,242,225,226,233,99,128,254,204,246,229,242,244,229,228,226,242,229,246,101,128,2,3,246,239,247,229,236,243,233,231,110,3,46,15,46,25,46,32,226,229,238,231,225,236,105,128,9,200,228,229,246,97,128,9,72,231,245,234,225,242,225,244,105,128,10,200,107,2,46,49,46,73,225,244,225,235,225,238,97,129,48,162,46,61,232,225,236,230,247,233,228,244,104,128,255,113,239,242,229,225,110,128,49,79,108,3,46,89,47,145,47,154,101,2,46,95,47,140,102,136,5,208,46,115,46,124,46,139,46,153,46,242,47,0,47,111,47,125,225,242,225,226,233,99,128,6,39,228,225,231,229,243,232,232,229,226,242,229,119,128,251,48,230,233,238,225,236,225,242,225,226,233,99,128,254,142,104,2,46,159,46,234,225,237,250,97,2,46,168,46,201,225,226,239,246,101,2,46,178,46,187,225,242,225,226,233,99,128,6,35,230,233,238,225,236,225,242,225,226,233,99,128,254,132,226,229,236,239,119,2,46,211,46,220,225,242,225,226,233,99,128,6,37,230,233,238,225,236,225,242,225,226,233,99,128,254,136,229,226,242,229,119,128,5,208,236,225,237,229,228,232,229,226,242,229,119,128,251,79,237,97,2,47,7,47,43,228,228,225,225,226,239,246,101,2,47,20,47,29,225,242,225,226,233,99,128,6,34,230,233,238,225,236,225,242,225,226,233,99,128,254,130,235,243,245,242,97,4,47,57,47,66,47,80,47,96,225,242,225,226,233,99,128,6,73,230,233,238,225,236,225,242,225,226,233,99,128,254,240,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,243,237,229,228,233,225,236,225,242,225,226,233,99,128,254,244,240,225,244,225,232,232,229,226,242,229,119,128,251,46,241,225,237,225,244,243,232,229,226,242,229,119,128,251,47,240,104,128,33,53,236,229,241,245,225,108,128,34,76,240,232,97,129,3,177,47,162,244,239,238,239,115,128,3,172,109,4,47,180,47,188,47,199,47,233,225,227,242,239,110,128,1,1,239,238,239,243,240,225,227,101,128,255,65,240,229,242,243,225,238,100,130,0,38,47,213,47,225,237,239,238,239,243,240,225,227,101,128,255,6,243,237,225,236,108,128,247,38,243,241,245,225,242,101,128,51,194,110,4,47,252,48,7,48,129,48,139,226,239,240,239,237,239,230,111,128,49,34,103,4,48,17,48,28,48,42,48,121,226,239,240,239,237,239,230,111,128,49,36,235,232,225,238,235,232,245,244,232,225,105,128,14,90,236,101,131,34,32,48,53,48,106,48,113,226,242,225,227,235,229,116,2,48,65,48,85,236,229,230,116,129,48,8,48,74,246,229,242,244,233,227,225,108,128,254,63,242,233,231,232,116,129,48,9,48,95,246,229,242,244,233,227,225,108,128,254,64,236,229,230,116,128,35,41,242,233,231,232,116,128,35,42,243,244,242,239,109,128,33,43,239,244,229,236,229,233,97,128,3,135,117,2,48,145,48,157,228,225,244,244,225,228,229,246,97,128,9,82,243,246,225,242,97,3,48,169,48,179,48,186,226,229,238,231,225,236,105,128,9,130,228,229,246,97,128,9,2,231,245,234,225,242,225,244,105,128,10,130,239,231,239,238,229,107,128,1,5,112,3,48,214,48,238,49,12,97,2,48,220,48,232,225,244,239,243,241,245,225,242,101,128,51,0,242,229,110,128,36,156,239,243,244,242,239,240,232,101,2,48,251,49,6,225,242,237,229,238,233,225,110,128,5,90,237,239,100,128,2,188,112,2,49,18,49,23,236,101,128,248,255,242,111,2,49,30,49,38,225,227,232,229,115,128,34,80,120,2,49,44,49,64,229,241,245,225,108,129,34,72,49,54,239,242,233,237,225,231,101,128,34,82,233,237,225,244,229,236,249,229,241,245,225,108,128,34,69,114,4,49,89,49,116,49,120,49,165,225,229,97,2,49,97,49,107,229,235,239,242,229,225,110,128,49,142,235,239,242,229,225,110,128,49,141,99,128,35,18,105,2,49,126,49,140,231,232,244,232,225,236,230,242,233,238,103,128,30,154,238,103,130,0,229,49,149,49,157,225,227,245,244,101,128,1,251,226,229,236,239,119,128,30,1,242,239,119,8,49,185,49,192,50,65,50,131,50,181,50,236,51,3,51,78,226,239,244,104,128,33,148,100,3,49,200,49,239,50,30,225,243,104,4,49,212,49,219,49,226,49,234,228,239,247,110,128,33,227,236,229,230,116,128,33,224,242,233,231,232,116,128,33,226,245,112,128,33,225,226,108,5,49,252,50,3,50,10,50,17,50,25,226,239,244,104,128,33,212,228,239,247,110,128,33,211,236,229,230,116,128,33,208,242,233,231,232,116,128,33,210,245,112,128,33,209,239,247,110,131,33,147,50,42,50,49,50,57,236,229,230,116,128,33,153,242,233,231,232,116,128,33,152,247,232,233,244,101,128,33,233,104,2,50,71,50,122,229,225,100,4,50,83,50,93,50,103,50,114,228,239,247,238,237,239,100,128,2,197,236,229,230,244,237,239,100,128,2,194,242,233,231,232,244,237,239,100,128,2,195,245,240,237,239,100,128,2,196,239,242,233,250,229,120,128,248,231,236,229,230,116,131,33,144,50,144,50,161,50,173,228,226,108,129,33,208,50,152,243,244,242,239,235,101,128,33,205,239,246,229,242,242,233,231,232,116,128,33,198,247,232,233,244,101,128,33,230,242,233,231,232,116,132,33,146,50,197,50,209,50,217,50,228,228,226,236,243,244,242,239,235,101,128,33,207,232,229,225,246,121,128,39,158,239,246,229,242,236,229,230,116,128,33,196,247,232,233,244,101,128,33,232,244,225,98,2,50,244,50,251,236,229,230,116,128,33,228,242,233,231,232,116,128,33,229,245,112,132,33,145,51,16,51,44,51,62,51,70,100,2,51,22,51,34,110,129,33,149,51,28,226,243,101,128,33,168,239,247,238,226,225,243,101,128,33,168,236,229,230,116,129,33,150,51,53,239,230,228,239,247,110,128,33,197,242,233,231,232,116,128,33,151,247,232,233,244,101,128,33,231,246,229,242,244,229,120,128,248,230,115,5,51,99,51,175,51,220,52,47,52,57,99,2,51,105,51,157,233,105,2,51,112,51,135,227,233,242,227,245,109,129,0,94,51,123,237,239,238,239,243,240,225,227,101,128,255,62,244,233,236,228,101,129,0,126,51,145,237,239,238,239,243,240,225,227,101,128,255,94,242,233,240,116,129,2,81,51,166,244,245,242,238,229,100,128,2,82,237,225,236,108,2,51,184,51,195,232,233,242,225,231,225,238,97,128,48,65,235,225,244,225,235,225,238,97,129,48,161,51,208,232,225,236,230,247,233,228,244,104,128,255,103,244,229,242,233,115,2,51,230,52,43,107,131,0,42,51,240,52,12,52,35,97,2,51,246,52,4,236,244,239,238,229,225,242,225,226,233,99,128,6,109,242,225,226,233,99,128,6,109,109,2,52,18,52,24,225,244,104,128,34,23,239,238,239,243,240,225,227,101,128,255,10,243,237,225,236,108,128,254,97,109,128,32,66,245,240,229,242,233,239,114,128,246,233,249,237,240,244,239,244,233,227,225,236,236,249,229,241,245,225,108,128,34,67,116,132,0,64,52,89,52,96,52,108,52,116,233,236,228,101,128,0,227,237,239,238,239,243,240,225,227,101,128,255,32,243,237,225,236,108,128,254,107,245,242,238,229,100,128,2,80,117,6,52,138,52,163,52,170,52,195,52,215,52,231,98,2,52,144,52,153,229,238,231,225,236,105,128,9,148,239,240,239,237,239,230,111,128,49,32,228,229,246,97,128,9,20,231,117,2,52,177,52,186,234,225,242,225,244,105,128,10,148,242,237,245,235,232,105,128,10,20,236,229,238,231,244,232,237,225,242,235,226,229,238,231,225,236,105,128,9,215,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,76,246,239,247,229,236,243,233,231,110,3,52,247,53,1,53,8,226,229,238,231,225,236,105,128,9,204,228,229,246,97,128,9,76,231,245,234,225,242,225,244,105,128,10,204,246,225,231,242,225,232,225,228,229,246,97,128,9,61,121,2,53,39,53,51,226,225,242,237,229,238,233,225,110,128,5,97,233,110,130,5,226,53,60,53,75,225,236,244,239,238,229,232,229,226,242,229,119,128,251,32,232,229,226,242,229,119,128,5,226,98,144,0,98,53,120,53,255,54,10,54,19,54,44,55,85,55,147,55,220,57,146,57,158,57,201,57,209,57,219,59,89,59,113,59,122,97,7,53,136,53,146,53,170,53,177,53,202,53,226,53,237,226,229,238,231,225,236,105,128,9,172,227,235,243,236,225,243,104,129,0,92,53,158,237,239,238,239,243,240,225,227,101,128,255,60,228,229,246,97,128,9,44,231,117,2,53,184,53,193,234,225,242,225,244,105,128,10,172,242,237,245,235,232,105,128,10,44,104,2,53,208,53,218,233,242,225,231,225,238,97,128,48,112,244,244,232,225,105,128,14,63,235,225,244,225,235,225,238,97,128,48,208,114,129,0,124,53,243,237,239,238,239,243,240,225,227,101,128,255,92,226,239,240,239,237,239,230,111,128,49,5,227,233,242,227,236,101,128,36,209,228,239,116,2,54,27,54,36,225,227,227,229,238,116,128,30,3,226,229,236,239,119,128,30,5,101,6,54,58,54,79,54,102,54,244,54,255,55,11,225,237,229,228,243,233,248,244,229,229,238,244,232,238,239,244,229,115,128,38,108,99,2,54,85,54,92,225,245,243,101,128,34,53,249,242,233,236,236,233,99,128,4,49,104,5,54,114,54,123,54,137,54,167,54,226,225,242,225,226,233,99,128,6,40,230,233,238,225,236,225,242,225,226,233,99,128,254,144,105,2,54,143,54,158,238,233,244,233,225,236,225,242,225,226,233,99,128,254,145,242,225,231,225,238,97,128,48,121,237,101,2,54,174,54,187,228,233,225,236,225,242,225,226,233,99,128,254,146,229,237,105,2,54,195,54,210,238,233,244,233,225,236,225,242,225,226,233,99,128,252,159,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,8,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,109,235,225,244,225,235,225,238,97,128,48,217,238,225,242,237,229,238,233,225,110,128,5,98,116,132,5,209,55,23,55,43,55,63,55,72,97,129,3,178,55,29,243,249,237,226,239,236,231,242,229,229,107,128,3,208,228,225,231,229,243,104,129,251,49,55,54,232,229,226,242,229,119,128,251,49,232,229,226,242,229,119,128,5,209,242,225,230,229,232,229,226,242,229,119,128,251,76,104,2,55,91,55,141,97,3,55,99,55,109,55,116,226,229,238,231,225,236,105,128,9,173,228,229,246,97,128,9,45,231,117,2,55,123,55,132,234,225,242,225,244,105,128,10,173,242,237,245,235,232,105,128,10,45,239,239,107,128,2,83,105,5,55,159,55,170,55,181,55,195,55,209,232,233,242,225,231,225,238,97,128,48,115,235,225,244,225,235,225,238,97,128,48,211,236,225,226,233,225,236,227,236,233,227,107,128,2,152,238,228,233,231,245,242,237,245,235,232,105,128,10,2,242,245,243,241,245,225,242,101,128,51,49,108,3,55,228,57,129,57,140,97,2,55,234,57,124,227,107,6,55,249,56,2,56,39,56,188,56,243,57,39,227,233,242,227,236,101,128,37,207,100,2,56,8,56,17,233,225,237,239,238,100,128,37,198,239,247,238,240,239,233,238,244,233,238,231,244,242,233,225,238,231,236,101,128,37,188,108,2,56,45,56,148,101,2,56,51,56,87,230,244,240,239,233,238,244,233,238,103,2,56,66,56,76,240,239,233,238,244,229,114,128,37,196,244,242,233,225,238,231,236,101,128,37,192,238,244,233,227,245,236,225,242,226,242,225,227,235,229,116,2,56,107,56,127,236,229,230,116,129,48,16,56,116,246,229,242,244,233,227,225,108,128,254,59,242,233,231,232,116,129,48,17,56,137,246,229,242,244,233,227,225,108,128,254,60,239,247,229,114,2,56,157,56,172,236,229,230,244,244,242,233,225,238,231,236,101,128,37,227,242,233,231,232,244,244,242,233,225,238,231,236,101,128,37,226,114,2,56,194,56,205,229,227,244,225,238,231,236,101,128,37,172,233,231,232,244,240,239,233,238,244,233,238,103,2,56,222,56,232,240,239,233,238,244,229,114,128,37,186,244,242,233,225,238,231,236,101,128,37,182,115,3,56,251,57,25,57,33,109,2,57,1,57,13,225,236,236,243,241,245,225,242,101,128,37,170,233,236,233,238,231,230,225,227,101,128,38,59,241,245,225,242,101,128,37,160,244,225,114,128,38,5,245,240,112,2,57,47,57,85,229,114,2,57,54,57,69,236,229,230,244,244,242,233,225,238,231,236,101,128,37,228,242,233,231,232,244,244,242,233,225,238,231,236,101,128,37,229,239,233,238,244,233,238,103,2,57,97,57,113,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,180,244,242,233,225,238,231,236,101,128,37,178,238,107,128,36,35,233,238,229,226,229,236,239,119,128,30,7,239,227,107,128,37,136,237,239,238,239,243,240,225,227,101,128,255,66,111,3,57,166,57,179,57,190,226,225,233,237,225,233,244,232,225,105,128,14,26,232,233,242,225,231,225,238,97,128,48,124,235,225,244,225,235,225,238,97,128,48,220,240,225,242,229,110,128,36,157,241,243,241,245,225,242,101,128,51,195,114,4,57,229,58,223,59,40,59,79,225,99,2,57,236,58,130,101,3,57,244,57,249,58,61,229,120,128,248,244,236,229,230,116,133,0,123,58,10,58,15,58,37,58,45,58,50,226,116,128,248,243,109,2,58,21,58,26,233,100,128,248,242,239,238,239,243,240,225,227,101,128,255,91,243,237,225,236,108,128,254,91,244,112,128,248,241,246,229,242,244,233,227,225,108,128,254,55,242,233,231,232,116,133,0,125,58,79,58,84,58,106,58,114,58,119,226,116,128,248,254,109,2,58,90,58,95,233,100,128,248,253,239,238,239,243,240,225,227,101,128,255,93,243,237,225,236,108,128,254,92,244,112,128,248,252,246,229,242,244,233,227,225,108,128,254,56,235,229,116,2,58,138,58,180,236,229,230,116,132,0,91,58,153,58,158,58,163,58,175,226,116,128,248,240,229,120,128,248,239,237,239,238,239,243,240,225,227,101,128,255,59,244,112,128,248,238,242,233,231,232,116,132,0,93,58,196,58,201,58,206,58,218,226,116,128,248,251,229,120,128,248,250,237,239,238,239,243,240,225,227,101,128,255,61,244,112,128,248,249,229,246,101,131,2,216,58,235,58,246,58,252,226,229,236,239,247,227,237,98,128,3,46,227,237,98,128,3,6,233,238,246,229,242,244,229,100,3,59,11,59,22,59,28,226,229,236,239,247,227,237,98,128,3,47,227,237,98,128,3,17,228,239,245,226,236,229,227,237,98,128,3,97,233,228,231,101,2,59,49,59,60,226,229,236,239,247,227,237,98,128,3,42,233,238,246,229,242,244,229,228,226,229,236,239,247,227,237,98,128,3,58,239,235,229,238,226,225,114,128,0,166,115,2,59,95,59,103,244,242,239,235,101,128,1,128,245,240,229,242,233,239,114,128,246,234,244,239,240,226,225,114,128,1,131,117,3,59,130,59,141,59,152,232,233,242,225,231,225,238,97,128,48,118,235,225,244,225,235,225,238,97,128,48,214,236,108,2,59,159,59,189,229,116,130,32,34,59,168,59,178,233,238,246,229,242,243,101,128,37,216,239,240,229,242,225,244,239,114,128,34,25,243,229,249,101,128,37,206,99,143,0,99,59,230,60,179,60,190,60,254,61,29,61,122,63,33,64,17,64,117,64,166,67,158,67,166,67,176,67,188,67,221,97,9,59,250,60,5,60,15,60,22,60,29,60,54,60,64,60,116,60,125,225,242,237,229,238,233,225,110,128,5,110,226,229,238,231,225,236,105,128,9,154,227,245,244,101,128,1,7,228,229,246,97,128,9,26,231,117,2,60,36,60,45,234,225,242,225,244,105,128,10,154,242,237,245,235,232,105,128,10,26,236,243,241,245,225,242,101,128,51,136,238,228,242,225,226,233,238,228,117,4,60,82,60,92,60,98,60,105,226,229,238,231,225,236,105,128,9,129,227,237,98,128,3,16,228,229,246,97,128,9,1,231,245,234,225,242,225,244,105,128,10,129,240,243,236,239,227,107,128,33,234,114,3,60,133,60,139,60,165,229,239,102,128,33,5,239,110,130,2,199,60,148,60,159,226,229,236,239,247,227,237,98,128,3,44,227,237,98,128,3,12,242,233,225,231,229,242,229,244,245,242,110,128,33,181,226,239,240,239,237,239,230,111,128,49,24,99,4,60,200,60,207,60,226,60,248,225,242,239,110,128,1,13,229,228,233,236,236,97,129,0,231,60,218,225,227,245,244,101,128,30,9,233,242,99,2,60,234,60,239,236,101,128,36,210,245,237,230,236,229,120,128,1,9,245,242,108,128,2,85,100,2,61,4,61,20,239,116,129,1,11,61,11,225,227,227,229,238,116,128,1,11,243,241,245,225,242,101,128,51,197,101,2,61,35,61,51,228,233,236,236,97,129,0,184,61,45,227,237,98,128,3,39,238,116,132,0,162,61,64,61,88,61,100,61,111,105,2,61,70,61,78,231,242,225,228,101,128,33,3,238,230,229,242,233,239,114,128,246,223,237,239,238,239,243,240,225,227,101,128,255,224,239,236,228,243,244,249,236,101,128,247,162,243,245,240,229,242,233,239,114,128,246,224,104,5,61,134,61,197,61,208,62,136,62,228,97,4,61,144,61,155,61,165,61,172,225,242,237,229,238,233,225,110,128,5,121,226,229,238,231,225,236,105,128,9,155,228,229,246,97,128,9,27,231,117,2,61,179,61,188,234,225,242,225,244,105,128,10,155,242,237,245,235,232,105,128,10,27,226,239,240,239,237,239,230,111,128,49,20,101,6,61,222,61,242,62,10,62,78,62,90,62,111,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,189,99,2,61,248,62,0,235,237,225,242,107,128,39,19,249,242,233,236,236,233,99,128,4,71,100,2,62,16,62,60,229,243,227,229,238,228,229,114,2,62,29,62,49,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,191,227,249,242,233,236,236,233,99,128,4,183,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,245,232,225,242,237,229,238,233,225,110,128,5,115,235,232,225,235,225,243,243,233,225,238,227,249,242,233,236,236,233,99,128,4,204,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,185,105,129,3,199,62,142,229,245,227,104,4,62,155,62,190,62,205,62,214,97,2,62,161,62,176,227,233,242,227,236,229,235,239,242,229,225,110,128,50,119,240,225,242,229,238,235,239,242,229,225,110,128,50,23,227,233,242,227,236,229,235,239,242,229,225,110,128,50,105,235,239,242,229,225,110,128,49,74,240,225,242,229,238,235,239,242,229,225,110,128,50,9,111,2,62,234,63,28,227,104,3,62,243,63,9,63,19,225,110,2,62,250,63,2,231,244,232,225,105,128,14,10,244,232,225,105,128,14,8,233,238,231,244,232,225,105,128,14,9,239,229,244,232,225,105,128,14,12,239,107,128,1,136,105,2,63,39,63,141,229,245,99,5,63,53,63,88,63,103,63,112,63,126,97,2,63,59,63,74,227,233,242,227,236,229,235,239,242,229,225,110,128,50,118,240,225,242,229,238,235,239,242,229,225,110,128,50,22,227,233,242,227,236,229,235,239,242,229,225,110,128,50,104,235,239,242,229,225,110,128,49,72,240,225,242,229,238,235,239,242,229,225,110,128,50,8,245,240,225,242,229,238,235,239,242,229,225,110,128,50,28,242,99,2,63,148,63,243,236,101,132,37,203,63,161,63,172,63,177,63,201,237,245,236,244,233,240,236,121,128,34,151,239,116,128,34,153,112,2,63,183,63,189,236,245,115,128,34,149,239,243,244,225,236,237,225,242,107,128,48,54,247,233,244,104,2,63,210,63,226,236,229,230,244,232,225,236,230,226,236,225,227,107,128,37,208,242,233,231,232,244,232,225,236,230,226,236,225,227,107,128,37,209,245,237,230,236,229,120,130,2,198,64,0,64,11,226,229,236,239,247,227,237,98,128,3,45,227,237,98,128,3,2,108,3,64,25,64,31,64,85,229,225,114,128,35,39,233,227,107,4,64,43,64,54,64,63,64,73,225,236,246,229,239,236,225,114,128,1,194,228,229,238,244,225,108,128,1,192,236,225,244,229,242,225,108,128,1,193,242,229,244,242,239,230,236,229,120,128,1,195,245,98,129,38,99,64,92,243,245,233,116,2,64,101,64,109,226,236,225,227,107,128,38,99,247,232,233,244,101,128,38,103,109,3,64,125,64,139,64,150,227,245,226,229,228,243,241,245,225,242,101,128,51,164,239,238,239,243,240,225,227,101,128,255,67,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,160,111,8,64,184,64,195,65,26,65,224,66,253,67,28,67,135,67,144,225,242,237,229,238,233,225,110,128,5,129,236,239,110,131,0,58,64,207,64,232,64,251,237,239,110,2,64,215,64,223,229,244,225,242,121,128,32,161,239,243,240,225,227,101,128,255,26,115,2,64,238,64,244,233,231,110,128,32,161,237,225,236,108,128,254,85,244,242,233,225,238,231,245,236,225,114,2,65,10,65,20,232,225,236,230,237,239,100,128,2,209,237,239,100,128,2,208,109,2,65,32,65,217,237,97,134,0,44,65,49,65,113,65,124,65,136,65,166,65,189,97,3,65,57,65,83,65,91,226,239,246,101,2,65,66,65,72,227,237,98,128,3,19,242,233,231,232,244,227,237,98,128,3,21,227,227,229,238,116,128,246,195,114,2,65,97,65,104,225,226,233,99,128,6,12,237,229,238,233,225,110,128,5,93,233,238,230,229,242,233,239,114,128,246,225,237,239,238,239,243,240,225,227,101,128,255,12,242,229,246,229,242,243,229,100,2,65,149,65,160,225,226,239,246,229,227,237,98,128,3,20,237,239,100,128,2,189,115,2,65,172,65,179,237,225,236,108,128,254,80,245,240,229,242,233,239,114,128,246,226,244,245,242,238,229,100,2,65,200,65,211,225,226,239,246,229,227,237,98,128,3,18,237,239,100,128,2,187,240,225,243,115,128,38,60,110,2,65,230,65,239,231,242,245,229,238,116,128,34,69,116,2,65,245,66,3,239,245,242,233,238,244,229,231,242,225,108,128,34,46,242,239,108,142,35,3,66,37,66,43,66,58,66,73,66,117,66,162,66,176,66,181,66,186,66,191,66,197,66,202,66,243,66,248,193,195,75,128,0,6,66,2,66,49,66,54,197,76,128,0,7,83,128,0,8,67,2,66,64,66,69,193,78,128,0,24,82,128,0,13,68,3,66,81,66,107,66,112,67,4,66,91,66,95,66,99,66,103,49,128,0,17,50,128,0,18,51,128,0,19,52,128,0,20,197,76,128,0,127,204,69,128,0,16,69,5,66,129,66,133,66,138,66,143,66,148,77,128,0,25,206,81,128,0,5,207,84,128,0,4,211,67,128,0,27,84,2,66,154,66,158,66,128,0,23,88,128,0,3,70,2,66,168,66,172,70,128,0,12,83,128,0,28,199,83,128,0,29,200,84,128,0,9,204,70,128,0,10,206,193,75,128,0,21,210,83,128,0,30,83,5,66,214,66,218,66,228,66,233,66,238,73,128,0,15,79,129,0,14,66,224,84,128,0,2,212,88,128,0,1,213,66,128,0,26,217,78,128,0,22,213,83,128,0,31,214,84,128,0,11,240,249,242,233,231,232,116,129,0,169,67,9,115,2,67,15,67,21,225,238,115,128,248,233,229,242,233,102,128,246,217,114,2,67,34,67,118,238,229,242,226,242,225,227,235,229,116,2,67,49,67,83,236,229,230,116,130,48,12,67,60,67,72,232,225,236,230,247,233,228,244,104,128,255,98,246,229,242,244,233,227,225,108,128,254,65,242,233,231,232,116,130,48,13,67,95,67,107,232,225,236,230,247,233,228,244,104,128,255,99,246,229,242,244,233,227,225,108,128,254,66,240,239,242,225,244,233,239,238,243,241,245,225,242,101,128,51,127,243,241,245,225,242,101,128,51,199,246,229,242,235,231,243,241,245,225,242,101,128,51,198,240,225,242,229,110,128,36,158,242,245,250,229,233,242,111,128,32,162,243,244,242,229,244,227,232,229,100,128,2,151,245,114,2,67,195,67,213,236,121,2,67,202,67,208,225,238,100,128,34,207,239,114,128,34,206,242,229,238,227,121,128,0,164,249,114,4,67,232,67,240,67,247,67,255,194,242,229,246,101,128,246,209,198,236,229,120,128,246,210,226,242,229,246,101,128,246,212,230,236,229,120,128,246,213,100,146,0,100,68,46,69,184,70,208,71,12,71,188,72,142,72,204,73,133,73,146,73,155,73,181,73,206,73,215,75,26,75,34,75,45,75,65,75,93,97,11,68,70,68,81,68,91,68,163,68,226,68,237,68,248,69,61,69,123,69,129,69,159,225,242,237,229,238,233,225,110,128,5,100,226,229,238,231,225,236,105,128,9,166,100,5,68,103,68,112,68,118,68,132,68,148,225,242,225,226,233,99,128,6,54,229,246,97,128,9,38,230,233,238,225,236,225,242,225,226,233,99,128,254,190,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,191,237,229,228,233,225,236,225,242,225,226,233,99,128,254,192,103,3,68,171,68,188,68,202,229,243,104,129,5,188,68,179,232,229,226,242,229,119,128,5,188,231,229,114,129,32,32,68,196,228,226,108,128,32,33,117,2,68,208,68,217,234,225,242,225,244,105,128,10,166,242,237,245,235,232,105,128,10,38,232,233,242,225,231,225,238,97,128,48,96,235,225,244,225,235,225,238,97,128,48,192,108,3,69,0,69,9,69,47,225,242,225,226,233,99,128,6,47,229,116,130,5,211,69,18,69,38,228,225,231,229,243,104,129,251,51,69,29,232,229,226,242,229,119,128,251,51,232,229,226,242,229,119,128,5,211,230,233,238,225,236,225,242,225,226,233,99,128,254,170,237,237,97,3,69,71,69,80,69,92,225,242,225,226,233,99,128,6,79,236,239,247,225,242,225,226,233,99,128,6,79,244,225,238,97,2,69,101,69,115,236,244,239,238,229,225,242,225,226,233,99,128,6,76,242,225,226,233,99,128,6,76,238,228,97,128,9,100,242,231,97,2,69,137,69,146,232,229,226,242,229,119,128,5,167,236,229,230,244,232,229,226,242,229,119,128,5,167,243,233,225,240,238,229,245,237,225,244,225,227,249,242,233,236,236,233,227,227,237,98,128,4,133,98,3,69,192,70,189,70,199,108,9,69,212,69,220,70,77,70,85,70,101,70,112,70,130,70,144,70,155,199,242,225,246,101,128,246,211,97,2,69,226,70,27,238,231,236,229,226,242,225,227,235,229,116,2,69,242,70,6,236,229,230,116,129,48,10,69,251,246,229,242,244,233,227,225,108,128,254,61,242,233,231,232,116,129,48,11,70,16,246,229,242,244,233,227,225,108,128,254,62,114,2,70,33,70,54,227,232,233,238,246,229,242,244,229,228,226,229,236,239,247,227,237,98,128,3,43,242,239,119,2,70,62,70,69,236,229,230,116,128,33,212,242,233,231,232,116,128,33,210,228,225,238,228,97,128,9,101,231,242,225,246,101,129,246,214,70,95,227,237,98,128,3,15,233,238,244,229,231,242,225,108,128,34,44,236,239,247,236,233,238,101,129,32,23,70,124,227,237,98,128,3,51,239,246,229,242,236,233,238,229,227,237,98,128,3,63,240,242,233,237,229,237,239,100,128,2,186,246,229,242,244,233,227,225,108,2,70,168,70,174,226,225,114,128,32,22,236,233,238,229,225,226,239,246,229,227,237,98,128,3,14,239,240,239,237,239,230,111,128,49,9,243,241,245,225,242,101,128,51,200,99,4,70,218,70,225,70,234,71,5,225,242,239,110,128,1,15,229,228,233,236,236,97,128,30,17,233,242,99,2,70,242,70,247,236,101,128,36,211,245,237,230,236,229,248,226,229,236,239,119,128,30,19,242,239,225,116,128,1,17,100,4,71,22,71,103,71,113,71,164,97,4,71,32,71,42,71,49,71,74,226,229,238,231,225,236,105,128,9,161,228,229,246,97,128,9,33,231,117,2,71,56,71,65,234,225,242,225,244,105,128,10,161,242,237,245,235,232,105,128,10,33,108,2,71,80,71,89,225,242,225,226,233,99,128,6,136,230,233,238,225,236,225,242,225,226,233,99,128,251,137,228,232,225,228,229,246,97,128,9,92,232,97,3,71,122,71,132,71],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+20480);allocate([139,226,229,238,231,225,236,105,128,9,162,228,229,246,97,128,9,34,231,117,2,71,146,71,155,234,225,242,225,244,105,128,10,162,242,237,245,235,232,105,128,10,34,239,116,2,71,171,71,180,225,227,227,229,238,116,128,30,11,226,229,236,239,119,128,30,13,101,8,71,206,72,3,72,10,72,35,72,45,72,56,72,101,72,137,99,2,71,212,71,249,233,237,225,236,243,229,240,225,242,225,244,239,114,2,71,230,71,239,225,242,225,226,233,99,128,6,107,240,229,242,243,233,225,110,128,6,107,249,242,233,236,236,233,99,128,4,52,231,242,229,101,128,0,176,232,105,2,72,17,72,26,232,229,226,242,229,119,128,5,173,242,225,231,225,238,97,128,48,103,233,227,239,240,244,233,99,128,3,239,235,225,244,225,235,225,238,97,128,48,199,108,2,72,62,72,85,229,244,101,2,72,70,72,77,236,229,230,116,128,35,43,242,233,231,232,116,128,35,38,244,97,129,3,180,72,92,244,245,242,238,229,100,128,1,141,238,239,237,233,238,225,244,239,242,237,233,238,245,243,239,238,229,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,248,250,104,128,2,164,104,2,72,148,72,198,97,3,72,156,72,166,72,173,226,229,238,231,225,236,105,128,9,167,228,229,246,97,128,9,39,231,117,2,72,180,72,189,234,225,242,225,244,105,128,10,167,242,237,245,235,232,105,128,10,39,239,239,107,128,2,87,105,6,72,218,73,11,73,71,73,82,73,93,73,103,97,2,72,224,72,246,236,249,244,233,235,225,244,239,238,239,115,129,3,133,72,240,227,237,98,128,3,68,237,239,238,100,129,38,102,72,255,243,245,233,244,247,232,233,244,101,128,38,98,229,242,229,243,233,115,133,0,168,73,30,73,38,73,49,73,55,73,63,225,227,245,244,101,128,246,215,226,229,236,239,247,227,237,98,128,3,36,227,237,98,128,3,8,231,242,225,246,101,128,246,216,244,239,238,239,115,128,3,133,232,233,242,225,231,225,238,97,128,48,98,235,225,244,225,235,225,238,97,128,48,194,244,244,239,237,225,242,107,128,48,3,246,105,2,73,110,73,121,228,101,129,0,247,73,117,115,128,34,35,243,233,239,238,243,236,225,243,104,128,34,21,234,229,227,249,242,233,236,236,233,99,128,4,82,235,243,232,225,228,101,128,37,147,108,2,73,161,73,172,233,238,229,226,229,236,239,119,128,30,15,243,241,245,225,242,101,128,51,151,109,2,73,187,73,195,225,227,242,239,110,128,1,17,239,238,239,243,240,225,227,101,128,255,68,238,226,236,239,227,107,128,37,132,111,10,73,237,73,249,74,3,74,14,74,25,74,97,74,102,74,113,74,228,74,254,227,232,225,228,225,244,232,225,105,128,14,14,228,229,235,244,232,225,105,128,14,20,232,233,242,225,231,225,238,97,128,48,105,235,225,244,225,235,225,238,97,128,48,201,236,236,225,114,132,0,36,74,40,74,51,74,63,74,74,233,238,230,229,242,233,239,114,128,246,227,237,239,238,239,243,240,225,227,101,128,255,4,239,236,228,243,244,249,236,101,128,247,36,115,2,74,80,74,87,237,225,236,108,128,254,105,245,240,229,242,233,239,114,128,246,228,238,103,128,32,171,242,245,243,241,245,225,242,101,128,51,38,116,6,74,127,74,144,74,166,74,177,74,209,74,216,225,227,227,229,238,116,129,2,217,74,138,227,237,98,128,3,7,226,229,236,239,247,99,2,74,155,74,160,237,98,128,3,35,239,237,98,128,3,35,235,225,244,225,235,225,238,97,128,48,251,236,229,243,115,2,74,186,74,190,105,128,1,49,106,129,246,190,74,196,243,244,242,239,235,229,232,239,239,107,128,2,132,237,225,244,104,128,34,197,244,229,228,227,233,242,227,236,101,128,37,204,245,226,236,229,249,239,228,240,225,244,225,104,129,251,31,74,245,232,229,226,242,229,119,128,251,31,247,238,244,225,227,107,2,75,9,75,20,226,229,236,239,247,227,237,98,128,3,30,237,239,100,128,2,213,240,225,242,229,110,128,36,159,243,245,240,229,242,233,239,114,128,246,235,116,2,75,51,75,57,225,233,108,128,2,86,239,240,226,225,114,128,1,140,117,2,75,71,75,82,232,233,242,225,231,225,238,97,128,48,101,235,225,244,225,235,225,238,97,128,48,197,122,132,1,243,75,105,75,114,75,133,75,170,225,236,244,239,238,101,128,2,163,99,2,75,120,75,127,225,242,239,110,128,1,198,245,242,108,128,2,165,101,2,75,139,75,159,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,225,227,249,242,233,236,236,233,99,128,4,85,232,229,227,249,242,233,236,236,233,99,128,4,95,101,151,0,101,75,233,75,252,76,30,77,4,77,66,77,99,77,111,77,134,77,187,79,43,79,101,79,203,80,63,80,198,81,17,81,48,81,110,81,163,82,98,82,231,82,251,83,39,83,130,97,2,75,239,75,246,227,245,244,101,128,0,233,242,244,104,128,38,65,98,3,76,4,76,13,76,23,229,238,231,225,236,105,128,9,143,239,240,239,237,239,230,111,128,49,28,242,229,246,101,128,1,21,99,5,76,42,76,115,76,129,76,161,76,250,97,2,76,48,76,109,238,228,242,97,3,76,59,76,66,76,77,228,229,246,97,128,9,13,231,245,234,225,242,225,244,105,128,10,141,246,239,247,229,236,243,233,231,110,2,76,91,76,98,228,229,246,97,128,9,69,231,245,234,225,242,225,244,105,128,10,197,242,239,110,128,1,27,229,228,233,236,236,225,226,242,229,246,101,128,30,29,104,2,76,135,76,146,225,242,237,229,238,233,225,110,128,5,101,249,233,247,238,225,242,237,229,238,233,225,110,128,5,135,233,242,99,2,76,169,76,174,236,101,128,36,212,245,237,230,236,229,120,134,0,234,76,195,76,203,76,211,76,222,76,230,76,242,225,227,245,244,101,128,30,191,226,229,236,239,119,128,30,25,228,239,244,226,229,236,239,119,128,30,199,231,242,225,246,101,128,30,193,232,239,239,235,225,226,239,246,101,128,30,195,244,233,236,228,101,128,30,197,249,242,233,236,236,233,99,128,4,84,100,4,77,14,77,24,77,30,77,40,226,236,231,242,225,246,101,128,2,5,229,246,97,128,9,15,233,229,242,229,243,233,115,128,0,235,239,116,130,1,23,77,49,77,58,225,227,227,229,238,116,128,1,23,226,229,236,239,119,128,30,185,101,2,77,72,77,83,231,245,242,237,245,235,232,105,128,10,15,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,71,230,227,249,242,233,236,236,233,99,128,4,68,103,2,77,117,77,124,242,225,246,101,128,0,232,245,234,225,242,225,244,105,128,10,143,104,4,77,144,77,155,77,166,77,176,225,242,237,229,238,233,225,110,128,5,103,226,239,240,239,237,239,230,111,128,49,29,233,242,225,231,225,238,97,128,48,72,239,239,235,225,226,239,246,101,128,30,187,105,4,77,197,77,208,79,10,79,25,226,239,240,239,237,239,230,111,128,49,31,231,232,116,142,0,56,77,242,77,251,78,5,78,35,78,42,78,80,78,105,78,150,78,184,78,196,78,207,78,240,78,248,79,3,225,242,225,226,233,99,128,6,104,226,229,238,231,225,236,105,128,9,238,227,233,242,227,236,101,129,36,103,78,16,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,145,228,229,246,97,128,9,110,229,229,110,2,78,50,78,59,227,233,242,227,236,101,128,36,113,112,2,78,65,78,72,225,242,229,110,128,36,133,229,242,233,239,100,128,36,153,231,117,2,78,87,78,96,234,225,242,225,244,105,128,10,238,242,237,245,235,232,105,128,10,110,104,2,78,111,78,137,97,2,78,117,78,128,227,235,225,242,225,226,233,99,128,6,104,238,231,250,232,239,117,128,48,40,238,239,244,229,226,229,225,237,229,100,128,38,107,105,2,78,156,78,174,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,39,238,230,229,242,233,239,114,128,32,136,237,239,238,239,243,240,225,227,101,128,255,24,239,236,228,243,244,249,236,101,128,247,56,112,2,78,213,78,220,225,242,229,110,128,36,123,229,114,2,78,227,78,233,233,239,100,128,36,143,243,233,225,110,128,6,248,242,239,237,225,110,128,33,119,243,245,240,229,242,233,239,114,128,32,120,244,232,225,105,128,14,88,238,246,229,242,244,229,228,226,242,229,246,101,128,2,7,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,101,107,2,79,49,79,73,225,244,225,235,225,238,97,129,48,168,79,61,232,225,236,230,247,233,228,244,104,128,255,116,111,2,79,79,79,94,238,235,225,242,231,245,242,237,245,235,232,105,128,10,116,242,229,225,110,128,49,84,108,3,79,109,79,120,79,181,227,249,242,233,236,236,233,99,128,4,59,101,2,79,126,79,133,237,229,238,116,128,34,8,246,229,110,3,79,143,79,152,79,173,227,233,242,227,236,101,128,36,106,112,2,79,158,79,165,225,242,229,110,128,36,126,229,242,233,239,100,128,36,146,242,239,237,225,110,128,33,122,236,233,240,243,233,115,129,32,38,79,192,246,229,242,244,233,227,225,108,128,34,238,109,5,79,215,79,243,79,254,80,18,80,29,225,227,242,239,110,130,1,19,79,227,79,235,225,227,245,244,101,128,30,23,231,242,225,246,101,128,30,21,227,249,242,233,236,236,233,99,128,4,60,228,225,243,104,129,32,20,80,7,246,229,242,244,233,227,225,108,128,254,49,239,238,239,243,240,225,227,101,128,255,69,112,2,80,35,80,55,232,225,243,233,243,237,225,242,235,225,242,237,229,238,233,225,110,128,5,91,244,249,243,229,116,128,34,5,110,6,80,77,80,88,80,99,80,143,80,175,80,190,226,239,240,239,237,239,230,111,128,49,35,227,249,242,233,236,236,233,99,128,4,61,100,2,80,105,80,124,225,243,104,129,32,19,80,113,246,229,242,244,233,227,225,108,128,254,50,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,163,103,130,1,75,80,151,80,162,226,239,240,239,237,239,230,111,128,49,37,232,229,227,249,242,233,236,236,233,99,128,4,165,232,239,239,235,227,249,242,233,236,236,233,99,128,4,200,243,240,225,227,101,128,32,2,111,3,80,206,80,214,80,223,231,239,238,229,107,128,1,25,235,239,242,229,225,110,128,49,83,240,229,110,130,2,91,80,233,80,242,227,236,239,243,229,100,128,2,154,242,229,246,229,242,243,229,100,130,2,92,81,1,81,10,227,236,239,243,229,100,128,2,94,232,239,239,107,128,2,93,112,2,81,23,81,30,225,242,229,110,128,36,160,243,233,236,239,110,129,3,181,81,40,244,239,238,239,115,128,3,173,241,117,2,81,55,81,99,225,108,130,0,61,81,64,81,76,237,239,238,239,243,240,225,227,101,128,255,29,115,2,81,82,81,89,237,225,236,108,128,254,102,245,240,229,242,233,239,114,128,32,124,233,246,225,236,229,238,227,101,128,34,97,114,3,81,118,81,129,81,140,226,239,240,239,237,239,230,111,128,49,38,227,249,242,233,236,236,233,99,128,4,64,229,246,229,242,243,229,100,129,2,88,81,152,227,249,242,233,236,236,233,99,128,4,77,115,6,81,177,81,188,81,208,82,33,82,78,82,88,227,249,242,233,236,236,233,99,128,4,65,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,171,104,132,2,131,81,220,81,227,82,2,82,17,227,245,242,108,128,2,134,239,242,116,2,81,235,81,242,228,229,246,97,128,9,14,246,239,247,229,236,243,233,231,238,228,229,246,97,128,9,70,242,229,246,229,242,243,229,228,236,239,239,112,128,1,170,243,241,245,225,244,242,229,246,229,242,243,229,100,128,2,133,237,225,236,108,2,82,42,82,53,232,233,242,225,231,225,238,97,128,48,71,235,225,244,225,235,225,238,97,129,48,167,82,66,232,225,236,230,247,233,228,244,104,128,255,106,244,233,237,225,244,229,100,128,33,46,245,240,229,242,233,239,114,128,246,236,116,5,82,110,82,136,82,140,82,157,82,223,97,130,3,183,82,118,82,128,242,237,229,238,233,225,110,128,5,104,244,239,238,239,115,128,3,174,104,128,0,240,233,236,228,101,129,30,189,82,149,226,229,236,239,119,128,30,27,238,225,232,244,97,3,82,169,82,201,82,210,230,239,245,235,104,2,82,179,82,188,232,229,226,242,229,119,128,5,145,236,229,230,244,232,229,226,242,229,119,128,5,145,232,229,226,242,229,119,128,5,145,236,229,230,244,232,229,226,242,229,119,128,5,145,245,242,238,229,100,128,1,221,117,2,82,237,82,246,235,239,242,229,225,110,128,49,97,242,111,128,32,172,246,239,247,229,236,243,233,231,110,3,83,11,83,21,83,28,226,229,238,231,225,236,105,128,9,199,228,229,246,97,128,9,71,231,245,234,225,242,225,244,105,128,10,199,120,2,83,45,83,118,227,236,225,109,132,0,33,83,60,83,71,83,98,83,110,225,242,237,229,238,233,225,110,128,5,92,100,2,83,77,83,82,226,108,128,32,60,239,247,110,129,0,161,83,90,243,237,225,236,108,128,247,161,237,239,238,239,243,240,225,227,101,128,255,1,243,237,225,236,108,128,247,33,233,243,244,229,238,244,233,225,108,128,34,3,250,104,131,2,146,83,141,83,160,83,171,99,2,83,147,83,154,225,242,239,110,128,1,239,245,242,108,128,2,147,242,229,246,229,242,243,229,100,128,1,185,244,225,233,108,128,1,186,102,140,0,102,83,206,84,32,84,43,84,52,84,64,84,167,84,183,86,191,86,204,86,230,88,107,88,115,97,4,83,216,83,223,83,234,83,245,228,229,246,97,128,9,94,231,245,242,237,245,235,232,105,128,10,94,232,242,229,238,232,229,233,116,128,33,9,244,232,97,3,83,255,84,8,84,20,225,242,225,226,233,99,128,6,78,236,239,247,225,242,225,226,233,99,128,6,78,244,225,238,225,242,225,226,233,99,128,6,75,226,239,240,239,237,239,230,111,128,49,8,227,233,242,227,236,101,128,36,213,228,239,244,225,227,227,229,238,116,128,30,31,101,3,84,72,84,150,84,160,104,4,84,82,84,105,84,119,84,135,225,114,2,84,89,84,96,225,226,233,99,128,6,65,237,229,238,233,225,110,128,5,134,230,233,238,225,236,225,242,225,226,233,99,128,254,210,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,211,237,229,228,233,225,236,225,242,225,226,233,99,128,254,212,233,227,239,240,244,233,99,128,3,229,237,225,236,101,128,38,64,102,130,251,0,84,175,84,179,105,128,251,3,108,128,251,4,105,136,251,1,84,203,84,243,84,254,85,20,85,142,85,159,85,167,85,180,230,244,229,229,110,2,84,213,84,222,227,233,242,227,236,101,128,36,110,112,2,84,228,84,235,225,242,229,110,128,36,130,229,242,233,239,100,128,36,150,231,245,242,229,228,225,243,104,128,32,18,236,236,229,100,2,85,7,85,13,226,239,120,128,37,160,242,229,227,116,128,37,172,238,225,108,5,85,34,85,73,85,90,85,107,85,123,235,225,102,130,5,218,85,44,85,64,228,225,231,229,243,104,129,251,58,85,55,232,229,226,242,229,119,128,251,58,232,229,226,242,229,119,128,5,218,237,229,109,129,5,221,85,81,232,229,226,242,229,119,128,5,221,238,245,110,129,5,223,85,98,232,229,226,242,229,119,128,5,223,240,101,129,5,227,85,114,232,229,226,242,229,119,128,5,227,244,243,225,228,105,129,5,229,85,133,232,229,226,242,229,119,128,5,229,242,243,244,244,239,238,229,227,232,233,238,229,243,101,128,2,201,243,232,229,249,101,128,37,201,244,225,227,249,242,233,236,236,233,99,128,4,115,246,101,142,0,53,85,213,85,222,85,232,86,6,86,13,86,23,86,48,86,75,86,109,86,121,86,132,86,165,86,173,86,184,225,242,225,226,233,99,128,6,101,226,229,238,231,225,236,105,128,9,235,227,233,242,227,236,101,129,36,100,85,243,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,142,228,229,246,97,128,9,107,229,233,231,232,244,232,115,128,33,93,231,117,2,86,30,86,39,234,225,242,225,244,105,128,10,235,242,237,245,235,232,105,128,10,107,232,97,2,86,55,86,66,227,235,225,242,225,226,233,99,128,6,101,238,231,250,232,239,117,128,48,37,105,2,86,81,86,99,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,36,238,230,229,242,233,239,114,128,32,133,237,239,238,239,243,240,225,227,101,128,255,21,239,236,228,243,244,249,236,101,128,247,53,112,2,86,138,86,145,225,242,229,110,128,36,120,229,114,2,86,152,86,158,233,239,100,128,36,140,243,233,225,110,128,6,245,242,239,237,225,110,128,33,116,243,245,240,229,242,233,239,114,128,32,117,244,232,225,105,128,14,85,108,129,251,2,86,197,239,242,233,110,128,1,146,109,2,86,210,86,221,239,238,239,243,240,225,227,101,128,255,70,243,241,245,225,242,101,128,51,153,111,4,86,240,87,6,87,18,87,25,230,97,2,86,247,86,255,238,244,232,225,105,128,14,31,244,232,225,105,128,14,29,238,231,237,225,238,244,232,225,105,128,14,79,242,225,236,108,128,34,0,245,114,142,0,52,87,58,87,67,87,77,87,107,87,114,87,139,87,166,87,200,87,212,87,231,87,242,88,19,88,27,88,38,225,242,225,226,233,99,128,6,100,226,229,238,231,225,236,105,128,9,234,227,233,242,227,236,101,129,36,99,87,88,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,141,228,229,246,97,128,9,106,231,117,2,87,121,87,130,234,225,242,225,244,105,128,10,234,242,237,245,235,232,105,128,10,106,232,97,2,87,146,87,157,227,235,225,242,225,226,233,99,128,6,100,238,231,250,232,239,117,128,48,36,105,2,87,172,87,190,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,35,238,230,229,242,233,239,114,128,32,132,237,239,238,239,243,240,225,227,101,128,255,20,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,247,239,236,228,243,244,249,236,101,128,247,52,112,2,87,248,87,255,225,242,229,110,128,36,119,229,114,2,88,6,88,12,233,239,100,128,36,139,243,233,225,110,128,6,244,242,239,237,225,110,128,33,115,243,245,240,229,242,233,239,114,128,32,116,116,2,88,44,88,82,229,229,110,2,88,52,88,61,227,233,242,227,236,101,128,36,109,112,2,88,67,88,74,225,242,229,110,128,36,129,229,242,233,239,100,128,36,149,104,2,88,88,88,93,225,105,128,14,84,244,239,238,229,227,232,233,238,229,243,101,128,2,203,240,225,242,229,110,128,36,161,242,97,2,88,122,88,130,227,244,233,239,110,128,32,68,238,99,128,32,163,103,144,0,103,88,171,89,117,89,140,89,201,89,218,90,139,91,132,91,217,91,230,92,88,92,113,92,141,92,163,93,108,93,130,93,232,97,9,88,191,88,201,88,208,88,215,89,23,89,48,89,59,89,70,89,104,226,229,238,231,225,236,105,128,9,151,227,245,244,101,128,1,245,228,229,246,97,128,9,23,102,4,88,225,88,234,88,248,89,8,225,242,225,226,233,99,128,6,175,230,233,238,225,236,225,242,225,226,233,99,128,251,147,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,148,237,229,228,233,225,236,225,242,225,226,233,99,128,251,149,231,117,2,89,30,89,39,234,225,242,225,244,105,128,10,151,242,237,245,235,232,105,128,10,23,232,233,242,225,231,225,238,97,128,48,76,235,225,244,225,235,225,238,97,128,48,172,237,237,97,130,3,179,89,80,89,93,236,225,244,233,238,243,237,225,236,108,128,2,99,243,245,240,229,242,233,239,114,128,2,224,238,231,233,225,227,239,240,244,233,99,128,3,235,98,2,89,123,89,133,239,240,239,237,239,230,111,128,49,13,242,229,246,101,128,1,31,99,4,89,150,89,157,89,166,89,188,225,242,239,110,128,1,231,229,228,233,236,236,97,128,1,35,233,242,99,2,89,174,89,179,236,101,128,36,214,245,237,230,236,229,120,128,1,29,239,237,237,225,225,227,227,229,238,116,128,1,35,228,239,116,129,1,33,89,209,225,227,227,229,238,116,128,1,33,101,6,89,232,89,243,89,254,90,9,90,28,90,130,227,249,242,233,236,236,233,99,128,4,51,232,233,242,225,231,225,238,97,128,48,82,235,225,244,225,235,225,238,97,128,48,178,239,237,229,244,242,233,227,225,236,236,249,229,241,245,225,108,128,34,81,114,3,90,36,90,85,90,95,229,243,104,3,90,46,90,61,90,70,225,227,227,229,238,244,232,229,226,242,229,119,128,5,156,232,229,226,242,229,119,128,5,243,237,245,241,228,225,237,232,229,226,242,229,119,128,5,157,237,225,238,228,226,236,115,128,0,223,243,232,225,249,233,109,2,90,106,90,121,225,227,227,229,238,244,232,229,226,242,229,119,128,5,158,232,229,226,242,229,119,128,5,244,244,225,237,225,242,107,128,48,19,104,5,90,151,91,28,91,91,91,116,91,122,97,4,90,161,90,171,90,194,90,219,226,229,238,231,225,236,105,128,9,152,100,2,90,177,90,188,225,242,237,229,238,233,225,110,128,5,114,229,246,97,128,9,24,231,117,2,90,201,90,210,234,225,242,225,244,105,128,10,152,242,237,245,235,232,105,128,10,24,233,110,4,90,230,90,239,90,253,91,13,225,242,225,226,233,99,128,6,58,230,233,238,225,236,225,242,225,226,233,99,128,254,206,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,207,237,229,228,233,225,236,225,242,225,226,233,99,128,254,208,101,3,91,36,91,57,91,74,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,149,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,147,245,240,244,245,242,238,227,249,242,233,236,236,233,99,128,4,145,232,97,2,91,98,91,105,228,229,246,97,128,9,90,231,245,242,237,245,235,232,105,128,10,90,239,239,107,128,2,96,250,243,241,245,225,242,101,128,51,147,105,3,91,140,91,151,91,162,232,233,242,225,231,225,238,97,128,48,78,235,225,244,225,235,225,238,97,128,48,174,109,2,91,168,91,179,225,242,237,229,238,233,225,110,128,5,99,229,108,130,5,210,91,188,91,208,228,225,231,229,243,104,129,251,50,91,199,232,229,226,242,229,119,128,251,50,232,229,226,242,229,119,128,5,210,234,229,227,249,242,233,236,236,233,99,128,4,83,236,239,244,244,225,108,2,91,241,92,2,233,238,246,229,242,244,229,228,243,244,242,239,235,101,128,1,190,243,244,239,112,132,2,148,92,17,92,28,92,34,92,66,233,238,246,229,242,244,229,100,128,2,150,237,239,100,128,2,192,242,229,246,229,242,243,229,100,130,2,149,92,49,92,55,237,239,100,128,2,193,243,245,240,229,242,233,239,114,128,2,228,243,244,242,239,235,101,129,2,161,92,77,242,229,246,229,242,243,229,100,128,2,162,109,2,92,94,92,102,225,227,242,239,110,128,30,33,239,238,239,243,240,225,227,101,128,255,71,111,2,92,119,92,130,232,233,242,225,231,225,238,97,128,48,84,235,225,244,225,235,225,238,97,128,48,180,240,97,2,92,148,92,154,242,229,110,128,36,162,243,241,245,225,242,101,128,51,172,114,2,92,169,93,10,97,2,92,175,92,183,228,233,229,238,116,128,34,7,246,101,134,0,96,92,200,92,211,92,228,92,235,92,244,93,0,226,229,236,239,247,227,237,98,128,3,22,99,2,92,217,92,222,237,98,128,3,0,239,237,98,128,3,0,228,229,246,97,128,9,83,236,239,247,237,239,100,128,2,206,237,239,238,239,243,240,225,227,101,128,255,64,244,239,238,229,227,237,98,128,3,64,229,225,244,229,114,132,0,62,93,26,93,45,93,57,93,100,229,241,245,225,108,129,34,101,93,36,239,242,236,229,243,115,128,34,219,237,239,238,239,243,240,225,227,101,128,255,30,111,2,93,63,93,89,114,2,93,69,93,82,229,241,245,233,246,225,236,229,238,116,128,34,115,236,229,243,115,128,34,119,246,229,242,229,241,245,225,108,128,34,103,243,237,225,236,108,128,254,101,115,2,93,114,93,122,227,242,233,240,116,128,2,97,244,242,239,235,101,128,1,229,117,4,93,140,93,151,93,208,93,219,232,233,242,225,231,225,238,97,128,48,80,233,108,2,93,158,93,183,236,229,237,239,116,2,93,168,93,175,236,229,230,116,128,0,171,242,233,231,232,116,128,0,187,243,233,238,231,108,2,93,193,93,200,236,229,230,116,128,32,57,242,233,231,232,116,128,32,58,235,225,244,225,235,225,238,97,128,48,176,242,225,237,245,243,241,245,225,242,101,128,51,24,249,243,241,245,225,242,101,128,51,201,104,144,0,104,94,22,96,164,96,199,96,236,97,20,98,164,98,184,99,149,99,161,99,173,100,241,100,249,101,4,101,13,101,93,101,97,97,13,94,50,94,89,94,99,94,129,94,154,94,232,94,244,95,13,95,28,95,57,95,70,95,128,95,137,97,2,94,56,94,75,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,169,236,244,239,238,229,225,242,225,226,233,99,128,6,193,226,229,238,231,225,236,105,128,9,185,228,101,2,94,106,94,124,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,179,246,97,128,9,57,231,117,2,94,136,94,145,234,225,242,225,244,105,128,10,185,242,237,245,235,232,105,128,10,57,104,4,94,164,94,173,94,187,94,217,225,242,225,226,233,99,128,6,45,230,233,238,225,236,225,242,225,226,233,99,128,254,162,105,2,94,193,94,208,238,233,244,233,225,236,225,242,225,226,233,99,128,254,163,242,225,231,225,238,97,128,48,111,237,229,228,233,225,236,225,242,225,226,233,99,128,254,164,233,244,245,243,241,245,225,242,101,128,51,42,235,225,244,225,235,225,238,97,129,48,207,95,1,232,225,236,230,247,233,228,244,104,128,255,138,236,225,238,244,231,245,242,237,245,235,232,105,128,10,77,237,250,97,2,95,36,95,45,225,242,225,226,233,99,128,6,33,236,239,247,225,242,225,226,233,99,128,6,33,238,231,245,236,230,233,236,236,229,114,128,49,100,114,2,95,76,95,92,228,243,233,231,238,227,249,242,233,236,236,233,99,128,4,74,240,239,239,110,2,95,101,95,114,236,229,230,244,226,225,242,226,245,112,128,33,188,242,233,231,232,244,226,225,242,226,245,112,128,33,192,243,241,245,225,242,101,128,51,202,244,225,102,3,95,147,95,239,96,74,240,225,244,225,104,134,5,178,95,167,95,172,95,186,95,195,95,210,95,226,177,54,128,5,178,50,2,95,178,95,182,51,128,5,178,102,128,5,178,232,229,226,242,229,119,128,5,178,238,225,242,242,239,247,232,229,226,242,229,119,128,5,178,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,178,247,233,228,229,232,229,226,242,229,119,128,5,178,241,225,237,225,244,115,135,5,179,96,6,96,11,96,16,96,21,96,30,96,45,96,61,177,98,128,5,179,178,56,128,5,179,179,52,128,5,179,232,229,226,242,229,119,128,5,179,238,225,242,242,239,247,232,229,226,242,229,119,128,5,179,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,179,247,233,228,229,232,229,226,242,229,119,128,5,179,243,229,231,239,108,135,5,177,96,96,96,101,96,106,96,111,96,120,96,135,96,151,177,55,128,5,177,178,52,128,5,177,179,48,128,5,177,232,229,226,242,229,119,128,5,177,238,225,242,242,239,247,232,229,226,242,229,119,128,5,177,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,177,247,233,228,229,232,229,226,242,229,119,128,5,177,98,3,96,172,96,177,96,187,225,114,128,1,39,239,240,239,237,239,230,111,128,49,15,242,229,246,229,226,229,236,239,119,128,30,43,99,2,96,205,96,214,229,228,233,236,236,97,128,30,41,233,242,99,2,96,222,96,227,236,101,128,36,215,245,237,230,236,229,120,128,1,37,100,2,96,242,96,252,233,229,242,229,243,233,115,128,30,39,239,116,2,97,3,97,12,225,227,227,229,238,116,128,30,35,226,229,236,239,119,128,30,37,101,136,5,212,97,40,97,73,97,93,98,66,98,82,98,127,98,136,98,149,225,242,116,129,38,101,97,48,243,245,233,116,2,97,57,97,65,226,236,225,227,107,128,38,101,247,232,233,244,101,128,38,97,228,225,231,229,243,104,129,251,52,97,84,232,229,226,242,229,119,128,251,52,104,6,97,107,97,135,97,143,97,193,97,239,98,32,97,2,97,113,97,127,236,244,239,238,229,225,242,225,226,233,99,128,6,193,242,225,226,233,99,128,6,71,229,226,242,229,119,128,5,212,230,233,238,225,236,97,2,97,154,97,185,236,116,2,97,161,97,173,239,238,229,225,242,225,226,233,99,128,251,167,244,247,239,225,242,225,226,233,99,128,254,234,242,225,226,233,99,128,254,234,232,225,237,250,225,225,226,239,246,101,2,97,208,97,222,230,233,238,225,236,225,242,225,226,233,99,128,251,165,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,251,164,105,2,97,245,98,23,238,233,244,233,225,236,97,2,98,1,98,15,236,244,239,238,229,225,242,225,226,233,99,128,251,168,242,225,226,233,99,128,254,235,242,225,231,225,238,97,128,48,120,237,229,228,233,225,236,97,2,98,44,98,58,236,244,239,238,229,225,242,225,226,233,99,128,251,169,242,225,226,233,99,128,254,236,233,243,229,233,229,242,225,243,241,245,225,242,101,128,51,123,107,2,98,88,98,112,225,244,225,235,225,238,97,129,48,216,98,100,232,225,236,230,247,233,228,244,104,128,255,141,245,244,225,225,242,245,243,241,245,225,242,101,128,51,54,238,231,232,239,239,107,128,2,103,242,245,244,245,243,241,245,225,242,101,128,51,57,116,129,5,215,98,155,232,229,226,242,229,119,128,5,215,232,239,239,107,129,2,102,98,173,243,245,240,229,242,233,239,114,128,2,177,105,4,98,194,99,23,99,34,99,59,229,245,104,4,98,206,98,241,99,0,99,9,97,2,98,212,98,227,227,233,242,227,236,229,235,239,242,229,225,110,128,50,123,240,225,242,229,238,235,239,242,229,225,110,128,50,27,227,233,242,227,236,229,235,239,242,229,225,110,128,50,109,235,239,242,229,225,110,128,49,78,240,225,242,229,238,235,239,242,229,225,110,128,50,13,232,233,242,225,231,225,238,97,128,48,114,235,225,244,225,235,225,238,97,129,48,210,99,47,232,225,236,230,247,233,228,244,104,128,255,139,242,233,113,134,5,180,99,77,99,82,99,96,99,105,99,120,99,136,177,52,128,5,180,50,2,99,88,99,92,49,128,5,180,100,128,5,180,232,229,226,242,229,119,128,5,180,238,225,242,242,239,247,232,229,226,242,229,119,128,5,180,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,180,247,233,228,229,232,229,226,242,229,119,128,5,180,236,233,238,229,226,229,236,239,119,128,30,150,237,239,238,239,243,240,225,227,101,128,255,72,111,9,99,193,99,204,99,228,99,253,100,85,100,98,100,184,100,224,100,235,225,242,237,229,238,233,225,110,128,5,112,232,105,2,99,211,99,219,240,244,232,225,105,128,14,43,242,225,231,225,238,97,128,48,123,235,225,244,225,235,225,238,97,129,48,219,99,241,232,225,236,230,247,233,228,244,104,128,255,142,236,225,109,135,5,185,100,17,100,22,100,27,100,32,100,41,100,56,100,72,177,57,128,5,185,178,54,128,5,185,179,50,128,5,185,232,229,226,242,229,119,128,5,185,238,225,242,242,239,247,232,229,226,242,229,119,128,5,185,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,185,247,233,228,229,232,229,226,242,229,119,128,5,185,238,239,235,232,245,235,244,232,225,105,128,14,46,111,2,100,104,100,174,107,4,100,114,100,126,100,132,100,154,225,226,239,246,229,227,239,237,98,128,3,9,227,237,98,128,3,9,240,225,236,225,244,225,236,233,250,229,228,226,229,236,239,247,227,237,98,128,3,33,242,229,244,242,239,230,236,229,248,226,229,236,239,247,227,237,98,128,3,34,238,243,241,245,225,242,101,128,51,66,114,2,100,190,100,217,105,2,100,196,100,205,227,239,240,244,233,99,128,3,233,250,239,238,244,225,236,226,225,114,128,32,21,238,227,237,98,128,3,27,244,243,240,242,233,238,231,115,128,38,104,245,243,101,128,35,2,240,225,242,229,110,128,36,163,243,245,240,229,242,233,239,114,128,2,176,244,245,242,238,229,100,128,2,101,117,4,101,23,101,34,101,47,101,72,232,233,242,225,231,225,238,97,128,48,117,233,233,244,239,243,241,245,225,242,101,128,51,51,235,225,244,225,235,225,238,97,129,48,213,101,60,232,225,236,230,247,233,228,244,104,128,255,140,238,231,225,242,245,237,236,225,245,116,129,2,221,101,87,227,237,98,128,3,11,118,128,1,149,249,240,232,229,110,132,0,45,101,113,101,124,101,136,101,159,233,238,230,229,242,233,239,114,128,246,229,237,239,238,239,243,240,225,227,101,128,255,13,115,2,101,142,101,149,237,225,236,108,128,254,99,245,240,229,242,233,239,114,128,246,230,244,247,111,128,32,16,105,149,0,105,101,211,101,234,102,12,102,59,105,197,106,61,106,98,106,125,107,31,107,35,107,73,107,95,107,179,108,88,108,163,108,171,108,184,109,15,109,72,109,100,109,144,225,99,2,101,218,101,224,245,244,101,128,0,237,249,242,233,236,236,233,99,128,4,79,98,3,101,242,101,251,102,5,229,238,231,225,236,105,128,9,135,239,240,239,237,239,230,111,128,49,39,242,229,246,101,128,1,45,99,3,102,20,102,27,102,49,225,242,239,110,128,1,208,233,242,99,2,102,35,102,40,236,101,128,36,216,245,237,230,236,229,120,128,0,238,249,242,233,236,236,233,99,128,4,86,100,4,102,69,102,79,105,154,105,187,226,236,231,242,225,246,101,128,2,9,101,2,102,85,105,149,239,231,242,225,240,104,7,102,106,102,120,102,133,105,62,105,93,105,106,105,118,229,225,242,244,232,227,233,242,227,236,101,128,50,143,230,233,242,229,227,233,242,227,236,101,128,50,139,233,99,14,102,164,102,180,103,23,103,77,103,143,103,172,103,188,103,245,104,38,104,50,104,77,104,144,105,26,105,55,225,236,236,233,225,238,227,229,240,225,242,229,110,128,50,63,99,4,102,190,102,201,102,215,102,222,225,236,236,240,225,242,229,110,128,50,58,229,238,244,242,229,227,233,242,227,236,101,128,50,165,236,239,243,101,128,48,6,111,3,102,230,102,245,103,9,237,237,97,129,48,1,102,238,236,229,230,116,128,255,100,238,231,242,225,244,245,236,225,244,233,239,238,240,225,242,229,110,128,50,55,242,242,229,227,244,227,233,242,227,236,101,128,50,163,101,3,103,31,103,43,103,60,225,242,244,232,240,225,242,229,110,128,50,47,238,244,229,242,240,242,233,243,229,240,225,242,229,110,128,50,61,248,227,229,236,236,229,238,244,227,233,242,227,236,101,128,50,157,102,2,103,83,103,98,229,243,244,233,246,225,236,240,225,242,229,110,128,50,64,105,2,103,104,103,133,238,225,238,227,233,225,108,2,103,116,103,125,227,233,242,227,236,101,128,50,150,240,225,242,229,110,128,50,54,242,229,240,225,242,229,110,128,50,43,104,2,103,149,103,160,225,246,229,240,225,242,229,110,128,50,50,233,231,232,227,233,242,227,236,101,128,50,164,233,244,229,242,225,244,233,239,238,237,225,242,107,128,48,5,108,3,103,196,103,222,103,234,225,226,239,114,2,103,205,103,214,227,233,242,227,236,101,128,50,152,240,225,242,229,110,128,50,56,229,230,244,227,233,242,227,236,101,128,50,167,239,247,227,233,242,227,236,101,128,50,166,109,2,103,251,104,27,101,2,104,1,104,16,228,233,227,233,238,229,227,233,242,227,236,101,128,50,169,244,225,236,240,225,242,229,110,128,50,46,239,239,238,240,225,242,229,110,128,50,42,238,225,237,229,240,225,242,229,110,128,50,52,112,2,104,56,104,64,229,242,233,239,100,128,48,2,242,233,238,244,227,233,242,227,236,101,128,50,158,114,2,104,83,104,131,101,3,104,91,104,102,104,117,225,227,232,240,225,242,229,110,128,50,67,240,242,229,243,229,238,244,240,225,242,229,110,128,50,57,243,239,245,242,227,229,240,225,242,229,110,128,50,62,233,231,232,244,227,233,242,227,236,101,128,50,168,115,5,104,156,104,185,104,199,104,224,104,252,101,2,104,162,104,175,227,242,229,244,227,233,242,227,236,101,128,50,153,236,230,240,225,242,229,110,128,50,66,239,227,233,229,244,249,240,225,242,229,110,128,50,51,112,2,104,205,104,211,225,227,101,128,48,0,229,227,233,225,236,240,225,242,229,110,128,50,53,116,2,104,230,104,241,239,227,235,240,225,242,229,110,128,50,49,245,228,249,240,225,242,229,110,128,50,59,117,2,105,2,105,11,238,240,225,242,229,110,128,50,48,240,229,242,246,233,243,229,240,225,242,229,110,128,50,60,119,2,105,32,105,44,225,244,229,242,240,225,242,229,110,128,50,44,239,239,228,240,225,242,229,110,128,50,45,250,229,242,111,128,48,7,109,2,105,68,105,81,229,244,225,236,227,233,242,227,236,101,128,50,142,239,239,238,227,233,242,227,236,101,128,50,138,238,225,237,229,227,233,242,227,236,101,128,50,148,243,245,238,227,233,242,227,236,101,128,50,144,119,2,105,124,105,137,225,244,229,242,227,233,242,227,236,101,128,50,140,239,239,228,227,233,242,227,236,101,128,50,141,246,97,128,9,7,233,229,242,229,243,233,115,130,0,239,105,168,105,176,225,227,245,244,101,128,30,47,227,249,242,233,236,236,233,99,128,4,229,239,244,226,229,236,239,119,128,30,203,101,3,105,205,105,221,105,232,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,215,227,249,242,233,236,236,233,99,128,4,53,245,238,103,4,105,244,106,23,106,38,106,47,97,2,105,250,106,9,227,233,242,227,236,229,235,239,242,229,225,110,128,50,117,240,225,242,229,238,235,239,242,229,225,110,128,50,21,227,233,242,227,236,229,235,239,242,229,225,110,128,50,103,235,239,242,229,225,110,128,49,71,240,225,242,229,238,235,239,242,229,225,110,128,50,7,103,2,106,67,106,74,242,225,246,101,128,0,236,117,2,106,80,106,89,234,225,242,225,244,105,128,10,135,242,237,245,235,232,105,128,10,7,104,2,106,104,106,114,233,242,225,231,225,238,97,128,48,68,239,239,235,225,226,239,246,101,128,30,201,105,8,106,143,106,153,106,164,106,171,106,196,106,212,106,227,106,243,226,229,238,231,225,236,105,128,9,136,227,249,242,233,236,236,233,99,128,4,56,228,229,246,97,128,9,8,231,117,2,106,178,106,187,234,225,242,225,244,105,128,10,136,242,237,245,235,232,105,128,10,8,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,64,238,246,229,242,244,229,228,226,242,229,246,101,128,2,11,243,232,239,242,244,227,249,242,233,236,236,233,99,128,4,57,246,239,247,229,236,243,233,231,110,3,107,3,107,13,107,20,226,229,238,231,225,236,105,128,9,192,228,229,246,97,128,9,64,231,245,234,225,242,225,244,105,128,10,192,106,128,1,51,107,2,107,41,107,65,225,244,225,235,225,238,97,129,48,164,107,53,232,225,236,230,247,233,228,244,104,128,255,114,239,242,229,225,110,128,49,99,108,2,107,79,107,84,228,101,128,2,220,245,249,232,229,226,242,229,119,128,5,172,109,2,107,101,107,168,97,3,107,109,107,129,107,154,227,242,239,110,129,1,43,107,118,227,249,242,233,236,236,233,99,128,4,227,231,229,239,242,225,240,240,242,239,248,233,237,225,244,229,236,249,229,241,245,225,108,128,34,83,244,242,225,231,245,242,237,245,235,232,105,128,10,63,239,238,239,243,240,225,227,101,128,255,73,110,5,107,191,107,201,107,210,107,222,108,50,227,242,229,237,229,238,116,128,34,6,230,233,238,233,244,121,128,34,30,233,225,242,237,229,238,233,225,110,128,5,107,116,2,107,228,108,40,101,2,107,234,108,29,231,242,225,108,131,34,43,107,247,108,9,108,14,98,2,107,253,108,5,239,244,244,239,109,128,35,33,116,128,35,33,229,120,128,248,245,116,2,108,20,108,25,239,112,128,35,32,112,128,35,32,242,243,229,227,244,233,239,110,128,34,41,233,243,241,245,225,242,101,128,51,5,118,3,108,58,108,67,108,76,226,245,236,236,229,116,128,37,216,227,233,242,227,236,101,128,37,217,243,237,233,236,229,230,225,227,101,128,38,59,111,3,108,96,108,107,108,115,227,249,242,233,236,236,233,99,128,4,81,231,239,238,229,107,128,1,47,244,97,131,3,185,108,126,108,147,108,155,228,233,229,242,229,243,233,115,129,3,202,108,139,244,239,238,239,115,128,3,144,236,225,244,233,110,128,2,105,244,239,238,239,115,128,3,175,240,225,242,229,110,128,36,164,242,233,231,245,242,237,245,235,232,105,128,10,114,115,4,108,194,108,239,108,253,109,5,237,225,236,108,2,108,203,108,214,232,233,242,225,231,225,238,97,128,48,67,235,225,244,225,235,225,238,97,129,48,163,108,227,232,225,236,230,247,233,228,244,104,128,255,104,243,232,225,242,226,229,238,231,225,236,105,128,9,250,244,242,239,235,101,128,2,104,245,240,229,242,233,239,114,128,246,237,116,2,109,21,109,55,229,242,225,244,233,239,110,2,109,33,109,44,232,233,242,225,231,225,238,97,128,48,157,235,225,244,225,235,225,238,97,128,48,253,233,236,228,101,129,1,41,109,64,226,229,236,239,119,128,30,45,117,2,109,78,109,89,226,239,240,239,237,239,230,111,128,49,41,227,249,242,233,236,236,233,99,128,4,78,246,239,247,229,236,243,233,231,110,3,109,116,109,126,109,133,226,229,238,231,225,236,105,128,9,191,228,229,246,97,128,9,63,231,245,234,225,242,225,244,105,128,10,191,250,232,233,244,243,97,2,109,155,109,166,227,249,242,233,236,236,233,99,128,4,117,228,226,236,231,242,225,246,229,227,249,242,233,236,236,233,99,128,4,119,106,138,0,106,109,209,110,16,110,27,110,77,110,93,110,206,111,19,111,24,111,36,111,44,97,4,109,219,109,230,109,240,109,247,225,242,237,229,238,233,225,110,128,5,113,226,229,238,231,225,236,105,128,9,156,228,229,246,97,128,9,28,231,117,2,109,254,110,7,234,225,242,225,244,105,128,10,156,242,237,245,235,232,105,128,10,28,226,239,240,239,237,239,230,111,128,49,16,99,3,110,35,110,42,110,64,225,242,239,110,128,1,240,233,242,99,2,110,50,110,55,236,101,128,36,217,245,237,230,236,229,120,128,1,53,242,239,243,243,229,228,244,225,233,108,128,2,157,228,239,244,236,229,243,243,243,244,242,239,235,101,128,2,95,101,3,110,101,110,112,110,177,227,249,242,233,236,236,233,99,128,4,88,229,109,4,110,123,110,132,110,146,110,162,225,242,225,226,233,99,128,6,44,230,233,238,225,236,225,242,225,226,233,99,128,254,158,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,159,237,229,228,233,225,236,225,242,225,226,233,99,128,254,160,104,2,110,183,110,192,225,242,225,226,233,99,128,6,152,230,233,238,225,236,225,242,225,226,233,99,128,251,139,104,2,110,212,111,6,97,3,110,220,110,230,110,237,226,229,238,231,225,236,105,128,9,157,228,229,246,97,128,9,29,231,117,2,110,244,110,253,234,225,242,225,244,105,128,10,157,242,237,245,235,232,105,128,10,29,229,232,225,242,237,229,238,233,225,110,128,5,123,233,115,128,48,4,237,239,238,239,243,240,225,227,101,128,255,74,240,225,242,229,110,128,36,165,243,245,240,229,242,233,239,114,128,2,178,107,146,0,107,111,95,113,184,113,195,114,1,114,12,114,102,114,116,115,224,116,164,116,177,116,203,116,252,117,134,117,156,117,169,117,192,117,234,117,244,97,12,111,121,111,153,111,175,111,205,112,63,112,88,112,118,112,143,112,249,113,7,113,130,113,159],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+30720);allocate([98,2,111,127,111,144,225,243,232,235,233,242,227,249,242,233,236,236,233,99,128,4,161,229,238,231,225,236,105,128,9,149,99,2,111,159,111,165,245,244,101,128,30,49,249,242,233,236,236,233,99,128,4,58,228,101,2,111,182,111,200,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,155,246,97,128,9,21,102,135,5,219,111,223,111,232,111,252,112,10,112,19,112,35,112,50,225,242,225,226,233,99,128,6,67,228,225,231,229,243,104,129,251,59,111,243,232,229,226,242,229,119,128,251,59,230,233,238,225,236,225,242,225,226,233,99,128,254,218,232,229,226,242,229,119,128,5,219,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,219,237,229,228,233,225,236,225,242,225,226,233,99,128,254,220,242,225,230,229,232,229,226,242,229,119,128,251,77,231,117,2,112,70,112,79,234,225,242,225,244,105,128,10,149,242,237,245,235,232,105,128,10,21,104,2,112,94,112,104,233,242,225,231,225,238,97,128,48,75,239,239,235,227,249,242,233,236,236,233,99,128,4,196,235,225,244,225,235,225,238,97,129,48,171,112,131,232,225,236,230,247,233,228,244,104,128,255,118,112,2,112,149,112,170,240,97,129,3,186,112,156,243,249,237,226,239,236,231,242,229,229,107,128,3,240,249,229,239,245,110,3,112,182,112,196,112,230,237,233,229,245,237,235,239,242,229,225,110,128,49,113,112,2,112,202,112,217,232,233,229,245,240,232,235,239,242,229,225,110,128,49,132,233,229,245,240,235,239,242,229,225,110,128,49,120,243,243,225,238,231,240,233,229,245,240,235,239,242,229,225,110,128,49,121,242,239,242,233,233,243,241,245,225,242,101,128,51,13,115,5,113,19,113,63,113,78,113,86,113,114,232,233,228,225,225,245,244,111,2,113,32,113,41,225,242,225,226,233,99,128,6,64,238,239,243,233,228,229,226,229,225,242,233,238,231,225,242,225,226,233,99,128,6,64,237,225,236,236,235,225,244,225,235,225,238,97,128,48,245,241,245,225,242,101,128,51,132,242,97,2,113,93,113,102,225,242,225,226,233,99,128,6,80,244,225,238,225,242,225,226,233,99,128,6,77,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,159,244,225,232,233,242,225,240,242,239,236,239,238,231,237,225,242,235,232,225,236,230,247,233,228,244,104,128,255,112,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,157,226,239,240,239,237,239,230,111,128,49,14,99,4,113,205,113,227,113,236,113,244,97,2,113,211,113,221,236,243,241,245,225,242,101,128,51,137,242,239,110,128,1,233,229,228,233,236,236,97,128,1,55,233,242,227,236,101,128,36,218,239,237,237,225,225,227,227,229,238,116,128,1,55,228,239,244,226,229,236,239,119,128,30,51,101,4,114,22,114,49,114,74,114,86,104,2,114,28,114,39,225,242,237,229,238,233,225,110,128,5,132,233,242,225,231,225,238,97,128,48,81,235,225,244,225,235,225,238,97,129,48,177,114,62,232,225,236,230,247,233,228,244,104,128,255,121,238,225,242,237,229,238,233,225,110,128,5,111,243,237,225,236,236,235,225,244,225,235,225,238,97,128,48,246,231,242,229,229,238,236,225,238,228,233,99,128,1,56,104,6,114,130,115,3,115,14,115,39,115,126,115,214,97,5,114,142,114,152,114,163,114,170,114,195,226,229,238,231,225,236,105,128,9,150,227,249,242,233,236,236,233,99,128,4,69,228,229,246,97,128,9,22,231,117,2,114,177,114,186,234,225,242,225,244,105,128,10,150,242,237,245,235,232,105,128,10,22,104,4,114,205,114,214,114,228,114,244,225,242,225,226,233,99,128,6,46,230,233,238,225,236,225,242,225,226,233,99,128,254,166,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,167,237,229,228,233,225,236,225,242,225,226,233,99,128,254,168,229,233,227,239,240,244,233,99,128,3,231,232,97,2,115,21,115,28,228,229,246,97,128,9,89,231,245,242,237,245,235,232,105,128,10,89,233,229,245,235,104,4,115,53,115,88,115,103,115,112,97,2,115,59,115,74,227,233,242,227,236,229,235,239,242,229,225,110,128,50,120,240,225,242,229,238,235,239,242,229,225,110,128,50,24,227,233,242,227,236,229,235,239,242,229,225,110,128,50,106,235,239,242,229,225,110,128,49,75,240,225,242,229,238,235,239,242,229,225,110,128,50,10,111,4,115,136,115,185,115,195,115,200,235,104,4,115,147,115,156,115,165,115,175,225,233,244,232,225,105,128,14,2,239,238,244,232,225,105,128,14,5,245,225,244,244,232,225,105,128,14,3,247,225,233,244,232,225,105,128,14,4,237,245,244,244,232,225,105,128,14,91,239,107,128,1,153,242,225,235,232,225,238,231,244,232,225,105,128,14,6,250,243,241,245,225,242,101,128,51,145,105,4,115,234,115,245,116,14,116,63,232,233,242,225,231,225,238,97,128,48,77,235,225,244,225,235,225,238,97,129,48,173,116,2,232,225,236,230,247,233,228,244,104,128,255,119,242,111,3,116,23,116,38,116,54,231,245,242,225,237,245,243,241,245,225,242,101,128,51,21,237,229,229,244,239,242,245,243,241,245,225,242,101,128,51,22,243,241,245,225,242,101,128,51,20,249,229,239,107,5,116,78,116,113,116,128,116,137,116,151,97,2,116,84,116,99,227,233,242,227,236,229,235,239,242,229,225,110,128,50,110,240,225,242,229,238,235,239,242,229,225,110,128,50,14,227,233,242,227,236,229,235,239,242,229,225,110,128,50,96,235,239,242,229,225,110,128,49,49,240,225,242,229,238,235,239,242,229,225,110,128,50,0,243,233,239,243,235,239,242,229,225,110,128,49,51,234,229,227,249,242,233,236,236,233,99,128,4,92,108,2,116,183,116,194,233,238,229,226,229,236,239,119,128,30,53,243,241,245,225,242,101,128,51,152,109,3,116,211,116,225,116,236,227,245,226,229,228,243,241,245,225,242,101,128,51,166,239,238,239,243,240,225,227,101,128,255,75,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,162,111,5,117,8,117,34,117,72,117,84,117,98,104,2,117,14,117,24,233,242,225,231,225,238,97,128,48,83,237,243,241,245,225,242,101,128,51,192,235,97,2,117,41,117,49,233,244,232,225,105,128,14,1,244,225,235,225,238,97,129,48,179,117,60,232,225,236,230,247,233,228,244,104,128,255,122,239,240,239,243,241,245,225,242,101,128,51,30,240,240,225,227,249,242,233,236,236,233,99,128,4,129,114,2,117,104,117,124,229,225,238,243,244,225,238,228,225,242,228,243,249,237,226,239,108,128,50,127,239,238,233,243,227,237,98,128,3,67,240,97,2,117,141,117,147,242,229,110,128,36,166,243,241,245,225,242,101,128,51,170,243,233,227,249,242,233,236,236,233,99,128,4,111,116,2,117,175,117,184,243,241,245,225,242,101,128,51,207,245,242,238,229,100,128,2,158,117,2,117,198,117,209,232,233,242,225,231,225,238,97,128,48,79,235,225,244,225,235,225,238,97,129,48,175,117,222,232,225,236,230,247,233,228,244,104,128,255,120,246,243,241,245,225,242,101,128,51,184,247,243,241,245,225,242,101,128,51,190,108,146,0,108,118,38,120,65,120,94,120,160,120,198,121,94,121,103,121,119,121,143,121,161,122,23,122,64,122,199,122,207,122,240,122,249,123,1,123,63,97,7,118,54,118,64,118,71,118,78,118,103,118,119,120,53,226,229,238,231,225,236,105,128,9,178,227,245,244,101,128,1,58,228,229,246,97,128,9,50,231,117,2,118,85,118,94,234,225,242,225,244,105,128,10,178,242,237,245,235,232,105,128,10,50,235,235,232,225,238,231,249,225,239,244,232,225,105,128,14,69,109,10,118,141,119,80,119,97,119,135,119,149,119,168,119,184,119,204,119,224,119,247,97,2,118,147,119,72,236,229,102,4,118,159,118,173,119,9,119,26,230,233,238,225,236,225,242,225,226,233,99,128,254,252,232,225,237,250,97,2,118,183,118,224,225,226,239,246,101,2,118,193,118,207,230,233,238,225,236,225,242,225,226,233,99,128,254,248,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,247,226,229,236,239,119,2,118,234,118,248,230,233,238,225,236,225,242,225,226,233,99,128,254,250,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,249,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,251,237,225,228,228,225,225,226,239,246,101,2,119,41,119,55,230,233,238,225,236,225,242,225,226,233,99,128,254,246,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,245,242,225,226,233,99,128,6,68,226,228,97,129,3,187,119,88,243,244,242,239,235,101,128,1,155,229,100,130,5,220,119,106,119,126,228,225,231,229,243,104,129,251,60,119,117,232,229,226,242,229,119,128,251,60,232,229,226,242,229,119,128,5,220,230,233,238,225,236,225,242,225,226,233,99,128,254,222,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,202,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,223,234,229,229,237,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,201,235,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,203,236,225,237,232,229,232,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,253,242,237,101,2,119,254,120,11,228,233,225,236,225,242,225,226,233,99,128,254,224,229,109,2,120,18,120,37,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,253,136,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,204,242,231,229,227,233,242,227,236,101,128,37,239,98,3,120,73,120,78,120,84,225,114,128,1,154,229,236,116,128,2,108,239,240,239,237,239,230,111,128,49,12,99,4,120,104,120,111,120,120,120,147,225,242,239,110,128,1,62,229,228,233,236,236,97,128,1,60,233,242,99,2,120,128,120,133,236,101,128,36,219,245,237,230,236,229,248,226,229,236,239,119,128,30,61,239,237,237,225,225,227,227,229,238,116,128,1,60,228,239,116,130,1,64,120,170,120,179,225,227,227,229,238,116,128,1,64,226,229,236,239,119,129,30,55,120,189,237,225,227,242,239,110,128,30,57,101,3,120,206,120,244,121,89,230,116,2,120,213,120,229,225,238,231,236,229,225,226,239,246,229,227,237,98,128,3,26,244,225,227,235,226,229,236,239,247,227,237,98,128,3,24,243,115,132,0,60,121,1,121,23,121,35,121,81,229,241,245,225,108,129,34,100,121,11,239,242,231,242,229,225,244,229,114,128,34,218,237,239,238,239,243,240,225,227,101,128,255,28,111,2,121,41,121,70,114,2,121,47,121,60,229,241,245,233,246,225,236,229,238,116,128,34,114,231,242,229,225,244,229,114,128,34,118,246,229,242,229,241,245,225,108,128,34,102,243,237,225,236,108,128,254,100,250,104,128,2,110,230,226,236,239,227,107,128,37,140,232,239,239,235,242,229,244,242,239,230,236,229,120,128,2,109,105,2,121,125,121,130,242,97,128,32,164,247,238,225,242,237,229,238,233,225,110,128,5,108,106,129,1,201,121,149,229,227,249,242,233,236,236,233,99,128,4,89,108,132,246,192,121,173,121,197,121,208,121,217,97,2,121,179,121,186,228,229,246,97,128,9,51,231,245,234,225,242,225,244,105,128,10,179,233,238,229,226,229,236,239,119,128,30,59,236,225,228,229,246,97,128,9,52,246,239,227,225,236,233,99,3,121,231,121,241,121,248,226,229,238,231,225,236,105,128,9,225,228,229,246,97,128,9,97,246,239,247,229,236,243,233,231,110,2,122,6,122,16,226,229,238,231,225,236,105,128,9,227,228,229,246,97,128,9,99,109,3,122,31,122,44,122,55,233,228,228,236,229,244,233,236,228,101,128,2,107,239,238,239,243,240,225,227,101,128,255,76,243,241,245,225,242,101,128,51,208,111,6,122,78,122,90,122,132,122,143,122,149,122,191,227,232,245,236,225,244,232,225,105,128,14,44,231,233,227,225,108,3,122,102,122,108,122,127,225,238,100,128,34,39,238,239,116,129,0,172,122,116,242,229,246,229,242,243,229,100,128,35,16,239,114,128,34,40,236,233,238,231,244,232,225,105,128,14,37,238,231,115,128,1,127,247,236,233,238,101,2,122,159,122,182,99,2,122,165,122,177,229,238,244,229,242,236,233,238,101,128,254,78,237,98,128,3,50,228,225,243,232,229,100,128,254,77,250,229,238,231,101,128,37,202,240,225,242,229,110,128,36,167,115,3,122,215,122,222,122,230,236,225,243,104,128,1,66,241,245,225,242,101,128,33,19,245,240,229,242,233,239,114,128,246,238,244,243,232,225,228,101,128,37,145,245,244,232,225,105,128,14,38,246,239,227,225,236,233,99,3,123,15,123,25,123,32,226,229,238,231,225,236,105,128,9,140,228,229,246,97,128,9,12,246,239,247,229,236,243,233,231,110,2,123,46,123,56,226,229,238,231,225,236,105,128,9,226,228,229,246,97,128,9,98,248,243,241,245,225,242,101,128,51,211,109,144,0,109,123,109,125,218,125,243,126,14,126,39,127,92,127,114,128,169,128,199,128,248,129,99,129,121,129,146,129,155,130,182,130,210,97,12,123,135,123,145,123,209,123,216,123,241,124,33,125,125,125,150,125,155,125,169,125,181,125,186,226,229,238,231,225,236,105,128,9,174,99,2,123,151,123,203,242,239,110,132,0,175,123,165,123,176,123,182,123,191,226,229,236,239,247,227,237,98,128,3,49,227,237,98,128,3,4,236,239,247,237,239,100,128,2,205,237,239,238,239,243,240,225,227,101,128,255,227,245,244,101,128,30,63,228,229,246,97,128,9,46,231,117,2,123,223,123,232,234,225,242,225,244,105,128,10,174,242,237,245,235,232,105,128,10,46,104,2,123,247,124,23,225,240,225,235,104,2,124,1,124,10,232,229,226,242,229,119,128,5,164,236,229,230,244,232,229,226,242,229,119,128,5,164,233,242,225,231,225,238,97,128,48,126,105,5,124,45,124,114,124,177,124,207,125,113,227,232,225,244,244,225,247,97,3,124,60,124,91,124,98,236,239,119,2,124,68,124,79,236,229,230,244,244,232,225,105,128,248,149,242,233,231,232,244,244,232,225,105,128,248,148,244,232,225,105,128,14,75,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,147,229,107,3,124,123,124,154,124,161,236,239,119,2,124,131,124,142,236,229,230,244,244,232,225,105,128,248,140,242,233,231,232,244,244,232,225,105,128,248,139,244,232,225,105,128,14,72,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,138,232,225,238,225,235,225,116,2,124,189,124,200,236,229,230,244,244,232,225,105,128,248,132,244,232,225,105,128,14,49,116,3,124,215,124,243,125,50,225,233,235,232,117,2,124,225,124,236,236,229,230,244,244,232,225,105,128,248,137,244,232,225,105,128,14,71,232,111,3,124,252,125,27,125,34,236,239,119,2,125,4,125,15,236,229,230,244,244,232,225,105,128,248,143,242,233,231,232,244,244,232,225,105,128,248,142,244,232,225,105,128,14,73,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,141,242,105,3,125,59,125,90,125,97,236,239,119,2,125,67,125,78,236,229,230,244,244,232,225,105,128,248,146,242,233,231,232,244,244,232,225,105,128,248,145,244,232,225,105,128,14,74,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,144,249,225,237,239,235,244,232,225,105,128,14,70,235,225,244,225,235,225,238,97,129,48,222,125,138,232,225,236,230,247,233,228,244,104,128,255,143,236,101,128,38,66,238,243,249,239,238,243,241,245,225,242,101,128,51,71,241,225,230,232,229,226,242,229,119,128,5,190,242,115,128,38,66,115,2,125,192,125,210,239,242,225,227,233,242,227,236,229,232,229,226,242,229,119,128,5,175,241,245,225,242,101,128,51,131,98,2,125,224,125,234,239,240,239,237,239,230,111,128,49,7,243,241,245,225,242,101,128,51,212,99,2,125,249,126,1,233,242,227,236,101,128,36,220,245,226,229,228,243,241,245,225,242,101,128,51,165,228,239,116,2,126,22,126,31,225,227,227,229,238,116,128,30,65,226,229,236,239,119,128,30,67,101,7,126,55,126,182,126,193,126,208,126,233,127,14,127,26,101,2,126,61,126,169,109,4,126,71,126,80,126,94,126,110,225,242,225,226,233,99,128,6,69,230,233,238,225,236,225,242,225,226,233,99,128,254,226,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,227,237,101,2,126,117,126,130,228,233,225,236,225,242,225,226,233,99,128,254,228,229,237,105,2,126,138,126,153,238,233,244,233,225,236,225,242,225,226,233,99,128,252,209,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,72,244,239,242,245,243,241,245,225,242,101,128,51,77,232,233,242,225,231,225,238,97,128,48,129,233,250,233,229,242,225,243,241,245,225,242,101,128,51,126,235,225,244,225,235,225,238,97,129,48,225,126,221,232,225,236,230,247,233,228,244,104,128,255,146,109,130,5,222,126,241,127,5,228,225,231,229,243,104,129,251,62,126,252,232,229,226,242,229,119,128,251,62,232,229,226,242,229,119,128,5,222,238,225,242,237,229,238,233,225,110,128,5,116,242,235,232,97,3,127,37,127,46,127,79,232,229,226,242,229,119,128,5,165,235,229,230,245,236,97,2,127,57,127,66,232,229,226,242,229,119,128,5,166,236,229,230,244,232,229,226,242,229,119,128,5,166,236,229,230,244,232,229,226,242,229,119,128,5,165,104,2,127,98,127,104,239,239,107,128,2,113,250,243,241,245,225,242,101,128,51,146,105,6,127,128,127,165,128,46,128,57,128,82,128,139,228,100,2,127,135,127,160,236,229,228,239,244,235,225,244,225,235,225,238,225,232,225,236,230,247,233,228,244,104,128,255,101,239,116,128,0,183,229,245,109,5,127,179,127,214,127,229,127,238,128,33,97,2,127,185,127,200,227,233,242,227,236,229,235,239,242,229,225,110,128,50,114,240,225,242,229,238,235,239,242,229,225,110,128,50,18,227,233,242,227,236,229,235,239,242,229,225,110,128,50,100,235,239,242,229,225,110,128,49,65,112,2,127,244,128,20,97,2,127,250,128,8,238,243,233,239,243,235,239,242,229,225,110,128,49,112,242,229,238,235,239,242,229,225,110,128,50,4,233,229,245,240,235,239,242,229,225,110,128,49,110,243,233,239,243,235,239,242,229,225,110,128,49,111,232,233,242,225,231,225,238,97,128,48,127,235,225,244,225,235,225,238,97,129,48,223,128,70,232,225,236,230,247,233,228,244,104,128,255,144,238,117,2,128,89,128,134,115,132,34,18,128,101,128,112,128,121,128,127,226,229,236,239,247,227,237,98,128,3,32,227,233,242,227,236,101,128,34,150,237,239,100,128,2,215,240,236,245,115,128,34,19,244,101,128,32,50,242,105,2,128,146,128,160,226,225,225,242,245,243,241,245,225,242,101,128,51,74,243,241,245,225,242,101,128,51,73,108,2,128,175,128,190,239,238,231,236,229,231,244,245,242,238,229,100,128,2,112,243,241,245,225,242,101,128,51,150,109,3,128,207,128,221,128,232,227,245,226,229,228,243,241,245,225,242,101,128,51,163,239,238,239,243,240,225,227,101,128,255,77,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,159,111,5,129,4,129,30,129,55,129,65,129,74,104,2,129,10,129,20,233,242,225,231,225,238,97,128,48,130,237,243,241,245,225,242,101,128,51,193,235,225,244,225,235,225,238,97,129,48,226,129,43,232,225,236,230,247,233,228,244,104,128,255,147,236,243,241,245,225,242,101,128,51,214,237,225,244,232,225,105,128,14,33,246,229,242,243,243,241,245,225,242,101,129,51,167,129,89,228,243,241,245,225,242,101,128,51,168,240,97,2,129,106,129,112,242,229,110,128,36,168,243,241,245,225,242,101,128,51,171,115,2,129,127,129,136,243,241,245,225,242,101,128,51,179,245,240,229,242,233,239,114,128,246,239,244,245,242,238,229,100,128,2,111,117,141,0,181,129,185,129,189,129,199,129,223,129,233,129,255,130,10,130,35,130,58,130,68,130,98,130,162,130,172,49,128,0,181,225,243,241,245,225,242,101,128,51,130,227,104,2,129,206,129,216,231,242,229,225,244,229,114,128,34,107,236,229,243,115,128,34,106,230,243,241,245,225,242,101,128,51,140,103,2,129,239,129,246,242,229,229,107,128,3,188,243,241,245,225,242,101,128,51,141,232,233,242,225,231,225,238,97,128,48,128,235,225,244,225,235,225,238,97,129,48,224,130,23,232,225,236,230,247,233,228,244,104,128,255,145,108,2,130,41,130,50,243,241,245,225,242,101,128,51,149,244,233,240,236,121,128,0,215,237,243,241,245,225,242,101,128,51,155,238,225,104,2,130,76,130,85,232,229,226,242,229,119,128,5,163,236,229,230,244,232,229,226,242,229,119,128,5,163,115,2,130,104,130,153,233,99,3,130,113,130,130,130,141,225,236,238,239,244,101,129,38,106,130,124,228,226,108,128,38,107,230,236,225,244,243,233,231,110,128,38,109,243,232,225,242,240,243,233,231,110,128,38,111,243,241,245,225,242,101,128,51,178,246,243,241,245,225,242,101,128,51,182,247,243,241,245,225,242,101,128,51,188,118,2,130,188,130,201,237,229,231,225,243,241,245,225,242,101,128,51,185,243,241,245,225,242,101,128,51,183,119,2,130,216,130,229,237,229,231,225,243,241,245,225,242,101,128,51,191,243,241,245,225,242,101,128,51,189,110,150,0,110,131,30,131,164,131,188,131,254,132,23,132,81,132,91,132,158,132,201,134,235,134,253,135,22,135,53,135,79,135,144,137,126,137,134,137,159,137,167,138,135,138,145,138,155,97,8,131,48,131,68,131,75,131,82,131,107,131,118,131,143,131,155,98,2,131,54,131,63,229,238,231,225,236,105,128,9,168,236,97,128,34,7,227,245,244,101,128,1,68,228,229,246,97,128,9,40,231,117,2,131,89,131,98,234,225,242,225,244,105,128,10,168,242,237,245,235,232,105,128,10,40,232,233,242,225,231,225,238,97,128,48,106,235,225,244,225,235,225,238,97,129,48,202,131,131,232,225,236,230,247,233,228,244,104,128,255,133,240,239,243,244,242,239,240,232,101,128,1,73,243,241,245,225,242,101,128,51,129,98,2,131,170,131,180,239,240,239,237,239,230,111,128,49,11,243,240,225,227,101,128,0,160,99,4,131,198,131,205,131,214,131,241,225,242,239,110,128,1,72,229,228,233,236,236,97,128,1,70,233,242,99,2,131,222,131,227,236,101,128,36,221,245,237,230,236,229,248,226,229,236,239,119,128,30,75,239,237,237,225,225,227,227,229,238,116,128,1,70,228,239,116,2,132,6,132,15,225,227,227,229,238,116,128,30,69,226,229,236,239,119,128,30,71,101,3,132,31,132,42,132,67,232,233,242,225,231,225,238,97,128,48,109,235,225,244,225,235,225,238,97,129,48,205,132,55,232,225,236,230,247,233,228,244,104,128,255,136,247,243,232,229,241,229,236,243,233,231,110,128,32,170,230,243,241,245,225,242,101,128,51,139,103,2,132,97,132,147,97,3,132,105,132,115,132,122,226,229,238,231,225,236,105,128,9,153,228,229,246,97,128,9,25,231,117,2,132,129,132,138,234,225,242,225,244,105,128,10,153,242,237,245,235,232,105,128,10,25,239,238,231,245,244,232,225,105,128,14,7,104,2,132,164,132,174,233,242,225,231,225,238,97,128,48,147,239,239,107,2,132,182,132,189,236,229,230,116,128,2,114,242,229,244,242,239,230,236,229,120,128,2,115,105,4,132,211,133,124,133,135,133,193,229,245,110,7,132,229,133,8,133,40,133,54,133,63,133,96,133,109,97,2,132,235,132,250,227,233,242,227,236,229,235,239,242,229,225,110,128,50,111,240,225,242,229,238,235,239,242,229,225,110,128,50,15,227,105,2,133,15,133,27,229,245,227,235,239,242,229,225,110,128,49,53,242,227,236,229,235,239,242,229,225,110,128,50,97,232,233,229,245,232,235,239,242,229,225,110,128,49,54,235,239,242,229,225,110,128,49,52,240,97,2,133,70,133,84,238,243,233,239,243,235,239,242,229,225,110,128,49,104,242,229,238,235,239,242,229,225,110,128,50,1,243,233,239,243,235,239,242,229,225,110,128,49,103,244,233,235,229,245,244,235,239,242,229,225,110,128,49,102,232,233,242,225,231,225,238,97,128,48,107,107,2,133,141,133,165,225,244,225,235,225,238,97,129,48,203,133,153,232,225,236,230,247,233,228,244,104,128,255,134,232,225,232,233,116,2,133,175,133,186,236,229,230,244,244,232,225,105,128,248,153,244,232,225,105,128,14,77,238,101,141,0,57,133,224,133,233,133,243,134,17,134,24,134,49,134,76,134,110,134,122,134,133,134,166,134,174,134,185,225,242,225,226,233,99,128,6,105,226,229,238,231,225,236,105,128,9,239,227,233,242,227,236,101,129,36,104,133,254,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,146,228,229,246,97,128,9,111,231,117,2,134,31,134,40,234,225,242,225,244,105,128,10,239,242,237,245,235,232,105,128,10,111,232,97,2,134,56,134,67,227,235,225,242,225,226,233,99,128,6,105,238,231,250,232,239,117,128,48,41,105,2,134,82,134,100,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,40,238,230,229,242,233,239,114,128,32,137,237,239,238,239,243,240,225,227,101,128,255,25,239,236,228,243,244,249,236,101,128,247,57,112,2,134,139,134,146,225,242,229,110,128,36,124,229,114,2,134,153,134,159,233,239,100,128,36,144,243,233,225,110,128,6,249,242,239,237,225,110,128,33,120,243,245,240,229,242,233,239,114,128,32,121,116,2,134,191,134,229,229,229,110,2,134,199,134,208,227,233,242,227,236,101,128,36,114,112,2,134,214,134,221,225,242,229,110,128,36,134,229,242,233,239,100,128,36,154,232,225,105,128,14,89,106,129,1,204,134,241,229,227,249,242,233,236,236,233,99,128,4,90,235,225,244,225,235,225,238,97,129,48,243,135,10,232,225,236,230,247,233,228,244,104,128,255,157,108,2,135,28,135,42,229,231,242,233,231,232,244,236,239,238,103,128,1,158,233,238,229,226,229,236,239,119,128,30,73,109,2,135,59,135,70,239,238,239,243,240,225,227,101,128,255,78,243,241,245,225,242,101,128,51,154,110,2,135,85,135,135,97,3,135,93,135,103,135,110,226,229,238,231,225,236,105,128,9,163,228,229,246,97,128,9,35,231,117,2,135,117,135,126,234,225,242,225,244,105,128,10,163,242,237,245,235,232,105,128,10,35,238,225,228,229,246,97,128,9,41,111,6,135,158,135,169,135,194,135,235,136,187,137,114,232,233,242,225,231,225,238,97,128,48,110,235,225,244,225,235,225,238,97,129,48,206,135,182,232,225,236,230,247,233,228,244,104,128,255,137,110,3,135,202,135,218,135,227,226,242,229,225,235,233,238,231,243,240,225,227,101,128,0,160,229,238,244,232,225,105,128,14,19,245,244,232,225,105,128,14,25,239,110,7,135,252,136,5,136,19,136,53,136,69,136,110,136,169,225,242,225,226,233,99,128,6,70,230,233,238,225,236,225,242,225,226,233,99,128,254,230,231,232,245,238,238,97,2,136,30,136,39,225,242,225,226,233,99,128,6,186,230,233,238,225,236,225,242,225,226,233,99,128,251,159,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,231,234,229,229,237,105,2,136,79,136,94,238,233,244,233,225,236,225,242,225,226,233,99,128,252,210,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,75,237,101,2,136,117,136,130,228,233,225,236,225,242,225,226,233,99,128,254,232,229,237,105,2,136,138,136,153,238,233,244,233,225,236,225,242,225,226,233,99,128,252,213,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,78,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,141,116,7,136,203,136,214,136,243,137,22,137,34,137,54,137,80,227,239,238,244,225,233,238,115,128,34,12,101,2,136,220,136,236,236,229,237,229,238,116,129,34,9,136,231,239,102,128,34,9,241,245,225,108,128,34,96,231,242,229,225,244,229,114,129,34,111,136,255,238,239,114,2,137,7,137,15,229,241,245,225,108,128,34,113,236,229,243,115,128,34,121,233,228,229,238,244,233,227,225,108,128,34,98,236,229,243,115,129,34,110,137,43,238,239,242,229,241,245,225,108,128,34,112,112,2,137,60,137,70,225,242,225,236,236,229,108,128,34,38,242,229,227,229,228,229,115,128,34,128,243,117,3,137,89,137,96,137,105,226,243,229,116,128,34,132,227,227,229,229,228,115,128,34,129,240,229,242,243,229,116,128,34,133,247,225,242,237,229,238,233,225,110,128,5,118,240,225,242,229,110,128,36,169,115,2,137,140,137,149,243,241,245,225,242,101,128,51,177,245,240,229,242,233,239,114,128,32,127,244,233,236,228,101,128,0,241,117,132,3,189,137,179,137,190,138,15,138,98,232,233,242,225,231,225,238,97,128,48,108,107,2,137,196,137,220,225,244,225,235,225,238,97,129,48,204,137,208,232,225,236,230,247,233,228,244,104,128,255,135,244,97,3,137,229,137,239,137,246,226,229,238,231,225,236,105,128,9,188,228,229,246,97,128,9,60,231,117,2,137,253,138,6,234,225,242,225,244,105,128,10,188,242,237,245,235,232,105,128,10,60,109,2,138,21,138,55,226,229,242,243,233,231,110,130,0,35,138,35,138,47,237,239,238,239,243,240,225,227,101,128,255,3,243,237,225,236,108,128,254,95,229,114,2,138,62,138,94,225,236,243,233,231,110,2,138,73,138,81,231,242,229,229,107,128,3,116,236,239,247,229,242,231,242,229,229,107,128,3,117,111,128,33,22,110,130,5,224,138,106,138,126,228,225,231,229,243,104,129,251,64,138,117,232,229,226,242,229,119,128,251,64,232,229,226,242,229,119,128,5,224,246,243,241,245,225,242,101,128,51,181,247,243,241,245,225,242,101,128,51,187,249,97,3,138,164,138,174,138,181,226,229,238,231,225,236,105,128,9,158,228,229,246,97,128,9,30,231,117,2,138,188,138,197,234,225,242,225,244,105,128,10,158,242,237,245,235,232,105,128,10,30,111,147,0,111,138,248,139,14,139,92,140,6,140,78,140,93,140,133,141,0,141,21,141,59,141,70,141,248,143,82,143,146,143,179,143,225,144,98,144,145,144,157,97,2,138,254,139,5,227,245,244,101,128,0,243,238,231,244,232,225,105,128,14,45,98,4,139,24,139,66,139,75,139,85,225,242,242,229,100,130,2,117,139,36,139,47,227,249,242,233,236,236,233,99,128,4,233,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,235,229,238,231,225,236,105,128,9,147,239,240,239,237,239,230,111,128,49,27,242,229,246,101,128,1,79,99,3,139,100,139,173,139,252,97,2,139,106,139,167,238,228,242,97,3,139,117,139,124,139,135,228,229,246,97,128,9,17,231,245,234,225,242,225,244,105,128,10,145,246,239,247,229,236,243,233,231,110,2,139,149,139,156,228,229,246,97,128,9,73,231,245,234,225,242,225,244,105,128,10,201,242,239,110,128,1,210,233,242,99,2,139,181,139,186,236,101,128,36,222,245,237,230,236,229,120,133,0,244,139,205,139,213,139,224,139,232,139,244,225,227,245,244,101,128,30,209,228,239,244,226,229,236,239,119,128,30,217,231,242,225,246,101,128,30,211,232,239,239,235,225,226,239,246,101,128,30,213,244,233,236,228,101,128,30,215,249,242,233,236,236,233,99,128,4,62,100,4,140,16,140,39,140,45,140,68,226,108,2,140,23,140,31,225,227,245,244,101,128,1,81,231,242,225,246,101,128,2,13,229,246,97,128,9,19,233,229,242,229,243,233,115,129,0,246,140,57,227,249,242,233,236,236,233,99,128,4,231,239,244,226,229,236,239,119,128,30,205,101,129,1,83,140,84,235,239,242,229,225,110,128,49,90,103,3,140,101,140,116,140,123,239,238,229,107,129,2,219,140,110,227,237,98,128,3,40,242,225,246,101,128,0,242,245,234,225,242,225,244,105,128,10,147,104,4,140,143,140,154,140,164,140,242,225,242,237,229,238,233,225,110,128,5,133,233,242,225,231,225,238,97,128,48,74,111,2,140,170,140,180,239,235,225,226,239,246,101,128,30,207,242,110,133,1,161,140,195,140,203,140,214,140,222,140,234,225,227,245,244,101,128,30,219,228,239,244,226,229,236,239,119,128,30,227,231,242,225,246,101,128,30,221,232,239,239,235,225,226,239,246,101,128,30,223,244,233,236,228,101,128,30,225,245,238,231,225,242,245,237,236,225,245,116,128,1,81,105,129,1,163,141,6,238,246,229,242,244,229,228,226,242,229,246,101,128,2,15,107,2,141,27,141,51,225,244,225,235,225,238,97,129,48,170,141,39,232,225,236,230,247,233,228,244,104,128,255,117,239,242,229,225,110,128,49,87,236,229,232,229,226,242,229,119,128,5,171,109,6,141,84,141,112,141,119,141,208,141,219,141,237,225,227,242,239,110,130,1,77,141,96,141,104,225,227,245,244,101,128,30,83,231,242,225,246,101,128,30,81,228,229,246,97,128,9,80,229,231,97,133,3,201,141,135,141,139,141,150,141,164,141,180,49,128,3,214,227,249,242,233,236,236,233,99,128,4,97,236,225,244,233,238,227,236,239,243,229,100,128,2,119,242,239,245,238,228,227,249,242,233,236,236,233,99,128,4,123,116,2,141,186,141,201,233,244,236,239,227,249,242,233,236,236,233,99,128,4,125,239,238,239,115,128,3,206,231,245,234,225,242,225,244,105,128,10,208,233,227,242,239,110,129,3,191,141,229,244,239,238,239,115,128,3,204,239,238,239,243,240,225,227,101,128,255,79,238,101,145,0,49,142,31,142,40,142,50,142,80,142,105,142,114,142,123,142,148,142,182,142,216,142,228,142,247,143,2,143,35,143,45,143,53,143,64,225,242,225,226,233,99,128,6,97,226,229,238,231,225,236,105,128,9,231,227,233,242,227,236,101,129,36,96,142,61,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,138,100,2,142,86,142,92,229,246,97,128,9,103,239,244,229,238,236,229,225,228,229,114,128,32,36,229,233,231,232,244,104,128,33,91,230,233,244,244,229,100,128,246,220,231,117,2,142,130,142,139,234,225,242,225,244,105,128,10,231,242,237,245,235,232,105,128,10,103,232,97,3,142,157,142,168,142,173,227,235,225,242,225,226,233,99,128,6,97,236,102,128,0,189,238,231,250,232,239,117,128,48,33,105,2,142,188,142,206,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,32,238,230,229,242,233,239,114,128,32,129,237,239,238,239,243,240,225,227,101,128,255,17,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,244,239,236,228,243,244,249,236,101,128,247,49,112,2,143,8,143,15,225,242,229,110,128,36,116,229,114,2,143,22,143,28,233,239,100,128,36,136,243,233,225,110,128,6,241,241,245,225,242,244,229,114,128,0,188,242,239,237,225,110,128,33,112,243,245,240,229,242,233,239,114,128,0,185,244,104,2,143,71,143,76,225,105,128,14,81,233,242,100,128,33,83,111,3,143,90,143,124,143,140,103,2,143,96,143,114,239,238,229,107,129,1,235,143,105,237,225,227,242,239,110,128,1,237,245,242,237,245,235,232,105,128,10,19,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,75,240,229,110,128,2,84,112,3,143,154,143,161,143,172,225,242,229,110,128,36,170,229,238,226,245,236,236,229,116,128,37,230,244,233,239,110,128,35,37,114,2,143,185,143,214,100,2,143,191,143,202,230,229,237,233,238,233,238,101,128,0,170,237,225,243,227,245,236,233,238,101,128,0,186,244,232,239,231,239,238,225,108,128,34,31,115,5,143,237,144,13,144,30,144,75,144,88,232,239,242,116,2,143,246,143,253,228,229,246,97,128,9,18,246,239,247,229,236,243,233,231,238,228,229,246,97,128,9,74,236,225,243,104,129,0,248,144,22,225,227,245,244,101,128,1,255,237,225,236,108,2,144,39,144,50,232,233,242,225,231,225,238,97,128,48,73,235,225,244,225,235,225,238,97,129,48,169,144,63,232,225,236,230,247,233,228,244,104,128,255,107,244,242,239,235,229,225,227,245,244,101,128,1,255,245,240,229,242,233,239,114,128,246,240,116,2,144,104,144,115,227,249,242,233,236,236,233,99,128,4,127,233,236,228,101,130,0,245,144,126,144,134,225,227,245,244,101,128,30,77,228,233,229,242,229,243,233,115,128,30,79,245,226,239,240,239,237,239,230,111,128,49,33,118,2,144,163,144,244,229,114,2,144,170,144,236,236,233,238,101,131,32,62,144,183,144,206,144,229,99,2,144,189,144,201,229,238,244,229,242,236,233,238,101,128,254,74,237,98,128,3,5,100,2,144,212,144,220,225,243,232,229,100,128,254,73,226,236,247,225,246,121,128,254,76,247,225,246,121,128,254,75,243,227,239,242,101,128,0,175,239,247,229,236,243,233,231,110,3,145,3,145,13,145,20,226,229,238,231,225,236,105,128,9,203,228,229,246,97,128,9,75,231,245,234,225,242,225,244,105,128,10,203,112,145,0,112,145,69,147,197,147,208,147,217,147,229,149,154,149,164,150,156,151,175,152,9,152,35,152,166,152,174,153,76,153,134,153,162,153,172,97,14,145,99,145,131,145,141,145,148,145,155,145,203,145,214,145,228,145,239,146,30,146,44,147,56,147,95,147,185,97,2,145,105,145,117,237,240,243,243,241,245,225,242,101,128,51,128,243,229,238,244,239,243,241,245,225,242,101,128,51,43,226,229,238,231,225,236,105,128,9,170,227,245,244,101,128,30,85,228,229,246,97,128,9,42,103,2,145,161,145,179,101,2,145,167,145,174,228,239,247,110,128,33,223,245,112,128,33,222,117,2,145,185,145,194,234,225,242,225,244,105,128,10,170,242,237,245,235,232,105,128,10,42,232,233,242,225,231,225,238,97,128,48,113,233,249,225,238,238,239,233,244,232,225,105,128,14,47,235,225,244,225,235,225,238,97,128,48,209,108,2,145,245,146,14,225,244,225,236,233,250,225,244,233,239,238,227,249,242,233,236,236,233,227,227,237,98,128,4,132,239,227,232,235,225,227,249,242,233,236,236,233,99,128,4,192,238,243,233,239,243,235,239,242,229,225,110,128,49,127,114,3,146,52,146,73,147,45,97,2,146,58,146,66,231,242,225,240,104,128,0,182,236,236,229,108,128,34,37,229,110,2,146,80,146,190,236,229,230,116,136,0,40,146,103,146,118,146,123,146,128,146,139,146,151,146,174,146,179,225,236,244,239,238,229,225,242,225,226,233,99,128,253,62,226,116,128,248,237,229,120,128,248,236,233,238,230,229,242,233,239,114,128,32,141,237,239,238,239,243,240,225,227,101,128,255,8,115,2,146,157,146,164,237,225,236,108,128,254,89,245,240,229,242,233,239,114,128,32,125,244,112,128,248,235,246,229,242,244,233,227,225,108,128,254,53,242,233,231,232,116,136,0,41,146,214,146,229,146,234,146,239,146,250,147,6,147,29,147,34,225,236,244,239,238,229,225,242,225,226,233,99,128,253,63,226,116,128,248,248,229,120,128,248,247,233,238,230,229,242,233,239,114,128,32,142,237,239,238,239,243,240,225,227,101,128,255,9,115,2,147,12,147,19,237,225,236,108,128,254,90,245,240,229,242,233,239,114,128,32,126,244,112,128,248,246,246,229,242,244,233,227,225,108,128,254,54,244,233,225,236,228,233,230,102,128,34,2,115,3,147,64,147,75,147,87,229,241,232,229,226,242,229,119,128,5,192,232,244,225,232,229,226,242,229,119,128,5,153,241,245,225,242,101,128,51,169,244,225,104,134,5,183,147,113,147,127,147,132,147,141,147,156,147,172,49,2,147,119,147,123,49,128,5,183,100,128,5,183,178,97,128,5,183,232,229,226,242,229,119,128,5,183,238,225,242,242,239,247,232,229,226,242,229,119,128,5,183,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,183,247,233,228,229,232,229,226,242,229,119,128,5,183,250,229,242,232,229,226,242,229,119,128,5,161,226,239,240,239,237,239,230,111,128,49,6,227,233,242,227,236,101,128,36,223,228,239,244,225,227,227,229,238,116,128,30,87,101,137,5,228,147,251,148,6,148,26,148,38,148,58,148,160,148,171,148,192,149,147,227,249,242,233,236,236,233,99,128,4,63,228,225,231,229,243,104,129,251,68,148,17,232,229,226,242,229,119,128,251,68,229,250,233,243,241,245,225,242,101,128,51,59,230,233,238,225,236,228,225,231,229,243,232,232,229,226,242,229,119,128,251,67,104,5,148,70,148,93,148,101,148,115,148,145,225,114,2,148,77,148,84,225,226,233,99,128,6,126,237,229,238,233,225,110,128,5,122,229,226,242,229,119,128,5,228,230,233,238,225,236,225,242,225,226,233,99,128,251,87,105,2,148,121,148,136,238,233,244,233,225,236,225,242,225,226,233,99,128,251,88,242,225,231,225,238,97,128,48,122,237,229,228,233,225,236,225,242,225,226,233,99,128,251,89,235,225,244,225,235,225,238,97,128,48,218,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,167,114,5,148,204,148,216,149,2,149,123,149,136,225,230,229,232,229,226,242,229,119,128,251,78,227,229,238,116,131,0,37,148,229,148,238,148,250,225,242,225,226,233,99,128,6,106,237,239,238,239,243,240,225,227,101,128,255,5,243,237,225,236,108,128,254,106,105,2,149,8,149,105,239,100,134,0,46,149,25,149,36,149,47,149,59,149,70,149,82,225,242,237,229,238,233,225,110,128,5,137,227,229,238,244,229,242,229,100,128,0,183,232,225,236,230,247,233,228,244,104,128,255,97,233,238,230,229,242,233,239,114,128,246,231,237,239,238,239,243,240,225,227,101,128,255,14,115,2,149,88,149,95,237,225,236,108,128,254,82,245,240,229,242,233,239,114,128,246,232,243,240,239,237,229,238,233,231,242,229,229,235,227,237,98,128,3,66,240,229,238,228,233,227,245,236,225,114,128,34,165,244,232,239,245,243,225,238,100,128,32,48,243,229,244,97,128,32,167,230,243,241,245,225,242,101,128,51,138,104,3,149,172,149,222,150,103,97,3,149,180,149,190,149,197,226,229,238,231,225,236,105,128,9,171,228,229,246,97,128,9,43,231,117,2,149,204,149,213,234,225,242,225,244,105,128,10,171,242,237,245,235,232,105,128,10,43,105,133,3,198,149,236,149,240,150,70,150,78,150,89,49,128,3,213,229,245,240,104,4,149,253,150,32,150,47,150,56,97,2,150,3,150,18,227,233,242,227,236,229,235,239,242,229,225,110,128,50,122,240,225,242,229,238,235,239,242,229,225,110,128,50,26,227,233,242,227,236,229,235,239,242,229,225,110,128,50,108,235,239,242,229,225,110,128,49,77,240,225,242,229,238,235,239,242,229,225,110,128,50,12,236,225,244,233,110,128,2,120,238,244,232,245,244,232,225,105,128,14,58,243,249,237,226,239,236,231,242,229,229,107,128,3,213,111,3,150,111,150,116,150,142,239,107,128,1,165,240,104,2,150,123,150,132,225,238,244,232,225,105,128,14,30,245,238,231,244,232,225,105,128,14,28,243,225,237,240,232,225,239,244,232,225,105,128,14,32,105,133,3,192,150,170,151,126,151,137,151,148,151,162,229,245,112,6,150,186,150,221,150,253,151,25,151,39,151,91,97,2,150,192,150,207,227,233,242,227,236,229,235,239,242,229,225,110,128,50,115,240,225,242,229,238,235,239,242,229,225,110,128,50,19,227,105,2,150,228,150,240,229,245,227,235,239,242,229,225,110,128,49,118,242,227,236,229,235,239,242,229,225,110,128,50,101,107,2,151,3,151,17,233,249,229,239,235,235,239,242,229,225,110,128,49,114,239,242,229,225,110,128,49,66,240,225,242,229,238,235,239,242,229,225,110,128,50,5,243,233,239,115,2,151,48,151,76,107,2,151,54,151,68,233,249,229,239,235,235,239,242,229,225,110,128,49,116,239,242,229,225,110,128,49,68,244,233,235,229,245,244,235,239,242,229,225,110,128,49,117,116,2,151,97,151,112,232,233,229,245,244,232,235,239,242,229,225,110,128,49,119,233,235,229,245,244,235,239,242,229],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+40960);allocate([225,110,128,49,115,232,233,242,225,231,225,238,97,128,48,116,235,225,244,225,235,225,238,97,128,48,212,243,249,237,226,239,236,231,242,229,229,107,128,3,214,247,242,225,242,237,229,238,233,225,110,128,5,131,236,245,115,132,0,43,151,189,151,200,151,209,151,242,226,229,236,239,247,227,237,98,128,3,31,227,233,242,227,236,101,128,34,149,109,2,151,215,151,222,233,238,245,115,128,0,177,111,2,151,228,151,232,100,128,2,214,238,239,243,240,225,227,101,128,255,11,115,2,151,248,151,255,237,225,236,108,128,254,98,245,240,229,242,233,239,114,128,32,122,109,2,152,15,152,26,239,238,239,243,240,225,227,101,128,255,80,243,241,245,225,242,101,128,51,216,111,5,152,47,152,58,152,125,152,136,152,146,232,233,242,225,231,225,238,97,128,48,125,233,238,244,233,238,231,233,238,228,229,120,4,152,78,152,90,152,102,152,115,228,239,247,238,247,232,233,244,101,128,38,31,236,229,230,244,247,232,233,244,101,128,38,28,242,233,231,232,244,247,232,233,244,101,128,38,30,245,240,247,232,233,244,101,128,38,29,235,225,244,225,235,225,238,97,128,48,221,240,236,225,244,232,225,105,128,14,27,243,244,225,236,237,225,242,107,129,48,18,152,159,230,225,227,101,128,48,32,240,225,242,229,110,128,36,171,114,3,152,182,152,208,152,233,101,2,152,188,152,196,227,229,228,229,115,128,34,122,243,227,242,233,240,244,233,239,110,128,33,30,233,237,101,2,152,216,152,222,237,239,100,128,2,185,242,229,246,229,242,243,229,100,128,32,53,111,4,152,243,152,250,153,4,153,17,228,245,227,116,128,34,15,234,229,227,244,233,246,101,128,35,5,236,239,238,231,229,228,235,225,238,97,128,48,252,112,2,153,23,153,60,101,2,153,29,153,36,236,236,239,114,128,35,24,242,243,117,2,153,44,153,51,226,243,229,116,128,34,130,240,229,242,243,229,116,128,34,131,239,242,244,233,239,110,129,34,55,153,71,225,108,128,34,29,115,2,153,82,153,125,105,130,3,200,153,90,153,101,227,249,242,233,236,236,233,99,128,4,113,236,233,240,238,229,245,237,225,244,225,227,249,242,233,236,236,233,227,227,237,98,128,4,134,243,241,245,225,242,101,128,51,176,117,2,153,140,153,151,232,233,242,225,231,225,238,97,128,48,119,235,225,244,225,235,225,238,97,128,48,215,246,243,241,245,225,242,101,128,51,180,247,243,241,245,225,242,101,128,51,186,113,136,0,113,153,202,154,251,155,6,155,15,155,22,155,34,155,72,155,80,97,4,153,212,153,235,154,43,154,234,100,2,153,218,153,224,229,246,97,128,9,88,237,225,232,229,226,242,229,119,128,5,168,102,4,153,245,153,254,154,12,154,28,225,242,225,226,233,99,128,6,66,230,233,238,225,236,225,242,225,226,233,99,128,254,214,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,215,237,229,228,233,225,236,225,242,225,226,233,99,128,254,216,237,225,244,115,136,5,184,154,66,154,86,154,100,154,105,154,110,154,119,154,134,154,221,49,3,154,74,154,78,154,82,48,128,5,184,97,128,5,184,99,128,5,184,50,2,154,92,154,96,55,128,5,184,57,128,5,184,179,51,128,5,184,228,101,128,5,184,232,229,226,242,229,119,128,5,184,238,225,242,242,239,247,232,229,226,242,229,119,128,5,184,113,2,154,140,154,206,225,244,225,110,4,154,153,154,162,154,177,154,193,232,229,226,242,229,119,128,5,184,238,225,242,242,239,247,232,229,226,242,229,119,128,5,184,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,184,247,233,228,229,232,229,226,242,229,119,128,5,184,245,225,242,244,229,242,232,229,226,242,229,119,128,5,184,247,233,228,229,232,229,226,242,229,119,128,5,184,242,238,229,249,240,225,242,225,232,229,226,242,229,119,128,5,159,226,239,240,239,237,239,230,111,128,49,17,227,233,242,227,236,101,128,36,224,232,239,239,107,128,2,160,237,239,238,239,243,240,225,227,101,128,255,81,239,102,130,5,231,155,43,155,63,228,225,231,229,243,104,129,251,71,155,54,232,229,226,242,229,119,128,251,71,232,229,226,242,229,119,128,5,231,240,225,242,229,110,128,36,172,117,4,155,90,155,102,155,191,156,22,225,242,244,229,242,238,239,244,101,128,38,105,226,245,244,115,135,5,187,155,123,155,128,155,133,155,138,155,147,155,162,155,178,177,56,128,5,187,178,53,128,5,187,179,49,128,5,187,232,229,226,242,229,119,128,5,187,238,225,242,242,239,247,232,229,226,242,229,119,128,5,187,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,187,247,233,228,229,232,229,226,242,229,119,128,5,187,229,243,244,233,239,110,133,0,63,155,210,155,233,155,250,156,2,156,14,225,114,2,155,217,155,224,225,226,233,99,128,6,31,237,229,238,233,225,110,128,5,94,228,239,247,110,129,0,191,155,242,243,237,225,236,108,128,247,191,231,242,229,229,107,128,3,126,237,239,238,239,243,240,225,227,101,128,255,31,243,237,225,236,108,128,247,63,239,244,101,4,156,34,156,105,156,125,156,154,228,226,108,133,0,34,156,50,156,57,156,64,156,76,156,97,226,225,243,101,128,32,30,236,229,230,116,128,32,28,237,239,238,239,243,240,225,227,101,128,255,2,240,242,233,237,101,129,48,30,156,86,242,229,246,229,242,243,229,100,128,48,29,242,233,231,232,116,128,32,29,236,229,230,116,129,32,24,156,114,242,229,246,229,242,243,229,100,128,32,27,114,2,156,131,156,141,229,246,229,242,243,229,100,128,32,27,233,231,232,116,129,32,25,156,150,110,128,1,73,243,233,238,231,108,2,156,164,156,171,226,225,243,101,128,32,26,101,129,0,39,156,177,237,239,238,239,243,240,225,227,101,128,255,7,114,145,0,114,156,227,157,231,157,242,158,33,158,84,159,101,159,125,159,220,161,254,162,35,162,47,162,101,162,109,163,15,163,26,163,61,163,161,97,11,156,251,157,6,157,16,157,23,157,88,157,104,157,129,157,140,157,165,157,188,157,225,225,242,237,229,238,233,225,110,128,5,124,226,229,238,231,225,236,105,128,9,176,227,245,244,101,128,1,85,100,4,157,33,157,39,157,53,157,79,229,246,97,128,9,48,233,227,225,108,129,34,26,157,48,229,120,128,248,229,239,246,229,242,243,243,241,245,225,242,101,129,51,174,157,69,228,243,241,245,225,242,101,128,51,175,243,241,245,225,242,101,128,51,173,230,101,129,5,191,157,95,232,229,226,242,229,119,128,5,191,231,117,2,157,111,157,120,234,225,242,225,244,105,128,10,176,242,237,245,235,232,105,128,10,48,232,233,242,225,231,225,238,97,128,48,137,235,225,244,225,235,225,238,97,129,48,233,157,153,232,225,236,230,247,233,228,244,104,128,255,151,236,239,247,229,242,228,233,225,231,239,238,225,236,226,229,238,231,225,236,105,128,9,241,109,2,157,194,157,217,233,228,228,236,229,228,233,225,231,239,238,225,236,226,229,238,231,225,236,105,128,9,240,243,232,239,242,110,128,2,100,244,233,111,128,34,54,226,239,240,239,237,239,230,111,128,49,22,99,4,157,252,158,3,158,12,158,20,225,242,239,110,128,1,89,229,228,233,236,236,97,128,1,87,233,242,227,236,101,128,36,225,239,237,237,225,225,227,227,229,238,116,128,1,87,100,2,158,39,158,49,226,236,231,242,225,246,101,128,2,17,239,116,2,158,56,158,65,225,227,227,229,238,116,128,30,89,226,229,236,239,119,129,30,91,158,75,237,225,227,242,239,110,128,30,93,101,6,158,98,158,143,158,178,158,233,159,2,159,35,102,2,158,104,158,117,229,242,229,238,227,229,237,225,242,107,128,32,59,236,229,248,243,117,2,158,127,158,134,226,243,229,116,128,34,134,240,229,242,243,229,116,128,34,135,231,233,243,244,229,114,2,158,154,158,159,229,100,128,0,174,115,2,158,165,158,171,225,238,115,128,248,232,229,242,233,102,128,246,218,104,3,158,186,158,209,158,223,225,114,2,158,193,158,200,225,226,233,99,128,6,49,237,229,238,233,225,110,128,5,128,230,233,238,225,236,225,242,225,226,233,99,128,254,174,233,242,225,231,225,238,97,128,48,140,235,225,244,225,235,225,238,97,129,48,236,158,246,232,225,236,230,247,233,228,244,104,128,255,154,243,104,130,5,232,159,11,159,26,228,225,231,229,243,232,232,229,226,242,229,119,128,251,72,232,229,226,242,229,119,128,5,232,118,3,159,43,159,56,159,88,229,242,243,229,228,244,233,236,228,101,128,34,61,233,97,2,159,63,159,72,232,229,226,242,229,119,128,5,151,237,245,231,242,225,243,232,232,229,226,242,229,119,128,5,151,236,239,231,233,227,225,236,238,239,116,128,35,16,230,233,243,232,232,239,239,107,129,2,126,159,114,242,229,246,229,242,243,229,100,128,2,127,104,2,159,131,159,154,97,2,159,137,159,147,226,229,238,231,225,236,105,128,9,221,228,229,246,97,128,9,93,111,131,3,193,159,164,159,193,159,207,239,107,129,2,125,159,171,244,245,242,238,229,100,129,2,123,159,182,243,245,240,229,242,233,239,114,128,2,181,243,249,237,226,239,236,231,242,229,229,107,128,3,241,244,233,227,232,239,239,235,237,239,100,128,2,222,105,6,159,234,161,22,161,68,161,79,161,104,161,240,229,245,108,9,160,0,160,35,160,50,160,64,160,110,160,124,160,210,160,223,161,2,97,2,160,6,160,21,227,233,242,227,236,229,235,239,242,229,225,110,128,50,113,240,225,242,229,238,235,239,242,229,225,110,128,50,17,227,233,242,227,236,229,235,239,242,229,225,110,128,50,99,232,233,229,245,232,235,239,242,229,225,110,128,49,64,107,2,160,70,160,102,233,249,229,239,107,2,160,80,160,89,235,239,242,229,225,110,128,49,58,243,233,239,243,235,239,242,229,225,110,128,49,105,239,242,229,225,110,128,49,57,237,233,229,245,237,235,239,242,229,225,110,128,49,59,112,3,160,132,160,164,160,179,97,2,160,138,160,152,238,243,233,239,243,235,239,242,229,225,110,128,49,108,242,229,238,235,239,242,229,225,110,128,50,3,232,233,229,245,240,232,235,239,242,229,225,110,128,49,63,233,229,245,112,2,160,188,160,197,235,239,242,229,225,110,128,49,60,243,233,239,243,235,239,242,229,225,110,128,49,107,243,233,239,243,235,239,242,229,225,110,128,49,61,116,2,160,229,160,244,232,233,229,245,244,232,235,239,242,229,225,110,128,49,62,233,235,229,245,244,235,239,242,229,225,110,128,49,106,249,229,239,242,233,238,232,233,229,245,232,235,239,242,229,225,110,128,49,109,231,232,116,2,161,30,161,38,225,238,231,236,101,128,34,31,116,2,161,44,161,58,225,227,235,226,229,236,239,247,227,237,98,128,3,25,242,233,225,238,231,236,101,128,34,191,232,233,242,225,231,225,238,97,128,48,138,235,225,244,225,235,225,238,97,129,48,234,161,92,232,225,236,230,247,233,228,244,104,128,255,152,110,2,161,110,161,226,103,131,2,218,161,120,161,131,161,137,226,229,236,239,247,227,237,98,128,3,37,227,237,98,128,3,10,232,225,236,102,2,161,146,161,192,236,229,230,116,131,2,191,161,159,161,170,161,181,225,242,237,229,238,233,225,110,128,5,89,226,229,236,239,247,227,237,98,128,3,28,227,229,238,244,229,242,229,100,128,2,211,242,233,231,232,116,130,2,190,161,204,161,215,226,229,236,239,247,227,237,98,128,3,57,227,229,238,244,229,242,229,100,128,2,210,246,229,242,244,229,228,226,242,229,246,101,128,2,19,244,244,239,242,245,243,241,245,225,242,101,128,51,81,108,2,162,4,162,15,233,238,229,226,229,236,239,119,128,30,95,239,238,231,236,229,103,129,2,124,162,26,244,245,242,238,229,100,128,2,122,237,239,238,239,243,240,225,227,101,128,255,82,111,3,162,55,162,66,162,91,232,233,242,225,231,225,238,97,128,48,141,235,225,244,225,235,225,238,97,129,48,237,162,79,232,225,236,230,247,233,228,244,104,128,255,155,242,245,225,244,232,225,105,128,14,35,240,225,242,229,110,128,36,173,114,3,162,117,162,153,162,183,97,3,162,125,162,135,162,142,226,229,238,231,225,236,105,128,9,220,228,229,246,97,128,9,49,231,245,242,237,245,235,232,105,128,10,92,229,104,2,162,160,162,169,225,242,225,226,233,99,128,6,145,230,233,238,225,236,225,242,225,226,233,99,128,251,141,246,239,227,225,236,233,99,4,162,199,162,209,162,216,162,227,226,229,238,231,225,236,105,128,9,224,228,229,246,97,128,9,96,231,245,234,225,242,225,244,105,128,10,224,246,239,247,229,236,243,233,231,110,3,162,243,162,253,163,4,226,229,238,231,225,236,105,128,9,196,228,229,246,97,128,9,68,231,245,234,225,242,225,244,105,128,10,196,243,245,240,229,242,233,239,114,128,246,241,116,2,163,32,163,40,226,236,239,227,107,128,37,144,245,242,238,229,100,129,2,121,163,50,243,245,240,229,242,233,239,114,128,2,180,117,4,163,71,163,82,163,107,163,154,232,233,242,225,231,225,238,97,128,48,139,235,225,244,225,235,225,238,97,129,48,235,163,95,232,225,236,230,247,233,228,244,104,128,255,153,112,2,163,113,163,148,229,101,2,163,120,163,134,237,225,242,235,226,229,238,231,225,236,105,128,9,242,243,233,231,238,226,229,238,231,225,236,105,128,9,243,233,225,104,128,246,221,244,232,225,105,128,14,36,246,239,227,225,236,233,99,4,163,177,163,187,163,194,163,205,226,229,238,231,225,236,105,128,9,139,228,229,246,97,128,9,11,231,245,234,225,242,225,244,105,128,10,139,246,239,247,229,236,243,233,231,110,3,163,221,163,231,163,238,226,229,238,231,225,236,105,128,9,195,228,229,246,97,128,9,67,231,245,234,225,242,225,244,105,128,10,195,115,147,0,115,164,35,166,5,166,16,166,142,166,181,169,123,169,134,172,21,174,159,174,205,174,232,175,167,175,234,177,11,177,21,177,207,178,24,178,194,178,204,97,9,164,55,164,65,164,86,164,158,164,183,164,194,164,219,164,251,165,35,226,229,238,231,225,236,105,128,9,184,227,245,244,101,129,1,91,164,74,228,239,244,225,227,227,229,238,116,128,30,101,100,5,164,98,164,107,164,113,164,127,164,143,225,242,225,226,233,99,128,6,53,229,246,97,128,9,56,230,233,238,225,236,225,242,225,226,233,99,128,254,186,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,187,237,229,228,233,225,236,225,242,225,226,233,99,128,254,188,231,117,2,164,165,164,174,234,225,242,225,244,105,128,10,184,242,237,245,235,232,105,128,10,56,232,233,242,225,231,225,238,97,128,48,85,235,225,244,225,235,225,238,97,129,48,181,164,207,232,225,236,230,247,233,228,244,104,128,255,123,236,236,225,236,236,225,232,239,245,225,236,225,249,232,229,247,225,243,225,236,236,225,237,225,242,225,226,233,99,128,253,250,237,229,235,104,130,5,225,165,6,165,26,228,225,231,229,243,104,129,251,65,165,17,232,229,226,242,229,119,128,251,65,232,229,226,242,229,119,128,5,225,242,97,5,165,48,165,122,165,130,165,180,165,188,97,5,165,60,165,68,165,76,165,107,165,115,225,244,232,225,105,128,14,50,229,244,232,225,105,128,14,65,233,237,225,233,109,2,165,86,165,97,225,236,225,233,244,232,225,105,128,14,68,245,225,238,244,232,225,105,128,14,67,237,244,232,225,105,128,14,51,244,232,225,105,128,14,48,229,244,232,225,105,128,14,64,105,3,165,138,165,162,165,173,105,2,165,144,165,155,236,229,230,244,244,232,225,105,128,248,134,244,232,225,105,128,14,53,236,229,230,244,244,232,225,105,128,248,133,244,232,225,105,128,14,52,239,244,232,225,105,128,14,66,117,3,165,196,165,246,165,253,101,3,165,204,165,228,165,239,101,2,165,210,165,221,236,229,230,244,244,232,225,105,128,248,136,244,232,225,105,128,14,55,236,229,230,244,244,232,225,105,128,248,135,244,232,225,105,128,14,54,244,232,225,105,128,14,56,245,244,232,225,105,128,14,57,226,239,240,239,237,239,230,111,128,49,25,99,5,166,28,166,49,166,58,166,107,166,129,225,242,239,110,129,1,97,166,37,228,239,244,225,227,227,229,238,116,128,30,103,229,228,233,236,236,97,128,1,95,232,247,97,131,2,89,166,70,166,81,166,100,227,249,242,233,236,236,233,99,128,4,217,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,219,232,239,239,107,128,2,90,233,242,99,2,166,115,166,120,236,101,128,36,226,245,237,230,236,229,120,128,1,93,239,237,237,225,225,227,227,229,238,116,128,2,25,228,239,116,2,166,150,166,159,225,227,227,229,238,116,128,30,97,226,229,236,239,119,129,30,99,166,169,228,239,244,225,227,227,229,238,116,128,30,105,101,9,166,201,166,217,166,252,167,61,167,164,167,191,167,216,168,41,168,68,225,231,245,236,236,226,229,236,239,247,227,237,98,128,3,60,99,2,166,223,166,245,239,238,100,129,32,51,166,231,244,239,238,229,227,232,233,238,229,243,101,128,2,202,244,233,239,110,128,0,167,229,110,4,167,7,167,16,167,30,167,46,225,242,225,226,233,99,128,6,51,230,233,238,225,236,225,242,225,226,233,99,128,254,178,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,179,237,229,228,233,225,236,225,242,225,226,233,99,128,254,180,231,239,108,135,5,182,167,81,167,95,167,100,167,109,167,124,167,140,167,151,49,2,167,87,167,91,51,128,5,182,102,128,5,182,178,99,128,5,182,232,229,226,242,229,119,128,5,182,238,225,242,242,239,247,232,229,226,242,229,119,128,5,182,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,182,244,225,232,229,226,242,229,119,128,5,146,247,233,228,229,232,229,226,242,229,119,128,5,182,104,2,167,170,167,181,225,242,237,229,238,233,225,110,128,5,125,233,242,225,231,225,238,97,128,48,91,235,225,244,225,235,225,238,97,129,48,187,167,204,232,225,236,230,247,233,228,244,104,128,255,126,237,105,2,167,223,168,10,227,239,236,239,110,131,0,59,167,237,167,246,168,2,225,242,225,226,233,99,128,6,27,237,239,238,239,243,240,225,227,101,128,255,27,243,237,225,236,108,128,254,84,246,239,233,227,229,228,237,225,242,235,235,225,238,97,129,48,156,168,29,232,225,236,230,247,233,228,244,104,128,255,159,238,116,2,168,48,168,58,233,243,241,245,225,242,101,128,51,34,239,243,241,245,225,242,101,128,51,35,246,229,110,142,0,55,168,102,168,111,168,121,168,151,168,158,168,168,168,193,168,220,168,254,169,10,169,21,169,54,169,62,169,73,225,242,225,226,233,99,128,6,103,226,229,238,231,225,236,105,128,9,237,227,233,242,227,236,101,129,36,102,168,132,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,144,228,229,246,97,128,9,109,229,233,231,232,244,232,115,128,33,94,231,117,2,168,175,168,184,234,225,242,225,244,105,128,10,237,242,237,245,235,232,105,128,10,109,232,97,2,168,200,168,211,227,235,225,242,225,226,233,99,128,6,103,238,231,250,232,239,117,128,48,39,105,2,168,226,168,244,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,38,238,230,229,242,233,239,114,128,32,135,237,239,238,239,243,240,225,227,101,128,255,23,239,236,228,243,244,249,236,101,128,247,55,112,2,169,27,169,34,225,242,229,110,128,36,122,229,114,2,169,41,169,47,233,239,100,128,36,142,243,233,225,110,128,6,247,242,239,237,225,110,128,33,118,243,245,240,229,242,233,239,114,128,32,119,116,2,169,79,169,117,229,229,110,2,169,87,169,96,227,233,242,227,236,101,128,36,112,112,2,169,102,169,109,225,242,229,110,128,36,132,229,242,233,239,100,128,36,152,232,225,105,128,14,87,230,244,232,249,240,232,229,110,128,0,173,104,7,169,150,170,124,170,135,170,149,171,94,171,107,172,15,97,6,169,164,169,175,169,185,169,196,170,83,170,108,225,242,237,229,238,233,225,110,128,5,119,226,229,238,231,225,236,105,128,9,182,227,249,242,233,236,236,233,99,128,4,72,100,2,169,202,170,42,228,97,4,169,213,169,222,169,253,170,11,225,242,225,226,233,99,128,6,81,228,225,237,237,97,2,169,232,169,241,225,242,225,226,233,99,128,252,97,244,225,238,225,242,225,226,233,99,128,252,94,230,225,244,232,225,225,242,225,226,233,99,128,252,96,235,225,243,242,97,2,170,21,170,30,225,242,225,226,233,99,128,252,98,244,225,238,225,242,225,226,233,99,128,252,95,101,132,37,146,170,54,170,61,170,69,170,78,228,225,242,107,128,37,147,236,233,231,232,116,128,37,145,237,229,228,233,245,109,128,37,146,246,97,128,9,54,231,117,2,170,90,170,99,234,225,242,225,244,105,128,10,182,242,237,245,235,232,105,128,10,54,236,243,232,229,236,229,244,232,229,226,242,229,119,128,5,147,226,239,240,239,237,239,230,111,128,49,21,227,232,225,227,249,242,233,236,236,233,99,128,4,73,101,4,170,159,170,224,170,234,170,251,229,110,4,170,170,170,179,170,193,170,209,225,242,225,226,233,99,128,6,52,230,233,238,225,236,225,242,225,226,233,99,128,254,182,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,183,237,229,228,233,225,236,225,242,225,226,233,99,128,254,184,233,227,239,240,244,233,99,128,3,227,241,229,108,129,32,170,170,242,232,229,226,242,229,119,128,32,170,246,97,134,5,176,171,12,171,27,171,41,171,50,171,65,171,81,49,2,171,18,171,23,177,53,128,5,176,53,128,5,176,50,2,171,33,171,37,50,128,5,176,101,128,5,176,232,229,226,242,229,119,128,5,176,238,225,242,242,239,247,232,229,226,242,229,119,128,5,176,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,176,247,233,228,229,232,229,226,242,229,119,128,5,176,232,225,227,249,242,233,236,236,233,99,128,4,187,105,2,171,113,171,124,237,225,227,239,240,244,233,99,128,3,237,110,131,5,233,171,134,171,217,171,226,100,2,171,140,171,206,225,231,229,243,104,130,251,73,171,152,171,161,232,229,226,242,229,119,128,251,73,115,2,171,167,171,187,232,233,238,228,239,116,129,251,44,171,178,232,229,226,242,229,119,128,251,44,233,238,228,239,116,129,251,45,171,197,232,229,226,242,229,119,128,251,45,239,244,232,229,226,242,229,119,128,5,193,232,229,226,242,229,119,128,5,233,115,2,171,232,171,252,232,233,238,228,239,116,129,251,42,171,243,232,229,226,242,229,119,128,251,42,233,238,228,239,116,129,251,43,172,6,232,229,226,242,229,119,128,251,43,239,239,107,128,2,130,105,8,172,39,172,83,172,94,172,119,172,149,172,157,172,170,173,85,231,237,97,131,3,195,172,51,172,55,172,63,49,128,3,194,230,233,238,225,108,128,3,194,236,245,238,225,244,229,243,249,237,226,239,236,231,242,229,229,107,128,3,242,232,233,242,225,231,225,238,97,128,48,87,235,225,244,225,235,225,238,97,129,48,183,172,107,232,225,236,230,247,233,228,244,104,128,255,124,236,245,113,2,172,127,172,136,232,229,226,242,229,119,128,5,189,236,229,230,244,232,229,226,242,229,119,128,5,189,237,233,236,225,114,128,34,60,238,228,239,244,232,229,226,242,229,119,128,5,194,239,115,6,172,185,172,220,172,252,173,24,173,38,173,70,97,2,172,191,172,206,227,233,242,227,236,229,235,239,242,229,225,110,128,50,116,240,225,242,229,238,235,239,242,229,225,110,128,50,20,227,105,2,172,227,172,239,229,245,227,235,239,242,229,225,110,128,49,126,242,227,236,229,235,239,242,229,225,110,128,50,102,107,2,173,2,173,16,233,249,229,239,235,235,239,242,229,225,110,128,49,122,239,242,229,225,110,128,49,69,238,233,229,245,238,235,239,242,229,225,110,128,49,123,112,2,173,44,173,57,225,242,229,238,235,239,242,229,225,110,128,50,6,233,229,245,240,235,239,242,229,225,110,128,49,125,244,233,235,229,245,244,235,239,242,229,225,110,128,49,124,120,141,0,54,173,115,173,124,173,134,173,164,173,171,173,196,173,223,174,1,174,13,174,24,174,57,174,65,174,76,225,242,225,226,233,99,128,6,102,226,229,238,231,225,236,105,128,9,236,227,233,242,227,236,101,129,36,101,173,145,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,143,228,229,246,97,128,9,108,231,117,2,173,178,173,187,234,225,242,225,244,105,128,10,236,242,237,245,235,232,105,128,10,108,232,97,2,173,203,173,214,227,235,225,242,225,226,233,99,128,6,102,238,231,250,232,239,117,128,48,38,105,2,173,229,173,247,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,37,238,230,229,242,233,239,114,128,32,134,237,239,238,239,243,240,225,227,101,128,255,22,239,236,228,243,244,249,236,101,128,247,54,112,2,174,30,174,37,225,242,229,110,128,36,121,229,114,2,174,44,174,50,233,239,100,128,36,141,243,233,225,110,128,6,246,242,239,237,225,110,128,33,117,243,245,240,229,242,233,239,114,128,32,118,116,2,174,82,174,153,229,229,110,2,174,90,174,132,99,2,174,96,174,104,233,242,227,236,101,128,36,111,245,242,242,229,238,227,249,228,229,238,239,237,233,238,225,244,239,242,226,229,238,231,225,236,105,128,9,249,112,2,174,138,174,145,225,242,229,110,128,36,131,229,242,233,239,100,128,36,151,232,225,105,128,14,86,108,2,174,165,174,185,225,243,104,129,0,47,174,173,237,239,238,239,243,240,225,227,101,128,255,15,239,238,103,129,1,127,174,193,228,239,244,225,227,227,229,238,116,128,30,155,109,2,174,211,174,221,233,236,229,230,225,227,101,128,38,58,239,238,239,243,240,225,227,101,128,255,83,111,6,174,246,175,40,175,51,175,76,175,121,175,132,102,2,174,252,175,10,240,225,243,245,241,232,229,226,242,229,119,128,5,195,116,2,175,16,175,25,232,249,240,232,229,110,128,0,173,243,233,231,238,227,249,242,233,236,236,233,99,128,4,76,232,233,242,225,231,225,238,97,128,48,93,235,225,244,225,235,225,238,97,129,48,189,175,64,232,225,236,230,247,233,228,244,104,128,255,127,236,233,228,245,115,2,175,86,175,103,236,239,238,231,239,246,229,242,236,225,249,227,237,98,128,3,56,243,232,239,242,244,239,246,229,242,236,225,249,227,237,98,128,3,55,242,245,243,233,244,232,225,105,128,14,41,115,3,175,140,175,150,175,158,225,236,225,244,232,225,105,128,14,40,239,244,232,225,105,128,14,11,245,225,244,232,225,105,128,14,42,240,97,3,175,176,175,196,175,228,227,101,129,0,32,175,183,232,225,227,235,225,242,225,226,233,99,128,0,32,228,101,129,38,96,175,203,243,245,233,116,2,175,212,175,220,226,236,225,227,107,128,38,96,247,232,233,244,101,128,38,100,242,229,110,128,36,174,241,245,225,242,101,11,176,6,176,17,176,31,176,56,176,73,176,99,176,114,176,147,176,174,176,230,176,245,226,229,236,239,247,227,237,98,128,3,59,99,2,176,23,176,27,99,128,51,196,109,128,51,157,228,233,225,231,239,238,225,236,227,242,239,243,243,232,225,244,227,232,230,233,236,108,128,37,169,232,239,242,233,250,239,238,244,225,236,230,233,236,108,128,37,164,107,2,176,79,176,83,103,128,51,143,109,129,51,158,176,89,227,225,240,233,244,225,108,128,51,206,108,2,176,105,176,109,110,128,51,209,239,103,128,51,210,109,4,176,124,176,128,176,133,176,137,103,128,51,142,233,108,128,51,213,109,128,51,156,243,241,245,225,242,229,100,128,51,161,239,242,244,232,239,231,239,238,225,236,227,242,239,243,243,232,225,244,227,232,230,233,236,108,128,37,166,245,240,240,229,114,2,176,184,176,207,236,229,230,244,244,239,236,239,247,229,242,242,233,231,232,244,230,233,236,108,128,37,167,242,233,231,232,244,244,239,236,239,247,229,242,236,229,230,244,230,233,236,108,128,37,168,246,229,242,244,233,227,225,236,230,233,236,108,128,37,165,247,232,233,244,229,247,233,244,232,243,237,225,236,236,226,236,225,227,107,128,37,163,242,243,241,245,225,242,101,128,51,219,115,2,177,27,177,197,97,4,177,37,177,47,177,54,177,65,226,229,238,231,225,236,105,128,9,183,228,229,246,97,128,9,55,231,245,234,225,242,225,244,105,128,10,183,238,103,8,177,84,177,98,177,112,177,126,177,141,177,155,177,169,177,182,227,233,229,245,227,235,239,242,229,225,110,128,49,73,232,233,229,245,232,235,239,242,229,225,110,128,49,133,233,229,245,238,231,235,239,242,229,225,110,128,49,128,235,233,249,229,239,235,235,239,242,229,225,110,128,49,50,238,233,229,245,238,235,239,242,229,225,110,128,49,101,240,233,229,245,240,235,239,242,229,225,110,128,49,67,243,233,239,243,235,239,242,229,225,110,128,49,70,244,233,235,229,245,244,235,239,242,229,225,110,128,49,56,245,240,229,242,233,239,114,128,246,242,116,2,177,213,177,236,229,242,236,233,238,103,129,0,163,177,224,237,239,238,239,243,240,225,227,101,128,255,225,242,239,235,101,2,177,245,178,6,236,239,238,231,239,246,229,242,236,225,249,227,237,98,128,3,54,243,232,239,242,244,239,246,229,242,236,225,249,227,237,98,128,3,53,117,7,178,40,178,72,178,94,178,105,178,146,178,156,178,160,226,243,229,116,130,34,130,178,51,178,62,238,239,244,229,241,245,225,108,128,34,138,239,242,229,241,245,225,108,128,34,134,99,2,178,78,178,86,227,229,229,228,115,128,34,123,232,244,232,225,116,128,34,11,232,233,242,225,231,225,238,97,128,48,89,107,2,178,111,178,135,225,244,225,235,225,238,97,129,48,185,178,123,232,225,236,230,247,233,228,244,104,128,255,125,245,238,225,242,225,226,233,99,128,6,82,237,237,225,244,233,239,110,128,34,17,110,128,38,60,240,229,242,243,229,116,130,34,131,178,173,178,184,238,239,244,229,241,245,225,108,128,34,139,239,242,229,241,245,225,108,128,34,135,246,243,241,245,225,242,101,128,51,220,249,239,245,247,225,229,242,225,243,241,245,225,242,101,128,51,124,116,144,0,116,179,1,180,10,180,31,180,174,180,214,183,6,186,144,187,219,187,231,187,243,189,20,189,45,189,131,190,55,190,239,191,73,97,10,179,23,179,33,179,54,179,61,179,86,179,164,179,181,179,206,179,220,179,224,226,229,238,231,225,236,105,128,9,164,227,107,2,179,40,179,47,228,239,247,110,128,34,164,236,229,230,116,128,34,163,228,229,246,97,128,9,36,231,117,2,179,68,179,77,234,225,242,225,244,105,128,10,164,242,237,245,235,232,105,128,10,36,104,4,179,96,179,105,179,119,179,149,225,242,225,226,233,99,128,6,55,230,233,238,225,236,225,242,225,226,233,99,128,254,194,105,2,179,125,179,140,238,233,244,233,225,236,225,242,225,226,233,99,128,254,195,242,225,231,225,238,97,128,48,95,237,229,228,233,225,236,225,242,225,226,233,99,128,254,196,233,243,249,239,245,229,242,225,243,241,245,225,242,101,128,51,125,235,225,244,225,235,225,238,97,129,48,191,179,194,232,225,236,230,247,233,228,244,104,128,255,128,244,247,229,229,236,225,242,225,226,233,99,128,6,64,117,128,3,196,118,130,5,234,179,232,180,1,228,225,231,229,115,129,251,74,179,242,104,129,251,74,179,248,232,229,226,242,229,119,128,251,74,232,229,226,242,229,119,128,5,234,98,2,180,16,180,21,225,114,128,1,103,239,240,239,237,239,230,111,128,49,10,99,6,180,45,180,52,180,59,180,68,180,134,180,161,225,242,239,110,128,1,101,227,245,242,108,128,2,168,229,228,233,236,236,97,128,1,99,232,229,104,4,180,80,180,89,180,103,180,119,225,242,225,226,233,99,128,6,134,230,233,238,225,236,225,242,225,226,233,99,128,251,123,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,124,237,229,228,233,225,236,225,242,225,226,233,99,128,251,125,233,242,99,2,180,142,180,147,236,101,128,36,227,245,237,230,236,229,248,226,229,236,239,119,128,30,113,239,237,237,225,225,227,227,229,238,116,128,1,99,100,2,180,180,180,190,233,229,242,229,243,233,115,128,30,151,239,116,2,180,197,180,206,225,227,227,229,238,116,128,30,107,226,229,236,239,119,128,30,109,101,9,180,234,180,245,181,9,182,19,182,44,182,108,182,175,182,180,182,232,227,249,242,233,236,236,233,99,128,4,66,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,173,104,7,181,25,181,34,181,48,181,88,181,118,181,159,182,1,225,242,225,226,233,99,128,6,42,230,233,238,225,236,225,242,225,226,233,99,128,254,150,232,225,232,105,2,181,57,181,72,238,233,244,233,225,236,225,242,225,226,233,99,128,252,162,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,12,105,2,181,94,181,109,238,233,244,233,225,236,225,242,225,226,233,99,128,254,151,242,225,231,225,238,97,128,48,102,234,229,229,237,105,2,181,128,181,143,238,233,244,233,225,236,225,242,225,226,233,99,128,252,161,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,11,109,2,181,165,181,199,225,242,226,245,244,97,2,181,176,181,185,225,242,225,226,233,99,128,6,41,230,233,238,225,236,225,242,225,226,233,99,128,254,148,101,2,181,205,181,218,228,233,225,236,225,242,225,226,233,99,128,254,152,229,237,105,2,181,226,181,241,238,233,244,233,225,236,225,242,225,226,233,99,128,252,164,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,14,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,115,235,225,244,225,235,225,238,97,129,48,198,182,32,232,225,236,230,247,233,228,244,104,128,255,131,108,2,182,50,182,69,229,240,232,239,238,101,129,33,33,182,61,226,236,225,227,107,128,38,14,233,243,232,97,2,182,78,182,93,231,229,228,239,236,225,232,229,226,242,229,119,128,5,160,241,229,244,225,238,225,232,229,226,242,229,119,128,5,169,110,4,182,118,182,127,182,146,182,167,227,233,242,227,236,101,128,36,105,233,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,41,112,2,182,152,182,159,225,242,229,110,128,36,125,229,242,233,239,100,128,36,145,242,239,237,225,110,128,33,121,243,104,128,2,167,116,131,5,216,182,190,182,210,182,219,228,225,231,229,243,104,129,251,56,182,201,232,229,226,242,229,119,128,251,56,232,229,226,242,229,119,128,5,216,243,229,227,249,242,233,236,236,233,99,128,4,181,246,233,114,2,182,240,182,249,232,229,226,242,229,119,128,5,155,236,229,230,244,232,229,226,242,229,119,128,5,155,104,6,183,20,183,172,184,38,184,170,185,77,186,134,97,5,183,32,183,42,183,49,183,74,183,103,226,229,238,231,225,236,105,128,9,165,228,229,246,97,128,9,37,231,117,2,183,56,183,65,234,225,242,225,244,105,128,10,165,242,237,245,235,232,105,128,10,37,108,2,183,80,183,89,225,242,225,226,233,99,128,6,48,230,233,238,225,236,225,242,225,226,233,99,128,254,172,238,244,232,225,235,232,225,116,3,183,118,183,149,183,156,236,239,119,2,183,126,183,137,236,229,230,244,244,232,225,105,128,248,152,242,233,231,232,244,244,232,225,105,128,248,151,244,232,225,105,128,14,76,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,150,101,3,183,180,183,244,184,11,104,4,183,190,183,199,183,213,183,229,225,242,225,226,233,99,128,6,43,230,233,238,225,236,225,242,225,226,233,99,128,254,154,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,155,237,229,228,233,225,236,225,242,225,226,233,99,128,254,156,242,101,2,183,251,184,4,229,248,233,243,244,115,128,34,3,230,239,242,101,128,34,52,244,97,130,3,184,184,20,184,24,49,128,3,209,243,249,237,226,239,236,231,242,229,229,107,128,3,209,105,2,184,44,184,130,229,245,244,104,4,184,57,184,92,184,107,184,116,97,2,184,63,184,78,227,233,242,227,236,229,235,239,242,229,225,110,128,50,121,240,225,242,229,238,235,239,242,229,225,110,128,50,25,227,233,242,227,236,229,235,239,242,229,225,110,128,50,107,235,239,242,229,225,110,128,49,76,240,225,242,229,238,235,239,242,229,225,110,128,50,11,242,244,229,229,110,2,184,140,184,149,227,233,242,227,236,101,128,36,108,112,2,184,155,184,162,225,242,229,110,128,36,128,229,242,233,239,100,128,36,148,111,6,184,184,184,201,184,206,184,220,184,225,185,22,238,225,238,231,237,239,238,244,232,239,244,232,225,105,128,14,17,239,107,128,1,173,240,232,245,244,232,225,239,244,232,225,105,128,14,18,242,110,128,0,254,244,104,3,184,234,185,2,185,12,97,2,184,240,184,250,232,225,238,244,232,225,105,128,14,23,238,244,232,225,105,128,14,16,239,238,231,244,232,225,105,128,14,24,245,238,231,244,232,225,105,128,14,22,245,243,225,238,100,2,185,32,185,43,227,249,242,233,236,236,233,99,128,4,130,243,243,229,240,225,242,225,244,239,114,2,185,58,185,67,225,242,225,226,233,99,128,6,108,240,229,242,243,233,225,110,128,6,108,242,229,101,144,0,51,185,115,185,124,185,134,185,164,185,171,185,181,185,206,185,233,186,11,186,23,186,42,186,53,186,86,186,108,186,116,186,127,225,242,225,226,233,99,128,6,99,226,229,238,231,225,236,105,128,9,233,227,233,242,227,236,101,129,36,98,185,145,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,140,228,229,246,97,128,9,105,229,233,231,232,244,232,115,128,33,92,231,117,2,185,188,185,197,234,225,242,225,244,105,128,10,233,242,237,245,235,232,105,128,10,105,232,97,2,185,213,185,224,227,235,225,242,225,226,233,99,128,6,99,238,231,250,232,239,117,128,48,35,105,2,185,239,186,1,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,34,238,230,229,242,233,239,114,128,32,131,237,239,238,239,243,240,225,227,101,128,255,19,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,246,239,236,228,243,244,249,236,101,128,247,51,112,2,186,59,186,66,225,242,229,110,128,36,118,229,114,2,186,73,186,79,233,239,100,128,36,138,243,233,225,110,128,6,243,241,245,225,242,244,229,242,115,129,0,190,186,99,229,237,228,225,243,104,128,246,222,242,239,237,225,110,128,33,114,243,245,240,229,242,233,239,114,128,0,179,244,232,225,105,128,14,83,250,243,241,245,225,242,101,128,51,148,105,7,186,160,186,171,187,30,187,128,187,140,187,189,187,206,232,233,242,225,231,225,238,97,128,48,97,107,2,186,177,186,201,225,244,225,235,225,238,97,129,48,193,186,189,232,225,236,230,247,233,228,244,104,128,255,129,229,245,116,4,186,213,186,248,187,7,187,16,97,2,186,219,186,234,227,233,242,227,236,229,235,239,242,229,225,110,128,50,112,240,225,242,229,238,235,239,242,229,225,110,128,50,16,227,233,242,227,236,229,235,239,242,229,225,110,128,50,98,235,239,242,229,225,110,128,49,55,240,225,242,229,238,235,239,242,229,225,110,128,50,2,236,228,101,133,2,220,187,46,187,57,187,74,187,86,187,114,226,229,236,239,247,227,237,98,128,3,48,99,2,187,63,187,68,237,98,128,3,3,239,237,98,128,3,3,228,239,245,226,236,229,227,237,98,128,3,96,111,2,187,92,187,102,240,229,242,225,244,239,114,128,34,60,246,229,242,236,225,249,227,237,98,128,3,52,246,229,242,244,233,227,225,236,227,237,98,128,3,62,237,229,243,227,233,242,227,236,101,128,34,151,112,2,187,146,187,176,229,232,97,2,187,154,187,163,232,229,226,242,229,119,128,5,150,236,229,230,244,232,229,226,242,229,119,128,5,150,240,233,231,245,242,237,245,235,232,105,128,10,112,244,236,239,227,249,242,233,236,236,233,227,227,237,98,128,4,131,247,238,225,242,237,229,238,233,225,110,128,5,127,236,233,238,229,226,229,236,239,119,128,30,111,237,239,238,239,243,240,225,227,101,128,255,84,111,7,188,3,188,14,188,25,188,50,188,170,188,182,189,10,225,242,237,229,238,233,225,110,128,5,105,232,233,242,225,231,225,238,97,128,48,104,235,225,244,225,235,225,238,97,129,48,200,188,38,232,225,236,230,247,233,228,244,104,128,255,132,110,3,188,58,188,156,188,161,101,4,188,68,188,137,188,144,188,150,226,225,114,4,188,80,188,109,188,119,188,128,229,248,244,242,97,2,188,90,188,100,232,233,231,232,237,239,100,128,2,229,236,239,247,237,239,100,128,2,233,232,233,231,232,237,239,100,128,2,230,236,239,247,237,239,100,128,2,232,237,233,228,237,239,100,128,2,231,230,233,246,101,128,1,189,243,233,120,128,1,133,244,247,111,128,1,168,239,115,128,3,132,243,241,245,225,242,101,128,51,39,240,225,244,225,235,244,232,225,105,128,14,15,242,244,239,233,243,229,243,232,229,236,236,226,242,225,227,235,229,116,2,188,205,188,235,236,229,230,116,130,48,20,188,216,188,224,243,237,225,236,108,128,254,93,246,229,242,244,233,227,225,108,128,254,57,242,233,231,232,116,130,48,21,188,247,188,255,243,237,225,236,108,128,254,94,246,229,242,244,233,227,225,108,128,254,58,244,225,239,244,232,225,105,128,14,21,240,97,2,189,27,189,39,236,225,244,225,236,232,239,239,107,128,1,171,242,229,110,128,36,175,114,3,189,53,189,84,189,99,225,228,229,237,225,242,107,129,33,34,189,65,115,2,189,71,189,77,225,238,115,128,248,234,229,242,233,102,128,246,219,229,244,242,239,230,236,229,248,232,239,239,107,128,2,136,233,225,103,4,189,111,189,116,189,121,189,126,228,110,128,37,188,236,102,128,37,196,242,116,128,37,186,245,112,128,37,178,115,132,2,166,189,143,189,182,190,32,190,45,225,228,105,130,5,230,189,153,189,173,228,225,231,229,243,104,129,251,70,189,164,232,229,226,242,229,119,128,251,70,232,229,226,242,229,119,128,5,230,101,2,189,188,189,199,227,249,242,233,236,236,233,99,128,4,70,242,101,134,5,181,189,216,189,230,189,235,189,244,190,3,190,19,49,2,189,222,189,226,50,128,5,181,101,128,5,181,178,98,128,5,181,232,229,226,242,229,119,128,5,181,238,225,242,242,239,247,232,229,226,242,229,119,128,5,181,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,181,247,233,228,229,232,229,226,242,229,119,128,5,181,232,229,227,249,242,233,236,236,233,99,128,4,91,245,240,229,242,233,239,114,128,246,243,116,4,190,65,190,115,190,180,190,231,97,3,190,73,190,83,190,90,226,229,238,231,225,236,105,128,9,159,228,229,246,97,128,9,31,231,117,2,190,97,190,106,234,225,242,225,244,105,128,10,159,242,237,245,235,232,105,128,10,31,229,104,4,190,126,190,135,190,149,190,165,225,242,225,226,233,99,128,6,121,230,233,238,225,236,225,242,225,226,233,99,128,251,103,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,104,237,229,228,233,225,236,225,242,225,226,233,99,128,251,105,232,97,3,190,189,190,199,190,206,226,229,238,231,225,236,105,128,9,160,228,229,246,97,128,9,32,231,117,2,190,213,190,222,234,225,242,225,244,105,128,10,160,242,237,245,235,232,105,128,10,32,245,242,238,229,100,128,2,135,117,3,190,247,191,2,191,27,232,233,242,225,231,225,238,97,128,48,100,235,225,244,225,235,225,238,97,129,48,196,191,15,232,225,236,230,247,233,228,244,104,128,255,130,243,237,225,236,108,2,191,37,191,48,232,233,242,225,231,225,238,97,128,48,99,235,225,244,225,235,225,238,97,129,48,195,191,61,232,225,236,230,247,233,228,244,104,128,255,111,119,2,191,79,191,184,101,2,191,85,191,133,236,246,101,3,191,95,191,104,191,125,227,233,242,227,236,101,128,36,107,112,2,191,110,191,117,225,242,229,110,128,36,127,229,242,233,239],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+51200);allocate([100,128,36,147,242,239,237,225,110,128,33,123,238,244,121,3,191,143,191,152,191,163,227,233,242,227,236,101,128,36,115,232,225,238,231,250,232,239,117,128,83,68,112,2,191,169,191,176,225,242,229,110,128,36,135,229,242,233,239,100,128,36,155,111,142,0,50,191,216,191,225,191,235,192,9,192,61,192,86,192,113,192,147,192,159,192,178,192,189,192,222,192,230,192,254,225,242,225,226,233,99,128,6,98,226,229,238,231,225,236,105,128,9,232,227,233,242,227,236,101,129,36,97,191,246,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,139,100,2,192,15,192,21,229,246,97,128,9,104,239,116,2,192,28,192,39,229,238,236,229,225,228,229,114,128,32,37,236,229,225,228,229,114,129,32,37,192,50,246,229,242,244,233,227,225,108,128,254,48,231,117,2,192,68,192,77,234,225,242,225,244,105,128,10,232,242,237,245,235,232,105,128,10,104,232,97,2,192,93,192,104,227,235,225,242,225,226,233,99,128,6,98,238,231,250,232,239,117,128,48,34,105,2,192,119,192,137,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,33,238,230,229,242,233,239,114,128,32,130,237,239,238,239,243,240,225,227,101,128,255,18,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,245,239,236,228,243,244,249,236,101,128,247,50,112,2,192,195,192,202,225,242,229,110,128,36,117,229,114,2,192,209,192,215,233,239,100,128,36,137,243,233,225,110,128,6,242,242,239,237,225,110,128,33,113,115,2,192,236,192,244,244,242,239,235,101,128,1,187,245,240,229,242,233,239,114,128,0,178,244,104,2,193,5,193,10,225,105,128,14,82,233,242,228,115,128,33,84,117,145,0,117,193,55,193,63,193,104,193,161,194,43,194,80,194,203,194,219,195,14,195,84,195,165,195,174,196,37,196,61,196,169,196,197,197,55,225,227,245,244,101,128,0,250,98,4,193,73,193,78,193,87,193,97,225,114,128,2,137,229,238,231,225,236,105,128,9,137,239,240,239,237,239,230,111,128,49,40,242,229,246,101,128,1,109,99,3,193,112,193,119,193,151,225,242,239,110,128,1,212,233,242,99,2,193,127,193,132,236,101,128,36,228,245,237,230,236,229,120,129,0,251,193,143,226,229,236,239,119,128,30,119,249,242,233,236,236,233,99,128,4,67,100,5,193,173,193,184,193,207,193,213,194,33,225,244,244,225,228,229,246,97,128,9,81,226,108,2,193,191,193,199,225,227,245,244,101,128,1,113,231,242,225,246,101,128,2,21,229,246,97,128,9,9,233,229,242,229,243,233,115,133,0,252,193,233,193,241,193,249,194,16,194,24,225,227,245,244,101,128,1,216,226,229,236,239,119,128,30,115,99,2,193,255,194,6,225,242,239,110,128,1,218,249,242,233,236,236,233,99,128,4,241,231,242,225,246,101,128,1,220,237,225,227,242,239,110,128,1,214,239,244,226,229,236,239,119,128,30,229,103,2,194,49,194,56,242,225,246,101,128,0,249,117,2,194,62,194,71,234,225,242,225,244,105,128,10,137,242,237,245,235,232,105,128,10,9,104,3,194,88,194,98,194,176,233,242,225,231,225,238,97,128,48,70,111,2,194,104,194,114,239,235,225,226,239,246,101,128,30,231,242,110,133,1,176,194,129,194,137,194,148,194,156,194,168,225,227,245,244,101,128,30,233,228,239,244,226,229,236,239,119,128,30,241,231,242,225,246,101,128,30,235,232,239,239,235,225,226,239,246,101,128,30,237,244,233,236,228,101,128,30,239,245,238,231,225,242,245,237,236,225,245,116,129,1,113,194,192,227,249,242,233,236,236,233,99,128,4,243,233,238,246,229,242,244,229,228,226,242,229,246,101,128,2,23,107,3,194,227,194,251,195,6,225,244,225,235,225,238,97,129,48,166,194,239,232,225,236,230,247,233,228,244,104,128,255,115,227,249,242,233,236,236,233,99,128,4,121,239,242,229,225,110,128,49,92,109,2,195,20,195,73,97,2,195,26,195,59,227,242,239,110,130,1,107,195,37,195,48,227,249,242,233,236,236,233,99,128,4,239,228,233,229,242,229,243,233,115,128,30,123,244,242,225,231,245,242,237,245,235,232,105,128,10,65,239,238,239,243,240,225,227,101,128,255,85,110,2,195,90,195,145,228,229,242,243,227,239,242,101,132,0,95,195,109,195,115,195,127,195,138,228,226,108,128,32,23,237,239,238,239,243,240,225,227,101,128,255,63,246,229,242,244,233,227,225,108,128,254,51,247,225,246,121,128,254,79,105,2,195,151,195,156,239,110,128,34,42,246,229,242,243,225,108,128,34,0,239,231,239,238,229,107,128,1,115,112,5,195,186,195,193,195,201,195,216,196,11,225,242,229,110,128,36,176,226,236,239,227,107,128,37,128,240,229,242,228,239,244,232,229,226,242,229,119,128,5,196,243,233,236,239,110,131,3,197,195,230,195,251,196,3,228,233,229,242,229,243,233,115,129,3,203,195,243,244,239,238,239,115,128,3,176,236,225,244,233,110,128,2,138,244,239,238,239,115,128,3,205,244,225,227,107,2,196,20,196,31,226,229,236,239,247,227,237,98,128,3,29,237,239,100,128,2,212,114,2,196,43,196,55,225,231,245,242,237,245,235,232,105,128,10,115,233,238,103,128,1,111,115,3,196,69,196,84,196,129,232,239,242,244,227,249,242,233,236,236,233,99,128,4,94,237,225,236,108,2,196,93,196,104,232,233,242,225,231,225,238,97,128,48,69,235,225,244,225,235,225,238,97,129,48,165,196,117,232,225,236,230,247,233,228,244,104,128,255,105,244,242,225,233,231,232,116,2,196,141,196,152,227,249,242,233,236,236,233,99,128,4,175,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,177,244,233,236,228,101,130,1,105,196,181,196,189,225,227,245,244,101,128,30,121,226,229,236,239,119,128,30,117,117,5,196,209,196,219,196,226,196,251,197,11,226,229,238,231,225,236,105,128,9,138,228,229,246,97,128,9,10,231,117,2,196,233,196,242,234,225,242,225,244,105,128,10,138,242,237,245,235,232,105,128,10,10,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,66,246,239,247,229,236,243,233,231,110,3,197,27,197,37,197,44,226,229,238,231,225,236,105,128,9,194,228,229,246,97,128,9,66,231,245,234,225,242,225,244,105,128,10,194,246,239,247,229,236,243,233,231,110,3,197,71,197,81,197,88,226,229,238,231,225,236,105,128,9,193,228,229,246,97,128,9,65,231,245,234,225,242,225,244,105,128,10,193,118,139,0,118,197,125,198,17,198,26,198,37,198,222,198,229,199,71,199,83,199,183,199,191,199,212,97,4,197,135,197,142,197,167,197,178,228,229,246,97,128,9,53,231,117,2,197,149,197,158,234,225,242,225,244,105,128,10,181,242,237,245,235,232,105,128,10,53,235,225,244,225,235,225,238,97,128,48,247,118,132,5,213,197,190,197,217,197,249,198,5,228,225,231,229,243,104,130,251,53,197,203,197,208,182,53,128,251,53,232,229,226,242,229,119,128,251,53,104,2,197,223,197,231,229,226,242,229,119,128,5,213,239,236,225,109,129,251,75,197,240,232,229,226,242,229,119,128,251,75,246,225,246,232,229,226,242,229,119,128,5,240,249,239,228,232,229,226,242,229,119,128,5,241,227,233,242,227,236,101,128,36,229,228,239,244,226,229,236,239,119,128,30,127,101,6,198,51,198,62,198,126,198,137,198,143,198,210,227,249,242,233,236,236,233,99,128,4,50,104,4,198,72,198,81,198,95,198,111,225,242,225,226,233,99,128,6,164,230,233,238,225,236,225,242,225,226,233,99,128,251,107,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,108,237,229,228,233,225,236,225,242,225,226,233,99,128,251,109,235,225,244,225,235,225,238,97,128,48,249,238,245,115,128,38,64,242,244,233,227,225,108,2,198,154,198,160,226,225,114,128,0,124,236,233,238,101,4,198,173,198,184,198,195,198,204,225,226,239,246,229,227,237,98,128,3,13,226,229,236,239,247,227,237,98,128,3,41,236,239,247,237,239,100,128,2,204,237,239,100,128,2,200,247,225,242,237,229,238,233,225,110,128,5,126,232,239,239,107,128,2,139,105,3,198,237,198,248,199,31,235,225,244,225,235,225,238,97,128,48,248,242,225,237,97,3,199,3,199,13,199,20,226,229,238,231,225,236,105,128,9,205,228,229,246,97,128,9,77,231,245,234,225,242,225,244,105,128,10,205,243,225,242,231,97,3,199,43,199,53,199,60,226,229,238,231,225,236,105,128,9,131,228,229,246,97,128,9,3,231,245,234,225,242,225,244,105,128,10,131,237,239,238,239,243,240,225,227,101,128,255,86,111,3,199,91,199,102,199,172,225,242,237,229,238,233,225,110,128,5,120,233,227,229,100,2,199,111,199,147,233,244,229,242,225,244,233,239,110,2,199,125,199,136,232,233,242,225,231,225,238,97,128,48,158,235,225,244,225,235,225,238,97,128,48,254,237,225,242,235,235,225,238,97,129,48,155,199,160,232,225,236,230,247,233,228,244,104,128,255,158,235,225,244,225,235,225,238,97,128,48,250,240,225,242,229,110,128,36,177,116,2,199,197,199,204,233,236,228,101,128,30,125,245,242,238,229,100,128,2,140,117,2,199,218,199,229,232,233,242,225,231,225,238,97,128,48,148,235,225,244,225,235,225,238,97,128,48,244,119,143,0,119,200,18,200,251,201,5,201,28,201,68,201,135,201,143,203,114,203,155,203,167,203,242,203,250,204,1,204,12,204,21,97,8,200,36,200,43,200,53,200,64,200,102,200,134,200,146,200,182,227,245,244,101,128,30,131,229,235,239,242,229,225,110,128,49,89,232,233,242,225,231,225,238,97,128,48,143,107,2,200,70,200,94,225,244,225,235,225,238,97,129,48,239,200,82,232,225,236,230,247,233,228,244,104,128,255,156,239,242,229,225,110,128,49,88,243,237,225,236,108,2,200,112,200,123,232,233,242,225,231,225,238,97,128,48,142,235,225,244,225,235,225,238,97,128,48,238,244,244,239,243,241,245,225,242,101,128,51,87,118,2,200,152,200,160,229,228,225,243,104,128,48,28,249,245,238,228,229,242,243,227,239,242,229,246,229,242,244,233,227,225,108,128,254,52,119,3,200,190,200,199,200,213,225,242,225,226,233,99,128,6,72,230,233,238,225,236,225,242,225,226,233,99,128,254,238,232,225,237,250,225,225,226,239,246,101,2,200,228,200,237,225,242,225,226,233,99,128,6,36,230,233,238,225,236,225,242,225,226,233,99,128,254,134,226,243,241,245,225,242,101,128,51,221,227,233,242,99,2,201,14,201,19,236,101,128,36,230,245,237,230,236,229,120,128,1,117,100,2,201,34,201,44,233,229,242,229,243,233,115,128,30,133,239,116,2,201,51,201,60,225,227,227,229,238,116,128,30,135,226,229,236,239,119,128,30,137,101,4,201,78,201,89,201,101,201,125,232,233,242,225,231,225,238,97,128,48,145,233,229,242,243,244,242,225,243,115,128,33,24,107,2,201,107,201,117,225,244,225,235,225,238,97,128,48,241,239,242,229,225,110,128,49,94,239,235,239,242,229,225,110,128,49,93,231,242,225,246,101,128,30,129,232,233,244,101,8,201,164,201,173,202,1,202,91,202,175,202,220,203,16,203,72,226,245,236,236,229,116,128,37,230,99,2,201,179,201,199,233,242,227,236,101,129,37,203,201,189,233,238,246,229,242,243,101,128,37,217,239,242,238,229,242,226,242,225,227,235,229,116,2,201,216,201,236,236,229,230,116,129,48,14,201,225,246,229,242,244,233,227,225,108,128,254,67,242,233,231,232,116,129,48,15,201,246,246,229,242,244,233,227,225,108,128,254,68,100,2,202,7,202,48,233,225,237,239,238,100,129,37,199,202,18,227,239,238,244,225,233,238,233,238,231,226,236,225,227,235,243,237,225,236,236,228,233,225,237,239,238,100,128,37,200,239,247,238,240,239,233,238,244,233,238,103,2,202,64,202,80,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,191,244,242,233,225,238,231,236,101,128,37,189,236,101,2,202,98,202,140,230,244,240,239,233,238,244,233,238,103,2,202,113,202,129,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,195,244,242,233,225,238,231,236,101,128,37,193,238,244,233,227,245,236,225,242,226,242,225,227,235,229,116,2,202,160,202,167,236,229,230,116,128,48,22,242,233,231,232,116,128,48,23,242,233,231,232,244,240,239,233,238,244,233,238,103,2,202,193,202,209,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,185,244,242,233,225,238,231,236,101,128,37,183,115,3,202,228,203,2,203,10,109,2,202,234,202,246,225,236,236,243,241,245,225,242,101,128,37,171,233,236,233,238,231,230,225,227,101,128,38,58,241,245,225,242,101,128,37,161,244,225,114,128,38,6,116,2,203,22,203,33,229,236,229,240,232,239,238,101,128,38,15,239,242,244,239,233,243,229,243,232,229,236,236,226,242,225,227,235,229,116,2,203,57,203,64,236,229,230,116,128,48,24,242,233,231,232,116,128,48,25,245,240,240,239,233,238,244,233,238,103,2,203,87,203,103,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,181,244,242,233,225,238,231,236,101,128,37,179,105,2,203,120,203,131,232,233,242,225,231,225,238,97,128,48,144,107,2,203,137,203,147,225,244,225,235,225,238,97,128,48,240,239,242,229,225,110,128,49,95,237,239,238,239,243,240,225,227,101,128,255,87,111,4,203,177,203,188,203,213,203,231,232,233,242,225,231,225,238,97,128,48,146,235,225,244,225,235,225,238,97,129,48,242,203,201,232,225,236,230,247,233,228,244,104,128,255,102,110,129,32,169,203,219,237,239,238,239,243,240,225,227,101,128,255,230,247,225,229,238,244,232,225,105,128,14,39,240,225,242,229,110,128,36,178,242,233,238,103,128,30,152,243,245,240,229,242,233,239,114,128,2,183,244,245,242,238,229,100,128,2,141,249,238,110,128,1,191,120,137,0,120,204,49,204,60,204,71,204,80,204,107,204,120,204,124,204,136,204,144,225,226,239,246,229,227,237,98,128,3,61,226,239,240,239,237,239,230,111,128,49,18,227,233,242,227,236,101,128,36,231,100,2,204,86,204,96,233,229,242,229,243,233,115,128,30,141,239,244,225,227,227,229,238,116,128,30,139,229,232,225,242,237,229,238,233,225,110,128,5,109,105,128,3,190,237,239,238,239,243,240,225,227,101,128,255,88,240,225,242,229,110,128,36,179,243,245,240,229,242,233,239,114,128,2,227,121,143,0,121,204,189,205,148,205,171,205,211,207,177,207,185,207,202,208,10,208,22,209,19,209,59,209,71,209,82,209,103,210,76,97,11,204,213,204,225,204,235,204,242,204,249,205,3,205,28,205,39,205,77,205,90,205,136,225,228,239,243,241,245,225,242,101,128,51,78,226,229,238,231,225,236,105,128,9,175,227,245,244,101,128,0,253,228,229,246,97,128,9,47,229,235,239,242,229,225,110,128,49,82,231,117,2,205,10,205,19,234,225,242,225,244,105,128,10,175,242,237,245,235,232,105,128,10,47,232,233,242,225,231,225,238,97,128,48,132,107,2,205,45,205,69,225,244,225,235,225,238,97,129,48,228,205,57,232,225,236,230,247,233,228,244,104,128,255,148,239,242,229,225,110,128,49,81,237,225,235,235,225,238,244,232,225,105,128,14,78,243,237,225,236,108,2,205,100,205,111,232,233,242,225,231,225,238,97,128,48,131,235,225,244,225,235,225,238,97,129,48,227,205,124,232,225,236,230,247,233,228,244,104,128,255,108,244,227,249,242,233,236,236,233,99,128,4,99,227,233,242,99,2,205,157,205,162,236,101,128,36,232,245,237,230,236,229,120,128,1,119,100,2,205,177,205,187,233,229,242,229,243,233,115,128,0,255,239,116,2,205,194,205,203,225,227,227,229,238,116,128,30,143,226,229,236,239,119,128,30,245,101,7,205,227,206,235,206,244,207,6,207,38,207,114,207,165,104,8,205,245,205,254,206,32,206,46,206,119,206,135,206,194,206,212,225,242,225,226,233,99,128,6,74,226,225,242,242,229,101,2,206,9,206,18,225,242,225,226,233,99,128,6,210,230,233,238,225,236,225,242,225,226,233,99,128,251,175,230,233,238,225,236,225,242,225,226,233,99,128,254,242,232,225,237,250,225,225,226,239,246,101,4,206,65,206,74,206,88,206,104,225,242,225,226,233,99,128,6,38,230,233,238,225,236,225,242,225,226,233,99,128,254,138,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,139,237,229,228,233,225,236,225,242,225,226,233,99,128,254,140,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,243,237,101,2,206,142,206,155,228,233,225,236,225,242,225,226,233,99,128,254,244,229,237,105,2,206,163,206,178,238,233,244,233,225,236,225,242,225,226,233,99,128,252,221,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,88,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,148,244,232,242,229,229,228,239,244,243,226,229,236,239,247,225,242,225,226,233,99,128,6,209,235,239,242,229,225,110,128,49,86,110,129,0,165,206,250,237,239,238,239,243,240,225,227,101,128,255,229,111,2,207,12,207,21,235,239,242,229,225,110,128,49,85,242,233,238,232,233,229,245,232,235,239,242,229,225,110,128,49,134,114,3,207,46,207,82,207,94,225,232,226,229,238,249,239,237,111,2,207,60,207,69,232,229,226,242,229,119,128,5,170,236,229,230,244,232,229,226,242,229,119,128,5,170,233,227,249,242,233,236,236,233,99,128,4,75,245,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,249,243,233,229,245,238,103,3,207,127,207,136,207,152,235,239,242,229,225,110,128,49,129,240,225,238,243,233,239,243,235,239,242,229,225,110,128,49,131,243,233,239,243,235,239,242,229,225,110,128,49,130,244,233,246,232,229,226,242,229,119,128,5,154,231,242,225,246,101,128,30,243,232,239,239,107,129,1,180,207,194,225,226,239,246,101,128,30,247,105,5,207,214,207,225,207,236,207,245,207,253,225,242,237,229,238,233,225,110,128,5,117,227,249,242,233,236,236,233,99,128,4,87,235,239,242,229,225,110,128,49,98,238,249,225,238,103,128,38,47,247,238,225,242,237,229,238,233,225,110,128,5,130,237,239,238,239,243,240,225,227,101,128,255,89,111,7,208,38,208,108,208,119,208,129,208,167,208,213,208,222,100,131,5,217,208,48,208,68,208,77,228,225,231,229,243,104,129,251,57,208,59,232,229,226,242,229,119,128,251,57,232,229,226,242,229,119,128,5,217,249,239,100,2,208,85,208,94,232,229,226,242,229,119,128,5,242,240,225,244,225,232,232,229,226,242,229,119,128,251,31,232,233,242,225,231,225,238,97,128,48,136,233,235,239,242,229,225,110,128,49,137,107,2,208,135,208,159,225,244,225,235,225,238,97,129,48,232,208,147,232,225,236,230,247,233,228,244,104,128,255,150,239,242,229,225,110,128,49,91,243,237,225,236,108,2,208,177,208,188,232,233,242,225,231,225,238,97,128,48,135,235,225,244,225,235,225,238,97,129,48,231,208,201,232,225,236,230,247,233,228,244,104,128,255,110,244,231,242,229,229,107,128,3,243,121,2,208,228,209,9,97,2,208,234,208,244,229,235,239,242,229,225,110,128,49,136,107,2,208,250,209,2,239,242,229,225,110,128,49,135,244,232,225,105,128,14,34,233,238,231,244,232,225,105,128,14,13,112,2,209,25,209,32,225,242,229,110,128,36,180,239,231,229,231,242,225,237,237,229,238,105,129,3,122,209,48,231,242,229,229,235,227,237,98,128,3,69,114,129,1,166,209,65,233,238,103,128,30,153,243,245,240,229,242,233,239,114,128,2,184,116,2,209,88,209,95,233,236,228,101,128,30,249,245,242,238,229,100,128,2,142,117,5,209,115,209,126,209,136,209,174,210,50,232,233,242,225,231,225,238,97,128,48,134,233,235,239,242,229,225,110,128,49,140,107,2,209,142,209,166,225,244,225,235,225,238,97,129,48,230,209,154,232,225,236,230,247,233,228,244,104,128,255,149,239,242,229,225,110,128,49,96,115,3,209,182,209,220,210,5,226,233,103,2,209,190,209,201,227,249,242,233,236,236,233,99,128,4,107,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,109,236,233,244,244,236,101,2,209,231,209,242,227,249,242,233,236,236,233,99,128,4,103,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,105,237,225,236,108,2,210,14,210,25,232,233,242,225,231,225,238,97,128,48,133,235,225,244,225,235,225,238,97,129,48,229,210,38,232,225,236,230,247,233,228,244,104,128,255,109,249,101,2,210,57,210,66,235,239,242,229,225,110,128,49,139,239,235,239,242,229,225,110,128,49,138,249,97,2,210,83,210,93,226,229,238,231,225,236,105,128,9,223,228,229,246,97,128,9,95,122,142,0,122,210,132,211,140,211,151,211,194,211,221,213,0,213,108,213,150,213,162,213,174,213,202,213,210,213,226,213,235,97,10,210,154,210,165,210,172,210,179,210,190,211,12,211,42,211,53,211,89,211,101,225,242,237,229,238,233,225,110,128,5,102,227,245,244,101,128,1,122,228,229,246,97,128,9,91,231,245,242,237,245,235,232,105,128,10,91,104,4,210,200,210,209,210,223,210,253,225,242,225,226,233,99,128,6,56,230,233,238,225,236,225,242,225,226,233,99,128,254,198,105,2,210,229,210,244,238,233,244,233,225,236,225,242,225,226,233,99,128,254,199,242,225,231,225,238,97,128,48,86,237,229,228,233,225,236,225,242,225,226,233,99,128,254,200,233,110,2,211,19,211,28,225,242,225,226,233,99,128,6,50,230,233,238,225,236,225,242,225,226,233,99,128,254,176,235,225,244,225,235,225,238,97,128,48,182,241,229,102,2,211,61,211,75,231,225,228,239,236,232,229,226,242,229,119,128,5,149,241,225,244,225,238,232,229,226,242,229,119,128,5,148,242,241,225,232,229,226,242,229,119,128,5,152,249,233,110,130,5,214,211,111,211,131,228,225,231,229,243,104,129,251,54,211,122,232,229,226,242,229,119,128,251,54,232,229,226,242,229,119,128,5,214,226,239,240,239,237,239,230,111,128,49,23,99,3,211,159,211,166,211,188,225,242,239,110,128,1,126,233,242,99,2,211,174,211,179,236,101,128,36,233,245,237,230,236,229,120,128,30,145,245,242,108,128,2,145,228,239,116,130,1,124,211,204,211,213,225,227,227,229,238,116,128,1,124,226,229,236,239,119,128,30,147,101,6,211,235,211,246,212,33,212,44,212,55,212,251,227,249,242,233,236,236,233,99,128,4,55,100,2,211,252,212,15,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,153,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,223,232,233,242,225,231,225,238,97,128,48,92,235,225,244,225,235,225,238,97,128,48,188,242,111,140,0,48,212,84,212,93,212,103,212,110,212,135,212,148,212,159,212,171,212,182,212,192,212,203,212,210,225,242,225,226,233,99,128,6,96,226,229,238,231,225,236,105,128,9,230,228,229,246,97,128,9,102,231,117,2,212,117,212,126,234,225,242,225,244,105,128,10,230,242,237,245,235,232,105,128,10,102,232,225,227,235,225,242,225,226,233,99,128,6,96,233,238,230,229,242,233,239,114,128,32,128,237,239,238,239,243,240,225,227,101,128,255,16,239,236,228,243,244,249,236,101,128,247,48,240,229,242,243,233,225,110,128,6,240,243,245,240,229,242,233,239,114,128,32,112,244,232,225,105,128,14,80,247,233,228,244,104,3,212,222,212,231,212,243,234,239,233,238,229,114,128,254,255,238,239,238,234,239,233,238,229,114,128,32,12,243,240,225,227,101,128,32,11,244,97,128,3,182,104,2,213,6,213,17,226,239,240,239,237,239,230,111,128,49,19,101,4,213,27,213,38,213,54,213,65,225,242,237,229,238,233,225,110,128,5,106,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,194,227,249,242,233,236,236,233,99,128,4,54,100,2,213,71,213,90,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,151,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,221,105,3,213,116,213,127,213,138,232,233,242,225,231,225,238,97,128,48,88,235,225,244,225,235,225,238,97,128,48,184,238,239,242,232,229,226,242,229,119,128,5,174,236,233,238,229,226,229,236,239,119,128,30,149,237,239,238,239,243,240,225,227,101,128,255,90,111,2,213,180,213,191,232,233,242,225,231,225,238,97,128,48,94,235,225,244,225,235,225,238,97,128,48,190,240,225,242,229,110,128,36,181,242,229,244,242,239,230,236,229,248,232,239,239,107,128,2,144,243,244,242,239,235,101,128,1,182,117,2,213,241,213,252,232,233,242,225,231,225,238,97,128,48,90,235,225,244,225,235,225,238,97,128,48,186,68,101,108,116,97,0,79,109,101,103,97,0,102,114,97,99,116,105,111,110,0,104,121,112,104,101,110,0,109,97,99,114,111,110,0,109,117,0,112,101,114,105,111,100,99,101,110,116,101,114,101,100,0,115,112,97,99,101,0,84,99,111,109,109,97,97,99,99,101,110,116,0,116,99,111,109,109,97,97,99,99,101,110,116,0,46,110,117,108,108,0,110,111,110,109,97,114,107,105,110,103,114,101,116,117,114,110,0,110,111,116,101,113,117,97,108,0,105,110,102,105,110,105,116,121,0,108,101,115,115,101,113,117,97,108,0,103,114,101,97,116,101,114,101,113,117,97,108,0,112,97,114,116,105,97,108,100,105,102,102,0,115,117,109,109,97,116,105,111,110,0,112,114,111,100,117,99,116,0,112,105,0,105,110,116,101,103,114,97,108,0,79,109,101,103,97,0,114,97,100,105,99,97,108,0,97,112,112,114,111,120,101,113,117,97,108,0,68,101,108,116,97,0,110,111,110,98,114,101,97,107,105,110,103,115,112,97,99,101,0,108,111,122,101,110,103,101,0,97,112,112,108,101,0,102,114,97,110,99,0,71,98,114,101,118,101,0,103,98,114,101,118,101,0,73,100,111,116,97,99,99,101,110,116,0,83,99,101,100,105,108,108,97,0,115,99,101,100,105,108,108,97,0,67,97,99,117,116,101,0,99,97,99,117,116,101,0,67,99,97,114,111,110,0,99,99,97,114,111,110,0,100,99,114,111,97,116,0,46,110,111,116,100,101,102,0,115,112,97,99,101,0,101,120,99,108,97,109,0,113,117,111,116,101,100,98,108,0,110,117,109,98,101,114,115,105,103,110,0,100,111,108,108,97,114,0,112,101,114,99,101,110,116,0,97,109,112,101,114,115,97,110,100,0,113,117,111,116,101,114,105,103,104,116,0,112,97,114,101,110,108,101,102,116,0,112,97,114,101,110,114,105,103,104,116,0,97,115,116,101,114,105,115,107,0,112,108,117,115,0,99,111,109,109,97,0,104,121,112,104,101,110,0,112,101,114,105,111,100,0,115,108,97,115,104,0,122,101,114,111,0,111,110,101,0,116,119,111,0,116,104,114,101,101,0,102,111,117,114,0,102,105,118,101,0,115,105,120,0,115,101,118,101,110,0,101,105,103,104,116,0,110,105,110,101,0,99,111,108,111,110,0,115,101,109,105,99,111,108,111,110,0,108,101,115,115,0,101,113,117,97,108,0,103,114,101,97,116,101,114,0,113,117,101,115,116,105,111,110,0,97,116,0,65,0,66,0,67,0,68,0,69,0,70,0,71,0,72,0,73,0,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,98,114,97,99,107,101,116,108,101,102,116,0,98,97,99,107,115,108,97,115,104,0,98,114,97,99,107,101,116,114,105,103,104,116,0,97,115,99,105,105,99,105,114,99,117,109,0,117,110,100,101,114,115,99,111,114,101,0,113,117,111,116,101,108,101,102,116,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,111,0,112,0,113,0,114,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,98,114,97,99,101,108,101,102,116,0,98,97,114,0,98,114,97,99,101,114,105,103,104,116,0,97,115,99,105,105,116,105,108,100,101,0,101,120,99,108,97,109,100,111,119,110,0,99,101,110,116,0,115,116,101,114,108,105,110,103,0,102,114,97,99,116,105,111,110,0,121,101,110,0,102,108,111,114,105,110,0,115,101,99,116,105,111,110,0,99,117,114,114,101,110,99,121,0,113,117,111,116,101,115,105,110,103,108,101,0,113,117,111,116,101,100,98,108,108,101,102,116,0,103,117,105,108,108,101,109,111,116,108,101,102,116,0,103,117,105,108,115,105,110,103,108,108,101,102,116,0,103,117,105,108,115,105,110,103,108,114,105,103,104,116,0,102,105,0,102,108,0,101,110,100,97,115,104,0,100,97,103,103,101,114,0,100,97,103,103,101,114,100,98,108,0,112,101,114,105,111,100,99,101,110,116,101,114,101,100,0,112,97,114,97,103,114,97,112,104,0,98,117,108,108,101,116,0,113,117,111,116,101,115,105,110,103,108,98,97,115,101,0,113,117,111,116,101,100,98,108,98,97,115,101,0,113,117,111,116,101,100,98,108,114,105,103,104,116,0,103,117,105,108,108,101,109,111,116,114,105,103,104,116,0,101,108,108,105,112,115,105,115,0,112,101,114,116,104,111,117,115,97,110,100,0,113,117,101,115,116,105,111,110,100,111,119,110,0,103,114,97,118,101,0,97,99,117,116,101,0,99,105,114,99,117,109,102,108,101,120,0,116,105,108,100,101,0,109,97,99,114,111,110,0,98,114,101,118,101,0,100,111,116,97,99,99,101,110,116,0,100,105,101,114,101,115,105,115,0,114,105,110,103,0,99,101,100,105,108,108,97,0,104,117,110,103,97,114,117,109,108,97,117,116,0,111,103,111,110,101,107,0,99,97,114,111,110,0,101,109,100,97,115,104,0,65,69,0,111,114,100,102,101,109,105,110,105,110,101,0,76,115,108,97,115,104,0,79,115,108,97,115,104,0,79,69,0,111,114,100,109,97,115,99,117,108,105,110,101,0,97,101,0,100,111,116,108,101,115,115,105,0,108,115,108,97,115,104,0,111,115,108,97,115,104,0,111,101,0,103,101,114,109,97,110,100,98,108,115,0,111,110,101,115,117,112,101,114,105,111,114,0,108,111,103,105,99,97,108,110,111,116,0,109,117,0,116,114,97,100,101,109,97,114,107,0,69,116,104,0,111,110,101,104,97,108,102,0,112,108,117,115,109,105,110,117,115,0,84,104,111,114,110,0,111,110,101,113,117,97,114,116,101,114,0,100,105,118,105,100,101,0,98,114,111,107,101,110,98,97,114,0,100,101,103,114,101,101,0,116,104,111,114,110,0,116,104,114,101,101,113,117,97,114,116,101,114,115,0,116,119,111,115,117,112,101,114,105,111,114,0,114,101,103,105,115,116,101,114,101,100,0,109,105,110,117,115,0,101,116,104,0,109,117,108,116,105,112,108,121,0,116,104,114,101,101,115,117,112,101,114,105,111,114,0,99,111,112,121,114,105,103,104,116,0,65,97,99,117,116,101,0,65,99,105,114,99,117,109,102,108,101,120,0,65,100,105,101,114,101,115,105,115,0,65,103,114,97,118,101,0,65,114,105,110,103,0,65,116,105,108,100,101,0,67,99,101,100,105,108,108,97,0,69,97,99,117,116,101,0,69,99,105,114,99,117,109,102,108,101,120,0,69,100,105,101,114,101,115,105,115,0,69,103,114,97,118,101,0,73,97,99,117,116,101,0,73,99,105,114,99,117,109,102,108,101,120,0,73,100,105,101,114,101,115,105,115,0,73,103,114,97,118,101,0,78,116,105,108,100,101,0,79,97,99,117,116,101,0,79,99,105,114,99,117,109,102,108,101,120,0,79,100,105,101,114,101,115,105,115,0,79,103,114,97,118,101,0,79,116,105,108,100,101,0,83,99,97,114,111,110,0,85,97,99,117,116,101,0,85,99,105,114,99,117,109,102,108,101,120,0,85,100,105,101,114,101,115,105,115,0,85,103,114,97,118,101,0,89,97,99,117,116,101,0,89,100,105,101,114,101,115,105,115,0,90,99,97,114,111,110,0,97,97,99,117,116,101,0,97,99,105,114,99,117,109,102,108,101,120,0,97,100,105,101,114,101,115,105,115,0,97,103,114,97,118,101,0,97,114,105,110,103,0,97,116,105,108,100,101,0,99,99,101,100,105,108,108,97,0,101,97,99,117,116,101,0,101,99,105,114,99,117,109,102,108,101,120,0,101,100,105,101,114,101,115,105,115,0,101,103,114,97,118,101,0,105,97,99,117,116,101,0,105,99,105,114,99,117,109,102,108,101,120,0,105,100,105,101,114,101,115,105,115,0,105,103,114,97,118,101,0,110,116,105,108,100,101,0,111,97,99,117,116,101,0,111,99,105,114,99,117,109,102,108,101,120,0,111,100,105,101,114,101,115,105,115,0,111,103,114,97,118,101,0,111,116,105,108,100,101,0,115,99,97,114,111,110,0,117,97,99,117,116,101,0,117,99,105,114,99,117,109,102,108,101,120,0,117,100,105,101,114,101,115,105,115,0,117,103,114,97,118,101,0,121,97,99,117,116,101,0,121,100,105,101,114,101,115,105,115,0,122,99,97,114,111,110,0,101,120,99,108,97,109,115,109,97,108,108,0,72,117,110,103,97,114,117,109,108,97,117,116,115,109,97,108,108,0,100,111,108,108,97,114,111,108,100,115,116,121,108,101,0,100,111,108,108,97,114,115,117,112,101,114,105,111,114,0,97,109,112,101,114,115,97,110,100,115,109,97,108,108,0,65,99,117,116,101,115,109,97,108,108,0,112,97,114,101,110,108,101,102,116,115,117,112,101,114,105,111,114,0,112,97,114,101,110,114,105,103,104,116,115,117,112,101,114,105,111,114,0,116,119,111,100,111,116,101,110,108,101,97,100,101,114,0,111,110,101,100,111,116,101,110,108,101,97,100,101,114,0,122,101,114,111,111,108,100,115,116,121,108,101,0,111,110,101,111,108,100,115,116,121,108,101,0,116,119,111,111,108,100,115,116,121,108,101,0,116,104,114,101,101,111,108,100,115,116,121,108,101,0,102,111,117,114,111,108,100,115,116,121,108,101,0,102,105,118,101,111,108,100,115,116,121,108,101,0,115,105,120,111,108,100,115,116,121,108,101,0,115,101,118,101,110,111,108,100,115,116,121,108,101,0,101,105,103,104,116,111,108,100,115,116,121,108,101,0,110,105,110,101,111,108,100,115,116,121,108,101,0,99,111,109,109,97,115,117,112,101,114,105,111,114,0,116,104,114,101,101,113,117,97,114,116,101,114,115,101,109,100,97,115,104,0,112,101,114,105,111,100,115,117,112,101,114,105,111,114,0,113,117,101,115,116,105,111,110,115,109,97,108,108,0,97,115,117,112,101,114,105,111,114,0,98,115,117,112,101,114,105,111,114,0,99,101,110,116,115,117,112,101,114,105,111,114,0,100,115,117,112,101,114,105,111,114,0,101,115,117,112,101,114,105,111,114,0,105,115,117,112,101,114,105,111,114,0,108,115,117,112,101,114,105,111,114,0,109,115,117,112,101,114,105,111,114,0,110,115,117,112,101,114,105,111,114,0,111,115,117,112,101,114,105,111,114,0,114,115,117,112,101,114,105,111,114,0,115,115,117,112,101,114,105,111,114,0,116,115,117,112,101,114,105,111,114,0,102,102,0,102,102,105,0,102,102,108,0,112,97,114,101,110,108,101,102,116,105,110,102,101,114,105,111,114,0,112,97,114,101,110,114,105,103,104,116,105,110,102,101,114,105,111,114,0,67,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,104,121,112,104,101,110,115,117,112,101,114,105,111,114,0,71,114,97,118,101,115,109,97,108,108,0,65,115,109,97,108,108,0,66,115,109,97,108,108,0,67,115,109,97,108,108,0,68,115,109,97,108,108,0,69,115,109,97,108,108,0,70,115,109,97,108,108,0,71,115,109,97,108,108,0,72,115,109,97,108,108,0,73,115,109,97,108,108,0,74,115,109,97,108,108,0,75,115,109,97,108,108,0,76,115,109,97,108,108,0,77,115,109,97,108,108,0,78,115,109,97,108,108,0,79,115,109,97,108,108,0,80,115,109,97,108,108,0,81,115,109,97,108,108,0,82,115,109,97,108,108,0,83,115,109,97,108,108,0,84,115,109,97,108,108,0,85,115,109,97,108,108,0,86,115,109,97,108,108,0,87,115,109,97,108,108,0,88,115,109,97,108,108,0,89,115,109,97,108,108,0,90,115,109,97,108,108,0,99,111,108,111,110,109,111,110,101,116,97,114,121,0,111,110,101,102,105,116,116,101,100,0,114,117,112,105,97,104,0,84,105,108,100,101,115,109,97,108,108,0,101,120,99,108,97,109,100,111,119,110,115,109,97,108,108,0,99,101,110,116,111,108,100,115,116,121,108,101,0,76,115,108,97,115,104,115,109,97,108,108,0,83,99,97,114,111,110,115,109,97,108,108,0,90,99,97,114,111,110,115,109,97,108,108,0,68,105,101,114,101,115,105,115,115,109,97,108,108,0,66,114,101,118,101,115,109,97,108,108,0,67,97,114,111,110,115,109,97,108,108,0,68,111,116,97,99,99,101,110,116,115,109,97,108,108,0,77,97,99,114,111,110,115,109,97,108,108,0,102,105,103,117,114,101,100,97,115,104,0,104,121,112,104,101,110,105,110,102,101,114,105,111,114,0,79,103,111,110,101,107,115,109,97,108,108,0,82,105,110,103,115,109,97,108,108,0,67,101,100,105,108,108,97,115,109,97,108,108,0,113,117,101,115,116,105,111,110,100,111,119,110,115,109,97,108,108,0,111,110,101,101,105,103,104,116,104,0,116,104,114,101,101,101,105,103,104,116,104,115,0,102,105,118,101,101,105,103,104,116,104,115,0,115,101,118,101,110,101,105,103,104,116,104,115,0,111,110,101,116,104,105,114,100,0,116,119,111,116,104,105,114,100,115,0,122,101,114,111,115,117,112,101,114,105,111,114,0,102,111,117,114,115,117,112,101,114,105,111,114,0,102,105,118,101,115,117,112,101,114,105,111,114,0,115,105,120,115,117,112,101,114,105,111,114,0,115,101,118,101,110,115,117,112,101,114,105,111,114,0,101,105,103,104,116,115,117,112,101,114,105,111,114,0,110,105,110,101,115,117,112,101,114,105,111,114,0,122,101,114,111,105,110,102,101,114,105,111,114,0,111,110,101,105,110,102,101,114,105,111,114,0,116,119,111,105,110,102,101,114,105,111,114,0,116,104,114,101,101,105,110,102,101,114,105,111,114,0,102,111,117,114,105,110,102,101,114,105,111,114,0,102,105,118,101,105,110,102,101,114,105,111,114,0,115,105,120,105,110,102,101,114,105,111,114,0,115,101,118,101,110,105,110,102,101,114,105,111,114,0,101,105,103,104,116,105,110,102,101,114,105,111,114,0,110,105,110,101,105,110,102,101,114,105,111,114,0,99,101,110,116,105,110,102,101,114,105,111,114,0,100,111,108,108,97,114,105,110,102,101,114,105,111,114,0,112,101,114,105,111,100,105,110,102,101,114,105,111,114,0,99,111,109,109,97,105,110,102,101,114,105,111,114,0,65,103,114,97,118,101,115,109,97,108,108,0,65,97,99,117,116,101,115,109,97,108,108,0,65,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,65,116,105,108,100,101,115,109,97,108,108,0,65,100,105,101,114,101,115,105,115,115,109,97,108,108,0,65,114,105,110,103,115,109,97,108,108,0,65,69,115,109,97,108,108,0,67,99,101,100,105,108,108,97,115,109,97,108,108,0,69,103,114,97,118,101,115,109,97,108,108,0,69,97,99,117,116,101,115,109,97,108,108,0,69,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,69,100,105,101,114,101,115,105,115,115,109,97,108,108,0,73,103,114,97,118,101,115,109,97,108,108,0,73,97,99,117,116,101,115,109,97,108,108,0,73,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,73,100,105,101,114,101,115,105,115,115,109,97,108,108,0,69,116,104,115,109,97,108,108,0,78,116,105,108,100,101,115,109,97,108,108,0,79,103,114,97,118,101,115,109,97,108,108,0,79,97,99,117,116,101,115,109,97,108,108,0,79,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,79,116,105,108,100,101,115,109,97,108,108,0,79,100,105,101,114,101,115,105,115,115,109,97,108,108,0,79,69,115,109,97,108,108,0,79,115,108,97,115,104,115,109,97,108,108,0,85,103,114,97,118,101,115,109,97,108,108,0,85,97,99,117,116,101,115,109,97,108,108,0,85,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,85,100,105,101,114,101,115,105,115,115,109,97,108,108,0,89,97,99,117,116,101,115,109,97,108,108,0,84,104,111,114,110,115,109,97,108,108,0,89,100,105,101,114,101,115,105,115,115,109,97,108,108,0,48,48,49,46,48,48,48,0,48,48,49,46,48,48,49,0,48,48,49,46,48,48,50,0,48,48,49,46,48,48,51,0,66,108,97,99,107,0,66,111,108,100,0,66,111,111,107,0,76,105,103,104,116,0,77,101,100,105,117,109,0,82,101,103,117,108,97,114,0,82,111,109,97,110,0,83,101,109,105,98,111,108,100,0,112,111,115,116,115,99,114,105,112,116,45,99,109,97,112,115,0,114,98,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,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,18,0,0,0,18,18,18,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,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+61440);allocate([0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0,114,119,97,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+71680);var tempDoublePtr=STATICTOP;STATICTOP+=16;Module["_i64Subtract"]=_i64Subtract;Module["_i64Add"]=_i64Add;Module["_memset"]=_memset;function _pthread_cleanup_push(routine,arg){__ATEXIT__.push((function(){Runtime.dynCall("vi",routine,[arg])}));_pthread_cleanup_push.level=__ATEXIT__.length}Module["_bitshift64Lshr"]=_bitshift64Lshr;Module["_bitshift64Shl"]=_bitshift64Shl;function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!");__ATEXIT__.pop();_pthread_cleanup_push.level=__ATEXIT__.length}function _abort(){Module["abort"]()}function _realloc(){throw"bad"}Module["_realloc"]=_realloc;Module["_saveSetjmp"]=_saveSetjmp;Module["_testSetjmp"]=_testSetjmp;function _longjmp(env,value){asm["setThrew"](env,value||1);throw"longjmp"}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"};function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>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){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up--;up){parts.unshift("..")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))}),join2:(function(l,r){return PATH.normalize(l+"/"+r)}),resolve:(function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter((function(p){return!!p})),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start<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(){}),shutdown:(function(){}),register:(function(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)}),stream_ops:{open:(function(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}stream.tty=tty;stream.seekable=false}),close:(function(stream){stream.tty.ops.flush(stream.tty)}),flush:(function(stream){stream.tty.ops.flush(stream.tty)}),read:(function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(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){var BUFSIZE=256;var buf=new Buffer(BUFSIZE);var bytesRead=0;var fd=process.stdin.fd;var usingDevice=false;try{fd=fs.openSync("/dev/stdin","r");usingDevice=true}catch(e){}bytesRead=fs.readSync(fd,buf,0,BUFSIZE,null);if(usingDevice){fs.closeSync(fd)}if(bytesRead>0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;i<node.usedBytes;++i)arr.push(node.contents[i]);return arr}return node.contents}),getFileDataAsTypedArray:(function(node){if(!node.contents)return new Uint8Array;if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)}),expandFileStorage:(function(node,newCapacity){if(node.contents&&node.contents.subarray&&newCapacity>node.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.buffer.byteLength:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity<CAPACITY_DOUBLING_MAX?2:1.125)|0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}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;node.usedBytes=0;return}if(!node.contents||node.contents.subarray){var oldContents=node.contents;node.contents=new Uint8Array(new ArrayBuffer(newSize));if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize;return}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={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}}),lookup:(function(parent,name){throw FS.genericErrors[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(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)}}}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|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){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i<size;i++)buffer[offset+i]=contents[position+i]}return size}),write:(function(stream,buffer,offset,length,position,canOwn){if(!length)return 0;var node=stream.node;node.timestamp=Date.now();if(buffer.subarray&&(!node.contents||node.contents.subarray)){if(canOwn){node.contents=buffer.subarray(offset,offset+length);node.usedBytes=length;return length}else if(node.usedBytes===0&&position===0){node.contents=new Uint8Array(buffer.subarray(offset,offset+length));node.usedBytes=length;return length}else if(position+length<=node.usedBytes){node.contents.set(buffer.subarray(offset,offset+length),position);return length}}MEMFS.expandFileStorage(node,position+length);if(node.contents.subarray&&buffer.subarray)node.contents.set(buffer.subarray(offset,offset+length),position);else{for(var i=0;i<length;i++){node.contents[position+i]=buffer[offset+i]}}node.usedBytes=Math.max(node.usedBytes,position+length);return length}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.usedBytes}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}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;if(!(flags&2)&&(contents.buffer===buffer||contents.buffer===buffer.buffer)){allocated=false;ptr=contents.byteOffset}else{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}}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}if(mmapFlags&2){return 0}var bytesWritten=MEMFS.stream_ops.write(stream,buffer,0,length,offset,false);return 0})}};var IDBFS={dbs:{},indexedDB:(function(){if(typeof indexedDB!=="undefined")return indexedDB;var ret=null;if(typeof window==="object")ret=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;assert(ret,"IDBFS used, but indexedDB not supported");return ret}),DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",mount:(function(mount){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){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)}if(!fileStore.indexNames.contains("timestamp")){fileStore.createIndex("timestamp","timestamp",{unique:false})}});req.onsuccess=(function(){db=req.result;IDBFS.dbs[name]=db;callback(null,db)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),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(e){callback(this.error);e.preventDefault()});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)){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.chmod(path,entry.mode);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(e){callback(this.error);e.preventDefault()})}),storeRemoteEntry:(function(store,path,entry,callback){var req=store.put(entry,path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),removeRemoteEntry:(function(store,path,callback){var req=store.delete(path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),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 completed=0;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err){if(!done.errored){done.errored=true;return callback(err)}return}if(++completed>=total){return callback(null)}}transaction.onerror=(function(e){done(this.error);e.preventDefault()});create.sort().forEach((function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,(function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)}))}else{IDBFS.loadLocalEntry(path,(function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)}))}}));remove.sort().reverse().forEach((function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}}))})};var NODEFS={isWindows:false,staticInit:(function(){NODEFS.isWindows=!!process.platform.match(/^win/)}),mount:(function(mount){assert(ENVIRONMENT_IS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)}),createNode:(function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node}),getMode:(function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&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){flags&=~32768;flags&=~524288;if(flags in NODEFS.flagsToPermissionStringMap){return NODEFS.flagsToPermissionStringMap[flags]}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.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){if(length===0)return 0;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){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){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:(function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i<parts.length-1;i++){var curr=parts.slice(0,i+1).join("/");if(!createdParents[curr]){createdParents[curr]=WORKERFS.createNode(parent,curr,WORKERFS.DIR_MODE,0)}parent=createdParents[curr]}return parent}function base(path){var parts=path.split("/");return parts[parts.length-1]}Array.prototype.forEach.call(mount.opts["files"]||[],(function(file){WORKERFS.createNode(ensureParent(file.name),base(file.name),WORKERFS.FILE_MODE,0,file,file.lastModifiedDate)}));(mount.opts["blobs"]||[]).forEach((function(obj){WORKERFS.createNode(ensureParent(obj["name"]),base(obj["name"]),WORKERFS.FILE_MODE,0,obj["data"])}));(mount.opts["packages"]||[]).forEach((function(pack){pack["metadata"].files.forEach((function(file){var name=file.filename.substr(1);WORKERFS.createNode(ensureParent(name),base(name),WORKERFS.FILE_MODE,0,pack["blob"].slice(file.start,file.end))}))}));return root}),createNode:(function(parent,name,mode,dev,contents,mtime){var node=FS.createNode(parent,name,mode);node.mode=mode;node.node_ops=WORKERFS.node_ops;node.stream_ops=WORKERFS.stream_ops;node.timestamp=(mtime||new Date).getTime();assert(WORKERFS.FILE_MODE!==WORKERFS.DIR_MODE);if(mode===WORKERFS.FILE_MODE){node.size=contents.size;node.contents=contents}else{node.size=4096;node.contents={}}if(parent){parent.contents[name]=node}return node}),node_ops:{getattr:(function(node){return{dev:1,ino:undefined,mode:node.mode,nlink:1,uid:0,gid:0,rdev:undefined,size:node.size,atime:new Date(node.timestamp),mtime:new Date(node.timestamp),ctime:new Date(node.timestamp),blksize:4096,blocks:Math.ceil(node.size/4096)}}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}}),lookup:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}),mknod:(function(parent,name,mode,dev){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rename:(function(oldNode,newDir,newName){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),unlink:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rmdir:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readdir:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),symlink:(function(parent,newName,oldPath){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readlink:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)})},stream_ops:{read:(function(stream,buffer,offset,length,position){if(position>=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size}),write:(function(stream,buffer,offset,length,position){throw new FS.ErrnoError(ERRNO_CODES.EIO)}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};STATICTOP+=16;STATICTOP+=16;STATICTOP+=16;var FS={root:null,mounts:[],devices:[null],streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i<parts.length;i++){var islast=i===parts.length-1;if(islast&&opts.parent){break}current=FS.lookupNode(current,parts[i]);current_path=PATH.join2(current_path,parts[i]);if(FS.isMountpoint(current)){if(!islast||islast&&opts.follow_mount){current=current.mounted.root}}if(!islast||opts.follow){var count=0;while(FS.isLink(current.mode)){var link=FS.readlink(current_path);current_path=PATH.resolve(PATH.dirname(current_path),link);var lookup=FS.lookupPath(current_path,{recurse_count:opts.recurse_count});current=lookup.node;if(count++>40){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,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return ERRNO_CODES.EACCES}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return ERRNO_CODES.EACCES}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return ERRNO_CODES.EACCES}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return ERRNO_CODES.EACCES;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return ERRNO_CODES.EEXIST}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return ERRNO_CODES.ENOTDIR}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return ERRNO_CODES.EBUSY}}else{if(FS.isDir(node.mode)){return ERRNO_CODES.EISDIR}}return 0}),mayOpen:(function(node,flags){if(!node){return ERRNO_CODES.ENOENT}if(FS.isLink(node.mode)){return ERRNO_CODES.ELOOP}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return ERRNO_CODES.EISDIR}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(ERRNO_CODES.EMFILE)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdev:(function(path,mode,dev){if(typeof dev==="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)}),symlink:(function(oldpath,newpath){if(!PATH.resolve(oldpath)){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}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);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)}if(!old_dir||!new_dir)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(ERRNO_CODES.EXDEV)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}relative=PATH.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var err=FS.mayDelete(old_dir,old_name,isdir);if(err){throw new FS.ErrnoError(err)}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(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)}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}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){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){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!link.node_ops.readlink){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return PATH.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))}),stat:(function(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}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()})}),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:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path==="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(ERRNO_CODES.EEXIST)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}if(!created){var err=FS.mayOpen(node,flags);if(err){throw new FS.ErrnoError(err)}}if(flags&512){FS.truncate(node,0)}flags&=~(128|512);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false},fd_start,fd_end);if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1;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){if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}}),llseek:(function(stream,offset,whence){if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position}),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){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){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)}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!stream||!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)}),munmap:(function(stream){return 0}),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=UTF8ArrayToString(buf,0)}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 buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,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");FS.mkdir("/home");FS.mkdir("/home/web_user")}),createDefaultDevices:(function(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:(function(){return 0}),write:(function(stream,buffer,offset,length,pos){return length})});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var random_device;if(typeof crypto!=="undefined"){var randomBuffer=new Uint8Array(1);random_device=(function(){crypto.getRandomValues(randomBuffer);return randomBuffer[0]})}else if(ENVIRONMENT_IS_NODE){random_device=(function(){return require("crypto").randomBytes(1)[0]})}else{random_device=(function(){return Math.random()*256|0})}FS.createDevice("/dev","random",random_device);FS.createDevice("/dev","urandom",random_device);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")}),createSpecialDirectories:(function(){FS.mkdir("/proc");FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:(function(){var node=FS.createNode("/proc/self","fd",16384|511,73);node.node_ops={lookup:(function(parent,name){var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:(function(){return stream.path})}};ret.parent=ret;return ret})};return node})},{},"/proc/self/fd")}),createStandardStreams:(function(){if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin","r");assert(stdin.fd===0,"invalid handle for stdin ("+stdin.fd+")");var stdout=FS.open("/dev/stdout","w");assert(stdout.fd===1,"invalid handle for stdout ("+stdout.fd+")");var stderr=FS.open("/dev/stderr","w");assert(stderr.fd===2,"invalid handle for stderr ("+stderr.fd+")")}),ensureErrnoError:(function(){if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.node=node;this.setErrno=(function(errno){this.errno=errno;for(var key in ERRNO_CODES){if(ERRNO_CODES[key]===errno){this.code=key;break}}});this.setErrno(errno);this.message=ERRNO_MESSAGES[errno]};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[ERRNO_CODES.ENOENT].forEach((function(code){FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack="<generic error, no stack>"}))}),staticInit:(function(){FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS,"IDBFS":IDBFS,"NODEFS":NODEFS,"WORKERFS":WORKERFS}}),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();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()}),quit:(function(){FS.init.initialized=false;var fflush=Module["_fflush"];if(fflush)fflush(0);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){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){}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}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);FS.registerDevice(dev,{open:(function(stream){stream.seekable=false}),close:(function(stream){if(output&&output.buffer&&output.buffer.length){output(10)}}),read:(function(stream,buffer,offset,length,pos){var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=input()}catch(e){throw new FS.ErrnoError(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"]){try{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){function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype.get=function LazyUint8Array_get(idx){if(idx>this.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i<size;i++){buffer[offset+i]=contents[position+i]}}else{for(var i=0;i<size;i++){buffer[offset+i]=contents.get(position+i)}}return size};node.stream_ops=stream_ops;return node}),createPreloadedFile:(function(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish){Browser.init();var fullname=name?PATH.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency("cp "+fullname);function processData(byteArray){function finish(byteArray){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency(dep)}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(dep)}));handled=true}}));if(!handled)finish(byteArray)}addRunDependency(dep);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;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})};var SYSCALLS={DEFAULT_POLLMASK:5,mappings:{},umask:511,calculateAt:(function(dirfd,path){if(path[0]!=="/"){var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=FS.getStream(dirfd);if(!dirstream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);dir=dirstream.path}path=PATH.join2(dir,path)}return path}),doStat:(function(func,path,buf){try{var stat=func(path)}catch(e){if(e&&e.node&&PATH.normalize(path)!==PATH.normalize(FS.getPath(e.node))){return-ERRNO_CODES.ENOTDIR}throw e}HEAP32[buf>>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;HEAP32[buf+36>>2]=stat.size;HEAP32[buf+40>>2]=4096;HEAP32[buf+44>>2]=stat.blocks;HEAP32[buf+48>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+52>>2]=0;HEAP32[buf+56>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ino;return 0}),doMsync:(function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)}),doMkdir:(function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0}),doMknod:(function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-ERRNO_CODES.EINVAL}FS.mknod(path,mode,dev);return 0}),doReadlink:(function(path,buf,bufsize){if(bufsize<=0)return-ERRNO_CODES.EINVAL;var ret=FS.readlink(path);ret=ret.slice(0,Math.max(0,bufsize));writeStringToMemory(ret,buf,true);return ret.length}),doAccess:(function(path,amode){if(amode&~7){return-ERRNO_CODES.EINVAL}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-ERRNO_CODES.EACCES}return 0}),doDup:(function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd}),doReadv:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr<len)break}return ret}),doWritev:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret}),varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),getStreamFromFD:(function(){var stream=FS.getStream(SYSCALLS.get());if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return stream}),getSocketFromFD:(function(){var socket=SOCKFS.getSocket(SYSCALLS.get());if(!socket)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return socket}),getSocketAddress:(function(allowNull){var addrp=SYSCALLS.get(),addrlen=SYSCALLS.get();if(allowNull&&addrp===0)return null;var info=__read_sockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___lock(){}function ___unlock(){}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:return totalMemory/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 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 79:return 0;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:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}function _sbrk(bytes){var self=_sbrk;if(!self.called){DYNAMICTOP=alignMemoryPage(DYNAMICTOP);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){var success=self.alloc(bytes);if(!success)return-1>>>0}return ret}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;Module["_memmove"]=_memmove;function _emscripten_set_main_loop_timing(mode,value){Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){setTimeout(Browser.mainLoop.runner,value)};Browser.mainLoop.method="timeout"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method="rAF"}else if(mode==2){if(!window["setImmediate"]){var setImmediates=[];var emscriptenMainLoopMessageId="__emcc";function Browser_setImmediate_messageHandler(event){if(event.source===window&&event.data===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}}window.addEventListener("message",Browser_setImmediate_messageHandler,true);window["setImmediate"]=function Browser_emulated_setImmediate(func){setImmediates.push(func);window.postMessage(emscriptenMainLoopMessageId,"*")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){window["setImmediate"](Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop,arg,noSetTiming){Module["noExitRuntime"]=true;assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");Browser.mainLoop.func=func;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;Browser.mainLoop.runner=function Browser_mainLoop_runner(){if(ABORT)return;if(Browser.mainLoop.queue.length>0){var start=Date.now();var blocker=Browser.mainLoop.queue.shift();blocker.func(blocker.arg);if(Browser.mainLoop.remainingBlockers){var remaining=Browser.mainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){Browser.mainLoop.remainingBlockers=next}else{next=next+.5;Browser.mainLoop.remainingBlockers=(8*remaining+next)/9}}console.log('main loop blocker "'+blocker.name+'" took '+(Date.now()-start)+" ms");Browser.mainLoop.updateStatus();if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;setTimeout(Browser.mainLoop.runner,0);return}if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0;if(Browser.mainLoop.timingMode==1&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}if(Browser.mainLoop.method==="timeout"&&Module.ctx){Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!");Browser.mainLoop.method=""}Browser.mainLoop.runIter((function(){if(typeof arg!=="undefined"){Runtime.dynCall("vi",func,[arg])}else{Runtime.dynCall("v",func)}}));if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;if(typeof SDL==="object"&&SDL.audio&&SDL.audio.queueNewAudioData)SDL.audio.queueNewAudioData();Browser.mainLoop.scheduler()};if(!noSetTiming){if(fps&&fps>0)_emscripten_set_main_loop_timing(0,1e3/fps);else _emscripten_set_main_loop_timing(1,1);Browser.mainLoop.scheduler()}if(simulateInfiniteLoop){throw"SimulateInfiniteLoop"}}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:(function(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++}),resume:(function(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;_emscripten_set_main_loop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()}),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}}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"]=[];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}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){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);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;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);var audio=new Audio;audio.addEventListener("canplaythrough",(function(){finish(audio)}),false);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&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src="data:audio/x-"+name.substr(-3)+";base64,"+encode64(byteArray);finish(audio)};audio.src=url;Browser.safeSetTimeout((function(){finish(audio)}),1e4)}else{return fail()}};Module["preloadPlugins"].push(audioPlugin);var canvas=Module["canvas"];function pointerLockChange(){Browser.pointerLock=document["pointerLockElement"]===canvas||document["mozPointerLockElement"]===canvas||document["webkitPointerLockElement"]===canvas||document["msPointerLockElement"]===canvas}if(canvas){canvas.requestPointerLock=canvas["requestPointerLock"]||canvas["mozRequestPointerLock"]||canvas["webkitRequestPointerLock"]||canvas["msRequestPointerLock"]||(function(){});canvas.exitPointerLock=document["exitPointerLock"]||document["mozExitPointerLock"]||document["webkitExitPointerLock"]||document["msExitPointerLock"]||(function(){});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&&canvas==Module.canvas)return Module.ctx;var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}canvas.style.backgroundColor="black"}else{ctx=canvas.getContext("2d")}if(!ctx)return null;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)GL.makeContextCurrent(contextHandle);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,vrDevice){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;Browser.vrDevice=vrDevice;if(typeof Browser.lockPointer==="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas==="undefined")Browser.resizeCanvas=false;if(typeof Browser.vrDevice==="undefined")Browser.vrDevice=null;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{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)}var canvasContainer=document.createElement("div");canvas.parentNode.insertBefore(canvasContainer,canvas);canvasContainer.appendChild(canvas);canvasContainer.requestFullScreen=canvasContainer["requestFullScreen"]||canvasContainer["mozRequestFullScreen"]||canvasContainer["msRequestFullscreen"]||(canvasContainer["webkitRequestFullScreen"]?(function(){canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"])}):null);if(vrDevice){canvasContainer.requestFullScreen({vrDisplay:vrDevice})}else{canvasContainer.requestFullScreen()}}),nextRAF:0,fakeRequestAnimationFrame:(function(func){var now=Date.now();if(Browser.nextRAF===0){Browser.nextRAF=now+1e3/60}else{while(now+2>=Browser.nextRAF){Browser.nextRAF+=1e3/60}}var delay=Math.max(Browser.nextRAF-now,0);setTimeout(func,delay)}),requestAnimationFrame:function requestAnimationFrame(func){if(typeof window==="undefined"){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)})}),allowAsyncCallbacks:true,queuedAsyncCallbacks:[],pauseAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=false}),resumeAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=true;if(Browser.queuedAsyncCallbacks.length>0){var callbacks=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[];callbacks.forEach((function(func){func()}))}}),safeRequestAnimationFrame:(function(func){return Browser.requestAnimationFrame((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}))}),safeSetTimeout:(function(func,timeout){Module["noExitRuntime"]=true;return setTimeout((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}),timeout)}),safeSetInterval:(function(func,timeout){Module["noExitRuntime"]=true;return setInterval((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){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 delta}),mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:(function(event){if(Browser.pointerLock){if(event.type!="mousemove"&&"mozMovementX"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}if(typeof SDL!="undefined"){Browser.mouseX=SDL.mouseX+Browser.mouseMovementX;Browser.mouseY=SDL.mouseY+Browser.mouseMovementY}else{Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}}else{var rect=Module["canvas"].getBoundingClientRect();var cw=Module["canvas"].width;var ch=Module["canvas"].height;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}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"){var last=Browser.touches[touch.identifier];if(!last)last=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}var x=event.pageX-(scrollX+rect.left);var y=event.pageY-(scrollY+rect.top);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}}),asyncLoad:(function(url,onload,onerror,noRunDep){Module["readAsync"](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(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags|8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),setWindowedCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags&~8388608;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")}}}}),wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle:(function(){var handle=Browser.nextWgetRequestHandle;Browser.nextWgetRequestHandle++;return handle})};function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}function _pthread_self(){return 0}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;assert(offset_high===0);FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21506:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((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;Module["FS_unlink"]=FS.unlink;__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}Module["requestFullScreen"]=function Module_requestFullScreen(lockPointer,resizeCanvas,vrDevice){Browser.requestFullScreen(lockPointer,resizeCanvas,vrDevice)};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()};Module["createContext"]=function Module_createContext(canvas,useWebGL,setInModule,webGLContextAttributes){return Browser.createContext(canvas,useWebGL,setInModule,webGLContextAttributes)};STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);staticSealed=true;STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX);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);function invoke_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){try{return Module["dynCall_iiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}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_viiiii(index,a1,a2,a3,a4,a5){try{Module["dynCall_viiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){try{return Module["dynCall_iiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9)}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_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_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)}}Module.asmGlobalArg={"Math":Math,"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Uint32Array":Uint32Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,"Infinity":Infinity};Module.asmLibraryArg={"abort":abort,"assert":assert,"invoke_iiiiiiii":invoke_iiiiiiii,"invoke_iiii":invoke_iiii,"invoke_viiiii":invoke_viiiii,"invoke_iiiiiiiiii":invoke_iiiiiiiiii,"invoke_vii":invoke_vii,"invoke_iiiiiii":invoke_iiiiiii,"invoke_ii":invoke_ii,"invoke_viii":invoke_viii,"invoke_vi":invoke_vi,"invoke_iiiii":invoke_iiiii,"invoke_viiiiii":invoke_viiiiii,"invoke_iii":invoke_iii,"invoke_iiiiii":invoke_iiiiii,"invoke_viiii":invoke_viiii,"_pthread_cleanup_pop":_pthread_cleanup_pop,"___syscall221":___syscall221,"_longjmp":_longjmp,"___lock":___lock,"_time":_time,"_emscripten_set_main_loop":_emscripten_set_main_loop,"_pthread_self":_pthread_self,"_abort":_abort,"_emscripten_set_main_loop_timing":_emscripten_set_main_loop_timing,"___syscall6":___syscall6,"_sbrk":_sbrk,"___syscall5":___syscall5,"_pthread_cleanup_push":_pthread_cleanup_push,"_emscripten_memcpy_big":_emscripten_memcpy_big,"___syscall54":___syscall54,"___unlock":___unlock,"___syscall140":___syscall140,"_sysconf":_sysconf,"___syscall145":___syscall145,"___syscall146":___syscall146,"___setErrNo":___setErrNo,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"cttz_i8":cttz_i8};// EMSCRIPTEN_START_ASM
var asm=(function(global,env,buffer) {
"use asm";var a=new global.Int8Array(buffer);var b=new global.Int16Array(buffer);var c=new global.Int32Array(buffer);var
d=new global.Uint8Array(buffer);var e=new global.Uint16Array(buffer);var f=new global.Uint32Array(buffer);var g=new global.Float32Array
(buffer);var h=new global.Float64Array(buffer);var i=env.STACKTOP|0;var j=env.STACK_MAX|0;var k=env.tempDoublePtr|0;var l=env.ABORT
|0;var m=env.cttz_i8|0;var n=0;var o=0;var p=0;var q=0;var r=global.NaN,s=global.Infinity;var t=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,
B=0.0;var C=0;var D=0;var E=0;var F=0;var G=0;var H=0;var I=0;var J=0;var K=0;var L=0;var M=global.Math.floor;var N=global.Math.
abs;var O=global.Math.sqrt;var P=global.Math.pow;var Q=global.Math.cos;var R=global.Math.sin;var S=global.Math.tan;var T=global.
Math.acos;var U=global.Math.asin;var V=global.Math.atan;var W=global.Math.atan2;var X=global.Math.exp;var Y=global.Math.log;var
Z=global.Math.ceil;var _=global.Math.imul;var $=global.Math.min;var aa=global.Math.clz32;var ba=env.abort;var ca=env.assert;var
da=env.invoke_iiiiiiii;var ea=env.invoke_iiii;var fa=env.invoke_viiiii;var ga=env.invoke_iiiiiiiiii;var ha=env.invoke_vii;var ia
=env.invoke_iiiiiii;var ja=env.invoke_ii;var ka=env.invoke_viii;var la=env.invoke_vi;var ma=env.invoke_iiiii;var na=env.invoke_viiiiii
;var oa=env.invoke_iii;var pa=env.invoke_iiiiii;var qa=env.invoke_viiii;var ra=env._pthread_cleanup_pop;var sa=env.___syscall221
;var ta=env._longjmp;var ua=env.___lock;var va=env._time;var wa=env._emscripten_set_main_loop;var xa=env._pthread_self;var ya=env
._abort;var za=env._emscripten_set_main_loop_timing;var Aa=env.___syscall6;var Ba=env._sbrk;var Ca=env.___syscall5;var Da=env._pthread_cleanup_push
;var Ea=env._emscripten_memcpy_big;var Fa=env.___syscall54;var Ga=env.___unlock;var Ha=env.___syscall140;var Ia=env._sysconf;var
Ja=env.___syscall145;var Ka=env.___syscall146;var La=env.___setErrNo;var Ma=0.0;
// EMSCRIPTEN_START_FUNCS
function $a(a){a=a|0;var b=0;b=i;i=i+a|0;i=i+15&-16;return b|0}function ab(){return i|0}function bb(a){a=a|0;i=a}function cb
(a,b){a=a|0;b=b|0;i=a;j=b}function db(a,b){a=a|0;b=b|0;if(!n){n=a;o=b}}function eb(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]}function
fb(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 gb(a){a=a|0;C=a}function hb(){return C|0}function
ib(a){a=a|0;c[18364]=(a|0)!=0&1;return 0}function jb(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+32|0;h=j+8|0
;f=j;e=c[18367]|0;if((e|0)!=0?(As(e,b)|0)==0:0){e=73468;f=2;g=4}else g=3;do if((g|0)==3){e=c[18368]|0;if(e|0?(As(e,b)|0)==0:0){e
=73472;f=3;g=4;break}e=c[18369]|0;if(e|0?(As(e,b)|0)==0:0){e=73476;f=4;g=4;break}e=c[18370]|0;if(e|0?(As(e,b)|0)==0:0){e=73480;f
=5;g=4;break}e=c[18371]|0;if(e|0?(As(e,b)|0)==0:0){e=73484;f=6;g=4;break}e=c[18372]|0;if(e|0?(As(e,b)|0)==0:0){e=73488;f=7;g=4;break
}e=c[18373]|0;if(e|0?(As(e,b)|0)==0:0){e=73492;f=8;g=4;break}e=c[18374]|0;if(e|0?(As(e,b)|0)==0:0){e=73496;f=9;g=4;break}if(c[18367
]|0)if(c[18368]|0)if(c[18369]|0)if(c[18370]|0)if(c[18371]|0)if(c[18372]|0)if(c[18373]|0)if(!(c[18374]|0))f=9;else{c[f>>
;2]=a;c[f+4>>2]=b;ss(10198,f)|0;h=-1;i=j;return h|0}else f=8;else f=7;else f=6;else f=5;else f=4;else f=3;else f=2}while
(0);if((g|0)==4){g=73500+(f<<2)|0;vd(c[g>>2]|0)|0;Gs(c[e>>2]|0);c[e>>2]=0;c[g>>
;2]=0}e=Ec(c[18385]|0,a,0,73500+(f<<2)|0)|0;if(!e){c[73460+(f<<2)>>2]=ws(b)|0;c[8+(f<<2)
x3e;>2]=d;h=0;i=j;return h|0}else{c[h>>2]=a;c[h+4>>2]=b;c[h+8>>2]=e;ss(10233,h)|0;h=e;i=j;return
h|0}return 0}function kb(a){a=a|0;var b=0,d=0;b=c[18365]|0;if(b)if(As(a,b)|0){b=c[18366]|0;if(((b|0)!=0?(As(a,b)|0)!=0:0)?(d=c[
18367]|0,(d|0)!=0):0)if(As(a,d)|0){b=c[18368]|0;if(b)if(As(a,b)|0){b=c[18369]|0;if(b)if(As(a,b)|0){b=c[18370]|0;if(b)if(As(a,b)|
0){b=c[18371]|0;if(b)if(As(a,b)|0){b=c[18372]|0;if(b)if(As(a,b)|0){b=c[18373]|0;if(b)if(As(a,b)|0){b=c[18374]|0;if(!b)b=1;else{a
=(As(a,b)|0)==0;return (a?9:1)|0}}else b=8;else b=1}else b=7;else b=1}else b=6;else b=1}else b=5;else b=1}else b=4;else b=1}else
b=3;else b=1}else b=2;else b=1}else b=0;else b=1;return b|0}function lb(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;p=i;i=i+16|0;k=p+8|0;j=p;if(!(b>>>0<=9?(c[73460+(b<<2)>>2]|0)!=0:0))b=1;h=
c[73500+(b<<2)>>2]|0;b=c[8+(b<<2)>>2]|0;f=(_(f<<6,b)|0)/100|0;b=(_(g<<
;6,b)|0)/100|0;if((e+-65|0)>>>0<26&(h|0)==(c[18376]|0))b=(b*108|0)/100|0;b=Hd(h,f,b,72,0)|0;if(b|0){c[j
>>2]=b;ss(10260,j)|0;o=0;i=p;return o|0}c[18386]=c[h+84>>2];if((h|0)==(c[18375]|0)|(h|0)==(c[18376]|0))if((e
|0)==126)e=732;else e=(e|0)==94?710:e;if(!(c[18364]|0))e=Cc(h,e,4)|0;else e=Cc(h,e,131076)|0;if(e|0){c[k>>2]=e;ss(10285
,k)|0;o=0;i=p;return o|0}b=c[18386]|0;if(!(c[18364]|0)){o=c[b+88>>2]|0;i=p;return o|0}e=c[18387]|0;if(e|0)Gs(e);m=b+80
|0;f=c[m>>2]|0;n=b+76|0;g=c[n>>2]|0;e=Fs(_(g,f)|0)|0;c[18387]=e;if(!e){o=0;i=p;return o|0}if((g|0)<=0){
o=e;i=p;return o|0}o=b+84|0;l=b+88|0;b=e;k=0;do{j=_(c[o>>2]|0,k)|0;j=(c[l>>2]|0)+j|0;if((f|0)>0){h=0;while
(1){g=b+1|0;a[b>>0]=(((d[j+(h>>3)>>0]|0)&1<<(h&7^7)|0)!=0)<<31>
x3e;31;h=h+1|0;f=c[m>>2]|0;if((h|0)>=(f|0)){b=g;break}else b=g}g=c[n>>2]|0}k=k+1|0}while((k|0)<(g|
0));i=p;return e|0}function mb(){return c[(c[18386]|0)+100>>2]|0}function nb(){return c[(c[18386]|0)+104>>2]|
0}function ob(){return c[(c[18386]|0)+80>>2]|0}function pb(){return c[(c[18386]|0)+76>>2]|0}function qb(){return
c[(c[18386]|0)+84>>2]|0}function rb(){return c[(c[18386]|0)+64>>2]>>6|0}function sb(){var a=0,b=0
,d=0,e=0,f=0;f=i;i=i+32|0;e=f+16|0;d=f+8|0;b=f;a=ub(73540)|0;if(a|0){c[b>>2]=a;ss(10306,b)|0;e=1;i=f;return e|0}a=Ec(c
[18385]|0,10322,0,73500)|0;if(a|0){c[d>>2]=a;ss(10331,d)|0;e=1;i=f;return e|0}a=Ec(c[18385]|0,10358,0,73504)|0;if(!a){
c[18365]=ws(10394)|0;c[18366]=ws(10400)|0;e=0;i=f;return e|0}else{c[e>>2]=a;ss(10367,e)|0;e=1;i=f;return e|0}return 0}
function tb(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;c[d>>2]=48;while(1){if(!(
c[c[d>>2]>>2]|0))break;c[e>>2]=Nd(c[b>>2]|0,c[c[d>>2]>>2]|0)|0;c[d
x3e;>2]=(c[d>>2]|0)+4}i=f;return}function ub(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;d=g+8|0;e=g+4
|0;f=g;c[d>>2]=a;c[f>>2]=tr()|0;if(!(c[f>>2]|0)){c[b>>2]=7;f=c[b>>2]|0;i=g;return
f|0}c[e>>2]=Wd(c[f>>2]|0,c[d>>2]|0)|0;if(c[e>>2]|0)xr(c[f>>2]|0);else tb(c[c[
d>>2]>>2]|0);c[b>>2]=c[e>>2];f=c[b>>2]|0;i=g;return f|0}function vb(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;
c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(!(c[g>>2]|0)){c[f>>2]=35;
e=c[f>>2]|0;i=n;return e|0}if((c[h>>2]|0)>>>0>=(c[(c[g>>2]|0)+16>>2]|
0)>>>0){c[f>>2]=16;e=c[f>>2]|0;i=n;return e|0}c[m>>2]=c[(c[(c[(c[g>>2]|0)+
96>>2]|0)+20>>2]|0)+92>>2];do if(c[m>>2]|0){if((c[j>>2]&3|0)==0?(c[j>
;>2]>>16&15|0)!=1:0)break;c[l>>2]=Za[c[m>>2]&31](c[g>>2]|0,c[h>>
;2]|0,1,c[j>>2]|0,c[k>>2]|0)|0;if(!(c[l>>2]|0)){c[f>>2]=wb(c[g>>2]|0,c[k>
x3e;2]|0,1,c[j>>2]|0)|0;e=c[f>>2]|0;i=n;return e|0}if((c[l>>2]|0)!=7){c[f>>2]=c[l>
x3e;2];e=c[f>>2]|0;i=n;return e|0}}while(0);c[f>>2]=Bb(c[g>>2]|0,c[h>>2]|0,1,c[j>
x3e;2]|0,c[k>>2]|0)|0;e=c[f>>2]|0;i=n;return e|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,m=0,n=0;n=i;i=i+32|0;g=n+24|0;f=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;c[f>>2]=a;c[h>>2]=
b;c[j>>2]=d;c[k>>2]=e;if(c[k>>2]&1|0){c[g>>2]=0;m=c[g>>2]|0;i=n;return m|
0}if(!(c[(c[f>>2]|0)+88>>2]|0)){c[g>>2]=36;m=c[g>>2]|0;i=n;return m|0}f=(c[(c[f>>
;2]|0)+88>>2]|0)+12|0;if(c[k>>2]&16|0)c[m>>2]=c[f+8>>2];else c[m>>2]=c[f+
4>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[j>>2]|0)>>
x3e;0)break;k=xb(c[(c[h>>2]|0)+(c[l>>2]<<2)>>2]|0,c[m>>2]|0,64)|0;c[(c[h>
x3e;2]|0)+(c[l>>2]<<2)>>2]=k;c[l>>2]=(c[l>>2]|0)+1}c[g>>2]=0;m=c[g
x3e;>2]|0;i=n;return m|0}function xb(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;m=i;i=i+48|0;e=m+32|0;f=m
+28|0;g=m+24|0;h=m+20|0;j=m+16|0;k=m+8|0;l=m;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(c[f>>2]|0?(
c[g>>2]|0)!=(c[h>>2]|0):0){c[j>>2]=c[f>>2];d=c[f>>2]|0;c[f>>2]=(c[f
x3e;>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[g>>2];d=c[g>>2]|0;c[g>>2]=(c[
g>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[h>>2];d=c[h>>2]|0;c[h>>2]=(
c[h>>2]|0)<0?0-d|0:d;do if(!((c[f>>2]|0)<=46340&(c[g>>2]|0)<=46340&(c[h
x3e;>2]|0)<=176095&(c[h>>2]|0)>0))if((c[h>>2]|0)>0){yb(c[f>>2]|0,c[g>
;>2]|0,k);c[l+4>>2]=0;c[l>>2]=c[h>>2]>>1;zb(k,l,k);c[f>>2]=Ab(c[k+4>
x3e;2]|0,c[k>>2]|0,c[h>>2]|0)|0;break}else{c[f>>2]=2147483647;break}else{l=_(c[f>>2]|0,c
[g>>2]|0)|0;c[f>>2]=(l+(c[h>>2]>>1)|0)/(c[h>>2]|0)|0}while(0);l=c[f>>
;2]|0;c[e>>2]=(c[j>>2]|0)<0?0-l|0:l;l=c[e>>2]|0;i=m;return l|0}c[e>>2]=c[f>>
;2];l=c[e>>2]|0;i=m;return l|0}function yb(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;e=i;i=i+48|0;q=e+40|0;p=e+36|0;f=e+32|0;o=e+28|0;m=e+24|0;n=e+20|0;l=e+16|0;h=e+12|0;g=e+8|0;j=e+4|0;k=e;c[q>>2]=a;c
[p>>2]=b;c[f>>2]=d;c[o>>2]=c[q>>2]&65535;c[m>>2]=(c[q>>2]|0)>
;>>16;c[n>>2]=c[p>>2]&65535;c[l>>2]=(c[p>>2]|0)>>>16;c[h
x3e;>2]=_(c[o>>2]|0,c[n>>2]|0)|0;c[j>>2]=_(c[o>>2]|0,c[l>>2]|0)|0;c[k>
;>2]=_(c[n>>2]|0,c[m>>2]|0)|0;c[g>>2]=_(c[m>>2]|0,c[l>>2]|0)|0;c[j>
x3e;2]=(c[j>>2]|0)+(c[k>>2]|0);c[g>>2]=(c[g>>2]|0)+(((c[j>>2]|0)>>
x3e;0<(c[k>>2]|0)>>>0&1)<<16);c[g>>2]=(c[g>>2]|0)+((c[j>
x3e;2]|0)>>>16);c[j>>2]=c[j>>2]<<16;c[h>>2]=(c[h>>2]|0)+(c[j>
;>2]|0);c[g>>2]=(c[g>>2]|0)+((c[h>>2]|0)>>>0<(c[j>>2]|0)>
x3e;>0&1);c[c[f>>2]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2
];i=e;return}function zb(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+12|0;f=e+8|0;h=e+4|0;g=e
;c[j>>2]=a;c[k>>2]=b;c[f>>2]=d;c[h>>2]=(c[c[j>>2]>>2]|0)+(c[c[k>
;>2]>>2]|0);c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[k>>2]|0)+4>>2
]|0)+((c[h>>2]|0)>>>0<(c[c[j>>2]>>2]|0)>>>0&1);c[c[f>
x3e;2]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2];i=e;return}function Ab(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+32|0;e=l+24|0;m=l+20|0;f=l+16|0;g=l+12|0;k=l+8|0;j=l+4|0;h=l;c[m>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=0;c[k>>2]=c[m>>2];if((c[k>>2
]|0)>>>0>=(c[g>>2]|0)>>>0){c[e>>2]=2147483647;m=c[e>>2]|0;i=l;return
m|0}c[h>>2]=32;do{c[k>>2]=c[k>>2]<<1;c[j>>2]=c[j>>2]<<1;c
[k>>2]=c[k>>2]|(c[f>>2]|0)>>>31;if((c[k>>2]|0)>>>0>=(
c[g>>2]|0)>>>0){c[k>>2]=(c[k>>2]|0)-(c[g>>2]|0);c[j>>2]=c[j>
;>2]|1}c[f>>2]=c[f>>2]<<1;m=(c[h>>2]|0)+-1|0;c[h>>2]=m}while((m|0)!=0);c[
e>>2]=c[j>>2];m=c[e>>2]|0;i=l;return m|0}function Bb(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;t=i;i=i+48|0;l=t+40|0;m=t+36|0;n=t+32|0;o=t+28|0;p=t+24|0;q=t+20|0;h=t+16|0;
j=t+12|0;g=t+8|0;s=t+4|0;r=t;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f
;c[r>>2]=0;if(!(c[m>>2]|0)){c[l>>2]=35;s=c[l>>2]|0;i=t;return s|0}c[j>>2]=c[(c
[m>>2]|0)+16>>2];c[g>>2]=(c[n>>2]|0)+(c[o>>2]|0);if(((c[n>>2]|0)>
;>>0<(c[j>>2]|0)>>>0?(c[g>>2]|0)>>>0>=(c[n>>2]|0
)>>>0:0)?(c[g>>2]|0)>>>0<=(c[j>>2]|0)>>>0:0){if(!(c[o>
;>2]|0)){c[l>>2]=0;s=c[l>>2]|0;i=t;return s|0}c[h>>2]=c[(c[(c[(c[m>>2]|0)+96>
x3e;2]|0)+20>>2]|0)+92>>2];do if(c[h>>2]|0){if((c[p>>2]&3|0)==0?(c[p>>2]
x3e;>16&15|0)!=1:0){k=15;break}c[r>>2]=Za[c[h>>2]&31](c[m>>2]|0,c[n>>2]|0
,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;if(c[r>>2]|0)if((c[r>>2]|0)!=7){c[l>>
;2]=c[r>>2];s=c[l>>2]|0;i=t;return s|0}else k=15}else k=15;while(0);if((k|0)==15){c[r>>2]=0;if(c[p
>>2]&536870912|0){c[l>>2]=7;s=c[l>>2]|0;i=t;return s|0}c[p>>2]=c[p>>2]|256
;c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c
[r>>2]=Cb(c[m>>2]|0,(c[n>>2]|0)+(c[s>>2]|0)|0,c[p>>2]|0)|0;if(c[r>>2
]|0)break;d=(c[(c[m>>2]|0)+84>>2]|0)+64|0;if(c[p>>2]&16|0)d=c[d+4>>2]|0;else d=c[d
x3e;>2]|0;c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]=d;c[s>>2]=(c[s>>2]|0)+
1}if(c[r>>2]|0){c[l>>2]=c[r>>2];s=c[l>>2]|0;i=t;return s|0}}c[l>>2]=wb(c[m>
;>2]|0,c[q>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;s=c[l>>2]|0;i=t;return s|0}c[l>>2
]=16;s=c[l>>2]|0;i=t;return s|0}function Cb(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;A=i;i=i+80|0;r=A+64|0;s=A+60|0;g=A+56|0;t=A+52|0;u=A+48|0;j=A+44|0;z=A+40|0;n=A+36|0;h=A+68|0
;k=A+32|0;o=A+28|0;l=A+24|0;m=A+20|0;p=A+16|0;w=A+12|0;v=A+8|0;y=A+4|0;x=A;c[s>>2]=b;c[g>>2]=e;c[t>>
;2]=f;a[h>>0]=0;if((c[s>>2]|0?c[(c[s>>2]|0)+88>>2]|0:0)?c[(c[s>>2]|0)+84>
x3e;2]|0:0){c[z>>2]=c[(c[s>>2]|0)+84>>2];Db(c[z>>2]|0);c[j>>2]=c[(c[s>>
;2]|0)+96>>2];c[n>>2]=c[(c[j>>2]|0)+4>>2];c[k>>2]=c[(c[n>>2]|0)+168
x3e;>2];if(c[t>>2]&1024|0)c[t>>2]=c[t>>2]|2049;if(c[t>>2]&1|0){c[t>
x3e;2]=c[t>>2]|10;c[t>>2]=c[t>>2]&-5}do if(((((c[k>>2]|0?(c[t>>2]&2|
0)==0:0)?(c[t>>2]&32768|0)==0:0)?c[c[c[j>>2]>>2]>>2]&256|0:0)?(c[c[c[j>
x3e;2]>>2]>>2]&512|0)==0:0)?(c[(c[s>>2]|0)+8>>2]&8192|0)==0:0){if(!((c[(c[(c[s
>>2]|0)+128>>2]|0)+4+8>>2]|0)==0?(c[(c[(c[s>>2]|0)+128>>2]|0)+4>>2]|
0)!=0:0)){if(c[(c[(c[s>>2]|0)+128>>2]|0)+4>>2]|0)break;if(!(c[(c[(c[s>>2]|0)+128>
x3e;2]|0)+4+8>>2]|0))break}if((c[t>>2]&32|0)==0?c[c[c[j>>2]>>2]>>2]&
1024|0:0){c[o>>2]=c[t>>2]>>16&15;if((c[o>>2]|0)!=1?(d[(c[(c[s>>2]|0)+128
x3e;>2]|0)+56>>0]|0)==0:0)break;a[h>>0]=1;break}a[h>>0]=1}while(0);do if(!(a[h>>0]|
0)){c[u>>2]=Wa[c[(c[(c[j>>2]|0)+20>>2]|0)+80>>2]&31](c[z>>2]|0,c[(c[s>
;>2]|0)+88>>2]|0,c[g>>2]|0,c[t>>2]|0)|0;if(!(c[u>>2]|0))if((c[(c[z>>2]|0)+
72>>2]|0)==1869968492){c[u>>2]=Gb((c[z>>2]|0)+108|0)|0;if(!(c[u>>2]|0))if(c[t>>
;2]&2|0)q=36;else{Hb(c[z>>2]|0,c[t>>2]&16);q=36}}else q=36}else{if(((c[(c[s>>2]|0)+8>
;>2]&2|0?(c[t>>2]&8|0)==0:0)?(c[u>>2]=Wa[c[(c[(c[j>>2]|0)+20>>2]|0)+80>
;>2]&31](c[z>>2]|0,c[(c[s>>2]|0)+88>>2]|0,c[g>>2]|0,c[t>>2]|16384)|0
,(c[u>>2]|0)==0):0)?(c[(c[z>>2]|0)+72>>2]|0)==1651078259:0){q=36;break}c[m>>2]=c[(c[s>
;>2]|0)+128>>2];c[p>>2]=c[(c[m>>2]|0)+28>>2];c[(c[m>>2]|0)+28>>
2]=0;c[l>>2]=c[(c[c[k>>2]>>2]|0)+20>>2];c[u>>2]=Za[c[(c[l>>2]|0)+12
x3e;>2]&31](c[k>>2]|0,c[z>>2]|0,c[(c[s>>2]|0)+88>>2]|0,c[g>>2]|0,c[t
>>2]|0)|0;c[(c[m>>2]|0)+28>>2]=c[p>>2];q=36}while(0);if((q|0)==36){g=c[z>>2]|0
;if(c[t>>2]&16|0){c[g+64>>2]=0;c[(c[z>>2]|0)+64+4>>2]=c[(c[z>>2]|0)+24+28
>>2]}else{c[(c[z>>2]|0)+64>>2]=c[g+24+16>>2];c[(c[z>>2]|0)+64+4>>2]=
0}if((c[t>>2]&8192|0)==0?c[(c[s>>2]|0)+8>>2]&1|0:0){c[w>>2]=(c[(c[s>>
;2]|0)+88>>2]|0)+12;q=xb(c[(c[z>>2]|0)+56>>2]|0,c[(c[w>>2]|0)+4>>2]|0,64)|0;c[(
c[z>>2]|0)+56>>2]=q;w=xb(c[(c[z>>2]|0)+60>>2]|0,c[(c[w>>2]|0)+8>>2]|
0,64)|0;c[(c[z>>2]|0)+60>>2]=w}if((c[t>>2]&2048|0)==0?(c[v>>2]=c[(c[s>>2]|
0)+128>>2],c[(c[v>>2]|0)+28>>2]|0):0){c[y>>2]=Ib(c[z>>2]|0)|0;if(!(c[y>
x3e;2]|0)){if((c[(c[z>>2]|0)+72>>2]|0)==1869968492){if((c[v>>2]|0)+4|0)Kb((c[z>>2]|0)+108
|0,(c[v>>2]|0)+4|0);if((c[v>>2]|0)+20|0)Nb((c[z>>2]|0)+108|0,c[(c[v>>2]|0)+20>>
;2]|0,c[(c[v>>2]|0)+20+4>>2]|0)}}else c[u>>2]=Wa[c[(c[(c[y>>2]|0)+20>>2]|0)+44
>>2]&31](c[y>>2]|0,c[z>>2]|0,(c[v>>2]|0)+4|0,(c[v>>2]|0)+20|0)|0;Lb((c[z
x3e;>2]|0)+64|0,(c[v>>2]|0)+4|0)}if((((c[u>>2]|0)==0?(c[(c[z>>2]|0)+72>>2]|0)!=1651078259
:0)?(c[(c[z>>2]|0)+72>>2]|0)!=1668246896:0)?c[t>>2]&4|0:0){c[x>>2]=c[t>>2
]>>16&15;if((c[x>>2]|0)==0?c[t>>2]&4096|0:0)c[x>>2]=2;c[u>>2]=Ob(c[z
>>2]|0,c[x>>2]|0)|0}}c[r>>2]=c[u>>2];z=c[r>>2]|0;i=A;return z|0}c[r>>
;2]=35;z=c[r>>2]|0;i=A;return z|0}function Db(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;Eb(c[e>
x3e;2]|0);b=(c[e>>2]|0)+24|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[
b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;c[b+28>>2]=0;b=(c[e>>2]|0)+108|0;c[b>
;>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[(c[e>>2]|0)+76
+4>>2]=0;c[(c[e>>2]|0)+76>>2]=0;c[(c[e>>2]|0)+76+8>>2]=0;a[(c[e>>2]|
0)+76+18>>0]=0;c[(c[e>>2]|0)+100>>2]=0;c[(c[e>>2]|0)+104>>2]=0;c[(c[e>>
;2]|0)+128>>2]=0;c[(c[e>>2]|0)+132>>2]=0;c[(c[e>>2]|0)+136>>2]=0;c[(c[e>
x3e;2]|0)+140>>2]=0;c[(c[e>>2]|0)+152>>2]=0;c[(c[e>>2]|0)+72>>2]=0;c[(c[e>
;>2]|0)+56>>2]=0;c[(c[e>>2]|0)+60>>2]=0;c[(c[e>>2]|0)+144>>2]=0;c[(c[e>
;>2]|0)+148>>2]=0;i=d;return}function Eb(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if
(c[(c[b>>2]|0)+156>>2]|0?c[(c[(c[b>>2]|0)+156>>2]|0)+4>>2]&1|0:0){c[d>
;>2]=c[(c[(c[b>>2]|0)+4>>2]|0)+100>>2];Fb(c[d>>2]|0,c[(c[b>>2]|0)+76+12
x3e;>2]|0);c[(c[b>>2]|0)+76+12>>2]=0;a=(c[(c[b>>2]|0)+156>>2]|0)+4|0;c[a>>
;2]=c[a>>2]&-2;i=e;return}c[(c[b>>2]|0)+76+12>>2]=0;i=e;return}function Fb(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=f;return}Ra[c[(c[d>
;>2]|0)+8>>2]&7](c[d>>2]|0,c[e>>2]|0);i=f;return}function Gb(a){a=a|0;var d=0,e=0,f=0,g=
0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;d=l+24|0;e=l+20|0;k=l+16|0;j=l+12|0;g=l+8|0;f=l+4|0;h=l;c[e>>2]=a;a:do if(c[e>>
;2]|0){c[k>>2]=b[(c[e>>2]|0)+2>>1];c[j>>2]=b[c[e>>2]>>1];if((c[k>
;>2]|0)==0&(c[j>>2]|0)==0){c[d>>2]=0;a=c[d>>2]|0;i=l;return a|0}if(!((c[k>>2]|
0)<=0|(c[j>>2]|0)<=0)){c[f>>2]=-1;c[g>>2]=-1;c[h>>2]=0;while(1){if((c[h>
x3e;2]|0)>=(c[j>>2]|0))break;c[f>>2]=b[(c[(c[e>>2]|0)+12>>2]|0)+(c[h>>2]
x3c;<1)>>1];if((c[f>>2]|0)<=(c[g>>2]|0))break a;if((c[f>>2]|0)>=(c[k>
;>2]|0))break a;c[g>>2]=c[f>>2];c[h>>2]=(c[h>>2]|0)+1}if((c[f>>2]|0)==((c
[k>>2]|0)-1|0)){c[d>>2]=0;a=c[d>>2]|0;i=l;return a|0}}}while(0);c[d>>2]=6;a=c[d>>
;2]|0;i=l;return a|0}function Hb(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+32|0;k=h+12|0;j=h+16|0;f=h+8|0;g=h+4|0;e=h
;c[k>>2]=b;a[j>>0]=d;c[f>>2]=(c[k>>2]|0)+24;b=c[f>>2]|0;if(a[j>>0]|0
){c[(c[f>>2]|0)+8>>2]=c[b+8>>2]&-64;c[(c[f>>2]|0)+12>>2]=(c[(c[f>>
;2]|0)+12>>2]|0)+63&-64;c[g>>2]=(c[(c[f>>2]|0)+20>>2]|0)+(c[c[f>>2]>
x3e;2]|0)+63&-64;c[e>>2]=(c[(c[f>>2]|0)+24>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0)+
63&-64;c[(c[f>>2]|0)+20>>2]=c[(c[f>>2]|0)+20>>2]&-64;c[(c[f>>2]|0)+24
>>2]=c[(c[f>>2]|0)+24>>2]&-64;c[c[f>>2]>>2]=(c[g>>2]|0)-(c[(c[f
>>2]|0)+20>>2]|0);c[(c[f>>2]|0)+4>>2]=(c[e>>2]|0)-(c[(c[f>>2]|0)+24
x3e;>2]|0);k=c[f>>2]|0;k=k+16|0;k=c[k>>2]|0;k=k+32|0;k=k&-64;j=c[f>>2]|0;j=j+16|0;c[j>
;>2]=k;j=c[f>>2]|0;j=j+28|0;j=c[j>>2]|0;j=j+32|0;j=j&-64;k=c[f>>2]|0;k=k+28|0;c[k>
x3e;2]=j;i=h;return}else{c[(c[f>>2]|0)+20>>2]=c[b+20>>2]&-64;c[(c[f>>2]|0)+24>
x3e;2]=c[(c[f>>2]|0)+24>>2]&-64;c[g>>2]=(c[(c[f>>2]|0)+8>>2]|0)+(c[c[f>
;>2]>>2]|0)+63&-64;c[e>>2]=(c[(c[f>>2]|0)+12>>2]|0)-(c[(c[f>>2]|0)+4
>>2]|0)&-64;c[(c[f>>2]|0)+8>>2]=c[(c[f>>2]|0)+8>>2]&-64;c[(c[f>
x3e;2]|0)+12>>2]=(c[(c[f>>2]|0)+12>>2]|0)+63&-64;c[c[f>>2]>>2]=(c[g>
x3e;2]|0)-(c[(c[f>>2]|0)+8>>2]|0);c[(c[f>>2]|0)+4>>2]=(c[(c[f>>2]|0)+12>
x3e;2]|0)-(c[e>>2]|0);k=c[f>>2]|0;k=k+16|0;k=c[k>>2]|0;k=k+32|0;k=k&-64;j=c[f>>2]|0
;j=j+16|0;c[j>>2]=k;j=c[f>>2]|0;j=j+28|0;j=c[j>>2]|0;j=j+32|0;j=j&-64;k=c[f>>2]|0;k
=k+28|0;c[k>>2]=j;i=h;return}}function Ib(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;b=f+12|0;g=f+8|0;d=f+4|0;e=f;c
[b>>2]=a;c[g>>2]=c[(c[b>>2]|0)+4>>2];c[d>>2]=c[(c[(c[g>>2]|0)+96>
;>2]|0)+4>>2];c[e>>2]=c[(c[d>>2]|0)+164>>2];if(c[e>>2]|0?(c[(c[e>>
;2]|0)+24>>2]|0)==(c[(c[b>>2]|0)+72>>2]|0):0){g=c[e>>2]|0;i=f;return g|0}c[e>>
2]=Jb(c[d>>2]|0,c[(c[b>>2]|0)+72>>2]|0,0)|0;g=c[e>>2]|0;i=f;return g|0}function Jb(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;m=i;i=i+32|0;e=m+20|0;f=m+16|0;g=m+12|0;h=m+8|0;k=m+4|0;j=m;c[e>>
;2]=a;c[f>>2]=b;c[g>>2]=d;c[k>>2]=0;if(!(c[e>>2]|0)){l=c[k>>2]|0;i=m;return l|
0}c[h>>2]=c[(c[e>>2]|0)+156>>2];if(c[g>>2]|0){if(c[c[g>>2]>>2]|0)c[h
>>2]=c[(c[c[g>>2]>>2]|0)+4>>2];c[c[g>>2]>>2]=0}while(1){if(!(c[h>
;>2]|0)){l=12;break}c[j>>2]=c[(c[h>>2]|0)+8>>2];if((c[(c[j>>2]|0)+24>>2]|
0)==(c[f>>2]|0))break;c[h>>2]=c[(c[h>>2]|0)+4>>2]}if((l|0)==12){l=c[k>>2]|0;i=
m;return l|0}if(c[g>>2]|0)c[c[g>>2]>>2]=c[h>>2];c[k>>2]=c[j>>2];l=c[
k>>2]|0;i=m;return l|0}function Kb(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;
c[e>>2]=a;c[f>>2]=d;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=j;return}c[h>>
2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=(c[h>>2]|0)+(b[(c[e>>2]|0)+2>>1]<
;<3);while(1){if((c[h>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;Lb(c[h>
x3e;2]|0,c[f>>2]|0);c[h>>2]=(c[h>>2]|0)+8}i=j;return}function Lb(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;if(!((c[d>>2]|0)!=0&(c[
e>>2]|0)!=0)){i=h;return}a=Mb(c[c[d>>2]>>2]|0,c[c[e>>2]>>2]|0)|0;c[f>>
;2]=a+(Mb(c[(c[d>>2]|0)+4>>2]|0,c[(c[e>>2]|0)+4>>2]|0)|0);a=Mb(c[c[d>>2]>
x3e;2]|0,c[(c[e>>2]|0)+8>>2]|0)|0;c[g>>2]=a+(Mb(c[(c[d>>2]|0)+4>>2]|0,c[(c[e
x3e;>2]|0)+12>>2]|0)|0);c[c[d>>2]>>2]=c[f>>2];c[(c[d>>2]|0)+4>>
2]=c[g>>2];i=h;return}function Mb(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;l=i;i=i+32|0;f=l+24|0;d=l+20|0;
e=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;g=l;c[d>>2]=a;c[e>>2]=b;a=c[d>>2]|0;if((c[d>>2]|0)==0|(
c[e>>2]|0)==65536){c[f>>2]=a;k=c[f>>2]|0;i=l;return k|0}c[h>>2]=a;a=c[d>>2]|0;
c[d>>2]=(c[d>>2]|0)<0?0-a|0:a;c[h>>2]=c[h>>2]^c[e>>2];a=c[e>>2]|
0;c[e>>2]=(c[e>>2]|0)<0?0-a|0:a;c[j>>2]=c[d>>2];c[k>>2]=c[e>>2];
a=c[j>>2]|0;if((c[j>>2]|0)>>>0<=2048&(c[k>>2]|0)>>>0<=
1048576)c[j>>2]=((_(a,c[k>>2]|0)|0)+32768|0)>>>16;else{c[g>>2]=a&65535;e=_((c[
j>>2]|0)>>>16,c[k>>2]|0)|0;e=e+(_(c[g>>2]|0,(c[k>>2]|0)>>>
16)|0)|0;c[j>>2]=e+(((_(c[g>>2]|0,c[k>>2]&65535)|0)+32768|0)>>>16)}k=c[j>
x3e;2]|0;c[f>>2]=(c[h>>2]|0)<0?0-k|0:k;k=c[f>>2]|0;i=l;return k|0}function Nb(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;m=i;i=i+32|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m+16|0;l=m;c[g>>2]=a;c[h>>2]=d
;c[j>>2]=f;if(!(c[g>>2]|0)){i=m;return}c[l>>2]=c[(c[g>>2]|0)+4>>2];b[k>
x3e;1]=0;while(1){if((e[k>>1]|0)>=(b[(c[g>>2]|0)+2>>1]|0))break;f=c[l>>2]|0;c[f>
;>2]=(c[f>>2]|0)+(c[h>>2]|0);f=(c[l>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+(c[j
x3e;>2]|0);c[l>>2]=(c[l>>2]|0)+8;b[k>>1]=(b[k>>1]|0)+1<<16>>16}
i=m;return}function Ob(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[
f>>2]=b;if(c[e>>2]|0?c[(c[e>>2]|0)+4>>2]|0:0){c[g>>2]=c[(c[(c[(c[e>>
2]|0)+4>>2]|0)+96>>2]|0)+4>>2];c[d>>2]=Pb(c[g>>2]|0,c[e>>2]|0,c[f>
;>2]|0)|0;a=c[d>>2]|0;i=h;return a|0}c[d>>2]=6;a=c[d>>2]|0;i=h;return a|0}function Pb(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;o=i;i=i+32|0;g=o+20|0;h=o+16|0;j=o+12|0;k=o+8|0;m=o+4|0;l=o;n=o+24|0;c[g
x3e;>2]=b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=0;if((c[(c[h>>2]|0)+72>>2]|0)==1651078259
){n=c[k>>2]|0;i=o;return n|0}c[l>>2]=0;a[n>>0]=0;b=c[g>>2]|0;if((c[(c[h>>2]|0)+
72>>2]|0)==1869968492){c[m>>2]=c[b+164>>2];c[l>>2]=c[(c[g>>2]|0)+156>>
;2]}else c[m>>2]=Jb(b,c[(c[h>>2]|0)+72>>2]|0,l)|0;c[k>>2]=7;while(1){if(!(c[m>>
;2]|0))break;c[k>>2]=Wa[c[(c[m>>2]|0)+68>>2]&31](c[m>>2]|0,c[h>>2]|0,c[j
x3e;>2]|0,0)|0;if(!(c[k>>2]|0))break;if((c[k>>2]&255|0)!=19)break;c[m>>2]=Jb(c[g>
x3e;2]|0,c[(c[h>>2]|0)+72>>2]|0,l)|0;a[n>>0]=1}if(c[k>>2]|0){n=c[k>>2]|0;i=o;return
n|0}if(!((d[n>>0]|0|0)!=0&(c[m>>2]|0)!=0)){n=c[k>>2]|0;i=o;return n|0}Qb(c[g>>2]|0
,c[m>>2]|0,0,0)|0;n=c[k>>2]|0;i=o;return n|0}function Qb(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o+20|0;j=o+16|0;k=o+12|0;m=o+8|0;l=o+4|0;n=o;c[g>>2]=a;c[h>
;>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=0;if(!(c[g>>2]|0)){c[f>>2]=33;n=c[f>
;>2]|0;i=o;return n|0}if(!(c[h>>2]|0)){c[f>>2]=6;n=c[f>>2]|0;i=o;return n|0}c[m>>2]=
Rb((c[g>>2]|0)+156|0,c[h>>2]|0)|0;a:do if(c[m>>2]|0){Sb((c[g>>2]|0)+156|0,c[m>>
;2]|0);if((c[(c[h>>2]|0)+24>>2]|0)==1869968492)c[(c[g>>2]|0)+164>>2]=c[h>>2];if
((c[j>>2]|0)>>>0>0){c[n>>2]=c[(c[(c[h>>2]|0)+20>>2]|0)+52>>
;2];while(1){if((c[j>>2]|0)>>>0<=0)break a;c[l>>2]=Oa[c[n>>2]&63](c[h>
;>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0)|0;if(c[l>>2]|0)break a;c[j
x3e;>2]=(c[j>>2]|0)+-1}}}else c[l>>2]=6;while(0);c[f>>2]=c[l>>2];n=c[f>>2
]|0;i=o;return n|0}function Rb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;f=g+12|0;h=g+8|0;d=g+4|0;e=g;c[h>>
;2]=a;c[d>>2]=b;c[e>>2]=c[c[h>>2]>>2];while(1){if(!(c[e>>2]|0)){b=6;break}a=c[
e>>2]|0;if((c[(c[e>>2]|0)+8>>2]|0)==(c[d>>2]|0)){b=4;break}c[e>>2]=c[a+4>
x3e;2]}if((b|0)==4){c[f>>2]=a;h=c[f>>2]|0;i=g;return h|0}else if((b|0)==6){c[f>>2]=0;h=c[f>
x3e;2]|0;i=g;return h|0}return 0}function Sb(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;e=h+12|0;f=h+8|0;d=h+4|0;g=h;
c[e>>2]=a;c[f>>2]=b;c[d>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[f>>
2]|0)+4>>2];if(!(c[d>>2]|0)){i=h;return}c[(c[d>>2]|0)+4>>2]=c[g>>2];d=c[d>
;>2]|0;if(c[g>>2]|0)c[c[g>>2]>>2]=d;else c[(c[e>>2]|0)+4>>2]=d;c[c[f>
;>2]>>2]=0;c[(c[f>>2]|0)+4>>2]=c[c[e>>2]>>2];c[c[c[e>>2]>
x3e;2]>>2]=c[f>>2];c[c[e>>2]>>2]=c[f>>2];i=h;return}function Tb(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;if((c[d>>2]|0)>=0){d=a+32768&-65536;i=b;return
d|0}else{d=0-(0-a+32768&-65536)|0;i=b;return d|0}return 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;l=i;i=i+32|0;e=l+24|0;f=l+20|0;g=l+16|0;h=l+12|0;j=l+8|0;k=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if
(c[f>>2]|0?(c[g>>2]|0)!=(c[h>>2]|0):0){c[j>>2]=c[f>>2];d=c[f>>2]|0;c
[f>>2]=(c[f>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[g>>2];d=c[g>>2]|
0;c[g>>2]=(c[g>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[h>>2];d=c[h>>
2]|0;c[h>>2]=(c[h>>2]|0)<0?0-d|0:d;do if(!((c[f>>2]|0)<=46340&(c[g>>2]|0)
x3c;=46340&(c[h>>2]|0)>0))if((c[h>>2]|0)>0){yb(c[f>>2]|0,c[g>>2]|0,k);c[f
>>2]=Ab(c[k+4>>2]|0,c[k>>2]|0,c[h>>2]|0)|0;break}else{c[f>>2]=2147483647;break
}else{k=_(c[f>>2]|0,c[g>>2]|0)|0;c[f>>2]=(k|0)/(c[h>>2]|0)|0}while(0);k=c[f>>2
]|0;c[e>>2]=(c[j>>2]|0)<0?0-k|0:k;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=c[f>>
;2];k=c[e>>2]|0;i=l;return k|0}function Vb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+28|0;e=k+
24|0;g=k+20|0;f=k+16|0;h=k+8|0;j=k;c[d>>2]=a;c[e>>2]=b;c[g>>2]=c[d>>2];b=c[d>>
2]|0;c[d>>2]=(c[d>>2]|0)<0?0-b|0:b;c[g>>2]=c[g>>2]^c[e>>2];b=c[e>>
;2]|0;c[e>>2]=(c[e>>2]|0)<0?0-b|0:b;do if(c[e>>2]|0){a=c[d>>2]|0;if(!(c[d>>
;2]>>16)){c[f>>2]=(((a<<16)+(c[e>>2]>>1)|0)>>>0)/((c[e>>
;2]|0)>>>0)|0;break}else{c[h+4>>2]=a>>16;c[h>>2]=c[d>>2]<<16;c[
j+4>>2]=0;c[j>>2]=c[e>>2]>>1;zb(h,j,h);c[f>>2]=Ab(c[h+4>>2]|0,c[h>
;>2]|0,c[e>>2]|0)|0;break}}else c[f>>2]=2147483647;while(0);j=c[f>>2]|0;i=k;return ((c[g>
;>2]|0)<0?0-j|0:j)|0}function Wb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0;f=h+4|0;g
=h;c[d>>2]=a;if(!(c[d>>2]|0)){c[b>>2]=6;g=c[b>>2]|0;i=h;return g|0}a=Mb(c[c[d>>
;2]>>2]|0,c[(c[d>>2]|0)+12>>2]|0)|0;c[e>>2]=a-(Mb(c[(c[d>>2]|0)+4>>2
]|0,c[(c[d>>2]|0)+8>>2]|0)|0);if(c[e>>2]|0){a=0-(Vb(c[(c[d>>2]|0)+4>>2]|0,c[e
x3e;>2]|0)|0)|0;c[(c[d>>2]|0)+4>>2]=a;a=0-(Vb(c[(c[d>>2]|0)+8>>2]|0,c[e>>
2]|0)|0)|0;c[(c[d>>2]|0)+8>>2]=a;c[f>>2]=c[c[d>>2]>>2];c[g>>2]=c[(c[
d>>2]|0)+12>>2];g=Vb(c[g>>2]|0,c[e>>2]|0)|0;c[c[d>>2]>>2]=g;g=Vb(c[f
>>2]|0,c[e>>2]|0)|0;c[(c[d>>2]|0)+12>>2]=g;c[b>>2]=0;g=c[b>>2]|0;i=h
;return g|0}else{c[b>>2]=6;g=c[b>>2]|0;i=h;return g|0}return 0}function Xb(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;m=i;i=i+32|0;e=m+28|0;f=m+24|0;n=m+20|0;h=m+16|0;j=m+12|0;k=m+8|0;l=m+4|0;g=m;c[e>>2]=
a;c[f>>2]=b;c[n>>2]=d;c[g>>2]=c[n>>2]<<16;if(!((c[e>>2]|0)!=0&(
c[f>>2]|0)!=0)){i=m;return}n=xb(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0,c[g>>
;2]|0)|0;c[h>>2]=n+(xb(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>
x3e;2]|0)|0);n=xb(c[c[e>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0;c[j>
x3e;2]=n+(xb(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);n=xb(c
[(c[e>>2]|0)+8>>2]|0,c[c[f>>2]>>2]|0,c[g>>2]|0)|0;c[k>>2]=n+(xb(c[(c
[e>>2]|0)+12>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>>2]|0)|0);n=xb(c[(c[e>>
2]|0)+8>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0;c[l>>2]=n+(xb(c[(c[e>>
;2]|0)+12>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);c[c[f>>2]>>2]=c
[h>>2];c[(c[f>>2]|0)+4>>2]=c[j>>2];c[(c[f>>2]|0)+8>>2]=c[k>>
;2];c[(c[f>>2]|0)+12>>2]=c[l>>2];i=m;return}function Yb(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;k=i;i=i+32|0;e=k+20|0;f=k+16|0;l=k+12|0;h=k+8|0;j=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[l>>
;2]=d;c[g>>2]=c[l>>2]<<16;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=k;return
}l=xb(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0,c[g>>2]|0)|0;c[h>>2]=l+(xb(c[(
c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0);l=xb(c[c[e>>2
]>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>>2]|0)|0;c[j>>2]=l+(xb(c[(c[e>>2]|
0)+4>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);c[c[e>>2]>>2]=c[h>
;>2];c[(c[e>>2]|0)+4>>2]=c[j>>2];i=k;return}function Zb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,
j=0;j=i;i=i+32|0;b=j+20|0;g=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;d=j;c[b>>2]=a;c[g>>2]=0;if((c[b>>2]|0)
x3c;=0){a=c[g>>2]|0;i=j;return a|0}c[e>>2]=0;c[f>>2]=c[b>>2];c[d>>2]=24;do{c[e
>>2]=c[e>>2]<<2|(c[f>>2]|0)>>>30;c[f>>2]=c[f>>2]<
;<2;c[g>>2]=c[g>>2]<<1;c[h>>2]=(c[g>>2]<<1)+1;if((c[e>>
;2]|0)>>>0>=(c[h>>2]|0)>>>0){c[e>>2]=(c[e>>2]|0)-(c[h>>
;2]|0);c[g>>2]=(c[g>>2]|0)+1}a=(c[d>>2]|0)+-1|0;c[d>>2]=a}while((a|0)!=0);a=c[g>>
;2]|0;i=j;return a|0}function _b(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;n=i;i=i+48|0;f=n+32|0;k=n+
28|0;g=n+24|0;l=n+20|0;m=n+16|0;h=n+8|0;j=n;c[f>>2]=a;c[k>>2]=b;c[g>>2]=d;c[l>>2]=e;b=c[
f>>2]|0;do if(!(c[k>>2]|0)){a=c[l>>2]|0;if((b|0)>=0){c[m>>2]=a;break}else{c[m>
x3e;2]=0-a;break}}else{if(!b){a=c[g>>2]|0;if((c[k>>2]|0)>=0){c[m>>2]=0-a;break}else{c[m>
x3e;2]=a;break}}b=c[g>>2]|0;if(!(c[l>>2]|0)){a=c[k>>2]|0;if((b|0)>=0){c[m>>2]=a;break
}else{c[m>>2]=0-a;break}}if(!b){a=c[f>>2]|0;if((c[l>>2]|0)>=0){c[m>>2]=0-a;break}else
{c[m>>2]=a;break}}yb(c[f>>2]|0,c[l>>2]|0,h);yb(c[k>>2]|0,c[g>>2]|0,j);if((c[h+
4>>2]|0)>>>0>(c[j+4>>2]|0)>>>0){c[m>>2]=1;break}if((c[h+4>
x3e;2]|0)>>>0<(c[j+4>>2]|0)>>>0){c[m>>2]=-1;break}if((c[h>>2]|0
)>>>0>(c[j>>2]|0)>>>0){c[m>>2]=1;break}if((c[h>>2]|0)>>
;>0<(c[j>>2]|0)>>>0){c[m>>2]=-1;break}else{c[m>>2]=0;break}}while(0);i=n;
return c[m>>2]|0}function $b(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;p=i;i=i+48|0
;f=p+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;n=p+8|0;o=p+4|0;m=p;c[f>>2]=a;c[g>>2]=b;c[h>>
;2]=d;c[j>>2]=e;c[k>>2]=c[f>>2];c[l>>2]=c[g>>2];if((c[k>>2]|0)<
0)c[k>>2]=0-(c[k>>2]|0);if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>>2]|0);c[n>
x3e;2]=(c[k>>2]|0)+(c[l>>2]|0);c[k>>2]=c[h>>2];if((c[k>>2]|0)<0)c[k>
x3e;2]=0-(c[k>>2]|0);c[l>>2]=c[j>>2];if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>
;>2]|0);c[o>>2]=(c[k>>2]|0)+(c[l>>2]|0);c[k>>2]=(c[h>>2]|0)+(c[f>>
;2]|0);if((c[k>>2]|0)<0)c[k>>2]=0-(c[k>>2]|0);c[l>>2]=(c[j>>2]|0)+(c[g>
;>2]|0);if((c[l>>2]|0)>=0){e=c[k>>2]|0;d=c[l>>2]|0;d=e+d|0;c[m>>2]=d;d=c[n>
;>2]|0;e=c[o>>2]|0;e=d+e|0;d=c[m>>2]|0;d=e-d|0;e=c[m>>2]|0;e=e>>4;e=(d|0)<(e|0
);e=e&1;i=p;return e|0}c[l>>2]=0-(c[l>>2]|0);e=c[k>>2]|0;d=c[l>>2]|0;d=e+d|0;c[m>
;>2]=d;d=c[n>>2]|0;e=c[o>>2]|0;e=d+e|0;d=c[m>>2]|0;d=e-d|0;e=c[m>>2]|0;e=e>>
;4;e=(d|0)<(e|0);e=e&1;i=p;return e|0}function ac(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;d=h+12|0;e=h+8
|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[g>>2]=bc(c[d>>2]|0,96,f)|0;if(c
[f>>2]|0){a=c[f>>2]|0;i=h;return a|0}c[c[g>>2]>>2]=c[d>>2];c[c[e>>2]
x3e;>2]=c[g>>2];a=c[f>>2]|0;i=h;return a|0}function bc(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;k=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[k>>2]=a;c[e>>2]=b;c[f>>2]=d;c[g>>
;2]=cc(c[k>>2]|0,c[e>>2]|0,h)|0;if((c[h>>2]|0)==0&(c[e>>2]|0)>0)Ns(c[g>
x3e;2]|0,0,c[e>>2]|0)|0;c[c[f>>2]>>2]=c[h>>2];i=j;return c[g>>2]|0}function cc
(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;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f
>>2]=b;c[g>>2]=d;c[j>>2]=0;c[h>>2]=0;if((c[f>>2]|0)>0){c[h>>2]=
Ya[c[(c[e>>2]|0)+4>>2]&127](c[e>>2]|0,c[f>>2]|0)|0;if(!(c[h>>2]|0))c[j>
;>2]=64}else if((c[f>>2]|0)<0)c[j>>2]=6;c[c[g>>2]>>2]=c[j>>2];i=k;return
c[h>>2]|0}function dc(a){a=a|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[d>>
;2]=(c[g>>2]|0)+20;c[e>>2]=(c[g>>2]|0)+56;b[(c[d>>2]|0)+2>>1]=0;b[c[d>>
;2]>>1]=0;c[(c[d>>2]|0)+28>>2]=0;a=c[e>>2]|0;d=c[d>>2]|0;e=a+36|0;do{c[a>
x3e;2]=c[d>>2];a=a+4|0;d=d+4|0}while((a|0)<(e|0));i=f;return}function ec(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];Fb(c[e>>2]|0,c[(c[d>>2]|0)+
20+4>>2]|0);c[(c[d>>2]|0)+20+4>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+8>>
;2]|0);c[(c[d>>2]|0)+20+8>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+12>>2]|0);c[(c[d
>>2]|0)+20+12>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+20>>2]|0);c[(c[d>>
2]|0)+20+20>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+32>>2]|0);c[(c[d>>2]|0)+20+32
x3e;>2]=0;c[(c[d>>2]|0)+20+24>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+8
>>2]=0;c[(c[d>>2]|0)+12>>2]=0;dc(c[d>>2]|0);i=b;return}function fc(a){a=a|0;var b=0,d=0,
e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(!(c[b>>2]|0)){i=e;return}c[d>>2]=c[c[b>>2]>
;>2];ec(c[b>>2]|0);Fb(c[d>>2]|0,c[b>>2]|0);c[b>>2]=0;i=e;return}function gc(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[g>>2]=c[c[d>>2]>>2];b
=hc(c[g>>2]|0,8,0,c[(c[d>>2]|0)+4>>2]<<1,0,e)|0;c[(c[d>>2]|0)+20+20>>
;2]=b;if(c[e>>2]|0){g=c[e>>2]|0;i=f;return g|0}a[(c[d>>2]|0)+16>>0]=1;c[(c[d>>
2]|0)+20+24>>2]=(c[(c[d>>2]|0)+20+20>>2]|0)+(c[(c[d>>2]|0)+4>>2]<<3);
jc(c[d>>2]|0);g=c[e>>2]|0;i=f;return g|0}function hc(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;o=i;i=i+32|0;p=o+24|0;h=o+20|0;j=o+16|0;k=o+12|0;l=o+8|0;m=o+4|0;n=o;c[p>>2]=a;c[h>
x3e;2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=0;c[l>>2]=ic
(c[p>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,n)|0;if((c[n>>2]|
0)==0?(c[k>>2]|0)>(c[j>>2]|0):0){p=(c[l>>2]|0)+(_(c[j>>2]|0,c[h>>2]|0)|0)|
0;Ns(p|0,0,_((c[k>>2]|0)-(c[j>>2]|0)|0,c[h>>2]|0)|0)|0}c[c[m>>2]>>2]=c[n>
x3e;2];i=o;return c[l>>2]|0}function ic(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;s=i;i=i+48|0;h=s+36|0;j=s+32|0;k=s+28|0;l=s+24|0;m=s+20|0;n=s+16|0;q=s+12|0;o=s+8|0;p=s+4|0;r=s;c[h>>
;2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[q>>2]=0;do
if(!((c[k>>2]|0)<0|(c[l>>2]|0)<0|(c[j>>2]|0)<0)){if((c[l>>2]|0)==0|(c[j
x3e;>2]|0)==0){Fb(c[h>>2]|0,c[m>>2]|0);c[m>>2]=0;break}if((c[l>>2]|0)>(2147483647
/(c[j>>2]|0)|0|0)){c[q>>2]=10;break}if(!(c[k>>2]|0)){c[m>>2]=bc(c[h>>2]|0,_(c[
l>>2]|0,c[j>>2]|0)|0,q)|0;break}c[p>>2]=_(c[k>>2]|0,c[j>>2]|0)|0;c[r>>
;2]=_(c[l>>2]|0,c[j>>2]|0)|0;c[o>>2]=Wa[c[(c[h>>2]|0)+12>>2]&31](c[h>
;>2]|0,c[p>>2]|0,c[r>>2]|0,c[m>>2]|0)|0;if(!(c[o>>2]|0)){c[q>>2]=64;break
}else{c[m>>2]=c[o>>2];break}}else c[q>>2]=6;while(0);c[c[n>>2]>>2]=c[q>
x3e;2];i=s;return c[m>>2]|0}function jc(d){d=d|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
]=d;c[f>>2]=(c[e>>2]|0)+20;c[h>>2]=(c[e>>2]|0)+56;c[(c[h>>2]|0)+4>>2
]=(c[(c[f>>2]|0)+4>>2]|0)+(b[(c[f>>2]|0)+2>>1]<<3);c[(c[h>>2]|0)+8
x3e;>2]=(c[(c[f>>2]|0)+8>>2]|0)+(b[(c[f>>2]|0)+2>>1]|0);c[(c[h>>2]|0)+12
x3e;>2]=(c[(c[f>>2]|0)+12>>2]|0)+(b[c[f>>2]>>1]<<1);if(!(a[(c[e>>
;2]|0)+16>>0]|0)){i=g;return}c[(c[e>>2]|0)+56+20>>2]=(c[(c[e>>2]|0)+20+20>>2]|
0)+(b[(c[f>>2]|0)+2>>1]<<3);c[(c[e>>2]|0)+56+24>>2]=(c[(c[e>>2]|0)+20
+24>>2]|0)+(b[(c[f>>2]|0)+2>>1]<<3);i=g;return}function kc(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,s=0,t=0;s=i;i=i+48|0;g=s+36|0;h=s+32|0;t=s+28|0;j=s+24|0;o=s+20|0;n=s+16|0;l=s+12|0;
m=s+8|0;k=s+40|0;p=s+4|0;q=s;c[h>>2]=d;c[t>>2]=e;c[j>>2]=f;c[o>>2]=c[c[h>>2]
x3e;>2];c[n>>2]=0;c[l>>2]=(c[h>>2]|0)+20;c[m>>2]=(c[h>>2]|0)+56;a[k>
x3e;0]=0;c[p>>2]=(b[(c[l>>2]|0)+2>>1]|0)+(b[(c[m>>2]|0)+2>>1]|0)+(c[t>>
;2]|0);c[q>>2]=c[(c[h>>2]|0)+4>>2];do if((c[p>>2]|0)>>>0>(c[q>
x3e;2]|0)>>>0){c[p>>2]=(c[p>>2]|0)+7&-8;if((c[p>>2]|0)>>>0>
;32767){c[g>>2]=10;t=c[g>>2]|0;i=s;return t|0}t=hc(c[o>>2]|0,8,c[q>>2]|0,c[p>>
2]|0,c[(c[l>>2]|0)+4>>2]|0,n)|0;c[(c[l>>2]|0)+4>>2]=t;if((c[n>>2]|0)==0?(t=hc(
c[o>>2]|0,1,c[q>>2]|0,c[p>>2]|0,c[(c[l>>2]|0)+8>>2]|0,n)|0,c[(c[l>>2
]|0)+8>>2]=t,(c[n>>2]|0)==0):0){if(a[(c[h>>2]|0)+16>>0]|0){t=hc(c[o>>2]|0,8,c[
q>>2]<<1,c[p>>2]<<1,c[(c[h>>2]|0)+20+20>>2]|0,n)|0;c[(c[h>>
;2]|0)+20+20>>2]=t;if(c[n>>2]|0)break;Ts((c[(c[h>>2]|0)+20+20>>2]|0)+(c[p>>2]
x3c;<3)|0,(c[(c[h>>2]|0)+20+20>>2]|0)+(c[q>>2]<<3)|0,c[q>>2]<<3
|0)|0;c[(c[h>>2]|0)+20+24>>2]=(c[(c[h>>2]|0)+20+20>>2]|0)+(c[p>>2]<<
3)}a[k>>0]=1;c[(c[h>>2]|0)+4>>2]=c[p>>2];r=10}}else r=10;while(0);a:do if((r|0)==10){c[q
>>2]=c[(c[h>>2]|0)+8>>2];c[p>>2]=(b[c[l>>2]>>1]|0)+(b[c[m>>
;2]>>1]|0)+(c[j>>2]|0);do if((c[p>>2]|0)>>>0>(c[q>>2]|0)>>
x3e;0){c[p>>2]=(c[p>>2]|0)+3&-4;if((c[p>>2]|0)>>>0>32767){c[g>>
2]=10;t=c[g>>2]|0;i=s;return t|0}else{t=hc(c[o>>2]|0,2,c[q>>2]|0,c[p>>2]|0,c[(c[l>
x3e;2]|0)+12>>2]|0,n)|0;c[(c[l>>2]|0)+12>>2]=t;if(c[n>>2]|0)break a;a[k>>0]=1;
c[(c[h>>2]|0)+8>>2]=c[p>>2];break}}while(0);if(a[k>>0]|0)jc(c[h>>2]|0)}while(0
);c[g>>2]=c[n>>2];t=c[g>>2]|0;i=s;return t|0}function lc(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;d=k+28|0;l=k+24|0;g=k+20|0;f=k+16|0;h=k+12|0;j=k+8|0;e=k+4|0;m=k;c[d>>2]=a;c[l>>
;2]=b;c[g>>2]=c[c[d>>2]>>2];c[f>>2]=0;c[e>>2]=(c[d>>2]|0)+20;c[m>
;>2]=(c[d>>2]|0)+56;c[h>>2]=(c[(c[e>>2]|0)+28>>2]|0)+(c[(c[m>>2]|0)+28>
;>2]|0)+(c[l>>2]|0);c[j>>2]=c[(c[d>>2]|0)+12>>2];if((c[h>>2]|0)>>
;>0<=(c[j>>2]|0)>>>0){m=c[f>>2]|0;i=k;return m|0}c[h>>2]=(c[h>>
2]|0)+1&-2;m=hc(c[g>>2]|0,32,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+32>>2]|0,f
)|0;c[(c[e>>2]|0)+32>>2]=m;if(c[f>>2]|0){m=c[f>>2]|0;i=k;return m|0}c[(c[d>>2]|
0)+12>>2]=c[h>>2];mc(c[d>>2]|0);m=c[f>>2]|0;i=k;return m|0}function mc(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+4|0;d=b;c[f>>2]=a;c[e>>2]=(c[f>>2]|0)+20;c[d>>2]=(c
[f>>2]|0)+56;c[(c[d>>2]|0)+32>>2]=(c[(c[e>>2]|0)+32>>2]|0)+(c[(c[e>>
2]|0)+28>>2]<<5);i=b;return}function nc(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;c[f>>2]=(c[e>>2]|0)+56;b[(c[f>>2]|0)+2>>1]=0;b[c[f>>2]>>1]=0;c[(c[
f>>2]|0)+28>>2]=0;jc(c[e>>2]|0);mc(c[e>>2]|0);i=d;return}function oc(a){a=a|0;var d=0,e=
0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[d>>2]=a;if(!(c[d>>2]|0)){
i=k;return}c[e>>2]=(c[d>>2]|0)+20;c[f>>2]=(c[d>>2]|0)+56;c[j>>2]=b[c[f>
x3e;2]>>1];c[h>>2]=b[(c[e>>2]|0)+2>>1];b[(c[e>>2]|0)+2>>1]=(b[(c[e
x3e;>2]|0)+2>>1]|0)+(b[(c[f>>2]|0)+2>>1]|0);b[c[e>>2]>>1]=(b[c[e>>
;2]>>1]|0)+(b[c[f>>2]>>1]|0);a=(c[e>>2]|0)+28|0;c[a>>2]=(c[a>>2]|0)+(
c[(c[f>>2]|0)+28>>2]|0);c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[j
x3e;>2]|0)>>>0)break;b[(c[(c[f>>2]|0)+12>>2]|0)+(c[g>>2]<<1)>
x3e;1]=(b[(c[(c[f>>2]|0)+12>>2]|0)+(c[g>>2]<<1)>>1]|0)+(c[h>>2]|0);c
[g>>2]=(c[g>>2]|0)+1}nc(c[d>>2]|0);i=k;return}function pc(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,j=0,k=0
,l=0,m=0,n=0;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;l=n+12|0;k=n+8|0;m=n+4|0;j=n;c[f>>2]=a;c[g>>2]=e;c[l>
;>2]=b[(c[g>>2]|0)+20+2>>1];c[k>>2]=b[(c[g>>2]|0)+20>>1];c[h>>2
]=kc(c[f>>2]|0,c[l>>2]|0,c[k>>2]|0)|0;if(c[h>>2]|0){a=c[h>>2]|0;i=n;return a|0
}c[m>>2]=(c[f>>2]|0)+20;c[j>>2]=(c[g>>2]|0)+20;Ss(c[(c[m>>2]|0)+4>>2
]|0,c[(c[j>>2]|0)+4>>2]|0,c[l>>2]<<3|0)|0;Ss(c[(c[m>>2]|0)+8>>2]|0,c
[(c[j>>2]|0)+8>>2]|0,c[l>>2]|0)|0;Ss(c[(c[m>>2]|0)+12>>2]|0,c[(c[j>>
2]|0)+12>>2]|0,c[k>>2]<<1|0)|0;if(d[(c[f>>2]|0)+16>>0]|0?d[(c[g>>2]|
0)+16>>0]|0:0){Ss(c[(c[f>>2]|0)+20+20>>2]|0,c[(c[g>>2]|0)+20+20>>2]|0,c[l>
;>2]<<3|0)|0;Ss(c[(c[f>>2]|0)+20+24>>2]|0,c[(c[g>>2]|0)+20+24>>2]|0,c[l
x3e;>2]<<3|0)|0}b[(c[m>>2]|0)+2>>1]=c[l>>2];b[c[m>>2]>>1]=c[k
x3e;>2];jc(c[f>>2]|0);a=c[h>>2]|0;i=n;return a|0}function qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;h=i;i=i+16|0;j=h+12|0;d=h+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=0;c[e>>2]=c[j
x3e;>2];if(!((c[e>>2]|0)!=0&(c[d>>2]|0)!=0)){j=c[f>>2]|0;i=h;return j|0}while(1){if(!(c[
c[e>>2]>>2]|0)){g=6;break}j=(Kr(c[c[e>>2]>>2]|0,c[d>>2]|0)|0)==0;a=c[e>
x3e;2]|0;if(j)break;c[e>>2]=a+8}if((g|0)==6){j=c[f>>2]|0;i=h;return j|0}c[f>>2]=c[a+4>>2
];j=c[f>>2]|0;i=h;return j|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;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;c[c[g>>2]>
x3e;2]=c[k>>2];c[(c[g>>2]|0)+4>>2]=c[j>>2];c[(c[g>>2]|0)+8>>2]=c[h
x3e;>2];c[(c[g>>2]|0)+12>>2]=0;i=f;return}function sc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d
+8|0;f=d+4|0;c[e>>2]=a;c[f>>2]=b;c[d>>2]=(c[e>>2]|0)+16;c[(c[e>>2]|0)+12>
x3e;2]=c[f>>2];ta(c[d>>2]|0,1)}function tc(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;m=i;
i=i+32|0;h=m+24|0;e=m+20|0;f=m+16|0;j=m+12|0;k=m+8|0;g=m+4|0;l=m;c[e>>2]=a;c[f>>2]=b;c[j>>2]=d;c[c
[j>>2]>>2]=0;if(!(c[e>>2]|0)){c[h>>2]=33;l=c[h>>2]|0;i=m;return l|0}if(!(c[f
x3e;>2]|0)){c[h>>2]=6;l=c[h>>2]|0;i=m;return l|0}c[g>>2]=c[c[e>>2]>>2];c[
l>>2]=bc(c[g>>2]|0,40,k)|0;if(!(c[k>>2]|0)){c[(c[l>>2]|0)+28>>2]=c[g>>
;2];do if(c[c[f>>2]>>2]&1|0)uc(c[l>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[(c[f>
;>2]|0)+8>>2]|0);else{if(c[c[f>>2]>>2]&4|0){c[k>>2]=qr(c[l>>2]|0,c[(
c[f>>2]|0)+12>>2]|0)|0;c[(c[l>>2]|0)+16>>2]=c[(c[f>>2]|0)+12>>2];break
}if(c[c[f>>2]>>2]&2|0?c[(c[f>>2]|0)+16>>2]|0:0){Fb(c[g>>2]|0,c[l>>
;2]|0);c[l>>2]=0;c[l>>2]=c[(c[f>>2]|0)+16>>2];break}c[k>>2]=6}while(0);e=c[g
x3e;>2]|0;f=c[l>>2]|0;if(c[k>>2]|0){Fb(e,f);c[l>>2]=0}else c[f+28>>2]=e;c[c[j>
x3e;2]>>2]=c[l>>2]}c[h>>2]=c[k>>2];l=c[h>>2]|0;i=m;return l|0}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;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]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2];c[(c[f>
x3e;2]|0)+8>>2]=0;c[(c[f>>2]|0)+32>>2]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>
x3e;2]|0)+24>>2]=0;i=e;return}function vc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=a;c[e>>2]=b;if(!(c[d>>2]|0)){i=g;return}c[f>>2]=c[(c[d>>2]|0)+28>>2];
wc(c[d>>2]|0);if(c[e>>2]|0){i=g;return}Fb(c[f>>2]|0,c[d>>2]|0);c[d>>2]=0;i=g;return
}function wc(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)){i=d;return}if(!(c[(c[b>
x3e;2]|0)+24>>2]|0)){i=d;return}Va[c[(c[b>>2]|0)+24>>2]&63](c[b>>2]|0);i=d;return}function
xc(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c
[g>>2]=c[(c[(c[d>>2]|0)+4>>2]|0)+100>>2];if(c[(c[(c[d>>2]|0)+156>>2]|
0)+4>>2]&1|0){Fb(c[g>>2]|0,c[(c[d>>2]|0)+76+12>>2]|0);c[(c[d>>2]|0)+76+12
>>2]=0}else{a=(c[(c[d>>2]|0)+156>>2]|0)+4|0;c[a>>2]=c[a>>2]|1}a=bc(c[g>
x3e;2]|0,c[e>>2]|0,f)|0;c[(c[d>>2]|0)+76+12>>2]=a;i=h;return c[f>>2]|0}function yc(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;m=i;i=i+32|0;d=m+28|0;e=m+24|0;f=m+20|0;j=m+16|0;h=m+12|0;g=m+8|0;k=m+4|0;l=
m;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0?c[(c[e>>2]|0)+96>>2]|0:0){c[h>>2]=
c[(c[e>>2]|0)+96>>2];c[g>>2]=c[(c[h>>2]|0)+20>>2];c[k>>2]=c[(c[h>
;>2]|0)+8>>2];c[l>>2]=bc(c[k>>2]|0,c[(c[g>>2]|0)+44>>2]|0,j)|0;do if(c[j
x3e;>2]|0){if(c[f>>2]|0)c[c[f>>2]>>2]=0}else{c[(c[l>>2]|0)+4>>2]=c[e>
;>2];c[j>>2]=zc(c[l>>2]|0)|0;if(c[j>>2]|0){Ac(c[l>>2]|0);Fb(c[k>>2]|0,c[l
>>2]|0);c[l>>2]=0;break}c[(c[l>>2]|0)+8>>2]=c[(c[e>>2]|0)+84>>2];c[(
c[e>>2]|0)+84>>2]=c[l>>2];if(c[f>>2]|0)c[c[f>>2]>>2]=c[l>>
2]}while(0);c[d>>2]=c[j>>2];l=c[d>>2]|0;i=m;return l|0}c[d>>2]=6;l=c[d>>2]|0;i
=m;return l|0}function zc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;b=j+20|0;e=j+16|0;d=j+12|0;h=j+8|0;f=j+4|0;g=j;c
[b>>2]=a;c[e>>2]=c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2];c[d>>2]=c[(c[e>
;>2]|0)+20>>2];c[h>>2]=c[(c[e>>2]|0)+8>>2];c[f>>2]=0;c[g>>2]=0;
c[c[b>>2]>>2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=bc(c[h>>2]|0,40,f)|0;if(c[
f>>2]|0){a=c[f>>2]|0;i=j;return a|0}c[(c[b>>2]|0)+156>>2]=c[g>>2];if(!(c[c[c[e
>>2]>>2]>>2]&512))c[f>>2]=ac(c[h>>2]|0,c[g>>2]|0)|0;if(c[f>
;>2]|0){a=c[f>>2]|0;i=j;return a|0}if(!(c[(c[d>>2]|0)+64>>2]|0)){a=c[f>>2]|0;i=j;return
a|0}c[f>>2]=Ta[c[(c[d>>2]|0)+64>>2]&63](c[b>>2]|0)|0;a=c[f>>2]|0;i=j;return
a|0}function Ac(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;d=g+4|0;f=g;c[b>>2]=a;c[e>>2
]=c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2];c[d>>2]=c[(c[e>>2]|0)+20>>2];c[f
x3e;>2]=c[(c[e>>2]|0)+8>>2];if(c[(c[d>>2]|0)+68>>2]|0)Va[c[(c[d>>2]|0)+68
>>2]&63](c[b>>2]|0);Eb(c[b>>2]|0);if(!(c[(c[b>>2]|0)+156>>2]|0)){i=g;return
}if(!(c[c[c[e>>2]>>2]>>2]&512)){fc(c[c[(c[b>>2]|0)+156>>2]>>2]|
0);c[c[(c[b>>2]|0)+156>>2]>>2]=0}Fb(c[f>>2]|0,c[(c[b>>2]|0)+156>>2]|
0);c[(c[b>>2]|0)+156>>2]=0;i=g;return}function Bc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+
16|0;d=j+12|0;g=j+8|0;h=j+4|0;b=j;c[f>>2]=a;if(!(c[f>>2]|0)){i=j;return}c[d>>2]=c[(c[(c[f>>
;2]|0)+4>>2]|0)+96>>2];c[g>>2]=c[(c[d>>2]|0)+8>>2];c[h>>2]=0;c[b>
;>2]=c[(c[(c[f>>2]|0)+4>>2]|0)+84>>2];while(1){if(!(c[b>>2]|0)){e=10;break}if((c[b
x3e;>2]|0)==(c[f>>2]|0))break;c[h>>2]=c[b>>2];c[b>>2]=c[(c[b>>2]|0)+8>
;>2]}if((e|0)==10){i=j;return}b=c[(c[b>>2]|0)+8>>2]|0;if(c[h>>2]|0)c[(c[h>>2]|0)+8
x3e;>2]=b;else c[(c[(c[f>>2]|0)+4>>2]|0)+84>>2]=b;Ac(c[f>>2]|0);Fb(c[g>>2
]|0,c[f>>2]|0);c[f>>2]=0;i=j;return}function Cc(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;e=k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[f>>2]|0
)){c[e>>2]=35;d=c[e>>2]|0;i=k;return d|0}c[j>>2]=c[g>>2];if(c[(c[f>>2]|0)+92
x3e;>2]|0)c[j>>2]=Dc(c[f>>2]|0,c[g>>2]|0)|0;c[e>>2]=Cb(c[f>>2]|0,c[j>
;>2]|0,c[h>>2]|0)|0;d=c[e>>2]|0;i=k;return d|0}function Dc(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;if(!(c[d>>2]|0)){g=
c[g>>2]|0;i=h;return g|0}if(!(c[(c[d>>2]|0)+92>>2]|0)){g=c[g>>2]|0;i=h;return g|0}c[f>
;>2]=c[(c[d>>2]|0)+92>>2];c[g>>2]=Ya[c[(c[(c[f>>2]|0)+12>>2]|0)+12>
x3e;2]&127](c[f>>2]|0,c[e>>2]|0)|0;g=c[g>>2]|0;i=h;return g|0}function Ec(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;m=i;i=i+64|0;f=m+48|0;g=m+44|0;h=m+40|0;j=m+36|0;k=m+32|0;l=m;c[g>>2]=a;
c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(c[h>>2]|0){c[l>>2]=4;c[l+12>>2]=c[h
>>2];c[l+16>>2]=0;c[f>>2]=Fc(c[g>>2]|0,l,c[j>>2]|0,c[k>>2]|0)|0;b=c[
f>>2]|0;i=m;return b|0}else{c[f>>2]=6;b=c[f>>2]|0;i=m;return b|0}return 0}function Fc(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;G=i;i=i
+96|0;C=G+80|0;j=G+76|0;k=G+72|0;l=G+68|0;D=G+64|0;E=G+60|0;o=G+56|0;u=G+52|0;B=G+48|0;q=G+44|0;v=G+40|0;p=G+84|0;n=G+36|0;t=G+32
|0;w=G+28|0;y=G+24|0;x=G+20|0;z=G+16|0;A=G+12|0;r=G+8|0;m=G+4|0;s=G;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;
c[D>>2]=h;c[B>>2]=0;c[q>>2]=0;c[v>>2]=0;if(!(((c[D>>2]|0)==0&(c[l>
x3e;2]|0)>=0^1)&(c[k>>2]|0)!=0)){c[C>>2]=6;F=c[C>>2]|0;i=G;return F|0}if(c[c[k>>
;2]>>2]&2|0)h=(c[(c[k>>2]|0)+16>>2]|0)!=0;else h=0;a[p>>0]=h&1;c[E>>
2]=tc(c[j>>2]|0,c[k>>2]|0,B)|0;a:do if(!(c[E>>2]|0)){c[u>>2]=c[c[j>>2]>
x3e;2];do if(c[c[k>>2]>>2]&8|0?c[(c[k>>2]|0)+20>>2]|0:0){c[o>>2]=c[(c[k
x3e;>2]|0)+20>>2];if(c[c[c[o>>2]>>2]>>2]&1|0){c[w>>2]=0;c[y>>
;2]=0;if(c[c[k>>2]>>2]&16|0){c[w>>2]=c[(c[k>>2]|0)+24>>2];c[y>>
2]=c[(c[k>>2]|0)+28>>2]}c[E>>2]=Gc(c[o>>2]|0,c[B>>2]|0,c[l>>2]|0,c[w
>>2]|0,c[y>>2]|0,q)|0;if(!(c[E>>2]|0))break}else c[E>>2]=32;vc(c[B>>2]|0,d[p
x3e;>0]|0);F=60;break a}else F=14;while(0);b:do if((F|0)==14){c[n>>2]=(c[j>>2]|0)+28;c[t>>2]=(
c[n>>2]|0)+(c[(c[j>>2]|0)+24>>2]<<2);while(1){if((c[n>>2]|0)>>>
0>=(c[t>>2]|0)>>>0){F=27;break a}if(c[c[c[c[n>>2]>>2]>>2]>>
;2]&1|0){c[x>>2]=0;c[z>>2]=0;c[o>>2]=c[c[n>>2]>>2];if(c[c[k>>2]
x3e;>2]&16|0){c[x>>2]=c[(c[k>>2]|0)+24>>2];c[z>>2]=c[(c[k>>2]|0)+28
x3e;>2]}c[E>>2]=Gc(c[o>>2]|0,c[B>>2]|0,c[l>>2]|0,c[x>>2]|0,c[z>>
;2]|0,q)|0;if(!(c[E>>2]|0))break b;if((Kr(c[(c[c[c[n>>2]>>2]>>2]|0)+8>>2]|0,10489
)|0)==0?(c[E>>2]&255|0)==142:0){if(Kc(c[B>>2]|0,0)|0){F=27;break a}c[E>>2]=Lc(c[j>>
2]|0,c[B>>2]|0,c[l>>2]|0,c[x>>2]|0,c[z>>2]|0,c[D>>2]|0)|0;if(!(c[E>>
2]|0))break}if((c[E>>2]&255|0)!=2){F=27;break a}}c[n>>2]=(c[n>>2]|0)+4}vc(c[B>>2]|0
,d[p>>0]|0);c[C>>2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}while(0);if(a[p>>0]|0){
B=(c[q>>2]|0)+8|0;c[B>>2]=c[B>>2]|1024}c[v>>2]=bc(c[u>>2]|0,12,E)|0;if(!(c[E
x3e;>2]|0)){c[(c[v>>2]|0)+8>>2]=c[q>>2];td((c[(c[q>>2]|0)+96>>2]|0)+24|0,
c[v>>2]|0);if((c[l>>2]|0)>=0){c[E>>2]=yc(c[q>>2]|0,0)|0;if(c[E>>2]|0){F=60
;break}c[E>>2]=ud(c[q>>2]|0,A)|0;if(c[E>>2]|0){F=60;break}c[(c[q>>2]|0)+88>>2]=
c[A>>2]}if(c[(c[q>>2]|0)+8>>2]&1|0){if((b[(c[q>>2]|0)+74>>1]|0)<0)b[(
c[q>>2]|0)+74>>1]=0-(b[(c[q>>2]|0)+74>>1]|0);if(!(c[(c[q>>2]|0)+8>>2
]&32))b[(c[q>>2]|0)+78>>1]=b[(c[q>>2]|0)+74>>1]|0}c:do if(c[(c[q>>2]|0)+8
>>2]&2|0){c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[(c[q>>2]|0)+28>>2]|0
))break c;c[m>>2]=(c[(c[q>>2]|0)+32>>2]|0)+(c[r>>2]<<4);if((b[c[m>>2
]>>1]|0)<0)b[c[m>>2]>>1]=0-(b[c[m>>2]>>1]|0);if((c[(c[m>>2]|0)+
8>>2]|0)<0)c[(c[m>>2]|0)+8>>2]=(0-(c[(c[m>>2]|0)+8>>2]|0)&65535)<
;<16>>16;if((c[(c[m>>2]|0)+12>>2]|0)<0)c[(c[m>>2]|0)+12>>2]=0-(c[(c[
m>>2]|0)+12>>2]|0);c[r>>2]=(c[r>>2]|0)+1}}while(0);c[s>>2]=c[(c[q>>2
]|0)+128>>2];c[(c[s>>2]|0)+4>>2]=65536;c[(c[s>>2]|0)+4+4>>2]=0;c[(c[s>>
;2]|0)+4+8>>2]=0;c[(c[s>>2]|0)+4+12>>2]=65536;c[(c[s>>2]|0)+20>>2]=0;c[(c[s>
;>2]|0)+20+4>>2]=0;c[(c[s>>2]|0)+60>>2]=1;h=c[q>>2]|0;if(c[D>>2]|0){c[c[D
>>2]>>2]=h;break}else{vd(h)|0;break}}else F=60}else F=27;while(0);if((F|0)==27){if(!(((c[E>>2]&
;255|0)!=81?(c[E>>2]&255|0)!=2:0)?(c[E>>2]&255|0)!=85:0))F=30;do if((F|0)==30){c[E>>2]=Xc
(c[j>>2]|0,c[B>>2]|0,c[l>>2]|0,c[D>>2]|0,c[k>>2]|0)|0;if(c[E>>2]|0){
if((c[E>>2]&255|0)!=2)break;c[E>>2]=2;break}else{vc(c[B>>2]|0,d[p>>0]|0);c[C>
x3e;2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}}while(0);vc(c[B>>2]|0,d[p>>0]|0);F=60}if((F|0
)==60)vd(c[q>>2]|0)|0;c[C>>2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}function Gc(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;v=i;i=i+64|0;h=v+48|0;j=v+44|0
;k=v+40|0;l=v+36|0;m=v+32|0;n=v+28|0;u=v+24|0;o=v+20|0;r=v+16|0;p=v+12|0;q=v+8|0;t=v+4|0;s=v;c[h>>2]=a;c[j>>
2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[r>>2]=0;c[t>>2]=0;c[o
>>2]=c[(c[h>>2]|0)+20>>2];c[u>>2]=c[(c[h>>2]|0)+8>>2];c[r>>
;2]=bc(c[u>>2]|0,c[(c[o>>2]|0)+36>>2]|0,p)|0;do if((c[p>>2]|0)==0?(c[t>>2]=bc(
c[u>>2]|0,64,p)|0,(c[p>>2]|0)==0):0){c[(c[r>>2]|0)+128>>2]=c[t>>2];c[(c[r>
;>2]|0)+96>>2]=c[h>>2];c[(c[r>>2]|0)+100>>2]=c[u>>2];c[(c[r>>2]|
0)+104>>2]=c[j>>2];c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]=0;c[s>>2]=0;while
(1){if((c[s>>2]|0)>=(c[l>>2]|0))break;if(!((c[(c[(c[r>>2]|0)+128>>2]|0)+52>>
;2]|0)!=0^1))break;if((c[(c[m>>2]|0)+(c[s>>2]<<3)>>2]|0)==1768842098)c[(c[(c[r>>
;2]|0)+128>>2]|0)+52>>2]=c[(c[m>>2]|0)+(c[s>>2]<<3)+4>>2];c[s>
x3e;2]=(c[s>>2]|0)+1}if(c[(c[o>>2]|0)+48>>2]|0)c[p>>2]=Za[c[(c[o>>2]|0)+48>
;>2]&31](c[j>>2]|0,c[r>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(!(c
[p>>2]|0)){c[q>>2]=Hc(c[r>>2]|0)|0;if((c[q>>2]|0)!=0&(c[q>>2]|0)!=38){c[p
>>2]=c[q>>2];break}else{c[c[n>>2]>>2]=c[r>>2];break}}}while(0);if(!(c[p>
x3e;2]|0)){b=c[p>>2]|0;i=v;return b|0}Ic(c[r>>2]|0,c[u>>2]|0);if(c[(c[o>>2]|0)+52>
x3e;2]|0)Va[c[(c[o>>2]|0)+52>>2]&63](c[r>>2]|0);Fb(c[u>>2]|0,c[t>>2]|0);c
[t>>2]=0;Fb(c[u>>2]|0,c[r>>2]|0);c[r>>2]=0;c[c[n>>2]>>2]=0;b=c[p>
;>2]|0;i=v;return b|0}function Hc(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;b=j+12|0;d=j+8|0;g=j+4|0;f=j;c[d>
x3e;2]=a;c[g>>2]=c[(c[d>>2]|0)+40>>2];if(!(c[g>>2]|0)){c[b>>2]=38;h=c[b>
x3e;2]|0;i=j;return h|0}c[f>>2]=(c[g>>2]|0)+(c[(c[d>>2]|0)+36>>2]<<2);while(1){
a=(c[f>>2]|0)+-4|0;c[f>>2]=a;if(a>>>0<(c[g>>2]|0)>>>0)break;if((
c[(c[c[f>>2]>>2]|0)+4>>2]|0)!=1970170211)continue;if(!((e[(c[c[f>>2]>>2]|0)+8
x3e;>1]|0|0)==3?(e[(c[c[f>>2]>>2]|0)+10>>1]|0|0)==10:0)){if(e[(c[c[f>>2]>>
;2]|0)+8>>1]|0|0)continue;if((e[(c[c[f>>2]>>2]|0)+10>>1]|0|0)!=4)continue}if((((c[f>
;>2]|0)-(c[g>>2]|0)|0)/4|0|0)<=15){h=11;break}}if((h|0)==11){c[(c[d>>2]|0)+92>>2]=c[c[f
x3e;>2]>>2];c[b>>2]=0;h=c[b>>2]|0;i=j;return h|0}c[f>>2]=(c[g>>2]|0)+(c[(
c[d>>2]|0)+36>>2]<<2);while(1){h=(c[f>>2]|0)+-4|0;c[f>>2]=h;if(h>>
x3e;0<(c[g>>2]|0)>>>0){h=17;break}if((c[(c[c[f>>2]>>2]|0)+4>>2]|0)!=
1970170211)continue;if((((c[f>>2]|0)-(c[g>>2]|0)|0)/4|0|0)<=15){h=16;break}}if((h|0)==16){c[(c[d>
x3e;2]|0)+92>>2]=c[c[f>>2]>>2];c[b>>2]=0;h=c[b>>2]|0;i=j;return h|0}else if((h
|0)==17){c[b>>2]=38;h=c[b>>2]|0;i=j;return h|0}return 0}function Ic(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;if(!(c[d>>2]|0)){i=h;return}c[g>
;>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[d>>2]|0)+36>>2]|0))break;c[f>>2]=c[(c[(c
[d>>2]|0)+40>>2]|0)+(c[g>>2]<<2)>>2];Jc(c[f>>2]|0);c[(c[(c[d>
x3e;2]|0)+40>>2]|0)+(c[g>>2]<<2)>>2]=0;c[g>>2]=(c[g>>2]|0)+1}Fb(c[e
x3e;>2]|0,c[(c[d>>2]|0)+40>>2]|0);c[(c[d>>2]|0)+40>>2]=0;c[(c[d>>2]|0)+36
>>2]=0;i=h;return}function Jc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;b=f+12|0;d=f+8|0;g=f+4|0;e=f;c[b>>
;2]=a;c[d>>2]=c[(c[b>>2]|0)+12>>2];c[g>>2]=c[c[b>>2]>>2];c[e>
x3e;2]=c[(c[g>>2]|0)+100>>2];if(!(c[(c[d>>2]|0)+8>>2]|0)){e=c[e>>2]|0;g=c[b>
;>2]|0;Fb(e,g);c[b>>2]=0;i=f;return}Va[c[(c[d>>2]|0)+8>>2]&63](c[b>>2]|0);e=c[
e>>2]|0;g=c[b>>2]|0;Fb(e,g);c[b>>2]=0;i=f;return}function Kc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;
g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;if(c[(c[d>>2]|0)+20>
x3e;2]|0){if(Wa[c[(c[d>>2]|0)+20>>2]&31](c[d>>2]|0,c[e>>2]|0,0,0)|0)c[f>>
2]=85}else if((c[e>>2]|0)>>>0>(c[(c[d>>2]|0)+4>>2]|0)>>>0)c[f
x3e;>2]=85;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[(c[d>>2]|0)+8>>2]=c[e>
x3e;2];a=c[f>>2]|0;i=g;return a|0}function Lc(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0
,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;w=i;i=i+64|0;j=w+52|0;k=w+48|0;l=w+44|0;m=w+40|0;y=w+36|0;x=w+32|0;n=w+28|0;o=w+24|
0;s=w+20|0;t=w+16|0;r=w+12|0;u=w+8|0;q=w+56|0;v=w+4|0;p=w;c[k>>2]=a;c[l>>2]=b;c[m>>2]=e;c[y>
x3e;2]=f;c[x>>2]=g;c[n>>2]=h;c[s>>2]=c[c[k>>2]>>2];c[y>>2]=c[y>
x3e;2];c[x>>2]=c[x>>2];c[u>>2]=Mc(c[l>>2]|0)|0;c[o>>2]=Nc(c[l>>2]|0,
c[m>>2]|0,t,r,q)|0;if((((c[o>>2]|0)==0?(Kc(c[l>>2]|0,(c[u>>2]|0)+(c[t>>2]|0)|0
)|0)==0:0)?(c[v>>2]=bc(c[s>>2]|0,c[r>>2]|0,o)|0,(c[o>>2]|0)==0):0)?(c[o>>2]=Rc
(c[l>>2]|0,c[v>>2]|0,c[r>>2]|0)|0,(c[o>>2]|0)==0):0)c[o>>2]=Tc(c[k>>
2]|0,c[v>>2]|0,c[r>>2]|0,(c[m>>2]|0)<0?c[m>>2]|0:0,d[q>>0]|0|0?10406:10410
,c[n>>2]|0)|0;if((c[o>>2]|0)==2?(c[p>>2]=Kc(c[l>>2]|0,c[u>>2]|0)|0,c[p>
x3e;2]|0):0){c[j>>2]=c[p>>2];y=c[j>>2]|0;i=w;return y|0}c[j>>2]=c[o>>2];y=c[j
x3e;>2]|0;i=w;return y|0}function Mc(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 Nc(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;v=i;i=i+48|0;t=v+36|0;k=v+32|0;l=v+28|0;m=v+24|0;n=v+20|0;o=v+16|0;u=v+12|0;q=v+40|0;r=v+8|0;s=v+4|0;p=v;c[k>>2]=d;c
[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[c[m>>2]>>2]=0;c[c[n>
x3e;2]>>2]=0;a[c[o>>2]>>0]=0;c[s>>2]=Oc(c[k>>2]|0,u)|0;if(c[u>>2]|0){
c[t>>2]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}if((c[s>>2]|0)!=1954115633){c[t>>2]=
2;u=c[t>>2]|0;i=v;return u|0}b[q>>1]=Pc(c[k>>2]|0,u)|0;if(c[u>>2]|0){c[t>>2]=c
[u>>2];u=c[t>>2]|0;i=v;return u|0}d=Qc(c[k>>2]|0,6)|0;c[u>>2]=d;if(d|0){c[t>>2
]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}c[r>>2]=-1;a[c[o>>2]>>0]=0;c[p>>
;2]=0;while(1){if((c[p>>2]|0)>=(e[q>>1]|0|0)){k=26;break}c[s>>2]=Oc(c[k>>2]|0,u)|0;
if(c[u>>2]|0){k=15;break}d=Qc(c[k>>2]|0,4)|0;c[u>>2]=d;if(d|0){k=15;break}d=Oc(c[k>>2]|0
,u)|0;c[c[m>>2]>>2]=d;if(c[u>>2]|0){k=15;break}d=Oc(c[k>>2]|0,u)|0;c[c[n>>2]
x3e;>2]=d;if(c[u>>2]|0){k=15;break}if((c[s>>2]|0)==1128875040){c[r>>2]=(c[r>>2]|0)+
1;d=c[m>>2]|0;c[d>>2]=(c[d>>2]|0)+22;d=c[n>>2]|0;c[d>>2]=(c[d>>2]|0)-
22;a[c[o>>2]>>0]=1;if((c[l>>2]|0)<0){k=18;break}}else if((c[s>>2]|0)==1415139377?(c
[r>>2]=(c[r>>2]|0)+1,d=c[m>>2]|0,c[d>>2]=(c[d>>2]|0)+24,d=c[n>>2]|0,
c[d>>2]=(c[d>>2]|0)-24,a[c[o>>2]>>0]=0,(c[l>>2]|0)<0):0){k=21;break}if((c
[l>>2]|0)>=0?(c[r>>2]|0)==(c[l>>2]|0):0){k=24;break}c[p>>2]=(c[p>>2]|0)+1
}if((k|0)==15){c[t>>2]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}else if((k|0)==18){c[t>>2]=0;u
=c[t>>2]|0;i=v;return u|0}else if((k|0)==21){c[t>>2]=0;u=c[t>>2]|0;i=v;return u|0}else if((k|0)==24
){c[t>>2]=0;u=c[t>>2]|0;i=v;return u|0}else if((k|0)==26){c[t>>2]=142;u=c[t>>2]|0;i=v;return
u|0}return 0}function Oc(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;k=m+20|0;j=m+4
|0;l=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=0;c[l>>2]=0;c[c[h>>2]>>2]=0;do if
(((c[(c[g>>2]|0)+8>>2]|0)+3|0)>>>0<(c[(c[g>>2]|0)+4>>2]|0)>>
;>0){e=c[g>>2]|0;if(c[(c[g>>2]|0)+20>>2]|0){if((Wa[c[e+20>>2]&31](c[g>>
;2]|0,c[(c[g>>2]|0)+8>>2]|0,k,4)|0)!=4)break;c[j>>2]=k}else c[j>>2]=(c[e>>2]|0
)+(c[(c[g>>2]|0)+8>>2]|0);if(c[j>>2]|0){c[j>>2]=(c[j>>2]|0)+4;c[l>>2
]=a[(c[j>>2]|0)+-4>>0]<<24|d[(c[j>>2]|0)+-4+1>>0]<<16|d[(c[j>
x3e;2]|0)+-4+2>>0]<<8|d[(c[j>>2]|0)+-4+3>>0]<<0}k=(c[g>>2]|0)+8|0;c[
k>>2]=(c[k>>2]|0)+4;c[f>>2]=c[l>>2];l=c[f>>2]|0;i=m;return l|0}while(0);c[c[h
x3e;>2]>>2]=85;c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}function Pc(e,f){e=e|0;f=f|0;var g=0,h=0,
j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;g=n+14|0;h=n+8|0;j=n+4|0;l=n+16|0;k=n;m=n+12|0;c[h>>2]=e;c[j>>2]=f;c[k>
;>2]=0;b[m>>1]=0;c[c[j>>2]>>2]=0;do if(((c[(c[h>>2]|0)+8>>2]|0)+1|0)>
;>>0<(c[(c[h>>2]|0)+4>>2]|0)>>>0){f=c[h>>2]|0;if(c[(c[h>>2
]|0)+20>>2]|0){if((Wa[c[f+20>>2]&31](c[h>>2]|0,c[(c[h>>2]|0)+8>>2]|0,l,2)|
0)!=2)break;c[k>>2]=l}else c[k>>2]=(c[f>>2]|0)+(c[(c[h>>2]|0)+8>>2]|0);if(c[k
x3e;>2]|0){c[k>>2]=(c[k>>2]|0)+2;b[m>>1]=a[(c[k>>2]|0)+-2>>0]<<
16>>16<<8|d[(c[k>>2]|0)+-2+1>>0]<<0}l=(c[h>>2]|0)+8|0;c[l>>
;2]=(c[l>>2]|0)+2;b[g>>1]=b[m>>1]|0;m=b[g>>1]|0;i=n;return m|0}while(0);c[c[j>>
;2]>>2]=85;b[g>>1]=0;m=b[g>>1]|0;i=n;return m|0}function Qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g
=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)<0){c[d>>2]=85;a=
c[d>>2]|0;i=g;return a|0}else{c[d>>2]=Kc(c[e>>2]|0,(c[(c[e>>2]|0)+8>>2]|0)+(c[
f>>2]|0)|0)|0;a=c[d>>2]|0;i=g;return a|0}return 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+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=Sc(c[h>>2]|0,c[(c[h>
;>2]|0)+8>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function Sc(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g>>2]=
a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=0;if((c[h>>2]|0)>>>0>
;=(c[(c[g>>2]|0)+4>>2]|0)>>>0){c[f>>2]=85;m=c[f>>2]|0;i=n;return m|0}d=c[
g>>2]|0;if(c[(c[g>>2]|0)+20>>2]|0)c[m>>2]=Wa[c[d+20>>2]&31](c[g>>
;2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;else{c[m>>2]=(c[d+4>>2]|0)-(c[h>
x3e;2]|0);if((c[m>>2]|0)>>>0>(c[k>>2]|0)>>>0)c[m>>2]=c[k>
x3e;2];Ss(c[j>>2]|0,(c[c[g>>2]>>2]|0)+(c[h>>2]|0)|0,c[m>>2]|0)|0}c[(c[g>
x3e;2]|0)+8>>2]=(c[h>>2]|0)+(c[m>>2]|0);if((c[m>>2]|0)>>>0<(c[k>
;>2]|0)>>>0)c[l>>2]=85;c[f>>2]=c[l>>2];m=c[f>>2]|0;i=n;return m|0}function
Tc(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;s=i;i=i+80|0;h=s+72|0;j
=s+68|0;k=s+64|0;t=s+60|0;l=s+56|0;m=s+52|0;n=s+48|0;o=s+16|0;p=s+8|0;r=s+4|0;q=s;c[j>>2]=a;c[k>>2]=b;c[t>
;>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[r>>2]=0;c[q>>2]=c[c[j>>2
]>>2];c[p>>2]=Vc(c[j>>2]|0,c[k>>2]|0,c[t>>2]|0,33,r)|0;if(c[p>>2]|0){
Fb(c[q>>2]|0,c[k>>2]|0);c[k>>2]=0;c[h>>2]=c[p>>2];t=c[h>>2]|0;i=s;return
t|0}c[o>>2]=2;c[o+16>>2]=c[r>>2];if(c[m>>2]|0){c[o>>2]=c[o>>2]|8;c[
o+20>>2]=Wc(c[j>>2]|0,c[m>>2]|0)|0}c[p>>2]=Fc(c[j>>2]|0,o,c[l>>2]|0,
c[n>>2]|0)|0;if(!(c[p>>2]|0)){t=(c[c[n>>2]>>2]|0)+8|0;c[t>>2]=c[t>>2
]&-1025}else{wc(c[r>>2]|0);Fb(c[q>>2]|0,c[r>>2]|0);c[r>>2]=0}c[h>>2]=c[p
x3e;>2];t=c[h>>2]|0;i=s;return t|0}function Uc(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]|0)+28>>2];Fb(c[e>>2]|0,c[c[d>>2]>>2]|0);c[c[d
>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;c[(c[d>>2
]|0)+24>>2]=0;i=b;return}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,j=0,k=0,l=0,m=0,n=0,o=0,p=0,
q=0;q=i;i=i+48|0;g=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;l=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;p=q;c[h>>2]=a;c[j>>2]=
b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;if(!(c[h>>2]|0)){c[g>>2]=33;p=c[g>>2
]|0;i=q;return p|0}if(!(c[j>>2]|0)){c[g>>2]=6;p=c[g>>2]|0;i=q;return p|0}c[c[m>>2]>
x3e;2]=0;c[o>>2]=c[c[h>>2]>>2];c[p>>2]=bc(c[o>>2]|0,40,n)|0;if(!(c[n>>
;2]|0)){uc(c[p>>2]|0,c[j>>2]|0,c[k>>2]|0);c[(c[p>>2]|0)+24>>2]=c[l>>
2];c[c[m>>2]>>2]=c[p>>2]}c[g>>2]=c[n>>2];p=c[g>>2]|0;i=q;return p|0}
function Wc(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;l=i;i=i+32|0;e=l+20|0;d=l+16|0;f=l+12|0;j=l+8|0;g=l+4|0;h=l;c[d
>>2]=a;c[f>>2]=b;c[j>>2]=0;if(!((c[d>>2]|0)!=0&(c[f>>2]|0)!=0)){c[e>
x3e;2]=c[j>>2];k=c[e>>2]|0;i=l;return k|0}c[g>>2]=(c[d>>2]|0)+28;c[h>>2]=(c[g
x3e;>2]|0)+(c[(c[d>>2]|0)+24>>2]<<2);while(1){if((c[g>>2]|0)>>>0>
;=(c[h>>2]|0)>>>0)break;b=(Kr(c[(c[c[c[g>>2]>>2]>>2]|0)+8>>2]|0
,c[f>>2]|0)|0)==0;d=c[g>>2]|0;if(b){k=6;break}c[g>>2]=d+4}if((k|0)==6)c[j>>2]=c[d>
x3e;2];c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|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;n=i;i=i+32|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g>>2]=a;c[h>
x3e;2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[l>>2]=c[l>>2];c[m>>2]=Yc(c[
g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;if((c[m>>2]&255|0)==2)c[m>
x3e;2]=Zc(c[g>>2]|0,c[h>>2]|0,0,c[j>>2]|0,c[k>>2]|0)|0;if((c[m>>2]&255|0)!=
2?(c[m>>2]&255|0)!=85:0){b=c[m>>2]|0;i=n;return b|0}if(!(c[c[l>>2]>>2]&4)){b=c
[m>>2]|0;i=n;return b|0}c[m>>2]=dd(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>
;2]|0,c[l>>2]|0)|0;b=c[m>>2]|0;i=n;return b|0}function Yc(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;q=i;i=i+160|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;l=q+12|0;o=q+32|0;n=q+8|0;m=q+4|0;p=q;c[h>>
;2]=a;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;if(!(c[j>>2]|0)){c[g>>2]=85;b=c[g>>
;2]|0;i=q;return b|0}c[n>>2]=Kc(c[j>>2]|0,0)|0;if((c[n>>2]|0)==0?(c[n>>2]=Rc(c[j>
x3e;2]|0,o,128)|0,(c[n>>2]|0)==0):0){if(((((((d[o>>0]|0|0)==0?(d[o+74>>0]|0|0)==0:0)?(d[o+82>
x3e;0]|0|0)==0:0)?d[o+1>>0]|0|0:0)?(d[o+1>>0]|0|0)<=33:0)?(d[o+63>>0]|0|0)==0:0)?(d[o+(2+(d[o
+1>>0]|0))>>0]|0|0)==0:0){c[m>>2]=(d[o+83>>0]|0)<<24|(d[o+84>>0]|0)
x3c;<16|(d[o+85>>0]|0)<<8|(d[o+86>>0]|0);c[p>>2]=128+((c[m>>2]|0)+127&
;-128);c[g>>2]=Zc(c[h>>2]|0,c[j>>2]|0,c[p>>2]|0,c[k>>2]|0,c[l>>2]|0)|
0;b=c[g>>2]|0;i=q;return b|0}c[g>>2]=2;b=c[g>>2]|0;i=q;return b|0}c[g>>2]=c[n>>
;2];b=c[g>>2]|0;i=q;return b|0}function Zc(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;t=i;i=i+64|0;g=t+48|0;h=t+44|0;j=t+40|0;u=t+36|0;k=t+32|0;l=t+28|0;r=t+24|0;o=t+20|0;q=t+16|0;s=t+12|0
;n=t+8|0;m=t+4|0;p=t;c[h>>2]=a;c[j>>2]=b;c[u>>2]=d;c[k>>2]=e;c[l>>2]=f;c[r>
;>2]=c[c[h>>2]>>2];c[o>>2]=_c(c[h>>2]|0,c[j>>2]|0,c[u>>2]|0,q,s
)|0;if(c[o>>2]|0){c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return u|0}c[o>>2]=$c(c[h>
;>2]|0,c[j>>2]|0,c[q>>2]|0,c[s>>2]|0,1347375956,n,m)|0;f=c[h>>2]|0;e=c[j>>
;2]|0;if(!(c[o>>2]|0)){c[o>>2]=bd(f,e,c[n>>2]|0,c[m>>2]|0,c[k>>2]|0,c[l>
x3e;2]|0)|0;Fb(c[r>>2]|0,c[n>>2]|0);c[n>>2]=0;if(!(c[o>>2]|0))c[c[c[l>>2]>
;>2]>>2]=1;c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return u|0}c[o>>2]=$c(f,e,c[q
x3e;>2]|0,c[s>>2]|0,1936092788,n,m)|0;if((c[o>>2]|0)==0?(c[p>>2]=(c[k>>2]|0)%(c[m
x3e;>2]|0)|0,c[o>>2]=cd(c[h>>2]|0,c[j>>2]|0,c[n>>2]|0,c[m>>2]|0,c[p>
x3e;2]|0,c[l>>2]|0)|0,Fb(c[r>>2]|0,c[n>>2]|0),c[n>>2]=0,(c[o>>2]|0)==0):0)c[c[
c[l>>2]>>2]>>2]=c[m>>2];c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return
u|0}function _c(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;x=
i;i=i+96|0;j=x+48|0;y=x+44|0;k=x+40|0;l=x+36|0;m=x+32|0;n=x+28|0;q=x+24|0;r=x+72|0;s=x+56|0;u=x+20|0;v=x+16|0;p=x+12|0;o=x+8|0;t
=x+4|0;w=x;c[y>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[y>>2]=
c[y>>2];c[q>>2]=Kc(c[k>>2]|0,c[l>>2]|0)|0;if(c[q>>2]|0){c[j>>2]=c[q
x3e;>2];y=c[j>>2]|0;i=x;return y|0}c[q>>2]=Rc(c[k>>2]|0,r,16)|0;if(c[q>>2]|0){c[j
x3e;>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}c[c[n>>2]>>2]=(c[l>>2]|0)+((d[
r>>0]|0)<<24|(d[r+1>>0]|0)<<16|(d[r+2>>0]|0)<<8|(d[r+3>>0]|
0));c[u>>2]=(c[l>>2]|0)+((d[r+4>>0]|0)<<24|(d[r+5>>0]|0)<<16|(d[r+6
x3e;>0]|0)<<8|(d[r+7>>0]|0));c[v>>2]=(d[r+8>>0]|0)<<24|(d[r+9>>
0]|0)<<16|(d[r+10>>0]|0)<<8|(d[r+11>>0]|0);if(((c[c[n>>2]>>2]|0)+(c[
v>>2]|0)|0)==(c[u>>2]|0)?(c[u>>2]|0)!=(c[l>>2]|0):0){c[q>>2]=Kc(c[k>>
;2]|0,c[u>>2]|0)|0;if(c[q>>2]|0){c[j>>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}a[
s+15>>0]=(d[r+15>>0]|0)+1;c[q>>2]=Rc(c[k>>2]|0,s,16)|0;if(c[q>>2]|0){c[j>
x3e;2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}c[p>>2]=1;c[o>>2]=1;c[t>>2]=0;while(
1){if((c[t>>2]|0)>=16)break;if(d[s+(c[t>>2]|0)>>0]|0|0)c[p>>2]=0;if((d[s+(c[t>
x3e;2]|0)>>0]|0|0)!=(d[r+(c[t>>2]|0)>>0]|0|0))c[o>>2]=0;c[t>>2]=(c[t>>
;2]|0)+1}if(!((c[p>>2]|0)!=0|(c[o>>2]|0)!=0)){c[j>>2]=2;y=c[j>>2]|0;i=x;return y|0}c[q
x3e;>2]=Qc(c[k>>2]|0,8)|0;c[w>>2]=(Pc(c[k>>2]|0,q)|0)&65535;if(c[q>>2]|0){c[j
x3e;>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}if((c[w>>2]|0)==-1){c[j>>2]=2;y=c[j>
;>2]|0;i=x;return y|0}c[q>>2]=Kc(c[k>>2]|0,(c[u>>2]|0)+(c[w>>2]|0)|0)|0;if(c[q>
;>2]|0){c[j>>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}else{c[c[m>>2]>>2]=(c[
u>>2]|0)+(c[w>>2]|0);c[j>>2]=0;y=c[j>>2]|0;i=x;return y|0}}c[j>>2]=2;y=c[j>
;>2]|0;i=x;return y|0}function $c(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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=i;i=i+80|0;o=C+72|0;D=C+68|0;p=C+64|0;q=C+60|0;r=C+56|0;k=C+52|0;s=C+48|0;
t=C+44|0;u=C+40|0;m=C+36|0;v=C+32|0;l=C+28|0;A=C+24|0;n=C+20|0;z=C+16|0;w=C+12|0;B=C+8|0;x=C+4|0;y=C;c[D>>2]=a;c[p>
;>2]=d;c[q>>2]=e;c[r>>2]=f;c[k>>2]=g;c[s>>2]=h;c[t>>2]=j;c[w>>2
]=c[c[D>>2]>>2];c[u>>2]=Kc(c[p>>2]|0,c[q>>2]|0)|0;if(c[u>>2]|0){c[o
x3e;>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[l>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if
(c[u>>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[l>>2]=(c[l>>
;2]|0)+1;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[l>>2]|0)){k=30;break}c[n>>2]=Oc(c[p
x3e;>2]|0,u)|0;if(c[u>>2]|0){k=10;break}c[A>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if(c[u>
x3e;2]|0){k=10;break}c[z>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if(c[u>>2]|0){k=10;break}if((c[n>
x3e;2]|0)==(c[k>>2]|0)){k=12;break}c[m>>2]=(c[m>>2]|0)+1}if((k|0)==10){c[o>>2]=c[u>
x3e;2];D=c[o>>2]|0;i=C;return D|0}else if((k|0)==12){c[c[t>>2]>>2]=(c[A>>2]|0)+1;c[z>
;>2]=(c[z>>2]|0)+(c[q>>2]|0);c[u>>2]=Kc(c[p>>2]|0,c[z>>2]|0)|0;if(c[u>
;>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[y>>2]=hc(c[w>>2]|0,8
,0,c[c[t>>2]>>2]|0,0,u)|0;if(c[u>>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;
i=C;return D|0}c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[c[t>>2]>>2]|0)){k=23;break}D=Pc
(c[p>>2]|0,u)|0;b[(c[y>>2]|0)+(c[v>>2]<<3)>>1]=D;if(c[u>>2]|0)break;
D=Qc(c[p>>2]|0,2)|0;c[u>>2]=D;if(D|0)break;c[B>>2]=Oc(c[p>>2]|0,u)|0;if(c[u>>2
]|0)break;D=Qc(c[p>>2]|0,4)|0;c[u>>2]=D;if(D|0)break;c[(c[y>>2]|0)+(c[v>>2]<<3
)+4>>2]=c[B>>2]&16777215;c[v>>2]=(c[v>>2]|0)+1}if((k|0)==23?(Bs(c[y>>2]|0
,c[c[t>>2]>>2]|0,8,102),c[x>>2]=hc(c[w>>2]|0,4,0,c[c[t>>2]>>2]|0,0,u
)|0,(c[u>>2]|0)==0):0){c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[c[t>>2]>>2]|
0))break;c[(c[x>>2]|0)+(c[v>>2]<<2)>>2]=(c[r>>2]|0)+(c[(c[y>>2]|0)+(
c[v>>2]<<3)+4>>2]|0);c[v>>2]=(c[v>>2]|0)+1}c[c[s>>2]>>2]=c
[x>>2];c[u>>2]=0}Fb(c[w>>2]|0,c[y>>2]|0);c[y>>2]=0;c[o>>2]=c[u>
x3e;2];D=c[o>>2]|0;i=C;return D|0}else if((k|0)==30){c[o>>2]=1;D=c[o>>2]|0;i=C;return D|0}return 0
}function ad(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=b;do if
((e[c[f>>2]>>1]|0|0)>=(e[c[g>>2]>>1]|0|0))if((e[c[f>>2]>>1]|0|0
)>(e[c[g>>2]>>1]|0|0)){c[d>>2]=1;break}else{c[d>>2]=0;break}else c[d>>2]=-
1;while(0);i=h;return c[d>>2]|0}function bd(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,C=0,D=0;D=i;i=i+80|0;j=D+72|0;k=D+68|0;l=D+64|0;m=D+60|0;n=D+56|0;o=D+52|
0;p=D+48|0;q=D+44|0;u=D+40|0;v=D+36|0;s=D+32|0;B=D+28|0;r=D+24|0;t=D+20|0;w=D+16|0;y=D+12|0;x=D+8|0;z=D+4|0;A=D;c[k>>2
]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;c[q>>2]=1;c[u
x3e;>2]=c[c[k>>2]>>2];if((c[o>>2]|0)==-1)c[o>>2]=0;if(c[o>>2]|0){c[j>
;>2]=c[q>>2];C=c[j>>2]|0;i=D;return C|0}c[w>>2]=0;c[s>>2]=0;while(1){if((c[s>
x3e;2]|0)>=(c[n>>2]|0)){C=10;break}c[q>>2]=Kc(c[l>>2]|0,c[(c[m>>2]|0)+(c[s>>
;2]<<2)>>2]|0)|0;if(c[q>>2]|0)break;c[A>>2]=Oc(c[l>>2]|0,q)|0;if(c[q>>
;2]|0)break;c[w>>2]=(c[w>>2]|0)+((c[A>>2]|0)+6);c[s>>2]=(c[s>>2]|0)+1}a:do if((
C|0)==10?(c[v>>2]=bc(c[u>>2]|0,(c[w>>2]|0)+2|0,q)|0,(c[q>>2]|0)==0):0){a[c[v>>
2]>>0]=-128;a[(c[v>>2]|0)+1>>0]=1;a[(c[v>>2]|0)+2>>0]=0;a[(c[v>>2]|0
)+3>>0]=0;a[(c[v>>2]|0)+4>>0]=0;a[(c[v>>2]|0)+5>>0]=0;c[y>>2]=6;c[x
x3e;>2]=2;c[t>>2]=0;c[B>>2]=1;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[n>>
;2]|0)){C=31;break}c[q>>2]=Kc(c[l>>2]|0,c[(c[m>>2]|0)+(c[s>>2]<<2)>>
2]|0)|0;if(c[q>>2]|0)break;c[z>>2]=Oc(c[l>>2]|0,q)|0;if(c[q>>2]|0)break a;c[r>>
;2]=(Pc(c[l>>2]|0,q)|0)&65535;if(c[q>>2]|0)break a;if(c[r>>2]>>8|0){if((c[z>
x3e;2]|0)>2)c[z>>2]=(c[z>>2]|0)-2;else c[z>>2]=0;if((c[r>>2]>>8|0)==(c[B
x3e;>2]|0))c[t>>2]=(c[t>>2]|0)+(c[z>>2]|0);else{if(((c[x>>2]|0)+3|0)>((c[w>
;>2]|0)+2|0))break;a[(c[v>>2]|0)+(c[x>>2]|0)>>0]=c[t>>2];a[(c[v>>2]|0)+((
c[x>>2]|0)+1)>>0]=c[t>>2]>>8;a[(c[v>>2]|0)+((c[x>>2]|0)+2)>>
;0]=c[t>>2]>>16;a[(c[v>>2]|0)+((c[x>>2]|0)+3)>>0]=c[t>>2]>>
;24;if((c[r>>2]>>8|0)==5){C=31;break}if(((c[y>>2]|0)+6|0)>((c[w>>2]|0)+2|0))break;d
=c[y>>2]|0;c[y>>2]=d+1;a[(c[v>>2]|0)+d>>0]=-128;c[B>>2]=c[r>>2]>
;>8;c[t>>2]=c[z>>2];d=c[B>>2]&255;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>
;>2]|0)+A>>0]=d;c[x>>2]=c[y>>2];A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>
;2]|0)+A>>0]=0;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>2]|0)+A>>0]=0;A=c[y>>
2]|0;c[y>>2]=A+1;a[(c[v>>2]|0)+A>>0]=0;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>
;2]|0)+A>>0]=0}c[q>>2]=1;if((c[y>>2]|0)>(c[w>>2]|0))break;if(((c[y>>2]|0)+(
c[z>>2]|0)|0)>(c[w>>2]|0))break;c[q>>2]=Rc(c[l>>2]|0,(c[v>>2]|0)+(c[y>
;>2]|0)|0,c[z>>2]|0)|0;if(c[q>>2]|0)break;c[y>>2]=(c[y>>2]|0)+(c[z>>2]|0)}
c[s>>2]=(c[s>>2]|0)+1}if(((C|0)==31?((c[y>>2]|0)+2|0)<=((c[w>>2]|0)+2|0):0)?(C=c[y
x3e;>2]|0,c[y>>2]=C+1,a[(c[v>>2]|0)+C>>0]=-128,C=c[y>>2]|0,c[y>>2]=C+1,a[(
c[v>>2]|0)+C>>0]=3,((c[x>>2]|0)+3|0)<=((c[w>>2]|0)+2|0)):0){a[(c[v>>2]|0)+(
c[x>>2]|0)>>0]=c[t>>2];a[(c[v>>2]|0)+((c[x>>2]|0)+1)>>0]=c[t>
x3e;2]>>8;a[(c[v>>2]|0)+((c[x>>2]|0)+2)>>0]=c[t>>2]>>16;a[(c[v>
x3e;2]|0)+((c[x>>2]|0)+3)>>0]=c[t>>2]>>24;c[j>>2]=Tc(c[k>>2]|0,c[v
x3e;>2]|0,c[y>>2]|0,c[o>>2]|0,10410,c[p>>2]|0)|0;C=c[j>>2]|0;i=D;return C|0}Fb(c[u
x3e;>2]|0,c[v>>2]|0);c[v>>2]=0}while(0);c[j>>2]=c[q>>2];C=c[j>>2]|0;i=D;return
C|0}function cd(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;w=i;i=i+64|0;o=w+52|0;p=w+48|0;h=w+44|0;j=w+40|0;k=w+36|0;l=w+32|0;q=w+28|0;n=w+24|0;v=w+20|0;r=w+16|0;m=w+12|0;u=w+8|0;t=w+4|
0;s=w;c[p>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[q>>2]=g;c[
n>>2]=c[c[p>>2]>>2];c[s>>2]=0;if((c[l>>2]|0)==-1)c[l>>2]=0;if((c[l
x3e;>2]|0)>=(c[k>>2]|0)){c[o>>2]=1;v=c[o>>2]|0;i=w;return v|0}c[m>>2]=c[(c[j
x3e;>2]|0)+(c[l>>2]<<2)>>2];c[r>>2]=Kc(c[h>>2]|0,c[m>>2]|0)|0;if
((c[r>>2]|0)==0?(c[u>>2]=Oc(c[h>>2]|0,r)|0,(c[r>>2]|0)==0):0){if((c[u>>2]|0)==-
1){c[o>>2]=1;v=c[o>>2]|0;i=w;return v|0}c[r>>2]=Lc(c[p>>2]|0,c[h>>2]|0,c[l>
;>2]|0,0,0,c[q>>2]|0)|0;if(c[r>>2]|0?(Kc(c[h>>2]|0,(c[m>>2]|0)+4|0)|0)==0:0){c[v>
;>2]=bc(c[n>>2]|0,c[u>>2]|0,r)|0;if(c[r>>2]|0){c[o>>2]=c[r>>2];v=c[o>
;>2]|0;i=w;return v|0}c[r>>2]=Rc(c[h>>2]|0,c[v>>2]|0,c[u>>2]|0)|0;if(!(c[r>>
;2]|0)){if((c[u>>2]|0)>4)h=($r(c[v>>2]|0,10416,4)|0)!=0^1;else h=0;c[t>>2]=h&1;c[r>
x3e;2]=Tc(c[p>>2]|0,c[v>>2]|0,c[u>>2]|0,c[s>>2]|0,c[t>>2]|0?11217:10489,c[q>
;>2]|0)|0}}}c[o>>2]=c[r>>2];v=c[o>>2]|0;i=w;return v|0}function dd(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;y=i;i=i+192|0;j=y+176|0;z=y+172|0;k=y+168
|0;l=y+164|0;m=y+160|0;t=y+156|0;o=y+152|0;r=y+148|0;q=y+112|0;u=y+76|0;p=y+40|0;s=y+181|0;w=y+180|0;n=y+8|0;v=y;c[j>>
2]=b;c[z>>2]=e;c[k>>2]=f;c[l>>2]=g;c[m>>2]=h;c[t>>2]=c[c[j>>2]>
x3e;2];c[o>>2]=2;a[w>>0]=0;c[v>>2]=0;ed(c[j>>2]|0,c[z>>2]|0,c[(c[m>>
2]|0)+12>>2]|0,q,u,p);c[r>>2]=0;while(1){if((c[r>>2]|0)>=9)break;a[s>>0]=rd(c[r>
;>2]|0)|0;if(!(d[s>>0]|0?(d[w>>0]|0)!=0:0))x=5;if((x|0)==5?(x=0,(c[p+(c[r>>2]<<2)
x3e;>2]|0)==0):0){c[n>>2]=4;if(c[q+(c[r>>2]<<2)>>2]|0)g=c[q+(c[r>>2]<
;<2)>>2]|0;else g=c[(c[m>>2]|0)+12>>2]|0;c[n+12>>2]=g;c[o>>2]=tc(c[j>
;>2]|0,n,v)|0;if((d[s>>0]|0)!=0&(c[o>>2]|0)==81)a[w>>0]=1;if(!(c[o>>2]|0)){c[o
>>2]=Zc(c[j>>2]|0,c[v>>2]|0,c[u+(c[r>>2]<<2)>>2]|0,c[k>>2]|
0,c[l>>2]|0)|0;vc(c[v>>2]|0,0);if(!(c[o>>2]|0))break;if(a[s>>0]|0)a[w>>0]=1}}c
[r>>2]=(c[r>>2]|0)+1}c[r>>2]=0;while(1){if((c[r>>2]|0)>=9)break;if(c[q+(c[r>
x3e;2]<<2)>>2]|0){Fb(c[t>>2]|0,c[q+(c[r>>2]<<2)>>2]|0);c[q+(c[r>
;>2]<<2)>>2]=0}c[r>>2]=(c[r>>2]|0)+1}if(!(c[o>>2]|0)){z=c[o>>2]|
0;i=y;return z|0}c[o>>2]=2;z=c[o>>2]|0;i=y;return z|0}function ed(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;p=i;i=i+32|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;m=p+8|0;n=p+4|0;o=p;c[h>>2
]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=0;while
(1){if((c[o>>2]|0)>=9)break;c[(c[l>>2]|0)+(c[o>>2]<<2)>>2]=0;if(c[j>
x3e;2]|0){b=Kc(c[j>>2]|0,0)|0;c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]=b}else c[(c[n>
;>2]|0)+(c[o>>2]<<2)>>2]=0;if(!(c[(c[n>>2]|0)+(c[o>>2]<<2)>
;>2]|0)){b=Za[c[96+(c[o>>2]<<3)>>2]&31](c[h>>2]|0,c[j>>2]|0,c[k>
;>2]|0,(c[l>>2]|0)+(c[o>>2]<<2)|0,(c[m>>2]|0)+(c[o>>2]<<2)|0)|0
;c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]=b}c[o>>2]=(c[o>>2]|0)+1}i=p;return}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,m=0,n=0,o=0;n=i;i=i+32|0;g=n+24|0;h=n+20|0;j=n+16|0;k=n+12|
0;o=n+8|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[o>>2]=e;c[l>>2]=f;c[m>
;>2]=333319;c[c[o>>2]>>2]=0;if(!(c[j>>2]|0)){c[g>>2]=81;o=c[g>>2]|0;i=n;return
o|0}else{c[g>>2]=gd(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[m>>2]|0,c[l>>2]|
0)|0;o=c[g>>2]|0;i=n;return o|0}return 0}function gd(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,v=0,w=0,x=0;v=i;i=i+64|0;r=v+52|0;x=v+48|0;m=v+44|0;w=v+40|0;j=v+36|0;s=v+32|0;k=v+28|0;u=v+24|0;l=v
+20|0;q=v+56|0;p=v+16|0;n=v+12|0;t=v+8|0;o=v+4|0;c[x>>2]=a;c[m>>2]=d;c[w>>2]=f;c[j>>2]=g
;c[s>>2]=h;c[l>>2]=0;c[o>>2]=0;c[v>>2]=2;c[x>>2]=c[x>>2];c[w>
x3e;2]=c[w>>2];c[l>>2]=c[l>>2];c[o>>2]=c[o>>2];c[k>>2]=Oc(c[m>
x3e;2]|0,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}if((c[k>>
;2]|0)!=(c[j>>2]|0)){c[r>>2]=2;x=c[r>>2]|0;i=v;return x|0}c[l>>2]=Oc(c[m>>2]|0
,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}c[u>>2]=Qc(c[m
x3e;>2]|0,16)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}b[q>
x3e;1]=Pc(c[m>>2]|0,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return
x|0}if(!(e[q>>1]|0)){c[r>>2]=2;x=c[r>>2]|0;i=v;return x|0}c[p>>2]=0;while(1){if((c[p>
;>2]|0)>=(e[q>>1]|0|0)){j=24;break}c[n>>2]=Oc(c[m>>2]|0,u)|0;if(c[u>>2]|0){j=16
;break}j=c[m>>2]|0;if((c[n>>2]|0)==2){c[t>>2]=Oc(j,u)|0;if((c[u>>2]|0)==0?(c[o>>
;2]=Oc(c[m>>2]|0,u)|0,(c[u>>2]|0)==0):0){j=20;break}}else{c[u>>2]=Qc(j,8)|0;if(c[u>>2]|0
){j=22;break}}c[p>>2]=(c[p>>2]|0)+1}if((j|0)==16){c[r>>2]=c[u>>2];x=c[r>>2]|0;
i=v;return x|0}else if((j|0)==20){c[c[s>>2]>>2]=c[t>>2];c[r>>2]=0;x=c[r>>2]|0;
i=v;return x|0}else if((j|0)==22){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}else if((j|0)==24){c[
r>>2]=2;x=c[r>>2]|0;i=v;return x|0}return 0}function hd(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;n=i;i=i+32|0;g=n+24|0;h=n+20|0;j=n+16|0;k=n+12|0;o=n+8|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>
;2]=b;c[k>>2]=d;c[o>>2]=e;c[l>>2]=f;c[m>>2]=333312;c[c[o>>2]>>2]=0;if
(!(c[j>>2]|0)){c[g>>2]=81;o=c[g>>2]|0;i=n;return o|0}else{c[g>>2]=gd(c[h>>2]|0
,c[j>>2]|0,c[k>>2]|0,c[m>>2]|0,c[l>>2]|0)|0;o=c[g>>2]|0;i=n;return o|0}return
0}function id(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;o=i;i=i+48|0;g=o+32|0;h=o+28|
0;q=o+24|0;p=o+20|0;j=o+16|0;k=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;c[p>>2]=d;c[j>
x3e;2]=e;c[k>>2]=f;c[q>>2]=c[q>>2];c[m>>2]=c[c[h>>2]>>2];c[n>
x3e;2]=jd(c[m>>2]|0,c[p>>2]|0,10421)|0;if(!(c[n>>2]|0)){c[g>>2]=64;q=c[g>>2]|0
;i=o;return q|0}c[l>>2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;if(c[l>>2]|0){Fb(c
[m>>2]|0,c[n>>2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c[n>>2];c[g>
x3e;2]=c[l>>2];q=c[g>>2]|0;i=o;return q|0}function jd(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;f=m+32|0;p=m+28|0;g=m+24|0;h=m+20|0;j=m+16|0;l=m+12|0;k=m+8|0;o=m+4|0;n=m;c[p>>2]=b;c[g>
;>2]=d;c[h>>2]=e;c[j>>2]=0;c[n>>2]=0;c[n>>2]=c[n>>2];d=cs(c[g>>
2]|0)|0;c[o>>2]=d+(cs(c[h>>2]|0)|0);c[j>>2]=bc(c[p>>2]|0,(c[o>>2]|0)+1|0,n)|0;
if(c[n>>2]|0){c[f>>2]=0;p=c[f>>2]|0;i=m;return p|0}c[l>>2]=xs(c[g>>2]|0,47)|0;
if(c[l>>2]|0){as(c[j>>2]|0,c[g>>2]|0,(c[l>>2]|0)-(c[g>>2]|0)+1|0)|0;a[(c[j>
;>2]|0)+((c[l>>2]|0)-(c[g>>2]|0)+1)>>0]=0;c[k>>2]=(c[l>>2]|0)+1}else{c[k
x3e;>2]=c[g>>2];a[c[j>>2]>>0]=0}zs(c[j>>2]|0,c[h>>2]|0)|0;zs(c[j>>
;2]|0,c[k>>2]|0)|0;c[f>>2]=c[j>>2];p=c[f>>2]|0;i=m;return p|0}function kd(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;m=i;i=i+64|0;e=m+60|0;f=m+56|0;g=m+52|0;h=m+48|0;n=m+16|0;l=m+8|0;k=m+4|0;j=m
;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=0;c[n>>2]=4;c[n+12>>2]=c[g>
;>2];c[j>>2]=tc(c[f>>2]|0,n,l)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];n=c[e>
;>2]|0;i=m;return n|0}else{c[j>>2]=fd(c[f>>2]|0,c[l>>2]|0,c[g>>2]|0,k,c[h>>
;2]|0)|0;vc(c[l>>2]|0,0);c[e>>2]=c[j>>2];n=c[e>>2]|0;i=m;return n|0}return 0}function ld
(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;q=i;i=i+48|0;m=q+36|0;r=q+32|0;s=q+28|
0;h=q+24|0;n=q+20|0;o=q+16|0;k=q+12|0;p=q+8|0;l=q+4|0;j=q;c[r>>2]=b;c[s>>2]=d;c[h>>2]=e;c[n>
x3e;2]=f;c[o>>2]=g;c[j>>2]=cs(c[h>>2]|0)|0;c[s>>2]=c[s>>2];c[l>>2]=c
[c[r>>2]>>2];if(((c[j>>2]|0)+18|0)>2147483647){c[m>>2]=10;s=c[m>>2]|0;i=q
;return s|0}c[p>>2]=bc(c[l>>2]|0,(c[j>>2]|0)+18|0,k)|0;if(c[k>>2]|0){c[m>>2]=c
[k>>2];s=c[m>>2]|0;i=q;return s|0}else{Ss(c[p>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;h=(
c[p>>2]|0)+(c[j>>2]|0)|0;j=10424;e=h+18|0;do{a[h>>0]=a[j>>0]|0;h=h+1|0;j=j+1|0}while((h|
0)<(e|0));c[c[n>>2]>>2]=c[p>>2];c[c[o>>2]>>2]=0;c[m>>2]=0;s=c[m
>>2]|0;i=q;return s|0}return 0}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,o=0,p=
0,q=0,r=0,s=0;q=i;i=i+48|0;h=q+36|0;r=q+32|0;s=q+28|0;j=q+24|0;k=q+20|0;l=q+16|0;n=q+12|0;p=q+8|0;o=q+4|0;m=q;c[r>>2]=
b;c[s>>2]=d;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[m>>2]=cs(c[j>>2]|0)|0;c[
s>>2]=c[s>>2];c[o>>2]=c[c[r>>2]>>2];if(((c[m>>2]|0)+6|0)>2147483647
){c[h>>2]=10;s=c[h>>2]|0;i=q;return s|0}c[p>>2]=bc(c[o>>2]|0,(c[m>>2]|0)+6|0,n
)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];s=c[h>>2]|0;i=q;return s|0}else{Ss(c[p>>2]|0
,c[j>>2]|0,c[m>>2]|0)|0;s=(c[p>>2]|0)+(c[m>>2]|0)|0;a[s>>0]=a[10442]|0;a[s+1
x3e;>0]=a[10443]|0;a[s+2>>0]=a[10444]|0;a[s+3>>0]=a[10445]|0;a[s+4>>0]=a[10446]|0;a[s+5>
x3e;0]=a[10447]|0;c[c[k>>2]>>2]=c[p>>2];c[c[l>>2]>>2]=0;c[h>>2]=0;s=
c[h>>2]|0;i=q;return s|0}return 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,m=0,n=0
,o=0,p=0;l=i;i=i+32|0;g=l+28|0;o=l+24|0;p=l+20|0;m=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;n=l;c[o>>2]=a;c[p>>2]=b;c
[m>>2]=d;c[h>>2]=e;c[j>>2]=f;c[p>>2]=c[p>>2];c[n>>2]=c[c[o>>
;2]>>2];c[k>>2]=jd(c[n>>2]|0,c[m>>2]|0,10448)|0;if(c[k>>2]|0){c[c[h>>
;2]>>2]=c[k>>2];c[c[j>>2]>>2]=0;c[g>>2]=0;p=c[g>>2]|0;i=l;return p|0
}else{c[g>>2]=64;p=c[g>>2]|0;i=l;return p|0}return 0}function od(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+32|0;g=l+28|0;o=l+24|0;p=l+20|0;m=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;n=l;c[o>>
;2]=a;c[p>>2]=b;c[m>>2]=d;c[h>>2]=e;c[j>>2]=f;c[p>>2]=c[p>>2];c[n>
;>2]=c[c[o>>2]>>2];c[k>>2]=jd(c[n>>2]|0,c[m>>2]|0,10462)|0;if(c[k>
x3e;2]|0){c[c[h>>2]>>2]=c[k>>2];c[c[j>>2]>>2]=0;c[g>>2]=0;p=c[g>
;>2]|0;i=l;return p|0}else{c[g>>2]=64;p=c[g>>2]|0;i=l;return p|0}return 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;o=i;i=i+48|0;g=o+32|0;h=o+28|0;q=o+24|0;p=o+20|0;j=o+16|0;k=
o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;c[p>>2]=d;c[j>>2]=e;c[k>>2]=f;c
[q>>2]=c[q>>2];c[m>>2]=c[c[h>>2]>>2];c[n>>2]=jd(c[m>>2]|0,
c[p>>2]|0,10473)|0;if(!(c[n>>2]|0)){c[g>>2]=64;q=c[g>>2]|0;i=o;return q|0}c[l>>
;2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;if(c[l>>2]|0){Fb(c[m>>2]|0,c[n>
x3e;2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c[n>>2];c[g>>2]=c[l>>2];q=c[g
>>2]|0;i=o;return q|0}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,p=0,q=0
;o=i;i=i+48|0;g=o+32|0;h=o+28|0;q=o+24|0;p=o+20|0;j=o+16|0;k=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;
c[p>>2]=d;c[j>>2]=e;c[k>>2]=f;c[q>>2]=c[q>>2];c[m>>2]=c[c[h>>
;2]>>2];c[n>>2]=jd(c[m>>2]|0,c[p>>2]|0,10475)|0;if(!(c[n>>2]|0)){c[g>>
;2]=64;q=c[g>>2]|0;i=o;return q|0}c[l>>2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;
if(c[l>>2]|0){Fb(c[m>>2]|0,c[n>>2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c
[n>>2];c[g>>2]=c[l>>2];q=c[g>>2]|0;i=o;return q|0}function rd(b){b=b|0;var d=0,e=0,f=0;e
=i;i=i+16|0;d=e+4|0;f=e;c[f>>2]=b;if(((sd(c[f>>2]|0)|0)+-3|0)>>>0<2){a[d>>0]=1
;f=a[d>>0]|0;i=e;return f|0}else{a[d>>0]=0;f=a[d>>0]|0;i=e;return f|0}return 0}function sd(a){a=a|
0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[d>>2]=a;if((c[d>>2]|0)>>>0>=9){c[b>>
;2]=-2;a=c[b>>2]|0;i=e;return a|0}else{c[b>>2]=c[96+(c[d>>2]<<3)+4>>2];a=c[b
x3e;>2]|0;i=e;return a|0}return 0}function td(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|0)+4>>2];c[(c[e>>2]|0)+4>>2
]=0;c[c[e>>2]>>2]=c[f>>2];a=c[e>>2]|0;if(c[f>>2]|0){c[(c[f>>2]|0)+4
x3e;>2]=a;e=c[e>>2]|0;f=c[d>>2]|0;f=f+4|0;c[f>>2]=e;i=g;return}else{c[c[d>>2]>
x3e;2]=a;e=c[e>>2]|0;f=c[d>>2]|0;f=f+4|0;c[f>>2]=e;i=g;return}}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;n=i;i=i+48|0;d=n+32|0;e=n+28|0;f=n+24|0;j=n+20|0;k=n+16|0;h=n+12|0;g=n+8|0;m=n+4|0;l=n;c[e
>>2]=a;c[f>>2]=b;c[m>>2]=0;c[l>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=35;m=c
[d>>2]|0;i=n;return m|0}if(!(c[f>>2]|0)){c[d>>2]=36;m=c[d>>2]|0;i=n;return m|0}if(!(c[(c
[e>>2]|0)+96>>2]|0)){c[d>>2]=34;m=c[d>>2]|0;i=n;return m|0}c[c[f>>2]>>
;2]=0;c[h>>2]=c[(c[e>>2]|0)+96>>2];c[g>>2]=c[(c[h>>2]|0)+20>>2];c[k
x3e;>2]=c[(c[e>>2]|0)+100>>2];c[m>>2]=bc(c[k>>2]|0,c[(c[g>>2]|0)+40>
x3e;2]|0,j)|0;if((c[j>>2]|0)==0?(c[l>>2]=bc(c[k>>2]|0,12,j)|0,(c[j>>2]|0)==0):0){c[c[m
x3e;>2]>>2]=c[e>>2];c[(c[m>>2]|0)+40>>2]=0;if(c[(c[g>>2]|0)+56>>
;2]|0)c[j>>2]=Ta[c[(c[g>>2]|0)+56>>2]&63](c[m>>2]|0)|0;if(!(c[j>>2]|0)){c
[c[f>>2]>>2]=c[m>>2];c[(c[l>>2]|0)+8>>2]=c[m>>2];td((c[e>>
2]|0)+108|0,c[l>>2]|0)}}if(c[j>>2]|0){Fb(c[k>>2]|0,c[l>>2]|0);c[l>>2]=0;Fb(c[k
>>2]|0,c[m>>2]|0);c[m>>2]=0}c[d>>2]=c[j>>2];m=c[d>>2]|0;i=n;return m
|0}function vd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;e=h+12|0;d=h+8|0;f=h+4|0;g=h;c[b>>2]=a;c[e
x3e;>2]=35;if(!(c[b>>2]|0)){g=c[e>>2]|0;i=h;return g|0}if(!(c[(c[b>>2]|0)+96>>2]|0)){
g=c[e>>2]|0;i=h;return g|0}a=(c[(c[b>>2]|0)+128>>2]|0)+60|0;c[a>>2]=(c[a>>2]|0
)+-1;if((c[(c[(c[b>>2]|0)+128>>2]|0)+60>>2]|0)>>>0>0){c[e>>2]=0;g=c[
e>>2]|0;i=h;return g|0}c[d>>2]=c[(c[b>>2]|0)+96>>2];c[f>>2]=c[(c[d>>
2]|0)+8>>2];c[g>>2]=Rb((c[d>>2]|0)+24|0,c[b>>2]|0)|0;if(!(c[g>>2]|0)){g=c[e>
;>2]|0;i=h;return g|0}wd((c[d>>2]|0)+24|0,c[g>>2]|0);Fb(c[f>>2]|0,c[g>>2]|0);c[g>
;>2]=0;xd(c[f>>2]|0,c[b>>2]|0,c[d>>2]|0);c[e>>2]=0;g=c[e>>2]|0;i=h;return
g|0}function wd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+12|0;h=g+8|0;d=g+4|0;f=g;c[e>>2]=a;c[h>
;>2]=b;c[d>>2]=c[c[h>>2]>>2];c[f>>2]=c[(c[h>>2]|0)+4>>2];a=c[f
x3e;>2]|0;if(c[d>>2]|0)c[(c[d>>2]|0)+4>>2]=a;else c[c[e>>2]>>2]=a;a=c[d
x3e;>2]|0;if(c[f>>2]|0){c[c[f>>2]>>2]=a;i=g;return}else{c[(c[e>>2]|0)+4>>
2]=a;i=g;return}}function xd(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[(c[g>>2]|0)+20>>2];if(c[(c[f>
x3e;2]|0)+116+4>>2]|0)Va[c[(c[f>>2]|0)+116+4>>2]&63](c[(c[f>>2]|0)+116>>2
]|0);while(1){d=c[f>>2]|0;if(!(c[(c[f>>2]|0)+84>>2]|0))break;Bc(c[d+84>>2]|0)}zd(d+108|0
,7,c[e>>2]|0,c[g>>2]|0);c[(c[f>>2]|0)+88>>2]=0;if(c[(c[f>>2]|0)+44+4>>
;2]|0)Va[c[(c[f>>2]|0)+44+4>>2]&63](c[f>>2]|0);Ic(c[f>>2]|0,c[e>>2]|0);if
(c[(c[h>>2]|0)+52>>2]|0)Va[c[(c[h>>2]|0)+52>>2]&63](c[f>>2]|0);vc(c[(c[f
x3e;>2]|0)+104>>2]|0,(c[(c[f>>2]|0)+8>>2]&1024|0)!=0&1);c[(c[f>>2]|0)+104
>>2]=0;if(!(c[(c[f>>2]|0)+128>>2]|0)){g=c[e>>2]|0;h=c[f>>2]|0;Fb(g,h);c[f>
;>2]=0;i=j;return}Fb(c[e>>2]|0,c[(c[f>>2]|0)+128>>2]|0);c[(c[f>>2]|0)+128>>
;2]=0;g=c[e>>2]|0;h=c[f>>2]|0;Fb(g,h);c[f>>2]=0;i=j;return}function yd(a,b,d){a=a|0;b=b|0;d=d|0;var
e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[(c[f>>
;2]|0)+4+4>>2]|0)Va[c[(c[f>>2]|0)+4+4>>2]&63](c[f>>2]|0);if(c[(c[(c[g>>2]|
0)+20>>2]|0)+60>>2]|0)Va[c[(c[(c[g>>2]|0)+20>>2]|0)+60>>2]&63](c[f>
x3e;2]|0);Fb(c[e>>2]|0,c[(c[f>>2]|0)+40>>2]|0);c[(c[f>>2]|0)+40>>2]=0;Fb(c[e
x3e;>2]|0,c[f>>2]|0);c[f>>2]=0;i=h;return}function zd(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;c[f>>2]=a;c[g>>2]=b
;c[h>>2]=d;c[j>>2]=e;c[k>>2]=c[c[f>>2]>>2];while(1){if(!(c[k>>2]|0))
break;c[m>>2]=c[(c[k>>2]|0)+4>>2];c[l>>2]=c[(c[k>>2]|0)+8>>2];if(c[g
>>2]|0)Ua[c[g>>2]&31](c[h>>2]|0,c[l>>2]|0,c[j>>2]|0);Fb(c[h>>2]|
0,c[k>>2]|0);c[k>>2]=0;c[k>>2]=c[m>>2]}c[c[f>>2]>>2]=0;c[(c[f>
x3e;2]|0)+4>>2]=0;i=n;return}function Ad(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;s=i;i=i+48|0;h=s+28|0;j=s+24|0;k=s+20|0;l=s+32|0;m=s+16|0;p=s+12|0;q=s+8|0;o=s+4|0;n=s;c[j>>2]=b;c[k>>2]=
e;a[l>>0]=f;c[m>>2]=g;if(!(c[(c[j>>2]|0)+8>>2]&2)){c[h>>2]=35;r=c[h>
x3e;2]|0;i=s;return r|0}if(c[c[k>>2]>>2]|0){c[h>>2]=7;r=c[h>>2]|0;i=s;return r|0}b=c[(c[
k>>2]|0)+4>>2]|0;if(c[(c[k>>2]|0)+12>>2]|0)b=((_(b,c[(c[k>>2]|0)+12>>
;2]|0)|0)+36|0)/72|0;c[q>>2]=b;b=c[(c[k>>2]|0)+8>>2]|0;if(c[(c[k>>2]|0)+16>>2]|
0)b=((_(b,c[(c[k>>2]|0)+16>>2]|0)|0)+36|0)/72|0;c[o>>2]=b;if(c[(c[k>>2]|0)+4>>
2]|0?!(c[(c[k>>2]|0)+8>>2]|0):0)c[o>>2]=c[q>>2];else r=12;if(((r|0)==12?(c[(c[k>>
;2]|0)+4>>2]|0)==0:0)?c[(c[k>>2]|0)+8>>2]|0:0)c[q>>2]=c[o>>2];c[q>>2
]=(c[q>>2]|0)+32&-64;c[o>>2]=(c[o>>2]|0)+32&-64;c[p>>2]=0;while(1){if((c[p>
;>2]|0)>=(c[(c[j>>2]|0)+28>>2]|0)){r=24;break}c[n>>2]=(c[(c[j>>2]|0)+32>
x3e;2]|0)+(c[p>>2]<<4);if((c[o>>2]|0)==((c[(c[n>>2]|0)+12>>2]|0)+32&-64|0
)){if((c[q>>2]|0)==((c[(c[n>>2]|0)+8>>2]|0)+32&-64|0))break;if(d[l>>0]|0|0)break}c[
p>>2]=(c[p>>2]|0)+1}if((r|0)==24){c[h>>2]=23;r=c[h>>2]|0;i=s;return r|0}if(c[m>>
;2]|0)c[c[m>>2]>>2]=c[p>>2];c[h>>2]=0;r=c[h>>2]|0;i=s;return r|0}function Bd(a
,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c
[(c[d>>2]|0)+4>>2];if((c[(c[d>>2]|0)+12>>2]|0)<0){if((c[f>>2]|0)<(c[(
c[d>>2]|0)+12>>2]|0))c[f>>2]=c[(c[d>>2]|0)+12>>2]}else if((c[(c[d>>2
]|0)+12>>2]|0)>0)c[f>>2]=(c[f>>2]|0)-(c[(c[d>>2]|0)+12>>2]|0);if(!(c[e>
;>2]|0))c[e>>2]=((c[f>>2]|0)*12|0)/10|0;c[(c[d>>2]|0)+20>>2]=(c[(c[d>>2]|
0)+8>>2]|0)-((c[(c[d>>2]|0)+16>>2]|0)/2|0);c[(c[d>>2]|0)+24>>2]=((c[e>>
;2]|0)-(c[f>>2]|0)|0)/2|0;c[(c[d>>2]|0)+28>>2]=c[e>>2];i=g;return}function Cd(a,d){a=a|0
;d=d|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;f=j+12|0;k=j+8|0;h=j+4|0;g=j;c[f>>2]=a;c[k>>2]=d;c[h>>
2]=(c[(c[f>>2]|0)+88>>2]|0)+12;c[g>>2]=(c[(c[f>>2]|0)+32>>2]|0)+(c[k>>
;2]<<4);b[c[h>>2]>>1]=(c[(c[g>>2]|0)+8>>2]|0)+32>>6;b[(c[h>>
;2]|0)+2>>1]=(c[(c[g>>2]|0)+12>>2]|0)+32>>6;if(c[(c[f>>2]|0)+8>>2]
x26;1|0){k=Vb(c[(c[g>>2]|0)+8>>2]|0,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[h>>2]|0)+4
x3e;>2]=k;k=Vb(c[(c[g>>2]|0)+12>>2]|0,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[h>>2
]|0)+8>>2]=k;Dd(c[f>>2]|0,c[h>>2]|0);i=j;return}else{c[(c[h>>2]|0)+4>>2]=65536
;c[(c[h>>2]|0)+8>>2]=65536;c[(c[h>>2]|0)+12>>2]=c[(c[g>>2]|0)+12>>2];
c[(c[h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+20>>2]=b[c[g>>2]>>1]<<
;6;c[(c[h>>2]|0)+24>>2]=c[(c[g>>2]|0)+8>>2];i=j;return}}function Dd(a,d){a=a|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]=a;c[f>>2]=d;d=(Mb(b[(c[g>>2]|0)+70>>1]|0,c
[(c[f>>2]|0)+8>>2]|0)|0)+63&-64;c[(c[f>>2]|0)+12>>2]=d;d=(Mb(b[(c[g>>2]|0
)+72>>1]|0,c[(c[f>>2]|0)+8>>2]|0)|0)&-64;c[(c[f>>2]|0)+16>>2]=d;d=(Mb(b[(
c[g>>2]|0)+74>>1]|0,c[(c[f>>2]|0)+8>>2]|0)|0)+32&-64;c[(c[f>>2]|0)+20>
;>2]=d;d=(Mb(b[(c[g>>2]|0)+76>>1]|0,c[(c[f>>2]|0)+4>>2]|0)|0)+32&-64;c[(c[f>
;>2]|0)+24>>2]=d;i=e;return}function Ed(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;o=i;i=i+32|0;j=o
+24|0;k=o+20|0;l=o+16|0;h=o+12|0;g=o+8|0;n=o+4|0;m=o;c[j>>2]=a;c[k>>2]=d;c[l>>2]=(c[(c[j>>
;2]|0)+88>>2]|0)+12;if(!(c[(c[j>>2]|0)+8>>2]&1)){n=c[l>>2]|0;c[n>>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[(c[l>>2]|0)+4>>2]=65536;c[(c[l>>2]|0)+8>>2]=65536;i=o;return}c[h>>2]=0
;c[g>>2]=0;c[n>>2]=0;c[m>>2]=0;a:do switch(c[c[k>>2]>>2]|0){case 0:{f=e[(c[j
x3e;>2]|0)+68>>1]|0;c[g>>2]=f;c[h>>2]=f;f=11;break}case 1:{f=(b[(c[j>>2]|0)+70>
;>1]|0)-(b[(c[j>>2]|0)+72>>1]|0)|0;c[g>>2]=f;c[h>>2]=f;f=11;break}case 2:{c[h>
x3e;2]=(c[(c[j>>2]|0)+52+8>>2]|0)-(c[(c[j>>2]|0)+52>>2]|0);c[g>>2]=(c[(c[j>
;>2]|0)+52+12>>2]|0)-(c[(c[j>>2]|0)+52+4>>2]|0);f=11;break}case 3:{c[h>>2]=b[(c[j
x3e;>2]|0)+76>>1];c[g>>2]=(b[(c[j>>2]|0)+70>>1]|0)-(b[(c[j>>2]|0)+72>
;>1]|0);f=11;break}case 4:{c[(c[l>>2]|0)+4>>2]=c[(c[k>>2]|0)+4>>2];c[(c[l>>
;2]|0)+8>>2]=c[(c[k>>2]|0)+8>>2];a=c[(c[l>>2]|0)+8>>2]|0;if(!(c[(c[l>>
;2]|0)+4>>2]|0)){c[(c[l>>2]|0)+4>>2]=a;break a}if(!a)c[(c[l>>2]|0)+8>>2]=c[(c[
l>>2]|0)+4>>2];break}default:f=11}while(0);do if((f|0)==11){if((c[h>>2]|0)<0)c[h>>2
]=0-(c[h>>2]|0);if((c[g>>2]|0)<0)c[g>>2]=0-(c[g>>2]|0);a=c[(c[k>>2]|0)+4
x3e;>2]|0;if(c[(c[k>>2]|0)+12>>2]|0)a=((_(a,c[(c[k>>2]|0)+12>>2]|0)|0)+36|0)/72|0;c
[n>>2]=a;a=c[(c[k>>2]|0)+8>>2]|0;if(c[(c[k>>2]|0)+16>>2]|0)a=((_(a,c[(c[k>
;>2]|0)+16>>2]|0)|0)+36|0)/72|0;c[m>>2]=a;if(!(c[(c[k>>2]|0)+4>>2]|0)){f=Vb(c[m>
;>2]|0,c[g>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=f;c[(c[l>>2]|0)+4>>2]=f;c[n>
x3e;2]=xb(c[m>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;break}f=Vb(c[n>>2]|0,c[h>>2]|0)|0;c
[(c[l>>2]|0)+4>>2]=f;if(!(c[(c[k>>2]|0)+8>>2]|0)){c[(c[l>>2]|0)+8>>2
]=c[(c[l>>2]|0)+4>>2];c[m>>2]=xb(c[n>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;break
}h=Vb(c[m>>2]|0,c[g>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=h;if((c[c[k>>2]>>2]|
0)==3){a=c[l>>2]|0;if((c[(c[l>>2]|0)+8>>2]|0)>(c[(c[l>>2]|0)+4>>2]|0)){c[(
c[l>>2]|0)+8>>2]=c[a+4>>2];break}else{c[(c[l>>2]|0)+4>>2]=c[a+8>>2];
break}}}while(0);if(c[c[k>>2]>>2]|0){c[n>>2]=Mb(e[(c[j>>2]|0)+68>>1]|0,c[(c[l
x3e;>2]|0)+4>>2]|0)|0;c[m>>2]=Mb(e[(c[j>>2]|0)+68>>1]|0,c[(c[l>>2]|0)+8
x3e;>2]|0)|0}b[c[l>>2]>>1]=(c[n>>2]|0)+32>>6;b[(c[l>>2]|0)+2>>1
]=(c[m>>2]|0)+32>>6;Dd(c[j>>2]|0,c[l>>2]|0);i=o;return}function Fd(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0?c[(
c[e>>2]|0)+8>>2]&2|0:0){if((c[f>>2]|0)>=0?(c[f>>2]|0)<(c[(c[e>>
2]|0)+28>>2]|0):0){c[g>>2]=c[(c[(c[e>>2]|0)+96>>2]|0)+20>>2];if(c[(c[g>
x3e;2]|0)+100>>2]|0){c[d>>2]=Ya[c[(c[g>>2]|0)+100>>2]&127](c[(c[e>>2]|0)+
88>>2]|0,c[f>>2]|0)|0;b=c[d>>2]|0;i=h;return b|0}else{Cd(c[e>>2]|0,c[f>>2]|0);
c[d>>2]=0;b=c[d>>2]|0;i=h;return b|0}}c[d>>2]=6;b=c[d>>2]|0;i=h;return b|0}c[d>>
;2]=35;b=c[d>>2]|0;i=h;return b|0}function Gd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e
=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=35;j=c
[d>>2]|0;i=k;return j|0}if(((c[f>>2]|0?(c[(c[f>>2]|0)+4>>2]|0)>=0:0)?(c[(c[f>
x3e;2]|0)+8>>2]|0)>=0:0)?(c[c[f>>2]>>2]|0)>>>0<5:0){c[g>>2]=c[(
c[(c[e>>2]|0)+96>>2]|0)+20>>2];if(c[(c[g>>2]|0)+96>>2]|0){c[d>>2]=Ya
[c[(c[g>>2]|0)+96>>2]&127](c[(c[e>>2]|0)+88>>2]|0,c[f>>2]|0)|0;j=c[d>
;>2]|0;i=k;return j|0}if((c[(c[e>>2]|0)+8>>2]&1|0)==0?c[(c[e>>2]|0)+8>>2]&
;2|0:0){c[h>>2]=Ad(c[e>>2]|0,c[f>>2]|0,0,j)|0;if(c[h>>2]|0){c[d>>2]=c[h>
x3e;2];j=c[d>>2]|0;i=k;return j|0}else{c[d>>2]=Fd(c[e>>2]|0,c[j>>2]|0)|0;j=c[d>>
;2]|0;i=k;return j|0}}Ed(c[e>>2]|0,c[f>>2]|0);c[d>>2]=0;j=c[d>>2]|0;i=k;return j|0}c[d
x3e;>2]=6;j=c[d>>2]|0;i=k;return j|0}function Hd(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;n=i;i=i+48|0;g=n+36|0;h=n+32|0;j=n+28|0;k=n+24|0;l=n+20|0;m=n;c[g>>2]=a;c[h>>2]=b;c[j>>2]=
d;c[k>>2]=e;c[l>>2]=f;d=c[j>>2]|0;if(c[h>>2]|0){if(!d)c[j>>2]=c[h>>2
]}else c[h>>2]=d;d=c[l>>2]|0;if(c[k>>2]|0){if(!d)c[l>>2]=c[k>>2]}else c[k>
;>2]=d;if((c[h>>2]|0)<64)c[h>>2]=64;if((c[j>>2]|0)<64)c[j>>2]=64;if(!(c[k
>>2]|0)){c[l>>2]=72;c[k>>2]=72}c[m>>2]=0;c[m+4>>2]=c[h>>2];c[m+8>
;>2]=c[j>>2];c[m+12>>2]=c[k>>2];c[m+16>>2]=c[l>>2];m=Gd(c[g>>2]|
0,m)|0;i=n;return m|0}function Id(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+16|0;g=j+12|0;d=j+8|0;h=j+4|0;e=
j;c[g>>2]=a;c[d>>2]=b;if(!(c[g>>2]|0)){c[f>>2]=35;h=c[f>>2]|0;i=j;return h|0}if
(!(c[d>>2]|0)){c[f>>2]=6;h=c[f>>2]|0;i=j;return h|0}b=c[g>>2]|0;if((c[d>>2]|0)==
1970170211){c[f>>2]=Hc(b)|0;h=c[f>>2]|0;i=j;return h|0}c[h>>2]=c[b+40>>2];if(!(c[h>
x3e;2]|0)){c[f>>2]=38;h=c[f>>2]|0;i=j;return h|0}c[e>>2]=(c[h>>2]|0)+(c[(c[g>>
2]|0)+36>>2]<<2);while(1){if((c[h>>2]|0)>>>0>=(c[e>>2]|0)>>
;>0){b=15;break}if((c[(c[c[h>>2]>>2]|0)+4>>2]|0)==(c[d>>2]|0)?(((c[h>>2]|
0)-(c[(c[g>>2]|0)+40>>2]|0)|0)/4|0|0)<=15:0){b=13;break}c[h>>2]=(c[h>>2]|0)+4}if((b
|0)==13){c[(c[g>>2]|0)+92>>2]=c[c[h>>2]>>2];c[f>>2]=0;h=c[f>>2]|0;i=
j;return h|0}else if((b|0)==15){c[f>>2]=6;h=c[f>>2]|0;i=j;return h|0}return 0}function Jd(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+16|0;g=j+12|0;d=j+8|0;h=j+4|0;e=j;c[g>>2]=a;c[d>>2]=b;if(!(c[g>
;>2]|0)){c[f>>2]=35;h=c[f>>2]|0;i=j;return h|0}c[h>>2]=c[(c[g>>2]|0)+40>>
2];if(!(c[h>>2]|0)){c[f>>2]=38;h=c[f>>2]|0;i=j;return h|0}if((Kd(c[d>>2]|0)|0)==14){c[f
x3e;>2]=6;h=c[f>>2]|0;i=j;return h|0}c[e>>2]=(c[h>>2]|0)+(c[(c[g>>2]|0)+36>>
;2]<<2);while(1){if((c[h>>2]|0)>>>0>=(c[e>>2]|0)>>>0){d=13;break
}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)?(((c[h>>2]|0)-(c[(c[g>>2]|0)+40>>
2]|0)|0)/4|0|0)<=15:0){d=11;break}c[h>>2]=(c[h>>2]|0)+4}if((d|0)==11){c[(c[g>>2]|0)+92>
x3e;2]=c[c[h>>2]>>2];c[f>>2]=0;h=c[f>>2]|0;i=j;return h|0}else if((d|0)==13){c[f>
x3e;2]=6;h=c[f>>2]|0;i=j;return h|0}return 0}function Kd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;b=k
+28|0;d=k+24|0;j=k+20|0;g=k+16|0;f=k+8|0;h=k+4|0;e=k;c[d>>2]=a;if(c[d>>2]|0?c[c[d>>2]>>2
]|0:0){c[g>>2]=c[c[d>>2]>>2];c[h>>2]=c[(c[g>>2]|0)+96>>2];c[e>
x3e;2]=0;if(c[(c[c[h>>2]>>2]|0)+32>>2]|0)c[e>>2]=Ya[c[(c[c[h>>2]>>2]|
0)+32>>2]&127](c[h>>2]|0,11426)|0;c[j>>2]=c[e>>2];if(!(c[j>>2]|0)){c[b>
;>2]=-1;j=c[b>>2]|0;i=k;return j|0}if(Ya[c[c[j>>2]>>2]&127](c[d>>2]|0,f)|0){c[
b>>2]=-1;j=c[b>>2]|0;i=k;return j|0}else{c[b>>2]=c[f+4>>2];j=c[b>>2]|0;i=k;return
j|0}}c[b>>2]=-1;j=c[b>>2]|0;i=k;return j|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,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;f=q+32|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;l=q;c[g>>
;2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=0;if(!((c[g>>2]|0)==0|(c[j>
x3e;2]|0)==0)?c[c[j>>2]>>2]|0:0){c[n>>2]=c[c[j>>2]>>2];c[o>>2]=c[(c[
n>>2]|0)+100>>2];c[l>>2]=bc(c[o>>2]|0,c[c[g>>2]>>2]|0,m)|0;do if(!(c
[m>>2]|0)){b=c[l>>2]|0;a=c[j>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4
x3e;>2];c[b+8>>2]=c[a+8>>2];c[(c[l>>2]|0)+12>>2]=c[g>>2];if(!(c[(c[g>
;>2]|0)+4>>2]|0?(c[m>>2]=Ya[c[(c[g>>2]|0)+4>>2]&127](c[l>>2]|0,c[h
x3e;>2]|0)|0,(c[m>>2]|0)!=0):0))p=7;if((p|0)==7?(p=hc(c[o>>2]|0,4,c[(c[n>>2]|0)+36>>
;2]|0,(c[(c[n>>2]|0)+36>>2]|0)+1|0,c[(c[n>>2]|0)+40>>2]|0,m)|0,c[(c[n>>2]|0)+40
>>2]=p,(c[m>>2]|0)==0):0){o=c[l>>2]|0;b=(c[n>>2]|0)+36|0;p=c[b>>2]|0;c[b>
x3e;2]=p+1;c[(c[(c[n>>2]|0)+40>>2]|0)+(p<<2)>>2]=o;break}Jc(c[l>>2]|0);c[l>
;>2]=0}while(0);if(c[k>>2]|0)c[c[k>>2]>>2]=c[l>>2];c[f>>2]=c[m>>
;2];p=c[f>>2]|0;i=q;return p|0}c[f>>2]=6;p=c[f>>2]|0;i=q;return p|0}function Md(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;m=i;i=i+32|0;e=m+24|0;f=m+20|0;g=m+16|0;l=m+12|0;k=m+8|0;j=m+4|0;h=m;c[e>>2
]=a;c[f>>2]=b;c[g>>2]=d;c[l>>2]=0;c[k>>2]=0;if((c[e>>2]|0?c[(c[e>>2]|
0)+92>>2]|0:0)?c[(c[e>>2]|0)+16>>2]|0:0){c[j>>2]=c[f>>2];c[h>>2]=c[(
c[e>>2]|0)+92>>2];do c[k>>2]=Ya[c[(c[(c[h>>2]|0)+12>>2]|0)+16>>2]&
;127](c[h>>2]|0,j)|0;while((c[k>>2]|0)>>>0>=(c[(c[e>>2]|0)+16>>2]|0)
x3e;>>0);c[l>>2]=(c[k>>2]|0)==0?0:c[j>>2]|0}if(!(c[g>>2]|0)){l=c[l>>
2]|0;i=m;return l|0}c[c[g>>2]>>2]=c[k>>2];l=c[l>>2]|0;i=m;return l|0}function Nd(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;p=i;i=i+48|0;d=p+36|0;e=p+32|0;f=p+28|0;j=p+24|0;k=p+20|0;l=p+16|0
;m=p+12|0;g=p+8|0;h=p+4|0;n=p;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=33;o=c[d>
;>2]|0;i=p;return o|0}if(!(c[f>>2]|0)){c[d>>2]=6;o=c[d>>2]|0;i=p;return o|0}if((c[(c[f>
x3e;2]|0)+16>>2]|0)>131076){c[d>>2]=4;o=c[d>>2]|0;i=p;return o|0}c[m>>2]=0;while(1){
if((c[m>>2]|0)>>>0>=(c[(c[e>>2]|0)+24>>2]|0)>>>0)break;c[l>
;>2]=c[(c[e>>2]|0)+28+(c[m>>2]<<2)>>2];if(!(Kr(c[(c[c[l>>2]>>2]|
0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0)){o=10;break}c[m>>2]=(c[m>>2]|0)+1}do if((
o|0)==10){if((c[(c[f>>2]|0)+12>>2]|0)>(c[(c[c[l>>2]>>2]|0)+12>>2]|0)){Od(
c[e>>2]|0,c[l>>2]|0)|0;break}c[d>>2]=5;o=c[d>>2]|0;i=p;return o|0}while(0);c[k>>
;2]=c[c[e>>2]>>2];c[j>>2]=0;a:do if((c[(c[e>>2]|0)+24>>2]|0)>>>
0<32){c[l>>2]=bc(c[k>>2]|0,c[(c[f>>2]|0)+4>>2]|0,j)|0;if(!(c[j>>2]|0)){c[(
c[l>>2]|0)+4>>2]=c[e>>2];c[(c[l>>2]|0)+8>>2]=c[k>>2];c[c[l>>
;2]>>2]=c[f>>2];if(!(c[c[c[l>>2]>>2]>>2]&2|0?(c[j>>2]=Td(c[l>
;>2]|0)|0,(c[j>>2]|0)!=0):0))o=19;do if((o|0)==19){if(c[c[c[l>>2]>>2]>>2]&4|0)
c[(c[e>>2]|0)+168>>2]=c[l>>2];if((c[c[c[l>>2]>>2]>>2]&1|0?(c[g
x3e;>2]=c[l>>2],c[(c[g>>2]|0)+20>>2]=c[c[l>>2]>>2],(c[c[c[g>>2]
x3e;>2]>>2]&512|0)==0):0)?(c[j>>2]=ac(c[k>>2]|0,(c[g>>2]|0)+36|0)|0,c[j>
x3e;2]|0):0)break;if(c[(c[f>>2]|0)+24>>2]|0?(c[j>>2]=Ta[c[(c[f>>2]|0)+24>>2]
x26;63](c[l>>2]|0)|0,c[j>>2]|0):0)break;n=c[l>>2]|0;m=(c[e>>2]|0)+24|0;o=c[m>>
2]|0;c[m>>2]=o+1;c[(c[e>>2]|0)+28+(o<<2)>>2]=n;break a}while(0);if(c[c[c[l>>2]
x3e;>2]>>2]&1|0?(c[h>>2]=c[l>>2],(c[c[c[h>>2]>>2]>>2]&
;512|0)==0):0)fc(c[(c[h>>2]|0)+36>>2]|0);if((c[c[c[l>>2]>>2]>>2]&2|0?(c[n
>>2]=c[l>>2],(c[(c[(c[n>>2]|0)+20>>2]|0)+36>>2]|0)==1869968492):0)?c[(c[n>
;>2]|0)+60>>2]|0:0)Va[c[(c[(c[(c[n>>2]|0)+20>>2]|0)+56>>2]|0)+20>>2]&
;63](c[(c[n>>2]|0)+60>>2]|0);Fb(c[k>>2]|0,c[l>>2]|0);c[l>>2]=0}}else c[j>
x3e;2]=48;while(0);c[d>>2]=c[j>>2];o=c[d>>2]|0;i=p;return o|0}function Od(a,b){a=a|0;b=b|0;var d=0
,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;if(!(c[e>
x3e;2]|0)){c[d>>2]=33;b=c[d>>2]|0;i=j;return b|0}a:do if(c[f>>2]|0){c[g>>2]=(c[e>
x3e;2]|0)+28;c[h>>2]=(c[g>>2]|0)+(c[(c[e>>2]|0)+24>>2]<<2);while(1){if((c[g>
;>2]|0)>>>0>=(c[h>>2]|0)>>>0)break a;if((c[c[g>>2]>>2]|0)==(
c[f>>2]|0))break;c[g>>2]=(c[g>>2]|0)+4}b=(c[e>>2]|0)+24|0;c[b>>2]=(c[b>
x3e;2]|0)+-1;c[h>>2]=(c[h>>2]|0)+-4;while(1){if((c[g>>2]|0)>>>0>=(c[h>>
;2]|0)>>>0)break;c[c[g>>2]>>2]=c[(c[g>>2]|0)+4>>2];c[g>>2]=(c[g
>>2]|0)+4}c[c[h>>2]>>2]=0;Pd(c[f>>2]|0);c[d>>2]=0;b=c[d>>2]|0;i=j;return
b|0}while(0);c[d>>2]=34;b=c[d>>2]|0;i=j;return b|0}function Pd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|
0;b=g+12|0;f=g+8|0;d=g+4|0;e=g;c[b>>2]=a;c[f>>2]=c[(c[b>>2]|0)+8>>2];c[d>>2]=c
[c[b>>2]>>2];c[e>>2]=c[(c[b>>2]|0)+4>>2];if(c[(c[b>>2]|0)+12+4>
x3e;2]|0)Va[c[(c[b>>2]|0)+12+4>>2]&63](c[b>>2]|0);if(c[e>>2]|0?(c[(c[e>>2
]|0)+168>>2]|0)==(c[b>>2]|0):0)c[(c[e>>2]|0)+168>>2]=0;if(c[c[c[b>>2]>>
;2]>>2]&2|0)Qd(c[b>>2]|0);if(c[c[c[b>>2]>>2]>>2]&1|0)Sd(c[b>>
;2]|0);if(!(c[(c[d>>2]|0)+28>>2]|0)){f=c[f>>2]|0;a=c[b>>2]|0;Fb(f,a);c[b>>2]=0
;i=g;return}Va[c[(c[d>>2]|0)+28>>2]&63](c[b>>2]|0);f=c[f>>2]|0;a=c[b>>2]|
0;Fb(f,a);c[b>>2]=0;i=g;return}function Qd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0
;f=h+4|0;g=h;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+4>>2];c[e>>2]=c[c[d>>2]
x3e;>2];c[f>>2]=Rb((c[d>>2]|0)+156|0,c[b>>2]|0)|0;if(!(c[f>>2]|0)){i=h;return}c[g
x3e;>2]=c[b>>2];if((c[(c[(c[g>>2]|0)+20>>2]|0)+36>>2]|0)==1869968492?c[(c[g>
x3e;2]|0)+60>>2]|0:0)Va[c[(c[(c[(c[g>>2]|0)+20>>2]|0)+56>>2]|0)+20>>2]&63
](c[(c[g>>2]|0)+60>>2]|0);wd((c[d>>2]|0)+156|0,c[f>>2]|0);Fb(c[e>>2]|0,c[f>
;>2]|0);c[f>>2]=0;Rd(c[d>>2]|0);i=h;return}function Rd(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]=Jb(c[d>>2]|0,1869968492,0)|0;c[(c[d>>2]|0)+164>>2]=c[e>
;>2];i=b;return}function Sd(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;zd((c[b>>2]|0)+24|0,8,c[(c[
b>>2]|0)+8>>2]|0,c[b>>2]|0);if(c[c[c[b>>2]>>2]>>2]&512|0){i=d;return
}fc(c[(c[b>>2]|0)+36>>2]|0);i=d;return}function Td(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+
32|0;b=l+24|0;f=l+20|0;g=l+16|0;e=l+12|0;h=l+8|0;j=l+4|0;d=l;c[b>>2]=a;c[f>>2]=c[(c[b>>2]|0)+4>
;>2];c[g>>2]=c[c[f>>2]>>2];c[h>>2]=0;c[h>>2]=bc(c[g>>2]|0,12,e)|
0;if(c[e>>2]|0){k=c[e>>2]|0;i=l;return k|0}c[j>>2]=c[b>>2];c[d>>2]=c[c[b>
x3e;2]>>2];c[(c[j>>2]|0)+20>>2]=c[d>>2];c[(c[j>>2]|0)+24>>2]=c[(c[d
x3e;>2]|0)+36>>2];if((c[(c[d>>2]|0)+36>>2]|0)==1869968492?c[(c[(c[d>>2]|0)+56>
x3e;2]|0)+4>>2]|0:0){c[e>>2]=Ya[c[(c[(c[d>>2]|0)+56>>2]|0)+4>>2]&127](c[g
>>2]|0,(c[j>>2]|0)+60|0)|0;if(!(c[e>>2]|0)){c[(c[j>>2]|0)+64>>2]=c[(c[(c[d>
;>2]|0)+56>>2]|0)+16>>2];c[(c[j>>2]|0)+68>>2]=c[(c[d>>2]|0)+40>>
;2];k=6}}else k=6;if((k|0)==6){c[(c[h>>2]|0)+8>>2]=c[b>>2];td((c[f>>2]|0)+156|0,c[h>
;>2]|0);Rd(c[f>>2]|0)}if(!(c[e>>2]|0)){k=c[e>>2]|0;i=l;return k|0}Fb(c[g>>2]|0,c[h
x3e;>2]|0);c[h>>2]=0;k=c[e>>2]|0;i=l;return k|0}function Ud(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]=Wc(c[g>>2]|0,c[f>>2]|0)|
0;if(!(c[d>>2]|0)){g=0;i=e;return g|0}g=c[(c[c[d>>2]>>2]|0)+20>>2]|0;i=e;return g|0}function
Vd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;j=k+12|0;g=k+8|0;f=k+4|0;h=k;c[d>>
2]=a;c[e>>2]=b;c[j>>2]=0;if(!(c[d>>2]|0)){j=c[j>>2]|0;i=k;return j|0}if(c[(c[c[d>
x3e;2]>>2]|0)+32>>2]|0)c[j>>2]=Ya[c[(c[c[d>>2]>>2]|0)+32>>2]&127
](c[d>>2]|0,c[e>>2]|0)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}c[g>>2]=c[(c
[d>>2]|0)+4>>2];c[f>>2]=(c[g>>2]|0)+28;c[h>>2]=(c[f>>2]|0)+(c[(c[g
x3e;>2]|0)+24>>2]<<2);while(1){if((c[f>>2]|0)>>>0>=(c[h>>2]|0)
x3e;>>0){d=11;break}if(((c[c[f>>2]>>2]|0)!=(c[d>>2]|0)?c[(c[c[c[f>>2]>>
;2]>>2]|0)+32>>2]|0:0)?(c[j>>2]=Ya[c[(c[c[c[f>>2]>>2]>>2]|0)+32>
;>2]&127](c[c[f>>2]>>2]|0,c[e>>2]|0)|0,c[j>>2]|0):0){d=11;break}c[f>>
;2]=(c[f>>2]|0)+4}if((d|0)==11){j=c[j>>2]|0;i=k;return j|0}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;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=b;c[h>>2]=0;
if(!(c[e>>2]|0)){c[d>>2]=6;a=c[d>>2]|0;i=j;return a|0}c[h>>2]=bc(c[e>>2]|0,200
,g)|0;if(c[g>>2]|0){c[d>>2]=c[g>>2];a=c[d>>2]|0;i=j;return a|0}c[c[h>>2]>
x3e;2]=c[e>>2];c[(c[h>>2]|0)+176>>2]=16384;a=bc(c[e>>2]|0,16384,g)|0;c[(c[h>>2
]|0)+172>>2]=a;if(c[g>>2]|0){Fb(c[e>>2]|0,c[h>>2]|0);c[h>>2]=0;c[d>>
2]=c[g>>2];a=c[d>>2]|0;i=j;return a|0}else{c[(c[h>>2]|0)+12>>2]=2;c[(c[h>>2]|0
)+16>>2]=4;c[(c[h>>2]|0)+20>>2]=4;c[(c[h>>2]|0)+196>>2]=1;c[c[f>>2]
x3e;>2]=c[h>>2];c[d>>2]=0;a=c[d>>2]|0;i=j;return a|0}return 0}function Xd(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;p=i;i=i+48|0;g=p+44|0;h=p+40|0;j=p+36|0;k=p+32|0;l=p+28|0;m=p+24|0
;o=p+4|0;n=p;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>
2]=c[(c[c[h>>2]>>2]|0)+96>>2];if(!(c[(c[(c[n>>2]|0)+20>>2]|0)+96>>2]|
0)){c[g>>2]=0;b=c[g>>2]|0;i=p;return b|0}c[o>>2]=0;c[o+4>>2]=c[j>>2];c[o+8>
;>2]=c[k>>2];if(!(c[l>>2]|0))c[l>>2]=c[m>>2];if(!(c[m>>2]|0))c[m>>
;2]=c[l>>2];if(!(c[l>>2]|0)){c[m>>2]=72;c[l>>2]=72}c[o+12>>2]=c[l>>2
];c[o+16>>2]=c[m>>2];c[g>>2]=Ya[c[(c[(c[n>>2]|0)+20>>2]|0)+96>>2]&
;127](c[h>>2]|0,o)|0;b=c[g>>2]|0;i=p;return b|0}function Yd(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;l=i;i=i+48|0;e=l+36|0;f=l+32|0;g=l+28|0;h=l+24|0;k=l+4|0;j=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=
d;c[j>>2]=c[(c[c[f>>2]>>2]|0)+96>>2];if(c[(c[(c[j>>2]|0)+20>>2]|0)+96
>>2]|0){c[k>>2]=0;c[k+4>>2]=c[g>>2]<<6;c[k+8>>2]=c[h>>2]
x3c;<6;c[k+12>>2]=0;c[k+16>>2]=0;c[e>>2]=Ya[c[(c[(c[j>>2]|0)+20>>2]|0)+96
>>2]&127](c[f>>2]|0,k)|0;b=c[e>>2]|0;i=l;return b|0}else{c[e>>2]=0;b=c[e>>
;2]|0;i=l;return b|0}return 0}function Zd(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,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;E=i;i=i+128|0;g=E+124|0;h=E+120|0;j=E+116|0;k=E+112|0;w=E+104|0;v=E+96|0;y=E+88|0;r=E+84|
0;p=E+80|0;u=E+76|0;m=E+72|0;q=E+68|0;n=E+64|0;t=E+60|0;s=E+56|0;l=E+52|0;o=E+48|0;z=E+40|0;A=E+32|0;x=E+24|0;B=E+16|0;C=E+8|0;D
=E;c[h>>2]=d;c[j>>2]=e;c[k>>2]=f;if(!((c[h>>2]|0)!=0&(c[j>>2]|0)!=0)){c[g
>>2]=6;D=c[g>>2]|0;i=E;return D|0}c[s>>2]=c[(c[j>>2]|0)+16>>2];c[l>>
2]=c[(c[j>>2]|0)+20>>2];c[n>>2]=0;c[q>>2]=0;a:while(1){if((c[q>>2]|0)>=(b
[c[h>>2]>>1]|0)){e=32;break}c[o>>2]=b[(c[(c[h>>2]|0)+12>>2]|0)+(c[q>>
;2]<<1)>>1];if((c[o>>2]|0)<0){e=34;break}c[p>>2]=(c[(c[h>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<3);f=(c[(c[h>>2]|0)+4>>2]|0)+(c[n>>2]<<3)|0;c[y
x3e;>2]=c[f>>2];c[y+4>>2]=c[f+4>>2];c[y>>2]=(c[y>>2]<<c[s>
x3e;2])-(c[l>>2]|0);c[y+4>>2]=(c[y+4>>2]<<c[s>>2])-(c[l>>2]|0);f=(c[(
c[h>>2]|0)+4>>2]|0)+(c[o>>2]<<3)|0;c[w>>2]=c[f>>2];c[w+4>>
2]=c[f+4>>2];c[w>>2]=(c[w>>2]<<c[s>>2])-(c[l>>2]|0);c[w+4>>
;2]=(c[w+4>>2]<<c[s>>2])-(c[l>>2]|0);c[v>>2]=c[y>>2];c[v+4>>
;2]=c[y+4>>2];c[r>>2]=(c[(c[h>>2]|0)+4>>2]|0)+(c[n>>2]<<3);c[u>
x3e;2]=(c[(c[h>>2]|0)+8>>2]|0)+(c[n>>2]|0);c[t>>2]=a[c[u>>2]>>0]&
;3;if((c[t>>2]|0)==2){e=34;break}if(!(c[t>>2]|0)){if((a[(c[(c[h>>2]|0)+8>>2]|0)+(c[o>
;>2]|0)>>0]&3|0)==1){c[y>>2]=c[w>>2];c[y+4>>2]=c[w+4>>2];c[p>
x3e;2]=(c[p>>2]|0)+-8}else{c[y>>2]=((c[y>>2]|0)+(c[w>>2]|0)|0)/2|0;c[y+4>>2]=((
c[y+4>>2]|0)+(c[w+4>>2]|0)|0)/2|0;c[w>>2]=c[y>>2];c[w+4>>2]=c[y+4>>2
]}c[r>>2]=(c[r>>2]|0)+-8;c[u>>2]=(c[u>>2]|0)+-1}c[m>>2]=Ya[c[c[j>>2]
x3e;>2]&127](y,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break}b:while(1){if((c[r>>2]|0)>>
;>0>=(c[p>>2]|0)>>>0){e=29;break}c[r>>2]=(c[r>>2]|0)+8;c[u>>2]=(
c[u>>2]|0)+1;c[t>>2]=a[c[u>>2]>>0]&3;switch(c[t>>2]|0){case 1:{c[z>
x3e;2]=(c[c[r>>2]>>2]<<c[s>>2])-(c[l>>2]|0);c[z+4>>2]=(c[(c[r>
x3e;2]|0)+4>>2]<<c[s>>2])-(c[l>>2]|0);c[m>>2]=Ya[c[(c[j>>2]|0)+4>
;>2]&127](z,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else continue b}case 0:{c[v>>2]=(c[c
[r>>2]>>2]<<c[s>>2])-(c[l>>2]|0);c[v+4>>2]=(c[(c[r>>2]|0)+
4>>2]<<c[s>>2])-(c[l>>2]|0);while(1){if((c[r>>2]|0)>>>0>=(
c[p>>2]|0)>>>0){e=23;break b}c[r>>2]=(c[r>>2]|0)+8;c[u>>2]=(c[u>>
;2]|0)+1;c[t>>2]=a[c[u>>2]>>0]&3;c[A>>2]=(c[c[r>>2]>>2]<
x3c;c[s>>2])-(c[l>>2]|0);c[A+4>>2]=(c[(c[r>>2]|0)+4>>2]<<c[s>
x3e;2])-(c[l>>2]|0);if((c[t>>2]|0)==1)break;if(c[t>>2]|0){e=34;break a}c[x>>2]=((c[v>
;>2]|0)+(c[A>>2]|0)|0)/2|0;c[x+4>>2]=((c[v+4>>2]|0)+(c[A+4>>2]|0)|0)/2|0;c[m>
x3e;2]=Oa[c[(c[j>>2]|0)+8>>2]&63](v,x,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a};c[v
x3e;>2]=c[A>>2];c[v+4>>2]=c[A+4>>2]}c[m>>2]=Oa[c[(c[j>>2]|0)+8>>
;2]&63](v,A,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else continue b}default:{if(((c[r>>2]|0)+
8|0)>>>0>(c[p>>2]|0)>>>0){e=34;break a}if((a[(c[u>>2]|0)+1>>0]
x26;3|0)!=2){e=34;break a}c[r>>2]=(c[r>>2]|0)+16;c[u>>2]=(c[u>>2]|0)+2;c[B>>2]=(
c[(c[r>>2]|0)+-16>>2]<<c[s>>2])-(c[l>>2]|0);c[B+4>>2]=(c[(c[r>
x3e;2]|0)+-16+4>>2]<<c[s>>2])-(c[l>>2]|0);c[C>>2]=(c[(c[r>>2]|0)+-8
x3e;>2]<<c[s>>2])-(c[l>>2]|0);c[C+4>>2]=(c[(c[r>>2]|0)+-8+4>>2]
x3c;<c[s>>2])-(c[l>>2]|0);if((c[r>>2]|0)>>>0>(c[p>>2]|0)>
x3e;>0){e=28;break b}c[D>>2]=(c[c[r>>2]>>2]<<c[s>>2])-(c[l>>2]|
0);c[D+4>>2]=(c[(c[r>>2]|0)+4>>2]<<c[s>>2])-(c[l>>2]|0);c[m>>
;2]=Wa[c[(c[j>>2]|0)+12>>2]&31](B,C,D,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else
continue b}}}if((e|0)==23)c[m>>2]=Oa[c[(c[j>>2]|0)+8>>2]&63](v,y,c[k>>2]|0)|0;else
if((e|0)==28)c[m>>2]=Wa[c[(c[j>>2]|0)+12>>2]&31](B,C,y,c[k>>2]|0)|0;else if((e|0)==
29)c[m>>2]=Ya[c[(c[j>>2]|0)+4>>2]&127](y,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;
break}c[n>>2]=(c[o>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+1}if((e|0)==32){c[g>>2]=0;D=c[
g>>2]|0;i=E;return D|0}else if((e|0)==33){c[g>>2]=c[m>>2];D=c[g>>2]|0;i=E;return D|0}else
if((e|0)==34){c[g>>2]=20;D=c[g>>2]|0;i=E;return D|0}return 0}function _d(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0;l=p+28|0;o=p+24|0;k=p+20|0;n=p+16|0;h=p+12|0;g=p+8|0;j=p+4|0;m=p;c
[e>>2]=a;c[f>>2]=d;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=p;return}a:do if(!(b[(c[e
>>2]|0)+2>>1]|0)){c[l>>2]=0;c[o>>2]=0;c[k>>2]=0;c[n>>2]=0}else{c[h
x3e;>2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=(c[h>>2]|0)+(b[(c[e>>2]|0)+2>>
;1]<<3);a=c[c[h>>2]>>2]|0;c[k>>2]=a;c[l>>2]=a;a=c[(c[h>>2]|0)+4>
;>2]|0;c[n>>2]=a;c[o>>2]=a;c[h>>2]=(c[h>>2]|0)+8;while(1){if((c[h>>2]|0)
x3e;>>0>=(c[g>>2]|0)>>>0)break a;c[j>>2]=c[c[h>>2]>>2];if((
c[j>>2]|0)<(c[l>>2]|0))c[l>>2]=c[j>>2];if((c[j>>2]|0)>(c[k>>
;2]|0))c[k>>2]=c[j>>2];c[m>>2]=c[(c[h>>2]|0)+4>>2];if((c[m>>2]|0)<
;(c[o>>2]|0))c[o>>2]=c[m>>2];if((c[m>>2]|0)>(c[n>>2]|0))c[n>>2]=
c[m>>2];c[h>>2]=(c[h>>2]|0)+8}}while(0);c[c[f>>2]>>2]=c[l>>2];c[(c[f
>>2]|0)+8>>2]=c[k>>2];c[(c[f>>2]|0)+4>>2]=c[o>>2];c[(c[f>>
2]|0)+12>>2]=c[n>>2];i=p;return}function $d(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,o=0,p=0,q=0
,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+128|0;d=F+116|0;e=F+112|0;z=F+108|0;D=F+104|0;C=F+100|0;A=F
+96|0;B=F+92|0;f=F+88|0;l=F+84|0;n=F+80|0;s=F+76|0;r=F+72|0;m=F+68|0;t=F+56|0;u=F+44|0;h=F+40|0;g=F+36|0;k=F+32|0;j=F+28|0;q=F+24
|0;x=F+20|0;o=F+16|0;p=F+12|0;v=F+8|0;w=F+4|0;y=F;c[e>>2]=a;c[z>>2]=32768;c[D>>2]=32768;c[C>
x3e;2]=-32768;c[A>>2]=0;c[B>>2]=0;c[u>>2]=c[42];c[u+4>>2]=c[43];c[u+8>>2]=c[44
];if(c[e>>2]|0?(b[(c[e>>2]|0)+2>>1]|0)>0:0){c[l>>2]=c[(c[e>>2]|0)+4>
x3e;2];c[f>>2]=c[(c[e>>2]|0)+12>>2];while(1){if((c[f>>2]|0)>>>0>=((c
[(c[e>>2]|0)+12>>2]|0)+(b[c[e>>2]>>1]<<1)|0)>>>0)break;c[h>
;>2]=32768;c[g>>2]=-32768;c[k>>2]=32768;c[j>>2]=-32768;c[n>>2]=(c[(c[e>>2
]|0)+4>>2]|0)+(b[c[f>>2]>>1]<<3);if((c[n>>2]|0)>>>0>=((c[l
>>2]|0)+16|0)>>>0){c[r>>2]=c[l>>2];while(1){if((c[r>>2]|0)>>>
;0>(c[n>>2]|0)>>>0)break;if((c[c[r>>2]>>2]|0)<(c[h>>2]|0))c[h
x3e;>2]=c[c[r>>2]>>2];if((c[c[r>>2]>>2]|0)>(c[g>>2]|0))c[g>>
;2]=c[c[r>>2]>>2];if((c[(c[r>>2]|0)+4>>2]|0)<(c[k>>2]|0))c[k>>2
]=c[(c[r>>2]|0)+4>>2];if((c[(c[r>>2]|0)+4>>2]|0)>(c[j>>2]|0))c[j>>
;2]=c[(c[r>>2]|0)+4>>2];c[r>>2]=(c[r>>2]|0)+8}if(((c[h>>2]|0)<(c[z>
x3e;2]|0)?(c[h>>2]|0)!=(c[g>>2]|0):0)?(c[k>>2]|0)!=(c[j>>2]|0):0){c[z>>2]=c[h
x3e;>2];c[D>>2]=c[k>>2];c[C>>2]=c[j>>2];c[A>>2]=c[l>>2];c[B>
;>2]=c[n>>2]}}c[f>>2]=(c[f>>2]|0)+2;c[l>>2]=(c[n>>2]|0)+8}if((c[z>
x3e;2]|0)==32768){c[d>>2]=0;E=c[d>>2]|0;i=F;return E|0}c[t>>2]=((c[D>>2]|0)*3|0)+(c[C>
;>2]|0)>>2;c[t+4>>2]=(c[D>>2]|0)+(c[C>>2]|0)>>1;c[t+8>>2]=(c[D
x3e;>2]|0)+((c[C>>2]|0)*3|0)>>2;c[m>>2]=0;while(1){if((c[m>>2]|0)>=3)break;a:while
(1){c[q>>2]=32768;c[x>>2]=-32768;c[w>>2]=0;c[v>>2]=0;c[p>>2]=0;c[o>>
2]=0;c[s>>2]=c[B>>2];c[r>>2]=c[A>>2];while(1){if((c[r>>2]|0)>>>
0>(c[B>>2]|0)>>>0)break a;if((c[(c[r>>2]|0)+4>>2]|0)==(c[t+(c[m>>2]
x3c;<2)>>2]|0))break;if((c[(c[s>>2]|0)+4>>2]|0)==(c[t+(c[m>>2]<<2)>
x3e;2]|0))break;if(!((c[(c[r>>2]|0)+4>>2]|0)<(c[t+(c[m>>2]<<2)>>2]|0)?(c[(
c[s>>2]|0)+4>>2]|0)<(c[t+(c[m>>2]<<2)>>2]|0):0))E=34;do if((E|0)==34){E=0
;if((c[(c[r>>2]|0)+4>>2]|0)>(c[t+(c[m>>2]<<2)>>2]|0)?(c[(c[s>>2
]|0)+4>>2]|0)>(c[t+(c[m>>2]<<2)>>2]|0):0)break;D=xb((c[c[r>>2]>>
;2]|0)-(c[c[s>>2]>>2]|0)|0,(c[t+(c[m>>2]<<2)>>2]|0)-(c[(c[s>>2]|0)+4
>>2]|0)|0,(c[(c[r>>2]|0)+4>>2]|0)-(c[(c[s>>2]|0)+4>>2]|0)|0)|0;c[y>>
2]=D+(c[c[s>>2]>>2]|0);if((c[y>>2]|0)<(c[q>>2]|0)){c[q>>2]=c[y>>
;2];c[o>>2]=c[s>>2];c[p>>2]=c[r>>2]}if((c[y>>2]|0)>(c[x>>2]|0)){
c[x>>2]=c[y>>2];c[v>>2]=c[s>>2];c[w>>2]=c[r>>2]}}while(0);c[s>
x3e;2]=c[r>>2];c[r>>2]=(c[r>>2]|0)+8}D=t+(c[m>>2]<<2)|0;c[D>>2]=(c[D
>>2]|0)+1}do if((c[o>>2]|0)!=0&(c[v>>2]|0)!=0){if((c[(c[o>>2]|0)+4>>2]|0)
x3c;(c[(c[p>>2]|0)+4>>2]|0)?(c[(c[v>>2]|0)+4>>2]|0)>(c[(c[w>>2]|0)+4>
;>2]|0):0){c[u+(c[m>>2]<<2)>>2]=0;break}if((c[(c[o>>2]|0)+4>>2]|0)>(
c[(c[p>>2]|0)+4>>2]|0)?(c[(c[v>>2]|0)+4>>2]|0)<(c[(c[w>>2]|0)+4>>
;2]|0):0){c[u+(c[m>>2]<<2)>>2]=1;break}c[u+(c[m>>2]<<2)>>2]=2}while(
0);c[m>>2]=(c[m>>2]|0)+1}do if((c[u>>2]|0)!=2){if((c[u>>2]|0)!=(c[u+4>>2]|0)?(
c[u>>2]|0)!=(c[u+8>>2]|0):0)break;c[d>>2]=c[u>>2];E=c[d>>2]|0;i=F;return E|0}while
(0);if((c[u+4>>2]|0)!=2?(c[u+4>>2]|0)==(c[u+8>>2]|0):0){c[d>>2]=c[u+4>>2];E=c[
d>>2]|0;i=F;return E|0}c[d>>2]=0;E=c[d>>2]|0;i=F;return E|0}c[d>>2]=0;E=c[d>>2
]|0;i=F;return E|0}function ae(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;f=h+12|0;g=h+8|0;b=h+4|0;e=h;c[d
x3e;>2]=a;c[f>>2]=c[c[d>>2]>>2];c[g>>2]=c[(c[d>>2]|0)+4>>2];j=c
[f>>2]|0;a=c[g>>2]|0;c[b>>2]=((c[f>>2]|0)>=0?j:0-j|0)|((c[g>>2]|0)>=
0?a:0-a|0);c[e>>2]=0;if((c[b>>2]|0)>=65536){c[b>>2]=c[b>>2]>>16;c[e>
x3e;2]=(c[e>>2]|0)+16}if((c[b>>2]|0)>=256){c[b>>2]=c[b>>2]>>8;c[e>
x3e;2]=(c[e>>2]|0)+8}if((c[b>>2]|0)>=16){c[b>>2]=c[b>>2]>>4;c[e>>
;2]=(c[e>>2]|0)+4}if((c[b>>2]|0)>=4){c[b>>2]=c[b>>2]>>2;c[e>>2]=(
c[e>>2]|0)+2}if((c[b>>2]|0)>=2){c[b>>2]=c[b>>2]>>1;c[e>>2]=(c[e
>>2]|0)+1}a=c[e>>2]|0;if((c[e>>2]|0)<=27){c[e>>2]=27-a;c[c[d>>2]>>
;2]=c[f>>2]<<c[e>>2];c[(c[d>>2]|0)+4>>2]=c[g>>2]<<c[e>
;>2];j=c[e>>2]|0;i=h;return j|0}else{c[e>>2]=a-27;c[c[d>>2]>>2]=c[f>>2]
x3e;>c[e>>2];c[(c[d>>2]|0)+4>>2]=c[g>>2]>>c[e>>2];c[e>>
;2]=0-(c[e>>2]|0);j=c[e>>2]|0;i=h;return j|0}return 0}function be(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k
=0,l=0;l=i;i=i+32|0;h=l+24|0;j=l+20|0;g=l+16|0;e=l+12|0;k=l+8|0;f=l+4|0;d=l;c[h>>2]=a;c[k>>2]=c[c[h>>
;2]>>2];c[f>>2]=c[(c[h>>2]|0)+4>>2];c[j>>2]=0;if((c[k>>2]|0)<0){
c[k>>2]=0-(c[k>>2]|0);c[f>>2]=0-(c[f>>2]|0);c[j>>2]=11796480}if((c[f>>
;2]|0)>0)c[j>>2]=0-(c[j>>2]|0);c[d>>2]=180;a=c[f>>2]|0;b=c[k>>2]<<
;1;if((c[f>>2]|0)<0){c[g>>2]=a+b;c[k>>2]=(c[k>>2]|0)-(c[f>>2]<<
1);c[f>>2]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)-(c[b
x3e;>2]|0)}else{c[g>>2]=a-b;c[k>>2]=(c[k>>2]|0)+(c[f>>2]<<1);c[f>>
;2]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)+(c[b>>2]|0)}
c[e>>2]=0;do{a=c[f>>2]|0;b=c[k>>2]>>c[e>>2];if((c[f>>2]|0)<0){c
[g>>2]=a+b;c[k>>2]=(c[k>>2]|0)-(c[f>>2]>>c[e>>2]);c[f>>2]=
c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)-(c[b>>2]|0)}else
{c[g>>2]=a-b;c[k>>2]=(c[k>>2]|0)+(c[f>>2]>>c[e>>2]);c[f>>2
]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)+(c[b>>2]|0)}b=(
c[e>>2]|0)+1|0;c[e>>2]=b}while((b|0)<23);a=c[j>>2]|0;if((c[j>>2]|0)>=0){c[j>
;>2]=a+16&-32;g=c[k>>2]|0;k=c[h>>2]|0;c[k>>2]=g;j=c[j>>2]|0;k=c[h>>2
]|0;k=k+4|0;c[k>>2]=j;i=l;return}else{c[j>>2]=0-(0-a+16&-32);g=c[k>>2]|0;k=c[h>>2]|
0;c[k>>2]=g;j=c[j>>2]|0;k=c[h>>2]|0;k=k+4|0;c[k>>2]=j;i=l;return}}function ce(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;f=i;i=i+48|0;b=f+36|0;e=f+32|0;m=f+28|0;k=f+24|0;n=f+20|0;l=f+16|0;d=f+12|0;h=f+8|0
;j=f+4|0;g=f;c[b>>2]=a;c[e>>2]=c[b>>2];a=c[b>>2]|0;c[b>>2]=(c[b>>2]|
0)>=0?a:0-a|0;c[m>>2]=(c[b>>2]|0)>>>16;c[k>>2]=c[b>>2]&65535;c[
n>>2]=17797;c[l>>2]=47593;c[d>>2]=_(c[n>>2]|0,c[m>>2]|0)|0;a=_(c[n>>
2]|0,c[k>>2]|0)|0;c[h>>2]=a+(_(c[l>>2]|0,c[m>>2]|0)|0);c[j>>2]=(_(c[l>>
;2]|0,c[k>>2]|0)|0)>>>16;c[g>>2]=(c[h>>2]|0)>>>0>=(c[j>>
;2]|0)>>>0?c[h>>2]|0:c[j>>2]|0;c[h>>2]=(c[h>>2]|0)+(c[j>>2]|0);
c[d>>2]=(c[d>>2]|0)+((c[h>>2]|0)>>>16);if((c[h>>2]|0)>>>0
x3e;=(c[g>>2]|0)>>>0){l=c[d>>2]|0;c[b>>2]=l;l=c[e>>2]|0;l=(l|0)>=0;m
=c[b>>2]|0;n=0-m|0;n=l?m:n;i=f;return n|0}c[d>>2]=(c[d>>2]|0)+65536;l=c[d>>2]|0;c[b>
;>2]=l;l=c[e>>2]|0;l=(l|0)>=0;m=c[b>>2]|0;n=0-m|0;n=l?m:n;i=f;return n|0}function de(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;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[j>>2]=b;c[f>
x3e;2]=d;c[g>>2]=ee(c[e>>2]|0,c[j>>2]|0)|0;if(c[g>>2]|0){j=c[g>>2]|0;i=h;return
j|0}c[c[f>>2]>>2]=c[(c[e>>2]|0)+32>>2];c[(c[e>>2]|0)+32>>2]=0;c[(c[
e>>2]|0)+36>>2]=0;j=c[g>>2]|0;i=h;return j|0}function ee(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,
j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;b=c[d>
x3e;2]|0;if(!(c[(c[d>>2]|0)+20>>2]|0)){if((c[b+8>>2]|0)>>>0<(c[(c[d>>
;2]|0)+4>>2]|0)>>>0?((c[(c[d>>2]|0)+4>>2]|0)-(c[(c[d>>2]|0)+8>>
2]|0)|0)>>>0>=(c[e>>2]|0)>>>0:0){c[(c[d>>2]|0)+32>>2]=(c[c[d>
;>2]>>2]|0)+(c[(c[d>>2]|0)+8>>2]|0);c[(c[d>>2]|0)+36>>2]=(c[(c[d>>
;2]|0)+32>>2]|0)+(c[e>>2]|0);h=(c[d>>2]|0)+8|0;c[h>>2]=(c[h>>2]|0)+(c[e>
x3e;2]|0);h=c[f>>2]|0;i=j;return h|0}c[f>>2]=85;h=c[f>>2]|0;i=j;return h|0}c[g>>2]=c[b+28
>>2];if((c[e>>2]|0)>>>0>(c[(c[d>>2]|0)+4>>2]|0)>>>0){
c[f>>2]=85;h=c[f>>2]|0;i=j;return h|0}a=cc(c[g>>2]|0,c[e>>2]|0,f)|0;c[c[d>>2]
x3e;>2]=a;if(c[f>>2]|0){h=c[f>>2]|0;i=j;return h|0}c[h>>2]=Wa[c[(c[d>>2]|0)+20>
;>2]&31](c[d>>2]|0,c[(c[d>>2]|0)+8>>2]|0,c[c[d>>2]>>2]|0,c[e>
x3e;2]|0)|0;if((c[h>>2]|0)>>>0<(c[e>>2]|0)>>>0){Fb(c[g>>2]|0,c[
c[d>>2]>>2]|0);c[c[d>>2]>>2]=0;c[f>>2]=85}c[(c[d>>2]|0)+32>>
;2]=c[c[d>>2]>>2];c[(c[d>>2]|0)+36>>2]=(c[(c[d>>2]|0)+32>>2]|0)+(c[e
>>2]|0);g=(c[d>>2]|0)+8|0;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0);h=c[f>>2]|
0;i=j;return h|0}function fe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>
x3e;2]=b;if(c[d>>2]|0?c[(c[d>>2]|0)+20>>2]|0:0){c[f>>2]=c[(c[d>>2]|0)+28>
x3e;2];Fb(c[f>>2]|0,c[c[e>>2]>>2]|0);c[c[e>>2]>>2]=0}c[c[e>>2]>
x3e;2]=0;i=g;return}function ge(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(c[(c[b>>2]|0)+
20>>2]|0){c[d>>2]=c[(c[b>>2]|0)+28>>2];Fb(c[d>>2]|0,c[c[b>>2]>
x3e;2]|0);c[c[b>>2]>>2]=0}c[(c[b>>2]|0)+32>>2]=0;c[(c[b>>2]|0)+36>>2
]=0;i=e;return}function he(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f;e=f+4|0;c[d>>2]=b;a[e>>0]=0;if((c[(c[d
x3e;>2]|0)+32>>2]|0)>>>0>=(c[(c[d>>2]|0)+36>>2]|0)>>>0){b=
a[e>>0]|0;i=f;return b|0}d=(c[d>>2]|0)+32|0;b=c[d>>2]|0;c[d>>2]=b+1;a[e>>0]=a[
b>>0]|0;b=a[e>>0]|0;i=f;return b|0}function ie(e){e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;f=j+4|0;g=j;h=j+8|0
;c[f>>2]=e;b[h>>1]=0;c[g>>2]=c[(c[f>>2]|0)+32>>2];if(((c[g>>2]|0)+1|
0)>>>0>=(c[(c[f>>2]|0)+36>>2]|0)>>>0){g=c[g>>2]|0;e=c[f>
x3e;2]|0;e=e+32|0;c[e>>2]=g;e=b[h>>1]|0;i=j;return e|0}c[g>>2]=(c[g>>2]|0)+2;b[h>
x3e;1]=a[(c[g>>2]|0)+-2>>0]<<16>>16<<8|d[(c[g>>2]|0)+-2+1>>
;0]<<0;g=c[g>>2]|0;e=c[f>>2]|0;e=e+32|0;c[e>>2]=g;e=b[h>>1]|0;i=j;return e|0}function
je(b){b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=b;c[g>>2]=0;c[f>>2]=c[(c
[e>>2]|0)+32>>2];if(((c[f>>2]|0)+3|0)>>>0>=(c[(c[e>>2]|0)+36>
x3e;2]|0)>>>0){f=c[f>>2]|0;b=c[e>>2]|0;b=b+32|0;c[b>>2]=f;b=c[g>>2]|0;i=h
;return b|0}c[f>>2]=(c[f>>2]|0)+4;c[g>>2]=a[(c[f>>2]|0)+-4>>0]<<24|d
[(c[f>>2]|0)+-4+1>>0]<<16|d[(c[f>>2]|0)+-4+2>>0]<<8|d[(c[f>>
;2]|0)+-4+3>>0]<<0;f=c[f>>2]|0;b=c[e>>2]|0;b=b+32|0;c[b>>2]=f;b=c[g>>
;2]|0;i=h;return b|0}function ke(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+9|0;f=j+4|0;g=j;h=j+8|0;c[f>>
;2]=b;c[g>>2]=d;a[h>>0]=0;c[c[g>>2]>>2]=0;d=c[f>>2]|0;if(c[(c[f>>2]|
0)+20>>2]|0)if((Wa[c[d+20>>2]&31](c[f>>2]|0,c[(c[f>>2]|0)+8>>2]|0,h,1)|0)!=
1)d=6;else d=5;else if((c[d+8>>2]|0)>>>0<(c[(c[f>>2]|0)+4>>2]|0)>>
x3e;0){a[h>>0]=a[(c[c[f>>2]>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)>>0]|0;d=5
}else d=6;if((d|0)==5){g=(c[f>>2]|0)+8|0;c[g>>2]=(c[g>>2]|0)+1;a[e>>0]=a[h>>0]|
0;h=a[e>>0]|0;i=j;return h|0}else if((d|0)==6){c[c[g>>2]>>2]=85;a[e>>0]=0;h=a[e>>
;0]|0;i=j;return h|0}return 0}function le(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;v=i;i
=i+48|0;j=v+36|0;k=v+32|0;l=v+28|0;m=v+24|0;o=v+20|0;p=v+40|0;n=v+16|0;t=v+12|0;s=v+8|0;r=v+4|0;q=v;c[k>>2]=f;c[l>
;>2]=g;c[m>>2]=h;a[p>>0]=0;if(!((c[l>>2]|0)!=0&(c[k>>2]|0)!=0)){c[j>>
;2]=6;u=c[j>>2]|0;i=v;return u|0}c[n>>2]=c[(c[k>>2]|0)+32>>2];c[o>>2]=0;a:while
(1){switch(d[c[l>>2]>>0]|0){case 4:{c[o>>2]=ee(c[k>>2]|0,e[(c[l>>2]|0)+2>
x3e;1]|0)|0;if(c[o>>2]|0)break a;a[p>>0]=1;c[n>>2]=c[(c[k>>2]|0)+32>>2];c[l>
;>2]=(c[l>>2]|0)+4;continue a}case 25:case 24:{c[q>>2]=d[(c[l>>2]|0)+1>>0];if(((c[n
>>2]|0)+(c[q>>2]|0)|0)>>>0>(c[(c[k>>2]|0)+36>>2]|0)>>>
;0){u=8;break a}if((d[c[l>>2]>>0]|0)==24){c[r>>2]=(c[m>>2]|0)+(e[(c[l>>2]|0)+2
>>1]|0);Ss(c[r>>2]|0,c[n>>2]|0,c[q>>2]|0)|0}c[n>>2]=(c[n>>2]|0)+(c[q
>>2]|0);c[l>>2]=(c[l>>2]|0)+4;continue a}case 9:case 8:{h=c[n>>2]|0;c[n>>2]=h+
1;c[t>>2]=d[h>>0];c[s>>2]=24;break}case 12:case 13:{c[n>>2]=(c[n>>2]|0)+2;c[t
x3e;>2]=((d[(c[n>>2]|0)+-2>>0]&65535)<<8|(d[(c[n>>2]|0)+-2+1>>0]&
;65535)<<0)&65535;c[s>>2]=16;break}case 14:case 15:{c[n>>2]=(c[n>>2]|0)+2;c[t>
x3e;2]=((d[(c[n>>2]|0)+-2+1>>0]&65535)<<8|(d[(c[n>>2]|0)+-2>>0]&65535
)<<0)&65535;c[s>>2]=16;break}case 16:case 17:{c[n>>2]=(c[n>>2]|0)+4;c[t>>
2]=d[(c[n>>2]|0)+-4>>0]<<24|d[(c[n>>2]|0)+-4+1>>0]<<16|d[(c[n>
x3e;2]|0)+-4+2>>0]<<8|d[(c[n>>2]|0)+-4+3>>0]<<0;c[s>>2]=0;break}case
18:case 19:{c[n>>2]=(c[n>>2]|0)+4;c[t>>2]=d[(c[n>>2]|0)+-4+3>>0]<<24
|d[(c[n>>2]|0)+-4+2>>0]<<16|d[(c[n>>2]|0)+-4+1>>0]<<8|d[(c[n>
x3e;2]|0)+-4>>0]<<0;c[s>>2]=0;break}case 20:case 21:{c[n>>2]=(c[n>>2]|0)+3;c[t
>>2]=d[(c[n>>2]|0)+-3>>0]<<16|d[(c[n>>2]|0)+-3+1>>0]<<8|d[(
c[n>>2]|0)+-3+2>>0]<<0;c[s>>2]=8;break}case 22:case 23:{c[n>>2]=(c[n>>
;2]|0)+3;c[t>>2]=d[(c[n>>2]|0)+-3+2>>0]<<16|d[(c[n>>2]|0)+-3+1>>0]
x3c;<8|d[(c[n>>2]|0)+-3>>0]<<0;c[s>>2]=8;break}default:{u=19;break a}}if(d[c[l>
;>2]>>0]&1|0)c[t>>2]=c[t>>2]<<c[s>>2]>>c[s>>2];c
[r>>2]=(c[m>>2]|0)+(e[(c[l>>2]|0)+2>>1]|0);switch(d[(c[l>>2]|0)+1>>0
]|0){case 1:{a[c[r>>2]>>0]=c[t>>2];break}case 2:{b[c[r>>2]>>1]=c[t>>
2];break}case 4:{c[c[r>>2]>>2]=c[t>>2];break}default:c[c[r>>2]>>2]=c[t>
x3e;2]}c[l>>2]=(c[l>>2]|0)+4}if((u|0)==8)c[o>>2]=85;else if((u|0)==19)c[(c[k>>2]|0)+32
x3e;>2]=c[n>>2];if(a[p>>0]|0)ge(c[k>>2]|0);c[j>>2]=c[o>>2];u=c[j>>
;2]|0;i=v;return u|0}function me(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+32|0;d=f+16|0;g=f+12|0;e=f+8|0;b=f;c[g>>2]=a
;a=c[g>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];a=c[b+4>>2]|0;if(!(
c[b>>2]|0)){g=c[b+4>>2]|0;c[d>>2]=(a|0)>=0?g:0-g|0;g=c[d>>2]|0;i=f;return g|0}if(!a
){g=c[b>>2]|0;c[d>>2]=(c[b>>2]|0)>=0?g:0-g|0;g=c[d>>2]|0;i=f;return g|0}c[e>
x3e;2]=ae(b)|0;be(b);c[b>>2]=ce(c[b>>2]|0)|0;a=c[b>>2]|0;b=c[e>>2]|0;if((c[e>>
2]|0)>0){c[d>>2]=a+(1<<b-1)>>c[e>>2];g=c[d>>2]|0;i=f;return g|0}else{c[d
x3e;>2]=a<<0-b;g=c[d>>2]|0;i=f;return g|0}return 0}function ne(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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>>2]=a;c[f>>2]=b;c[g
>>2]=d;c[h>>2]=e;c[k>>2]=cc(c[m>>2]|0,c[g>>2]|0,j)|0;if(!((c[j>>2]|0
)==0&(c[f>>2]|0)!=0)){d=c[j>>2]|0;m=c[h>>2]|0;c[m>>2]=d;m=c[k>>2]|0;i=l;return
m|0}Ss(c[k>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;d=c[j>>2]|0;m=c[h>>2]|0;c[m>>
;2]=d;m=c[k>>2]|0;i=l;return m|0}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;j=i;i=i+16|0;e=j+12|0;f=
j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[f>>2]|0)a=(cs(c[f>>2]|0)|
0)+1|0;else a=0;c[h>>2]=a;h=ne(c[e>>2]|0,c[f>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=j;
return h|0}function pe(b,d,e){b=b|0;d=d|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]=b;c[g>
;>2]=d;c[h>>2]=e;while(1){if((c[h>>2]|0)>>>0<=1)break;if(!(a[c[g>>2]>
;>0]|0))break;e=c[g>>2]|0;c[g>>2]=e+1;e=a[e>>0]|0;d=c[f>>2]|0;c[f>>2]=d+1
;a[d>>0]=e;c[h>>2]=(c[h>>2]|0)+-1}a[c[f>>2]>>0]=0;i=j;return (a[c[g>>
;2]>>0]|0)!=0|0}function qe(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]=c[f>>2];if(re(c[e>>2]|0)|0){c[b>>2]=0;f=c[b>>2]|0;i=d;return f|0}else{c[b>
;>2]=153;f=c[b>>2]|0;i=d;return f|0}return 0}function re(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16
|0;d=h+12|0;f=h+8|0;g=h+4|0;e=h;c[d>>2]=a;c[g>>2]=c[(c[d>>2]|0)+8>>2];c[f>>2]=
c[(c[d>>2]|0)+40>>2];do if(!(c[(c[d>>2]|0)+40>>2]|0)){c[f>>2]=bc(c[g>>
;2]|0,608,e)|0;if((c[e>>2]|0)==0?(c[e>>2]=se(c[f>>2]|0,c[g>>2]|0)|0,(c[e>>2]|0
)==0):0){c[(c[d>>2]|0)+40>>2]=c[f>>2];break}c[b>>2]=0;g=c[b>>2]|0;i=h;return g
|0}while(0);c[b>>2]=c[(c[d>>2]|0)+40>>2];g=c[b>>2]|0;i=h;return g|0}function se(a,d){a=a
|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;f=h+8|0;j=h+4|0;g=h;c[f>>2]=a;c[j>>2]=d;c[(c[f>
x3e;2]|0)+8>>2]=c[j>>2];c[(c[f>>2]|0)+432>>2]=32;a=hc(c[j>>2]|0,16,0,c[(c[f>
;>2]|0)+432>>2]|0,0,g)|0;c[(c[f>>2]|0)+436>>2]=a;a=c[f>>2]|0;if(c[g>>2]|0
){te(a)|0;c[e>>2]=c[g>>2];j=c[e>>2]|0;i=h;return j|0}else{b[a+440>>1]=0;b[(c[f>>
;2]|0)+442>>1]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>>2]|0)+388>>2]=0;c[(c[f>
x3e;2]|0)+24>>2]=0;c[(c[f>>2]|0)+392>>2]=0;c[c[f>>2]>>2]=0;c[(c[f>>2
]|0)+4>>2]=0;c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}return 0}function te(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;c[f>>2]=c[(c[e>>2]|0)+8>>2];b[(c[e>>2]|0)+440
>>1]=0;b[(c[e>>2]|0)+442>>1]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);
c[(c[e>>2]|0)+24>>2]=0;c[(c[e>>2]|0)+20>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2
]|0)+436>>2]|0);c[(c[e>>2]|0)+436>>2]=0;c[(c[e>>2]|0)+432>>2]=0;c[(c[e>
x3e;2]|0)+428>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+392>>2]|0);c[(c[e>>2]|0)+392>
;>2]=0;c[(c[e>>2]|0)+388>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[c[e>>2]>>
;2]=0;Fb(c[f>>2]|0,c[e>>2]|0);c[e>>2]=0;i=d;return 0}function ue(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];if(!(c[(c[b>>2]|0)+40>>2]|0)){i=d;return
}te(c[(c[b>>2]|0)+40>>2]|0)|0;c[(c[b>>2]|0)+40>>2]=0;i=d;return}function ve(a,b){a=a|0;b
=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=qc(380,c[f>>2]|0)|0;if(c[g>>2]|0){c[d>>2]=c[g>>2];b=c[d>
x3e;2]|0;i=k;return b|0}if(!(c[e>>2]|0)){c[d>>2]=0;b=c[d>>2]|0;i=k;return b|0}c[j>>2]=Wc
(c[(c[e>>2]|0)+4>>2]|0,11340)|0;if(c[j>>2]|0?(c[h>>2]=c[(c[c[j>>2]>>
2]|0)+20>>2],c[h>>2]|0):0){c[d>>2]=Ya[c[(c[h>>2]|0)+16>>2]&127](c[e>
x3e;2]|0,c[f>>2]|0)|0;b=c[d>>2]|0;i=k;return b|0}c[d>>2]=0;b=c[d>>2]|0;i=k;return b|0}function
we(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;q=i;i=i+48|0;f=q+32|0;g=q+28|0;h=q+24|0;k=q+20|0;j=
q+16|0;o=q+12|0;l=q+8|0;n=q+4|0;m=q;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=0;c[n>>
;2]=c[(c[f>>2]|0)+100>>2];a[(c[f>>2]|0)+708>>0]=0;if((c[(c[f>>2]|0)+712>
x3e;2]|0)==0?(d=xe(c[f>>2]|0,0)|0,c[k>>2]=d,d|0):0){p=c[k>>2]|0;i=q;return p|0}c[j>>2]=c
[(c[f>>2]|0)+712>>2];c[o>>2]=c[(c[j>>2]|0)+8>>2];if((c[g>>2]|0)!=(c[
c[o>>2]>>2]|0)){c[k>>2]=6;p=c[k>>2]|0;i=q;return p|0}c[l>>2]=0;while(1){if((c[
l>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;if((c[(c[h>>2]|0)+(c[l>
;>2]<<2)>>2]|0)<-65536){p=9;break}if((c[(c[h>>2]|0)+(c[l>>2]<<2)>
;>2]|0)>65536){p=9;break}c[l>>2]=(c[l>>2]|0)+1}if((p|0)==9){c[k>>2]=6;p=c[k>>2
]|0;i=q;return p|0}if((c[(c[j>>2]|0)+36>>2]|0)==0?(p=ye(c[f>>2]|0)|0,c[k>>2]=p,p|0):0){p
=c[k>>2]|0;i=q;return p|0}a:do if(!(c[(c[j>>2]|0)+4>>2]|0)){p=hc(c[n>>2]|0,4,0,c[g>
x3e;2]|0,0,k)|0;c[(c[j>>2]|0)+4>>2]=p;if(c[k>>2]|0){p=c[k>>2]|0;i=q;return p|0}else{c[m
x3e;>2]=1;break}}else{c[m>>2]=0;c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c
[g>>2]|0)>>>0)break a;if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[l>>2]<<2
)>>2]|0)!=(c[(c[h>>2]|0)+(c[l>>2]<<2)>>2]|0))break;c[l>>2]=(c[l>
;>2]|0)+1}c[m>>2]=2}while(0);c[c[j>>2]>>2]=c[g>>2];Ss(c[(c[j>>2]|0)+4>
;>2]|0,c[h>>2]|0,c[g>>2]<<2|0)|0;a[(c[f>>2]|0)+708>>0]=1;if(!(c[(c[f>
;>2]|0)+672>>2]|0)){p=c[k>>2]|0;i=q;return p|0}switch(c[m>>2]|0){case 2:{Fb(c[n>>2]|
0,c[(c[f>>2]|0)+672>>2]|0);c[(c[f>>2]|0)+672>>2]=0;c[(c[f>>2]|0)+672>>
;2]=0;ze(c[f>>2]|0,c[(c[f>>2]|0)+104>>2]|0)|0;p=c[k>>2]|0;i=q;return p|0}case 1:{Ae(c[f
x3e;>2]|0,c[(c[f>>2]|0)+104>>2]|0)|0;p=c[k>>2]|0;i=q;return p|0}default:{p=c[k>>2]|
0;i=q;return p|0}}return 0}function xe(b,d){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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,
x=0,y=0;y=i;i=i+96|0;k=y+92|0;s=y+88|0;r=y+84|0;o=y+80|0;f=y+76|0;u=y+72|0;h=y+68|0;m=y+64|0;n=y+60|0;v=y+56|0;p=y+52|0;x=y+48|0
;t=y+44|0;q=y+40|0;l=y+24|0;g=y+4|0;w=y;c[k>>2]=b;c[s>>2]=d;c[r>>2]=c[(c[k>>2]|0)+104>
;>2];c[o>>2]=c[(c[k>>2]|0)+100>>2];c[u>>2]=0;a:do if(!(c[(c[k>>2]|0)+712
x3e;>2]|0)){d=Wa[c[(c[k>>2]|0)+508>>2]&31](c[k>>2]|0,1735811442,c[r>>2]|0,f)|0
;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0}d=Wa[c[(c[k>>2]|0)+508>>2]&31](c[k>
;>2]|0,1719034226,c[r>>2]|0,f)|0;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0}c[h>>
2]=Mc(c[r>>2]|0)|0;d=le(c[r>>2]|0,5428,l)|0;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0
}if(((((((c[l>>2]|0)==65536?(e[l+6>>1]|0|0)==2:0)?(e[l+10>>1]|0|0)==20:0)?(e[l+8>>1]|0|0
)<=16382:0)?(e[l+14>>1]|0|0)==(4+((e[l+8>>1]|0)<<2)|0):0)?(e[l+12>>1]|0|0)<=32511
:0)?(d=(e[l+4>>1]|0)+((e[l+8>>1]|0)*20|0)+(_(e[l+12>>1]|0,e[l+14>>1]|0)|0)|0,d>>
;>0<=(c[f>>2]|0)>>>0):0){f=bc(c[o>>2]|0,40,u)|0;c[(c[k>>2]|0)+712>
x3e;2]=f;if(c[u>>2]|0){x=c[u>>2]|0;i=y;return x|0}f=20+((e[l+8>>1]|0)*24|0)+((e[l+12>>1]|
0)<<3)+((_(e[l+12>>1]|0,e[l+8>>1]|0)|0)<<2)|0;c[(c[(c[k>>2]|0)+712>>
2]|0)+12>>2]=f+((e[l+8>>1]|0)*5|0);c[v>>2]=bc(c[o>>2]|0,c[(c[(c[k>>2]|0)+712
x3e;>2]|0)+12>>2]|0,u)|0;if(c[u>>2]|0){x=c[u>>2]|0;i=y;return x|0}c[(c[(c[k>>2]|0)+
712>>2]|0)+8>>2]=c[v>>2];c[c[v>>2]>>2]=e[l+8>>1];c[(c[v>>2
]|0)+4>>2]=-1;c[(c[v>>2]|0)+8>>2]=e[l+12>>1];c[(c[v>>2]|0)+12>>2]=(c
[v>>2]|0)+20;c[(c[v>>2]|0)+16>>2]=(c[(c[v>>2]|0)+12>>2]|0)+((e[l+8>>
1]|0)*24|0);c[p>>2]=(c[(c[v>>2]|0)+16>>2]|0)+((e[l+12>>1]|0)<<3);c[m>>
;2]=0;while(1){b=c[p>>2]|0;if((c[m>>2]|0)>=(e[l+12>>1]|0|0))break;c[(c[(c[v>>2]|0)+
16>>2]|0)+(c[m>>2]<<3)>>2]=b;c[p>>2]=(c[p>>2]|0)+((e[l+8>>
1]|0)<<2);c[m>>2]=(c[m>>2]|0)+1}c[x>>2]=b;c[m>>2]=0;while(1){if((c[m>>
;2]|0)>=(e[l+8>>1]|0|0))break;c[(c[(c[v>>2]|0)+12>>2]|0)+((c[m>>2]|0)*24|0)>
x3e;2]=c[x>>2];c[x>>2]=(c[x>>2]|0)+5;c[m>>2]=(c[m>>2]|0)+1}h=Kc(c[r>>
;2]|0,(c[h>>2]|0)+(e[l+4>>1]|0)|0)|0;c[u>>2]=h;if(h|0){x=c[u>>2]|0;i=y;return x|0}c[t>
;>2]=c[(c[v>>2]|0)+12>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(e[l+8>>
;1]|0|0))break;h=le(c[r>>2]|0,5464,g)|0;c[u>>2]=h;if(h|0){j=50;break}c[(c[t>>2]|0)+16>>2
]=c[g>>2];c[(c[t>>2]|0)+4>>2]=c[g+4>>2];c[(c[t>>2]|0)+8>>2]=c[g+8>
;>2];c[(c[t>>2]|0)+12>>2]=c[g+12>>2];c[(c[t>>2]|0)+20>>2]=e[g+18>>
;1];a[c[c[t>>2]>>2]>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>24;a[(c[c[t
x3e;>2]>>2]|0)+1>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>16;a[(c[c[t>>
;2]>>2]|0)+2>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>8;a[(c[c[t>>2]>
;>2]|0)+3>>0]=c[(c[t>>2]|0)+16>>2];a[(c[c[t>>2]>>2]|0)+4>>0]=0;
c[t>>2]=(c[t>>2]|0)+24;c[m>>2]=(c[m>>2]|0)+1}if((j|0)==50){x=c[u>>2]|0;i=y;return
x|0}c[q>>2]=c[(c[v>>2]|0)+16>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(e[l
+12>>1]|0|0))break a;j=ee(c[r>>2]|0,4+((e[l+8>>1]|0)<<2)|0)|0;c[u>>2]=j;if(j|0
)break;j=(ie(c[r>>2]|0)|0)&65535;c[(c[q>>2]|0)+4>>2]=j;ie(c[r>>2]|0)|0;c[n>>
;2]=0;while(1){b=c[r>>2]|0;if((c[n>>2]|0)>=(e[l+8>>1]|0|0))break;j=je(b)|0;c[(c[c[q>>
;2]>>2]|0)+(c[n>>2]<<2)>>2]=j;c[n>>2]=(c[n>>2]|0)+1}ge(b);c[m>
x3e;2]=(c[m>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+8}x=c[u>>2]|0;i=y;return x|0}c[u>>2]=
8;x=c[u>>2]|0;i=y;return x|0}while(0);if(!(c[s>>2]|0)){x=c[u>>2]|0;i=y;return x|0}c[v>>2
]=bc(c[o>>2]|0,c[(c[(c[k>>2]|0)+712>>2]|0)+12>>2]|0,u)|0;if(c[u>>2]|0){x=c[u
x3e;>2]|0;i=y;return x|0}Ss(c[v>>2]|0,c[(c[(c[k>>2]|0)+712>>2]|0)+8>>2]|0,c[(c[(c[k
>>2]|0)+712>>2]|0)+12>>2]|0)|0;c[(c[v>>2]|0)+12>>2]=(c[v>>2]|0)+20;c
[(c[v>>2]|0)+16>>2]=(c[(c[v>>2]|0)+12>>2]|0)+((c[c[v>>2]>>2]|0)*24|0
);c[p>>2]=(c[(c[v>>2]|0)+16>>2]|0)+(c[(c[v>>2]|0)+8>>2]<<3);c[w>
;>2]=0;while(1){if((c[w>>2]|0)>>>0>=(c[(c[v>>2]|0)+8>>2]|0)>>
x3e;0)break;c[(c[(c[v>>2]|0)+16>>2]|0)+(c[w>>2]<<3)>>2]=c[p>>2];c[p
x3e;>2]=(c[p>>2]|0)+(c[c[v>>2]>>2]<<2);c[w>>2]=(c[w>>2]|0)+1}c[
t>>2]=c[(c[v>>2]|0)+12>>2];c[x>>2]=c[p>>2];c[w>>2]=0;while(1){if((c[
w>>2]|0)>>>0>=(c[c[v>>2]>>2]|0)>>>0)break;c[c[t>>2]
x3e;>2]=c[x>>2];b=c[t>>2]|0;do if((c[(c[t>>2]|0)+16>>2]|0)!=2003265652){d=c[t>
x3e;2]|0;if((c[b+16>>2]|0)==2003072104){c[d>>2]=10521;break}b=c[t>>2]|0;if((c[d+16>>2]|0
)==1869640570){c[b>>2]=10527;break}if((c[b+16>>2]|0)==1936486004)c[c[t>>2]>>2]=10539}else
c[b>>2]=12384;while(0);c[x>>2]=(c[x>>2]|0)+5;c[t>>2]=(c[t>>2]|0)+24;c[w>
x3e;2]=(c[w>>2]|0)+1}c[c[s>>2]>>2]=c[v>>2];x=c[u>>2]|0;i=y;return x|0}function
ye(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+64|0;b=o+56|0;n=o+52|0;l=o+48|0;d=o+44|0;f=o+40|0;j=o+36|0;
k=o+32|0;h=o+24|0;m=o+20|0;g=o;c[b>>2]=a;c[n>>2]=c[(c[b>>2]|0)+104>>2];c[l>>2]=
c[(c[n>>2]|0)+28>>2];c[d>>2]=c[(c[b>>2]|0)+712>>2];b=Wa[c[(c[b>>2]|0
)+508>>2]&31](c[b>>2]|0,1735811442,c[n>>2]|0,o+28|0)|0;c[f>>2]=b;if(b|0){n=c[f>
;>2]|0;i=o;return n|0}c[h>>2]=Mc(c[n>>2]|0)|0;b=le(c[n>>2]|0,5496,g)|0;c[f>>2]=b;if
(b|0){n=c[f>>2]|0;i=o;return n|0}c[(c[d>>2]|0)+24>>2]=e[g+6>>1];c[(c[d>>2]|0)+
32>>2]=e[g+12>>1];c[m>>2]=(c[h>>2]|0)+(c[g+16>>2]|0);if((c[g>>2]|0)==
65536?(e[g+4>>1]|0|0)==(c[c[(c[d>>2]|0)+8>>2]>>2]&65535|0):0){b=hc(c[l>>2
]|0,4,0,(c[(c[d>>2]|0)+32>>2]|0)+1|0,0,f)|0;c[(c[d>>2]|0)+36>>2]=b;if(c[f>>2]|
0){n=c[f>>2]|0;i=o;return n|0}a=c[n>>2]|0;b=(c[(c[d>>2]|0)+32>>2]|0)+1|0;if((e[g+14>
;>1]|0)&1|0){b=ee(a,b<<2)|0;c[f>>2]=b;if(b|0){n=c[f>>2]|0;i=o;return n|0}c[j>>
2]=0;while(1){if((c[j>>2]|0)>>>0>(c[(c[d>>2]|0)+32>>2]|0)>>>0)break
;b=c[m>>2]|0;b=b+(je(c[n>>2]|0)|0)|0;c[(c[(c[d>>2]|0)+36>>2]|0)+(c[j>>2]<
x3c;2)>>2]=b;c[j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|0)}else{b=ee(a,b<<1)|0;c[f>
x3e;2]=b;if(b|0){n=c[f>>2]|0;i=o;return n|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0
x3e;(c[(c[d>>2]|0)+32>>2]|0)>>>0)break;b=c[m>>2]|0;b=b+(((ie(c[n>>2]|0)|0
)&65535)<<1)|0;c[(c[(c[d>>2]|0)+36>>2]|0)+(c[j>>2]<<2)>>2]=b;c[
j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|0)}if(!(c[(c[d>>2]|0)+24>>2]|0)){n=c[f>>
;2]|0;i=o;return n|0}m=hc(c[l>>2]|0,4,0,_(e[g+4>>1]|0,c[(c[d>>2]|0)+24>>2]|0)|0,0,f)|0;c
[(c[d>>2]|0)+28>>2]=m;if(c[f>>2]|0){n=c[f>>2]|0;i=o;return n|0}m=Kc(c[n>>2]|0,(
c[h>>2]|0)+(c[g+8>>2]|0)|0)|0;c[f>>2]=m;if(m|0){n=c[f>>2]|0;i=o;return n|0}m=ee(c[n>
;>2]|0,(_(c[(c[d>>2]|0)+24>>2]|0,e[g+4>>1]|0)|0)<<1)|0;c[f>>2]=m;if(m|0){
n=c[f>>2]|0;i=o;return n|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[d>
;>2]|0)+24>>2]|0)>>>0)break;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>
;0>=(e[g+4>>1]|0)>>>0)break;l=(ie(c[n>>2]|0)|0)<<16>>16<<2
;m=_(c[j>>2]|0,e[g+4>>1]|0)|0;c[(c[(c[d>>2]|0)+28>>2]|0)+(m+(c[k>>2]|0)<
x3c;2)>>2]=l;c[k>>2]=(c[k>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|
0);n=c[f>>2]|0;i=o;return n|0}c[f>>2]=8;n=c[f>>2]|0;i=o;return n|0}function ze(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;n=i;i=i+32|0;h=n+24|0;j=n+20|0;l=n+16|0;f=n+12|0;g=n+8|0;k=n+4|0;m=n;c[h>>2]=d;c[j>
;>2]=e;c[f>>2]=c[(c[j>>2]|0)+28>>2];c[l>>2]=Wa[c[(c[h>>2]|0)+508>>
;2]&31](c[h>>2]|0,1668707360,c[j>>2]|0,g)|0;if(c[l>>2]|0){c[(c[h>>2]|0)+668>
x3e;2]=0;c[(c[h>>2]|0)+672>>2]=0;c[l>>2]=0;m=c[l>>2]|0;i=n;return m|0}c[(c[h>>
2]|0)+668>>2]=((c[g>>2]|0)>>>0)/2|0;g=hc(c[f>>2]|0,2,0,c[(c[h>>2]|0)+668
x3e;>2]|0,0,l)|0;c[(c[h>>2]|0)+672>>2]=g;if(c[l>>2]|0){m=c[l>>2]|0;i=n;return m|0}g
=ee(c[j>>2]|0,c[(c[h>>2]|0)+668>>2]<<1)|0;c[l>>2]=g;if(g|0){m=c[l>>2
]|0;i=n;return m|0}c[k>>2]=c[(c[h>>2]|0)+672>>2];c[m>>2]=(c[k>>2]|0)+(c[(c[h
x3e;>2]|0)+668>>2]<<1);while(1){d=c[j>>2]|0;if((c[k>>2]|0)>>>0>=(
c[m>>2]|0)>>>0)break;g=ie(d)|0;b[c[k>>2]>>1]=g;c[k>>2]=(c[k>>2]|
0)+2}ge(d);if(!(a[(c[h>>2]|0)+708>>0]|0)){m=c[l>>2]|0;i=n;return m|0}c[l>>2]=Ae(c[h>
;>2]|0,c[j>>2]|0)|0;m=c[l>>2]|0;i=n;return m|0}function Ae(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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=i;i=i+96|0;h=C+84|0;j=C+80|0;n=C+76|0;u=C+72|0;g=C+68|0;f
=C+64|0;y=C+60|0;v=C+56|0;o=C+52|0;p=C+48|0;s=C+44|0;B=C+40|0;r=C+36|0;q=C+32|0;l=C+28|0;x=C+24|0;t=C+20|0;m=C+16|0;z=C+12|0;A=C
+8|0;k=C+4|0;w=C;c[h>>2]=a;c[j>>2]=d;c[u>>2]=c[(c[j>>2]|0)+28>>2];c[B>>
;2]=0;c[r>>2]=0;c[q>>2]=0;c[l>>2]=c[(c[h>>2]|0)+712>>2];if(!(c[l>>2]|
0)){c[n>>2]=0;z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>
;>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>
;2]|0;i=C;return B|0}if(!(c[(c[h>>2]|0)+672>>2]|0)){c[n>>2]=0;z=c[u>>2]|0;A=c[B>>
;2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;
B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}c[n>>2]=Wa[c[(c[h>>2]|
0)+508>>2]&31](c[h>>2]|0,1668702578,c[j>>2]|0,f)|0;if(c[n>>2]|0){c[n>>2]=
0;z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[
r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}f
=ee(c[j>>2]|0,c[f>>2]|0)|0;c[n>>2]=f;if(f|0){c[n>>2]=0;z=c[u>>2]|0;A=c[B>
x3e;2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|
0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}c[g>>2]=(c[(c[j>>2]|
0)+32>>2]|0)-(c[c[j>>2]>>2]|0);a:do if((je(c[j>>2]|0)|0)==65536){c[B>>2]=hc(c[
u>>2]|0,4,0,c[c[l>>2]>>2]|0,0,n)|0;if(((c[n>>2]|0)==0?(c[r>>2]=hc(c[u>>
;2]|0,4,0,c[c[l>>2]>>2]|0,0,n)|0,(c[n>>2]|0)==0):0)?(c[q>>2]=hc(c[u>>2]|0,4,0,
c[c[l>>2]>>2]|0,0,n)|0,(c[n>>2]|0)==0):0){c[y>>2]=(ie(c[j>>2]|0)|0)&65535
;g=c[g>>2]|0;c[v>>2]=g+((ie(c[j>>2]|0)|0)&65535);c[p>>2]=0;while(1){if((c[p>
x3e;2]|0)>>>0>=(c[y>>2]&4095)>>>0)break a;c[z>>2]=(ie(c[j>>
;2]|0)|0)&65535;c[A>>2]=(ie(c[j>>2]|0)|0)&65535;do if(c[A>>2]&32768|0){c[s>>
;2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[c[l>>2]>>2]|0)>>>0)break;
g=(ie(c[j>>2]|0)|0)<<16>>16<<2;c[(c[B>>2]|0)+(c[s>>2]<<2)
x3e;>2]=g;c[s>>2]=(c[s>>2]|0)+1}b:do if(c[A>>2]&16384|0){c[s>>2]=0;while(1){if
((c[s>>2]|0)>>>0>=(c[c[l>>2]>>2]|0)>>>0)break;g=(ie(c[j>
x3e;2]|0)|0)<<16>>16<<2;c[(c[r>>2]|0)+(c[s>>2]<<2)>>2]=g;c
[s>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[c[l
x3e;>2]>>2]|0)>>>0)break b;g=(ie(c[j>>2]|0)|0)<<16>>16<<2;
c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]=g;c[s>>2]=(c[s>>2]|0)+1}}while(0);c[k
>>2]=Be(c[l>>2]|0,c[A>>2]&65535,c[B>>2]|0,c[r>>2]|0,c[q>>2]|0)|
0;if(c[k>>2]|0?c[A>>2]&8192|0:0){c[o>>2]=(c[(c[j>>2]|0)+32>>2]|0)-(c[c[j
x3e;>2]>>2]|0);c[(c[j>>2]|0)+32>>2]=(c[c[j>>2]>>2]|0)+(c[v>>2]|
0);c[t>>2]=Ce(c[j>>2]|0,x)|0;if(!(c[x>>2]|0))a=c[(c[h>>2]|0)+668>>2]|0;else a=
c[x>>2]|0;c[m>>2]=De(c[j>>2]|0,a)|0;c:do if(!((c[t>>2]|0)==0|(c[m>>2]|0)==0)){
g=(c[t>>2]|0)==(-1|0);c[s>>2]=0;if(g)while(1){if((c[s>>2]|0)>>>0>=(c[(c[h>
;>2]|0)+668>>2]|0)>>>0)break c;g=b[(c[(c[h>>2]|0)+672>>2]|0)+(c[s>>2
]<<1)>>1]|0;g=g+(Mb(b[(c[m>>2]|0)+(c[s>>2]<<1)>>1]|0,c[k>>
2]|0)|0)&65535;b[(c[(c[h>>2]|0)+672>>2]|0)+(c[s>>2]<<1)>>1]=g;c[s>
x3e;2]=(c[s>>2]|0)+1}else while(1){if((c[s>>2]|0)>>>0>=(c[x>>2]|0)>>
x3e;0)break c;c[w>>2]=e[(c[t>>2]|0)+(c[s>>2]<<1)>>1];g=b[(c[(c[h>>2]|
0)+672>>2]|0)+(c[w>>2]<<1)>>1]|0;g=g+(Mb(b[(c[m>>2]|0)+(c[s>>2]<
;<1)>>1]|0,c[k>>2]|0)|0)&65535;b[(c[(c[h>>2]|0)+672>>2]|0)+(c[w>>2]
x3c;<1)>>1]=g;c[s>>2]=(c[s>>2]|0)+1}}while(0);if((c[t>>2]|0)!=(-1|0)){Fb(c[u>
x3e;2]|0,c[t>>2]|0);c[t>>2]=0}Fb(c[u>>2]|0,c[m>>2]|0);c[m>>2]=0;c[v>>
;2]=(c[v>>2]|0)+(c[z>>2]|0);c[(c[j>>2]|0)+32>>2]=(c[c[j>>2]>>2]|0)+(
c[o>>2]|0);break}c[v>>2]=(c[v>>2]|0)+(c[z>>2]|0)}else{d:do if(c[A>>2]&16384
|0){c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=c[c[l>>2]>>2]<<
1>>>0)break d;ie(c[j>>2]|0)|0;c[s>>2]=(c[s>>2]|0)+1}}while(0);c[v>>2]=(c[
v>>2]|0)+(c[z>>2]|0)}while(0);c[p>>2]=(c[p>>2]|0)+1}}}else c[n>>2]=0;while(0);
ge(c[j>>2]|0);z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>
;>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>
;2]|0;i=C;return B|0}function Be(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;r=i;i=i+32|0;j
=r+24|0;k=r+28|0;l=r+20|0;m=r+16|0;n=r+12|0;o=r+8|0;q=r+4|0;p=r;c[j>>2]=a;b[k>>1]=d;c[l>>2]=f;c[m
x3e;>2]=g;c[n>>2]=h;c[q>>2]=65536;c[o>>2]=0;a:while(1){if((c[o>>2]|0)>>
x3e;0>=(c[c[j>>2]>>2]|0)>>>0){a=19;break}do if(c[(c[l>>2]|0)+(c[o>>2
]<<2)>>2]|0){if(!(c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>
2]|0)){a=9;break a}if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)<0?(c
[(c[l>>2]|0)+(c[o>>2]<<2)>>2]|0)>0:0){a=9;break a}if((c[(c[(c[j>>2]|0)+4
x3e;>2]|0)+(c[o>>2]<<2)>>2]|0)>0?(c[(c[l>>2]|0)+(c[o>>2]<<
2)>>2]|0)<0:0){a=9;break a}if(!((e[k>>1]|0)&16384)){f=c[(c[(c[j>>2]|0)+4>>2]|0
)+(c[o>>2]<<2)>>2]|0;c[q>>2]=xb(c[q>>2]|0,(c[(c[(c[j>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<2)>>2]|0)>0?f:0-f|0,65536)|0;break}if((c[(c[(c[j>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<2)>>2]|0)<=(c[(c[m>>2]|0)+(c[o>>2]<<2)>
;>2]|0)){a=14;break a}if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)
x3e;=(c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]|0)){a=14;break a}a=c[o>>2]|0;if((c[(c[(c[
j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)<(c[(c[l>>2]|0)+(c[o>
x3e;2]<<2)>>2]|0)){c[p>>2]=xb((c[(c[(c[j>>2]|0)+4>>2]|0)+(a<<2)>
;>2]|0)-(c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]|0)|0,65536,(c[(c[l>>2]|0)+(c[o>
;>2]<<2)>>2]|0)-(c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]|0)|0)|0;c[q>
;>2]=xb(c[q>>2]|0,c[p>>2]|0,65536)|0;break}else{c[p>>2]=xb((c[(c[n>>2]|0)+(a<
x3c;2)>>2]|0)-(c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)|0,65536
,(c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[l>>2]|0)+(c[o>>2]<<
;2)>>2]|0)|0)|0;c[q>>2]=xb(c[q>>2]|0,c[p>>2]|0,65536)|0;break}}while(0);c[o>>2
]=(c[o>>2]|0)+1}if((a|0)==9){c[q>>2]=0;q=c[q>>2]|0;i=r;return q|0}else if((a|0)==14){c[q>>
;2]=0;q=c[q>>2]|0;i=r;return q|0}else if((a|0)==19){q=c[q>>2]|0;i=r;return q|0}return 0}function Ce(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;p=i;i=i+48|0;e=p+40|0;f=p+36|0;q=p+32|0;n=p+28|0;m=p+24|0;o=p+20|0;
j=p+16|0;k=p+12|0;h=p+8|0;l=p+4|0;g=p;c[f>>2]=a;c[q>>2]=d;c[l>>2]=c[(c[f>>2]|0)+28>
x3e;2];c[g>>2]=0;c[g>>2]=c[g>>2];a=(he(c[f>>2]|0)|0)&255;c[m>>2]=a;c[c[q
x3e;>2]>>2]=a;if(!(c[m>>2]|0)){c[e>>2]=-1;q=c[e>>2]|0;i=p;return q|0}if(c[m>
x3e;2]&128|0){q=(he(c[f>>2]|0)|0)&255;c[m>>2]=q|(c[m>>2]&127)<<8}c[n>
;>2]=hc(c[l>>2]|0,2,0,c[m>>2]|0,0,g)|0;if(c[g>>2]|0){c[e>>2]=0;q=c[e>>2]|
0;i=p;return q|0}c[j>>2]=0;a:while(1){if((c[j>>2]|0)>=(c[m>>2]|0))break;c[o>>2]=(he
(c[f>>2]|0)|0)&255;if(c[o>>2]&128|0){c[o>>2]=c[o>>2]&127;q=ie(c[f>
x3e;2]|0)|0;a=c[j>>2]|0;c[j>>2]=a+1;b[(c[n>>2]|0)+(a<<1)>>1]=q;c[h>>
2]=q&65535;if((c[o>>2]|0)<1)break;if(((c[j>>2]|0)+(c[o>>2]|0)|0)>=(c[m>>2
]|0))break;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[o>>2]|0))continue a;a=(ie(c[f>>2]|
0)|0)&65535;a=(c[h>>2]|0)+a|0;c[h>>2]=a;q=c[j>>2]|0;c[j>>2]=q+1;b[(c[n>>2
]|0)+(q<<1)>>1]=a;c[k>>2]=(c[k>>2]|0)+1}}else{q=(he(c[f>>2]|0)|0)&255;a=c
[j>>2]|0;c[j>>2]=a+1;b[(c[n>>2]|0)+(a<<1)>>1]=q;c[h>>2]=q&65535
;if((c[o>>2]|0)<1)break;if(((c[j>>2]|0)+(c[o>>2]|0)|0)>=(c[m>>2]|0))break;c[k
x3e;>2]=0;while(1){if((c[k>>2]|0)>=(c[o>>2]|0))continue a;a=(he(c[f>>2]|0)|0)&255;a
=(c[h>>2]|0)+a|0;c[h>>2]=a;q=c[j>>2]|0;c[j>>2]=q+1;b[(c[n>>2]|0)+(q<<
;1)>>1]=a;c[k>>2]=(c[k>>2]|0)+1}}}c[e>>2]=c[n>>2];q=c[e>>2]|0;i=p;return
q|0}function De(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;n=i;i=i+48|0;k=n+32|0;e=n+28|0;f=n+24|0;l=n+20|0;j
=n+16|0;g=n+12|0;h=n+8|0;m=n+4|0;o=n;c[e>>2]=a;c[f>>2]=d;c[l>>2]=0;c[m>>2]=c[(c[e>
x3e;2]|0)+28>>2];c[o>>2]=0;c[o>>2]=c[o>>2];c[l>>2]=hc(c[m>>2]|0,2,0,
c[f>>2]|0,0,o)|0;if(c[o>>2]|0){c[k>>2]=0;o=c[k>>2]|0;i=n;return o|0}c[g>>2]=0;
while(1){if((c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0){e=19;break}c[j>>2
]=(he(c[e>>2]|0)|0)&255;a:do if(!(c[j>>2]&128|0)){o=(c[j>>2]&64|0)!=0;c[h>>
;2]=0;if(o)while(1){if((c[h>>2]|0)>>>0>(c[j>>2]&63)>>>0)break a;if((
c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break a;a=ie(c[e>>2]|0)|0;o=c[g
>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=a;c[h>>2]=(c[h>>
;2]|0)+1}else while(1){if((c[h>>2]|0)>>>0>(c[j>>2]&63)>>>0)break a;if
((c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break a;a=(he(c[e>>2]|0)|0)
x3c;<24>>24;o=c[g>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=a;
c[h>>2]=(c[h>>2]|0)+1}}else{c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>(c
[j>>2]&63)>>>0)break a;if((c[g>>2]|0)>>>0>=(c[f>>2]|0)>
;>>0)break a;o=c[g>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=0;c[h
x3e;>2]=(c[h>>2]|0)+1}}while(0);if((c[h>>2]|0)>>>0<=(c[j>>2]&63)>
;>>0){e=18;break}}if((e|0)==18){Fb(c[m>>2]|0,c[l>>2]|0);c[l>>2]=0;c[k>>2]=0;o=
c[k>>2]|0;i=n;return o|0}else if((e|0)==19){c[k>>2]=c[l>>2];o=c[k>>2]|0;i=n;return o|0}return
0}function Ee(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,t=0,u=0;u=i;i=i+48|0;g=u+44|0;h=u+40
|0;j=u+36|0;n=u+32|0;s=u+28|0;m=u+24|0;r=u+20|0;o=u+16|0;p=u+12|0;k=u+8|0;l=u+4|0;q=u;c[g>>2]=b;c[h>>2]=d;c[
j>>2]=f;c[n>>2]=0;c[s>>2]=0;c[q>>2]=c[(c[g>>2]|0)+100>>2];if((c[(c[g
>>2]|0)+712>>2]|0)==0?(d=xe(c[g>>2]|0,0)|0,c[n>>2]=d,d|0):0){r=c[q>>2]|0;t=c[s
>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}c[m>>2]=c[(c[g>>2]|0)+712
x3e;>2];c[r>>2]=c[(c[m>>2]|0)+8>>2];if((c[h>>2]|0)!=(c[c[r>>2]>>
;2]|0)){c[n>>2]=6;r=c[q>>2]|0;t=c[s>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return
t|0}c[s>>2]=hc(c[q>>2]|0,4,0,c[c[r>>2]>>2]|0,0,n)|0;if(c[n>>2]|0){r=c[q>
x3e;2]|0;t=c[s>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}c[k>>2]=c[(c[r>
x3e;2]|0)+12>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[c[r>>2]
x3e;>2]|0)>>>0)break;if((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|0)>(c[(
c[k>>2]|0)+12>>2]|0)){t=10;break}if((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|
0)<(c[(c[k>>2]|0)+4>>2]|0)){t=10;break}do if((c[(c[j>>2]|0)+(c[o>>2]<<2)
x3e;>2]|0)>=(c[(c[k>>2]|0)+8>>2]|0)){f=c[o>>2]|0;if((c[(c[k>>2]|0)+12>>
;2]|0)==(c[(c[k>>2]|0)+8>>2]|0)){c[(c[s>>2]|0)+(f<<2)>>2]=0;break}else{d=xb((c
[(c[j>>2]|0)+(f<<2)>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0,65536,(c[(c[k>>
2]|0)+12>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0)|0;c[(c[s>>2]|0)+(c[o>>2]<<
;2)>>2]=d;break}}else{d=0-(xb((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[k>
x3e;2]|0)+8>>2]|0)|0,65536,(c[(c[k>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0)|
0)|0;c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]=d}while(0);c[o>>2]=(c[o>>2]|0)+1
;c[k>>2]=(c[k>>2]|0)+24}if((t|0)==10){c[n>>2]=6;r=c[q>>2]|0;t=c[s>>2]|0;Fb(r,t
);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}if(!(a[(c[m>>2]|0)+16>>0]|0))Fe(c[g>>2]|
0);a:do if(c[(c[m>>2]|0)+20>>2]|0){c[l>>2]=c[(c[m>>2]|0)+20>>2];c[o>>
;2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[c[r>>2]>>2]|0)>>>0)break
a;c[p>>2]=1;while(1){if((c[p>>2]|0)>>>0>=(e[c[l>>2]>>1]|0)>>
;>0)break;if((c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]|0)<(c[(c[(c[l>>2]|0)+4
x3e;>2]|0)+(c[p>>2]<<3)>>2]|0)){t=25;break}c[p>>2]=(c[p>>2]|0)+1}if((t|0)==
25){t=0;m=xb((c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[(c[l>>2]|0)+4>>
;2]|0)+((c[p>>2]|0)-1<<3)>>2]|0)|0,65536,(c[(c[(c[l>>2]|0)+4>>2]|0)+(c[p>
x3e;2]<<3)>>2]|0)-(c[(c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1<<3)>
;>2]|0)|0)|0;m=xb(m,(c[(c[(c[l>>2]|0)+4>>2]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(
c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1<<3)+4>>2]|0)|0,65536)|0;c[(c[s>>
;2]|0)+(c[o>>2]<<2)>>2]=m+(c[(c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1
x3c;<3)+4>>2]|0)}c[o>>2]=(c[o>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+8}}while(0);c[
n>>2]=we(c[g>>2]|0,c[h>>2]|0,c[s>>2]|0)|0;r=c[q>>2]|0;t=c[s>>2]|0;Fb
(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|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,p=0,
q=0,r=0;q=i;i=i+48|0;r=q+40|0;p=q+36|0;o=q+32|0;m=q+28|0;j=q+24|0;g=q+20|0;l=q+16|0;f=q+12|0;h=q+8|0;n=q+4|0;k=q;c[r>>
2]=d;c[p>>2]=c[(c[r>>2]|0)+104>>2];c[o>>2]=c[(c[p>>2]|0)+28>>2];c[m
x3e;>2]=c[(c[r>>2]|0)+712>>2];c[g>>2]=0;c[g>>2]=c[g>>2];a[(c[m>>
;2]|0)+16>>0]=1;d=Wa[c[(c[r>>2]|0)+508>>2]&31](c[r>>2]|0,1635148146,c[p>>
2]|0,k)|0;c[g>>2]=d;if(d|0){i=q;return}r=ee(c[p>>2]|0,c[k>>2]|0)|0;c[g>>2]=r;if(r|0){i=q
;return}c[l>>2]=je(c[p>>2]|0)|0;c[f>>2]=je(c[p>>2]|0)|0;a:do if(((c[l>>2]|0)==
65536?(c[f>>2]|0)==(c[c[(c[m>>2]|0)+8>>2]>>2]|0):0)?(r=hc(c[o>>2]|0,8,0,c[f>
;>2]|0,0,g)|0,c[(c[m>>2]|0)+20>>2]=r,(c[g>>2]|0)==0):0){c[j>>2]=c[(c[m>>2
]|0)+20>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[f>>2]|0))break a;r=ie(c[p>
x3e;2]|0)|0;b[c[j>>2]>>1]=r;r=hc(c[o>>2]|0,8,0,e[c[j>>2]>>1]|0,0,g)|0;c[(c[j
x3e;>2]|0)+4>>2]=r;if(c[g>>2]|0)break;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(e[c[
j>>2]>>1]|0|0))break;r=(ie(c[p>>2]|0)|0)<<16>>16<<2;c[(c[(c[j>
x3e;2]|0)+4>>2]|0)+(c[n>>2]<<3)>>2]=r;r=(ie(c[p>>2]|0)|0)<<16>
x3e;16<<2;c[(c[(c[j>>2]|0)+4>>2]|0)+(c[n>>2]<<3)+4>>2]=r;c[n>
x3e;2]=(c[n>>2]|0)+1}c[h>>2]=(c[h>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+8}c[n>>
;2]=(c[h>>2]|0)-1;while(1){f=c[o>>2]|0;if((c[n>>2]|0)<0)break;Fb(f,c[(c[(c[m>>2]|0)+
20>>2]|0)+(c[n>>2]<<3)+4>>2]|0);c[(c[(c[m>>2]|0)+20>>2]|0)+(c[n>
;>2]<<3)+4>>2]=0;c[n>>2]=(c[n>>2]|0)+-1}Fb(f,c[(c[m>>2]|0)+20>>
2]|0);c[(c[m>>2]|0)+20>>2]=0;c[(c[m>>2]|0)+20>>2]=0}while(0);ge(c[p>>2]|0);i=q
;return}function Ge(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;p=i;i=i+32|0;h=p+28|0;j=p+24|0;g=p+20|0;k=p
+16|0;n=p+12|0;o=p+8|0;l=p+4|0;m=p;c[j>>2]=a;c[g>>2]=e;c[k>>2]=f;c[o>>2]=0;c[n>>
;2]=0;do if((c[g>>2]|0)>>>0<(c[(c[j>>2]|0)+732>>2]|0)>>>0){a=c[(
c[j>>2]|0)+736>>2]|0;f=c[g>>2]|0;if(b[(c[j>>2]|0)+160+50>>1]|0){c[l>>
;2]=a+(f<<2);c[m>>2]=(c[(c[j>>2]|0)+736>>2]|0)+(c[(c[j>>2]|0)+732>>2
]<<2);c[l>>2]=(c[l>>2]|0)+4;c[n>>2]=d[(c[l>>2]|0)+-4>>0]<<
24|d[(c[l>>2]|0)+-4+1>>0]<<16|d[(c[l>>2]|0)+-4+2>>0]<<8|d[(c[l>
x3e;2]|0)+-4+3>>0]<<0;c[o>>2]=c[n>>2];if(((c[l>>2]|0)+4|0)>>>0
x3e;(c[m>>2]|0)>>>0)break;c[l>>2]=(c[l>>2]|0)+4;c[o>>2]=d[(c[l>>
;2]|0)+-4>>0]<<24|d[(c[l>>2]|0)+-4+1>>0]<<16|d[(c[l>>2]|0)+-4+2>
;>0]<<8|d[(c[l>>2]|0)+-4+3>>0]<<0;break}c[l>>2]=a+(f<<1);c[m>
;>2]=(c[(c[j>>2]|0)+736>>2]|0)+(c[(c[j>>2]|0)+732>>2]<<1);c[l>>
2]=(c[l>>2]|0)+2;c[n>>2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>
x3e;2]|0)+-2+1>>0]&65535)<<0)&65535;c[o>>2]=c[n>>2];if(((c[l>>2]|0)+
2|0)>>>0<=(c[m>>2]|0)>>>0){c[l>>2]=(c[l>>2]|0)+2;c[o>>
;2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>>2]|0)+-2+1>>0]&65535)
x3c;<0)&65535}c[n>>2]=c[n>>2]<<1;c[o>>2]=c[o>>2]<<1}while(
0);if((c[n>>2]|0)>>>0>=(c[(c[j>>2]|0)+704>>2]|0)>>>0){c[c[k>
;>2]>>2]=0;c[h>>2]=0;o=c[h>>2]|0;i=p;return o|0}if((c[o>>2]|0)>>>0
x3e;=(c[(c[j>>2]|0)+704>>2]|0)>>>0)c[o>>2]=c[(c[j>>2]|0)+704>>2
];if((c[o>>2]|0)>>>0>=(c[n>>2]|0)>>>0)c[c[k>>2]>>2]=(
c[o>>2]|0)-(c[n>>2]|0);else c[c[k>>2]>>2]=(c[(c[j>>2]|0)+704>>2]|0)-(
c[n>>2]|0);c[h>>2]=c[n>>2];o=c[h>>2]|0;i=p;return o|0}function He(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;r=i;i=i+48|0;g=r+36|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0
;m=r+16|0;n=r+12|0;s=r+8|0;p=r+4|0;o=r;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>
x3e;2]=f;c[o>>2]=c[j>>2];c[s>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+4>>2];c[
p>>2]=Ud(c[s>>2]|0,11340)|0;do if(c[p>>2]|0){s=Kc(c[h>>2]|0,0)|0;c[n>>2]=s;if((
s|0)==0?(c[n>>2]=Za[c[(c[p>>2]|0)+4>>2]&31](c[h>>2]|0,c[o>>2]|0,c[k>
x3e;2]|0,c[l>>2]|0,c[m>>2]|0)|0,(c[n>>2]|0)==0):0){if(((c[(c[o>>2]|0)+148>>2]|
0)!=65536?(c[(c[o>>2]|0)+148>>2]|0)!=131072:0)?(c[(c[o>>2]|0)+148>>2]|0)!=1953658213:0){
q=24;break}s=(c[j>>2]|0)+8|0;c[s>>2]=c[s>>2]|2048;if((c[k>>2]|0)<0){c[g>>
2]=0;s=c[g>>2]|0;i=r;return s|0}c[n>>2]=Za[c[(c[p>>2]|0)+8>>2]&31](c[h>>2
]|0,c[o>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(!(c[n>>2]|0)){if((Ie(c[j>
;>2]|0)|0)<<24>>24){s=(c[j>>2]|0)+8|0;c[s>>2]=c[s>>2]|8192}c[n>>
;2]=Ne(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0)){if(c[(c[j>>2]|0)+8>>2]&1|0
){if(!(c[(c[(c[j>>2]|0)+128>>2]|0)+52>>2]|0))c[n>>2]=Oe(c[o>>2]|0,c[h>>
;2]|0)|0;if(!(c[n>>2]|0))c[n>>2]=ze(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0))c[n
>>2]=Pe(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0))c[n>>2]=Qe(c[o>>2]|0,
c[h>>2]|0)|0}Re(c[o>>2]|0)}}}}else q=24;while(0);if((q|0)==24)c[n>>2]=2;c[g>>2]=c[n>
;>2];s=c[g>>2]|0;i=r;return s|0}function Ie(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[e>>2]=b
;do if(c[e>>2]|0){b=c[e>>2]|0;if(c[(c[e>>2]|0)+20>>2]|0)if((Je(c[b+20>>2]|0)|0
)<<24>>24){a[d>>0]=1;break}else{a[d>>0]=0;break}else if((Ke(b)|0)<<24>>
;24){a[d>>0]=1;break}else{a[d>>0]=0;break}}else a[d>>0]=0;while(0);i=f;return a[d>>0]|0}
function Je(b){b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;f=g+8|0;d=g+4|0;e=g;c[d>>2]=b;c[e>>2]=0;while(1){if((c
[e>>2]|0)>=8){d=6;break}if(vs(c[d>>2]|0,10569+((c[e>>2]|0)*17|0)|0)|0){d=4;break}c[e>>
;2]=(c[e>>2]|0)+1}if((d|0)==4){a[f>>0]=1;f=a[f>>0]|0;i=g;return f|0}else if((d|0)==6){a[f>>
;0]=0;f=a[f>>0]|0;i=g;return f|0}return 0}function Ke(b){b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+48|0;d=
n+40|0;f=n+36|0;g=n+32|0;l=n+12|0;h=n+8|0;j=n+4|0;k=n;c[f>>2]=b;c[l>>2]=0;c[l+4>>2]=0;c[l+8>
x3e;2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[h>>2]=0;a:while(1){if((c[h>>2]|0)>=(e[(c[f>
;>2]|0)+152>>1]|0|0)){m=18;break}c[g>>2]=0;b=c[(c[(c[f>>2]|0)+156>>2]|0)+(c[h>
x3e;2]<<4)>>2]|0;b:do if((b|0)>=1718642541)if((b|0)<1886545264){switch(b|0){case 1718642541:break;
default:break b}c[k>>2]=1;m=7;break}else{switch(b|0){case 1886545264:break;default:break b}c[k>>2]=2;m=7;break
}else{switch(b|0){case 1668707360:break;default:break b}c[k>>2]=0;m=7}while(0);c:do if((m|0)==7){m=0;c[j>>2]=
0;while(1){if((c[j>>2]|0)>=5)break c;if((c[(c[(c[f>>2]|0)+156>>2]|0)+(c[h>>2]<
x3c;4)+12>>2]|0)==(c[448+((c[j>>2]|0)*24|0)+(c[k>>2]<<3)+4>>2]|0)){if(!(c[g>
;>2]|0))c[g>>2]=Le(c[f>>2]|0,c[h>>2]&65535)|0;if((c[448+((c[j>>2]|0)*24|0)+(c[
k>>2]<<3)>>2]|0)==(c[g>>2]|0)){b=l+(c[j>>2]<<2)|0;c[b>>2]=(
c[b>>2]|0)+1}if((c[l+(c[j>>2]<<2)>>2]|0)==3){m=15;break a}}c[j>>2]=(c[j>
x3e;2]|0)+1}}while(0);c[h>>2]=(c[h>>2]|0)+1}if((m|0)==15){a[d>>0]=1;m=a[d>>0]|0;i=n;return
m|0}else if((m|0)==18){a[d>>0]=0;m=a[d>>0]|0;i=n;return m|0}return 0}function Le(a,d){a=a|0;d=d|0;var f=0,g
=0,h=0,j=0;j=i;i=i+16|0;f=j+4|0;g=j;h=j+8|0;c[g>>2]=a;b[h>>1]=d;if(c[(c[(c[g>>2]|0)+156>>
;2]|0)+((e[h>>1]|0)<<4)+4>>2]|0){c[f>>2]=c[(c[(c[g>>2]|0)+156>>2]|0)+((
e[h>>1]|0)<<4)+4>>2];d=c[f>>2]|0;i=j;return d|0}if(!(c[(c[g>>2]|0)+508>
x3e;2]|0)){c[f>>2]=0;d=c[f>>2]|0;i=j;return d|0}if(Wa[c[(c[g>>2]|0)+508>>2]&31](c[g
>>2]|0,c[(c[(c[g>>2]|0)+156>>2]|0)+((e[h>>1]|0)<<4)>>2]|0,c[(c[g>
;>2]|0)+104>>2]|0,0)|0){c[f>>2]=Me(c[(c[g>>2]|0)+104>>2]|0,c[(c[(c[g>>2]|
0)+156>>2]|0)+((e[h>>1]|0)<<4)+12>>2]|0)|0;d=c[f>>2]|0;i=j;return d|0}else{c[f
>>2]=0;d=c[f>>2]|0;i=j;return d|0}return 0}function Me(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+
32|0;d=j+20|0;e=j+16|0;f=j+12|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;a=ee(c[e>>2]|0
,c[f>>2]|0)|0;c[j+8>>2]=a;if(a|0){c[d>>2]=0;h=c[d>>2]|0;i=j;return h|0}while(1){if((c[f
x3e;>2]|0)>>>0<=3)break;a=je(c[e>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+a;c[f>
x3e;2]=(c[f>>2]|0)-4}c[h>>2]=3;while(1){b=c[e>>2]|0;if((c[f>>2]|0)>>>0<
;=0)break;a=(he(b)|0)&255;c[g>>2]=(c[g>>2]|0)+(a<<(c[h>>2]<<3));c[f>
x3e;2]=(c[f>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+-1}ge(b);c[d>>2]=c[g>>2];h=c[d>
x3e;2]|0;i=j;return h|0}function Ne(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;s=i;i=i+48|0;f=s+44
|0;g=s+40|0;h=s+36|0;j=s+32|0;l=s+28|0;r=s+24|0;m=s+20|0;n=s+16|0;q=s+12|0;p=s+8|0;o=s+4|0;k=s;c[g>>2]=b;c[h>>
;2]=e;c[l>>2]=c[(c[h>>2]|0)+28>>2];c[j>>2]=Wa[c[(c[g>>2]|0)+508>>2]
x26;31](c[g>>2]|0,1751412088,c[h>>2]|0,q)|0;if((c[j>>2]|0)!=0|(c[q>>2]|0)>>>
;0<8){c[f>>2]=0;r=c[f>>2]|0;i=s;return r|0}e=de(c[h>>2]|0,c[q>>2]|0,(c[g>>
;2]|0)+740|0)|0;c[j>>2]=e;do if(!e){c[o>>2]=c[(c[g>>2]|0)+740>>2];c[k>>2]=(c[o
>>2]|0)+(c[q>>2]|0);c[o>>2]=(c[o>>2]|0)+2;c[r>>2]=(((d[(c[o>>2]|0)+-
2>>0]|0)&65535)<<8|((d[(c[o>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535
;c[o>>2]=(c[o>>2]|0)+2;c[n>>2]=(((d[(c[o>>2]|0)+-2>>0]|0)&65535)<<
;8|((d[(c[o>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[o>>2]=(c[o>>2]|0)+
4;c[p>>2]=(d[(c[o>>2]|0)+-4>>0]|0)<<24|(d[(c[o>>2]|0)+-4+1>>0]|0)<
;<16|(d[(c[o>>2]|0)+-4+2>>0]|0)<<8|(d[(c[o>>2]|0)+-4+3>>0]|0)<<
0;if((c[p>>2]|0)>>>0>=4294901760)c[p>>2]=c[p>>2]&65535;if(!((c[r>>
;2]|0)!=0|(c[n>>2]|0)>>>0>255|(c[p>>2]|0)>>>0>65537)){r=hc(c[l>
x3e;2]|0,1,0,c[n>>2]|0,0,j)|0;c[(c[g>>2]|0)+756>>2]=r;if(!(c[j>>2]|0)){c[m>>2]=
0;while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;if(((c[o>>
2]|0)+(c[p>>2]|0)|0)>>>0>(c[k>>2]|0)>>>0)break;a[(c[(c[g>>2]|0)+
756>>2]|0)+(c[m>>2]|0)>>0]=a[c[o>>2]>>0]|0;c[o>>2]=(c[o>>2
]|0)+(c[p>>2]|0);c[m>>2]=(c[m>>2]|0)+1}c[(c[g>>2]|0)+748>>2]=c[m>>2];
c[(c[g>>2]|0)+744>>2]=c[q>>2];c[(c[g>>2]|0)+752>>2]=c[p>>2];break}}else
c[j>>2]=3;fe(c[h>>2]|0,(c[g>>2]|0)+740|0);c[(c[g>>2]|0)+744>>2]=0}while(0);c[
f>>2]=c[j>>2];r=c[f>>2]|0;i=s;return r|0}function Oe(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,q=0,r=0;r=i;i=i+48|0;g=r+40|0;h=r+36|0;m=r+32|0;q=r+28|0;f=r+24|0;o=r+20|0;l=r+16|0;n=r+12|0;p=r+8|0;k=r+4|0;j=r
;c[g>>2]=a;c[h>>2]=d;c[m>>2]=Wa[c[(c[g>>2]|0)+508>>2]&31](c[g>>
2]|0,1735162214,c[h>>2]|0,(c[g>>2]|0)+704|0)|0;if((c[m>>2]|0)!=142){if(c[m>>2]|0){q=c[m
x3e;>2]|0;i=r;return q|0}}else c[(c[g>>2]|0)+704>>2]=0;c[m>>2]=Wa[c[(c[g>>2]|0)+508
>>2]&31](c[g>>2]|0,1819239265,c[h>>2]|0,q)|0;if(c[m>>2]|0){c[m>>2]=144;q=
c[m>>2]|0;i=r;return q|0}do if(b[(c[g>>2]|0)+160+50>>1]|0){c[f>>2]=2;if((c[q>>
2]|0)>>>0<262144){c[(c[g>>2]|0)+732>>2]=(c[q>>2]|0)>>>(c[f>
;>2]|0);break}c[m>>2]=8;q=c[m>>2]|0;i=r;return q|0}else{c[f>>2]=1;if((c[q>>2]|0)>
;>>0<131072){c[(c[g>>2]|0)+732>>2]=(c[q>>2]|0)>>>(c[f>>2]|
0);break}c[m>>2]=8;q=c[m>>2]|0;i=r;return q|0}while(0);if((c[(c[g>>2]|0)+732>>2]|0)!=(c[(
c[g>>2]|0)+16>>2]|0)?(c[(c[g>>2]|0)+732>>2]|0)>>>0<(c[(c[g>>
;2]|0)+16>>2]|0)>>>0:0){c[o>>2]=c[(c[g>>2]|0)+16>>2]<<c[f>
x3e;2];c[l>>2]=c[(c[g>>2]|0)+156>>2];c[n>>2]=(c[l>>2]|0)+(e[(c[g>>2]|
0)+152>>1]<<4);c[p>>2]=Mc(c[h>>2]|0)|0;c[k>>2]=2147483647;while(1){a=c[l>
x3e;2]|0;if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[j>>2]=(c[a
+8>>2]|0)-(c[p>>2]|0);if((c[j>>2]|0)>0?(c[j>>2]|0)<(c[k>>2]|0):0)c[k
>>2]=c[j>>2];c[l>>2]=(c[l>>2]|0)+16}if((a|0)==(c[n>>2]|0))c[k>>2]=(c
[(c[h>>2]|0)+4>>2]|0)-(c[p>>2]|0);if((c[o>>2]|0)<=(c[k>>2]|0)){c[(c[g>
;>2]|0)+732>>2]=c[(c[g>>2]|0)+16>>2];c[q>>2]=c[o>>2]}}c[m>>2]=de
(c[h>>2]|0,c[q>>2]|0,(c[g>>2]|0)+736|0)|0;q=c[m>>2]|0;i=r;return q|0}function Pe(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>
;2]=Wa[c[(c[d>>2]|0)+508>>2]&31](c[d>>2]|0,1718642541,c[e>>2]|0,g)|0;if(c[f>
x3e;2]|0){c[(c[d>>2]|0)+656>>2]=0;c[(c[d>>2]|0)+652>>2]=0;c[f>>2]=0;g=c[f>
;>2]|0;i=h;return g|0}else{c[(c[d>>2]|0)+652>>2]=c[g>>2];c[f>>2]=de(c[e>>
2]|0,c[g>>2]|0,(c[d>>2]|0)+656|0)|0;g=c[f>>2]|0;i=h;return g|0}return 0}function Qe(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Wa
[c[(c[d>>2]|0)+508>>2]&31](c[d>>2]|0,1886545264,c[e>>2]|0,g)|0;if(c[f>>2]|
0){c[(c[d>>2]|0)+664>>2]=0;c[(c[d>>2]|0)+660>>2]=0;c[f>>2]=0;g=c[f>>
2]|0;i=h;return g|0}else{c[(c[d>>2]|0)+660>>2]=c[g>>2];c[f>>2]=de(c[e>>2]|0,c[
g>>2]|0,(c[d>>2]|0)+664|0)|0;g=c[f>>2]|0;i=h;return g|0}return 0}function Re(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)+512>>2]=22;c[(c[d>>2]|0)+520>>2]=34;c
[(c[d>>2]|0)+524>>2]=35;c[(c[d>>2]|0)+528>>2]=36;c[(c[d>>2]|0)+516>>
2]=34;i=b;return}function Se(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;g=l+20|0
;n=l+16|0;m=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=a;c[n>>2]=b;c[m>>2]=d;c[h>>2]=e;c[k>
x3e;2]=c[(c[g>>2]|0)+24>>2];c[n>>2]=c[n>>2];d=Kc(c[k>>2]|0,c[m>>2]|0
)|0;c[j>>2]=d;if((d|0)==0?(n=ee(c[k>>2]|0,c[h>>2]|0)|0,c[j>>2]=n,(n|0)==0):0){c[(c[g>
;>2]|0)+200>>2]=c[(c[k>>2]|0)+32>>2];c[(c[g>>2]|0)+204>>2]=c[(c[k>
x3e;2]|0)+36>>2];c[f>>2]=0;n=c[f>>2]|0;i=l;return n|0}c[f>>2]=c[j>>2];n=c[f>
;>2]|0;i=l;return n|0}function Te(e){e=e|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;f=j+12|0;g=j+8|0;h=j+4|0;k=j;c[g>>
;2]=e;c[h>>2]=c[(c[g>>2]|0)+200>>2];c[k>>2]=c[(c[g>>2]|0)+204>>2];if
(((c[h>>2]|0)+10|0)>>>0>(c[k>>2]|0)>>>0){c[f>>2]=20;k=c[f>
x3e;2]|0;i=j;return k|0}else{c[h>>2]=(c[h>>2]|0)+2;b[(c[g>>2]|0)+32>>1]=a[(c[h>>
;2]|0)+-2>>0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0;c[h>
;>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36>>2]=((a[(c[h>>2]|0)+-2>>0]<<
;16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<16>>16;
c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+4>>2]=((a[(c[h>>2]|0)+-2>>0]
x3c;<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<16>
x3e;16;c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+8>>2]=((a[(c[h>>2]|0)+-2>
x3e;0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<
16>>16;c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+12>>2]=((a[(c[h>>2]|0)+-
2>>0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<
;<16>>16;c[(c[g>>2]|0)+200>>2]=c[h>>2];c[f>>2]=0;k=c[f>>2]|0;i=
j;return k|0}return 0}function Ue(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,z=0,A=0,B
=0,C=0,D=0,E=0,F=0,G=0,H=0;H=i;i=i+96|0;j=H+72|0;o=H+68|0;A=H+64|0;v=H+60|0;u=H+56|0;w=H+52|0;z=H+48|0;r=H+44|0;x=H+78|0;y=H+40|
0;s=H+36|0;t=H+32|0;k=H+83|0;n=H+82|0;B=H+28|0;C=H+24|0;D=H+20|0;l=H+16|0;m=H+12|0;g=H+76|0;E=H+8|0;F=H+4|0;p=H+81|0;G=H;q=H+80|
0;c[j>>2]=f;c[A>>2]=c[(c[j>>2]|0)+200>>2];c[v>>2]=c[(c[j>>2]|0)+204
x3e;>2];c[u>>2]=c[(c[j>>2]|0)+12>>2];c[w>>2]=b[(c[j>>2]|0)+32>>
1];c[r>>2]=c[c[j>>2]>>2];c[E>>2]=0;if((c[w>>2]|0)!=0?((b[(c[u>>2]|0)+
20>>1]|0)+(b[(c[u>>2]|0)+56>>1]|0)+(c[w>>2]|0)|0)>>>0>(c[(c[u>
x3e;2]|0)+8>>2]|0)>>>0:0)f=kc(c[u>>2]|0,0,c[w>>2]|0)|0;else f=0;c[o>>2]=f
;if(c[o>>2]|0){G=c[o>>2]|0;i=H;return G|0}c[l>>2]=c[(c[u>>2]|0)+56+12>>2];c[m
x3e;>2]=(c[l>>2]|0)+(c[w>>2]<<1);a:do if((c[w>>2]|0)<4095?((c[A>>2]|
0)+((c[w>>2]|0)+1<<1)|0)>>>0<=(c[v>>2]|0)>>>0:0){c[A>>
;2]=(c[A>>2]|0)+2;b[g>>1]=(d[(c[A>>2]|0)+-2>>0]&65535)<<8|(d[(c[A>
x3e;2]|0)+-2+1>>0]&65535)<<0;if((c[w>>2]|0)>0)b[c[l>>2]>>1]=b[g>
;>1]|0;c[l>>2]=(c[l>>2]|0)+2;while(1){if((c[l>>2]|0)>>>0>=(c[m>>
;2]|0)>>>0)break;c[A>>2]=(c[A>>2]|0)+2;b[c[l>>2]>>1]=(d[(c[A>>2
]|0)+-2>>0]&65535)<<8|(d[(c[A>>2]|0)+-2+1>>0]&65535)<<0;if((b[c[l>
;>2]>>1]|0)<=(b[g>>1]|0)){h=12;break}b[g>>1]=b[c[l>>2]>>1]|0;c[l>
;>2]=(c[l>>2]|0)+2}if((h|0)==12){c[o>>2]=8;G=c[o>>2]|0;i=H;return G|0}c[y>>2]=0;if((
c[w>>2]|0)>0?(c[y>>2]=(b[(c[l>>2]|0)+-2>>1]|0)+1,(c[y>>2]|0)<0):0)break
;if(((c[y>>2]|0)+4|0)!=0?((b[(c[u>>2]|0)+20+2>>1]|0)+(b[(c[u>>2]|0)+56+2>>1]|0
)+((c[y>>2]|0)+4)|0)>>>0>(c[(c[u>>2]|0)+4>>2]|0)>>>0:0)f=kc(c[u
>>2]|0,(c[y>>2]|0)+4|0,0)|0;else f=0;c[o>>2]=f;if(c[o>>2]|0){G=c[o>>2]|0;i=H;return
G|0}c[z>>2]=(c[u>>2]|0)+56;c[l>>2]=(c[(c[z>>2]|0)+12>>2]|0)+2;while(1){if((c[
l>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;if((b[(c[l>>2]|0)+-2>
x3e;1]|0)>=(b[c[l>>2]>>1]|0))break a;c[l>>2]=(c[l>>2]|0)+2}c[(c[(c[j>>2]|
0)+8>>2]|0)+140>>2]=0;c[(c[(c[j>>2]|0)+8>>2]|0)+136>>2]=0;if(((c[A>>
2]|0)+2|0)>>>0<=(c[v>>2]|0)>>>0){c[A>>2]=(c[A>>2]|0)+2;b[x>
;>1]=(d[(c[A>>2]|0)+-2>>0]&65535)<<8|(d[(c[A>>2]|0)+-2+1>>0]&65535
)<<0;if((e[x>>1]|0)>(e[(c[r>>2]|0)+260+26>>1]|0)){c[o>>2]=22;G=c[o>
x3e;2]|0;i=H;return G|0}if(((c[v>>2]|0)-(c[A>>2]|0)|0)<(e[x>>1]|0)){c[o>>2]=22;G=c[
o>>2]|0;i=H;return G|0}if(!(c[(c[j>>2]|0)+16>>2]&2)){c[(c[(c[j>>2]|0)+8>>
2]|0)+140>>2]=e[x>>1];c[(c[(c[j>>2]|0)+8>>2]|0)+136>>2]=c[(c[(c[j>>2
]|0)+160>>2]|0)+392>>2];Ss(c[(c[(c[j>>2]|0)+160>>2]|0)+392>>2]|0,c[A>>
;2]|0,e[x>>1]|0)|0}c[A>>2]=(c[A>>2]|0)+(e[x>>1]|0);c[s>>2]=c[(c[z>>2
]|0)+8>>2];c[t>>2]=(c[s>>2]|0)+(c[y>>2]|0);b:while(1){if((c[s>>2]|0)>>
;>0>=(c[t>>2]|0)>>>0)break;if(((c[A>>2]|0)+1|0)>>>0>(c[v>
x3e;2]|0)>>>0)break a;r=c[A>>2]|0;c[A>>2]=r+1;r=a[r>>0]|0;a[k>>0]=r;x=c[s
>>2]|0;c[s>>2]=x+1;a[x>>0]=r;if(!(d[k>>0]&8))continue;if(((c[A>>2]|0)+1|0
)>>>0>(c[v>>2]|0)>>>0)break a;x=c[A>>2]|0;c[A>>2]=x+1;a[n>
x3e;0]=a[x>>0]|0;if(((c[s>>2]|0)+(d[n>>0]|0)|0)>>>0>(c[t>>2]|0)>
;>>0)break a;while(1){if((d[n>>0]|0)<=0)continue b;r=a[k>>0]|0;x=c[s>>2]|0;c[s>
;>2]=x+1;a[x>>0]=r;a[n>>0]=(a[n>>0]|0)+-1<<24>>24}}c[B>>2]=c[(c
[z>>2]|0)+4>>2];c[C>>2]=(c[B>>2]|0)+(c[y>>2]<<3);c[s>>2]=c
[(c[z>>2]|0)+8>>2];c[D>>2]=0;if(((c[A>>2]|0)+(c[E>>2]|0)|0)>>>0
<=(c[v>>2]|0)>>>0){while(1){if((c[B>>2]|0)>>>0>=(c[C>>2]|0
)>>>0)break;c[F>>2]=0;a[p>>0]=a[c[s>>2]>>0]|0;if(d[p>>0]&2
|0){if(((c[A>>2]|0)+1|0)>>>0>(c[v>>2]|0)>>>0)break a;E=c[A>>2]|
0;c[A>>2]=E+1;c[F>>2]=d[E>>0];if(!(d[p>>0]&16))c[F>>2]=0-(c[F>>
2]|0)}else if(!(d[p>>0]&16)){if(((c[A>>2]|0)+2|0)>>>0>(c[v>>2]|0)>
x3e;>0)break a;c[A>>2]=(c[A>>2]|0)+2;c[F>>2]=((a[(c[A>>2]|0)+-2>>0]<
x3c;16>>16<<8|d[(c[A>>2]|0)+-2+1>>0]<<0)&65535)<<16>>
16}c[D>>2]=(c[D>>2]|0)+(c[F>>2]|0);c[c[B>>2]>>2]=c[D>>2];a[c[s>
x3e;2]>>0]=d[p>>0]&-19;c[B>>2]=(c[B>>2]|0)+8;c[s>>2]=(c[s>>2]|0
)+1}c[B>>2]=c[(c[u>>2]|0)+56+4>>2];c[C>>2]=(c[B>>2]|0)+(c[y>>2]<
;<3);c[s>>2]=c[(c[z>>2]|0)+8>>2];c[D>>2]=0;while(1){if((c[B>>2]|0)>
x3e;>0>=(c[C>>2]|0)>>>0)break;c[G>>2]=0;a[q>>0]=a[c[s>>2]>
x3e;0]|0;if(d[q>>0]&4|0){if(((c[A>>2]|0)+1|0)>>>0>(c[v>>2]|0)>>
x3e;0)break a;F=c[A>>2]|0;c[A>>2]=F+1;c[G>>2]=d[F>>0];if(!(d[q>>0]&32))c[
G>>2]=0-(c[G>>2]|0)}else if(!(d[q>>0]&32)){if(((c[A>>2]|0)+2|0)>>>0
x3e;(c[v>>2]|0)>>>0)break a;c[A>>2]=(c[A>>2]|0)+2;c[G>>2]=((a[(c[A>
x3e;2]|0)+-2>>0]<<16>>16<<8|d[(c[A>>2]|0)+-2+1>>0]<<0)&
;65535)<<16>>16}c[D>>2]=(c[D>>2]|0)+(c[G>>2]|0);c[(c[B>>2]|0)+4>
;>2]=c[D>>2];a[c[s>>2]>>0]=d[q>>0]&1;c[B>>2]=(c[B>>2]|0)+8
;c[s>>2]=(c[s>>2]|0)+1}b[(c[z>>2]|0)+2>>1]=c[y>>2];b[c[z>>2]>
x3e;1]=c[w>>2];c[(c[j>>2]|0)+200>>2]=c[A>>2];G=c[o>>2]|0;i=H;return G|0}}}while
(0);c[o>>2]=20;G=c[o>>2]|0;i=H;return G|0}function Ve(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;u=i;i=i+64|0;n=u+48|0;o=u+44|0;s=u+40|0;q=u+36|0;p=u+32|0;h=u+28|0;r=u+24|0;j=u+20|0;k=u+16|0;m=u+12|0;l=u+8|0;g=
u+4|0;t=u;c[n>>2]=f;c[s>>2]=c[(c[n>>2]|0)+200>>2];c[q>>2]=c[(c[n>>2]|
0)+204>>2];c[p>>2]=c[(c[n>>2]|0)+12>>2];c[r>>2]=0;while(1){c[o>>2]=lc
(c[p>>2]|0,(c[r>>2]|0)+1|0)|0;if(c[o>>2]|0){f=24;break}if(((c[s>>2]|0)+4|0)>>
x3e;0>(c[q>>2]|0)>>>0){f=25;break}c[h>>2]=(c[(c[p>>2]|0)+56+32>>2]|0
)+(c[r>>2]<<5);c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+8>>2]=0;c[s>
;>2]=(c[s>>2]|0)+2;b[(c[h>>2]|0)+4>>1]=(d[(c[s>>2]|0)+-2>>0]&65535)
x3c;<8|(d[(c[s>>2]|0)+-2+1>>0]&65535)<<0;c[s>>2]=(c[s>>2]|0)+2;c[c[h
>>2]>>2]=((d[(c[s>>2]|0)+-2>>0]&65535)<<8|(d[(c[s>>2]|0)+-2+1
x3e;>0]&65535)<<0)&65535;c[g>>2]=2;if(e[(c[h>>2]|0)+4>>1]&1|0)c[g>
;>2]=(c[g>>2]|0)+2;do if(!(e[(c[h>>2]|0)+4>>1]&8|0)){if(e[(c[h>>2]|0)+4>
x3e;1]&64|0){c[g>>2]=(c[g>>2]|0)+4;break}if(e[(c[h>>2]|0)+4>>1]&128|0)c[g>
;>2]=(c[g>>2]|0)+8}else c[g>>2]=(c[g>>2]|0)+2;while(0);if(((c[s>>2]|0)+(c[g>
x3e;2]|0)|0)>>>0>(c[q>>2]|0)>>>0){f=25;break}f=c[s>>2]|0;if(e[(c[h>
x3e;2]|0)+4>>1]&1|0){c[s>>2]=f+2;c[(c[h>>2]|0)+8>>2]=((a[(c[s>>2]|0)+-2
x3e;>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<
x3c;16>>16;c[s>>2]=(c[s>>2]|0)+2;c[(c[h>>2]|0)+12>>2]=((a[(c[s>>2]|0
)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)
x3c;<16>>16}else{c[s>>2]=f+1;c[(c[h>>2]|0)+8>>2]=a[f>>0];f=c[s>>
;2]|0;c[s>>2]=f+1;c[(c[h>>2]|0)+12>>2]=a[f>>0]}c[m>>2]=65536;c[j>>2]=
65536;c[l>>2]=0;c[k>>2]=0;do if(!(e[(c[h>>2]|0)+4>>1]&8|0)){if(e[(c[h>>2]|
0)+4>>1]&64|0){c[s>>2]=(c[s>>2]|0)+2;c[j>>2]=((a[(c[s>>2]|0)+-2>>
;0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<<16
x3e;>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[m>>2]=((a[(c[s>>2]|0)+-2>>0]
x3c;<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<<16>
x3e;16<<2;break}if(e[(c[h>>2]|0)+4>>1]&128|0){c[s>>2]=(c[s>>2]|0)+2;c[j
x3e;>2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>
;>0]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[l>
x3e;2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>
;0]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[k>>
2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0
]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[m>>2]=((
a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<
;<0)&65535)<<16>>16<<2}}else{c[s>>2]=(c[s>>2]|0)+2;c[j>>2]=((
a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<
;<0)&65535)<<16>>16<<2;c[m>>2]=c[j>>2]}while(0);c[(c[h>>2]|
0)+16>>2]=c[j>>2];c[(c[h>>2]|0)+16+4>>2]=c[k>>2];c[(c[h>>2]|0)+16+8
x3e;>2]=c[l>>2];c[(c[h>>2]|0)+16+12>>2]=c[m>>2];c[r>>2]=(c[r>>2
]|0)+1;if(!(e[(c[h>>2]|0)+4>>1]&32)){f=23;break}}if((f|0)==23){c[(c[p>>2]|0)+56+28>>
;2]=c[r>>2];c[t>>2]=c[(c[n>>2]|0)+24>>2];t=Mc(c[t>>2]|0)|0;c[(c[n>>2
]|0)+168>>2]=(c[s>>2]|0)+t-(c[q>>2]|0);c[(c[n>>2]|0)+200>>2]=c[s>>2];
t=c[o>>2]|0;i=u;return t|0}else if((f|0)==24){t=c[o>>2]|0;i=u;return t|0}else if((f|0)==25){c[o>>2
]=21;t=c[o>>2]|0;i=u;return t|0}return 0}function We(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];ge(c[d>>2]|0);i=b;return}function Xe(a){a=a|0;var b=0,
d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[b>>2]=a;c[d>>2]=c[b>>2];if
(!(c[d>>2]|0)){i=h;return}c[e>>2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[b>
x3e;2]|0)+104>>2];c[f>>2]=c[(c[d>>2]|0)+532>>2];if(c[(c[d>>2]|0)+692+4>
x3e;2]|0)Va[c[(c[d>>2]|0)+692+4>>2]&63](c[(c[d>>2]|0)+692>>2]|0);if(c[f>>
2]|0)Va[c[(c[f>>2]|0)+12>>2]&63](c[d>>2]|0);Ye(c[d>>2]|0);Ze(c[d>>2]|0);Fb
(c[e>>2]|0,c[(c[d>>2]|0)+672>>2]|0);c[(c[d>>2]|0)+672>>2]=0;c[(c[d>>
2]|0)+668>>2]=0;fe(c[g>>2]|0,(c[d>>2]|0)+656|0);fe(c[g>>2]|0,(c[d>>2]|0)+664|0
);c[(c[d>>2]|0)+652>>2]=0;c[(c[d>>2]|0)+660>>2]=0;_e(c[e>>2]|0,c[(c[d>>
;2]|0)+712>>2]|0);c[(c[d>>2]|0)+712>>2]=0;i=h;return}function Ye(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]|0)+104>>2];fe(c[e>>2]|0,(c[d>
;>2]|0)+736|0);c[(c[d>>2]|0)+732>>2]=0;i=b;return}function Ze(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)+104>>2];c[f>>2]=c[(c[e>
;>2]|0)+28>>2];Fb(c[f>>2]|0,c[(c[d>>2]|0)+756>>2]|0);c[(c[d>>2]|0)+756>
;>2]=0;fe(c[e>>2]|0,(c[d>>2]|0)+740|0);i=b;return}function _e(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;
i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=g;return}Fb(c[d>>2]|
0,c[(c[e>>2]|0)+4>>2]|0);c[(c[e>>2]|0)+4>>2]=0;Fb(c[d>>2]|0,c[(c[e>>
2]|0)+8>>2]|0);c[(c[e>>2]|0)+8>>2]=0;if(c[(c[e>>2]|0)+20>>2]|0){c[f>>
;2]=0;while(1){b=c[d>>2]|0;if((c[f>>2]|0)>>>0>=(c[c[e>>2]>>2]|0)>
;>>0)break;Fb(b,c[(c[(c[e>>2]|0)+20>>2]|0)+(c[f>>2]<<3)+4>>2]|0);c[(
c[(c[e>>2]|0)+20>>2]|0)+(c[f>>2]<<3)+4>>2]=0;c[f>>2]=(c[f>>
;2]|0)+1}Fb(b,c[(c[e>>2]|0)+20>>2]|0);c[(c[e>>2]|0)+20>>2]=0}Fb(c[d>>2]|0,c[(c
[e>>2]|0)+28>>2]|0);c[(c[e>>2]|0)+28>>2]=0;Fb(c[d>>2]|0,c[(c[e>>2]|0
)+36>>2]|0);c[(c[e>>2]|0)+36>>2]=0;Fb(c[d>>2]|0,c[e>>2]|0);c[e>>2]=0
;i=g;return}function $e(b){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]=b;c[f>>2]=c[g
x3e;>2];c[d>>2]=0;a[(c[f>>2]|0)+300>>0]=0;a[(c[f>>2]|0)+301>>0]=0;a[(c[f
x3e;>2]|0)+72+36>>0]=0;c[(c[f>>2]|0)+112>>2]=-1;i=e;return c[d>>2]|0}function af(b){
b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=b;c[e>>2]=c[d>>2];if(a[(c[e>>2]|0
)+300>>0]|0)bf(c[d>>2]|0);a[(c[e>>2]|0)+72+36>>0]=0;i=f;return}function bf(d){d=d|0;var
e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;j=g+12|0;f=g+8|0;h=g+4|0;e=g;c[j>>2]=d;c[f>>2]=c[j>>2];c[h>
x3e;2]=c[c[j>>2]>>2];c[e>>2]=c[(c[h>>2]|0)+100>>2];if(a[(c[f>>2]|0)+
292>>0]|0){c[(c[f>>2]|0)+296>>2]=0;a[(c[f>>2]|0)+292>>0]=0}Fb(c[e>>2
]|0,c[(c[f>>2]|0)+244>>2]|0);c[(c[f>>2]|0)+244>>2]=0;c[(c[f>>2]|0)+240>
x3e;2]=0;Fb(c[e>>2]|0,c[(c[f>>2]|0)+252>>2]|0);c[(c[f>>2]|0)+252>>2]=0;b[(c[f
x3e;>2]|0)+248>>1]=0;cf((c[f>>2]|0)+256|0);Fb(c[e>>2]|0,c[(c[f>>2]|0)+124>>
;2]|0);c[(c[f>>2]|0)+124>>2]=0;Fb(c[e>>2]|0,c[(c[f>>2]|0)+136>>2]|0);c[(c[f>
;>2]|0)+136>>2]=0;c[(c[f>>2]|0)+116>>2]=0;c[(c[f>>2]|0)+120>>2]=0;c[(c[f
x3e;>2]|0)+128>>2]=0;c[(c[f>>2]|0)+132>>2]=0;c[(c[f>>2]|0)+140>>2]=0;c[(c
[f>>2]|0)+144>>2]=0;a[(c[f>>2]|0)+300>>0]=0;a[(c[f>>2]|0)+301>>0]=0;
i=g;return}function cf(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=c[c[d>>
2]>>2];if(!(c[e>>2]|0)){i=f;return}Fb(c[e>>2]|0,c[(c[d>>2]|0)+28>>2]|0);c[(c[d
>>2]|0)+28>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+24>>2]|0);c[(c[d>>2]|0)+
24>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+16>>2]=0
;Fb(c[e>>2]|0,c[(c[d>>2]|0)+12>>2]|0);c[(c[d>>2]|0)+12>>2]=0;Fb(c[e>>
;2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>>2]=0;b[(c[d>>2]|0)+8>>
;1]=0;b[(c[d>>2]|0)+4>>1]=0;b[(c[d>>2]|0)+10>>1]=0;b[(c[d>>2]|0)+6>>
1]=0;c[c[d>>2]>>2]=0;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;a=gc(c
[c[(c[d>>2]|0)+156>>2]>>2]|0)|0;i=b;return a|0}function ef(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+32|0;o=n+28|0;p=n+24|0;g=n+20|0;h=n+16|0;m=n+12|0;l=n+8|0;k=n+4|0;j=n;c[o
>>2]=a;c[p>>2]=b;c[g>>2]=d;c[h>>2]=e;c[m>>2]=c[o>>2];c[l>>
2]=c[p>>2];c[k>>2]=c[(c[o>>2]|0)+4>>2];if(!(c[m>>2]|0)){c[f>>2]=37;p
=c[f>>2]|0;i=n;return p|0}if(!(c[l>>2]|0)){c[f>>2]=36;p=c[f>>2]|0;i=n;return p|0}if(!(c[
k>>2]|0)){c[f>>2]=6;p=c[f>>2]|0;i=n;return p|0}if((c[g>>2]|0)>>>0>=(
c[(c[k>>2]|0)+16>>2]|0)>>>0?(c[(c[(c[k>>2]|0)+128>>2]|0)+52>>2]|
0)==0:0){c[f>>2]=6;p=c[f>>2]|0;i=n;return p|0}if(c[h>>2]&2|0){if(c[(c[k>>2]|0)+8>
;>2]&8192|0)c[h>>2]=c[h>>2]&-3;if(c[h>>2]&32768|0)c[h>>2]=c[h>
x3e;2]|2}if(c[h>>2]&1025|0?(c[h>>2]=c[h>>2]|9,(c[(c[k>>2]|0)+8>>2]&8192
|0)==0):0)c[h>>2]=c[h>>2]|2;c[j>>2]=ff(c[l>>2]|0,c[m>>2]|0,c[g>>2]|0
,c[h>>2]|0)|0;c[f>>2]=c[j>>2];p=c[f>>2]|0;i=n;return p|0}function ff(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;r=i;i=i+256|0;h=r+240|0;j=r+236|0;k=r+232|0;l=r+228|0;m=r+224|0;o=r+220
|0;n=r+216|0;p=r+8|0;q=r;c[j>>2]=b;c[k>>2]=d;c[l>>2]=f;c[m>>2]=g;c[o>>2]=c[(c[
k>>2]|0)+4>>2];c[n>>2]=0;if(((c[(c[j>>2]|0)+112>>2]|0)!=-1?(c[m>>2]
x26;8|0)==0:0)?(c[n>>2]=gf(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0,(c[n>
;>2]|0)==0):0){c[q>>2]=c[o>>2];if((c[(c[q>>2]|0)+8>>2]&1|0?(hf(p,c[j>>
;2]|0,c[k>>2]|0,c[m>>2]|0,1)|0,ah(p,c[l>>2]|0,0,1)|0,c[(c[k>>2]|0)+56>>2]=c[p+
60>>2],c[(c[k>>2]|0)+60>>2]=(c[p+176>>2]|0)+(c[p+36+12>>2]|0)-(c[p+180>
x3e;2]|0),c[(c[o>>2]|0)+468+12>>2]|0):0)?(c[m>>2]&512|0)==0:0)c[(c[k>>2]|0)+56>
;>2]=e[(c[o>>2]|0)+216+10>>1];c[h>>2]=0;b=c[h>>2]|0;i=r;return b|0}if((c[m>>
;2]&1|0)==0?(a[(c[j>>2]|0)+72+36>>0]|0)==0:0){c[h>>2]=36;b=c[h>>2]|0;i=r;return b|0
}if(c[m>>2]&16384|0){c[h>>2]=6;b=c[h>>2]|0;i=r;return b|0}c[n>>2]=hf(p,c[j>>
;2]|0,c[k>>2]|0,c[m>>2]|0,0)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];b=c[h>>
2]|0;i=r;return b|0}c[(c[k>>2]|0)+72>>2]=1869968492;c[(c[k>>2]|0)+128>>2]=0;c[(c[k>
x3e;2]|0)+108+16>>2]=0;c[n>>2]=ah(p,c[l>>2]|0,0,0)|0;if(!(c[n>>2]|0)){if((c[(c[k>
x3e;2]|0)+72>>2]|0)!=1668246896){b=(c[k>>2]|0)+108|0;q=(c[p+12>>2]|0)+20|0;c[b>>2]=c[q
x3e;>2];c[b+4>>2]=c[q+4>>2];c[b+8>>2]=c[q+8>>2];c[b+12>>2]=c[q+12>
x3e;2];c[b+16>>2]=c[q+16>>2];b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]&-513;
if(c[p+68>>2]|0)Nb((c[k>>2]|0)+108|0,0-(c[p+68>>2]|0)|0,0)}else{c[(c[k>>2]|0)+128>
x3e;2]=c[(c[p+12>>2]|0)+20+28>>2];c[(c[k>>2]|0)+132>>2]=c[(c[p+12>>2]|0)+20+32
>>2]}a:do if(!(c[m>>2]&2)){if(!(a[(c[p+160>>2]|0)+284+53>>0]|0)){b=(c[k>>
2]|0)+108+16|0;c[b>>2]=c[b>>2]|8;break}switch(c[(c[p+160>>2]|0)+284+56>>2]|0){case 1:break
a;case 0:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|32;break a}case 4:{b=(c[k>>2]|0)+108+16
|0;c[b>>2]=c[b>>2]|48;break a}case 5:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|16
;break a}default:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|8;break a}}}while(0);nh(p,c[l>>
2]|0)|0}if((c[m>>2]&1|0)==0?(e[(c[j>>2]|0)+12+2>>1]|0)<24:0){b=(c[k>>2]|0)+108
+16|0;c[b>>2]=c[b>>2]|256}c[h>>2]=c[n>>2];b=c[h>>2]|0;i=r;return b|0}function
gf(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;n=i;i=i+48|0;q=n+28|0;j=n+24|0;p=n+20|0;k=n+16|0
;r=n+12|0;s=n+8|0;o=n+4|0;l=n;m=n+32|0;c[q>>2]=e;c[j>>2]=f;c[p>>2]=g;c[k>>2]=h;c[r>
x3e;2]=c[(c[j>>2]|0)+4>>2];c[s>>2]=c[(c[r>>2]|0)+532>>2];c[o>>2]=c[(
c[r>>2]|0)+104>>2];c[l>>2]=Na[c[(c[s>>2]|0)+104>>2]&1](c[r>>2]|
0,c[(c[q>>2]|0)+112>>2]|0,c[p>>2]|0,c[k>>2]|0,c[o>>2]|0,(c[j>>2]|0)+
76|0,m)|0;if(c[l>>2]|0){s=c[l>>2]|0;i=n;return s|0}b[(c[j>>2]|0)+108+2>>1]=0;b[(c[j>
;>2]|0)+108>>1]=0;c[(c[j>>2]|0)+24>>2]=d[m+1>>0]<<6;c[(c[j>>2]|
0)+24+4>>2]=d[m>>0]<<6;c[(c[j>>2]|0)+24+8>>2]=a[m+2>>0]<<6
;c[(c[j>>2]|0)+24+12>>2]=a[m+3>>0]<<6;c[(c[j>>2]|0)+24+16>>2]=d[m+4
x3e;>0]<<6;c[(c[j>>2]|0)+24+20>>2]=a[m+5>>0]<<6;c[(c[j>>2]|0)+24
+24>>2]=a[m+6>>0]<<6;c[(c[j>>2]|0)+24+28>>2]=d[m+7>>0]<<6;
c[(c[j>>2]|0)+72>>2]=1651078259;if(c[k>>2]&16|0){c[(c[j>>2]|0)+100>>2]=a[
m+5>>0];c[(c[j>>2]|0)+104>>2]=a[m+6>>0];s=c[l>>2]|0;i=n;return s|0}else{c[(c[j
>>2]|0)+100>>2]=a[m+2>>0];c[(c[j>>2]|0)+104>>2]=a[m+3>>0];s=c[l>
;>2]|0;i=n;return s|0}return 0}function hf(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;y=i;i=i+64|0;n=y+44|0;o=y+40|0;p=y+36|0;q=y+32|0;r=y+28|0;s=y+49|0;v=y+24|0;x=y+20|0;u=y+16|0;l=y+48|0;
k=y+12|0;m=y+8|0;t=y+4|0;w=y;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;a[s>>0]=j
;c[v>>2]=c[(c[q>>2]|0)+4>>2];c[x>>2]=c[(c[v>>2]|0)+104>>2];Ns(c[o>
;>2]|0,0,208)|0;if(!((c[r>>2]&2|0)!=0|(a[s>>0]|0)!=0)){if((a[(c[p>>2]|0)+301>>
0]|0)==0?(c[k>>2]=jf(c[p>>2]|0)|0,c[k>>2]|0):0){c[n>>2]=c[k>>2];x=c[n>>
;2]|0;i=y;return x|0}if(d[(c[p>>2]|0)+292>>0]|0)k=c[(c[p>>2]|0)+296>>2]|0;else k=c[(c[(c
[v>>2]|0)+96>>2]|0)+40>>2]|0;c[u>>2]=k;if(!(c[u>>2]|0)){c[n>>2]=153;
x=c[n>>2]|0;i=y;return x|0}a[l>>0]=(c[r>>2]>>16&15|0)!=2;Vg(c[u>>2]|0,c[v
>>2]|0,c[p>>2]|0)|0;if((d[l>>0]|0)!=(d[(c[u>>2]|0)+604>>0]|0)){a[(c[u>>
;2]|0)+604>>0]=a[l>>0]|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[(
c[p>>2]|0)+240>>2]|0)>>>0)break;l=Mb(b[(c[(c[v>>2]|0)+672>>2]|0)+(c[m>
;>2]<<1)>>1]|0,c[(c[p>>2]|0)+72+16>>2]|0)|0;c[(c[(c[p>>2]|0)+244>>
;2]|0)+(c[m>>2]<<2)>>2]=l;c[m>>2]=(c[m>>2]|0)+1}$g(c[p>>2]|0)|0}if(d
[(c[u>>2]|0)+284+52>>0]&1|0)c[r>>2]=c[r>>2]|2;if(d[(c[u>>2]|0)+284+52>
;>0]&2|0){k=(c[u>>2]|0)+284|0;j=568;g=k+68|0;do{c[k>>2]=c[j>>2];k=k+4|0;j=j+4|0}while((k
|0)<(g|0))}a[(c[u>>2]|0)+561>>0]=c[r>>2]&128;c[(c[o>>2]|0)+160>>2]=c
[u>>2];c[(c[o>>2]|0)+164>>2]=c[(c[u>>2]|0)+392>>2]}do if(c[(c[(c[v>>
2]|0)+128>>2]|0)+52>>2]|0)c[(c[o>>2]|0)+84>>2]=0;else{c[t>>2]=Wa[c[(c[v>
x3e;2]|0)+508>>2]&31](c[v>>2]|0,1735162214,c[x>>2]|0,0)|0;if((c[t>>2]|0)==142){c[(c
[o>>2]|0)+84>>2]=0;break}if(!(c[t>>2]|0)){u=Mc(c[x>>2]|0)|0;c[(c[o>>2]|0)+84
x3e;>2]=u;break}c[n>>2]=c[t>>2];x=c[n>>2]|0;i=y;return x|0}while(0);if(!(a[s>>0]|0)){
c[w>>2]=c[c[(c[q>>2]|0)+156>>2]>>2];dc(c[w>>2]|0);c[(c[o>>2]|0)+12
x3e;>2]=c[w>>2]}c[(c[o>>2]|0)+16>>2]=c[r>>2];c[c[o>>2]>>2]=c[v
x3e;>2];c[(c[o>>2]|0)+4>>2]=c[p>>2];c[(c[o>>2]|0)+8>>2]=c[q>>2];
c[(c[o>>2]|0)+24>>2]=c[x>>2];c[n>>2]=0;x=c[n>>2]|0;i=y;return x|0}function jf(
d){d=d|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;h=k+12|0;j=k+8|0;g=k+4|0;f=k;c[h>>2]=d;c[j>>2]=0;if((a[(c[h>
;>2]|0)+300>>0]|0)==0?(c[j>>2]=kf(c[h>>2]|0)|0,c[j>>2]|0):0){j=c[j>>2]|0;
i=k;return j|0}if(a[(c[h>>2]|0)+301>>0]|0){j=c[j>>2]|0;i=k;return j|0}c[f>>2]=c[c[h>
;>2]>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[(c[h>>2]|0)+
240>>2]|0)>>>0)break;d=Mb(b[(c[(c[f>>2]|0)+672>>2]|0)+(c[g>>2]<<
;1)>>1]|0,c[(c[h>>2]|0)+72+16>>2]|0)|0;c[(c[(c[h>>2]|0)+244>>2]|0)+(c[g>
x3e;2]<<2)>>2]=d;c[g>>2]=(c[g>>2]|0)+1}c[g>>2]=0;while(1){if((c[g>>2
]|0)>>>0>=(e[(c[h>>2]|0)+256+8>>1]|0)>>>0)break;c[(c[(c[h>>2]|0
)+256+12>>2]|0)+(c[g>>2]<<3)>>2]=0;c[(c[(c[h>>2]|0)+256+12>>2]|0)+(c
[g>>2]<<3)+4>>2]=0;c[(c[(c[h>>2]|0)+256+16>>2]|0)+(c[g>>2]<<
;3)>>2]=0;c[(c[(c[h>>2]|0)+256+16>>2]|0)+(c[g>>2]<<3)+4>>2]=0;c[g>
;>2]=(c[g>>2]|0)+1}c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(e[(c[h>
x3e;2]|0)+248>>1]|0)>>>0)break;c[(c[(c[h>>2]|0)+252>>2]|0)+(c[g>>2]<
x3c;2)>>2]=0;c[g>>2]=(c[g>>2]|0)+1}f=(c[h>>2]|0)+172|0;g=568;d=f+68|0;do{c[f>>
2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(d|0));c[j>>2]=$g(c[h>>2]|0)|0;if(c[j>>2]|0){
j=c[j>>2]|0;i=k;return j|0}a[(c[h>>2]|0)+301>>0]=1;j=c[j>>2]|0;i=k;return j|0}function kf
(d){d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;l=q+32|0;m=q+28|0;p=q+24|0;n=q+20|0;h=q+16|0;f=q+12|0;k=q
+36|0;g=q+8|0;j=q+4|0;o=q;c[l>>2]=d;c[p>>2]=c[l>>2];c[n>>2]=c[c[l>>2]>>
;2];c[h>>2]=c[(c[n>>2]|0)+100>>2];c[g>>2]=(c[n>>2]|0)+260;a[(c[p>>2]|
0)+300>>0]=1;a[(c[p>>2]|0)+301>>0]=0;c[(c[p>>2]|0)+120>>2]=e[(c[g>>2
]|0)+20>>1];c[(c[p>>2]|0)+132>>2]=e[(c[g>>2]|0)+22>>1];c[(c[p>>2]|0)+
116>>2]=0;c[(c[p>>2]|0)+128>>2]=0;c[(c[p>>2]|0)+140>>2]=0;c[(c[p>>2]|
0)+144>>2]=0;c[(c[p>>2]|0)+240>>2]=c[(c[n>>2]|0)+668>>2];b[(c[p>>2]|
0)+248>>1]=b[(c[g>>2]|0)+18>>1]|0;c[j>>2]=(c[p>>2]|0)+72;a[(c[j>>2]|
0)+37>>0]=0;a[(c[j>>2]|0)+38>>0]=0;c[f>>2]=0;while(1){if((c[f>>2]|0)>=4)break
;c[(c[j>>2]|0)+20+(c[f>>2]<<2)>>2]=0;c[f>>2]=(c[f>>2]|0)+1}j=hc(c[h
x3e;>2]|0,16,0,c[(c[p>>2]|0)+120>>2]|0,0,m)|0;c[(c[p>>2]|0)+124>>2]=j;if(((((c[m>
;>2]|0)==0?(j=hc(c[h>>2]|0,16,0,c[(c[p>>2]|0)+132>>2]|0,0,m)|0,c[(c[p>>2]|0)+136>
;>2]=j,(c[m>>2]|0)==0):0)?(j=hc(c[h>>2]|0,4,0,c[(c[p>>2]|0)+240>>2]|0,0,m)|0,c[(c[p
>>2]|0)+244>>2]=j,(c[m>>2]|0)==0):0)?(j=hc(c[h>>2]|0,4,0,e[(c[p>>2]|0)+248>
;>1]|0,0,m)|0,c[(c[p>>2]|0)+252>>2]=j,(c[m>>2]|0)==0):0)?(b[k>>1]=b[(c[g>>
;2]|0)+16>>1]|0,b[k>>1]=(e[k>>1]|0)+4,c[m>>2]=lf(c[h>>2]|0,b[k>>1]|0
,0,(c[p>>2]|0)+256|0)|0,(c[m>>2]|0)==0):0){b[(c[p>>2]|0)+256+8>>1]=b[k>>1]|0;d
=(c[p>>2]|0)+172|0;f=568;g=d+68|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));c[o
x3e;>2]=c[(c[(c[n>>2]|0)+96>>2]|0)+4>>2];c[(c[n>>2]|0)+688>>2]=c[(c[o>
;>2]|0)+180>>2];if(!(c[(c[n>>2]|0)+688>>2]|0))c[(c[n>>2]|0)+688>>2]=37;c[
m>>2]=Ug(c[p>>2]|0)|0}if(!(c[m>>2]|0)){p=c[m>>2]|0;i=q;return p|0}bf(c[l>>2]|0
);p=c[m>>2]|0;i=q;return p|0}function lf(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;n=i;i=i+16|0;h=n
+8|0;j=n+14|0;k=n+12|0;l=n+4|0;m=n;c[h>>2]=a;b[j>>1]=d;b[k>>1]=f;c[l>>2]=g;f=c[l>
x3e;2]|0;d=f+36|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(d|0));c[c[l>>2]>>2]=c[h>>2];g=hc
(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0;c[(c[l>>2]|0)+12>>2]=g;if(((((c[m>>2]|0)==0?(g
=hc(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+16>>2]=g,(c[m>>2]|0)==0):0)?(
g=hc(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+20>>2]=g,(c[m>>2]|0)==0):0)?(
g=hc(c[h>>2]|0,1,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+24>>2]=g,(c[m>>2]|0)==0):0)?(
h=hc(c[h>>2]|0,2,0,b[k>>1]|0,0,m)|0,c[(c[l>>2]|0)+28>>2]=h,(c[m>>2]|0)==0):0){
b[(c[l>>2]|0)+4>>1]=b[j>>1]|0;b[(c[l>>2]|0)+6>>1]=b[k>>1]|0;m=c[m>
;>2]|0;i=n;return m|0}cf(c[l>>2]|0);m=c[m>>2]|0;i=n;return m|0}function mf(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,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=i;i=i+96|0;h=G+68|0;j=G+64|0;C=G+60|0
;z=G+56|0;E=G+80|0;k=G+78|0;l=G+76|0;t=G+74|0;v=G+52|0;x=G+48|0;u=G+72|0;w=G+44|0;y=G+40|0;r=G+36|0;s=G+32|0;m=G+28|0;n=G+24|0;o
=G+20|0;p=G+16|0;q=G+12|0;B=G+8|0;D=G+4|0;A=G;c[j>>2]=f;c[C>>2]=0;c[(c[j>>2]|0)+244+12>>
2]=0;f=(c[j>>2]|0)+592|0;if((e[(c[j>>2]|0)+216>>1]|0)!=(e[(c[j>>2]|0)+216+2>>1
]|0)){c[f>>2]=103;c[(c[j>>2]|0)+596>>2]=9;c[(c[j>>2]|0)+600>>2]=10}else{c[f>
;>2]=104;c[(c[j>>2]|0)+596>>2]=11;c[(c[j>>2]|0)+600>>2]=12}vf(c[j>>2]|0);
Hf(c[j>>2]|0,c[(c[j>>2]|0)+284+28>>2]&255);a:while(1){a[(c[j>>2]|0)+368>>
0]=a[(c[(c[j>>2]|0)+356>>2]|0)+(c[(c[j>>2]|0)+360>>2]|0)>>0]|0;g=a[10705+(d[(c
[j>>2]|0)+368>>0]|0)>>0]|0;c[(c[j>>2]|0)+372>>2]=g;if((g|0)<0){if(((c[(c[
j>>2]|0)+360>>2]|0)+1|0)>(c[(c[j>>2]|0)+364>>2]|0)){F=196;break}g=2-(_(c[(c[j>
x3e;2]|0)+372>>2]|0,d[(c[(c[j>>2]|0)+356>>2]|0)+((c[(c[j>>2]|0)+360>>2]|0)+1)
x3e;>0]|0)|0)|0;c[(c[j>>2]|0)+372>>2]=g}if(((c[(c[j>>2]|0)+360>>2]|0)+(c[(c[j>
x3e;2]|0)+372>>2]|0)|0)>(c[(c[j>>2]|0)+364>>2]|0)){F=196;break}c[(c[j>>2]|0)+28>
;>2]=(c[(c[j>>2]|0)+16>>2]|0)-(d[10961+(d[(c[j>>2]|0)+368>>0]|0)>>0]>
;>4);f=c[j>>2]|0;if((c[(c[j>>2]|0)+28>>2]|0)<0){F=10;break}c[(c[j>>2]|0)+32>
;>2]=(c[f+28>>2]|0)+(d[10961+(d[(c[j>>2]|0)+368>>0]|0)>>0]&15);f=c[j>>
;2]|0;if((c[(c[j>>2]|0)+32>>2]|0)>>>0>(c[(c[j>>2]|0)+20>>2]|0)>
x3e;>0){F=12;break}a[f+376>>0]=1;c[(c[j>>2]|0)+12>>2]=0;c[z>>2]=(c[(c[j>>
2]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<2);a[E>>0]=a[(c[j>>2]|0)+368
x3e;>0]|0;b:do switch(d[E>>0]|0){case 5:case 4:case 3:case 2:case 1:case 0:{b[k>>1]=(d[E>>0]
x26;1)<<14;b[l>>1]=b[k>>1]^16384;if((d[E>>0]|0)<4){b[(c[j>>2]|0)+284+10
x3e;>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+10+2>>1]=b[l>>1]|0;b[(c[j>>2]|0)+284+
6>>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+6+2>>1]=b[l>>1]|0}if(!(d[E>>0]&
;2)){b[(c[j>>2]|0)+284+14>>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+14+2>>1]=b[l>
x3e;1]|0}vf(c[j>>2]|0);break}case 7:case 6:{if(!((Qf(c[j>>2]|0,c[(c[z>>2]|0)+4>>2]&
65535,c[c[z>>2]>>2]&65535,d[(c[j>>2]|0)+368>>0]|0,(c[j>>2]|0)+284+10|0)|0
)&255)){g=(c[j>>2]|0)+284+6|0;f=(c[j>>2]|0)+284+10|0;b[g>>1]=b[f>>1]|0;b[g+2>
x3e;1]=b[f+2>>1]|0;vf(c[j>>2]|0)}break}case 9:case 8:{if(!((Qf(c[j>>2]|0,c[(c[z>>2]|0)+4
>>2]&65535,c[c[z>>2]>>2]&65535,d[(c[j>>2]|0)+368>>0]|0,(c[j>>
;2]|0)+284+14|0)|0)&255))vf(c[j>>2]|0);break}case 10:{b[t>>1]=c[(c[z>>2]|0)+4>>2];c
[x>>2]=b[t>>1];b[t>>1]=c[c[z>>2]>>2];c[v>>2]=b[t>>1];Rf(c[
j>>2]|0,c[v>>2]|0,c[x>>2]|0,(c[j>>2]|0)+284+10|0)|0;g=(c[j>>2]|0)+284+6|0;f=(c
[j>>2]|0)+284+10|0;b[g>>1]=b[f>>1]|0;b[g+2>>1]=b[f+2>>1]|0;vf(c[j>>2
]|0);break}case 11:{b[u>>1]=c[(c[z>>2]|0)+4>>2];c[y>>2]=b[u>>1];b[u>>
;1]=c[c[z>>2]>>2];c[w>>2]=b[u>>1];Rf(c[j>>2]|0,c[w>>2]|0,c[y>
x3e;2]|0,(c[j>>2]|0)+284+14|0)|0;vf(c[j>>2]|0);break}case 12:{c[c[z>>2]>>2]=b[(c[j>
x3e;2]|0)+284+10>>1];c[(c[z>>2]|0)+4>>2]=b[(c[j>>2]|0)+284+10+2>>1];break}case
13:{c[c[z>>2]>>2]=b[(c[j>>2]|0)+284+14>>1];c[(c[z>>2]|0)+4>>2]=b[(c
[j>>2]|0)+284+14+2>>1];break}case 14:{g=(c[j>>2]|0)+284+14|0;f=(c[j>>2]|0)+284+10|0;b[g
x3e;>1]=b[f>>1]|0;b[g+2>>1]=b[f+2>>1]|0;vf(c[j>>2]|0);break}case 15:{Sf(c[j>
x3e;2]|0,c[z>>2]|0);break}case 16:{b[(c[j>>2]|0)+284>>1]=c[c[z>>2]>>2];break}case
17:{b[(c[j>>2]|0)+284+2>>1]=c[c[z>>2]>>2];break}case 18:{b[(c[j>>2]|0)+284+4
x3e;>1]=c[c[z>>2]>>2];break}case 19:{Tf(c[j>>2]|0,c[z>>2]|0);break}case 20:{Uf(c[j
x3e;>2]|0,c[z>>2]|0);break}case 21:{Vf(c[j>>2]|0,c[z>>2]|0);break}case 22:{Wf(c[j>>
2]|0,c[z>>2]|0);break}case 23:if((c[c[z>>2]>>2]|0)<0){c[(c[j>>2]|0)+12>>2
]=132;break b}else{c[(c[j>>2]|0)+284+20>>2]=c[c[z>>2]>>2];break b}case 24:{c[(c[j>
x3e;2]|0)+284+28>>2]=1;c[(c[j>>2]|0)+568>>2]=33;break}case 25:{c[(c[j>>2]|0)+284+28>
;>2]=0;c[(c[j>>2]|0)+568>>2]=34;break}case 26:{c[(c[j>>2]|0)+284+24>>2]=c[c[z>
x3e;2]>>2];break}case 27:{Xf(c[j>>2]|0,c[z>>2]|0);break}case 28:{g=(c[j>>2]|0)+360|0;c[g
>>2]=(c[g>>2]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|0)+360>>2]|0)<
;0)c[(c[j>>2]|0)+12>>2]=132;a[(c[j>>2]|0)+376>>0]=0;break}case 29:{c[(c[j>>2]|
0)+284+36>>2]=c[c[z>>2]>>2];break}case 30:{c[(c[j>>2]|0)+284+40>>2]=c[c[z>
;>2]>>2];break}case 31:{c[(c[j>>2]|0)+284+44>>2]=c[c[z>>2]>>2]>>
;10;break}case 32:{c[(c[z>>2]|0)+4>>2]=c[c[z>>2]>>2];break}case 127:case 126:case 89:case
33:break;case 34:{c[(c[j>>2]|0)+32>>2]=0;break}case 35:{c[r>>2]=c[c[z>>2]>>2];
c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>>2];c[(c[z>>2]|0)+4>>2]=c[r>>
;2];break}case 36:{c[c[z>>2]>>2]=c[(c[j>>2]|0)+16>>2];break}case 37:{c[s>>2]=c
[c[z>>2]>>2];if((c[s>>2]|0)>0?(c[s>>2]|0)<=(c[(c[j>>2]|0)+28>
x3e;2]|0):0){c[c[z>>2]>>2]=c[(c[(c[j>>2]|0)+24>>2]|0)+((c[(c[j>>2]|0)+28>
x3e;2]|0)-(c[s>>2]|0)<<2)>>2];break b}c[(c[j>>2]|0)+12>>2]=134;break}case 38:{
Zf(c[j>>2]|0,c[z>>2]|0);break}case 39:{_f(c[j>>2]|0,c[z>>2]|0);break}case 40:{$f(c[j>
;>2]|0,c[z>>2]|0);break}case 41:{bg(c[j>>2]|0,c[z>>2]|0);break}case 42:{cg(c[j>>2]|
0,c[z>>2]|0);break}case 43:{dg(c[j>>2]|0,c[z>>2]|0);break}case 44:{eg(c[j>>2]|0,c[z>
;>2]|0);break}case 45:{fg(c[j>>2]|0,c[z>>2]|0);break}case 47:case 46:{gg(c[j>>2]|0,c[z>
x3e;2]|0);break}case 49:case 48:{hg(c[j>>2]|0,c[z>>2]|0);break}case 51:case 50:{kg(c[j>>2]|0,c[z
x3e;>2]|0);break}case 53:case 52:{ng(c[j>>2]|0,c[z>>2]|0);break}case 55:case 54:{og(c[j>>2]|0
,c[z>>2]|0);break}case 56:{pg(c[j>>2]|0,c[z>>2]|0);break}case 57:{rg(c[j>>2]|0,c[z>
x3e;2]|0);break}case 59:case 58:{sg(c[j>>2]|0,c[z>>2]|0);break}case 60:{tg(c[j>>2]|0,c[z>>
;2]|0);break}case 61:{c[(c[j>>2]|0)+284+28>>2]=2;c[(c[j>>2]|0)+568>>2]=35;break}case 63:
case 62:{ug(c[j>>2]|0,c[z>>2]|0);break}case 64:{vg(c[j>>2]|0,c[z>>2]|0);break}case 65:{wg
(c[j>>2]|0,c[z>>2]|0);break}case 66:{c[m>>2]=c[c[z>>2]>>2];if((c[m>>
2]|0)>>>0>=(e[(c[j>>2]|0)+468>>1]|0)>>>0)if(a[(c[j>>2]|0)+561
x3e;>0]|0){F=81;break b}else break b;else{c[(c[(c[j>>2]|0)+472>>2]|0)+(c[m>>2]<<2)
x3e;>2]=c[(c[z>>2]|0)+4>>2];break b}}case 67:{c[n>>2]=c[c[z>>2]>>2];if((c
[n>>2]|0)>>>0<(e[(c[j>>2]|0)+468>>1]|0)>>>0){c[c[z>>2
]>>2]=c[(c[(c[j>>2]|0)+472>>2]|0)+(c[n>>2]<<2)>>2];break b}if(a[(c[j
>>2]|0)+561>>0]|0)F=81;else c[c[z>>2]>>2]=0;break}case 68:{c[o>>2]=c[c[z>
x3e;2]>>2];f=c[j>>2]|0;if((c[o>>2]|0)>>>0>=(c[(c[j>>2]|0)+380>
x3e;2]|0)>>>0)if(a[f+561>>0]|0){F=81;break b}else break b;else{Ua[c[f+596>>2]&31](c[j>
;>2]|0,c[o>>2]|0,c[(c[z>>2]|0)+4>>2]|0);break b}}case 69:{c[p>>2]=c[c[z>>
2]>>2];f=c[j>>2]|0;if((c[p>>2]|0)>>>0<(c[(c[j>>2]|0)+380>>
2]|0)>>>0){g=Ya[c[f+592>>2]&127](c[j>>2]|0,c[p>>2]|0)|0;c[c[z>>2]>
;>2]=g;break b}if(a[f+561>>0]|0)F=81;else c[c[z>>2]>>2]=0;break}case 71:case 70:{yg(c[j>
x3e;2]|0,c[z>>2]|0);break}case 72:{zg(c[j>>2]|0,c[z>>2]|0);break}case 74:case 73:{Ag(c[j>>
;2]|0,c[z>>2]|0);break}case 75:{g=Bg(c[j>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 76:{g=Bg(c[
j>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 77:{a[(c[j>>2]|0)+284+32>>0]=1;break}case
78:{a[(c[j>>2]|0)+284+32>>0]=0;break}case 79:{c[(c[j>>2]|0)+12>>2]=135;break}case 80:{c
[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<(c[(c[z>>2]|0)+4>>2]|0)&1;break
}case 81:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<=(c[(c[z>>2]|0)+4>>2]|
0)&1;break}case 82:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)>(c[(c[z>>2]|0)+4
>>2]|0)&1;break}case 83:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)>=(c[(c[z>
;>2]|0)+4>>2]|0)&1;break}case 84:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)==(
c[(c[z>>2]|0)+4>>2]|0)&1;break}case 85:{c[c[z>>2]>>2]=(c[c[z>>2]>>
;2]|0)!=(c[(c[z>>2]|0)+4>>2]|0)&1;break}case 86:{g=((Oa[c[(c[j>>2]|0)+568>>2]&
63](c[j>>2]|0,c[c[z>>2]>>2]|0,0)|0)&127|0)==64&1;c[c[z>>2]>>2]=g;break
}case 87:{g=((Oa[c[(c[j>>2]|0)+568>>2]&63](c[j>>2]|0,c[c[z>>2]>>2]|0,0)|0
)&127|0)==0&1;c[c[z>>2]>>2]=g;break}case 88:{Cg(c[j>>2]|0,c[z>>2]|0);break}case
90:{if(c[c[z>>2]>>2]|0)f=(c[(c[z>>2]|0)+4>>2]|0)!=0;else f=0;c[c[z>>2]>
x3e;2]=f&1;break}case 91:{if(c[c[z>>2]>>2]|0)f=1;else f=(c[(c[z>>2]|0)+4>>2]|0)!=0;
c[c[z>>2]>>2]=f&1;break}case 92:{c[c[z>>2]>>2]=((c[c[z>>2]>>2]|
0)!=0^1)&1;break}case 93:{Dg(c[j>>2]|0,c[z>>2]|0);break}case 94:{b[(c[j>>2]|0)+284+48>
x3e;1]=c[c[z>>2]>>2];break}case 95:{b[(c[j>>2]|0)+284+50>>1]=c[c[z>>2]>
x3e;2];break}case 96:{g=c[z>>2]|0;c[g>>2]=(c[g>>2]|0)+(c[(c[z>>2]|0)+4>>2]|0);
break}case 97:{g=c[z>>2]|0;c[g>>2]=(c[g>>2]|0)-(c[(c[z>>2]|0)+4>>2]|0);break}case
98:if(!(c[(c[z>>2]|0)+4>>2]|0)){c[(c[j>>2]|0)+12>>2]=133;break b}else{g=Ub(c[c[z>
x3e;2]>>2]|0,64,c[(c[z>>2]|0)+4>>2]|0)|0;c[c[z>>2]>>2]=g;break b}case 99:{g=xb
(c[c[z>>2]>>2]|0,c[(c[z>>2]|0)+4>>2]|0,64)|0;c[c[z>>2]>>2]=g;break}case
100:{g=c[c[z>>2]>>2]|0;c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<0?0-g|0
:g;break}case 101:{c[c[z>>2]>>2]=0-(c[c[z>>2]>>2]|0);break}case 102:{c[c[z>>2]
x3e;>2]=c[c[z>>2]>>2]&-64;break}case 103:{c[c[z>>2]>>2]=(c[c[z>>2]
x3e;>2]|0)+63&-64;break}case 107:case 106:case 105:case 104:{g=Oa[c[(c[j>>2]|0)+568>>2]&63](c
[j>>2]|0,c[c[z>>2]>>2]|0,c[(c[j>>2]|0)+244+20+((d[(c[j>>2]|0)+368>>0
]|0)-104<<2)>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 111:case 110:case 109:case 108:{g=If(c[
j>>2]|0,c[c[z>>2]>>2]|0,c[(c[j>>2]|0)+244+20+((d[(c[j>>2]|0)+368>>0]|
0)-108<<2)>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 112:{c[q>>2]=c[c[z>>2
]>>2];if((c[q>>2]|0)>>>0>=(c[(c[j>>2]|0)+380>>2]|0)>>>
;0)if(a[(c[j>>2]|0)+561>>0]|0){F=81;break b}else break b;else{g=Mb(c[(c[z>>2]|0)+4>>2]|0
,c[(c[j>>2]|0)+244+16>>2]|0)|0;c[(c[(c[j>>2]|0)+384>>2]|0)+(c[q>>2]<<
;2)>>2]=g;break b}}case 114:case 113:{Dg(c[j>>2]|0,c[z>>2]|0);break}case 117:case 116:case 115:{Eg
(c[j>>2]|0,c[z>>2]|0);break}case 118:{Fg(c[j>>2]|0,16384,c[c[z>>2]>>2]|0);c[(c
[j>>2]|0)+284+28>>2]=6;c[(c[j>>2]|0)+568>>2]=36;break}case 119:{Fg(c[j>>2]|0,11585
,c[c[z>>2]>>2]|0);c[(c[j>>2]|0)+284+28>>2]=7;c[(c[j>>2]|0)+568>>2]=37
;break}case 120:{if(c[(c[z>>2]|0)+4>>2]|0){g=(c[j>>2]|0)+360|0;c[g>>2]=(c[g>>2
]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|0)+360>>2]|0)<0)c[(c[j>>2]|0)+12>
;>2]=132;a[(c[j>>2]|0)+376>>0]=0}break}case 121:{if(!(c[(c[z>>2]|0)+4>>2]|0)){g=(c[
j>>2]|0)+360|0;c[g>>2]=(c[g>>2]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|
0)+360>>2]|0)<0)c[(c[j>>2]|0)+12>>2]=132;a[(c[j>>2]|0)+376>>0]=0}break}case
122:{c[(c[j>>2]|0)+284+28>>2]=5;c[(c[j>>2]|0)+568>>2]=38;break}case 123:{$f(c[j>
x3e;2]|0,c[z>>2]|0);break}case 124:{c[(c[j>>2]|0)+284+28>>2]=4;c[(c[j>>2]|0)+568>
x3e;2]=39;break}case 125:{c[(c[j>>2]|0)+284+28>>2]=3;c[(c[j>>2]|0)+568>>2]=40;break}case
128:{Gg(c[j>>2]|0,c[z>>2]|0);break}case 129:{Hg(c[j>>2]|0,c[z>>2]|0);break}case 130:{Ig
(c[j>>2]|0,c[z>>2]|0);break}case 132:case 131:{$f(c[j>>2]|0,c[z>>2]|0);break}case 133:{Jg
(c[j>>2]|0,c[z>>2]|0);break}case 135:case 134:{Kg(c[j>>2]|0,c[z>>2]|0);break}case 136:{Lg
(c[j>>2]|0,c[z>>2]|0);break}case 137:{Mg(c[j>>2]|0,c[z>>2]|0);break}case 138:{Ng(c[j>
;>2]|0,c[z>>2]|0);break}case 139:{if((c[(c[z>>2]|0)+4>>2]|0)>(c[c[z>>2]>
x3e;2]|0))c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>>2];break}case 140:{if((c[(c[z>>2]|0)+
4>>2]|0)<(c[c[z>>2]>>2]|0))c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>
x3e;2];break}case 141:{Og(c[j>>2]|0,c[z>>2]|0);break}case 142:{Pg(c[j>>2]|0,c[z>>2]|0);break
}case 143:{$f(c[j>>2]|0,c[z>>2]|0);break}default:{if((d[E>>0]|0)>=224){Qg(c[j>>2]|0
,c[z>>2]|0);break b}if((d[E>>0]|0)>=192){Rg(c[j>>2]|0,c[z>>2]|0);break b}if((d[E>
;>0]|0)>=184){Sg(c[j>>2]|0,c[z>>2]|0);break b}f=c[j>>2]|0;g=c[z>>2]|0;if((d[E
x3e;>0]|0)>=176){Tg(f,g);break b}else{$f(f,g);break b}}}while(0);if((F|0)==81){F=0;c[(c[j>>2]|0)+12>>
;2]=134}f=c[j>>2]|0;if(c[(c[j>>2]|0)+12>>2]|0){if((c[f+12>>2]|0)!=128)break;c[B>>
;2]=c[(c[j>>2]|0)+416>>2];c[D>>2]=(c[B>>2]|0)+(c[(c[j>>2]|0)+408>>2]
x3c;<4);while(1){if((c[B>>2]|0)>>>0>=(c[D>>2]|0)>>>0){F=186;break a}
if(d[(c[B>>2]|0)+12>>0]|0?(d[(c[j>>2]|0)+368>>0]|0)==(c[(c[B>>2]|0)+8>>
;2]&255|0):0)break;c[B>>2]=(c[B>>2]|0)+16}f=c[j>>2]|0;if((c[(c[j>>2]|0)+428>
x3e;2]|0)>=(c[(c[j>>2]|0)+432>>2]|0)){F=183;break}c[A>>2]=(c[(c[j>>2]|0)+436>
x3e;2]|0)+(c[f+428>>2]<<4);c[c[A>>2]>>2]=c[(c[j>>2]|0)+352>>2];c[(c[
A>>2]|0)+4>>2]=(c[(c[j>>2]|0)+360>>2]|0)+1;c[(c[A>>2]|0)+8>>2]=1;c[(
c[A>>2]|0)+12>>2]=c[(c[B>>2]|0)+4>>2];if(((ag(c[j>>2]|0,c[c[B>>2]>
;>2]|0,c[(c[B>>2]|0)+4>>2]|0)|0)&255|0)==1)break}else{c[(c[j>>2]|0)+16>>2]=c[f
+32>>2];if(a[(c[j>>2]|0)+376>>0]|0){g=(c[j>>2]|0)+360|0;c[g>>2]=(c[g>>
;2]|0)+(c[(c[j>>2]|0)+372>>2]|0)}g=(c[C>>2]|0)+1|0;c[C>>2]=g;if((g|0)>1e6){F=190;break
}}f=c[j>>2]|0;if((c[(c[j>>2]|0)+360>>2]|0)>=(c[(c[j>>2]|0)+364>>2]|0)){F=
192;break}if(!((a[f+488>>0]|0)!=0^1)){F=195;break}}if((F|0)==10)c[f+12>>2]=129;else if((F|0)==12)c[f+12>
;>2]=130;else if((F|0)==183)c[f+12>>2]=134;else if((F|0)==186)c[(c[j>>2]|0)+12>>2]=128;else if
((F|0)==190){c[h>>2]=139;F=c[h>>2]|0;i=G;return F|0}else if((F|0)==192)if((c[f+428>>2]|0)>0)c
[(c[j>>2]|0)+12>>2]=131;else F=195;else if((F|0)==196)c[(c[j>>2]|0)+12>>2]=131;if((F|0)==
195){c[h>>2]=0;F=c[h>>2]|0;i=G;return F|0}if(c[(c[j>>2]|0)+12>>2]|0?(a[(c[j>>2
]|0)+488>>0]|0)==0:0)a[(c[(c[j>>2]|0)+4>>2]|0)+301>>0]=0;c[h>>2]=c[(c[j>
x3e;2]|0)+12>>2];F=c[h>>2]|0;i=G;return F|0}function nf(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[(c[(c[e>>2]|0)+384>>2]|0)+(c[f>>2]<<2)
x3e;>2]|0;b=Mb(b,of(c[e>>2]|0)|0)|0;i=d;return b|0}function of(a){a=a|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+
8|0;f=h+4|0;g=h;c[e>>2]=a;do if(!(c[(c[e>>2]|0)+244+12>>2]|0)){a=c[e>>2]|0;if(!(b[(c[e
x3e;>2]|0)+284+10+2>>1]|0)){c[(c[e>>2]|0)+244+12>>2]=c[a+244>>2];break}d=c[e>
x3e;2]|0;if(!(b[a+284+10>>1]|0)){c[(c[e>>2]|0)+244+12>>2]=c[d+244+4>>2];break}else{c[f
x3e;>2]=xb(b[d+284+10>>1]|0,c[(c[e>>2]|0)+244>>2]|0,16384)|0;c[g>>2]=xb(b[(c[e>
;>2]|0)+284+10+2>>1]|0,c[(c[e>>2]|0)+244+4>>2]|0,16384)|0;g=pf(c[f>>2]|0,c[g>
x3e;2]|0)|0;c[(c[e>>2]|0)+244+12>>2]=g;break}}while(0);i=h;return c[(c[e>>2]|0)+244+12>>
2]|0}function pf(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;f=d+8|0;e=d;c[g>>2]=a;c[f>>2]=b;
c[e>>2]=c[g>>2];c[e+4>>2]=c[f>>2];b=me(e)|0;i=d;return b|0}function qf(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;d=c[h
x3e;>2]|0;d=Vb(d,of(c[g>>2]|0)|0)|0;c[(c[(c[g>>2]|0)+384>>2]|0)+(c[f>>2]<<
;2)>>2]=d;i=e;return}function rf(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;b=c[h>>2]|0;b=Vb(b,of(c[g>>2]|0)|0)|0;d=(c[(c[g>>
;2]|0)+384>>2]|0)+(c[f>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+b;i=e;return}function sf(
a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f+4|0;d=f;c[e>>2]=a;c[d>>2]=b;i=f;return c[(c[(c[e>>
;2]|0)+384>>2]|0)+(c[d>>2]<<2)>>2]|0}function tf(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;c[(c[(c[g>>2]|0)+384
>>2]|0)+(c[f>>2]<<2)>>2]=c[h>>2];i=e;return}function uf(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[(c[h>
;>2]|0)+384>>2]|0)+(c[g>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+(c[f>>2]|
0);i=e;return}function vf(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=a;d=(c[e>>2]|0)+284|0;do if((b[(
c[e>>2]|0)+284+14>>1]|0)!=16384){a=(c[e>>2]|0)+284+10|0;if((b[d+14+2>>1]|0)==16384){c[(c
[e>>2]|0)+564>>2]=b[a+2>>1]<<16;break}else{d=(_(b[a>>1]|0,b[(c[e>>2]|
0)+284+14>>1]|0)|0)<<2;d=d+((_(b[(c[e>>2]|0)+284+10+2>>1]|0,b[(c[e>>2]|0)+284+
14+2>>1]|0)|0)<<2)|0;c[(c[e>>2]|0)+564>>2]=d;break}}else c[(c[e>>2]|0)+564>
;>2]=b[d+10>>1]<<16;while(0);a=c[e>>2]|0;do if((b[(c[e>>2]|0)+284+10>>1]|
0)!=16384){d=(c[e>>2]|0)+572|0;if((b[a+284+10+2>>1]|0)==16384){c[d>>2]=42;break}else{c[d>>
;2]=43;break}}else c[a+572>>2]=41;while(0);a=c[e>>2]|0;do if((b[(c[e>>2]|0)+284+6>>1]|0)!=
16384){d=(c[e>>2]|0)+576|0;if((b[a+284+6+2>>1]|0)==16384){c[d>>2]=42;break}else{c[d>>2]=
44;break}}else c[a+576>>2]=41;while(0);c[(c[e>>2]|0)+584>>2]=4;c[(c[e>>2]|0)+588>
x3e;2]=5;do if((c[(c[e>>2]|0)+564>>2]|0)==1073741824){a=c[e>>2]|0;if((b[(c[e>>2]|0)+284+
14>>1]|0)==16384){c[a+584>>2]=6;c[(c[e>>2]|0)+588>>2]=7;break}if((b[a+284+14+2>>
;1]|0)==16384){c[(c[e>>2]|0)+584>>2]=8;c[(c[e>>2]|0)+588>>2]=9}}while(0);d=c[(c[e>
x3e;2]|0)+564>>2]|0;if((((c[(c[e>>2]|0)+564>>2]|0)<0?0-d|0:d)|0)>=67108864){e=c[e>
x3e;2]|0;e=e+244|0;e=e+12|0;c[e>>2]=0;i=f;return}c[(c[e>>2]|0)+564>>2]=1073741824;e=c[e>>
;2]|0;e=e+244|0;e=e+12|0;c[e>>2]=0;i=f;return}function wf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=i;i=i+16|0;h=
f+8|0;e=f+4|0;g=f;c[h>>2]=a;c[e>>2]=b;c[g>>2]=d;c[h>>2]=c[h>>2];c[g>>
;2]=c[g>>2];i=f;return c[e>>2]|0}function xf(a,b,d){a=a|0;b=b|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]=b;c[e>>2]=d;c[h>>2]=c[h>>2];c[g>>2]=
c[g>>2];i=f;return c[e>>2]|0}function yf(a,d,e){a=a|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]=a;c[j>>2]=d;c[h>>2]=e;a=zf(c[j>>2]|0,c[h>>2]|0,b[(c[g>
x3e;2]|0)+284+10>>1]|0,b[(c[g>>2]|0)+284+10+2>>1]|0)|0;i=f;return a|0}function zf(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;h=i;i=i+64|0;t=h+48|0;r=h+44|0;s=h+40|0;q=h+36|0;p=
h+32|0;k=h+28|0;n=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;l=h+8|0;o=h+4|0;j=h;c[t>>2]=a;c[r>>2]=b;c[s>>2
]=d;c[q>>2]=e;c[f>>2]=_(c[t>>2]&65535,c[s>>2]|0)|0;c[p>>2]=_(c[t>>
;2]>>16,c[s>>2]|0)|0;c[l>>2]=(c[f>>2]|0)+(c[p>>2]<<16);c[n>>
;2]=(c[p>>2]>>16)+(c[f>>2]>>31)+((c[l>>2]|0)>>>0<(c[f>
;>2]|0)>>>0&1);c[f>>2]=_(c[r>>2]&65535,c[q>>2]|0)|0;c[p>>2
]=_(c[r>>2]>>16,c[q>>2]|0)|0;c[o>>2]=(c[f>>2]|0)+(c[p>>2]<<
;16);c[m>>2]=(c[p>>2]>>16)+(c[f>>2]>>31)+((c[o>>2]|0)>>>
;0<(c[f>>2]|0)>>>0&1);c[j>>2]=(c[l>>2]|0)+(c[o>>2]|0);c[g>
x3e;2]=(c[n>>2]|0)+(c[m>>2]|0)+((c[j>>2]|0)>>>0<(c[l>>2]|0)>>
;>0&1);c[k>>2]=c[g>>2]>>31;c[f>>2]=(c[j>>2]|0)+(c[k>>2]|0);
c[g>>2]=(c[g>>2]|0)+((c[k>>2]|0)+((c[f>>2]|0)>>>0<(c[j>>2]|
0)>>>0&1));c[j>>2]=c[f>>2];c[f>>2]=(c[j>>2]|0)+8192;c[g>>2
]=(c[g>>2]|0)+((c[f>>2]|0)>>>0<(c[j>>2]|0)>>>0&1);i=h;return
c[g>>2]<<18|(c[f>>2]|0)>>>14|0}function Af(a,d,e){a=a|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]=a;c[j>>2]=d;c[h>>2]=e;a=zf(c[j>>2]|0,c[h
x3e;>2]|0,b[(c[g>>2]|0)+284+6>>1]|0,b[(c[g>>2]|0)+284+6+2>>1]|0)|0;i=f;return a|0}function
Bf(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;p=i;i=i+32|0;k=p+12|0;l=p+8|0;m=p+16|0;n=p+4|0;o=p;c[k>>
;2]=f;c[l>>2]=g;b[m>>1]=h;c[n>>2]=j;c[o>>2]=b[(c[k>>2]|0)+284+14>>1];
if(c[o>>2]|0){h=xb(c[n>>2]|0,c[o>>2]<<16,c[(c[k>>2]|0)+564>>2]|0)|0;
g=(c[(c[l>>2]|0)+16>>2]|0)+(e[m>>1]<<3)|0;c[g>>2]=(c[g>>2]|0)+h;g=(c
[(c[l>>2]|0)+24>>2]|0)+(e[m>>1]|0)|0;a[g>>0]=d[g>>0]|8}c[o>>2]=b[(c[
k>>2]|0)+284+14+2>>1];if(!(c[o>>2]|0)){i=p;return}o=xb(c[n>>2]|0,c[o>>2]<
x3c;16,c[(c[k>>2]|0)+564>>2]|0)|0;g=(c[(c[l>>2]|0)+16>>2]|0)+(e[m>>1]<<
;3)+4|0;c[g>>2]=(c[g>>2]|0)+o;g=(c[(c[l>>2]|0)+24>>2]|0)+(e[m>>1]|0)|0;a[g>
;>0]=d[g>>0]|16;i=p;return}function Cf(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;n=i;i=i+32|0;
h=n+12|0;j=n+8|0;k=n+16|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>2]=d;b[k>>1]=f;c[l>>2]=g;c[m>
x3e;2]=b[(c[h>>2]|0)+284+14>>1];if(c[m>>2]|0){f=xb(c[l>>2]|0,c[m>>2]<<
;16,c[(c[h>>2]|0)+564>>2]|0)|0;d=(c[(c[j>>2]|0)+12>>2]|0)+(e[k>>1]<<
3)|0;c[d>>2]=(c[d>>2]|0)+f}c[m>>2]=b[(c[h>>2]|0)+284+14+2>>1];if(!(c[m>
x3e;2]|0)){i=n;return}m=xb(c[l>>2]|0,c[m>>2]<<16,c[(c[h>>2]|0)+564>>2]|0)|0;d=(
c[(c[j>>2]|0)+12>>2]|0)+(e[k>>1]<<3)+4|0;c[d>>2]=(c[d>>2]|0)+m;i=n;return
}function Df(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;k=i;i=i+16|0;o=k+8|0;m=k+4|0;l=k+12|0;n=k;c[o>>2
]=f;c[m>>2]=g;b[l>>1]=h;c[n>>2]=j;c[o>>2]=c[o>>2];g=(c[(c[m>>2]|0)+16
>>2]|0)+((e[l>>1]|0)<<3)|0;c[g>>2]=(c[g>>2]|0)+(c[n>>2]|0);g=(c[(c[m
>>2]|0)+24>>2]|0)+(e[l>>1]|0)|0;a[g>>0]=d[g>>0]|0|8;i=k;return}function Ef(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;h=i;i=i+16|0;m=h+8|0;l=h+4|0;k=h+12|0;j=h;c[m>>2]=a;c[l>>
;2]=d;b[k>>1]=f;c[j>>2]=g;c[m>>2]=c[m>>2];d=(c[(c[l>>2]|0)+12>>2]|0)+((
e[k>>1]|0)<<3)|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);i=h;return}function Ff(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;k=i;i=i+16|0;o=k+8|0;m=k+4|0;l=k+12|0;n=k;c[o>>2]=f;c[m>>
2]=g;b[l>>1]=h;c[n>>2]=j;c[o>>2]=c[o>>2];g=(c[(c[m>>2]|0)+16>>2]|0)+((
e[l>>1]|0)<<3)+4|0;c[g>>2]=(c[g>>2]|0)+(c[n>>2]|0);g=(c[(c[m>>2]|0)+
24>>2]|0)+(e[l>>1]|0)|0;a[g>>0]=d[g>>0]|0|16;i=k;return}function Gf(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;h=i;i=i+16|0;m=h+8|0;l=h+4|0;k=h+12|0;j=h;c[m>>2]=a;c[l>>2]=d;b[k>
x3e;1]=f;c[j>>2]=g;c[m>>2]=c[m>>2];d=(c[(c[l>>2]|0)+12>>2]|0)+((e[k>>
;1]|0)<<3)+4|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);i=h;return}function Hf(b,e){b=b|0;e=e|0;var
f=0,g=0,h=0;g=i;i=i+16|0;f=g;h=g+4|0;c[f>>2]=b;a[h>>0]=e;switch(d[h>>0]|0|0){case 5:{c[(c[f>
x3e;2]|0)+568>>2]=38;break}case 1:{c[(c[f>>2]|0)+568>>2]=33;break}case 4:{c[(c[f>>2]|0)+
568>>2]=39;break}case 3:{c[(c[f>>2]|0)+568>>2]=40;break}case 0:{c[(c[f>>2]|0)+568>
x3e;2]=34;break}case 2:{c[(c[f>>2]|0)+568>>2]=35;break}case 6:{c[(c[f>>2]|0)+568>>2]=36;
break}case 7:{c[(c[f>>2]|0)+568>>2]=37;break}default:{}}i=g;return}function If(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;j=g+12|0;e=g+8|0;h=g+4|0;f=g;c[j>>2]=a;c[e>>2]=b;c[h>>2]=d;c[j>
;>2]=c[j>>2];d=c[e>>2]|0;b=c[h>>2]|0;if((c[e>>2]|0)>=0){j=d+b|0;c[f>>
;2]=j;c[f>>2]=(c[e>>2]|0)!=0&(c[f>>2]|0)<0?0:j;j=c[f>>2]|0;i=g;return j|0}else
{j=d-b|0;c[f>>2]=j;c[f>>2]=(c[f>>2]|0)>0?0:j;j=c[f>>2]|0;i=g;return j|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,j=0;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>
;2]=b;c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e
x3e;>2]|0)+32&-64)|0;c[g>>2]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;
return j|0}c[g>>2]=(c[e>>2]|0)+(c[f>>2]|0)+32;if((c[e>>2]|0)!=0&(c[g>>2]|
0)>0){c[g>>2]=c[g>>2]&-64;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>
;>2]|0;i=h;return j|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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f
=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|
0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)+63&-64)|0;c[g>>2]=j;c[g>>2]=(c[g>>
;2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2]=(c[e>>2]|0)+(c[f>>2]|0)+63;if((c[e
x3e;>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2]=c[g>>2]&-64;j=c[g>>2]|0;i=h;return
j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c[j>>2]=
c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)&-64)|0;c[g>>2
]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2]=(c[e>>2]|
0)+(c[f>>2]|0);if((c[e>>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2]=c[g>>2]&
;-64;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|0}return 0}function Mf(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;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;
c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|0)>=0){j=((c[e>>2]|0)+(c[f>>
;2]|0)&-64)+32|0;c[g>>2]=j;c[g>>2]=(c[e>>2]|0)!=0&(c[g>>2]|0)<0?0:j;j=c[g
>>2]|0;i=h;return j|0}else{j=0-(((c[f>>2]|0)-(c[e>>2]|0)&-64)+32)|0;c[g>>2]=j;c[g
x3e;>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}return 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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c
[j>>2]=c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)+16&-32
)|0;c[g>>2]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2
]=(c[e>>2]|0)+(c[f>>2]|0)+16;if((c[e>>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2
]=c[g>>2]&-32;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|0}
return 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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2
]=a;c[f>>2]=b;c[g>>2]=d;if((c[f>>2]|0)>=0){a=(c[f>>2]|0)-(c[(c[e>>2]|0)+480
>>2]|0)+(c[(c[e>>2]|0)+484>>2]|0)+(c[g>>2]|0)&0-(c[(c[e>>2]|0)+476>
x3e;2]|0);c[h>>2]=a;c[h>>2]=(c[f>>2]|0)!=0&(c[h>>2]|0)<0?0:a;c[h>>2]=(
c[h>>2]|0)+(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}else{a=0-((c[(c[e>
x3e;2]|0)+484>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0)-(c[f>>2]|0)+(c[g>>2]|0)&0-(
c[(c[e>>2]|0)+476>>2]|0))|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>0?0:a;c[h>
x3e;2]=(c[h>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}return 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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>
;2]=b;c[g>>2]=d;if((c[f>>2]|0)>=0){a=_(((c[f>>2]|0)-(c[(c[e>>2]|0)+480>>2
]|0)+(c[(c[e>>2]|0)+484>>2]|0)+(c[g>>2]|0)|0)/(c[(c[e>>2]|0)+476>>2]|0)|0,c[(c
[e>>2]|0)+476>>2]|0)|0;c[h>>2]=a;c[h>>2]=(c[f>>2]|0)!=0&(c[h>>2
]|0)<0?0:a;c[h>>2]=(c[h>>2]|0)+(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;
return h|0}else{a=0-(_(((c[(c[e>>2]|0)+484>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0)-(c[f>
x3e;2]|0)+(c[g>>2]|0)|0)/(c[(c[e>>2]|0)+476>>2]|0)|0,c[(c[e>>2]|0)+476>>2]|0)|
0)|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>0?0:a;c[h>>2]=(c[h>>2]|0)-(c[(c[e>
;>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}return 0}function Qf(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;v=i;i=i+48|0;k=v+36|0;l=v+28|0;m=v+34|0;n=v+32|0;o=v+24|0;p=v+20|0;q=v+
16|0;r=v+12|0;s=v+8|0;t=v+4|0;u=v;c[l>>2]=d;b[m>>1]=f;b[n>>1]=g;c[o>>2]=h;c[p>>
;2]=j;if((e[m>>1]|0)>>>0<(e[(c[l>>2]|0)+108+8>>1]|0)>>>0?(e[n
x3e;>1]|0)>>>0<(e[(c[l>>2]|0)+72+8>>1]|0)>>>0:0){c[t>>2]=(
c[(c[l>>2]|0)+72+16>>2]|0)+(e[n>>1]<<3);c[u>>2]=(c[(c[l>>2]|0)+108+16
>>2]|0)+(e[m>>1]<<3);c[q>>2]=(c[c[t>>2]>>2]|0)-(c[c[u>>2]
x3e;>2]|0);c[r>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[u>>2]|0)+4>>2]|0);if(c[o
>>2]&1|0){c[s>>2]=c[r>>2];c[r>>2]=c[q>>2];c[q>>2]=0-(c[s>
x3e;2]|0)}Rf(c[l>>2]|0,c[q>>2]|0,c[r>>2]|0,c[p>>2]|0)|0;a[k>>0]=0;u=a[k>
x3e;0]|0;i=v;return u|0}if(a[(c[l>>2]|0)+561>>0]|0)c[(c[l>>2]|0)+12>>2]=134;a[k>>
;0]=1;u=a[k>>0]|0;i=v;return u|0}function Rf(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;
p=i;i=i+32|0;h=p+22|0;q=p+16|0;j=p+12|0;k=p+8|0;l=p+4|0;o=p;m=p+21|0;n=p+20|0;c[q>>2]=d;c[j>>2]=e;c[k>
x3e;2]=f;c[l>>2]=g;c[q>>2]=c[q>>2];d=c[j>>2]|0;if((((c[j>>2]|0)<0?0-d|0:d
)|0)<65536?(q=c[k>>2]|0,(((c[k>>2]|0)<0?0-q|0:q)|0)<65536):0){c[j>>2]=c[j>>
;2]<<8;c[k>>2]=c[k>>2]<<8;c[o>>2]=pf(c[j>>2]|0,c[k>>2]|0)|
0;if(!(c[o>>2]|0)){a[h>>0]=0;q=a[h>>0]|0;i=p;return q|0}else{q=(xb(c[j>>2]|0,16384,c[o
x3e;>2]|0)|0)&65535;b[c[l>>2]>>1]=q;q=(xb(c[k>>2]|0,16384,c[o>>2]|0)|0)&65535
;b[(c[l>>2]|0)+2>>1]=q;a[h>>0]=0;q=a[h>>0]|0;i=p;return q|0}}c[o>>2]=pf(c[j>
;>2]|0,c[k>>2]|0)|0;c[j>>2]=xb(c[j>>2]|0,16384,c[o>>2]|0)|0;c[k>>2]=xb(c[
k>>2]|0,16384,c[o>>2]|0)|0;q=_(c[j>>2]|0,c[j>>2]|0)|0;c[o>>2]=q+(_(c[k>
x3e;2]|0,c[k>>2]|0)|0);if((c[j>>2]|0)<0){c[j>>2]=0-(c[j>>2]|0);a[m>>0]=1}
else a[m>>0]=0;if((c[k>>2]|0)<0){c[k>>2]=0-(c[k>>2]|0);a[n>>0]=1}else a[n
>>0]=0;while(1){if((c[o>>2]|0)>=268435456)break;if((c[j>>2]|0)<(c[k>>2]|0))c[j
>>2]=(c[j>>2]|0)+1;else c[k>>2]=(c[k>>2]|0)+1;q=_(c[j>>2]|0,c[j>>2]|
0)|0;c[o>>2]=q+(_(c[k>>2]|0,c[k>>2]|0)|0)}while(1){if((c[o>>2]|0)<268451840)break;if
((c[j>>2]|0)<(c[k>>2]|0))c[j>>2]=(c[j>>2]|0)+-1;else c[k>>2]=(c[k>
x3e;2]|0)+-1;q=_(c[j>>2]|0,c[j>>2]|0)|0;c[o>>2]=q+(_(c[k>>2]|0,c[k>>2]|0)|0)}if
(a[m>>0]|0)c[j>>2]=0-(c[j>>2]|0);if(a[n>>0]|0)c[k>>2]=0-(c[k>>2]|0);
b[c[l>>2]>>1]=c[j>>2];b[(c[l>>2]|0)+2>>1]=c[k>>2];a[h>>0]=
0;q=a[h>>0]|0;i=p;return q|0}function Sf(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;x=i;i=i+64|0;h=x+44|0;y=x+40|0;v=x+56|0;k=x+54|0;l=x+52|0;m=x+50|0;n=x+48|0;s=x+36|0;t=x+32|0;u=x+28|0;o=x+24|0;p=x+
20|0;q=x+16|0;r=x+12|0;w=x+8|0;j=x;c[h>>2]=f;c[y>>2]=g;b[v>>1]=c[c[y>>2]>>2];b
[k>>1]=c[(c[y>>2]|0)+4>>2];b[l>>1]=c[(c[y>>2]|0)+8>>2];b[m>>
;1]=c[(c[y>>2]|0)+12>>2];b[n>>1]=c[(c[y>>2]|0)+16>>2];if(((((e[m>>1]|
0)>>>0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0?(e[n>>1]|0)>>
x3e;0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0:0)?(e[k>>1]|0)>>>0<(e
[(c[h>>2]|0)+72+8>>1]|0)>>>0:0)?(e[l>>1]|0)>>>0<(e[(c[h>
x3e;2]|0)+72+8>>1]|0)>>>0:0)?(e[v>>1]|0)>>>0<(e[(c[h>>2]|0)+108
+8>>1]|0)>>>0:0){c[q>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1
]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>>
2]|0);c[r>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)+4>>2]|0)-(
c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0);c[o>>2]=(c[(c[(c
[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+72+16
x3e;>2]|0)+(e[k>>1]<<3)>>2]|0);c[p>>2]=(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]
x3c;<3)+4>>2]|0);c[t>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<
;3)>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2]|0);c[u>
;>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)-(c[(c[(c[h>
;>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0);y=(c[(c[h>>2]|0)+108+24>
x3e;2]|0)+(e[v>>1]|0)|0;a[y>>0]=d[y>>0]|24;y=xb(c[o>>2]|0,0-(c[r>>2]|0)|0,64)|
0;c[s>>2]=y+(xb(c[p>>2]|0,c[q>>2]|0,64)|0);y=c[s>>2]|0;if((((c[s>>2]|0)<0
?0-y|0:y)|0)>=64){y=xb(c[t>>2]|0,0-(c[r>>2]|0)|0,64)|0;c[w>>2]=y+(xb(c[u>>2]|0,c[q
x3e;>2]|0,64)|0);c[j>>2]=xb(c[w>>2]|0,c[o>>2]|0,c[s>>2]|0)|0;c[j+4>>2]=xb
(c[w>>2]|0,c[p>>2]|0,c[s>>2]|0)|0;c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>
;1]<<3)>>2]=(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2
]|0)+(c[j>>2]|0);c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)+4>>2]=(
c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)+(c[j+4>>2]|0);i=
x;return}else{c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)>>2]=((c[(c[(c[h>
;>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2]|0)+(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]
x3c;<3)>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)>>2]|
0)|0)/4|0;c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)+4>>2]=((c[(c[(c[h>
x3e;2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]
x3c;<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)+4>>
;2]|0)|0)/4|0;i=x;return}}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=x;return}c[(c[h>>2]|0)+12>>2]=
134;i=x;return}function Tf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e
;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>2]|0)+36|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e
x3e;>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{e=(c[g>>2]|0)+36|0;d=(c[g>
x3e;2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c
[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>>2]=134;i=j;return}}b[(c[g>>
2]|0)+284+60>>1]=c[c[h>>2]>>2];i=j;return}function Uf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i
+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>
2]|0)+72|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));
break}case 1:{e=(c[g>>2]|0)+72|0;d=(c[g>>2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0
;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>
2]|0)+12>>2]=134;i=j;return}}b[(c[g>>2]|0)+284+62>>1]=c[c[h>>2]>>2];i=j;return
}function Vf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h
x3e;>2]>>2]|0){case 0:{e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=
c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+144
|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c[g>>
;2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>>2]=134;i=j;return}}b[(c[g>>2]|0)+284+64
x3e;>1]=c[c[h>>2]>>2];i=j;return}function Wf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;
h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>2]|0)+36|0;d=(
c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{
e=(c[g>>2]|0)+36|0;d=(c[g>>2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while
((e|0)<(f|0));break}default:{if(!(a[(c[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>
x3e;2]=134;i=j;return}}e=(c[g>>2]|0)+72|0;d=(c[g>>2]|0)+36|0;f=e+36|0;do{c[e>>2]=c[d>>2];
e=e+4|0;d=d+4|0}while((e|0)<(f|0));e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+36|0;f=e+36|0;do{c[e>>2]=
c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));b[(c[g>>2]|0)+284+60>>1]=c[c[h>>2]>
x3e;2];b[(c[g>>2]|0)+284+62>>1]=c[c[h>>2]>>2];b[(c[g>>2]|0)+284+64>>
1]=c[c[h>>2]>>2];i=j;return}function Xf(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+8|0;h=g+4|0;f=
g;c[e>>2]=a;c[h>>2]=b;c[e>>2]=c[e>>2];c[h>>2]=c[h>>2];c[f>>
;2]=1;while(1){if(((Yf(c[e>>2]|0)|0)&255|0)==1){e=7;break}switch(d[(c[e>>2]|0)+368>>0]|0|0){case
88:{c[f>>2]=(c[f>>2]|0)+1;break}case 89:{c[f>>2]=(c[f>>2]|0)+-1;break}default:{}}if(!(c
[f>>2]|0)){e=7;break}}if((e|0)==7){i=g;return}}function Yf(b){b=b|0;var e=0,f=0,g=0;g=i;i=i+16|0;e=g+4|0;f=g;c[f>
x3e;2]=b;b=(c[f>>2]|0)+360|0;c[b>>2]=(c[b>>2]|0)+(c[(c[f>>2]|0)+372>>2]|0);do
if((c[(c[f>>2]|0)+360>>2]|0)<(c[(c[f>>2]|0)+364>>2]|0)){a[(c[f>>2]|0)+368
>>0]=a[(c[(c[f>>2]|0)+356>>2]|0)+(c[(c[f>>2]|0)+360>>2]|0)>>0]|0;c[(
c[f>>2]|0)+372>>2]=a[10705+(d[(c[f>>2]|0)+368>>0]|0)>>0];if((c[(c[f>>
;2]|0)+372>>2]|0)<0){if(((c[(c[f>>2]|0)+360>>2]|0)+1|0)>(c[(c[f>>2]|0)+364>
;>2]|0))break;b=2-(_(c[(c[f>>2]|0)+372>>2]|0,d[(c[(c[f>>2]|0)+356>>2]|0)+((c[(c[f
x3e;>2]|0)+360>>2]|0)+1)>>0]|0)|0)|0;c[(c[f>>2]|0)+372>>2]=b}if(((c[(c[f>>
;2]|0)+360>>2]|0)+(c[(c[f>>2]|0)+372>>2]|0)|0)<=(c[(c[f>>2]|0)+364>>2]|0)){
a[e>>0]=0;b=a[e>>0]|0;i=g;return b|0}}while(0);c[(c[f>>2]|0)+12>>2]=131;a[e>>0
]=1;b=a[e>>0]|0;i=g;return b|0}function Zf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;d=g+12|0;h=g+8|0;f=g+
4|0;e=g;c[d>>2]=a;c[h>>2]=b;c[f>>2]=c[c[h>>2]>>2];if((c[f>>2]|0)>
;0?(c[f>>2]|0)<=(c[(c[d>>2]|0)+28>>2]|0):0){c[e>>2]=c[(c[(c[d>>2]|0)+24
x3e;>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)<<2)>>2];Ts((c[(c[d>
x3e;2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)<<2)|0,(c[(c[d>
x3e;2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)+1<<2)|0,(c[f>
x3e;2]|0)-1<<2|0)|0;c[(c[(c[d>>2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-1<
;<2)>>2]=c[e>>2];i=g;return}c[(c[d>>2]|0)+12>>2]=134;i=g;return}function _f(d,f){d=
d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;g=l+8|0;m=l+4|0;j=l+14|0;k=l+12|0;h=l;c[g>>2]=d;c[m>>2]=f
;b[j>>1]=c[c[m>>2]>>2];b[k>>1]=c[(c[m>>2]|0)+4>>2];if((e[j>>
;1]|0)>>>0<(e[(c[g>>2]|0)+72+8>>1]|0)>>>0?(e[k>>1]|0)>>
;>0<(e[(c[g>>2]|0)+36+8>>1]|0)>>>0:0){c[h>>2]=(Oa[c[(c[g>>2]|0)+
572>>2]&63](c[g>>2]|0,(c[(c[(c[g>>2]|0)+36+16>>2]|0)+(e[k>>1]<<
3)>>2]|0)-(c[(c[(c[g>>2]|0)+72+16>>2]|0)+(e[j>>1]<<3)>>2]|0)|0,(c[(c
[(c[g>>2]|0)+36+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)-(c[(c[(c[g>>2]|0)+72
+16>>2]|0)+(e[j>>1]<<3)+4>>2]|0)|0)|0)/2|0;_a[c[(c[g>>2]|0)+584>>2]
x26;15](c[g>>2]|0,(c[g>>2]|0)+72|0,b[j>>1]|0,c[h>>2]|0);_a[c[(c[g>>2]|0)+584
x3e;>2]&15](c[g>>2]|0,(c[g>>2]|0)+36|0,b[k>>1]|0,0-(c[h>>2]|0)|0);i=l;return}if
(!(a[(c[g>>2]|0)+561>>0]|0)){i=l;return}c[(c[g>>2]|0)+12>>2]=134;i=l;return}function $f(
b,e){b=b|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+16|0;m=l+12|0;k=l+8|0;f=l+4|0;j=l;c[h>>2]=b;c[m>
;>2]=e;c[k>>2]=c[(c[h>>2]|0)+416>>2];c[f>>2]=(c[k>>2]|0)+(c[(c[h>>
;2]|0)+408>>2]<<4);c[h>>2]=c[h>>2];c[m>>2]=c[m>>2];while(1){if((c[k
x3e;>2]|0)>>>0>=(c[f>>2]|0)>>>0){g=9;break}if((c[(c[k>>2]|0)+8>
x3e;2]&255|0)==(d[(c[h>>2]|0)+368>>0]|0|0)?d[(c[k>>2]|0)+12>>0]|0|0:0)break;c[k>
;>2]=(c[k>>2]|0)+16}if((g|0)==9){c[(c[h>>2]|0)+12>>2]=128;i=l;return}e=c[h>>2]|0;if
((c[(c[h>>2]|0)+428>>2]|0)>=(c[(c[h>>2]|0)+432>>2]|0)){c[e+12>>2]=130;i=l
;return}else{g=c[e+436>>2]|0;f=(c[h>>2]|0)+428|0;m=c[f>>2]|0;c[f>>2]=m+1;c[j>>
2]=g+(m<<4);c[c[j>>2]>>2]=c[(c[h>>2]|0)+352>>2];c[(c[j>>2]|0)+4>
;>2]=(c[(c[h>>2]|0)+360>>2]|0)+1;c[(c[j>>2]|0)+8>>2]=1;c[(c[j>>2]|0)+12
x3e;>2]=c[(c[k>>2]|0)+4>>2];ag(c[h>>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>
;2]|0)+4>>2]|0)|0;a[(c[h>>2]|0)+376>>0]=0;i=l;return}}function ag(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;l=i;i=i+32|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=b;c[h>>2]=d;c[j>>2
]=e;if((c[h>>2]|0)<1|(c[h>>2]|0)>3){c[(c[g>>2]|0)+12>>2]=132;a[f>>0]=
1;k=a[f>>0]|0;i=l;return k|0}c[k>>2]=(c[g>>2]|0)+444+((c[h>>2]|0)-1<<3);if(!(c
[c[k>>2]>>2]|0)){c[(c[g>>2]|0)+12>>2]=138;a[f>>0]=1;k=a[f>>0]|0;i=l;
return k|0}if((c[j>>2]|0)>>>0>(c[(c[k>>2]|0)+4>>2]|0)>>>0){c[(c
[g>>2]|0)+12>>2]=131;a[f>>0]=1;k=a[f>>0]|0;i=l;return k|0}else{c[(c[g>>2]|0)+356
>>2]=c[c[k>>2]>>2];c[(c[g>>2]|0)+364>>2]=c[(c[k>>2]|0)+4>>
2];c[(c[g>>2]|0)+360>>2]=c[j>>2];c[(c[g>>2]|0)+352>>2]=c[h>>2];a[f
x3e;>0]=0;k=a[f>>0]|0;i=l;return k|0}return 0}function bg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;h
=l+4|0;m=l;k=l+8|0;j=l+10|0;c[h>>2]=f;c[m>>2]=g;b[k>>1]=c[c[m>>2]>>2];if((e[k
x3e;>1]|0)>>>0>=(e[(c[h>>2]|0)+36+8>>1]|0)>>>0){if(!(a[(c[h>>
;2]|0)+561>>0]|0)){i=l;return}c[(c[h>>2]|0)+12>>2]=134;i=l;return}a[j>>0]=-1;if(b[(c[h
x3e;>2]|0)+284+14>>1]|0)a[j>>0]=d[j>>0]&-9;if(b[(c[h>>2]|0)+284+14+2>>
;1]|0)a[j>>0]=d[j>>0]&-17;m=(c[(c[h>>2]|0)+36+24>>2]|0)+(e[k>>1]|0)|0;a[m
>>0]=d[m>>0]&d[j>>0];i=l;return}function cg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;
l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;k=l+8|0;h=l+4|0;j=l;c[e>>2]=b;c[f>>2]=d;c[g>>2]=c[(c[f>
;>2]|0)+4>>2];do if((c[g>>2]|0)>>>0<((c[(c[e>>2]|0)+420>>2]|0)+
1|0)>>>0){c[h>>2]=(c[(c[e>>2]|0)+404>>2]|0)+(c[g>>2]<<4);if(!(((
c[(c[e>>2]|0)+420>>2]|0)+1|0)==(c[(c[e>>2]|0)+396>>2]|0)?(c[(c[h>>2]|0)+8>
;>2]|0)==(c[g>>2]|0):0)){c[h>>2]=c[(c[e>>2]|0)+404>>2];c[j>>2]=(c[h>
x3e;2]|0)+(c[(c[e>>2]|0)+396>>2]<<4);while(1){if((c[h>>2]|0)>>>0<(c[
j>>2]|0)>>>0)d=(c[(c[h>>2]|0)+8>>2]|0)!=(c[g>>2]|0);else d=0;b=c[h>
x3e;2]|0;if(!d)break;c[h>>2]=b+16}if((b|0)==(c[j>>2]|0))break}if(a[(c[h>>2]|0)+12>>0]|0){
if((c[(c[e>>2]|0)+428>>2]|0)>=(c[(c[e>>2]|0)+432>>2]|0)){c[(c[e>>2]|0)+12
>>2]=130;i=l;return}if((c[c[f>>2]>>2]|0)<=0){i=l;return}c[k>>2]=(c[(c[e>>
2]|0)+436>>2]|0)+(c[(c[e>>2]|0)+428>>2]<<4);c[c[k>>2]>>2]=c[(c[e>
;>2]|0)+352>>2];c[(c[k>>2]|0)+4>>2]=(c[(c[e>>2]|0)+360>>2]|0)+1;c[(c[k>
;>2]|0)+8>>2]=c[c[f>>2]>>2];c[(c[k>>2]|0)+12>>2]=c[(c[h>>2]|0)+
4>>2];k=(c[e>>2]|0)+428|0;c[k>>2]=(c[k>>2]|0)+1;ag(c[e>>2]|0,c[c[h>>
2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0)|0;a[(c[e>>2]|0)+376>>0]=0;i=l;return}}while(0);
c[(c[e>>2]|0)+12>>2]=134;i=l;return}function dg(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;g=k+20|0;l=k+16|0;e=k+12|0;j=k+8|0;h=k+4|0;f=k;c[g>>2]=b;c[l>>2]=d;c[e>>2]=c[c[l>>2]
x3e;>2];do if((c[e>>2]|0)>>>0<((c[(c[g>>2]|0)+420>>2]|0)+1|0)>>
x3e;0){c[h>>2]=(c[(c[g>>2]|0)+404>>2]|0)+(c[e>>2]<<4);if(!(((c[(c[g>>
;2]|0)+420>>2]|0)+1|0)==(c[(c[g>>2]|0)+396>>2]|0)?(c[(c[h>>2]|0)+8>>2]|0)==(c[
e>>2]|0):0)){c[h>>2]=c[(c[g>>2]|0)+404>>2];c[f>>2]=(c[h>>2]|0)+(c[(c
[g>>2]|0)+396>>2]<<4);while(1){if((c[h>>2]|0)>>>0<(c[f>>2]|
0)>>>0)b=(c[(c[h>>2]|0)+8>>2]|0)!=(c[e>>2]|0);else b=0;d=c[h>>2]|0;if(!b)
break;c[h>>2]=d+16}if((d|0)==(c[f>>2]|0))break}if(a[(c[h>>2]|0)+12>>0]|0){d=c[g>>
;2]|0;if((c[(c[g>>2]|0)+428>>2]|0)>=(c[(c[g>>2]|0)+432>>2]|0)){c[d+12>>2]=
130;i=k;return}else{c[j>>2]=(c[d+436>>2]|0)+(c[(c[g>>2]|0)+428>>2]<<4);c[c[j
x3e;>2]>>2]=c[(c[g>>2]|0)+352>>2];c[(c[j>>2]|0)+4>>2]=(c[(c[g>>
2]|0)+360>>2]|0)+1;c[(c[j>>2]|0)+8>>2]=1;c[(c[j>>2]|0)+12>>2]=c[(c[h>>
;2]|0)+4>>2];l=(c[g>>2]|0)+428|0;c[l>>2]=(c[l>>2]|0)+1;ag(c[g>>2]|0,c[c[h>
;>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0)|0;a[(c[g>>2]|0)+376>>0]=0;i=k;return}}}
while(0);c[(c[g>>2]|0)+12>>2]=134;i=k;return}function eg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=
i+32|0;j=k+16|0;l=k+12|0;g=k+8|0;h=k+4|0;f=k;c[j>>2]=b;c[l>>2]=e;c[h>>2]=c[(c[j>>2]|0)+404
>>2];c[f>>2]=(c[h>>2]|0)+(c[(c[j>>2]|0)+396>>2]<<4);c[g>>2
]=c[c[l>>2]>>2];while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>
x3e;0)break;if((c[(c[h>>2]|0)+8>>2]|0)==(c[g>>2]|0))break;c[h>>2]=(c[h>>2]|0)+
16}do if((c[h>>2]|0)==(c[f>>2]|0)){e=c[j>>2]|0;if((c[(c[j>>2]|0)+396>>2]|0)>
;>>0<(c[(c[j>>2]|0)+400>>2]|0)>>>0){l=e+396|0;c[l>>2]=(c[l>>
;2]|0)+1;break}c[e+12>>2]=140;i=k;return}while(0);e=c[j>>2]|0;if((c[g>>2]|0)>>>0>
;65535){c[e+12>>2]=140;i=k;return}c[c[h>>2]>>2]=c[e+352>>2];c[(c[h>>2]|0)+8>
;>2]=c[g>>2]&65535;c[(c[h>>2]|0)+4>>2]=(c[(c[j>>2]|0)+360>>2]|0)+1;a
[(c[h>>2]|0)+12>>0]=1;if((c[g>>2]|0)>>>0>(c[(c[j>>2]|0)+420>>
;2]|0)>>>0)c[(c[j>>2]|0)+420>>2]=c[g>>2]&65535;a:while(1){if((Yf(c[j>>
;2]|0)|0)&255|0){e=16;break}switch(d[(c[j>>2]|0)+368>>0]|0|0){case 44:case 137:{e=15;break a}case 45:{e
=16;break a}default:{}}}if((e|0)==15){c[(c[j>>2]|0)+12>>2]=137;i=k;return}else if((e|0)==16){i=k;return}}function
fg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+8|0;h=g+4|0;f=g;c[e>>2]=b;c[h>>2]=d;c[e>>
;2]=c[e>>2];c[h>>2]=c[h>>2];d=c[e>>2]|0;if((c[(c[e>>2]|0)+428>>2]|0)
x3c;=0){c[d+12>>2]=136;i=g;return}d=d+428|0;c[d>>2]=(c[d>>2]|0)+-1;c[f>>2]=(c[(c[e>
x3e;2]|0)+436>>2]|0)+(c[(c[e>>2]|0)+428>>2]<<4);d=(c[f>>2]|0)+8|0;c[d>>
;2]=(c[d>>2]|0)+-1;a[(c[e>>2]|0)+376>>0]=0;d=c[e>>2]|0;if((c[(c[f>>2]|0)+8>
;>2]|0)>0){h=d+428|0;c[h>>2]=(c[h>>2]|0)+1;c[(c[e>>2]|0)+360>>2]=c[(c[f>
x3e;2]|0)+12>>2];i=g;return}else{ag(d,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0
;i=g;return}}function gg(f,g){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;h=m+12|0;n=m+8|0;l=m+16|0;j=m+4|0;k=m;c[h>
;>2]=f;c[n>>2]=g;b[l>>1]=c[c[n>>2]>>2];g=c[h>>2]|0;if((e[l>>1]|
0)>>>0>=(e[(c[h>>2]|0)+36+8>>1]|0)>>>0){if(!(a[g+561>>0]|0)){i=
m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}if(d[g+368>>0]&1|0){c[j>>2]=Oa[c[(c[h
x3e;>2]|0)+572>>2]&63](c[h>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[l>>
;1]<<3)>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[l>>1]<<3)+4>>
;2]|0)|0;n=Oa[c[(c[h>>2]|0)+568>>2]&63](c[h>>2]|0,c[j>>2]|0,c[(c[h>>2]|0)+
244+20>>2]|0)|0;c[k>>2]=n-(c[j>>2]|0)}else c[k>>2]=0;_a[c[(c[h>>2]|0)+584>
;>2]&15](c[h>>2]|0,(c[h>>2]|0)+36|0,b[l>>1]|0,c[k>>2]|0);b[(c[h>>2]|
0)+284>>1]=b[l>>1]|0;b[(c[h>>2]|0)+284+2>>1]=b[l>>1]|0;i=m;return}function hg(
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;r=i;i=i+64|0;h=r+44|0;s=r+40|0;j=r+24|0;p=r+50|0;n=r+16|0;m=r+12
|0;o=r+8|0;l=r+4|0;q=r;k=r+48|0;c[h>>2]=f;c[s>>2]=g;c[h>>2]=c[h>>2];c[s>>2]=c[
s>>2];if(!(b[(c[h>>2]|0)+144+10>>1]|0)){i=r;return}if(d[(c[h>>2]|0)+368>>0]&
;1|0){a[p>>0]=8;c[j>>2]=c[(c[h>>2]|0)+144+12>>2];c[j+4>>2]=c[(c[h>>2
]|0)+144+16>>2];c[j+8>>2]=c[(c[h>>2]|0)+144+20>>2]}else{a[p>>0]=16;c[j>
x3e;2]=(c[(c[h>>2]|0)+144+12>>2]|0)+4;c[j+4>>2]=(c[(c[h>>2]|0)+144+16>>2]|0)+4
;c[j+8>>2]=(c[(c[h>>2]|0)+144+20>>2]|0)+4}c[j+12>>2]=e[(c[h>>2]|0)+144+8>
x3e;1];b[k>>1]=0;c[q>>2]=0;do{c[m>>2]=(e[(c[(c[h>>2]|0)+144+28>>2]|0)+(b[k>
;>1]<<1)>>1]|0)-(e[(c[h>>2]|0)+144+32>>1]|0);c[n>>2]=c[q>>2];if
((c[m>>2]|0)>>>0>=(e[(c[h>>2]|0)+144+8>>1]|0)>>>0)c[m>>
;2]=(e[(c[h>>2]|0)+144+8>>1]|0)-1;while(1){if((c[q>>2]|0)>>>0<=(c[m>>
;2]|0)>>>0)g=(d[(c[(c[h>>2]|0)+144+24>>2]|0)+(c[q>>2]|0)>>0]&d[p>
;>0]|0)==0;else g=0;f=c[q>>2]|0;if(!g)break;c[q>>2]=f+1}do if(f>>>0<=(c[m>>
;2]|0)>>>0){c[o>>2]=c[q>>2];c[l>>2]=c[q>>2];c[q>>2]=(c[q>
x3e;2]|0)+1;while(1){if((c[q>>2]|0)>>>0>(c[m>>2]|0)>>>0)break;if(d[(c[(c[
h>>2]|0)+144+24>>2]|0)+(c[q>>2]|0)>>0]&d[p>>0]|0){ig(j,(c[l>>2]|
0)+1|0,(c[q>>2]|0)-1|0,c[l>>2]|0,c[q>>2]|0);c[l>>2]=c[q>>2]}c[q>>2]=(
c[q>>2]|0)+1}if((c[l>>2]|0)==(c[o>>2]|0)){jg(j,c[n>>2]|0,c[m>>2]|0,c[l>
x3e;2]|0);break}ig(j,(c[l>>2]|0)+1&65535,c[m>>2]|0,c[l>>2]|0,c[o>>2]|0);if((c[o>
;>2]|0)>>>0>0)ig(j,c[n>>2]|0,(c[o>>2]|0)-1|0,c[l>>2]|0,c[o>>2]|
0)}while(0);b[k>>1]=(b[k>>1]|0)+1<<16>>16}while((b[k>>1]|0)<(b[(c[h>
x3e;2]|0)+144+10>>1]|0));i=r;return}function ig(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,x=0,y=0,z=0,A=0;A=i;i=i+80|0;h=A+64|0;j=A+60|0;k=A+56|0;l=A+52|0;m=A+48|0;p=A+44|0;s=A+40|0;t
=A+36|0;q=A+32|0;r=A+28|0;n=A+24|0;o=A+20|0;w=A+16|0;x=A+12|0;y=A+8|0;u=A+4|0;v=A+68|0;z=A;c[h>>2]=b;c[j>>2]=
d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;if((c[j>>2]|0)>>>0>(c[k>>2
]|0)>>>0){i=A;return}if((c[l>>2]|0)>>>0>=(c[(c[h>>2]|0)+12>>2]|
0)>>>0){i=A;return}if((c[m>>2]|0)>>>0>=(c[(c[h>>2]|0)+12>>2]|0)
x3e;>>0){i=A;return}c[s>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+(c[l>>2]<<3)
x3e;>2];c[t>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+(c[m>>2]<<3)>>2];if((
c[s>>2]|0)>(c[t>>2]|0)){c[w>>2]=c[s>>2];c[s>>2]=c[t>>2];c[t>
;>2]=c[w>>2];c[x>>2]=c[l>>2];c[l>>2]=c[m>>2];c[m>>2]=c[x>
x3e;2]}c[q>>2]=c[(c[c[h>>2]>>2]|0)+(c[l>>2]<<3)>>2];c[r>>2
]=c[(c[c[h>>2]>>2]|0)+(c[m>>2]<<3)>>2];c[n>>2]=(c[(c[(c[h>>
;2]|0)+4>>2]|0)+(c[l>>2]<<3)>>2]|0)-(c[q>>2]|0);c[o>>2]=(c[(c[(c[h
x3e;>2]|0)+4>>2]|0)+(c[m>>2]<<3)>>2]|0)-(c[r>>2]|0);if((c[s>>2]|
0)==(c[t>>2]|0)){c[p>>2]=c[j>>2];while(1){if((c[p>>2]|0)>>>0>(c[k>
;>2]|0)>>>0)break;c[y>>2]=c[(c[c[h>>2]>>2]|0)+(c[p>>2]<<3)
x3e;>2];if((c[y>>2]|0)<=(c[q>>2]|0))c[y>>2]=(c[y>>2]|0)+(c[n>>2]|0);
else c[y>>2]=(c[y>>2]|0)+(c[o>>2]|0);c[(c[(c[h>>2]|0)+4>>2]|0)+(c[p>>
;2]<<3)>>2]=c[y>>2];c[p>>2]=(c[p>>2]|0)+1}i=A;return}c[u>>2]=0;a[v
x3e;>0]=0;c[p>>2]=c[j>>2];while(1){if((c[p>>2]|0)>>>0>(c[k>>2]|
0)>>>0)break;c[z>>2]=c[(c[c[h>>2]>>2]|0)+(c[p>>2]<<3)>>
;2];do if((c[z>>2]|0)<=(c[q>>2]|0))c[z>>2]=(c[z>>2]|0)+(c[n>>2]|0);else{if
((c[z>>2]|0)>=(c[r>>2]|0)){c[z>>2]=(c[z>>2]|0)+(c[o>>2]|0);break}if(!(a[v
>>0]|0)){a[v>>0]=1;c[u>>2]=xb((c[r>>2]|0)+(c[o>>2]|0)-((c[q>>2]|0)+(
c[n>>2]|0))|0,65536,(c[t>>2]|0)-(c[s>>2]|0)|0)|0}y=(c[q>>2]|0)+(c[n>>2]|0)|0;c
[z>>2]=y+(Mb((c[(c[(c[h>>2]|0)+8>>2]|0)+(c[p>>2]<<3)>>2]|0)-(c[s>
;>2]|0)|0,c[u>>2]|0)|0)}while(0);c[(c[(c[h>>2]|0)+4>>2]|0)+(c[p>>2]<<3)
x3e;>2]=c[z>>2];c[p>>2]=(c[p>>2]|0)+1}i=A;return}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;m=i;i=i+32|0;f=m+20|0;g=m+16|0;h=m+12|0;j=m+8|0;l=m+4|0;k=m;c[f>>2]=a;c[g>>
2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=(c[(c[(c[f>>2]|0)+4>>2]|0)+(c[j>>2]
x3c;<3)>>2]|0)-(c[(c[c[f>>2]>>2]|0)+(c[j>>2]<<3)>>2]|0);if(!(c[
k>>2]|0)){i=m;return}c[l>>2]=c[g>>2];while(1){if((c[l>>2]|0)>>>0>=(c
[j>>2]|0)>>>0)break;a=(c[(c[f>>2]|0)+4>>2]|0)+(c[l>>2]<<3)|0;c[
a>>2]=(c[a>>2]|0)+(c[k>>2]|0);c[l>>2]=(c[l>>2]|0)+1}c[l>>2]=(c[j>
;>2]|0)+1;while(1){if((c[l>>2]|0)>>>0>(c[h>>2]|0)>>>0)break;a=(c[(c[
f>>2]|0)+4>>2]|0)+(c[l>>2]<<3)|0;c[a>>2]=(c[a>>2]|0)+(c[k>>
;2]|0);c[l>>2]=(c[l>>2]|0)+1}i=m;return}function kg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+64|
0;k=l+48|0;m=l+44|0;g=l+4|0;h=l;j=l+52|0;c[k>>2]=d;c[m>>2]=f;c[k>>2]=c[k>>2];c[m>
x3e;2]=c[m>>2];f=c[k>>2]|0;if((c[(c[k>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0)+284
+20>>2]|0)){c[f+12>>2]=134;i=l;return}if((lg(f,g,h,l+8|0,l+54|0)|0)<<24>>24){i=l;return}
while(1){d=c[k>>2]|0;if((c[(c[k>>2]|0)+284+20>>2]|0)<=0){f=10;break}f=d+28|0;c[f>>2
]=(c[f>>2]|0)+-1;b[j>>1]=c[(c[(c[k>>2]|0)+24>>2]|0)+(c[(c[k>>2]|0)+28>>
;2]<<2)>>2];f=c[k>>2]|0;if((e[j>>1]|0)>>>0>=(e[(c[k>>2]|0)+
108+8>>1]|0)>>>0){if(a[f+561>>0]|0){f=7;break}}else mg(f,b[j>>1]|0,c[g>>2
]|0,c[h>>2]|0,1);m=(c[k>>2]|0)+284+20|0;c[m>>2]=(c[m>>2]|0)+-1}if((f|0)==7){c[(c[k>
x3e;2]|0)+12>>2]=134;i=l;return}else if((f|0)==10){c[d+284+20>>2]=1;c[(c[k>>2]|0)+32>>2]=
c[(c[k>>2]|0)+28>>2];i=l;return}}function lg(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;u=i;i=i+64|0;l=u+62|0;m=u+56|0;n=u+52|0;o=u+48|0;p=u+44|0;q=u+40|0;t=u+4|0;s=u+60|0;r=u;c[m>>2]=
f;c[n>>2]=g;c[o>>2]=h;c[p>>2]=j;c[q>>2]=k;f=c[m>>2]|0;if(d[(c[m>>2]|
0)+368>>0]&1|0){g=t;f=f+36|0;k=g+36|0;do{c[g>>2]=c[f>>2];g=g+4|0;f=f+4|0}while((g|0)<(k|
0));b[s>>1]=b[(c[m>>2]|0)+284+2>>1]|0}else{g=t;f=f+72|0;k=g+36|0;do{c[g>>2]=c[f>>
;2];g=g+4|0;f=f+4|0}while((g|0)<(k|0));b[s>>1]=b[(c[m>>2]|0)+284+4>>1]|0}if((e[s>>1
]|0)>>>0<(e[t+8>>1]|0)>>>0){g=c[p>>2]|0;f=t;k=g+36|0;do{c[g>>2]=
c[f>>2];g=g+4|0;f=f+4|0}while((g|0)<(k|0));b[c[q>>2]>>1]=b[s>>1]|0;c[r>>2
]=Oa[c[(c[m>>2]|0)+572>>2]&63](c[m>>2]|0,(c[(c[t+16>>2]|0)+(e[s>>1]<
x3c;3)>>2]|0)-(c[(c[t+12>>2]|0)+(e[s>>1]<<3)>>2]|0)|0,(c[(c[t+16>>2]|
0)+(e[s>>1]<<3)+4>>2]|0)-(c[(c[t+12>>2]|0)+(e[s>>1]<<3)+4>>
;2]|0)|0)|0;t=xb(c[r>>2]|0,b[(c[m>>2]|0)+284+14>>1]<<16,c[(c[m>>2]|0)+564>
;>2]|0)|0;c[c[n>>2]>>2]=t;t=xb(c[r>>2]|0,b[(c[m>>2]|0)+284+14+2>>1]<
x3c;16,c[(c[m>>2]|0)+564>>2]|0)|0;c[c[o>>2]>>2]=t;a[l>>0]=0;t=a[l>>0
]|0;i=u;return t|0}if(a[(c[m>>2]|0)+561>>0]|0)c[(c[m>>2]|0)+12>>2]=134;b[c[q>>
2]>>1]=0;a[l>>0]=1;t=a[l>>0]|0;i=u;return t|0}function mg(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;q=i;i=i+16|0;l=q+8|0;m=q+12|0;n=q+4|0;o=q;p=q+14|0;c[l>>2]=f;b[m>>1]=g;c[n>
;>2]=h;c[o>>2]=j;a[p>>0]=k;if(b[(c[l>>2]|0)+284+14>>1]|0?(k=(c[(c[l>>2]|0
)+108+16>>2]|0)+(e[m>>1]<<3)|0,c[k>>2]=(c[k>>2]|0)+(c[n>>2]|0),a[p
x3e;>0]|0):0){k=(c[(c[l>>2]|0)+108+24>>2]|0)+(e[m>>1]|0)|0;a[k>>0]=d[k>>0
]|8}if(!(b[(c[l>>2]|0)+284+14+2>>1]|0)){i=q;return}k=(c[(c[l>>2]|0)+108+16>>2]|0)+(e[m
x3e;>1]<<3)+4|0;c[k>>2]=(c[k>>2]|0)+(c[o>>2]|0);if(!(a[p>>0]|0)){i=q;return
}k=(c[(c[l>>2]|0)+108+24>>2]|0)+(e[m>>1]|0)|0;a[k>>0]=d[k>>0]|16;i=q;return}function
ng(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;q=i;i=i+64|0;g=q+48|0;r=q+44|0;p=q+8|0;o=q+60|0;j=q+4|0;k=q
;h=q+58|0;l=q+56|0;n=q+54|0;m=q+52|0;c[g>>2]=d;c[r>>2]=f;b[h>>1]=c[c[r>>2]>>2];
f=c[g>>2]|0;if((b[h>>1]|0)>>>0>=(b[(c[g>>2]|0)+144+10>>1]|0)>
x3e;>0){if(!(a[f+561>>0]|0)){i=q;return}c[(c[g>>2]|0)+12>>2]=134;i=q;return}if((lg(f,j,k,p,o)|
0)<<24>>24){i=q;return}if(!(b[h>>1]|0))b[l>>1]=0;else b[l>>1]=(e[(c[(c[g>
x3e;2]|0)+144+28>>2]|0)+((b[h>>1]|0)-1<<1)>>1]|0)+1-(e[(c[g>>2]|0)+144+32>
;>1]|0);b[n>>1]=(e[(c[(c[g>>2]|0)+144+28>>2]|0)+(b[h>>1]<<1)>>1
]|0)-(e[(c[g>>2]|0)+144+32>>1]|0);do if((e[n>>1]|0)>>>0>=(e[(c[g>>2]|
0)+108+8>>1]|0)>>>0)if((e[(c[g>>2]|0)+108+8>>1]|0)>0){b[n>>1]=(e[(c[
g>>2]|0)+108+8>>1]|0)-1;break}else{b[n>>1]=0;break}while(0);b[m>>1]=b[l>>1]|0;
while(1){if((e[m>>1]|0)>(e[n>>1]|0))break;if(!((c[p+16>>2]|0)==(c[(c[g>>2]|0)+108+16
>>2]|0)?(e[o>>1]|0)==(e[m>>1]|0):0))mg(c[g>>2]|0,b[m>>1]|0,c[j>>2]|0
,c[k>>2]|0,1);b[m>>1]=(b[m>>1]|0)+1<<16>>16}i=q;return}function og(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;p=i;i=i+64|0;g=p+48|0;q=p+44|0;n=p+8|0;m=p+56|0;h=p+4|0;j=p;l=p+54|0;k=p+52|0;
c[g>>2]=d;c[q>>2]=f;f=c[g>>2]|0;if((c[c[q>>2]>>2]|0)>>>0>=
2){if(!(a[f+561>>0]|0)){i=p;return}c[(c[g>>2]|0)+12>>2]=134;i=p;return}if((lg(f,h,j,n,m)|0)<
x3c;24>>24){i=p;return}if((e[(c[g>>2]|0)+284+64>>1]|0)==0?(e[(c[g>>2]|0)+108+8>>
;1]|0)>0:0)b[l>>1]=(e[(c[g>>2]|0)+108+8>>1]|0)-1;else o=8;do if((o|0)==8){if((e[(c[g>>
;2]|0)+284+64>>1]|0)==1?(b[(c[g>>2]|0)+108+10>>1]|0)>0:0){b[l>>1]=b[(c[(c[g>
x3e;2]|0)+108+28>>2]|0)+((b[(c[g>>2]|0)+108+10>>1]|0)-1<<1)>>1]|0;if((e[l>
;>1]|0)>>>0<(e[(c[g>>2]|0)+108+8>>1]|0)>>>0)break;if(!(a[(c[g>
x3e;2]|0)+561>>0]|0)){i=p;return}c[(c[g>>2]|0)+12>>2]=134;i=p;return}b[l>>1]=0}while(0);
b[k>>1]=0;while(1){if((e[k>>1]|0)>(e[l>>1]|0))break;if(!((c[n+16>>2]|0)==(c[(c[g>
;>2]|0)+108+16>>2]|0)?(e[m>>1]|0)==(e[k>>1]|0):0))mg(c[g>>2]|0,b[k>>1]|0,
c[h>>2]|0,c[j>>2]|0,0);b[k>>1]=(b[k>>1]|0)+1<<16>>16}i=p;return}function
pg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;l=m+12|0;g=m+8|0;h=m+4|0;j=m;k=m+16|0;c[l>>2]=d;c[g>
;>2]=f;if((c[(c[l>>2]|0)+16>>2]|0)<((c[(c[l>>2]|0)+284+20>>2]|0)+1|0)){c[(c[l
x3e;>2]|0)+12>>2]=134;i=m;return}c[h>>2]=qg(c[c[g>>2]>>2]|0,b[(c[l>>2]|0)+
284+14>>1]|0)|0;c[j>>2]=qg(c[c[g>>2]>>2]|0,b[(c[l>>2]|0)+284+14+2>>1
]|0)|0;while(1){f=c[l>>2]|0;if((c[(c[l>>2]|0)+284+20>>2]|0)<=0){g=10;break}g=f+28|0;c[g>
x3e;2]=(c[g>>2]|0)+-1;b[k>>1]=c[(c[(c[l>>2]|0)+24>>2]|0)+(c[(c[l>>2]|0)+28>
;>2]<<2)>>2];g=c[l>>2]|0;if((e[k>>1]|0)>>>0>=(e[(c[l>>
;2]|0)+108+8>>1]|0)>>>0){if(a[g+561>>0]|0){g=7;break}}else mg(g,b[k>>1]|0,c[h>
x3e;2]|0,c[j>>2]|0,1);d=(c[l>>2]|0)+284+20|0;c[d>>2]=(c[d>>2]|0)+-1}if((g|0)==7){c[(c[l
x3e;>2]|0)+12>>2]=134;i=m;return}else if((g|0)==10){c[f+284+20>>2]=1;c[(c[l>>2]|0)+32>
x3e;2]=c[(c[l>>2]|0)+28>>2];i=m;return}}function qg(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
;m=i;i=i+32|0;d=m+28|0;e=m+24|0;l=m+20|0;f=m+16|0;g=m+12|0;k=m+8|0;j=m+4|0;h=m;c[d>>2]=a;c[e>>2]=b;c[l>
x3e;2]=c[d>>2]^c[e>>2];if((c[d>>2]|0)<0)c[d>>2]=0-(c[d>>2]|0);if((c[e>
;>2]|0)<0)c[e>>2]=0-(c[e>>2]|0);c[f>>2]=c[d>>2]>>16&65535;c[g
x3e;>2]=c[d>>2]&65535;c[j>>2]=_(c[g>>2]|0,c[e>>2]|0)|0;c[k>>2]=_(c[f
>>2]|0,c[e>>2]|0)|0;c[h>>2]=(c[k>>2]|0)>>>16;c[k>>2]=(c[k>
x3e;2]<<16)+8192;c[j>>2]=(c[j>>2]|0)+(c[k>>2]|0);if((c[j>>2]|0)>>>
;0>=(c[k>>2]|0)>>>0){b=c[j>>2]|0;b=b>>>14;j=c[h>>2]|0;j=j<
x3c;18;j=b|j;c[k>>2]=j;j=c[l>>2]|0;j=(j|0)>=0;k=c[k>>2]|0;l=0-k|0;l=j?k:l;i=m;return l|0}c[h
x3e;>2]=(c[h>>2]|0)+1;b=c[j>>2]|0;b=b>>>14;j=c[h>>2]|0;j=j<<18;j=b|j
;c[k>>2]=j;j=c[l>>2]|0;j=(j|0)>=0;k=c[k>>2]|0;l=0-k|0;l=j?k:l;i=m;return l|0}function rg(b,d){
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,q=0,r=0,s=0;s=i;i=i+48|0;r=s+40|0;g=s+36|0;m=s+32|0;k=s+28|0;o=s+24|0;h=
s+20|0;q=s+16|0;p=s+12|0;n=s+8|0;j=s+4|0;l=s;c[r>>2]=b;c[g>>2]=d;c[r>>2]=c[r>>2];c[g>
;>2]=c[g>>2];d=c[r>>2]|0;if((c[(c[r>>2]|0)+16>>2]|0)<(c[(c[r>>2]|0)+
284+20>>2]|0)){c[d+12>>2]=134;i=s;return}if((e[d+284+60>>1]|0)!=0?(e[(c[r>>2]|0)+284+62
x3e;>1]|0)!=0:0)d=(e[(c[r>>2]|0)+284+64>>1]|0)==0;else d=1;c[q>>2]=d&1;if((e[(c[r>
x3e;2]|0)+284+2>>1]|0)>>>0>=(e[(c[r>>2]|0)+36+8>>1]|0)>>>0){if(!(
a[(c[r>>2]|0)+561>>0]|0)){i=s;return}c[(c[r>>2]|0)+12>>2]=134;i=s;return}d=e[(c[r>
x3e;2]|0)+284+2>>1]|0;b=(c[r>>2]|0)+36|0;if(c[q>>2]|0)c[o>>2]=(c[b+12>>2]|0)+(
d<<3);else c[o>>2]=(c[b+20>>2]|0)+(d<<3);c[h>>2]=(c[(c[r>>2]|0)+36+16
>>2]|0)+(e[(c[r>>2]|0)+284+2>>1]<<3);if((e[(c[r>>2]|0)+284+2>>1]|0)
x3e;>>0<(e[(c[r>>2]|0)+36+8>>1]|0)>>>0?(e[(c[r>>2]|0)+284+4>>
;1]|0)>>>0<(e[(c[r>>2]|0)+72+8>>1]|0)>>>0:0){d=c[(c[r>>2]|0)+576
>>2]|0;b=c[r>>2]|0;f=e[(c[r>>2]|0)+284+4>>1]|0;g=(c[r>>2]|0)+72|0;if(c[q>
x3e;2]|0)c[m>>2]=Oa[d&63](b,(c[(c[g+12>>2]|0)+(f<<3)>>2]|0)-(c[c[o>>2]>
;>2]|0)|0,(c[(c[(c[r>>2]|0)+72+12>>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)+4
x3e;>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;else c[m>>2]=Oa[d&63](b,(c[(c[g+20>>2]|
0)+(f<<3)>>2]|0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+72+20>>2]|0)+(
e[(c[r>>2]|0)+284+4>>1]<<3)+4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;c[
k>>2]=Oa[c[(c[r>>2]|0)+572>>2]&63](c[r>>2]|0,(c[(c[(c[r>>2]|0)+72+16>
;>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)>>2]|0)-(c[c[h>>2]>>2]|0)|0
,(c[(c[(c[r>>2]|0)+72+16>>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)+4>>2]|0
)-(c[(c[h>>2]|0)+4>>2]|0)|0)|0}else{c[m>>2]=0;c[k>>2]=0}while(1){b=c[r>>2]|0;if
((c[(c[r>>2]|0)+284+20>>2]|0)<=0){d=34;break}f=b+28|0;g=(c[f>>2]|0)+-1|0;c[f>>2]=g;
c[p>>2]=c[(c[(c[r>>2]|0)+24>>2]|0)+(g<<2)>>2];if((c[p>>2]|0)>
x3e;>0>=(e[(c[r>>2]|0)+108+8>>1]|0)>>>0){if(a[(c[r>>2]|0)+561>>
0]|0){d=22;break}}else{d=c[(c[r>>2]|0)+576>>2]|0;b=c[r>>2]|0;f=c[p>>2]|0;g=(c[r>>
;2]|0)+108|0;if(c[q>>2]|0)c[n>>2]=Oa[d&63](b,(c[(c[g+12>>2]|0)+(f<<3)>>2]|
0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+12>>2]|0)+(c[p>>2]<<3)+
4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;else c[n>>2]=Oa[d&63](b,(c[(c[g+20>>
;2]|0)+(f<<3)>>2]|0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+20>>2
]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;c[j>>2]=Oa[c
[(c[r>>2]|0)+572>>2]&63](c[r>>2]|0,(c[(c[(c[r>>2]|0)+108+16>>2]|0)+(c[p
x3e;>2]<<3)>>2]|0)-(c[c[h>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+16>>
;2]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0)|0)|0;if(c[n>>2]|
0){if(c[m>>2]|0)d=xb(c[n>>2]|0,c[k>>2]|0,c[m>>2]|0)|0;else d=c[j>>2]|0;c[l>
;>2]=d}else c[l>>2]=0;_a[c[(c[r>>2]|0)+584>>2]&15](c[r>>2]|0,(c[r>>2
]|0)+108|0,c[p>>2]&65535,(c[l>>2]|0)-(c[j>>2]|0)|0)}g=(c[r>>2]|0)+284+20|0;c[g>
;>2]=(c[g>>2]|0)+-1}if((d|0)==22){c[(c[r>>2]|0)+12>>2]=134;i=s;return}else if((d|0)==34){c[b+
284+20>>2]=1;c[(c[r>>2]|0)+32>>2]=c[(c[r>>2]|0)+28>>2];i=s;return}}function sg
(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+8|0;j=m+4|0;l=m+12|0;k=m;c[h>>2]=f;c[j>>2]=g;b[l
x3e;>1]=c[c[j>>2]>>2];if((e[l>>1]|0)>>>0<(e[(c[h>>2]|0)+72+8>
;>1]|0)>>>0?(e[(c[h>>2]|0)+284>>1]|0)>>>0<(e[(c[h>>2]|0)+36
+8>>1]|0)>>>0:0){if(!(e[(c[h>>2]|0)+284+62>>1]|0)){f=(c[(c[h>>2]|0)+72+12
>>2]|0)+(e[l>>1]<<3)|0;g=(c[(c[h>>2]|0)+36+12>>2]|0)+(e[(c[h>>2]|0)+
284>>1]<<3)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];_a[c[(c[h>>
;2]|0)+588>>2]&15](c[h>>2]|0,(c[h>>2]|0)+72|0,b[l>>1]|0,c[(c[j>>2]|0)+4
x3e;>2]|0);f=(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)|0;g=(c[(c[h>>2]|0)+
72+12>>2]|0)+(e[l>>1]<<3)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>
;2]}c[k>>2]=Oa[c[(c[h>>2]|0)+572>>2]&63](c[h>>2]|0,(c[(c[(c[h>>2]|0)+72+16
>>2]|0)+(e[l>>1]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[(c[h
x3e;>2]|0)+284>>1]<<3)>>2]|0)|0,(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>
x3e;1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[(c[h>>2]|0)+284>>
;1]<<3)+4>>2]|0)|0)|0;_a[c[(c[h>>2]|0)+584>>2]&15](c[h>>2]|0,(c[h>
x3e;2]|0)+72|0,b[l>>1]|0,(c[(c[j>>2]|0)+4>>2]|0)-(c[k>>2]|0)|0);b[(c[h>>2]|0)+
284+2>>1]=b[(c[h>>2]|0)+284>>1]|0;b[(c[h>>2]|0)+284+4>>1]=b[l>>1]|0;
if(!(d[(c[h>>2]|0)+368>>0]&1)){i=m;return}b[(c[h>>2]|0)+284>>1]=b[l>>1]|0
;i=m;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return
}function tg(d,f){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+8|0;l=k+4|0;h=k+12|0;g=k;c[j>>2]=d;c[l>>
;2]=f;c[j>>2]=c[j>>2];c[l>>2]=c[l>>2];if((c[(c[j>>2]|0)+16>>2]|0)>
;=(c[(c[j>>2]|0)+284+20>>2]|0)?(e[(c[j>>2]|0)+284>>1]|0)>>>0<(e[(c[j
>>2]|0)+36+8>>1]|0)>>>0:0){while(1){d=c[j>>2]|0;if((c[(c[j>>2]|0)+284+20
x3e;>2]|0)<=0){f=11;break}f=d+28|0;c[f>>2]=(c[f>>2]|0)+-1;b[h>>1]=c[(c[(c[j>>2
]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<2)>>2];f=c[j>>2]|0;if((e[h>
;>1]|0)>>>0>=(e[(c[j>>2]|0)+72+8>>1]|0)>>>0){if(a[f+561>>0
]|0){f=8;break}}else{c[g>>2]=Oa[c[f+572>>2]&63](c[j>>2]|0,(c[(c[(c[j>>2]|0)+72+16
x3e;>2]|0)+(e[h>>1]<<3)>>2]|0)-(c[(c[(c[j>>2]|0)+36+16>>2]|0)+(e[(c[j>
;>2]|0)+284>>1]<<3)>>2]|0)|0,(c[(c[(c[j>>2]|0)+72+16>>2]|0)+(e[h>>
;1]<<3)+4>>2]|0)-(c[(c[(c[j>>2]|0)+36+16>>2]|0)+(e[(c[j>>2]|0)+284>>
1]<<3)+4>>2]|0)|0)|0;_a[c[(c[j>>2]|0)+584>>2]&15](c[j>>2]|0,(c[j>>
;2]|0)+72|0,b[h>>1]|0,0-(c[g>>2]|0)|0)}l=(c[j>>2]|0)+284+20|0;c[l>>2]=(c[l>>2]|
0)+-1}if((f|0)==8){c[(c[j>>2]|0)+12>>2]=134;i=k;return}else if((f|0)==11){c[d+284+20>>2]=1;c[(c[j
x3e;>2]|0)+32>>2]=c[(c[j>>2]|0)+28>>2];i=k;return}}if(!(a[(c[j>>2]|0)+561>>
;0]|0)){i=k;return}c[(c[j>>2]|0)+12>>2]=134;i=k;return}function ug(f,g){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;h=n+16|0;o=n+12|0;j=n+8|0;m=n+20|0;k=n+4|0;l=n;c[h>>2]=f;c[o>>2]=g;c[j>>2]=c[(
c[o>>2]|0)+4>>2];b[m>>1]=c[c[o>>2]>>2];if((e[m>>1]|0)>>>
;0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0?(c[j>>2]|0)>>>0<(c[(c[h
x3e;>2]|0)+380>>2]|0)>>>0:0){c[k>>2]=Ya[c[(c[h>>2]|0)+592>>2]&127
](c[h>>2]|0,c[j>>2]|0)|0;if(!(e[(c[h>>2]|0)+284+60>>1]|0)){o=qg(c[k>>2]|0,b[(c
[h>>2]|0)+284+14>>1]|0)|0;c[(c[(c[h>>2]|0)+36+12>>2]|0)+(e[m>>1]<<3)
x3e;>2]=o;o=qg(c[k>>2]|0,b[(c[h>>2]|0)+284+14+2>>1]|0)|0;c[(c[(c[h>>2]|0)+36+12>
;>2]|0)+(e[m>>1]<<3)+4>>2]=o;o=(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>
;1]<<3)|0;f=(c[(c[h>>2]|0)+36+12>>2]|0)+(e[m>>1]<<3)|0;c[o>>2]=c[f
x3e;>2];c[o+4>>2]=c[f+4>>2]}c[l>>2]=Oa[c[(c[h>>2]|0)+572>>2]&63](c[h
>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>>2]|0,c[(c[(c[h>
;>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)|0;if(d[(c[h>>2]|0)+368>
x3e;0]&1|0){o=(c[k>>2]|0)-(c[l>>2]|0)|0;if(((((c[k>>2]|0)-(c[l>>2]|0)|0)<0?0-o
|0:o)|0)>(c[(c[h>>2]|0)+284+36>>2]|0))c[k>>2]=c[l>>2];c[k>>2]=Oa[c[(c[h
x3e;>2]|0)+568>>2]&63](c[h>>2]|0,c[k>>2]|0,c[(c[h>>2]|0)+244+20>>2]|
0)|0}_a[c[(c[h>>2]|0)+584>>2]&15](c[h>>2]|0,(c[h>>2]|0)+36|0,b[m>>1]|0,(c
[k>>2]|0)-(c[l>>2]|0)|0);b[(c[h>>2]|0)+284>>1]=b[m>>1]|0;b[(c[h>>2]|
0)+284+2>>1]=b[m>>1]|0;i=n;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=n;return}c[(c[h>
x3e;2]|0)+12>>2]=134;i=n;return}function vg(a,f){a=a|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+4|0;h=l;k=l+10|0
;j=l+8|0;c[g>>2]=a;c[h>>2]=f;b[k>>1]=d[(c[(c[g>>2]|0)+356>>2]|0)+((c[(c[g>
;>2]|0)+360>>2]|0)+1)>>0]|0;if((e[k>>1]|0)>>>0>=((c[(c[g>>2]|0)+
20>>2]|0)+1-(c[(c[g>>2]|0)+16>>2]|0)|0)>>>0){c[(c[g>>2]|0)+12>>
2]=130;i=l;return}b[j>>1]=1;while(1){if((e[j>>1]|0|0)>(e[k>>1]|0|0))break;c[(c[h>>2
]|0)+((e[j>>1]|0)-1<<2)>>2]=d[(c[(c[g>>2]|0)+356>>2]|0)+((c[(c[g>>2]|
0)+360>>2]|0)+(e[j>>1]|0)+1)>>0];b[j>>1]=(b[j>>1]|0)+1<<16>>
;16}a=(c[g>>2]|0)+32|0;c[a>>2]=(c[a>>2]|0)+(e[k>>1]|0);i=l;return}function wg(f,g){f=f|0
;g=g|0;var h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+4|0;j=m;l=m+10|0;k=m+8|0;c[h>>2]=f;c[j>>2]=g;b[l>>
1]=d[(c[(c[h>>2]|0)+356>>2]|0)+((c[(c[h>>2]|0)+360>>2]|0)+1)>>0]|0;g=c[h>
x3e;2]|0;if((e[l>>1]|0)>>>0>=((c[(c[h>>2]|0)+20>>2]|0)+1-(c[(c[h>>2]|
0)+16>>2]|0)|0)>>>0){c[g+12>>2]=130;i=m;return}f=g+360|0;c[f>>2]=(c[f>>2]|
0)+2;b[k>>1]=0;while(1){g=c[h>>2]|0;if((e[k>>1]|0|0)>=(e[l>>1]|0|0))break;f=(xg(g)|
0)<<16>>16;c[(c[j>>2]|0)+((e[k>>1]|0)<<2)>>2]=f;b[k>>1]=(b
[k>>1]|0)+1<<16>>16}a[g+376>>0]=0;k=(c[h>>2]|0)+32|0;c[k>>2]=(c[k>
;>2]|0)+(e[l>>1]|0);i=m;return}function xg(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;a=(c[b>
x3e;2]|0)+360|0;c[a>>2]=(c[a>>2]|0)+2;i=e;return ((d[(c[(c[b>>2]|0)+356>>2]|0)+((c[(c[b
x3e;>2]|0)+360>>2]|0)-2)>>0]|0)<<8)+(d[(c[(c[b>>2]|0)+356>>2]|0)+((c[(c[b
>>2]|0)+360>>2]|0)-1)>>0]|0)&65535|0}function yg(b,f){b=b|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i
;i=i+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=b;c[h>>2]=f;c[j>>2]=c[c[h>>2]>>
2];f=c[g>>2]|0;do if((c[j>>2]|0)>>>0<(e[(c[g>>2]|0)+108+8>>1]|0)>
;>>0){b=c[g>>2]|0;if(d[f+368>>0]&1|0){c[k>>2]=Oa[c[b+576>>2]&63](c[g
>>2]|0,c[(c[(c[g>>2]|0)+108+12>>2]|0)+(c[j>>2]<<3)>>2]|0,c[(c[(c[g
x3e;>2]|0)+108+12>>2]|0)+(c[j>>2]<<3)+4>>2]|0)|0;break}else{c[k>>2]=Oa[c[
b+572>>2]&63](c[g>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(c[j>>2]<<
;3)>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(c[j>>2]<<3)+4>>2]|0)|0;break
}}else{if(!(a[f+561>>0]|0)){c[k>>2]=0;break}c[(c[g>>2]|0)+12>>2]=134;i=l;return}while(0);
c[c[h>>2]>>2]=c[k>>2];i=l;return}function zg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0
;g=l+8|0;h=l+4|0;j=l;k=l+12|0;c[g>>2]=d;c[h>>2]=f;b[k>>1]=c[c[h>>2]>>2];f=c[g
x3e;>2]|0;if((e[k>>1]|0)>>>0>=(e[(c[g>>2]|0)+108+8>>1]|0)>>>
;0){if(!(a[f+561>>0]|0)){i=l;return}c[(c[g>>2]|0)+12>>2]=134;i=l;return}else{c[j>>2]=Oa[
c[f+572>>2]&63](c[g>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(e[k>>1]<
x3c;3)>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)|0;
_a[c[(c[g>>2]|0)+584>>2]&15](c[g>>2]|0,(c[g>>2]|0)+108|0,b[k>>1]|0,(c[(c[
h>>2]|0)+4>>2]|0)-(c[j>>2]|0)|0);if(e[(c[g>>2]|0)+284+64>>1]|0){i=l;return}j=(
c[(c[g>>2]|0)+108+12>>2]|0)+(e[k>>1]<<3)|0;k=(c[(c[g>>2]|0)+108+16>>
2]|0)+(e[k>>1]<<3)|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];i=l;return}}
function Ag(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;r=i;i=i+32|0;h=r+24|0;j=r+20|0;l=r+30|0;m=r+28|0;k=r+16
|0;o=r+12|0;p=r+8|0;n=r;c[h>>2]=f;c[j>>2]=g;b[l>>1]=c[(c[j>>2]|0)+4>>2];b[m>
;>1]=c[c[j>>2]>>2];do if((e[m>>1]|0)>>>0<(e[(c[h>>2]|0)+36+8>
;>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h>>2]|0)+72+8>>1]|0)>
;>>0:0){g=c[h>>2]|0;if(d[(c[h>>2]|0)+368>>0]&1|0){c[k>>2]=Oa[c[g+572>
;>2]&63](c[h>>2]|0,(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>
x3e;2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)>>2]|0)|0,(c[(c[(c[h>
;>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>
x3e;2]|0)+(e[l>>1]<<3)+4>>2]|0)|0)|0;break}c[o>>2]=(c[g+36+20>>2]|0)+(e[m>
;>1]<<3);c[p>>2]=(c[(c[h>>2]|0)+72+20>>2]|0)+(e[l>>1]<<3);if((c
[(c[h>>2]|0)+216+4>>2]|0)==(c[(c[h>>2]|0)+216+8>>2]|0)){c[k>>2]=Oa[c[(c[h>
;>2]|0)+576>>2]&63](c[h>>2]|0,(c[c[o>>2]>>2]|0)-(c[c[p>>2]>>
;2]|0)|0,(c[(c[o>>2]|0)+4>>2]|0)-(c[(c[p>>2]|0)+4>>2]|0)|0)|0;c[k>>2]=Mb(c[k
x3e;>2]|0,c[(c[h>>2]|0)+216+4>>2]|0)|0;break}else{c[n>>2]=Mb((c[c[o>>2]>>
2]|0)-(c[c[p>>2]>>2]|0)|0,c[(c[h>>2]|0)+216+4>>2]|0)|0;c[n+4>>2]=Mb((c[(c[o>
;>2]|0)+4>>2]|0)-(c[(c[p>>2]|0)+4>>2]|0)|0,c[(c[h>>2]|0)+216+8>>2]|0)|0;c
[k>>2]=Oa[c[(c[h>>2]|0)+576>>2]&63](c[h>>2]|0,c[n>>2]|0,c[n+4>>
2]|0)|0;break}}else q=3;while(0);do if((q|0)==3){if(!(a[(c[h>>2]|0)+561>>0]|0)){c[k>>2]=0;break}c[(
c[h>>2]|0)+12>>2]=134;i=r;return}while(0);c[c[j>>2]>>2]=c[k>>2];i=r;return}function
Bg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=e[(c[d>>2]|0)+244+8>>1]|0;a=Mb(a,of(c[d>
;>2]|0)|0)|0;i=b;return a|0}function Cg(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+8|0;k=j+4|0;h=j;g=j+12|0;
c[f>>2]=b;c[k>>2]=e;if(c[c[k>>2]>>2]|0){i=j;return}c[h>>2]=1;a[g>>0]=
0;while(1){if(((Yf(c[f>>2]|0)|0)&255|0)==1){f=9;break}switch(d[(c[f>>2]|0)+368>>0]|0|0){case
88:{c[h>>2]=(c[h>>2]|0)+1;break}case 27:{a[g>>0]=(c[h>>2]|0)==1;break}case 89:{c[h>
x3e;2]=(c[h>>2]|0)+-1;a[g>>0]=(c[h>>2]|0)==0;break}default:{}}if(d[g>>0]|0|0){f=9;break}}
if((f|0)==9){i=j;return}}function Dg(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;p=i;i=i+32|0;o=p+20|0;h=p+16|0;m=p+12|
0;n=p+8|0;j=p+24|0;l=p+4|0;k=p;c[o>>2]=f;c[h>>2]=g;c[n>>2]=c[c[h>>2]>>2];c[m
x3e;>2]=1;while(1){h=c[(c[o>>2]|0)+28>>2]|0;if((c[m>>2]|0)>>>0>(c[n>
x3e;2]|0)>>>0){g=16;break}f=c[o>>2]|0;if((h|0)<2){g=4;break}h=f+28|0;c[h>>2]=(c[h>
x3e;2]|0)-2;b[j>>1]=c[(c[(c[o>>2]|0)+24>>2]|0)+((c[(c[o>>2]|0)+28>>2]|0)+1<
;<2)>>2];c[k>>2]=c[(c[(c[o>>2]|0)+24>>2]|0)+(c[(c[o>>2]|0)+28>>
2]<<2)>>2];if((e[j>>1]|0)>>>0>=(e[(c[o>>2]|0)+36+8>>1]|0)
x3e;>>0){if(a[(c[o>>2]|0)+561>>0]|0)c[(c[o>>2]|0)+12>>2]=134}else{c[l>>
;2]=(c[k>>2]&240)>>>4;switch(d[(c[o>>2]|0)+368>>0]|0){case 114:{c[l>>
;2]=(c[l>>2]|0)+32;break}case 113:{c[l>>2]=(c[l>>2]|0)+16;break}default:{}}c[l>>2]=(c[l
x3e;>2]|0)+(b[(c[o>>2]|0)+284+48>>1]|0);h=Bg(c[o>>2]|0)|0;if((h|0)==(c[l>>2]|0)){c[
k>>2]=(c[k>>2]&15)-8;if((c[k>>2]|0)>=0)c[k>>2]=(c[k>>2]|0)+1;c[k>
;>2]=(c[k>>2]<<6|0)/(1<<b[(c[o>>2]|0)+284+50>>1]|0)|0;_a[c[(c[o>>
;2]|0)+584>>2]&15](c[o>>2]|0,(c[o>>2]|0)+36|0,b[j>>1]|0,c[k>>2]|0)}}c[m
x3e;>2]=(c[m>>2]|0)+1}if((g|0)==4){c[f+12>>2]=129;i=p;return}else if((g|0)==16){c[(c[o>>2]|0)+
32>>2]=h;i=p;return}}function Eg(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;o=i;i=i+32|0;n=o+24|0;g=o+20|0;m
=o+16|0;l=o+12|0;h=o+8|0;k=o+4|0;j=o;c[n>>2]=e;c[g>>2]=f;c[m>>2]=c[c[g>>2]>>2];
c[l>>2]=1;while(1){g=c[(c[n>>2]|0)+28>>2]|0;if((c[l>>2]|0)>>>0>(c[m
x3e;>2]|0)>>>0){f=16;break}e=c[n>>2]|0;if((g|0)<2){f=4;break}g=e+28|0;c[g>>2]=(c[g
x3e;>2]|0)-2;c[h>>2]=c[(c[(c[n>>2]|0)+24>>2]|0)+((c[(c[n>>2]|0)+28>>2]|0)+
1<<2)>>2];c[j>>2]=c[(c[(c[n>>2]|0)+24>>2]|0)+(c[(c[n>>2]|0)+28>
x3e;2]<<2)>>2];if((c[h>>2]|0)>>>0>=(c[(c[n>>2]|0)+380>>2]|
0)>>>0){if(a[(c[n>>2]|0)+561>>0]|0){f=7;break}}else{c[k>>2]=(c[j>>2]&
;240)>>>4;switch(d[(c[n>>2]|0)+368>>0]|0){case 117:{c[k>>2]=(c[k>>2]|0)+32
;break}case 116:{c[k>>2]=(c[k>>2]|0)+16;break}default:{}}c[k>>2]=(c[k>>2]|0)+(b[(c[n>
;>2]|0)+284+48>>1]|0);g=Bg(c[n>>2]|0)|0;if((g|0)==(c[k>>2]|0)){c[j>>2]=(c[j>
x3e;2]&15)-8;if((c[j>>2]|0)>=0)c[j>>2]=(c[j>>2]|0)+1;c[j>>2]=(c[j>>2
]<<6|0)/(1<<b[(c[n>>2]|0)+284+50>>1]|0)|0;Ua[c[(c[n>>2]|0)+600>>2]
x26;31](c[n>>2]|0,c[h>>2]|0,c[j>>2]|0)}}c[l>>2]=(c[l>>2]|0)+1}if((f|0)==4){c[e
+12>>2]=129;i=o;return}else if((f|0)==7){c[(c[n>>2]|0)+12>>2]=134;i=o;return}else if((f|0)==16){c[(
c[n>>2]|0)+32>>2]=g;i=o;return}}function Fg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|
0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;switch(c[g>>2]&192|0){case 0:{c[(c[e>
;>2]|0)+476>>2]=(c[f>>2]|0)/2|0;break}case 64:{c[(c[e>>2]|0)+476>>2]=c[f>>
;2];break}case 128:{c[(c[e>>2]|0)+476>>2]=c[f>>2]<<1;break}case 192:{c[(c[e>>2
]|0)+476>>2]=c[f>>2];break}default:{}}switch(c[g>>2]&48|0){case 0:{c[(c[e>>2]|0)+480
>>2]=0;break}case 16:{c[(c[e>>2]|0)+480>>2]=(c[(c[e>>2]|0)+476>>2]|0)/4|0;break
}case 32:{c[(c[e>>2]|0)+480>>2]=(c[(c[e>>2]|0)+476>>2]|0)/2|0;break}case 48:{c[(c[e>
;>2]|0)+480>>2]=((c[(c[e>>2]|0)+476>>2]|0)*3|0)/4|0;break}default:{}}if(!(c[g>>2]
x26;15)){c[(c[e>>2]|0)+484>>2]=(c[(c[e>>2]|0)+476>>2]|0)-1;d=c[e>>2]|0;d=d+476
|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+480|0;a=c[d>>2]|0;a=(a|0)/256|0;c
[d>>2]=a;d=c[e>>2]|0;d=d+484|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;i=h;return}else{d=(_((
c[g>>2]&15)-4|0,c[(c[e>>2]|0)+476>>2]|0)|0)/8|0;c[(c[e>>2]|0)+484>>2]=d;d
=c[e>>2]|0;d=d+476|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+480|0;a=c[d>
;>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+484|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>
;2]=a;i=h;return}}function Gg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0;k=i;i=i+16|0;j=k+4|0;l=k;h=k+8|0;c[j>>2]=f;c[l>
;>2]=g;c[j>>2]=c[j>>2];c[l>>2]=c[l>>2];if((c[(c[j>>2]|0)+16>>2]|
0)<(c[(c[j>>2]|0)+284+20>>2]|0)){c[(c[j>>2]|0)+12>>2]=129;i=k;return}while(1){f=c[j
>>2]|0;if((c[(c[j>>2]|0)+284+20>>2]|0)<=0){g=9;break}l=f+28|0;c[l>>2]=(c[l>>
;2]|0)+-1;b[h>>1]=c[(c[(c[j>>2]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<
2)>>2];if((e[h>>1]|0)>>>0>=(e[(c[j>>2]|0)+144+8>>1]|0)>>
x3e;0){if(a[(c[j>>2]|0)+561>>0]|0){g=6;break}}else{l=(c[(c[j>>2]|0)+144+24>>2]|0)+(e[h
x3e;>1]|0)|0;a[l>>0]=d[l>>0]^1}l=(c[j>>2]|0)+284+20|0;c[l>>2]=(c[l>>2]|0)+-
1}if((g|0)==6){c[(c[j>>2]|0)+12>>2]=134;i=k;return}else if((g|0)==9){c[f+284+20>>2]=1;c[(c[j>
x3e;2]|0)+32>>2]=c[(c[j>>2]|0)+28>>2];i=k;return}}function Hg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0
,m=0,n=0;m=i;i=i+16|0;h=m+4|0;n=m;j=m+12|0;k=m+10|0;l=m+8|0;c[h>>2]=f;c[n>>2]=g;b[k>>1]=c[(c[n>
;>2]|0)+4>>2];b[l>>1]=c[c[n>>2]>>2];if((e[k>>1]|0)>>>0<
;(e[(c[h>>2]|0)+144+8>>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h>
x3e;2]|0)+144+8>>1]|0)>>>0:0){b[j>>1]=b[l>>1]|0;while(1){if((e[j>>1]|0)
x3e;(e[k>>1]|0))break;n=(c[(c[h>>2]|0)+144+24>>2]|0)+(e[j>>1]|0)|0;a[n>>0]=d[n
>>0]|1;b[j>>1]=(b[j>>1]|0)+1<<16>>16}i=m;return}if(!(a[(c[h>>2]|0)+561
>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}function Ig(f,g){f=f|0;g=g|0;var h=0,j=0,k
=0,l=0,m=0,n=0;m=i;i=i+16|0;h=m+4|0;n=m;j=m+12|0;k=m+10|0;l=m+8|0;c[h>>2]=f;c[n>>2]=g;b[k>>1]=c[(c
[n>>2]|0)+4>>2];b[l>>1]=c[c[n>>2]>>2];if((e[k>>1]|0)>>>
;0<(e[(c[h>>2]|0)+144+8>>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h
>>2]|0)+144+8>>1]|0)>>>0:0){b[j>>1]=b[l>>1]|0;while(1){if((e[j>>
;1]|0)>(e[k>>1]|0))break;n=(c[(c[h>>2]|0)+144+24>>2]|0)+(e[j>>1]|0)|0;a[n>>
;0]=d[n>>0]&-2;b[j>>1]=(b[j>>1]|0)+1<<16>>16}i=m;return}if(!(a[(c[h>
x3e;2]|0)+561>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}function Jg(b,f){b=b|0;f=f|0;
var g=0,h=0,j=0,k=0;k=i;i=i+16|0;g=k+8|0;h=k+4|0;j=k;c[g>>2]=b;c[h>>2]=f;c[j>>2]=c[c[h>>
2]>>2]&255;if((c[j>>2]|0)==255){a[(c[g>>2]|0)+284+53>>0]=1;i=k;return}if(!(c[j>
;>2]|0)){a[(c[g>>2]|0)+284+53>>0]=0;i=k;return}if(c[c[h>>2]>>2]&256|0?(e[(c[g
x3e;>2]|0)+244+8>>1]|0|0)<=(c[j>>2]|0):0)a[(c[g>>2]|0)+284+53>>0]=1;if(c[c[h
x3e;>2]>>2]&512|0?d[(c[g>>2]|0)+244+37>>0]|0|0:0)a[(c[g>>2]|0)+284+53>>
;0]=1;if(c[c[h>>2]>>2]&1024|0?d[(c[g>>2]|0)+244+38>>0]|0|0:0)a[(c[g>>2]|0
)+284+53>>0]=1;if(c[c[h>>2]>>2]&2048|0?(e[(c[g>>2]|0)+244+8>>1]|0|0)>
;(c[j>>2]|0):0)a[(c[g>>2]|0)+284+53>>0]=0;if(c[c[h>>2]>>2]&4096|0?d[(c[g
x3e;>2]|0)+244+37>>0]|0|0:0)a[(c[g>>2]|0)+284+53>>0]=0;if(!(c[c[h>>2]>>2]
x26;8192)){i=k;return}if(!(d[(c[g>>2]|0)+244+38>>0]|0)){i=k;return}a[(c[g>>2]|0)+284+53>>
;0]=0;i=k;return}function Kg(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;s=i;i=i+48|0;h=s+32|0;t=s+28|0
;j=s+24|0;k=s+20|0;l=s+16|0;m=s+38|0;n=s+36|0;o=s+12|0;q=s+8|0;p=s+4|0;r=s;c[h>>2]=f;c[t>>2]=g;b[m>>
;1]=c[(c[t>>2]|0)+4>>2];b[n>>1]=c[c[t>>2]>>2];if((e[n>>1]|0)>
x3e;>0<(e[(c[h>>2]|0)+72+8>>1]|0)>>>0?(e[m>>1]|0)>>>0<
;(e[(c[h>>2]|0)+108+8>>1]|0)>>>0:0){c[o>>2]=(c[(c[h>>2]|0)+72+12>>
;2]|0)+(e[n>>1]<<3);c[q>>2]=(c[(c[h>>2]|0)+108+12>>2]|0)+(e[m>>1]<
;<3);c[j>>2]=(c[c[o>>2]>>2]|0)-(c[c[q>>2]>>2]|0);c[k>>2]=(c[(c[
o>>2]|0)+4>>2]|0)-(c[(c[q>>2]|0)+4>>2]|0);if(d[(c[h>>2]|0)+368>>0]
x26;1|0){c[l>>2]=c[k>>2];c[k>>2]=c[j>>2];c[j>>2]=0-(c[l>>2]|0)}Rf(c[
h>>2]|0,c[j>>2]|0,c[k>>2]|0,(c[h>>2]|0)+284+6|0)|0;c[p>>2]=(c[(c[h>>
2]|0)+72+16>>2]|0)+(e[n>>1]<<3);c[r>>2]=(c[(c[h>>2]|0)+108+16>>2]|0)+(
e[m>>1]<<3);c[j>>2]=(c[c[p>>2]>>2]|0)-(c[c[r>>2]>>2]|0);c[
k>>2]=(c[(c[p>>2]|0)+4>>2]|0)-(c[(c[r>>2]|0)+4>>2]|0);if(d[(c[h>>2]|
0)+368>>0]&1|0){c[l>>2]=c[k>>2];c[k>>2]=c[j>>2];c[j>>2]=0-(c[l
x3e;>2]|0)}Rf(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,(c[h>>2]|0)+284+10|0)|0;vf(c[h>>
;2]|0);i=s;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=s;return}c[(c[h>>2]|0)+12>>2]=134;i=s
;return}function Lg(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=
b;c[g>>2]=0;c[g>>2]=c[c[f>>2]>>2]&1|0?35:0;if(c[c[f>>2]>>2]&
;2|0?d[(c[e>>2]|0)+244+37>>0]|0|0:0)c[g>>2]=c[g>>2]|128;if(c[c[f>>2]>>
;2]&4|0?d[(c[e>>2]|0)+244+38>>0]|0|0:0)c[g>>2]=c[g>>2]|256;if(!(c[c[f>>2]
x3e;>2]&32)){b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}if(!(d[(c[e>>2]|0)+604
>>0]|0)){b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}c[g>>2]=c[g>>2
]|4096;b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}function Mg(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;j=k+12|0;g=k+8|0;h=k+4|0;f=k;c[j>>2]=b;c[g>>2]=e;c[h>>2]=c[(c[j>>2]|
0)+416>>2];c[f>>2]=(c[h>>2]|0)+(c[(c[j>>2]|0)+408>>2]<<4);while(1){if
((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break;if((c[(c[h>>2]|0)+8>
;>2]|0)==(c[c[g>>2]>>2]|0))break;c[h>>2]=(c[h>>2]|0)+16}do if((c[h>>2]|0)==(
c[f>>2]|0)){e=c[j>>2]|0;if((c[(c[j>>2]|0)+408>>2]|0)>>>0<(c[(c[j>
;>2]|0)+412>>2]|0)>>>0){f=e+408|0;c[f>>2]=(c[f>>2]|0)+1;break}c[e+12>>
;2]=141;i=k;return}while(0);if(0<=(c[c[g>>2]>>2]|0)?(c[c[g>>2]>>2]|0)<=255:0){
c[(c[h>>2]|0)+8>>2]=c[c[g>>2]>>2]&255;c[(c[h>>2]|0)+4>>2]=(c[(c
[j>>2]|0)+360>>2]|0)+1;c[c[h>>2]>>2]=c[(c[j>>2]|0)+352>>2];a[(c[h>
;>2]|0)+12>>0]=1;if((c[c[g>>2]>>2]|0)>>>0>(c[(c[j>>2]|0)+424>
;>2]|0)>>>0)c[(c[j>>2]|0)+424>>2]=c[c[g>>2]>>2]&255;a:while(1){
if((Yf(c[j>>2]|0)|0)&255|0){e=17;break}switch(d[(c[j>>2]|0)+368>>0]|0|0){case 44:case 137:{e=
16;break a}case 45:{e=17;break a}default:{}}}if((e|0)==16){c[(c[j>>2]|0)+12>>2]=137;i=k;return}else if((e|0)==
17){i=k;return}}c[(c[j>>2]|0)+12>>2]=141;i=k;return}function Ng(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;g=d+8|0;f=d+4|0;h=d;c[j>>2]=a;c[e>>2]=b;c[j>>2]=c[j>>2];
c[g>>2]=c[(c[e>>2]|0)+8>>2];c[f>>2]=c[(c[e>>2]|0)+4>>2];c[h>>
;2]=c[c[e>>2]>>2];c[(c[e>>2]|0)+8>>2]=c[h>>2];c[(c[e>>2]|0)+4>
x3e;2]=c[g>>2];c[c[e>>2]>>2]=c[f>>2];i=d;return}function Og(a,b){a=a|0;b=b|0;var d=0,e=0
,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if((c[c[e>>2]>>2]|0)<0){i=f;return
}c[(c[d>>2]|0)+284+56>>2]=c[c[e>>2]>>2];i=f;return}function Pg(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;k=j+8|0;g=j+4|0;h=j;c[f>>2]=b;c[k>>2]=e;c[g>>2]=c[(c[k>
x3e;2]|0)+4>>2];c[h>>2]=c[c[k>>2]>>2];if((c[g>>2]|0)<1|(c[g>>2]|
0)>2){if(!(a[(c[f>>2]|0)+561>>0]|0)){i=j;return}c[(c[f>>2]|0)+12>>2]=134;i=j;return
}else{if(c[h>>2]|0)c[h>>2]=c[g>>2];a[(c[f>>2]|0)+284+52>>0]=d[(c[f>>
2]|0)+284+52>>0]&~(c[g>>2]&255)|c[h>>2]&255;i=j;return}}function Qg(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;p=i;i=i+32|0;k=p+24|0;q=p+20|0;o=p+28|0;h=p+16|0;j=p+12|0;m=p+8|0;l=p+4|0;n=p;c[k>
;>2]=f;c[q>>2]=g;b[o>>1]=c[c[q>>2]>>2];c[h>>2]=(c[(c[q>>2]|0)+4
>>2]|0)+1;if(((e[o>>1]|0)>>>0<(e[(c[k>>2]|0)+72+8>>1]|0)>>
x3e;0?(c[h>>2]|0)>>>0<((c[(c[k>>2]|0)+380>>2]|0)+1|0)>>>0:0)?(e
[(c[k>>2]|0)+284>>1]|0)>>>0<(e[(c[k>>2]|0)+36+8>>1]|0)>>
x3e;0:0){if(c[h>>2]|0)c[j>>2]=Ya[c[(c[k>>2]|0)+592>>2]&127](c[k>>2]|0,(c[
h>>2]|0)-1|0)|0;else c[j>>2]=0;q=(c[j>>2]|0)-(c[(c[k>>2]|0)+284+44>>2]|0)|0;do
if(((((c[j>>2]|0)-(c[(c[k>>2]|0)+284+44>>2]|0)|0)<0?0-q|0:q)|0)<(c[(c[k>>2]|0
)+284+40>>2]|0)){g=c[(c[k>>2]|0)+284+44>>2]|0;if((c[j>>2]|0)>=0){c[j>>2]=
g;break}else{c[j>>2]=0-g;break}}while(0);if(!(e[(c[k>>2]|0)+284+62>>1]|0)){q=c[(c[(c[k>>
2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)>>2]|0;q=q+(qg(c[j>>2]|
0,b[(c[k>>2]|0)+284+14>>1]|0)|0)|0;c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<
;<3)>>2]=q;q=c[(c[(c[k>>2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<
x3c;3)+4>>2]|0;q=q+(qg(c[j>>2]|0,b[(c[k>>2]|0)+284+14+2>>1]|0)|0)|0;c[(c[(c[k>>
;2]|0)+72+12>>2]|0)+(e[o>>1]<<3)+4>>2]=q;q=(c[(c[k>>2]|0)+72+16>>2]|
0)+(e[o>>1]<<3)|0;f=(c[(c[k>>2]|0)+36+16>>2]|0)+(e[o>>1]<<3)|0;c[q
x3e;>2]=c[f>>2];c[q+4>>2]=c[f+4>>2]}c[n>>2]=Oa[c[(c[k>>2]|0)+576>>
;2]&63](c[k>>2]|0,(c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<<3)>>
2]|0)-(c[(c[(c[k>>2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)>>2]|
0)|0,(c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<<3)+4>>2]|0)-(c[(c[(c[k>>
;2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)+4>>2]|0)|0)|0;c[l>>2]=
Oa[c[(c[k>>2]|0)+572>>2]&63](c[k>>2]|0,(c[(c[(c[k>>2]|0)+72+16>>2]|0)+(e[
o>>1]<<3)>>2]|0)-(c[(c[(c[k>>2]|0)+36+16>>2]|0)+(e[(c[k>>2]|0)+284
x3e;>1]<<3)>>2]|0)|0,(c[(c[(c[k>>2]|0)+72+16>>2]|0)+(e[o>>1]<<3
)+4>>2]|0)-(c[(c[(c[k>>2]|0)+36+16>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)+
4>>2]|0)|0)|0;if(a[(c[k>>2]|0)+284+32>>0]|0?(c[n>>2]^c[j>>2]|0)<0:0)c[j
x3e;>2]=0-(c[j>>2]|0);g=c[k>>2]|0;if(d[(c[k>>2]|0)+368>>0]&4|0){if((e[g+284+60
>>1]|0)==(e[(c[k>>2]|0)+284+62>>1]|0)?(q=(c[j>>2]|0)-(c[n>>2]|0)|0,((((c[j>
;>2]|0)-(c[n>>2]|0)|0)<0?0-q|0:q)|0)>=(c[(c[k>>2]|0)+284+36>>2]|0)):0)c[j>>
;2]=c[n>>2];c[m>>2]=Oa[c[(c[k>>2]|0)+568>>2]&63](c[k>>2]|0,c[j>>
;2]|0,c[(c[k>>2]|0)+244+20+((d[(c[k>>2]|0)+368>>0]&3)<<2)>>2]|0)|0}else c
[m>>2]=If(g,c[j>>2]|0,c[(c[k>>2]|0)+244+20+((d[(c[k>>2]|0)+368>>0]&3)<
;<2)>>2]|0)|0;do if(d[(c[k>>2]|0)+368>>0]&8|0){g=c[m>>2]|0;h=c[(c[k>>
;2]|0)+284+24>>2]|0;if((c[n>>2]|0)>=0){if((g|0)>=(h|0))break;c[m>>2]=c[(c[k>>2
]|0)+284+24>>2];break}else{if((g|0)<=(0-h|0))break;c[m>>2]=0-(c[(c[k>>2]|0)+284+24>>
;2]|0);break}}while(0);_a[c[(c[k>>2]|0)+584>>2]&15](c[k>>2]|0,(c[k>>2]|0)+72|0,b[o
x3e;>1]|0,(c[m>>2]|0)-(c[l>>2]|0)|0);b[(c[k>>2]|0)+284+2>>1]=b[(c[k>>2]|0
)+284>>1]|0;if(d[(c[k>>2]|0)+368>>0]&16|0)b[(c[k>>2]|0)+284>>1]=b[o>
x3e;1]|0;b[(c[k>>2]|0)+284+4>>1]=b[o>>1]|0;i=p;return}if(!(a[(c[k>>2]|0)+561>>
0]|0)){i=p;return}c[(c[k>>2]|0)+12>>2]=134;i=p;return}function Rg(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;s=i;i=i+48|0;o=s+36|0;t=s+32|0;r=s+40|0;q=s+28|0;p=s+24|0;j=s+20|0;l=s+16|0;k=s+12|0;m=s+8|0;h=s;c[o
x3e;>2]=f;c[t>>2]=g;b[r>>1]=c[c[t>>2]>>2];if((e[r>>1]|0)>>>
;0<(e[(c[o>>2]|0)+72+8>>1]|0)>>>0?(e[(c[o>>2]|0)+284>>1]|0)>>
;>0<(e[(c[o>>2]|0)+36+8>>1]|0)>>>0:0){do if((e[(c[o>>2]|0)+284+60>
x3e;1]|0)!=0?(e[(c[o>>2]|0)+284+62>>1]|0)!=0:0){c[k>>2]=(c[(c[o>>2]|0)+72+20>>
2]|0)+(e[r>>1]<<3);c[m>>2]=(c[(c[o>>2]|0)+36+20>>2]|0)+(e[(c[o>>2]|0
)+284>>1]<<3);if((c[(c[o>>2]|0)+216+4>>2]|0)==(c[(c[o>>2]|0)+216+8>>
2]|0)){c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o>>2]|0,(c[c[k>>2]>>
;2]|0)-(c[c[m>>2]>>2]|0)|0,(c[(c[k>>2]|0)+4>>2]|0)-(c[(c[m>>2]|0)+4>>
;2]|0)|0)|0;c[q>>2]=Mb(c[q>>2]|0,c[(c[o>>2]|0)+216+4>>2]|0)|0;break}else{c[h>>
2]=Mb((c[c[k>>2]>>2]|0)-(c[c[m>>2]>>2]|0)|0,c[(c[o>>2]|0)+216+4>>2]|
0)|0;c[h+4>>2]=Mb((c[(c[k>>2]|0)+4>>2]|0)-(c[(c[m>>2]|0)+4>>2]|0)|0,c[(c[o>
;>2]|0)+216+8>>2]|0)|0;c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o>>2]|
0,c[h>>2]|0,c[h+4>>2]|0)|0;break}}else n=7;while(0);if((n|0)==7){c[j>>2]=(c[(c[o>>2]|0)+
72+12>>2]|0)+(e[r>>1]<<3);c[l>>2]=(c[(c[o>>2]|0)+36+12>>2]|0)+(e[(c[
o>>2]|0)+284>>1]<<3);c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o
x3e;>2]|0,(c[c[j>>2]>>2]|0)-(c[c[l>>2]>>2]|0)|0,(c[(c[j>>2]|0)+4>>
;2]|0)-(c[(c[l>>2]|0)+4>>2]|0)|0)|0}t=(c[q>>2]|0)-(c[(c[o>>2]|0)+284+44>>2]|0)|
0;do if(((((c[q>>2]|0)-(c[(c[o>>2]|0)+284+44>>2]|0)|0)<0?0-t|0:t)|0)<(c[(c[o>>
2]|0)+284+40>>2]|0)){g=c[(c[o>>2]|0)+284+44>>2]|0;if((c[q>>2]|0)>=0){c[q>>
;2]=g;break}else{c[q>>2]=0-g;break}}while(0);g=c[o>>2]|0;if(d[(c[o>>2]|0)+368>>0]&4
|0)c[p>>2]=Oa[c[g+568>>2]&63](c[o>>2]|0,c[q>>2]|0,c[(c[o>>2]|0)+244+20+((
d[(c[o>>2]|0)+368>>0]&3)<<2)>>2]|0)|0;else c[p>>2]=If(g,c[q>>2]|
0,c[(c[o>>2]|0)+244+20+((d[(c[o>>2]|0)+368>>0]&3)<<2)>>2]|0)|0;do if(d[(c
[o>>2]|0)+368>>0]&8|0){g=c[p>>2]|0;f=c[(c[o>>2]|0)+284+24>>2]|0;if((c[q
x3e;>2]|0)>=0){if((g|0)>=(f|0))break;c[p>>2]=c[(c[o>>2]|0)+284+24>>2];break}else{if
((g|0)<=(0-f|0))break;c[p>>2]=0-(c[(c[o>>2]|0)+284+24>>2]|0);break}}while(0);c[q>>2
]=Oa[c[(c[o>>2]|0)+572>>2]&63](c[o>>2]|0,(c[(c[(c[o>>2]|0)+72+16>>2]|0)+(
e[r>>1]<<3)>>2]|0)-(c[(c[(c[o>>2]|0)+36+16>>2]|0)+(e[(c[o>>2]|0)+284
>>1]<<3)>>2]|0)|0,(c[(c[(c[o>>2]|0)+72+16>>2]|0)+(e[r>>1]<<
;3)+4>>2]|0)-(c[(c[(c[o>>2]|0)+36+16>>2]|0)+(e[(c[o>>2]|0)+284>>1]<<
3)+4>>2]|0)|0)|0;_a[c[(c[o>>2]|0)+584>>2]&15](c[o>>2]|0,(c[o>>2]|0)+72|0,
b[r>>1]|0,(c[p>>2]|0)-(c[q>>2]|0)|0);b[(c[o>>2]|0)+284+2>>1]=b[(c[o>>
;2]|0)+284>>1]|0;b[(c[o>>2]|0)+284+4>>1]=b[r>>1]|0;if(!(d[(c[o>>2]|0)+368>
;>0]&16)){i=s;return}b[(c[o>>2]|0)+284>>1]=b[r>>1]|0;i=s;return}if(!(a[(c[o>>2
]|0)+561>>0]|0)){i=s;return}c[(c[o>>2]|0)+12>>2]=134;i=s;return}function Sg(f,g){f=f|0;g=g|0;var h
=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+4|0;j=m;l=m+10|0;k=m+8|0;c[h>>2]=f;c[j>>2]=g;b[l>>1]=(d[(c[h
x3e;>2]|0)+368>>0]|0)-184+1;g=c[h>>2]|0;if((e[l>>1]|0)>>>0>=((c[(c[h>
;>2]|0)+20>>2]|0)+1-(c[(c[h>>2]|0)+16>>2]|0)|0)>>>0){c[g+12>>2]=130;
i=m;return}f=g+360|0;c[f>>2]=(c[f>>2]|0)+1;b[k>>1]=0;while(1){g=c[h>>2]|0;if((e[k>
x3e;1]|0|0)>=(e[l>>1]|0|0))break;f=(xg(g)|0)<<16>>16;c[(c[j>>2]|0)+((e[k>>
;1]|0)<<2)>>2]=f;b[k>>1]=(b[k>>1]|0)+1<<16>>16}a[g+376>>0]=
0;i=m;return}function Tg(a,f){a=a|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+4|0;h=l;k=l+10|0;j=l+8|0;c[g>>2]=a;
c[h>>2]=f;b[k>>1]=(d[(c[g>>2]|0)+368>>0]|0)-176+1;if((e[k>>1]|0)>>
x3e;0>=((c[(c[g>>2]|0)+20>>2]|0)+1-(c[(c[g>>2]|0)+16>>2]|0)|0)>>>0){
c[(c[g>>2]|0)+12>>2]=130;i=l;return}b[j>>1]=1;while(1){if((e[j>>1]|0|0)>(e[k>
x3e;1]|0|0))break;c[(c[h>>2]|0)+((e[j>>1]|0)-1<<2)>>2]=d[(c[(c[g>>2]|0)+356>
;>2]|0)+((c[(c[g>>2]|0)+360>>2]|0)+(e[j>>1]|0))>>0];b[j>>1]=(b[j>>
;1]|0)+1<<16>>16}i=l;return}function Ug(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;e=m+24|0;f
=m+20|0;j=m+16|0;h=m+12|0;g=m+8|0;k=m+4|0;l=m;c[f>>2]=d;c[j>>2]=c[c[f>>2]>>2];if(a[(c[f
x3e;>2]|0)+292>>0]|0)c[h>>2]=c[(c[f>>2]|0)+296>>2];else c[h>>2]=c[(c[(c[j
>>2]|0)+96>>2]|0)+40>>2];if(!(c[h>>2]|0)){c[e>>2]=153;l=c[e>>2]|0;i=
m;return l|0}Vg(c[h>>2]|0,c[j>>2]|0,c[f>>2]|0)|0;c[(c[h>>2]|0)+428>>2]=0;c[(c[
h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+476>>2]=64;c[(c[h>>2]|0)+480>>2]=0;c
[(c[h>>2]|0)+484>>2]=0;a[(c[h>>2]|0)+488>>0]=0;c[(c[h>>2]|0)+564>>2]=
65536;c[k>>2]=(c[h>>2]|0)+216;c[l>>2]=(c[h>>2]|0)+244;b[c[k>>2]>>1]=
0;b[(c[k>>2]|0)+2>>1]=0;c[(c[k>>2]|0)+4>>2]=0;c[(c[k>>2]|0)+8>>2]=0;
b[(c[l>>2]|0)+8>>1]=0;c[(c[l>>2]|0)+16>>2]=0;c[(c[l>>2]|0)+12>>2]=65536
;Xg(c[h>>2]|0,1,c[(c[j>>2]|0)+656>>2]|0,c[(c[j>>2]|0)+652>>2]|0)|0;Yg(c[h>
;>2]|0,2)|0;Yg(c[h>>2]|0,3)|0;if((c[(c[j>>2]|0)+652>>2]|0)>>>0>0){c[g>
;>2]=Zg(c[h>>2]|0,1,0)|0;if(!(c[g>>2]|0))c[g>>2]=Ta[c[(c[j>>2]|0)+688>>2]
x26;63](c[h>>2]|0)|0}else c[g>>2]=0;if(!(c[g>>2]|0))_g(c[h>>2]|0,c[f>>2]|0)|0;
c[e>>2]=c[g>>2];l=c[e>>2]|0;i=m;return l|0}function Vg(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;p=i;i=i+32|0;h=p+28|0;j=p+24|0;q=p+20|0;k=p+16|0;m=p+12|0;o=p+8|0;n=p+4|0;l=p;c[j>>2]=d;c[q>
;>2]=f;c[k>>2]=g;c[c[j>>2]>>2]=c[q>>2];c[n>>2]=(c[q>>2]|0)+260;
c[(c[j>>2]|0)+4>>2]=c[k>>2];if(c[k>>2]|0){c[(c[j>>2]|0)+396>>2]=c[(c
[k>>2]|0)+116>>2];c[(c[j>>2]|0)+400>>2]=c[(c[k>>2]|0)+120>>2];c[(c[j
>>2]|0)+408>>2]=c[(c[k>>2]|0)+128>>2];c[(c[j>>2]|0)+412>>2]=c[(c[k
x3e;>2]|0)+132>>2];c[(c[j>>2]|0)+404>>2]=c[(c[k>>2]|0)+124>>2];c[(c[j>
;>2]|0)+416>>2]=c[(c[k>>2]|0)+136>>2];d=(c[j>>2]|0)+244|0;f=(c[k>>2]|0)+72
|0;g=d+40|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));q=(c[j>>2]|0)+216|0;g=(c[k
x3e;>2]|0)+44|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[q+8>>2]=c[g+8>
x3e;2];c[q+12>>2]=c[g+12>>2];c[q+16>>2]=c[g+16>>2];c[q+20>>2]=c[g+20>>
;2];c[q+24>>2]=c[g+24>>2];c[(c[j>>2]|0)+420>>2]=c[(c[k>>2]|0)+140>>2
];c[(c[j>>2]|0)+424>>2]=c[(c[k>>2]|0)+144>>2];c[m>>2]=0;while(1){if((c[m>
x3e;2]|0)>=3)break;q=(c[j>>2]|0)+444+(c[m>>2]<<3)|0;g=(c[k>>2]|0)+148+(c[m>>
;2]<<3)|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[m>>2]=(c[m>>
;2]|0)+1}d=(c[j>>2]|0)+284|0;f=(c[k>>2]|0)+172|0;g=d+68|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f
+4|0}while((d|0)<(g|0));c[(c[j>>2]|0)+380>>2]=c[(c[k>>2]|0)+240>>2];c[(c[j>>
;2]|0)+384>>2]=c[(c[k>>2]|0)+244>>2];b[(c[j>>2]|0)+468>>1]=b[(c[k>>2
]|0)+248>>1]|0;c[(c[j>>2]|0)+472>>2]=c[(c[k>>2]|0)+252>>2];d=(c[j>>2
]|0)+180|0;f=(c[k>>2]|0)+256|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));
d=(c[j>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+72|0;f=(c[j
>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>
;2]|0)+108|0;f=(c[j>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0))}
c[o>>2]=c[(c[j>>2]|0)+20>>2];c[l>>2]=Wg(c[(c[j>>2]|0)+8>>2]|0,o,4,(c
[j>>2]|0)+24|0,(e[(c[n>>2]|0)+24>>1]|0)+32|0)|0;c[(c[j>>2]|0)+20>>2]=c[o>
x3e;2];if(c[l>>2]|0){c[h>>2]=c[l>>2];q=c[h>>2]|0;i=p;return q|0}c[o>>2]=c[(c[j
>>2]|0)+388>>2];c[l>>2]=Wg(c[(c[j>>2]|0)+8>>2]|0,o,1,(c[j>>2]|0)+392
|0,e[(c[n>>2]|0)+26>>1]|0)|0;c[(c[j>>2]|0)+388>>2]=c[o>>2]&65535;if(c[l
x3e;>2]|0){c[h>>2]=c[l>>2];q=c[h>>2]|0;i=p;return q|0}else{b[(c[j>>2]|0)+144+8>
;>1]=0;b[(c[j>>2]|0)+144+10>>1]=0;d=(c[j>>2]|0)+72|0;f=(c[j>>2]|0)+144|0;g=d+36|0;do
{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+108|0;f=(c[j>>2]|
0)+144|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+36|0;f=(
c[j>>2]|0)+144|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));a[(c[j>
x3e;2]|0)+488>>0]=0;c[h>>2]=0;q=c[h>>2]|0;i=p;return q|0}return 0}function Wg(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;o=i;i=i+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;p=o+12|0;l=o+8|0;m
=o+4|0;n=o;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[p>>2]=e;c[l>>2]=f;c[n>>2]=
c[p>>2];do if((c[c[j>>2]>>2]|0)>>>0<(c[l>>2]|0)>>>0){
b=_(c[c[j>>2]>>2]|0,c[k>>2]|0)|0;p=_(c[l>>2]|0,c[k>>2]|0)|0;p=hc(c[h>>
;2]|0,1,b,p,c[c[n>>2]>>2]|0,m)|0;c[c[n>>2]>>2]=p;if(!(c[m>>2]|0)){c[c[j>
x3e;2]>>2]=c[l>>2];break}c[g>>2]=c[m>>2];p=c[g>>2]|0;i=o;return p|0}while(0);c
[g>>2]=0;p=c[g>>2]|0;i=o;return p|0}function Xg(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;g=f+8|0;k=f+4|0;j=f;c[h>>2]=a;c[g>>2]=b;c[k>>2]=d;c[j>>2]=e;c[(c[h>
;>2]|0)+444+((c[g>>2]|0)-1<<3)>>2]=c[k>>2];c[(c[h>>2]|0)+444+((c[g>
x3e;2]|0)-1<<3)+4>>2]=c[j>>2];i=f;return 0}function Yg(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)+444+((c[e>>2]|0)-1<<3)>
x3e;2]=0;c[(c[f>>2]|0)+444+((c[e>>2]|0)-1<<3)+4>>2]=0;i=d;return 0}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;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>
;>2]=d;c[j>>2]=(c[f>>2]|0)+444+((c[g>>2]|0)-1<<3);c[(c[f>>2]|0)+356>
x3e;2]=c[c[j>>2]>>2];c[(c[f>>2]|0)+364>>2]=c[(c[j>>2]|0)+4>>2];c[(c[
f>>2]|0)+360>>2]=c[h>>2];c[(c[f>>2]|0)+352>>2]=c[g>>2];i=e;return 0}
function _g(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[(c[e
>>2]|0)+116>>2]=c[(c[d>>2]|0)+396>>2];c[(c[e>>2]|0)+128>>2]=c[(c[d
x3e;>2]|0)+408>>2];c[(c[e>>2]|0)+140>>2]=c[(c[d>>2]|0)+420>>2];c[(c[e>
;>2]|0)+144>>2]=c[(c[d>>2]|0)+424>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)
x3e;=3)break;b=(c[e>>2]|0)+148+(c[f>>2]<<3)|0;a=(c[d>>2]|0)+444+(c[f>>2]<
x3c;3)|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[f>>2]=(c[f>>2]|0)+1}i
=g;return 0}function $g(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;f=k+16|0;g=k+12|0;d=k+8|0;j=k+4|0;h=k;c[g>>
;2]=b;c[d>>2]=c[c[g>>2]>>2];if(a[(c[g>>2]|0)+292>>0]|0)c[j>>2]=c[(c[
g>>2]|0)+296>>2];else c[j>>2]=c[(c[(c[d>>2]|0)+96>>2]|0)+40>>2];if(!(
c[j>>2]|0)){c[f>>2]=153;j=c[f>>2]|0;i=k;return j|0}Vg(c[j>>2]|0,c[d>>2]|0,c[g
x3e;>2]|0)|0;c[(c[j>>2]|0)+428>>2]=0;c[(c[j>>2]|0)+16>>2]=0;a[(c[j>>2]|0)+
488>>0]=0;Xg(c[j>>2]|0,2,c[(c[d>>2]|0)+664>>2]|0,c[(c[d>>2]|0)+660>>
2]|0)|0;Yg(c[j>>2]|0,3)|0;if((c[(c[d>>2]|0)+660>>2]|0)>>>0>0){c[h>>2
]=Zg(c[j>>2]|0,2,0)|0;if((c[h>>2]|0)==0?(a[(c[g>>2]|0)+292>>0]|0)==0:0)c[h>>2]=
Ta[c[(c[d>>2]|0)+688>>2]&63](c[j>>2]|0)|0}else c[h>>2]=0;d=(c[g>>2]|0)+172
|0;b=(c[j>>2]|0)+284|0;e=d+68|0;do{c[d>>2]=c[b>>2];d=d+4|0;b=b+4|0}while((d|0)<(e|0));_g(c[j
x3e;>2]|0,c[g>>2]|0)|0;c[f>>2]=c[h>>2];j=c[f>>2]|0;i=k;return j|0}function ah(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,P=0,Q=0,R=0;R=i;i=i+192|0;l=R+180|0;m=R+176|0;n=R+172|0;o=R+186|0;q=R+168|0;P=R+164|0;Q=R+160|0;G=R+
156|0;r=R+152|0;s=R+148|0;J=R+185|0;p=R+144|0;w=R+104|0;t=R+96|0;u=R+184|0;z=R+92|0;M=R+88|0;L=R+84|0;x=R+80|0;v=R+76|0;y=R+72|0
;N=R+68|0;A=R+64|0;B=R+60|0;C=R+56|0;O=R+52|0;E=R+48|0;F=R+44|0;D=R+40|0;I=R+36|0;H=R+32|0;K=R;c[l>>2]=f;c[m>>
;2]=g;c[n>>2]=h;a[o>>0]=j;c[q>>2]=0;c[r>>2]=c[c[l>>2]>>2];c[s>
x3e;2]=c[(c[l>>2]|0)+12>>2];a[J>>0]=0;c[p>>2]=0;a[u>>0]=0;if((c[n>>2
]|0)>>>0>1?(c[n>>2]|0)>>>0>(e[(c[r>>2]|0)+260+30>>1]|0)>
;>>0:0)c[q>>2]=21;else k=4;a:do if((k|0)==4){if((c[m>>2]|0)>>>0>=(c[(c[r>
x3e;2]|0)+16>>2]|0)>>>0){c[q>>2]=16;break}c[(c[l>>2]|0)+20>>2]=c[m>
x3e;2];if(!(c[(c[l>>2]|0)+16>>2]&1)){c[P>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+44
+4>>2];c[Q>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+44+8>>2]}else{c[P>>2]=65536
;c[Q>>2]=65536}bh(c[l>>2]|0,c[m>>2]|0);g=c[r>>2]|0;if(c[(c[(c[r>>2]|0)+128>
;>2]|0)+52>>2]|0){c[q>>2]=Oa[c[c[c[(c[g+128>>2]|0)+52>>2]>>2]>>
2]&63](c[(c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,c[m>>2]|0,t)|0;if
(c[q>>2]|0)break;a[u>>0]=1;c[G>>2]=0;c[(c[l>>2]|0)+28>>2]=c[t+4>>2];
g=w;j=g+40|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(j|0));uc(w,c[t>>2]|0,c[t+4>>2]|0);c[(c[l>
x3e;2]|0)+24>>2]=w}else c[G>>2]=Ge(g,c[m>>2]|0,(c[l>>2]|0)+28|0)|0;if((c[(c[l>>
;2]|0)+28>>2]|0)>0){if((c[(c[l>>2]|0)+84>>2]|0)==0?(c[(c[(c[r>>2]|0)+128>>
;2]|0)+52>>2]|0)==0:0){c[q>>2]=8;break}c[q>>2]=Wa[c[(c[r>>2]|0)+512>>2]&31
](c[l>>2]|0,c[m>>2]|0,(c[(c[l>>2]|0)+84>>2]|0)+(c[G>>2]|0)|0,c[(c[l>>
;2]|0)+28>>2]|0)|0;if(c[q>>2]|0)break;a[J>>0]=1;c[q>>2]=Ta[c[(c[r>>2]|0)+520
x3e;>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;if(d[o>>0]|0)break}if(c[(c[l>>2]|0
)+28>>2]|0?b[(c[l>>2]|0)+32>>1]|0:0){c[(c[l>>2]|0)+68>>2]=(c[(c[l>>2
]|0)+36>>2]|0)-(c[(c[l>>2]|0)+52>>2]|0);c[(c[l>>2]|0)+68+4>>2]=0;c[(c[l>
x3e;2]|0)+76>>2]=(c[(c[l>>2]|0)+68>>2]|0)+(c[(c[l>>2]|0)+56>>2]|0);c[(c[l>
;>2]|0)+76+4>>2]=0;c[(c[l>>2]|0)+184>>2]=0;c[(c[l>>2]|0)+184+4>>2]=(c[(c[
l>>2]|0)+176>>2]|0)+(c[(c[l>>2]|0)+36+12>>2]|0);c[(c[l>>2]|0)+192>>2
]=0;c[(c[l>>2]|0)+192+4>>2]=(c[(c[l>>2]|0)+184+4>>2]|0)-(c[(c[l>>2]|0)+180>
;>2]|0);eh(c[l>>2]|0,c[m>>2]|0);if((b[(c[l>>2]|0)+32>>1]|0)>0){c[q>>
2]=Ta[c[(c[r>>2]|0)+524>>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;Va[c[(c[r>>
;2]|0)+516>>2]&63](c[l>>2]|0);a[J>>0]=0;c[q>>2]=gh(c[l>>2]|0)|0;if(c[q>
;>2]|0)break;oc(c[s>>2]|0);break}if((b[(c[l>>2]|0)+32>>1]|0)!=-1){c[q>>2]=20;break}
c[M>>2]=b[(c[s>>2]|0)+20+2>>1];c[L>>2]=b[(c[s>>2]|0)+20>>1];c[q>
;>2]=Ta[c[(c[r>>2]|0)+528>>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;c[x>>
;2]=c[(c[l>>2]|0)+168>>2];Va[c[(c[r>>2]|0)+516>>2]&63](c[l>>2]|0);a[J>
;>0]=0;if(a[(c[r>>2]|0)+708>>0]|0){c[A>>2]=c[(c[r>>2]|0)+100>>2];G=fh(c[r
>>2]|0,c[m>>2]|0,p,(c[(c[s>>2]|0)+56+28>>2]|0)+4|0)|0;c[q>>2]=G;if(G|0)break;c
[N>>2]=(c[(c[s>>2]|0)+56+32>>2]|0)+(c[(c[s>>2]|0)+20+28>>2]<<5);c[y
x3e;>2]=c[(c[s>>2]|0)+56+28>>2];c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[y>
x3e;2]|0))break;if(e[(c[N>>2]|0)+4>>1]&2|0){G=(c[N>>2]|0)+8|0;c[G>>2]=(c[G>>
;2]|0)+((c[(c[p>>2]|0)+(c[v>>2]<<3)>>2]&65535)<<16>>16);G=(c[N
x3e;>2]|0)+12|0;c[G>>2]=(c[G>>2]|0)+((c[(c[p>>2]|0)+(c[v>>2]<<3)+4>
x3e;2]&65535)<<16>>16)}c[v>>2]=(c[v>>2]|0)+1;c[N>>2]=(c[N>>2]|0
)+32}N=(c[l>>2]|0)+68|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+0<
;<3)>>2]|0);N=(c[l>>2]|0)+68+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v
>>2]|0)+0<<3)+4>>2]|0);N=(c[l>>2]|0)+76|0;c[N>>2]=(c[N>>2]|0)+(c[(c[
p>>2]|0)+((c[v>>2]|0)+1<<3)>>2]|0);N=(c[l>>2]|0)+76+4|0;c[N>>2]=(c[N
>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+1<<3)+4>>2]|0);N=(c[l>>2]|0)+184
|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+2<<3)>>2]|0);N=(c
[l>>2]|0)+184+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+2<<
;3)+4>>2]|0);N=(c[l>>2]|0)+192|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>
;>2]|0)+3<<3)>>2]|0);N=(c[l>>2]|0)+192+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>
;>2]|0)+((c[v>>2]|0)+3<<3)+4>>2]|0);Fb(c[A>>2]|0,c[p>>2]|0);c[p>>
;2]=0}if(!(c[(c[l>>2]|0)+16>>2]&1)){N=Mb(c[(c[l>>2]|0)+68>>2]|0,c[P>>2]|0
)|0;c[(c[l>>2]|0)+68>>2]=N;P=Mb(c[(c[l>>2]|0)+76>>2]|0,c[P>>2]|0)|0;c[(c[l>
;>2]|0)+76>>2]=P;P=Mb(c[(c[l>>2]|0)+184+4>>2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0
)+184+4>>2]=P;Q=Mb(c[(c[l>>2]|0)+192+4>>2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0)+192+4
x3e;>2]=Q}if(c[(c[l>>2]|0)+16>>2]&1024|0){oc(c[s>>2]|0);c[(c[(c[l>>2]|0)+8>
;>2]|0)+72>>2]=1668246896;break}c[O>>2]=0;c[E>>2]=c[M>>2];c[F>>2]=c[(c[s
x3e;>2]|0)+56+28>>2];c[D>>2]=c[(c[s>>2]|0)+20+28>>2];c[I>>2]=c[(c[l>
x3e;2]|0)+24>>2];c[H>>2]=c[(c[l>>2]|0)+28>>2];oc(c[s>>2]|0);c[B>>2]=
0;while(1){if((c[B>>2]|0)>>>0>=(c[F>>2]|0)>>>0)break;c[O>>2]=(c
[(c[s>>2]|0)+20+32>>2]|0)+(c[D>>2]<<5)+(c[B>>2]<<5);Q=(c[l>>
;2]|0)+68|0;c[K>>2]=c[Q>>2];c[K+4>>2]=c[Q+4>>2];Q=K+8|0;P=(c[l>>2]|0)+76|0;c[Q
>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=K+16|0;P=(c[l>>2]|0)+184|0;c[Q>>2
]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=K+24|0;P=(c[l>>2]|0)+192|0;c[Q>>2]=c[P>
x3e;2];c[Q+4>>2]=c[P+4>>2];c[C>>2]=b[(c[s>>2]|0)+20+2>>1];c[q>>2]=ah
(c[l>>2]|0,c[c[O>>2]>>2]|0,(c[n>>2]|0)+1|0,0)|0;if(c[q>>2]|0)break a;c[O>
x3e;2]=(c[(c[s>>2]|0)+20+32>>2]|0)+(c[D>>2]<<5)+(c[B>>2]<<5);if(!(e[(
c[O>>2]|0)+4>>1]&512)){Q=(c[l>>2]|0)+68|0;c[Q>>2]=c[K>>2];c[Q+4>>
;2]=c[K+4>>2];Q=(c[l>>2]|0)+76|0;P=K+8|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>
x3e;2];Q=(c[l>>2]|0)+184|0;P=K+16|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=(c[l
>>2]|0)+192|0;P=K+24|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2]}c[E>>2]=b
[(c[s>>2]|0)+20+2>>1];if((c[E>>2]|0)!=(c[C>>2]|0))lh(c[l>>2]|0,c[O>>
2]|0,c[M>>2]|0,c[C>>2]|0)|0;c[B>>2]=(c[B>>2]|0)+1}c[(c[l>>2]|0)+24>>
2]=c[I>>2];c[(c[l>>2]|0)+28>>2]=c[H>>2];c[(c[l>>2]|0)+168>>2]=c[x>
;>2];if(c[(c[l>>2]|0)+16>>2]&2|0)break;if(!(e[(c[O>>2]|0)+4>>1]&256))break
;if((c[E>>2]|0)>>>0<=(c[M>>2]|0)>>>0)break;mh(c[l>>2]|0,c[M>
;>2]|0,c[L>>2]|0)|0;break}c[(c[l>>2]|0)+36>>2]=0;c[(c[l>>2]|0)+36+8>>2]=0
;c[(c[l>>2]|0)+36+4>>2]=0;c[(c[l>>2]|0)+36+12>>2]=0;if(!(a[o>>0]|0)){c[(c[l>
;>2]|0)+68>>2]=(c[(c[l>>2]|0)+36>>2]|0)-(c[(c[l>>2]|0)+52>>2]|0);c[(c[l
x3e;>2]|0)+68+4>>2]=0;c[(c[l>>2]|0)+76>>2]=(c[(c[l>>2]|0)+68>>2]|0)+(c[(c
[l>>2]|0)+56>>2]|0);c[(c[l>>2]|0)+76+4>>2]=0;c[(c[l>>2]|0)+184>>2]=0
;c[(c[l>>2]|0)+184+4>>2]=(c[(c[l>>2]|0)+176>>2]|0)+(c[(c[l>>2]|0)+36+12>
x3e;2]|0);c[(c[l>>2]|0)+192>>2]=0;c[(c[l>>2]|0)+192+4>>2]=(c[(c[l>>2]|0)+184+4
>>2]|0)-(c[(c[l>>2]|0)+180>>2]|0);eh(c[l>>2]|0,c[m>>2]|0);if(a[(c[c[l>>
;2]>>2]|0)+708>>0]|0){c[z>>2]=c[(c[c[l>>2]>>2]|0)+100>>2];c[q>
x3e;2]=fh(c[c[l>>2]>>2]|0,c[m>>2]|0,p,4)|0;if(c[q>>2]|0)break;O=(c[l>>2]|0)+68
|0;c[O>>2]=(c[O>>2]|0)+(c[c[p>>2]>>2]|0);O=(c[l>>2]|0)+68+4|0;c[O>>2
]=(c[O>>2]|0)+(c[(c[p>>2]|0)+4>>2]|0);O=(c[l>>2]|0)+76|0;c[O>>2]=(c[O>>
;2]|0)+(c[(c[p>>2]|0)+8>>2]|0);O=(c[l>>2]|0)+76+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[
p>>2]|0)+8+4>>2]|0);O=(c[l>>2]|0)+184|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>
;2]|0)+16>>2]|0);O=(c[l>>2]|0)+184+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+16+4
>>2]|0);O=(c[l>>2]|0)+192|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+24>>2
]|0);O=(c[l>>2]|0)+192+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+24+4>>2]|0);Fb(c
[z>>2]|0,c[p>>2]|0);c[p>>2]=0}if(!(c[(c[l>>2]|0)+16>>2]&1)){O=Mb(c[(c[l
x3e;>2]|0)+68>>2]|0,c[P>>2]|0)|0;c[(c[l>>2]|0)+68>>2]=O;P=Mb(c[(c[l>>2]|0
)+76>>2]|0,c[P>>2]|0)|0;c[(c[l>>2]|0)+76>>2]=P;P=Mb(c[(c[l>>2]|0)+184+4>
x3e;2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0)+184+4>>2]=P;Q=Mb(c[(c[l>>2]|0)+192+4>>2]|0
,c[Q>>2]|0)|0;c[(c[l>>2]|0)+192+4>>2]=Q}c[q>>2]=0}}while(0);if(a[J>>0]|0)Va[c[(
c[r>>2]|0)+516>>2]&63](c[l>>2]|0);if(!(a[u>>0]|0)){Q=c[q>>2]|0;i=R;return
Q|0}Ra[c[(c[c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]>>2]|0)+4>>2]&7](c[(c[(c[(
c[r>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,t);Q=c[q>>2]|0;i=R;return Q|0}function
bh(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;j=i;i=i+32|0;g=j+8|0;n=j+4|0;o=j;m=j+18|0;l=j+16|0;h=j+14|0;k=j+12|0;c[
g>>2]=d;c[n>>2]=f;c[o>>2]=c[c[g>>2]>>2];b[m>>1]=0;b[l>>1]=
0;b[h>>1]=0;b[k>>1]=0;ch(c[o>>2]|0,c[n>>2]|0,((c[(c[g>>2]|0)+16>>2]
x26;512|0)!=0^1)&1,m,h);dh(c[o>>2]|0,c[n>>2]|0,((c[(c[g>>2]|0)+16>>2]&512|0)!=
0^1)&1,l,k);c[(c[g>>2]|0)+52>>2]=b[m>>1];c[(c[g>>2]|0)+56>>2]=e[h>
x3e;1];c[(c[g>>2]|0)+176>>2]=b[l>>1];c[(c[g>>2]|0)+180>>2]=e[k>>1];if
(a[(c[g>>2]|0)+64>>0]|0){i=j;return}a[(c[g>>2]|0)+64>>0]=1;c[(c[g>>2]|0)+60>
;>2]=e[h>>1];i=j;return}function ch(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;m=i;i=i+
32|0;k=m+12|0;p=m+8|0;n=m+16|0;o=m+4|0;l=m;c[k>>2]=e;c[p>>2]=f;a[n>>0]=g;c[o>>2]=h;c[l
x3e;>2]=j;Za[c[(c[(c[k>>2]|0)+532>>2]|0)+156>>2]&31](c[k>>2]|0,0,c[p>>
;2]|0,c[o>>2]|0,c[l>>2]|0)|0;if(!(d[n>>0]|0)){i=m;return}if(!(c[(c[k>>2]|0)+468+12>
x3e;2]|0)){i=m;return}b[c[l>>2]>>1]=b[(c[k>>2]|0)+216+10>>1]|0;i=m;return}function dh(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;n=i;i=i+32|0;j=n+12|0;k=n+8|0;o=n+16|0;l=n+4|0;m=n;c[j>
x3e;2]=d;c[k>>2]=e;a[o>>0]=f;c[l>>2]=g;c[m>>2]=h;a[o>>0]=a[o>>0]|0;if
(a[(c[j>>2]|0)+296>>0]|0){Za[c[(c[(c[j>>2]|0)+532>>2]|0)+156>>2]&31](c[j
x3e;>2]|0,1,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;i=n;return}else{b[c[l>>2]>>1
]=0;b[c[m>>2]>>1]=b[(c[j>>2]|0)+68>>1]|0;i=n;return}}function eh(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;q=i;i=i+48|0;g=q+32|0;h=q+28|0;m=q+24|0;n=q+42|0;p=q+40|0;k=q+38|0;j=q+36|0;o=q+8|0;l=q;c[
g>>2]=d;c[h>>2]=f;c[m>>2]=c[c[g>>2]>>2];b[n>>1]=0;b[p>>1]=
0;b[k>>1]=0;b[j>>1]=0;if(!(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)){i=q;return}if
(!(c[(c[c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]>>2]|0)+8>>2]|0)){i=q;return}c[o>
;>2]=c[(c[g>>2]|0)+52>>2];c[o+4>>2]=0;c[o+8>>2]=c[(c[g>>2]|0)+56>>
;2];c[o+12>>2]=0;c[l>>2]=Wa[c[(c[c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]>>
;2]|0)+8>>2]&31](c[(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,c[h>
;>2]|0,0,o)|0;if(c[l>>2]|0){i=q;return}b[n>>1]=c[o>>2];b[k>>1]=c[o+8>>2];
c[(c[g>>2]|0)+52>>2]=b[n>>1];c[(c[g>>2]|0)+56>>2]=e[k>>1];c[(c[g>
;>2]|0)+176>>2]=b[p>>1];c[(c[g>>2]|0)+180>>2]=e[j>>1];if(a[(c[g>>
;2]|0)+64>>0]|0){i=q;return}a[(c[g>>2]|0)+64>>0]=1;c[(c[g>>2]|0)+60>>2]=e[k>
;>1];i=q;return}function fh(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,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;M=i;i=i+128|0;j=M+112|0;N=M+108|0;k=M+104|0;l=M+100|0;m=M+96|0
;G=M+92|0;A=M+88|0;o=M+84|0;p=M+80|0;s=M+76|0;t=M+72|0;H=M+68|0;B=M+64|0;u=M+60|0;v=M+56|0;y=M+52|0;K=M+48|0;x=M+44|0;w=M+40|0;C
=M+36|0;F=M+32|0;E=M+28|0;z=M+24|0;D=M+20|0;q=M+16|0;r=M+12|0;I=M+8|0;J=M+4|0;n=M;c[N>>2]=d;c[k>>2]=f;c[l>
;>2]=g;c[m>>2]=h;c[G>>2]=c[(c[N>>2]|0)+104>>2];c[A>>2]=c[(c[G>>
2]|0)+28>>2];c[o>>2]=c[(c[N>>2]|0)+712>>2];c[K>>2]=0;c[x>>2]=0;c[w
x3e;>2]=0;c[F>>2]=0;c[E>>2]=0;c[z>>2]=0;if((c[o>>2]|0)==0?1:(a[(c[N>>2]|0
)+708>>0]|0)==0){c[j>>2]=6;N=c[j>>2]|0;i=M;return N|0}c[p>>2]=hc(c[A>>2]|0,8,0
,c[m>>2]|0,0,s)|0;do if(!(c[s>>2]|0)){c[c[l>>2]>>2]=c[p>>2];if((c[k>>
;2]|0)>>>0<(c[(c[o>>2]|0)+32>>2]|0)>>>0?(c[(c[(c[o>>2]|0)+36>
;>2]|0)+(c[k>>2]<<2)>>2]|0)!=(c[(c[(c[o>>2]|0)+36>>2]|0)+((c[k>>
;2]|0)+1<<2)>>2]|0):0){N=Kc(c[G>>2]|0,c[(c[(c[o>>2]|0)+36>>2]|0)+(c[k>>
;2]<<2)>>2]|0)|0;c[s>>2]=N;if((N|0)==0?(N=ee(c[G>>2]|0,(c[(c[(c[o>>2]|0)+36>
;>2]|0)+((c[k>>2]|0)+1<<2)>>2]|0)-(c[(c[(c[o>>2]|0)+36>>2]|0)+(c[k>
x3e;2]<<2)>>2]|0)|0)|0,c[s>>2]=N,(N|0)==0):0){c[t>>2]=(c[(c[G>>2]|0)+32>
x3e;2]|0)-(c[c[G>>2]>>2]|0);c[K>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0
,0,s)|0;if(((c[s>>2]|0)==0?(c[x>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0,0,s)|0,(c
[s>>2]|0)==0):0)?(c[w>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0,0,s)|0,(c[s>
x3e;2]|0)==0):0){c[H>>2]=(ie(c[G>>2]|0)|0)&65535;N=c[t>>2]|0;c[B>>2]=N+((ie(c[G>
;>2]|0)|0)&65535);if(c[H>>2]&32768|0){c[u>>2]=(c[(c[G>>2]|0)+32>>2]|0)-(c
[c[G>>2]>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[B>>
;2]|0);c[E>>2]=Ce(c[G>>2]|0,F)|0;c[B>>2]=(c[(c[G>>2]|0)+32>>2]|0)-(c[c[G>
x3e;2]>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[u>>2]|0)}c[v
>>2]=0;a:while(1){if((c[v>>2]|0)>>>0>=(c[H>>2]&4095)>>>0)break
;c[I>>2]=(ie(c[G>>2]|0)|0)&65535;c[J>>2]=(ie(c[G>>2]|0)|0)&65535;b:do if(c[J
x3e;>2]&32768|0){c[y>>2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[c[o>>2]
x3e;>2]|0)>>>0)break b;N=(ie(c[G>>2]|0)|0)<<16>>16<<2;c[(c[K>
x3e;2]|0)+(c[y>>2]<<2)>>2]=N;c[y>>2]=(c[y>>2]|0)+1}}else{if((c[J>>2]
x26;4095)>>>0>=(c[(c[o>>2]|0)+24>>2]|0)>>>0){L=21;break a}N=_(c[J>
x3e;2]&4095,c[c[o>>2]>>2]|0)|0;Ss(c[K>>2]|0,(c[(c[o>>2]|0)+28>>2]|0)+(N
x3c;<2)|0,c[c[o>>2]>>2]<<2|0)|0}while(0);c:do if(c[J>>2]&16384|0){c[y>>
;2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[c[o>>2]>>2]|0)>>>0)break;
N=(ie(c[G>>2]|0)|0)<<16>>16<<2;c[(c[x>>2]|0)+(c[y>>2]<<2)
x3e;>2]=N;c[y>>2]=(c[y>>2]|0)+1}c[y>>2]=0;while(1){if((c[y>>2]|0)>>>
0>=(c[c[o>>2]>>2]|0)>>>0)break c;N=(ie(c[G>>2]|0)|0)<<16>>
16<<2;c[(c[w>>2]|0)+(c[y>>2]<<2)>>2]=N;c[y>>2]=(c[y>>2]|0)+
1}}while(0);c[n>>2]=Be(c[o>>2]|0,c[J>>2]&65535,c[K>>2]|0,c[x>>2]|0,c[w>
;>2]|0)|0;if(!(c[n>>2]|0))c[B>>2]=(c[B>>2]|0)+(c[I>>2]|0);else{c[u>>2]=(c
[(c[G>>2]|0)+32>>2]|0)-(c[c[G>>2]>>2]|0);if(c[J>>2]&8192|0){c[(c[G>
x3e;2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[B>>2]|0);c[z>>2]=Ce(c[G>>2]|0,
C)|0;c[D>>2]=c[z>>2]}else{c[D>>2]=c[E>>2];c[C>>2]=c[F>>2]}c[q>
x3e;2]=De(c[G>>2]|0,(c[C>>2]|0)==0?c[m>>2]|0:c[C>>2]|0)|0;c[r>>2]=De(c[G>
x3e;2]|0,(c[C>>2]|0)==0?c[m>>2]|0:c[C>>2]|0)|0;d:do if(!((c[D>>2]|0)==0|(c[r>>
2]|0)==0|(c[q>>2]|0)==0)){N=(c[D>>2]|0)==(-1|0);c[y>>2]=0;if(N)while(1){if((c[y>>2]|0)
x3e;>>0>=(c[m>>2]|0)>>>0)break d;N=Mb(b[(c[q>>2]|0)+(c[y>>2]<
x3c;1)>>1]|0,c[n>>2]|0)|0;h=(c[p>>2]|0)+(c[y>>2]<<3)|0;c[h>>2]=(c[h
x3e;>2]|0)+N;h=Mb(b[(c[r>>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;N=(c[p>
;>2]|0)+(c[y>>2]<<3)+4|0;c[N>>2]=(c[N>>2]|0)+h;c[y>>2]=(c[y>>2]|
0)+1}else while(1){if((c[y>>2]|0)>>>0>=(c[C>>2]|0)>>>0)break d;N=Mb(b[(c[
q>>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;h=(c[p>>2]|0)+(e[(c[z>
x3e;2]|0)+(c[y>>2]<<1)>>1]<<3)|0;c[h>>2]=(c[h>>2]|0)+N;h=Mb(b[(c[r
x3e;>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;N=(c[p>>2]|0)+(e[(c[z>>
;2]|0)+(c[y>>2]<<1)>>1]<<3)+4|0;c[N>>2]=(c[N>>2]|0)+h;c[y>>
;2]=(c[y>>2]|0)+1}}while(0);if((c[z>>2]|0)!=(-1|0)){Fb(c[A>>2]|0,c[z>>2]|0);c[z>>
;2]=0}Fb(c[A>>2]|0,c[q>>2]|0);c[q>>2]=0;Fb(c[A>>2]|0,c[r>>2]|0);c[r>>
;2]=0;c[B>>2]=(c[B>>2]|0)+(c[I>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2
]>>2]|0)+(c[u>>2]|0)}c[v>>2]=(c[v>>2]|0)+1}if((L|0)==21)c[s>>2]=8;Fb(c[A>
x3e;2]|0,c[K>>2]|0);c[K>>2]=0;Fb(c[A>>2]|0,c[x>>2]|0);c[x>>2]=0;Fb(c[A>
x3e;2]|0,c[w>>2]|0);c[w>>2]=0}ge(c[G>>2]|0)}if(!(c[s>>2]|0))break;Fb(c[A>>2]|0
,c[p>>2]|0);c[p>>2]=0;c[c[l>>2]>>2]=0;break}c[j>>2]=0;N=c[j>>2]|0;i=
M;return N|0}while(0);c[j>>2]=c[s>>2];N=c[j>>2]|0;i=M;return N|0}function gh(d){d=d|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;t=i;i=i+64|0;f=t+48|0;g=t+44|0;k=t+40|0;j=t+36|0;p=t+32|0;o=t+28|0;h=t+24|0;
n=t+20|0;l=t+16|0;q=t+12|0;m=t+8|0;r=t+4|0;s=t;c[g>>2]=d;c[k>>2]=c[(c[g>>2]|0)+12>>2];c[
j>>2]=0;c[p>>2]=(c[k>>2]|0)+56;c[o>>2]=b[(c[p>>2]|0)+2>>1];d=(c[(c[p
>>2]|0)+4>>2]|0)+(c[o>>2]<<3)|0;u=(c[g>>2]|0)+68|0;c[d>>2]=c[u>
x3e;2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)+1<<
;3)|0;u=(c[g>>2]|0)+76|0;c[d>>2]=c[u>>2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>
x3e;2]|0)+4>>2]|0)+((c[o>>2]|0)+2<<3)|0;u=(c[g>>2]|0)+184|0;c[d>>2]=c[u>
x3e;2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)+3<<
;3)|0;u=(c[g>>2]|0)+192|0;c[d>>2]=c[u>>2];c[d+4>>2]=c[u+4>>2];a[(c[(c[p>
x3e;2]|0)+8>>2]|0)+(c[o>>2]|0)>>0]=0;a[(c[(c[p>>2]|0)+8>>2]|0)+((c[o>>
;2]|0)+1)>>0]=0;a[(c[(c[p>>2]|0)+8>>2]|0)+((c[o>>2]|0)+2)>>0]=0;a[(c[(c[p>
;>2]|0)+8>>2]|0)+((c[o>>2]|0)+3)>>0]=0;c[o>>2]=(c[o>>2]|0)+4;if(a[(c[c[g
x3e;>2]>>2]|0)+708>>0]|0){c[n>>2]=c[(c[c[g>>2]>>2]|0)+100>>2];c
[j>>2]=fh(c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+20>>2]|0,h,c[o>>2]|0)|0;if(c
[j>>2]|0){c[f>>2]=c[j>>2];u=c[f>>2]|0;i=t;return u|0}c[l>>2]=0;while(1){if((c[
l>>2]|0)>=(c[o>>2]|0))break;u=(c[(c[p>>2]|0)+4>>2]|0)+(c[l>>2]<<
;3)|0;c[u>>2]=(c[u>>2]|0)+(c[(c[h>>2]|0)+(c[l>>2]<<3)>>2]|0);u=(c[(c
[p>>2]|0)+4>>2]|0)+(c[l>>2]<<3)+4|0;c[u>>2]=(c[u>>2]|0)+(c[(c[h>
;>2]|0)+(c[l>>2]<<3)+4>>2]|0);c[l>>2]=(c[l>>2]|0)+1}Fb(c[n>>2]|
0,c[h>>2]|0);c[h>>2]=0}if(!(c[(c[g>>2]|0)+16>>2]&2)){hh((c[g>>2]|0)+124|0
,(c[k>>2]|0)+56|0,0,0);Ss(c[(c[g>>2]|0)+124+20>>2]|0,c[(c[g>>2]|0)+124+16>>2]|
0,(e[(c[g>>2]|0)+124+8>>1]|0)+4<<3|0)|0}if(!(c[(c[g>>2]|0)+16>>2]&1)){c[q
>>2]=c[(c[p>>2]|0)+4>>2];c[m>>2]=(c[(c[p>>2]|0)+4>>2]|0)+(c[o>
x3e;2]<<3);c[r>>2]=c[(c[(c[g>>2]|0)+4>>2]|0)+44+4>>2];c[s>>2]=c[(c[(
c[g>>2]|0)+4>>2]|0)+44+8>>2];while(1){if((c[q>>2]|0)>>>0>=(c[m>
x3e;2]|0)>>>0)break;u=Mb(c[c[q>>2]>>2]|0,c[r>>2]|0)|0;c[c[q>>2]>>
;2]=u;u=Mb(c[(c[q>>2]|0)+4>>2]|0,c[s>>2]|0)|0;c[(c[q>>2]|0)+4>>2]=u;c[q>
x3e;2]=(c[q>>2]|0)+8}u=(c[g>>2]|0)+68|0;s=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-
4<<3)|0;c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];u=(c[g>>2]|0)+76|0;s=(c[(
c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-3<<3)|0;c[u>>2]=c[s>>2];c[u+4>
x3e;2]=c[s+4>>2];u=(c[g>>2]|0)+184|0;s=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-2
x3c;<3)|0;c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];u=(c[g>>2]|0)+192|0;s=(c[(c
[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-1<<3)|0;c[u>>2]=c[s>>2];c[u+4>
x3e;2]=c[s+4>>2]}if(!(c[(c[g>>2]|0)+16>>2]&2)){u=(c[g>>2]|0)+124+8|0;b[u>>
;1]=(e[u>>1]|0)+4;c[j>>2]=ih(c[g>>2]|0,0)|0}c[f>>2]=c[j>>2];u=c[f>>2
]|0;i=t;return u|0}function hh(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;l=g+8|0;j=g+4|0;k=
g;c[h>>2]=a;c[l>>2]=d;c[j>>2]=e;c[k>>2]=f;b[(c[h>>2]|0)+8>>1]=(b[(c[
l>>2]|0)+2>>1]|0)-(c[j>>2]|0);b[(c[h>>2]|0)+10>>1]=(b[c[l>>2]>
x3e;1]|0)-(c[k>>2]|0);c[(c[h>>2]|0)+12>>2]=(c[(c[l>>2]|0)+20>>2]|0)+(c[j>
x3e;2]<<3);c[(c[h>>2]|0)+16>>2]=(c[(c[l>>2]|0)+4>>2]|0)+(c[j>>2]<
;<3);c[(c[h>>2]|0)+20>>2]=(c[(c[l>>2]|0)+24>>2]|0)+(c[j>>2]<<3);
c[(c[h>>2]|0)+24>>2]=(c[(c[l>>2]|0)+8>>2]|0)+(c[j>>2]|0);c[(c[h>>2]|
0)+28>>2]=(c[(c[l>>2]|0)+12>>2]|0)+(c[k>>2]<<1);b[(c[h>>2]|0)+32>
;>1]=c[j>>2];i=g;return}function ih(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,q=0,r=0;r=i;i=i+64|0
;l=r+44|0;m=r+40|0;h=r+49|0;q=r+36|0;g=r+32|0;k=r+28|0;o=r+48|0;p=r+24|0;j=r+20|0;n=r;c[m>>2]=b;a[h>>0]=f;c[
q>>2]=(c[m>>2]|0)+124;c[k>>2]=c[(c[(c[m>>2]|0)+8>>2]|0)+140>>2];c[g
x3e;>2]=c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-4<<3)>
x3e;2];c[g>>2]=((c[g>>2]|0)+32&-64)-(c[g>>2]|0);if(c[g>>2]|0)jh(e[(c[q>>2
]|0)+8>>1]|0,c[(c[q>>2]|0)+16>>2]|0,c[g>>2]|0,0);if((c[k>>2]|0)>>>
;0>0)Ss(c[(c[q>>2]|0)+12>>2]|0,c[(c[q>>2]|0)+16>>2]|0,e[(c[q>>2]|0)+8>
;>1]<<3|0)|0;f=(c[(c[m>>2]|0)+160>>2]|0)+284|0;b=(c[(c[m>>2]|0)+4>>2]|0)+
172|0;g=f+68|0;do{c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0}while((f|0)<(g|0));f=c[m>>2]|0;if(a[h>
x3e;0]|0){c[(c[f+160>>2]|0)+216+4>>2]=65536;c[(c[(c[m>>2]|0)+160>>2]|0)+216+8>>
;2]=65536;Ss(c[(c[q>>2]|0)+20>>2]|0,c[(c[q>>2]|0)+16>>2]|0,e[(c[q>>2]|0)+8>
;>1]<<3|0)|0}else{c[(c[(c[m>>2]|0)+160>>2]|0)+216+4>>2]=c[(c[f+4>>2]|0)+44
+4>>2];c[(c[(c[m>>2]|0)+160>>2]|0)+216+8>>2]=c[(c[(c[m>>2]|0)+4>>2]|
0)+44+8>>2]}c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-3<<3
)>>2]=(c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-3<<3)>
;>2]|0)+32&-64;c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<
;3)+4>>2]=(c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<3)+
4>>2]|0)+32&-64;if((c[k>>2]|0)>>>0>0){c[j>>2]=c[(c[m>>2]|0)+12
x3e;>2];j=(c[j>>2]|0)+56|0;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>
;>2]=c[j+8>>2];c[n+12>>2]=c[j+12>>2];c[n+16>>2]=c[j+16>>2];c[p>>
;2]=Xg(c[(c[m>>2]|0)+160>>2]|0,3,c[(c[(c[m>>2]|0)+160>>2]|0)+392>>2]|0,c[k>
;>2]|0)|0;if(c[p>>2]|0){c[l>>2]=c[p>>2];q=c[l>>2]|0;i=r;return q|0}a[(c[(c[m>
x3e;2]|0)+160>>2]|0)+560>>0]=a[h>>0]|0;f=(c[(c[m>>2]|0)+160>>2]|0)+144|0;b=c[q
>>2]|0;g=f+36|0;do{c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0}while((f|0)<(g|0));if(c[(c[m>>2]|
0)+16>>2]&1|0)f=0;else f=(d[(c[(c[m>>2]|0)+4>>2]|0)+292>>0]|0)!=0;a[o>>0]=
f&1;c[p>>2]=kh(c[(c[m>>2]|0)+160>>2]|0,a[o>>0]|0)|0;if(c[p>>2]|0?d[(c[(c[
m>>2]|0)+160>>2]|0)+561>>0]|0:0){c[l>>2]=c[p>>2];q=c[l>>2]|0;i=r;return
q|0}p=c[n+8>>2]|0;a[p>>0]=a[p>>0]|(c[(c[(c[m>>2]|0)+160>>2]|0)+284+56>
x3e;2]<<5|4)}if(!(a[(c[m>>2]|0)+65>>0]|0)){p=(c[m>>2]|0)+68|0;o=(c[(c[q>>2]|0)+
16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-4<<3)|0;c[p>>2]=c[o>>2];c[p+4>
;>2]=c[o+4>>2];p=(c[m>>2]|0)+76|0;o=(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|
0)+8>>1]|0)-3<<3)|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];p=(c[m>
x3e;2]|0)+184|0;o=(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-2<<3)|0;c[
p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];p=(c[m>>2]|0)+192|0;q=(c[(c[q>>2]|
0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<3)|0;c[p>>2]=c[q>>2];c[p+4
x3e;>2]=c[q+4>>2]}c[l>>2]=0;q=c[l>>2]|0;i=r;return q|0}function jh(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;l=i;i=i+32|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[f>>2]=a;c[g>>2]=b;c[
h>>2]=d;c[j>>2]=e;a:do if(c[h>>2]|0){c[k>>2]=0;while(1){if((c[k>>2]|0)>
x3e;>0>=(c[f>>2]|0)>>>0)break a;a=(c[g>>2]|0)+(c[k>>2]<<3)|0;c[
a>>2]=(c[a>>2]|0)+(c[h>>2]|0);c[k>>2]=(c[k>>2]|0)+1}}while(0);if(!(c[j>
x3e;2]|0)){i=l;return}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=(c[f>>2]|0)>
x3e;>0)break;a=(c[g>>2]|0)+(c[k>>2]<<3)+4|0;c[a>>2]=(c[a>>2]|0)+(c[j>
;>2]|0);c[k>>2]=(c[k>>2]|0)+1}i=l;return}function kh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16
|0;g=k+8|0;h=k+4|0;j=k+12|0;f=k;c[h>>2]=d;a[j>>0]=e;d=Zg(c[h>>2]|0,3,0)|0;c[f>>2]=d;if(d
|0){c[g>>2]=c[f>>2];j=c[g>>2]|0;i=k;return j|0}else{e=(c[h>>2]|0)+36|0;f=(c[h>>
;2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(d|0));e=(c[h>>2]|0)+72|
0;f=(c[h>>2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(d|0));e=(c[h
x3e;>2]|0)+108|0;f=(c[h>>2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)
x3c;(d|0));b[(c[h>>2]|0)+284+60>>1]=1;b[(c[h>>2]|0)+284+62>>1]=1;b[(c[h>>2]|0)+
284+64>>1]=1;b[(c[h>>2]|0)+284+10>>1]=16384;b[(c[h>>2]|0)+284+10+2>>1]=0;d=(c[
h>>2]|0)+284+14|0;f=(c[h>>2]|0)+284+10|0;b[d>>1]=b[f>>1]|0;b[d+2>>1]=b[f+2>
;>1]|0;d=(c[h>>2]|0)+284+6|0;f=(c[h>>2]|0)+284+10|0;b[d>>1]=b[f>>1]|0;b[d+2>
x3e;1]=b[f+2>>1]|0;c[(c[h>>2]|0)+284+28>>2]=1;c[(c[h>>2]|0)+284+20>>2]=1;c[(c[
h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+428>>2]=0;a[j>>0]=a[j>>0]|0;c[g>
;>2]=Ta[c[(c[c[h>>2]>>2]|0)+688>>2]&63](c[h>>2]|0)|0;j=c[g>>2]|0;i=k
;return j|0}return 0}function lh(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;E=i;i=i+80|0;l=E+72|0;m=E+68|0;n=E+64|0;o=E+60|0;p=E+56|0;r=E+52|0;q=E+48|0;x=E+44|0;s=E+76|0;A=E+40|0
;C=E+36|0;k=E+32|0;t=E+28|0;u=E+24|0;y=E+20|0;z=E+16|0;v=E+12|0;w=E+8|0;B=E+4|0;D=E;c[m>>2]=f;c[n>>2]=g;c[o
x3e;>2]=h;c[p>>2]=j;c[r>>2]=c[(c[m>>2]|0)+12>>2];c[q>>2]=c[(c[r>>
;2]|0)+20+4>>2];c[x>>2]=b[(c[r>>2]|0)+20+2>>1];a[s>>0]=e[(c[n>>2]|0)+
4>>1]&200;a:do if(a[s>>0]|0){c[k>>2]=c[p>>2];while(1){if((c[k>>2]|0)>
;>>0>=(c[x>>2]|0)>>>0)break a;Lb((c[q>>2]|0)+(c[k>>2]<<3)|
0,(c[n>>2]|0)+16|0);c[k>>2]=(c[k>>2]|0)+1}}while(0);k=c[(c[n>>2]|0)+8>>2]|0;do
if(e[(c[n>>2]|0)+4>>1]&2|0){c[A>>2]=k;c[C>>2]=c[(c[n>>2]|0)+12>>
;2];if(!((c[A>>2]|0)!=0|(c[C>>2]|0)!=0)){c[l>>2]=0;D=c[l>>2]|0;i=E;return D|0}if(d[s>
;>0]|0?e[(c[n>>2]|0)+4>>1]&2048|0:0){z=Mb(c[(c[n>>2]|0)+16>>2]|0,c[(c[n>
x3e;2]|0)+16>>2]|0)|0;c[v>>2]=Zb(z+(Mb(c[(c[n>>2]|0)+16+4>>2]|0,c[(c[n>>2]|0)+
16+4>>2]|0)|0)|0)|0;z=Mb(c[(c[n>>2]|0)+16+12>>2]|0,c[(c[n>>2]|0)+16+12>>2]|0)|
0;c[w>>2]=Zb(z+(Mb(c[(c[n>>2]|0)+16+8>>2]|0,c[(c[n>>2]|0)+16+8>>2]|0)|0)|0)|0;
c[A>>2]=Mb(c[A>>2]|0,c[v>>2]|0)|0;c[C>>2]=Mb(c[C>>2]|0,c[w>>2]|0)|0}
if((c[(c[m>>2]|0)+16>>2]&1|0)==0?(c[B>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+44+4
x3e;>2],c[D>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+44+8>>2],c[A>>2]=Mb(c[A>
x3e;2]|0,c[B>>2]|0)|0,c[C>>2]=Mb(c[C>>2]|0,c[D>>2]|0)|0,e[(c[n>>2]|0)+4>
x3e;1]&4|0):0){c[A>>2]=(c[A>>2]|0)+32&-64;c[C>>2]=(c[C>>2]|0)+32&-64}}else
{c[t>>2]=k;c[u>>2]=c[(c[n>>2]|0)+12>>2];c[t>>2]=(c[t>>2]|0)+(c[o>
;>2]|0);c[u>>2]=(c[u>>2]|0)+(c[p>>2]|0);if((c[t>>2]|0)>>>0<(c[p
>>2]|0)>>>0?(c[u>>2]|0)>>>0<(c[x>>2]|0)>>>0:0){c
[y>>2]=(c[(c[r>>2]|0)+20+4>>2]|0)+(c[t>>2]<<3);c[z>>2]=(c[(c[r>
x3e;2]|0)+20+4>>2]|0)+(c[u>>2]<<3);c[A>>2]=(c[c[y>>2]>>2]|0)-(c[c[z
x3e;>2]>>2]|0);c[C>>2]=(c[(c[y>>2]|0)+4>>2]|0)-(c[(c[z>>2]|0)+4>>
;2]|0);break}c[l>>2]=21;D=c[l>>2]|0;i=E;return D|0}while(0);if((c[A>>2]|0)!=0|(c[C>>2]|0
)!=0)jh((c[x>>2]|0)-(c[p>>2]|0)|0,(c[q>>2]|0)+(c[p>>2]<<3)|0,c[A>>2]|
0,c[C>>2]|0);c[l>>2]=0;D=c[l>>2]|0;i=E;return D|0}function mh(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;u=i;i=i+48|0;k=u+32|0;l=u+28|0;m=u+24|0;n=u+20|0;o=u+16|0;j=u+12|0;p=u+8|0;s=u+4|0;r=u+
38|0;q=u+36|0;t=u;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[j>>2]=(c[(c[l>>2]|0)+12>
;>2]|0)+20;if(((b[(c[j>>2]|0)+2>>1]|0)+4|0)!=0?((b[(c[(c[l>>2]|0)+12>>2]|0)+20+2>
;>1]|0)+(b[(c[(c[l>>2]|0)+12>>2]|0)+56+2>>1]|0)+((b[(c[j>>2]|0)+2>>1]|0)+
4)|0)>>>0>(c[(c[(c[l>>2]|0)+12>>2]|0)+4>>2]|0)>>>0:0)f=kc(c[(c[
l>>2]|0)+12>>2]|0,(b[(c[j>>2]|0)+2>>1]|0)+4|0,0)|0;else f=0;c[o>>2]=f;if(c[o
x3e;>2]|0){c[k>>2]=c[o>>2];t=c[k>>2]|0;i=u;return t|0}g=(c[(c[j>>2]|0)+4>>
;2]|0)+(b[(c[j>>2]|0)+2>>1]<<3)|0;h=(c[l>>2]|0)+68|0;c[g>>2]=c[h>>2];
c[g+4>>2]=c[h+4>>2];g=(c[(c[j>>2]|0)+4>>2]|0)+((b[(c[j>>2]|0)+2>>1]|
0)+1<<3)|0;h=(c[l>>2]|0)+76|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];g=(
c[(c[j>>2]|0)+4>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+2<<3)|0;h=(c[l>>2]|0
)+184|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];g=(c[(c[j>>2]|0)+4>>2]|0
)+((b[(c[j>>2]|0)+2>>1]|0)+3<<3)|0;h=(c[l>>2]|0)+192|0;c[g>>2]=c[h>>
2];c[g+4>>2]=c[h+4>>2];a[(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>>2]|0)+2>>1
]|0)>>0]=0;a[(c[(c[j>>2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+1)>>0]=
0;a[(c[(c[j>>2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+2)>>0]=0;a[(c[(c[j>
x3e;2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+3)>>0]=0;c[s>>2]=c[(c[l>>
;2]|0)+24>>2];j=Kc(c[s>>2]|0,c[(c[l>>2]|0)+168>>2]|0)|0;c[o>>2]=j;if((j|0)==0?(
b[r>>1]=Pc(c[s>>2]|0,o)|0,(c[o>>2]|0)==0):0){b[q>>1]=b[(c[c[l>>2]>>2
]|0)+260+26>>1]|0;f=e[r>>1]|0;if((e[r>>1]|0)>(e[q>>1]|0)){if((f|0)>(c[(c[l>
;>2]|0)+28>>2]|0)){c[k>>2]=22;t=c[k>>2]|0;i=u;return t|0}c[t>>2]=c[(c[(c[l>>
;2]|0)+160>>2]|0)+388>>2];c[o>>2]=Wg(c[(c[(c[l>>2]|0)+160>>2]|0)+8>>
2]|0,t,1,(c[(c[l>>2]|0)+160>>2]|0)+392|0,e[r>>1]|0)|0;c[(c[(c[l>>2]|0)+160>>2]|
0)+388>>2]=c[t>>2]&65535;if(c[o>>2]|0){c[k>>2]=c[o>>2];t=c[k>>2
]|0;i=u;return t|0}}else if(!f){c[k>>2]=0;t=c[k>>2]|0;i=u;return t|0}t=Rc(c[s>>2]|0,c[(c[(c[l>
;>2]|0)+160>>2]|0)+392>>2]|0,e[r>>1]|0)|0;c[o>>2]=t;if(t|0){c[k>>2]=c[o
x3e;>2];t=c[k>>2]|0;i=u;return t|0}c[(c[(c[l>>2]|0)+8>>2]|0)+136>>2]=c[(c[(c[l>
;>2]|0)+160>>2]|0)+392>>2];c[(c[(c[l>>2]|0)+8>>2]|0)+140>>2]=e[r>>
;1];hh((c[l>>2]|0)+124|0,(c[(c[l>>2]|0)+12>>2]|0)+20|0,c[m>>2]|0,c[n>>2]|0);c[
p>>2]=c[m>>2];while(1){if((c[p>>2]|0)>>>0>=(e[(c[l>>2]|0)+124+8>
;>1]|0)>>>0)break;t=(c[(c[l>>2]|0)+124+24>>2]|0)+(c[p>>2]|0)|0;a[t>>
0]=d[t>>0]&-25;c[p>>2]=(c[p>>2]|0)+1}t=(c[l>>2]|0)+124+8|0;b[t>>1]=(e[t
x3e;>1]|0)+4;c[k>>2]=ih(c[l>>2]|0,1)|0;t=c[k>>2]|0;i=u;return t|0}c[k>>2]=c[o>
x3e;2];t=c[k>>2]|0;i=u;return t|0}function nh(a,f){a=a|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;y=i;i=i+96|0;m=y+88|0;n=y+84|0;o=y+80|0;h=y+64|0;r=y+60|0;x=y+56|0;s=y+52|0;j=y+48|0;g=y+44|0;k=y+40|0;w=y+
36|0;p=y+32|0;t=y+28|0;u=y+24|0;v=y+8|0;q=y;c[n>>2]=a;c[o>>2]=f;c[r>>2]=c[c[n>>2]>
x3e;2];c[s>>2]=c[(c[n>>2]|0)+8>>2];c[j>>2]=c[(c[n>>2]|0)+4>>2];c[x
x3e;>2]=65536;if(!(c[(c[n>>2]|0)+16>>2]&1))c[x>>2]=c[(c[j>>2]|0)+12+8>>
;2];if((c[(c[s>>2]|0)+72>>2]|0)!=1668246896)_d((c[s>>2]|0)+108|0,h);else{a=(c[n>>2]|0)+36
|0;c[h>>2]=c[a>>2];c[h+4>>2]=c[a+4>>2];c[h+8>>2]=c[a+8>>2];c[h+12>
;>2]=c[a+12>>2]}c[g>>2]=c[(c[n>>2]|0)+60>>2];if(c[(c[r>>2]|0)+468+12>
;>2]|0?(c[(c[n>>2]|0)+16>>2]&512|0)==0:0)c[g>>2]=e[(c[r>>2]|0)+216+10>>
;1];c[(c[s>>2]|0)+56>>2]=c[g>>2];c[(c[s>>2]|0)+24+8>>2]=c[h>>2];c[(c
[s>>2]|0)+24+12>>2]=c[h+12>>2];c[(c[s>>2]|0)+24+16>>2]=(c[(c[n>>2]|0
)+76>>2]|0)-(c[(c[n>>2]|0)+68>>2]|0);if(((c[(c[r>>2]|0)+468+12>>2]|0)==0?(c[(c
[n>>2]|0)+16>>2]&2|0)==0:0)?(c[k>>2]=oh(c[r>>2]|0,e[(c[j>>2]|0)+12>
x3e;1]|0,c[o>>2]|0)|0,c[k>>2]|0):0)c[(c[s>>2]|0)+24+16>>2]=d[c[k>>2]>>
;0]<<6;c[(c[s>>2]|0)+24>>2]=(c[h+8>>2]|0)-(c[h>>2]|0);c[(c[s>>2]|0)+
24+4>>2]=(c[h+12>>2]|0)-(c[h+4>>2]|0);do if(d[(c[r>>2]|0)+296>>0]|0?(e[(c[r>
;>2]|0)+300+34>>1]|0)>0:0){c[w>>2]=((Vb((c[(c[n>>2]|0)+184+4>>2]|0)-(c[h+12>
;>2]|0)|0,c[x>>2]|0)|0)&65535)<<16>>16;if((c[(c[n>>2]|0)+184+4>>2]|0
)<=(c[(c[n>>2]|0)+192+4>>2]|0)){c[p>>2]=0;break}else{c[p>>2]=(Vb((c[(c[n>>
;2]|0)+184+4>>2]|0)-(c[(c[n>>2]|0)+192+4>>2]|0)|0,c[x>>2]|0)|0)&65535;break}}else l
=18;while(0);if((l|0)==18){c[t>>2]=((Vb((c[h+12>>2]|0)-(c[h+4>>2]|0)|0,c[x>>2]|0)|0)&
;65535)<<16>>16;g=c[r>>2]|0;if((e[(c[r>>2]|0)+368>>1]|0)!=65535)c[p>>
;2]=(b[g+368+70>>1]|0)-(b[(c[r>>2]|0)+368+72>>1]|0);else c[p>>2]=(b[g+216+4>>1
]|0)-(b[(c[r>>2]|0)+216+6>>1]|0);c[w>>2]=((c[p>>2]|0)-(c[t>>2]|0)|0)/2|0}c[u
x3e;>2]=c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2];do if(c[u>>2]|0?c[(c[c[u>>2]
x3e;>2]|0)+8>>2]|0:0){c[v>>2]=0;c[v+4>>2]=c[w>>2];c[v+8>>2]=c[p>>
;2];c[q>>2]=Wa[c[(c[c[u>>2]>>2]|0)+8>>2]&31](c[(c[u>>2]|0)+4>>2
]|0,c[o>>2]|0,1,v)|0;if(!(c[q>>2]|0)){c[w>>2]=c[v+4>>2];c[p>>2]=c[v+8>>
;2];break}c[m>>2]=c[q>>2];x=c[m>>2]|0;i=y;return x|0}while(0);c[(c[s>>2]|0)+60>>
;2]=c[p>>2];if(!(c[(c[n>>2]|0)+16>>2]&1)){c[w>>2]=Mb(c[w>>2]|0,c[x>
x3e;2]|0)|0;c[p>>2]=Mb(c[p>>2]|0,c[x>>2]|0)|0}c[(c[s>>2]|0)+24+20>>2]=(c[(c[s
x3e;>2]|0)+24+8>>2]|0)-((c[(c[s>>2]|0)+24+16>>2]|0)/2|0);c[(c[s>>2]|0)+24+24>
x3e;2]=c[w>>2];c[(c[s>>2]|0)+24+28>>2]=c[p>>2];c[m>>2]=0;x=c[m>>2]|0
;i=y;return x|0}function oh(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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;h=o+
16|0;j=o+12|0;m=o+8|0;l=o+4|0;k=o;c[f>>2]=a;c[g>>2]=b;c[h>>2]=e;c[m>>2]=0;c[l>>
;2]=c[(c[f>>2]|0)+752>>2];c[k>>2]=(c[(c[f>>2]|0)+740>>2]|0)+8;c[j>>2
]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[f>>2]|0)+748>>2]|0)>>>0){
n=7;break}if((d[(c[(c[f>>2]|0)+756>>2]|0)+(c[j>>2]|0)>>0]|0|0)==(c[g>>2]|0))break
;c[j>>2]=(c[j>>2]|0)+1}if((n|0)==7){n=c[m>>2]|0;i=o;return n|0}c[h>>2]=(c[h>>2
]|0)+2;if((c[h>>2]|0)>>>0>=(c[l>>2]|0)>>>0){n=c[m>>2]|0;i=o;return
n|0}n=(c[k>>2]|0)+(_(c[j>>2]|0,c[l>>2]|0)|0)|0;c[m>>2]=n+(c[h>>2]|0);n=c[m>
;>2]|0;i=o;return n|0}function ph(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;l=i;i=i+32|0;m=l+20|0;f=
l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>
;2]=c[m>>2];c[k>>2]=c[(c[j>>2]|0)+532>>2];c[c[h>>2]>>2]=0;c[(c[h>
;>2]|0)+4>>2]=0;if(!(c[k>>2]|0)){i=l;return 0}m=Oa[c[(c[k>>2]|0)+128>>2]&63](c
[j>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;c[c[h>>2]>>2]=m;i=l;return 0}function qh(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,s=0,t=0,u=0,v=0;t=i;i=i+48|0;v=t+24|0;j=t+20|0;k=t+16
|0;u=t+12|0;l=t+8|0;r=t+4|0;p=t;o=t+36|0;s=t+34|0;m=t+32|0;q=t+30|0;n=t+28|0;c[v>>2]=b;c[j>>2]=d;c[k>
x3e;2]=f;c[u>>2]=g;c[l>>2]=h;c[p>>2]=c[v>>2];a[o>>0]=((c[u>>2]&
512|0)!=0^1)&1;b=(c[u>>2]&16|0)!=0;c[r>>2]=0;if(b){while(1){if((c[r>>2]|0)>>
x3e;0>=(c[k>>2]|0)>>>0)break;dh(c[p>>2]|0,(c[j>>2]|0)+(c[r>>2]|0)|0,
a[o>>0]|0,s,m);c[(c[l>>2]|0)+(c[r>>2]<<2)>>2]=e[m>>1];c[r>>
;2]=(c[r>>2]|0)+1}i=t;return 0}else{while(1){if((c[r>>2]|0)>>>0>=(c[k>>2]|0)
x3e;>>0)break;ch(c[p>>2]|0,(c[j>>2]|0)+(c[r>>2]|0)|0,a[o>>0]|0,q,n);c[(c[l>
;>2]|0)+(c[r>>2]<<2)>>2]=e[n>>1];c[r>>2]=(c[r>>2]|0)+1}i=t;return
0}return 0}function rh(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;m=i;i=i+32|0;d=m+28|0;e=m+24|0;f=m+20|0;l=m+16|
0;g=m+12|0;k=m+8|0;h=m+4|0;j=m;c[e>>2]=a;c[f>>2]=b;c[l>>2]=c[e>>2];c[g>>2]=0;do
if(c[(c[c[e>>2]>>2]|0)+8>>2]&2|0){c[k>>2]=c[c[e>>2]>>2];c[h>
;>2]=c[(c[k>>2]|0)+532>>2];c[g>>2]=Oa[c[(c[h>>2]|0)+148>>2]&63](c[k
x3e;>2]|0,c[f>>2]|0,j)|0;if(c[g>>2]|0){c[(c[l>>2]|0)+112>>2]=-1;break}c[d>>
;2]=sh(c[e>>2]|0,c[j>>2]|0)|0;l=c[d>>2]|0;i=m;return l|0}while(0);Ed(c[c[e>>2]>>
;2]|0,c[f>>2]|0);if(c[(c[c[e>>2]>>2]|0)+8>>2]&1|0)c[g>>2]=th(c[l>>
;2]|0)|0;c[d>>2]=c[g>>2];l=c[d>>2]|0;i=m;return l|0}function sh(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;l=i;i=i+32|0;d=l+24|0;e=l+20|0;j=l+16|0;k=l+12|0;f=l+8|0;h=l+4|0;g=l;c[d>>2]=a;c[e>>2]=b;
c[j>>2]=c[c[d>>2]>>2];c[k>>2]=c[d>>2];c[f>>2]=0;c[(c[k>>2]|
0)+112>>2]=c[e>>2];if(c[(c[c[d>>2]>>2]|0)+8>>2]&1|0){Cd(c[c[d>>
2]>>2]|0,c[e>>2]|0);th(c[k>>2]|0)|0;k=c[f>>2]|0;i=l;return k|0}c[h>>2]=c[(c[j
x3e;>2]|0)+532>>2];c[g>>2]=(c[d>>2]|0)+12;c[f>>2]=Oa[c[(c[h>>2]|0)+152>
;>2]&63](c[j>>2]|0,c[e>>2]|0,c[g>>2]|0)|0;if(!(c[f>>2]|0)){k=c[f>>2]|
0;i=l;return k|0}c[(c[k>>2]|0)+112>>2]=-1;k=c[f>>2]|0;i=l;return k|0}function th(d){d=d|0;var f=0,
g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;g=l+16|0;h=l+12|0;f=l+8|0;j=l+4|0;k=l;c[h>>2]=d;c[j>>2]=0;a[(c[h>
x3e;2]|0)+72+36>>0]=0;c[f>>2]=c[c[h>>2]>>2];c[k>>2]=(c[h>>2]|0)+44;d
=c[k>>2]|0;m=(c[h>>2]|0)+12|0;c[d>>2]=c[m>>2];c[d+4>>2]=c[m+4>>2];c[
d+8>>2]=c[m+8>>2];c[d+12>>2]=c[m+12>>2];c[d+16>>2]=c[m+16>>2];c[d+20
>>2]=c[m+20>>2];c[d+24>>2]=c[m+24>>2];if((e[c[k>>2]>>1]|0)>=1?(
e[(c[k>>2]|0)+2>>1]|0)>=1:0){if(e[(c[f>>2]|0)+160+16>>1]&8|0){m=Vb(e[c[k>
x3e;2]>>1]<<6,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[k>>2]|0)+4>>2]=m;m=Vb(e
[(c[k>>2]|0)+2>>1]<<6,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[k>>2]|0)+8>
;>2]=m;m=(Mb(b[(c[f>>2]|0)+70>>1]|0,c[(c[k>>2]|0)+8>>2]|0)|0)+32&-64;c[(c[k>
;>2]|0)+12>>2]=m;m=(Mb(b[(c[f>>2]|0)+72>>1]|0,c[(c[k>>2]|0)+8>>2]|0)|0)+32
&-64;c[(c[k>>2]|0)+16>>2]=m;m=(Mb(b[(c[f>>2]|0)+74>>1]|0,c[(c[k>>2]|0)+8
x3e;>2]|0)|0)+32&-64;c[(c[k>>2]|0)+20>>2]=m;m=(Mb(b[(c[f>>2]|0)+76>>1]|0,c[(c[
k>>2]|0)+4>>2]|0)|0)+32&-64;c[(c[k>>2]|0)+24>>2]=m}f=c[k>>2]|0;if((e[c[k
x3e;>2]>>1]|0)>=(e[(c[k>>2]|0)+2>>1]|0)){c[(c[h>>2]|0)+72+16>>2]=c[f
+4>>2];b[(c[h>>2]|0)+72+8>>1]=b[c[k>>2]>>1]|0;c[(c[h>>2]|0)+72>
x3e;2]=65536;m=xb(e[(c[k>>2]|0)+2>>1]|0,65536,e[c[k>>2]>>1]|0)|0;c[(c[h>>2]|0)+
72+4>>2]=m}else{c[(c[h>>2]|0)+72+16>>2]=c[f+8>>2];b[(c[h>>2]|0)+72+8>>
;1]=b[(c[k>>2]|0)+2>>1]|0;m=xb(e[c[k>>2]>>1]|0,65536,e[(c[k>>2]|0)+2>>
;1]|0)|0;c[(c[h>>2]|0)+72>>2]=m;c[(c[h>>2]|0)+72+4>>2]=65536}a[(c[h>>2]|0)+301
>>0]=0;if(!(c[j>>2]|0))a[(c[h>>2]|0)+72+36>>0]=1;c[g>>2]=c[j>>2];m=c
[g>>2]|0;i=l;return m|0}c[g>>2]=151;m=c[g>>2]|0;i=l;return m|0}function uh(a){a=a|0;var b=0,d=0;b=
i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return 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[d>>2]=c[d>>2];i=b;return}function wh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=
0;j=i;i=i+32|0;h=j+16|0;d=j+12|0;e=j+8|0;g=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=qc(740,c[e>
x3e;2]|0)|0;if(c[f>>2]|0){c[h>>2]=c[f>>2];h=c[h>>2]|0;i=j;return h|0}if(!(c[d>>
;2]|0)){c[h>>2]=0;h=c[h>>2]|0;i=j;return h|0}c[g>>2]=Wc(c[(c[d>>2]|0)+4>>2]|0,
11340)|0;if(c[g>>2]|0)d=Ya[c[(c[c[g>>2]>>2]|0)+32>>2]&127](c[g>>2]|0,c[e
x3e;>2]|0)|0;else d=0;c[h>>2]=d;h=c[h>>2]|0;i=j;return h|0}function xh(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;k=n+12|0;j=n+8|0;l=n+4|0;m=n;c[f>>2]=d;c[g>>2]=
e;c[h>>2]=c[(c[f>>2]|0)+692>>2];c[k>>2]=0;do if(c[h>>2]|0?(c[(c[h>>2
]|0)+2060>>2]|0)==0:0){c[j>>2]=(c[h>>2]|0)+1324;c[m>>2]=c[(c[f>>2]|0)+100>
;>2];c[l>>2]=bc(c[m>>2]|0,32,k)|0;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}else{m=yh
(c[h>>2]|0,c[c[j>>2]>>2]|0)|0;c[c[l>>2]>>2]=m;m=yh(c[h>>2]|0,c[(c[j
x3e;>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+4>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+
12>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+16>>2
]|0)|0;c[(c[l>>2]|0)+12>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+20>>2]|0)|0;c[(c[l
x3e;>2]|0)+16>>2]=m;c[(c[l>>2]|0)+20>>2]=c[(c[j>>2]|0)+28>>2];a[(c[l>
;>2]|0)+24>>0]=a[(c[j>>2]|0)+24>>0]|0;b[(c[l>>2]|0)+26>>1]=c[(c[j>
x3e;2]|0)+32>>2];b[(c[l>>2]|0)+28>>1]=c[(c[j>>2]|0)+36>>2];c[(c[h>>2
]|0)+2060>>2]=c[l>>2];break}}while(0);if(!(c[h>>2]|0)){m=c[k>>2]|0;i=n;return m|0}m=c[g
x3e;>2]|0;l=c[(c[h>>2]|0)+2060>>2]|0;c[m>>2]=c[l>>2];c[m+4>>2]=c[l+4>
;>2];c[m+8>>2]=c[l+8>>2];c[m+12>>2]=c[l+12>>2];c[m+16>>2]=c[l+16>>
;2];c[m+20>>2]=c[l+20>>2];c[m+24>>2]=c[l+24>>2];c[m+28>>2]=c[l+28>>2
];m=c[k>>2]|0;i=n;return m|0}function yh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>
;>2]=a;c[f>>2]=b;do if((c[f>>2]|0)!=65535){a=c[e>>2]|0;if((c[f>>2]|0)>>
x3e;0>390){c[d>>2]=zh(a,(c[f>>2]|0)-391|0)|0;break}if(c[a+2056>>2]|0){c[d>>2]=Ta[c[(
c[(c[e>>2]|0)+2056>>2]|0)+20>>2]&63](c[f>>2]|0)|0;break}else{c[d>>2]=0;break
}}else c[d>>2]=0;while(0);i=g;return c[d>>2]|0}function zh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f
+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if((c[e>>2]|0)>>>0>=(c[(c[d>>2]|0)+1312
>>2]|0)>>>0){a=0;i=f;return a|0}a=c[(c[(c[d>>2]|0)+1316>>2]|0)+(c[e>>2]
x3c;<2)>>2]|0;i=f;return a|0}function Ah(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]&512|0)>0|0}function Bh(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[(c[e>>2]|0)+692>>2];i=d;return c[(c[b>>2]|0)+1304>>2]|0}
function Ch(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;p=i;i=i+32|0;q=p+24|0;h=p+20|0;j=p+16|0;k=p
+12|0;m=p+8|0;n=p+4|0;o=p+28|0;l=p;c[q>>2]=a;c[h>>2]=d;c[j>>2]=f;c[k>>2]=g;c[m>>
;2]=c[(c[q>>2]|0)+692>>2];if(!(c[(c[m>>2]|0)+2056>>2]|0)){c[l>>2]=2;q=c[l>
;>2]|0;i=p;return q|0}b[o>>1]=b[(c[(c[m>>2]|0)+1152+8>>2]|0)+(c[h>>2]<<1)
x3e;>1]|0;c[n>>2]=yh(c[m>>2]|0,e[o>>1]|0)|0;if(c[n>>2]|0)pe(c[j>>2]|0,c[n
>>2]|0,c[k>>2]|0)|0;c[l>>2]=0;q=c[l>>2]|0;i=p;return q|0}function Dh(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,q=0,r=0;o=i;i=i+48|0;m=o+36|0;r=o+32|0;f=o+28|0;g=o+24|0;h=o+20|0;k=o+16|0;j=o+12|0;l=o
+40|0;n=o+8|0;q=o+4|0;p=o;c[r>>2]=a;c[f>>2]=d;c[g>>2]=c[(c[r>>2]|0)+692>>2];c[
h>>2]=(c[g>>2]|0)+1152;c[q>>2]=c[(c[r>>2]|0)+96>>2];c[p>>2]=Vd(c[q
x3e;>2]|0,71003)|0;c[k>>2]=c[p>>2];if(!(c[k>>2]|0)){c[m>>2]=0;r=c[m>>2]|0
;i=o;return r|0}c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0>=(c[(c[g>>2]|0)+12>
x3e;2]|0)>>>0){f=12;break}b[l>>1]=b[(c[(c[h>>2]|0)+8>>2]|0)+(c[n>>2]<
;<1)>>1]|0;if((e[l>>1]|0|0)>390)c[j>>2]=zh(c[g>>2]|0,(e[l>>1]|0)-391
|0)|0;else c[j>>2]=Ta[c[(c[k>>2]|0)+20>>2]&63](e[l>>1]|0)|0;if(c[j>>2]|0?(
Kr(c[f>>2]|0,c[j>>2]|0)|0)==0:0){f=10;break}c[n>>2]=(c[n>>2]|0)+1}if((f|0)==10){c[m>
;>2]=c[n>>2];r=c[m>>2]|0;i=o;return r|0}else if((f|0)==12){c[m>>2]=0;r=c[m>>2]|0;i=
o;return r|0}return 0}function Eh(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;l=i;i=i+32|0;d=l+28|0;e=l+24|0;f=l+20
|0;g=l+16|0;m=l+12|0;h=l+8|0;k=l+4|0;j=l;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[d>>2];c[g>
x3e;2]=0;c[m>>2]=c[c[f>>2]>>2];c[h>>2]=c[(c[(c[m>>2]|0)+96>>2]|0)+4
x3e;>2];c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;if((c[(c[f>>2]|0)+12>
x3e;2]|0)==828){m=c[g>>2]|0;i=l;return m|0}if((c[(c[f>>2]|0)+12>>2]|0)==868){m=c[g>>2]|0
;i=l;return m|0}c[k>>2]=Wc(c[h>>2]|0,11340)|0;c[j>>2]=Vd(c[k>>2]|0,11426)|0;if(!(c[j>
;>2]|0)){m=c[g>>2]|0;i=l;return m|0}if(!(c[c[j>>2]>>2]|0)){m=c[g>>2]|0;i=l;return m
|0}c[g>>2]=Ya[c[c[j>>2]>>2]&127](c[d>>2]|0,c[e>>2]|0)|0;m=c[g>>
2]|0;i=l;return m|0}function Fh(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;f=b+4|0;e=b;c[d>>2]=a;c
[g>>2]=c[c[d>>2]>>2];c[f>>2]=c[(c[g>>2]|0)+692>>2];c[e>>2]=(
c[f>>2]|0)+116;c[(c[d>>2]|0)+16>>2]=(c[e>>2]|0)+524;i=b;return 0}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)+16>>2]=0;i=b;return}function Hh(a,b){a=a|0;b=b|0
;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=b;c[g>>2]=0;if((c[f>
x3e;2]|0)>>>0>=256){g=c[g>>2]|0;i=h;return g|0}c[g>>2]=e[(c[(c[d>>2]|0)+16>
;>2]|0)+(c[f>>2]<<1)>>1];g=c[g>>2]|0;i=h;return g|0}function Ih(a,b){a=a|0;b=b|0;var
d=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;f=l+16|0;g=l+12|0;j=l+8|0;d=l+4|0;h=l;c[f>>2]=a;c[g>>2]=b;c[j>
;>2]=0;c[d>>2]=c[c[g>>2]>>2];c[c[g>>2]>>2]=0;if((c[d>>2]|0)>
;>>0>=255){k=c[j>>2]|0;i=l;return k|0}c[h>>2]=(c[d>>2]|0)+1;while(1){if((c[h>
x3e;2]|0)>>>0>=256){k=7;break}c[j>>2]=e[(c[(c[f>>2]|0)+16>>2]|0)+(c[h>>
;2]<<1)>>1];d=c[h>>2]|0;if(c[j>>2]|0)break;c[h>>2]=d+1}if((k|0)==7){k=c[j>
;>2]|0;i=l;return k|0}c[c[g>>2]>>2]=d;k=c[j>>2]|0;i=l;return k|0}function Jh(a){a=a|0;var b=0
,d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;b=j+24|0;d=j+20|0;f=j+16|0;g=j+12|0;e=j+8|0;k=j+4|0;h=j;c[d>>2]=a;c[f>
x3e;2]=c[c[d>>2]>>2];c[g>>2]=c[(c[f>>2]|0)+100>>2];c[e>>2]=c[(c[f>
;>2]|0)+692>>2];c[k>>2]=(c[e>>2]|0)+1152;c[h>>2]=c[(c[e>>2]|0)+2056>
x3e;2];if(c[(c[k>>2]|0)+8>>2]|0){c[b>>2]=Sa[c[(c[h>>2]|0)+4>>2]&3](c[g>
;>2]|0,c[d>>2]|0,c[(c[e>>2]|0)+12>>2]|0,105,0,c[f>>2]|0)|0;k=c[b>>2]|0;i=
j;return k|0}else{c[b>>2]=163;k=c[b>>2]|0;i=j;return k|0}return 0}function Kh(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;k=d+16|0;h=d+12|0;g=d+8|0;j=d+4|0;f=d;c[k>>2]=a;c[h>>2]=b;c[g>>2]=c[(c
[k>>2]|0)+692>>2];c[j>>2]=(c[g>>2]|0)+1152;c[f>>2]=e[(c[(c[j>>2]|0)+
8>>2]|0)+(c[h>>2]<<1)>>1];b=yh(c[g>>2]|0,c[f>>2]|0)|0;i=d;return b|0
}function Lh(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]=c[c[d>>
;2]>>2];c[e>>2]=c[(c[f>>2]|0)+100>>2];Fb(c[e>>2]|0,c[(c[d>>2]|0)+20
x3e;>2]|0);c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>2]=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,j=0;d=i;i=i+32|0;f=d+16|0;e=d+12|0;j=d+8|0;h=d+4|0;g=d;c[f>>2]=a;c[e>>
2]=b;c[j>>2]=c[c[f>>2]>>2];c[h>>2]=c[(c[j>>2]|0)+692>>2];c[g>
x3e;2]=c[(c[h>>2]|0)+2056>>2];a=Ya[c[(c[g>>2]|0)+8>>2]&127](c[f>>2]|0,c[e
>>2]|0)|0;i=d;return a|0}function Nh(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;e=d+12|0;j=d+8
|0;h=d+4|0;g=d;c[f>>2]=a;c[e>>2]=b;c[j>>2]=c[c[f>>2]>>2];c[h>>2]=c[(
c[j>>2]|0)+692>>2];c[g>>2]=c[(c[h>>2]|0)+2056>>2];a=Ya[c[(c[g>>2]|0)+
12>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Oh(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;m=i;i=i+32|0;n=m+24|0;f=m+20|0;g=m+16|0;h=m+12|0;l=m+8|0;j=m+4|0;k=m;c[n>>2]=a;c
[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[l>>2]=0;c[j>>2]=c[(c[n>>2]|0)+692>
;>2];if(!(c[j>>2]|0)){n=c[l>>2]|0;i=m;return n|0}c[k>>2]=(c[j>>2]|0)+1324;if((c[(c[
k>>2]|0)+128>>2]|0)==65535){c[l>>2]=6;n=c[l>>2]|0;i=m;return n|0}if(c[f>>2]|0){
if(!(c[(c[j>>2]|0)+2064>>2]|0)){n=yh(c[j>>2]|0,c[(c[k>>2]|0)+128>>2]|0)|0;c[(c
[j>>2]|0)+2064>>2]=n}c[c[f>>2]>>2]=c[(c[j>>2]|0)+2064>>2]}if(c[g>
;>2]|0){if(!(c[(c[j>>2]|0)+2068>>2]|0)){n=yh(c[j>>2]|0,c[(c[k>>2]|0)+132>>
;2]|0)|0;c[(c[j>>2]|0)+2068>>2]=n}c[c[g>>2]>>2]=c[(c[j>>2]|0)+2068>>
2]}if(!(c[h>>2]|0)){n=c[l>>2]|0;i=m;return n|0}c[c[h>>2]>>2]=c[(c[k>>2]|0)+136
>>2];n=c[l>>2]|0;i=m;return n|0}function Ph(b,d){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;k=j+16
|0;e=j+12|0;h=j+8|0;f=j+4|0;g=j;c[k>>2]=b;c[e>>2]=d;c[h>>2]=0;c[f>>2]=c[(c[k>>
2]|0)+692>>2];a[c[e>>2]>>0]=0;if(!(c[f>>2]|0)){k=c[h>>2]|0;i=j;return k|0}c[g
x3e;>2]=(c[f>>2]|0)+1324;if((c[(c[g>>2]|0)+128>>2]|0)==65535){k=c[h>>2]|0;i=j;return
k|0}a[c[e>>2]>>0]=1;k=c[h>>2]|0;i=j;return k|0}function Qh(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;m=i;i=i+32|0;n=m+24|0;f=m+20|0;g=m+16|0;l=m+12|0;j=m+8|0;h=m+4|0;k=m;c[n>>2]=a;c[f>>2
]=b;c[g>>2]=d;c[l>>2]=0;c[j>>2]=c[(c[n>>2]|0)+692>>2];do if(c[j>>2]|
0){c[k>>2]=(c[j>>2]|0)+1324;if((c[(c[k>>2]|0)+128>>2]|0)==65535){c[l>>2]=6;break
}if((c[f>>2]|0)>>>0>(c[(c[j>>2]|0)+12>>2]|0)>>>0){c[l>>
;2]=6;break}c[h>>2]=e[(c[(c[j>>2]|0)+1152+8>>2]|0)+(c[f>>2]<<1)>>1];
if(c[g>>2]|0)c[c[g>>2]>>2]=c[h>>2]}while(0);i=m;return c[l>>2]|0}
function rm(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;L=i;i=i+128|0;N=L+116|0;M=L+112|0;j=L+108|0;D=L+104|0;v=L+100|0;g=L+96|0;h=L+92|0;y=L+88|0;
H=L+84|0;w=L+80|0;p=L+76|0;s=L+72|0;k=L+68|0;r=L+64|0;n=L+60|0;l=L+56|0;t=L+52|0;x=L+48|0;u=L+44|0;m=L+40|0;o=L+36|0;q=L+32|0;C=
L+28|0;z=L+24|0;E=L+20|0;G=L+16|0;F=L+120|0;A=L+12|0;I=L+8|0;B=L+4|0;J=L;c[N>>2]=e;c[M>>2]=f;c[j>>
2]=(c[N>>2]|0)+48+((c[M>>2]|0)*28|0);c[D>>2]=0;c[v>>2]=c[c[N>>2]>>2];
c[g>>2]=(c[(c[N>>2]|0)+112>>2]|0)+40+((c[M>>2]|0)*396|0);c[h>>2]=c[(c[j>
x3e;2]|0)+8>>2];c[y>>2]=(c[h>>2]|0)+((c[c[j>>2]>>2]|0)*52|0);c[(c[j>>
;2]|0)+12>>2]=0;f=c[N>>2]|0;if(!(c[M>>2]|0))f=c[f+4>>2]|0;else f=c[f+12>>2]|0;
c[w>>2]=f;c[p>>2]=Mb(c[(c[g>>2]|0)+204>>2]|0,c[w>>2]|0)|0;if((c[p>>2
]|0)>16)c[p>>2]=Vb(16,c[w>>2]|0)|0;else c[p>>2]=c[(c[g>>2]|0)+204>>2];c[H
>>2]=c[h>>2];while(1){if((c[H>>2]|0)>>>0>=(c[y>>2]|0)>>>
;0)break;c[s>>2]=0;c[k>>2]=65535;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[(c[j>
x3e;2]|0)+12>>2]|0))break;c[n>>2]=(c[(c[j>>2]|0)+20>>2]|0)+((c[r>>2]|0)*48|0);
do if((a[(c[n>>2]|0)+13>>0]|0)==(a[(c[H>>2]|0)+1>>0]|0)){c[l>>2]=(b[(c[H>
x3e;2]|0)+2>>1]|0)-(b[c[n>>2]>>1]|0);if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>
;>2]|0);if((c[l>>2]|0)<(c[p>>2]|0)?(c[l>>2]|0)<(c[k>>2]|0):0){c[t>
x3e;2]=c[(c[H>>2]|0)+20>>2];if(c[t>>2]|0){c[x>>2]=c[(c[n>>2]|0)+40>>
2];c[m>>2]=0;do{c[u>>2]=c[(c[x>>2]|0)+20>>2];if(c[u>>2]|0){if((b[(c[t>>
;2]|0)+2>>1]|0)>(b[(c[u>>2]|0)+2>>1]|0))f=(b[(c[t>>2]|0)+2>>1]|0)-(b[(c[u
>>2]|0)+2>>1]|0)|0;else f=(b[(c[u>>2]|0)+2>>1]|0)-(b[(c[t>>2]|0)+2>>
1]|0)|0;c[m>>2]=f;if((c[m>>2]|0)>=(c[p>>2]|0))break}N=c[(c[x>>2]|0)+16>>2
]|0;c[x>>2]=N}while((N|0)!=(c[(c[n>>2]|0)+40>>2]|0));if((c[m>>2]|0)>=(c[p>>
;2]|0))break}c[k>>2]=c[l>>2];c[s>>2]=c[n>>2]}}while(0);c[r>>2]=(c[r>>
;2]|0)+1}if(c[s>>2]|0){c[(c[H>>2]|0)+16>>2]=c[(c[s>>2]|0)+40>>2];c[(c[(c[s>
;>2]|0)+44>>2]|0)+16>>2]=c[H>>2];c[(c[s>>2]|0)+44>>2]=c[H>>2]}else
{c[D>>2]=Yl(c[j>>2]|0,b[(c[H>>2]|0)+2>>1]|0,a[(c[H>>2]|0)+1>>0]|0,c[
v>>2]|0,o)|0;if(c[D>>2]|0){K=69;break}f=c[o>>2]|0;e=f+48|0;do{c[f>>2]=0;f=f+4|0}while((f
|0)<(e|0));c[(c[o>>2]|0)+40>>2]=c[H>>2];c[(c[o>>2]|0)+44>>2]=c[H>>
;2];b[c[o>>2]>>1]=b[(c[H>>2]|0)+2>>1]|0;N=Mb(b[(c[H>>2]|0)+2>>1]|0,c
[w>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=N;c[(c[o>>2]|0)+4>>2]=N;c[(c[H>>2]|0
)+16>>2]=c[H>>2];a[(c[o>>2]|0)+13>>0]=a[(c[H>>2]|0)+1>>0]|0}c[H>
;>2]=(c[H>>2]|0)+52}if((K|0)==69){N=c[D>>2]|0;i=L;return N|0}c[q>>2]=c[(c[j>>2]|0)+
20>>2];c[C>>2]=(c[q>>2]|0)+((c[(c[j>>2]|0)+12>>2]|0)*48|0);c[z>>2]=c
[q>>2];while(1){if((c[z>>2]|0)>>>0>=(c[C>>2]|0)>>>0)break;c[H
x3e;>2]=c[(c[z>>2]|0)+40>>2];if(c[H>>2]|0)do{c[(c[H>>2]|0)+12>>2]=c[z>
;>2];c[H>>2]=c[(c[H>>2]|0)+16>>2]}while((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>
;>2]|0));c[z>>2]=(c[z>>2]|0)+48}c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)
x3e;>>0>=(c[C>>2]|0)>>>0)break;c[E>>2]=0;c[G>>2]=0;c[H>>2]=
c[(c[z>>2]|0)+40>>2];do{if(d[c[H>>2]>>0]&1|0)c[E>>2]=(c[E>>2]|0
)+1;else c[G>>2]=(c[G>>2]|0)+1;if(c[(c[H>>2]|0)+24>>2]|0)f=(c[(c[(c[H>>2]|0)+24
>>2]|0)+12>>2]|0)!=(c[z>>2]|0);else f=0;a[F>>0]=f&1;if(!(!(c[(c[H>>2]|0)+
20>>2]|0)?!(d[F>>0]|0):0))K=47;do if((K|0)==47){K=0;c[A>>2]=c[(c[z>>2]|0)+24>>
2];c[I>>2]=c[(c[H>>2]|0)+20>>2];if(a[F>>0]|0){c[I>>2]=c[(c[H>>2]|0)+
24>>2];c[A>>2]=c[(c[z>>2]|0)+28>>2]}if(c[A>>2]|0){c[B>>2]=(b[c[z>
;>2]>>1]|0)-(b[c[A>>2]>>1]|0);if((c[B>>2]|0)<0)c[B>>2]=0-(c[B>
x3e;2]|0);if((b[(c[H>>2]|0)+2>>1]|0)>(b[(c[I>>2]|0)+2>>1]|0))f=(b[(c[H>>2
]|0)+2>>1]|0)-(b[(c[I>>2]|0)+2>>1]|0)|0;else f=(b[(c[I>>2]|0)+2>>1]|0)-(b[(c[H
>>2]|0)+2>>1]|0)|0;c[J>>2]=f;if((c[J>>2]|0)<(c[B>>2]|0))c[A>>2]=
c[(c[I>>2]|0)+12>>2]}else c[A>>2]=c[(c[I>>2]|0)+12>>2];f=c[A>>2]|0;e
=c[z>>2]|0;if(a[F>>0]|0){c[e+28>>2]=f;N=(c[A>>2]|0)+12|0;a[N>>0]=d[N>>
;0]|2;break}else{c[e+24>>2]=f;break}}while(0);c[H>>2]=c[(c[H>>2]|0)+16>>2]}while((c[H>
;>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));a[(c[z>>2]|0)+12>>0]=0;if((c[E>>2]|0)
x3e;0?(c[E>>2]|0)>=(c[G>>2]|0):0){N=(c[z>>2]|0)+12|0;a[N>>0]=d[N>>0]|1}if
(c[(c[z>>2]|0)+28>>2]|0?c[(c[z>>2]|0)+24>>2]|0:0)c[(c[z>>2]|0)+28>>2
]=0;c[z>>2]=(c[z>>2]|0)+48}N=c[D>>2]|0;i=L;return N|0}function sm(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;A=i;i=i+80|0;u=A+72|0;h=A+68|0;g=A+64|0;z=A+60|0;y=A+56|0;r
=A+52|0;x=A+48|0;j=A+44|0;l=A+40|0;s=A+36|0;k=A+32|0;o=A+28|0;p=A+24|0;q=A+20|0;m=A+16|0;n=A+12|0;t=A+8|0;w=A+4|0;v=A;c[u>
x3e;2]=e;c[h>>2]=f;c[g>>2]=(c[u>>2]|0)+48+((c[h>>2]|0)*28|0);c[z>>2]=c[(c[g>
;>2]|0)+20>>2];c[y>>2]=(c[z>>2]|0)+((c[(c[g>>2]|0)+12>>2]|0)*48|0);c[j>
;>2]=0;c[l>>2]=0;c[s>>2]=0;c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>
x3e;>0>=(c[y>>2]|0)>>>0)break;do if(!(d[(c[x>>2]|0)+12>>0]&4)){c[k
x3e;>2]=c[(c[x>>2]|0)+24>>2];if(!(c[k>>2]|0)){c[s>>2]=(c[s>>2]|0)+1;break
}if((c[k>>2]|0)>>>0<(c[x>>2]|0)>>>0){tm(c[u>>2]|0,c[h>>
;2]|0,c[k>>2]|0,c[x>>2]|0);g=(c[x>>2]|0)+12|0;a[g>>0]=d[g>>0]|4;break}f=c[u>
;>2]|0;e=c[x>>2]|0;g=c[k>>2]|0;if((c[h>>2]|0)==1|(c[j>>2]|0)!=0)wm(f,e,g,c[l>
x3e;2]|0,c[h>>2]|0)|0;else c[l>>2]=wm(f,e,g,0,0)|0;c[j>>2]=c[x>>2];g=(c[x>>2]|
0)+12|0;a[g>>0]=d[g>>0]|4;g=(c[k>>2]|0)+12|0;a[g>>0]=d[g>>0]|4}while(0);c[x>
;>2]=(c[x>>2]|0)+48}c[r>>2]=((c[y>>2]|0)-(c[z>>2]|0)|0)/48|0;if((c[h>>2]|
0)==0?(c[r>>2]|0)==6|(c[r>>2]|0)==12:0){f=c[z>>2]|0;if((c[r>>2]|0)==6){c[o>>2]=
f;c[p>>2]=(c[z>>2]|0)+96;c[q>>2]=(c[z>>2]|0)+192}else{c[o>>2]=f+48;c[p>
x3e;2]=(c[z>>2]|0)+240;c[q>>2]=(c[z>>2]|0)+432}c[m>>2]=(c[(c[p>>2]|0)+4>
x3e;2]|0)-(c[(c[o>>2]|0)+4>>2]|0);c[n>>2]=(c[(c[q>>2]|0)+4>>2]|0)-(c[(c[p>
;>2]|0)+4>>2]|0);c[t>>2]=(c[m>>2]|0)-(c[n>>2]|0);if((c[t>>2]|0)<0)c[
t>>2]=0-(c[t>>2]|0);if(((c[(c[o>>2]|0)+24>>2]|0)==((c[o>>2]|0)+48|0)?(c[(c[p
x3e;>2]|0)+24>>2]|0)==((c[p>>2]|0)+48|0):0)?((c[t>>2]|0)<8?(c[(c[q>>2]|0)+24
x3e;>2]|0)==((c[q>>2]|0)+48|0):0):0){c[l>>2]=(c[(c[q>>2]|0)+8>>2]|0)-((c[(c[p>
x3e;2]|0)+8>>2]<<1)-(c[(c[o>>2]|0)+8>>2]|0));t=(c[q>>2]|0)+8|0;c[t>>
2]=(c[t>>2]|0)-(c[l>>2]|0);if(c[(c[q>>2]|0)+24>>2]|0){t=(c[(c[q>>2]|0)+24>
;>2]|0)+8|0;c[t>>2]=(c[t>>2]|0)-(c[l>>2]|0)}if((c[r>>2]|0)==12){t=(c[z>>2
]|0)+384+8|0;c[t>>2]=(c[t>>2]|0)-(c[l>>2]|0);t=(c[z>>2]|0)+528+8|0;c[t>>2]=(c[
t>>2]|0)-(c[l>>2]|0)}t=(c[q>>2]|0)+12|0;a[t>>0]=d[t>>0]|4;if(c[(c[q>>
;2]|0)+24>>2]|0){t=(c[(c[q>>2]|0)+24>>2]|0)+12|0;a[t>>0]=d[t>>0]|4}}}if(!(c[s
x3e;>2]|0)){i=A;return}c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>>>0>=(c[y
x3e;>2]|0)>>>0)break;if((d[(c[x>>2]|0)+12>>0]&4|0)==0?c[(c[x>>2]|0)+28>
;>2]|0:0){xm(c[u>>2]|0,c[(c[x>>2]|0)+28>>2]|0,c[x>>2]|0);t=(c[x>>2]|0)+12
|0;a[t>>0]=d[t>>0]|4;c[s>>2]=(c[s>>2]|0)+-1}c[x>>2]=(c[x>>2]|0)+48}if
(!(c[s>>2]|0)){i=A;return}c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>>>0>
;=(c[y>>2]|0)>>>0)break;do if(!(d[(c[x>>2]|0)+12>>0]&4)){t=c[x>>2]|0
;c[v>>2]=t;c[w>>2]=t;do{t=(c[w>>2]|0)+-48|0;c[w>>2]=t;if(t>>>0<(c[z
x3e;>2]|0)>>>0)break}while(!(d[(c[w>>2]|0)+12>>0]&4|0));do{t=(c[v>>2]|0)+
48|0;c[v>>2]=t;if(t>>>0>=(c[y>>2]|0)>>>0)break}while(!(d[(c[v>>
2]|0)+12>>0]&4|0));if((c[w>>2]|0)>>>0<(c[z>>2]|0)>>>0?(c[v
>>2]|0)>>>0>=(c[y>>2]|0)>>>0:0)break;if((c[w>>2]|0)>>
x3e;0<(c[z>>2]|0)>>>0){xm(c[u>>2]|0,c[v>>2]|0,c[x>>2]|0);break}if((c
[v>>2]|0)>>>0>=(c[y>>2]|0)>>>0){xm(c[u>>2]|0,c[w>>2]|
0,c[x>>2]|0);break}f=c[(c[w>>2]|0)+8>>2]|0;e=c[x>>2]|0;if((b[c[v>>2]>>
;1]|0)==(b[c[w>>2]>>1]|0)){c[e+8>>2]=f;break}else{t=f+(xb((b[e>>1]|0)-(b[c[w>>
2]>>1]|0)|0,(c[(c[v>>2]|0)+8>>2]|0)-(c[(c[w>>2]|0)+8>>2]|0)|0,(b[c[v>>
;2]>>1]|0)-(b[c[w>>2]>>1]|0)|0)|0)|0;c[(c[x>>2]|0)+8>>2]=t;break}}while(0);c[x
>>2]=(c[x>>2]|0)+48}i=A;return}function tm(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;
g=i;i=i+32|0;n=g+20|0;m=g+16|0;k=g+12|0;h=g+8|0;l=g+4|0;j=g;c[n>>2]=a;c[m>>2]=b;c[k>>2]=e;c[h>
;>2]=f;c[l>>2]=(c[(c[h>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+4>>2]|0);c[j>
x3e;2]=um(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,d[(c[k>>2]|0)+12>>0]|0,d[(c[h>>
;2]|0)+12>>0]|0)|0;c[(c[h>>2]|0)+8>>2]=(c[(c[k>>2]|0)+8>>2]|0)+(c[j>>
;2]|0);i=g;return}function um(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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+44|0;k=p+40|0;s=p+36|0;g=p+32|0;r=p+28|0;q=p+24|0;t=p+20|0;h=p+16|0;n=p+12|0;o=p+8|0;j=p+4|0;l=p;c[k>>
2]=a;c[s>>2]=b;c[g>>2]=d;c[r>>2]=e;c[q>>2]=f;c[t>>2]=c[(c[k>>2]|0)+112
>>2];c[h>>2]=(c[t>>2]|0)+40+((c[s>>2]|0)*396|0);c[n>>2]=c[g>>2];c[o
x3e;>2]=0;c[j>>2]=(c[s>>2]|0)==1&1;c[r>>2]=c[r>>2];c[q>>2]=c[q>
x3e;2];if(!(c[(c[k>>2]|0)+108>>2]&4)){c[m>>2]=c[g>>2];t=c[m>>2]|0;i=p;return
t|0}if((c[n>>2]|0)<0){c[n>>2]=0-(c[g>>2]|0);c[o>>2]=1}if(c[j>>2]|0?!(c[(
c[k>>2]|0)+108>>2]&2|0):0)b=9;else b=7;do if((b|0)==7){if((c[j>>2]|0)==0?(c[(c[k>>2
]|0)+108>>2]&1|0)==0:0){b=9;break}c[n>>2]=vm((c[h>>2]|0)+12|0,c[(c[h>>2]|0)+8>
x3e;2]|0,c[n>>2]|0)|0;if(c[j>>2]|0)if((c[n>>2]|0)>=64){c[n>>2]=(c[n>>2]|0
)+16&-64;break}else{c[n>>2]=64;break}g=c[n>>2]|0;if(c[(c[k>>2]|0)+108>>2]&8|0)
if((g|0)<64){c[n>>2]=64;break}else{c[n>>2]=(c[n>>2]|0)+32&-64;break}e=c[n>>2]|
0;if((g|0)<48){c[n>>2]=e+64>>1;break}g=c[n>>2]|0;if((e|0)<128){c[n>>2]=g+22&
;-64;break}else{c[n>>2]=g+32&-64;break}}while(0);do if((b|0)==9){if((c[(c[h>>2]|0)+8>>2]|0)
x3e;>>0>0?(t=(c[n>>2]|0)-(c[(c[h>>2]|0)+12+4>>2]|0)|0,((((c[n>>2]|0)-(c[(
c[h>>2]|0)+12+4>>2]|0)|0)<0?0-t|0:t)|0)<40):0){t=c[(c[h>>2]|0)+12+4>>2]|0;c[n
x3e;>2]=t;c[n>>2]=(c[n>>2]|0)<48?48:t;break}g=c[n>>2]|0;if((c[n>>2]|0)<54
){c[n>>2]=(c[n>>2]|0)+((54-g|0)/2|0);break}if((g|0)<192){c[l>>2]=c[n>>2]&63;c[
n>>2]=c[n>>2]&-64;g=c[l>>2]|0;if((c[l>>2]|0)<10){c[n>>2]=(c[n>
x3e;2]|0)+g;break}if((g|0)<22){c[n>>2]=(c[n>>2]|0)+10;break}g=c[l>>2]|0;if((c[l>>2]|
0)<42){c[n>>2]=(c[n>>2]|0)+g;break}if((g|0)<54){c[n>>2]=(c[n>>2]|0)+54;break}else
{c[n>>2]=(c[n>>2]|0)+(c[l>>2]|0);break}}}while(0);if(c[o>>2]|0)c[n>>2]=0-(c[n
x3e;>2]|0);c[m>>2]=c[n>>2];t=c[m>>2]|0;i=p;return t|0}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,l=0,m=0,n=0,o=0;o=i;i=i+48|0;e=o+32|0;f=o+28|0;m=o+24|0;j=o+20|0;g=o+16|0;n=o+12|0;l=o+8|0;k=o+4|0;h=o;
c[e>>2]=a;c[f>>2]=b;c[m>>2]=d;c[g>>2]=98;c[n>>2]=c[m>>2];c[j>
x3e;2]=0;while(1){if((c[j>>2]|0)>=(c[f>>2]|0))break;c[k>>2]=c[(c[e>>2]|0)+((c[j>
;>2]|0)*12|0)+4>>2];c[h>>2]=(c[m>>2]|0)-(c[k>>2]|0);if((c[h>>2]|0)<0
)c[h>>2]=0-(c[h>>2]|0);if((c[h>>2]|0)<(c[g>>2]|0)){c[g>>2]=c[h>>
;2];c[n>>2]=c[k>>2]}c[j>>2]=(c[j>>2]|0)+1}c[l>>2]=(c[n>>2]|0)+32&
;-64;f=c[m>>2]|0;e=c[l>>2]|0;if((c[m>>2]|0)>=(c[n>>2]|0)){if((f|0)>=(e+48|0)){
n=c[m>>2]|0;i=o;return n|0}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}else{if((f|0)<
;=(e-48|0)){n=c[m>>2]|0;i=o;return n|0}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}return
0}function wm(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,y=0,
z=0;z=i;i=i+80|0;h=z+64|0;u=z+60|0;v=z+56|0;j=z+52|0;k=z+48|0;q=z+44|0;w=z+40|0;p=z+36|0;x=z+32|0;l=z+28|0;m=z+24|0;s=z+20|0;n=z
+16|0;t=z+12|0;y=z+8|0;o=z+4|0;r=z;c[h>>2]=a;c[u>>2]=b;c[v>>2]=e;c[j>>2]=f;c[k>>
;2]=g;c[r>>2]=64;do if(!(c[(c[h>>2]|0)+108>>2]&4)){if((d[(c[u>>2]|0)+12>>
0]|0)&1|0?(d[(c[v>>2]|0)+12>>0]|0)&1|0:0)if((c[k>>2]|0)==1){c[r>>2]=55;break}else
{c[r>>2]=49;break}if((c[k>>2]|0)==1){c[r>>2]=61;break}else{c[r>>2]=59;break}}while(0);c[
q>>2]=(c[(c[v>>2]|0)+4>>2]|0)-(c[(c[u>>2]|0)+4>>2]|0);c[w>>2]=um(c[h
>>2]|0,c[k>>2]|0,c[q>>2]|0,d[(c[u>>2]|0)+12>>0]|0,d[(c[v>>2]|0)+12
x3e;>0]|0)|0;c[p>>2]=(((c[(c[u>>2]|0)+4>>2]|0)+(c[(c[v>>2]|0)+4>>2]|0)|0)/
2|0)+(c[j>>2]|0);c[x>>2]=(c[p>>2]|0)-((c[w>>2]|0)/2|0);c[l>>2]=(c[x>>
;2]|0)+(c[w>>2]|0);c[m>>2]=(c[x>>2]|0)-(c[x>>2]&-64);c[n>>2]=(c[l>
x3e;2]|0)-(c[l>>2]&-64);c[s>>2]=64-(c[m>>2]|0);c[t>>2]=64-(c[n>>2]|0);c[y
>>2]=0;do if(!((c[m>>2]|0)==0|(c[n>>2]|0)==0)){if((c[w>>2]|0)<=(c[r>>2]|0
)){if((c[n>>2]|0)>=(c[w>>2]|0))break;if((c[s>>2]|0)<=(c[n>>2]|0)){c[y>>
;2]=c[s>>2];break}else{c[y>>2]=0-(c[n>>2]|0);break}}if((c[r>>2]|0)<64){if((c[m>
;>2]|0)>=(c[r>>2]|0))break;if((c[s>>2]|0)>=(c[r>>2]|0))break;if((c[n>>2]|
0)>=(c[r>>2]|0))break;if((c[t>>2]|0)>=(c[r>>2]|0))break}c[o>>2]=(c[w>>
;2]|0)%64|0;if((c[o>>2]|0)<32){if((c[s>>2]|0)<=(c[o>>2]|0))break;if((c[n>>2]|0
)<=(c[o>>2]|0))break}else c[o>>2]=64-(c[r>>2]|0);c[m>>2]=(c[r>>2]|0)-(c[s
>>2]|0);c[s>>2]=(c[s>>2]|0)-(c[o>>2]|0);c[t>>2]=(c[r>>2]|0)-(c[n>
;>2]|0);c[n>>2]=(c[n>>2]|0)-(c[o>>2]|0);if((c[m>>2]|0)<=(c[s>>2]|0))
c[s>>2]=0-(c[m>>2]|0);if((c[n>>2]|0)<=(c[t>>2]|0))c[t>>2]=0-(c[n>>
;2]|0);q=c[s>>2]|0;r=c[t>>2]|0;if((((c[s>>2]|0)<0?0-q|0:q)|0)<=(((c[t>>2]|0)
x3c;0?0-r|0:r)|0)){c[y>>2]=c[s>>2];break}else{c[y>>2]=c[t>>2];break}}while(0);do if(!(c[(
c[h>>2]|0)+108>>2]&4)){if((c[y>>2]|0)>14){c[y>>2]=14;break}if((c[y>>
2]|0)<-14)c[y>>2]=-14}while(0);c[x>>2]=(c[x>>2]|0)+(c[y>>2]|0);h=c[x>>2]|
0;if((c[(c[u>>2]|0)+4>>2]|0)<(c[(c[v>>2]|0)+4>>2]|0)){c[(c[u>>2]|0)+8>
;>2]=h;c[(c[v>>2]|0)+8>>2]=(c[x>>2]|0)+(c[w>>2]|0);y=c[y>>2]|0;i=z;return
y|0}else{c[(c[u>>2]|0)+8>>2]=h+(c[w>>2]|0);c[(c[v>>2]|0)+8>>2]=c[x>>
;2];y=c[y>>2]|0;i=z;return y|0}return 0}function xm(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;c[h>>2]=c[h>>2];c[(c[f>>2]|
0)+8>>2]=(c[(c[g>>2]|0)+8>>2]|0)+((c[(c[f>>2]|0)+4>>2]|0)-(c[(c[g>>2
]|0)+4>>2]|0));i=e;return}function ym(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;r=i;i=i+48|
0;g=r+36|0;j=r+32|0;s=r+28|0;h=r+24|0;m=r+20|0;l=r+16|0;q=r+40|0;p=r+12|0;n=r+8|0;k=r+4|0;o=r;c[g>>2]=d;c[j>>
;2]=f;c[s>>2]=(c[g>>2]|0)+48+((c[j>>2]|0)*28|0);c[h>>2]=c[(c[s>>2]|0)+20>
x3e;2];c[m>>2]=(c[h>>2]|0)+((c[(c[s>>2]|0)+12>>2]|0)*48|0);if((c[j>>2]|0)==0?c
[(c[g>>2]|0)+108>>2]&1|0:0)g=1;else if((c[j>>2]|0)==1)g=(c[(c[g>>2]|0)+108>>
;2]&2|0)!=0;else g=0;a[q>>0]=g&1;c[l>>2]=c[h>>2];while(1){if((c[l>>2]|0)>
x3e;>0>=(c[m>>2]|0)>>>0)break;c[p>>2]=c[(c[l>>2]|0)+40>>2];if(a
[q>>0]|0)do{c[n>>2]=c[(c[p>>2]|0)+40>>2];while(1){g=c[(c[l>>2]|0)+8>>
;2]|0;f=c[n>>2]|0;if(!(c[j>>2]|0)){c[f+16>>2]=g;s=c[n>>2]|0;b[s>>1]=e[s>
x3e;1]|64}else{c[f+20>>2]=g;s=c[n>>2]|0;b[s>>1]=e[s>>1]|128}if((c[n>>2]|0)==(c
[(c[p>>2]|0)+44>>2]|0))break;c[n>>2]=c[(c[n>>2]|0)+32>>2]}c[p>>2]=c[(
c[p>>2]|0)+16>>2]}while((c[p>>2]|0)!=(c[(c[l>>2]|0)+40>>2]|0));else{c[k>
x3e;2]=(c[(c[l>>2]|0)+8>>2]|0)-(c[(c[l>>2]|0)+4>>2]|0);do{c[o>>2]=c[(c[p>
x3e;2]|0)+40>>2];while(1){g=c[k>>2]|0;f=c[o>>2]|0;if(!(c[j>>2]|0)){s=f+16|0;c[s>>
;2]=(c[s>>2]|0)+g;s=c[o>>2]|0;b[s>>1]=e[s>>1]|64}else{s=f+20|0;c[s>>2]=(c[s>
;>2]|0)+g;s=c[o>>2]|0;b[s>>1]=e[s>>1]|128}if((c[o>>2]|0)==(c[(c[p>>2]|0)+
44>>2]|0))break;c[o>>2]=c[(c[o>>2]|0)+32>>2]}c[p>>2]=c[(c[p>>2]|0)+16
>>2]}while((c[p>>2]|0)!=(c[(c[l>>2]|0)+40>>2]|0))}c[l>>2]=(c[l>>2]|0
)+48}i=r;return}function zm(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=
jm(c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Am(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;km(c[f>>2]|0,c[e>>2]|0);i=d;return}function Bm(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=mm(c[f>>2]|0,c[e>>2]|0)|0;i=
d;return b|0}function Cm(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
x3e;>2]=b;c[f>>2]=d;b=nm(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return b|0}function Dm
(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;l=g+16|0;k=g+12|0;m=g+8|0;j=g+4|0;h=g;c[l>
;>2]=a;c[k>>2]=b;c[m>>2]=d;c[j>>2]=e;c[h>>2]=f;c[m>>2]=c[m>>2];
b=Em((c[l>>2]|0)+20|0,c[(c[k>>2]|0)+4>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=g;return
b|0}function Em(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;q=i;i=i+64|0;j=q+60|0;k=q+56|0;
f=q+52|0;l=q+48|0;m=q+44|0;n=q+40|0;h=q+36|0;p=q+8|0;o=q+4|0;g=q;c[k>>2]=a;c[f>>2]=b;c[l>>2]=d;c[m
>>2]=e;c[h>>2]=c[(c[f>>2]|0)+88>>2];if(!(c[h>>2]|0)){c[j>>2]=6;p=c[j
>>2]|0;i=q;return p|0};c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[p+16
x3e;>2]=0;c[p+20>>2]=0;c[p+24>>2]=0;c[p>>2]=c[f>>2];c[p+4>>2]=c[(c[h>
;>2]|0)+12+4>>2];c[p+12>>2]=0;c[p+8>>2]=c[(c[h>>2]|0)+12+8>>2];c[p+16>
;>2]=0;c[p+20>>2]=(c[m>>2]|0)>>>16&15;c[p+24>>2]=0;c[n>>2]=Fm(c
[k>>2]|0,c[f>>2]|0)|0;do if((c[n>>2]|0)==0?(c[g>>2]=0,c[n>>2]=Jm(c[(c[k>
x3e;2]|0)+4>>2]|0,c[l>>2]|0,c[g>>2]|0,o)|0,(c[n>>2]|0)==0):0){c[(c[k>>2]|0)+136
>>2]=c[o>>2];f=c[o>>2]|0;if(c[(c[c[o>>2]>>2]|0)+16>>2]|0)Ra[c[(c[f
x3e;>2]|0)+16>>2]&7](c[o>>2]|0,p);else{h=f+4|0;c[h>>2]=c[p>>2];c[h+4>>
;2]=c[p+4>>2];c[h+8>>2]=c[p+8>>2];c[h+12>>2]=c[p+12>>2];c[h+16>>2]=c
[p+16>>2];c[h+20>>2]=c[p+20>>2];c[h+24>>2]=c[p+24>>2]}c[m>>2]=c[m>
;>2]|2049;c[m>>2]=c[m>>2]&-5;if(c[(c[c[o>>2]>>2]|0)+24>>2]|0?(c[n>
;>2]=Ya[c[(c[c[o>>2]>>2]|0)+24>>2]&127]((c[k>>2]|0)+12|0,c[o>>2]|0)|
0,c[n>>2]|0):0)break;c[n>>2]=Km(c[k>>2]|0,p,c[l>>2]|0,c[m>>2]|0,0)|0}while(0);
c[j>>2]=c[n>>2];p=c[j>>2]|0;i=q;return p|0}function Fm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=
i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;c[c[d>>2]>>2]=c[e>
;>2];c[(c[d>>2]|0)+4>>2]=c[(c[e>>2]|0)+116>>2];dc(c[(c[d>>2]|0)+8>
x3e;2]|0);if(c[(c[d>>2]|0)+4>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[f>>2]=Gm(c[e>>
;2]|0,(c[d>>2]|0)+4|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[(c[e>>2]|0)+116>
;>2]=c[(c[d>>2]|0)+4>>2];c[(c[e>>2]|0)+116+4>>2]=35;a=c[f>>2]|0;i=g;return
a|0}function Gm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;e=h+12|0;f=h+8|0;j=h+4|0;g=h;c[d>>
2]=a;c[e>>2]=b;c[g>>2]=0;c[j>>2]=c[(c[d>>2]|0)+100>>2];c[g>>2]=bc(c[
j>>2]|0,28+(c[(c[d>>2]|0)+16>>2]|0)|0,f)|0;if((c[f>>2]|0)==0?(c[c[g>>2]>
x3e;2]=c[d>>2],c[(c[g>>2]|0)+4>>2]=c[(c[d>>2]|0)+16>>2],c[(c[g>>2]|0
)+8>>2]=(c[g>>2]|0)+28,c[f>>2]=Hm(c[g>>2]|0)|0,c[f>>2]|0):0){Im(c[g>>
;2]|0);c[g>>2]=0}c[c[e>>2]>>2]=c[g>>2];i=h;return c[f>>2]|0}function Hm(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;s=i;i=i+64|0;e=s+48|0;h=s+44|0;j=s+40|0;p=s+36|0;m=s+32|0;r=s+28|
0;n=s+24|0;g=s+20|0;q=s+16|0;f=s+12|0;k=s+8|0;l=s+4|0;o=s;c[e>>2]=b;c[h>>2]=0;c[j>>2]=c[c[e>
x3e;2]>>2];c[p>>2]=c[(c[j>>2]|0)+92>>2];c[m>>2]=c[(c[e>>2]|0)+8>
;>2];Ns(c[(c[e>>2]|0)+8>>2]|0,127,c[(c[e>>2]|0)+4>>2]|0)|0;c[h>>2]=Id(c[j
>>2]|0,1970170211)|0;a:do if(c[h>>2]|0)c[h>>2]=0;else{c[r>>2]=0;while(1){if(!(c[3900+(c[
r>>2]<<2)>>2]|0))break;c[g>>2]=c[3900+(c[r>>2]<<2)>>2];b:do
if(c[(c[g>>2]|0)+4>>2]|0){c[q>>2]=c[(c[g>>2]|0)+4>>2];while(1){if(!(c[c[q>
;>2]>>2]|0))break b;c[f>>2]=c[c[q>>2]>>2];c[k>>2]=Dc(c[j>>2]|0,
c[f>>2]|0)|0;if((c[k>>2]|0?(c[k>>2]|0)>>>0<(c[(c[e>>2]|0)+4>>
;2]|0)>>>0:0)?(d[(c[m>>2]|0)+(c[k>>2]|0)>>0]|0|0)==127:0)a[(c[m>>2]|0)+(c
[k>>2]|0)>>0]=c[r>>2];while(1){c[f>>2]=Md(c[j>>2]|0,c[f>>2]|0,k)|0;if
(!(c[k>>2]|0))break;if((c[f>>2]|0)>>>0>(c[(c[q>>2]|0)+4>>2]|0)>
x3e;>0)break;if((c[k>>2]|0)>>>0>=(c[(c[e>>2]|0)+4>>2]|0)>>>
;0)continue;if((d[(c[m>>2]|0)+(c[k>>2]|0)>>0]|0|0)!=127)continue;a[(c[m>>2]|0)+(c[k>
;>2]|0)>>0]=c[r>>2]}c[q>>2]=(c[q>>2]|0)+8}}while(0);c[r>>2]=(c[r>>
;2]|0)+1}c[n>>2]=48;while(1){if((c[n>>2]|0)>>>0>57)break a;c[l>>2]=Dc(c[j>
;>2]|0,c[n>>2]|0)|0;if(c[l>>2]|0?(c[l>>2]|0)>>>0<(c[(c[e>>2]|0)+
4>>2]|0)>>>0:0){r=(c[m>>2]|0)+(c[l>>2]|0)|0;a[r>>0]=d[r>>0]|0|128
}c[n>>2]=(c[n>>2]|0)+1}}while(0);c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[e>
x3e;2]|0)+4>>2]|0))break;if(((d[(c[m>>2]|0)+(c[o>>2]|0)>>0]|0)&-129|0)==127){r=(c[m
>>2]|0)+(c[o>>2]|0)|0;a[r>>0]=(d[r>>0]|0)&-128;r=(c[m>>2]|0)+(c[o>
x3e;2]|0)|0;a[r>>0]=d[r>>0]|0|2}c[o>>2]=(c[o>>2]|0)+1}Jd(c[j>>2]|0,c[p>
x3e;2]|0)|0;i=s;return c[h>>2]|0}function Im(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;f=g+4|0;d=
g;c[b>>2]=a;if(!(c[b>>2]|0)){i=g;return}c[e>>2]=c[(c[c[b>>2]>>2]|0)+100>
x3e;2];c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=4)break;if(c[(c[b>>2]|0)+12+(c[f
>>2]<<2)>>2]|0){c[d>>2]=c[3900+(c[f>>2]<<2)>>2];if(c[(c[d
x3e;>2]|0)+20>>2]|0)Va[c[(c[d>>2]|0)+20>>2]&63](c[(c[b>>2]|0)+12+(c[f>>
;2]<<2)>>2]|0);Fb(c[e>>2]|0,c[(c[b>>2]|0)+12+(c[f>>2]<<2)>>
;2]|0);c[(c[b>>2]|0)+12+(c[f>>2]<<2)>>2]=0}c[f>>2]=(c[f>>2]|0)+1}c[(
c[b>>2]|0)+4>>2]=0;c[(c[b>>2]|0)+8>>2]=0;c[c[b>>2]>>2]=0;Fb(c[e>
;>2]|0,c[b>>2]|0);c[b>>2]=0;i=g;return}function Jm(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;q=i;i=i+48|0;g=q+40|0;h=q+36|0;r=q+32|0;j=q+28|0;o=q+24|0;m=q+20|0;k=q+16|0;p=q+12|0;l=q+4|0;n=q;c[
g>>2]=a;c[h>>2]=b;c[r>>2]=e;c[j>>2]=f;c[o>>2]=0;c[p>>2]=c[r>>
;2]&15;c[q+8>>2]=5;c[l>>2]=0;if((c[h>>2]|0)>>>0>=(c[(c[g>>2]|0)+
4>>2]|0)>>>0){c[l>>2]=6;p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l
>>2]|0;i=q;return r|0}c[m>>2]=c[p>>2];if(!((c[m>>2]|0)!=0?((c[m>>2]|0)+1|0)>
;>>0<5:0))c[m>>2]=(d[(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]|0)>>0]|0)
x26;127;c[k>>2]=c[3900+(c[m>>2]<<2)>>2];if(!(c[p>>2]|0))c[p>>2]=c[c[
k>>2]>>2];c[o>>2]=c[(c[g>>2]|0)+12+(c[c[k>>2]>>2]<<2)>
;>2];if(c[o>>2]|0){p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l>>2]|0;i=q;return
r|0}c[n>>2]=c[(c[c[g>>2]>>2]|0)+100>>2];c[o>>2]=bc(c[n>>2]|0,c[(c[k
>>2]|0)+8>>2]|0,l)|0;if(c[l>>2]|0){p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p
;r=c[l>>2]|0;i=q;return r|0}c[c[o>>2]>>2]=c[k>>2];if(c[(c[k>>2]|0)+12>>
;2]|0?(c[l>>2]=Ya[c[(c[k>>2]|0)+12>>2]&127](c[o>>2]|0,c[c[g>>2]>>
;2]|0)|0,c[l>>2]|0):0){if(c[(c[k>>2]|0)+20>>2]|0)Va[c[(c[k>>2]|0)+20>>2]&
63](c[o>>2]|0);Fb(c[n>>2]|0,c[o>>2]|0);c[o>>2]=0;p=c[o>>2]|0;r=c[j>>
2]|0;c[r>>2]=p;r=c[l>>2]|0;i=q;return r|0}c[(c[g>>2]|0)+12+(c[c[k>>2]>>2]<
;<2)>>2]=c[o>>2];p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l>>2]|0;
i=q;return r|0}function Km(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;da=i;i=i+240|0;S=da+236|0;T=da+232|0;U=da+228|0;y=da+224|0;V=da+220|0;X=da+216|0;ea=da+212|0;Y=da+208|0;$=da+204|0;
Z=da+200|0;aa=da+196|0;_=da+192|0;l=da+176|0;r=da+168|0;q=da+164|0;p=da+160|0;u=da+156|0;x=da+152|0;m=da+148|0;n=da+144|0;o=da+140
|0;s=da+136|0;v=da+132|0;t=da+128|0;w=da+124|0;E=da+120|0;J=da+116|0;G=da+112|0;O=da+108|0;P=da+104|0;M=da+96|0;N=da+88|0;Q=da+84
|0;R=da+80|0;I=da+76|0;H=da+72|0;F=da+68|0;z=da+64|0;D=da+60|0;B=da+56|0;C=da+52|0;K=da+48|0;L=da+44|0;A=da+24|0;W=da+8|0;ba=da;
c[S>>2]=f;c[T>>2]=g;c[U>>2]=h;c[y>>2]=j;c[V>>2]=k;c[ea>>2]=c[c[S>
;>2]>>2];c[Y>>2]=c[(c[S>>2]|0)+8>>2];c[$>>2]=c[(c[S>>2]|0)+136
x3e;>2];c[Z>>2]=(c[S>>2]|0)+12;c[aa>>2]=c[(c[ea>>2]|0)+84>>2];c[_>
x3e;2]=c[(c[aa>>2]|0)+156>>2];c[X>>2]=Cb(c[ea>>2]|0,c[U>>2]|0,c[y>>2
]|0)|0;if(c[X>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}a[(c[S>>2]|0)+140>>0]=a[(c[_>>
;2]|0)+8>>0]|0;if(a[(c[S>>2]|0)+140>>0]|0){ea=(c[S>>2]|0)+144|0;g=(c[_>>2]|0)+
12|0;c[ea>>2]=c[g>>2];c[ea+4>>2]=c[g+4>>2];c[ea+8>>2]=c[g+8>>2];c[ea
+12>>2]=c[g+12>>2];ea=(c[S>>2]|0)+160|0;g=(c[_>>2]|0)+28|0;c[ea>>2]=c[g>
x3e;2];c[ea+4>>2]=c[g+4>>2];ea=(c[S>>2]|0)+144|0;c[l>>2]=c[ea>>2];c[l+4>
x3e;2]=c[ea+4>>2];c[l+8>>2]=c[ea+8>>2];c[l+12>>2]=c[ea+12>>2];Wb(l)|0;Lb((c[S
x3e;>2]|0)+160|0,l)}c[(c[aa>>2]|0)+56>>2]=c[(c[aa>>2]|0)+24+16>>2];c[(c[aa>>
;2]|0)+60>>2]=c[(c[aa>>2]|0)+24+28>>2];k=c[(c[aa>>2]|0)+72>>2]|0;a:do if((k|0)
x3e;=1869968492){switch(k|0){case 1869968492:break;default:{ca=49;break a}}if(a[(c[S>>2]|0)+140>>0]|0)Nb((c[
aa>>2]|0)+108|0,c[(c[S>>2]|0)+160>>2]|0,c[(c[S>>2]|0)+160+4>>2]|0);if(((b[(c[aa
>>2]|0)+108+2>>1]|0)+4|0)!=0?((b[(c[Y>>2]|0)+20+2>>1]|0)+(b[(c[Y>>2]|0)+56+2
x3e;>1]|0)+((b[(c[aa>>2]|0)+108+2>>1]|0)+4)|0)>>>0>(c[(c[Y>>2]|0)+4>
x3e;2]|0)>>>0:0)ca=11;else if((b[(c[aa>>2]|0)+108>>1]|0)!=0?((b[(c[Y>>2]|0)+20>
;>1]|0)+(b[(c[Y>>2]|0)+56>>1]|0)+(b[(c[aa>>2]|0)+108>>1]|0)|0)>>>0
x3e;(c[(c[Y>>2]|0)+8>>2]|0)>>>0:0)ca=11;else k=0;if((ca|0)==11)k=kc(c[Y>>2]|0,(b[(c
[aa>>2]|0)+108+2>>1]|0)+4|0,b[(c[aa>>2]|0)+108>>1]|0)|0;c[X>>2]=k;if(c[X>
x3e;2]|0){ea=c[X>>2]|0;i=da;return ea|0}Ss(c[(c[Y>>2]|0)+56+4>>2]|0,c[(c[aa>>2]|0)+108+4
>>2]|0,b[(c[aa>>2]|0)+108+2>>1]<<3|0)|0;Ss(c[(c[Y>>2]|0)+56+12>>2]|0
,c[(c[aa>>2]|0)+108+12>>2]|0,b[(c[aa>>2]|0)+108>>1]<<1|0)|0;Ss(c[(c[Y>>
;2]|0)+56+8>>2]|0,c[(c[aa>>2]|0)+108+8>>2]|0,b[(c[aa>>2]|0)+108+2>>1]|0)|0;b[(
c[Y>>2]|0)+56+2>>1]=b[(c[aa>>2]|0)+108+2>>1]|0;b[(c[Y>>2]|0)+56>>1]=
b[(c[aa>>2]|0)+108>>1]|0;c[(c[S>>2]|0)+168>>2]=c[(c[Z>>2]|0)+8>>2];c
[(c[S>>2]|0)+168+4>>2]=c[(c[Z>>2]|0)+16>>2];ea=Mb(c[(c[aa>>2]|0)+24+16>
x3e;2]|0,c[(c[Z>>2]|0)+4>>2]|0)|0;c[(c[S>>2]|0)+176>>2]=ea+(c[(c[Z>>2]|0)+8>
;>2]|0);c[(c[S>>2]|0)+176+4>>2]=c[(c[Z>>2]|0)+16>>2];if(b[(c[aa>>2]|0)+108
+2>>1]|0){if(c[(c[c[$>>2]>>2]|0)+28>>2]|0)Oa[c[(c[c[$>>2]>>2]|0)+28
x3e;>2]&63](c[Z>>2]|0,(c[Y>>2]|0)+56|0,c[$>>2]|0)|0;do if((c[(c[T>>2]|0)+20>
;>2]|0)!=1){c[m>>2]=(c[Z>>2]|0)+48;c[n>>2]=c[(c[m>>2]|0)+20>>2];c[o>
x3e;2]=(c[n>>2]|0)+((c[(c[m>>2]|0)+12>>2]|0)*48|0)+-48;if((c[(c[m>>2]|0)+12>>2
]|0)>1?(c[(c[Z>>2]|0)+104>>2]&4|0)==0:0){c[r>>2]=(c[(c[S>>2]|0)+176>>
;2]|0)-(c[(c[o>>2]|0)+4>>2]|0);c[q>>2]=c[(c[n>>2]|0)+4>>2];c[p>>2]=c
[(c[n>>2]|0)+8>>2];c[u>>2]=(c[p>>2]|0)-(c[q>>2]|0);c[x>>2]=(c[(c[o
x3e;>2]|0)+8>>2]|0)+(c[r>>2]|0);if((c[q>>2]|0)<24)c[u>>2]=(c[u>>2]|0
)-8;if((c[r>>2]|0)<24)c[x>>2]=(c[x>>2]|0)+8;c[(c[S>>2]|0)+168>>2]=(c[u>
;>2]|0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[x>>2]|0)+32&-64;if((c[q>>2]|0)>
;0?(c[(c[S>>2]|0)+168>>2]|0)>=(c[p>>2]|0):0){ea=(c[S>>2]|0)+168|0;c[ea>>2
]=(c[ea>>2]|0)-64}if((c[r>>2]|0)>0?(c[(c[S>>2]|0)+176>>2]|0)<=(c[(c[o>>
;2]|0)+8>>2]|0):0){ea=(c[S>>2]|0)+176|0;c[ea>>2]=(c[ea>>2]|0)+64}c[(c[aa>>2]|0
)+144>>2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[u>>2]|0);c[(c[aa>>2]|0)+148>>
2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[x>>2]|0);break}c[s>>2]=c[(c[S>>2]|0)+168>
x3e;2];c[v>>2]=c[(c[S>>2]|0)+176>>2];c[(c[S>>2]|0)+168>>2]=(c[s>>2]|
0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[v>>2]|0)+32&-64;c[(c[aa>>2]|0)+144>>
;2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[s>>2]|0);c[(c[aa>>2]|0)+148>>2]=(c[(c[S>
x3e;2]|0)+176>>2]|0)-(c[v>>2]|0)}else{c[t>>2]=c[(c[S>>2]|0)+168>>2];c[w>
x3e;2]=c[(c[S>>2]|0)+176>>2];c[(c[S>>2]|0)+168>>2]=(c[t>>2]|0)+(c[(c[Z>
x3e;2]|0)+116>>2]|0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[w>>2]|0)+(c[(c[Z>>2]|
0)+120>>2]|0)+32&-64;c[(c[aa>>2]|0)+144>>2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[
t>>2]|0);c[(c[aa>>2]|0)+148>>2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[w>>2]|0
)}while(0);oc(c[Y>>2]|0)}}else{switch(k|0){case 1668246896:break;default:{ca=49;break a}}c[J>>2]=c[(c[aa>
;>2]|0)+128>>2];c[O>>2]=b[(c[Y>>2]|0)+20+2>>1];c[X>>2]=lc(c[Y>>
2]|0,c[J>>2]|0)|0;if(c[X>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}Ss(c[(c[Y>>2]|0)+56+32>
;>2]|0,c[(c[aa>>2]|0)+132>>2]|0,c[J>>2]<<5|0)|0;c[(c[Y>>2]|0)+56+28>
x3e;2]=c[J>>2];c[G>>2]=c[(c[Y>>2]|0)+20+28>>2];c[E>>2]=0;while(1){if((c[E>
;>2]|0)>>>0>=(c[J>>2]|0)>>>0)break a;c[P>>2]=(c[(c[Y>>2]|0
)+20+32>>2]|0)+(c[G>>2]<<5)+(c[E>>2]<<5);ea=(c[S>>2]|0)+168|0;c[M>
;>2]=c[ea>>2];c[M+4>>2]=c[ea+4>>2];ea=(c[S>>2]|0)+176|0;c[N>>2]=c[ea>
;>2];c[N+4>>2]=c[ea+4>>2];c[F>>2]=b[(c[Y>>2]|0)+20+2>>1];c[X>>2
]=Km(c[S>>2]|0,c[T>>2]|0,c[c[P>>2]>>2]|0,c[y>>2]|0,(c[V>>2]|0)+1|0)|
0;if(c[X>>2]|0){ca=63;break}c[P>>2]=(c[(c[Y>>2]|0)+20+32>>2]|0)+(c[G>>2]<
x3c;5)+(c[E>>2]<<5);k=(c[S>>2]|0)+168|0;if(e[(c[P>>2]|0)+4>>1]&512|0){c[M
>>2]=c[k>>2];c[M+4>>2]=c[k+4>>2];ea=(c[S>>2]|0)+176|0;c[N>>2]=c[ea
x3e;>2];c[N+4>>2]=c[ea+4>>2]}else{c[k>>2]=c[M>>2];c[k+4>>2]=c[M+4>
x3e;2];ea=(c[S>>2]|0)+176|0;c[ea>>2]=c[N>>2];c[ea+4>>2]=c[N+4>>2]}c[I>>
;2]=b[(c[Y>>2]|0)+20+2>>1];c[H>>2]=(c[I>>2]|0)-(c[F>>2]|0);b:do if(e[(c[P>
;>2]|0)+4>>1]&200|0){c[z>>2]=(c[(c[Y>>2]|0)+20+4>>2]|0)+(c[F>>2]<
;<3);c[D>>2]=(c[z>>2]|0)+(c[H>>2]<<3);while(1){if((c[z>>2]|0)>>
x3e;0>=(c[D>>2]|0)>>>0)break b;Lb(c[z>>2]|0,(c[P>>2]|0)+16|0);c[z>>2
]=(c[z>>2]|0)+8}}while(0);k=c[(c[P>>2]|0)+8>>2]|0;if(e[(c[P>>2]|0)+4>>1]&
2|0){ea=Mb(k,c[(c[Z>>2]|0)+4>>2]|0)|0;c[Q>>2]=ea+(c[(c[Z>>2]|0)+8>>2]|0);ea=Mb
(c[(c[P>>2]|0)+12>>2]|0,c[(c[Z>>2]|0)+12>>2]|0)|0;c[R>>2]=ea+(c[(c[Z>>
;2]|0)+16>>2]|0);c[Q>>2]=(c[Q>>2]|0)+32&-64;c[R>>2]=(c[R>>2]|0)+32&-
64}else{c[B>>2]=k;c[C>>2]=c[(c[P>>2]|0)+12>>2];if(((c[O>>2]|0)+(c[B>>
;2]|0)|0)>>>0>=(c[F>>2]|0)>>>0)break;if((c[C>>2]|0)>>>0>
;=(c[H>>2]|0)>>>0)break;c[C>>2]=(c[C>>2]|0)+(c[F>>2]|0);c[K>>2]=(
c[(c[Y>>2]|0)+20+4>>2]|0)+(c[O>>2]<<3)+(c[B>>2]<<3);c[L>>2
]=(c[(c[Y>>2]|0)+20+4>>2]|0)+(c[O>>2]<<3)+(c[C>>2]<<3);c[Q>>
;2]=(c[c[K>>2]>>2]|0)-(c[c[L>>2]>>2]|0);c[R>>2]=(c[(c[K>>2]|0)+4>
;>2]|0)-(c[(c[L>>2]|0)+4>>2]|0)}ea=(c[Y>>2]|0)+20|0;c[A>>2]=c[ea>>2];c[A+
4>>2]=c[ea+4>>2];c[A+8>>2]=c[ea+8>>2];c[A+12>>2]=c[ea+12>>2];c[A+16
x3e;>2]=c[ea+16>>2];ea=A+4|0;c[ea>>2]=(c[ea>>2]|0)+(c[F>>2]<<3);b[A+2>
;>1]=c[H>>2];Nb(A,c[Q>>2]|0,c[R>>2]|0);c[E>>2]=(c[E>>2]|0)+1}if((ca|0)==63
){ea=c[X>>2]|0;i=da;return ea|0}c[X>>2]=21;ea=c[X>>2]|0;i=da;return ea|0}while(0);if((ca|0)==49)c[
X>>2]=7;if(c[V>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}c[ba>>2]=(c[(c[aa>>2]|0)+24
+20>>2]|0)-(c[(c[aa>>2]|0)+24+8>>2]|0);c[ba+4>>2]=(c[(c[aa>>2]|0)+24+24>
x3e;2]|0)-(c[(c[aa>>2]|0)+24+12>>2]|0);c[ba>>2]=Mb(c[ba>>2]|0,c[(c[$>>2]|0)+4+
4>>2]|0)|0;c[ba+4>>2]=Mb(c[ba+4>>2]|0,c[(c[$>>2]|0)+4+8>>2]|0)|0;if(a[(c[S>
;>2]|0)+140>>0]|0){Kb((c[Y>>2]|0)+20|0,(c[S>>2]|0)+144|0);Lb(ba,(c[S>>2]|0)+144|0)}
if(c[(c[S>>2]|0)+168>>2]|0)Nb((c[Y>>2]|0)+20|0,0-(c[(c[S>>2]|0)+168>>2]|0)|0,0
);_d((c[Y>>2]|0)+20|0,W);c[W>>2]=c[W>>2]&-64;c[W+4>>2]=c[W+4>>2]&-64
;c[W+8>>2]=(c[W+8>>2]|0)+63&-64;c[W+12>>2]=(c[W+12>>2]|0)+63&-64;c[(c[aa>
x3e;2]|0)+24>>2]=(c[W+8>>2]|0)-(c[W>>2]|0);c[(c[aa>>2]|0)+24+4>>2]=(c[W+12>
;>2]|0)-(c[W+4>>2]|0);c[(c[aa>>2]|0)+24+8>>2]=c[W>>2];c[(c[aa>>2]|0)+24+12
>>2]=c[W+12>>2];c[(c[aa>>2]|0)+24+20>>2]=(c[W>>2]|0)+(c[ba>>2]|0)&
;-64;c[(c[aa>>2]|0)+24+24>>2]=(c[W+12>>2]|0)+(c[ba+4>>2]|0)&-64;do if(!(c[(c[(c[aa
x3e;>2]|0)+4>>2]|0)+8>>2]&4|0)){if((Lm(c[(c[S>>2]|0)+4>>2]|0,c[U>>2]|
0)|0)&255|0?d[(c[$>>2]|0)+32>>0]|0:0){ca=58;break}if(c[(c[aa>>2]|0)+24+16>>2]|0)c[(
c[aa>>2]|0)+24+16>>2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[(c[S>>2]|0)+168>>
2]|0)}else ca=58;while(0);if((ca|0)==58){ea=Mb(c[(c[aa>>2]|0)+24+16>>2]|0,c[(c[$>>2]|0)+4+4>
x3e;2]|0)|0;c[(c[aa>>2]|0)+24+16>>2]=ea;c[(c[aa>>2]|0)+144>>2]=0;c[(c[aa>>2]|0
)+148>>2]=0}ea=Mb(c[(c[aa>>2]|0)+24+28>>2]|0,c[(c[$>>2]|0)+4+8>>2]|0)|0;c[(c[aa
>>2]|0)+24+28>>2]=ea;c[(c[aa>>2]|0)+24+16>>2]=(c[(c[aa>>2]|0)+24+16>>
;2]|0)+32&-64;c[(c[aa>>2]|0)+24+28>>2]=(c[(c[aa>>2]|0)+24+28>>2]|0)+32&-64;dc(
c[c[_>>2]>>2]|0);c[X>>2]=pc(c[c[_>>2]>>2]|0,c[Y>>2]|0)|0;if(c[X>
;>2]|0){ea=c[X>>2]|0;i=da;return ea|0}ea=(c[aa>>2]|0)+108|0;ca=(c[c[_>>2]>>2]|0)+20
|0;c[ea>>2]=c[ca>>2];c[ea+4>>2]=c[ca+4>>2];c[ea+8>>2]=c[ca+8>>2];c[ea
+12>>2]=c[ca+12>>2];c[ea+16>>2]=c[ca+16>>2];c[(c[aa>>2]|0)+72>>2]=1869968492
;ea=c[X>>2]|0;i=da;return ea|0}function Lm(b,e){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[g
x3e;>2]=b;c[h>>2]=e;if((c[h>>2]|0)>>>0<(c[(c[g>>2]|0)+4>>2]|0)
x3e;>>0){a[f>>0]=(d[(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]|0)>>0]|0)&
128;b=a[f>>0]|0;i=j;return b|0}else{a[f>>0]=0;b=a[f>>0]|0;i=j;return b|0}return 0}function Mm(a){a
=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Nm((c[d>>2]|0)+20|0,c[c[(c[d>>2]|0)+4>>2]
x3e;>2]|0)|0;i=b;return a|0}function Nm(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
x3e;>2]=b;Ns(c[e>>2]|0,0,184)|0;Hl((c[e>>2]|0)+12|0,c[f>>2]|0);b=ac(c[f>>2]|0,(c[e
x3e;>2]|0)+8|0)|0;i=d;return b|0}function Om(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Pm((c[d>>2
]|0)+20|0);i=b;return}function Pm(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Ol((c[d>>2]|0)+12|0);c[c[d
>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;fc(c[(c[d>>2]|0)+8>>2]|0);c[(c[d>
;>2]|0)+8>>2]=0;i=b;return}function Qm(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
x3e;>2]|0)+108|0}function Rm(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)+120
|0}function Sm(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)+148|0}function Tm(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]=c[(c[d>>2]|0)+8>
x3e;2];c[e>>2]=(c[d>>2]|0)+20;Um((c[d>>2]|0)+20|0,c[f>>2]|0)|0;Vm((c[d>>2]|0)+
108|0);bn((c[d>>2]|0)+120|0);c[(c[d>>2]|0)+120>>2]=c[e>>2];ao((c[d>>2]|0)+148|
0);c[(c[d>>2]|0)+148>>2]=c[e>>2];i=b;return 0}function Um(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i
+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;a=c[d>>2]|0;b=a+88|0;do{c[a>>2]=0;a=a+4|0}while((a
|0)<(b|0));c[c[d>>2]>>2]=c[e>>2];i=f;return 0}function Vm(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]=45;c[(c[d>>2]|0)+4>>2]=24;c[(c[d>>2]|0)+8
>>2]=36;i=b;return}function Wm(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;t=i;i=i+48
|0;h=t+40|0;j=t+36|0;k=t+32|0;p=t+28|0;o=t+24|0;l=t+20|0;q=t+16|0;m=t+12|0;r=t+8|0;n=t+4|0;s=t;c[h>>2]=a;c[j>>
;2]=f;c[k>>2]=g;c[p>>2]=0;c[p>>2]=bc(c[h>>2]|0,2496,o)|0;if(c[o>>2]|0){r=c[p
x3e;>2]|0;s=c[k>>2]|0;c[s>>2]=r;s=c[o>>2]|0;i=t;return s|0}c[c[p>>2]>>2]=
c[h>>2];c[m>>2]=(c[p>>2]|0)+4+204;c[r>>2]=(c[m>>2]|0)+4;c[c[r>>2]>
;>2]=e[(c[j>>2]|0)+120>>1];c[r>>2]=(c[r>>2]|0)+12;c[q>>2]=(c[j>>
;2]|0)+128;c[l>>2]=d[(c[j>>2]|0)+124>>0];while(1){if((c[l>>2]|0)>>>0<
;=0)break;c[c[r>>2]>>2]=b[c[q>>2]>>1];c[r>>2]=(c[r>>2]|0)+12;c[q>
;>2]=(c[q>>2]|0)+2;c[l>>2]=(c[l>>2]|0)+-1}c[c[m>>2]>>2]=(d[(c[j>>
;2]|0)+124>>0]|0)+1;c[n>>2]=(c[p>>2]|0)+4;c[s>>2]=(c[n>>2]|0)+4;c[c[s>>
;2]>>2]=e[(c[j>>2]|0)+122>>1];c[s>>2]=(c[s>>2]|0)+12;c[q>>2]=(c[j>
;>2]|0)+154;c[l>>2]=d[(c[j>>2]|0)+125>>0];while(1){if((c[l>>2]|0)>>>
0<=0)break;c[c[s>>2]>>2]=b[c[q>>2]>>1];c[s>>2]=(c[s>>2]|0)+12;c
[q>>2]=(c[q>>2]|0)+2;c[l>>2]=(c[l>>2]|0)+-1}c[c[n>>2]>>2]=(d[(c[j>
;>2]|0)+125>>0]|0)+1;Xm((c[p>>2]|0)+412|0,d[(c[j>>2]|0)+8>>0]|0,(c[j>>2]|
0)+12|0,d[(c[j>>2]|0)+9>>0]|0,(c[j>>2]|0)+40|0,c[(c[j>>2]|0)+116>>2]|0,0);Xm((
c[p>>2]|0)+412|0,d[(c[j>>2]|0)+10>>0]|0,(c[j>>2]|0)+60|0,d[(c[j>>2]|0)+11>
;>0]|0,(c[j>>2]|0)+88|0,c[(c[j>>2]|0)+116>>2]|0,1);c[(c[p>>2]|0)+412+2064>>
;2]=c[(c[j>>2]|0)+108>>2];c[(c[p>>2]|0)+412+2068>>2]=c[(c[j>>2]|0)+112>
x3e;2];c[(c[p>>2]|0)+412+2076>>2]=c[(c[j>>2]|0)+116>>2];c[(c[p>>2]|0)+4+196>
;>2]=0;c[(c[p>>2]|0)+4+200>>2]=0;c[(c[p>>2]|0)+4+204+196>>2]=0;c[(c[p>>2]|
0)+4+204+200>>2]=0;r=c[p>>2]|0;s=c[k>>2]|0;c[s>>2]=r;s=c[o>>2]|0;i=t;return s|
0}function Xm(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;C=i;i=i+80|0;j=C+76|0;t=C+72|0;k=C+68|0;l=C+64|0;m=C+60|0;u=C+56|0;D=C+52|0;q=C+48|0;w=C+44|0;n=C
+40|0;x=C+36|0;r=C+32|0;o=C+28|0;s=C+24|0;p=C+20|0;z=C+16|0;A=C+12|0;v=C+8|0;y=C+4|0;B=C;c[j>>2]=a;c[t>>2]=b
;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[u>>2]=g;c[D>>2]=h;d=c[j>>2]|0;if(c[
D>>2]|0){c[q>>2]=d+1032;c[w>>2]=(c[j>>2]|0)+1548}else{c[q>>2]=d;c[w>>
;2]=(c[j>>2]|0)+516}c[c[q>>2]>>2]=0;c[c[w>>2]>>2]=0;Ym(c[j>>2]|0,0,c
[t>>2]|0,c[k>>2]|0,c[q>>2]|0,c[w>>2]|0);Ym(c[j>>2]|0,1,c[l>>2]|0,c[m
>>2]|0,c[q>>2]|0,c[w>>2]|0);c[n>>2]=c[c[q>>2]>>2];c[x>>2]=
c[c[w>>2]>>2];a:do if((c[n>>2]|0)>0){c[r>>2]=(c[q>>2]|0)+4;c[t>>
;2]=c[n>>2];while(1){if((c[t>>2]|0)>>>0<=0)break a;if((c[t>>2]|0)>>
x3e;0>1?(c[o>>2]=(c[(c[r>>2]|0)+32>>2]|0)-(c[c[r>>2]>>2]|0),(c[(c[r>
x3e;2]|0)+4>>2]|0)>(c[o>>2]|0)):0)c[(c[r>>2]|0)+4>>2]=c[o>>2];c[(c[r>
;>2]|0)+12>>2]=c[c[r>>2]>>2];c[(c[r>>2]|0)+8>>2]=(c[(c[r>>2]|0)+
4>>2]|0)+(c[c[r>>2]>>2]|0);c[t>>2]=(c[t>>2]|0)+-1;c[r>>2]=(c[r>
x3e;2]|0)+32}}while(0);b:do if((c[x>>2]|0)>0){c[s>>2]=(c[w>>2]|0)+4;c[t>>2]=c[x>
;>2];while(1){if((c[t>>2]|0)>>>0<=0)break b;if((c[t>>2]|0)>>>0>
1?(c[p>>2]=(c[c[s>>2]>>2]|0)-(c[(c[s>>2]|0)+32>>2]|0),(c[(c[s>>2]|0)+
4>>2]|0)<(c[p>>2]|0)):0)c[(c[s>>2]|0)+4>>2]=c[p>>2];c[(c[s>>2]|
0)+8>>2]=c[c[s>>2]>>2];c[(c[s>>2]|0)+12>>2]=(c[(c[s>>2]|0)+4>
x3e;2]|0)+(c[c[s>>2]>>2]|0);c[t>>2]=(c[t>>2]|0)+-1;c[s>>2]=(c[s>>2]|
0)+32}}while(0);c[B>>2]=(c[q>>2]|0)+4;c[t>>2]=c[n>>2];c[z>>2]=1;while(1){if((c
[z>>2]|0)<0)break;if((c[t>>2]|0)>>>0>0){D=(c[B>>2]|0)+12|0;c[D>>
;2]=(c[D>>2]|0)-(c[u>>2]|0);c[A>>2]=c[(c[B>>2]|0)+8>>2];c[t>>2]=(c[t
>>2]|0)+-1;while(1){if((c[t>>2]|0)>>>0<=0)break;c[v>>2]=c[(c[B>>2]|0
)+32+12>>2];c[y>>2]=(c[v>>2]|0)-(c[A>>2]|0);d=c[A>>2]|0;if((c[y>>2]|
0)<(c[u>>2]<<1|0)){D=d+((c[y>>2]|0)/2|0)|0;c[(c[B>>2]|0)+32+12>>2]=D;c[(c
[B>>2]|0)+8>>2]=D}else{c[(c[B>>2]|0)+8>>2]=d+(c[u>>2]|0);c[(c[B>>2]|
0)+32+12>>2]=(c[v>>2]|0)-(c[u>>2]|0)}c[B>>2]=(c[B>>2]|0)+32;c[A>>2]=
c[(c[B>>2]|0)+8>>2];c[t>>2]=(c[t>>2]|0)+-1}c[(c[B>>2]|0)+8>>2]=(c[A
x3e;>2]|0)+(c[u>>2]|0)}c[B>>2]=(c[w>>2]|0)+4;c[t>>2]=c[x>>2];c[z>>
;2]=(c[z>>2]|0)+-1}i=C;return}function Ym(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;A=i;i=i+64|0;B=A+48|0;l=A+54|0;m=A+44|0;n=A+40|0;o=A+36|0;p=A+32|0;s=A+28|0;r=A+24|
0;v=A+53|0;w=A+20|0;t=A+16|0;q=A+12|0;z=A+8|0;y=A+4|0;x=A+52|0;u=A;c[B>>2]=e;a[l>>0]=f;c[m>>2]=g;c
[n>>2]=h;c[o>>2]=j;c[p>>2]=k;c[s>>2]=c[c[o>>2]>>2];c[r>>2]=
c[c[p>>2]>>2];a[v>>0]=1;c[B>>2]=c[B>>2];while(1){if((c[m>>2]|0)>
;>>0<=1)break;a[x>>0]=0;if(!(d[v>>0]|0)?!(d[l>>0]|0):0){c[w>>2]=b[c[n>
;>2]>>1];c[t>>2]=(b[(c[n>>2]|0)+2>>1]|0)-(c[w>>2]|0);c[z>>2]=(c
[o>>2]|0)+4;c[q>>2]=c[s>>2];a[x>>0]=1}else{c[w>>2]=b[(c[n>>2]|0)+2
x3e;>1];c[t>>2]=(b[c[n>>2]>>1]|0)-(c[w>>2]|0);c[z>>2]=(c[p>>2]|
0)+4;c[q>>2]=c[r>>2];a[v>>0]=0}c[y>>2]=c[z>>2];while(1){if((c[q>>2]|
0)>>>0<=0){k=17;break}if((c[w>>2]|0)<(c[c[y>>2]>>2]|0)){k=17;break}if((c[
w>>2]|0)==(c[c[y>>2]>>2]|0)){k=11;break}c[q>>2]=(c[q>>2]|0)+-1;c[y>>
2]=(c[y>>2]|0)+32}do if((k|0)==11){c[u>>2]=c[(c[y>>2]|0)+4>>2];k=c[t>>2]|0;f=c
[u>>2]|0;if((c[t>>2]|0)<0){if((k|0)>=(f|0))break;c[(c[y>>2]|0)+4>>2]=c[t>
x3e;2];break}else{if((k|0)<=(f|0))break;c[(c[y>>2]|0)+4>>2]=c[t>>2];break}}else if((k|0)==17){
while(1){if((c[q>>2]|0)>>>0<=0)break;k=(c[y>>2]|0)+(c[q>>2]<<5)|0;B=(
c[y>>2]|0)+((c[q>>2]|0)-1<<5)|0;c[k>>2]=c[B>>2];c[k+4>>2]=c[B+4>
;>2];c[k+8>>2]=c[B+8>>2];c[k+12>>2]=c[B+12>>2];c[k+16>>2]=c[B+16>>
;2];c[k+20>>2]=c[B+20>>2];c[k+24>>2]=c[B+24>>2];c[k+28>>2]=c[B+28>>2
];c[q>>2]=(c[q>>2]|0)+-1;k=17}c[c[y>>2]>>2]=c[w>>2];c[(c[y>>2]|0)+4
x3e;>2]=c[t>>2];if(a[x>>0]|0){c[s>>2]=(c[s>>2]|0)+1;break}else{c[r>>2]=(c
[r>>2]|0)+1;break}}while(0);c[n>>2]=(c[n>>2]|0)+4;c[m>>2]=(c[m>>2]|0)-2}c[c[o
x3e;>2]>>2]=c[s>>2];c[c[p>>2]>>2]=c[r>>2];i=A;return}function Zm(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;n=i;i=i+32|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g
>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=(c[g>>
;2]|0)+4;c[m>>2]=(c[g>>2]|0)+4;if(!((c[h>>2]|0)==(c[(c[m>>2]|0)+196>>2]|0)?(c[
k>>2]|0)==(c[(c[m>>2]|0)+200>>2]|0):0)){c[(c[m>>2]|0)+196>>2]=c[h>>2
];c[(c[m>>2]|0)+200>>2]=c[k>>2];_m(c[g>>2]|0,0)}c[m>>2]=(c[g>>2]|0)+
4+204;if((c[j>>2]|0)==(c[(c[m>>2]|0)+196>>2]|0)?(c[l>>2]|0)==(c[(c[m>>2]|0)+200
>>2]|0):0){i=n;return 0}c[(c[m>>2]|0)+196>>2]=c[j>>2];c[(c[m>>2]|0)+200>
x3e;2]=c[l>>2];_m(c[g>>2]|0,1);$m((c[g>>2]|0)+412|0,c[j>>2]|0,c[l>>2]|0);i=n;return
0}function _m(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;k=i;i=i+48|0;o=k+36|0;n=k+32|0;l=k+28|0;m=k+24|0
;d=k+20|0;j=k+16|0;g=k+12|0;f=k+8|0;h=k+4|0;e=k;c[o>>2]=a;c[n>>2]=b;c[l>>2]=(c[o>>2]|0)+
4+((c[n>>2]|0)*204|0);c[m>>2]=c[l>>2];c[d>>2]=c[c[m>>2]>>2];c[j>
;>2]=(c[m>>2]|0)+4;c[g>>2]=c[j>>2];c[f>>2]=c[(c[l>>2]|0)+196>>2
];if((c[d>>2]|0)>>>0<=0){i=k;return}o=Mb(c[c[j>>2]>>2]|0,c[f>>2]|0)|
0;c[(c[j>>2]|0)+4>>2]=o;c[(c[j>>2]|0)+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+
32&-64;c[j>>2]=(c[j>>2]|0)+12;c[d>>2]=(c[d>>2]|0)+-1;while(1){if((c[d>>2]|
0)>>>0<=0)break;c[h>>2]=Mb(c[c[j>>2]>>2]|0,c[f>>2]|0)|0;c[e>>
;2]=(c[h>>2]|0)-(c[(c[g>>2]|0)+4>>2]|0);if((c[e>>2]|0)<0)c[e>>2]=0-(c[e
x3e;>2]|0);if((c[e>>2]|0)<128)c[h>>2]=c[(c[g>>2]|0)+4>>2];c[(c[j>>2]|
0)+4>>2]=c[h>>2];c[(c[j>>2]|0)+8>>2]=(c[h>>2]|0)+32&-64;c[d>>2]=(
c[d>>2]|0)+-1;c[j>>2]=(c[j>>2]|0)+12}i=k;return}function $m(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;w=i;i=i+64|0;l=w+56|0;m=w+52|0;f=w+48|0;g=w+44|0;s=w+40|0;h=w+36|0;j=
w+32|0;k=w+28|0;t=w+24|0;u=w+20|0;o=w+16|0;p=w+12|0;r=w+8|0;q=w+4|0;n=w;c[l>>2]=b;c[m>>2]=d;c[f>>2
]=e;c[h>>2]=0;b=c[m>>2]|0;if((c[m>>2]|0)>=34359738)a[(c[l>>2]|0)+2080>>0]=(
b|0)<((c[(c[l>>2]|0)+2064>>2]<<3|0)/125|0|0);else a[(c[l>>2]|0)+2080>>0]=(
b*125|0)<(c[(c[l>>2]|0)+2064>>2]<<3|0);c[j>>2]=c[(c[l>>2]|0)+2068>
x3e;2];while(1){if((c[j>>2]|0)>0)b=(Mb(c[j>>2]|0,c[m>>2]|0)|0)>32;else b=0;e=c[j>
x3e;2]|0;if(!b)break;c[j>>2]=e+-1}c[(c[l>>2]|0)+2072>>2]=e;c[s>>2]=0;while(1){if((c[s>
;>2]|0)>>>0>=4)break;switch(c[s>>2]|0){case 0:{c[h>>2]=c[l>>2];break}case
1:{c[h>>2]=(c[l>>2]|0)+516;break}case 2:{c[h>>2]=(c[l>>2]|0)+1032;break}default:c[h>
;>2]=(c[l>>2]|0)+1548}c[k>>2]=(c[h>>2]|0)+4;c[g>>2]=c[c[h>>2]>>
2];while(1){if((c[g>>2]|0)>>>0<=0)break;j=Mb(c[(c[k>>2]|0)+8>>2]|0,c[m>
x3e;2]|0)|0;c[(c[k>>2]|0)+28>>2]=j+(c[f>>2]|0);j=Mb(c[(c[k>>2]|0)+12>>2]|0,c[m
>>2]|0)|0;c[(c[k>>2]|0)+24>>2]=j+(c[f>>2]|0);j=Mb(c[c[k>>2]>>2]|0,c[
m>>2]|0)|0;c[(c[k>>2]|0)+16>>2]=j+(c[f>>2]|0);j=Mb(c[(c[k>>2]|0)+4>>
2]|0,c[m>>2]|0)|0;c[(c[k>>2]|0)+20>>2]=j;c[(c[k>>2]|0)+16>>2]=(c[(c[k>>
;2]|0)+16>>2]|0)+32&-64;c[g>>2]=(c[g>>2]|0)+-1;c[k>>2]=(c[k>>2]|0)+32}c[s
>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=2)break;b=
c[l>>2]|0;if(!(c[s>>2]|0)){c[r>>2]=b;c[q>>2]=(c[l>>2]|0)+1032}else{c[r>
x3e;2]=b+516;c[q>>2]=(c[l>>2]|0)+1548}c[t>>2]=(c[r>>2]|0)+4;c[o>>2]=c[c[r>
;>2]>>2];while(1){if((c[o>>2]|0)>>>0<=0)break;c[u>>2]=(c[q>>2]|
0)+4;c[p>>2]=c[c[q>>2]>>2];while(1){if((c[p>>2]|0)>>>0<=0)break;c[n
x3e;>2]=(c[c[t>>2]>>2]|0)-(c[c[u>>2]>>2]|0);if((c[n>>2]|0)<0)c[n>
;>2]=0-(c[n>>2]|0);if((Mb(c[n>>2]|0,c[m>>2]|0)|0)<64){v=32;break}c[p>>2]=(c[p
x3e;>2]|0)+-1;c[u>>2]=(c[u>>2]|0)+32}if((v|0)==32){v=0;c[(c[t>>2]|0)+28>>2]=c[(c[u
x3e;>2]|0)+28>>2];c[(c[t>>2]|0)+24>>2]=c[(c[u>>2]|0)+24>>2];c[(c[t>
x3e;2]|0)+16>>2]=c[(c[u>>2]|0)+16>>2];c[(c[t>>2]|0)+20>>2]=c[(c[u>>2
]|0)+20>>2]}c[o>>2]=(c[o>>2]|0)+-1;c[t>>2]=(c[t>>2]|0)+32}c[s>>2]=(c
[s>>2]|0)+1}i=w;return}function an(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(!(c[b>
;>2]|0)){i=e;return}c[d>>2]=c[c[b>>2]>>2];c[(c[b>>2]|0)+4>>2]=0;c[(c[b>
;>2]|0)+4+204>>2]=0;c[(c[b>>2]|0)+412>>2]=0;c[(c[b>>2]|0)+412+516>>2]=0;c
[(c[b>>2]|0)+412+1032>>2]=0;c[(c[b>>2]|0)+412+1548>>2]=0;Fb(c[d>>2]|0,c[b>
;>2]|0);c[b>>2]=0;i=e;return}function bn(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=b;b=c[e>
;>2]|0;d=b+28|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(d|0));c[(c[e>>2]|0)+4>>2]=37;c[(c[e>
;>2]|0)+8>>2]=108;c[(c[e>>2]|0)+12>>2]=13;c[(c[e>>2]|0)+16>>2]=14;c[(c[e
x3e;>2]|0)+20>>2]=5;c[(c[e>>2]|0)+24>>2]=24;i=f;return}function cn(a){a=a|0;var b=0,d=0;b=i;i
=i+16|0;d=b;c[d>>2]=a;dn(c[d>>2]|0,1);i=b;return}function dn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d
=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;b=(c[d>>2]|0)+4|0;if(((c[e>>2]|0)+-1|0)>>>
0<2){c[b>>2]=0;c[(c[d>>2]|0)+12>>2]=c[e>>2];en((c[d>>2]|0)+16|0);en((c[d
x3e;>2]|0)+16+36|0);i=f;return}else{c[b>>2]=6;c[(c[d>>2]|0)+12>>2]=c[e>>2];i=f;return
}}function en(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]=0;c[(c[d>>2]|
0)+12>>2]=0;c[(c[d>>2]|0)+24>>2]=0;i=b;return}function fn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0
,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;g=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[g>>2]=c[(c[d>
x3e;2]|0)+4>>2];if(c[g>>2]|0){h=c[g>>2]|0;i=j;return h|0}c[h>>2]=c[c[d>>2]>
;>2];c[f>>2]=(c[d>>2]|0)+16;c[g>>2]=gn(c[f>>2]|0,c[e>>2]|0,c[h>>
;2]|0)|0;if(c[g>>2]|0){h=c[g>>2]|0;i=j;return h|0}c[g>>2]=gn((c[f>>2]|0)+36|0,c[e>
x3e;2]|0,c[h>>2]|0)|0;h=c[g>>2]|0;i=j;return h|0}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+16|0;g=e+8|0;h=e+4|0;f=e;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;hn(c[g>>2]|0,c[h>>
;2]|0);d=jn((c[g>>2]|0)+24|0,c[f>>2]|0)|0;i=e;return d|0}function hn(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|0)+12
>>2];if((c[f>>2]|0)>>>0<=0){i=h;return}c[g>>2]=(c[(c[d>>2]|0)+12+8
x3e;>2]|0)+(c[f>>2]<<4)+-16;c[(c[g>>2]|0)+12>>2]=c[e>>2];i=h;return}function
jn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+16|0;e=k+12|0;g=k+8|0;h=k+4|0;f=k;c[d>>2]=a;c[e
x3e;>2]=b;c[f>>2]=0;c[g>>2]=(c[c[d>>2]>>2]|0)-1;while(1){if((c[g>>2]|0)
x3c;=0){j=9;break}c[h>>2]=(c[g>>2]|0)-1;while(1){if((c[h>>2]|0)<0)break;if(kn(c[d>>
2]|0,c[g>>2]|0,c[h>>2]|0)|0){j=6;break}c[h>>2]=(c[h>>2]|0)+-1}if((j|0)==6?(j=0,c[f>
x3e;2]=ln(c[d>>2]|0,c[h>>2]|0,c[g>>2]|0,c[e>>2]|0)|0,c[f>>2]|0):0){j=9;break}c
[g>>2]=(c[g>>2]|0)+-1}if((j|0)==9){i=k;return c[f>>2]|0}return 0}function kn(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;l=i;i=i+48|0;f=l+40|0;r=l+36|0;s=l+32|0;q=l+28|0;p=l+24|0;o=l+20|0;h
=l+16|0;j=l+12|0;n=l+8|0;m=l+4|0;g=l;c[r>>2]=a;c[s>>2]=b;c[q>>2]=e;c[p>>2]=(c[(c[r>
x3e;2]|0)+8>>2]|0)+(c[s>>2]<<4);c[o>>2]=(c[(c[r>>2]|0)+8>>2]|0)+(c[q
>>2]<<4);c[h>>2]=c[(c[p>>2]|0)+8>>2];c[j>>2]=c[(c[o>>2]|0)+
8>>2];c[n>>2]=c[c[p>>2]>>2];c[m>>2]=c[c[o>>2]>>2];c[g>
;>2]=(c[n>>2]|0)>>>0<=(c[m>>2]|0)>>>0?c[n>>2]|0:c[m>
x3e;2]|0;while(1){if((c[g>>2]|0)>>>0<8)break;if((d[c[h>>2]>>0]|0)&(d[c[j
x3e;>2]>>0]|0)|0){k=4;break}c[h>>2]=(c[h>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1;c
[g>>2]=(c[g>>2]|0)-8}if((k|0)==4){c[f>>2]=1;s=c[f>>2]|0;i=l;return s|0}if(!(c[g>>
;2]|0)){c[f>>2]=0;s=c[f>>2]|0;i=l;return s|0}else{c[f>>2]=(d[c[h>>2]>>0]|0)&
;(d[c[j>>2]>>0]|0)&~(255>>c[g>>2]);s=c[f>>2]|0;i=l;return s|0}return 0}function
ln(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;x=i;i=i+80|0;h=x+68|0;j
=x+64|0;k=x+60|0;l=x+56|0;v=x+52|0;q=x+48|0;r=x+44|0;s=x+40|0;m=x+36|0;n=x+32|0;o=x+28|0;t=x+24|0;u=x+20|0;w=x+16|0;p=x;c[h>
;>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[q>>2]=0;if((c[j>>2]|0)>(c[k
x3e;>2]|0)){c[v>>2]=c[j>>2];c[j>>2]=c[k>>2];c[k>>2]=c[v>>2]}if(!((
c[j>>2]|0)>=0?(c[j>>2]|0)<(c[k>>2]|0):0)){w=c[q>>2]|0;i=x;return w|0}if((c[k
x3e;>2]|0)>=(c[c[h>>2]>>2]|0)){w=c[q>>2]|0;i=x;return w|0}c[r>>2]=(c[(c[h>
;>2]|0)+8>>2]|0)+(c[j>>2]<<4);c[s>>2]=(c[(c[h>>2]|0)+8>>2]|0)+(
c[k>>2]<<4);c[m>>2]=c[c[r>>2]>>2];c[n>>2]=c[c[s>>2]>
x3e;2];a:do if((c[n>>2]|0)>>>0>0){b:do if((c[n>>2]|0)>>>0>(c[m>
x3e;2]|0)>>>0){c[q>>2]=mn(c[r>>2]|0,c[n>>2]|0,c[l>>2]|0)|0;if(c[q>
x3e;2]|0){w=c[q>>2]|0;i=x;return w|0}c[t>>2]=c[m>>2];while(1){if((c[t>>2]|0)>>
x3e;0>=(c[n>>2]|0)>>>0)break b;nn(c[r>>2]|0,c[t>>2]|0);c[t>>2]=(c[t
x3e;>2]|0)+1}}while(0);c[u>>2]=c[(c[s>>2]|0)+8>>2];c[w>>2]=c[(c[r>>2]|0)+
8>>2];c[t>>2]=((c[n>>2]|0)+7|0)>>>3;while(1){if((c[t>>2]|0)>>
x3e;0<=0)break a;a[c[w>>2]>>0]=d[c[w>>2]>>0]|0|(d[c[u>>2]>>0]|0
);c[w>>2]=(c[w>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+-1
}}while(0);c[c[s>>2]>>2]=0;c[(c[s>>2]|0)+12>>2]=0;c[o>>2]=(c[c[h>>2]
x3e;>2]|0)-1-(c[k>>2]|0);if((c[o>>2]|0)>0){w=c[s>>2]|0;c[p>>2]=c[w>>
2];c[p+4>>2]=c[w+4>>2];c[p+8>>2]=c[w+8>>2];c[p+12>>2]=c[w+12>>2];Ts(
c[s>>2]|0,(c[s>>2]|0)+16|0,c[o>>2]<<4|0)|0;w=(c[s>>2]|0)+(c[o>>2]<
;<4)|0;c[w>>2]=c[p>>2];c[w+4>>2]=c[p+4>>2];c[w+8>>2]=c[p+8>>2];
c[w+12>>2]=c[p+12>>2]}w=c[h>>2]|0;c[w>>2]=(c[w>>2]|0)+-1;w=c[q>>2]|0
;i=x;return w|0}function mn(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;k=i;i=i+32|0;e=k+20|0;l=k+16|0;f=k+12|0;j=k
+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=((c[(c[e>>2]|0)+4>
x3e;2]|0)+7|0)>>>3;c[h>>2]=((c[l>>2]|0)+7|0)>>>3;c[g>>2]=0;if((c[h
x3e;>2]|0)>>>0<=(c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>
;>2]=(c[h>>2]|0)+7&-8;l=hc(c[f>>2]|0,1,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2
]|0)+8>>2]|0,g)|0;c[(c[e>>2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l
|0}c[(c[e>>2]|0)+4>>2]=c[h>>2]<<3;l=c[g>>2]|0;i=k;return l|0}function nn(b,e){
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]=b;c[g>>2]=e;if((c[g>>2]|0
)>>>0>=(c[c[f>>2]>>2]|0)>>>0){i=j;return}c[h>>2]=(c[(c[f>
x3e;2]|0)+8>>2]|0)+(c[g>>2]>>3);a[c[h>>2]>>0]=(d[c[h>>2]>>
0]|0)&~(128>>(c[g>>2]&7));i=j;return}function on(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]=(Tb(c[c
[j>>2]>>2]|0)|0)>>16;c[f+4>>2]=(Tb(c[(c[j>>2]|0)+4>>2]|0)|0)>
x3e;16;pn(c[h>>2]|0,c[g>>2]|0,1,f);i=e;return}function pn(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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;h=o+16|0;j=o+12|0;k=o+8|0;l=o+4|0;m=o;c[f>>2]=a;c[g>>2
]=b;c[h>>2]=d;c[j>>2]=e;if(c[(c[f>>2]|0)+4>>2]|0){i=o;return}if((c[g>>2]|0)<
;0|(c[g>>2]|0)>1)c[g>>2]=(c[g>>2]|0)!=0&1;if(((c[(c[f>>2]|0)+12>>2]|
0)+-1|0)>>>0>=2){i=o;return}c[k>>2]=(c[f>>2]|0)+16+((c[g>>2]|0)*36|0);while(1){
if((c[h>>2]|0)>>>0<=0){n=10;break}c[m>>2]=c[c[f>>2]>>2];c[l>>
;2]=qn(c[k>>2]|0,c[c[j>>2]>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[m>>2]|0,0)|
0;if(c[l>>2]|0)break;c[h>>2]=(c[h>>2]|0)+-1;c[j>>2]=(c[j>>2]|0)+8}if((n|0)==10
){i=o;return}c[(c[f>>2]|0)+4>>2]=c[l>>2];i=o;return}function qn(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;s=i;i=i+48|0;g=s+40|0;h=s+36|0;j=s+32|0;k=s+28|0;l=s+24|0;m=s+20|0;n=
s+16|0;q=s+12|0;p=s+8|0;r=s+4|0;o=s;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>
;2]=f;c[m>>2]=0;c[n>>2]=0;if((c[j>>2]|0)<0){c[n>>2]=c[n>>2]|1;if((c[j>
;>2]|0)==-21){c[n>>2]=c[n>>2]|2;c[h>>2]=(c[h>>2]|0)+(c[j>>2]|0)}c[j>
x3e;2]=0}if(c[l>>2]|0)c[c[l>>2]>>2]=-1;c[r>>2]=c[c[g>>2]>>2];c[o>
;>2]=c[(c[g>>2]|0)+8>>2];c[p>>2]=0;while(1){if((c[p>>2]|0)>>>0>=(
c[r>>2]|0)>>>0)break;if((c[c[o>>2]>>2]|0)==(c[h>>2]|0)?(c[(c[o>>
;2]|0)+4>>2]|0)==(c[j>>2]|0):0)break;c[p>>2]=(c[p>>2]|0)+1;c[o>>2]=(c[o>
x3e;2]|0)+12}do if((c[p>>2]|0)>>>0>=(c[r>>2]|0)>>>0){c[m>>2]=rn
(c[g>>2]|0,c[k>>2]|0,o)|0;if(c[m>>2]|0){b=c[m>>2]|0;i=s;return b|0}else{c[c[o>>
;2]>>2]=c[h>>2];c[(c[o>>2]|0)+4>>2]=c[j>>2];c[(c[o>>2]|0)+8>>
;2]=c[n>>2];break}}while(0);c[m>>2]=tn((c[g>>2]|0)+12|0,c[k>>2]|0,q)|0;if(c[m>>
;2]|0){b=c[m>>2]|0;i=s;return b|0}c[m>>2]=wn(c[q>>2]|0,c[p>>2]|0,c[k>>2]|0)|0;
if(!((c[m>>2]|0)==0&(c[l>>2]|0)!=0)){b=c[m>>2]|0;i=s;return b|0}c[c[l>>2]>>
;2]=c[p>>2];b=c[m>>2]|0;i=s;return b|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;
l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;j=l+8|0;h=l+4|0;k=l;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>
;>2]=0;c[k>>2]=0;c[h>>2]=c[c[e>>2]>>2];c[h>>2]=(c[h>>2]|0)+1;if
((c[h>>2]|0)>>>0>=(c[(c[e>>2]|0)+4>>2]|0)>>>0?(c[j>>2
]=sn(c[e>>2]|0,c[h>>2]|0,c[f>>2]|0)|0,c[j>>2]|0):0){b=c[k>>2]|0;a=c[g>>
;2]|0;c[a>>2]=b;a=c[j>>2]|0;i=l;return a|0}c[k>>2]=(c[(c[e>>2]|0)+8>>2]|0)+((c
[h>>2]|0)*12|0)+-12;c[c[k>>2]>>2]=0;c[(c[k>>2]|0)+4>>2]=0;c[(c[k>>2]|
0)+8>>2]=0;c[c[e>>2]>>2]=c[h>>2];b=c[k>>2]|0;a=c[g>>2]|0;c[a>
x3e;2]=b;a=c[j>>2]|0;i=l;return a|0}function sn(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;k=i;i=i+32|0;
e=k+20|0;l=k+16|0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=c[(
c[e>>2]|0)+4>>2];c[h>>2]=c[l>>2];c[g>>2]=0;if((c[h>>2]|0)>>
;>0<=(c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>>2]=(c[h>>
2]|0)+7&-8;l=hc(c[f>>2]|0,12,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+8>>2]|0,g)|
0;c[(c[e>>2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l|0}c[(c[e>>2]|0)+
4>>2]=c[h>>2];l=c[g>>2]|0;i=k;return l|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;k=i;i=i+32|0;l=k+20|0;e=k+16|0;f=k+12|0;h=k+8|0;g=k+4|0;j=k;c[l>>2]=a;c[e>>2]=b;c[f>>2
]=d;c[h>>2]=0;c[g>>2]=c[c[l>>2]>>2];d=c[l>>2]|0;if(!(c[g>>2]|0)){c[h
>>2]=un(d,c[e>>2]|0,j)|0;j=c[j>>2]|0;l=c[f>>2]|0;c[l>>2]=j;l=c[h>>2]|
0;i=k;return l|0}else{c[j>>2]=(c[d+8>>2]|0)+(c[g>>2]<<4)+-16;j=c[j>>2]|0;l=c[f
>>2]|0;c[l>>2]=j;l=c[h>>2]|0;i=k;return l|0}return 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;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[e>>2]=a;c[f>>2]=b;c[g
x3e;>2]=d;c[j>>2]=0;c[k>>2]=0;c[h>>2]=c[c[e>>2]>>2];c[h>>2]=(c[
h>>2]|0)+1;if((c[h>>2]|0)>>>0>(c[(c[e>>2]|0)+4>>2]|0)>>>
;0?(c[j>>2]=vn(c[e>>2]|0,c[h>>2]|0,c[f>>2]|0)|0,c[j>>2]|0):0){b=c[k>>
;2]|0;a=c[g>>2]|0;c[a>>2]=b;a=c[j>>2]|0;i=l;return a|0}c[k>>2]=(c[(c[e>>2]|0)+
8>>2]|0)+(c[h>>2]<<4)+-16;c[c[k>>2]>>2]=0;c[(c[k>>2]|0)+12>>
;2]=0;c[c[e>>2]>>2]=c[h>>2];b=c[k>>2]|0;a=c[g>>2]|0;c[a>>2]=b;a=c[j
x3e;>2]|0;i=l;return a|0}function vn(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;k=i;i=i+32|0;e=k+20|0;l=k+16|
0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=c[(c[e>>2
]|0)+4>>2];c[h>>2]=c[l>>2];c[g>>2]=0;if((c[h>>2]|0)>>>0<=(
c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>>2]=(c[h>>2]|0)+7&-8;
l=hc(c[f>>2]|0,16,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+8>>2]|0,g)|0;c[(c[e>
x3e;2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l|0}c[(c[e>>2]|0)+4>>2]=
c[h>>2];l=c[g>>2]|0;i=k;return l|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;m=i;i=i+
32|0;g=m+16|0;h=m+12|0;j=m+8|0;k=m+4|0;l=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=0;if((c
[h>>2]|0)<0){l=c[k>>2]|0;i=m;return l|0}do if((c[h>>2]|0)>>>0>=(c[c[g>
;>2]>>2]|0)>>>0){c[k>>2]=mn(c[g>>2]|0,(c[h>>2]|0)+1|0,c[j>>
;2]|0)|0;if(c[k>>2]|0){l=c[k>>2]|0;i=m;return l|0}else{c[c[g>>2]>>2]=(c[h>>2]|
0)+1;break}}while(0);c[l>>2]=(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]>>3);a[c[l>
x3e;2]>>0]=d[c[l>>2]>>0]|0|128>>(c[h>>2]&7);l=c[k>>2]|0;i=m;return
l|0}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,l=0,m=0,n=0;n=i;i=i+48|0;f=n+36|0;e=n+32|0;g=n+28|0;k=n+24
|0;j=n+20|0;m=n+16|0;h=n+12|0;l=n;c[f>>2]=a;c[e>>2]=b;c[g>>2]=d;c[k>>2]=0;if(c[(c[f>
;>2]|0)+4>>2]|0){i=n;return}c[m>>2]=c[c[f>>2]>>2];if((c[e>>2]|0)<0|(
c[e>>2]|0)>1)c[e>>2]=(c[e>>2]|0)!=0&1;c[j>>2]=(c[f>>2]|0)+16+((c[e
x3e;>2]|0)*36|0);a:do if((c[(c[f>>2]|0)+12>>2]|0)==1){c[h>>2]=0;while(1){e=c[j>>2]|
0;if((c[h>>2]|0)>=3)break;a=(Tb(c[c[g>>2]>>2]|0)|0)>>16;d=(Tb(c[(c[g>>2]|
0)+4>>2]|0)|0)>>16;c[k>>2]=qn(e,a,d,c[m>>2]|0,l+(c[h>>2]<<2)|0)|0;if
(c[k>>2]|0)break a;c[h>>2]=(c[h>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+8}c[k>>
2]=yn(e,c[l>>2]|0,c[l+4>>2]|0,c[l+8>>2]|0,c[m>>2]|0)|0;if(!(c[k>>2]|0)){i=n;return
}}else c[k>>2]=6;while(0);c[(c[f>>2]|0)+4>>2]=c[k>>2];i=n;return}function yn(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;p=i;i=i+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;
o=p+8|0;m=p+4|0;n=p;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[o>
;>2]=0;c[m>>2]=c[(c[g>>2]|0)+24>>2];c[n>>2]=c[(c[g>>2]|0)+24+8>>
;2];while(1){if((c[m>>2]|0)>>>0<=0)break;if(zn(c[n>>2]|0,c[h>>2]|0)|0)break;if
(zn(c[n>>2]|0,c[j>>2]|0)|0)break;if(zn(c[n>>2]|0,c[k>>2]|0)|0)break;c[m>>2]=(c
[m>>2]|0)+-1;c[n>>2]=(c[n>>2]|0)+16}if((c[m>>2]|0)==0?(c[o>>2]=un((c[g>
x3e;2]|0)+24|0,c[l>>2]|0,n)|0,c[o>>2]|0):0){f=c[o>>2]|0;i=p;return f|0}c[o>>2]=wn(c[n>
;>2]|0,c[h>>2]|0,c[l>>2]|0)|0;if(c[o>>2]|0){f=c[o>>2]|0;i=p;return f|0}c[o>>
;2]=wn(c[n>>2]|0,c[j>>2]|0,c[l>>2]|0)|0;if(c[o>>2]|0){f=c[o>>2]|0;i=p;return f
|0}c[o>>2]=wn(c[n>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;f=c[o>>2]|0;i=p;return f|0}function
zn(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=b;if((c[g>
x3e;2]|0)>>>0>=(c[c[f>>2]>>2]|0)>>>0){c[e>>2]=0;a=c[e>>
;2]|0;i=h;return a|0}else{c[e>>2]=(d[(c[(c[f>>2]|0)+8>>2]|0)+(c[g>>2]>>3)>
;>0]|0)&128>>(c[g>>2]&7);a=c[e>>2]|0;i=h;return a|0}return 0}function An(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>
2]=0;if(c[(c[d>>2]|0)+4>>2]|0){i=h;return}c[g>>2]=c[c[d>>2]>>2];if((c[(c[d>
;>2]|0)+12>>2]|0)==1){c[f>>2]=Bn((c[d>>2]|0)+16|0,c[e>>2]|0,c[g>>2]|0)|0;
if((c[f>>2]|0)==0?(c[f>>2]=Bn((c[d>>2]|0)+16+36|0,c[e>>2]|0,c[g>>2]|0)|0,(c[f
x3e;>2]|0)==0):0){i=h;return}}else c[f>>2]=6;c[(c[d>>2]|0)+4>>2]=c[f>>2];i=h;return
}function Bn(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+8|0;f=e+4|0;c[g>>2]=a;c[h>>
;2]=b;c[f>>2]=d;hn(c[g>>2]|0,c[h>>2]|0);d=un((c[g>>2]|0)+12|0,c[f>>2]|0,e)|0;i
=e;return d|0}function Cn(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,x=0,y
=0,z=0;z=i;i=i+208|0;h=z+192|0;j=z+188|0;k=z+184|0;l=z+180|0;m=z+176|0;s=z+40|0;q=z+36|0;p=z+32|0;n=z+28|0;o=z+24|0;x=z+20|0;y=z
+16|0;t=z+12|0;u=z+8|0;w=z+4|0;r=z;v=z+196|0;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[s
>>2]=z+48;if(b[(c[k>>2]|0)+2>>1]|0?b[c[k>>2]>>1]|0:0){c[q>>2]=Dn(c[s
>>2]|0,c[k>>2]|0,c[j>>2]|0,c[l>>2]|0)|0;a:do if(!(c[q>>2]|0)){c[n>>2
]=(c[(c[s>>2]|0)+24>>2]|0)+4;c[o>>2]=(c[(c[s>>2]|0)+24>>2]|0)+4+204;c[x>
x3e;2]=c[(c[n>>2]|0)+196>>2];c[y>>2]=c[(c[o>>2]|0)+196>>2];c[t>>2]=c
[x>>2];c[u>>2]=c[y>>2];a[v>>0]=0;c[w>>2]=Mb(c[(c[l>>2]|0)+412+4>
;>2]|0,c[y>>2]|0)|0;c[r>>2]=(c[w>>2]|0)+32&-64;if(c[r>>2]|0?(c[w>>2]|
0)!=(c[r>>2]|0):0){a[v>>0]=1;c[y>>2]=xb(c[y>>2]|0,c[r>>2]|0,c[w>>2]|
0)|0;if((c[r>>2]|0)<(c[w>>2]|0))c[x>>2]=(c[x>>2]|0)-((c[x>>2]|0)/50|0);Zm
(c[(c[s>>2]|0)+24>>2]|0,c[x>>2]|0,c[y>>2]|0,0,0)|0}a[(c[s>>2]|0)+120>>
;0]=1;a[(c[s>>2]|0)+121>>0]=1;a[(c[s>>2]|0)+122>>0]=((c[m>>2]|0)==2?1:(c[m>
;>2]|0)==3)&1;a[(c[s>>2]|0)+123>>0]=((c[m>>2]|0)==2?1:(c[m>>2]|0)==4)&1;a
[(c[s>>2]|0)+124>>0]=(c[m>>2]|0)!=1;c[p>>2]=0;while(1){if((c[p>>2]|0)>=2)
break a;Fn(c[s>>2]|0,c[p>>2]|0);Ln(c[s>>2]|0);Mn((c[s>>2]|0)+28+((c[p>>2]|0)*40
|0)|0,c[(c[s>>2]|0)+24>>2]|0,c[p>>2]|0,c[s>>2]|0);Rn(c[s>>2]|0,c[p>>
2]|0);if((c[p>>2]|0)==1)Vn((c[l>>2]|0)+412|0,c[s>>2]|0);Wn(c[s>>2]|0,c[p>>2]|0
);Xn(c[s>>2]|0,c[p>>2]|0);Yn(c[s>>2]|0,c[p>>2]|0);Zn(c[s>>2]|0,c[p>>
2]|0);if(a[v>>0]|0)Zm(c[(c[s>>2]|0)+24>>2]|0,c[t>>2]|0,c[u>>2]|0,0,0)|0;c[p>
;>2]=(c[p>>2]|0)+1}}while(0);_n(c[s>>2]|0);c[h>>2]=c[q>>2];y=c[h>>2]|0;i=
z;return y|0}c[h>>2]=0;y=c[h>>2]|0;i=z;return y|0}function Dn(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,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+96|0;p=F+88|0;q=F+84|0;r=F+80|0;s
=F+76|0;x=F+72|0;y=F+68|0;k=F+64|0;m=F+60|0;l=F+56|0;o=F+52|0;h=F+48|0;j=F+44|0;n=F+40|0;D=F+36|0;C=F+32|0;E=F+28|0;z=F+24|0;B=F
+20|0;A=F+16|0;t=F+12|0;v=F+8|0;u=F+4|0;w=F;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;g=c[
p>>2]|0;d=g+128|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(d|0));f=c[c[s>>2]>>2]|0;c[(c[p
x3e;>2]|0)+16>>2]=f;c[y>>2]=f;f=hc(c[y>>2]|0,48,0,b[(c[q>>2]|0)+2>>1]|0,0
,x)|0;c[(c[p>>2]|0)+8>>2]=f;if(c[x>>2]|0){E=c[x>>2]|0;i=F;return E|0}f=hc(c[y>>
;2]|0,8,0,b[c[q>>2]>>1]|0,0,x)|0;c[(c[p>>2]|0)+12>>2]=f;if(c[x>>2]|0){E=c[x>
;>2]|0;i=F;return E|0}c[c[p>>2]>>2]=b[(c[q>>2]|0)+2>>1];c[(c[p>>2]|0)+4
x3e;>2]=b[c[q>>2]>>1];c[k>>2]=0;c[o>>2]=c[(c[p>>2]|0)+8>>2];c[h
>>2]=c[(c[p>>2]|0)+12>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0
>=(c[(c[p>>2]|0)+4>>2]|0)>>>0)break;c[m>>2]=(b[(c[(c[q>>2]|0)+12>
;>2]|0)+(c[l>>2]<<1)>>1]|0)+1;c[j>>2]=(c[m>>2]|0)-(c[k>>2]|0);c
[c[h>>2]>>2]=(c[o>>2]|0)+((c[k>>2]|0)*48|0);c[(c[h>>2]|0)+4>>2]=c[j
x3e;>2];if((c[j>>2]|0)>0){c[n>>2]=(c[o>>2]|0)+((c[k>>2]|0)*48|0);c[c[n>
x3e;2]>>2]=(c[o>>2]|0)+((c[m>>2]|0)*48|0)+-48;c[(c[n>>2]|0)+8>>2]=c[h>>
;2];while(1){if((c[j>>2]|0)<=1)break;c[(c[n>>2]|0)+4>>2]=(c[n>>2]|0)+48;c[(c[n>
;>2]|0)+48>>2]=c[n>>2];c[n>>2]=(c[n>>2]|0)+48;c[(c[n>>2]|0)+8>>
2]=c[h>>2];c[j>>2]=(c[j>>2]|0)+-1}c[(c[n>>2]|0)+4>>2]=(c[o>>2]|0)+((
c[k>>2]|0)*48|0)}c[h>>2]=(c[h>>2]|0)+8;c[k>>2]=c[m>>2];c[l>>2]=(c[l
x3e;>2]|0)+1}c[D>>2]=c[(c[p>>2]|0)+8>>2];c[C>>2]=c[D>>2];c[E>>2
]=c[(c[q>>2]|0)+4>>2];c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[c[p
x3e;>2]>>2]|0)>>>0)break;c[B>>2]=((c[c[C>>2]>>2]|0)-(c[D>>
2]|0)|0)/48|0;c[A>>2]=((c[(c[C>>2]|0)+4>>2]|0)-(c[D>>2]|0)|0)/48|0;if(!(a[(c[(c[q>
x3e;2]|0)+8>>2]|0)+(c[z>>2]|0)>>0]&1))c[(c[C>>2]|0)+12>>2]=1;c[t>>
;2]=(c[(c[E>>2]|0)+(c[z>>2]<<3)>>2]|0)-(c[(c[E>>2]|0)+(c[B>>2]<
x3c;3)>>2]|0);c[v>>2]=(c[(c[E>>2]|0)+(c[z>>2]<<3)+4>>2]|0)-(c[(c[E
x3e;>2]|0)+(c[B>>2]<<3)+4>>2]|0);g=(En(c[t>>2]|0,c[v>>2]|0)|0)&255;a
[(c[C>>2]|0)+20>>0]=g;c[u>>2]=(c[(c[E>>2]|0)+(c[A>>2]<<3)>>
;2]|0)-(c[(c[E>>2]|0)+(c[z>>2]<<3)>>2]|0);c[w>>2]=(c[(c[E>>2]|0)+(c[
A>>2]<<3)+4>>2]|0)-(c[(c[E>>2]|0)+(c[z>>2]<<3)+4>>2]|0);g=(
En(c[u>>2]|0,c[w>>2]|0)|0)&255;a[(c[C>>2]|0)+21>>0]=g;g=c[C>>2]|0;do if(!(
c[(c[C>>2]|0)+12>>2]&1|0)){if((a[g+20>>0]|0)==(a[(c[C>>2]|0)+21>>0]|0)){if
((a[(c[C>>2]|0)+21>>0]|0)==4?($b(c[t>>2]|0,c[v>>2]|0,c[u>>2]|0,c[w>>
2]|0)|0)==0:0)break;o=(c[C>>2]|0)+12|0;c[o>>2]=c[o>>2]|2}}else{o=g+12|0;c[o>>2]=c[o>
;>2]|2}while(0);c[z>>2]=(c[z>>2]|0)+1;c[C>>2]=(c[C>>2]|0)+48}c[(c[p>>2]|0
)+20>>2]=c[q>>2];c[(c[p>>2]|0)+24>>2]=c[s>>2];Fn(c[p>>2]|0,0);Gn(c[p
>>2]|0);c[x>>2]=Hn((c[p>>2]|0)+28|0,(c[r>>2]|0)+16|0,(c[r>>2]|0)+16+12|0,(c[r
x3e;>2]|0)+16+24|0,c[y>>2]|0)|0;if(c[x>>2]|0){E=c[x>>2]|0;i=F;return E|0}c[x>>2]=Hn
((c[p>>2]|0)+28+40|0,(c[r>>2]|0)+16+36|0,(c[r>>2]|0)+16+36+12|0,(c[r>>2]|0)+16+36+24|0,c
[y>>2]|0)|0;E=c[x>>2]|0;i=F;return E|0}function En(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0
;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[d>>2]=a;c[e>>2]=b;c[h>>2]=4;b=c[d>>2]|0;c[f>
;>2]=(c[d>>2]|0)>=0?b:0-b|0;b=c[e>>2]|0;c[g>>2]=(c[e>>2]|0)>=0?b:0-b|0;if
(((c[g>>2]|0)*12|0)<(c[f>>2]|0)){c[h>>2]=(c[d>>2]|0)>=0?2:-2;h=c[h>>
2]|0;i=j;return h|0}if(((c[f>>2]|0)*12|0)>=(c[g>>2]|0)){h=c[h>>2]|0;i=j;return h|0}c[h>
x3e;2]=(c[e>>2]|0)>=0?-1:1;h=c[h>>2]|0;i=j;return h|0}function Fn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,
h=0,j=0;h=i;i=i+32|0;j=h+16|0;d=h+12|0;g=h+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[g>>2]=c[(c[(c[j
x3e;>2]|0)+20>>2]|0)+4>>2];c[f>>2]=c[(c[j>>2]|0)+8>>2];c[e>>2]=
c[c[j>>2]>>2];while(1){if((c[e>>2]|0)>>>0<=0)break;c[(c[f>>2]|0)+16
x3e;>2]=0;c[(c[f>>2]|0)+32>>2]=0;b=c[g>>2]|0;if(!(c[d>>2]|0)){c[(c[f>>2]|
0)+36>>2]=c[b>>2];c[(c[f>>2]|0)+40>>2]=c[(c[g>>2]|0)+4>>2]}else{c[(c
[f>>2]|0)+36>>2]=c[b+4>>2];c[(c[f>>2]|0)+40>>2]=c[c[g>>2]>>
;2]}c[e>>2]=(c[e>>2]|0)+-1;c[f>>2]=(c[f>>2]|0)+48;c[g>>2]=(c[g>>2]|0
)+8}i=h;return}function Gn(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;r=i;i=i+64|0;b=r+52|0;l=r+48
|0;h=r+44|0;q=r+40|0;f=r+36|0;e=r+32|0;d=r+28|0;j=r+24|0;k=r+20|0;o=r+16|0;p=r+12|0;n=r+8|0;m=r+4|0;g=r;c[b>>2]=a;c[l
x3e;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[(c[b>>2]|0)+4>>2]|0)>>
;>0)break;c[g>>2]=0;a:do if((c[(c[(c[b>>2]|0)+12>>2]|0)+(c[l>>2]<<3)+4>
;>2]|0)>>>0>=4){c[h>>2]=c[(c[(c[b>>2]|0)+12>>2]|0)+(c[l>>2]<
;<3)>>2];a=c[h>>2]|0;c[f>>2]=a;c[q>>2]=a;do{c[f>>2]=c[(c[f>>2]|
0)+4>>2];if((c[f>>2]|0)==(c[h>>2]|0))break a;c[j>>2]=(c[(c[f>>2]|0)+36>
x3e;2]|0)-(c[(c[q>>2]|0)+36>>2]|0);c[k>>2]=(c[(c[f>>2]|0)+40>>2]|0)-(c[(c[q>
;>2]|0)+40>>2]|0)}while((c[j>>2]|0)==0?(c[k>>2]|0)==0:0);c[e>>2]=c[q>>2];
while(1){c[q>>2]=c[e>>2];c[e>>2]=c[c[e>>2]>>2];if((c[e>>2]|0)==(c[h
x3e;>2]|0))break a;c[o>>2]=(c[(c[q>>2]|0)+36>>2]|0)-(c[(c[e>>2]|0)+36>>2]|
0);c[p>>2]=(c[(c[q>>2]|0)+40>>2]|0)-(c[(c[e>>2]|0)+40>>2]|0);if((c[o>>
;2]|0)==0?(c[p>>2]|0)==0:0)continue;c[n>>2]=_b(c[j>>2]|0,c[k>>2]|0,c[o>>2]|0,c
[p>>2]|0)|0;if(c[n>>2]|0)break}c[h>>2]=c[q>>2];c[j>>2]=c[o>>2];c[k
x3e;>2]=c[p>>2];do{c[d>>2]=c[f>>2];while(1){c[f>>2]=c[d>>2];c[d>>
;2]=c[(c[d>>2]|0)+4>>2];if((c[d>>2]|0)==(c[h>>2]|0))c[g>>2]=1;c[o>>2
]=(c[(c[d>>2]|0)+36>>2]|0)-(c[(c[f>>2]|0)+36>>2]|0);c[p>>2]=(c[(c[d>>
;2]|0)+40>>2]|0)-(c[(c[f>>2]|0)+40>>2]|0);if((c[o>>2]|0)==0?(c[p>>2]|0)==0:0)continue
;c[m>>2]=_b(c[j>>2]|0,c[k>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;if(c[m>>2]|0)
break}if((c[m>>2]^c[n>>2]|0)<0){do{a=(c[q>>2]|0)+12|0;c[a>>2]=c[a>>2]|4;c
[q>>2]=c[(c[q>>2]|0)+4>>2]}while((c[q>>2]|0)!=(c[f>>2]|0));a=(c[q>>2
]|0)+12|0;c[a>>2]=c[a>>2]|4}c[q>>2]=c[f>>2];c[f>>2]=c[d>>2];c[n>
;>2]=c[m>>2];c[j>>2]=c[o>>2];c[k>>2]=c[p>>2]}while((c[g>>2]|0)!=
0^1)}while(0);c[l>>2]=(c[l>>2]|0)+1}i=r;return}function Hn(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;r=i;i=i+48|0;g=r+40|0;h=r+36|0;j=r+32|0;s=r+28|0;k=r+24|0;l=r+20|0;m=r+16|0;q=r+12|0
;p=r+8|0;o=r+4|0;n=r;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[s>>2]=e;c[k>>2]=f;c[s>
;>2]=c[s>>2];c[l>>2]=c[c[h>>2]>>2];a=hc(c[k>>2]|0,4,0,c[l>>2]
x3c;<1,0,m)|0;c[(c[g>>2]|0)+12>>2]=a;if(c[m>>2]|0){s=c[m>>2]|0;i=r;return s|0}s=hc(
c[k>>2]|0,28,0,c[l>>2]|0,0,m)|0;c[(c[g>>2]|0)+8>>2]=s;if(c[m>>2]|0){s=c[m>
;>2]|0;i=r;return s|0}s=hc(c[k>>2]|0,16,0,(c[l>>2]<<1)+1|0,0,m)|0;c[(c[g>>2]|0)+24
x3e;>2]=s;if(c[m>>2]|0){s=c[m>>2]|0;i=r;return s|0}c[c[g>>2]>>2]=c[l>>2];
c[(c[g>>2]|0)+16>>2]=(c[(c[g>>2]|0)+12>>2]|0)+(c[l>>2]<<2);c[(c[g>
;>2]|0)+4>>2]=0;c[(c[g>>2]|0)+20>>2]=0;c[(c[g>>2]|0)+28>>2]=0;c[q>
x3e;2]=c[(c[g>>2]|0)+8>>2];c[p>>2]=c[(c[h>>2]|0)+8>>2];while(1){if((c[l>
x3e;2]|0)>>>0<=0)break;c[c[q>>2]>>2]=c[c[p>>2]>>2];c[(c[q>>
;2]|0)+4>>2]=c[(c[p>>2]|0)+4>>2];c[(c[q>>2]|0)+16>>2]=c[(c[p>>2]|0)+
8>>2];c[l>>2]=(c[l>>2]|0)+-1;c[q>>2]=(c[q>>2]|0)+28;c[p>>2]=(c[p>
;>2]|0)+12}a:do if(c[j>>2]|0){c[o>>2]=c[(c[j>>2]|0)+8>>2];c[l>>2]=c[c[j
x3e;>2]>>2];c[(c[g>>2]|0)+32>>2]=c[j>>2];while(1){if((c[l>>2]|0)>>
;>0<=0)break a;In(c[g>>2]|0,c[o>>2]|0);c[l>>2]=(c[l>>2]|0)+-1;c[o>>2
]=(c[o>>2]|0)+16}}while(0);if((c[(c[g>>2]|0)+4>>2]|0)==(c[c[g>>2]>>2]|0)){s=c[
m>>2]|0;i=r;return s|0}c[l>>2]=c[c[g>>2]>>2];c[n>>2]=0;while(1){if((c[n>
x3e;2]|0)>>>0>=(c[l>>2]|0)>>>0)break;Jn(c[g>>2]|0,c[n>>2]|0);c[
n>>2]=(c[n>>2]|0)+1}s=c[m>>2]|0;i=r;return s|0}function In(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;l=i;i=i+32|0;e=l+24|0;m=l+20|0;j=l+16|0;k=l+12|0;f=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[m>>2]=b;c[j
x3e;>2]=0;c[k>>2]=0;c[f>>2]=c[(c[m>>2]|0)+8>>2];c[h>>2]=c[c[m>>
2]>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>
;>0)break;if(!(c[j>>2]|0)){m=c[f>>2]|0;c[f>>2]=m+1;c[k>>2]=d[m>>0];c[j>
;>2]=128}if(c[k>>2]&c[j>>2]|0)Jn(c[e>>2]|0,c[g>>2]|0);c[j>>2]=c[j>
;>2]>>1;c[g>>2]=(c[g>>2]|0)+1}i=l;return}function Jn(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;k=i;i=i+32|0;d=k+20|0;l=k+16|0;f=k+12|0;h=k+8|0;e=k+4|0;g=k;c[d>>2]=a;c[l>>2]=b;c[f>>
2]=(c[(c[d>>2]|0)+8>>2]|0)+((c[l>>2]|0)*28|0);if((c[l>>2]|0)>>>0>=(c
[c[d>>2]>>2]|0)>>>0){i=k;return}if(c[(c[f>>2]|0)+16>>2]&4|0){i=k;return
}l=(c[f>>2]|0)+16|0;c[l>>2]=c[l>>2]|4;c[h>>2]=c[(c[d>>2]|0)+16>>2];c
[e>>2]=c[(c[d>>2]|0)+4>>2];c[(c[f>>2]|0)+20>>2]=0;while(1){if((c[e>>
2]|0)>>>0<=0)break;c[g>>2]=c[c[h>>2]>>2];if(Kn(c[f>>2]|0,c[g>
x3e;2]|0)|0){j=6;break}c[e>>2]=(c[e>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+4}if((j|0)==6)c[(c[f
x3e;>2]|0)+20>>2]=c[g>>2];if((c[(c[d>>2]|0)+4>>2]|0)>>>0>=(c[c[
d>>2]>>2]|0)>>>0){i=k;return}j=c[f>>2]|0;a=(c[d>>2]|0)+4|0;l=c[a>>
;2]|0;c[a>>2]=l+1;c[(c[(c[d>>2]|0)+16>>2]|0)+(l<<2)>>2]=j;i=k;return}function
Kn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(((c[c[d>>2]>
;>2]|0)+(c[(c[d>>2]|0)+4>>2]|0)|0)<(c[c[e>>2]>>2]|0)){b=0;b=b&1;i=f;return
b|0}b=((c[c[e>>2]>>2]|0)+(c[(c[e>>2]|0)+4>>2]|0)|0)>=(c[c[d>>2]>>
;2]|0);b=b&1;i=f;return b|0}function Ln(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;o=i;i=i+48|0;d=o+32|0;
k=o+28|0;j=o+24|0;l=o+20|0;g=o+16|0;e=o+12|0;m=o+8|0;h=o+4|0;f=o;c[d>>2]=a;c[k>>2]=0;a:while(1){if((c[k>
;>2]|0)>>>0>=(c[(c[d>>2]|0)+4>>2]|0)>>>0){n=17;break}c[j>>
2]=c[(c[(c[d>>2]|0)+12>>2]|0)+(c[k>>2]<<3)>>2];b:do if(c[(c[(c[d>>2]|
0)+12>>2]|0)+(c[k>>2]<<3)+4>>2]|0){c[l>>2]=c[j>>2];c[g>>2]=
c[l>>2];c[e>>2]=c[l>>2];do{c[g>>2]=c[c[g>>2]>>2];if((c[g>>
2]|0)==(c[j>>2]|0)){n=30;break a}}while((c[(c[g>>2]|0)+36>>2]|0)==(c[(c[l>>2]|0)+36>
;>2]|0));b=c[(c[g>>2]|0)+4>>2]|0;c[l>>2]=b;c[j>>2]=b;while(1){c[e>>2]=c[l
>>2];do{c[e>>2]=c[(c[e>>2]|0)+4>>2];if((c[e>>2]|0)==(c[j>>2]|0))break
b}while((c[(c[e>>2]|0)+36>>2]|0)==(c[(c[l>>2]|0)+36>>2]|0));a=c[(c[e>>2]|0)+36
>>2]|0;b=c[(c[l>>2]|0)+36>>2]|0;if((c[(c[g>>2]|0)+36>>2]|0)<(c[(c[l>
x3e;2]|0)+36>>2]|0)){if((a|0)<(b|0))n=14}else if((a|0)>(b|0))n=14;if((n|0)==14)while(1){n=0;b=(c[l>>
;2]|0)+16|0;c[b>>2]=c[b>>2]|64;c[l>>2]=c[(c[l>>2]|0)+4>>2];if((c[l>>
2]|0)!=(c[e>>2]|0))n=14;else break}c[g>>2]=c[c[e>>2]>>2];c[l>>2]=c[e>>
;2]}}while(0);c[k>>2]=(c[k>>2]|0)+1}if((n|0)==17)c[k>>2]=0;c:while(1){if((n|0)==30)c[k>>
2]=(c[k>>2]|0)+1;if((c[k>>2]|0)>>>0>=(c[c[d>>2]>>2]|0)>>
x3e;0)break;c[m>>2]=(c[(c[d>>2]|0)+8>>2]|0)+((c[k>>2]|0)*48|0);c[h>>2]=c[m>
;>2];c[f>>2]=c[m>>2];if(c[(c[m>>2]|0)+16>>2]&64|0){while(1){c[h>>2]=
c[c[h>>2]>>2];if((c[h>>2]|0)==(c[m>>2]|0)){n=30;continue c}if((c[(c[h>>2]|0)+40
>>2]|0)!=(c[(c[m>>2]|0)+40>>2]|0))break}while(1){c[f>>2]=c[(c[f>>2]|0)+4>
x3e;2];if((c[f>>2]|0)==(c[m>>2]|0)){n=30;continue c}if((c[(c[f>>2]|0)+40>>2]|0)!=(c[(c[m
>>2]|0)+40>>2]|0))break}}if((c[(c[h>>2]|0)+40>>2]|0)<(c[(c[m>>2]|0)+40>
;>2]|0)?(c[(c[f>>2]|0)+40>>2]|0)>(c[(c[m>>2]|0)+40>>2]|0):0){n=(c[m>>
;2]|0)+16|0;c[n>>2]=c[n>>2]|128;n=30;continue}if((c[(c[h>>2]|0)+40>>2]|0)<=(c[(c[m
x3e;>2]|0)+40>>2]|0)){n=30;continue}if((c[(c[f>>2]|0)+40>>2]|0)>=(c[(c[m>>2]|0
)+40>>2]|0)){n=30;continue}n=(c[m>>2]|0)+16|0;c[n>>2]=c[n>>2]|256;n=30}i=o;return}function
Mn(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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0;j=l
;c[m>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=c[(c[m>>2]|0)+8>
;>2];c[j>>2]=c[c[m>>2]>>2];while(1){if((c[j>>2]|0)>>>0<=0)break
;Nn(c[k>>2]|0,c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);c[j>>2]=(c[j>>2]|0)+-1;
c[k>>2]=(c[k>>2]|0)+28}i=l;return}function Nn(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;E=i;i=i+96|0;B=E+88|0;k=E+84|0;l=E+80|0;m=E+76|0;p=E+72|0;u=E
+68|0;h=E+64|0;D=E+60|0;C=E+56|0;w=E+52|0;q=E+48|0;v=E+36|0;t=E+32|0;s=E+28|0;r=E+24|0;o=E+20|0;n=E+16|0;y=E+12|0;A=E+8|0;x=E+4|
0;z=E;c[B>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[p>>2]=(c[k>>2]|0)+4+((
c[l>>2]|0)*204|0);c[u>>2]=c[(c[p>>2]|0)+196>>2];c[h>>2]=c[(c[p>>2]|0
)+200>>2];if(c[(c[B>>2]|0)+16>>2]&8|0){i=E;return}b=Mb(c[c[B>>2]>>2]|0,c[
u>>2]|0)|0;c[D>>2]=b+(c[h>>2]|0);c[C>>2]=Mb(c[(c[B>>2]|0)+4>>2]|0,c[
u>>2]|0)|0;if(!((c[l>>2]|0)==0?!(a[(c[m>>2]|0)+120>>0]|0):0))j=4;do if((j|0)==4){if((c[l
>>2]|0)==1?(a[(c[m>>2]|0)+121>>0]|0)==0:0)break;if((c[l>>2]|0)==0?d[(c[m>>2]|0
)+122>>0]|0:0)h=1;else if((c[l>>2]|0)==1)h=(d[(c[m>>2]|0)+123>>0]|0)!=0;else h=0;c[w>
;>2]=h&1;j=c[C>>2]|0;c[q>>2]=j;c[(c[B>>2]|0)+12>>2]=j;c[v>>2]=0;c[v+
4>>2]=0;c[v+8>>2]=0;if((c[l>>2]|0)==1)On((c[k>>2]|0)+412|0,(c[c[B>>2]>>
;2]|0)+(c[(c[B>>2]|0)+4>>2]|0)|0,c[c[B>>2]>>2]|0,v);switch(c[v>>2]|0){case 1:{
c[(c[B>>2]|0)+8>>2]=(c[v+4>>2]|0)-(c[q>>2]|0);break}case 2:{c[(c[B>>2]|0)+8>
;>2]=c[v+8>>2];break}case 3:{c[(c[B>>2]|0)+8>>2]=c[v+8>>2];c[(c[B>>2]|0)+
12>>2]=(c[v+4>>2]|0)-(c[v+8>>2]|0);break}default:{c[t>>2]=c[(c[B>>2]|0)+20>
;>2];if(c[t>>2]|0){if(!(c[(c[t>>2]|0)+16>>2]&8))Nn(c[t>>2]|0,c[k>>2]|
0,c[l>>2]|0,c[m>>2]|0);c[s>>2]=(c[c[t>>2]>>2]|0)+(c[(c[t>>2]|0)+4>
;>2]>>1);c[r>>2]=(c[(c[t>>2]|0)+8>>2]|0)+(c[(c[t>>2]|0)+12>>2]
x3e;>1);c[o>>2]=(c[c[B>>2]>>2]|0)+(c[(c[B>>2]|0)+4>>2]>>1);c[n
x3e;>2]=Mb((c[o>>2]|0)-(c[s>>2]|0)|0,c[u>>2]|0)|0;c[D>>2]=(c[r>>2]|0)+(c[
n>>2]|0)-(c[C>>2]>>1)}c[(c[B>>2]|0)+8>>2]=c[D>>2];c[(c[B>>
2]|0)+12>>2]=c[q>>2];do if(a[(c[m>>2]|0)+124>>0]|0){if((c[C>>2]|0)>64){c[
C>>2]=Pn(c[p>>2]|0,c[C>>2]|0,0)|0;break}if((c[C>>2]|0)>=32){c[D>>2]=(c[D
x3e;>2]|0)+(c[C>>2]>>1)&-64;c[C>>2]=64;break}h=(c[D>>2]|0)+32&-64;if((c[C
>>2]|0)<=0){c[D>>2]=h;break}c[y>>2]=h;c[A>>2]=(c[D>>2]|0)+(c[C>>
;2]|0)+32&-64;c[x>>2]=(c[y>>2]|0)-(c[D>>2]|0);c[z>>2]=(c[A>>2]|0)-((c[D
x3e;>2]|0)+(c[C>>2]|0));if((c[x>>2]|0)<0)c[x>>2]=0-(c[x>>2]|0);if((c[z>
x3e;2]|0)<0)c[z>>2]=0-(c[z>>2]|0);if((c[x>>2]|0)<=(c[z>>2]|0)){c[D>>
2]=c[y>>2];break}else{c[D>>2]=c[A>>2];break}}while(0);A=(c[D>>2]|0)+(Qn(c[D>>2
]|0,c[C>>2]|0)|0)|0;c[(c[B>>2]|0)+8>>2]=A;c[(c[B>>2]|0)+12>>2]=c[C>>
2]}}a:do if(c[w>>2]|0){c[D>>2]=c[(c[B>>2]|0)+8>>2];c[C>>2]=c[(c[B>>2
]|0)+12>>2];if((c[C>>2]|0)<64)c[C>>2]=64;else c[C>>2]=(c[C>>2]|0)+32&
;-64;switch(c[v>>2]|0){case 3:break a;case 1:{c[(c[B>>2]|0)+8>>2]=(c[v+4>>2]|0)-(c[C>
;>2]|0);c[(c[B>>2]|0)+12>>2]=c[C>>2];break a}case 2:{c[(c[B>>2]|0)+12>>2]=
c[C>>2];break a}default:{c[(c[B>>2]|0)+12>>2]=c[C>>2];h=(c[D>>2]|0)+(c[C>
x3e;2]>>1)|0;if(c[C>>2]&64|0)c[D>>2]=(h&-64)+32;else c[D>>2]=h+32&-64;c[(
c[B>>2]|0)+8>>2]=(c[D>>2]|0)-(c[C>>2]>>1);c[(c[B>>2]|0)+12>>
;2]=c[C>>2];break a}}}while(0);D=(c[B>>2]|0)+16|0;c[D>>2]=c[D>>2]|8;i=E;return}while(0);
c[(c[B>>2]|0)+8>>2]=c[D>>2];c[(c[B>>2]|0)+12>>2]=c[C>>2];D=(c[B>
;>2]|0)+16|0;c[D>>2]=c[D>>2]|8;i=E;return}function On(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;r=i;i=i+48|0;g=r+32|0;h=r+28|0;j=r+24|0;k=r+20|0;o=r+16|0;l=r+12|0;m=r+8|0;p=r+4|0;n=r;c[g>
x3e;2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[c[k>>2]>>2]=0;c[n>>2]=d[(c[
g>>2]|0)+2080>>0];c[o>>2]=c[g>>2];c[l>>2]=c[c[o>>2]>>2];c[
p>>2]=(c[o>>2]|0)+4;while(1){if((c[l>>2]|0)>>>0<=0)break;c[m>>2]=(c[
h>>2]|0)-(c[(c[p>>2]|0)+12>>2]|0);if((c[m>>2]|0)<(0-(c[(c[g>>2]|0)+2076
x3e;>2]|0)|0))break;if((c[h>>2]|0)<=((c[(c[p>>2]|0)+8>>2]|0)+(c[(c[g>>2]|0)+2076
>>2]|0)|0)){q=5;break}c[l>>2]=(c[l>>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+32}do if((q|0
)==5){if((c[n>>2]|0)==0?(c[m>>2]|0)>(c[(c[g>>2]|0)+2072>>2]|0):0)break;q=c[k>
x3e;2]|0;c[q>>2]=c[q>>2]|1;c[(c[k>>2]|0)+4>>2]=c[(c[p>>2]|0)+16>>2]}
while(0);c[o>>2]=(c[g>>2]|0)+516;c[l>>2]=c[c[o>>2]>>2];c[p>>2]=(c[o
x3e;>2]|0)+4+(c[l>>2]<<5)+-32;while(1){if((c[l>>2]|0)>>>0<=0){q=17;break}
c[m>>2]=(c[(c[p>>2]|0)+8>>2]|0)-(c[j>>2]|0);if((c[m>>2]|0)<(0-(c[(c[g>
;>2]|0)+2076>>2]|0)|0)){q=17;break}if((c[j>>2]|0)>=((c[(c[p>>2]|0)+12>>2]|0)-(
c[(c[g>>2]|0)+2076>>2]|0)|0)){q=13;break}c[l>>2]=(c[l>>2]|0)+-1;c[p>>2]=(c[p
x3e;>2]|0)+-32}if((q|0)==13){if((c[n>>2]|0)==0?(c[m>>2]|0)>=(c[(c[g>>2]|0)+2072>>
;2]|0):0){i=r;return}q=c[k>>2]|0;c[q>>2]=c[q>>2]|2;c[(c[k>>2]|0)+8>>2]=c[(c[p
x3e;>2]|0)+16>>2];i=r;return}else if((q|0)==17){i=r;return}}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;k=i;i=i+16|0;f=k+8|0;g=k+4|0;h=k+12|0;j=k;c[f>>2]=b;c[g>>2]=d;a[h>>0]=e;do if((c[g>
x3e;2]|0)>64){c[j>>2]=(c[g>>2]|0)-(c[(c[f>>2]|0)+4+4>>2]|0);if((c[j>>2]|0
)<0)c[j>>2]=0-(c[j>>2]|0);if((c[j>>2]|0)<40){d=c[(c[f>>2]|0)+4+4>>2]|
0;c[g>>2]=d;c[g>>2]=(c[g>>2]|0)<48?48:d}f=c[g>>2]|0;if((c[g>>2]|0)>=
192){c[g>>2]=f+32&-64;break}c[j>>2]=f&63;c[g>>2]=c[g>>2]&-64;f=c[j>
x3e;2]|0;if((c[j>>2]|0)<10){c[g>>2]=(c[g>>2]|0)+f;break}if((f|0)<32){c[g>>2]=(
c[g>>2]|0)+10;break}if((c[j>>2]|0)<54){c[g>>2]=(c[g>>2]|0)+54;break}else{c[g>
x3e;2]=(c[g>>2]|0)+(c[j>>2]|0);break}}else c[g>>2]=64;while(0);if(!(a[h>>0]|0)){j=c[g>
;>2]|0;i=k;return j|0}c[g>>2]=(c[g>>2]|0)+32&-64;j=c[g>>2]|0;i=k;return j|0}function Qn(
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;d=g+16|0;j=g+12|0;h=g+8|0;e=g+4|0;f=g;c[j>>2]=a;c[h>>
;2]=b;c[e>>2]=((c[j>>2]|0)+32&-64)-(c[j>>2]|0);c[f>>2]=((c[j>>2]|0)+(c[h
x3e;>2]|0)+32&-64)-(c[j>>2]|0)-(c[h>>2]|0);b=c[e>>2]|0;a=c[f>>2]|0;if((((c[e
x3e;>2]|0)<0?0-b|0:b)|0)<=(((c[f>>2]|0)<0?0-a|0:a)|0)){c[d>>2]=c[e>>2];j=c[d
x3e;>2]|0;i=g;return j|0}else{c[d>>2]=c[f>>2];j=c[d>>2]|0;i=g;return j|0}return 0}function Rn
(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;s=i;i=i+80|0;d=s+64|0;v=s+60|0;q=s
+56|0;k=s+52|0;m=s+48|0;h=s+44|0;j=s+40|0;u=s+36|0;t=s+32|0;r=s+28|0;l=s+24|0;e=s+20|0;n=s+16|0;f=s+12|0;o=s+8|0;g=s+4|0;p=s;c[d
>>2]=a;c[v>>2]=b;c[q>>2]=(c[d>>2]|0)+28+((c[v>>2]|0)*40|0);c[k>>2]=c
[(c[(c[q>>2]|0)+32>>2]|0)+8>>2];c[m>>2]=c[c[(c[q>>2]|0)+32>>2]>
x3e;2];c[h>>2]=0;c[j>>2]=(c[v>>2]|0)==0?1:2;c[u>>2]=(c[(c[d>>2]|0)+24>>
;2]|0)+4+((c[v>>2]|0)*204|0);c[t>>2]=c[(c[u>>2]|0)+196>>2];a=Vb(32,c[t>>2]|0)|
0;c[r>>2]=a;c[r>>2]=(c[r>>2]|0)>30?30:a;a:do if((c[m>>2]|0)>>>0>
;1?(c[c[d>>2]>>2]|0)>>>0>0:0){if((c[(c[k>>2]|0)+12>>2]|0)>>
;>0>(c[c[d>>2]>>2]|0)>>>0)b=c[c[d>>2]>>2]|0;else b=c[(c[k>
x3e;2]|0)+12>>2]|0;c[h>>2]=b;c[k>>2]=(c[k>>2]|0)+16;while(1){if((c[m>>2]|0)>
;>>0<=1)break a;if((c[(c[k>>2]|0)+12>>2]|0)>>>0>(c[c[d>>2]>
;>2]|0)>>>0)b=c[c[d>>2]>>2]|0;else b=c[(c[k>>2]|0)+12>>2]|0;c[l>
;>2]=b;c[e>>2]=(c[l>>2]|0)-(c[h>>2]|0);if((c[e>>2]|0)>0){c[n>>2]=(c[(
c[d>>2]|0)+8>>2]|0)+((c[h>>2]|0)*48|0);Sn(c[q>>2]|0,c[k>>2]|0);Un(c[q>>
;2]|0,c[n>>2]|0,c[e>>2]|0,c[r>>2]|0,c[j>>2]|0)}c[h>>2]=c[l>>2];c[m
x3e;>2]=(c[m>>2]|0)+-1;c[k>>2]=(c[k>>2]|0)+16}}while(0);if((c[m>>2]|0)==1){c[f>
;>2]=c[c[d>>2]>>2];c[o>>2]=c[(c[d>>2]|0)+8>>2];Sn(c[q>>2]|0,c[(
c[(c[q>>2]|0)+32>>2]|0)+8>>2]|0);Un(c[q>>2]|0,c[o>>2]|0,c[f>>2]|0,c[
r>>2]|0,c[j>>2]|0)}c[g>>2]=c[c[d>>2]>>2];c[p>>2]=c[(c[d>>2
]|0)+8>>2];while(1){if((c[g>>2]|0)>>>0<=0)break;if(c[(c[p>>2]|0)+32>>
;2]|0?(c[(c[p>>2]|0)+16>>2]&16|0)==0:0){v=(c[p>>2]|0)+16|0;c[v>>2]=c[v>>2
]|16}c[g>>2]=(c[g>>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+48}i=s;return}function Sn(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;t=i;i=i+64|0;e=t+56|0;u=t+52|0;q=t+48|0;s=t+44|0;h=t+40|0
;o=t+36|0;p=t+32|0;f=t+28|0;j=t+24|0;g=t+20|0;m=t+16|0;n=t+12|0;k=t+8|0;l=t+4|0;r=t;c[e>>2]=a;c[u>>2]=b;c[q
x3e;>2]=0;c[s>>2]=0;c[h>>2]=c[(c[u>>2]|0)+8>>2];c[p>>2]=c[c[u>>
2]>>2];c[f>>2]=0;Tn(c[e>>2]|0);c[o>>2]=0;while(1){if((c[o>>2]|0)>>
x3e;0>=(c[p>>2]|0)>>>0)break;if(!(c[q>>2]|0)){u=c[h>>2]|0;c[h>>2]=u+
1;c[s>>2]=d[u>>0];c[q>>2]=128}if(((c[s>>2]&c[q>>2]|0?(c[j>>2]=(
c[(c[e>>2]|0)+8>>2]|0)+((c[o>>2]|0)*28|0),(c[(c[j>>2]|0)+16>>2]&4|0)==0):
0)?(c[g>>2]=0,(c[g>>2]|0)==0):0)?(u=(c[j>>2]|0)+16|0,c[u>>2]=c[u>>2]|4,(c[f>
;>2]|0)>>>0<(c[c[e>>2]>>2]|0)>>>0):0){a=c[j>>2]|0;u=c[f>
;>2]|0;c[f>>2]=u+1;c[(c[(c[e>>2]|0)+12>>2]|0)+(u<<2)>>2]=a}c[q>>
;2]=c[q>>2]>>1;c[o>>2]=(c[o>>2]|0)+1}c[(c[e>>2]|0)+4>>2]=c[f>
x3e;2];c[r>>2]=c[(c[e>>2]|0)+12>>2];c[m>>2]=1;while(1){if((c[m>>2]|0)>=(c
[f>>2]|0))break;c[k>>2]=c[(c[r>>2]|0)+(c[m>>2]<<2)>>2];c[n>>
;2]=(c[m>>2]|0)-1;while(1){if((c[n>>2]|0)<0)break;c[l>>2]=c[(c[r>>2]|0)+(c[n>
x3e;2]<<2)>>2];if((c[c[l>>2]>>2]|0)<(c[c[k>>2]>>2]|0))break;c[(
c[r>>2]|0)+((c[n>>2]|0)+1<<2)>>2]=c[l>>2];c[(c[r>>2]|0)+(c[n>
x3e;2]<<2)>>2]=c[k>>2];c[n>>2]=(c[n>>2]|0)+-1}c[m>>2]=(c[m>>
;2]|0)+1}i=t;return}function Tn(a){a=a|0;var b=0,d=0,e=0,f=0;e=i;i=i+16|0;f=e+8|0;b=e+4|0;d=e;c[f>>2]=a;c[b>>
;2]=c[c[f>>2]>>2];c[d>>2]=c[(c[f>>2]|0)+8>>2];while(1){if((c[b>>2]|0
)>>>0<=0)break;f=(c[d>>2]|0)+16|0;c[f>>2]=c[f>>2]&-5;c[(c[d>>2]|
0)+24>>2]=-1;c[b>>2]=(c[b>>2]|0)+-1;c[d>>2]=(c[d>>2]|0)+28}i=e;return}function
Un(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,x=0,y=0,z=0,A=0,B=0
,C=0,D=0,E=0,F=0,G=0;F=i;i=i+96|0;G=F+88|0;h=F+84|0;j=F+80|0;k=F+76|0;l=F+72|0;D=F+68|0;A=F+64|0;C=F+60|0;B=F+56|0;x=F+52|0;q=F+
48|0;m=F+44|0;y=F+40|0;r=F+36|0;n=F+32|0;z=F+28|0;w=F+24|0;v=F+20|0;s=F+16|0;o=F+12|0;t=F+8|0;p=F+4|0;u=F;c[G>>2]=b;c[
h>>2]=d;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[D>>2]=c[(c[G>>2]|0)+12>
x3e;2];c[A>>2]=c[(c[G>>2]|0)+4>>2];while(1){if((c[j>>2]|0)>>>0<=0)break
;c[C>>2]=0;c[B>>2]=c[(c[h>>2]|0)+36>>2];a:do if(!(c[(c[h>>2]|0)+16>>
2]&16)){do if((a[(c[h>>2]|0)+20>>0]|0)!=(c[l>>2]|0)?(a[(c[h>>2]|0)+20>>0]|
0)!=(0-(c[l>>2]|0)|0):0){if((a[(c[h>>2]|0)+21>>0]|0)!=(c[l>>2]|0)?(a[(c[h>>2]|
0)+21>>0]|0)!=(0-(c[l>>2]|0)|0):0)break;c[C>>2]=a[(c[h>>2]|0)+21>>0]}else E=6;
while(0);if((E|0)==6){E=0;c[C>>2]=a[(c[h>>2]|0)+20>>0]}if(c[C>>2]|0){if((c[C>>
2]|0)==(c[l>>2]|0)){c[x>>2]=0;while(1){if((c[x>>2]|0)>>>0>=(c[A>>2]|
0)>>>0)break a;c[q>>2]=c[(c[D>>2]|0)+(c[x>>2]<<2)>>2];c[m>
x3e;2]=(c[B>>2]|0)-(c[c[q>>2]>>2]|0);if((c[m>>2]|0)<(c[k>>2]|0)?(0-(c[m
x3e;>2]|0)|0)<(c[k>>2]|0):0)break;c[x>>2]=(c[x>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G
>>2]=c[G>>2]|16;G=(c[h>>2]|0)+16|0;c[G>>2]=c[G>>2]|512;c[(c[h>>2]|0)+
32>>2]=c[q>>2];break}if((c[C>>2]|0)!=(0-(c[l>>2]|0)|0))break;c[y>>2]=0;while(1
){if((c[y>>2]|0)>>>0>=(c[A>>2]|0)>>>0)break a;c[r>>2]=c[(c[D>
;>2]|0)+(c[y>>2]<<2)>>2];c[n>>2]=(c[B>>2]|0)-(c[c[r>>2]>
x3e;2]|0)-(c[(c[r>>2]|0)+4>>2]|0);if((c[n>>2]|0)<(c[k>>2]|0)?(0-(c[n>>2]|
0)|0)<(c[k>>2]|0):0)break;c[y>>2]=(c[y>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>2
]=c[G>>2]|16;G=(c[h>>2]|0)+16|0;c[G>>2]=c[G>>2]|1024;c[(c[h>>2]|0)+32>>
;2]=c[r>>2];break}if(c[(c[h>>2]|0)+16>>2]&64|0){if((c[l>>2]|0)==2){c[w>>2
]=128;c[v>>2]=256}else{c[w>>2]=256;c[v>>2]=128}b:do if(!(c[(c[h>>2]|0)+16>>2]
x26;c[w>>2]|0)){if(c[(c[h>>2]|0)+16>>2]&c[v>>2]|0){c[z>>2]=0;while(1){if((
c[z>>2]|0)>>>0>=(c[A>>2]|0)>>>0)break b;c[t>>2]=c[(c[D>>
;2]|0)+(c[z>>2]<<2)>>2];c[p>>2]=(c[B>>2]|0)-(c[c[t>>2]>>2]|
0)-(c[(c[t>>2]|0)+4>>2]|0);if((c[p>>2]|0)<(c[k>>2]|0)?(0-(c[p>>2]|0)|0)
x3c;(c[k>>2]|0):0)break;c[z>>2]=(c[z>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>2]=c[G
x3e;>2]|1024;c[(c[h>>2]|0)+32>>2]=c[t>>2];G=(c[h>>2]|0)+16|0;c[G>>2]=c[G
x3e;>2]|16}}else{c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[A>>2]|0)>
x3e;>0)break b;c[s>>2]=c[(c[D>>2]|0)+(c[z>>2]<<2)>>2];c[o>>2]=(
c[B>>2]|0)-(c[c[s>>2]>>2]|0);if((c[o>>2]|0)<(c[k>>2]|0)?(0-(c[o>>
;2]|0)|0)<(c[k>>2]|0):0)break;c[z>>2]=(c[z>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>
;2]=c[G>>2]|512;c[(c[h>>2]|0)+32>>2]=c[s>>2];G=(c[h>>2]|0)+16|0;c[G>>
;2]=c[G>>2]|16}while(0);if(!(c[(c[h>>2]|0)+32>>2]|0)){c[z>>2]=0;while(1){if((c[z>
x3e;2]|0)>>>0>=(c[A>>2]|0)>>>0)break a;c[u>>2]=c[(c[D>>2]|0)+(c
[z>>2]<<2)>>2];if((c[B>>2]|0)>=(c[c[u>>2]>>2]|0)?(c[B>>
;2]|0)<=((c[c[u>>2]>>2]|0)+(c[(c[u>>2]|0)+4>>2]|0)|0):0)break;c[z>>2]=(c[
z>>2]|0)+1}c[(c[h>>2]|0)+32>>2]=c[u>>2]}}}while(0);c[j>>2]=(c[j>>2]|
0)+-1;c[h>>2]=(c[h>>2]|0)+48}i=F;return}function Vn(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;q=i;i=i+48|0;f=q+36|0;r=q+32|0;m=q+28|0;o=q+24|0;k=q+20|0;g=q+16|0;l=q+12|0;n=q+8|0;h=q+4|0;j=q;c[f>>2]=b
;c[r>>2]=e;c[k>>2]=c[c[r>>2]>>2];c[l>>2]=c[(c[r>>2]|0)+8>>
2];while(1){if((c[k>>2]|0)>>>0<=0)break;if(!((((a[(c[l>>2]|0)+20>>0]|0)!=2?(a[(
c[l>>2]|0)+20>>0]|0)!=-2:0)?(a[(c[l>>2]|0)+21>>0]|0)!=2:0)?(a[(c[l>>2]|0)+21
x3e;>0]|0)!=-2:0))p=7;a:do if((p|0)==7?(p=0,(c[(c[l>>2]|0)+16>>2]&16|0)==0):0){c[n>>2]=c
[(c[l>>2]|0)+36>>2];c[m>>2]=c[f>>2];c[g>>2]=c[c[m>>2]>>2];
c[o>>2]=(c[m>>2]|0)+4;while(1){if((c[g>>2]|0)>>>0<=0)break;c[h>>2]=(
c[n>>2]|0)-(c[(c[o>>2]|0)+12>>2]|0);if((c[h>>2]|0)<(0-(c[(c[f>>2]|0)+2076
>>2]|0)|0))break;do if((c[n>>2]|0)<=((c[(c[o>>2]|0)+8>>2]|0)+(c[(c[f>>2]|
0)+2076>>2]|0)|0)){if((d[(c[f>>2]|0)+2080>>0]|0)==0?(c[h>>2]|0)>(c[(c[f>>
2]|0)+2072>>2]|0):0)break;c[(c[l>>2]|0)+44>>2]=c[(c[o>>2]|0)+24>>2];r=(c[l>
;>2]|0)+16|0;c[r>>2]=c[r>>2]|16;r=(c[l>>2]|0)+16|0;c[r>>2]=c[r>>2]|32}while
(0);c[g>>2]=(c[g>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+32}c[m>>2]=(c[f>>2]|0
)+516;c[g>>2]=c[c[m>>2]>>2];c[o>>2]=(c[m>>2]|0)+4+(c[g>>2]<<
;5)+-32;while(1){if((c[g>>2]|0)>>>0<=0)break a;c[j>>2]=(c[(c[o>>2]|0)+8>
x3e;2]|0)-(c[n>>2]|0);if((c[j>>2]|0)<(0-(c[(c[f>>2]|0)+2076>>2]|0)|0))break a;do if
((c[n>>2]|0)>=((c[(c[o>>2]|0)+12>>2]|0)-(c[(c[f>>2]|0)+2076>>2]|0)|0)){if
((d[(c[f>>2]|0)+2080>>0]|0)==0?(c[j>>2]|0)>=(c[(c[f>>2]|0)+2072>>2]|0):0)
break;c[(c[l>>2]|0)+44>>2]=c[(c[o>>2]|0)+28>>2];r=(c[l>>2]|0)+16|0;c[r>
x3e;2]=c[r>>2]|16;r=(c[l>>2]|0)+16|0;c[r>>2]=c[r>>2]|32}while(0);c[g>>2]=(c[g
x3e;>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+-32}}while(0);c[k>>2]=(c[k>>2]|0)+-1;c[l>>
;2]=(c[l>>2]|0)+48}i=q;return}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,l=0,m=0;j=i;i=i+32|0;k=j+28
|0;m=j+24|0;l=j+20|0;h=j+16|0;d=j+12|0;g=j+8|0;f=j+4|0;e=j;c[k>>2]=a;c[m>>2]=b;c[l>>2]=(c[(c[k>
;>2]|0)+24>>2]|0)+4+((c[m>>2]|0)*204|0);c[h>>2]=c[(c[l>>2]|0)+196>>2];c[d
>>2]=c[c[k>>2]>>2];c[g>>2]=c[(c[k>>2]|0)+8>>2];while(1){if((c[d>
;>2]|0)>>>0<=0)break;c[f>>2]=c[(c[g>>2]|0)+32>>2];if(c[f>>2]|0){
do if(!(c[(c[g>>2]|0)+16>>2]&512|0)){if(c[(c[g>>2]|0)+16>>2]&1024|0){c[(c[g>
;>2]|0)+44>>2]=(c[(c[f>>2]|0)+8>>2]|0)+(c[(c[f>>2]|0)+12>>2]|0);break}c[e
>>2]=(c[(c[g>>2]|0)+36>>2]|0)-(c[c[f>>2]>>2]|0);if((c[e>>2]|0)<=
0){m=c[(c[f>>2]|0)+8>>2]|0;m=m+(Mb(c[e>>2]|0,c[h>>2]|0)|0)|0;c[(c[g>>2]|0)+44
x3e;>2]=m;break}b=c[(c[f>>2]|0)+8>>2]|0;if((c[e>>2]|0)>=(c[(c[f>>2]|0)+4>
x3e;2]|0)){m=b+(c[(c[f>>2]|0)+12>>2]|0)|0;m=m+(Mb((c[e>>2]|0)-(c[(c[f>>2]|0)+4>>
;2]|0)|0,c[h>>2]|0)|0)|0;c[(c[g>>2]|0)+44>>2]=m;break}else{m=b+(xb(c[e>>2]|0,c[(c[f>
;>2]|0)+12>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0)|0;c[(c[g>>2]|0)+44>>2]=m;break
}}else c[(c[g>>2]|0)+44>>2]=c[(c[f>>2]|0)+8>>2];while(0);m=(c[g>>2]|0)+16|0;c[
m>>2]=c[m>>2]|32}c[d>>2]=(c[d>>2]|0)+-1;c[g>>2]=(c[g>>2]|0)+48}i=j;return
}function Xn(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;t=i;i=i+128|0;u=t+124|
0;w=t+120|0;v=t+116|0;p=t+112|0;k=t+108|0;q=t+104|0;r=t+40|0;m=t+36|0;g=t+32|0;o=t+28|0;n=t+24|0;e=t+20|0;f=t+16|0;j=t+12|0;h=t+
8|0;l=t+4|0;s=t;c[u>>2]=b;c[w>>2]=d;c[v>>2]=(c[(c[u>>2]|0)+24>>2]|0)+4+((c[w
x3e;>2]|0)*204|0);c[p>>2]=c[(c[v>>2]|0)+196>>2];c[k>>2]=c[(c[u>>2]|0)+16
x3e;>2];c[q>>2]=0;c[m>>2]=0;c[g>>2]=c[(c[u>>2]|0)+8>>2];c[o>>2]=(
c[g>>2]|0)+((c[c[u>>2]>>2]|0)*48|0);c[n>>2]=c[g>>2];while(1){if((c[n>>
;2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(c[(c[n>>2]|0)+16>>2]&
16|0)c[m>>2]=(c[m>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+48}if(!(c[m>>2]|0)){i=t;return}
if((c[m>>2]|0)>>>0>16){c[q>>2]=hc(c[k>>2]|0,4,0,c[m>>2]|0,0,e)|0;if(
c[e>>2]|0){i=t;return}}else c[q>>2]=r;c[m>>2]=0;c[n>>2]=c[g>>2];while(1){if((c
[n>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(c[(c[n>>2]|0)+16>
x3e;2]&16|0){c[f>>2]=(c[q>>2]|0)+(c[m>>2]<<2);while(1){if((c[f>>2]|0)>
;>>0<=(c[q>>2]|0)>>>0)break;if((c[(c[(c[f>>2]|0)+-4>>2]|0)+36>
x3e;2]|0)<=(c[(c[n>>2]|0)+36>>2]|0))break;c[c[f>>2]>>2]=c[(c[f>>2]|0)+-4
x3e;>2];c[f>>2]=(c[f>>2]|0)+-4}c[c[f>>2]>>2]=c[n>>2];c[m>>2]=(c
[m>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+48}c[n>>2]=c[g>>2];while(1){if((c[n>>
;2]|0)>>>0>=(c[o>>2]|0)>>>0)break;do if(!(c[(c[n>>2]|0)+16>>2]
x26;16)){if(c[(c[n>>2]|0)+12>>2]&2|0){if((a[(c[n>>2]|0)+20>>0]|0)==4)break;if((a[(c
[n>>2]|0)+20>>0]|0)!=(a[(c[n>>2]|0)+21>>0]|0))break;if((c[(c[n>>2]|0)+16>
x3e;2]&64|0)==0?(c[(c[n>>2]|0)+12>>2]&4|0)==0:0)break;w=(c[n>>2]|0)+12|0;c[w>>
2]=c[w>>2]&-3}c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[m>>2]|0
)>>>0)break;if((c[(c[(c[q>>2]|0)+(c[l>>2]<<2)>>2]|0)+36>>2]|0)
x3e;(c[(c[n>>2]|0)+36>>2]|0))break;c[l>>2]=(c[l>>2]|0)+1}do if(c[l>>2]|0){c[j
x3e;>2]=c[(c[q>>2]|0)+((c[l>>2]|0)-1<<2)>>2];c[l>>2]=c[m>>2];while
(1){if((c[l>>2]|0)>>>0<=0)break;if((c[(c[(c[q>>2]|0)+((c[l>>2]|0)-1<<
;2)>>2]|0)+36>>2]|0)<(c[(c[n>>2]|0)+36>>2]|0))break;c[l>>2]=(c[l>>
;2]|0)+-1}d=c[l>>2]|0;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=c[(c[q>>2]|0)+(d-1
x3c;<2)>>2];w=c[(c[j>>2]|0)+44>>2]|0;w=w+(Mb((c[(c[n>>2]|0)+36>>2]|0)-(c[(
c[j>>2]|0)+36>>2]|0)|0,c[p>>2]|0)|0)|0;c[(c[n>>2]|0)+44>>2]=w;break}c[h>
x3e;2]=c[(c[q>>2]|0)+(d<<2)>>2];c[s>>2]=c[(c[n>>2]|0)+36>>2];if((c[s
>>2]|0)==(c[(c[j>>2]|0)+36>>2]|0)){c[(c[n>>2]|0)+44>>2]=c[(c[j>>2]|0
)+44>>2];break}if((c[s>>2]|0)==(c[(c[h>>2]|0)+36>>2]|0)){c[(c[n>>2]|0)+44>
;>2]=c[(c[h>>2]|0)+44>>2];break}else{w=c[(c[j>>2]|0)+44>>2]|0;w=w+(xb((c[s>>
;2]|0)-(c[(c[j>>2]|0)+36>>2]|0)|0,(c[(c[h>>2]|0)+44>>2]|0)-(c[(c[j>>2]|0)+44
x3e;>2]|0)|0,(c[(c[h>>2]|0)+36>>2]|0)-(c[(c[j>>2]|0)+36>>2]|0)|0)|0)|0;c[(c[n>
x3e;2]|0)+44>>2]=w;break}}else{c[h>>2]=c[c[q>>2]>>2];w=c[(c[h>>2]|0)+44>
x3e;2]|0;w=w+(Mb((c[(c[n>>2]|0)+36>>2]|0)-(c[(c[h>>2]|0)+36>>2]|0)|0,c[p>>2]|0
)|0)|0;c[(c[n>>2]|0)+44>>2]=w}while(0);w=(c[n>>2]|0)+16|0;c[w>>2]=c[w>>2]|32}while
(0);c[n>>2]=(c[n>>2]|0)+48}if((c[q>>2]|0)==(r|0)){i=t;return}Fb(c[k>>2]|0,c[q>>
;2]|0);c[q>>2]=0;i=t;return}function Yn(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;v=i;i=i+80|0;w=v+76|0;y=v+72|0;x=v+68|0;s=v+64|0;h=v+60|0;d=v+56|0;m=v+52|0;u=v+48|0;j=v+44|0;l=v+40|
0;r=v+36|0;k=v+32|0;n=v+28|0;o=v+24|0;e=v+20|0;f=v+16|0;q=v+12|0;p=v+8|0;g=v+4|0;t=v;c[w>>2]=a;c[y>>2]=b;c[x
>>2]=(c[(c[w>>2]|0)+24>>2]|0)+4+((c[y>>2]|0)*204|0);c[s>>2]=c[(c[x>>
2]|0)+196>>2];c[h>>2]=c[(c[x>>2]|0)+200>>2];c[d>>2]=c[(c[w>>2]|0)+12
>>2];c[m>>2]=c[(c[w>>2]|0)+4>>2];while(1){if((c[m>>2]|0)>>>0<
;=0)break;c[u>>2]=c[c[d>>2]>>2];c[l>>2]=(c[u>>2]|0)+((c[(c[d>>2]|0)+
4>>2]|0)*48|0);c[k>>2]=0;c[j>>2]=0;c[r>>2]=c[u>>2];while(1){if((c[r>>
;2]|0)>>>0>=(c[l>>2]|0)>>>0)break;if(c[(c[r>>2]|0)+16>>2]&
32|0){if(!(c[j>>2]|0))c[j>>2]=c[r>>2];c[k>>2]=(c[k>>2]|0)+1}c[r>>2]=(
c[r>>2]|0)+48}a:do if((c[k>>2]|0)>>>0<2){if((c[k>>2]|0)==1){y=c[(c[j>>
;2]|0)+44>>2]|0;c[h>>2]=y-(Mb(c[(c[j>>2]|0)+36>>2]|0,c[s>>2]|0)|0)}c[r>
x3e;2]=c[u>>2];while(1){if((c[r>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break
a;if((c[r>>2]|0)!=(c[j>>2]|0)){y=Mb(c[(c[r>>2]|0)+36>>2]|0,c[s>>2]|0)|0;c[(c[
r>>2]|0)+44>>2]=y+(c[h>>2]|0)}c[r>>2]=(c[r>>2]|0)+48}}else{c[u>>2]=c
[j>>2];do{c[r>>2]=c[j>>2];while(1){c[l>>2]=c[(c[j>>2]|0)+4>>2];if((c
[l>>2]|0)==(c[u>>2]|0))break a;if(!(c[(c[l>>2]|0)+16>>2]&32))break;c[j>>2
]=c[l>>2]}do c[l>>2]=c[(c[l>>2]|0)+4>>2];while(!(c[(c[l>>2]|0)+16>>2
]&32|0));if((c[(c[j>>2]|0)+36>>2]|0)<=(c[(c[l>>2]|0)+36>>2]|0)){c[n>>
;2]=c[(c[j>>2]|0)+36>>2];c[e>>2]=c[(c[j>>2]|0)+44>>2];c[o>>2]=(c[(c[
l>>2]|0)+36>>2]|0)-(c[n>>2]|0);c[f>>2]=(c[(c[l>>2]|0)+44>>2]|0)-(c[e
>>2]|0)}else{c[n>>2]=c[(c[l>>2]|0)+36>>2];c[e>>2]=c[(c[l>>2]|0)+44
x3e;>2];c[o>>2]=(c[(c[j>>2]|0)+36>>2]|0)-(c[n>>2]|0);c[f>>2]=(c[(c[j>
;>2]|0)+44>>2]|0)-(c[e>>2]|0)}c[t>>2]=65536;if((c[o>>2]|0)>0)c[t>>2]=
Vb(c[f>>2]|0,c[o>>2]|0)|0;c[r>>2]=c[(c[j>>2]|0)+4>>2];do{c[q>>2]=c[(
c[r>>2]|0)+36>>2];c[p>>2]=(c[q>>2]|0)-(c[n>>2]|0);do if((c[p>>2]|0)
x3e;0){b=c[e>>2]|0;if((c[p>>2]|0)>=(c[o>>2]|0)){y=b+(c[f>>2]|0)|0;c[g>>2]=
y+(Mb((c[p>>2]|0)-(c[o>>2]|0)|0,c[s>>2]|0)|0);break}else{c[g>>2]=b+(Mb(c[p>>2]|
0,c[t>>2]|0)|0);break}}else{y=c[e>>2]|0;c[g>>2]=y+(Mb(c[p>>2]|0,c[s>>2]|0)|0)}
while(0);c[(c[r>>2]|0)+44>>2]=c[g>>2];c[r>>2]=c[(c[r>>2]|0)+4>>2]}while
((c[r>>2]|0)!=(c[l>>2]|0));c[j>>2]=c[l>>2]}while((c[j>>2]|0)!=(c[u>>
2]|0))}while(0);c[m>>2]=(c[m>>2]|0)+-1;c[d>>2]=(c[d>>2]|0)+8}i=v;return}function Zn(b,d){
b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0;j=l;c[e>>2]=b;c[f
x3e;>2]=d;c[h>>2]=c[(c[e>>2]|0)+8>>2];c[k>>2]=c[(c[(c[e>>2]|0)+20>
x3e;2]|0)+4>>2];c[j>>2]=c[(c[(c[e>>2]|0)+20>>2]|0)+8>>2];c[g>>2]=0;while
(1){if((c[g>>2]|0)>>>0>=(c[c[e>>2]>>2]|0)>>>0)break;d=c[(c[h>
;>2]|0)+44>>2]|0;b=(c[k>>2]|0)+(c[g>>2]<<3)|0;if(!(c[f>>2]|0))c[b>
x3e;2]=d;else c[b+4>>2]=d;if(c[(c[h>>2]|0)+16>>2]&16|0){b=(c[j>>2]|0)+(c[g>>
;2]|0)|0;a[b>>0]=a[b>>0]|(((c[f>>2]|0)==0?32:64)&255)<<24>>24}c[h>
x3e;2]=(c[h>>2]|0)+48;c[g>>2]=(c[g>>2]|0)+1}i=l;return}function _n(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]|0)+16>>2];$n((c[d>>2]|0)+28+40
|0,c[e>>2]|0);$n((c[d>>2]|0)+28|0,c[e>>2]|0);Fb(c[e>>2]|0,c[(c[d>>2]|0)+8>
;>2]|0);c[(c[d>>2]|0)+8>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+12>>2]|0);c[(c[d
>>2]|0)+12>>2]=0;c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>
x3e;2]|0)+16>>2]=0;i=b;return}function $n(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2
]=0;c[(c[e>>2]|0)+20>>2]=0;c[(c[e>>2]|0)+28>>2]=0;Fb(c[f>>2]|0,c[(c[e>>
;2]|0)+12>>2]|0);c[(c[e>>2]|0)+12>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>
;2]|0);c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[c[e>>2]>>2]=0;c
[(c[e>>2]|0)+16>>2]=0;i=d;return}function ao(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;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c
[a+20>>2]=0;c[a+24>>2]=0;c[(c[d>>2]|0)+4>>2]=38;c[(c[d>>2]|0)+8>>2]=
108;c[(c[d>>2]|0)+12>>2]=11;c[(c[d>>2]|0)+16>>2]=12;c[(c[d>>2]|0)+20>>
;2]=15;c[(c[d>>2]|0)+24>>2]=24;i=b;return}function bo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2
]=a;dn(c[d>>2]|0,2);i=b;return}function co(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;o=
i;i=i+160|0;f=o+156|0;g=o+152|0;h=o+148|0;j=o+144|0;l=o+16|0;n=o+8|0;k=o+4|0;m=o;c[f>>2]=a;c[g>>2]=b;c[h>
;>2]=d;c[j>>2]=e;c[m>>2]=c[h>>2];c[n>>2]=0;while(1){if((c[m>>2]|0)<=
0)break;a=c[m>>2]|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>16?16:a;c[k>>2]=0;while
(1){if((c[k>>2]|0)>=(c[h>>2]<<1|0))break;c[n>>2]=(c[n>>2]|0)+(c[(c[j>
;>2]|0)+(c[k>>2]<<2)>>2]|0);a=(Tb(c[n>>2]|0)|0)>>16;c[l+(c[k>>2
]<<2)>>2]=a;c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)
x3e;=(c[h>>2]<<1|0))break;c[l+((c[k>>2]|0)+1<<2)>>2]=(c[l+((c[k>>2]|
0)+1<<2)>>2]|0)-(c[l+(c[k>>2]<<2)>>2]|0);c[k>>2]=(c[k>>2]|
0)+2}pn(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,l);c[m>>2]=(c[m>>2]|0)-(c[h>>2
]|0)}i=o;return}function eo(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;p=i;i=i+48|0;f=p+32|0;g
=p+28|0;h=p+24|0;j=p+20|0;n=p+16|0;m=p+12|0;o=p+8|0;k=p+4|0;l=p;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j
x3e;>2]=e;if(c[(c[f>>2]|0)+4>>2]|0){i=p;return}c[m>>2]=(c[f>>2]|0)+16;c[o>>
;2]=c[c[f>>2]>>2];c[k>>2]=c[c[m>>2]>>2];c[l>>2]=c[(c[m>>2]|
0)+36>>2];if((c[h>>2]|0)!=((c[k>>2]|0)+(c[l>>2]|0)|0)){i=p;return}c[n>>2]=fo(c
[m>>2]|0,c[j>>2]|0,c[l>>2]|0,c[k>>2]|0,c[g>>2]|0,c[o>>2]|0)|0;if((c[
n>>2]|0)==0?(c[n>>2]=fo((c[m>>2]|0)+36|0,c[j>>2]|0,0,c[l>>2]|0,c[g>>
2]|0,c[o>>2]|0)|0,(c[n>>2]|0)==0):0){i=p;return}c[(c[f>>2]|0)+4>>2]=c[n>>2];i=
p;return}function fo(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;o=i;i=i+32|0;h=o+24|0;
j=o+20|0;k=o+16|0;l=o+12|0;p=o+8|0;m=o+4|0;n=o;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c
[p>>2]=f;c[m>>2]=g;c[n>>2]=0;c[n>>2]=Bn(c[h>>2]|0,c[p>>2]|0,c[m>
;>2]|0)|0;if(c[n>>2]|0){p=c[n>>2]|0;i=o;return p|0}c[n>>2]=go((c[h>>2]|0)+12|0,c[j
x3e;>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;p=c[n>>2]|0;i=o;return p|0}function go(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;u=i;i=i+48|0;v=u+44|0;j=u+40|0;k
=u+36|0;l=u+32|0;m=u+28|0;n=u+24|0;o=u+20|0;p=u+16|0;q=u+12|0;t=u+8|0;s=u+4|0;r=u;c[v>>2]=b;c[j>>2]=e;c[k>
;>2]=f;c[l>>2]=g;c[m>>2]=h;c[n>>2]=0;c[n>>2]=tn(c[v>>2]|0,c[m>>
2]|0,o)|0;if(c[n>>2]|0){v=c[n>>2]|0;i=u;return v|0}c[n>>2]=mn(c[o>>2]|0,c[l>>2
]|0,c[m>>2]|0)|0;if(c[n>>2]|0){v=c[n>>2]|0;i=u;return v|0}c[c[o>>2]>>2]=c[l>
;>2];c[p>>2]=(c[j>>2]|0)+((c[k>>2]|0)>>>3);c[q>>2]=128>>(c
[k>>2]&7);c[t>>2]=c[(c[o>>2]|0)+8>>2];c[s>>2]=128;while(1){if((c[l>
x3e;2]|0)>>>0<=0)break;c[r>>2]=(d[c[t>>2]>>0]|0)&~c[s>>2];if((d
[c[p>>2]>>0]|0)&c[q>>2]|0)c[r>>2]=c[r>>2]|c[s>>2];a[c[t>
x3e;2]>>0]=c[r>>2];c[q>>2]=c[q>>2]>>1;if(!(c[q>>2]|0)){c[p>>
;2]=(c[p>>2]|0)+1;c[q>>2]=128}c[s>>2]=c[s>>2]>>1;if(!(c[s>>2]|0)){c[
t>>2]=(c[t>>2]|0)+1;c[s>>2]=128}c[l>>2]=(c[l>>2]|0)+-1}v=c[n>>2]|0;i
=u;return v|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,m=0,n=0;n=i;i=i+32|0;e=n+28|0;f=n+24|0;g=n+20
|0;l=n+16|0;k=n+12|0;m=n+8|0;h=n+4|0;j=n;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[(c[e>>2]|0)+
4>>2]|0){i=n;return}c[k>>2]=(c[e>>2]|0)+16;c[m>>2]=c[c[e>>2]>>2];c[h
>>2]=c[c[k>>2]>>2];c[j>>2]=c[(c[k>>2]|0)+36>>2];if((c[f>>2
]|0)!=((c[h>>2]|0)+(c[j>>2]|0)|0)){i=n;return}c[l>>2]=fo(c[k>>2]|0,c[g>>2]|0,0
,c[h>>2]|0,0,c[m>>2]|0)|0;if((c[l>>2]|0)==0?(c[l>>2]=fo((c[k>>2]|0)+36|0,c[g
x3e;>2]|0,c[h>>2]|0,c[j>>2]|0,0,c[m>>2]|0)|0,(c[l>>2]|0)==0):0){i=n;return}c[(c[e
x3e;>2]|0)+4>>2]=c[l>>2];i=n;return}function io(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)+120>>2]=0;c[(c[d>>2]|0)+148>>2]=0;jo((c[d>>2]|0)+20|0);i=b;return
}function jo(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]>
x3e;2];ko((c[d>>2]|0)+16|0,c[e>>2]|0);ko((c[d>>2]|0)+16+36|0,c[e>>2]|0);c[(c[d>>
;2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;i=b;return}function ko(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;lo((c[f>>2]|0)+24|0,c[e>>2]|0);lo((c[f>>2]|0
)+12|0,c[e>>2]|0);no(c[f>>2]|0,c[e>>2]|0);i=d;return}function lo(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|
0)+4>>2];c[g>>2]=c[(c[d>>2]|0)+8>>2];while(1){if((c[f>>2]|0)>>>
0<=0)break;mo(c[g>>2]|0,c[e>>2]|0);c[f>>2]=(c[f>>2]|0)+-1;c[g>>2]=(c[g>
;>2]|0)+16}Fb(c[e>>2]|0,c[(c[d>>2]|0)+8>>2]|0);c[(c[d>>2]|0)+8>>2]=0;c[c[
d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;i=h;return}function mo(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>2
]|0);c[(c[e>>2]|0)+8>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[(
c[e>>2]|0)+12>>2]=0;i=d;return}function no(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>2]|0);c[(c[e>>2]|0)+8>
;>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;i=d;return}function oo(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;
c[c[e>>2]>>2]=0;c[g>>2]=bc(c[d>>2]|0,24,f)|0;if(c[f>>2]|0){g=c[f>>2]|
0;i=h;return g|0}c[(c[g>>2]|0)+8>>2]=c[d>>2];po(c[g>>2]|0);c[c[e>>2]>>
;2]=c[g>>2];g=c[f>>2]|0;i=h;return g|0}function po(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a
;c[d>>2]=c[d>>2];i=b;return}function qo(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;e=j+12
|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(!(c[e>>2]|0)){i=j;return}if((c[f
>>2]|0)!=0&(c[g>>2]|0)>=3076){c[h>>2]=c[f>>2];c[c[e>>2]>>2
]=(c[f>>2]|0)+1032;c[(c[e>>2]|0)+4>>2]=(c[f>>2]|0)+(c[g>>2]|0)-(c[c[e>>
;2]>>2]|0);c[(c[e>>2]|0)+12>>2]=c[h>>2];i=j;return}else{c[c[e>>2]>>2
]=0;c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+12>>2]=0;i=j;return}}function ro(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;c[h
x3e;>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>>2];i=e;return}function so(a,
d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l+20|0;e=l+16|0;j=l+12|0;f=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c
[j>>2]=d;c[f>>2]=c[(c[j>>2]|0)+4>>2];c[g>>2]=c[c[j>>2]>>2];
if((c[e>>2]|0?c[c[e>>2]>>2]|0:0)?c[(c[e>>2]|0)+4>>2]|0:0){if(!(c[f>>
2]|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}if(b[(c[f>>2]|0)+2>>1]|0?(b[c[f>>
2]>>1]|0)>0:0){if(c[(c[f>>2]|0)+12>>2]|0?c[(c[f>>2]|0)+4>>2]|0:0){if((b[(
c[f>>2]|0)+2>>1]|0)!=((b[(c[(c[f>>2]|0)+12>>2]|0)+((b[c[f>>2]>>1]|0)-
1<<1)>>1]|0)+1|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}c[h>>2]=c[(c[e>
x3e;2]|0)+12>>2];if(c[(c[j>>2]|0)+8>>2]&2|0){c[k>>2]=19;k=c[k>>2]|0;i=l;return
k|0}if(!(c[g>>2]|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}if(c[(c[g>>2]|0)+4>>
;2]|0?c[c[g>>2]>>2]|0:0){if(!(c[(c[g>>2]|0)+12>>2]|0)){c[k>>2]=20;k=c[k>
x3e;2]|0;i=l;return k|0}a=(c[h>>2]|0)+128|0;d=c[f>>2]|0;c[a>>2]=c[d>>2];c[a+4>>
;2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];c[a+16>>2]=c
[d+16>>2];a=(c[h>>2]|0)+104|0;g=c[g>>2]|0;c[a>>2]=c[g>>2];c[a+4>>2]=
c[g+4>>2];c[a+8>>2]=c[g+8>>2];c[a+12>>2]=c[g+12>>2];c[a+16>>2]=c[g+16
>>2];c[a+20>>2]=c[g+20>>2];c[(c[h>>2]|0)+28>>2]=c[c[e>>2]>>
;2];c[(c[h>>2]|0)+32>>2]=(c[(c[h>>2]|0)+28>>2]|0)+((((c[(c[e>>2]|0)+4>>
;2]|0)>>>0)/4|0)<<2);e=c[h>>2]|0;if(c[(c[j>>2]|0)+8>>2]&1|0)e=to(e)|
0;else e=uo(e)|0;c[k>>2]=e;k=c[k>>2]|0;i=l;return k|0}c[k>>2]=0;k=c[k>>2]|0;i=l;return k
|0}c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}c[k>>2]=0;k=c[k>>2]|0;i=l;return k|0}c[k>
x3e;2]=96;k=c[k>>2]|0;i=l;return k|0}function to(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>
x3e;2]=c[d>>2];i=b;return 19}function uo(e){e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;g=k+8|0;h=k+4|0;j=k;c[h>
x3e;2]=e;vo(c[h>>2]|0,c[(c[h>>2]|0)+128+16>>2]&256);c[(c[h>>2]|0)+24>>2]=
c[(c[h>>2]|0)+12>>2];e=c[h>>2]|0;if(!(c[(c[h>>2]|0)+128+16>>2]&8|0)){f=(c
[h>>2]|0)+180|0;if(c[e+128+16>>2]&16|0)a[f>>0]=4;else a[f>>0]=0;if(!(c[(c[h>
x3e;2]|0)+128+16>>2]&32)){f=(c[h>>2]|0)+180|0;a[f>>0]=(d[f>>0]|0)+1}}else a[e+180
x3e;>0]=2;a[(c[h>>2]|0)+181>>0]=((c[(c[h>>2]|0)+128+16>>2]&512|0)!=0^1)&1
;c[(c[h>>2]|0)+164>>2]=16;c[(c[h>>2]|0)+168>>2]=1;c[(c[h>>2]|0)+172>>
;2]=2;c[(c[h>>2]|0)+176>>2]=39;c[(c[h>>2]|0)+1024>>2]=0;b[(c[h>>2]|0)+960>
;>1]=0;b[(c[h>>2]|0)+960+2>>1]=(c[(c[h>>2]|0)+104>>2]|0)-1;b[(c[h>>2]|0)+
56>>1]=c[(c[h>>2]|0)+104+4>>2];c[(c[h>>2]|0)+60>>2]=c[(c[h>>2]|0)+104
+12>>2];f=Ao(c[h>>2]|0,0)|0;c[j>>2]=f;if(f|0){c[g>>2]=c[j>>2];j=c[g>>
;2]|0;i=k;return j|0}if((a[(c[h>>2]|0)+181>>0]|0?(d[(c[h>>2]|0)+180>>0]|0)!=2:0)?(c[(c[h
>>2]|0)+164>>2]=17,c[(c[h>>2]|0)+168>>2]=3,c[(c[h>>2]|0)+172>>2]=4,c
[(c[h>>2]|0)+176>>2]=40,c[(c[h>>2]|0)+1024>>2]=0,b[(c[h>>2]|0)+960>>
1]=0,b[(c[h>>2]|0)+960+2>>1]=(c[(c[h>>2]|0)+104+4>>2]|0)-1,h=Ao(c[h>>2]|0,1)|0
,c[j>>2]=h,h|0):0){c[g>>2]=c[j>>2];j=c[g>>2]|0;i=k;return j|0}c[g>>2]=0;j=c[g
x3e;>2]|0;i=k;return j|0}function vo(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;b=c[d>>2]|0;if(c[f>>2]|0){c[b>>2]=12;c[(c[d>>2]|0)+16>>2]=256;c[(c
[d>>2]|0)+20>>2]=50}else{c[b>>2]=6;c[(c[d>>2]|0)+16>>2]=32;c[(c[d>>2
]|0)+20>>2]=2}c[(c[d>>2]|0)+4>>2]=1<<c[c[d>>2]>>2];c[(c[d>>
;2]|0)+8>>2]=(c[(c[d>>2]|0)+4>>2]|0)/2|0;c[(c[d>>2]|0)+12>>2]=(c[c[d>>
;2]>>2]|0)-6;i=e;return}function wo(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;h=i;i=i+16|0;f=h+12|0;j=h+8|0;k=h
+4|0;g=h;c[f>>2]=a;c[j>>2]=d;c[k>>2]=e;c[g>>2]=c[(c[f>>2]|0)+104+8>>
2];c[k>>2]=c[k>>2];b[(c[f>>2]|0)+156>>1]=0-(c[g>>2]|0);a=_(0-(b[c[j>>
;2]>>1]|0)|0,c[g>>2]|0)|0;c[(c[f>>2]|0)+148>>2]=a;if((c[g>>2]|0)<=0){k=c[
f>>2]|0;k=k+158|0;b[k>>1]=0;k=c[f>>2]|0;k=k+160|0;b[k>>1]=0;i=h;return}j=_((c[(c[f>
x3e;2]|0)+104>>2]|0)-1|0,c[g>>2]|0)|0;k=(c[f>>2]|0)+148|0;c[k>>2]=(c[k>>2]|0)+
j;k=c[f>>2]|0;k=k+158|0;b[k>>1]=0;k=c[f>>2]|0;k=k+160|0;b[k>>1]=0;i=h;return}function xo
(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;v=i;i=i+48|0;m=v+36
|0;z=v+40|0;w=v+32|0;n=v+28|0;y=v+24|0;x=v+20|0;p=v+16|0;q=v+12|0;o=v+8|0;s=v+4|0;r=v+43|0;t=v+42|0;u=v;c[m>>2]=f;b[z
x3e;>1]=g;c[w>>2]=h;c[n>>2]=j;c[y>>2]=k;c[x>>2]=l;b[z>>1]=b[z>>
1]|0;c[y>>2]=c[y>>2];c[x>>2]=c[x>>2];c[p>>2]=((c[w>>2]|0)+(c[(c[m>
;>2]|0)+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>2]|0))>>c[c[m>>2]>>
2];if(((c[n>>2]|0)-(c[w>>2]|0)-(c[(c[m>>2]|0)+4>>2]|0)|0)<=(c[(c[m>>2]|0)+
20>>2]|0))c[q>>2]=c[p>>2];else c[q>>2]=(c[n>>2]&0-(c[(c[m>>2]|0
)+4>>2]|0))>>c[c[m>>2]>>2];if((c[q>>2]|0)<0){i=v;return}if((c[p>>
;2]|0)>=(e[(c[m>>2]|0)+56>>1]|0)){i=v;return}if((c[p>>2]|0)<0)c[p>>2]=0;if((c[
q>>2]|0)>=(e[(c[m>>2]|0)+56>>1]|0))c[q>>2]=(e[(c[m>>2]|0)+56>>1
]|0)-1;c[o>>2]=(c[p>>2]>>3&65535)<<16>>16;c[s>>2]=(c[q>>
;2]>>3&65535)<<16>>16;a[r>>0]=255>>(c[p>>2]&7);a[t>
x3e;0]=~(127>>(c[q>>2]&7));if((b[(c[m>>2]|0)+158>>1]|0)>(c[o>>2]|0))
b[(c[m>>2]|0)+158>>1]=c[o>>2];if((b[(c[m>>2]|0)+160>>1]|0)<(c[s>>
;2]|0))b[(c[m>>2]|0)+160>>1]=c[s>>2];c[u>>2]=(c[(c[m>>2]|0)+60>>2]|0
)+(c[(c[m>>2]|0)+148>>2]|0)+(c[o>>2]|0);c[s>>2]=(c[s>>2]|0)-(c[o>>2]|
0);m=d[r>>0]|0;if((c[s>>2]|0)<=0){z=c[u>>2]|0;a[z>>0]=d[z>>0]|m&d[t
x3e;>0];i=v;return}z=c[u>>2]|0;a[z>>0]=d[z>>0]|m;c[s>>2]=(c[s>>2]|0)+-1;while
(1){if((c[s>>2]|0)<=0)break;z=(c[u>>2]|0)+1|0;c[u>>2]=z;a[z>>0]=-1;c[s>>2
]=(c[s>>2]|0)+-1}z=(c[u>>2]|0)+1|0;a[z>>0]=d[z>>0]|d[t>>0];i=v;return}function
yo(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;y=i;i=i+48|0;m=y+32
|0;n=y+40|0;o=y+28|0;p=y+24|0;q=y+20|0;r=y+16|0;u=y+12|0;v=y+8|0;x=y+4|0;s=y+38|0;w=y+36|0;t=y;c[m>>2]=f;b[n>>
;1]=g;c[o>>2]=h;c[p>>2]=j;c[q>>2]=k;c[r>>2]=l;c[u>>2]=(c[o>>2]|0)+(c
[(c[m>>2]|0)+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>2]|0);c[v>>2]=c[p>>
2]&0-(c[(c[m>>2]|0)+4>>2]|0);c[x>>2]=c[u>>2];if((c[u>>2]|0)>(c[v>
;>2]|0)){c[t>>2]=c[(c[q>>2]|0)+12>>2]&7;if((c[u>>2]|0)!=((c[v>>2]|0)+(
c[(c[m>>2]|0)+4>>2]|0)|0)){i=y;return}a:do switch(c[t>>2]|0){case 0:{c[x>>2]=c[v>
x3e;2];break}case 4:{c[x>>2]=(((c[o>>2]|0)+(c[p>>2]|0)-1|0)/2|0)+(c[(c[m>>2]|0)+8>
x3e;2]|0)&0-(c[(c[m>>2]|0)+4>>2]|0);break}case 5:case 1:{if((c[(c[q>>2]|0)+28>>2]|0
)==(c[r>>2]|0)?(c[(c[q>>2]|0)+16>>2]|0)<=0:0){if(!(c[(c[q>>2]|0)+12>>2]
x26;16)){i=y;return}if(((c[p>>2]|0)-(c[o>>2]|0)|0)<(c[(c[m>>2]|0)+8>>2]|0)){i=y;return
}}if((c[(c[r>>2]|0)+28>>2]|0)==(c[q>>2]|0)?(c[(c[q>>2]|0)+20>>2]|0)==(b[n>
;>1]|0):0){if(!(c[(c[q>>2]|0)+12>>2]&32)){i=y;return}if(((c[p>>2]|0)-(c[o>>2]|
0)|0)<(c[(c[m>>2]|0)+8>>2]|0)){i=y;return}}if((c[t>>2]|0)==1){c[x>>2]=c[v>>
;2];break a}else{c[x>>2]=(((c[o>>2]|0)+(c[p>>2]|0)-1|0)/2|0)+(c[(c[m>>2]|0)+8>>
;2]|0)&0-(c[(c[m>>2]|0)+4>>2]|0);break a}}default:{i=y;return}}while(0);c[u>>2]=(c[x>>
;2]|0)==(c[u>>2]|0)?c[v>>2]|0:c[u>>2]|0;c[u>>2]=c[u>>2]>>c[c[m>
x3e;2]>>2];b[s>>1]=c[u>>2]>>3;b[w>>1]=c[u>>2]&7;if(((c[u>
x3e;2]|0)>=0?(c[u>>2]|0)<(e[(c[m>>2]|0)+56>>1]|0):0)?d[(c[(c[m>>2]|0)+60>
x3e;2]|0)+((c[(c[m>>2]|0)+148>>2]|0)+(b[s>>1]|0))>>0]&128>>b[w>>
;1]|0:0){i=y;return}}c[u>>2]=c[x>>2]>>c[c[m>>2]>>2];if((c[u>>2]|0)
x3c;0){i=y;return}if((c[u>>2]|0)>=(e[(c[m>>2]|0)+56>>1]|0)){i=y;return}b[s>>1]=c[u
x3e;>2]>>3;b[w>>1]=c[u>>2]&7;if((b[(c[m>>2]|0)+158>>1]|0)>(b[s
x3e;>1]|0))b[(c[m>>2]|0)+158>>1]=b[s>>1]|0;if((b[(c[m>>2]|0)+160>>1]|0)
x3c;(b[s>>1]|0))b[(c[m>>2]|0)+160>>1]=b[s>>1]|0;g=(c[(c[m>>2]|0)+60>>
;2]|0)+((c[(c[m>>2]|0)+148>>2]|0)+(b[s>>1]|0))|0;a[g>>0]=d[g>>0]|(128>>
;b[w>>1]&255)<<24>>24;i=y;return}function zo(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>
x3e;2]=a;a=(c[e>>2]|0)+148|0;c[a>>2]=(c[a>>2]|0)+(b[(c[e>>2]|0)+156>>1]|0);i=d
;return}function Ao(d,e){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+16|0;k=m+4|0;l=m;f=m+14|0;g=m+12|0;h=m+10|0;j=m+8|0
;c[l>>2]=d;a[f>>0]=e;while(1){if((c[(c[l>>2]|0)+1024>>2]|0)<0){e=14;break}d=_(b[(c[
l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>>1]|0,c[(c[l>>2]|0)+4>
;>2]|0)|0;c[(c[l>>2]|0)+80>>2]=d;d=_(b[(c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>
;2]<<2)>>1]|0,c[(c[l>>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+76>>2]=d;c[(c[l
>>2]|0)+40>>2]=c[(c[l>>2]|0)+28>>2];c[(c[l>>2]|0)+44>>2]=0;d=(Bo(c[l
>>2]|0,a[f>>0]|0)|0)<<24>>24!=0;e=c[l>>2]|0;if(!d){if(c[e+92>>2]|0?(
Qo(c[l>>2]|0)|0)<<24>>24:0){e=12;break}d=(c[l>>2]|0)+1024|0;c[d>>2]=(c[d>
x3e;2]|0)+-1;continue}if((c[e+44>>2]|0)!=98){e=5;break}c[(c[l>>2]|0)+44>>2]=0;b[g>>1]=b[(
c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)>>1]|0;b[h>>1]=b[(c[l>
;>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>>1]|0;b[j>>1]=((b[g>>
1]|0)+(b[h>>1]|0)|0)/2|0;if((c[(c[l>>2]|0)+1024>>2]|0)>=7){e=8;break}if((b[j>>1]|0)
x3c;(b[g>>1]|0)){e=8;break}b[(c[l>>2]|0)+960+((c[(c[l>>2]|0)+1024>>2]|0)+1<<2)
x3e;>1]=b[j>>1]|0;b[(c[l>>2]|0)+960+((c[(c[l>>2]|0)+1024>>2]|0)+1<<2)+2
x3e;>1]=b[h>>1]|0;b[(c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>
x3e;1]=(b[j>>1]|0)-1;d=(c[l>>2]|0)+1024|0;c[d>>2]=(c[d>>2]|0)+1}if((e|0)==5){c[k>
x3e;2]=1;l=c[k>>2]|0;i=m;return l|0}else if((e|0)==8){c[(c[l>>2]|0)+1024>>2]=0;c[(c[l>>2
]|0)+44>>2]=20;c[k>>2]=c[(c[l>>2]|0)+44>>2];l=c[k>>2]|0;i=m;return l|0}else if
((e|0)==12){c[k>>2]=c[(c[l>>2]|0)+44>>2];l=c[k>>2]|0;i=m;return l|0}else if((e|0)==14){c
[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}return 0}function Bo(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;n=i;i=i+32|0;l=n+21|0;m=n+16|0;f=n+12|0;g=n+8|0;k=n+4|0;h=n;j=n+20|0;c[m>>2]=d;c[f>>2]=e;c[(c[m>>
;2]|0)+92>>2]=0;a[(c[m>>2]|0)+87>>0]=0;a[(c[m>>2]|0)+86>>0]=0;c[(c[m>>
;2]|0)+36>>2]=(c[(c[m>>2]|0)+32>>2]|0)+-32;c[(c[m>>2]|0)+48>>2]=0;c[(c[m>
x3e;2]|0)+88>>2]=c[(c[m>>2]|0)+40>>2];c[(c[(c[m>>2]|0)+88>>2]|0)+8>>
2]=c[(c[m>>2]|0)+40>>2];b[(c[m>>2]|0)+84>>1]=0;c[k>>2]=0;c[g>>2]=0;while
(1){d=c[m>>2]|0;if((c[g>>2]|0)>=(b[(c[m>>2]|0)+128>>1]|0)){e=19;break}c[d+100>
x3e;2]=0;c[(c[m>>2]|0)+96>>2]=0;if((Co(c[m>>2]|0,c[k>>2]&65535,b[(c[(c[m>>
;2]|0)+128+12>>2]|0)+(c[g>>2]<<1)>>1]|0,c[f>>2]|0)|0)<<24>>
;24){e=4;break}c[k>>2]=(b[(c[(c[m>>2]|0)+128+12>>2]|0)+(c[g>>2]<<1)>>
;1]|0)+1;if(((((c[(c[m>>2]|0)+72>>2]&(c[(c[m>>2]|0)+4>>2]|0)-1|0)==0?(c[(c[m>
x3e;2]|0)+72>>2]|0)>=(c[(c[m>>2]|0)+76>>2]|0):0)?(c[(c[m>>2]|0)+72>>2]|0)
x3c;=(c[(c[m>>2]|0)+80>>2]|0):0)?c[(c[m>>2]|0)+96>>2]|0:0)?(c[(c[(c[m>>2]|0)+96
>>2]|0)+12>>2]&8|0)==(c[(c[(c[m>>2]|0)+88>>2]|0)+12>>2]&8|0):0){d=(c
[m>>2]|0)+40|0;c[d>>2]=(c[d>>2]|0)+-4}c[h>>2]=c[(c[m>>2]|0)+88>>2];e
=c[(c[m>>2]|0)+72>>2]|0;d=c[m>>2]|0;if(c[(c[(c[m>>2]|0)+88>>2]|0)+12>>
;2]&8|0)a[j>>0]=(e-(c[d+72>>2]&0-(c[(c[m>>2]|0)+4>>2]|0))|0)>=(c[(c[m>
;>2]|0)+8>>2]|0);else a[j>>0]=((e+(c[d+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>
;2]|0))-(c[(c[m>>2]|0)+72>>2]|0)|0)>=(c[(c[m>>2]|0)+8>>2]|0);if((Fo(c[m>>
2]|0,a[j>>0]|0)|0)<<24>>24){e=15;break}if(c[(c[m>>2]|0)+96>>2]|0)c[(c[h>
x3e;2]|0)+28>>2]=c[(c[m>>2]|0)+96>>2];c[g>>2]=(c[g>>2]|0)+1}if((e|0)==4){a[l
x3e;>0]=1;m=a[l>>0]|0;i=n;return m|0}else if((e|0)==15){a[l>>0]=1;m=a[l>>0]|0;i=n;return m|0}
else if((e|0)==19)if((Oo(d)|0)<<24>>24){a[l>>0]=1;m=a[l>>0]|0;i=n;return m|0}else{a[l>
;>0]=(c[(c[m>>2]|0)+40>>2]|0)>>>0<(c[(c[m>>2]|0)+36>>2]|0)>
;>>0?0:1;m=a[l>>0]|0;i=n;return m|0}return 0}function Co(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,P=0,Q=0,R=0;R=i;i=
i+144|0;k=R+140|0;l=R+132|0;m=R+138|0;n=R+136|0;o=R+128|0;D=R+120|0;C=R+112|0;F=R+104|0;r=R+96|0;q=R+92|0;p=R+88|0;B=R+84|0;A=R+
80|0;s=R+76|0;t=R+72|0;G=R+68|0;L=R+64|0;u=R+60|0;v=R+56|0;E=R+48|0;K=R+44|0;P=R+40|0;w=R+36|0;H=R+32|0;M=R+28|0;I=R+24|0;N=R+20
|0;J=R+16|0;O=R+12|0;x=R+8|0;y=R+4|0;z=R;c[l>>2]=f;b[m>>1]=g;b[n>>1]=h;c[o>>2]=j;c[r>
;>2]=c[(c[l>>2]|0)+128+4>>2];c[p>>2]=(c[r>>2]|0)+(e[n>>1]<<3);c
[F>>2]=(c[(c[r>>2]|0)+(e[m>>1]<<3)>>2]<<c[(c[l>>2]|0)+24
x3e;>2])-(c[(c[l>>2]|0)+8>>2]|0);c[F+4>>2]=(c[(c[r>>2]|0)+(e[m>>1]<
x3c;3)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[D>
;>2]=(c[(c[r>>2]|0)+(e[n>>1]<<3)>>2]<<c[(c[l>>2]|0)+24>>
;2])-(c[(c[l>>2]|0)+8>>2]|0);c[D+4>>2]=(c[(c[r>>2]|0)+(e[n>>1]<<3)+4
>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>>
;2]|0){c[s>>2]=c[F>>2];c[F>>2]=c[F+4>>2];c[F+4>>2]=c[s>>2];c[t>
x3e;2]=c[D>>2];c[D>>2]=c[D+4>>2];c[D+4>>2]=c[t>>2]};c[C>>2]=c[F>
;>2];c[C+4>>2]=c[F+4>>2];c[q>>2]=(c[r>>2]|0)+(e[m>>1]<<3);c[B
x3e;>2]=(c[(c[l>>2]|0)+128+8>>2]|0)+(e[m>>1]|0);if(a[c[B>>2]>>0]&4|0
)a[(c[l>>2]|0)+180>>0]=d[c[B>>2]>>0]>>5;c[A>>2]=a[c[B>>2]
x3e;>0]&3;a:do if((c[A>>2]|0)==2)Q=39;else{if(!(c[A>>2]|0)){if((a[(c[(c[l>>2]|0)+128+8
x3e;>2]|0)+(e[n>>1]|0)>>0]&3|0)==1){c[F>>2]=c[D>>2];c[F+4>>2]=c[D+4
x3e;>2];c[p>>2]=(c[p>>2]|0)+-8}else{c[F>>2]=((c[F>>2]|0)+(c[D>>2]|0)|0)/2
|0;c[F+4>>2]=((c[F+4>>2]|0)+(c[D+4>>2]|0)|0)/2|0;c[D>>2]=c[F>>2];c[D+4>
x3e;2]=c[F+4>>2]}c[q>>2]=(c[q>>2]|0)+-8;c[B>>2]=(c[B>>2]|0)+-1}c[(c[l>>
;2]|0)+68>>2]=c[F>>2];c[(c[l>>2]|0)+72>>2]=c[F+4>>2];b:while(1){if((c[q>
x3e;2]|0)>>>0>=(c[p>>2]|0)>>>0){Q=37;break}c[q>>2]=(c[q>>2]|0)+
8;c[B>>2]=(c[B>>2]|0)+1;c[A>>2]=a[c[B>>2]>>0]&3;switch(c[A>>2]|
0){case 1:{c[G>>2]=(c[c[q>>2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>
;>2]|0)+8>>2]|0);c[L>>2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24
>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>>2]|0){c[u>>2]=c[G>>2];c[G>
;>2]=c[L>>2];c[L>>2]=c[u>>2]}if((Do(c[l>>2]|0,c[G>>2]|0,c[L>>2]|
0)|0)<<24>>24)break a;else continue b}case 0:{c[C>>2]=(c[c[q>>2]>>2]<<
;c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[C+4>>2]=(c[(c[q>>2]|
0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>
x3e;2]|0){c[v>>2]=c[C>>2];c[C>>2]=c[C+4>>2];c[C+4>>2]=c[v>>2]}while(
1){if((c[q>>2]|0)>>>0>=(c[p>>2]|0)>>>0){Q=27;break b}c[q>>2]=(c
[q>>2]|0)+8;c[B>>2]=(c[B>>2]|0)+1;c[A>>2]=a[c[B>>2]>>0]&3;c[K
x3e;>2]=(c[c[q>>2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8
x3e;>2]|0);c[P>>2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(
c[(c[l>>2]|0)+8>>2]|0);if(c[o>>2]|0){c[w>>2]=c[K>>2];c[K>>2]=c[P>
;>2];c[P>>2]=c[w>>2]}if((c[A>>2]|0)==1)break;if(c[A>>2]|0){Q=39;break a}c[E>
x3e;2]=((c[C>>2]|0)+(c[K>>2]|0)|0)/2|0;c[E+4>>2]=((c[C+4>>2]|0)+(c[P>>2]|0)|0)/
2|0;if((Io(c[l>>2]|0,c[C>>2]|0,c[C+4>>2]|0,c[E>>2]|0,c[E+4>>2]|0)|0)<<
;24>>24)break a;c[C>>2]=c[K>>2];c[C+4>>2]=c[P>>2]}if((Io(c[l>>2]|0,c
[C>>2]|0,c[C+4>>2]|0,c[K>>2]|0,c[P>>2]|0)|0)<<24>>24)break a;else continue
b}default:{if(((c[q>>2]|0)+8|0)>>>0>(c[p>>2]|0)>>>0){Q=39;break a}if((a[(
c[B>>2]|0)+1>>0]&3|0)!=2){Q=39;break a}c[q>>2]=(c[q>>2]|0)+16;c[B>>2]=(c[
B>>2]|0)+2;c[H>>2]=(c[(c[q>>2]|0)+-16>>2]<<c[(c[l>>2]|0)+24>>
;2])-(c[(c[l>>2]|0)+8>>2]|0);c[M>>2]=(c[(c[q>>2]|0)+-16+4>>2]<<c[(c[
l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[I>>2]=(c[(c[q>>2]|0)+-8
x3e;>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[N>>2]=(
c[(c[q>>2]|0)+-8+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>
x3e;2]|0);if(c[o>>2]|0){c[x>>2]=c[H>>2];c[H>>2]=c[M>>2];c[M>>2]=c[x
x3e;>2];c[y>>2]=c[I>>2];c[I>>2]=c[N>>2];c[N>>2]=c[y>>2]}if((c[q
>>2]|0)>>>0>(c[p>>2]|0)>>>0){Q=36;break b}c[J>>2]=(c[c[q>
x3e;2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[O>
x3e;2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8
x3e;>2]|0);if(c[o>>2]|0){c[z>>2]=c[J>>2];c[J>>2]=c[O>>2];c[O>>2
]=c[z>>2]}if((Mo(c[l>>2]|0,c[H>>2]|0,c[M>>2]|0,c[I>>2]|0,c[N>>2]|0,c
[J>>2]|0,c[O>>2]|0)|0)<<24>>24)break a;else continue b}}}if((Q|0)==27){if((Io(c[l>
x3e;2]|0,c[C>>2]|0,c[C+4>>2]|0,c[F>>2]|0,c[F+4>>2]|0)|0)<<24>>24)break
}else if((Q|0)==36){if((Mo(c[l>>2]|0,c[H>>2]|0,c[M>>2]|0,c[I>>2]|0,c[N>>2]|0,c
[F>>2]|0,c[F+4>>2]|0)|0)<<24>>24)break}else if((Q|0)==37?(Do(c[l>>2]|0,c[F>
;>2]|0,c[F+4>>2]|0)|0)<<24>>24:0)break;a[k>>0]=0;Q=a[k>>0]|0;i=R;return Q
|0}while(0);if((Q|0)==39)c[(c[l>>2]|0)+44>>2]=20;a[k>>0]=1;Q=a[k>>0]|0;i=R;return Q|0}function
Do(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[g>>2]=b;c[h>>
;2]=d;c[j>>2]=e;a:do switch(c[(c[g>>2]|0)+100>>2]|0){case 0:{if((c[j>>2]|0)>(c[(c[g
>>2]|0)+72>>2]|0)){if(!((Eo(c[g>>2]|0,1,(((c[(c[g>>2]|0)+72>>2]|0)+(c[(c[g>
;>2]|0)+4>>2]|0)-1&0-(c[(c[g>>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72>>2]|
0)|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24))break a;a[f>>0]=1;e=
a[f>>0]|0;i=k;return e|0}if((c[j>>2]|0)<(c[(c[g>>2]|0)+72>>2]|0)?(Eo(c[g>>
;2]|0,2,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>2]&0-(c[(c[g>>2]|0)+
4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24:0){a[f>
x3e;0]=1;e=a[f>>0]|0;i=k;return e|0}break}case 1:{if((c[j>>2]|0)<(c[(c[g>>2]|0)+72>>
;2]|0)){if(((Fo(c[g>>2]|0,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>2]&
;0-(c[(c[g>>2]|0)+4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24
x3e;>24|0)==0?((Eo(c[g>>2]|0,2,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>
;2]&0-(c[(c[g>>2]|0)+4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<
x3c;24>>24|0)==0:0)break a;a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}case 2:{if((c[j>>2
]|0)>(c[(c[g>>2]|0)+72>>2]|0)){if(((Fo(c[g>>2]|0,(((c[(c[g>>2]|0)+72>>2]|
0)+(c[(c[g>>2]|0)+4>>2]|0)-1&0-(c[(c[g>>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72
>>2]|0)|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24|0)==0?((Eo(c[g
x3e;>2]|0,1,(((c[(c[g>>2]|0)+72>>2]|0)+(c[(c[g>>2]|0)+4>>2]|0)-1&0-(c[(c[g>
;>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72>>2]|0)|0)>=(c[(c[g>>2]|0)+8>>2]|
0)&255)|0)<<24>>24|0)==0:0)break a;a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}default
:{}}while(0);switch(c[(c[g>>2]|0)+100>>2]|0){case 1:{if((Go(c[g>>2]|0,c[(c[g>>2]|0)+68
x3e;>2]|0,c[(c[g>>2]|0)+72>>2]|0,c[h>>2]|0,c[j>>2]|0,c[(c[g>>2]|0)+76>
;>2]|0,c[(c[g>>2]|0)+80>>2]|0)|0)<<24>>24){a[f>>0]=1;e=a[f>>0]|
0;i=k;return e|0}break}case 2:{if((Ho(c[g>>2]|0,c[(c[g>>2]|0)+68>>2]|0,c[(c[g>>2]|0)+72
x3e;>2]|0,c[h>>2]|0,c[j>>2]|0,c[(c[g>>2]|0)+76>>2]|0,c[(c[g>>2]|0)+80>
;>2]|0)|0)<<24>>24){a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}default:{}}c[(c[g>
;>2]|0)+68>>2]=c[h>>2];c[(c[g>>2]|0)+72>>2]=c[j>>2];a[f>>0]=0;e
=a[f>>0]|0;i=k;return e|0}function Eo(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+9|0;h=l+4|0;j=
l;k=l+8|0;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;if(!(c[(c[h>>2]|0)+92>>2]|0)){c[(c[h
x3e;>2]|0)+88>>2]=c[(c[h>>2]|0)+40>>2];c[(c[h>>2]|0)+92>>2]=c[(c[h>
x3e;2]|0)+88>>2];b=(c[h>>2]|0)+40|0;c[b>>2]=(c[b>>2]|0)+32}e=c[h>>2]|0;if((c[(
c[h>>2]|0)+40>>2]|0)>>>0>=(c[(c[h>>2]|0)+36>>2]|0)>>>
0){c[e+44>>2]=98;a[g>>0]=1;k=a[g>>0]|0;i=l;return k|0}c[(c[e+88>>2]|0)+12>>2]=
0;c[(c[(c[h>>2]|0)+88>>2]|0)+20>>2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+16>>
;2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+8>>2]=c[(c[h>>2]|0)+40>>2];c[(c[(c[h>>
;2]|0)+88>>2]|0)+4>>2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+28>>2]=0;c[(c[(c[h>
x3e;2]|0)+88>>2]|0)+12>>2]=d[(c[h>>2]|0)+180>>0];switch(c[j>>2]|0){case 1:{b=(
c[(c[h>>2]|0)+88>>2]|0)+12|0;c[b>>2]=c[b>>2]|8;if(a[k>>0]|0){k=(c[(c[h>
x3e;2]|0)+88>>2]|0)+12|0;c[k>>2]=c[k>>2]|32}break}case 2:{if(a[k>>0]|0){k=(c[(c[h>
x3e;2]|0)+88>>2]|0)+12|0;c[k>>2]=c[k>>2]|16}break}default:{c[(c[h>>2]|0)+44>>2
]=20;a[g>>0]=1;k=a[g>>0]|0;i=l;return k|0}}if(!(c[(c[h>>2]|0)+96>>2]|0))c[(c[h>>
;2]|0)+96>>2]=c[(c[h>>2]|0)+88>>2];c[(c[h>>2]|0)+100>>2]=c[j>>2];a[(
c[h>>2]|0)+86>>0]=1;a[(c[h>>2]|0)+87>>0]=0;a[g>>0]=0;k=a[g>>0]|0;i=l
;return k|0}function Fo(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;j=l+13|0;k=l+8|0;f=l+12|0;g=l+4|0;h=l;c[k>
;>2]=d;a[f>>0]=e;c[g>>2]=((c[(c[k>>2]|0)+40>>2]|0)-(c[(c[(c[k>>2]|0)+88
x3e;>2]|0)+8>>2]|0)|0)/4|0;if((c[g>>2]|0)<0){c[(c[k>>2]|0)+44>>2]=99;a[j>
x3e;0]=1;k=a[j>>0]|0;i=l;return k|0}if((c[g>>2]|0)>0){c[(c[(c[k>>2]|0)+88>>2]|0)+16
>>2]=c[g>>2];do if(a[f>>0]|0){f=(c[(c[k>>2]|0)+88>>2]|0)+12|0;g=c[f>>
;2]|0;if(c[(c[(c[k>>2]|0)+88>>2]|0)+12>>2]&8|0){c[f>>2]=g|16;break}else{c[f>
x3e;2]=g|32;break}}while(0);c[h>>2]=c[(c[k>>2]|0)+88>>2];c[(c[k>>2]|0)+88>>2]=
c[(c[k>>2]|0)+40>>2];d=(c[k>>2]|0)+40|0;c[d>>2]=(c[d>>2]|0)+32;c[(c[(c[k>
x3e;2]|0)+88>>2]|0)+16>>2]=0;c[(c[(c[k>>2]|0)+88>>2]|0)+8>>2]=c[(c[k>>
;2]|0)+40>>2];c[(c[h>>2]|0)+28>>2]=c[(c[k>>2]|0)+88>>2];h=(c[k>>2]|0
)+84|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}f=c[k>>2]|0;if((c[(c[k>>2]|0)+40
>>2]|0)>>>0>=(c[(c[k>>2]|0)+36>>2]|0)>>>0){c[f+44>>2]=
98;a[j>>0]=1;k=a[j>>0]|0;i=l;return k|0}else{a[f+87>>0]=0;a[j>>0]=0;k=a[j>>0]|
0;i=l;return k|0}return 0}function Go(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;C=i;i=i+80|0;s=C+72|0;t=C+68|0;u=C+64|0;k=C+60|0;D=C+56|0;l=C+52|0;m=C+48|0;n
=C+44|0;w=C+40|0;x=C+36|0;o=C+32|0;p=C+28|0;q=C+24|0;r=C+20|0;A=C+16|0;y=C+12|0;z=C+8|0;v=C+4|0;B=C;c[t>>2]=b;c[u>
;>2]=d;c[k>>2]=e;c[D>>2]=f;c[l>>2]=g;c[m>>2]=h;c[n>>2]=j;c[w>>2
]=(c[D>>2]|0)-(c[u>>2]|0);c[x>>2]=(c[l>>2]|0)-(c[k>>2]|0);if(((c[x>>
2]|0)>0?(c[l>>2]|0)>=(c[m>>2]|0):0)?(c[k>>2]|0)<=(c[n>>2]|0):0){if((c[k
x3e;>2]|0)<(c[m>>2]|0)){D=xb(c[w>>2]|0,(c[m>>2]|0)-(c[k>>2]|0)|0,c[x>>
;2]|0)|0;c[u>>2]=(c[u>>2]|0)+D;c[o>>2]=c[m>>2]>>c[c[t>>2]>>
;2];c[q>>2]=0}else{c[o>>2]=c[k>>2]>>c[c[t>>2]>>2];c[q>>2]=
c[k>>2]&(c[(c[t>>2]|0)+4>>2]|0)-1}if((c[l>>2]|0)>(c[n>>2]|0)){c[p>
;>2]=c[n>>2]>>c[c[t>>2]>>2];c[r>>2]=0}else{c[p>>2]=c[l>>
;2]>>c[c[t>>2]>>2];c[r>>2]=c[l>>2]&(c[(c[t>>2]|0)+4>>
2]|0)-1}do if((c[q>>2]|0)<=0){if(a[(c[t>>2]|0)+87>>0]|0){D=(c[t>>2]|0)+40|0;c[D>
;>2]=(c[D>>2]|0)+-4;a[(c[t>>2]|0)+87>>0]=0}}else{if((c[o>>2]|0)!=(c[p>>2]|
0)){D=xb(c[w>>2]|0,(c[(c[t>>2]|0)+4>>2]|0)-(c[q>>2]|0)|0,c[x>>2]|0)|0;c[u>
;>2]=(c[u>>2]|0)+D;c[o>>2]=(c[o>>2]|0)+1;break}a[s>>0]=0;D=a[s>>0]|0;i=C;
return D|0}while(0);a[(c[t>>2]|0)+87>>0]=(c[r>>2]|0)==0;if(a[(c[t>>2]|0)+86>>0
]|0){c[(c[(c[t>>2]|0)+88>>2]|0)+20>>2]=c[o>>2];a[(c[t>>2]|0)+86>>0]=
0}c[A>>2]=(c[p>>2]|0)-(c[o>>2]|0)+1;if(((c[(c[t>>2]|0)+40>>2]|0)+(c[A>>
;2]<<2)|0)>>>0>=(c[(c[t>>2]|0)+36>>2]|0)>>>0){c[(c[t>>
;2]|0)+44>>2]=98;a[s>>0]=1;D=a[s>>0]|0;i=C;return D|0}k=c[(c[t>>2]|0)+4>>2]|0;
l=c[w>>2]|0;if((c[w>>2]|0)>0){c[y>>2]=xb(k,l,c[x>>2]|0)|0;D=_(c[(c[t>>2]|
0)+4>>2]|0,c[w>>2]|0)|0;c[z>>2]=(D|0)%(c[x>>2]|0)|0;c[w>>2]=1}else{c[y>
x3e;2]=_(xb(k,0-l|0,c[x>>2]|0)|0,-1)|0;D=_(c[(c[t>>2]|0)+4>>2]|0,0-(c[w>>2]|0)|0)|0;c[z
x3e;>2]=(D|0)%(c[x>>2]|0)|0;c[w>>2]=-1}c[v>>2]=0-(c[x>>2]|0);c[B>>2]=c[(c
[t>>2]|0)+40>>2];while(1){if((c[A>>2]|0)<=0)break;g=c[u>>2]|0;D=c[B>>2]|0
;c[B>>2]=D+4;c[D>>2]=g;c[u>>2]=(c[u>>2]|0)+(c[y>>2]|0);c[v>>2]=(c[v
x3e;>2]|0)+(c[z>>2]|0);if((c[v>>2]|0)>=0){c[v>>2]=(c[v>>2]|0)-(c[x>>
2]|0);c[u>>2]=(c[u>>2]|0)+(c[w>>2]|0)}c[A>>2]=(c[A>>2]|0)+-1}c[(c[t>>
;2]|0)+40>>2]=c[B>>2];a[s>>0]=0;D=a[s>>0]|0;i=C;return D|0}a[s>>0]=0;D=a[s>
;>0]|0;i=C;return D|0}function Ho(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;m=i;i=i+32|0;k=m+24|0;t=m+20|0;s=m+16|0;r=m+12|0;q=m+8|0;o=m+4|0;p=m;l=m+29|0;n=m+28|0;c[k>>2]=b;c[t>
x3e;2]=d;c[s>>2]=e;c[r>>2]=f;c[q>>2]=g;c[o>>2]=h;c[p>>2]=j;a[n>>0]=a
[(c[k>>2]|0)+86>>0]|0;a[l>>0]=Go(c[k>>2]|0,c[t>>2]|0,0-(c[s>>2]|0)|0
,c[r>>2]|0,0-(c[q>>2]|0)|0,0-(c[p>>2]|0)|0,0-(c[o>>2]|0)|0)|0;if(!(a[n>>0]|0)){
t=a[l>>0]|0;i=m;return t|0}if(a[(c[k>>2]|0)+86>>0]|0){t=a[l>>0]|0;i=m;return t|0}c[(c[(c
[k>>2]|0)+88>>2]|0)+20>>2]=0-(c[(c[(c[k>>2]|0)+88>>2]|0)+20>>2]|0);t
=a[l>>0]|0;i=m;return t|0}function Io(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,x=0;t=i;i=i+64|0;h=t+49|0;j=t+44|0;x=t+40|0;w=t+36|0;v=t+32|0;u=t+28|0;n=t+24|0;o=t+20|0;p=t+16|0;m=t+12
|0;r=t+8|0;q=t+4|0;l=t;k=t+48|0;c[j>>2]=b;c[x>>2]=d;c[w>>2]=e;c[v>>2]=f;c[u>>2
]=g;c[(c[j>>2]|0)+52>>2]=(c[j>>2]|0)+184;c[(c[(c[j>>2]|0)+52>>2]|0)+16>
x3e;2]=c[(c[j>>2]|0)+68>>2];c[(c[(c[j>>2]|0)+52>>2]|0)+16+4>>2]=c[(c[j>
x3e;2]|0)+72>>2];c[(c[(c[j>>2]|0)+52>>2]|0)+8>>2]=c[x>>2];c[(c[(c[j>>
;2]|0)+52>>2]|0)+8+4>>2]=c[w>>2];c[c[(c[j>>2]|0)+52>>2]>>2]=c[v>
;>2];c[(c[(c[j>>2]|0)+52>>2]|0)+4>>2]=c[u>>2];a:while(1){c[n>>2]=c[(c[(c[
j>>2]|0)+52>>2]|0)+16+4>>2];c[o>>2]=c[(c[(c[j>>2]|0)+52>>2]|0)+8+4
x3e;>2];c[p>>2]=c[(c[(c[j>>2]|0)+52>>2]|0)+4>>2];c[m>>2]=c[c[(c[j>
x3e;2]|0)+52>>2]>>2];if((c[n>>2]|0)<=(c[p>>2]|0)){c[r>>2]=c[n>>
2];c[q>>2]=c[p>>2]}else{c[r>>2]=c[p>>2];c[q>>2]=c[n>>2]}do if((c[o
x3e;>2]|0)>=(c[r>>2]|0)?(c[o>>2]|0)<=(c[q>>2]|0):0){if((c[n>>2]|0)==(c[p
x3e;>2]|0)){x=(c[j>>2]|0)+52|0;c[x>>2]=(c[x>>2]|0)+-16;break}c[l>>2]=(c[n>>
;2]|0)<(c[p>>2]|0)?1:2;if((c[(c[j>>2]|0)+100>>2]|0)!=(c[l>>2]|0)){d=c[n>>
2]|0;if((c[l>>2]|0)==1)d=((d+(c[(c[j>>2]|0)+4>>2]|0)-1&0-(c[(c[j>>2]|0)+4>>
;2]|0))-(c[n>>2]|0)|0)>=(c[(c[j>>2]|0)+8>>2]|0);else d=(d-(c[n>>2]&0-(c[(c[j
x3e;>2]|0)+4>>2]|0))|0)>=(c[(c[j>>2]|0)+8>>2]|0);a[k>>0]=d&1;if(c[(c[j>
;>2]|0)+100>>2]|0?(Fo(c[j>>2]|0,a[k>>0]|0)|0)<<24>>24|0:0){s=22;break a}if
((Eo(c[j>>2]|0,c[l>>2]|0,a[k>>0]|0)|0)<<24>>24){s=22;break a}}d=c[j>>
;2]|0;e=c[(c[j>>2]|0)+76>>2]|0;b=c[(c[j>>2]|0)+80>>2]|0;if((c[l>>2]|0)==1)if((
Ko(d,2,41,e,b)|0)<<24>>24){s=22;break a}else break;else if((Lo(d,2,41,e,b)|0)<<24>>24){s
=22;break a}else break}else s=7;while(0);if((s|0)==7){s=0;Jo(c[(c[j>>2]|0)+52>>2]|0);x=(c[j>>2]|0)+
52|0;c[x>>2]=(c[x>>2]|0)+16}if((c[(c[j>>2]|0)+52>>2]|0)>>>0<((c[j>
;>2]|0)+184|0)>>>0){s=21;break}}if((s|0)==21){c[(c[j>>2]|0)+68>>2]=c[m>>2];c[(
c[j>>2]|0)+72>>2]=c[p>>2];a[h>>0]=0;x=a[h>>0]|0;i=t;return x|0}else if((s|0)==
22){a[h>>0]=1;x=a[h>>0]|0;i=t;return x|0}return 0}function Jo(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[(c[d>>2]|0)+32>>2]=c[(c[d>>2]|0)+16>>2];c[e>
x3e;2]=c[(c[d>>2]|0)+8>>2];a=((c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c
[d>>2]|0)+24>>2]=a;c[f>>2]=a;a=((c[c[d>>2]>>2]|0)+(c[e>>2]|0)|0)/2|0
;c[(c[d>>2]|0)+8>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16>>2]=((c[f>>2]|0)+(
c[e>>2]|0)|0)/2|0;c[(c[d>>2]|0)+32+4>>2]=c[(c[d>>2]|0)+16+4>>2];c[e>>
;2]=c[(c[d>>2]|0)+8+4>>2];a=((c[(c[d>>2]|0)+16+4>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(
c[d>>2]|0)+24+4>>2]=a;c[f>>2]=a;a=((c[(c[d>>2]|0)+4>>2]|0)+(c[e>>2]|
0)|0)/2|0;c[(c[d>>2]|0)+8+4>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16+4>>2]=((c[f>
x3e;2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function Ko(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,t=0,u=0,v=0,w=0,x=0,y=0;y=i;i=i+64|0;j=y+54|0;k=y+48|0;l=y+44|0;m=y+40|0;n=y+36|0;o=y+32|0;w=y+28|0;x=y+24|0;
q=y+20|0;s=y+16|0;r=y+12|0;t=y+52|0;p=y+8|0;u=y+4|0;v=y;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>
;2]=g;c[o>>2]=h;c[p>>2]=c[(c[k>>2]|0)+52>>2];c[w>>2]=c[(c[p>>2]|0)+(
c[l>>2]<<3)+4>>2];c[x>>2]=c[(c[p>>2]|0)+4>>2];c[v>>2]=c[(c
[k>>2]|0)+40>>2];a:do if((c[x>>2]|0)>=(c[n>>2]|0)?(c[w>>2]|0)<=(c[o
x3e;>2]|0):0){c[s>>2]=c[x>>2]&0-(c[(c[k>>2]|0)+4>>2]|0);if((c[s>>2]|
0)>(c[o>>2]|0))c[s>>2]=c[o>>2];c[r>>2]=c[n>>2];if((c[w>>2]|0)
x3e;=(c[n>>2]|0)){c[q>>2]=(c[w>>2]|0)+(c[(c[k>>2]|0)+4>>2]|0)-1&0-(c[(c[k
>>2]|0)+4>>2]|0);b[t>>1]=c[w>>2]&(c[(c[k>>2]|0)+4>>2]|0)-1;c[r
x3e;>2]=c[q>>2];if(!(b[t>>1]|0)){if(a[(c[k>>2]|0)+87>>0]|0){c[v>>2]=(c[v
x3e;>2]|0)+-4;a[(c[k>>2]|0)+87>>0]=0}f=c[(c[p>>2]|0)+(c[l>>2]<<3)>
x3e;2]|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[q>>2]=(c[q>>2]|0)+(c[(c[k>
x3e;2]|0)+4>>2]|0)}}else c[q>>2]=c[n>>2];if(a[(c[k>>2]|0)+86>>0]|0){c[(c[(c[k
x3e;>2]|0)+88>>2]|0)+20>>2]=c[r>>2]>>c[c[k>>2]>>2];a[(c[k>
x3e;2]|0)+86>>0]=0}if((c[s>>2]|0)>=(c[q>>2]|0)){if(((c[v>>2]|0)+((c[s>>2]|
0)-(c[q>>2]|0)>>c[c[k>>2]>>2]<<2)+4|0)>>>0>=(c[(c[k>
x3e;2]|0)+36>>2]|0)>>>0){c[(c[k>>2]|0)+40>>2]=c[v>>2];c[(c[k>>2
]|0)+44>>2]=98;a[j>>0]=1;x=a[j>>0]|0;i=y;return x|0}c[u>>2]=c[p>>2];while(1){if
((c[p>>2]|0)>>>0<(c[u>>2]|0)>>>0)break a;if((c[q>>2]|0)>(c
[s>>2]|0))break a;a[(c[k>>2]|0)+87>>0]=0;c[x>>2]=c[(c[p>>2]|0)+4>>2];
if((c[x>>2]|0)>(c[q>>2]|0)){c[w>>2]=c[(c[p>>2]|0)+(c[l>>2]<<3)+
4>>2];if(((c[x>>2]|0)-(c[w>>2]|0)|0)>=(c[(c[k>>2]|0)+16>>2]|0)){Va[c[m>
;>2]&63](c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[l>>2]<<3);continue}else{f
=_((c[c[p>>2]>>2]|0)-(c[(c[p>>2]|0)+(c[l>>2]<<3)>>2]|0)|0,(c[q>
x3e;2]|0)-(c[w>>2]|0)|0)|0;f=(c[(c[p>>2]|0)+(c[l>>2]<<3)>>2]|0)+((f|0)/((c[x
x3e;>2]|0)-(c[w>>2]|0)|0)|0)|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[p>>2]=(
c[p>>2]|0)+(0-(c[l>>2]|0)<<3);c[q>>2]=(c[q>>2]|0)+(c[(c[k>>2]|0)+4
x3e;>2]|0);continue}}else{if((c[x>>2]|0)==(c[q>>2]|0)){a[(c[k>>2]|0)+87>>0]=1;f=c[c
[p>>2]>>2]|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[q>>2]=(c[q>>
;2]|0)+(c[(c[k>>2]|0)+4>>2]|0)}c[p>>2]=(c[p>>2]|0)+(0-(c[l>>2]|0)<<3
);continue}}}}while(0);c[(c[k>>2]|0)+40>>2]=c[v>>2];x=(c[k>>2]|0)+52|0;c[x>>2]=(
c[x>>2]|0)+(0-(c[l>>2]|0)<<3);a[j>>0]=0;x=a[j>>0]|0;i=y;return x|0}function Lo
(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;q=i;i=i+32|0;h=q+20|0;j=q+16|0;k=q+12|0;l=q+8|
0;m=q+4|0;n=q;p=q+25|0;o=q+24|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2
]=g;c[n>>2]=c[(c[h>>2]|0)+52>>2];c[(c[n>>2]|0)+4>>2]=0-(c[(c[n>>2]|0
)+4>>2]|0);c[(c[n>>2]|0)+8+4>>2]=0-(c[(c[n>>2]|0)+8+4>>2]|0);c[(c[n>>
;2]|0)+16+4>>2]=0-(c[(c[n>>2]|0)+16+4>>2]|0);if((c[j>>2]|0)>2)c[(c[n>>2]|
0)+24+4>>2]=0-(c[(c[n>>2]|0)+24+4>>2]|0);a[o>>0]=a[(c[h>>2]|0)+86>>0
]|0;a[p>>0]=Ko(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,0-(c[m>>2]|0)|0,0-(c[l>>
;2]|0)|0)|0;if(a[o>>0]|0?(a[(c[h>>2]|0)+86>>0]|0)==0:0)c[(c[(c[h>>2]|0)+88>>2]|
0)+20>>2]=0-(c[(c[(c[h>>2]|0)+88>>2]|0)+20>>2]|0);c[(c[n>>2]|0)+4>>2
]=0-(c[(c[n>>2]|0)+4>>2]|0);i=q;return a[p>>0]|0}function Mo(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;y=i;i=i+80|0;k=y+69|
0;l=y+64|0;E=y+60|0;D=y+56|0;C=y+52|0;B=y+48|0;A=y+44|0;z=y+40|0;p=y+36|0;q=y+32|0;r=y+28|0;s=y+24|0;o=y+20|0;v=y+16|0;t=y+12|0;
w=y+8|0;u=y+4|0;n=y;m=y+68|0;c[l>>2]=b;c[E>>2]=d;c[D>>2]=e;c[C>>2]=f;c[B>>2]=g
;c[A>>2]=h;c[z>>2]=j;c[(c[l>>2]|0)+52>>2]=(c[l>>2]|0)+184;c[(c[(c[l>>
;2]|0)+52>>2]|0)+24>>2]=c[(c[l>>2]|0)+68>>2];c[(c[(c[l>>2]|0)+52>>2]|
0)+24+4>>2]=c[(c[l>>2]|0)+72>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+16>>2]=c
[E>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+16+4>>2]=c[D>>2];c[(c[(c[l>>2]|0)+
52>>2]|0)+8>>2]=c[C>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+8+4>>2]=c[B>
x3e;2];c[c[(c[l>>2]|0)+52>>2]>>2]=c[A>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+
4>>2]=c[z>>2];a:while(1){c[p>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+24+4>>2];
c[q>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+16+4>>2];c[r>>2]=c[(c[(c[l>>2]|0)+
52>>2]|0)+8+4>>2];c[s>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+4>>2];c[o>
x3e;2]=c[c[(c[l>>2]|0)+52>>2]>>2];if((c[p>>2]|0)<=(c[s>>2]|0)){c[v>
x3e;2]=c[p>>2];c[t>>2]=c[s>>2]}else{c[v>>2]=c[s>>2];c[t>>2]=c[p>
;>2]}if((c[q>>2]|0)<=(c[r>>2]|0)){c[w>>2]=c[q>>2];c[u>>2]=c[r>
x3e;2]}else{c[w>>2]=c[r>>2];c[u>>2]=c[q>>2]}do if((c[w>>2]|0)>=(c[v>
x3e;2]|0)?(c[u>>2]|0)<=(c[t>>2]|0):0){if((c[p>>2]|0)==(c[s>>2]|0)){E=(c[l>>
;2]|0)+52|0;c[E>>2]=(c[E>>2]|0)+-24;break}c[n>>2]=(c[p>>2]|0)<=(c[s>>2]|0
)?1:2;if((c[(c[l>>2]|0)+100>>2]|0)!=(c[n>>2]|0)){d=c[p>>2]|0;if((c[n>>2]|0)==1
)d=((d+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[l>>2]|0)+4>>2]|0))-(c[p>>2]|0)|0
)>=(c[(c[l>>2]|0)+8>>2]|0);else d=(d-(c[p>>2]&0-(c[(c[l>>2]|0)+4>>2]|
0))|0)>=(c[(c[l>>2]|0)+8>>2]|0);a[m>>0]=d&1;if(c[(c[l>>2]|0)+100>>2]|
0?(Fo(c[l>>2]|0,a[m>>0]|0)|0)<<24>>24|0:0){x=25;break a}if((Eo(c[l>>2]|0,c[n
x3e;>2]|0,a[m>>0]|0)|0)<<24>>24){x=25;break a}}d=c[l>>2]|0;f=c[(c[l>>2]|0
)+76>>2]|0;e=c[(c[l>>2]|0)+80>>2]|0;if((c[n>>2]|0)==1)if((Ko(d,3,42,f,e)|0)<<24
>>24){x=25;break a}else break;else if((Lo(d,3,42,f,e)|0)<<24>>24){x=25;break a}else break}else x=10
;while(0);if((x|0)==10){x=0;No(c[(c[l>>2]|0)+52>>2]|0);E=(c[l>>2]|0)+52|0;c[E>>2]=(c[E
x3e;>2]|0)+24}if((c[(c[l>>2]|0)+52>>2]|0)>>>0<((c[l>>2]|0)+184|0)>
x3e;>0){x=24;break}}if((x|0)==24){c[(c[l>>2]|0)+68>>2]=c[o>>2];c[(c[l>>2]|0)+72>
;>2]=c[s>>2];a[k>>0]=0;E=a[k>>0]|0;i=y;return E|0}else if((x|0)==25){a[k>>0]=1;E=a[
k>>0]|0;i=y;return E|0}return 0}function No(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;f=b+12|0;e=b+8|
0;g=b+4|0;h=b;c[d>>2]=a;c[(c[d>>2]|0)+48>>2]=c[(c[d>>2]|0)+24>>2];c[g>>
;2]=c[(c[d>>2]|0)+8>>2];c[h>>2]=c[(c[d>>2]|0)+16>>2];a=(c[c[d>>2]>
;>2]|0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+8>>2]=a;a=(c[(c[d>
x3e;2]|0)+24>>2]|0)+(c[h>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>>2]|0)+40>>2]=
a;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1>>1;a=(c[f>>2]|0)+(c[g>>2]|0)+1
x3e;>1;c[f>>2]=a;c[(c[d>>2]|0)+16>>2]=a;a=(c[e>>2]|0)+(c[g>>2]|0)+1>
x3e;1;c[e>>2]=a;c[(c[d>>2]|0)+32>>2]=a;c[(c[d>>2]|0)+24>>2]=(c[f>>2]|
0)+(c[e>>2]|0)+1>>1;c[(c[d>>2]|0)+48+4>>2]=c[(c[d>>2]|0)+24+4>>2];c[
g>>2]=c[(c[d>>2]|0)+8+4>>2];c[h>>2]=c[(c[d>>2]|0)+16+4>>2];a=(c[(c[d
>>2]|0)+4>>2]|0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+8+4>
x3e;2]=a;a=(c[(c[d>>2]|0)+24+4>>2]|0)+(c[h>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>
x3e;2]|0)+40+4>>2]=a;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1>>1;a=(c[f>>2]|
0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+16+4>>2]=a;a=(c[e>>2]|0)+(
c[g>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>>2]|0)+32+4>>2]=a;c[(c[d>>2]|0)+24+
4>>2]=(c[f>>2]|0)+(c[e>>2]|0)+1>>1;i=b;return}function Oo(d){d=d|0;var f=0,g=0,h=0,j=0,k
=0,l=0,m=0;m=i;i=i+32|0;f=m+18|0;g=m+12|0;h=m+8|0;l=m+4|0;j=m+16|0;k=m;c[g>>2]=d;b[j>>1]=b[(c[g>>2
]|0)+84>>1]|0;c[k>>2]=c[(c[g>>2]|0)+92>>2];a:do if((e[j>>1]|0|0)>1&(
c[k>>2]|0)!=0){while(1){if((e[j>>1]|0|0)<=0)break a;d=c[k>>2]|0;if((e[j>>1]|0|0)>
;1)c[(c[k>>2]|0)+4>>2]=(c[d+8>>2]|0)+(c[(c[k>>2]|0)+16>>2]<<2);else
c[d+4>>2]=0;d=c[(c[k>>2]|0)+20>>2]|0;if(c[(c[k>>2]|0)+12>>2]&8|0){c[h>
;>2]=d;c[l>>2]=(c[(c[k>>2]|0)+20>>2]|0)+(c[(c[k>>2]|0)+16>>2]|0)-1}else{c
[h>>2]=d-(c[(c[k>>2]|0)+16>>2]|0)+1;c[l>>2]=c[(c[k>>2]|0)+20>>2];c[(
c[k>>2]|0)+20>>2]=c[h>>2];d=(c[k>>2]|0)+8|0;c[d>>2]=(c[d>>2]|0)+((c[(
c[k>>2]|0)+16>>2]|0)-1<<2)}if((Po(c[g>>2]|0,c[h>>2]|0)|0)<<24>
x3e;24|0)break;if((Po(c[g>>2]|0,(c[l>>2]|0)+1|0)|0)<<24>>24|0)break;c[k>>2]=c[(
c[k>>2]|0)+4>>2];b[j>>1]=(b[j>>1]|0)+-1<<16>>16}a[f>>0]=1;
l=a[f>>0]|0;i=m;return l|0}else c[(c[g>>2]|0)+92>>2]=0;while(0);a[f>>0]=0;l=a[f>>
;0]|0;i=m;return l|0}function Po(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;h=l+20|0;j=l+16|0;k=l+12|0;g=l+8|
0;f=l+4|0;e=l;c[j>>2]=b;c[k>>2]=d;c[e>>2]=(c[(c[j>>2]|0)+48>>2]|0)-1;c[g>
x3e;2]=(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j>>2]|0)+48>>2]|0)<<2);while(1){if((c
[e>>2]|0)>=0)d=(c[k>>2]|0)<(c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]|
0);else d=0;b=c[e>>2]|0;if(!d)break;c[e>>2]=b+-1}if((b|0)>=0?((c[e>>2]|0)>=0?(c[k>
x3e;2]|0)>(c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]|0):0):0)do{c[f>>2]=c[(c[g>
x3e;2]|0)+(c[e>>2]<<2)>>2];c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]=
c[k>>2];c[k>>2]=c[f>>2];c[e>>2]=(c[e>>2]|0)+-1}while((c[e>>2]|0)>
;=0);do if((c[e>>2]|0)<0){b=(c[j>>2]|0)+36|0;c[b>>2]=(c[b>>2]|0)+-4;b=c[j>>
;2]|0;if((c[(c[j>>2]|0)+36>>2]|0)>>>0>(c[(c[j>>2]|0)+40>>2]|0)>
x3e;>0){g=b+48|0;c[g>>2]=(c[g>>2]|0)+1;c[(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j>
x3e;2]|0)+48>>2]|0)<<2)>>2]=c[k>>2];break}c[b+44>>2]=98;a[h>>0]=1;k=
a[h>>0]|0;i=l;return k|0}while(0);a[h>>0]=0;k=a[h>>0]|0;i=l;return k|0}function Qo(d){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;D=i;i=i+80|0;h=D+72|0;j=D+52|0
;z=D+70|0;A=D+68|0;B=D+66|0;k=D+48|0;n=D+44|0;l=D+40|0;m=D+36|0;g=D+64|0;u=D+62|0;f=D+60|0;e=D+58|0;r=D+56|0;w=D+32|0;x=D+28|0;y
=D+24|0;s=D+20|0;t=D+16|0;v=D+12|0;o=D+8|0;p=D+4|0;q=D;c[j>>2]=d;Ro(v);Ro(o);Ro(p);c[k>>2]=c[(c[j>>
;2]|0)+92>>2];b[u>>1]=c[(c[j>>2]|0)+76>>2]>>c[c[j>>2]>>2];
b[g>>1]=c[(c[j>>2]|0)+80>>2]>>c[c[j>>2]>>2];while(1){if(!(c[k>
x3e;2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];b[e>>1]=c[(c[k>>2]|0)+20>>
;2];b[f>>1]=(c[(c[k>>2]|0)+20>>2]|0)+(c[(c[k>>2]|0)+16>>2]|0)-1;if((b[g>
x3e;1]|0)>(b[e>>1]|0))b[g>>1]=b[e>>1]|0;if((b[u>>1]|0)<(b[f>>1]|0))b
[u>>1]=b[f>>1]|0;c[c[k>>2]>>2]=0;So(v,c[k>>2]|0);c[k>>2]=c[n>
x3e;2]}e=c[j>>2]|0;if(!(c[(c[j>>2]|0)+48>>2]|0)){c[e+44>>2]=20;a[h>>0]=1;C=a[h
>>0]|0;i=D;return C|0}Ua[c[e+164>>2]&31](c[j>>2]|0,g,u);c[k>>2]=c[v>>2];while
(1){if(!(c[k>>2]|0))break;c[(c[k>>2]|0)+24>>2]=(c[(c[k>>2]|0)+20>>2]|0)-(b[g
x3e;>1]|0)&65535;c[k>>2]=c[(c[k>>2]|0)+4>>2]}b[z>>1]=b[g>>1]|0;b[B
x3e;>1]=0;if((c[(c[j>>2]|0)+48>>2]|0)>0?(c[(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j
>>2]|0)+48>>2]|0)<<2)>>2]|0)==(b[g>>1]|0):0){g=(c[j>>2]|0)+48|0;c[g
x3e;>2]=(c[g>>2]|0)+-1}a:while(1){if((c[(c[j>>2]|0)+48>>2]|0)<=0)break;c[k>>2]=
c[v>>2];while(1){if(!(c[k>>2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];g=(c[k>
;>2]|0)+24|0;c[g>>2]=(c[g>>2]|0)-(b[B>>1]|0);do if(!(c[(c[k>>2]|0)+24>>2]|
0)){To(v,c[k>>2]|0);e=c[k>>2]|0;if(c[(c[k>>2]|0)+12>>2]&8|0){So(o,e);break}else{So(
p,e);break}}while(0);c[k>>2]=c[n>>2]}Uo(o);Uo(p);d=(c[j>>2]|0)+48|0;g=c[d>>2]|0;c[d>
;>2]=g+-1;b[A>>1]=c[(c[(c[j>>2]|0)+32>>2]|0)+(0-g<<2)>>2];b[B>>
1]=(b[A>>1]|0)-(b[z>>1]|0);while(1){if((b[z>>1]|0)>=(b[A>>1]|0))break;b[r>>
;1]=0;c[l>>2]=c[o>>2];c[m>>2]=c[p>>2];while(1){if(!(c[l>>2]|0))break;c[w>
x3e;2]=c[c[l>>2]>>2];c[x>>2]=c[c[m>>2]>>2];if((c[w>>2]|0)>(c[x
x3e;>2]|0)){c[y>>2]=c[w>>2];c[w>>2]=c[x>>2];c[x>>2]=c[y>>2]}c[s
>>2]=c[w>>2]&0-(c[(c[j>>2]|0)+4>>2]|0);c[t>>2]=(c[x>>2]|0)+(c[(
c[j>>2]|0)+4>>2]|0)-1&0-(c[(c[j>>2]|0)+4>>2]|0);do if((((c[x>>2]|0)-(c[w
x3e;>2]|0)|0)<=(c[(c[j>>2]|0)+4>>2]|0)?(c[s>>2]|0)!=(c[w>>2]|0):0)?(c[t>
x3e;2]|0)!=(c[x>>2]|0):0){if((c[s>>2]|0)<=(c[t>>2]|0)?(c[t>>2]|0)!=((c[s>>
;2]|0)+(c[(c[j>>2]|0)+4>>2]|0)|0):0){C=37;break}c[q>>2]=c[(c[l>>2]|0)+12>>2]
x26;7;if((c[q>>2]|0)!=2){c[c[l>>2]>>2]=c[w>>2];c[c[m>>2]>>2]=c[x>
;>2];c[(c[l>>2]|0)+24>>2]=1;b[r>>1]=(b[r>>1]|0)+1<<16>>16}}else
C=37;while(0);if((C|0)==37){C=0;Xa[c[(c[j>>2]|0)+168>>2]&7](c[j>>2]|0,b[z>>1]|0,c[
w>>2]|0,c[x>>2]|0,c[l>>2]|0,c[m>>2]|0)}c[l>>2]=c[(c[l>>2]|0)+4>
x3e;2];c[m>>2]=c[(c[m>>2]|0)+4>>2]}b:do if((b[r>>1]|0)>0){c[l>>2]=c[o>
;>2];c[m>>2]=c[p>>2];while(1){if(!(c[l>>2]|0))break b;if(c[(c[l>>2]|0)+24>>
;2]|0){c[(c[l>>2]|0)+24>>2]=0;Xa[c[(c[j>>2]|0)+172>>2]&7](c[j>>2]|0,b[z
x3e;>1]|0,c[c[l>>2]>>2]|0,c[c[m>>2]>>2]|0,c[l>>2]|0,c[m>>2]|0)}
c[l>>2]=c[(c[l>>2]|0)+4>>2];c[m>>2]=c[(c[m>>2]|0)+4>>2]}}while(0);Va
[c[(c[j>>2]|0)+176>>2]&63](c[j>>2]|0);b[z>>1]=(b[z>>1]|0)+1<<16
>>16;if((b[z>>1]|0)>=(b[A>>1]|0))continue;Uo(o);Uo(p)}c[k>>2]=c[o>>2];while
(1){if(!(c[k>>2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];if(!(c[(c[k>>2]|0)+16>
;>2]|0))To(o,c[k>>2]|0);c[k>>2]=c[n>>2]}c[k>>2]=c[p>>2];while(1){if(!(c[k
>>2]|0))continue a;c[n>>2]=c[(c[k>>2]|0)+4>>2];if(!(c[(c[k>>2]|0)+16>>
;2]|0))To(p,c[k>>2]|0);c[k>>2]=c[n>>2]}}while(1){if((b[z>>1]|0)>(b[u>>1]|
0))break;Va[c[(c[j>>2]|0)+176>>2]&63](c[j>>2]|0);b[z>>1]=(b[z>>1]|0)+1<
;<16>>16}a[h>>0]=0;C=a[h>>0]|0;i=D;return C|0}function Ro(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]=0;i=b;return}function So(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h
=i;i=i+32|0;j=h+16|0;d=h+12|0;f=h+8|0;e=h+4|0;g=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=c[j>>2];c[
e>>2]=c[c[f>>2]>>2];c[g>>2]=c[c[d>>2]>>2];while(1){if(!(c[e>>
;2]|0))break;if((c[g>>2]|0)<(c[c[e>>2]>>2]|0))break;c[f>>2]=(c[e>>2]|0)+4
;c[e>>2]=c[c[f>>2]>>2]}c[(c[d>>2]|0)+4>>2]=c[e>>2];c[c[f>>
2]>>2]=c[d>>2];i=h;return}function To(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;j=h+12|0;d=h
+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=c[j>>2];c[e>>2]=c[c[f>>
2]>>2];while(1){if(!(c[e>>2]|0)){g=6;break}a=(c[e>>2]|0)+4|0;if((c[e>>2]|0)==(c[d>
x3e;2]|0))break;c[f>>2]=a;c[e>>2]=c[c[f>>2]>>2]}if((g|0)==6){i=h;return}c[c[f>>
;2]>>2]=c[a>>2];i=h;return}function Uo(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;f=g+8|0;d=g+4|
0;e=g;c[b>>2]=a;c[d>>2]=c[c[b>>2]>>2];while(1){if(!(c[d>>2]|0))break;c[c[d>
;>2]>>2]=c[c[(c[d>>2]|0)+8>>2]>>2];a=(c[d>>2]|0)+8|0;c[a>>2]=(c
[a>>2]|0)+((c[(c[d>>2]|0)+12>>2]&8|0?1:-1)<<2);a=(c[d>>2]|0)+16|0;c[a>
;>2]=(c[a>>2]|0)+-1;c[d>>2]=c[(c[d>>2]|0)+4>>2]}c[f>>2]=c[b>>2];
c[d>>2]=c[c[f>>2]>>2];if(!(c[d>>2]|0)){i=g;return}c[e>>2]=c[(c[d>>2]|
0)+4>>2];while(1){if(!(c[e>>2]|0)){b=11;break}if((c[c[d>>2]>>2]|0)<=(c[c[e>>
;2]>>2]|0)){c[f>>2]=(c[d>>2]|0)+4;c[d>>2]=c[c[f>>2]>>2];if(!(c[d>
;>2]|0)){b=11;break}}else{c[c[f>>2]>>2]=c[e>>2];c[(c[d>>2]|0)+4>>2]=c[(c[
e>>2]|0)+4>>2];c[(c[e>>2]|0)+4>>2]=c[d>>2];c[f>>2]=c[b>>2];
c[d>>2]=c[c[f>>2]>>2]}c[e>>2]=c[(c[d>>2]|0)+4>>2]}if((b|0)==11){i=g;
return}}function Vo(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>
x3e;2]=b;c[f>>2]=d;c[h>>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>
x3e;2];i=e;return}function Wo(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;u=i;i=i+48|0;l=u+32|0;m=u+36|0;n=u+28|0;o=u+24|0;w=u+20|0;v=u+16|0;q=u+12|0;r=u+8|0;p=u+4|0;s=u+38|0;t=u;c[l>>2]=e;
b[m>>1]=f;c[n>>2]=g;c[o>>2]=h;c[w>>2]=j;c[v>>2]=k;c[w>>2]=c[w>
x3e;2];c[v>>2]=c[v>>2];if(((c[o>>2]|0)-(c[n>>2]|0)|0)>=(c[(c[l>>2]|0)+4
x3e;>2]|0)){i=u;return}c[q>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[l
>>2]|0)+4>>2]|0);c[r>>2]=c[o>>2]&0-(c[(c[l>>2]|0)+4>>2]|0);if((
c[q>>2]|0)!=(c[r>>2]|0)){i=u;return}c[p>>2]=(c[(c[l>>2]|0)+60>>2]|0)+(b[m>
;>1]>>3);a[s>>0]=128>>(b[m>>1]&7);c[q>>2]=c[q>>2]>>
;c[c[l>>2]>>2];if((c[q>>2]|0)<0){i=u;return}if((c[q>>2]|0)>=(c[(c[l>>
;2]|0)+104>>2]|0)){i=u;return}c[t>>2]=(c[p>>2]|0)+(0-(_(c[q>>2]|0,c[(c[l>>2]|0
)+104+8>>2]|0)|0));if((c[(c[l>>2]|0)+104+8>>2]|0)>0){w=_((c[(c[l>>2]|0)+104>
x3e;2]|0)-1|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[t>>2]=(c[t>>2]|0)+w}w=c[t>>2]|0;a
[w>>0]=d[w>>0]|d[s>>0];i=u;return}function Xo(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;x=i;i=i+48|0;l=x+36|0;m=x+40|0;n=x+32|0;o=x+28|0;p=x+24|0;q=x+20|0;t=x+16|0
;u=x+12|0;w=x+8|0;r=x+4|0;v=x+42|0;s=x;c[l>>2]=e;b[m>>1]=f;c[n>>2]=g;c[o>>2]=h;c[p>
x3e;2]=j;c[q>>2]=k;c[t>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[
l>>2]|0)+4>>2]|0);c[u>>2]=c[o>>2]&0-(c[(c[l>>2]|0)+4>>2]|0);c[w
>>2]=c[t>>2];if((c[t>>2]|0)>(c[u>>2]|0)){c[s>>2]=c[(c[p>>2]|0)+
12>>2]&7;if((c[t>>2]|0)!=((c[u>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)|0)){i=x;return
}a:do switch(c[s>>2]|0){case 0:{c[w>>2]=c[u>>2];break}case 4:{c[w>>2]=(((c[n>>
2]|0)+(c[o>>2]|0)-1|0)/2|0)+(c[(c[l>>2]|0)+8>>2]|0)&0-(c[(c[l>>2]|0)+4>>2
]|0);break}case 5:case 1:{if((c[(c[p>>2]|0)+28>>2]|0)==(c[q>>2]|0)?(c[(c[p>>2]|0)+16>
;>2]|0)<=0:0){if(!(c[(c[p>>2]|0)+12>>2]&16)){i=x;return}if(((c[o>>2]|0)-(c[n>
x3e;2]|0)|0)<(c[(c[l>>2]|0)+8>>2]|0)){i=x;return}}if((c[(c[q>>2]|0)+28>>2]|0)==(c[p
>>2]|0)?(c[(c[p>>2]|0)+20>>2]|0)==(b[m>>1]|0):0){if(!(c[(c[p>>2]|0)+12>
x3e;2]&32)){i=x;return}if(((c[o>>2]|0)-(c[n>>2]|0)|0)<(c[(c[l>>2]|0)+8>>2]|0)){
i=x;return}}if((c[s>>2]|0)==1){c[w>>2]=c[u>>2];break a}else{c[w>>2]=(((c[n>>2]|
0)+(c[o>>2]|0)-1|0)/2|0)+(c[(c[l>>2]|0)+8>>2]|0)&0-(c[(c[l>>2]|0)+4>>2]|0
);break a}}default:{i=x;return}}while(0);c[t>>2]=(c[w>>2]|0)==(c[t>>2]|0)?c[u>>2]|0:c[t
x3e;>2]|0;c[t>>2]=c[t>>2]>>c[c[l>>2]>>2];c[r>>2]=(c[(c[l>
x3e;2]|0)+60>>2]|0)+(b[m>>1]>>3);a[v>>0]=128>>(b[m>>1]&7);f=_(c
[t>>2]|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[r>>2]=(c[r>>2]|0)+(0-f);if((c[(c[l>
;>2]|0)+104+8>>2]|0)>0){f=_((c[(c[l>>2]|0)+104>>2]|0)-1|0,c[(c[l>>2]|0)+104+8
x3e;>2]|0)|0;c[r>>2]=(c[r>>2]|0)+f}if(((c[t>>2]|0)>=0?(c[t>>2]|0)<(c[(c[l
>>2]|0)+104>>2]|0):0)?d[c[r>>2]>>0]&d[v>>0]|0:0){i=x;return}}c[r>>
;2]=(c[(c[l>>2]|0)+60>>2]|0)+(b[m>>1]>>3);a[v>>0]=128>>(b[m>>
;1]&7);c[t>>2]=c[w>>2]>>c[c[l>>2]>>2];if((c[t>>2]|0)<0){i=
x;return}if((c[t>>2]|0)>=(c[(c[l>>2]|0)+104>>2]|0)){i=x;return}f=_(c[t>>2]|0,c[(c[l
>>2]|0)+104+8>>2]|0)|0;c[r>>2]=(c[r>>2]|0)+(0-f);if((c[(c[l>>2]|0)+104+8>
x3e;2]|0)>0){f=_((c[(c[l>>2]|0)+104>>2]|0)-1|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[r>
;>2]=(c[r>>2]|0)+f}f=c[r>>2]|0;a[f>>0]=d[f>>0]|d[v>>0];i=x;return}function
Yo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return}function Zo(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]|0)+8>>2];Fb(c[e
x3e;>2]|0,c[d>>2]|0);c[d>>2]=0;i=b;return}function _o(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)+4>>2];Ua[c[(c[(c[(c[e>>2]|0)+20>>2]|
0)+56>>2]|0)+8>>2]&31](c[(c[e>>2]|0)+60>>2]|0,c[(c[d>>2]|0)+172>>
;2]|0,c[(c[d>>2]|0)+176>>2]|0);i=b;return 0}function $o(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;w=i;i=i+128|0;j=w+112|0;k=w+108|0;l=w+104|0;m=w+100|0;h=w+96|0;p=w+92|0;s=w+88|0;o=
w+72|0;v=w+64|0;q=w+60|0;u=w+56|0;n=w+52|0;r=w+48|0;t=w;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[h>>
;2]=g;if((c[(c[l>>2]|0)+72>>2]|0)==(c[(c[k>>2]|0)+24>>2]|0)){f=c[(c[k>>2]|0)+20
>>2]|0;if((c[m>>2]|0)!=2){if((f|0)==4028){c[j>>2]=19;v=c[j>>2]|0;i=w;return v|0}}else if
((f|0)==4088){c[j>>2]=19;v=c[j>>2]|0;i=w;return v|0}c[s>>2]=(c[l>>2]|0)+108;if(c[h>
x3e;2]|0)Nb(c[s>>2]|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0);_d(c[s>>
;2]|0,o);c[o>>2]=c[o>>2]&-64;c[o+4>>2]=c[o+4>>2]&-64;c[o+8>>2]=(c[o+
8>>2]|0)+63&-64;c[o+12>>2]=(c[o+12>>2]|0)+63&-64;c[v>>2]=(c[o+8>>2]|
0)-(c[o>>2]|0)>>6;c[q>>2]=(c[o+12>>2]|0)-(c[o+4>>2]|0)>>6;c[n>
x3e;2]=(c[l>>2]|0)+76;c[r>>2]=c[(c[k>>2]|0)+8>>2];if(c[(c[(c[l>>2]|0)+156>
;>2]|0)+4>>2]&1|0){Fb(c[r>>2]|0,c[(c[n>>2]|0)+12>>2]|0);c[(c[n>>2]|0
)+12>>2]=0;h=(c[(c[l>>2]|0)+156>>2]|0)+4|0;c[h>>2]=c[h>>2]&-2}f=c[v>
x3e;2]|0;if(c[m>>2]&2|0){c[u>>2]=(f+15|0)>>>4<<1;a[(c[n>>2]|0)+18>
;>0]=1}else{c[u>>2]=f+3&-4;a[(c[n>>2]|0)+18>>0]=2;b[(c[n>>2]|0)+16>>
1]=256}c[(c[n>>2]|0)+4>>2]=c[v>>2];c[c[n>>2]>>2]=c[q>>2];c[(c[n>
;>2]|0)+8>>2]=c[u>>2];v=hc(c[r>>2]|0,c[q>>2]|0,0,c[u>>2]|0,0,p)|0;c[(c[n
x3e;>2]|0)+12>>2]=v;if(!(c[p>>2]|0)){v=(c[(c[l>>2]|0)+156>>2]|0)+4|0;c[v>>
;2]=c[v>>2]|1;Nb(c[s>>2]|0,0-(c[o>>2]|0)|0,0-(c[o+4>>2]|0)|0);c[t>>2]=c[n>
;>2];c[t+4>>2]=c[s>>2];c[t+8>>2]=0;if((a[(c[n>>2]|0)+18>>0]|0)==2){v=t+8|
0;c[v>>2]=c[v>>2]|1}c[p>>2]=Ya[c[(c[k>>2]|0)+64>>2]&127](c[(c[k>>
;2]|0)+60>>2]|0,t)|0;Nb(c[s>>2]|0,c[o>>2]|0,c[o+4>>2]|0);if(!(c[p>>2]|0)){c[(c
[l>>2]|0)+72>>2]=1651078259;c[(c[l>>2]|0)+100>>2]=c[o>>2]>>6;c[(c[l
x3e;>2]|0)+104>>2]=c[o+12>>2]>>6}}}else c[p>>2]=6;c[j>>2]=c[p>>
2];v=c[j>>2]|0;i=w;return v|0}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,l=0;k=i;i=i+32|0;l=
k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[l>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>
;2]=0;if((c[(c[f>>2]|0)+72>>2]|0)!=(c[(c[l>>2]|0)+24>>2]|0)){c[j>>2]=6;l=c[j
x3e;>2]|0;i=k;return l|0}if(c[g>>2]|0)Kb((c[f>>2]|0)+108|0,c[g>>2]|0);if(!(c[h>>2]|
0)){l=c[j>>2]|0;i=k;return l|0}Nb((c[f>>2]|0)+108|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|
0)+4>>2]|0);l=c[j>>2]|0;i=k;return l|0}function bp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0
;h=g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[e>>2]=b;c[f>>2]=d;b=c[f>>2]|0;c[b>>2]=0;c[b+4
>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;if((c[(c[e>>2]|0)+72>>2]|0)!=(c[(c[h>>
;2]|0)+24>>2]|0)){i=g;return}_d((c[e>>2]|0)+108|0,c[f>>2]|0);i=g;return}function cp(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=Oa
[c[(c[(c[(c[h>>2]|0)+20>>2]|0)+56>>2]|0)+12>>2]&63](c[(c[h>>2]|0)+60>
;>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function dp(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[c[e>>2]>>
2]=0;c[g>>2]=bc(c[d>>2]|0,20,f)|0;if(c[f>>2]|0){g=c[f>>2]|0;i=h;return g|0}c[(c[g>
x3e;2]|0)+12>>2]=c[d>>2];c[c[e>>2]>>2]=c[g>>2];g=c[f>>2]|0;i=h;return
g|0}function ep(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;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>
;>2]=a;c[e>>2]=b;c[f>>2]=d;c[g>>2]=c[k>>2];if(!(c[k>>2]|0)){i=j;return}if
((c[e>>2]|0)!=0&(c[f>>2]|0)>=3476){c[h>>2]=c[e>>2];c[(c[g>>2]|0)+16
x3e;>2]=c[h>>2];c[c[g>>2]>>2]=(c[e>>2]|0)+1440;c[(c[g>>2]|0)+4>>
;2]=(c[e>>2]|0)+(c[f>>2]|0)-(c[c[g>>2]>>2]|0)&-16;c[(c[g>>2]|0)+8>
x3e;2]=((c[(c[g>>2]|0)+4>>2]|0)>>>0)/128|0;i=j;return}else{c[c[g>>2]>>2]=
0;c[(c[g>>2]|0)+4>>2]=0;c[(c[g>>2]|0)+16>>2]=0;i=j;return}}function fp(a,d){a=a|0;d=d|0;
var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[f>>2]=a;c[g>>2
]=d;c[h>>2]=c[(c[g>>2]|0)+4>>2];c[j>>2]=c[c[g>>2]>>2];if((c[f>
x3e;2]|0?c[c[f>>2]>>2]|0:0)?c[(c[f>>2]|0)+4>>2]|0:0){if(!(c[h>>2]|0)){c[e>
;>2]=20;k=c[e>>2]|0;i=l;return k|0}if(b[(c[h>>2]|0)+2>>1]|0?(b[c[h>>2]>>1
]|0)>0:0){if(c[(c[h>>2]|0)+12>>2]|0?c[(c[h>>2]|0)+4>>2]|0:0){if((b[(c[h>>
2]|0)+2>>1]|0)!=((b[(c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>>1]|0)-1<<1
)>>1]|0)+1|0)){c[e>>2]=20;k=c[e>>2]|0;i=l;return k|0}c[k>>2]=c[(c[f>>2]|0)+16
x3e;>2];do if(!(c[(c[g>>2]|0)+8>>2]&2)){if(!(c[j>>2]|0)){c[e>>2]=6;k=c[e>
x3e;2]|0;i=l;return k|0}if(c[(c[j>>2]|0)+4>>2]|0?c[c[j>>2]>>2]|0:0){if(c[(c[j>>
;2]|0)+12>>2]|0)break;c[e>>2]=6;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=0;k=c[e>>2]|
0;i=l;return k|0}while(0);if(!(c[(c[g>>2]|0)+8>>2]&1)){c[e>>2]=19;k=c[e>>2]|0;i=l;return
k|0}do if(c[(c[g>>2]|0)+8>>2]&2|0){d=(c[k>>2]|0)+1024|0;if(c[(c[g>>2]|0)+8>
x3e;2]&4|0){a=(c[g>>2]|0)+32|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8
x3e;>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];break}else{c[d>>2]=-32768;c[(c[k>>
;2]|0)+1024+4>>2]=-32768;c[(c[k>>2]|0)+1024+8>>2]=32767;c[(c[k>>2]|0)+1024+12>>
;2]=32767;break}}else{c[(c[k>>2]|0)+1024>>2]=0;c[(c[k>>2]|0)+1024+4>>2]=0;c[(c[k>
x3e;2]|0)+1024+8>>2]=c[(c[j>>2]|0)+4>>2];c[(c[k>>2]|0)+1024+12>>2]=c[c[j>
x3e;2]>>2]}while(0);gp(c[k>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|
0);a=(c[k>>2]|0)+980|0;h=c[h>>2]|0;c[a>>2]=c[h>>2];c[a+4>>2]=c[h+4>>
2];c[a+8>>2]=c[h+8>>2];c[a+12>>2]=c[h+12>>2];c[a+16>>2]=c[h+16>>2];c
[(c[k>>2]|0)+52>>2]=0;c[(c[k>>2]|0)+40>>2]=1;c[(c[k>>2]|0)+1248>>2]=
c[(c[f>>2]|0)+8>>2];c[(c[k>>2]|0)+1232>>2]=0;if(c[(c[g>>2]|0)+8>>2]
x26;2|0){c[(c[k>>2]|0)+1236>>2]=c[(c[g>>2]|0)+12>>2];c[(c[k>>2]|0)+1240>
x3e;2]=c[(c[g>>2]|0)+28>>2]}else{h=(c[k>>2]|0)+1e3|0;j=c[j>>2]|0;c[h>>2]=c[j
x3e;>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[h+12>>2]=c[j+12>
x3e;2];c[h+16>>2]=c[j+16>>2];c[h+20>>2]=c[j+20>>2];c[(c[k>>2]|0)+1236>>
;2]=13;c[(c[k>>2]|0)+1240>>2]=c[k>>2]}c[e>>2]=ip(c[k>>2]|0)|0;k=c[e>>
;2]|0;i=l;return k|0}c[e>>2]=20;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=0;k=c[e>>2]|0;i=l;return
k|0}c[e>>2]=6;k=c[e>>2]|0;i=l;return k|0}function gp(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[(c[f>>2]|0)+1412>>2]=c[
g>>2];c[(c[f>>2]|0)+1416>>2]=c[h>>2];c[(c[f>>2]|0)+1420>>2]=c[g>
;>2];c[(c[f>>2]|0)+44>>2]=0;c[(c[f>>2]|0)+48>>2]=0;c[(c[f>>2]|0)+52>
x3e;2]=0;c[(c[f>>2]|0)+32>>2]=0;c[(c[f>>2]|0)+36>>2]=0;c[(c[f>>2]|0)+40>
x3e;2]=1;i=e;return}function hp(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;r=i;i=i+32|0;s=r+24
|0;l=r+20|0;m=r+16|0;t=r+12|0;o=r+8|0;k=r+4|0;n=r+28|0;p=r;c[s>>2]=f;c[l>>2]=g;c[m>>2]=h;c[t>
x3e;2]=j;c[k>>2]=(c[t>>2]|0)+1e3;c[o>>2]=(c[(c[k>>2]|0)+12>>2]|0)+(0-(_(c[s>
;>2]|0,c[(c[k>>2]|0)+8>>2]|0)|0));if((c[(c[k>>2]|0)+8>>2]|0)>=0){t=_((c[c[k>
;>2]>>2]|0)-1|0,c[(c[k>>2]|0)+8>>2]|0)|0;c[o>>2]=(c[o>>2]|0)+t}while(1){if
((c[l>>2]|0)<=0)break;a[n>>0]=a[(c[m>>2]|0)+4>>0]|0;a:do if(a[n>>0]|0){g=(
c[o>>2]|0)+(b[c[m>>2]>>1]|0)|0;if((e[(c[m>>2]|0)+2>>1]|0)>=8){Ns(g|0,d[n
x3e;>0]&255|0,e[(c[m>>2]|0)+2>>1]|0)|0;break}c[p>>2]=g;switch(e[(c[m>>2]|0)+2
x3e;>1]|0){case 7:{t=a[n>>0]|0;q=c[p>>2]|0;c[p>>2]=q+1;a[q>>0]=t;q=9;break}case 6:{
q=9;break}case 5:{q=10;break}case 4:{q=11;break}case 3:{q=12;break}case 2:{q=13;break}case 1:break;default:break a}if((q|0)==9){
s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s;q=10}if((q|0)==10){s=a[n>>0]|0;t
=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s;q=11}if((q|0)==11){s=a[n>>0]|0;t=c[p>>2]|0;c[
p>>2]=t+1;a[t>>0]=s;q=12}if((q|0)==12){s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t
>>0]=s;q=13}if((q|0)==13){q=0;s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s}a[
c[p>>2]>>0]=a[n>>0]|0}while(0);c[l>>2]=(c[l>>2]|0)+-1;c[m>>2]=(c[m
x3e;>2]|0)+6}i=r;return}function ip(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;w=i;i=i+400|0;u=w+388|0;v=w+384|0;d=w+64|0;b=w+60|0;q=w+56|0;r=w+52|0;p=w+48|0;m=w+44|0;n=w+40|0;k=w+36|0;e=w+32|0;s=w+28|
0;o=w+24|0;l=w+20|0;j=w+16|0;t=w+12|0;h=w+8|0;f=w+4|0;g=w;c[v>>2]=a;jp(c[v>>2]|0);c[k>>2]=(c[v>
;>2]|0)+1024;if((((c[(c[v>>2]|0)+12>>2]|0)>(c[c[k>>2]>>2]|0)?(c[(c[v>>
;2]|0)+8>>2]|0)<(c[(c[k>>2]|0)+8>>2]|0):0)?(c[(c[v>>2]|0)+20>>2]|0)>(
c[(c[k>>2]|0)+4>>2]|0):0)?(c[(c[v>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0)+12>
;>2]|0):0){if((c[(c[v>>2]|0)+8>>2]|0)<(c[c[k>>2]>>2]|0))c[(c[v>>2]|0
)+8>>2]=c[c[k>>2]>>2];if((c[(c[v>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0
)+4>>2]|0))c[(c[v>>2]|0)+16>>2]=c[(c[k>>2]|0)+4>>2];if((c[(c[v>>2]|0
)+12>>2]|0)>(c[(c[k>>2]|0)+8>>2]|0))c[(c[v>>2]|0)+12>>2]=c[(c[k>>
;2]|0)+8>>2];if((c[(c[v>>2]|0)+20>>2]|0)>(c[(c[k>>2]|0)+12>>2]|0))c[(c[v
x3e;>2]|0)+20>>2]=c[(c[k>>2]|0)+12>>2];c[(c[v>>2]|0)+24>>2]=(c[(c[v>
x3e;2]|0)+12>>2]|0)-(c[(c[v>>2]|0)+8>>2]|0);c[(c[v>>2]|0)+28>>2]=(c[(c[v>
x3e;2]|0)+20>>2]|0)-(c[(c[v>>2]|0)+16>>2]|0);c[r>>2]=((c[(c[v>>2]|0)+20>
x3e;2]|0)-(c[(c[v>>2]|0)+16>>2]|0)|0)/(c[(c[v>>2]|0)+1248>>2]|0)|0;if(!(c[r>>2
]|0))c[r>>2]=1;if((c[r>>2]|0)>=39)c[r>>2]=39;c[(c[v>>2]|0)+1252>>2]=0;c[p
>>2]=c[(c[v>>2]|0)+16>>2];c[n>>2]=c[(c[v>>2]|0)+20>>2];c[q>>
;2]=0;a:while(1){if((c[q>>2]|0)>=(c[r>>2]|0)){b=42;break}c[m>>2]=(c[p>>2]|0)+(c[(c[
v>>2]|0)+1248>>2]|0);if(!((c[q>>2]|0)!=((c[r>>2]|0)-1|0)?(c[m>>2]|0)<=(c[
n>>2]|0):0))c[m>>2]=c[n>>2];c[d>>2]=c[p>>2];c[d+4>>2]=c[m>>
;2];c[b>>2]=d;b:while(1){if((c[b>>2]|0)>>>0<d>>>0)break;c[(c[v>>
;2]|0)+1420>>2]=c[(c[v>>2]|0)+1412>>2];c[(c[v>>2]|0)+1424>>2]=(c[(c[b>>
;2]|0)+4>>2]|0)-(c[c[b>>2]>>2]|0);c[h>>2]=c[(c[v>>2]|0)+1424>>2]<
;<2;c[g>>2]=((c[h>>2]|0)>>>0)%16|0;if((c[g>>2]|0)>0)c[h>>2]=(c[
h>>2]|0)+(16-(c[g>>2]|0));c[f>>2]=c[(c[v>>2]|0)+1416>>2];c[f>>2]=(c[
f>>2]|0)-(((c[f>>2]|0)>>>0)%16|0);c[j>>2]=(c[(c[v>>2]|0)+1412>>
2]|0)+(c[f>>2]|0);c[(c[v>>2]|0)+44>>2]=(c[(c[v>>2]|0)+1412>>2]|0)+(c[h>
x3e;2]|0);do if((c[(c[v>>2]|0)+44>>2]|0)>>>0<(c[j>>2]|0)>>>0?(c
[(c[v>>2]|0)+48>>2]=((c[j>>2]|0)-(c[(c[v>>2]|0)+44>>2]|0)|0)/16|0,(c[(c[v>
;>2]|0)+48>>2]|0)>=2):0){c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[(c[v>>2]|0
)+1424>>2]|0))break;c[(c[(c[v>>2]|0)+1420>>2]|0)+(c[t>>2]<<2)>>2]=0;
c[t>>2]=(c[t>>2]|0)+1}c[(c[v>>2]|0)+52>>2]=0;c[(c[v>>2]|0)+40>>2]=1;
c[(c[v>>2]|0)+16>>2]=c[c[b>>2]>>2];c[(c[v>>2]|0)+20>>2]=c[(c[b>
x3e;2]|0)+4>>2];c[(c[v>>2]|0)+28>>2]=(c[(c[b>>2]|0)+4>>2]|0)-(c[c[b>>
;2]>>2]|0);c[l>>2]=kp(c[v>>2]|0)|0;if(c[l>>2]|0)if((c[l>>2]|0)!=64){b=35;break
a}else break;else{zp(c[v>>2]|0,(c[v>>2]|0)+1e3|0);c[b>>2]=(c[b>>2]|0)+-8;continue b}}while
(0);c[e>>2]=c[c[b>>2]>>2];c[s>>2]=c[(c[b>>2]|0)+4>>2];c[o>>
;2]=(c[e>>2]|0)+((c[s>>2]|0)-(c[e>>2]|0)>>1);if((c[o>>2]|0)==(c[e>>2
]|0)){b=37;break a}if(((c[e>>2]|0)-(c[s>>2]|0)|0)>=(c[(c[v>>2]|0)+1248>>2]|0)){a=(c
[v>>2]|0)+1252|0;c[a>>2]=(c[a>>2]|0)+1}c[(c[b>>2]|0)+8>>2]=c[e>>2];c
[(c[b>>2]|0)+8+4>>2]=c[o>>2];c[c[b>>2]>>2]=c[o>>2];c[(c[b>>
;2]|0)+4>>2]=c[s>>2];c[b>>2]=(c[b>>2]|0)+8}c[q>>2]=(c[q>>2]|0)+1;c[p
>>2]=c[m>>2]}if((b|0)==35){c[u>>2]=1;v=c[u>>2]|0;i=w;return v|0}else if((b|0)==37){c[u
x3e;>2]=1;v=c[u>>2]|0;i=w;return v|0}else if((b|0)==42){if((c[(c[v>>2]|0)+1252>>2]|0)>8?(
c[(c[v>>2]|0)+1248>>2]|0)>16:0)c[(c[v>>2]|0)+1248>>2]=(c[(c[v>>2]|0)+1248
>>2]|0)/2|0;c[u>>2]=0;v=c[u>>2]|0;i=w;return v|0}}c[u>>2]=0;v=c[u>>2]|0;i=w;return
v|0}function jp(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;d=j+20|0;k=j+16|0;f=j+12|0;e=j+8|0;g=j+4|0;h=j;c[d>
x3e;2]=a;c[k>>2]=(c[d>>2]|0)+980;c[f>>2]=c[(c[k>>2]|0)+4>>2];c[e>>2]=(
c[f>>2]|0)+(b[(c[k>>2]|0)+2>>1]<<3);if((b[(c[k>>2]|0)+2>>1]|0)<=
0){c[(c[d>>2]|0)+12>>2]=0;c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+20>>2]=
0;c[(c[d>>2]|0)+16>>2]=0;i=j;return}k=c[c[f>>2]>>2]|0;c[(c[d>>2]|0)+12>
x3e;2]=k;c[(c[d>>2]|0)+8>>2]=k;k=c[(c[f>>2]|0)+4>>2]|0;c[(c[d>>2]|0)+20>
x3e;2]=k;c[(c[d>>2]|0)+16>>2]=k;c[f>>2]=(c[f>>2]|0)+8;while(1){if((c[f>>2]|0)
x3e;>>0>=(c[e>>2]|0)>>>0)break;c[g>>2]=c[c[f>>2]>>2];c[h
x3e;>2]=c[(c[f>>2]|0)+4>>2];if((c[g>>2]|0)<(c[(c[d>>2]|0)+8>>2]|0))c
[(c[d>>2]|0)+8>>2]=c[g>>2];if((c[g>>2]|0)>(c[(c[d>>2]|0)+12>>2]|
0))c[(c[d>>2]|0)+12>>2]=c[g>>2];if((c[h>>2]|0)<(c[(c[d>>2]|0)+16>>
;2]|0))c[(c[d>>2]|0)+16>>2]=c[h>>2];if((c[h>>2]|0)>(c[(c[d>>2]|0)+20>
;>2]|0))c[(c[d>>2]|0)+20>>2]=c[h>>2];c[f>>2]=(c[f>>2]|0)+8}c[(c[d>
x3e;2]|0)+8>>2]=c[(c[d>>2]|0)+8>>2]>>6;c[(c[d>>2]|0)+16>>2]=c[(c[d
x3e;>2]|0)+16>>2]>>6;c[(c[d>>2]|0)+12>>2]=(c[(c[d>>2]|0)+12>>2]|
0)+63>>6;c[(c[d>>2]|0)+20>>2]=(c[(c[d>>2]|0)+20>>2]|0)+63>>6;i=j;return
}function kp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;h=4;f=Fs(40)|0;c[f>>2]=0;g=j;c[g>>2]=0;h=
Qs(a+1256|0,1,f|0,h|0)|0;f=C;n=0;b=n;n=0;if((b|0)!=0&(o|0)!=0){d=Rs(c[b>>2]|0,h|0,f|0)|0;if(!d)ta(b|0,o|0);C=o}else
d=-1;if((d|0)==1)b=C;else b=0;while(1){if(b|0){b=7;break}n=0;b=ea(46,a+980|0,4172,a|0)|0;d=n;n=0;if((d|0)!=0&(o|0)!=0){e=Rs
(c[d>>2]|0,h|0,f|0)|0;if(!e)ta(d|0,o|0);C=o}else e=-1;if((e|0)==1){b=C;continue}c[g>>2]=b;n=0;la(43,a|0);b=n
;n=0;if((b|0)!=0&(o|0)!=0){d=Rs(c[b>>2]|0,h|0,f|0)|0;if(!d)ta(b|0,o|0);C=o}else d=-1;if((d|0)==1)b=C;else{b=6;break
}}if((b|0)==6){g=c[g>>2]|0;Gs(h|0);i=j;return g|0}else if((b|0)==7){c[g>>2]=64;g=c[g>>2]|0;Gs(h|0);
i=j;return g|0}return 0}function lp(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;e=d+8|0;g=d+4|0;f=d;c[h>
x3e;2]=a;c[e>>2]=b;mp(c[e>>2]|0);c[g>>2]=c[c[h>>2]>>2]<<2;c[f>
x3e;2]=c[(c[h>>2]|0)+4>>2]<<2;op(c[e>>2]|0,c[g>>2]>>8,c[f>>
;2]>>8);c[(c[e>>2]|0)+64>>2]=c[g>>2];c[(c[e>>2]|0)+68>>2]=c[f>
x3e;2];i=d;return 0}function mp(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(c[(c[b>>2]|0)+
40>>2]|0){i=e;return}if(!(c[(c[b>>2]|0)+32>>2]|c[(c[b>>2]|0)+36>>2])){i=e;return
}c[d>>2]=np(c[b>>2]|0)|0;a=(c[d>>2]|0)+8|0;c[a>>2]=(c[a>>2]|0)+(c[(c[b>
x3e;2]|0)+32>>2]|0);a=(c[d>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+(c[(c[b>>2]|0)+36>
;>2]|0);i=e;return}function np(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+12|0;f=h+8|0;e=h+4|0;g=h;c[d>>
;2]=a;c[g>>2]=c[c[d>>2]>>2];if((c[g>>2]|0)>(c[(c[d>>2]|0)+24>>2
]|0))c[g>>2]=c[(c[d>>2]|0)+24>>2];c[f>>2]=(c[(c[d>>2]|0)+1420>>2]|0)+(
c[(c[d>>2]|0)+4>>2]<<2);while(1){c[e>>2]=c[c[f>>2]>>2];if(!(c[e>
;>2]|0))break;if((c[c[e>>2]>>2]|0)>(c[g>>2]|0))break;if((c[c[e>>2]>>
2]|0)==(c[g>>2]|0)){b=11;break}c[f>>2]=(c[e>>2]|0)+12}if((b|0)==11){g=c[e>>2]|0;i=h;return
g|0}a=c[d>>2]|0;if((c[(c[d>>2]|0)+52>>2]|0)>=(c[(c[d>>2]|0)+48>>2]|0))ta
(a+1256|0,1);b=c[a+44>>2]|0;a=(c[d>>2]|0)+52|0;d=c[a>>2]|0;c[a>>2]=d+1;c[e>>2]=
b+(d<<4);c[c[e>>2]>>2]=c[g>>2];c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>
;2]|0)+4>>2]=0;c[(c[e>>2]|0)+12>>2]=c[c[f>>2]>>2];c[c[f>>2]>>
;2]=c[e>>2];g=c[e>>2]|0;i=h;return g|0}function op(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0
;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if((c[f>>2]|0)>(c[(c[e>>
;2]|0)+12>>2]|0))c[f>>2]=c[(c[e>>2]|0)+12>>2];if((c[f>>2]|0)<(c[(c[e>
;>2]|0)+8>>2]|0))c[f>>2]=(c[(c[e>>2]|0)+8>>2]|0)-1;c[(c[e>>2]|0)+32>
x3e;2]=0;c[(c[e>>2]|0)+36>>2]=0;c[c[e>>2]>>2]=(c[f>>2]|0)-(c[(c[e>>2
]|0)+8>>2]|0);c[(c[e>>2]|0)+4>>2]=(c[g>>2]|0)-(c[(c[e>>2]|0)+16>>2]|
0);c[(c[e>>2]|0)+72>>2]=c[g>>2]<<8;c[(c[e>>2]|0)+40>>2]=0;pp(c[e>
;>2]|0,c[f>>2]|0,c[g>>2]|0);i=h;return}function pp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i
+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[g>>2]=(c[g>>2]|0)-(c
[(c[e>>2]|0)+16>>2]|0);if((c[f>>2]|0)>(c[(c[e>>2]|0)+12>>2]|0))c[f>
x3e;2]=c[(c[e>>2]|0)+12>>2];a=(c[f>>2]|0)-(c[(c[e>>2]|0)+8>>2]|0)|0;c[f>
x3e;2]=a;c[f>>2]=(c[f>>2]|0)<0?-1:a;if(!((c[f>>2]|0)==(c[c[e>>2]>>2]|0)?(
c[g>>2]|0)==(c[(c[e>>2]|0)+4>>2]|0):0)){if(!(c[(c[e>>2]|0)+40>>2]|0))mp(c[e>
;>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[(c[e>>2]|0)+36>>2]=0}c[c[e>>2]>>
;2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=c[g>>2];if((c[g>>2]|0)>>>0>
;=(c[(c[e>>2]|0)+28>>2]|0)>>>0){d=1;d=d&1;a=c[e>>2]|0;a=a+40|0;c[a>>
2]=d;i=h;return}d=(c[f>>2]|0)>=(c[(c[e>>2]|0)+24>>2]|0);d=d&1;a=c[e>>2]|0;a=a+
40|0;c[a>>2]=d;i=h;return}function qp(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;rp(c[f>>2]|0,c[c[e>>2]>>2]<<2,c[(c[e>>2]|0)+4>>2]
x3c;<2);i=d;return 0}function rp(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,y=0,z=0,A=0,B=0,C=0;C=i;i=i+96|0;e=C+88|0;f=C+84|0;g=C+80|0;n=C+76|0;o=C+72|0;q=C+68|0;r=C+64|0;w=C+60|0;k=C+56|0
;l=C+52|0;A=C+48|0;B=C+44|0;x=C+40|0;p=C+36|0;j=C+32|0;y=C+28|0;t=C+24|0;s=C+20|0;v=C+16|0;u=C+12|0;m=C+8|0;z=C+4|0;h=C;c[e>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[n>>2]=c[(c[e>>2]|0)+72>>2]>>8;c[o
x3e;>2]=c[g>>2]>>8;c[q>>2]=(c[(c[e>>2]|0)+68>>2]|0)-(c[(c[e>>2]|
0)+72>>2]|0);c[r>>2]=(c[g>>2]|0)-(c[o>>2]<<8);c[k>>2]=(c[f>>
;2]|0)-(c[(c[e>>2]|0)+64>>2]|0);c[l>>2]=(c[g>>2]|0)-(c[(c[e>>2]|0)+68>>
;2]|0);c[v>>2]=c[n>>2];c[u>>2]=c[o>>2];if((c[n>>2]|0)>(c[o>>2]|
0)){c[v>>2]=c[o>>2];c[u>>2]=c[n>>2]}if((c[v>>2]|0)>=(c[(c[e>>2]|
0)+20>>2]|0)){A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>
;>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=
A;i=C;return}if((c[u>>2]|0)<(c[(c[e>>2]|0)+16>>2]|0)){A=c[f>>2]|0;B=c[e>>
2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0
;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C;return}if((c[n>>2]|0)==(c[o>>2]|0)){
sp(c[e>>2]|0,c[n>>2]|0,c[(c[e>>2]|0)+64>>2]|0,c[q>>2]|0,c[f>>2]|0,c[
r>>2]|0);A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>
;2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C
;return}c[s>>2]=1;if(!(c[k>>2]|0)){c[m>>2]=c[(c[e>>2]|0)+64>>2]>>8;c
[z>>2]=(c[(c[e>>2]|0)+64>>2]|0)-(c[m>>2]<<8)<<1;c[p>>2]=256
;if((c[l>>2]|0)<0){c[p>>2]=0;c[s>>2]=-1}c[j>>2]=(c[p>>2]|0)-(c[q>>
;2]|0);A=_(c[z>>2]|0,c[j>>2]|0)|0;B=(c[e>>2]|0)+32|0;c[B>>2]=(c[B>>2]|0)+A;B=(
c[e>>2]|0)+36|0;c[B>>2]=(c[B>>2]|0)+(c[j>>2]|0);c[n>>2]=(c[n>>2]|0)+(
c[s>>2]|0);pp(c[e>>2]|0,c[m>>2]|0,c[n>>2]|0);c[j>>2]=(c[p>>2]|0)+(c[
p>>2]|0)-256;c[h>>2]=_(c[z>>2]|0,c[j>>2]|0)|0;while(1){if((c[n>>2]|0)==(c[o>
;>2]|0))break;B=(c[e>>2]|0)+32|0;c[B>>2]=(c[B>>2]|0)+(c[h>>2]|0);B=(c[e>>
2]|0)+36|0;c[B>>2]=(c[B>>2]|0)+(c[j>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[s>>
;2]|0);pp(c[e>>2]|0,c[m>>2]|0,c[n>>2]|0)}c[j>>2]=(c[r>>2]|0)-256+(c[p>>
;2]|0);B=_(c[z>>2]|0,c[j>>2]|0)|0;A=(c[e>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+B;A=(
c[e>>2]|0)+36|0;c[A>>2]=(c[A>>2]|0)+(c[j>>2]|0);A=c[f>>2]|0;B=c[e>>2
]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;
A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C;return}c[x>>2]=_(256-(c[q>>2]|0)|0,c
[k>>2]|0)|0;c[p>>2]=256;c[s>>2]=1;if((c[l>>2]|0)<0){c[x>>2]=_(c[q>
x3e;2]|0,c[k>>2]|0)|0;c[p>>2]=0;c[s>>2]=-1;c[l>>2]=0-(c[l>>2]|0)}c[j>>
;2]=(c[x>>2]|0)/(c[l>>2]|0)|0;c[w>>2]=(c[x>>2]|0)%(c[l>>2]|0)|0;if((c[w>
x3e;2]|0)<0){c[j>>2]=(c[j>>2]|0)+-1;c[w>>2]=(c[w>>2]|0)+(c[l>>2]|0)}c[A
x3e;>2]=(c[(c[e>>2]|0)+64>>2]|0)+(c[j>>2]|0);sp(c[e>>2]|0,c[n>>2]|0,c[(c[
e>>2]|0)+64>>2]|0,c[q>>2]|0,c[A>>2]|0,c[p>>2]|0);c[n>>2]=(c[n>
x3e;2]|0)+(c[s>>2]|0);pp(c[e>>2]|0,c[A>>2]>>8,c[n>>2]|0);a:do if((c[n>>
;2]|0)!=(c[o>>2]|0)){c[x>>2]=c[k>>2]<<8;c[t>>2]=(c[x>>2]|0)/(c[l>
;>2]|0)|0;c[y>>2]=(c[x>>2]|0)%(c[l>>2]|0)|0;if((c[y>>2]|0)<0){c[t>>2
]=(c[t>>2]|0)+-1;c[y>>2]=(c[y>>2]|0)+(c[l>>2]|0)}c[w>>2]=(c[w>>2]|0)-(
c[l>>2]|0);while(1){if((c[n>>2]|0)==(c[o>>2]|0))break a;c[j>>2]=c[t>>2];c[w>
;>2]=(c[w>>2]|0)+(c[y>>2]|0);if((c[w>>2]|0)>=0){c[w>>2]=(c[w>>2]|0)-(
c[l>>2]|0);c[j>>2]=(c[j>>2]|0)+1}c[B>>2]=(c[A>>2]|0)+(c[j>>2]|0);sp(
c[e>>2]|0,c[n>>2]|0,c[A>>2]|0,256-(c[p>>2]|0)|0,c[B>>2]|0,c[p>>2]|0);
c[A>>2]=c[B>>2];c[n>>2]=(c[n>>2]|0)+(c[s>>2]|0);pp(c[e>>2]|0,c[A>
;>2]>>8,c[n>>2]|0)}}while(0);sp(c[e>>2]|0,c[n>>2]|0,c[A>>2]|0,256-(c[p>
;>2]|0)|0,c[f>>2]|0,c[r>>2]|0);A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A
;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>
;2]|0;B=B+72|0;c[B>>2]=A;i=C;return}function sp(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;y=i;i=i+80|0;h=y+68|0;j=y+64|0;A=y+60|0;k=y+56|0;z=y+52|0;l=y+48|0;o=
y+44|0;p=y+40|0;r=y+36|0;s=y+32|0;m=y+28|0;v=y+24|0;u=y+20|0;x=y+16|0;w=y+12|0;q=y+8|0;n=y+4|0;t=y;c[h>>2]=a;c[j>
x3e;2]=b;c[A>>2]=d;c[k>>2]=e;c[z>>2]=f;c[l>>2]=g;c[n>>2]=(c[z>>2]|0)-(
c[A>>2]|0);c[o>>2]=c[A>>2]>>8;c[p>>2]=c[z>>2]>>8;c[r>
x3e;2]=(c[A>>2]|0)-(c[o>>2]<<8);c[s>>2]=(c[z>>2]|0)-(c[p>>2]<
x3c;8);if((c[k>>2]|0)==(c[l>>2]|0)){pp(c[h>>2]|0,c[p>>2]|0,c[j>>2]|0);i=y;return
}if((c[o>>2]|0)==(c[p>>2]|0)){c[m>>2]=(c[l>>2]|0)-(c[k>>2]|0);z=_((c[r>
x3e;2]|0)+(c[s>>2]|0)|0,c[m>>2]|0)|0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;
A=(c[h>>2]|0)+36|0;c[A>>2]=(c[A>>2]|0)+(c[m>>2]|0);i=y;return}c[w>>2]=_(256-(c
[r>>2]|0)|0,(c[l>>2]|0)-(c[k>>2]|0)|0)|0;c[q>>2]=256;c[t>>2]=1;if((c[n>
x3e;2]|0)<0){c[w>>2]=_(c[r>>2]|0,(c[l>>2]|0)-(c[k>>2]|0)|0)|0;c[q>>2]=0;c
[t>>2]=-1;c[n>>2]=0-(c[n>>2]|0)}c[m>>2]=(c[w>>2]|0)/(c[n>>2]|0)|0;c[
v>>2]=(c[w>>2]|0)%(c[n>>2]|0)|0;if((c[v>>2]|0)<0){c[m>>2]=(c[m>>
;2]|0)+-1;c[v>>2]=(c[v>>2]|0)+(c[n>>2]|0)}z=_((c[r>>2]|0)+(c[q>>2]|0)|0,c[m>
;>2]|0)|0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;A=(c[h>>2]|0)+36|0;c[A>>
;2]=(c[A>>2]|0)+(c[m>>2]|0);c[o>>2]=(c[o>>2]|0)+(c[t>>2]|0);pp(c[h>>
2]|0,c[o>>2]|0,c[j>>2]|0);c[k>>2]=(c[k>>2]|0)+(c[m>>2]|0);a:do if((c[o>
x3e;2]|0)!=(c[p>>2]|0)){c[w>>2]=(c[l>>2]|0)-(c[k>>2]|0)+(c[m>>2]|0)<<
;8;c[u>>2]=(c[w>>2]|0)/(c[n>>2]|0)|0;c[x>>2]=(c[w>>2]|0)%(c[n>>2]|0)|
0;if((c[x>>2]|0)<0){c[u>>2]=(c[u>>2]|0)+-1;c[x>>2]=(c[x>>2]|0)+(c[n>
x3e;2]|0)}c[v>>2]=(c[v>>2]|0)-(c[n>>2]|0);while(1){if((c[o>>2]|0)==(c[p>>2]|0))
break a;c[m>>2]=c[u>>2];c[v>>2]=(c[v>>2]|0)+(c[x>>2]|0);if((c[v>>2]|
0)>=0){c[v>>2]=(c[v>>2]|0)-(c[n>>2]|0);c[m>>2]=(c[m>>2]|0)+1}A=(c[h>
x3e;2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+(c[m>>2]<<8);A=(c[h>>2]|0)+36|0;c[A>
x3e;2]=(c[A>>2]|0)+(c[m>>2]|0);c[k>>2]=(c[k>>2]|0)+(c[m>>2]|0);c[o>>
2]=(c[o>>2]|0)+(c[t>>2]|0);pp(c[h>>2]|0,c[o>>2]|0,c[j>>2]|0)}}while(0);c[m>
;>2]=(c[l>>2]|0)-(c[k>>2]|0);z=_((c[s>>2]|0)+256-(c[q>>2]|0)|0,c[m>>2]|0)|
0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;A=(c[h>>2]|0)+36|0;c[A>>2]=(c[A>
;>2]|0)+(c[m>>2]|0);i=y;return}function tp(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;up(c[h>>2]|0,c[g>>2]|0,c[f>>2]|
0);i=e;return 0}function up(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;p=i;i=i+48|0;e=p+44
|0;q=p+40|0;r=p+36|0;g=p+32|0;h=p+28|0;n=p+24|0;j=p+20|0;k=p+16|0;f=p+12|0;m=p+8|0;l=p+4|0;o=p;c[e>>2]=a;c[q>>
;2]=b;c[r>>2]=d;c[f>>2]=(c[e>>2]|0)+76;c[c[f>>2]>>2]=c[c[r>>2]>
x3e;2]<<2;c[(c[f>>2]|0)+4>>2]=c[(c[r>>2]|0)+4>>2]<<2;c[(c[f>>
;2]|0)+8>>2]=c[c[q>>2]>>2]<<2;c[(c[f>>2]|0)+8+4>>2]=c[(c[q>>
;2]|0)+4>>2]<<2;c[(c[f>>2]|0)+16>>2]=c[(c[e>>2]|0)+64>>2];c[(c[f>
;>2]|0)+16+4>>2]=c[(c[e>>2]|0)+68>>2];a=(c[(c[f>>2]|0)+16>>2]|0)+(c[c[f
x3e;>2]>>2]|0)-(c[(c[f>>2]|0)+8>>2]<<1)|0;c[g>>2]=((c[(c[f>>2]|
0)+16>>2]|0)+(c[c[f>>2]>>2]|0)-(c[(c[f>>2]|0)+8>>2]<<1)|0)<0?0-
a|0:a;a=(c[(c[f>>2]|0)+16+4>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0)-(c[(c[f>>2]|0)+8+4
x3e;>2]<<1)|0;c[h>>2]=((c[(c[f>>2]|0)+16+4>>2]|0)+(c[(c[f>>2]|0)+4>
x3e;2]|0)-(c[(c[f>>2]|0)+8+4>>2]<<1)|0)<0?0-a|0:a;if((c[g>>2]|0)<(c[h>>
;2]|0))c[g>>2]=c[h>>2];if((c[g>>2]|0)<=64){rp(c[e>>2]|0,c[c[f>>2]>
x3e;2]|0,c[(c[f>>2]|0)+4>>2]|0);i=p;return}c[j>>2]=0;while(1){if((c[g>>2]|0)<=64)break
;c[g>>2]=c[g>>2]>>2;c[j>>2]=(c[j>>2]|0)+1}c[k>>2]=(c[e>>2]|
0)+852;c[c[k>>2]>>2]=c[j>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)<0)break;c[
j>>2]=c[(c[k>>2]|0)+(c[n>>2]<<2)>>2];if((c[j>>2]|0)>1){r=c[(c[f
>>2]|0)+4>>2]|0;c[l>>2]=r;c[m>>2]=r;c[o>>2]=c[(c[f>>2]|0)+8+4>
x3e;2];if((c[o>>2]|0)<(c[m>>2]|0))c[m>>2]=c[o>>2];if((c[o>>2]|0)>(c[
l>>2]|0))c[l>>2]=c[o>>2];c[o>>2]=c[(c[f>>2]|0)+16+4>>2];if((c[o>
;>2]|0)<(c[m>>2]|0))c[m>>2]=c[o>>2];if((c[o>>2]|0)>(c[l>>2]|0))
c[l>>2]=c[o>>2];if((c[m>>2]>>8|0)<(c[(c[e>>2]|0)+20>>2]|0)?(c[l
>>2]>>8|0)>=(c[(c[e>>2]|0)+16>>2]|0):0){vp(c[f>>2]|0);c[f>>2]=(
c[f>>2]|0)+16;c[n>>2]=(c[n>>2]|0)+1;r=(c[j>>2]|0)-1|0;c[(c[k>>2]|0)+((c[n>
;>2]|0)-1<<2)>>2]=r;c[(c[k>>2]|0)+(c[n>>2]<<2)>>2]=r;continue}}
rp(c[e>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0);c[n>>2]=(c[n>
;>2]|0)+-1;c[f>>2]=(c[f>>2]|0)+-16}i=p;return}function vp(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[(c[d>>2]|0)+32>>2]=c[(c[d>>2]|0)+16>>2];c[e>
x3e;2]=c[(c[d>>2]|0)+8>>2];a=((c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c
[d>>2]|0)+24>>2]=a;c[f>>2]=a;a=((c[c[d>>2]>>2]|0)+(c[e>>2]|0)|0)/2|0
;c[(c[d>>2]|0)+8>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16>>2]=((c[f>>2]|0)+(
c[e>>2]|0)|0)/2|0;c[(c[d>>2]|0)+32+4>>2]=c[(c[d>>2]|0)+16+4>>2];c[e>>
;2]=c[(c[d>>2]|0)+8+4>>2];a=((c[(c[d>>2]|0)+16+4>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(
c[d>>2]|0)+24+4>>2]=a;c[f>>2]=a;a=((c[(c[d>>2]|0)+4>>2]|0)+(c[e>>2]|
0)|0)/2|0;c[(c[d>>2]|0)+8+4>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16+4>>2]=((c[f>
x3e;2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function wp(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;h=f+8|0;g=f+4|0;k=f;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;c[k>>2]=e;xp(c[k>>
;2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0);i=f;return 0}function xp(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;w=i;i=i+80|0;f=w+72|0;x=w+68|0;y=w+64|0;z=w+60|
0;h=w+56|0;s=w+52|0;r=w+48|0;v=w+44|0;j=w+40|0;n=w+36|0;m=w+32|0;q=w+28|0;k=w+24|0;o=w+20|0;l=w+16|0;p=w+12|0;g=w+8|0;t=w+4|0;u=
w;c[f>>2]=a;c[x>>2]=b;c[y>>2]=d;c[z>>2]=e;c[h>>2]=(c[f>>2]|0)+76;c[c
[h>>2]>>2]=c[c[z>>2]>>2]<<2;c[(c[h>>2]|0)+4>>2]=c[(c[z>
;>2]|0)+4>>2]<<2;c[(c[h>>2]|0)+8>>2]=c[c[y>>2]>>2]<<2
;c[(c[h>>2]|0)+8+4>>2]=c[(c[y>>2]|0)+4>>2]<<2;c[(c[h>>2]|0)+16>
x3e;2]=c[c[x>>2]>>2]<<2;c[(c[h>>2]|0)+16+4>>2]=c[(c[x>>2]|0)+4>
x3e;2]<<2;c[(c[h>>2]|0)+24>>2]=c[(c[f>>2]|0)+64>>2];c[(c[h>>2]|0)+24
+4>>2]=c[(c[f>>2]|0)+68>>2];a:while(1){z=c[(c[h>>2]|0)+4>>2]|0;c[r>>
2]=z;c[s>>2]=z;c[v>>2]=c[(c[h>>2]|0)+8+4>>2];if((c[v>>2]|0)<(c[s>>
;2]|0))c[s>>2]=c[v>>2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>
2];c[v>>2]=c[(c[h>>2]|0)+16+4>>2];if((c[v>>2]|0)<(c[s>>2]|0))c[s>>
;2]=c[v>>2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>2];c[v>>2]=
c[(c[h>>2]|0)+24+4>>2];if((c[v>>2]|0)<(c[s>>2]|0))c[s>>2]=c[v>>
2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>2];do if((c[s>>2]>>8
|0)<(c[(c[f>>2]|0)+20>>2]|0)?(c[r>>2]>>8|0)>=(c[(c[f>>2]|0)+16>
x3e;2]|0):0){c[j>>2]=(c[(c[h>>2]|0)+24>>2]|0)-(c[c[h>>2]>>2]|0);c[n>>
;2]=(c[(c[h>>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0);b=c[j>>2]|0;c[m>
x3e;2]=(c[j>>2]|0)<0?0-b|0:b;b=c[n>>2]|0;c[q>>2]=(c[n>>2]|0)<0?0-b|0:b;b=c[m
x3e;>2]|0;if((c[m>>2]|0)>(c[q>>2]|0))b=(b*236|0)+((c[q>>2]|0)*97|0)|0;else b=(b*97|0)+((
c[q>>2]|0)*236|0)|0;c[g>>2]=b>>8;if(((((((c[g>>2]|0)<=32767?(c[u>>2]=(c[g
>>2]|0)*42,c[k>>2]=(c[(c[h>>2]|0)+8>>2]|0)-(c[c[h>>2]>>2]|0),c[o>
;>2]=(c[(c[h>>2]|0)+8+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0),y=_(c[n>>2]|0,c[k
x3e;>2]|0)|0,y=(y-(_(c[j>>2]|0,c[o>>2]|0)|0)|0)<0,z=_(c[n>>2]|0,c[k>>2]|0)|0,z
=z-(_(c[j>>2]|0,c[o>>2]|0)|0)|0,c[t>>2]=y?0-z|0:z,(c[t>>2]|0)<=(c[u>>2]|0
)):0)?(c[l>>2]=(c[(c[h>>2]|0)+16>>2]|0)-(c[c[h>>2]>>2]|0),c[p>>2]=(c
[(c[h>>2]|0)+16+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0),y=_(c[n>>2]|0,c[l>>
2]|0)|0,y=(y-(_(c[j>>2]|0,c[p>>2]|0)|0)|0)<0,z=_(c[n>>2]|0,c[l>>2]|0)|0,z=z-(_(c[j
x3e;>2]|0,c[p>>2]|0)|0)|0,c[t>>2]=y?0-z|0:z,(c[t>>2]|0)<=(c[u>>2]|0)):0)?(z=_(
c[n>>2]|0,c[o>>2]|0)|0,(z+(_(c[j>>2]|0,c[k>>2]|0)|0)|0)>=0):0)?(z=_(c[n>>
2]|0,c[p>>2]|0)|0,(z+(_(c[j>>2]|0,c[l>>2]|0)|0)|0)>=0):0)?(z=_(c[n>>2]|0,(c[(c[h>
;>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+8+4>>2]|0)|0)|0,(z+(_(c[j>>2]|0,(c[(c[h>>
;2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+8>>2]|0)|0)|0)|0)>=0):0)?(z=_(c[n>>2]|0,(c[(c[h>
;>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+16+4>>2]|0)|0)|0,(z+(_(c[j>>2]|0,(c[(c[h>
x3e;2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+16>>2]|0)|0)|0)|0)>=0):0)break;yp(c[h>>2]|0);c[h
>>2]=(c[h>>2]|0)+24;continue a}while(0);rp(c[f>>2]|0,c[c[h>>2]>>2]|0,c[(c[h>
;>2]|0)+4>>2]|0);if((c[h>>2]|0)==((c[f>>2]|0)+76|0))break;c[h>>2]=(c[h>>2
]|0)+-24}i=w;return}function yp(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;f=b+12|0;e=b+8|0;g=b+4|0;h=b;c[d>
;>2]=a;c[(c[d>>2]|0)+48>>2]=c[(c[d>>2]|0)+24>>2];c[g>>2]=c[(c[d>>
;2]|0)+8>>2];c[h>>2]=c[(c[d>>2]|0)+16>>2];a=((c[c[d>>2]>>2]|0)+(c[g
x3e;>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+8>>2]=a;a=((c[(c[d>>2]|0)+24>>2
]|0)+(c[h>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+40>>2]=a;c[g>>2]=((c[g>
x3e;2]|0)+(c[h>>2]|0)|0)/2|0;a=((c[f>>2]|0)+(c[g>>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>
;2]|0)+16>>2]=a;a=((c[e>>2]|0)+(c[g>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+32
x3e;>2]=a;c[(c[d>>2]|0)+24>>2]=((c[f>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c[d>>2]|
0)+48+4>>2]=c[(c[d>>2]|0)+24+4>>2];c[g>>2]=c[(c[d>>2]|0)+8+4>>2];c[h
>>2]=c[(c[d>>2]|0)+16+4>>2];a=((c[(c[d>>2]|0)+4>>2]|0)+(c[g>>2]|0)|0
)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+8+4>>2]=a;a=((c[(c[d>>2]|0)+24+4>>2]|0)+(c[h>
;>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+40+4>>2]=a;c[g>>2]=((c[g>>2]|0)+(c
[h>>2]|0)|0)/2|0;a=((c[f>>2]|0)+(c[g>>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+16+
4>>2]=a;a=((c[e>>2]|0)+(c[g>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+32+4>
x3e;2]=a;c[(c[d>>2]|0)+24+4>>2]=((c[f>>2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function zp(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;k=i;i=i+32|0;d=k+24|0;l=k+20|0;j=k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;e=k;c[d>
;>2]=a;c[l>>2]=b;c[l>>2]=c[l>>2];if(!(c[(c[d>>2]|0)+52>>2]|0)){i=k;return
}c[(c[d>>2]|0)+1232>>2]=0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[d>>2]|
0)+1424>>2]|0))break;c[f>>2]=c[(c[(c[d>>2]|0)+1420>>2]|0)+(c[j>>2]<<
2)>>2];c[g>>2]=0;c[h>>2]=0;while(1){if(!(c[f>>2]|0))break;if(c[g>>2]|0?(c[c[f
x3e;>2]>>2]|0)>(c[h>>2]|0):0)Ap(c[d>>2]|0,c[h>>2]|0,c[j>>2]|0,c[g>
;>2]<<9,(c[c[f>>2]>>2]|0)-(c[h>>2]|0)|0);c[g>>2]=(c[g>>2]|0)+(c
[(c[f>>2]|0)+4>>2]|0);c[e>>2]=(c[g>>2]<<9)-(c[(c[f>>2]|0)+8>>
;2]|0);if(c[e>>2]|0?(c[c[f>>2]>>2]|0)>=0:0)Ap(c[d>>2]|0,c[c[f>>2]>
x3e;2]|0,c[j>>2]|0,c[e>>2]|0,1);c[h>>2]=(c[c[f>>2]>>2]|0)+1;c[f>>2]=
c[(c[f>>2]|0)+12>>2]}if(c[g>>2]|0)Ap(c[d>>2]|0,c[h>>2]|0,c[j>>2]|0,c
[g>>2]<<9,(c[(c[d>>2]|0)+24>>2]|0)-(c[h>>2]|0)|0);c[j>>2]=(c[j>
x3e;2]|0)+1}if(!(c[(c[d>>2]|0)+1236>>2]|0)){i=k;return}if((c[(c[d>>2]|0)+1232>>2]|0)<
;=0){i=k;return}_a[c[(c[d>>2]|0)+1236>>2]&15](c[(c[d>>2]|0)+1244>>2]|0,c[(c[d>
x3e;2]|0)+1232>>2]|0,(c[d>>2]|0)+1040|0,c[(c[d>>2]|0)+1240>>2]|0);i=k;return}function Ap
(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;s=i;i=i+32|0;l=s+28|0;m=s+24|0;n=s+20|0;t=s+16
|0;o=s+12|0;r=s+8|0;p=s+4|0;q=s;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[t>>2]=j;c[o>>2
]=k;c[q>>2]=c[t>>2]>>9;if((c[q>>2]|0)<0)c[q>>2]=0-(c[q>>2]|0);k
=c[q>>2]|0;do if(c[(c[l>>2]|0)+980+16>>2]&2|0){c[q>>2]=k&511;k=c[q>>
2]|0;if((c[q>>2]|0)>256){c[q>>2]=512-k;break}if((k|0)==256)c[q>>2]=255}else if((k|0)>=256
)c[q>>2]=255;while(0);c[n>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);t=(c[m>
;>2]|0)+(c[(c[l>>2]|0)+8>>2]|0)|0;c[m>>2]=t;c[m>>2]=(c[m>>2]|0)>=32767
?32767:t;if((c[n>>2]|0)>=2147483647)c[n>>2]=2147483647;if(!(c[q>>2]|0)){i=s;return}c[p>
x3e;2]=c[(c[l>>2]|0)+1232>>2];c[r>>2]=(c[l>>2]|0)+1040+((c[p>>2]|0)*6|0)+-6;if
((((c[p>>2]|0)>0?(c[(c[l>>2]|0)+1244>>2]|0)==(c[n>>2]|0):0)?((b[c[r>>2]
x3e;>1]|0)+(e[(c[r>>2]|0)+2>>1]|0)|0)==(c[m>>2]|0):0)?(d[(c[r>>2]|0)+4>>0
]|0)==(c[q>>2]|0):0){b[(c[r>>2]|0)+2>>1]=(e[(c[r>>2]|0)+2>>1]|0)+(c[o>>
;2]|0);i=s;return}if((c[p>>2]|0)>=32?1:(c[(c[l>>2]|0)+1244>>2]|0)!=(c[n>>2]|0)){if((
c[p>>2]|0)>0?(c[(c[l>>2]|0)+1236>>2]|0)!=0:0)_a[c[(c[l>>2]|0)+1236>>2]&
;15](c[(c[l>>2]|0)+1244>>2]|0,c[p>>2]|0,(c[l>>2]|0)+1040|0,c[(c[l>>2]|0)+1240
x3e;>2]|0);c[(c[l>>2]|0)+1232>>2]=0;c[(c[l>>2]|0)+1244>>2]=c[n>>2];c[p>
;>2]=0;c[r>>2]=(c[l>>2]|0)+1040}else c[r>>2]=(c[r>>2]|0)+6;b[c[r>>2]>
;>1]=c[m>>2];b[(c[r>>2]|0)+2>>1]=c[o>>2];a[(c[r>>2]|0)+4>>0]=c[
q>>2];t=(c[l>>2]|0)+1232|0;c[t>>2]=(c[t>>2]|0)+1;i=s;return}function Bp(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]|0)+12>>2];Fb(c[e>>
;2]|0,c[d>>2]|0);c[d>>2]=0;i=b;return}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]=c[(c[e>>2]|0)+4>>2];Ua[c[(c[(c[(c[e>>2]|0)+20>>2]|0)+56>
;>2]|0)+8>>2]&31](c[(c[e>>2]|0)+60>>2]|0,c[(c[d>>2]|0)+172>>2]|0,c[(
c[d>>2]|0)+176>>2]|0);i=b;return 0}function Dp(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;k=i;
i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;if((c[h>
;>2]|0)==1)c[h>>2]=0;b=Ep(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,0)|0;i=
k;return b|0}function Ep(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;P=i;i=i+192|0;k=P+180|0;l=P+176|0;m=P+172|0;n=P+168|0;o=P+
164|0;p=P+160|0;t=P+156|0;B=P+152|0;r=P+136|0;H=P+128|0;u=P+124|0;v=P+120|0;I=P+116|0;D=P+112|0;q=P+108|0;A=P+104|0;y=P+100|0;G=
P+96|0;L=P+92|0;N=P+88|0;K=P+84|0;O=P+80|0;C=P+32|0;z=P+28|0;w=P+24|0;M=P+20|0;s=P+16|0;E=P+12|0;F=P+8|0;J=P+4|0;x=P;c[l>
x3e;2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=h;c[p>>2]=j;c[B>>2]=0;c[y>>2]=(
c[n>>2]|0)==3&1;c[G>>2]=(c[n>>2]|0)==4&1;do if((c[(c[m>>2]|0)+72>>2]|
0)==(c[(c[l>>2]|0)+24>>2]|0)){if((c[n>>2]|0)!=(c[p>>2]|0)){c[k>>2]=19;O=c[k>
;>2]|0;i=P;return O|0}c[B>>2]=(c[m>>2]|0)+108;if(c[o>>2]|0)Nb(c[B>>2]|0,c[c[o>
x3e;2]>>2]|0,c[(c[o>>2]|0)+4>>2]|0);_d(c[B>>2]|0,r);c[r>>2]=c[r>>2]
x26;-64;c[r+4>>2]=c[r+4>>2]&-64;c[r+8>>2]=(c[r+8>>2]|0)+63&-64;c[r+12>>
;2]=(c[r+12>>2]|0)+63&-64;if((c[r>>2]|0)<0?(c[r+8>>2]|0)>(2147483647+(c[r>>
;2]|0)|0):0){c[k>>2]=98;O=c[k>>2]|0;i=P;return O|0}c[H>>2]=(c[r+8>>2]|0)-(c[r>>
;2]|0)>>6;if((c[r+4>>2]|0)<0?(c[r+12>>2]|0)>(2147483647+(c[r+4>>2]|0)|0):0){c[
k>>2]=98;O=c[k>>2]|0;i=P;return O|0}c[u>>2]=(c[r+12>>2]|0)-(c[r+4>>2]|0)>
x3e;6;c[q>>2]=(c[m>>2]|0)+76;c[A>>2]=c[(c[l>>2]|0)+8>>2];c[I>>2]=c[H
>>2];c[v>>2]=c[u>>2];if(c[(c[(c[m>>2]|0)+156>>2]|0)+4>>2]&1|0){
Fb(c[A>>2]|0,c[(c[q>>2]|0)+12>>2]|0);c[(c[q>>2]|0)+12>>2]=0;f=(c[(c[m>>
;2]|0)+156>>2]|0)+4|0;c[f>>2]=c[f>>2]&-2}c[D>>2]=c[H>>2];if(c[y>>
;2]|0){c[H>>2]=(c[H>>2]|0)*3;c[D>>2]=(c[H>>2]|0)+3&-4}if(c[G>>2]|0)c[u>
;>2]=(c[u>>2]|0)*3;c[L>>2]=c[r>>2];c[N>>2]=c[r+4>>2];c[K>>2]=c[
r>>2]>>6;c[O>>2]=c[r+12>>2]>>6;if((c[H>>2]|0)>>>0>
;32767|(c[u>>2]|0)>>>0>32767){c[k>>2]=98;O=c[k>>2]|0;i=P;return O|0}a[(c[q>
;>2]|0)+18>>0]=2;b[(c[q>>2]|0)+16>>1]=256;c[(c[q>>2]|0)+4>>2]=c[H>
x3e;2];c[c[q>>2]>>2]=c[u>>2];c[(c[q>>2]|0)+8>>2]=c[D>>2];Nb(c[B>
;>2]|0,0-(c[L>>2]|0)|0,0-(c[N>>2]|0)|0);f=bc(c[A>>2]|0,_(c[D>>2]|0,c[u>>2
]|0)|0,t)|0;c[(c[q>>2]|0)+12>>2]=f;if(!(c[t>>2]|0)){f=(c[(c[m>>2]|0)+156>>2]|0
)+4|0;c[f>>2]=c[f>>2]|1;c[C>>2]=c[q>>2];c[C+4>>2]=c[B>>2];c[C+8>
;>2]=1;c[t>>2]=Ya[c[(c[l>>2]|0)+64>>2]&127](c[(c[l>>2]|0)+60>>2]|0,C
)|0;a:do if(c[y>>2]|0){c[z>>2]=c[(c[q>>2]|0)+12>>2];c[w>>2]=c[v>>2];
while(1){if((c[w>>2]|0)>>>0<=0)break a;c[s>>2]=(c[z>>2]|0)+(c[H>>2]|
0);c[M>>2]=c[I>>2];while(1){if((c[M>>2]|0)>>>0<=0)break;c[E>>2]=d[(c
[z>>2]|0)+((c[M>>2]|0)-1)>>0];a[(c[s>>2]|0)+-3>>0]=c[E>>2];a[(c[s>
;>2]|0)+-2>>0]=c[E>>2];a[(c[s>>2]|0)+-1>>0]=c[E>>2];c[s>>2]=(c[
s>>2]|0)+-3;c[M>>2]=(c[M>>2]|0)+-1}c[w>>2]=(c[w>>2]|0)+-1;c[z>>2]=(c
[z>>2]|0)+(c[D>>2]|0)}}while(0);b:do if(c[G>>2]|0){c[F>>2]=(c[(c[q>>2]|0)+12
x3e;>2]|0)+(_((c[u>>2]|0)-(c[v>>2]|0)|0,c[D>>2]|0)|0);c[J>>2]=c[(c[q>>2]|
0)+12>>2];c[x>>2]=c[v>>2];while(1){if((c[x>>2]|0)>>>0<=0)break b;Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);c[F
>>2]=(c[F>>2]|0)+(c[D>>2]|0);c[x>>2]=(c[x>>2]|0)+-1}}while(0);Nb(c[B>>
;2]|0,c[L>>2]|0,c[N>>2]|0);if((c[K>>2]|0)>2147483647|(c[O>>2]|0)>2147483647){c
[k>>2]=23;O=c[k>>2]|0;i=P;return O|0}else{if(c[t>>2]|0)break;c[(c[m>>2]|0)+72>>
;2]=1651078259;c[(c[m>>2]|0)+100>>2]=c[K>>2];c[(c[m>>2]|0)+104>>2]=c[O>
x3e;2];break}}}else c[t>>2]=6;while(0);if((c[B>>2]|0)!=0&(c[o>>2]|0)!=0)Nb(c[B>>2]|
0,0-(c[c[o>>2]>>2]|0)|0,0-(c[(c[o>>2]|0)+4>>2]|0)|0);c[k>>2]=c[t>>2];
O=c[k>>2]|0;i=P;return O|0}function Fp(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;l=k+16
|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[l>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2
]=0;if((c[(c[f>>2]|0)+72>>2]|0)!=(c[(c[l>>2]|0)+24>>2]|0)){c[j>>2]=6;l=c[j>
;>2]|0;i=k;return l|0}if(c[g>>2]|0)Kb((c[f>>2]|0)+108|0,c[g>>2]|0);if(!(c[h>>2]|0)){
l=c[j>>2]|0;i=k;return l|0}Nb((c[f>>2]|0)+108|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+
4>>2]|0);l=c[j>>2]|0;i=k;return l|0}function Gp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;h=
g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[e>>2]=b;c[f>>2]=d;b=c[f>>2]|0;c[b>>2]=0;c[b+4>
;>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;if((c[(c[e>>2]|0)+72>>2]|0)!=(c[(c[h>>2]|
0)+24>>2]|0)){i=g;return}_d((c[e>>2]|0)+108|0,c[f>>2]|0);i=g;return}function Hp(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=Oa[c[(
c[(c[(c[h>>2]|0)+20>>2]|0)+56>>2]|0)+12>>2]&63](c[(c[h>>2]|0)+60>>
;2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function Ip(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;j=i;i=i+32|0;m=j+16|0;g=j+12|0;l=j+8|0;k=j+4|0;h=j;c[m>>2]=b;c[g>>2]=d;c[l>>2]=e;c[k>
;>2]=f;c[h>>2]=Ep(c[m>>2]|0,c[g>>2]|0,c[l>>2]|0,c[k>>2]|0,3)|0;if(c[h>
;>2]|0){m=c[h>>2]|0;i=j;return m|0}a[(c[g>>2]|0)+76+18>>0]=5;m=c[h>>2]|0;i=j;return
m|0}function Jp(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;j=i;i=i+32|0;m=j+16|0;g=j+12|0;l=j+8|0;k=j+4|0;h=j
;c[m>>2]=b;c[g>>2]=d;c[l>>2]=e;c[k>>2]=f;c[h>>2]=Ep(c[m>>2]|0,c[g>
;>2]|0,c[l>>2]|0,c[k>>2]|0,4)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=j;return m|0}a[(c[g>
;>2]|0)+76+18>>0]=6;m=c[h>>2]|0;i=j;return m|0}function Kp(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[(c[e>>2]|
0)+32>>2]=c[g>>2];a=hc(c[g>>2]|0,4,0,c[f>>2]|0,0,h)|0;c[(c[e>>2]|0)+24>
x3e;2]=a;if((c[h>>2]|0)==0?(a=hc(c[g>>2]|0,4,0,c[f>>2]|0,0,h)|0,c[(c[e>>2]|0)+28>
x3e;2]=a,(c[h>>2]|0)==0):0){c[(c[e>>2]|0)+16>>2]=c[f>>2];c[(c[e>>2]|0)+12>
;>2]=-559038737;c[(c[e>>2]|0)+20>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+8>
;>2]=0;c[(c[e>>2]|0)+4>>2]=0;a=(c[e>>2]|0)+36|0;c[a>>2]=c[1094];c[a+4>>2]=
c[1095];c[a+8>>2]=c[1096];c[a+12>>2]=c[1097]}if(!(c[h>>2]|0)){a=c[h>>2]|0;i=j;return a|0
}Fb(c[g>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;a=c[h>>
2]|0;i=j;return a|0}function Lp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;d=g+4|0;f=g;c[b>>2]=a;c
[e>>2]=c[(c[b>>2]|0)+32>>2];c[f>>2]=c[c[b>>2]>>2];if(!(c[f>>
;2]|0)){i=g;return}a=bc(c[e>>2]|0,c[(c[b>>2]|0)+4>>2]|0,d)|0;c[c[b>>2]>>2]=a;if
(c[d>>2]|0){i=g;return}Ss(c[c[b>>2]>>2]|0,c[f>>2]|0,c[(c[b>>2]|0)+4>>
;2]|0)|0;Mp(c[b>>2]|0,c[f>>2]|0);c[(c[b>>2]|0)+8>>2]=c[(c[b>>2]|0)+4>>
;2];Fb(c[e>>2]|0,c[f>>2]|0);c[f>>2]=0;c[d>>2]=c[d>>2];i=g;return}function Mp(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;h=g+16|0;j=g+12|0;d=g+8|0;f=g+4|0;e=g;c[h>>2]=a;c[j>>
;2]=b;c[d>>2]=(c[c[h>>2]>>2]|0)-(c[j>>2]|0);c[f>>2]=c[(c[h>>2]|0)+24
>>2];c[e>>2]=(c[f>>2]|0)+(c[(c[h>>2]|0)+16>>2]<<2);while(1){if((c[f
x3e;>2]|0)>>>0>=(c[e>>2]|0)>>>0)break;if(c[c[f>>2]>>2]|0){
j=c[f>>2]|0;c[j>>2]=(c[j>>2]|0)+(c[d>>2]|0)}c[f>>2]=(c[f>>2]|0)+4}i=
g;return}function Np(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o
+20|0;j=o+16|0;k=o+12|0;l=o+8|0;n=o+4|0;m=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if((
c[h>>2]|0)>=0?(c[h>>2]|0)<(c[(c[g>>2]|0)+16>>2]|0):0){if((c[k>>2]|0)
x3c;0){c[f>>2]=6;a=c[f>>2]|0;i=o;return a|0}do if(((c[(c[g>>2]|0)+4>>2]|0)+(c[k>>
;2]|0)|0)>>>0>(c[(c[g>>2]|0)+8>>2]|0)>>>0){c[n>>2]=c[(c[g>
x3e;2]|0)+8>>2];a=(c[j>>2]|0)-(c[c[g>>2]>>2]|0)|0;c[m>>2]=a;c[m>>2]=(
c[m>>2]|0)>>>0>=(c[(c[g>>2]|0)+8>>2]|0)>>>0?-1:a;while(1){if((c
[n>>2]|0)>>>0>=((c[(c[g>>2]|0)+4>>2]|0)+(c[k>>2]|0)|0)>>
x3e;0)break;c[n>>2]=(c[n>>2]|0)+(((c[n>>2]|0)>>>2)+1);c[n>>2]=(c[n>
x3e;2]|0)+1023&-1024}c[l>>2]=Op(c[g>>2]|0,c[n>>2]|0)|0;if(c[l>>2]|0){c[f>>
;2]=c[l>>2];a=c[f>>2]|0;i=o;return a|0}else{if((c[m>>2]|0)<0)break;c[j>>2]=(c[c[g
x3e;>2]>>2]|0)+(c[m>>2]|0);break}}while(0);c[(c[(c[g>>2]|0)+24>>2]|0)+(c[h>>
;2]<<2)>>2]=(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+4>>2]|0);c[(c[(c[g>
;>2]|0)+28>>2]|0)+(c[h>>2]<<2)>>2]=c[k>>2];Ss((c[c[g>>2]>
x3e;2]|0)+(c[(c[g>>2]|0)+4>>2]|0)|0,c[j>>2]|0,c[k>>2]|0)|0;a=(c[g>>2]|0)+4|0;c
[a>>2]=(c[a>>2]|0)+(c[k>>2]|0);c[f>>2]=0;a=c[f>>2]|0;i=o;return a|0}c[f>
x3e;2]=6;a=c[f>>2]|0;i=o;return a|0}function Op(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0
;e=k+16|0;f=k+12|0;h=k+8|0;j=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[h>>2]=c[(c[e>>2]|0)+32>
;>2];c[j>>2]=c[c[e>>2]>>2];b=bc(c[h>>2]|0,c[f>>2]|0,g)|0;c[c[e>>
;2]>>2]=b;b=c[j>>2]|0;if(c[g>>2]|0){c[c[e>>2]>>2]=b;c[d>>2]=c[g>
;>2];j=c[d>>2]|0;i=k;return j|0}if(b|0){Ss(c[c[e>>2]>>2]|0,c[j>>2]|0,c[(c[e>
x3e;2]|0)+8>>2]|0)|0;Mp(c[e>>2]|0,c[j>>2]|0);Fb(c[h>>2]|0,c[j>>2]|0);c[j>
x3e;2]=0}c[(c[e>>2]|0)+8>>2]=c[f>>2];c[d>>2]=0;j=c[d>>2]|0;i=k;return j|0}function
Pp(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+32>>
;2];if((c[(c[b>>2]|0)+12>>2]|0)!=-559038737){i=e;return}Fb(c[d>>2]|0,c[c[b>>2]>>
;2]|0);c[c[b>>2]>>2]=0;Fb(c[d>>2]|0,c[(c[b>>2]|0)+24>>2]|0);c[(c[b>>
2]|0)+24>>2]=0;Fb(c[d>>2]|0,c[(c[b>>2]|0)+28>>2]|0);c[(c[b>>2]|0)+28>>
;2]=0;c[(c[b>>2]|0)+12>>2]=0;i=e;return}function Qp(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;j=f+8|0;k=f+4|0;h=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[h>>2]=e;c[(c[
g>>2]|0)+12>>2]=0;c[(c[g>>2]|0)+4>>2]=c[j>>2];c[(c[g>>2]|0)+8>
x3e;2]=c[k>>2];c[c[g>>2]>>2]=c[j>>2];c[(c[g>>2]|0)+16>>2]=c[h>
x3e;2];b=(c[g>>2]|0)+20|0;d=4392;e=b+52|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0
));i=f;return}function Rp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return
}function Sp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Tp(c[d>>2]|0,c[(c[d>>2]|0)+8>>
;2]|0);i=b;return}function Tp(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+8|0;e=h+4|0;g=h;c[f>>2]=a;c[e>
;>2]=b;c[g>>2]=c[c[f>>2]>>2];while(1){if((c[g>>2]|0)>>>0>=(c[e
x3e;>2]|0)>>>0){e=12;break}if((((((d[c[g>>2]>>0]|0|0)!=32?(d[c[g>>2]>>
;0]|0|0)!=13:0)?(d[c[g>>2]>>0]|0|0)!=10:0)?(d[c[g>>2]>>0]|0|0)!=9:0)?(d[c[g>>2
]>>0]|0|0)!=12:0)?d[c[g>>2]>>0]|0|0:0){if((d[c[g>>2]>>0]|0|0)!=37){e=12;break}
Up(g,c[e>>2]|0)}c[g>>2]=(c[g>>2]|0)+1}if((e|0)==12){c[c[f>>2]>>2]=c[g>>
;2];i=h;return}}function Up(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=c[c[e>>2]>>2];while(1){if((c[g>>2]|0)>>>0>=(c[f>
;>2]|0)>>>0)break;if((d[c[g>>2]>>0]|0|0)==13)break;if((d[c[g>>2]>>0]|
0|0)==10)break;c[g>>2]=(c[g>>2]|0)+1}c[c[e>>2]>>2]=c[g>>2];i=h;return}function
Vp(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=c[c[e
x3e;>2]>>2];c[h>>2]=c[(c[e>>2]|0)+8>>2];c[g>>2]=0;Tp(f,c[h>>2]|
0);a:do if((c[f>>2]|0)>>>0<(c[h>>2]|0)>>>0){if((d[c[f>>2]>
x3e;0]|0|0)!=91?(d[c[f>>2]>>0]|0|0)!=93:0){if((d[c[f>>2]>>0]|0|0)==123){c[g>>2
]=Wp(f,c[h>>2]|0)|0;break}if((d[c[f>>2]>>0]|0|0)==40){c[g>>2]=Xp(f,c[h>>2]|0)|
0;break}a=c[f>>2]|0;if((d[c[f>>2]>>0]|0|0)==60){if((a+1|0)>>>0<(c[h>>
;2]|0)>>>0?(d[(c[f>>2]|0)+1>>0]|0|0)==60:0){c[f>>2]=(c[f>>2]|0)+1;c[f>
;>2]=(c[f>>2]|0)+1;break}c[g>>2]=Yp(f,c[h>>2]|0)|0;break}b=c[f>>2]|0;if((d[a>
x3e;0]|0|0)==62){c[f>>2]=b+1;if((c[f>>2]|0)>>>0<(c[h>>2]|0)>>>0
?(d[c[f>>2]>>0]|0|0)==62:0){c[f>>2]=(c[f>>2]|0)+1;break}c[g>>2]=3;break}if((d[
b>>0]|0|0)==47)c[f>>2]=(c[f>>2]|0)+1;while(1){if((c[f>>2]|0)>>>0>=(c
[h>>2]|0)>>>0)break a;if((d[c[f>>2]>>0]|0|0)==32)break a;if((d[c[f>>2]>
;>0]|0|0)==13)break a;if((d[c[f>>2]>>0]|0|0)==10)break a;if((d[c[f>>2]>>0]|0|0)==9)
break a;if((d[c[f>>2]>>0]|0|0)==12)break a;if(!(d[c[f>>2]>>0]|0))break a;if((d[c[f>
x3e;2]>>0]|0|0)==47)break a;if((d[c[f>>2]>>0]|0|0)==40)break a;if((d[c[f>>2]>>
0]|0|0)==41)break a;if((d[c[f>>2]>>0]|0|0)==60)break a;if((d[c[f>>2]>>0]|0|0)==62)break
a;if((d[c[f>>2]>>0]|0|0)==91)break a;if((d[c[f>>2]>>0]|0|0)==93)break a;if((d[c[f>
x3e;2]>>0]|0|0)==123)break a;if((d[c[f>>2]>>0]|0|0)==125)break a;if((d[c[f>>2]>>
;0]|0|0)==37)break a;c[f>>2]=(c[f>>2]|0)+1}}c[f>>2]=(c[f>>2]|0)+1}while(0);if((c[f>
x3e;2]|0)!=(c[c[e>>2]>>2]|0)){h=c[g>>2]|0;g=c[e>>2]|0;g=g+12|0;c[g>>2]=h;g=c[f
>>2]|0;h=c[e>>2]|0;c[h>>2]=g;i=j;return}c[g>>2]=3;h=c[g>>2]|0;g=c[e>>
;2]|0;g=g+12|0;c[g>>2]=h;g=c[f>>2]|0;h=c[e>>2]|0;c[h>>2]=g;i=j;return}function Wp(a,b){a
=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+16|0;f=l+12|0;g=l+8|0;h=l+4|0;j=l;c[e>>2]=a;c[f>>
;2]=b;c[h>>2]=0;c[j>>2]=0;c[g>>2]=c[c[e>>2]>>2];a:while(1){if(!((c[g>>
;2]|0)>>>0<(c[f>>2]|0)>>>0?(c[j>>2]|0)==0:0))break;switch(d[c[g>>
;2]>>0]|0|0){case 123:{c[h>>2]=(c[h>>2]|0)+1;break}case 125:{c[h>>2]=(c[h>>2]|
0)+-1;if(!(c[h>>2]|0)){k=6;break a}break}case 40:{c[j>>2]=Xp(g,c[f>>2]|0)|0;break}case 60:{c[j>
;>2]=Yp(g,c[f>>2]|0)|0;break}case 37:{Up(g,c[f>>2]|0);break}default:{}}c[g>>2]=(c[g>>
;2]|0)+1}if((k|0)==6)c[g>>2]=(c[g>>2]|0)+1;if(!(c[h>>2]|0)){b=c[g>>2]|0;k=c[e>>
;2]|0;c[k>>2]=b;k=c[j>>2]|0;i=l;return k|0}c[j>>2]=3;b=c[g>>2]|0;k=c[e>>2]|0;c
[k>>2]=b;k=c[j>>2]|0;i=l;return k|0}function Xp(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;n=i;i=i
+32|0;k=n+20|0;f=n+16|0;l=n+12|0;h=n+8|0;m=n+4|0;j=n;g=n+24|0;c[k>>2]=b;c[f>>2]=e;c[l>>2]=c[c[k>
;>2]>>2];c[h>>2]=0;c[m>>2]=3;a:while(1){if((c[l>>2]|0)>>>0>=(c[
f>>2]|0)>>>0){f=18;break}a[g>>0]=a[c[l>>2]>>0]|0;c[l>>2]=(c[l
x3e;>2]|0)+1;if((d[g>>0]|0|0)!=92){if((d[g>>0]|0|0)==40){c[h>>2]=(c[h>>2]|0)+1;continue
}if((d[g>>0]|0|0)!=41)continue;c[h>>2]=(c[h>>2]|0)+-1;if(!(c[h>>2]|0)){f=17;break}else continue
}if((c[l>>2]|0)==(c[f>>2]|0)){f=18;break}switch(d[c[l>>2]>>0]|0|0){case 41:case 40:case
92:case 102:case 98:case 116:case 114:case 110:{c[l>>2]=(c[l>>2]|0)+1;continue a}default:{}}c[j>>2
]=0;while(1){if((c[j>>2]|0)>>>0>=3)continue a;if((c[l>>2]|0)>>>0>=(c
[f>>2]|0)>>>0)continue a;if(48>(d[c[l>>2]>>0]|0|0))continue a;if((d[c[l>
x3e;2]>>0]|0|0)>55)continue a;c[l>>2]=(c[l>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1
}}if((f|0)==17){c[m>>2]=0;e=c[l>>2]|0;l=c[k>>2]|0;c[l>>2]=e;m=c[m>>2]|0;i=n;return
m|0}else if((f|0)==18){e=c[l>>2]|0;l=c[k>>2]|0;c[l>>2]=e;m=c[m>>2]|0;i=n;return m|0}return
0}function Yp(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=c[c[e>>2]>>2];c[h>>2]=0;while(1){b=(c[g>>2]|0)+1|0;c[g>
x3e;2]=b;if(b>>>0>=(c[f>>2]|0)>>>0)break;Tp(g,c[f>>2]|0);if((c[g>>
;2]|0)>>>0>=(c[f>>2]|0)>>>0)break;if((d[c[g>>2]>>0]|0|0)>=
48?(d[c[g>>2]>>0]|0|0)<=57:0)continue;if((d[c[g>>2]>>0]|0|0)>=65?(d[c[g>
x3e;2]>>0]|0|0)<=70:0)continue;if((d[c[g>>2]>>0]|0|0)<97)break;if((d[c[g>>2]
x3e;>0]|0|0)>102)break}if((c[g>>2]|0)>>>0<(c[f>>2]|0)>>>0?(d[c[
g>>2]>>0]|0|0)!=62:0){c[h>>2]=3;g=c[g>>2]|0;b=c[e>>2]|0;c[b>>2]=g;b=
c[h>>2]|0;i=j;return b|0}c[g>>2]=(c[g>>2]|0)+1;g=c[g>>2]|0;b=c[e>>2]|0;c[b>
;>2]=g;b=c[h>>2]|0;i=j;return b|0}function Zp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Sp(c[d>
;>2]|0);a=_p(c[d>>2]|0,c[(c[d>>2]|0)+8>>2]|0)|0;i=b;return a|0}function _p(a,b){a=a|0;b=b|0;var
e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[f>>2]=a;c[g>>2]=b;c[h>>
;2]=$p(c[f>>2]|0,c[g>>2]|0,10)|0;c[j>>2]=c[c[f>>2]>>2];if((c[j>>2]|0
)>>>0<(c[g>>2]|0)>>>0?(d[c[j>>2]>>0]|0|0)==35:0){c[c[f>>
;2]>>2]=(c[j>>2]|0)+1;c[e>>2]=$p(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;j=
c[e>>2]|0;i=k;return j|0}c[e>>2]=c[h>>2];j=c[e>>2]|0;i=k;return j|0}function $p(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;q=i;i=i+32|0;g=q+20|0;h=q+16|0;j=q+12|0;k=q+8|0;n=q+4|0;m=q;o=q+25|
0;l=q+24|0;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[n>>2]=c[c[h>>2]>>2];c[m
x3e;>2]=0;a[o>>0]=0;if(((c[k>>2]|0)<2?1:(c[n>>2]|0)==(c[j>>2]|0))|(c[k>
x3e;2]|0)>36){c[g>>2]=0;p=c[g>>2]|0;i=q;return p|0}if(!((d[c[n>>2]>>0]|0)!=45?(d[c[
n>>2]>>0]|0)!=43:0))p=5;if((p|0)==5?(a[o>>0]=(d[c[n>>2]>>0]|0)==45,c[n>
x3e;2]=(c[n>>2]|0)+1,(c[n>>2]|0)==(c[j>>2]|0)):0){c[g>>2]=0;p=c[g>>2]|0;i=q;return
p|0}while(1){if((c[n>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;if((d[c[n>
x3e;2]>>0]|0)==32)break;if((d[c[n>>2]>>0]|0)==13)break;if((d[c[n>>2]>>0]|0)==10
)break;if((d[c[n>>2]>>0]|0)==9)break;if((d[c[n>>2]>>0]|0)==12)break;if(!(d[c[n>>
;2]>>0]|0))break;if((d[c[n>>2]>>0]|0)>=128)break;a[l>>0]=a[11579+(d[c[n>>
2]>>0]&127)>>0]|0;if((a[l>>0]|0)<0)break;if((a[l>>0]|0)>=(c[k>>
2]|0))break;p=_(c[m>>2]|0,c[k>>2]|0)|0;c[m>>2]=p+(a[l>>0]|0);c[n>>2]=(c[n>
;>2]|0)+1}if(a[o>>0]|0)c[m>>2]=0-(c[m>>2]|0);c[c[h>>2]>>2]=c[n>>
;2];c[g>>2]=c[m>>2];p=c[g>>2]|0;i=q;return p|0}function aq(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;Sp(c[f>>2]|0);b=bq(c[f>>2]|0,c[(c[f>>2]|
0)+8>>2]|0,c[e>>2]|0)|0;i=d;return b|0}function bq(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;s=i;i=i+48|0;g=s+28|0;h=s+24|0;j=s+20|0;k=s+16|0;p=s+12|0;o=s+8|0;m=s+4|0;n=s;q=s+33|0;l=s+32|0;c[h>>
;2]=b;c[j>>2]=e;c[k>>2]=f;c[p>>2]=c[c[h>>2]>>2];c[m>>2]=0;c[n>
x3e;2]=1;a[q>>0]=0;if((c[p>>2]|0)==(c[j>>2]|0)){c[g>>2]=0;r=c[g>>2]|0;i=s;return
r|0}if(!((d[c[p>>2]>>0]|0)!=45?(d[c[p>>2]>>0]|0)!=43:0))r=5;if((r|0)==5?(a[q>>
;0]=(d[c[p>>2]>>0]|0)==45,c[p>>2]=(c[p>>2]|0)+1,(c[p>>2]|0)==(c[j>>2
]|0)):0){c[g>>2]=0;r=c[g>>2]|0;i=s;return r|0}if((d[c[p>>2]>>0]|0)!=46)c[o>>2]=(
_p(p,c[j>>2]|0)|0)<<16;else c[o>>2]=0;a:do if((c[p>>2]|0)>>>0<(c[j
x3e;>2]|0)>>>0?(d[c[p>>2]>>0]|0)==46:0){c[p>>2]=(c[p>>2]|0)+1;while(
1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break a;if((d[c[p>>2]>
;>0]|0)==32)break a;if((d[c[p>>2]>>0]|0)==13)break a;if((d[c[p>>2]>>0]|0)==10)break
a;if((d[c[p>>2]>>0]|0)==9)break a;if((d[c[p>>2]>>0]|0)==12)break a;if(!(d[c[p>>
;2]>>0]|0))break a;if((d[c[p>>2]>>0]|0)>=128)break a;a[l>>0]=a[11579+(d[c[p>
x3e;2]>>0]&127)>>0]|0;if((a[l>>0]|0)<0)break a;if((a[l>>0]|0)>=10)break a
;if(!((c[o>>2]|0)==0&(c[k>>2]|0)>0)){if((c[n>>2]|0)<1e7){c[m>>2]=((c[m>
;>2]|0)*10|0)+(a[l>>0]|0);c[n>>2]=(c[n>>2]|0)*10}}else{c[k>>2]=(c[k>>2]|0
)+-1;c[m>>2]=((c[m>>2]|0)*10|0)+(a[l>>0]|0)}c[p>>2]=(c[p>>2]|0)+1}}while(0);do
if(((c[p>>2]|0)+1|0)>>>0<(c[j>>2]|0)>>>0){if((d[c[p>>2]>
x3e;0]|0)!=101?(d[c[p>>2]>>0]|0)!=69:0)break;c[p>>2]=(c[p>>2]|0)+1;r=_p(p,c[j>>
;2]|0)|0;c[k>>2]=(c[k>>2]|0)+r}while(0);while(1){if((c[k>>2]|0)<=0)break;c[o>>2]=(c
[o>>2]|0)*10;c[m>>2]=(c[m>>2]|0)*10;c[k>>2]=(c[k>>2]|0)+-1}while(1){if((c[k>
;>2]|0)>=0)break;c[o>>2]=(c[o>>2]|0)/10|0;c[n>>2]=(c[n>>2]|0)*10;c[k>>
;2]=(c[k>>2]|0)+1}if(c[m>>2]|0){r=Vb(c[m>>2]|0,c[n>>2]|0)|0;c[o>>2]=(c[o>
x3e;2]|0)+r}if(a[q>>0]|0)c[o>>2]=0-(c[o>>2]|0);c[c[h>>2]>>2]=c[p>>2];
c[g>>2]=c[o>>2];r=c[g>>2]|0;i=s;return r|0}function cq(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;q=i;i=i+32|0;j=q+20|0;k=q+16|0;l=q+12|0;m=q+8|0;n=q+24|0;p=q+4|0;o=q;c[j>>2]=b;c[k>
;>2]=e;c[l>>2]=f;c[m>>2]=g;a[n>>0]=h;c[p>>2]=0;Sp(c[j>>2]|0);c[o>>
;2]=c[c[j>>2]>>2];if((c[o>>2]|0)>>>0>=(c[(c[j>>2]|0)+8>>2]|
0)>>>0){g=c[p>>2]|0;i=q;return g|0}do if(a[n>>0]|0){if((d[c[o>>2]>>0]|0)==
60){c[o>>2]=(c[o>>2]|0)+1;break}c[p>>2]=3;g=c[p>>2]|0;i=q;return g|0}while(0);g=dq(o,c[(
c[j>>2]|0)+8>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;c[c[m>>2]>>2]=g;if(a[n>
;>0]|0){if((c[o>>2]|0)>>>0<(c[(c[j>>2]|0)+8>>2]|0)>>>0?(d[
c[o>>2]>>0]|0)!=62:0){c[p>>2]=3;g=c[p>>2]|0;i=q;return g|0}c[o>>2]=(c[o>
x3e;2]|0)+1}c[c[j>>2]>>2]=c[o>>2];g=c[p>>2]|0;i=q;return g|0}function dq(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;r=i;i=i+48|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0;n=r+16|0;p=r+12|0
;q=r+8|0;o=r+4|0;m=r;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[p>>2]=0;c[q>
;>2]=0;c[o>>2]=1;c[l>>2]=c[l>>2]<<1;c[n>>2]=c[c[h>>2]>>
;2];if((c[l>>2]|0)>>>0>((c[j>>2]|0)-(c[n>>2]|0)|0)>>>0)c[l>
;>2]=(c[j>>2]|0)-(c[n>>2]|0);while(1){if((c[p>>2]|0)>>>0>=(c[l>>
;2]|0)>>>0)break;c[m>>2]=d[(c[n>>2]|0)+(c[p>>2]|0)>>0];if(!((c[m>>
;2]|0)==32|(c[m>>2]|0)==13|(c[m>>2]|0)==10|(c[m>>2]|0)==9|(c[m>>2]|0)==12|(c[m>>
;2]|0)==0)){if((c[m>>2]|0)>>>0>=128)break;c[m>>2]=a[11579+(c[m>>2]&127)
x3e;>0];if((c[m>>2]|0)>>>0>=16)break;c[o>>2]=c[o>>2]<<4|c[m>
;>2];if(c[o>>2]&256|0){e=c[o>>2]&255;g=c[q>>2]|0;c[q>>2]=g+1;a[(c[k>
x3e;2]|0)+g>>0]=e;c[o>>2]=1}}c[p>>2]=(c[p>>2]|0)+1}if((c[o>>2]|0)==1){n=c[n>
;>2]|0;o=c[p>>2]|0;o=n+o|0;p=c[h>>2]|0;c[p>>2]=o;q=c[q>>2]|0;i=r;return q|0}g=c[o
x3e;>2]<<4&255;o=c[q>>2]|0;c[q>>2]=o+1;a[(c[k>>2]|0)+o>>0]=g;n=c[n
x3e;>2]|0;o=c[p>>2]|0;o=n+o|0;p=c[h>>2]|0;c[p>>2]=o;q=c[q>>2]|0;i=r;return q|0}function
eq(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;Sp(c[h>>2]|0);a=fq(c[h>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[g>>2]|0,c[f
x3e;>2]|0)|0;i=e;return a|0}function fq(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;t=
i;i=i+32|0;q=t+24|0;k=t+20|0;l=t+16|0;m=t+12|0;s=t+8|0;r=t+4|0;j=t+31|0;o=t+30|0;n=t+28|0;p=t;c[q>>2]=e;c[k>>
;2]=f;c[l>>2]=g;c[m>>2]=h;c[s>>2]=c[c[q>>2]>>2];c[r>>2]=0;a:do if((c
[s>>2]|0)>>>0<(c[k>>2]|0)>>>0){a[j>>0]=a[c[s>>2]>
;>0]|0;a[o>>0]=0;if((d[j>>0]|0)!=91){if((d[j>>0]|0)==123)a[o>>0]=125}else a[o>
x3e;0]=93;if(a[o>>0]|0)c[s>>2]=(c[s>>2]|0)+1;while(1){if((c[s>>2]|0)>>>0
x3e;=(c[k>>2]|0)>>>0)break a;Tp(s,c[k>>2]|0);if((c[s>>2]|0)>>>0>
;=(c[k>>2]|0)>>>0)break a;j=c[s>>2]|0;if((d[c[s>>2]>>0]|0)==(d[o>>
;0]|0)){e=11;break}c[p>>2]=j;if(c[m>>2]|0?(c[r>>2]|0)>=(c[l>>2]|0):0)break a;e=(bq(
s,c[k>>2]|0,0)|0)>>16&65535;if(c[m>>2]|0)j=(c[m>>2]|0)+(c[r>>2]<<
;1)|0;else j=n;b[j>>1]=e;if((c[p>>2]|0)==(c[s>>2]|0)){e=17;break}c[r>>2]=(c[r>>
;2]|0)+1;if(!(a[o>>0]|0))break a}if((e|0)==11){c[s>>2]=j+1;break}else if((e|0)==17){c[r>>2]=-1;break
}}while(0);c[c[q>>2]>>2]=c[s>>2];i=t;return c[r>>2]|0}function gq(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>
x3e;2]=d;c[g>>2]=e;Sp(c[k>>2]|0);d=hq(c[k>>2]|0,c[(c[k>>2]|0)+8>>2]|0,c[j>
;>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=f;return d|0}function hq(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;u=i;i=i+48|0;r=u+32|0;k=u+28|0;l=u+24|0;m=u+20|0;n=u+16|0;t=u+12|0;s=u+8|0;j=u+37
|0;p=u+36|0;o=u+4|0;q=u;c[r>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[t
x3e;>2]=c[c[r>>2]>>2];c[s>>2]=0;a:do if((c[t>>2]|0)>>>0<(c[k>
;>2]|0)>>>0){a[j>>0]=a[c[t>>2]>>0]|0;a[p>>0]=0;if((d[j>>0]|
0)!=91){if((d[j>>0]|0)==123)a[p>>0]=125}else a[p>>0]=93;if(a[p>>0]|0)c[t>>2]=(
c[t>>2]|0)+1;while(1){if((c[t>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break
a;Tp(t,c[k>>2]|0);if((c[t>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break a;
j=c[t>>2]|0;if((d[c[t>>2]>>0]|0)==(d[p>>0]|0)){b=11;break}c[q>>2]=j;if(c[m>
;>2]|0?(c[s>>2]|0)>=(c[l>>2]|0):0)break a;b=bq(t,c[k>>2]|0,c[n>>2]|0)|0;if(c[m
>>2]|0)j=(c[m>>2]|0)+(c[s>>2]<<2)|0;else j=o;c[j>>2]=b;if((c[q>>2]|0
)==(c[t>>2]|0)){b=17;break}c[s>>2]=(c[s>>2]|0)+1;if(!(a[p>>0]|0))break a}if((b|0)==11){c
[t>>2]=j+1;break}else if((b|0)==17){c[s>>2]=-1;break}}while(0);c[c[r>>2]>>2]=c[t>
x3e;2];i=u;return c[s>>2]|0}function iq(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;e=k+16|0;f=k+12|0;g=
k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;c[(c[f>>2]|0)+8>>2]=0;c[c[f>>2]>>
;2]=0;c[(c[f>>2]|0)+4>>2]=0;Sp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];c[j
x3e;>2]=c[(c[e>>2]|0)+8>>2];if((c[g>>2]|0)>>>0>=(c[j>>2]|0)>
;>>0){i=k;return}a:do switch(d[c[g>>2]>>0]|0|0){case 40:{c[(c[f>>2]|0)+8>>2]=2
;c[c[f>>2]>>2]=c[g>>2];if(!(Xp(g,c[j>>2]|0)|0))c[(c[f>>2]|0)+4>>2]=c
[g>>2];break}case 123:{c[(c[f>>2]|0)+8>>2]=3;c[c[f>>2]>>2]=c[g>>2];if
(!(Wp(g,c[j>>2]|0)|0))c[(c[f>>2]|0)+4>>2]=c[g>>2];break}case 91:{c[(c[f>>2]|0)+
8>>2]=3;c[h>>2]=1;b=c[g>>2]|0;c[g>>2]=b+1;c[c[f>>2]>>2]=b;c[c[e>
;>2]>>2]=c[g>>2];Sp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];while(1){if
((c[g>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break a;if(!((c[(c[e>>2]|0)+12
>>2]|0)!=0^1))break a;if((d[c[g>>2]>>0]|0|0)!=91){if((d[c[g>>2]>>0]|0|0)==93?(
c[h>>2]=(c[h>>2]|0)+-1,(c[h>>2]|0)<=0):0)break}else c[h>>2]=(c[h>>2]|0)+1
;c[c[e>>2]>>2]=c[g>>2];Vp(c[e>>2]|0);Sp(c[e>>2]|0);c[g>>2]=c[c[e>
;>2]>>2]}b=(c[g>>2]|0)+1|0;c[g>>2]=b;c[(c[f>>2]|0)+4>>2]=b;break}default:{
c[c[f>>2]>>2]=c[g>>2];c[(c[f>>2]|0)+8>>2]=(d[c[g>>2]>>0]|0
|0)==47?4:1;Vp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];if(!(c[(c[e>>2]|0)+12>>
;2]|0))c[(c[f>>2]|0)+4>>2]=c[g>>2]}}while(0);if(!(c[(c[f>>2]|0)+4>>2]|0)){c[c[
f>>2]>>2]=0;c[(c[f>>2]|0)+8>>2]=0}c[c[e>>2]>>2]=c[g>>2];i=
k;return}function jq(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;q=i;i=i+64|0;f=q+52|0;g=q+
48|0;h=q+44|0;j=q+40|0;m=q+28|0;n=q+24|0;o=q+20|0;k=q+16|0;l=q+12|0;p=q;c[f>>2]=a;c[g>>2]=b;c[h>>2
]=d;c[j>>2]=e;c[c[j>>2]>>2]=-1;iq(c[f>>2]|0,m);if((c[m+8>>2]|0)!=3){i=q;return
}c[n>>2]=c[c[f>>2]>>2];c[o>>2]=c[(c[f>>2]|0)+8>>2];c[k>>2]=
c[g>>2];c[l>>2]=(c[k>>2]|0)+((c[h>>2]|0)*12|0);c[c[f>>2]>>2]=(c[m>
;>2]|0)+1;c[(c[f>>2]|0)+8>>2]=(c[m+4>>2]|0)+-1;while(1){if((c[c[f>>2]>>2]|
0)>>>0>=(c[(c[f>>2]|0)+8>>2]|0)>>>0)break;iq(c[f>>2]|0,p);if(!(
c[p+8>>2]|0))break;if(c[g>>2]|0?(c[k>>2]|0)>>>0<(c[l>>2]|0)>>
;>0:0){b=c[k>>2]|0;c[b>>2]=c[p>>2];c[b+4>>2]=c[p+4>>2];c[b+8>>2
]=c[p+8>>2]}c[k>>2]=(c[k>>2]|0)+12}c[c[j>>2]>>2]=((c[k>>2]|0)-(c[g
x3e;>2]|0)|0)/12|0;c[c[f>>2]>>2]=c[n>>2];c[(c[f>>2]|0)+8>>2]=c[o>>
;2];i=q;return}function kq(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;H=i;i=i+128|0;k=H+112|0;l=H+108|0;m=H+104|0;n=H+100|0;o=H+96|0;D=H+84|0;r=H+80|0;v=H+76|
0;q=H+72|0;t=H+68|0;s=H+64|0;E=H+52|0;x=H+48|0;y=H+44|0;z=H+40|0;F=H+36|0;B=H+32|0;w=H+28|0;u=H+24|0;C=H+8|0;p=H+4|0;A=H;c[k>
;>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;iq(c[k>>2]|0,D);a:do if(c[
D+8>>2]|0){c[q>>2]=1;c[t>>2]=0;c[r>>2]=c[D>>2];c[v>>2]=c[D+4>
x3e;2];if((c[(c[l>>2]|0)+8>>2]|0)==7){c[x>>2]=c[c[k>>2]>>2];c[y>>2]=
c[(c[k>>2]|0)+8>>2];c[c[k>>2]>>2]=(c[D>>2]|0)+1;c[(c[k>>2]|0)+8>
;>2]=(c[D+4>>2]|0)+-1;iq(c[k>>2]|0,E);c[c[k>>2]>>2]=c[x>>2];c[(c[k>
x3e;2]|0)+8>>2]=c[y>>2];if((c[E+8>>2]|0)==3)G=5}else if((c[D+8>>2]|0)==3)G=5;if((G|0)==5
){if(!(c[n>>2]|0))break;c[q>>2]=c[n>>2];c[t>>2]=1;c[r>>2]=(c[r>>2]|0
)+1;c[v>>2]=(c[v>>2]|0)+-1}b:while(1){if((c[q>>2]|0)>>>0<=0){G=32;break}c[z>
;>2]=(c[(c[m>>2]|0)+(c[t>>2]<<2)>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0
);Tp(r,c[v>>2]|0);switch(c[(c[l>>2]|0)+8>>2]|0){case 1:{c[F>>2]=lq(r,c[v>>2]|0
)|0;G=13;break}case 3:{c[F>>2]=bq(r,c[v>>2]|0,0)|0;G=13;break}case 4:{c[F>>2]=bq(r,c[v>>
2]|0,3)|0;G=13;break}case 2:{c[F>>2]=_p(r,c[v>>2]|0)|0;G=13;break}case 6:case 5:{c[w>>2]=c[(c[k>
;>2]|0)+16>>2];c[u>>2]=(c[v>>2]|0)-(c[r>>2]|0);if((c[r>>2]|0)>>
x3e;0<(c[v>>2]|0)>>>0){if((c[D+8>>2]|0)==4){c[u>>2]=(c[u>>2]|0)+-1;c
[r>>2]=(c[r>>2]|0)+1}else{if((c[D+8>>2]|0)!=2){G=23;break b}c[r>>2]=(c[r>>2]|0
)+1;c[u>>2]=(c[u>>2]|0)-2}if(c[c[z>>2]>>2]|0){Fb(c[w>>2]|0,c[c[z>>2]
x3e;>2]|0);c[c[z>>2]>>2]=0;c[c[z>>2]>>2]=0}c[B>>2]=bc(c[w>>2]|0
,(c[u>>2]|0)+1|0,s)|0;if(c[s>>2]|0){G=33;break b}Ss(c[B>>2]|0,c[r>>2]|0,c[u>>2
]|0)|0;a[(c[B>>2]|0)+(c[u>>2]|0)>>0]=0;c[c[z>>2]>>2]=c[B>>2]}break}case
7:{c[p>>2]=c[z>>2];c[A>>2]=hq(r,c[v>>2]|0,4,C,0)|0;if((c[A>>2]|0)<0){G=29
;break b}E=Tb(c[C>>2]|0)|0;c[c[p>>2]>>2]=E;E=Tb(c[C+4>>2]|0)|0;c[(c[p>>2]|0)+4
>>2]=E;E=Tb(c[C+8>>2]|0)|0;c[(c[p>>2]|0)+8>>2]=E;E=Tb(c[C+12>>2]|0)|0;c[(c[p
x3e;>2]|0)+12>>2]=E;break}default:break a}c:do if((G|0)==13){G=0;switch(d[(c[l>>2]|0)+20>>0]|
0|0){case 1:{a[c[z>>2]>>0]=c[F>>2];break c}case 2:{b[c[z>>2]>>1]=c[F>>
;2];break c}case 4:{c[c[z>>2]>>2]=c[F>>2];break c}default:{c[c[z>>2]>>2]=c[F
x3e;>2];break c}}}while(0);c[q>>2]=(c[q>>2]|0)+-1;c[t>>2]=(c[t>>2]|0)+1}if((G|0)==23
){c[s>>2]=3;G=c[s>>2]|0;i=H;return G|0}else if((G|0)==29){c[s>>2]=3;G=c[s>>2]|0;i=H;return
G|0}else if((G|0)==32){c[o>>2]=c[o>>2];c[s>>2]=0;G=c[s>>2]|0;i=H;return G|0}else if((G|
0)==33){G=c[s>>2]|0;i=H;return G|0}}while(0);c[s>>2]=3;G=c[s>>2]|0;i=H;return G|0}function lq(b,e){
b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;f=l+8|0;g=l+4|0;h=l;j=l+12|0;c[f>>2]=b;c[g>>2]=e;c[h>
;>2]=c[c[f>>2]>>2];a[j>>0]=0;if((((((c[h>>2]|0)+3|0)>>>0<(c[g
x3e;>2]|0)>>>0?(d[c[h>>2]>>0]|0|0)==116:0)?(d[(c[h>>2]|0)+1>>0]|0|0)==
114:0)?(d[(c[h>>2]|0)+2>>0]|0|0)==117:0)?(d[(c[h>>2]|0)+3>>0]|0|0)==101:0){a[j>>
;0]=1;c[h>>2]=(c[h>>2]|0)+5}else k=7;if(((((((k|0)==7?((c[h>>2]|0)+4|0)>>>0<(c
[g>>2]|0)>>>0:0)?(d[c[h>>2]>>0]|0|0)==102:0)?(d[(c[h>>2]|0)+1>>
0]|0|0)==97:0)?(d[(c[h>>2]|0)+2>>0]|0|0)==108:0)?(d[(c[h>>2]|0)+3>>0]|0|0)==115:0)?(d[(c
[h>>2]|0)+4>>0]|0|0)==101:0){a[j>>0]=0;c[h>>2]=(c[h>>2]|0)+6}c[c[f>>
2]>>2]=c[h>>2];i=l;return d[j>>0]|0|0}function mq(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;v=i;i=i+464|0;j=v+456|0;k=v+452|0;l=v+448|0;m=v+444|0;n=v+440|0;o=v+56|0;u=v+52
|0;r=v+48|0;p=v+44|0;s=v+40|0;t=v+36|0;q=v;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n
x3e;>2]=h;c[p>>2]=0;e=q;g=c[k>>2]|0;f=e+36|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while
((e|0)<(f|0));c[q+8>>2]=2;if(!((c[(c[k>>2]|0)+8>>2]|0)!=9?(c[(c[k>>2]|0)+8>>
;2]|0)!=7:0))c[q+8>>2]=3;jq(c[j>>2]|0,o,32,r);if((c[r>>2]|0)<0){c[p>>2]=162;u=c[p
x3e;>2]|0;i=v;return u|0}if((c[r>>2]|0)>>>0>(c[(c[k>>2]|0)+24>>2]|0)>
;>>0)c[r>>2]=c[(c[k>>2]|0)+24>>2];c[s>>2]=c[c[j>>2]>>2];c[
t>>2]=c[(c[j>>2]|0)+8>>2];if((c[(c[k>>2]|0)+8>>2]|0)!=7?c[(c[k>>2]|0
)+28>>2]|0:0)a[(c[c[l>>2]>>2]|0)+(c[(c[k>>2]|0)+28>>2]|0)>>0]=c[r>
;>2];c[u>>2]=o;while(1){if((c[r>>2]|0)<=0)break;c[c[j>>2]>>2]=c[c[u>>
;2]>>2];c[(c[j>>2]|0)+8>>2]=c[(c[u>>2]|0)+4>>2];kq(c[j>>2]|0,q,c[l
x3e;>2]|0,c[m>>2]|0,0)|0;o=q+16|0;c[o>>2]=(c[o>>2]|0)+(d[q+20>>0]|0);c[r>>
;2]=(c[r>>2]|0)+-1;c[u>>2]=(c[u>>2]|0)+12}c[n>>2]=c[n>>2];c[c[j>>2]
x3e;>2]=c[s>>2];c[(c[j>>2]|0)+8>>2]=c[t>>2];u=c[p>>2]|0;i=v;return u|0}function
nq(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;h=n+16|0;o=n+12|0;j=n+8|0;k=n+4|0;l=n+
20|0;m=n;c[h>>2]=b;c[o>>2]=d;c[j>>2]=e;c[k>>2]=f;a[l>>0]=g;c[(c[h>>2
]|0)+64>>2]=0;a[(c[h>>2]|0)+68>>0]=1;c[(c[h>>2]|0)+4>>2]=c[o>>2];c[(
c[h>>2]|0)+8>>2]=c[k>>2];c[c[h>>2]>>2]=c[(c[o>>2]|0)+100>>
2];if(c[k>>2]|0?(c[m>>2]=c[c[(c[k>>2]|0)+156>>2]>>2],c[(c[h>>2]|0)+12
>>2]=c[m>>2],c[(c[h>>2]|0)+16>>2]=(c[m>>2]|0)+20,c[(c[h>>2]|0)+20>
;>2]=(c[m>>2]|0)+56,dc(c[m>>2]|0),c[(c[h>>2]|0)+76>>2]=c[(c[j>>2]|0)+40
x3e;>2],c[(c[h>>2]|0)+72>>2]=0,a[l>>0]|0):0)c[(c[h>>2]|0)+72>>2]=c[(c[(c[
k>>2]|0)+156>>2]|0)+36>>2];c[(c[h>>2]|0)+24>>2]=0;c[(c[h>>2]|0)+28
x3e;>2]=0;c[(c[h>>2]|0)+32>>2]=0;c[(c[h>>2]|0)+32+4>>2]=0;c[(c[h>>2]|0)+40
>>2]=0;c[(c[h>>2]|0)+40+4>>2]=0;o=(c[h>>2]|0)+80|0;c[o>>2]=c[1111];c[o+4>
x3e;2]=c[1112];c[o+8>>2]=c[1113];c[o+12>>2]=c[1114];c[o+16>>2]=c[1115];c[o+20>>2]=c[1116
];c[o+24>>2]=c[1117];c[o+28>>2]=c[1118];i=n;return}function oq(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0
;d=e;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+8>>2];if(!(c[d>>2]|0)){i=e;return}d=(c[d
x3e;>2]|0)+108|0;a=c[(c[b>>2]|0)+16>>2]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4
>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>
;>2];i=e;return}function pq(a,d){a=a|0;d=d|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]=
d;if(!(c[f>>2]|0)){d=0;i=g;return d|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20+2>>1]|0)+(b[(c[(
c[e>>2]|0)+12>>2]|0)+56+2>>1]|0)+(c[f>>2]|0)|0)>>>0<=(c[(c[(c[e>
;>2]|0)+12>>2]|0)+4>>2]|0)>>>0){d=0;i=g;return d|0}d=kc(c[(c[e>>2]|0)+12>
x3e;2]|0,c[f>>2]|0,0)|0;i=g;return d|0}function qq(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;p=i;i=i+32|0;q=p+20|0;j=p+16|0;k=p+12|0;l=p+24|0;n=p+8|0;o=p+4|0;m=p;c[q>>2]=e;c[j>>2]=f;c[k>>2]=
g;a[l>>0]=h;c[n>>2]=c[(c[q>>2]|0)+20>>2];if(!(a[(c[q>>2]|0)+68>>0]|0
)){q=c[n>>2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}c[o>
;>2]=(c[(c[n>>2]|0)+4>>2]|0)+(b[(c[n>>2]|0)+2>>1]<<3);c[m>>2]=(
c[(c[n>>2]|0)+8>>2]|0)+(b[(c[n>>2]|0)+2>>1]|0);q=(Tb(c[j>>2]|0)|0)>>
16;c[c[o>>2]>>2]=q;q=(Tb(c[k>>2]|0)|0)>>16;c[(c[o>>2]|0)+4>>2]=q;a[c
[m>>2]>>0]=d[l>>0]|0?1:2;q=c[n>>2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16
x3e;>16;b[q>>1]=g;i=p;return}function rq(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;e=j+12|0;f
=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=pq(c[e>>2]|0,1)|0;if(
c[h>>2]|0){d=c[h>>2]|0;i=j;return d|0}qq(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0,1);d=c[
h>>2]|0;i=j;return d|0}function sq(d){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[e>
;>2]=d;c[h>>2]=c[(c[e>>2]|0)+20>>2];if(!(c[h>>2]|0)){c[f>>2]=3;h=c[f>
;>2]|0;i=j;return h|0}if(!(a[(c[e>>2]|0)+68>>0]|0)){h=c[h>>2]|0;b[h>>1]=(b[h>
x3e;1]|0)+1<<16>>16;c[f>>2]=0;h=c[f>>2]|0;i=j;return h|0}if(((b[(c[(c[e>>2]|0)+
12>>2]|0)+20>>1]|0)+(b[(c[(c[e>>2]|0)+12>>2]|0)+56>>1]|0)+1|0)>>>
;0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+8>>2]|0)>>>0)e=0;else e=kc(c[(c[e>>2
]|0)+12>>2]|0,0,1)|0;c[g>>2]=e;if(!(c[g>>2]|0)){if((b[c[h>>2]>>1]|0)>0)b[(
c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>>1]|0)-1<<1)>>1]=(b[(c[h>
x3e;2]|0)+2>>1]|0)-1;h=c[h>>2]|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}c[f
x3e;>2]=c[g>>2];h=c[f>>2]|0;i=j;return h|0}function tq(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=3;if((c
[(c[e>>2]|0)+64>>2]|0)==3){c[h>>2]=0;d=c[h>>2]|0;i=j;return d|0}c[(c[e>>2]|0)+
64>>2]=3;c[h>>2]=sq(c[e>>2]|0)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=j;return d|0}c[h
x3e;>2]=rq(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;d=c[h>>2]|0;i=j;return d|0}function uq(
a){a=a|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;l=k+20|0;j=k+16|0;h=k+12|0;f=k+8|0;g=k+4|0;e=k;c[l>>2]=a;c[j>
;>2]=c[(c[l>>2]|0)+20>>2];if(!(c[j>>2]|0)){i=k;return}if((b[c[j>>2]>>1]|0
)<=1)a=0;else a=(b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>1]|0)-2<<1)>
;>1]|0)+1|0;c[h>>2]=a;if((((b[(c[j>>2]|0)+2>>1]|0)>1?(c[f>>2]=(c[(c[j>>
;2]|0)+4>>2]|0)+(c[h>>2]<<3),c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(b[(c[j
>>2]|0)+2>>1]<<3)+-8,c[e>>2]=(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>
x3e;2]|0)+2>>1]|0)+-1,(c[c[f>>2]>>2]|0)==(c[c[g>>2]>>2]|0)):0)?(c[(c[f>
x3e;2]|0)+4>>2]|0)==(c[(c[g>>2]|0)+4>>2]|0):0)?(d[c[e>>2]>>0]|0)==1:0){l=(c[j
x3e;>2]|0)+2|0;b[l>>1]=(b[l>>1]|0)+-1<<16>>16}if((b[c[j>>2]>>1]|
0)<=0){i=k;return}a=c[j>>2]|0;if((c[h>>2]|0)==((b[(c[j>>2]|0)+2>>1]|0)-1|0)){b[a>
;>1]=(b[a>>1]|0)+-1<<16>>16;l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>>1]|
0)+-1<<16>>16;i=k;return}else{b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>
;1]|0)-1<<1)>>1]=(b[a+2>>1]|0)-1;i=k;return}}function vq(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;x=i;i=i+64|0;m=x+44|0;n=x+40|0;o=x+36
|0;p=x+32|0;q=x+28|0;r=x+24|0;s=x+20|0;t=x+48|0;u=x+16|0;v=x+12|0;w=x+8|0;z=x+4|0;y=x;c[n>>2]=b;c[o>>2]=d;c[
p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=h;a[t>>0]=j;c[u>>2]=k;c[v>
x3e;2]=l;Ns(c[n>>2]|0,0,1500)|0;c[w>>2]=0;c[z>>2]=c[(c[o>>2]|0)+96>>2];c[y>
;>2]=Vd(c[z>>2]|0,71003)|0;c[w>>2]=c[y>>2];if(c[w>>2]|0){c[(c[n>>2]|0)+1348
>>2]=c[w>>2];nq(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,a[t>>
;0]|0);c[(c[n>>2]|0)+1352>>2]=c[(c[o>>2]|0)+16>>2];c[(c[n>>2]|0)+1356>>
;2]=c[r>>2];c[(c[n>>2]|0)+1468>>2]=c[u>>2];c[(c[n>>2]|0)+1464>>2]=c[
s>>2];c[(c[n>>2]|0)+1472>>2]=c[v>>2];z=(c[n>>2]|0)+1476|0;c[z>>2]=c[
1119];c[z+4>>2]=c[1120];c[z+8>>2]=c[1121];c[m>>2]=0;z=c[m>>2]|0;i=x;return z|0}else{c[m
x3e;>2]=7;z=c[m>>2]|0;i=x;return z|0}return 0}function wq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=
a;oq(c[d>>2]|0);i=b;return}function xq(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;Y=i;i=
i+176|0;k=Y+156|0;l=Y+152|0;h=Y+148|0;j=Y+144|0;v=Y+140|0;W=Y+136|0;C=Y+132|0;F=Y+128|0;s=Y+124|0;U=Y+120|0;V=Y+116|0;L=Y+112|0;
M=Y+108|0;D=Y+104|0;R=Y+100|0;E=Y+160|0;N=Y+96|0;w=Y+92|0;Q=Y+88|0;K=Y+84|0;S=Y+80|0;O=Y+76|0;n=Y+72|0;x=Y+68|0;o=Y+64|0;J=Y+60|
0;H=Y+56|0;G=Y+52|0;t=Y+48|0;T=Y+44|0;P=Y+40|0;y=Y+36|0;p=Y+32|0;z=Y+28|0;q=Y+24|0;A=Y+20|0;r=Y+16|0;m=Y+12|0;I=Y+8|0;B=Y+4|0;u=
Y;c[l>>2]=e;c[h>>2]=f;c[j>>2]=g;c[s>>2]=c[l>>2];c[D>>2]=0;c[R>
x3e;2]=0;c[N>>2]=N^l^h;e=(c[N>>2]^c[N>>2]>>10^c[N>>2]>>20)&65535
;c[N>>2]=e;c[N>>2]=(c[N>>2]|0)==0?29572:e;c[(c[l>>2]|0)+1136>>2]=(c[l>>
;2]|0)+112;c[(c[l>>2]|0)+1344>>2]=(c[l>>2]|0)+1140;c[W>>2]=(c[l>>2]|0)+1140;c[(
c[s>>2]|0)+64>>2]=0;c[w>>2]=c[(c[s>>2]|0)+72>>2];if((c[(c[l>>2]|0)+1492
>>2]|0)>>>0>0)Ns(c[(c[l>>2]|0)+1488>>2]|0,0,c[(c[l>>2]|0)+1492>
x3e;2]<<2|0)|0;c[(c[W>>2]|0)+4>>2]=c[h>>2];e=(c[h>>2]|0)+(c[j>>2]|0)|
0;c[(c[W>>2]|0)+8>>2]=e;c[F>>2]=e;e=c[(c[W>>2]|0)+4>>2]|0;c[c[W>>2]
x3e;>2]=e;c[C>>2]=e;c[v>>2]=0;e=c[(c[s>>2]|0)+24>>2]|0;c[L>>2]=e;c[U>
;>2]=e;e=c[(c[s>>2]|0)+28>>2]|0;c[M>>2]=e;c[V>>2]=e;if(c[w>>2]|0)Va[c[(c[
w>>2]|0)+4>>2]&63](c[c[w>>2]>>2]|0);a[E>>0]=0;a:while(1){if((c[C>>
;2]|0)>>>0>=(c[F>>2]|0)>>>0){X=186;break}c[Q>>2]=c[(c[l>>2]|0)+
1136>>2];c[K>>2]=0;c[S>>2]=0;e=c[C>>2]|0;c[C>>2]=e+1;b:do switch(d[e>>
;0]|0){case 1:{c[K>>2]=16;break}case 3:{c[K>>2]=18;break}case 4:{c[K>>2]=14;break}case 5:{c[K>
;>2]=9;break}case 6:{c[K>>2]=6;break}case 7:{c[K>>2]=13;break}case 8:{c[K>>2]=11;break}case 9
:{c[K>>2]=5;break}case 10:{c[K>>2]=22;break}case 11:{c[K>>2]=24;break}case 13:{c[K>>2]=2
;break}case 14:{c[K>>2]=1;break}case 15:{c[K>>2]=26;break}case 21:{c[K>>2]=10;break}case 22:{c[K
x3e;>2]=7;break}case 30:{c[K>>2]=12;break}case 31:{c[K>>2]=8;break}case 12:{if((c[C>>2]|0)>
;>>0>(c[F>>2]|0)>>>0)break a;e=c[C>>2]|0;c[C>>2]=e+1;switch(d[e>
;>0]|0){case 0:{c[K>>2]=15;break b}case 1:{c[K>>2]=19;break b}case 2:{c[K>>2]=17;break b}case
6:{c[K>>2]=3;break b}case 7:{c[K>>2]=4;break b}case 12:{c[K>>2]=20;break b}case 16:{c[K>>
;2]=21;break b}case 17:{c[K>>2]=23;break b}case 33:{c[K>>2]=25;break b}default:break a}}case 255:{if(((c[C
x3e;>2]|0)+4|0)>>>0>(c[F>>2]|0)>>>0)break a;c[S>>2]=d[c[C>>
;2]>>0]<<24|d[(c[C>>2]|0)+1>>0]<<16|d[(c[C>>2]|0)+2>>0]<
;<8|d[(c[C>>2]|0)+3>>0];c[C>>2]=(c[C>>2]|0)+4;h=(a[E>>0]|0)!=0;if((c[S>
;>2]|0)>32e3|(c[S>>2]|0)<-32e3){if(h)break b;a[E>>0]=1;break b}else{if(h)break b;c[S>>
;2]=c[S>>2]<<16;break b}}default:{if((d[(c[C>>2]|0)+-1>>0]|0)<32)break a;h=c[C>
;>2]|0;do if((d[(c[C>>2]|0)+-1>>0]|0)>=247){e=h+1|0;c[C>>2]=e;if(e>>>0>
;(c[F>>2]|0)>>>0)break a;h=d[(c[C>>2]|0)+-2>>0]|0;if((d[(c[C>>2]|0)+-2>
;>0]|0)<251){c[S>>2]=(h-247<<8)+(d[(c[C>>2]|0)+-1>>0]|0)+108;break}else{c[S>
;>2]=0-((h-251<<8)+(d[(c[C>>2]|0)+-1>>0]|0)+108);break}}else c[S>>2]=(d[h+-1>
x3e;0]|0)-139;while(0);if(!(a[E>>0]|0))c[S>>2]=c[S>>2]<<16}}while(0);c:do if((c[R>
x3e;2]|0)>0){switch(c[K>>2]|0){case 23:case 0:case 24:case 22:break c;default:{}}c[R>>2]=0}while(0);if(!((
d[E>>0]|0)==0|(c[K>>2]|0)==0|(c[K>>2]|0)==20))a[E>>0]=0;if(!(c[K>>2]|0)){if((((
c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)>=256)break;g=c[S>>2]|0;e=c[Q>>2]|0;c[Q>
x3e;2]=e+4;c[e>>2]=g;c[(c[l>>2]|0)+1136>>2]=c[Q>>2];continue}if((c[K>>2]|0)==21
){if((((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)<2){X=188;break}c[Q>>2]=(c[Q>>2]|0)+-
8;c[O>>2]=c[(c[Q>>2]|0)+4>>2]>>16;c[n>>2]=c[c[Q>>2]>>2]>
;>16;if((c[n>>2]|0)>(((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)){X=188;break}c[Q>>
;2]=(c[Q>>2]|0)+(0-(c[n>>2]|0)<<2);c[D>>2]=0;c[R>>2]=0;do switch(c[O>>
;2]|0){case 1:{if(c[n>>2]|0)break a;c[(c[l>>2]|0)+1400>>2]=1;c[(c[l>>2]|0)+1404>>
;2]=0;e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}e=pq(c[s>
;>2]|0,6)|0;c[v>>2]=e;if(e|0){X=186;break a}break}case 2:{if(c[n>>2]|0)break a;g=(c[l>>2]|0)+
1404|0;e=c[g>>2]|0;c[g>>2]=e+1;c[x>>2]=e;if((c[x>>2]|0)>0&(c[x>>2]|0
)<7)qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,((c[x>>2]|0)==3?1:(c[x>>2]|0)==6)&
;1);break}case 0:{if((c[n>>2]|0)!=3)break a;if(!(c[(c[l>>2]|0)+1400>>2]|0))break a;if((c[(c[l>
;>2]|0)+1404>>2]|0)!=7)break a;c[c[Q>>2]>>2]=c[U>>2];c[(c[Q>>2]|0)+4>
;>2]=c[V>>2];c[D>>2]=2;break}case 3:{if((c[n>>2]|0)!=1)break a;c[D>>2]=1;if(c[w>
;>2]|0)Ra[c[(c[w>>2]|0)+20>>2]&7](c[c[w>>2]>>2]|0,b[(c[(c[s>>2]|0)+20
>>2]|0)+2>>1]|0);break}case 13:case 12:{c[Q>>2]=(c[l>>2]|0)+112;break}case 18:case 17:case
16:case 15:case 14:{c[o>>2]=c[(c[l>>2]|0)+1464>>2];if(!(c[o>>2]|0))break a;c[J>>
;2]=(c[O>>2]|0)-13+((c[O>>2]|0)==18&1);if((c[n>>2]|0)!=(_(c[J>>2]|0,c[c[o>>
;2]>>2]|0)|0))break a;c[t>>2]=(c[Q>>2]|0)+(c[J>>2]<<2);c[T>>2]=c[Q
x3e;>2];c[H>>2]=0;while(1){if((c[H>>2]|0)>>>0>=(c[J>>2]|0)>>>
;0)break;c[P>>2]=c[c[T>>2]>>2];c[G>>2]=1;while(1){if((c[G>>2]|0)>>
x3e;0>=(c[c[o>>2]>>2]|0)>>>0)break;e=c[t>>2]|0;c[t>>2]=e+4;e=Mb(c[e
x3e;>2]|0,c[(c[(c[o>>2]|0)+136>>2]|0)+(c[G>>2]<<2)>>2]|0)|0;c[P>>
;2]=(c[P>>2]|0)+e;c[G>>2]=(c[G>>2]|0)+1}g=c[P>>2]|0;e=c[T>>2]|0;c[T>>
;2]=e+4;c[e>>2]=g;c[H>>2]=(c[H>>2]|0)+1}c[D>>2]=c[J>>2];break}case 19:{c[p>
;>2]=c[(c[l>>2]|0)+1464>>2];if((c[n>>2]|0)!=1|(c[p>>2]|0)==0)break a;c[y>>
;2]=c[c[Q>>2]>>2]>>16;if((c[y>>2]|0)<0)break a;if(((c[y>>2]|0)+(c[c[p>
;>2]>>2]|0)|0)>>>0>(c[(c[l>>2]|0)+1492>>2]|0)>>>0)break a;
Ss((c[(c[l>>2]|0)+1488>>2]|0)+(c[y>>2]<<2)|0,c[(c[p>>2]|0)+136>>2]|0
,c[c[p>>2]>>2]<<2|0)|0;break}case 20:{if((c[n>>2]|0)!=2)break a;e=c[Q>>2]|0;c[
e>>2]=(c[e>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);c[D>>2]=1;break}case 21:{if((c[n>
;>2]|0)!=2)break a;e=c[Q>>2]|0;c[e>>2]=(c[e>>2]|0)-(c[(c[Q>>2]|0)+4>>2]|0
);c[D>>2]=1;break}case 22:{if((c[n>>2]|0)!=2)break a;e=Mb(c[c[Q>>2]>>2]|0,c[(c[Q>
x3e;2]|0)+4>>2]|0)|0;c[c[Q>>2]>>2]=e;c[D>>2]=1;break}case 23:{if((c[n>>2]|0)!=
2)break a;if(!(c[(c[Q>>2]|0)+4>>2]|0))break a;e=Vb(c[c[Q>>2]>>2]|0,c[(c[Q>>2]|
0)+4>>2]|0)|0;c[c[Q>>2]>>2]=e;c[D>>2]=1;break}case 24:{c[q>>2]=c[(c[l>>
;2]|0)+1464>>2];if((c[n>>2]|0)!=2|(c[q>>2]|0)==0)break a;c[z>>2]=c[(c[Q>>2]|0)+
4>>2]>>16;if((c[z>>2]|0)<0)break a;if((c[z>>2]|0)>>>0>=(c[(c[l
x3e;>2]|0)+1492>>2]|0)>>>0)break a;c[(c[(c[l>>2]|0)+1488>>2]|0)+(c[z>>
;2]<<2)>>2]=c[c[Q>>2]>>2];break}case 25:{c[r>>2]=c[(c[l>>2]|0)+1464
x3e;>2];if((c[n>>2]|0)!=1|(c[r>>2]|0)==0)break a;c[A>>2]=c[c[Q>>2]>>2]>
;>16;if((c[A>>2]|0)<0)break a;if((c[A>>2]|0)>>>0>=(c[(c[l>>2]|0)+1492
>>2]|0)>>>0)break a;c[c[Q>>2]>>2]=c[(c[(c[l>>2]|0)+1488>>2]|0)+(
c[A>>2]<<2)>>2];c[D>>2]=1;break}case 27:{if((c[n>>2]|0)!=4)break a;if((c[(c[Q
x3e;>2]|0)+8>>2]|0)>(c[(c[Q>>2]|0)+12>>2]|0))c[c[Q>>2]>>2]=c[(c[Q>
;>2]|0)+4>>2];c[D>>2]=1;break}case 28:{if(c[n>>2]|0)break a;c[m>>2]=c[N>>
2];if((c[m>>2]|0)>=32768)c[m>>2]=(c[m>>2]|0)+1;c[c[Q>>2]>>2]=c[m>>
;2];c[N>>2]=Mb(c[N>>2]|0,65536-(c[N>>2]|0)|0)|0;if(!(c[N>>2]|0))c[N>>2]=(c[N
x3e;>2]|0)+10355;c[D>>2]=1;break}default:c[R>>2]=c[n>>2]}while(0);c[Q>>2]=(c[Q>
;>2]|0)+(c[D>>2]<<2);c[(c[l>>2]|0)+1136>>2]=c[Q>>2];continue}c[I>>
;2]=c[4488+(c[K>>2]<<2)>>2];if((((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)<(
c[I>>2]|0)){X=188;break}c[Q>>2]=(c[Q>>2]|0)+(0-(c[I>>2]|0)<<2);d:do switch(c[K
>>2]|0){case 1:{X=121;break a}case 3:{X=127;break a}case 2:{c[(c[s>>2]|0)+64>>2]=1;e=(c[s>>
;2]|0)+32|0;c[e>>2]=(c[e>>2]|0)+(c[c[Q>>2]>>2]|0);c[(c[s>>2]|0)+40>>
2]=c[(c[Q>>2]|0)+4>>2];c[(c[s>>2]|0)+40+4>>2]=0;e=(c[(c[s>>2]|0)+24>>
;2]|0)+(c[c[Q>>2]>>2]|0)|0;c[U>>2]=e;c[L>>2]=e;e=c[(c[s>>2]|0)+28>>2
]|0;c[V>>2]=e;c[M>>2]=e;c[M>>2]=c[M>>2];if(a[(c[s>>2]|0)+70>>0]|0){X
=126;break a}break}case 4:{c[(c[s>>2]|0)+64>>2]=1;e=(c[s>>2]|0)+32|0;c[e>>2]=(c[e>
x3e;2]|0)+(c[c[Q>>2]>>2]|0);e=(c[s>>2]|0)+32+4|0;c[e>>2]=(c[e>>2]|0)+(c[(c[Q
x3e;>2]|0)+4>>2]|0);c[(c[s>>2]|0)+40>>2]=c[(c[Q>>2]|0)+8>>2];c[(c[s>
x3e;2]|0)+40+4>>2]=c[(c[Q>>2]|0)+12>>2];c[U>>2]=(c[(c[s>>2]|0)+24>>2
]|0)+(c[c[Q>>2]>>2]|0);c[V>>2]=(c[(c[s>>2]|0)+28>>2]|0)+(c[(c[Q>>2]|
0)+4>>2]|0);if(a[(c[s>>2]|0)+70>>0]|0){X=129;break a}break}case 5:{if(!((c[(c[s>>2]|0)+64
>>2]|0)!=3?(c[(c[s>>2]|0)+64>>2]|0)!=2:0))uq(c[s>>2]|0);c[(c[s>>2]|0)+64>
x3e;2]=1;break}case 6:{X=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=X;if(X|0){X=186;break
a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);X=144;break}case 7:{c[U>>2]=(c[U>
;>2]|0)+(c[c[Q>>2]>>2]|0);if(!(c[(c[l>>2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|
0)+64>>2]|0))break a;c[(c[s>>2]|0)+64>>2]=2}break}case 8:{e=tq(c[s>>2]|0,c[U>>
2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){
X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);qq(c[s>>2]|0,c[U>>
;2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);c[V>>
2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2
]|0,0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+12>>2]|0);qq(c[s>>2]|0,c[U>>
;2]|0,c[V>>2]|0,1);break}case 9:{X=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=
X;if(X|0){X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);c[V>>2]=(c[V>
;>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);X=144;break}case 10:{c[U>>2]=(c[U>>2]|0)+(c[c[Q>
;>2]>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);if(!(c[(c[l>
x3e;2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|0)+64>>2]|0))break a;c[(c[s>>2]|0)+64>>
2]=2}break}case 11:{e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break
a}e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>
x3e;2]>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);qq(c[s>>2]|
0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);
c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+12>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,
c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+16>>2]|0);c[V>>2]=(c
[V>>2]|0)+(c[(c[Q>>2]|0)+20>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,
1);break}case 12:{e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}
e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){X=186;break a}c[V>>2]=(c[V>>2]|0)+(c[c[Q>>
;2]>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(
c[(c[Q>>2]|0)+4>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);qq
(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+
12>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,1);break}case 13:{X=tq(c[s>>2]|0,c[
U>>2]|0,c[V>>2]|0)|0;c[v>>2]=X;if(X|0){X=186;break a}c[V>>2]=(c[V>>2]|0)+(c[c[
Q>>2]>>2]|0);X=144;break}case 14:{c[V>>2]=(c[V>>2]|0)+(c[c[Q>>2]>>2]|
0);if(!(c[(c[l>>2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|0)+64>>2]|0))break a;c[(c[s>>
;2]|0)+64>>2]=2}break}case 20:{e=Vb(c[c[Q>>2]>>2]|0,c[(c[Q>>2]|0)+4>>2]|0)|0;c
[c[Q>>2]>>2]=e;c[Q>>2]=(c[Q>>2]|0)+4;a[E>>0]=0;break}case 22:{c[B>>2
]=c[c[Q>>2]>>2]>>16;if((c[B>>2]|0)<0)break a;if((c[B>>2]|0)>=(c[(c[l
>>2]|0)+1364>>2]|0))break a;if((((c[W>>2]|0)-((c[l>>2]|0)+1140)|0)/12|0|0)>=16)break
a;c[c[W>>2]>>2]=c[C>>2];c[W>>2]=(c[W>>2]|0)+12;c[(c[W>>2]|0)+4>
;>2]=c[(c[(c[l>>2]|0)+1368>>2]|0)+(c[B>>2]<<2)>>2];if(c[(c[l>>2
]|0)+1372>>2]|0)c[(c[W>>2]|0)+8>>2]=(c[(c[W>>2]|0)+4>>2]|0)+(c[(c[(c[l>
x3e;2]|0)+1372>>2]|0)+(c[B>>2]<<2)>>2]|0);else{if((c[(c[l>>2]|0)+1360>>
;2]|0)>=0)h=c[(c[l>>2]|0)+1360>>2]|0;else h=0;e=(c[W>>2]|0)+4|0;c[e>>2]=(c[e>
x3e;2]|0)+h;c[(c[W>>2]|0)+8>>2]=c[(c[(c[l>>2]|0)+1368>>2]|0)+((c[B>>2]|0)+1<
;<2)>>2]}c[c[W>>2]>>2]=c[(c[W>>2]|0)+4>>2];if(!(c[(c[W>>2]|0)+4
>>2]|0))break a;c[(c[l>>2]|0)+1344>>2]=c[W>>2];c[C>>2]=c[(c[W>>2]|0)+
4>>2];c[F>>2]=c[(c[W>>2]|0)+8>>2];break}case 23:{if((c[D>>2]|0)>0){c[D>
;>2]=(c[D>>2]|0)+-1;break d}if(!(c[R>>2]|0))break a;c[R>>2]=(c[R>>2]|0)+-1;c[Q>
;>2]=(c[Q>>2]|0)+4;break}case 24:{if((c[W>>2]|0)>>>0<=((c[l>>2]|0)+1140|0
)>>>0)break a;c[W>>2]=(c[W>>2]|0)+-12;c[C>>2]=c[c[W>>2]>>2];c[F
>>2]=c[(c[W>>2]|0)+8>>2];c[(c[l>>2]|0)+1344>>2]=c[W>>2];break}case 26
:case 15:break;case 16:{if(c[w>>2]|0)Ua[c[(c[w>>2]|0)+12>>2]&31](c[c[w>>2]>>
;2]|0,1,c[Q>>2]|0);break}case 17:{if(c[w>>2]|0)Ua[c[(c[w>>2]|0)+16>>2]&31](c[c[w>
;>2]>>2]|0,1,c[Q>>2]|0);break}case 18:{if(c[w>>2]|0){e=c[Q>>2]|0;c[e>>2]=(
c[e>>2]|0)+(c[L>>2]|0);Ua[c[(c[w>>2]|0)+12>>2]&31](c[c[w>>2]>>2
]|0,0,c[Q>>2]|0)}break}case 19:{if(c[w>>2]|0){c[u>>2]=c[L>>2];e=c[Q>>2]|0;c[e
x3e;>2]=(c[e>>2]|0)+(c[u>>2]|0);e=(c[Q>>2]|0)+8|0;c[e>>2]=(c[e>>2]|0)+(c[
u>>2]|0);e=(c[Q>>2]|0)+16|0;c[e>>2]=(c[e>>2]|0)+(c[u>>2]|0);Ua[c[(c[w>>
;2]|0)+16>>2]&31](c[c[w>>2]>>2]|0,0,c[Q>>2]|0)}break}case 25:{c[U>>2]=c[c
[Q>>2]>>2];c[V>>2]=c[(c[Q>>2]|0)+4>>2];c[(c[l>>2]|0)+1400>>
;2]=0;break}default:break a}while(0);if((X|0)==144?(X=0,e=rq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0,c[v
x3e;>2]=e,e|0):0){X=186;break}c[(c[l>>2]|0)+1136>>2]=c[Q>>2]}do if((X|0)==121){uq(c[s>
x3e;2]|0);if(c[w>>2]|0){if(Ya[c[(c[w>>2]|0)+8>>2]&127](c[c[w>>2]>>2]|0,b[(
c[(c[s>>2]|0)+20>>2]|0)+2>>1]|0)|0)break;Wa[c[(c[w>>2]|0)+24>>2]&31](c[c[
w>>2]>>2]|0,c[(c[s>>2]|0)+20>>2]|0,c[(c[s>>2]|0)+76>>2]|0,c[(c[l>
;>2]|0)+1468>>2]|0)|0}oc(c[(c[s>>2]|0)+12>>2]|0);c[k>>2]=0;X=c[k>>2]|0;i=
Y;return X|0}else if((X|0)==126){c[k>>2]=0;X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==127){c[k>>2]=
yq(c[l>>2]|0,c[c[Q>>2]>>2]|0,c[(c[Q>>2]|0)+4>>2]|0,c[(c[Q>>2]|0)+8
x3e;>2]|0,c[(c[Q>>2]|0)+12>>2]>>16,c[(c[Q>>2]|0)+16>>2]>>16)|0;
X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==129){c[k>>2]=0;X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==
186){c[k>>2]=c[v>>2];X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==188){c[k>>2]=161;X=c[k>
;>2]|0;i=Y;return X|0}while(0);c[k>>2]=160;X=c[k>>2]|0;i=Y;return X|0}function yq(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;A=i;i=i+80|0;n=A+68|0;o=A+64
|0;p=A+60|0;q=A+56|0;r=A+52|0;k=A+48|0;l=A+44|0;v=A+40|0;u=A+36|0;s=A+32|0;x=A+24|0;t=A+16|0;m=A+12|0;w=A+8|0;y=A+4|0;z=A;c[o>
;>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[k>>2]=h;c[l>>2]=j;c[m>>2
]=c[(c[o>>2]|0)+4>>2];if(a[(c[o>>2]|0)+1496>>0]|0){c[n>>2]=160;z=c[n>>
;2]|0;i=A;return z|0}c[q>>2]=(c[q>>2]|0)+(c[(c[o>>2]|0)+32>>2]|0);if((c[(c[o>>
2]|0)+1356>>2]|0)==0?(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)==0:0){c[n>>2]=160;
z=c[n>>2]|0;i=A;return z|0}if(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0){c[u>>2]=c[
k>>2];c[s>>2]=c[l>>2]}else{c[u>>2]=zq(c[o>>2]|0,c[k>>2]|0)|0;c[s>
;>2]=zq(c[o>>2]|0,c[l>>2]|0)|0}if((c[u>>2]|0)<0|(c[s>>2]|0)<0){c[n>
x3e;2]=160;z=c[n>>2]|0;i=A;return z|0}k=c[o>>2]|0;if(a[(c[o>>2]|0)+69>>0]|0){c[w>
x3e;2]=c[k+8>>2];c[y>>2]=c[c[(c[w>>2]|0)+156>>2]>>2];c[v>>2]=lc(c[y
x3e;>2]|0,2)|0;if(!(c[v>>2]|0)){c[z>>2]=c[(c[y>>2]|0)+56+32>>2];c[c[z>>2]
x3e;>2]=c[u>>2];b[(c[z>>2]|0)+4>>1]=514;c[(c[z>>2]|0)+8>>2]=0;c[(c[z>
;>2]|0)+12>>2]=0;c[z>>2]=(c[z>>2]|0)+32;c[c[z>>2]>>2]=c[s>>2];b
[(c[z>>2]|0)+4>>1]=2;x=(Tb((c[q>>2]|0)-(c[p>>2]|0)|0)|0)>>16;c[(c[z>>
;2]|0)+8>>2]=x;x=(Tb(c[r>>2]|0)|0)>>16;c[(c[z>>2]|0)+12>>2]=x;c[(c[w>>
;2]|0)+128>>2]=2;c[(c[w>>2]|0)+132>>2]=c[(c[y>>2]|0)+20+32>>2];c[(c[w>>
;2]|0)+72>>2]=1668246896;c[(c[y>>2]|0)+56+28>>2]=2}}else{nc(c[k+12>>2]|0);a[(c[o>
x3e;2]|0)+1496>>0]=1;c[v>>2]=Aq(c[o>>2]|0,c[u>>2]|0)|0;a[(c[o>>2]|0)+1496>
;>0]=0;if((c[v>>2]|0)==0?(z=(c[o>>2]|0)+32|0,c[x>>2]=c[z>>2],c[x+4>>2]=c[
z+4>>2],z=(c[o>>2]|0)+40|0,c[t>>2]=c[z>>2],c[t+4>>2]=c[z+4>>2],c[(c[
o>>2]|0)+32>>2]=0,c[(c[o>>2]|0)+32+4>>2]=0,c[(c[o>>2]|0)+24>>2]=(c[q
>>2]|0)-(c[p>>2]|0),c[(c[o>>2]|0)+28>>2]=c[r>>2],a[(c[o>>2]|0)+1496
x3e;>0]=1,c[v>>2]=Aq(c[o>>2]|0,c[s>>2]|0)|0,a[(c[o>>2]|0)+1496>>0]=0,(c[v
>>2]|0)==0):0){z=(c[o>>2]|0)+32|0;c[z>>2]=c[x>>2];c[z+4>>2]=c[x+4>>2
];z=(c[o>>2]|0)+40|0;c[z>>2]=c[t>>2];c[z+4>>2]=c[t+4>>2];c[(c[o>>2]|
0)+24>>2]=0;c[(c[o>>2]|0)+28>>2]=0}}c[n>>2]=c[v>>2];z=c[n>>2]|0;i=A;
return z|0}function zq(b,d){b=b|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;l=n+24|0;f=n+20|0;g=n+16|0;m=n+12|0;h=n
+8|0;k=n+4|0;j=n;c[f>>2]=b;c[g>>2]=d;c[k>>2]=c[(c[f>>2]|0)+1348>>2];if((c[g>
;>2]|0)<0|(c[g>>2]|0)>255){c[l>>2]=-1;m=c[l>>2]|0;i=n;return m|0}c[h>>2]=
Ta[c[(c[k>>2]|0)+20>>2]&63](e[(c[(c[k>>2]|0)+24>>2]|0)+(c[g>>2]<<
;1)>>1]|0)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[(c[f>>2]|0)+1352
>>2]|0)>>>0){f=10;break}c[j>>2]=c[(c[(c[f>>2]|0)+1356>>2]|0)+(c[m>
x3e;2]<<2)>>2];if((c[j>>2]|0?(a[c[j>>2]>>0]|0)==(a[c[h>>2]>>
;0]|0):0)?(Kr(c[j>>2]|0,c[h>>2]|0)|0)==0:0){f=8;break}c[m>>2]=(c[m>>2]|0)+1}if((f|0)==8){
c[l>>2]=c[m>>2];m=c[l>>2]|0;i=n;return m|0}else if((f|0)==10){c[l>>2]=-1;m=c[l>>
;2]|0;i=n;return m|0}return 0}function Aq(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=Ya[c[(c[f>>2]|0)+1472>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return b|0}
function Bq(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|
0;k=n+8|0;m=n+4|0;l=n;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=0;c[m>
;>2]=bc(c[h>>2]|0,16,l)|0;if(c[l>>2]|0){c[f>>2]=c[l>>2];m=c[f>>2]|0;i=n;return
m|0}else{a=c[j>>2]|0;c[(c[m>>2]|0)+4>>2]=a;c[c[m>>2]>>2]=a;c[(c[m>>
2]|0)+8>>2]=c[k>>2];c[(c[m>>2]|0)+12>>2]=2;c[c[g>>2]>>2]=c[h>
x3e;2];c[(c[g>>2]|0)+4>>2]=c[m>>2];c[(c[g>>2]|0)+8>>2]=0;c[(c[g>>2]|
0)+12>>2]=0;c[f>>2]=0;m=c[f>>2]|0;i=n;return m|0}return 0}function Cq(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];Fb(c[e>>2]|0,c[(c[d>
;>2]|0)+4>>2]|0);c[(c[d>>2]|0)+4>>2]=0;i=b;return}function Dq(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;o=i;i=i+80|0;j=o+68|0;k=o+64|0;n=o+60|0;m=o+56|0;l=o+52|0;d=o+48|0;e=o+44|0;f=o+40|0;h=o+8|0;g=o;c[k
x3e;>2]=b;c[n>>2]=c[c[k>>2]>>2];c[m>>2]=c[(c[k>>2]|0)+8>>2];c[l
>>2]=160;c[f>>2]=0;if(!(c[m>>2]|0)){c[j>>2]=6;n=c[j>>2]|0;i=o;return n|0}c[d
x3e;>2]=Eq(c[k>>2]|0,1,e)|0;if(!((c[d>>2]|0)==0|(c[e>>2]|0)!=16)?(Lr(c[d>>2]|0,11707
,16)|0)==0:0){a:while(1){b=Eq(c[k>>2]|0,1,e)|0;c[d>>2]=b;if(!b){d=24;break}switch(Iq(c[d>>2]|0,c[e
>>2]|0)|0){case 49:{d=22;break a}case 20:{d=23;break a}case 40:{if(Jq(c[k>>2]|0,f)|0){d=24;break a}if((c[f
x3e;>2]|0)!=0&(c[f>>2]|0)!=2){d=10;break a}else continue a}case 30:{c[h>>2]=4;if((Kq(c[k>>
;2]|0,h,1)|0)!=1){d=24;break a}a[c[m>>2]>>0]=a[h+4>>0]|0;continue a}case 26:{c[h>>2]=2;c
[h+8>>2]=2;c[h+16>>2]=2;c[h+24>>2]=2;if((Kq(c[k>>2]|0,h,4)|0)!=4){d=24;break a}c[(c[m>
;>2]|0)+4>>2]=c[h+4>>2];c[(c[m>>2]|0)+4+4>>2]=c[h+8+4>>2];c[(c[m>>
;2]|0)+4+8>>2]=c[h+16+4>>2];c[(c[m>>2]|0)+4+12>>2]=c[h+24+4>>2];continue a}case
0:{c[h>>2]=2;if((Kq(c[k>>2]|0,h,1)|0)!=1){d=24;break a}c[(c[m>>2]|0)+20>>2]=c[h+4>
x3e;2];continue a}case 14:{c[h>>2]=2;if((Kq(c[k>>2]|0,h,1)|0)!=1){d=24;break a}c[(c[m>>2]|0)+24>
;>2]=c[h+4>>2];continue a}case 45:{c[g>>2]=0;if(Jq(c[k>>2]|0,g)|0){d=24;break a}c[l>>
;2]=Lq(c[k>>2]|0,c[g>>2]|0,17)|0;if(c[l>>2]|0){d=21;break a}else continue a}default:continue a}}if
((d|0)==10){c[l>>2]=7;d=24}else if((d|0)==21){c[j>>2]=c[l>>2];n=c[j>>2]|0;i=o;return n|0
}else if((d|0)==22){c[l>>2]=Mq(c[k>>2]|0)|0;if(c[l>>2]|0)d=24;else d=23}if((d|0)==23){c[j>>
;2]=0;n=c[j>>2]|0;i=o;return n|0}else if((d|0)==24){Fb(c[n>>2]|0,c[(c[m>>2]|0)+28>>2]|0);
c[(c[m>>2]|0)+28>>2]=0;c[(c[m>>2]|0)+32>>2]=0;Fb(c[n>>2]|0,c[(c[m>>2
]|0)+36>>2]|0);c[(c[m>>2]|0)+36>>2]=0;c[(c[m>>2]|0)+40>>2]=0;a[c[m>>
2]>>0]=0;c[j>>2]=c[l>>2];n=c[j>>2]|0;i=o;return n|0}}c[j>>2]=2;n=c[j>>
;2]|0;i=o;return n|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,l=0;j=i;i=i+32|0;l=j+12|0;k=j+16|0;g=j+8|0;f=j
+4|0;h=j;c[l>>2]=b;a[k>>0]=d;c[g>>2]=e;c[f>>2]=c[(c[l>>2]|0)+4>>2];c
[h>>2]=0;a:do if(a[k>>0]|0)do{if((c[(c[f>>2]|0)+12>>2]|0)<2)Fq(c[f>>2]|0)|
0;c[(c[f>>2]|0)+12>>2]=0;c[h>>2]=Hq(c[f>>2]|0)|0;if(c[h>>2]|0)break a;if((c[(c
[f>>2]|0)+12>>2]|0)>=3)break a}while((c[(c[f>>2]|0)+12>>2]|0)>=2);else while(1
){e=c[f>>2]|0;if((c[(c[f>>2]|0)+12>>2]|0)>=1^1){Hq(e)|0;continue}c[e+12>>2]=0;c[h
x3e;>2]=Hq(c[f>>2]|0)|0;if(c[h>>2]|0)break a;if((c[(c[f>>2]|0)+12>>2]|0)>=3)break
a;if((c[(c[f>>2]|0)+12>>2]|0)<1)break}while(0);if(!(c[g>>2]|0)){l=c[h>>2]|0;i=j;return
l|0}if(c[h>>2]|0)e=(c[c[f>>2]>>2]|0)-(c[h>>2]|0)-1|0;else e=0;c[c[g>>2]>
x3e;2]=e;l=c[h>>2]|0;i=j;return l|0}function Fq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;f=h+8|0;g=h
+4|0;b=h;c[f>>2]=a;Gq(c[f>>2]|0)|0;if((c[(c[f>>2]|0)+12>>2]|0)>=2){c[e>>2
]=0;g=c[e>>2]|0;i=h;return g|0}c[g>>2]=(c[c[f>>2]>>2]|0)+-1;while(1){if((c[c[f>>
;2]>>2]|0)>>>0<(c[(c[f>>2]|0)+8>>2]|0)>>>0){j=c[f>>2]|
0;a=c[j>>2]|0;c[j>>2]=a+1;a=d[a>>0]|0}else a=-1;c[b>>2]=a;if((c[b>>2]|0)==13|(
c[b>>2]|0)==10){a=7;break}if((c[b>>2]|0)==-1|(c[b>>2]|0)==26){a=9;break}}if((a|0)==7)c[(c[f>
x3e;2]|0)+12>>2]=2;else if((a|0)==9)c[(c[f>>2]|0)+12>>2]=3;c[e>>2]=c[g>>2];j=c
[e>>2]|0;i=h;return j|0}function Gq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;b=g+8|0;e=g+4|0;f=g;c[e>>2
]=a;c[f>>2]=0;if((c[(c[e>>2]|0)+12>>2]|0)>=1){c[b>>2]=59;f=c[b>>2]|0;i=g;
return f|0}do{if((c[c[e>>2]>>2]|0)>>>0<(c[(c[e>>2]|0)+8>>2]|0)>
x3e;>0){h=c[e>>2]|0;a=c[h>>2]|0;c[h>>2]=a+1;a=d[a>>0]|0}else a=-1;c[f>>2]=
a}while((c[f>>2]|0)==32|(c[f>>2]|0)==9);do if(!((c[f>>2]|0)==13|(c[f>>2]|0)==10)){if((c[
f>>2]|0)==59){c[(c[e>>2]|0)+12>>2]=1;break}if((c[f>>2]|0)==-1|(c[f>>2]|0)==26)
c[(c[e>>2]|0)+12>>2]=3}else c[(c[e>>2]|0)+12>>2]=2;while(0);c[b>>2]=c[f>
x3e;2];h=c[b>>2]|0;i=g;return h|0}function Hq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;b=j+12|0;e=j+8|0;g
=j+4|0;f=j;c[e>>2]=a;Gq(c[e>>2]|0)|0;if((c[(c[e>>2]|0)+12>>2]|0)>=1){c[b>>
;2]=0;h=c[b>>2]|0;i=j;return h|0}c[g>>2]=(c[c[e>>2]>>2]|0)+-1;while(1){if((c[c[e>
x3e;2]>>2]|0)>>>0<(c[(c[e>>2]|0)+8>>2]|0)>>>0){k=c[e>>
;2]|0;a=c[k>>2]|0;c[k>>2]=a+1;a=d[a>>0]|0}else a=-1;c[f>>2]=a;if((c[f>>2]|0)==
32|(c[f>>2]|0)==9)break;if((c[f>>2]|0)==13|(c[f>>2]|0)==10){h=8;break}if((c[f>>2]|0)==59
){h=10;break}if((c[f>>2]|0)==-1|(c[f>>2]|0)==26){h=12;break}}if((h|0)==8)c[(c[e>>2]|0)+12>>
;2]=2;else if((h|0)==10)c[(c[e>>2]|0)+12>>2]=1;else if((h|0)==12)c[(c[e>>2]|0)+12>>2]=3;
c[b>>2]=c[g>>2];k=c[b>>2]|0;i=j;return k|0}function Iq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=
i;i=i+16|0;h=j+12|0;e=j+8|0;f=j+4|0;g=j;c[e>>2]=b;c[f>>2]=d;c[g>>2]=0;a:while(1){if((c[g>>
;2]|0)>=74){b=10;break}if((c[g>>2]|0)<74?(a[c[4608+(c[g>>2]<<2)>>2]>>
;0]|0)==(a[c[e>>2]>>0]|0):0)do{if((a[c[4608+(c[g>>2]<<2)>>2]>>0]|0)!=(
a[c[e>>2]>>0]|0)){b=5;break a}b=(Lr(c[4608+(c[g>>2]<<2)>>2]|0,c[e>>2
]|0,c[f>>2]|0)|0)==0;d=c[g>>2]|0;if(b){b=7;break a}c[g>>2]=d+1}while((c[g>>2]|0)<74
);c[g>>2]=(c[g>>2]|0)+1}if((b|0)==5){c[h>>2]=75;h=c[h>>2]|0;i=j;return h|0}else if((b|0)==
7){c[h>>2]=d;h=c[h>>2]|0;i=j;return h|0}else if((b|0)==10){c[h>>2]=75;h=c[h>>2]|0;i=j;return
h|0}return 0}function Jq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+32|0;d=g+16|0;h=g+12|0;e=g+8|0;f=g;c[h>>2]=
a;c[e>>2]=b;c[f>>2]=3;if((Kq(c[h>>2]|0,f,1)|0)==1){c[c[e>>2]>>2]=c[f+4>
x3e;2];c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}else{c[d>>2]=160;h=c[d>>2]|0;i=g;return h|0}
return 0}function Kq(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;r=i;i=i+48|0;f=r+40|0;g=r+36|0
;h=r+32|0;j=r+28|0;p=r+24|0;o=r+20|0;l=r+16|0;m=r+12|0;q=r+8|0;n=r+4|0;k=r;c[g>>2]=b;c[h>>2]=d;c[j>>
;2]=e;c[p>>2]=c[(c[g>>2]|0)+4>>2];if((c[j>>2]|0)>>>0>5){c[f>>
;2]=0;q=c[f>>2]|0;i=r;return q|0}c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[j
x3e;>2]|0)>>>0)break;c[q>>2]=(c[h>>2]|0)+(c[l>>2]<<3);e=c[p>>
;2]|0;if(!(c[c[q>>2]>>2]|0))c[o>>2]=Fq(e)|0;else c[o>>2]=Hq(e)|0;if(!(c[o>>2]|
0))break;c[m>>2]=(c[c[p>>2]>>2]|0)-(c[o>>2]|0)-1;a:do switch(c[c[q>>2]>
x3e;2]|0){case 1:case 0:{c[n>>2]=c[c[g>>2]>>2];d=cc(c[n>>2]|0,(c[m>>2]|0)+1|0,
k)|0;c[(c[q>>2]|0)+4>>2]=d;if(!(c[k>>2]|0)){Ss(c[(c[q>>2]|0)+4>>2]|0,c[o>
x3e;2]|0,c[m>>2]|0)|0;a[(c[(c[q>>2]|0)+4>>2]|0)+(c[m>>2]|0)>>0]=0}break}case 2
:{d=bq(o,(c[o>>2]|0)+(c[m>>2]|0)|0,0)|0;c[(c[q>>2]|0)+4>>2]=d;break}case 3:{d=_p(o,(c[o
x3e;>2]|0)+(c[m>>2]|0)|0)|0;c[(c[q>>2]|0)+4>>2]=d;break}case 4:{if((c[m>>2]|0)==4)e
=(Lr(c[o>>2]|0,12412,4)|0)!=0^1;else e=0;a[(c[q>>2]|0)+4>>0]=e&1;break}case 5:if(c[(c[g>
x3e;2]|0)+12>>2]|0){d=Oa[c[(c[g>>2]|0)+12>>2]&63](c[o>>2]|0,c[m>>2]|0,c[(
c[g>>2]|0)+16>>2]|0)|0;c[(c[q>>2]|0)+4>>2]=d;break a}else{c[(c[q>>2]|0)+4>
;>2]=0;break a}default:{}}while(0);c[l>>2]=(c[l>>2]|0)+1}c[f>>2]=c[l>>2];q=c[f>
;>2]|0;i=r;return q|0}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,l=0,m=0,n=0;n=i;i=i+32|0;e=n+24|0;f=
n+20|0;g=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;l=n;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;do{a=c[g>>2]|
0;c[g>>2]=a+-1;if(a>>>0<=0){m=4;break}c[j>>2]=Eq(c[f>>2]|0,1,0)|0}while((c[j
x3e;>2]|0)!=0);a:do if((m|0)==4){while(1){m=Eq(c[f>>2]|0,1,k)|0;c[j>>2]=m;if(!m)break a;c[l>>
2]=Iq(c[j>>2]|0,c[k>>2]|0)|0;if((c[l>>2]|0)==20?1:(c[l>>2]|0)==(c[h>>2]|0))break
;else m=4}c[e>>2]=0;m=c[e>>2]|0;i=n;return m|0}while(0);c[e>>2]=160;m=c[e>>2]|0;i=n;return
m|0}function Mq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;f=h+16|0;b=h+12|0;g=h+8|0;d=h+4|0;e=h;c[b>>2]=a;a:while
(1){a=Eq(c[b>>2]|0,1,e)|0;c[d>>2]=a;if(!a){b=9;break}switch(Iq(c[d>>2]|0,c[e>>2]|0)|0){case
75:continue a;case 20:case 21:{b=8;break a}case 53:{c[g>>2]=Nq(c[b>>2]|0)|0;if(c[g>>2]|0){b=5;break
a}else continue a}case 51:case 50:{c[g>>2]=Oq(c[b>>2]|0)|0;if(c[g>>2]|0){b=7;break a}else continue
a}default:{b=9;break a}}}if((b|0)==5)c[f>>2]=c[g>>2];else if((b|0)==7)c[f>>2]=c[g>>2];else
if((b|0)==8)c[f>>2]=0;else if((b|0)==9)c[f>>2]=160;i=h;return c[f>>2]|0}function Nq(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;n=i;i=i+80|0;b=n+72|0;d=n+68|0;f=n+64|0;m=n+60|0;g=n+56|0;h=n+52|0;k=n+48|0;j=n+44|0
;e=n+40|0;l=n;c[d>>2]=a;c[f>>2]=c[(c[d>>2]|0)+8>>2];c[k>>2]=-1;a:do if(!(Jq(c[
d>>2]|0,(c[f>>2]|0)+32|0)|0)){if(c[(c[f>>2]|0)+32>>2]|0?(c[j>>2]=c[c[d>
x3e;2]>>2],a=hc(c[j>>2]|0,20,0,c[(c[f>>2]|0)+32>>2]|0,0,e)|0,c[(c[f>>2]|0)+28
x3e;>2]=a,c[e>>2]|0):0){c[b>>2]=c[e>>2];m=c[b>>2]|0;i=n;return m|0}b:while(1){a=Eq(
c[d>>2]|0,1,h)|0;c[g>>2]=a;if(!a)break a;switch(Iq(c[g>>2]|0,c[h>>2]|0)|0){case 75:continue
b;case 20:case 21:case 23:break b;case 56:break;default:break a}c[k>>2]=(c[k>>2]|0)+1;if((c[k>>2]|
0)>=(c[(c[f>>2]|0)+32>>2]|0))break a;c[m>>2]=(c[(c[f>>2]|0)+28>>2]|0)+((c
[k>>2]|0)*20|0);c[l>>2]=3;c[l+8>>2]=2;c[l+16>>2]=2;c[l+24>>2]=2;c[l+32>
x3e;2]=2;if((Kq(c[d>>2]|0,l,5)|0)!=5)break a;c[c[m>>2]>>2]=c[l+4>>2];c[(c[m>>2
]|0)+4>>2]=c[l+8+4>>2];c[(c[m>>2]|0)+8>>2]=c[l+16+4>>2];c[(c[m>>2]|0
)+12>>2]=c[l+24+4>>2];c[(c[m>>2]|0)+16>>2]=c[l+32+4>>2];if((c[c[m>>2
]>>2]|0)>=0)continue;if((c[(c[m>>2]|0)+8>>2]|0)<=0)continue;c[(c[m>>2]|0)+8>
;>2]=0-(c[(c[m>>2]|0)+8>>2]|0)}c[(c[f>>2]|0)+32>>2]=(c[k>>2]|0)+1;c[b>
;>2]=0;m=c[b>>2]|0;i=n;return m|0}while(0);c[b>>2]=160;m=c[b>>2]|0;i=n;return m|0}function Oq
(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;p=i;i=i+80|0;e=p+72|0;f=p+68|0;g=p+64|0;j=p+60|0;h=p+56|0;k=p+
52|0;l=p+48|0;d=p+44|0;b=p+40|0;o=p+36|0;m=p+32|0;n=p;c[f>>2]=a;c[g>>2]=c[(c[f>>2]|0)+8>>
;2];c[l>>2]=-1;a:do if(!(Jq(c[f>>2]|0,(c[g>>2]|0)+40|0)|0)){if(c[(c[g>>2]|0)+40>>
;2]|0?(c[d>>2]=c[c[f>>2]>>2],a=hc(c[d>>2]|0,16,0,c[(c[g>>2]|0)+40>>2
]|0,0,b)|0,c[(c[g>>2]|0)+36>>2]=a,c[b>>2]|0):0){c[e>>2]=c[b>>2];o=c[e>>
;2]|0;i=p;return o|0}b:while(1){a=Eq(c[f>>2]|0,1,k)|0;c[h>>2]=a;if(!a)break a;c[o>>2]=Iq(c[h>
x3e;2]|0,c[k>>2]|0)|0;switch(c[o>>2]|0){case 75:continue b;case 20:case 21:case 22:break b;case 37:case 36:case
34:break;default:break a}c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)>=(c[(c[g>>2]|0)+40
x3e;>2]|0))break a;c[j>>2]=(c[(c[g>>2]|0)+36>>2]|0)+(c[l>>2]<<4);c[n>
;>2]=5;c[n+8>>2]=5;c[n+16>>2]=3;c[n+24>>2]=3;c[m>>2]=Kq(c[f>>2]|0,n,4)|0;
if((c[m>>2]|0)<3)break a;c[c[j>>2]>>2]=c[n+4>>2];c[(c[j>>2]|0)+4>>
;2]=c[n+8+4>>2];if((c[o>>2]|0)==37){c[(c[j>>2]|0)+8>>2]=0;c[(c[j>>2]|0)+12>
;>2]=c[n+16+4>>2];continue}c[(c[j>>2]|0)+8>>2]=c[n+16+4>>2];if((c[o>>2]|0
)==34&(c[m>>2]|0)==4)b=c[n+24+4>>2]|0;else b=0;c[(c[j>>2]|0)+12>>2]=b}c[(c[g>
x3e;2]|0)+40>>2]=(c[l>>2]|0)+1;Bs(c[(c[g>>2]|0)+36>>2]|0,c[(c[g>>2]|0)+40>
;>2]|0,16,109);c[e>>2]=0;o=c[e>>2]|0;i=p;return o|0}while(0);c[e>>2]=160;o=c[e>>2]|
0;i=p;return o|0}function Pq(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;g=i;i=i+32|0;d=g+24|0;l=g+20|0;k=g+16|0;j=g+12
|0;h=g+8|0;e=g+4|0;f=g;c[l>>2]=a;c[k>>2]=b;c[j>>2]=c[l>>2];c[h>>2]=c[k>
x3e;2];c[e>>2]=c[c[j>>2]>>2]<<16|c[(c[j>>2]|0)+4>>2];c[f>>
2]=c[c[h>>2]>>2]<<16|c[(c[h>>2]|0)+4>>2];if((c[e>>2]|0)>>
x3e;0>(c[f>>2]|0)>>>0){c[d>>2]=1;l=c[d>>2]|0;i=g;return l|0}if((c[e>>
;2]|0)>>>0<(c[f>>2]|0)>>>0){c[d>>2]=-1;l=c[d>>2]|0;i=g;return l
|0}else{c[d>>2]=0;l=c[d>>2]|0;i=g;return l|0}return 0}function Qq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d
x3e;>2]=a;Rq(c[d>>2]|0,0);i=b;return 0}function Rq(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[d>>2]=a;c[f>>2]=b;c[h>>2]=c[c[d>>2]>>2];c[g>>
2]=c[(c[h>>2]|0)+484>>2];c[(c[d>>2]|0)+24>>2]=c[(c[h>>2]|0)+132+284>>
;2];c[(c[d>>2]|0)+28>>2]=c[(c[h>>2]|0)+132+288>>2];c[(c[d>>2]|0)+20>>
;2]=c[(c[g>>2]|0)+20>>2];a=c[g>>2]|0;if(c[f>>2]|0){g=c[a+28>>2]|0;h=c[d>
x3e;2]|0;h=h+16|0;c[h>>2]=g;i=e;return}else{g=c[a+24>>2]|0;h=c[d>>2]|0;h=h+16|0;c[h>>2]=
g;i=e;return}}function Sq(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)+24>>2]=0;c
[(c[d>>2]|0)+28>>2]=0;c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>2]=0;
i=b;return}function Tq(b,d){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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;m=o+16|0;h=o+12|0
;l=o+8|0;j=o+4|0;k=o;c[f>>2]=b;c[g>>2]=d;c[m>>2]=0;if((c[g>>2]|0)>>>0>
;=256){n=c[m>>2]|0;i=o;return n|0}c[h>>2]=e[(c[(c[f>>2]|0)+16>>2]|0)+(c[g>>2]
x3c;<1)>>1];c[j>>2]=Ta[c[(c[f>>2]|0)+20>>2]&63](c[h>>2]|0)|0;c[l>
;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[(c[f>>2]|0)+24>>2]|0)>>
x3e;0){n=9;break}c[k>>2]=c[(c[(c[f>>2]|0)+28>>2]|0)+(c[l>>2]<<2)>>2];
if((c[k>>2]|0?(a[c[k>>2]>>0]|0)==(a[c[j>>2]>>0]|0):0)?(Kr(c[k>>2]|0,
c[j>>2]|0)|0)==0:0)break;c[l>>2]=(c[l>>2]|0)+1}if((n|0)==9){n=c[m>>2]|0;i=o;return n|0}c
[m>>2]=c[l>>2];n=c[m>>2]|0;i=o;return n|0}function Uq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0
;j=i;i=i+16|0;d=j+12|0;e=j+8|0;g=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[f>>2]=(c[c[e
x3e;>2]>>2]|0)+1;while(1){if((c[f>>2]|0)>>>0>=256)break;c[g>>2]=Tq(c[d>
;>2]|0,c[f>>2]|0)|0;if(c[g>>2]|0){h=6;break}c[f>>2]=(c[f>>2]|0)+1}if((h|0)==6){b=c[
f>>2]|0;h=c[e>>2]|0;c[h>>2]=b;h=c[g>>2]|0;i=j;return h|0}c[f>>2]=0;b=c[f>
x3e;2]|0;h=c[e>>2]|0;c[h>>2]=b;h=c[g>>2]|0;i=j;return h|0}function Vq(a){a=a|0;var b=0,d=0;b=i;i=i
+16|0;d=b;c[d>>2]=a;Rq(c[d>>2]|0,1);i=b;return 0}function Wq(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]=c[c[d>>2]>>2];c[e>>2]=(c[f>>2]|0)+132
+240;c[(c[d>>2]|0)+16>>2]=c[(c[e>>2]|0)+4>>2];c[(c[d>>2]|0)+20>>2]=(
c[(c[e>>2]|0)+8>>2]|0)-(c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+24>>2]=
c[(c[e>>2]|0)+12>>2];i=b;return 0}function Xq(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)+24>>2]=0;c[(c[d>>2]|0)+16>>2]=0;c[(c[d>>2]|0)+20>>2]=0;i=b
;return}function Yq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=
b;c[g>>2]=0;if((c[f>>2]|0)>>>0<(c[(c[d>>2]|0)+16>>2]|0)>>
x3e;0){g=c[g>>2]|0;i=h;return g|0}if((c[f>>2]|0)>>>0>=((c[(c[d>>2]|0)+16>
x3e;2]|0)+(c[(c[d>>2]|0)+20>>2]|0)|0)>>>0){g=c[g>>2]|0;i=h;return g|0}c[g>>
;2]=e[(c[(c[d>>2]|0)+24>>2]|0)+(c[f>>2]<<1)>>1];g=c[g>>2]|0;i=h;return
g|0}function Zq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;d=k+12|0;f=k+8|0;h=k+4|0;g=k;c[d>>2]=a;c[f
x3e;>2]=b;c[h>>2]=0;c[g>>2]=c[c[f>>2]>>2];c[g>>2]=(c[g>>2]|0)+1
;if((c[g>>2]|0)>>>0<(c[(c[d>>2]|0)+16>>2]|0)>>>0)c[g>>
;2]=c[(c[d>>2]|0)+16>>2];while(1){if((c[g>>2]|0)>>>0>=((c[(c[d>>2]|0
)+16>>2]|0)+(c[(c[d>>2]|0)+20>>2]|0)|0)>>>0)break;c[h>>2]=e[(c[(c[d>
x3e;2]|0)+24>>2]|0)+(c[g>>2]<<1)>>1];if(c[h>>2]|0){j=7;break}c[g>>2]=(
c[g>>2]|0)+1}if((j|0)==7){b=c[g>>2]|0;j=c[f>>2]|0;c[j>>2]=b;j=c[h>>2]|0;i=k;return
j|0}c[g>>2]=0;b=c[g>>2]|0;j=c[f>>2]|0;c[j>>2]=b;j=c[h>>2]|0;i=k;return j|0}function
_q(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;d=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[d>>2]=c[c[e>
x3e;2]>>2];c[f>>2]=c[(c[d>>2]|0)+100>>2];c[g>>2]=c[(c[d>>2]|0)+484
x3e;>2];a=Sa[c[(c[g>>2]|0)+4>>2]&3](c[f>>2]|0,c[e>>2]|0,c[(c[d>>2]|0
)+132+284>>2]|0,110,0,c[d>>2]|0)|0;i=b;return a|0}function $q(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;
e=f+4|0;d=f;c[e>>2]=a;c[d>>2]=b;i=f;return c[(c[(c[e>>2]|0)+132+288>>2]|0)+(c[d>>
;2]<<2)>>2]|0}function ar(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]=c[c[d>>2]>>2];c[e>>2]=c[(c[f>>2]|0)+100>>2];Fb(c[e>>
;2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>
;2]=0;i=b;return}function br(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;h=d+4|0;g=d;c[f>>2
]=a;c[e>>2]=b;c[h>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[h>>2]|0)+484>
x3e;2];a=Ya[c[(c[g>>2]|0)+8>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function
cr(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;h=d+4|0;g=d;c[f>>2]=a;c[e>>2]=b;c
[h>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[h>>2]|0)+484>>2];a=Ya[c[(c[g>
x3e;2]|0)+12>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function dr(a,d,e){a=a|0;d=d|0;e=
e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+4|0;h=f;g=f+8|0;c[j>>2]=a;c[h>>2]=d;b[g>>1]=e;er(j,(c[j
x3e;>2]|0)+(c[h>>2]|0)|0,c[j>>2]|0,c[h>>2]|0,g)|0;i=f;return}function er(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;v=i;i=i+48|0;l=v+36|0;m=v+32|0;n=v+28|0;o=v+24|0;p=v+20|0;r
=v+16|0;s=v+12|0;t=v+8|0;u=v+4|0;q=v;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[p>
x3e;2]=k;c[t>>2]=e[c[p>>2]>>1];c[r>>2]=c[c[l>>2]>>2];if((c[o>
x3e;2]|0)>>>0>((c[m>>2]|0)-(c[r>>2]|0)|0)>>>0)c[o>>2]=(c[m>
;>2]|0)-(c[r>>2]|0);c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[o>>
;2]|0)>>>0)break;c[u>>2]=d[(c[r>>2]|0)+(c[s>>2]|0)>>0];c[q>>2]=
c[u>>2]^(c[t>>2]|0)>>>8;c[t>>2]=(((c[u>>2]|0)+(c[t>>2]|0)|0)*52845
|0)+22719&65535;a[(c[n>>2]|0)+(c[s>>2]|0)>>0]=c[q>>2];c[s>>2]=(c[s>
x3e;2]|0)+1}c[c[l>>2]>>2]=(c[r>>2]|0)+(c[o>>2]|0);b[c[p>>2]>>1]=c[t
x3e;>2];i=v;return c[s>>2]|0}function fr(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
,u=0;u=i;i=i+64|0;r=u+44|0;e=u+40|0;h=u+36|0;o=u+32|0;m=u+28|0;f=u+49|0;k=u+24|0;j=u+20|0;p=u+16|0;n=u+12|0;g=u+48|0;l=u+8|0;t=u
+4|0;s=u;c[e>>2]=b;if(((a[c[e>>2]>>0]|0)==117?(a[(c[e>>2]|0)+1>>0]|0)==110:0)?(
a[(c[e>>2]|0)+2>>0]|0)==105:0){c[o>>2]=0;c[m>>2]=(c[e>>2]|0)+3;c[h>>
2]=4;while(1){if((c[h>>2]|0)<=0)break;a[f>>0]=a[c[m>>2]>>0]|0;c[k>>2]=(d[
f>>0]|0)-48;do if((c[k>>2]|0)>>>0>=10){c[k>>2]=(d[f>>0]|0)-65;if((c[
k>>2]|0)>>>0>=6){c[k>>2]=16;break}else{c[k>>2]=(c[k>>2]|0)+10;break}}
while(0);if((c[k>>2]|0)>>>0>=16)break;c[o>>2]=(c[o>>2]<<4)+(c[k>
;>2]|0);c[h>>2]=(c[h>>2]|0)+-1;c[m>>2]=(c[m>>2]|0)+1}if(!(c[h>>2]|0)){if(!(
a[c[m>>2]>>0]|0)){c[r>>2]=c[o>>2];t=c[r>>2]|0;i=u;return t|0}if((a[c[m>
x3e;2]>>0]|0)==46){c[r>>2]=c[o>>2]|-2147483648;t=c[r>>2]|0;i=u;return t|0}}}if((a[c[e>
;>2]>>0]|0)==117){c[p>>2]=0;c[n>>2]=(c[e>>2]|0)+1;c[j>>2]=6;while(1){if((
c[j>>2]|0)<=0)break;a[g>>0]=a[c[n>>2]>>0]|0;c[l>>2]=(d[g>>0]|0)-
48;do if((c[l>>2]|0)>>>0>=10){c[l>>2]=(d[g>>0]|0)-65;if((c[l>>2]|0)
x3e;>>0>=6){c[l>>2]=16;break}else{c[l>>2]=(c[l>>2]|0)+10;break}}while(0);if((c[l>
;>2]|0)>>>0>=16)break;c[p>>2]=(c[p>>2]<<4)+(c[l>>2]|0);c[j>
;>2]=(c[j>>2]|0)+-1;c[n>>2]=(c[n>>2]|0)+1}if((c[j>>2]|0)<=2){if(!(a[c[n>
x3e;2]>>0]|0)){c[r>>2]=c[p>>2];t=c[r>>2]|0;i=u;return t|0}if((a[c[n>>2]>
x3e;0]|0)==46){c[r>>2]=c[p>>2]|-2147483648;t=c[r>>2]|0;i=u;return t|0}}}c[t>>2]=c[e>
;>2];c[s>>2]=0;while(1){if(!(a[c[t>>2]>>0]|0))break;if((a[c[t>>2]>>0]|0)==
46?(c[t>>2]|0)>>>0>(c[e>>2]|0)>>>0:0){q=35;break}c[t>>2]=(c[t
x3e;>2]|0)+1}if((q|0)==35)c[s>>2]=c[t>>2];e=c[e>>2]|0;if(c[s>>2]|0){c[r>>
2]=gr(e,c[s>>2]|0)|0|-2147483648;t=c[r>>2]|0;i=u;return t|0}else{c[r>>2]=gr(e,c[t>>2]|0)|
0;t=c[r>>2]|0;i=u;return t|0}return 0}function gr(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;t=i;i=i+64|0;f=t+48|0;g=t+44|0;h=t+40|0;j=t+36|0;l=t+32|0;o=t+28|0;m=t+24|0;q=t+20|0;n=t+16|0;r=t+12|0;k=t+8|0;p=t+4|0;
s=t;c[g>>2]=b;c[h>>2]=e;c[j>>2]=0;c[q>>2]=12431;a:do if(c[g>>2]|0?(c[g>
x3e;2]|0)>>>0<(c[h>>2]|0)>>>0:0){b=c[g>>2]|0;c[g>>2]=b+1;c[j>
;>2]=a[b>>0];c[l>>2]=d[(c[q>>2]|0)+1>>0];c[q>>2]=(c[q>>2]|0)+2;
c[o>>2]=0;c[m>>2]=c[l>>2];while(1){if((c[o>>2]|0)>=(c[m>>2]|0))break a;c[
n>>2]=(c[o>>2]|0)+(c[m>>2]|0)>>1;c[r>>2]=(c[q>>2]|0)+(c[n>>
;2]<<1);c[r>>2]=12431+(d[c[r>>2]>>0]<<8|d[(c[r>>2]|0)+1>>0
]);c[k>>2]=d[c[r>>2]>>0]&127;if((c[k>>2]|0)==(c[j>>2]|0))break;e=c[n>
;>2]|0;if((c[k>>2]|0)<(c[j>>2]|0)){c[o>>2]=e+1;continue}else{c[m>>2]=e;continue
}}c[q>>2]=c[r>>2];while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>
;>0)break;r=c[g>>2]|0;c[g>>2]=r+1;c[j>>2]=a[r>>0];r=(d[c[q>>2]>>
;0]&128|0)!=0;c[q>>2]=(c[q>>2]|0)+1;if(r)if((c[j>>2]|0)!=(d[c[q>>2]>>0]
x26;127|0))break a;else continue;c[l>>2]=d[c[q>>2]>>0]&127;if(d[c[q>>2]>>
0]&128|0)c[q>>2]=(c[q>>2]|0)+2;c[q>>2]=(c[q>>2]|0)+1;while(1){if((c[l>>2]|
0)<=0)break a;c[p>>2]=d[c[q>>2]>>0]<<8|d[(c[q>>2]|0)+1>>0];c[s
x3e;>2]=12431+(c[p>>2]|0);if((c[j>>2]|0)==(d[c[s>>2]>>0]&127|0))break;c[l>
;>2]=(c[l>>2]|0)+-1;c[q>>2]=(c[q>>2]|0)+2}c[q>>2]=c[s>>2]}if((d[c[q>
x3e;2]>>0]&128|0)==0?d[(c[q>>2]|0)+1>>0]&128|0:0){c[f>>2]=d[(c[q>>2]|
0)+2>>0]<<8|d[(c[q>>2]|0)+3>>0];s=c[f>>2]|0;i=t;return s|0}}while(0);c[f>
x3e;2]=0;s=c[f>>2]|0;i=t;return s|0}function hr(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;w=i;i=i+144|0;h=w+128|0;j=w+124|0;k=w+120|0;l=w+116|0;m=w+112|0;n=w+108|0;p=w+104|0;q
=w+64|0;r=w+24|0;u=w+16|0;o=w+12|0;t=w+8|0;v=w+4|0;s=w;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>
;2]=e;c[m>>2]=f;c[n>>2]=g;f=q;e=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(e|0));c[(c[j>
x3e;2]|0)+16>>2]=0;c[(c[j>>2]|0)+20>>2]=0;b=hc(c[h>>2]|0,8,0,(c[k>>2]|0)+10|0,
0,p)|0;c[(c[j>>2]|0)+20>>2]=b;if(c[p>>2]|0){v=c[p>>2]|0;i=w;return v|0}c[t>>2]=
c[(c[j>>2]|0)+20>>2];c[u>>2]=0;while(1){if((c[u>>2]|0)>>>0>=(c[k>
;>2]|0)>>>0)break;c[s>>2]=Ya[c[l>>2]&127](c[n>>2]|0,c[u>>2]|0)|
0;if(c[s>>2]|0){ir(c[s>>2]|0,c[u>>2]|0,r,q);c[v>>2]=fr(c[s>>2]|0)|0;if(c[v>
;>2]&2147483647|0){jr(c[v>>2]|0,q);c[c[t>>2]>>2]=c[v>>2];c[(c[t>>2]|
0)+4>>2]=c[u>>2];c[t>>2]=(c[t>>2]|0)+8}if(c[m>>2]|0)Ra[c[m>>2]&
7](c[n>>2]|0,c[s>>2]|0)}c[u>>2]=(c[u>>2]|0)+1}c[u>>2]=0;while(1){if((c[u>
x3e;2]|0)>>>0>=10)break;if((c[q+(c[u>>2]<<2)>>2]|0)==1){c[c[t>>2]>
;>2]=c[5252+(c[u>>2]<<2)>>2];c[(c[t>>2]|0)+4>>2]=c[r+(c[u>>2]
x3c;<2)>>2];c[t>>2]=(c[t>>2]|0)+8}c[u>>2]=(c[u>>2]|0)+1}c[o>>2]=((
c[t>>2]|0)-(c[(c[j>>2]|0)+20>>2]|0)|0)/8|0;if(!(c[o>>2]|0)){Fb(c[h>>2]|0,c[(c[
j>>2]|0)+20>>2]|0);c[(c[j>>2]|0)+20>>2]=0;if(!(c[p>>2]|0))c[p>>2]=163
}else{if((c[o>>2]|0)>>>0<(((c[k>>2]|0)>>>0)/2|0)>>>0){v=hc
(c[h>>2]|0,8,c[k>>2]|0,c[o>>2]|0,c[(c[j>>2]|0)+20>>2]|0,p)|0;c[(c[j>>
;2]|0)+20>>2]=v;c[p>>2]=0}Bs(c[(c[j>>2]|0)+20>>2]|0,c[o>>2]|0,8,111)}c[(c[j>
;>2]|0)+16>>2]=c[o>>2];v=c[p>>2]|0;i=w;return v|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,l=0,m=0;m=i;i=i+32|0;f=m+16|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m;c[f>>2]=a;c[g>>2]=b;c[h
>>2]=d;c[j>>2]=e;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=10){l=7;break
}e=(Kr(67222+(c[5212+(c[k>>2]<<2)>>2]|0)|0,c[f>>2]|0)|0)==0;d=c[k>>2]|0;if(e)break
;c[k>>2]=d+1}if((l|0)==7){i=m;return}if(c[(c[j>>2]|0)+(d<<2)>>2]|0){i=m;return}c[(c[j>
;>2]|0)+(c[k>>2]<<2)>>2]=1;c[(c[h>>2]|0)+(c[k>>2]<<2)>>
;2]=c[g>>2];i=m;return}function jr(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;d=h+8|0;e=h+4|0;f=h;c[d>
x3e;2]=a;c[e>>2]=b;c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=10){g=6;break}b=c[f
x3e;>2]|0;if((c[d>>2]|0)==(c[5252+(c[f>>2]<<2)>>2]|0))break;c[f>>2]=b+1}if
((g|0)==6){i=h;return}c[(c[e>>2]|0)+(b<<2)>>2]=2;i=h;return}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;j=i;i=i+32|0;d=j+24|0;l=j+20|0;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[l>>2]=a;c[k>>
;2]=b;c[e>>2]=c[l>>2];c[f>>2]=c[k>>2];c[g>>2]=c[c[e>>2]>>2
]&2147483647;c[h>>2]=c[c[f>>2]>>2]&2147483647;do if((c[g>>2]|0)==(c[h>>
;2]|0)){if((c[c[e>>2]>>2]|0)>>>0>(c[c[f>>2]>>2]|0)>>>
0){c[d>>2]=1;break}if((c[c[e>>2]>>2]|0)>>>0<(c[c[f>>2]>>2]|
0)>>>0){c[d>>2]=-1;break}else{c[d>>2]=0;break}}else{if((c[g>>2]|0)>>>
;0>(c[h>>2]|0)>>>0){c[d>>2]=1;break}if((c[g>>2]|0)>>>0<(c[
h>>2]|0)>>>0){c[d>>2]=-1;break}else{c[d>>2]=0;break}}while(0);i=j;return c[d>
x3e;2]|0}function lr(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;m=i;i=i+32|0;d=m+28|0;n=m+24|0;e=m+20|0;j=m+16
|0;g=m+12|0;h=m+8|0;k=m+4|0;f=m;c[n>>2]=a;c[e>>2]=b;c[k>>2]=0;c[j>>2]=c[(c[n>>
2]|0)+20>>2];c[g>>2]=(c[j>>2]|0)+(c[(c[n>>2]|0)+16>>2]<<3)+-8;while(
1){if((c[j>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[h>>2]=(c[j>
x3e;2]|0)+((((c[g>>2]|0)-(c[j>>2]|0)|0)/8|0)>>1<<3);a=c[h>>2]|0;if((c[c[h>
;>2]>>2]|0)==(c[e>>2]|0)){l=4;break}c[f>>2]=c[a>>2]&2147483647;if((c[f>
x3e;2]|0)==(c[e>>2]|0))c[k>>2]=c[h>>2];if((c[j>>2]|0)==(c[g>>2]|0))break;a=c[h
>>2]|0;if((c[f>>2]|0)>>>0<(c[e>>2]|0)>>>0){c[j>>2]=a+
8;continue}else{c[g>>2]=a+-8;continue}}if((l|0)==4)c[k>>2]=a;if(c[k>>2]|0){c[d>>2]=c[(c[
k>>2]|0)+4>>2];n=c[d>>2]|0;i=m;return n|0}else{c[d>>2]=0;n=c[d>>2]|0;i=m;return
n|0}return 0}function mr(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;o=i;i=i+48|0;d=o+32|0;e=o+28|0;m=o+24
|0;g=o+20|0;l=o+16|0;j=o+12|0;k=o+8|0;h=o+4|0;f=o;c[d>>2]=a;c[e>>2]=b;c[m>>2]=0;c[g>>2]=(
c[c[e>>2]>>2]|0)+1;c[l>>2]=0;c[j>>2]=c[(c[d>>2]|0)+16>>2];while(1){if
((c[l>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;c[k>>2]=(c[l>>
;2]|0)+(((c[j>>2]|0)-(c[l>>2]|0)|0)>>>1);c[h>>2]=(c[(c[d>>2]|0)+20>
x3e;2]|0)+(c[k>>2]<<3);a=c[h>>2]|0;if((c[c[h>>2]>>2]|0)==(c[g>>2]|0)){
n=4;break}c[f>>2]=c[a>>2]&2147483647;if((c[f>>2]|0)==(c[g>>2]|0))c[m>>2]=
c[(c[h>>2]|0)+4>>2];a=c[k>>2]|0;if((c[f>>2]|0)>>>0<(c[g>>2
]|0)>>>0){c[l>>2]=a+1;continue}else{c[j>>2]=a;continue}}if((n|0)==4){c[m>>2]=c[a+4
x3e;>2];l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}if(c[m>
x3e;2]|0){l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}c[g>>2]=
0;if((c[l>>2]|0)>>>0>=(c[(c[d>>2]|0)+16>>2]|0)>>>0){l=c[g>
x3e;2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}c[h>>2]=(c[(c[d>>2]|
0)+20>>2]|0)+(c[l>>2]<<3);c[m>>2]=c[(c[h>>2]|0)+4>>2];c[g>>
;2]=c[c[h>>2]>>2]&2147483647;l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>
;>2]|0;i=o;return n|0}function nr(a){a=a|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=a;c[d>>2]=(c[d>>
;2]|0)>>>0>=258?0:a;i=e;return 67307+(b[8388+(c[d>>2]<<1)>>1]|0)|0}function or
(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[e>>2]=a;if((c[e>>2]|0)>>>0>=391){c[
d>>2]=0;a=c[d>>2]|0;i=f;return a|0}else{c[d>>2]=67307+(b[8904+(c[e>>2]<<1)>
;>1]|0);a=c[d>>2]|0;i=f;return a|0}return 0}function pr(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[f>>2]=c[f>>2];b=qc(5292,c[e>>2]|0)|0;i=d;return b|0}function
qr(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;e=h+12|0;f=h+8|0;d=h+4|0;g=h;c[f>>2]=a;c[d>>2]=b;if
(!(c[f>>2]|0)){c[e>>2]=40;g=c[e>>2]|0;i=h;return g|0}c[(c[f>>2]|0)+12>>2]=0;c[(
c[f>>2]|0)+16>>2]=c[d>>2];c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+8>>
;2]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>>2]|0)+24>>2]=0;c[g>>2]=fs(c[d>>
2]|0,71020)|0;if(!(c[g>>2]|0)){c[e>>2]=1;g=c[e>>2]|0;i=h;return g|0}us(c[g>>2]|0,0,2)|0;
d=ps(c[g>>2]|0)|0;c[(c[f>>2]|0)+4>>2]=d;d=c[g>>2]|0;if(c[(c[f>>2]|0)+4>
x3e;2]|0){us(d,0,0)|0;c[(c[f>>2]|0)+12>>2]=c[g>>2];c[(c[f>>2]|0)+20>>2]=25;c[(
c[f>>2]|0)+24>>2]=44;c[e>>2]=0;g=c[e>>2]|0;i=h;return g|0}else{ks(d)|0;c[e>>2]=
81;g=c[e>>2]|0;i=h;return g|0}return 0}function rr(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;m=
i;i=i+32|0;f=m+20|0;g=m+16|0;h=m+12|0;j=m+8|0;k=m+4|0;l=m;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>
x3e;2]=e;if((c[k>>2]|0)==0?(c[h>>2]|0)>>>0>(c[(c[g>>2]|0)+4>>2]|0)
x3e;>>0:0){c[f>>2]=1;a=c[f>>2]|0;i=m;return a|0}c[l>>2]=c[(c[g>>2]|0)+12>
x3e;2];if((c[(c[g>>2]|0)+8>>2]|0)!=(c[h>>2]|0))us(c[l>>2]|0,c[h>>2]|0,0)|0;c[f
>>2]=ts(c[j>>2]|0,1,c[k>>2]|0,c[l>>2]|0)|0;a=c[f>>2]|0;i=m;return a|0}function
sr(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;ks(c[(c[d>>2]|0)+12>>2]|0)|0;c[(c[d>>
;2]|0)+12>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;i=b;return}function tr(){
var a=0,b=0;b=i;i=i+16|0;a=b;c[a>>2]=Fs(16)|0;if(!(c[a>>2]|0)){a=c[a>>2]|0;i=b;return a|0}c[c[a>
;>2]>>2]=0;c[(c[a>>2]|0)+4>>2]=112;c[(c[a>>2]|0)+12>>2]=26;c[(c[a>
x3e;2]|0)+8>>2]=6;a=c[a>>2]|0;i=b;return a|0}function ur(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[f>>2]=c[f>>2];b=Fs(c[e>>2]|0)|0;i=d;return b|0}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;f=i;i=i+16|0;k=f+12|0;j=f+8|0;g=f+4|0;h=f;c[k>>2]=a;c[j
x3e;>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=c[k>>2];c[j>>2]=c[j>>2];d
=Hs(c[h>>2]|0,c[g>>2]|0)|0;i=f;return d|0}function wr(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[f>>2]=c[f>>2];Gs(c[e>>2]|0);i=d;return}function xr(a
){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Gs(c[d>>2]|0);i=b;return}function yr(a){a=a|0;var b=0,d=0;b=i
;i=i+16|0;d=b;c[d>>2]=c[a+60>>2];a=zr(Aa(6,d|0)|0)|0;i=b;return a|0}function zr(a){a=a|0;if(a>>>
;0>4294963200){c[(Ar()|0)>>2]=0-a;a=-1}return a|0}function Ar(){var a=0;if(!(c[18388]|0))a=73596;else a=c[(xa()|0
)+64>>2]|0;return a|0}function Br(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+80|0;f=g;c[b+36>>2]=47;if((c[
b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21505,c[f+8>>2]=g+12,Fa(54,f
|0)|0):0)a[b+75>>0]=-1;f=Cr(b,d,e)|0;i=g;return f|0}function Cr(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;q=i;i=i+48|0;n=q+16|0;m=q;e=q+32|0;o=a+28|0;f=c[o>>2]|0;c[e>>2]=f;p=a+20|0;f=(c[p>
;>2]|0)-f|0;c[e+4>>2]=f;c[e+8>>2]=b;c[e+12>>2]=d;k=a+60|0;l=a+44|0;b=2;f=f+d|0;while(1){if(!(
c[18388]|0)){c[n>>2]=c[k>>2];c[n+4>>2]=e;c[n+8>>2]=b;h=zr(Ka(146,n|0)|0)|0}else{Da(45,a|
0);c[m>>2]=c[k>>2];c[m+4>>2]=e;c[m+8>>2]=b;h=zr(Ka(146,m|0)|0)|0;ra(0)}if((f|0)==(h|0)){
f=6;break}if((h|0)<0){f=8;break}f=f-h|0;g=c[e+4>>2]|0;if(h>>>0<=g>>>0)if((b|0)==
2){c[o>>2]=(c[o>>2]|0)+h;j=g;b=2}else j=g;else{j=c[l>>2]|0;c[o>>2]=j;c[p>>2]=j
;j=c[e+12>>2]|0;h=h-g|0;e=e+8|0;b=b+-1|0}c[e>>2]=(c[e>>2]|0)+h;c[e+4>>2]=j-h}if((f|0)==6
){n=c[l>>2]|0;c[a+16>>2]=n+(c[a+48>>2]|0);a=n;c[o>>2]=a;c[p>>2]=a}else if((f|0
)==8){c[a+16>>2]=0;c[o>>2]=0;c[p>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else
d=d-(c[e+4>>2]|0)|0}i=q;return d|0}function Dr(a){a=a|0;if(!(c[a+68>>2]|0))Er(a);return}function Er(a){a=a|
0;return}function Fr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c
[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((zr(Ha(140,g|0)|0)|0)<0){c[e>
;>2]=-1;a=-1}else a=c[e>>2]|0;i=f;return a|0}function Gr(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;m=i;i=i+48|0;h=m+16|0;g=m;f=m+32|0;c[f>>2]=d;j=f+4|0;l=b+48|0;n=c[l>>2]|0;c[j>>2]=e-((n|0)!=0
&1);k=b+44|0;c[f+8>>2]=c[k>>2];c[f+12>>2]=n;if(!(c[18388]|0)){c[h>>2]=c[b+60>
x3e;2];c[h+4>>2]=f;c[h+8>>2]=2;f=zr(Ja(145,h|0)|0)|0}else{Da(46,b|0);c[g>>2]=c[b+60>>2];
c[g+4>>2]=f;c[g+8>>2]=2;f=zr(Ja(145,g|0)|0)|0;ra(0)}if((f|0)>=1){j=c[j>>2]|0;if(f>>
x3e;0>j>>>0){g=c[k>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-j);if(!(c[l>>
;2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else{c[b>>2]=c[b>>2
]|f&48^16;c[b+8>>2]=0;c[b+4>>2]=0}i=m;return f|0}function Hr(a){a=a|0;if(!(c[a+68>>2]|0))Er(a
);return}function Ir(a){a=a|0;var b=0;b=(Jr(a)|0)==0;return (b?a:a|32)|0}function Jr(a){a=a|0;return (a+-65|0)>>>
0<26|0}function Kr(b,c){b=b|0;c=c|0;var d=0,e=0;e=a[b>>0]|0;d=a[c>>0]|0;if(e<<24>>24
==0?1:e<<24>>24!=d<<24>>24)c=e;else{do{b=b+1|0;c=c+1|0;e=a[b>>0]|0;d=a[c>
x3e;0]|0}while(!(e<<24>>24==0?1:e<<24>>24!=d<<24>>24));c=e}return (c
&255)-(d&255)|0}function Lr(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;if(!e)c=0;else{f=a[b>>0]|0;a:do if(!(f<
;<24>>24))f=0;else while(1){e=e+-1|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>
;>24&((e|0)!=0&g<<24>>24!=0)))break a;b=b+1|0;c=c+1|0;f=a[b>>0]|0;if(!(f<<
;24>>24)){f=0;break}}while(0);c=(f&255)-(d[c>>0]|0)|0}return c|0}function Mr(b){b=b|0;var d=0,e=0;d=b+74
|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+44|0;if((c[d>>2]|0)>>>0>(c[e>
x3e;2]|0)>>>0)Oa[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[b+28>>2]=0;c[d>
x3e;2]=0;d=c[b>>2]|0;if(d&20)if(!(d&4))d=-1;else{c[b>>2]=d|32;d=-1}else{d=c[e>>2]|0;c[b+
8>>2]=d;c[b+4>>2]=d;d=0}return d|0}function Nr(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;s=i;i=i+224|0;o=s+120|0;r=s+80|0;q=s;p=s+136|0;f=r;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(
g|0));c[o>>2]=c[e>>2];if((Or(0,d,o,q,r)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)m=_r(b)|0;else
m=0;e=c[b>>2]|0;n=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;e=b+48|0;if(!(c[e>
x3e;2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=p;j=b+28|0;c[j>>2]=p;k=b+20|0;c[k>>2]=p;c[e>
;>2]=80;l=b+16|0;c[l>>2]=p+80;f=Or(b,d,o,q,r)|0;if(h){Oa[c[b+36>>2]&63](b,0,0)|0;f=(c[k>>
;2]|0)==0?-1:f;c[g>>2]=h;c[e>>2]=0;c[l>>2]=0;c[j>>2]=0;c[k>>2]=0}}else f=Or(b,
d,o,q,r)|0;e=c[b>>2]|0;c[b>>2]=e|n;if(m|0)Er(b);e=(e&32|0)==0?f:-1}i=s;return e|0}function Or(e,f,g,j,l
){e=e|0;f=f|0;g=g|0;j=j|0;l=l|0;var m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,
J=0,K=0,L=0,M=0,N=0,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;ia=i;i=i+624
|0;da=ia+24|0;fa=ia+16|0;ea=ia+588|0;aa=ia+576|0;ca=ia;W=ia+536|0;ha=ia+8|0;ga=ia+528|0;M=(e|0)!=0;N=W+40|0;V=N;W=W+39|0;X=ha+4|
0;Y=ea;Z=0-Y|0;$=aa+12|0;aa=aa+11|0;ba=$;O=ba-Y|0;P=-2-Y|0;Q=ba+2|0;R=da+288|0;S=ea+9|0;T=S;U=ea+8|0;m=0;o=0;n=0;y=f;a:while(1){
do if((m|0)>-1)if((o|0)>(2147483647-m|0)){c[(Ar()|0)>>2]=75;m=-1;break}else{m=o+m|0;break}while(0);f=a[y>
;>0]|0;if(!(f<<24>>24)){L=244;break}else o=y;b:while(1){switch(f<<24>>24){case 37:{
f=o;L=9;break b}case 0:{f=o;break b}default:{}}K=o+1|0;f=a[K>>0]|0;o=K}c:do if((L|0)==9)while(1){L=0;if((a[f+1>
x3e;0]|0)!=37)break c;o=o+1|0;f=f+2|0;if((a[f>>0]|0)==37)L=9;else break}while(0);w=o-y|0;if(M?(c[e>>2]&
32|0)==0:0)Pr(y,w,e)|0;if((o|0)!=(y|0)){o=w;y=f;continue}r=f+1|0;o=a[r>>0]|0;p=(o<<24>>24)+-48|0;if
(p>>>0<10){K=(a[f+2>>0]|0)==36;r=K?f+3|0:r;o=a[r>>0]|0;u=K?p:-1;n=K?1:n}else u=-1;f=o<
;<24>>24;d:do if((f&-32|0)==32){p=0;while(1){if(!(1<<f+-32&75913)){s=p;break d}p=1<<
;(o<<24>>24)+-32|p;r=r+1|0;o=a[r>>0]|0;f=o<<24>>24;if((f&-32|0)!=32){s=p;
break}}}else s=0;while(0);do if(o<<24>>24==42){o=r+1|0;f=(a[o>>0]|0)+-48|0;if(f>>>0
<10?(a[r+2>>0]|0)==36:0){c[l+(f<<2)>>2]=10;n=1;r=r+3|0;f=c[j+((a[o>>0]|0)+-48<
x3c;3)>>2]|0}else{if(n|0){m=-1;break a}if(!M){v=s;n=0;r=o;K=0;break}n=(c[g>>2]|0)+(4-1)&~(4-1);f=c[n>
;>2]|0;c[g>>2]=n+4;n=0;r=o}if((f|0)<0){v=s|8192;K=0-f|0}else{v=s;K=f}}else{p=(o<<24>>24)+-
48|0;if(p>>>0<10){f=r;o=0;do{o=(o*10|0)+p|0;f=f+1|0;p=(a[f>>0]|0)+-48|0}while(p>>>0
<10);if((o|0)<0){m=-1;break a}else{v=s;r=f;K=o}}else{v=s;K=0}}while(0);e:do if((a[r>>0]|0)==46){f=r+1|0;o=a[
f>>0]|0;if(o<<24>>24!=42){p=(o<<24>>24)+-48|0;if(p>>>0<10)
o=0;else{s=0;break}while(1){o=(o*10|0)+p|0;f=f+1|0;p=(a[f>>0]|0)+-48|0;if(p>>>0>=10){s=o;break e}}}
f=r+2|0;o=(a[f>>0]|0)+-48|0;if(o>>>0<10?(a[r+3>>0]|0)==36:0){c[l+(o<<2)>
x3e;2]=10;s=c[j+((a[f>>0]|0)+-48<<3)>>2]|0;f=r+4|0;break}if(n|0){m=-1;break a}if(M){J=(c[g>
x3e;2]|0)+(4-1)&~(4-1);s=c[J>>2]|0;c[g>>2]=J+4}else s=0}else{s=-1;f=r}while(0);t=0;while(1){o=(a[f>
;>0]|0)+-65|0;if(o>>>0>57){m=-1;break a}p=f+1|0;o=a[71023+(t*58|0)+o>>0]|0;r=o&255;if((r
+-1|0)>>>0<8){f=p;t=r}else{J=p;break}}if(!(o<<24>>24)){m=-1;break}p=(u|0)>-1;do if(
o<<24>>24==19)if(p){m=-1;break a}else L=52;else{if(p){c[l+(u<<2)>>2]=r;H=j+(u<<
;3)|0;I=c[H+4>>2]|0;L=ca;c[L>>2]=c[H>>2];c[L+4>>2]=I;L=52;break}if(!M){m=0;break a}Rr(ca
,r,g)}while(0);if((L|0)==52?(L=0,!M):0){o=w;y=J;continue}u=a[f>>0]|0;u=(t|0)!=0&(u&15|0)==3?u&-33:u;p=v
&-65537;I=(v&8192|0)==0?v:p;f:do switch(u|0){case 110:switch(t|0){case 0:{c[c[ca>>2]>>2]=m;o=w;y=J
;continue a}case 1:{c[c[ca>>2]>>2]=m;o=w;y=J;continue a}case 2:{o=c[ca>>2]|0;c[o>>2]=m;c
[o+4>>2]=((m|0)<0)<<31>>31;o=w;y=J;continue a}case 3:{b[c[ca>>2]>>1]=m;o=
w;y=J;continue a}case 4:{a[c[ca>>2]>>0]=m;o=w;y=J;continue a}case 6:{c[c[ca>>2]>>2]=m;o=
w;y=J;continue a}case 7:{o=c[ca>>2]|0;c[o>>2]=m;c[o+4>>2]=((m|0)<0)<<31>>
31;o=w;y=J;continue a}default:{o=w;y=J;continue a}}case 112:{t=I|8;s=s>>>0>8?s:8;u=120;L=64;break}case 88:case
120:{t=I;L=64;break}case 111:{p=ca;o=c[p>>2]|0;p=c[p+4>>2]|0;if((o|0)==0&(p|0)==0)f=N;else{f=N;do{f=f+-
1|0;a[f>>0]=o&7|48;o=Os(o|0,p|0,3)|0;p=C}while(!((o|0)==0&(p|0)==0))}if(!(I&8)){o=I;t=0;r=71503;L=77}else
{t=V-f|0;o=I;s=(s|0)>(t|0)?s:t+1|0;t=0;r=71503;L=77}break}case 105:case 100:{o=ca;f=c[o>>2]|0;o=c[o+4>>
2]|0;if((o|0)<0){f=Ls(0,0,f|0,o|0)|0;o=C;p=ca;c[p>>2]=f;c[p+4>>2]=o;p=1;r=71503;L=76;break f}if(!(I&
;2048)){r=I&1;p=r;r=(r|0)==0?71503:71505;L=76}else{p=1;r=71504;L=76}break}case 117:{o=ca;f=c[o>>2]|0;o=c[o+4>
;>2]|0;p=0;r=71503;L=76;break}case 99:{a[W>>0]=c[ca>>2];f=W;u=1;w=0;v=71503;o=N;break}case 109:{o=Tr(c[(
Ar()|0)>>2]|0)|0;L=82;break}case 115:{o=c[ca>>2]|0;o=o|0?o:73405;L=82;break}case 67:{c[ha>>2]=c[ca
>>2];c[X>>2]=0;c[ca>>2]=ha;f=ha;s=-1;L=86;break}case 83:{f=c[ca>>2]|0;if(!s){Vr(e,32,K,0
,I);f=0;L=97}else L=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{q=+h[ca>>3];c[fa>
;>2]=0;h[k>>3]=q;if((c[k+4>>2]|0)>=0)if(!(I&2048)){H=I&1;G=H;H=(H|0)==0?73413:73418}else
{G=1;H=73415}else{q=-q;G=1;H=73412}h[k>>3]=q;F=c[k+4>>2]&2146435072;do if(F>>>0<2146435072
|(F|0)==2146435072&0<0){x=+Yr(q,fa)*2.0;o=x!=0.0;if(o)c[fa>>2]=(c[fa>>2]|0)+-1;D=u|32;if((D|0)==97
){v=u&32;y=(v|0)==0?H:H+9|0;w=G|2;f=12-s|0;do if(!(s>>>0>11|(f|0)==0)){q=8.0;do{f=f+-1|0;q=q*16.0}while
((f|0)!=0);if((a[y>>0]|0)==45){q=-(q+(-x-q));break}else{q=x+q-q;break}}else q=x;while(0);o=c[fa>>2]|0;f=(o|0
)<0?0-o|0:o;f=Sr(f,((f|0)<0)<<31>>31,$)|0;if((f|0)==($|0)){a[aa>>0]=48;f=aa}a[f+-1>
x3e;0]=(o>>31&2)+43;t=f+-2|0;a[t>>0]=u+15;r=(s|0)<1;p=(I&8|0)==0;o=ea;while(1){H=~~q;f=o+1|0;
a[o>>0]=d[71487+H>>0]|v;q=(q-+(H|0))*16.0;do if((f-Y|0)==1){if(p&(r&q==0.0))break;a[f>>0
]=46;f=o+2|0}while(0);if(!(q!=0.0))break;else o=f}p=t;s=(s|0)!=0&(P+f|0)<(s|0)?Q+s-p|0:O-p+f|0;r=s+w|0;Vr(e,32,K,r,I);
if(!(c[e>>2]&32))Pr(y,w,e)|0;Vr(e,48,K,r,I^65536);o=f-Y|0;if(!(c[e>>2]&32))Pr(ea,o,e)|0;f=ba-p|0;Vr
(e,48,s-(o+f)|0,0,0);if(!(c[e>>2]&32))Pr(t,f,e)|0;Vr(e,32,K,r,I^8192);f=(r|0)<(K|0)?K:r;break}f=(s|0)<0
?6:s;if(o){o=(c[fa>>2]|0)+-28|0;c[fa>>2]=o;q=x*268435456.0}else{q=x;o=c[fa>>2]|0}F=(o|0)<0?da
:R;E=F;o=F;do{B=~~q>>>0;c[o>>2]=B;o=o+4|0;q=(q-+(B>>>0))*1.0e9}while(q!=0.0);p=o;o=c[fa
x3e;>2]|0;if((o|0)>0){s=F;while(1){t=(o|0)>29?29:o;r=p+-4|0;do if(r>>>0<s>>>0)
r=s;else{o=0;do{B=Ps(c[r>>2]|0,0,t|0)|0;B=Ms(B|0,C|0,o|0,0)|0;o=C;A=$s(B|0,o|0,1e9,0)|0;c[r>>2]=A;o=_s(B|0,o
|0,1e9,0)|0;r=r+-4|0}while(r>>>0>=s>>>0);if(!o){r=s;break}r=s+-4|0;c[r>>2]=o}while(
0);while(1){if(p>>>0<=r>>>0)break;o=p+-4|0;if(!(c[o>>2]|0))p=o;else break}o=(c[fa
x3e;>2]|0)-t|0;c[fa>>2]=o;if((o|0)>0)s=r;else break}}else r=F;if((o|0)<0){y=((f+25|0)/9|0)+1|0;z=(D|0)==
102;v=r;while(1){w=0-o|0;w=(w|0)>9?9:w;do if(v>>>0<p>>>0){o=(1<<w)+-1|0;s=1e9
x3e;>>w;r=0;t=v;do{B=c[t>>2]|0;c[t>>2]=(B>>>w)+r;r=_(B&o,s)|0;t=t+4|0}while(t
x3e;>>0<p>>>0);o=(c[v>>2]|0)==0?v+4|0:v;if(!r){r=o;break}c[p>>2]=r;r=o;p=p+4|0
}else r=(c[v>>2]|0)==0?v+4|0:v;while(0);o=z?F:r;p=(p-o>>2|0)>(y|0)?o+(y<<2)|0:p;o=(c[fa>
x3e;2]|0)+w|0;c[fa>>2]=o;if((o|0)>=0){z=r;break}else v=r}}else z=r;do if(z>>>0<p>>
x3e;0){o=(E-z>>2)*9|0;s=c[z>>2]|0;if(s>>>0<10)break;else r=10;do{r=r*10|0;o=o+1|0}while(
s>>>0>=r>>>0)}else o=0;while(0);A=(D|0)==103;B=(f|0)!=0;r=f-((D|0)!=102?o:0)+((B&A)<
;<31>>31)|0;if((r|0)<(((p-E>>2)*9|0)+-9|0)){t=r+9216|0;r=F+4+(((t|0)/9|0)+-1024<<2)|0;t=((
t|0)%9|0)+1|0;if((t|0)<9){s=10;do{s=s*10|0;t=t+1|0}while((t|0)!=9)}else s=10;w=c[r>>2]|0;y=(w>>>0)%(
s>>>0)|0;t=(r+4|0)==(p|0);do if(t&(y|0)==0)s=z;else{x=(((w>>>0)/(s>>>0)|0)&
;1|0)==0?9007199254740992.0:9007199254740994.0;v=(s|0)/2|0;if(y>>>0<v>>>0)q=.5;else q=t&(
y|0)==(v|0)?1.0:1.5;do if(G){if((a[H>>0]|0)!=45)break;x=-x;q=-q}while(0);t=w-y|0;c[r>>2]=t;if(!(x+q!=x)){s=z
;break}D=t+s|0;c[r>>2]=D;if(D>>>0>999999999){o=z;while(1){s=r+-4|0;c[r>>2]=0;if(s>
x3e;>0<o>>>0){o=o+-4|0;c[o>>2]=0}D=(c[s>>2]|0)+1|0;c[s>>2]=D;if(D>
x3e;>0>999999999)r=s;else{v=o;r=s;break}}}else v=z;o=(E-v>>2)*9|0;t=c[v>>2]|0;if(t>>>
;0<10){s=v;break}else s=10;do{s=s*10|0;o=o+1|0}while(t>>>0>=s>>>0);s=v}while(0);D=r+4|0;
z=s;p=p>>>0>D>>>0?D:p}w=0-o|0;while(1){if(p>>>0<=z>>>0){y=
0;D=p;break}r=p+-4|0;if(!(c[r>>2]|0))p=r;else{y=1;D=p;break}}do if(A){f=(B&1^1)+f|0;if((f|0)>(o|0)&(o|0
)>-5){u=u+-1|0;f=f+-1-o|0}else{u=u+-2|0;f=f+-1|0}p=I&8;if(p|0)break;do if(y){p=c[D+-4>>2]|0;if(!p){r=9;break
}if(!((p>>>0)%10|0)){s=10;r=0}else{r=0;break}do{s=s*10|0;r=r+1|0}while(!((p>>>0)%(s>>>
;0)|0|0))}else r=9;while(0);p=((D-E>>2)*9|0)+-9|0;if((u|32|0)==102){p=p-r|0;p=(p|0)<0?0:p;f=(f|0)<(p|0)?f:p;
p=0;break}else{p=p+o-r|0;p=(p|0)<0?0:p;f=(f|0)<(p|0)?f:p;p=0;break}}else p=I&8;while(0);v=f|p;s=(v|0)!=0&1;t
=(u|32|0)==102;if(t){o=(o|0)>0?o:0;u=0}else{r=(o|0)<0?w:o;r=Sr(r,((r|0)<0)<<31>>31,$)|0;if((ba
-r|0)<2)do{r=r+-1|0;a[r>>0]=48}while((ba-r|0)<2);a[r+-1>>0]=(o>>31&2)+43;E=r+-2|0;a
[E>>0]=u;o=ba-E|0;u=E}w=G+1+f+s+o|0;Vr(e,32,K,w,I);if(!(c[e>>2]&32))Pr(H,G,e)|0;Vr(e,48,K,w,I^65536);do
if(t){r=z>>>0>F>>>0?F:z;o=r;do{p=Sr(c[o>>2]|0,0,S)|0;do if((o|0)==(r|0)){if((p|0)!=(
S|0))break;a[U>>0]=48;p=U}else{if(p>>>0<=ea>>>0)break;Ns(ea|0,48,p-Y|0)|0;do p=p+-1
|0;while(p>>>0>ea>>>0)}while(0);if(!(c[e>>2]&32))Pr(p,T-p|0,e)|0;o=o+4|0}while
(o>>>0<=F>>>0);do if(v|0){if(c[e>>2]&32|0)break;Pr(73447,1,e)|0}while(0);if((f
|0)>0&o>>>0<D>>>0){p=o;while(1){o=Sr(c[p>>2]|0,0,S)|0;if(o>>>
;0>ea>>>0){Ns(ea|0,48,o-Y|0)|0;do o=o+-1|0;while(o>>>0>ea>>>0)}if(!(c[e
x3e;>2]&32))Pr(o,(f|0)>9?9:f,e)|0;p=p+4|0;o=f+-9|0;if(!((f|0)>9&p>>>0<D>>
x3e;0)){f=o;break}else f=o}}Vr(e,48,f+9|0,9,0)}else{t=y?D:z+4|0;if((f|0)>-1){s=(p|0)==0;r=z;do{o=Sr(c[r>>2]|0,0,S
)|0;if((o|0)==(S|0)){a[U>>0]=48;o=U}do if((r|0)==(z|0)){p=o+1|0;if(!(c[e>>2]&32))Pr(o,1,e)|0;if(s&(
f|0)<1){o=p;break}if(c[e>>2]&32|0){o=p;break}Pr(73447,1,e)|0;o=p}else{if(o>>>0<=ea>
x3e;>0)break;Ns(ea|0,48,o+Z|0)|0;do o=o+-1|0;while(o>>>0>ea>>>0)}while(0);p=T-o|0;if(!(c
[e>>2]&32))Pr(o,(f|0)>(p|0)?p:f,e)|0;f=f-p|0;r=r+4|0}while(r>>>0<t>>>0&
;(f|0)>-1)}Vr(e,48,f+18|0,18,0);if(c[e>>2]&32|0)break;Pr(u,ba-u|0,e)|0}while(0);Vr(e,32,K,w,I^8192);f=(w|0)
x3c;(K|0)?K:w}else{t=(u&32|0)!=0;s=q!=q|0.0!=0.0;o=s?0:G;r=o+3|0;Vr(e,32,K,r,p);f=c[e>>2]|0;if(!(f&32)){Pr(H
,o,e)|0;f=c[e>>2]|0}if(!(f&32))Pr(s?(t?73439:73443):t?73431:73435,3,e)|0;Vr(e,32,K,r,I^8192);f=(r|0)<(K|0)?K
:r}while(0);o=f;y=J;continue a}default:{f=y;p=I;u=s;w=0;v=71503;o=N}}while(0);g:do if((L|0)==64){p=ca;o=c[p>>2]|0;p=c[
p+4>>2]|0;r=u&32;if(!((o|0)==0&(p|0)==0)){f=N;do{f=f+-1|0;a[f>>0]=d[71487+(o&15)>>0
]|r;o=Os(o|0,p|0,4)|0;p=C}while(!((o|0)==0&(p|0)==0));L=ca;if((t&8|0)==0|(c[L>>2]|0)==0&(c[L+4>>
;2]|0)==0){o=t;t=0;r=71503;L=77}else{o=t;t=2;r=71503+(u>>4)|0;L=77}}else{f=N;o=t;t=0;r=71503;L=77}}else if((L|0)==76){
f=Sr(f,o,N)|0;o=I;t=p;L=77}else if((L|0)==82){L=0;I=Ur(o,0,s)|0;H=(I|0)==0;f=o;u=H?s:I-o|0;w=0;v=71503;o=H?o+s|0:I}else if((L|0)==
86){L=0;p=0;o=0;t=f;while(1){r=c[t>>2]|0;if(!r)break;o=Wr(ga,r)|0;if((o|0)<0|o>>>0>(s-p|0)>
;>>0)break;p=o+p|0;if(s>>>0>p>>>0)t=t+4|0;else break}if((o|0)<0){m=-1;break a}
Vr(e,32,K,p,I);if(!p){f=0;L=97}else{r=0;while(1){o=c[f>>2]|0;if(!o){f=p;L=97;break g}o=Wr(ga,o)|0;r=o+r|0;if((r|0)>
;(p|0)){f=p;L=97;break g}if(!(c[e>>2]&32))Pr(ga,o,e)|0;if(r>>>0>=p>>>0){f=p;L=
97;break}else f=f+4|0}}}while(0);if((L|0)==97){L=0;Vr(e,32,K,f,I^8192);o=(K|0)>(f|0)?K:f;y=J;continue}if((L|0)==77){L=0;p=(
s|0)>-1?o&-65537:o;o=ca;o=(c[o>>2]|0)!=0|(c[o+4>>2]|0)!=0;if((s|0)!=0|o){u=(o&1^1)+(V-f)|0;u=(
s|0)>(u|0)?s:u;w=t;v=r;o=N}else{f=N;u=0;w=t;v=r;o=N}}t=o-f|0;r=(u|0)<(t|0)?t:u;s=w+r|0;o=(K|0)<(s|0)?s:K;Vr(e,32,
o,s,p);if(!(c[e>>2]&32))Pr(v,w,e)|0;Vr(e,48,o,s,p^65536);Vr(e,48,r,t,0);if(!(c[e>>2]&32))Pr(f,t,e)|
0;Vr(e,32,o,s,p^8192);y=J}h:do if((L|0)==244)if(!e)if(n){m=1;while(1){n=c[l+(m<<2)>>2]|0;if(!n)break;Rr(j+(m
<<3)|0,n,g);m=m+1|0;if((m|0)>=10){m=1;break h}}if((m|0)<10)while(1){if(c[l+(m<<2)>>2]|0){
m=-1;break h}m=m+1|0;if((m|0)>=10){m=1;break}}else m=1}else m=0;while(0);i=ia;return m|0}function Pr(b,d,e){b=b|0;d=d|0;e=e
|0;var f=0,g=0,h=0,i=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(Qr(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((
h|0)==5){i=e+20|0;f=c[i>>2]|0;h=f;if((g-f|0)>>>0<d>>>0){f=Oa[c[e+36>>2]
x26;63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){f=d;while(1){if(!f){g=h;f=0;break b}g=f+-1|0;if((a[b+g>>
;0]|0)==10)break;else f=g}if((Oa[c[e+36>>2]&63](e,b,f)|0)>>>0<f>>>0)break a;d=
d-f|0;b=b+f|0;g=c[i>>2]|0}else{g=h;f=0}while(0);Ss(g|0,b|0,d|0)|0;c[i>>2]=(c[i>>2]|0)+d;f=f+d|0}while
(0);return f|0}function Qr(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if
(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;d=c[b+44>>2]|0;c[b+28>>2]=d;c[b+20>>2]=d
;c[b+16>>2]=d+(c[b+48>>2]|0);d=0}else{c[b>>2]=d|32;d=-1}return d|0}function Rr(a,b,d){a=a|0;b=b|0;
d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b
=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e
x3e;>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break
a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4
x3e;>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d
x3e;>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f
x3e;>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((
e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>
;>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1
);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>
;2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;
c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&
;~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1
);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function Sr(b,
c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295)while(1){e=$s(b
|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e|48;e=_s(b|0,c|0,10,0)|0;if(c>>>0>9|(c|0)==9&b>>
x3e;0>4294967295){b=e;c=C}else{b=e;break}}if(b)while(1){d=d+-1|0;a[d>>0]=(b>>>0)%10|0|48;if(b>
;>>0<10)break;else b=(b>>>0)/10|0}return d|0}function Tr(b){b=b|0;var c=0,e=0;c=0;while(1){if((d[71513
+c>>0]|0)==(b|0)){e=2;break}c=c+1|0;if((c|0)==87){c=87;b=71601;e=5;break}}if((e|0)==2)if(!c)b=71601;else{b=71601;e=5}if
((e|0)==5)while(1){e=b;while(1){b=e+1|0;if(!(a[e>>0]|0))break;else e=b}c=c+-1|0;if(!c)break;else e=5}return b|0}function
Ur(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if
((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5
;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24
>>24){f=_(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144
)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e
){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(
0);return (e|0?b:0)|0}function Vr(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;j=i;i=i+256|0;h=j;do if((d|0)>(e
|0)&(f&73728|0)==0){f=d-e|0;Ns(h|0,b|0,(f>>>0>256?256:f)|0)|0;b=c[a>>2]|0;g=(b&32|0
)==0;if(f>>>0>255){e=d-e|0;do{if(g){Pr(h,256,a)|0;b=c[a>>2]|0}f=f+-256|0;g=(b&32|0)==0}while(
f>>>0>255);if(g)f=e&255;else break}else if(!g)break;Pr(h,f,a)|0}while(0);i=j;return}function Wr(a,b){a=
a|0;b=b|0;if(!a)a=0;else a=Xr(a,b,0)|0;return a|0}function Xr(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128
){a[b>>0]=d;b=1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0
]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224
;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>
;0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>
x3e;0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(Ar()|0)>>2]=84;b=-1;break}}
else b=1;while(0);return b|0}function Yr(a,b){a=+a;b=b|0;return +(+Zr(a,b))}function Zr(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[k>
;>3]=a;d=c[k>>2]|0;e=c[k+4>>2]|0;f=Os(d|0,e|0,52)|0;f=f&2047;switch(f|0){case 0:{if(a!=0.0){a=+Zr(
a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>
x3e;2]=f+-1022;c[k>>2]=d;c[k+4>>2]=e&-2146435073|1071644672;a=+h[k>>3]}}return +a}function _r
(a){a=a|0;return 0}function $r(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)d=0;else{f=d;e=b;while(1){b=a[e>>0]|0;d
=a[c>>0]|0;if(b<<24>>24!=d<<24>>24)break;f=f+-1|0;if(!f){d=0;break a}else{e=e+
1|0;c=c+1|0}}d=(b&255)-(d&255)|0}while(0);return d|0}function as(a,b,c){a=a|0;b=b|0;c=c|0;bs(a,b,c)|0;return a|0}function
bs(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;do if(!((g^b)&3)){f=(e|0)!=0;a:do if(f&(g&3|0)!=0)while(1){g=a[d
>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0;if(!(f&
;(d&3|0)!=0)){h=5;break}}else h=5;while(0);if((h|0)==5)if(!f){e=0;break}if(a[d>>0]|0){b:do if(e>>>
0>3)do{f=c[d>>2]|0;if((f&-2139062144^-2139062144)&f+-16843009|0)break b;c[b>>2]=f;e=e+-4|0;d=
d+4|0;b=b+4|0}while(e>>>0>3);while(0);h=11}}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a
[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|
0}while(0);Ns(b|0,0,e|0)|0;return b|0}function cs(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=b;b=f;while(1){if(!(
a[d>>0]|0))break a;d=d+1|0;b=d;if(!(b&3)){b=d;e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if
(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;
while((a[b>>0]|0)!=0)}return b-f|0}function ds(a,b){a=a|0;b=b|0;es(a,b)|0;return a|0}function es(b,d){b=b|0;d=d|0;var
e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24
))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){
f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break
;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+
1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function fs(b,d){b=b|0;
d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+32|0;f=g+16|0;e=g;if(Ur(73449,a[d>>0]|0,4)|0){h=gs(d)|0|32768;c[e>>2]=b;c[
e+4>>2]=h;c[e+8>>2]=438;e=zr(Ca(5,e|0)|0)|0;if((e|0)>=0){b=js(e,d)|0;if(!b){c[f>>2]=e;Aa(6,f|
0)|0;b=0}}else b=0}else{c[(Ar()|0)>>2]=22;b=0}i=g;return b|0}function gs(b){b=b|0;var c=0,d=0,e=0;d=(hs(b,43)|0)==0;c=
a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(hs(b,120)|0)==0;d=e?d:d|128;b=(hs(b,101)|0)==0;b=b?d:d|524288
;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==
97?b|1024:b)|0}function hs(b,c){b=b|0;c=c|0;b=is(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?
b:0)|0}function is(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(cs(b)|0)|0;else{if(b&3){e=d&255;do{g=
a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b
=b+1|0}while((b&3|0)!=0)}f=_(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009
))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144
^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g
x3c;<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function js(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;o=i;i=i+112|0;n=o+40|0;l=o+24|0;k=o+16|0;g=o;m=o+52|0;f=a[d>>0]|0;if(Ur(73449
,f<<24>>24,4)|0){e=Fs(1144)|0;if(!e)e=0;else{h=e;j=h+112|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(
j|0));if(!(hs(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(hs(d,101)|0){c[g>>2]=b;c[g+4>
x3e;2]=2;c[g+8>>2]=1;sa(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[k>>2]=b;c[k
+4>>2]=3;f=sa(221,k|0)|0;if(!(f&1024)){c[l>>2]=b;c[l+4>>2]=4;c[l+8>>2]=f|1024;sa(221
,l|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+120
;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21505,c[n+8
>>2]=m,(Fa(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=48;c[e+36>>2]=47;c[e+40>>2]=
32;c[e+12>>2]=33;if(!(c[18389]|0))c[e+76>>2]=-1;ua(73580);f=c[18394]|0;c[e+56>>2]=f;if(f|0)c[f+52
x3e;>2]=e;c[18394]=e;Ga(73580)}}else{c[(Ar()|0)>>2]=22;e=0}i=o;return e|0}function ks(a){a=a|0;var b=0,d=0,e=0;e=(
c[a>>2]&1|0)!=0;if(!e){ua(73580);d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];
b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[18394]|0)==(a|0))c[18394]=b;Ga(73580)}b=ls(a)|0;b=Ta[c[a+12>>
;2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)Gs(d);if(!e)Gs(a);return b|0}function ls(a){a=a|0;var b=0,d=0;do if(a){if((c
[a+76>>2]|0)<=-1){b=ms(a)|0;break}d=(_r(a)|0)==0;b=ms(a)|0;if(!d)Er(a)}else{if(!(c[1356]|0))b=0;else b=ls(c[1356]|
0)|0;ua(73580);a=c[18394]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=_r(a)|0;else d=0;if((c[a+20>>2]|0)>>
;>0>(c[a+28>>2]|0)>>>0)b=ms(a)|0|b;if(d|0)Er(a);a=c[a+56>>2]|0}while((a|0)!=0);Ga(73580
)}while(0);return b|0}function ms(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;g=a+28|0;if((c[b>>2]|0)>>>
;0>(c[g>>2]|0)>>>0?(Oa[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)b=-1;else
{h=a+4|0;d=c[h>>2]|0;e=a+8|0;f=c[e>>2]|0;if(d>>>0<f>>>0)Oa[c[a+40>
x3e;2]&63](a,d-f|0,1)|0;c[a+16>>2]=0;c[g>>2]=0;c[b>>2]=0;c[e>>2]=0;c[h>>2
]=0;b=0}return b|0}function ns(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>
x3e;0>(c[a+28>>2]|0)>>>0?2:1;b=Oa[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a
+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function os(a){a=a|0;
var b=0;if((c[a+76>>2]|0)>-1){b=(_r(a)|0)==0;a=ns(a)|0}else a=ns(a)|0;return a|0}function ps(a){a=a|0;return os(a
)|0}function qs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(_r(a)|0)==0;b=rs(a,b,d)|0;if(!e)Er(a)}else
b=rs(a,b,d)|0;return b|0}function rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>
x3e;2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Oa[c[a+
36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>
;2]=0;if((Oa[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>
;2]=c[a>>2]&-17;b=0}}return b|0}function ss(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;b=Nr
(c[1327]|0,a,e)|0;i=d;return b|0}function ts(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;j=_(e,d)|0;if((c[f+76
x3e;>2]|0)>-1)k=_r(f)|0;else k=0;g=f+74|0;i=a[g>>0]|0;a[g>>0]=i+255|i;g=f+4|0;i=c[g>>2]|
0;h=(c[f+8>>2]|0)-i|0;if((h|0)>0){h=h>>>0<j>>>0?h:j;Ss(b|0,i|0,h|0)|0;c[g>
;>2]=i+h;b=b+h|0;g=j-h|0}else g=j;a:do if(!g)l=13;else{i=f+32|0;h=g;while(1){if(Mr(f)|0){e=h;break}g=Oa[c[i>>2]
x26;63](f,b,h)|0;if((g+1|0)>>>0<2){e=h;break}if((h|0)==(g|0)){l=13;break a}else{b=b+g|0;h=h-g|0}}if(k|0)Er(f
);e=((j-e|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(k)Er(f);return e|0}function us(a,b,c){a=a|0;b
=b|0;c=c|0;return qs(a,b,c)|0}function vs(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;w=i;i=i+1056|0;u=w+1024|0;v=w;k=a[e>>0]|0;do if(k<<24>>24){t=hs(b,k<<24>>24
)|0;if(t){j=a[e+1>>0]|0;if(j<<24>>24){f=t+1|0;m=a[f>>0]|0;if(m<<24>>
24){h=a[e+2>>0]|0;if(!(h<<24>>24)){j=j&255|(k&255)<<8;b=m;g=d[t>>0]
x3c;<8|m&255;while(1){g=g&65535;if((g|0)==(j|0))break;f=f+1|0;h=a[f>>0]|0;if(!(h<<24>>
;24)){b=0;break}else{b=h;g=h&255|g<<8}}b=b<<24>>24?f+-1|0:0;break}f=t+2|0;b=a[f>>0]|
0;if(b<<24>>24){g=a[e+3>>0]|0;if(!(g<<24>>24)){h=(j&255)<<16|(k
&255)<<24|(h&255)<<8;g=(b&255)<<8|(m&255)<<16|d[t>>0]<
;<24;if((g|0)!=(h|0))do{f=f+1|0;b=a[f>>0]|0;g=(b&255|g)<<8}while(!(b<<24>>24==
0|(g|0)==(h|0)));b=b<<24>>24?f+-2|0:0;break}f=t+3|0;l=a[f>>0]|0;if(l<<24>>24){
if(!(a[e+4>>0]|0)){h=(j&255)<<16|(k&255)<<24|(h&255)<<8|g&255;b=(b
x26;255)<<8|(m&255)<<16|l&255|d[t>>0]<<24;if((b|0)==(h|0))b=l;else{g=b;do{f=f+
1|0;b=a[f>>0]|0;g=b&255|g<<8}while(!(b<<24>>24==0|(g|0)==(h|0)))}b=b<<24
x3e;>24?f+-3|0:0;break};c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[u+12>>2]=0;c[u+16>
x3e;2]=0;c[u+20>>2]=0;c[u+24>>2]=0;c[u+28>>2]=0;b=k;g=0;while(1){if(!(a[t+g>>0]|0)){b=0;
break}f=u+(((b&255)>>>5&255)<<2)|0;c[f>>2]=c[f>>2]|1<<(b&31
);f=g+1|0;c[v+((b&255)<<2)>>2]=f;b=a[e+f>>0]|0;if(!(b<<24>>24)){n=23;break
}else g=f}a:do if((n|0)==23){b:do if(f>>>0>1){h=1;n=-1;b=0;c:while(1){m=1;while(1){d:while(1){j=1;while(1){k
=a[e+(j+n)>>0]|0;l=a[e+h>>0]|0;if(k<<24>>24!=l<<24>>24){m=h;j=k;h=l;
break d}if((j|0)==(m|0))break;j=j+1|0;h=j+b|0;if(h>>>0>=f>>>0){b=n;p=m;break c}}b=b+m|0;h=b+1
|0;if(h>>>0>=f>>>0){b=n;p=m;break c}}k=m-n|0;if((j&255)<=(h&255))break;b=m+1|0
;if(b>>>0<f>>>0){h=b;b=m;m=k}else{b=n;p=k;break c}}h=b+2|0;if(h>>>0>=f>
;>>0){p=1;break}else{n=b;b=b+1|0}}j=1;k=-1;h=0;while(1){l=h;h=1;while(1){o=l;e:while(1){l=1;while(1){n=a[e+(l+k)>
x3e;0]|0;m=a[e+j>>0]|0;if(n<<24>>24!=m<<24>>24){l=j;j=o;break e}if((l|0)==(h|0
))break;l=l+1|0;j=l+o|0;if(j>>>0>=f>>>0){j=p;break b}}o=o+h|0;j=o+1|0;if(j>>>0
>=f>>>0){j=p;break b}}h=l-k|0;if((n&255)>=(m&255)){h=j;break}j=l+1|0;if(j>>>0
x3e;=f>>>0){j=p;break b}}j=h+2|0;if(j>>>0>=f>>>0){k=h;j=p;h=1;break}else{k=h;h
=h+1|0}}}else{b=-1;k=-1;j=1;h=1}while(0);r=(k+1|0)>>>0>(b+1|0)>>>0;h=r?h:j;r=r?k:b;q=r+1|0;if
(!($r(e,e+h|0,q)|0))s=f-h|0;else{h=f-r+-1|0;s=0;h=(r>>>0>h>>>0?r:h)+1|0}n=f|63;o=(s|0)!=0;p=f
-h|0;b=t;m=0;l=t;f:while(1){j=b;do if((l-j|0)>>>0<f>>>0){k=Ur(l,0,n)|0;if(k)if((k-j|0)>
x3e;>0<f>>>0){b=0;break a}else break;else{k=l+n|0;break}}else k=l;while(0);j=a[b+g>>0]|0;if(!(
1<<(j&31)&c[u+(((j&255)>>>5&255)<<2)>>2])){b=b+f|0;m=0;l=k;continue
}t=c[v+((j&255)<<2)>>2]|0;j=f-t|0;if((f|0)!=(t|0)){b=b+(o&(m|0)!=0&j>>>0<
h>>>0?p:j)|0;m=0;l=k;continue}j=q>>>0>m>>>0?q:m;l=a[e+j>>0]|0;g:do if
(!(l<<24>>24))j=q;else{while(1){if(l<<24>>24!=(a[b+j>>0]|0))break;j=j+1|0;l=a[
e+j>>0]|0;if(!(l<<24>>24)){j=q;break g}}b=b+(j-r)|0;m=0;l=k;continue f}while(0);do{if(j>>
;>0<=m>>>0)break a;j=j+-1|0}while((a[e+j>>0]|0)==(a[b+j>>0]|0));b=b+h|0;m=s;l=k}}while
(0)}else b=0}else b=0}else b=0}else b=t}else b=0}while(0);i=w;return b|0}function ws(a){a=a|0;var b=0,c=0;c=(cs(a)|0)+1|0;b=Fs(c
)|0;if(!b)b=0;else Ss(b|0,a|0,c|0)|0;return b|0}function xs(a,b){a=a|0;b=b|0;return ys(a,b,(cs(a)|0)+1|0)|0}function ys(b,c,d){b
=b|0;c=c|0;d=d|0;var e=0;e=c&255;do{if(!d){c=0;break}d=d+-1|0;c=b+d|0}while((a[c>>0]|0)!=e<<24>>
;24);return c|0}function zs(a,b){a=a|0;b=b|0;ds(a+(cs(a)|0)|0,b)|0;return a|0}function As(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;e=a[b
>>0]|0;a:do if(!(e<<24>>24))b=0;else{g=e;f=e&255;while(1){e=a[c>>0]|0;if(!(e<
x3c;24>>24)){b=g;break a}if(g<<24>>24!=e<<24>>24?(g=Ir(f)|0,(g|0)!=(Ir(d[c>
;>0]|0)|0)):0)break;b=b+1|0;c=c+1|0;e=a[b>>0]|0;if(!(e<<24>>24)){b=0;break a}else{g=e;f=e&
;255}}b=a[b>>0]|0}while(0);g=Ir(b&255)|0;return g-(Ir(d[c>>0]|0)|0)|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,r=0;r=i;i=i+208|0;o=r+8|0;p=r;f=_(d,b)|0;n=p;c[n>>2]=1;c[n
+4>>2]=0;if(f|0){n=0-d|0;c[o+4>>2]=d;c[o>>2]=d;g=d;b=d;h=2;while(1){b=b+d+g|0;c[o+(h<<2)
x3e;>2]=b;if(b>>>0<f>>>0){m=g;g=b;h=h+1|0;b=m}else break}h=a+f+n|0;m=p+4|0;if(h>>
;>0>a>>>0){j=h;g=1;f=1;while(1){do if((g&3|0)==3){Cs(a,d,e,f,o);l=c[m>>2]|0;b=l<<
;30|(c[p>>2]|0)>>>2;c[p>>2]=b;c[m>>2]=l>>>2;f=f+2|0}else{b=f+-1|0;if
((c[o+(b<<2)>>2]|0)>>>0<(j-a|0)>>>0)Cs(a,d,e,f,o);else Es(a,d,e,p,f,0,o);
if((f|0)==1){b=c[p>>2]|0;c[m>>2]=b>>>31|c[m>>2]<<1;b=b<<1;c[p
x3e;>2]=b;f=0;break}if(b>>>0>31){g=c[p>>2]|0;c[m>>2]=g;c[p>>2]=0;b=f+-33|
0;f=g;g=0}else{f=c[m>>2]|0;g=c[p>>2]|0}c[m>>2]=g>>>(32-b|0)|f<<b;b=g<
;<b;c[p>>2]=b;f=1}while(0);g=b|1;c[p>>2]=g;b=a+d|0;if(b>>>0>=h>>>0){
a=f;break}else a=b}}else{b=a;a=1}Es(b,d,e,p,a,0,o);l=p+4|0;g=c[p>>2]|0;h=c[l>>2]|0;f=(h|0)==0;if(!((a|0)==1
x26;(g|0)==1&f)){k=h;while(1){if((a|0)<2){h=g+-1|0;do if(h){if(!(h&1)){f=0;do{f=f+1|0;h=h>>>1}while
(!(h&1|0))}else{if(f)f=32;else{if(!(k&1)){h=k;f=0}else{j=0;h=k;f=0;break}do{f=f+1|0;h=h>>>1}while(!(h
x26;1|0))}f=f+32|0}if(f>>>0>31)q=28;else{j=f;h=k}}else{f=32;q=28}while(0);if((q|0)==28){q=0;c[p>>2
]=k;c[m>>2]=0;j=f+-32|0;g=k;h=0}c[p>>2]=h<<32-j|g>>>j;c[m>>2]=h>>
;>j;b=b+n|0;h=f+a|0}else{j=g>>>30;h=a+-2|0;c[p>>2]=(g<<1&2147483646|j<<31
)^3;c[m>>2]=(j|k<<2)>>>1;Es(b+(0-(c[o+(h<<2)>>2]|0))+n|0,d,e,p,a+-1|0,1,o
);k=c[p>>2]|0;c[m>>2]=k>>>31|c[m>>2]<<1;c[p>>2]=k<<1|
1;b=b+n|0;Es(b,d,e,p,h,1,o)}g=c[p>>2]|0;k=c[l>>2]|0;f=(k|0)==0;if((h|0)==1&(g|0)==1&f)break;else a
=h}}}i=r;return}function Cs(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;p=i;i=i+240|0;o=p;c
[o>>2]=a;a:do if((e|0)>1){n=0-b|0;g=e;h=a;k=a;l=1;while(1){a=h+n|0;m=g+-2|0;j=a+(0-(c[f+(m<<2)>>
;2]|0))|0;if((Ya[d&127](k,j)|0)>-1?(Ya[d&127](k,a)|0)>-1:0){e=l;break a}e=l+1|0;h=o+(l<<2)|0;if((Ya
[d&127](j,a)|0)>-1){c[h>>2]=j;a=j;g=g+-1|0}else{c[h>>2]=a;g=m}if((g|0)<=1)break a;h=a;k=c[o
x3e;>2]|0;l=e}}else e=1;while(0);Ds(b,o,e);i=p;return}function Ds(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+
256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0>256?256:
a;Ss(e|0,c[b>>2]|0,f|0)|0;e=0;do{j=b+(e<<2)|0;e=e+1|0;Ss(c[j>>2]|0,c[b+(e<<2)>>
;2]|0,f|0)|0;c[j>>2]=(c[j>>2]|0)+f}while((e|0)!=(d|0));if((a|0)==(f|0))break a;a=a-f|0;e=c[g>>2]|0
}while(0);i=h;return}function Es(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;r=i;i=i+240|0;p=r;l=c[e>>2]|0;k=c[e+4>>2]|0;c[p>>2]=a;o=0-b|0;a:do if((k|0)!=0|(l|0)!=1?(j=a+(0-(
c[h+(f<<2)>>2]|0))|0,(Ya[d&127](j,a)|0)>=1):0){g=(g|0)==0;m=1;n=l;while(1){if(g&(f|0)>1){
e=a+o|0;g=c[h+(f+-2<<2)>>2]|0;if((Ya[d&127](e,j)|0)>-1){g=f;e=m;q=19;break a}if((Ya[d&127](e+(
0-g)|0,j)|0)>-1){g=f;e=m;q=19;break a}}e=m+1|0;c[p+(m<<2)>>2]=j;g=n+-1|0;do if(g){if(!(g&1)){a=0;do
{a=a+1|0;g=g>>>1}while(!(g&1|0))}else{if(!k)g=32;else{if(!(k&1)){a=k;g=0}else{l=0;g=n;a=0;break}do{g=g+
1|0;a=a>>>1}while(!(a&1|0))}a=g+32|0}if(a>>>0>31)q=15;else{l=a;g=n}}else{a=32;q=15}while
(0);if((q|0)==15){q=0;l=a+-32|0;g=k;k=0}n=k<<32-l|g>>>l;k=k>>>l;g=a+f|0;if(!((k|0)!=0|(n
|0)!=1)){a=j;q=19;break a}a=j+(0-(c[h+(g<<2)>>2]|0))|0;if((Ya[d&127](a,c[p>>2]|0)|0)<1){
a=j;f=g;g=0;q=18;break}else{l=j;f=g;g=1;j=a;m=e;a=l}}}else{e=1;q=18}while(0);if((q|0)==18?(g|0)==0:0){g=f;q=19}if((q|0)==19){Ds(
b,p,e);Cs(a,b,d,g,h)}i=r;return}function Fs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,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;do if(a>>>0<245){o=a>>>
;0<11?16:a+11&-8;a=o>>>3;j=c[18400]|0;b=j>>>a;if(b&3|0){b=(b&1^1)+a|0;d=73640+(
b<<1<<2)|0;e=d+8|0;f=c[e>>2]|0;g=f+8|0;h=c[g>>2]|0;do if((d|0)!=(h|0)){if(h>>
x3e;0<(c[18404]|0)>>>0)ya();a=h+12|0;if((c[a>>2]|0)==(f|0)){c[a>>2]=d;c[e>>2]=
h;break}else ya()}else c[18400]=j&~(1<<b);while(0);L=b<<3;c[f+4>>2]=L|3;L=f+L+4|0;c[L>
x3e;2]=c[L>>2]|1;L=g;return L|0}h=c[18402]|0;if(o>>>0>h>>>0){if(b|0){d=2<<
;a;d=b<<a&(d|0-d);d=(d&0-d)+-1|0;i=d>>>12&16;d=d>>>i;f=d>>>
;5&8;d=d>>>f;g=d>>>2&4;d=d>>>g;e=d>>>1&2;d=d>>
;>e;b=d>>>1&1;b=(f|i|g|e|b)+(d>>>b)|0;d=73640+(b<<1<<2)|0;e=d+8|0;g=
c[e>>2]|0;i=g+8|0;f=c[i>>2]|0;do if((d|0)!=(f|0)){if(f>>>0<(c[18404]|0)>>>
;0)ya();a=f+12|0;if((c[a>>2]|0)==(g|0)){c[a>>2]=d;c[e>>2]=f;k=c[18402]|0;break}else ya()}else{c[18400
]=j&~(1<<b);k=h}while(0);h=(b<<3)-o|0;c[g+4>>2]=o|3;e=g+o|0;c[e+4>>2]=h|1;c[e+h>
;>2]=h;if(k|0){f=c[18405]|0;b=k>>>3;d=73640+(b<<1<<2)|0;a=c[18400]|0;b=1<<b;if
(a&b){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{l=a;m=b}}else{c[
18400]=a|b;l=d+8|0;m=d}c[l>>2]=f;c[m+12>>2]=f;c[f+8>>2]=m;c[f+12>>2]=d}c[18402]=h;c[18405
]=e;L=i;return L|0}a=c[18401]|0;if(a){d=(a&0-a)+-1|0;K=d>>>12&16;d=d>>>K;J=d>>
x3e;5&8;d=d>>>J;L=d>>>2&4;d=d>>>L;b=d>>>1&2;d=d>
x3e;>b;e=d>>>1&1;e=c[73904+((J|K|L|b|e)+(d>>>e)<<2)>>2]|0;d=(c[e+4
x3e;>2]&-8)-o|0;b=e;while(1){a=c[b+16>>2]|0;if(!a){a=c[b+20>>2]|0;if(!a){j=e;break}}b=(c[a+4>
x3e;2]&-8)-o|0;L=b>>>0<d>>>0;d=L?b:d;b=a;e=L?a:e}g=c[18404]|0;if(j>>>0<
;g>>>0)ya();i=j+o|0;if(j>>>0>=i>>>0)ya();h=c[j+24>>2]|0;e=c[j+12>
;>2]|0;do if((e|0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if(!a){b=j+16|0;a=c[b>>2]|0;if(!a){n=0;break}}while(1){
e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;b=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;b=e}}if(b>>
;>0<g>>>0)ya();else{c[b>>2]=0;n=a;break}}else{f=c[j+8>>2]|0;if(f>>>0
<g>>>0)ya();a=f+12|0;if((c[a>>2]|0)!=(j|0))ya();b=e+8|0;if((c[b>>2]|0)==(j|0)){c[a>
x3e;2]=e;c[b>>2]=f;n=e;break}else ya()}while(0);do if(h|0){a=c[j+28>>2]|0;b=73904+(a<<2)|0;if((j|0
)==(c[b>>2]|0)){c[b>>2]=n;if(!n){c[18401]=c[18401]&~(1<<a);break}}else{if(h>>>
0<(c[18404]|0)>>>0)ya();a=h+16|0;if((c[a>>2]|0)==(j|0))c[a>>2]=n;else c[h+20>>
2]=n;if(!n)break}b=c[18404]|0;if(n>>>0<b>>>0)ya();c[n+24>>2]=h;a=c[j+16>>
2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else{c[n+16>>2]=a;c[a+24>>2]=n;break}while
(0);a=c[j+20>>2]|0;if(a|0)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[n+20>>2]=
a;c[a+24>>2]=n;break}}while(0);if(d>>>0<16){L=d+o|0;c[j+4>>2]=L|3;L=j+L+4|0;c[L>>
;2]=c[L>>2]|1}else{c[j+4>>2]=o|3;c[i+4>>2]=d|1;c[i+d>>2]=d;a=c[18402]|0;if(a|0){f=c[18405
]|0;b=a>>>3;e=73640+(b<<1<<2)|0;a=c[18400]|0;b=1<<b;if(a&b){a=e+8|0;b=c[a>
;>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{p=a;q=b}}else{c[18400]=a|b;p=e+8|0;q=e}c[p>
;>2]=f;c[q+12>>2]=f;c[f+8>>2]=q;c[f+12>>2]=e}c[18402]=d;c[18405]=i}L=j+8|0;return L|0}}}else
if(a>>>0<=4294967231){a=a+11|0;o=a&-8;j=c[18401]|0;if(j){d=0-o|0;a=a>>>8;if(a)if(o>
x3e;>0>16777215)i=31;else{q=(a+1048320|0)>>>16&8;E=a<<q;p=(E+520192|0)>>>
16&4;E=E<<p;i=(E+245760|0)>>>16&2;i=14-(p|q|i)+(E<<i>>>15)|0;i=o>
;>>(i+7|0)&1|i<<1}else i=0;b=c[73904+(i<<2)>>2]|0;a:do if(!b){a=0;b=0;E=86}else{f=d
;a=0;g=o<<((i|0)==31?0:25-(i>>>1)|0);h=b;b=0;while(1){e=c[h+4>>2]&-8;d=e-o|0;if(d>
x3e;>0<f>>>0)if((e|0)==(o|0)){a=h;b=h;E=90;break a}else b=h;else d=f;e=c[h+20>>2]|0;h=c[h+16+(
g>>>31<<2)>>2]|0;a=(e|0)==0|(e|0)==(h|0)?a:e;e=(h|0)==0;if(e){E=86;break}else{f=d;g=g<
x3c;(e&1^1)}}}while(0);if((E|0)==86){if((a|0)==0&(b|0)==0){a=2<<i;a=j&(a|0-a);if(!a)break;q=(a&0-a
)+-1|0;m=q>>>12&16;q=q>>>m;l=q>>>5&8;q=q>>>l;n=q>>
;>2&4;q=q>>>n;p=q>>>1&2;q=q>>>p;a=q>>>1&1;a=c[73904
+((l|m|n|p|a)+(q>>>a)<<2)>>2]|0}if(!a){i=d;j=b}else E=90}if((E|0)==90)while(1){E=0;q=(c[a+4
x3e;>2]&-8)-o|0;e=q>>>0<d>>>0;d=e?q:d;b=e?a:b;e=c[a+16>>2]|0;if(e|0){a=e;
E=90;continue}a=c[a+20>>2]|0;if(!a){i=d;j=b;break}else E=90}if((j|0)!=0?i>>>0<((c[18402]|0)-o|0)
x3e;>>0:0){f=c[18404]|0;if(j>>>0<f>>>0)ya();h=j+o|0;if(j>>>0>=h
>>>0)ya();g=c[j+24>>2]|0;d=c[j+12>>2]|0;do if((d|0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if
(!a){b=j+16|0;a=c[b>>2]|0;if(!a){s=0;break}}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;
e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<f>>>0)ya();else{c[b>>2]=0;
s=a;break}}else{e=c[j+8>>2]|0;if(e>>>0<f>>>0)ya();a=e+12|0;if((c[a>>2]|0)!=(
j|0))ya();b=d+8|0;if((c[b>>2]|0)==(j|0)){c[a>>2]=d;c[b>>2]=e;s=d;break}else ya()}while(0);do if(g|
0){a=c[j+28>>2]|0;b=73904+(a<<2)|0;if((j|0)==(c[b>>2]|0)){c[b>>2]=s;if(!s){c[18401]=c[18401
]&~(1<<a);break}}else{if(g>>>0<(c[18404]|0)>>>0)ya();a=g+16|0;if((c[a>>
;2]|0)==(j|0))c[a>>2]=s;else c[g+20>>2]=s;if(!s)break}b=c[18404]|0;if(s>>>0<b>>
;>0)ya();c[s+24>>2]=g;a=c[j+16>>2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else
{c[s+16>>2]=a;c[a+24>>2]=s;break}while(0);a=c[j+20>>2]|0;if(a|0)if(a>>>0<(c[18404
]|0)>>>0)ya();else{c[s+20>>2]=a;c[a+24>>2]=s;break}}while(0);do if(i>>>0>=
16){c[j+4>>2]=o|3;c[h+4>>2]=i|1;c[h+i>>2]=i;a=i>>>3;if(i>>>0<256
){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>
;>0<(c[18404]|0)>>>0)ya();else{u=a;v=b}}else{c[18400]=b|a;u=d+8|0;v=d}c[u>>2]=h;c[v+12>
x3e;2]=h;c[h+8>>2]=v;c[h+12>>2]=d;break}a=i>>>8;if(a)if(i>>>0>16777215)d=
31;else{K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|0)>>>16&4;L=L<<J;d
=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>>15)|0;d=i>>>(d+7|0)&1
|d<<1}else d=0;e=73904+(d<<2)|0;c[h+28>>2]=d;a=h+16|0;c[a+4>>2]=0;c[a>>2]=0;a=
c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[e>>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8
>>2]=h;break}f=i<<((d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>
x3e;2]&-8|0)==(i|0)){d=a;E=148;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d){E=145;break
}else{f=f<<1;a=d}}if((E|0)==145)if(b>>>0<(c[18404]|0)>>>0)ya();else{c[b>>
2]=h;c[h+24>>2]=a;c[h+12>>2]=h;c[h+8>>2]=h;break}else if((E|0)==148){a=d+8|0;b=c[a>>2]|0
;L=c[18404]|0;if(b>>>0>=L>>>0&d>>>0>=L>>>0){c[b+12>
;>2]=h;c[a>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;c[h+24>>2]=0;break}else ya()}}else{L=i+o|
0;c[j+4>>2]=L|3;L=j+L+4|0;c[L>>2]=c[L>>2]|1}while(0);L=j+8|0;return L|0}}}else o=-1;while(0);d=c[18402
]|0;if(d>>>0>=o>>>0){a=d-o|0;b=c[18405]|0;if(a>>>0>15){L=b+o|0;c[18405]=L
;c[18402]=a;c[L+4>>2]=a|1;c[L+a>>2]=a;c[b+4>>2]=o|3}else{c[18402]=0;c[18405]=0;c[b+4>>2]=
d|3;L=b+d+4|0;c[L>>2]=c[L>>2]|1}L=b+8|0;return L|0}a=c[18403]|0;if(a>>>0>o>>
x3e;0){J=a-o|0;c[18403]=J;L=c[18406]|0;K=L+o|0;c[18406]=K;c[K+4>>2]=J|1;c[L+4>>2]=o|3;L=L+8|0;return L|0}do
if(!(c[18518]|0)){a=Ia(30)|0;if(!(a+-1&a)){c[18520]=a;c[18519]=a;c[18521]=-1;c[18522]=-1;c[18523]=0;c[18511]=0;c[18518]=(va
(0)|0)&-16^1431655768;break}else ya()}while(0);h=o+48|0;g=c[18520]|0;i=o+47|0;f=g+i|0;g=0-g|0;j=f&g;if(j>>
x3e;0<=o>>>0){L=0;return L|0}a=c[18510]|0;if(a|0?(u=c[18508]|0,v=u+j|0,v>>>0<=u>>
;>0|v>>>0>a>>>0):0){L=0;return L|0}b:do if(!(c[18511]&4)){a=c[18406]|0;c:do if(a){d
=74048;while(1){b=c[d>>2]|0;if(b>>>0<=a>>>0?(r=d+4|0,(b+(c[r>>2]|0)|0)>
;>>0>a>>>0):0){e=d;d=r;break}d=c[d+8>>2]|0;if(!d){E=173;break c}}a=f-(c[18403]|0)&g
;if(a>>>0<2147483647){b=Ba(a|0)|0;if((b|0)==((c[e>>2]|0)+(c[d>>2]|0)|0)){if((b|0)!=(-1|0
)){h=b;f=a;E=193;break b}}else E=183}}else E=173;while(0);do if((E|0)==173?(t=Ba(0)|0,(t|0)!=(-1|0)):0){a=t;b=c[18519]|0;d=b+-1|
0;if(!(d&a))a=j;else a=j-a+(d+a&0-b)|0;b=c[18508]|0;d=b+a|0;if(a>>>0>o>>>0&a
x3e;>>0<2147483647){v=c[18510]|0;if(v|0?d>>>0<=b>>>0|d>>>0>
;v>>>0:0)break;b=Ba(a|0)|0;if((b|0)==(t|0)){h=t;f=a;E=193;break b}else E=183}}while(0);d:do if((E|0)==183){d=0-a|
0;do if(h>>>0>a>>>0&(a>>>0<2147483647&(b|0)!=(-1|0))?(w=c[18520
]|0,w=i-a+w&0-w,w>>>0<2147483647):0)if((Ba(w|0)|0)==(-1|0)){Ba(d|0)|0;break d}else{a=w+a|0;break}while(
0);if((b|0)!=(-1|0)){h=b;f=a;E=193;break b}}while(0);c[18511]=c[18511]|4;E=190}else E=190;while(0);if((((E|0)==190?j>>
x3e;0<2147483647:0)?(x=Ba(j|0)|0,y=Ba(0)|0,x>>>0<y>>>0&((x|0)!=(-1|0)&(y|0)!=(-
1|0))):0)?(z=y-x|0,z>>>0>(o+40|0)>>>0):0){h=x;f=z;E=193}if((E|0)==193){a=(c[18508]|0)+f|0;c[18508
]=a;if(a>>>0>(c[18509]|0)>>>0)c[18509]=a;i=c[18406]|0;do if(i){e=74048;do{a=c[e>>2]|
0;b=e+4|0;d=c[b>>2]|0;if((h|0)==(a+d|0)){A=a;B=b;C=d;D=e;E=203;break}e=c[e+8>>2]|0}while((e|0)!=0);if(((E|0)==
203?(c[D+12>>2]&8|0)==0:0)?i>>>0<h>>>0&i>>>0>=A>
x3e;>0:0){c[B>>2]=C+f;L=i+8|0;L=(L&7|0)==0?0:0-L&7;K=i+L|0;L=f-L+(c[18403]|0)|0;c[18406]=K;c[18403]=L;c
[K+4>>2]=L|1;c[K+L+4>>2]=40;c[18407]=c[18522];break}a=c[18404]|0;if(h>>>0<a>>
x3e;0){c[18404]=h;j=h}else j=a;d=h+f|0;a=74048;while(1){if((c[a>>2]|0)==(d|0)){b=a;E=211;break}a=c[a+8>>2]|0
;if(!a){b=74048;break}}if((E|0)==211)if(!(c[a+12>>2]&8)){c[b>>2]=h;l=a+4|0;c[l>>2]=(c[l>
x3e;2]|0)+f;l=h+8|0;l=h+((l&7|0)==0?0:0-l&7)|0;a=d+8|0;a=d+((a&7|0)==0?0:0-a&7)|0;k=l+o|0;g=a-l-o|0;c[l+4>
;>2]=o|3;do if((a|0)!=(i|0)){if((a|0)==(c[18405]|0)){L=(c[18402]|0)+g|0;c[18402]=L;c[18405]=k;c[k+4>>2]=L|1;c[k+L
>>2]=L;break}b=c[a+4>>2]|0;if((b&3|0)==1){i=b&-8;f=b>>>3;e:do if(b>>>
;0>=256){h=c[a+24>>2]|0;e=c[a+12>>2]|0;do if((e|0)==(a|0)){d=a+16|0;e=d+4|0;b=c[e>>2]|0;if(!b
){b=c[d>>2]|0;if(!b){J=0;break}}else d=e;while(1){e=b+20|0;f=c[e>>2]|0;if(f|0){b=f;d=e;continue}e=b+16|0;f=c
[e>>2]|0;if(!f)break;else{b=f;d=e}}if(d>>>0<j>>>0)ya();else{c[d>>2]=0;J=b
;break}}else{f=c[a+8>>2]|0;if(f>>>0<j>>>0)ya();b=f+12|0;if((c[b>>2]|0)!=(
a|0))ya();d=e+8|0;if((c[d>>2]|0)==(a|0)){c[b>>2]=e;c[d>>2]=f;J=e;break}else ya()}while(0);if(!h)break
;b=c[a+28>>2]|0;d=73904+(b<<2)|0;do if((a|0)!=(c[d>>2]|0)){if(h>>>0<(c[18404]|
0)>>>0)ya();b=h+16|0;if((c[b>>2]|0)==(a|0))c[b>>2]=J;else c[h+20>>2]=J;if(!J)break
e}else{c[d>>2]=J;if(J|0)break;c[18401]=c[18401]&~(1<<b);break e}while(0);e=c[18404]|0;if(J>>
x3e;0<e>>>0)ya();c[J+24>>2]=h;b=a+16|0;d=c[b>>2]|0;do if(d|0)if(d>>>0<
;e>>>0)ya();else{c[J+16>>2]=d;c[d+24>>2]=J;break}while(0);b=c[b+4>>2]|0;if(!b)break
;if(b>>>0<(c[18404]|0)>>>0)ya();else{c[J+20>>2]=b;c[b+24>>2]=J;break}}else
{d=c[a+8>>2]|0;e=c[a+12>>2]|0;b=73640+(f<<1<<2)|0;do if((d|0)!=(b|0)){if(d>>
x3e;0<j>>>0)ya();if((c[d+12>>2]|0)==(a|0))break;ya()}while(0);if((e|0)==(d|0)){c[18400]=c[18400]
x26;~(1<<f);break}do if((e|0)==(b|0))G=e+8|0;else{if(e>>>0<j>>>0)ya();b=e+8|0;if((c
[b>>2]|0)==(a|0)){G=b;break}ya()}while(0);c[d+12>>2]=e;c[G>>2]=d}while(0);a=a+i|0;g=i+g|0}a=a+4|0;
c[a>>2]=c[a>>2]&-2;c[k+4>>2]=g|1;c[k+g>>2]=g;a=g>>>3;if(g>>
;>0<256){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;do if(!(b&a)){c[18400]=b|a;K=d+8|0
;L=d}else{a=d+8|0;b=c[a>>2]|0;if(b>>>0>=(c[18404]|0)>>>0){K=a;L=b;break}ya()}while(
0);c[K>>2]=k;c[L+12>>2]=k;c[k+8>>2]=L;c[k+12>>2]=d;break}a=g>>>8;do if(!a
)d=0;else{if(g>>>0>16777215){d=31;break}K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192
|0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>
;>15)|0;d=g>>>(d+7|0)&1|d<<1}while(0);e=73904+(d<<2)|0;c[k+28>>2]=d;a=k+16
|0;c[a+4>>2]=0;c[a>>2]=0;a=c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[e>>2]=k;c[k+
24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}f=g<<((d|0)==31?0:25-(d>>>1)|0);a
=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0)==(g|0)){d=a;E=281;break}b=a+16+(f>>>31<<
;2)|0;d=c[b>>2]|0;if(!d){E=278;break}else{f=f<<1;a=d}}if((E|0)==278)if(b>>>0<(c[18404]|0
)>>>0)ya();else{c[b>>2]=k;c[k+24>>2]=a;c[k+12>>2]=k;c[k+8>>2]=k;break}else
if((E|0)==281){a=d+8|0;b=c[a>>2]|0;L=c[18404]|0;if(b>>>0>=L>>>0&d>>
x3e;0>=L>>>0){c[b+12>>2]=k;c[a>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;c[k+24
>>2]=0;break}else ya()}}else{L=(c[18403]|0)+g|0;c[18403]=L;c[18406]=k;c[k+4>>2]=L|1}while(0);L=l+8|0;return
L|0}else b=74048;while(1){a=c[b>>2]|0;if(a>>>0<=i>>>0?(F=a+(c[b+4>>2]|0)|
0,F>>>0>i>>>0):0){b=F;break}b=c[b+8>>2]|0}g=b+-47|0;d=g+8|0;d=g+((d&7|0)==0?0:
0-d&7)|0;g=i+16|0;d=d>>>0<g>>>0?i:d;a=d+8|0;e=h+8|0;e=(e&7|0)==0?0:0-e&7;L=h+e
|0;e=f+-40-e|0;c[18406]=L;c[18403]=e;c[L+4>>2]=e|1;c[L+e+4>>2]=40;c[18407]=c[18522];e=d+4|0;c[e>>2
]=27;c[a>>2]=c[18512];c[a+4>>2]=c[18513];c[a+8>>2]=c[18514];c[a+12>>2]=c[18515];c[18512]=
h;c[18513]=f;c[18515]=0;c[18514]=a;a=d+24|0;do{a=a+4|0;c[a>>2]=7}while((a+4|0)>>>0<b>>
x3e;0);if((d|0)!=(i|0)){h=d-i|0;c[e>>2]=c[e>>2]&-2;c[i+4>>2]=h|1;c[d>>2]=h;a=h>
;>>3;if(h>>>0<256){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;if(b&
;a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{H=a;I=b}}else{c[18400]=
b|a;H=d+8|0;I=d}c[H>>2]=i;c[I+12>>2]=i;c[i+8>>2]=I;c[i+12>>2]=d;break}a=h>>>
;8;if(a)if(h>>>0>16777215)d=31;else{K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|
0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>
;>15)|0;d=h>>>(d+7|0)&1|d<<1}else d=0;f=73904+(d<<2)|0;c[i+28>>2]=d;c[i+20
>>2]=0;c[g>>2]=0;a=c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[f>>2]=i;c[i+24>
x3e;2]=f;c[i+12>>2]=i;c[i+8>>2]=i;break}e=h<<((d|0)==31?0:25-(d>>>1)|0);a=c[f>
x3e;2]|0;while(1){if((c[a+4>>2]&-8|0)==(h|0)){d=a;E=307;break}b=a+16+(e>>>31<<2)|0;d=c[b
>>2]|0;if(!d){E=304;break}else{e=e<<1;a=d}}if((E|0)==304)if(b>>>0<(c[18404]|0)>>
;>0)ya();else{c[b>>2]=i;c[i+24>>2]=a;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((E|0)==
307){a=d+8|0;b=c[a>>2]|0;L=c[18404]|0;if(b>>>0>=L>>>0&d>>>0>
;=L>>>0){c[b+12>>2]=i;c[a>>2]=i;c[i+8>>2]=b;c[i+12>>2]=d;c[i+24>>
;2]=0;break}else ya()}}}else{L=c[18404]|0;if((L|0)==0|h>>>0<L>>>0)c[18404]=h;c[18512]=h;c[18513
]=f;c[18515]=0;c[18409]=c[18518];c[18408]=-1;a=0;do{L=73640+(a<<1<<2)|0;c[L+12>>2]=L;c[L+8>
x3e;2]=L;a=a+1|0}while((a|0)!=32);L=h+8|0;L=(L&7|0)==0?0:0-L&7;K=h+L|0;L=f+-40-L|0;c[18406]=K;c[18403]=L;c[K+4>
x3e;2]=L|1;c[K+L+4>>2]=40;c[18407]=c[18522]}while(0);a=c[18403]|0;if(a>>>0>o>>>0){J
=a-o|0;c[18403]=J;L=c[18406]|0;K=L+o|0;c[18406]=K;c[K+4>>2]=J|1;c[L+4>>2]=o|3;L=L+8|0;return L|0}}c[(Ar()|0)
x3e;>2]=12;L=0;return L|0}function Gs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;if(!a)return
;d=a+-8|0;h=c[18404]|0;if(d>>>0<h>>>0)ya();a=c[a+-4>>2]|0;b=a&3;if((b|0)==1)ya
();e=a&-8;m=d+e|0;do if(!(a&1)){a=c[d>>2]|0;if(!b)return;k=d+(0-a)|0;j=a+e|0;if(k>>>0<h
x3e;>>0)ya();if((k|0)==(c[18405]|0)){a=m+4|0;b=c[a>>2]|0;if((b&3|0)!=3){q=k;g=j;break}c[18402]=j;c[a>
;>2]=b&-2;c[k+4>>2]=j|1;c[k+j>>2]=j;return}e=a>>>3;if(a>>>0<256
){b=c[k+8>>2]|0;d=c[k+12>>2]|0;a=73640+(e<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>
;0<h>>>0)ya();if((c[b+12>>2]|0)!=(k|0))ya()}if((d|0)==(b|0)){c[18400]=c[18400]&~(1<<
;e);q=k;g=j;break}if((d|0)!=(a|0)){if(d>>>0<h>>>0)ya();a=d+8|0;if((c[a>>2]|0)==(k|0
))f=a;else ya()}else f=d+8|0;c[b+12>>2]=d;c[f>>2]=b;q=k;g=j;break}f=c[k+24>>2]|0;d=c[k+12>>
;2]|0;do if((d|0)==(k|0)){b=k+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){i=0;break}}else b=d;while(1
){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>
;>0<h>>>0)ya();else{c[b>>2]=0;i=a;break}}else{e=c[k+8>>2]|0;if(e>>>0
<h>>>0)ya();a=e+12|0;if((c[a>>2]|0)!=(k|0))ya();b=d+8|0;if((c[b>>2]|0)==(k|0)){c[a>
x3e;2]=d;c[b>>2]=e;i=d;break}else ya()}while(0);if(f){a=c[k+28>>2]|0;b=73904+(a<<2)|0;if((k|0)==(c
[b>>2]|0)){c[b>>2]=i;if(!i){c[18401]=c[18401]&~(1<<a);q=k;g=j;break}}else{if(f>>>
;0<(c[18404]|0)>>>0)ya();a=f+16|0;if((c[a>>2]|0)==(k|0))c[a>>2]=i;else c[f+20>>
;2]=i;if(!i){q=k;g=j;break}}d=c[18404]|0;if(i>>>0<d>>>0)ya();c[i+24>>2]=f;a=k+16|0;
b=c[a>>2]|0;do if(b|0)if(b>>>0<d>>>0)ya();else{c[i+16>>2]=b;c[b+24>
x3e;2]=i;break}while(0);a=c[a+4>>2]|0;if(a)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[i+
20>>2]=a;c[a+24>>2]=i;q=k;g=j;break}else{q=k;g=j}}else{q=k;g=j}}else{q=d;g=e}while(0);if(q>>>
0>=m>>>0)ya();a=m+4|0;b=c[a>>2]|0;if(!(b&1))ya();if(!(b&2)){if((m|0)==(c[18406]|0)){p=(c
[18403]|0)+g|0;c[18403]=p;c[18406]=q;c[q+4>>2]=p|1;if((q|0)!=(c[18405]|0))return;c[18405]=0;c[18402]=0;return}if((m|0)==(
c[18405]|0)){p=(c[18402]|0)+g|0;c[18402]=p;c[18405]=q;c[q+4>>2]=p|1;c[q+p>>2]=p;return}g=(b&-8)+g|0;e=b
>>>3;do if(b>>>0>=256){f=c[m+24>>2]|0;a=c[m+12>>2]|0;do if((a|0)==(m|0)){
b=m+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){n=0;break}}else b=d;while(1){d=a+20|0;e=c[d>>
;2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<(c[18404]|0
)>>>0)ya();else{c[b>>2]=0;n=a;break}}else{b=c[m+8>>2]|0;if(b>>>0<(c[18404
]|0)>>>0)ya();d=b+12|0;if((c[d>>2]|0)!=(m|0))ya();e=a+8|0;if((c[e>>2]|0)==(m|0)){c[d>>
;2]=a;c[e>>2]=b;n=a;break}else ya()}while(0);if(f|0){a=c[m+28>>2]|0;b=73904+(a<<2)|0;if((m|0)==(c[
b>>2]|0)){c[b>>2]=n;if(!n){c[18401]=c[18401]&~(1<<a);break}}else{if(f>>>0<
;(c[18404]|0)>>>0)ya();a=f+16|0;if((c[a>>2]|0)==(m|0))c[a>>2]=n;else c[f+20>>2]=n;if
(!n)break}d=c[18404]|0;if(n>>>0<d>>>0)ya();c[n+24>>2]=f;a=m+16|0;b=c[a>>2
]|0;do if(b|0)if(b>>>0<d>>>0)ya();else{c[n+16>>2]=b;c[b+24>>2]=n;break}while
(0);a=c[a+4>>2]|0;if(a|0)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[n+20>>2]=a
;c[a+24>>2]=n;break}}}else{b=c[m+8>>2]|0;d=c[m+12>>2]|0;a=73640+(e<<1<<2)|0;if
((b|0)!=(a|0)){if(b>>>0<(c[18404]|0)>>>0)ya();if((c[b+12>>2]|0)!=(m|0))ya()}if((d|0
)==(b|0)){c[18400]=c[18400]&~(1<<e);break}if((d|0)!=(a|0)){if(d>>>0<(c[18404]|0)>>
x3e;0)ya();a=d+8|0;if((c[a>>2]|0)==(m|0))l=a;else ya()}else l=d+8|0;c[b+12>>2]=d;c[l>>2]=b}while(0
);c[q+4>>2]=g|1;c[q+g>>2]=g;if((q|0)==(c[18405]|0)){c[18402]=g;return}}else{c[a>>2]=b&-2;c[q+
4>>2]=g|1;c[q+g>>2]=g}a=g>>>3;if(g>>>0<256){d=73640+(a<<1<
x3c;2)|0;b=c[18400]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>
;>>0)ya();else{o=a;p=b}}else{c[18400]=b|a;o=d+8|0;p=d}c[o>>2]=q;c[p+12>>2]=q;c[q+8>>2]=p
;c[q+12>>2]=d;return}a=g>>>8;if(a)if(g>>>0>16777215)d=31;else{o=(a+1048320|0)>
x3e;>16&8;p=a<<o;n=(p+520192|0)>>>16&4;p=p<<n;d=(p+245760|0)>>>
16&2;d=14-(n|o|d)+(p<<d>>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=73904
+(d<<2)|0;c[q+28>>2]=d;c[q+20>>2]=0;c[q+16>>2]=0;a=c[18401]|0;b=1<<d;do if(a
x26;b){f=g<<((d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0
)==(g|0)){d=a;e=130;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d){e=127;break}else{f=f<
x3c;1;a=d}}if((e|0)==127)if(b>>>0<(c[18404]|0)>>>0)ya();else{c[b>>2]=q;c[q+24>
x3e;2]=a;c[q+12>>2]=q;c[q+8>>2]=q;break}else if((e|0)==130){a=d+8|0;b=c[a>>2]|0;p=c[18404]|0;if(b
x3e;>>0>=p>>>0&d>>>0>=p>>>0){c[b+12>>2]=q;c[a>
;>2]=q;c[q+8>>2]=b;c[q+12>>2]=d;c[q+24>>2]=0;break}else ya()}}else{c[18401]=a|b;c[e>>
;2]=q;c[q+24>>2]=e;c[q+12>>2]=q;c[q+8>>2]=q}while(0);q=(c[18408]|0)+-1|0;c[18408]=q;if(!q)a=74056;
else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[18408]=-1;return}function Hs(a,b){a=a|0;b=b|0;var d=0,e=0;
if(!a){a=Fs(b)|0;return a|0}if(b>>>0>4294967231){c[(Ar()|0)>>2]=12;a=0;return a|0}d=Is(a+-8|0,b>
;>>0<11?16:b+11&-8)|0;if(d|0){a=d+8|0;return a|0}d=Fs(b)|0;if(!d){a=0;return a|0}e=c[a+-4>>2]|0;e=(
e&-8)-((e&3|0)==0?8:4)|0;Ss(d|0,a|0,(e>>>0<b>>>0?e:b)|0)|0;Gs(a);a=d;return a|0}
function Rh(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;ca=i;i=i+192
|0;Y=ca+172|0;l=ca+168|0;I=ca+164|0;H=ca+160|0;m=ca+156|0;n=ca+152|0;p=ca+148|0;aa=ca+144|0;u=ca+140|0;t=ca+136|0;s=ca+132|0;U=ca
+177|0;V=ca+176|0;q=ca+128|0;r=ca+124|0;o=ca+120|0;J=ca+116|0;M=ca+112|0;S=ca+108|0;P=ca+104|0;z=ca+100|0;v=ca+96|0;w=ca+92|0;y=
ca+88|0;x=ca+84|0;D=ca+80|0;F=ca+76|0;A=ca+72|0;B=ca+68|0;G=ca+64|0;E=ca+60|0;C=ca+56|0;W=ca+52|0;Q=ca+48|0;R=ca+44|0;N=ca+40|0;
O=ca+36|0;K=ca+32|0;X=ca+28|0;_=ca+16|0;L=ca+12|0;T=ca+8|0;$=ca+4|0;Z=ca;c[l>>2]=f;c[I>>2]=g;c[H>>
2]=h;c[m>>2]=j;c[n>>2]=k;c[p>>2]=c[I>>2];a[U>>0]=1;a[V>>0]=0;c[q>
;>2]=c[(c[(c[I>>2]|0)+96>>2]|0)+4>>2];c[u>>2]=Ud(c[q>>2]|0,11340)|0;do if
(c[u>>2]|0){c[r>>2]=c[(c[p>>2]|0)+96>>2];c[o>>2]=Vd(c[r>>2]|0,71003)|
0;c[t>>2]=c[o>>2];c[s>>2]=Ud(c[q>>2]|0,11524)|0;f=Kc(c[l>>2]|0,0)|0;c[aa>
x3e;2]=f;if(!f){c[aa>>2]=Za[c[(c[u>>2]|0)+4>>2]&31](c[l>>2]|0,c[p>>2]|0,c
[H>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;if(!(c[aa>>2]|0)){if((c[(c[p>>2]|0)+148>
x3e;2]|0)!=1330926671){ba=112;break}if((c[H>>2]|0)<0){c[Y>>2]=0;ba=c[Y>>2]|0;i=ca;return ba|0
}if((c[H>>2]|0)>0){c[aa>>2]=6;break}a[V>>0]=1;c[aa>>2]=Wa[c[(c[p>>2]|0)+508
>>2]&31](c[p>>2]|0,1751474532,c[l>>2]|0,0)|0;if(c[aa>>2]|0){c[aa>>2]=Ya[c
[(c[u>>2]|0)+40>>2]&127](c[p>>2]|0,c[l>>2]|0)|0;if(c[aa>>2]|0)break}else{
a[U>>0]=0;c[aa>>2]=Za[c[(c[u>>2]|0)+8>>2]&31](c[l>>2]|0,c[p>>2]|
0,0,c[m>>2]|0,c[n>>2]|0)|0;if(c[aa>>2]|0)break}c[aa>>2]=Wa[c[(c[p>>2]|0)+508
x3e;>2]&31](c[p>>2]|0,1128678944,c[l>>2]|0,0)|0;if(c[aa>>2]|0)break}else{f=Kc(c[l>
x3e;2]|0,0)|0;c[aa>>2]=f;if(f|0)break;c[aa>>2]=0}c[S>>2]=c[(c[I>>2]|0)+100>>2];
c[J>>2]=bc(c[S>>2]|0,2072,aa)|0;if((c[aa>>2]|0)==0?(c[(c[p>>2]|0)+692>>2]=c[J
x3e;>2],c[aa>>2]=Sh(c[q>>2]|0,c[l>>2]|0,c[H>>2]|0,c[J>>2]|0,a[U>>
;0]|0)|0,(c[aa>>2]|0)==0):0){c[(c[J>>2]|0)+2052>>2]=c[s>>2];c[(c[J>>2]|0)+2056
>>2]=c[t>>2];c[(c[I>>2]|0)+4>>2]=c[H>>2];c[(c[I>>2]|0)+16>>
;2]=c[(c[J>>2]|0)+12>>2];c[M>>2]=(c[J>>2]|0)+1324;if(c[t>>2]|0?1:(c[(c[M>
x3e;2]|0)+128>>2]|0)!=65535){if(!(c[(c[M>>2]|0)+64>>2]|0)){if(d[U>>0]|0)l=1e3;else l=e[(
c[p>>2]|0)+68>>1]|0;c[(c[M>>2]|0)+64>>2]=l}c[v>>2]=(c[M>>2]|0)+48;c[
w>>2]=(c[M>>2]|0)+68;c[y>>2]=(c[M>>2]|0)+64;f=c[(c[v>>2]|0)+12>>2]|0
;c[x>>2]=(c[(c[v>>2]|0)+12>>2]|0)<0?0-f|0:f;if((c[x>>2]|0)!=65536){f=Vb(c[c[y>
x3e;2]>>2]|0,c[x>>2]|0)|0;c[c[y>>2]>>2]=f;y=Vb(c[c[v>>2]>>2]|0,c[x
x3e;>2]|0)|0;c[c[v>>2]>>2]=y;y=Vb(c[(c[v>>2]|0)+8>>2]|0,c[x>>2]|0)|0;c[(c
[v>>2]|0)+8>>2]=y;y=Vb(c[(c[v>>2]|0)+4>>2]|0,c[x>>2]|0)|0;c[(c[v>>2]|
0)+4>>2]=y;y=Vb(c[(c[v>>2]|0)+12>>2]|0,c[x>>2]|0)|0;c[(c[v>>2]|0)+12>>
;2]=y;y=Vb(c[c[w>>2]>>2]|0,c[x>>2]|0)|0;c[c[w>>2]>>2]=y;y=Vb(c[(c[w>>
;2]|0)+4>>2]|0,c[x>>2]|0)|0;c[(c[w>>2]|0)+4>>2]=y}y=c[w>>2]|0;c[y>>2
]=c[y>>2]>>16;y=(c[w>>2]|0)+4|0;c[y>>2]=c[y>>2]>>16;c[z>>2
]=c[(c[J>>2]|0)+1892>>2];while(1){if((c[z>>2]|0)>>>0<=0)break;c[D>>2
]=c[(c[J>>2]|0)+1896+((c[z>>2]|0)-1<<2)>>2];c[F>>2]=(c[J>>2]|0)+1324
;if(c[(c[D>>2]|0)+64>>2]|0){if((c[(c[F>>2]|0)+64>>2]|0)>>>0>1?(c[(c[
D>>2]|0)+64>>2]|0)>>>0>1:0){if((c[(c[F>>2]|0)+64>>2]|0)>>
x3e;0<(c[(c[D>>2]|0)+64>>2]|0)>>>0)l=c[(c[F>>2]|0)+64>>2]|0;else l=c
[(c[D>>2]|0)+64>>2]|0;c[C>>2]=l}else c[C>>2]=1;Xb((c[F>>2]|0)+48|0,(c[D>
x3e;2]|0)+48|0,c[C>>2]|0);Yb((c[D>>2]|0)+68|0,(c[F>>2]|0)+48|0,c[C>>2]|0);y=xb(c[(c[D>
;>2]|0)+64>>2]|0,c[(c[F>>2]|0)+64>>2]|0,c[C>>2]|0)|0;c[(c[D>>2]|0)+64>
;>2]=y}else{y=(c[D>>2]|0)+48|0;x=(c[F>>2]|0)+48|0;c[y>>2]=c[x>>2];c[y+4>>
2]=c[x+4>>2];c[y+8>>2]=c[x+8>>2];c[y+12>>2]=c[x+12>>2];y=(c[D>>2]|0)+
68|0;x=(c[F>>2]|0)+68|0;c[y>>2]=c[x>>2];c[y+4>>2]=c[x+4>>2];c[(c[D>>
2]|0)+64>>2]=c[(c[F>>2]|0)+64>>2]}c[A>>2]=(c[D>>2]|0)+48;c[B>>2]=(c[
D>>2]|0)+68;c[G>>2]=(c[D>>2]|0)+64;y=c[(c[A>>2]|0)+12>>2]|0;c[E>>2]=(
c[(c[A>>2]|0)+12>>2]|0)<0?0-y|0:y;if((c[E>>2]|0)!=65536){y=Vb(c[c[G>>2]>>
2]|0,c[E>>2]|0)|0;c[c[G>>2]>>2]=y;if((c[c[G>>2]>>2]|0)>>>0>
;1e5)c[c[G>>2]>>2]=(((c[c[G>>2]>>2]|0)+500|0)>>>0)/1e3|0;y=Vb(c[c[A>
x3e;2]>>2]|0,c[E>>2]|0)|0;c[c[A>>2]>>2]=y;y=Vb(c[(c[A>>2]|0)+8>>2]|0
,c[E>>2]|0)|0;c[(c[A>>2]|0)+8>>2]=y;y=Vb(c[(c[A>>2]|0)+4>>2]|0,c[E>>
2]|0)|0;c[(c[A>>2]|0)+4>>2]=y;y=Vb(c[(c[A>>2]|0)+12>>2]|0,c[E>>2]|0)|0;c[(c[A
x3e;>2]|0)+12>>2]=y;y=Vb(c[c[B>>2]>>2]|0,c[E>>2]|0)|0;c[c[B>>2]>>
;2]=y;y=Vb(c[(c[B>>2]|0)+4>>2]|0,c[E>>2]|0)|0;c[(c[B>>2]|0)+4>>2]=y}y=c[B>
;>2]|0;c[y>>2]=c[y>>2]>>16;y=(c[B>>2]|0)+4|0;c[y>>2]=c[y>>2]>
;>16;c[z>>2]=(c[z>>2]|0)+-1}if(a[U>>0]|0){c[W>>2]=0;c[c[I>>2]>>
2]=c[(c[J>>2]|0)+8>>2];l=c[J>>2]|0;if((c[(c[M>>2]|0)+128>>2]|0)!=65535)c[(c[I
x3e;>2]|0)+16>>2]=(c[l+1152+16>>2]|0)+1;else c[(c[I>>2]|0)+16>>2]=c[l+1176+8>
x3e;2];c[(c[I>>2]|0)+52>>2]=c[(c[M>>2]|0)+80>>2]>>16;c[(c[I>>2]|0)+52
+4>>2]=c[(c[M>>2]|0)+80+4>>2]>>16;c[(c[I>>2]|0)+52+8>>2]=(c[(c[M>
;>2]|0)+80+8>>2]|0)+65535>>16;c[(c[I>>2]|0)+52+12>>2]=(c[(c[M>>2]|0)+80+12
>>2]|0)+65535>>16;b[(c[I>>2]|0)+68>>1]=c[(c[M>>2]|0)+64>>2];b[(c[I
x3e;>2]|0)+70>>1]=c[(c[I>>2]|0)+52+12>>2];b[(c[I>>2]|0)+72>>1]=c[(c[I>
;>2]|0)+52+4>>2];b[(c[I>>2]|0)+74>>1]=((e[(c[I>>2]|0)+68>>1]|0)*12|0)/10|
0;if((b[(c[I>>2]|0)+74>>1]|0)<((b[(c[I>>2]|0)+70>>1]|0)-(b[(c[I>>2]|0)+72
>>1]|0)|0))b[(c[I>>2]|0)+74>>1]=(b[(c[I>>2]|0)+70>>1]|0)-(b[(c[I>>2]|
0)+72>>1]|0);b[(c[I>>2]|0)+80>>1]=c[(c[M>>2]|0)+32>>2]>>16;b[(c[I>
;>2]|0)+82>>1]=c[(c[M>>2]|0)+36>>2]>>16;l=qi(c[J>>2]|0,c[H>>2]|
0)|0;c[(c[I>>2]|0)+20>>2]=l;l=c[J>>2]|0;m=c[M>>2]|0;a:do if(c[(c[I>>2]|0)+20
x3e;>2]|0){c[Q>>2]=yh(l,c[m+12>>2]|0)|0;c[R>>2]=c[Q>>2];c[N>>2]=c[(c[I>
;>2]|0)+20>>2];c[O>>2]=0;ri(c[(c[I>>2]|0)+20>>2]|0);if(c[(c[M>>2]|0)+16
x3e;>2]|0?(c[O>>2]=yh(c[J>>2]|0,c[(c[M>>2]|0)+16>>2]|0)|0,c[O>>2]|0):0)c[
N>>2]=c[O>>2];if((c[Q>>2]|0)!=0&(c[N>>2]|0)!=0){b:while(1){if(!(a[c[R>>2]
x3e;>0]|0))break a;if((a[c[R>>2]>>0]|0)==(a[c[N>>2]>>0]|0)){c[N>>2]=(c[N
x3e;>2]|0)+1;c[R>>2]=(c[R>>2]|0)+1;continue}do if((a[c[R>>2]>>0]|0)!=32){if((a[c[R
x3e;>2]>>0]|0)==45)break;if((a[c[N>>2]>>0]|0)!=32?(a[c[N>>2]>>0]|0)!=45:0
)break b;c[N>>2]=(c[N>>2]|0)+1;continue b}while(0);c[R>>2]=(c[R>>2]|0)+1}if((a[c[N>
x3e;2]>>0]|0)==0?a[c[R>>2]>>0]|0:0)c[W>>2]=si(c[S>>2]|0,c[R>>2]|0)|0
}}else{c[K>>2]=yh(l,c[m+168>>2]|0)|0;if(c[K>>2]|0){R=si(c[S>>2]|0,c[K>>2]|0)|0
;c[(c[I>>2]|0)+20>>2]=R}}while(0);if(c[W>>2]|0)c[(c[I>>2]|0)+24>>2]=c[W>
x3e;2];else{W=si(c[S>>2]|0,11262)|0;c[(c[I>>2]|0)+24>>2]=W}c[P>>2]=2065;if(a[V>>
;0]|0)c[P>>2]=c[P>>2]|8;if(a[(c[M>>2]|0)+24>>0]|0)c[P>>2]=c[P>>2]|4;
c[(c[I>>2]|0)+8>>2]=c[P>>2];c[P>>2]=0;if(c[(c[M>>2]|0)+28>>2]|0)c[P
x3e;>2]=c[P>>2]|1;c[X>>2]=yh(c[J>>2]|0,c[(c[M>>2]|0)+20>>2]|0)|0;do if(c[
X>>2]|0){if(Kr(c[X>>2]|0,11270)|0?Kr(c[X>>2]|0,11275)|0:0)break;c[P>>2]=c[P>>2
]|2}while(0);do if(!(c[P>>2]&2)){if(!(c[(c[I>>2]|0)+24>>2]|0))break;if(Lr(c[(c[I>>2
]|0)+24>>2]|0,11270,4)|0?Lr(c[(c[I>>2]|0)+24>>2]|0,11275,5)|0:0)break;c[P>>2]=c[P>
x3e;2]|2}while(0);c[(c[I>>2]|0)+12>>2]=c[P>>2]}if((c[(c[M>>2]|0)+128>>2]|0)==65535
){X=(c[I>>2]|0)+8|0;c[X>>2]=c[X>>2]|512}if((c[(c[M>>2]|0)+128>>2]|0)!=65535?d[
U>>0]|0:0){X=(c[I>>2]|0)+8|0;c[X>>2]=c[X>>2]|4096}c[$>>2]=(c[J>>2]|0
)+116;c[T>>2]=0;while(1){if((c[T>>2]|0)>>>0>=(c[(c[I>>2]|0)+36>>2]|0
)>>>0){ba=96;break}c[L>>2]=c[(c[(c[I>>2]|0)+40>>2]|0)+(c[T>>2]<<
;2)>>2];if((e[(c[L>>2]|0)+8>>1]|0)==3?(e[(c[L>>2]|0)+10>>1]|0)==1:0)break;if(!(
e[(c[L>>2]|0)+8>>1]|0))break;c[T>>2]=(c[T>>2]|0)+1}if((ba|0)==96){if(d[U>>0]|0
?(c[(c[J>>2]|0)+1324+128>>2]|0)!=65535:0)break;if(((c[T>>2]|0)+1|0)>>>0>15)break
;c[_>>2]=c[I>>2];b[_+8>>1]=3;b[_+10>>1]=1;c[_+4>>2]=1970170211;c[T>>
2]=c[(c[I>>2]|0)+36>>2];c[aa>>2]=Ld(868,0,_,0)|0;if((c[aa>>2]|0)!=0&163!=(c[aa>
;>2]|0))break;c[aa>>2]=0;if((c[(c[I>>2]|0)+92>>2]|0)==0?(c[T>>2]|0)!=(c[(c[I>
x3e;2]|0)+36>>2]|0):0)c[(c[I>>2]|0)+92>>2]=c[(c[(c[I>>2]|0)+40>>2]|0)+(c[T>
;>2]<<2)>>2]}if((c[T>>2]|0)>>>0<=15?(c[(c[$>>2]|0)+8>>
;2]|0)>>>0>0:0){c[_>>2]=c[I>>2];b[_+8>>1]=7;do if(c[(c[$>>2]|0)+4>
;>2]|0){l=_+10|0;if((c[(c[$>>2]|0)+4>>2]|0)==1){b[l>>1]=1;c[_+4>>2]=1094992453;c[Z
x3e;>2]=828;break}else{b[l>>1]=2;c[_+4>>2]=1094992451;c[Z>>2]=828;break}}else{b[_+10>>
;1]=0;c[_+4>>2]=1094995778;c[Z>>2]=828}while(0);c[aa>>2]=Ld(c[Z>>2]|0,0,_,0)|0}}else ba=
112}}}else ba=112;while(0);if((ba|0)==112)c[aa>>2]=2;c[Y>>2]=c[aa>>2];ba=c[Y>>2]|0;i=ca;
return ba|0}function Sh(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
;x=i;i=i+112|0;j=x+100|0;p=x+96|0;q=x+92|0;r=x+88|0;k=x+105|0;u=x+84|0;n=x+80|0;s=x+76|0;t=x+72|0;w=x+40|0;l=x+8|0;o=x+4|0;m=x;v
=x+104|0;c[j>>2]=b;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;a[k>>0]=h;c[n>>2]=c
[(c[p>>2]|0)+28>>2];Ns(c[r>>2]|0,0,2072)|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>
x3e;2]=0;c[w+12>>2]=0;c[w+16>>2]=0;c[w+20>>2]=0;c[w+24>>2]=0;c[w+28>>2]=0;c[c[
r>>2]>>2]=c[p>>2];c[(c[r>>2]|0)+4>>2]=c[n>>2];c[t>>2]=(c[r
>>2]|0)+1324;c[s>>2]=Mc(c[p>>2]|0)|0;e=le(c[p>>2]|0,5532,c[r>>2]|0)|0;c[u>
;>2]=e;a:do if(!e){if(((d[(c[r>>2]|0)+16>>0]|0|0)==1?(d[(c[r>>2]|0)+18>>0]|0|0)>
;=4:0)?(d[(c[r>>2]|0)+19>>0]|0|0)<=4:0){e=Qc(c[p>>2]|0,(d[(c[r>>2]|0)+18>>
;0]|0)-4|0)|0;c[u>>2]=e;if(e|0)break;e=Th((c[r>>2]|0)+20|0,c[p>>2]|0,0)|0;c[u>>2]=e;if(e
|0)break;e=Th((c[r>>2]|0)+1208|0,c[p>>2]|0,0)|0;c[u>>2]=e;if(e|0)break;e=Th(w,c[p>>2]|0,
1)|0;c[u>>2]=e;if(e|0)break;e=Th((c[r>>2]|0)+84|0,c[p>>2]|0,1)|0;c[u>>2]=e;if(e|0)break;
e=Vh(w,(c[r>>2]|0)+1316|0,(c[r>>2]|0)+1320|0)|0;c[u>>2]=e;if(e|0)break;c[(c[r>>2]|0)+1312
>>2]=c[w+8>>2];c[(c[r>>2]|0)+8>>2]=c[(c[r>>2]|0)+20+8>>2];if((c[q>
;>2]|0)>=(c[(c[r>>2]|0)+8>>2]|0))c[u>>2]=6;if((c[q>>2]|0)<0)break;c[u>
;>2]=Xh((c[r>>2]|0)+1324|0,(c[r>>2]|0)+1208|0,c[q>>2]|0,c[p>>2]|0,c[s>>2]|
0,c[j>>2]|0)|0;if(c[u>>2]|0)break;e=Kc(c[p>>2]|0,(c[s>>2]|0)+(c[(c[t>>2]|0)+108
>>2]|0)|0)|0;c[u>>2]=e;if(e|0)break;c[u>>2]=Th((c[r>>2]|0)+1176|0,c[p>>2]|0,0)|
0;if(c[u>>2]|0)break;if((c[(c[t>>2]|0)+128>>2]|0)!=65535){e=Kc(c[p>>2]|0,(c[s>>
;2]|0)+(c[(c[t>>2]|0)+160>>2]|0)|0)|0;c[u>>2]=e;if(e|0)break;c[u>>2]=Th(l,c[p>>
;2]|0,0)|0;if(c[u>>2]|0)break;b:do if((c[l+8>>2]|0)>>>0<=32){c[(c[r>>2]|0)+1892
>>2]=c[l+8>>2];c[o>>2]=hc(c[n>>2]|0,568,0,c[l+8>>2]|0,0,u)|0;if(c[u>>
;2]|0)break;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[l+8>>2]|0)>>
x3e;0)break;c[(c[r>>2]|0)+1896+(c[m>>2]<<2)>>2]=(c[o>>2]|0)+((c[m>>2
]|0)*568|0);c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0
x3e;=(c[l+8>>2]|0)>>>0)break;c[o>>2]=c[(c[r>>2]|0)+1896+(c[m>>2]<<
;2)>>2];c[u>>2]=Xh(c[o>>2]|0,l,c[m>>2]|0,c[p>>2]|0,c[s>>2]|0,c[j>
;>2]|0)|0;if(c[u>>2]|0)break b;c[m>>2]=(c[m>>2]|0)+1}c[u>>2]=ki((c[r>>2]|
0)+2024|0,c[(c[r>>2]|0)+1176+8>>2]|0,c[p>>2]|0,(c[s>>2]|0)+(c[(c[t>>2]|0)+164
x3e;>2]|0)|0)|0}while(0);li(l);if(c[u>>2]|0)break}else c[(c[r>>2]|0)+1892>>2]=0;if(!(c[(c[t
x3e;>2]|0)+108>>2]|0)){c[u>>2]=2;break}c[(c[r>>2]|0)+12>>2]=c[(c[r>>2]|0)+
1176+8>>2];c[u>>2]=Vh((c[r>>2]|0)+84|0,(c[r>>2]|0)+1308|0,0)|0;if(c[u>>2]|0)break
;do if((c[(c[r>>2]|0)+12>>2]|0)>>>0>0){if((c[(c[t>>2]|0)+128>>2]|0)!=
65535)j=(d[k>>0]|0|0)!=0;else j=0;a[v>>0]=j&1;c[u>>2]=mi((c[r>>2]|0)+1152|0,c[(c[r
x3e;>2]|0)+12>>2]|0,c[p>>2]|0,c[s>>2]|0,c[(c[t>>2]|0)+100>>2]|0,a[v>
x3e;0]|0)|0;if(c[u>>2]|0)break a;if((c[(c[t>>2]|0)+128>>2]|0)!=65535)break;c[u>>2]=oi((c
[r>>2]|0)+116|0,(c[r>>2]|0)+1152|0,c[(c[r>>2]|0)+12>>2]|0,c[p>>2]|0,c[s>
x3e;2]|0,c[(c[t>>2]|0)+104>>2]|0)|0;if(c[u>>2]|0)break a}while(0);v=qi(c[r>>2]|0,c[q>
;>2]|0)|0;c[(c[r>>2]|0)+1304>>2]=v;break}c[u>>2]=2}while(0);li(w);i=x;return c[u>>2
]|0}function Th(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;r=i;i=i+32|0;n=r+16|0;j=r+12|0;o=r+23|0;p=r+8|0
;q=r+4|0;k=r+20|0;l=r+22|0;m=r;c[n>>2]=f;c[j>>2]=g;a[o>>0]=h;c[q>>2]=c[(c[j>>2
]|0)+28>>2];g=c[n>>2]|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=
0;c[g+16>>2]=0;c[g+20>>2]=0;c[g+24>>2]=0;c[g+28>>2]=0;c[c[n>>2]>>2]=
c[j>>2];g=Mc(c[j>>2]|0)|0;c[(c[n>>2]|0)+4>>2]=g;b[k>>1]=Pc(c[j>>2]|0
,p)|0;do if(((c[p>>2]|0)==0?(e[k>>1]|0)>0:0)?(a[l>>0]=ke(c[j>>2]|0,p)|0,(c[p>
x3e;2]|0)==0):0){if((d[l>>0]|0)>=1?(d[l>>0]|0)<=4:0){c[(c[n>>2]|0)+8>>2]=e[k
x3e;>1];a[(c[n>>2]|0)+12>>0]=a[l>>0]|0;c[m>>2]=_((e[k>>1]|0)+1|0,d[l>
;>0]|0)|0;c[(c[n>>2]|0)+16>>2]=(c[(c[n>>2]|0)+4>>2]|0)+3+(c[m>>2]|0);g=Qc
(c[j>>2]|0,(c[m>>2]|0)-(d[l>>0]|0)|0)|0;c[p>>2]=g;if(g|0)break;c[m>>2]=Uh(c[n
x3e;>2]|0,p)|0;if(c[p>>2]|0)break;if(!(c[m>>2]|0)){c[p>>2]=8;break}k=(c[m>>2]|0)+-1
|0;c[m>>2]=k;c[(c[n>>2]|0)+20>>2]=k;k=c[j>>2]|0;j=c[m>>2]|0;if(a[o>>
0]|0){c[p>>2]=de(k,j,(c[n>>2]|0)+28|0)|0;break}else{c[p>>2]=Qc(k,j)|0;break}}c[p>>2]=8}while
(0);if(!(c[p>>2]|0)){q=c[p>>2]|0;i=r;return q|0}Fb(c[q>>2]|0,c[(c[n>>2]|0)+24>>
;2]|0);c[(c[n>>2]|0)+24>>2]=0;q=c[p>>2]|0;i=r;return q|0}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,m=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;m=l+8|0;k=l+24|0;j=l+4|0;h=l;c[e>>2]=a;c[f>>
2]=b;c[m>>2]=c[c[e>>2]>>2];c[j>>2]=0;a=Rc(c[m>>2]|0,k,d[(c[e>>2]|0)+
12>>0]|0)|0;c[g>>2]=a;if(a|0){k=c[g>>2]|0;m=c[f>>2]|0;c[m>>2]=k;m=c[j>>
;2]|0;i=l;return m|0}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(d[(c[e>>2]|0)+12>>0]|0|0))
break;c[j>>2]=c[j>>2]<<8|(d[k+(c[h>>2]|0)>>0]|0);c[h>>2]=(c[h>
x3e;2]|0)+1}k=c[g>>2]|0;m=c[f>>2]|0;c[m>>2]=k;m=c[j>>2]|0;i=l;return m|0}function Vh(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;t=i;i=i+48|0;f=t+44|0;g=t+40|0;h=t+36|0;k=t+32
|0;m=t+28|0;r=t+24|0;o=t+20|0;n=t+16|0;j=t+12|0;l=t+8|0;q=t+4|0;p=t;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;
c[k>>2]=0;c[m>>2]=c[(c[c[f>>2]>>2]|0)+28>>2];c[o>>2]=0;c[c[g>
x3e;2]>>2]=0;if((c[(c[f>>2]|0)+24>>2]|0)==0?(c[k>>2]=Wh(c[f>>2]|0)|0,c[k>
x3e;2]|0):0){s=c[k>>2]|0;i=t;return s|0}if((c[(c[f>>2]|0)+8>>2]|0)>>>0<=0){s=c
[k>>2]|0;i=t;return s|0}c[r>>2]=hc(c[m>>2]|0,4,0,(c[(c[f>>2]|0)+8>>2]|0)+1|0,0
,k)|0;if(c[k>>2]|0){s=c[k>>2]|0;i=t;return s|0}if(c[h>>2]|0?(c[o>>2]=bc(c[m>>2
]|0,(c[(c[f>>2]|0)+20>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)|0,k)|0,c[k>>2]|0):0){s=c[
k>>2]|0;i=t;return s|0}c[l>>2]=0;c[q>>2]=c[(c[f>>2]|0)+28>>2];d=(c[c[(c[f>
;>2]|0)+24>>2]>>2]|0)-1|0;c[j>>2]=d;c[j>>2]=(c[j>>2]|0)>>>
0>=(c[(c[f>>2]|0)+20>>2]|0)>>>0?0:d;if(c[h>>2]|0)c[c[r>>2]>>
;2]=(c[o>>2]|0)+(c[j>>2]|0);else c[c[r>>2]>>2]=(c[q>>2]|0)+(c[j>>2]|
0);c[n>>2]=1;while(1){if((c[n>>2]|0)>>>0>(c[(c[f>>2]|0)+8>>2]|0)>
;>>0)break;c[p>>2]=(c[(c[(c[f>>2]|0)+24>>2]|0)+(c[n>>2]<<2)>>
;2]|0)-1;if((c[p>>2]|0)!=0?(c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0:0){
if((c[p>>2]|0)>>>0>=(c[(c[f>>2]|0)+20>>2]|0)>>>0?(c[n>>
;2]|0)>>>0<(c[(c[f>>2]|0)+8>>2]|0)>>>0:0)s=16}else s=16;if((s|0)==16){s=0
;c[p>>2]=c[j>>2]}if(c[h>>2]|0){c[(c[r>>2]|0)+(c[n>>2]<<2)>>
;2]=(c[o>>2]|0)+(c[p>>2]|0)+(c[l>>2]|0);if((c[p>>2]|0)!=(c[j>>2]|0)){Ss(c[(c[r
>>2]|0)+((c[n>>2]|0)-1<<2)>>2]|0,(c[q>>2]|0)+(c[j>>2]|0)|0,(c[(c[r
x3e;>2]|0)+(c[n>>2]<<2)>>2]|0)-(c[(c[r>>2]|0)+((c[n>>2]|0)-1<<2
)>>2]|0)|0)|0;a[c[(c[r>>2]|0)+(c[n>>2]<<2)>>2]>>0]=0;d=(c[r>>
;2]|0)+(c[n>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+1}}else
c[(c[r>>2]|0)+(c[n>>2]<<2)>>2]=(c[q>>2]|0)+(c[p>>2]|0);c[j>>
;2]=c[p>>2];c[n>>2]=(c[n>>2]|0)+1}c[c[g>>2]>>2]=c[r>>2];if(!(c[h>
;>2]|0)){s=c[k>>2]|0;i=t;return s|0}c[c[h>>2]>>2]=c[o>>2];s=c[k>>2]|0;i=t
;return s|0}function Wh(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;o=i;i=i+48|0;e=o+28|0;g=o+24|0;n=o+20|0;h=o+16|0;j=
o+32|0;f=o+12|0;k=o+8|0;l=o+4|0;m=o;c[e>>2]=b;c[g>>2]=0;c[n>>2]=c[c[e>>2]>>2];
c[h>>2]=c[(c[n>>2]|0)+28>>2];if(((((c[(c[e>>2]|0)+8>>2]|0)>>>0
x3e;0?(c[(c[e>>2]|0)+24>>2]|0)==0:0)?(a[j>>0]=a[(c[e>>2]|0)+12>>0]|0,c[f>
x3e;2]=_((c[(c[e>>2]|0)+8>>2]|0)+1|0,d[j>>0]|0)|0,b=hc(c[h>>2]|0,4,0,(c[(c[e>>
2]|0)+8>>2]|0)+1|0,0,g)|0,c[(c[e>>2]|0)+24>>2]=b,(c[g>>2]|0)==0):0)?(b=Kc(c[n>>
;2]|0,(c[(c[e>>2]|0)+4>>2]|0)+3|0)|0,c[g>>2]=b,(b|0)==0):0)?(b=ee(c[n>>2]|0,c[f>>
;2]|0)|0,c[g>>2]=b,(b|0)==0):0){c[m>>2]=c[(c[e>>2]|0)+24>>2];c[k>>2]=c[(c[n>
;>2]|0)+32>>2];c[l>>2]=(c[k>>2]|0)+(c[f>>2]|0);a:do switch(d[j>>0]|0){case
1:while(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>
2]>>2]=d[c[k>>2]>>0];c[k>>2]=(c[k>>2]|0)+1;c[m>>2]=(c[m>>2
]|0)+4}case 2:while(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m
x3e;>2]>>2]=((d[c[k>>2]>>0]&65535)<<8|(d[(c[k>>2]|0)+1>>0]
x26;65535)<<0)&65535;c[k>>2]=(c[k>>2]|0)+2;c[m>>2]=(c[m>>2]|0)+4}case 3:while
(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>2]>
x3e;2]=a[c[k>>2]>>0]<<16|d[(c[k>>2]|0)+1>>0]<<8|d[(c[k>>2]|
0)+2>>0]<<0;c[k>>2]=(c[k>>2]|0)+3;c[m>>2]=(c[m>>2]|0)+4}default:while
(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>2]>
x3e;2]=d[c[k>>2]>>0]<<24|d[(c[k>>2]|0)+1>>0]<<16|d[(c[k>>2
]|0)+2>>0]<<8|d[(c[k>>2]|0)+3>>0]<<0;c[k>>2]=(c[k>>2]|0)+4
;c[m>>2]=(c[m>>2]|0)+4}}while(0);ge(c[n>>2]|0)}if(!(c[g>>2]|0)){n=c[g>>2]|0;i=
o;return n|0}Fb(c[h>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;n=c[g
>>2]|0;i=o;return n|0}function Xh(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;v=i;i=i+464|0;k=v+456|0;l=v+452|0;w=v+448|0;m=v+444|0;n=v+440|0;o=v+436|0;r=v+432|0;s=v+16|0;p=v+12|0;q=v+8
|0;u=v+4|0;t=v;c[k>>2]=b;c[l>>2]=e;c[w>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>
;2]=j;c[p>>2]=0;c[u>>2]=c[k>>2];c[t>>2]=(c[k>>2]|0)+172;Yh(s,4096,c[k>>
;2]|0,c[o>>2]|0);Ns(c[u>>2]|0,0,172)|0;c[(c[u>>2]|0)+32>>2]=-6553600;c[(c[u>>2
]|0)+36>>2]=3276800;c[(c[u>>2]|0)+44>>2]=2;c[(c[u>>2]|0)+48>>2]=65536;c[(c[u
x3e;>2]|0)+48+12>>2]=65536;c[(c[u>>2]|0)+152>>2]=8720;c[c[u>>2]>>2]=65535
;c[(c[u>>2]|0)+4>>2]=65535;c[(c[u>>2]|0)+8>>2]=65535;c[(c[u>>2]|0)+12>>
;2]=65535;c[(c[u>>2]|0)+16>>2]=65535;c[(c[u>>2]|0)+20>>2]=65535;c[(c[u>>2]|0)+
124>>2]=65535;c[(c[u>>2]|0)+128>>2]=65535;c[(c[u>>2]|0)+132>>2]=65535;c[(c[u
x3e;>2]|0)+168>>2]=65535;c[r>>2]=Zh(c[l>>2]|0,c[w>>2]|0,p,q)|0;if(!(c[r>>
2]|0))c[r>>2]=_h(s,c[p>>2]|0,(c[p>>2]|0)+(c[q>>2]|0)|0)|0;ji(c[l>>2]|0,p);if(c
[r>>2]|0){w=c[r>>2]|0;i=v;return w|0}if((c[(c[u>>2]|0)+128>>2]|0)!=65535){w=c[r>>
;2]|0;i=v;return w|0}do if(c[(c[u>>2]|0)+112>>2]|0?c[(c[u>>2]|0)+116>>2]|0:0){Ns(c[t>
;>2]|0,0,360)|0;c[(c[t>>2]|0)+200>>2]=7;c[(c[t>>2]|0)+204>>2]=1;c[(c[t>>2
]|0)+332>>2]=-1;c[(c[t>>2]|0)+340>>2]=3932;c[(c[t>>2]|0)+196>>2]=2596864;Yh(s,
8192,c[t>>2]|0,c[o>>2]|0);w=Kc(c[m>>2]|0,(c[n>>2]|0)+(c[(c[k>>2]|0)+112>
x3e;2]|0)|0)|0;c[r>>2]=w;if(w|0){w=c[r>>2]|0;i=v;return w|0}w=ee(c[m>>2]|0,c[(c[k>>2]|0)+
116>>2]|0)|0;c[r>>2]=w;if(w|0){w=c[r>>2]|0;i=v;return w|0}c[r>>2]=_h(s,c[(c[m>>
;2]|0)+32>>2]|0,c[(c[m>>2]|0)+36>>2]|0)|0;ge(c[m>>2]|0);if(c[r>>2]|0){w=c[r>
;>2]|0;i=v;return w|0}else{w=c[t>>2]|0;a[w>>0]=(d[w>>0]|0)&-2;break}}while(0);if(!(c[(c[
t>>2]|0)+348>>2]|0)){w=c[r>>2]|0;i=v;return w|0}w=Kc(c[m>>2]|0,(c[n>>2]|0)+(c[(
c[u>>2]|0)+112>>2]|0)+(c[(c[t>>2]|0)+348>>2]|0)|0)|0;c[r>>2]=w;if(w|0){w=c[r
x3e;>2]|0;i=v;return w|0}c[r>>2]=Th((c[k>>2]|0)+532|0,c[m>>2]|0,1)|0;if(c[r>>2]|0){
w=c[r>>2]|0;i=v;return w|0}c[r>>2]=Vh((c[k>>2]|0)+532|0,(c[k>>2]|0)+564|0,0)|0;w=c[r>
;>2]|0;i=v;return w|0}function Yh(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;Ns(c[g>>2]|0,0,416)|0;c[(c[g
>>2]|0)+404>>2]=(c[g>>2]|0)+16;c[(c[g>>2]|0)+408>>2]=c[k>>2];c[(c[g
x3e;>2]|0)+412>>2]=c[j>>2];c[c[g>>2]>>2]=c[h>>2];i=f;return}function Zh(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;q=i;i=i+48|0;g=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;l=q
+16|0;p=q+12|0;m=q+8|0;n=q+4|0;o=q;c[g>>2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>
;2]=0;if(c[g>>2]|0?(c[(c[g>>2]|0)+8>>2]|0)>>>0>(c[h>>2]|0)>>
;>0:0){c[p>>2]=c[c[g>>2]>>2];c[n>>2]=0;b=c[h>>2]|0;a=c[g>>2]|0;
a:do if(c[(c[g>>2]|0)+24>>2]|0){c[m>>2]=c[(c[a+24>>2]|0)+(b<<2)>>2];
if(c[m>>2]|0)do{c[h>>2]=(c[h>>2]|0)+1;c[n>>2]=c[(c[(c[g>>2]|0)+24>>2
]|0)+(c[h>>2]<<2)>>2];if(c[n>>2]|0)break a}while((c[h>>2]|0)>>>
0<(c[(c[g>>2]|0)+8>>2]|0)>>>0)}else{c[o>>2]=_(b,d[a+12>>0]|0)|0;o=Kc
(c[p>>2]|0,(c[(c[g>>2]|0)+4>>2]|0)+3+(c[o>>2]|0)|0)|0;c[l>>2]=o;if(o|0){p=c[l
x3e;>2]|0;i=q;return p|0}c[m>>2]=Uh(c[g>>2]|0,l)|0;if(c[l>>2]|0){p=c[l>>2]|0;i=q;return
p|0}if(c[m>>2]|0)do{c[h>>2]=(c[h>>2]|0)+1;c[n>>2]=Uh(c[g>>2]|0,l)|0;if(c[n>
;>2]|0)break a}while((c[h>>2]|0)>>>0<(c[(c[g>>2]|0)+8>>2]|0)>>
x3e;0)}while(0);if(!((c[n>>2]|0)>>>0<=((c[(c[p>>2]|0)+4>>2]|0)+1|0)>>
;>0?(c[(c[g>>2]|0)+16>>2]|0)>>>0<=((c[(c[p>>2]|0)+4>>2]|0)-(c[n
>>2]|0)+1|0)>>>0:0))c[n>>2]=(c[(c[p>>2]|0)+4>>2]|0)-(c[(c[g>>2]|
0)+16>>2]|0)+1;if(c[m>>2]|0?(c[n>>2]|0)>>>0>(c[m>>2]|0)>>
x3e;0:0){c[c[k>>2]>>2]=(c[n>>2]|0)-(c[m>>2]|0);if(c[(c[g>>2]|0)+28>>
2]|0){c[c[j>>2]>>2]=(c[(c[g>>2]|0)+28>>2]|0)+(c[m>>2]|0)+-1;p=c[l>>2
]|0;i=q;return p|0}o=Kc(c[p>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[m>>2]|0)-1|0)|0;c[l>
x3e;2]=o;if(o|0){p=c[l>>2]|0;i=q;return p|0}c[l>>2]=de(c[p>>2]|0,(c[n>>2]|0)-(c[m>
x3e;2]|0)|0,c[j>>2]|0)|0;p=c[l>>2]|0;i=q;return p|0}c[c[j>>2]>>2]=0;c[c[k>>2]
x3e;>2]=0;p=c[l>>2]|0;i=q;return p|0}c[l>>2]=6;p=c[l>>2]|0;i=q;return p|0}function _h(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;v=i;i=i+64|0;h=v+52|0;w=v+48|0;j=v+44|0;p=
v+40|0;m=v+36|0;x=v+32|0;s=v+28|0;k=v+24|0;o=v+20|0;n=v+16|0;t=v+12|0;q=v+8|0;r=v+4|0;l=v;c[h>>2]=e;c[w>>2]=
f;c[j>>2]=g;c[p>>2]=c[w>>2];c[m>>2]=0;c[x>>2]=c[c[h>>2]>>2
];c[x>>2]=c[x>>2];c[(c[h>>2]|0)+404>>2]=(c[h>>2]|0)+16;c[(c[h>>2]|0)+
4>>2]=c[w>>2];c[(c[h>>2]|0)+8>>2]=c[j>>2];c[(c[h>>2]|0)+12>>
;2]=c[w>>2];a:while(1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0){u=47
;break}c[s>>2]=d[c[p>>2]>>0];g=((c[(c[h>>2]|0)+404>>2]|0)-((c[h>>2]|
0)+16)|0)/4|0;b:do if((c[s>>2]|0)>>>0>=27&(c[s>>2]|0)!=31){if((g|0)>=96){u=48;
break a}w=c[p>>2]|0;f=(c[h>>2]|0)+404|0;x=c[f>>2]|0;c[f>>2]=x+4;c[x>>2]=w;if((
c[s>>2]|0)==30){c[p>>2]=(c[p>>2]|0)+1;while(1){if((c[p>>2]|0)>>>0>=(
c[j>>2]|0)>>>0){u=47;break a}c[s>>2]=(d[c[p>>2]>>0]|0)>>4;if((c
[s>>2]|0)==15)break b;c[s>>2]=(d[c[p>>2]>>0]|0)&15;if((c[s>>2]|0)==15)break
b;c[p>>2]=(c[p>>2]|0)+1}}if((c[s>>2]|0)==28){c[p>>2]=(c[p>>2]|0)+2;break}if((
c[s>>2]|0)==29){c[p>>2]=(c[p>>2]|0)+4;break}if((c[s>>2]|0)>>>0>246)c
[p>>2]=(c[p>>2]|0)+1}else{c[o>>2]=g;c[c[(c[h>>2]|0)+404>>2]>>2]=c[p
x3e;>2];c[k>>2]=c[s>>2];if((c[s>>2]|0)==12){c[p>>2]=(c[p>>2]|0)+1;if((c[p
>>2]|0)>>>0>=(c[j>>2]|0)>>>0){u=50;break a}c[k>>2]=256|(d[c[p
x3e;>2]>>0]|0)}c[k>>2]=c[k>>2]|c[(c[h>>2]|0)+408>>2];c[n>>2]=920
;while(1){if(!(c[c[n>>2]>>2]|0))break;if((c[(c[n>>2]|0)+4>>2]|0)==(c[k>>2]|0)){
u=23;break}c[n>>2]=(c[n>>2]|0)+28}c:do if((u|0)==23){u=0;c[q>>2]=(c[(c[h>>2]|0)+412>
;>2]|0)+(c[(c[n>>2]|0)+8>>2]|0);if((c[o>>2]|0)>>>0<1?(c[c[n>>2]
x3e;>2]|0)!=6:0){u=49;break a}switch(c[c[n>>2]>>2]|0){case 1:case 4:case 5:{c[t>>2]=hi((c[h
x3e;>2]|0)+16|0)|0;break}case 2:{c[t>>2]=fi((c[h>>2]|0)+16|0)|0;break}case 3:{c[t>>2]=di((c[h
>>2]|0)+16|0,3)|0;break}case 6:{c[r>>2]=(c[(c[h>>2]|0)+412>>2]|0)+(c[(c[n>>2]|
0)+24>>2]|0);c[l>>2]=(c[h>>2]|0)+16;if((c[o>>2]|0)>>>0>(c[(c[n>
x3e;2]|0)+20>>2]|0)>>>0)c[o>>2]=c[(c[n>>2]|0)+20>>2];a[c[r>>2]
x3e;>0]=c[o>>2];c[t>>2]=0;while(1){if((c[o>>2]|0)>>>0<=0)break c;x=c[l>
;>2]|0;c[l>>2]=x+4;x=hi(x)|0;c[t>>2]=(c[t>>2]|0)+x;switch(d[(c[n>>2]|0)+12>>
;0]|0|0){case 1:{a[c[q>>2]>>0]=c[t>>2];break}case 2:{b[c[q>>2]>>1]=c[t>
x3e;2];break}case 4:{c[c[q>>2]>>2]=c[t>>2];break}default:c[c[q>>2]>>2]=c[t>
;>2]}c[q>>2]=(c[q>>2]|0)+(d[(c[n>>2]|0)+12>>0]|0);c[o>>2]=(c[o>>
;2]|0)+-1}}default:{c[m>>2]=Ta[c[(c[n>>2]|0)+16>>2]&63](c[h>>2]|0)|0;if(c[m>
x3e;2]|0){u=47;break a}else break c}}switch(d[(c[n>>2]|0)+12>>0]|0|0){case 1:{a[c[q>>2]>>
;0]=c[t>>2];break c}case 2:{b[c[q>>2]>>1]=c[t>>2];break c}case 4:{c[c[q>>2]>
;>2]=c[t>>2];break c}default:{c[c[q>>2]>>2]=c[t>>2];break c}}}while(0);c[(c[h>
x3e;2]|0)+404>>2]=(c[h>>2]|0)+16}while(0);c[p>>2]=(c[p>>2]|0)+1}if((u|0)==47){x=c[m>
;>2]|0;i=v;return x|0}else if((u|0)==48){c[m>>2]=6;x=c[m>>2]|0;i=v;return x|0}else if((u|0)==49){c[m>
;>2]=6;x=c[m>>2]|0;i=v;return x|0}else if((u|0)==50){c[m>>2]=6;x=c[m>>2]|0;i=v;return x|0}return
0}function $h(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;k=j+28|0;l=j+24|0;e=j+20|0;f=j+16|0;h=j+12|0;b=j+8|
0;d=j+4|0;g=j;c[k>>2]=a;c[l>>2]=c[(c[k>>2]|0)+412>>2];c[e>>2]=(c[l>>
2]|0)+48;c[f>>2]=(c[l>>2]|0)+68;c[h>>2]=(c[l>>2]|0)+64;c[b>>2]=(c[k>>
;2]|0)+16;c[d>>2]=161;if((c[(c[k>>2]|0)+404>>2]|0)>>>0<((c[k>>2]|0)+
16+24|0)>>>0){l=c[d>>2]|0;i=j;return l|0}c[d>>2]=0;l=c[b>>2]|0;c[b>>2]=l+
4;l=ai(l,g)|0;c[c[e>>2]>>2]=l;c[g>>2]=0-(c[g>>2]|0);if((c[g>>2]|0)<0|(c[g
>>2]|0)>9){c[c[e>>2]>>2]=65536;c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|
0)+8>>2]=0;c[(c[e>>2]|0)+12>>2]=65536;c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+
4>>2]=0;c[c[h>>2]>>2]=1;l=c[d>>2]|0;i=j;return l|0}else{l=c[b>>2]|0;c[b>
x3e;2]=l+4;l=di(l,c[g>>2]|0)|0;c[(c[e>>2]|0)+8>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l
=di(l,c[g>>2]|0)|0;c[(c[e>>2]|0)+4>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l=di(l,c[g>
;>2]|0)|0;c[(c[e>>2]|0)+12>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l=di(l,c[g>>2]|0
)|0;c[c[f>>2]>>2]=l;l=di(c[b>>2]|0,c[g>>2]|0)|0;c[(c[f>>2]|0)+4>>2]=
l;c[c[h>>2]>>2]=c[2376+(c[g>>2]<<2)>>2];l=c[d>>2]|0;i=j;return l|0}return
0}function ai(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;e=j+16|0;k=j+12|0;f=j+8|0;h=j+4|0;g=j;c[k>>2]=
a;c[f>>2]=b;b=c[c[k>>2]>>2]|0;a=c[(c[k>>2]|0)+4>>2]|0;if((d[c[c[k>>2
]>>2]>>0]|0|0)==30){c[e>>2]=bi(b,a,0,c[f>>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}c
[h>>2]=ci(b,a)|0;if((c[h>>2]|0)<=32767){c[c[f>>2]>>2]=0;c[e>>2]=c[h>
x3e;2]<<16;k=c[e>>2]|0;i=j;return k|0}c[g>>2]=5;while(1){if((c[g>>2]|0)>=10)break;if
((c[h>>2]|0)<(c[2376+(c[g>>2]<<2)>>2]|0))break;c[g>>2]=(c[g>>2]|
0)+1}a=c[g>>2]|0;if(((c[h>>2]|0)/(c[2376+((c[g>>2]|0)-5<<2)>>2]|0)|0|0)>32767
){c[c[f>>2]>>2]=a-4;c[e>>2]=Vb(c[h>>2]|0,c[2376+((c[g>>2]|0)-4<<2)
x3e;>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}else{c[c[f>>2]>>2]=a-5;c[e>>2]=Vb(c[h>
x3e;2]|0,c[2376+((c[g>>2]|0)-5<<2)>>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}return 0}function
bi(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,v=0,w=0,x=0,y=0,z=0;y=i;i=i+80|
0;z=y+64|0;g=y+60|0;h=y+56|0;t=y+52|0;n=y+48|0;m=y+44|0;o=y+40|0;w=y+36|0;r=y+32|0;u=y+28|0;x=y+24|0;k=y+20|0;j=y+16|0;l=y+12|0;
v=y+8|0;q=y+4|0;s=y;c[z>>2]=a;c[g>>2]=b;c[h>>2]=e;c[t>>2]=f;c[n>>2]=c[z>
x3e;2];c[x>>2]=0;c[k>>2]=0;if(c[t>>2]|0)c[c[t>>2]>>2]=0;c[w>>2]=0;c[
r>>2]=0;c[u>>2]=0;c[j>>2]=0;c[l>>2]=0;c[v>>2]=0;c[o>>2]=4;while(1){if
(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n>>2]|0)>>>0>=(c[g>>2
]|0)>>>0):0){p=54;break}c[m>>2]=(d[c[n>>2]>>0]|0)>>c[o>>2]&
;15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|0)==14){c[x>>2]=1;continue}if((c[m>>2]|0
)>>>0>9)break;if((c[r>>2]|0)>=214748364){c[j>>2]=(c[j>>2]|0)+1;continue}if
(!((c[m>>2]|0)!=0|(c[r>>2]|0)!=0))continue;c[l>>2]=(c[l>>2]|0)+1;c[r>>2]=((c[r
>>2]|0)*10|0)+(c[m>>2]|0)}if((p|0)==54){z=c[w>>2]|0;i=y;return z|0}a:do if((c[m>>2]|0)==
10){while(1){if(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n>>2]|0)>>>0>=(c
[g>>2]|0)>>>0):0)break;c[m>>2]=(d[c[n>>2]>>0]|0)>>c[o>>
;2]&15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|0)>>>0>=10)break a;if(!((c[m>
;>2]|0)!=0|(c[r>>2]|0)!=0)){c[j>>2]=(c[j>>2]|0)+-1;continue}if(!((c[r>>2]|0)<214748364
&(c[v>>2]|0)<9))continue;c[v>>2]=(c[v>>2]|0)+1;c[r>>2]=((c[r>>2]|0)*
10|0)+(c[m>>2]|0)}z=c[w>>2]|0;i=y;return z|0}while(0);if((c[m>>2]|0)==12){c[k>>2]=1;c[m
x3e;>2]=11}do if((c[m>>2]|0)==11){while(1){if(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n
>>2]|0)>>>0>=(c[g>>2]|0)>>>0):0){p=54;break}c[m>>2]=(d[c[n>
;>2]>>0]|0)>>c[o>>2]&15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|
0)>>>0>=10){p=28;break}c[u>>2]=((c[u>>2]|0)*10|0)+(c[m>>2]|0);if((c[u>>
;2]|0)>1e3){p=54;break}}if((p|0)==28){if(!(c[k>>2]|0))break;c[u>>2]=0-(c[u>>2]|0);break}else
if((p|0)==54){z=c[w>>2]|0;i=y;return z|0}}while(0);c[u>>2]=(c[u>>2]|0)+((c[h>>2]|0)+(c[j
>>2]|0));do if(!(c[t>>2]|0)){c[l>>2]=(c[l>>2]|0)+(c[u>>2]|0);c[v>>2]=(
c[v>>2]|0)-(c[u>>2]|0);z=c[l>>2]|0;if((((c[l>>2]|0)<0?0-z|0:z)|0)>5){z=c[w>
;>2]|0;i=y;return z|0}if((c[l>>2]|0)<0){c[r>>2]=(c[r>>2]|0)/(c[2376+(0-(c[l>>2
]|0)<<2)>>2]|0)|0;c[v>>2]=(c[v>>2]|0)+(c[l>>2]|0)}if((c[v>>2]|0)==10
){c[r>>2]=(c[r>>2]|0)/10|0;c[v>>2]=(c[v>>2]|0)-1}if((c[v>>2]|0)>0)if(((c[
r>>2]|0)/(c[2376+(c[v>>2]<<2)>>2]|0)|0|0)>32767){z=c[w>>2]|0;i=y;return z
|0}else{c[w>>2]=Vb(c[r>>2]|0,c[2376+(c[v>>2]<<2)>>2]|0)|0;break}else{c[r>
x3e;2]=_(c[r>>2]|0,c[2376+(0-(c[v>>2]|0)<<2)>>2]|0)|0;if((c[r>>2]|0)>32767
){z=c[w>>2]|0;i=y;return z|0}else{c[w>>2]=c[r>>2]<<16;break}}}else{c[v>>2]=(c[
v>>2]|0)+(c[l>>2]|0);c[u>>2]=(c[u>>2]|0)+(c[l>>2]|0);j=c[r>>2]|0;if((
c[v>>2]|0)>5){g=c[r>>2]|0;h=c[v>>2]|0;if(((j|0)/(c[2376+((c[v>>2]|0)-5<<2
)>>2]|0)|0|0)>32767){c[w>>2]=Vb(g,c[2376+(h-4<<2)>>2]|0)|0;c[c[t>>2]>
;>2]=(c[u>>2]|0)-4;break}else{c[w>>2]=Vb(g,c[2376+(h-5<<2)>>2]|0)|0;c[c[t>>
;2]>>2]=(c[u>>2]|0)-5;break}}if((j|0)>32767){c[w>>2]=Vb(c[r>>2]|0,10)|0;c[c[t>
x3e;2]>>2]=(c[u>>2]|0)-(c[v>>2]|0)+1;break}if((c[u>>2]|0)>0){c[q>>2]=(c[u
>>2]|0)<5?c[u>>2]|0:5;c[u>>2]=(c[u>>2]|0)-(c[q>>2]|0);c[s>>2]=(
c[q>>2]|0)-(c[v>>2]|0);c[r>>2]=_(c[r>>2]|0,c[2376+(c[s>>2]<<2)>
x3e;2]|0)|0;if((c[r>>2]|0)>32767){c[r>>2]=(c[r>>2]|0)/10|0;c[u>>2]=(c[u>>
2]|0)+1}}else c[u>>2]=(c[u>>2]|0)-(c[v>>2]|0);c[w>>2]=c[r>>2]<<16;c[
c[t>>2]>>2]=c[u>>2]}while(0);if(!(c[x>>2]|0)){z=c[w>>2]|0;i=y;return z|0}c[w
x3e;>2]=0-(c[w>>2]|0);z=c[w>>2]|0;i=y;return z|0}function ci(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k
=0;j=i;i=i+32|0;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>>2]=a;c[e>>2]=b;c[f>>2]=c[k>>2
];a=c[f>>2]|0;c[f>>2]=a+1;c[g>>2]=d[a>>0];c[h>>2]=0;do if((c[g>>2]|0
)==28){if(((c[f>>2]|0)+2|0)>>>0<=(c[e>>2]|0)>>>0){c[h>>2]=(((d[
c[f>>2]>>0]|0)<<8|(d[(c[f>>2]|0)+1>>0]|0))&65535)<<16>>
;16;c[f>>2]=(c[f>>2]|0)+2;k=c[h>>2]|0;i=j;return k|0}}else{if((c[g>>2]|0)==29){if(((c[f
x3e;>2]|0)+4|0)>>>0>(c[e>>2]|0)>>>0)break;c[h>>2]=(d[c[f>>
2]>>0]|0)<<24|(d[(c[f>>2]|0)+1>>0]|0)<<16|(d[(c[f>>2]|0)+2>>
;0]|0)<<8|(d[(c[f>>2]|0)+3>>0]|0);c[f>>2]=(c[f>>2]|0)+4;k=c[h>>2]|0;
i=j;return k|0}a=c[g>>2]|0;if((c[g>>2]|0)<247){c[h>>2]=a-139;k=c[h>>2]|0;i=j;return
k|0}b=((c[f>>2]|0)+1|0)>>>0>(c[e>>2]|0)>>>0;if((a|0)<251){if(b)break
;c[h>>2]=((c[g>>2]|0)-247<<8)+(d[c[f>>2]>>0]|0)+108;c[f>>2]=(c[f>
;>2]|0)+1;k=c[h>>2]|0;i=j;return k|0}else{if(b)break;c[h>>2]=(0-((c[g>>2]|0)-251)<<
8)-(d[c[f>>2]>>0]|0)-108;c[f>>2]=(c[f>>2]|0)+1;k=c[h>>2]|0;i=j;return k|0}}while
(0);c[h>>2]=0;k=c[h>>2]|0;i=j;return k|0}function di(a,b){a=a|0;b=b|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]=b;b=c[c[g>>2]>>2]|0;a=c[(c[g>>2]|0)+4>>2]|0;if((
d[c[c[g>>2]>>2]>>0]|0|0)==30){g=bi(b,a,c[e>>2]|0,0)|0;i=f;return g|0}else{g=ci(b,a)|0;g=(
_(g,c[2376+(c[e>>2]<<2)>>2]|0)|0)<<16;i=f;return g|0}return 0}function ei(a){a=a|0;var b
=0,d=0,e=0,f=0,g=0,h=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;b=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[h>>2]=c[(c[g>>
;2]|0)+412>>2];c[b>>2]=(c[h>>2]|0)+80;c[d>>2]=(c[g>>2]|0)+16;c[e>>2]=
161;if((c[(c[g>>2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+16|0)>>>0){
h=c[e>>2]|0;i=f;return h|0}h=c[d>>2]|0;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[c[b>>2]>>
2]=h;h=c[d>>2]|0;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[(c[b>>2]|0)+4>>2]=h;h=c[d>>2]|0
;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[(c[b>>2]|0)+8>>2]=h;h=Tb(fi(c[d>>2]|0)|0)|0;c[(c[b>
x3e;2]|0)+12>>2]=h;c[e>>2]=0;h=c[e>>2]|0;i=f;return h|0}function fi(a){a=a|0;var b=0,e=0,f=0;e=i;i
=i+16|0;f=e;c[f>>2]=a;b=c[c[f>>2]>>2]|0;a=c[(c[f>>2]|0)+4>>2]|0;if((d[c[c[f>
;>2]>>2]>>0]|0|0)==30){f=bi(b,a,0,0)|0;i=e;return f|0}else{f=(ci(b,a)|0)<<16;i=e;return f|0}return
0}function gi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+12|0;d=f+8|0;b=f+4|0;e=f;c[g>>2]=a;c[d>>2]=
c[(c[g>>2]|0)+412>>2];c[b>>2]=(c[g>>2]|0)+16;c[e>>2]=161;if((c[(c[g>>
;2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+8|0)>>>0){g=c[e>>2]|0;i=f
;return g|0}g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+116>>2]=g;g=hi(c[b>>
;2]|0)|0;c[(c[d>>2]|0)+112>>2]=g;c[e>>2]=0;g=c[e>>2]|0;i=f;return g|0}function hi(a){a=a
|0;var b=0,e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=a;b=c[c[f>>2]>>2]|0;a=c[(c[f>>2]|0)+4>
x3e;2]|0;if((d[c[c[f>>2]>>2]>>0]|0|0)==30){f=(bi(b,a,0,0)|0)>>16;i=e;return f|0}else{f=ci
(b,a)|0;i=e;return f|0}return 0}function ii(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+12|0;d=f+8|0;b=f+4|0;e=f;c[g>
x3e;2]=a;c[d>>2]=c[(c[g>>2]|0)+412>>2];c[b>>2]=(c[g>>2]|0)+16;c[e>>2
]=161;if((c[(c[g>>2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+12|0)>>>
0){g=c[e>>2]|0;i=f;return g|0}g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+128>
x3e;2]=g;g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+132>>2]=g;g=hi(c[b>>2
]|0)|0;c[(c[d>>2]|0)+136>>2]=g;c[e>>2]=0;g=c[e>>2]|0;i=f;return g|0}function ji(a,b){a=a
|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;if(c[(c[d>>2]|0)+
28>>2]|0){i=g;return}c[f>>2]=c[c[d>>2]>>2];fe(c[f>>2]|0,c[e>>2]|0);i
=g;return}function ki(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;o=i;i=i+32|0;h=o+20|0;j=o+16|0;k=o+12
|0;p=o+8|0;l=o+4|0;m=o+24|0;n=o;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[p>>2]=g;f=Kc(c[k>
x3e;2]|0,c[p>>2]|0)|0;c[l>>2]=f;if(f|0){p=c[l>>2]|0;i=o;return p|0}a[m>>0]=ke(c[k>
x3e;2]|0,l)|0;if(c[l>>2]|0){p=c[l>>2]|0;i=o;return p|0}a[c[h>>2]>>0]=a[m>>0]|0
;c[(c[h>>2]|0)+20>>2]=0;a:do switch(d[m>>0]|0|0){case 0:{c[(c[h>>2]|0)+12>>2]=
c[j>>2];break}case 3:{c[n>>2]=(Pc(c[k>>2]|0,l)|0)&65535;if(c[l>>2]|0){p=c[l>
x3e;2]|0;i=o;return p|0}else{c[(c[h>>2]|0)+12>>2]=((c[n>>2]|0)*3|0)+2;break a}}default:{c[l>
x3e;2]=3;p=c[l>>2]|0;i=o;return p|0}}while(0);c[l>>2]=de(c[k>>2]|0,c[(c[h>>2]|0)+12>
;>2]|0,(c[h>>2]|0)+8|0)|0;p=c[l>>2]|0;i=o;return p|0}function li(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16
|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;if(!(c[c[b>>2]>>2]|0)){i=f;return}c[e>>2]=c[c[b>
x3e;2]>>2];c[d>>2]=c[(c[e>>2]|0)+28>>2];if(c[(c[b>>2]|0)+28>>2]|0)fe
(c[e>>2]|0,(c[b>>2]|0)+28|0);Fb(c[d>>2]|0,c[(c[b>>2]|0)+24>>2]|0);c[(c[b>
x3e;2]|0)+24>>2]=0;e=c[b>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>
x3e;2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0;i=f;return}function mi(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,v=0,w=0,x=0,y=0;y=i;i=i+48|0;r=y+36|0;s
=y+32|0;t=y+28|0;l=y+24|0;m=y+20|0;u=y+42|0;x=y+16|0;v=y+12|0;n=y+40|0;w=y+8|0;p=y+4|0;o=y;c[r>>2]=d;c[s>>2]=
f;c[t>>2]=g;c[l>>2]=h;c[m>>2]=j;a[u>>0]=k;c[x>>2]=c[(c[t>>2]|0)+28
x3e;>2];c[v>>2]=0;a:do if((c[m>>2]|0)>>>0>2){c[(c[r>>2]|0)+4>>2
]=(c[l>>2]|0)+(c[m>>2]|0);g=Kc(c[t>>2]|0,c[(c[r>>2]|0)+4>>2]|0)|0;c[v>>
;2]=g;if(((g|0)==0?(g=(ke(c[t>>2]|0,v)|0)&255,c[c[r>>2]>>2]=g,(c[v>>2]|0)==0):0)?(g
=hc(c[x>>2]|0,2,0,c[s>>2]|0,0,v)|0,c[(c[r>>2]|0)+8>>2]=g,(c[v>>2]|0)==0):0){b[
c[(c[r>>2]|0)+8>>2]>>1]=0;switch(c[c[r>>2]>>2]|0){case 0:{if((c[s>>2
]|0)>>>0<=0){q=39;break a}p=ee(c[t>>2]|0,(c[s>>2]|0)-1<<1)|0;c[v>>2]=
p;if(p|0)break a;c[w>>2]=1;while(1){l=c[t>>2]|0;if((c[w>>2]|0)>>>0>=(c[s>
x3e;2]|0)>>>0)break;q=ie(l)|0;b[(c[(c[r>>2]|0)+8>>2]|0)+(c[w>>2]<<1)>
;>1]=q;c[w>>2]=(c[w>>2]|0)+1}ge(l);q=39;break a}case 2:case 1:{c[w>>2]=1;b:while(1){if((c[w
x3e;>2]|0)>>>0>=(c[s>>2]|0)>>>0){q=39;break a}b[n>>1]=Pc(c[t>
x3e;2]|0,v)|0;if(c[v>>2]|0)break a;l=c[t>>2]|0;if((c[c[r>>2]>>2]|0)==2){c[p>>2
]=(Pc(l,v)|0)&65535;if(c[v>>2]|0)break a}else{c[p>>2]=(ke(l,v)|0)&255;if(c[v>>2]|0)break
a}if((e[n>>1]|0)>>>0>(65535-(c[p>>2]|0)|0)>>>0)c[p>>2]=65535-(
e[n>>1]|0);c[o>>2]=0;while(1){if((c[w>>2]|0)>>>0>=(c[s>>2]|0)>
x3e;>0)continue b;if((c[o>>2]|0)>>>0>(c[p>>2]|0)>>>0)continue b;b[(c
[(c[r>>2]|0)+8>>2]|0)+(c[w>>2]<<1)>>1]=b[n>>1]|0;c[o>>2]=(
c[o>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1;b[n>>1]=(b[n>>1]|0)+1<<16>
x3e;16}}}default:{c[v>>2]=3;break a}}}}else{c[(c[r>>2]|0)+4>>2]=c[m>>2];switch(c[m>
x3e;2]|0){case 0:{if((c[s>>2]|0)>>>0>229){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0
,c[s>>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+
8>>2]|0,5556,c[s>>2]<<1|0)|0;q=39;break a}case 1:{if((c[s>>2]|0)>>>0>
;166){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0,c[s>>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2
]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+8>>2]|0,6014,c[s>>2]<<1|0)|0;q=39;break
a}case 2:{if((c[s>>2]|0)>>>0>87){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0,c[s>
;>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+8>
x3e;2]|0,6346,c[s>>2]<<1|0)|0;q=39;break a}default:{c[v>>2]=3;break a}}}while(0);if((q|0)==39?a[u
x3e;>0]|0:0)c[v>>2]=ni(c[r>>2]|0,c[s>>2]|0,c[x>>2]|0)|0;if(!(c[v>>2]|0)){
x=c[v>>2]|0;i=y;return x|0}Fb(c[x>>2]|0,c[(c[r>>2]|0)+8>>2]|0);c[(c[r>>2]|0)+8
>>2]=0;Fb(c[x>>2]|0,c[(c[r>>2]|0)+12>>2]|0);c[(c[r>>2]|0)+12>>2]=0;c
[c[r>>2]>>2]=0;c[(c[r>>2]|0)+4>>2]=0;c[(c[r>>2]|0)+8>>2]=0;x=c[v>
;>2]|0;i=y;return x|0}function ni(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;o=i;i=i+32|0;g=o+20|0;h=o+16
|0;j=o+12|0;k=o+8|0;l=o+4|0;m=o;n=o+24|0;c[g>>2]=a;c[h>>2]=d;c[j>>2]=f;c[k>>2]=0;b[n>
;>1]=0;if((c[(c[g>>2]|0)+16>>2]|0)>>>0>0){d=c[k>>2]|0;i=o;return d|0}c[l
x3e;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[h>>2]|0)>>>0)break;if((e[(
c[(c[g>>2]|0)+8>>2]|0)+(c[l>>2]<<1)>>1]|0|0)>(e[n>>1]|0|0))b[n
x3e;>1]=b[(c[(c[g>>2]|0)+8>>2]|0)+(c[l>>2]<<1)>>1]|0;c[l>>2]=(c
[l>>2]|0)+1}d=hc(c[j>>2]|0,2,0,(e[n>>1]|0)+1|0,0,k)|0;c[(c[g>>2]|0)+12>>2]=d;if
(c[k>>2]|0){d=c[k>>2]|0;i=o;return d|0}c[m>>2]=(c[h>>2]|0)-1;while(1){if((c[m>>
;2]|0)<0)break;b[(c[(c[g>>2]|0)+12>>2]|0)+((e[(c[(c[g>>2]|0)+8>>2]|0)+(c[m>>
;2]<<1)>>1]|0)<<1)>>1]=c[m>>2];c[m>>2]=(c[m>>2]|0)+-1}c[(c
[g>>2]|0)+16>>2]=e[n>>1];c[(c[g>>2]|0)+20>>2]=c[h>>2];d=c[k>>
;2]|0;i=o;return d|0}function oi(a,f,g,h,j,k){a=a|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;F=i;i=i+80|0;l=F+64|0;m=F+60|0;o=F+56|0;p=F+52|0;q=F+48|0;r=F+44|0;t=F+40|0;s=F+36|0;z
=F+32|0;x=F+68|0;w=F+28|0;C=F+24|0;B=F+20|0;y=F+16|0;A=F+12|0;v=F+8|0;D=F+4|0;u=F;c[l>>2]=a;c[m>>2]=f;c[o>
;>2]=g;c[p>>2]=h;c[q>>2]=j;c[r>>2]=k;c[t>>2]=0;if(!(c[(c[m>>2]|0)+8>
x3e;2]|0)){c[t>>2]=3;E=c[t>>2]|0;i=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>
x3e;>0>=256)break;b[(c[l>>2]|0)+12+(c[z>>2]<<1)>>1]=0;b[(c[l>>2]|0)+
524+(c[z>>2]<<1)>>1]=0;c[z>>2]=(c[z>>2]|0)+1}if((c[r>>2]|0)>>
;>0<=1){switch(c[r>>2]|0){case 0:{Ss((c[l>>2]|0)+12|0,6520,512)|0;break}case 1:{Ss((c[l>>
;2]|0)+12|0,7032,512)|0;break}default:{c[t>>2]=3;E=c[t>>2]|0;i=F;return E|0}}c[(c[l>>2]|0)+8>
x3e;2]=0;c[t>>2]=ni(c[m>>2]|0,c[o>>2]|0,c[(c[p>>2]|0)+28>>2]|0)|0;if(c[t>
x3e;2]|0){E=c[t>>2]|0;i=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=256
)break;c[D>>2]=e[(c[l>>2]|0)+12+(c[z>>2]<<1)>>1];c[u>>2]=0;if(c[D>
;>2]|0)c[u>>2]=pi(c[m>>2]|0,c[D>>2]|0)|0;if(c[u>>2]|0){b[(c[l>>2]|0)+524+(
c[z>>2]<<1)>>1]=c[u>>2];c[(c[l>>2]|0)+8>>2]=(c[z>>2]|0)+1}
else{b[(c[l>>2]|0)+524+(c[z>>2]<<1)>>1]=0;b[(c[l>>2]|0)+12+(c[z>>2]
x3c;<1)>>1]=0}c[z>>2]=(c[z>>2]|0)+1}E=c[t>>2]|0;i=F;return E|0}c[(c[l>>2]|
0)+4>>2]=(c[q>>2]|0)+(c[r>>2]|0);h=Kc(c[p>>2]|0,c[(c[l>>2]|0)+4>>2]|
0)|0;c[t>>2]=h;if(h|0){E=c[t>>2]|0;i=F;return E|0}h=(ke(c[p>>2]|0,t)|0)&255;c[c[l>>
2]>>2]=h;if(c[t>>2]|0){E=c[t>>2]|0;i=F;return E|0}c[s>>2]=(ke(c[p>>2]|0,t)|0)
x26;255;if(c[t>>2]|0){E=c[t>>2]|0;i=F;return E|0}a:do switch(c[c[l>>2]>>2]&127|0){case
0:{c[(c[l>>2]|0)+8>>2]=(c[s>>2]|0)+1;h=ee(c[p>>2]|0,c[s>>2]|0)|0;c[t>>
;2]=h;if(h|0){E=c[t>>2]|0;i=F;return E|0}c[C>>2]=c[(c[p>>2]|0)+32>>2];c[z>>2]=
1;while(1){if((c[z>>2]|0)>>>0>(c[s>>2]|0)>>>0)break;h=c[C>>2]|0
;c[C>>2]=h+1;c[w>>2]=d[h>>0];if((c[z>>2]|0)>>>0<(c[o>>2]|0
)>>>0){b[(c[l>>2]|0)+524+(c[w>>2]<<1)>>1]=c[z>>2];b[(c[l>
x3e;2]|0)+12+(c[w>>2]<<1)>>1]=b[(c[(c[m>>2]|0)+8>>2]|0)+(c[z>>2]<
;<1)>>1]|0}c[z>>2]=(c[z>>2]|0)+1}ge(c[p>>2]|0);break}case 1:{c[y>>2]=1;c[(
c[l>>2]|0)+8>>2]=0;c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[s>
x3e;2]|0)>>>0){E=30;break}c[w>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break
}c[B>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break}c[B>>2]=(c[B>>2
]|0)+1;if((c[B>>2]|0)>>>0>(c[(c[l>>2]|0)+8>>2]|0)>>>0)c[(c[l>
;>2]|0)+8>>2]=c[B>>2];c[A>>2]=c[y>>2];while(1){if((c[A>>2]|0)>>
x3e;0>=((c[B>>2]|0)+(c[y>>2]|0)|0)>>>0)break;if((c[w>>2]|0)>>>0
<256?(c[A>>2]|0)>>>0<(c[o>>2]|0)>>>0:0){b[(c[l>>2]|0)+524+(
c[w>>2]<<1)>>1]=c[A>>2];b[(c[l>>2]|0)+12+(c[w>>2]<<1)>
;>1]=b[(c[(c[m>>2]|0)+8>>2]|0)+(c[A>>2]<<1)>>1]|0}c[A>>2]=(c[A
x3e;>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1}c[z>>2]=(c[z>>2]|0)+1;c[y>>2]=(c[y>
;>2]|0)+(c[B>>2]|0)}if((E|0)==30){if((c[(c[l>>2]|0)+8>>2]|0)>>>0<=256)break
a;c[(c[l>>2]|0)+8>>2]=256;break a}else if((E|0)==58){E=c[t>>2]|0;i=F;return E|0}break}default:{c[
t>>2]=3;E=c[t>>2]|0;i=F;return E|0}}while(0);if(!(c[c[l>>2]>>2]&128)){E=c[t>
x3e;2]|0;i=F;return E|0}c[s>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=c[t>>2]|0;i
=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[s>>2]|0)>>
x3e;0){E=58;break}c[w>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break}b[x>>1]=
Pc(c[p>>2]|0,t)|0;if(c[t>>2]|0){E=58;break}b[(c[l>>2]|0)+12+(c[w>>2]<<1)>
x3e;1]=b[x>>1]|0;c[v>>2]=0;while(1){if((c[v>>2]|0)>>>0>=(c[o>>2]|0)
x3e;>>0)break;n=c[v>>2]|0;if((e[(c[(c[m>>2]|0)+8>>2]|0)+(c[v>>2]<<1)
x3e;>1]|0|0)==(e[x>>1]|0|0)){E=42;break}c[v>>2]=n+1}if((E|0)==42){E=0;b[(c[l>>2]|0)+524+(c[w
x3e;>2]<<1)>>1]=n}c[z>>2]=(c[z>>2]|0)+1}if((E|0)==58){E=c[t>>2]|0;i=F;return
E|0}return 0}function pi(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>
;2]=b;c[g>>2]=0;if((c[f>>2]|0)>>>0>(c[(c[d>>2]|0)+16>>2]|0)>>
;>0){g=c[g>>2]|0;i=h;return g|0}c[g>>2]=e[(c[(c[d>>2]|0)+12>>2]|0)+(c[f>>
2]<<1)>>1];g=c[g>>2]|0;i=h;return g|0}function qi(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+32|0;n=l+28|0;m=l+24|0;h=l+20|0;j=l+16|0;f=l+12|0;e=l+8|0;g=l+4|0;k=l;c[n>>2]=b;c[m>>2]=d;c
[h>>2]=(c[n>>2]|0)+20;c[j>>2]=c[(c[c[h>>2]>>2]|0)+28>>2];c[k>
x3e;2]=0;c[g>>2]=Zh(c[h>>2]|0,c[m>>2]|0,f,e)|0;if(c[g>>2]|0){n=c[k>>2]|0;i=l;return
n|0}c[k>>2]=bc(c[j>>2]|0,(c[e>>2]|0)+1|0,g)|0;if(!(c[g>>2]|0)){Ss(c[k>>2]|0,c
[f>>2]|0,c[e>>2]|0)|0;a[(c[k>>2]|0)+(c[e>>2]|0)>>0]=0}ji(c[h>>2]|0,f
);n=c[k>>2]|0;i=l;return n|0}function ri(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;e=h+12|0;c[
d>>2]=b;c[f>>2]=0;c[g>>2]=(cs(c[d>>2]|0)|0)+1;a[e>>0]=1;a:while(1){if(!(a[e>
;>0]|0))break;if((c[g>>2]|0)>=7?(a[(c[d>>2]|0)+6>>0]|0)==43:0){c[f>>2]=0;while
(1){if((c[f>>2]|0)>=6)break;if(!(65<=(a[(c[d>>2]|0)+(c[f>>2]|0)>>0]|0)?(a[(c[d
>>2]|0)+(c[f>>2]|0)>>0]|0)<=90:0))a[e>>0]=0;c[f>>2]=(c[f>>2]|0)+
1}if(!(a[e>>0]|0))continue;c[f>>2]=7;while(1){if((c[f>>2]|0)>=(c[g>>2]|0))continue
a;a[(c[d>>2]|0)+((c[f>>2]|0)-7)>>0]=a[(c[d>>2]|0)+(c[f>>2]|0)>>0]|0;
c[f>>2]=(c[f>>2]|0)+1}}a[e>>0]=0}i=h;return}function si(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;g=e+8|0;f=e+4|0;d=e;c[h>>2]=a;c[g>>2]=b;c[d>>2]=oe(c[h>>2]|0,c[g>
;>2]|0,f)|0;c[f>>2]=c[f>>2];i=e;return c[d>>2]|0}function ti(a){a=a|0;var b=0,d=0,e=0,f=0,g=0
,h=0;h=i;i=i+32|0;b=h+16|0;e=h+12|0;f=h+8|0;g=h+4|0;d=h;c[b>>2]=a;c[e>>2]=c[b>>2];if(!(c[e>
x3e;2]|0)){i=h;return}c[f>>2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[e>>2]|0)+532
x3e;>2];if(c[g>>2]|0)Va[c[(c[g>>2]|0)+12>>2]&63](c[e>>2]|0);c[d>>2]=
c[(c[e>>2]|0)+692>>2];if(!(c[d>>2]|0)){i=h;return}ui(c[d>>2]|0);Fb(c[f>>2]|0,c
[(c[e>>2]|0)+692>>2]|0);c[(c[e>>2]|0)+692>>2]=0;i=h;return}function ui(a){a=a|0;var b=0,
d=0,e=0,f=0;f=i;i=i+16|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;c[e>>2]=c[(c[b>>2]|0)+4>>2];li((c
[b>>2]|0)+84|0);li((c[b>>2]|0)+1208|0);li((c[b>>2]|0)+20|0);li((c[b>>2]|0)+1176|0);if((c
[(c[b>>2]|0)+1892>>2]|0)>>>0>0){c[d>>2]=0;while(1){a=c[e>>2]|0;if((c
[d>>2]|0)>>>0>=(c[(c[b>>2]|0)+1892>>2]|0)>>>0)break;vi(a,c[(c[b
>>2]|0)+1896+(c[d>>2]<<2)>>2]|0);c[d>>2]=(c[d>>2]|0)+1}Fb(a,c[(c[b
x3e;>2]|0)+1896>>2]|0);c[(c[b>>2]|0)+1896>>2]=0}wi((c[b>>2]|0)+116|0);xi((c[b>
x3e;2]|0)+1152|0,c[c[b>>2]>>2]|0);vi(c[e>>2]|0,(c[b>>2]|0)+1324|0);zi((c[b>>2]|
0)+2024|0,c[c[b>>2]>>2]|0);Fb(c[e>>2]|0,c[(c[b>>2]|0)+2060>>2]|0);c[(c[b>
x3e;2]|0)+2060>>2]=0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1304>>2]|0);c[(c[b>>2]|0)+1304
>>2]=0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1308>>2]|0);c[(c[b>>2]|0)+1308>>2]=
0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1316>>2]|0);c[(c[b>>2]|0)+1316>>2]=0;Fb(c[e>
x3e;2]|0,c[(c[b>>2]|0)+1320>>2]|0);c[(c[b>>2]|0)+1320>>2]=0;i=f;return}function vi(a,b){
a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=f;return
}li((c[e>>2]|0)+532|0);Fb(c[d>>2]|0,c[(c[e>>2]|0)+564>>2]|0);c[(c[e>>2]|0)+564
>>2]=0;i=f;return}function wi(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]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+8>>2]=0;i=b;return}function xi(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)+28>>2];yi(c[e>>2]|0,c[f>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>
2]|0);c[(c[e>>2]|0)+8>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;i=
d;return}function yi(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;Fb(c[f>
;>2]|0,c[(c[e>>2]|0)+12>>2]|0);c[(c[e>>2]|0)+12>>2]=0;c[(c[e>>2]|0)+16>
;>2]=0;i=d;return}function zi(b,d){b=b|0;d=d|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]=d;if(c[(c[e>>2]|0)+8>>2]|0)fe(c[f>>2]|0,(c[e>>2]|0)+8|0);c[(c[e>>2]|0)+12
x3e;>2]=0;a[c[e>>2]>>0]=0;c[(c[e>>2]|0)+4>>2]=0;i=g;return}function Ai(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;o=i;i=i+240|0;k=o+232|0;n=o+228|0;l=o+224|0;e=o+220|0;b=o+216|0;d=o+212|0;m=o+208
|0;h=o+12|0;g=o+8|0;f=o+4|0;j=o;c[k>>2]=a;c[n>>2]=c[k>>2];c[l>>2]=0;c[e>>2]=Bi
(c[n>>2]|0)|0;do if(c[e>>2]|0){c[b>>2]=c[c[k>>2]>>2];c[d>>2]=c[(c[b
x3e;>2]|0)+692>>2];c[g>>2]=c[(c[c[k>>2]>>2]|0)+100>>2];c[m>>2]=
bc(c[g>>2]|0,132,l)|0;if(c[l>>2]|0){n=c[l>>2]|0;i=o;return n|0}Ci((c[d>>2]|0)+1324|0,h);
c[l>>2]=Oa[c[c[e>>2]>>2]&63](c[(c[c[k>>2]>>2]|0)+100>>2]|0,h,c[
m>>2]|0)|0;if(c[l>>2]|0){n=c[l>>2]|0;i=o;return n|0}c[f>>2]=c[(c[d>>2]|0)+1892
>>2];while(1){if((c[f>>2]|0)>>>0<=0){a=8;break}c[j>>2]=c[(c[d>>2]|0)+
1896+((c[f>>2]|0)-1<<2)>>2];Ci(c[j>>2]|0,h);c[l>>2]=Oa[c[c[e>>2]>
;>2]&63](c[(c[c[k>>2]>>2]|0)+100>>2]|0,h,(c[m>>2]|0)+4+((c[f>>2]|0)-
1<<2)|0)|0;if(c[l>>2]|0){a=10;break}c[f>>2]=(c[f>>2]|0)+-1}if((a|0)==8){c[(c[k>>
;2]|0)+40>>2]=c[m>>2];break}else if((a|0)==10){n=c[l>>2]|0;i=o;return n|0}}while(0);c[(c[n>
x3e;2]|0)+44>>2]=-1;n=c[l>>2]|0;i=o;return n|0}function Bi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=i;i=i+32|0
;f=e+16|0;h=e+12|0;g=e+8|0;d=e+4|0;b=e;c[f>>2]=a;c[h>>2]=c[c[f>>2]>>2];c[g>>2]=
c[(c[h>>2]|0)+692>>2];c[d>>2]=c[(c[g>>2]|0)+2052>>2];c[b>>2]=Wc(c[(c
[(c[c[f>>2]>>2]|0)+96>>2]|0)+4>>2]|0,11524)|0;if(!((c[b>>2]|0)!=0&(c[d>
;>2]|0)!=0)){h=0;i=e;return h|0}if(!(c[c[d>>2]>>2]|0)){h=0;i=e;return h|0}h=Ta[c[c[d>>2]>
;>2]&63](c[b>>2]|0)|0;i=e;return h|0}function Ci(d,e){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;l
=k+16|0;f=k+12|0;h=k+8|0;j=k+4|0;g=k;c[l>>2]=d;c[f>>2]=e;c[h>>2]=(c[l>>2]|0)+172;Ns(c[f
x3e;>2]|0,0,196)|0;d=a[c[h>>2]>>0]|0;a[(c[f>>2]|0)+8>>0]=d;c[g>>2]=d&
;255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break
;b[(c[f>>2]|0)+12+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+4+(c[j>>2]<<
;2)>>2];c[j>>2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|0)+1>>0]|0;a[(c[f>>2]|0)+
9>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c
[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+40+(c[j>>2]<<1)>>1]=c[(c[h>
;>2]|0)+60+(c[j>>2]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|
0)+2>>0]|0;a[(c[f>>2]|0)+10>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if((c[
j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+60+(c[j>
x3e;2]<<1)>>1]=c[(c[h>>2]|0)+100+(c[j>>2]<<2)>>2];c[j>>2]=(
c[j>>2]|0)+1}l=a[(c[h>>2]|0)+3>>0]|0;a[(c[f>>2]|0)+11>>0]=l;c[g>>2]=
l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>
;0)break;b[(c[f>>2]|0)+88+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+156+(c[j>>2
]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}c[(c[f>>2]|0)+108>>2]=c[(c[h>
x3e;2]|0)+196>>2];c[(c[f>>2]|0)+112>>2]=c[(c[h>>2]|0)+200>>2];c[(c[f>>
;2]|0)+116>>2]=c[(c[h>>2]|0)+204>>2];b[(c[f>>2]|0)+120>>1]=c[(c[h>>2
]|0)+208>>2];b[(c[f>>2]|0)+122>>1]=c[(c[h>>2]|0)+212>>2];l=a[(c[h>>2
]|0)+216>>0]|0;a[(c[f>>2]|0)+124>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if
((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+128+(c[j
x3e;>2]<<1)>>1]=c[(c[h>>2]|0)+220+(c[j>>2]<<2)>>2];c[j>>
;2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|0)+217>>0]|0;a[(c[f>>2]|0)+125>>0]=l;c[g>
x3e;2]=l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>
;>0)break;b[(c[f>>2]|0)+154+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+272+(c[j>
x3e;2]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}a[(c[f>>2]|0)+126>>0]=a[(c[h>
;>2]|0)+324>>0]|0;c[(c[f>>2]|0)+184>>2]=c[(c[h>>2]|0)+336>>2];c[(c[f>
;>2]|0)+4>>2]=c[(c[h>>2]|0)+332>>2];i=k;return}function Di(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h
=0,j=0,k=0;h=i;i=i+32|0;j=h+24|0;g=h+20|0;k=h+16|0;b=h+12|0;f=h+8|0;d=h+4|0;e=h;c[j>>2]=a;c[g>>2]=c[j>
x3e;2];c[k>>2]=c[c[g>>2]>>2];c[b>>2]=c[(c[k>>2]|0)+692>>2];c[f>
x3e;2]=c[(c[j>>2]|0)+40>>2];if(!(c[f>>2]|0)){i=h;return}c[d>>2]=Bi(c[g>>2]|0)|
0;if(!(c[d>>2]|0)){i=h;return}Va[c[(c[d>>2]|0)+8>>2]&63](c[c[f>>2]>>2]|0);
c[e>>2]=c[(c[b>>2]|0)+1892>>2];while(1){if((c[e>>2]|0)>>>0<=0)break;
Va[c[(c[d>>2]|0)+8>>2]&63](c[(c[f>>2]|0)+4+((c[e>>2]|0)-1<<2)>>
2]|0);c[e>>2]=(c[e>>2]|0)+-1}i=h;return}function Ei(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;g=i;i=i+32|0;b=
g+20|0;j=g+16|0;h=g+12|0;f=g+8|0;e=g+4|0;d=g;c[b>>2]=a;c[j>>2]=c[(c[b>>2]|0)+4>>2];c[h
x3e;>2]=c[(c[j>>2]|0)+692>>2];c[f>>2]=c[(c[h>>2]|0)+2052>>2];if(!(c[f>
;>2]|0)){i=g;return 0}c[e>>2]=Wc(c[(c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2]|0)+4>>
;2]|0,11524)|0;if(!(c[e>>2]|0)){i=g;return 0}c[d>>2]=Ta[c[(c[f>>2]|0)+8>>2]&63](c[e
>>2]|0)|0;c[(c[(c[b>>2]|0)+156>>2]|0)+36>>2]=c[d>>2];i=g;return 0}function Fi(
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)+156>>2]|0)+36>>2]=0;i=b
;return}function Gi(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o+
20|0;j=o+16|0;k=o+12|0;l=o+8|0;n=o+4|0;m=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[n
x3e;>2]=c[g>>2];c[m>>2]=c[h>>2];if(!(c[n>>2]|0)){c[f>>2]=37;n=c[f>
x3e;2]|0;i=o;return n|0}if(!(c[m>>2]|0))c[k>>2]=c[k>>2]|3;if(c[k>>2]&1|0)c[m>
x3e;2]=0;if(c[m>>2]|0?(c[c[h>>2]>>2]|0)!=(c[(c[g>>2]|0)+4>>2]|0):0){c[f>
x3e;2]=35;n=c[f>>2]|0;i=o;return n|0}c[l>>2]=Hi(c[n>>2]|0,c[m>>2]|0,c[j>>2]|0,
c[k>>2]|0)|0;c[f>>2]=c[l>>2];n=c[f>>2]|0;i=o;return n|0}function Hi(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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;V=i;i=i+1120|0;A=V+1092|0;B=V+1088|0;C=V+1084|0;x=V+1080|0;D=V+1076|0;I=V+1072|0;H=V+144
|0;J=V+140|0;O=V+1113|0;M=V+1112|0;r=V+136|0;K=V+120|0;L=V+112|0;k=V+108|0;m=V+104|0;n=V+100|0;l=V+1104|0;q=V+96|0;p=V+92|0;o=V+
1101|0;s=V+88|0;t=V+84|0;u=V+80|0;v=V+64|0;w=V+56|0;F=V+40|0;P=V+32|0;E=V+24|0;N=V+1100|0;z=V+1098|0;y=V+1096|0;Q=V+16|0;G=V+12|
0;R=V+8|0;S=V+4|0;T=V;c[B>>2]=f;c[C>>2]=g;c[x>>2]=h;c[D>>2]=j;c[J>>2]=c[(c[B
x3e;>2]|0)+4>>2];c[r>>2]=c[(c[J>>2]|0)+692>>2];a[M>>0]=0;if((c[(c[r>
x3e;2]|0)+1324+128>>2]|0)!=65535?c[(c[r>>2]|0)+1152+12>>2]|0:0){if(c[x>>2]|0?(c[x>
x3e;2]=pi((c[r>>2]|0)+1152|0,c[x>>2]|0)|0,(c[x>>2]|0)==0):0){c[A>>2]=6;U=c[A>>
2]|0;i=V;return U|0}}else U=6;if((U|0)==6?(c[x>>2]|0)>>>0>=(c[(c[r>>2]|0)+12>>
2]|0)>>>0:0){c[A>>2]=6;U=c[A>>2]|0;i=V;return U|0}if(c[D>>2]&1024|0)c[D>
x3e;2]=c[D>>2]|3;c[(c[B>>2]|0)+164>>2]=65536;c[(c[B>>2]|0)+168>>2]=65536;if(c[
C>>2]|0){c[(c[B>>2]|0)+164>>2]=c[(c[C>>2]|0)+12+4>>2];c[(c[B>>2]|0)+
168>>2]=c[(c[C>>2]|0)+12+8>>2]}if((((c[C>>2]|0?(c[k>>2]=c[c[C>>2]>
;>2],c[m>>2]=c[(c[k>>2]|0)+532>>2],c[n>>2]=c[(c[k>>2]|0)+104>>2
],(c[(c[C>>2]|0)+44>>2]|0)!=-1):0)?c[(c[m>>2]|0)+140>>2]|0:0)?(c[D>>2]&8|
0)==0:0)?(c[I>>2]=Na[c[(c[m>>2]|0)+104>>2]&1](c[J>>2]|0,c[(c[C>>2]|0)+44
x3e;>2]|0,c[x>>2]|0,c[D>>2]|0,c[n>>2]|0,(c[B>>2]|0)+76|0,l)|0,(c[I>>2]|0)==
0):0){b[(c[B>>2]|0)+108+2>>1]=0;b[(c[B>>2]|0)+108>>1]=0;c[(c[B>>2]|0)+24>
x3e;2]=d[l+1>>0]<<6;c[(c[B>>2]|0)+24+4>>2]=d[l>>0]<<6;c[(c[B>
x3e;2]|0)+24+8>>2]=a[l+2>>0]<<6;c[(c[B>>2]|0)+24+12>>2]=a[l+3>>0]<
;<6;c[(c[B>>2]|0)+24+16>>2]=d[l+4>>0]<<6;c[(c[B>>2]|0)+24+20>>2
]=a[l+5>>0]<<6;c[(c[B>>2]|0)+24+24>>2]=a[l+6>>0]<<6;c[(c[B>>
;2]|0)+24+28>>2]=d[l+7>>0]<<6;c[(c[B>>2]|0)+72>>2]=1651078259;if(c[D>>
;2]&16|0){c[(c[B>>2]|0)+100>>2]=a[l+5>>0];c[(c[B>>2]|0)+104>>2]=a[l+6>
;>0]}else{c[(c[B>>2]|0)+100>>2]=a[l+2>>0];c[(c[B>>2]|0)+104>>2]=a[l+3>
;>0]}c[A>>2]=c[I>>2];U=c[A>>2]|0;i=V;return U|0}if(c[D>>2]&16384|0){c[A>
x3e;2]=6;U=c[A>>2]|0;i=V;return U|0}k=c[r>>2]|0;if(c[(c[r>>2]|0)+1892>>2]|0){a[o>
x3e;0]=Ii(k+2024|0,c[x>>2]|0)|0;if((d[o>>0]|0)>>>0>=(c[(c[r>>2]|0)+1892>
x3e;2]|0)>>>0)a[o>>0]=(c[(c[r>>2]|0)+1892>>2]|0)-1;c[q>>2]=c[(c[r>
x3e;2]|0)+1324+64>>2];c[p>>2]=c[(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|
0)+64>>2];n=(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|0)+48|0;c[K>>2]=c[n
>>2];c[K+4>>2]=c[n+4>>2];c[K+8>>2]=c[n+8>>2];c[K+12>>2]=c[n+12>
x3e;2];o=(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|0)+68|0;c[L>>2]=c[o>>2
];c[L+4>>2]=c[o+4>>2];if((c[q>>2]|0)!=(c[p>>2]|0)){o=xb(c[(c[B>>2]|0)+164>
;>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[(c[B>>2]|0)+164>>2]=o;q=xb(c[(c[B>>2]|0)+
168>>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[(c[B>>2]|0)+168>>2]=q;a[M>>0]=1}}
else{q=k+1324+48|0;c[K>>2]=c[q>>2];c[K+4>>2]=c[q+4>>2];c[K+8>>2]=c[q+8>
x3e;2];c[K+12>>2]=c[q+12>>2];q=(c[r>>2]|0)+1324+68|0;c[L>>2]=c[q>>2];c[L+4>
;>2]=c[q+4>>2]}b[(c[B>>2]|0)+108+2>>1]=0;b[(c[B>>2]|0)+108>>1]=0;if(!(c[D
>>2]&1))k=(c[D>>2]&2|0)==0;else k=0;a[O>>0]=k&1;c[(c[B>>2]|0)+72>>
;2]=1869968492;Ji(H,c[J>>2]|0,c[C>>2]|0,c[B>>2]|0,a[O>>0]|0,c[D>>2]>>
;16&15);if(c[D>>2]&256|0)a[H+753>>0]=1;a[H+66>>0]=c[D>>2]&0;c[I>>
;2]=Mi(c[J>>2]|0,c[x>>2]|0,s,t)|0;do if(((c[I>>2]|0)==0?(c[I>>2]=Ni(H,c[C>>2]|
0,c[x>>2]|0)|0,(c[I>>2]|0)==0):0)?(c[I>>2]=Oi(H,c[s>>2]|0,c[t>>2]|0)|0,Yi(c[J
x3e;>2]|0,s,c[t>>2]|0),(c[I>>2]|0)==0):0){if(c[(c[(c[J>>2]|0)+128>>2]|0)+52>
x3e;2]|0){c[(c[B>>2]|0)+136>>2]=0;c[(c[B>>2]|0)+140>>2]=0;break}c[u>>2]=(c[r
x3e;>2]|0)+1176;if(c[(c[u>>2]|0)+24>>2]|0){c[(c[B>>2]|0)+136>>2]=(c[(c[u>>
;2]|0)+28>>2]|0)+(c[(c[(c[u>>2]|0)+24>>2]|0)+(c[x>>2]<<2)>>2]|0)+-1;
c[(c[B>>2]|0)+140>>2]=c[t>>2]}}while(0);if(!(c[I>>2]|0))Zi(H);if(((c[I>>2]|0)==
0?c[(c[(c[J>>2]|0)+128>>2]|0)+52>>2]|0:0)?c[(c[c[(c[(c[J>>2]|0)+128>>2]|0)+52
x3e;>2]>>2]|0)+8>>2]|0:0){c[v>>2]=c[H+32>>2];c[v+4>>2]=0;c[v+8>>
;2]=c[H+40>>2];c[v+12>>2]=c[H+40+4>>2];c[I>>2]=Wa[c[(c[c[(c[(c[J>>2]|0)+128>
;>2]|0)+52>>2]>>2]|0)+8>>2]&31](c[(c[(c[(c[J>>2]|0)+128>>2]|0)+52>
;>2]|0)+4>>2]|0,c[x>>2]|0,0,v)|0;c[H+32>>2]=c[v>>2];c[H+40>>2]=c[v+8>
;>2];c[H+40+4>>2]=c[v+12>>2]}do if(!(c[I>>2]|0)){k=c[B>>2]|0;if(c[D>>2]
x26;1024|0){c[w>>2]=c[k+156>>2];c[(c[B>>2]|0)+24+8>>2]=c[H+32>>2];c[(c[B>
x3e;2]|0)+24+16>>2]=c[H+744>>2];U=(c[w>>2]|0)+12|0;c[U>>2]=c[K>>2];c[U+4>
x3e;2]=c[K+4>>2];c[U+8>>2]=c[K+8>>2];c[U+12>>2]=c[K+12>>2];U=(c[w>>2
]|0)+28|0;c[U>>2]=c[L>>2];c[U+4>>2]=c[L+4>>2];a[(c[w>>2]|0)+8>>0]=1;
break}c[P>>2]=k+24;c[(c[P>>2]|0)+16>>2]=c[H+744>>2];c[(c[B>>2]|0)+56>>
;2]=c[H+744>>2];a[(c[(c[B>>2]|0)+156>>2]|0)+8>>0]=0;if(d[(c[J>>2]|0)+296>
x3e;0]|0?(e[(c[J>>2]|0)+300+34>>1]|0)>0:0)k=(c[(c[J>>2]|0)+300+36>>2]|0)!=0;else k=
0;a[N>>0]=k&1;do if(!(a[N>>0]|0)){k=c[J>>2]|0;if((e[(c[J>>2]|0)+368>>1]|0
)!=65535){c[(c[P>>2]|0)+28>>2]=(b[k+368+70>>1]|0)-(b[(c[J>>2]|0)+368+72>>1]|0);
break}else{c[(c[P>>2]|0)+28>>2]=(b[k+216+4>>1]|0)-(b[(c[J>>2]|0)+216+6>>1]|0);
break}}else{b[z>>1]=0;b[y>>1]=0;Za[c[(c[(c[J>>2]|0)+532>>2]|0)+156>>2]&31
](c[J>>2]|0,1,c[x>>2]|0,z,y)|0;c[(c[P>>2]|0)+24>>2]=b[z>>1];c[(c[P>>
2]|0)+28>>2]=e[y>>1]}while(0);c[(c[B>>2]|0)+60>>2]=c[(c[P>>2]|0)+28>>
;2];c[(c[B>>2]|0)+72>>2]=1869968492;c[(c[B>>2]|0)+108+16>>2]=0;if(c[C>>2]|0?(e
[(c[C>>2]|0)+12+2>>1]|0)<24:0){J=(c[B>>2]|0)+108+16|0;c[J>>2]=c[J>>2]|256
}J=(c[B>>2]|0)+108+16|0;c[J>>2]=c[J>>2]|4;do if((c[K>>2]|0)==65536?(c[K+12>>2]|
0)==65536:0){if(c[K+4>>2]|0){U=64;break}if(c[K+8>>2]|0)U=64}else U=64;while(0);if((U|0)==64)Kb((c[B>>
;2]|0)+108|0,K);if(!((c[L>>2]|0)==0?!(c[L+4>>2]|0):0))Nb((c[B>>2]|0)+108|0,c[L>>2]|0,c[L
+4>>2]|0);c[E>>2]=c[(c[P>>2]|0)+16>>2];c[E+4>>2]=0;Lb(E,K);c[(c[P>>2
]|0)+16>>2]=(c[E>>2]|0)+(c[L>>2]|0);c[E>>2]=0;c[E+4>>2]=c[(c[P>>2]|0
)+28>>2];Lb(E,K);c[(c[P>>2]|0)+28>>2]=(c[E+4>>2]|0)+(c[L+4>>2]|0);if(!((c[D>
;>2]&1|0)!=0?!(d[M>>0]|0):0)){c[G>>2]=(c[B>>2]|0)+108;c[R>>2]=c[(c[G>>
;2]|0)+4>>2];c[S>>2]=c[(c[B>>2]|0)+164>>2];c[T>>2]=c[(c[B>>2]|0)+168
>>2];if(!(a[O>>0]|0?(c[H+68>>2]|0)!=0:0))U=72;a:do if((U|0)==72){c[Q>>2]=b[(c[G>>
;2]|0)+2>>1];while(1){if((c[Q>>2]|0)<=0)break a;U=Mb(c[c[R>>2]>>2]|0,c[S>>
;2]|0)|0;c[c[R>>2]>>2]=U;U=Mb(c[(c[R>>2]|0)+4>>2]|0,c[T>>2]|0)|0;c[(c[R>
x3e;2]|0)+4>>2]=U;c[Q>>2]=(c[Q>>2]|0)+-1;c[R>>2]=(c[R>>2]|0)+8}}while(0);U=Mb(
c[(c[P>>2]|0)+16>>2]|0,c[S>>2]|0)|0;c[(c[P>>2]|0)+16>>2]=U;U=Mb(c[(c[P>
x3e;2]|0)+28>>2]|0,c[T>>2]|0)|0;c[(c[P>>2]|0)+28>>2]=U}_d((c[B>>2]|0)+108|0,F);
c[c[P>>2]>>2]=(c[F+8>>2]|0)-(c[F>>2]|0);c[(c[P>>2]|0)+4>>2]=(c[F+12
x3e;>2]|0)-(c[F+4>>2]|0);c[(c[P>>2]|0)+8>>2]=c[F>>2];c[(c[P>>2]|0)+12>
;>2]=c[F+12>>2];if(a[N>>0]|0){c[(c[P>>2]|0)+20>>2]=(c[(c[P>>2]|0)+8>
x3e;2]|0)-((c[(c[P>>2]|0)+16>>2]|0)/2|0);break}if(!(c[D>>2]&16))break;Bd(c[P>>2]|0,
c[(c[P>>2]|0)+28>>2]|0)}while(0);c[A>>2]=c[I>>2];U=c[A>>2]|0;i=V;return U|0}function
Ii(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;o=i;i=i+32|0;j=o+20|0;f=o+16|0;k=o+25|0;g=o+12|0;h=o+8|0;l=o+24|0;m
=o+4|0;n=o;c[j>>2]=b;c[f>>2]=e;a[k>>0]=0;switch(d[c[j>>2]>>0]|0|0){case 0:{a[k
>>0]=a[(c[(c[j>>2]|0)+8>>2]|0)+(c[f>>2]|0)>>0]|0;n=a[k>>0]|0;i=o;return
n|0}case 3:{b=c[j>>2]|0;if(((c[f>>2]|0)-(c[(c[j>>2]|0)+16>>2]|0)|0)>>>0
x3c;(c[(c[j>>2]|0)+20>>2]|0)>>>0){a[k>>0]=a[b+24>>0]|0;n=a[k>>0
]|0;i=o;return n|0}c[g>>2]=c[b+8>>2];c[h>>2]=(c[g>>2]|0)+(c[(c[j>>2]|0)+12>
;>2]|0);c[g>>2]=(c[g>>2]|0)+2;c[m>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[g>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;while(1){if((c[f>>
2]|0)>>>0<(c[m>>2]|0)>>>0){b=10;break}e=c[g>>2]|0;c[g>>2]=e+1;a
[l>>0]=a[e>>0]|0;c[g>>2]=(c[g>>2]|0)+2;c[n>>2]=(((d[(c[g>>2]|0)+-2
x3e;>0]|0)&65535)<<8|((d[(c[g>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if
((c[f>>2]|0)>>>0<(c[n>>2]|0)>>>0){b=8;break}c[m>>2]=c[n>
x3e;2];if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>>0){b=10;break}}if((b|0)==8){a[k
x3e;>0]=a[l>>0]|0;c[(c[j>>2]|0)+16>>2]=c[m>>2];c[(c[j>>2]|0)+20>>
;2]=(c[n>>2]|0)-(c[m>>2]|0);a[(c[j>>2]|0)+24>>0]=a[l>>0]|0;n=a[k>>0]|
0;i=o;return n|0}else if((b|0)==10){n=a[k>>0]|0;i=o;return n|0}break}default:{n=a[k>>0]|0;i=o;return n|0}}return
0}function Ji(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;j=i;i=i+32|0;k=j+20|0;q=j+16
|0;p=j+12|0;o=j+8|0;n=j+24|0;l=j+4|0;m=j;c[k>>2]=b;c[q>>2]=d;c[p>>2]=e;c[o>>2]=f;a[n>
;>0]=g;c[l>>2]=h;c[m>>2]=c[(c[q>>2]|0)+692>>2];Ns(c[k>>2]|0,0,928)|0;Ki(c
[k>>2]|0,c[q>>2]|0,c[p>>2]|0,c[o>>2]|0,a[n>>0]|0);c[(c[k>>2]|0)+76
x3e;>2]=c[m>>2];c[(c[k>>2]|0)+892>>2]=c[(c[m>>2]|0)+84+8>>2];c[(c[k>
x3e;2]|0)+908>>2]=c[(c[m>>2]|0)+1308>>2];f=Li(c[(c[m>>2]|0)+1324+44>>2]|0,c[(c
[k>>2]|0)+892>>2]|0)|0;c[(c[k>>2]|0)+900>>2]=f;c[(c[k>>2]|0)+920>>2]=
c[l>>2];i=j;return}function Ki(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;p=i;i=i+32
|0;j=p+20|0;q=p+16|0;k=p+12|0;l=p+8|0;m=p+24|0;o=p+4|0;n=p;c[j>>2]=b;c[q>>2]=e;c[k>>2]=f;c[l>
x3e;2]=g;a[m>>0]=h;a[(c[j>>2]|0)+64>>0]=0;a[(c[j>>2]|0)+65>>0]=1;c[(c[j>
x3e;2]|0)+4>>2]=c[q>>2];c[(c[j>>2]|0)+8>>2]=c[l>>2];c[c[j>>2]>
x3e;2]=c[(c[q>>2]|0)+100>>2];if(c[l>>2]|0?(c[o>>2]=c[c[(c[l>>2]|0)+156>
x3e;2]>>2],c[(c[j>>2]|0)+12>>2]=c[o>>2],c[(c[j>>2]|0)+16>>2]=(c[o>
;>2]|0)+20,c[(c[j>>2]|0)+20>>2]=(c[o>>2]|0)+56,dc(c[o>>2]|0),c[(c[j>>2]|0
)+72>>2]=0,c[(c[j>>2]|0)+68>>2]=0,(d[m>>0]|0|0)!=0&(c[k>>2]|0)!=0):0){c[n
>>2]=c[(c[k>>2]|0)+40>>2];c[(c[j>>2]|0)+72>>2]=c[c[n>>2]>>
2];c[(c[j>>2]|0)+68>>2]=c[(c[(c[l>>2]|0)+156>>2]|0)+36>>2]}c[(c[j>>2
]|0)+24>>2]=0;c[(c[j>>2]|0)+28>>2]=0;c[(c[j>>2]|0)+32>>2]=0;c[(c[j>>
2]|0)+32+4>>2]=0;c[(c[j>>2]|0)+40>>2]=0;c[(c[j>>2]|0)+40+4>>2]=0;i=p;return}function
Li(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[d>>2]=b;do if((c[g>
;>2]|0)!=1){if((c[d>>2]|0)>>>0<1240){c[e>>2]=107;break}if((c[d>>2]|0)>
;>>0<33900){c[e>>2]=1131;break}else{c[e>>2]=32768;break}}else c[e>>2]=0;while(0);i=
f;return c[e>>2]|0}function Mi(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;o=i;i=i+48|0;f
=o+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;m=o+8|0;n=o+4|0;l=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k
x3e;>2]=e;a=c[g>>2]|0;if(c[(c[(c[g>>2]|0)+128>>2]|0)+52>>2]|0){c[n>>2]=Oa
[c[c[c[(c[a+128>>2]|0)+52>>2]>>2]>>2]&63](c[(c[(c[(c[g>>2]|0)+128>
x3e;2]|0)+52>>2]|0)+4>>2]|0,c[h>>2]|0,m)|0;c[c[j>>2]>>2]=c[m>>2];c[c
[k>>2]>>2]=c[m+4>>2];c[f>>2]=c[n>>2];n=c[f>>2]|0;i=o;return n|0}else
{c[l>>2]=c[a+692>>2];c[f>>2]=Zh((c[l>>2]|0)+1176|0,c[h>>2]|0,c[j>>2]|
0,c[k>>2]|0)|0;n=c[f>>2]|0;i=o;return n|0}return 0}function Ni(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;q=i;i=i+48|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;l=q+12|0;p=q+8|0;m=q+4|0;n=q+32|0;o=q;c[g>>2]=
b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=c[g>>2];c[l>>2]=c[(c[(c[k>>2]|0)+4>
;>2]|0)+692>>2];c[p>>2]=(c[l>>2]|0)+1324;c[m>>2]=0;do if(c[(c[l>>2]|0)+1892
>>2]|0){a[n>>0]=Ii((c[l>>2]|0)+2024|0,c[j>>2]|0)|0;if((d[n>>0]|0)>>
x3e;0>=(c[(c[l>>2]|0)+1892>>2]|0)>>>0){c[m>>2]=3;p=c[m>>2]|0;i=q;return
p|0}else{c[p>>2]=c[(c[l>>2]|0)+1896+((d[n>>0]|0)<<2)>>2];if(!(c[h>>
2]|0?(c[(c[k>>2]|0)+68>>2]|0)!=0:0))break;c[o>>2]=c[(c[h>>2]|0)+40>>2];c[(c[k
x3e;>2]|0)+72>>2]=c[(c[o>>2]|0)+4+((d[n>>0]|0)<<2)>>2];break}}while(0);c[(
c[g>>2]|0)+888>>2]=c[(c[p>>2]|0)+532+8>>2];c[(c[g>>2]|0)+904>>2]=c[(
c[p>>2]|0)+564>>2];e=Li(c[(c[(c[g>>2]|0)+76>>2]|0)+1324+44>>2]|0,c[(c[g>
x3e;2]|0)+888>>2]|0)|0;c[(c[g>>2]|0)+896>>2]=e;c[(c[g>>2]|0)+744>>2]=c[(c[p>
;>2]|0)+172+352>>2];c[(c[g>>2]|0)+748>>2]=c[(c[p>>2]|0)+172+356>>2];p=c[m
>>2]|0;i=q;return p|0}function Oi(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,$=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;ta=i;i=i+272|0;h=
ta+256|0;j=ta+252|0;va=ta+248|0;ua=ta+244|0;y=ta+240|0;ra=ta+236|0;K=ta+232|0;L=ta+228|0;m=ta+224|0;pa=ta+220|0;qa=ta+216|0;$=ta
+212|0;ca=ta+208|0;n=ta+204|0;A=ta+200|0;W=ta+196|0;la=ta+260|0;ba=ta+192|0;ma=ta+188|0;l=ta+184|0;T=ta+180|0;Z=ta+176|0;aa=ta+172
|0;X=ta+168|0;M=ta+164|0;N=ta+160|0;O=ta+156|0;Y=ta+152|0;P=ta+148|0;V=ta+144|0;Q=ta+140|0;U=ta+136|0;R=ta+132|0;ea=ta+128|0;fa=
ta+124|0;da=ta+120|0;ga=ta+116|0;w=ta+112|0;x=ta+108|0;B=ta+104|0;s=ta+100|0;ha=ta+96|0;v=ta+92|0;z=ta+88|0;k=ta+84|0;t=ta+80|0;
_=ta+76|0;S=ta+72|0;ia=ta+68|0;E=ta+64|0;u=ta+60|0;F=ta+56|0;ja=ta+52|0;C=ta+48|0;ka=ta+44|0;D=ta+40|0;na=ta+36|0;G=ta+32|0;H=ta
+28|0;oa=ta+24|0;o=ta+20|0;p=ta+16|0;q=ta+12|0;r=ta+8|0;I=ta+4|0;J=ta;c[j>>2]=e;c[va>>2]=f;c[ua>>2
]=g;c[m>>2]=c[j>>2];c[n>>2]=c[(c[(c[j>>2]|0)+76>>2]|0)+1324+44>>2];c
[(c[j>>2]|0)+756>>2]=0;a[(c[j>>2]|0)+752>>0]=1;c[$>>2]=$^j^va;e=(c[$>>
;2]^c[$>>2]>>10^c[$>>2]>>20)&65535;c[$>>2]=e;c[$>>2]=(c[$>
x3e;2]|0)==0?29572:e;c[(c[j>>2]|0)+276>>2]=(c[j>>2]|0)+80;c[(c[j>>2]|0)+676>>2
]=(c[j>>2]|0)+280;c[ra>>2]=(c[j>>2]|0)+280;c[ca>>2]=c[(c[j>>2]|0)+276>>
;2];c[A>>2]=c[(c[m>>2]|0)+68>>2];a[(c[m>>2]|0)+64>>0]=0;c[c[ra>>2]
x3e;>2]=c[va>>2];e=(c[va>>2]|0)+(c[ua>>2]|0)|0;c[(c[ra>>2]|0)+4>>2]=e;c[L
>>2]=e;e=c[c[ra>>2]>>2]|0;c[(c[ra>>2]|0)+8>>2]=e;c[K>>2]=e;c[y>
x3e;2]=0;c[pa>>2]=c[(c[m>>2]|0)+24>>2];c[qa>>2]=c[(c[m>>2]|0)+28>>2];
if(c[A>>2]|0)Va[c[(c[A>>2]|0)+4>>2]&63](c[c[A>>2]>>2]|0);a:while(1){if((c
[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0){sa=307;break}va=c[K>>2]|0;c[K
x3e;>2]=va+1;a[la>>0]=a[va>>0]|0;if((d[la>>0]|0)<32?(d[la>>0]|0)!=28:0){c[l>
;>2]=c[(c[j>>2]|0)+276>>2];c[T>>2]=((c[l>>2]|0)-((c[j>>2]|0)+80)|0)/4|0;c
[W>>2]=0;b:do switch(d[la>>0]|0){case 1:{c[W>>2]=19;break}case 3:{c[W>>2]=20;break}case
4:{c[W>>2]=3;break}case 5:{c[W>>2]=4;break}case 6:{c[W>>2]=5;break}case 7:{c[W>>2]=6;break
}case 8:{c[W>>2]=7;break}case 9:{c[W>>2]=53;break}case 10:{c[W>>2]=49;break}case 11:{c[W>>
;2]=51;break}case 12:{if((c[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0)break a;va=c[K
x3e;>2]|0;c[K>>2]=va+1;a[la>>0]=a[va>>0]|0;do switch(d[la>>0]|0){case 0:{c[W>
x3e;2]=25;break b}case 1:{c[W>>2]=20;break b}case 2:{c[W>>2]=19;break b}case 3:{c[W>>2]=44;break b
}case 4:{c[W>>2]=45;break b}case 5:{c[W>>2]=46;break b}case 6:{c[W>>2]=56;break b}case 7:{c[W>
;>2]=57;break b}case 8:{c[W>>2]=42;break b}case 9:{c[W>>2]=26;break b}case 10:{c[W>>2]=27;break
b}case 11:{c[W>>2]=28;break b}case 12:{c[W>>2]=29;break b}case 13:{c[W>>2]=43;break b}case 14:{c[
W>>2]=30;break b}case 15:{c[W>>2]=47;break b}case 16:{c[W>>2]=54;break b}case 17:{c[W>>2
]=55;break b}case 18:{c[W>>2]=35;break b}case 20:{c[W>>2]=40;break b}case 21:{c[W>>2]=41;break b}case
22:{c[W>>2]=48;break b}case 23:{c[W>>2]=31;break b}case 24:{c[W>>2]=32;break b}case 26:{c[W>
x3e;2]=33;break b}case 27:{c[W>>2]=39;break b}case 28:{c[W>>2]=36;break b}case 29:{c[W>>2]=37;break
b}case 30:{c[W>>2]=38;break b}case 33:{c[W>>2]=58;break b}case 34:{c[W>>2]=15;break b}case 35:{c[
W>>2]=14;break b}case 36:{c[W>>2]=16;break b}case 37:{c[W>>2]=17;break b}default:{c[K>>2
]=(c[K>>2]|0)+-1;break b}}while(0)}case 13:{c[W>>2]=52;break}case 14:{c[W>>2]=18;break}case 16:{c[
W>>2]=34;break}case 18:{c[W>>2]=21;break}case 19:{c[W>>2]=23;break}case 20:{c[W>>2]=24;break
}case 21:{c[W>>2]=1;break}case 22:{c[W>>2]=2;break}case 23:{c[W>>2]=22;break}case 24:{c[W>>
;2]=10;break}case 25:{c[W>>2]=11;break}case 26:{c[W>>2]=13;break}case 27:{c[W>>2]=8;break}case 29:{
c[W>>2]=50;break}case 30:{c[W>>2]=12;break}case 31:{c[W>>2]=9;break}default:{}}while(0);if(!(c[W
x3e;>2]|0))break;c[Z>>2]=d[11281+(c[W>>2]|0)>>0];if(c[Z>>2]&128|0){if((c[T>
;>2]|0)>0?d[(c[j>>2]|0)+752>>0]|0:0){switch(c[W>>2]|0){case 3:case 2:{c[aa>>2]=
c[T>>2]&2;break}case 24:case 23:case 1:case 22:case 21:case 20:case 19:{c[aa>>2]=c[T>>2]&
;1;break}case 18:{c[aa>>2]=((c[T>>2]|0)==5?1:(c[T>>2]|0)==1)&1;break}default:c[aa>>
2]=0}if(c[aa>>2]|0){c[(c[j>>2]|0)+744>>2]=(c[(c[j>>2]|0)+748>>2]|0)+(c[c[ca>
;>2]>>2]>>16);if(a[(c[j>>2]|0)+753>>0]|0){sa=307;break}c[T>>2]=(c[T>
x3e;2]|0)+-1}}a[(c[j>>2]|0)+752>>0]=0;c[Z>>2]=0}c[Z>>2]=c[Z>>2]&15;if((c[
T>>2]|0)<(c[Z>>2]|0)){sa=309;break}c[l>>2]=(c[l>>2]|0)+(0-(c[Z>>2]|0)<
;<2);c[T>>2]=(c[T>>2]|0)-(c[Z>>2]|0);do switch(c[W>>2]|0){case 56:{sa=220;break a}case
18:{sa=221;break a}case 22:case 21:case 20:case 19:{if(c[A>>2]|0)_a[c[(c[A>>2]|0)+12>>2]&15](
c[c[A>>2]>>2]|0,((c[W>>2]|0)==19?1:(c[W>>2]|0)==21)&1,(c[T>>2]|0)/2|0,(c[
l>>2]|0)+(0-(c[T>>2]&-2)<<2)|0);va=(c[j>>2]|0)+756|0;c[va>>2]=(c[va>
x3e;2]|0)+((c[T>>2]|0)/2|0);c[l>>2]=c[ca>>2];break}case 24:case 23:{if((c[T>>2]|0)>
0){if(c[A>>2]|0)_a[c[(c[A>>2]|0)+12>>2]&15](c[c[A>>2]>>2]|0,0,(c[T>
x3e;2]|0)/2|0,(c[l>>2]|0)+(0-(c[T>>2]&-2)<<2)|0);va=(c[j>>2]|0)+756|0;c[va>>
;2]=(c[va>>2]|0)+((c[T>>2]|0)/2|0)}if(((c[K>>2]|0)+((c[(c[j>>2]|0)+756>>2]|0)+
7>>3)|0)>>>0>=(c[L>>2]|0)>>>0)break a;do if(c[A>>2]|0){f=c[A>
;>2]|0;if((c[W>>2]|0)==23){_a[c[f+16>>2]&15](c[c[A>>2]>>2]|0,b[(c[(c[m>
x3e;2]|0)+20>>2]|0)+2>>1]|0,c[(c[j>>2]|0)+756>>2]|0,c[K>>2]|0);break}else{Ua[c
[f+20>>2]&31](c[c[A>>2]>>2]|0,c[(c[j>>2]|0)+756>>2]|0,c[K>>2]|0
);break}}while(0);c[K>>2]=(c[K>>2]|0)+((c[(c[j>>2]|0)+756>>2]|0)+7>>3);c[l>
;>2]=c[ca>>2];break}case 1:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64>>0]=0;c[pa>>2]=(
c[pa>>2]|0)+(c[(c[l>>2]|0)+-8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>
2]|0)+-4>>2]|0);c[l>>2]=c[ca>>2];break}case 3:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64
x3e;>0]=0;c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+-4>>2]|0);c[l>>2]=c[ca>
;>2];break}case 2:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64>>0]=0;c[pa>>2]=(c[pa>>2
]|0)+(c[(c[l>>2]|0)+-4>>2]|0);c[l>>2]=c[ca>>2];break}case 4:{if(Qi(c[m>>2]|0,c
[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[T>>2]|0)/2|0)|0){sa=307;break
a}if((c[T>>2]|0)<2){sa=309;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[T>>2]&-2)<
x3c;2);while(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>
;0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|
0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>
;2]=(c[l>>2]|0)+8}c[l>>2]=c[ca>>2];break}case 6:case 5:{c[X>>2]=(c[W>>2]|0)==5
&1;if((c[T>>2]|0)<1){sa=309;break a}if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){
sa=307;break a}if(Ti(c[m>>2]|0,c[T>>2]|0)|0){sa=307;break a}c[l>>2]=c[ca>>2];while(1){if
((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;f=c[c[l
x3e;>2]>>2]|0;if(c[X>>2]|0)c[pa>>2]=(c[pa>>2]|0)+f;else c[qa>>2]=(c[qa>
;>2]|0)+f;if(Si(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>
;>2]|0)+4;c[X>>2]=c[X>>2]^1}c[l>>2]=c[ca>>2];break}case 7:{if((c[T>>2]|0)
x3c;6){sa=309;break a}c[M>>2]=(c[T>>2]|0)-((c[T>>2]|0)%6|0);if(Qi(c[m>>2]|0,c[pa>
x3e;2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[M>>2]|0)/2|0)|0){sa=307;break a}c[l>
;>2]=(c[l>>2]|0)+(0-(c[M>>2]|0)<<2);while(1){if((c[l>>2]|0)>>>0>
;=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>
x3e;2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>
2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>
;2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>
x3e;2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>
;>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0,1);c[l>>2]=(c[l>>2]|0)+24}c[l>>2]=c[ca>>2];break}case 13:{if((c[T>
x3e;2]|0)<4){sa=309;break a}c[N>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0)-(
c[N>>2]|0)|0)>0)c[N>>2]=(c[N>>2]|0)+1;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[N>>2]|0)<<2);if(c[N>>
2]&1|0){c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2
]|0)+4;c[N>>2]=(c[N>>2]|0)+-1}if(Ti(c[m>>2]|0,((c[N>>2]|0)/4|0)*3|0)|0){sa=307;break a}while
(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;c[qa
>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>
;>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[qa
>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c
[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+16}c[l>>2]=c[ca>>2];break}case 8:{if((c[T>
;>2]|0)<4){sa=309;break a}c[O>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0
)-(c[O>>2]|0)|0)>0)c[O>>2]=(c[O>>2]|0)+1;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[O>>2]|0)<<2);if(c[O>>
;2]&1|0){c[qa>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>
2]|0)+4;c[O>>2]=(c[O>>2]|0)+-1}if(Ti(c[m>>2]|0,((c[O>>2]|0)/4|0)*3|0)|0){sa=307;break a}
while(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break
;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa
>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[
qa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0
,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+16}c[l>>2]=c[ca>>2];break}case 9:case
12:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if((c[T>>2]|0)<4){sa=309
;break a}c[P>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0)-(c[P>>2]|0)|0)
x3e;0)c[P>>2]=(c[P>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+(0-(c[P>>2]|0)<<2);if
(Ti(c[m>>2]|0,((c[P>>2]|0)/4|0)*3|0)|0){sa=309;break a}c[Y>>2]=(c[W>>2]|0)==9&1;while
(1){if((c[P>>2]|0)<4)break;c[P>>2]=(c[P>>2]|0)-4;f=c[c[l>>2]>>2]|0;if(c[Y
>>2]|0){c[pa>>2]=(c[pa>>2]|0)+f;Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0
);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0
)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[qa>>
;2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);if((c[P>>2]|0)==1)c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1)}else
{c[qa>>2]=(c[qa>>2]|0)+f;Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>
;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
x3e;2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
x3e;2]|0)+(c[(c[l>>2]|0)+12>>2]|0);if((c[P>>2]|0)==1)c[qa>>2]=(c[qa>>2]|0)+(c[(
c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1)}c[l>>2]=(
c[l>>2]|0)+16;c[Y>>2]=c[Y>>2]^1}c[l>>2]=c[ca>>2];break}case 11:{if((c[T>
x3e;2]|0)<8){sa=309;break a}c[Q>>2]=c[T>>2]&-2;c[V>>2]=((c[Q>>2]|0)-6|0)/2|0;if
(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[V>>2
]|0)+3|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[Q>>2]|0)<<2);while(1){va=(c[V>
;>2]|0)>0;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>
;>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);f=c[m>>2]|0;g=c[pa>>2]|0;e=c[qa>>2]|0;if(!
va)break;Ui(f,g,e,1);c[l>>2]=(c[l>>2]|0)+8;c[V>>2]=(c[V>>2]|0)+-1}Ui(f,g,e,0);c[pa>
x3e;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
;>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20
x3e;>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case
10:{if((c[T>>2]|0)<8){sa=309;break a}c[R>>2]=(c[T>>2]|0)-2;c[R>>2]=(c[R>>
;2]|0)-((c[R>>2]|0)%6|0)+2;c[U>>2]=((c[R>>2]|0)-2|0)/6|0;if(Qi(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,((c[U>>2]|0)*3|0)+2|0)|0){sa=307;break a}c[l
x3e;>2]=(c[l>>2]|0)+(0-(c[R>>2]|0)<<2);while(1){va=(c[U>>2]|0)>0;c[pa>>
;2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|
0)+4>>2]|0);f=c[m>>2]|0;g=c[pa>>2]|0;e=c[qa>>2]|0;if(!va)break;Ui(f,g,e,0);c[pa>>
;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
x3e;2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
x3e;2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20>
;>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+24;c[U
x3e;>2]=(c[U>>2]|0)+-1}Ui(f,g,e,1);c[l>>2]=c[ca>>2];break}case 16:{if(Qi(c[m>>2]|0,
c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;break a}c[ea>>2]=c
[qa>>2];c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>
x3e;2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa
x3e;>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[
l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c
[pa>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|
0,1);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);Ui(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0);c[qa>
x3e;2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+28>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+32>>2]|0);c[qa>>2]=c[ea>
;>2];Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 15
:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;
break a}c[fa>>2]=c[qa>>2];c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);Ui
(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2
]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>
2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+12>>
;2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>
;>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);c[qa>>2]=c[fa>>2];Ui(c[m>>2]|0,c[pa>
;>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0);Ui(c[
m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 17:{c[w>>
;2]=0;c[x>>2]=0;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>
x3e;2]|0,6)|0){sa=307;break a}c[da>>2]=c[pa>>2];c[ga>>2]=c[qa>>2];c[ha>>2]=c[l
>>2];c[s>>2]=5;while(1){if((c[s>>2]|0)<=0)break;c[w>>2]=(c[w>>2]|0)+(c[c[
ha>>2]>>2]|0);c[x>>2]=(c[x>>2]|0)+(c[(c[ha>>2]|0)+4>>2]|0);c[ha>
;>2]=(c[ha>>2]|0)+8;c[s>>2]=(c[s>>2]|0)+-1}if((c[w>>2]|0)<0)c[w>>2]=
0-(c[w>>2]|0);if((c[x>>2]|0)<0)c[x>>2]=0-(c[x>>2]|0);c[B>>2]=(c[w>
x3e;2]|0)>(c[x>>2]|0)&1;c[s>>2]=5;while(1){if((c[s>>2]|0)<=0)break;c[pa>>
2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|
0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,(c[s>>2]|0)==3&255);c[l>
;>2]=(c[l>>2]|0)+8;c[s>>2]=(c[s>>2]|0)+-1}if(c[B>>2]|0){c[pa>>2]=(c[pa>
;>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=c[ga>>2]}else{c[pa>>2]=c[da>>
;2];c[qa>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0)}Ui(c[m>>2]|0,c[pa>>2]|0,
c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 14:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;break a}c[v>>2]=6;while(1){if((c[v>>
;2]|0)>>>0<=0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>
;>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,((c[v>>2]|0)==4?1:(c[v>>2]|0)==1)&1);c[l>>2]=(c[l>>2]|0)+8;c[v>>
;2]=(c[v>>2]|0)+-1}c[l>>2]=c[ca>>2];break}case 26:{if((c[c[l>>2]>>2]|0)<0
)c[c[l>>2]>>2]=0-(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case
27:{va=c[l>>2]|0;c[va>>2]=(c[va>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>
2]=(c[l>>2]|0)+4;break}case 28:{va=c[l>>2]|0;c[va>>2]=(c[va>>2]|0)-(c[(c[l>>2]|
0)+4>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case 29:{va=Vb(c[c[l>>2]>>2]|0,c[(c[l
x3e;>2]|0)+4>>2]|0)|0;c[c[l>>2]>>2]=va;c[l>>2]=(c[l>>2]|0)+4;break}case 30
:{c[c[l>>2]>>2]=0-(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case
31:{c[k>>2]=c[$>>2];if((c[k>>2]|0)>=32768)c[k>>2]=(c[k>>2]|0)+1;c[c[l>
;>2]>>2]=c[k>>2];c[$>>2]=Mb(c[$>>2]|0,65536-(c[$>>2]|0)|0)|0;if(!(c[$>
;>2]|0))c[$>>2]=(c[$>>2]|0)+10355;c[l>>2]=(c[l>>2]|0)+4;break}case 32:{va=Mb(c[c[l
x3e;>2]>>2]|0,c[(c[l>>2]|0)+4>>2]|0)|0;c[c[l>>2]>>2]=va;c[l>>2]=(
c[l>>2]|0)+4;break}case 33:{if((c[c[l>>2]>>2]|0)>0){c[t>>2]=9;c[_>>2]=c[c
[l>>2]>>2];while(1){f=c[_>>2]|0;c[S>>2]=f+(Vb(c[c[l>>2]>>2]|0,c[_>
;>2]|0)|0)+1>>1;f=c[S>>2]|0;if((c[t>>2]|0)<=0?1:(c[S>>2]|0)==(c[_>>2
]|0))break;c[_>>2]=f}c[c[l>>2]>>2]=f}else c[c[l>>2]>>2]=0;c[l>>2]=(c
[l>>2]|0)+4;break}case 25:case 35:break;case 36:{c[ia>>2]=c[c[l>>2]>>2];c[c[l>>
;2]>>2]=c[(c[l>>2]|0)+4>>2];c[(c[l>>2]|0)+4>>2]=c[ia>>2];c[l>
x3e;2]=(c[l>>2]|0)+8;break}case 37:{c[E>>2]=c[c[l>>2]>>2]>>16;if((c[E>>
;2]|0)>=0){if((c[E>>2]|0)>((c[T>>2]|0)-2|0))c[E>>2]=(c[T>>2]|0)-2}else c[E>
;>2]=0;c[c[l>>2]>>2]=c[(c[l>>2]|0)+(0-((c[E>>2]|0)+1)<<2)>>2];c
[l>>2]=(c[l>>2]|0)+4;break}case 38:{c[u>>2]=c[c[l>>2]>>2]>>16;c[F>
;>2]=c[(c[l>>2]|0)+4>>2]>>16;if((c[u>>2]|0)<=0)c[u>>2]=1;c[l>
x3e;2]=(c[l>>2]|0)+(0-(c[u>>2]|0)<<2);if((c[l>>2]|0)>>>0<(c[ca>
x3e;2]|0)>>>0){sa=309;break a}c:do if((c[F>>2]|0)>=0)while(1){if((c[F>>2]|0)<=0)break
c;c[ja>>2]=c[(c[l>>2]|0)+((c[u>>2]|0)-1<<2)>>2];c[C>>2]=(c[u>
x3e;2]|0)-2;while(1){if((c[C>>2]|0)<0)break;c[(c[l>>2]|0)+((c[C>>2]|0)+1<<2)>
x3e;2]=c[(c[l>>2]|0)+(c[C>>2]<<2)>>2];c[C>>2]=(c[C>>2]|0)+-1}c[c[l
x3e;>2]>>2]=c[ja>>2];c[F>>2]=(c[F>>2]|0)+-1}else while(1){if((c[F>>2]|0)
x3e;=0)break c;c[ka>>2]=c[c[l>>2]>>2];c[D>>2]=0;while(1){if((c[D>>2]|0)>=((
c[u>>2]|0)-1|0))break;c[(c[l>>2]|0)+(c[D>>2]<<2)>>2]=c[(c[l>>2]|0)+((
c[D>>2]|0)+1<<2)>>2];c[D>>2]=(c[D>>2]|0)+1}c[(c[l>>2]|0)+((c[u>
x3e;2]|0)-1<<2)>>2]=c[ka>>2];c[F>>2]=(c[F>>2]|0)+1}while(0);c[l>>2]=(
c[l>>2]|0)+(c[u>>2]<<2);break}case 39:{c[(c[l>>2]|0)+4>>2]=c[c[l>>2]
x3e;>2];c[l>>2]=(c[l>>2]|0)+8;break}case 40:{c[na>>2]=c[c[l>>2]>>2];c[G
x3e;>2]=c[(c[l>>2]|0)+4>>2]>>16;if((c[G>>2]|0)>=0&(c[G>>2]|0)
x3c;32)c[(c[j>>2]|0)+760+(c[G>>2]<<2)>>2]=c[na>>2];break}case 41:{c[H>>
;2]=c[c[l>>2]>>2]>>16;c[oa>>2]=0;if((c[H>>2]|0)>=0&(c[H>>2
]|0)<32)c[oa>>2]=c[(c[j>>2]|0)+760+(c[H>>2]<<2)>>2];c[c[l>>2]
x3e;>2]=c[oa>>2];c[l>>2]=(c[l>>2]|0)+4;break}case 51:{if((c[(c[j>>2]|0)+676>
x3e;2]|0)>>>0<=((c[j>>2]|0)+280|0)>>>0)break a;va=(c[j>>2]|0)+676|0;c[va
x3e;>2]=(c[va>>2]|0)+-12;c[ra>>2]=c[(c[j>>2]|0)+676>>2];c[K>>2]=c[(c[ra
x3e;>2]|0)+8>>2];c[L>>2]=c[(c[ra>>2]|0)+4>>2];break}case 50:{c[J>>2]=(c[c
[l>>2]>>2]>>16)+(c[(c[j>>2]|0)+900>>2]|0);if((c[J>>2]|0)>>
x3e;0>=(c[(c[j>>2]|0)+892>>2]|0)>>>0)break a;if((((c[ra>>2]|0)-((c[j>>
;2]|0)+280)|0)/12|0|0)>=32)break a;c[(c[ra>>2]|0)+8>>2]=c[K>>2];c[ra>>2]=(c[ra>
;>2]|0)+12;c[c[ra>>2]>>2]=c[(c[(c[j>>2]|0)+908>>2]|0)+(c[J>>2]<<
;2)>>2];c[(c[ra>>2]|0)+4>>2]=c[(c[(c[j>>2]|0)+908>>2]|0)+((c[J>>2]|0
)+1<<2)>>2];c[(c[ra>>2]|0)+8>>2]=c[c[ra>>2]>>2];if(!(c[c[ra>>
;2]>>2]|0))break a;if((c[(c[ra>>2]|0)+4>>2]|0)==(c[c[ra>>2]>>2]|0))break a;c[(
c[j>>2]|0)+676>>2]=c[ra>>2];c[K>>2]=c[c[ra>>2]>>2];c[L>>2]=
c[(c[ra>>2]|0)+4>>2];break}case 53:{c[l>>2]=c[ca>>2];break}case 52:{c[(c[j>>2]|
0)+744>>2]=(c[(c[j>>2]|0)+748>>2]|0)+(c[(c[l>>2]|0)+4>>2]>>16);c[(c[
j>>2]|0)+32>>2]=c[c[l>>2]>>2];c[(c[j>>2]|0)+32+4>>2]=0;c[pa>>
;2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=c[(c[j>>2]|0
)+28>>2];c[l>>2]=c[ca>>2];break}case 57:{c[(c[j>>2]|0)+744>>2]=(c[(c[j>
x3e;2]|0)+748>>2]|0)+(c[(c[l>>2]|0)+8>>2]>>16);c[(c[j>>2]|0)+32>>2]=
c[c[l>>2]>>2];c[(c[j>>2]|0)+32+4>>2]=c[(c[l>>2]|0)+4>>2];c[pa>
x3e;2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[(c[j>>
2]|0)+28>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>2]=c[ca>>2];break}case 58:{c[pa
x3e;>2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[(c[j>
x3e;2]|0)+28>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>2]=c[ca>>2];break}case 54:{c[
l>>2]=(c[l>>2]|0)+(0-(2+(c[(c[l>>2]|0)+-8>>2]>>16))<<2);if((c[l>
;>2]|0)>>>0<(c[ca>>2]|0)>>>0){sa=309;break a}break}case 55:{c[l>>2]=(
c[l>>2]|0)+4;break}case 44:{if(c[c[l>>2]>>2]|0)f=(c[(c[l>>2]|0)+4>>2]|0)!=0;else
f=0;c[o>>2]=f&1;c[c[l>>2]>>2]=c[o>>2]|0?65536:0;c[l>>2]=(c[l>>
2]|0)+4;break}case 45:{if(c[c[l>>2]>>2]|0)f=1;else f=(c[(c[l>>2]|0)+4>>2]|0)!=0;c[p>
;>2]=f&1;c[c[l>>2]>>2]=c[p>>2]|0?65536:0;c[l>>2]=(c[l>>2]|0)+4;break
}case 47:{c[q>>2]=((c[c[l>>2]>>2]|0)!=0^1)&1;c[c[l>>2]>>2]=c[q>>
;2]|0?65536:0;c[l>>2]=(c[l>>2]|0)+4;break}case 48:{c[r>>2]=(c[(c[l>>2]|0)+8>>2
]|0)<=(c[(c[l>>2]|0)+12>>2]|0)&1;if(!(c[r>>2]|0))c[c[l>>2]>>2]=c[(c[
l>>2]|0)+4>>2];c[l>>2]=(c[l>>2]|0)+4;break}case 49:{c[I>>2]=(c[c[l>>
2]>>2]>>16)+(c[(c[j>>2]|0)+896>>2]|0);if((c[I>>2]|0)>>>0>=(
c[(c[j>>2]|0)+888>>2]|0)>>>0)break a;if((((c[ra>>2]|0)-((c[j>>2]|0)+280)|
0)/12|0|0)>=32)break a;c[(c[ra>>2]|0)+8>>2]=c[K>>2];c[ra>>2]=(c[ra>>2]|0)+
12;c[c[ra>>2]>>2]=c[(c[(c[j>>2]|0)+904>>2]|0)+(c[I>>2]<<2)>>
;2];c[(c[ra>>2]|0)+4>>2]=c[(c[(c[j>>2]|0)+904>>2]|0)+((c[I>>2]|0)+1<<
;2)>>2];c[(c[ra>>2]|0)+8>>2]=c[c[ra>>2]>>2];if(!(c[c[ra>>2]>>
;2]|0))break a;if((c[(c[ra>>2]|0)+4>>2]|0)==(c[c[ra>>2]>>2]|0))break a;c[(c[j>>
;2]|0)+676>>2]=c[ra>>2];c[K>>2]=c[c[ra>>2]>>2];c[L>>2]=c[(c[ra>
x3e;2]|0)+4>>2];break}default:{sa=305;break a}}while(0);c[(c[j>>2]|0)+276>>2]=c[l>>2];if
((((c[(c[j>>2]|0)+276>>2]|0)-(c[ca>>2]|0)|0)/4|0|0)>=48){sa=310;break}else continue}c[ba>
;>2]=16;do if((d[la>>0]|0)!=28){f=d[la>>0]|0;if((d[la>>0]|0)<247){c[ma>>2]=f-139
;break}if((f|0)<251){if((c[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0)break a;ua=(
d[la>>0]|0)-247<<8;va=c[K>>2]|0;c[K>>2]=va+1;c[ma>>2]=ua+(d[va>>0]|0
)+108;break}f=c[K>>2]|0;if((d[la>>0]|0)<255){if(f>>>0>=(c[L>>2]|0)>
x3e;>0)break a;ua=0-((d[la>>0]|0)-251)<<8;va=c[K>>2]|0;c[K>>2]=va+1;c[ma>>
;2]=ua-(d[va>>0]|0)-108;break}if((f+3|0)>>>0>=(c[L>>2]|0)>>>0)break a;c[ma
>>2]=d[c[K>>2]>>0]<<24|d[(c[K>>2]|0)+1>>0]<<16|d[(c[K>
;>2]|0)+2>>0]<<8|d[(c[K>>2]|0)+3>>0];c[K>>2]=(c[K>>2]|0)+4;if((
c[n>>2]|0)==2)c[ba>>2]=0}else{if(((c[K>>2]|0)+1|0)>>>0>=(c[L>>2]|0)
x3e;>>0)break a;c[ma>>2]=((d[c[K>>2]>>0]<<8|d[(c[K>>2]|0)+1>>
;0])&65535)<<16>>16;c[K>>2]=(c[K>>2]|0)+2}while(0);if((((c[(c[j>>2]|0)+276
>>2]|0)-(c[ca>>2]|0)|0)/4|0|0)>=48){sa=310;break}c[ma>>2]=c[ma>>2]<<c[ba
x3e;>2];ua=c[ma>>2]|0;e=(c[j>>2]|0)+276|0;va=c[e>>2]|0;c[e>>2]=va+4;c[va>>
;2]=ua}do if((sa|0)==220){c[y>>2]=Vi(c[j>>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[(c[l>>2]|0)+12>>2]>>16,c[(c[l>
x3e;2]|0)+16>>2]>>16)|0;oc(c[(c[m>>2]|0)+12>>2]|0);c[h>>2]=c[y>>2];va
=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==221){if((c[T>>2]|0)>=4){c[z>>2]=c[(c[j>>
;2]|0)+744>>2];c[y>>2]=Vi(c[j>>2]|0,0,c[(c[l>>2]|0)+-16>>2]|0,c[(c[l>>
;2]|0)+-12>>2]|0,c[(c[l>>2]|0)+-8>>2]>>16,c[(c[l>>2]|0)+-4>>2]>
x3e;16)|0;c[(c[j>>2]|0)+744>>2]=c[z>>2]}else{if(!(c[y>>2]|0))c[y>>2]=0;Pi(c[m
x3e;>2]|0);if(c[A>>2]|0){if(Ya[c[(c[A>>2]|0)+8>>2]&127](c[c[A>>2]>>2
]|0,b[(c[(c[m>>2]|0)+20>>2]|0)+2>>1]|0)|0)break;Wa[c[(c[A>>2]|0)+24>>2]&31
](c[c[A>>2]>>2]|0,c[(c[m>>2]|0)+20>>2]|0,c[(c[m>>2]|0)+72>>2]|0,c[(c
[j>>2]|0)+920>>2]|0)|0}oc(c[(c[m>>2]|0)+12>>2]|0)}c[h>>2]=c[y>>2];va
=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==305){c[h>>2]=7;va=c[h>>2]|0;i=ta;return va|0}else if((
sa|0)==307){c[h>>2]=c[y>>2];va=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==309){c[h>>2]=129
;va=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==310){c[h>>2]=130;va=c[h>>2]|0;i=ta;return va|0}while
(0);c[h>>2]=3;va=c[h>>2]|0;i=ta;return va|0}function Pi(a){a=a|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|
0;l=k+20|0;j=k+16|0;h=k+12|0;f=k+8|0;g=k+4|0;e=k;c[l>>2]=a;c[j>>2]=c[(c[l>>2]|0)+20>>2];
if(!(c[j>>2]|0)){i=k;return}if((b[c[j>>2]>>1]|0)<=1)a=0;else a=(b[(c[(c[j>>2]|0)+12
>>2]|0)+((b[c[j>>2]>>1]|0)-2<<1)>>1]|0)+1|0;c[h>>2]=a;if((((b[(c[j
x3e;>2]|0)+2>>1]|0)>1?(c[f>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[h>>2]<
;<3),c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(b[(c[j>>2]|0)+2>>1]<<3)+-
8,c[e>>2]=(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>>2]|0)+2>>1]|0)+-1,(c[c[f>>
;2]>>2]|0)==(c[c[g>>2]>>2]|0)):0)?(c[(c[f>>2]|0)+4>>2]|0)==(c[(c[g>>
2]|0)+4>>2]|0):0)?(d[c[e>>2]>>0]|0)==1:0){l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>
x3e;1]|0)+-1<<16>>16}if((b[c[j>>2]>>1]|0)<=0){i=k;return}a=c[j>>2]|0;if((
c[h>>2]|0)==((b[(c[j>>2]|0)+2>>1]|0)-1|0)){b[a>>1]=(b[a>>1]|0)+-1<<16
>>16;l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>>1]|0)+-1<<16>>16;i=k;return}else
{b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>1]|0)-1<<1)>>1]=(b[a+2>
;>1]|0)-1;i=k;return}}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;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=
k;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2]=0;if(a[(c[f>>2]|0)+64>>0]|0){
e=c[j>>2]|0;i=k;return e|0}a[(c[f>>2]|0)+64>>0]=1;c[j>>2]=Ri(c[f>>2]|0)|0;if(c
[j>>2]|0){e=c[j>>2]|0;i=k;return e|0}c[j>>2]=Si(c[f>>2]|0,c[g>>2]|0,c[h>
x3e;2]|0)|0;e=c[j>>2]|0;i=k;return e|0}function Ri(d){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[e>>2]=d;c[h>>2]=c[(c[e>>2]|0)+20>>2];if(!(a[(c[e>>2]|0)+65>>
;0]|0)){h=c[h>>2]|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16;c[f>>2]=0;h=c[f>
;>2]|0;i=j;return h|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20>>1]|0)+(b[(c[(c[e>>2]|0)+12
>>2]|0)+56>>1]|0)+1|0)>>>0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+8>>
;2]|0)>>>0)e=0;else e=kc(c[(c[e>>2]|0)+12>>2]|0,0,1)|0;c[g>>2]=e;if(!(c[g>>
;2]|0)){if((b[c[h>>2]>>1]|0)>0)b[(c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>
;>1]|0)-1<<1)>>1]=(b[(c[h>>2]|0)+2>>1]|0)-1;h=c[h>>2]|0;b[h>>1]=(
b[h>>1]|0)+1<<16>>16}c[f>>2]=c[g>>2];h=c[f>>2]|0;i=j;return h|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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>
;2]=b;c[g>>2]=d;c[h>>2]=Ti(c[e>>2]|0,1)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=j;return
d|0}Ui(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0,1);d=c[h>>2]|0;i=j;return d|0}function Ti(a,d){a=a
|0;d=d|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]=d;if(!(c[f>>2]|0)){d=0;i=g;return
d|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20+2>>1]|0)+(b[(c[(c[e>>2]|0)+12>>2]|0)+56
+2>>1]|0)+(c[f>>2]|0)|0)>>>0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+4>>
;2]|0)>>>0){d=0;i=g;return d|0}d=kc(c[(c[e>>2]|0)+12>>2]|0,c[f>>2]|0,0)|0;i=g;return
d|0}function Ui(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;p=i;i=i+32|0;q=p+20|0;j=p+16|0;k=p+12|0;l=
p+24|0;n=p+8|0;o=p+4|0;m=p;c[q>>2]=e;c[j>>2]=f;c[k>>2]=g;a[l>>0]=h;c[n>>2]=c[(
c[q>>2]|0)+20>>2];if(!(a[(c[q>>2]|0)+65>>0]|0)){q=c[n>>2]|0;q=q+2|0;g=b[q>
;>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}c[o>>2]=(c[(c[n>>2]|0)+4>
x3e;2]|0)+(b[(c[n>>2]|0)+2>>1]<<3);c[m>>2]=(c[(c[n>>2]|0)+8>>2]|0)+(
b[(c[n>>2]|0)+2>>1]|0);c[c[o>>2]>>2]=c[j>>2]>>16;c[(c[o>>2
]|0)+4>>2]=c[k>>2]>>16;a[c[m>>2]>>0]=d[l>>0]|0?1:2;q=c[n>>
2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}function Vi(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,D=0,E=0,F=0,G=0
;G=i;i=i+96|0;k=G+92|0;l=G+88|0;m=G+84|0;n=G+80|0;o=G+76|0;p=G+72|0;q=G+68|0;y=G+64|0;u=G+60|0;t=G+56|0;r=G+52|0;z=G+48|0;C=G+40
|0;s=G+32|0;w=G+24|0;x=G+20|0;B=G+16|0;v=G+12|0;A=G+8|0;D=G+4|0;E=G;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;
c[o>>2]=g;c[p>>2]=h;c[q>>2]=j;c[u>>2]=c[l>>2];c[z>>2]=c[(c[l>
x3e;2]|0)+4>>2];if(a[(c[l>>2]|0)+924>>0]|0){c[k>>2]=160;F=c[k>>2]|0;i=G;return
F|0}c[n>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+32>>2]|0);c[o>>2]=(c[o>>2]|0
)+(c[(c[l>>2]|0)+32+4>>2]|0);if(c[(c[(c[z>>2]|0)+128>>2]|0)+52>>2]|0){c[t>
;>2]=c[p>>2];c[r>>2]=c[q>>2]}else{c[v>>2]=c[(c[z>>2]|0)+692>>2];
c[t>>2]=Wi(c[v>>2]|0,c[p>>2]|0)|0;c[r>>2]=Wi(c[v>>2]|0,c[q>>2]|0)|0}
if((c[t>>2]|0)<0|(c[r>>2]|0)<0){c[k>>2]=160;F=c[k>>2]|0;i=G;return F|0}if(a[(c
[u>>2]|0)+66>>0]|0){c[A>>2]=c[(c[u>>2]|0)+8>>2];c[D>>2]=c[c[(c[A>
;>2]|0)+156>>2]>>2];c[y>>2]=lc(c[D>>2]|0,2)|0;if(!(c[y>>2]|0)){c[E>
x3e;2]=c[(c[D>>2]|0)+56+32>>2];c[c[E>>2]>>2]=c[t>>2];b[(c[E>>2]|0)+4
>>1]=514;c[(c[E>>2]|0)+8>>2]=0;c[(c[E>>2]|0)+12>>2]=0;c[E>>2]=(c[E
x3e;>2]|0)+32;c[c[E>>2]>>2]=c[r>>2];b[(c[E>>2]|0)+4>>1]=2;c[(c[E>>
;2]|0)+8>>2]=c[n>>2]>>16;c[(c[E>>2]|0)+12>>2]=c[o>>2]>>16;
c[(c[A>>2]|0)+128>>2]=2;c[(c[A>>2]|0)+132>>2]=c[(c[D>>2]|0)+20+32>>2
];c[(c[A>>2]|0)+72>>2]=1668246896;c[(c[D>>2]|0)+56+28>>2]=2;F=11}}else F=11;do if((F|0)==
11){nc(c[(c[u>>2]|0)+12>>2]|0);c[y>>2]=Mi(c[z>>2]|0,c[t>>2]|0,w,x)|0;if((c[y
x3e;>2]|0)==0?(a[(c[l>>2]|0)+924>>0]=1,c[y>>2]=Oi(c[l>>2]|0,c[w>>2]|0,c[x
>>2]|0)|0,a[(c[l>>2]|0)+924>>0]=0,Yi(c[z>>2]|0,w,c[x>>2]|0),c[y>>2]|
0):0)break;F=(c[u>>2]|0)+32|0;c[C>>2]=c[F>>2];c[C+4>>2]=c[F+4>>2];F=(c[u>
x3e;2]|0)+40|0;c[s>>2]=c[F>>2];c[s+4>>2]=c[F+4>>2];c[B>>2]=c[(c[l>>2
]|0)+744>>2];c[(c[u>>2]|0)+32>>2]=0;c[(c[u>>2]|0)+32+4>>2]=0;c[(c[u>>
;2]|0)+24>>2]=(c[n>>2]|0)-(c[m>>2]|0);c[(c[u>>2]|0)+28>>2]=c[o>>2];c
[y>>2]=Mi(c[z>>2]|0,c[r>>2]|0,w,x)|0;if((c[y>>2]|0)==0?(a[(c[l>>2]|0)+924>
;>0]=1,c[y>>2]=Oi(c[l>>2]|0,c[w>>2]|0,c[x>>2]|0)|0,a[(c[l>>2]|0)+924>
;>0]=0,Yi(c[z>>2]|0,w,c[x>>2]|0),c[y>>2]|0):0)break;F=(c[u>>2]|0)+32|0;c[F>>
;2]=c[C>>2];c[F+4>>2]=c[C+4>>2];F=(c[u>>2]|0)+40|0;c[F>>2]=c[s>>2];c
[F+4>>2]=c[s+4>>2];c[(c[l>>2]|0)+744>>2]=c[B>>2];c[(c[u>>2]|0)+24>
;>2]=0;c[(c[u>>2]|0)+28>>2]=0}while(0);c[k>>2]=c[y>>2];F=c[k>>2]|0;i=G;return
F|0}function Wi(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l+12|0;g=l+8|0;f=l+4|0;j=l;h=l+16|0;c[g>>
2]=a;c[f>>2]=d;if(!(c[(c[g>>2]|0)+1152+8>>2]|0)){c[k>>2]=-1;k=c[k>>2]|0;i=l;return
k|0}if((c[f>>2]|0)<0|(c[f>>2]|0)>255){c[k>>2]=-1;k=c[k>>2]|0;i=l;return k|0}b
[h>>1]=Xi(c[f>>2]|0)|0;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[
g>>2]|0)+12>>2]|0)>>>0){f=10;break}a=c[j>>2]|0;if((e[(c[(c[g>>2]|0)+1152+
8>>2]|0)+(c[j>>2]<<1)>>1]|0|0)==(e[h>>1]|0|0)){f=8;break}c[j>>2]=a+1
}if((f|0)==8){c[k>>2]=a;k=c[k>>2]|0;i=l;return k|0}else if((f|0)==10){c[k>>2]=-1;k=c[k>>
2]|0;i=l;return k|0}return 0}function Xi(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<256)b=e[6520+(c[b>>2]<<1)>>1]|0;else b=0;i=d;return b&65535|0}function Yi
(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;e=k+24|0;f=k+20|0;g=k+16|0;j=k+8|0;h=k;c[e>>2]=a;c[
f>>2]=b;c[g>>2]=d;if(c[(c[(c[e>>2]|0)+128>>2]|0)+52>>2]|0){c[j>>2]=c
[c[f>>2]>>2];c[j+4>>2]=c[g>>2];Ra[c[(c[c[(c[(c[e>>2]|0)+128>>2]|0)+52
>>2]>>2]|0)+4>>2]&7](c[(c[(c[(c[e>>2]|0)+128>>2]|0)+52>>2]|0)+4
>>2]|0,j);i=k;return}else{c[h>>2]=c[(c[e>>2]|0)+692>>2];ji((c[h>>2]|0)+1176|0,
c[f>>2]|0);i=k;return}}function Zi(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;c[d>>
;2]=c[(c[b>>2]|0)+8>>2];if(!(c[d>>2]|0)){i=e;return}d=(c[d>>2]|0)+108|0;a=c[(c[b>
x3e;2]|0)+16>>2]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a
+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];i=e;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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2]=c[m>>2];c[k>>2]=c[(
c[j>>2]|0)+532>>2];c[c[h>>2]>>2]=0;c[(c[h>>2]|0)+4>>2]=0;if(!(c[k>
;>2]|0)){i=l;return 0}m=Oa[c[(c[k>>2]|0)+128>>2]&63](c[j>>2]|0,c[f>>2]|0,c[g
x3e;>2]|0)|0;c[c[h>>2]>>2]=m;i=l;return 0}function $i(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;p=i;i=i+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;m=p+8|0;o=p+4|0;n=p;c[g>>2]=
a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[o>>2]=0;c[n>>2]=c[(c[g
x3e;>2]|0)+84>>2];c[k>>2]=c[k>>2]|256;c[m>>2]=0;while(1){if((c[m>>2]|0)
x3e;>>0>=(c[j>>2]|0)>>>0){f=8;break}c[o>>2]=Gi(c[n>>2]|0,c[(c[g>
;>2]|0)+88>>2]|0,(c[h>>2]|0)+(c[m>>2]|0)|0,c[k>>2]|0)|0;if(c[o>>2]|0){f=8
;break}f=c[n>>2]|0;if(c[k>>2]&16|0)f=c[f+60>>2]|0;else f=c[f+56>>2]|0;c[(c[l>
x3e;2]|0)+(c[m>>2]<<2)>>2]=f;c[m>>2]=(c[m>>2]|0)+1}if((f|0)==8){i=p;return c[o
>>2]|0}return 0}function aj(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;v=i;i=i+80|0;k=v+64|0;l=v+60|0;d=v+56|0;g=v+52|0;n=v+48|0;e=v+44|0;h=v+40|0;j=v+36|0;f=v+32|0;m=v+28|0;p=v+24|0;s=v+20|0;o=v+
16|0;q=v+12|0;r=v+8|0;t=v+4|0;u=v;c[l>>2]=a;c[d>>2]=b;c[g>>2]=c[l>>2];do if(c[(c[c[l>
;>2]>>2]|0)+8>>2]&2|0){c[e>>2]=c[c[l>>2]>>2];c[h>>2]=c[(c[
e>>2]|0)+532>>2];if(Oa[c[(c[h>>2]|0)+148>>2]&63](c[e>>2]|0,c[d>>
;2]|0,j)|0){c[(c[g>>2]|0)+44>>2]=-1;break}c[k>>2]=bj(c[l>>2]|0,c[j>>2]|0)|0;u=
c[k>>2]|0;i=v;return u|0}while(0);Ed(c[c[l>>2]>>2]|0,c[d>>2]|0);c[n>>2]=Bi(c[g
>>2]|0)|0;a:do if(c[n>>2]|0){c[f>>2]=c[c[l>>2]>>2];c[m>>2]=c[(c[f>
;>2]|0)+692>>2];c[p>>2]=c[(c[l>>2]|0)+40>>2];c[s>>2]=c[(c[m>>2]|
0)+1324+64>>2];Za[c[(c[n>>2]|0)+4>>2]&31](c[c[p>>2]>>2]|0,c[(c[l>>
;2]|0)+12+4>>2]|0,c[(c[l>>2]|0)+12+8>>2]|0,0,0)|0;c[o>>2]=c[(c[m>>2]|0)+1892
x3e;>2];while(1){if((c[o>>2]|0)>>>0<=0)break a;c[q>>2]=c[(c[m>>2]|0)+1896
+((c[o>>2]|0)-1<<2)>>2];c[r>>2]=c[(c[q>>2]|0)+64>>2];d=c[(c[l>
x3e;2]|0)+12+4>>2]|0;if((c[s>>2]|0)!=(c[r>>2]|0)){c[t>>2]=xb(d,c[s>>2]|0,c[r
x3e;>2]|0)|0;c[u>>2]=xb(c[(c[l>>2]|0)+12+8>>2]|0,c[s>>2]|0,c[r>>2]|0)|0}else
{c[t>>2]=d;c[u>>2]=c[(c[l>>2]|0)+12+8>>2]}Za[c[(c[n>>2]|0)+4>>2]&
;31](c[(c[p>>2]|0)+4+((c[o>>2]|0)-1<<2)>>2]|0,c[t>>2]|0,c[u>>2]|0,0,
0)|0;c[o>>2]=(c[o>>2]|0)+-1}}while(0);c[k>>2]=0;u=c[k>>2]|0;i=v;return u|0}function bj(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;p=i;i=i+64|0;e=p+48|0;r=p+44|0;q=p+40|0;g=p+36|0;d=p
+32|0;f=p+28|0;j=p+24|0;m=p+20|0;h=p+16|0;k=p+12|0;l=p+8|0;n=p+4|0;o=p;c[e>>2]=a;c[r>>2]=b;c[q>>2]=
c[e>>2];c[(c[q>>2]|0)+44>>2]=c[r>>2];Cd(c[c[e>>2]>>2]|0,c[r>>
;2]|0);c[g>>2]=Bi(c[q>>2]|0)|0;if(!(c[g>>2]|0)){i=p;return 0}c[d>>2]=c[c[e>>2]
x3e;>2];c[f>>2]=c[(c[d>>2]|0)+692>>2];c[j>>2]=c[(c[e>>2]|0)+40>>
;2];c[m>>2]=c[(c[f>>2]|0)+1324+64>>2];Za[c[(c[g>>2]|0)+4>>2]&31](c[c[j>
;>2]>>2]|0,c[(c[e>>2]|0)+12+4>>2]|0,c[(c[e>>2]|0)+12+8>>2]|0,0,0)|0;c[h
x3e;>2]=c[(c[f>>2]|0)+1892>>2];while(1){if((c[h>>2]|0)>>>0<=0)break;c[k
x3e;>2]=c[(c[f>>2]|0)+1896+((c[h>>2]|0)-1<<2)>>2];c[l>>2]=c[(c[k>>
;2]|0)+64>>2];d=c[(c[e>>2]|0)+12+4>>2]|0;if((c[m>>2]|0)!=(c[l>>2]|0)){c[n>
;>2]=xb(d,c[m>>2]|0,c[l>>2]|0)|0;c[o>>2]=xb(c[(c[e>>2]|0)+12+8>>2]|0,c[m
x3e;>2]|0,c[l>>2]|0)|0}else{c[n>>2]=d;c[o>>2]=c[(c[e>>2]|0)+12+8>>2]}Za[c
[(c[g>>2]|0)+4>>2]&31](c[(c[j>>2]|0)+4+((c[h>>2]|0)-1<<2)>>2]|0
,c[n>>2]|0,c[o>>2]|0,0,0)|0;c[h>>2]=(c[h>>2]|0)+-1}i=p;return 0}function cj(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];i=d;return 0}function dj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;h=g+8|0;e=g+4|0;f=g;c[h>>2
]=a;c[e>>2]=b;c[f>>2]=c[(c[h>>2]|0)+16>>2];if((c[e>>2]|0)>>>0
x3e;=256){h=0;i=g;return h|0}h=d[(c[f>>2]|0)+(6+(c[e>>2]|0))>>0]|0;i=g;return h|0}function ej(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;l=i;i=i+32|0;m=l+20|0;e=l+16|0;j=l+12|0;f=l+8|0;h=l+4|0;g=l;c[m>>2]=a;
c[e>>2]=b;c[j>>2]=c[(c[m>>2]|0)+16>>2];c[f>>2]=c[c[e>>2]>>
2];c[h>>2]=0;c[g>>2]=0;c[j>>2]=(c[j>>2]|0)+6;do{m=(c[f>>2]|0)+1|0;c[f>>
;2]=m;if(m>>>0>=256){k=5;break}c[g>>2]=d[(c[j>>2]|0)+(c[f>>2]|0)>>0]}
while(!(c[g>>2]|0));if((k|0)==5){k=c[h>>2]|0;m=c[e>>2]|0;c[m>>2]=k;m=c[g>>2]|0
;i=l;return m|0}c[h>>2]=c[f>>2];k=c[h>>2]|0;m=c[e>>2]|0;c[m>>2]=k;m=c[g>
x3e;2]|0;i=l;return m|0}function fj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;e=k+20|0;f=k+16|0;j=k+12|0;l=k
+8|0;h=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[j>>2]=(c[e>>2]|0)+2;c[j>>2]=(c[j>
x3e;2]|0)+2;c[l>>2]=(((d[(c[j>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[j>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535;if((c[l>>2]|0)>>>0<262?1:((c[e>>
;2]|0)+(c[l>>2]|0)|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>
;>2]|0,8);if((c[(c[f>>2]|0)+8>>2]|0)>>>0<1){i=k;return 0}c[j>>2]=(c[e>
;>2]|0)+6;c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>=256)break;l=c[j>>2]|0;c[
j>>2]=l+1;c[g>>2]=d[l>>0];if((c[g>>2]|0)>>>0>=(c[(c[f>>2]|
0)+172>>2]|0)>>>0)sc(c[f>>2]|0,16);c[h>>2]=(c[h>>2]|0)+1}i=k;return 0}function
gj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>
;2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=0;c[c[f>>2]>>2]=(((
d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&65535)<<
;0)&65535;i=e;return 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,o=0,p=0,q=0,r=0;p=i;i=i+48|0;r=p+40
|0;f=p+36|0;q=p+32|0;m=p+28|0;o=p+24|0;l=p+20|0;j=p+16|0;n=p+12|0;g=p+8|0;h=p+4|0;k=p;c[r>>2]=b;c[f>>2]=e;c[
q>>2]=c[(c[r>>2]|0)+16>>2];c[m>>2]=0;c[o>>2]=ij(c[q>>2]|0,c[f>
x3e;2]|0)|0;if(!(c[o>>2]|0)){r=c[m>>2]|0;i=p;return r|0}c[l>>2]=c[o>>2];c[j>>2
]=c[f>>2]&255;c[l>>2]=(c[l>>2]|0)+2;c[n>>2]=((d[(c[l>>2]|0)+-2>>
;0]&65535)<<8|(d[(c[l>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[l>>2]=(
c[l>>2]|0)+2;c[g>>2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>>
2]|0)+-2+1>>0]&65535)<<0)&65535;c[l>>2]=(c[l>>2]|0)+2;c[h>>2]=((a[(c
[l>>2]|0)+-2>>0]<<16>>16<<8|d[(c[l>>2]|0)+-2+1>>0]<
x3c;0)&65535)<<16>>16;c[k>>2]=((d[c[l>>2]>>0]&65535)<<8|(d
[(c[l>>2]|0)+1>>0]&65535)<<0)&65535;c[j>>2]=(c[j>>2]|0)-(c[n>
x3e;2]|0);if(!(c[k>>2]|0?(c[j>>2]|0)>>>0<(c[g>>2]|0)>>>0:0)){r=
c[m>>2]|0;i=p;return r|0}c[l>>2]=(c[l>>2]|0)+((c[k>>2]|0)+(c[j>>2]<<
1));c[j>>2]=((d[c[l>>2]>>0]&65535)<<8|(d[(c[l>>2]|0)+1>>0]&
;65535)<<0)&65535;if(!(c[j>>2]|0)){r=c[m>>2]|0;i=p;return r|0}c[m>>2]=(c[j>>
;2]|0)+(c[h>>2]|0)&65535;r=c[m>>2]|0;i=p;return r|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,m=0,n=0;n=i;i=i+32|0;e=n+28|0;f=n+24|0;k=n+20|0;h=n+16|0;g=n+12|0;j=n+8|0;m=n+4|0;l=n;c[e>>2]=a;c[f>>
;2]=b;c[k>>2]=0;if((c[f>>2]|0)>>>0>=65536){a=c[k>>2]|0;i=n;return a|0}c[h>
;>2]=c[f>>2]&255;c[g>>2]=(c[f>>2]|0)>>>8;c[j>>2]=(c[e>>
;2]|0)+6;c[m>>2]=(c[e>>2]|0)+518;if(!(c[g>>2]|0)){c[l>>2]=c[m>>2];c[j>>
;2]=(c[j>>2]|0)+(c[h>>2]<<1);if((((d[c[j>>2]>>0]|0)&65535)<<8|((
d[(c[j>>2]|0)+1>>0]|0)&65535)<<0)&65535|0){a=c[k>>2]|0;i=n;return a|0}}else{c[
j>>2]=(c[j>>2]|0)+(c[g>>2]<<1);c[l>>2]=(c[m>>2]|0)+((((d[c[j>
x3e;2]>>0]|0)&65535)<<8|((d[(c[j>>2]|0)+1>>0]|0)&65535)<<0)&65535
&-8);if((c[l>>2]|0)==(c[m>>2]|0)){a=c[k>>2]|0;i=n;return a|0}}c[k>>2]=c[l>>
;2];a=c[k>>2]|0;i=n;return a|0}function jj(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;v=i;i=i+64|0;w=v+56|0;f=v+52|0;t=v+48|0;l=v+44|0;q=v+40|0;h=v+36|0;s=v+32|0;o=v+28|0;r=v+24|0;j=v+20|0;k=v+16|0;n=
v+12|0;g=v+8|0;p=v+4|0;m=v;c[w>>2]=b;c[f>>2]=e;c[t>>2]=c[(c[w>>2]|0)+16>>2];c[
l>>2]=0;c[q>>2]=0;c[h>>2]=(c[c[f>>2]>>2]|0)+1;a:while(1){if((c[h>>2]|
0)>>>0>=65536){u=15;break}c[s>>2]=ij(c[t>>2]|0,c[h>>2]|0)|0;b:do if(c[s>
x3e;2]|0?(c[o>>2]=c[s>>2],c[o>>2]=(c[o>>2]|0)+2,c[r>>2]=((d[(c[o>>2]|
0)+-2>>0]&65535)<<8|(d[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535,c[
o>>2]=(c[o>>2]|0)+2,c[j>>2]=((d[(c[o>>2]|0)+-2>>0]&65535)<<8|(d
[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535,c[o>>2]=(c[o>>2]|0)+2,c[k>
;>2]=((a[(c[o>>2]|0)+-2>>0]<<16>>16<<8|d[(c[o>>2]|0)+-2+1>
x3e;0]<<0)&65535)<<16>>16,c[n>>2]=((d[c[o>>2]>>0]&65535)
x3c;<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535,c[g>>2]=c[h>>2]&
;255,c[n>>2]|0):0){if((c[g>>2]|0)>>>0<(c[r>>2]|0)>>>0){c[g>
;>2]=c[r>>2];c[p>>2]=0}else c[p>>2]=(c[g>>2]|0)-(c[r>>2]|0);c[o>>
;2]=(c[o>>2]|0)+((c[n>>2]|0)+(c[p>>2]<<1));c[h>>2]=(c[h>>2]&-256
)+(c[g>>2]|0);while(1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break
b;c[o>>2]=(c[o>>2]|0)+2;c[m>>2]=((d[(c[o>>2]|0)+-2>>0]&65535)<<
;8|(d[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535;if(c[m>>2]|0?(c[l>>2]=(c
[m>>2]|0)+(c[k>>2]|0)&65535,c[l>>2]|0):0)break a;c[p>>2]=(c[p>>2]|0)+1;c[
h>>2]=(c[h>>2]|0)+1}}while(0);c[h>>2]=(c[h>>2]&-256)+256}if((u|0)==15){u=c[q>
x3e;2]|0;w=c[f>>2]|0;c[w>>2]=u;w=c[l>>2]|0;i=v;return w|0}c[q>>2]=c[h>>2];u=c[
q>>2]|0;w=c[f>>2]|0;c[w>>2]=u;w=c[l>>2]|0;i=v;return w|0}function kj(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;x=i;i=i+80|0;g=x+64|0;h=x+60|0;v=x+56|0;q=x+52|0;t=x+48
|0;s=x+44|0;f=x+40|0;w=x+36|0;m=x+32|0;o=x+28|0;l=x+24|0;j=x+20|0;u=x+16|0;k=x+12|0;n=x+8|0;r=x+4|0;p=x;c[g>>2]=b;c[h
x3e;>2]=e;c[v>>2]=(c[g>>2]|0)+2;c[q>>2]=((d[c[v>>2]>>0]&65535)<
x3c;8|(d[(c[v>>2]|0)+1>>0]&65535)<<0)&65535;if((c[q>>2]|0)>>>0
x3c;518?1:((c[g>>2]|0)+(c[q>>2]|0)|0)>>>0>(c[(c[h>>2]|0)+4>>2]|0)>
;>>0)sc(c[h>>2]|0,8);c[f>>2]=(c[g>>2]|0)+6;c[v>>2]=c[f>>2];c[s>
x3e;2]=0;c[t>>2]=0;while(1){f=c[v>>2]|0;if((c[t>>2]|0)>>>0>=256)break;c[v>
;>2]=f+2;c[o>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+
1>>0]&65535)<<0)&65535;if((c[(c[h>>2]|0)+8>>2]|0)>>>0>=2?c
[o>>2]&7|0:0)sc(c[h>>2]|0,8);c[o>>2]=(c[o>>2]|0)>>>3;if((c[o>
x3e;2]|0)>>>0>(c[s>>2]|0)>>>0)c[s>>2]=c[o>>2];c[t>>2]=(
c[t>>2]|0)+1}c[w>>2]=f;c[m>>2]=(c[w>>2]|0)+((c[s>>2]|0)+1<<3);if((c[
m>>2]|0)>>>0>(c[(c[h>>2]|0)+4>>2]|0)>>>0)sc(c[h>>2]|0
,8);c[t>>2]=0;while(1){if((c[t>>2]|0)>>>0>(c[s>>2]|0)>>>0)break
;c[v>>2]=(c[v>>2]|0)+2;c[l>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8
|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[v>>2]=(c[v>>2]|0)+2;c[j
x3e;>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>>0]&
;65535)<<0)&65535;c[v>>2]=(c[v>>2]|0)+2;c[k>>2]=((a[(c[v>>2]|0)+-2>
x3e;0]<<16>>16<<8|d[(c[v>>2]|0)+-2+1>>0]<<0)&65535)<<
16>>16;c[v>>2]=(c[v>>2]|0)+2;c[u>>2]=((d[(c[v>>2]|0)+-2>>0]&65535
)<<8|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0)&65535;a:do if(c[j>>2]|0){do
if((c[(c[h>>2]|0)+8>>2]|0)>>>0>=2){if((c[l>>2]|0)>>>0<256?((
c[l>>2]|0)+(c[j>>2]|0)|0)>>>0<=256:0)break;sc(c[h>>2]|0,8)}while(0);if(c[u>
;>2]|0){c[n>>2]=(c[v>>2]|0)+-2+(c[u>>2]|0);if(!((c[n>>2]|0)>>>0>
;=(c[m>>2]|0)>>>0?((c[n>>2]|0)+(c[j>>2]<<1)|0)>>>0<=((
c[g>>2]|0)+(c[q>>2]|0)|0)>>>0:0))sc(c[h>>2]|0,9);if((c[(c[h>>2]|0)+8>
;>2]|0)>>>0>=1){c[r>>2]=(c[v>>2]|0)+(c[j>>2]<<1);while(1){if((c
[v>>2]|0)>>>0>=(c[r>>2]|0)>>>0)break a;c[v>>2]=(c[v>>
2]|0)+2;c[p>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>
;>0]&65535)<<0)&65535;if(!(c[p>>2]|0))continue;c[p>>2]=(c[p>>2]|0)+(c[k
x3e;>2]|0)&65535;if((c[p>>2]|0)>>>0<(c[(c[h>>2]|0)+172>>2]|0)>
x3e;>0)continue;sc(c[h>>2]|0,16)}}}}while(0);c[t>>2]=(c[t>>2]|0)+1}i=x;return 0}function lj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(
c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=2;c[c[f>>2]>>2]=(((d[c
[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&65535)<<0
)&65535;i=e;return 0}function mj(a,b){a=a|0;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[f>>2]=a;
c[h>>2]=b;c[(c[f>>2]|0)+16>>2]=c[h>>2];c[g>>2]=(c[h>>2]|0)+6;c[(c[f
x3e;>2]|0)+32>>2]=((((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1
x3e;>0]|0)&65535)<<0)&65535)>>1;c[(c[f>>2]|0)+24>>2]=-1;c[(c[f>>
;2]|0)+28>>2]=0;i=e;return 0}function nj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>
;>2]=a;c[f>>2]=b;do if((c[f>>2]|0)>>>0<65536){b=c[e>>2]|0;if(c[(c[e>
x3e;2]|0)+20>>2]&1|0){c[d>>2]=oj(b,f,0)|0;break}else{c[d>>2]=pj(b,f,0)|0;break}}else c[d>
;>2]=0;while(0);i=g;return c[d>>2]|0}function oj(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;z=i;i=i+80|0;g=z+60|0;h=z+56|0;j=z+52|0;k=z+64|0;t=z+48|0;x=z+44|0;n=z+40|0;u=z+36|0;m=
z+32|0;q=z+28|0;s=z+24|0;l=z+20|0;p=z+16|0;v=z+12|0;w=z+8|0;o=z+4|0;r=z;c[h>>2]=b;c[j>>2]=e;a[k>>0
]=f;c[l>>2]=c[c[j>>2]>>2];c[p>>2]=0;c[v>>2]=(c[(c[h>>2]|0)+16>
x3e;2]|0)+6;c[t>>2]=((d[c[v>>2]>>0]&65535)<<8|(d[(c[v>>2]|0)+1>>
;0]&65535)<<0)&65535&-2;c[s>>2]=(c[t>>2]|0)>>>1;if(!(c[s>>
2]|0)){c[g>>2]=0;y=c[g>>2]|0;i=z;return y|0}if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1
;while(1){if((c[l>>2]|0)>>>0>65535)break;c[v>>2]=(c[(c[h>>2]|0)+16>>
2]|0)+14;c[w>>2]=(c[(c[h>>2]|0)+16>>2]|0)+16+(c[t>>2]|0);c[q>>2]=0;while(1){if
((c[q>>2]|0)>>>0>=(c[s>>2]|0)>>>0)break;c[v>>2]=(c[v>>
;2]|0)+2;c[n>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>
;>0]&65535)<<0)&65535;c[w>>2]=(c[w>>2]|0)+2;c[x>>2]=((d[(c[w>>2
]|0)+-2>>0]&65535)<<8|(d[(c[w>>2]|0)+-2+1>>0]&65535)<<0)&65535;
if((c[l>>2]|0)>>>0>=(c[x>>2]|0)>>>0?(c[l>>2]|0)>>>
;0<=(c[n>>2]|0)>>>0:0){c[v>>2]=(c[w>>2]|0)+-2+(c[t>>2]|0);c[m>
x3e;2]=((a[c[v>>2]>>0]<<16>>16<<8|d[(c[v>>2]|0)+1>>0]<
;<0)&65535)<<16>>16;c[v>>2]=(c[v>>2]|0)+(c[t>>2]|0);c[u>>2
]=((d[c[v>>2]>>0]&65535)<<8|(d[(c[v>>2]|0)+1>>0]&65535)<<0
)&65535;if((((c[x>>2]|0)==65535?(c[q>>2]|0)>>>0>=((c[s>>2]|0)-1|0)>
x3e;>0:0)&(c[n>>2]|0)==65535?(c[o>>2]=c[c[h>>2]>>2],c[r>>2]=(c[(c[o
x3e;>2]|0)+500>>2]|0)+(c[(c[o>>2]|0)+504>>2]|0),c[u>>2]|0):0)?((c[v>>2]|0
)+(c[u>>2]|0)+2|0)>>>0>(c[r>>2]|0)>>>0:0){c[m>>2]=1;c[u>
x3e;2]=0}if((c[u>>2]|0)!=65535){y=15;break}}c[q>>2]=(c[q>>2]|0)+1}do if((y|0)==15){y=0;if(!(c[u>
;>2]|0)){c[p>>2]=(c[l>>2]|0)+(c[m>>2]|0)&65535;break}c[v>>2]=(c[v>>2
]|0)+((c[u>>2]|0)+((c[l>>2]|0)-(c[x>>2]|0)<<1));c[p>>2]=((d[c[v>>2]
x3e;>0]&65535)<<8|(d[(c[v>>2]|0)+1>>0]&65535)<<0)&65535;if(c[p>
x3e;2]|0)c[p>>2]=(c[p>>2]|0)+(c[m>>2]|0)&65535}while(0);if((a[k>>0]|0)==0|(c[p>
;>2]|0)!=0)break;c[l>>2]=(c[l>>2]|0)+1}if((d[k>>0]|0)!=0&(c[p>>2]|0)!=0)c[c[j
x3e;>2]>>2]=c[l>>2];c[g>>2]=c[p>>2];y=c[g>>2]|0;i=z;return y|0}function pj
(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,D=0,E=0,F=
0,G=0;G=i;i=i+96|0;g=G+88|0;h=G+84|0;j=G+80|0;k=G+92|0;z=G+76|0;E=G+72|0;o=G+68|0;A=G+64|0;n=G+60|0;t=G+56|0;v=G+52|0;u=G+48|0;y
=G+44|0;l=G+40|0;q=G+36|0;C=G+32|0;p=G+28|0;s=G+24|0;r=G+20|0;D=G+16|0;B=G+12|0;w=G+8|0;x=G+4|0;m=G;c[h>>2]=b;c[j>
;>2]=e;a[k>>0]=f;c[l>>2]=c[c[j>>2]>>2];c[q>>2]=0;c[C>>2]=(c[(c[
h>>2]|0)+16>>2]|0)+6;c[z>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C
x3e;>2]|0)+1>>0]&65535)<<0)&65535&-2;if(!(c[z>>2]|0)){c[g>>2]=0;F=c[
g>>2]|0;i=G;return F|0}c[y>>2]=(c[z>>2]|0)>>>1;c[u>>2]=c[y>>2];
c[o>>2]=65535;if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1;c[v>>2]=0;c[t>>2]=c
[y>>2];while(1){if((c[v>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[u
x3e;>2]=((c[v>>2]|0)+(c[t>>2]|0)|0)>>>1;c[C>>2]=(c[(c[h>>2]|0)+16>
;>2]|0)+14+(c[u>>2]<<1);c[o>>2]=((d[c[C>>2]>>0]&65535)<<8|(
d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(2+(c[z>
;>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>
;0]&65535)<<0)&65535;if((c[l>>2]|0)>>>0<(c[E>>2]|0)>>>
;0){c[t>>2]=c[u>>2];continue}if((c[l>>2]|0)>>>0<=(c[o>>2]|0)>
x3e;>0){F=11;break}c[v>>2]=(c[u>>2]|0)+1}do if((F|0)==11){c[C>>2]=(c[C>>2]|0)+(c[z
x3e;>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>>
;2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>
x3e;2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0
]&65535)<<0)&65535;if((((c[E>>2]|0)==65535?(c[u>>2]|0)>>>0>=((c[y>
;>2]|0)-1|0)>>>0:0)&(c[o>>2]|0)==65535?(c[p>>2]=c[c[h>>2]>>2],c
[s>>2]=(c[(c[p>>2]|0)+500>>2]|0)+(c[(c[p>>2]|0)+504>>2]|0),c[A>>2]|0
):0)?((c[C>>2]|0)+(c[A>>2]|0)+2|0)>>>0>(c[s>>2]|0)>>>0:0){c[n
x3e;>2]=1;c[A>>2]=0}if(c[(c[h>>2]|0)+20>>2]&2|0){c[t>>2]=c[u>>2];if((
c[A>>2]|0)==65535)c[u>>2]=(c[t>>2]|0)+1;c[r>>2]=c[t>>2];while(1){if((c[r>
x3e;2]|0)>>>0<=0)break;c[B>>2]=c[C>>2];c[C>>2]=(c[(c[h>>2]|0)+16>
;>2]|0)+14+((c[r>>2]|0)-1<<1);c[D>>2]=((d[c[C>>2]>>0]&65535)<
x3c;8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[l>>2]|0)>>>0
x3e;(c[D>>2]|0)>>>0){F=21;break}c[o>>2]=c[D>>2];c[C>>2]=(c[C>>2
]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>
;2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>
;>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>>2]|0)+1>>0]
x3c;<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>
;2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<
;0)&65535;if((c[A>>2]|0)!=65535)c[u>>2]=(c[r>>2]|0)-1;c[r>>2]=(c[r>>2]|0)+-
1}if((F|0)==21)c[C>>2]=c[B>>2];if((c[u>>2]|0)==((c[t>>2]|0)+1|0)){if((c[r>>2]|
0)!=(c[t>>2]|0)){c[C>>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[t>>2]<<1);c[
o>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535
)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>
;2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>
;>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>
x3e;16<<8|d[(c[C>>2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>
;2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(
d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535}c[u>>2]=c[t>>2];c[r>>
2]=(c[t>>2]|0)+1;while(1){if((c[r>>2]|0)>>>0>=(c[y>>2]|0)>>>0)break
;c[C>>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[r>>2]<<1);c[w>>2]=((d[c[C>
;>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c
[C>>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[x>>2]=((d[c[C>>2]>>0]&65535
)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[l>>2]|0)>>
;>0<(c[x>>2]|0)>>>0)break;c[o>>2]=c[w>>2];c[E>>2]=c[x>>
;2];c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<
;16>>16<<8|d[(c[C>>2]|0)+1>>0]<<0)&65535)<<16>>16;c[C
>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[A>>2]|0)!=65535)c[u>
x3e;2]=c[r>>2];c[r>>2]=(c[r>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+-1;if((c[u>>
;2]|0)==(c[t>>2]|0)){c[u>>2]=c[r>>2];break}}if((c[u>>2]|0)!=(c[r>>2]|0)){c[C
x3e;>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[u>>2]<<1);c[o>>2]=((d[c[C>>
;2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>
;>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(
c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>
x3e;2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>
;>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>
;0]&65535)<<0)&65535}}else if((c[A>>2]|0)==65535)break;if(!(c[A>>2]|0)){c[q>>2
]=(c[l>>2]|0)+(c[n>>2]|0)&65535;break}c[C>>2]=(c[C>>2]|0)+((c[A>>2]|0)+((
c[l>>2]|0)-(c[E>>2]|0)<<1));c[q>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if(c[q>>2]|0)c[q>>2]=(
c[q>>2]|0)+(c[n>>2]|0)&65535}while(0);do if(a[k>>0]|0){c[m>>2]=c[h>>2];if
((c[l>>2]|0)>>>0>(c[o>>2]|0)>>>0?(c[u>>2]=(c[u>>2]|0)+
1,(c[u>>2]|0)==(c[y>>2]|0)):0){c[g>>2]=0;F=c[g>>2]|0;i=G;return F|0}if(qj(c[m>>
;2]|0,c[u>>2]|0)|0){if(!(c[q>>2]|0))break;c[c[j>>2]>>2]=c[l>>2];break}c[(c[m
x3e;>2]|0)+24>>2]=c[l>>2];if(c[q>>2]|0)c[(c[m>>2]|0)+28>>2]=c[q>>
;2];else{c[(c[m>>2]|0)+24>>2]=c[l>>2];rj(c[m>>2]|0);c[q>>2]=c[(c[m>>
2]|0)+28>>2]}if(c[q>>2]|0)c[c[j>>2]>>2]=c[(c[m>>2]|0)+24>>2]}while(0
);c[g>>2]=c[q>>2];F=c[g>>2]|0;i=G;return F|0}function qj(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;p=i;i=i+48|0;k=p+32|0;l=p+28|0;m=p+24|0;j=p+20|0;o=p+16|0;h=p+12|0;n=p+8|0;f=p+4|0;g=p;c[l>>2]=b;c
[m>>2]=e;c[j>>2]=c[(c[l>>2]|0)+16>>2];c[h>>2]=c[(c[l>>2]|0)+32>
x3e;2];while(1){if((c[m>>2]|0)>>>0>=(c[h>>2]|0)>>>0){b=12;break}c[o>
x3e;2]=(c[j>>2]|0)+14+(c[m>>2]<<1);c[(c[l>>2]|0)+44>>2]=((d[c[o>>2]
x3e;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;c[o>>
;2]=(c[o>>2]|0)+(2+(c[h>>2]<<1));c[(c[l>>2]|0)+40>>2]=((d[c[o>>2]>
;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;c[o>>
2]=(c[o>>2]|0)+(c[h>>2]<<1);c[(c[l>>2]|0)+48>>2]=((a[c[o>>2]>
x3e;0]<<16>>16<<8|d[(c[o>>2]|0)+1>>0]<<0)&65535)<<16
x3e;>16;c[o>>2]=(c[o>>2]|0)+(c[h>>2]<<1);c[n>>2]=((d[c[o>>2]>
;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;if(((((c[m>
;>2]|0)>>>0>=((c[h>>2]|0)-1|0)>>>0?(c[(c[l>>2]|0)+40>>2]|0
)==65535:0)?(c[(c[l>>2]|0)+44>>2]|0)==65535:0)?(c[f>>2]=c[c[l>>2]>>2],c[g>
;>2]=(c[(c[f>>2]|0)+500>>2]|0)+(c[(c[f>>2]|0)+504>>2]|0),c[n>>2]|0):0)?((
c[o>>2]|0)+(c[n>>2]|0)+2|0)>>>0>(c[g>>2]|0)>>>0:0){c[(c[l>
x3e;2]|0)+48>>2]=1;c[n>>2]=0}if((c[n>>2]|0)!=65535){b=10;break}c[m>>2]=(c[m>>2
]|0)+1}if((b|0)==10){c[(c[l>>2]|0)+52>>2]=c[n>>2]|0?(c[o>>2]|0)+(c[n>>2]|0)|0:
0;c[(c[l>>2]|0)+36>>2]=c[m>>2];c[k>>2]=0;o=c[k>>2]|0;i=p;return o|0}else if((b
|0)==12){c[k>>2]=-1;o=c[k>>2]|0;i=p;return o|0}return 0}function rj(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;n=i;i=i+32|0;j=n+28|0;k=n+24|0;h=n+20|0;f=n+16|0;e=n+12|0;g=n+8|0;l=n+4|0;m=n;c[j>>2]=a;a:do if((c[(c[j
x3e;>2]|0)+24>>2]|0)>>>0<65535){c[k>>2]=(c[(c[j>>2]|0)+24>>2]|0
)+1;if((c[k>>2]|0)>>>0<(c[(c[j>>2]|0)+40>>2]|0)>>>0)c[k>
x3e;2]=c[(c[j>>2]|0)+40>>2];b:while(1){c[h>>2]=c[(c[j>>2]|0)+52>>2];c[f>
x3e;2]=c[(c[j>>2]|0)+44>>2];c[e>>2]=c[(c[j>>2]|0)+48>>2];c:do if((c[k>>
;2]|0)>>>0<=(c[f>>2]|0)>>>0){if(!(c[h>>2]|0))while(1){c[m>>2]=(
c[k>>2]|0)+(c[e>>2]|0)&65535;b=c[k>>2]|0;if(c[m>>2]|0){a=12;break b}b=b+1|0;c[k>
;>2]=b;if(b>>>0>(c[f>>2]|0)>>>0)break c}c[g>>2]=(c[h>>2]|0
)+((c[k>>2]|0)-(c[(c[j>>2]|0)+40>>2]|0)<<1);do{c[g>>2]=(c[g>>2]|0)+2
;c[l>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+-2+1>
x3e;0]|0)&65535)<<0)&65535;if(c[l>>2]|0?(c[l>>2]=(c[l>>2]|0)+(c[e>>2
]|0)&65535,c[l>>2]|0):0){a=9;break b}b=(c[k>>2]|0)+1|0;c[k>>2]=b}while(b>>>0
x3c;=(c[f>>2]|0)>>>0)}while(0);if((qj(c[j>>2]|0,(c[(c[j>>2]|0)+36>>2]|0)+
1|0)|0)<0)break a;if((c[k>>2]|0)>>>0>=(c[(c[j>>2]|0)+40>>2]|0)>>
;>0)continue;c[k>>2]=c[(c[j>>2]|0)+40>>2]}if((a|0)==9){c[(c[j>>2]|0)+24>>
2]=c[k>>2];c[(c[j>>2]|0)+28>>2]=c[l>>2];i=n;return}else if((a|0)==12){c[(c[j>>
2]|0)+24>>2]=b;c[(c[j>>2]|0)+28>>2]=c[m>>2];i=n;return}}while(0);c[(c[j>>2]|0)+
24>>2]=-1;c[(c[j>>2]|0)+28>>2]=0;i=n;return}function sj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=b;if((c[c[f>>2]>>
;2]|0)>>>0>=65535){c[d>>2]=0;h=c[d>>2]|0;i=j;return h|0}a=c[e>>2]|0;do if(!(c[(
c[e>>2]|0)+20>>2]&1|0)){c[g>>2]=a;if((c[c[f>>2]>>2]|0)!=(c[(c[g>>
;2]|0)+24>>2]|0)){c[h>>2]=pj(c[e>>2]|0,c[f>>2]|0,1)|0;break}rj(c[g>>2]|0);c[h
x3e;>2]=c[(c[g>>2]|0)+28>>2];if(c[h>>2]|0)c[c[f>>2]>>2]=c[(c[g>>
;2]|0)+24>>2]}else c[h>>2]=oj(a,c[f>>2]|0,1)|0;while(0);c[d>>2]=c[h>>2];h=c[d
x3e;>2]|0;i=j;return h|0}function tj(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,D=0,E=0,F=0,G=0,H=0;H=i;i=i+112|0;n=H+104|0;o=H+100|0;B=H+96|0;x=H+92|0;g=H+88|0;m=H+84|0;j=H+80|0;f=
H+76|0;s=H+72|0;z=H+68|0;r=H+64|0;l=H+60|0;h=H+56|0;k=H+52|0;G=H+48|0;q=H+44|0;A=H+40|0;y=H+36|0;w=H+32|0;v=H+28|0;p=H+24|0;F=H+
20|0;D=H+16|0;C=H+12|0;E=H+8|0;t=H+4|0;u=H;c[n>>2]=b;c[o>>2]=e;c[B>>2]=(c[n>>2]|0)+2;c[B
>>2]=(c[B>>2]|0)+2;c[x>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<<8|(d[(
c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[r>>2]=0;if((c[x>>2]|0)>
x3e;>0<16)sc(c[o>>2]|0,8);if(((c[n>>2]|0)+(c[x>>2]|0)|0)>>>0>(c[(c[o
>>2]|0)+4>>2]|0)>>>0){if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=
1)sc(c[o>>2]|0,8);c[x>>2]=(c[(c[o>>2]|0)+4>>2]|0)-(c[n>>2]|0)}c[B>>2
]=(c[n>>2]|0)+6;c[B>>2]=(c[B>>2]|0)+2;c[z>>2]=((d[(c[B>>2]|0)+-2>>0]
x26;65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if((c[(c[o>>2
]|0)+8>>2]|0)>>>0>=2?c[z>>2]&1|0:0)sc(c[o>>2]|0,8);c[z>>2]=((c[
z>>2]|0)>>>0)/2|0;if((c[x>>2]|0)>>>0<(16+(c[z>>2]<<1
x3c;<2)|0)>>>0)sc(c[o>>2]|0,8);do if((c[(c[o>>2]|0)+8>>2]|0)>>>
0>=2){c[B>>2]=(c[B>>2]|0)+2;c[l>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<
;<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[B>>2]=(c[B>>2]|0
)+2;c[h>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<<8|(d[(c[B>>2]|0)+-2+1>>
;0]&65535)<<0)&65535;c[B>>2]=(c[B>>2]|0)+2;c[k>>2]=((d[(c[B>>2]|0)+-
2>>0]&65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if((c[
l>>2]|c[k>>2])&1|0)sc(c[o>>2]|0,8);c[l>>2]=((c[l>>2]|0)>>>
0)/2|0;c[k>>2]=((c[k>>2]|0)>>>0)/2|0;if((((c[l>>2]|0)>>>0<=(c[z
>>2]|0)>>>0?c[l>>2]<<1>>>0>=(c[z>>2]|0)>>
x3e;0:0)?((c[l>>2]|0)+(c[k>>2]|0)|0)==(c[z>>2]|0):0)?(c[l>>2]|0)==(1<<c[h>
;>2]|0):0)break;sc(c[o>>2]|0,8)}while(0);c[g>>2]=(c[n>>2]|0)+14;c[m>>2]=(c[n>
x3e;2]|0)+16+(c[z>>2]<<1);c[f>>2]=(c[m>>2]|0)+(c[z>>2]<<1);c[j>
x3e;2]=(c[f>>2]|0)+(c[z>>2]<<1);c[s>>2]=(c[j>>2]|0)+(c[z>>2]<
x3c;1);if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=2?(c[B>>2]=(c[g>>2]|0)+((c[z
x3e;>2]|0)-1<<1),(((d[c[B>>2]>>0]&65535)<<8|(d[(c[B>>2]|0)+1>
x3e;0]&65535)<<0)&65535|0)!=65535):0)sc(c[o>>2]|0,8);c[w>>2]=0;c[v>>2]=0;c[F
x3e;>2]=c[m>>2];c[D>>2]=c[g>>2];c[C>>2]=c[f>>2];c[E>>2]=c[j>
;>2];c[y>>2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[z>>2]|0)>>>
0)break;c[B>>2]=c[E>>2];c[F>>2]=(c[F>>2]|0)+2;c[G>>2]=((d[(c[F>>2]|0
)+-2>>0]&65535)<<8|(d[(c[F>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[D
>>2]=(c[D>>2]|0)+2;c[q>>2]=((d[(c[D>>2]|0)+-2>>0]&65535)<<8|(d[(
c[D>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+2;c[p>
x3e;2]=((a[(c[C>>2]|0)+-2>>0]<<16>>16<<8|d[(c[C>>2]|0)+-2+1>>
;0]<<0)&65535)<<16>>16;c[E>>2]=(c[E>>2]|0)+2;c[A>>2]=((d[(c[E
x3e;>2]|0)+-2>>0]&65535)<<8|(d[(c[E>>2]|0)+-2+1>>0]&65535)<<0)
x26;65535;if((c[G>>2]|0)>>>0>(c[q>>2]|0)>>>0)sc(c[o>>2]|0,8);do
if((c[y>>2]|0)>>>0>0?(c[G>>2]|0)>>>0<=(c[v>>2]|0)>
x3e;>0:0){if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=1){sc(c[o>>2]|0,8);break}if((c[
w>>2]|0)>>>0<=(c[G>>2]|0)>>>0?(c[v>>2]|0)>>>0<
;=(c[q>>2]|0)>>>0:0){c[r>>2]=c[r>>2]|2;break}c[r>>2]=c[r>>2]|1}
while(0);f=c[A>>2]|0;a:do if((c[A>>2]|0)!=0&(c[A>>2]|0)!=65535){c[B>>2]=(c[B>
x3e;2]|0)+f;do if((c[(c[o>>2]|0)+8>>2]|0)>>>0<1){if(!(((c[G>>2]|0)==65535?(c[y
>>2]|0)==((c[z>>2]|0)-1|0):0)&(c[q>>2]|0)==65535)){if((c[B>>2]|0)>>>
0>=(c[s>>2]|0)>>>0?((c[B>>2]|0)+((c[q>>2]|0)-(c[G>>2]|0)+1<<
;1)|0)>>>0<=(c[(c[o>>2]|0)+4>>2]|0)>>>0:0)break;sc(c[o>>2]|0,8)}}
else{if((c[B>>2]|0)>>>0>=(c[s>>2]|0)>>>0?((c[B>>2]|0)+((c[q>
;>2]|0)-(c[G>>2]|0)+1<<1)|0)>>>0<=((c[n>>2]|0)+(c[x>>2]|0)|0)
x3e;>>0:0)break;sc(c[o>>2]|0,8)}while(0);if((c[(c[o>>2]|0)+8>>2]|0)>>>0
x3e;=1){c[t>>2]=c[G>>2];while(1){if((c[t>>2]|0)>>>0>=(c[q>>2]|0)>
;>>0)break a;c[B>>2]=(c[B>>2]|0)+2;c[u>>2]=((d[(c[B>>2]|0)+-2>>0]&
;65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if(c[u>>2]|0?(c[
u>>2]=(c[u>>2]|0)+(c[p>>2]|0)&65535,(c[u>>2]|0)>>>0>=(c[(c[o>
;>2]|0)+172>>2]|0)>>>0):0)sc(c[o>>2]|0,16);c[t>>2]=(c[t>>2]|0)+1}}}else
if((f|0)==65535){if((c[(c[o>>2]|0)+8>>2]|0)>>>0<2?((c[G>>2]|0)==65535?(c[y>
;>2]|0)==((c[z>>2]|0)-1|0):0)&(c[q>>2]|0)==65535:0)break;sc(c[o>>2]|0,8)}while(0);c[w>
;>2]=c[G>>2];c[v>>2]=c[q>>2];c[y>>2]=(c[y>>2]|0)+1}i=H;return c[r>
x3e;2]|0}function uj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=
b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=4;c[c[f>>2]
x3e;>2]=(((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&
65535)<<0)&65535;i=e;return 0}function vj(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;h=i;i=i+32|0;n
=h+28|0;l=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;k=h+8|0;j=h+4|0;e=h;c[n>>2]=a;c[l>>2]=b;c[m>>2]=c[(c[n
>>2]|0)+16>>2];c[g>>2]=0;c[f>>2]=(c[m>>2]|0)+6;c[f>>2]=(c[f>>
;2]|0)+2;c[k>>2]=(((d[(c[f>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+-2+
1>>0]|0)&65535)<<0)&65535;c[f>>2]=(c[f>>2]|0)+2;c[j>>2]=(((d[(c[f>
;>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+-2+1>>0]|0)&65535)<<
;0)&65535;c[e>>2]=(c[l>>2]|0)-(c[k>>2]|0);if((c[e>>2]|0)>>>0>=(
c[j>>2]|0)>>>0){n=c[g>>2]|0;i=h;return n|0}c[f>>2]=(c[f>>2]|0)+(c[e>
x3e;2]<<1);c[g>>2]=(((d[c[f>>2]>>0]|0)&65535)<<8|((d[(c[f>>2]|0
)+1>>0]|0)&65535)<<0)&65535;n=c[g>>2]|0;i=h;return n|0}function wj(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;o=i;i=i+48|0;q=o+36|0;f=o+32|0;p=o+28|0;m=o+24|0;g=o+20|0;j=o+16|0;l=o+12|0;e=o+
8|0;h=o+4|0;k=o;c[q>>2]=a;c[f>>2]=b;c[p>>2]=c[(c[q>>2]|0)+16>>2];c[m>>
;2]=0;c[g>>2]=(c[c[f>>2]>>2]|0)+1;c[j>>2]=0;c[l>>2]=(c[p>>2]|0)+6;c[
l>>2]=(c[l>>2]|0)+2;c[e>>2]=(((d[(c[l>>2]|0)+-2>>0]|0)&65535)<<
8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[l>>2]=(c[l>>2]|0)+2
;c[h>>2]=(((d[(c[l>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>
x3e;0]|0)&65535)<<0)&65535;if((c[g>>2]|0)>>>0>=65536){p=c[m>>2]|0;q=
c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}if((c[g>>2]|0)>>>0<(c
[e>>2]|0)>>>0)c[g>>2]=c[e>>2];c[k>>2]=(c[g>>2]|0)-(c[e>>
;2]|0);c[l>>2]=(c[l>>2]|0)+(c[k>>2]<<1);while(1){if((c[k>>2]|0)>>>
;0>=(c[h>>2]|0)>>>0){n=9;break}c[l>>2]=(c[l>>2]|0)+2;c[j>>2]=(((d[(c
[l>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<
;<0)&65535;a=c[g>>2]|0;if(c[j>>2]|0)break;c[g>>2]=a+1;c[k>>2]=(c[k>>
2]|0)+1}if((n|0)==9){p=c[m>>2]|0;q=c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}c[m>
;>2]=a;p=c[m>>2]|0;q=c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}function xj(a,b
){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;k=l+12|0;j=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[
f>>2]=b;if(((c[e>>2]|0)+10|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>
;>0)sc(c[f>>2]|0,8);c[k>>2]=(c[e>>2]|0)+2;c[k>>2]=(c[k>>2]|0)+2;c[j>
x3e;2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)
x26;65535)<<0)&65535;c[k>>2]=(c[e>>2]|0)+8;c[k>>2]=(c[k>>2]|0)+2;c[g>
;>2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0
)&65535)<<0)&65535;if(!(((c[e>>2]|0)+(c[j>>2]|0)|0)>>>0<=(c[(c[f>
;>2]|0)+4>>2]|0)>>>0?(c[j>>2]|0)>>>0>=(10+(c[g>>2]<
x3c;1)|0)>>>0:0))sc(c[f>>2]|0,8);if(!((c[g>>2]|0)>>>0>0?(c[(c[f>>
;2]|0)+8>>2]|0)>>>0>=1:0)){i=l;return 0}do{c[k>>2]=(c[k>>2]|0)+2;c[h>>
;2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)&
;65535)<<0)&65535;if((c[h>>2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)
x3e;>>0)sc(c[f>>2]|0,16);c[g>>2]=(c[g>>2]|0)+-1}while((c[g>>2]|0)>>
x3e;0>0);i=l;return 0}function yj(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;f=e+4|0;g=e;c[h>>2]=a
;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=6;
c[c[f>>2]>>2]=(((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1
x3e;>0]|0)&65535)<<0)&65535;i=e;return 0}function zj(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;m=i;i=i+48|0;o=m+32|0;h=m+28|0;n=m+24|0;j=m+20|0;g=m+16|0;f=m+12|0;k=m+8|0;e=m+4|0;l=m;c[o>>2]=a;c[h>
x3e;2]=b;c[n>>2]=c[(c[o>>2]|0)+16>>2];c[j>>2]=0;c[g>>2]=(c[n>>2]|0)+
8204;c[g>>2]=(c[g>>2]|0)+4;c[f>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(
c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>
;>2]|0)+-4+3>>0]|0)<<0;while(1){if((c[f>>2]|0)>>>0<=0){b=7;break}c[g>
;>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>
;2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-
4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[e>>2]=(d[(c[g>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[l>
x3e;2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if((c[h
x3e;>2]|0)>>>0<(c[k>>2]|0)>>>0){b=7;break}if((c[h>>2]|0)>>
x3e;0<=(c[e>>2]|0)>>>0){b=5;break}c[f>>2]=(c[f>>2]|0)+-1}if((b|0)==5){c[j>
;>2]=(c[l>>2]|0)+(c[h>>2]|0)-(c[k>>2]|0);o=c[j>>2]|0;i=m;return o|0}else if((b|0)==
7){o=c[j>>2]|0;i=m;return o|0}return 0}function Aj(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;p=i;i=i+48|0;r=p+40|0;e=p+36|0;l=p+32|0;f=p+28|0;h=p+24|0;q=p+20|0;k=p+16|0;j=p+12|0;m=p+8|0;g=p+4|0;n=p;c[r>>2]=
a;c[e>>2]=b;c[l>>2]=0;c[f>>2]=(c[c[e>>2]>>2]|0)+1;c[h>>2]=0;c[q>
;>2]=c[(c[r>>2]|0)+16>>2];c[k>>2]=(c[q>>2]|0)+8204;c[k>>2]=(c[k>>
;2]|0)+4;c[j>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<
;<0;c[k>>2]=(c[q>>2]|0)+8208;while(1){if((c[j>>2]|0)>>>0<=0){o=9;break}c[
k>>2]=(c[k>>2]|0)+4;c[m>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>
;>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>
2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>2]|0)+4;c[g>>2]=(d[(c[k>>2]|0)+-4
>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>
x3e;0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>2]|0)+4;c[n
>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<
x3c;16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;if
((c[f>>2]|0)>>>0<(c[m>>2]|0)>>>0)c[f>>2]=c[m>>2];if((
c[f>>2]|0)>>>0<=(c[g>>2]|0)>>>0?(c[h>>2]=(c[f>>2]|0)-(
c[m>>2]|0)+(c[n>>2]|0),c[h>>2]|0):0)break;c[j>>2]=(c[j>>2]|0)+-1}if((o|0)==9){
q=c[l>>2]|0;r=c[e>>2]|0;c[r>>2]=q;r=c[h>>2]|0;i=p;return r|0}c[l>>2]=c[f>
x3e;2];q=c[l>>2]|0;r=c[e>>2]|0;c[r>>2]=q;r=c[h>>2]|0;i=p;return r|0}function Bj(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;t=i;i=i+64|0;e=t+52|0;f=t+48|0;q=t+44|0;k=t+40|0;m=t+36
|0;p=t+32|0;o=t+28|0;r=t+24|0;h=t+20|0;s=t+16|0;g=t+12|0;l=t+8|0;j=t+4|0;n=t;c[e>>2]=a;c[f>>2]=b;c[q>
x3e;2]=(c[e>>2]|0)+4;if(((c[e>>2]|0)+16+8192|0)>>>0>(c[(c[f>>2]|0)+4>>
;2]|0)>>>0)sc(c[f>>2]|0,8);c[q>>2]=(c[q>>2]|0)+4;c[m>>2]=(d[(c[q>>
;2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-
4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;if((c[m>>2]|0)>>
;>0<8208?1:(c[m>>2]|0)>>>0>((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>
2]|0)|0)>>>0)sc(c[f>>2]|0,8);c[k>>2]=(c[e>>2]|0)+12;c[q>>2]=(c[k>>
;2]|0)+8192;c[q>>2]=(c[q>>2]|0)+4;c[p>>2]=(d[(c[q>>2]|0)+-4>>0]|0)<<
24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(
c[q>>2]|0)+-4+3>>0]|0)<<0;if(((c[q>>2]|0)+((c[p>>2]|0)*12|0)|0)>>>
;0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[l>>2]=0;c[o>
x3e;2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[q>>
;2]=(c[q>>2]|0)+4;c[r>>2]=(d[(c[q>>2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3
x3e;>0]|0)<<0;c[q>>2]=(c[q>>2]|0)+4;c[h>>2]=(d[(c[q>>2]|0)+-4>>
0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;c[q>>2]=(c[q>>2]|0)+4;c[s>>
;2]=(d[(c[q>>2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(
c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;if((c[r>
;>2]|0)>>>0>(c[h>>2]|0)>>>0)sc(c[f>>2]|0,8);if((c[o>>2]|0)
x3e;>>0>0?(c[r>>2]|0)>>>0<=(c[l>>2]|0)>>>0:0)sc(c[f>
x3e;2]|0,8);a:do if((c[(c[f>>2]|0)+8>>2]|0)>>>0>=1){if(((c[s>>2]|0)+(c[h>
x3e;2]|0)-(c[r>>2]|0)|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)>>>0)sc(
c[f>>2]|0,16);c[g>>2]=(c[h>>2]|0)-(c[r>>2]|0)+1;if(c[r>>2]&-65536|0)while
(1){if((c[g>>2]|0)>>>0<=0)break a;c[j>>2]=(c[r>>2]|0)>>>16;c[n
x3e;>2]=c[r>>2]&65535;if(!((d[(c[k>>2]|0)+((c[j>>2]|0)>>>3)>>0]|
0)&128>>(c[j>>2]&7)))sc(c[f>>2]|0,8);if(!((d[(c[k>>2]|0)+((c[n>>2]|0
)>>>3)>>0]|0)&128>>(c[n>>2]&7)))sc(c[f>>2]|0,8);c[g>>
2]=(c[g>>2]|0)+-1;c[r>>2]=(c[r>>2]|0)+1}else{if(c[h>>2]&-65536|0)sc(c[f>>
2]|0,8);while(1){if((c[g>>2]|0)>>>0<=0)break a;c[n>>2]=c[r>>2]&65535;if((
d[(c[k>>2]|0)+((c[n>>2]|0)>>>3)>>0]|0)&128>>(c[n>>2]&
7)|0)sc(c[f>>2]|0,8);c[g>>2]=(c[g>>2]|0)+-1;c[r>>2]=(c[r>>2]|0)+1}}}while(0);c
[l>>2]=c[h>>2];c[o>>2]=(c[o>>2]|0)+1}i=t;return 0}function Cj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16
>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=8;c[c[f>>2]>>2]=(d[c[g>>2]>>
0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>>0]|0)<
x3c;8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function Dj(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;h=i;i=i+32|0;n=h+28|0;l=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;k=h+8|0;j=h+4|0;e=h;c[n>>2]=a;c[l>>
;2]=b;c[m>>2]=c[(c[n>>2]|0)+16>>2];c[g>>2]=0;c[f>>2]=(c[m>>2]|0)+12;
c[f>>2]=(c[f>>2]|0)+4;c[k>>2]=(d[(c[f>>2]|0)+-4>>0]|0)<<24|(d[(c[f
x3e;>2]|0)+-4+1>>0]|0)<<16|(d[(c[f>>2]|0)+-4+2>>0]|0)<<8|(d[(c[f>>
;2]|0)+-4+3>>0]|0)<<0;c[f>>2]=(c[f>>2]|0)+4;c[j>>2]=(d[(c[f>>2]|0)+-
4>>0]|0)<<24|(d[(c[f>>2]|0)+-4+1>>0]|0)<<16|(d[(c[f>>2]|0)+-4+2>
;>0]|0)<<8|(d[(c[f>>2]|0)+-4+3>>0]|0)<<0;c[e>>2]=(c[l>>2]|0)-(c
[k>>2]|0);if((c[e>>2]|0)>>>0>=(c[j>>2]|0)>>>0){n=c[g>>
;2]|0;i=h;return n|0}c[f>>2]=(c[f>>2]|0)+(c[e>>2]<<1);c[g>>2]=(((d[c[f>
x3e;2]>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+1>>0]|0)&65535)<<0)&65535
;n=c[g>>2]|0;i=h;return n|0}function Ej(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;m=i;i=i+48|0;o=m+
32|0;j=m+28|0;n=m+24|0;k=m+20|0;l=m+16|0;g=m+12|0;h=m+8|0;e=m+4|0;f=m;c[o>>2]=a;c[j>>2]=b;c[n>>2]=
c[(c[o>>2]|0)+16>>2];c[k>>2]=(c[c[j>>2]>>2]|0)+1;c[l>>2]=0;c[g>
x3e;2]=(c[n>>2]|0)+12;c[g>>2]=(c[g>>2]|0)+4;c[h>>2]=(d[(c[g>>2]|0)+-4>>
;0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[e>>
;2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(
c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if((c[k>
;>2]|0)>>>0<(c[h>>2]|0)>>>0)c[k>>2]=c[h>>2];c[f>>
;2]=(c[k>>2]|0)-(c[h>>2]|0);c[g>>2]=(c[g>>2]|0)+(c[f>>2]<<1);while(1
){if((c[f>>2]|0)>>>0>=(c[e>>2]|0)>>>0){a=7;break}c[g>>2]=(c[g
x3e;>2]|0)+2;c[l>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[g>>
2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if(c[l>>2]|0){a=7;break}c[k>>2]=(c[k>
x3e;2]|0)+1;c[f>>2]=(c[f>>2]|0)+1}if((a|0)==7){c[c[j>>2]>>2]=c[k>>2];i=m;return
c[l>>2]|0}return 0}function Fj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;k=l+12
|0;j=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[f>>2]=b;c[k>>2]=(c[e>>2]|0)+4;if(((c[e>>2]|
0)+20|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[k>
;>2]=(c[k>>2]|0)+4;c[j>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>
;2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-
4+3>>0]|0)<<0;c[k>>2]=(c[e>>2]|0)+16;c[k>>2]=(c[k>>2]|0)+4;c[g>
x3e;2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;if(!((c[j
>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>2]|0)|0)>>>
;0?(c[j>>2]|0)>>>0>=(20+(c[g>>2]<<1)|0)>>>0:0))sc(c[f>>
;2]|0,8);if(!((c[g>>2]|0)>>>0>0?(c[(c[f>>2]|0)+8>>2]|0)>>>0>
;=1:0)){i=l;return 0}do{c[k>>2]=(c[k>>2]|0)+2;c[h>>2]=(((d[(c[k>>2]|0)+-2>>0]|
0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c[h>
x3e;2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)>>>0)sc(c[f>>2]|0,16);c
[g>>2]=(c[g>>2]|0)+-1}while((c[g>>2]|0)>>>0>0);i=l;return 0}function Gj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[
h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=10;c[c[f>>2]>>2]=(d[c[g>
;>2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>
;>0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function Hj(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;c[(c[g>>2]|0)+16>>2]=c[h>
x3e;2];c[h>>2]=(c[h>>2]|0)+12;c[(c[g>>2]|0)+40>>2]=(d[c[h>>2]>>0]|0)
x3c;<24|(d[(c[h>>2]|0)+1>>0]|0)<<16|(d[(c[h>>2]|0)+2>>0]|0)<<8|(
d[(c[h>>2]|0)+3>>0]|0)<<0;a[(c[g>>2]|0)+24>>0]=0;i=f;return 0}function Ij(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=Jj(c[f>>2]|0,e,0)|0;i=d
;return a|0}function Jj(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;x=i;i=i
+64|0;g=x+52|0;h=x+48|0;j=x+44|0;k=x+56|0;o=x+40|0;t=x+36|0;s=x+32|0;l=x+28|0;u=x+24|0;n=x+20|0;v=x+16|0;p=x+12|0;r=x+8|0;q=x+4|
0;m=x;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;c[o>>2]=0;c[t>>2]=(c[(c[h>>2]|0)+
16>>2]|0)+12;c[s>>2]=d[c[t>>2]>>0]<<24|d[(c[t>>2]|0)+1>>0]
x3c;<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t>>2]|0)+3>>0]<<0;c[l>
x3e;2]=c[c[j>>2]>>2];if(!(c[s>>2]|0)){c[g>>2]=0;w=c[g>>2]|0;i=x;return w|0}c[q
>>2]=c[s>>2];c[n>>2]=-1;if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1;c[r>
x3e;2]=0;c[p>>2]=c[s>>2];while(1){if((c[r>>2]|0)>>>0>=(c[p>>2]|0)>
;>>0)break;c[q>>2]=((c[r>>2]|0)+(c[p>>2]|0)|0)>>>1;c[t>>2]=(c[(
c[h>>2]|0)+16>>2]|0)+16+((c[q>>2]|0)*12|0);c[t>>2]=(c[t>>2]|0)+4;c[u>>
;2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>>2]|0)+-4+1>>0]<<16|d[(c[t>
x3e;2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4+3>>0]<<0;c[t>>2]=(c[t>
x3e;2]|0)+4;c[n>>2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>>2]|0)+-4+1>>0]
x3c;<16|d[(c[t>>2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4+3>>0]<<0;if((
c[l>>2]|0)>>>0<(c[u>>2]|0)>>>0){c[p>>2]=c[q>>2];continue
}if((c[l>>2]|0)>>>0<=(c[n>>2]|0)>>>0){w=11;break}c[r>>2]=(c[q
x3e;>2]|0)+1}if((w|0)==11){c[v>>2]=d[c[t>>2]>>0]<<24|d[(c[t>>2]|0)+1>
;>0]<<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t>>2]|0)+3>>0]<<
0;c[o>>2]=(c[v>>2]|0)+(c[l>>2]|0)-(c[u>>2]|0)}if(a[k>>0]|0){c[m>>2]=
c[h>>2];if((c[l>>2]|0)>>>0>(c[n>>2]|0)>>>0?(c[q>>2]=(
c[q>>2]|0)+1,(c[q>>2]|0)==(c[s>>2]|0)):0){c[g>>2]=0;w=c[g>>2]|0;i=x;return w|0
}a[(c[m>>2]|0)+24>>0]=1;c[(c[m>>2]|0)+28>>2]=c[l>>2];c[(c[m>>2]|0)+36
>>2]=c[q>>2];if(!(c[o>>2]|0)){Kj(c[m>>2]|0);if(a[(c[m>>2]|0)+24>>0]|
0)c[o>>2]=c[(c[m>>2]|0)+32>>2]}else c[(c[m>>2]|0)+32>>2]=c[o>>2];if(
c[o>>2]|0)c[c[j>>2]>>2]=c[(c[m>>2]|0)+28>>2]}c[g>>2]=c[o>>
2];w=c[g>>2]|0;i=x;return w|0}function Kj(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;e=n+28|0;k=n+24
|0;l=n+20|0;g=n+16|0;m=n+12|0;f=n+8|0;j=n+4|0;h=n;c[e>>2]=b;a:do if((c[(c[e>>2]|0)+28>>2]|0)>
x3e;>0<4294967295){c[f>>2]=(c[(c[e>>2]|0)+28>>2]|0)+1;c[j>>2]=c[(c[e>>
;2]|0)+36>>2];c[j>>2]=c[(c[e>>2]|0)+36>>2];b:while(1){if((c[j>>2]|0)>>
;>0>=(c[(c[e>>2]|0)+40>>2]|0)>>>0)break a;c[k>>2]=(c[(c[e>>2]|0
)+16>>2]|0)+16+((c[j>>2]|0)*12|0);c[k>>2]=(c[k>>2]|0)+4;c[l>>2]=(d[(c[k>
x3e;2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0
)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>
;2]|0)+4;c[g>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<
;<0;c[m>>2]=(d[c[k>>2]>>0]|0)<<24|(d[(c[k>>2]|0)+1>>0]|0)<
x3c;16|(d[(c[k>>2]|0)+2>>0]|0)<<8|(d[(c[k>>2]|0)+3>>0]|0)<<0;if((c[f
>>2]|0)>>>0<(c[l>>2]|0)>>>0)c[f>>2]=c[l>>2];while(1){
if((c[f>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[h>>2]=(c[m>>
;2]|0)+(c[f>>2]|0)-(c[l>>2]|0);b=c[f>>2]|0;if(c[h>>2]|0)break b;c[f>>2]=b+1}c[
j>>2]=(c[j>>2]|0)+1}c[(c[e>>2]|0)+28>>2]=b;c[(c[e>>2]|0)+32>>2]=c[h
x3e;>2];c[(c[e>>2]|0)+36>>2]=c[j>>2];i=n;return}while(0);a[(c[e>>2]|0)+24>>
;0]=0;i=n;return}function Lj(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m
;c[g>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];if((c[(c[j>>2]|0)+28>>2]|0)>
;>>0>=4294967295){c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}do if(d[(c[j>>2]|0)+24>
x3e;0]|0?(c[(c[j>>2]|0)+28>>2]|0)==(c[c[h>>2]>>2]|0):0){Kj(c[j>>2]|0);if(!(a[(
c[j>>2]|0)+24>>0]|0)){c[k>>2]=0;break}c[k>>2]=c[(c[j>>2]|0)+32>>2];if
(c[k>>2]|0)c[c[h>>2]>>2]=c[(c[j>>2]|0)+28>>2]}else l=9;while(0);if((l|0)==9)c[
k>>2]=Jj(c[g>>2]|0,c[h>>2]|0,1)|0;c[f>>2]=c[k>>2];l=c[f>>2]|0;i=m;return
l|0}function Mj(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0;m=p+28|0;j=p+24
|0;l=p+20|0;k=p+16|0;n=p+12|0;g=p+8|0;o=p+4|0;h=p;c[e>>2]=a;c[f>>2]=b;if(((c[e>>2]|0)+16|0)>
x3e;>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[m>>2]=(c[e
>>2]|0)+4;c[m>>2]=(c[m>>2]|0)+4;c[j>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<
;<24|(d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<
;8|(d[(c[m>>2]|0)+-4+3>>0]|0)<<0;c[m>>2]=(c[e>>2]|0)+12;c[m>>2]=(c[m
>>2]|0)+4;c[l>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1
x3e;>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>
;0]|0)<<0;if(!((c[j>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>
x3e;2]|0)|0)>>>0?(c[j>>2]|0)>>>0>=(16+((c[l>>2]|0)*12|0)|0)>>
x3e;0:0))sc(c[f>>2]|0,8);c[h>>2]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0
x3e;=(c[l>>2]|0)>>>0)break;c[m>>2]=(c[m>>2]|0)+4;c[n>>2]=(d[(c[m>>
;2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-
4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>0]|0)<<0;c[m>>2]=(c[m>>
2]|0)+4;c[g>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1>>0]|
0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>0]|0)<
;<0;c[m>>2]=(c[m>>2]|0)+4;c[o>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(
d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m
x3e;>2]|0)+-4+3>>0]|0)<<0;if((c[n>>2]|0)>>>0>(c[g>>2]|0)>
x3e;>0)sc(c[f>>2]|0,8);if((c[k>>2]|0)>>>0>0?(c[n>>2]|0)>>>
0<=(c[h>>2]|0)>>>0:0)sc(c[f>>2]|0,8);if((c[(c[f>>2]|0)+8>>2]|0)>
;>>0>=1?((c[o>>2]|0)+(c[g>>2]|0)-(c[n>>2]|0)|0)>>>0>=(c[(c[f>
;>2]|0)+172>>2]|0)>>>0:0)sc(c[f>>2]|0,16);c[h>>2]=c[g>>2];c[k>
x3e;2]=(c[k>>2]|0)+1}i=p;return 0}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;h=e+8|0;f=e+4|0;g=e;c[
h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4
>>2]=12;c[c[f>>2]>>2]=(d[c[g>>2]>>0]|0)<<24|(d[(c[g>>2]|0)+
1>>0]|0)<<16|(d[(c[g>>2]|0)+2>>0]|0)<<8|(d[(c[g>>2]|0)+3>>
0]|0)<<0;i=e;return 0}function Oj(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;c[(c[g>>2]|0)+16>>2]=c[h>>2];c[h>>2]=(c[h>>2]|0)+12;c[(c[g>
x3e;2]|0)+40>>2]=(d[c[h>>2]>>0]|0)<<24|(d[(c[h>>2]|0)+1>>0]|0)<
x3c;16|(d[(c[h>>2]|0)+2>>0]|0)<<8|(d[(c[h>>2]|0)+3>>0]|0)<<0;a[(c[g
x3e;>2]|0)+24>>0]=0;i=f;return 0}function Pj(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>
x3e;2]=a;c[e>>2]=b;a=Qj(c[f>>2]|0,e,0)|0;i=d;return a|0}function Qj(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;w=i;i=i+64|0;g=w+48|0;h=w+44|0;j=w+40|0;k=w+52|0;o=w+36|0;t=w+32|0;s=w+28|0
;l=w+24|0;u=w+20|0;n=w+16|0;p=w+12|0;r=w+8|0;q=w+4|0;m=w;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;c[o>
x3e;2]=0;c[t>>2]=(c[(c[h>>2]|0)+16>>2]|0)+12;c[s>>2]=d[c[t>>2]>>0]
x3c;<24|d[(c[t>>2]|0)+1>>0]<<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t
x3e;>2]|0)+3>>0]<<0;c[l>>2]=c[c[j>>2]>>2];if(!(c[s>>2]|0)){c[g
x3e;>2]=0;v=c[g>>2]|0;i=w;return v|0}c[q>>2]=c[s>>2];c[n>>2]=-1;if(a[k>>0
]|0)c[l>>2]=(c[l>>2]|0)+1;c[r>>2]=0;c[p>>2]=c[s>>2];while(1){if((c[r>>
;2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[q>>2]=((c[r>>2]|0)+(c[p>
;>2]|0)|0)>>>1;c[t>>2]=(c[(c[h>>2]|0)+16>>2]|0)+16+((c[q>>2]|0)*12|0
);c[t>>2]=(c[t>>2]|0)+4;c[u>>2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>
;>2]|0)+-4+1>>0]<<16|d[(c[t>>2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4
+3>>0]<<0;c[t>>2]=(c[t>>2]|0)+4;c[n>>2]=d[(c[t>>2]|0)+-4>>
0]<<24|d[(c[t>>2]|0)+-4+1>>0]<<16|d[(c[t>>2]|0)+-4+2>>0]<<
8|d[(c[t>>2]|0)+-4+3>>0]<<0;if((c[l>>2]|0)>>>0<(c[u>>2]|0)
x3e;>>0){c[p>>2]=c[q>>2];continue}if((c[l>>2]|0)>>>0<=(c[n>>
;2]|0)>>>0){v=11;break}c[r>>2]=(c[q>>2]|0)+1}if((v|0)==11)c[o>>2]=d[c[t>>
2]>>0]<<24|d[(c[t>>2]|0)+1>>0]<<16|d[(c[t>>2]|0)+2>>0]<
;<8|d[(c[t>>2]|0)+3>>0]<<0;if(a[k>>0]|0){c[m>>2]=c[h>>2];if((c[
l>>2]|0)>>>0>(c[n>>2]|0)>>>0?(c[q>>2]=(c[q>>2]|0)+1,(
c[q>>2]|0)==(c[s>>2]|0)):0){c[g>>2]=0;v=c[g>>2]|0;i=w;return v|0}a[(c[m>>2]|0)+
24>>0]=1;c[(c[m>>2]|0)+28>>2]=c[l>>2];c[(c[m>>2]|0)+36>>2]=c[q>
x3e;2];if(!(c[o>>2]|0)){Rj(c[m>>2]|0);if(a[(c[m>>2]|0)+24>>0]|0)c[o>>2]=c[(c[m
>>2]|0)+32>>2]}else c[(c[m>>2]|0)+32>>2]=c[o>>2];if(c[o>>2]|0)c[c[j
x3e;>2]>>2]=c[(c[m>>2]|0)+28>>2]}c[g>>2]=c[o>>2];v=c[g>>2]|0;i=
w;return v|0}function Rj(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;e=n+28|0;l=n+24|0;m=n+20|0;g=n+16|0;j=n+12
|0;f=n+8|0;k=n+4|0;h=n;c[e>>2]=b;a:do if((c[(c[e>>2]|0)+28>>2]|0)>>>0<4294967295
){c[f>>2]=(c[(c[e>>2]|0)+28>>2]|0)+1;c[k>>2]=c[(c[e>>2]|0)+36>>2];c[
k>>2]=c[(c[e>>2]|0)+36>>2];while(1){if((c[k>>2]|0)>>>0>=(c[(c[e>
;>2]|0)+40>>2]|0)>>>0)break a;c[l>>2]=(c[(c[e>>2]|0)+16>>2]|0)+16+((
c[k>>2]|0)*12|0);c[l>>2]=(c[l>>2]|0)+4;c[m>>2]=(d[(c[l>>2]|0)+-4>>0]|
0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)<
;<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;c[l>>2]=(c[l>>2]|0)+4;c[g>>2]=(
d[(c[l>>2]|0)+-4>>0]|0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l
x3e;>2]|0)+-4+2>>0]|0)<<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;c[j>>2]=(
d[c[l>>2]>>0]|0)<<24|(d[(c[l>>2]|0)+1>>0]|0)<<16|(d[(c[l>>
2]|0)+2>>0]|0)<<8|(d[(c[l>>2]|0)+3>>0]|0)<<0;if((c[f>>2]|0)>>
;>0<(c[m>>2]|0)>>>0)c[f>>2]=c[m>>2];if((c[f>>2]|0)>>
x3e;0<=(c[g>>2]|0)>>>0?(c[h>>2]=c[j>>2],c[h>>2]|0):0)break;c[k>
x3e;2]=(c[k>>2]|0)+1}c[(c[e>>2]|0)+28>>2]=c[f>>2];c[(c[e>>2]|0)+32>>
2]=c[h>>2];c[(c[e>>2]|0)+36>>2]=c[k>>2];i=n;return}while(0);a[(c[e>>2]|0)+24
x3e;>0]=0;i=n;return}function Sj(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;j=
m+4|0;k=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];if((c[(c[j>>2]|0)+28>>
2]|0)>>>0>=4294967295){c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}do if(d[(c[j>>2]|0
)+24>>0]|0?(c[(c[j>>2]|0)+28>>2]|0)==(c[c[h>>2]>>2]|0):0){Rj(c[j>>2]|
0);if(!(a[(c[j>>2]|0)+24>>0]|0)){c[k>>2]=0;break}c[k>>2]=c[(c[j>>2]|0)+32>
;>2];if(c[k>>2]|0)c[c[h>>2]>>2]=c[(c[j>>2]|0)+28>>2]}else l=9;while(0);if
((l|0)==9)c[k>>2]=Qj(c[g>>2]|0,c[h>>2]|0,1)|0;c[f>>2]=c[k>>2];l=c[f>>
;2]|0;i=m;return l|0}function Tj(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0
;n=p+28|0;k=p+24|0;m=p+20|0;l=p+16|0;o=p+12|0;g=p+8|0;h=p+4|0;j=p;c[e>>2]=a;c[f>>2]=b;if(((c[e>>2]|
0)+16|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[n>
;>2]=(c[e>>2]|0)+4;c[n>>2]=(c[n>>2]|0)+4;c[k>>2]=(d[(c[n>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;c[n>>2]=(c[e>>2]|0)+12;c[n>
x3e;2]=(c[n>>2]|0)+4;c[m>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4
+3>>0]|0)<<0;if(!((c[k>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0
)-(c[e>>2]|0)|0)>>>0?(c[k>>2]|0)>>>0>=(16+((c[m>>2]|0)*12|0)|0)
x3e;>>0:0))sc(c[f>>2]|0,8);c[j>>2]=0;c[l>>2]=0;while(1){if((c[l>>2]|0)>
x3e;>0>=(c[m>>2]|0)>>>0)break;c[n>>2]=(c[n>>2]|0)+4;c[o>>2]=(d[(
c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>
;>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;c[n>>2]=(c
[n>>2]|0)+4;c[g>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1
>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>
x3e;0]|0)<<0;c[n>>2]=(c[n>>2]|0)+4;c[h>>2]=(d[(c[n>>2]|0)+-4>>0]|0)
x3c;<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<
x3c;8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;if((c[o>>2]|0)>>>0>(c[g>>
;2]|0)>>>0)sc(c[f>>2]|0,8);if((c[l>>2]|0)>>>0>0?(c[o>>2]|0)>
;>>0<=(c[j>>2]|0)>>>0:0)sc(c[f>>2]|0,8);if((c[(c[f>>2]|0)+8>>
;2]|0)>>>0>=1?(c[h>>2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)
x3e;>>0:0)sc(c[f>>2]|0,16);c[j>>2]=c[g>>2];c[l>>2]=(c[l>>2]|0)+1}i=p
;return 0}function Uj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2
]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=13;c[c[f>>
;2]>>2]=(d[c[g>>2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(
d[(c[g>>2]|0)+2>>0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function
Vj(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;c[(c[f>>2]|0)+16
>>2]=c[g>>2];c[g>>2]=(c[g>>2]|0)+6;c[(c[f>>2]|0)+24>>2]=(d[c[g>
x3e;2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>
x3e;0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;c[(c[f>>2]|0)+28>>2]=0;c[(c[
f>>2]|0)+32>>2]=0;i=e;return 0}function Wj(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>
2]=a;c[d>>2]=c[(c[b>>2]|0)+36>>2];c[(c[b>>2]|0)+28>>2]=0;if(!(c[d>>2
]|0)){i=e;return}if(!(c[(c[b>>2]|0)+32>>2]|0)){i=e;return}Fb(c[d>>2]|0,c[(c[b>>2]|0)+32
x3e;>2]|0);c[(c[b>>2]|0)+32>>2]=0;i=e;return}function Xj(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[f>>2]=c[f>>2];c[e>>2]=c[e>>2];i=d;
return 0}function Yj(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[f>
x3e;2]=c[f>>2];c[c[e>>2]>>2]=0;i=d;return 0}function Zj(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;o=i;i=i+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;p=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a
;c[j>>2]=b;c[k>>2]=e;c[p>>2]=f;c[n>>2]=_j((c[(c[h>>2]|0)+16>>2]|0)+6
|0,c[p>>2]|0)|0;if(!(c[n>>2]|0)){c[g>>2]=0;p=c[g>>2]|0;i=o;return p|0}c[n>>2]=(
c[n>>2]|0)+4;c[l>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+
1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>
x3e;0]|0)<<0;c[m>>2]=(d[c[n>>2]>>0]|0)<<24|(d[(c[n>>2]|0)+1>>
;0]|0)<<16|(d[(c[n>>2]|0)+2>>0]|0)<<8|(d[(c[n>>2]|0)+3>>0]|0)<
x3c;0;if(c[l>>2]|0?$j((c[(c[h>>2]|0)+16>>2]|0)+(c[l>>2]|0)|0,c[k>>2]|0)|0:0){c
[g>>2]=Ya[c[(c[(c[j>>2]|0)+12>>2]|0)+12>>2]&127](c[j>>2]|0,c[k>>
;2]|0)|0;p=c[g>>2]|0;i=o;return p|0}if(c[m>>2]|0){c[g>>2]=ak((c[(c[h>>2]|0)+16>>
;2]|0)+(c[m>>2]|0)|0,c[k>>2]|0)|0;p=c[g>>2]|0;i=o;return p|0}else{c[g>>2]=0;p=c[g>
x3e;2]|0;i=o;return p|0}return 0}function _j(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;n=i;i=i+48|0;l=n+32|0;
e=n+28|0;f=n+24|0;o=n+20|0;g=n+16|0;j=n+12|0;h=n+8|0;m=n+4|0;k=n;c[e>>2]=a;c[f>>2]=b;c[o>>2]=(d[c[
e>>2]>>0]|0)<<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>>2]|0
)+2>>0]|0)<<8|(d[(c[e>>2]|0)+3>>0]|0)<<0;c[j>>2]=0;c[g>>2]=
c[o>>2];c[e>>2]=(c[e>>2]|0)+4;while(1){if((c[j>>2]|0)>>>0>=(c[g>
;>2]|0)>>>0){e=8;break}c[h>>2]=((c[j>>2]|0)+(c[g>>2]|0)|0)>>>1;
c[m>>2]=(c[e>>2]|0)+((c[h>>2]|0)*11|0);c[m>>2]=(c[m>>2]|0)+3;c[k>>2]=(
d[(c[m>>2]|0)+-3>>0]|0)<<16|(d[(c[m>>2]|0)+-3+1>>0]|0)<<8|(d[(c[m>
;>2]|0)+-3+2>>0]|0)<<0;if((c[f>>2]|0)>>>0<(c[k>>2]|0)>>
;>0){c[g>>2]=c[h>>2];continue}if((c[f>>2]|0)>>>0<=(c[k>>2]|0)
x3e;>>0){e=7;break}c[j>>2]=(c[h>>2]|0)+1}if((e|0)==7){c[l>>2]=c[m>>2];o=c[l>
;>2]|0;i=n;return o|0}else if((e|0)==8){c[l>>2]=0;o=c[l>>2]|0;i=n;return o|0}return 0}function $j(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;o=i;i=i+48|0;n=o+36|0;e=o+32|0;f=o+28|0;p=o+24|0;h=o+20|0;k=o+16|0;j
=o+12|0;l=o+8|0;m=o+4|0;g=o;c[e>>2]=a;c[f>>2]=b;c[p>>2]=(d[c[e>>2]>>0]|0)<
;<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>>2]|0)+2>>0]|0)<<8|(d[(
c[e>>2]|0)+3>>0]|0)<<0;c[k>>2]=0;c[h>>2]=c[p>>2];c[e>>2]=(
c[e>>2]|0)+4;while(1){if((c[k>>2]|0)>>>0>=(c[h>>2]|0)>>>0){e=8;
break}c[j>>2]=((c[k>>2]|0)+(c[h>>2]|0)|0)>>>1;c[l>>2]=(c[e>>2]|
0)+(c[j>>2]<<2);c[l>>2]=(c[l>>2]|0)+3;c[m>>2]=(d[(c[l>>2]|0)+-3>
;>0]|0)<<16|(d[(c[l>>2]|0)+-3+1>>0]|0)<<8|(d[(c[l>>2]|0)+-3+2>>
0]|0)<<0;p=c[l>>2]|0;c[l>>2]=p+1;c[g>>2]=d[p>>0];if((c[f>>2]|0)>
;>>0<(c[m>>2]|0)>>>0){c[h>>2]=c[j>>2];continue}if((c[f>>2]|
0)>>>0<=((c[m>>2]|0)+(c[g>>2]|0)|0)>>>0){e=7;break}c[k>>2]=(c[j
>>2]|0)+1}if((e|0)==7){c[n>>2]=1;p=c[n>>2]|0;i=o;return p|0}else if((e|0)==8){c[n>>2]=0;
p=c[n>>2]|0;i=o;return p|0}return 0}function ak(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;n=i;i=i+48
|0;l=n+32|0;e=n+28|0;f=n+24|0;o=n+20|0;g=n+16|0;j=n+12|0;h=n+8|0;m=n+4|0;k=n;c[e>>2]=a;c[f>>2]=b;c[o>
x3e;2]=(d[c[e>>2]>>0]|0)<<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>
;>2]|0)+2>>0]|0)<<8|(d[(c[e>>2]|0)+3>>0]|0)<<0;c[j>>2]=0;c[g>
;>2]=c[o>>2];c[e>>2]=(c[e>>2]|0)+4;while(1){if((c[j>>2]|0)>>>0>=(
c[g>>2]|0)>>>0){e=8;break}c[h>>2]=((c[j>>2]|0)+(c[g>>2]|0)|0)>>
x3e;1;c[m>>2]=(c[e>>2]|0)+((c[h>>2]|0)*5|0);c[m>>2]=(c[m>>2]|0)+3;c[k>>
;2]=(d[(c[m>>2]|0)+-3>>0]|0)<<16|(d[(c[m>>2]|0)+-3+1>>0]|0)<<8|(d[(c
[m>>2]|0)+-3+2>>0]|0)<<0;if((c[f>>2]|0)>>>0<(c[k>>2]|0)>
;>>0){c[g>>2]=c[h>>2];continue}if((c[f>>2]|0)>>>0<=(c[k>>2
]|0)>>>0){e=7;break}c[j>>2]=(c[h>>2]|0)+1}if((e|0)==7){c[l>>2]=(((d[c[m>>
2]>>0]|0)&65535)<<8|((d[(c[m>>2]|0)+1>>0]|0)&65535)<<0)&65535;o
=c[l>>2]|0;i=n;return o|0}else if((e|0)==8){c[l>>2]=0;o=c[l>>2]|0;i=n;return o|0}return 0}function
bk(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;m=i;i=i+32|0;f=m+24|0;g=m+20|0;h=m+16|0;n=m+12|0;l=m+8|0;j=m+4|
0;k=m;c[g>>2]=a;c[h>>2]=b;c[n>>2]=e;c[l>>2]=_j((c[(c[g>>2]|0)+16>>2]|
0)+6|0,c[n>>2]|0)|0;if(!(c[l>>2]|0)){c[f>>2]=-1;n=c[f>>2]|0;i=m;return n|0}c[l>>
;2]=(c[l>>2]|0)+4;c[j>>2]=(d[(c[l>>2]|0)+-4>>0]|0)<<24|(d[(c[l>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)<<8|(d[(c[l>>2]|0)+-4+3
x3e;>0]|0)<<0;c[l>>2]=(c[l>>2]|0)+4;c[k>>2]=(d[(c[l>>2]|0)+-4>>
0]|0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;if(c[j>>2]|0?$j((c[(c[g>>2]|0)+16>
;>2]|0)+(c[j>>2]|0)|0,c[h>>2]|0)|0:0){c[f>>2]=1;n=c[f>>2]|0;i=m;return n|0}if(c[k
x3e;>2]|0?ak((c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]|0)|0,c[h>>2]|0)|0:0){c[f>>
2]=0;n=c[f>>2]|0;i=m;return n|0}c[f>>2]=-1;n=c[f>>2]|0;i=m;return n|0}function ck(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;l=i;i=i+32|0;e=l+28|0;n=l+24|0;m=l+20|0;f=l+16|0;g=l+12|0;j=l+8|0;k=l+4|0;h=l;c[n>
x3e;2]=a;c[m>>2]=b;c[f>>2]=c[n>>2];c[g>>2]=c[(c[f>>2]|0)+24>>2];c[j
x3e;>2]=(c[(c[n>>2]|0)+16>>2]|0)+10;if(dk(c[f>>2]|0,(c[g>>2]|0)+1|0,c[m>>
2]|0)|0){c[e>>2]=0;n=c[e>>2]|0;i=l;return n|0}c[k>>2]=c[(c[f>>2]|0)+32>>2];c[h
>>2]=0;while(1){if((c[h>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[j
x3e;>2]=(c[j>>2]|0)+3;c[(c[k>>2]|0)+(c[h>>2]<<2)>>2]=(d[(c[j>>2
]|0)+-3>>0]|0)<<16|(d[(c[j>>2]|0)+-3+1>>0]|0)<<8|(d[(c[j>>2]|0)+-3+2
>>0]|0)<<0;c[j>>2]=(c[j>>2]|0)+8;c[h>>2]=(c[h>>2]|0)+1}c[(c[k>
x3e;2]|0)+(c[h>>2]<<2)>>2]=0;c[e>>2]=c[k>>2];n=c[e>>2]|0;i=l;return
n|0}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,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0
;j=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=c[(c[f>>2]|0)+28>>2];c[j
x3e;>2]=0;do if((c[g>>2]|0)>>>0>(c[(c[f>>2]|0)+28>>2]|0)>>>
;0){c[(c[f>>2]|0)+36>>2]=c[h>>2];k=hc(c[h>>2]|0,4,c[k>>2]|0,c[g>>2]|
0,c[(c[f>>2]|0)+32>>2]|0,j)|0;c[(c[f>>2]|0)+32>>2]=k;if(!(c[j>>2]|0)){c[(c[f
x3e;>2]|0)+28>>2]=c[g>>2];break}c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|
0}while(0);c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|0}function ek(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;q=i;i=i+48|0;f=q+40|0;g=q+36|0;r=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;n=q+16|0;o=q+12|
0;p=q+8|0;l=q+4|0;m=q;c[g>>2]=a;c[r>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];c[k>
x3e;2]=c[(c[j>>2]|0)+24>>2];c[n>>2]=(c[(c[g>>2]|0)+16>>2]|0)+10;if(dk(c[j>
;>2]|0,(c[k>>2]|0)+1|0,c[r>>2]|0)|0){c[f>>2]=0;r=c[f>>2]|0;i=q;return r|0}c[o>
x3e;2]=c[(c[j>>2]|0)+32>>2];while(1){if((c[k>>2]|0)>>>0<=0)break;c[n>>
;2]=(c[n>>2]|0)+3;c[p>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0
)+-3+1>>0]|0)<<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;c[n>>2]=(c[n>>
;2]|0)+4;c[l>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<
;<0;c[n>>2]=(c[n>>2]|0)+4;c[m>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(
d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n
x3e;>2]|0)+-4+3>>0]|0)<<0;if(c[l>>2]|0?$j((c[(c[g>>2]|0)+16>>2]|0)+(c[l
x3e;>2]|0)|0,c[h>>2]|0)|0:0)e=9;else e=7;if(((e|0)==7?(e=0,c[m>>2]|0):0)?ak((c[(c[g>>2]|0)+16
>>2]|0)+(c[m>>2]|0)|0,c[h>>2]|0)|0:0)e=9;if((e|0)==9){c[c[o>>2]>>2]=c[p>
x3e;2];c[o>>2]=(c[o>>2]|0)+4}c[k>>2]=(c[k>>2]|0)+-1}c[c[o>>2]>>2]=0;
c[f>>2]=c[(c[j>>2]|0)+32>>2];r=c[f>>2]|0;i=q;return r|0}function fk(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;y=i;i=i+80|0;f=y+72|0;g=y+68|0;h=y+64|0
;z=y+60|0;w=y+56|0;x=y+52|0;p=y+48|0;l=y+44|0;s=y+40|0;j=y+36|0;u=y+32|0;t=y+28|0;o=y+24|0;k=y+20|0;v=y+16|0;n=y+12|0;m=y+8|0;r=
y+4|0;q=y;c[g>>2]=a;c[h>>2]=b;c[z>>2]=e;c[w>>2]=_j((c[(c[g>>2]|0)+16>>
;2]|0)+6|0,c[z>>2]|0)|0;if(!(c[w>>2]|0)){c[f>>2]=0;z=c[f>>2]|0;i=y;return z|0}c[w>
x3e;2]=(c[w>>2]|0)+4;c[l>>2]=(d[(c[w>>2]|0)+-4>>0]|0)<<24|(d[(c[w>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|0)<<8|(d[(c[w>>2]|0)+-4
+3>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+4;c[s>>2]=(d[(c[w>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[w>>2]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[w>>2]|0)+-4+3>>0]|0)<<0;if((c[l>>2]|0)==0&(c[s>>2]|
0)==0){c[f>>2]=0;z=c[f>>2]|0;i=y;return z|0}if(!(c[l>>2]|0)){c[f>>2]=gk(c[g>>2
]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[s>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return
z|0}a=c[g>>2]|0;if(!(c[s>>2]|0)){c[f>>2]=hk(a,(c[(c[g>>2]|0)+16>>2]|0)+(c[l
x3e;>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return z|0}c[j>>2]=a;c[w>>2]=(c[(c[g>
;>2]|0)+16>>2]|0)+(c[s>>2]|0);c[n>>2]=(c[(c[g>>2]|0)+16>>2]|0)+(c[l>
x3e;2]|0);c[w>>2]=(c[w>>2]|0)+4;c[t>>2]=(d[(c[w>>2]|0)+-4>>0]|0)<<24
|(d[(c[w>>2]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|0)<<8|(d[(c[
w>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=ik(c[n>>2]|0)|0;c[n>>2]=(c[n>
x3e;2]|0)+4;c[u>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>
;0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)
x3c;<0;if(!(c[t>>2]|0)){c[f>>2]=hk(c[g>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[
l>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return z|0}if(!(c[k>>2]|0)){c[f>>2]=gk
(c[g>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[s>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>
;2]|0;i=y;return z|0}if(dk(c[j>>2]|0,(c[k>>2]|0)+(c[t>>2]|0)+1|0,c[h>>2]|0)|0){c[f>
x3e;2]=0;z=c[f>>2]|0;i=y;return z|0}c[x>>2]=c[(c[j>>2]|0)+32>>2];c[n>>2]=(c[n
x3e;>2]|0)+3;c[o>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>
;>0]|0)<<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+
1;c[k>>2]=d[z>>0];c[m>>2]=1;c[w>>2]=(c[w>>2]|0)+3;c[v>>2]=(d[(c[w>
;>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<<8|(d[(c[w>>2]|
0)+-3+2>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+2;c[r>>2]=1;c[p>>2]=0;while(1){
if((c[v>>2]|0)>>>0<=((c[o>>2]|0)+(c[k>>2]|0)|0)>>>0){if((c[v>
;>2]|0)>>>0<(c[o>>2]|0)>>>0){s=c[v>>2]|0;z=c[p>>2]|0;c[p
x3e;>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=s}c[r>>2]=(c[r>>2]|0)+1;if((c[r>
;>2]|0)>>>0>(c[t>>2]|0)>>>0)break;c[w>>2]=(c[w>>2]|0)+3;c[
v>>2]=(d[(c[w>>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<
x3c;8|(d[(c[w>>2]|0)+-3+2>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+2;continue}c[q>
x3e;2]=0;while(1){if((c[q>>2]|0)>>>0>(c[k>>2]|0)>>>0)break;s=(c[o>
x3e;2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>
;2]=s;c[q>>2]=(c[q>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1;if((c[m>>2]|0)>>
x3e;0>(c[u>>2]|0)>>>0)break;c[n>>2]=(c[n>>2]|0)+3;c[o>>2]=(d[(c[n>
;>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>>0]|0)<<8|(d[(c[n>>2]|
0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+1;c[k>>2]=d[z>>0]}a:do if((c
[r>>2]|0)>>>0>(c[t>>2]|0)>>>0){if((c[m>>2]|0)>>>
0<=(c[u>>2]|0)>>>0){c[q>>2]=0;while(1){if((c[q>>2]|0)>>>0>(
c[k>>2]|0)>>>0)break;w=(c[o>>2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>
;2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=w;c[q>>2]=(c[q>>2]|0)+1}while(1){if((c[m>
;>2]|0)>>>0>=(c[u>>2]|0)>>>0)break a;c[n>>2]=(c[n>>2]|0)+3
;c[o>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>>0]|0)<
;<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+1;c[k>>
2]=d[z>>0];c[q>>2]=0;while(1){if((c[q>>2]|0)>>>0>(c[k>>2]|0)>
x3e;>0)break;w=(c[o>>2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>
2]|0)+(z<<2)>>2]=w;c[q>>2]=(c[q>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1}}}else
{v=c[v>>2]|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=v;while
(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a;c[w>>2]=(c[w>
;>2]|0)+3;v=(d[(c[w>>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<
x3c;8|(d[(c[w>>2]|0)+-3+2>>0]|0)<<0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>
2]|0)+(z<<2)>>2]=v;c[w>>2]=(c[w>>2]|0)+2;c[r>>2]=(c[r>>2]|0)+1}}while
(0);c[(c[x>>2]|0)+(c[p>>2]<<2)>>2]=0;c[f>>2]=c[x>>2];z=c[f>>
;2]|0;i=y;return z|0}function gk(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;m=i;i=i+32|0;f=m+28|0;o=m+24|0
;g=m+20|0;n=m+16|0;h=m+12|0;k=m+8|0;j=m+4|0;l=m;c[o>>2]=a;c[g>>2]=b;c[n>>2]=e;c[h>>2]=c[
o>>2];c[g>>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<
x3c;24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(
d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if(dk(c[h>>2]|0,(c[k>>2]|0)+1|0,c[n>>2]|
0)|0){c[f>>2]=0;o=c[f>>2]|0;i=m;return o|0}c[l>>2]=c[(c[h>>2]|0)+32>>2];c[j>
;>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break;c[g>
x3e;2]=(c[g>>2]|0)+3;c[(c[l>>2]|0)+(c[j>>2]<<2)>>2]=(d[(c[g>>2]|0)+-
3>>0]|0)<<16|(d[(c[g>>2]|0)+-3+1>>0]|0)<<8|(d[(c[g>>2]|0)+-3+2>
x3e;0]|0)<<0;c[g>>2]=(c[g>>2]|0)+2;c[j>>2]=(c[j>>2]|0)+1}c[(c[l>>2]|
0)+(c[j>>2]<<2)>>2]=0;c[f>>2]=c[l>>2];o=c[f>>2]|0;i=m;return o|0}function
hk(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;n=i;i=i+48|0;f=n+32|0;p=n+28|0;g=n+24|0;o=n+20|0;h=n+16
|0;k=n+12|0;j=n+8|0;l=n+4|0;m=n;c[p>>2]=a;c[g>>2]=b;c[o>>2]=e;c[h>>2]=c[p>>2];
c[j>>2]=ik(c[g>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-
4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>
;>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if(dk(c[h>>2]|0,(c[j>>
2]|0)+1|0,c[o>>2]|0)|0){c[f>>2]=0;p=c[f>>2]|0;i=n;return p|0}c[l>>2]=c[(c[h>>2
]|0)+32>>2];while(1){if((c[k>>2]|0)>>>0<=0)break;c[g>>2]=(c[g>>2]|0)+
3;c[m>>2]=(d[(c[g>>2]|0)+-3>>0]|0)<<16|(d[(c[g>>2]|0)+-3+1>>0]|0)<
;<8|(d[(c[g>>2]|0)+-3+2>>0]|0)<<0;p=c[g>>2]|0;c[g>>2]=p+1;c[j>>
2]=(d[p>>0]|0)+1;do{c[c[l>>2]>>2]=c[m>>2];c[m>>2]=(c[m>>2]|0)+1;c[l
x3e;>2]=(c[l>>2]|0)+4;p=(c[j>>2]|0)+-1|0;c[j>>2]=p}while((p|0)!=0);c[k>>2]=(c[k>
;>2]|0)+-1}c[c[l>>2]>>2]=0;c[f>>2]=c[(c[h>>2]|0)+32>>2];p=c[f>>
2]|0;i=n;return p|0}function ik(a){a=a|0;var b=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+8|0;e=g+4|0;f=g;c[b>>2]=a;c[b>>
;2]=(c[b>>2]|0)+4;c[e>>2]=(d[(c[b>>2]|0)+-4>>0]|0)<<24|(d[(c[b>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[b>>2]|0)+-4+2>>0]|0)<<8|(d[(c[b>>2]|0)+-4+3
x3e;>0]|0)<<0;c[f>>2]=0;c[b>>2]=(c[b>>2]|0)+3;while(1){if((c[e>>2]|0)>
;>>0<=0)break;c[f>>2]=(c[f>>2]|0)+(1+(d[c[b>>2]>>0]|0));c[b>>2]=(
c[b>>2]|0)+4;c[e>>2]=(c[e>>2]|0)+-1}i=g;return c[f>>2]|0}function jk(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;B=i;i=i+96|0;e=B+84|0;f=B+80|0;y=B+
76|0;r=B+72|0;x=B+68|0;s=B+64|0;q=B+60|0;A=B+56|0;j=B+52|0;u=B+48|0;k=B+44|0;w=B+40|0;m=B+36|0;o=B+32|0;g=B+28|0;h=B+24|0;t=B+20
|0;v=B+16|0;n=B+12|0;p=B+8|0;z=B+4|0;l=B;c[e>>2]=a;c[f>>2]=b;c[y>>2]=(c[e>>2]|0)+2;c[y
x3e;>2]=(c[y>>2]|0)+4;c[r>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[y>
x3e;2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>>2]|
0)+-4+3>>0]|0)<<0;c[y>>2]=(c[y>>2]|0)+4;c[x>>2]=(d[(c[y>>2]|0)+-4>
;>0]|0)<<24|(d[(c[y>>2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>
;0]|0)<<8|(d[(c[y>>2]|0)+-4+3>>0]|0)<<0;if(!((c[r>>2]|0)>>>0<
;=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>2]|0)|0)>>>0?(c[r>>2]|0)>>>
;0>=(10+((c[x>>2]|0)*11|0)|0)>>>0:0))sc(c[f>>2]|0,8);c[q>>2]=1;c[s>>
2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[x>>2]|0)>>>0)break;c[y>>2]=(
c[y>>2]|0)+3;c[A>>2]=(d[(c[y>>2]|0)+-3>>0]|0)<<16|(d[(c[y>>2]|0)+-3+
1>>0]|0)<<8|(d[(c[y>>2]|0)+-3+2>>0]|0)<<0;c[y>>2]=(c[y>>2]|
0)+4;c[j>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[y>>2]|0)+-4+1>>0]|0)
x3c;<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>>2]|0)+-4+3>>0]|0)<<
;0;c[y>>2]=(c[y>>2]|0)+4;c[u>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[
y>>2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>
x3e;2]|0)+-4+3>>0]|0)<<0;if(!((c[j>>2]|0)>>>0<(c[r>>2]|0)>>
;>0?(c[u>>2]|0)>>>0<(c[r>>2]|0)>>>0:0))sc(c[f>>2]|0,8);if((
c[A>>2]|0)>>>0<(c[q>>2]|0)>>>0)sc(c[f>>2]|0,8);c[q>>2
]=(c[A>>2]|0)+1;a:do if(c[j>>2]|0){c[k>>2]=(c[e>>2]|0)+(c[j>>2]|0);c[k>
x3e;2]=(c[k>>2]|0)+4;c[w>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4
+3>>0]|0)<<0;c[o>>2]=0;if(((c[k>>2]|0)+(c[w>>2]<<2)|0)>>
x3e;0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[m>>2]=0;while(1){
if((c[m>>2]|0)>>>0>=(c[w>>2]|0)>>>0)break a;c[k>>2]=(c[k>
x3e;2]|0)+3;c[g>>2]=(d[(c[k>>2]|0)+-3>>0]|0)<<16|(d[(c[k>>2]|0)+-3+1>>
;0]|0)<<8|(d[(c[k>>2]|0)+-3+2>>0]|0)<<0;b=c[k>>2]|0;c[k>>2]=b+1;c[h
x3e;>2]=d[b>>0];if(((c[g>>2]|0)+(c[h>>2]|0)|0)>>>0>=1114112)sc(c[f>
x3e;2]|0,8);if((c[g>>2]|0)>>>0<(c[o>>2]|0)>>>0)sc(c[f>>2]|0,8);
c[o>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+1}}while(0);b:do if(c[u
x3e;>2]|0){c[t>>2]=(c[e>>2]|0)+(c[u>>2]|0);c[t>>2]=(c[t>>2]|0)+4;c[v>
;>2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16
|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-4+3>>0]|0)<<0;c[p>
;>2]=0;if(c[v>>2]<<2>>>0>((c[(c[f>>2]|0)+4>>2]|0)-(c[t>>
;2]|0)|0)>>>0)sc(c[f>>2]|0,8);c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0
x3e;=(c[v>>2]|0)>>>0)break b;c[t>>2]=(c[t>>2]|0)+3;c[z>>2]=(d[(c[t>
x3e;2]|0)+-3>>0]|0)<<16|(d[(c[t>>2]|0)+-3+1>>0]|0)<<8|(d[(c[t>>2]|0)+-
3+2>>0]|0)<<0;c[t>>2]=(c[t>>2]|0)+2;c[l>>2]=(((d[(c[t>>2]|0)+-2>
;>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c
[z>>2]|0)>>>0>=1114112)sc(c[f>>2]|0,8);if((c[z>>2]|0)>>>0<(
c[p>>2]|0)>>>0)sc(c[f>>2]|0,8);c[p>>2]=(c[z>>2]|0)+1;if((c[(c[f>>
;2]|0)+8>>2]|0)>>>0>=1?(c[l>>2]|0)>>>0>=(c[(c[f>>2]|0)+172
>>2]|0)>>>0:0)sc(c[f>>2]|0,16);c[n>>2]=(c[n>>2]|0)+1}}while(0);c[s>
x3e;2]=(c[s>>2]|0)+1}i=B;return 0}function kk(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[f>>2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=14;c[c[e>>2]>
;>2]=-1;i=d;return 0}function lk(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;m=k+20|0;l=k
+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[m>>2]=a;c[l>>2]=b;c[f>>2]=d;c[g>>2]=e;c[j>>
;2]=mk(c[m>>2]|0,c[l>>2]|0)|0;if(!(c[j>>2]|0)){c[h>>2]=142;m=c[h>>2]|0;i=k;return
m|0}if(c[g>>2]|0)c[c[g>>2]>>2]=c[(c[j>>2]|0)+12>>2];c[h>>2]=Kc(c[f
x3e;>2]|0,c[(c[j>>2]|0)+8>>2]|0)|0;m=c[h>>2]|0;i=k;return m|0}function mk(a,b){a=a|0;b=b|0;var
d=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;g=j+16|0;k=j+12|0;d=j+8|0;h=j+4|0;f=j;c[k>>2]=a;c[d>>2]=b;c[h>>
;2]=c[(c[k>>2]|0)+156>>2];c[f>>2]=(c[h>>2]|0)+((e[(c[k>>2]|0)+152>>1
]|0)<<4);while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>>0){d=7;break
}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)?c[(c[h>>2]|0)+12>>2]|0:0){d=5;break}c[h>
;>2]=(c[h>>2]|0)+16}if((d|0)==5){c[g>>2]=c[h>>2];k=c[g>>2]|0;i=j;return k|0}else if
((d|0)==7){c[g>>2]=0;k=c[g>>2]|0;i=j;return k|0}return 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,r=0,s=0;q=i;i=i+48|0;g=q+40|0;h=q+36|0;j=q+32|0;k=q+28|0;s=q+24|0;r=q+20|0;m=q+16|
0;n=q+12|0;p=q+8|0;o=q+4|0;l=q;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[s>>2]=e;c[r>>2]=
f;c[n>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+4>>2];c[s>>2]=c[s>>2];c[r>
x3e;2]=c[r>>2];c[p>>2]=c[(c[j>>2]|0)+532>>2];do if(!(c[p>>2]|0)){c[p>>
;2]=Ud(c[n>>2]|0,11340)|0;if(c[p>>2]|0){c[(c[j>>2]|0)+532>>2]=c[p>>2];c[(c[j
x3e;>2]|0)+508>>2]=c[c[p>>2]>>2];break}c[g>>2]=3;s=c[g>>2]|0;i=q;return s
|0}while(0);c[o>>2]=c[(c[j>>2]|0)+96>>2];c[l>>2]=Vd(c[o>>2]|0,71003)|0;c[(c[j
x3e;>2]|0)+536>>2]=c[l>>2];c[m>>2]=ok(c[h>>2]|0,c[j>>2]|0)|0;if(c[m>
x3e;2]|0){c[g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}if((c[k>>2]|0)<0)c[k>>
;2]=0;if((c[k>>2]|0)>=(c[(c[j>>2]|0)+132+8>>2]|0)){c[g>>2]=6;s=c[g>>2]|0;
i=q;return s|0}s=Kc(c[h>>2]|0,c[(c[(c[j>>2]|0)+132+12>>2]|0)+(c[k>>2]<<2)>
;>2]|0)|0;c[m>>2]=s;if(s|0){c[g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}c[m>>
;2]=Ya[c[(c[p>>2]|0)+132>>2]&127](c[j>>2]|0,c[h>>2]|0)|0;if(c[m>>2]|0){c[
g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}else{c[c[j>>2]>>2]=c[(c[j>>
2]|0)+132+8>>2];c[(c[j>>2]|0)+4>>2]=c[k>>2];c[g>>2]=c[m>>2];s=c[g>
;>2]|0;i=q;return s|0}return 0}function ok(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;m=i;i=i+32|0;g=m+28|0;h
=m+24|0;j=m+20|0;d=m+16|0;k=m+12|0;f=m+8|0;e=m+4|0;l=m;c[h>>2]=a;c[j>>2]=b;c[d>>2]=c[(c[h>>
;2]|0)+28>>2];c[(c[j>>2]|0)+132>>2]=0;c[(c[j>>2]|0)+132+4>>2]=0;c[(c[j>
x3e;2]|0)+132+8>>2]=0;c[e>>2]=Mc(c[h>>2]|0)|0;c[f>>2]=Oc(c[h>>2]|0,k)|0;if(c[k
>>2]|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}if((c[f>>2]|0)!=65536&(
c[f>>2]|0)!=1953784678&(c[f>>2]|0)!=1330926671&(c[f>>2]|0)!=1953658213&(c[f>
x3e;2]|0)!=1954115633&(c[f>>2]|0)!=131072){c[g>>2]=2;l=c[g>>2]|0;i=m;return l|0}c[(c[j>
x3e;2]|0)+132>>2]=1953784678;do if((c[f>>2]|0)==1953784678){f=le(c[h>>2]|0,7544,(c[j>>2]|
0)+132|0)|0;c[k>>2]=f;if(f|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}f=hc(c[d>
x3e;2]|0,4,0,c[(c[j>>2]|0)+132+8>>2]|0,0,k)|0;c[(c[j>>2]|0)+132+12>>2]=f;if(c[k>>
;2]|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}f=ee(c[h>>2]|0,c[(c[j>>2]|0)+
132+8>>2]<<2)|0;c[k>>2]=f;if(f|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return
l|0}c[l>>2]=0;while(1){b=c[h>>2]|0;if((c[l>>2]|0)>=(c[(c[j>>2]|0)+132+8>>
;2]|0))break;f=je(b)|0;c[(c[(c[j>>2]|0)+132+12>>2]|0)+(c[l>>2]<<2)>>2]=f;c[l
x3e;>2]=(c[l>>2]|0)+1}ge(b)}else{c[(c[j>>2]|0)+132+4>>2]=65536;c[(c[j>>2]|0)+132+8
x3e;>2]=1;l=bc(c[d>>2]|0,4,k)|0;c[(c[j>>2]|0)+132+12>>2]=l;if(!(c[k>>2]|0)){c[c[(c[
j>>2]|0)+132+12>>2]>>2]=c[e>>2];break}c[g>>2]=c[k>>2];l=c[g>>
;2]|0;i=m;return l|0}while(0);c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}function pk(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;I=i;i=i+112|0;o=I+92|0;F=I+88|0;J=I+84|0;l=I+80|0;m=I+76|0;G=I+72|0;x=I+68|0;r=I+103|0;u=I+102|0;s=I+101|0;t=I+100|0;D=I+64|
0;n=I+60|0;H=I+56|0;q=I+52|0;v=I+48|0;p=I+44|0;B=I+40|0;E=I+36|0;w=I+32|0;A=I+98|0;y=I+96|0;C=I+4|0;z=I;c[o>>2]=f;c[F
x3e;>2]=g;c[J>>2]=h;c[l>>2]=j;c[m>>2]=k;a[s>>0]=0;a[t>>0]=0;c[D>>
;2]=c[(c[F>>2]|0)+532>>2];c[J>>2]=c[J>>2];c[n>>2]=0;while(1){if((c[n>>
;2]|0)>=(c[l>>2]|0))break;if((c[(c[m>>2]|0)+(c[n>>2]<<3)>>2]|0)!=1768386662
){if((c[(c[m>>2]|0)+(c[n>>2]<<3)>>2]|0)==1768386675)a[t>>0]=1}else a[s>
x3e;0]=1;c[n>>2]=(c[n>>2]|0)+1}if(!(c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]|0)?!(mk
(c[F>>2]|0,1735162214)|0):0)l=(mk(c[F>>2]|0,1128678944)|0)!=0;else l=1;a[r>>0]=l&1;a[u>
x3e;0]=0;if((a[r>>0]|0)==0?c[(c[D>>2]|0)+84>>2]|0:0){c[G>>2]=Ya[c[(c[D>>2]|0)+
84>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;a[u>>0]=((c[G>>2]|0)!=0^1)&1}if((
a[u>>0]|0)==0?(c[G>>2]=Ya[c[(c[D>>2]|0)+32>>2]&127](c[F>>2]|0,c[o>
x3e;2]|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if(!(e[(c[F>>2]|0)+160+18>>1]|0)){c
[G>>2]=8;J=c[G>>2]|0;i=I;return J|0}c[G>>2]=Ya[c[(c[D>>2]|0)+44>>2]&127](
c[F>>2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+40>>2]&127](c[F>>
;2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+56>>2]&127](c[F>>2]|0,c[o>
;>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+52>>2]&127](c[F>>2]|0,c[o>>2]|0)|
0;c[x>>2]=c[G>>2];if(!(a[u>>0]|0)){c[G>>2]=Oa[c[(c[D>>2]|0)+36>>2]
x26;63](c[F>>2]|0,c[o>>2]|0,0)|0;do if(c[G>>2]|0){if((c[G>>2]|0)==142){if((c[(c[F>
x3e;2]|0)+148>>2]|0)==1953658213){a[r>>0]=0;c[G>>2]=0;break}c[G>>2]=143;if(c[(c[(c[F>
;>2]|0)+128>>2]|0)+52>>2]|0?c[(c[c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]>
x3e;2]|0)+8>>2]|0:0){b[(c[F>>2]|0)+216+34>>1]=0;c[G>>2]=0}}}else{c[G>>2]=Oa[c[(
c[D>>2]|0)+136>>2]&63](c[F>>2]|0,c[o>>2]|0,0)|0;if(((c[G>>2]|0)==142?(c[G
>>2]=147,c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]|0):0)?c[(c[c[(c[(c[F>>2]|0)+128>
;>2]|0)+52>>2]>>2]|0)+8>>2]|0:0){b[(c[F>>2]|0)+216+34>>1]=0;c[G>>
;2]=0}}while(0);if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}c[G>>2]=Oa[c[(c[D>>2]|0)+36>
;>2]&63](c[F>>2]|0,c[o>>2]|0,1)|0;if((c[G>>2]|0)==0?(c[G>>2]=Oa[c[(c[D>
x3e;2]|0)+136>>2]&63](c[F>>2]|0,c[o>>2]|0,1)|0,(c[G>>2]|0)==0):0)a[(c[F>>
2]|0)+296>>0]=1;if((c[G>>2]|0)!=0&(c[G>>2]|0)!=142){J=c[G>>2]|0;i=I;return J|0}c[G
x3e;>2]=Ya[c[(c[D>>2]|0)+48>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;if(c[G>>
2]|0)b[(c[F>>2]|0)+368>>1]=-1}do if(c[(c[D>>2]|0)+140>>2]|0?(c[G>>2]=Ya[c[(c[D
>>2]|0)+140>>2]&127](c[F>>2]|0,c[o>>2]|0)|0,c[G>>2]|0):0)if((c[G>>
;2]|0)==142){c[G>>2]=0;break}else{J=c[G>>2]|0;i=I;return J|0}while(0);c[G>>2]=Ya[c[(c[D>>
;2]|0)+80>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;do if(c[G>>2]|0)if((c[G>>2]|0)!=
142){J=c[G>>2]|0;i=I;return J|0}else{c[(c[F>>2]|0)+556>>2]=0;break}while(0);c[G>>2]=Ya[c
[(c[D>>2]|0)+76>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>
x3e;2]|0)+72>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;c[(c[F>>2]|0)+16>>2]=e[(c[F
x3e;>2]|0)+260+4>>1];c[(c[F>>2]|0)+20>>2]=0;c[(c[F>>2]|0)+24>>2]=0;if((e[(
c[F>>2]|0)+368>>1]|0)!=65535?e[(c[F>>2]|0)+368+64>>1]&256|0:0){if((a[s>>0
]|0)==0?(c[G>>2]=qk(c[F>>2]|0,16,(c[F>>2]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0
;i=I;return J|0}if((c[(c[F>>2]|0)+20>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,1,(c[F>>2
]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if((a[t>>0]|0)==0?(c[G>>2]=qk(c[F
x3e;>2]|0,17,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if((c[(c[F>>
;2]|0)+24>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,2,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){
J=c[G>>2]|0;i=I;return J|0}}else{c[G>>2]=qk(c[F>>2]|0,21,(c[F>>2]|0)+20|0)|0;if(c[G>
;>2]|0){J=c[G>>2]|0;i=I;return J|0}if(!(a[s>>0]|0?1:(c[(c[F>>2]|0)+20>>2]|0)!=0)?(c
[G>>2]=qk(c[F>>2]|0,16,(c[F>>2]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return
J|0}if((c[(c[F>>2]|0)+20>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,1,(c[F>>2]|0)+20|0)|
0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}c[G>>2]=qk(c[F>>2]|0,22,(c[F>>2]|0)+
24|0)|0;if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}if(!(a[t>>0]|0?1:(c[(c[F>>2]|0)+24>
;>2]|0)!=0)?(c[G>>2]=qk(c[F>>2]|0,17,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>
x3e;2]|0;i=I;return J|0}if((c[(c[F>>2]|0)+24>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,2,(c[F>
;>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}}c[H>>2]=c[F>>2];c[q>
x3e;2]=c[(c[H>>2]|0)+8>>2];if((d[r>>0]|0)==1)c[q>>2]=c[q>>2]|1;c[q>>
2]=c[q>>2]|24;if((c[x>>2]|0)==0?(c[(c[F>>2]|0)+468>>2]|0)!=196608:0)c[q>>2]=c[
q>>2]|512;if(c[(c[F>>2]|0)+468+12>>2]|0)c[q>>2]=c[q>>2]|4;if(a[(c[F>>
;2]|0)+296>>0]|0)c[q>>2]=c[q>>2]|32;if(c[(c[F>>2]|0)+784>>2]|0)c[q>>
2]=c[q>>2]|64;if((mk(c[F>>2]|0,1735162214)|0?mk(c[F>>2]|0,1719034226)|0:0)?mk(c[F>>2]|0,
1735811442)|0:0)c[q>>2]=c[q>>2]|256;c[(c[H>>2]|0)+8>>2]=c[q>>2];c[q>>
;2]=0;if((d[r>>0]|0)==1?(e[(c[F>>2]|0)+368>>1]|0)!=65535:0){if(!(!(e[(c[F>>2]|0)+368+64
x3e;>1]&512|0)?!(e[(c[F>>2]|0)+368+64>>1]&1|0):0))c[q>>2]=c[q>>2]|1;if(e[(
c[F>>2]|0)+368+64>>1]&32|0)c[q>>2]=c[q>>2]|2}else{if(e[(c[F>>2]|0)+160+44
>>1]&1|0)c[q>>2]=c[q>>2]|2;if(e[(c[F>>2]|0)+160+44>>1]&2|0)c[q>
x3e;2]=c[q>>2]|1}c[(c[H>>2]|0)+12>>2]=c[q>>2];tk(c[F>>2]|0)|0;c[v>>2
]=0;while(1){if((c[v>>2]|0)>=(c[(c[H>>2]|0)+36>>2]|0))break;c[p>>2]=c[(c[(c[H>
x3e;2]|0)+40>>2]|0)+(c[v>>2]<<2)>>2];J=uk(e[(c[p>>2]|0)+8>>1]|0,e[(c
[p>>2]|0)+10>>1]|0)|0;c[(c[p>>2]|0)+4>>2]=J;c[v>>2]=(c[v>>2]|0)+1}c[
E>>2]=c[(c[F>>2]|0)+612>>2];do if((c[E>>2]|0)>>>0>0){c[w>>
2]=c[(c[(c[F>>2]|0)+104>>2]|0)+28>>2];b[A>>1]=b[(c[F>>2]|0)+160+18>>
1]|0;b[y>>1]=b[(c[F>>2]|0)+368+2>>1]|0;if(!((e[A>>1]|0)!=0?(e[(c[F>>2]|0)+368
x3e;>1]|0)!=65535:0)){b[y>>1]=0;b[A>>1]=1}J=hc(c[w>>2]|0,16,0,c[E>>2]|0,0,G)|0;c[(c
[H>>2]|0)+32>>2]=J;if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}c[B>>2]=0;while(1){
m=c[H>>2]|0;if((c[B>>2]|0)>>>0>=(c[E>>2]|0)>>>0){l=103;break}c[
z>>2]=(c[m+32>>2]|0)+(c[B>>2]<<4);c[G>>2]=Oa[c[(c[D>>2]|0)+152>
x3e;2]&63](c[F>>2]|0,c[B>>2]|0,C)|0;if(c[G>>2]|0){l=112;break}b[c[z>>2]>>
1]=c[C+20>>2]>>6;J=_(b[y>>1]|0,e[C>>1]|0)|0;b[(c[z>>2]|0)+2>>1]=(J+((
e[A>>1]|0)/2|0)|0)/(e[A>>1]|0)|0;c[(c[z>>2]|0)+8>>2]=e[C>>1]<<6;c[(c
[z>>2]|0)+12>>2]=e[C+2>>1]<<6;c[(c[z>>2]|0)+4>>2]=e[C+2>>1
]<<6;c[B>>2]=(c[B>>2]|0)+1}if((l|0)==103){J=m+8|0;c[J>>2]=c[J>>2]|2;c[(c[H>
;>2]|0)+28>>2]=c[E>>2];break}else if((l|0)==112){J=c[G>>2]|0;i=I;return J|0}}while(0);if((c[(
c[H>>2]|0)+8>>2]&2|0)==0?(c[(c[H>>2]|0)+8>>2]&1|0)==0:0){J=(c[H>>2]|
0)+8|0;c[J>>2]=c[J>>2]|1}if(!(c[(c[H>>2]|0)+8>>2]&1)){J=c[G>>2]|0;i=I;return
J|0}c[(c[H>>2]|0)+52>>2]=b[(c[F>>2]|0)+160+36>>1];c[(c[H>>2]|0)+52+4>>
;2]=b[(c[F>>2]|0)+160+38>>1];c[(c[H>>2]|0)+52+8>>2]=b[(c[F>>2]|0)+160+40>
x3e;1];c[(c[H>>2]|0)+52+12>>2]=b[(c[F>>2]|0)+160+42>>1];b[(c[H>>2]|0)+68>
x3e;1]=b[(c[F>>2]|0)+160+18>>1]|0;b[(c[H>>2]|0)+70>>1]=b[(c[F>>2]|0)+216+4>
;>1]|0;b[(c[H>>2]|0)+72>>1]=b[(c[F>>2]|0)+216+6>>1]|0;b[(c[H>>2]|0)+74>
;>1]=(b[(c[H>>2]|0)+70>>1]|0)-(b[(c[H>>2]|0)+72>>1]|0)+(b[(c[F>>2]|0)+216
+8>>1]|0);b[(c[H>>2]|0)+76>>1]=b[(c[F>>2]|0)+216+10>>1]|0;if(d[(c[F>>
;2]|0)+296>>0]|0)l=e[(c[F>>2]|0)+300+10>>1]|0;else l=b[(c[H>>2]|0)+74>>1]|0;b[(
c[H>>2]|0)+78>>1]=l;b[(c[H>>2]|0)+80>>1]=(b[(c[F>>2]|0)+468+8>>1]|0)-((
b[(c[F>>2]|0)+468+10>>1]|0)/2|0);b[(c[H>>2]|0)+82>>1]=b[(c[F>>2]|0)+468+10>
;>1]|0;J=c[G>>2]|0;i=I;return J|0}function qk(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,r=
0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=i;i=i+64|0;h=z+48|0;j=z+54|0;k=z+44|0;t=z+40|0;m=z+36|0;w=z+32|0;u=z+52|0;v=z+28|0;n=z+24|0;
p=z+20|0;o=z+16|0;r=z+12|0;q=z+8|0;s=z+56|0;l=z+4|0;x=z;c[h>>2]=d;b[j>>1]=f;c[k>>2]=g;c[t>>
;2]=c[(c[h>>2]|0)+100>>2];c[m>>2]=0;c[w>>2]=0;c[n>>2]=-1;c[p>>2]=-1;
c[o>>2]=-1;c[r>>2]=-1;c[q>>2]=-1;a[s>>0]=0;c[v>>2]=c[(c[h>>2]|0)+348
+12>>2];b[u>>1]=0;while(1){if((e[u>>1]|0)>=(e[(c[h>>2]|0)+344>>1]|0))break
;a:do if((e[(c[v>>2]|0)+6>>1]|0)==(e[j>>1]|0)?(e[(c[v>>2]|0)+8>>1]|0)>0:0
)switch(e[c[v>>2]>>1]|0){case 2:case 0:{c[q>>2]=e[u>>1];break a}case 1:{if(!(e[(c[v>
;>2]|0)+4>>1]|0)){c[o>>2]=e[u>>1];break a}if(e[(c[v>>2]|0)+2>>1]|0)break
a;c[p>>2]=e[u>>1];break a}case 3:{if((c[r>>2]|0)!=-1?(e[(c[v>>2]|0)+4>>1]&
;1023|0)!=9:0)break a;switch(e[(c[v>>2]|0)+2>>1]|0){case 10:case 1:case 0:break;default:break a}a[s>>
;0]=(e[(c[v>>2]|0)+4>>1]&1023|0)==9;c[r>>2]=e[u>>1];break a}default:break a}while(0
);b[u>>1]=(b[u>>1]|0)+1<<16>>16;c[v>>2]=(c[v>>2]|0)+20}c[n>>
;2]=c[p>>2];if((c[o>>2]|0)>=0)c[n>>2]=c[o>>2];c[l>>2]=0;b:do if((c[r>
;>2]|0)>=0?(c[n>>2]|0)<0|(a[s>>0]|0)!=0:0){c[v>>2]=(c[(c[h>>2]|0)+348+12
x3e;>2]|0)+((c[r>>2]|0)*20|0);switch(e[(c[v>>2]|0)+2>>1]|0){case 0:case 1:{c[l>>2]=
106;break b}case 10:{c[l>>2]=106;break b}default:break b}}else y=23;while(0);do if((y|0)==23){if((c[n>>2]|0)
x3e;=0){c[v>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[n>>2]|0)*20|0);c[l>>2]=107;break
}if((c[q>>2]|0)>=0){c[v>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[q>>2]|0)*20|
0);c[l>>2]=106}}while(0);if(!((c[v>>2]|0)!=0&(c[l>>2]|0)!=0)){x=c[w>>2]|0;y=c[k>
;>2]|0;c[y>>2]=x;y=c[m>>2]|0;i=z;return y|0}do if(!(c[(c[v>>2]|0)+16>>2]|0)){c[x>
;>2]=c[(c[h>>2]|0)+348+16>>2];y=hc(c[t>>2]|0,1,0,e[(c[v>>2]|0)+8>>1]|0,0,
m)|0;c[(c[v>>2]|0)+16>>2]=y;if(((c[m>>2]|0)==0?(y=Kc(c[x>>2]|0,c[(c[v>>2]|0)+12
>>2]|0)|0,c[m>>2]=y,(y|0)==0):0)?(y=Rc(c[x>>2]|0,c[(c[v>>2]|0)+16>>2]|0,e[(c[v
>>2]|0)+8>>1]|0)|0,c[m>>2]=y,(y|0)==0):0)break;Fb(c[t>>2]|0,c[(c[v>>2]|0)+16
x3e;>2]|0);c[(c[v>>2]|0)+16>>2]=0;b[(c[v>>2]|0)+8>>1]=0;c[w>>2]=0;x=c[w
x3e;>2]|0;y=c[k>>2]|0;c[y>>2]=x;y=c[m>>2]|0;i=z;return y|0}while(0);c[w>>2]=Ya[c[l
x3e;>2]&127](c[v>>2]|0,c[t>>2]|0)|0;x=c[w>>2]|0;y=c[k>>2]|0;c[y>>2]=
x;y=c[m>>2]|0;i=z;return y|0}function rk(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,q=0;n=i;i=i+48|0;g=n
+32|0;q=n+28|0;p=n+24|0;m=n+20|0;j=n+16|0;h=n+12|0;k=n+8|0;l=n+4|0;o=n;c[q>>2]=b;c[p>>2]=f;c[m>>2]=
0;c[l>>2]=c[(c[q>>2]|0)+16>>2];c[j>>2]=((e[(c[q>>2]|0)+8>>1]|0)>
;>>0)/2|0;c[m>>2]=hc(c[p>>2]|0,1,0,(c[j>>2]|0)+1|0,0,o)|0;if(c[o>>2]|0){c[g>
;>2]=0;q=c[g>>2]|0;i=n;return q|0}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=(
c[j>>2]|0)>>>0)break;c[l>>2]=(c[l>>2]|0)+2;q=(((d[(c[l>>2]|0)+-2>>
;0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[h>
x3e;2]=q;c[h>>2]=(c[h>>2]|0)>>>0<32|(c[h>>2]|0)>>>0>127?63
:q;a[(c[m>>2]|0)+(c[k>>2]|0)>>0]=c[h>>2];c[k>>2]=(c[k>>2]|0)+1}a[(c[
m>>2]|0)+(c[j>>2]|0)>>0]=0;c[g>>2]=c[m>>2];q=c[g>>2]|0;i=n;return q|
0}function sk(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,q=0;n=i;i=i+48|0;g=n+32|0;q=n+28|0;p=n+24|0;m=n+20|0;j=n+
16|0;h=n+12|0;k=n+8|0;l=n+4|0;o=n;c[q>>2]=b;c[p>>2]=f;c[m>>2]=0;c[l>>2]=c[(c[q>>
;2]|0)+16>>2];c[j>>2]=e[(c[q>>2]|0)+8>>1];c[m>>2]=hc(c[p>>2]|0,1,0,(
c[j>>2]|0)+1|0,0,o)|0;if(c[o>>2]|0){c[g>>2]=0;q=c[g>>2]|0;i=n;return q|0}c[k>>
2]=0;while(1){if((c[k>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;q=c[l>>
2]|0;c[l>>2]=q+1;q=d[q>>0]|0;c[h>>2]=q;c[h>>2]=(c[h>>2]|0)>>>0
x3c;32|(c[h>>2]|0)>>>0>127?63:q;a[(c[m>>2]|0)+(c[k>>2]|0)>>0]=c[h>
;>2];c[k>>2]=(c[k>>2]|0)+1}a[(c[m>>2]|0)+(c[j>>2]|0)>>0]=0;c[g>>
;2]=c[m>>2];q=c[g>>2]|0;i=n;return q|0}function tk(a){a=a|0;var f=0,g=0,h=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,A=0;A=i;i=i+224|0;y=4;x=Fs(40)|0;c[x>>2]=0;s=A+216|0;t=A+212|0;l=A+200|0;p=A+196|0;r=A+192
|0;u=A+188|0;m=A+184|0;w=A+8|0;q=A+4|0;v=A;j=c[a+500>>2]|0;k=j+(c[a+504>>2]|0)|0;c[t>>2]=j;if(c[t
x3e;>2]|0?((c[t>>2]|0)+4|0)>>>0<=k>>>0:0){c[t>>2]=(c[t>>2]|
0)+2;f=c[t>>2]|0;if((((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535|0){c[t>>2]=f+-2;z=8;Gs(x|0);i=A;return z|0}c[t>>2]=
f+2;c[s>>2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>
;>0]|0)&65535)<<0)&65535;while(1){if((c[s>>2]|0)>>>0<=0)break;if(((c[t>
;>2]|0)+8|0)>>>0>k>>>0)break;c[t>>2]=(c[t>>2]|0)+2;b[l+8>>
1]=((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535
)<<0;c[t>>2]=(c[t>>2]|0)+2;b[l+10>>1]=((d[(c[t>>2]|0)+-2>>0]|0)&
;65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0;c[l>>2]=a;c[l+4>>
;2]=0;c[t>>2]=(c[t>>2]|0)+4;f=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>
2]|0)+-4+1>>0]|0)<<16|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-
4+3>>0]|0)<<0;if(f|0?f>>>0<=((c[a+504>>2]|0)-2|0)>>>0:0){c[p>
;>2]=j+f;c[r>>2]=(((d[c[p>>2]>>0]|0)&65535)<<8|((d[(c[p>>2]|0)+1>
;>0]|0)&65535)<<0)&65535;c[u>>2]=3080;while(1){if(!(c[c[u>>2]>>2]|0))break
;c[m>>2]=c[c[u>>2]>>2];if((c[(c[m>>2]|0)+40>>2]|0)==(c[r>>2]|0)){z=14
;break}c[u>>2]=(c[u>>2]|0)+4}a:do if((z|0)==14){z=0;c[q>>2]=0;n=0;qa(10,w|0,c[p>>2]|0,k|
0,0);f=n;n=0;if((f|0)!=0&(o|0)!=0){g=Rs(c[f>>2]|0,x|0,y|0)|0;if(!g)ta(f|0,o|0);C=o}else g=-1;if((g|0)!=1){c[w+172
>>2]=e[a+260+4>>1];x=Qs(w+16|0,1,x|0,y|0)|0;y=C;n=0;f=n;n=0;if((f|0)!=0&(o|0)!=0){g=Rs(c[f>>2
]|0,x|0,y|0)|0;if(!g)ta(f|0,o|0);C=o}else g=-1;if((g|0)!=1)f=0;else f=C}else f=C;while(1){if(!f){n=0;f=oa(c[(c[m>>2]|0
)+44>>2]|0,c[p>>2]|0,w|0)|0;g=n;n=0;if((g|0)!=0&(o|0)!=0){h=Rs(c[g>>2]|0,x|0,y|0)|0;if(!h)ta(
g|0,o|0);C=o}else h=-1;if((h|0)==1){f=C;continue}c[q>>2]=f}if(c[w+12>>2]|0)break a;n=0;f=ma(23,c[m>>
;2]|0,c[p>>2]|0,l|0,v|0)|0;g=n;n=0;if((g|0)!=0&(o|0)!=0){h=Rs(c[g>>2]|0,x|0,y|0)|0;if(!h)ta(g|0,o|0);C=
o}else h=-1;if((h|0)==1)f=C;else break}if(!f)c[(c[v>>2]|0)+20>>2]=c[q>>2]}while(0)}c[s>>
2]=(c[s>>2]|0)+-1}z=0;Gs(x|0);i=A;return z|0}z=8;Gs(x|0);i=A;return z|0}function uk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g
=0,h=0,j=0;j=i;i=i+32|0;g=j+16|0;d=j+12|0;e=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[h>>2]=3120;c[f
>>2]=(c[h>>2]|0)+132;while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>
x3e;>0){d=8;break}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)){if((c[(c[h>>2]|0)+4>>
;2]|0)==(c[e>>2]|0)){d=6;break}if((c[(c[h>>2]|0)+4>>2]|0)==-1){d=6;break}}c[h>>2]=(c[h
x3e;>2]|0)+12}if((d|0)==6){c[g>>2]=c[(c[h>>2]|0)+8>>2];h=c[g>>2]|0;i=j;return h|0}else
if((d|0)==8){c[g>>2]=0;h=c[g>>2]|0;i=j;return h|0}return 0}function vk(d){d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i
;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=d;if(!(c[e>>2]|0)){i=j;return}c[f>>2]=c[(c[e>
x3e;2]|0)+100>>2];c[g>>2]=c[(c[e>>2]|0)+532>>2];if(c[g>>2]|0){if(c[(c[g>
x3e;2]|0)+116>>2]|0)Va[c[(c[g>>2]|0)+116>>2]&63](c[e>>2]|0);if(c[(c[g>>2]|
0)+144>>2]|0)Va[c[(c[g>>2]|0)+144>>2]&63](c[e>>2]|0)}wk(c[e>>2]|0);xk(c[e
>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+132+12>>2]|0);c[(c[e>>2]|0)+132+12>>
;2]=0;c[(c[e>>2]|0)+132+8>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+156>>2]|0);c[(c[e
x3e;>2]|0)+156>>2]=0;b[(c[e>>2]|0)+152>>1]=0;c[h>>2]=c[(c[e>>2]|0)+104>
;>2];fe(c[h>>2]|0,(c[e>>2]|0)+500|0);c[(c[e>>2]|0)+504>>2]=0;Fb(c[f>>2]|0
,c[(c[e>>2]|0)+216+36>>2]|0);c[(c[e>>2]|0)+216+36>>2]=0;Fb(c[f>>2]|0,c[(c[e>
;>2]|0)+216+40>>2]|0);c[(c[e>>2]|0)+216+40>>2]=0;if(a[(c[e>>2]|0)+296>>0]|
0){Fb(c[f>>2]|0,c[(c[e>>2]|0)+300+36>>2]|0);c[(c[e>>2]|0)+300+36>>2]=0;Fb(c[f
x3e;>2]|0,c[(c[e>>2]|0)+300+40>>2]|0);c[(c[e>>2]|0)+300+40>>2]=0;a[(c[e>>
2]|0)+296>>0]=0}Fb(c[f>>2]|0,c[(c[e>>2]|0)+548+4>>2]|0);c[(c[e>>2]|0)+548+4>
;>2]=0;b[(c[e>>2]|0)+548+2>>1]=0;if(c[g>>2]|0)Va[c[(c[g>>2]|0)+60>>2]&
;63](c[e>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+20>>2]|0);c[(c[e>>2]|0)+20>>
;2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;Fb(c[f>
x3e;2]|0,c[(c[e>>2]|0)+32>>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[(c[e>>2]|0)+28>
x3e;2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+700>>2]|0);c[(c[e>>2]|0)+700>>2]=0;c[(c[e
x3e;>2]|0)+532>>2]=0;i=j;return}function wk(b){b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=b;c[e>>2]=(c[d>>2]|0)+792;if(!(a[(c[e>>2]|0)+20>>0]|0)){i=g;return}c[f>
x3e;2]=c[(c[d>>2]|0)+104>>2];if(c[c[e>>2]>>2]|0)fe(c[f>>2]|0,c[e>>2]|
0);c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|0)+12>>2]=
0;i=g;return}function xk(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]|0)+104>>2];fe(c[e>>2]|0,(c[d>>2]|0)+772|0);c[(c[d>>2]|0)+776>>2]=0;c[(c[d
x3e;>2]|0)+780>>2]=0;c[(c[d>>2]|0)+784>>2]=0;c[(c[d>>2]|0)+788>>2]=0;i=b;
return}function yk(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[f>
x3e;2]=c[f>>2];b=qc(3252,c[e>>2]|0)|0;i=d;return b|0}function zk(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;s=i;i=i+48|0;g=s+36|0;h=s+32|0;j=s+28|0;k=s+24|0;l=s+20|0;m=s+16|0;n=s+12|0;p=s
+8|0;q=s+4|0;o=s;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;e=c[h>
x3e;2]|0;do if(c[j>>2]|0){c[q>>2]=mk(e,c[j>>2]|0)|0;if(c[q>>2]|0){c[k>>2]=(c[k
>>2]|0)+(c[(c[q>>2]|0)+8>>2]|0);c[o>>2]=c[(c[q>>2]|0)+12>>2];r=6;break
}else{c[n>>2]=142;break}}else{c[o>>2]=c[(c[e+104>>2]|0)+4>>2];r=6}while(0);if((r|0)==6){
if(c[m>>2]|0?(c[c[m>>2]>>2]|0)==0:0){c[c[m>>2]>>2]=c[o>>2];c[g>
x3e;2]=0;r=c[g>>2]|0;i=s;return r|0}if(c[m>>2]|0)c[o>>2]=c[c[m>>2]>>2];c[p>
;>2]=c[(c[h>>2]|0)+104>>2];c[n>>2]=Sc(c[p>>2]|0,c[k>>2]|0,c[l>>
2]|0,c[o>>2]|0)|0}c[g>>2]=c[n>>2];r=c[g>>2]|0;i=s;return r|0}function Ak(a,b){a=a|0;b=b|
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]=a;c[j>>2]=b;switch(c[j>>2]|0){case
0:{c[g>>2]=(c[f>>2]|0)+160;break}case 3:{c[g>>2]=(c[f>>2]|0)+216;break}case 4:{c[g>
x3e;2]=d[(c[f>>2]|0)+296>>0]|0|0?(c[f>>2]|0)+300|0:0;break}case 2:{c[g>>2]=(e[(c[f>
x3e;2]|0)+368>>1]|0|0)==65535?0:(c[f>>2]|0)+368|0;break}case 5:{c[g>>2]=(c[f>>2]|0)+468;
break}case 1:{c[g>>2]=(c[f>>2]|0)+260;break}case 6:{c[g>>2]=c[(c[f>>2]|0)+556>>
;2]|0?(c[f>>2]|0)+556|0:0;break}default:c[g>>2]=0}i=h;return c[g>>2]|0}function Bk(a,b,d,f,g){a=a|
0;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;o=i;i=i+32|0;h=o+20|0;j=o+16|0;k=o+12|0;l=o+8|0;m=o+4|0;n=o;c[j>
x3e;2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=f;c[n>>2]=g;if(!((c[l>>2]|0)!=0&(c[m
>>2]|0)!=0&(c[n>>2]|0)!=0)){c[h>>2]=6;d=c[h>>2]|0;i=o;return d|0}if((c[k>>
;2]|0)>>>0>=(e[(c[j>>2]|0)+152>>1]|0)>>>0){c[h>>2]=142;d=c[h>
;>2]|0;i=o;return d|0}else{c[c[l>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>>
;2]<<4)>>2];c[c[m>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>>
;2]<<4)+8>>2];c[c[n>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>
x3e;2]<<4)+12>>2];c[h>>2]=0;d=c[h>>2]|0;i=o;return d|0}return 0}function Ck(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,z=0,A=0;A=i;i=i+80|0;g=A+72|0;h=A+68|0;r=A+64|0;m=A+60|
0;l=A+56|0;x=A+52|0;s=A+48|0;p=A+44|0;t=A+40|0;n=A+36|0;j=A+32|0;y=A+28|0;w=A+24|0;v=A+20|0;q=A+16|0;u=A+12|0;o=A+8|0;k=A+4|0;z=
A;c[h>>2]=f;c[x>>2]=0;if(c[(c[h>>2]|0)+700>>2]|0){c[g>>2]=c[(c[h>>2]|
0)+700>>2];z=c[g>>2]|0;i=A;return z|0}c[m>>2]=-1;c[l>>2]=-1;c[r>>2]=0;while(1){
if((c[r>>2]|0)>=(e[(c[h>>2]|0)+344>>1]|0|0))break;c[s>>2]=(c[(c[h>>2]|0)+
348+12>>2]|0)+((c[r>>2]|0)*20|0);if((e[(c[s>>2]|0)+6>>1]|0|0)==6?(e[(c[s>>2]|0
)+8>>1]|0|0)>0:0){if(((e[c[s>>2]>>1]|0|0)==3?(e[(c[s>>2]|0)+2>>1]|0|0)==1
:0)?(e[(c[s>>2]|0)+4>>1]|0|0)==1033:0)c[m>>2]=c[r>>2];if(((e[c[s>>2]>>
;1]|0|0)==1?(e[(c[s>>2]|0)+2>>1]|0|0)==0:0)?(e[(c[s>>2]|0)+4>>1]|0|0)==0:0)c[l>>
;2]=c[r>>2]}c[r>>2]=(c[r>>2]|0)+1}do if((c[m>>2]|0)!=-1){c[p>>2]=c[(c[h>
x3e;2]|0)+100>>2];c[t>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[m>>2]|0)*20|0);c[n
x3e;>2]=(e[(c[t>>2]|0)+8>>1]|0|0)/2|0;c[j>>2]=0;c[j>>2]=c[j>>2];c[x>
x3e;2]=bc(c[p>>2]|0,(e[(c[t>>2]|0)+8>>1]|0)+1|0,j)|0;if(!(c[j>>2]|0)){c[y>>2]=
c[(c[h>>2]|0)+348+16>>2];c[w>>2]=c[x>>2];c[v>>2]=c[(c[t>>2]|0)+16>
;>2];z=Kc(c[y>>2]|0,c[(c[t>>2]|0)+12>>2]|0)|0;c[j>>2]=z;if((z|0)==0?(z=ee(c[y>
x3e;2]|0,e[(c[t>>2]|0)+8>>1]|0)|0,c[j>>2]=z,(z|0)==0):0){c[v>>2]=c[(c[y>>2]|0)+
32>>2];while(1){if((c[n>>2]|0)>>>0<=0)break;if(((d[c[v>>2]>>0]|0|0)==
0?(d[(c[v>>2]|0)+1>>0]|0|0)>=32:0)?(d[(c[v>>2]|0)+1>>0]|0|0)<128:0){u=a[(c[v
x3e;>2]|0)+1>>0]|0;z=c[w>>2]|0;c[w>>2]=z+1;a[z>>0]=u}c[n>>2]=(c[n>
x3e;2]|0)+-1;c[v>>2]=(c[v>>2]|0)+2}a[c[w>>2]>>0]=0;ge(c[y>>2]|0);break}Fb(c[p
x3e;>2]|0,c[x>>2]|0);c[x>>2]=0;b[(c[t>>2]|0)+8>>1]=0;c[(c[t>>2]|0)+12>
;>2]=0;Fb(c[p>>2]|0,c[(c[t>>2]|0)+16>>2]|0);c[(c[t>>2]|0)+16>>2]=0}}else
if((c[l>>2]|0)!=-1?(c[q>>2]=c[(c[h>>2]|0)+100>>2],c[u>>2]=(c[(c[h>>2
]|0)+348+12>>2]|0)+((c[l>>2]|0)*20|0),c[o>>2]=e[(c[u>>2]|0)+8>>1],c[k>>
;2]=0,c[k>>2]=c[k>>2],c[x>>2]=bc(c[q>>2]|0,(c[o>>2]|0)+1|0,k)|0,(c[k>>
;2]|0)==0):0){c[z>>2]=c[(c[h>>2]|0)+348+16>>2];y=Kc(c[z>>2]|0,c[(c[u>>2]|0)+12
>>2]|0)|0;c[k>>2]=y;if((y|0)==0?(z=Rc(c[z>>2]|0,c[x>>2]|0,c[o>>2]|0)|0,c[k>
;>2]=z,(z|0)==0):0){a[(c[x>>2]|0)+(c[o>>2]|0)>>0]=0;break}c[(c[u>>2]|0)+12>>
;2]=0;b[(c[u>>2]|0)+8>>1]=0;Fb(c[q>>2]|0,c[(c[u>>2]|0)+16>>2]|0);c[(c[u>
x3e;2]|0)+16>>2]=0;Fb(c[q>>2]|0,c[x>>2]|0);c[x>>2]=0}while(0);c[(c[h>>2]|0)+700
>>2]=c[x>>2];c[g>>2]=c[x>>2];z=c[g>>2]|0;i=A;return z|0}function Dk(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;m=k+20|0;l=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[m>>
;2]=a;c[l>>2]=b;c[f>>2]=d;c[g>>2]=e;c[h>>2]=Ek(c[m>>2]|0,c[l>>2]|0,j
)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=k;return m|0}pe(c[f>>2]|0,c[j>>2]|0,c[g>>2]|0)|
0;m=c[h>>2]|0;i=k;return m|0}function Ek(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,r=0,s=0,t=0;
t=i;i=i+48|0;h=t+36|0;j=t+32|0;k=t+28|0;l=t+24|0;m=t+20|0;p=t+16|0;n=t+12|0;q=t+8|0;r=t+4|0;o=t+40|0;s=t;c[j>>2]=d;c[k
>>2]=f;c[l>>2]=g;if(!(c[j>>2]|0)){c[h>>2]=35;s=c[h>>2]|0;i=t;return s|0}if((c[
k>>2]|0)>>>0>=(e[(c[j>>2]|0)+260+4>>1]|0)>>>0){c[h>>2
]=16;s=c[h>>2]|0;i=t;return s|0}c[q>>2]=c[(c[j>>2]|0)+536>>2];if(!(c[q>>2]|0)){
c[h>>2]=7;s=c[h>>2]|0;i=t;return s|0}c[p>>2]=(c[j>>2]|0)+628;f=Ta[c[(c[q>>2]|0
)+16>>2]&63](0)|0;c[c[l>>2]>>2]=f;c[n>>2]=c[(c[j>>2]|0)+468>>2];
do if((c[n>>2]|0)==65536){if((c[k>>2]|0)>>>0<258){s=Ta[c[(c[q>>2]|0)+16>
x3e;2]&63](c[k>>2]|0)|0;c[c[l>>2]>>2]=s}}else{if((c[n>>2]|0)!=131072){if((c[n>
x3e;2]|0)!=163840)break;c[s>>2]=(c[p>>2]|0)+4;if((a[c[p>>2]>>0]|0)==0?(c[m>>2]=
Fk(c[j>>2]|0)|0,c[m>>2]|0):0)break;if((c[k>>2]|0)>>>0>=(e[c[s>>2]>
;>1]|0)>>>0)break;c[k>>2]=(c[k>>2]|0)+(a[(c[(c[s>>2]|0)+4>>2]|0)+(c[
k>>2]|0)>>0]|0);s=Ta[c[(c[q>>2]|0)+16>>2]&63](c[k>>2]|0)|0;c[c[l>>
;2]>>2]=s;break}c[r>>2]=(c[p>>2]|0)+4;if((a[c[p>>2]>>0]|0)==0?(c[m>>
2]=Fk(c[j>>2]|0)|0,c[m>>2]|0):0)break;if((c[k>>2]|0)>>>0<(e[c[r>>2]
x3e;>1]|0)>>>0){b[o>>1]=b[(c[(c[r>>2]|0)+4>>2]|0)+(c[k>>2]<<
;1)>>1]|0;if((e[o>>1]|0)<258){s=Ta[c[(c[q>>2]|0)+16>>2]&63](e[o>>1]|
0)|0;c[c[l>>2]>>2]=s;break}else{c[c[l>>2]>>2]=c[(c[(c[r>>2]|0)+8>>2]|
0)+((e[o>>1]|0)-258<<2)>>2];break}}}while(0);c[h>>2]=0;s=c[h>>2]|0;i=t;return
s|0}function Fk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;j=k+16|0;e=k+12|0;f=k+8|0;g=k+4|0;h=k;c[d>
x3e;2]=b;c[j>>2]=c[(c[d>>2]|0)+104>>2];c[e>>2]=Wa[c[(c[d>>2]|0)+508>>
;2]&31](c[d>>2]|0,1886352244,c[j>>2]|0,g)|0;if(c[e>>2]|0){j=c[e>>2]|0;i=k;return j|
0}b=Mc(c[j>>2]|0)|0;c[h>>2]=b+(c[g>>2]|0);c[f>>2]=c[(c[d>>2]|0)+468>>
;2];g=Qc(c[j>>2]|0,32)|0;c[e>>2]=g;if(g|0){j=c[e>>2]|0;i=k;return j|0}do if((c[f>>2]|0)!=
131072)if((c[f>>2]|0)==163840){c[e>>2]=Hk(c[d>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;break
}else{c[e>>2]=3;break}else c[e>>2]=Gk(c[d>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;while(0
);a[(c[d>>2]|0)+628>>0]=1;j=c[e>>2]|0;i=k;return j|0}function Gk(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,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=i;i=i+64|0;l=A+52|0;m=A+48|0;n=A+44|0;o=A+40|0;s=A+36|
0;p=A+32|0;w=A+28|0;x=A+60|0;q=A+24|0;v=A+20|0;j=A+16|0;k=A+12|0;h=A+8|0;t=A+58|0;r=A+4|0;y=A;u=A+56|0;c[m>>2]=d;c[n
x3e;>2]=f;c[o>>2]=g;c[s>>2]=c[(c[n>>2]|0)+28>>2];c[q>>2]=0;c[v>>
;2]=0;c[w>>2]=(Pc(c[n>>2]|0,p)|0)&65535;do if(!(c[p>>2]|0)){if((c[w>>2]|0)>(e[(
c[m>>2]|0)+260+4>>1]|0|0)){c[p>>2]=3;break}c[q>>2]=hc(c[s>>2]|0,2,0,c[w>
x3e;2]|0,0,p)|0;a:do if((c[p>>2]|0)==0?(f=ee(c[n>>2]|0,c[w>>2]<<1)|0,c[p>>2]=f
,(f|0)==0):0){c[j>>2]=0;while(1){d=c[n>>2]|0;if((c[j>>2]|0)>=(c[w>>2]|0))break;f=ie
(d)|0;b[(c[q>>2]|0)+(c[j>>2]<<1)>>1]=f;c[j>>2]=(c[j>>2]|0)+1}ge(d);b
[x>>1]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[w>>2]|0))break;c[h>>2]=e[(
c[q>>2]|0)+(c[k>>2]<<1)>>1];if((c[h>>2]|0)>=258?(c[h>>2]=(c[h
x3e;>2]|0)-257,(c[h>>2]|0)>(e[x>>1]|0|0)):0)b[x>>1]=c[h>>2];c[k>>2]=(
c[k>>2]|0)+1}c[v>>2]=hc(c[s>>2]|0,4,0,e[x>>1]|0,0,p)|0;if(!(c[p>>2]|0)){b[t>
;>1]=0;while(1){if((e[t>>1]|0|0)>=(e[x>>1]|0|0)){z=28;break}k=Mc(c[n>>2]|0)|0;if((k|0)
x3e;=(c[o>>2]|0)){z=28;break}c[r>>2]=(ke(c[n>>2]|0,p)|0)&255;if(c[p>>2]|0)break;if(!((
c[r>>2]|0)<=(c[o>>2]|0)?(k=Mc(c[n>>2]|0)|0,(k|0)<=((c[o>>2]|0)-(c[r>>
;2]|0)|0)):0)){k=c[o>>2]|0;if(0>(k-(Mc(c[n>>2]|0)|0)|0))d=0;else{d=c[o>>2]|0;d=d-(Mc(c[n>
;>2]|0)|0)|0}c[r>>2]=d}k=hc(c[s>>2]|0,1,0,(c[r>>2]|0)+1|0,0,p)|0;c[(c[v>>2]|0)+((e[
t>>1]|0)<<2)>>2]=k;if(c[p>>2]|0)break;k=Rc(c[n>>2]|0,c[(c[v>>2]|0)+((
e[t>>1]|0)<<2)>>2]|0,c[r>>2]|0)|0;c[p>>2]=k;if(k|0)break;a[(c[(c[v>>
2]|0)+((e[t>>1]|0)<<2)>>2]|0)+(c[r>>2]|0)>>0]=0;b[t>>1]=(b[t>
x3e;1]|0)+1<<16>>16}b:do if((z|0)==28){c:do if((e[t>>1]|0|0)<(e[x>>1]|0|0))while(1){
if((e[t>>1]|0|0)>=(e[x>>1]|0|0))break c;z=hc(c[s>>2]|0,1,0,1,0,p)|0;c[(c[v>>2]|0)+((
e[t>>1]|0)<<2)>>2]=z;if(c[p>>2]|0)break b;a[c[(c[v>>2]|0)+((e[t>>1]|
0)<<2)>>2]>>0]=0;b[t>>1]=(b[t>>1]|0)+1<<16>>16}while(0);c[
y>>2]=(c[m>>2]|0)+628+4;b[c[y>>2]>>1]=c[w>>2];b[(c[y>>2]|0)+2>
x3e;1]=b[x>>1]|0;c[(c[y>>2]|0)+4>>2]=c[q>>2];c[(c[y>>2]|0)+8>>2]=c[v
>>2];c[l>>2]=0;z=c[l>>2]|0;i=A;return z|0}while(0);b[u>>1]=0;while(1){if((e[u>>
;1]|0|0)>=(e[x>>1]|0|0))break a;Fb(c[s>>2]|0,c[(c[v>>2]|0)+((e[u>>1]|0)<<
2)>>2]|0);c[(c[v>>2]|0)+((e[u>>1]|0)<<2)>>2]=0;b[u>>1]=(b[u>>
;1]|0)+1<<16>>16}}}while(0);Fb(c[s>>2]|0,c[v>>2]|0);c[v>>2]=0;Fb(c[s>>
;2]|0,c[q>>2]|0);c[q>>2]=0}while(0);c[l>>2]=c[p>>2];z=c[l>>2]|0;i=A;return z|0
}function Hk(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,r=0,s=0,t=0,u=0;t=i;i=i+48|0;h=t+40|0;j=t+36|0;k=t
+32|0;u=t+28|0;n=t+24|0;l=t+20|0;p=t+16|0;q=t+12|0;o=t+8|0;m=t+4|0;r=t;c[j>>2]=d;c[k>>2]=f;c[u>>2]=
g;c[n>>2]=c[(c[k>>2]|0)+28>>2];c[q>>2]=0;c[u>>2]=c[u>>2];c[p>
x3e;2]=(Pc(c[k>>2]|0,l)|0)&65535;do if(!(c[l>>2]|0)){if((c[p>>2]|0)>258?1:(c[p>>
;2]|0)>(e[(c[j>>2]|0)+260+4>>1]|0)){c[l>>2]=3;break}c[q>>2]=hc(c[n>>2]|0,
1,0,c[p>>2]|0,0,l)|0;do if((c[l>>2]|0)==0?(u=Rc(c[k>>2]|0,c[q>>2]|0,c[p>>2]|0)|
0,c[l>>2]=u,(u|0)==0):0){c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[p>>2]|0))break;c[m
x3e;>2]=(c[o>>2]|0)+(a[(c[q>>2]|0)+(c[o>>2]|0)>>0]|0);if((c[m>>2]|0)<
;0){s=10;break}if((c[m>>2]|0)>(c[p>>2]|0)){s=10;break}c[o>>2]=(c[o>>2]|0)+1}if((s|0
)==10){c[l>>2]=3;break}c[r>>2]=(c[j>>2]|0)+628+4;b[c[r>>2]>>1]=c[p>>
2];c[(c[r>>2]|0)+4>>2]=c[q>>2];c[h>>2]=0;u=c[h>>2]|0;i=t;return u|0}while(0);Fb
(c[n>>2]|0,c[q>>2]|0);c[q>>2]=0}while(0);c[h>>2]=c[l>>2];u=c[h>>2]|0
;i=t;return u|0}function Ik(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;m=i;i=i+32|0;k=m+28|0;d=m+24|0;e=m+20|0;j=m
+16|0;l=m+12|0;h=m+8|0;g=m+4|0;f=m;c[d>>2]=a;c[e>>2]=b;c[j>>2]=c[d>>2];c[h>>2]=-
1;if((c[(c[j>>2]|0)+16>>2]|0)<0){c[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}if((c[(c[j>
;>2]|0)+16>>2]|0)>>>0<4294967295)c[h>>2]=c[(c[j>>2]|0)+16>>2];c
[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[h>>2]|0)>>>0){d=11;break
}c[f>>2]=Ek(c[d>>2]|0,c[l>>2]|0,g)|0;if((c[f>>2]|0)==0?(Kr(c[e>>2]|0,c[g>
x3e;2]|0)|0)==0:0){d=9;break}c[l>>2]=(c[l>>2]|0)+1}if((d|0)==9){c[k>>2]=c[l>>2];l=c[k>
;>2]|0;i=m;return l|0}else if((d|0)==11){c[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}return 0}function Jk(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;l=i;i=i+48|0;e=l+32|0;f=l+28|0;g=l+24|0;h=l+16|0;k=l+8|0;j=l;c[e>>
;2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=Kk(c[e>>2]|0,11392,k)|0;if(c[j>>2]|0){k=c[j
x3e;>2]|0;i=l;return k|0}c[j>>2]=Kk(c[e>>2]|0,11409,h)|0;if(c[j>>2]|0){k=c[j>>2]|0;
i=l;return k|0}if((c[k>>2]|0)==1?(c[h>>2]|0)==1:0){c[c[f>>2]>>2]=c[h+4>>2];c[c
[g>>2]>>2]=c[k+4>>2];k=c[j>>2]|0;i=l;return k|0}c[j>>2]=6;k=c[j>>2]|
0;i=l;return k|0}function Kk(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;x=
i;i=i+64|0;g=x+56|0;h=x+52|0;j=x+48|0;m=x+44|0;s=x+40|0;o=x+36|0;q=x+32|0;n=x+28|0;t=x+24|0;r=x+20|0;l=x+16|0;k=x+12|0;u=x+8|0;p
=x+4|0;v=x;c[g>>2]=a;c[h>>2]=b;c[j>>2]=f;c[m>>2]=(c[g>>2]|0)+792;c[s>>
;2]=c[(c[g>>2]|0)+88>>2];c[o>>2]=0;c[c[j>>2]>>2]=0;if((d[(c[m>>2]|0)+
20>>0]|0|0)==0?(c[o>>2]=Lk(c[g>>2]|0,c[(c[g>>2]|0)+104>>2]|0)|0,c[o>>
;2]|0):0){w=c[o>>2]|0;i=x;return w|0}c[n>>2]=c[(c[m>>2]|0)+16>>2];c[q>>2]=(c[c
[m>>2]>>2]|0)+8;c[t>>2]=(c[q>>2]|0)+(c[n>>2]<<2);c[o>>2]=6
;if((c[s>>2]|0)==0|(c[h>>2]|0)==0){w=c[o>>2]|0;i=x;return w|0}c[r>>2]=cs(c[h>>
2]|0)|0;if(!((c[r>>2]|0)!=0&(c[n>>2]|0)>>>0>0)){w=c[o>>2]|0;i=x;return w|
0}while(1){c[q>>2]=(c[q>>2]|0)+2;c[l>>2]=(((d[(c[q>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[q>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[q>>2]=(c[q>
x3e;2]|0)+2;c[k>>2]=(((d[(c[q>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[q>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535;g=c[k>>2]|0;if((c[l>>2]|0)==(e[(c[s>>2]|
0)+12+2>>1]|0|0))break;c[t>>2]=(c[t>>2]|0)+(g*10|0);c[n>>2]=(c[n>>2]|0)+-1;if((
c[n>>2]|0)>>>0<=0){w=20;break}}if((w|0)==20){w=c[o>>2]|0;i=x;return w|0}c[n>>2
]=g;c[q>>2]=c[t>>2];a:while(1){if((c[n>>2]|0)>>>0<=0){w=20;break}c[u>>
;2]=(((d[(c[q>>2]|0)+4>>0]|0)&65535)<<8|((d[(c[q>>2]|0)+4+1>>0]|0)&65535
)<<0)&65535;b:do if(((c[u>>2]&16|0?(c[p>>2]=(d[c[q>>2]>>0]|0)<
x3c;24|(d[(c[q>>2]|0)+1>>0]|0)<<16|(d[(c[q>>2]|0)+2>>0]|0)<<8|(d[(c[
q>>2]|0)+3>>0]|0)<<0,c[v>>2]=(d[(c[q>>2]|0)+6>>0]|0)<<24|(
d[(c[q>>2]|0)+6+1>>0]|0)<<16|(d[(c[q>>2]|0)+6+2>>0]|0)<<8|(d[(c[q>
;>2]|0)+6+3>>0]|0)<<0,(c[p>>2]|0)>>>0<(c[(c[m>>2]|0)+12>
x3e;2]|0)>>>0):0)?(c[r>>2]|0)>>>0<((c[(c[m>>2]|0)+12>>2]|0)-(c[
p>>2]|0)|0)>>>0:0)?(Lr(c[h>>2]|0,(c[(c[m>>2]|0)+8>>2]|0)+(c[p>>
2]|0)|0,(c[(c[m>>2]|0)+12>>2]|0)-(c[p>>2]|0)|0)|0)==0:0){switch(c[u>>2]&15|0){case
2:{w=17;break a}case 3:{w=18;break a}case 1:case 0:break;default:break b}if((c[v>>2]|0)>>>0<(c[(c[
m>>2]|0)+12>>2]|0)>>>0?Ur((c[(c[m>>2]|0)+8>>2]|0)+(c[v>>2]|0)|0
,0,c[(c[m>>2]|0)+12>>2]|0)|0:0){w=16;break a}}while(0);c[q>>2]=(c[q>>2]|0)+10;c[n>
x3e;2]=(c[n>>2]|0)+-1}if((w|0)==16){c[c[j>>2]>>2]=1;c[(c[j>>2]|0)+4>>2]=(c[(c[
m>>2]|0)+8>>2]|0)+(c[v>>2]|0);c[o>>2]=0;w=c[o>>2]|0;i=x;return w|0}else if((w|
0)==17){c[c[j>>2]>>2]=2;c[(c[j>>2]|0)+4>>2]=c[v>>2];c[o>>2]=0;w=c[o
x3e;>2]|0;i=x;return w|0}else if((w|0)==18){c[c[j>>2]>>2]=3;c[(c[j>>2]|0)+4>>2]=c[v
>>2];c[o>>2]=0;w=c[o>>2]|0;i=x;return w|0}else if((w|0)==20){w=c[o>>2]|0;i=x;return w|0}
return 0}function Lk(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;r=i;i=i+48|0;s=r+44|0;f=r+40|0;g=r
+36|0;k=r+32|0;j=r+28|0;n=r+24|0;q=r+20|0;m=r+16|0;p=r+12|0;h=r+8|0;o=r+4|0;l=r;c[s>>2]=b;c[f>>2]=e;c[g>
;>2]=(c[s>>2]|0)+792;e=c[g>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12
>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[j>>2]=lk(c[s>>2]|0,1111770656,c[f>>
;2]|0,k)|0;if(!((c[j>>2]|0)!=0|(c[k>>2]|0)>>>0<8)?(s=de(c[f>>2]|0,c[k>>
;2]|0,c[g>>2]|0)|0,c[j>>2]=s,(s|0)==0):0){c[(c[g>>2]|0)+4>>2]=(c[c[g>>2]>
x3e;2]|0)+(c[k>>2]|0);c[n>>2]=c[c[g>>2]>>2];c[n>>2]=(c[n>>2]|0)+2;c[
q>>2]=(((d[(c[n>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[n>>2]|0)+-2+1>>
;0]|0)&65535)<<0)&65535;c[n>>2]=(c[n>>2]|0)+2;c[m>>2]=(((d[(c[n>>2]|
0)+-2>>0]|0)&65535)<<8|((d[(c[n>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535
;c[n>>2]=(c[n>>2]|0)+4;c[p>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n
x3e;>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>
;2]|0)+-4+3>>0]|0)<<0;if((!((c[q>>2]|0)!=1|(c[p>>2]|0)>>>0<8)?((((c[
p>>2]|0)-8|0)>>>0)/4|0)>>>0>=(c[m>>2]|0)>>>0:0)?((c[p>
;>2]|0)+1|0)>>>0<=(c[k>>2]|0)>>>0:0){c[(c[g>>2]|0)+16>>2]=
c[m>>2];c[(c[g>>2]|0)+8>>2]=(c[c[g>>2]>>2]|0)+(c[p>>2]|0);c[(c[g>
;>2]|0)+12>>2]=(c[k>>2]|0)-(c[p>>2]|0);c[h>>2]=c[(c[g>>2]|0)+16>>
;2];c[n>>2]=(c[c[g>>2]>>2]|0)+8;c[o>>2]=(c[n>>2]|0)+(c[h>>2]<
x3c;2);while(1){if((c[h>>2]|0)>>>0<=0)break;c[l>>2]=(((d[(c[n>>2]|0)+2>
x3e;0]|0)&65535)<<8|((d[(c[n>>2]|0)+2+1>>0]|0)&65535)<<0)&65535;c[o>
x3e;2]=(c[o>>2]|0)+((c[l>>2]|0)*10|0);c[n>>2]=(c[n>>2]|0)+4;c[h>>2]=(c[h>
x3e;2]|0)+-1}if((c[o>>2]|0)>>>0<=(c[(c[g>>2]|0)+8>>2]|0)>>>0){a
[(c[g>>2]|0)+20>>0]=1;s=c[j>>2]|0;i=r;return s|0}}fe(c[f>>2]|0,c[g>>2]|0);s=c[
g>>2]|0;c[s>>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[j>>2]=8;s=c[j>>2]|0;i=r;return s|0}c[j>>2]=8;s=c[j>>2]|0;i=r;return
s|0}function Mk(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;h=d+4|0;g=d;c[f>>2]=a;c[e>
;>2]=b;c[h>>2]=c[f>>2];c[g>>2]=c[(c[h>>2]|0)+12>>2];b=Ya[c[(c[g>>
;2]|0)+48>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return b|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;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;c[k>>2]=c[k>>2];c[j>>2]=c[j>>2];c[h>>2]=c[h>>
;2];c[g>>2]=c[g>>2];i=f;return 7}function Ok(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;c[h>>2]=c[h>>2];c[g>>2]=
c[g>>2];c[f>>2]=c[f>>2];i=e;return 7}function Pk(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=Qk(c[f>>2]|0,c[e>>2]|0,1751474532)|0;i=d;return b|0}function
Qk(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+16|0;f=j+12|0;k=j+8|0;g=j+4|0;h=j;c[e>>2]=a;
c[f>>2]=b;c[k>>2]=d;c[g>>2]=Wa[c[(c[e>>2]|0)+508>>2]&31](c[e>>2
]|0,c[k>>2]|0,c[f>>2]|0,0)|0;if(c[g>>2]|0){k=c[g>>2]|0;i=j;return k|0}c[h>>2]=(
c[e>>2]|0)+160;c[g>>2]=le(c[f>>2]|0,7560,c[h>>2]|0)|0;k=c[g>>2]|0;i=j;return k
|0}function Rk(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;f=l+16|0;g=l+12|0;m=l+20|0;h=l+8|0;j=l+4|0;
k=l;c[f>>2]=b;c[g>>2]=d;a[m>>0]=e;b=c[f>>2]|0;do if(a[m>>0]|0){c[k>>
2]=b+300;c[h>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1986553185,c[g>>2
]|0,0)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=l;return m|0}else{c[j>>2]=c[k>>2];break}}else{c[h
x3e;>2]=Wa[c[b+508>>2]&31](c[f>>2]|0,1751672161,c[g>>2]|0,0)|0;if(c[h>>2]|0){m
=c[h>>2]|0;i=l;return m|0}else{c[j>>2]=(c[f>>2]|0)+216;break}}while(0);m=le(c[g>>2]|0,7644
,c[j>>2]|0)|0;c[h>>2]=m;if(m|0){m=c[h>>2]|0;i=l;return m|0}c[(c[j>>2]|0)+36>>2
]=0;c[(c[j>>2]|0)+40>>2]=0;m=c[h>>2]|0;i=l;return m|0}function Sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0
,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Wa[c[(c[d>>2]|0)+508
x3e;>2]&31](c[d>>2]|0,1668112752,c[e>>2]|0,(c[d>>2]|0)+504|0)|0;if(c[f>>2]|0){
b=c[f>>2]|0;i=g;return b|0}b=de(c[e>>2]|0,c[(c[d>>2]|0)+504>>2]|0,(c[d>>2]|0)+
500|0)|0;c[f>>2]=b;if(!b){b=c[f>>2]|0;i=g;return b|0}c[(c[d>>2]|0)+504>>2]=0;b=c[f>
x3e;2]|0;i=g;return b|0}function Tk(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;k=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>
x3e;2]=a;c[f>>2]=d;c[h>>2]=(c[k>>2]|0)+260;c[g>>2]=Wa[c[(c[k>>2]|0)+508>
x3e;2]&31](c[k>>2]|0,1835104368,c[f>>2]|0,0)|0;if(c[g>>2]|0){k=c[g>>2]|0;i=j;return
k|0}k=le(c[f>>2]|0,7720,c[h>>2]|0)|0;c[g>>2]=k;if(k|0){k=c[g>>2]|0;i=j;return k|0}b[(c[
h>>2]|0)+6>>1]=0;b[(c[h>>2]|0)+8>>1]=0;b[(c[h>>2]|0)+10>>1]=0;b[(c[h
>>2]|0)+12>>1]=0;b[(c[h>>2]|0)+14>>1]=0;b[(c[h>>2]|0)+16>>1]=0;b[(c[
h>>2]|0)+18>>1]=0;b[(c[h>>2]|0)+20>>1]=0;b[(c[h>>2]|0)+22>>1]=0;b[(c
[h>>2]|0)+24>>1]=0;b[(c[h>>2]|0)+26>>1]=0;b[(c[h>>2]|0)+28>>1]=0;b[(
c[h>>2]|0)+30>>1]=0;if((c[c[h>>2]>>2]|0)<65536){k=c[g>>2]|0;i=j;return k|
0}k=le(c[f>>2]|0,7736,c[h>>2]|0)|0;c[g>>2]=k;if(k|0){k=c[g>>2]|0;i=j;return k|0}if((e[(c
[h>>2]|0)+20>>1]|0|0)<64)b[(c[h>>2]|0)+20>>1]=64;if((e[(c[h>>2]|0)+16>
;>1]|0)>>>0>65531)b[(c[h>>2]|0)+16>>1]=-5;if((e[(c[h>>2]|0)+30>>
;1]|0|0)<=100){k=c[g>>2]|0;i=j;return k|0}b[(c[h>>2]|0)+30>>1]=100;k=c[g>>2]|0;i=j;
return k|0}function Uk(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[
g>>2]=d;c[h>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1330851634,c[g>
;>2]|0,0)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=k;return d|0}c[j>>2]=(c[f>>2]|0)+368;d=le(c
[g>>2]|0,7796,c[j>>2]|0)|0;c[h>>2]=d;if(d|0){d=c[h>>2]|0;i=k;return d|0}c[(c[j>>
;2]|0)+80>>2]=0;c[(c[j>>2]|0)+84>>2]=0;b[(c[j>>2]|0)+88>>1]=0;b[(c[j>>
;2]|0)+90>>1]=0;b[(c[j>>2]|0)+92>>1]=0;b[(c[j>>2]|0)+94>>1]=0;b[(c[j>>
;2]|0)+96>>1]=0;if((e[c[j>>2]>>1]|0|0)<1){d=c[h>>2]|0;i=k;return d|0}d=le(c[g>
x3e;2]|0,7972,c[j>>2]|0)|0;c[h>>2]=d;if(d|0){d=c[h>>2]|0;i=k;return d|0}if((e[c[j>>2]>
;>1]|0|0)<2){d=c[h>>2]|0;i=k;return d|0}c[h>>2]=le(c[g>>2]|0,7988,c[j>>2]|0)|0
;d=c[h>>2]|0;i=k;return d|0}function Vk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;j=h+12|0;e=
h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[g>>2]=(c[j>>2]|0)+468;c[f>>2]=Wa[c[(c[
j>>2]|0)+508>>2]&31](c[j>>2]|0,1886352244,c[e>>2]|0,0)|0;if(c[f>>2]|0){c[
d>>2]=c[f>>2];j=c[d>>2]|0;i=h;return j|0}j=le(c[e>>2]|0,8016,c[g>>2]|0)|0;c[f
x3e;>2]=j;if(j|0){c[d>>2]=c[f>>2];j=c[d>>2]|0;i=h;return j|0}else{c[d>>2]=0;j=c[d
x3e;>2]|0;i=h;return j|0}return 0}function Wk(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,q=0,r=0;r=i;i=i+
48|0;f=r+40|0;g=r+36|0;k=r+32|0;l=r+28|0;q=r+24|0;p=r+20|0;n=r+16|0;m=r+12|0;h=r+8|0;o=r+4|0;j=r;c[f>>2]=a;c[g>
x3e;2]=d;c[l>>2]=c[(c[g>>2]|0)+28>>2];c[o>>2]=(c[f>>2]|0)+348;c[(c[o>>
;2]|0)+16>>2]=c[g>>2];c[k>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>
;2]|0,1851878757,c[g>>2]|0,p)|0;if(c[k>>2]|0){q=c[k>>2]|0;i=r;return q|0}c[q>>2]=Mc(c[g
x3e;>2]|0)|0;d=le(c[g>>2]|0,8060,c[o>>2]|0)|0;c[k>>2]=d;if(d|0){q=c[k>>2]|0;i=r;return
q|0}c[n>>2]=(c[q>>2]|0)+6+((c[(c[o>>2]|0)+4>>2]|0)*12|0);c[m>>2]=(c[q>
x3e;2]|0)+(c[p>>2]|0);if((c[n>>2]|0)>>>0>(c[m>>2]|0)>>>0){c[k
x3e;>2]=145;q=c[k>>2]|0;i=r;return q|0}c[h>>2]=c[(c[o>>2]|0)+4>>2];c[(c[o>>
;2]|0)+4>>2]=0;p=hc(c[l>>2]|0,20,0,c[h>>2]|0,0,k)|0;c[(c[o>>2]|0)+12>>2]=p;if(
c[k>>2]|0){q=c[k>>2]|0;i=r;return q|0}p=ee(c[g>>2]|0,(c[h>>2]|0)*12|0)|0;c[k>>
2]=p;if(p|0){q=c[k>>2]|0;i=r;return q|0}c[j>>2]=c[(c[o>>2]|0)+12>>2];while(1){if((c[h>
;>2]|0)>>>0<=0)break;p=le(c[g>>2]|0,8080,c[j>>2]|0)|0;c[k>>2]=p;do if((p|
0)==0?e[(c[j>>2]|0)+8>>1]|0|0:0){p=(c[j>>2]|0)+12|0;c[p>>2]=(c[p>>2]|0)+((c[q
x3e;>2]|0)+(c[(c[o>>2]|0)+8>>2]|0));if((c[(c[j>>2]|0)+12>>2]|0)>>>0
x3e;=(c[n>>2]|0)>>>0?((c[(c[j>>2]|0)+12>>2]|0)+(e[(c[j>>2]|0)+8>>
;1]|0)|0)>>>0<=(c[m>>2]|0)>>>0:0){c[j>>2]=(c[j>>2]|0)+20;break}
c[(c[j>>2]|0)+12>>2]=0;b[(c[j>>2]|0)+8>>1]=0}while(0);c[h>>2]=(c[h>>
2]|0)+-1}c[(c[o>>2]|0)+4>>2]=((c[j>>2]|0)-(c[(c[o>>2]|0)+12>>2]|0)|0)/20|0;ge(
c[g>>2]|0);b[(c[f>>2]|0)+344>>1]=c[(c[o>>2]|0)+4>>2];q=c[k>>2]|0;i=r
;return q|0}function Xk(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;j=h+16|0;f=h+12|0;g=h+8|0;e=h+4|0;d=h;c[j>>2
]=a;c[f>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+8>>2];c[g>>2]=(c[j>>2]|0)+348
;c[e>>2]=c[(c[g>>2]|0)+12>>2];c[d>>2]=c[(c[g>>2]|0)+4>>2];if(!(c[(c[
g>>2]|0)+12>>2]|0)){j=c[g>>2]|0;j=j+4|0;c[j>>2]=0;j=c[g>>2]|0;b[j>>1
]=0;j=c[g>>2]|0;j=j+8|0;c[j>>2]=0;i=h;return}while(1){a=c[f>>2]|0;if((c[d>>2]|0)>
x3e;>0<=0)break;Fb(a,c[(c[e>>2]|0)+16>>2]|0);c[(c[e>>2]|0)+16>>2]=0;b[(c[e>
;>2]|0)+8>>1]=0;c[d>>2]=(c[d>>2]|0)+-1;c[e>>2]=(c[e>>2]|0)+20}Fb(a,c[(c[g
>>2]|0)+12>>2]|0);c[(c[g>>2]|0)+12>>2]=0;j=c[g>>2]|0;j=j+4|0;c[j>>2]=
0;j=c[g>>2]|0;b[j>>1]=0;j=c[g>>2]|0;j=j+8|0;c[j>>2]=0;i=h;return}function Yk(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[f>>2]=c[f>>2];c[e
x3e;>2]=c[e>>2];i=d;return 7}function Zk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>
;2]=c[d>>2];i=b;return}function _k(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;x=i;i=i+80|0;e=x+68|0;f=x+64|0;l=x+60|0;w=x+56|0;t=x+52|0;u=x+48|0;o=x+44|0;q=x+40|0;g=x+36|0;s=x+32|0;p=x+28|0;m=
x+24|0;j=x+20|0;v=x+16|0;n=x+12|0;h=x+8|0;r=x+4|0;k=x;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;c[s>>
;2]=0;c[l>>2]=Wa[c[(c[e>>2]|0)+508>>2]&31](c[e>>2]|0,1801810542,c[f>>2]|0
,w)|0;if(c[l>>2]|0){w=c[l>>2]|0;i=x;return w|0}if((c[w>>2]|0)>>>0<4){c[l>
x3e;2]=142;w=c[l>>2]|0;i=x;return w|0}b=de(c[f>>2]|0,c[w>>2]|0,(c[e>>2]|0)+772|0)|0;c[l
x3e;>2]=b;if(b|0){w=c[l>>2]|0;i=x;return w|0}c[(c[e>>2]|0)+776>>2]=c[w>>2];c[t>
;>2]=c[(c[e>>2]|0)+772>>2];c[u>>2]=(c[t>>2]|0)+(c[w>>2]|0);c[t>>
;2]=(c[t>>2]|0)+2;c[t>>2]=(c[t>>2]|0)+2;w=(((d[(c[t>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[q>>2]=w;c[q>
;>2]=(c[q>>2]|0)>>>0>32?32:w;c[o>>2]=0;while(1){if((c[o>>2]|0)>>
;>0>=(c[q>>2]|0)>>>0)break;c[n>>2]=1<<c[o>>2];if(((c[t>>
;2]|0)+6|0)>>>0>(c[u>>2]|0)>>>0)break;c[v>>2]=c[t>>2];c[t>
x3e;2]=(c[t>>2]|0)+2;c[t>>2]=(c[t>>2]|0)+2;c[m>>2]=(((d[(c[t>>2]|0)+-2>
x3e;0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[t>
;>2]=(c[t>>2]|0)+2;c[j>>2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(
c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c[m>>2]|0)>>>0<
;=6)break;c[v>>2]=(c[v>>2]|0)+(c[m>>2]|0);if((c[v>>2]|0)>>>0>(c[u>
;>2]|0)>>>0)c[v>>2]=c[u>>2];if((c[j>>2]&-9|0)==1?((c[t>>2]|0)+8
|0)>>>0<=(c[u>>2]|0)>>>0:0){c[t>>2]=(c[t>>2]|0)+2;c[p>>
;2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&
;65535)<<0)&65535;c[t>>2]=(c[t>>2]|0)+6;if(((c[v>>2]|0)-(c[t>>2]|0)|0)<
;((c[p>>2]|0)*6|0))c[p>>2]=((c[v>>2]|0)-(c[t>>2]|0)|0)/6|0;c[g>>2]=c[g>
x3e;2]|c[n>>2];if((c[p>>2]|0)>>>0>0){c[t>>2]=(c[t>>2]|0)+4;c[r>
x3e;2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-4+3>>0]|0)<<0;c[t>
x3e;2]=(c[t>>2]|0)+2;c[h>>2]=(c[p>>2]|0)-1;while(1){if((c[h>>2]|0)>>>0<
;=0)break;c[t>>2]=(c[t>>2]|0)+4;c[k>>2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24
|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[
t>>2]|0)+-4+3>>0]|0)<<0;if((c[k>>2]|0)>>>0<=(c[r>>2]|0)>
;>>0)break;c[t>>2]=(c[t>>2]|0)+2;c[r>>2]=c[k>>2];c[h>>2]=(c[h>
x3e;2]|0)+-1}if(!(c[h>>2]|0))c[s>>2]=c[s>>2]|c[n>>2]}}c[t>>2]=c[v>>2
];c[o>>2]=(c[o>>2]|0)+1}c[(c[e>>2]|0)+780>>2]=c[o>>2];c[(c[e>>2]|0)+
784>>2]=c[g>>2];c[(c[e>>2]|0)+788>>2]=c[s>>2];w=c[l>>2]|0;i=x;return
w|0}function $k(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;n=i;i=i+32|0;f=n+24|0;h=n+20|0;j=n+16|0;g=n+12|0;l=n+8|0;m
=n+4|0;k=n;c[f>>2]=a;c[h>>2]=d;c[g>>2]=c[(c[h>>2]|0)+28>>2];c[j>>2]=
Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1734439792,c[h>>2]|0,0)|0;if(c[j>>
2]|0){m=c[j>>2]|0;i=n;return m|0}d=ee(c[h>>2]|0,4)|0;c[j>>2]=d;if(d|0){m=c[j>>2]|0;i=n;return
m|0}a=ie(c[h>>2]|0)|0;b[(c[f>>2]|0)+548>>1]=a;a=ie(c[h>>2]|0)|0;b[(c[f>>2]|0)+
548+2>>1]=a;ge(c[h>>2]|0);a=(c[f>>2]|0)+548+2|0;if((e[(c[f>>2]|0)+548>>1]|0|0)
x3e;=2){b[a>>1]=0;c[j>>2]=8;m=c[j>>2]|0;i=n;return m|0}c[m>>2]=e[a>>1];c[k>
;>2]=hc(c[g>>2]|0,4,0,c[m>>2]|0,0,j)|0;if(c[j>>2]|0){m=c[j>>2]|0;i=n;return m|0}g=ee
(c[h>>2]|0,c[m>>2]<<2)|0;c[j>>2]=g;if(g|0){m=c[j>>2]|0;i=n;return m|0}c[(c[f
x3e;>2]|0)+548+4>>2]=c[k>>2];c[l>>2]=0;while(1){a=c[h>>2]|0;if((c[l>>2]|0
)>>>0>=(c[m>>2]|0)>>>0)break;g=ie(a)|0;b[(c[k>>2]|0)+(c[l>>2]
x3c;<2)>>1]=g;g=ie(c[h>>2]|0)|0;b[(c[k>>2]|0)+(c[l>>2]<<2)+2>>1
]=g;c[l>>2]=(c[l>>2]|0)+1}ge(a);m=c[j>>2]|0;i=n;return m|0}function al(a,b){a=a|0;b=b|0;var d=0,e=
0,f=0,g=0,h=0;g=i;i=i+16|0;h=g+12|0;d=g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[d>>2]=b;c[f>>2]=(c[h>>
;2]|0)+556;c[e>>2]=Wa[c[(c[h>>2]|0)+508>>2]&31](c[h>>2]|0,1346587732,c[d>>
;2]|0,0)|0;if(c[e>>2]|0){h=c[e>>2]|0;i=g;return h|0}c[e>>2]=le(c[d>>2]|0,8108,c[f>
x3e;2]|0)|0;h=c[e>>2]|0;i=g;return h|0}function bl(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>
x3e;2]=a;c[e>>2]=b;b=Qk(c[f>>2]|0,c[e>>2]|0,1651008868)|0;i=d;return b|0}function cl(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;j=f+32|0;l=f+28|0;k=f+24|0;g=f+20|0;h=f;c[j>>2]=a;c[l>
;>2]=b;c[k>>2]=d;c[g>>2]=e;c[h>>2]=0;c[h+4>>2]=c[l>>2];c[h+8>>2
]=c[k>>2];c[h+12>>2]=0;c[h+16>>2]=0;c[c[g>>2]>>2]=2147483647;d=dl(c[j>>
;2]|0,h,c[g>>2]|0)|0;i=f;return d|0}function dl(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;b=Ad(c[h>>2]|0,c[g>>2]|0,0,c[f>>
;2]|0)|0;i=e;return b|0}function el(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[f>>2]=c[f>>2];c[e>>2]=c[e>>2];i=d;return 7}function fl(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;r=i;i=i+48|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0;m=r+16|0;n=
r+12|0;o=r+8|0;p=r+4|0;q=r;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c
[o>>2]=g;if((c[(c[j>>2]|0)+616>>2]|0?(c[(c[j>>2]|0)+612>>2]|0)>>>
;0>(c[l>>2]|0)>>>0:0)?(c[q>>2]=(c[(c[j>>2]|0)+616>>2]|0)+((c[l>
x3e;2]|0)*48|0),c[p>>2]=gl(c[k>>2]|0,c[q>>2]|0,c[m>>2]|0,c[o>>2]|0)|0,(c[p>
;>2]|0)==0):0){c[c[n>>2]>>2]=c[q>>2];c[h>>2]=0;d=c[h>>2]|0;i=r;return d|0
}c[c[m>>2]>>2]=0;c[c[n>>2]>>2]=0;c[c[o>>2]>>2]=0;c[h>>2]=6
;d=c[h>>2]|0;i=r;return d|0}function gl(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;r
=i;i=i+48|0;h=r+28|0;j=r+24|0;k=r+20|0;l=r+16|0;m=r+12|0;p=r+8|0;q=r+4|0;n=r+32|0;o=r;c[j>>2]=a;c[k>>2]=d;c[
l>>2]=f;c[m>>2]=g;a:do if(((c[j>>2]|0)>>>0>=(e[(c[k>>2]|0)+40>
x3e;1]|0)>>>0?(c[j>>2]|0)>>>0<=(e[(c[k>>2]|0)+42>>1]|0)>
x3e;>0:0)?(c[p>>2]=c[(c[k>>2]|0)+4>>2],c[q>>2]=(c[p>>2]|0)+((c[c[k>
x3e;2]>>2]|0)*40|0),c[p>>2]|0):0){while(1){if((c[p>>2]|0)>>>0>=(c[q>>
;2]|0)>>>0)break a;if((c[j>>2]|0)>>>0>=(e[c[p>>2]>>1]|0)>
x3e;>0?(c[j>>2]|0)>>>0<=(e[(c[p>>2]|0)+2>>1]|0)>>>0:0)break
;c[p>>2]=(c[p>>2]|0)+40}b[n>>1]=(c[j>>2]|0)-(e[c[p>>2]>>1]|0);b:do switch
(e[(c[p>>2]|0)+4>>1]|0|0){case 3:case 1:{c[c[m>>2]>>2]=c[(c[(c[p>>2]|0)+28>
;>2]|0)+((e[n>>1]|0)<<2)>>2];break}case 2:{d=(c[(c[p>>2]|0)+8>>2]|0)+(_(c
[(c[p>>2]|0)+12>>2]|0,e[n>>1]|0)|0)|0;c[c[m>>2]>>2]=d;break}case 5:case 4:{c[o
>>2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[(c[p>>2]|0)+24>>2]|0)>
x3e;>0)break a;if((e[(c[(c[p>>2]|0)+32>>2]|0)+(c[o>>2]<<1)>>1]|0|0)==(c[j
>>2]|0))break;c[o>>2]=(c[o>>2]|0)+1}if((e[(c[p>>2]|0)+4>>1]|0|0)==4){c[c[m>
;>2]>>2]=c[(c[(c[p>>2]|0)+28>>2]|0)+(c[o>>2]<<2)>>2];break b}else
{d=(c[(c[p>>2]|0)+8>>2]|0)+(_(c[o>>2]|0,c[(c[p>>2]|0)+12>>2]|0)|0)|0;c[c[m>
;>2]>>2]=d;break b}}default:break a}while(0);c[c[l>>2]>>2]=c[p>>2];c[h>>2
]=0;d=c[h>>2]|0;i=r;return d|0}while(0);c[c[l>>2]>>2]=0;c[c[m>>2]>>2]=0;c[h>
;>2]=6;d=c[h>>2]|0;i=r;return d|0}function hl(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;n=i;i=i+32
|0;g=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;l=n;m=n+20|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=f;c[l>>2]=
0;switch(e[(c[j>>2]|0)+6>>1]|0|0){case 8:case 2:case 1:{b=le(c[h>>2]|0,8172,m)|0;c[l>>2]=
b;if(!b){a[c[k>>2]>>0]=a[m>>0]|0;a[(c[k>>2]|0)+1>>0]=a[m+1>>0]|0;a[(
c[k>>2]|0)+2>>0]=a[m+2>>0]|0;a[(c[k>>2]|0)+3>>0]=a[m+3>>0]|0;a[(c[k
x3e;>2]|0)+4>>0]=a[m+4>>0]|0;a[(c[k>>2]|0)+5>>0]=0;a[(c[k>>2]|0)+6>
x3e;0]=0;a[(c[k>>2]|0)+7>>0]=0}break}case 9:case 7:case 6:{c[l>>2]=le(c[h>>2]|0,8200,c[k
>>2]|0)|0;break}default:{if((e[(c[j>>2]|0)+4>>1]|0|0)!=2?(e[(c[j>>2]|0)+4>>1]|
0|0)!=5:0){c[g>>2]=3;b=c[g>>2]|0;i=n;return b|0}b=c[k>>2]|0;m=(c[j>>2]|0)+16|0;a[b>
x3e;0]=a[m>>0]|0;a[b+1>>0]=a[m+1>>0]|0;a[b+2>>0]=a[m+2>>0]|0;a[b+3>>
0]=a[m+3>>0]|0;a[b+4>>0]=a[m+4>>0]|0;a[b+5>>0]=a[m+5>>0]|0;a[b+6>>0]=
a[m+6>>0]|0;a[b+7>>0]=a[m+7>>0]|0}}c[g>>2]=c[l>>2];b=c[g>>2]|0;i=n;return
b|0}function il(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;w=i;i=i+64|0;l=w+48|0;x=w+44|0;y=w+40|0;m=w+36|0;n=w+32|0;o=w+28|0;p=w+24|0;s=w+20|0;r=w+16|0;t=w+12|0;v=w+8|0;u=w+4|0;q=w
;c[l>>2]=b;c[x>>2]=e;c[y>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[p>
;>2]=k;c[s>>2]=fl(c[l>>2]|0,c[y>>2]|0,c[x>>2]|0,u,v,t)|0;if(c[s>>2]|0){y=
c[s>>2]|0;i=w;return y|0}c[s>>2]=Wa[c[(c[l>>2]|0)+508>>2]&31](c[l>>2]|0,1161970772
,c[n>>2]|0,0)|0;if(c[s>>2]|0)c[s>>2]=Wa[c[(c[l>>2]|0)+508>>2]&31](c[l>
;>2]|0,1650745716,c[n>>2]|0,0)|0;if(c[s>>2]|0){y=c[s>>2]|0;i=w;return y|0}c[r>>2]=Mc
(c[n>>2]|0)|0;c[s>>2]=jl(c[v>>2]|0,c[u>>2]|0,c[r>>2]|0,c[t>>2]|0,c[(
c[l>>2]|0)+84>>2]|0,0,0,c[n>>2]|0,c[p>>2]|0,0)|0;if(c[s>>2]|0){y=c[s>>
;2]|0;i=w;return y|0}if(a[(c[v>>2]|0)+47>>0]&1|0){c[q>>2]=(a[(c[v>>2]|0)+16>
x3e;0]|0)-(a[(c[v>>2]|0)+16+1>>0]|0);a[(c[p>>2]|0)+5>>0]=(0-(d[(c[p>>2]|0)+1
x3e;>0]|0)|0)/2|0;a[(c[p>>2]|0)+6>>0]=((c[q>>2]|0)-(d[c[p>>2]>>0]|0)|0)/2
|0;a[(c[p>>2]|0)+7>>0]=((c[q>>2]|0)*12|0)/10|0}if(!(c[m>>2]&64)){y=c[s>>2
]|0;i=w;return y|0}ml(c[o>>2]|0,c[p>>2]|0);y=c[s>>2]|0;i=w;return y|0}function jl(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;L=i;i=i+96|0;u=L+72|0;v=L+68|0;q=L+64|0;x=L+60|0;M=L+56|0;y=L+52|0;z=L+48|0;A=L+44|0;B=L+40|0;r
=L+36|0;w=L+32|0;J=L+28|0;s=L+24|0;I=L+20|0;t=L+16|0;D=L+12|0;C=L+8|0;K=L+78|0;E=L+76|0;H=L+4|0;F=L+80|0;G=L;c[v>>2]=f
;c[q>>2]=g;c[x>>2]=h;c[M>>2]=j;c[y>>2]=k;c[z>>2]=l;c[A>>2]=m;c[B>
;>2]=n;c[r>>2]=o;c[w>>2]=p;c[J>>2]=c[(c[B>>2]|0)+28>>2];c[s>>2]=(
c[y>>2]|0)+76;m=Kc(c[B>>2]|0,(c[x>>2]|0)+(c[M>>2]|0)|0)|0;c[I>>2]=m;a:do if((m
|0)==0?(c[I>>2]=hl(c[B>>2]|0,c[q>>2]|0,c[r>>2]|0)|0,(c[I>>2]|0)==0):0){if(!(c[
w>>2]|0)){c[(c[s>>2]|0)+4>>2]=d[(c[r>>2]|0)+1>>0];c[c[s>>2]>>
;2]=d[c[r>>2]>>0];switch(d[(c[v>>2]|0)+46>>0]|0){case 1:{a[(c[s>>2]|0)+18>
;>0]=1;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|0)+4>>2]|0)+7>>3;break}case 2:{a[(
c[s>>2]|0)+18>>0]=3;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|0)+4>>2]|0)+3>
;>2;break}case 4:{a[(c[s>>2]|0)+18>>0]=4;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|
0)+4>>2]|0)+1>>1;break}case 8:{a[(c[s>>2]|0)+18>>0]=2;c[(c[s>>2]|0)+8>>
;2]=c[(c[s>>2]|0)+4>>2];break}default:{c[u>>2]=3;M=c[u>>2]|0;i=L;return M|0}}c[t>
x3e;2]=_(c[c[s>>2]>>2]|0,c[(c[s>>2]|0)+8>>2]|0)|0;if(!(c[t>>2]|0))break;c[I>
;>2]=xc(c[y>>2]|0,c[t>>2]|0)|0;if(c[I>>2]|0)break}switch(e[(c[q>>2]|0)+6>>
;1]|0){case 7:case 6:case 5:case 2:case 1:{c[u>>2]=kl(c[s>>2]|0,c[z>>2]|0,c[A>>2]|0,d[(c
[v>>2]|0)+46>>0]|0,b[(c[q>>2]|0)+6>>1]|0,c[r>>2]|0,c[B>>2]|0)|0;M=c[
u>>2]|0;i=L;return M|0}case 8:{M=Qc(c[B>>2]|0,1)|0;c[I>>2]=M;if(M|0){c[I>>2]=83;break a}
break}case 9:break;default:{c[u>>2]=3;M=c[u>>2]|0;i=L;return M|0}}b[K>>1]=Pc(c[B>>2]|0,I
)|0;if((c[I>>2]|0)==0?(c[D>>2]=hc(c[J>>2]|0,4,0,e[K>>1]|0,0,I)|0,(c[I>>2]|0)==
0):0){b[E>>1]=b[K>>1]|0;M=ee(c[B>>2]|0,e[K>>1]<<2)|0;c[I>>2]=M;b:do
if(!M){c[C>>2]=c[D>>2];while(1){q=c[B>>2]|0;if((e[E>>1]|0)<=0)break;M=ie(q)|0;b[c[C
>>2]>>1]=M;M=he(c[B>>2]|0)|0;a[(c[C>>2]|0)+2>>0]=M;M=he(c[B>>2]|0)|0
;a[(c[C>>2]|0)+3>>0]=M;b[E>>1]=(b[E>>1]|0)+-1<<16>>16;c[C>>
;2]=(c[C>>2]|0)+4}ge(q);b[E>>1]=b[K>>1]|0;c[C>>2]=c[D>>2];while(1){if((e[E>
;>1]|0)<=0)break b;c[I>>2]=gl(e[c[C>>2]>>1]|0,c[v>>2]|0,H,G)|0;if(c[I>>
;2]|0)break b;c[I>>2]=jl(c[v>>2]|0,c[H>>2]|0,c[x>>2]|0,c[G>>2]|0,c[y>>
;2]|0,(c[z>>2]|0)+(a[(c[C>>2]|0)+2>>0]|0)|0,(c[A>>2]|0)+(a[(c[C>>2]|0)+3>
x3e;0]|0)|0,c[B>>2]|0,F,(c[w>>2]|0)+1|0)|0;if(c[I>>2]|0)break b;b[E>>1]=(b[E>>
1]|0)+-1<<16>>16;c[C>>2]=(c[C>>2]|0)+4}}while(0);Fb(c[J>>2]|0,c[D>>2
]|0);c[D>>2]=0}}while(0);c[u>>2]=c[I>>2];M=c[u>>2]|0;i=L;return M|0}function kl(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;C=i;i=i+64|
0;n=C+48|0;o=C+44|0;p=C+40|0;q=C+36|0;r=C+32|0;s=C+52|0;t=C+28|0;u=C+24|0;v=C+20|0;y=C+16|0;w=C+12|0;x=C+8|0;z=C+4|0;B=C+54|0;A=
C;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;c[r>>2]=j;b[s>>1]=k;c[t>>2]=l;c[u>
;>2]=m;if(((c[p>>2]|0)>=0?!((c[q>>2]|0)<0?1:((c[p>>2]|0)+(d[(c[t>>2]|0)+1
>>0]|0)|0)>(c[(c[o>>2]|0)+4>>2]|0)):0)?((c[q>>2]|0)+(d[c[t>>2]>>
;0]|0)|0)<=(c[c[o>>2]>>2]|0):0){c[y>>2]=d[(c[t>>2]|0)+1>>0];c[w>>
;2]=d[c[t>>2]>>0];c[z>>2]=_(c[r>>2]|0,c[y>>2]|0)|0;a[B>>0]=0;switch(
e[s>>1]|0|0){case 6:case 1:{switch(c[r>>2]|0){case 1:{c[A>>2]=(c[y>>2]|0)+7>>3
;break}case 2:{c[A>>2]=(c[y>>2]|0)+3>>2;break}case 4:{c[A>>2]=(c[y>>2]|0)+1>
;>1;break}default:c[A>>2]=c[y>>2]}c[x>>2]=_(c[w>>2]|0,c[A>>2]|0)|0;a[B>
;>0]=1;break}case 7:case 5:case 2:{c[z>>2]=_(c[y>>2]|0,c[r>>2]|0)|0;c[x>>2]=(_(c[w
x3e;>2]|0,c[z>>2]|0)|0)+7>>3;break}default:{c[n>>2]=3;h=c[n>>2]|0;i=C;return h|0}}h
=ee(c[u>>2]|0,c[x>>2]|0)|0;c[v>>2]=h;if(!h){h=_(c[p>>2]|0,c[r>>2]|0)|0;ll(c[o
x3e;>2]|0,c[(c[u>>2]|0)+32>>2]|0,c[z>>2]|0,a[B>>0]|0,h,c[q>>2]|0,d[c[t>
;>2]>>0]|0);ge(c[u>>2]|0)}}else c[v>>2]=6;c[n>>2]=c[v>>2];h=c[n>>
;2]|0;i=C;return h|0}function ll(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,D=0,E=0,F=0;F=i;i=i+64|0;n=F+44|0;q=F+40|0;r=F+36|0;s=F+54|0;t=F+32|0;o=F+28|0;p=F+24|0;y=F+20|0;z
=F+16|0;x=F+12|0;u=F+48|0;A=F+8|0;w=F+4|0;v=F;B=F+53|0;C=F+52|0;D=F+51|0;E=F+50|0;c[n>>2]=f;c[q>>2]=g;c[r>
;>2]=h;a[s>>0]=j;c[t>>2]=k;c[o>>2]=l;c[p>>2]=m;c[z>>2]=c[(c[n>>
2]|0)+8>>2];c[y>>2]=c[(c[n>>2]|0)+12>>2];if((c[z>>2]|0)<0){l=_(c[z>
x3e;2]|0,(c[c[n>>2]>>2]|0)-1|0)|0;c[y>>2]=(c[y>>2]|0)+(0-l)}l=(c[t>>2]>
x3e;3)+(_(c[o>>2]|0,c[z>>2]|0)|0)|0;c[y>>2]=(c[y>>2]|0)+l;b[u>>1]=0;c[A>
x3e;2]=0;c[x>>2]=c[p>>2];while(1){if((c[x>>2]|0)<=0)break;c[w>>2]=c[y>>2];
c[v>>2]=c[r>>2];a[B>>0]=c[t>>2]&7;a[C>>0]=8-(d[B>>0]|0);if((c[v
>>2]|0)>=8){c[v>>2]=(c[v>>2]|0)-8;do{if((c[A>>2]|0)>>>0<8){l=c[
q>>2]|0;c[q>>2]=l+1;b[u>>1]=e[u>>1]|(d[l>>0]&65535)<<8-(c[A>
;>2]|0)&65535;c[A>>2]=(c[A>>2]|0)+8}a[D>>0]=e[u>>1]>>8;n=d[D>
x3e;0]|0;if(a[B>>0]|0){l=c[w>>2]|0;a[l>>0]=d[l>>0]|n>>d[B>>0]&255
;l=(c[w>>2]|0)+1|0;a[l>>0]=d[l>>0]|d[D>>0]<<d[C>>0]&255}else{l=
c[w>>2]|0;a[l>>0]=d[l>>0]|n}c[w>>2]=(c[w>>2]|0)+1;b[u>>1]=e[u>
x3e;1]<<8;c[A>>2]=(c[A>>2]|0)-8;c[v>>2]=(c[v>>2]|0)-8}while((c[v>>2]|
0)>=0);c[v>>2]=(c[v>>2]|0)+8}if((c[v>>2]|0)>0){if((c[A>>2]|0)<(c[v>
x3e;2]|0)){l=c[q>>2]|0;c[q>>2]=l+1;b[u>>1]=e[u>>1]|(d[l>>0]&65535)<
x3c;8-(c[A>>2]|0)&65535;c[A>>2]=(c[A>>2]|0)+8}a[E>>0]=e[u>>1]>>
8&255&~(255>>c[v>>2]);l=c[w>>2]|0;a[l>>0]=d[l>>0]|d[E>>0]
x3e;>d[B>>0]&255;if((c[v>>2]|0)>(d[C>>0]|0)){l=(c[w>>2]|0)+1|0;a[l>
x3e;0]=d[l>>0]|d[E>>0]<<d[C>>0]&255}b[u>>1]=e[u>>1]<<
c[v>>2];c[A>>2]=(c[A>>2]|0)-(c[v>>2]|0)}if(a[s>>0]|0){b[u>>1]=0;c[A
x3e;>2]=0}c[y>>2]=(c[y>>2]|0)+(c[z>>2]|0);c[x>>2]=(c[x>>2]|0)+-1}i=F;return
}function ml(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;z=i;i=i+80|0;l
=z+60|0;m=z+56|0;w=z+52|0;f=z+48|0;r=z+44|0;q=z+40|0;g=z+36|0;j=z+32|0;h=z+28|0;k=z+24|0;o=z+20|0;t=z+16|0;y=z+12|0;u=z+66|0;n=z
+8|0;x=z+65|0;v=z+4|0;p=z;s=z+64|0;c[l>>2]=b;c[m>>2]=e;c[q>>2]=c[(c[l>>2]|0)+12>>
;2];c[w>>2]=c[c[l>>2]>>2];c[r>>2]=c[(c[l>>2]|0)+8>>2];c[f>>
;2]=0;a:while(1){if((c[f>>2]|0)>=(c[w>>2]|0))break;c[g>>2]=c[q>>2];c[j>>2
]=(c[q>>2]|0)+(c[r>>2]|0);while(1){if((c[g>>2]|0)>>>0>=(c[j>>2]|0)
x3e;>>0)break;if(a[c[g>>2]>>0]|0)break a;c[g>>2]=(c[g>>2]|0)+1}c[q>>
2]=c[j>>2];c[f>>2]=(c[f>>2]|0)+1}if((c[f>>2]|0)>=(c[w>>2]|0)){c[(c[l>
;>2]|0)+4>>2]=0;c[c[l>>2]>>2]=0;c[(c[l>>2]|0)+8>>2]=0;a[(c[l>>2
]|0)+18>>0]=1;i=z;return}if((c[f>>2]|0)>0){c[q>>2]=c[(c[l>>2]|0)+12>>2];e
=(c[q>>2]|0)+(_(c[f>>2]|0,c[r>>2]|0)|0)|0;Ts(c[q>>2]|0,e|0,_((c[w>>2]|0)-(c[f
x3e;>2]|0)|0,c[r>>2]|0)|0)|0;a[c[m>>2]>>0]=(d[c[m>>2]>>0]|0)-(c[f>
x3e;2]|0);a[(c[m>>2]|0)+3>>0]=(a[(c[m>>2]|0)+3>>0]|0)-(c[f>>2]|0);a[(c[m>
x3e;2]|0)+6>>0]=(a[(c[m>>2]|0)+6>>0]|0)-(c[f>>2]|0);e=c[l>>2]|0;c[e>>
;2]=(c[e>>2]|0)-(c[f>>2]|0);c[w>>2]=(c[w>>2]|0)-(c[f>>2]|0)}c[q>>2]=(
c[(c[l>>2]|0)+12>>2]|0)+(_((c[w>>2]|0)-1|0,c[r>>2]|0)|0);c[f>>2]=0;b:while(1){
if((c[f>>2]|0)>=(c[w>>2]|0))break;c[h>>2]=c[q>>2];c[k>>2]=(c[q>>
;2]|0)+(c[r>>2]|0);while(1){if((c[h>>2]|0)>>>0>=(c[k>>2]|0)>>>0
)break;if(a[c[h>>2]>>0]|0)break b;c[h>>2]=(c[h>>2]|0)+1}c[q>>2]=(c[q>>
;2]|0)+(0-(c[r>>2]|0));c[f>>2]=(c[f>>2]|0)+1}if((c[f>>2]|0)>0){a[c[m>>2]
x3e;>0]=(d[c[m>>2]>>0]|0)-(c[f>>2]|0);c[w>>2]=(c[w>>2]|0)-(c[f>>
;2]|0);e=c[l>>2]|0;c[e>>2]=(c[e>>2]|0)-(c[f>>2]|0)}c:do{c[q>>2]=c[(c[l>
x3e;2]|0)+12>>2];c[o>>2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);while(1){if((c
[q>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(d[c[q>>2]>>0]
x26;128|0)break c;c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}c[q>>2]=c[(c[l>>2]|0)+12>
;>2];c[o>>2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);while(1){f=(c[l>>2]|0
)+4|0;g=c[f>>2]|0;if((c[q>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[y
>>2]=g;c[n>>2]=c[q>>2];a[u>>0]=d[c[n>>2]>>0]<<1;c[t>
x3e;2]=8;while(1){if((c[t>>2]|0)>=(c[y>>2]|0))break;a[x>>0]=a[(c[n>>2]|0)+1>
x3e;0]|0;a[c[n>>2]>>0]=d[u>>0]|d[x>>0]>>7;a[u>>0]=d[x>>0]
x3c;<1;c[n>>2]=(c[n>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+8}a[c[n>>2]>>0
]=a[u>>0]|0;c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}c[f>>2]=g+-1;e=(c[m>>2]|
0)+2|0;a[e>>0]=(a[e>>0]|0)+1<<24>>24;e=(c[m>>2]|0)+5|0;a[e>>0]=(a[e
x3e;>0]|0)+1<<24>>24;e=(c[m>>2]|0)+1|0;a[e>>0]=(a[e>>0]|0)+-1<<
24>>24}while((c[(c[l>>2]|0)+4>>2]|0)>0);d:while(1){c[v>>2]=(c[(c[l>>2]|0)+
4>>2]|0)-1;c[q>>2]=(c[(c[l>>2]|0)+12>>2]|0)+(c[v>>2]>>3);c[p>
x3e;2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);a[s>>0]=128>>(c[v>>2]
x26;7);while(1){if((c[q>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;if(d[c[q>
x3e;2]>>0]&d[s>>0]|0){f=37;break d}c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}y=(c[l
>>2]|0)+4|0;c[y>>2]=(c[y>>2]|0)+-1;y=(c[m>>2]|0)+1|0;a[y>>0]=(a[y>>0
]|0)+-1<<24>>24;if((c[(c[l>>2]|0)+4>>2]|0)<=0){f=37;break}}if((f|0)==37){i=z;return
}}function nl(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return}function
ol(d){d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;f=n+20|0;j=n+16|0;l=n+12|0;g=n+8|0;m=n+4|0;k=n+24|0;h=n;c[f>
x3e;2]=d;c[j>>2]=c[(c[f>>2]|0)+100>>2];c[l>>2]=(c[f>>2]|0)+628;if(!(a[c[l>
;>2]>>0]|0)){m=c[l>>2]|0;a[m>>0]=0;i=n;return}c[g>>2]=c[(c[f>>2]|0)+468
x3e;>2];if((c[g>>2]|0)!=131072){if((c[g>>2]|0)!=163840){m=c[l>>2]|0;a[m>>0]=0;i=n;return
}c[h>>2]=(c[l>>2]|0)+4;Fb(c[j>>2]|0,c[(c[h>>2]|0)+4>>2]|0);c[(c[h>>2
]|0)+4>>2]=0;b[c[h>>2]>>1]=0;m=c[l>>2]|0;a[m>>0]=0;i=n;return}c[m>>2
]=(c[l>>2]|0)+4;Fb(c[j>>2]|0,c[(c[m>>2]|0)+4>>2]|0);c[(c[m>>2]|0)+4>>
;2]=0;b[c[m>>2]>>1]=0;b[k>>1]=0;while(1){f=c[j>>2]|0;if((e[k>>1]|0)>=(e[(
c[m>>2]|0)+2>>1]|0))break;Fb(f,c[(c[(c[m>>2]|0)+8>>2]|0)+(e[k>>1]<<2
)>>2]|0);c[(c[(c[m>>2]|0)+8>>2]|0)+(e[k>>1]<<2)>>2]=0;b[k>>
;1]=(b[k>>1]|0)+1<<16>>16}Fb(f,c[(c[m>>2]|0)+8>>2]|0);c[(c[m>>2]|0)+
8>>2]=0;b[(c[m>>2]|0)+2>>1]=0;m=c[l>>2]|0;a[m>>0]=0;i=n;return}function pl(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;c[h>>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>>2];i=e;return 7}function
ql(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[f>>2]=c[f>
;>2];c[e>>2]=c[e>>2];i=d;return 0}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,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=i;i=i+96|0;g=E+88|0;h=E+84|0;j=E+80|0;D=E+76|0;l=E+72|0;s=
E+68|0;y=E+64|0;z=E+60|0;k=E+56|0;w=E+52|0;C=E+48|0;r=E+44|0;n=E+40|0;x=E+36|0;B=E+32|0;p=E+28|0;v=E+24|0;t=E+20|0;u=E+16|0;A=E+
12|0;o=E+8|0;m=E+4|0;q=E;c[g>>2]=b;c[h>>2]=e;c[j>>2]=f;c[D>>2]=0;c[s>>2]=1;c[y
>>2]=c[(c[g>>2]|0)+772>>2];c[z>>2]=(c[y>>2]|0)+(c[(c[g>>2]|0)+776>
;>2]|0);c[y>>2]=(c[y>>2]|0)+4;c[s>>2]=1;c[l>>2]=c[(c[g>>2]|0)+780>
x3e;2];while(1){if((c[l>>2]|0)>>>0<=0){b=28;break}if(((c[y>>2]|0)+6|0)>>>
0>(c[z>>2]|0)>>>0){b=28;break}c[k>>2]=c[y>>2];c[w>>2]=c[k>>
;2];c[y>>2]=(c[y>>2]|0)+2;c[C>>2]=((d[(c[y>>2]|0)+-2>>0]&65535)<<
;8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[y>>2]=(c[y>>2]|0)+2;c[
r>>2]=((d[(c[y>>2]|0)+-2>>0]&65535)<<8|(d[(c[y>>2]|0)+-2+1>>0]
x26;65535)<<0)&65535;c[y>>2]=(c[y>>2]|0)+2;c[n>>2]=((d[(c[y>>2]|0)+-2>
;>0]&65535)<<8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[B>>
;2]=0;c[C>>2]=c[C>>2];c[w>>2]=(c[k>>2]|0)+(c[r>>2]|0);if((c[w>>2]|0)
x3e;>>0>(c[z>>2]|0)>>>0)c[w>>2]=c[z>>2];a:do if(c[(c[g>>2]|
0)+784>>2]&c[s>>2]|0?((c[y>>2]|0)+8|0)>>>0<=(c[w>>2]|0)>
x3e;>0:0){c[y>>2]=(c[y>>2]|0)+2;c[x>>2]=((d[(c[y>>2]|0)+-2>>0]&65535
)<<8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[y>>2]=(c[y>>
;2]|0)+6;if(((c[w>>2]|0)-(c[y>>2]|0)|0)<((c[x>>2]|0)*6|0))c[x>>2]=((c[w>>
2]|0)-(c[y>>2]|0)|0)/6|0;if(!((c[n>>2]|0)>>>8)){c[p>>2]=c[h>>2]<<
;16|c[j>>2];if(c[(c[g>>2]|0)+788>>2]&c[s>>2]|0){c[v>>2]=0;c[t>>
2]=c[x>>2];while(1){if((c[v>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a
;c[u>>2]=((c[v>>2]|0)+(c[t>>2]|0)|0)>>>1;c[A>>2]=(c[y>>2]|0)+((
c[u>>2]|0)*6|0);c[A>>2]=(c[A>>2]|0)+4;c[o>>2]=d[(c[A>>2]|0)+-4>>0]
x3c;<24|d[(c[A>>2]|0)+-4+1>>0]<<16|d[(c[A>>2]|0)+-4+2>>0]<<8|d[(
c[A>>2]|0)+-4+3>>0]<<0;if((c[o>>2]|0)==(c[p>>2]|0))break;b=c[u>>2]|0
;if((c[o>>2]|0)>>>0<(c[p>>2]|0)>>>0){c[v>>2]=b+1;continue}else{
c[t>>2]=b;continue}}c[B>>2]=((a[c[A>>2]>>0]<<16>>16<<8|d[(
c[A>>2]|0)+1>>0]<<0)&65535)<<16>>16}else{c[m>>2]=c[x>>
;2];while(1){if((c[m>>2]|0)>>>0<=0)break a;c[y>>2]=(c[y>>2]|0)+4;c[q>>
;2]=d[(c[y>>2]|0)+-4>>0]<<24|d[(c[y>>2]|0)+-4+1>>0]<<16|d[(c[y>
x3e;2]|0)+-4+2>>0]<<8|d[(c[y>>2]|0)+-4+3>>0]<<0;b=c[y>>2]|0;if((c[q
x3e;>2]|0)==(c[p>>2]|0))break;c[y>>2]=b+2;c[m>>2]=(c[m>>2]|0)+-1}c[B>>2]=((
a[b>>0]<<16>>16<<8|d[(c[y>>2]|0)+1>>0]<<0)&65535)<
;<16>>16}b=c[B>>2]|0;if(c[n>>2]&8|0){c[D>>2]=b;break}else{c[D>>2]=(c
[D>>2]|0)+b;break}}}while(0);c[y>>2]=c[w>>2];c[l>>2]=(c[l>>2]|0)+-1;c[s>
x3e;2]=c[s>>2]<<1}if((b|0)==28){i=E;return c[D>>2]|0}return 0}function sl(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;n=i;i=i+48|0;f=n+36|0;h=n+32|0;m=n+16|0;k=n+12|0;g=n+8|0;j=n+4|0;l=n;c[f>>2]=a;c[h>
x3e;2]=d;c[g>>2]=c[(c[h>>2]|0)+28>>2];c[m+12>>2]=Mc(c[h>>2]|0)|0;c[m>>
;2]=Oc(c[h>>2]|0,k)|0;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}d=le(c[h>>2]|0,8240,m)|0;
c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}c[k>>2]=tl(m,c[h>>2]|0)|0;if(c[k>>
;2]|0){m=c[k>>2]|0;i=n;return m|0}b[(c[f>>2]|0)+152>>1]=b[m+4>>1]|0;c[(c[f>>2]|
0)+148>>2]=c[m>>2];d=hc(c[g>>2]|0,16,0,e[(c[f>>2]|0)+152>>1]|0,0,k)|0;c[(c[f
x3e;>2]|0)+156>>2]=d;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}d=Kc(c[h>>2]|0,(c[m+12
>>2]|0)+12|0)|0;c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}d=ee(c[h>>2]|0,(e[(c[f>
;>2]|0)+152>>1]|0)<<4)|0;c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}c[j>>
;2]=c[(c[f>>2]|0)+156>>2];c[l>>2]=0;while(1){f=c[h>>2]|0;if((c[l>>2]|0)>=(
e[m+4>>1]|0|0))break;d=je(f)|0;c[c[j>>2]>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>>2]|0)+
4>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>>2]|0)+8>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>
x3e;2]|0)+12>>2]=d;if(((c[(c[j>>2]|0)+8>>2]|0)+(c[(c[j>>2]|0)+12>>2]|0)|0)>
;>>0<=(c[(c[h>>2]|0)+4>>2]|0)>>>0)c[j>>2]=(c[j>>2]|0)+16;c
[l>>2]=(c[l>>2]|0)+1}ge(f);m=c[k>>2]|0;i=n;return m|0}function tl(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,q=0,r=0,s=0;s=i;i=i+64|0;f=s+48|0;g=s+44|0;h=s+40|0;n=s+54|0;q=s+52|0;j=s+36|0;l=s+32|0;k=s+28|0;o=
s+24|0;p=s+8|0;m=s;c[f>>2]=a;c[g>>2]=d;b[q>>1]=0;c[j>>2]=0;c[l>>2]=0;c[k>
x3e;2]=0;c[o>>2]=(c[(c[f>>2]|0)+12>>2]|0)+12;d=Kc(c[g>>2]|0,c[o>>2]|0)|0;c[h
x3e;>2]=d;if(d|0){r=c[h>>2]|0;i=s;return r|0}b[n>>1]=0;a:while(1){if((e[n>>1]|0|0)>=(e[(
c[f>>2]|0)+4>>1]|0|0))break;d=le(c[g>>2]|0,8264,p)|0;c[h>>2]=d;if(d|0){r=5;break}do if(((
c[p+8>>2]|0)+(c[p+12>>2]|0)|0)>>>0<=(c[(c[g>>2]|0)+4>>2]|0)>>
;>0){b[q>>1]=(b[q>>1]|0)+1<<16>>16;if((c[p>>2]|0)!=1751474532?(c[p>
x3e;2]|0)!=1651008868:0){if((c[p>>2]|0)==1397313095){c[l>>2]=1;break}if((c[p>>2]|0)!=1296389185)break
;c[k>>2]=1;break}c[j>>2]=1;if((c[p+12>>2]|0)>>>0<54){r=10;break a}d=Kc(c[g>
;>2]|0,(c[p+8>>2]|0)+12|0)|0;c[h>>2]=d;if(d|0){r=27;break a}c[m>>2]=Oc(c[g>>2]|0,h)|
0;if(c[h>>2]|0){r=27;break a}if((c[m>>2]|0)!=1594834165){r=14;break a}d=Kc(c[g>>2]|0,(c[o>>
;2]|0)+((e[n>>1]|0)+1<<4)|0)|0;c[h>>2]=d;if(d|0){r=27;break a}}while(0);b[n>>1]=(b[n>
;>1]|0)+1<<16>>16}if((r|0)==5){b[n>>1]=(b[n>>1]|0)+-1<<16>>16;b
[(c[f>>2]|0)+4>>1]=b[n>>1]|0}else if((r|0)==10){c[h>>2]=142;r=c[h>>2]|0;i=s;return
r|0}else if((r|0)==14){c[h>>2]=142;r=c[h>>2]|0;i=s;return r|0}else if((r|0)==27){r=c[h>>2]|0;i=s;
return r|0}b[(c[f>>2]|0)+4>>1]=b[q>>1]|0;if(!(e[(c[f>>2]|0)+4>>1]|0)){c[h>
;>2]=2;r=c[h>>2]|0;i=s;return r|0}if((c[j>>2]|0)==0?!((c[l>>2]|0)!=0&(c[k>>2]|
0)!=0):0){c[h>>2]=142;r=c[h>>2]|0;i=s;return r|0}c[h>>2]=0;r=c[h>>2]|0;i=s;return r|0}function
ul(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;E=i;i=i
+80|0;B=E+72|0;j=E+68|0;C=E+78|0;D=E+64|0;r=E+60|0;z=E+56|0;t=E+52|0;s=E+48|0;u=E+44|0;q=E+40|0;w=E+36|0;v=E+32|0;o=E+28|0;x=E+24
|0;p=E+20|0;y=E+16|0;k=E+12|0;m=E+8|0;l=E+4|0;n=E;A=E+76|0;c[B>>2]=f;c[j>>2]=g;a[C>>0]=h;c[r>
x3e;2]=c[(c[j>>2]|0)+28>>2];f=c[B>>2]|0;if(a[C>>0]|0){c[o>>2]=f+300+36;c[x>
;>2]=(c[B>>2]|0)+300+40;c[D>>2]=Wa[c[(c[B>>2]|0)+508>>2]&31](c[B>>2]|
0,1986884728,c[j>>2]|0,z)|0;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}c[s>>2]=e[(c[B>
;>2]|0)+300+34>>1];if((c[s>>2]|0)>>>0>(((c[z>>2]|0)>>>0)/4
|0)>>>0)c[s>>2]=((c[z>>2]|0)>>>0)/4|0;b[(c[B>>2]|0)+300+34>>
;1]=0;c[q>>2]=c[o>>2];c[w>>2]=c[x>>2]}else{c[p>>2]=f+216+36;c[y>>2]=(
c[B>>2]|0)+216+40;c[D>>2]=Wa[c[(c[B>>2]|0)+508>>2]&31](c[B>>2]|0,1752003704
,c[j>>2]|0,z)|0;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}c[s>>2]=e[(c[B>>2]|0)+
216+34>>1];if((c[s>>2]|0)>>>0>(((c[z>>2]|0)>>>0)/4|0)>>
;>0)c[s>>2]=((c[z>>2]|0)>>>0)/4|0;b[(c[B>>2]|0)+216+34>>1]=0;c[q>
;>2]=c[p>>2];c[w>>2]=c[y>>2]}c[t>>2]=(e[(c[B>>2]|0)+260+4>>1]|0
)-(c[s>>2]|0);c[u>>2]=(((c[z>>2]|0)-(c[s>>2]<<2)|0)>>>0)/2|0;if
((c[t>>2]|0)<0)c[t>>2]=0;y=hc(c[r>>2]|0,4,0,c[s>>2]|0,0,D)|0;c[c[q>>2]>
;>2]=y;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}y=hc(c[r>>2]|0,2,0,c[t>>2]|0,0,D)|0
;c[c[w>>2]>>2]=y;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}z=ee(c[j>>2]|0,c[z
x3e;>2]|0)|0;c[D>>2]=z;if(z|0){D=c[D>>2]|0;i=E;return D|0}c[v>>2]=c[(c[j>>2]|0)+32
x3e;>2];c[k>>2]=c[c[q>>2]>>2];c[m>>2]=(c[k>>2]|0)+(c[s>>2]<
;<2);while(1){if((c[k>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;c[v>>
;2]=(c[v>>2]|0)+2;b[c[k>>2]>>1]=(d[(c[v>>2]|0)+-2>>0]&65535)<<8
|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0;c[v>>2]=(c[v>>2]|0)+2;b[(c[k>>
;2]|0)+2>>1]=a[(c[v>>2]|0)+-2>>0]<<16>>16<<8|d[(c[v>>2]|0)+-
2+1>>0]<<0;c[k>>2]=(c[k>>2]|0)+4}c[l>>2]=c[c[w>>2]>>2];c[n
>>2]=(c[l>>2]|0)+(((c[t>>2]|0)<(c[u>>2]|0)?c[t>>2]|0:c[u>>2]|0)
x3c;<1);while(1){if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[v>
x3e;2]=(c[v>>2]|0)+2;b[c[l>>2]>>1]=a[(c[v>>2]|0)+-2>>0]<<16>>
;16<<8|d[(c[v>>2]|0)+-2+1>>0]<<0;c[l>>2]=(c[l>>2]|0)+2}a:do if((c[u
x3e;>2]|0)>0?(c[t>>2]|0)>(c[u>>2]|0):0){b[A>>1]=b[(c[c[w>>2]>>2
]|0)+((c[u>>2]|0)-1<<1)>>1]|0;c[n>>2]=(c[c[w>>2]>>2]|0)+(c[t>
x3e;2]<<1);while(1){if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a
;b[c[l>>2]>>1]=b[A>>1]|0;c[l>>2]=(c[l>>2]|0)+2}}while(0);ge(c[j>>2]|
0);g=c[s>>2]&65535;f=c[B>>2]|0;if(a[C>>0]|0){b[f+300+34>>1]=g;D=c[D>>2]|0
;i=E;return D|0}else{b[f+216+34>>1]=g;D=c[D>>2]|0;i=E;return D|0}return 0}function vl(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;s=i;i=i+64|0;e=s+48|0;k=s+44|0;r=s+40|0;n=s+36|0;j=s+32|0;g=s+28|0;q=s+24
|0;h=s+20|0;f=s+16|0;p=s+12|0;l=s+8|0;o=s+4|0;m=s;c[e>>2]=a;c[k>>2]=d;c[r>>2]=0;c[n>>2]=
c[(c[k>>2]|0)+28>>2];c[(c[e>>2]|0)+612>>2]=0;c[r>>2]=Wa[c[(c[e>>2]|0
)+508>>2]&31](c[e>>2]|0,1161972803,c[k>>2]|0,0)|0;if(c[r>>2]|0)c[r>>2]=Wa
[c[(c[e>>2]|0)+508>>2]&31](c[e>>2]|0,1651273571,c[k>>2]|0,0)|0;if(c[r>>2]|
0){r=c[r>>2]|0;i=s;return r|0}c[q>>2]=Mc(c[k>>2]|0)|0;d=ee(c[k>>2]|0,8)|0;c[r>>
;2]=d;if(d|0){r=c[r>>2]|0;i=s;return r|0}c[j>>2]=je(c[k>>2]|0)|0;c[g>>2]=je(c[k>>
;2]|0)|0;ge(c[k>>2]|0);if((c[j>>2]|0)!=131072|(c[g>>2]|0)>>>0>=65536){c[r>
;>2]=3;r=c[r>>2]|0;i=s;return r|0}j=hc(c[n>>2]|0,48,0,c[g>>2]|0,0,r)|0;c[(c[e>>2]|0
)+616>>2]=j;if(c[r>>2]|0){r=c[r>>2]|0;i=s;return r|0}c[(c[e>>2]|0)+612>>2]=c[g
>>2];c[h>>2]=c[(c[e>>2]|0)+616>>2];c[f>>2]=c[g>>2];j=ee(c[k>>
;2]|0,(c[g>>2]|0)*48|0)|0;c[r>>2]=j;if(j|0){r=c[r>>2]|0;i=s;return r|0}while(1){if((c[f>>
;2]|0)>>>0<=0)break;j=le(c[k>>2]|0,8288,c[h>>2]|0)|0;c[r>>2]=j;if(j|0)break;j=
le(c[k>>2]|0,8308,(c[h>>2]|0)+16|0)|0;c[r>>2]=j;if(j|0)break;j=le(c[k>>2]|0,8308,(c[h>
;>2]|0)+28|0)|0;c[r>>2]=j;if(j|0)break;j=le(c[k>>2]|0,8360,c[h>>2]|0)|0;c[r>>2]=j;if
(j|0)break;c[f>>2]=(c[f>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+48}ge(c[k>>2]|0);c[p>
;>2]=c[(c[e>>2]|0)+616>>2];c[l>>2]=c[g>>2];a:while(1){if((c[l>>2]|0)>
;>>0<=0){e=30;break}c[m>>2]=c[c[p>>2]>>2];j=Kc(c[k>>2]|0,(c[q>>
2]|0)+(c[(c[p>>2]|0)+8>>2]|0)|0)|0;c[r>>2]=j;if(j|0){e=30;break}j=ee(c[k>>2]|0,c[c[p>
;>2]>>2]<<3)|0;c[r>>2]=j;if(j|0){e=30;break}j=hc(c[n>>2]|0,40,0,c[c[p>>2]
x3e;>2]|0,0,r)|0;c[(c[p>>2]|0)+4>>2]=j;if(c[r>>2]|0){e=30;break}c[o>>2]=c[(c[p>
;>2]|0)+4>>2];while(1){e=c[k>>2]|0;if((c[m>>2]|0)>>>0<=0)break;j=ie(e)|0;
b[c[o>>2]>>1]=j;j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+2>>1]=j;j=(c[q>>2]|0
)+(c[(c[p>>2]|0)+8>>2]|0)|0;j=j+(je(c[k>>2]|0)|0)|0;c[(c[o>>2]|0)+36>>2]=j;c[m
>>2]=(c[m>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+40}ge(e);c[m>>2]=c[c[p>>2]
x3e;>2];c[o>>2]=c[(c[p>>2]|0)+4>>2];while(1){if((c[m>>2]|0)>>>0<
;=0)break;j=Kc(c[k>>2]|0,c[(c[o>>2]|0)+36>>2]|0)|0;c[r>>2]=j;if(j|0){e=30;break a}j=ee(c
[k>>2]|0,8)|0;c[r>>2]=j;if(j|0){e=30;break a}j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+4>>
;1]=j;j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+6>>1]=j;j=je(c[k>>2]|0)|0;c[(c[o>>2]|0)+
8>>2]=j;ge(c[k>>2]|0);c[r>>2]=wl(c[o>>2]|0,c[k>>2]|0)|0;if(c[r>>2]|0
){e=30;break a}c[m>>2]=(c[m>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+40}c[l>>2]=(c[l>
;>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+48}if((e|0)==30){r=c[r>>2]|0;i=s;return r|0}return 0}function
wl(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;p=i;i=i+32|0;j=p+24|0;k=p+20|0;l=p+16|0;g=p+12|0;o=p+8|0;n=p+4|0;h=p
;m=p+28|0;c[j>>2]=b;c[k>>2]=f;c[g>>2]=c[(c[k>>2]|0)+28>>2];switch(e[(c[j>
x3e;2]|0)+4>>1]|0|0){case 3:case 1:{a[m>>0]=(e[(c[j>>2]|0)+4>>1]|0|0)==1;if((e[(c[j>
;>2]|0)+2>>1]|0|0)<(e[c[j>>2]>>1]|0|0)){c[l>>2]=3;o=c[l>>2]|0;i=p;return
o|0}c[o>>2]=(e[(c[j>>2]|0)+2>>1]|0)-(e[c[j>>2]>>1]|0)+1;c[(c[j>>2]|
0)+24>>2]=c[o>>2];c[o>>2]=(c[o>>2]|0)+1;c[h>>2]=d[m>>0]|0|0?4:2;f=hc
(c[g>>2]|0,4,0,c[o>>2]|0,0,l)|0;c[(c[j>>2]|0)+28>>2]=f;if(c[l>>2]|0){o=c[l>
;>2]|0;i=p;return o|0}f=ee(c[k>>2]|0,_(c[o>>2]|0,c[h>>2]|0)|0)|0;c[l>>2]=f;if(f|0){
o=c[l>>2]|0;i=p;return o|0}c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0>=(c[o>
x3e;2]|0)>>>0)break;b=c[(c[j>>2]|0)+8>>2]|0;g=c[k>>2]|0;if(d[m>>0]|0|0)g=
je(g)|0;else g=(ie(g)|0)&65535;c[(c[(c[j>>2]|0)+28>>2]|0)+(c[n>>2]<<2)>>2
]=b+g;c[n>>2]=(c[n>>2]|0)+1}ge(c[k>>2]|0);o=c[l>>2]|0;i=p;return o|0}case 2:{c[l>
x3e;2]=xl(c[j>>2]|0,c[k>>2]|0)|0;o=c[l>>2]|0;i=p;return o|0}case 4:{c[l>>2]=yl(c[j>
x3e;2]|0,c[k>>2]|0,1)|0;o=c[l>>2]|0;i=p;return o|0}case 5:{c[l>>2]=xl(c[j>>2]|0,c[k>
;>2]|0)|0;if(c[l>>2]|0){o=c[l>>2]|0;i=p;return o|0}c[l>>2]=yl(c[j>>2]|0,c[k>
x3e;2]|0,0)|0;o=c[l>>2]|0;i=p;return o|0}default:{c[l>>2]=3;o=c[l>>2]|0;i=p;return o|0}}return 0}function
xl(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;b
=Oc(c[f>>2]|0,g)|0;c[(c[e>>2]|0)+12>>2]=b;if(c[g>>2]|0){c[d>>2]=c[g>>
;2];b=c[d>>2]|0;i=h;return b|0}else{b=le(c[f>>2]|0,8200,(c[e>>2]|0)+16|0)|0;c[g>>2]=b;c[
d>>2]=(b|0)!=0&1;b=c[d>>2]|0;i=h;return b|0}return 0}function yl(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;p=i;i=i+32|0;j=p+24|0;k=p+20|0;l=p+28|0;n=p+16|0;m=p+12|0;o=p+8|0;h=p+4|0;g=p;c[j>>2]=d;c[k
>>2]=e;a[l>>0]=f;c[g>>2]=c[(c[k>>2]|0)+28>>2];c[m>>2]=Oc(c[k>
x3e;2]|0,n)|0;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}c[(c[j>>2]|0)+24>>2]=c[m>>
;2];do if(a[l>>0]|0){e=hc(c[g>>2]|0,4,0,c[m>>2]|0,0,n)|0;c[(c[j>>2]|0)+28>>2]=
e;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}else{c[h>>2]=c[m>>2]<<2;break}}else
c[h>>2]=c[m>>2]<<1;while(0);e=hc(c[g>>2]|0,2,0,c[m>>2]|0,0,n)|0;c[(c[j>
x3e;2]|0)+32>>2]=e;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}e=ee(c[k>>2]|0,c[h>>
;2]|0)|0;c[n>>2]=e;if(e|0){o=c[n>>2]|0;i=p;return o|0}c[o>>2]=0;while(1){f=c[k>>2]|0;if((
c[o>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;e=ie(f)|0;b[(c[(c[j>>2]|0
)+32>>2]|0)+(c[o>>2]<<1)>>1]=e;if(a[l>>0]|0){e=c[(c[j>>2]|0)+8>
x3e;2]|0;e=e+((ie(c[k>>2]|0)|0)&65535)|0;c[(c[(c[j>>2]|0)+28>>2]|0)+(c[o>>2]<
x3c;2)>>2]=e}c[o>>2]=(c[o>>2]|0)+1}ge(f);o=c[n>>2]|0;i=p;return o|0}function zl(a){a=a|0
;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;b=j+20|0;d=j+16|0;g=j+12|0;h=j+8|0;e=j+4|0;f=j;c[b>>2]=a;c[d>>
2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[b>>2]|0)+616>>2];c[h>>2]=(c[g
x3e;>2]|0)+((c[(c[b>>2]|0)+612>>2]|0)*48|0);if(!(c[g>>2]|0)){h=c[b>>2]|0;h=h+612|0;
c[h>>2]=0;i=j;return}while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>>
;0)break;c[e>>2]=c[(c[g>>2]|0)+4>>2];c[f>>2]=(c[e>>2]|0)+((c[c[g>>2]
x3e;>2]|0)*40|0);a:do if(c[e>>2]|0)while(1){if((c[e>>2]|0)>>>0>=(c[f>>2]|
0)>>>0)break a;Fb(c[d>>2]|0,c[(c[e>>2]|0)+28>>2]|0);c[(c[e>>2]|0)+28>
;>2]=0;Fb(c[d>>2]|0,c[(c[e>>2]|0)+32>>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[e>
;>2]=(c[e>>2]|0)+40}while(0);Fb(c[d>>2]|0,c[(c[g>>2]|0)+4>>2]|0);c[(c[g>>
2]|0)+4>>2]=0;c[c[g>>2]>>2]=0;c[g>>2]=(c[g>>2]|0)+48}Fb(c[d>>2]|0,c[(
c[b>>2]|0)+616>>2]|0);c[(c[b>>2]|0)+616>>2]=0;h=c[b>>2]|0;h=h+612|0;c[h>
x3e;2]=0;i=j;return}function Al(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;n=i;i=i+32|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+
4|0;m=n;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;if((c[k>>2]|0)>>>0>=(c[(c[j>
;>2]|0)+612>>2]|0)>>>0){c[h>>2]=6;f=c[h>>2]|0;i=n;return f|0}else{c[m>>
;2]=(c[(c[j>>2]|0)+616>>2]|0)+((c[k>>2]|0)*48|0);b[c[l>>2]>>1]=d[(c[m>>
;2]|0)+44>>0]|0;b[(c[l>>2]|0)+2>>1]=d[(c[m>>2]|0)+45>>0]|0;c[(c[l>>2
]|0)+12>>2]=a[(c[m>>2]|0)+16>>0]<<6;c[(c[l>>2]|0)+16>>2]=a[(c[m>
;>2]|0)+16+1>>0]<<6;c[(c[l>>2]|0)+24>>2]=(a[(c[m>>2]|0)+16+6>>0
]|0)+(d[(c[m>>2]|0)+16+2>>0]|0)+(a[(c[m>>2]|0)+16+7>>0]|0)<<6;c[(c[l>>
;2]|0)+20>>2]=(c[(c[l>>2]|0)+12>>2]|0)-(c[(c[l>>2]|0)+16>>2]|0);c[h>>
;2]=0;f=c[h>>2]|0;i=n;return f|0}return 0}function Bl(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;s=i;i=i+48|0;l=s+32|0;t=s+28|0;w=s+38|0;m=s+24|0;n=s+20|0;o=s+16|0;v=s+12|0;u=s+8|0;p=s+4|0;r=s;q=s
+36|0;c[t>>2]=f;a[w>>0]=g;c[m>>2]=h;c[n>>2]=j;c[o>>2]=k;c[v>>2]=(c[t
>>2]|0)+300;c[u>>2]=(c[t>>2]|0)+216;c[p>>2]=d[w>>0]|0|0?c[v>>2]|0:c[
u>>2]|0;b[q>>1]=b[(c[p>>2]|0)+34>>1]|0;if((e[q>>1]|0|0?c[(c[p>>2]|0)+
36>>2]|0:0)?(c[m>>2]|0)>>>0<(e[(c[t>>2]|0)+260+4>>1]|0)>>
x3e;0:0){if((c[m>>2]|0)>>>0<(e[q>>1]|0)>>>0){c[r>>2]=(c[(c[p>
;>2]|0)+36>>2]|0)+(c[m>>2]<<2);b[c[n>>2]>>1]=b[(c[r>>2]|0)+2>
;>1]|0;b[c[o>>2]>>1]=b[c[r>>2]>>1]|0}else{b[c[n>>2]>>1]=b[(c[(c
[p>>2]|0)+40>>2]|0)+((c[m>>2]|0)-(e[q>>1]|0)<<1)>>1]|0;b[c[o>
x3e;2]>>1]=b[(c[(c[p>>2]|0)+36>>2]|0)+((e[q>>1]|0)-1<<2)>>1]|0}c[l
x3e;>2]=0;w=c[l>>2]|0;i=s;return w|0}b[c[o>>2]>>1]=0;b[c[n>>2]>>1]=0;c[l
x3e;>2]=0;w=c[l>>2]|0;i=s;return w|0}function Cl(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;Dl(c[f>>2]|0,c[e>>2]|0);i=d;return 0}function Dl(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)+112>>2]=c[f>>
2];c[(c[e>>2]|0)+104>>2]=c[(c[f>>2]|0)+4+24>>2];i=d;return}function El(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[f>>2]=c[f>>2];c[e>
x3e;2]=c[e>>2];i=d;return 0}function Fl(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+16|0;f=k+12|0;h=
k+8|0;j=k+4|0;g=k;c[d>>2]=a;c[f>>2]=b;c[h>>2]=0;c[j>>2]=c[(c[f>>2]|0)+92>
x3e;2];c[(c[d>>2]|0)+36>>2]=e[(c[f>>2]|0)+68>>1];c[g>>2]=0;while(1){if(!(c[3616
+(c[g>>2]<<2)>>2]|0))break;c[h>>2]=Id(c[f>>2]|0,c[3616+(c[g>>2]<
;<2)>>2]|0)|0;if(!(c[h>>2]|0))break;c[g>>2]=(c[g>>2]|0)+1}if(c[h>>2]|0){a
=c[f>>2]|0;j=c[j>>2]|0;Jd(a,j)|0;i=k;return 0}Gl(c[d>>2]|0,c[f>>2]|0,111);Pl(c[d>
x3e;2]|0,c[f>>2]|0);Rl(c[d>>2]|0,c[f>>2]|0);a=c[f>>2]|0;j=c[j>>2]|0;Jd(a,j)|0;
i=k;return 0}function Gl(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,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=
0;y=i;i=i+1024|0;t=y+1016|0;g=y+1012|0;z=y+1008|0;w=y+884|0;m=y+880|0;n=y+876|0;v=y+872|0;l=y+40|0;r=y+36|0;j=y+32|0;h=y+28|0;s=
y+24|0;o=y+20|0;p=y+16|0;q=y+12|0;k=y+8|0;u=y+4|0;x=y;c[t>>2]=d;c[g>>2]=e;c[z>>2]=f;Hl(w,c[(c[g>
;>2]|0)+100>>2]|0);c[(c[t>>2]|0)+40+8>>2]=0;c[(c[t>>2]|0)+40+396+8>>2]=0;
c[r>>2]=l+4;c[n>>2]=Dc(c[g>>2]|0,c[z>>2]|0)|0;a:do if(((c[n>>2]|0?(c[m>
x3e;2]=Cb(c[g>>2]|0,c[n>>2]|0,1)|0,(c[m>>2]|0)==0):0)?(b[(c[(c[g>>2]|0)+84>>2]|
0)+108+2>>1]|0)>0:0)?(Ns(l|0,0,832)|0,c[l+36>>2]=c[(c[t>>2]|0)+36>>2],c[(c[r>
x3e;2]|0)+8>>2]=65536,c[(c[r>>2]|0)+4>>2]=65536,c[(c[r>>2]|0)+16>>2]=0,c[(c[r
x3e;>2]|0)+12>>2]=0,c[c[r>>2]>>2]=c[g>>2],c[(c[r>>2]|0)+20>>2]=
0,c[(c[r>>2]|0)+24>>2]=0,Dl(w,l),c[m>>2]=Il(w,(c[(c[g>>2]|0)+84>>2]|0)+108|0)|
0,(c[m>>2]|0)==0):0){c[v>>2]=0;while(1){if((c[v>>2]|0)>=2)break a;c[j>>2]=(c[t>
;>2]|0)+40+((c[v>>2]|0)*396|0);c[h>>2]=w+48+((c[v>>2]|0)*28|0);c[q>>2]=0;c[m>
x3e;2]=Kl(w,c[v>>2]|0)|0;if(c[m>>2]|0)break a;Ml(w,c[v>>2]|0);c[s>>2]=c[(c[h>>
2]|0)+8>>2];c[o>>2]=(c[s>>2]|0)+((c[c[h>>2]>>2]|0)*52|0);while(1){if((c[s>
;>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[p>>2]=c[(c[s>>2]|0)+20
>>2];if((c[p>>2]|0?(c[(c[p>>2]|0)+20>>2]|0)==(c[s>>2]|0):0)?(c[p>>2]|
0)>>>0>(c[s>>2]|0)>>>0:0){c[k>>2]=(b[(c[s>>2]|0)+2>>1
]|0)-(b[(c[p>>2]|0)+2>>1]|0);if((c[k>>2]|0)<0)c[k>>2]=0-(c[k>>2]|0);if((c
[q>>2]|0)>>>0<16){r=c[k>>2]|0;z=c[q>>2]|0;c[q>>2]=z+1;c[(c[j>
x3e;2]|0)+12+(z*12|0)>>2]=r}}c[s>>2]=(c[s>>2]|0)+52}Nl(c[q>>2]|0,(c[j>>2]|0)+12
|0);c[(c[j>>2]|0)+8>>2]=c[q>>2];c[v>>2]=(c[v>>2]|0)+1}}while(0);c[v>>
;2]=0;while(1){if((c[v>>2]|0)>=2)break;c[u>>2]=(c[t>>2]|0)+40+((c[v>>2]|0)*396|0);if
((c[(c[u>>2]|0)+8>>2]|0)>>>0>0)g=c[(c[u>>2]|0)+12>>2]|0;else g=((c[(
c[t>>2]|0)+36>>2]|0)*50|0)/2048|0;c[x>>2]=g;c[(c[u>>2]|0)+204>>2]=(c[x>
x3e;2]|0)/5|0;c[(c[u>>2]|0)+208>>2]=c[x>>2];a[(c[u>>2]|0)+212>>0]=0;c[v>
x3e;2]=(c[v>>2]|0)+1}Ol(w);i=y;return}function Hl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>
x3e;2]=a;c[e>>2]=b;a=c[d>>2]|0;b=a+124|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[c[d>
x3e;2]>>2]=c[e>>2];i=f;return}function Il(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,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;M=i;i=i+128|0;g=M+112|0;h=M+108|0;A=M+104|0;z
=M+100|0;n=M+96|0;m=M+92|0;s=M+88|0;u=M+84|0;r=M+80|0;t=M+76|0;l=M+72|0;I=M+68|0;J=M+64|0;q=M+60|0;p=M+56|0;k=M+52|0;o=M+48|0;j=
M+44|0;v=M+40|0;w=M+36|0;x=M+32|0;y=M+116|0;B=M+28|0;K=M+24|0;D=M+20|0;E=M+16|0;C=M+12|0;F=M+8|0;G=M+4|0;H=M;c[g>>2]=d
;c[h>>2]=f;c[A>>2]=0;c[s>>2]=c[(c[g>>2]|0)+4>>2];c[u>>2]=c[(c[g>
;>2]|0)+12>>2];c[r>>2]=c[(c[g>>2]|0)+8>>2];c[t>>2]=c[(c[g>>2]|0
)+16>>2];c[l>>2]=c[c[g>>2]>>2];c[(c[g>>2]|0)+28>>2]=0;c[(c[g>
x3e;2]|0)+40>>2]=0;c[(c[g>>2]|0)+48>>2]=0;c[(c[g>>2]|0)+48+12>>2]=0;c[(c[g>
;>2]|0)+48+28>>2]=0;c[(c[g>>2]|0)+48+28+12>>2]=0;c[m>>2]=b[c[h>>2]>
x3e;1];c[n>>2]=c[(c[g>>2]|0)+36>>2];do if((c[m>>2]|0)>>>0>(c[n>
x3e;2]|0)>>>0){c[m>>2]=(c[m>>2]|0)+3&-4;f=hc(c[l>>2]|0,4,c[n>>2]|0,c
[m>>2]|0,c[(c[g>>2]|0)+44>>2]|0,A)|0;c[(c[g>>2]|0)+44>>2]=f;if(c[A>>
2]|0){L=c[A>>2]|0;i=M;return L|0}else{c[(c[g>>2]|0)+36>>2]=c[m>>2];break}}while(0);c[m
x3e;>2]=(b[(c[h>>2]|0)+2>>1]|0)+2;c[n>>2]=c[(c[g>>2]|0)+24>>2];do if((c[m
>>2]|0)>>>0>(c[n>>2]|0)>>>0){c[m>>2]=(c[m>>2]|0)+2+7
x26;-8;f=hc(c[l>>2]|0,40,c[n>>2]|0,c[m>>2]|0,c[(c[g>>2]|0)+32>>2]|0,A)|0;c[(c[
g>>2]|0)+32>>2]=f;if(c[A>>2]|0){L=c[A>>2]|0;i=M;return L|0}else{c[(c[g>>2]|0)+
24>>2]=c[m>>2];break}}while(0);c[(c[g>>2]|0)+28>>2]=b[(c[h>>2]|0)+2>>
;1];c[(c[g>>2]|0)+40>>2]=b[c[h>>2]>>1];c[(c[g>>2]|0)+48+24>>2]=2;c[(
c[g>>2]|0)+48+28+24>>2]=-1;if(($d(c[h>>2]|0)|0)==1){c[(c[g>>2]|0)+48+24>>2]=-2
;c[(c[g>>2]|0)+48+28+24>>2]=1}c[(c[g>>2]|0)+4>>2]=c[s>>2];c[(c[g>>2]|
0)+12>>2]=c[u>>2];c[(c[g>>2]|0)+8>>2]=c[r>>2];c[(c[g>>2]|0)+16>
x3e;2]=c[t>>2];c[(c[g>>2]|0)+116>>2]=0;c[(c[g>>2]|0)+120>>2]=0;c[z>>
2]=c[(c[g>>2]|0)+32>>2];if(!(c[(c[g>>2]|0)+28>>2]|0)){L=c[A>>2]|0;i=M;return L
|0}c[J>>2]=(c[z>>2]|0)+((c[(c[g>>2]|0)+28>>2]|0)*40|0);c[q>>2]=c[(c[h>>
;2]|0)+4>>2];c[p>>2]=c[(c[h>>2]|0)+8>>2];c[k>>2]=(c[z>>2]|0)+((b[c[(
c[h>>2]|0)+12>>2]>>1]|0)*40|0);c[o>>2]=c[k>>2];c[j>>2]=0;c[I>
x3e;2]=c[z>>2];while(1){if((c[I>>2]|0)>>>0>=(c[J>>2]|0)>>>0)break
;b[(c[I>>2]|0)+12>>1]=c[c[q>>2]>>2];b[(c[I>>2]|0)+14>>1]=c[(c[q>
;>2]|0)+4>>2];f=Mb(c[c[q>>2]>>2]|0,c[s>>2]|0)|0;f=f+(c[r>>2]|0)|0;c[(c[I
x3e;>2]|0)+16>>2]=f;c[(c[I>>2]|0)+4>>2]=f;f=Mb(c[(c[q>>2]|0)+4>>2]|0,c[u
x3e;>2]|0)|0;f=f+(c[t>>2]|0)|0;c[(c[I>>2]|0)+20>>2]=f;c[(c[I>>2]|0)+8>>2]=
f;switch(a[c[p>>2]>>0]&3|0){case 0:{b[c[I>>2]>>1]=1;break}case 2:{b[c[I>>
2]>>1]=2;break}default:b[c[I>>2]>>1]=0}c[(c[I>>2]|0)+36>>2]=c[o>>2];
c[(c[o>>2]|0)+32>>2]=c[I>>2];c[o>>2]=c[I>>2];if((c[I>>2]|0)==(c[k>
;>2]|0)?(f=(c[j>>2]|0)+1|0,c[j>>2]=f,(f|0)<(b[c[h>>2]>>1]|0)):0){c[k>>
;2]=(c[z>>2]|0)+((b[(c[(c[h>>2]|0)+12>>2]|0)+(c[j>>2]<<1)>>1]|0)*40|
0);c[o>>2]=c[k>>2]}c[I>>2]=(c[I>>2]|0)+40;c[q>>2]=(c[q>>2]|0)+8;c[p
x3e;>2]=(c[p>>2]|0)+1}c[v>>2]=c[(c[g>>2]|0)+44>>2];c[w>>2]=(c[v>>
;2]|0)+(c[(c[g>>2]|0)+40>>2]<<2);c[x>>2]=c[(c[h>>2]|0)+12>>2];b[y>
;>1]=0;while(1){g=c[z>>2]|0;if((c[v>>2]|0)>>>0>=(c[w>>2]|0)>>
x3e;0)break;c[c[v>>2]>>2]=g+((b[y>>1]|0)*40|0);b[y>>1]=(b[c[x>>2]>>1
]|0)+1;c[v>>2]=(c[v>>2]|0)+4;c[x>>2]=(c[x>>2]|0)+2}c[B>>2]=g;c[K>>2]=
0;c[D>>2]=0;c[E>>2]=0;c[C>>2]=4;c[I>>2]=c[z>>2];while(1){if((c[I>>2]|
0)>>>0>=(c[J>>2]|0)>>>0)break;if((c[I>>2]|0)==(c[B>>2]|0)){c[K
x3e;>2]=c[(c[B>>2]|0)+36>>2];c[D>>2]=(b[(c[B>>2]|0)+12>>1]|0)-(b[(c[K>
;>2]|0)+12>>1]|0);c[E>>2]=(b[(c[B>>2]|0)+14>>1]|0)-(b[(c[K>>2]|0)+14>
;>1]|0);c[C>>2]=Jl(c[D>>2]|0,c[E>>2]|0)|0;c[B>>2]=(c[K>>2]|0)+40}a[(c[I
x3e;>2]|0)+2>>0]=c[C>>2];c[F>>2]=c[(c[I>>2]|0)+32>>2];c[G>>2]=(
b[(c[F>>2]|0)+12>>1]|0)-(b[(c[I>>2]|0)+12>>1]|0);c[H>>2]=(b[(c[F>>2]|
0)+14>>1]|0)-(b[(c[I>>2]|0)+14>>1]|0);c[C>>2]=Jl(c[G>>2]|0,c[H>>2]|0
)|0;a[(c[I>>2]|0)+3>>0]=c[C>>2];do if(!(e[c[I>>2]>>1]&3|0)){g=c[I>
x3e;2]|0;if((a[(c[I>>2]|0)+3>>0]|0)!=(a[(c[I>>2]|0)+2>>0]|0))if((a[g+2>>0]|0)==(
0-(a[(c[I>>2]|0)+3>>0]|0)|0)){L=28;break}else break;if(!((a[g+3>>0]|0)==4?!($b(c[D>>2]|0
,c[E>>2]|0,c[G>>2]|0,c[H>>2]|0)|0):0))L=28}else L=28;while(0);if((L|0)==28){L=0;z=c[I>>2
]|0;b[z>>1]=e[z>>1]|256}c[D>>2]=c[G>>2];c[E>>2]=c[H>>2];c[K>>
;2]=c[I>>2];c[I>>2]=(c[I>>2]|0)+40}L=c[A>>2]|0;i=M;return L|0}function Jl(a,b){a=a|0;b=b
|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;g=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;a=(c[e
>>2]|0)>=(0-(c[d>>2]|0)|0);do if((c[e>>2]|0)>=(c[d>>2]|0))if(a){c[f>>
;2]=2;c[g>>2]=c[e>>2];c[h>>2]=c[d>>2];break}else{c[f>>2]=-1;c[g>>2]=
0-(c[d>>2]|0);c[h>>2]=c[e>>2];break}else if(a){c[f>>2]=1;c[g>>2]=c[d>>
;2];c[h>>2]=c[e>>2];break}else{c[f>>2]=-2;c[g>>2]=c[e>>2];c[h>>2]=c[
d>>2];break}while(0);c[h>>2]=(c[h>>2]|0)*14;d=c[g>>2]|0;e=c[h>>2]|0;if((((c[g
x3e;>2]|0)<0?0-d|0:d)|0)>(((c[h>>2]|0)<0?0-e|0:e)|0)){h=c[f>>2]|0;i=j;return h|0}c[f>
;>2]=4;h=c[f>>2]|0;i=j;return h|0}function Kl(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;P=i;i=i+176|0;j=P+164|0;k=P+160|0;p=P+
156|0;v=P+152|0;G=P+148|0;N=P+144|0;A=P+92|0;q=P+88|0;r=P+84|0;t=P+80|0;B=P+76|0;n=P+72|0;l=P+68|0;o=P+64|0;m=P+60|0;z=P+56|0;s=
P+52|0;x=P+48|0;w=P+44|0;u=P+40|0;y=P+168|0;D=P+36|0;E=P+32|0;C=P+28|0;O=P+24|0;H=P+20|0;J=P+16|0;I=P+12|0;K=P+8|0;L=P+4|0;M=P;c
[j>>2]=f;c[k>>2]=g;c[p>>2]=(c[j>>2]|0)+48+((c[k>>2]|0)*28|0);c[v>>2]=
c[c[j>>2]>>2];c[G>>2]=0;c[N>>2]=0;c[q>>2]=c[(c[j>>2]|0)+44>>
;2];c[r>>2]=(c[q>>2]|0)+(c[(c[j>>2]|0)+40>>2]<<2);f=A;h=f+52|0;do{c[f>>
;2]=0;f=f+4|0}while((f|0)<(h|0));c[A+32>>2]=32e3;a[A>>0]=0;g=c[(c[p>>2]|0)+24>>2]|0
;c[t>>2]=(c[(c[p>>2]|0)+24>>2]|0)<0?0-g|0:g;c[B>>2]=c[t>>2];c[c[p>
x3e;2]>>2]=0;g=c[(c[j>>2]|0)+32>>2]|0;a:do if(!(c[k>>2]|0)){c[n>>2]=g;c[l>
;>2]=(c[n>>2]|0)+((c[(c[j>>2]|0)+28>>2]|0)*40|0);while(1){if((c[n>>2]|0)>>
;>0>=(c[l>>2]|0)>>>0)break a;c[(c[n>>2]|0)+24>>2]=b[(c[n>>2]|0)+
12>>1];c[(c[n>>2]|0)+28>>2]=b[(c[n>>2]|0)+14>>1];c[n>>2]=(c[n>
x3e;2]|0)+40}}else{c[o>>2]=g;c[m>>2]=(c[o>>2]|0)+((c[(c[j>>2]|0)+28>>2]|0)*40|
0);while(1){if((c[o>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break a;c[(c[o>>
;2]|0)+24>>2]=b[(c[o>>2]|0)+14>>1];c[(c[o>>2]|0)+28>>2]=b[(c[o>>2]|0
)+12>>1];c[o>>2]=(c[o>>2]|0)+40}}while(0);b:while(1){if((c[q>>2]|0)>>>0
x3e;=(c[r>>2]|0)>>>0)break;c[z>>2]=c[c[q>>2]>>2];c[s>>2]=c[(c[z
>>2]|0)+36>>2];c[x>>2]=0;c[w>>2]=32e3;c[u>>2]=-32e3;c:do if((c[z>>2]|
0)!=(c[s>>2]|0)){o=a[(c[s>>2]|0)+3>>0]|0;d:do if((((a[(c[s>>2]|0)+3>>0]|0)<
;0?0-o|0:o)|0)==(c[t>>2]|0)?(o=a[(c[z>>2]|0)+3>>0]|0,(((a[(c[z>>2]|0)+3>>0]|0)
x3c;0?0-o|0:o)|0)==(c[t>>2]|0)):0){c[s>>2]=c[z>>2];while(1){c[z>>2]=c[(c[z>>2]|
0)+36>>2];o=a[(c[z>>2]|0)+3>>0]|0;g=c[z>>2]|0;if((((a[(c[z>>2]|0)+3>>
;0]|0)<0?0-o|0:o)|0)!=(c[t>>2]|0))break;if((g|0)==(c[s>>2]|0))break d}c[z>>2]=c[g+32>>
;2]}while(0);c[s>>2]=c[z>>2];a[y>>0]=0;while(1){do if(c[x>>2]|0){c[D>>2]=c[(c[
z>>2]|0)+24>>2];if((c[D>>2]|0)<(c[w>>2]|0))c[w>>2]=c[D>>2];if((
c[D>>2]|0)>(c[u>>2]|0))c[u>>2]=c[D>>2];if((a[(c[z>>2]|0)+3>>0]|
0)==(c[B>>2]|0)?(c[z>>2]|0)!=(c[s>>2]|0):0)break;c[(c[N>>2]|0)+44>>2]=c[z>
;>2];b[(c[N>>2]|0)+2>>1]=(c[w>>2]|0)+(c[u>>2]|0)>>1;if((e[c[(c[N>>
;2]|0)+40>>2]>>1]|e[c[z>>2]>>1])&3|0){o=c[N>>2]|0;a[o>>0]=d[o
x3e;>0]|1}o=c[(c[z>>2]|0)+28>>2]|0;c[u>>2]=o;c[w>>2]=o;c[E>>2]=c[(c[(c[N
x3e;>2]|0)+40>>2]|0)+28>>2];if((c[E>>2]|0)<(c[w>>2]|0))c[w>>2]=c[E
x3e;>2];if((c[E>>2]|0)>(c[u>>2]|0))c[u>>2]=c[E>>2];b[(c[N>>2]|0)+4
x3e;>1]=c[w>>2];b[(c[N>>2]|0)+6>>1]=c[u>>2];b[(c[N>>2]|0)+8>>1]=(
b[(c[N>>2]|0)+6>>1]|0)-(b[(c[N>>2]|0)+4>>1]|0);c[x>>2]=0;c[N>>2]=0}while
(0);if((c[z>>2]|0)==(c[s>>2]|0)){if(a[y>>0]|0)break c;a[y>>0]=1}if((c[x>>2]|0)==
0?(o=a[(c[z>>2]|0)+3>>0]|0,(((a[(c[z>>2]|0)+3>>0]|0)<0?0-o|0:o)|0)==(c[t>>
;2]|0)):0){c[B>>2]=a[(c[z>>2]|0)+3>>0];c[G>>2]=Ll(c[p>>2]|0,c[v>>2]|
0,N)|0;if(c[G>>2]|0){F=53;break b}f=c[N>>2]|0;g=A;h=f+52|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=
g+4|0}while((f|0)<(h|0));a[(c[N>>2]|0)+1>>0]=c[B>>2];o=c[(c[z>>2]|0)+24>>
2]|0;c[u>>2]=o;c[w>>2]=o;c[(c[N>>2]|0)+40>>2]=c[z>>2];c[(c[N>>2]|0)+
44>>2]=c[z>>2];c[(c[N>>2]|0)+48>>2]=c[q>>2];c[x>>2]=1}c[z>>
;2]=c[(c[z>>2]|0)+32>>2]}}while(0);c[q>>2]=(c[q>>2]|0)+4}if((F|0)==53){O=c[G>>
2]|0;i=P;return O|0}c[C>>2]=c[(c[p>>2]|0)+8>>2];c[O>>2]=(c[C>>2]|0)+((c[c[p>
;>2]>>2]|0)*52|0);c[N>>2]=c[C>>2];while(1){if((c[N>>2]|0)>>>0>=(
c[O>>2]|0)>>>0)break;c[H>>2]=c[(c[N>>2]|0)+40>>2];c[J>>2]=c[(c[
N>>2]|0)+44>>2];c[I>>2]=c[(c[H>>2]|0)+28>>2];c[K>>2]=c[(c[J>>
;2]|0)+28>>2];do if((c[H>>2]|0)!=(c[J>>2]|0)){g=c[(c[H>>2]|0)+36>>2]|0;if((c[I
>>2]|0)<(c[K>>2]|0)){c[L>>2]=g;if((c[(c[L>>2]|0)+28>>2]|0)<(c[I>
;>2]|0))b[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8>>1]|0)+((c[I>>2]|0)-(c[(c[L
x3e;>2]|0)+28>>2]|0)>>1);c[L>>2]=c[(c[J>>2]|0)+32>>2];if((c[(c[L>>
;2]|0)+28>>2]|0)<=(c[K>>2]|0))break;b[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8
x3e;>1]|0)+((c[(c[L>>2]|0)+28>>2]|0)-(c[K>>2]|0)>>1);break}else{c[M>>2]=g
;if((c[(c[M>>2]|0)+28>>2]|0)>(c[I>>2]|0))b[(c[N>>2]|0)+8>>1]=(b[(c[N>
;>2]|0)+8>>1]|0)+((c[(c[M>>2]|0)+28>>2]|0)-(c[I>>2]|0)>>1);c[M>>
;2]=c[(c[J>>2]|0)+32>>2];if((c[(c[M>>2]|0)+28>>2]|0)>=(c[K>>2]|0))break;b
[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8>>1]|0)+((c[K>>2]|0)-(c[(c[M>>2]|
0)+28>>2]|0)>>1);break}}while(0);c[N>>2]=(c[N>>2]|0)+52}O=c[G>>2]|0;i=P;return
O|0}function Ll(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;n=i;i=i+32|0;e=n+28|0;f=n+24|0;g=n+20|0;j=n+16
|0;m=n+12|0;l=n+8|0;k=n+4|0;h=n;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=0;c[m>>2
]=0;do if((c[c[e>>2]>>2]|0)>=(c[(c[e>>2]|0)+4>>2]|0)){c[l>>2]=c[(c[e>
;>2]|0)+4>>2];c[k>>2]=c[l>>2];c[h>>2]=41297762;if((c[l>>2]|0)>=(c[h
x3e;>2]|0)){c[j>>2]=64;l=c[m>>2]|0;m=c[g>>2]|0;c[m>>2]=l;m=c[j>>2]|0;i=n;
return m|0}c[k>>2]=(c[k>>2]|0)+((c[k>>2]>>2)+4);if(!((c[k>>2]|0)>=(c[l>
;>2]|0)?(c[k>>2]|0)<=(c[h>>2]|0):0))c[k>>2]=c[h>>2];l=hc(c[f>>2]|0,52
,c[l>>2]|0,c[k>>2]|0,c[(c[e>>2]|0)+8>>2]|0,j)|0;c[(c[e>>2]|0)+8>>2]=
l;if(c[j>>2]|0){l=c[m>>2]|0;m=c[g>>2]|0;c[m>>2]=l;m=c[j>>2]|0;i=n;return m|0}else
{c[(c[e>>2]|0)+4>>2]=c[k>>2];break}}while(0);k=c[(c[e>>2]|0)+8>>2]|0;b=c[e>
;>2]|0;l=c[b>>2]|0;c[b>>2]=l+1;c[m>>2]=k+(l*52|0);l=c[m>>2]|0;m=c[g>>2]|0
;c[m>>2]=l;m=c[j>>2]|0;i=n;return m|0}function Ml(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;u=i;i=i+64|0;v=u+60|0;w=u+56|0;f=u+52|0;t=u+48|0;s=u+44|0;k=u+40|0;j=u+36|0;q=u+32|0;r=u+28|0;n=u
+24|0;o=u+20|0;g=u+16|0;m=u+12|0;l=u+8|0;h=u+4|0;p=u;c[v>>2]=d;c[w>>2]=e;c[f>>2]=(c[v>>2
]|0)+48+((c[w>>2]|0)*28|0);c[t>>2]=c[(c[f>>2]|0)+8>>2];c[s>>2]=(c[t>>
;2]|0)+((c[c[f>>2]>>2]|0)*52|0);d=(c[(c[(c[v>>2]|0)+112>>2]|0)+36>>2]<<
;3|0)/2048|0;c[k>>2]=d;c[k>>2]=(c[k>>2]|0)==0?1:d;c[j>>2]=((c[(c[(c[v>>2]|0)+112
>>2]|0)+36>>2]|0)*6e3|0)/2048|0;c[q>>2]=c[t>>2];while(1){if((c[q>>2]|0)>
x3e;>0>=(c[s>>2]|0)>>>0)break;a:do if((a[(c[q>>2]|0)+1>>0]|0)==(c[(c[f>
;>2]|0)+24>>2]|0)?(c[(c[q>>2]|0)+40>>2]|0)!=(c[(c[q>>2]|0)+44>>2]|0):0){c
[r>>2]=c[t>>2];while(1){if((c[r>>2]|0)>>>0>=(c[s>>2]|0)>>
x3e;0)break a;if(((a[(c[q>>2]|0)+1>>0]|0)+(a[(c[r>>2]|0)+1>>0]|0)|0)==0?(b[(c[r>>
;2]|0)+2>>1]|0)>(b[(c[q>>2]|0)+2>>1]|0):0){c[n>>2]=b[(c[q>>2]|0)+2>
x3e;1];c[o>>2]=b[(c[r>>2]|0)+2>>1];c[g>>2]=(c[o>>2]|0)-(c[n>>2]|0);if
((c[g>>2]|0)<0)c[g>>2]=0-(c[g>>2]|0);c[m>>2]=b[(c[q>>2]|0)+4>>1
];c[l>>2]=b[(c[q>>2]|0)+6>>1];if((c[m>>2]|0)<(b[(c[r>>2]|0)+4>>
1]|0))c[m>>2]=b[(c[r>>2]|0)+4>>1];if((c[l>>2]|0)>(b[(c[r>>2]|0)+6>
x3e;1]|0))c[l>>2]=b[(c[r>>2]|0)+6>>1];c[h>>2]=(c[l>>2]|0)-(c[m>>2]|0
);if((c[h>>2]|0)>=(c[k>>2]|0)){c[p>>2]=(c[g>>2]|0)+((c[j>>2]|0)/(c[h>
;>2]|0)|0);if((c[p>>2]|0)<(c[(c[q>>2]|0)+32>>2]|0)){c[(c[q>>2]|0)+32>>
;2]=c[p>>2];c[(c[q>>2]|0)+20>>2]=c[r>>2]}if((c[p>>2]|0)<(c[(c[r>>
;2]|0)+32>>2]|0)){c[(c[r>>2]|0)+32>>2]=c[p>>2];c[(c[r>>2]|0)+20>>2]=
c[q>>2]}}}c[r>>2]=(c[r>>2]|0)+52}}while(0);c[q>>2]=(c[q>>2]|0)+52}c[q>>
;2]=c[t>>2];while(1){if((c[q>>2]|0)>>>0>=(c[s>>2]|0)>>>0)break;
c[r>>2]=c[(c[q>>2]|0)+20>>2];if(c[r>>2]|0?(c[(c[r>>2]|0)+20>>2]|0)!=(
c[q>>2]|0):0){c[(c[q>>2]|0)+20>>2]=0;c[(c[q>>2]|0)+24>>2]=c[(c[r>>2]|
0)+20>>2]}c[q>>2]=(c[q>>2]|0)+52}i=u;return}function Nl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;j=i;i=i+32|0;d=j+24|0;e=j+20|0;f=j+16|0;g=j+12|0;h=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=1;while(1){if((
c[f>>2]|0)>>>0>=(c[d>>2]|0)>>>0)break;c[g>>2]=c[f>>2];
while(1){if((c[g>>2]|0)>>>0<=0)break;if((c[(c[e>>2]|0)+((c[g>>2]|0)*12|0)>
;>2]|0)>(c[(c[e>>2]|0)+(((c[g>>2]|0)-1|0)*12|0)>>2]|0))break;b=(c[e>>2]|0)+((c
[g>>2]|0)*12|0)|0;c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+
8>>2];b=(c[e>>2]|0)+((c[g>>2]|0)*12|0)|0;a=(c[e>>2]|0)+(((c[g>>2]|0)-1|0)*12|0
)|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];b=(c[e
x3e;>2]|0)+(((c[g>>2]|0)-1|0)*12|0)|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];
c[b+8>>2]=c[h+8>>2];c[g>>2]=(c[g>>2]|0)+-1}c[f>>2]=(c[f>>2]|0)+1}i=j
;return}function Ol(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;f=g+8|0;e=g+4|0;d=g;c[b>>2]=a;if(!(c[b>
;>2]|0)){i=g;return}if(!(c[c[b>>2]>>2]|0)){i=g;return}c[f>>2]=c[c[b>>2]>>
2];c[e>>2]=0;while(1){if((c[e>>2]|0)>=2)break;c[d>>2]=(c[b>>2]|0)+48+((c[e>>
;2]|0)*28|0);c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;Fb(c[f>>2]|0,c[(c[d>
x3e;2]|0)+8>>2]|0);c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+12>>2]=0;c[(c[d>
x3e;2]|0)+16>>2]=0;Fb(c[f>>2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>
x3e;2]=0;c[e>>2]=(c[e>>2]|0)+1}Fb(c[f>>2]|0,c[(c[b>>2]|0)+44>>2]|0);c[(c[b>
;>2]|0)+44>>2]=0;c[(c[b>>2]|0)+36>>2]=0;c[(c[b>>2]|0)+40>>2]=0;Fb(c[f>
;>2]|0,c[(c[b>>2]|0)+32>>2]|0);c[(c[b>>2]|0)+32>>2]=0;c[(c[b>>2]|0)+28>
;>2]=0;c[(c[b>>2]|0)+24>>2]=0;c[c[b>>2]>>2]=0;i=g;return}function Pl(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;N=i;i=i+224|0;O=N+212|0;g=N+208|0;u=N+160|0;L=N+112|0;B=N+104|0;C=N+100|0;j=N+96|0;o=N+92|0;s=N+88|0;h=N+84|0;v=N
+80|0;F=N+76|0;y=N+72|0;p=N+68|0;q=N+64|0;w=N+60|0;n=N+56|0;m=N+52|0;k=N+48|0;l=N+44|0;G=N+40|0;K=N+217|0;A=N+36|0;t=N+32|0;x=N+
28|0;D=N+24|0;H=N+20|0;I=N+16|0;z=N+12|0;r=N+8|0;J=N+4|0;M=N;E=N+216|0;c[O>>2]=e;c[g>>2]=f;c[h>>2]=(
c[O>>2]|0)+40+396;c[v>>2]=c[(c[g>>2]|0)+84>>2];c[j>>2]=0;while(1){if((c[j>
;>2]|0)>=6)break;c[F>>2]=11435+((c[j>>2]|0)*13|0);c[y>>2]=(c[F>>2]|0)+12;c[B
x3e;>2]=0;c[C>>2]=0;while(1){if((c[F>>2]|0)>>>0>=(c[y>>2]|0)>>
x3e;0)break;if(!(a[c[F>>2]>>0]|0))break;a[K>>0]=0;c[w>>2]=Dc(c[g>>2]|0,a[c[F
x3e;>2]>>0]|0)|0;do if((c[w>>2]|0?(c[s>>2]=Cb(c[g>>2]|0,c[w>>2]|0,1)|0,(c
[s>>2]|0)==0):0)?(b[(c[v>>2]|0)+108+2>>1]|0)>0:0){c[G>>2]=c[(c[v>>2]|0)+108
+4>>2];c[m>>2]=-1;c[n>>2]=0;c[k>>2]=0;c[l>>2]=0;c[t>>2]=0;c[x>
x3e;2]=-1;c[A>>2]=0;while(1){f=c[m>>2]|0;if((c[A>>2]|0)>=(b[(c[v>>2]|0)+108>
x3e;1]|0))break;c[D>>2]=f;c[x>>2]=b[(c[(c[v>>2]|0)+108+12>>2]|0)+(c[A>>2]<
;<1)>>1];if((c[x>>2]|0)>(c[t>>2]|0)){O=(c[j>>2]|0)==0|(c[j>>2]|0)==2
|(c[j>>2]|0)==3;c[H>>2]=c[t>>2];a:do if(O)while(1){if((c[H>>2]|0)>(c[x>>2
]|0))break a;if(!((c[m>>2]|0)>=0?(c[(c[G>>2]|0)+(c[H>>2]<<3)+4>>2]|0)<
;=(c[n>>2]|0):0)){c[m>>2]=c[H>>2];c[n>>2]=c[(c[G>>2]|0)+(c[H>>2]<
;<3)+4>>2]}c[H>>2]=(c[H>>2]|0)+1}else while(1){if((c[H>>2]|0)>(c[x>>
2]|0))break a;if(!((c[m>>2]|0)>=0?(c[(c[G>>2]|0)+(c[H>>2]<<3)+4>>2]|0)>
;=(c[n>>2]|0):0)){c[m>>2]=c[H>>2];c[n>>2]=c[(c[G>>2]|0)+(c[H>>2]<
;<3)+4>>2]}c[H>>2]=(c[H>>2]|0)+1}while(0);if((c[m>>2]|0)!=(c[D>>2]|0)){c[
k>>2]=c[t>>2];c[l>>2]=c[x>>2]}}c[t>>2]=(c[x>>2]|0)+1;c[A>>
2]=(c[A>>2]|0)+1}if((f|0)>=0){c[I>>2]=c[m>>2];c[z>>2]=c[I>>2];do{if((c[I
x3e;>2]|0)>(c[k>>2]|0))c[I>>2]=(c[I>>2]|0)+-1;else c[I>>2]=c[l>>2];c
[r>>2]=(c[(c[G>>2]|0)+(c[I>>2]<<3)+4>>2]|0)-(c[n>>2]|0);if((c[r>
;>2]|0)<-5|(c[r>>2]|0)>5)break}while((c[I>>2]|0)!=(c[m>>2]|0));do{if((c[z>>
;2]|0)<(c[l>>2]|0))c[z>>2]=(c[z>>2]|0)+1;else c[z>>2]=c[k>>2];c[r>
x3e;2]=(c[(c[G>>2]|0)+(c[z>>2]<<3)+4>>2]|0)-(c[n>>2]|0);if((c[r>>2]|
0)<-5|(c[r>>2]|0)>5)break}while((c[z>>2]|0)!=(c[m>>2]|0));if((a[(c[(c[v>>2]|0)+
108+8>>2]|0)+(c[I>>2]|0)>>0]&3|0)!=1)f=1;else f=(a[(c[(c[v>>2]|0)+108+8>>
2]|0)+(c[z>>2]|0)>>0]&3|0)!=1;a[K>>0]=f&1}f=c[n>>2]|0;if(a[K>>0]|0){
O=c[C>>2]|0;c[C>>2]=O+1;c[L+(O<<2)>>2]=f;break}else{O=c[B>>2]|0;c[B>>
;2]=O+1;c[u+(O<<2)>>2]=f;break}}while(0);c[F>>2]=(c[F>>2]|0)+1}if(!((c[B>>2]|0
)==0&(c[C>>2]|0)==0)){Ql(c[C>>2]|0,L);Ql(c[B>>2]|0,u);c[o>>2]=(c[h>>2]|0)+
220+((c[(c[h>>2]|0)+216>>2]|0)*28|0);c[p>>2]=c[o>>2];c[q>>2]=(c[o>>2
]|0)+12;f=(c[h>>2]|0)+216|0;c[f>>2]=(c[f>>2]|0)+1;f=c[C>>2]|0;do if(c[B>>2]|0){
e=c[u+(((c[B>>2]|0)/2|0)<<2)>>2]|0;if(!f){c[c[q>>2]>>2]=e;c[c[p>>2]
x3e;>2]=e;break}else{c[c[p>>2]>>2]=e;c[c[q>>2]>>2]=c[L+(((c[C>>2]|0)/2|0)
x3c;<2)>>2];break}}else{O=c[L+(((f|0)/2|0)<<2)>>2]|0;c[c[q>>2]>>2]=O;c[c[
p>>2]>>2]=O}while(0);if((c[c[q>>2]>>2]|0)!=(c[c[p>>2]>>2]|0)){c[J>
;>2]=c[c[p>>2]>>2];c[M>>2]=c[c[q>>2]>>2];a[E>>0]=(c[M>>
;2]|0)>(c[J>>2]|0);if((c[j>>2]|0)==0|(c[j>>2]|0)==2)f=1;else f=(c[j>>2]|0)==3;if(f
x26;1^d[E>>0]|0){O=((c[M>>2]|0)+(c[J>>2]|0)|0)/2|0;c[c[p>>2]>>2]=O;c[c[q>
x3e;2]>>2]=O}}c[(c[o>>2]|0)+24>>2]=0;if((c[j>>2]|0)==0|(c[j>>2]|0)==2|(c[j>
;>2]|0)==3){O=(c[o>>2]|0)+24|0;c[O>>2]=c[O>>2]|2}if((c[j>>2]|0)==3){O=(c[o>>
;2]|0)+24|0;c[O>>2]=c[O>>2]|4}}c[j>>2]=(c[j>>2]|0)+1}i=N;return}function Ql(a,b){a=a|0;b
=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[d>>2]=a;c[e>>2]=b;c[f
x3e;>2]=1;while(1){if((c[f>>2]|0)>>>0>=(c[d>>2]|0)>>>0)break;c[g>
;>2]=c[f>>2];while(1){if((c[g>>2]|0)>>>0<=0)break;if((c[(c[e>>2]|0)+(c[g
x3e;>2]<<2)>>2]|0)>(c[(c[e>>2]|0)+((c[g>>2]|0)-1<<2)>>2]|0
))break;c[h>>2]=c[(c[e>>2]|0)+(c[g>>2]<<2)>>2];c[(c[e>>2]|0)+(c[g>
;>2]<<2)>>2]=c[(c[e>>2]|0)+((c[g>>2]|0)-1<<2)>>2];c[(c[e>
x3e;2]|0)+((c[g>>2]|0)-1<<2)>>2]=c[h>>2];c[g>>2]=(c[g>>2]|0)+-1}c[f
x3e;>2]=(c[f>>2]|0)+1}i=j;return}function Rl(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;o=i;i=i
+32|0;e=o+20|0;f=o+16|0;j=o+12|0;m=o+25|0;l=o+24|0;g=o+8|0;k=o+4|0;h=o;c[e>>2]=b;c[f>>2]=d;a[m>>0]=
0;a[l>>0]=1;c[k>>2]=0;c[j>>2]=48;a:while(1){if((c[j>>2]|0)>>>0>57){n
=10;break}c[h>>2]=Dc(c[f>>2]|0,c[j>>2]|0)|0;do if(c[h>>2]|0?(vb(c[f>>2]|0,c[h
x3e;>2]|0,2051,g)|0)==0:0){d=c[g>>2]|0;if(a[m>>0]|0)if((d|0)!=(c[k>>2]|0))break a;else break;
else{c[k>>2]=d;a[m>>0]=1;break}}while(0);c[j>>2]=(c[j>>2]|0)+1}if((n|0)==10){m=a[l>
x3e;0]|0;n=c[e>>2]|0;n=n+32|0;a[n>>0]=m;i=o;return}a[l>>0]=0;m=a[l>>0]|0;n=c[e>>
;2]|0;n=n+32|0;a[n>>0]=m;i=o;return}function Sl(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)+4+20>>2]=c[(c[e>>2]|0)+20>>2];c[(c[f>>
2]|0)+4>>2]=c[c[e>>2]>>2];Tl(c[f>>2]|0,c[e>>2]|0,0);Tl(c[f>>2]|0,c[e
>>2]|0,1);i=d;return}function Tl(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;x=i;i=i+64|0;m=x+60|0;f=x+56|0;n=x+52|0;w=x+48|0;r=x+44|0;p=x+40|0;v=x+36|0;g=x+32|0;h=x+28|0;k=x+24|0;j=x+20|0;
o=x+16|0;q=x+12|0;u=x+8|0;s=x+4|0;t=x;c[m>>2]=b;c[f>>2]=d;c[n>>2]=e;e=c[f>>2]|0;if(!(c[n
>>2]|0)){c[w>>2]=c[e+4>>2];c[r>>2]=c[(c[f>>2]|0)+12>>2]}else{c[w>
;>2]=c[e+8>>2];c[r>>2]=c[(c[f>>2]|0)+16>>2]}c[p>>2]=(c[m>>2]|0)+
40+((c[n>>2]|0)*396|0);if((c[(c[p>>2]|0)+388>>2]|0)==(c[w>>2]|0)?(c[(c[p>>2]|0
)+392>>2]|0)==(c[r>>2]|0):0){i=x;return}c[(c[p>>2]|0)+388>>2]=c[w>>2];c[(c[p
x3e;>2]|0)+392>>2]=c[r>>2];c[g>>2]=(c[m>>2]|0)+40+396;c[h>>2]=0;c[v>
x3e;2]=0;while(1){if((c[v>>2]|0)>>>0>=(c[(c[g>>2]|0)+216>>2]|0)>>>
;0)break;e=c[v>>2]|0;if(c[(c[g>>2]|0)+220+((c[v>>2]|0)*28|0)+24>>2]&4|0){l=9;break}
c[v>>2]=e+1}if((l|0)==9)c[h>>2]=(c[g>>2]|0)+220+(e*28|0);if(c[h>>2]|0?(c[k>>2]=
Mb(c[(c[h>>2]|0)+12>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0,c[j>>2]=(c[k>>2]|
0)+40&-64,(c[n>>2]|0)==1?(c[k>>2]|0)!=(c[j>>2]|0):0):0)c[w>>2]=xb(c[w>>2]|
0,c[j>>2]|0,c[k>>2]|0)|0;c[c[p>>2]>>2]=c[w>>2];c[(c[p>>2]|0)+4>
x3e;2]=c[r>>2];e=c[w>>2]|0;b=(c[m>>2]|0)+4|0;if(!(c[n>>2]|0)){c[b+4>>2]=e;c[(c
[m>>2]|0)+4+12>>2]=c[r>>2]}else{c[b+8>>2]=e;c[(c[m>>2]|0)+4+16>>2]=c
[r>>2]}c[v>>2]=0;while(1){e=c[p>>2]|0;if((c[v>>2]|0)>>>0>=(c[(c[p>
;>2]|0)+8>>2]|0)>>>0)break;c[o>>2]=e+12+((c[v>>2]|0)*12|0);m=Mb(c[c[o>>
;2]>>2]|0,c[w>>2]|0)|0;c[(c[o>>2]|0)+4>>2]=m;c[(c[o>>2]|0)+8>>2]=c[(
c[o>>2]|0)+4>>2];c[v>>2]=(c[v>>2]|0)+1}o=(Mb(c[e+208>>2]|0,c[w>>2]|0
)|0)<40&255;a[(c[p>>2]|0)+212>>0]=o;if((c[n>>2]|0)!=1){i=x;return}c[v>>2]=0;while
(1){if((c[v>>2]|0)>>>0>=(c[(c[p>>2]|0)+216>>2]|0)>>>0)break;c[q
>>2]=(c[p>>2]|0)+220+((c[v>>2]|0)*28|0);o=Mb(c[c[q>>2]>>2]|0,c[w>>2]|
0)|0;c[(c[q>>2]|0)+4>>2]=o+(c[r>>2]|0);c[(c[q>>2]|0)+8>>2]=c[(c[q>>2
]|0)+4>>2];o=Mb(c[(c[q>>2]|0)+12>>2]|0,c[w>>2]|0)|0;c[(c[q>>2]|0)+12+4>
x3e;2]=o+(c[r>>2]|0);c[(c[q>>2]|0)+12+8>>2]=c[(c[q>>2]|0)+12+4>>2];o=(c[q>
;>2]|0)+24|0;c[o>>2]=c[o>>2]&-2;c[u>>2]=Mb((c[c[q>>2]>>2]|0)-(c[(c[q
>>2]|0)+12>>2]|0)|0,c[w>>2]|0)|0;if((c[u>>2]|0)<=48&(c[u>>2]|0)>
;=-48){c[s>>2]=(c[(c[q>>2]|0)+12>>2]|0)-(c[c[q>>2]>>2]|0);c[t>>2]=c[
s>>2];if((c[s>>2]|0)<0)c[t>>2]=0-(c[t>>2]|0);c[t>>2]=Mb(c[t>>2]|
0,c[w>>2]|0)|0;do if((c[t>>2]|0)>=32){e=c[t>>2]|0;if((c[t>>2]|0)<64){c[t>
x3e;2]=32+(e-32+16&-32);break}else{c[t>>2]=e+32&-64;break}}else c[t>>2]=0;while(0);if((c[s>
x3e;2]|0)<0)c[t>>2]=0-(c[t>>2]|0);c[(c[q>>2]|0)+8>>2]=(c[(c[q>>2]|0)+4>
;>2]|0)+32&-64;c[(c[q>>2]|0)+12+8>>2]=(c[(c[q>>2]|0)+8>>2]|0)+(c[t>>
2]|0);o=(c[q>>2]|0)+24|0;c[o>>2]=c[o>>2]|1}c[v>>2]=(c[v>>2]|0)+1}i=x;return}function
Ul(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;d=j+20|0;k=j+16|0;f=j+12|0;h=j+8|0;g=j+4|0;e=j;c[d>>
2]=a;c[k>>2]=b;c[e>>2]=c[(c[k>>2]|0)+4>>2];Dl(c[d>>2]|0,c[k>>2]|0);c
[(c[d>>2]|0)+4>>2]=c[(c[k>>2]|0)+40>>2];c[(c[d>>2]|0)+8>>2]=c[(c[k
x3e;>2]|0)+40+4>>2];c[(c[d>>2]|0)+12>>2]=c[(c[k>>2]|0)+40+396>>2];c[(c[d
x3e;>2]|0)+16>>2]=c[(c[k>>2]|0)+40+396+4>>2];c[f>>2]=c[(c[k>>2]|0)+4+20
x3e;>2];c[h>>2]=c[(c[d>>2]|0)+104>>2];c[g>>2]=0;if((c[f>>2]|0)==2|(c[f>
;>2]|0)==3)c[g>>2]=c[g>>2]|1;if((c[f>>2]|0)==2|(c[f>>2]|0)==4)c[g>>2]=c[g
>>2]|2;if((c[f>>2]|0)!=1)c[g>>2]=c[g>>2]|4;if((c[f>>2]|0)==2)c[g>>2]=
c[g>>2]|8;if((c[f>>2]|0)!=1?(c[(c[e>>2]|0)+12>>2]&1|0)==0:0){k=c[h>>2]|0;
h=c[d>>2]|0;h=h+104|0;c[h>>2]=k;h=c[g>>2]|0;k=c[d>>2]|0;k=k+108|0;c[k>>2]=h;i=
j;return 0}c[h>>2]=c[h>>2]|1;k=c[h>>2]|0;h=c[d>>2]|0;h=h+104|0;c[h>>2]=k;h=c[g
>>2]|0;k=c[d>>2]|0;k=k+108|0;c[k>>2]=h;i=j;return 0}function Vl(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;f=k+16|0;g=k+12|0;e=k+8|0;j=k+4|0;h=k;c[f>>2]=a;c[g>>2]=b;c[e>>2]=
d;c[j>>2]=Il(c[f>>2]|0,c[g>>2]|0)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}if
((c[(c[f>>2]|0)+104>>2]&1|0)==0?(c[j>>2]=Wl(c[f>>2]|0,0)|0,c[j>>2]|0):0){
j=c[j>>2]|0;i=k;return j|0}do if(!(c[(c[f>>2]|0)+104>>2]&2)){c[j>>2]=Wl(c[f>
x3e;2]|0,1)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}else{Zl(c[f>>2]|0,c[e>>2]|0);break
}}while(0);c[h>>2]=0;while(1){if((c[h>>2]|0)>=2)break;if((c[h>>2]|0)==0?!(c[(c[f>>2
]|0)+104>>2]&1|0):0)e=13;else e=11;if(((e|0)==11?(e=0,(c[h>>2]|0)==1):0)?(c[(c[f>>2]|0)+104
x3e;>2]&2|0)==0:0)e=13;if((e|0)==13){_l(c[f>>2]|0,c[h>>2]|0);dm(c[f>>2]|0,c[h>>
;2]|0);em(c[f>>2]|0,c[h>>2]|0);fm(c[f>>2]|0,c[h>>2]|0)}c[h>>2]=(c[h>>
;2]|0)+1}im(c[f>>2]|0,c[g>>2]|0);j=c[j>>2]|0;i=k;return j|0}function Wl(a,b){a=a|0;b=b|0;var d=0,e
=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Kl(c[d>>2]|0,c[e
>>2]|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}Ml(c[d>>2]|0,c[e>>2]|0);c[f
>>2]=Xl(c[d>>2]|0,c[e>>2]|0)|0;a=c[f>>2]|0;i=g;return a|0}function Xl(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
;M=i;i=i+128|0;g=M+112|0;h=M+108|0;l=M+104|0;D=M+100|0;t=M+96|0;j=M+92|0;k=M+88|0;w=M+84|0;H=M+80|0;K=M+76|0;u=M+72|0;p=M+68|0;v
=M+64|0;s=M+60|0;r=M+56|0;n=M+52|0;m=M+48|0;o=M+44|0;q=M+40|0;C=M+36|0;z=M+32|0;E=M+28|0;G=M+24|0;L=M+20|0;y=M+16|0;F=M+116|0;A=
M+12|0;I=M+8|0;B=M+4|0;J=M;c[g>>2]=e;c[h>>2]=f;c[l>>2]=(c[g>>2]|0)+48+((c[h>>2
]|0)*28|0);c[D>>2]=0;c[t>>2]=c[c[g>>2]>>2];c[j>>2]=(c[(c[g>>2]|0)+112
>>2]|0)+40+((c[h>>2]|0)*396|0);c[k>>2]=c[(c[l>>2]|0)+8>>2];c[w>>2]=(
c[k>>2]|0)+((c[c[l>>2]>>2]|0)*52|0);c[(c[l>>2]|0)+12>>2]=0;f=c[g>>2]|
0;if(!(c[h>>2]|0))f=c[f+4>>2]|0;else f=c[f+12>>2]|0;c[u>>2]=f;c[K>>2]=(c[h>
;>2]|0)==0?2:1;if(!(c[h>>2]|0))c[v>>2]=Vb(64,c[(c[g>>2]|0)+12>>2]|0)|0;else c[v>
;>2]=0;j=Mb(c[(c[j>>2]|0)+204>>2]|0,c[u>>2]|0)|0;c[p>>2]=j;c[p>>2]=(c[p
x3e;>2]|0)>16?16:j;c[p>>2]=Vb(c[p>>2]|0,c[u>>2]|0)|0;c[H>>2]=c[k>>2];
a:while(1){if((c[H>>2]|0)>>>0>=(c[w>>2]|0)>>>0)break;c[s>>2]=0;
do if((b[(c[H>>2]|0)+8>>1]|0)>=(c[v>>2]|0)){if(c[(c[H>>2]|0)+24>>2]|0?(b[(
c[H>>2]|0)+8>>1]<<1|0)<((c[v>>2]|0)*3|0):0)break;c[r>>2]=0;while(1){if((c
[r>>2]|0)>=(c[(c[l>>2]|0)+12>>2]|0))break;c[n>>2]=(c[(c[l>>2]|0)+20>
x3e;2]|0)+((c[r>>2]|0)*48|0);c[m>>2]=(b[(c[H>>2]|0)+2>>1]|0)-(b[c[n>>2]>
x3e;1]|0);if((c[m>>2]|0)<0)c[m>>2]=0-(c[m>>2]|0);if((c[m>>2]|0)<(c[p>>
;2]|0)?(a[(c[n>>2]|0)+13>>0]|0)==(a[(c[H>>2]|0)+1>>0]|0):0){x=18;break}c[r>>2]=(
c[r>>2]|0)+1}if((x|0)==18){x=0;c[s>>2]=c[n>>2]}if(c[s>>2]|0){c[(c[H>>2]|0)+16
x3e;>2]=c[(c[s>>2]|0)+40>>2];c[(c[(c[s>>2]|0)+44>>2]|0)+16>>2]=c[H>
x3e;2];c[(c[s>>2]|0)+44>>2]=c[H>>2];break}c[D>>2]=Yl(c[l>>2]|0,b[(c[H>>
;2]|0)+2>>1]|0,a[(c[H>>2]|0)+1>>0]|0,c[t>>2]|0,o)|0;if(c[D>>2]|0){x=66;break a
}f=c[o>>2]|0;e=f+48|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(e|0));c[(c[o>>2]|0)+40>>2]=
c[H>>2];c[(c[o>>2]|0)+44>>2]=c[H>>2];b[c[o>>2]>>1]=b[(c[H>>
;2]|0)+2>>1]|0;a[(c[o>>2]|0)+13>>0]=a[(c[H>>2]|0)+1>>0]|0;k=Mb(b[(c[H>>
;2]|0)+2>>1]|0,c[u>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=k;c[(c[o>>2]|0)+4>>2
]=k;c[(c[H>>2]|0)+16>>2]=c[H>>2]}while(0);c[H>>2]=(c[H>>2]|0)+52}if((x|0)==66){
L=c[D>>2]|0;i=M;return L|0}c[q>>2]=c[(c[l>>2]|0)+20>>2];c[C>>2]=(c[q>>
;2]|0)+((c[(c[l>>2]|0)+12>>2]|0)*48|0);c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)
x3e;>>0>=(c[C>>2]|0)>>>0)break;c[H>>2]=c[(c[z>>2]|0)+40>>2
];if(c[H>>2]|0)do{c[(c[H>>2]|0)+12>>2]=c[z>>2];c[H>>2]=c[(c[H>>2]|0)+
16>>2]}while((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));c[z>>2]=(c[z>>2]|
0)+48}c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)>>>0>=(c[C>>2]|0)>
x3e;>0)break;c[E>>2]=0;c[G>>2]=0;c[L>>2]=0;c[y>>2]=0;c[H>>2]=c[(c[z>
x3e;2]|0)+40>>2];do{if(d[c[H>>2]>>0]&1|0)c[E>>2]=(c[E>>2]|0)+1;else c[G
x3e;>2]=(c[G>>2]|0)+1;f=(b[(c[H>>2]|0)+6>>1]|0)-(b[(c[H>>2]|0)+4>>1]|0)|0
;if((a[(c[H>>2]|0)+1>>0]|0)==(c[K>>2]|0))c[L>>2]=(c[L>>2]|0)+f;else c[y>
x3e;2]=(c[y>>2]|0)+f;if(c[(c[H>>2]|0)+24>>2]|0?c[(c[(c[H>>2]|0)+24>>2]|0)+12
x3e;>2]|0:0)f=(c[(c[(c[H>>2]|0)+24>>2]|0)+12>>2]|0)!=(c[z>>2]|0);else f=0;a[F>
x3e;0]=f&1;if(c[(c[H>>2]|0)+20>>2]|0?c[(c[(c[H>>2]|0)+20>>2]|0)+12>>2]|0:
0)x=45;else x=44;if((x|0)==44?(x=0,d[F>>0]|0):0)x=45;do if((x|0)==45){c[A>>2]=c[(c[z>>2]|0)+24>
;>2];c[I>>2]=c[(c[H>>2]|0)+20>>2];if(a[F>>0]|0){c[I>>2]=c[(c[H>>
;2]|0)+24>>2];c[A>>2]=c[(c[z>>2]|0)+28>>2]}if(c[A>>2]|0){c[B>>2]=(b[
c[z>>2]>>1]|0)-(b[c[A>>2]>>1]|0);if((c[B>>2]|0)<0)c[B>>2]=0-(c[
B>>2]|0);c[J>>2]=(b[(c[H>>2]|0)+2>>1]|0)-(b[(c[I>>2]|0)+2>>1]|0);if((
c[J>>2]|0)<0)c[J>>2]=0-(c[J>>2]|0);if((c[J>>2]|0)<(c[B>>2]|0))c[A>
;>2]=c[(c[I>>2]|0)+12>>2]}else c[A>>2]=c[(c[I>>2]|0)+12>>2];f=c[A>
x3e;2]|0;e=c[z>>2]|0;if(a[F>>0]|0){c[e+28>>2]=f;x=(c[A>>2]|0)+12|0;a[x>>0]=d[x
>>0]|2;break}else{c[e+24>>2]=f;break}}while(0);c[H>>2]=c[(c[H>>2]|0)+16>>2]}while
((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));a[(c[z>>2]|0)+12>>0]=0;if((c[E>
x3e;2]|0)>0?(c[E>>2]|0)>=(c[G>>2]|0):0){x=(c[z>>2]|0)+12|0;a[x>>0]=d[x>
x3e;0]|1}if(c[(c[z>>2]|0)+28>>2]|0?c[(c[z>>2]|0)+24>>2]|0:0)c[(c[z>>2]|0)+28
x3e;>2]=0;c[z>>2]=(c[z>>2]|0)+48}L=c[D>>2]|0;i=M;return L|0}function Yl(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,t=0,u=0;u=i;i=i+48|0;n=u+40|0;o=u+36|0;p=u+32|0;j=u+28|0;q=u+24|
0;t=u+20|0;r=u+16|0;s=u+12|0;m=u+8|0;l=u+4|0;k=u;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[j>>2]=g
;c[q>>2]=h;c[t>>2]=0;c[r>>2]=0;do if((c[(c[n>>2]|0)+12>>2]|0)>=(c[(c[n>
;>2]|0)+16>>2]|0)){c[m>>2]=c[(c[n>>2]|0)+16>>2];c[l>>2]=c[m>>2];
c[k>>2]=44739242;if((c[m>>2]|0)>=(c[k>>2]|0)){c[t>>2]=64;r=c[r>>2]|0;s=c[
q>>2]|0;c[s>>2]=r;t=c[t>>2]|0;i=u;return t|0}c[l>>2]=(c[l>>2]|0)+((c[l>
x3e;2]>>2)+4);if(!((c[l>>2]|0)>=(c[m>>2]|0)?(c[l>>2]|0)<=(c[k>>2]|0):
0))c[l>>2]=c[k>>2];m=hc(c[j>>2]|0,48,c[m>>2]|0,c[l>>2]|0,c[(c[n>>2]|
0)+20>>2]|0,t)|0;c[(c[n>>2]|0)+20>>2]=m;if(c[t>>2]|0){r=c[r>>2]|0;s=c[q>
x3e;2]|0;c[s>>2]=r;t=c[t>>2]|0;i=u;return t|0}else{c[(c[n>>2]|0)+16>>2]=c[l>>2
];break}}while(0);c[s>>2]=c[(c[n>>2]|0)+20>>2];c[r>>2]=(c[s>>2]|0)+((c[(c[n>
;>2]|0)+12>>2]|0)*48|0);while(1){if((c[r>>2]|0)>>>0<=(c[s>>2]|0)>>
;>0)break;if((b[(c[r>>2]|0)+-48>>1]|0)<(c[o>>2]|0))break;if((b[(c[r>>2]|0)+-48
>>1]|0)==(c[o>>2]|0)?(c[p>>2]|0)==(c[(c[n>>2]|0)+24>>2]|0):0)break;j=c[r>
x3e;2]|0;h=(c[r>>2]|0)+-48|0;d=j+48|0;do{c[j>>2]=c[h>>2];j=j+4|0;h=h+4|0}while((j|0)<(d|0));c
[r>>2]=(c[r>>2]|0)+-48}j=(c[n>>2]|0)+12|0;c[j>>2]=(c[j>>2]|0)+1;j=c[r>>
;2]|0;d=j+48|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(d|0));b[c[r>>2]>>1]=c[o>>2];a[(c[r
>>2]|0)+13>>0]=c[p>>2];r=c[r>>2]|0;s=c[q>>2]|0;c[s>>2]=r;t=c[t>
x3e;2]|0;i=u;return t|0}function Zl(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;v=i;i=i
+64|0;w=v+44|0;g=v+40|0;h=v+36|0;o=v+32|0;p=v+28|0;t=v+24|0;u=v+20|0;j=v+16|0;k=v+12|0;l=v+8|0;m=v+4|0;r=v+50|0;q=v+49|0;n=v;s=v
+48|0;c[w>>2]=e;c[g>>2]=f;c[h>>2]=(c[w>>2]|0)+48+28;c[o>>2]=c[(c[h>>
2]|0)+20>>2];c[p>>2]=(c[o>>2]|0)+((c[(c[h>>2]|0)+12>>2]|0)*48|0);c[t>>
;2]=(c[g>>2]|0)+40+396;c[u>>2]=c[c[t>>2]>>2];while(1){if((c[o>>2]|0)>>
;>0>=(c[p>>2]|0)>>>0)break;c[k>>2]=0;w=Mb(((c[(c[g>>2]|0)+36>>2
]|0)>>>0)/40|0,c[u>>2]|0)|0;c[l>>2]=w;c[l>>2]=(c[l>>2]|0)>32?32:w;c[
j>>2]=0;while(1){if((c[j>>2]|0)>=6)break;c[m>>2]=(c[t>>2]|0)+220+((c[j>>2
]|0)*28|0);if(c[(c[m>>2]|0)+24>>2]&1|0?(a[r>>0]=(c[(c[m>>2]|0)+24>>2]&
;2|0)!=0,a[q>>0]=(a[(c[o>>2]|0)+13>>0]|0)==(c[(c[h>>2]|0)+24>>2]|0),d[r>
x3e;0]^d[q>>0]|0):0){c[n>>2]=(b[c[o>>2]>>1]|0)-(c[c[m>>2]>>2]|0);if((
c[n>>2]|0)<0)c[n>>2]=0-(c[n>>2]|0);c[n>>2]=Mb(c[n>>2]|0,c[u>>2]|
0)|0;if((c[n>>2]|0)<(c[l>>2]|0)){c[l>>2]=c[n>>2];c[k>>2]=c[m>>2
]}if((c[n>>2]|0?(d[(c[o>>2]|0)+12>>0]&1|0)!=0:0)?(a[s>>0]=(b[c[o>>2]>
;>1]|0)<(c[c[m>>2]>>2]|0),d[r>>0]^d[s>>0]|0):0){c[m>>2]=(c[t>
x3e;2]|0)+220+((c[j>>2]|0)*28|0);c[n>>2]=(b[c[o>>2]>>1]|0)-(c[(c[m>>2]|0)+12
x3e;>2]|0);if((c[n>>2]|0)<0)c[n>>2]=0-(c[n>>2]|0);c[n>>2]=Mb(c[n>>2]|
0,c[u>>2]|0)|0;if((c[n>>2]|0)<(c[l>>2]|0)){c[l>>2]=c[n>>2];c[k>>
;2]=(c[m>>2]|0)+12}}}c[j>>2]=(c[j>>2]|0)+1}if(c[k>>2]|0)c[(c[o>>2]|0)+20>
x3e;2]=c[k>>2];c[o>>2]=(c[o>>2]|0)+48}i=v;return}function _l(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,D=0,E=0,F=0,G=0,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;U=i;i=i+176|0;M=U+160|0;j=U+156|0;V=U+152|0;T=U+148|0;S=U+144|0;K=U+140|0;R=U+136|0;O=U+132|0;J=U+128|0;
f=U+124|0;g=U+120|0;h=U+116|0;t=U+112|0;y=U+108|0;w=U+104|0;k=U+100|0;m=U+96|0;u=U+92|0;v=U+88|0;B=U+84|0;p=U+80|0;A=U+76|0;z=U+
72|0;x=U+68|0;l=U+64|0;n=U+60|0;o=U+56|0;r=U+52|0;s=U+48|0;C=U+44|0;q=U+40|0;G=U+36|0;H=U+32|0;I=U+28|0;E=U+24|0;F=U+20|0;L=U+16
|0;D=U+12|0;Q=U+8|0;P=U+4|0;N=U;c[M>>2]=b;c[j>>2]=e;c[V>>2]=(c[M>>2]|0)+48+((c[j>
x3e;2]|0)*28|0);c[T>>2]=c[(c[V>>2]|0)+20>>2];c[S>>2]=(c[T>>2]|0)+((c[(c[V>
;>2]|0)+12>>2]|0)*48|0);c[O>>2]=0;c[J>>2]=0;a:do if((c[j>>2]|0)==1){c[R>>
2]=c[T>>2];while(1){if((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break a
;if(!((d[(c[R>>2]|0)+12>>0]|0)&4)){c[f>>2]=c[(c[R>>2]|0)+20>>2];c[g>
x3e;2]=0;c[h>>2]=c[(c[R>>2]|0)+24>>2];if(!(c[f>>2]|0)){if(c[h>>2]|0?c[(c[h>
;>2]|0)+20>>2]|0:0){c[f>>2]=c[(c[h>>2]|0)+20>>2];c[g>>2]=c[h>>2
];c[h>>2]=c[R>>2]}}else c[g>>2]=c[R>>2];if(c[g>>2]|0){c[(c[g>>2]|0)+
8>>2]=c[(c[f>>2]|0)+8>>2];V=(c[g>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if(
c[h>>2]|0?(c[(c[h>>2]|0)+20>>2]|0)==0:0){$l(c[M>>2]|0,c[j>>2]|0,c[g>>
;2]|0,c[h>>2]|0);V=(c[h>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4}if(!(c[O>>2]|0))c[O>
;>2]=c[R>>2]}}c[R>>2]=(c[R>>2]|0)+48}}while(0);c[R>>2]=c[T>>2];while(1){if
((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;do if(!((d[(c[R>>2]|0)+
12>>0]|0)&4)){c[t>>2]=c[(c[R>>2]|0)+24>>2];if(!(c[t>>2]|0)){c[J>>
;2]=(c[J>>2]|0)+1;break}if(c[(c[t>>2]|0)+20>>2]|0){$l(c[M>>2]|0,c[j>>2]|0,c[t
x3e;>2]|0,c[R>>2]|0);V=(c[R>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;break}if(!(c[O>>
;2]|0)){c[y>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0);c[k>>
;2]=am(c[M>>2]|0,c[j>>2]|0,c[y>>2]|0,d[(c[R>>2]|0)+12>>0]|0,d[(c[t>>
2]|0)+12>>0]|0)|0;if((c[k>>2]|0)<=64){c[p>>2]=32;c[B>>2]=32}else{c[B>>2]=
38;c[p>>2]=26}f=c[(c[R>>2]|0)+4>>2]|0;if((c[k>>2]|0)<96){c[w>>2]=f+(c[y
x3e;>2]>>1);c[m>>2]=(c[w>>2]|0)+32&-64;c[u>>2]=(c[w>>2]|0)-((c[m>
;>2]|0)-(c[B>>2]|0));if((c[u>>2]|0)<0)c[u>>2]=0-(c[u>>2]|0);c[v>>2]=(
c[w>>2]|0)-((c[m>>2]|0)+(c[p>>2]|0));if((c[v>>2]|0)<0)c[v>>2]=0-(c[v>
;>2]|0);if((c[u>>2]|0)<(c[v>>2]|0))c[m>>2]=(c[m>>2]|0)-(c[B>>2]|0);else
c[m>>2]=(c[m>>2]|0)+(c[p>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[m>>2]|0)-((c
[k>>2]|0)/2|0);c[(c[t>>2]|0)+8>>2]=(c[(c[R>>2]|0)+8>>2]|0)+(c[k>>2]|
0)}else c[(c[R>>2]|0)+8>>2]=f+32&-64;c[O>>2]=c[R>>2];V=(c[R>>2]|0)+12|0;a
[V>>0]=d[V>>0]|0|4;$l(c[M>>2]|0,c[j>>2]|0,c[R>>2]|0,c[t>>2]|0);break
}c[A>>2]=(c[(c[O>>2]|0)+8>>2]|0)+((c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2
]|0)+4>>2]|0));c[z>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|
0);c[x>>2]=(c[A>>2]|0)+(c[z>>2]>>1);c[l>>2]=am(c[M>>2]|0,c[j>
x3e;2]|0,c[z>>2]|0,d[(c[R>>2]|0)+12>>0]|0,d[(c[t>>2]|0)+12>>0]|0)|0;do if((d[(
c[t>>2]|0)+12>>0]|0)&4|0)c[(c[R>>2]|0)+8>>2]=(c[(c[t>>2]|0)+8>>
2]|0)-(c[l>>2]|0);else{if((c[l>>2]|0)>=96){c[A>>2]=(c[(c[O>>2]|0)+8>>2]|0
)+((c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2]|0)+4>>2]|0));c[z>>2]=(c[(c[t>>
;2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0);c[x>>2]=(c[A>>2]|0)+(c[z>>2]
x3e;>1);c[l>>2]=am(c[M>>2]|0,c[j>>2]|0,c[z>>2]|0,d[(c[R>>2]|0)+12>
x3e;0]|0,d[(c[t>>2]|0)+12>>0]|0)|0;c[n>>2]=(c[A>>2]|0)+32&-64;c[r>>2]=(c[
n>>2]|0)+(c[l>>2]>>1)-(c[x>>2]|0);if((c[r>>2]|0)<0)c[r>>2]=0-(c
[r>>2]|0);c[o>>2]=((c[A>>2]|0)+(c[z>>2]|0)+32&-64)-(c[l>>2]|0);c[s>
x3e;2]=(c[o>>2]|0)+(c[l>>2]>>1)-(c[x>>2]|0);if((c[s>>2]|0)<0)c[s>>
;2]=0-(c[s>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[r>>2]|0)<(c[s>>2]|0)?c[n>
x3e;2]|0:c[o>>2]|0;c[(c[t>>2]|0)+8>>2]=(c[(c[R>>2]|0)+8>>2]|0)+(c[l>>
;2]|0);break}c[n>>2]=(c[x>>2]|0)+32&-64;if((c[l>>2]|0)<=64){c[q>>2]=32;c[C>
;>2]=32}else{c[C>>2]=38;c[q>>2]=26}c[r>>2]=(c[x>>2]|0)-((c[n>>2]|0)-(c[C
x3e;>2]|0));if((c[r>>2]|0)<0)c[r>>2]=0-(c[r>>2]|0);c[s>>2]=(c[x>>2]|
0)-((c[n>>2]|0)+(c[q>>2]|0));if((c[s>>2]|0)<0)c[s>>2]=0-(c[s>>2]|0);if((c
[r>>2]|0)<(c[s>>2]|0))c[n>>2]=(c[n>>2]|0)-(c[C>>2]|0);else c[n>>
;2]=(c[n>>2]|0)+(c[q>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[n>>2]|0)-((c[l>>2
]|0)/2|0);c[(c[t>>2]|0)+8>>2]=(c[n>>2]|0)+((c[l>>2]|0)/2|0)}while(0);V=(c[R>>2
]|0)+12|0;a[V>>0]=d[V>>0]|0|4;V=(c[t>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if((c[R
x3e;>2]|0)>>>0>(c[T>>2]|0)>>>0?(c[(c[R>>2]|0)+8>>2]|0)<
;(c[(c[R>>2]|0)+-48+8>>2]|0):0)c[(c[R>>2]|0)+8>>2]=c[(c[R>>2]|0)+-48+8>
x3e;2]}while(0);c[R>>2]=(c[R>>2]|0)+48}c[K>>2]=((c[S>>2]|0)-(c[T>>2]|0)|0)/48|
0;if((c[j>>2]|0)==0?(c[K>>2]|0)==6|(c[K>>2]|0)==12:0){f=c[T>>2]|0;if((c[K>>2]|
0)==6){c[G>>2]=f;c[H>>2]=(c[T>>2]|0)+96;c[I>>2]=(c[T>>2]|0)+192}else{c[G>
x3e;2]=f+48;c[H>>2]=(c[T>>2]|0)+240;c[I>>2]=(c[T>>2]|0)+432}c[E>>2]=(c[(c[H>
;>2]|0)+4>>2]|0)-(c[(c[G>>2]|0)+4>>2]|0);c[F>>2]=(c[(c[I>>2]|0)+4>
x3e;2]|0)-(c[(c[H>>2]|0)+4>>2]|0);c[L>>2]=(c[E>>2]|0)-(c[F>>2]|0);if((c[L>
;>2]|0)<0)c[L>>2]=0-(c[L>>2]|0);if((c[L>>2]|0)<8){c[D>>2]=(c[(c[I>
x3e;2]|0)+8>>2]|0)-((c[(c[H>>2]|0)+8>>2]<<1)-(c[(c[G>>2]|0)+8>>2]|0));
V=(c[I>>2]|0)+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0);if(c[(c[I>>2]|0)+24>>
;2]|0){V=(c[(c[I>>2]|0)+24>>2]|0)+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0)}if((c[K
x3e;>2]|0)==12){V=(c[T>>2]|0)+384+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0);V=(c[T>
x3e;2]|0)+528+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0)}V=(c[I>>2]|0)+12|0;a[V>>0]=d
[V>>0]|0|4;if(c[(c[I>>2]|0)+24>>2]|0){V=(c[(c[I>>2]|0)+24>>2]|0)+12|0;a[V>
;>0]=d[V>>0]|0|4}}}if((c[J>>2]|0)==0&(c[O>>2]|0)!=0){i=U;return}c[R>>2]=c[T>
;>2];while(1){if((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;if(!((d[(c[R
>>2]|0)+12>>0]|0)&4)){c[Q>>2]=1e3;if(c[(c[R>>2]|0)+28>>2]|0?(c[Q>>
;2]=(c[(c[(c[R>>2]|0)+28>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0),(c[Q>>
;2]|0)<0):0)c[Q>>2]=0-(c[Q>>2]|0);do if((c[Q>>2]|0)<80)cm(c[M>>2]|0,c[(c[R>
;>2]|0)+28>>2]|0,c[R>>2]|0);else{f=c[R>>2]|0;if(!(c[O>>2]|0)){c[(c[R>>2]|
0)+8>>2]=(c[f+4>>2]|0)+32&-64;c[O>>2]=c[R>>2];break}c[P>>2]=f+-48;while(1
){if((c[P>>2]|0)>>>0<(c[T>>2]|0)>>>0)break;if((d[(c[P>>2]|0)+12
>>0]|0)&4|0)break;c[P>>2]=(c[P>>2]|0)+-48}c[N>>2]=(c[R>>2]|0)+48;while(1){
if((c[N>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;if((d[(c[N>>2]|0)+12
x3e;>0]|0)&4|0)break;c[N>>2]=(c[N>>2]|0)+48}if((((c[P>>2]|0)>>>0>=(c
[T>>2]|0)>>>0?(c[P>>2]|0)>>>0<(c[R>>2]|0)>>>0:0)?(
c[N>>2]|0)>>>0<(c[S>>2]|0)>>>0:0)?(c[N>>2]|0)>>>
0>(c[R>>2]|0)>>>0:0){f=c[(c[P>>2]|0)+8>>2]|0;e=c[R>>2]|0;if((c[(c[N
x3e;>2]|0)+4>>2]|0)==(c[(c[P>>2]|0)+4>>2]|0)){c[e+8>>2]=f;break}else{V=f+(xb((c[e+4
>>2]|0)-(c[(c[P>>2]|0)+4>>2]|0)|0,(c[(c[N>>2]|0)+8>>2]|0)-(c[(c[P>>2
]|0)+8>>2]|0)|0,(c[(c[N>>2]|0)+4>>2]|0)-(c[(c[P>>2]|0)+4>>2]|0)|0)|0)|0;c[(c[R
>>2]|0)+8>>2]=V;break}}c[(c[R>>2]|0)+8>>2]=(c[(c[O>>2]|0)+8>>2]|0)+((
c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2]|0)+4>>2]|0)+16&-32)}while(0);V=(c[R>>2
]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if((c[R>>2]|0)>>>0>(c[T>>2]|0)>
x3e;>0?(c[(c[R>>2]|0)+8>>2]|0)<(c[(c[R>>2]|0)+-48+8>>2]|0):0)c[(c[R>>
;2]|0)+8>>2]=c[(c[R>>2]|0)+-48+8>>2];if((((c[R>>2]|0)+48|0)>>>0<(c[S
>>2]|0)>>>0?(d[(c[R>>2]|0)+48+12>>0]|0)&4|0:0)?(c[(c[R>>2]|0)+8>
;>2]|0)>(c[(c[R>>2]|0)+48+8>>2]|0):0)c[(c[R>>2]|0)+8>>2]=c[(c[R>>2]|
0)+48+8>>2]}c[R>>2]=(c[R>>2]|0)+48}i=U;return}function $l(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;g=i;i=i+32|0;n=g+20|0;m=g+16|0;k=g+12|0;h=g+8|0;l=g+4|0;j=g;c[n>>2]=a;c[m>>2]=b;c[k
>>2]=e;c[h>>2]=f;c[l>>2]=(c[(c[h>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+4>
;>2]|0);c[j>>2]=am(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,d[(c[k>>2]|0)+12>
x3e;0]|0,d[(c[h>>2]|0)+12>>0]|0)|0;c[(c[h>>2]|0)+8>>2]=(c[(c[k>>2]|0)+8>
x3e;2]|0)+(c[j>>2]|0);i=g;return}function am(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;u=i;i=i+64|0;q=u+52|0;j=u+48|0;v=u+44|0;h=u+40|0;o=u+36|0;k=u+32|0;w=u+28|0;p=u+24|0;s=u+20|0;t=
u+16|0;n=u+12|0;r=u+8|0;m=u+4|0;l=u;c[j>>2]=a;c[v>>2]=b;c[h>>2]=e;c[o>>2]=f;c[k>>
;2]=g;c[w>>2]=c[(c[j>>2]|0)+112>>2];c[p>>2]=(c[w>>2]|0)+40+((c[v>>2]|
0)*396|0);c[s>>2]=c[h>>2];c[t>>2]=0;c[n>>2]=(c[v>>2]|0)==1&1;if(c[(c[j>
;>2]|0)+108>>2]&4|0?(d[(c[p>>2]|0)+212>>0]|0|0)==0:0){if((c[s>>2]|0)<0){c
[s>>2]=0-(c[h>>2]|0);c[t>>2]=1}if(c[n>>2]|0?!(c[(c[j>>2]|0)+108>>2]
x26;2|0):0)b=10;else b=8;do if((b|0)==8){if((c[n>>2]|0)==0?(c[(c[j>>2]|0)+108>>2]&1|0)==0:0){
b=10;break}c[m>>2]=c[s>>2];c[s>>2]=bm((c[p>>2]|0)+12|0,c[(c[p>>2]|0)+8>
x3e;2]|0,c[s>>2]|0)|0;if(c[n>>2]|0)if((c[s>>2]|0)>=64){c[s>>2]=(c[s>>2]|0
)+16&-64;break}else{c[s>>2]=64;break}h=c[s>>2]|0;if(c[(c[j>>2]|0)+108>>2]&8|0)
if((h|0)<64){c[s>>2]=64;break}else{c[s>>2]=(c[s>>2]|0)+32&-64;break}f=c[s>>2]|
0;if((h|0)<48){c[s>>2]=f+64>>1;break}h=c[s>>2]|0;if((f|0)>=128){c[s>>2]=h+32
x26;-64;break}c[s>>2]=h+22&-64;c[l>>2]=(c[s>>2]|0)-(c[m>>2]|0);if((c[l>>2
]|0)<0)c[l>>2]=0-(c[l>>2]|0);if((c[l>>2]|0)>=16?(c[s>>2]=c[m>>2],(c[
s>>2]|0)<48):0)c[s>>2]=(c[s>>2]|0)+64>>1}while(0);do if((b|0)==10?!((c[k>>
;2]&2|0)!=0&(c[n>>2]|0)!=0&(c[s>>2]|0)<192):0){h=c[s>>2]|0;if(c[o>>2
]&1|0){if((h|0)<80)c[s>>2]=64}else if((h|0)<56)c[s>>2]=56;if((c[(c[p>>2]|0)+8>
x3e;2]|0)>>>0>0){c[r>>2]=(c[s>>2]|0)-(c[(c[p>>2]|0)+12+4>>2]|0);if((
c[r>>2]|0)<0)c[r>>2]=0-(c[r>>2]|0);if((c[r>>2]|0)<40){w=c[(c[p>>2]|0
)+12+4>>2]|0;c[s>>2]=w;c[s>>2]=(c[s>>2]|0)<48?48:w;break}h=c[s>>2]|0;if((
c[s>>2]|0)>=192){c[s>>2]=h+32&-64;break}c[r>>2]=h&63;c[s>>2]=c[s>>
;2]&-64;h=c[r>>2]|0;if((c[r>>2]|0)<10){c[s>>2]=(c[s>>2]|0)+h;break}if((h|0)<
;32){c[s>>2]=(c[s>>2]|0)+10;break}if((c[r>>2]|0)<54){c[s>>2]=(c[s>>2]|0)+
54;break}else{c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);break}}}while(0);if(c[t>>2]|0)c[s>>
;2]=0-(c[s>>2]|0);c[q>>2]=c[s>>2];w=c[q>>2]|0;i=u;return w|0}c[q>>2]=c[h>
x3e;2];w=c[q>>2]|0;i=u;return w|0}function bm(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;o=i
;i=i+48|0;e=o+32|0;f=o+28|0;m=o+24|0;j=o+20|0;g=o+16|0;n=o+12|0;l=o+8|0;k=o+4|0;h=o;c[e>>2]=a;c[f>>2]=b;c[m
x3e;>2]=d;c[g>>2]=98;c[n>>2]=c[m>>2];c[j>>2]=0;while(1){if((c[j>>2]|0)>
;=(c[f>>2]|0))break;c[k>>2]=c[(c[e>>2]|0)+((c[j>>2]|0)*12|0)+4>>2];c[h>
x3e;2]=(c[m>>2]|0)-(c[k>>2]|0);if((c[h>>2]|0)<0)c[h>>2]=0-(c[h>>2]|0);if((
c[h>>2]|0)<(c[g>>2]|0)){c[g>>2]=c[h>>2];c[n>>2]=c[k>>2]}c[j>
;>2]=(c[j>>2]|0)+1}c[l>>2]=(c[n>>2]|0)+32&-64;f=c[m>>2]|0;e=c[l>>2]|
0;if((c[m>>2]|0)>=(c[n>>2]|0)){if((f|0)>=(e+48|0)){n=c[m>>2]|0;i=o;return n|0}c[m>
x3e;2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}else{if((f|0)<=(e-48|0)){n=c[m>>2]|0;i=o;return n|0
}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}return 0}function cm(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;c[h>>2]=c[h
x3e;>2];c[(c[f>>2]|0)+8>>2]=(c[(c[g>>2]|0)+8>>2]|0)+((c[(c[f>>2]|0)+4>
;>2]|0)-(c[(c[g>>2]|0)+4>>2]|0));i=e;return}function dm(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,q=0,r=0,s=0,t=0,u=0;q=i;i=i+64|0;u=q+52|0;s=q+48|0;t=q+44|0;r=q+40|0;p=q+36|0;o=q+32|0;f=q+28|0;m=q+24|0;h=q+20|0;
k=q+16|0;g=q+12|0;n=q+8|0;j=q+4|0;l=q;c[u>>2]=a;c[s>>2]=d;c[t>>2]=(c[u>>2]|0)+48+((c[s
x3e;>2]|0)*28|0);c[r>>2]=c[(c[t>>2]|0)+8>>2];c[p>>2]=(c[r>>2]|0)+((c[c[t
x3e;>2]>>2]|0)*52|0);a=(c[s>>2]|0)==0;c[o>>2]=c[r>>2];if(a){while(1){if((c[o>
x3e;2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[f>>2]=c[(c[o>>2]|0)+12
x3e;>2];a:do if(c[f>>2]|0){c[h>>2]=c[(c[o>>2]|0)+40>>2];c[k>>2]=c[(c[o>
;>2]|0)+44>>2];c[m>>2]=c[h>>2];while(1){c[(c[m>>2]|0)+16>>2]=c[(c[f>
x3e;2]|0)+8>>2];u=c[m>>2]|0;b[u>>1]=e[u>>1]|0|64;if((c[m>>2]|0)==(c[k>>
;2]|0))break a;c[m>>2]=c[(c[m>>2]|0)+32>>2]}}while(0);c[o>>2]=(c[o>>2]|0)+52}i
=q;return}else{while(1){if((c[o>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[g>
;>2]=c[(c[o>>2]|0)+12>>2];b:do if(c[g>>2]|0){c[j>>2]=c[(c[o>>2]|0)+40>
;>2];c[l>>2]=c[(c[o>>2]|0)+44>>2];c[n>>2]=c[j>>2];while(1){c[(c[n>
x3e;2]|0)+20>>2]=c[(c[g>>2]|0)+8>>2];u=c[n>>2]|0;b[u>>1]=e[u>>1]|0|128
;if((c[n>>2]|0)==(c[l>>2]|0))break b;c[n>>2]=c[(c[n>>2]|0)+32>>2]}}while(0);c[
o>>2]=(c[o>>2]|0)+52}i=q;return}}function em(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,q=
0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;z=i;i=i+96|0;B=z+80|0;g=z+76|0;f=z+72|0;w=z+68|0;A=z+64|0;n=z+60|0;m=z+56|0;x=z+52
|0;v=z+48|0;l=z+44|0;y=z+40|0;u=z+36|0;p=z+32|0;k=z+28|0;s=z+24|0;q=z+20|0;r=z+16|0;o=z+12|0;t=z+8|0;j=z+4|0;h=z;c[B>>
2]=a;c[g>>2]=d;c[f>>2]=c[(c[B>>2]|0)+32>>2];c[w>>2]=(c[f>>2]|0)+((c[(
c[B>>2]|0)+28>>2]|0)*40|0);c[A>>2]=(c[B>>2]|0)+48+((c[g>>2]|0)*28|0);c[n>
x3e;2]=c[(c[A>>2]|0)+20>>2];c[m>>2]=(c[n>>2]|0)+((c[(c[A>>2]|0)+12>>
2]|0)*48|0);if(!(c[g>>2]|0))c[x>>2]=64;else c[x>>2]=128;if((c[n>>2]|0)>>>
0>=(c[m>>2]|0)>>>0){i=z;return}c[v>>2]=c[f>>2];while(1){if((c[v>>2]|
0)>>>0>=(c[w>>2]|0)>>>0)break;do if(!(e[c[v>>2]>>1]&c[x>
;>2])){if(e[c[v>>2]>>1]&256|0?(e[c[v>>2]>>1]&512|0)==0:0)break;d=c[v>
;>2]|0;if((c[g>>2]|0)==1){c[y>>2]=b[d+14>>1];c[u>>2]=c[(c[v>>2]|0)+8>
;>2]}else{c[y>>2]=b[d+12>>1];c[u>>2]=c[(c[v>>2]|0)+4>>2]}c[p>>2
]=c[y>>2];c[l>>2]=c[n>>2];c[k>>2]=(b[c[l>>2]>>1]|0)-(c[y>>
2]|0);a:do if((c[k>>2]|0)>=0)c[y>>2]=(c[(c[l>>2]|0)+8>>2]|0)-((c[(c[l>>2]|
0)+4>>2]|0)-(c[u>>2]|0));else{c[l>>2]=(c[m>>2]|0)+-48;c[k>>2]=(c[y>>
2]|0)-(b[c[l>>2]>>1]|0);if((c[k>>2]|0)>=0){c[y>>2]=(c[(c[l>>2]|0)+8>
x3e;2]|0)+((c[u>>2]|0)-(c[(c[l>>2]|0)+4>>2]|0));break}c[s>>2]=0;c[q>>2]=((c[m
x3e;>2]|0)-(c[n>>2]|0)|0)/48|0;b:do if((c[q>>2]|0)<=8){c[t>>2]=0;while(1){if((c[t>
x3e;2]|0)>=(c[q>>2]|0))break;if((b[(c[n>>2]|0)+((c[t>>2]|0)*48|0)>>1]|0)>=(c[y
>>2]|0))break;c[t>>2]=(c[t>>2]|0)+1}d=c[t>>2]|0;if((b[(c[n>>2]|0)+((c[t>
x3e;2]|0)*48|0)>>1]|0)==(c[y>>2]|0)){c[y>>2]=c[(c[n>>2]|0)+(d*48|0)+8>>2];break
a}else{c[s>>2]=d;break}}else{while(1){if((c[s>>2]|0)>=(c[q>>2]|0))break b;c[r>>2]=(
c[q>>2]|0)+(c[s>>2]|0)>>1;c[l>>2]=(c[n>>2]|0)+((c[r>>2]|0)*48|0);c[o
>>2]=b[c[l>>2]>>1];if((c[y>>2]|0)<(c[o>>2]|0)){c[q>>2]=c[r>
;>2];continue}if((c[y>>2]|0)<=(c[o>>2]|0))break;c[s>>2]=(c[r>>2]|0)+1}c[y>
;>2]=c[(c[l>>2]|0)+8>>2];break a}while(0);c[j>>2]=(c[n>>2]|0)+((c[s>>2]|0
)*48|0)+-48;c[h>>2]=(c[n>>2]|0)+((c[s>>2]|0)*48|0);if(!(c[(c[j>>2]|0)+16>>2]|0
)){B=Vb((c[(c[h>>2]|0)+8>>2]|0)-(c[(c[j>>2]|0)+8>>2]|0)|0,(b[c[h>>2]>>
;1]|0)-(b[c[j>>2]>>1]|0)|0)|0;c[(c[j>>2]|0)+16>>2]=B}B=c[(c[j>>2]|0)+8>
x3e;2]|0;c[y>>2]=B+(Mb((c[p>>2]|0)-(b[c[j>>2]>>1]|0)|0,c[(c[j>>2]|0)+16>
x3e;2]|0)|0)}while(0);d=c[y>>2]|0;a=c[v>>2]|0;if(!(c[g>>2]|0))c[a+16>>2]=d;else c[a+20
x3e;>2]=d;B=c[v>>2]|0;b[B>>1]=e[B>>1]|c[x>>2]}while(0);c[v>>2]=(c[v>
x3e;2]|0)+40}i=z;return}function fm(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,s=0;r=i;i=i+48|0;s=
r+44|0;d=r+40|0;o=r+36|0;n=r+32|0;f=r+28|0;g=r+24|0;p=r+20|0;m=r+16|0;h=r+12|0;j=r+8|0;k=r+4|0;l=r;c[s>>2]=a;c[d>
x3e;2]=b;c[o>>2]=c[(c[s>>2]|0)+32>>2];c[n>>2]=(c[o>>2]|0)+((c[(c[s>>
2]|0)+28>>2]|0)*40|0);c[f>>2]=c[(c[s>>2]|0)+44>>2];c[g>>2]=(c[f>>2]|
0)+(c[(c[s>>2]|0)+40>>2]<<2);a:do if(!(c[d>>2]|0)){c[p>>2]=64;c[m>>2
]=c[o>>2];while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a;
c[(c[m>>2]|0)+24>>2]=c[(c[m>>2]|0)+16>>2];c[(c[m>>2]|0)+28>>2]=c[(c[
m>>2]|0)+4>>2];c[m>>2]=(c[m>>2]|0)+40}}else{c[p>>2]=128;c[m>>2]=c[o
x3e;>2];while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a;c[(c[m
x3e;>2]|0)+24>>2]=c[(c[m>>2]|0)+20>>2];c[(c[m>>2]|0)+28>>2]=c[(c[m>
x3e;2]|0)+8>>2];c[m>>2]=(c[m>>2]|0)+40}}while(0);c[m>>2]=c[o>>2];while(1){if((
c[f>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[m>>2]=c[c[f>>
2]>>2];c[h>>2]=c[(c[m>>2]|0)+36>>2];c[j>>2]=c[m>>2];while(1){if((c[m
>>2]|0)>>>0>(c[h>>2]|0)>>>0)break;b=c[m>>2]|0;if((e[c[m>
x3e;2]>>1]|0)&c[p>>2]|0){q=14;break}c[m>>2]=b+40}do if((q|0)==14){q=0;c[k>>2]=b;c[l
>>2]=c[m>>2];b:while(1){if((c[m>>2]|0)>>>0<(c[h>>2]|0)>>
x3e;0)b=((e[(c[m>>2]|0)+40>>1]|0)&c[p>>2]|0)!=0;else b=0;a=c[m>>2]|0;if(b){c[m>
;>2]=a+40;continue}c[l>>2]=a;c[m>>2]=(c[m>>2]|0)+40;while(1){if((c[m>>2]|0)>
x3e;>0>(c[h>>2]|0)>>>0)break b;if((e[c[m>>2]>>1]|0)&c[p>>2
]|0)break;c[m>>2]=(c[m>>2]|0)+40}gm((c[l>>2]|0)+40|0,(c[m>>2]|0)+-40|0,c[l>>2]|
0,c[m>>2]|0)}if((c[l>>2]|0)==(c[k>>2]|0)){hm(c[j>>2]|0,c[h>>2]|0,c[k>>
;2]|0);break}if((c[l>>2]|0)>>>0<(c[h>>2]|0)>>>0)gm((c[l>>2]|0)+
40|0,c[h>>2]|0,c[l>>2]|0,c[k>>2]|0);if((c[k>>2]|0)>>>0>(c[o>>
;2]|0)>>>0)gm(c[j>>2]|0,(c[k>>2]|0)+-40|0,c[l>>2]|0,c[k>>2]|0)}while(0);c
[f>>2]=(c[f>>2]|0)+4}s=(c[d>>2]|0)==0;c[m>>2]=c[o>>2];if(s){while(1){if((c[m
x3e;>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[(c[m>>2]|0)+16>>2]=
c[(c[m>>2]|0)+24>>2];c[m>>2]=(c[m>>2]|0)+40}i=r;return}else{while(1){if((c[m>>
2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[(c[m>>2]|0)+20>>2]=c[(c[m>
;>2]|0)+24>>2];c[m>>2]=(c[m>>2]|0)+40}i=r;return}}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;q=i;i=i+48|0;f=q+36|0;g=q+32|0;h=q+28|0;j=q+24|0;m=q+20|0;n=q+16|0;o=q+12|0;p=
q+8|0;k=q+4|0;l=q;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[o>>2]=c[(c[h>
x3e;2]|0)+28>>2];c[p>>2]=c[(c[j>>2]|0)+28>>2];c[k>>2]=(c[(c[h>>2]|0)+
24>>2]|0)-(c[o>>2]|0);c[l>>2]=(c[(c[j>>2]|0)+24>>2]|0)-(c[p>>2]|0);if
((c[f>>2]|0)>>>0>(c[g>>2]|0)>>>0){i=q;return}if((c[o>>2]|0)==(c
[p>>2]|0)){c[m>>2]=c[f>>2];while(1){if((c[m>>2]|0)>>>0>(c[g>>
;2]|0)>>>0)break;c[n>>2]=c[(c[m>>2]|0)+28>>2];if((c[n>>2]|0)<=(c[o
x3e;>2]|0))c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);else c[n>>2]=(c[n>>2]|0)+(c[l
x3e;>2]|0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>2]|0)+40}i=q;return
}e=(c[o>>2]|0)<(c[p>>2]|0);c[m>>2]=c[f>>2];if(e){while(1){if((c[m>>2]|0)
x3e;>>0>(c[g>>2]|0)>>>0)break;c[n>>2]=c[(c[m>>2]|0)+28>>2];
do if((c[n>>2]|0)>(c[o>>2]|0))if((c[n>>2]|0)>=(c[p>>2]|0)){c[n>>2]=(
c[n>>2]|0)+(c[l>>2]|0);break}else{e=c[(c[h>>2]|0)+24>>2]|0;c[n>>2]=e+(xb((c[n
x3e;>2]|0)-(c[o>>2]|0)|0,(c[(c[j>>2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+24>>2]|0
)|0,(c[p>>2]|0)-(c[o>>2]|0)|0)|0);break}else c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);while
(0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>2]|0)+40}i=q;return}else{while(
1){if((c[m>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[n>>2]=c[(c[m>
;>2]|0)+28>>2];do if((c[n>>2]|0)>(c[p>>2]|0))if((c[n>>2]|0)>=(c[o>
x3e;2]|0)){c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);break}else{e=c[(c[h>>2]|0)+24>>2]|0
;c[n>>2]=e+(xb((c[n>>2]|0)-(c[o>>2]|0)|0,(c[(c[j>>2]|0)+24>>2]|0)-(c[(c[h>
;>2]|0)+24>>2]|0)|0,(c[p>>2]|0)-(c[o>>2]|0)|0)|0);break}else c[n>>2]=(c[n>>
;2]|0)+(c[l>>2]|0);while(0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>
;2]|0)+40}i=q;return}}function hm(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;e=k+16|0;f=k+12|0;g=k+8|0;j=
k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=(c[(c[g>>2]|0)+24>>2
]|0)-(c[(c[g>>2]|0)+28>>2]|0);if(!(c[h>>2]|0)){i=k;return}c[j>>2]=c[e>>2];while
(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[(c[j>>2]|0)+24
x3e;>2]=(c[(c[j>>2]|0)+28>>2]|0)+(c[h>>2]|0);c[j>>2]=(c[j>>2]|0)+40}c[j
x3e;>2]=(c[g>>2]|0)+40;while(1){if((c[j>>2]|0)>>>0>(c[f>>2]|0)>>
;>0)break;c[(c[j>>2]|0)+24>>2]=(c[(c[j>>2]|0)+28>>2]|0)+(c[h>>2]|0);c[j
x3e;>2]=(c[j>>2]|0)+40}i=k;return}function im(b,d){b=b|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;m=k+20
|0;l=k+16|0;g=k+12|0;f=k+8|0;j=k+4|0;h=k;c[m>>2]=b;c[l>>2]=d;c[g>>2]=c[(c[m>>2]|0)+32>
;>2];c[f>>2]=(c[g>>2]|0)+((c[(c[m>>2]|0)+28>>2]|0)*40|0);c[j>>2]=c[(c[l
x3e;>2]|0)+4>>2];c[h>>2]=c[(c[l>>2]|0)+8>>2];while(1){if((c[g>>2]|0)>
;>>0>=(c[f>>2]|0)>>>0)break;c[c[j>>2]>>2]=c[(c[g>>2]|0)+16
>>2];c[(c[j>>2]|0)+4>>2]=c[(c[g>>2]|0)+20>>2];do if(!((e[c[g>>2]>
;>1]|0)&1|0)){b=c[h>>2]|0;if((e[c[g>>2]>>1]|0)&2|0){a[b>>0]=2;break}else{
a[b>>0]=1;break}}else a[c[h>>2]>>0]=0;while(0);c[g>>2]=(c[g>>2]|0)+40;c[j>
;>2]=(c[j>>2]|0)+8;c[h>>2]=(c[h>>2]|0)+1}i=k;return}function jm(a,b){a=a|0;b=b|0;var d=0,f=0,
g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[f>>2]|0)+92>
;>2];c[(c[d>>2]|0)+36>>2]=e[(c[f>>2]|0)+68>>1];if(Id(c[f>>2]|0,1970170211
)|0){c[(c[f>>2]|0)+92>>2]=0;a=c[f>>2]|0;g=c[g>>2]|0;Jd(a,g)|0;i=h;return 0}else{Gl(c[d
x3e;>2]|0,c[f>>2]|0,3e4);Rl(c[d>>2]|0,c[f>>2]|0);a=c[f>>2]|0;g=c[g>>2]|0;
Jd(a,g)|0;i=h;return 0}return 0}function km(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)+4|0;a=c[e>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>
;>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2];c[b+16>>2]=c[a+16>>
;2];c[b+20>>2]=c[a+20>>2];c[b+24>>2]=c[a+24>>2];lm(c[f>>2]|0,c[e>>2]|
0,0);lm(c[f>>2]|0,c[e>>2]|0,1);i=d;return}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;g=i;i
=i+16|0;j=g+12|0;e=g+8|0;h=g+4|0;f=g;c[j>>2]=a;c[e>>2]=b;c[h>>2]=d;c[f>>2]=(c[j>>
;2]|0)+40+((c[h>>2]|0)*396|0);d=c[e>>2]|0;if(!(c[h>>2]|0)){c[c[f>>2]>>2]=c[d+4
>>2];c[(c[f>>2]|0)+4>>2]=c[(c[e>>2]|0)+12>>2];i=g;return}else{c[c[f>>
;2]>>2]=c[d+8>>2];c[(c[f>>2]|0)+4>>2]=c[(c[e>>2]|0)+16>>2];i=g;return
}}function mm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;j=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=
a;c[j>>2]=b;Dl(c[d>>2]|0,c[j>>2]|0);c[(c[d>>2]|0)+4>>2]=c[(c[j>>2]|0
)+40>>2];c[(c[d>>2]|0)+8>>2]=c[(c[j>>2]|0)+40+4>>2];c[(c[d>>2]|0)+12
>>2]=c[(c[j>>2]|0)+40+396>>2];c[(c[d>>2]|0)+16>>2]=c[(c[j>>2]|0)+40+
396+4>>2];c[e>>2]=c[(c[j>>2]|0)+4+20>>2];c[g>>2]=c[(c[d>>2]|0)+104
x3e;>2];c[f>>2]=0;if((c[e>>2]|0)==2|(c[e>>2]|0)==3)c[f>>2]=c[f>>2]|1;if((
c[e>>2]|0)==2|(c[e>>2]|0)==4)c[f>>2]=c[f>>2]|2;if((c[e>>2]|0)!=1)c[f>>
;2]=c[f>>2]|4;if((c[e>>2]|0)!=2){j=c[g>>2]|0;j=j|4;c[g>>2]=j;j=c[g>>2]|0;g=c[d
>>2]|0;g=g+104|0;c[g>>2]=j;g=c[f>>2]|0;j=c[d>>2]|0;j=j+108|0;c[j>>2]=g;i=h;return
0}c[f>>2]=c[f>>2]|8;j=c[g>>2]|0;j=j|4;c[g>>2]=j;j=c[g>>2]|0;g=c[d>>
2]|0;g=g+104|0;c[g>>2]=j;g=c[f>>2]|0;j=c[d>>2]|0;j=j+108|0;c[j>>2]=g;i=h;return 0}function
nm(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+16|0;f=j+12|0;k=j+8|0;h=j+4|0;g=j;c[e>>2]=a;
c[f>>2]=b;c[k>>2]=d;c[k>>2]=c[k>>2];c[h>>2]=Il(c[e>>2]|0,c[f>
x3e;2]|0)|0;if(c[h>>2]|0){k=c[h>>2]|0;i=j;return k|0}if((c[(c[e>>2]|0)+104>>2]&1|0)==
0?(c[h>>2]=om(c[e>>2]|0,0)|0,c[h>>2]|0):0){k=c[h>>2]|0;i=j;return k|0}if((c[(c[e>
x3e;2]|0)+104>>2]&2|0)==0?(c[h>>2]=om(c[e>>2]|0,1)|0,c[h>>2]|0):0){k=c[h>>
;2]|0;i=j;return k|0}c[g>>2]=0;while(1){if((c[g>>2]|0)>=2)break;if((c[g>>2]|0)==0?!(c[(c[e>
;>2]|0)+104>>2]&1|0):0)a=12;else a=10;if(((a|0)==10?(a=0,(c[g>>2]|0)==1):0)?(c[(c[e>>2]|
0)+104>>2]&2|0)==0:0)a=12;if((a|0)==12){sm(c[e>>2]|0,c[g>>2]|0);ym(c[e>>2]|0,c[g>
;>2]|0);em(c[e>>2]|0,c[g>>2]|0);fm(c[e>>2]|0,c[g>>2]|0)}c[g>>2]=(c[g>
;>2]|0)+1}im(c[e>>2]|0,c[f>>2]|0);k=c[h>>2]|0;i=j;return k|0}function om(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=pm(c[d>>2]|
0,c[e>>2]|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}qm(c[d>>2]|0,c[e>>2]|0
);c[f>>2]=rm(c[d>>2]|0,c[e>>2]|0)|0;a=c[f>>2]|0;i=g;return a|0}function pm(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,q=0,r=0,s=0,t=0;q=i;i=i+48|0;g=q+44|0;s=q+40|0;r=q+36|0;t=q+32|0;p=q+28|0;o=q+24|0;h
=q+20|0;n=q+16|0;m=q+12|0;l=q+8|0;j=q+4|0;k=q;c[s>>2]=b;c[r>>2]=f;c[t>>2]=(c[s>>2]|0)+48
+((c[r>>2]|0)*28|0);c[p>>2]=c[(c[t>>2]|0)+8>>2];c[o>>2]=(c[p>>2]|0)+((
c[c[t>>2]>>2]|0)*52|0);c[h>>2]=Kl(c[s>>2]|0,c[r>>2]|0)|0;if(c[h>>2]|
0){c[g>>2]=c[h>>2];t=c[g>>2]|0;i=q;return t|0}c[n>>2]=c[p>>2];while(1){if((c[n
>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[m>>2]=c[(c[n>>2]|
0)+40>>2];c[l>>2]=c[(c[n>>2]|0)+44>>2];c[j>>2]=(e[c[m>>2]>>
;1]|0)&3;t=c[n>>2]|0;a[t>>0]=(d[t>>0]|0)&-2;while(1){if((c[m>>2]|0)==(c[l>
;>2]|0))break;c[m>>2]=c[(c[m>>2]|0)+32>>2];c[k>>2]=(e[c[m>>2]>>
1]|0)&3;if(!((c[j>>2]|0)!=0|(c[k>>2]|0)!=0))break;if((c[m>>2]|0)==(c[l>>2]|0)){t=c[
n>>2]|0;a[t>>0]=d[t>>0]|0|1}c[j>>2]=c[k>>2]}c[n>>2]=(c[n>>
2]|0)+52}c[g>>2]=0;t=c[g>>2]|0;i=q;return t|0}function qm(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;v=i;i=i+80|0;x=v+68|0;w=v+64|0;y=v+60|0;u=v+56|0;t=v+52|0;n=v+48|0;r=v+44|0;s=v+40
|0;j=v+36|0;g=v+32|0;f=v+28|0;p=v+24|0;o=v+20|0;h=v+16|0;l=v+12|0;m=v+8|0;q=v+4|0;k=v;c[x>>2]=d;c[w>>2]=e;c[
y>>2]=(c[x>>2]|0)+48+((c[w>>2]|0)*28|0);c[u>>2]=c[(c[y>>2]|0)+8>>2];
c[t>>2]=(c[u>>2]|0)+((c[c[y>>2]>>2]|0)*52|0);c[n>>2]=c[(c[y>>2]|0)+24
>>2];c[j>>2]=(c[(c[(c[x>>2]|0)+112>>2]|0)+36>>2]<<3|0)/2048|0;e=c[x
x3e;>2]|0;if(!(c[w>>2]|0))e=c[e+4>>2]|0;else e=c[e+12>>2]|0;c[g>>2]=e;c[g>>
;2]=Vb(192,c[g>>2]|0)|0;c[r>>2]=c[u>>2];while(1){if((c[r>>2]|0)>>>0>=(
c[t>>2]|0)>>>0)break;a:do if((c[(c[r>>2]|0)+40>>2]|0)!=(c[(c[r>>2]|0)+44
x3e;>2]|0)?(a[(c[r>>2]|0)+1>>0]|0)==(c[n>>2]|0):0){c[s>>2]=c[u>>2];while(
1){if((c[s>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a;do if(((c[s>>2]|
0)!=(c[r>>2]|0)?((a[(c[r>>2]|0)+1>>0]|0)+(a[(c[s>>2]|0)+1>>0]|0)|0)==0:0)?(c[f
>>2]=(b[(c[s>>2]|0)+2>>1]|0)-(b[(c[r>>2]|0)+2>>1]|0),(c[f>>2]|0)>
;=0):0){c[p>>2]=b[(c[r>>2]|0)+4>>1];c[o>>2]=b[(c[r>>2]|0)+6>>1];if((
c[p>>2]|0)<(b[(c[s>>2]|0)+4>>1]|0))c[p>>2]=b[(c[s>>2]|0)+4>>1];
if((c[o>>2]|0)>(b[(c[s>>2]|0)+6>>1]|0))c[o>>2]=b[(c[s>>2]|0)+6>>
;1];c[h>>2]=(c[o>>2]|0)-(c[p>>2]|0);if((c[h>>2]|0)>=(c[j>>2]|0)){do if((c
[f>>2]<<3|0)<((c[(c[r>>2]|0)+32>>2]|0)*9|0)){if((c[f>>2]<<3|0)
x3e;=((c[(c[r>>2]|0)+32>>2]|0)*7|0)?(c[(c[r>>2]|0)+36>>2]|0)>=(c[h>>2]|0):
0)break;c[(c[r>>2]|0)+32>>2]=c[f>>2];c[(c[r>>2]|0)+36>>2]=c[h>>2];c[(
c[r>>2]|0)+20>>2]=c[s>>2]}while(0);if((c[f>>2]<<3|0)<((c[(c[s>>
2]|0)+32>>2]|0)*9|0)){if((c[f>>2]<<3|0)>=((c[(c[s>>2]|0)+32>>2]|0)*7|0)?(
c[(c[s>>2]|0)+36>>2]|0)>=(c[h>>2]|0):0)break;c[(c[s>>2]|0)+32>>2]=c[f>
;>2];c[(c[s>>2]|0)+36>>2]=c[h>>2];c[(c[s>>2]|0)+20>>2]=c[r>>2]}}}
while(0);c[s>>2]=(c[s>>2]|0)+52}}while(0);c[r>>2]=(c[r>>2]|0)+52}c[r>>2]=c[u
x3e;>2];while(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[l>
x3e;2]=c[(c[r>>2]|0)+20>>2];b:do if(((c[l>>2]|0?(c[(c[l>>2]|0)+20>>2]|0)==(c[r
>>2]|0):0)?(b[(c[l>>2]|0)+2>>1]|0)>(b[(c[r>>2]|0)+2>>1]|0):0)?(c[(c[r>
;>2]|0)+32>>2]|0)<(c[g>>2]|0):0){c[s>>2]=c[u>>2];c:while(1){if((c[s>>
;2]|0)>>>0>=(c[t>>2]|0)>>>0)break b;d:do if(((((b[(c[s>>2]|0)+2>>
;1]|0)<=(b[(c[r>>2]|0)+2>>1]|0)?(c[r>>2]|0)!=(c[s>>2]|0):0)?(c[m>>2]=c[(c
[s>>2]|0)+20>>2],c[m>>2]|0):0)?(c[(c[m>>2]|0)+20>>2]|0)==(c[s>>2]|0):
0)?(b[(c[m>>2]|0)+2>>1]|0)>=(b[(c[l>>2]|0)+2>>1]|0):0){if((b[(c[r>>2]|0)+
2>>1]|0)==(b[(c[s>>2]|0)+2>>1]|0)?(b[(c[l>>2]|0)+2>>1]|0)==(b[(c[m>>
2]|0)+2>>1]|0):0)break;if((c[(c[s>>2]|0)+32>>2]|0)>(c[(c[r>>2]|0)+32>>2]|
0)?(c[(c[r>>2]|0)+32>>2]<<2|0)>(c[(c[s>>2]|0)+32>>2]|0):0){if((c[(c[r>
;>2]|0)+36>>2]|0)<((c[(c[s>>2]|0)+36>>2]|0)*3|0))break c;c[q>>2]=c[u>>
;2];while(1){if((c[q>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break d;c[k>>2
]=c[(c[q>>2]|0)+20>>2];do if((c[k>>2]|0)==(c[s>>2]|0)){c[(c[q>>2]|0)+20>
x3e;2]=0;c[(c[q>>2]|0)+24>>2]=c[l>>2]}else{if((c[k>>2]|0)!=(c[m>>2]|0))break;c
[(c[q>>2]|0)+20>>2]=0;c[(c[q>>2]|0)+24>>2]=c[r>>2]}while(0);c[q>>2]=(
c[q>>2]|0)+52}}}while(0);c[s>>2]=(c[s>>2]|0)+52}c[(c[l>>2]|0)+20>>2]=0;c[(c[r
x3e;>2]|0)+20>>2]=0}while(0);c[r>>2]=(c[r>>2]|0)+52}c[r>>2]=c[u>>2];while
(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[s>>2]=c[(c[r>
;>2]|0)+20>>2];do if(c[s>>2]|0?(y=(c[s>>2]|0)+28|0,c[y>>2]=(c[y>>2]|0)+1,(
c[(c[s>>2]|0)+20>>2]|0)!=(c[r>>2]|0)):0){c[(c[r>>2]|0)+20>>2]=0;if((c[(c[s>
;>2]|0)+32>>2]|0)>=(c[g>>2]|0)?(c[(c[r>>2]|0)+32>>2]|0)>=(c[(c[s>>
;2]|0)+32>>2]<<2|0):0){y=(c[s>>2]|0)+28|0;c[y>>2]=(c[y>>2]|0)+-1;break}c[(c[r
x3e;>2]|0)+24>>2]=c[(c[s>>2]|0)+20>>2]}while(0);c[r>>2]=(c[r>>2]|0)+52}i=
v;return}
function Is(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=a+4|0;o=c[n>>2]|0;d=o&-8;k=a+d
|0;i=c[18404]|0;e=o&3;if(!((e|0)!=1&a>>>0>=i>>>0&a>>>0<k
x3e;>>0))ya();f=c[k+4>>2]|0;if(!(f&1))ya();if(!e){if(b>>>0<256){a=0;return a|0}if(d
>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[18520]<<1>>>0:0
)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a
|0;m=a+b|0;c[n>>2]=o&1|b|2;c[m+4>>2]=d|3;b=m+d+4|0;c[b>>2]=c[b>>2]|1;Js(m,d);return
a|0}if((k|0)==(c[18406]|0)){d=(c[18403]|0)+d|0;if(d>>>0<=b>>>0){a=0;return a|0}m=d-b|0;l=a+b
|0;c[n>>2]=o&1|b|2;c[l+4>>2]=m|1;c[18406]=l;c[18403]=m;return a|0}if((k|0)==(c[18405]|0)){e=(c[18402]|0
)+d|0;if(e>>>0<b>>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){e=a+b|0;m=e+d|0
;c[n>>2]=o&1|b|2;c[e+4>>2]=d|1;c[m>>2]=d;b=m+4|0;c[b>>2]=c[b>>2]&-2}
else{c[n>>2]=o&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[18402]=d;c[18405]=e;return a|0}if(
f&2|0){a=0;return a|0}l=(f&-8)+d|0;if(l>>>0<b>>>0){a=0;return a|0}m=l-b|0;g=f>
x3e;>3;do if(f>>>0>=256){h=c[k+24>>2]|0;f=c[k+12>>2]|0;do if((f|0)==(k|0)){e=k+16|0
;f=e+4|0;d=c[f>>2]|0;if(!d){d=c[e>>2]|0;if(!d){j=0;break}}else e=f;while(1){f=d+20|0;g=c[f>>2]|0;if
(g|0){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0<i>>>
0)ya();else{c[e>>2]=0;j=d;break}}else{g=c[k+8>>2]|0;if(g>>>0<i>>>0)ya();d
=g+12|0;if((c[d>>2]|0)!=(k|0))ya();e=f+8|0;if((c[e>>2]|0)==(k|0)){c[d>>2]=f;c[e>>2]=g;j=
f;break}else ya()}while(0);if(h|0){d=c[k+28>>2]|0;e=73904+(d<<2)|0;if((k|0)==(c[e>>2]|0)){c[e>
;>2]=j;if(!j){c[18401]=c[18401]&~(1<<d);break}}else{if(h>>>0<(c[18404]|0)>>>
;0)ya();d=h+16|0;if((c[d>>2]|0)==(k|0))c[d>>2]=j;else c[h+20>>2]=j;if(!j)break}f=c[18404]|0;if(j
x3e;>>0<f>>>0)ya();c[j+24>>2]=h;d=k+16|0;e=c[d>>2]|0;do if(e|0)if(e>>
;>0<f>>>0)ya();else{c[j+16>>2]=e;c[e+24>>2]=j;break}while(0);d=c[d+4>>2]|
0;if(d|0)if(d>>>0<(c[18404]|0)>>>0)ya();else{c[j+20>>2]=d;c[d+24>>2]=j;break
}}}else{e=c[k+8>>2]|0;f=c[k+12>>2]|0;d=73640+(g<<1<<2)|0;if((e|0)!=(d|0)){if(e>>
;>0<i>>>0)ya();if((c[e+12>>2]|0)!=(k|0))ya()}if((f|0)==(e|0)){c[18400]=c[18400]&~(1<
;<g);break}if((f|0)!=(d|0)){if(f>>>0<i>>>0)ya();d=f+8|0;if((c[d>>2]|0)==(k|0))
h=d;else ya()}else h=f+8|0;c[e+12>>2]=f;c[h>>2]=e}while(0);if(m>>>0<16){c[n>>2
]=l|o&1|2;b=a+l+4|0;c[b>>2]=c[b>>2]|1;return a|0}else{l=a+b|0;c[n>>2]=o&1|b|2;c[l+4>
;>2]=m|3;b=l+m+4|0;c[b>>2]=c[b>>2]|1;Js(l,m);return a|0}return 0}function Js(a,b){a=a|0;b=b|0;var d=0,e
=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;
if(!(d&3))return;l=a+(0-f)|0;k=f+b|0;i=c[18404]|0;if(l>>>0<i>>>0)ya();if((l|0)==(c[18405
]|0)){a=o+4|0;d=c[a>>2]|0;if((d&3|0)!=3){r=l;g=k;break}c[18402]=k;c[a>>2]=d&-2;c[l+4>>2]=
k|1;c[l+k>>2]=k;return}e=f>>>3;if(f>>>0<256){a=c[l+8>>2]|0;b=c[l+12>
x3e;2]|0;d=73640+(e<<1<<2)|0;if((a|0)!=(d|0)){if(a>>>0<i>>>0)ya();if((c[a
+12>>2]|0)!=(l|0))ya()}if((b|0)==(a|0)){c[18400]=c[18400]&~(1<<e);r=l;g=k;break}if((b|0)!=(d|0)){if(b
x3e;>>0<i>>>0)ya();d=b+8|0;if((c[d>>2]|0)==(l|0))h=d;else ya()}else h=b+8|0;c[a+12>
x3e;2]=b;c[h>>2]=a;r=l;g=k;break}f=c[l+24>>2]|0;b=c[l+12>>2]|0;do if((b|0)==(l|0)){a=l+16|0;b=a+4|
0;d=c[b>>2]|0;if(!d){d=c[a>>2]|0;if(!d){j=0;break}}else a=b;while(1){b=d+20|0;e=c[b>>2]|0;if(e|0){
d=e;a=b;continue}b=d+16|0;e=c[b>>2]|0;if(!e)break;else{d=e;a=b}}if(a>>>0<i>>>0)ya();
else{c[a>>2]=0;j=d;break}}else{e=c[l+8>>2]|0;if(e>>>0<i>>>0)ya();d=e+12|0
;if((c[d>>2]|0)!=(l|0))ya();a=b+8|0;if((c[a>>2]|0)==(l|0)){c[d>>2]=b;c[a>>2]=e;j=b;break
}else ya()}while(0);if(f){d=c[l+28>>2]|0;a=73904+(d<<2)|0;if((l|0)==(c[a>>2]|0)){c[a>>2]=
j;if(!j){c[18401]=c[18401]&~(1<<d);r=l;g=k;break}}else{if(f>>>0<(c[18404]|0)>>>
;0)ya();d=f+16|0;if((c[d>>2]|0)==(l|0))c[d>>2]=j;else c[f+20>>2]=j;if(!j){r=l;g=k;break}}b=c[18404
]|0;if(j>>>0<b>>>0)ya();c[j+24>>2]=f;d=l+16|0;a=c[d>>2]|0;do if(a|0)if(a
x3e;>>0<b>>>0)ya();else{c[j+16>>2]=a;c[a+24>>2]=j;break}while(0);d=c[d+4>
x3e;2]|0;if(d)if(d>>>0<(c[18404]|0)>>>0)ya();else{c[j+20>>2]=d;c[d+24>>2]=
j;r=l;g=k;break}else{r=l;g=k}}else{r=l;g=k}}else{r=a;g=b}while(0);h=c[18404]|0;if(o>>>0<h>>>0
)ya();d=o+4|0;a=c[d>>2]|0;if(!(a&2)){if((o|0)==(c[18406]|0)){q=(c[18403]|0)+g|0;c[18403]=q;c[18406]=r;c[r+4>
x3e;2]=q|1;if((r|0)!=(c[18405]|0))return;c[18405]=0;c[18402]=0;return}if((o|0)==(c[18405]|0)){q=(c[18402]|0)+g|0;c[18402]=q;c[18405
]=r;c[r+4>>2]=q|1;c[r+q>>2]=q;return}g=(a&-8)+g|0;e=a>>>3;do if(a>>>0>
;=256){f=c[o+24>>2]|0;b=c[o+12>>2]|0;do if((b|0)==(o|0)){a=o+16|0;b=a+4|0;d=c[b>>2]|0;if(!d){d=c[a
>>2]|0;if(!d){n=0;break}}else a=b;while(1){b=d+20|0;e=c[b>>2]|0;if(e|0){d=e;a=b;continue}b=d+16|0;e=c[b>
;>2]|0;if(!e)break;else{d=e;a=b}}if(a>>>0<h>>>0)ya();else{c[a>>2]=0;n=d;break}}
else{e=c[o+8>>2]|0;if(e>>>0<h>>>0)ya();d=e+12|0;if((c[d>>2]|0)!=(o|0))ya();
a=b+8|0;if((c[a>>2]|0)==(o|0)){c[d>>2]=b;c[a>>2]=e;n=b;break}else ya()}while(0);if(f|0){d=c[o+28
x3e;>2]|0;a=73904+(d<<2)|0;if((o|0)==(c[a>>2]|0)){c[a>>2]=n;if(!n){c[18401]=c[18401]&~(1
<<d);break}}else{if(f>>>0<(c[18404]|0)>>>0)ya();d=f+16|0;if((c[d>>2]|0)==(
o|0))c[d>>2]=n;else c[f+20>>2]=n;if(!n)break}b=c[18404]|0;if(n>>>0<b>>>0)
ya();c[n+24>>2]=f;d=o+16|0;a=c[d>>2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else
{c[n+16>>2]=a;c[a+24>>2]=n;break}while(0);d=c[d+4>>2]|0;if(d|0)if(d>>>0<(c[18404
]|0)>>>0)ya();else{c[n+20>>2]=d;c[d+24>>2]=n;break}}}else{a=c[o+8>>2]|0;b=c[o+12>
;>2]|0;d=73640+(e<<1<<2)|0;if((a|0)!=(d|0)){if(a>>>0<h>>>0)ya();if((
c[a+12>>2]|0)!=(o|0))ya()}if((b|0)==(a|0)){c[18400]=c[18400]&~(1<<e);break}if((b|0)!=(d|0)){if(b>
x3e;>0<h>>>0)ya();d=b+8|0;if((c[d>>2]|0)==(o|0))m=d;else ya()}else m=b+8|0;c[a+12>>
2]=b;c[m>>2]=a}while(0);c[r+4>>2]=g|1;c[r+g>>2]=g;if((r|0)==(c[18405]|0)){c[18402]=g;return}}else{
c[d>>2]=a&-2;c[r+4>>2]=g|1;c[r+g>>2]=g}d=g>>>3;if(g>>>0<256
){b=73640+(d<<1<<2)|0;a=c[18400]|0;d=1<<d;if(a&d){d=b+8|0;a=c[d>>2]|0;if(a>>
;>0<(c[18404]|0)>>>0)ya();else{p=d;q=a}}else{c[18400]=a|d;p=b+8|0;q=b}c[p>>2]=r;c[q+12>
x3e;2]=r;c[r+8>>2]=q;c[r+12>>2]=b;return}d=g>>>8;if(d)if(g>>>0>16777215)b
=31;else{p=(d+1048320|0)>>>16&8;q=d<<p;o=(q+520192|0)>>>16&4;q=q<<o;
b=(q+245760|0)>>>16&2;b=14-(o|p|b)+(q<<b>>>15)|0;b=g>>>(b+7|0)&
1|b<<1}else b=0;e=73904+(b<<2)|0;c[r+28>>2]=b;c[r+20>>2]=0;c[r+16>>2]=0;d=c[18401
]|0;a=1<<b;if(!(d&a)){c[18401]=d|a;c[e>>2]=r;c[r+24>>2]=e;c[r+12>>2]=r;c[r+8>
x3e;2]=r;return}f=g<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]
x26;-8|0)==(g|0)){b=d;e=127;break}a=d+16+(f>>>31<<2)|0;b=c[a>>2]|0;if(!b){e=124;break}else{f=
f<<1;d=b}}if((e|0)==124){if(a>>>0<(c[18404]|0)>>>0)ya();c[a>>2]=r;c[r+24
x3e;>2]=d;c[r+12>>2]=r;c[r+8>>2]=r;return}else if((e|0)==127){d=b+8|0;a=c[d>>2]|0;q=c[18404]|
0;if(!(a>>>0>=q>>>0&b>>>0>=q>>>0))ya();c[a+12>
x3e;2]=r;c[d>>2]=r;c[r+8>>2]=a;c[r+12>>2]=b;c[r+24>>2]=0;return}}function Ks(){}function
Ls(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (C=d,a-c
>>>0|0)|0}function Ms(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (C=b+d+(c>>>
;0<a>>>0|0)>>>0,c|0)|0}function Ns(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;h=b&3;i=d|d<<8|d<<16|d<<24;g=f&~3;if(h){h=b+4-h|0;while((b|0)
x3c;(h|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(g|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(f|0)){a[b>
x3e;0]=d;b=b+1|0}return b-e|0}function Os(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>>c;return a>>
x3e;c|(b&(1<<c)-1)<<32-c}C=0;return b>>>c-32|0}function Ps(a,b,c){a=a|0;b=b|0;c=c|0;if((
c|0)<32){C=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}C=a<
x3c;c-32;return 0}function Qs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;p=p+1|0;c[a>>2]=p;while((f|0)<(e|0)){if(!(
c[d+(f<<3)>>2]|0)){c[d+(f<<3)>>2]=p;c[d+((f<<3)+4)>>2]=b;c[d+((f<
;<3)+8)>>2]=0;C=e;return d|0}f=f+1|0}e=e*2|0;d=Hs(d|0,8*(e+1|0)|0)|0;d=Qs(a|0,b|0,d|0,e|0)|0;C=e;return d|0}function
Rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;while((f|0)<(d|0)){e=c[b+(f<<3)>>2]|0;if(!e)break;if((e|0)==(a
|0))return c[b+((f<<3)+4)>>2]|0;f=f+1|0}return 0}function Ss(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=
4096)return Ea(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if(!e)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 Ts(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 Ss(b,c,d)|0;return b|0}function Us(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>c;return a>
;>>c|(b&(1<<c)-1)<<32-c}C=(b|0)<0?-1:0;return b>>c-32|0}function Vs(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 Ws(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=_(e,f)|0;d=a>>
;>16;a=(c>>>16)+(_(e,d)|0)|0;e=b>>>16;b=_(e,f)|0;return (C=(a>>>16)+(_(e,d)|0)+(((
a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Xs(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)<
x3c;1;h=Ls(j^a|0,i^b|0,j|0,i|0)|0;g=C;a=f^j;b=e^i;return Ls((at(h,g,Ls(f^c|0,e^d|0,f|0,e|0)|0,C,0)|0)^a|0,C^b|0,a|0,b|0)|0}function
Ys(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+16|0;j=f|0;h=b>>31|((b|0)<0?-1:0)<
x3c;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;a=Ls(h^a|0,g^b|0,h|0,g|0)|0;b=C;at(a,b,Ls(l^d|0,k^e|0,l|0,k|0)|
0,C,j)|0;e=Ls(c[j>>2]^h|0,c[j+4>>2]^g|0,h|0,g|0)|0;d=C;i=f;return (C=d,e)|0}function Zs(a,b,c,d){a=a|0;b=b|0
;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Ws(e,f)|0;a=C;return (C=(_(b,f)|0)+(_(d,e)|0)+a|a&0,c|0|0)|0}function _s(a,b,c,d){a=a|0;
b=b|0;c=c|0;d=d|0;return at(a,b,c,d,0)|0}function $s(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+16|0;f=g|0;at(a,b,d,e,
f)|0;i=g;return (C=c[f+4>>2]|0,c[f>>2]|0)|0}function at(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0
,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(
h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (C=n,f
)|0}else{if(!g){n=0;f=0;return (C=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (C=n,f)|0}}g=(i|0)==0
;do if(h){if(!g){g=(aa(i|0)|0)-(aa(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>
;>>(m>>>0)&b|k<<i;b=k>>>(m>>>0)&b;g=0;i=l<<
i;break}if(!f){n=0;f=0;return (C=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (C=n,f)|0}g=h-1|0;if
(g&h|0){i=(aa(h|0)|0)+33-(aa(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>
31&k>>>(o>>>0)|(k<<m|l>>>(i>>>0))&b;b=b&k
x3e;>>(i>>>0);g=l<<p&j;i=(k<<p|l>>>(o>>>0))&
;j|l<<m&i-33>>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&
;0;p=a|0|0;return (C=o,p)|0}else{p=Vs(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>
;(p>>>0)|0;return (C=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c
[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (C=o,p)|0}if(!l){if(f|0){c[f
x3e;>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>
;0)>>>0;return (C=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&
;0}o=0;p=k>>>((Vs(i|0)|0)>>>0);return (C=o,p)|0}g=(aa(i|0)|0)-(aa(k|0)|0)|0;if(g>>>
0<=30){b=g+1|0;i=31-g|0;h=b;a=k<<i|l>>>(b>>>0);b=k>>>(b>>
x3e;0);g=0;i=l<<i;break}if(!f){o=0;p=0;return (C=o,p)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return
(C=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Ms(m|0,l|0,-1,-1)|0;d=C;j=i;i=0;do{e=j;j=g>>>31
|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Ls(k|0,d|0,
e|0,n|0)|0;p=C;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Ls(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>
x3e;31|((p|0)<0?-1:0)<<1)&l|0)|0;b=C;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4
x3e;>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|
0>>>31)&-2|i;return (C=o,p)|0}function bt(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return
Na[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ct(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Oa[a&63](b|0,c|0,d|0)|0}function
dt(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Pa[a&1](b|0,c|0,d|0,e|0,f|0)}function et(a,b,c,d,e,f,g,h,i,j){a=a|0;b=
b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;return Qa[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)|0}function ft(a,b,c
){a=a|0;b=b|0;c=c|0;Ra[a&7](b|0,c|0)}function gt(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 Sa[a&
3](b|0,c|0,d|0,e|0,f|0,g|0)|0}function ht(a,b){a=a|0;b=b|0;return Ta[a&63](b|0)|0}function it(a,b,c,d){a=a|0;b=b|0;c=c|0;d=
d|0;Ua[a&31](b|0,c|0,d|0)}function jt(a,b){a=a|0;b=b|0;Va[a&63](b|0)}function kt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=
e|0;return Wa[a&31](b|0,c|0,d|0,e|0)|0}function lt(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;Xa[a&7](b|
0,c|0,d|0,e|0,f|0,g|0)}function mt(a,b,c){a=a|0;b=b|0;c=c|0;return Ya[a&127](b|0,c|0)|0}function nt(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 Za[a&31](b|0,c|0,d|0,e|0,f|0)|0}function ot(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;_a[a
x26;15](b|0,c|0,d|0,e|0)}function pt(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;ba(0);return 0}function qt(a,b,c){
a=a|0;b=b|0;c=c|0;ba(1);return 0}function rt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(2)}function st(a,b,c,d,e,f,g,h,i){a=a|0
;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;ba(3);return 0}function tt(a,b){a=a|0;b=b|0;ba(4)}function ut(a,b,c,d,e,f){a=a|
0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ba(5);return 0}function vt(a){a=a|0;ba(6);return 0}function wt(a,b,c){a=a|0;b=b|0;c=c|0;ba(7)}function
xt(a){a=a|0;ba(8)}function yt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(9);return 0}function zt(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;
e=e|0;f=f|0;ba(10)}function At(a,b){a=a|0;b=b|0;ba(11);return 0}function Bt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(12);return
0}function Ct(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(13)}
...
function getValue(ptr, type, noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";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}
n/a
inspect = function (){return"[Emscripten Module object]"}
n/a
function intArrayFromString(stringy, dontAddNull, length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array (len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}
n/a
function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){chr&=255}ret.push(String .fromCharCode(chr))}return ret.join("")}
n/a
function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u& 1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4 }else if(u<=67108863){len+=5}else{len+=6}}return len}
n/a
function load(f){globalEval(read(f))}
n/a
function Module_pauseMainLoop(){Browser.mainLoop.pause()}
n/a
print = function () { [native code] }
...
function Is(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=a+4|0;o=c[n>>2]|0;d=o&-8;k=a+d
|0;i=c[18404]|0;e=o&3;if(!((e|0)!=1&a>>>0>=i>>>0&a>>>0<k
x3e;>>0))ya();f=c[k+4>>2]|0;if(!(f&1))ya();if(!e){if(b>>>0<256){a=0;return a|0}if(d
>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[18520]<<1>>>0:0
)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a
|0;m=a+b|0;c[n>>2]=o&1|b|2;c[m+4>>2]=d|3;b=m+d+4|0;c[b>>2]=c[b>>2]|1;Js(m,d);return
a|0}if((k|0)==(c[18406]|0)){d=(c[18403]|0)+d|0;if(d>>>0<=b>>>0){a=0;return a|0}m=d-b|0;l=a+b
|0;c[n>>2]=o&1|b|2;c[l+4>>2]=m|1;c[18406]=l;c[18403]=m;return a|0}if((k|0)==(c[18405]|0)){e=(c[18402]|0
)+d|0;if(e>>>0<b>>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){e=a+b|0;m=e+d|0
;c[n>>2]=o&1|b|2;c[e+4>>2]=d|1;c[m>>2]=d;b=m+4|0;c[b>>2]=c[b>>2]&-2}
else{c[n>>2]=o&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[18402]=d;c[18405]=e;return a|0}if(
f&2|0){a=0;return a|0}l=(f&-8)+d|0;if(l>>>0<b>>>0){a=0;return a|0}m=l-b|0;g=f>
x3e;>3;do if(f>>>0>=256){h=c[k+24>>2]|0;f=c[k+12>>2]|0;do if((f|0)==(k|0)){e=k+16|0
;f=e+4|0;d=c[f>>2]|0;if(!d){d=c[e>>2]|0;if(!d){j=0;break}}else e=f;while(1){f=d+20|0;g=c[f>>2]|0;if
(g|0){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0<i>>>
0)ya();else{c[e>>2]=0;j=d;break}}else{g=c[k+8>>2]|0;if(g>>>0<i>>>0)ya();d
=g+12|0;if((c[d>>2]|0)!=(k|0))ya();e=f+8|0;if((c[e>>2]|0)==(k|0)){c[d>>2]=f;c[e>>2]=g;j=
f;break}else ya()}while(0);if(h|0){d=c[k+28>>2]|0;e=73904+(d<<2)|0;if((k|0)==(c[e>>2]|0)){c[e>
;>2]=j;if(!j){c[18401]=c[18401]&~(1<<d);break}}else{if(h>>>0<(c[18404]|0)>>>
;0)ya();d=h+16|0;if((c[d>>2]|0)==(k|0))c[d>>2]=j;else c[h+20>>2]=j;if(!j)break}f=c[18404]|0;if(j
x3e;>>0<f>>>0)ya();c[j+24>>2]=h;d=k+16|0;e=c[d>>2]|0;do if(e|0)if(e>>
;>0<f>>>0)ya();else{c[j+16>>2]=e;c[e+24>>2]=j;break}while(0);d=c[d+4>>2]|
0;if(d|0)if(d>>>0<(c[18404]|0)>>>0)ya();else{c[j+20>>2]=d;c[d+24>>2]=j;break
}}}else{e=c[k+8>>2]|0;f=c[k+12>>2]|0;d=73640+(g<<1<<2)|0;if((e|0)!=(d|0)){if(e>>
;>0<i>>>0)ya();if((c[e+12>>2]|0)!=(k|0))ya()}if((f|0)==(e|0)){c[18400]=c[18400]&~(1<
;<g);break}if((f|0)!=(d|0)){if(f>>>0<i>>>0)ya();d=f+8|0;if((c[d>>2]|0)==(k|0))
h=d;else ya()}else h=f+8|0;c[e+12>>2]=f;c[h>>2]=e}while(0);if(m>>>0<16){c[n>>2
]=l|o&1|2;b=a+l+4|0;c[b>>2]=c[b>>2]|1;return a|0}else{l=a+b|0;c[n>>2]=o&1|b|2;c[l+4>
;>2]=m|3;b=l+m+4|0;c[b>>2]=c[b>>2]|1;Js(l,m);return a|0}return 0}function Js(a,b){a=a|0;b=b|0;var d=0,e
=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;
if(!(d&3))return;l=a+(0-f)|0;k=f+b|0;i=c[18404]|0;if(l>>>0<i>>>0)ya();if((l|0)==(c[18405
]|0)){a=o+4|0;d=c[a>>2]|0;if((d&3|0)!=3){r=l;g=k;break}c[18402]=k;c[a>>2]=d&-2;c[l+4>>2]=
k|1;c[l+k>>2]=k;return}e=f>>>3;if(f>>>0<256){a=c[l+8>>2]|0;b=c[l+12>
x3e;2]|0;d=73640+(e<<1<<2)|0;if((a|0)!=(d|0)){if(a>>>0<i>>>0)ya();if((c[a
+12>>2]|0)!=(l|0))ya()}if((b|0)==(a|0)){c[18400]=c[18400]&~(1<<e);r=l;g=k;break}if((b|0)!=(d|0)){if(b
x3e;>>0<i>>>0)ya();d=b+8|0;if((c[d>>2]|0)==(l|0))h=d;else ya()}else h=b+8|0;c[a+12>
x3e;2]=b;c[h>>2]=a;r=l;g=k;break}f=c[l+24>>2]|0;b=c[l+12>>2]|0;do if((b|0)==(l|0)){a=l+16|0;b=a+4|
0;d=c[b>>2]|0;if(!d){d=c[a>>2]|0;if(!d){j=0;break}}else a=b;while(1){b=d+20|0;e=c[b>>2]|0;if(e|0){
d=e;a=b;continue}b=d+16|0;e=c[b>>2]|0;if(!e)break;else{d=e;a=b}}if(a>>>0<i>>>0)ya();
else{c[a>>2]=0;j=d;break}}else{e=c[l+8>>2]|0;if(e>>>0<i>>>0)ya();d=e+12|0
;if((c[d>>2]|0)!=(l|0))ya();a=b+8|0;if((c[a>>2]|0)==(l|0)){c[d>>2]=b;c[a>>2]=e;j=b;break
}else ya()}while(0);if(f){d=c[l+28>>2]|0;a=73904+(d<<2)|0;if((l|0)==(c[a>>2]|0)){c[a>>2]=
j;if(!j){c[18401]=c[18401]&~(1<<d);r=l;g=k;break}}else{if(f>>>0<(c[18404]|0)>>>
;0)ya();d=f+16|0;if((c[d>>2]|0)==(l|0))c[d>>2]=j;else c[f+20>>2]=j;if(!j){r=l;g=k;break}}b=c[18404
]|0;if(j>>>0<b>>>0)ya();c[j+24>>2]=f;d=l+16|0;a=c[d>>2]|0;do if(a|0)if(a
x3e;>>0<b>>>0)ya();else{c[j+16>>2]=a;c[a+24>>2]=j;break}while(0);d=c[d+4>
x3e;2]|0;if(d)if(d>>>0<(c[18404]|0)>>>0)ya();else{c[j+20>>2]=d;c[d+24>>2]=
j;r=l;g=k;break}else{r=l;g=k}}else{r=l;g=k}}else{r=a;g=b}while(0);h=c[18404]|0;if(o>>>0<h>>>0
)ya();d=o+4|0;a=c[d>>2]|0;if(!(a&2)){if((o|0)==(c[18406]|0)){q=(c[18403]|0)+g|0;c[18403]=q;c[18406]=r;c[r+4>
x3e;2]=q|1;if((r|0)!=(c[18405]|0))return;c[18405]=0;c[18402]=0;return}if((o|0)==(c[18405]|0)){q=(c[18402]|0)+g|0;c[18402]=q;c[18405
]=r;c[r+4>>2]=q|1;c[r+q>>2]=q;return}g=(a&-8)+g|0;e=a>>>3;do if(a>>>0>
;=256){f=c[o+24>>2]|0;b=c[o+12>>2]|0;do if((b|0)==(o|0)){a=o+16|0;b=a+4|0;d=c[b>>2]|0;if(!d){d=c[a
>>2]|0;if(!d){n=0;break}}else a=b;while(1){b=d+20|0;e=c[b>>2]|0;if(e|0){d=e;a=b;continue}b=d+16|0;e=c[b>
;>2]|0;if(!e)break;else{d=e;a=b}}if(a>>>0<h>>>0)ya();else{c[a>>2]=0;n=d;break}}
else{e=c[o+8>>2]|0;if(e>>>0<h>>>0)ya();d=e+12|0;if((c[d>>2]|0)!=(o|0))ya();
a=b+8|0;if((c[a>>2]|0)==(o|0)){c[d>>2]=b;c[a>>2]=e;n=b;break}else ya()}while(0);if(f|0){d=c[o+28
x3e;>2]|0;a=73904+(d<<2)|0;if((o|0)==(c[a>>2]|0)){c[a>>2]=n;if(!n){c[18401]=c[18401]&~(1
<<d);break}}else{if(f>>>0<(c[18404]|0)>>>0)ya();d=f+16|0;if((c[d>>2]|0)==(
o|0))c[d>>2]=n;else c[f+20>>2]=n;if(!n)break}b=c[18404]|0;if(n>>>0<b>>>0)
ya();c[n+24>>2]=f;d=o+16|0;a=c[d>>2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else
{c[n+16>>2]=a;c[a+24>>2]=n;break}while(0);d=c[d+4>>2]|0;if(d|0)if(d>>>0<(c[18404
]|0)>>>0)ya();else{c[n+20>>2]=d;c[d+24>>2]=n;break}}}else{a=c[o+8>>2]|0;b=c[o+12>
;>2]|0;d=73640+(e<<1<<2)|0;if((a|0)!=(d|0)){if(a>>>0<h>>>0)ya();if((
c[a+12>>2]|0)!=(o|0))ya()}if((b|0)==(a|0)){c[18400]=c[18400]&~(1<<e);break}if((b|0)!=(d|0)){if(b>
x3e;>0<h>>>0)ya();d=b+8|0;if((c[d>>2]|0)==(o|0))m=d;else ya()}else m=b+8|0;c[a+12>>
2]=b;c[m>>2]=a}while(0);c[r+4>>2]=g|1;c[r+g>>2]=g;if((r|0)==(c[18405]|0)){c[18402]=g;return}}else{
c[d>>2]=a&-2;c[r+4>>2]=g|1;c[r+g>>2]=g}d=g>>>3;if(g>>>0<256
){b=73640+(d<<1<<2)|0;a=c[18400]|0;d=1<<d;if(a&d){d=b+8|0;a=c[d>>2]|0;if(a>>
;>0<(c[18404]|0)>>>0)ya();else{p=d;q=a}}else{c[18400]=a|d;p=b+8|0;q=b}c[p>>2]=r;c[q+12>
x3e;2]=r;c[r+8>>2]=q;c[r+12>>2]=b;return}d=g>>>8;if(d)if(g>>>0>16777215)b
=31;else{p=(d+1048320|0)>>>16&8;q=d<<p;o=(q+520192|0)>>>16&4;q=q<<o;
b=(q+245760|0)>>>16&2;b=14-(o|p|b)+(q<<b>>>15)|0;b=g>>>(b+7|0)&
1|b<<1}else b=0;e=73904+(b<<2)|0;c[r+28>>2]=b;c[r+20>>2]=0;c[r+16>>2]=0;d=c[18401
]|0;a=1<<b;if(!(d&a)){c[18401]=d|a;c[e>>2]=r;c[r+24>>2]=e;c[r+12>>2]=r;c[r+8>
x3e;2]=r;return}f=g<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]
x26;-8|0)==(g|0)){b=d;e=127;break}a=d+16+(f>>>31<<2)|0;b=c[a>>2]|0;if(!b){e=124;break}else{f=
f<<1;d=b}}if((e|0)==124){if(a>>>0<(c[18404]|0)>>>0)ya();c[a>>2]=r;c[r+24
x3e;>2]=d;c[r+12>>2]=r;c[r+8>>2]=r;return}else if((e|0)==127){d=b+8|0;a=c[d>>2]|0;q=c[18404]|
0;if(!(a>>>0>=q>>>0&b>>>0>=q>>>0))ya();c[a+12>
x3e;2]=r;c[d>>2]=r;c[r+8>>2]=a;c[r+12>>2]=b;c[r+24>>2]=0;return}}function Ks(){}function
Ls(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (C=d,a-c
>>>0|0)|0}function Ms(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (C=b+d+(c>>>
;0<a>>>0|0)>>>0,c|0)|0}function Ns(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;h=b&3;i=d|d<<8|d<<16|d<<24;g=f&~3;if(h){h=b+4-h|0;while((b|0)
x3c;(h|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(g|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(f|0)){a[b>
x3e;0]=d;b=b+1|0}return b-e|0}function Os(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>>c;return a>>
x3e;c|(b&(1<<c)-1)<<32-c}C=0;return b>>>c-32|0}function Ps(a,b,c){a=a|0;b=b|0;c=c|0;if((
c|0)<32){C=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}C=a<
x3c;c-32;return 0}function Qs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;p=p+1|0;c[a>>2]=p;while((f|0)<(e|0)){if(!(
c[d+(f<<3)>>2]|0)){c[d+(f<<3)>>2]=p;c[d+((f<<3)+4)>>2]=b;c[d+((f<
;<3)+8)>>2]=0;C=e;return d|0}f=f+1|0}e=e*2|0;d=Hs(d|0,8*(e+1|0)|0)|0;d=Qs(a|0,b|0,d|0,e|0)|0;C=e;return d|0}function
Rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;while((f|0)<(d|0)){e=c[b+(f<<3)>>2]|0;if(!e)break;if((e|0)==(a
|0))return c[b+((f<<3)+4)>>2]|0;f=f+1|0}return 0}function Ss(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=
4096)return Ea(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if(!e)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 Ts(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 Ss(b,c,d)|0;return b|0}function Us(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>c;return a>
;>>c|(b&(1<<c)-1)<<32-c}C=(b|0)<0?-1:0;return b>>c-32|0}function Vs(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 Ws(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=_(e,f)|0;d=a>>
;>16;a=(c>>>16)+(_(e,d)|0)|0;e=b>>>16;b=_(e,f)|0;return (C=(a>>>16)+(_(e,d)|0)+(((
a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Xs(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)<
x3c;1;h=Ls(j^a|0,i^b|0,j|0,i|0)|0;g=C;a=f^j;b=e^i;return Ls((at(h,g,Ls(f^c|0,e^d|0,f|0,e|0)|0,C,0)|0)^a|0,C^b|0,a|0,b|0)|0}function
Ys(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+16|0;j=f|0;h=b>>31|((b|0)<0?-1:0)<
x3c;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;a=Ls(h^a|0,g^b|0,h|0,g|0)|0;b=C;at(a,b,Ls(l^d|0,k^e|0,l|0,k|0)|
0,C,j)|0;e=Ls(c[j>>2]^h|0,c[j+4>>2]^g|0,h|0,g|0)|0;d=C;i=f;return (C=d,e)|0}function Zs(a,b,c,d){a=a|0;b=b|0
;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Ws(e,f)|0;a=C;return (C=(_(b,f)|0)+(_(d,e)|0)+a|a&0,c|0|0)|0}function _s(a,b,c,d){a=a|0;
b=b|0;c=c|0;d=d|0;return at(a,b,c,d,0)|0}function $s(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+16|0;f=g|0;at(a,b,d,e,
f)|0;i=g;return (C=c[f+4>>2]|0,c[f>>2]|0)|0}function at(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0
,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(
h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (C=n,f
)|0}else{if(!g){n=0;f=0;return (C=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (C=n,f)|0}}g=(i|0)==0
;do if(h){if(!g){g=(aa(i|0)|0)-(aa(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>
;>>(m>>>0)&b|k<<i;b=k>>>(m>>>0)&b;g=0;i=l<<
i;break}if(!f){n=0;f=0;return (C=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (C=n,f)|0}g=h-1|0;if
(g&h|0){i=(aa(h|0)|0)+33-(aa(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>
31&k>>>(o>>>0)|(k<<m|l>>>(i>>>0))&b;b=b&k
x3e;>>(i>>>0);g=l<<p&j;i=(k<<p|l>>>(o>>>0))&
;j|l<<m&i-33>>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&
;0;p=a|0|0;return (C=o,p)|0}else{p=Vs(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>
;(p>>>0)|0;return (C=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c
[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (C=o,p)|0}if(!l){if(f|0){c[f
x3e;>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>
;0)>>>0;return (C=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&
;0}o=0;p=k>>>((Vs(i|0)|0)>>>0);return (C=o,p)|0}g=(aa(i|0)|0)-(aa(k|0)|0)|0;if(g>>>
0<=30){b=g+1|0;i=31-g|0;h=b;a=k<<i|l>>>(b>>>0);b=k>>>(b>>
x3e;0);g=0;i=l<<i;break}if(!f){o=0;p=0;return (C=o,p)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return
(C=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Ms(m|0,l|0,-1,-1)|0;d=C;j=i;i=0;do{e=j;j=g>>>31
|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Ls(k|0,d|0,
e|0,n|0)|0;p=C;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Ls(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>
x3e;31|((p|0)<0?-1:0)<<1)&l|0)|0;b=C;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4
x3e;>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|
0>>>31)&-2|i;return (C=o,p)|0}function bt(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return
Na[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ct(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Oa[a&63](b|0,c|0,d|0)|0}function
dt(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Pa[a&1](b|0,c|0,d|0,e|0,f|0)}function et(a,b,c,d,e,f,g,h,i,j){a=a|0;b=
b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;return Qa[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)|0}function ft(a,b,c
){a=a|0;b=b|0;c=c|0;Ra[a&7](b|0,c|0)}function gt(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 Sa[a&
3](b|0,c|0,d|0,e|0,f|0,g|0)|0}function ht(a,b){a=a|0;b=b|0;return Ta[a&63](b|0)|0}function it(a,b,c,d){a=a|0;b=b|0;c=c|0;d=
d|0;Ua[a&31](b|0,c|0,d|0)}function jt(a,b){a=a|0;b=b|0;Va[a&63](b|0)}function kt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=
e|0;return Wa[a&31](b|0,c|0,d|0,e|0)|0}function lt(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;Xa[a&7](b|
0,c|0,d|0,e|0,f|0,g|0)}function mt(a,b,c){a=a|0;b=b|0;c=c|0;return Ya[a&127](b|0,c|0)|0}function nt(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 Za[a&31](b|0,c|0,d|0,e|0,f|0)|0}function ot(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;_a[a
x26;15](b|0,c|0,d|0,e|0)}function pt(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;ba(0);return 0}function qt(a,b,c){
a=a|0;b=b|0;c=c|0;ba(1);return 0}function rt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(2)}function st(a,b,c,d,e,f,g,h,i){a=a|0
;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;ba(3);return 0}function tt(a,b){a=a|0;b=b|0;ba(4)}function ut(a,b,c,d,e,f){a=a|
0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ba(5);return 0}function vt(a){a=a|0;ba(6);return 0}function wt(a,b,c){a=a|0;b=b|0;c=c|0;ba(7)}function
xt(a){a=a|0;ba(8)}function yt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(9);return 0}function zt(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;
e=e|0;f=f|0;ba(10)}function At(a,b){a=a|0;b=b|0;ba(11);return 0}function Bt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(12);return
0}function Ct(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(13)}
// EMSCRIPTEN_END_FUNCS
var Na=[pt,il];var Oa=[qt,Yd,we,Ee,Ge,Qh,bk,ek,fk,Ok,Rk,hl,Ek,pl,rl,ul,dl,Al,Jk,Kk,Vl,nm,Cm,cp,tp,Hp,Kp,eq,rq,tq,xq,Br,Fr,Jf,Mf,
Nf,Of,Pf,If,Kf,Lf,wf,xf,yf,Af,Wm,Zd,Cr,Gr,qt,qt,qt,qt,qt,qt,qt,qt,qt,qt,qt,qt,qt,qt,qt];var Pa=[rt,nq];var Qa=[st,vq];var Ra=[tt
,Sl,km,Am,iq,An,wr,tt];var Sa=[ut,fl,hr,ut];var Ta=[vt,qe,$e,df,uh,Ai,Ei,Ah,Bh,Fh,Jh,$h,ei,gi,ii,Ck,Mm,Tm,Qm,Rm,Sm,_o,Cp,Zp,sq,Dq
,Qq,Vq,Wq,_q,fr,nr,or,yr,Te,Ue,Ve,mf,vt,vt,vt,vt,vt,vt,vt,vt,vt,vt,vt,vt,vt,vt,vt,vt,vt,vt,vt,vt,vt,vt,vt,vt,vt,vt];var Ua=[wt,qo
,ro,bp,ep,Gp,dr,yd,xd,qf,rf,tf,uf,on,xn,ho,wo,Vo,wt,wt,wt,wt,wt,wt,wt,wt,wt,wt,wt,wt,wt,wt];var Va=[xt,ue,Xe,af,vh,ti,Di,Fi,Gh,Lh
,Wj,vk,Xk,Zk,nl,ol,zl,Om,io,Zo,Bp,Lp,Pp,Rp,Sp,Vp,oq,uq,wq,Cq,Sq,Xq,ar,Uc,We,Im,an,cn,bo,zo,Yo,Jo,No,mp,sr,Dr,Hr,xt,xt,xt,xt,xt,xt
,xt,xt,xt,xt,xt,xt,xt,xt,xt,xt,xt];var Wa=[yt,ef,ph,Gi,_i,Ch,Oh,Zj,lk,Nk,cl,Dk,$o,ap,wp,Dp,Fp,Ip,Jp,Np,gq,Bq,Se,Ld,Cn,rr,vr,yt,yt
,yt,yt,yt];var Xa=[zt,xo,yo,Wo,Xo,zt,zt,zt];var Ya=[At,ve,rh,sh,xe,wh,aj,bj,xh,Dh,Eh,Hh,Ih,Mh,Nh,Ph,cj,dj,ej,fj,gj,hj,jj,kj,lj,mj
,nj,sj,tj,uj,vj,wj,xj,yj,zj,Aj,Bj,Cj,Dj,Ej,Fj,Gj,Hj,Ij,Lj,Mj,Nj,Oj,Pj,Sj,Tj,Uj,Vj,Xj,Yj,ck,jk,kk,yk,Pk,Sk,Tk,Uk,Vk,Wk,Yk,_k,$k,al
,bl,el,ql,sl,vl,Ak,Ik,Mk,Cl,El,Fl,Ul,jm,mm,zm,Bm,oo,so,dp,fp,lp,qp,aq,pq,Tq,Uq,Yq,Zq,br,cr,pr,lr,mr,ad,nf,sf,Kh,rk,sk,fn,Pq,$q,kr
,ur,At,At,At,At,At,At,At,At,At,At,At,At,At,At,At];var Za=[Bt,fd,hd,id,ld,md,nd,od,pd,qd,He,Xd,qh,Rh,$i,nk,pk,zk,Bl,Bk,Dm,cq,kq,mq
,Zm,Bt,Bt,Bt,Bt,Bt,Bt,Bt];var _a=[Ct,Qp,jq,qq,Bf,Cf,Df,Ef,Ff,Gf,rc,co,eo,hp,Ct,Ct];return{_get_top:nb,_main:sb,_load_font:jb,_bitshift64Lshr
:Os,_get_width:ob,_bitshift64Shl:Ps,_monochrome:ib,_memset:Ns,_find_font:kb,_memcpy:Ss,_i64Subtract:Ls,_realloc:Hs,_i64Add:Ms,_get_advance
:rb,_get_bitmap:lb,_get_height:pb,_get_left:mb,___errno_location:Ar,_testSetjmp:Rs,_saveSetjmp:Qs,_free:Gs,_memmove:Ts,_malloc:Fs
,_get_pitch:qb,runPostSets:Ks,stackAlloc:$a,stackSave:ab,stackRestore:bb,establishStackSpace:cb,setThrew:db,setTempRet0:gb,getTempRet0
:hb,dynCall_iiiiiiii:bt,dynCall_iiii:ct,dynCall_viiiii:dt,dynCall_iiiiiiiiii:et,dynCall_vii:ft,dynCall_iiiiiii:gt,dynCall_ii:ht,
dynCall_viii:it,dynCall_vi:jt,dynCall_iiiii:kt,dynCall_viiiiii:lt,dynCall_iii:mt,dynCall_iiiiii:nt,dynCall_viiii:ot}})
// EMSCRIPTEN_END_ASM
(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var _get_top=Module["_get_top"]=asm["_get_top"];var _main=
Module["_main"]=asm["_main"];var _load_font=Module["_load_font"]=asm["_load_font"];var _bitshift64Lshr
=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _get_width=Module["_get_width"]=asm["_get_width
"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _monochrome=Module["_monochrome
"]=asm["_monochrome"];var _memset=Module["_memset"]=asm["_memset"];var _find_font=Module["
;_find_font"]=asm["_find_font"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _i64Subtract
=Module["_i64Subtract"]=asm["_i64Subtract"];var _realloc=Module["_realloc"]=asm["_realloc"
;];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _get_advance=Module["_get_advance"]=asm["
_get_advance"];var _get_bitmap=Module["_get_bitmap"]=asm["_get_bitmap"];var _get_height=Module["_get_height
"]=asm["_get_height"];var _get_left=Module["_get_left"]=asm["_get_left"];var ___errno_location
=Module["___errno_location"]=asm["___errno_location"];var _testSetjmp=Module["_testSetjmp"]=asm[
x22;_testSetjmp"];var _saveSetjmp=Module["_saveSetjmp"]=asm["_saveSetjmp"];var _free=Module["_free
"]=asm["_free"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var _memmove=Module[
x22;_memmove"]=asm["_memmove"];var _malloc=Module["_malloc"]=asm["_malloc"];var _get_pitch=Module
["_get_pitch"]=asm["_get_pitch"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii
"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_viiiii=Module["dynCall_viiiii
"]=asm["dynCall_viiiii"];var dynCall_iiiiiiiiii=Module["dynCall_iiiiiiiiii"]=asm["dynCall_iiiiiiiiii
"];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_vi=Module["dynCall_vi"]=asm["dynCall_vi
"];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.establishStackSpace=asm["establishStackSpace"];Runtime.setTempRet0=asm["setTempRet0
"];Runtime.getTempRet0=asm["getTempRet0"];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(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};Module["callMain
"]=Module.callMain=function callMain(args){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"]),"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);try{var ret=Module["_main"](argc,argv,0);exit(ret,true)}catch
(e){if(e instanceof ExitStatus){return}else if(e=="SimulateInfiniteLoop"){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){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;
function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();
preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(Module["_main"]&
;&shouldRunNow)Module["callMain"](args);postRun()}if(Module["setStatus"]){Module["setStatus"](
x22;Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1
)}else{doRun()}}Module["run"]=Module.run=run;function exit(status,implicit){if(implicit&&Module["noExitRuntime
"]){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();
if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}else
if(ENVIRONMENT_IS_SHELL&&typeof quit==="function"){quit(status)}throw new ExitStatus(status)}Module["exit
"]=Module.exit=exit;var abortDecorators=[];function abort(what){if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;var extra=
x22;\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";var output="abort("+what+") at "+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module["abort"]=Module.abort=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"]){shouldRunNow=false}Module["noExitRuntime"]=true;run()
...
printErr = function () { [native code] }
...
var Module;if(typeof Module==="undefined")Module={};if(!Module.expectedDataFileDownloads){Module.expectedDataFileDownloads
=0;Module.finishedDataFileDownloads=0}Module.expectedDataFileDownloads++;((function(){var loadPackage=(function(metadata){function
runWithFS(){var fileData0=[];fileData0.push.apply(fileData0,[79,84,84,79,0,13,0,128,0,3,0,80,67,70,70,32,137,224,82,238,0,0,7,132
,0,0,45,223,70,70,84,77,101,130,23,249,0,0,55,12,0,0,0,28,71,68,69,70,0,160,0,4,0,0,53,100,0,0,0,32,71,80,79,83,184,255,184,254,
0,0,54,220,0,0,0,48,71,83,85,66,234,147,151,221,0,0,53,132,0,0,1,88,79,83,47,50,131,156,137,79,0,0,1,64,0,0,0,96,99,109,97,112,146
,230,183,142,0,0,5,184,0,0,1,170,104,101,97,100,251,7,171,9,0,0,0,220,0,0,0,54,104,104,101,97,7,42,2,2,0,0,1,20,0,0,0,36,104,109
,116,120,33,252,29,155,0,0,55,40,0,0,0,234,109,97,120,112,0,115,80,0,0,0,1,56,0,0,0,6,110,97,109,101,152,108,186,46,0,0,1,160,0,
0,4,23,112,111,115,116,0,3,0,1,0,0,7,100,0,0,0,32,0,1,0,0,0,2,0,0,252,84,172,109,95,15,60,245,0,11,3,232,0,0,0,0,204,138,51,83,0
,0,0,0,204,138,51,83,0,87,255,44,2,124,4,82,0,0,0,8,0,2,0,0,0,0,0,0,0,1,0,0,4,82,255,44,0,90,2,211,0,0,0,0,2,124,0,1,0,0,0,0,0,0
,0,0,0,0,0,0,0,0,0,2,0,0,80,0,0,115,0,0,0,3,2,211,1,144,0,5,0,0,2,138,2,188,0,0,0,140,2,138,2,188,0,0,1,224,0,49,1,2,0,0,2,0,5,9
,0,0,0,0,0,0,0,0,0,35,0,0,42,0,0,0,0,0,0,0,0,0,80,102,69,100,0,64,0,32,37,160,3,32,255,56,0,90,4,82,0,212,0,0,0,1,0,0,0,0,2,56,3
,12,0,32,0,32,0,1,0,0,0,24,1,38,0,1,0,0,0,0,0,0,0,86,0,174,0,1,0,0,0,0,0,1,0,4,1,15,0,1,0,0,0,0,0,2,0,7,1,36,0,1,0,0,0,0,0,3,0,33
,1,112,0,1,0,0,0,0,0,4,0,5,1,158,0,1,0,0,0,0,0,5,0,10,1,186,0,1,0,0,0,0,0,6,0,4,1,207,0,1,0,0,0,0,1,0,0,16,2,224,0,1,0,0,0,0,1,1
,0,23,2,166,0,1,0,0,0,0,1,2,0,20,2,97,0,1,0,0,0,0,1,3,0,15,2,39,0,1,0,0,0,0,1,4,0,16,1,246,0,3,0,1,4,9,0,0,0,172,0,0,0,3,0,1,4,9
,0,1,0,8,1,5,0,3,0,1,4,9,0,2,0,14,1,20,0,3,0,1,4,9,0,3,0,66,1,44,0,3,0,1,4,9,0,4,0,10,1,146,0,3,0,1,4,9,0,5,0,20,1,164,0,3,0,1,4
,9,0,6,0,8,1,197,0,3,0,1,4,9,1,0,0,32,2,190,0,3,0,1,4,9,1,1,0,46,2,118,0,3,0,1,4,9,1,2,0,40,2,55,0,3,0,1,4,9,1,3,0,30,2,7,0,3,0,
1,4,9,1,4,0,32,1,212,0,77,0,97,0,116,0,116,0,104,0,101,0,119,0,32,0,83,0,107,0,97,0,108,0,97,0,32,0,40,0,50,0,48,0,49,0,49,0,45,
0,49,0,50,0,41,0,59,0,32,0,98,0,97,0,115,0,101,0,100,0,32,0,111,0,110,0,32,0,99,0,111,0,100,0,101,0,32,0,98,0,121,0,32,0,82,0,105
,0,99,0,104,0,97,0,114,0,100,0,32,0,66,0,46,0,32,0,87,0,97,0,108,0,101,0,115,0,32,0,40,0,49,0,57,0,56,0,56,0,45,0,56,0,57,0,41,0
,32,0,97,0,110,0,100,0,32,0,84,0,111,0,114,0,32,0,76,0,105,0,108,0,108,0,113,0,118,0,105,0,115,0,116,0,0,77,97,116,116,104,101,119
,32,83,107,97,108,97,32,40,50,48,49,49,45,49,50,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,82,105,99,104
,97,114,100,32,66,46,32,87,97,108,101,115,32,40,49,57,56,56,45,56,57,41,32,97,110,100,32,84,111,114,32,76,105,108,108,113,118,105
,115,116,0,0,79,0,67,0,82,0,65,0,0,79,67,82,65,0,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,0,82,101,103,117,108,97,114,0,0,70,0,
111,0,110,0,116,0,70,0,111,0,114,0,103,0,101,0,32,0,50,0,46,0,48,0,32,0,58,0,32,0,79,0,67,0,82,0,32,0,65,0,32,0,58,0,32,0,50,0,55
,0,45,0,57,0,45,0,50,0,48,0,49,0,50,0,0,70,111,110,116,70,111,114,103,101,32,50,46,48,32,58,32,79,67,82,32,65,32,58,32,50,55,45,
57,45,50,48,49,50,0,0,79,0,67,0,82,0,32,0,65,0,0,79,67,82,32,65,0,0,86,0,101,0,114,0,115,0,105,0,111,0,110,0,32,0,50,0,32,0,0,86
,101,114,115,105,111,110,32,50,32,0,0,79,0,67,0,82,0,65,0,0,79,67,82,65,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,
32,0,104,0,121,0,112,0,104,0,101,0,110,0,0,65,108,116,101,114,110,97,116,101,32,104,121,112,104,101,110,0,0,65,0,108,0,116,0,101
,0,114,0,110,0,97,0,116,0,101,0,32,0,99,0,111,0,109,0,109,0,97,0,0,65,108,116,101,114,110,97,116,101,32,99,111,109,109,97,0,0,65
,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,97,0,112,0,111,0,115,0,116,0,114,0,111,0,112,0,104,0,101,0,0,65,108,116,101
,114,110,97,116,101,32,97,112,111,115,116,114,111,112,104,101,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,113,0
,117,0,101,0,115,0,116,0,105,0,111,0,110,0,32,0,109,0,97,0,114,0,107,0,0,65,108,116,101,114,110,97,116,101,32,113,117,101,115,116
,105,111,110,32,109,97,114,107,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,112,0,101,0,114,0,105,0,111,0,100,0,
0,65,108,116,101,114,110,97,116,101,32,112,101,114,105,111,100,0,0,0,0,0,3,0,0,0,3,0,0,0,28,0,1,0,0,0,0,0,164,0,3,0,1,0,0,0,28,0
,4,0,136,0,0,0,30,0,16,0,3,0,14,0,93,0,125,0,163,0,165,0,198,0,209,0,214,0,216,0,220,2,198,2,220,36,66,37,2,37,160,255,255,0,0,0
,32,0,95,0,163,0,165,0,196,0,209,0,214,0,216,0,220,2,198,2,220,36,64,37,2,37,160,255,255,255,225,255,225,255,192,255,191,255,167
,255,157,255,153,255,152,255,149,253,121,253,131,220,40,219,112,218,192,0,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,1,6,0,0,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,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,0,64,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,91,92,93,94,0,0,107,108,0,0,110,111,113,0
,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,109,112,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,95,0,0,0,0,0,0,0,0,0,0,0,
3,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,0,0,0,0,0,1,0,4,4,0,1,1,1,5,79,67,82,65,0,1,2,0,1,0,52,248,37,0,248,38,1,248
,39,2,248,40,3,248,24,4,140,12,1,139,12,3,139,12,4,226,251,104,249,16,250,230,5,28,1,37,15,28,0,0,16,28,2,10,17,28,0,52,28,44,255
,18,0,14,2,0,1,0,8,0,18,0,30,0,45,0,54,0,64,0,71,0,78,0,85,0,92,0,93,0,179,0,184,0,188,117,110,105,50,53,65,48,112,101,114,105,111
,100,46,97,108,116,113,117,101,115,116,105,111,110,46,97,108,116,113,117,111,116,101,115,105,110,103,108,101,46,97,108,116,99,111
,109,109,97,46,97,108,116,104,121,112,104,101,110,46,97,108,116,117,110,105,50,52,52,48,117,110,105,50,52,52,49,117,110,105,50,52
,52,50,117,110,105,50,53,48,50,50,77,97,116,116,104,101,119,32,83,107,97,108,97,32,40,50,48,49,49,45,49,50,41,59,32,98,97,115,101
,100,32,111,110,32,99,111,100,101,32,98,121,32,82,105,99,104,97,114,100,32,66,46,32,87,97,108,101,115,32,40,49,57,56,56,45,56,57
,41,32,97,110,100,32,84,111,114,32,76,105,108,108,113,118,105,115,116,79,67,82,32,65,79,67,82,65,0,0,0,0,1,0,2,0,3,0,4,0,5,0,6,0
,7,0,104,0,9,0,10,0,11,0,12,0,13,0,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,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,54,0,55,0,56,0,57,0,58
,0,59,0,60,0,61,0,62,0,126,0,64,0,124,0,66,0,67,0,68,0,69,0,70,0,71,0,72,0,73,0,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,94,0,127,1,135,1,136,1,137,0,98,0,100,1,138,1,139,1,140,1,141,1,142,1,143,0,
173,0,175,0,138,0,186,0,189,0,141,0,195,1,144,0,115,2,0,1,0,2,0,3,0,83,0,176,1,63,1,187,2,61,2,234,3,34,3,139,3,246,4,140,4,211,
5,14,5,53,5,71,5,130,5,188,6,14,6,92,6,201,7,21,7,123,7,211,8,39,8,144,8,232,9,27,9,119,9,196,9,216,10,39,10,170,11,66,11,143,11
,243,12,105,12,231,13,39,13,99,13,228,14,46,14,118,14,188,15,28,15,68,15,149,15,210,16,117,16,190,17,91,17,192,18,53,18,125,18,197
,19,19,19,142,20,9,20,87,20,138,20,206,21,11,21,83,21,150,21,183,21,243,22,121,23,30,23,143,23,241,24,117,24,203,25,137,25,231,26
,82,26,217,27,62,27,121,27,254,28,88,28,228,29,153,29,252,30,80,30,236,31,77,31,171,32,7,32,141,33,8,33,124,33,201,34,51,34,94,34
,199,35,51,35,66,35,109,35,221,36,79,36,202,37,3,37,58,37,70,37,124,37,187,38,0,38,114,38,227,39,107,39,238,40,193,41,142,41,252
,42,11,14,14,139,247,35,249,17,119,1,247,178,247,43,3,247,178,190,21,111,162,116,167,30,188,6,167,162,162,167,31,181,7,167,116,161
,111,30,90,6,111,116,117,111,31,249,17,4,164,252,19,5,141,111,160,117,167,139,8,165,163,160,168,31,164,248,19,139,142,5,165,115,
160,112,30,90,6,111,116,116,112,31,14,249,59,240,1,247,55,238,3,247,3,249,110,21,191,251,157,5,144,116,159,121,164,139,163,139,160
,157,143,162,8,181,247,106,247,6,139,180,251,97,5,139,137,138,137,139,137,139,115,165,119,165,139,170,139,155,163,144,165,153,216
,154,221,159,212,8,153,7,140,144,140,145,139,144,139,143,138,143,143,12,37,171,252,134,102,7,138,134,138,135,139,135,8,14,247,189
,240,247,3,240,247,62,119,1,247,104,240,236,240,3,247,5,247,240,21,111,161,116,167,30,188,251,11,6,111,161,116,167,167,162,162,167
,30,247,11,236,251,11,7,111,162,116,167,167,161,162,167,30,247,11,188,7,167,162,162,167,166,116,162,111,31,90,247,3,188,6,167,162
,162,167,167,116,161,111,31,90,247,12,6,166,117,162,111,111,116,116,112,30,251,12,42,247,12,7,166,116,162,111,111,117,116,112,30
,251,12,90,7,111,117,117,111,111,161,116,167,31,188,251,3,90,6,111,117,116,112,31,247,92,189,21,247,3,236,251,3,7,14,160,118,247
,62,240,207,241,207,240,247,62,119,1,247,5,239,237,240,237,240,3,20,112,247,5,247,112,21,111,161,117,167,30,247,40,251,11,6,111,
162,116,167,166,162,162,167,30,247,11,247,40,7,167,162,161,167,31,247,62,7,167,116,162,111,30,251,239,207,247,239,6,167,162,162,
167,167,116,161,111,31,251,40,247,12,6,166,116,162,112,111,116,116,112,30,251,12,251,40,7,111,117,117,111,31,251,62,7,111,161,116
,167,30,247,239,71,251,239,6,111,117,116,111,31,14,139,247,78,248,44,247,78,1,247,5,247,92,236,247,93,3,247,5,247,27,21,111,161,
117,167,30,155,139,154,146,148,151,8,248,33,248,146,5,146,147,143,150,139,151,139,167,116,161,111,139,123,139,124,132,130,127,8,
252,33,252,146,5,132,131,136,128,139,127,8,248,146,4,111,161,116,167,30,238,6,167,162,162,167,31,224,7,166,116,162,111,30,40,6,111
,117,116,112,31,247,189,253,59,21,111,162,116,167,30,238,6,167,162,162,167,31,223,7,167,116,162,111,30,40,6,111,116,116,111,31,14
,139,240,248,129,240,1,247,5,240,247,88,240,3,247,5,247,43,21,57,207,70,222,30,237,6,151,139,150,144,148,146,8,213,202,194,80,5,
148,129,152,133,154,139,167,139,162,162,139,167,139,152,133,151,131,148,8,87,195,5,161,157,183,163,139,176,139,167,116,162,111,139
,126,139,128,134,130,132,8,88,95,32,247,6,247,17,246,5,150,148,145,154,139,154,8,208,7,221,71,208,56,30,43,6,56,71,70,57,31,70,7
,139,126,144,126,147,130,8,235,37,47,60,5,128,129,133,126,139,123,8,240,70,21,139,185,217,205,246,251,6,83,91,60,139,5,112,116,161
,167,31,247,236,4,188,7,167,162,161,166,30,235,6,165,163,115,113,31,139,93,251,3,45,5,14,249,160,119,18,247,153,247,93,251,93,239
,19,160,247,153,248,26,21,111,162,117,167,30,163,139,158,155,145,161,8,238,247,229,5,19,192,140,144,140,144,139,144,8,166,116,162
,111,30,40,6,111,116,116,112,31,14,160,118,249,160,119,1,247,153,240,3,247,153,247,186,21,139,87,158,97,163,108,8,247,9,251,42,5
,148,128,154,131,155,139,167,139,161,162,139,167,139,150,135,150,133,148,8,251,9,247,41,5,127,155,129,160,139,165,8,247,84,7,139
,165,149,160,151,155,8,247,9,247,41,5,145,148,143,150,139,151,139,166,117,162,111,139,123,139,124,131,130,128,8,251,9,251,42,5,115
,108,120,97,139,87,8,14,160,118,249,160,119,1,247,253,240,3,247,104,190,21,111,161,116,167,30,155,139,154,147,148,150,8,247,9,247
,42,5,163,170,158,181,139,191,8,247,84,7,139,191,120,181,115,170,8,251,9,247,42,5,130,150,124,147,123,139,111,139,117,116,139,112
,139,127,143,128,145,130,8,247,9,251,41,5,151,123,149,118,139,113,8,251,84,7,139,113,129,118,127,123,8,251,9,251,41,5,133,130,135
,128,139,128,8,14,247,203,240,3,247,5,247,112,21,111,161,117,167,30,152,139,150,143,148,147,8,247,7,237,139,251,37,5,111,162,117
,167,166,162,161,167,30,139,247,37,247,7,41,5,148,131,150,135,152,139,167,139,162,161,139,167,139,155,132,152,128,149,8,251,45,247
,23,247,45,247,23,5,150,149,146,152,139,155,139,167,116,161,111,139,126,139,128,135,130,131,8,251,7,41,139,247,37,5,167,116,161,
112,111,116,117,111,30,139,251,37,251,7,237,5,130,147,128,143,126,139,111,139,117,117,139,111,139,123,145,126,150,129,8,247,45,251
,23,251,45,251,23,5,128,129,133,126,139,123,8,14,247,232,240,1,247,203,240,3,247,5,248,26,21,111,161,117,167,30,247,40,251,40,6,
111,162,116,167,166,162,162,167,30,247,40,247,40,7,167,162,161,167,167,116,162,111,31,251,40,247,40,6,166,116,162,112,111,116,116
,112,30,251,40,251,40,7,111,117,116,111,31,14,160,118,247,147,240,18,247,104,247,191,38,240,19,224,247,104,247,197,21,111,161,117
,167,30,19,208,247,40,251,96,6,111,162,116,167,167,161,162,167,30,19,224,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31
,14,247,189,247,36,1,247,5,247,240,21,111,161,116,167,30,248,33,6,167,162,162,167,31,181,7,167,116,162,111,30,252,33,6,111,117,116
,111,31,14,247,19,247,78,1,247,153,247,93,3,247,153,247,70,21,32,10,14,160,118,249,160,119,1,247,5,190,21,111,161,116,167,30,158
,139,155,149,148,154,8,248,33,249,59,5,143,147,142,147,139,149,139,166,116,162,111,139,120,139,123,129,130,124,8,252,33,253,59,5
,135,131,137,131,139,130,8,14,139,240,248,214,240,1,247,5,240,247,188,240,3,247,5,240,21,84,185,93,194,30,247,188,6,193,186,186,
193,31,248,214,7,193,92,186,85,30,251,188,6,84,93,93,84,31,240,252,214,21,248,214,247,188,252,214,7,14,139,240,248,214,240,18,247
,5,247,191,38,240,237,240,19,232,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,247,146,7,167,116,162,111,111,117,116
,111,30,251,96,7,19,216,41,249,59,251,141,6,19,232,111,117,116,112,111,161,116,167,31,19,216,247,40,252,214,251,40,6,111,117,116
,112,31,14,139,240,247,131,239,247,131,240,1,247,5,240,247,188,240,3,20,224,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31
,251,238,247,131,247,188,6,193,186,185,193,31,247,131,7,193,92,186,85,30,251,239,6,111,117,116,112,111,161,116,167,31,247,239,251
,131,251,188,6,84,93,94,84,31,14,139,240,247,131,240,247,130,240,1,248,146,240,3,20,224,247,5,190,21,111,161,116,167,30,247,239,
6,193,186,186,193,31,247,80,7,139,177,124,175,114,166,164,166,154,174,139,178,8,247,80,7,193,92,186,85,30,251,239,6,111,117,116,
112,111,161,116,167,31,247,239,251,80,6,112,116,116,111,30,251,89,6,111,117,116,111,111,161,117,167,31,247,89,6,166,163,115,112,
31,251,80,251,239,7,111,117,116,112,31,14,160,118,247,147,240,248,60,119,1,247,29,240,247,89,240,3,247,29,247,147,21,247,190,251
,96,6,111,162,116,167,166,162,162,167,30,247,96,7,167,161,161,167,167,117,162,111,31,247,181,7,167,116,161,112,111,116,117,111,30
,251,181,251,89,248,10,7,166,117,162,111,111,116,116,112,30,14,139,240,84,236,247,89,240,247,130,240,18,247,104,240,247,89,240,20
,176,19,124,247,5,232,21,139,118,151,121,157,131,8,19,188,181,121,181,111,195,139,8,247,119,6,193,186,186,193,31,247,131,7,193,92
,186,85,30,251,89,247,130,247,139,6,167,162,162,167,166,116,162,111,31,251,240,252,76,247,190,251,131,251,129,6,49,177,5,19,124,
133,142,132,140,132,139,8,111,117,117,111,31,14,139,240,247,46,240,247,215,240,18,247,5,247,42,251,42,239,247,189,240,19,236,247
,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,247,146,7,167,116,162,111,30,251,239,247,215,6,19,244,167,161,162,167,31
,19,236,166,117,162,111,30,89,6,19,244,111,117,116,112,31,19,236,239,253,9,21,247,46,247,189,251,46,7,14,160,118,249,59,240,1,247
,203,240,237,240,3,247,5,249,67,21,111,161,117,167,30,164,139,160,157,143,163,8,247,189,251,73,6,251,73,251,46,5,128,129,132,125
,139,124,8,251,146,7,111,162,116,167,166,162,162,167,30,139,247,123,247,73,247,46,5,150,149,146,153,139,154,8,247,197,252,84,7,111
,117,116,112,31,14,139,240,247,131,240,247,130,240,18,247,5,239,139,239,236,239,139,240,19,240,247,5,240,21,19,234,84,185,93,193
,30,247,189,6,193,186,186,193,31,247,131,7,19,228,193,92,186,85,30,19,234,247,181,7,166,118,162,111,30,251,91,6,111,118,116,112,
31,251,181,7,19,240,84,94,92,85,31,239,251,131,21,247,131,7,19,242,247,189,251,131,6,19,236,251,89,247,232,21,247,130,236,251,130
,7,14,139,240,247,215,240,247,46,240,18,247,5,239,247,139,247,43,38,240,19,244,247,5,248,111,21,111,161,116,167,30,247,239,251,215
,6,19,248,111,117,116,112,31,19,244,111,161,116,167,30,189,6,19,248,167,162,162,167,31,19,244,249,59,7,166,116,162,111,30,252,33
,6,111,117,116,112,31,239,251,97,21,247,46,247,189,251,46,7,14,247,19,247,78,247,46,247,78,1,247,153,247,93,3,247,153,247,70,21,
32,10,247,146,4,111,162,117,167,30,238,6,167,162,161,167,31,224,7,167,116,162,111,30,40,6,111,116,116,111,31,14,160,118,247,147,
240,247,45,247,78,18,247,104,247,92,137,240,19,240,247,104,247,197,21,111,161,117,167,30,19,232,247,40,251,96,6,111,162,116,167,
167,161,162,167,30,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31,19,240,247,147,4,111,161,116,167,30,239,6,166,162,162
,167,31,224,7,167,116,161,112,30,39,6,111,117,117,111,31,14,247,5,248,4,21,139,120,149,124,153,130,8,248,33,251,125,5,147,134,148
,137,148,139,167,139,162,161,139,167,139,158,128,155,125,148,8,251,251,247,103,247,251,247,103,5,153,148,150,155,139,158,139,167
,116,161,111,139,130,139,130,137,131,134,8,252,33,251,125,5,125,130,129,123,139,120,8,14,247,147,240,247,3,240,1,247,5,247,197,21
,33,10,247,104,4,33,10,14,247,5,247,27,21,111,161,117,167,30,148,139,148,141,147,144,8,248,38,247,128,5,152,147,146,155,139,156,
8,181,7,139,158,128,155,125,148,8,252,33,247,125,5,131,144,130,141,130,139,111,139,117,117,139,111,139,120,149,123,153,130,8,247
,252,251,103,251,252,251,103,5,125,130,129,123,139,120,8,14,139,240,249,59,119,1,247,104,240,3,247,5,248,111,21,111,161,116,167,
30,152,139,150,144,148,146,8,247,157,247,119,188,97,139,101,251,173,251,131,5,128,130,133,124,139,124,8,54,7,111,161,117,167,167
,162,161,167,30,139,201,247,172,247,131,5,150,149,146,152,139,155,8,224,7,139,154,132,153,128,148,8,40,224,5,130,146,127,144,127
,139,126,139,128,134,130,12,37,251,190,251,147,5,128,130,133,125,139,124,8,238,252,60,21,111,161,116,167,167,162,162,167,166,116
,162,111,111,117,116,112,30,14,139,240,247,173,240,247,88,240,1,247,5,240,236,240,237,240,3,20,224,20,28,247,5,247,42,21,57,206,
71,221,30,177,139,174,154,166,163,165,115,174,124,177,139,8,220,208,207,221,31,248,88,7,235,58,221,42,30,251,35,6,93,139,96,120,
105,108,118,120,106,109,139,103,139,111,161,116,167,139,158,139,157,150,147,155,153,166,171,170,175,139,8,247,35,6,181,174,104,97
,31,252,88,7,113,117,116,112,112,117,161,166,30,247,174,7,167,116,162,112,30,39,6,57,72,71,57,31,240,251,75,21,247,75,7,166,160,
161,166,30,188,251,124,6,112,117,117,112,112,118,161,166,30,14,160,118,247,62,240,248,145,119,1,247,2,190,21,111,163,116,167,30,
162,139,159,154,145,160,8,178,247,26,247,115,139,178,251,26,5,145,118,158,124,162,139,8,167,163,162,167,31,251,94,249,73,5,133,160
,118,154,117,139,116,139,120,124,133,118,8,106,252,109,21,220,247,170,221,251,170,5,14,139,240,247,131,240,247,130,240,1,247,5,240
,247,188,240,3,247,5,22,247,188,6,247,2,231,232,247,1,31,176,7,139,198,111,194,97,176,181,176,167,194,139,198,8,176,7,247,1,47,232
,251,2,30,251,188,6,240,253,59,21,247,131,247,87,7,193,186,92,85,31,102,7,85,92,92,85,30,251,87,247,232,21,247,130,247,87,7,193,
186,92,85,31,102,7,85,92,93,85,30,14,139,240,248,214,240,1,247,5,240,3,247,5,248,26,21,139,98,149,107,153,109,171,69,174,73,174,
72,162,94,189,100,201,139,8,247,78,6,167,162,162,167,166,116,162,111,31,251,78,6,119,139,122,152,132,154,8,36,247,95,5,131,156,134
,157,139,162,139,162,144,157,156,12,37,242,247,95,5,146,154,156,152,159,139,8,247,78,6,167,162,162,167,166,116,162,111,31,251,78
,6,77,139,86,102,118,93,8,38,251,96,5,125,110,129,106,139,98,8,14,139,240,248,214,240,1,247,104,240,247,89,240,3,247,5,190,21,111
,161,116,167,30,247,78,6,201,139,192,176,160,185,8,240,247,96,5,153,168,150,173,139,179,139,179,128,173,125,168,8,37,247,95,5,116
,184,89,178,77,139,8,251,78,6,111,117,116,112,111,161,116,167,31,188,252,214,90,6,111,117,116,112,31,247,92,189,21,248,214,175,7
,159,139,156,126,146,124,8,242,251,95,5,147,123,145,119,139,117,139,117,132,120,122,12,37,36,251,95,5,132,124,122,126,119,139,8,
14,139,240,247,131,240,247,130,240,1,247,5,240,3,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31,251,238,247,131,247,40,6,166
,162,161,167,167,116,162,112,31,251,40,247,130,247,238,6,167,162,162,167,166,116,162,111,31,252,83,6,14,160,118,248,60,240,247,46
,240,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,248,9,247,139,7,167,161,162,167,167,117,161,111,31,251,139,247
,46,247,238,6,167,162,162,167,166,116,162,111,31,252,83,6,14,139,240,247,46,240,247,215,240,18,247,5,240,247,39,247,142,38,240,19
,244,247,5,247,44,21,56,206,70,223,30,247,87,6,222,208,208,222,31,247,96,251,92,7,19,248,111,117,116,111,111,161,117,167,31,19,244
,238,36,6,111,115,116,112,30,251,87,6,112,116,162,167,31,247,163,7,139,165,148,159,151,155,8,247,28,247,66,5,147,150,153,148,157
,139,8,247,41,6,167,162,162,167,166,116,162,111,31,251,41,6,86,139,97,113,114,107,8,251,28,251,68,5,115,108,121,99,139,87,8,14,160
,118,247,232,240,247,231,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,247,181,247,188,251,181,7
,111,161,116,167,167,162,162,167,30,249,59,7,166,116,162,111,111,117,116,112,30,251,181,251,188,247,181,7,166,116,162,111,111,117
,116,112,30,14,139,240,248,214,240,1,247,203,240,3,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251
,40,248,214,247,40,6,167,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,111,161,116,167,31,247,40,252,214,251,40,6,111,
117,116,112,31,14,139,240,249,59,119,1,247,54,240,247,89,240,3,247,54,247,43,21,56,208,71,222,30,234,6,222,208,208,221,31,248,215
,7,166,116,162,111,111,117,116,112,30,252,215,7,112,116,116,111,30,44,6,111,116,161,167,31,247,46,7,167,117,162,111,111,116,116,
111,30,14,160,118,249,160,119,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,121,247,205,251,160,5,148,132
,150,134,152,139,167,139,162,162,139,167,139,154,132,153,128,148,8,251,244,247,193,247,244,247,193,5,150,148,146,153,139,155,139
,166,116,162,111,139,126,139,128,134,130,132,8,251,205,251,160,139,247,122,5,166,116,162,111,111,117,116,112,30,14,139,240,249,59
,119,1,247,5,240,3,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31,251,238,249,9,6,166,116,162,111,111,117,116,112,30,14,160
,118,249,160,119,1,247,5,240,236,240,237,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,248,224,236,251,30,139,113,5,
111,162,116,167,166,162,162,167,30,139,165,237,247,32,139,252,226,5,111,161,116,167,167,162,162,167,30,249,109,251,19,7,251,14,251
,67,251,15,247,67,251,18,139,5,14,160,118,249,160,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,
139,248,185,247,155,252,236,247,26,139,139,249,110,5,166,116,162,111,111,117,116,112,30,139,252,188,251,156,248,238,251,25,139,5
,14,139,240,248,214,240,1,247,5,240,247,188,240,3,247,5,248,26,21,139,98,148,106,154,110,8,246,251,107,5,159,101,182,105,193,139
,194,139,182,173,159,177,8,246,247,107,5,153,168,150,173,139,179,139,179,128,173,125,168,8,32,247,107,5,119,177,96,173,84,139,85
,139,96,105,119,101,8,32,251,107,5,125,110,129,106,139,98,8,247,6,197,21,247,0,247,105,5,144,149,148,147,151,139,151,139,150,130
,143,12,37,247,0,251,105,5,147,123,145,119,139,117,139,117,132,120,122,12,37,32,251,107,5,134,129,130,133,125,139,127,139,129,147
,135,148,8,251,0,247,106,5,131,156,134,157,139,162,139,162,144,157,156,12,37,14,160,118,247,189,240,247,173,240,1,247,5,240,247,
188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,247,138,247,137,7,222,208,208,222,31,247,72,7,221,70,208,56,30,251,238
,6,240,252,18,21,247,173,247,137,7,165,164,116,112,31,251,72,7,111,115,116,112,30,14,139,240,249,59,119,1,247,5,240,236,247,13,217
,240,3,247,5,247,15,21,72,194,83,206,30,172,139,166,152,158,156,8,214,203,176,45,247,26,139,5,167,162,162,167,166,116,162,111,31
,74,139,115,200,5,201,191,217,189,139,247,3,8,247,174,7,206,82,195,72,30,107,139,110,126,121,122,8,251,117,251,82,5,100,105,108,
85,139,72,8,240,251,174,21,247,174,7,139,174,154,165,158,156,8,247,124,247,87,146,139,5,152,149,130,127,31,251,174,7,139,80,93,113
,107,111,126,173,127,199,94,139,111,139,116,116,139,111,139,133,140,132,141,134,8,176,45,251,0,47,131,139,5,126,131,148,152,31,14
,160,118,248,60,240,247,46,240,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,248,9,208,7,247,125,252
,35,5,148,124,155,129,158,139,167,139,162,162,139,167,139,148,136,147,135,147,8,251,95,247,240,197,139,5,221,209,209,221,31,191,
7,222,70,208,56,30,251,238,6,240,251,147,21,247,46,247,137,7,166,163,116,111,31,87,7,112,115,115,112,30,14,139,240,248,214,240,1
,247,5,240,247,188,240,3,247,5,247,27,21,65,201,78,212,30,247,141,6,203,139,187,192,141,200,139,167,128,164,125,156,8,252,8,248,
114,139,143,139,142,5,146,146,142,144,30,247,141,6,157,156,123,121,111,161,116,167,167,162,162,167,213,76,200,66,31,251,141,6,78
,87,88,79,31,136,7,139,111,149,115,152,121,8,248,10,252,118,5,131,132,134,133,30,251,141,6,120,124,154,158,167,116,162,111,111,117
,116,111,31,14,160,118,248,230,247,78,38,240,18,247,5,240,236,240,237,240,19,220,247,5,249,25,21,111,161,116,167,167,162,162,167
,30,19,188,173,236,253,8,7,111,162,116,167,166,162,162,167,30,249,8,237,105,7,19,220,111,161,116,167,167,162,162,167,30,19,188,247
,27,252,134,7,14,139,240,249,59,119,1,247,5,240,247,188,240,3,247,5,247,43,21,57,207,70,222,30,247,87,6,222,208,208,221,31,248,215
,7,166,116,162,111,111,117,116,112,30,252,215,7,112,114,116,113,30,251,87,6,112,116,161,167,31,248,215,7,166,116,162,111,111,117
,116,112,30,14,160,118,249,160,119,1,247,5,240,247,188,240,3,247,5,248,185,21,247,93,252,153,5,147,120,157,126,161,139,160,139,157
,152,147,158,8,247,94,248,154,139,247,72,5,166,116,162,111,111,117,116,112,30,139,251,53,251,40,252,14,251,40,248,14,139,247,53,
5,166,116,162,111,111,117,116,112,30,14,139,240,249,59,119,1,247,5,240,236,240,237,240,3,247,5,247,14,21,195,42,5,148,124,156,129
,158,139,8,236,6,164,139,154,156,150,157,149,120,155,123,163,139,8,237,6,158,139,155,149,148,154,8,196,236,139,248,244,5,166,116
,162,111,111,117,116,112,30,139,252,217,110,91,98,139,5,131,153,130,159,128,156,8,247,215,7,167,116,161,112,111,116,117,111,30,251
,215,7,128,122,130,119,131,125,8,98,139,111,187,139,248,217,5,166,116,162,111,111,117,116,112,30,14,160,118,249,160,119,1,247,5,
190,21,111,161,116,167,30,158,139,155,149,148,154,8,247,47,247,156,247,46,251,156,5,148,124,155,129,158,139,167,139,162,162,139,
167,139,148,136,147,135,147,8,251,76,247,206,247,76,247,206,5,143,147,142,147,139,149,139,166,116,162,111,139,120,139,123,129,130
,124,8,251,46,251,156,251,47,247,156,5,130,154,123,149,120,139,111,139,117,116,139,112,139,129,141,131,143,131,8,247,76,251,206,
251,76,251,206,5,135,131,137,131,139,130,8,14,160,118,249,160,119,1,247,5,240,236,240,236,241,3,247,5,249,7,21,247,90,251,146,139
,251,214,5,111,162,116,167,166,162,162,167,30,139,247,214,247,91,247,146,139,242,5,166,116,162,111,111,116,116,112,30,139,71,251
,39,251,82,251,40,247,82,139,207,5,166,116,162,111,111,117,116,112,30,14,139,240,248,214,240,1,247,4,203,21,140,75,248,83,139,5,
167,162,162,167,166,116,162,111,31,251,201,139,247,252,248,251,139,203,252,84,139,5,111,117,116,112,111,161,116,167,31,247,201,6
,14,139,240,248,214,240,1,247,5,239,187,240,3,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,90
,248,214,247,90,6,167,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,31,239,253,9,21,248,214,187,252,214,7,14,160,118,249
,160,119,1,247,5,249,110,21,139,129,141,131,143,131,8,248,33,253,59,5,148,124,155,129,158,139,167,139,162,162,139,167,139,148,136
,147,135,147,8,252,33,249,59,5,130,154,123,149,120,139,111,139,117,116,139,112,8,14,139,240,248,214,240,1,247,253,240,187,240,3,
247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,249,59,7,166,116,162,111,30,252,33,6,111,117,116,112,111,161,116,167
,31,247,90,252,214,251,90,6,111,117,116,112,31,247,241,189,21,248,214,187,252,214,7,14,247,4,247,82,21,140,127,5,111,161,116,167
,30,157,139,154,148,147,151,8,247,50,247,128,247,49,251,128,5,147,127,154,130,157,139,167,139,162,162,139,167,139,146,137,146,136
,146,8,251,92,248,20,5,131,155,122,150,120,139,119,139,122,128,131,123,8,14,38,240,1,247,5,89,21,111,161,116,167,30,248,33,6,167
,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,31,14,249,160,119,1,247,54,249,110,21,139,123,146,125,150,130,8,247,190
,251,147,5,147,133,149,133,153,139,167,139,162,162,139,167,139,148,137,147,135,146,8,251,95,247,154,5,130,151,124,146,123,139,8,
40,6,111,116,116,112,31,14,139,240,247,46,240,247,3,240,18,247,5,240,247,177,238,45,246,19,244,247,5,247,42,21,57,206,71,221,30,
247,41,6,148,139,148,141,146,144,8,213,182,5,112,161,116,166,167,163,161,167,30,19,248,126,248,9,5,136,218,74,205,57,139,8,251,78
,6,111,117,116,111,111,161,117,167,31,247,78,6,195,139,132,76,141,84,125,144,124,141,124,139,8,251,85,6,57,72,71,57,31,240,83,21
,195,7,165,161,162,165,30,247,85,6,19,244,163,164,116,115,31,139,95,32,76,251,27,139,5,112,118,161,166,31,14,139,240,248,2,240,247
,104,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,154,7,174,107,177,105,201,139,8,214,6,180,139
,172,155,162,159,180,175,188,173,139,214,8,247,98,7,139,189,115,178,110,164,104,169,104,176,75,139,8,64,6,80,139,98,108,104,106,
8,247,118,7,166,116,162,111,111,117,116,112,30,240,252,142,21,247,12,7,139,155,145,153,150,146,8,225,213,5,146,146,150,144,153,139
,8,214,6,157,139,151,130,150,129,155,123,168,124,139,109,8,251,98,7,139,123,131,126,129,131,121,124,120,111,108,139,8,64,6,125,139
,128,144,132,146,8,53,213,5,129,147,132,151,139,156,8,14,139,240,248,2,240,1,247,5,240,3,247,5,247,116,21,139,88,162,101,168,114
,8,225,65,5,163,118,171,124,181,139,8,247,103,6,167,162,162,167,166,116,162,111,31,251,103,6,125,139,128,144,132,146,8,53,212,5,
129,148,132,151,139,156,8,247,12,7,139,155,145,153,150,146,8,225,213,5,146,146,150,144,153,139,8,247,103,6,167,162,161,167,167,116
,162,111,31,251,103,6,51,139,93,70,89,98,110,114,116,101,139,88,8,14,139,240,248,2,240,247,104,119,1,247,5,240,247,188,240,3,247
,5,247,73,21,139,88,161,101,169,114,174,108,173,103,204,139,8,214,6,203,139,176,173,174,172,8,123,7,111,161,116,167,167,162,162,
167,30,249,59,7,166,116,162,111,111,117,116,112,30,251,123,7,103,170,105,177,73,139,8,64,6,98,139,106,123,116,119,97,104,92,105,
139,63,8,240,251,98,21,34,10,14,139,240,247,3,240,247,46,240,1,247,5,240,247,188,240,3,247,5,247,73,21,139,88,161,101,169,114,174
,108,173,103,204,139,8,247,153,6,167,162,162,167,166,116,162,111,31,251,153,6,125,139,130,144,130,146,120,156,105,155,139,174,8,
170,247,238,7,167,162,162,167,31,247,16,7,139,190,115,177,110,164,104,170,104,175,75,139,8,251,17,6,98,139,106,123,116,119,97,104
,92,104,139,64,8,240,65,21,213,7,139,156,146,151,149,147,157,154,158,167,170,139,8,247,17,6,173,191,95,103,31,65,7,14,160,118,248
,103,240,247,3,240,1,247,128,240,3,247,29,248,153,21,111,161,117,167,30,188,252,52,6,111,162,116,167,167,161,162,167,30,248,52,238
,7,166,162,161,167,167,116,162,112,31,40,173,6,181,173,174,182,30,247,13,6,167,161,162,167,166,117,162,111,31,251,13,6,41,59,60,
40,31,105,90,7,111,117,116,111,31,14,251,104,240,247,45,240,247,216,240,1,247,5,239,247,189,240,3,247,5,247,116,21,139,88,162,101
,168,114,174,109,174,101,203,139,8,214,6,201,139,178,174,174,172,8,251,33,7,139,124,131,125,129,131,121,125,120,110,108,139,8,251
,103,6,111,116,116,111,111,162,117,167,31,247,103,6,180,139,172,155,162,159,180,175,188,173,139,214,8,248,184,7,167,116,162,111,
111,117,116,111,30,121,7,103,170,105,177,73,139,8,64,6,98,139,106,123,116,119,97,104,92,106,139,62,8,239,251,55,21,247,55,7,139,
156,147,150,149,149,159,153,154,167,172,139,8,214,6,153,139,150,134,146,132,8,225,65,5,148,131,148,125,139,124,8,61,7,139,123,131
,126,129,131,8,53,65,5,132,132,128,134,125,139,8,64,6,104,88,184,175,31,14,160,118,248,103,240,247,104,119,1,247,5,240,247,188,239
,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,203,247,55,244,210,139,5,166,139,159,117,141,114,8,152,252,7,5,112,162
,117,166,167,161,162,167,30,127,248,8,5,136,218,74,205,57,139,8,82,6,106,139,113,129,117,125,8,43,78,139,247,139,5,166,116,162,111
,111,117,116,112,30,14,139,240,248,2,240,247,3,247,35,18,247,54,247,142,251,43,247,43,39,239,19,240,247,54,190,21,35,10,19,228,41
,6,19,240,248,52,7,167,116,162,112,30,251,41,6,111,116,116,111,111,162,117,167,31,19,228,238,252,2,40,6,111,116,116,112,31,19,232
,238,249,59,21,19,228,111,162,116,167,30,189,6,19,232,166,162,162,167,31,181,7,167,116,161,112,30,19,228,89,6,19,232,111,116,117
,111,31,14,251,104,240,248,214,240,247,3,247,35,18,247,153,247,192,251,43,247,43,39,239,19,232,247,54,62,21,131,7,150,70,202,81,
215,139,8,237,6,19,228,222,207,206,222,31,19,240,248,215,7,167,116,162,111,30,251,90,6,111,116,116,111,111,162,117,167,31,19,228
,247,41,252,165,6,19,232,112,115,117,112,30,41,6,77,139,162,224,79,139,8,111,116,116,111,31,247,140,249,187,21,19,228,111,162,116
,167,30,188,6,19,232,167,162,162,167,31,181,7,167,116,161,111,30,19,228,90,6,19,232,111,116,117,111,31,14,160,118,248,204,119,247
,124,119,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,38,187,181,247,157,251,119,5,148,132,151,134,152,
139,167,139,161,162,139,167,139,154,132,153,128,148,8,251,145,247,108,247,95,247,66,5,150,148,146,153,139,154,139,167,116,162,111
,139,127,139,127,134,131,132,8,251,156,251,117,139,248,35,5,166,116,162,111,111,117,116,112,30,14,139,240,248,214,240,18,247,54,
247,142,38,240,19,224,247,54,190,21,35,10,19,208,41,6,19,224,249,9,7,166,116,162,112,30,251,41,6,111,116,116,112,111,162,116,167
,31,19,208,237,252,214,41,6,111,116,116,112,31,14,160,118,248,103,240,18,244,240,244,240,230,239,53,240,19,248,244,190,21,111,161
,116,167,167,162,162,167,30,139,247,243,214,204,147,139,5,153,147,131,125,31,252,30,7,111,162,116,167,166,162,162,167,30,139,247
,250,207,197,145,139,5,149,139,145,128,140,131,8,19,244,153,252,35,5,140,112,162,117,166,139,8,167,161,162,167,31,19,248,124,248
,37,5,137,203,82,188,78,139,114,139,112,131,116,120,8,117,121,5,117,168,103,158,100,139,102,139,111,122,118,121,133,159,119,154,
117,139,8,111,117,116,111,31,14,160,118,248,103,240,1,247,5,240,247,188,239,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139
,247,203,247,55,244,210,139,5,166,139,159,117,141,114,8,152,252,7,5,112,162,117,166,167,161,162,167,30,127,248,8,5,136,218,74,205
,57,139,8,82,6,106,139,113,129,117,125,8,43,78,139,173,5,167,116,162,111,111,117,116,111,30,14,139,240,248,2,240,1,247,5,240,247
,188,240,3,247,5,247,73,21,139,89,161,100,169,114,175,109,172,102,204,139,8,247,17,6,180,139,172,155,162,159,180,175,188,173,139
,214,8,247,98,7,139,189,115,178,110,164,104,169,104,176,75,139,8,251,17,6,98,139,106,123,116,119,97,104,92,104,139,64,8,240,251,
98,21,247,98,7,139,156,146,151,149,147,157,154,158,167,170,139,8,247,17,6,173,191,95,103,31,251,98,7,139,123,131,126,129,131,121
,124,120,111,108,139,8,251,17,6,125,139,130,144,130,146,120,156,105,155,139,174,8,14,251,83,118,247,83,240,248,44,240,1,247,5,240
,247,188,240,3,247,5,251,54,21,111,161,117,167,167,162,161,167,30,247,108,7,173,102,178,101,205,139,8,160,6,181,139,171,154,163,
160,8,225,213,5,168,164,163,179,139,188,8,247,53,7,139,220,82,175,95,179,104,171,101,175,76,139,8,118,6,70,139,105,98,103,103,8,
166,7,166,116,162,111,111,117,116,112,30,240,251,212,21,247,22,7,139,154,144,151,148,146,8,229,230,5,147,147,152,145,153,139,8,160
,6,151,139,153,133,145,133,8,226,64,5,148,132,147,124,139,124,8,251,53,7,139,124,131,124,130,132,8,52,65,5,132,132,128,134,125,139
,8,118,6,122,139,130]);fileData0.push.apply(fileData0,[144,130,148,118,158,120,160,119,159,122,156,112,154,139,172,8,14,251,83,118
,247,104,240,248,2,240,1,247,5,240,247,188,240,3,247,5,247,73,21,139,88,161,101,169,114,174,108,173,103,204,139,8,214,6,203,139,
176,173,174,172,8,251,121,7,111,161,117,167,167,162,161,167,30,249,59,7,167,116,162,111,111,117,116,111,30,121,7,103,170,105,177
,73,139,8,64,6,98,139,106,123,116,119,97,104,92,105,139,63,8,240,251,98,21,34,10,14,160,118,248,103,240,1,247,5,240,247,188,240,
3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,165,247,58,247,35,220,139,5,166,161,116,113,31,111,7,111,161,117,167,167
,162,161,167,30,167,7,221,70,207,58,30,40,6,129,139,128,137,131,133,8,251,11,37,139,198,5,167,116,162,111,111,117,116,111,30,14,
139,240,248,2,240,1,247,17,239,247,174,242,3,247,5,232,21,139,123,146,125,151,129,172,111,181,114,199,139,8,247,81,6,223,139,208
,207,140,223,8,141,7,139,204,95,193,92,160,8,251,170,247,12,5,128,143,134,149,139,149,8,153,149,154,157,30,247,106,6,176,139,148
,96,175,139,167,139,162,162,139,167,139,150,135,150,133,147,114,172,94,169,86,139,8,251,106,6,105,139,106,125,115,115,113,114,128
,108,139,108,139,88,169,89,185,119,8,247,169,251,12,5,159,130,148,120,139,120,8,112,122,112,105,30,251,95,6,132,139,127,147,132,
141,114,146,131,164,107,139,111,139,118,117,139,111,8,14,139,240,248,2,240,1,247,104,240,3,247,5,248,153,21,111,161,117,167,30,188
,251,209,6,58,207,70,220,30,239,6,214,139,201,198,152,207,8,147,7,167,116,162,111,30,78,139,162,54,78,139,8,39,6,113,117,161,166
,31,247,209,247,89,7,167,161,161,167,167,117,162,111,31,251,89,247,11,6,167,116,162,111,111,117,116,111,30,251,11,90,7,111,117,116
,111,31,14,139,240,248,103,119,1,247,5,239,247,189,240,3,247,5,248,153,21,151,252,9,5,141,61,206,73,220,139,8,196,6,172,139,165,
149,161,153,8,236,201,139,104,5,111,161,116,167,167,162,162,167,30,248,102,7,167,116,162,111,111,117,116,111,30,139,251,204,251,
56,35,68,139,5,112,139,119,160,137,165,8,126,248,7,5,166,116,161,112,111,117,116,111,30,14,160,118,248,204,119,1,247,5,240,247,188
,240,3,247,5,248,68,21,139,132,140,132,142,133,8,247,59,252,18,5,147,121,156,127,160,139,8,202,6,160,139,156,151,147,157,8,247,59
,248,18,5,142,145,141,146,139,146,8,224,7,167,116,162,111,111,117,116,111,30,139,65,251,41,251,231,251,39,247,231,139,213,5,167,
116,162,111,111,117,116,111,30,14,160,118,248,204,119,1,241,240,247,0,240,247,0,240,3,20,56,241,248,152,21,149,251,190,191,251,74
,5,145,118,159,124,162,139,8,188,6,158,139,155,149,148,154,8,195,234,194,44,5,148,124,155,129,158,139,8,188,6,162,139,159,154,145
,160,8,190,247,62,150,247,202,139,141,5,166,115,162,112,30,112,139,117,117,138,112,8,129,251,183,107,251,0,73,247,6,139,247,6,5,
166,116,162,112,111,116,116,112,30,139,251,6,73,251,6,107,247,0,129,247,183,5,138,166,117,161,112,139,8,111,116,115,111,31,14,160
,118,248,204,119,1,247,5,190,21,111,161,116,167,30,155,139,153,146,148,150,8,247,52,247,85,247,51,251,85,5,148,128,153,132,155,139
,167,139,162,162,139,167,139,151,135,150,132,148,8,251,65,247,100,247,53,247,86,5,146,148,144,150,139,151,139,167,116,162,111,139
,124,139,125,132,129,127,8,251,40,251,71,251,41,247,71,5,129,151,125,146,124,139,111,139,116,116,139,111,139,127,144,128,146,130
,8,247,53,251,86,251,65,251,100,5,132,130,136,128,139,127,8,14,251,104,240,249,59,119,1,247,5,240,247,187,241,3,247,5,251,54,21,
111,161,117,167,30,247,28,6,160,139,157,151,147,157,8,247,152,248,230,5,142,145,141,146,139,146,8,224,7,167,116,162,111,111,116,
116,111,30,139,65,251,24,251,192,107,139,251,23,247,192,139,213,5,167,116,162,111,111,117,116,111,30,54,7,139,132,140,132,142,133
,8,247,41,251,231,5,146,121,157,126,160,139,8,160,139,72,251,45,36,139,5,111,117,116,111,31,14,139,240,248,2,240,1,247,5,190,21,
111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,208,139,247,243,247,229,5,149,149,145,152,139,153,8,181,7,167
,116,162,111,30,252,9,6,111,117,116,111,111,161,117,167,31,247,185,139,251,244,251,230,5,129,130,134,126,139,125,8,14,139,240,247
,131,240,247,130,240,1,247,203,240,3,247,5,248,26,21,111,161,117,167,30,236,6,167,162,115,112,31,251,80,7,85,186,92,193,30,247,40
,6,167,162,162,167,166,116,162,111,31,251,40,247,80,6,139,178,124,174,115,166,163,166,154,174,139,178,8,247,80,247,40,7,167,162,
162,167,166,116,162,111,31,251,40,6,85,92,92,85,31,251,80,7,112,117,116,110,30,42,6,111,117,116,111,31,14,160,118,249,160,119,1,
247,203,240,3,247,203,190,21,111,162,116,167,166,162,162,167,30,247,181,38,7,240,4,240,247,181,6,166,116,162,112,111,116,116,112
,30,14,139,240,247,131,240,247,130,240,1,247,203,240,3,247,5,190,21,111,161,116,167,30,247,40,6,193,186,186,193,31,247,80,7,165,
161,164,167,30,237,6,167,162,161,167,167,116,162,111,31,41,6,111,117,162,166,31,247,80,7,193,92,186,85,30,251,40,6,111,117,116,112
,111,161,116,167,31,247,40,251,80,6,139,100,154,104,163,112,115,112,124,104,139,100,8,251,80,251,40,7,111,117,116,112,31,14,248,
62,238,247,45,240,1,247,5,240,236,240,237,240,3,20,56,247,5,248,153,21,111,161,117,167,167,162,161,167,30,247,3,7,166,160,162,166
,166,161,116,112,30,87,7,139,99,155,101,167,110,169,109,176,126,175,139,8,217,214,200,228,31,247,3,7,167,116,162,111,111,117,116
,111,30,251,3,7,113,117,114,112,112,117,164,165,30,191,7,139,180,123,177,111,167,109,169,103,153,103,139,8,62,63,77,50,31,14,226
,248,185,3,226,114,21,248,185,249,210,252,185,6,14,139,247,142,1,247,129,247,141,3,247,129,190,21,111,161,116,167,30,247,41,6,167
,161,162,167,31,247,40,7,167,117,162,111,30,251,41,6,111,117,116,111,31,14,160,118,249,160,119,1,247,104,240,3,247,5,248,111,21,
111,161,116,167,30,152,139,150,144,148,146,8,247,157,247,119,188,97,139,101,251,173,251,131,5,128,130,133,124,139,124,8,251,146,
7,111,161,116,167,167,162,162,167,30,139,247,123,247,172,247,131,5,150,149,146,152,139,155,8,224,7,139,154,132,153,128,148,8,40,
224,5,130,146,127,144,127,139,126,139,128,134,130,12,37,251,190,251,147,5,128,130,133,125,139,124,8,14,139,240,247,131,240,247,130
,240,1,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,122,139,209,247,131,247,52,139,5,167,162,
161,167,167,116,162,111,31,251,23,139,198,247,94,5,145,158,158,156,162,139,8,163,6,167,162,162,167,166,116,162,111,31,115,6,67,139
,83,87,122,82,8,72,251,122,251,53,139,5,111,117,116,111,111,161,117,167,31,247,23,139,70,251,131,77,139,5,111,117,116,112,31,14,
160,118,247,147,240,248,60,119,1,247,203,240,3,247,5,247,197,21,111,161,117,167,30,247,40,251,96,6,111,162,116,167,166,162,162,167
,30,247,96,247,40,7,167,162,161,167,167,116,162,111,31,251,40,160,6,247,84,247,219,5,143,147,142,147,139,149,139,166,116,162,111
,139,120,139,123,129,130,124,8,251,46,251,157,251,47,247,157,5,130,154,123,149,120,139,111,139,117,116,139,112,139,129,141,131,143
,131,8,247,84,251,219,139,118,251,40,139,5,111,117,116,111,31,14,249,160,119,1,247,201,243,3,247,151,249,110,21,190,251,148,5,139
,137,138,137,139,137,8,115,166,119,165,165,164,162,166,30,190,247,148,5,139,141,140,141,139,141,8,163,111,159,113,30,40,6,111,114
,116,112,31,14,160,118,247,104,247,36,1,247,253,247,42,3,247,104,247,155,21,111,161,116,167,30,238,251,53,6,111,161,116,167,30,189
,6,167,161,162,167,31,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31,14,247,232,240,1,247,5,248,26,21,33,10,14,139,240
,248,214,240,1,247,5,240,236,240,237,240,3,247,5,22,247,191,249,59,237,251,96,6,111,161,116,167,167,162,162,167,30,247,197,251,192
,253,59,42,247,96,7,167,116,162,111,111,117,116,111,30,14,160,118,247,232,240,247,231,119,1,247,5,240,247,188,240,3,247,5,190,21
,111,161,116,167,167,162,162,167,30,247,181,247,188,251,181,7,111,161,116,167,167,162,162,167,30,249,59,7,166,116,162,111,111,117
,116,112,30,251,181,252,33,7,14,160,118,247,232,240,247,231,119,1,247,5,240,236,240,237,240,3,247,5,247,232,21,247,90,251,181,6,
111,162,116,167,166,162,162,167,30,247,181,247,91,248,26,7,166,116,162,111,111,117,116,112,30,251,181,251,188,247,181,7,166,116,
162,111,111,117,116,112,30,14,160,118,247,19,240,248,2,247,78,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,30,160,139,
158,152,146,158,8,176,234,247,121,139,176,44,5,146,120,158,126,160,139,167,139,162,162,139,167,139,145,137,145,137,145,8,251,90,
248,145,5,131,158,120,152,118,139,117,139,122,126,131,120,8,251,90,252,145,5,137,133,138,133,139,133,8,248,230,4,36,10,247,65,252
,138,21,214,247,85,214,251,85,5,213,248,53,21,36,10,14,160,118,247,62,240,248,44,240,1,247,54,240,247,89,240,3,247,1,191,21,111,
164,115,167,30,162,139,159,154,145,160,8,179,247,26,247,114,139,178,251,26,5,145,118,159,124,162,139,8,167,163,162,167,31,251,27
,248,96,5,185,148,176,181,139,187,8,208,7,193,92,186,85,30,251,89,6,85,92,92,85,31,70,7,139,91,176,97,185,130,8,157,238,21,208,247
,89,70,7,251,71,251,231,21,209,247,130,161,139,209,251,130,5,14,139,240,208,240,208,240,247,130,240,18,247,253,247,142,251,142,240
,19,244,247,5,190,21,111,161,116,167,30,161,139,157,153,146,158,8,189,247,29,240,139,5,19,248,251,11,7,111,161,116,167,30,247,41
,6,167,162,162,167,166,116,162,111,31,19,244,41,247,131,237,6,19,248,167,162,161,167,167,116,162,111,31,19,244,41,247,130,237,6,
19,248,167,162,162,167,166,116,162,111,31,251,41,6,121,139,122,129,130,125,8,251,143,253,68,5,137,133,138,134,139,133,8,247,76,247
,112,21,19,244,203,247,67,139,251,67,5,14,160,118,249,16,247,36,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162
,167,30,139,247,188,247,201,251,223,5,148,129,152,133,154,139,8,167,162,162,167,31,248,60,7,167,116,161,111,111,117,117,111,30,139
,251,189,251,202,247,223,5,130,149,126,145,124,139,8,111,117,117,111,31,247,104,4,111,161,116,167,30,162,139,159,155,145,160,8,247
,240,102,142,139,5,166,160,163,166,31,182,7,166,116,162,111,30,116,139,119,123,134,118,8,251,241,176,135,139,5,113,119,115,113,31
,14,139,240,248,44,240,123,247,78,18,247,5,239,247,188,241,19,216,247,5,247,172,21,139,113,147,120,150,123,8,220,251,5,139,134,5
,172,95,169,82,214,139,8,160,6,229,139,176,225,178,196,8,192,215,5,150,155,148,159,139,164,8,189,7,139,165,130,158,128,155,8,57,
247,5,5,105,185,114,199,61,139,8,118,6,92,139,103,116,119,109,101,82,100,85,100,84,128,122,131,122,139,112,8,247,207,4,19,184,111
,161,116,167,167,161,162,167,30,224,7,166,117,162,111,111,117,116,112,30,239,252,89,21,139,192,247,10,247,61,5,19,216,143,144,147
,144,147,139,8,160,6,147,139,147,134,143,134,8,247,10,251,61,139,88,251,10,251,59,5,135,133,132,134,130,139,8,118,6,130,139,131,
144,136,145,8,247,70,248,169,21,19,184,111,162,116,167,167,162,162,167,30,224,7,166,116,162,111,111,116,116,112,30,14,139,240,248
,214,240,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,30,182,139,156,192,156,167,158,96,183,101,197,139,194,139,182,173
,159,177,8,246,247,107,5,153,168,150,173,139,179,139,222,95,198,110,198,8,205,247,5,5,143,147,142,147,139,149,139,166,116,162,111
,139,96,139,122,86,122,111,120,182,95,177,80,139,85,139,96,105,119,101,8,32,251,107,5,125,110,129,106,139,98,139,54,182,83,168,79
,8,73,251,5,5,135,131,137,131,139,130,8,240,247,231,21,139,162,144,157,147,156,8,247,0,247,105,5,144,149,148,147,151,139,151,139
,150,130,143,12,37,173,72,251,68,251,192,5,125,167,121,166,139,180,8,226,251,96,21,247,68,247,192,5,153,112,158,109,139,100,139,
117,132,120,132,122,8,251,0,251,106,5,134,129,131,132,125,139,127,139,129,147,135,12,37,14,139,240,248,129,247,78,18,247,5,240,137
,240,236,239,139,240,19,228,247,5,247,44,21,56,206,70,223,30,247,87,6,222,208,208,222,31,248,44,7,167,116,161,111,111,117,117,111
,30,252,44,7,111,115,116,112,30,251,87,6,112,116,162,167,31,248,44,7,167,116,161,111,111,117,117,111,30,19,208,238,224,21,36,10,
19,200,247,90,54,21,111,162,116,167,167,160,162,167,30,224,7,166,118,162,111,111,116,116,112,30,14,247,203,240,3,247,203,38,21,240
,28,4,183,38,6,14,249,103,20,139,21,139,139,248,204,139,247,104,139,6,251,104,139,7,158,12,10,240,10,236,142,140,140,180,140,181
,203,12,12,240,11,236,143,189,189,188,188,247,142,12,13,139,12,14,28,0,52,19,0,5,1,1,28,54,125,143,164,111,162,116,167,30,238,6,
167,162,162,167,31,224,7,167,116,161,111,30,40,6,111,116,117,111,31,11,111,161,117,167,30,248,33,6,167,162,161,167,167,116,162,111
,31,252,33,6,111,117,116,111,31,11,247,98,7,139,157,147,150,149,148,158,154,155,166,171,139,8,214,6,153,139,150,134,146,132,8,225
,65,5,148,131,148,125,139,124,8,251,12,7,139,123,131,125,129,132,8,53,65,5,132,133,128,133,125,139,8,64,6,125,139,130,144,130,146
,120,156,105,155,139,174,8,11,111,162,116,167,30,247,189,6,167,162,162,167,166,116,162,111,31,11,111,161,116,167,167,162,162,167
,30,224,7,166,116,162,111,111,117,116,112,30,11,0,0,1,0,0,0,14,0,0,0,24,0,0,0,0,0,2,0,1,0,1,0,114,0,1,0,4,0,0,0,2,0,0,0,1,0,0,0,
10,0,68,0,162,0,2,68,70,76,84,0,14,108,97,116,110,0,36,0,4,0,0,0,0,255,255,0,6,0,0,0,1,0,2,0,3,0,4,0,5,0,4,0,0,0,0,255,255,0,6,0
,0,0,1,0,2,0,3,0,4,0,5,0,6,97,97,108,116,0,38,115,115,48,49,0,44,115,115,48,50,0,50,115,115,48,51,0,56,115,115,48,52,0,62,115,115
,48,53,0,68,0,0,0,1,0,0,0,30,0,1,0,1,0,28,0,1,0,2,0,26,0,1,0,3,0,24,0,1,0,4,0,22,0,1,0,5,0,0,1,0,0,0,1,1,0,0,1,2,0,0,1,3,0,0,1,4
,0,6,0,14,0,22,0,30,0,38,0,46,0,54,0,3,0,0,0,1,0,48,0,1,0,0,0,1,0,100,0,1,0,0,0,1,0,104,0,1,0,0,0,1,0,108,0,1,0,0,0,1,0,112,0,1,
0,0,0,1,0,116,0,1,0,46,0,5,0,16,0,22,0,28,0,34,0,40,0,2,0,8,0,101,0,2,0,13,0,102,0,2,0,14,0,103,0,2,0,15,0,97,0,2,0,32,0,98,0,1,
0,5,0,8,0,13,0,14,0,15,0,32,0,1,0,6,0,82,0,1,0,1,0,15,0,1,0,6,0,66,0,1,0,1,0,32,0,1,0,6,0,93,0,1,0,1,0,8,0,1,0,6,0,89,0,1,0,1,0,
13,0,1,0,6,0,89,0,1,0,1,0,14,0,1,0,0,0,10,0,44,0,46,0,2,68,70,76,84,0,14,108,97,116,110,0,24,0,4,0,0,0,0,255,255,0,0,0,4,0,0,0,0
,255,255,0,0,0,0,0,0,0,0,0,1,0,0,0,0,204,109,177,85,0,0,0,0,204,138,51,80,0,0,0,0,204,138,51,83,2,211,0,0,2,211,0,0,1,30,0,111,0
,113,0,113,0,113,0,113,1,5,1,5,0,212,0,113,0,113,0,212,0,113,1,5,0,113,0,113,0,113,0,113,0,113,0,137,0,113,0,113,0,113,0,113,0,113
,1,5,0,212,0,113,0,113,0,113,0,113,0,113,0,110,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,162,0,113,0,113,0,113,0,113,0,113
,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,112,0,113,0,113,0,113,0,112,0,113,0,162,0,113,0,113,0,113,0,113,0
,113,0,137,0,113,0,113,0,162,0,162,0,113,0,162,0,105,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,102,0,113,0,113,0,113
,0,113,1,55,0,113,0,113,0,87,0,237,0,113,0,113,0,113,1,3,0,212,0,113,0,113,0,113,0,113,0,113,0,109,0,113,0,113,0,113,0,113,0,113
,1,55,0,0]);Module["FS_createDataFile"]("/","OCRA.otf",fileData0,true,true);var fileData1=[];fileData1
.push.apply(fileData1,[79,84,84,79,0,13,0,128,0,3,0,80,67,70,70,32,129,193,239,92,0,0,6,176,0,0,60,213,70,70,84,77,108,79,91,201
,0,0,68,252,0,0,0,28,71,68,69,70,0,190,0,4,0,0,67,136,0,0,0,32,71,80,79,83,184,255,184,254,0,0,68,204,0,0,0,48,71,83,85,66,119,90
,101,154,0,0,67,168,0,0,1,36,79,83,47,50,90,188,142,61,0,0,1,64,0,0,0,96,99,109,97,112,83,222,211,245,0,0,4,28,0,0,2,114,104,101
,97,100,6,47,76,75,0,0,0,220,0,0,0,54,104,104,101,97,4,6,251,46,0,0,1,20,0,0,0,36,104,109,116,120,49,149,74,40,0,0,69,24,0,0,1,240
,109,97,120,112,0,145,80,0,0,0,1,56,0,0,0,6,110,97,109,101,174,145,152,55,0,0,1,160,0,0,2,121,112,111,115,116,0,3,0,0,0,0,6,144,
0,0,0,32,0,1,0,0,0,2,0,0,89,59,114,1,95,15,60,245,0,11,3,232,0,0,0,0,211,135,133,179,0,0,0,0,211,135,133,179,249,67,249,67,6,189
,6,189,0,0,0,8,0,2,0,0,0,0,0,0,0,1,0,0,3,170,254,176,0,90,2,211,249,67,249,67,6,189,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,103,0,0,80
,0,0,145,0,0,0,2,2,211,1,144,0,5,0,0,2,138,2,188,0,0,0,140,2,138,2,188,0,0,1,224,0,49,1,2,0,0,2,0,5,9,0,0,0,0,0,0,0,0,0,175,0,0,
0,104,0,0,0,0,0,0,0,0,80,102,69,100,0,64,0,32,43,88,3,32,255,56,0,90,3,170,1,80,0,0,0,1,0,0,0,0,2,22,2,189,0,32,0,32,0,1,0,0,0,14
,0,174,0,1,0,0,0,0,0,0,0,67,0,136,0,1,0,0,0,0,0,1,0,4,0,214,0,1,0,0,0,0,0,2,0,7,0,235,0,1,0,0,0,0,0,3,0,41,1,71,0,1,0,0,0,0,0,4,
0,13,1,141,0,1,0,0,0,0,0,5,0,10,1,177,0,1,0,0,0,0,0,6,0,4,1,198,0,3,0,1,4,9,0,0,0,134,0,0,0,3,0,1,4,9,0,1,0,8,0,204,0,3,0,1,4,9,
0,2,0,14,0,219,0,3,0,1,4,9,0,3,0,82,0,243,0,3,0,1,4,9,0,4,0,26,1,113,0,3,0,1,4,9,0,5,0,20,1,155,0,3,0,1,4,9,0,6,0,8,1,188,0,77,0
,97,0,116,0,116,0,104,0,101,0,119,0,32,0,83,0,107,0,97,0,108,0,97,0,32,0,40,0,50,0,48,0,49,0,49,0,41,0,59,0,32,0,98,0,97,0,115,0
,101,0,100,0,32,0,111,0,110,0,32,0,99,0,111,0,100,0,101,0,32,0,98,0,121,0,32,0,78,0,111,0,114,0,98,0,101,0,114,0,116,0,32,0,83,0
,99,0,104,0,119,0,97,0,114,0,122,0,32,0,40,0,49,0,57,0,56,0,54,0,44,0,32,0,50,0,48,0,49,0,49,0,41,0,0,77,97,116,116,104,101,119,
32,83,107,97,108,97,32,40,50,48,49,49,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,78,111,114,98,101,114
,116,32,83,99,104,119,97,114,122,32,40,49,57,56,54,44,32,50,48,49,49,41,0,0,79,0,67,0,82,0,66,0,0,79,67,82,66,0,0,82,0,101,0,103
,0,117,0,108,0,97,0,114,0,0,82,101,103,117,108,97,114,0,0,70,0,111,0,110,0,116,0,70,0,111,0,114,0,103,0,101,0,32,0,50,0,46,0,48,
0,32,0,58,0,32,0,79,0,67,0,82,0,32,0,66,0,32,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,32,0,58,0,32,0,50,0,55,0,45,0,57,0,45,0,50
,0,48,0,49,0,50,0,0,70,111,110,116,70,111,114,103,101,32,50,46,48,32,58,32,79,67,82,32,66,32,82,101,103,117,108,97,114,32,58,32,
50,55,45,57,45,50,48,49,50,0,0,79,0,67,0,82,0,32,0,66,0,32,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,0,79,67,82,32,66,32,82,101,
103,117,108,97,114,0,0,86,0,101,0,114,0,115,0,105,0,111,0,110,0,32,0,50,0,32,0,0,86,101,114,115,105,111,110,32,50,32,0,0,79,0,67
,0,82,0,66,0,0,79,67,82,66,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,28,0,1,0,0,0,0,1,108,0,3,0,1,0,0,0,28,0,4,1,80,0,0,0,80,0,64,0,5,0,16,0
,126,0,161,0,164,0,169,0,175,0,180,0,184,0,191,0,196,0,198,0,214,0,216,0,220,0,223,0,228,0,230,0,246,0,248,0,252,1,49,1,83,2,55,
2,199,2,217,2,220,3,147,3,152,3,155,3,158,3,160,3,163,3,166,3,168,33,38,33,145,33,147,34,6,43,34,43,88,255,255,0,0,0,32,0,161,0,
164,0,167,0,174,0,180,0,184,0,191,0,196,0,198,0,214,0,216,0,220,0,223,0,228,0,230,0,246,0,248,0,252,1,49,1,82,2,55,2,198,2,216,2
,220,3,147,3,152,3,155,3,158,3,160,3,163,3,165,3,168,33,38,33,145,33,147,34,6,43,34,43,88,255,255,255,225,255,191,255,189,255,187
,255,183,255,179,255,176,255,170,255,166,255,165,255,150,255,149,255,146,255,144,255,140,255,139,255,124,255,123,255,120,255,68,
255,36,254,65,253,179,253,163,253,161,252,235,252,231,252,229,252,227,252,226,252,224,252,223,252,222,223,97,222,247,222,246,222
,132,213,105,213,52,0,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,1,6,0,0,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,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,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,91,92,93,94,95,0,106,0,0,0,0,108,110,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,0,0,0,0,116,0,0,0,0,98,0,0,111,101,100,0
,103,99,0,107,109,0,0,0,0,0,0,0,0,0,0,0,0,0,0,113,115,105,96,0,0,0,0,138,0,0,0,0,0,0,0,118,119,0,0,0,0,0,0,0,0,0,0,0,0,0,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,121,125,102,123,124,0,104,0,0,122,0,0,0,3,0,0,0,0,0,0,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,4,4,0,1,1,1,5,79,67,82,66,0,1,2,0,1,0,54,248,47,0,248,48,1,248,49,2,248,50,3,248,51,4,139,12,3,139,12,4,28
,249,67,28,249,67,28,6,189,28,6,189,5,28,1,96,15,28,0,0,16,28,2,129,17,28,0,70,28,58,29,18,0,25,2,0,1,0,9,0,14,0,19,0,25,0,27,0,
29,0,34,0,41,0,44,0,47,0,50,0,57,0,66,0,71,0,78,0,85,0,100,0,109,0,121,0,128,0,133,0,200,0,213,0,217,0,223,100,111,116,108,101,115
,115,106,71,97,109,109,97,84,104,101,116,97,76,97,109,98,100,97,88,105,80,105,83,105,103,109,97,85,112,115,105,108,111,110,80,104
,105,80,115,105,79,104,109,97,114,114,111,119,117,112,97,114,114,111,119,100,111,119,110,68,101,108,116,97,117,110,105,50,66,50,
50,117,110,105,50,66,53,56,113,117,111,116,101,115,105,110,103,108,101,46,97,108,116,103,114,97,118,101,46,97,108,116,113,117,111
,116,101,100,98,108,46,97,108,116,98,97,114,46,97,108,116,50,46,48,48,48,77,97,116,116,104,101,119,32,83,107,97,108,97,32,40,50,
48,49,49,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,78,111,114,98,101,114,116,32,83,99,104,119,97,114,
122,32,40,49,57,56,54,44,32,50,48,49,49,41,79,67,82,32,66,32,82,101,103,117,108,97,114,79,67,82,66,78,111,114,109,97,108,0,0,0,0
,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,
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,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,94,0,95,0,96,0,103,0,102,0,131,0,170,0,165,0,128,0,125,0
,133,0,123,0,173,0,138,0,189,0,141,0,195,0,149,0,202,0,144,0,218,0,147,0,224,0,145,0,142,0,148,1,135,0,126,0,136,0,129,0,130,0,127
,1,136,1,137,1,138,1,139,1,140,1,141,1,142,1,143,1,144,1,145,1,146,1,147,1,148,1,149,1,150,1,151,1,152,1,153,1,154,0,145,2,0,1,0
,2,0,3,0,31,0,134,1,64,1,254,2,176,3,110,3,165,3,251,4,77,4,200,5,15,5,80,5,119,5,161,5,218,6,78,6,146,7,13,7,136,7,236,8,103,8,
208,9,37,9,176,10,36,10,87,10,169,10,245,11,55,11,131,12,3,12,205,13,33,13,167,14,30,14,116,14,191,14,254,15,163,15,235,16,47,16
,142,16,236,17,26,17,125,17,206,18,9,18,96,19,6,19,124,20,12,20,67,20,156,20,225,21,106,21,227,22,58,22,133,22,189,22,248,23,52,
23,60,23,101,23,162,24,29,24,164,25,33,25,166,26,21,26,116,27,26,27,118,27,165,28,14,28,114,28,183,29,47,29,127,29,152,30,22,30,
154,30,241,31,128,31,239,32,81,32,167,33,31,33,152,34,3,34,80,34,222,35,1,35,141,35,172,35,200,36,138,37,81,37,142,38,150,38,174
,38,209,39,13,39,94,39,222,40,102,40,217,41,86,42,19,42,173,43,64,43,208,44,172,44,233,45,146,46,7,46,38,46,203,47,89,47,163,47,
171,47,251,48,68,48,86,48,117,48,183,49,20,49,120,49,170,49,245,50,118,50,228,51,146,52,7,52,175,53,15,53,111,53,164,53,188,53,189
,53,224,54,29,54,90,54,118,14,14,66,247,38,18,247,182,247,38,251,15,239,19,192,247,182,116,21,32,10,19,160,162,247,198,21,33,10,
14,248,86,247,212,18,247,53,247,22,251,22,239,247,84,247,15,251,15,237,19,160,247,53,248,136,21,113,163,115,165,30,166,139,159,160
,142,161,8,168,247,119,5,19,192,139,141,140,140,139,141,8,162,115,161,112,30,110,6,112,116,116,112,31,19,136,247,184,251,112,21,
112,162,116,166,30,165,139,156,157,144,161,8,19,144,164,247,122,139,143,5,164,114,160,114,30,116,6,112,116,117,111,31,14,247,96,
239,247,49,239,247,104,119,1,247,242,238,195,238,3,247,5,247,146,21,139,113,159,118,164,136,8,102,251,59,5,112,163,116,165,30,163
,139,159,156,144,161,8,179,247,70,247,17,139,104,251,48,139,128,5,112,162,116,166,30,162,139,160,157,144,160,8,179,247,70,193,139
,5,166,162,162,166,166,117,162,111,31,108,139,174,247,49,155,139,5,166,162,162,166,31,139,164,120,160,115,143,8,173,247,43,139,150
,5,167,116,161,112,30,114,139,122,120,132,119,8,100,251,65,251,18,139,175,247,54,5,165,115,163,113,30,115,139,119,121,134,118,8,
100,251,65,84,139,5,111,117,117,111,111,162,117,166,31,172,139,103,251,49,122,139,5,111,117,117,111,31,247,61,189,21,175,247,49,
247,17,139,104,251,49,5,14,181,239,248,54,118,213,241,1,247,8,238,237,239,239,239,3,247,5,247,69,21,139,133,139,132,142,133,169,
64,211,106,234,131,8,137,7,111,162,117,166,166,162,162,166,30,141,7,247,1,155,230,205,139,247,2,139,247,14,41,178,37,170,8,247,79
,7,177,131,165,122,161,111,148,127,152,130,158,139,166,139,162,162,139,165,139,150,135,149,133,147,102,193,86,173,62,149,8,144,7
,166,116,162,112,112,116,117,111,30,134,7,33,127,48,85,139,251,2,139,251,13,238,102,237,111,8,251,103,7,113,141,114,143,120,149,
108,155,134,192,95,139,112,139,116,117,139,111,8,241,247,250,21,139,191,186,158,190,146,8,251,49,7,102,153,78,155,139,188,8,247,
90,252,26,21,247,72,7,188,122,190,113,139,91,139,86,92,113,86,129,8,14,126,239,228,239,247,100,239,228,239,18,247,7,237,199,236,
124,237,199,236,19,249,247,5,182,21,111,162,116,166,30,156,139,157,151,148,152,8,248,35,249,55,5,143,146,142,148,139,148,139,166
,116,162,112,139,126,139,125,135,129,129,8,252,42,253,65,5,134,132,137,130,139,130,8,141,248,218,21,68,180,69,226,30,19,253,224,
181,211,211,211,97,212,54,55,95,64,66,31,237,142,21,162,146,161,162,162,146,116,117,120,131,114,117,30,130,6,123,144,134,161,139
,156,8,19,251,247,34,252,136,21,68,180,69,226,224,181,212,211,211,97,211,54,30,55,95,64,66,31,237,142,21,162,145,161,163,162,146
,116,117,120,130,114,118,30,133,6,138,140,138,140,138,139,8,123,134,167,153,31,14,126,239,248,222,239,18,247,5,239,67,239,247,75
,239,127,240,19,228,247,5,247,97,21,139,251,26,227,56,247,24,138,8,145,6,197,139,187,154,179,164,152,122,150,119,167,139,166,139
,162,162,139,166,139,165,120,155,128,155,176,195,158,212,139,220,8,166,116,163,112,112,115,116,111,30,139,95,132,98,125,105,8,251
,35,247,91,5,19,216,206,191,247,1,204,139,247,9,8,236,51,193,43,251,10,58,70,251,8,30,139,61,172,85,175,90,8,85,91,96,79,139,45,
8,19,224,239,22,139,197,167,170,169,169,8,247,47,251,107,5,115,125,111,131,106,139,8,133,6,62,140,94,178,139,217,8,19,216,167,248
,19,21,199,178,164,199,175,187,127,100,30,139,115,121,114,126,123,111,105,101,111,100,111,8,115,173,116,176,139,189,8,14,247,168
,247,67,3,247,168,249,100,21,159,251,182,5,141,114,160,121,166,139,8,173,6,165,139,157,156,144,163,8,160,247,184,5,139,140,140,140
,139,140,139,162,118,160,116,142,8,58,6,112,116,117,111,31,14,249,153,119,1,247,148,239,3,247,148,248,7,21,139,251,76,237,251,9,
247,4,64,147,134,149,136,149,139,166,139,162,161,139,167,139,156,129,156,127,147,50,196,62,232,139,247,35,8,144,7,141,247,46,209
,228,233,201,152,148,148,155,139,155,139,167,116,161,112,139,129,139,129,136,131,133,251,6,60,45,251,9,137,251,83,8,14,249,153,119
,1,248,6,239,3,247,73,176,21,112,162,116,166,30,149,139,149,142,147,144,247,6,216,236,247,10,139,247,79,139,247,84,43,247,8,251,
7,218,131,145,130,142,128,139,112,139,116,116,139,112,139,126,148,115,152,135,8,230,77,215,47,139,251,43,139,251,41,64,50,47,79,
127,131,129,121,139,123,8,14,247,205,239,3,247,5,248,82,21,139,115,154,123,158,131,8,247,26,95,49,251,13,5,133,130,135,129,139,128
,139,112,161,116,167,139,153,139,151,143,149,148,8,246,247,36,223,251,36,5,148,130,153,135,152,139,167,139,161,161,139,167,139,148
,137,147,135,147,8,62,247,23,247,9,178,5,159,146,154,156,139,163,139,166,116,162,112,139,133,139,134,138,134,137,8,251,26,95,139
,247,43,5,166,116,162,112,112,116,117,111,30,139,251,43,251,41,188,5,112,115,114,112,31,14,247,222,239,1,247,205,239,3,247,5,248
,16,21,111,162,117,166,30,247,42,251,71,6,111,162,117,166,166,162,162,166,30,247,71,247,42,7,166,162,162,166,166,116,162,112,31,
251,42,247,70,6,166,117,162,111,111,117,117,111,30,251,70,251,42,7,112,116,117,111,31,14,251,55,118,1,247,51,251,26,21,111,161,117
,167,30,167,6,152,139,152,143,149,149,8,247,146,247,153,5,148,148,144,152,139,152,8,170,7,167,116,161,112,30,251,3,6,126,139,124
,135,130,129,8,251,70,251,194,5,135,131,137,131,139,130,8,14,247,208,247,20,1,247,5,248,2,21,111,161,117,167,30,248,36,6,167,161
,162,166,31,167,7,166,117,162,111,30,252,36,6,111,117,117,111,31,14,129,247,89,1,247,133,247,135,3,247,133,179,21,112,162,116,166
,30,247,35,6,166,162,161,167,31,236,7,167,116,161,112,30,251,35,6,112,116,116,112,31,14,249,153,119,1,247,65,176,21,111,162,117,
166,30,159,139,159,153,145,156,8,247,172,249,66,5,142,145,140,145,139,146,139,166,116,162,112,139,119,139,119,125,133,122,8,251,
172,253,66,5,136,133,138,133,139,132,8,14,125,239,248,222,239,1,247,5,239,247,192,239,3,247,5,247,235,21,251,87,189,251,53,247,92
,30,149,139,148,138,149,139,8,154,6,247,54,152,183,247,65,139,247,62,8,247,122,119,247,92,251,122,251,124,121,251,91,251,123,30,
239,22,139,215,139,227,154,201,156,208,172,174,224,139,155,139,161,139,148,137,237,120,144,251,32,139,251,15,8,93,7,251,0,126,251
,40,251,7,30,117,6,123,139,117,139,129,141,50,158,126,247,26,139,240,8,14,247,248,239,3,247,36,248,202,21,112,161,116,167,30,151
,139,151,143,148,147,8,247,21,247,2,139,252,234,5,111,162,117,166,166,162,162,166,30,249,60,7,166,116,162,112,30,107,6,127,139,128
,135,130,131,8,251,75,251,49,5,129,131,134,125,139,126,8,14,140,239,248,208,239,1,248,123,239,3,247,22,249,50,21,113,163,116,165
,30,149,139,150,142,147,145,183,170,183,151,205,139,207,139,195,96,139,69,139,112,128,114,123,118,112,103,87,106,94,110,59,88,60
,77,113,48,8,130,108,138,96,139,100,8,118,7,112,162,116,166,30,247,244,6,166,162,162,166,166,117,162,111,31,251,193,6,145,247,8,
202,177,218,189,224,193,247,4,208,139,247,24,139,247,20,42,224,251,19,139,47,139,81,119,77,98,127,131,130,120,139,124,8,14,126,239
,248,207,239,1,248,140,239,3,247,5,208,21,66,247,36,130,199,30,247,46,139,247,18,227,146,247,43,8,154,7,139,247,17,53,216,251,5,
168,8,247,51,247,60,5,148,148,145,150,139,152,8,174,7,166,116,162,112,30,251,255,6,111,117,117,111,112,162,116,166,31,247,171,139
,251,76,251,85,5,131,131,136,127,139,128,8,112,162,116,166,241,241,98,36,30,130,7,134,40,55,94,41,139,93,139,93,148,96,158,133,141
,133,141,132,139,8,112,116,117,111,31,14,247,56,239,1,248,46,239,3,247,5,247,106,21,111,162,117,166,30,247,139,251,16,6,112,162,
116,166,166,162,162,166,30,247,16,192,7,166,162,162,166,166,117,162,111,31,86,247,8,6,166,116,162,112,112,116,116,112,30,251,8,251
,81,7,247,96,248,71,5,142,145,141,146,139,147,139,166,116,162,112,139,120,139,119,126,133,123,8,251,109,252,99,5,136,132,137,133
,139,131,8,14,126,239,247,218,239,247,37,239,1,248,109,239,3,247,31,176,21,111,162,117,166,30,246,139,247,3,157,220,211,183,179,
180,203,139,215,8,247,65,251,13,222,251,67,30,124,139,147,247,37,247,139,139,5,166,162,163,165,166,117,162,111,31,251,186,6,112,
139,118,119,137,112,8,125,251,143,139,136,5,113,163,118,165,30,143,6,160,141,161,140,160,139,204,139,202,127,174,101,165,111,146
,100,139,100,139,117,132,118,129,120,91,54,251,6,116,34,139,8,112,116,117,111,31,14,126,239,247,192,239,1,247,5,239,247,192,239,
3,247,5,247,121,21,143,251,37,238,42,247,39,139,8,247,39,242,238,247,35,247,49,44,240,251,47,31,117,139,119,137,119,135,191,212,
200,206,199,204,147,148,144,151,139,152,139,166,116,162,112,139,126,139,125,134,130,129,61,54,60,53,78,38,8,101,76,107,58,139,41
,8,239,127,21,237,192,199,236,239,189,81,39,51,78,85,50,49,79,192,228,30,14,249,38,239,1,247,131,239,3,247,5,249,88,21,112,162,116
,166,30,247,232,6,131,118,126,120,127,121,91,69,78,79,97,65,78,32,120,251,17,139,251,16,8,111,162,117,166,166,162,162,166,30,139
,245,153,247,0,192,232,180,210,200,197,184,206,173,189,165,194,139,199,8,166,117,162,111,30,252,36,6,111,117,117,111,31,14,126,239
,248,222,239,18,247,5,238,74,239,247,124,239,73,239,19,228,247,5,247,92,21,251,19,245,53,247,36,30,183,6,247,10,148,227,237,139,
245,139,237,70,212,63,191,8,19,216,201,178,188,189,139,227,8,244,251,3,207,34,33,251,2,72,33,30,139,51,189,87,200,102,8,63,87,70
,67,139,40,8,19,228,238,22,139,222,229,193,202,171,204,105,222,83,139,60,8,77,80,88,69,30,118,6,57,70,178,213,31,19,216,174,248,
36,21,190,209,161,185,185,209,117,88,30,139,72,80,113,82,113,8,83,165,79,166,139,205,8,14,247,165,239,247,192,239,1,247,5,239,247
,192,239,3,247,5,248,150,21,251,26,236,32,247,45,30,159,139,160,140,159,142,92,65,82,72,74,80,129,129,133,127,139,124,139,111,162
,117,166,139,151,139,151,144,148,147,222,213,210,226,195,235,8,182,212,177,214,139,245,8,247,50,251,2,240,251,32,251,32,251,2,251
,10,251,33,30,239,22,225,204,212,224,228,200,79,40,30,139,114,136,115,132,116,123,83,76,126,78,139,8,46,82,197,222,31,14,129,247
,72,247,75,247,72,1,247,151,247,100,3,247,151,179,21,111,162,117,166,30,247,0,6,166,162,162,166,31,219,7,166,116,162,112,30,251,
0,6,112,116,117,111,31,247,175,4,34,10,14,247,245,247,72,1,247,171,247,100,3,247,48,251,21,21,111,162,117,166,30,182,6,152,139,152
,145,148,148,8,247,96,247,159,5,141,141,140,142,139,142,139,143,138,143,139,143,8,166,116,162,112,30,251,3,6,117,139,122,126,133
,124,8,251,16,251,145,5,136,133,138,131,139,132,8,247,15,248,168,21,34,10,14,247,18,247,236,21,248,45,251,163,5,147,133,149,136,
149,139,166,139,162,162,139,166,139,153,134,151,129,149,8,251,237,247,122,247,237,247,122,5,151,147,142,153,139,153,139,166,116,
162,112,139,129,139,129,136,131,133,8,252,45,251,163,5,130,130,135,125,139,126,139,126,143,125,139,130,8,14,247,108,239,247,20,239
,1,247,5,247,158,21,111,161,117,167,30,248,36,6,167,161,162,166,166,116,162,112,31,252,36,6,112,116,117,111,31,247,120,4,111,162
,117,166,30,248,36,6,166,162,162,166,166,117,162,111,31,252,36,6,111,117,117,111,31,14,247,5,247,6,21,111,162,117,166,30,149,139
,148,142,148,145,8,248,44,247,163,5,150,146,142,155,139,152,139,152,135,153,139,148,8,252,44,247,163,5,130,145,130,142,129,139,112
,139,116,117,139,111,139,125,144,127,148,129,8,247,237,251,122,251,237,251,122,5,130,129,134,127,139,125,8,14,72,247,38,248,173,
237,18,247,33,239,188,247,38,251,15,239,182,239,19,236,247,33,248,156,21,140,114,161,117,166,139,8,167,161,161,167,31,139,142,139
,144,5,139,197,193,160,191,145,8,142,6,148,139,148,136,148,139,179,130,178,119,139,92,139,105,109,91,119,118,103,99,82,109,139,66
,8,111,162,117,166,166,162,162,166,30,139,146,143,146,143,144,155,161,163,153,157,159,175,177,179,207,140,204,8,141,7,247,10,40,
196,38,33,251,1,76,251,13,30,19,244,247,41,252,183,21,32,10,14,120,239,247,132,239,247,89,239,1,247,5,239,247,15,239,216,239,3,247
,5,247,86,21,139,251,9,173,47,247,3,135,8,147,6,185,139,173,154,166,162,161,113,171,128,172,139,174,139,175,152,165,163,191,187,
143,202,139,238,8,247,6,7,247,95,90,247,64,251,96,30,130,6,251,17,136,45,81,123,32,8,132,7,111,161,117,167,30,164,139,160,158,142
,162,147,199,198,159,208,142,8,148,6,247,32,152,251,31,251,28,31,139,251,6,139,113,5,139,80,136,79,91,136,8,138,6,121,139,133,161
,138,162,8,247,135,7,165,116,163,112,30,122,139,122,129,130,124,117,154,103,151,108,139,251,7,138,113,251,2,139,251,8,8,239,133,
21,139,145,139,156,5,184,141,204,178,30,177,139,169,108,153,112,8,251,19,7,126,111,123,112,100,139,8,133,6,91,142,138,193,139,189
,8,14,247,91,239,248,44,119,1,247,11,179,21,111,162,117,166,30,162,139,159,156,144,159,8,183,247,64,247,95,139,184,251,64,5,144,
119,159,122,162,139,8,166,163,163,165,31,251,57,249,16,5,134,157,119,152,118,139,8,71,6,116,139,118,122,134,119,8,251,53,252,253
,5,247,60,247,138,21,215,247,184,215,251,184,5,14,140,239,247,107,239,247,77,239,18,247,5,239,247,178,238,54,239,19,244,247,5,190
,21,111,162,117,166,30,247,63,6,211,139,213,145,195,183,188,177,167,198,139,200,8,141,7,139,200,111,196,92,176,8,19,248,180,175,
158,189,139,189,139,207,104,206,78,174,88,167,80,140,81,139,8,251,63,6,111,117,117,111,31,239,252,186,21,247,107,247,42,7,19,244
,219,139,208,111,140,62,8,138,7,48,47,121,52,30,251,13,247,207,21,247,77,247,13,7,19,248,226,139,210,128,146,60,8,130,7,70,70,122
,72,30,14,126,239,248,97,118,228,239,1,247,53,239,247,99,237,3,247,53,247,234,21,141,251,71,188,251,68,247,77,139,227,139,207,193
,152,215,8,148,7,166,117,162,112,30,115,139,118,120,135,117,133,108,110,122,103,139,251,12,139,125,247,35,137,247,6,8,156,7,139,
247,8,160,247,25,247,2,145,8,144,6,157,139,156,134,154,128,167,118,132,87,188,139,8,166,161,162,166,31,149,7,122,214,72,193,52,139
,8,134,6,251,70,135,88,251,68,139,251,75,8,14,161,118,249,80,119,1,247,56,239,247,115,239,3,247,56,190,21,112,162,116,166,30,177
,139,176,139,176,146,247,41,166,247,4,247,13,139,247,67,139,227,109,215,99,193,74,226,51,204,251,42,139,8,111,117,116,112,31,239
,252,184,21,248,131,7,181,134,172,126,168,118,203,93,194,63,139,33,139,251,36,49,67,251,25,127,8,14,140,239,247,107,239,247,77,239
,1,247,51,239,3,247,51,190,21,111,162,117,166,30,247,234,6,166,162,161,167,167,117,161,111,31,251,184,247,107,247,136,6,167,161,
162,166,166,116,162,112,31,251,136,247,77,247,184,6,166,162,161,167,167,117,161,111,31,251,234,6,111,117,117,111,31,14,247,208,239
,247,77,239,1,247,102,239,3,247,102,179,21,112,162,116,166,166,162,162,166,30,247,168,247,71,7,166,162,162,166,166,115,162,113,31
,251,71,247,77,247,116,6,166,162,161,167,167,117,161,111,31,251,166,6,111,117,116,112,31,14,124,241,247,84,239,247,126,241,18,247
,13,240,247,3,247,155,39,239,19,244,247,13,247,245,21,139,251,9,170,251,9,199,77,183,93,205,113,214,139,169,139,171,143,171,148,
175,149,208,158,139,186,8,19,248,247,147,7,166,116,162,112,30,251,55,6,112,116,117,111,111,161,117,167,31,19,244,247,5,251,66,6,
105,127,106,133,109,139,69,139,84,172,115,207,121,189,129,202,139,200,139,222,158,220,182,183,168,168,177,153,177,139,181,139,180
,122,166,108,8,149,128,151,132,155,139,166,139,162,162,139,166,139,151,135,150,131,148,102,184,86,168,81,148,125,141,125,140,126
,139,66,139,79,106,98,98,8,78,78,109,251,5,139,251,6,8,14,247,202,239,247,195,119,1,247,33,239,247,135,239,3,247,33,179,21,112,162
,116,166,166,162,161,167,30,247,162,247,135,251,162,7,112,162,116,166,166,162,161,167,30,249,3,7,167,116,161,112,112,116,116,112
,30,251,145,251,135,247,145,7,167,116,161,112,112,116,116,112,30,14,140,239,248,136,239,1,247,205,239,3,247,62,190,21,112,162,116
,166,30,247,178,6,166,162,162,166,166,117,162,111,31,46,248,136,212,6,166,162,162,166,166,117,162,111,31,251,138,6,111,117,116,112
,112,162,116,166,31,212,252,136,46,6,111,117,116,112,31,14,123,241,249,7,119,1,247,22,239,247,52,239,3,247,22,247,57,21,139,66,184
,82,189,111,169,123,169,132,167,139,236,139,220,223,139,232,139,143,138,144,139,143,8,248,125,7,166,116,162,112,112,116,116,112,
30,252,133,7,83,103,115,102,97,94,169,189,30,139,144,140,144,140,145,8,148,7,167,118,161,111,30,113,139,121,122,134,116,136,126,
138,128,139,127,8,14,249,93,119,1,247,19,239,3,247,19,179,21,112,162,116,166,166,162,162,166,30,139,247,167,247,192,251,202,5,149
,129,152,134,152,139,166,139,162,162,139,166,139,152,133,151,130,149,8,251,172,247,182,247,149,247,155,5,148,148,145,152,139,152
,139,166,116,162,112,139,126,139,126,133,129,130,8,251,169,251,174,139,247,139,5,166,116,162,112,112,116,116,112,30,14,140,239,248
,248,119,1,247,33,239,3,247,33,190,21,112,162,116,166,30,248,8,6,166,162,162,166,166,117,162,111,31,251,214,248,198,6,167,116,161
,112,112,116,116,112,30,14,249,93,119,1,247,5,239,247,192,239,3,247,5,179,21,111,162,117,166,166,162,162,166,30,139,248,175,241,
251,228,5,145,119,159,123,161,139,163,139,156,156,146,158,8,241,247,228,139,252,175,5,111,162,117,166,166,162,162,166,30,249,3,7
,166,116,162,112,30,62,6,116,139,119,123,134,119,8,64,251,139,64,247,139,5,133,158,120,156,116,139,8,62,6,112,116,117,111,31,14,
249,93,119,1,247,19,239,247,164,239,3,247,19,179,21,112,162,116,166,166,162,162,166,30,139,248,116,247,131,252,138,5,147,123,156
,127,159,139,8,177,6,165,163,162,166,31,249,3,7,166,115,162,113,112,116,117,111,30,139,252,117,251,132,248,138,5,131,155,122,152
,119,139,8,102,6,112,116,116,112,31,14,126,239,248,170,239,1,247,8,239,247,186,239,3,247,8,247,246,21,35,10,239,135,21,144,7,139
,218,161,222,179,191,157,162,169,164,176,139,8,243,182,251,47,251,4,35,93,251,55,38,31,37,139,95,247,55,138,243,8,14,247,179,239
,247,106,239,1,247,33,239,247,164,239,3,247,33,179,21,112,162,116,166,166,162,161,167,30,247,139,247,14,7,219,139,222,158,187,203
,164,171,151,179,141,181,8,150,7,247,30,251,0,207,251,34,30,251,64,6,111,117,116,112,31,239,251,156,21,247,106,247,14,7,224,204,
117,55,31,132,7,135,58,66,119,66,139,8,14,171,239,248,120,239,1,247,7,242,247,164,235,3,247,7,248,13,21,139,66,149,66,159,89,172
,59,223,70,230,139,178,139,180,152,178,169,8,193,69,5,148,127,153,136,152,139,166,139,163,162,139,166,139,150,135,150,132,148,8,
74,223,5,171,199,156,219,139,220,8,247,61,65,247,63,251,51,30,130,6,40,139,69,61,109,69,119,91,129,68,139,67,8,242,163,21,192,7,
144,214,181,226,220,139,235,139,187,251,15,139,251,14,139,94,132,94,126,100,8,60,241,5,130,150,124,143,125,139,112,139,117,116,139
,112,139,127,143,129,146,130,8,236,251,17,5,121,126,119,131,115,139,129,139,129,140,128,142,45,164,132,247,6,139,247,18,8,14,247
,179,239,247,106,239,1,247,45,239,247,123,239,3,247,45,179,21,111,162,117,166,166,162,162,166,30,247,139,225,7,247,56,251,175,5,
148,129,154,135,152,139,166,139,162,162,139,166,139,148,138,147,134,147,8,251,28,247,126,5,237,175,177,236,139,247,3,139,237,251
,15,191,45,147,8,251,56,6,111,117,117,111,31,239,251,156,21,247,106,247,0,7,171,139,171,127,167,123,153,132,156,129,139,126,139,
90,137,86,102,108,117,120,108,135,110,139,8,14,124,239,248,167,239,1,247,45,239,247,118,239,3,247,39,247,45,21,152,41,229,69,245
,139,151,139,152,140,152,141,244,156,219,214,139,247,1,139,247,50,251,37,176,34,193,101,159,101,161,139,196,139,190,199,167,195,
139,8,168,139,167,132,158,123,166,116,139,85,187,139,167,139,161,162,139,166,139,143,138,144,138,143,116,222,66,193,35,139,8,133
,6,251,2,137,40,69,139,32,139,251,45,247,33,100,242,87,180,118,180,117,139,78,139,110,128,109,116,122,115,121,107,129,108,139,86
,139,89,166,131,194,8,136,162,118,159,113,139,8,112,116,116,112,31,14,248,237,239,1,247,205,239,3,247,5,249,31,21,111,162,117,166
,30,247,42,252,197,6,111,162,117,166,166,162,162,166,30,248,197,247,42,7,166,162,162,166,166,117,162,111,31,252,36,6,111,117,117
,111,31,14,126,239,249,6,119,1,247,19,239,247,164,239,3,247,19,247,103,21,139,65,171,67,201,98,181,111,189,130,189,139,189,139,189
,148,181,167,200,180,172,211,139,213,8,248,88,7,166,115,162,113,112,116,117,111,30,252,88,7,62,86,92,56,30,109,139,107,143,114,155
,105,162,124,179,139,180,8,248,88,7,166,116,162,112,112,116,116,112,30,14,249,93,119,1,247,4,249,43,21,247,59,253,16,5,144,120,160
,121,163,139,8,207,6,162,139,159,156,144,159,8,247,61,249,16,5,165,115,163,112,30,115,139,121,122,132,119,8,251,43,252,207,251,44
,248,207,5,134,159,119,156,116,139,8,112,115,116,112,31,14,249,93,119,1,247,5,239,247,191,240,3,247,5,249,43,21,147,251,120,151,
251,102,182,251,88,144,119,158,120,165,139,8,167,6,165,139,155,156,145,158,8,200,247,103,199,251,92,5,147,113,174,118,173,139,163
,139,160,158,143,159,181,247,87,153,247,103,147,247,120,8,141,7,164,115,162,113,113,114,116,112,30,133,251,55,130,251,43,119,251
,35,8,81,247,86,5,133,157,121,157,115,139,8,122,6,115,139,123,124,132,121,8,80,251,96,5,118,247,38,131,247,46,133,247,56,138,165
,118,163,111,139,8,113,115,118,112,31,14,249,93,119,1,247,25,179,21,111,162,117,166,30,159,139,153,151,149,153,8,247,28,247,142,
247,34,251,154,5,149,129,154,135,152,139,166,139,162,162,139,166,139,147,137,148,135,146,8,251,53,247,188,247,47,247,170,5,143,147
,141,147,139,148,139,166,116,162,112,139,119,139,125,126,129,126,8,251,22,251,127,251,30,247,139,5,130,148,125,144,126,139,112,139
,116,117,139,111,139,130,141,131,143,131,8,247,47,251,170,251,53,251,188,5,135,132,137,130,139,131,8,14,249,93,119,1,247,205,239
,3,247,28,249,43,21,139,130,141,131,143,132,8,247,63,251,212,139,251,171,5,111,162,117,166,166,162,162,166,30,139,247,171,247,63
,247,212,5,143,146,141,147,139,148,139,166,116,162,112,139,121,139,119,127,133,124,8,251,25,251,141,251,25,247,141,5,130,154,124
,151,119,139,112,139,116,117,139,111,8,14,140,239,248,136,239,1,247,33,190,21,112,162,116,166,30,247,235,6,166,162,161,167,167,117
,161,111,31,251,153,139,247,163,248,163,5,143,146,141,147,139,147,8,165,116,163,112,30,251,198,6,111,117,116,112,112,162,116,166
,31,247,116,139,251,163,252,163,5,135,132,137,131,139,131,8,14,126,239,248,222,239,1,247,102,239,3,247,102,176,21,112,162,116,166
,30,247,178,6,166,162,162,166,166,116,162,112,31,251,128,248,222,247,128,6,167,161,162,166,166,116,162,112,31,251,178,6,112,116,
116,112,31,14,249,153,119,1,247,65,249,103,21,139,132,140,133,142,133,8,247,172,253,66,5,146,122,158,125,159,139,166,139,162,162
,139,166,139,146,138,145,136,145,8,251,172,249,66,5,132,155,120,154,119,139,112,139,116,117,139,111,8,14,126,239,248,222,239,1,248
,52,239,3,247,22,176,21,112,162,116,166,30,247,178,6,166,162,162,166,31,249,66,7,166,116,162,112,30,251,178,6,112,116,116,112,112
,161,116,167,31,247,128,252,222,251,128,6,112,116,116,112,31,14,247,5,248,53,21,36,10,14,251,128,247,21,1,247,5,251,49,21,110,7,
111,162,117,166,30,248,36,6,166,162,162,166,31,168,7,166,116,162,112,30,252,36,6,112,116,117,111,31,14,248,220,247,78,1,247,151,
247,46,3,247,151,249,100,21,139,129,141,130,144,131,8,199,45,5,149,129,153,134,152,139,166,139,162,162,139,166,139,149,136,148,134
,147,8,79,234,5,132,150,123,142,126,139,112,139,116,117,139,111,8,14,122,240,247,50,236,244,239,1,247,19,239,247,141,239,3,247,19
,247,46,21,139,39,230,75,223,133,145,139,145,138,144,139,202,139,191,165,181,175,8,131,7,111,162,117,166,166,162,162,166,30,247,
202,7,139,194,117,193,99,177,99,176,83,152,84,139,77,139,80,116,89,103,128,131,131,122,139,125,139,111,161,117,167,139,150,139,150
,142,148,146,8,170,164,177,152,179,139,169,139,170,136,161,118,161,119,144,108,142,109,251,66,138,251,67,127,139,251,64,8,239,22
,37,10,14,123,238,247,250,237,247,126,119,1,247,16,239,247,181,239,3,247,16,176,21,112,162,116,166,166,162,161,167,30,143,7,177,
109,184,118,190,134,148,138,148,139,148,139,8,247,48,211,247,28,247,53,31,145,7,138,247,20,68,228,251,1,166,118,144,119,142,120,
139,81,139,89,116,99,107,8,247,131,7,167,116,161,112,112,116,116,112,30,239,252,159,21,247,17,7,161,183,175,178,183,159,159,148,
158,143,157,139,216,139,190,60,141,62,8,131,7,139,62,124,76,91,107,115,123,115,133,116,139,70,139,77,198,115,197,8,14,121,239,247
,248,239,1,247,59,239,247,93,237,3,247,59,247,166,21,139,251,19,170,44,223,94,172,121,172,132,172,139,227,139,217,195,158,215,8,
151,7,166,117,162,112,30,114,139,120,120,134,119,132,112,115,121,112,133,127,136,127,138,129,139,48,139,121,237,139,233,139,205,
153,203,185,161,156,147,162,143,163,139,8,172,139,170,130,147,116,146,118,156,121,163,139,8,167,160,161,167,31,151,7,124,200,84,
176,75,147,124,141,125,140,125,139,251,43,139,74,251,5,139,251,43,8,14,124,235,247,250,239,247,126,119,1,247,5,239,247,180,239,3
,247,5,247,161,21,139,251,36,197,32,247,14,112,159,135,158,137,158,139,197,139,190,158,180,170,140,113,162,117,165,139,8,166,162
,161,167,31,249,66,7,167,116,161,112,112,116,116,112,30,251,130,7,101,167,85,165,79,139,121,139,120,136,120,134,251,5,108,72,45,
139,251,29,8,239,22,139,205,157,189,183,169,164,156,165,146,163,139,207,139,197,83,164,84,8,251,20,7,123,89,99,101,94,121,118,130
,119,135,121,139,53,139,97,234,139,232,8,14,124,237,247,45,239,247,0,239,1,247,19,248,56,3,247,19,247,166,21,139,251,29,195,35,246
,104,164,131,173,134,175,139,8,217,223,162,205,167,116,161,111,31,126,139,127,134,130,130,126,126,123,131,118,136,127,137,127,138
,128,139,45,139,94,202,130,229,8,247,212,6,166,162,162,166,247,40,60,247,2,251,44,31,133,6,251,42,136,54,251,10,139,251,41,8,246
,201,21,156,201,181,185,210,139,226,139,165,99,153,71,8,14,248,69,239,247,29,239,1,247,199,239,3,247,39,248,119,21,112,161,116,167
,30,247,2,139,145,252,32,5,111,162,117,166,166,162,162,166,30,133,248,32,247,14,139,5,166,162,162,166,166,115,162,113,31,251,14,
148,6,139,161,139,171,143,152,151,182,189,157,192,139,8,166,162,162,166,166,116,162,112,251,41,69,61,251,42,31,130,251,2,7,112,116
,116,112,31,14,251,82,239,247,1,239,247,212,239,1,247,8,239,247,163,239,3,247,8,247,161,21,251,28,217,251,6,247,32,30,205,139,187
,161,178,172,8,139,114,139,117,5,139,117,138,117,130,119,121,98,99,127,82,139,110,139,97,139,117,149,113,151,138,177,100,139,112
,139,116,117,139,111,139,132,140,132,142,133,8,170,67,212,121,240,139,247,30,139,229,219,139,247,19,139,153,138,154,137,154,8,248
,61,7,166,116,162,112,30,114,139,116,118,137,114,107,165,99,157,91,143,131,140,131,139,131,139,8,251,42,62,251,10,251,44,31,239,
22,235,175,213,233,30,152,6,208,134,178,77,159,84,8,55,7,108,86,99,78,57,139,8,57,103,211,217,31,14,248,75,239,247,126,119,1,247
,48,239,247,106,239,3,247,48,176,21,111,162,117,166,166,162,162,166,30,247,184,7,166,191,178,197,214,139,8,210,141,70,67,31,139,
127,139,251,141,5,112,162,116,166,166,162,162,166,30,247,141,7,139,182,139,186,129,176,119,210,80,194,55,139,78,139,94,118,104,110
,8,247,126,7,166,116,162,112,112,116,117,111,30,14,248,60,239,242,247,38,18,247,73,247,172,251,34,247,37,36,239,19,224,247,73,248
,110,21,112,162,116,166,30,19,200,38,10,19,224,39,10,19,208,247,30,247,95,21,40,10,14,251,75,242,248,140,239,241,247,38,18,247,102
,247,138,251,29,247,37,251,0,239,19,228,247,45,251,21,21,95,182,129,185,30,163,139,163,142,160,141,195,144,187,188,161,184,157,176
,140,183,139,181,8,139,152,5,19,240,41,10,19,228,235,252,3,6,139,107,139,99,129,118,133,125,118,111,121,138,8,88,137,5,125,139,125
,140,125,139,8,134,6,111,117,117,111,31,19,232,247,58,249,186,21,40,10,14,248,172,119,247,149,119,1,247,65,239,3,247,65,176,21,111
,162,117,166,166,162,162,166,30,247,99,142,7,247,117,251,134,5,148,129,153,134,152,139,166,139,162,162,139,166,139,152,134,151,131
,148,8,251,98,247,113,247,64,247,50,5,149,148,145,152,139,153,139,166,116,162,112,139,126,139,127,133,130,130,8,251,88,251,69,136
,139,139,248,15,5,166,116,162,112,112,116,117,111,30,14,132,239,249,60,119,18,247,145,238,46,239,19,224,247,145,247,120,21,139,68
,147,88,173,94,183,81,204,129,241,139,8,166,162,162,166,166,116,162,112,31,113,139,101,139,125,141,74,148,128,192,139,210,8,19,208
,146,248,130,5,167,116,162,112,111,117,116,111,30,14,248,75,239,1,247,5,239,239,239,239,239,3,20,112,247,5,176,21,111,162,117,166
,166,162,162,166,30,247,170,7,178,165,224,183,30,161,139,146,114,140,121,8,251,251,7,111,162,117,166,166,162,162,166,30,247,170,
7,179,166,223,182,30,161,139,146,114,140,121,8,251,251,7,111,162,117,166,166,162,162,166,30,248,3,7,209,85,204,63,30,99,139,104,
120,113,111,116,167,104,158,98,139,108,139,113,129,117,123,130,153,124,148,122,139,8,112,116,117,111,31,14,248,75,239,1,247,19,239
,247,164,239,3,247,19,176,21,112,162,116,166,166,162,162,166,30,247,158,7,165,203,191,211,225,139,8,230,156,76,49,31,251,141,7,111
,162,117,166,165,163,162,166,30,247,141,7,247,41,81,243,251,42,30,71,139,85,114,97,102,8,148,7,166,116,161,112,112,116,117,112,30
,14,123,239,247,252,239,1,247,5,239,247,192,239,3,247,5,247,155,21,42,10,239,22,43,10,14,251,55,118,247,60,239,247,248,238,1,247
,16,239,247,181,239,3]);fileData1.push.apply(fileData1,[247,16,251,26,21,112,161,116,167,167,161,161,167,30,247,64,7,176,109,185
,118,192,136,8,156,6,247,46,221,247,13,247,44,31,139,247,37,79,238,251,14,169,117,144,119,142,119,139,82,139,90,118,100,107,8,167
,116,161,112,112,116,116,112,30,239,251,172,21,247,10,7,163,192,189,196,207,144,144,139,143,140,143,139,238,139,174,53,139,42,139
,54,107,75,66,120,126,136,127,137,127,139,62,139,96,208,112,192,8,14,251,55,118,247,60,237,247,249,239,1,247,5,239,247,180,239,3
,247,5,247,149,21,139,251,31,203,38,247,9,113,160,134,158,137,158,139,198,139,189,160,178,171,8,251,63,7,112,161,116,167,167,161
,161,167,30,249,0,7,167,116,161,112,112,116,116,112,30,100,171,90,160,82,139,119,139,119,136,117,134,251,15,109,81,40,139,251,37
,8,239,22,139,207,153,202,187,168,164,154,164,146,162,139,210,139,195,78,165,83,8,251,11,7,120,93,103,95,93,120,118,131,120,135,
121,139,55,139,94,225,139,228,8,14,248,75,239,1,247,96,239,247,84,239,3,247,96,176,21,112,162,116,166,166,162,161,167,30,247,116
,7,139,214,183,228,219,150,146,139,146,142,146,139,144,139,145,136,144,139,157,135,152,124,139,121,140,112,161,117,166,139,166,139
,162,162,139,167,8,138,214,81,202,51,139,79,139,91,119,102,106,8,167,117,160,111,112,116,117,112,30,14,123,236,247,255,239,1,247
,51,239,247,112,239,3,247,45,236,21,139,130,140,130,144,131,176,79,203,112,232,139,8,149,6,247,7,142,240,183,139,247,10,139,247,
31,251,40,152,251,3,168,109,147,108,152,139,177,8,190,197,143,185,30,165,6,169,137,173,135,146,111,144,118,159,123,163,139,166,139
,162,162,139,166,139,143,138,143,138,144,121,207,67,175,66,143,8,108,6,32,42,96,251,4,31,139,251,31,247,30,122,247,2,110,169,131
,181,129,139,102,139,91,77,119,79,139,106,139,108,145,118,149,114,151,131,177,103,139,112,139,116,117,139,111,8,14,126,239,247,232
,239,18,247,141,239,44,239,19,224,247,19,248,113,21,112,162,116,166,30,214,139,136,251,118,139,127,5,139,44,162,72,212,111,158,132
,169,134,169,139,8,201,206,158,190,166,116,162,112,31,110,139,114,119,108,139,8,137,6,72,139,185,205,31,142,247,120,247,43,139,5
,166,162,162,166,166,116,162,112,31,19,208,251,41,139,141,240,5,166,117,162,111,111,117,118,110,30,137,38,62,139,5,112,116,116,112
,31,14,123,239,248,88,119,1,247,19,239,247,164,239,3,247,19,247,134,21,139,100,140,100,148,105,163,53,205,81,245,137,8,143,6,207
,139,192,163,180,175,8,132,7,111,162,117,166,165,163,162,166,30,248,85,7,166,115,162,113,112,116,117,111,30,251,151,7,116,71,90,
64,52,139,8,134,6,42,142,128,204,139,244,8,247,121,7,166,115,162,112,113,116,115,113,30,251,121,7,14,248,172,119,1,247,8,248,122
,21,139,133,140,133,141,134,8,247,52,252,85,5,146,120,158,125,160,139,8,213,6,159,139,161,154,144,157,8,247,52,248,85,5,141,144,
140,145,139,145,139,166,116,162,112,139,118,139,118,123,134,121,8,251,40,252,51,135,139,251,40,248,51,5,132,158,122,154,116,139,
112,139,116,117,139,111,8,14,248,172,119,1,247,7,239,247,187,240,3,247,7,248,122,21,194,252,91,5,142,116,160,118,165,139,8,189,6
,162,139,156,155,146,158,8,185,247,51,185,251,51,5,145,120,157,123,163,139,8,188,6,164,139,161,159,141,163,8,195,248,91,139,143,
5,163,114,161,113,30,113,139,119,118,135,116,8,100,251,216,102,247,18,5,133,159,121,155,115,139,8,93,6,116,139,119,123,134,119,8
,102,251,18,99,247,216,5,137,163,117,159,114,139,8,112,115,116,112,31,14,248,172,119,1,247,39,176,21,112,162,116,166,30,152,139,
153,143,148,149,8,247,22,247,77,247,21,251,77,5,148,127,153,137,153,139,165,139,163,162,139,166,139,149,135,149,133,148,8,251,32
,247,92,247,22,247,84,5,144,147,142,149,139,149,139,166,116,162,112,139,126,139,125,134,130,130,8,251,10,251,67,251,10,247,67,5,
132,149,123,143,126,139,112,139,116,117,139,111,139,129,142,129,144,131,8,247,21,251,84,251,32,251,92,5,133,130,136,129,139,129,
8,14,251,75,241,248,253,119,1,247,5,251,23,21,139,114,156,120,161,134,148,137,149,138,148,139,189,139,183,170,157,176,8,247,207,
248,212,5,143,146,141,148,139,148,139,166,116,162,112,139,126,139,124,134,129,130,8,251,49,251,182,251,61,247,182,5,130,148,125,
144,126,139,112,139,116,117,139,111,139,130,141,130,144,132,8,247,84,251,223,251,0,251,90,5,133,127,130,138,129,139,8,123,6,112,
116,117,111,31,14,138,239,247,217,239,1,247,39,188,21,112,161,116,167,30,247,232,6,167,161,162,166,166,116,162,112,31,251,151,139
,247,164,247,194,5,148,148,144,151,139,151,8,179,7,167,117,161,111,30,251,200,6,111,117,117,111,111,162,117,166,31,247,124,139,251
,170,251,200,5,131,130,134,128,139,127,8,14,126,239,247,135,239,247,135,239,1,247,176,239,3,20,224,247,5,248,15,21,111,162,118,166
,30,175,139,181,139,161,117,159,118,140,109,139,111,139,41,161,62,204,100,184,112,220,138,205,139,8,166,162,162,166,166,116,162,
112,31,91,139,68,139,118,152,102,162,137,186,139,198,139,193,127,196,100,178,183,172,146,213,139,196,139,172,139,177,158,164,162
,171,185,141,196,139,8,173,6,167,161,162,166,166,116,162,112,31,251,8,139,64,131,90,72,107,95,132,83,139,84,8,129,7,139,110,138,
108,124,121,118,114,93,139,101,139,8,112,116,116,111,31,14,249,153,119,1,247,205,239,3,247,205,251,3,21,111,161,117,167,167,161,
162,166,30,249,214,7,166,116,162,112,112,116,117,111,30,14,126,239,247,135,239,247,135,239,1,247,233,239,3,20,224,247,5,176,21,111
,162,117,166,30,205,139,220,139,184,167,204,178,160,215,139,238,139,167,140,169,160,160,161,161,181,139,175,139,8,166,162,161,166
,166,116,163,112,31,135,6,102,139,96,139,118,164,122,159,139,176,139,170,139,194,133,195,107,183,90,206,63,147,251,7,139,8,112,116
,117,111,111,161,117,167,31,178,139,196,139,160,132,190,124,149,93,139,77,139,84,146,63,183,106,100,100,127,82,139,85,139,106,139
,101,129,115,120,95,90,136,72,139,8,106,6,112,116,117,111,31,14,248,171,239,125,240,107,159,18,139,238,247,166,238,19,88,247,19,
248,233,21,44,10,19,184,45,10,19,88,46,10,14,247,191,247,37,18,247,182,247,38,251,15,239,19,192,248,216,247,241,21,47,10,162,252
,201,21,33,10,14,247,56,239,247,124,239,1,247,39,239,247,124,239,3,247,118,247,72,21,111,162,117,166,30,152,139,152,144,148,149,
8,190,190,5,172,119,178,127,181,139,180,139,177,150,173,160,8,190,88,5,149,129,152,134,152,139,166,139,162,162,139,166,139,152,134
,152,129,148,8,87,191,5,160,172,151,178,139,180,139,180,126,178,119,172,8,191,191,5,149,148,144,152,139,152,139,166,116,162,112,
139,126,139,126,134,129,129,8,88,88,5,106,159,100,151,98,139,97,139,100,127,106,119,8,88,190,5,130,149,126,144,126,139,112,139,116
,117,139,111,139,126,144,126,148,130,8,191,87,5,119,106,127,100,139,98,139,97,151,101,159,106,8,87,87,5,130,130,134,126,139,126,
8,247,26,247,92,21,203,191,191,203,203,191,87,75,75,84,87,78,75,87,191,203,30,14,247,134,248,24,21,139,32,241,102,238,131,204,134
,247,6,147,139,65,139,75,73,126,78,138,8,133,6,69,139,88,156,119,190,131,157,121,153,118,139,111,139,117,116,139,111,139,133,140
,134,141,133,174,52,217,94,247,12,139,8,147,6,247,10,141,247,1,190,139,247,12,8,144,7,138,184,125,172,115,164,162,165,155,172,139
,179,8,143,7,136,241,50,181,44,148,76,145,35,130,139,212,139,202,204,155,201,139,168,139,166,134,158,126,169,119,139,88,186,139,
165,139,163,163,139,165,8,139,145,138,144,137,144,114,216,66,185,38,139,251,16,139,36,82,139,251,14,139,100,149,109,155,116,110,
110,116,100,139,93,8,239,22,139,163,160,161,158,152,181,126,189,134,189,134,178,136,198,133,139,95,139,112,123,126,122,128,120,144
,118,142,118,141,84,144,251,23,131,139,200,8,14,247,165,247,49,1,247,119,239,211,239,3,248,90,247,215,21,112,161,116,167,167,161
,162,166,30,196,7,166,116,162,112,112,116,116,112,30,247,64,82,21,111,161,117,167,166,162,162,166,30,196,7,166,115,162,113,112,116
,117,111,30,14,139,28,249,67,247,192,247,192,247,192,247,192,247,192,248,86,247,192,247,192,247,192,247,192,247,192,1,28,249,67,
247,192,247,192,247,192,247,192,247,192,248,86,247,192,247,192,247,192,247,192,247,192,3,247,117,4,247,16,240,38,251,16,251,16,38
,38,251,16,251,16,38,240,247,16,247,16,240,240,247,16,31,247,192,4,251,182,251,127,251,127,251,182,251,182,247,127,251,127,247,182
,247,182,247,127,247,127,247,182,247,182,251,127,247,127,251,182,31,135,247,192,21,248,89,248,12,252,4,252,89,252,89,252,12,252,
12,252,89,252,89,252,4,248,12,248,89,248,89,248,4,248,4,248,89,31,247,192,4,252,255,252,138,252,138,252,255,252,255,248,138,252,
146,248,255,248,255,248,146,248,146,248,255,248,255,252,146,248,138,252,255,31,247,192,4,249,165,249,24,253,16,253,165,253,165,253
,24,253,24,253,165,253,165,253,16,249,24,249,165,249,165,249,16,249,16,249,165,31,143,247,192,21,254,74,253,155,253,155,254,74,254
,74,249,155,253,155,250,74,250,74,249,155,249,155,250,74,250,74,253,155,249,155,254,74,31,14,248,159,251,92,251,16,21,247,92,39,
247,92,239,139,247,140,251,92,239,251,92,39,5,14,248,172,239,1,247,146,248,222,21,112,161,116,167,30,248,8,6,166,162,162,166,166
,115,162,113,31,252,8,6,112,116,116,112,31,14,248,137,247,78,1,247,205,247,46,3,249,6,248,187,21,111,162,117,166,30,152,139,153,
144,148,148,8,199,234,5,144,147,142,149,139,148,139,166,116,162,112,139,126,139,125,135,130,129,8,79,44,5,134,131,136,130,139,129
,8,14,251,228,239,239,247,89,1,247,193,239,145,239,3,248,238,150,21,42,7,112,162,116,166,30,142,139,143,139,5,166,161,117,111,112
,116,116,111,31,137,139,136,139,5,111,117,116,112,31,139,112,161,118,165,137,8,146,6,222,207,205,223,31,139,208,94,195,78,157,8,
193,7,167,117,161,111,111,117,116,112,30,14,251,113,239,248,173,247,37,18,247,62,239,159,247,38,251,15,239,210,239,19,236,247,232
,107,21,125,7,146,34,221,69,247,5,139,8,148,6,247,1,143,233,213,139,245,8,150,7,137,165,118,160,112,139,8,111,117,116,112,31,139
,137,139,135,5,83,83,109,84,30,87,139,89,165,138,194,8,143,7,139,186,158,162,165,161,184,177,192,177,139,210,8,222,7,166,116,162
,112,112,116,117,111,30,56,7,139,112,101,116,114,118,8,96,102,102,87,139,64,8,19,244,247,12,248,134,21,47,10,14,247,35,240,47,238
,248,1,247,49,79,119,18,247,5,239,247,192,239,19,44,247,118,249,46,21,48,10,142,253,63,21,111,162,117,166,30,163,139,155,155,146
,159,8,19,76,177,247,18,5,19,156,247,119,130,174,251,9,5,144,119,159,123,161,139,166,139,162,162,139,166,139,144,138,144,138,143
,8,251,78,249,3,5,133,157,121,157,115,139,8,116,6,115,139,123,124,132,121,8,251,78,253,6,5,137,135,139,134,139,134,8,19,76,247,56
,247,103,21,222,247,167,5,19,140,223,251,174,5,205,248,58,21,19,44,48,10,14,140,239,237,239,156,239,247,80,239,1,251,2,178,21,114
,165,115,165,30,163,139,157,157,146,158,8,183,247,64,247,95,139,180,251,52,5,145,118,157,122,164,139,8,247,215,6,166,162,162,166
,166,117,162,111,31,251,177,139,83,247,107,247,233,139,5,167,161,162,166,166,116,162,112,31,252,2,139,90,247,80,248,51,139,5,166
,162,162,166,166,117,162,111,31,252,186,6,115,139,120,122,134,119,8,147,252,4,21,214,247,183,215,251,183,5,14,126,239,248,68,238
,137,247,49,18,247,5,239,47,239,247,175,239,48,239,19,176,247,118,249,46,21,48,10,147,252,56,21,139,251,12,178,46,208,84,172,113
,181,117,198,139,188,139,187,156,176,170,208,195,177,229,139,247,14,139,247,56,63,247,43,251,57,139,116,139,116,136,117,131,8,251
,3,100,76,251,10,139,251,39,8,239,22,241,178,247,6,242,242,177,251,6,37,35,100,251,4,37,30,120,139,124,148,123,142,75,172,111,218
,139,231,8,19,162,247,184,247,255,21,48,10,14,126,239,248,170,239,1,247,10,237,247,186,239,3,247,66,119,21,112,162,116,166,30,157
,139,155,150,148,152,8,191,226,5,175,105,183,119,190,139,247,53,139,224,247,88,140,247,63,8,145,7,139,218,121,218,106,203,8,211,
247,13,5,144,146,141,148,139,148,139,167,117,161,112,139,125,139,126,134,129,130,8,81,44,5,103,172,96,158,87,139,99,139,90,121,109
,115,57,73,95,251,20,139,251,22,139,60,155,59,173,72,8,65,251,15,5,135,131,136,130,139,130,8,247,21,248,10,21,144,7,139,218,161,
222,179,191,157,162,169,164,176,139,171,139,165,124,160,115,8,251,102,251,238,5,128,179,134,181,139,175,8,207,251,119,21,247,102
,247,241,5,150,98,144,96,139,101,139,35,93,251,55,38,139,107,139,113,155,118,163,8,14,126,239,248,222,239,18,247,5,239,39,247,43
,247,89,247,44,39,239,19,228,247,118,247,178,21,251,77,207,251,6,247,74,247,74,207,247,7,247,76,30,247,143,7,166,116,162,112,112
,116,117,111,30,251,143,7,139,103,138,102,130,104,124,77,89,110,64,139,87,139,95,154,115,170,113,173,135,203,139,194,8,247,143,7
,166,116,162,112,112,116,117,111,30,247,78,4,111,161,117,167,30,19,224,189,6,19,208,168,161,161,167,31,19,224,167,116,161,111,30
,89,6,112,116,117,111,31,19,200,247,240,22,112,161,116,167,30,191,6,167,161,162,166,166,116,162,112,31,87,6,112,116,116,112,31,14
,132,239,247,140,247,8,247,105,239,18,247,28,239,247,146,239,62,237,19,248,247,164,176,21,111,162,117,166,166,162,162,166,30,248
,56,7,247,10,146,234,247,12,211,194,105,68,30,139,81,97,92,89,136,114,137,119,118,139,114,8,121,7,112,161,116,165,30,141,139,142
,139,141,139,5,19,244,210,139,172,81,140,72,8,135,7,139,83,118,77,82,138,114,138,116,116,139,113,139,113,164,115,165,139,247,9,142
,195,245,139,247,0,139,218,109,219,79,179,8,19,248,180,175,167,194,139,203,8,142,7,137,247,18,44,216,251,22,139,8,251,76,96,251,
24,251,73,31,14,122,240,247,50,236,244,239,154,247,49,18,247,19,239,139,239,211,239,116,239,19,249,247,146,247,46,21,139,39,230,
75,223,133,145,139,145,138,144,139,202,139,191,165,181,175,8,131,7,111,162,117,166,166,162,162,166,30,247,202,7,139,194,117,193,
99,177,99,176,83,152,84,139,77,139,80,116,89,103,128,131,131,122,139,125,139,111,161,117,167,139,150,139,150,142,148,146,8,170,164
,177,152,179,139,169,139,170,136,161,118,161,119,144,108,142,109,8,251,66,138,251,67,127,139,251,64,8,239,22,37,10,19,244,248,90
,4,49,10,247,64,81,21,50,10,14,124,237,247,45,239,247,0,239,1,103,239,3,67,247,46,21,139,39,230,75,223,133,145,139,145,138,144,139
,203,139,190,166,181,175,8,130,7,111,162,117,166,30,164,139,160,158,143,163,157,125,160,129,162,131,164,131,174,134,175,139,8,217
,224,162,205,166,116,162,111,31,126,139,125,134,129,130,8,137,7,129,125,118,134,122,136,127,137,127,138,128,139,45,139,94,202,130
,229,8,247,211,6,167,161,161,167,247,40,62,247,2,251,45,31,133,6,64,137,81,110,99,92,103,191,71,165,68,139,77,139,78,119,91,100,
127,130,132,125,139,123,139,112,161,116,167,139,150,139,150,142,148,146,8,170,164,177,152,179,139,169,139,170,136,161,118,161,119
,145,108,141,109,251,65,138,251,68,126,139,251,63,8,239,22,214,229,152,229,30,163,139,162,138,161,138,8,99,7,108,89,89,73,64,139
,8,129,6,104,141,91,164,139,182,8,247,248,247,74,21,51,10,14,123,239,247,252,239,154,247,49,1,247,5,239,153,239,210,240,153,239,
3,247,118,247,155,21,42,10,239,22,43,10,153,247,237,21,49,10,247,63,81,21,113,162,116,166,166,163,161,166,30,197,7,166,114,162,113
,113,115,116,112,30,14,123,239,247,252,239,1,247,5,239,247,192,239,3,247,32,116,21,112,162,116,166,30,152,139,152,144,148,149,8,
208,220,5,177,114,185,125,194,139,247,52,139,229,247,15,139,247,48,139,203,124,197,111,185,8,213,227,5,146,148,144,150,139,151,139
,166,117,162,111,139,125,139,127,134,129,130,8,68,57,5,102,164,94,153,85,139,251,55,139,52,251,15,139,251,50,139,76,153,81,167,93
,8,66,52,5,131,130,135,128,139,127,8,247,35,247,178,21,238,187,221,241,30,167,139,163,133,159,128,8,251,101,251,139,5,130,164,135
,167,139,169,8,216,251,54,21,247,101,247,139,5,148,114,144,110,139,108,139,40,92,59,36,139,111,139,114,145,119,150,8,14,123,239,
248,88,119,182,247,49,18,247,19,239,139,239,211,239,139,239,19,242,247,146,247,134,21,139,100,140,100,148,105,163,53,205,81,245,
137,8,143,6,207,139,192,163,180,176,8,131,7,111,162,117,166,165,163,162,166,30,248,85,7,166,115,162,113,112,116,117,111,30,251,151
,7,116,71,90,64,52,139,8,134,6,42,142,128,204,139,244,8,247,121,7,166,115,162,112,113,116,115,113,30,251,121,7,239,247,243,21,49
,10,247,64,81,21,50,10,14,248,60,239,18,247,73,247,172,39,239,19,192,247,254,248,110,21,112,162,116,166,30,19,160,38,10,19,192,39
,10,14,126,239,53,239,247,107,239,247,77,239,59,239,18,58,239,247,186,239,19,166,251,54,247,246,21,140,251,63,226,251,88,247,51,
139,198,139,189,166,177,182,8,133,7,19,118,111,162,117,166,30,247,235,6,166,162,162,166,166,117,162,111,31,251,185,247,107,247,136
,6,167,160,161,167,166,117,162,112,31,251,136,247,77,247,185,6,166,162,162,166,166,117,162,111,31,251,235,6,111,139,119,119,137,
112,8,19,174,100,180,90,165,80,139,8,251,60,60,251,83,251,63,31,239,134,21,145,7,139,217,157,223,181,189,162,166,165,161,177,139
,240,139,184,251,41,140,251,3,8,132,7,138,35,95,251,55,37,139,37,139,95,247,55,138,243,8,14,123,239,247,44,239,247,0,239,1,52,239
,3,251,66,247,155,21,251,50,228,251,13,247,53,30,229,139,206,177,182,201,165,98,177,110,187,123,163,131,174,134,175,139,8,218,224
,162,205,166,116,162,111,31,126,139,124,135,130,129,127,125,123,132,119,136,127,137,127,138,128,139,45,139,94,202,130,229,8,247,
211,6,167,161,161,167,247,40,62,247,2,251,45,31,133,6,54,137,76,102,99,80,97,199,72,177,51,139,8,251,55,52,251,15,251,50,31,239,
22,238,187,221,241,240,188,58,39,40,91,59,37,37,91,219,238,30,248,43,212,21,51,10,14,251,71,239,248,139,239,18,247,102,247,138,39
,239,19,208,247,198,251,21,21,111,162,117,166,30,177,139,209,139,145,141,239,162,178,229,139,247,13,8,19,224,41,10,19,208,235,252
,3,6,139,107,139,99,129,117,122,101,106,134,97,139,123,139,122,140,121,139,8,111,117,117,111,31,14,247,5,248,53,21,36,10,14,248,
196,118,1,247,118,250,12,21,139,130,142,129,144,131,8,247,97,251,201,5,149,130,153,135,152,139,152,139,152,143,148,139,8,247,94,
247,195,5,146,149,145,150,139,151,139,166,117,162,111,139,126,139,127,133,129,130,8,251,57,251,73,251,57,247,74,5,130,149,126,143
,126,139,8,111,117,117,111,31,14,249,33,239,1,247,5,239,247,192,239,3,247,118,250,9,21,149,251,23,247,1,38,247,23,139,247,23,139
,247,1,240,149,247,23,8,142,7,166,117,162,111,30,112,139,118,119,137,113,133,61,74,78,60,139,60,139,74,200,133,217,137,164,118,160
,112,139,8,111,117,117,111,31,14,248,112,247,37,1,247,182,247,38,3,248,216,248,162,21,47,10,14,248,171,239,125,240,127,119,18,139
,238,247,166,238,19,88,247,19,248,233,21,44,10,19,184,45,10,19,88,46,10,14,161,118,248,128,247,112,39,239,18,247,33,239,247,164,
239,19,184,247,174,190,21,112,162,116,166,166,162,161,167,30,248,198,247,164,69,7,19,216,111,161,117,167,167,161,162,166,30,247,
12,7,166,116,162,112,30,19,184,252,8,6,112,116,116,112,31,14,126,239,247,109,239,247,109,239,1,247,8,239,179,247,106,179,239,3,20
,252,247,124,247,246,21,35,10,239,135,21,144,7,139,236,170,236,198,186,154,151,160,148,160,139,8,243,182,251,47,251,4,35,93,251,
55,38,31,37,139,95,247,55,138,243,8,179,22,111,162,117,166,30,247,6,6,166,162,162,166,166,117,162,111,31,251,6,6,111,117,117,111
,31,14,249,87,119,1,247,33,247,50,247,20,247,49,3,247,174,179,21,112,162,116,166,30,197,6,166,162,162,166,31,139,154,132,153,127
,148,8,222,247,249,222,251,249,5,127,130,132,125,139,124,8,112,162,116,166,30,196,6,166,162,161,167,31,139,163,122,157,117,145,8
,251,25,248,216,5,134,160,120,157,114,139,116,139,118,122,134,117,8,251,28,252,216,5,118,133,123,119,139,117,8,14,140,239,247,107
,239,247,77,239,1,247,140,190,21,52,10,248,236,4,52,10,199,251,177,21,112,161,116,167,30,247,149,6,167,161,161,167,167,116,161,112
,31,251,149,6,112,116,116,112,31,14,248,249,239,1,247,33,239,247,135,239,3,247,118,249,43,21,139,119,150,122,156,131,8,252,214,7
,112,162,116,166,166,162,161,167,30,248,209,247,135,252,209,7,112,162,116,166,166,162,161,167,30,248,214,7,156,147,151,156,139,159
,8,166,116,162,112,30,252,36,6,112,116,117,111,31,14,140,239,39,247,21,248,79,247,20,39,239,18,19,128,247,210,190,21,111,162,117
,166,30,19,64,247,234,6,166,162,161,167,31,168,7,167,116,161,112,30,19,144,120,139,121,127,131,122,8,251,118,139,226,247,125,5,141
,144,140,145,139,145,139,145,138,145,139,145,8,52,247,124,247,118,139,5,19,32,147,123,156,127,159,139,8,167,161,161,167,31,167,7
,167,117,161,111,30,19,144,251,234,6,111,117,117,111,31,139,133,140,133,141,134,8,244,251,175,34,251,174,5,137,133,138,133,139,133
,8,14,248,216,237,1,247,205,239,3,247,204,248,207,21,111,162,117,166,30,152,139,152,145,148,148,152,152,139,170,161,139,8,144,6,
165,134,145,107,139,110,8,252,113,7,111,162,117,166,166,162,162,166,30,248,113,7,139,168,145,170,165,145,8,143,6,150,139,148,132
,141,128,143,117,159,120,164,139,8,166,161,162,166,31,148,7,128,202,86,174,84,139,108,139,108,128,114,116,114,162,108,150,108,139
,84,139,85,104,128,76,8,14,127,242,18,247,5,239,210,247,49,251,20,239,239,239,19,216,247,118,247,155,21,139,251,32,210,251,4,247
,21,116,8,110,7,19,232,122,131,127,122,139,119,8,112,162,116,166,30,196,6,166,162,161,167,31,19,216,139,159,128,156,122,147,8,168
,7,247,20,162,211,247,5,139,247,31,139,247,32,66,247,5,251,19,163,8,168,7,19,232,155,147,151,156,139,159,8,167,117,161,111,30,82
,6,111,117,116,112,31,19,216,139,120,151,121,156,131,8,110,7,251,19,112,66,36,139,251,39,8,239,22,139,204,161,199,181,169,149,146
,152,143,152,144,8,251,235,7,71,161,107,208,139,220,8,247,92,251,64,21,247,237,7,206,117,172,70,139,57,139,58,107,70,71,117,8,14
,247,205,239,196,239,3,247,204,248,207,21,147,251,38,5,152,251,52,142,251,121,247,25,95,8,90,7,111,162,117,166,166,162,162,166,30
,188,7,235,174,170,247,28,151,247,10,8,157,247,182,139,142,5,165,116,160,112,30,112,139,118,118,137,113,134,42,133,45,130,46,135
,91,133,58,112,94,8,248,106,7,166,116,162,112,112,116,117,111,30,252,106,7,112,183,133,220,135,188,131,232,132,233,134,236,137,165
,118,160,112,139,8,111,117,117,111,31,14,249,101,239,18,247,6,238,125,247,20,211,247,20,126,235,19,192,247,120,248,201,21,139,107
,143,106,146,104,165,251,24,169,251,23,173,251,22,8,19,160,129,130,133,125,139,124,8,111,162,117,166,30,167,6,166,162,162,166,31
,139,144,138,144,138,143,100,247,36,105,247,37,110,247,39,8,19,200,134,165,134,165,139,166,8,145,7,141,225,200,205,226,139,232,139
,197,66,139,48,139,117,135,115,132,116,8,19,144,35,252,78,139,127,5,111,162,117,166,30,167,6,166,162,162,166,31,139,154,132,152,
128,149,8,230,248,26,5,19,200,146,169,142,168,139,167,139,247,43,44,247,13,251,44,139,72,139,74,115,92,91,8,89,89,119,77,139,67,
8,14,249,81,119,1,247,205,239,3,247,232,248,145,21,112,161,116,167,30,152,139,152,144,148,148,8,197,196,139,252,126,5,111,162,117
,166,166,162,162,166,30,139,248,126,196,82,5,149,130,151,134,153,139,167,139,161,162,139,166,139,152,133,151,130,149,8,251,35,247
,35,5,130,148,126,144,126,139,124,139,127,134,130,139,8,251,34,251,35,5,129,129,134,127,139,126,8,14,249,81,119,1,247,205,239,3,
247,232,247,75,21,139,126,144,126,149,129,8,247,34,251,34,5,149,129,152,134,152,139,152,139,152,144,148,139,8,247,35,247,34,5,148
,149,145,152,139,152,139,166,116,162,112,139,125,139,127,134,129,129,8,82,82,139,248,126,5,166,117,162,111,111,117,117,111,30,139
,252,126,81,196,5,130,149,126,144,126,139,8,112,116,116,112,31,14,129,239,248,253,119,1,247,172,179,21,114,162,114,167,30,247,235
,6,166,163,162,166,31,251,66,249,10,5,133,159,119,156,117,139,117,139,117,123,134,118,8,83,252,216,21,244,248,16,244,252,16,5,14
,247,17,4,247,142,251,17,247,142,247,17,139,247,142,251,142,247,17,251,142,251,17,5,14,14,248,137,247,78,1,247,205,239,3,249,6,248
,187,21,111,162,117,166,166,162,162,166,30,225,7,166,116,162,112,112,116,117,111,30,14,248,137,247,78,1,247,151,247,46,3,248,154
,249,17,21,139,130,141,129,144,131,8,200,45,5,149,130,152,133,152,139,166,139,162,162,139,166,139,149,136,148,134,147,8,79,234,5
,132,150,123,142,126,139,112,139,116,117,139,111,8,14,248,232,247,66,1,247,111,239,227,239,3,248,74,249,26,21,111,161,117,167,167
,161,162,166,30,213,7,166,116,162,112,112,116,117,111,30,247,80,65,21,112,161,116,167,167,161,162,166,30,213,7,166,116,162,112,112
,116,116,112,30,14,146,239,3,153,68,21,112,161,116,167,167,161,162,166,30,249,94,7,166,116,162,112,112,116,116,112,30,14,249,103
,20,139,21,121,156,248,173,147,247,49,159,188,142,6,251,76,140,7,30,10,3,150,37,255,12,9,155,12,10,239,10,239,167,157,150,156,145
,145,150,162,239,12,12,239,11,239,167,157,147,143,155,173,145,168,247,3,12,13,30,10,6,255,12,18,28,0,70,19,0,21,2,0,1,0,28,0,50,
0,79,0,124,0,195,0,226,0,241,1,2,1,29,1,50,1,80,1,98,1,129,1,180,1,194,1,221,1,242,2,7,2,28,2,42,2,68,112,162,116,166,30,185,6,166
,162,162,166,31,185,7,166,116,162,112,30,93,6,112,116,116,112,31,11,111,161,117,167,167,161,162,166,30,248,27,7,166,116,162,112,
112,116,117,111,30,11,111,161,117,167,30,247,0,6,167,161,162,166,31,219,7,166,116,162,112,30,251,0,6,112,116,117,111,31,11,140,251
,63,226,251,88,247,51,139,247,53,139,224,247,88,140,247,63,8,142,7,247,70,51,247,78,251,51,30,99,139,90,122,109,114,59,74,91,251
,14,139,251,26,8,11,111,162,117,166,30,152,139,152,144,148,149,8,247,56,247,66,247,57,251,66,5,149,129,152,134,152,139,166,139,162
,162,139,166,139,149,136,149,133,147,8,251,97,247,200,5,131,150,123,142,126,139,126,139,126,135,129,139,8,251,97,251,200,5,134,131
,136,129,139,129,8,11,214,229,152,229,30,163,139,162,138,161,138,8,99,7,107,87,87,75,64,139,8,131,6,105,141,91,164,139,182,8,11,
247,22,252,23,6,112,162,116,166,166,162,161,167,30,11,248,73,7,167,117,161,111,30,251,72,6,111,117,116,112,31,11,111,162,117,166
,30,184,6,166,162,161,167,31,185,7,167,116,161,112,30,94,6,112,116,117,111,31,11,248,53,7,166,117,162,111,30,251,38,6,111,117,116
,112,112,162,116,166,31,11,251,50,228,251,13,247,53,247,52,229,247,15,247,48,247,50,47,247,15,251,50,251,55,52,251,15,251,50,30,
11,238,187,221,241,240,188,58,39,40,92,59,36,36,92,219,238,30,11,112,162,116,166,30,163,139,160,157,143,161,145,164,153,148,155,
139,163,139,168,121,157,125,172,114,175,115,181,135,8,11,144,139,143,138,144,139,206,139,198,187,152,206,140,142,140,143,139,142
,139,166,115,162,113,139,116,139,117,121,135,117,134,113,126,130,122,139,8,115,139,109,158,121,153,106,164,102,163,98,143,8,11,134
,139,135,140,134,139,72,139,79,91,125,72,8,11,112,161,116,167,30,185,6,167,161,162,166,31,184,7,166,117,162,111,30,93,6,111,117,
116,112,31,11,111,161,117,167,167,161,162,166,30,196,7,166,116,162,112,112,116,117,111,30,11,113,162,116,166,166,162,162,165,30,
197,7,166,116,162,112,112,116,116,112,30,11,112,161,117,167,166,162,162,165,30,197,7,166,115,162,113,112,116,117,111,30,11,155,201
,181,185,209,139,226,139,167,99,154,71,8,11,112,162,116,166,30,248,13,6,166,162,161,167,167,117,161,111,31,252,13,6,111,117,116,
112,31,11,0,0,0,0,1,0,0,0,14,0,0,0,24,0,0,0,0,0,2,0,1,0,1,0,144,0,1,0,4,0,0,0,2,0,0,0,1,0,0,0,10,0,64,0,142,0,2,68,70,76,84,0,14
,108,97,116,110,0,34,0,4,0,0,0,0,255,255,0,5,0,0,0,1,0,2,0,3,0,4,0,4,0,0,0,0,255,255,0,5,0,0,0,1,0,2,0,3,0,4,0,5,97,97,108,116,0
,32,115,115,48,49,0,38,115,115,48,50,0,44,115,115,48,51,0,50,115,115,48,52,0,56,0,0,0,1,0,0,0,24,0,1,0,1,0,22,0,1,0,2,0,20,0,1,0
,3,0,18,0,1,0,4,0,0,1,0,0,0,1,1,0,0,1,2,0,0,1,3,0,5,0,12,0,20,0,28,0,36,0,44,0,3,0,0,0,1,0,40,0,1,0,0,0,1,0,82,0,1,0,0,0,1,0,86,
0,1,0,0,0,1,0,90,0,1,0,0,0,1,0,94,0,1,0,38,0,4,0,14,0,20,0,26,0,32,0,2,0,3,0,143,0,2,0,8,0,141,0,2,0,65,0,142,0,2,0,93,0,144,0,1
,0,4,0,3,0,8,0,65,0,93,0,1,0,6,0,77,0,1,0,1,0,65,0,1,0,6,0,140,0,1,0,1,0,3,0,1,0,6,0,133,0,1,0,1,0,8,0,1,0,6,0,51,0,1,0,1,0,93,0
,1,0,0,0,10,0,44,0,46,0,2,68,70,76,84,0,14,108,97,116,110,0,24,0,4,0,0,0,0,255,255,0,0,0,4,0,0,0,0,255,255,0,0,0,0,0,0,0,0,0,1,0
,0,0,0,204,61,162,207,0,0,0,0,204,138,51,83,0,0,0,0,211,135,133,166,2,211,0,0,2,211,0,0,2,211,1,34,2,211,0,161,2,211,0,113,2,211
,0,113,2,211,0,113,2,211,0,113,2,211,1,20,2,211,1,0,2,211,0,181,2,211,0,113,2,211,0,113,2,211,0,159,2,211,0,113,2,211,0,241,2,211
,0,173,2,211,0,113,2,211,0,144,2,211,0,130,2,211,0,113,2,211,0,113,2,211,0,139,2,211,0,113,2,211,0,113,2,211,0,113,2,211,0,113,2
,211,1,3,2,211,0,156,2,211,0,113,2,211,0,113,2,211,0,113,2,211,0,141,2,211,0,113,2,211,0,119,2,211,0,113,2,211,0,161,2,211,0,164
,2,211,0,159,2,211,0,210,2,211,0,121,2,211,0,141,2,211,0,170,2,211,0,130,2,211,0,127,2,211,0,141,2,211,0,113,2,211,0,127,2,211,0
,116,2,211,0,141,2,211,0,115,2,211,0,153,2,211,0,147,2,211,0,113,2,211,0,127,2,211,0,112,2,211,0,113,2,211,0,133,2,211,0,136,2,211
,0,141,2,211,0,210,2,211,0,173,2,211,0,130,2,211,0,113,2,211,0,113,2,211,1,3,2,211,0,127,2,211,0,124,2,211,0,167,2,211,0,113,2,211
,0,127,2,211,0,147,2,211,0,116,2,211,0,156,2,211,0,181,2,211,0,153,2,211,0,173,2,211,0,253,2,211,0,113,2,211,0,127,2,211,0,113,2
,211,0,124,2,211,0,113,2,211,0,204,2,211,0,153,2,211,0,127,2,211,0,127,2,211,0,116,2,211,0,115,2,211,0,147,2,211,0,113,2,211,0,147
,2,211,0,113,2,211,1,57,2,211,0,113,2,211,0,127,2,211,2,68,2,211,0,226,2,211,0,242,2,211,1,198,0,0,249,67,2,11,255,56,2,211,0,254
,2,114,2,90,1,84,0,226,255,146,0,226,0,174,0,226,1,16,0,254,255,184,0,226,0,140,0,254,1,106,255,94,255,82,1,50,0,113,0,226,0,226
,2,68,0,127,1,26,0,232,1,26,0,248,0,226,1,62,1,56,0,226,1,56,0,228,1,84,1,84,1,24,0,0,0,0,2,114,2,6,1,182,0,14]);Module["FS_createDataFile
"]("/","OCRB.otf",fileData1,true,true)}if(Module["calledRun"]){runWithFS()}else{if(!Module[
x22;preRun"])Module["preRun"]=[];Module["preRun"].push(runWithFS)}});loadPackage({"files":[]})}))();
var Module;if(!Module)Module=(typeof Module!=="undefined"?Module:null)||{};var moduleOverrides={};for(var key in Module
){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;
var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"
;]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER
=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"
;]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("The provided Module['ENVIRONMENT'] value
is not valid. It must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER
=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require===
x22;function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&
;&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["
;print"]=console.log;if(!Module["printErr"])Module["printErr"]=console.warn;var nodeFS;var nodePath;Module
["read"]=function read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("
path");filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);if(!ret&
x26;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){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(
ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process
["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function read(){throw"no read() available (jsc?)"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}}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};Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response)}else{onerror()}};xhr.onerror=onerror;xhr.send(null)};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.warn(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&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"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var Runtime={setTempRet0:(function(value){tempRet0=value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),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}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)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),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}),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[sig]){Runtime.funcWrappers[sig]={}}var sigCache=Runtime.funcWrappers[sig];if(!sigCache[func]){sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func,arguments)}}return sigCache[func]}),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+15&-16;return ret}),staticAlloc:(function(size){var ret=STATICTOP;STATICTOP=STATICTOP+size|0;STATICTOP=STATICTOP+15&-16;return ret}),dynamicAlloc:(function(size){var ret=DYNAMICTOP;DYNAMICTOP=DYNAMICTOP+size|0;DYNAMICTOP=DYNAMICTOP+15&-16;if(DYNAMICTOP>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){DYNAMICTOP=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module["Runtime"]=Runtime;var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];if(!func){try{func=eval("_"+ident)}catch(e){}}assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)");return func}var cwrap,ccall;((function(){var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"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){ret=Runtime.stackAlloc((str.length<<2)+1);writeStringToMemory(str,ret)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;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){if(opts&&opts.async){EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(stack)}));return}Runtime.stackRestore(stack)}return ret};var sourceRegex=/^function\s*[a-zA-Z$_0-9]*\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/;function parseJSFunc(jsfunc){var parsed=jsfunc.toString().match(sourceRegex).slice(1);return{arguments:parsed[0],body:parsed[1],returnValue:parsed[2]}}var JSsource=null;function ensureJSsource(){if(!JSsource){JSsource={};for(var fun in JSfuncs){if(JSfuncs.hasOwnProperty(fun)){JSsource[fun]=parseJSFunc(JSfuncs[fun])}}}}cwrap=function cwrap(ident,returnType,argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident);var numericArgs=argTypes.every((function(type){return type==="number"}));var numericRet=returnType!=="string";if(numericRet&&numericArgs){return cfunc}var argNames=argTypes.map((function(x,i){return"$"+i}));var funcstr="(function("+argNames.join(",")+") {";var nargs=argTypes.length;if(!numericArgs){ensureJSsource();funcstr+="var stack = "+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"];funcstr+="var "+convertCode.arguments+" = "+arg+";";funcstr+=convertCode.body+";";funcstr+=arg+"=("+convertCode.returnValue+");"}}var cfuncname=parseJSFunc((function(){return cfunc})).returnValue;funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");";if(!numericRet){var strgfy=parseJSFunc((function(){return Pointer_stringify})).returnValue;funcstr+="ret = "+strgfy+"(ret);"}if(!numericArgs){ensureJSsource();funcstr+=JSsource["stackRestore"].body.replace("()","(stack)")+";"}funcstr+="return ret})";return eval(funcstr)}}))();Module["ccall"]=ccall;Module["cwrap"]=cwrap;function setValue(ptr,value,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";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?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}Module["setValue"]=setValue;function getValue(ptr,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";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;var ALLOC_STACK=1;var ALLOC_STATIC=2;var ALLOC_DYNAMIC=3;var ALLOC_NONE=4;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;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:Runtime.staticAlloc,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";setValue(ret+i,curr,type);if(previousType!==type){typeSize=Runtime.getNativeTypeSize(type);previousType=type}i+=typeSize}return ret}Module["allocate"]=allocate;function getMemory(size){if(!staticSealed)return Runtime.staticAlloc(size);if(typeof _sbrk!=="undefined"&&!_sbrk.called||!runtimeInitialized)return Runtime.dynamicAlloc(size);return _malloc(size)}Module["getMemory"]=getMemory;function Pointer_stringify(ptr,length){if(length===0||!ptr)return"";var hasUtf=0;var t;var i=0;while(1){t=HEAPU8[ptr+i>>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module["UTF8ToString"](ptr)}Module["Pointer_stringify"]=Pointer_stringify;function AsciiToString(ptr){var str="";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module["AsciiToString"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module["stringToAscii"]=stringToAscii;function UTF8ArrayToString(u8Array,idx){var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}Module["UTF8ArrayToString"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module["UTF8ToString"]=UTF8ToString;function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}Module["stringToUTF8Array"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}Module["stringToUTF8"]=stringToUTF8;function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}Module["lengthBytesUTF8"]=lengthBytesUTF8;function demangle(func){var hasLibcxxabi=!!Module["___cxa_demangle"];if(hasLibcxxabi){try{var buf=_malloc(func.length);writeStringToMemory(func.substr(1),buf);var status=_malloc(4);var ret=Module["___cxa_demangle"](buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){return func}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}}Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");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 jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module["stackTrace"]=stackTrace;var PAGE_SIZE=4096;function alignMemoryPage(x){if(x%4096>0){x+=4096-x%4096}return x}var HEAP;var buffer;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE=0,STATICTOP=0,staticSealed=false;var STACK_BASE=0,STACKTOP=0,STACK_MAX=0;var DYNAMIC_BASE=0,DYNAMICTOP=0;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;var totalMemory=64*1024;while(totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK){if(totalMemory<16*1024*1024){totalMemory*=2}else{totalMemory+=16*1024*1024}}if(totalMemory!==TOTAL_MEMORY){TOTAL_MEMORY=totalMemory}if(Module["buffer"]){buffer=Module["buffer"]}else{buffer=new ArrayBuffer(TOTAL_MEMORY)}updateGlobalBufferViews();HEAP32[0]=255;if(HEAPU8[0]!==255||HEAPU8[3]!==0)throw"Typed arrays 2 must be run on a little-endian system";Module["HEAP"]=HEAP;Module["buffer"]=buffer;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__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}Module["addOnPreRun"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}Module["intArrayToString"]=intArrayToString;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++>>0]=array[i]}}Module["writeArrayToMemory"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}Module["writeAsciiToMemory"]=writeAsciiToMemory;if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];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;var Math_clz32=Math.clz32;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}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()}}}Module["removeRunDependency"]=removeRunDependency;Module["preloadedImages"]={};Module["preloadedAudios"]={};var ASM_CONSTS=[];STATIC_BASE=8;STATICTOP=STATIC_BASE+75136;__ATINIT__.push();allocate([90,0,0,0,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,1,0,0,124,2,0,0,68,11,0,0,80,15,0,0,116,15,0,0,188,15,0,0,100,16,0,0,160,16,0,0,220,16,0,0,216,19,0,0,24,20,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,8,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,89,111,63,0,0,0,45,0,167,144,26,0,71,9,14,0,1,32,7,0,139,147,3,0,56,202,1,0,42,229,0,0,151,114,0,0,76,57,0,0,166,28,0,0,83,14,0,0,41,7,0,0,149,3,0,0,202,1,0,0,229,0,0,0,115,0,0,0,57,0,0,0,29,0,0,0,14,0,0,0,7,0,0,0,4,0,0,0,2,0,0,0,1,0,0,0,1,5,0,0,84,0,0,0,249,40,0,0,0,0,1,0,0,0,2,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,56,3,0,0,48,1,0,0,160,0,0,0,10,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,11,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,12,0,0,0,2,0,0,0,3,0,0,0,213,43,0,0,2,41,0,0,11,41,0,0,164,1,0,0,49,41,0,0,184,1,0,0,65,41,0,0,188,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,4,0,0,0,88,240,188,5,228,2,0,0,241,59,35,40,196,135,0,0,234,161,68,163,225,1,0,0,88,240,188,5,228,2,0,0,241,59,35,40,196,135,0,0,235,161,68,163,225,1,0,0,212,234,229,17,80,3,0,0,59,202,48,90,99,144,0,0,2,38,164,19,126,0,0,0,252,255,251,255,8,0,0,0,184,72,158,156,162,190,0,0,18,1,2,112,8,0,0,0,252,255,251,255,8,0,0,0,131,4,90,10,57,124,1,0,18,1,2,112,8,0,0,0,0,0,0,0,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,0,1,0,0,0,64,0,0,0,1,0,0,0,1,0,0,0,68,0,0,0,0,0,0,0,0,0,0,0,9,0,3,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,1,5,0,0,44,0,0,0,209,43,0,0,0,0,1,0,0,0,2,0,0,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,56,3,0,0,48,0,0,0,172,0,0,0,13,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,11,0,0,0,1,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,6,0,0,0,7,0,0,0,213,43,0,0,230,43,0,0,234,43,0,0,28,3,0,0,92,44,0,0,44,3,0,0,113,44,0,0,48,3,0,0,162,44,0,0,56,3,0,0,250,43,0,0,140,3,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,10,0,0,0,20,0,0,0,9,0,0,0,8,0,0,0,11,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,10,0,0,0,9,0,0,0,13,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,15,0,0,0,5,0,0,0,4,0,0,0,0,16,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,16,0,0,4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,17,0,0,8,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,2,16,0,0,12,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,16,0,0,16,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,16,0,0,20,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,1,17,0,0,24,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,17,0,0,28,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,17,0,0,32,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,17,0,0,36,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,17,0,0,40,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,6,17,0,0,44,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,7,17,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,13,16,0,0,76,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,5,16,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,17,0,0,96,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,15,16,0,0,100,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,16,16,0,0,104,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,17,16,0,0,108,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,18,16,0,0,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,20,17,0,0,120,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,21,17,0,0,124,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,30,17,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,31,17,0,0,140,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,17,0,0,144,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,33,17,0,0,148,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,34,17,0,0,152,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,35,17,0,0,156,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,36,17,0,0,160,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,37,17,0,0,164,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,38,17,0,0,168,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,6,32,0,0,4,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,6,0,0,0,7,32,0,0,60,0,0,0,4,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,6,0,0,0,8,32,0,0,100,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,2,0,0,0,6,0,0,0,9,32,0,0,156,0,0,0,4,0,0,0,0,0,0,0,10,0,0,0,3,0,0,0,3,0,0,0,9,33,0,0,196,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,33,0,0,200,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,33,0,0,204,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,32,0,0,208,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,32,0,0,212,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,12,33,0,0,220,0,0,0,4,0,0,0,0,0,0,0,13,0,0,0,216,0,0,0,6,0,0,0,13,33,0,0,16,1,0,0,4,0,0,0,0,0,0,0,13,0,0,0,217,0,0,0,5,0,0,0,14,33,0,0,68,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,15,33,0,0,72,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,16,33,0,0,76,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,17,33,0,0,80,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,18,33,0,0,84,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,19,33,0,0,88,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,19,32,0,0,92,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,20,32,0,0,96,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,21,32,0,0,100,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5,0,202,154,59,24,0,0,0,16,0,0,0,0,0,0,0,17,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,19,0,0,0,20,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,21,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,23,0,0,0,24,0,0,0,56,0,0,0,25,0,0,0,0,0,0,0,26,0,0,0,27,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,28,0,0,0,29,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,30,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,32,0,0,0,33,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,34,0,0,0,35,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,36,0,0,0,37,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,38,0,0,0,39,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,40,0,0,0,41,0,0,0,44,0,0,0,42,0,0,0,0,0,0,0,43,0,0,0,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,45,0,0,0,46,0,0,0,44,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,50,0,0,0,51,0,0,0,40,0,0,0,52,0,0,0,10,0,0,0,53,0,0,0,54,0,0,0,7,0,0,0,6,0,0,0,55,0,0,0,7,0,0,0,8,0,0,0,14,0,0,0,56,0,0,0,57,0,0,0,0,0,0,0,20,0,0,0,76,44,0,0,0,0,1,0,0,0,2,0,104,11,0,0,0,0,0,0,0,0,0,0,58,0,0,0,8,0,0,0,15,0,0,0,16,0,0,0,11,0,0,0,58,0,0,0,17,0,0,0,9,0,0,0,9,0,0,0,59,0,0,0,10,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,12,0,0,0,65,0,0,0,13,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,10,0,0,0,70,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,14,0,0,0,12,0,0,0,15,0,0,0,13,0,0,0,71,0,0,0,14,0,0,0,72,0,0,0,15,0,0,0,73,0,0,0,16,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,112,9,0,0,164,9,0,0,216,9,0,0,12,10,0,0,64,10,0,0,116,10,0,0,168,10,0,0,220,10,0,0,16,11,0,0,0,0,0,0,2,0,0,0,255,255,255,255,99,105,110,117,0,0,0,0,255,255,255,255,99,105,110,117,1,0,0,0,0,0,0,0,110,109,114,97,3,0,0,0,0,0,0,0,98,109,121,115,3,0,0,0,10,0,0,0,99,105,110,117,3,0,0,0,1,0,0,0,99,105,110,117,3,0,0,0,2,0,0,0,115,105,106,115,3,0,0,0,3,0,0,0,32,32,98,103,3,0,0,0,4,0,0,0,53,103,105,98,3,0,0,0,5,0,0,0,115,110,97,119,3,0,0,0,6,0,0,0,97,104,111,106,81,44,0,0,228,12,0,0,92,44,0,0,240,12,0,0,113,44,0,0,244,12,0,0,124,44,0,0,252,12,0,0,162,44,0,0,4,13,0,0,0,0,0,0,0,0,0,0,17,0,0,0,74,0,0,0,19,0,0,0,15,0,0,0,11,0,0,0,75,0,0,0,18,0,0,0,19,0,0,0,76,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,77,0,0,0,78,0,0,0,1,0,0,0,72,13,0,0,64,3,0,0,79,0,0,0,1,0,0,0,0,0,0,0,80,0,0,0,20,0,0,0,32,0,0,0,127,0,0,0,160,0,0,0,255,0,0,0,0,1,0,0,127,1,0,0,128,1,0,0,79,2,0,0,80,2,0,0,175,2,0,0,176,2,0,0,255,2,0,0,0,3,0,0,111,3,0,0,112,3,0,0,255,3,0,0,0,4,0,0,255,4,0,0,0,5,0,0,47,5,0,0,0,29,0,0,127,29,0,0,128,29,0,0,191,29,0,0,192,29,0,0,255,29,0,0,0,30,0,0,255,30,0,0,0,31,0,0,255,31,0,0,0,32,0,0,111,32,0,0,112,32,0,0,159,32,0,0,160,32,0,0,207,32,0,0,80,33,0,0,143,33,0,0,96,36,0,0,255,36,0,0,96,44,0,0,127,44,0,0,224,45,0,0,255,45,0,0,64,166,0,0,159,166,0,0,32,167,0,0,255,167,0,0,0,251,0,0,6,251,0,0,0,212,1,0,255,215,1,0,0,0,0,0,0,0,0,0,99,105,110,117,110,109,114,97,66,79,68,65,49,116,97,108,0,0,0,0,2,0,0,0,84,14,0,0,64,3,0,0,81,0,0,0,2,0,0,0,0,0,0,0,82,0,0,0,21,0,0,0,128,46,0,0,255,46,0,0,0,47,0,0,223,47,0,0,0,48,0,0,63,48,0,0,64,48,0,0,159,48,0,0,160,48,0,0,255,48,0,0,0,49,0,0,47,49,0,0,48,49,0,0,143,49,0,0,160,49,0,0,191,49,0,0,192,49,0,0,239,49,0,0,240,49,0,0,255,49,0,0,0,50,0,0,255,50,0,0,0,51,0,0,255,51,0,0,0,52,0,0,191,77,0,0,192,77,0,0,255,77,0,0,0,78,0,0,255,159,0,0,0,249,0,0,255,250,0,0,48,254,0,0,79,254,0,0,0,255,0,0,239,255,0,0,0,0,2,0,223,166,2,0,0,248,2,0,31,250,2,0,0,0,0,0,0,0,0,0,3,0,0,0,28,15,0,0,64,3,0,0,83,0,0,0,3,0,0,0,0,0,0,0,84,0,0,0,22,0,0,0,0,9,0,0,255,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,8,13,0,0,40,13,0,0,52,14,0,0,252,14,0,0,0,0,0,0,4,0,0,0,204,0,0,0,249,44,0,0,0,0,1,0,0,0,2,0,44,15,0,0,16,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,176,0,0,0,4,45,0,0,0,0,1,0,0,0,2,0,152,15,0,0,17,0,0,0,18,0,0,0,0,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,108,116,117,111,85,0,0,0,1,0,0,0,2,0,0,0,86,0,0,0,19,0,0,0,2,0,0,0,72,0,0,0,13,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,12,0,0,0,13,0,0,0,3,0,0,0,23,0,0,0,164,15,0,0,2,0,0,0,72,0,0,0,21,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,12,0,0,0,13,0,0,0,3,0,0,0,23,0,0,0,164,15,0,0,108,116,117,111,87,0,0,0,4,0,0,0,0,0,0,0,88,0,0,0,20,0,0,0,89,0,0,0,90,0,0,0,24,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,72,0,0,0,29,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,15,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,2,0,0,0,72,0,0,0,36,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,17,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,2,0,0,0,72,0,0,0,47,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,18,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,26,0,0,0,21,0,0,0,19,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,23,0,0,0,91,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,4,0,0,0,2,0,0,0,22,0,0,0,23,0,0,0,1,0,0,0,26,0,0,0,92,0,0,0,3,0,0,0,28,0,0,0,24,0,0,0,29,0,0,0,27,0,0,0,1,0,0,0,28,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,5,0,0,0,4,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,4,0,0,0,2,0,0,0,2,0,0,0,6,0,0,0,4,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,6,0,0,0,2,0,0,0,6,0,0,0,2,0,0,0,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,21,0,0,0,29,0,0,0,25,0,0,0,204,45,0,0,213,45,0,0,223,45,0,0,232,45,0,0,234,45,0,0,249,45,0,0,8,46,0,0,29,46,0,0,31,46,0,0,34,46,0,0,37,46,0,0,47,46,0,0,57,46,0,0,70,46,0,0,81,46,0,0,91,46,0,0,106,46,0,0,114,46,0,0,129,46,0,0,143,46,0,0,156,46,0,0,171,46,0,0,183,46,0,0,196,46,0,0,209,46,0,0,217,46,0,0,228,46,0,0,237,46,0,0,246,46,0,0,255,46,0,0,10,47,0,0,20,47,0,0,33,47,0,0,42,47,0,0,54,47,0,0,57,47,0,0,61,47,0,0,65,47,0,0,69,47,0,0,71,47,0,0,85,47,0,0,97,47,0,0,99,47,0,0,106,47,0,0,110,47,0,0,120,47,0,0,137,47,0,0,153,47,0,0,187,45,0,0,168,47,0,0,182,47,0,0,197,47,0,0,213,47,0,0,229,47,0,0,244,47,0,0,250,47,0,0,0,48,0,0,10,48,0,0,28,48,0,0,47,48,0,0,50,48,0,0,58,48,0,0,66,48,0,0,68,48,0,0,71,48,0,0,75,48,0,0,79,48,0,0,82,48,0,0,86,48,0,0,90,48,0,0,93,48,0,0,96,48,0,0,103,48,0,0,116,48,0,0,32,0,0,0,26,0,0,0,30,0,0,0,93,0,0,0,94,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,27,0,0,0,30,0,0,0,93,0,0,0,94,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,0,0,0,28,0,0,0,31,0,0,0,95,0,0,0,96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,29,0,0,0,32,0,0,0,97,0,0,0,98,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,19,0,0,80,19,0,0,120,19,0,0,160,19,0,0,0,0,0,0,20,0,0,0,129,48,0,0,0,0,2,0,0,0,2,0,252,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,0,0,40,17,0,0,92,17,0,0,124,17,0,0,6,0,0,0,200,19,0,0,244,17,0,0,0,0,0,0,20,0,0,0,135,48,0,0,0,0,1,0,0,0,2,0,60,20,0,0,0,0,0,0,0,0,0,0,99,0,0,0,30,0,0,0,2,0,0,0,100,0,0,0,101,0,0,0,31,0,0,0,32,0,0,0,120,25,0,0,214,37,0,0,0,0,0,0,6,0,0,0,12,0,0,0,21,0,0,0,28,0,0,0,35,0,0,0,38,0,0,0,53,0,0,0,59,0,0,0,72,0,0,0,148,3,0,0,169,3,0,0,21,34,0,0,173,0,0,0,201,2,0,0,188,3,0,0,25,34,0,0,160,0,0,0,26,2,0,0,27,2,0,0,91,21,1,0,60,20,0,0,0,0,0,0,0,0,0,0,192,20,0,0,5,0,0,0,0,0,0,0,0,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,32,0,0,0,120,33,1,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,20,0,0,4,0,16,0,17,4,0,0,12,2,4,0,12,2,6,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,0,0,0,0,4,0,20,0,16,4,0,0,16,4,4,0,16,4,8,0,16,4,12,0,12,2,16,0,12,2,18,0,0,0,0,0,4,0,20,0,17,4,0,0,12,2,4,0,12,2,6,0,16,4,8,0,12,2,12,0,12,2,14,0,16,4,16,0,0,0,0,0,4,0,4,0,8,1,16,0,8,1,17,0,8,1,18,0,8,1,19,0,0,0,0,0,0,0,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,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,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,94,0,95,0,96,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,111,0,112,0,113,0,114,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,123,0,124,0,125,0,126,0,127,0,128,0,129,0,130,0,131,0,132,0,133,0,134,0,135,0,136,0,137,0,138,0,139,0,140,0,141,0,142,0,143,0,144,0,145,0,146,0,147,0,148,0,149,0,150,0,151,0,152,0,153,0,154,0,155,0,156,0,157,0,158,0,159,0,160,0,161,0,162,0,163,0,164,0,165,0,166,0,167,0,168,0,169,0,170,0,171,0,172,0,173,0,174,0,175,0,176,0,177,0,178,0,179,0,180,0,181,0,182,0,183,0,184,0,185,0,186,0,187,0,188,0,189,0,190,0,191,0,192,0,193,0,194,0,195,0,196,0,197,0,198,0,199,0,200,0,201,0,202,0,203,0,204,0,205,0,206,0,207,0,208,0,209,0,210,0,211,0,212,0,213,0,214,0,215,0,216,0,217,0,218,0,219,0,220,0,221,0,222,0,223,0,224,0,225,0,226,0,227,0,228,0,0,0,1,0,229,0,230,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,253,0,254,0,255,0,0,1,1,1,2,1,3,1,4,1,5,1,6,1,7,1,8,1,9,1,10,1,109,0,110,0,11,1,12,1,13,1,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,1,48,1,49,1,50,1,51,1,52,1,53,1,54,1,55,1,56,1,57,1,58,1,59,1,60,1,61,1,62,1,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,0,0,1,0,231,0,232,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,253,0,254,0,255,0,0,1,1,1,2,1,3,1,4,1,5,1,6,1,7,1,8,1,9,1,10,1,109,0,110,0,11,1,12,1,13,1,14,1,16,1,44,1,45,1,46,1,49,1,58,1,59,1,158,0,155,0,163,0,64,1,65,1,66,1,67,1,68,1,69,1,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,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,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,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,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,94,0,95,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,0,0,111,0,112,0,113,0,114,0,0,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,0,0,123,0,0,0,124,0,125,0,126,0,127,0,128,0,129,0,130,0,131,0,0,0,132,0,133,0,0,0,134,0,135,0,136,0,137,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,138,0,0,0,139,0,0,0,0,0,0,0,0,0,140,0,141,0,142,0,143,0,0,0,0,0,0,0,0,0,0,0,144,0,0,0,0,0,0,0,145,0,0,0,0,0,146,0,147,0,148,0,149,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,229,0,230,0,0,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,0,0,253,0,254,0,255,0,0,1,1,1,0,0,0,0,0,0,2,1,0,0,0,0,3,1,4,1,5,1,6,1,0,0,0,0,7,1,8,1,9,1,0,0,10,1,109,0,110,0,11,1,12,1,13,1,0,0,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,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,48,1,49,1,50,1,0,0,0,0,51,1,52,1,53,1,54,1,55,1,0,0,56,1,0,0,0,0,56,1,0,0,0,0,58,1,59,1,0,0,0,0,60,1,61,1,62,1,0,0,0,0,0,0,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,0,0,0,0,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,4,0,8,0,17,4,4,0,17,4,8,0,0,0,0,0,4,0,54,0,16,4,0,0,16,4,4,0,17,4,8,0,17,4,12,0,12,2,16,0,12,2,18,0,17,4,20,0,17,4,24,0,17,4,28,0,17,4,32,0,13,2,36,0,13,2,38,0,13,2,40,0,13,2,42,0,12,2,44,0,12,2,46,0,13,2,48,0,13,2,50,0,13,2,52,0,0,0,0,0,4,0,36,0,16,4,0,0,13,2,4,0,13,2,6,0,13,2,8,0,12,2,10,0,13,2,12,0,13,2,14,0,13,2,16,0,13,2,18,0,13,2,20,0,13,2,22,0,13,2,24,0,13,2,26,0,13,2,28,0,13,2,30,0,13,2,32,0,12,2,34,0,0,0,0,0,4,0,6,0,17,4,0,0,12,2,4,0,0,0,0,0,4,0,26,0,12,2,6,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,12,2,16,0,12,2,18,0,12,2,20,0,12,2,22,0,12,2,24,0,12,2,26,0,12,2,28,0,12,2,30,0,0,0,0,0,4,0,78,0,12,2,0,0,13,2,2,0,12,2,4,0,12,2,6,0,13,2,8,0,13,2,10,0,13,2,12,0,13,2,14,0,13,2,16,0,13,2,18,0,13,2,20,0,13,2,22,0,13,2,24,0,13,2,26,0,13,2,28,0,13,2,30,0,8,1,32,0,8,1,33,0,8,1,34,0,8,1,35,0,8,1,36,0,8,1,37,0,8,1,38,0,8,1,39,0,8,1,40,0,8,1,41,0,16,4,44,0,16,4,48,0,16,4,52,0,16,4,56,0,8,1,60,0,8,1,61,0,8,1,62,0,8,1,63,0,12,2,64,0,12,2,66,0,12,2,68,0,13,2,70,0,13,2,72,0,13,2,74,0,12,2,76,0,12,2,78,0,0,0,0,0,4,0,8,0,16,4,80,0,16,4,84,0,0,0,0,0,4,0,10,0,13,2,88,0,13,2,90,0,12,2,92,0,12,2,94,0,12,2,96,0,0,0,0,0,4,0,32,0,16,4,0,0,16,4,4,0,13,2,8,0,13,2,10,0,16,4,12,0,16,4,16,0,16,4,20,0,16,4,24,0,16,4,28,0,0,0,0,0,4,0,6,0,12,2,0,0,12,4,4,0,12,4,8,0,0,0,0,0,12,2,0,0,12,2,2,0,12,2,4,0,12,2,6,0,12,2,8,0,12,4,12,0,0,0,0,0,4,0,54,0,16,4,0,0,16,4,4,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,12,2,16,0,24,16,20,0,24,8,36,0,24,6,44,0,9,1,50,0,9,1,51,0,8,1,52,0,8,1,53,0,0,0,0,0,4,0,5,0,8,1,0,0,8,1,1,0,9,1,2,0,9,1,3,0,8,1,4,0,0,0,0,0,4,0,8,0,8,1,0,0,8,1,1,0,9,1,2,0,9,1,3,0,8,1,4,0,9,1,5,0,9,1,6,0,8,1,7,0,0,0,0,0,4,0,8,0,12,2,4,0,12,2,6,0,12,2,8,0,12,2,10,0,0,0,0,0,4,0,16,0,16,4,0,0,16,4,4,0,16,4,8,0,16,4,12,0,0,0,0,0,16,4,8,0,17,0,0,0,16,4,0,0,16,4,12,0,0,0,0,0,9,1,0,0,9,1,1,0,8,1,2,0,9,1,3,0,9,1,4,0,9,1,5,0,9,1,6,0,9,1,7,0,9,1,8,0,9,1,9,0,9,1,10,0,9,1,11,0,0,0,0,0,12,2,40,0,12,2,42,0,8,1,44,0,8,1,45,0,8,1,46,0,9,1,47,0,0,0,0,0,253,0,0,0,6,0,5,1,11,1,18,1,27,1,38,1,45,1,53,1,246,2,74,1,84,1,95,1,104,1,109,1,115,1,122,1,129,1,135,1,140,1,144,1,148,1,154,1,159,1,164,1,168,1,174,1,180,1,185,1,191,1,201,1,206,1,212,1,220,1,229,1,232,1,234,1,236,1,238,1,240,1,242,1,244,1,246,1,248,1,250,1,252,1,254,1,0,2,2,2,4,2,6,2,8,2,10,2,12,2,14,2,16,2,18,2,20,2,22,2,24,2,26,2,28,2,40,2,50,2,63,2,75,2,211,3,96,2,98,2,100,2,102,2,104,2,106,2,108,2,110,2,112,2,114,2,116,2,118,2,120,2,122,2,124,2,126,2,128,2,130,2,132,2,134,2,136,2,138,2,140,2,142,2,144,2,146,2,148,2,158,2,162,2,173,2,95,5,112,5,125,5,134,5,206,5,232,5,26,6,67,6,96,6,74,6,86,6,109,6,103,6,116,6,125,6,154,6,132,6,144,6,161,6,190,6,168,6,180,6,197,6,204,6,233,6,211,6,223,6,240,6,254,6,27,7,5,7,17,7,71,3,239,4,195,2,200,2,229,2,113,3,103,3,136,4,22,5,66,5,173,4,217,3,7,4,23,0,62,4,84,4,32,0,195,4,41,0,51,0,218,2,170,4,64,0,76,0,86,0,94,0,97,0,65,4,94,4,106,0,107,4,126,4,198,3,184,2,159,4,112,0,222,2,120,0,132,0,15,3,162,3,177,3,138,0,105,5,118,5,249,5,91,4,133,4,64,3,55,4,2,3,148,3,86,2,63,1,222,4,155,0,41,7,50,6,209,2,237,2,29,3,43,3,58,3,61,3,78,3,88,3,120,3,135,3,186,3,83,5,141,5,76,5,153,5,163,5,170,5,177,5,189,5,199,5,213,5,220,5,163,0,242,5,7,6,14,6,36,6,110,4,223,3,234,3,240,3,247,3,253,3,16,4,21,4,29,4,42,4,49,4,77,4,119,4,0,6,247,6,60,6,51,7,229,4,183,4,39,5,43,6,34,7,205,4,246,4,33,5,43,5,147,4,10,5,52,5,187,4,211,4,252,4,169,0,175,0,182,0,189,0,200,0,209,0,218,0,225,0,232,0,239,0,246,0,253,0,5,1,11,1,18,1,27,1,38,1,45,1,53,1,63,1,74,1,84,1,95,1,104,1,109,1,115,1,122,1,129,1,135,1,140,1,144,1,148,1,154,1,159,1,164,1,168,1,174,1,180,1,185,1,191,1,201,1,206,1,212,1,220,1,229,1,232,1,234,1,236,1,238,1,240,1,242,1,244,1,246,1,248,1,250,1,252,1,254,1,0,2,2,2,4,2,6,2,8,2,10,2,12,2,14,2,16,2,18,2,20,2,22,2,24,2,26,2,28,2,40,2,50,2,63,2,75,2,86,2,96,2,98,2,100,2,102,2,104,2,106,2,108,2,110,2,112,2,114,2,116,2,118,2,120,2,122,2,124,2,126,2,128,2,130,2,132,2,134,2,136,2,138,2,140,2,142,2,144,2,146,2,148,2,158,2,162,2,173,2,184,2,195,2,200,2,209,2,218,2,222,2,229,2,237,2,246,2,2,3,15,3,29,3,43,3,58,3,61,3,64,3,71,3,78,3,88,3,103,3,113,3,120,3,135,3,148,3,162,3,177,3,186,3,198,3,211,3,217,3,223,3,234,3,240,3,247,3,253,3,7,4,16,4,21,4,29,4,42,4,49,4,55,4,62,4,65,4,77,4,84,4,91,4,94,4,107,4,110,4,119,4,126,4,133,4,136,4,147,4,159,4,170,4,173,4,183,4,187,4,195,4,205,4,211,4,222,4,229,4,239,4,246,4,252,4,10,5,22,5,33,5,39,5,43,5,52,5,66,5,76,5,83,5,95,5,105,5,112,5,118,5,125,5,134,5,141,5,153,5,163,5,170,5,177,5,189,5,199,5,206,5,213,5,220,5,232,5,242,5,249,5,0,6,7,6,14,6,26,6,36,6,43,6,50,6,60,6,67,6,74,6,86,6,96,6,103,6,109,6,116,6,125,6,132,6,144,6,154,6,161,6,168,6,180,6,190,6,197,6,204,6,211,6,223,6,233,6,240,6,247,6,254,6,5,7,17,7,27,7,34,7,41,7,51,7,58,7,70,7,88,7,103,7,118,7,133,7,144,7,162,7,181,7,196,7,211,7,224,7,236,7,248,7,6,8,19,8,32,8,44,8,58,8,72,8,85,8,99,8,119,8,134,8,148,8,158,8,168,8,181,8,191,8,201,8,211,8,221,8,231,8,241,8,251,8,5,9,15,9,25,9,28,9,32,9,36,9,54,9,73,9,89,9,104,9,115,9,122,9,129,9,136,9,143,9,150,9,157,9,164,9,171,9,178,9,185,9,192,9,199,9,206,9,213,9,220,9,227,9,234,9,241,9,248,9,255,9,6,10,13,10,20,10,27,10,34,10,41,10,55,10,65,10,72,10,83,10,99,10,112,10,124,10,136,10,148,10,162,10,173,10,184,10,199,10,211,10,222,10,237,10,249,10,3,11,16,11,34,11,44,11,57,11,69,11,82,11,91,11,101,11,114,11,127,11,140,11,152,11,166,11,180,11,193,11,206,11,218,11,230,11,244,11,1,12,14,12,26,12,40,12,54,12,67,12,80,12,95,12,110,12,124,12,136,12,148,12,165,12,177,12,192,12,203,12,211,12,225,12,237,12,249,12,10,13,25,13,37,13,49,13,66,13,81,13,90,13,102,13,114,13,126,13,143,13,155,13,170,13,178,13,190,13,202,13,214,13,231,13,246,13,2,14,13,14,28,14,36,14,44,14,52,14,60,14,66,14,71,14,76,14,82,14,89,14,97,14,103,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,229,0,230,0,0,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,0,0,253,0,254,0,255,0,0,1,1,1,0,0,0,0,0,0,2,1,0,0,0,0,3,1,4,1,5,1,6,1,0,0,0,0,7,1,8,1,9,1,0,0,10,1,109,0,110,0,11,1,12,1,13,1,0,0,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,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,48,1,49,1,50,1,0,0,0,0,51,1,52,1,53,1,54,1,55,1,0,0,56,1,0,0,0,0,57,1,0,0,0,0,58,1,59,1,0,0,0,0,60,1,61,1,62,1,0,0,0,0,0,0,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,0,0,0,0,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,108,111,97,100,95,102,111,110,116,40,37,115,44,37,115,41,58,32,116,111,111,32,109,97,110,121,32,102,111,110,116,115,33,10,0,78,101,119,95,70,97,99,101,40,37,115,44,37,115,41],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([32,69,114,114,111,114,33,32,37,100,10,0,83,101,116,95,67,104,97,114,95,83,105,122,101,32,69,114,114,111,114,33,32,37,100,10,0,76,111,97,100,95,67,104,97,114,32,69,114,114,111,114,33,32,37,100,10,0,73,110,105,116,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,65,46,111,116,102,0,78,101,119,95,70,97,99,101,40,79,67,82,45,65,41,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,66,46,111,116,102,0,78,101,119,95,70,97,99,101,40,79,67,82,45,66,41,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,45,65,0,79,67,82,45,66,0,99,105,100,0,116,121,112,101,49,0,79,84,84,79,0,46,95,0,47,46,46,110,97,109,101,100,102,111,114,107,47,114,115,114,99,0,47,114,115,114,99,0,114,101,115,111,117,114,99,101,46,102,114,107,47,0,46,114,101,115,111,117,114,99,101,47,0,37,0,46,65,112,112,108,101,68,111,117,98,108,101,47,0,116,114,117,101,116,121,112,101,0,84,114,117,101,84,121,112,101,0,109,117,108,116,105,45,109,97,115,116,101,114,115,0,87,105,100,116,104,0,79,112,116,105,99,97,108,83,105,122,101,0,83,108,97,110,116,0,116,114,117,101,116,121,112,101,45,101,110,103,105,110,101,0,116,116,45,103,108,121,102,0,68,70,75,97,105,83,104,111,45,83,66,0,0,0,0,0,0,68,70,75,97,105,83,104,117,0,0,0,0,0,0,0,0,0,68,70,75,97,105,45,83,66,0,0,0,0,0,0,0,0,0,72,117,97,84,105,97,110,75,97,105,84,105,63,0,0,0,0,72,117,97,84,105,97,110,83,111,110,103,84,105,63,0,0,0,77,105,110,103,76,105,85,0,0,0,0,0,0,0,0,0,0,80,77,105,110,103,76,105,85,0,0,0,0,0,0,0,0,0,77,105,110,103,76,105,52,51,0,0,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,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,255,254,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,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,2,3,4,5,6,7,8,9,3,5,7,9,11,13,15,17,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,32,32,32,32,32,32,2,2,0,80,16,16,16,16,16,16,16,16,0,0,16,0,16,16,16,16,18,16,0,34,1,17,16,32,0,16,32,16,16,0,16,16,0,0,0,0,16,16,16,16,16,0,32,32,0,0,32,32,0,0,32,17,32,17,17,17,32,33,33,1,1,0,0,16,33,33,33,33,33,33,17,17,16,0,33,33,17,16,16,16,33,33,33,33,17,17,17,17,17,17,17,17,17,17,17,17,32,16,16,16,16,16,16,16,32,32,0,0,0,0,16,16,0,32,32,0,0,16,32,32,17,16,51,33,33,16,32,0,0,0,0,0,0,0,0,0,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,1,2,3,4,5,6,7,8,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,99,102,102,0,120,102,56,54,45,100,114,105,118,101,114,45,110,97,109,101,0,67,70,70,0,112,111,115,116,115,99,114,105,112,116,45,105,110,102,111,0,67,73,68,0,82,101,103,117,108,97,114,0,66,111,108,100,0,66,108,97,99,107,0,0,194,193,193,32,32,32,32,32,32,32,32,32,32,13,7,9,11,128,130,130,130,130,128,128,0,1,2,2,2,1,0,2,1,1,1,2,1,2,1,2,1,4,3,2,2,1,2,4,1,1,0,2,0,0,0,5,4,2,115,102,110,116,0,115,102,110,116,45,116,97,98,108,101,0,112,111,115,116,115,99,114,105,112,116,45,102,111,110,116,45,110,97,109,101,0,103,108,121,112,104,45,100,105,99,116,0,98,100,102,0,67,72,65,82,83,69,84,95,82,69,71,73,83,84,82,89,0,67,72,65,82,83,69,84,95,69,78,67,79,68,73,78,71,0,116,116,45,99,109,97,112,115,0,84,72,69,90,79,67,81,83,0,0,0,0,0,72,69,90,76,79,67,85,83,0,0,0,0,0,102,105,106,107,100,98,104,0,0,0,0,0,0,120,122,114,111,101,115,99,0,0,0,0,0,0,120,122,114,111,101,115,99,0,0,0,0,0,0,112,113,103,106,121,0,0,0,0,0,0,0,0,97,117,116,111,102,105,116,116,101,114,0,112,115,104,105,110,116,101,114,0,114,97,115,116,101,114,49,0,114,97,115,116,101,114,53,0,115,109,111,111,116,104,0,115,109,111,111,116,104,45,108,99,100,0,115,109,111,111,116,104,45,108,99,100,118,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,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,255,255,255,255,255,255,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,255,255,255,255,255,83,116,97,114,116,70,111,110,116,77,101,116,114,105,99,115,0,65,115,99,101,110,100,101,114,0,65,120,105,115,76,97,98,101,108,0,65,120,105,115,84,121,112,101,0,66,0,66,108,101,110,100,65,120,105,115,84,121,112,101,115,0,66,108,101,110,100,68,101,115,105,103,110,77,97,112,0,66,108,101,110,100,68,101,115,105,103,110,80,111,115,105,116,105,111,110,115,0,67,0,67,67,0,67,72,0,67,97,112,72,101,105,103,104,116,0,67,104,97,114,87,105,100,116,104,0,67,104,97,114,97,99,116,101,114,83,101,116,0,67,104,97,114,97,99,116,101,114,115,0,68,101,115,99,101,110,100,101,114,0,69,110,99,111,100,105,110,103,83,99,104,101,109,101,0,69,110,100,65,120,105,115,0,69,110,100,67,104,97,114,77,101,116,114,105,99,115,0,69,110,100,67,111,109,112,111,115,105,116,101,115,0,69,110,100,68,105,114,101,99,116,105,111,110,0,69,110,100,70,111,110,116,77,101,116,114,105,99,115,0,69,110,100,75,101,114,110,68,97,116,97,0,69,110,100,75,101,114,110,80,97,105,114,115,0,69,110,100,84,114,97,99,107,75,101,114,110,0,69,115,99,67,104,97,114,0,70,97,109,105,108,121,78,97,109,101,0,70,111,110,116,66,66,111,120,0,70,111,110,116,78,97,109,101,0,70,117,108,108,78,97,109,101,0,73,115,66,97,115,101,70,111,110,116,0,73,115,67,73,68,70,111,110,116,0,73,115,70,105,120,101,100,80,105,116,99,104,0,73,115,70,105,120,101,100,86,0,73,116,97,108,105,99,65,110,103,108,101,0,75,80,0,75,80,72,0,75,80,88,0,75,80,89,0,76,0,77,97,112,112,105,110,103,83,99,104,101,109,101,0,77,101,116,114,105,99,115,83,101,116,115,0,78,0,78,111,116,105,99,101,0,80,67,67,0,83,116,97,114,116,65,120,105,115,0,83,116,97,114,116,67,104,97,114,77,101,116,114,105,99,115,0,83,116,97,114,116,67,111,109,112,111,115,105,116,101,115,0,83,116,97,114,116,68,105,114,101,99,116,105,111,110,0,83,116,97,114,116,75,101,114,110,68,97,116,97,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,48,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,49,0,83,116,97,114,116,84,114,97,99,107,75,101,114,110,0,83,116,100,72,87,0,83,116,100,86,87,0,84,114,97,99,107,75,101,114,110,0,85,110,100,101,114,108,105,110,101,80,111,115,105,116,105,111,110,0,85,110,100,101,114,108,105,110,101,84,104,105,99,107,110,101,115,115,0,86,86,0,86,86,101,99,116,111,114,0,86,101,114,115,105,111,110,0,87,0,87,48,0,87,48,88,0,87,48,89,0,87,49,0,87,49,88,0,87,49,89,0,87,88,0,87,89,0,87,101,105,103,104,116,0,87,101,105,103,104,116,86,101,99,116,111,114,0,88,72,101,105,103,104,116,0,116,114,117,101,0,112,115,97,117,120,0,112,115,110,97,109,101,115,0,0,52,0,106,2,167,3,63,4,220,6,125,9,143,10,23,11,137,12,199,14,246,15,87,16,233,17,219,18,104,19,88,22,110,23,32,23,71,24,77,27,156,29,73,31,247,32,107,32,222,33,55,34,154,35,218,53,84,59,196,68,6,75,183,83,178,88,135,93,242,101,165,109,185,111,55,117,254,123,73,130,238,138,206,145,31,153,182,156,189,163,249,178,221,193,17,197,99,199,240,204,27,204,155,210,100,65,143,0,65,0,140,0,175,0,193,1,15,1,147,1,233,1,251,2,7,2,40,2,57,2,82,2,91,2,128,2,136,2,154,69,131,0,198,0,150,0,158,0,167,225,227,245,244,101,128,1,252,237,225,227,242,239,110,128,1,226,243,237,225,236,108,128,247,230,225,227,245,244,101,129,0,193,0,185,243,237,225,236,108,128,247,225,226,242,229,246,101,134,1,2,0,213,0,221,0,232,0,243,0,251,1,7,225,227,245,244,101,128,30,174,227,249,242,233,236,236,233,99,128,4,208,228,239,244,226,229,236,239,119,128,30,182,231,242,225,246,101,128,30,176,232,239,239,235,225,226,239,246,101,128,30,178,244,233,236,228,101,128,30,180,99,4,1,25,1,32,1,121,1,137,225,242,239,110,128,1,205,233,242,99,2,1,40,1,45,236,101,128,36,182,245,237,230,236,229,120,134,0,194,1,66,1,74,1,85,1,93,1,105,1,113,225,227,245,244,101,128,30,164,228,239,244,226,229,236,239,119,128,30,172,231,242,225,246,101,128,30,166,232,239,239,235,225,226,239,246,101,128,30,168,243,237,225,236,108,128,247,226,244,233,236,228,101,128,30,170,245,244,101,129,246,201,1,129,243,237,225,236,108,128,247,180,249,242,233,236,236,233,99,128,4,16,100,3,1,155,1,165,1,209,226,236,231,242,225,246,101,128,2,0,233,229,242,229,243,233,115,131,0,196,1,181,1,192,1,201,227,249,242,233,236,236,233,99,128,4,210,237,225,227,242,239,110,128,1,222,243,237,225,236,108,128,247,228,239,116,2,1,216,1,224,226,229,236,239,119,128,30,160,237,225,227,242,239,110,128,1,224,231,242,225,246,101,129,0,192,1,243,243,237,225,236,108,128,247,224,232,239,239,235,225,226,239,246,101,128,30,162,105,2,2,13,2,25,229,227,249,242,233,236,236,233,99,128,4,212,238,246,229,242,244,229,228,226,242,229,246,101,128,2,2,236,240,232,97,129,3,145,2,49,244,239,238,239,115,128,3,134,109,2,2,63,2,71,225,227,242,239,110,128,1,0,239,238,239,243,240,225,227,101,128,255,33,239,231,239,238,229,107,128,1,4,242,233,238,103,131,0,197,2,104,2,112,2,120,225,227,245,244,101,128,1,250,226,229,236,239,119,128,30,0,243,237,225,236,108,128,247,229,243,237,225,236,108,128,247,97,244,233,236,228,101,129,0,195,2,146,243,237,225,236,108,128,247,227,249,226,225,242,237,229,238,233,225,110,128,5,49,66,137,0,66,2,189,2,198,2,223,3,3,3,10,3,22,3,34,3,46,3,54,227,233,242,227,236,101,128,36,183,228,239,116,2,2,206,2,215,225,227,227,229,238,116,128,30,2,226,229,236,239,119,128,30,4,101,3,2,231,2,242,2,254,227,249,242,233,236,236,233,99,128,4,17,238,225,242,237,229,238,233,225,110,128,5,50,244,97,128,3,146,232,239,239,107,128,1,129,236,233,238,229,226,229,236,239,119,128,30,6,237,239,238,239,243,240,225,227,101,128,255,34,242,229,246,229,243,237,225,236,108,128,246,244,243,237,225,236,108,128,247,98,244,239,240,226,225,114,128,1,130,67,137,0,67,3,85,3,127,3,193,3,210,3,224,4,171,4,188,4,200,4,212,97,3,3,93,3,104,3,111,225,242,237,229,238,233,225,110,128,5,62,227,245,244,101,128,1,6,242,239,110,129,246,202,3,119,243,237,225,236,108,128,246,245,99,3,3,135,3,142,3,171,225,242,239,110,128,1,12,229,228,233,236,236,97,130,0,199,3,155,3,163,225,227,245,244,101,128,30,8,243,237,225,236,108,128,247,231,233,242,99,2,3,179,3,184,236,101,128,36,184,245,237,230,236,229,120,128,1,8,228,239,116,129,1,10,3,201,225,227,227,229,238,116,128,1,10,229,228,233,236,236,225,243,237,225,236,108,128,247,184,104,4,3,234,3,246,4,161,4,165,225,225,242,237,229,238,233,225,110,128,5,73,101,6,4,4,4,24,4,35,4,103,4,115,4,136,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,188,227,249,242,233,236,236,233,99,128,4,39,100,2,4,41,4,85,229,243,227,229,238,228,229,114,2,4,54,4,74,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,190,227,249,242,233,236,236,233,99,128,4,182,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,244,232,225,242,237,229,238,233,225,110,128,5,67,235,232,225,235,225,243,243,233,225,238,227,249,242,233,236,236,233,99,128,4,203,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,184,105,128,3,167,239,239,107,128,1,135,233,242,227,245,237,230,236,229,248,243,237,225,236,108,128,246,246,237,239,238,239,243,240,225,227,101,128,255,35,239,225,242,237,229,238,233,225,110,128,5,81,243,237,225,236,108,128,247,99,68,142,0,68,4,252,5,10,5,36,5,96,5,121,5,166,5,173,5,231,5,244,6,0,6,12,6,28,6,48,6,57,90,129,1,241,5,2,227,225,242,239,110,128,1,196,97,2,5,16,5,27,225,242,237,229,238,233,225,110,128,5,52,230,242,233,227,225,110,128,1,137,99,4,5,46,5,53,5,62,5,89,225,242,239,110,128,1,14,229,228,233,236,236,97,128,30,16,233,242,99,2,5,70,5,75,236,101,128,36,185,245,237,230,236,229,248,226,229,236,239,119,128,30,18,242,239,225,116,128,1,16,228,239,116,2,5,104,5,113,225,227,227,229,238,116,128,30,10,226,229,236,239,119,128,30,12,101,3,5,129,5,140,5,150,227,249,242,233,236,236,233,99,128,4,20,233,227,239,240,244,233,99,128,3,238,236,244,97,129,34,6,5,158,231,242,229,229,107,128,3,148,232,239,239,107,128,1,138,105,2,5,179,5,218,229,242,229,243,233,115,131,246,203,5,194,5,202,5,210,193,227,245,244,101,128,246,204,199,242,225,246,101,128,246,205,243,237,225,236,108,128,247,168,231,225,237,237,225,231,242,229,229,107,128,3,220,234,229,227,249,242,233,236,236,233,99,128,4,2,236,233,238,229,226,229,236,239,119,128,30,14,237,239,238,239,243,240,225,227,101,128,255,36,239,244,225,227,227,229,238,244,243,237,225,236,108,128,246,247,115,2,6,34,6,41,236,225,243,104,128,1,16,237,225,236,108,128,247,100,244,239,240,226,225,114,128,1,139,122,131,1,242,6,67,6,75,6,112,227,225,242,239,110,128,1,197,101,2,6,81,6,101,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,224,227,249,242,233,236,236,233,99,128,4,5,232,229,227,249,242,233,236,236,233,99,128,4,15,69,146,0,69,6,165,6,183,6,191,7,89,7,153,7,165,7,183,7,211,8,7,8,36,8,94,8,169,8,189,8,208,8,248,9,44,9,109,9,115,225,227,245,244,101,129,0,201,6,175,243,237,225,236,108,128,247,233,226,242,229,246,101,128,1,20,99,5,6,203,6,210,6,224,6,236,7,79,225,242,239,110,128,1,26,229,228,233,236,236,225,226,242,229,246,101,128,30,28,232,225,242,237,229,238,233,225,110,128,5,53,233,242,99,2,6,244,6,249,236,101,128,36,186,245,237,230,236,229,120,135,0,202,7,16,7,24,7,32,7,43,7,51,7,63,7,71,225,227,245,244,101,128,30,190,226,229,236,239,119,128,30,24,228,239,244,226,229,236,239,119,128,30,198,231,242,225,246,101,128,30,192,232,239,239,235,225,226,239,246,101,128,30,194,243,237,225,236,108,128,247,234,244,233,236,228,101,128,30,196,249,242,233,236,236,233,99,128,4,4,100,3,7,97,7,107,7,127,226,236,231,242,225,246,101,128,2,4,233,229,242,229,243,233,115,129,0,203,7,119,243,237,225,236,108,128,247,235,239,116,130,1,22,7,136,7,145,225,227,227,229,238,116,128,1,22,226,229,236,239,119,128,30,184,230,227,249,242,233,236,236,233,99,128,4,36,231,242,225,246,101,129,0,200,7,175,243,237,225,236,108,128,247,232,104,2,7,189,7,200,225,242,237,229,238,233,225,110,128,5,55,239,239,235,225,226,239,246,101,128,30,186,105,3,7,219,7,230,7,245,231,232,244,242,239,237,225,110,128,33,103,238,246,229,242,244,229,228,226,242,229,246,101,128,2,6,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,100,108,2,8,13,8,24,227,249,242,233,236,236,233,99,128,4,27,229,246,229,238,242,239,237,225,110,128,33,106,109,3,8,44,8,72,8,83,225,227,242,239,110,130,1,18,8,56,8,64,225,227,245,244,101,128,30,22,231,242,225,246,101,128,30,20,227,249,242,233,236,236,233,99,128,4,28,239,238,239,243,240,225,227,101,128,255,37,110,4,8,104,8,115,8,135,8,154,227,249,242,233,236,236,233,99,128,4,29,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,162,103,129,1,74,8,141,232,229,227,249,242,233,236,236,233,99,128,4,164,232,239,239,235,227,249,242,233,236,236,233,99,128,4,199,111,2,8,175,8,183,231,239,238,229,107,128,1,24,240,229,110,128,1,144,240,243,233,236,239,110,129,3,149,8,200,244,239,238,239,115,128,3,136,114,2,8,214,8,225,227,249,242,233,236,236,233,99,128,4,32,229,246,229,242,243,229,100,129,1,142,8,237,227,249,242,233,236,236,233,99,128,4,45,115,4,9,2,9,13,9,33,9,37,227,249,242,233,236,236,233,99,128,4,33,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,170,104,128,1,169,237,225,236,108,128,247,101,116,3,9,52,9,78,9,92,97,130,3,151,9,60,9,70,242,237,229,238,233,225,110,128,5,56,244,239,238,239,115,128,3,137,104,129,0,208,9,84,243,237,225,236,108,128,247,240,233,236,228,101,129,30,188,9,101,226,229,236,239,119,128,30,26,245,242,111,128,32,172,250,104,130,1,183,9,124,9,132,227,225,242,239,110,128,1,238,242,229,246,229,242,243,229,100,128,1,184,70,136,0,70,9,163,9,172,9,184,9,212,9,219,9,248,10,4,10,15,227,233,242,227,236,101,128,36,187,228,239,244,225,227,227,229,238,116,128,30,30,101,2,9,190,9,202,232,225,242,237,229,238,233,225,110,128,5,86,233,227,239,240,244,233,99,128,3,228,232,239,239,107,128,1,145,105,2,9,225,9,238,244,225,227,249,242,233,236,236,233,99,128,4,114,246,229,242,239,237,225,110,128,33,100,237,239,238,239,243,240,225,227,101,128,255,38,239,245,242,242,239,237,225,110,128,33,99,243,237,225,236,108,128,247,102,71,140,0,71,10,51,10,61,10,107,10,115,10,176,10,193,10,205,11,39,11,52,11,65,11,90,11,107,194,243,241,245,225,242,101,128,51,135,97,3,10,69,10,76,10,94,227,245,244,101,128,1,244,237,237,97,129,3,147,10,84,225,230,242,233,227,225,110,128,1,148,238,231,233,225,227,239,240,244,233,99,128,3,234,226,242,229,246,101,128,1,30,99,4,10,125,10,132,10,141,10,163,225,242,239,110,128,1,230,229,228,233,236,236,97,128,1,34,233,242,99,2,10,149,10,154,236,101,128,36,188,245,237,230,236,229,120,128,1,28,239,237,237,225,225,227,227,229,238,116,128,1,34,228,239,116,129,1,32,10,184,225,227,227,229,238,116,128,1,32,229,227,249,242,233,236,236,233,99,128,4,19,104,3,10,213,10,226,11,33,225,228,225,242,237,229,238,233,225,110,128,5,66,101,3,10,234,10,255,11,16,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,148,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,146,245,240,244,245,242,238,227,249,242,233,236,236,233,99,128,4,144,239,239,107,128,1,147,233,237,225,242,237,229,238,233,225,110,128,5,51,234,229,227,249,242,233,236,236,233,99,128,4,3,109,2,11,71,11,79,225,227,242,239,110,128,30,32,239,238,239,243,240,225,227,101,128,255,39,242,225,246,101,129,246,206,11,99,243,237,225,236,108,128,247,96,115,2,11,113,11,129,237,225,236,108,129,247,103,11,122,232,239,239,107,128,2,155,244,242,239,235,101,128,1,228,72,140,0,72,11,165,11,190,11,198,11,208,12,17,12,40,12,77,12,117,12,129,12,157,12,165,12,189,177,184,53,3,11,175,11,180,11,185,179,51,128,37,207,180,51,128,37,170,181,49,128,37,171,178,178,176,183,51,128,37,161,208,243,241,245,225,242,101,128,51,203,97,3,11,216,11,236,12,0,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,168,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,178,242,228,243,233,231,238,227,249,242,233,236,236,233,99,128,4,42,98,2,12,23,12,28,225,114,128,1,38,242,229,246,229,226,229,236,239,119,128,30,42,99,2,12,46,12,55,229,228,233,236,236,97,128,30,40,233,242,99,2,12,63,12,68,236,101,128,36,189,245,237,230,236,229,120,128,1,36,100,2,12,83,12,93,233,229,242,229,243,233,115,128,30,38,239,116,2,12,100,12,109,225,227,227,229,238,116,128,30,34,226,229,236,239,119,128,30,36,237,239,238,239,243,240,225,227,101,128,255,40,111,2,12,135,12,146,225,242,237,229,238,233,225,110,128,5,64,242,233,227,239,240,244,233,99,128,3,232,243,237,225,236,108,128,247,104,245,238,231,225,242,245,237,236,225,245,116,129,246,207,12,181,243,237,225,236,108,128,246,248,250,243,241,245,225,242,101,128,51,144,73,146,0,73,12,239,12,251,12,255,13,11,13,29,13,37,13,94,13,181,13,214,13,224,13,242,13,254,14,48,14,86,14,99,14,166,14,187,14,205,193,227,249,242,233,236,236,233,99,128,4,47,74,128,1,50,213,227,249,242,233,236,236,233,99,128,4,46,225,227,245,244,101,129,0,205,13,21,243,237,225,236,108,128,247,237,226,242,229,246,101,128,1,44,99,3,13,45,13,52,13,84,225,242,239,110,128,1,207,233,242,99,2,13,60,13,65,236,101,128,36,190,245,237,230,236,229,120,129,0,206,13,76,243,237,225,236,108,128,247,238,249,242,233,236,236,233,99,128,4,6,100,3,13,102,13,112,13,155,226,236,231,242,225,246,101,128,2,8,233,229,242,229,243,233,115,131,0,207,13,128,13,136,13,147,225,227,245,244,101,128,30,46,227,249,242,233,236,236,233,99,128,4,228,243,237,225,236,108,128,247,239,239,116,130,1,48,13,164,13,173,225,227,227,229,238,116,128,1,48,226,229,236,239,119,128,30,202,101,2,13,187,13,203,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,214,227,249,242,233,236,236,233,99,128,4,21,230,242,225,235,244,245,114,128,33,17,231,242,225,246,101,129,0,204,13,234,243,237,225,236,108,128,247,236,232,239,239,235,225,226,239,246,101,128,30,200,105,3,14,6,14,17,14,32,227,249,242,233,236,236,233,99,128,4,24,238,246,229,242,244,229,228,226,242,229,246,101,128,2,10,243,232,239,242,244,227,249,242,233,236,236,233,99,128,4,25,109,2,14,54,14,75,225,227,242,239,110,129,1,42,14,64,227,249,242,233,236,236,233,99,128,4,226,239,238,239,243,240,225,227,101,128,255,41,238,233,225,242,237,229,238,233,225,110,128,5,59,111,3,14,107,14,118,14,126,227,249,242,233,236,236,233,99,128,4,1,231,239,238,229,107,128,1,46,244,97,131,3,153,14,137,14,147,14,158,225,230,242,233,227,225,110,128,1,150,228,233,229,242,229,243,233,115,128,3,170,244,239,238,239,115,128,3,138,115,2,14,172,14,179,237,225,236,108,128,247,105,244,242,239,235,101,128,1,151,244,233,236,228,101,129,1,40,14,197,226,229,236,239,119,128,30,44,250,232,233,244,243,97,2,14,216,14,227,227,249,242,233,236,236,233,99,128,4,116,228,226,236,231,242,225,246,229,227,249,242,233,236,236,233,99,128,4,118,74,134,0,74,15,6,15,18,15,41,15,53,15,67,15,79,225,225,242,237,229,238,233,225,110,128,5,65,227,233,242,99,2,15,27,15,32,236,101,128,36,191,245,237,230,236,229,120,128,1,52,229,227,249,242,233,236,236,233,99,128,4,8,232,229,232,225,242,237,229,238,233,225,110,128,5,75,237,239,238,239,243,240,225,227,101,128,255,42,243,237,225,236,108,128,247,106,75,140,0,75,15,115,15,125,15,135,16,18,16,65,16,76,16,106,16,143,16,156,16,168,16,180,16,208,194,243,241,245,225,242,101,128,51,133,203,243,241,245,225,242,101,128,51,205,97,7,15,151,15,169,15,191,15,211,15,226,15,232,15,249,226,225,243,232,235,233,242,227,249,242,233,236,236,233,99,128,4,160,99,2,15,175,15,181,245,244,101,128,30,48,249,242,233,236,236,233,99,128,4,26,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,154,232,239,239,235,227,249,242,233,236,236,233,99,128,4,195,240,240,97,128,3,154,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,158,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,156,99,4,16,28,16,35,16,44,16,52,225,242,239,110,128,1,232,229,228,233,236,236,97,128,1,54,233,242,227,236,101,128,36,192,239,237,237,225,225,227,227,229,238,116,128,1,54,228,239,244,226,229,236,239,119,128,30,50,101,2,16,82,16,94,232,225,242,237,229,238,233,225,110,128,5,84,238,225,242,237,229,238,233,225,110,128,5,63,104,3,16,114,16,126,16,137,225,227,249,242,233,236,236,233,99,128,4,37,229,233,227,239,240,244,233,99,128,3,230,239,239,107,128,1,152,234,229,227,249,242,233,236,236,233,99,128,4,12,236,233,238,229,226,229,236,239,119,128,30,52,237,239,238,239,243,240,225,227,101,128,255,43,239,240,240,97,2,16,189,16,200,227,249,242,233,236,236,233,99,128,4,128,231,242,229,229,107,128,3,222,115,2,16,214,16,226,233,227,249,242,233,236,236,233,99,128,4,110,237,225,236,108,128,247,107,76,138,0,76,17,1,17,5,17,9,17,29,17,95,17,133,17,147,17,165,17,177,17,189,74,128,1,199,76,128,246,191,97,2,17,15,17,22,227,245,244,101,128,1,57,237,226,228,97,128,3,155,99,4,17,39,17,46,17,55,17,82,225,242,239,110,128,1,61,229,228,233,236,236,97,128,1,59,233,242,99,2,17,63,17,68,236,101,128,36,193,245,237,230,236,229,248,226,229,236,239,119,128,30,60,239,237,237,225,225,227,227,229,238,116,128,1,59,228,239,116,130,1,63,17,105,17,114,225,227,227,229,238,116,128,1,63,226,229,236,239,119,129,30,54,17,124,237,225,227,242,239,110,128,30,56,233,247,238,225,242,237,229,238,233,225,110,128,5,60,106,129,1,200,17,153,229,227,249,242,233,236,236,233,99,128,4,9,236,233,238,229,226,229,236,239,119,128,30,58,237,239,238,239,243,240,225,227,101,128,255,44,115,2,17,195,17,212,236,225,243,104,129,1,65,17,204,243,237,225,236,108,128,246,249,237,225,236,108,128,247,108,77,137,0,77,17,241,17,251,18,24,18,33,18,58,18,71,18,83,18,91,18,100,194,243,241,245,225,242,101,128,51,134,225,99,2,18,2,18,18,242,239,110,129,246,208,18,10,243,237,225,236,108,128,247,175,245,244,101,128,30,62,227,233,242,227,236,101,128,36,194,228,239,116,2,18,41,18,50,225,227,227,229,238,116,128,30,64,226,229,236,239,119,128,30,66,229,238,225,242,237,229,238,233,225,110,128,5,68,237,239,238,239,243,240,225,227,101,128,255,45,243,237,225,236,108,128,247,109,244,245,242,238,229,100,128,1,156,117,128,3,156,78,141,0,78,18,134,18,138,18,146,18,212,18,237,18,248,19,3,19,21,19,33,19,45,19,58,19,66,19,84,74,128,1,202,225,227,245,244,101,128,1,67,99,4,18,156,18,163,18,172,18,199,225,242,239,110,128,1,71,229,228,233,236,236,97,128,1,69,233,242,99,2,18,180,18,185,236,101,128,36,195,245,237,230,236,229,248,226,229,236,239,119,128,30,74,239,237,237,225,225,227,227,229,238,116,128,1,69,228,239,116,2,18,220,18,229,225,227,227,229,238,116,128,30,68,226,229,236,239,119,128,30,70,232,239,239,235,236,229,230,116,128,1,157,233,238,229,242,239,237,225,110,128,33,104,106,129,1,203,19,9,229,227,249,242,233,236,236,233,99,128,4,10,236,233,238,229,226,229,236,239,119,128,30,72,237,239,238,239,243,240,225,227,101,128,255,46,239,247,225,242,237,229,238,233,225,110,128,5,70,243,237,225,236,108,128,247,110,244,233,236,228,101,129,0,209,19,76,243,237,225,236,108,128,247,241,117,128,3,157,79,141,0,79,19,118,19,132,19,150,19,203,20,78,20,152,20,187,21,48,21,69,21,213,21,223,21,254,22,53,69,129,1,82,19,124,243,237,225,236,108,128,246,250,225,227,245,244,101,129,0,211,19,142,243,237,225,236,108,128,247,243,98,2,19,156,19,196,225,242,242,229,100,2,19,166,19,177,227,249,242,233,236,236,233,99,128,4,232,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,234,242,229,246,101,128,1,78,99,4,19,213,19,220,19,235,20,68,225,242,239,110,128,1,209,229,238,244,229,242,229,228,244,233,236,228,101,128,1,159,233,242,99,2,19,243,19,248,236,101,128,36,196,245,237,230,236,229,120,134,0,212,20,13,20,21,20,32,20,40,20,52,20,60,225,227,245,244,101,128,30,208,228,239,244,226,229,236,239,119,128,30,216,231,242,225,246,101,128,30,210,232,239,239,235,225,226,239,246,101,128,30,212,243,237,225,236,108,128,247,244,244,233,236,228,101,128,30,214,249,242,233,236,236,233,99,128,4,30,100,3,20,86,20,109,20,142,226,108,2,20,93,20,101,225,227,245,244,101,128,1,80,231,242,225,246,101,128,2,12,233,229,242,229,243,233,115,130,0,214,20,123,20,134,227,249,242,233,236,236,233,99,128,4,230,243,237,225,236,108,128,247,246,239,244,226,229,236,239,119,128,30,204,103,2,20,158,20,170,239,238,229,235,243,237,225,236,108,128,246,251,242,225,246,101,129,0,210,20,179,243,237,225,236,108,128,247,242,104,4,20,197,20,208,20,212,21,34,225,242,237,229,238,233,225,110,128,5,85,109,128,33,38,111,2,20,218,20,228,239,235,225,226,239,246,101,128,30,206,242,110,133,1,160,20,243,20,251,21,6,21,14,21,26,225,227,245,244,101,128,30,218,228,239,244,226,229,236,239,119,128,30,226,231,242,225,246,101,128,30,220,232,239,239,235,225,226,239,246,101,128,30,222,244,233,236,228,101,128,30,224,245,238,231,225,242,245,237,236,225,245,116,128,1,80,105,129,1,162,21,54,238,246,229,242,244,229,228,226,242,229,246,101,128,2,14,109,4,21,79,21,107,21,184,21,202,225,227,242,239,110,130,1,76,21,91,21,99,225,227,245,244,101,128,30,82,231,242,225,246,101,128,30,80,229,231,97,132,33,38,21,121,21,132,21,140,21,156,227,249,242,233,236,236,233,99,128,4,96,231,242,229,229,107,128,3,169,242,239,245,238,228,227,249,242,233,236,236,233,99,128,4,122,116,2,21,162,21,177,233,244,236,239,227,249,242,233,236,236,233,99,128,4,124,239,238,239,115,128,3,143,233,227,242,239,110,129,3,159,21,194,244,239,238,239,115,128,3,140,239,238,239,243,240,225,227,101,128,255,47,238,229,242,239,237,225,110,128,33,96,111,2,21,229,21,248,231,239,238,229,107,129,1,234,21,239,237,225,227,242,239,110,128,1,236,240,229,110,128,1,134,115,3,22,6,22,33,22,40,236,225,243,104,130,0,216,22,17,22,25,225,227,245,244,101,128,1,254,243,237,225,236,108,128,247,248,237,225,236,108,128,247,111,244,242,239,235,229,225,227,245,244,101,128,1,254,116,2,22,59,22,70,227,249,242,233,236,236,233,99,128,4,126,233,236,228,101,131,0,213,22,83,22,91,22,102,225,227,245,244,101,128,30,76,228,233,229,242,229,243,233,115,128,30,78,243,237,225,236,108,128,247,245,80,136,0,80,22,130,22,138,22,147,22,159,22,211,22,227,22,246,23,2,225,227,245,244,101,128,30,84,227,233,242,227,236,101,128,36,197,228,239,244,225,227,227,229,238,116,128,30,86,101,3,22,167,22,178,22,190,227,249,242,233,236,236,233,99,128,4,31,232,225,242,237,229,238,233,225,110,128,5,74,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,166,104,2,22,217,22,221,105,128,3,166,239,239,107,128,1,164,105,129,3,160,22,233,247,242,225,242,237,229,238,233,225,110,128,5,83,237,239,238,239,243,240,225,227,101,128,255,48,115,2,23,8,23,25,105,129,3,168,23,14,227,249,242,233,236,236,233,99,128,4,112,237,225,236,108,128,247,112,81,131,0,81,23,42,23,51,23,63,227,233,242,227,236,101,128,36,198,237,239,238,239,243,240,225,227,101,128,255,49,243,237,225,236,108,128,247,113,82,138,0,82,23,95,23,119,23,166,23,217,23,230,23,240,23,245,24,19,24,31,24,43,97,2,23,101,23,112,225,242,237,229,238,233,225,110,128,5,76,227,245,244,101,128,1,84,99,4,23,129,23,136,23,145,23,153,225,242,239,110,128,1,88,229,228,233,236,236,97,128,1,86,233,242,227,236,101,128,36,199,239,237,237,225,225,227,227,229,238,116,128,1,86,100,2,23,172,23,182,226,236,231,242,225,246,101,128,2,16,239,116,2,23,189,23,198,225,227,227,229,238,116,128,30,88,226,229,236,239,119,129,30,90,23,208,237,225,227,242,239,110,128,30,92,229,232,225,242,237,229,238,233,225,110,128,5,80,230,242,225,235,244,245,114,128,33,28,232,111,128,3,161,233,110,2,23,252,24,5,231,243,237,225,236,108,128,246,252,246,229,242,244,229,228,226,242,229,246,101,128,2,18,236,233,238,229,226,229,236,239,119,128,30,94,237,239,238,239,243,240,225,227,101,128,255,50,243,237,225,236,108,129,247,114,24,53,233,238,246,229,242,244,229,100,129,2,129,24,66,243,245,240,229,242,233,239,114,128,2,182,83,139,0,83,24,103,26,17,26,55,26,182,26,221,26,250,27,84,27,105,27,117,27,135,27,143,70,6,24,117,24,209,24,241,25,77,25,119,25,221,48,9,24,137,24,145,24,153,24,161,24,169,24,177,24,185,24,193,24,201,177,176,176,176,48,128,37,12,178,176,176,176,48,128,37,20,179,176,176,176,48,128,37,16,180,176,176,176,48,128,37,24,181,176,176,176,48,128,37,60,182,176,176,176,48,128,37,44,183,176,176,176,48,128,37,52,184,176,176,176,48,128,37,28,185,176,176,176,48,128,37,36,49,3,24,217,24,225,24,233,176,176,176,176,48,128,37,0,177,176,176,176,48,128,37,2,185,176,176,176,48,128,37,97,50,9,25,5,25,13,25,21,25,29,25,37,25,45,25,53,25,61,25,69,176,176,176,176,48,128,37,98,177,176,176,176,48,128,37,86,178,176,176,176,48,128,37,85,179,176,176,176,48,128,37,99,180,176,176,176,48,128,37,81,181,176,176,176,48,128,37,87,182,176,176,176,48,128,37,93,183,176,176,176,48,128,37,92,184,176,176,176,48,128,37,91,51,4,25,87,25,95,25,103,25,111,182,176,176,176,48,128,37,94,183,176,176,176,48,128,37,95,184,176,176,176,48,128,37,90,185,176,176,176,48,128,37,84,52,10,25,141,25,149,25,157,25,165,25,173,25,181,25,189,25,197,25,205,25,213,176,176,176,176,48,128,37,105,177,176,176,176,48,128,37,102,178,176,176,176,48,128,37,96,179,176,176,176,48,128,37,80,180,176,176,176,48,128,37,108,181,176,176,176,48,128,37,103,182,176,176,176,48,128,37,104,183,176,176,176,48,128,37,100,184,176,176,176,48,128,37,101,185,176,176,176,48,128,37,89,53,5,25,233,25,241,25,249,26,1,26,9,176,176,176,176,48,128,37,88,177,176,176,176,48,128,37,82,178,176,176,176,48,128,37,83,179,176,176,176,48,128,37,107,180,176,176,176,48,128,37,106,97,2,26,23,26,44,227,245,244,101,129,1,90,26,32,228,239,244,225,227,227,229,238,116,128,30,100,237,240,233,231,242,229,229,107,128,3,224,99,5,26,67,26,98,26,107,26,147,26,169,225,242,239,110,130,1,96,26,78,26,90,228,239,244,225,227,227,229,238,116,128,30,102,243,237,225,236,108,128,246,253,229,228,233,236,236,97,128,1,94,232,247,97,130,1,143,26,117,26,128,227,249,242,233,236,236,233,99,128,4,216,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,218,233,242,99,2,26,155,26,160,236,101,128,36,200,245,237,230,236,229,120,128,1,92,239,237,237,225,225,227,227,229,238,116,128,2,24,228,239,116,2,26,190,26,199,225,227,227,229,238,116,128,30,96,226,229,236,239,119,129,30,98,26,209,228,239,244,225,227,227,229,238,116,128,30,104,101,2,26,227,26,239,232,225,242,237,229,238,233,225,110,128,5,77,246,229,238,242,239,237,225,110,128,33,102,104,5,27,6,27,34,27,48,27,59,27,72,97,2,27,12,27,23,225,242,237,229,238,233,225,110,128,5,71,227,249,242,233,236,236,233,99,128,4,40,227,232,225,227,249,242,233,236,236,233,99,128,4,41,229,233,227,239,240,244,233,99,128,3,226,232,225,227,249,242,233,236,236,233,99,128,4,186,233,237,225,227,239,240,244,233,99,128,3,236,105,2,27,90,27,96,231,237,97,128,3,163,248,242,239,237,225,110,128,33,101,237,239,238,239,243,240,225,227,101,128,255,51,239,230,244,243,233,231,238,227,249,242,233,236,236,233,99,128,4,44,243,237,225,236,108,128,247,115,244,233,231,237,225,231,242,229,229,107,128,3,218,84,141,0,84,27,186,27,191,27,197,28,7,28,32,28,96,28,147,28,177,28,189,28,201,28,246,29,6,29,46,225,117,128,3,164,226,225,114,128,1,102,99,4,27,207,27,214,27,223,27,250,225,242,239,110,128,1,100,229,228,233,236,236,97,128,1,98,233,242,99,2,27,231,27,236,236,101,128,36,201,245,237,230,236,229,248,226,229,236,239,119,128,30,112,239,237,237,225,225,227,227,229,238,116,128,1,98,228,239,116,2,28,15,28,24,225,227,227,229,238,116,128,30,106,226,229,236,239,119,128,30,108,101,4,28,42,28,53,28,73,28,82,227,249,242,233,236,236,233,99,128,4,34,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,172,238,242,239,237,225,110,128,33,105,244,243,229,227,249,242,233,236,236,233,99,128,4,180,104,3,28,104,28,110,28,136,229,244,97,128,3,152,111,2,28,116,28,121,239,107,128,1,172,242,110,129,0,222,28,128,243,237,225,236,108,128,247,254,242,229,229,242,239,237,225,110,128,33,98,105,2,28,153,28,164,236,228,229,243,237,225,236,108,128,246,254,247,238,225,242,237,229,238,233,225,110,128,5,79,236,233,238,229,226,229,236,239,119,128,30,110,237,239,238,239,243,240,225,227,101,128,255,52,111,2,28,207,28,218,225,242,237,229,238,233,225,110,128,5,57,238,101,3,28,227,28,234,28,240,230,233,246,101,128,1,188,243,233,120,128,1,132,244,247,111,128,1,167,242,229,244,242,239,230,236,229,248,232,239,239,107,128,1,174,115,3,29,14,29,26,29,39,229,227,249,242,233,236,236,233,99,128,4,38,232,229,227,249,242,233,236,236,233,99,128,4,11,237,225,236,108,128,247,116,119,2,29,52,29,64,229,236,246,229,242,239,237,225,110,128,33,107,239,242,239,237,225,110,128,33,97,85,142,0,85,29,105,29,123,29,131,29,198,30,69,30,87,30,198,30,214,30,226,31,21,31,30,31,142,31,149,31,219,225,227,245,244,101,129,0,218,29,115,243,237,225,236,108,128,247,250,226,242,229,246,101,128,1,108,99,3,29,139,29,146,29,188,225,242,239,110,128,1,211,233,242,99,2,29,154,29,159,236,101,128,36,202,245,237,230,236,229,120,130,0,219,29,172,29,180,226,229,236,239,119,128,30,118,243,237,225,236,108,128,247,251,249,242,233,236,236,233,99,128,4,35,100,3,29,206,29,229,30,59,226,108,2,29,213,29,221,225,227,245,244,101,128,1,112,231,242,225,246,101,128,2,20,233,229,242,229,243,233,115,134,0,220,29,251,30,3,30,11,30,34,30,42,30,51,225,227,245,244,101,128,1,215,226,229,236,239,119,128,30,114,99,2,30,17,30,24,225,242,239,110,128,1,217,249,242,233,236,236,233,99,128,4,240,231,242,225,246,101,128,1,219,237,225,227,242,239,110,128,1,213,243,237,225,236,108,128,247,252,239,244,226,229,236,239,119,128,30,228,231,242,225,246,101,129,0,217,30,79,243,237,225,236,108,128,247,249,104,2,30,93,30,171,111,2,30,99,30,109,239,235,225,226,239,246,101,128,30,230,242,110,133,1,175,30,124,30,132,30,143,30,151,30,163,225,227,245,244,101,128,30,232,228,239,244,226,229,236,239,119,128,30,240,231,242,225,246,101,128,30,234,232,239,239,235,225,226,239,246,101,128,30,236,244,233,236,228,101,128,30,238,245,238,231,225,242,245,237,236,225,245,116,129,1,112,30,187,227,249,242,233,236,236,233,99,128,4,242,233,238,246,229,242,244,229,228,226,242,229,246,101,128,2,22,235,227,249,242,233,236,236,233,99,128,4,120,109,2,30,232,31,10,225,227,242,239,110,130,1,106,30,244,30,255,227,249,242,233,236,236,233,99,128,4,238,228,233,229,242,229,243,233,115,128,30,122,239,238,239,243,240,225,227,101,128,255,53,239,231,239,238,229,107,128,1,114,240,243,233,236,239,110,133,3,165,31,49,31,53,31,90,31,121,31,134,49,128,3,210,97,2,31,59,31,81,227,245,244,229,232,239,239,235,243,249,237,226,239,236,231,242,229,229,107,128,3,211,230,242,233,227,225,110,128,1,177,228,233,229,242,229,243,233,115,129,3,171,31,103,232,239,239,235,243,249,237,226,239,236,231,242,229,229,107,128,3,212],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10240);allocate([232,239,239,235,243,249,237,226,239,108,128,3,210,244,239,238,239,115,128,3,142,242,233,238,103,128,1,110,115,3,31,157,31,172,31,179,232,239,242,244,227,249,242,233,236,236,233,99,128,4,14,237,225,236,108,128,247,117,244,242,225,233,231,232,116,2,31,191,31,202,227,249,242,233,236,236,233,99,128,4,174,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,176,244,233,236,228,101,130,1,104,31,231,31,239,225,227,245,244,101,128,30,120,226,229,236,239,119,128,30,116,86,136,0,86,32,11,32,20,32,31,32,60,32,67,32,79,32,91,32,99,227,233,242,227,236,101,128,36,203,228,239,244,226,229,236,239,119,128,30,126,101,2,32,37,32,48,227,249,242,233,236,236,233,99,128,4,18,247,225,242,237,229,238,233,225,110,128,5,78,232,239,239,107,128,1,178,237,239,238,239,243,240,225,227,101,128,255,54,239,225,242,237,229,238,233,225,110,128,5,72,243,237,225,236,108,128,247,118,244,233,236,228,101,128,30,124,87,134,0,87,32,123,32,131,32,154,32,194,32,202,32,214,225,227,245,244,101,128,30,130,227,233,242,99,2,32,140,32,145,236,101,128,36,204,245,237,230,236,229,120,128,1,116,100,2,32,160,32,170,233,229,242,229,243,233,115,128,30,132,239,116,2,32,177,32,186,225,227,227,229,238,116,128,30,134,226,229,236,239,119,128,30,136,231,242,225,246,101,128,30,128,237,239,238,239,243,240,225,227,101,128,255,55,243,237,225,236,108,128,247,119,88,134,0,88,32,238,32,247,33,18,33,31,33,35,33,47,227,233,242,227,236,101,128,36,205,100,2,32,253,33,7,233,229,242,229,243,233,115,128,30,140,239,244,225,227,227,229,238,116,128,30,138,229,232,225,242,237,229,238,233,225,110,128,5,61,105,128,3,158,237,239,238,239,243,240,225,227,101,128,255,56,243,237,225,236,108,128,247,120,89,139,0,89,33,81,33,116,33,139,33,189,33,228,33,236,33,253,34,40,34,52,34,60,34,68,97,2,33,87,33,104,227,245,244,101,129,0,221,33,96,243,237,225,236,108,128,247,253,244,227,249,242,233,236,236,233,99,128,4,98,227,233,242,99,2,33,125,33,130,236,101,128,36,206,245,237,230,236,229,120,128,1,118,100,2,33,145,33,165,233,229,242,229,243,233,115,129,1,120,33,157,243,237,225,236,108,128,247,255,239,116,2,33,172,33,181,225,227,227,229,238,116,128,30,142,226,229,236,239,119,128,30,244,229,114,2,33,196,33,208,233,227,249,242,233,236,236,233,99,128,4,43,245,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,248,231,242,225,246,101,128,30,242,232,239,239,107,129,1,179,33,245,225,226,239,246,101,128,30,246,105,3,34,5,34,16,34,27,225,242,237,229,238,233,225,110,128,5,69,227,249,242,233,236,236,233,99,128,4,7,247,238,225,242,237,229,238,233,225,110,128,5,82,237,239,238,239,243,240,225,227,101,128,255,57,243,237,225,236,108,128,247,121,244,233,236,228,101,128,30,248,245,115,2,34,75,34,113,226,233,103,2,34,83,34,94,227,249,242,233,236,236,233,99,128,4,106,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,108,236,233,244,244,236,101,2,34,124,34,135,227,249,242,233,236,236,233,99,128,4,102,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,104,90,136,0,90,34,174,34,198,34,243,35,14,35,81,35,173,35,185,35,197,97,2,34,180,34,191,225,242,237,229,238,233,225,110,128,5,54,227,245,244,101,128,1,121,99,2,34,204,34,221,225,242,239,110,129,1,125,34,213,243,237,225,236,108,128,246,255,233,242,99,2,34,229,34,234,236,101,128,36,207,245,237,230,236,229,120,128,30,144,228,239,116,130,1,123,34,253,35,6,225,227,227,229,238,116,128,1,123,226,229,236,239,119,128,30,146,101,3,35,22,35,33,35,76,227,249,242,233,236,236,233,99,128,4,23,100,2,35,39,35,58,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,152,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,222,244,97,128,3,150,232,101,4,35,92,35,103,35,119,35,130,225,242,237,229,238,233,225,110,128,5,58,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,193,227,249,242,233,236,236,233,99,128,4,22,100,2,35,136,35,155,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,150,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,220,236,233,238,229,226,229,236,239,119,128,30,148,237,239,238,239,243,240,225,227,101,128,255,58,115,2,35,203,35,210,237,225,236,108,128,247,122,244,242,239,235,101,128,1,181,97,149,0,97,36,8,36,144,37,35,37,211,38,55,38,91,45,10,45,47,45,74,46,43,46,81,47,170,47,242,48,197,48,206,49,79,51,87,52,77,52,124,53,19,53,33,97,7,36,24,36,34,36,41,36,48,36,73,36,89,36,100,226,229,238,231,225,236,105,128,9,134,227,245,244,101,128,0,225,228,229,246,97,128,9,6,231,117,2,36,55,36,64,234,225,242,225,244,105,128,10,134,242,237,245,235,232,105,128,10,6,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,62,242,245,243,241,245,225,242,101,128,51,3,246,239,247,229,236,243,233,231,110,3,36,116,36,126,36,133,226,229,238,231,225,236,105,128,9,190,228,229,246,97,128,9,62,231,245,234,225,242,225,244,105,128,10,190,98,4,36,154,36,195,36,204,36,214,226,242,229,246,233,225,244,233,239,110,2,36,169,36,184,237,225,242,235,225,242,237,229,238,233,225,110,128,5,95,243,233,231,238,228,229,246,97,128,9,112,229,238,231,225,236,105,128,9,133,239,240,239,237,239,230,111,128,49,26,242,229,246,101,134,1,3,36,233,36,241,36,252,37,7,37,15,37,27,225,227,245,244,101,128,30,175,227,249,242,233,236,236,233,99,128,4,209,228,239,244,226,229,236,239,119,128,30,183,231,242,225,246,101,128,30,177,232,239,239,235,225,226,239,246,101,128,30,179,244,233,236,228,101,128,30,181,99,4,37,45,37,52,37,131,37,201,225,242,239,110,128,1,206,233,242,99,2,37,60,37,65,236,101,128,36,208,245,237,230,236,229,120,133,0,226,37,84,37,92,37,103,37,111,37,123,225,227,245,244,101,128,30,165,228,239,244,226,229,236,239,119,128,30,173,231,242,225,246,101,128,30,167,232,239,239,235,225,226,239,246,101,128,30,169,244,233,236,228,101,128,30,171,245,244,101,133,0,180,37,147,37,158,37,175,37,182,37,191,226,229,236,239,247,227,237,98,128,3,23,99,2,37,164,37,169,237,98,128,3,1,239,237,98,128,3,1,228,229,246,97,128,9,84,236,239,247,237,239,100,128,2,207,244,239,238,229,227,237,98,128,3,65,249,242,233,236,236,233,99,128,4,48,100,5,37,223,37,233,37,247,37,253,38,31,226,236,231,242,225,246,101,128,2,1,228,225,235,231,245,242,237,245,235,232,105,128,10,113,229,246,97,128,9,5,233,229,242,229,243,233,115,130,0,228,38,11,38,22,227,249,242,233,236,236,233,99,128,4,211,237,225,227,242,239,110,128,1,223,239,116,2,38,38,38,46,226,229,236,239,119,128,30,161,237,225,227,242,239,110,128,1,225,101,131,0,230,38,65,38,73,38,82,225,227,245,244,101,128,1,253,235,239,242,229,225,110,128,49,80,237,225,227,242,239,110,128,1,227,230,233,105,6,38,107,38,127,41,64,41,70,41,85,44,185,48,2,38,113,38,120,176,178,176,56,128,32,21,184,185,180,49,128,32,164,177,48,3,38,136,40,160,41,39,48,9,38,156,38,176,38,238,39,44,39,106,39,168,39,230,40,36,40,98,49,3,38,164,38,168,38,172,55,128,4,16,56,128,4,17,57,128,4,18,50,10,38,198,38,202,38,206,38,210,38,214,38,218,38,222,38,226,38,230,38,234,48,128,4,19,49,128,4,20,50,128,4,21,51,128,4,1,52,128,4,22,53,128,4,23,54,128,4,24,55,128,4,25,56,128,4,26,57,128,4,27,51,10,39,4,39,8,39,12,39,16,39,20,39,24,39,28,39,32,39,36,39,40,48,128,4,28,49,128,4,29,50,128,4,30,51,128,4,31,52,128,4,32,53,128,4,33,54,128,4,34,55,128,4,35,56,128,4,36,57,128,4,37,52,10,39,66,39,70,39,74,39,78,39,82,39,86,39,90,39,94,39,98,39,102,48,128,4,38,49,128,4,39,50,128,4,40,51,128,4,41,52,128,4,42,53,128,4,43,54,128,4,44,55,128,4,45,56,128,4,46,57,128,4,47,53,10,39,128,39,132,39,136,39,140,39,144,39,148,39,152,39,156,39,160,39,164,48,128,4,144,49,128,4,2,50,128,4,3,51,128,4,4,52,128,4,5,53,128,4,6,54,128,4,7,55,128,4,8,56,128,4,9,57,128,4,10,54,10,39,190,39,194,39,198,39,202,39,206,39,210,39,214,39,218,39,222,39,226,48,128,4,11,49,128,4,12,50,128,4,14,51,128,246,196,52,128,246,197,53,128,4,48,54,128,4,49,55,128,4,50,56,128,4,51,57,128,4,52,55,10,39,252,40,0,40,4,40,8,40,12,40,16,40,20,40,24,40,28,40,32,48,128,4,53,49,128,4,81,50,128,4,54,51,128,4,55,52,128,4,56,53,128,4,57,54,128,4,58,55,128,4,59,56,128,4,60,57,128,4,61,56,10,40,58,40,62,40,66,40,70,40,74,40,78,40,82,40,86,40,90,40,94,48,128,4,62,49,128,4,63,50,128,4,64,51,128,4,65,52,128,4,66,53,128,4,67,54,128,4,68,55,128,4,69,56,128,4,70,57,128,4,71,57,10,40,120,40,124,40,128,40,132,40,136,40,140,40,144,40,148,40,152,40,156,48,128,4,72,49,128,4,73,50,128,4,74,51,128,4,75,52,128,4,76,53,128,4,77,54,128,4,78,55,128,4,79,56,128,4,145,57,128,4,82,49,4,40,170,40,232,40,237,41,7,48,10,40,192,40,196,40,200,40,204,40,208,40,212,40,216,40,220,40,224,40,228,48,128,4,83,49,128,4,84,50,128,4,85,51,128,4,86,52,128,4,87,53,128,4,88,54,128,4,89,55,128,4,90,56,128,4,91,57,128,4,92,177,48,128,4,94,52,4,40,247,40,251,40,255,41,3,53,128,4,15,54,128,4,98,55,128,4,114,56,128,4,116,57,5,41,19,41,23,41,27,41,31,41,35,50,128,246,198,51,128,4,95,52,128,4,99,53,128,4,115,54,128,4,117,56,2,41,45,41,59,51,2,41,51,41,55,49,128,246,199,50,128,246,200,180,54,128,4,217,178,185,57,128,32,14,179,48,2,41,77,41,81,48,128,32,15,49,128,32,13,181,55,7,41,102,41,172,42,237,43,58,44,15,44,108,44,179,51,2,41,108,41,122,56,2,41,114,41,118,49,128,6,106,56,128,6,12,57,8,41,140,41,144,41,148,41,152,41,156,41,160,41,164,41,168,50,128,6,96,51,128,6,97,52,128,6,98,53,128,6,99,54,128,6,100,55,128,6,101,56,128,6,102,57,128,6,103,52,7,41,188,41,220,42,26,42,88,42,120,42,176,42,232,48,5,41,200,41,204,41,208,41,212,41,216,48,128,6,104,49,128,6,105,51,128,6,27,55,128,6,31,57,128,6,33,49,10,41,242,41,246,41,250,41,254,42,2,42,6,42,10,42,14,42,18,42,22,48,128,6,34,49,128,6,35,50,128,6,36,51,128,6,37,52,128,6,38,53,128,6,39,54,128,6,40,55,128,6,41,56,128,6,42,57,128,6,43,50,10,42,48,42,52,42,56,42,60,42,64,42,68,42,72,42,76,42,80,42,84,48,128,6,44,49,128,6,45,50,128,6,46,51,128,6,47,52,128,6,48,53,128,6,49,54,128,6,50,55,128,6,51,56,128,6,52,57,128,6,53,51,5,42,100,42,104,42,108,42,112,42,116,48,128,6,54,49,128,6,55,50,128,6,56,51,128,6,57,52,128,6,58,52,9,42,140,42,144,42,148,42,152,42,156,42,160,42,164,42,168,42,172,48,128,6,64,49,128,6,65,50,128,6,66,51,128,6,67,52,128,6,68,53,128,6,69,54,128,6,70,56,128,6,72,57,128,6,73,53,9,42,196,42,200,42,204,42,208,42,212,42,216,42,220,42,224,42,228,48,128,6,74,49,128,6,75,50,128,6,76,51,128,6,77,52,128,6,78,53,128,6,79,54,128,6,80,55,128,6,81,56,128,6,82,183,48,128,6,71,53,3,42,245,43,21,43,53,48,5,43,1,43,5,43,9,43,13,43,17,53,128,6,164,54,128,6,126,55,128,6,134,56,128,6,152,57,128,6,175,49,5,43,33,43,37,43,41,43,45,43,49,49,128,6,121,50,128,6,136,51,128,6,145,52,128,6,186,57,128,6,210,179,52,128,6,213,54,7,43,74,43,79,43,84,43,89,43,127,43,189,43,251,179,54,128,32,170,180,53,128,5,190,181,56,128,5,195,54,6,43,103,43,107,43,111,43,115,43,119,43,123,52,128,5,208,53,128,5,209,54,128,5,210,55,128,5,211,56,128,5,212,57,128,5,213,55,10,43,149,43,153,43,157,43,161,43,165,43,169,43,173,43,177,43,181,43,185,48,128,5,214,49,128,5,215,50,128,5,216,51,128,5,217,52,128,5,218,53,128,5,219,54,128,5,220,55,128,5,221,56,128,5,222,57,128,5,223,56,10,43,211,43,215,43,219,43,223,43,227,43,231,43,235,43,239,43,243,43,247,48,128,5,224,49,128,5,225,50,128,5,226,51,128,5,227,52,128,5,228,53,128,5,229,54,128,5,230,55,128,5,231,56,128,5,232,57,128,5,233,57,3,44,3,44,7,44,11,48,128,5,234,52,128,251,42,53,128,251,43,55,4,44,25,44,39,44,59,44,64,48,2,44,31,44,35,48,128,251,75,53,128,251,31,49,3,44,47,44,51,44,55,54,128,5,240,55,128,5,241,56,128,5,242,178,51,128,251,53,57,7,44,80,44,84,44,88,44,92,44,96,44,100,44,104,51,128,5,180,52,128,5,181,53,128,5,182,54,128,5,187,55,128,5,184,56,128,5,183,57,128,5,176,56,3,44,116,44,160,44,165,48,7,44,132,44,136,44,140,44,144,44,148,44,152,44,156,48,128,5,178,49,128,5,177,50,128,5,179,51,128,5,194,52,128,5,193,54,128,5,185,55,128,5,188,179,57,128,5,189,52,2,44,171,44,175,49,128,5,191,50,128,5,192,185,178,57,128,2,188,54,3,44,193,44,252,45,3,49,4,44,203,44,219,44,225,44,246,50,2,44,209,44,214,180,56,128,33,5,184,57,128,33,19,179,181,50,128,33,22,181,55,3,44,234,44,238,44,242,51,128,32,44,52,128,32,45,53,128,32,46,182,182,52,128,32,12,179,177,182,55,128,6,109,180,185,179,55,128,2,189,103,2,45,16,45,23,242,225,246,101,128,0,224,117,2,45,29,45,38,234,225,242,225,244,105,128,10,133,242,237,245,235,232,105,128,10,5,104,2,45,53,45,63,233,242,225,231,225,238,97,128,48,66,239,239,235,225,226,239,246,101,128,30,163,105,7,45,90,45,115,45,122,45,134,45,159,45,175,45,255,98,2,45,96,45,105,229,238,231,225,236,105,128,9,144,239,240,239,237,239,230,111,128,49,30,228,229,246,97,128,9,16,229,227,249,242,233,236,236,233,99,128,4,213,231,117,2,45,141,45,150,234,225,242,225,244,105,128,10,144,242,237,245,235,232,105,128,10,16,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,72,110,5,45,187,45,196,45,210,45,226,45,241,225,242,225,226,233,99,128,6,57,230,233,238,225,236,225,242,225,226,233,99,128,254,202,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,203,237,229,228,233,225,236,225,242,225,226,233,99,128,254,204,246,229,242,244,229,228,226,242,229,246,101,128,2,3,246,239,247,229,236,243,233,231,110,3,46,15,46,25,46,32,226,229,238,231,225,236,105,128,9,200,228,229,246,97,128,9,72,231,245,234,225,242,225,244,105,128,10,200,107,2,46,49,46,73,225,244,225,235,225,238,97,129,48,162,46,61,232,225,236,230,247,233,228,244,104,128,255,113,239,242,229,225,110,128,49,79,108,3,46,89,47,145,47,154,101,2,46,95,47,140,102,136,5,208,46,115,46,124,46,139,46,153,46,242,47,0,47,111,47,125,225,242,225,226,233,99,128,6,39,228,225,231,229,243,232,232,229,226,242,229,119,128,251,48,230,233,238,225,236,225,242,225,226,233,99,128,254,142,104,2,46,159,46,234,225,237,250,97,2,46,168,46,201,225,226,239,246,101,2,46,178,46,187,225,242,225,226,233,99,128,6,35,230,233,238,225,236,225,242,225,226,233,99,128,254,132,226,229,236,239,119,2,46,211,46,220,225,242,225,226,233,99,128,6,37,230,233,238,225,236,225,242,225,226,233,99,128,254,136,229,226,242,229,119,128,5,208,236,225,237,229,228,232,229,226,242,229,119,128,251,79,237,97,2,47,7,47,43,228,228,225,225,226,239,246,101,2,47,20,47,29,225,242,225,226,233,99,128,6,34,230,233,238,225,236,225,242,225,226,233,99,128,254,130,235,243,245,242,97,4,47,57,47,66,47,80,47,96,225,242,225,226,233,99,128,6,73,230,233,238,225,236,225,242,225,226,233,99,128,254,240,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,243,237,229,228,233,225,236,225,242,225,226,233,99,128,254,244,240,225,244,225,232,232,229,226,242,229,119,128,251,46,241,225,237,225,244,243,232,229,226,242,229,119,128,251,47,240,104,128,33,53,236,229,241,245,225,108,128,34,76,240,232,97,129,3,177,47,162,244,239,238,239,115,128,3,172,109,4,47,180,47,188,47,199,47,233,225,227,242,239,110,128,1,1,239,238,239,243,240,225,227,101,128,255,65,240,229,242,243,225,238,100,130,0,38,47,213,47,225,237,239,238,239,243,240,225,227,101,128,255,6,243,237,225,236,108,128,247,38,243,241,245,225,242,101,128,51,194,110,4,47,252,48,7,48,129,48,139,226,239,240,239,237,239,230,111,128,49,34,103,4,48,17,48,28,48,42,48,121,226,239,240,239,237,239,230,111,128,49,36,235,232,225,238,235,232,245,244,232,225,105,128,14,90,236,101,131,34,32,48,53,48,106,48,113,226,242,225,227,235,229,116,2,48,65,48,85,236,229,230,116,129,48,8,48,74,246,229,242,244,233,227,225,108,128,254,63,242,233,231,232,116,129,48,9,48,95,246,229,242,244,233,227,225,108,128,254,64,236,229,230,116,128,35,41,242,233,231,232,116,128,35,42,243,244,242,239,109,128,33,43,239,244,229,236,229,233,97,128,3,135,117,2,48,145,48,157,228,225,244,244,225,228,229,246,97,128,9,82,243,246,225,242,97,3,48,169,48,179,48,186,226,229,238,231,225,236,105,128,9,130,228,229,246,97,128,9,2,231,245,234,225,242,225,244,105,128,10,130,239,231,239,238,229,107,128,1,5,112,3,48,214,48,238,49,12,97,2,48,220,48,232,225,244,239,243,241,245,225,242,101,128,51,0,242,229,110,128,36,156,239,243,244,242,239,240,232,101,2,48,251,49,6,225,242,237,229,238,233,225,110,128,5,90,237,239,100,128,2,188,112,2,49,18,49,23,236,101,128,248,255,242,111,2,49,30,49,38,225,227,232,229,115,128,34,80,120,2,49,44,49,64,229,241,245,225,108,129,34,72,49,54,239,242,233,237,225,231,101,128,34,82,233,237,225,244,229,236,249,229,241,245,225,108,128,34,69,114,4,49,89,49,116,49,120,49,165,225,229,97,2,49,97,49,107,229,235,239,242,229,225,110,128,49,142,235,239,242,229,225,110,128,49,141,99,128,35,18,105,2,49,126,49,140,231,232,244,232,225,236,230,242,233,238,103,128,30,154,238,103,130,0,229,49,149,49,157,225,227,245,244,101,128,1,251,226,229,236,239,119,128,30,1,242,239,119,8,49,185,49,192,50,65,50,131,50,181,50,236,51,3,51,78,226,239,244,104,128,33,148,100,3,49,200,49,239,50,30,225,243,104,4,49,212,49,219,49,226,49,234,228,239,247,110,128,33,227,236,229,230,116,128,33,224,242,233,231,232,116,128,33,226,245,112,128,33,225,226,108,5,49,252,50,3,50,10,50,17,50,25,226,239,244,104,128,33,212,228,239,247,110,128,33,211,236,229,230,116,128,33,208,242,233,231,232,116,128,33,210,245,112,128,33,209,239,247,110,131,33,147,50,42,50,49,50,57,236,229,230,116,128,33,153,242,233,231,232,116,128,33,152,247,232,233,244,101,128,33,233,104,2,50,71,50,122,229,225,100,4,50,83,50,93,50,103,50,114,228,239,247,238,237,239,100,128,2,197,236,229,230,244,237,239,100,128,2,194,242,233,231,232,244,237,239,100,128,2,195,245,240,237,239,100,128,2,196,239,242,233,250,229,120,128,248,231,236,229,230,116,131,33,144,50,144,50,161,50,173,228,226,108,129,33,208,50,152,243,244,242,239,235,101,128,33,205,239,246,229,242,242,233,231,232,116,128,33,198,247,232,233,244,101,128,33,230,242,233,231,232,116,132,33,146,50,197,50,209,50,217,50,228,228,226,236,243,244,242,239,235,101,128,33,207,232,229,225,246,121,128,39,158,239,246,229,242,236,229,230,116,128,33,196,247,232,233,244,101,128,33,232,244,225,98,2,50,244,50,251,236,229,230,116,128,33,228,242,233,231,232,116,128,33,229,245,112,132,33,145,51,16,51,44,51,62,51,70,100,2,51,22,51,34,110,129,33,149,51,28,226,243,101,128,33,168,239,247,238,226,225,243,101,128,33,168,236,229,230,116,129,33,150,51,53,239,230,228,239,247,110,128,33,197,242,233,231,232,116,128,33,151,247,232,233,244,101,128,33,231,246,229,242,244,229,120,128,248,230,115,5,51,99,51,175,51,220,52,47,52,57,99,2,51,105,51,157,233,105,2,51,112,51,135,227,233,242,227,245,109,129,0,94,51,123,237,239,238,239,243,240,225,227,101,128,255,62,244,233,236,228,101,129,0,126,51,145,237,239,238,239,243,240,225,227,101,128,255,94,242,233,240,116,129,2,81,51,166,244,245,242,238,229,100,128,2,82,237,225,236,108,2,51,184,51,195,232,233,242,225,231,225,238,97,128,48,65,235,225,244,225,235,225,238,97,129,48,161,51,208,232,225,236,230,247,233,228,244,104,128,255,103,244,229,242,233,115,2,51,230,52,43,107,131,0,42,51,240,52,12,52,35,97,2,51,246,52,4,236,244,239,238,229,225,242,225,226,233,99,128,6,109,242,225,226,233,99,128,6,109,109,2,52,18,52,24,225,244,104,128,34,23,239,238,239,243,240,225,227,101,128,255,10,243,237,225,236,108,128,254,97,109,128,32,66,245,240,229,242,233,239,114,128,246,233,249,237,240,244,239,244,233,227,225,236,236,249,229,241,245,225,108,128,34,67,116,132,0,64,52,89,52,96,52,108,52,116,233,236,228,101,128,0,227,237,239,238,239,243,240,225,227,101,128,255,32,243,237,225,236,108,128,254,107,245,242,238,229,100,128,2,80,117,6,52,138,52,163,52,170,52,195,52,215,52,231,98,2,52,144,52,153,229,238,231,225,236,105,128,9,148,239,240,239,237,239,230,111,128,49,32,228,229,246,97,128,9,20,231,117,2,52,177,52,186,234,225,242,225,244,105,128,10,148,242,237,245,235,232,105,128,10,20,236,229,238,231,244,232,237,225,242,235,226,229,238,231,225,236,105,128,9,215,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,76,246,239,247,229,236,243,233,231,110,3,52,247,53,1,53,8,226,229,238,231,225,236,105,128,9,204,228,229,246,97,128,9,76,231,245,234,225,242,225,244,105,128,10,204,246,225,231,242,225,232,225,228,229,246,97,128,9,61,121,2,53,39,53,51,226,225,242,237,229,238,233,225,110,128,5,97,233,110,130,5,226,53,60,53,75,225,236,244,239,238,229,232,229,226,242,229,119,128,251,32,232,229,226,242,229,119,128,5,226,98,144,0,98,53,120,53,255,54,10,54,19,54,44,55,85,55,147,55,220,57,146,57,158,57,201,57,209,57,219,59,89,59,113,59,122,97,7,53,136,53,146,53,170,53,177,53,202,53,226,53,237,226,229,238,231,225,236,105,128,9,172,227,235,243,236,225,243,104,129,0,92,53,158,237,239,238,239,243,240,225,227,101,128,255,60,228,229,246,97,128,9,44,231,117,2,53,184,53,193,234,225,242,225,244,105,128,10,172,242,237,245,235,232,105,128,10,44,104,2,53,208,53,218,233,242,225,231,225,238,97,128,48,112,244,244,232,225,105,128,14,63,235,225,244,225,235,225,238,97,128,48,208,114,129,0,124,53,243,237,239,238,239,243,240,225,227,101,128,255,92,226,239,240,239,237,239,230,111,128,49,5,227,233,242,227,236,101,128,36,209,228,239,116,2,54,27,54,36,225,227,227,229,238,116,128,30,3,226,229,236,239,119,128,30,5,101,6,54,58,54,79,54,102,54,244,54,255,55,11,225,237,229,228,243,233,248,244,229,229,238,244,232,238,239,244,229,115,128,38,108,99,2,54,85,54,92,225,245,243,101,128,34,53,249,242,233,236,236,233,99,128,4,49,104,5,54,114,54,123,54,137,54,167,54,226,225,242,225,226,233,99,128,6,40,230,233,238,225,236,225,242,225,226,233,99,128,254,144,105,2,54,143,54,158,238,233,244,233,225,236,225,242,225,226,233,99,128,254,145,242,225,231,225,238,97,128,48,121,237,101,2,54,174,54,187,228,233,225,236,225,242,225,226,233,99,128,254,146,229,237,105,2,54,195,54,210,238,233,244,233,225,236,225,242,225,226,233,99,128,252,159,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,8,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,109,235,225,244,225,235,225,238,97,128,48,217,238,225,242,237,229,238,233,225,110,128,5,98,116,132,5,209,55,23,55,43,55,63,55,72,97,129,3,178,55,29,243,249,237,226,239,236,231,242,229,229,107,128,3,208,228,225,231,229,243,104,129,251,49,55,54,232,229,226,242,229,119,128,251,49,232,229,226,242,229,119,128,5,209,242,225,230,229,232,229,226,242,229,119,128,251,76,104,2,55,91,55,141,97,3,55,99,55,109,55,116,226,229,238,231,225,236,105,128,9,173,228,229,246,97,128,9,45,231,117,2,55,123,55,132,234,225,242,225,244,105,128,10,173,242,237,245,235,232,105,128,10,45,239,239,107,128,2,83,105,5,55,159,55,170,55,181,55,195,55,209,232,233,242,225,231,225,238,97,128,48,115,235,225,244,225,235,225,238,97,128,48,211,236,225,226,233,225,236,227,236,233,227,107,128,2,152,238,228,233,231,245,242,237,245,235,232,105,128,10,2,242,245,243,241,245,225,242,101,128,51,49,108,3,55,228,57,129,57,140,97,2,55,234,57,124,227,107,6,55,249,56,2,56,39,56,188,56,243,57,39,227,233,242,227,236,101,128,37,207,100,2,56,8,56,17,233,225,237,239,238,100,128,37,198,239,247,238,240,239,233,238,244,233,238,231,244,242,233,225,238,231,236,101,128,37,188,108,2,56,45,56,148,101,2,56,51,56,87,230,244,240,239,233,238,244,233,238,103,2,56,66,56,76,240,239,233,238,244,229,114,128,37,196,244,242,233,225,238,231,236,101,128,37,192,238,244,233,227,245,236,225,242,226,242,225,227,235,229,116,2,56,107,56,127,236,229,230,116,129,48,16,56,116,246,229,242,244,233,227,225,108,128,254,59,242,233,231,232,116,129,48,17,56,137,246,229,242,244,233,227,225,108,128,254,60,239,247,229,114,2,56,157,56,172,236,229,230,244,244,242,233,225,238,231,236,101,128,37,227,242,233,231,232,244,244,242,233,225,238,231,236,101,128,37,226,114,2,56,194,56,205,229,227,244,225,238,231,236,101,128,37,172,233,231,232,244,240,239,233,238,244,233,238,103,2,56,222,56,232,240,239,233,238,244,229,114,128,37,186,244,242,233,225,238,231,236,101,128,37,182,115,3,56,251,57,25,57,33,109,2,57,1,57,13,225,236,236,243,241,245,225,242,101,128,37,170,233,236,233,238,231,230,225,227,101,128,38,59,241,245,225,242,101,128,37,160,244,225,114,128,38,5,245,240,112,2,57,47,57,85,229,114,2,57,54,57,69,236,229,230,244,244,242,233,225,238,231,236,101,128,37,228,242,233,231,232,244,244,242,233,225,238,231,236,101,128,37,229,239,233,238,244,233,238,103,2,57,97,57,113,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,180,244,242,233,225,238,231,236,101,128,37,178,238,107,128,36,35,233,238,229,226,229,236,239,119,128,30,7,239,227,107,128,37,136,237,239,238,239,243,240,225,227,101,128,255,66,111,3,57,166,57,179,57,190,226,225,233,237,225,233,244,232,225,105,128,14,26,232,233,242,225,231,225,238,97,128,48,124,235,225,244,225,235,225,238,97,128,48,220,240,225,242,229,110,128,36,157,241,243,241,245,225,242,101,128,51,195,114,4,57,229,58,223,59,40,59,79,225,99,2,57,236,58,130,101,3,57,244,57,249,58,61,229,120,128,248,244,236,229,230,116,133,0,123,58,10,58,15,58,37,58,45,58,50,226,116,128,248,243,109,2,58,21,58,26,233,100,128,248,242,239,238,239,243,240,225,227,101,128,255,91,243,237,225,236,108,128,254,91,244,112,128,248,241,246,229,242,244,233,227,225,108,128,254,55,242,233,231,232,116,133,0,125,58,79,58,84,58,106,58,114,58,119,226,116,128,248,254,109,2,58,90,58,95,233,100,128,248,253,239,238,239,243,240,225,227,101,128,255,93,243,237,225,236,108,128,254,92,244,112,128,248,252,246,229,242,244,233,227,225,108,128,254,56,235,229,116,2,58,138,58,180,236,229,230,116,132,0,91,58,153,58,158,58,163,58,175,226,116,128,248,240,229,120,128,248,239,237,239,238,239,243,240,225,227,101,128,255,59,244,112,128,248,238,242,233,231,232,116,132,0,93,58,196,58,201,58,206,58,218,226,116,128,248,251,229,120,128,248,250,237,239,238,239,243,240,225,227,101,128,255,61,244,112,128,248,249,229,246,101,131,2,216,58,235,58,246,58,252,226,229,236,239,247,227,237,98,128,3,46,227,237,98,128,3,6,233,238,246,229,242,244,229,100,3,59,11,59,22,59,28,226,229,236,239,247,227,237,98,128,3,47,227,237,98,128,3,17,228,239,245,226,236,229,227,237,98,128,3,97,233,228,231,101,2,59,49,59,60,226,229,236,239,247,227,237,98,128,3,42,233,238,246,229,242,244,229,228,226,229,236,239,247,227,237,98,128,3,58,239,235,229,238,226,225,114,128,0,166,115,2,59,95,59,103,244,242,239,235,101,128,1,128,245,240,229,242,233,239,114,128,246,234,244,239,240,226,225,114,128,1,131,117,3,59,130,59,141,59,152,232,233,242,225,231,225,238,97,128,48,118,235,225,244,225,235,225,238,97,128,48,214,236,108,2,59,159,59,189,229,116,130,32,34,59,168,59,178,233,238,246,229,242,243,101,128,37,216,239,240,229,242,225,244,239,114,128,34,25,243,229,249,101,128,37,206,99,143,0,99,59,230,60,179,60,190,60,254,61,29,61,122,63,33,64,17,64,117,64,166,67,158,67,166,67,176,67,188,67,221,97,9,59,250,60,5,60,15,60,22,60,29,60,54,60,64,60,116,60,125,225,242,237,229,238,233,225,110,128,5,110,226,229,238,231,225,236,105,128,9,154,227,245,244,101,128,1,7,228,229,246,97,128,9,26,231,117,2,60,36,60,45,234,225,242,225,244,105,128,10,154,242,237,245,235,232,105,128,10,26,236,243,241,245,225,242,101,128,51,136,238,228,242,225,226,233,238,228,117,4,60,82,60,92,60,98,60,105,226,229,238,231,225,236,105,128,9,129,227,237,98,128,3,16,228,229,246,97,128,9,1,231,245,234,225,242,225,244,105,128,10,129,240,243,236,239,227,107,128,33,234,114,3,60,133,60,139,60,165,229,239,102,128,33,5,239,110,130,2,199,60,148,60,159,226,229,236,239,247,227,237,98,128,3,44,227,237,98,128,3,12,242,233,225,231,229,242,229,244,245,242,110,128,33,181,226,239,240,239,237,239,230,111,128,49,24,99,4,60,200,60,207,60,226,60,248,225,242,239,110,128,1,13,229,228,233,236,236,97,129,0,231,60,218,225,227,245,244,101,128,30,9,233,242,99,2,60,234,60,239,236,101,128,36,210,245,237,230,236,229,120,128,1,9,245,242,108,128,2,85,100,2,61,4,61,20,239,116,129,1,11,61,11,225,227,227,229,238,116,128,1,11,243,241,245,225,242,101,128,51,197,101,2,61,35,61,51,228,233,236,236,97,129,0,184,61,45,227,237,98,128,3,39,238,116,132,0,162,61,64,61,88,61,100,61,111,105,2,61,70,61,78,231,242,225,228,101,128,33,3,238,230,229,242,233,239,114,128,246,223,237,239,238,239,243,240,225,227,101,128,255,224,239,236,228,243,244,249,236,101,128,247,162,243,245,240,229,242,233,239,114,128,246,224,104,5,61,134,61,197,61,208,62,136,62,228,97,4,61,144,61,155,61,165,61,172,225,242,237,229,238,233,225,110,128,5,121,226,229,238,231,225,236,105,128,9,155,228,229,246,97,128,9,27,231,117,2,61,179,61,188,234,225,242,225,244,105,128,10,155,242,237,245,235,232,105,128,10,27,226,239,240,239,237,239,230,111,128,49,20,101,6,61,222,61,242,62,10,62,78,62,90,62,111,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,189,99,2,61,248,62,0,235,237,225,242,107,128,39,19,249,242,233,236,236,233,99,128,4,71,100,2,62,16,62,60,229,243,227,229,238,228,229,114,2,62,29,62,49,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,191,227,249,242,233,236,236,233,99,128,4,183,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,245,232,225,242,237,229,238,233,225,110,128,5,115,235,232,225,235,225,243,243,233,225,238,227,249,242,233,236,236,233,99,128,4,204,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,185,105,129,3,199,62,142,229,245,227,104,4,62,155,62,190,62,205,62,214,97,2,62,161,62,176,227,233,242,227,236,229,235,239,242,229,225,110,128,50,119,240,225,242,229,238,235,239,242,229,225,110,128,50,23,227,233,242,227,236,229,235,239,242,229,225,110,128,50,105,235,239,242,229,225,110,128,49,74,240,225,242,229,238,235,239,242,229,225,110,128,50,9,111,2,62,234,63,28,227,104,3,62,243,63,9,63,19,225,110,2,62,250,63,2,231,244,232,225,105,128,14,10,244,232,225,105,128,14,8,233,238,231,244,232,225,105,128,14,9,239,229,244,232,225,105,128,14,12,239,107,128,1,136,105,2,63,39,63,141,229,245,99,5,63,53,63,88,63,103,63,112,63,126,97,2,63,59,63,74,227,233,242,227,236,229,235,239,242,229,225,110,128,50,118,240,225,242,229,238,235,239,242,229,225,110,128,50,22,227,233,242,227,236,229,235,239,242,229,225,110,128,50,104,235,239,242,229,225,110,128,49,72,240,225,242,229,238,235,239,242,229,225,110,128,50,8,245,240,225,242,229,238,235,239,242,229,225,110,128,50,28,242,99,2,63,148,63,243,236,101,132,37,203,63,161,63,172,63,177,63,201,237,245,236,244,233,240,236,121,128,34,151,239,116,128,34,153,112,2,63,183,63,189,236,245,115,128,34,149,239,243,244,225,236,237,225,242,107,128,48,54,247,233,244,104,2,63,210,63,226,236,229,230,244,232,225,236,230,226,236,225,227,107,128,37,208,242,233,231,232,244,232,225,236,230,226,236,225,227,107,128,37,209,245,237,230,236,229,120,130,2,198,64,0,64,11,226,229,236,239,247,227,237,98,128,3,45,227,237,98,128,3,2,108,3,64,25,64,31,64,85,229,225,114,128,35,39,233,227,107,4,64,43,64,54,64,63,64,73,225,236,246,229,239,236,225,114,128,1,194,228,229,238,244,225,108,128,1,192,236,225,244,229,242,225,108,128,1,193,242,229,244,242,239,230,236,229,120,128,1,195,245,98,129,38,99,64,92,243,245,233,116,2,64,101,64,109,226,236,225,227,107,128,38,99,247,232,233,244,101,128,38,103,109,3,64,125,64,139,64,150,227,245,226,229,228,243,241,245,225,242,101,128,51,164,239,238,239,243,240,225,227,101,128,255,67,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,160,111,8,64,184,64,195,65,26,65,224,66,253,67,28,67,135,67,144,225,242,237,229,238,233,225,110,128,5,129,236,239,110,131,0,58,64,207,64,232,64,251,237,239,110,2,64,215,64,223,229,244,225,242,121,128,32,161,239,243,240,225,227,101,128,255,26,115,2,64,238,64,244,233,231,110,128,32,161,237,225,236,108,128,254,85,244,242,233,225,238,231,245,236,225,114,2,65,10,65,20,232,225,236,230,237,239,100,128,2,209,237,239,100,128,2,208,109,2,65,32,65,217,237,97,134,0,44,65,49,65,113,65,124,65,136,65,166,65,189,97,3,65,57,65,83,65,91,226,239,246,101,2,65,66,65,72,227,237,98,128,3,19,242,233,231,232,244,227,237,98,128,3,21,227,227,229,238,116,128,246,195,114,2,65,97,65,104,225,226,233,99,128,6,12,237,229,238,233,225,110,128,5,93,233,238,230,229,242,233,239,114,128,246,225,237,239,238,239,243,240,225,227,101,128,255,12,242,229,246,229,242,243,229,100,2,65,149,65,160,225,226,239,246,229,227,237,98,128,3,20,237,239,100,128,2,189,115,2,65,172,65,179,237,225,236,108,128,254,80,245,240,229,242,233,239,114,128,246,226,244,245,242,238,229,100,2,65,200,65,211,225,226,239,246,229,227,237,98,128,3,18,237,239,100,128,2,187,240,225,243,115,128,38,60,110,2,65,230,65,239,231,242,245,229,238,116,128,34,69,116,2,65,245,66,3,239,245,242,233,238,244,229,231,242,225,108,128,34,46,242,239,108,142,35,3,66,37,66,43,66,58,66,73,66,117,66,162,66,176,66,181,66,186,66,191,66,197,66,202,66,243,66,248,193,195,75,128,0,6,66,2,66,49,66,54,197,76,128,0,7,83,128,0,8,67,2,66,64,66,69,193,78,128,0,24,82,128,0,13,68,3,66,81,66,107,66,112,67,4,66,91,66,95,66,99,66,103,49,128,0,17,50,128,0,18,51,128,0,19,52,128,0,20,197,76,128,0,127,204,69,128,0,16,69,5,66,129,66,133,66,138,66,143,66,148,77,128,0,25,206,81,128,0,5,207,84,128,0,4,211,67,128,0,27,84,2,66,154,66,158,66,128,0,23,88,128,0,3,70,2,66,168,66,172,70,128,0,12,83,128,0,28,199,83,128,0,29,200,84,128,0,9,204,70,128,0,10,206,193,75,128,0,21,210,83,128,0,30,83,5,66,214,66,218,66,228,66,233,66,238,73,128,0,15,79,129,0,14,66,224,84,128,0,2,212,88,128,0,1,213,66,128,0,26,217,78,128,0,22,213,83,128,0,31,214,84,128,0,11,240,249,242,233,231,232,116,129,0,169,67,9,115,2,67,15,67,21,225,238,115,128,248,233,229,242,233,102,128,246,217,114,2,67,34,67,118,238,229,242,226,242,225,227,235,229,116,2,67,49,67,83,236,229,230,116,130,48,12,67,60,67,72,232,225,236,230,247,233,228,244,104,128,255,98,246,229,242,244,233,227,225,108,128,254,65,242,233,231,232,116,130,48,13,67,95,67,107,232,225,236,230,247,233,228,244,104,128,255,99,246,229,242,244,233,227,225,108,128,254,66,240,239,242,225,244,233,239,238,243,241,245,225,242,101,128,51,127,243,241,245,225,242,101,128,51,199,246,229,242,235,231,243,241,245,225,242,101,128,51,198,240,225,242,229,110,128,36,158,242,245,250,229,233,242,111,128,32,162,243,244,242,229,244,227,232,229,100,128,2,151,245,114,2,67,195,67,213,236,121,2,67,202,67,208,225,238,100,128,34,207,239,114,128,34,206,242,229,238,227,121,128,0,164,249,114,4,67,232,67,240,67,247,67,255,194,242,229,246,101,128,246,209,198,236,229,120,128,246,210,226,242,229,246,101,128,246,212,230,236,229,120,128,246,213,100,146,0,100,68,46,69,184,70,208,71,12,71,188,72,142,72,204,73,133,73,146,73,155,73,181,73,206,73,215,75,26,75,34,75,45,75,65,75,93,97,11,68,70,68,81,68,91,68,163,68,226,68,237,68,248,69,61,69,123,69,129,69,159,225,242,237,229,238,233,225,110,128,5,100,226,229,238,231,225,236,105,128,9,166,100,5,68,103,68,112,68,118,68,132,68,148,225,242,225,226,233,99,128,6,54,229,246,97,128,9,38,230,233,238,225,236,225,242,225,226,233,99,128,254,190,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,191,237,229,228,233,225,236,225,242,225,226,233,99,128,254,192,103,3,68,171,68,188,68,202,229,243,104,129,5,188,68,179,232,229,226,242,229,119,128,5,188,231,229,114,129,32,32,68,196,228,226,108,128,32,33,117,2,68,208,68,217,234,225,242,225,244,105,128,10,166,242,237,245,235,232,105,128,10,38,232,233,242,225,231,225,238,97,128,48,96,235,225,244,225,235,225,238,97,128,48,192,108,3,69,0,69,9,69,47,225,242,225,226,233,99,128,6,47,229,116,130,5,211,69,18,69,38,228,225,231,229,243,104,129,251,51,69,29,232,229,226,242,229,119,128,251,51,232,229,226,242,229,119,128,5,211,230,233,238,225,236,225,242,225,226,233,99,128,254,170,237,237,97,3,69,71,69,80,69,92,225,242,225,226,233,99,128,6,79,236,239,247,225,242,225,226,233,99,128,6,79,244,225,238,97,2,69,101,69,115,236,244,239,238,229,225,242,225,226,233,99,128,6,76,242,225,226,233,99,128,6,76,238,228,97,128,9,100,242,231,97,2,69,137,69,146,232,229,226,242,229,119,128,5,167,236,229,230,244,232,229,226,242,229,119,128,5,167,243,233,225,240,238,229,245,237,225,244,225,227,249,242,233,236,236,233,227,227,237,98,128,4,133,98,3,69,192,70,189,70,199,108,9,69,212,69,220,70,77,70,85,70,101,70,112,70,130,70,144,70,155,199,242,225,246,101,128,246,211,97,2,69,226,70,27,238,231,236,229,226,242,225,227,235,229,116,2,69,242,70,6,236,229,230,116,129,48,10,69,251,246,229,242,244,233,227,225,108,128,254,61,242,233,231,232,116,129,48,11,70,16,246,229,242,244,233,227,225,108,128,254,62,114,2,70,33,70,54,227,232,233,238,246,229,242,244,229,228,226,229,236,239,247,227,237,98,128,3,43,242,239,119,2,70,62,70,69,236,229,230,116,128,33,212,242,233,231,232,116,128,33,210,228,225,238,228,97,128,9,101,231,242,225,246,101,129,246,214,70,95,227,237,98,128,3,15,233,238,244,229,231,242,225,108,128,34,44,236,239,247,236,233,238,101,129,32,23,70,124,227,237,98,128,3,51,239,246,229,242,236,233,238,229,227,237,98,128,3,63,240,242,233,237,229,237,239,100,128,2,186,246,229,242,244,233,227,225,108,2,70,168,70,174,226,225,114,128,32,22,236,233,238,229,225,226,239,246,229,227,237,98,128,3,14,239,240,239,237,239,230,111,128,49,9,243,241,245,225,242,101,128,51,200,99,4,70,218,70,225,70,234,71,5,225,242,239,110,128,1,15,229,228,233,236,236,97,128,30,17,233,242,99,2,70,242,70,247,236,101,128,36,211,245,237,230,236,229,248,226,229,236,239,119,128,30,19,242,239,225,116,128,1,17,100,4,71,22,71,103,71,113,71,164,97,4,71,32,71,42,71,49,71,74,226,229,238,231,225,236,105,128,9,161,228,229,246,97,128,9,33,231,117,2,71,56,71,65,234,225,242,225,244,105,128,10,161,242,237,245,235,232,105,128,10,33,108,2,71,80,71,89,225,242,225,226,233,99,128,6,136,230,233,238,225,236,225,242,225,226,233,99,128,251,137,228,232,225,228,229,246,97,128,9,92,232,97,3,71,122,71,132,71],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+20480);allocate([139,226,229,238,231,225,236,105,128,9,162,228,229,246,97,128,9,34,231,117,2,71,146,71,155,234,225,242,225,244,105,128,10,162,242,237,245,235,232,105,128,10,34,239,116,2,71,171,71,180,225,227,227,229,238,116,128,30,11,226,229,236,239,119,128,30,13,101,8,71,206,72,3,72,10,72,35,72,45,72,56,72,101,72,137,99,2,71,212,71,249,233,237,225,236,243,229,240,225,242,225,244,239,114,2,71,230,71,239,225,242,225,226,233,99,128,6,107,240,229,242,243,233,225,110,128,6,107,249,242,233,236,236,233,99,128,4,52,231,242,229,101,128,0,176,232,105,2,72,17,72,26,232,229,226,242,229,119,128,5,173,242,225,231,225,238,97,128,48,103,233,227,239,240,244,233,99,128,3,239,235,225,244,225,235,225,238,97,128,48,199,108,2,72,62,72,85,229,244,101,2,72,70,72,77,236,229,230,116,128,35,43,242,233,231,232,116,128,35,38,244,97,129,3,180,72,92,244,245,242,238,229,100,128,1,141,238,239,237,233,238,225,244,239,242,237,233,238,245,243,239,238,229,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,248,250,104,128,2,164,104,2,72,148,72,198,97,3,72,156,72,166,72,173,226,229,238,231,225,236,105,128,9,167,228,229,246,97,128,9,39,231,117,2,72,180,72,189,234,225,242,225,244,105,128,10,167,242,237,245,235,232,105,128,10,39,239,239,107,128,2,87,105,6,72,218,73,11,73,71,73,82,73,93,73,103,97,2,72,224,72,246,236,249,244,233,235,225,244,239,238,239,115,129,3,133,72,240,227,237,98,128,3,68,237,239,238,100,129,38,102,72,255,243,245,233,244,247,232,233,244,101,128,38,98,229,242,229,243,233,115,133,0,168,73,30,73,38,73,49,73,55,73,63,225,227,245,244,101,128,246,215,226,229,236,239,247,227,237,98,128,3,36,227,237,98,128,3,8,231,242,225,246,101,128,246,216,244,239,238,239,115,128,3,133,232,233,242,225,231,225,238,97,128,48,98,235,225,244,225,235,225,238,97,128,48,194,244,244,239,237,225,242,107,128,48,3,246,105,2,73,110,73,121,228,101,129,0,247,73,117,115,128,34,35,243,233,239,238,243,236,225,243,104,128,34,21,234,229,227,249,242,233,236,236,233,99,128,4,82,235,243,232,225,228,101,128,37,147,108,2,73,161,73,172,233,238,229,226,229,236,239,119,128,30,15,243,241,245,225,242,101,128,51,151,109,2,73,187,73,195,225,227,242,239,110,128,1,17,239,238,239,243,240,225,227,101,128,255,68,238,226,236,239,227,107,128,37,132,111,10,73,237,73,249,74,3,74,14,74,25,74,97,74,102,74,113,74,228,74,254,227,232,225,228,225,244,232,225,105,128,14,14,228,229,235,244,232,225,105,128,14,20,232,233,242,225,231,225,238,97,128,48,105,235,225,244,225,235,225,238,97,128,48,201,236,236,225,114,132,0,36,74,40,74,51,74,63,74,74,233,238,230,229,242,233,239,114,128,246,227,237,239,238,239,243,240,225,227,101,128,255,4,239,236,228,243,244,249,236,101,128,247,36,115,2,74,80,74,87,237,225,236,108,128,254,105,245,240,229,242,233,239,114,128,246,228,238,103,128,32,171,242,245,243,241,245,225,242,101,128,51,38,116,6,74,127,74,144,74,166,74,177,74,209,74,216,225,227,227,229,238,116,129,2,217,74,138,227,237,98,128,3,7,226,229,236,239,247,99,2,74,155,74,160,237,98,128,3,35,239,237,98,128,3,35,235,225,244,225,235,225,238,97,128,48,251,236,229,243,115,2,74,186,74,190,105,128,1,49,106,129,246,190,74,196,243,244,242,239,235,229,232,239,239,107,128,2,132,237,225,244,104,128,34,197,244,229,228,227,233,242,227,236,101,128,37,204,245,226,236,229,249,239,228,240,225,244,225,104,129,251,31,74,245,232,229,226,242,229,119,128,251,31,247,238,244,225,227,107,2,75,9,75,20,226,229,236,239,247,227,237,98,128,3,30,237,239,100,128,2,213,240,225,242,229,110,128,36,159,243,245,240,229,242,233,239,114,128,246,235,116,2,75,51,75,57,225,233,108,128,2,86,239,240,226,225,114,128,1,140,117,2,75,71,75,82,232,233,242,225,231,225,238,97,128,48,101,235,225,244,225,235,225,238,97,128,48,197,122,132,1,243,75,105,75,114,75,133,75,170,225,236,244,239,238,101,128,2,163,99,2,75,120,75,127,225,242,239,110,128,1,198,245,242,108,128,2,165,101,2,75,139,75,159,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,225,227,249,242,233,236,236,233,99,128,4,85,232,229,227,249,242,233,236,236,233,99,128,4,95,101,151,0,101,75,233,75,252,76,30,77,4,77,66,77,99,77,111,77,134,77,187,79,43,79,101,79,203,80,63,80,198,81,17,81,48,81,110,81,163,82,98,82,231,82,251,83,39,83,130,97,2,75,239,75,246,227,245,244,101,128,0,233,242,244,104,128,38,65,98,3,76,4,76,13,76,23,229,238,231,225,236,105,128,9,143,239,240,239,237,239,230,111,128,49,28,242,229,246,101,128,1,21,99,5,76,42,76,115,76,129,76,161,76,250,97,2,76,48,76,109,238,228,242,97,3,76,59,76,66,76,77,228,229,246,97,128,9,13,231,245,234,225,242,225,244,105,128,10,141,246,239,247,229,236,243,233,231,110,2,76,91,76,98,228,229,246,97,128,9,69,231,245,234,225,242,225,244,105,128,10,197,242,239,110,128,1,27,229,228,233,236,236,225,226,242,229,246,101,128,30,29,104,2,76,135,76,146,225,242,237,229,238,233,225,110,128,5,101,249,233,247,238,225,242,237,229,238,233,225,110,128,5,135,233,242,99,2,76,169,76,174,236,101,128,36,212,245,237,230,236,229,120,134,0,234,76,195,76,203,76,211,76,222,76,230,76,242,225,227,245,244,101,128,30,191,226,229,236,239,119,128,30,25,228,239,244,226,229,236,239,119,128,30,199,231,242,225,246,101,128,30,193,232,239,239,235,225,226,239,246,101,128,30,195,244,233,236,228,101,128,30,197,249,242,233,236,236,233,99,128,4,84,100,4,77,14,77,24,77,30,77,40,226,236,231,242,225,246,101,128,2,5,229,246,97,128,9,15,233,229,242,229,243,233,115,128,0,235,239,116,130,1,23,77,49,77,58,225,227,227,229,238,116,128,1,23,226,229,236,239,119,128,30,185,101,2,77,72,77,83,231,245,242,237,245,235,232,105,128,10,15,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,71,230,227,249,242,233,236,236,233,99,128,4,68,103,2,77,117,77,124,242,225,246,101,128,0,232,245,234,225,242,225,244,105,128,10,143,104,4,77,144,77,155,77,166,77,176,225,242,237,229,238,233,225,110,128,5,103,226,239,240,239,237,239,230,111,128,49,29,233,242,225,231,225,238,97,128,48,72,239,239,235,225,226,239,246,101,128,30,187,105,4,77,197,77,208,79,10,79,25,226,239,240,239,237,239,230,111,128,49,31,231,232,116,142,0,56,77,242,77,251,78,5,78,35,78,42,78,80,78,105,78,150,78,184,78,196,78,207,78,240,78,248,79,3,225,242,225,226,233,99,128,6,104,226,229,238,231,225,236,105,128,9,238,227,233,242,227,236,101,129,36,103,78,16,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,145,228,229,246,97,128,9,110,229,229,110,2,78,50,78,59,227,233,242,227,236,101,128,36,113,112,2,78,65,78,72,225,242,229,110,128,36,133,229,242,233,239,100,128,36,153,231,117,2,78,87,78,96,234,225,242,225,244,105,128,10,238,242,237,245,235,232,105,128,10,110,104,2,78,111,78,137,97,2,78,117,78,128,227,235,225,242,225,226,233,99,128,6,104,238,231,250,232,239,117,128,48,40,238,239,244,229,226,229,225,237,229,100,128,38,107,105,2,78,156,78,174,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,39,238,230,229,242,233,239,114,128,32,136,237,239,238,239,243,240,225,227,101,128,255,24,239,236,228,243,244,249,236,101,128,247,56,112,2,78,213,78,220,225,242,229,110,128,36,123,229,114,2,78,227,78,233,233,239,100,128,36,143,243,233,225,110,128,6,248,242,239,237,225,110,128,33,119,243,245,240,229,242,233,239,114,128,32,120,244,232,225,105,128,14,88,238,246,229,242,244,229,228,226,242,229,246,101,128,2,7,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,101,107,2,79,49,79,73,225,244,225,235,225,238,97,129,48,168,79,61,232,225,236,230,247,233,228,244,104,128,255,116,111,2,79,79,79,94,238,235,225,242,231,245,242,237,245,235,232,105,128,10,116,242,229,225,110,128,49,84,108,3,79,109,79,120,79,181,227,249,242,233,236,236,233,99,128,4,59,101,2,79,126,79,133,237,229,238,116,128,34,8,246,229,110,3,79,143,79,152,79,173,227,233,242,227,236,101,128,36,106,112,2,79,158,79,165,225,242,229,110,128,36,126,229,242,233,239,100,128,36,146,242,239,237,225,110,128,33,122,236,233,240,243,233,115,129,32,38,79,192,246,229,242,244,233,227,225,108,128,34,238,109,5,79,215,79,243,79,254,80,18,80,29,225,227,242,239,110,130,1,19,79,227,79,235,225,227,245,244,101,128,30,23,231,242,225,246,101,128,30,21,227,249,242,233,236,236,233,99,128,4,60,228,225,243,104,129,32,20,80,7,246,229,242,244,233,227,225,108,128,254,49,239,238,239,243,240,225,227,101,128,255,69,112,2,80,35,80,55,232,225,243,233,243,237,225,242,235,225,242,237,229,238,233,225,110,128,5,91,244,249,243,229,116,128,34,5,110,6,80,77,80,88,80,99,80,143,80,175,80,190,226,239,240,239,237,239,230,111,128,49,35,227,249,242,233,236,236,233,99,128,4,61,100,2,80,105,80,124,225,243,104,129,32,19,80,113,246,229,242,244,233,227,225,108,128,254,50,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,163,103,130,1,75,80,151,80,162,226,239,240,239,237,239,230,111,128,49,37,232,229,227,249,242,233,236,236,233,99,128,4,165,232,239,239,235,227,249,242,233,236,236,233,99,128,4,200,243,240,225,227,101,128,32,2,111,3,80,206,80,214,80,223,231,239,238,229,107,128,1,25,235,239,242,229,225,110,128,49,83,240,229,110,130,2,91,80,233,80,242,227,236,239,243,229,100,128,2,154,242,229,246,229,242,243,229,100,130,2,92,81,1,81,10,227,236,239,243,229,100,128,2,94,232,239,239,107,128,2,93,112,2,81,23,81,30,225,242,229,110,128,36,160,243,233,236,239,110,129,3,181,81,40,244,239,238,239,115,128,3,173,241,117,2,81,55,81,99,225,108,130,0,61,81,64,81,76,237,239,238,239,243,240,225,227,101,128,255,29,115,2,81,82,81,89,237,225,236,108,128,254,102,245,240,229,242,233,239,114,128,32,124,233,246,225,236,229,238,227,101,128,34,97,114,3,81,118,81,129,81,140,226,239,240,239,237,239,230,111,128,49,38,227,249,242,233,236,236,233,99,128,4,64,229,246,229,242,243,229,100,129,2,88,81,152,227,249,242,233,236,236,233,99,128,4,77,115,6,81,177,81,188,81,208,82,33,82,78,82,88,227,249,242,233,236,236,233,99,128,4,65,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,171,104,132,2,131,81,220,81,227,82,2,82,17,227,245,242,108,128,2,134,239,242,116,2,81,235,81,242,228,229,246,97,128,9,14,246,239,247,229,236,243,233,231,238,228,229,246,97,128,9,70,242,229,246,229,242,243,229,228,236,239,239,112,128,1,170,243,241,245,225,244,242,229,246,229,242,243,229,100,128,2,133,237,225,236,108,2,82,42,82,53,232,233,242,225,231,225,238,97,128,48,71,235,225,244,225,235,225,238,97,129,48,167,82,66,232,225,236,230,247,233,228,244,104,128,255,106,244,233,237,225,244,229,100,128,33,46,245,240,229,242,233,239,114,128,246,236,116,5,82,110,82,136,82,140,82,157,82,223,97,130,3,183,82,118,82,128,242,237,229,238,233,225,110,128,5,104,244,239,238,239,115,128,3,174,104,128,0,240,233,236,228,101,129,30,189,82,149,226,229,236,239,119,128,30,27,238,225,232,244,97,3,82,169,82,201,82,210,230,239,245,235,104,2,82,179,82,188,232,229,226,242,229,119,128,5,145,236,229,230,244,232,229,226,242,229,119,128,5,145,232,229,226,242,229,119,128,5,145,236,229,230,244,232,229,226,242,229,119,128,5,145,245,242,238,229,100,128,1,221,117,2,82,237,82,246,235,239,242,229,225,110,128,49,97,242,111,128,32,172,246,239,247,229,236,243,233,231,110,3,83,11,83,21,83,28,226,229,238,231,225,236,105,128,9,199,228,229,246,97,128,9,71,231,245,234,225,242,225,244,105,128,10,199,120,2,83,45,83,118,227,236,225,109,132,0,33,83,60,83,71,83,98,83,110,225,242,237,229,238,233,225,110,128,5,92,100,2,83,77,83,82,226,108,128,32,60,239,247,110,129,0,161,83,90,243,237,225,236,108,128,247,161,237,239,238,239,243,240,225,227,101,128,255,1,243,237,225,236,108,128,247,33,233,243,244,229,238,244,233,225,108,128,34,3,250,104,131,2,146,83,141,83,160,83,171,99,2,83,147,83,154,225,242,239,110,128,1,239,245,242,108,128,2,147,242,229,246,229,242,243,229,100,128,1,185,244,225,233,108,128,1,186,102,140,0,102,83,206,84,32,84,43,84,52,84,64,84,167,84,183,86,191,86,204,86,230,88,107,88,115,97,4,83,216,83,223,83,234,83,245,228,229,246,97,128,9,94,231,245,242,237,245,235,232,105,128,10,94,232,242,229,238,232,229,233,116,128,33,9,244,232,97,3,83,255,84,8,84,20,225,242,225,226,233,99,128,6,78,236,239,247,225,242,225,226,233,99,128,6,78,244,225,238,225,242,225,226,233,99,128,6,75,226,239,240,239,237,239,230,111,128,49,8,227,233,242,227,236,101,128,36,213,228,239,244,225,227,227,229,238,116,128,30,31,101,3,84,72,84,150,84,160,104,4,84,82,84,105,84,119,84,135,225,114,2,84,89,84,96,225,226,233,99,128,6,65,237,229,238,233,225,110,128,5,134,230,233,238,225,236,225,242,225,226,233,99,128,254,210,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,211,237,229,228,233,225,236,225,242,225,226,233,99,128,254,212,233,227,239,240,244,233,99,128,3,229,237,225,236,101,128,38,64,102,130,251,0,84,175,84,179,105,128,251,3,108,128,251,4,105,136,251,1,84,203,84,243,84,254,85,20,85,142,85,159,85,167,85,180,230,244,229,229,110,2,84,213,84,222,227,233,242,227,236,101,128,36,110,112,2,84,228,84,235,225,242,229,110,128,36,130,229,242,233,239,100,128,36,150,231,245,242,229,228,225,243,104,128,32,18,236,236,229,100,2,85,7,85,13,226,239,120,128,37,160,242,229,227,116,128,37,172,238,225,108,5,85,34,85,73,85,90,85,107,85,123,235,225,102,130,5,218,85,44,85,64,228,225,231,229,243,104,129,251,58,85,55,232,229,226,242,229,119,128,251,58,232,229,226,242,229,119,128,5,218,237,229,109,129,5,221,85,81,232,229,226,242,229,119,128,5,221,238,245,110,129,5,223,85,98,232,229,226,242,229,119,128,5,223,240,101,129,5,227,85,114,232,229,226,242,229,119,128,5,227,244,243,225,228,105,129,5,229,85,133,232,229,226,242,229,119,128,5,229,242,243,244,244,239,238,229,227,232,233,238,229,243,101,128,2,201,243,232,229,249,101,128,37,201,244,225,227,249,242,233,236,236,233,99,128,4,115,246,101,142,0,53,85,213,85,222,85,232,86,6,86,13,86,23,86,48,86,75,86,109,86,121,86,132,86,165,86,173,86,184,225,242,225,226,233,99,128,6,101,226,229,238,231,225,236,105,128,9,235,227,233,242,227,236,101,129,36,100,85,243,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,142,228,229,246,97,128,9,107,229,233,231,232,244,232,115,128,33,93,231,117,2,86,30,86,39,234,225,242,225,244,105,128,10,235,242,237,245,235,232,105,128,10,107,232,97,2,86,55,86,66,227,235,225,242,225,226,233,99,128,6,101,238,231,250,232,239,117,128,48,37,105,2,86,81,86,99,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,36,238,230,229,242,233,239,114,128,32,133,237,239,238,239,243,240,225,227,101,128,255,21,239,236,228,243,244,249,236,101,128,247,53,112,2,86,138,86,145,225,242,229,110,128,36,120,229,114,2,86,152,86,158,233,239,100,128,36,140,243,233,225,110,128,6,245,242,239,237,225,110,128,33,116,243,245,240,229,242,233,239,114,128,32,117,244,232,225,105,128,14,85,108,129,251,2,86,197,239,242,233,110,128,1,146,109,2,86,210,86,221,239,238,239,243,240,225,227,101,128,255,70,243,241,245,225,242,101,128,51,153,111,4,86,240,87,6,87,18,87,25,230,97,2,86,247,86,255,238,244,232,225,105,128,14,31,244,232,225,105,128,14,29,238,231,237,225,238,244,232,225,105,128,14,79,242,225,236,108,128,34,0,245,114,142,0,52,87,58,87,67,87,77,87,107,87,114,87,139,87,166,87,200,87,212,87,231,87,242,88,19,88,27,88,38,225,242,225,226,233,99,128,6,100,226,229,238,231,225,236,105,128,9,234,227,233,242,227,236,101,129,36,99,87,88,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,141,228,229,246,97,128,9,106,231,117,2,87,121,87,130,234,225,242,225,244,105,128,10,234,242,237,245,235,232,105,128,10,106,232,97,2,87,146,87,157,227,235,225,242,225,226,233,99,128,6,100,238,231,250,232,239,117,128,48,36,105,2,87,172,87,190,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,35,238,230,229,242,233,239,114,128,32,132,237,239,238,239,243,240,225,227,101,128,255,20,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,247,239,236,228,243,244,249,236,101,128,247,52,112,2,87,248,87,255,225,242,229,110,128,36,119,229,114,2,88,6,88,12,233,239,100,128,36,139,243,233,225,110,128,6,244,242,239,237,225,110,128,33,115,243,245,240,229,242,233,239,114,128,32,116,116,2,88,44,88,82,229,229,110,2,88,52,88,61,227,233,242,227,236,101,128,36,109,112,2,88,67,88,74,225,242,229,110,128,36,129,229,242,233,239,100,128,36,149,104,2,88,88,88,93,225,105,128,14,84,244,239,238,229,227,232,233,238,229,243,101,128,2,203,240,225,242,229,110,128,36,161,242,97,2,88,122,88,130,227,244,233,239,110,128,32,68,238,99,128,32,163,103,144,0,103,88,171,89,117,89,140,89,201,89,218,90,139,91,132,91,217,91,230,92,88,92,113,92,141,92,163,93,108,93,130,93,232,97,9,88,191,88,201,88,208,88,215,89,23,89,48,89,59,89,70,89,104,226,229,238,231,225,236,105,128,9,151,227,245,244,101,128,1,245,228,229,246,97,128,9,23,102,4,88,225,88,234,88,248,89,8,225,242,225,226,233,99,128,6,175,230,233,238,225,236,225,242,225,226,233,99,128,251,147,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,148,237,229,228,233,225,236,225,242,225,226,233,99,128,251,149,231,117,2,89,30,89,39,234,225,242,225,244,105,128,10,151,242,237,245,235,232,105,128,10,23,232,233,242,225,231,225,238,97,128,48,76,235,225,244,225,235,225,238,97,128,48,172,237,237,97,130,3,179,89,80,89,93,236,225,244,233,238,243,237,225,236,108,128,2,99,243,245,240,229,242,233,239,114,128,2,224,238,231,233,225,227,239,240,244,233,99,128,3,235,98,2,89,123,89,133,239,240,239,237,239,230,111,128,49,13,242,229,246,101,128,1,31,99,4,89,150,89,157,89,166,89,188,225,242,239,110,128,1,231,229,228,233,236,236,97,128,1,35,233,242,99,2,89,174,89,179,236,101,128,36,214,245,237,230,236,229,120,128,1,29,239,237,237,225,225,227,227,229,238,116,128,1,35,228,239,116,129,1,33,89,209,225,227,227,229,238,116,128,1,33,101,6,89,232,89,243,89,254,90,9,90,28,90,130,227,249,242,233,236,236,233,99,128,4,51,232,233,242,225,231,225,238,97,128,48,82,235,225,244,225,235,225,238,97,128,48,178,239,237,229,244,242,233,227,225,236,236,249,229,241,245,225,108,128,34,81,114,3,90,36,90,85,90,95,229,243,104,3,90,46,90,61,90,70,225,227,227,229,238,244,232,229,226,242,229,119,128,5,156,232,229,226,242,229,119,128,5,243,237,245,241,228,225,237,232,229,226,242,229,119,128,5,157,237,225,238,228,226,236,115,128,0,223,243,232,225,249,233,109,2,90,106,90,121,225,227,227,229,238,244,232,229,226,242,229,119,128,5,158,232,229,226,242,229,119,128,5,244,244,225,237,225,242,107,128,48,19,104,5,90,151,91,28,91,91,91,116,91,122,97,4,90,161,90,171,90,194,90,219,226,229,238,231,225,236,105,128,9,152,100,2,90,177,90,188,225,242,237,229,238,233,225,110,128,5,114,229,246,97,128,9,24,231,117,2,90,201,90,210,234,225,242,225,244,105,128,10,152,242,237,245,235,232,105,128,10,24,233,110,4,90,230,90,239,90,253,91,13,225,242,225,226,233,99,128,6,58,230,233,238,225,236,225,242,225,226,233,99,128,254,206,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,207,237,229,228,233,225,236,225,242,225,226,233,99,128,254,208,101,3,91,36,91,57,91,74,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,149,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,147,245,240,244,245,242,238,227,249,242,233,236,236,233,99,128,4,145,232,97,2,91,98,91,105,228,229,246,97,128,9,90,231,245,242,237,245,235,232,105,128,10,90,239,239,107,128,2,96,250,243,241,245,225,242,101,128,51,147,105,3,91,140,91,151,91,162,232,233,242,225,231,225,238,97,128,48,78,235,225,244,225,235,225,238,97,128,48,174,109,2,91,168,91,179,225,242,237,229,238,233,225,110,128,5,99,229,108,130,5,210,91,188,91,208,228,225,231,229,243,104,129,251,50,91,199,232,229,226,242,229,119,128,251,50,232,229,226,242,229,119,128,5,210,234,229,227,249,242,233,236,236,233,99,128,4,83,236,239,244,244,225,108,2,91,241,92,2,233,238,246,229,242,244,229,228,243,244,242,239,235,101,128,1,190,243,244,239,112,132,2,148,92,17,92,28,92,34,92,66,233,238,246,229,242,244,229,100,128,2,150,237,239,100,128,2,192,242,229,246,229,242,243,229,100,130,2,149,92,49,92,55,237,239,100,128,2,193,243,245,240,229,242,233,239,114,128,2,228,243,244,242,239,235,101,129,2,161,92,77,242,229,246,229,242,243,229,100,128,2,162,109,2,92,94,92,102,225,227,242,239,110,128,30,33,239,238,239,243,240,225,227,101,128,255,71,111,2,92,119,92,130,232,233,242,225,231,225,238,97,128,48,84,235,225,244,225,235,225,238,97,128,48,180,240,97,2,92,148,92,154,242,229,110,128,36,162,243,241,245,225,242,101,128,51,172,114,2,92,169,93,10,97,2,92,175,92,183,228,233,229,238,116,128,34,7,246,101,134,0,96,92,200,92,211,92,228,92,235,92,244,93,0,226,229,236,239,247,227,237,98,128,3,22,99,2,92,217,92,222,237,98,128,3,0,239,237,98,128,3,0,228,229,246,97,128,9,83,236,239,247,237,239,100,128,2,206,237,239,238,239,243,240,225,227,101,128,255,64,244,239,238,229,227,237,98,128,3,64,229,225,244,229,114,132,0,62,93,26,93,45,93,57,93,100,229,241,245,225,108,129,34,101,93,36,239,242,236,229,243,115,128,34,219,237,239,238,239,243,240,225,227,101,128,255,30,111,2,93,63,93,89,114,2,93,69,93,82,229,241,245,233,246,225,236,229,238,116,128,34,115,236,229,243,115,128,34,119,246,229,242,229,241,245,225,108,128,34,103,243,237,225,236,108,128,254,101,115,2,93,114,93,122,227,242,233,240,116,128,2,97,244,242,239,235,101,128,1,229,117,4,93,140,93,151,93,208,93,219,232,233,242,225,231,225,238,97,128,48,80,233,108,2,93,158,93,183,236,229,237,239,116,2,93,168,93,175,236,229,230,116,128,0,171,242,233,231,232,116,128,0,187,243,233,238,231,108,2,93,193,93,200,236,229,230,116,128,32,57,242,233,231,232,116,128,32,58,235,225,244,225,235,225,238,97,128,48,176,242,225,237,245,243,241,245,225,242,101,128,51,24,249,243,241,245,225,242,101,128,51,201,104,144,0,104,94,22,96,164,96,199,96,236,97,20,98,164,98,184,99,149,99,161,99,173,100,241,100,249,101,4,101,13,101,93,101,97,97,13,94,50,94,89,94,99,94,129,94,154,94,232,94,244,95,13,95,28,95,57,95,70,95,128,95,137,97,2,94,56,94,75,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,169,236,244,239,238,229,225,242,225,226,233,99,128,6,193,226,229,238,231,225,236,105,128,9,185,228,101,2,94,106,94,124,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,179,246,97,128,9,57,231,117,2,94,136,94,145,234,225,242,225,244,105,128,10,185,242,237,245,235,232,105,128,10,57,104,4,94,164,94,173,94,187,94,217,225,242,225,226,233,99,128,6,45,230,233,238,225,236,225,242,225,226,233,99,128,254,162,105,2,94,193,94,208,238,233,244,233,225,236,225,242,225,226,233,99,128,254,163,242,225,231,225,238,97,128,48,111,237,229,228,233,225,236,225,242,225,226,233,99,128,254,164,233,244,245,243,241,245,225,242,101,128,51,42,235,225,244,225,235,225,238,97,129,48,207,95,1,232,225,236,230,247,233,228,244,104,128,255,138,236,225,238,244,231,245,242,237,245,235,232,105,128,10,77,237,250,97,2,95,36,95,45,225,242,225,226,233,99,128,6,33,236,239,247,225,242,225,226,233,99,128,6,33,238,231,245,236,230,233,236,236,229,114,128,49,100,114,2,95,76,95,92,228,243,233,231,238,227,249,242,233,236,236,233,99,128,4,74,240,239,239,110,2,95,101,95,114,236,229,230,244,226,225,242,226,245,112,128,33,188,242,233,231,232,244,226,225,242,226,245,112,128,33,192,243,241,245,225,242,101,128,51,202,244,225,102,3,95,147,95,239,96,74,240,225,244,225,104,134,5,178,95,167,95,172,95,186,95,195,95,210,95,226,177,54,128,5,178,50,2,95,178,95,182,51,128,5,178,102,128,5,178,232,229,226,242,229,119,128,5,178,238,225,242,242,239,247,232,229,226,242,229,119,128,5,178,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,178,247,233,228,229,232,229,226,242,229,119,128,5,178,241,225,237,225,244,115,135,5,179,96,6,96,11,96,16,96,21,96,30,96,45,96,61,177,98,128,5,179,178,56,128,5,179,179,52,128,5,179,232,229,226,242,229,119,128,5,179,238,225,242,242,239,247,232,229,226,242,229,119,128,5,179,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,179,247,233,228,229,232,229,226,242,229,119,128,5,179,243,229,231,239,108,135,5,177,96,96,96,101,96,106,96,111,96,120,96,135,96,151,177,55,128,5,177,178,52,128,5,177,179,48,128,5,177,232,229,226,242,229,119,128,5,177,238,225,242,242,239,247,232,229,226,242,229,119,128,5,177,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,177,247,233,228,229,232,229,226,242,229,119,128,5,177,98,3,96,172,96,177,96,187,225,114,128,1,39,239,240,239,237,239,230,111,128,49,15,242,229,246,229,226,229,236,239,119,128,30,43,99,2,96,205,96,214,229,228,233,236,236,97,128,30,41,233,242,99,2,96,222,96,227,236,101,128,36,215,245,237,230,236,229,120,128,1,37,100,2,96,242,96,252,233,229,242,229,243,233,115,128,30,39,239,116,2,97,3,97,12,225,227,227,229,238,116,128,30,35,226,229,236,239,119,128,30,37,101,136,5,212,97,40,97,73,97,93,98,66,98,82,98,127,98,136,98,149,225,242,116,129,38,101,97,48,243,245,233,116,2,97,57,97,65,226,236,225,227,107,128,38,101,247,232,233,244,101,128,38,97,228,225,231,229,243,104,129,251,52,97,84,232,229,226,242,229,119,128,251,52,104,6,97,107,97,135,97,143,97,193,97,239,98,32,97,2,97,113,97,127,236,244,239,238,229,225,242,225,226,233,99,128,6,193,242,225,226,233,99,128,6,71,229,226,242,229,119,128,5,212,230,233,238,225,236,97,2,97,154,97,185,236,116,2,97,161,97,173,239,238,229,225,242,225,226,233,99,128,251,167,244,247,239,225,242,225,226,233,99,128,254,234,242,225,226,233,99,128,254,234,232,225,237,250,225,225,226,239,246,101,2,97,208,97,222,230,233,238,225,236,225,242,225,226,233,99,128,251,165,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,251,164,105,2,97,245,98,23,238,233,244,233,225,236,97,2,98,1,98,15,236,244,239,238,229,225,242,225,226,233,99,128,251,168,242,225,226,233,99,128,254,235,242,225,231,225,238,97,128,48,120,237,229,228,233,225,236,97,2,98,44,98,58,236,244,239,238,229,225,242,225,226,233,99,128,251,169,242,225,226,233,99,128,254,236,233,243,229,233,229,242,225,243,241,245,225,242,101,128,51,123,107,2,98,88,98,112,225,244,225,235,225,238,97,129,48,216,98,100,232,225,236,230,247,233,228,244,104,128,255,141,245,244,225,225,242,245,243,241,245,225,242,101,128,51,54,238,231,232,239,239,107,128,2,103,242,245,244,245,243,241,245,225,242,101,128,51,57,116,129,5,215,98,155,232,229,226,242,229,119,128,5,215,232,239,239,107,129,2,102,98,173,243,245,240,229,242,233,239,114,128,2,177,105,4,98,194,99,23,99,34,99,59,229,245,104,4,98,206,98,241,99,0,99,9,97,2,98,212,98,227,227,233,242,227,236,229,235,239,242,229,225,110,128,50,123,240,225,242,229,238,235,239,242,229,225,110,128,50,27,227,233,242,227,236,229,235,239,242,229,225,110,128,50,109,235,239,242,229,225,110,128,49,78,240,225,242,229,238,235,239,242,229,225,110,128,50,13,232,233,242,225,231,225,238,97,128,48,114,235,225,244,225,235,225,238,97,129,48,210,99,47,232,225,236,230,247,233,228,244,104,128,255,139,242,233,113,134,5,180,99,77,99,82,99,96,99,105,99,120,99,136,177,52,128,5,180,50,2,99,88,99,92,49,128,5,180,100,128,5,180,232,229,226,242,229,119,128,5,180,238,225,242,242,239,247,232,229,226,242,229,119,128,5,180,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,180,247,233,228,229,232,229,226,242,229,119,128,5,180,236,233,238,229,226,229,236,239,119,128,30,150,237,239,238,239,243,240,225,227,101,128,255,72,111,9,99,193,99,204,99,228,99,253,100,85,100,98,100,184,100,224,100,235,225,242,237,229,238,233,225,110,128,5,112,232,105,2,99,211,99,219,240,244,232,225,105,128,14,43,242,225,231,225,238,97,128,48,123,235,225,244,225,235,225,238,97,129,48,219,99,241,232,225,236,230,247,233,228,244,104,128,255,142,236,225,109,135,5,185,100,17,100,22,100,27,100,32,100,41,100,56,100,72,177,57,128,5,185,178,54,128,5,185,179,50,128,5,185,232,229,226,242,229,119,128,5,185,238,225,242,242,239,247,232,229,226,242,229,119,128,5,185,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,185,247,233,228,229,232,229,226,242,229,119,128,5,185,238,239,235,232,245,235,244,232,225,105,128,14,46,111,2,100,104,100,174,107,4,100,114,100,126,100,132,100,154,225,226,239,246,229,227,239,237,98,128,3,9,227,237,98,128,3,9,240,225,236,225,244,225,236,233,250,229,228,226,229,236,239,247,227,237,98,128,3,33,242,229,244,242,239,230,236,229,248,226,229,236,239,247,227,237,98,128,3,34,238,243,241,245,225,242,101,128,51,66,114,2,100,190,100,217,105,2,100,196,100,205,227,239,240,244,233,99,128,3,233,250,239,238,244,225,236,226,225,114,128,32,21,238,227,237,98,128,3,27,244,243,240,242,233,238,231,115,128,38,104,245,243,101,128,35,2,240,225,242,229,110,128,36,163,243,245,240,229,242,233,239,114,128,2,176,244,245,242,238,229,100,128,2,101,117,4,101,23,101,34,101,47,101,72,232,233,242,225,231,225,238,97,128,48,117,233,233,244,239,243,241,245,225,242,101,128,51,51,235,225,244,225,235,225,238,97,129,48,213,101,60,232,225,236,230,247,233,228,244,104,128,255,140,238,231,225,242,245,237,236,225,245,116,129,2,221,101,87,227,237,98,128,3,11,118,128,1,149,249,240,232,229,110,132,0,45,101,113,101,124,101,136,101,159,233,238,230,229,242,233,239,114,128,246,229,237,239,238,239,243,240,225,227,101,128,255,13,115,2,101,142,101,149,237,225,236,108,128,254,99,245,240,229,242,233,239,114,128,246,230,244,247,111,128,32,16,105,149,0,105,101,211,101,234,102,12,102,59,105,197,106,61,106,98,106,125,107,31,107,35,107,73,107,95,107,179,108,88,108,163,108,171,108,184,109,15,109,72,109,100,109,144,225,99,2,101,218,101,224,245,244,101,128,0,237,249,242,233,236,236,233,99,128,4,79,98,3,101,242,101,251,102,5,229,238,231,225,236,105,128,9,135,239,240,239,237,239,230,111,128,49,39,242,229,246,101,128,1,45,99,3,102,20,102,27,102,49,225,242,239,110,128,1,208,233,242,99,2,102,35,102,40,236,101,128,36,216,245,237,230,236,229,120,128,0,238,249,242,233,236,236,233,99,128,4,86,100,4,102,69,102,79,105,154,105,187,226,236,231,242,225,246,101,128,2,9,101,2,102,85,105,149,239,231,242,225,240,104,7,102,106,102,120,102,133,105,62,105,93,105,106,105,118,229,225,242,244,232,227,233,242,227,236,101,128,50,143,230,233,242,229,227,233,242,227,236,101,128,50,139,233,99,14,102,164,102,180,103,23,103,77,103,143,103,172,103,188,103,245,104,38,104,50,104,77,104,144,105,26,105,55,225,236,236,233,225,238,227,229,240,225,242,229,110,128,50,63,99,4,102,190,102,201,102,215,102,222,225,236,236,240,225,242,229,110,128,50,58,229,238,244,242,229,227,233,242,227,236,101,128,50,165,236,239,243,101,128,48,6,111,3,102,230,102,245,103,9,237,237,97,129,48,1,102,238,236,229,230,116,128,255,100,238,231,242,225,244,245,236,225,244,233,239,238,240,225,242,229,110,128,50,55,242,242,229,227,244,227,233,242,227,236,101,128,50,163,101,3,103,31,103,43,103,60,225,242,244,232,240,225,242,229,110,128,50,47,238,244,229,242,240,242,233,243,229,240,225,242,229,110,128,50,61,248,227,229,236,236,229,238,244,227,233,242,227,236,101,128,50,157,102,2,103,83,103,98,229,243,244,233,246,225,236,240,225,242,229,110,128,50,64,105,2,103,104,103,133,238,225,238,227,233,225,108,2,103,116,103,125,227,233,242,227,236,101,128,50,150,240,225,242,229,110,128,50,54,242,229,240,225,242,229,110,128,50,43,104,2,103,149,103,160,225,246,229,240,225,242,229,110,128,50,50,233,231,232,227,233,242,227,236,101,128,50,164,233,244,229,242,225,244,233,239,238,237,225,242,107,128,48,5,108,3,103,196,103,222,103,234,225,226,239,114,2,103,205,103,214,227,233,242,227,236,101,128,50,152,240,225,242,229,110,128,50,56,229,230,244,227,233,242,227,236,101,128,50,167,239,247,227,233,242,227,236,101,128,50,166,109,2,103,251,104,27,101,2,104,1,104,16,228,233,227,233,238,229,227,233,242,227,236,101,128,50,169,244,225,236,240,225,242,229,110,128,50,46,239,239,238,240,225,242,229,110,128,50,42,238,225,237,229,240,225,242,229,110,128,50,52,112,2,104,56,104,64,229,242,233,239,100,128,48,2,242,233,238,244,227,233,242,227,236,101,128,50,158,114,2,104,83,104,131,101,3,104,91,104,102,104,117,225,227,232,240,225,242,229,110,128,50,67,240,242,229,243,229,238,244,240,225,242,229,110,128,50,57,243,239,245,242,227,229,240,225,242,229,110,128,50,62,233,231,232,244,227,233,242,227,236,101,128,50,168,115,5,104,156,104,185,104,199,104,224,104,252,101,2,104,162,104,175,227,242,229,244,227,233,242,227,236,101,128,50,153,236,230,240,225,242,229,110,128,50,66,239,227,233,229,244,249,240,225,242,229,110,128,50,51,112,2,104,205,104,211,225,227,101,128,48,0,229,227,233,225,236,240,225,242,229,110,128,50,53,116,2,104,230,104,241,239,227,235,240,225,242,229,110,128,50,49,245,228,249,240,225,242,229,110,128,50,59,117,2,105,2,105,11,238,240,225,242,229,110,128,50,48,240,229,242,246,233,243,229,240,225,242,229,110,128,50,60,119,2,105,32,105,44,225,244,229,242,240,225,242,229,110,128,50,44,239,239,228,240,225,242,229,110,128,50,45,250,229,242,111,128,48,7,109,2,105,68,105,81,229,244,225,236,227,233,242,227,236,101,128,50,142,239,239,238,227,233,242,227,236,101,128,50,138,238,225,237,229,227,233,242,227,236,101,128,50,148,243,245,238,227,233,242,227,236,101,128,50,144,119,2,105,124,105,137,225,244,229,242,227,233,242,227,236,101,128,50,140,239,239,228,227,233,242,227,236,101,128,50,141,246,97,128,9,7,233,229,242,229,243,233,115,130,0,239,105,168,105,176,225,227,245,244,101,128,30,47,227,249,242,233,236,236,233,99,128,4,229,239,244,226,229,236,239,119,128,30,203,101,3,105,205,105,221,105,232,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,215,227,249,242,233,236,236,233,99,128,4,53,245,238,103,4,105,244,106,23,106,38,106,47,97,2,105,250,106,9,227,233,242,227,236,229,235,239,242,229,225,110,128,50,117,240,225,242,229,238,235,239,242,229,225,110,128,50,21,227,233,242,227,236,229,235,239,242,229,225,110,128,50,103,235,239,242,229,225,110,128,49,71,240,225,242,229,238,235,239,242,229,225,110,128,50,7,103,2,106,67,106,74,242,225,246,101,128,0,236,117,2,106,80,106,89,234,225,242,225,244,105,128,10,135,242,237,245,235,232,105,128,10,7,104,2,106,104,106,114,233,242,225,231,225,238,97,128,48,68,239,239,235,225,226,239,246,101,128,30,201,105,8,106,143,106,153,106,164,106,171,106,196,106,212,106,227,106,243,226,229,238,231,225,236,105,128,9,136,227,249,242,233,236,236,233,99,128,4,56,228,229,246,97,128,9,8,231,117,2,106,178,106,187,234,225,242,225,244,105,128,10,136,242,237,245,235,232,105,128,10,8,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,64,238,246,229,242,244,229,228,226,242,229,246,101,128,2,11,243,232,239,242,244,227,249,242,233,236,236,233,99,128,4,57,246,239,247,229,236,243,233,231,110,3,107,3,107,13,107,20,226,229,238,231,225,236,105,128,9,192,228,229,246,97,128,9,64,231,245,234,225,242,225,244,105,128,10,192,106,128,1,51,107,2,107,41,107,65,225,244,225,235,225,238,97,129,48,164,107,53,232,225,236,230,247,233,228,244,104,128,255,114,239,242,229,225,110,128,49,99,108,2,107,79,107,84,228,101,128,2,220,245,249,232,229,226,242,229,119,128,5,172,109,2,107,101,107,168,97,3,107,109,107,129,107,154,227,242,239,110,129,1,43,107,118,227,249,242,233,236,236,233,99,128,4,227,231,229,239,242,225,240,240,242,239,248,233,237,225,244,229,236,249,229,241,245,225,108,128,34,83,244,242,225,231,245,242,237,245,235,232,105,128,10,63,239,238,239,243,240,225,227,101,128,255,73,110,5,107,191,107,201,107,210,107,222,108,50,227,242,229,237,229,238,116,128,34,6,230,233,238,233,244,121,128,34,30,233,225,242,237,229,238,233,225,110,128,5,107,116,2,107,228,108,40,101,2,107,234,108,29,231,242,225,108,131,34,43,107,247,108,9,108,14,98,2,107,253,108,5,239,244,244,239,109,128,35,33,116,128,35,33,229,120,128,248,245,116,2,108,20,108,25,239,112,128,35,32,112,128,35,32,242,243,229,227,244,233,239,110,128,34,41,233,243,241,245,225,242,101,128,51,5,118,3,108,58,108,67,108,76,226,245,236,236,229,116,128,37,216,227,233,242,227,236,101,128,37,217,243,237,233,236,229,230,225,227,101,128,38,59,111,3,108,96,108,107,108,115,227,249,242,233,236,236,233,99,128,4,81,231,239,238,229,107,128,1,47,244,97,131,3,185,108,126,108,147,108,155,228,233,229,242,229,243,233,115,129,3,202,108,139,244,239,238,239,115,128,3,144,236,225,244,233,110,128,2,105,244,239,238,239,115,128,3,175,240,225,242,229,110,128,36,164,242,233,231,245,242,237,245,235,232,105,128,10,114,115,4,108,194,108,239,108,253,109,5,237,225,236,108,2,108,203,108,214,232,233,242,225,231,225,238,97,128,48,67,235,225,244,225,235,225,238,97,129,48,163,108,227,232,225,236,230,247,233,228,244,104,128,255,104,243,232,225,242,226,229,238,231,225,236,105,128,9,250,244,242,239,235,101,128,2,104,245,240,229,242,233,239,114,128,246,237,116,2,109,21,109,55,229,242,225,244,233,239,110,2,109,33,109,44,232,233,242,225,231,225,238,97,128,48,157,235,225,244,225,235,225,238,97,128,48,253,233,236,228,101,129,1,41,109,64,226,229,236,239,119,128,30,45,117,2,109,78,109,89,226,239,240,239,237,239,230,111,128,49,41,227,249,242,233,236,236,233,99,128,4,78,246,239,247,229,236,243,233,231,110,3,109,116,109,126,109,133,226,229,238,231,225,236,105,128,9,191,228,229,246,97,128,9,63,231,245,234,225,242,225,244,105,128,10,191,250,232,233,244,243,97,2,109,155,109,166,227,249,242,233,236,236,233,99,128,4,117,228,226,236,231,242,225,246,229,227,249,242,233,236,236,233,99,128,4,119,106,138,0,106,109,209,110,16,110,27,110,77,110,93,110,206,111,19,111,24,111,36,111,44,97,4,109,219,109,230,109,240,109,247,225,242,237,229,238,233,225,110,128,5,113,226,229,238,231,225,236,105,128,9,156,228,229,246,97,128,9,28,231,117,2,109,254,110,7,234,225,242,225,244,105,128,10,156,242,237,245,235,232,105,128,10,28,226,239,240,239,237,239,230,111,128,49,16,99,3,110,35,110,42,110,64,225,242,239,110,128,1,240,233,242,99,2,110,50,110,55,236,101,128,36,217,245,237,230,236,229,120,128,1,53,242,239,243,243,229,228,244,225,233,108,128,2,157,228,239,244,236,229,243,243,243,244,242,239,235,101,128,2,95,101,3,110,101,110,112,110,177,227,249,242,233,236,236,233,99,128,4,88,229,109,4,110,123,110,132,110,146,110,162,225,242,225,226,233,99,128,6,44,230,233,238,225,236,225,242,225,226,233,99,128,254,158,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,159,237,229,228,233,225,236,225,242,225,226,233,99,128,254,160,104,2,110,183,110,192,225,242,225,226,233,99,128,6,152,230,233,238,225,236,225,242,225,226,233,99,128,251,139,104,2,110,212,111,6,97,3,110,220,110,230,110,237,226,229,238,231,225,236,105,128,9,157,228,229,246,97,128,9,29,231,117,2,110,244,110,253,234,225,242,225,244,105,128,10,157,242,237,245,235,232,105,128,10,29,229,232,225,242,237,229,238,233,225,110,128,5,123,233,115,128,48,4,237,239,238,239,243,240,225,227,101,128,255,74,240,225,242,229,110,128,36,165,243,245,240,229,242,233,239,114,128,2,178,107,146,0,107,111,95,113,184,113,195,114,1,114,12,114,102,114,116,115,224,116,164,116,177,116,203,116,252,117,134,117,156,117,169,117,192,117,234,117,244,97,12,111,121,111,153,111,175,111,205,112,63,112,88,112,118,112,143,112,249,113,7,113,130,113,159],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+30720);allocate([98,2,111,127,111,144,225,243,232,235,233,242,227,249,242,233,236,236,233,99,128,4,161,229,238,231,225,236,105,128,9,149,99,2,111,159,111,165,245,244,101,128,30,49,249,242,233,236,236,233,99,128,4,58,228,101,2,111,182,111,200,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,155,246,97,128,9,21,102,135,5,219,111,223,111,232,111,252,112,10,112,19,112,35,112,50,225,242,225,226,233,99,128,6,67,228,225,231,229,243,104,129,251,59,111,243,232,229,226,242,229,119,128,251,59,230,233,238,225,236,225,242,225,226,233,99,128,254,218,232,229,226,242,229,119,128,5,219,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,219,237,229,228,233,225,236,225,242,225,226,233,99,128,254,220,242,225,230,229,232,229,226,242,229,119,128,251,77,231,117,2,112,70,112,79,234,225,242,225,244,105,128,10,149,242,237,245,235,232,105,128,10,21,104,2,112,94,112,104,233,242,225,231,225,238,97,128,48,75,239,239,235,227,249,242,233,236,236,233,99,128,4,196,235,225,244,225,235,225,238,97,129,48,171,112,131,232,225,236,230,247,233,228,244,104,128,255,118,112,2,112,149,112,170,240,97,129,3,186,112,156,243,249,237,226,239,236,231,242,229,229,107,128,3,240,249,229,239,245,110,3,112,182,112,196,112,230,237,233,229,245,237,235,239,242,229,225,110,128,49,113,112,2,112,202,112,217,232,233,229,245,240,232,235,239,242,229,225,110,128,49,132,233,229,245,240,235,239,242,229,225,110,128,49,120,243,243,225,238,231,240,233,229,245,240,235,239,242,229,225,110,128,49,121,242,239,242,233,233,243,241,245,225,242,101,128,51,13,115,5,113,19,113,63,113,78,113,86,113,114,232,233,228,225,225,245,244,111,2,113,32,113,41,225,242,225,226,233,99,128,6,64,238,239,243,233,228,229,226,229,225,242,233,238,231,225,242,225,226,233,99,128,6,64,237,225,236,236,235,225,244,225,235,225,238,97,128,48,245,241,245,225,242,101,128,51,132,242,97,2,113,93,113,102,225,242,225,226,233,99,128,6,80,244,225,238,225,242,225,226,233,99,128,6,77,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,159,244,225,232,233,242,225,240,242,239,236,239,238,231,237,225,242,235,232,225,236,230,247,233,228,244,104,128,255,112,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,157,226,239,240,239,237,239,230,111,128,49,14,99,4,113,205,113,227,113,236,113,244,97,2,113,211,113,221,236,243,241,245,225,242,101,128,51,137,242,239,110,128,1,233,229,228,233,236,236,97,128,1,55,233,242,227,236,101,128,36,218,239,237,237,225,225,227,227,229,238,116,128,1,55,228,239,244,226,229,236,239,119,128,30,51,101,4,114,22,114,49,114,74,114,86,104,2,114,28,114,39,225,242,237,229,238,233,225,110,128,5,132,233,242,225,231,225,238,97,128,48,81,235,225,244,225,235,225,238,97,129,48,177,114,62,232,225,236,230,247,233,228,244,104,128,255,121,238,225,242,237,229,238,233,225,110,128,5,111,243,237,225,236,236,235,225,244,225,235,225,238,97,128,48,246,231,242,229,229,238,236,225,238,228,233,99,128,1,56,104,6,114,130,115,3,115,14,115,39,115,126,115,214,97,5,114,142,114,152,114,163,114,170,114,195,226,229,238,231,225,236,105,128,9,150,227,249,242,233,236,236,233,99,128,4,69,228,229,246,97,128,9,22,231,117,2,114,177,114,186,234,225,242,225,244,105,128,10,150,242,237,245,235,232,105,128,10,22,104,4,114,205,114,214,114,228,114,244,225,242,225,226,233,99,128,6,46,230,233,238,225,236,225,242,225,226,233,99,128,254,166,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,167,237,229,228,233,225,236,225,242,225,226,233,99,128,254,168,229,233,227,239,240,244,233,99,128,3,231,232,97,2,115,21,115,28,228,229,246,97,128,9,89,231,245,242,237,245,235,232,105,128,10,89,233,229,245,235,104,4,115,53,115,88,115,103,115,112,97,2,115,59,115,74,227,233,242,227,236,229,235,239,242,229,225,110,128,50,120,240,225,242,229,238,235,239,242,229,225,110,128,50,24,227,233,242,227,236,229,235,239,242,229,225,110,128,50,106,235,239,242,229,225,110,128,49,75,240,225,242,229,238,235,239,242,229,225,110,128,50,10,111,4,115,136,115,185,115,195,115,200,235,104,4,115,147,115,156,115,165,115,175,225,233,244,232,225,105,128,14,2,239,238,244,232,225,105,128,14,5,245,225,244,244,232,225,105,128,14,3,247,225,233,244,232,225,105,128,14,4,237,245,244,244,232,225,105,128,14,91,239,107,128,1,153,242,225,235,232,225,238,231,244,232,225,105,128,14,6,250,243,241,245,225,242,101,128,51,145,105,4,115,234,115,245,116,14,116,63,232,233,242,225,231,225,238,97,128,48,77,235,225,244,225,235,225,238,97,129,48,173,116,2,232,225,236,230,247,233,228,244,104,128,255,119,242,111,3,116,23,116,38,116,54,231,245,242,225,237,245,243,241,245,225,242,101,128,51,21,237,229,229,244,239,242,245,243,241,245,225,242,101,128,51,22,243,241,245,225,242,101,128,51,20,249,229,239,107,5,116,78,116,113,116,128,116,137,116,151,97,2,116,84,116,99,227,233,242,227,236,229,235,239,242,229,225,110,128,50,110,240,225,242,229,238,235,239,242,229,225,110,128,50,14,227,233,242,227,236,229,235,239,242,229,225,110,128,50,96,235,239,242,229,225,110,128,49,49,240,225,242,229,238,235,239,242,229,225,110,128,50,0,243,233,239,243,235,239,242,229,225,110,128,49,51,234,229,227,249,242,233,236,236,233,99,128,4,92,108,2,116,183,116,194,233,238,229,226,229,236,239,119,128,30,53,243,241,245,225,242,101,128,51,152,109,3,116,211,116,225,116,236,227,245,226,229,228,243,241,245,225,242,101,128,51,166,239,238,239,243,240,225,227,101,128,255,75,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,162,111,5,117,8,117,34,117,72,117,84,117,98,104,2,117,14,117,24,233,242,225,231,225,238,97,128,48,83,237,243,241,245,225,242,101,128,51,192,235,97,2,117,41,117,49,233,244,232,225,105,128,14,1,244,225,235,225,238,97,129,48,179,117,60,232,225,236,230,247,233,228,244,104,128,255,122,239,240,239,243,241,245,225,242,101,128,51,30,240,240,225,227,249,242,233,236,236,233,99,128,4,129,114,2,117,104,117,124,229,225,238,243,244,225,238,228,225,242,228,243,249,237,226,239,108,128,50,127,239,238,233,243,227,237,98,128,3,67,240,97,2,117,141,117,147,242,229,110,128,36,166,243,241,245,225,242,101,128,51,170,243,233,227,249,242,233,236,236,233,99,128,4,111,116,2,117,175,117,184,243,241,245,225,242,101,128,51,207,245,242,238,229,100,128,2,158,117,2,117,198,117,209,232,233,242,225,231,225,238,97,128,48,79,235,225,244,225,235,225,238,97,129,48,175,117,222,232,225,236,230,247,233,228,244,104,128,255,120,246,243,241,245,225,242,101,128,51,184,247,243,241,245,225,242,101,128,51,190,108,146,0,108,118,38,120,65,120,94,120,160,120,198,121,94,121,103,121,119,121,143,121,161,122,23,122,64,122,199,122,207,122,240,122,249,123,1,123,63,97,7,118,54,118,64,118,71,118,78,118,103,118,119,120,53,226,229,238,231,225,236,105,128,9,178,227,245,244,101,128,1,58,228,229,246,97,128,9,50,231,117,2,118,85,118,94,234,225,242,225,244,105,128,10,178,242,237,245,235,232,105,128,10,50,235,235,232,225,238,231,249,225,239,244,232,225,105,128,14,69,109,10,118,141,119,80,119,97,119,135,119,149,119,168,119,184,119,204,119,224,119,247,97,2,118,147,119,72,236,229,102,4,118,159,118,173,119,9,119,26,230,233,238,225,236,225,242,225,226,233,99,128,254,252,232,225,237,250,97,2,118,183,118,224,225,226,239,246,101,2,118,193,118,207,230,233,238,225,236,225,242,225,226,233,99,128,254,248,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,247,226,229,236,239,119,2,118,234,118,248,230,233,238,225,236,225,242,225,226,233,99,128,254,250,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,249,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,251,237,225,228,228,225,225,226,239,246,101,2,119,41,119,55,230,233,238,225,236,225,242,225,226,233,99,128,254,246,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,245,242,225,226,233,99,128,6,68,226,228,97,129,3,187,119,88,243,244,242,239,235,101,128,1,155,229,100,130,5,220,119,106,119,126,228,225,231,229,243,104,129,251,60,119,117,232,229,226,242,229,119,128,251,60,232,229,226,242,229,119,128,5,220,230,233,238,225,236,225,242,225,226,233,99,128,254,222,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,202,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,223,234,229,229,237,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,201,235,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,203,236,225,237,232,229,232,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,253,242,237,101,2,119,254,120,11,228,233,225,236,225,242,225,226,233,99,128,254,224,229,109,2,120,18,120,37,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,253,136,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,204,242,231,229,227,233,242,227,236,101,128,37,239,98,3,120,73,120,78,120,84,225,114,128,1,154,229,236,116,128,2,108,239,240,239,237,239,230,111,128,49,12,99,4,120,104,120,111,120,120,120,147,225,242,239,110,128,1,62,229,228,233,236,236,97,128,1,60,233,242,99,2,120,128,120,133,236,101,128,36,219,245,237,230,236,229,248,226,229,236,239,119,128,30,61,239,237,237,225,225,227,227,229,238,116,128,1,60,228,239,116,130,1,64,120,170,120,179,225,227,227,229,238,116,128,1,64,226,229,236,239,119,129,30,55,120,189,237,225,227,242,239,110,128,30,57,101,3,120,206,120,244,121,89,230,116,2,120,213,120,229,225,238,231,236,229,225,226,239,246,229,227,237,98,128,3,26,244,225,227,235,226,229,236,239,247,227,237,98,128,3,24,243,115,132,0,60,121,1,121,23,121,35,121,81,229,241,245,225,108,129,34,100,121,11,239,242,231,242,229,225,244,229,114,128,34,218,237,239,238,239,243,240,225,227,101,128,255,28,111,2,121,41,121,70,114,2,121,47,121,60,229,241,245,233,246,225,236,229,238,116,128,34,114,231,242,229,225,244,229,114,128,34,118,246,229,242,229,241,245,225,108,128,34,102,243,237,225,236,108,128,254,100,250,104,128,2,110,230,226,236,239,227,107,128,37,140,232,239,239,235,242,229,244,242,239,230,236,229,120,128,2,109,105,2,121,125,121,130,242,97,128,32,164,247,238,225,242,237,229,238,233,225,110,128,5,108,106,129,1,201,121,149,229,227,249,242,233,236,236,233,99,128,4,89,108,132,246,192,121,173,121,197,121,208,121,217,97,2,121,179,121,186,228,229,246,97,128,9,51,231,245,234,225,242,225,244,105,128,10,179,233,238,229,226,229,236,239,119,128,30,59,236,225,228,229,246,97,128,9,52,246,239,227,225,236,233,99,3,121,231,121,241,121,248,226,229,238,231,225,236,105,128,9,225,228,229,246,97,128,9,97,246,239,247,229,236,243,233,231,110,2,122,6,122,16,226,229,238,231,225,236,105,128,9,227,228,229,246,97,128,9,99,109,3,122,31,122,44,122,55,233,228,228,236,229,244,233,236,228,101,128,2,107,239,238,239,243,240,225,227,101,128,255,76,243,241,245,225,242,101,128,51,208,111,6,122,78,122,90,122,132,122,143,122,149,122,191,227,232,245,236,225,244,232,225,105,128,14,44,231,233,227,225,108,3,122,102,122,108,122,127,225,238,100,128,34,39,238,239,116,129,0,172,122,116,242,229,246,229,242,243,229,100,128,35,16,239,114,128,34,40,236,233,238,231,244,232,225,105,128,14,37,238,231,115,128,1,127,247,236,233,238,101,2,122,159,122,182,99,2,122,165,122,177,229,238,244,229,242,236,233,238,101,128,254,78,237,98,128,3,50,228,225,243,232,229,100,128,254,77,250,229,238,231,101,128,37,202,240,225,242,229,110,128,36,167,115,3,122,215,122,222,122,230,236,225,243,104,128,1,66,241,245,225,242,101,128,33,19,245,240,229,242,233,239,114,128,246,238,244,243,232,225,228,101,128,37,145,245,244,232,225,105,128,14,38,246,239,227,225,236,233,99,3,123,15,123,25,123,32,226,229,238,231,225,236,105,128,9,140,228,229,246,97,128,9,12,246,239,247,229,236,243,233,231,110,2,123,46,123,56,226,229,238,231,225,236,105,128,9,226,228,229,246,97,128,9,98,248,243,241,245,225,242,101,128,51,211,109,144,0,109,123,109,125,218,125,243,126,14,126,39,127,92,127,114,128,169,128,199,128,248,129,99,129,121,129,146,129,155,130,182,130,210,97,12,123,135,123,145,123,209,123,216,123,241,124,33,125,125,125,150,125,155,125,169,125,181,125,186,226,229,238,231,225,236,105,128,9,174,99,2,123,151,123,203,242,239,110,132,0,175,123,165,123,176,123,182,123,191,226,229,236,239,247,227,237,98,128,3,49,227,237,98,128,3,4,236,239,247,237,239,100,128,2,205,237,239,238,239,243,240,225,227,101,128,255,227,245,244,101,128,30,63,228,229,246,97,128,9,46,231,117,2,123,223,123,232,234,225,242,225,244,105,128,10,174,242,237,245,235,232,105,128,10,46,104,2,123,247,124,23,225,240,225,235,104,2,124,1,124,10,232,229,226,242,229,119,128,5,164,236,229,230,244,232,229,226,242,229,119,128,5,164,233,242,225,231,225,238,97,128,48,126,105,5,124,45,124,114,124,177,124,207,125,113,227,232,225,244,244,225,247,97,3,124,60,124,91,124,98,236,239,119,2,124,68,124,79,236,229,230,244,244,232,225,105,128,248,149,242,233,231,232,244,244,232,225,105,128,248,148,244,232,225,105,128,14,75,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,147,229,107,3,124,123,124,154,124,161,236,239,119,2,124,131,124,142,236,229,230,244,244,232,225,105,128,248,140,242,233,231,232,244,244,232,225,105,128,248,139,244,232,225,105,128,14,72,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,138,232,225,238,225,235,225,116,2,124,189,124,200,236,229,230,244,244,232,225,105,128,248,132,244,232,225,105,128,14,49,116,3,124,215,124,243,125,50,225,233,235,232,117,2,124,225,124,236,236,229,230,244,244,232,225,105,128,248,137,244,232,225,105,128,14,71,232,111,3,124,252,125,27,125,34,236,239,119,2,125,4,125,15,236,229,230,244,244,232,225,105,128,248,143,242,233,231,232,244,244,232,225,105,128,248,142,244,232,225,105,128,14,73,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,141,242,105,3,125,59,125,90,125,97,236,239,119,2,125,67,125,78,236,229,230,244,244,232,225,105,128,248,146,242,233,231,232,244,244,232,225,105,128,248,145,244,232,225,105,128,14,74,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,144,249,225,237,239,235,244,232,225,105,128,14,70,235,225,244,225,235,225,238,97,129,48,222,125,138,232,225,236,230,247,233,228,244,104,128,255,143,236,101,128,38,66,238,243,249,239,238,243,241,245,225,242,101,128,51,71,241,225,230,232,229,226,242,229,119,128,5,190,242,115,128,38,66,115,2,125,192,125,210,239,242,225,227,233,242,227,236,229,232,229,226,242,229,119,128,5,175,241,245,225,242,101,128,51,131,98,2,125,224,125,234,239,240,239,237,239,230,111,128,49,7,243,241,245,225,242,101,128,51,212,99,2,125,249,126,1,233,242,227,236,101,128,36,220,245,226,229,228,243,241,245,225,242,101,128,51,165,228,239,116,2,126,22,126,31,225,227,227,229,238,116,128,30,65,226,229,236,239,119,128,30,67,101,7,126,55,126,182,126,193,126,208,126,233,127,14,127,26,101,2,126,61,126,169,109,4,126,71,126,80,126,94,126,110,225,242,225,226,233,99,128,6,69,230,233,238,225,236,225,242,225,226,233,99,128,254,226,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,227,237,101,2,126,117,126,130,228,233,225,236,225,242,225,226,233,99,128,254,228,229,237,105,2,126,138,126,153,238,233,244,233,225,236,225,242,225,226,233,99,128,252,209,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,72,244,239,242,245,243,241,245,225,242,101,128,51,77,232,233,242,225,231,225,238,97,128,48,129,233,250,233,229,242,225,243,241,245,225,242,101,128,51,126,235,225,244,225,235,225,238,97,129,48,225,126,221,232,225,236,230,247,233,228,244,104,128,255,146,109,130,5,222,126,241,127,5,228,225,231,229,243,104,129,251,62,126,252,232,229,226,242,229,119,128,251,62,232,229,226,242,229,119,128,5,222,238,225,242,237,229,238,233,225,110,128,5,116,242,235,232,97,3,127,37,127,46,127,79,232,229,226,242,229,119,128,5,165,235,229,230,245,236,97,2,127,57,127,66,232,229,226,242,229,119,128,5,166,236,229,230,244,232,229,226,242,229,119,128,5,166,236,229,230,244,232,229,226,242,229,119,128,5,165,104,2,127,98,127,104,239,239,107,128,2,113,250,243,241,245,225,242,101,128,51,146,105,6,127,128,127,165,128,46,128,57,128,82,128,139,228,100,2,127,135,127,160,236,229,228,239,244,235,225,244,225,235,225,238,225,232,225,236,230,247,233,228,244,104,128,255,101,239,116,128,0,183,229,245,109,5,127,179,127,214,127,229,127,238,128,33,97,2,127,185,127,200,227,233,242,227,236,229,235,239,242,229,225,110,128,50,114,240,225,242,229,238,235,239,242,229,225,110,128,50,18,227,233,242,227,236,229,235,239,242,229,225,110,128,50,100,235,239,242,229,225,110,128,49,65,112,2,127,244,128,20,97,2,127,250,128,8,238,243,233,239,243,235,239,242,229,225,110,128,49,112,242,229,238,235,239,242,229,225,110,128,50,4,233,229,245,240,235,239,242,229,225,110,128,49,110,243,233,239,243,235,239,242,229,225,110,128,49,111,232,233,242,225,231,225,238,97,128,48,127,235,225,244,225,235,225,238,97,129,48,223,128,70,232,225,236,230,247,233,228,244,104,128,255,144,238,117,2,128,89,128,134,115,132,34,18,128,101,128,112,128,121,128,127,226,229,236,239,247,227,237,98,128,3,32,227,233,242,227,236,101,128,34,150,237,239,100,128,2,215,240,236,245,115,128,34,19,244,101,128,32,50,242,105,2,128,146,128,160,226,225,225,242,245,243,241,245,225,242,101,128,51,74,243,241,245,225,242,101,128,51,73,108,2,128,175,128,190,239,238,231,236,229,231,244,245,242,238,229,100,128,2,112,243,241,245,225,242,101,128,51,150,109,3,128,207,128,221,128,232,227,245,226,229,228,243,241,245,225,242,101,128,51,163,239,238,239,243,240,225,227,101,128,255,77,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,159,111,5,129,4,129,30,129,55,129,65,129,74,104,2,129,10,129,20,233,242,225,231,225,238,97,128,48,130,237,243,241,245,225,242,101,128,51,193,235,225,244,225,235,225,238,97,129,48,226,129,43,232,225,236,230,247,233,228,244,104,128,255,147,236,243,241,245,225,242,101,128,51,214,237,225,244,232,225,105,128,14,33,246,229,242,243,243,241,245,225,242,101,129,51,167,129,89,228,243,241,245,225,242,101,128,51,168,240,97,2,129,106,129,112,242,229,110,128,36,168,243,241,245,225,242,101,128,51,171,115,2,129,127,129,136,243,241,245,225,242,101,128,51,179,245,240,229,242,233,239,114,128,246,239,244,245,242,238,229,100,128,2,111,117,141,0,181,129,185,129,189,129,199,129,223,129,233,129,255,130,10,130,35,130,58,130,68,130,98,130,162,130,172,49,128,0,181,225,243,241,245,225,242,101,128,51,130,227,104,2,129,206,129,216,231,242,229,225,244,229,114,128,34,107,236,229,243,115,128,34,106,230,243,241,245,225,242,101,128,51,140,103,2,129,239,129,246,242,229,229,107,128,3,188,243,241,245,225,242,101,128,51,141,232,233,242,225,231,225,238,97,128,48,128,235,225,244,225,235,225,238,97,129,48,224,130,23,232,225,236,230,247,233,228,244,104,128,255,145,108,2,130,41,130,50,243,241,245,225,242,101,128,51,149,244,233,240,236,121,128,0,215,237,243,241,245,225,242,101,128,51,155,238,225,104,2,130,76,130,85,232,229,226,242,229,119,128,5,163,236,229,230,244,232,229,226,242,229,119,128,5,163,115,2,130,104,130,153,233,99,3,130,113,130,130,130,141,225,236,238,239,244,101,129,38,106,130,124,228,226,108,128,38,107,230,236,225,244,243,233,231,110,128,38,109,243,232,225,242,240,243,233,231,110,128,38,111,243,241,245,225,242,101,128,51,178,246,243,241,245,225,242,101,128,51,182,247,243,241,245,225,242,101,128,51,188,118,2,130,188,130,201,237,229,231,225,243,241,245,225,242,101,128,51,185,243,241,245,225,242,101,128,51,183,119,2,130,216,130,229,237,229,231,225,243,241,245,225,242,101,128,51,191,243,241,245,225,242,101,128,51,189,110,150,0,110,131,30,131,164,131,188,131,254,132,23,132,81,132,91,132,158,132,201,134,235,134,253,135,22,135,53,135,79,135,144,137,126,137,134,137,159,137,167,138,135,138,145,138,155,97,8,131,48,131,68,131,75,131,82,131,107,131,118,131,143,131,155,98,2,131,54,131,63,229,238,231,225,236,105,128,9,168,236,97,128,34,7,227,245,244,101,128,1,68,228,229,246,97,128,9,40,231,117,2,131,89,131,98,234,225,242,225,244,105,128,10,168,242,237,245,235,232,105,128,10,40,232,233,242,225,231,225,238,97,128,48,106,235,225,244,225,235,225,238,97,129,48,202,131,131,232,225,236,230,247,233,228,244,104,128,255,133,240,239,243,244,242,239,240,232,101,128,1,73,243,241,245,225,242,101,128,51,129,98,2,131,170,131,180,239,240,239,237,239,230,111,128,49,11,243,240,225,227,101,128,0,160,99,4,131,198,131,205,131,214,131,241,225,242,239,110,128,1,72,229,228,233,236,236,97,128,1,70,233,242,99,2,131,222,131,227,236,101,128,36,221,245,237,230,236,229,248,226,229,236,239,119,128,30,75,239,237,237,225,225,227,227,229,238,116,128,1,70,228,239,116,2,132,6,132,15,225,227,227,229,238,116,128,30,69,226,229,236,239,119,128,30,71,101,3,132,31,132,42,132,67,232,233,242,225,231,225,238,97,128,48,109,235,225,244,225,235,225,238,97,129,48,205,132,55,232,225,236,230,247,233,228,244,104,128,255,136,247,243,232,229,241,229,236,243,233,231,110,128,32,170,230,243,241,245,225,242,101,128,51,139,103,2,132,97,132,147,97,3,132,105,132,115,132,122,226,229,238,231,225,236,105,128,9,153,228,229,246,97,128,9,25,231,117,2,132,129,132,138,234,225,242,225,244,105,128,10,153,242,237,245,235,232,105,128,10,25,239,238,231,245,244,232,225,105,128,14,7,104,2,132,164,132,174,233,242,225,231,225,238,97,128,48,147,239,239,107,2,132,182,132,189,236,229,230,116,128,2,114,242,229,244,242,239,230,236,229,120,128,2,115,105,4,132,211,133,124,133,135,133,193,229,245,110,7,132,229,133,8,133,40,133,54,133,63,133,96,133,109,97,2,132,235,132,250,227,233,242,227,236,229,235,239,242,229,225,110,128,50,111,240,225,242,229,238,235,239,242,229,225,110,128,50,15,227,105,2,133,15,133,27,229,245,227,235,239,242,229,225,110,128,49,53,242,227,236,229,235,239,242,229,225,110,128,50,97,232,233,229,245,232,235,239,242,229,225,110,128,49,54,235,239,242,229,225,110,128,49,52,240,97,2,133,70,133,84,238,243,233,239,243,235,239,242,229,225,110,128,49,104,242,229,238,235,239,242,229,225,110,128,50,1,243,233,239,243,235,239,242,229,225,110,128,49,103,244,233,235,229,245,244,235,239,242,229,225,110,128,49,102,232,233,242,225,231,225,238,97,128,48,107,107,2,133,141,133,165,225,244,225,235,225,238,97,129,48,203,133,153,232,225,236,230,247,233,228,244,104,128,255,134,232,225,232,233,116,2,133,175,133,186,236,229,230,244,244,232,225,105,128,248,153,244,232,225,105,128,14,77,238,101,141,0,57,133,224,133,233,133,243,134,17,134,24,134,49,134,76,134,110,134,122,134,133,134,166,134,174,134,185,225,242,225,226,233,99,128,6,105,226,229,238,231,225,236,105,128,9,239,227,233,242,227,236,101,129,36,104,133,254,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,146,228,229,246,97,128,9,111,231,117,2,134,31,134,40,234,225,242,225,244,105,128,10,239,242,237,245,235,232,105,128,10,111,232,97,2,134,56,134,67,227,235,225,242,225,226,233,99,128,6,105,238,231,250,232,239,117,128,48,41,105,2,134,82,134,100,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,40,238,230,229,242,233,239,114,128,32,137,237,239,238,239,243,240,225,227,101,128,255,25,239,236,228,243,244,249,236,101,128,247,57,112,2,134,139,134,146,225,242,229,110,128,36,124,229,114,2,134,153,134,159,233,239,100,128,36,144,243,233,225,110,128,6,249,242,239,237,225,110,128,33,120,243,245,240,229,242,233,239,114,128,32,121,116,2,134,191,134,229,229,229,110,2,134,199,134,208,227,233,242,227,236,101,128,36,114,112,2,134,214,134,221,225,242,229,110,128,36,134,229,242,233,239,100,128,36,154,232,225,105,128,14,89,106,129,1,204,134,241,229,227,249,242,233,236,236,233,99,128,4,90,235,225,244,225,235,225,238,97,129,48,243,135,10,232,225,236,230,247,233,228,244,104,128,255,157,108,2,135,28,135,42,229,231,242,233,231,232,244,236,239,238,103,128,1,158,233,238,229,226,229,236,239,119,128,30,73,109,2,135,59,135,70,239,238,239,243,240,225,227,101,128,255,78,243,241,245,225,242,101,128,51,154,110,2,135,85,135,135,97,3,135,93,135,103,135,110,226,229,238,231,225,236,105,128,9,163,228,229,246,97,128,9,35,231,117,2,135,117,135,126,234,225,242,225,244,105,128,10,163,242,237,245,235,232,105,128,10,35,238,225,228,229,246,97,128,9,41,111,6,135,158,135,169,135,194,135,235,136,187,137,114,232,233,242,225,231,225,238,97,128,48,110,235,225,244,225,235,225,238,97,129,48,206,135,182,232,225,236,230,247,233,228,244,104,128,255,137,110,3,135,202,135,218,135,227,226,242,229,225,235,233,238,231,243,240,225,227,101,128,0,160,229,238,244,232,225,105,128,14,19,245,244,232,225,105,128,14,25,239,110,7,135,252,136,5,136,19,136,53,136,69,136,110,136,169,225,242,225,226,233,99,128,6,70,230,233,238,225,236,225,242,225,226,233,99,128,254,230,231,232,245,238,238,97,2,136,30,136,39,225,242,225,226,233,99,128,6,186,230,233,238,225,236,225,242,225,226,233,99,128,251,159,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,231,234,229,229,237,105,2,136,79,136,94,238,233,244,233,225,236,225,242,225,226,233,99,128,252,210,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,75,237,101,2,136,117,136,130,228,233,225,236,225,242,225,226,233,99,128,254,232,229,237,105,2,136,138,136,153,238,233,244,233,225,236,225,242,225,226,233,99,128,252,213,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,78,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,141,116,7,136,203,136,214,136,243,137,22,137,34,137,54,137,80,227,239,238,244,225,233,238,115,128,34,12,101,2,136,220,136,236,236,229,237,229,238,116,129,34,9,136,231,239,102,128,34,9,241,245,225,108,128,34,96,231,242,229,225,244,229,114,129,34,111,136,255,238,239,114,2,137,7,137,15,229,241,245,225,108,128,34,113,236,229,243,115,128,34,121,233,228,229,238,244,233,227,225,108,128,34,98,236,229,243,115,129,34,110,137,43,238,239,242,229,241,245,225,108,128,34,112,112,2,137,60,137,70,225,242,225,236,236,229,108,128,34,38,242,229,227,229,228,229,115,128,34,128,243,117,3,137,89,137,96,137,105,226,243,229,116,128,34,132,227,227,229,229,228,115,128,34,129,240,229,242,243,229,116,128,34,133,247,225,242,237,229,238,233,225,110,128,5,118,240,225,242,229,110,128,36,169,115,2,137,140,137,149,243,241,245,225,242,101,128,51,177,245,240,229,242,233,239,114,128,32,127,244,233,236,228,101,128,0,241,117,132,3,189,137,179,137,190,138,15,138,98,232,233,242,225,231,225,238,97,128,48,108,107,2,137,196,137,220,225,244,225,235,225,238,97,129,48,204,137,208,232,225,236,230,247,233,228,244,104,128,255,135,244,97,3,137,229,137,239,137,246,226,229,238,231,225,236,105,128,9,188,228,229,246,97,128,9,60,231,117,2,137,253,138,6,234,225,242,225,244,105,128,10,188,242,237,245,235,232,105,128,10,60,109,2,138,21,138,55,226,229,242,243,233,231,110,130,0,35,138,35,138,47,237,239,238,239,243,240,225,227,101,128,255,3,243,237,225,236,108,128,254,95,229,114,2,138,62,138,94,225,236,243,233,231,110,2,138,73,138,81,231,242,229,229,107,128,3,116,236,239,247,229,242,231,242,229,229,107,128,3,117,111,128,33,22,110,130,5,224,138,106,138,126,228,225,231,229,243,104,129,251,64,138,117,232,229,226,242,229,119,128,251,64,232,229,226,242,229,119,128,5,224,246,243,241,245,225,242,101,128,51,181,247,243,241,245,225,242,101,128,51,187,249,97,3,138,164,138,174,138,181,226,229,238,231,225,236,105,128,9,158,228,229,246,97,128,9,30,231,117,2,138,188,138,197,234,225,242,225,244,105,128,10,158,242,237,245,235,232,105,128,10,30,111,147,0,111,138,248,139,14,139,92,140,6,140,78,140,93,140,133,141,0,141,21,141,59,141,70,141,248,143,82,143,146,143,179,143,225,144,98,144,145,144,157,97,2,138,254,139,5,227,245,244,101,128,0,243,238,231,244,232,225,105,128,14,45,98,4,139,24,139,66,139,75,139,85,225,242,242,229,100,130,2,117,139,36,139,47,227,249,242,233,236,236,233,99,128,4,233,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,235,229,238,231,225,236,105,128,9,147,239,240,239,237,239,230,111,128,49,27,242,229,246,101,128,1,79,99,3,139,100,139,173,139,252,97,2,139,106,139,167,238,228,242,97,3,139,117,139,124,139,135,228,229,246,97,128,9,17,231,245,234,225,242,225,244,105,128,10,145,246,239,247,229,236,243,233,231,110,2,139,149,139,156,228,229,246,97,128,9,73,231,245,234,225,242,225,244,105,128,10,201,242,239,110,128,1,210,233,242,99,2,139,181,139,186,236,101,128,36,222,245,237,230,236,229,120,133,0,244,139,205,139,213,139,224,139,232,139,244,225,227,245,244,101,128,30,209,228,239,244,226,229,236,239,119,128,30,217,231,242,225,246,101,128,30,211,232,239,239,235,225,226,239,246,101,128,30,213,244,233,236,228,101,128,30,215,249,242,233,236,236,233,99,128,4,62,100,4,140,16,140,39,140,45,140,68,226,108,2,140,23,140,31,225,227,245,244,101,128,1,81,231,242,225,246,101,128,2,13,229,246,97,128,9,19,233,229,242,229,243,233,115,129,0,246,140,57,227,249,242,233,236,236,233,99,128,4,231,239,244,226,229,236,239,119,128,30,205,101,129,1,83,140,84,235,239,242,229,225,110,128,49,90,103,3,140,101,140,116,140,123,239,238,229,107,129,2,219,140,110,227,237,98,128,3,40,242,225,246,101,128,0,242,245,234,225,242,225,244,105,128,10,147,104,4,140,143,140,154,140,164,140,242,225,242,237,229,238,233,225,110,128,5,133,233,242,225,231,225,238,97,128,48,74,111,2,140,170,140,180,239,235,225,226,239,246,101,128,30,207,242,110,133,1,161,140,195,140,203,140,214,140,222,140,234,225,227,245,244,101,128,30,219,228,239,244,226,229,236,239,119,128,30,227,231,242,225,246,101,128,30,221,232,239,239,235,225,226,239,246,101,128,30,223,244,233,236,228,101,128,30,225,245,238,231,225,242,245,237,236,225,245,116,128,1,81,105,129,1,163,141,6,238,246,229,242,244,229,228,226,242,229,246,101,128,2,15,107,2,141,27,141,51,225,244,225,235,225,238,97,129,48,170,141,39,232,225,236,230,247,233,228,244,104,128,255,117,239,242,229,225,110,128,49,87,236,229,232,229,226,242,229,119,128,5,171,109,6,141,84,141,112,141,119,141,208,141,219,141,237,225,227,242,239,110,130,1,77,141,96,141,104,225,227,245,244,101,128,30,83,231,242,225,246,101,128,30,81,228,229,246,97,128,9,80,229,231,97,133,3,201,141,135,141,139,141,150,141,164,141,180,49,128,3,214,227,249,242,233,236,236,233,99,128,4,97,236,225,244,233,238,227,236,239,243,229,100,128,2,119,242,239,245,238,228,227,249,242,233,236,236,233,99,128,4,123,116,2,141,186,141,201,233,244,236,239,227,249,242,233,236,236,233,99,128,4,125,239,238,239,115,128,3,206,231,245,234,225,242,225,244,105,128,10,208,233,227,242,239,110,129,3,191,141,229,244,239,238,239,115,128,3,204,239,238,239,243,240,225,227,101,128,255,79,238,101,145,0,49,142,31,142,40,142,50,142,80,142,105,142,114,142,123,142,148,142,182,142,216,142,228,142,247,143,2,143,35,143,45,143,53,143,64,225,242,225,226,233,99,128,6,97,226,229,238,231,225,236,105,128,9,231,227,233,242,227,236,101,129,36,96,142,61,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,138,100,2,142,86,142,92,229,246,97,128,9,103,239,244,229,238,236,229,225,228,229,114,128,32,36,229,233,231,232,244,104,128,33,91,230,233,244,244,229,100,128,246,220,231,117,2,142,130,142,139,234,225,242,225,244,105,128,10,231,242,237,245,235,232,105,128,10,103,232,97,3,142,157,142,168,142,173,227,235,225,242,225,226,233,99,128,6,97,236,102,128,0,189,238,231,250,232,239,117,128,48,33,105,2,142,188,142,206,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,32,238,230,229,242,233,239,114,128,32,129,237,239,238,239,243,240,225,227,101,128,255,17,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,244,239,236,228,243,244,249,236,101,128,247,49,112,2,143,8,143,15,225,242,229,110,128,36,116,229,114,2,143,22,143,28,233,239,100,128,36,136,243,233,225,110,128,6,241,241,245,225,242,244,229,114,128,0,188,242,239,237,225,110,128,33,112,243,245,240,229,242,233,239,114,128,0,185,244,104,2,143,71,143,76,225,105,128,14,81,233,242,100,128,33,83,111,3,143,90,143,124,143,140,103,2,143,96,143,114,239,238,229,107,129,1,235,143,105,237,225,227,242,239,110,128,1,237,245,242,237,245,235,232,105,128,10,19,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,75,240,229,110,128,2,84,112,3,143,154,143,161,143,172,225,242,229,110,128,36,170,229,238,226,245,236,236,229,116,128,37,230,244,233,239,110,128,35,37,114,2,143,185,143,214,100,2,143,191,143,202,230,229,237,233,238,233,238,101,128,0,170,237,225,243,227,245,236,233,238,101,128,0,186,244,232,239,231,239,238,225,108,128,34,31,115,5,143,237,144,13,144,30,144,75,144,88,232,239,242,116,2,143,246,143,253,228,229,246,97,128,9,18,246,239,247,229,236,243,233,231,238,228,229,246,97,128,9,74,236,225,243,104,129,0,248,144,22,225,227,245,244,101,128,1,255,237,225,236,108,2,144,39,144,50,232,233,242,225,231,225,238,97,128,48,73,235,225,244,225,235,225,238,97,129,48,169,144,63,232,225,236,230,247,233,228,244,104,128,255,107,244,242,239,235,229,225,227,245,244,101,128,1,255,245,240,229,242,233,239,114,128,246,240,116,2,144,104,144,115,227,249,242,233,236,236,233,99,128,4,127,233,236,228,101,130,0,245,144,126,144,134,225,227,245,244,101,128,30,77,228,233,229,242,229,243,233,115,128,30,79,245,226,239,240,239,237,239,230,111,128,49,33,118,2,144,163,144,244,229,114,2,144,170,144,236,236,233,238,101,131,32,62,144,183,144,206,144,229,99,2,144,189,144,201,229,238,244,229,242,236,233,238,101,128,254,74,237,98,128,3,5,100,2,144,212,144,220,225,243,232,229,100,128,254,73,226,236,247,225,246,121,128,254,76,247,225,246,121,128,254,75,243,227,239,242,101,128,0,175,239,247,229,236,243,233,231,110,3,145,3,145,13,145,20,226,229,238,231,225,236,105,128,9,203,228,229,246,97,128,9,75,231,245,234,225,242,225,244,105,128,10,203,112,145,0,112,145,69,147,197,147,208,147,217,147,229,149,154,149,164,150,156,151,175,152,9,152,35,152,166,152,174,153,76,153,134,153,162,153,172,97,14,145,99,145,131,145,141,145,148,145,155,145,203,145,214,145,228,145,239,146,30,146,44,147,56,147,95,147,185,97,2,145,105,145,117,237,240,243,243,241,245,225,242,101,128,51,128,243,229,238,244,239,243,241,245,225,242,101,128,51,43,226,229,238,231,225,236,105,128,9,170,227,245,244,101,128,30,85,228,229,246,97,128,9,42,103,2,145,161,145,179,101,2,145,167,145,174,228,239,247,110,128,33,223,245,112,128,33,222,117,2,145,185,145,194,234,225,242,225,244,105,128,10,170,242,237,245,235,232,105,128,10,42,232,233,242,225,231,225,238,97,128,48,113,233,249,225,238,238,239,233,244,232,225,105,128,14,47,235,225,244,225,235,225,238,97,128,48,209,108,2,145,245,146,14,225,244,225,236,233,250,225,244,233,239,238,227,249,242,233,236,236,233,227,227,237,98,128,4,132,239,227,232,235,225,227,249,242,233,236,236,233,99,128,4,192,238,243,233,239,243,235,239,242,229,225,110,128,49,127,114,3,146,52,146,73,147,45,97,2,146,58,146,66,231,242,225,240,104,128,0,182,236,236,229,108,128,34,37,229,110,2,146,80,146,190,236,229,230,116,136,0,40,146,103,146,118,146,123,146,128,146,139,146,151,146,174,146,179,225,236,244,239,238,229,225,242,225,226,233,99,128,253,62,226,116,128,248,237,229,120,128,248,236,233,238,230,229,242,233,239,114,128,32,141,237,239,238,239,243,240,225,227,101,128,255,8,115,2,146,157,146,164,237,225,236,108,128,254,89,245,240,229,242,233,239,114,128,32,125,244,112,128,248,235,246,229,242,244,233,227,225,108,128,254,53,242,233,231,232,116,136,0,41,146,214,146,229,146,234,146,239,146,250,147,6,147,29,147,34,225,236,244,239,238,229,225,242,225,226,233,99,128,253,63,226,116,128,248,248,229,120,128,248,247,233,238,230,229,242,233,239,114,128,32,142,237,239,238,239,243,240,225,227,101,128,255,9,115,2,147,12,147,19,237,225,236,108,128,254,90,245,240,229,242,233,239,114,128,32,126,244,112,128,248,246,246,229,242,244,233,227,225,108,128,254,54,244,233,225,236,228,233,230,102,128,34,2,115,3,147,64,147,75,147,87,229,241,232,229,226,242,229,119,128,5,192,232,244,225,232,229,226,242,229,119,128,5,153,241,245,225,242,101,128,51,169,244,225,104,134,5,183,147,113,147,127,147,132,147,141,147,156,147,172,49,2,147,119,147,123,49,128,5,183,100,128,5,183,178,97,128,5,183,232,229,226,242,229,119,128,5,183,238,225,242,242,239,247,232,229,226,242,229,119,128,5,183,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,183,247,233,228,229,232,229,226,242,229,119,128,5,183,250,229,242,232,229,226,242,229,119,128,5,161,226,239,240,239,237,239,230,111,128,49,6,227,233,242,227,236,101,128,36,223,228,239,244,225,227,227,229,238,116,128,30,87,101,137,5,228,147,251,148,6,148,26,148,38,148,58,148,160,148,171,148,192,149,147,227,249,242,233,236,236,233,99,128,4,63,228,225,231,229,243,104,129,251,68,148,17,232,229,226,242,229,119,128,251,68,229,250,233,243,241,245,225,242,101,128,51,59,230,233,238,225,236,228,225,231,229,243,232,232,229,226,242,229,119,128,251,67,104,5,148,70,148,93,148,101,148,115,148,145,225,114,2,148,77,148,84,225,226,233,99,128,6,126,237,229,238,233,225,110,128,5,122,229,226,242,229,119,128,5,228,230,233,238,225,236,225,242,225,226,233,99,128,251,87,105,2,148,121,148,136,238,233,244,233,225,236,225,242,225,226,233,99,128,251,88,242,225,231,225,238,97,128,48,122,237,229,228,233,225,236,225,242,225,226,233,99,128,251,89,235,225,244,225,235,225,238,97,128,48,218,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,167,114,5,148,204,148,216,149,2,149,123,149,136,225,230,229,232,229,226,242,229,119,128,251,78,227,229,238,116,131,0,37,148,229,148,238,148,250,225,242,225,226,233,99,128,6,106,237,239,238,239,243,240,225,227,101,128,255,5,243,237,225,236,108,128,254,106,105,2,149,8,149,105,239,100,134,0,46,149,25,149,36,149,47,149,59,149,70,149,82,225,242,237,229,238,233,225,110,128,5,137,227,229,238,244,229,242,229,100,128,0,183,232,225,236,230,247,233,228,244,104,128,255,97,233,238,230,229,242,233,239,114,128,246,231,237,239,238,239,243,240,225,227,101,128,255,14,115,2,149,88,149,95,237,225,236,108,128,254,82,245,240,229,242,233,239,114,128,246,232,243,240,239,237,229,238,233,231,242,229,229,235,227,237,98,128,3,66,240,229,238,228,233,227,245,236,225,114,128,34,165,244,232,239,245,243,225,238,100,128,32,48,243,229,244,97,128,32,167,230,243,241,245,225,242,101,128,51,138,104,3,149,172,149,222,150,103,97,3,149,180,149,190,149,197,226,229,238,231,225,236,105,128,9,171,228,229,246,97,128,9,43,231,117,2,149,204,149,213,234,225,242,225,244,105,128,10,171,242,237,245,235,232,105,128,10,43,105,133,3,198,149,236,149,240,150,70,150,78,150,89,49,128,3,213,229,245,240,104,4,149,253,150,32,150,47,150,56,97,2,150,3,150,18,227,233,242,227,236,229,235,239,242,229,225,110,128,50,122,240,225,242,229,238,235,239,242,229,225,110,128,50,26,227,233,242,227,236,229,235,239,242,229,225,110,128,50,108,235,239,242,229,225,110,128,49,77,240,225,242,229,238,235,239,242,229,225,110,128,50,12,236,225,244,233,110,128,2,120,238,244,232,245,244,232,225,105,128,14,58,243,249,237,226,239,236,231,242,229,229,107,128,3,213,111,3,150,111,150,116,150,142,239,107,128,1,165,240,104,2,150,123,150,132,225,238,244,232,225,105,128,14,30,245,238,231,244,232,225,105,128,14,28,243,225,237,240,232,225,239,244,232,225,105,128,14,32,105,133,3,192,150,170,151,126,151,137,151,148,151,162,229,245,112,6,150,186,150,221,150,253,151,25,151,39,151,91,97,2,150,192,150,207,227,233,242,227,236,229,235,239,242,229,225,110,128,50,115,240,225,242,229,238,235,239,242,229,225,110,128,50,19,227,105,2,150,228,150,240,229,245,227,235,239,242,229,225,110,128,49,118,242,227,236,229,235,239,242,229,225,110,128,50,101,107,2,151,3,151,17,233,249,229,239,235,235,239,242,229,225,110,128,49,114,239,242,229,225,110,128,49,66,240,225,242,229,238,235,239,242,229,225,110,128,50,5,243,233,239,115,2,151,48,151,76,107,2,151,54,151,68,233,249,229,239,235,235,239,242,229,225,110,128,49,116,239,242,229,225,110,128,49,68,244,233,235,229,245,244,235,239,242,229,225,110,128,49,117,116,2,151,97,151,112,232,233,229,245,244,232,235,239,242,229,225,110,128,49,119,233,235,229,245,244,235,239,242,229],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+40960);allocate([225,110,128,49,115,232,233,242,225,231,225,238,97,128,48,116,235,225,244,225,235,225,238,97,128,48,212,243,249,237,226,239,236,231,242,229,229,107,128,3,214,247,242,225,242,237,229,238,233,225,110,128,5,131,236,245,115,132,0,43,151,189,151,200,151,209,151,242,226,229,236,239,247,227,237,98,128,3,31,227,233,242,227,236,101,128,34,149,109,2,151,215,151,222,233,238,245,115,128,0,177,111,2,151,228,151,232,100,128,2,214,238,239,243,240,225,227,101,128,255,11,115,2,151,248,151,255,237,225,236,108,128,254,98,245,240,229,242,233,239,114,128,32,122,109,2,152,15,152,26,239,238,239,243,240,225,227,101,128,255,80,243,241,245,225,242,101,128,51,216,111,5,152,47,152,58,152,125,152,136,152,146,232,233,242,225,231,225,238,97,128,48,125,233,238,244,233,238,231,233,238,228,229,120,4,152,78,152,90,152,102,152,115,228,239,247,238,247,232,233,244,101,128,38,31,236,229,230,244,247,232,233,244,101,128,38,28,242,233,231,232,244,247,232,233,244,101,128,38,30,245,240,247,232,233,244,101,128,38,29,235,225,244,225,235,225,238,97,128,48,221,240,236,225,244,232,225,105,128,14,27,243,244,225,236,237,225,242,107,129,48,18,152,159,230,225,227,101,128,48,32,240,225,242,229,110,128,36,171,114,3,152,182,152,208,152,233,101,2,152,188,152,196,227,229,228,229,115,128,34,122,243,227,242,233,240,244,233,239,110,128,33,30,233,237,101,2,152,216,152,222,237,239,100,128,2,185,242,229,246,229,242,243,229,100,128,32,53,111,4,152,243,152,250,153,4,153,17,228,245,227,116,128,34,15,234,229,227,244,233,246,101,128,35,5,236,239,238,231,229,228,235,225,238,97,128,48,252,112,2,153,23,153,60,101,2,153,29,153,36,236,236,239,114,128,35,24,242,243,117,2,153,44,153,51,226,243,229,116,128,34,130,240,229,242,243,229,116,128,34,131,239,242,244,233,239,110,129,34,55,153,71,225,108,128,34,29,115,2,153,82,153,125,105,130,3,200,153,90,153,101,227,249,242,233,236,236,233,99,128,4,113,236,233,240,238,229,245,237,225,244,225,227,249,242,233,236,236,233,227,227,237,98,128,4,134,243,241,245,225,242,101,128,51,176,117,2,153,140,153,151,232,233,242,225,231,225,238,97,128,48,119,235,225,244,225,235,225,238,97,128,48,215,246,243,241,245,225,242,101,128,51,180,247,243,241,245,225,242,101,128,51,186,113,136,0,113,153,202,154,251,155,6,155,15,155,22,155,34,155,72,155,80,97,4,153,212,153,235,154,43,154,234,100,2,153,218,153,224,229,246,97,128,9,88,237,225,232,229,226,242,229,119,128,5,168,102,4,153,245,153,254,154,12,154,28,225,242,225,226,233,99,128,6,66,230,233,238,225,236,225,242,225,226,233,99,128,254,214,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,215,237,229,228,233,225,236,225,242,225,226,233,99,128,254,216,237,225,244,115,136,5,184,154,66,154,86,154,100,154,105,154,110,154,119,154,134,154,221,49,3,154,74,154,78,154,82,48,128,5,184,97,128,5,184,99,128,5,184,50,2,154,92,154,96,55,128,5,184,57,128,5,184,179,51,128,5,184,228,101,128,5,184,232,229,226,242,229,119,128,5,184,238,225,242,242,239,247,232,229,226,242,229,119,128,5,184,113,2,154,140,154,206,225,244,225,110,4,154,153,154,162,154,177,154,193,232,229,226,242,229,119,128,5,184,238,225,242,242,239,247,232,229,226,242,229,119,128,5,184,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,184,247,233,228,229,232,229,226,242,229,119,128,5,184,245,225,242,244,229,242,232,229,226,242,229,119,128,5,184,247,233,228,229,232,229,226,242,229,119,128,5,184,242,238,229,249,240,225,242,225,232,229,226,242,229,119,128,5,159,226,239,240,239,237,239,230,111,128,49,17,227,233,242,227,236,101,128,36,224,232,239,239,107,128,2,160,237,239,238,239,243,240,225,227,101,128,255,81,239,102,130,5,231,155,43,155,63,228,225,231,229,243,104,129,251,71,155,54,232,229,226,242,229,119,128,251,71,232,229,226,242,229,119,128,5,231,240,225,242,229,110,128,36,172,117,4,155,90,155,102,155,191,156,22,225,242,244,229,242,238,239,244,101,128,38,105,226,245,244,115,135,5,187,155,123,155,128,155,133,155,138,155,147,155,162,155,178,177,56,128,5,187,178,53,128,5,187,179,49,128,5,187,232,229,226,242,229,119,128,5,187,238,225,242,242,239,247,232,229,226,242,229,119,128,5,187,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,187,247,233,228,229,232,229,226,242,229,119,128,5,187,229,243,244,233,239,110,133,0,63,155,210,155,233,155,250,156,2,156,14,225,114,2,155,217,155,224,225,226,233,99,128,6,31,237,229,238,233,225,110,128,5,94,228,239,247,110,129,0,191,155,242,243,237,225,236,108,128,247,191,231,242,229,229,107,128,3,126,237,239,238,239,243,240,225,227,101,128,255,31,243,237,225,236,108,128,247,63,239,244,101,4,156,34,156,105,156,125,156,154,228,226,108,133,0,34,156,50,156,57,156,64,156,76,156,97,226,225,243,101,128,32,30,236,229,230,116,128,32,28,237,239,238,239,243,240,225,227,101,128,255,2,240,242,233,237,101,129,48,30,156,86,242,229,246,229,242,243,229,100,128,48,29,242,233,231,232,116,128,32,29,236,229,230,116,129,32,24,156,114,242,229,246,229,242,243,229,100,128,32,27,114,2,156,131,156,141,229,246,229,242,243,229,100,128,32,27,233,231,232,116,129,32,25,156,150,110,128,1,73,243,233,238,231,108,2,156,164,156,171,226,225,243,101,128,32,26,101,129,0,39,156,177,237,239,238,239,243,240,225,227,101,128,255,7,114,145,0,114,156,227,157,231,157,242,158,33,158,84,159,101,159,125,159,220,161,254,162,35,162,47,162,101,162,109,163,15,163,26,163,61,163,161,97,11,156,251,157,6,157,16,157,23,157,88,157,104,157,129,157,140,157,165,157,188,157,225,225,242,237,229,238,233,225,110,128,5,124,226,229,238,231,225,236,105,128,9,176,227,245,244,101,128,1,85,100,4,157,33,157,39,157,53,157,79,229,246,97,128,9,48,233,227,225,108,129,34,26,157,48,229,120,128,248,229,239,246,229,242,243,243,241,245,225,242,101,129,51,174,157,69,228,243,241,245,225,242,101,128,51,175,243,241,245,225,242,101,128,51,173,230,101,129,5,191,157,95,232,229,226,242,229,119,128,5,191,231,117,2,157,111,157,120,234,225,242,225,244,105,128,10,176,242,237,245,235,232,105,128,10,48,232,233,242,225,231,225,238,97,128,48,137,235,225,244,225,235,225,238,97,129,48,233,157,153,232,225,236,230,247,233,228,244,104,128,255,151,236,239,247,229,242,228,233,225,231,239,238,225,236,226,229,238,231,225,236,105,128,9,241,109,2,157,194,157,217,233,228,228,236,229,228,233,225,231,239,238,225,236,226,229,238,231,225,236,105,128,9,240,243,232,239,242,110,128,2,100,244,233,111,128,34,54,226,239,240,239,237,239,230,111,128,49,22,99,4,157,252,158,3,158,12,158,20,225,242,239,110,128,1,89,229,228,233,236,236,97,128,1,87,233,242,227,236,101,128,36,225,239,237,237,225,225,227,227,229,238,116,128,1,87,100,2,158,39,158,49,226,236,231,242,225,246,101,128,2,17,239,116,2,158,56,158,65,225,227,227,229,238,116,128,30,89,226,229,236,239,119,129,30,91,158,75,237,225,227,242,239,110,128,30,93,101,6,158,98,158,143,158,178,158,233,159,2,159,35,102,2,158,104,158,117,229,242,229,238,227,229,237,225,242,107,128,32,59,236,229,248,243,117,2,158,127,158,134,226,243,229,116,128,34,134,240,229,242,243,229,116,128,34,135,231,233,243,244,229,114,2,158,154,158,159,229,100,128,0,174,115,2,158,165,158,171,225,238,115,128,248,232,229,242,233,102,128,246,218,104,3,158,186,158,209,158,223,225,114,2,158,193,158,200,225,226,233,99,128,6,49,237,229,238,233,225,110,128,5,128,230,233,238,225,236,225,242,225,226,233,99,128,254,174,233,242,225,231,225,238,97,128,48,140,235,225,244,225,235,225,238,97,129,48,236,158,246,232,225,236,230,247,233,228,244,104,128,255,154,243,104,130,5,232,159,11,159,26,228,225,231,229,243,232,232,229,226,242,229,119,128,251,72,232,229,226,242,229,119,128,5,232,118,3,159,43,159,56,159,88,229,242,243,229,228,244,233,236,228,101,128,34,61,233,97,2,159,63,159,72,232,229,226,242,229,119,128,5,151,237,245,231,242,225,243,232,232,229,226,242,229,119,128,5,151,236,239,231,233,227,225,236,238,239,116,128,35,16,230,233,243,232,232,239,239,107,129,2,126,159,114,242,229,246,229,242,243,229,100,128,2,127,104,2,159,131,159,154,97,2,159,137,159,147,226,229,238,231,225,236,105,128,9,221,228,229,246,97,128,9,93,111,131,3,193,159,164,159,193,159,207,239,107,129,2,125,159,171,244,245,242,238,229,100,129,2,123,159,182,243,245,240,229,242,233,239,114,128,2,181,243,249,237,226,239,236,231,242,229,229,107,128,3,241,244,233,227,232,239,239,235,237,239,100,128,2,222,105,6,159,234,161,22,161,68,161,79,161,104,161,240,229,245,108,9,160,0,160,35,160,50,160,64,160,110,160,124,160,210,160,223,161,2,97,2,160,6,160,21,227,233,242,227,236,229,235,239,242,229,225,110,128,50,113,240,225,242,229,238,235,239,242,229,225,110,128,50,17,227,233,242,227,236,229,235,239,242,229,225,110,128,50,99,232,233,229,245,232,235,239,242,229,225,110,128,49,64,107,2,160,70,160,102,233,249,229,239,107,2,160,80,160,89,235,239,242,229,225,110,128,49,58,243,233,239,243,235,239,242,229,225,110,128,49,105,239,242,229,225,110,128,49,57,237,233,229,245,237,235,239,242,229,225,110,128,49,59,112,3,160,132,160,164,160,179,97,2,160,138,160,152,238,243,233,239,243,235,239,242,229,225,110,128,49,108,242,229,238,235,239,242,229,225,110,128,50,3,232,233,229,245,240,232,235,239,242,229,225,110,128,49,63,233,229,245,112,2,160,188,160,197,235,239,242,229,225,110,128,49,60,243,233,239,243,235,239,242,229,225,110,128,49,107,243,233,239,243,235,239,242,229,225,110,128,49,61,116,2,160,229,160,244,232,233,229,245,244,232,235,239,242,229,225,110,128,49,62,233,235,229,245,244,235,239,242,229,225,110,128,49,106,249,229,239,242,233,238,232,233,229,245,232,235,239,242,229,225,110,128,49,109,231,232,116,2,161,30,161,38,225,238,231,236,101,128,34,31,116,2,161,44,161,58,225,227,235,226,229,236,239,247,227,237,98,128,3,25,242,233,225,238,231,236,101,128,34,191,232,233,242,225,231,225,238,97,128,48,138,235,225,244,225,235,225,238,97,129,48,234,161,92,232,225,236,230,247,233,228,244,104,128,255,152,110,2,161,110,161,226,103,131,2,218,161,120,161,131,161,137,226,229,236,239,247,227,237,98,128,3,37,227,237,98,128,3,10,232,225,236,102,2,161,146,161,192,236,229,230,116,131,2,191,161,159,161,170,161,181,225,242,237,229,238,233,225,110,128,5,89,226,229,236,239,247,227,237,98,128,3,28,227,229,238,244,229,242,229,100,128,2,211,242,233,231,232,116,130,2,190,161,204,161,215,226,229,236,239,247,227,237,98,128,3,57,227,229,238,244,229,242,229,100,128,2,210,246,229,242,244,229,228,226,242,229,246,101,128,2,19,244,244,239,242,245,243,241,245,225,242,101,128,51,81,108,2,162,4,162,15,233,238,229,226,229,236,239,119,128,30,95,239,238,231,236,229,103,129,2,124,162,26,244,245,242,238,229,100,128,2,122,237,239,238,239,243,240,225,227,101,128,255,82,111,3,162,55,162,66,162,91,232,233,242,225,231,225,238,97,128,48,141,235,225,244,225,235,225,238,97,129,48,237,162,79,232,225,236,230,247,233,228,244,104,128,255,155,242,245,225,244,232,225,105,128,14,35,240,225,242,229,110,128,36,173,114,3,162,117,162,153,162,183,97,3,162,125,162,135,162,142,226,229,238,231,225,236,105,128,9,220,228,229,246,97,128,9,49,231,245,242,237,245,235,232,105,128,10,92,229,104,2,162,160,162,169,225,242,225,226,233,99,128,6,145,230,233,238,225,236,225,242,225,226,233,99,128,251,141,246,239,227,225,236,233,99,4,162,199,162,209,162,216,162,227,226,229,238,231,225,236,105,128,9,224,228,229,246,97,128,9,96,231,245,234,225,242,225,244,105,128,10,224,246,239,247,229,236,243,233,231,110,3,162,243,162,253,163,4,226,229,238,231,225,236,105,128,9,196,228,229,246,97,128,9,68,231,245,234,225,242,225,244,105,128,10,196,243,245,240,229,242,233,239,114,128,246,241,116,2,163,32,163,40,226,236,239,227,107,128,37,144,245,242,238,229,100,129,2,121,163,50,243,245,240,229,242,233,239,114,128,2,180,117,4,163,71,163,82,163,107,163,154,232,233,242,225,231,225,238,97,128,48,139,235,225,244,225,235,225,238,97,129,48,235,163,95,232,225,236,230,247,233,228,244,104,128,255,153,112,2,163,113,163,148,229,101,2,163,120,163,134,237,225,242,235,226,229,238,231,225,236,105,128,9,242,243,233,231,238,226,229,238,231,225,236,105,128,9,243,233,225,104,128,246,221,244,232,225,105,128,14,36,246,239,227,225,236,233,99,4,163,177,163,187,163,194,163,205,226,229,238,231,225,236,105,128,9,139,228,229,246,97,128,9,11,231,245,234,225,242,225,244,105,128,10,139,246,239,247,229,236,243,233,231,110,3,163,221,163,231,163,238,226,229,238,231,225,236,105,128,9,195,228,229,246,97,128,9,67,231,245,234,225,242,225,244,105,128,10,195,115,147,0,115,164,35,166,5,166,16,166,142,166,181,169,123,169,134,172,21,174,159,174,205,174,232,175,167,175,234,177,11,177,21,177,207,178,24,178,194,178,204,97,9,164,55,164,65,164,86,164,158,164,183,164,194,164,219,164,251,165,35,226,229,238,231,225,236,105,128,9,184,227,245,244,101,129,1,91,164,74,228,239,244,225,227,227,229,238,116,128,30,101,100,5,164,98,164,107,164,113,164,127,164,143,225,242,225,226,233,99,128,6,53,229,246,97,128,9,56,230,233,238,225,236,225,242,225,226,233,99,128,254,186,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,187,237,229,228,233,225,236,225,242,225,226,233,99,128,254,188,231,117,2,164,165,164,174,234,225,242,225,244,105,128,10,184,242,237,245,235,232,105,128,10,56,232,233,242,225,231,225,238,97,128,48,85,235,225,244,225,235,225,238,97,129,48,181,164,207,232,225,236,230,247,233,228,244,104,128,255,123,236,236,225,236,236,225,232,239,245,225,236,225,249,232,229,247,225,243,225,236,236,225,237,225,242,225,226,233,99,128,253,250,237,229,235,104,130,5,225,165,6,165,26,228,225,231,229,243,104,129,251,65,165,17,232,229,226,242,229,119,128,251,65,232,229,226,242,229,119,128,5,225,242,97,5,165,48,165,122,165,130,165,180,165,188,97,5,165,60,165,68,165,76,165,107,165,115,225,244,232,225,105,128,14,50,229,244,232,225,105,128,14,65,233,237,225,233,109,2,165,86,165,97,225,236,225,233,244,232,225,105,128,14,68,245,225,238,244,232,225,105,128,14,67,237,244,232,225,105,128,14,51,244,232,225,105,128,14,48,229,244,232,225,105,128,14,64,105,3,165,138,165,162,165,173,105,2,165,144,165,155,236,229,230,244,244,232,225,105,128,248,134,244,232,225,105,128,14,53,236,229,230,244,244,232,225,105,128,248,133,244,232,225,105,128,14,52,239,244,232,225,105,128,14,66,117,3,165,196,165,246,165,253,101,3,165,204,165,228,165,239,101,2,165,210,165,221,236,229,230,244,244,232,225,105,128,248,136,244,232,225,105,128,14,55,236,229,230,244,244,232,225,105,128,248,135,244,232,225,105,128,14,54,244,232,225,105,128,14,56,245,244,232,225,105,128,14,57,226,239,240,239,237,239,230,111,128,49,25,99,5,166,28,166,49,166,58,166,107,166,129,225,242,239,110,129,1,97,166,37,228,239,244,225,227,227,229,238,116,128,30,103,229,228,233,236,236,97,128,1,95,232,247,97,131,2,89,166,70,166,81,166,100,227,249,242,233,236,236,233,99,128,4,217,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,219,232,239,239,107,128,2,90,233,242,99,2,166,115,166,120,236,101,128,36,226,245,237,230,236,229,120,128,1,93,239,237,237,225,225,227,227,229,238,116,128,2,25,228,239,116,2,166,150,166,159,225,227,227,229,238,116,128,30,97,226,229,236,239,119,129,30,99,166,169,228,239,244,225,227,227,229,238,116,128,30,105,101,9,166,201,166,217,166,252,167,61,167,164,167,191,167,216,168,41,168,68,225,231,245,236,236,226,229,236,239,247,227,237,98,128,3,60,99,2,166,223,166,245,239,238,100,129,32,51,166,231,244,239,238,229,227,232,233,238,229,243,101,128,2,202,244,233,239,110,128,0,167,229,110,4,167,7,167,16,167,30,167,46,225,242,225,226,233,99,128,6,51,230,233,238,225,236,225,242,225,226,233,99,128,254,178,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,179,237,229,228,233,225,236,225,242,225,226,233,99,128,254,180,231,239,108,135,5,182,167,81,167,95,167,100,167,109,167,124,167,140,167,151,49,2,167,87,167,91,51,128,5,182,102,128,5,182,178,99,128,5,182,232,229,226,242,229,119,128,5,182,238,225,242,242,239,247,232,229,226,242,229,119,128,5,182,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,182,244,225,232,229,226,242,229,119,128,5,146,247,233,228,229,232,229,226,242,229,119,128,5,182,104,2,167,170,167,181,225,242,237,229,238,233,225,110,128,5,125,233,242,225,231,225,238,97,128,48,91,235,225,244,225,235,225,238,97,129,48,187,167,204,232,225,236,230,247,233,228,244,104,128,255,126,237,105,2,167,223,168,10,227,239,236,239,110,131,0,59,167,237,167,246,168,2,225,242,225,226,233,99,128,6,27,237,239,238,239,243,240,225,227,101,128,255,27,243,237,225,236,108,128,254,84,246,239,233,227,229,228,237,225,242,235,235,225,238,97,129,48,156,168,29,232,225,236,230,247,233,228,244,104,128,255,159,238,116,2,168,48,168,58,233,243,241,245,225,242,101,128,51,34,239,243,241,245,225,242,101,128,51,35,246,229,110,142,0,55,168,102,168,111,168,121,168,151,168,158,168,168,168,193,168,220,168,254,169,10,169,21,169,54,169,62,169,73,225,242,225,226,233,99,128,6,103,226,229,238,231,225,236,105,128,9,237,227,233,242,227,236,101,129,36,102,168,132,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,144,228,229,246,97,128,9,109,229,233,231,232,244,232,115,128,33,94,231,117,2,168,175,168,184,234,225,242,225,244,105,128,10,237,242,237,245,235,232,105,128,10,109,232,97,2,168,200,168,211,227,235,225,242,225,226,233,99,128,6,103,238,231,250,232,239,117,128,48,39,105,2,168,226,168,244,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,38,238,230,229,242,233,239,114,128,32,135,237,239,238,239,243,240,225,227,101,128,255,23,239,236,228,243,244,249,236,101,128,247,55,112,2,169,27,169,34,225,242,229,110,128,36,122,229,114,2,169,41,169,47,233,239,100,128,36,142,243,233,225,110,128,6,247,242,239,237,225,110,128,33,118,243,245,240,229,242,233,239,114,128,32,119,116,2,169,79,169,117,229,229,110,2,169,87,169,96,227,233,242,227,236,101,128,36,112,112,2,169,102,169,109,225,242,229,110,128,36,132,229,242,233,239,100,128,36,152,232,225,105,128,14,87,230,244,232,249,240,232,229,110,128,0,173,104,7,169,150,170,124,170,135,170,149,171,94,171,107,172,15,97,6,169,164,169,175,169,185,169,196,170,83,170,108,225,242,237,229,238,233,225,110,128,5,119,226,229,238,231,225,236,105,128,9,182,227,249,242,233,236,236,233,99,128,4,72,100,2,169,202,170,42,228,97,4,169,213,169,222,169,253,170,11,225,242,225,226,233,99,128,6,81,228,225,237,237,97,2,169,232,169,241,225,242,225,226,233,99,128,252,97,244,225,238,225,242,225,226,233,99,128,252,94,230,225,244,232,225,225,242,225,226,233,99,128,252,96,235,225,243,242,97,2,170,21,170,30,225,242,225,226,233,99,128,252,98,244,225,238,225,242,225,226,233,99,128,252,95,101,132,37,146,170,54,170,61,170,69,170,78,228,225,242,107,128,37,147,236,233,231,232,116,128,37,145,237,229,228,233,245,109,128,37,146,246,97,128,9,54,231,117,2,170,90,170,99,234,225,242,225,244,105,128,10,182,242,237,245,235,232,105,128,10,54,236,243,232,229,236,229,244,232,229,226,242,229,119,128,5,147,226,239,240,239,237,239,230,111,128,49,21,227,232,225,227,249,242,233,236,236,233,99,128,4,73,101,4,170,159,170,224,170,234,170,251,229,110,4,170,170,170,179,170,193,170,209,225,242,225,226,233,99,128,6,52,230,233,238,225,236,225,242,225,226,233,99,128,254,182,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,183,237,229,228,233,225,236,225,242,225,226,233,99,128,254,184,233,227,239,240,244,233,99,128,3,227,241,229,108,129,32,170,170,242,232,229,226,242,229,119,128,32,170,246,97,134,5,176,171,12,171,27,171,41,171,50,171,65,171,81,49,2,171,18,171,23,177,53,128,5,176,53,128,5,176,50,2,171,33,171,37,50,128,5,176,101,128,5,176,232,229,226,242,229,119,128,5,176,238,225,242,242,239,247,232,229,226,242,229,119,128,5,176,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,176,247,233,228,229,232,229,226,242,229,119,128,5,176,232,225,227,249,242,233,236,236,233,99,128,4,187,105,2,171,113,171,124,237,225,227,239,240,244,233,99,128,3,237,110,131,5,233,171,134,171,217,171,226,100,2,171,140,171,206,225,231,229,243,104,130,251,73,171,152,171,161,232,229,226,242,229,119,128,251,73,115,2,171,167,171,187,232,233,238,228,239,116,129,251,44,171,178,232,229,226,242,229,119,128,251,44,233,238,228,239,116,129,251,45,171,197,232,229,226,242,229,119,128,251,45,239,244,232,229,226,242,229,119,128,5,193,232,229,226,242,229,119,128,5,233,115,2,171,232,171,252,232,233,238,228,239,116,129,251,42,171,243,232,229,226,242,229,119,128,251,42,233,238,228,239,116,129,251,43,172,6,232,229,226,242,229,119,128,251,43,239,239,107,128,2,130,105,8,172,39,172,83,172,94,172,119,172,149,172,157,172,170,173,85,231,237,97,131,3,195,172,51,172,55,172,63,49,128,3,194,230,233,238,225,108,128,3,194,236,245,238,225,244,229,243,249,237,226,239,236,231,242,229,229,107,128,3,242,232,233,242,225,231,225,238,97,128,48,87,235,225,244,225,235,225,238,97,129,48,183,172,107,232,225,236,230,247,233,228,244,104,128,255,124,236,245,113,2,172,127,172,136,232,229,226,242,229,119,128,5,189,236,229,230,244,232,229,226,242,229,119,128,5,189,237,233,236,225,114,128,34,60,238,228,239,244,232,229,226,242,229,119,128,5,194,239,115,6,172,185,172,220,172,252,173,24,173,38,173,70,97,2,172,191,172,206,227,233,242,227,236,229,235,239,242,229,225,110,128,50,116,240,225,242,229,238,235,239,242,229,225,110,128,50,20,227,105,2,172,227,172,239,229,245,227,235,239,242,229,225,110,128,49,126,242,227,236,229,235,239,242,229,225,110,128,50,102,107,2,173,2,173,16,233,249,229,239,235,235,239,242,229,225,110,128,49,122,239,242,229,225,110,128,49,69,238,233,229,245,238,235,239,242,229,225,110,128,49,123,112,2,173,44,173,57,225,242,229,238,235,239,242,229,225,110,128,50,6,233,229,245,240,235,239,242,229,225,110,128,49,125,244,233,235,229,245,244,235,239,242,229,225,110,128,49,124,120,141,0,54,173,115,173,124,173,134,173,164,173,171,173,196,173,223,174,1,174,13,174,24,174,57,174,65,174,76,225,242,225,226,233,99,128,6,102,226,229,238,231,225,236,105,128,9,236,227,233,242,227,236,101,129,36,101,173,145,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,143,228,229,246,97,128,9,108,231,117,2,173,178,173,187,234,225,242,225,244,105,128,10,236,242,237,245,235,232,105,128,10,108,232,97,2,173,203,173,214,227,235,225,242,225,226,233,99,128,6,102,238,231,250,232,239,117,128,48,38,105,2,173,229,173,247,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,37,238,230,229,242,233,239,114,128,32,134,237,239,238,239,243,240,225,227,101,128,255,22,239,236,228,243,244,249,236,101,128,247,54,112,2,174,30,174,37,225,242,229,110,128,36,121,229,114,2,174,44,174,50,233,239,100,128,36,141,243,233,225,110,128,6,246,242,239,237,225,110,128,33,117,243,245,240,229,242,233,239,114,128,32,118,116,2,174,82,174,153,229,229,110,2,174,90,174,132,99,2,174,96,174,104,233,242,227,236,101,128,36,111,245,242,242,229,238,227,249,228,229,238,239,237,233,238,225,244,239,242,226,229,238,231,225,236,105,128,9,249,112,2,174,138,174,145,225,242,229,110,128,36,131,229,242,233,239,100,128,36,151,232,225,105,128,14,86,108,2,174,165,174,185,225,243,104,129,0,47,174,173,237,239,238,239,243,240,225,227,101,128,255,15,239,238,103,129,1,127,174,193,228,239,244,225,227,227,229,238,116,128,30,155,109,2,174,211,174,221,233,236,229,230,225,227,101,128,38,58,239,238,239,243,240,225,227,101,128,255,83,111,6,174,246,175,40,175,51,175,76,175,121,175,132,102,2,174,252,175,10,240,225,243,245,241,232,229,226,242,229,119,128,5,195,116,2,175,16,175,25,232,249,240,232,229,110,128,0,173,243,233,231,238,227,249,242,233,236,236,233,99,128,4,76,232,233,242,225,231,225,238,97,128,48,93,235,225,244,225,235,225,238,97,129,48,189,175,64,232,225,236,230,247,233,228,244,104,128,255,127,236,233,228,245,115,2,175,86,175,103,236,239,238,231,239,246,229,242,236,225,249,227,237,98,128,3,56,243,232,239,242,244,239,246,229,242,236,225,249,227,237,98,128,3,55,242,245,243,233,244,232,225,105,128,14,41,115,3,175,140,175,150,175,158,225,236,225,244,232,225,105,128,14,40,239,244,232,225,105,128,14,11,245,225,244,232,225,105,128,14,42,240,97,3,175,176,175,196,175,228,227,101,129,0,32,175,183,232,225,227,235,225,242,225,226,233,99,128,0,32,228,101,129,38,96,175,203,243,245,233,116,2,175,212,175,220,226,236,225,227,107,128,38,96,247,232,233,244,101,128,38,100,242,229,110,128,36,174,241,245,225,242,101,11,176,6,176,17,176,31,176,56,176,73,176,99,176,114,176,147,176,174,176,230,176,245,226,229,236,239,247,227,237,98,128,3,59,99,2,176,23,176,27,99,128,51,196,109,128,51,157,228,233,225,231,239,238,225,236,227,242,239,243,243,232,225,244,227,232,230,233,236,108,128,37,169,232,239,242,233,250,239,238,244,225,236,230,233,236,108,128,37,164,107,2,176,79,176,83,103,128,51,143,109,129,51,158,176,89,227,225,240,233,244,225,108,128,51,206,108,2,176,105,176,109,110,128,51,209,239,103,128,51,210,109,4,176,124,176,128,176,133,176,137,103,128,51,142,233,108,128,51,213,109,128,51,156,243,241,245,225,242,229,100,128,51,161,239,242,244,232,239,231,239,238,225,236,227,242,239,243,243,232,225,244,227,232,230,233,236,108,128,37,166,245,240,240,229,114,2,176,184,176,207,236,229,230,244,244,239,236,239,247,229,242,242,233,231,232,244,230,233,236,108,128,37,167,242,233,231,232,244,244,239,236,239,247,229,242,236,229,230,244,230,233,236,108,128,37,168,246,229,242,244,233,227,225,236,230,233,236,108,128,37,165,247,232,233,244,229,247,233,244,232,243,237,225,236,236,226,236,225,227,107,128,37,163,242,243,241,245,225,242,101,128,51,219,115,2,177,27,177,197,97,4,177,37,177,47,177,54,177,65,226,229,238,231,225,236,105,128,9,183,228,229,246,97,128,9,55,231,245,234,225,242,225,244,105,128,10,183,238,103,8,177,84,177,98,177,112,177,126,177,141,177,155,177,169,177,182,227,233,229,245,227,235,239,242,229,225,110,128,49,73,232,233,229,245,232,235,239,242,229,225,110,128,49,133,233,229,245,238,231,235,239,242,229,225,110,128,49,128,235,233,249,229,239,235,235,239,242,229,225,110,128,49,50,238,233,229,245,238,235,239,242,229,225,110,128,49,101,240,233,229,245,240,235,239,242,229,225,110,128,49,67,243,233,239,243,235,239,242,229,225,110,128,49,70,244,233,235,229,245,244,235,239,242,229,225,110,128,49,56,245,240,229,242,233,239,114,128,246,242,116,2,177,213,177,236,229,242,236,233,238,103,129,0,163,177,224,237,239,238,239,243,240,225,227,101,128,255,225,242,239,235,101,2,177,245,178,6,236,239,238,231,239,246,229,242,236,225,249,227,237,98,128,3,54,243,232,239,242,244,239,246,229,242,236,225,249,227,237,98,128,3,53,117,7,178,40,178,72,178,94,178,105,178,146,178,156,178,160,226,243,229,116,130,34,130,178,51,178,62,238,239,244,229,241,245,225,108,128,34,138,239,242,229,241,245,225,108,128,34,134,99,2,178,78,178,86,227,229,229,228,115,128,34,123,232,244,232,225,116,128,34,11,232,233,242,225,231,225,238,97,128,48,89,107,2,178,111,178,135,225,244,225,235,225,238,97,129,48,185,178,123,232,225,236,230,247,233,228,244,104,128,255,125,245,238,225,242,225,226,233,99,128,6,82,237,237,225,244,233,239,110,128,34,17,110,128,38,60,240,229,242,243,229,116,130,34,131,178,173,178,184,238,239,244,229,241,245,225,108,128,34,139,239,242,229,241,245,225,108,128,34,135,246,243,241,245,225,242,101,128,51,220,249,239,245,247,225,229,242,225,243,241,245,225,242,101,128,51,124,116,144,0,116,179,1,180,10,180,31,180,174,180,214,183,6,186,144,187,219,187,231,187,243,189,20,189,45,189,131,190,55,190,239,191,73,97,10,179,23,179,33,179,54,179,61,179,86,179,164,179,181,179,206,179,220,179,224,226,229,238,231,225,236,105,128,9,164,227,107,2,179,40,179,47,228,239,247,110,128,34,164,236,229,230,116,128,34,163,228,229,246,97,128,9,36,231,117,2,179,68,179,77,234,225,242,225,244,105,128,10,164,242,237,245,235,232,105,128,10,36,104,4,179,96,179,105,179,119,179,149,225,242,225,226,233,99,128,6,55,230,233,238,225,236,225,242,225,226,233,99,128,254,194,105,2,179,125,179,140,238,233,244,233,225,236,225,242,225,226,233,99,128,254,195,242,225,231,225,238,97,128,48,95,237,229,228,233,225,236,225,242,225,226,233,99,128,254,196,233,243,249,239,245,229,242,225,243,241,245,225,242,101,128,51,125,235,225,244,225,235,225,238,97,129,48,191,179,194,232,225,236,230,247,233,228,244,104,128,255,128,244,247,229,229,236,225,242,225,226,233,99,128,6,64,117,128,3,196,118,130,5,234,179,232,180,1,228,225,231,229,115,129,251,74,179,242,104,129,251,74,179,248,232,229,226,242,229,119,128,251,74,232,229,226,242,229,119,128,5,234,98,2,180,16,180,21,225,114,128,1,103,239,240,239,237,239,230,111,128,49,10,99,6,180,45,180,52,180,59,180,68,180,134,180,161,225,242,239,110,128,1,101,227,245,242,108,128,2,168,229,228,233,236,236,97,128,1,99,232,229,104,4,180,80,180,89,180,103,180,119,225,242,225,226,233,99,128,6,134,230,233,238,225,236,225,242,225,226,233,99,128,251,123,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,124,237,229,228,233,225,236,225,242,225,226,233,99,128,251,125,233,242,99,2,180,142,180,147,236,101,128,36,227,245,237,230,236,229,248,226,229,236,239,119,128,30,113,239,237,237,225,225,227,227,229,238,116,128,1,99,100,2,180,180,180,190,233,229,242,229,243,233,115,128,30,151,239,116,2,180,197,180,206,225,227,227,229,238,116,128,30,107,226,229,236,239,119,128,30,109,101,9,180,234,180,245,181,9,182,19,182,44,182,108,182,175,182,180,182,232,227,249,242,233,236,236,233,99,128,4,66,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,173,104,7,181,25,181,34,181,48,181,88,181,118,181,159,182,1,225,242,225,226,233,99,128,6,42,230,233,238,225,236,225,242,225,226,233,99,128,254,150,232,225,232,105,2,181,57,181,72,238,233,244,233,225,236,225,242,225,226,233,99,128,252,162,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,12,105,2,181,94,181,109,238,233,244,233,225,236,225,242,225,226,233,99,128,254,151,242,225,231,225,238,97,128,48,102,234,229,229,237,105,2,181,128,181,143,238,233,244,233,225,236,225,242,225,226,233,99,128,252,161,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,11,109,2,181,165,181,199,225,242,226,245,244,97,2,181,176,181,185,225,242,225,226,233,99,128,6,41,230,233,238,225,236,225,242,225,226,233,99,128,254,148,101,2,181,205,181,218,228,233,225,236,225,242,225,226,233,99,128,254,152,229,237,105,2,181,226,181,241,238,233,244,233,225,236,225,242,225,226,233,99,128,252,164,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,14,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,115,235,225,244,225,235,225,238,97,129,48,198,182,32,232,225,236,230,247,233,228,244,104,128,255,131,108,2,182,50,182,69,229,240,232,239,238,101,129,33,33,182,61,226,236,225,227,107,128,38,14,233,243,232,97,2,182,78,182,93,231,229,228,239,236,225,232,229,226,242,229,119,128,5,160,241,229,244,225,238,225,232,229,226,242,229,119,128,5,169,110,4,182,118,182,127,182,146,182,167,227,233,242,227,236,101,128,36,105,233,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,41,112,2,182,152,182,159,225,242,229,110,128,36,125,229,242,233,239,100,128,36,145,242,239,237,225,110,128,33,121,243,104,128,2,167,116,131,5,216,182,190,182,210,182,219,228,225,231,229,243,104,129,251,56,182,201,232,229,226,242,229,119,128,251,56,232,229,226,242,229,119,128,5,216,243,229,227,249,242,233,236,236,233,99,128,4,181,246,233,114,2,182,240,182,249,232,229,226,242,229,119,128,5,155,236,229,230,244,232,229,226,242,229,119,128,5,155,104,6,183,20,183,172,184,38,184,170,185,77,186,134,97,5,183,32,183,42,183,49,183,74,183,103,226,229,238,231,225,236,105,128,9,165,228,229,246,97,128,9,37,231,117,2,183,56,183,65,234,225,242,225,244,105,128,10,165,242,237,245,235,232,105,128,10,37,108,2,183,80,183,89,225,242,225,226,233,99,128,6,48,230,233,238,225,236,225,242,225,226,233,99,128,254,172,238,244,232,225,235,232,225,116,3,183,118,183,149,183,156,236,239,119,2,183,126,183,137,236,229,230,244,244,232,225,105,128,248,152,242,233,231,232,244,244,232,225,105,128,248,151,244,232,225,105,128,14,76,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,150,101,3,183,180,183,244,184,11,104,4,183,190,183,199,183,213,183,229,225,242,225,226,233,99,128,6,43,230,233,238,225,236,225,242,225,226,233,99,128,254,154,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,155,237,229,228,233,225,236,225,242,225,226,233,99,128,254,156,242,101,2,183,251,184,4,229,248,233,243,244,115,128,34,3,230,239,242,101,128,34,52,244,97,130,3,184,184,20,184,24,49,128,3,209,243,249,237,226,239,236,231,242,229,229,107,128,3,209,105,2,184,44,184,130,229,245,244,104,4,184,57,184,92,184,107,184,116,97,2,184,63,184,78,227,233,242,227,236,229,235,239,242,229,225,110,128,50,121,240,225,242,229,238,235,239,242,229,225,110,128,50,25,227,233,242,227,236,229,235,239,242,229,225,110,128,50,107,235,239,242,229,225,110,128,49,76,240,225,242,229,238,235,239,242,229,225,110,128,50,11,242,244,229,229,110,2,184,140,184,149,227,233,242,227,236,101,128,36,108,112,2,184,155,184,162,225,242,229,110,128,36,128,229,242,233,239,100,128,36,148,111,6,184,184,184,201,184,206,184,220,184,225,185,22,238,225,238,231,237,239,238,244,232,239,244,232,225,105,128,14,17,239,107,128,1,173,240,232,245,244,232,225,239,244,232,225,105,128,14,18,242,110,128,0,254,244,104,3,184,234,185,2,185,12,97,2,184,240,184,250,232,225,238,244,232,225,105,128,14,23,238,244,232,225,105,128,14,16,239,238,231,244,232,225,105,128,14,24,245,238,231,244,232,225,105,128,14,22,245,243,225,238,100,2,185,32,185,43,227,249,242,233,236,236,233,99,128,4,130,243,243,229,240,225,242,225,244,239,114,2,185,58,185,67,225,242,225,226,233,99,128,6,108,240,229,242,243,233,225,110,128,6,108,242,229,101,144,0,51,185,115,185,124,185,134,185,164,185,171,185,181,185,206,185,233,186,11,186,23,186,42,186,53,186,86,186,108,186,116,186,127,225,242,225,226,233,99,128,6,99,226,229,238,231,225,236,105,128,9,233,227,233,242,227,236,101,129,36,98,185,145,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,140,228,229,246,97,128,9,105,229,233,231,232,244,232,115,128,33,92,231,117,2,185,188,185,197,234,225,242,225,244,105,128,10,233,242,237,245,235,232,105,128,10,105,232,97,2,185,213,185,224,227,235,225,242,225,226,233,99,128,6,99,238,231,250,232,239,117,128,48,35,105,2,185,239,186,1,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,34,238,230,229,242,233,239,114,128,32,131,237,239,238,239,243,240,225,227,101,128,255,19,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,246,239,236,228,243,244,249,236,101,128,247,51,112,2,186,59,186,66,225,242,229,110,128,36,118,229,114,2,186,73,186,79,233,239,100,128,36,138,243,233,225,110,128,6,243,241,245,225,242,244,229,242,115,129,0,190,186,99,229,237,228,225,243,104,128,246,222,242,239,237,225,110,128,33,114,243,245,240,229,242,233,239,114,128,0,179,244,232,225,105,128,14,83,250,243,241,245,225,242,101,128,51,148,105,7,186,160,186,171,187,30,187,128,187,140,187,189,187,206,232,233,242,225,231,225,238,97,128,48,97,107,2,186,177,186,201,225,244,225,235,225,238,97,129,48,193,186,189,232,225,236,230,247,233,228,244,104,128,255,129,229,245,116,4,186,213,186,248,187,7,187,16,97,2,186,219,186,234,227,233,242,227,236,229,235,239,242,229,225,110,128,50,112,240,225,242,229,238,235,239,242,229,225,110,128,50,16,227,233,242,227,236,229,235,239,242,229,225,110,128,50,98,235,239,242,229,225,110,128,49,55,240,225,242,229,238,235,239,242,229,225,110,128,50,2,236,228,101,133,2,220,187,46,187,57,187,74,187,86,187,114,226,229,236,239,247,227,237,98,128,3,48,99,2,187,63,187,68,237,98,128,3,3,239,237,98,128,3,3,228,239,245,226,236,229,227,237,98,128,3,96,111,2,187,92,187,102,240,229,242,225,244,239,114,128,34,60,246,229,242,236,225,249,227,237,98,128,3,52,246,229,242,244,233,227,225,236,227,237,98,128,3,62,237,229,243,227,233,242,227,236,101,128,34,151,112,2,187,146,187,176,229,232,97,2,187,154,187,163,232,229,226,242,229,119,128,5,150,236,229,230,244,232,229,226,242,229,119,128,5,150,240,233,231,245,242,237,245,235,232,105,128,10,112,244,236,239,227,249,242,233,236,236,233,227,227,237,98,128,4,131,247,238,225,242,237,229,238,233,225,110,128,5,127,236,233,238,229,226,229,236,239,119,128,30,111,237,239,238,239,243,240,225,227,101,128,255,84,111,7,188,3,188,14,188,25,188,50,188,170,188,182,189,10,225,242,237,229,238,233,225,110,128,5,105,232,233,242,225,231,225,238,97,128,48,104,235,225,244,225,235,225,238,97,129,48,200,188,38,232,225,236,230,247,233,228,244,104,128,255,132,110,3,188,58,188,156,188,161,101,4,188,68,188,137,188,144,188,150,226,225,114,4,188,80,188,109,188,119,188,128,229,248,244,242,97,2,188,90,188,100,232,233,231,232,237,239,100,128,2,229,236,239,247,237,239,100,128,2,233,232,233,231,232,237,239,100,128,2,230,236,239,247,237,239,100,128,2,232,237,233,228,237,239,100,128,2,231,230,233,246,101,128,1,189,243,233,120,128,1,133,244,247,111,128,1,168,239,115,128,3,132,243,241,245,225,242,101,128,51,39,240,225,244,225,235,244,232,225,105,128,14,15,242,244,239,233,243,229,243,232,229,236,236,226,242,225,227,235,229,116,2,188,205,188,235,236,229,230,116,130,48,20,188,216,188,224,243,237,225,236,108,128,254,93,246,229,242,244,233,227,225,108,128,254,57,242,233,231,232,116,130,48,21,188,247,188,255,243,237,225,236,108,128,254,94,246,229,242,244,233,227,225,108,128,254,58,244,225,239,244,232,225,105,128,14,21,240,97,2,189,27,189,39,236,225,244,225,236,232,239,239,107,128,1,171,242,229,110,128,36,175,114,3,189,53,189,84,189,99,225,228,229,237,225,242,107,129,33,34,189,65,115,2,189,71,189,77,225,238,115,128,248,234,229,242,233,102,128,246,219,229,244,242,239,230,236,229,248,232,239,239,107,128,2,136,233,225,103,4,189,111,189,116,189,121,189,126,228,110,128,37,188,236,102,128,37,196,242,116,128,37,186,245,112,128,37,178,115,132,2,166,189,143,189,182,190,32,190,45,225,228,105,130,5,230,189,153,189,173,228,225,231,229,243,104,129,251,70,189,164,232,229,226,242,229,119,128,251,70,232,229,226,242,229,119,128,5,230,101,2,189,188,189,199,227,249,242,233,236,236,233,99,128,4,70,242,101,134,5,181,189,216,189,230,189,235,189,244,190,3,190,19,49,2,189,222,189,226,50,128,5,181,101,128,5,181,178,98,128,5,181,232,229,226,242,229,119,128,5,181,238,225,242,242,239,247,232,229,226,242,229,119,128,5,181,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,181,247,233,228,229,232,229,226,242,229,119,128,5,181,232,229,227,249,242,233,236,236,233,99,128,4,91,245,240,229,242,233,239,114,128,246,243,116,4,190,65,190,115,190,180,190,231,97,3,190,73,190,83,190,90,226,229,238,231,225,236,105,128,9,159,228,229,246,97,128,9,31,231,117,2,190,97,190,106,234,225,242,225,244,105,128,10,159,242,237,245,235,232,105,128,10,31,229,104,4,190,126,190,135,190,149,190,165,225,242,225,226,233,99,128,6,121,230,233,238,225,236,225,242,225,226,233,99,128,251,103,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,104,237,229,228,233,225,236,225,242,225,226,233,99,128,251,105,232,97,3,190,189,190,199,190,206,226,229,238,231,225,236,105,128,9,160,228,229,246,97,128,9,32,231,117,2,190,213,190,222,234,225,242,225,244,105,128,10,160,242,237,245,235,232,105,128,10,32,245,242,238,229,100,128,2,135,117,3,190,247,191,2,191,27,232,233,242,225,231,225,238,97,128,48,100,235,225,244,225,235,225,238,97,129,48,196,191,15,232,225,236,230,247,233,228,244,104,128,255,130,243,237,225,236,108,2,191,37,191,48,232,233,242,225,231,225,238,97,128,48,99,235,225,244,225,235,225,238,97,129,48,195,191,61,232,225,236,230,247,233,228,244,104,128,255,111,119,2,191,79,191,184,101,2,191,85,191,133,236,246,101,3,191,95,191,104,191,125,227,233,242,227,236,101,128,36,107,112,2,191,110,191,117,225,242,229,110,128,36,127,229,242,233,239],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+51200);allocate([100,128,36,147,242,239,237,225,110,128,33,123,238,244,121,3,191,143,191,152,191,163,227,233,242,227,236,101,128,36,115,232,225,238,231,250,232,239,117,128,83,68,112,2,191,169,191,176,225,242,229,110,128,36,135,229,242,233,239,100,128,36,155,111,142,0,50,191,216,191,225,191,235,192,9,192,61,192,86,192,113,192,147,192,159,192,178,192,189,192,222,192,230,192,254,225,242,225,226,233,99,128,6,98,226,229,238,231,225,236,105,128,9,232,227,233,242,227,236,101,129,36,97,191,246,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,139,100,2,192,15,192,21,229,246,97,128,9,104,239,116,2,192,28,192,39,229,238,236,229,225,228,229,114,128,32,37,236,229,225,228,229,114,129,32,37,192,50,246,229,242,244,233,227,225,108,128,254,48,231,117,2,192,68,192,77,234,225,242,225,244,105,128,10,232,242,237,245,235,232,105,128,10,104,232,97,2,192,93,192,104,227,235,225,242,225,226,233,99,128,6,98,238,231,250,232,239,117,128,48,34,105,2,192,119,192,137,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,33,238,230,229,242,233,239,114,128,32,130,237,239,238,239,243,240,225,227,101,128,255,18,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,245,239,236,228,243,244,249,236,101,128,247,50,112,2,192,195,192,202,225,242,229,110,128,36,117,229,114,2,192,209,192,215,233,239,100,128,36,137,243,233,225,110,128,6,242,242,239,237,225,110,128,33,113,115,2,192,236,192,244,244,242,239,235,101,128,1,187,245,240,229,242,233,239,114,128,0,178,244,104,2,193,5,193,10,225,105,128,14,82,233,242,228,115,128,33,84,117,145,0,117,193,55,193,63,193,104,193,161,194,43,194,80,194,203,194,219,195,14,195,84,195,165,195,174,196,37,196,61,196,169,196,197,197,55,225,227,245,244,101,128,0,250,98,4,193,73,193,78,193,87,193,97,225,114,128,2,137,229,238,231,225,236,105,128,9,137,239,240,239,237,239,230,111,128,49,40,242,229,246,101,128,1,109,99,3,193,112,193,119,193,151,225,242,239,110,128,1,212,233,242,99,2,193,127,193,132,236,101,128,36,228,245,237,230,236,229,120,129,0,251,193,143,226,229,236,239,119,128,30,119,249,242,233,236,236,233,99,128,4,67,100,5,193,173,193,184,193,207,193,213,194,33,225,244,244,225,228,229,246,97,128,9,81,226,108,2,193,191,193,199,225,227,245,244,101,128,1,113,231,242,225,246,101,128,2,21,229,246,97,128,9,9,233,229,242,229,243,233,115,133,0,252,193,233,193,241,193,249,194,16,194,24,225,227,245,244,101,128,1,216,226,229,236,239,119,128,30,115,99,2,193,255,194,6,225,242,239,110,128,1,218,249,242,233,236,236,233,99,128,4,241,231,242,225,246,101,128,1,220,237,225,227,242,239,110,128,1,214,239,244,226,229,236,239,119,128,30,229,103,2,194,49,194,56,242,225,246,101,128,0,249,117,2,194,62,194,71,234,225,242,225,244,105,128,10,137,242,237,245,235,232,105,128,10,9,104,3,194,88,194,98,194,176,233,242,225,231,225,238,97,128,48,70,111,2,194,104,194,114,239,235,225,226,239,246,101,128,30,231,242,110,133,1,176,194,129,194,137,194,148,194,156,194,168,225,227,245,244,101,128,30,233,228,239,244,226,229,236,239,119,128,30,241,231,242,225,246,101,128,30,235,232,239,239,235,225,226,239,246,101,128,30,237,244,233,236,228,101,128,30,239,245,238,231,225,242,245,237,236,225,245,116,129,1,113,194,192,227,249,242,233,236,236,233,99,128,4,243,233,238,246,229,242,244,229,228,226,242,229,246,101,128,2,23,107,3,194,227,194,251,195,6,225,244,225,235,225,238,97,129,48,166,194,239,232,225,236,230,247,233,228,244,104,128,255,115,227,249,242,233,236,236,233,99,128,4,121,239,242,229,225,110,128,49,92,109,2,195,20,195,73,97,2,195,26,195,59,227,242,239,110,130,1,107,195,37,195,48,227,249,242,233,236,236,233,99,128,4,239,228,233,229,242,229,243,233,115,128,30,123,244,242,225,231,245,242,237,245,235,232,105,128,10,65,239,238,239,243,240,225,227,101,128,255,85,110,2,195,90,195,145,228,229,242,243,227,239,242,101,132,0,95,195,109,195,115,195,127,195,138,228,226,108,128,32,23,237,239,238,239,243,240,225,227,101,128,255,63,246,229,242,244,233,227,225,108,128,254,51,247,225,246,121,128,254,79,105,2,195,151,195,156,239,110,128,34,42,246,229,242,243,225,108,128,34,0,239,231,239,238,229,107,128,1,115,112,5,195,186,195,193,195,201,195,216,196,11,225,242,229,110,128,36,176,226,236,239,227,107,128,37,128,240,229,242,228,239,244,232,229,226,242,229,119,128,5,196,243,233,236,239,110,131,3,197,195,230,195,251,196,3,228,233,229,242,229,243,233,115,129,3,203,195,243,244,239,238,239,115,128,3,176,236,225,244,233,110,128,2,138,244,239,238,239,115,128,3,205,244,225,227,107,2,196,20,196,31,226,229,236,239,247,227,237,98,128,3,29,237,239,100,128,2,212,114,2,196,43,196,55,225,231,245,242,237,245,235,232,105,128,10,115,233,238,103,128,1,111,115,3,196,69,196,84,196,129,232,239,242,244,227,249,242,233,236,236,233,99,128,4,94,237,225,236,108,2,196,93,196,104,232,233,242,225,231,225,238,97,128,48,69,235,225,244,225,235,225,238,97,129,48,165,196,117,232,225,236,230,247,233,228,244,104,128,255,105,244,242,225,233,231,232,116,2,196,141,196,152,227,249,242,233,236,236,233,99,128,4,175,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,177,244,233,236,228,101,130,1,105,196,181,196,189,225,227,245,244,101,128,30,121,226,229,236,239,119,128,30,117,117,5,196,209,196,219,196,226,196,251,197,11,226,229,238,231,225,236,105,128,9,138,228,229,246,97,128,9,10,231,117,2,196,233,196,242,234,225,242,225,244,105,128,10,138,242,237,245,235,232,105,128,10,10,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,66,246,239,247,229,236,243,233,231,110,3,197,27,197,37,197,44,226,229,238,231,225,236,105,128,9,194,228,229,246,97,128,9,66,231,245,234,225,242,225,244,105,128,10,194,246,239,247,229,236,243,233,231,110,3,197,71,197,81,197,88,226,229,238,231,225,236,105,128,9,193,228,229,246,97,128,9,65,231,245,234,225,242,225,244,105,128,10,193,118,139,0,118,197,125,198,17,198,26,198,37,198,222,198,229,199,71,199,83,199,183,199,191,199,212,97,4,197,135,197,142,197,167,197,178,228,229,246,97,128,9,53,231,117,2,197,149,197,158,234,225,242,225,244,105,128,10,181,242,237,245,235,232,105,128,10,53,235,225,244,225,235,225,238,97,128,48,247,118,132,5,213,197,190,197,217,197,249,198,5,228,225,231,229,243,104,130,251,53,197,203,197,208,182,53,128,251,53,232,229,226,242,229,119,128,251,53,104,2,197,223,197,231,229,226,242,229,119,128,5,213,239,236,225,109,129,251,75,197,240,232,229,226,242,229,119,128,251,75,246,225,246,232,229,226,242,229,119,128,5,240,249,239,228,232,229,226,242,229,119,128,5,241,227,233,242,227,236,101,128,36,229,228,239,244,226,229,236,239,119,128,30,127,101,6,198,51,198,62,198,126,198,137,198,143,198,210,227,249,242,233,236,236,233,99,128,4,50,104,4,198,72,198,81,198,95,198,111,225,242,225,226,233,99,128,6,164,230,233,238,225,236,225,242,225,226,233,99,128,251,107,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,108,237,229,228,233,225,236,225,242,225,226,233,99,128,251,109,235,225,244,225,235,225,238,97,128,48,249,238,245,115,128,38,64,242,244,233,227,225,108,2,198,154,198,160,226,225,114,128,0,124,236,233,238,101,4,198,173,198,184,198,195,198,204,225,226,239,246,229,227,237,98,128,3,13,226,229,236,239,247,227,237,98,128,3,41,236,239,247,237,239,100,128,2,204,237,239,100,128,2,200,247,225,242,237,229,238,233,225,110,128,5,126,232,239,239,107,128,2,139,105,3,198,237,198,248,199,31,235,225,244,225,235,225,238,97,128,48,248,242,225,237,97,3,199,3,199,13,199,20,226,229,238,231,225,236,105,128,9,205,228,229,246,97,128,9,77,231,245,234,225,242,225,244,105,128,10,205,243,225,242,231,97,3,199,43,199,53,199,60,226,229,238,231,225,236,105,128,9,131,228,229,246,97,128,9,3,231,245,234,225,242,225,244,105,128,10,131,237,239,238,239,243,240,225,227,101,128,255,86,111,3,199,91,199,102,199,172,225,242,237,229,238,233,225,110,128,5,120,233,227,229,100,2,199,111,199,147,233,244,229,242,225,244,233,239,110,2,199,125,199,136,232,233,242,225,231,225,238,97,128,48,158,235,225,244,225,235,225,238,97,128,48,254,237,225,242,235,235,225,238,97,129,48,155,199,160,232,225,236,230,247,233,228,244,104,128,255,158,235,225,244,225,235,225,238,97,128,48,250,240,225,242,229,110,128,36,177,116,2,199,197,199,204,233,236,228,101,128,30,125,245,242,238,229,100,128,2,140,117,2,199,218,199,229,232,233,242,225,231,225,238,97,128,48,148,235,225,244,225,235,225,238,97,128,48,244,119,143,0,119,200,18,200,251,201,5,201,28,201,68,201,135,201,143,203,114,203,155,203,167,203,242,203,250,204,1,204,12,204,21,97,8,200,36,200,43,200,53,200,64,200,102,200,134,200,146,200,182,227,245,244,101,128,30,131,229,235,239,242,229,225,110,128,49,89,232,233,242,225,231,225,238,97,128,48,143,107,2,200,70,200,94,225,244,225,235,225,238,97,129,48,239,200,82,232,225,236,230,247,233,228,244,104,128,255,156,239,242,229,225,110,128,49,88,243,237,225,236,108,2,200,112,200,123,232,233,242,225,231,225,238,97,128,48,142,235,225,244,225,235,225,238,97,128,48,238,244,244,239,243,241,245,225,242,101,128,51,87,118,2,200,152,200,160,229,228,225,243,104,128,48,28,249,245,238,228,229,242,243,227,239,242,229,246,229,242,244,233,227,225,108,128,254,52,119,3,200,190,200,199,200,213,225,242,225,226,233,99,128,6,72,230,233,238,225,236,225,242,225,226,233,99,128,254,238,232,225,237,250,225,225,226,239,246,101,2,200,228,200,237,225,242,225,226,233,99,128,6,36,230,233,238,225,236,225,242,225,226,233,99,128,254,134,226,243,241,245,225,242,101,128,51,221,227,233,242,99,2,201,14,201,19,236,101,128,36,230,245,237,230,236,229,120,128,1,117,100,2,201,34,201,44,233,229,242,229,243,233,115,128,30,133,239,116,2,201,51,201,60,225,227,227,229,238,116,128,30,135,226,229,236,239,119,128,30,137,101,4,201,78,201,89,201,101,201,125,232,233,242,225,231,225,238,97,128,48,145,233,229,242,243,244,242,225,243,115,128,33,24,107,2,201,107,201,117,225,244,225,235,225,238,97,128,48,241,239,242,229,225,110,128,49,94,239,235,239,242,229,225,110,128,49,93,231,242,225,246,101,128,30,129,232,233,244,101,8,201,164,201,173,202,1,202,91,202,175,202,220,203,16,203,72,226,245,236,236,229,116,128,37,230,99,2,201,179,201,199,233,242,227,236,101,129,37,203,201,189,233,238,246,229,242,243,101,128,37,217,239,242,238,229,242,226,242,225,227,235,229,116,2,201,216,201,236,236,229,230,116,129,48,14,201,225,246,229,242,244,233,227,225,108,128,254,67,242,233,231,232,116,129,48,15,201,246,246,229,242,244,233,227,225,108,128,254,68,100,2,202,7,202,48,233,225,237,239,238,100,129,37,199,202,18,227,239,238,244,225,233,238,233,238,231,226,236,225,227,235,243,237,225,236,236,228,233,225,237,239,238,100,128,37,200,239,247,238,240,239,233,238,244,233,238,103,2,202,64,202,80,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,191,244,242,233,225,238,231,236,101,128,37,189,236,101,2,202,98,202,140,230,244,240,239,233,238,244,233,238,103,2,202,113,202,129,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,195,244,242,233,225,238,231,236,101,128,37,193,238,244,233,227,245,236,225,242,226,242,225,227,235,229,116,2,202,160,202,167,236,229,230,116,128,48,22,242,233,231,232,116,128,48,23,242,233,231,232,244,240,239,233,238,244,233,238,103,2,202,193,202,209,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,185,244,242,233,225,238,231,236,101,128,37,183,115,3,202,228,203,2,203,10,109,2,202,234,202,246,225,236,236,243,241,245,225,242,101,128,37,171,233,236,233,238,231,230,225,227,101,128,38,58,241,245,225,242,101,128,37,161,244,225,114,128,38,6,116,2,203,22,203,33,229,236,229,240,232,239,238,101,128,38,15,239,242,244,239,233,243,229,243,232,229,236,236,226,242,225,227,235,229,116,2,203,57,203,64,236,229,230,116,128,48,24,242,233,231,232,116,128,48,25,245,240,240,239,233,238,244,233,238,103,2,203,87,203,103,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,181,244,242,233,225,238,231,236,101,128,37,179,105,2,203,120,203,131,232,233,242,225,231,225,238,97,128,48,144,107,2,203,137,203,147,225,244,225,235,225,238,97,128,48,240,239,242,229,225,110,128,49,95,237,239,238,239,243,240,225,227,101,128,255,87,111,4,203,177,203,188,203,213,203,231,232,233,242,225,231,225,238,97,128,48,146,235,225,244,225,235,225,238,97,129,48,242,203,201,232,225,236,230,247,233,228,244,104,128,255,102,110,129,32,169,203,219,237,239,238,239,243,240,225,227,101,128,255,230,247,225,229,238,244,232,225,105,128,14,39,240,225,242,229,110,128,36,178,242,233,238,103,128,30,152,243,245,240,229,242,233,239,114,128,2,183,244,245,242,238,229,100,128,2,141,249,238,110,128,1,191,120,137,0,120,204,49,204,60,204,71,204,80,204,107,204,120,204,124,204,136,204,144,225,226,239,246,229,227,237,98,128,3,61,226,239,240,239,237,239,230,111,128,49,18,227,233,242,227,236,101,128,36,231,100,2,204,86,204,96,233,229,242,229,243,233,115,128,30,141,239,244,225,227,227,229,238,116,128,30,139,229,232,225,242,237,229,238,233,225,110,128,5,109,105,128,3,190,237,239,238,239,243,240,225,227,101,128,255,88,240,225,242,229,110,128,36,179,243,245,240,229,242,233,239,114,128,2,227,121,143,0,121,204,189,205,148,205,171,205,211,207,177,207,185,207,202,208,10,208,22,209,19,209,59,209,71,209,82,209,103,210,76,97,11,204,213,204,225,204,235,204,242,204,249,205,3,205,28,205,39,205,77,205,90,205,136,225,228,239,243,241,245,225,242,101,128,51,78,226,229,238,231,225,236,105,128,9,175,227,245,244,101,128,0,253,228,229,246,97,128,9,47,229,235,239,242,229,225,110,128,49,82,231,117,2,205,10,205,19,234,225,242,225,244,105,128,10,175,242,237,245,235,232,105,128,10,47,232,233,242,225,231,225,238,97,128,48,132,107,2,205,45,205,69,225,244,225,235,225,238,97,129,48,228,205,57,232,225,236,230,247,233,228,244,104,128,255,148,239,242,229,225,110,128,49,81,237,225,235,235,225,238,244,232,225,105,128,14,78,243,237,225,236,108,2,205,100,205,111,232,233,242,225,231,225,238,97,128,48,131,235,225,244,225,235,225,238,97,129,48,227,205,124,232,225,236,230,247,233,228,244,104,128,255,108,244,227,249,242,233,236,236,233,99,128,4,99,227,233,242,99,2,205,157,205,162,236,101,128,36,232,245,237,230,236,229,120,128,1,119,100,2,205,177,205,187,233,229,242,229,243,233,115,128,0,255,239,116,2,205,194,205,203,225,227,227,229,238,116,128,30,143,226,229,236,239,119,128,30,245,101,7,205,227,206,235,206,244,207,6,207,38,207,114,207,165,104,8,205,245,205,254,206,32,206,46,206,119,206,135,206,194,206,212,225,242,225,226,233,99,128,6,74,226,225,242,242,229,101,2,206,9,206,18,225,242,225,226,233,99,128,6,210,230,233,238,225,236,225,242,225,226,233,99,128,251,175,230,233,238,225,236,225,242,225,226,233,99,128,254,242,232,225,237,250,225,225,226,239,246,101,4,206,65,206,74,206,88,206,104,225,242,225,226,233,99,128,6,38,230,233,238,225,236,225,242,225,226,233,99,128,254,138,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,139,237,229,228,233,225,236,225,242,225,226,233,99,128,254,140,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,243,237,101,2,206,142,206,155,228,233,225,236,225,242,225,226,233,99,128,254,244,229,237,105,2,206,163,206,178,238,233,244,233,225,236,225,242,225,226,233,99,128,252,221,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,88,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,148,244,232,242,229,229,228,239,244,243,226,229,236,239,247,225,242,225,226,233,99,128,6,209,235,239,242,229,225,110,128,49,86,110,129,0,165,206,250,237,239,238,239,243,240,225,227,101,128,255,229,111,2,207,12,207,21,235,239,242,229,225,110,128,49,85,242,233,238,232,233,229,245,232,235,239,242,229,225,110,128,49,134,114,3,207,46,207,82,207,94,225,232,226,229,238,249,239,237,111,2,207,60,207,69,232,229,226,242,229,119,128,5,170,236,229,230,244,232,229,226,242,229,119,128,5,170,233,227,249,242,233,236,236,233,99,128,4,75,245,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,249,243,233,229,245,238,103,3,207,127,207,136,207,152,235,239,242,229,225,110,128,49,129,240,225,238,243,233,239,243,235,239,242,229,225,110,128,49,131,243,233,239,243,235,239,242,229,225,110,128,49,130,244,233,246,232,229,226,242,229,119,128,5,154,231,242,225,246,101,128,30,243,232,239,239,107,129,1,180,207,194,225,226,239,246,101,128,30,247,105,5,207,214,207,225,207,236,207,245,207,253,225,242,237,229,238,233,225,110,128,5,117,227,249,242,233,236,236,233,99,128,4,87,235,239,242,229,225,110,128,49,98,238,249,225,238,103,128,38,47,247,238,225,242,237,229,238,233,225,110,128,5,130,237,239,238,239,243,240,225,227,101,128,255,89,111,7,208,38,208,108,208,119,208,129,208,167,208,213,208,222,100,131,5,217,208,48,208,68,208,77,228,225,231,229,243,104,129,251,57,208,59,232,229,226,242,229,119,128,251,57,232,229,226,242,229,119,128,5,217,249,239,100,2,208,85,208,94,232,229,226,242,229,119,128,5,242,240,225,244,225,232,232,229,226,242,229,119,128,251,31,232,233,242,225,231,225,238,97,128,48,136,233,235,239,242,229,225,110,128,49,137,107,2,208,135,208,159,225,244,225,235,225,238,97,129,48,232,208,147,232,225,236,230,247,233,228,244,104,128,255,150,239,242,229,225,110,128,49,91,243,237,225,236,108,2,208,177,208,188,232,233,242,225,231,225,238,97,128,48,135,235,225,244,225,235,225,238,97,129,48,231,208,201,232,225,236,230,247,233,228,244,104,128,255,110,244,231,242,229,229,107,128,3,243,121,2,208,228,209,9,97,2,208,234,208,244,229,235,239,242,229,225,110,128,49,136,107,2,208,250,209,2,239,242,229,225,110,128,49,135,244,232,225,105,128,14,34,233,238,231,244,232,225,105,128,14,13,112,2,209,25,209,32,225,242,229,110,128,36,180,239,231,229,231,242,225,237,237,229,238,105,129,3,122,209,48,231,242,229,229,235,227,237,98,128,3,69,114,129,1,166,209,65,233,238,103,128,30,153,243,245,240,229,242,233,239,114,128,2,184,116,2,209,88,209,95,233,236,228,101,128,30,249,245,242,238,229,100,128,2,142,117,5,209,115,209,126,209,136,209,174,210,50,232,233,242,225,231,225,238,97,128,48,134,233,235,239,242,229,225,110,128,49,140,107,2,209,142,209,166,225,244,225,235,225,238,97,129,48,230,209,154,232,225,236,230,247,233,228,244,104,128,255,149,239,242,229,225,110,128,49,96,115,3,209,182,209,220,210,5,226,233,103,2,209,190,209,201,227,249,242,233,236,236,233,99,128,4,107,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,109,236,233,244,244,236,101,2,209,231,209,242,227,249,242,233,236,236,233,99,128,4,103,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,105,237,225,236,108,2,210,14,210,25,232,233,242,225,231,225,238,97,128,48,133,235,225,244,225,235,225,238,97,129,48,229,210,38,232,225,236,230,247,233,228,244,104,128,255,109,249,101,2,210,57,210,66,235,239,242,229,225,110,128,49,139,239,235,239,242,229,225,110,128,49,138,249,97,2,210,83,210,93,226,229,238,231,225,236,105,128,9,223,228,229,246,97,128,9,95,122,142,0,122,210,132,211,140,211,151,211,194,211,221,213,0,213,108,213,150,213,162,213,174,213,202,213,210,213,226,213,235,97,10,210,154,210,165,210,172,210,179,210,190,211,12,211,42,211,53,211,89,211,101,225,242,237,229,238,233,225,110,128,5,102,227,245,244,101,128,1,122,228,229,246,97,128,9,91,231,245,242,237,245,235,232,105,128,10,91,104,4,210,200,210,209,210,223,210,253,225,242,225,226,233,99,128,6,56,230,233,238,225,236,225,242,225,226,233,99,128,254,198,105,2,210,229,210,244,238,233,244,233,225,236,225,242,225,226,233,99,128,254,199,242,225,231,225,238,97,128,48,86,237,229,228,233,225,236,225,242,225,226,233,99,128,254,200,233,110,2,211,19,211,28,225,242,225,226,233,99,128,6,50,230,233,238,225,236,225,242,225,226,233,99,128,254,176,235,225,244,225,235,225,238,97,128,48,182,241,229,102,2,211,61,211,75,231,225,228,239,236,232,229,226,242,229,119,128,5,149,241,225,244,225,238,232,229,226,242,229,119,128,5,148,242,241,225,232,229,226,242,229,119,128,5,152,249,233,110,130,5,214,211,111,211,131,228,225,231,229,243,104,129,251,54,211,122,232,229,226,242,229,119,128,251,54,232,229,226,242,229,119,128,5,214,226,239,240,239,237,239,230,111,128,49,23,99,3,211,159,211,166,211,188,225,242,239,110,128,1,126,233,242,99,2,211,174,211,179,236,101,128,36,233,245,237,230,236,229,120,128,30,145,245,242,108,128,2,145,228,239,116,130,1,124,211,204,211,213,225,227,227,229,238,116,128,1,124,226,229,236,239,119,128,30,147,101,6,211,235,211,246,212,33,212,44,212,55,212,251,227,249,242,233,236,236,233,99,128,4,55,100,2,211,252,212,15,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,153,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,223,232,233,242,225,231,225,238,97,128,48,92,235,225,244,225,235,225,238,97,128,48,188,242,111,140,0,48,212,84,212,93,212,103,212,110,212,135,212,148,212,159,212,171,212,182,212,192,212,203,212,210,225,242,225,226,233,99,128,6,96,226,229,238,231,225,236,105,128,9,230,228,229,246,97,128,9,102,231,117,2,212,117,212,126,234,225,242,225,244,105,128,10,230,242,237,245,235,232,105,128,10,102,232,225,227,235,225,242,225,226,233,99,128,6,96,233,238,230,229,242,233,239,114,128,32,128,237,239,238,239,243,240,225,227,101,128,255,16,239,236,228,243,244,249,236,101,128,247,48,240,229,242,243,233,225,110,128,6,240,243,245,240,229,242,233,239,114,128,32,112,244,232,225,105,128,14,80,247,233,228,244,104,3,212,222,212,231,212,243,234,239,233,238,229,114,128,254,255,238,239,238,234,239,233,238,229,114,128,32,12,243,240,225,227,101,128,32,11,244,97,128,3,182,104,2,213,6,213,17,226,239,240,239,237,239,230,111,128,49,19,101,4,213,27,213,38,213,54,213,65,225,242,237,229,238,233,225,110,128,5,106,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,194,227,249,242,233,236,236,233,99,128,4,54,100,2,213,71,213,90,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,151,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,221,105,3,213,116,213,127,213,138,232,233,242,225,231,225,238,97,128,48,88,235,225,244,225,235,225,238,97,128,48,184,238,239,242,232,229,226,242,229,119,128,5,174,236,233,238,229,226,229,236,239,119,128,30,149,237,239,238,239,243,240,225,227,101,128,255,90,111,2,213,180,213,191,232,233,242,225,231,225,238,97,128,48,94,235,225,244,225,235,225,238,97,128,48,190,240,225,242,229,110,128,36,181,242,229,244,242,239,230,236,229,248,232,239,239,107,128,2,144,243,244,242,239,235,101,128,1,182,117,2,213,241,213,252,232,233,242,225,231,225,238,97,128,48,90,235,225,244,225,235,225,238,97,128,48,186,68,101,108,116,97,0,79,109,101,103,97,0,102,114,97,99,116,105,111,110,0,104,121,112,104,101,110,0,109,97,99,114,111,110,0,109,117,0,112,101,114,105,111,100,99,101,110,116,101,114,101,100,0,115,112,97,99,101,0,84,99,111,109,109,97,97,99,99,101,110,116,0,116,99,111,109,109,97,97,99,99,101,110,116,0,46,110,117,108,108,0,110,111,110,109,97,114,107,105,110,103,114,101,116,117,114,110,0,110,111,116,101,113,117,97,108,0,105,110,102,105,110,105,116,121,0,108,101,115,115,101,113,117,97,108,0,103,114,101,97,116,101,114,101,113,117,97,108,0,112,97,114,116,105,97,108,100,105,102,102,0,115,117,109,109,97,116,105,111,110,0,112,114,111,100,117,99,116,0,112,105,0,105,110,116,101,103,114,97,108,0,79,109,101,103,97,0,114,97,100,105,99,97,108,0,97,112,112,114,111,120,101,113,117,97,108,0,68,101,108,116,97,0,110,111,110,98,114,101,97,107,105,110,103,115,112,97,99,101,0,108,111,122,101,110,103,101,0,97,112,112,108,101,0,102,114,97,110,99,0,71,98,114,101,118,101,0,103,98,114,101,118,101,0,73,100,111,116,97,99,99,101,110,116,0,83,99,101,100,105,108,108,97,0,115,99,101,100,105,108,108,97,0,67,97,99,117,116,101,0,99,97,99,117,116,101,0,67,99,97,114,111,110,0,99,99,97,114,111,110,0,100,99,114,111,97,116,0,46,110,111,116,100,101,102,0,115,112,97,99,101,0,101,120,99,108,97,109,0,113,117,111,116,101,100,98,108,0,110,117,109,98,101,114,115,105,103,110,0,100,111,108,108,97,114,0,112,101,114,99,101,110,116,0,97,109,112,101,114,115,97,110,100,0,113,117,111,116,101,114,105,103,104,116,0,112,97,114,101,110,108,101,102,116,0,112,97,114,101,110,114,105,103,104,116,0,97,115,116,101,114,105,115,107,0,112,108,117,115,0,99,111,109,109,97,0,104,121,112,104,101,110,0,112,101,114,105,111,100,0,115,108,97,115,104,0,122,101,114,111,0,111,110,101,0,116,119,111,0,116,104,114,101,101,0,102,111,117,114,0,102,105,118,101,0,115,105,120,0,115,101,118,101,110,0,101,105,103,104,116,0,110,105,110,101,0,99,111,108,111,110,0,115,101,109,105,99,111,108,111,110,0,108,101,115,115,0,101,113,117,97,108,0,103,114,101,97,116,101,114,0,113,117,101,115,116,105,111,110,0,97,116,0,65,0,66,0,67,0,68,0,69,0,70,0,71,0,72,0,73,0,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,98,114,97,99,107,101,116,108,101,102,116,0,98,97,99,107,115,108,97,115,104,0,98,114,97,99,107,101,116,114,105,103,104,116,0,97,115,99,105,105,99,105,114,99,117,109,0,117,110,100,101,114,115,99,111,114,101,0,113,117,111,116,101,108,101,102,116,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,111,0,112,0,113,0,114,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,98,114,97,99,101,108,101,102,116,0,98,97,114,0,98,114,97,99,101,114,105,103,104,116,0,97,115,99,105,105,116,105,108,100,101,0,101,120,99,108,97,109,100,111,119,110,0,99,101,110,116,0,115,116,101,114,108,105,110,103,0,102,114,97,99,116,105,111,110,0,121,101,110,0,102,108,111,114,105,110,0,115,101,99,116,105,111,110,0,99,117,114,114,101,110,99,121,0,113,117,111,116,101,115,105,110,103,108,101,0,113,117,111,116,101,100,98,108,108,101,102,116,0,103,117,105,108,108,101,109,111,116,108,101,102,116,0,103,117,105,108,115,105,110,103,108,108,101,102,116,0,103,117,105,108,115,105,110,103,108,114,105,103,104,116,0,102,105,0,102,108,0,101,110,100,97,115,104,0,100,97,103,103,101,114,0,100,97,103,103,101,114,100,98,108,0,112,101,114,105,111,100,99,101,110,116,101,114,101,100,0,112,97,114,97,103,114,97,112,104,0,98,117,108,108,101,116,0,113,117,111,116,101,115,105,110,103,108,98,97,115,101,0,113,117,111,116,101,100,98,108,98,97,115,101,0,113,117,111,116,101,100,98,108,114,105,103,104,116,0,103,117,105,108,108,101,109,111,116,114,105,103,104,116,0,101,108,108,105,112,115,105,115,0,112,101,114,116,104,111,117,115,97,110,100,0,113,117,101,115,116,105,111,110,100,111,119,110,0,103,114,97,118,101,0,97,99,117,116,101,0,99,105,114,99,117,109,102,108,101,120,0,116,105,108,100,101,0,109,97,99,114,111,110,0,98,114,101,118,101,0,100,111,116,97,99,99,101,110,116,0,100,105,101,114,101,115,105,115,0,114,105,110,103,0,99,101,100,105,108,108,97,0,104,117,110,103,97,114,117,109,108,97,117,116,0,111,103,111,110,101,107,0,99,97,114,111,110,0,101,109,100,97,115,104,0,65,69,0,111,114,100,102,101,109,105,110,105,110,101,0,76,115,108,97,115,104,0,79,115,108,97,115,104,0,79,69,0,111,114,100,109,97,115,99,117,108,105,110,101,0,97,101,0,100,111,116,108,101,115,115,105,0,108,115,108,97,115,104,0,111,115,108,97,115,104,0,111,101,0,103,101,114,109,97,110,100,98,108,115,0,111,110,101,115,117,112,101,114,105,111,114,0,108,111,103,105,99,97,108,110,111,116,0,109,117,0,116,114,97,100,101,109,97,114,107,0,69,116,104,0,111,110,101,104,97,108,102,0,112,108,117,115,109,105,110,117,115,0,84,104,111,114,110,0,111,110,101,113,117,97,114,116,101,114,0,100,105,118,105,100,101,0,98,114,111,107,101,110,98,97,114,0,100,101,103,114,101,101,0,116,104,111,114,110,0,116,104,114,101,101,113,117,97,114,116,101,114,115,0,116,119,111,115,117,112,101,114,105,111,114,0,114,101,103,105,115,116,101,114,101,100,0,109,105,110,117,115,0,101,116,104,0,109,117,108,116,105,112,108,121,0,116,104,114,101,101,115,117,112,101,114,105,111,114,0,99,111,112,121,114,105,103,104,116,0,65,97,99,117,116,101,0,65,99,105,114,99,117,109,102,108,101,120,0,65,100,105,101,114,101,115,105,115,0,65,103,114,97,118,101,0,65,114,105,110,103,0,65,116,105,108,100,101,0,67,99,101,100,105,108,108,97,0,69,97,99,117,116,101,0,69,99,105,114,99,117,109,102,108,101,120,0,69,100,105,101,114,101,115,105,115,0,69,103,114,97,118,101,0,73,97,99,117,116,101,0,73,99,105,114,99,117,109,102,108,101,120,0,73,100,105,101,114,101,115,105,115,0,73,103,114,97,118,101,0,78,116,105,108,100,101,0,79,97,99,117,116,101,0,79,99,105,114,99,117,109,102,108,101,120,0,79,100,105,101,114,101,115,105,115,0,79,103,114,97,118,101,0,79,116,105,108,100,101,0,83,99,97,114,111,110,0,85,97,99,117,116,101,0,85,99,105,114,99,117,109,102,108,101,120,0,85,100,105,101,114,101,115,105,115,0,85,103,114,97,118,101,0,89,97,99,117,116,101,0,89,100,105,101,114,101,115,105,115,0,90,99,97,114,111,110,0,97,97,99,117,116,101,0,97,99,105,114,99,117,109,102,108,101,120,0,97,100,105,101,114,101,115,105,115,0,97,103,114,97,118,101,0,97,114,105,110,103,0,97,116,105,108,100,101,0,99,99,101,100,105,108,108,97,0,101,97,99,117,116,101,0,101,99,105,114,99,117,109,102,108,101,120,0,101,100,105,101,114,101,115,105,115,0,101,103,114,97,118,101,0,105,97,99,117,116,101,0,105,99,105,114,99,117,109,102,108,101,120,0,105,100,105,101,114,101,115,105,115,0,105,103,114,97,118,101,0,110,116,105,108,100,101,0,111,97,99,117,116,101,0,111,99,105,114,99,117,109,102,108,101,120,0,111,100,105,101,114,101,115,105,115,0,111,103,114,97,118,101,0,111,116,105,108,100,101,0,115,99,97,114,111,110,0,117,97,99,117,116,101,0,117,99,105,114,99,117,109,102,108,101,120,0,117,100,105,101,114,101,115,105,115,0,117,103,114,97,118,101,0,121,97,99,117,116,101,0,121,100,105,101,114,101,115,105,115,0,122,99,97,114,111,110,0,101,120,99,108,97,109,115,109,97,108,108,0,72,117,110,103,97,114,117,109,108,97,117,116,115,109,97,108,108,0,100,111,108,108,97,114,111,108,100,115,116,121,108,101,0,100,111,108,108,97,114,115,117,112,101,114,105,111,114,0,97,109,112,101,114,115,97,110,100,115,109,97,108,108,0,65,99,117,116,101,115,109,97,108,108,0,112,97,114,101,110,108,101,102,116,115,117,112,101,114,105,111,114,0,112,97,114,101,110,114,105,103,104,116,115,117,112,101,114,105,111,114,0,116,119,111,100,111,116,101,110,108,101,97,100,101,114,0,111,110,101,100,111,116,101,110,108,101,97,100,101,114,0,122,101,114,111,111,108,100,115,116,121,108,101,0,111,110,101,111,108,100,115,116,121,108,101,0,116,119,111,111,108,100,115,116,121,108,101,0,116,104,114,101,101,111,108,100,115,116,121,108,101,0,102,111,117,114,111,108,100,115,116,121,108,101,0,102,105,118,101,111,108,100,115,116,121,108,101,0,115,105,120,111,108,100,115,116,121,108,101,0,115,101,118,101,110,111,108,100,115,116,121,108,101,0,101,105,103,104,116,111,108,100,115,116,121,108,101,0,110,105,110,101,111,108,100,115,116,121,108,101,0,99,111,109,109,97,115,117,112,101,114,105,111,114,0,116,104,114,101,101,113,117,97,114,116,101,114,115,101,109,100,97,115,104,0,112,101,114,105,111,100,115,117,112,101,114,105,111,114,0,113,117,101,115,116,105,111,110,115,109,97,108,108,0,97,115,117,112,101,114,105,111,114,0,98,115,117,112,101,114,105,111,114,0,99,101,110,116,115,117,112,101,114,105,111,114,0,100,115,117,112,101,114,105,111,114,0,101,115,117,112,101,114,105,111,114,0,105,115,117,112,101,114,105,111,114,0,108,115,117,112,101,114,105,111,114,0,109,115,117,112,101,114,105,111,114,0,110,115,117,112,101,114,105,111,114,0,111,115,117,112,101,114,105,111,114,0,114,115,117,112,101,114,105,111,114,0,115,115,117,112,101,114,105,111,114,0,116,115,117,112,101,114,105,111,114,0,102,102,0,102,102,105,0,102,102,108,0,112,97,114,101,110,108,101,102,116,105,110,102,101,114,105,111,114,0,112,97,114,101,110,114,105,103,104,116,105,110,102,101,114,105,111,114,0,67,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,104,121,112,104,101,110,115,117,112,101,114,105,111,114,0,71,114,97,118,101,115,109,97,108,108,0,65,115,109,97,108,108,0,66,115,109,97,108,108,0,67,115,109,97,108,108,0,68,115,109,97,108,108,0,69,115,109,97,108,108,0,70,115,109,97,108,108,0,71,115,109,97,108,108,0,72,115,109,97,108,108,0,73,115,109,97,108,108,0,74,115,109,97,108,108,0,75,115,109,97,108,108,0,76,115,109,97,108,108,0,77,115,109,97,108,108,0,78,115,109,97,108,108,0,79,115,109,97,108,108,0,80,115,109,97,108,108,0,81,115,109,97,108,108,0,82,115,109,97,108,108,0,83,115,109,97,108,108,0,84,115,109,97,108,108,0,85,115,109,97,108,108,0,86,115,109,97,108,108,0,87,115,109,97,108,108,0,88,115,109,97,108,108,0,89,115,109,97,108,108,0,90,115,109,97,108,108,0,99,111,108,111,110,109,111,110,101,116,97,114,121,0,111,110,101,102,105,116,116,101,100,0,114,117,112,105,97,104,0,84,105,108,100,101,115,109,97,108,108,0,101,120,99,108,97,109,100,111,119,110,115,109,97,108,108,0,99,101,110,116,111,108,100,115,116,121,108,101,0,76,115,108,97,115,104,115,109,97,108,108,0,83,99,97,114,111,110,115,109,97,108,108,0,90,99,97,114,111,110,115,109,97,108,108,0,68,105,101,114,101,115,105,115,115,109,97,108,108,0,66,114,101,118,101,115,109,97,108,108,0,67,97,114,111,110,115,109,97,108,108,0,68,111,116,97,99,99,101,110,116,115,109,97,108,108,0,77,97,99,114,111,110,115,109,97,108,108,0,102,105,103,117,114,101,100,97,115,104,0,104,121,112,104,101,110,105,110,102,101,114,105,111,114,0,79,103,111,110,101,107,115,109,97,108,108,0,82,105,110,103,115,109,97,108,108,0,67,101,100,105,108,108,97,115,109,97,108,108,0,113,117,101,115,116,105,111,110,100,111,119,110,115,109,97,108,108,0,111,110,101,101,105,103,104,116,104,0,116,104,114,101,101,101,105,103,104,116,104,115,0,102,105,118,101,101,105,103,104,116,104,115,0,115,101,118,101,110,101,105,103,104,116,104,115,0,111,110,101,116,104,105,114,100,0,116,119,111,116,104,105,114,100,115,0,122,101,114,111,115,117,112,101,114,105,111,114,0,102,111,117,114,115,117,112,101,114,105,111,114,0,102,105,118,101,115,117,112,101,114,105,111,114,0,115,105,120,115,117,112,101,114,105,111,114,0,115,101,118,101,110,115,117,112,101,114,105,111,114,0,101,105,103,104,116,115,117,112,101,114,105,111,114,0,110,105,110,101,115,117,112,101,114,105,111,114,0,122,101,114,111,105,110,102,101,114,105,111,114,0,111,110,101,105,110,102,101,114,105,111,114,0,116,119,111,105,110,102,101,114,105,111,114,0,116,104,114,101,101,105,110,102,101,114,105,111,114,0,102,111,117,114,105,110,102,101,114,105,111,114,0,102,105,118,101,105,110,102,101,114,105,111,114,0,115,105,120,105,110,102,101,114,105,111,114,0,115,101,118,101,110,105,110,102,101,114,105,111,114,0,101,105,103,104,116,105,110,102,101,114,105,111,114,0,110,105,110,101,105,110,102,101,114,105,111,114,0,99,101,110,116,105,110,102,101,114,105,111,114,0,100,111,108,108,97,114,105,110,102,101,114,105,111,114,0,112,101,114,105,111,100,105,110,102,101,114,105,111,114,0,99,111,109,109,97,105,110,102,101,114,105,111,114,0,65,103,114,97,118,101,115,109,97,108,108,0,65,97,99,117,116,101,115,109,97,108,108,0,65,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,65,116,105,108,100,101,115,109,97,108,108,0,65,100,105,101,114,101,115,105,115,115,109,97,108,108,0,65,114,105,110,103,115,109,97,108,108,0,65,69,115,109,97,108,108,0,67,99,101,100,105,108,108,97,115,109,97,108,108,0,69,103,114,97,118,101,115,109,97,108,108,0,69,97,99,117,116,101,115,109,97,108,108,0,69,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,69,100,105,101,114,101,115,105,115,115,109,97,108,108,0,73,103,114,97,118,101,115,109,97,108,108,0,73,97,99,117,116,101,115,109,97,108,108,0,73,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,73,100,105,101,114,101,115,105,115,115,109,97,108,108,0,69,116,104,115,109,97,108,108,0,78,116,105,108,100,101,115,109,97,108,108,0,79,103,114,97,118,101,115,109,97,108,108,0,79,97,99,117,116,101,115,109,97,108,108,0,79,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,79,116,105,108,100,101,115,109,97,108,108,0,79,100,105,101,114,101,115,105,115,115,109,97,108,108,0,79,69,115,109,97,108,108,0,79,115,108,97,115,104,115,109,97,108,108,0,85,103,114,97,118,101,115,109,97,108,108,0,85,97,99,117,116,101,115,109,97,108,108,0,85,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,85,100,105,101,114,101,115,105,115,115,109,97,108,108,0,89,97,99,117,116,101,115,109,97,108,108,0,84,104,111,114,110,115,109,97,108,108,0,89,100,105,101,114,101,115,105,115,115,109,97,108,108,0,48,48,49,46,48,48,48,0,48,48,49,46,48,48,49,0,48,48,49,46,48,48,50,0,48,48,49,46,48,48,51,0,66,108,97,99,107,0,66,111,108,100,0,66,111,111,107,0,76,105,103,104,116,0,77,101,100,105,117,109,0,82,101,103,117,108,97,114,0,82,111,109,97,110,0,83,101,109,105,98,111,108,100,0,112,111,115,116,115,99,114,105,112,116,45,99,109,97,112,115,0,114,98,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,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,18,0,0,0,18,18,18,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,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+61440);allocate([0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0,114,119,97,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+71680);var tempDoublePtr=STATICTOP;STATICTOP+=16;Module["_i64Subtract"]=_i64Subtract;Module["_i64Add"]=_i64Add;Module["_memset"]=_memset;function _pthread_cleanup_push(routine,arg){__ATEXIT__.push((function(){Runtime.dynCall("vi",routine,[arg])}));_pthread_cleanup_push.level=__ATEXIT__.length}Module["_bitshift64Lshr"]=_bitshift64Lshr;Module["_bitshift64Shl"]=_bitshift64Shl;function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!");__ATEXIT__.pop();_pthread_cleanup_push.level=__ATEXIT__.length}function _abort(){Module["abort"]()}function _realloc(){throw"bad"}Module["_realloc"]=_realloc;Module["_saveSetjmp"]=_saveSetjmp;Module["_testSetjmp"]=_testSetjmp;function _longjmp(env,value){asm["setThrew"](env,value||1);throw"longjmp"}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"};function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>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){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up--;up){parts.unshift("..")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))}),join2:(function(l,r){return PATH.normalize(l+"/"+r)}),resolve:(function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter((function(p){return!!p})),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start<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(){}),shutdown:(function(){}),register:(function(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)}),stream_ops:{open:(function(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}stream.tty=tty;stream.seekable=false}),close:(function(stream){stream.tty.ops.flush(stream.tty)}),flush:(function(stream){stream.tty.ops.flush(stream.tty)}),read:(function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(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){var BUFSIZE=256;var buf=new Buffer(BUFSIZE);var bytesRead=0;var fd=process.stdin.fd;var usingDevice=false;try{fd=fs.openSync("/dev/stdin","r");usingDevice=true}catch(e){}bytesRead=fs.readSync(fd,buf,0,BUFSIZE,null);if(usingDevice){fs.closeSync(fd)}if(bytesRead>0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;i<node.usedBytes;++i)arr.push(node.contents[i]);return arr}return node.contents}),getFileDataAsTypedArray:(function(node){if(!node.contents)return new Uint8Array;if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)}),expandFileStorage:(function(node,newCapacity){if(node.contents&&node.contents.subarray&&newCapacity>node.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.buffer.byteLength:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity<CAPACITY_DOUBLING_MAX?2:1.125)|0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}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;node.usedBytes=0;return}if(!node.contents||node.contents.subarray){var oldContents=node.contents;node.contents=new Uint8Array(new ArrayBuffer(newSize));if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize;return}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={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}}),lookup:(function(parent,name){throw FS.genericErrors[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(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)}}}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|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){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i<size;i++)buffer[offset+i]=contents[position+i]}return size}),write:(function(stream,buffer,offset,length,position,canOwn){if(!length)return 0;var node=stream.node;node.timestamp=Date.now();if(buffer.subarray&&(!node.contents||node.contents.subarray)){if(canOwn){node.contents=buffer.subarray(offset,offset+length);node.usedBytes=length;return length}else if(node.usedBytes===0&&position===0){node.contents=new Uint8Array(buffer.subarray(offset,offset+length));node.usedBytes=length;return length}else if(position+length<=node.usedBytes){node.contents.set(buffer.subarray(offset,offset+length),position);return length}}MEMFS.expandFileStorage(node,position+length);if(node.contents.subarray&&buffer.subarray)node.contents.set(buffer.subarray(offset,offset+length),position);else{for(var i=0;i<length;i++){node.contents[position+i]=buffer[offset+i]}}node.usedBytes=Math.max(node.usedBytes,position+length);return length}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.usedBytes}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}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;if(!(flags&2)&&(contents.buffer===buffer||contents.buffer===buffer.buffer)){allocated=false;ptr=contents.byteOffset}else{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}}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}if(mmapFlags&2){return 0}var bytesWritten=MEMFS.stream_ops.write(stream,buffer,0,length,offset,false);return 0})}};var IDBFS={dbs:{},indexedDB:(function(){if(typeof indexedDB!=="undefined")return indexedDB;var ret=null;if(typeof window==="object")ret=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;assert(ret,"IDBFS used, but indexedDB not supported");return ret}),DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",mount:(function(mount){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){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)}if(!fileStore.indexNames.contains("timestamp")){fileStore.createIndex("timestamp","timestamp",{unique:false})}});req.onsuccess=(function(){db=req.result;IDBFS.dbs[name]=db;callback(null,db)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),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(e){callback(this.error);e.preventDefault()});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)){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.chmod(path,entry.mode);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(e){callback(this.error);e.preventDefault()})}),storeRemoteEntry:(function(store,path,entry,callback){var req=store.put(entry,path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),removeRemoteEntry:(function(store,path,callback){var req=store.delete(path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),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 completed=0;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err){if(!done.errored){done.errored=true;return callback(err)}return}if(++completed>=total){return callback(null)}}transaction.onerror=(function(e){done(this.error);e.preventDefault()});create.sort().forEach((function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,(function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)}))}else{IDBFS.loadLocalEntry(path,(function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)}))}}));remove.sort().reverse().forEach((function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}}))})};var NODEFS={isWindows:false,staticInit:(function(){NODEFS.isWindows=!!process.platform.match(/^win/)}),mount:(function(mount){assert(ENVIRONMENT_IS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)}),createNode:(function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node}),getMode:(function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&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){flags&=~32768;flags&=~524288;if(flags in NODEFS.flagsToPermissionStringMap){return NODEFS.flagsToPermissionStringMap[flags]}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.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){if(length===0)return 0;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){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){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:(function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i<parts.length-1;i++){var curr=parts.slice(0,i+1).join("/");if(!createdParents[curr]){createdParents[curr]=WORKERFS.createNode(parent,curr,WORKERFS.DIR_MODE,0)}parent=createdParents[curr]}return parent}function base(path){var parts=path.split("/");return parts[parts.length-1]}Array.prototype.forEach.call(mount.opts["files"]||[],(function(file){WORKERFS.createNode(ensureParent(file.name),base(file.name),WORKERFS.FILE_MODE,0,file,file.lastModifiedDate)}));(mount.opts["blobs"]||[]).forEach((function(obj){WORKERFS.createNode(ensureParent(obj["name"]),base(obj["name"]),WORKERFS.FILE_MODE,0,obj["data"])}));(mount.opts["packages"]||[]).forEach((function(pack){pack["metadata"].files.forEach((function(file){var name=file.filename.substr(1);WORKERFS.createNode(ensureParent(name),base(name),WORKERFS.FILE_MODE,0,pack["blob"].slice(file.start,file.end))}))}));return root}),createNode:(function(parent,name,mode,dev,contents,mtime){var node=FS.createNode(parent,name,mode);node.mode=mode;node.node_ops=WORKERFS.node_ops;node.stream_ops=WORKERFS.stream_ops;node.timestamp=(mtime||new Date).getTime();assert(WORKERFS.FILE_MODE!==WORKERFS.DIR_MODE);if(mode===WORKERFS.FILE_MODE){node.size=contents.size;node.contents=contents}else{node.size=4096;node.contents={}}if(parent){parent.contents[name]=node}return node}),node_ops:{getattr:(function(node){return{dev:1,ino:undefined,mode:node.mode,nlink:1,uid:0,gid:0,rdev:undefined,size:node.size,atime:new Date(node.timestamp),mtime:new Date(node.timestamp),ctime:new Date(node.timestamp),blksize:4096,blocks:Math.ceil(node.size/4096)}}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}}),lookup:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}),mknod:(function(parent,name,mode,dev){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rename:(function(oldNode,newDir,newName){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),unlink:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rmdir:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readdir:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),symlink:(function(parent,newName,oldPath){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readlink:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)})},stream_ops:{read:(function(stream,buffer,offset,length,position){if(position>=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size}),write:(function(stream,buffer,offset,length,position){throw new FS.ErrnoError(ERRNO_CODES.EIO)}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};STATICTOP+=16;STATICTOP+=16;STATICTOP+=16;var FS={root:null,mounts:[],devices:[null],streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i<parts.length;i++){var islast=i===parts.length-1;if(islast&&opts.parent){break}current=FS.lookupNode(current,parts[i]);current_path=PATH.join2(current_path,parts[i]);if(FS.isMountpoint(current)){if(!islast||islast&&opts.follow_mount){current=current.mounted.root}}if(!islast||opts.follow){var count=0;while(FS.isLink(current.mode)){var link=FS.readlink(current_path);current_path=PATH.resolve(PATH.dirname(current_path),link);var lookup=FS.lookupPath(current_path,{recurse_count:opts.recurse_count});current=lookup.node;if(count++>40){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,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return ERRNO_CODES.EACCES}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return ERRNO_CODES.EACCES}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return ERRNO_CODES.EACCES}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return ERRNO_CODES.EACCES;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return ERRNO_CODES.EEXIST}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return ERRNO_CODES.ENOTDIR}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return ERRNO_CODES.EBUSY}}else{if(FS.isDir(node.mode)){return ERRNO_CODES.EISDIR}}return 0}),mayOpen:(function(node,flags){if(!node){return ERRNO_CODES.ENOENT}if(FS.isLink(node.mode)){return ERRNO_CODES.ELOOP}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return ERRNO_CODES.EISDIR}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(ERRNO_CODES.EMFILE)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdev:(function(path,mode,dev){if(typeof dev==="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)}),symlink:(function(oldpath,newpath){if(!PATH.resolve(oldpath)){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}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);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)}if(!old_dir||!new_dir)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(ERRNO_CODES.EXDEV)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}relative=PATH.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var err=FS.mayDelete(old_dir,old_name,isdir);if(err){throw new FS.ErrnoError(err)}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(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)}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}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){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){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!link.node_ops.readlink){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return PATH.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))}),stat:(function(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}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()})}),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:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path==="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(ERRNO_CODES.EEXIST)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}if(!created){var err=FS.mayOpen(node,flags);if(err){throw new FS.ErrnoError(err)}}if(flags&512){FS.truncate(node,0)}flags&=~(128|512);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false},fd_start,fd_end);if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1;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){if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}}),llseek:(function(stream,offset,whence){if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position}),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){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){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)}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!stream||!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)}),munmap:(function(stream){return 0}),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=UTF8ArrayToString(buf,0)}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 buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,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");FS.mkdir("/home");FS.mkdir("/home/web_user")}),createDefaultDevices:(function(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:(function(){return 0}),write:(function(stream,buffer,offset,length,pos){return length})});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var random_device;if(typeof crypto!=="undefined"){var randomBuffer=new Uint8Array(1);random_device=(function(){crypto.getRandomValues(randomBuffer);return randomBuffer[0]})}else if(ENVIRONMENT_IS_NODE){random_device=(function(){return require("crypto").randomBytes(1)[0]})}else{random_device=(function(){return Math.random()*256|0})}FS.createDevice("/dev","random",random_device);FS.createDevice("/dev","urandom",random_device);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")}),createSpecialDirectories:(function(){FS.mkdir("/proc");FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:(function(){var node=FS.createNode("/proc/self","fd",16384|511,73);node.node_ops={lookup:(function(parent,name){var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:(function(){return stream.path})}};ret.parent=ret;return ret})};return node})},{},"/proc/self/fd")}),createStandardStreams:(function(){if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin","r");assert(stdin.fd===0,"invalid handle for stdin ("+stdin.fd+")");var stdout=FS.open("/dev/stdout","w");assert(stdout.fd===1,"invalid handle for stdout ("+stdout.fd+")");var stderr=FS.open("/dev/stderr","w");assert(stderr.fd===2,"invalid handle for stderr ("+stderr.fd+")")}),ensureErrnoError:(function(){if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.node=node;this.setErrno=(function(errno){this.errno=errno;for(var key in ERRNO_CODES){if(ERRNO_CODES[key]===errno){this.code=key;break}}});this.setErrno(errno);this.message=ERRNO_MESSAGES[errno]};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[ERRNO_CODES.ENOENT].forEach((function(code){FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack="<generic error, no stack>"}))}),staticInit:(function(){FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS,"IDBFS":IDBFS,"NODEFS":NODEFS,"WORKERFS":WORKERFS}}),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();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()}),quit:(function(){FS.init.initialized=false;var fflush=Module["_fflush"];if(fflush)fflush(0);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){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){}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}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);FS.registerDevice(dev,{open:(function(stream){stream.seekable=false}),close:(function(stream){if(output&&output.buffer&&output.buffer.length){output(10)}}),read:(function(stream,buffer,offset,length,pos){var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=input()}catch(e){throw new FS.ErrnoError(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"]){try{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){function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype.get=function LazyUint8Array_get(idx){if(idx>this.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i<size;i++){buffer[offset+i]=contents[position+i]}}else{for(var i=0;i<size;i++){buffer[offset+i]=contents.get(position+i)}}return size};node.stream_ops=stream_ops;return node}),createPreloadedFile:(function(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish){Browser.init();var fullname=name?PATH.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency("cp "+fullname);function processData(byteArray){function finish(byteArray){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency(dep)}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(dep)}));handled=true}}));if(!handled)finish(byteArray)}addRunDependency(dep);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;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})};var SYSCALLS={DEFAULT_POLLMASK:5,mappings:{},umask:511,calculateAt:(function(dirfd,path){if(path[0]!=="/"){var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=FS.getStream(dirfd);if(!dirstream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);dir=dirstream.path}path=PATH.join2(dir,path)}return path}),doStat:(function(func,path,buf){try{var stat=func(path)}catch(e){if(e&&e.node&&PATH.normalize(path)!==PATH.normalize(FS.getPath(e.node))){return-ERRNO_CODES.ENOTDIR}throw e}HEAP32[buf>>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;HEAP32[buf+36>>2]=stat.size;HEAP32[buf+40>>2]=4096;HEAP32[buf+44>>2]=stat.blocks;HEAP32[buf+48>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+52>>2]=0;HEAP32[buf+56>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ino;return 0}),doMsync:(function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)}),doMkdir:(function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0}),doMknod:(function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-ERRNO_CODES.EINVAL}FS.mknod(path,mode,dev);return 0}),doReadlink:(function(path,buf,bufsize){if(bufsize<=0)return-ERRNO_CODES.EINVAL;var ret=FS.readlink(path);ret=ret.slice(0,Math.max(0,bufsize));writeStringToMemory(ret,buf,true);return ret.length}),doAccess:(function(path,amode){if(amode&~7){return-ERRNO_CODES.EINVAL}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-ERRNO_CODES.EACCES}return 0}),doDup:(function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd}),doReadv:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr<len)break}return ret}),doWritev:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret}),varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),getStreamFromFD:(function(){var stream=FS.getStream(SYSCALLS.get());if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return stream}),getSocketFromFD:(function(){var socket=SOCKFS.getSocket(SYSCALLS.get());if(!socket)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return socket}),getSocketAddress:(function(allowNull){var addrp=SYSCALLS.get(),addrlen=SYSCALLS.get();if(allowNull&&addrp===0)return null;var info=__read_sockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___lock(){}function ___unlock(){}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:return totalMemory/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 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 79:return 0;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:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}function _sbrk(bytes){var self=_sbrk;if(!self.called){DYNAMICTOP=alignMemoryPage(DYNAMICTOP);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){var success=self.alloc(bytes);if(!success)return-1>>>0}return ret}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;Module["_memmove"]=_memmove;function _emscripten_set_main_loop_timing(mode,value){Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){setTimeout(Browser.mainLoop.runner,value)};Browser.mainLoop.method="timeout"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method="rAF"}else if(mode==2){if(!window["setImmediate"]){var setImmediates=[];var emscriptenMainLoopMessageId="__emcc";function Browser_setImmediate_messageHandler(event){if(event.source===window&&event.data===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}}window.addEventListener("message",Browser_setImmediate_messageHandler,true);window["setImmediate"]=function Browser_emulated_setImmediate(func){setImmediates.push(func);window.postMessage(emscriptenMainLoopMessageId,"*")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){window["setImmediate"](Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop,arg,noSetTiming){Module["noExitRuntime"]=true;assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");Browser.mainLoop.func=func;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;Browser.mainLoop.runner=function Browser_mainLoop_runner(){if(ABORT)return;if(Browser.mainLoop.queue.length>0){var start=Date.now();var blocker=Browser.mainLoop.queue.shift();blocker.func(blocker.arg);if(Browser.mainLoop.remainingBlockers){var remaining=Browser.mainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){Browser.mainLoop.remainingBlockers=next}else{next=next+.5;Browser.mainLoop.remainingBlockers=(8*remaining+next)/9}}console.log('main loop blocker "'+blocker.name+'" took '+(Date.now()-start)+" ms");Browser.mainLoop.updateStatus();if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;setTimeout(Browser.mainLoop.runner,0);return}if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0;if(Browser.mainLoop.timingMode==1&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}if(Browser.mainLoop.method==="timeout"&&Module.ctx){Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!");Browser.mainLoop.method=""}Browser.mainLoop.runIter((function(){if(typeof arg!=="undefined"){Runtime.dynCall("vi",func,[arg])}else{Runtime.dynCall("v",func)}}));if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;if(typeof SDL==="object"&&SDL.audio&&SDL.audio.queueNewAudioData)SDL.audio.queueNewAudioData();Browser.mainLoop.scheduler()};if(!noSetTiming){if(fps&&fps>0)_emscripten_set_main_loop_timing(0,1e3/fps);else _emscripten_set_main_loop_timing(1,1);Browser.mainLoop.scheduler()}if(simulateInfiniteLoop){throw"SimulateInfiniteLoop"}}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:(function(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++}),resume:(function(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;_emscripten_set_main_loop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()}),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}}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"]=[];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}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){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);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;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);var audio=new Audio;audio.addEventListener("canplaythrough",(function(){finish(audio)}),false);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&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src="data:audio/x-"+name.substr(-3)+";base64,"+encode64(byteArray);finish(audio)};audio.src=url;Browser.safeSetTimeout((function(){finish(audio)}),1e4)}else{return fail()}};Module["preloadPlugins"].push(audioPlugin);var canvas=Module["canvas"];function pointerLockChange(){Browser.pointerLock=document["pointerLockElement"]===canvas||document["mozPointerLockElement"]===canvas||document["webkitPointerLockElement"]===canvas||document["msPointerLockElement"]===canvas}if(canvas){canvas.requestPointerLock=canvas["requestPointerLock"]||canvas["mozRequestPointerLock"]||canvas["webkitRequestPointerLock"]||canvas["msRequestPointerLock"]||(function(){});canvas.exitPointerLock=document["exitPointerLock"]||document["mozExitPointerLock"]||document["webkitExitPointerLock"]||document["msExitPointerLock"]||(function(){});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&&canvas==Module.canvas)return Module.ctx;var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}canvas.style.backgroundColor="black"}else{ctx=canvas.getContext("2d")}if(!ctx)return null;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)GL.makeContextCurrent(contextHandle);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,vrDevice){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;Browser.vrDevice=vrDevice;if(typeof Browser.lockPointer==="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas==="undefined")Browser.resizeCanvas=false;if(typeof Browser.vrDevice==="undefined")Browser.vrDevice=null;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{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)}var canvasContainer=document.createElement("div");canvas.parentNode.insertBefore(canvasContainer,canvas);canvasContainer.appendChild(canvas);canvasContainer.requestFullScreen=canvasContainer["requestFullScreen"]||canvasContainer["mozRequestFullScreen"]||canvasContainer["msRequestFullscreen"]||(canvasContainer["webkitRequestFullScreen"]?(function(){canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"])}):null);if(vrDevice){canvasContainer.requestFullScreen({vrDisplay:vrDevice})}else{canvasContainer.requestFullScreen()}}),nextRAF:0,fakeRequestAnimationFrame:(function(func){var now=Date.now();if(Browser.nextRAF===0){Browser.nextRAF=now+1e3/60}else{while(now+2>=Browser.nextRAF){Browser.nextRAF+=1e3/60}}var delay=Math.max(Browser.nextRAF-now,0);setTimeout(func,delay)}),requestAnimationFrame:function requestAnimationFrame(func){if(typeof window==="undefined"){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)})}),allowAsyncCallbacks:true,queuedAsyncCallbacks:[],pauseAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=false}),resumeAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=true;if(Browser.queuedAsyncCallbacks.length>0){var callbacks=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[];callbacks.forEach((function(func){func()}))}}),safeRequestAnimationFrame:(function(func){return Browser.requestAnimationFrame((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}))}),safeSetTimeout:(function(func,timeout){Module["noExitRuntime"]=true;return setTimeout((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}),timeout)}),safeSetInterval:(function(func,timeout){Module["noExitRuntime"]=true;return setInterval((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){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 delta}),mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:(function(event){if(Browser.pointerLock){if(event.type!="mousemove"&&"mozMovementX"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}if(typeof SDL!="undefined"){Browser.mouseX=SDL.mouseX+Browser.mouseMovementX;Browser.mouseY=SDL.mouseY+Browser.mouseMovementY}else{Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}}else{var rect=Module["canvas"].getBoundingClientRect();var cw=Module["canvas"].width;var ch=Module["canvas"].height;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}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"){var last=Browser.touches[touch.identifier];if(!last)last=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}var x=event.pageX-(scrollX+rect.left);var y=event.pageY-(scrollY+rect.top);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}}),asyncLoad:(function(url,onload,onerror,noRunDep){Module["readAsync"](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(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags|8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),setWindowedCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags&~8388608;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")}}}}),wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle:(function(){var handle=Browser.nextWgetRequestHandle;Browser.nextWgetRequestHandle++;return handle})};function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}function _pthread_self(){return 0}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;assert(offset_high===0);FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21506:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((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;Module["FS_unlink"]=FS.unlink;__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}Module["requestFullScreen"]=function Module_requestFullScreen(lockPointer,resizeCanvas,vrDevice){Browser.requestFullScreen(lockPointer,resizeCanvas,vrDevice)};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()};Module["createContext"]=function Module_createContext(canvas,useWebGL,setInModule,webGLContextAttributes){return Browser.createContext(canvas,useWebGL,setInModule,webGLContextAttributes)};STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);staticSealed=true;STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX);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);function invoke_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){try{return Module["dynCall_iiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}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_viiiii(index,a1,a2,a3,a4,a5){try{Module["dynCall_viiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){try{return Module["dynCall_iiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9)}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_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_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)}}Module.asmGlobalArg={"Math":Math,"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Uint32Array":Uint32Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,"Infinity":Infinity};Module.asmLibraryArg={"abort":abort,"assert":assert,"invoke_iiiiiiii":invoke_iiiiiiii,"invoke_iiii":invoke_iiii,"invoke_viiiii":invoke_viiiii,"invoke_iiiiiiiiii":invoke_iiiiiiiiii,"invoke_vii":invoke_vii,"invoke_iiiiiii":invoke_iiiiiii,"invoke_ii":invoke_ii,"invoke_viii":invoke_viii,"invoke_vi":invoke_vi,"invoke_iiiii":invoke_iiiii,"invoke_viiiiii":invoke_viiiiii,"invoke_iii":invoke_iii,"invoke_iiiiii":invoke_iiiiii,"invoke_viiii":invoke_viiii,"_pthread_cleanup_pop":_pthread_cleanup_pop,"___syscall221":___syscall221,"_longjmp":_longjmp,"___lock":___lock,"_time":_time,"_emscripten_set_main_loop":_emscripten_set_main_loop,"_pthread_self":_pthread_self,"_abort":_abort,"_emscripten_set_main_loop_timing":_emscripten_set_main_loop_timing,"___syscall6":___syscall6,"_sbrk":_sbrk,"___syscall5":___syscall5,"_pthread_cleanup_push":_pthread_cleanup_push,"_emscripten_memcpy_big":_emscripten_memcpy_big,"___syscall54":___syscall54,"___unlock":___unlock,"___syscall140":___syscall140,"_sysconf":_sysconf,"___syscall145":___syscall145,"___syscall146":___syscall146,"___setErrNo":___setErrNo,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"cttz_i8":cttz_i8};// EMSCRIPTEN_START_ASM
var asm=(function(global,env,buffer) {
"use asm";var a=new global.Int8Array(buffer);var b=new global.Int16Array(buffer);var c=new global.Int32Array(buffer);var
d=new global.Uint8Array(buffer);var e=new global.Uint16Array(buffer);var f=new global.Uint32Array(buffer);var g=new global.Float32Array
(buffer);var h=new global.Float64Array(buffer);var i=env.STACKTOP|0;var j=env.STACK_MAX|0;var k=env.tempDoublePtr|0;var l=env.ABORT
|0;var m=env.cttz_i8|0;var n=0;var o=0;var p=0;var q=0;var r=global.NaN,s=global.Infinity;var t=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,
B=0.0;var C=0;var D=0;var E=0;var F=0;var G=0;var H=0;var I=0;var J=0;var K=0;var L=0;var M=global.Math.floor;var N=global.Math.
abs;var O=global.Math.sqrt;var P=global.Math.pow;var Q=global.Math.cos;var R=global.Math.sin;var S=global.Math.tan;var T=global.
Math.acos;var U=global.Math.asin;var V=global.Math.atan;var W=global.Math.atan2;var X=global.Math.exp;var Y=global.Math.log;var
Z=global.Math.ceil;var _=global.Math.imul;var $=global.Math.min;var aa=global.Math.clz32;var ba=env.abort;var ca=env.assert;var
da=env.invoke_iiiiiiii;var ea=env.invoke_iiii;var fa=env.invoke_viiiii;var ga=env.invoke_iiiiiiiiii;var ha=env.invoke_vii;var ia
=env.invoke_iiiiiii;var ja=env.invoke_ii;var ka=env.invoke_viii;var la=env.invoke_vi;var ma=env.invoke_iiiii;var na=env.invoke_viiiiii
;var oa=env.invoke_iii;var pa=env.invoke_iiiiii;var qa=env.invoke_viiii;var ra=env._pthread_cleanup_pop;var sa=env.___syscall221
;var ta=env._longjmp;var ua=env.___lock;var va=env._time;var wa=env._emscripten_set_main_loop;var xa=env._pthread_self;var ya=env
._abort;var za=env._emscripten_set_main_loop_timing;var Aa=env.___syscall6;var Ba=env._sbrk;var Ca=env.___syscall5;var Da=env._pthread_cleanup_push
;var Ea=env._emscripten_memcpy_big;var Fa=env.___syscall54;var Ga=env.___unlock;var Ha=env.___syscall140;var Ia=env._sysconf;var
Ja=env.___syscall145;var Ka=env.___syscall146;var La=env.___setErrNo;var Ma=0.0;
// EMSCRIPTEN_START_FUNCS
function $a(a){a=a|0;var b=0;b=i;i=i+a|0;i=i+15&-16;return b|0}function ab(){return i|0}function bb(a){a=a|0;i=a}function cb
(a,b){a=a|0;b=b|0;i=a;j=b}function db(a,b){a=a|0;b=b|0;if(!n){n=a;o=b}}function eb(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]}function
fb(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 gb(a){a=a|0;C=a}function hb(){return C|0}function
ib(a){a=a|0;c[18364]=(a|0)!=0&1;return 0}function jb(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+32|0;h=j+8|0
;f=j;e=c[18367]|0;if((e|0)!=0?(As(e,b)|0)==0:0){e=73468;f=2;g=4}else g=3;do if((g|0)==3){e=c[18368]|0;if(e|0?(As(e,b)|0)==0:0){e
=73472;f=3;g=4;break}e=c[18369]|0;if(e|0?(As(e,b)|0)==0:0){e=73476;f=4;g=4;break}e=c[18370]|0;if(e|0?(As(e,b)|0)==0:0){e=73480;f
=5;g=4;break}e=c[18371]|0;if(e|0?(As(e,b)|0)==0:0){e=73484;f=6;g=4;break}e=c[18372]|0;if(e|0?(As(e,b)|0)==0:0){e=73488;f=7;g=4;break
}e=c[18373]|0;if(e|0?(As(e,b)|0)==0:0){e=73492;f=8;g=4;break}e=c[18374]|0;if(e|0?(As(e,b)|0)==0:0){e=73496;f=9;g=4;break}if(c[18367
]|0)if(c[18368]|0)if(c[18369]|0)if(c[18370]|0)if(c[18371]|0)if(c[18372]|0)if(c[18373]|0)if(!(c[18374]|0))f=9;else{c[f>>
;2]=a;c[f+4>>2]=b;ss(10198,f)|0;h=-1;i=j;return h|0}else f=8;else f=7;else f=6;else f=5;else f=4;else f=3;else f=2}while
(0);if((g|0)==4){g=73500+(f<<2)|0;vd(c[g>>2]|0)|0;Gs(c[e>>2]|0);c[e>>2]=0;c[g>>
;2]=0}e=Ec(c[18385]|0,a,0,73500+(f<<2)|0)|0;if(!e){c[73460+(f<<2)>>2]=ws(b)|0;c[8+(f<<2)
x3e;>2]=d;h=0;i=j;return h|0}else{c[h>>2]=a;c[h+4>>2]=b;c[h+8>>2]=e;ss(10233,h)|0;h=e;i=j;return
h|0}return 0}function kb(a){a=a|0;var b=0,d=0;b=c[18365]|0;if(b)if(As(a,b)|0){b=c[18366]|0;if(((b|0)!=0?(As(a,b)|0)!=0:0)?(d=c[
18367]|0,(d|0)!=0):0)if(As(a,d)|0){b=c[18368]|0;if(b)if(As(a,b)|0){b=c[18369]|0;if(b)if(As(a,b)|0){b=c[18370]|0;if(b)if(As(a,b)|
0){b=c[18371]|0;if(b)if(As(a,b)|0){b=c[18372]|0;if(b)if(As(a,b)|0){b=c[18373]|0;if(b)if(As(a,b)|0){b=c[18374]|0;if(!b)b=1;else{a
=(As(a,b)|0)==0;return (a?9:1)|0}}else b=8;else b=1}else b=7;else b=1}else b=6;else b=1}else b=5;else b=1}else b=4;else b=1}else
b=3;else b=1}else b=2;else b=1}else b=0;else b=1;return b|0}function lb(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;p=i;i=i+16|0;k=p+8|0;j=p;if(!(b>>>0<=9?(c[73460+(b<<2)>>2]|0)!=0:0))b=1;h=
c[73500+(b<<2)>>2]|0;b=c[8+(b<<2)>>2]|0;f=(_(f<<6,b)|0)/100|0;b=(_(g<<
;6,b)|0)/100|0;if((e+-65|0)>>>0<26&(h|0)==(c[18376]|0))b=(b*108|0)/100|0;b=Hd(h,f,b,72,0)|0;if(b|0){c[j
>>2]=b;ss(10260,j)|0;o=0;i=p;return o|0}c[18386]=c[h+84>>2];if((h|0)==(c[18375]|0)|(h|0)==(c[18376]|0))if((e
|0)==126)e=732;else e=(e|0)==94?710:e;if(!(c[18364]|0))e=Cc(h,e,4)|0;else e=Cc(h,e,131076)|0;if(e|0){c[k>>2]=e;ss(10285
,k)|0;o=0;i=p;return o|0}b=c[18386]|0;if(!(c[18364]|0)){o=c[b+88>>2]|0;i=p;return o|0}e=c[18387]|0;if(e|0)Gs(e);m=b+80
|0;f=c[m>>2]|0;n=b+76|0;g=c[n>>2]|0;e=Fs(_(g,f)|0)|0;c[18387]=e;if(!e){o=0;i=p;return o|0}if((g|0)<=0){
o=e;i=p;return o|0}o=b+84|0;l=b+88|0;b=e;k=0;do{j=_(c[o>>2]|0,k)|0;j=(c[l>>2]|0)+j|0;if((f|0)>0){h=0;while
(1){g=b+1|0;a[b>>0]=(((d[j+(h>>3)>>0]|0)&1<<(h&7^7)|0)!=0)<<31>
x3e;31;h=h+1|0;f=c[m>>2]|0;if((h|0)>=(f|0)){b=g;break}else b=g}g=c[n>>2]|0}k=k+1|0}while((k|0)<(g|
0));i=p;return e|0}function mb(){return c[(c[18386]|0)+100>>2]|0}function nb(){return c[(c[18386]|0)+104>>2]|
0}function ob(){return c[(c[18386]|0)+80>>2]|0}function pb(){return c[(c[18386]|0)+76>>2]|0}function qb(){return
c[(c[18386]|0)+84>>2]|0}function rb(){return c[(c[18386]|0)+64>>2]>>6|0}function sb(){var a=0,b=0
,d=0,e=0,f=0;f=i;i=i+32|0;e=f+16|0;d=f+8|0;b=f;a=ub(73540)|0;if(a|0){c[b>>2]=a;ss(10306,b)|0;e=1;i=f;return e|0}a=Ec(c
[18385]|0,10322,0,73500)|0;if(a|0){c[d>>2]=a;ss(10331,d)|0;e=1;i=f;return e|0}a=Ec(c[18385]|0,10358,0,73504)|0;if(!a){
c[18365]=ws(10394)|0;c[18366]=ws(10400)|0;e=0;i=f;return e|0}else{c[e>>2]=a;ss(10367,e)|0;e=1;i=f;return e|0}return 0}
function tb(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;c[d>>2]=48;while(1){if(!(
c[c[d>>2]>>2]|0))break;c[e>>2]=Nd(c[b>>2]|0,c[c[d>>2]>>2]|0)|0;c[d
x3e;>2]=(c[d>>2]|0)+4}i=f;return}function ub(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;d=g+8|0;e=g+4
|0;f=g;c[d>>2]=a;c[f>>2]=tr()|0;if(!(c[f>>2]|0)){c[b>>2]=7;f=c[b>>2]|0;i=g;return
f|0}c[e>>2]=Wd(c[f>>2]|0,c[d>>2]|0)|0;if(c[e>>2]|0)xr(c[f>>2]|0);else tb(c[c[
d>>2]>>2]|0);c[b>>2]=c[e>>2];f=c[b>>2]|0;i=g;return f|0}function vb(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;
c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(!(c[g>>2]|0)){c[f>>2]=35;
e=c[f>>2]|0;i=n;return e|0}if((c[h>>2]|0)>>>0>=(c[(c[g>>2]|0)+16>>2]|
0)>>>0){c[f>>2]=16;e=c[f>>2]|0;i=n;return e|0}c[m>>2]=c[(c[(c[(c[g>>2]|0)+
96>>2]|0)+20>>2]|0)+92>>2];do if(c[m>>2]|0){if((c[j>>2]&3|0)==0?(c[j>
;>2]>>16&15|0)!=1:0)break;c[l>>2]=Za[c[m>>2]&31](c[g>>2]|0,c[h>>
;2]|0,1,c[j>>2]|0,c[k>>2]|0)|0;if(!(c[l>>2]|0)){c[f>>2]=wb(c[g>>2]|0,c[k>
x3e;2]|0,1,c[j>>2]|0)|0;e=c[f>>2]|0;i=n;return e|0}if((c[l>>2]|0)!=7){c[f>>2]=c[l>
x3e;2];e=c[f>>2]|0;i=n;return e|0}}while(0);c[f>>2]=Bb(c[g>>2]|0,c[h>>2]|0,1,c[j>
x3e;2]|0,c[k>>2]|0)|0;e=c[f>>2]|0;i=n;return e|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,m=0,n=0;n=i;i=i+32|0;g=n+24|0;f=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;c[f>>2]=a;c[h>>2]=
b;c[j>>2]=d;c[k>>2]=e;if(c[k>>2]&1|0){c[g>>2]=0;m=c[g>>2]|0;i=n;return m|
0}if(!(c[(c[f>>2]|0)+88>>2]|0)){c[g>>2]=36;m=c[g>>2]|0;i=n;return m|0}f=(c[(c[f>>
;2]|0)+88>>2]|0)+12|0;if(c[k>>2]&16|0)c[m>>2]=c[f+8>>2];else c[m>>2]=c[f+
4>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[j>>2]|0)>>
x3e;0)break;k=xb(c[(c[h>>2]|0)+(c[l>>2]<<2)>>2]|0,c[m>>2]|0,64)|0;c[(c[h>
x3e;2]|0)+(c[l>>2]<<2)>>2]=k;c[l>>2]=(c[l>>2]|0)+1}c[g>>2]=0;m=c[g
x3e;>2]|0;i=n;return m|0}function xb(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;m=i;i=i+48|0;e=m+32|0;f=m
+28|0;g=m+24|0;h=m+20|0;j=m+16|0;k=m+8|0;l=m;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(c[f>>2]|0?(
c[g>>2]|0)!=(c[h>>2]|0):0){c[j>>2]=c[f>>2];d=c[f>>2]|0;c[f>>2]=(c[f
x3e;>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[g>>2];d=c[g>>2]|0;c[g>>2]=(c[
g>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[h>>2];d=c[h>>2]|0;c[h>>2]=(
c[h>>2]|0)<0?0-d|0:d;do if(!((c[f>>2]|0)<=46340&(c[g>>2]|0)<=46340&(c[h
x3e;>2]|0)<=176095&(c[h>>2]|0)>0))if((c[h>>2]|0)>0){yb(c[f>>2]|0,c[g>
;>2]|0,k);c[l+4>>2]=0;c[l>>2]=c[h>>2]>>1;zb(k,l,k);c[f>>2]=Ab(c[k+4>
x3e;2]|0,c[k>>2]|0,c[h>>2]|0)|0;break}else{c[f>>2]=2147483647;break}else{l=_(c[f>>2]|0,c
[g>>2]|0)|0;c[f>>2]=(l+(c[h>>2]>>1)|0)/(c[h>>2]|0)|0}while(0);l=c[f>>
;2]|0;c[e>>2]=(c[j>>2]|0)<0?0-l|0:l;l=c[e>>2]|0;i=m;return l|0}c[e>>2]=c[f>>
;2];l=c[e>>2]|0;i=m;return l|0}function yb(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;e=i;i=i+48|0;q=e+40|0;p=e+36|0;f=e+32|0;o=e+28|0;m=e+24|0;n=e+20|0;l=e+16|0;h=e+12|0;g=e+8|0;j=e+4|0;k=e;c[q>>2]=a;c
[p>>2]=b;c[f>>2]=d;c[o>>2]=c[q>>2]&65535;c[m>>2]=(c[q>>2]|0)>
;>>16;c[n>>2]=c[p>>2]&65535;c[l>>2]=(c[p>>2]|0)>>>16;c[h
x3e;>2]=_(c[o>>2]|0,c[n>>2]|0)|0;c[j>>2]=_(c[o>>2]|0,c[l>>2]|0)|0;c[k>
;>2]=_(c[n>>2]|0,c[m>>2]|0)|0;c[g>>2]=_(c[m>>2]|0,c[l>>2]|0)|0;c[j>
x3e;2]=(c[j>>2]|0)+(c[k>>2]|0);c[g>>2]=(c[g>>2]|0)+(((c[j>>2]|0)>>
x3e;0<(c[k>>2]|0)>>>0&1)<<16);c[g>>2]=(c[g>>2]|0)+((c[j>
x3e;2]|0)>>>16);c[j>>2]=c[j>>2]<<16;c[h>>2]=(c[h>>2]|0)+(c[j>
;>2]|0);c[g>>2]=(c[g>>2]|0)+((c[h>>2]|0)>>>0<(c[j>>2]|0)>
x3e;>0&1);c[c[f>>2]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2
];i=e;return}function zb(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+12|0;f=e+8|0;h=e+4|0;g=e
;c[j>>2]=a;c[k>>2]=b;c[f>>2]=d;c[h>>2]=(c[c[j>>2]>>2]|0)+(c[c[k>
;>2]>>2]|0);c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[k>>2]|0)+4>>2
]|0)+((c[h>>2]|0)>>>0<(c[c[j>>2]>>2]|0)>>>0&1);c[c[f>
x3e;2]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2];i=e;return}function Ab(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+32|0;e=l+24|0;m=l+20|0;f=l+16|0;g=l+12|0;k=l+8|0;j=l+4|0;h=l;c[m>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=0;c[k>>2]=c[m>>2];if((c[k>>2
]|0)>>>0>=(c[g>>2]|0)>>>0){c[e>>2]=2147483647;m=c[e>>2]|0;i=l;return
m|0}c[h>>2]=32;do{c[k>>2]=c[k>>2]<<1;c[j>>2]=c[j>>2]<<1;c
[k>>2]=c[k>>2]|(c[f>>2]|0)>>>31;if((c[k>>2]|0)>>>0>=(
c[g>>2]|0)>>>0){c[k>>2]=(c[k>>2]|0)-(c[g>>2]|0);c[j>>2]=c[j>
;>2]|1}c[f>>2]=c[f>>2]<<1;m=(c[h>>2]|0)+-1|0;c[h>>2]=m}while((m|0)!=0);c[
e>>2]=c[j>>2];m=c[e>>2]|0;i=l;return m|0}function Bb(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;t=i;i=i+48|0;l=t+40|0;m=t+36|0;n=t+32|0;o=t+28|0;p=t+24|0;q=t+20|0;h=t+16|0;
j=t+12|0;g=t+8|0;s=t+4|0;r=t;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f
;c[r>>2]=0;if(!(c[m>>2]|0)){c[l>>2]=35;s=c[l>>2]|0;i=t;return s|0}c[j>>2]=c[(c
[m>>2]|0)+16>>2];c[g>>2]=(c[n>>2]|0)+(c[o>>2]|0);if(((c[n>>2]|0)>
;>>0<(c[j>>2]|0)>>>0?(c[g>>2]|0)>>>0>=(c[n>>2]|0
)>>>0:0)?(c[g>>2]|0)>>>0<=(c[j>>2]|0)>>>0:0){if(!(c[o>
;>2]|0)){c[l>>2]=0;s=c[l>>2]|0;i=t;return s|0}c[h>>2]=c[(c[(c[(c[m>>2]|0)+96>
x3e;2]|0)+20>>2]|0)+92>>2];do if(c[h>>2]|0){if((c[p>>2]&3|0)==0?(c[p>>2]
x3e;>16&15|0)!=1:0){k=15;break}c[r>>2]=Za[c[h>>2]&31](c[m>>2]|0,c[n>>2]|0
,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;if(c[r>>2]|0)if((c[r>>2]|0)!=7){c[l>>
;2]=c[r>>2];s=c[l>>2]|0;i=t;return s|0}else k=15}else k=15;while(0);if((k|0)==15){c[r>>2]=0;if(c[p
>>2]&536870912|0){c[l>>2]=7;s=c[l>>2]|0;i=t;return s|0}c[p>>2]=c[p>>2]|256
;c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c
[r>>2]=Cb(c[m>>2]|0,(c[n>>2]|0)+(c[s>>2]|0)|0,c[p>>2]|0)|0;if(c[r>>2
]|0)break;d=(c[(c[m>>2]|0)+84>>2]|0)+64|0;if(c[p>>2]&16|0)d=c[d+4>>2]|0;else d=c[d
x3e;>2]|0;c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]=d;c[s>>2]=(c[s>>2]|0)+
1}if(c[r>>2]|0){c[l>>2]=c[r>>2];s=c[l>>2]|0;i=t;return s|0}}c[l>>2]=wb(c[m>
;>2]|0,c[q>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;s=c[l>>2]|0;i=t;return s|0}c[l>>2
]=16;s=c[l>>2]|0;i=t;return s|0}function Cb(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;A=i;i=i+80|0;r=A+64|0;s=A+60|0;g=A+56|0;t=A+52|0;u=A+48|0;j=A+44|0;z=A+40|0;n=A+36|0;h=A+68|0
;k=A+32|0;o=A+28|0;l=A+24|0;m=A+20|0;p=A+16|0;w=A+12|0;v=A+8|0;y=A+4|0;x=A;c[s>>2]=b;c[g>>2]=e;c[t>>
;2]=f;a[h>>0]=0;if((c[s>>2]|0?c[(c[s>>2]|0)+88>>2]|0:0)?c[(c[s>>2]|0)+84>
x3e;2]|0:0){c[z>>2]=c[(c[s>>2]|0)+84>>2];Db(c[z>>2]|0);c[j>>2]=c[(c[s>>
;2]|0)+96>>2];c[n>>2]=c[(c[j>>2]|0)+4>>2];c[k>>2]=c[(c[n>>2]|0)+168
x3e;>2];if(c[t>>2]&1024|0)c[t>>2]=c[t>>2]|2049;if(c[t>>2]&1|0){c[t>
x3e;2]=c[t>>2]|10;c[t>>2]=c[t>>2]&-5}do if(((((c[k>>2]|0?(c[t>>2]&2|
0)==0:0)?(c[t>>2]&32768|0)==0:0)?c[c[c[j>>2]>>2]>>2]&256|0:0)?(c[c[c[j>
x3e;2]>>2]>>2]&512|0)==0:0)?(c[(c[s>>2]|0)+8>>2]&8192|0)==0:0){if(!((c[(c[(c[s
>>2]|0)+128>>2]|0)+4+8>>2]|0)==0?(c[(c[(c[s>>2]|0)+128>>2]|0)+4>>2]|
0)!=0:0)){if(c[(c[(c[s>>2]|0)+128>>2]|0)+4>>2]|0)break;if(!(c[(c[(c[s>>2]|0)+128>
x3e;2]|0)+4+8>>2]|0))break}if((c[t>>2]&32|0)==0?c[c[c[j>>2]>>2]>>2]&
1024|0:0){c[o>>2]=c[t>>2]>>16&15;if((c[o>>2]|0)!=1?(d[(c[(c[s>>2]|0)+128
x3e;>2]|0)+56>>0]|0)==0:0)break;a[h>>0]=1;break}a[h>>0]=1}while(0);do if(!(a[h>>0]|
0)){c[u>>2]=Wa[c[(c[(c[j>>2]|0)+20>>2]|0)+80>>2]&31](c[z>>2]|0,c[(c[s>
;>2]|0)+88>>2]|0,c[g>>2]|0,c[t>>2]|0)|0;if(!(c[u>>2]|0))if((c[(c[z>>2]|0)+
72>>2]|0)==1869968492){c[u>>2]=Gb((c[z>>2]|0)+108|0)|0;if(!(c[u>>2]|0))if(c[t>>
;2]&2|0)q=36;else{Hb(c[z>>2]|0,c[t>>2]&16);q=36}}else q=36}else{if(((c[(c[s>>2]|0)+8>
;>2]&2|0?(c[t>>2]&8|0)==0:0)?(c[u>>2]=Wa[c[(c[(c[j>>2]|0)+20>>2]|0)+80>
;>2]&31](c[z>>2]|0,c[(c[s>>2]|0)+88>>2]|0,c[g>>2]|0,c[t>>2]|16384)|0
,(c[u>>2]|0)==0):0)?(c[(c[z>>2]|0)+72>>2]|0)==1651078259:0){q=36;break}c[m>>2]=c[(c[s>
;>2]|0)+128>>2];c[p>>2]=c[(c[m>>2]|0)+28>>2];c[(c[m>>2]|0)+28>>
2]=0;c[l>>2]=c[(c[c[k>>2]>>2]|0)+20>>2];c[u>>2]=Za[c[(c[l>>2]|0)+12
x3e;>2]&31](c[k>>2]|0,c[z>>2]|0,c[(c[s>>2]|0)+88>>2]|0,c[g>>2]|0,c[t
>>2]|0)|0;c[(c[m>>2]|0)+28>>2]=c[p>>2];q=36}while(0);if((q|0)==36){g=c[z>>2]|0
;if(c[t>>2]&16|0){c[g+64>>2]=0;c[(c[z>>2]|0)+64+4>>2]=c[(c[z>>2]|0)+24+28
>>2]}else{c[(c[z>>2]|0)+64>>2]=c[g+24+16>>2];c[(c[z>>2]|0)+64+4>>2]=
0}if((c[t>>2]&8192|0)==0?c[(c[s>>2]|0)+8>>2]&1|0:0){c[w>>2]=(c[(c[s>>
;2]|0)+88>>2]|0)+12;q=xb(c[(c[z>>2]|0)+56>>2]|0,c[(c[w>>2]|0)+4>>2]|0,64)|0;c[(
c[z>>2]|0)+56>>2]=q;w=xb(c[(c[z>>2]|0)+60>>2]|0,c[(c[w>>2]|0)+8>>2]|
0,64)|0;c[(c[z>>2]|0)+60>>2]=w}if((c[t>>2]&2048|0)==0?(c[v>>2]=c[(c[s>>2]|
0)+128>>2],c[(c[v>>2]|0)+28>>2]|0):0){c[y>>2]=Ib(c[z>>2]|0)|0;if(!(c[y>
x3e;2]|0)){if((c[(c[z>>2]|0)+72>>2]|0)==1869968492){if((c[v>>2]|0)+4|0)Kb((c[z>>2]|0)+108
|0,(c[v>>2]|0)+4|0);if((c[v>>2]|0)+20|0)Nb((c[z>>2]|0)+108|0,c[(c[v>>2]|0)+20>>
;2]|0,c[(c[v>>2]|0)+20+4>>2]|0)}}else c[u>>2]=Wa[c[(c[(c[y>>2]|0)+20>>2]|0)+44
>>2]&31](c[y>>2]|0,c[z>>2]|0,(c[v>>2]|0)+4|0,(c[v>>2]|0)+20|0)|0;Lb((c[z
x3e;>2]|0)+64|0,(c[v>>2]|0)+4|0)}if((((c[u>>2]|0)==0?(c[(c[z>>2]|0)+72>>2]|0)!=1651078259
:0)?(c[(c[z>>2]|0)+72>>2]|0)!=1668246896:0)?c[t>>2]&4|0:0){c[x>>2]=c[t>>2
]>>16&15;if((c[x>>2]|0)==0?c[t>>2]&4096|0:0)c[x>>2]=2;c[u>>2]=Ob(c[z
>>2]|0,c[x>>2]|0)|0}}c[r>>2]=c[u>>2];z=c[r>>2]|0;i=A;return z|0}c[r>>
;2]=35;z=c[r>>2]|0;i=A;return z|0}function Db(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;Eb(c[e>
x3e;2]|0);b=(c[e>>2]|0)+24|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[
b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;c[b+28>>2]=0;b=(c[e>>2]|0)+108|0;c[b>
;>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[(c[e>>2]|0)+76
+4>>2]=0;c[(c[e>>2]|0)+76>>2]=0;c[(c[e>>2]|0)+76+8>>2]=0;a[(c[e>>2]|
0)+76+18>>0]=0;c[(c[e>>2]|0)+100>>2]=0;c[(c[e>>2]|0)+104>>2]=0;c[(c[e>>
;2]|0)+128>>2]=0;c[(c[e>>2]|0)+132>>2]=0;c[(c[e>>2]|0)+136>>2]=0;c[(c[e>
x3e;2]|0)+140>>2]=0;c[(c[e>>2]|0)+152>>2]=0;c[(c[e>>2]|0)+72>>2]=0;c[(c[e>
;>2]|0)+56>>2]=0;c[(c[e>>2]|0)+60>>2]=0;c[(c[e>>2]|0)+144>>2]=0;c[(c[e>
;>2]|0)+148>>2]=0;i=d;return}function Eb(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if
(c[(c[b>>2]|0)+156>>2]|0?c[(c[(c[b>>2]|0)+156>>2]|0)+4>>2]&1|0:0){c[d>
;>2]=c[(c[(c[b>>2]|0)+4>>2]|0)+100>>2];Fb(c[d>>2]|0,c[(c[b>>2]|0)+76+12
x3e;>2]|0);c[(c[b>>2]|0)+76+12>>2]=0;a=(c[(c[b>>2]|0)+156>>2]|0)+4|0;c[a>>
;2]=c[a>>2]&-2;i=e;return}c[(c[b>>2]|0)+76+12>>2]=0;i=e;return}function Fb(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=f;return}Ra[c[(c[d>
;>2]|0)+8>>2]&7](c[d>>2]|0,c[e>>2]|0);i=f;return}function Gb(a){a=a|0;var d=0,e=0,f=0,g=
0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;d=l+24|0;e=l+20|0;k=l+16|0;j=l+12|0;g=l+8|0;f=l+4|0;h=l;c[e>>2]=a;a:do if(c[e>>
;2]|0){c[k>>2]=b[(c[e>>2]|0)+2>>1];c[j>>2]=b[c[e>>2]>>1];if((c[k>
;>2]|0)==0&(c[j>>2]|0)==0){c[d>>2]=0;a=c[d>>2]|0;i=l;return a|0}if(!((c[k>>2]|
0)<=0|(c[j>>2]|0)<=0)){c[f>>2]=-1;c[g>>2]=-1;c[h>>2]=0;while(1){if((c[h>
x3e;2]|0)>=(c[j>>2]|0))break;c[f>>2]=b[(c[(c[e>>2]|0)+12>>2]|0)+(c[h>>2]
x3c;<1)>>1];if((c[f>>2]|0)<=(c[g>>2]|0))break a;if((c[f>>2]|0)>=(c[k>
;>2]|0))break a;c[g>>2]=c[f>>2];c[h>>2]=(c[h>>2]|0)+1}if((c[f>>2]|0)==((c
[k>>2]|0)-1|0)){c[d>>2]=0;a=c[d>>2]|0;i=l;return a|0}}}while(0);c[d>>2]=6;a=c[d>>
;2]|0;i=l;return a|0}function Hb(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+32|0;k=h+12|0;j=h+16|0;f=h+8|0;g=h+4|0;e=h
;c[k>>2]=b;a[j>>0]=d;c[f>>2]=(c[k>>2]|0)+24;b=c[f>>2]|0;if(a[j>>0]|0
){c[(c[f>>2]|0)+8>>2]=c[b+8>>2]&-64;c[(c[f>>2]|0)+12>>2]=(c[(c[f>>
;2]|0)+12>>2]|0)+63&-64;c[g>>2]=(c[(c[f>>2]|0)+20>>2]|0)+(c[c[f>>2]>
x3e;2]|0)+63&-64;c[e>>2]=(c[(c[f>>2]|0)+24>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0)+
63&-64;c[(c[f>>2]|0)+20>>2]=c[(c[f>>2]|0)+20>>2]&-64;c[(c[f>>2]|0)+24
>>2]=c[(c[f>>2]|0)+24>>2]&-64;c[c[f>>2]>>2]=(c[g>>2]|0)-(c[(c[f
>>2]|0)+20>>2]|0);c[(c[f>>2]|0)+4>>2]=(c[e>>2]|0)-(c[(c[f>>2]|0)+24
x3e;>2]|0);k=c[f>>2]|0;k=k+16|0;k=c[k>>2]|0;k=k+32|0;k=k&-64;j=c[f>>2]|0;j=j+16|0;c[j>
;>2]=k;j=c[f>>2]|0;j=j+28|0;j=c[j>>2]|0;j=j+32|0;j=j&-64;k=c[f>>2]|0;k=k+28|0;c[k>
x3e;2]=j;i=h;return}else{c[(c[f>>2]|0)+20>>2]=c[b+20>>2]&-64;c[(c[f>>2]|0)+24>
x3e;2]=c[(c[f>>2]|0)+24>>2]&-64;c[g>>2]=(c[(c[f>>2]|0)+8>>2]|0)+(c[c[f>
;>2]>>2]|0)+63&-64;c[e>>2]=(c[(c[f>>2]|0)+12>>2]|0)-(c[(c[f>>2]|0)+4
>>2]|0)&-64;c[(c[f>>2]|0)+8>>2]=c[(c[f>>2]|0)+8>>2]&-64;c[(c[f>
x3e;2]|0)+12>>2]=(c[(c[f>>2]|0)+12>>2]|0)+63&-64;c[c[f>>2]>>2]=(c[g>
x3e;2]|0)-(c[(c[f>>2]|0)+8>>2]|0);c[(c[f>>2]|0)+4>>2]=(c[(c[f>>2]|0)+12>
x3e;2]|0)-(c[e>>2]|0);k=c[f>>2]|0;k=k+16|0;k=c[k>>2]|0;k=k+32|0;k=k&-64;j=c[f>>2]|0
;j=j+16|0;c[j>>2]=k;j=c[f>>2]|0;j=j+28|0;j=c[j>>2]|0;j=j+32|0;j=j&-64;k=c[f>>2]|0;k
=k+28|0;c[k>>2]=j;i=h;return}}function Ib(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;b=f+12|0;g=f+8|0;d=f+4|0;e=f;c
[b>>2]=a;c[g>>2]=c[(c[b>>2]|0)+4>>2];c[d>>2]=c[(c[(c[g>>2]|0)+96>
;>2]|0)+4>>2];c[e>>2]=c[(c[d>>2]|0)+164>>2];if(c[e>>2]|0?(c[(c[e>>
;2]|0)+24>>2]|0)==(c[(c[b>>2]|0)+72>>2]|0):0){g=c[e>>2]|0;i=f;return g|0}c[e>>
2]=Jb(c[d>>2]|0,c[(c[b>>2]|0)+72>>2]|0,0)|0;g=c[e>>2]|0;i=f;return g|0}function Jb(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;m=i;i=i+32|0;e=m+20|0;f=m+16|0;g=m+12|0;h=m+8|0;k=m+4|0;j=m;c[e>>
;2]=a;c[f>>2]=b;c[g>>2]=d;c[k>>2]=0;if(!(c[e>>2]|0)){l=c[k>>2]|0;i=m;return l|
0}c[h>>2]=c[(c[e>>2]|0)+156>>2];if(c[g>>2]|0){if(c[c[g>>2]>>2]|0)c[h
>>2]=c[(c[c[g>>2]>>2]|0)+4>>2];c[c[g>>2]>>2]=0}while(1){if(!(c[h>
;>2]|0)){l=12;break}c[j>>2]=c[(c[h>>2]|0)+8>>2];if((c[(c[j>>2]|0)+24>>2]|
0)==(c[f>>2]|0))break;c[h>>2]=c[(c[h>>2]|0)+4>>2]}if((l|0)==12){l=c[k>>2]|0;i=
m;return l|0}if(c[g>>2]|0)c[c[g>>2]>>2]=c[h>>2];c[k>>2]=c[j>>2];l=c[
k>>2]|0;i=m;return l|0}function Kb(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;
c[e>>2]=a;c[f>>2]=d;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=j;return}c[h>>
2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=(c[h>>2]|0)+(b[(c[e>>2]|0)+2>>1]<
;<3);while(1){if((c[h>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;Lb(c[h>
x3e;2]|0,c[f>>2]|0);c[h>>2]=(c[h>>2]|0)+8}i=j;return}function Lb(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;if(!((c[d>>2]|0)!=0&(c[
e>>2]|0)!=0)){i=h;return}a=Mb(c[c[d>>2]>>2]|0,c[c[e>>2]>>2]|0)|0;c[f>>
;2]=a+(Mb(c[(c[d>>2]|0)+4>>2]|0,c[(c[e>>2]|0)+4>>2]|0)|0);a=Mb(c[c[d>>2]>
x3e;2]|0,c[(c[e>>2]|0)+8>>2]|0)|0;c[g>>2]=a+(Mb(c[(c[d>>2]|0)+4>>2]|0,c[(c[e
x3e;>2]|0)+12>>2]|0)|0);c[c[d>>2]>>2]=c[f>>2];c[(c[d>>2]|0)+4>>
2]=c[g>>2];i=h;return}function Mb(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;l=i;i=i+32|0;f=l+24|0;d=l+20|0;
e=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;g=l;c[d>>2]=a;c[e>>2]=b;a=c[d>>2]|0;if((c[d>>2]|0)==0|(
c[e>>2]|0)==65536){c[f>>2]=a;k=c[f>>2]|0;i=l;return k|0}c[h>>2]=a;a=c[d>>2]|0;
c[d>>2]=(c[d>>2]|0)<0?0-a|0:a;c[h>>2]=c[h>>2]^c[e>>2];a=c[e>>2]|
0;c[e>>2]=(c[e>>2]|0)<0?0-a|0:a;c[j>>2]=c[d>>2];c[k>>2]=c[e>>2];
a=c[j>>2]|0;if((c[j>>2]|0)>>>0<=2048&(c[k>>2]|0)>>>0<=
1048576)c[j>>2]=((_(a,c[k>>2]|0)|0)+32768|0)>>>16;else{c[g>>2]=a&65535;e=_((c[
j>>2]|0)>>>16,c[k>>2]|0)|0;e=e+(_(c[g>>2]|0,(c[k>>2]|0)>>>
16)|0)|0;c[j>>2]=e+(((_(c[g>>2]|0,c[k>>2]&65535)|0)+32768|0)>>>16)}k=c[j>
x3e;2]|0;c[f>>2]=(c[h>>2]|0)<0?0-k|0:k;k=c[f>>2]|0;i=l;return k|0}function Nb(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;m=i;i=i+32|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m+16|0;l=m;c[g>>2]=a;c[h>>2]=d
;c[j>>2]=f;if(!(c[g>>2]|0)){i=m;return}c[l>>2]=c[(c[g>>2]|0)+4>>2];b[k>
x3e;1]=0;while(1){if((e[k>>1]|0)>=(b[(c[g>>2]|0)+2>>1]|0))break;f=c[l>>2]|0;c[f>
;>2]=(c[f>>2]|0)+(c[h>>2]|0);f=(c[l>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+(c[j
x3e;>2]|0);c[l>>2]=(c[l>>2]|0)+8;b[k>>1]=(b[k>>1]|0)+1<<16>>16}
i=m;return}function Ob(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[
f>>2]=b;if(c[e>>2]|0?c[(c[e>>2]|0)+4>>2]|0:0){c[g>>2]=c[(c[(c[(c[e>>
2]|0)+4>>2]|0)+96>>2]|0)+4>>2];c[d>>2]=Pb(c[g>>2]|0,c[e>>2]|0,c[f>
;>2]|0)|0;a=c[d>>2]|0;i=h;return a|0}c[d>>2]=6;a=c[d>>2]|0;i=h;return a|0}function Pb(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;o=i;i=i+32|0;g=o+20|0;h=o+16|0;j=o+12|0;k=o+8|0;m=o+4|0;l=o;n=o+24|0;c[g
x3e;>2]=b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=0;if((c[(c[h>>2]|0)+72>>2]|0)==1651078259
){n=c[k>>2]|0;i=o;return n|0}c[l>>2]=0;a[n>>0]=0;b=c[g>>2]|0;if((c[(c[h>>2]|0)+
72>>2]|0)==1869968492){c[m>>2]=c[b+164>>2];c[l>>2]=c[(c[g>>2]|0)+156>>
;2]}else c[m>>2]=Jb(b,c[(c[h>>2]|0)+72>>2]|0,l)|0;c[k>>2]=7;while(1){if(!(c[m>>
;2]|0))break;c[k>>2]=Wa[c[(c[m>>2]|0)+68>>2]&31](c[m>>2]|0,c[h>>2]|0,c[j
x3e;>2]|0,0)|0;if(!(c[k>>2]|0))break;if((c[k>>2]&255|0)!=19)break;c[m>>2]=Jb(c[g>
x3e;2]|0,c[(c[h>>2]|0)+72>>2]|0,l)|0;a[n>>0]=1}if(c[k>>2]|0){n=c[k>>2]|0;i=o;return
n|0}if(!((d[n>>0]|0|0)!=0&(c[m>>2]|0)!=0)){n=c[k>>2]|0;i=o;return n|0}Qb(c[g>>2]|0
,c[m>>2]|0,0,0)|0;n=c[k>>2]|0;i=o;return n|0}function Qb(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o+20|0;j=o+16|0;k=o+12|0;m=o+8|0;l=o+4|0;n=o;c[g>>2]=a;c[h>
;>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=0;if(!(c[g>>2]|0)){c[f>>2]=33;n=c[f>
;>2]|0;i=o;return n|0}if(!(c[h>>2]|0)){c[f>>2]=6;n=c[f>>2]|0;i=o;return n|0}c[m>>2]=
Rb((c[g>>2]|0)+156|0,c[h>>2]|0)|0;a:do if(c[m>>2]|0){Sb((c[g>>2]|0)+156|0,c[m>>
;2]|0);if((c[(c[h>>2]|0)+24>>2]|0)==1869968492)c[(c[g>>2]|0)+164>>2]=c[h>>2];if
((c[j>>2]|0)>>>0>0){c[n>>2]=c[(c[(c[h>>2]|0)+20>>2]|0)+52>>
;2];while(1){if((c[j>>2]|0)>>>0<=0)break a;c[l>>2]=Oa[c[n>>2]&63](c[h>
;>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0)|0;if(c[l>>2]|0)break a;c[j
x3e;>2]=(c[j>>2]|0)+-1}}}else c[l>>2]=6;while(0);c[f>>2]=c[l>>2];n=c[f>>2
]|0;i=o;return n|0}function Rb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;f=g+12|0;h=g+8|0;d=g+4|0;e=g;c[h>>
;2]=a;c[d>>2]=b;c[e>>2]=c[c[h>>2]>>2];while(1){if(!(c[e>>2]|0)){b=6;break}a=c[
e>>2]|0;if((c[(c[e>>2]|0)+8>>2]|0)==(c[d>>2]|0)){b=4;break}c[e>>2]=c[a+4>
x3e;2]}if((b|0)==4){c[f>>2]=a;h=c[f>>2]|0;i=g;return h|0}else if((b|0)==6){c[f>>2]=0;h=c[f>
x3e;2]|0;i=g;return h|0}return 0}function Sb(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;e=h+12|0;f=h+8|0;d=h+4|0;g=h;
c[e>>2]=a;c[f>>2]=b;c[d>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[f>>
2]|0)+4>>2];if(!(c[d>>2]|0)){i=h;return}c[(c[d>>2]|0)+4>>2]=c[g>>2];d=c[d>
;>2]|0;if(c[g>>2]|0)c[c[g>>2]>>2]=d;else c[(c[e>>2]|0)+4>>2]=d;c[c[f>
;>2]>>2]=0;c[(c[f>>2]|0)+4>>2]=c[c[e>>2]>>2];c[c[c[e>>2]>
x3e;2]>>2]=c[f>>2];c[c[e>>2]>>2]=c[f>>2];i=h;return}function Tb(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;if((c[d>>2]|0)>=0){d=a+32768&-65536;i=b;return
d|0}else{d=0-(0-a+32768&-65536)|0;i=b;return d|0}return 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;l=i;i=i+32|0;e=l+24|0;f=l+20|0;g=l+16|0;h=l+12|0;j=l+8|0;k=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if
(c[f>>2]|0?(c[g>>2]|0)!=(c[h>>2]|0):0){c[j>>2]=c[f>>2];d=c[f>>2]|0;c
[f>>2]=(c[f>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[g>>2];d=c[g>>2]|
0;c[g>>2]=(c[g>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[h>>2];d=c[h>>
2]|0;c[h>>2]=(c[h>>2]|0)<0?0-d|0:d;do if(!((c[f>>2]|0)<=46340&(c[g>>2]|0)
x3c;=46340&(c[h>>2]|0)>0))if((c[h>>2]|0)>0){yb(c[f>>2]|0,c[g>>2]|0,k);c[f
>>2]=Ab(c[k+4>>2]|0,c[k>>2]|0,c[h>>2]|0)|0;break}else{c[f>>2]=2147483647;break
}else{k=_(c[f>>2]|0,c[g>>2]|0)|0;c[f>>2]=(k|0)/(c[h>>2]|0)|0}while(0);k=c[f>>2
]|0;c[e>>2]=(c[j>>2]|0)<0?0-k|0:k;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=c[f>>
;2];k=c[e>>2]|0;i=l;return k|0}function Vb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+28|0;e=k+
24|0;g=k+20|0;f=k+16|0;h=k+8|0;j=k;c[d>>2]=a;c[e>>2]=b;c[g>>2]=c[d>>2];b=c[d>>
2]|0;c[d>>2]=(c[d>>2]|0)<0?0-b|0:b;c[g>>2]=c[g>>2]^c[e>>2];b=c[e>>
;2]|0;c[e>>2]=(c[e>>2]|0)<0?0-b|0:b;do if(c[e>>2]|0){a=c[d>>2]|0;if(!(c[d>>
;2]>>16)){c[f>>2]=(((a<<16)+(c[e>>2]>>1)|0)>>>0)/((c[e>>
;2]|0)>>>0)|0;break}else{c[h+4>>2]=a>>16;c[h>>2]=c[d>>2]<<16;c[
j+4>>2]=0;c[j>>2]=c[e>>2]>>1;zb(h,j,h);c[f>>2]=Ab(c[h+4>>2]|0,c[h>
;>2]|0,c[e>>2]|0)|0;break}}else c[f>>2]=2147483647;while(0);j=c[f>>2]|0;i=k;return ((c[g>
;>2]|0)<0?0-j|0:j)|0}function Wb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0;f=h+4|0;g
=h;c[d>>2]=a;if(!(c[d>>2]|0)){c[b>>2]=6;g=c[b>>2]|0;i=h;return g|0}a=Mb(c[c[d>>
;2]>>2]|0,c[(c[d>>2]|0)+12>>2]|0)|0;c[e>>2]=a-(Mb(c[(c[d>>2]|0)+4>>2
]|0,c[(c[d>>2]|0)+8>>2]|0)|0);if(c[e>>2]|0){a=0-(Vb(c[(c[d>>2]|0)+4>>2]|0,c[e
x3e;>2]|0)|0)|0;c[(c[d>>2]|0)+4>>2]=a;a=0-(Vb(c[(c[d>>2]|0)+8>>2]|0,c[e>>
2]|0)|0)|0;c[(c[d>>2]|0)+8>>2]=a;c[f>>2]=c[c[d>>2]>>2];c[g>>2]=c[(c[
d>>2]|0)+12>>2];g=Vb(c[g>>2]|0,c[e>>2]|0)|0;c[c[d>>2]>>2]=g;g=Vb(c[f
>>2]|0,c[e>>2]|0)|0;c[(c[d>>2]|0)+12>>2]=g;c[b>>2]=0;g=c[b>>2]|0;i=h
;return g|0}else{c[b>>2]=6;g=c[b>>2]|0;i=h;return g|0}return 0}function Xb(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;m=i;i=i+32|0;e=m+28|0;f=m+24|0;n=m+20|0;h=m+16|0;j=m+12|0;k=m+8|0;l=m+4|0;g=m;c[e>>2]=
a;c[f>>2]=b;c[n>>2]=d;c[g>>2]=c[n>>2]<<16;if(!((c[e>>2]|0)!=0&(
c[f>>2]|0)!=0)){i=m;return}n=xb(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0,c[g>>
;2]|0)|0;c[h>>2]=n+(xb(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>
x3e;2]|0)|0);n=xb(c[c[e>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0;c[j>
x3e;2]=n+(xb(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);n=xb(c
[(c[e>>2]|0)+8>>2]|0,c[c[f>>2]>>2]|0,c[g>>2]|0)|0;c[k>>2]=n+(xb(c[(c
[e>>2]|0)+12>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>>2]|0)|0);n=xb(c[(c[e>>
2]|0)+8>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0;c[l>>2]=n+(xb(c[(c[e>>
;2]|0)+12>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);c[c[f>>2]>>2]=c
[h>>2];c[(c[f>>2]|0)+4>>2]=c[j>>2];c[(c[f>>2]|0)+8>>2]=c[k>>
;2];c[(c[f>>2]|0)+12>>2]=c[l>>2];i=m;return}function Yb(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;k=i;i=i+32|0;e=k+20|0;f=k+16|0;l=k+12|0;h=k+8|0;j=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[l>>
;2]=d;c[g>>2]=c[l>>2]<<16;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=k;return
}l=xb(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0,c[g>>2]|0)|0;c[h>>2]=l+(xb(c[(
c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0);l=xb(c[c[e>>2
]>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>>2]|0)|0;c[j>>2]=l+(xb(c[(c[e>>2]|
0)+4>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);c[c[e>>2]>>2]=c[h>
;>2];c[(c[e>>2]|0)+4>>2]=c[j>>2];i=k;return}function Zb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,
j=0;j=i;i=i+32|0;b=j+20|0;g=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;d=j;c[b>>2]=a;c[g>>2]=0;if((c[b>>2]|0)
x3c;=0){a=c[g>>2]|0;i=j;return a|0}c[e>>2]=0;c[f>>2]=c[b>>2];c[d>>2]=24;do{c[e
>>2]=c[e>>2]<<2|(c[f>>2]|0)>>>30;c[f>>2]=c[f>>2]<
;<2;c[g>>2]=c[g>>2]<<1;c[h>>2]=(c[g>>2]<<1)+1;if((c[e>>
;2]|0)>>>0>=(c[h>>2]|0)>>>0){c[e>>2]=(c[e>>2]|0)-(c[h>>
;2]|0);c[g>>2]=(c[g>>2]|0)+1}a=(c[d>>2]|0)+-1|0;c[d>>2]=a}while((a|0)!=0);a=c[g>>
;2]|0;i=j;return a|0}function _b(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;n=i;i=i+48|0;f=n+32|0;k=n+
28|0;g=n+24|0;l=n+20|0;m=n+16|0;h=n+8|0;j=n;c[f>>2]=a;c[k>>2]=b;c[g>>2]=d;c[l>>2]=e;b=c[
f>>2]|0;do if(!(c[k>>2]|0)){a=c[l>>2]|0;if((b|0)>=0){c[m>>2]=a;break}else{c[m>
x3e;2]=0-a;break}}else{if(!b){a=c[g>>2]|0;if((c[k>>2]|0)>=0){c[m>>2]=0-a;break}else{c[m>
x3e;2]=a;break}}b=c[g>>2]|0;if(!(c[l>>2]|0)){a=c[k>>2]|0;if((b|0)>=0){c[m>>2]=a;break
}else{c[m>>2]=0-a;break}}if(!b){a=c[f>>2]|0;if((c[l>>2]|0)>=0){c[m>>2]=0-a;break}else
{c[m>>2]=a;break}}yb(c[f>>2]|0,c[l>>2]|0,h);yb(c[k>>2]|0,c[g>>2]|0,j);if((c[h+
4>>2]|0)>>>0>(c[j+4>>2]|0)>>>0){c[m>>2]=1;break}if((c[h+4>
x3e;2]|0)>>>0<(c[j+4>>2]|0)>>>0){c[m>>2]=-1;break}if((c[h>>2]|0
)>>>0>(c[j>>2]|0)>>>0){c[m>>2]=1;break}if((c[h>>2]|0)>>
;>0<(c[j>>2]|0)>>>0){c[m>>2]=-1;break}else{c[m>>2]=0;break}}while(0);i=n;
return c[m>>2]|0}function $b(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;p=i;i=i+48|0
;f=p+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;n=p+8|0;o=p+4|0;m=p;c[f>>2]=a;c[g>>2]=b;c[h>>
;2]=d;c[j>>2]=e;c[k>>2]=c[f>>2];c[l>>2]=c[g>>2];if((c[k>>2]|0)<
0)c[k>>2]=0-(c[k>>2]|0);if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>>2]|0);c[n>
x3e;2]=(c[k>>2]|0)+(c[l>>2]|0);c[k>>2]=c[h>>2];if((c[k>>2]|0)<0)c[k>
x3e;2]=0-(c[k>>2]|0);c[l>>2]=c[j>>2];if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>
;>2]|0);c[o>>2]=(c[k>>2]|0)+(c[l>>2]|0);c[k>>2]=(c[h>>2]|0)+(c[f>>
;2]|0);if((c[k>>2]|0)<0)c[k>>2]=0-(c[k>>2]|0);c[l>>2]=(c[j>>2]|0)+(c[g>
;>2]|0);if((c[l>>2]|0)>=0){e=c[k>>2]|0;d=c[l>>2]|0;d=e+d|0;c[m>>2]=d;d=c[n>
;>2]|0;e=c[o>>2]|0;e=d+e|0;d=c[m>>2]|0;d=e-d|0;e=c[m>>2]|0;e=e>>4;e=(d|0)<(e|0
);e=e&1;i=p;return e|0}c[l>>2]=0-(c[l>>2]|0);e=c[k>>2]|0;d=c[l>>2]|0;d=e+d|0;c[m>
;>2]=d;d=c[n>>2]|0;e=c[o>>2]|0;e=d+e|0;d=c[m>>2]|0;d=e-d|0;e=c[m>>2]|0;e=e>>
;4;e=(d|0)<(e|0);e=e&1;i=p;return e|0}function ac(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;d=h+12|0;e=h+8
|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[g>>2]=bc(c[d>>2]|0,96,f)|0;if(c
[f>>2]|0){a=c[f>>2]|0;i=h;return a|0}c[c[g>>2]>>2]=c[d>>2];c[c[e>>2]
x3e;>2]=c[g>>2];a=c[f>>2]|0;i=h;return a|0}function bc(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;k=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[k>>2]=a;c[e>>2]=b;c[f>>2]=d;c[g>>
;2]=cc(c[k>>2]|0,c[e>>2]|0,h)|0;if((c[h>>2]|0)==0&(c[e>>2]|0)>0)Ns(c[g>
x3e;2]|0,0,c[e>>2]|0)|0;c[c[f>>2]>>2]=c[h>>2];i=j;return c[g>>2]|0}function cc
(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;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f
>>2]=b;c[g>>2]=d;c[j>>2]=0;c[h>>2]=0;if((c[f>>2]|0)>0){c[h>>2]=
Ya[c[(c[e>>2]|0)+4>>2]&127](c[e>>2]|0,c[f>>2]|0)|0;if(!(c[h>>2]|0))c[j>
;>2]=64}else if((c[f>>2]|0)<0)c[j>>2]=6;c[c[g>>2]>>2]=c[j>>2];i=k;return
c[h>>2]|0}function dc(a){a=a|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[d>>
;2]=(c[g>>2]|0)+20;c[e>>2]=(c[g>>2]|0)+56;b[(c[d>>2]|0)+2>>1]=0;b[c[d>>
;2]>>1]=0;c[(c[d>>2]|0)+28>>2]=0;a=c[e>>2]|0;d=c[d>>2]|0;e=a+36|0;do{c[a>
x3e;2]=c[d>>2];a=a+4|0;d=d+4|0}while((a|0)<(e|0));i=f;return}function ec(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];Fb(c[e>>2]|0,c[(c[d>>2]|0)+
20+4>>2]|0);c[(c[d>>2]|0)+20+4>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+8>>
;2]|0);c[(c[d>>2]|0)+20+8>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+12>>2]|0);c[(c[d
>>2]|0)+20+12>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+20>>2]|0);c[(c[d>>
2]|0)+20+20>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+32>>2]|0);c[(c[d>>2]|0)+20+32
x3e;>2]=0;c[(c[d>>2]|0)+20+24>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+8
>>2]=0;c[(c[d>>2]|0)+12>>2]=0;dc(c[d>>2]|0);i=b;return}function fc(a){a=a|0;var b=0,d=0,
e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(!(c[b>>2]|0)){i=e;return}c[d>>2]=c[c[b>>2]>
;>2];ec(c[b>>2]|0);Fb(c[d>>2]|0,c[b>>2]|0);c[b>>2]=0;i=e;return}function gc(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[g>>2]=c[c[d>>2]>>2];b
=hc(c[g>>2]|0,8,0,c[(c[d>>2]|0)+4>>2]<<1,0,e)|0;c[(c[d>>2]|0)+20+20>>
;2]=b;if(c[e>>2]|0){g=c[e>>2]|0;i=f;return g|0}a[(c[d>>2]|0)+16>>0]=1;c[(c[d>>
2]|0)+20+24>>2]=(c[(c[d>>2]|0)+20+20>>2]|0)+(c[(c[d>>2]|0)+4>>2]<<3);
jc(c[d>>2]|0);g=c[e>>2]|0;i=f;return g|0}function hc(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;o=i;i=i+32|0;p=o+24|0;h=o+20|0;j=o+16|0;k=o+12|0;l=o+8|0;m=o+4|0;n=o;c[p>>2]=a;c[h>
x3e;2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=0;c[l>>2]=ic
(c[p>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,n)|0;if((c[n>>2]|
0)==0?(c[k>>2]|0)>(c[j>>2]|0):0){p=(c[l>>2]|0)+(_(c[j>>2]|0,c[h>>2]|0)|0)|
0;Ns(p|0,0,_((c[k>>2]|0)-(c[j>>2]|0)|0,c[h>>2]|0)|0)|0}c[c[m>>2]>>2]=c[n>
x3e;2];i=o;return c[l>>2]|0}function ic(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;s=i;i=i+48|0;h=s+36|0;j=s+32|0;k=s+28|0;l=s+24|0;m=s+20|0;n=s+16|0;q=s+12|0;o=s+8|0;p=s+4|0;r=s;c[h>>
;2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[q>>2]=0;do
if(!((c[k>>2]|0)<0|(c[l>>2]|0)<0|(c[j>>2]|0)<0)){if((c[l>>2]|0)==0|(c[j
x3e;>2]|0)==0){Fb(c[h>>2]|0,c[m>>2]|0);c[m>>2]=0;break}if((c[l>>2]|0)>(2147483647
/(c[j>>2]|0)|0|0)){c[q>>2]=10;break}if(!(c[k>>2]|0)){c[m>>2]=bc(c[h>>2]|0,_(c[
l>>2]|0,c[j>>2]|0)|0,q)|0;break}c[p>>2]=_(c[k>>2]|0,c[j>>2]|0)|0;c[r>>
;2]=_(c[l>>2]|0,c[j>>2]|0)|0;c[o>>2]=Wa[c[(c[h>>2]|0)+12>>2]&31](c[h>
;>2]|0,c[p>>2]|0,c[r>>2]|0,c[m>>2]|0)|0;if(!(c[o>>2]|0)){c[q>>2]=64;break
}else{c[m>>2]=c[o>>2];break}}else c[q>>2]=6;while(0);c[c[n>>2]>>2]=c[q>
x3e;2];i=s;return c[m>>2]|0}function jc(d){d=d|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
]=d;c[f>>2]=(c[e>>2]|0)+20;c[h>>2]=(c[e>>2]|0)+56;c[(c[h>>2]|0)+4>>2
]=(c[(c[f>>2]|0)+4>>2]|0)+(b[(c[f>>2]|0)+2>>1]<<3);c[(c[h>>2]|0)+8
x3e;>2]=(c[(c[f>>2]|0)+8>>2]|0)+(b[(c[f>>2]|0)+2>>1]|0);c[(c[h>>2]|0)+12
x3e;>2]=(c[(c[f>>2]|0)+12>>2]|0)+(b[c[f>>2]>>1]<<1);if(!(a[(c[e>>
;2]|0)+16>>0]|0)){i=g;return}c[(c[e>>2]|0)+56+20>>2]=(c[(c[e>>2]|0)+20+20>>2]|
0)+(b[(c[f>>2]|0)+2>>1]<<3);c[(c[e>>2]|0)+56+24>>2]=(c[(c[e>>2]|0)+20
+24>>2]|0)+(b[(c[f>>2]|0)+2>>1]<<3);i=g;return}function kc(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,s=0,t=0;s=i;i=i+48|0;g=s+36|0;h=s+32|0;t=s+28|0;j=s+24|0;o=s+20|0;n=s+16|0;l=s+12|0;
m=s+8|0;k=s+40|0;p=s+4|0;q=s;c[h>>2]=d;c[t>>2]=e;c[j>>2]=f;c[o>>2]=c[c[h>>2]
x3e;>2];c[n>>2]=0;c[l>>2]=(c[h>>2]|0)+20;c[m>>2]=(c[h>>2]|0)+56;a[k>
x3e;0]=0;c[p>>2]=(b[(c[l>>2]|0)+2>>1]|0)+(b[(c[m>>2]|0)+2>>1]|0)+(c[t>>
;2]|0);c[q>>2]=c[(c[h>>2]|0)+4>>2];do if((c[p>>2]|0)>>>0>(c[q>
x3e;2]|0)>>>0){c[p>>2]=(c[p>>2]|0)+7&-8;if((c[p>>2]|0)>>>0>
;32767){c[g>>2]=10;t=c[g>>2]|0;i=s;return t|0}t=hc(c[o>>2]|0,8,c[q>>2]|0,c[p>>
2]|0,c[(c[l>>2]|0)+4>>2]|0,n)|0;c[(c[l>>2]|0)+4>>2]=t;if((c[n>>2]|0)==0?(t=hc(
c[o>>2]|0,1,c[q>>2]|0,c[p>>2]|0,c[(c[l>>2]|0)+8>>2]|0,n)|0,c[(c[l>>2
]|0)+8>>2]=t,(c[n>>2]|0)==0):0){if(a[(c[h>>2]|0)+16>>0]|0){t=hc(c[o>>2]|0,8,c[
q>>2]<<1,c[p>>2]<<1,c[(c[h>>2]|0)+20+20>>2]|0,n)|0;c[(c[h>>
;2]|0)+20+20>>2]=t;if(c[n>>2]|0)break;Ts((c[(c[h>>2]|0)+20+20>>2]|0)+(c[p>>2]
x3c;<3)|0,(c[(c[h>>2]|0)+20+20>>2]|0)+(c[q>>2]<<3)|0,c[q>>2]<<3
|0)|0;c[(c[h>>2]|0)+20+24>>2]=(c[(c[h>>2]|0)+20+20>>2]|0)+(c[p>>2]<<
3)}a[k>>0]=1;c[(c[h>>2]|0)+4>>2]=c[p>>2];r=10}}else r=10;while(0);a:do if((r|0)==10){c[q
>>2]=c[(c[h>>2]|0)+8>>2];c[p>>2]=(b[c[l>>2]>>1]|0)+(b[c[m>>
;2]>>1]|0)+(c[j>>2]|0);do if((c[p>>2]|0)>>>0>(c[q>>2]|0)>>
x3e;0){c[p>>2]=(c[p>>2]|0)+3&-4;if((c[p>>2]|0)>>>0>32767){c[g>>
2]=10;t=c[g>>2]|0;i=s;return t|0}else{t=hc(c[o>>2]|0,2,c[q>>2]|0,c[p>>2]|0,c[(c[l>
x3e;2]|0)+12>>2]|0,n)|0;c[(c[l>>2]|0)+12>>2]=t;if(c[n>>2]|0)break a;a[k>>0]=1;
c[(c[h>>2]|0)+8>>2]=c[p>>2];break}}while(0);if(a[k>>0]|0)jc(c[h>>2]|0)}while(0
);c[g>>2]=c[n>>2];t=c[g>>2]|0;i=s;return t|0}function lc(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;d=k+28|0;l=k+24|0;g=k+20|0;f=k+16|0;h=k+12|0;j=k+8|0;e=k+4|0;m=k;c[d>>2]=a;c[l>>
;2]=b;c[g>>2]=c[c[d>>2]>>2];c[f>>2]=0;c[e>>2]=(c[d>>2]|0)+20;c[m>
;>2]=(c[d>>2]|0)+56;c[h>>2]=(c[(c[e>>2]|0)+28>>2]|0)+(c[(c[m>>2]|0)+28>
;>2]|0)+(c[l>>2]|0);c[j>>2]=c[(c[d>>2]|0)+12>>2];if((c[h>>2]|0)>>
;>0<=(c[j>>2]|0)>>>0){m=c[f>>2]|0;i=k;return m|0}c[h>>2]=(c[h>>
2]|0)+1&-2;m=hc(c[g>>2]|0,32,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+32>>2]|0,f
)|0;c[(c[e>>2]|0)+32>>2]=m;if(c[f>>2]|0){m=c[f>>2]|0;i=k;return m|0}c[(c[d>>2]|
0)+12>>2]=c[h>>2];mc(c[d>>2]|0);m=c[f>>2]|0;i=k;return m|0}function mc(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+4|0;d=b;c[f>>2]=a;c[e>>2]=(c[f>>2]|0)+20;c[d>>2]=(c
[f>>2]|0)+56;c[(c[d>>2]|0)+32>>2]=(c[(c[e>>2]|0)+32>>2]|0)+(c[(c[e>>
2]|0)+28>>2]<<5);i=b;return}function nc(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;c[f>>2]=(c[e>>2]|0)+56;b[(c[f>>2]|0)+2>>1]=0;b[c[f>>2]>>1]=0;c[(c[
f>>2]|0)+28>>2]=0;jc(c[e>>2]|0);mc(c[e>>2]|0);i=d;return}function oc(a){a=a|0;var d=0,e=
0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[d>>2]=a;if(!(c[d>>2]|0)){
i=k;return}c[e>>2]=(c[d>>2]|0)+20;c[f>>2]=(c[d>>2]|0)+56;c[j>>2]=b[c[f>
x3e;2]>>1];c[h>>2]=b[(c[e>>2]|0)+2>>1];b[(c[e>>2]|0)+2>>1]=(b[(c[e
x3e;>2]|0)+2>>1]|0)+(b[(c[f>>2]|0)+2>>1]|0);b[c[e>>2]>>1]=(b[c[e>>
;2]>>1]|0)+(b[c[f>>2]>>1]|0);a=(c[e>>2]|0)+28|0;c[a>>2]=(c[a>>2]|0)+(
c[(c[f>>2]|0)+28>>2]|0);c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[j
x3e;>2]|0)>>>0)break;b[(c[(c[f>>2]|0)+12>>2]|0)+(c[g>>2]<<1)>
x3e;1]=(b[(c[(c[f>>2]|0)+12>>2]|0)+(c[g>>2]<<1)>>1]|0)+(c[h>>2]|0);c
[g>>2]=(c[g>>2]|0)+1}nc(c[d>>2]|0);i=k;return}function pc(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,j=0,k=0
,l=0,m=0,n=0;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;l=n+12|0;k=n+8|0;m=n+4|0;j=n;c[f>>2]=a;c[g>>2]=e;c[l>
;>2]=b[(c[g>>2]|0)+20+2>>1];c[k>>2]=b[(c[g>>2]|0)+20>>1];c[h>>2
]=kc(c[f>>2]|0,c[l>>2]|0,c[k>>2]|0)|0;if(c[h>>2]|0){a=c[h>>2]|0;i=n;return a|0
}c[m>>2]=(c[f>>2]|0)+20;c[j>>2]=(c[g>>2]|0)+20;Ss(c[(c[m>>2]|0)+4>>2
]|0,c[(c[j>>2]|0)+4>>2]|0,c[l>>2]<<3|0)|0;Ss(c[(c[m>>2]|0)+8>>2]|0,c
[(c[j>>2]|0)+8>>2]|0,c[l>>2]|0)|0;Ss(c[(c[m>>2]|0)+12>>2]|0,c[(c[j>>
2]|0)+12>>2]|0,c[k>>2]<<1|0)|0;if(d[(c[f>>2]|0)+16>>0]|0?d[(c[g>>2]|
0)+16>>0]|0:0){Ss(c[(c[f>>2]|0)+20+20>>2]|0,c[(c[g>>2]|0)+20+20>>2]|0,c[l>
;>2]<<3|0)|0;Ss(c[(c[f>>2]|0)+20+24>>2]|0,c[(c[g>>2]|0)+20+24>>2]|0,c[l
x3e;>2]<<3|0)|0}b[(c[m>>2]|0)+2>>1]=c[l>>2];b[c[m>>2]>>1]=c[k
x3e;>2];jc(c[f>>2]|0);a=c[h>>2]|0;i=n;return a|0}function qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;h=i;i=i+16|0;j=h+12|0;d=h+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=0;c[e>>2]=c[j
x3e;>2];if(!((c[e>>2]|0)!=0&(c[d>>2]|0)!=0)){j=c[f>>2]|0;i=h;return j|0}while(1){if(!(c[
c[e>>2]>>2]|0)){g=6;break}j=(Kr(c[c[e>>2]>>2]|0,c[d>>2]|0)|0)==0;a=c[e>
x3e;2]|0;if(j)break;c[e>>2]=a+8}if((g|0)==6){j=c[f>>2]|0;i=h;return j|0}c[f>>2]=c[a+4>>2
];j=c[f>>2]|0;i=h;return j|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;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;c[c[g>>2]>
x3e;2]=c[k>>2];c[(c[g>>2]|0)+4>>2]=c[j>>2];c[(c[g>>2]|0)+8>>2]=c[h
x3e;>2];c[(c[g>>2]|0)+12>>2]=0;i=f;return}function sc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d
+8|0;f=d+4|0;c[e>>2]=a;c[f>>2]=b;c[d>>2]=(c[e>>2]|0)+16;c[(c[e>>2]|0)+12>
x3e;2]=c[f>>2];ta(c[d>>2]|0,1)}function tc(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;m=i;
i=i+32|0;h=m+24|0;e=m+20|0;f=m+16|0;j=m+12|0;k=m+8|0;g=m+4|0;l=m;c[e>>2]=a;c[f>>2]=b;c[j>>2]=d;c[c
[j>>2]>>2]=0;if(!(c[e>>2]|0)){c[h>>2]=33;l=c[h>>2]|0;i=m;return l|0}if(!(c[f
x3e;>2]|0)){c[h>>2]=6;l=c[h>>2]|0;i=m;return l|0}c[g>>2]=c[c[e>>2]>>2];c[
l>>2]=bc(c[g>>2]|0,40,k)|0;if(!(c[k>>2]|0)){c[(c[l>>2]|0)+28>>2]=c[g>>
;2];do if(c[c[f>>2]>>2]&1|0)uc(c[l>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[(c[f>
;>2]|0)+8>>2]|0);else{if(c[c[f>>2]>>2]&4|0){c[k>>2]=qr(c[l>>2]|0,c[(
c[f>>2]|0)+12>>2]|0)|0;c[(c[l>>2]|0)+16>>2]=c[(c[f>>2]|0)+12>>2];break
}if(c[c[f>>2]>>2]&2|0?c[(c[f>>2]|0)+16>>2]|0:0){Fb(c[g>>2]|0,c[l>>
;2]|0);c[l>>2]=0;c[l>>2]=c[(c[f>>2]|0)+16>>2];break}c[k>>2]=6}while(0);e=c[g
x3e;>2]|0;f=c[l>>2]|0;if(c[k>>2]|0){Fb(e,f);c[l>>2]=0}else c[f+28>>2]=e;c[c[j>
x3e;2]>>2]=c[l>>2]}c[h>>2]=c[k>>2];l=c[h>>2]|0;i=m;return l|0}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;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]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2];c[(c[f>
x3e;2]|0)+8>>2]=0;c[(c[f>>2]|0)+32>>2]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>
x3e;2]|0)+24>>2]=0;i=e;return}function vc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=a;c[e>>2]=b;if(!(c[d>>2]|0)){i=g;return}c[f>>2]=c[(c[d>>2]|0)+28>>2];
wc(c[d>>2]|0);if(c[e>>2]|0){i=g;return}Fb(c[f>>2]|0,c[d>>2]|0);c[d>>2]=0;i=g;return
}function wc(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)){i=d;return}if(!(c[(c[b>
x3e;2]|0)+24>>2]|0)){i=d;return}Va[c[(c[b>>2]|0)+24>>2]&63](c[b>>2]|0);i=d;return}function
xc(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c
[g>>2]=c[(c[(c[d>>2]|0)+4>>2]|0)+100>>2];if(c[(c[(c[d>>2]|0)+156>>2]|
0)+4>>2]&1|0){Fb(c[g>>2]|0,c[(c[d>>2]|0)+76+12>>2]|0);c[(c[d>>2]|0)+76+12
>>2]=0}else{a=(c[(c[d>>2]|0)+156>>2]|0)+4|0;c[a>>2]=c[a>>2]|1}a=bc(c[g>
x3e;2]|0,c[e>>2]|0,f)|0;c[(c[d>>2]|0)+76+12>>2]=a;i=h;return c[f>>2]|0}function yc(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;m=i;i=i+32|0;d=m+28|0;e=m+24|0;f=m+20|0;j=m+16|0;h=m+12|0;g=m+8|0;k=m+4|0;l=
m;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0?c[(c[e>>2]|0)+96>>2]|0:0){c[h>>2]=
c[(c[e>>2]|0)+96>>2];c[g>>2]=c[(c[h>>2]|0)+20>>2];c[k>>2]=c[(c[h>
;>2]|0)+8>>2];c[l>>2]=bc(c[k>>2]|0,c[(c[g>>2]|0)+44>>2]|0,j)|0;do if(c[j
x3e;>2]|0){if(c[f>>2]|0)c[c[f>>2]>>2]=0}else{c[(c[l>>2]|0)+4>>2]=c[e>
;>2];c[j>>2]=zc(c[l>>2]|0)|0;if(c[j>>2]|0){Ac(c[l>>2]|0);Fb(c[k>>2]|0,c[l
>>2]|0);c[l>>2]=0;break}c[(c[l>>2]|0)+8>>2]=c[(c[e>>2]|0)+84>>2];c[(
c[e>>2]|0)+84>>2]=c[l>>2];if(c[f>>2]|0)c[c[f>>2]>>2]=c[l>>
2]}while(0);c[d>>2]=c[j>>2];l=c[d>>2]|0;i=m;return l|0}c[d>>2]=6;l=c[d>>2]|0;i
=m;return l|0}function zc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;b=j+20|0;e=j+16|0;d=j+12|0;h=j+8|0;f=j+4|0;g=j;c
[b>>2]=a;c[e>>2]=c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2];c[d>>2]=c[(c[e>
;>2]|0)+20>>2];c[h>>2]=c[(c[e>>2]|0)+8>>2];c[f>>2]=0;c[g>>2]=0;
c[c[b>>2]>>2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=bc(c[h>>2]|0,40,f)|0;if(c[
f>>2]|0){a=c[f>>2]|0;i=j;return a|0}c[(c[b>>2]|0)+156>>2]=c[g>>2];if(!(c[c[c[e
>>2]>>2]>>2]&512))c[f>>2]=ac(c[h>>2]|0,c[g>>2]|0)|0;if(c[f>
;>2]|0){a=c[f>>2]|0;i=j;return a|0}if(!(c[(c[d>>2]|0)+64>>2]|0)){a=c[f>>2]|0;i=j;return
a|0}c[f>>2]=Ta[c[(c[d>>2]|0)+64>>2]&63](c[b>>2]|0)|0;a=c[f>>2]|0;i=j;return
a|0}function Ac(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;d=g+4|0;f=g;c[b>>2]=a;c[e>>2
]=c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2];c[d>>2]=c[(c[e>>2]|0)+20>>2];c[f
x3e;>2]=c[(c[e>>2]|0)+8>>2];if(c[(c[d>>2]|0)+68>>2]|0)Va[c[(c[d>>2]|0)+68
>>2]&63](c[b>>2]|0);Eb(c[b>>2]|0);if(!(c[(c[b>>2]|0)+156>>2]|0)){i=g;return
}if(!(c[c[c[e>>2]>>2]>>2]&512)){fc(c[c[(c[b>>2]|0)+156>>2]>>2]|
0);c[c[(c[b>>2]|0)+156>>2]>>2]=0}Fb(c[f>>2]|0,c[(c[b>>2]|0)+156>>2]|
0);c[(c[b>>2]|0)+156>>2]=0;i=g;return}function Bc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+
16|0;d=j+12|0;g=j+8|0;h=j+4|0;b=j;c[f>>2]=a;if(!(c[f>>2]|0)){i=j;return}c[d>>2]=c[(c[(c[f>>
;2]|0)+4>>2]|0)+96>>2];c[g>>2]=c[(c[d>>2]|0)+8>>2];c[h>>2]=0;c[b>
;>2]=c[(c[(c[f>>2]|0)+4>>2]|0)+84>>2];while(1){if(!(c[b>>2]|0)){e=10;break}if((c[b
x3e;>2]|0)==(c[f>>2]|0))break;c[h>>2]=c[b>>2];c[b>>2]=c[(c[b>>2]|0)+8>
;>2]}if((e|0)==10){i=j;return}b=c[(c[b>>2]|0)+8>>2]|0;if(c[h>>2]|0)c[(c[h>>2]|0)+8
x3e;>2]=b;else c[(c[(c[f>>2]|0)+4>>2]|0)+84>>2]=b;Ac(c[f>>2]|0);Fb(c[g>>2
]|0,c[f>>2]|0);c[f>>2]=0;i=j;return}function Cc(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;e=k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[f>>2]|0
)){c[e>>2]=35;d=c[e>>2]|0;i=k;return d|0}c[j>>2]=c[g>>2];if(c[(c[f>>2]|0)+92
x3e;>2]|0)c[j>>2]=Dc(c[f>>2]|0,c[g>>2]|0)|0;c[e>>2]=Cb(c[f>>2]|0,c[j>
;>2]|0,c[h>>2]|0)|0;d=c[e>>2]|0;i=k;return d|0}function Dc(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;if(!(c[d>>2]|0)){g=
c[g>>2]|0;i=h;return g|0}if(!(c[(c[d>>2]|0)+92>>2]|0)){g=c[g>>2]|0;i=h;return g|0}c[f>
;>2]=c[(c[d>>2]|0)+92>>2];c[g>>2]=Ya[c[(c[(c[f>>2]|0)+12>>2]|0)+12>
x3e;2]&127](c[f>>2]|0,c[e>>2]|0)|0;g=c[g>>2]|0;i=h;return g|0}function Ec(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;m=i;i=i+64|0;f=m+48|0;g=m+44|0;h=m+40|0;j=m+36|0;k=m+32|0;l=m;c[g>>2]=a;
c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(c[h>>2]|0){c[l>>2]=4;c[l+12>>2]=c[h
>>2];c[l+16>>2]=0;c[f>>2]=Fc(c[g>>2]|0,l,c[j>>2]|0,c[k>>2]|0)|0;b=c[
f>>2]|0;i=m;return b|0}else{c[f>>2]=6;b=c[f>>2]|0;i=m;return b|0}return 0}function Fc(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;G=i;i=i
+96|0;C=G+80|0;j=G+76|0;k=G+72|0;l=G+68|0;D=G+64|0;E=G+60|0;o=G+56|0;u=G+52|0;B=G+48|0;q=G+44|0;v=G+40|0;p=G+84|0;n=G+36|0;t=G+32
|0;w=G+28|0;y=G+24|0;x=G+20|0;z=G+16|0;A=G+12|0;r=G+8|0;m=G+4|0;s=G;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;
c[D>>2]=h;c[B>>2]=0;c[q>>2]=0;c[v>>2]=0;if(!(((c[D>>2]|0)==0&(c[l>
x3e;2]|0)>=0^1)&(c[k>>2]|0)!=0)){c[C>>2]=6;F=c[C>>2]|0;i=G;return F|0}if(c[c[k>>
;2]>>2]&2|0)h=(c[(c[k>>2]|0)+16>>2]|0)!=0;else h=0;a[p>>0]=h&1;c[E>>
2]=tc(c[j>>2]|0,c[k>>2]|0,B)|0;a:do if(!(c[E>>2]|0)){c[u>>2]=c[c[j>>2]>
x3e;2];do if(c[c[k>>2]>>2]&8|0?c[(c[k>>2]|0)+20>>2]|0:0){c[o>>2]=c[(c[k
x3e;>2]|0)+20>>2];if(c[c[c[o>>2]>>2]>>2]&1|0){c[w>>2]=0;c[y>>
;2]=0;if(c[c[k>>2]>>2]&16|0){c[w>>2]=c[(c[k>>2]|0)+24>>2];c[y>>
2]=c[(c[k>>2]|0)+28>>2]}c[E>>2]=Gc(c[o>>2]|0,c[B>>2]|0,c[l>>2]|0,c[w
>>2]|0,c[y>>2]|0,q)|0;if(!(c[E>>2]|0))break}else c[E>>2]=32;vc(c[B>>2]|0,d[p
x3e;>0]|0);F=60;break a}else F=14;while(0);b:do if((F|0)==14){c[n>>2]=(c[j>>2]|0)+28;c[t>>2]=(
c[n>>2]|0)+(c[(c[j>>2]|0)+24>>2]<<2);while(1){if((c[n>>2]|0)>>>
0>=(c[t>>2]|0)>>>0){F=27;break a}if(c[c[c[c[n>>2]>>2]>>2]>>
;2]&1|0){c[x>>2]=0;c[z>>2]=0;c[o>>2]=c[c[n>>2]>>2];if(c[c[k>>2]
x3e;>2]&16|0){c[x>>2]=c[(c[k>>2]|0)+24>>2];c[z>>2]=c[(c[k>>2]|0)+28
x3e;>2]}c[E>>2]=Gc(c[o>>2]|0,c[B>>2]|0,c[l>>2]|0,c[x>>2]|0,c[z>>
;2]|0,q)|0;if(!(c[E>>2]|0))break b;if((Kr(c[(c[c[c[n>>2]>>2]>>2]|0)+8>>2]|0,10489
)|0)==0?(c[E>>2]&255|0)==142:0){if(Kc(c[B>>2]|0,0)|0){F=27;break a}c[E>>2]=Lc(c[j>>
2]|0,c[B>>2]|0,c[l>>2]|0,c[x>>2]|0,c[z>>2]|0,c[D>>2]|0)|0;if(!(c[E>>
2]|0))break}if((c[E>>2]&255|0)!=2){F=27;break a}}c[n>>2]=(c[n>>2]|0)+4}vc(c[B>>2]|0
,d[p>>0]|0);c[C>>2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}while(0);if(a[p>>0]|0){
B=(c[q>>2]|0)+8|0;c[B>>2]=c[B>>2]|1024}c[v>>2]=bc(c[u>>2]|0,12,E)|0;if(!(c[E
x3e;>2]|0)){c[(c[v>>2]|0)+8>>2]=c[q>>2];td((c[(c[q>>2]|0)+96>>2]|0)+24|0,
c[v>>2]|0);if((c[l>>2]|0)>=0){c[E>>2]=yc(c[q>>2]|0,0)|0;if(c[E>>2]|0){F=60
;break}c[E>>2]=ud(c[q>>2]|0,A)|0;if(c[E>>2]|0){F=60;break}c[(c[q>>2]|0)+88>>2]=
c[A>>2]}if(c[(c[q>>2]|0)+8>>2]&1|0){if((b[(c[q>>2]|0)+74>>1]|0)<0)b[(
c[q>>2]|0)+74>>1]=0-(b[(c[q>>2]|0)+74>>1]|0);if(!(c[(c[q>>2]|0)+8>>2
]&32))b[(c[q>>2]|0)+78>>1]=b[(c[q>>2]|0)+74>>1]|0}c:do if(c[(c[q>>2]|0)+8
>>2]&2|0){c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[(c[q>>2]|0)+28>>2]|0
))break c;c[m>>2]=(c[(c[q>>2]|0)+32>>2]|0)+(c[r>>2]<<4);if((b[c[m>>2
]>>1]|0)<0)b[c[m>>2]>>1]=0-(b[c[m>>2]>>1]|0);if((c[(c[m>>2]|0)+
8>>2]|0)<0)c[(c[m>>2]|0)+8>>2]=(0-(c[(c[m>>2]|0)+8>>2]|0)&65535)<
;<16>>16;if((c[(c[m>>2]|0)+12>>2]|0)<0)c[(c[m>>2]|0)+12>>2]=0-(c[(c[
m>>2]|0)+12>>2]|0);c[r>>2]=(c[r>>2]|0)+1}}while(0);c[s>>2]=c[(c[q>>2
]|0)+128>>2];c[(c[s>>2]|0)+4>>2]=65536;c[(c[s>>2]|0)+4+4>>2]=0;c[(c[s>>
;2]|0)+4+8>>2]=0;c[(c[s>>2]|0)+4+12>>2]=65536;c[(c[s>>2]|0)+20>>2]=0;c[(c[s>
;>2]|0)+20+4>>2]=0;c[(c[s>>2]|0)+60>>2]=1;h=c[q>>2]|0;if(c[D>>2]|0){c[c[D
>>2]>>2]=h;break}else{vd(h)|0;break}}else F=60}else F=27;while(0);if((F|0)==27){if(!(((c[E>>2]&
;255|0)!=81?(c[E>>2]&255|0)!=2:0)?(c[E>>2]&255|0)!=85:0))F=30;do if((F|0)==30){c[E>>2]=Xc
(c[j>>2]|0,c[B>>2]|0,c[l>>2]|0,c[D>>2]|0,c[k>>2]|0)|0;if(c[E>>2]|0){
if((c[E>>2]&255|0)!=2)break;c[E>>2]=2;break}else{vc(c[B>>2]|0,d[p>>0]|0);c[C>
x3e;2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}}while(0);vc(c[B>>2]|0,d[p>>0]|0);F=60}if((F|0
)==60)vd(c[q>>2]|0)|0;c[C>>2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}function Gc(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;v=i;i=i+64|0;h=v+48|0;j=v+44|0
;k=v+40|0;l=v+36|0;m=v+32|0;n=v+28|0;u=v+24|0;o=v+20|0;r=v+16|0;p=v+12|0;q=v+8|0;t=v+4|0;s=v;c[h>>2]=a;c[j>>
2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[r>>2]=0;c[t>>2]=0;c[o
>>2]=c[(c[h>>2]|0)+20>>2];c[u>>2]=c[(c[h>>2]|0)+8>>2];c[r>>
;2]=bc(c[u>>2]|0,c[(c[o>>2]|0)+36>>2]|0,p)|0;do if((c[p>>2]|0)==0?(c[t>>2]=bc(
c[u>>2]|0,64,p)|0,(c[p>>2]|0)==0):0){c[(c[r>>2]|0)+128>>2]=c[t>>2];c[(c[r>
;>2]|0)+96>>2]=c[h>>2];c[(c[r>>2]|0)+100>>2]=c[u>>2];c[(c[r>>2]|
0)+104>>2]=c[j>>2];c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]=0;c[s>>2]=0;while
(1){if((c[s>>2]|0)>=(c[l>>2]|0))break;if(!((c[(c[(c[r>>2]|0)+128>>2]|0)+52>>
;2]|0)!=0^1))break;if((c[(c[m>>2]|0)+(c[s>>2]<<3)>>2]|0)==1768842098)c[(c[(c[r>>
;2]|0)+128>>2]|0)+52>>2]=c[(c[m>>2]|0)+(c[s>>2]<<3)+4>>2];c[s>
x3e;2]=(c[s>>2]|0)+1}if(c[(c[o>>2]|0)+48>>2]|0)c[p>>2]=Za[c[(c[o>>2]|0)+48>
;>2]&31](c[j>>2]|0,c[r>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(!(c
[p>>2]|0)){c[q>>2]=Hc(c[r>>2]|0)|0;if((c[q>>2]|0)!=0&(c[q>>2]|0)!=38){c[p
>>2]=c[q>>2];break}else{c[c[n>>2]>>2]=c[r>>2];break}}}while(0);if(!(c[p>
x3e;2]|0)){b=c[p>>2]|0;i=v;return b|0}Ic(c[r>>2]|0,c[u>>2]|0);if(c[(c[o>>2]|0)+52>
x3e;2]|0)Va[c[(c[o>>2]|0)+52>>2]&63](c[r>>2]|0);Fb(c[u>>2]|0,c[t>>2]|0);c
[t>>2]=0;Fb(c[u>>2]|0,c[r>>2]|0);c[r>>2]=0;c[c[n>>2]>>2]=0;b=c[p>
;>2]|0;i=v;return b|0}function Hc(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;b=j+12|0;d=j+8|0;g=j+4|0;f=j;c[d>
x3e;2]=a;c[g>>2]=c[(c[d>>2]|0)+40>>2];if(!(c[g>>2]|0)){c[b>>2]=38;h=c[b>
x3e;2]|0;i=j;return h|0}c[f>>2]=(c[g>>2]|0)+(c[(c[d>>2]|0)+36>>2]<<2);while(1){
a=(c[f>>2]|0)+-4|0;c[f>>2]=a;if(a>>>0<(c[g>>2]|0)>>>0)break;if((
c[(c[c[f>>2]>>2]|0)+4>>2]|0)!=1970170211)continue;if(!((e[(c[c[f>>2]>>2]|0)+8
x3e;>1]|0|0)==3?(e[(c[c[f>>2]>>2]|0)+10>>1]|0|0)==10:0)){if(e[(c[c[f>>2]>>
;2]|0)+8>>1]|0|0)continue;if((e[(c[c[f>>2]>>2]|0)+10>>1]|0|0)!=4)continue}if((((c[f>
;>2]|0)-(c[g>>2]|0)|0)/4|0|0)<=15){h=11;break}}if((h|0)==11){c[(c[d>>2]|0)+92>>2]=c[c[f
x3e;>2]>>2];c[b>>2]=0;h=c[b>>2]|0;i=j;return h|0}c[f>>2]=(c[g>>2]|0)+(c[(
c[d>>2]|0)+36>>2]<<2);while(1){h=(c[f>>2]|0)+-4|0;c[f>>2]=h;if(h>>
x3e;0<(c[g>>2]|0)>>>0){h=17;break}if((c[(c[c[f>>2]>>2]|0)+4>>2]|0)!=
1970170211)continue;if((((c[f>>2]|0)-(c[g>>2]|0)|0)/4|0|0)<=15){h=16;break}}if((h|0)==16){c[(c[d>
x3e;2]|0)+92>>2]=c[c[f>>2]>>2];c[b>>2]=0;h=c[b>>2]|0;i=j;return h|0}else if((h
|0)==17){c[b>>2]=38;h=c[b>>2]|0;i=j;return h|0}return 0}function Ic(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;if(!(c[d>>2]|0)){i=h;return}c[g>
;>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[d>>2]|0)+36>>2]|0))break;c[f>>2]=c[(c[(c
[d>>2]|0)+40>>2]|0)+(c[g>>2]<<2)>>2];Jc(c[f>>2]|0);c[(c[(c[d>
x3e;2]|0)+40>>2]|0)+(c[g>>2]<<2)>>2]=0;c[g>>2]=(c[g>>2]|0)+1}Fb(c[e
x3e;>2]|0,c[(c[d>>2]|0)+40>>2]|0);c[(c[d>>2]|0)+40>>2]=0;c[(c[d>>2]|0)+36
>>2]=0;i=h;return}function Jc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;b=f+12|0;d=f+8|0;g=f+4|0;e=f;c[b>>
;2]=a;c[d>>2]=c[(c[b>>2]|0)+12>>2];c[g>>2]=c[c[b>>2]>>2];c[e>
x3e;2]=c[(c[g>>2]|0)+100>>2];if(!(c[(c[d>>2]|0)+8>>2]|0)){e=c[e>>2]|0;g=c[b>
;>2]|0;Fb(e,g);c[b>>2]=0;i=f;return}Va[c[(c[d>>2]|0)+8>>2]&63](c[b>>2]|0);e=c[
e>>2]|0;g=c[b>>2]|0;Fb(e,g);c[b>>2]=0;i=f;return}function Kc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;
g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;if(c[(c[d>>2]|0)+20>
x3e;2]|0){if(Wa[c[(c[d>>2]|0)+20>>2]&31](c[d>>2]|0,c[e>>2]|0,0,0)|0)c[f>>
2]=85}else if((c[e>>2]|0)>>>0>(c[(c[d>>2]|0)+4>>2]|0)>>>0)c[f
x3e;>2]=85;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[(c[d>>2]|0)+8>>2]=c[e>
x3e;2];a=c[f>>2]|0;i=g;return a|0}function Lc(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0
,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;w=i;i=i+64|0;j=w+52|0;k=w+48|0;l=w+44|0;m=w+40|0;y=w+36|0;x=w+32|0;n=w+28|0;o=w+24|
0;s=w+20|0;t=w+16|0;r=w+12|0;u=w+8|0;q=w+56|0;v=w+4|0;p=w;c[k>>2]=a;c[l>>2]=b;c[m>>2]=e;c[y>
x3e;2]=f;c[x>>2]=g;c[n>>2]=h;c[s>>2]=c[c[k>>2]>>2];c[y>>2]=c[y>
x3e;2];c[x>>2]=c[x>>2];c[u>>2]=Mc(c[l>>2]|0)|0;c[o>>2]=Nc(c[l>>2]|0,
c[m>>2]|0,t,r,q)|0;if((((c[o>>2]|0)==0?(Kc(c[l>>2]|0,(c[u>>2]|0)+(c[t>>2]|0)|0
)|0)==0:0)?(c[v>>2]=bc(c[s>>2]|0,c[r>>2]|0,o)|0,(c[o>>2]|0)==0):0)?(c[o>>2]=Rc
(c[l>>2]|0,c[v>>2]|0,c[r>>2]|0)|0,(c[o>>2]|0)==0):0)c[o>>2]=Tc(c[k>>
2]|0,c[v>>2]|0,c[r>>2]|0,(c[m>>2]|0)<0?c[m>>2]|0:0,d[q>>0]|0|0?10406:10410
,c[n>>2]|0)|0;if((c[o>>2]|0)==2?(c[p>>2]=Kc(c[l>>2]|0,c[u>>2]|0)|0,c[p>
x3e;2]|0):0){c[j>>2]=c[p>>2];y=c[j>>2]|0;i=w;return y|0}c[j>>2]=c[o>>2];y=c[j
x3e;>2]|0;i=w;return y|0}function Mc(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 Nc(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;v=i;i=i+48|0;t=v+36|0;k=v+32|0;l=v+28|0;m=v+24|0;n=v+20|0;o=v+16|0;u=v+12|0;q=v+40|0;r=v+8|0;s=v+4|0;p=v;c[k>>2]=d;c
[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[c[m>>2]>>2]=0;c[c[n>
x3e;2]>>2]=0;a[c[o>>2]>>0]=0;c[s>>2]=Oc(c[k>>2]|0,u)|0;if(c[u>>2]|0){
c[t>>2]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}if((c[s>>2]|0)!=1954115633){c[t>>2]=
2;u=c[t>>2]|0;i=v;return u|0}b[q>>1]=Pc(c[k>>2]|0,u)|0;if(c[u>>2]|0){c[t>>2]=c
[u>>2];u=c[t>>2]|0;i=v;return u|0}d=Qc(c[k>>2]|0,6)|0;c[u>>2]=d;if(d|0){c[t>>2
]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}c[r>>2]=-1;a[c[o>>2]>>0]=0;c[p>>
;2]=0;while(1){if((c[p>>2]|0)>=(e[q>>1]|0|0)){k=26;break}c[s>>2]=Oc(c[k>>2]|0,u)|0;
if(c[u>>2]|0){k=15;break}d=Qc(c[k>>2]|0,4)|0;c[u>>2]=d;if(d|0){k=15;break}d=Oc(c[k>>2]|0
,u)|0;c[c[m>>2]>>2]=d;if(c[u>>2]|0){k=15;break}d=Oc(c[k>>2]|0,u)|0;c[c[n>>2]
x3e;>2]=d;if(c[u>>2]|0){k=15;break}if((c[s>>2]|0)==1128875040){c[r>>2]=(c[r>>2]|0)+
1;d=c[m>>2]|0;c[d>>2]=(c[d>>2]|0)+22;d=c[n>>2]|0;c[d>>2]=(c[d>>2]|0)-
22;a[c[o>>2]>>0]=1;if((c[l>>2]|0)<0){k=18;break}}else if((c[s>>2]|0)==1415139377?(c
[r>>2]=(c[r>>2]|0)+1,d=c[m>>2]|0,c[d>>2]=(c[d>>2]|0)+24,d=c[n>>2]|0,
c[d>>2]=(c[d>>2]|0)-24,a[c[o>>2]>>0]=0,(c[l>>2]|0)<0):0){k=21;break}if((c
[l>>2]|0)>=0?(c[r>>2]|0)==(c[l>>2]|0):0){k=24;break}c[p>>2]=(c[p>>2]|0)+1
}if((k|0)==15){c[t>>2]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}else if((k|0)==18){c[t>>2]=0;u
=c[t>>2]|0;i=v;return u|0}else if((k|0)==21){c[t>>2]=0;u=c[t>>2]|0;i=v;return u|0}else if((k|0)==24
){c[t>>2]=0;u=c[t>>2]|0;i=v;return u|0}else if((k|0)==26){c[t>>2]=142;u=c[t>>2]|0;i=v;return
u|0}return 0}function Oc(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;k=m+20|0;j=m+4
|0;l=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=0;c[l>>2]=0;c[c[h>>2]>>2]=0;do if
(((c[(c[g>>2]|0)+8>>2]|0)+3|0)>>>0<(c[(c[g>>2]|0)+4>>2]|0)>>
;>0){e=c[g>>2]|0;if(c[(c[g>>2]|0)+20>>2]|0){if((Wa[c[e+20>>2]&31](c[g>>
;2]|0,c[(c[g>>2]|0)+8>>2]|0,k,4)|0)!=4)break;c[j>>2]=k}else c[j>>2]=(c[e>>2]|0
)+(c[(c[g>>2]|0)+8>>2]|0);if(c[j>>2]|0){c[j>>2]=(c[j>>2]|0)+4;c[l>>2
]=a[(c[j>>2]|0)+-4>>0]<<24|d[(c[j>>2]|0)+-4+1>>0]<<16|d[(c[j>
x3e;2]|0)+-4+2>>0]<<8|d[(c[j>>2]|0)+-4+3>>0]<<0}k=(c[g>>2]|0)+8|0;c[
k>>2]=(c[k>>2]|0)+4;c[f>>2]=c[l>>2];l=c[f>>2]|0;i=m;return l|0}while(0);c[c[h
x3e;>2]>>2]=85;c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}function Pc(e,f){e=e|0;f=f|0;var g=0,h=0,
j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;g=n+14|0;h=n+8|0;j=n+4|0;l=n+16|0;k=n;m=n+12|0;c[h>>2]=e;c[j>>2]=f;c[k>
;>2]=0;b[m>>1]=0;c[c[j>>2]>>2]=0;do if(((c[(c[h>>2]|0)+8>>2]|0)+1|0)>
;>>0<(c[(c[h>>2]|0)+4>>2]|0)>>>0){f=c[h>>2]|0;if(c[(c[h>>2
]|0)+20>>2]|0){if((Wa[c[f+20>>2]&31](c[h>>2]|0,c[(c[h>>2]|0)+8>>2]|0,l,2)|
0)!=2)break;c[k>>2]=l}else c[k>>2]=(c[f>>2]|0)+(c[(c[h>>2]|0)+8>>2]|0);if(c[k
x3e;>2]|0){c[k>>2]=(c[k>>2]|0)+2;b[m>>1]=a[(c[k>>2]|0)+-2>>0]<<
16>>16<<8|d[(c[k>>2]|0)+-2+1>>0]<<0}l=(c[h>>2]|0)+8|0;c[l>>
;2]=(c[l>>2]|0)+2;b[g>>1]=b[m>>1]|0;m=b[g>>1]|0;i=n;return m|0}while(0);c[c[j>>
;2]>>2]=85;b[g>>1]=0;m=b[g>>1]|0;i=n;return m|0}function Qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g
=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)<0){c[d>>2]=85;a=
c[d>>2]|0;i=g;return a|0}else{c[d>>2]=Kc(c[e>>2]|0,(c[(c[e>>2]|0)+8>>2]|0)+(c[
f>>2]|0)|0)|0;a=c[d>>2]|0;i=g;return a|0}return 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+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=Sc(c[h>>2]|0,c[(c[h>
;>2]|0)+8>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function Sc(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g>>2]=
a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=0;if((c[h>>2]|0)>>>0>
;=(c[(c[g>>2]|0)+4>>2]|0)>>>0){c[f>>2]=85;m=c[f>>2]|0;i=n;return m|0}d=c[
g>>2]|0;if(c[(c[g>>2]|0)+20>>2]|0)c[m>>2]=Wa[c[d+20>>2]&31](c[g>>
;2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;else{c[m>>2]=(c[d+4>>2]|0)-(c[h>
x3e;2]|0);if((c[m>>2]|0)>>>0>(c[k>>2]|0)>>>0)c[m>>2]=c[k>
x3e;2];Ss(c[j>>2]|0,(c[c[g>>2]>>2]|0)+(c[h>>2]|0)|0,c[m>>2]|0)|0}c[(c[g>
x3e;2]|0)+8>>2]=(c[h>>2]|0)+(c[m>>2]|0);if((c[m>>2]|0)>>>0<(c[k>
;>2]|0)>>>0)c[l>>2]=85;c[f>>2]=c[l>>2];m=c[f>>2]|0;i=n;return m|0}function
Tc(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;s=i;i=i+80|0;h=s+72|0;j
=s+68|0;k=s+64|0;t=s+60|0;l=s+56|0;m=s+52|0;n=s+48|0;o=s+16|0;p=s+8|0;r=s+4|0;q=s;c[j>>2]=a;c[k>>2]=b;c[t>
;>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[r>>2]=0;c[q>>2]=c[c[j>>2
]>>2];c[p>>2]=Vc(c[j>>2]|0,c[k>>2]|0,c[t>>2]|0,33,r)|0;if(c[p>>2]|0){
Fb(c[q>>2]|0,c[k>>2]|0);c[k>>2]=0;c[h>>2]=c[p>>2];t=c[h>>2]|0;i=s;return
t|0}c[o>>2]=2;c[o+16>>2]=c[r>>2];if(c[m>>2]|0){c[o>>2]=c[o>>2]|8;c[
o+20>>2]=Wc(c[j>>2]|0,c[m>>2]|0)|0}c[p>>2]=Fc(c[j>>2]|0,o,c[l>>2]|0,
c[n>>2]|0)|0;if(!(c[p>>2]|0)){t=(c[c[n>>2]>>2]|0)+8|0;c[t>>2]=c[t>>2
]&-1025}else{wc(c[r>>2]|0);Fb(c[q>>2]|0,c[r>>2]|0);c[r>>2]=0}c[h>>2]=c[p
x3e;>2];t=c[h>>2]|0;i=s;return t|0}function Uc(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]|0)+28>>2];Fb(c[e>>2]|0,c[c[d>>2]>>2]|0);c[c[d
>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;c[(c[d>>2
]|0)+24>>2]=0;i=b;return}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,j=0,k=0,l=0,m=0,n=0,o=0,p=0,
q=0;q=i;i=i+48|0;g=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;l=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;p=q;c[h>>2]=a;c[j>>2]=
b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;if(!(c[h>>2]|0)){c[g>>2]=33;p=c[g>>2
]|0;i=q;return p|0}if(!(c[j>>2]|0)){c[g>>2]=6;p=c[g>>2]|0;i=q;return p|0}c[c[m>>2]>
x3e;2]=0;c[o>>2]=c[c[h>>2]>>2];c[p>>2]=bc(c[o>>2]|0,40,n)|0;if(!(c[n>>
;2]|0)){uc(c[p>>2]|0,c[j>>2]|0,c[k>>2]|0);c[(c[p>>2]|0)+24>>2]=c[l>>
2];c[c[m>>2]>>2]=c[p>>2]}c[g>>2]=c[n>>2];p=c[g>>2]|0;i=q;return p|0}
function Wc(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;l=i;i=i+32|0;e=l+20|0;d=l+16|0;f=l+12|0;j=l+8|0;g=l+4|0;h=l;c[d
>>2]=a;c[f>>2]=b;c[j>>2]=0;if(!((c[d>>2]|0)!=0&(c[f>>2]|0)!=0)){c[e>
x3e;2]=c[j>>2];k=c[e>>2]|0;i=l;return k|0}c[g>>2]=(c[d>>2]|0)+28;c[h>>2]=(c[g
x3e;>2]|0)+(c[(c[d>>2]|0)+24>>2]<<2);while(1){if((c[g>>2]|0)>>>0>
;=(c[h>>2]|0)>>>0)break;b=(Kr(c[(c[c[c[g>>2]>>2]>>2]|0)+8>>2]|0
,c[f>>2]|0)|0)==0;d=c[g>>2]|0;if(b){k=6;break}c[g>>2]=d+4}if((k|0)==6)c[j>>2]=c[d>
x3e;2];c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|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;n=i;i=i+32|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g>>2]=a;c[h>
x3e;2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[l>>2]=c[l>>2];c[m>>2]=Yc(c[
g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;if((c[m>>2]&255|0)==2)c[m>
x3e;2]=Zc(c[g>>2]|0,c[h>>2]|0,0,c[j>>2]|0,c[k>>2]|0)|0;if((c[m>>2]&255|0)!=
2?(c[m>>2]&255|0)!=85:0){b=c[m>>2]|0;i=n;return b|0}if(!(c[c[l>>2]>>2]&4)){b=c
[m>>2]|0;i=n;return b|0}c[m>>2]=dd(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>
;2]|0,c[l>>2]|0)|0;b=c[m>>2]|0;i=n;return b|0}function Yc(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;q=i;i=i+160|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;l=q+12|0;o=q+32|0;n=q+8|0;m=q+4|0;p=q;c[h>>
;2]=a;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;if(!(c[j>>2]|0)){c[g>>2]=85;b=c[g>>
;2]|0;i=q;return b|0}c[n>>2]=Kc(c[j>>2]|0,0)|0;if((c[n>>2]|0)==0?(c[n>>2]=Rc(c[j>
x3e;2]|0,o,128)|0,(c[n>>2]|0)==0):0){if(((((((d[o>>0]|0|0)==0?(d[o+74>>0]|0|0)==0:0)?(d[o+82>
x3e;0]|0|0)==0:0)?d[o+1>>0]|0|0:0)?(d[o+1>>0]|0|0)<=33:0)?(d[o+63>>0]|0|0)==0:0)?(d[o+(2+(d[o
+1>>0]|0))>>0]|0|0)==0:0){c[m>>2]=(d[o+83>>0]|0)<<24|(d[o+84>>0]|0)
x3c;<16|(d[o+85>>0]|0)<<8|(d[o+86>>0]|0);c[p>>2]=128+((c[m>>2]|0)+127&
;-128);c[g>>2]=Zc(c[h>>2]|0,c[j>>2]|0,c[p>>2]|0,c[k>>2]|0,c[l>>2]|0)|
0;b=c[g>>2]|0;i=q;return b|0}c[g>>2]=2;b=c[g>>2]|0;i=q;return b|0}c[g>>2]=c[n>>
;2];b=c[g>>2]|0;i=q;return b|0}function Zc(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;t=i;i=i+64|0;g=t+48|0;h=t+44|0;j=t+40|0;u=t+36|0;k=t+32|0;l=t+28|0;r=t+24|0;o=t+20|0;q=t+16|0;s=t+12|0
;n=t+8|0;m=t+4|0;p=t;c[h>>2]=a;c[j>>2]=b;c[u>>2]=d;c[k>>2]=e;c[l>>2]=f;c[r>
;>2]=c[c[h>>2]>>2];c[o>>2]=_c(c[h>>2]|0,c[j>>2]|0,c[u>>2]|0,q,s
)|0;if(c[o>>2]|0){c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return u|0}c[o>>2]=$c(c[h>
;>2]|0,c[j>>2]|0,c[q>>2]|0,c[s>>2]|0,1347375956,n,m)|0;f=c[h>>2]|0;e=c[j>>
;2]|0;if(!(c[o>>2]|0)){c[o>>2]=bd(f,e,c[n>>2]|0,c[m>>2]|0,c[k>>2]|0,c[l>
x3e;2]|0)|0;Fb(c[r>>2]|0,c[n>>2]|0);c[n>>2]=0;if(!(c[o>>2]|0))c[c[c[l>>2]>
;>2]>>2]=1;c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return u|0}c[o>>2]=$c(f,e,c[q
x3e;>2]|0,c[s>>2]|0,1936092788,n,m)|0;if((c[o>>2]|0)==0?(c[p>>2]=(c[k>>2]|0)%(c[m
x3e;>2]|0)|0,c[o>>2]=cd(c[h>>2]|0,c[j>>2]|0,c[n>>2]|0,c[m>>2]|0,c[p>
x3e;2]|0,c[l>>2]|0)|0,Fb(c[r>>2]|0,c[n>>2]|0),c[n>>2]=0,(c[o>>2]|0)==0):0)c[c[
c[l>>2]>>2]>>2]=c[m>>2];c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return
u|0}function _c(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;x=
i;i=i+96|0;j=x+48|0;y=x+44|0;k=x+40|0;l=x+36|0;m=x+32|0;n=x+28|0;q=x+24|0;r=x+72|0;s=x+56|0;u=x+20|0;v=x+16|0;p=x+12|0;o=x+8|0;t
=x+4|0;w=x;c[y>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[y>>2]=
c[y>>2];c[q>>2]=Kc(c[k>>2]|0,c[l>>2]|0)|0;if(c[q>>2]|0){c[j>>2]=c[q
x3e;>2];y=c[j>>2]|0;i=x;return y|0}c[q>>2]=Rc(c[k>>2]|0,r,16)|0;if(c[q>>2]|0){c[j
x3e;>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}c[c[n>>2]>>2]=(c[l>>2]|0)+((d[
r>>0]|0)<<24|(d[r+1>>0]|0)<<16|(d[r+2>>0]|0)<<8|(d[r+3>>0]|
0));c[u>>2]=(c[l>>2]|0)+((d[r+4>>0]|0)<<24|(d[r+5>>0]|0)<<16|(d[r+6
x3e;>0]|0)<<8|(d[r+7>>0]|0));c[v>>2]=(d[r+8>>0]|0)<<24|(d[r+9>>
0]|0)<<16|(d[r+10>>0]|0)<<8|(d[r+11>>0]|0);if(((c[c[n>>2]>>2]|0)+(c[
v>>2]|0)|0)==(c[u>>2]|0)?(c[u>>2]|0)!=(c[l>>2]|0):0){c[q>>2]=Kc(c[k>>
;2]|0,c[u>>2]|0)|0;if(c[q>>2]|0){c[j>>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}a[
s+15>>0]=(d[r+15>>0]|0)+1;c[q>>2]=Rc(c[k>>2]|0,s,16)|0;if(c[q>>2]|0){c[j>
x3e;2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}c[p>>2]=1;c[o>>2]=1;c[t>>2]=0;while(
1){if((c[t>>2]|0)>=16)break;if(d[s+(c[t>>2]|0)>>0]|0|0)c[p>>2]=0;if((d[s+(c[t>
x3e;2]|0)>>0]|0|0)!=(d[r+(c[t>>2]|0)>>0]|0|0))c[o>>2]=0;c[t>>2]=(c[t>>
;2]|0)+1}if(!((c[p>>2]|0)!=0|(c[o>>2]|0)!=0)){c[j>>2]=2;y=c[j>>2]|0;i=x;return y|0}c[q
x3e;>2]=Qc(c[k>>2]|0,8)|0;c[w>>2]=(Pc(c[k>>2]|0,q)|0)&65535;if(c[q>>2]|0){c[j
x3e;>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}if((c[w>>2]|0)==-1){c[j>>2]=2;y=c[j>
;>2]|0;i=x;return y|0}c[q>>2]=Kc(c[k>>2]|0,(c[u>>2]|0)+(c[w>>2]|0)|0)|0;if(c[q>
;>2]|0){c[j>>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}else{c[c[m>>2]>>2]=(c[
u>>2]|0)+(c[w>>2]|0);c[j>>2]=0;y=c[j>>2]|0;i=x;return y|0}}c[j>>2]=2;y=c[j>
;>2]|0;i=x;return y|0}function $c(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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=i;i=i+80|0;o=C+72|0;D=C+68|0;p=C+64|0;q=C+60|0;r=C+56|0;k=C+52|0;s=C+48|0;
t=C+44|0;u=C+40|0;m=C+36|0;v=C+32|0;l=C+28|0;A=C+24|0;n=C+20|0;z=C+16|0;w=C+12|0;B=C+8|0;x=C+4|0;y=C;c[D>>2]=a;c[p>
;>2]=d;c[q>>2]=e;c[r>>2]=f;c[k>>2]=g;c[s>>2]=h;c[t>>2]=j;c[w>>2
]=c[c[D>>2]>>2];c[u>>2]=Kc(c[p>>2]|0,c[q>>2]|0)|0;if(c[u>>2]|0){c[o
x3e;>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[l>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if
(c[u>>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[l>>2]=(c[l>>
;2]|0)+1;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[l>>2]|0)){k=30;break}c[n>>2]=Oc(c[p
x3e;>2]|0,u)|0;if(c[u>>2]|0){k=10;break}c[A>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if(c[u>
x3e;2]|0){k=10;break}c[z>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if(c[u>>2]|0){k=10;break}if((c[n>
x3e;2]|0)==(c[k>>2]|0)){k=12;break}c[m>>2]=(c[m>>2]|0)+1}if((k|0)==10){c[o>>2]=c[u>
x3e;2];D=c[o>>2]|0;i=C;return D|0}else if((k|0)==12){c[c[t>>2]>>2]=(c[A>>2]|0)+1;c[z>
;>2]=(c[z>>2]|0)+(c[q>>2]|0);c[u>>2]=Kc(c[p>>2]|0,c[z>>2]|0)|0;if(c[u>
;>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[y>>2]=hc(c[w>>2]|0,8
,0,c[c[t>>2]>>2]|0,0,u)|0;if(c[u>>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;
i=C;return D|0}c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[c[t>>2]>>2]|0)){k=23;break}D=Pc
(c[p>>2]|0,u)|0;b[(c[y>>2]|0)+(c[v>>2]<<3)>>1]=D;if(c[u>>2]|0)break;
D=Qc(c[p>>2]|0,2)|0;c[u>>2]=D;if(D|0)break;c[B>>2]=Oc(c[p>>2]|0,u)|0;if(c[u>>2
]|0)break;D=Qc(c[p>>2]|0,4)|0;c[u>>2]=D;if(D|0)break;c[(c[y>>2]|0)+(c[v>>2]<<3
)+4>>2]=c[B>>2]&16777215;c[v>>2]=(c[v>>2]|0)+1}if((k|0)==23?(Bs(c[y>>2]|0
,c[c[t>>2]>>2]|0,8,102),c[x>>2]=hc(c[w>>2]|0,4,0,c[c[t>>2]>>2]|0,0,u
)|0,(c[u>>2]|0)==0):0){c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[c[t>>2]>>2]|
0))break;c[(c[x>>2]|0)+(c[v>>2]<<2)>>2]=(c[r>>2]|0)+(c[(c[y>>2]|0)+(
c[v>>2]<<3)+4>>2]|0);c[v>>2]=(c[v>>2]|0)+1}c[c[s>>2]>>2]=c
[x>>2];c[u>>2]=0}Fb(c[w>>2]|0,c[y>>2]|0);c[y>>2]=0;c[o>>2]=c[u>
x3e;2];D=c[o>>2]|0;i=C;return D|0}else if((k|0)==30){c[o>>2]=1;D=c[o>>2]|0;i=C;return D|0}return 0
}function ad(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=b;do if
((e[c[f>>2]>>1]|0|0)>=(e[c[g>>2]>>1]|0|0))if((e[c[f>>2]>>1]|0|0
)>(e[c[g>>2]>>1]|0|0)){c[d>>2]=1;break}else{c[d>>2]=0;break}else c[d>>2]=-
1;while(0);i=h;return c[d>>2]|0}function bd(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,C=0,D=0;D=i;i=i+80|0;j=D+72|0;k=D+68|0;l=D+64|0;m=D+60|0;n=D+56|0;o=D+52|
0;p=D+48|0;q=D+44|0;u=D+40|0;v=D+36|0;s=D+32|0;B=D+28|0;r=D+24|0;t=D+20|0;w=D+16|0;y=D+12|0;x=D+8|0;z=D+4|0;A=D;c[k>>2
]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;c[q>>2]=1;c[u
x3e;>2]=c[c[k>>2]>>2];if((c[o>>2]|0)==-1)c[o>>2]=0;if(c[o>>2]|0){c[j>
;>2]=c[q>>2];C=c[j>>2]|0;i=D;return C|0}c[w>>2]=0;c[s>>2]=0;while(1){if((c[s>
x3e;2]|0)>=(c[n>>2]|0)){C=10;break}c[q>>2]=Kc(c[l>>2]|0,c[(c[m>>2]|0)+(c[s>>
;2]<<2)>>2]|0)|0;if(c[q>>2]|0)break;c[A>>2]=Oc(c[l>>2]|0,q)|0;if(c[q>>
;2]|0)break;c[w>>2]=(c[w>>2]|0)+((c[A>>2]|0)+6);c[s>>2]=(c[s>>2]|0)+1}a:do if((
C|0)==10?(c[v>>2]=bc(c[u>>2]|0,(c[w>>2]|0)+2|0,q)|0,(c[q>>2]|0)==0):0){a[c[v>>
2]>>0]=-128;a[(c[v>>2]|0)+1>>0]=1;a[(c[v>>2]|0)+2>>0]=0;a[(c[v>>2]|0
)+3>>0]=0;a[(c[v>>2]|0)+4>>0]=0;a[(c[v>>2]|0)+5>>0]=0;c[y>>2]=6;c[x
x3e;>2]=2;c[t>>2]=0;c[B>>2]=1;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[n>>
;2]|0)){C=31;break}c[q>>2]=Kc(c[l>>2]|0,c[(c[m>>2]|0)+(c[s>>2]<<2)>>
2]|0)|0;if(c[q>>2]|0)break;c[z>>2]=Oc(c[l>>2]|0,q)|0;if(c[q>>2]|0)break a;c[r>>
;2]=(Pc(c[l>>2]|0,q)|0)&65535;if(c[q>>2]|0)break a;if(c[r>>2]>>8|0){if((c[z>
x3e;2]|0)>2)c[z>>2]=(c[z>>2]|0)-2;else c[z>>2]=0;if((c[r>>2]>>8|0)==(c[B
x3e;>2]|0))c[t>>2]=(c[t>>2]|0)+(c[z>>2]|0);else{if(((c[x>>2]|0)+3|0)>((c[w>
;>2]|0)+2|0))break;a[(c[v>>2]|0)+(c[x>>2]|0)>>0]=c[t>>2];a[(c[v>>2]|0)+((
c[x>>2]|0)+1)>>0]=c[t>>2]>>8;a[(c[v>>2]|0)+((c[x>>2]|0)+2)>>
;0]=c[t>>2]>>16;a[(c[v>>2]|0)+((c[x>>2]|0)+3)>>0]=c[t>>2]>>
;24;if((c[r>>2]>>8|0)==5){C=31;break}if(((c[y>>2]|0)+6|0)>((c[w>>2]|0)+2|0))break;d
=c[y>>2]|0;c[y>>2]=d+1;a[(c[v>>2]|0)+d>>0]=-128;c[B>>2]=c[r>>2]>
;>8;c[t>>2]=c[z>>2];d=c[B>>2]&255;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>
;>2]|0)+A>>0]=d;c[x>>2]=c[y>>2];A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>
;2]|0)+A>>0]=0;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>2]|0)+A>>0]=0;A=c[y>>
2]|0;c[y>>2]=A+1;a[(c[v>>2]|0)+A>>0]=0;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>
;2]|0)+A>>0]=0}c[q>>2]=1;if((c[y>>2]|0)>(c[w>>2]|0))break;if(((c[y>>2]|0)+(
c[z>>2]|0)|0)>(c[w>>2]|0))break;c[q>>2]=Rc(c[l>>2]|0,(c[v>>2]|0)+(c[y>
;>2]|0)|0,c[z>>2]|0)|0;if(c[q>>2]|0)break;c[y>>2]=(c[y>>2]|0)+(c[z>>2]|0)}
c[s>>2]=(c[s>>2]|0)+1}if(((C|0)==31?((c[y>>2]|0)+2|0)<=((c[w>>2]|0)+2|0):0)?(C=c[y
x3e;>2]|0,c[y>>2]=C+1,a[(c[v>>2]|0)+C>>0]=-128,C=c[y>>2]|0,c[y>>2]=C+1,a[(
c[v>>2]|0)+C>>0]=3,((c[x>>2]|0)+3|0)<=((c[w>>2]|0)+2|0)):0){a[(c[v>>2]|0)+(
c[x>>2]|0)>>0]=c[t>>2];a[(c[v>>2]|0)+((c[x>>2]|0)+1)>>0]=c[t>
x3e;2]>>8;a[(c[v>>2]|0)+((c[x>>2]|0)+2)>>0]=c[t>>2]>>16;a[(c[v>
x3e;2]|0)+((c[x>>2]|0)+3)>>0]=c[t>>2]>>24;c[j>>2]=Tc(c[k>>2]|0,c[v
x3e;>2]|0,c[y>>2]|0,c[o>>2]|0,10410,c[p>>2]|0)|0;C=c[j>>2]|0;i=D;return C|0}Fb(c[u
x3e;>2]|0,c[v>>2]|0);c[v>>2]=0}while(0);c[j>>2]=c[q>>2];C=c[j>>2]|0;i=D;return
C|0}function cd(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;w=i;i=i+64|0;o=w+52|0;p=w+48|0;h=w+44|0;j=w+40|0;k=w+36|0;l=w+32|0;q=w+28|0;n=w+24|0;v=w+20|0;r=w+16|0;m=w+12|0;u=w+8|0;t=w+4|
0;s=w;c[p>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[q>>2]=g;c[
n>>2]=c[c[p>>2]>>2];c[s>>2]=0;if((c[l>>2]|0)==-1)c[l>>2]=0;if((c[l
x3e;>2]|0)>=(c[k>>2]|0)){c[o>>2]=1;v=c[o>>2]|0;i=w;return v|0}c[m>>2]=c[(c[j
x3e;>2]|0)+(c[l>>2]<<2)>>2];c[r>>2]=Kc(c[h>>2]|0,c[m>>2]|0)|0;if
((c[r>>2]|0)==0?(c[u>>2]=Oc(c[h>>2]|0,r)|0,(c[r>>2]|0)==0):0){if((c[u>>2]|0)==-
1){c[o>>2]=1;v=c[o>>2]|0;i=w;return v|0}c[r>>2]=Lc(c[p>>2]|0,c[h>>2]|0,c[l>
;>2]|0,0,0,c[q>>2]|0)|0;if(c[r>>2]|0?(Kc(c[h>>2]|0,(c[m>>2]|0)+4|0)|0)==0:0){c[v>
;>2]=bc(c[n>>2]|0,c[u>>2]|0,r)|0;if(c[r>>2]|0){c[o>>2]=c[r>>2];v=c[o>
;>2]|0;i=w;return v|0}c[r>>2]=Rc(c[h>>2]|0,c[v>>2]|0,c[u>>2]|0)|0;if(!(c[r>>
;2]|0)){if((c[u>>2]|0)>4)h=($r(c[v>>2]|0,10416,4)|0)!=0^1;else h=0;c[t>>2]=h&1;c[r>
x3e;2]=Tc(c[p>>2]|0,c[v>>2]|0,c[u>>2]|0,c[s>>2]|0,c[t>>2]|0?11217:10489,c[q>
;>2]|0)|0}}}c[o>>2]=c[r>>2];v=c[o>>2]|0;i=w;return v|0}function dd(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;y=i;i=i+192|0;j=y+176|0;z=y+172|0;k=y+168
|0;l=y+164|0;m=y+160|0;t=y+156|0;o=y+152|0;r=y+148|0;q=y+112|0;u=y+76|0;p=y+40|0;s=y+181|0;w=y+180|0;n=y+8|0;v=y;c[j>>
2]=b;c[z>>2]=e;c[k>>2]=f;c[l>>2]=g;c[m>>2]=h;c[t>>2]=c[c[j>>2]>
x3e;2];c[o>>2]=2;a[w>>0]=0;c[v>>2]=0;ed(c[j>>2]|0,c[z>>2]|0,c[(c[m>>
2]|0)+12>>2]|0,q,u,p);c[r>>2]=0;while(1){if((c[r>>2]|0)>=9)break;a[s>>0]=rd(c[r>
;>2]|0)|0;if(!(d[s>>0]|0?(d[w>>0]|0)!=0:0))x=5;if((x|0)==5?(x=0,(c[p+(c[r>>2]<<2)
x3e;>2]|0)==0):0){c[n>>2]=4;if(c[q+(c[r>>2]<<2)>>2]|0)g=c[q+(c[r>>2]<
;<2)>>2]|0;else g=c[(c[m>>2]|0)+12>>2]|0;c[n+12>>2]=g;c[o>>2]=tc(c[j>
;>2]|0,n,v)|0;if((d[s>>0]|0)!=0&(c[o>>2]|0)==81)a[w>>0]=1;if(!(c[o>>2]|0)){c[o
>>2]=Zc(c[j>>2]|0,c[v>>2]|0,c[u+(c[r>>2]<<2)>>2]|0,c[k>>2]|
0,c[l>>2]|0)|0;vc(c[v>>2]|0,0);if(!(c[o>>2]|0))break;if(a[s>>0]|0)a[w>>0]=1}}c
[r>>2]=(c[r>>2]|0)+1}c[r>>2]=0;while(1){if((c[r>>2]|0)>=9)break;if(c[q+(c[r>
x3e;2]<<2)>>2]|0){Fb(c[t>>2]|0,c[q+(c[r>>2]<<2)>>2]|0);c[q+(c[r>
;>2]<<2)>>2]=0}c[r>>2]=(c[r>>2]|0)+1}if(!(c[o>>2]|0)){z=c[o>>2]|
0;i=y;return z|0}c[o>>2]=2;z=c[o>>2]|0;i=y;return z|0}function ed(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;p=i;i=i+32|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;m=p+8|0;n=p+4|0;o=p;c[h>>2
]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=0;while
(1){if((c[o>>2]|0)>=9)break;c[(c[l>>2]|0)+(c[o>>2]<<2)>>2]=0;if(c[j>
x3e;2]|0){b=Kc(c[j>>2]|0,0)|0;c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]=b}else c[(c[n>
;>2]|0)+(c[o>>2]<<2)>>2]=0;if(!(c[(c[n>>2]|0)+(c[o>>2]<<2)>
;>2]|0)){b=Za[c[96+(c[o>>2]<<3)>>2]&31](c[h>>2]|0,c[j>>2]|0,c[k>
;>2]|0,(c[l>>2]|0)+(c[o>>2]<<2)|0,(c[m>>2]|0)+(c[o>>2]<<2)|0)|0
;c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]=b}c[o>>2]=(c[o>>2]|0)+1}i=p;return}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,m=0,n=0,o=0;n=i;i=i+32|0;g=n+24|0;h=n+20|0;j=n+16|0;k=n+12|
0;o=n+8|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[o>>2]=e;c[l>>2]=f;c[m>
;>2]=333319;c[c[o>>2]>>2]=0;if(!(c[j>>2]|0)){c[g>>2]=81;o=c[g>>2]|0;i=n;return
o|0}else{c[g>>2]=gd(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[m>>2]|0,c[l>>2]|
0)|0;o=c[g>>2]|0;i=n;return o|0}return 0}function gd(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,v=0,w=0,x=0;v=i;i=i+64|0;r=v+52|0;x=v+48|0;m=v+44|0;w=v+40|0;j=v+36|0;s=v+32|0;k=v+28|0;u=v+24|0;l=v
+20|0;q=v+56|0;p=v+16|0;n=v+12|0;t=v+8|0;o=v+4|0;c[x>>2]=a;c[m>>2]=d;c[w>>2]=f;c[j>>2]=g
;c[s>>2]=h;c[l>>2]=0;c[o>>2]=0;c[v>>2]=2;c[x>>2]=c[x>>2];c[w>
x3e;2]=c[w>>2];c[l>>2]=c[l>>2];c[o>>2]=c[o>>2];c[k>>2]=Oc(c[m>
x3e;2]|0,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}if((c[k>>
;2]|0)!=(c[j>>2]|0)){c[r>>2]=2;x=c[r>>2]|0;i=v;return x|0}c[l>>2]=Oc(c[m>>2]|0
,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}c[u>>2]=Qc(c[m
x3e;>2]|0,16)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}b[q>
x3e;1]=Pc(c[m>>2]|0,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return
x|0}if(!(e[q>>1]|0)){c[r>>2]=2;x=c[r>>2]|0;i=v;return x|0}c[p>>2]=0;while(1){if((c[p>
;>2]|0)>=(e[q>>1]|0|0)){j=24;break}c[n>>2]=Oc(c[m>>2]|0,u)|0;if(c[u>>2]|0){j=16
;break}j=c[m>>2]|0;if((c[n>>2]|0)==2){c[t>>2]=Oc(j,u)|0;if((c[u>>2]|0)==0?(c[o>>
;2]=Oc(c[m>>2]|0,u)|0,(c[u>>2]|0)==0):0){j=20;break}}else{c[u>>2]=Qc(j,8)|0;if(c[u>>2]|0
){j=22;break}}c[p>>2]=(c[p>>2]|0)+1}if((j|0)==16){c[r>>2]=c[u>>2];x=c[r>>2]|0;
i=v;return x|0}else if((j|0)==20){c[c[s>>2]>>2]=c[t>>2];c[r>>2]=0;x=c[r>>2]|0;
i=v;return x|0}else if((j|0)==22){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}else if((j|0)==24){c[
r>>2]=2;x=c[r>>2]|0;i=v;return x|0}return 0}function hd(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;n=i;i=i+32|0;g=n+24|0;h=n+20|0;j=n+16|0;k=n+12|0;o=n+8|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>
;2]=b;c[k>>2]=d;c[o>>2]=e;c[l>>2]=f;c[m>>2]=333312;c[c[o>>2]>>2]=0;if
(!(c[j>>2]|0)){c[g>>2]=81;o=c[g>>2]|0;i=n;return o|0}else{c[g>>2]=gd(c[h>>2]|0
,c[j>>2]|0,c[k>>2]|0,c[m>>2]|0,c[l>>2]|0)|0;o=c[g>>2]|0;i=n;return o|0}return
0}function id(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;o=i;i=i+48|0;g=o+32|0;h=o+28|
0;q=o+24|0;p=o+20|0;j=o+16|0;k=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;c[p>>2]=d;c[j>
x3e;2]=e;c[k>>2]=f;c[q>>2]=c[q>>2];c[m>>2]=c[c[h>>2]>>2];c[n>
x3e;2]=jd(c[m>>2]|0,c[p>>2]|0,10421)|0;if(!(c[n>>2]|0)){c[g>>2]=64;q=c[g>>2]|0
;i=o;return q|0}c[l>>2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;if(c[l>>2]|0){Fb(c
[m>>2]|0,c[n>>2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c[n>>2];c[g>
x3e;2]=c[l>>2];q=c[g>>2]|0;i=o;return q|0}function jd(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;f=m+32|0;p=m+28|0;g=m+24|0;h=m+20|0;j=m+16|0;l=m+12|0;k=m+8|0;o=m+4|0;n=m;c[p>>2]=b;c[g>
;>2]=d;c[h>>2]=e;c[j>>2]=0;c[n>>2]=0;c[n>>2]=c[n>>2];d=cs(c[g>>
2]|0)|0;c[o>>2]=d+(cs(c[h>>2]|0)|0);c[j>>2]=bc(c[p>>2]|0,(c[o>>2]|0)+1|0,n)|0;
if(c[n>>2]|0){c[f>>2]=0;p=c[f>>2]|0;i=m;return p|0}c[l>>2]=xs(c[g>>2]|0,47)|0;
if(c[l>>2]|0){as(c[j>>2]|0,c[g>>2]|0,(c[l>>2]|0)-(c[g>>2]|0)+1|0)|0;a[(c[j>
;>2]|0)+((c[l>>2]|0)-(c[g>>2]|0)+1)>>0]=0;c[k>>2]=(c[l>>2]|0)+1}else{c[k
x3e;>2]=c[g>>2];a[c[j>>2]>>0]=0}zs(c[j>>2]|0,c[h>>2]|0)|0;zs(c[j>>
;2]|0,c[k>>2]|0)|0;c[f>>2]=c[j>>2];p=c[f>>2]|0;i=m;return p|0}function kd(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;m=i;i=i+64|0;e=m+60|0;f=m+56|0;g=m+52|0;h=m+48|0;n=m+16|0;l=m+8|0;k=m+4|0;j=m
;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=0;c[n>>2]=4;c[n+12>>2]=c[g>
;>2];c[j>>2]=tc(c[f>>2]|0,n,l)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];n=c[e>
;>2]|0;i=m;return n|0}else{c[j>>2]=fd(c[f>>2]|0,c[l>>2]|0,c[g>>2]|0,k,c[h>>
;2]|0)|0;vc(c[l>>2]|0,0);c[e>>2]=c[j>>2];n=c[e>>2]|0;i=m;return n|0}return 0}function ld
(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;q=i;i=i+48|0;m=q+36|0;r=q+32|0;s=q+28|
0;h=q+24|0;n=q+20|0;o=q+16|0;k=q+12|0;p=q+8|0;l=q+4|0;j=q;c[r>>2]=b;c[s>>2]=d;c[h>>2]=e;c[n>
x3e;2]=f;c[o>>2]=g;c[j>>2]=cs(c[h>>2]|0)|0;c[s>>2]=c[s>>2];c[l>>2]=c
[c[r>>2]>>2];if(((c[j>>2]|0)+18|0)>2147483647){c[m>>2]=10;s=c[m>>2]|0;i=q
;return s|0}c[p>>2]=bc(c[l>>2]|0,(c[j>>2]|0)+18|0,k)|0;if(c[k>>2]|0){c[m>>2]=c
[k>>2];s=c[m>>2]|0;i=q;return s|0}else{Ss(c[p>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;h=(
c[p>>2]|0)+(c[j>>2]|0)|0;j=10424;e=h+18|0;do{a[h>>0]=a[j>>0]|0;h=h+1|0;j=j+1|0}while((h|
0)<(e|0));c[c[n>>2]>>2]=c[p>>2];c[c[o>>2]>>2]=0;c[m>>2]=0;s=c[m
>>2]|0;i=q;return s|0}return 0}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,o=0,p=
0,q=0,r=0,s=0;q=i;i=i+48|0;h=q+36|0;r=q+32|0;s=q+28|0;j=q+24|0;k=q+20|0;l=q+16|0;n=q+12|0;p=q+8|0;o=q+4|0;m=q;c[r>>2]=
b;c[s>>2]=d;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[m>>2]=cs(c[j>>2]|0)|0;c[
s>>2]=c[s>>2];c[o>>2]=c[c[r>>2]>>2];if(((c[m>>2]|0)+6|0)>2147483647
){c[h>>2]=10;s=c[h>>2]|0;i=q;return s|0}c[p>>2]=bc(c[o>>2]|0,(c[m>>2]|0)+6|0,n
)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];s=c[h>>2]|0;i=q;return s|0}else{Ss(c[p>>2]|0
,c[j>>2]|0,c[m>>2]|0)|0;s=(c[p>>2]|0)+(c[m>>2]|0)|0;a[s>>0]=a[10442]|0;a[s+1
x3e;>0]=a[10443]|0;a[s+2>>0]=a[10444]|0;a[s+3>>0]=a[10445]|0;a[s+4>>0]=a[10446]|0;a[s+5>
x3e;0]=a[10447]|0;c[c[k>>2]>>2]=c[p>>2];c[c[l>>2]>>2]=0;c[h>>2]=0;s=
c[h>>2]|0;i=q;return s|0}return 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,m=0,n=0
,o=0,p=0;l=i;i=i+32|0;g=l+28|0;o=l+24|0;p=l+20|0;m=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;n=l;c[o>>2]=a;c[p>>2]=b;c
[m>>2]=d;c[h>>2]=e;c[j>>2]=f;c[p>>2]=c[p>>2];c[n>>2]=c[c[o>>
;2]>>2];c[k>>2]=jd(c[n>>2]|0,c[m>>2]|0,10448)|0;if(c[k>>2]|0){c[c[h>>
;2]>>2]=c[k>>2];c[c[j>>2]>>2]=0;c[g>>2]=0;p=c[g>>2]|0;i=l;return p|0
}else{c[g>>2]=64;p=c[g>>2]|0;i=l;return p|0}return 0}function od(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+32|0;g=l+28|0;o=l+24|0;p=l+20|0;m=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;n=l;c[o>>
;2]=a;c[p>>2]=b;c[m>>2]=d;c[h>>2]=e;c[j>>2]=f;c[p>>2]=c[p>>2];c[n>
;>2]=c[c[o>>2]>>2];c[k>>2]=jd(c[n>>2]|0,c[m>>2]|0,10462)|0;if(c[k>
x3e;2]|0){c[c[h>>2]>>2]=c[k>>2];c[c[j>>2]>>2]=0;c[g>>2]=0;p=c[g>
;>2]|0;i=l;return p|0}else{c[g>>2]=64;p=c[g>>2]|0;i=l;return p|0}return 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;o=i;i=i+48|0;g=o+32|0;h=o+28|0;q=o+24|0;p=o+20|0;j=o+16|0;k=
o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;c[p>>2]=d;c[j>>2]=e;c[k>>2]=f;c
[q>>2]=c[q>>2];c[m>>2]=c[c[h>>2]>>2];c[n>>2]=jd(c[m>>2]|0,
c[p>>2]|0,10473)|0;if(!(c[n>>2]|0)){c[g>>2]=64;q=c[g>>2]|0;i=o;return q|0}c[l>>
;2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;if(c[l>>2]|0){Fb(c[m>>2]|0,c[n>
x3e;2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c[n>>2];c[g>>2]=c[l>>2];q=c[g
>>2]|0;i=o;return q|0}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,p=0,q=0
;o=i;i=i+48|0;g=o+32|0;h=o+28|0;q=o+24|0;p=o+20|0;j=o+16|0;k=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;
c[p>>2]=d;c[j>>2]=e;c[k>>2]=f;c[q>>2]=c[q>>2];c[m>>2]=c[c[h>>
;2]>>2];c[n>>2]=jd(c[m>>2]|0,c[p>>2]|0,10475)|0;if(!(c[n>>2]|0)){c[g>>
;2]=64;q=c[g>>2]|0;i=o;return q|0}c[l>>2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;
if(c[l>>2]|0){Fb(c[m>>2]|0,c[n>>2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c
[n>>2];c[g>>2]=c[l>>2];q=c[g>>2]|0;i=o;return q|0}function rd(b){b=b|0;var d=0,e=0,f=0;e
=i;i=i+16|0;d=e+4|0;f=e;c[f>>2]=b;if(((sd(c[f>>2]|0)|0)+-3|0)>>>0<2){a[d>>0]=1
;f=a[d>>0]|0;i=e;return f|0}else{a[d>>0]=0;f=a[d>>0]|0;i=e;return f|0}return 0}function sd(a){a=a|
0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[d>>2]=a;if((c[d>>2]|0)>>>0>=9){c[b>>
;2]=-2;a=c[b>>2]|0;i=e;return a|0}else{c[b>>2]=c[96+(c[d>>2]<<3)+4>>2];a=c[b
x3e;>2]|0;i=e;return a|0}return 0}function td(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|0)+4>>2];c[(c[e>>2]|0)+4>>2
]=0;c[c[e>>2]>>2]=c[f>>2];a=c[e>>2]|0;if(c[f>>2]|0){c[(c[f>>2]|0)+4
x3e;>2]=a;e=c[e>>2]|0;f=c[d>>2]|0;f=f+4|0;c[f>>2]=e;i=g;return}else{c[c[d>>2]>
x3e;2]=a;e=c[e>>2]|0;f=c[d>>2]|0;f=f+4|0;c[f>>2]=e;i=g;return}}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;n=i;i=i+48|0;d=n+32|0;e=n+28|0;f=n+24|0;j=n+20|0;k=n+16|0;h=n+12|0;g=n+8|0;m=n+4|0;l=n;c[e
>>2]=a;c[f>>2]=b;c[m>>2]=0;c[l>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=35;m=c
[d>>2]|0;i=n;return m|0}if(!(c[f>>2]|0)){c[d>>2]=36;m=c[d>>2]|0;i=n;return m|0}if(!(c[(c
[e>>2]|0)+96>>2]|0)){c[d>>2]=34;m=c[d>>2]|0;i=n;return m|0}c[c[f>>2]>>
;2]=0;c[h>>2]=c[(c[e>>2]|0)+96>>2];c[g>>2]=c[(c[h>>2]|0)+20>>2];c[k
x3e;>2]=c[(c[e>>2]|0)+100>>2];c[m>>2]=bc(c[k>>2]|0,c[(c[g>>2]|0)+40>
x3e;2]|0,j)|0;if((c[j>>2]|0)==0?(c[l>>2]=bc(c[k>>2]|0,12,j)|0,(c[j>>2]|0)==0):0){c[c[m
x3e;>2]>>2]=c[e>>2];c[(c[m>>2]|0)+40>>2]=0;if(c[(c[g>>2]|0)+56>>
;2]|0)c[j>>2]=Ta[c[(c[g>>2]|0)+56>>2]&63](c[m>>2]|0)|0;if(!(c[j>>2]|0)){c
[c[f>>2]>>2]=c[m>>2];c[(c[l>>2]|0)+8>>2]=c[m>>2];td((c[e>>
2]|0)+108|0,c[l>>2]|0)}}if(c[j>>2]|0){Fb(c[k>>2]|0,c[l>>2]|0);c[l>>2]=0;Fb(c[k
>>2]|0,c[m>>2]|0);c[m>>2]=0}c[d>>2]=c[j>>2];m=c[d>>2]|0;i=n;return m
|0}function vd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;e=h+12|0;d=h+8|0;f=h+4|0;g=h;c[b>>2]=a;c[e
x3e;>2]=35;if(!(c[b>>2]|0)){g=c[e>>2]|0;i=h;return g|0}if(!(c[(c[b>>2]|0)+96>>2]|0)){
g=c[e>>2]|0;i=h;return g|0}a=(c[(c[b>>2]|0)+128>>2]|0)+60|0;c[a>>2]=(c[a>>2]|0
)+-1;if((c[(c[(c[b>>2]|0)+128>>2]|0)+60>>2]|0)>>>0>0){c[e>>2]=0;g=c[
e>>2]|0;i=h;return g|0}c[d>>2]=c[(c[b>>2]|0)+96>>2];c[f>>2]=c[(c[d>>
2]|0)+8>>2];c[g>>2]=Rb((c[d>>2]|0)+24|0,c[b>>2]|0)|0;if(!(c[g>>2]|0)){g=c[e>
;>2]|0;i=h;return g|0}wd((c[d>>2]|0)+24|0,c[g>>2]|0);Fb(c[f>>2]|0,c[g>>2]|0);c[g>
;>2]=0;xd(c[f>>2]|0,c[b>>2]|0,c[d>>2]|0);c[e>>2]=0;g=c[e>>2]|0;i=h;return
g|0}function wd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+12|0;h=g+8|0;d=g+4|0;f=g;c[e>>2]=a;c[h>
;>2]=b;c[d>>2]=c[c[h>>2]>>2];c[f>>2]=c[(c[h>>2]|0)+4>>2];a=c[f
x3e;>2]|0;if(c[d>>2]|0)c[(c[d>>2]|0)+4>>2]=a;else c[c[e>>2]>>2]=a;a=c[d
x3e;>2]|0;if(c[f>>2]|0){c[c[f>>2]>>2]=a;i=g;return}else{c[(c[e>>2]|0)+4>>
2]=a;i=g;return}}function xd(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[(c[g>>2]|0)+20>>2];if(c[(c[f>
x3e;2]|0)+116+4>>2]|0)Va[c[(c[f>>2]|0)+116+4>>2]&63](c[(c[f>>2]|0)+116>>2
]|0);while(1){d=c[f>>2]|0;if(!(c[(c[f>>2]|0)+84>>2]|0))break;Bc(c[d+84>>2]|0)}zd(d+108|0
,7,c[e>>2]|0,c[g>>2]|0);c[(c[f>>2]|0)+88>>2]=0;if(c[(c[f>>2]|0)+44+4>>
;2]|0)Va[c[(c[f>>2]|0)+44+4>>2]&63](c[f>>2]|0);Ic(c[f>>2]|0,c[e>>2]|0);if
(c[(c[h>>2]|0)+52>>2]|0)Va[c[(c[h>>2]|0)+52>>2]&63](c[f>>2]|0);vc(c[(c[f
x3e;>2]|0)+104>>2]|0,(c[(c[f>>2]|0)+8>>2]&1024|0)!=0&1);c[(c[f>>2]|0)+104
>>2]=0;if(!(c[(c[f>>2]|0)+128>>2]|0)){g=c[e>>2]|0;h=c[f>>2]|0;Fb(g,h);c[f>
;>2]=0;i=j;return}Fb(c[e>>2]|0,c[(c[f>>2]|0)+128>>2]|0);c[(c[f>>2]|0)+128>>
;2]=0;g=c[e>>2]|0;h=c[f>>2]|0;Fb(g,h);c[f>>2]=0;i=j;return}function yd(a,b,d){a=a|0;b=b|0;d=d|0;var
e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[(c[f>>
;2]|0)+4+4>>2]|0)Va[c[(c[f>>2]|0)+4+4>>2]&63](c[f>>2]|0);if(c[(c[(c[g>>2]|
0)+20>>2]|0)+60>>2]|0)Va[c[(c[(c[g>>2]|0)+20>>2]|0)+60>>2]&63](c[f>
x3e;2]|0);Fb(c[e>>2]|0,c[(c[f>>2]|0)+40>>2]|0);c[(c[f>>2]|0)+40>>2]=0;Fb(c[e
x3e;>2]|0,c[f>>2]|0);c[f>>2]=0;i=h;return}function zd(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;c[f>>2]=a;c[g>>2]=b
;c[h>>2]=d;c[j>>2]=e;c[k>>2]=c[c[f>>2]>>2];while(1){if(!(c[k>>2]|0))
break;c[m>>2]=c[(c[k>>2]|0)+4>>2];c[l>>2]=c[(c[k>>2]|0)+8>>2];if(c[g
>>2]|0)Ua[c[g>>2]&31](c[h>>2]|0,c[l>>2]|0,c[j>>2]|0);Fb(c[h>>2]|
0,c[k>>2]|0);c[k>>2]=0;c[k>>2]=c[m>>2]}c[c[f>>2]>>2]=0;c[(c[f>
x3e;2]|0)+4>>2]=0;i=n;return}function Ad(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;s=i;i=i+48|0;h=s+28|0;j=s+24|0;k=s+20|0;l=s+32|0;m=s+16|0;p=s+12|0;q=s+8|0;o=s+4|0;n=s;c[j>>2]=b;c[k>>2]=
e;a[l>>0]=f;c[m>>2]=g;if(!(c[(c[j>>2]|0)+8>>2]&2)){c[h>>2]=35;r=c[h>
x3e;2]|0;i=s;return r|0}if(c[c[k>>2]>>2]|0){c[h>>2]=7;r=c[h>>2]|0;i=s;return r|0}b=c[(c[
k>>2]|0)+4>>2]|0;if(c[(c[k>>2]|0)+12>>2]|0)b=((_(b,c[(c[k>>2]|0)+12>>
;2]|0)|0)+36|0)/72|0;c[q>>2]=b;b=c[(c[k>>2]|0)+8>>2]|0;if(c[(c[k>>2]|0)+16>>2]|
0)b=((_(b,c[(c[k>>2]|0)+16>>2]|0)|0)+36|0)/72|0;c[o>>2]=b;if(c[(c[k>>2]|0)+4>>
2]|0?!(c[(c[k>>2]|0)+8>>2]|0):0)c[o>>2]=c[q>>2];else r=12;if(((r|0)==12?(c[(c[k>>
;2]|0)+4>>2]|0)==0:0)?c[(c[k>>2]|0)+8>>2]|0:0)c[q>>2]=c[o>>2];c[q>>2
]=(c[q>>2]|0)+32&-64;c[o>>2]=(c[o>>2]|0)+32&-64;c[p>>2]=0;while(1){if((c[p>
;>2]|0)>=(c[(c[j>>2]|0)+28>>2]|0)){r=24;break}c[n>>2]=(c[(c[j>>2]|0)+32>
x3e;2]|0)+(c[p>>2]<<4);if((c[o>>2]|0)==((c[(c[n>>2]|0)+12>>2]|0)+32&-64|0
)){if((c[q>>2]|0)==((c[(c[n>>2]|0)+8>>2]|0)+32&-64|0))break;if(d[l>>0]|0|0)break}c[
p>>2]=(c[p>>2]|0)+1}if((r|0)==24){c[h>>2]=23;r=c[h>>2]|0;i=s;return r|0}if(c[m>>
;2]|0)c[c[m>>2]>>2]=c[p>>2];c[h>>2]=0;r=c[h>>2]|0;i=s;return r|0}function Bd(a
,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c
[(c[d>>2]|0)+4>>2];if((c[(c[d>>2]|0)+12>>2]|0)<0){if((c[f>>2]|0)<(c[(
c[d>>2]|0)+12>>2]|0))c[f>>2]=c[(c[d>>2]|0)+12>>2]}else if((c[(c[d>>2
]|0)+12>>2]|0)>0)c[f>>2]=(c[f>>2]|0)-(c[(c[d>>2]|0)+12>>2]|0);if(!(c[e>
;>2]|0))c[e>>2]=((c[f>>2]|0)*12|0)/10|0;c[(c[d>>2]|0)+20>>2]=(c[(c[d>>2]|
0)+8>>2]|0)-((c[(c[d>>2]|0)+16>>2]|0)/2|0);c[(c[d>>2]|0)+24>>2]=((c[e>>
;2]|0)-(c[f>>2]|0)|0)/2|0;c[(c[d>>2]|0)+28>>2]=c[e>>2];i=g;return}function Cd(a,d){a=a|0
;d=d|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;f=j+12|0;k=j+8|0;h=j+4|0;g=j;c[f>>2]=a;c[k>>2]=d;c[h>>
2]=(c[(c[f>>2]|0)+88>>2]|0)+12;c[g>>2]=(c[(c[f>>2]|0)+32>>2]|0)+(c[k>>
;2]<<4);b[c[h>>2]>>1]=(c[(c[g>>2]|0)+8>>2]|0)+32>>6;b[(c[h>>
;2]|0)+2>>1]=(c[(c[g>>2]|0)+12>>2]|0)+32>>6;if(c[(c[f>>2]|0)+8>>2]
x26;1|0){k=Vb(c[(c[g>>2]|0)+8>>2]|0,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[h>>2]|0)+4
x3e;>2]=k;k=Vb(c[(c[g>>2]|0)+12>>2]|0,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[h>>2
]|0)+8>>2]=k;Dd(c[f>>2]|0,c[h>>2]|0);i=j;return}else{c[(c[h>>2]|0)+4>>2]=65536
;c[(c[h>>2]|0)+8>>2]=65536;c[(c[h>>2]|0)+12>>2]=c[(c[g>>2]|0)+12>>2];
c[(c[h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+20>>2]=b[c[g>>2]>>1]<<
;6;c[(c[h>>2]|0)+24>>2]=c[(c[g>>2]|0)+8>>2];i=j;return}}function Dd(a,d){a=a|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]=a;c[f>>2]=d;d=(Mb(b[(c[g>>2]|0)+70>>1]|0,c
[(c[f>>2]|0)+8>>2]|0)|0)+63&-64;c[(c[f>>2]|0)+12>>2]=d;d=(Mb(b[(c[g>>2]|0
)+72>>1]|0,c[(c[f>>2]|0)+8>>2]|0)|0)&-64;c[(c[f>>2]|0)+16>>2]=d;d=(Mb(b[(
c[g>>2]|0)+74>>1]|0,c[(c[f>>2]|0)+8>>2]|0)|0)+32&-64;c[(c[f>>2]|0)+20>
;>2]=d;d=(Mb(b[(c[g>>2]|0)+76>>1]|0,c[(c[f>>2]|0)+4>>2]|0)|0)+32&-64;c[(c[f>
;>2]|0)+24>>2]=d;i=e;return}function Ed(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;o=i;i=i+32|0;j=o
+24|0;k=o+20|0;l=o+16|0;h=o+12|0;g=o+8|0;n=o+4|0;m=o;c[j>>2]=a;c[k>>2]=d;c[l>>2]=(c[(c[j>>
;2]|0)+88>>2]|0)+12;if(!(c[(c[j>>2]|0)+8>>2]&1)){n=c[l>>2]|0;c[n>>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[(c[l>>2]|0)+4>>2]=65536;c[(c[l>>2]|0)+8>>2]=65536;i=o;return}c[h>>2]=0
;c[g>>2]=0;c[n>>2]=0;c[m>>2]=0;a:do switch(c[c[k>>2]>>2]|0){case 0:{f=e[(c[j
x3e;>2]|0)+68>>1]|0;c[g>>2]=f;c[h>>2]=f;f=11;break}case 1:{f=(b[(c[j>>2]|0)+70>
;>1]|0)-(b[(c[j>>2]|0)+72>>1]|0)|0;c[g>>2]=f;c[h>>2]=f;f=11;break}case 2:{c[h>
x3e;2]=(c[(c[j>>2]|0)+52+8>>2]|0)-(c[(c[j>>2]|0)+52>>2]|0);c[g>>2]=(c[(c[j>
;>2]|0)+52+12>>2]|0)-(c[(c[j>>2]|0)+52+4>>2]|0);f=11;break}case 3:{c[h>>2]=b[(c[j
x3e;>2]|0)+76>>1];c[g>>2]=(b[(c[j>>2]|0)+70>>1]|0)-(b[(c[j>>2]|0)+72>
;>1]|0);f=11;break}case 4:{c[(c[l>>2]|0)+4>>2]=c[(c[k>>2]|0)+4>>2];c[(c[l>>
;2]|0)+8>>2]=c[(c[k>>2]|0)+8>>2];a=c[(c[l>>2]|0)+8>>2]|0;if(!(c[(c[l>>
;2]|0)+4>>2]|0)){c[(c[l>>2]|0)+4>>2]=a;break a}if(!a)c[(c[l>>2]|0)+8>>2]=c[(c[
l>>2]|0)+4>>2];break}default:f=11}while(0);do if((f|0)==11){if((c[h>>2]|0)<0)c[h>>2
]=0-(c[h>>2]|0);if((c[g>>2]|0)<0)c[g>>2]=0-(c[g>>2]|0);a=c[(c[k>>2]|0)+4
x3e;>2]|0;if(c[(c[k>>2]|0)+12>>2]|0)a=((_(a,c[(c[k>>2]|0)+12>>2]|0)|0)+36|0)/72|0;c
[n>>2]=a;a=c[(c[k>>2]|0)+8>>2]|0;if(c[(c[k>>2]|0)+16>>2]|0)a=((_(a,c[(c[k>
;>2]|0)+16>>2]|0)|0)+36|0)/72|0;c[m>>2]=a;if(!(c[(c[k>>2]|0)+4>>2]|0)){f=Vb(c[m>
;>2]|0,c[g>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=f;c[(c[l>>2]|0)+4>>2]=f;c[n>
x3e;2]=xb(c[m>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;break}f=Vb(c[n>>2]|0,c[h>>2]|0)|0;c
[(c[l>>2]|0)+4>>2]=f;if(!(c[(c[k>>2]|0)+8>>2]|0)){c[(c[l>>2]|0)+8>>2
]=c[(c[l>>2]|0)+4>>2];c[m>>2]=xb(c[n>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;break
}h=Vb(c[m>>2]|0,c[g>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=h;if((c[c[k>>2]>>2]|
0)==3){a=c[l>>2]|0;if((c[(c[l>>2]|0)+8>>2]|0)>(c[(c[l>>2]|0)+4>>2]|0)){c[(
c[l>>2]|0)+8>>2]=c[a+4>>2];break}else{c[(c[l>>2]|0)+4>>2]=c[a+8>>2];
break}}}while(0);if(c[c[k>>2]>>2]|0){c[n>>2]=Mb(e[(c[j>>2]|0)+68>>1]|0,c[(c[l
x3e;>2]|0)+4>>2]|0)|0;c[m>>2]=Mb(e[(c[j>>2]|0)+68>>1]|0,c[(c[l>>2]|0)+8
x3e;>2]|0)|0}b[c[l>>2]>>1]=(c[n>>2]|0)+32>>6;b[(c[l>>2]|0)+2>>1
]=(c[m>>2]|0)+32>>6;Dd(c[j>>2]|0,c[l>>2]|0);i=o;return}function Fd(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0?c[(
c[e>>2]|0)+8>>2]&2|0:0){if((c[f>>2]|0)>=0?(c[f>>2]|0)<(c[(c[e>>
2]|0)+28>>2]|0):0){c[g>>2]=c[(c[(c[e>>2]|0)+96>>2]|0)+20>>2];if(c[(c[g>
x3e;2]|0)+100>>2]|0){c[d>>2]=Ya[c[(c[g>>2]|0)+100>>2]&127](c[(c[e>>2]|0)+
88>>2]|0,c[f>>2]|0)|0;b=c[d>>2]|0;i=h;return b|0}else{Cd(c[e>>2]|0,c[f>>2]|0);
c[d>>2]=0;b=c[d>>2]|0;i=h;return b|0}}c[d>>2]=6;b=c[d>>2]|0;i=h;return b|0}c[d>>
;2]=35;b=c[d>>2]|0;i=h;return b|0}function Gd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e
=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=35;j=c
[d>>2]|0;i=k;return j|0}if(((c[f>>2]|0?(c[(c[f>>2]|0)+4>>2]|0)>=0:0)?(c[(c[f>
x3e;2]|0)+8>>2]|0)>=0:0)?(c[c[f>>2]>>2]|0)>>>0<5:0){c[g>>2]=c[(
c[(c[e>>2]|0)+96>>2]|0)+20>>2];if(c[(c[g>>2]|0)+96>>2]|0){c[d>>2]=Ya
[c[(c[g>>2]|0)+96>>2]&127](c[(c[e>>2]|0)+88>>2]|0,c[f>>2]|0)|0;j=c[d>
;>2]|0;i=k;return j|0}if((c[(c[e>>2]|0)+8>>2]&1|0)==0?c[(c[e>>2]|0)+8>>2]&
;2|0:0){c[h>>2]=Ad(c[e>>2]|0,c[f>>2]|0,0,j)|0;if(c[h>>2]|0){c[d>>2]=c[h>
x3e;2];j=c[d>>2]|0;i=k;return j|0}else{c[d>>2]=Fd(c[e>>2]|0,c[j>>2]|0)|0;j=c[d>>
;2]|0;i=k;return j|0}}Ed(c[e>>2]|0,c[f>>2]|0);c[d>>2]=0;j=c[d>>2]|0;i=k;return j|0}c[d
x3e;>2]=6;j=c[d>>2]|0;i=k;return j|0}function Hd(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;n=i;i=i+48|0;g=n+36|0;h=n+32|0;j=n+28|0;k=n+24|0;l=n+20|0;m=n;c[g>>2]=a;c[h>>2]=b;c[j>>2]=
d;c[k>>2]=e;c[l>>2]=f;d=c[j>>2]|0;if(c[h>>2]|0){if(!d)c[j>>2]=c[h>>2
]}else c[h>>2]=d;d=c[l>>2]|0;if(c[k>>2]|0){if(!d)c[l>>2]=c[k>>2]}else c[k>
;>2]=d;if((c[h>>2]|0)<64)c[h>>2]=64;if((c[j>>2]|0)<64)c[j>>2]=64;if(!(c[k
>>2]|0)){c[l>>2]=72;c[k>>2]=72}c[m>>2]=0;c[m+4>>2]=c[h>>2];c[m+8>
;>2]=c[j>>2];c[m+12>>2]=c[k>>2];c[m+16>>2]=c[l>>2];m=Gd(c[g>>2]|
0,m)|0;i=n;return m|0}function Id(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+16|0;g=j+12|0;d=j+8|0;h=j+4|0;e=
j;c[g>>2]=a;c[d>>2]=b;if(!(c[g>>2]|0)){c[f>>2]=35;h=c[f>>2]|0;i=j;return h|0}if
(!(c[d>>2]|0)){c[f>>2]=6;h=c[f>>2]|0;i=j;return h|0}b=c[g>>2]|0;if((c[d>>2]|0)==
1970170211){c[f>>2]=Hc(b)|0;h=c[f>>2]|0;i=j;return h|0}c[h>>2]=c[b+40>>2];if(!(c[h>
x3e;2]|0)){c[f>>2]=38;h=c[f>>2]|0;i=j;return h|0}c[e>>2]=(c[h>>2]|0)+(c[(c[g>>
2]|0)+36>>2]<<2);while(1){if((c[h>>2]|0)>>>0>=(c[e>>2]|0)>>
;>0){b=15;break}if((c[(c[c[h>>2]>>2]|0)+4>>2]|0)==(c[d>>2]|0)?(((c[h>>2]|
0)-(c[(c[g>>2]|0)+40>>2]|0)|0)/4|0|0)<=15:0){b=13;break}c[h>>2]=(c[h>>2]|0)+4}if((b
|0)==13){c[(c[g>>2]|0)+92>>2]=c[c[h>>2]>>2];c[f>>2]=0;h=c[f>>2]|0;i=
j;return h|0}else if((b|0)==15){c[f>>2]=6;h=c[f>>2]|0;i=j;return h|0}return 0}function Jd(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+16|0;g=j+12|0;d=j+8|0;h=j+4|0;e=j;c[g>>2]=a;c[d>>2]=b;if(!(c[g>
;>2]|0)){c[f>>2]=35;h=c[f>>2]|0;i=j;return h|0}c[h>>2]=c[(c[g>>2]|0)+40>>
2];if(!(c[h>>2]|0)){c[f>>2]=38;h=c[f>>2]|0;i=j;return h|0}if((Kd(c[d>>2]|0)|0)==14){c[f
x3e;>2]=6;h=c[f>>2]|0;i=j;return h|0}c[e>>2]=(c[h>>2]|0)+(c[(c[g>>2]|0)+36>>
;2]<<2);while(1){if((c[h>>2]|0)>>>0>=(c[e>>2]|0)>>>0){d=13;break
}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)?(((c[h>>2]|0)-(c[(c[g>>2]|0)+40>>
2]|0)|0)/4|0|0)<=15:0){d=11;break}c[h>>2]=(c[h>>2]|0)+4}if((d|0)==11){c[(c[g>>2]|0)+92>
x3e;2]=c[c[h>>2]>>2];c[f>>2]=0;h=c[f>>2]|0;i=j;return h|0}else if((d|0)==13){c[f>
x3e;2]=6;h=c[f>>2]|0;i=j;return h|0}return 0}function Kd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;b=k
+28|0;d=k+24|0;j=k+20|0;g=k+16|0;f=k+8|0;h=k+4|0;e=k;c[d>>2]=a;if(c[d>>2]|0?c[c[d>>2]>>2
]|0:0){c[g>>2]=c[c[d>>2]>>2];c[h>>2]=c[(c[g>>2]|0)+96>>2];c[e>
x3e;2]=0;if(c[(c[c[h>>2]>>2]|0)+32>>2]|0)c[e>>2]=Ya[c[(c[c[h>>2]>>2]|
0)+32>>2]&127](c[h>>2]|0,11426)|0;c[j>>2]=c[e>>2];if(!(c[j>>2]|0)){c[b>
;>2]=-1;j=c[b>>2]|0;i=k;return j|0}if(Ya[c[c[j>>2]>>2]&127](c[d>>2]|0,f)|0){c[
b>>2]=-1;j=c[b>>2]|0;i=k;return j|0}else{c[b>>2]=c[f+4>>2];j=c[b>>2]|0;i=k;return
j|0}}c[b>>2]=-1;j=c[b>>2]|0;i=k;return j|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,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;f=q+32|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;l=q;c[g>>
;2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=0;if(!((c[g>>2]|0)==0|(c[j>
x3e;2]|0)==0)?c[c[j>>2]>>2]|0:0){c[n>>2]=c[c[j>>2]>>2];c[o>>2]=c[(c[
n>>2]|0)+100>>2];c[l>>2]=bc(c[o>>2]|0,c[c[g>>2]>>2]|0,m)|0;do if(!(c
[m>>2]|0)){b=c[l>>2]|0;a=c[j>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4
x3e;>2];c[b+8>>2]=c[a+8>>2];c[(c[l>>2]|0)+12>>2]=c[g>>2];if(!(c[(c[g>
;>2]|0)+4>>2]|0?(c[m>>2]=Ya[c[(c[g>>2]|0)+4>>2]&127](c[l>>2]|0,c[h
x3e;>2]|0)|0,(c[m>>2]|0)!=0):0))p=7;if((p|0)==7?(p=hc(c[o>>2]|0,4,c[(c[n>>2]|0)+36>>
;2]|0,(c[(c[n>>2]|0)+36>>2]|0)+1|0,c[(c[n>>2]|0)+40>>2]|0,m)|0,c[(c[n>>2]|0)+40
>>2]=p,(c[m>>2]|0)==0):0){o=c[l>>2]|0;b=(c[n>>2]|0)+36|0;p=c[b>>2]|0;c[b>
x3e;2]=p+1;c[(c[(c[n>>2]|0)+40>>2]|0)+(p<<2)>>2]=o;break}Jc(c[l>>2]|0);c[l>
;>2]=0}while(0);if(c[k>>2]|0)c[c[k>>2]>>2]=c[l>>2];c[f>>2]=c[m>>
;2];p=c[f>>2]|0;i=q;return p|0}c[f>>2]=6;p=c[f>>2]|0;i=q;return p|0}function Md(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;m=i;i=i+32|0;e=m+24|0;f=m+20|0;g=m+16|0;l=m+12|0;k=m+8|0;j=m+4|0;h=m;c[e>>2
]=a;c[f>>2]=b;c[g>>2]=d;c[l>>2]=0;c[k>>2]=0;if((c[e>>2]|0?c[(c[e>>2]|
0)+92>>2]|0:0)?c[(c[e>>2]|0)+16>>2]|0:0){c[j>>2]=c[f>>2];c[h>>2]=c[(
c[e>>2]|0)+92>>2];do c[k>>2]=Ya[c[(c[(c[h>>2]|0)+12>>2]|0)+16>>2]&
;127](c[h>>2]|0,j)|0;while((c[k>>2]|0)>>>0>=(c[(c[e>>2]|0)+16>>2]|0)
x3e;>>0);c[l>>2]=(c[k>>2]|0)==0?0:c[j>>2]|0}if(!(c[g>>2]|0)){l=c[l>>
2]|0;i=m;return l|0}c[c[g>>2]>>2]=c[k>>2];l=c[l>>2]|0;i=m;return l|0}function Nd(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;p=i;i=i+48|0;d=p+36|0;e=p+32|0;f=p+28|0;j=p+24|0;k=p+20|0;l=p+16|0
;m=p+12|0;g=p+8|0;h=p+4|0;n=p;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=33;o=c[d>
;>2]|0;i=p;return o|0}if(!(c[f>>2]|0)){c[d>>2]=6;o=c[d>>2]|0;i=p;return o|0}if((c[(c[f>
x3e;2]|0)+16>>2]|0)>131076){c[d>>2]=4;o=c[d>>2]|0;i=p;return o|0}c[m>>2]=0;while(1){
if((c[m>>2]|0)>>>0>=(c[(c[e>>2]|0)+24>>2]|0)>>>0)break;c[l>
;>2]=c[(c[e>>2]|0)+28+(c[m>>2]<<2)>>2];if(!(Kr(c[(c[c[l>>2]>>2]|
0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0)){o=10;break}c[m>>2]=(c[m>>2]|0)+1}do if((
o|0)==10){if((c[(c[f>>2]|0)+12>>2]|0)>(c[(c[c[l>>2]>>2]|0)+12>>2]|0)){Od(
c[e>>2]|0,c[l>>2]|0)|0;break}c[d>>2]=5;o=c[d>>2]|0;i=p;return o|0}while(0);c[k>>
;2]=c[c[e>>2]>>2];c[j>>2]=0;a:do if((c[(c[e>>2]|0)+24>>2]|0)>>>
0<32){c[l>>2]=bc(c[k>>2]|0,c[(c[f>>2]|0)+4>>2]|0,j)|0;if(!(c[j>>2]|0)){c[(
c[l>>2]|0)+4>>2]=c[e>>2];c[(c[l>>2]|0)+8>>2]=c[k>>2];c[c[l>>
;2]>>2]=c[f>>2];if(!(c[c[c[l>>2]>>2]>>2]&2|0?(c[j>>2]=Td(c[l>
;>2]|0)|0,(c[j>>2]|0)!=0):0))o=19;do if((o|0)==19){if(c[c[c[l>>2]>>2]>>2]&4|0)
c[(c[e>>2]|0)+168>>2]=c[l>>2];if((c[c[c[l>>2]>>2]>>2]&1|0?(c[g
x3e;>2]=c[l>>2],c[(c[g>>2]|0)+20>>2]=c[c[l>>2]>>2],(c[c[c[g>>2]
x3e;>2]>>2]&512|0)==0):0)?(c[j>>2]=ac(c[k>>2]|0,(c[g>>2]|0)+36|0)|0,c[j>
x3e;2]|0):0)break;if(c[(c[f>>2]|0)+24>>2]|0?(c[j>>2]=Ta[c[(c[f>>2]|0)+24>>2]
x26;63](c[l>>2]|0)|0,c[j>>2]|0):0)break;n=c[l>>2]|0;m=(c[e>>2]|0)+24|0;o=c[m>>
2]|0;c[m>>2]=o+1;c[(c[e>>2]|0)+28+(o<<2)>>2]=n;break a}while(0);if(c[c[c[l>>2]
x3e;>2]>>2]&1|0?(c[h>>2]=c[l>>2],(c[c[c[h>>2]>>2]>>2]&
;512|0)==0):0)fc(c[(c[h>>2]|0)+36>>2]|0);if((c[c[c[l>>2]>>2]>>2]&2|0?(c[n
>>2]=c[l>>2],(c[(c[(c[n>>2]|0)+20>>2]|0)+36>>2]|0)==1869968492):0)?c[(c[n>
;>2]|0)+60>>2]|0:0)Va[c[(c[(c[(c[n>>2]|0)+20>>2]|0)+56>>2]|0)+20>>2]&
;63](c[(c[n>>2]|0)+60>>2]|0);Fb(c[k>>2]|0,c[l>>2]|0);c[l>>2]=0}}else c[j>
x3e;2]=48;while(0);c[d>>2]=c[j>>2];o=c[d>>2]|0;i=p;return o|0}function Od(a,b){a=a|0;b=b|0;var d=0
,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;if(!(c[e>
x3e;2]|0)){c[d>>2]=33;b=c[d>>2]|0;i=j;return b|0}a:do if(c[f>>2]|0){c[g>>2]=(c[e>
x3e;2]|0)+28;c[h>>2]=(c[g>>2]|0)+(c[(c[e>>2]|0)+24>>2]<<2);while(1){if((c[g>
;>2]|0)>>>0>=(c[h>>2]|0)>>>0)break a;if((c[c[g>>2]>>2]|0)==(
c[f>>2]|0))break;c[g>>2]=(c[g>>2]|0)+4}b=(c[e>>2]|0)+24|0;c[b>>2]=(c[b>
x3e;2]|0)+-1;c[h>>2]=(c[h>>2]|0)+-4;while(1){if((c[g>>2]|0)>>>0>=(c[h>>
;2]|0)>>>0)break;c[c[g>>2]>>2]=c[(c[g>>2]|0)+4>>2];c[g>>2]=(c[g
>>2]|0)+4}c[c[h>>2]>>2]=0;Pd(c[f>>2]|0);c[d>>2]=0;b=c[d>>2]|0;i=j;return
b|0}while(0);c[d>>2]=34;b=c[d>>2]|0;i=j;return b|0}function Pd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|
0;b=g+12|0;f=g+8|0;d=g+4|0;e=g;c[b>>2]=a;c[f>>2]=c[(c[b>>2]|0)+8>>2];c[d>>2]=c
[c[b>>2]>>2];c[e>>2]=c[(c[b>>2]|0)+4>>2];if(c[(c[b>>2]|0)+12+4>
x3e;2]|0)Va[c[(c[b>>2]|0)+12+4>>2]&63](c[b>>2]|0);if(c[e>>2]|0?(c[(c[e>>2
]|0)+168>>2]|0)==(c[b>>2]|0):0)c[(c[e>>2]|0)+168>>2]=0;if(c[c[c[b>>2]>>
;2]>>2]&2|0)Qd(c[b>>2]|0);if(c[c[c[b>>2]>>2]>>2]&1|0)Sd(c[b>>
;2]|0);if(!(c[(c[d>>2]|0)+28>>2]|0)){f=c[f>>2]|0;a=c[b>>2]|0;Fb(f,a);c[b>>2]=0
;i=g;return}Va[c[(c[d>>2]|0)+28>>2]&63](c[b>>2]|0);f=c[f>>2]|0;a=c[b>>2]|
0;Fb(f,a);c[b>>2]=0;i=g;return}function Qd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0
;f=h+4|0;g=h;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+4>>2];c[e>>2]=c[c[d>>2]
x3e;>2];c[f>>2]=Rb((c[d>>2]|0)+156|0,c[b>>2]|0)|0;if(!(c[f>>2]|0)){i=h;return}c[g
x3e;>2]=c[b>>2];if((c[(c[(c[g>>2]|0)+20>>2]|0)+36>>2]|0)==1869968492?c[(c[g>
x3e;2]|0)+60>>2]|0:0)Va[c[(c[(c[(c[g>>2]|0)+20>>2]|0)+56>>2]|0)+20>>2]&63
](c[(c[g>>2]|0)+60>>2]|0);wd((c[d>>2]|0)+156|0,c[f>>2]|0);Fb(c[e>>2]|0,c[f>
;>2]|0);c[f>>2]=0;Rd(c[d>>2]|0);i=h;return}function Rd(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]=Jb(c[d>>2]|0,1869968492,0)|0;c[(c[d>>2]|0)+164>>2]=c[e>
;>2];i=b;return}function Sd(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;zd((c[b>>2]|0)+24|0,8,c[(c[
b>>2]|0)+8>>2]|0,c[b>>2]|0);if(c[c[c[b>>2]>>2]>>2]&512|0){i=d;return
}fc(c[(c[b>>2]|0)+36>>2]|0);i=d;return}function Td(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+
32|0;b=l+24|0;f=l+20|0;g=l+16|0;e=l+12|0;h=l+8|0;j=l+4|0;d=l;c[b>>2]=a;c[f>>2]=c[(c[b>>2]|0)+4>
;>2];c[g>>2]=c[c[f>>2]>>2];c[h>>2]=0;c[h>>2]=bc(c[g>>2]|0,12,e)|
0;if(c[e>>2]|0){k=c[e>>2]|0;i=l;return k|0}c[j>>2]=c[b>>2];c[d>>2]=c[c[b>
x3e;2]>>2];c[(c[j>>2]|0)+20>>2]=c[d>>2];c[(c[j>>2]|0)+24>>2]=c[(c[d
x3e;>2]|0)+36>>2];if((c[(c[d>>2]|0)+36>>2]|0)==1869968492?c[(c[(c[d>>2]|0)+56>
x3e;2]|0)+4>>2]|0:0){c[e>>2]=Ya[c[(c[(c[d>>2]|0)+56>>2]|0)+4>>2]&127](c[g
>>2]|0,(c[j>>2]|0)+60|0)|0;if(!(c[e>>2]|0)){c[(c[j>>2]|0)+64>>2]=c[(c[(c[d>
;>2]|0)+56>>2]|0)+16>>2];c[(c[j>>2]|0)+68>>2]=c[(c[d>>2]|0)+40>>
;2];k=6}}else k=6;if((k|0)==6){c[(c[h>>2]|0)+8>>2]=c[b>>2];td((c[f>>2]|0)+156|0,c[h>
;>2]|0);Rd(c[f>>2]|0)}if(!(c[e>>2]|0)){k=c[e>>2]|0;i=l;return k|0}Fb(c[g>>2]|0,c[h
x3e;>2]|0);c[h>>2]=0;k=c[e>>2]|0;i=l;return k|0}function Ud(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]=Wc(c[g>>2]|0,c[f>>2]|0)|
0;if(!(c[d>>2]|0)){g=0;i=e;return g|0}g=c[(c[c[d>>2]>>2]|0)+20>>2]|0;i=e;return g|0}function
Vd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;j=k+12|0;g=k+8|0;f=k+4|0;h=k;c[d>>
2]=a;c[e>>2]=b;c[j>>2]=0;if(!(c[d>>2]|0)){j=c[j>>2]|0;i=k;return j|0}if(c[(c[c[d>
x3e;2]>>2]|0)+32>>2]|0)c[j>>2]=Ya[c[(c[c[d>>2]>>2]|0)+32>>2]&127
](c[d>>2]|0,c[e>>2]|0)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}c[g>>2]=c[(c
[d>>2]|0)+4>>2];c[f>>2]=(c[g>>2]|0)+28;c[h>>2]=(c[f>>2]|0)+(c[(c[g
x3e;>2]|0)+24>>2]<<2);while(1){if((c[f>>2]|0)>>>0>=(c[h>>2]|0)
x3e;>>0){d=11;break}if(((c[c[f>>2]>>2]|0)!=(c[d>>2]|0)?c[(c[c[c[f>>2]>>
;2]>>2]|0)+32>>2]|0:0)?(c[j>>2]=Ya[c[(c[c[c[f>>2]>>2]>>2]|0)+32>
;>2]&127](c[c[f>>2]>>2]|0,c[e>>2]|0)|0,c[j>>2]|0):0){d=11;break}c[f>>
;2]=(c[f>>2]|0)+4}if((d|0)==11){j=c[j>>2]|0;i=k;return j|0}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;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=b;c[h>>2]=0;
if(!(c[e>>2]|0)){c[d>>2]=6;a=c[d>>2]|0;i=j;return a|0}c[h>>2]=bc(c[e>>2]|0,200
,g)|0;if(c[g>>2]|0){c[d>>2]=c[g>>2];a=c[d>>2]|0;i=j;return a|0}c[c[h>>2]>
x3e;2]=c[e>>2];c[(c[h>>2]|0)+176>>2]=16384;a=bc(c[e>>2]|0,16384,g)|0;c[(c[h>>2
]|0)+172>>2]=a;if(c[g>>2]|0){Fb(c[e>>2]|0,c[h>>2]|0);c[h>>2]=0;c[d>>
2]=c[g>>2];a=c[d>>2]|0;i=j;return a|0}else{c[(c[h>>2]|0)+12>>2]=2;c[(c[h>>2]|0
)+16>>2]=4;c[(c[h>>2]|0)+20>>2]=4;c[(c[h>>2]|0)+196>>2]=1;c[c[f>>2]
x3e;>2]=c[h>>2];c[d>>2]=0;a=c[d>>2]|0;i=j;return a|0}return 0}function Xd(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;p=i;i=i+48|0;g=p+44|0;h=p+40|0;j=p+36|0;k=p+32|0;l=p+28|0;m=p+24|0
;o=p+4|0;n=p;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>
2]=c[(c[c[h>>2]>>2]|0)+96>>2];if(!(c[(c[(c[n>>2]|0)+20>>2]|0)+96>>2]|
0)){c[g>>2]=0;b=c[g>>2]|0;i=p;return b|0}c[o>>2]=0;c[o+4>>2]=c[j>>2];c[o+8>
;>2]=c[k>>2];if(!(c[l>>2]|0))c[l>>2]=c[m>>2];if(!(c[m>>2]|0))c[m>>
;2]=c[l>>2];if(!(c[l>>2]|0)){c[m>>2]=72;c[l>>2]=72}c[o+12>>2]=c[l>>2
];c[o+16>>2]=c[m>>2];c[g>>2]=Ya[c[(c[(c[n>>2]|0)+20>>2]|0)+96>>2]&
;127](c[h>>2]|0,o)|0;b=c[g>>2]|0;i=p;return b|0}function Yd(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;l=i;i=i+48|0;e=l+36|0;f=l+32|0;g=l+28|0;h=l+24|0;k=l+4|0;j=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=
d;c[j>>2]=c[(c[c[f>>2]>>2]|0)+96>>2];if(c[(c[(c[j>>2]|0)+20>>2]|0)+96
>>2]|0){c[k>>2]=0;c[k+4>>2]=c[g>>2]<<6;c[k+8>>2]=c[h>>2]
x3c;<6;c[k+12>>2]=0;c[k+16>>2]=0;c[e>>2]=Ya[c[(c[(c[j>>2]|0)+20>>2]|0)+96
>>2]&127](c[f>>2]|0,k)|0;b=c[e>>2]|0;i=l;return b|0}else{c[e>>2]=0;b=c[e>>
;2]|0;i=l;return b|0}return 0}function Zd(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,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;E=i;i=i+128|0;g=E+124|0;h=E+120|0;j=E+116|0;k=E+112|0;w=E+104|0;v=E+96|0;y=E+88|0;r=E+84|
0;p=E+80|0;u=E+76|0;m=E+72|0;q=E+68|0;n=E+64|0;t=E+60|0;s=E+56|0;l=E+52|0;o=E+48|0;z=E+40|0;A=E+32|0;x=E+24|0;B=E+16|0;C=E+8|0;D
=E;c[h>>2]=d;c[j>>2]=e;c[k>>2]=f;if(!((c[h>>2]|0)!=0&(c[j>>2]|0)!=0)){c[g
>>2]=6;D=c[g>>2]|0;i=E;return D|0}c[s>>2]=c[(c[j>>2]|0)+16>>2];c[l>>
2]=c[(c[j>>2]|0)+20>>2];c[n>>2]=0;c[q>>2]=0;a:while(1){if((c[q>>2]|0)>=(b
[c[h>>2]>>1]|0)){e=32;break}c[o>>2]=b[(c[(c[h>>2]|0)+12>>2]|0)+(c[q>>
;2]<<1)>>1];if((c[o>>2]|0)<0){e=34;break}c[p>>2]=(c[(c[h>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<3);f=(c[(c[h>>2]|0)+4>>2]|0)+(c[n>>2]<<3)|0;c[y
x3e;>2]=c[f>>2];c[y+4>>2]=c[f+4>>2];c[y>>2]=(c[y>>2]<<c[s>
x3e;2])-(c[l>>2]|0);c[y+4>>2]=(c[y+4>>2]<<c[s>>2])-(c[l>>2]|0);f=(c[(
c[h>>2]|0)+4>>2]|0)+(c[o>>2]<<3)|0;c[w>>2]=c[f>>2];c[w+4>>
2]=c[f+4>>2];c[w>>2]=(c[w>>2]<<c[s>>2])-(c[l>>2]|0);c[w+4>>
;2]=(c[w+4>>2]<<c[s>>2])-(c[l>>2]|0);c[v>>2]=c[y>>2];c[v+4>>
;2]=c[y+4>>2];c[r>>2]=(c[(c[h>>2]|0)+4>>2]|0)+(c[n>>2]<<3);c[u>
x3e;2]=(c[(c[h>>2]|0)+8>>2]|0)+(c[n>>2]|0);c[t>>2]=a[c[u>>2]>>0]&
;3;if((c[t>>2]|0)==2){e=34;break}if(!(c[t>>2]|0)){if((a[(c[(c[h>>2]|0)+8>>2]|0)+(c[o>
;>2]|0)>>0]&3|0)==1){c[y>>2]=c[w>>2];c[y+4>>2]=c[w+4>>2];c[p>
x3e;2]=(c[p>>2]|0)+-8}else{c[y>>2]=((c[y>>2]|0)+(c[w>>2]|0)|0)/2|0;c[y+4>>2]=((
c[y+4>>2]|0)+(c[w+4>>2]|0)|0)/2|0;c[w>>2]=c[y>>2];c[w+4>>2]=c[y+4>>2
]}c[r>>2]=(c[r>>2]|0)+-8;c[u>>2]=(c[u>>2]|0)+-1}c[m>>2]=Ya[c[c[j>>2]
x3e;>2]&127](y,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break}b:while(1){if((c[r>>2]|0)>>
;>0>=(c[p>>2]|0)>>>0){e=29;break}c[r>>2]=(c[r>>2]|0)+8;c[u>>2]=(
c[u>>2]|0)+1;c[t>>2]=a[c[u>>2]>>0]&3;switch(c[t>>2]|0){case 1:{c[z>
x3e;2]=(c[c[r>>2]>>2]<<c[s>>2])-(c[l>>2]|0);c[z+4>>2]=(c[(c[r>
x3e;2]|0)+4>>2]<<c[s>>2])-(c[l>>2]|0);c[m>>2]=Ya[c[(c[j>>2]|0)+4>
;>2]&127](z,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else continue b}case 0:{c[v>>2]=(c[c
[r>>2]>>2]<<c[s>>2])-(c[l>>2]|0);c[v+4>>2]=(c[(c[r>>2]|0)+
4>>2]<<c[s>>2])-(c[l>>2]|0);while(1){if((c[r>>2]|0)>>>0>=(
c[p>>2]|0)>>>0){e=23;break b}c[r>>2]=(c[r>>2]|0)+8;c[u>>2]=(c[u>>
;2]|0)+1;c[t>>2]=a[c[u>>2]>>0]&3;c[A>>2]=(c[c[r>>2]>>2]<
x3c;c[s>>2])-(c[l>>2]|0);c[A+4>>2]=(c[(c[r>>2]|0)+4>>2]<<c[s>
x3e;2])-(c[l>>2]|0);if((c[t>>2]|0)==1)break;if(c[t>>2]|0){e=34;break a}c[x>>2]=((c[v>
;>2]|0)+(c[A>>2]|0)|0)/2|0;c[x+4>>2]=((c[v+4>>2]|0)+(c[A+4>>2]|0)|0)/2|0;c[m>
x3e;2]=Oa[c[(c[j>>2]|0)+8>>2]&63](v,x,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a};c[v
x3e;>2]=c[A>>2];c[v+4>>2]=c[A+4>>2]}c[m>>2]=Oa[c[(c[j>>2]|0)+8>>
;2]&63](v,A,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else continue b}default:{if(((c[r>>2]|0)+
8|0)>>>0>(c[p>>2]|0)>>>0){e=34;break a}if((a[(c[u>>2]|0)+1>>0]
x26;3|0)!=2){e=34;break a}c[r>>2]=(c[r>>2]|0)+16;c[u>>2]=(c[u>>2]|0)+2;c[B>>2]=(
c[(c[r>>2]|0)+-16>>2]<<c[s>>2])-(c[l>>2]|0);c[B+4>>2]=(c[(c[r>
x3e;2]|0)+-16+4>>2]<<c[s>>2])-(c[l>>2]|0);c[C>>2]=(c[(c[r>>2]|0)+-8
x3e;>2]<<c[s>>2])-(c[l>>2]|0);c[C+4>>2]=(c[(c[r>>2]|0)+-8+4>>2]
x3c;<c[s>>2])-(c[l>>2]|0);if((c[r>>2]|0)>>>0>(c[p>>2]|0)>
x3e;>0){e=28;break b}c[D>>2]=(c[c[r>>2]>>2]<<c[s>>2])-(c[l>>2]|
0);c[D+4>>2]=(c[(c[r>>2]|0)+4>>2]<<c[s>>2])-(c[l>>2]|0);c[m>>
;2]=Wa[c[(c[j>>2]|0)+12>>2]&31](B,C,D,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else
continue b}}}if((e|0)==23)c[m>>2]=Oa[c[(c[j>>2]|0)+8>>2]&63](v,y,c[k>>2]|0)|0;else
if((e|0)==28)c[m>>2]=Wa[c[(c[j>>2]|0)+12>>2]&31](B,C,y,c[k>>2]|0)|0;else if((e|0)==
29)c[m>>2]=Ya[c[(c[j>>2]|0)+4>>2]&127](y,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;
break}c[n>>2]=(c[o>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+1}if((e|0)==32){c[g>>2]=0;D=c[
g>>2]|0;i=E;return D|0}else if((e|0)==33){c[g>>2]=c[m>>2];D=c[g>>2]|0;i=E;return D|0}else
if((e|0)==34){c[g>>2]=20;D=c[g>>2]|0;i=E;return D|0}return 0}function _d(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0;l=p+28|0;o=p+24|0;k=p+20|0;n=p+16|0;h=p+12|0;g=p+8|0;j=p+4|0;m=p;c
[e>>2]=a;c[f>>2]=d;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=p;return}a:do if(!(b[(c[e
>>2]|0)+2>>1]|0)){c[l>>2]=0;c[o>>2]=0;c[k>>2]=0;c[n>>2]=0}else{c[h
x3e;>2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=(c[h>>2]|0)+(b[(c[e>>2]|0)+2>>
;1]<<3);a=c[c[h>>2]>>2]|0;c[k>>2]=a;c[l>>2]=a;a=c[(c[h>>2]|0)+4>
;>2]|0;c[n>>2]=a;c[o>>2]=a;c[h>>2]=(c[h>>2]|0)+8;while(1){if((c[h>>2]|0)
x3e;>>0>=(c[g>>2]|0)>>>0)break a;c[j>>2]=c[c[h>>2]>>2];if((
c[j>>2]|0)<(c[l>>2]|0))c[l>>2]=c[j>>2];if((c[j>>2]|0)>(c[k>>
;2]|0))c[k>>2]=c[j>>2];c[m>>2]=c[(c[h>>2]|0)+4>>2];if((c[m>>2]|0)<
;(c[o>>2]|0))c[o>>2]=c[m>>2];if((c[m>>2]|0)>(c[n>>2]|0))c[n>>2]=
c[m>>2];c[h>>2]=(c[h>>2]|0)+8}}while(0);c[c[f>>2]>>2]=c[l>>2];c[(c[f
>>2]|0)+8>>2]=c[k>>2];c[(c[f>>2]|0)+4>>2]=c[o>>2];c[(c[f>>
2]|0)+12>>2]=c[n>>2];i=p;return}function $d(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,o=0,p=0,q=0
,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+128|0;d=F+116|0;e=F+112|0;z=F+108|0;D=F+104|0;C=F+100|0;A=F
+96|0;B=F+92|0;f=F+88|0;l=F+84|0;n=F+80|0;s=F+76|0;r=F+72|0;m=F+68|0;t=F+56|0;u=F+44|0;h=F+40|0;g=F+36|0;k=F+32|0;j=F+28|0;q=F+24
|0;x=F+20|0;o=F+16|0;p=F+12|0;v=F+8|0;w=F+4|0;y=F;c[e>>2]=a;c[z>>2]=32768;c[D>>2]=32768;c[C>
x3e;2]=-32768;c[A>>2]=0;c[B>>2]=0;c[u>>2]=c[42];c[u+4>>2]=c[43];c[u+8>>2]=c[44
];if(c[e>>2]|0?(b[(c[e>>2]|0)+2>>1]|0)>0:0){c[l>>2]=c[(c[e>>2]|0)+4>
x3e;2];c[f>>2]=c[(c[e>>2]|0)+12>>2];while(1){if((c[f>>2]|0)>>>0>=((c
[(c[e>>2]|0)+12>>2]|0)+(b[c[e>>2]>>1]<<1)|0)>>>0)break;c[h>
;>2]=32768;c[g>>2]=-32768;c[k>>2]=32768;c[j>>2]=-32768;c[n>>2]=(c[(c[e>>2
]|0)+4>>2]|0)+(b[c[f>>2]>>1]<<3);if((c[n>>2]|0)>>>0>=((c[l
>>2]|0)+16|0)>>>0){c[r>>2]=c[l>>2];while(1){if((c[r>>2]|0)>>>
;0>(c[n>>2]|0)>>>0)break;if((c[c[r>>2]>>2]|0)<(c[h>>2]|0))c[h
x3e;>2]=c[c[r>>2]>>2];if((c[c[r>>2]>>2]|0)>(c[g>>2]|0))c[g>>
;2]=c[c[r>>2]>>2];if((c[(c[r>>2]|0)+4>>2]|0)<(c[k>>2]|0))c[k>>2
]=c[(c[r>>2]|0)+4>>2];if((c[(c[r>>2]|0)+4>>2]|0)>(c[j>>2]|0))c[j>>
;2]=c[(c[r>>2]|0)+4>>2];c[r>>2]=(c[r>>2]|0)+8}if(((c[h>>2]|0)<(c[z>
x3e;2]|0)?(c[h>>2]|0)!=(c[g>>2]|0):0)?(c[k>>2]|0)!=(c[j>>2]|0):0){c[z>>2]=c[h
x3e;>2];c[D>>2]=c[k>>2];c[C>>2]=c[j>>2];c[A>>2]=c[l>>2];c[B>
;>2]=c[n>>2]}}c[f>>2]=(c[f>>2]|0)+2;c[l>>2]=(c[n>>2]|0)+8}if((c[z>
x3e;2]|0)==32768){c[d>>2]=0;E=c[d>>2]|0;i=F;return E|0}c[t>>2]=((c[D>>2]|0)*3|0)+(c[C>
;>2]|0)>>2;c[t+4>>2]=(c[D>>2]|0)+(c[C>>2]|0)>>1;c[t+8>>2]=(c[D
x3e;>2]|0)+((c[C>>2]|0)*3|0)>>2;c[m>>2]=0;while(1){if((c[m>>2]|0)>=3)break;a:while
(1){c[q>>2]=32768;c[x>>2]=-32768;c[w>>2]=0;c[v>>2]=0;c[p>>2]=0;c[o>>
2]=0;c[s>>2]=c[B>>2];c[r>>2]=c[A>>2];while(1){if((c[r>>2]|0)>>>
0>(c[B>>2]|0)>>>0)break a;if((c[(c[r>>2]|0)+4>>2]|0)==(c[t+(c[m>>2]
x3c;<2)>>2]|0))break;if((c[(c[s>>2]|0)+4>>2]|0)==(c[t+(c[m>>2]<<2)>
x3e;2]|0))break;if(!((c[(c[r>>2]|0)+4>>2]|0)<(c[t+(c[m>>2]<<2)>>2]|0)?(c[(
c[s>>2]|0)+4>>2]|0)<(c[t+(c[m>>2]<<2)>>2]|0):0))E=34;do if((E|0)==34){E=0
;if((c[(c[r>>2]|0)+4>>2]|0)>(c[t+(c[m>>2]<<2)>>2]|0)?(c[(c[s>>2
]|0)+4>>2]|0)>(c[t+(c[m>>2]<<2)>>2]|0):0)break;D=xb((c[c[r>>2]>>
;2]|0)-(c[c[s>>2]>>2]|0)|0,(c[t+(c[m>>2]<<2)>>2]|0)-(c[(c[s>>2]|0)+4
>>2]|0)|0,(c[(c[r>>2]|0)+4>>2]|0)-(c[(c[s>>2]|0)+4>>2]|0)|0)|0;c[y>>
2]=D+(c[c[s>>2]>>2]|0);if((c[y>>2]|0)<(c[q>>2]|0)){c[q>>2]=c[y>>
;2];c[o>>2]=c[s>>2];c[p>>2]=c[r>>2]}if((c[y>>2]|0)>(c[x>>2]|0)){
c[x>>2]=c[y>>2];c[v>>2]=c[s>>2];c[w>>2]=c[r>>2]}}while(0);c[s>
x3e;2]=c[r>>2];c[r>>2]=(c[r>>2]|0)+8}D=t+(c[m>>2]<<2)|0;c[D>>2]=(c[D
>>2]|0)+1}do if((c[o>>2]|0)!=0&(c[v>>2]|0)!=0){if((c[(c[o>>2]|0)+4>>2]|0)
x3c;(c[(c[p>>2]|0)+4>>2]|0)?(c[(c[v>>2]|0)+4>>2]|0)>(c[(c[w>>2]|0)+4>
;>2]|0):0){c[u+(c[m>>2]<<2)>>2]=0;break}if((c[(c[o>>2]|0)+4>>2]|0)>(
c[(c[p>>2]|0)+4>>2]|0)?(c[(c[v>>2]|0)+4>>2]|0)<(c[(c[w>>2]|0)+4>>
;2]|0):0){c[u+(c[m>>2]<<2)>>2]=1;break}c[u+(c[m>>2]<<2)>>2]=2}while(
0);c[m>>2]=(c[m>>2]|0)+1}do if((c[u>>2]|0)!=2){if((c[u>>2]|0)!=(c[u+4>>2]|0)?(
c[u>>2]|0)!=(c[u+8>>2]|0):0)break;c[d>>2]=c[u>>2];E=c[d>>2]|0;i=F;return E|0}while
(0);if((c[u+4>>2]|0)!=2?(c[u+4>>2]|0)==(c[u+8>>2]|0):0){c[d>>2]=c[u+4>>2];E=c[
d>>2]|0;i=F;return E|0}c[d>>2]=0;E=c[d>>2]|0;i=F;return E|0}c[d>>2]=0;E=c[d>>2
]|0;i=F;return E|0}function ae(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;f=h+12|0;g=h+8|0;b=h+4|0;e=h;c[d
x3e;>2]=a;c[f>>2]=c[c[d>>2]>>2];c[g>>2]=c[(c[d>>2]|0)+4>>2];j=c
[f>>2]|0;a=c[g>>2]|0;c[b>>2]=((c[f>>2]|0)>=0?j:0-j|0)|((c[g>>2]|0)>=
0?a:0-a|0);c[e>>2]=0;if((c[b>>2]|0)>=65536){c[b>>2]=c[b>>2]>>16;c[e>
x3e;2]=(c[e>>2]|0)+16}if((c[b>>2]|0)>=256){c[b>>2]=c[b>>2]>>8;c[e>
x3e;2]=(c[e>>2]|0)+8}if((c[b>>2]|0)>=16){c[b>>2]=c[b>>2]>>4;c[e>>
;2]=(c[e>>2]|0)+4}if((c[b>>2]|0)>=4){c[b>>2]=c[b>>2]>>2;c[e>>2]=(
c[e>>2]|0)+2}if((c[b>>2]|0)>=2){c[b>>2]=c[b>>2]>>1;c[e>>2]=(c[e
>>2]|0)+1}a=c[e>>2]|0;if((c[e>>2]|0)<=27){c[e>>2]=27-a;c[c[d>>2]>>
;2]=c[f>>2]<<c[e>>2];c[(c[d>>2]|0)+4>>2]=c[g>>2]<<c[e>
;>2];j=c[e>>2]|0;i=h;return j|0}else{c[e>>2]=a-27;c[c[d>>2]>>2]=c[f>>2]
x3e;>c[e>>2];c[(c[d>>2]|0)+4>>2]=c[g>>2]>>c[e>>2];c[e>>
;2]=0-(c[e>>2]|0);j=c[e>>2]|0;i=h;return j|0}return 0}function be(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k
=0,l=0;l=i;i=i+32|0;h=l+24|0;j=l+20|0;g=l+16|0;e=l+12|0;k=l+8|0;f=l+4|0;d=l;c[h>>2]=a;c[k>>2]=c[c[h>>
;2]>>2];c[f>>2]=c[(c[h>>2]|0)+4>>2];c[j>>2]=0;if((c[k>>2]|0)<0){
c[k>>2]=0-(c[k>>2]|0);c[f>>2]=0-(c[f>>2]|0);c[j>>2]=11796480}if((c[f>>
;2]|0)>0)c[j>>2]=0-(c[j>>2]|0);c[d>>2]=180;a=c[f>>2]|0;b=c[k>>2]<<
;1;if((c[f>>2]|0)<0){c[g>>2]=a+b;c[k>>2]=(c[k>>2]|0)-(c[f>>2]<<
1);c[f>>2]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)-(c[b
x3e;>2]|0)}else{c[g>>2]=a-b;c[k>>2]=(c[k>>2]|0)+(c[f>>2]<<1);c[f>>
;2]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)+(c[b>>2]|0)}
c[e>>2]=0;do{a=c[f>>2]|0;b=c[k>>2]>>c[e>>2];if((c[f>>2]|0)<0){c
[g>>2]=a+b;c[k>>2]=(c[k>>2]|0)-(c[f>>2]>>c[e>>2]);c[f>>2]=
c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)-(c[b>>2]|0)}else
{c[g>>2]=a-b;c[k>>2]=(c[k>>2]|0)+(c[f>>2]>>c[e>>2]);c[f>>2
]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)+(c[b>>2]|0)}b=(
c[e>>2]|0)+1|0;c[e>>2]=b}while((b|0)<23);a=c[j>>2]|0;if((c[j>>2]|0)>=0){c[j>
;>2]=a+16&-32;g=c[k>>2]|0;k=c[h>>2]|0;c[k>>2]=g;j=c[j>>2]|0;k=c[h>>2
]|0;k=k+4|0;c[k>>2]=j;i=l;return}else{c[j>>2]=0-(0-a+16&-32);g=c[k>>2]|0;k=c[h>>2]|
0;c[k>>2]=g;j=c[j>>2]|0;k=c[h>>2]|0;k=k+4|0;c[k>>2]=j;i=l;return}}function ce(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;f=i;i=i+48|0;b=f+36|0;e=f+32|0;m=f+28|0;k=f+24|0;n=f+20|0;l=f+16|0;d=f+12|0;h=f+8|0
;j=f+4|0;g=f;c[b>>2]=a;c[e>>2]=c[b>>2];a=c[b>>2]|0;c[b>>2]=(c[b>>2]|
0)>=0?a:0-a|0;c[m>>2]=(c[b>>2]|0)>>>16;c[k>>2]=c[b>>2]&65535;c[
n>>2]=17797;c[l>>2]=47593;c[d>>2]=_(c[n>>2]|0,c[m>>2]|0)|0;a=_(c[n>>
2]|0,c[k>>2]|0)|0;c[h>>2]=a+(_(c[l>>2]|0,c[m>>2]|0)|0);c[j>>2]=(_(c[l>>
;2]|0,c[k>>2]|0)|0)>>>16;c[g>>2]=(c[h>>2]|0)>>>0>=(c[j>>
;2]|0)>>>0?c[h>>2]|0:c[j>>2]|0;c[h>>2]=(c[h>>2]|0)+(c[j>>2]|0);
c[d>>2]=(c[d>>2]|0)+((c[h>>2]|0)>>>16);if((c[h>>2]|0)>>>0
x3e;=(c[g>>2]|0)>>>0){l=c[d>>2]|0;c[b>>2]=l;l=c[e>>2]|0;l=(l|0)>=0;m
=c[b>>2]|0;n=0-m|0;n=l?m:n;i=f;return n|0}c[d>>2]=(c[d>>2]|0)+65536;l=c[d>>2]|0;c[b>
;>2]=l;l=c[e>>2]|0;l=(l|0)>=0;m=c[b>>2]|0;n=0-m|0;n=l?m:n;i=f;return n|0}function de(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;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[j>>2]=b;c[f>
x3e;2]=d;c[g>>2]=ee(c[e>>2]|0,c[j>>2]|0)|0;if(c[g>>2]|0){j=c[g>>2]|0;i=h;return
j|0}c[c[f>>2]>>2]=c[(c[e>>2]|0)+32>>2];c[(c[e>>2]|0)+32>>2]=0;c[(c[
e>>2]|0)+36>>2]=0;j=c[g>>2]|0;i=h;return j|0}function ee(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,
j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;b=c[d>
x3e;2]|0;if(!(c[(c[d>>2]|0)+20>>2]|0)){if((c[b+8>>2]|0)>>>0<(c[(c[d>>
;2]|0)+4>>2]|0)>>>0?((c[(c[d>>2]|0)+4>>2]|0)-(c[(c[d>>2]|0)+8>>
2]|0)|0)>>>0>=(c[e>>2]|0)>>>0:0){c[(c[d>>2]|0)+32>>2]=(c[c[d>
;>2]>>2]|0)+(c[(c[d>>2]|0)+8>>2]|0);c[(c[d>>2]|0)+36>>2]=(c[(c[d>>
;2]|0)+32>>2]|0)+(c[e>>2]|0);h=(c[d>>2]|0)+8|0;c[h>>2]=(c[h>>2]|0)+(c[e>
x3e;2]|0);h=c[f>>2]|0;i=j;return h|0}c[f>>2]=85;h=c[f>>2]|0;i=j;return h|0}c[g>>2]=c[b+28
>>2];if((c[e>>2]|0)>>>0>(c[(c[d>>2]|0)+4>>2]|0)>>>0){
c[f>>2]=85;h=c[f>>2]|0;i=j;return h|0}a=cc(c[g>>2]|0,c[e>>2]|0,f)|0;c[c[d>>2]
x3e;>2]=a;if(c[f>>2]|0){h=c[f>>2]|0;i=j;return h|0}c[h>>2]=Wa[c[(c[d>>2]|0)+20>
;>2]&31](c[d>>2]|0,c[(c[d>>2]|0)+8>>2]|0,c[c[d>>2]>>2]|0,c[e>
x3e;2]|0)|0;if((c[h>>2]|0)>>>0<(c[e>>2]|0)>>>0){Fb(c[g>>2]|0,c[
c[d>>2]>>2]|0);c[c[d>>2]>>2]=0;c[f>>2]=85}c[(c[d>>2]|0)+32>>
;2]=c[c[d>>2]>>2];c[(c[d>>2]|0)+36>>2]=(c[(c[d>>2]|0)+32>>2]|0)+(c[e
>>2]|0);g=(c[d>>2]|0)+8|0;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0);h=c[f>>2]|
0;i=j;return h|0}function fe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>
x3e;2]=b;if(c[d>>2]|0?c[(c[d>>2]|0)+20>>2]|0:0){c[f>>2]=c[(c[d>>2]|0)+28>
x3e;2];Fb(c[f>>2]|0,c[c[e>>2]>>2]|0);c[c[e>>2]>>2]=0}c[c[e>>2]>
x3e;2]=0;i=g;return}function ge(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(c[(c[b>>2]|0)+
20>>2]|0){c[d>>2]=c[(c[b>>2]|0)+28>>2];Fb(c[d>>2]|0,c[c[b>>2]>
x3e;2]|0);c[c[b>>2]>>2]=0}c[(c[b>>2]|0)+32>>2]=0;c[(c[b>>2]|0)+36>>2
]=0;i=e;return}function he(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f;e=f+4|0;c[d>>2]=b;a[e>>0]=0;if((c[(c[d
x3e;>2]|0)+32>>2]|0)>>>0>=(c[(c[d>>2]|0)+36>>2]|0)>>>0){b=
a[e>>0]|0;i=f;return b|0}d=(c[d>>2]|0)+32|0;b=c[d>>2]|0;c[d>>2]=b+1;a[e>>0]=a[
b>>0]|0;b=a[e>>0]|0;i=f;return b|0}function ie(e){e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;f=j+4|0;g=j;h=j+8|0
;c[f>>2]=e;b[h>>1]=0;c[g>>2]=c[(c[f>>2]|0)+32>>2];if(((c[g>>2]|0)+1|
0)>>>0>=(c[(c[f>>2]|0)+36>>2]|0)>>>0){g=c[g>>2]|0;e=c[f>
x3e;2]|0;e=e+32|0;c[e>>2]=g;e=b[h>>1]|0;i=j;return e|0}c[g>>2]=(c[g>>2]|0)+2;b[h>
x3e;1]=a[(c[g>>2]|0)+-2>>0]<<16>>16<<8|d[(c[g>>2]|0)+-2+1>>
;0]<<0;g=c[g>>2]|0;e=c[f>>2]|0;e=e+32|0;c[e>>2]=g;e=b[h>>1]|0;i=j;return e|0}function
je(b){b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=b;c[g>>2]=0;c[f>>2]=c[(c
[e>>2]|0)+32>>2];if(((c[f>>2]|0)+3|0)>>>0>=(c[(c[e>>2]|0)+36>
x3e;2]|0)>>>0){f=c[f>>2]|0;b=c[e>>2]|0;b=b+32|0;c[b>>2]=f;b=c[g>>2]|0;i=h
;return b|0}c[f>>2]=(c[f>>2]|0)+4;c[g>>2]=a[(c[f>>2]|0)+-4>>0]<<24|d
[(c[f>>2]|0)+-4+1>>0]<<16|d[(c[f>>2]|0)+-4+2>>0]<<8|d[(c[f>>
;2]|0)+-4+3>>0]<<0;f=c[f>>2]|0;b=c[e>>2]|0;b=b+32|0;c[b>>2]=f;b=c[g>>
;2]|0;i=h;return b|0}function ke(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+9|0;f=j+4|0;g=j;h=j+8|0;c[f>>
;2]=b;c[g>>2]=d;a[h>>0]=0;c[c[g>>2]>>2]=0;d=c[f>>2]|0;if(c[(c[f>>2]|
0)+20>>2]|0)if((Wa[c[d+20>>2]&31](c[f>>2]|0,c[(c[f>>2]|0)+8>>2]|0,h,1)|0)!=
1)d=6;else d=5;else if((c[d+8>>2]|0)>>>0<(c[(c[f>>2]|0)+4>>2]|0)>>
x3e;0){a[h>>0]=a[(c[c[f>>2]>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)>>0]|0;d=5
}else d=6;if((d|0)==5){g=(c[f>>2]|0)+8|0;c[g>>2]=(c[g>>2]|0)+1;a[e>>0]=a[h>>0]|
0;h=a[e>>0]|0;i=j;return h|0}else if((d|0)==6){c[c[g>>2]>>2]=85;a[e>>0]=0;h=a[e>>
;0]|0;i=j;return h|0}return 0}function le(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;v=i;i
=i+48|0;j=v+36|0;k=v+32|0;l=v+28|0;m=v+24|0;o=v+20|0;p=v+40|0;n=v+16|0;t=v+12|0;s=v+8|0;r=v+4|0;q=v;c[k>>2]=f;c[l>
;>2]=g;c[m>>2]=h;a[p>>0]=0;if(!((c[l>>2]|0)!=0&(c[k>>2]|0)!=0)){c[j>>
;2]=6;u=c[j>>2]|0;i=v;return u|0}c[n>>2]=c[(c[k>>2]|0)+32>>2];c[o>>2]=0;a:while
(1){switch(d[c[l>>2]>>0]|0){case 4:{c[o>>2]=ee(c[k>>2]|0,e[(c[l>>2]|0)+2>
x3e;1]|0)|0;if(c[o>>2]|0)break a;a[p>>0]=1;c[n>>2]=c[(c[k>>2]|0)+32>>2];c[l>
;>2]=(c[l>>2]|0)+4;continue a}case 25:case 24:{c[q>>2]=d[(c[l>>2]|0)+1>>0];if(((c[n
>>2]|0)+(c[q>>2]|0)|0)>>>0>(c[(c[k>>2]|0)+36>>2]|0)>>>
;0){u=8;break a}if((d[c[l>>2]>>0]|0)==24){c[r>>2]=(c[m>>2]|0)+(e[(c[l>>2]|0)+2
>>1]|0);Ss(c[r>>2]|0,c[n>>2]|0,c[q>>2]|0)|0}c[n>>2]=(c[n>>2]|0)+(c[q
>>2]|0);c[l>>2]=(c[l>>2]|0)+4;continue a}case 9:case 8:{h=c[n>>2]|0;c[n>>2]=h+
1;c[t>>2]=d[h>>0];c[s>>2]=24;break}case 12:case 13:{c[n>>2]=(c[n>>2]|0)+2;c[t
x3e;>2]=((d[(c[n>>2]|0)+-2>>0]&65535)<<8|(d[(c[n>>2]|0)+-2+1>>0]&
;65535)<<0)&65535;c[s>>2]=16;break}case 14:case 15:{c[n>>2]=(c[n>>2]|0)+2;c[t>
x3e;2]=((d[(c[n>>2]|0)+-2+1>>0]&65535)<<8|(d[(c[n>>2]|0)+-2>>0]&65535
)<<0)&65535;c[s>>2]=16;break}case 16:case 17:{c[n>>2]=(c[n>>2]|0)+4;c[t>>
2]=d[(c[n>>2]|0)+-4>>0]<<24|d[(c[n>>2]|0)+-4+1>>0]<<16|d[(c[n>
x3e;2]|0)+-4+2>>0]<<8|d[(c[n>>2]|0)+-4+3>>0]<<0;c[s>>2]=0;break}case
18:case 19:{c[n>>2]=(c[n>>2]|0)+4;c[t>>2]=d[(c[n>>2]|0)+-4+3>>0]<<24
|d[(c[n>>2]|0)+-4+2>>0]<<16|d[(c[n>>2]|0)+-4+1>>0]<<8|d[(c[n>
x3e;2]|0)+-4>>0]<<0;c[s>>2]=0;break}case 20:case 21:{c[n>>2]=(c[n>>2]|0)+3;c[t
>>2]=d[(c[n>>2]|0)+-3>>0]<<16|d[(c[n>>2]|0)+-3+1>>0]<<8|d[(
c[n>>2]|0)+-3+2>>0]<<0;c[s>>2]=8;break}case 22:case 23:{c[n>>2]=(c[n>>
;2]|0)+3;c[t>>2]=d[(c[n>>2]|0)+-3+2>>0]<<16|d[(c[n>>2]|0)+-3+1>>0]
x3c;<8|d[(c[n>>2]|0)+-3>>0]<<0;c[s>>2]=8;break}default:{u=19;break a}}if(d[c[l>
;>2]>>0]&1|0)c[t>>2]=c[t>>2]<<c[s>>2]>>c[s>>2];c
[r>>2]=(c[m>>2]|0)+(e[(c[l>>2]|0)+2>>1]|0);switch(d[(c[l>>2]|0)+1>>0
]|0){case 1:{a[c[r>>2]>>0]=c[t>>2];break}case 2:{b[c[r>>2]>>1]=c[t>>
2];break}case 4:{c[c[r>>2]>>2]=c[t>>2];break}default:c[c[r>>2]>>2]=c[t>
x3e;2]}c[l>>2]=(c[l>>2]|0)+4}if((u|0)==8)c[o>>2]=85;else if((u|0)==19)c[(c[k>>2]|0)+32
x3e;>2]=c[n>>2];if(a[p>>0]|0)ge(c[k>>2]|0);c[j>>2]=c[o>>2];u=c[j>>
;2]|0;i=v;return u|0}function me(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+32|0;d=f+16|0;g=f+12|0;e=f+8|0;b=f;c[g>>2]=a
;a=c[g>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];a=c[b+4>>2]|0;if(!(
c[b>>2]|0)){g=c[b+4>>2]|0;c[d>>2]=(a|0)>=0?g:0-g|0;g=c[d>>2]|0;i=f;return g|0}if(!a
){g=c[b>>2]|0;c[d>>2]=(c[b>>2]|0)>=0?g:0-g|0;g=c[d>>2]|0;i=f;return g|0}c[e>
x3e;2]=ae(b)|0;be(b);c[b>>2]=ce(c[b>>2]|0)|0;a=c[b>>2]|0;b=c[e>>2]|0;if((c[e>>
2]|0)>0){c[d>>2]=a+(1<<b-1)>>c[e>>2];g=c[d>>2]|0;i=f;return g|0}else{c[d
x3e;>2]=a<<0-b;g=c[d>>2]|0;i=f;return g|0}return 0}function ne(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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>>2]=a;c[f>>2]=b;c[g
>>2]=d;c[h>>2]=e;c[k>>2]=cc(c[m>>2]|0,c[g>>2]|0,j)|0;if(!((c[j>>2]|0
)==0&(c[f>>2]|0)!=0)){d=c[j>>2]|0;m=c[h>>2]|0;c[m>>2]=d;m=c[k>>2]|0;i=l;return
m|0}Ss(c[k>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;d=c[j>>2]|0;m=c[h>>2]|0;c[m>>
;2]=d;m=c[k>>2]|0;i=l;return m|0}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;j=i;i=i+16|0;e=j+12|0;f=
j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[f>>2]|0)a=(cs(c[f>>2]|0)|
0)+1|0;else a=0;c[h>>2]=a;h=ne(c[e>>2]|0,c[f>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=j;
return h|0}function pe(b,d,e){b=b|0;d=d|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]=b;c[g>
;>2]=d;c[h>>2]=e;while(1){if((c[h>>2]|0)>>>0<=1)break;if(!(a[c[g>>2]>
;>0]|0))break;e=c[g>>2]|0;c[g>>2]=e+1;e=a[e>>0]|0;d=c[f>>2]|0;c[f>>2]=d+1
;a[d>>0]=e;c[h>>2]=(c[h>>2]|0)+-1}a[c[f>>2]>>0]=0;i=j;return (a[c[g>>
;2]>>0]|0)!=0|0}function qe(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]=c[f>>2];if(re(c[e>>2]|0)|0){c[b>>2]=0;f=c[b>>2]|0;i=d;return f|0}else{c[b>
;>2]=153;f=c[b>>2]|0;i=d;return f|0}return 0}function re(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16
|0;d=h+12|0;f=h+8|0;g=h+4|0;e=h;c[d>>2]=a;c[g>>2]=c[(c[d>>2]|0)+8>>2];c[f>>2]=
c[(c[d>>2]|0)+40>>2];do if(!(c[(c[d>>2]|0)+40>>2]|0)){c[f>>2]=bc(c[g>>
;2]|0,608,e)|0;if((c[e>>2]|0)==0?(c[e>>2]=se(c[f>>2]|0,c[g>>2]|0)|0,(c[e>>2]|0
)==0):0){c[(c[d>>2]|0)+40>>2]=c[f>>2];break}c[b>>2]=0;g=c[b>>2]|0;i=h;return g
|0}while(0);c[b>>2]=c[(c[d>>2]|0)+40>>2];g=c[b>>2]|0;i=h;return g|0}function se(a,d){a=a
|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;f=h+8|0;j=h+4|0;g=h;c[f>>2]=a;c[j>>2]=d;c[(c[f>
x3e;2]|0)+8>>2]=c[j>>2];c[(c[f>>2]|0)+432>>2]=32;a=hc(c[j>>2]|0,16,0,c[(c[f>
;>2]|0)+432>>2]|0,0,g)|0;c[(c[f>>2]|0)+436>>2]=a;a=c[f>>2]|0;if(c[g>>2]|0
){te(a)|0;c[e>>2]=c[g>>2];j=c[e>>2]|0;i=h;return j|0}else{b[a+440>>1]=0;b[(c[f>>
;2]|0)+442>>1]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>>2]|0)+388>>2]=0;c[(c[f>
x3e;2]|0)+24>>2]=0;c[(c[f>>2]|0)+392>>2]=0;c[c[f>>2]>>2]=0;c[(c[f>>2
]|0)+4>>2]=0;c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}return 0}function te(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;c[f>>2]=c[(c[e>>2]|0)+8>>2];b[(c[e>>2]|0)+440
>>1]=0;b[(c[e>>2]|0)+442>>1]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);
c[(c[e>>2]|0)+24>>2]=0;c[(c[e>>2]|0)+20>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2
]|0)+436>>2]|0);c[(c[e>>2]|0)+436>>2]=0;c[(c[e>>2]|0)+432>>2]=0;c[(c[e>
x3e;2]|0)+428>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+392>>2]|0);c[(c[e>>2]|0)+392>
;>2]=0;c[(c[e>>2]|0)+388>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[c[e>>2]>>
;2]=0;Fb(c[f>>2]|0,c[e>>2]|0);c[e>>2]=0;i=d;return 0}function ue(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];if(!(c[(c[b>>2]|0)+40>>2]|0)){i=d;return
}te(c[(c[b>>2]|0)+40>>2]|0)|0;c[(c[b>>2]|0)+40>>2]=0;i=d;return}function ve(a,b){a=a|0;b
=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=qc(380,c[f>>2]|0)|0;if(c[g>>2]|0){c[d>>2]=c[g>>2];b=c[d>
x3e;2]|0;i=k;return b|0}if(!(c[e>>2]|0)){c[d>>2]=0;b=c[d>>2]|0;i=k;return b|0}c[j>>2]=Wc
(c[(c[e>>2]|0)+4>>2]|0,11340)|0;if(c[j>>2]|0?(c[h>>2]=c[(c[c[j>>2]>>
2]|0)+20>>2],c[h>>2]|0):0){c[d>>2]=Ya[c[(c[h>>2]|0)+16>>2]&127](c[e>
x3e;2]|0,c[f>>2]|0)|0;b=c[d>>2]|0;i=k;return b|0}c[d>>2]=0;b=c[d>>2]|0;i=k;return b|0}function
we(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;q=i;i=i+48|0;f=q+32|0;g=q+28|0;h=q+24|0;k=q+20|0;j=
q+16|0;o=q+12|0;l=q+8|0;n=q+4|0;m=q;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=0;c[n>>
;2]=c[(c[f>>2]|0)+100>>2];a[(c[f>>2]|0)+708>>0]=0;if((c[(c[f>>2]|0)+712>
x3e;2]|0)==0?(d=xe(c[f>>2]|0,0)|0,c[k>>2]=d,d|0):0){p=c[k>>2]|0;i=q;return p|0}c[j>>2]=c
[(c[f>>2]|0)+712>>2];c[o>>2]=c[(c[j>>2]|0)+8>>2];if((c[g>>2]|0)!=(c[
c[o>>2]>>2]|0)){c[k>>2]=6;p=c[k>>2]|0;i=q;return p|0}c[l>>2]=0;while(1){if((c[
l>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;if((c[(c[h>>2]|0)+(c[l>
;>2]<<2)>>2]|0)<-65536){p=9;break}if((c[(c[h>>2]|0)+(c[l>>2]<<2)>
;>2]|0)>65536){p=9;break}c[l>>2]=(c[l>>2]|0)+1}if((p|0)==9){c[k>>2]=6;p=c[k>>2
]|0;i=q;return p|0}if((c[(c[j>>2]|0)+36>>2]|0)==0?(p=ye(c[f>>2]|0)|0,c[k>>2]=p,p|0):0){p
=c[k>>2]|0;i=q;return p|0}a:do if(!(c[(c[j>>2]|0)+4>>2]|0)){p=hc(c[n>>2]|0,4,0,c[g>
x3e;2]|0,0,k)|0;c[(c[j>>2]|0)+4>>2]=p;if(c[k>>2]|0){p=c[k>>2]|0;i=q;return p|0}else{c[m
x3e;>2]=1;break}}else{c[m>>2]=0;c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c
[g>>2]|0)>>>0)break a;if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[l>>2]<<2
)>>2]|0)!=(c[(c[h>>2]|0)+(c[l>>2]<<2)>>2]|0))break;c[l>>2]=(c[l>
;>2]|0)+1}c[m>>2]=2}while(0);c[c[j>>2]>>2]=c[g>>2];Ss(c[(c[j>>2]|0)+4>
;>2]|0,c[h>>2]|0,c[g>>2]<<2|0)|0;a[(c[f>>2]|0)+708>>0]=1;if(!(c[(c[f>
;>2]|0)+672>>2]|0)){p=c[k>>2]|0;i=q;return p|0}switch(c[m>>2]|0){case 2:{Fb(c[n>>2]|
0,c[(c[f>>2]|0)+672>>2]|0);c[(c[f>>2]|0)+672>>2]=0;c[(c[f>>2]|0)+672>>
;2]=0;ze(c[f>>2]|0,c[(c[f>>2]|0)+104>>2]|0)|0;p=c[k>>2]|0;i=q;return p|0}case 1:{Ae(c[f
x3e;>2]|0,c[(c[f>>2]|0)+104>>2]|0)|0;p=c[k>>2]|0;i=q;return p|0}default:{p=c[k>>2]|
0;i=q;return p|0}}return 0}function xe(b,d){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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,
x=0,y=0;y=i;i=i+96|0;k=y+92|0;s=y+88|0;r=y+84|0;o=y+80|0;f=y+76|0;u=y+72|0;h=y+68|0;m=y+64|0;n=y+60|0;v=y+56|0;p=y+52|0;x=y+48|0
;t=y+44|0;q=y+40|0;l=y+24|0;g=y+4|0;w=y;c[k>>2]=b;c[s>>2]=d;c[r>>2]=c[(c[k>>2]|0)+104>
;>2];c[o>>2]=c[(c[k>>2]|0)+100>>2];c[u>>2]=0;a:do if(!(c[(c[k>>2]|0)+712
x3e;>2]|0)){d=Wa[c[(c[k>>2]|0)+508>>2]&31](c[k>>2]|0,1735811442,c[r>>2]|0,f)|0
;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0}d=Wa[c[(c[k>>2]|0)+508>>2]&31](c[k>
;>2]|0,1719034226,c[r>>2]|0,f)|0;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0}c[h>>
2]=Mc(c[r>>2]|0)|0;d=le(c[r>>2]|0,5428,l)|0;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0
}if(((((((c[l>>2]|0)==65536?(e[l+6>>1]|0|0)==2:0)?(e[l+10>>1]|0|0)==20:0)?(e[l+8>>1]|0|0
)<=16382:0)?(e[l+14>>1]|0|0)==(4+((e[l+8>>1]|0)<<2)|0):0)?(e[l+12>>1]|0|0)<=32511
:0)?(d=(e[l+4>>1]|0)+((e[l+8>>1]|0)*20|0)+(_(e[l+12>>1]|0,e[l+14>>1]|0)|0)|0,d>>
;>0<=(c[f>>2]|0)>>>0):0){f=bc(c[o>>2]|0,40,u)|0;c[(c[k>>2]|0)+712>
x3e;2]=f;if(c[u>>2]|0){x=c[u>>2]|0;i=y;return x|0}f=20+((e[l+8>>1]|0)*24|0)+((e[l+12>>1]|
0)<<3)+((_(e[l+12>>1]|0,e[l+8>>1]|0)|0)<<2)|0;c[(c[(c[k>>2]|0)+712>>
2]|0)+12>>2]=f+((e[l+8>>1]|0)*5|0);c[v>>2]=bc(c[o>>2]|0,c[(c[(c[k>>2]|0)+712
x3e;>2]|0)+12>>2]|0,u)|0;if(c[u>>2]|0){x=c[u>>2]|0;i=y;return x|0}c[(c[(c[k>>2]|0)+
712>>2]|0)+8>>2]=c[v>>2];c[c[v>>2]>>2]=e[l+8>>1];c[(c[v>>2
]|0)+4>>2]=-1;c[(c[v>>2]|0)+8>>2]=e[l+12>>1];c[(c[v>>2]|0)+12>>2]=(c
[v>>2]|0)+20;c[(c[v>>2]|0)+16>>2]=(c[(c[v>>2]|0)+12>>2]|0)+((e[l+8>>
1]|0)*24|0);c[p>>2]=(c[(c[v>>2]|0)+16>>2]|0)+((e[l+12>>1]|0)<<3);c[m>>
;2]=0;while(1){b=c[p>>2]|0;if((c[m>>2]|0)>=(e[l+12>>1]|0|0))break;c[(c[(c[v>>2]|0)+
16>>2]|0)+(c[m>>2]<<3)>>2]=b;c[p>>2]=(c[p>>2]|0)+((e[l+8>>
1]|0)<<2);c[m>>2]=(c[m>>2]|0)+1}c[x>>2]=b;c[m>>2]=0;while(1){if((c[m>>
;2]|0)>=(e[l+8>>1]|0|0))break;c[(c[(c[v>>2]|0)+12>>2]|0)+((c[m>>2]|0)*24|0)>
x3e;2]=c[x>>2];c[x>>2]=(c[x>>2]|0)+5;c[m>>2]=(c[m>>2]|0)+1}h=Kc(c[r>>
;2]|0,(c[h>>2]|0)+(e[l+4>>1]|0)|0)|0;c[u>>2]=h;if(h|0){x=c[u>>2]|0;i=y;return x|0}c[t>
;>2]=c[(c[v>>2]|0)+12>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(e[l+8>>
;1]|0|0))break;h=le(c[r>>2]|0,5464,g)|0;c[u>>2]=h;if(h|0){j=50;break}c[(c[t>>2]|0)+16>>2
]=c[g>>2];c[(c[t>>2]|0)+4>>2]=c[g+4>>2];c[(c[t>>2]|0)+8>>2]=c[g+8>
;>2];c[(c[t>>2]|0)+12>>2]=c[g+12>>2];c[(c[t>>2]|0)+20>>2]=e[g+18>>
;1];a[c[c[t>>2]>>2]>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>24;a[(c[c[t
x3e;>2]>>2]|0)+1>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>16;a[(c[c[t>>
;2]>>2]|0)+2>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>8;a[(c[c[t>>2]>
;>2]|0)+3>>0]=c[(c[t>>2]|0)+16>>2];a[(c[c[t>>2]>>2]|0)+4>>0]=0;
c[t>>2]=(c[t>>2]|0)+24;c[m>>2]=(c[m>>2]|0)+1}if((j|0)==50){x=c[u>>2]|0;i=y;return
x|0}c[q>>2]=c[(c[v>>2]|0)+16>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(e[l
+12>>1]|0|0))break a;j=ee(c[r>>2]|0,4+((e[l+8>>1]|0)<<2)|0)|0;c[u>>2]=j;if(j|0
)break;j=(ie(c[r>>2]|0)|0)&65535;c[(c[q>>2]|0)+4>>2]=j;ie(c[r>>2]|0)|0;c[n>>
;2]=0;while(1){b=c[r>>2]|0;if((c[n>>2]|0)>=(e[l+8>>1]|0|0))break;j=je(b)|0;c[(c[c[q>>
;2]>>2]|0)+(c[n>>2]<<2)>>2]=j;c[n>>2]=(c[n>>2]|0)+1}ge(b);c[m>
x3e;2]=(c[m>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+8}x=c[u>>2]|0;i=y;return x|0}c[u>>2]=
8;x=c[u>>2]|0;i=y;return x|0}while(0);if(!(c[s>>2]|0)){x=c[u>>2]|0;i=y;return x|0}c[v>>2
]=bc(c[o>>2]|0,c[(c[(c[k>>2]|0)+712>>2]|0)+12>>2]|0,u)|0;if(c[u>>2]|0){x=c[u
x3e;>2]|0;i=y;return x|0}Ss(c[v>>2]|0,c[(c[(c[k>>2]|0)+712>>2]|0)+8>>2]|0,c[(c[(c[k
>>2]|0)+712>>2]|0)+12>>2]|0)|0;c[(c[v>>2]|0)+12>>2]=(c[v>>2]|0)+20;c
[(c[v>>2]|0)+16>>2]=(c[(c[v>>2]|0)+12>>2]|0)+((c[c[v>>2]>>2]|0)*24|0
);c[p>>2]=(c[(c[v>>2]|0)+16>>2]|0)+(c[(c[v>>2]|0)+8>>2]<<3);c[w>
;>2]=0;while(1){if((c[w>>2]|0)>>>0>=(c[(c[v>>2]|0)+8>>2]|0)>>
x3e;0)break;c[(c[(c[v>>2]|0)+16>>2]|0)+(c[w>>2]<<3)>>2]=c[p>>2];c[p
x3e;>2]=(c[p>>2]|0)+(c[c[v>>2]>>2]<<2);c[w>>2]=(c[w>>2]|0)+1}c[
t>>2]=c[(c[v>>2]|0)+12>>2];c[x>>2]=c[p>>2];c[w>>2]=0;while(1){if((c[
w>>2]|0)>>>0>=(c[c[v>>2]>>2]|0)>>>0)break;c[c[t>>2]
x3e;>2]=c[x>>2];b=c[t>>2]|0;do if((c[(c[t>>2]|0)+16>>2]|0)!=2003265652){d=c[t>
x3e;2]|0;if((c[b+16>>2]|0)==2003072104){c[d>>2]=10521;break}b=c[t>>2]|0;if((c[d+16>>2]|0
)==1869640570){c[b>>2]=10527;break}if((c[b+16>>2]|0)==1936486004)c[c[t>>2]>>2]=10539}else
c[b>>2]=12384;while(0);c[x>>2]=(c[x>>2]|0)+5;c[t>>2]=(c[t>>2]|0)+24;c[w>
x3e;2]=(c[w>>2]|0)+1}c[c[s>>2]>>2]=c[v>>2];x=c[u>>2]|0;i=y;return x|0}function
ye(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+64|0;b=o+56|0;n=o+52|0;l=o+48|0;d=o+44|0;f=o+40|0;j=o+36|0;
k=o+32|0;h=o+24|0;m=o+20|0;g=o;c[b>>2]=a;c[n>>2]=c[(c[b>>2]|0)+104>>2];c[l>>2]=
c[(c[n>>2]|0)+28>>2];c[d>>2]=c[(c[b>>2]|0)+712>>2];b=Wa[c[(c[b>>2]|0
)+508>>2]&31](c[b>>2]|0,1735811442,c[n>>2]|0,o+28|0)|0;c[f>>2]=b;if(b|0){n=c[f>
;>2]|0;i=o;return n|0}c[h>>2]=Mc(c[n>>2]|0)|0;b=le(c[n>>2]|0,5496,g)|0;c[f>>2]=b;if
(b|0){n=c[f>>2]|0;i=o;return n|0}c[(c[d>>2]|0)+24>>2]=e[g+6>>1];c[(c[d>>2]|0)+
32>>2]=e[g+12>>1];c[m>>2]=(c[h>>2]|0)+(c[g+16>>2]|0);if((c[g>>2]|0)==
65536?(e[g+4>>1]|0|0)==(c[c[(c[d>>2]|0)+8>>2]>>2]&65535|0):0){b=hc(c[l>>2
]|0,4,0,(c[(c[d>>2]|0)+32>>2]|0)+1|0,0,f)|0;c[(c[d>>2]|0)+36>>2]=b;if(c[f>>2]|
0){n=c[f>>2]|0;i=o;return n|0}a=c[n>>2]|0;b=(c[(c[d>>2]|0)+32>>2]|0)+1|0;if((e[g+14>
;>1]|0)&1|0){b=ee(a,b<<2)|0;c[f>>2]=b;if(b|0){n=c[f>>2]|0;i=o;return n|0}c[j>>
2]=0;while(1){if((c[j>>2]|0)>>>0>(c[(c[d>>2]|0)+32>>2]|0)>>>0)break
;b=c[m>>2]|0;b=b+(je(c[n>>2]|0)|0)|0;c[(c[(c[d>>2]|0)+36>>2]|0)+(c[j>>2]<
x3c;2)>>2]=b;c[j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|0)}else{b=ee(a,b<<1)|0;c[f>
x3e;2]=b;if(b|0){n=c[f>>2]|0;i=o;return n|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0
x3e;(c[(c[d>>2]|0)+32>>2]|0)>>>0)break;b=c[m>>2]|0;b=b+(((ie(c[n>>2]|0)|0
)&65535)<<1)|0;c[(c[(c[d>>2]|0)+36>>2]|0)+(c[j>>2]<<2)>>2]=b;c[
j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|0)}if(!(c[(c[d>>2]|0)+24>>2]|0)){n=c[f>>
;2]|0;i=o;return n|0}m=hc(c[l>>2]|0,4,0,_(e[g+4>>1]|0,c[(c[d>>2]|0)+24>>2]|0)|0,0,f)|0;c
[(c[d>>2]|0)+28>>2]=m;if(c[f>>2]|0){n=c[f>>2]|0;i=o;return n|0}m=Kc(c[n>>2]|0,(
c[h>>2]|0)+(c[g+8>>2]|0)|0)|0;c[f>>2]=m;if(m|0){n=c[f>>2]|0;i=o;return n|0}m=ee(c[n>
;>2]|0,(_(c[(c[d>>2]|0)+24>>2]|0,e[g+4>>1]|0)|0)<<1)|0;c[f>>2]=m;if(m|0){
n=c[f>>2]|0;i=o;return n|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[d>
;>2]|0)+24>>2]|0)>>>0)break;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>
;0>=(e[g+4>>1]|0)>>>0)break;l=(ie(c[n>>2]|0)|0)<<16>>16<<2
;m=_(c[j>>2]|0,e[g+4>>1]|0)|0;c[(c[(c[d>>2]|0)+28>>2]|0)+(m+(c[k>>2]|0)<
x3c;2)>>2]=l;c[k>>2]=(c[k>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|
0);n=c[f>>2]|0;i=o;return n|0}c[f>>2]=8;n=c[f>>2]|0;i=o;return n|0}function ze(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;n=i;i=i+32|0;h=n+24|0;j=n+20|0;l=n+16|0;f=n+12|0;g=n+8|0;k=n+4|0;m=n;c[h>>2]=d;c[j>
;>2]=e;c[f>>2]=c[(c[j>>2]|0)+28>>2];c[l>>2]=Wa[c[(c[h>>2]|0)+508>>
;2]&31](c[h>>2]|0,1668707360,c[j>>2]|0,g)|0;if(c[l>>2]|0){c[(c[h>>2]|0)+668>
x3e;2]=0;c[(c[h>>2]|0)+672>>2]=0;c[l>>2]=0;m=c[l>>2]|0;i=n;return m|0}c[(c[h>>
2]|0)+668>>2]=((c[g>>2]|0)>>>0)/2|0;g=hc(c[f>>2]|0,2,0,c[(c[h>>2]|0)+668
x3e;>2]|0,0,l)|0;c[(c[h>>2]|0)+672>>2]=g;if(c[l>>2]|0){m=c[l>>2]|0;i=n;return m|0}g
=ee(c[j>>2]|0,c[(c[h>>2]|0)+668>>2]<<1)|0;c[l>>2]=g;if(g|0){m=c[l>>2
]|0;i=n;return m|0}c[k>>2]=c[(c[h>>2]|0)+672>>2];c[m>>2]=(c[k>>2]|0)+(c[(c[h
x3e;>2]|0)+668>>2]<<1);while(1){d=c[j>>2]|0;if((c[k>>2]|0)>>>0>=(
c[m>>2]|0)>>>0)break;g=ie(d)|0;b[c[k>>2]>>1]=g;c[k>>2]=(c[k>>2]|
0)+2}ge(d);if(!(a[(c[h>>2]|0)+708>>0]|0)){m=c[l>>2]|0;i=n;return m|0}c[l>>2]=Ae(c[h>
;>2]|0,c[j>>2]|0)|0;m=c[l>>2]|0;i=n;return m|0}function Ae(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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=i;i=i+96|0;h=C+84|0;j=C+80|0;n=C+76|0;u=C+72|0;g=C+68|0;f
=C+64|0;y=C+60|0;v=C+56|0;o=C+52|0;p=C+48|0;s=C+44|0;B=C+40|0;r=C+36|0;q=C+32|0;l=C+28|0;x=C+24|0;t=C+20|0;m=C+16|0;z=C+12|0;A=C
+8|0;k=C+4|0;w=C;c[h>>2]=a;c[j>>2]=d;c[u>>2]=c[(c[j>>2]|0)+28>>2];c[B>>
;2]=0;c[r>>2]=0;c[q>>2]=0;c[l>>2]=c[(c[h>>2]|0)+712>>2];if(!(c[l>>2]|
0)){c[n>>2]=0;z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>
;>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>
;2]|0;i=C;return B|0}if(!(c[(c[h>>2]|0)+672>>2]|0)){c[n>>2]=0;z=c[u>>2]|0;A=c[B>>
;2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;
B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}c[n>>2]=Wa[c[(c[h>>2]|
0)+508>>2]&31](c[h>>2]|0,1668702578,c[j>>2]|0,f)|0;if(c[n>>2]|0){c[n>>2]=
0;z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[
r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}f
=ee(c[j>>2]|0,c[f>>2]|0)|0;c[n>>2]=f;if(f|0){c[n>>2]=0;z=c[u>>2]|0;A=c[B>
x3e;2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|
0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}c[g>>2]=(c[(c[j>>2]|
0)+32>>2]|0)-(c[c[j>>2]>>2]|0);a:do if((je(c[j>>2]|0)|0)==65536){c[B>>2]=hc(c[
u>>2]|0,4,0,c[c[l>>2]>>2]|0,0,n)|0;if(((c[n>>2]|0)==0?(c[r>>2]=hc(c[u>>
;2]|0,4,0,c[c[l>>2]>>2]|0,0,n)|0,(c[n>>2]|0)==0):0)?(c[q>>2]=hc(c[u>>2]|0,4,0,
c[c[l>>2]>>2]|0,0,n)|0,(c[n>>2]|0)==0):0){c[y>>2]=(ie(c[j>>2]|0)|0)&65535
;g=c[g>>2]|0;c[v>>2]=g+((ie(c[j>>2]|0)|0)&65535);c[p>>2]=0;while(1){if((c[p>
x3e;2]|0)>>>0>=(c[y>>2]&4095)>>>0)break a;c[z>>2]=(ie(c[j>>
;2]|0)|0)&65535;c[A>>2]=(ie(c[j>>2]|0)|0)&65535;do if(c[A>>2]&32768|0){c[s>>
;2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[c[l>>2]>>2]|0)>>>0)break;
g=(ie(c[j>>2]|0)|0)<<16>>16<<2;c[(c[B>>2]|0)+(c[s>>2]<<2)
x3e;>2]=g;c[s>>2]=(c[s>>2]|0)+1}b:do if(c[A>>2]&16384|0){c[s>>2]=0;while(1){if
((c[s>>2]|0)>>>0>=(c[c[l>>2]>>2]|0)>>>0)break;g=(ie(c[j>
x3e;2]|0)|0)<<16>>16<<2;c[(c[r>>2]|0)+(c[s>>2]<<2)>>2]=g;c
[s>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[c[l
x3e;>2]>>2]|0)>>>0)break b;g=(ie(c[j>>2]|0)|0)<<16>>16<<2;
c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]=g;c[s>>2]=(c[s>>2]|0)+1}}while(0);c[k
>>2]=Be(c[l>>2]|0,c[A>>2]&65535,c[B>>2]|0,c[r>>2]|0,c[q>>2]|0)|
0;if(c[k>>2]|0?c[A>>2]&8192|0:0){c[o>>2]=(c[(c[j>>2]|0)+32>>2]|0)-(c[c[j
x3e;>2]>>2]|0);c[(c[j>>2]|0)+32>>2]=(c[c[j>>2]>>2]|0)+(c[v>>2]|
0);c[t>>2]=Ce(c[j>>2]|0,x)|0;if(!(c[x>>2]|0))a=c[(c[h>>2]|0)+668>>2]|0;else a=
c[x>>2]|0;c[m>>2]=De(c[j>>2]|0,a)|0;c:do if(!((c[t>>2]|0)==0|(c[m>>2]|0)==0)){
g=(c[t>>2]|0)==(-1|0);c[s>>2]=0;if(g)while(1){if((c[s>>2]|0)>>>0>=(c[(c[h>
;>2]|0)+668>>2]|0)>>>0)break c;g=b[(c[(c[h>>2]|0)+672>>2]|0)+(c[s>>2
]<<1)>>1]|0;g=g+(Mb(b[(c[m>>2]|0)+(c[s>>2]<<1)>>1]|0,c[k>>
2]|0)|0)&65535;b[(c[(c[h>>2]|0)+672>>2]|0)+(c[s>>2]<<1)>>1]=g;c[s>
x3e;2]=(c[s>>2]|0)+1}else while(1){if((c[s>>2]|0)>>>0>=(c[x>>2]|0)>>
x3e;0)break c;c[w>>2]=e[(c[t>>2]|0)+(c[s>>2]<<1)>>1];g=b[(c[(c[h>>2]|
0)+672>>2]|0)+(c[w>>2]<<1)>>1]|0;g=g+(Mb(b[(c[m>>2]|0)+(c[s>>2]<
;<1)>>1]|0,c[k>>2]|0)|0)&65535;b[(c[(c[h>>2]|0)+672>>2]|0)+(c[w>>2]
x3c;<1)>>1]=g;c[s>>2]=(c[s>>2]|0)+1}}while(0);if((c[t>>2]|0)!=(-1|0)){Fb(c[u>
x3e;2]|0,c[t>>2]|0);c[t>>2]=0}Fb(c[u>>2]|0,c[m>>2]|0);c[m>>2]=0;c[v>>
;2]=(c[v>>2]|0)+(c[z>>2]|0);c[(c[j>>2]|0)+32>>2]=(c[c[j>>2]>>2]|0)+(
c[o>>2]|0);break}c[v>>2]=(c[v>>2]|0)+(c[z>>2]|0)}else{d:do if(c[A>>2]&16384
|0){c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=c[c[l>>2]>>2]<<
1>>>0)break d;ie(c[j>>2]|0)|0;c[s>>2]=(c[s>>2]|0)+1}}while(0);c[v>>2]=(c[
v>>2]|0)+(c[z>>2]|0)}while(0);c[p>>2]=(c[p>>2]|0)+1}}}else c[n>>2]=0;while(0);
ge(c[j>>2]|0);z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>
;>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>
;2]|0;i=C;return B|0}function Be(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;r=i;i=i+32|0;j
=r+24|0;k=r+28|0;l=r+20|0;m=r+16|0;n=r+12|0;o=r+8|0;q=r+4|0;p=r;c[j>>2]=a;b[k>>1]=d;c[l>>2]=f;c[m
x3e;>2]=g;c[n>>2]=h;c[q>>2]=65536;c[o>>2]=0;a:while(1){if((c[o>>2]|0)>>
x3e;0>=(c[c[j>>2]>>2]|0)>>>0){a=19;break}do if(c[(c[l>>2]|0)+(c[o>>2
]<<2)>>2]|0){if(!(c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>
2]|0)){a=9;break a}if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)<0?(c
[(c[l>>2]|0)+(c[o>>2]<<2)>>2]|0)>0:0){a=9;break a}if((c[(c[(c[j>>2]|0)+4
x3e;>2]|0)+(c[o>>2]<<2)>>2]|0)>0?(c[(c[l>>2]|0)+(c[o>>2]<<
2)>>2]|0)<0:0){a=9;break a}if(!((e[k>>1]|0)&16384)){f=c[(c[(c[j>>2]|0)+4>>2]|0
)+(c[o>>2]<<2)>>2]|0;c[q>>2]=xb(c[q>>2]|0,(c[(c[(c[j>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<2)>>2]|0)>0?f:0-f|0,65536)|0;break}if((c[(c[(c[j>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<2)>>2]|0)<=(c[(c[m>>2]|0)+(c[o>>2]<<2)>
;>2]|0)){a=14;break a}if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)
x3e;=(c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]|0)){a=14;break a}a=c[o>>2]|0;if((c[(c[(c[
j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)<(c[(c[l>>2]|0)+(c[o>
x3e;2]<<2)>>2]|0)){c[p>>2]=xb((c[(c[(c[j>>2]|0)+4>>2]|0)+(a<<2)>
;>2]|0)-(c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]|0)|0,65536,(c[(c[l>>2]|0)+(c[o>
;>2]<<2)>>2]|0)-(c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]|0)|0)|0;c[q>
;>2]=xb(c[q>>2]|0,c[p>>2]|0,65536)|0;break}else{c[p>>2]=xb((c[(c[n>>2]|0)+(a<
x3c;2)>>2]|0)-(c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)|0,65536
,(c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[l>>2]|0)+(c[o>>2]<<
;2)>>2]|0)|0)|0;c[q>>2]=xb(c[q>>2]|0,c[p>>2]|0,65536)|0;break}}while(0);c[o>>2
]=(c[o>>2]|0)+1}if((a|0)==9){c[q>>2]=0;q=c[q>>2]|0;i=r;return q|0}else if((a|0)==14){c[q>>
;2]=0;q=c[q>>2]|0;i=r;return q|0}else if((a|0)==19){q=c[q>>2]|0;i=r;return q|0}return 0}function Ce(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;p=i;i=i+48|0;e=p+40|0;f=p+36|0;q=p+32|0;n=p+28|0;m=p+24|0;o=p+20|0;
j=p+16|0;k=p+12|0;h=p+8|0;l=p+4|0;g=p;c[f>>2]=a;c[q>>2]=d;c[l>>2]=c[(c[f>>2]|0)+28>
x3e;2];c[g>>2]=0;c[g>>2]=c[g>>2];a=(he(c[f>>2]|0)|0)&255;c[m>>2]=a;c[c[q
x3e;>2]>>2]=a;if(!(c[m>>2]|0)){c[e>>2]=-1;q=c[e>>2]|0;i=p;return q|0}if(c[m>
x3e;2]&128|0){q=(he(c[f>>2]|0)|0)&255;c[m>>2]=q|(c[m>>2]&127)<<8}c[n>
;>2]=hc(c[l>>2]|0,2,0,c[m>>2]|0,0,g)|0;if(c[g>>2]|0){c[e>>2]=0;q=c[e>>2]|
0;i=p;return q|0}c[j>>2]=0;a:while(1){if((c[j>>2]|0)>=(c[m>>2]|0))break;c[o>>2]=(he
(c[f>>2]|0)|0)&255;if(c[o>>2]&128|0){c[o>>2]=c[o>>2]&127;q=ie(c[f>
x3e;2]|0)|0;a=c[j>>2]|0;c[j>>2]=a+1;b[(c[n>>2]|0)+(a<<1)>>1]=q;c[h>>
2]=q&65535;if((c[o>>2]|0)<1)break;if(((c[j>>2]|0)+(c[o>>2]|0)|0)>=(c[m>>2
]|0))break;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[o>>2]|0))continue a;a=(ie(c[f>>2]|
0)|0)&65535;a=(c[h>>2]|0)+a|0;c[h>>2]=a;q=c[j>>2]|0;c[j>>2]=q+1;b[(c[n>>2
]|0)+(q<<1)>>1]=a;c[k>>2]=(c[k>>2]|0)+1}}else{q=(he(c[f>>2]|0)|0)&255;a=c
[j>>2]|0;c[j>>2]=a+1;b[(c[n>>2]|0)+(a<<1)>>1]=q;c[h>>2]=q&65535
;if((c[o>>2]|0)<1)break;if(((c[j>>2]|0)+(c[o>>2]|0)|0)>=(c[m>>2]|0))break;c[k
x3e;>2]=0;while(1){if((c[k>>2]|0)>=(c[o>>2]|0))continue a;a=(he(c[f>>2]|0)|0)&255;a
=(c[h>>2]|0)+a|0;c[h>>2]=a;q=c[j>>2]|0;c[j>>2]=q+1;b[(c[n>>2]|0)+(q<<
;1)>>1]=a;c[k>>2]=(c[k>>2]|0)+1}}}c[e>>2]=c[n>>2];q=c[e>>2]|0;i=p;return
q|0}function De(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;n=i;i=i+48|0;k=n+32|0;e=n+28|0;f=n+24|0;l=n+20|0;j
=n+16|0;g=n+12|0;h=n+8|0;m=n+4|0;o=n;c[e>>2]=a;c[f>>2]=d;c[l>>2]=0;c[m>>2]=c[(c[e>
x3e;2]|0)+28>>2];c[o>>2]=0;c[o>>2]=c[o>>2];c[l>>2]=hc(c[m>>2]|0,2,0,
c[f>>2]|0,0,o)|0;if(c[o>>2]|0){c[k>>2]=0;o=c[k>>2]|0;i=n;return o|0}c[g>>2]=0;
while(1){if((c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0){e=19;break}c[j>>2
]=(he(c[e>>2]|0)|0)&255;a:do if(!(c[j>>2]&128|0)){o=(c[j>>2]&64|0)!=0;c[h>>
;2]=0;if(o)while(1){if((c[h>>2]|0)>>>0>(c[j>>2]&63)>>>0)break a;if((
c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break a;a=ie(c[e>>2]|0)|0;o=c[g
>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=a;c[h>>2]=(c[h>>
;2]|0)+1}else while(1){if((c[h>>2]|0)>>>0>(c[j>>2]&63)>>>0)break a;if
((c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break a;a=(he(c[e>>2]|0)|0)
x3c;<24>>24;o=c[g>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=a;
c[h>>2]=(c[h>>2]|0)+1}}else{c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>(c
[j>>2]&63)>>>0)break a;if((c[g>>2]|0)>>>0>=(c[f>>2]|0)>
;>>0)break a;o=c[g>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=0;c[h
x3e;>2]=(c[h>>2]|0)+1}}while(0);if((c[h>>2]|0)>>>0<=(c[j>>2]&63)>
;>>0){e=18;break}}if((e|0)==18){Fb(c[m>>2]|0,c[l>>2]|0);c[l>>2]=0;c[k>>2]=0;o=
c[k>>2]|0;i=n;return o|0}else if((e|0)==19){c[k>>2]=c[l>>2];o=c[k>>2]|0;i=n;return o|0}return
0}function Ee(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,t=0,u=0;u=i;i=i+48|0;g=u+44|0;h=u+40
|0;j=u+36|0;n=u+32|0;s=u+28|0;m=u+24|0;r=u+20|0;o=u+16|0;p=u+12|0;k=u+8|0;l=u+4|0;q=u;c[g>>2]=b;c[h>>2]=d;c[
j>>2]=f;c[n>>2]=0;c[s>>2]=0;c[q>>2]=c[(c[g>>2]|0)+100>>2];if((c[(c[g
>>2]|0)+712>>2]|0)==0?(d=xe(c[g>>2]|0,0)|0,c[n>>2]=d,d|0):0){r=c[q>>2]|0;t=c[s
>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}c[m>>2]=c[(c[g>>2]|0)+712
x3e;>2];c[r>>2]=c[(c[m>>2]|0)+8>>2];if((c[h>>2]|0)!=(c[c[r>>2]>>
;2]|0)){c[n>>2]=6;r=c[q>>2]|0;t=c[s>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return
t|0}c[s>>2]=hc(c[q>>2]|0,4,0,c[c[r>>2]>>2]|0,0,n)|0;if(c[n>>2]|0){r=c[q>
x3e;2]|0;t=c[s>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}c[k>>2]=c[(c[r>
x3e;2]|0)+12>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[c[r>>2]
x3e;>2]|0)>>>0)break;if((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|0)>(c[(
c[k>>2]|0)+12>>2]|0)){t=10;break}if((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|
0)<(c[(c[k>>2]|0)+4>>2]|0)){t=10;break}do if((c[(c[j>>2]|0)+(c[o>>2]<<2)
x3e;>2]|0)>=(c[(c[k>>2]|0)+8>>2]|0)){f=c[o>>2]|0;if((c[(c[k>>2]|0)+12>>
;2]|0)==(c[(c[k>>2]|0)+8>>2]|0)){c[(c[s>>2]|0)+(f<<2)>>2]=0;break}else{d=xb((c
[(c[j>>2]|0)+(f<<2)>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0,65536,(c[(c[k>>
2]|0)+12>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0)|0;c[(c[s>>2]|0)+(c[o>>2]<<
;2)>>2]=d;break}}else{d=0-(xb((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[k>
x3e;2]|0)+8>>2]|0)|0,65536,(c[(c[k>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0)|
0)|0;c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]=d}while(0);c[o>>2]=(c[o>>2]|0)+1
;c[k>>2]=(c[k>>2]|0)+24}if((t|0)==10){c[n>>2]=6;r=c[q>>2]|0;t=c[s>>2]|0;Fb(r,t
);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}if(!(a[(c[m>>2]|0)+16>>0]|0))Fe(c[g>>2]|
0);a:do if(c[(c[m>>2]|0)+20>>2]|0){c[l>>2]=c[(c[m>>2]|0)+20>>2];c[o>>
;2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[c[r>>2]>>2]|0)>>>0)break
a;c[p>>2]=1;while(1){if((c[p>>2]|0)>>>0>=(e[c[l>>2]>>1]|0)>>
;>0)break;if((c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]|0)<(c[(c[(c[l>>2]|0)+4
x3e;>2]|0)+(c[p>>2]<<3)>>2]|0)){t=25;break}c[p>>2]=(c[p>>2]|0)+1}if((t|0)==
25){t=0;m=xb((c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[(c[l>>2]|0)+4>>
;2]|0)+((c[p>>2]|0)-1<<3)>>2]|0)|0,65536,(c[(c[(c[l>>2]|0)+4>>2]|0)+(c[p>
x3e;2]<<3)>>2]|0)-(c[(c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1<<3)>
;>2]|0)|0)|0;m=xb(m,(c[(c[(c[l>>2]|0)+4>>2]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(
c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1<<3)+4>>2]|0)|0,65536)|0;c[(c[s>>
;2]|0)+(c[o>>2]<<2)>>2]=m+(c[(c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1
x3c;<3)+4>>2]|0)}c[o>>2]=(c[o>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+8}}while(0);c[
n>>2]=we(c[g>>2]|0,c[h>>2]|0,c[s>>2]|0)|0;r=c[q>>2]|0;t=c[s>>2]|0;Fb
(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|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,p=0,
q=0,r=0;q=i;i=i+48|0;r=q+40|0;p=q+36|0;o=q+32|0;m=q+28|0;j=q+24|0;g=q+20|0;l=q+16|0;f=q+12|0;h=q+8|0;n=q+4|0;k=q;c[r>>
2]=d;c[p>>2]=c[(c[r>>2]|0)+104>>2];c[o>>2]=c[(c[p>>2]|0)+28>>2];c[m
x3e;>2]=c[(c[r>>2]|0)+712>>2];c[g>>2]=0;c[g>>2]=c[g>>2];a[(c[m>>
;2]|0)+16>>0]=1;d=Wa[c[(c[r>>2]|0)+508>>2]&31](c[r>>2]|0,1635148146,c[p>>
2]|0,k)|0;c[g>>2]=d;if(d|0){i=q;return}r=ee(c[p>>2]|0,c[k>>2]|0)|0;c[g>>2]=r;if(r|0){i=q
;return}c[l>>2]=je(c[p>>2]|0)|0;c[f>>2]=je(c[p>>2]|0)|0;a:do if(((c[l>>2]|0)==
65536?(c[f>>2]|0)==(c[c[(c[m>>2]|0)+8>>2]>>2]|0):0)?(r=hc(c[o>>2]|0,8,0,c[f>
;>2]|0,0,g)|0,c[(c[m>>2]|0)+20>>2]=r,(c[g>>2]|0)==0):0){c[j>>2]=c[(c[m>>2
]|0)+20>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[f>>2]|0))break a;r=ie(c[p>
x3e;2]|0)|0;b[c[j>>2]>>1]=r;r=hc(c[o>>2]|0,8,0,e[c[j>>2]>>1]|0,0,g)|0;c[(c[j
x3e;>2]|0)+4>>2]=r;if(c[g>>2]|0)break;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(e[c[
j>>2]>>1]|0|0))break;r=(ie(c[p>>2]|0)|0)<<16>>16<<2;c[(c[(c[j>
x3e;2]|0)+4>>2]|0)+(c[n>>2]<<3)>>2]=r;r=(ie(c[p>>2]|0)|0)<<16>
x3e;16<<2;c[(c[(c[j>>2]|0)+4>>2]|0)+(c[n>>2]<<3)+4>>2]=r;c[n>
x3e;2]=(c[n>>2]|0)+1}c[h>>2]=(c[h>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+8}c[n>>
;2]=(c[h>>2]|0)-1;while(1){f=c[o>>2]|0;if((c[n>>2]|0)<0)break;Fb(f,c[(c[(c[m>>2]|0)+
20>>2]|0)+(c[n>>2]<<3)+4>>2]|0);c[(c[(c[m>>2]|0)+20>>2]|0)+(c[n>
;>2]<<3)+4>>2]=0;c[n>>2]=(c[n>>2]|0)+-1}Fb(f,c[(c[m>>2]|0)+20>>
2]|0);c[(c[m>>2]|0)+20>>2]=0;c[(c[m>>2]|0)+20>>2]=0}while(0);ge(c[p>>2]|0);i=q
;return}function Ge(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;p=i;i=i+32|0;h=p+28|0;j=p+24|0;g=p+20|0;k=p
+16|0;n=p+12|0;o=p+8|0;l=p+4|0;m=p;c[j>>2]=a;c[g>>2]=e;c[k>>2]=f;c[o>>2]=0;c[n>>
;2]=0;do if((c[g>>2]|0)>>>0<(c[(c[j>>2]|0)+732>>2]|0)>>>0){a=c[(
c[j>>2]|0)+736>>2]|0;f=c[g>>2]|0;if(b[(c[j>>2]|0)+160+50>>1]|0){c[l>>
;2]=a+(f<<2);c[m>>2]=(c[(c[j>>2]|0)+736>>2]|0)+(c[(c[j>>2]|0)+732>>2
]<<2);c[l>>2]=(c[l>>2]|0)+4;c[n>>2]=d[(c[l>>2]|0)+-4>>0]<<
24|d[(c[l>>2]|0)+-4+1>>0]<<16|d[(c[l>>2]|0)+-4+2>>0]<<8|d[(c[l>
x3e;2]|0)+-4+3>>0]<<0;c[o>>2]=c[n>>2];if(((c[l>>2]|0)+4|0)>>>0
x3e;(c[m>>2]|0)>>>0)break;c[l>>2]=(c[l>>2]|0)+4;c[o>>2]=d[(c[l>>
;2]|0)+-4>>0]<<24|d[(c[l>>2]|0)+-4+1>>0]<<16|d[(c[l>>2]|0)+-4+2>
;>0]<<8|d[(c[l>>2]|0)+-4+3>>0]<<0;break}c[l>>2]=a+(f<<1);c[m>
;>2]=(c[(c[j>>2]|0)+736>>2]|0)+(c[(c[j>>2]|0)+732>>2]<<1);c[l>>
2]=(c[l>>2]|0)+2;c[n>>2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>
x3e;2]|0)+-2+1>>0]&65535)<<0)&65535;c[o>>2]=c[n>>2];if(((c[l>>2]|0)+
2|0)>>>0<=(c[m>>2]|0)>>>0){c[l>>2]=(c[l>>2]|0)+2;c[o>>
;2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>>2]|0)+-2+1>>0]&65535)
x3c;<0)&65535}c[n>>2]=c[n>>2]<<1;c[o>>2]=c[o>>2]<<1}while(
0);if((c[n>>2]|0)>>>0>=(c[(c[j>>2]|0)+704>>2]|0)>>>0){c[c[k>
;>2]>>2]=0;c[h>>2]=0;o=c[h>>2]|0;i=p;return o|0}if((c[o>>2]|0)>>>0
x3e;=(c[(c[j>>2]|0)+704>>2]|0)>>>0)c[o>>2]=c[(c[j>>2]|0)+704>>2
];if((c[o>>2]|0)>>>0>=(c[n>>2]|0)>>>0)c[c[k>>2]>>2]=(
c[o>>2]|0)-(c[n>>2]|0);else c[c[k>>2]>>2]=(c[(c[j>>2]|0)+704>>2]|0)-(
c[n>>2]|0);c[h>>2]=c[n>>2];o=c[h>>2]|0;i=p;return o|0}function He(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;r=i;i=i+48|0;g=r+36|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0
;m=r+16|0;n=r+12|0;s=r+8|0;p=r+4|0;o=r;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>
x3e;2]=f;c[o>>2]=c[j>>2];c[s>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+4>>2];c[
p>>2]=Ud(c[s>>2]|0,11340)|0;do if(c[p>>2]|0){s=Kc(c[h>>2]|0,0)|0;c[n>>2]=s;if((
s|0)==0?(c[n>>2]=Za[c[(c[p>>2]|0)+4>>2]&31](c[h>>2]|0,c[o>>2]|0,c[k>
x3e;2]|0,c[l>>2]|0,c[m>>2]|0)|0,(c[n>>2]|0)==0):0){if(((c[(c[o>>2]|0)+148>>2]|
0)!=65536?(c[(c[o>>2]|0)+148>>2]|0)!=131072:0)?(c[(c[o>>2]|0)+148>>2]|0)!=1953658213:0){
q=24;break}s=(c[j>>2]|0)+8|0;c[s>>2]=c[s>>2]|2048;if((c[k>>2]|0)<0){c[g>>
2]=0;s=c[g>>2]|0;i=r;return s|0}c[n>>2]=Za[c[(c[p>>2]|0)+8>>2]&31](c[h>>2
]|0,c[o>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(!(c[n>>2]|0)){if((Ie(c[j>
;>2]|0)|0)<<24>>24){s=(c[j>>2]|0)+8|0;c[s>>2]=c[s>>2]|8192}c[n>>
;2]=Ne(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0)){if(c[(c[j>>2]|0)+8>>2]&1|0
){if(!(c[(c[(c[j>>2]|0)+128>>2]|0)+52>>2]|0))c[n>>2]=Oe(c[o>>2]|0,c[h>>
;2]|0)|0;if(!(c[n>>2]|0))c[n>>2]=ze(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0))c[n
>>2]=Pe(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0))c[n>>2]=Qe(c[o>>2]|0,
c[h>>2]|0)|0}Re(c[o>>2]|0)}}}}else q=24;while(0);if((q|0)==24)c[n>>2]=2;c[g>>2]=c[n>
;>2];s=c[g>>2]|0;i=r;return s|0}function Ie(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[e>>2]=b
;do if(c[e>>2]|0){b=c[e>>2]|0;if(c[(c[e>>2]|0)+20>>2]|0)if((Je(c[b+20>>2]|0)|0
)<<24>>24){a[d>>0]=1;break}else{a[d>>0]=0;break}else if((Ke(b)|0)<<24>>
;24){a[d>>0]=1;break}else{a[d>>0]=0;break}}else a[d>>0]=0;while(0);i=f;return a[d>>0]|0}
function Je(b){b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;f=g+8|0;d=g+4|0;e=g;c[d>>2]=b;c[e>>2]=0;while(1){if((c
[e>>2]|0)>=8){d=6;break}if(vs(c[d>>2]|0,10569+((c[e>>2]|0)*17|0)|0)|0){d=4;break}c[e>>
;2]=(c[e>>2]|0)+1}if((d|0)==4){a[f>>0]=1;f=a[f>>0]|0;i=g;return f|0}else if((d|0)==6){a[f>>
;0]=0;f=a[f>>0]|0;i=g;return f|0}return 0}function Ke(b){b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+48|0;d=
n+40|0;f=n+36|0;g=n+32|0;l=n+12|0;h=n+8|0;j=n+4|0;k=n;c[f>>2]=b;c[l>>2]=0;c[l+4>>2]=0;c[l+8>
x3e;2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[h>>2]=0;a:while(1){if((c[h>>2]|0)>=(e[(c[f>
;>2]|0)+152>>1]|0|0)){m=18;break}c[g>>2]=0;b=c[(c[(c[f>>2]|0)+156>>2]|0)+(c[h>
x3e;2]<<4)>>2]|0;b:do if((b|0)>=1718642541)if((b|0)<1886545264){switch(b|0){case 1718642541:break;
default:break b}c[k>>2]=1;m=7;break}else{switch(b|0){case 1886545264:break;default:break b}c[k>>2]=2;m=7;break
}else{switch(b|0){case 1668707360:break;default:break b}c[k>>2]=0;m=7}while(0);c:do if((m|0)==7){m=0;c[j>>2]=
0;while(1){if((c[j>>2]|0)>=5)break c;if((c[(c[(c[f>>2]|0)+156>>2]|0)+(c[h>>2]<
x3c;4)+12>>2]|0)==(c[448+((c[j>>2]|0)*24|0)+(c[k>>2]<<3)+4>>2]|0)){if(!(c[g>
;>2]|0))c[g>>2]=Le(c[f>>2]|0,c[h>>2]&65535)|0;if((c[448+((c[j>>2]|0)*24|0)+(c[
k>>2]<<3)>>2]|0)==(c[g>>2]|0)){b=l+(c[j>>2]<<2)|0;c[b>>2]=(
c[b>>2]|0)+1}if((c[l+(c[j>>2]<<2)>>2]|0)==3){m=15;break a}}c[j>>2]=(c[j>
x3e;2]|0)+1}}while(0);c[h>>2]=(c[h>>2]|0)+1}if((m|0)==15){a[d>>0]=1;m=a[d>>0]|0;i=n;return
m|0}else if((m|0)==18){a[d>>0]=0;m=a[d>>0]|0;i=n;return m|0}return 0}function Le(a,d){a=a|0;d=d|0;var f=0,g
=0,h=0,j=0;j=i;i=i+16|0;f=j+4|0;g=j;h=j+8|0;c[g>>2]=a;b[h>>1]=d;if(c[(c[(c[g>>2]|0)+156>>
;2]|0)+((e[h>>1]|0)<<4)+4>>2]|0){c[f>>2]=c[(c[(c[g>>2]|0)+156>>2]|0)+((
e[h>>1]|0)<<4)+4>>2];d=c[f>>2]|0;i=j;return d|0}if(!(c[(c[g>>2]|0)+508>
x3e;2]|0)){c[f>>2]=0;d=c[f>>2]|0;i=j;return d|0}if(Wa[c[(c[g>>2]|0)+508>>2]&31](c[g
>>2]|0,c[(c[(c[g>>2]|0)+156>>2]|0)+((e[h>>1]|0)<<4)>>2]|0,c[(c[g>
;>2]|0)+104>>2]|0,0)|0){c[f>>2]=Me(c[(c[g>>2]|0)+104>>2]|0,c[(c[(c[g>>2]|
0)+156>>2]|0)+((e[h>>1]|0)<<4)+12>>2]|0)|0;d=c[f>>2]|0;i=j;return d|0}else{c[f
>>2]=0;d=c[f>>2]|0;i=j;return d|0}return 0}function Me(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+
32|0;d=j+20|0;e=j+16|0;f=j+12|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;a=ee(c[e>>2]|0
,c[f>>2]|0)|0;c[j+8>>2]=a;if(a|0){c[d>>2]=0;h=c[d>>2]|0;i=j;return h|0}while(1){if((c[f
x3e;>2]|0)>>>0<=3)break;a=je(c[e>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+a;c[f>
x3e;2]=(c[f>>2]|0)-4}c[h>>2]=3;while(1){b=c[e>>2]|0;if((c[f>>2]|0)>>>0<
;=0)break;a=(he(b)|0)&255;c[g>>2]=(c[g>>2]|0)+(a<<(c[h>>2]<<3));c[f>
x3e;2]=(c[f>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+-1}ge(b);c[d>>2]=c[g>>2];h=c[d>
x3e;2]|0;i=j;return h|0}function Ne(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;s=i;i=i+48|0;f=s+44
|0;g=s+40|0;h=s+36|0;j=s+32|0;l=s+28|0;r=s+24|0;m=s+20|0;n=s+16|0;q=s+12|0;p=s+8|0;o=s+4|0;k=s;c[g>>2]=b;c[h>>
;2]=e;c[l>>2]=c[(c[h>>2]|0)+28>>2];c[j>>2]=Wa[c[(c[g>>2]|0)+508>>2]
x26;31](c[g>>2]|0,1751412088,c[h>>2]|0,q)|0;if((c[j>>2]|0)!=0|(c[q>>2]|0)>>>
;0<8){c[f>>2]=0;r=c[f>>2]|0;i=s;return r|0}e=de(c[h>>2]|0,c[q>>2]|0,(c[g>>
;2]|0)+740|0)|0;c[j>>2]=e;do if(!e){c[o>>2]=c[(c[g>>2]|0)+740>>2];c[k>>2]=(c[o
>>2]|0)+(c[q>>2]|0);c[o>>2]=(c[o>>2]|0)+2;c[r>>2]=(((d[(c[o>>2]|0)+-
2>>0]|0)&65535)<<8|((d[(c[o>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535
;c[o>>2]=(c[o>>2]|0)+2;c[n>>2]=(((d[(c[o>>2]|0)+-2>>0]|0)&65535)<<
;8|((d[(c[o>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[o>>2]=(c[o>>2]|0)+
4;c[p>>2]=(d[(c[o>>2]|0)+-4>>0]|0)<<24|(d[(c[o>>2]|0)+-4+1>>0]|0)<
;<16|(d[(c[o>>2]|0)+-4+2>>0]|0)<<8|(d[(c[o>>2]|0)+-4+3>>0]|0)<<
0;if((c[p>>2]|0)>>>0>=4294901760)c[p>>2]=c[p>>2]&65535;if(!((c[r>>
;2]|0)!=0|(c[n>>2]|0)>>>0>255|(c[p>>2]|0)>>>0>65537)){r=hc(c[l>
x3e;2]|0,1,0,c[n>>2]|0,0,j)|0;c[(c[g>>2]|0)+756>>2]=r;if(!(c[j>>2]|0)){c[m>>2]=
0;while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;if(((c[o>>
2]|0)+(c[p>>2]|0)|0)>>>0>(c[k>>2]|0)>>>0)break;a[(c[(c[g>>2]|0)+
756>>2]|0)+(c[m>>2]|0)>>0]=a[c[o>>2]>>0]|0;c[o>>2]=(c[o>>2
]|0)+(c[p>>2]|0);c[m>>2]=(c[m>>2]|0)+1}c[(c[g>>2]|0)+748>>2]=c[m>>2];
c[(c[g>>2]|0)+744>>2]=c[q>>2];c[(c[g>>2]|0)+752>>2]=c[p>>2];break}}else
c[j>>2]=3;fe(c[h>>2]|0,(c[g>>2]|0)+740|0);c[(c[g>>2]|0)+744>>2]=0}while(0);c[
f>>2]=c[j>>2];r=c[f>>2]|0;i=s;return r|0}function Oe(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,q=0,r=0;r=i;i=i+48|0;g=r+40|0;h=r+36|0;m=r+32|0;q=r+28|0;f=r+24|0;o=r+20|0;l=r+16|0;n=r+12|0;p=r+8|0;k=r+4|0;j=r
;c[g>>2]=a;c[h>>2]=d;c[m>>2]=Wa[c[(c[g>>2]|0)+508>>2]&31](c[g>>
2]|0,1735162214,c[h>>2]|0,(c[g>>2]|0)+704|0)|0;if((c[m>>2]|0)!=142){if(c[m>>2]|0){q=c[m
x3e;>2]|0;i=r;return q|0}}else c[(c[g>>2]|0)+704>>2]=0;c[m>>2]=Wa[c[(c[g>>2]|0)+508
>>2]&31](c[g>>2]|0,1819239265,c[h>>2]|0,q)|0;if(c[m>>2]|0){c[m>>2]=144;q=
c[m>>2]|0;i=r;return q|0}do if(b[(c[g>>2]|0)+160+50>>1]|0){c[f>>2]=2;if((c[q>>
2]|0)>>>0<262144){c[(c[g>>2]|0)+732>>2]=(c[q>>2]|0)>>>(c[f>
;>2]|0);break}c[m>>2]=8;q=c[m>>2]|0;i=r;return q|0}else{c[f>>2]=1;if((c[q>>2]|0)>
;>>0<131072){c[(c[g>>2]|0)+732>>2]=(c[q>>2]|0)>>>(c[f>>2]|
0);break}c[m>>2]=8;q=c[m>>2]|0;i=r;return q|0}while(0);if((c[(c[g>>2]|0)+732>>2]|0)!=(c[(
c[g>>2]|0)+16>>2]|0)?(c[(c[g>>2]|0)+732>>2]|0)>>>0<(c[(c[g>>
;2]|0)+16>>2]|0)>>>0:0){c[o>>2]=c[(c[g>>2]|0)+16>>2]<<c[f>
x3e;2];c[l>>2]=c[(c[g>>2]|0)+156>>2];c[n>>2]=(c[l>>2]|0)+(e[(c[g>>2]|
0)+152>>1]<<4);c[p>>2]=Mc(c[h>>2]|0)|0;c[k>>2]=2147483647;while(1){a=c[l>
x3e;2]|0;if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[j>>2]=(c[a
+8>>2]|0)-(c[p>>2]|0);if((c[j>>2]|0)>0?(c[j>>2]|0)<(c[k>>2]|0):0)c[k
>>2]=c[j>>2];c[l>>2]=(c[l>>2]|0)+16}if((a|0)==(c[n>>2]|0))c[k>>2]=(c
[(c[h>>2]|0)+4>>2]|0)-(c[p>>2]|0);if((c[o>>2]|0)<=(c[k>>2]|0)){c[(c[g>
;>2]|0)+732>>2]=c[(c[g>>2]|0)+16>>2];c[q>>2]=c[o>>2]}}c[m>>2]=de
(c[h>>2]|0,c[q>>2]|0,(c[g>>2]|0)+736|0)|0;q=c[m>>2]|0;i=r;return q|0}function Pe(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>
;2]=Wa[c[(c[d>>2]|0)+508>>2]&31](c[d>>2]|0,1718642541,c[e>>2]|0,g)|0;if(c[f>
x3e;2]|0){c[(c[d>>2]|0)+656>>2]=0;c[(c[d>>2]|0)+652>>2]=0;c[f>>2]=0;g=c[f>
;>2]|0;i=h;return g|0}else{c[(c[d>>2]|0)+652>>2]=c[g>>2];c[f>>2]=de(c[e>>
2]|0,c[g>>2]|0,(c[d>>2]|0)+656|0)|0;g=c[f>>2]|0;i=h;return g|0}return 0}function Qe(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Wa
[c[(c[d>>2]|0)+508>>2]&31](c[d>>2]|0,1886545264,c[e>>2]|0,g)|0;if(c[f>>2]|
0){c[(c[d>>2]|0)+664>>2]=0;c[(c[d>>2]|0)+660>>2]=0;c[f>>2]=0;g=c[f>>
2]|0;i=h;return g|0}else{c[(c[d>>2]|0)+660>>2]=c[g>>2];c[f>>2]=de(c[e>>2]|0,c[
g>>2]|0,(c[d>>2]|0)+664|0)|0;g=c[f>>2]|0;i=h;return g|0}return 0}function Re(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)+512>>2]=22;c[(c[d>>2]|0)+520>>2]=34;c
[(c[d>>2]|0)+524>>2]=35;c[(c[d>>2]|0)+528>>2]=36;c[(c[d>>2]|0)+516>>
2]=34;i=b;return}function Se(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;g=l+20|0
;n=l+16|0;m=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=a;c[n>>2]=b;c[m>>2]=d;c[h>>2]=e;c[k>
x3e;2]=c[(c[g>>2]|0)+24>>2];c[n>>2]=c[n>>2];d=Kc(c[k>>2]|0,c[m>>2]|0
)|0;c[j>>2]=d;if((d|0)==0?(n=ee(c[k>>2]|0,c[h>>2]|0)|0,c[j>>2]=n,(n|0)==0):0){c[(c[g>
;>2]|0)+200>>2]=c[(c[k>>2]|0)+32>>2];c[(c[g>>2]|0)+204>>2]=c[(c[k>
x3e;2]|0)+36>>2];c[f>>2]=0;n=c[f>>2]|0;i=l;return n|0}c[f>>2]=c[j>>2];n=c[f>
;>2]|0;i=l;return n|0}function Te(e){e=e|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;f=j+12|0;g=j+8|0;h=j+4|0;k=j;c[g>>
;2]=e;c[h>>2]=c[(c[g>>2]|0)+200>>2];c[k>>2]=c[(c[g>>2]|0)+204>>2];if
(((c[h>>2]|0)+10|0)>>>0>(c[k>>2]|0)>>>0){c[f>>2]=20;k=c[f>
x3e;2]|0;i=j;return k|0}else{c[h>>2]=(c[h>>2]|0)+2;b[(c[g>>2]|0)+32>>1]=a[(c[h>>
;2]|0)+-2>>0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0;c[h>
;>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36>>2]=((a[(c[h>>2]|0)+-2>>0]<<
;16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<16>>16;
c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+4>>2]=((a[(c[h>>2]|0)+-2>>0]
x3c;<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<16>
x3e;16;c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+8>>2]=((a[(c[h>>2]|0)+-2>
x3e;0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<
16>>16;c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+12>>2]=((a[(c[h>>2]|0)+-
2>>0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<
;<16>>16;c[(c[g>>2]|0)+200>>2]=c[h>>2];c[f>>2]=0;k=c[f>>2]|0;i=
j;return k|0}return 0}function Ue(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,z=0,A=0,B
=0,C=0,D=0,E=0,F=0,G=0,H=0;H=i;i=i+96|0;j=H+72|0;o=H+68|0;A=H+64|0;v=H+60|0;u=H+56|0;w=H+52|0;z=H+48|0;r=H+44|0;x=H+78|0;y=H+40|
0;s=H+36|0;t=H+32|0;k=H+83|0;n=H+82|0;B=H+28|0;C=H+24|0;D=H+20|0;l=H+16|0;m=H+12|0;g=H+76|0;E=H+8|0;F=H+4|0;p=H+81|0;G=H;q=H+80|
0;c[j>>2]=f;c[A>>2]=c[(c[j>>2]|0)+200>>2];c[v>>2]=c[(c[j>>2]|0)+204
x3e;>2];c[u>>2]=c[(c[j>>2]|0)+12>>2];c[w>>2]=b[(c[j>>2]|0)+32>>
1];c[r>>2]=c[c[j>>2]>>2];c[E>>2]=0;if((c[w>>2]|0)!=0?((b[(c[u>>2]|0)+
20>>1]|0)+(b[(c[u>>2]|0)+56>>1]|0)+(c[w>>2]|0)|0)>>>0>(c[(c[u>
x3e;2]|0)+8>>2]|0)>>>0:0)f=kc(c[u>>2]|0,0,c[w>>2]|0)|0;else f=0;c[o>>2]=f
;if(c[o>>2]|0){G=c[o>>2]|0;i=H;return G|0}c[l>>2]=c[(c[u>>2]|0)+56+12>>2];c[m
x3e;>2]=(c[l>>2]|0)+(c[w>>2]<<1);a:do if((c[w>>2]|0)<4095?((c[A>>2]|
0)+((c[w>>2]|0)+1<<1)|0)>>>0<=(c[v>>2]|0)>>>0:0){c[A>>
;2]=(c[A>>2]|0)+2;b[g>>1]=(d[(c[A>>2]|0)+-2>>0]&65535)<<8|(d[(c[A>
x3e;2]|0)+-2+1>>0]&65535)<<0;if((c[w>>2]|0)>0)b[c[l>>2]>>1]=b[g>
;>1]|0;c[l>>2]=(c[l>>2]|0)+2;while(1){if((c[l>>2]|0)>>>0>=(c[m>>
;2]|0)>>>0)break;c[A>>2]=(c[A>>2]|0)+2;b[c[l>>2]>>1]=(d[(c[A>>2
]|0)+-2>>0]&65535)<<8|(d[(c[A>>2]|0)+-2+1>>0]&65535)<<0;if((b[c[l>
;>2]>>1]|0)<=(b[g>>1]|0)){h=12;break}b[g>>1]=b[c[l>>2]>>1]|0;c[l>
;>2]=(c[l>>2]|0)+2}if((h|0)==12){c[o>>2]=8;G=c[o>>2]|0;i=H;return G|0}c[y>>2]=0;if((
c[w>>2]|0)>0?(c[y>>2]=(b[(c[l>>2]|0)+-2>>1]|0)+1,(c[y>>2]|0)<0):0)break
;if(((c[y>>2]|0)+4|0)!=0?((b[(c[u>>2]|0)+20+2>>1]|0)+(b[(c[u>>2]|0)+56+2>>1]|0
)+((c[y>>2]|0)+4)|0)>>>0>(c[(c[u>>2]|0)+4>>2]|0)>>>0:0)f=kc(c[u
>>2]|0,(c[y>>2]|0)+4|0,0)|0;else f=0;c[o>>2]=f;if(c[o>>2]|0){G=c[o>>2]|0;i=H;return
G|0}c[z>>2]=(c[u>>2]|0)+56;c[l>>2]=(c[(c[z>>2]|0)+12>>2]|0)+2;while(1){if((c[
l>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;if((b[(c[l>>2]|0)+-2>
x3e;1]|0)>=(b[c[l>>2]>>1]|0))break a;c[l>>2]=(c[l>>2]|0)+2}c[(c[(c[j>>2]|
0)+8>>2]|0)+140>>2]=0;c[(c[(c[j>>2]|0)+8>>2]|0)+136>>2]=0;if(((c[A>>
2]|0)+2|0)>>>0<=(c[v>>2]|0)>>>0){c[A>>2]=(c[A>>2]|0)+2;b[x>
;>1]=(d[(c[A>>2]|0)+-2>>0]&65535)<<8|(d[(c[A>>2]|0)+-2+1>>0]&65535
)<<0;if((e[x>>1]|0)>(e[(c[r>>2]|0)+260+26>>1]|0)){c[o>>2]=22;G=c[o>
x3e;2]|0;i=H;return G|0}if(((c[v>>2]|0)-(c[A>>2]|0)|0)<(e[x>>1]|0)){c[o>>2]=22;G=c[
o>>2]|0;i=H;return G|0}if(!(c[(c[j>>2]|0)+16>>2]&2)){c[(c[(c[j>>2]|0)+8>>
2]|0)+140>>2]=e[x>>1];c[(c[(c[j>>2]|0)+8>>2]|0)+136>>2]=c[(c[(c[j>>2
]|0)+160>>2]|0)+392>>2];Ss(c[(c[(c[j>>2]|0)+160>>2]|0)+392>>2]|0,c[A>>
;2]|0,e[x>>1]|0)|0}c[A>>2]=(c[A>>2]|0)+(e[x>>1]|0);c[s>>2]=c[(c[z>>2
]|0)+8>>2];c[t>>2]=(c[s>>2]|0)+(c[y>>2]|0);b:while(1){if((c[s>>2]|0)>>
;>0>=(c[t>>2]|0)>>>0)break;if(((c[A>>2]|0)+1|0)>>>0>(c[v>
x3e;2]|0)>>>0)break a;r=c[A>>2]|0;c[A>>2]=r+1;r=a[r>>0]|0;a[k>>0]=r;x=c[s
>>2]|0;c[s>>2]=x+1;a[x>>0]=r;if(!(d[k>>0]&8))continue;if(((c[A>>2]|0)+1|0
)>>>0>(c[v>>2]|0)>>>0)break a;x=c[A>>2]|0;c[A>>2]=x+1;a[n>
x3e;0]=a[x>>0]|0;if(((c[s>>2]|0)+(d[n>>0]|0)|0)>>>0>(c[t>>2]|0)>
;>>0)break a;while(1){if((d[n>>0]|0)<=0)continue b;r=a[k>>0]|0;x=c[s>>2]|0;c[s>
;>2]=x+1;a[x>>0]=r;a[n>>0]=(a[n>>0]|0)+-1<<24>>24}}c[B>>2]=c[(c
[z>>2]|0)+4>>2];c[C>>2]=(c[B>>2]|0)+(c[y>>2]<<3);c[s>>2]=c
[(c[z>>2]|0)+8>>2];c[D>>2]=0;if(((c[A>>2]|0)+(c[E>>2]|0)|0)>>>0
<=(c[v>>2]|0)>>>0){while(1){if((c[B>>2]|0)>>>0>=(c[C>>2]|0
)>>>0)break;c[F>>2]=0;a[p>>0]=a[c[s>>2]>>0]|0;if(d[p>>0]&2
|0){if(((c[A>>2]|0)+1|0)>>>0>(c[v>>2]|0)>>>0)break a;E=c[A>>2]|
0;c[A>>2]=E+1;c[F>>2]=d[E>>0];if(!(d[p>>0]&16))c[F>>2]=0-(c[F>>
2]|0)}else if(!(d[p>>0]&16)){if(((c[A>>2]|0)+2|0)>>>0>(c[v>>2]|0)>
x3e;>0)break a;c[A>>2]=(c[A>>2]|0)+2;c[F>>2]=((a[(c[A>>2]|0)+-2>>0]<
x3c;16>>16<<8|d[(c[A>>2]|0)+-2+1>>0]<<0)&65535)<<16>>
16}c[D>>2]=(c[D>>2]|0)+(c[F>>2]|0);c[c[B>>2]>>2]=c[D>>2];a[c[s>
x3e;2]>>0]=d[p>>0]&-19;c[B>>2]=(c[B>>2]|0)+8;c[s>>2]=(c[s>>2]|0
)+1}c[B>>2]=c[(c[u>>2]|0)+56+4>>2];c[C>>2]=(c[B>>2]|0)+(c[y>>2]<
;<3);c[s>>2]=c[(c[z>>2]|0)+8>>2];c[D>>2]=0;while(1){if((c[B>>2]|0)>
x3e;>0>=(c[C>>2]|0)>>>0)break;c[G>>2]=0;a[q>>0]=a[c[s>>2]>
x3e;0]|0;if(d[q>>0]&4|0){if(((c[A>>2]|0)+1|0)>>>0>(c[v>>2]|0)>>
x3e;0)break a;F=c[A>>2]|0;c[A>>2]=F+1;c[G>>2]=d[F>>0];if(!(d[q>>0]&32))c[
G>>2]=0-(c[G>>2]|0)}else if(!(d[q>>0]&32)){if(((c[A>>2]|0)+2|0)>>>0
x3e;(c[v>>2]|0)>>>0)break a;c[A>>2]=(c[A>>2]|0)+2;c[G>>2]=((a[(c[A>
x3e;2]|0)+-2>>0]<<16>>16<<8|d[(c[A>>2]|0)+-2+1>>0]<<0)&
;65535)<<16>>16}c[D>>2]=(c[D>>2]|0)+(c[G>>2]|0);c[(c[B>>2]|0)+4>
;>2]=c[D>>2];a[c[s>>2]>>0]=d[q>>0]&1;c[B>>2]=(c[B>>2]|0)+8
;c[s>>2]=(c[s>>2]|0)+1}b[(c[z>>2]|0)+2>>1]=c[y>>2];b[c[z>>2]>
x3e;1]=c[w>>2];c[(c[j>>2]|0)+200>>2]=c[A>>2];G=c[o>>2]|0;i=H;return G|0}}}while
(0);c[o>>2]=20;G=c[o>>2]|0;i=H;return G|0}function Ve(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;u=i;i=i+64|0;n=u+48|0;o=u+44|0;s=u+40|0;q=u+36|0;p=u+32|0;h=u+28|0;r=u+24|0;j=u+20|0;k=u+16|0;m=u+12|0;l=u+8|0;g=
u+4|0;t=u;c[n>>2]=f;c[s>>2]=c[(c[n>>2]|0)+200>>2];c[q>>2]=c[(c[n>>2]|
0)+204>>2];c[p>>2]=c[(c[n>>2]|0)+12>>2];c[r>>2]=0;while(1){c[o>>2]=lc
(c[p>>2]|0,(c[r>>2]|0)+1|0)|0;if(c[o>>2]|0){f=24;break}if(((c[s>>2]|0)+4|0)>>
x3e;0>(c[q>>2]|0)>>>0){f=25;break}c[h>>2]=(c[(c[p>>2]|0)+56+32>>2]|0
)+(c[r>>2]<<5);c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+8>>2]=0;c[s>
;>2]=(c[s>>2]|0)+2;b[(c[h>>2]|0)+4>>1]=(d[(c[s>>2]|0)+-2>>0]&65535)
x3c;<8|(d[(c[s>>2]|0)+-2+1>>0]&65535)<<0;c[s>>2]=(c[s>>2]|0)+2;c[c[h
>>2]>>2]=((d[(c[s>>2]|0)+-2>>0]&65535)<<8|(d[(c[s>>2]|0)+-2+1
x3e;>0]&65535)<<0)&65535;c[g>>2]=2;if(e[(c[h>>2]|0)+4>>1]&1|0)c[g>
;>2]=(c[g>>2]|0)+2;do if(!(e[(c[h>>2]|0)+4>>1]&8|0)){if(e[(c[h>>2]|0)+4>
x3e;1]&64|0){c[g>>2]=(c[g>>2]|0)+4;break}if(e[(c[h>>2]|0)+4>>1]&128|0)c[g>
;>2]=(c[g>>2]|0)+8}else c[g>>2]=(c[g>>2]|0)+2;while(0);if(((c[s>>2]|0)+(c[g>
x3e;2]|0)|0)>>>0>(c[q>>2]|0)>>>0){f=25;break}f=c[s>>2]|0;if(e[(c[h>
x3e;2]|0)+4>>1]&1|0){c[s>>2]=f+2;c[(c[h>>2]|0)+8>>2]=((a[(c[s>>2]|0)+-2
x3e;>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<
x3c;16>>16;c[s>>2]=(c[s>>2]|0)+2;c[(c[h>>2]|0)+12>>2]=((a[(c[s>>2]|0
)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)
x3c;<16>>16}else{c[s>>2]=f+1;c[(c[h>>2]|0)+8>>2]=a[f>>0];f=c[s>>
;2]|0;c[s>>2]=f+1;c[(c[h>>2]|0)+12>>2]=a[f>>0]}c[m>>2]=65536;c[j>>2]=
65536;c[l>>2]=0;c[k>>2]=0;do if(!(e[(c[h>>2]|0)+4>>1]&8|0)){if(e[(c[h>>2]|
0)+4>>1]&64|0){c[s>>2]=(c[s>>2]|0)+2;c[j>>2]=((a[(c[s>>2]|0)+-2>>
;0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<<16
x3e;>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[m>>2]=((a[(c[s>>2]|0)+-2>>0]
x3c;<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<<16>
x3e;16<<2;break}if(e[(c[h>>2]|0)+4>>1]&128|0){c[s>>2]=(c[s>>2]|0)+2;c[j
x3e;>2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>
;>0]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[l>
x3e;2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>
;0]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[k>>
2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0
]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[m>>2]=((
a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<
;<0)&65535)<<16>>16<<2}}else{c[s>>2]=(c[s>>2]|0)+2;c[j>>2]=((
a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<
;<0)&65535)<<16>>16<<2;c[m>>2]=c[j>>2]}while(0);c[(c[h>>2]|
0)+16>>2]=c[j>>2];c[(c[h>>2]|0)+16+4>>2]=c[k>>2];c[(c[h>>2]|0)+16+8
x3e;>2]=c[l>>2];c[(c[h>>2]|0)+16+12>>2]=c[m>>2];c[r>>2]=(c[r>>2
]|0)+1;if(!(e[(c[h>>2]|0)+4>>1]&32)){f=23;break}}if((f|0)==23){c[(c[p>>2]|0)+56+28>>
;2]=c[r>>2];c[t>>2]=c[(c[n>>2]|0)+24>>2];t=Mc(c[t>>2]|0)|0;c[(c[n>>2
]|0)+168>>2]=(c[s>>2]|0)+t-(c[q>>2]|0);c[(c[n>>2]|0)+200>>2]=c[s>>2];
t=c[o>>2]|0;i=u;return t|0}else if((f|0)==24){t=c[o>>2]|0;i=u;return t|0}else if((f|0)==25){c[o>>2
]=21;t=c[o>>2]|0;i=u;return t|0}return 0}function We(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];ge(c[d>>2]|0);i=b;return}function Xe(a){a=a|0;var b=0,
d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[b>>2]=a;c[d>>2]=c[b>>2];if
(!(c[d>>2]|0)){i=h;return}c[e>>2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[b>
x3e;2]|0)+104>>2];c[f>>2]=c[(c[d>>2]|0)+532>>2];if(c[(c[d>>2]|0)+692+4>
x3e;2]|0)Va[c[(c[d>>2]|0)+692+4>>2]&63](c[(c[d>>2]|0)+692>>2]|0);if(c[f>>
2]|0)Va[c[(c[f>>2]|0)+12>>2]&63](c[d>>2]|0);Ye(c[d>>2]|0);Ze(c[d>>2]|0);Fb
(c[e>>2]|0,c[(c[d>>2]|0)+672>>2]|0);c[(c[d>>2]|0)+672>>2]=0;c[(c[d>>
2]|0)+668>>2]=0;fe(c[g>>2]|0,(c[d>>2]|0)+656|0);fe(c[g>>2]|0,(c[d>>2]|0)+664|0
);c[(c[d>>2]|0)+652>>2]=0;c[(c[d>>2]|0)+660>>2]=0;_e(c[e>>2]|0,c[(c[d>>
;2]|0)+712>>2]|0);c[(c[d>>2]|0)+712>>2]=0;i=h;return}function Ye(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]|0)+104>>2];fe(c[e>>2]|0,(c[d>
;>2]|0)+736|0);c[(c[d>>2]|0)+732>>2]=0;i=b;return}function Ze(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)+104>>2];c[f>>2]=c[(c[e>
;>2]|0)+28>>2];Fb(c[f>>2]|0,c[(c[d>>2]|0)+756>>2]|0);c[(c[d>>2]|0)+756>
;>2]=0;fe(c[e>>2]|0,(c[d>>2]|0)+740|0);i=b;return}function _e(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;
i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=g;return}Fb(c[d>>2]|
0,c[(c[e>>2]|0)+4>>2]|0);c[(c[e>>2]|0)+4>>2]=0;Fb(c[d>>2]|0,c[(c[e>>
2]|0)+8>>2]|0);c[(c[e>>2]|0)+8>>2]=0;if(c[(c[e>>2]|0)+20>>2]|0){c[f>>
;2]=0;while(1){b=c[d>>2]|0;if((c[f>>2]|0)>>>0>=(c[c[e>>2]>>2]|0)>
;>>0)break;Fb(b,c[(c[(c[e>>2]|0)+20>>2]|0)+(c[f>>2]<<3)+4>>2]|0);c[(
c[(c[e>>2]|0)+20>>2]|0)+(c[f>>2]<<3)+4>>2]=0;c[f>>2]=(c[f>>
;2]|0)+1}Fb(b,c[(c[e>>2]|0)+20>>2]|0);c[(c[e>>2]|0)+20>>2]=0}Fb(c[d>>2]|0,c[(c
[e>>2]|0)+28>>2]|0);c[(c[e>>2]|0)+28>>2]=0;Fb(c[d>>2]|0,c[(c[e>>2]|0
)+36>>2]|0);c[(c[e>>2]|0)+36>>2]=0;Fb(c[d>>2]|0,c[e>>2]|0);c[e>>2]=0
;i=g;return}function $e(b){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]=b;c[f>>2]=c[g
x3e;>2];c[d>>2]=0;a[(c[f>>2]|0)+300>>0]=0;a[(c[f>>2]|0)+301>>0]=0;a[(c[f
x3e;>2]|0)+72+36>>0]=0;c[(c[f>>2]|0)+112>>2]=-1;i=e;return c[d>>2]|0}function af(b){
b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=b;c[e>>2]=c[d>>2];if(a[(c[e>>2]|0
)+300>>0]|0)bf(c[d>>2]|0);a[(c[e>>2]|0)+72+36>>0]=0;i=f;return}function bf(d){d=d|0;var
e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;j=g+12|0;f=g+8|0;h=g+4|0;e=g;c[j>>2]=d;c[f>>2]=c[j>>2];c[h>
x3e;2]=c[c[j>>2]>>2];c[e>>2]=c[(c[h>>2]|0)+100>>2];if(a[(c[f>>2]|0)+
292>>0]|0){c[(c[f>>2]|0)+296>>2]=0;a[(c[f>>2]|0)+292>>0]=0}Fb(c[e>>2
]|0,c[(c[f>>2]|0)+244>>2]|0);c[(c[f>>2]|0)+244>>2]=0;c[(c[f>>2]|0)+240>
x3e;2]=0;Fb(c[e>>2]|0,c[(c[f>>2]|0)+252>>2]|0);c[(c[f>>2]|0)+252>>2]=0;b[(c[f
x3e;>2]|0)+248>>1]=0;cf((c[f>>2]|0)+256|0);Fb(c[e>>2]|0,c[(c[f>>2]|0)+124>>
;2]|0);c[(c[f>>2]|0)+124>>2]=0;Fb(c[e>>2]|0,c[(c[f>>2]|0)+136>>2]|0);c[(c[f>
;>2]|0)+136>>2]=0;c[(c[f>>2]|0)+116>>2]=0;c[(c[f>>2]|0)+120>>2]=0;c[(c[f
x3e;>2]|0)+128>>2]=0;c[(c[f>>2]|0)+132>>2]=0;c[(c[f>>2]|0)+140>>2]=0;c[(c
[f>>2]|0)+144>>2]=0;a[(c[f>>2]|0)+300>>0]=0;a[(c[f>>2]|0)+301>>0]=0;
i=g;return}function cf(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=c[c[d>>
2]>>2];if(!(c[e>>2]|0)){i=f;return}Fb(c[e>>2]|0,c[(c[d>>2]|0)+28>>2]|0);c[(c[d
>>2]|0)+28>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+24>>2]|0);c[(c[d>>2]|0)+
24>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+16>>2]=0
;Fb(c[e>>2]|0,c[(c[d>>2]|0)+12>>2]|0);c[(c[d>>2]|0)+12>>2]=0;Fb(c[e>>
;2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>>2]=0;b[(c[d>>2]|0)+8>>
;1]=0;b[(c[d>>2]|0)+4>>1]=0;b[(c[d>>2]|0)+10>>1]=0;b[(c[d>>2]|0)+6>>
1]=0;c[c[d>>2]>>2]=0;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;a=gc(c
[c[(c[d>>2]|0)+156>>2]>>2]|0)|0;i=b;return a|0}function ef(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+32|0;o=n+28|0;p=n+24|0;g=n+20|0;h=n+16|0;m=n+12|0;l=n+8|0;k=n+4|0;j=n;c[o
>>2]=a;c[p>>2]=b;c[g>>2]=d;c[h>>2]=e;c[m>>2]=c[o>>2];c[l>>
2]=c[p>>2];c[k>>2]=c[(c[o>>2]|0)+4>>2];if(!(c[m>>2]|0)){c[f>>2]=37;p
=c[f>>2]|0;i=n;return p|0}if(!(c[l>>2]|0)){c[f>>2]=36;p=c[f>>2]|0;i=n;return p|0}if(!(c[
k>>2]|0)){c[f>>2]=6;p=c[f>>2]|0;i=n;return p|0}if((c[g>>2]|0)>>>0>=(
c[(c[k>>2]|0)+16>>2]|0)>>>0?(c[(c[(c[k>>2]|0)+128>>2]|0)+52>>2]|
0)==0:0){c[f>>2]=6;p=c[f>>2]|0;i=n;return p|0}if(c[h>>2]&2|0){if(c[(c[k>>2]|0)+8>
;>2]&8192|0)c[h>>2]=c[h>>2]&-3;if(c[h>>2]&32768|0)c[h>>2]=c[h>
x3e;2]|2}if(c[h>>2]&1025|0?(c[h>>2]=c[h>>2]|9,(c[(c[k>>2]|0)+8>>2]&8192
|0)==0):0)c[h>>2]=c[h>>2]|2;c[j>>2]=ff(c[l>>2]|0,c[m>>2]|0,c[g>>2]|0
,c[h>>2]|0)|0;c[f>>2]=c[j>>2];p=c[f>>2]|0;i=n;return p|0}function ff(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;r=i;i=i+256|0;h=r+240|0;j=r+236|0;k=r+232|0;l=r+228|0;m=r+224|0;o=r+220
|0;n=r+216|0;p=r+8|0;q=r;c[j>>2]=b;c[k>>2]=d;c[l>>2]=f;c[m>>2]=g;c[o>>2]=c[(c[
k>>2]|0)+4>>2];c[n>>2]=0;if(((c[(c[j>>2]|0)+112>>2]|0)!=-1?(c[m>>2]
x26;8|0)==0:0)?(c[n>>2]=gf(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0,(c[n>
;>2]|0)==0):0){c[q>>2]=c[o>>2];if((c[(c[q>>2]|0)+8>>2]&1|0?(hf(p,c[j>>
;2]|0,c[k>>2]|0,c[m>>2]|0,1)|0,ah(p,c[l>>2]|0,0,1)|0,c[(c[k>>2]|0)+56>>2]=c[p+
60>>2],c[(c[k>>2]|0)+60>>2]=(c[p+176>>2]|0)+(c[p+36+12>>2]|0)-(c[p+180>
x3e;2]|0),c[(c[o>>2]|0)+468+12>>2]|0):0)?(c[m>>2]&512|0)==0:0)c[(c[k>>2]|0)+56>
;>2]=e[(c[o>>2]|0)+216+10>>1];c[h>>2]=0;b=c[h>>2]|0;i=r;return b|0}if((c[m>>
;2]&1|0)==0?(a[(c[j>>2]|0)+72+36>>0]|0)==0:0){c[h>>2]=36;b=c[h>>2]|0;i=r;return b|0
}if(c[m>>2]&16384|0){c[h>>2]=6;b=c[h>>2]|0;i=r;return b|0}c[n>>2]=hf(p,c[j>>
;2]|0,c[k>>2]|0,c[m>>2]|0,0)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];b=c[h>>
2]|0;i=r;return b|0}c[(c[k>>2]|0)+72>>2]=1869968492;c[(c[k>>2]|0)+128>>2]=0;c[(c[k>
x3e;2]|0)+108+16>>2]=0;c[n>>2]=ah(p,c[l>>2]|0,0,0)|0;if(!(c[n>>2]|0)){if((c[(c[k>
x3e;2]|0)+72>>2]|0)!=1668246896){b=(c[k>>2]|0)+108|0;q=(c[p+12>>2]|0)+20|0;c[b>>2]=c[q
x3e;>2];c[b+4>>2]=c[q+4>>2];c[b+8>>2]=c[q+8>>2];c[b+12>>2]=c[q+12>
x3e;2];c[b+16>>2]=c[q+16>>2];b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]&-513;
if(c[p+68>>2]|0)Nb((c[k>>2]|0)+108|0,0-(c[p+68>>2]|0)|0,0)}else{c[(c[k>>2]|0)+128>
x3e;2]=c[(c[p+12>>2]|0)+20+28>>2];c[(c[k>>2]|0)+132>>2]=c[(c[p+12>>2]|0)+20+32
>>2]}a:do if(!(c[m>>2]&2)){if(!(a[(c[p+160>>2]|0)+284+53>>0]|0)){b=(c[k>>
2]|0)+108+16|0;c[b>>2]=c[b>>2]|8;break}switch(c[(c[p+160>>2]|0)+284+56>>2]|0){case 1:break
a;case 0:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|32;break a}case 4:{b=(c[k>>2]|0)+108+16
|0;c[b>>2]=c[b>>2]|48;break a}case 5:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|16
;break a}default:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|8;break a}}}while(0);nh(p,c[l>>
2]|0)|0}if((c[m>>2]&1|0)==0?(e[(c[j>>2]|0)+12+2>>1]|0)<24:0){b=(c[k>>2]|0)+108
+16|0;c[b>>2]=c[b>>2]|256}c[h>>2]=c[n>>2];b=c[h>>2]|0;i=r;return b|0}function
gf(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;n=i;i=i+48|0;q=n+28|0;j=n+24|0;p=n+20|0;k=n+16|0
;r=n+12|0;s=n+8|0;o=n+4|0;l=n;m=n+32|0;c[q>>2]=e;c[j>>2]=f;c[p>>2]=g;c[k>>2]=h;c[r>
x3e;2]=c[(c[j>>2]|0)+4>>2];c[s>>2]=c[(c[r>>2]|0)+532>>2];c[o>>2]=c[(
c[r>>2]|0)+104>>2];c[l>>2]=Na[c[(c[s>>2]|0)+104>>2]&1](c[r>>2]|
0,c[(c[q>>2]|0)+112>>2]|0,c[p>>2]|0,c[k>>2]|0,c[o>>2]|0,(c[j>>2]|0)+
76|0,m)|0;if(c[l>>2]|0){s=c[l>>2]|0;i=n;return s|0}b[(c[j>>2]|0)+108+2>>1]=0;b[(c[j>
;>2]|0)+108>>1]=0;c[(c[j>>2]|0)+24>>2]=d[m+1>>0]<<6;c[(c[j>>2]|
0)+24+4>>2]=d[m>>0]<<6;c[(c[j>>2]|0)+24+8>>2]=a[m+2>>0]<<6
;c[(c[j>>2]|0)+24+12>>2]=a[m+3>>0]<<6;c[(c[j>>2]|0)+24+16>>2]=d[m+4
x3e;>0]<<6;c[(c[j>>2]|0)+24+20>>2]=a[m+5>>0]<<6;c[(c[j>>2]|0)+24
+24>>2]=a[m+6>>0]<<6;c[(c[j>>2]|0)+24+28>>2]=d[m+7>>0]<<6;
c[(c[j>>2]|0)+72>>2]=1651078259;if(c[k>>2]&16|0){c[(c[j>>2]|0)+100>>2]=a[
m+5>>0];c[(c[j>>2]|0)+104>>2]=a[m+6>>0];s=c[l>>2]|0;i=n;return s|0}else{c[(c[j
>>2]|0)+100>>2]=a[m+2>>0];c[(c[j>>2]|0)+104>>2]=a[m+3>>0];s=c[l>
;>2]|0;i=n;return s|0}return 0}function hf(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;y=i;i=i+64|0;n=y+44|0;o=y+40|0;p=y+36|0;q=y+32|0;r=y+28|0;s=y+49|0;v=y+24|0;x=y+20|0;u=y+16|0;l=y+48|0;
k=y+12|0;m=y+8|0;t=y+4|0;w=y;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;a[s>>0]=j
;c[v>>2]=c[(c[q>>2]|0)+4>>2];c[x>>2]=c[(c[v>>2]|0)+104>>2];Ns(c[o>
;>2]|0,0,208)|0;if(!((c[r>>2]&2|0)!=0|(a[s>>0]|0)!=0)){if((a[(c[p>>2]|0)+301>>
0]|0)==0?(c[k>>2]=jf(c[p>>2]|0)|0,c[k>>2]|0):0){c[n>>2]=c[k>>2];x=c[n>>
;2]|0;i=y;return x|0}if(d[(c[p>>2]|0)+292>>0]|0)k=c[(c[p>>2]|0)+296>>2]|0;else k=c[(c[(c
[v>>2]|0)+96>>2]|0)+40>>2]|0;c[u>>2]=k;if(!(c[u>>2]|0)){c[n>>2]=153;
x=c[n>>2]|0;i=y;return x|0}a[l>>0]=(c[r>>2]>>16&15|0)!=2;Vg(c[u>>2]|0,c[v
>>2]|0,c[p>>2]|0)|0;if((d[l>>0]|0)!=(d[(c[u>>2]|0)+604>>0]|0)){a[(c[u>>
;2]|0)+604>>0]=a[l>>0]|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[(
c[p>>2]|0)+240>>2]|0)>>>0)break;l=Mb(b[(c[(c[v>>2]|0)+672>>2]|0)+(c[m>
;>2]<<1)>>1]|0,c[(c[p>>2]|0)+72+16>>2]|0)|0;c[(c[(c[p>>2]|0)+244>>
;2]|0)+(c[m>>2]<<2)>>2]=l;c[m>>2]=(c[m>>2]|0)+1}$g(c[p>>2]|0)|0}if(d
[(c[u>>2]|0)+284+52>>0]&1|0)c[r>>2]=c[r>>2]|2;if(d[(c[u>>2]|0)+284+52>
;>0]&2|0){k=(c[u>>2]|0)+284|0;j=568;g=k+68|0;do{c[k>>2]=c[j>>2];k=k+4|0;j=j+4|0}while((k
|0)<(g|0))}a[(c[u>>2]|0)+561>>0]=c[r>>2]&128;c[(c[o>>2]|0)+160>>2]=c
[u>>2];c[(c[o>>2]|0)+164>>2]=c[(c[u>>2]|0)+392>>2]}do if(c[(c[(c[v>>
2]|0)+128>>2]|0)+52>>2]|0)c[(c[o>>2]|0)+84>>2]=0;else{c[t>>2]=Wa[c[(c[v>
x3e;2]|0)+508>>2]&31](c[v>>2]|0,1735162214,c[x>>2]|0,0)|0;if((c[t>>2]|0)==142){c[(c
[o>>2]|0)+84>>2]=0;break}if(!(c[t>>2]|0)){u=Mc(c[x>>2]|0)|0;c[(c[o>>2]|0)+84
x3e;>2]=u;break}c[n>>2]=c[t>>2];x=c[n>>2]|0;i=y;return x|0}while(0);if(!(a[s>>0]|0)){
c[w>>2]=c[c[(c[q>>2]|0)+156>>2]>>2];dc(c[w>>2]|0);c[(c[o>>2]|0)+12
x3e;>2]=c[w>>2]}c[(c[o>>2]|0)+16>>2]=c[r>>2];c[c[o>>2]>>2]=c[v
x3e;>2];c[(c[o>>2]|0)+4>>2]=c[p>>2];c[(c[o>>2]|0)+8>>2]=c[q>>2];
c[(c[o>>2]|0)+24>>2]=c[x>>2];c[n>>2]=0;x=c[n>>2]|0;i=y;return x|0}function jf(
d){d=d|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;h=k+12|0;j=k+8|0;g=k+4|0;f=k;c[h>>2]=d;c[j>>2]=0;if((a[(c[h>
;>2]|0)+300>>0]|0)==0?(c[j>>2]=kf(c[h>>2]|0)|0,c[j>>2]|0):0){j=c[j>>2]|0;
i=k;return j|0}if(a[(c[h>>2]|0)+301>>0]|0){j=c[j>>2]|0;i=k;return j|0}c[f>>2]=c[c[h>
;>2]>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[(c[h>>2]|0)+
240>>2]|0)>>>0)break;d=Mb(b[(c[(c[f>>2]|0)+672>>2]|0)+(c[g>>2]<<
;1)>>1]|0,c[(c[h>>2]|0)+72+16>>2]|0)|0;c[(c[(c[h>>2]|0)+244>>2]|0)+(c[g>
x3e;2]<<2)>>2]=d;c[g>>2]=(c[g>>2]|0)+1}c[g>>2]=0;while(1){if((c[g>>2
]|0)>>>0>=(e[(c[h>>2]|0)+256+8>>1]|0)>>>0)break;c[(c[(c[h>>2]|0
)+256+12>>2]|0)+(c[g>>2]<<3)>>2]=0;c[(c[(c[h>>2]|0)+256+12>>2]|0)+(c
[g>>2]<<3)+4>>2]=0;c[(c[(c[h>>2]|0)+256+16>>2]|0)+(c[g>>2]<<
;3)>>2]=0;c[(c[(c[h>>2]|0)+256+16>>2]|0)+(c[g>>2]<<3)+4>>2]=0;c[g>
;>2]=(c[g>>2]|0)+1}c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(e[(c[h>
x3e;2]|0)+248>>1]|0)>>>0)break;c[(c[(c[h>>2]|0)+252>>2]|0)+(c[g>>2]<
x3c;2)>>2]=0;c[g>>2]=(c[g>>2]|0)+1}f=(c[h>>2]|0)+172|0;g=568;d=f+68|0;do{c[f>>
2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(d|0));c[j>>2]=$g(c[h>>2]|0)|0;if(c[j>>2]|0){
j=c[j>>2]|0;i=k;return j|0}a[(c[h>>2]|0)+301>>0]=1;j=c[j>>2]|0;i=k;return j|0}function kf
(d){d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;l=q+32|0;m=q+28|0;p=q+24|0;n=q+20|0;h=q+16|0;f=q+12|0;k=q
+36|0;g=q+8|0;j=q+4|0;o=q;c[l>>2]=d;c[p>>2]=c[l>>2];c[n>>2]=c[c[l>>2]>>
;2];c[h>>2]=c[(c[n>>2]|0)+100>>2];c[g>>2]=(c[n>>2]|0)+260;a[(c[p>>2]|
0)+300>>0]=1;a[(c[p>>2]|0)+301>>0]=0;c[(c[p>>2]|0)+120>>2]=e[(c[g>>2
]|0)+20>>1];c[(c[p>>2]|0)+132>>2]=e[(c[g>>2]|0)+22>>1];c[(c[p>>2]|0)+
116>>2]=0;c[(c[p>>2]|0)+128>>2]=0;c[(c[p>>2]|0)+140>>2]=0;c[(c[p>>2]|
0)+144>>2]=0;c[(c[p>>2]|0)+240>>2]=c[(c[n>>2]|0)+668>>2];b[(c[p>>2]|
0)+248>>1]=b[(c[g>>2]|0)+18>>1]|0;c[j>>2]=(c[p>>2]|0)+72;a[(c[j>>2]|
0)+37>>0]=0;a[(c[j>>2]|0)+38>>0]=0;c[f>>2]=0;while(1){if((c[f>>2]|0)>=4)break
;c[(c[j>>2]|0)+20+(c[f>>2]<<2)>>2]=0;c[f>>2]=(c[f>>2]|0)+1}j=hc(c[h
x3e;>2]|0,16,0,c[(c[p>>2]|0)+120>>2]|0,0,m)|0;c[(c[p>>2]|0)+124>>2]=j;if(((((c[m>
;>2]|0)==0?(j=hc(c[h>>2]|0,16,0,c[(c[p>>2]|0)+132>>2]|0,0,m)|0,c[(c[p>>2]|0)+136>
;>2]=j,(c[m>>2]|0)==0):0)?(j=hc(c[h>>2]|0,4,0,c[(c[p>>2]|0)+240>>2]|0,0,m)|0,c[(c[p
>>2]|0)+244>>2]=j,(c[m>>2]|0)==0):0)?(j=hc(c[h>>2]|0,4,0,e[(c[p>>2]|0)+248>
;>1]|0,0,m)|0,c[(c[p>>2]|0)+252>>2]=j,(c[m>>2]|0)==0):0)?(b[k>>1]=b[(c[g>>
;2]|0)+16>>1]|0,b[k>>1]=(e[k>>1]|0)+4,c[m>>2]=lf(c[h>>2]|0,b[k>>1]|0
,0,(c[p>>2]|0)+256|0)|0,(c[m>>2]|0)==0):0){b[(c[p>>2]|0)+256+8>>1]=b[k>>1]|0;d
=(c[p>>2]|0)+172|0;f=568;g=d+68|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));c[o
x3e;>2]=c[(c[(c[n>>2]|0)+96>>2]|0)+4>>2];c[(c[n>>2]|0)+688>>2]=c[(c[o>
;>2]|0)+180>>2];if(!(c[(c[n>>2]|0)+688>>2]|0))c[(c[n>>2]|0)+688>>2]=37;c[
m>>2]=Ug(c[p>>2]|0)|0}if(!(c[m>>2]|0)){p=c[m>>2]|0;i=q;return p|0}bf(c[l>>2]|0
);p=c[m>>2]|0;i=q;return p|0}function lf(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;n=i;i=i+16|0;h=n
+8|0;j=n+14|0;k=n+12|0;l=n+4|0;m=n;c[h>>2]=a;b[j>>1]=d;b[k>>1]=f;c[l>>2]=g;f=c[l>
x3e;2]|0;d=f+36|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(d|0));c[c[l>>2]>>2]=c[h>>2];g=hc
(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0;c[(c[l>>2]|0)+12>>2]=g;if(((((c[m>>2]|0)==0?(g
=hc(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+16>>2]=g,(c[m>>2]|0)==0):0)?(
g=hc(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+20>>2]=g,(c[m>>2]|0)==0):0)?(
g=hc(c[h>>2]|0,1,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+24>>2]=g,(c[m>>2]|0)==0):0)?(
h=hc(c[h>>2]|0,2,0,b[k>>1]|0,0,m)|0,c[(c[l>>2]|0)+28>>2]=h,(c[m>>2]|0)==0):0){
b[(c[l>>2]|0)+4>>1]=b[j>>1]|0;b[(c[l>>2]|0)+6>>1]=b[k>>1]|0;m=c[m>
;>2]|0;i=n;return m|0}cf(c[l>>2]|0);m=c[m>>2]|0;i=n;return m|0}function mf(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,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=i;i=i+96|0;h=G+68|0;j=G+64|0;C=G+60|0
;z=G+56|0;E=G+80|0;k=G+78|0;l=G+76|0;t=G+74|0;v=G+52|0;x=G+48|0;u=G+72|0;w=G+44|0;y=G+40|0;r=G+36|0;s=G+32|0;m=G+28|0;n=G+24|0;o
=G+20|0;p=G+16|0;q=G+12|0;B=G+8|0;D=G+4|0;A=G;c[j>>2]=f;c[C>>2]=0;c[(c[j>>2]|0)+244+12>>
2]=0;f=(c[j>>2]|0)+592|0;if((e[(c[j>>2]|0)+216>>1]|0)!=(e[(c[j>>2]|0)+216+2>>1
]|0)){c[f>>2]=103;c[(c[j>>2]|0)+596>>2]=9;c[(c[j>>2]|0)+600>>2]=10}else{c[f>
;>2]=104;c[(c[j>>2]|0)+596>>2]=11;c[(c[j>>2]|0)+600>>2]=12}vf(c[j>>2]|0);
Hf(c[j>>2]|0,c[(c[j>>2]|0)+284+28>>2]&255);a:while(1){a[(c[j>>2]|0)+368>>
0]=a[(c[(c[j>>2]|0)+356>>2]|0)+(c[(c[j>>2]|0)+360>>2]|0)>>0]|0;g=a[10705+(d[(c
[j>>2]|0)+368>>0]|0)>>0]|0;c[(c[j>>2]|0)+372>>2]=g;if((g|0)<0){if(((c[(c[
j>>2]|0)+360>>2]|0)+1|0)>(c[(c[j>>2]|0)+364>>2]|0)){F=196;break}g=2-(_(c[(c[j>
x3e;2]|0)+372>>2]|0,d[(c[(c[j>>2]|0)+356>>2]|0)+((c[(c[j>>2]|0)+360>>2]|0)+1)
x3e;>0]|0)|0)|0;c[(c[j>>2]|0)+372>>2]=g}if(((c[(c[j>>2]|0)+360>>2]|0)+(c[(c[j>
x3e;2]|0)+372>>2]|0)|0)>(c[(c[j>>2]|0)+364>>2]|0)){F=196;break}c[(c[j>>2]|0)+28>
;>2]=(c[(c[j>>2]|0)+16>>2]|0)-(d[10961+(d[(c[j>>2]|0)+368>>0]|0)>>0]>
;>4);f=c[j>>2]|0;if((c[(c[j>>2]|0)+28>>2]|0)<0){F=10;break}c[(c[j>>2]|0)+32>
;>2]=(c[f+28>>2]|0)+(d[10961+(d[(c[j>>2]|0)+368>>0]|0)>>0]&15);f=c[j>>
;2]|0;if((c[(c[j>>2]|0)+32>>2]|0)>>>0>(c[(c[j>>2]|0)+20>>2]|0)>
x3e;>0){F=12;break}a[f+376>>0]=1;c[(c[j>>2]|0)+12>>2]=0;c[z>>2]=(c[(c[j>>
2]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<2);a[E>>0]=a[(c[j>>2]|0)+368
x3e;>0]|0;b:do switch(d[E>>0]|0){case 5:case 4:case 3:case 2:case 1:case 0:{b[k>>1]=(d[E>>0]
x26;1)<<14;b[l>>1]=b[k>>1]^16384;if((d[E>>0]|0)<4){b[(c[j>>2]|0)+284+10
x3e;>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+10+2>>1]=b[l>>1]|0;b[(c[j>>2]|0)+284+
6>>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+6+2>>1]=b[l>>1]|0}if(!(d[E>>0]&
;2)){b[(c[j>>2]|0)+284+14>>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+14+2>>1]=b[l>
x3e;1]|0}vf(c[j>>2]|0);break}case 7:case 6:{if(!((Qf(c[j>>2]|0,c[(c[z>>2]|0)+4>>2]&
65535,c[c[z>>2]>>2]&65535,d[(c[j>>2]|0)+368>>0]|0,(c[j>>2]|0)+284+10|0)|0
)&255)){g=(c[j>>2]|0)+284+6|0;f=(c[j>>2]|0)+284+10|0;b[g>>1]=b[f>>1]|0;b[g+2>
x3e;1]=b[f+2>>1]|0;vf(c[j>>2]|0)}break}case 9:case 8:{if(!((Qf(c[j>>2]|0,c[(c[z>>2]|0)+4
>>2]&65535,c[c[z>>2]>>2]&65535,d[(c[j>>2]|0)+368>>0]|0,(c[j>>
;2]|0)+284+14|0)|0)&255))vf(c[j>>2]|0);break}case 10:{b[t>>1]=c[(c[z>>2]|0)+4>>2];c
[x>>2]=b[t>>1];b[t>>1]=c[c[z>>2]>>2];c[v>>2]=b[t>>1];Rf(c[
j>>2]|0,c[v>>2]|0,c[x>>2]|0,(c[j>>2]|0)+284+10|0)|0;g=(c[j>>2]|0)+284+6|0;f=(c
[j>>2]|0)+284+10|0;b[g>>1]=b[f>>1]|0;b[g+2>>1]=b[f+2>>1]|0;vf(c[j>>2
]|0);break}case 11:{b[u>>1]=c[(c[z>>2]|0)+4>>2];c[y>>2]=b[u>>1];b[u>>
;1]=c[c[z>>2]>>2];c[w>>2]=b[u>>1];Rf(c[j>>2]|0,c[w>>2]|0,c[y>
x3e;2]|0,(c[j>>2]|0)+284+14|0)|0;vf(c[j>>2]|0);break}case 12:{c[c[z>>2]>>2]=b[(c[j>
x3e;2]|0)+284+10>>1];c[(c[z>>2]|0)+4>>2]=b[(c[j>>2]|0)+284+10+2>>1];break}case
13:{c[c[z>>2]>>2]=b[(c[j>>2]|0)+284+14>>1];c[(c[z>>2]|0)+4>>2]=b[(c
[j>>2]|0)+284+14+2>>1];break}case 14:{g=(c[j>>2]|0)+284+14|0;f=(c[j>>2]|0)+284+10|0;b[g
x3e;>1]=b[f>>1]|0;b[g+2>>1]=b[f+2>>1]|0;vf(c[j>>2]|0);break}case 15:{Sf(c[j>
x3e;2]|0,c[z>>2]|0);break}case 16:{b[(c[j>>2]|0)+284>>1]=c[c[z>>2]>>2];break}case
17:{b[(c[j>>2]|0)+284+2>>1]=c[c[z>>2]>>2];break}case 18:{b[(c[j>>2]|0)+284+4
x3e;>1]=c[c[z>>2]>>2];break}case 19:{Tf(c[j>>2]|0,c[z>>2]|0);break}case 20:{Uf(c[j
x3e;>2]|0,c[z>>2]|0);break}case 21:{Vf(c[j>>2]|0,c[z>>2]|0);break}case 22:{Wf(c[j>>
2]|0,c[z>>2]|0);break}case 23:if((c[c[z>>2]>>2]|0)<0){c[(c[j>>2]|0)+12>>2
]=132;break b}else{c[(c[j>>2]|0)+284+20>>2]=c[c[z>>2]>>2];break b}case 24:{c[(c[j>
x3e;2]|0)+284+28>>2]=1;c[(c[j>>2]|0)+568>>2]=33;break}case 25:{c[(c[j>>2]|0)+284+28>
;>2]=0;c[(c[j>>2]|0)+568>>2]=34;break}case 26:{c[(c[j>>2]|0)+284+24>>2]=c[c[z>
x3e;2]>>2];break}case 27:{Xf(c[j>>2]|0,c[z>>2]|0);break}case 28:{g=(c[j>>2]|0)+360|0;c[g
>>2]=(c[g>>2]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|0)+360>>2]|0)<
;0)c[(c[j>>2]|0)+12>>2]=132;a[(c[j>>2]|0)+376>>0]=0;break}case 29:{c[(c[j>>2]|
0)+284+36>>2]=c[c[z>>2]>>2];break}case 30:{c[(c[j>>2]|0)+284+40>>2]=c[c[z>
;>2]>>2];break}case 31:{c[(c[j>>2]|0)+284+44>>2]=c[c[z>>2]>>2]>>
;10;break}case 32:{c[(c[z>>2]|0)+4>>2]=c[c[z>>2]>>2];break}case 127:case 126:case 89:case
33:break;case 34:{c[(c[j>>2]|0)+32>>2]=0;break}case 35:{c[r>>2]=c[c[z>>2]>>2];
c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>>2];c[(c[z>>2]|0)+4>>2]=c[r>>
;2];break}case 36:{c[c[z>>2]>>2]=c[(c[j>>2]|0)+16>>2];break}case 37:{c[s>>2]=c
[c[z>>2]>>2];if((c[s>>2]|0)>0?(c[s>>2]|0)<=(c[(c[j>>2]|0)+28>
x3e;2]|0):0){c[c[z>>2]>>2]=c[(c[(c[j>>2]|0)+24>>2]|0)+((c[(c[j>>2]|0)+28>
x3e;2]|0)-(c[s>>2]|0)<<2)>>2];break b}c[(c[j>>2]|0)+12>>2]=134;break}case 38:{
Zf(c[j>>2]|0,c[z>>2]|0);break}case 39:{_f(c[j>>2]|0,c[z>>2]|0);break}case 40:{$f(c[j>
;>2]|0,c[z>>2]|0);break}case 41:{bg(c[j>>2]|0,c[z>>2]|0);break}case 42:{cg(c[j>>2]|
0,c[z>>2]|0);break}case 43:{dg(c[j>>2]|0,c[z>>2]|0);break}case 44:{eg(c[j>>2]|0,c[z>
;>2]|0);break}case 45:{fg(c[j>>2]|0,c[z>>2]|0);break}case 47:case 46:{gg(c[j>>2]|0,c[z>
x3e;2]|0);break}case 49:case 48:{hg(c[j>>2]|0,c[z>>2]|0);break}case 51:case 50:{kg(c[j>>2]|0,c[z
x3e;>2]|0);break}case 53:case 52:{ng(c[j>>2]|0,c[z>>2]|0);break}case 55:case 54:{og(c[j>>2]|0
,c[z>>2]|0);break}case 56:{pg(c[j>>2]|0,c[z>>2]|0);break}case 57:{rg(c[j>>2]|0,c[z>
x3e;2]|0);break}case 59:case 58:{sg(c[j>>2]|0,c[z>>2]|0);break}case 60:{tg(c[j>>2]|0,c[z>>
;2]|0);break}case 61:{c[(c[j>>2]|0)+284+28>>2]=2;c[(c[j>>2]|0)+568>>2]=35;break}case 63:
case 62:{ug(c[j>>2]|0,c[z>>2]|0);break}case 64:{vg(c[j>>2]|0,c[z>>2]|0);break}case 65:{wg
(c[j>>2]|0,c[z>>2]|0);break}case 66:{c[m>>2]=c[c[z>>2]>>2];if((c[m>>
2]|0)>>>0>=(e[(c[j>>2]|0)+468>>1]|0)>>>0)if(a[(c[j>>2]|0)+561
x3e;>0]|0){F=81;break b}else break b;else{c[(c[(c[j>>2]|0)+472>>2]|0)+(c[m>>2]<<2)
x3e;>2]=c[(c[z>>2]|0)+4>>2];break b}}case 67:{c[n>>2]=c[c[z>>2]>>2];if((c
[n>>2]|0)>>>0<(e[(c[j>>2]|0)+468>>1]|0)>>>0){c[c[z>>2
]>>2]=c[(c[(c[j>>2]|0)+472>>2]|0)+(c[n>>2]<<2)>>2];break b}if(a[(c[j
>>2]|0)+561>>0]|0)F=81;else c[c[z>>2]>>2]=0;break}case 68:{c[o>>2]=c[c[z>
x3e;2]>>2];f=c[j>>2]|0;if((c[o>>2]|0)>>>0>=(c[(c[j>>2]|0)+380>
x3e;2]|0)>>>0)if(a[f+561>>0]|0){F=81;break b}else break b;else{Ua[c[f+596>>2]&31](c[j>
;>2]|0,c[o>>2]|0,c[(c[z>>2]|0)+4>>2]|0);break b}}case 69:{c[p>>2]=c[c[z>>
2]>>2];f=c[j>>2]|0;if((c[p>>2]|0)>>>0<(c[(c[j>>2]|0)+380>>
2]|0)>>>0){g=Ya[c[f+592>>2]&127](c[j>>2]|0,c[p>>2]|0)|0;c[c[z>>2]>
;>2]=g;break b}if(a[f+561>>0]|0)F=81;else c[c[z>>2]>>2]=0;break}case 71:case 70:{yg(c[j>
x3e;2]|0,c[z>>2]|0);break}case 72:{zg(c[j>>2]|0,c[z>>2]|0);break}case 74:case 73:{Ag(c[j>>
;2]|0,c[z>>2]|0);break}case 75:{g=Bg(c[j>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 76:{g=Bg(c[
j>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 77:{a[(c[j>>2]|0)+284+32>>0]=1;break}case
78:{a[(c[j>>2]|0)+284+32>>0]=0;break}case 79:{c[(c[j>>2]|0)+12>>2]=135;break}case 80:{c
[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<(c[(c[z>>2]|0)+4>>2]|0)&1;break
}case 81:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<=(c[(c[z>>2]|0)+4>>2]|
0)&1;break}case 82:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)>(c[(c[z>>2]|0)+4
>>2]|0)&1;break}case 83:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)>=(c[(c[z>
;>2]|0)+4>>2]|0)&1;break}case 84:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)==(
c[(c[z>>2]|0)+4>>2]|0)&1;break}case 85:{c[c[z>>2]>>2]=(c[c[z>>2]>>
;2]|0)!=(c[(c[z>>2]|0)+4>>2]|0)&1;break}case 86:{g=((Oa[c[(c[j>>2]|0)+568>>2]&
63](c[j>>2]|0,c[c[z>>2]>>2]|0,0)|0)&127|0)==64&1;c[c[z>>2]>>2]=g;break
}case 87:{g=((Oa[c[(c[j>>2]|0)+568>>2]&63](c[j>>2]|0,c[c[z>>2]>>2]|0,0)|0
)&127|0)==0&1;c[c[z>>2]>>2]=g;break}case 88:{Cg(c[j>>2]|0,c[z>>2]|0);break}case
90:{if(c[c[z>>2]>>2]|0)f=(c[(c[z>>2]|0)+4>>2]|0)!=0;else f=0;c[c[z>>2]>
x3e;2]=f&1;break}case 91:{if(c[c[z>>2]>>2]|0)f=1;else f=(c[(c[z>>2]|0)+4>>2]|0)!=0;
c[c[z>>2]>>2]=f&1;break}case 92:{c[c[z>>2]>>2]=((c[c[z>>2]>>2]|
0)!=0^1)&1;break}case 93:{Dg(c[j>>2]|0,c[z>>2]|0);break}case 94:{b[(c[j>>2]|0)+284+48>
x3e;1]=c[c[z>>2]>>2];break}case 95:{b[(c[j>>2]|0)+284+50>>1]=c[c[z>>2]>
x3e;2];break}case 96:{g=c[z>>2]|0;c[g>>2]=(c[g>>2]|0)+(c[(c[z>>2]|0)+4>>2]|0);
break}case 97:{g=c[z>>2]|0;c[g>>2]=(c[g>>2]|0)-(c[(c[z>>2]|0)+4>>2]|0);break}case
98:if(!(c[(c[z>>2]|0)+4>>2]|0)){c[(c[j>>2]|0)+12>>2]=133;break b}else{g=Ub(c[c[z>
x3e;2]>>2]|0,64,c[(c[z>>2]|0)+4>>2]|0)|0;c[c[z>>2]>>2]=g;break b}case 99:{g=xb
(c[c[z>>2]>>2]|0,c[(c[z>>2]|0)+4>>2]|0,64)|0;c[c[z>>2]>>2]=g;break}case
100:{g=c[c[z>>2]>>2]|0;c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<0?0-g|0
:g;break}case 101:{c[c[z>>2]>>2]=0-(c[c[z>>2]>>2]|0);break}case 102:{c[c[z>>2]
x3e;>2]=c[c[z>>2]>>2]&-64;break}case 103:{c[c[z>>2]>>2]=(c[c[z>>2]
x3e;>2]|0)+63&-64;break}case 107:case 106:case 105:case 104:{g=Oa[c[(c[j>>2]|0)+568>>2]&63](c
[j>>2]|0,c[c[z>>2]>>2]|0,c[(c[j>>2]|0)+244+20+((d[(c[j>>2]|0)+368>>0
]|0)-104<<2)>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 111:case 110:case 109:case 108:{g=If(c[
j>>2]|0,c[c[z>>2]>>2]|0,c[(c[j>>2]|0)+244+20+((d[(c[j>>2]|0)+368>>0]|
0)-108<<2)>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 112:{c[q>>2]=c[c[z>>2
]>>2];if((c[q>>2]|0)>>>0>=(c[(c[j>>2]|0)+380>>2]|0)>>>
;0)if(a[(c[j>>2]|0)+561>>0]|0){F=81;break b}else break b;else{g=Mb(c[(c[z>>2]|0)+4>>2]|0
,c[(c[j>>2]|0)+244+16>>2]|0)|0;c[(c[(c[j>>2]|0)+384>>2]|0)+(c[q>>2]<<
;2)>>2]=g;break b}}case 114:case 113:{Dg(c[j>>2]|0,c[z>>2]|0);break}case 117:case 116:case 115:{Eg
(c[j>>2]|0,c[z>>2]|0);break}case 118:{Fg(c[j>>2]|0,16384,c[c[z>>2]>>2]|0);c[(c
[j>>2]|0)+284+28>>2]=6;c[(c[j>>2]|0)+568>>2]=36;break}case 119:{Fg(c[j>>2]|0,11585
,c[c[z>>2]>>2]|0);c[(c[j>>2]|0)+284+28>>2]=7;c[(c[j>>2]|0)+568>>2]=37
;break}case 120:{if(c[(c[z>>2]|0)+4>>2]|0){g=(c[j>>2]|0)+360|0;c[g>>2]=(c[g>>2
]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|0)+360>>2]|0)<0)c[(c[j>>2]|0)+12>
;>2]=132;a[(c[j>>2]|0)+376>>0]=0}break}case 121:{if(!(c[(c[z>>2]|0)+4>>2]|0)){g=(c[
j>>2]|0)+360|0;c[g>>2]=(c[g>>2]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|
0)+360>>2]|0)<0)c[(c[j>>2]|0)+12>>2]=132;a[(c[j>>2]|0)+376>>0]=0}break}case
122:{c[(c[j>>2]|0)+284+28>>2]=5;c[(c[j>>2]|0)+568>>2]=38;break}case 123:{$f(c[j>
x3e;2]|0,c[z>>2]|0);break}case 124:{c[(c[j>>2]|0)+284+28>>2]=4;c[(c[j>>2]|0)+568>
x3e;2]=39;break}case 125:{c[(c[j>>2]|0)+284+28>>2]=3;c[(c[j>>2]|0)+568>>2]=40;break}case
128:{Gg(c[j>>2]|0,c[z>>2]|0);break}case 129:{Hg(c[j>>2]|0,c[z>>2]|0);break}case 130:{Ig
(c[j>>2]|0,c[z>>2]|0);break}case 132:case 131:{$f(c[j>>2]|0,c[z>>2]|0);break}case 133:{Jg
(c[j>>2]|0,c[z>>2]|0);break}case 135:case 134:{Kg(c[j>>2]|0,c[z>>2]|0);break}case 136:{Lg
(c[j>>2]|0,c[z>>2]|0);break}case 137:{Mg(c[j>>2]|0,c[z>>2]|0);break}case 138:{Ng(c[j>
;>2]|0,c[z>>2]|0);break}case 139:{if((c[(c[z>>2]|0)+4>>2]|0)>(c[c[z>>2]>
x3e;2]|0))c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>>2];break}case 140:{if((c[(c[z>>2]|0)+
4>>2]|0)<(c[c[z>>2]>>2]|0))c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>
x3e;2];break}case 141:{Og(c[j>>2]|0,c[z>>2]|0);break}case 142:{Pg(c[j>>2]|0,c[z>>2]|0);break
}case 143:{$f(c[j>>2]|0,c[z>>2]|0);break}default:{if((d[E>>0]|0)>=224){Qg(c[j>>2]|0
,c[z>>2]|0);break b}if((d[E>>0]|0)>=192){Rg(c[j>>2]|0,c[z>>2]|0);break b}if((d[E>
;>0]|0)>=184){Sg(c[j>>2]|0,c[z>>2]|0);break b}f=c[j>>2]|0;g=c[z>>2]|0;if((d[E
x3e;>0]|0)>=176){Tg(f,g);break b}else{$f(f,g);break b}}}while(0);if((F|0)==81){F=0;c[(c[j>>2]|0)+12>>
;2]=134}f=c[j>>2]|0;if(c[(c[j>>2]|0)+12>>2]|0){if((c[f+12>>2]|0)!=128)break;c[B>>
;2]=c[(c[j>>2]|0)+416>>2];c[D>>2]=(c[B>>2]|0)+(c[(c[j>>2]|0)+408>>2]
x3c;<4);while(1){if((c[B>>2]|0)>>>0>=(c[D>>2]|0)>>>0){F=186;break a}
if(d[(c[B>>2]|0)+12>>0]|0?(d[(c[j>>2]|0)+368>>0]|0)==(c[(c[B>>2]|0)+8>>
;2]&255|0):0)break;c[B>>2]=(c[B>>2]|0)+16}f=c[j>>2]|0;if((c[(c[j>>2]|0)+428>
x3e;2]|0)>=(c[(c[j>>2]|0)+432>>2]|0)){F=183;break}c[A>>2]=(c[(c[j>>2]|0)+436>
x3e;2]|0)+(c[f+428>>2]<<4);c[c[A>>2]>>2]=c[(c[j>>2]|0)+352>>2];c[(c[
A>>2]|0)+4>>2]=(c[(c[j>>2]|0)+360>>2]|0)+1;c[(c[A>>2]|0)+8>>2]=1;c[(
c[A>>2]|0)+12>>2]=c[(c[B>>2]|0)+4>>2];if(((ag(c[j>>2]|0,c[c[B>>2]>
;>2]|0,c[(c[B>>2]|0)+4>>2]|0)|0)&255|0)==1)break}else{c[(c[j>>2]|0)+16>>2]=c[f
+32>>2];if(a[(c[j>>2]|0)+376>>0]|0){g=(c[j>>2]|0)+360|0;c[g>>2]=(c[g>>
;2]|0)+(c[(c[j>>2]|0)+372>>2]|0)}g=(c[C>>2]|0)+1|0;c[C>>2]=g;if((g|0)>1e6){F=190;break
}}f=c[j>>2]|0;if((c[(c[j>>2]|0)+360>>2]|0)>=(c[(c[j>>2]|0)+364>>2]|0)){F=
192;break}if(!((a[f+488>>0]|0)!=0^1)){F=195;break}}if((F|0)==10)c[f+12>>2]=129;else if((F|0)==12)c[f+12>
;>2]=130;else if((F|0)==183)c[f+12>>2]=134;else if((F|0)==186)c[(c[j>>2]|0)+12>>2]=128;else if
((F|0)==190){c[h>>2]=139;F=c[h>>2]|0;i=G;return F|0}else if((F|0)==192)if((c[f+428>>2]|0)>0)c
[(c[j>>2]|0)+12>>2]=131;else F=195;else if((F|0)==196)c[(c[j>>2]|0)+12>>2]=131;if((F|0)==
195){c[h>>2]=0;F=c[h>>2]|0;i=G;return F|0}if(c[(c[j>>2]|0)+12>>2]|0?(a[(c[j>>2
]|0)+488>>0]|0)==0:0)a[(c[(c[j>>2]|0)+4>>2]|0)+301>>0]=0;c[h>>2]=c[(c[j>
x3e;2]|0)+12>>2];F=c[h>>2]|0;i=G;return F|0}function nf(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[(c[(c[e>>2]|0)+384>>2]|0)+(c[f>>2]<<2)
x3e;>2]|0;b=Mb(b,of(c[e>>2]|0)|0)|0;i=d;return b|0}function of(a){a=a|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+
8|0;f=h+4|0;g=h;c[e>>2]=a;do if(!(c[(c[e>>2]|0)+244+12>>2]|0)){a=c[e>>2]|0;if(!(b[(c[e
x3e;>2]|0)+284+10+2>>1]|0)){c[(c[e>>2]|0)+244+12>>2]=c[a+244>>2];break}d=c[e>
x3e;2]|0;if(!(b[a+284+10>>1]|0)){c[(c[e>>2]|0)+244+12>>2]=c[d+244+4>>2];break}else{c[f
x3e;>2]=xb(b[d+284+10>>1]|0,c[(c[e>>2]|0)+244>>2]|0,16384)|0;c[g>>2]=xb(b[(c[e>
;>2]|0)+284+10+2>>1]|0,c[(c[e>>2]|0)+244+4>>2]|0,16384)|0;g=pf(c[f>>2]|0,c[g>
x3e;2]|0)|0;c[(c[e>>2]|0)+244+12>>2]=g;break}}while(0);i=h;return c[(c[e>>2]|0)+244+12>>
2]|0}function pf(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;f=d+8|0;e=d;c[g>>2]=a;c[f>>2]=b;
c[e>>2]=c[g>>2];c[e+4>>2]=c[f>>2];b=me(e)|0;i=d;return b|0}function qf(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;d=c[h
x3e;>2]|0;d=Vb(d,of(c[g>>2]|0)|0)|0;c[(c[(c[g>>2]|0)+384>>2]|0)+(c[f>>2]<<
;2)>>2]=d;i=e;return}function rf(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;b=c[h>>2]|0;b=Vb(b,of(c[g>>2]|0)|0)|0;d=(c[(c[g>>
;2]|0)+384>>2]|0)+(c[f>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+b;i=e;return}function sf(
a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f+4|0;d=f;c[e>>2]=a;c[d>>2]=b;i=f;return c[(c[(c[e>>
;2]|0)+384>>2]|0)+(c[d>>2]<<2)>>2]|0}function tf(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;c[(c[(c[g>>2]|0)+384
>>2]|0)+(c[f>>2]<<2)>>2]=c[h>>2];i=e;return}function uf(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[(c[h>
;>2]|0)+384>>2]|0)+(c[g>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+(c[f>>2]|
0);i=e;return}function vf(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=a;d=(c[e>>2]|0)+284|0;do if((b[(
c[e>>2]|0)+284+14>>1]|0)!=16384){a=(c[e>>2]|0)+284+10|0;if((b[d+14+2>>1]|0)==16384){c[(c
[e>>2]|0)+564>>2]=b[a+2>>1]<<16;break}else{d=(_(b[a>>1]|0,b[(c[e>>2]|
0)+284+14>>1]|0)|0)<<2;d=d+((_(b[(c[e>>2]|0)+284+10+2>>1]|0,b[(c[e>>2]|0)+284+
14+2>>1]|0)|0)<<2)|0;c[(c[e>>2]|0)+564>>2]=d;break}}else c[(c[e>>2]|0)+564>
;>2]=b[d+10>>1]<<16;while(0);a=c[e>>2]|0;do if((b[(c[e>>2]|0)+284+10>>1]|
0)!=16384){d=(c[e>>2]|0)+572|0;if((b[a+284+10+2>>1]|0)==16384){c[d>>2]=42;break}else{c[d>>
;2]=43;break}}else c[a+572>>2]=41;while(0);a=c[e>>2]|0;do if((b[(c[e>>2]|0)+284+6>>1]|0)!=
16384){d=(c[e>>2]|0)+576|0;if((b[a+284+6+2>>1]|0)==16384){c[d>>2]=42;break}else{c[d>>2]=
44;break}}else c[a+576>>2]=41;while(0);c[(c[e>>2]|0)+584>>2]=4;c[(c[e>>2]|0)+588>
x3e;2]=5;do if((c[(c[e>>2]|0)+564>>2]|0)==1073741824){a=c[e>>2]|0;if((b[(c[e>>2]|0)+284+
14>>1]|0)==16384){c[a+584>>2]=6;c[(c[e>>2]|0)+588>>2]=7;break}if((b[a+284+14+2>>
;1]|0)==16384){c[(c[e>>2]|0)+584>>2]=8;c[(c[e>>2]|0)+588>>2]=9}}while(0);d=c[(c[e>
x3e;2]|0)+564>>2]|0;if((((c[(c[e>>2]|0)+564>>2]|0)<0?0-d|0:d)|0)>=67108864){e=c[e>
x3e;2]|0;e=e+244|0;e=e+12|0;c[e>>2]=0;i=f;return}c[(c[e>>2]|0)+564>>2]=1073741824;e=c[e>>
;2]|0;e=e+244|0;e=e+12|0;c[e>>2]=0;i=f;return}function wf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=i;i=i+16|0;h=
f+8|0;e=f+4|0;g=f;c[h>>2]=a;c[e>>2]=b;c[g>>2]=d;c[h>>2]=c[h>>2];c[g>>
;2]=c[g>>2];i=f;return c[e>>2]|0}function xf(a,b,d){a=a|0;b=b|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]=b;c[e>>2]=d;c[h>>2]=c[h>>2];c[g>>2]=
c[g>>2];i=f;return c[e>>2]|0}function yf(a,d,e){a=a|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]=a;c[j>>2]=d;c[h>>2]=e;a=zf(c[j>>2]|0,c[h>>2]|0,b[(c[g>
x3e;2]|0)+284+10>>1]|0,b[(c[g>>2]|0)+284+10+2>>1]|0)|0;i=f;return a|0}function zf(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;h=i;i=i+64|0;t=h+48|0;r=h+44|0;s=h+40|0;q=h+36|0;p=
h+32|0;k=h+28|0;n=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;l=h+8|0;o=h+4|0;j=h;c[t>>2]=a;c[r>>2]=b;c[s>>2
]=d;c[q>>2]=e;c[f>>2]=_(c[t>>2]&65535,c[s>>2]|0)|0;c[p>>2]=_(c[t>>
;2]>>16,c[s>>2]|0)|0;c[l>>2]=(c[f>>2]|0)+(c[p>>2]<<16);c[n>>
;2]=(c[p>>2]>>16)+(c[f>>2]>>31)+((c[l>>2]|0)>>>0<(c[f>
;>2]|0)>>>0&1);c[f>>2]=_(c[r>>2]&65535,c[q>>2]|0)|0;c[p>>2
]=_(c[r>>2]>>16,c[q>>2]|0)|0;c[o>>2]=(c[f>>2]|0)+(c[p>>2]<<
;16);c[m>>2]=(c[p>>2]>>16)+(c[f>>2]>>31)+((c[o>>2]|0)>>>
;0<(c[f>>2]|0)>>>0&1);c[j>>2]=(c[l>>2]|0)+(c[o>>2]|0);c[g>
x3e;2]=(c[n>>2]|0)+(c[m>>2]|0)+((c[j>>2]|0)>>>0<(c[l>>2]|0)>>
;>0&1);c[k>>2]=c[g>>2]>>31;c[f>>2]=(c[j>>2]|0)+(c[k>>2]|0);
c[g>>2]=(c[g>>2]|0)+((c[k>>2]|0)+((c[f>>2]|0)>>>0<(c[j>>2]|
0)>>>0&1));c[j>>2]=c[f>>2];c[f>>2]=(c[j>>2]|0)+8192;c[g>>2
]=(c[g>>2]|0)+((c[f>>2]|0)>>>0<(c[j>>2]|0)>>>0&1);i=h;return
c[g>>2]<<18|(c[f>>2]|0)>>>14|0}function Af(a,d,e){a=a|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]=a;c[j>>2]=d;c[h>>2]=e;a=zf(c[j>>2]|0,c[h
x3e;>2]|0,b[(c[g>>2]|0)+284+6>>1]|0,b[(c[g>>2]|0)+284+6+2>>1]|0)|0;i=f;return a|0}function
Bf(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;p=i;i=i+32|0;k=p+12|0;l=p+8|0;m=p+16|0;n=p+4|0;o=p;c[k>>
;2]=f;c[l>>2]=g;b[m>>1]=h;c[n>>2]=j;c[o>>2]=b[(c[k>>2]|0)+284+14>>1];
if(c[o>>2]|0){h=xb(c[n>>2]|0,c[o>>2]<<16,c[(c[k>>2]|0)+564>>2]|0)|0;
g=(c[(c[l>>2]|0)+16>>2]|0)+(e[m>>1]<<3)|0;c[g>>2]=(c[g>>2]|0)+h;g=(c
[(c[l>>2]|0)+24>>2]|0)+(e[m>>1]|0)|0;a[g>>0]=d[g>>0]|8}c[o>>2]=b[(c[
k>>2]|0)+284+14+2>>1];if(!(c[o>>2]|0)){i=p;return}o=xb(c[n>>2]|0,c[o>>2]<
x3c;16,c[(c[k>>2]|0)+564>>2]|0)|0;g=(c[(c[l>>2]|0)+16>>2]|0)+(e[m>>1]<<
;3)+4|0;c[g>>2]=(c[g>>2]|0)+o;g=(c[(c[l>>2]|0)+24>>2]|0)+(e[m>>1]|0)|0;a[g>
;>0]=d[g>>0]|16;i=p;return}function Cf(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;n=i;i=i+32|0;
h=n+12|0;j=n+8|0;k=n+16|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>2]=d;b[k>>1]=f;c[l>>2]=g;c[m>
x3e;2]=b[(c[h>>2]|0)+284+14>>1];if(c[m>>2]|0){f=xb(c[l>>2]|0,c[m>>2]<<
;16,c[(c[h>>2]|0)+564>>2]|0)|0;d=(c[(c[j>>2]|0)+12>>2]|0)+(e[k>>1]<<
3)|0;c[d>>2]=(c[d>>2]|0)+f}c[m>>2]=b[(c[h>>2]|0)+284+14+2>>1];if(!(c[m>
x3e;2]|0)){i=n;return}m=xb(c[l>>2]|0,c[m>>2]<<16,c[(c[h>>2]|0)+564>>2]|0)|0;d=(
c[(c[j>>2]|0)+12>>2]|0)+(e[k>>1]<<3)+4|0;c[d>>2]=(c[d>>2]|0)+m;i=n;return
}function Df(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;k=i;i=i+16|0;o=k+8|0;m=k+4|0;l=k+12|0;n=k;c[o>>2
]=f;c[m>>2]=g;b[l>>1]=h;c[n>>2]=j;c[o>>2]=c[o>>2];g=(c[(c[m>>2]|0)+16
>>2]|0)+((e[l>>1]|0)<<3)|0;c[g>>2]=(c[g>>2]|0)+(c[n>>2]|0);g=(c[(c[m
>>2]|0)+24>>2]|0)+(e[l>>1]|0)|0;a[g>>0]=d[g>>0]|0|8;i=k;return}function Ef(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;h=i;i=i+16|0;m=h+8|0;l=h+4|0;k=h+12|0;j=h;c[m>>2]=a;c[l>>
;2]=d;b[k>>1]=f;c[j>>2]=g;c[m>>2]=c[m>>2];d=(c[(c[l>>2]|0)+12>>2]|0)+((
e[k>>1]|0)<<3)|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);i=h;return}function Ff(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;k=i;i=i+16|0;o=k+8|0;m=k+4|0;l=k+12|0;n=k;c[o>>2]=f;c[m>>
2]=g;b[l>>1]=h;c[n>>2]=j;c[o>>2]=c[o>>2];g=(c[(c[m>>2]|0)+16>>2]|0)+((
e[l>>1]|0)<<3)+4|0;c[g>>2]=(c[g>>2]|0)+(c[n>>2]|0);g=(c[(c[m>>2]|0)+
24>>2]|0)+(e[l>>1]|0)|0;a[g>>0]=d[g>>0]|0|16;i=k;return}function Gf(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;h=i;i=i+16|0;m=h+8|0;l=h+4|0;k=h+12|0;j=h;c[m>>2]=a;c[l>>2]=d;b[k>
x3e;1]=f;c[j>>2]=g;c[m>>2]=c[m>>2];d=(c[(c[l>>2]|0)+12>>2]|0)+((e[k>>
;1]|0)<<3)+4|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);i=h;return}function Hf(b,e){b=b|0;e=e|0;var
f=0,g=0,h=0;g=i;i=i+16|0;f=g;h=g+4|0;c[f>>2]=b;a[h>>0]=e;switch(d[h>>0]|0|0){case 5:{c[(c[f>
x3e;2]|0)+568>>2]=38;break}case 1:{c[(c[f>>2]|0)+568>>2]=33;break}case 4:{c[(c[f>>2]|0)+
568>>2]=39;break}case 3:{c[(c[f>>2]|0)+568>>2]=40;break}case 0:{c[(c[f>>2]|0)+568>
x3e;2]=34;break}case 2:{c[(c[f>>2]|0)+568>>2]=35;break}case 6:{c[(c[f>>2]|0)+568>>2]=36;
break}case 7:{c[(c[f>>2]|0)+568>>2]=37;break}default:{}}i=g;return}function If(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;j=g+12|0;e=g+8|0;h=g+4|0;f=g;c[j>>2]=a;c[e>>2]=b;c[h>>2]=d;c[j>
;>2]=c[j>>2];d=c[e>>2]|0;b=c[h>>2]|0;if((c[e>>2]|0)>=0){j=d+b|0;c[f>>
;2]=j;c[f>>2]=(c[e>>2]|0)!=0&(c[f>>2]|0)<0?0:j;j=c[f>>2]|0;i=g;return j|0}else
{j=d-b|0;c[f>>2]=j;c[f>>2]=(c[f>>2]|0)>0?0:j;j=c[f>>2]|0;i=g;return j|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,j=0;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>
;2]=b;c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e
x3e;>2]|0)+32&-64)|0;c[g>>2]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;
return j|0}c[g>>2]=(c[e>>2]|0)+(c[f>>2]|0)+32;if((c[e>>2]|0)!=0&(c[g>>2]|
0)>0){c[g>>2]=c[g>>2]&-64;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>
;>2]|0;i=h;return j|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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f
=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|
0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)+63&-64)|0;c[g>>2]=j;c[g>>2]=(c[g>>
;2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2]=(c[e>>2]|0)+(c[f>>2]|0)+63;if((c[e
x3e;>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2]=c[g>>2]&-64;j=c[g>>2]|0;i=h;return
j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c[j>>2]=
c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)&-64)|0;c[g>>2
]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2]=(c[e>>2]|
0)+(c[f>>2]|0);if((c[e>>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2]=c[g>>2]&
;-64;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|0}return 0}function Mf(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;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;
c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|0)>=0){j=((c[e>>2]|0)+(c[f>>
;2]|0)&-64)+32|0;c[g>>2]=j;c[g>>2]=(c[e>>2]|0)!=0&(c[g>>2]|0)<0?0:j;j=c[g
>>2]|0;i=h;return j|0}else{j=0-(((c[f>>2]|0)-(c[e>>2]|0)&-64)+32)|0;c[g>>2]=j;c[g
x3e;>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}return 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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c
[j>>2]=c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)+16&-32
)|0;c[g>>2]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2
]=(c[e>>2]|0)+(c[f>>2]|0)+16;if((c[e>>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2
]=c[g>>2]&-32;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|0}
return 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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2
]=a;c[f>>2]=b;c[g>>2]=d;if((c[f>>2]|0)>=0){a=(c[f>>2]|0)-(c[(c[e>>2]|0)+480
>>2]|0)+(c[(c[e>>2]|0)+484>>2]|0)+(c[g>>2]|0)&0-(c[(c[e>>2]|0)+476>
x3e;2]|0);c[h>>2]=a;c[h>>2]=(c[f>>2]|0)!=0&(c[h>>2]|0)<0?0:a;c[h>>2]=(
c[h>>2]|0)+(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}else{a=0-((c[(c[e>
x3e;2]|0)+484>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0)-(c[f>>2]|0)+(c[g>>2]|0)&0-(
c[(c[e>>2]|0)+476>>2]|0))|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>0?0:a;c[h>
x3e;2]=(c[h>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}return 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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>
;2]=b;c[g>>2]=d;if((c[f>>2]|0)>=0){a=_(((c[f>>2]|0)-(c[(c[e>>2]|0)+480>>2
]|0)+(c[(c[e>>2]|0)+484>>2]|0)+(c[g>>2]|0)|0)/(c[(c[e>>2]|0)+476>>2]|0)|0,c[(c
[e>>2]|0)+476>>2]|0)|0;c[h>>2]=a;c[h>>2]=(c[f>>2]|0)!=0&(c[h>>2
]|0)<0?0:a;c[h>>2]=(c[h>>2]|0)+(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;
return h|0}else{a=0-(_(((c[(c[e>>2]|0)+484>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0)-(c[f>
x3e;2]|0)+(c[g>>2]|0)|0)/(c[(c[e>>2]|0)+476>>2]|0)|0,c[(c[e>>2]|0)+476>>2]|0)|
0)|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>0?0:a;c[h>>2]=(c[h>>2]|0)-(c[(c[e>
;>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}return 0}function Qf(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;v=i;i=i+48|0;k=v+36|0;l=v+28|0;m=v+34|0;n=v+32|0;o=v+24|0;p=v+20|0;q=v+
16|0;r=v+12|0;s=v+8|0;t=v+4|0;u=v;c[l>>2]=d;b[m>>1]=f;b[n>>1]=g;c[o>>2]=h;c[p>>
;2]=j;if((e[m>>1]|0)>>>0<(e[(c[l>>2]|0)+108+8>>1]|0)>>>0?(e[n
x3e;>1]|0)>>>0<(e[(c[l>>2]|0)+72+8>>1]|0)>>>0:0){c[t>>2]=(
c[(c[l>>2]|0)+72+16>>2]|0)+(e[n>>1]<<3);c[u>>2]=(c[(c[l>>2]|0)+108+16
>>2]|0)+(e[m>>1]<<3);c[q>>2]=(c[c[t>>2]>>2]|0)-(c[c[u>>2]
x3e;>2]|0);c[r>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[u>>2]|0)+4>>2]|0);if(c[o
>>2]&1|0){c[s>>2]=c[r>>2];c[r>>2]=c[q>>2];c[q>>2]=0-(c[s>
x3e;2]|0)}Rf(c[l>>2]|0,c[q>>2]|0,c[r>>2]|0,c[p>>2]|0)|0;a[k>>0]=0;u=a[k>
x3e;0]|0;i=v;return u|0}if(a[(c[l>>2]|0)+561>>0]|0)c[(c[l>>2]|0)+12>>2]=134;a[k>>
;0]=1;u=a[k>>0]|0;i=v;return u|0}function Rf(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;
p=i;i=i+32|0;h=p+22|0;q=p+16|0;j=p+12|0;k=p+8|0;l=p+4|0;o=p;m=p+21|0;n=p+20|0;c[q>>2]=d;c[j>>2]=e;c[k>
x3e;2]=f;c[l>>2]=g;c[q>>2]=c[q>>2];d=c[j>>2]|0;if((((c[j>>2]|0)<0?0-d|0:d
)|0)<65536?(q=c[k>>2]|0,(((c[k>>2]|0)<0?0-q|0:q)|0)<65536):0){c[j>>2]=c[j>>
;2]<<8;c[k>>2]=c[k>>2]<<8;c[o>>2]=pf(c[j>>2]|0,c[k>>2]|0)|
0;if(!(c[o>>2]|0)){a[h>>0]=0;q=a[h>>0]|0;i=p;return q|0}else{q=(xb(c[j>>2]|0,16384,c[o
x3e;>2]|0)|0)&65535;b[c[l>>2]>>1]=q;q=(xb(c[k>>2]|0,16384,c[o>>2]|0)|0)&65535
;b[(c[l>>2]|0)+2>>1]=q;a[h>>0]=0;q=a[h>>0]|0;i=p;return q|0}}c[o>>2]=pf(c[j>
;>2]|0,c[k>>2]|0)|0;c[j>>2]=xb(c[j>>2]|0,16384,c[o>>2]|0)|0;c[k>>2]=xb(c[
k>>2]|0,16384,c[o>>2]|0)|0;q=_(c[j>>2]|0,c[j>>2]|0)|0;c[o>>2]=q+(_(c[k>
x3e;2]|0,c[k>>2]|0)|0);if((c[j>>2]|0)<0){c[j>>2]=0-(c[j>>2]|0);a[m>>0]=1}
else a[m>>0]=0;if((c[k>>2]|0)<0){c[k>>2]=0-(c[k>>2]|0);a[n>>0]=1}else a[n
>>0]=0;while(1){if((c[o>>2]|0)>=268435456)break;if((c[j>>2]|0)<(c[k>>2]|0))c[j
>>2]=(c[j>>2]|0)+1;else c[k>>2]=(c[k>>2]|0)+1;q=_(c[j>>2]|0,c[j>>2]|
0)|0;c[o>>2]=q+(_(c[k>>2]|0,c[k>>2]|0)|0)}while(1){if((c[o>>2]|0)<268451840)break;if
((c[j>>2]|0)<(c[k>>2]|0))c[j>>2]=(c[j>>2]|0)+-1;else c[k>>2]=(c[k>
x3e;2]|0)+-1;q=_(c[j>>2]|0,c[j>>2]|0)|0;c[o>>2]=q+(_(c[k>>2]|0,c[k>>2]|0)|0)}if
(a[m>>0]|0)c[j>>2]=0-(c[j>>2]|0);if(a[n>>0]|0)c[k>>2]=0-(c[k>>2]|0);
b[c[l>>2]>>1]=c[j>>2];b[(c[l>>2]|0)+2>>1]=c[k>>2];a[h>>0]=
0;q=a[h>>0]|0;i=p;return q|0}function Sf(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;x=i;i=i+64|0;h=x+44|0;y=x+40|0;v=x+56|0;k=x+54|0;l=x+52|0;m=x+50|0;n=x+48|0;s=x+36|0;t=x+32|0;u=x+28|0;o=x+24|0;p=x+
20|0;q=x+16|0;r=x+12|0;w=x+8|0;j=x;c[h>>2]=f;c[y>>2]=g;b[v>>1]=c[c[y>>2]>>2];b
[k>>1]=c[(c[y>>2]|0)+4>>2];b[l>>1]=c[(c[y>>2]|0)+8>>2];b[m>>
;1]=c[(c[y>>2]|0)+12>>2];b[n>>1]=c[(c[y>>2]|0)+16>>2];if(((((e[m>>1]|
0)>>>0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0?(e[n>>1]|0)>>
x3e;0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0:0)?(e[k>>1]|0)>>>0<(e
[(c[h>>2]|0)+72+8>>1]|0)>>>0:0)?(e[l>>1]|0)>>>0<(e[(c[h>
x3e;2]|0)+72+8>>1]|0)>>>0:0)?(e[v>>1]|0)>>>0<(e[(c[h>>2]|0)+108
+8>>1]|0)>>>0:0){c[q>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1
]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>>
2]|0);c[r>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)+4>>2]|0)-(
c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0);c[o>>2]=(c[(c[(c
[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+72+16
x3e;>2]|0)+(e[k>>1]<<3)>>2]|0);c[p>>2]=(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]
x3c;<3)+4>>2]|0);c[t>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<
;3)>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2]|0);c[u>
;>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)-(c[(c[(c[h>
;>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0);y=(c[(c[h>>2]|0)+108+24>
x3e;2]|0)+(e[v>>1]|0)|0;a[y>>0]=d[y>>0]|24;y=xb(c[o>>2]|0,0-(c[r>>2]|0)|0,64)|
0;c[s>>2]=y+(xb(c[p>>2]|0,c[q>>2]|0,64)|0);y=c[s>>2]|0;if((((c[s>>2]|0)<0
?0-y|0:y)|0)>=64){y=xb(c[t>>2]|0,0-(c[r>>2]|0)|0,64)|0;c[w>>2]=y+(xb(c[u>>2]|0,c[q
x3e;>2]|0,64)|0);c[j>>2]=xb(c[w>>2]|0,c[o>>2]|0,c[s>>2]|0)|0;c[j+4>>2]=xb
(c[w>>2]|0,c[p>>2]|0,c[s>>2]|0)|0;c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>
;1]<<3)>>2]=(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2
]|0)+(c[j>>2]|0);c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)+4>>2]=(
c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)+(c[j+4>>2]|0);i=
x;return}else{c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)>>2]=((c[(c[(c[h>
;>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2]|0)+(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]
x3c;<3)>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)>>2]|
0)|0)/4|0;c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)+4>>2]=((c[(c[(c[h>
x3e;2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]
x3c;<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)+4>>
;2]|0)|0)/4|0;i=x;return}}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=x;return}c[(c[h>>2]|0)+12>>2]=
134;i=x;return}function Tf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e
;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>2]|0)+36|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e
x3e;>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{e=(c[g>>2]|0)+36|0;d=(c[g>
x3e;2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c
[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>>2]=134;i=j;return}}b[(c[g>>
2]|0)+284+60>>1]=c[c[h>>2]>>2];i=j;return}function Uf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i
+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>
2]|0)+72|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));
break}case 1:{e=(c[g>>2]|0)+72|0;d=(c[g>>2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0
;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>
2]|0)+12>>2]=134;i=j;return}}b[(c[g>>2]|0)+284+62>>1]=c[c[h>>2]>>2];i=j;return
}function Vf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h
x3e;>2]>>2]|0){case 0:{e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=
c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+144
|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c[g>>
;2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>>2]=134;i=j;return}}b[(c[g>>2]|0)+284+64
x3e;>1]=c[c[h>>2]>>2];i=j;return}function Wf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;
h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>2]|0)+36|0;d=(
c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{
e=(c[g>>2]|0)+36|0;d=(c[g>>2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while
((e|0)<(f|0));break}default:{if(!(a[(c[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>
x3e;2]=134;i=j;return}}e=(c[g>>2]|0)+72|0;d=(c[g>>2]|0)+36|0;f=e+36|0;do{c[e>>2]=c[d>>2];
e=e+4|0;d=d+4|0}while((e|0)<(f|0));e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+36|0;f=e+36|0;do{c[e>>2]=
c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));b[(c[g>>2]|0)+284+60>>1]=c[c[h>>2]>
x3e;2];b[(c[g>>2]|0)+284+62>>1]=c[c[h>>2]>>2];b[(c[g>>2]|0)+284+64>>
1]=c[c[h>>2]>>2];i=j;return}function Xf(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+8|0;h=g+4|0;f=
g;c[e>>2]=a;c[h>>2]=b;c[e>>2]=c[e>>2];c[h>>2]=c[h>>2];c[f>>
;2]=1;while(1){if(((Yf(c[e>>2]|0)|0)&255|0)==1){e=7;break}switch(d[(c[e>>2]|0)+368>>0]|0|0){case
88:{c[f>>2]=(c[f>>2]|0)+1;break}case 89:{c[f>>2]=(c[f>>2]|0)+-1;break}default:{}}if(!(c
[f>>2]|0)){e=7;break}}if((e|0)==7){i=g;return}}function Yf(b){b=b|0;var e=0,f=0,g=0;g=i;i=i+16|0;e=g+4|0;f=g;c[f>
x3e;2]=b;b=(c[f>>2]|0)+360|0;c[b>>2]=(c[b>>2]|0)+(c[(c[f>>2]|0)+372>>2]|0);do
if((c[(c[f>>2]|0)+360>>2]|0)<(c[(c[f>>2]|0)+364>>2]|0)){a[(c[f>>2]|0)+368
>>0]=a[(c[(c[f>>2]|0)+356>>2]|0)+(c[(c[f>>2]|0)+360>>2]|0)>>0]|0;c[(
c[f>>2]|0)+372>>2]=a[10705+(d[(c[f>>2]|0)+368>>0]|0)>>0];if((c[(c[f>>
;2]|0)+372>>2]|0)<0){if(((c[(c[f>>2]|0)+360>>2]|0)+1|0)>(c[(c[f>>2]|0)+364>
;>2]|0))break;b=2-(_(c[(c[f>>2]|0)+372>>2]|0,d[(c[(c[f>>2]|0)+356>>2]|0)+((c[(c[f
x3e;>2]|0)+360>>2]|0)+1)>>0]|0)|0)|0;c[(c[f>>2]|0)+372>>2]=b}if(((c[(c[f>>
;2]|0)+360>>2]|0)+(c[(c[f>>2]|0)+372>>2]|0)|0)<=(c[(c[f>>2]|0)+364>>2]|0)){
a[e>>0]=0;b=a[e>>0]|0;i=g;return b|0}}while(0);c[(c[f>>2]|0)+12>>2]=131;a[e>>0
]=1;b=a[e>>0]|0;i=g;return b|0}function Zf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;d=g+12|0;h=g+8|0;f=g+
4|0;e=g;c[d>>2]=a;c[h>>2]=b;c[f>>2]=c[c[h>>2]>>2];if((c[f>>2]|0)>
;0?(c[f>>2]|0)<=(c[(c[d>>2]|0)+28>>2]|0):0){c[e>>2]=c[(c[(c[d>>2]|0)+24
x3e;>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)<<2)>>2];Ts((c[(c[d>
x3e;2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)<<2)|0,(c[(c[d>
x3e;2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)+1<<2)|0,(c[f>
x3e;2]|0)-1<<2|0)|0;c[(c[(c[d>>2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-1<
;<2)>>2]=c[e>>2];i=g;return}c[(c[d>>2]|0)+12>>2]=134;i=g;return}function _f(d,f){d=
d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;g=l+8|0;m=l+4|0;j=l+14|0;k=l+12|0;h=l;c[g>>2]=d;c[m>>2]=f
;b[j>>1]=c[c[m>>2]>>2];b[k>>1]=c[(c[m>>2]|0)+4>>2];if((e[j>>
;1]|0)>>>0<(e[(c[g>>2]|0)+72+8>>1]|0)>>>0?(e[k>>1]|0)>>
;>0<(e[(c[g>>2]|0)+36+8>>1]|0)>>>0:0){c[h>>2]=(Oa[c[(c[g>>2]|0)+
572>>2]&63](c[g>>2]|0,(c[(c[(c[g>>2]|0)+36+16>>2]|0)+(e[k>>1]<<
3)>>2]|0)-(c[(c[(c[g>>2]|0)+72+16>>2]|0)+(e[j>>1]<<3)>>2]|0)|0,(c[(c
[(c[g>>2]|0)+36+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)-(c[(c[(c[g>>2]|0)+72
+16>>2]|0)+(e[j>>1]<<3)+4>>2]|0)|0)|0)/2|0;_a[c[(c[g>>2]|0)+584>>2]
x26;15](c[g>>2]|0,(c[g>>2]|0)+72|0,b[j>>1]|0,c[h>>2]|0);_a[c[(c[g>>2]|0)+584
x3e;>2]&15](c[g>>2]|0,(c[g>>2]|0)+36|0,b[k>>1]|0,0-(c[h>>2]|0)|0);i=l;return}if
(!(a[(c[g>>2]|0)+561>>0]|0)){i=l;return}c[(c[g>>2]|0)+12>>2]=134;i=l;return}function $f(
b,e){b=b|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+16|0;m=l+12|0;k=l+8|0;f=l+4|0;j=l;c[h>>2]=b;c[m>
;>2]=e;c[k>>2]=c[(c[h>>2]|0)+416>>2];c[f>>2]=(c[k>>2]|0)+(c[(c[h>>
;2]|0)+408>>2]<<4);c[h>>2]=c[h>>2];c[m>>2]=c[m>>2];while(1){if((c[k
x3e;>2]|0)>>>0>=(c[f>>2]|0)>>>0){g=9;break}if((c[(c[k>>2]|0)+8>
x3e;2]&255|0)==(d[(c[h>>2]|0)+368>>0]|0|0)?d[(c[k>>2]|0)+12>>0]|0|0:0)break;c[k>
;>2]=(c[k>>2]|0)+16}if((g|0)==9){c[(c[h>>2]|0)+12>>2]=128;i=l;return}e=c[h>>2]|0;if
((c[(c[h>>2]|0)+428>>2]|0)>=(c[(c[h>>2]|0)+432>>2]|0)){c[e+12>>2]=130;i=l
;return}else{g=c[e+436>>2]|0;f=(c[h>>2]|0)+428|0;m=c[f>>2]|0;c[f>>2]=m+1;c[j>>
2]=g+(m<<4);c[c[j>>2]>>2]=c[(c[h>>2]|0)+352>>2];c[(c[j>>2]|0)+4>
;>2]=(c[(c[h>>2]|0)+360>>2]|0)+1;c[(c[j>>2]|0)+8>>2]=1;c[(c[j>>2]|0)+12
x3e;>2]=c[(c[k>>2]|0)+4>>2];ag(c[h>>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>
;2]|0)+4>>2]|0)|0;a[(c[h>>2]|0)+376>>0]=0;i=l;return}}function ag(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;l=i;i=i+32|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=b;c[h>>2]=d;c[j>>2
]=e;if((c[h>>2]|0)<1|(c[h>>2]|0)>3){c[(c[g>>2]|0)+12>>2]=132;a[f>>0]=
1;k=a[f>>0]|0;i=l;return k|0}c[k>>2]=(c[g>>2]|0)+444+((c[h>>2]|0)-1<<3);if(!(c
[c[k>>2]>>2]|0)){c[(c[g>>2]|0)+12>>2]=138;a[f>>0]=1;k=a[f>>0]|0;i=l;
return k|0}if((c[j>>2]|0)>>>0>(c[(c[k>>2]|0)+4>>2]|0)>>>0){c[(c
[g>>2]|0)+12>>2]=131;a[f>>0]=1;k=a[f>>0]|0;i=l;return k|0}else{c[(c[g>>2]|0)+356
>>2]=c[c[k>>2]>>2];c[(c[g>>2]|0)+364>>2]=c[(c[k>>2]|0)+4>>
2];c[(c[g>>2]|0)+360>>2]=c[j>>2];c[(c[g>>2]|0)+352>>2]=c[h>>2];a[f
x3e;>0]=0;k=a[f>>0]|0;i=l;return k|0}return 0}function bg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;h
=l+4|0;m=l;k=l+8|0;j=l+10|0;c[h>>2]=f;c[m>>2]=g;b[k>>1]=c[c[m>>2]>>2];if((e[k
x3e;>1]|0)>>>0>=(e[(c[h>>2]|0)+36+8>>1]|0)>>>0){if(!(a[(c[h>>
;2]|0)+561>>0]|0)){i=l;return}c[(c[h>>2]|0)+12>>2]=134;i=l;return}a[j>>0]=-1;if(b[(c[h
x3e;>2]|0)+284+14>>1]|0)a[j>>0]=d[j>>0]&-9;if(b[(c[h>>2]|0)+284+14+2>>
;1]|0)a[j>>0]=d[j>>0]&-17;m=(c[(c[h>>2]|0)+36+24>>2]|0)+(e[k>>1]|0)|0;a[m
>>0]=d[m>>0]&d[j>>0];i=l;return}function cg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;
l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;k=l+8|0;h=l+4|0;j=l;c[e>>2]=b;c[f>>2]=d;c[g>>2]=c[(c[f>
;>2]|0)+4>>2];do if((c[g>>2]|0)>>>0<((c[(c[e>>2]|0)+420>>2]|0)+
1|0)>>>0){c[h>>2]=(c[(c[e>>2]|0)+404>>2]|0)+(c[g>>2]<<4);if(!(((
c[(c[e>>2]|0)+420>>2]|0)+1|0)==(c[(c[e>>2]|0)+396>>2]|0)?(c[(c[h>>2]|0)+8>
;>2]|0)==(c[g>>2]|0):0)){c[h>>2]=c[(c[e>>2]|0)+404>>2];c[j>>2]=(c[h>
x3e;2]|0)+(c[(c[e>>2]|0)+396>>2]<<4);while(1){if((c[h>>2]|0)>>>0<(c[
j>>2]|0)>>>0)d=(c[(c[h>>2]|0)+8>>2]|0)!=(c[g>>2]|0);else d=0;b=c[h>
x3e;2]|0;if(!d)break;c[h>>2]=b+16}if((b|0)==(c[j>>2]|0))break}if(a[(c[h>>2]|0)+12>>0]|0){
if((c[(c[e>>2]|0)+428>>2]|0)>=(c[(c[e>>2]|0)+432>>2]|0)){c[(c[e>>2]|0)+12
>>2]=130;i=l;return}if((c[c[f>>2]>>2]|0)<=0){i=l;return}c[k>>2]=(c[(c[e>>
2]|0)+436>>2]|0)+(c[(c[e>>2]|0)+428>>2]<<4);c[c[k>>2]>>2]=c[(c[e>
;>2]|0)+352>>2];c[(c[k>>2]|0)+4>>2]=(c[(c[e>>2]|0)+360>>2]|0)+1;c[(c[k>
;>2]|0)+8>>2]=c[c[f>>2]>>2];c[(c[k>>2]|0)+12>>2]=c[(c[h>>2]|0)+
4>>2];k=(c[e>>2]|0)+428|0;c[k>>2]=(c[k>>2]|0)+1;ag(c[e>>2]|0,c[c[h>>
2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0)|0;a[(c[e>>2]|0)+376>>0]=0;i=l;return}}while(0);
c[(c[e>>2]|0)+12>>2]=134;i=l;return}function dg(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;g=k+20|0;l=k+16|0;e=k+12|0;j=k+8|0;h=k+4|0;f=k;c[g>>2]=b;c[l>>2]=d;c[e>>2]=c[c[l>>2]
x3e;>2];do if((c[e>>2]|0)>>>0<((c[(c[g>>2]|0)+420>>2]|0)+1|0)>>
x3e;0){c[h>>2]=(c[(c[g>>2]|0)+404>>2]|0)+(c[e>>2]<<4);if(!(((c[(c[g>>
;2]|0)+420>>2]|0)+1|0)==(c[(c[g>>2]|0)+396>>2]|0)?(c[(c[h>>2]|0)+8>>2]|0)==(c[
e>>2]|0):0)){c[h>>2]=c[(c[g>>2]|0)+404>>2];c[f>>2]=(c[h>>2]|0)+(c[(c
[g>>2]|0)+396>>2]<<4);while(1){if((c[h>>2]|0)>>>0<(c[f>>2]|
0)>>>0)b=(c[(c[h>>2]|0)+8>>2]|0)!=(c[e>>2]|0);else b=0;d=c[h>>2]|0;if(!b)
break;c[h>>2]=d+16}if((d|0)==(c[f>>2]|0))break}if(a[(c[h>>2]|0)+12>>0]|0){d=c[g>>
;2]|0;if((c[(c[g>>2]|0)+428>>2]|0)>=(c[(c[g>>2]|0)+432>>2]|0)){c[d+12>>2]=
130;i=k;return}else{c[j>>2]=(c[d+436>>2]|0)+(c[(c[g>>2]|0)+428>>2]<<4);c[c[j
x3e;>2]>>2]=c[(c[g>>2]|0)+352>>2];c[(c[j>>2]|0)+4>>2]=(c[(c[g>>
2]|0)+360>>2]|0)+1;c[(c[j>>2]|0)+8>>2]=1;c[(c[j>>2]|0)+12>>2]=c[(c[h>>
;2]|0)+4>>2];l=(c[g>>2]|0)+428|0;c[l>>2]=(c[l>>2]|0)+1;ag(c[g>>2]|0,c[c[h>
;>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0)|0;a[(c[g>>2]|0)+376>>0]=0;i=k;return}}}
while(0);c[(c[g>>2]|0)+12>>2]=134;i=k;return}function eg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=
i+32|0;j=k+16|0;l=k+12|0;g=k+8|0;h=k+4|0;f=k;c[j>>2]=b;c[l>>2]=e;c[h>>2]=c[(c[j>>2]|0)+404
>>2];c[f>>2]=(c[h>>2]|0)+(c[(c[j>>2]|0)+396>>2]<<4);c[g>>2
]=c[c[l>>2]>>2];while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>
x3e;0)break;if((c[(c[h>>2]|0)+8>>2]|0)==(c[g>>2]|0))break;c[h>>2]=(c[h>>2]|0)+
16}do if((c[h>>2]|0)==(c[f>>2]|0)){e=c[j>>2]|0;if((c[(c[j>>2]|0)+396>>2]|0)>
;>>0<(c[(c[j>>2]|0)+400>>2]|0)>>>0){l=e+396|0;c[l>>2]=(c[l>>
;2]|0)+1;break}c[e+12>>2]=140;i=k;return}while(0);e=c[j>>2]|0;if((c[g>>2]|0)>>>0>
;65535){c[e+12>>2]=140;i=k;return}c[c[h>>2]>>2]=c[e+352>>2];c[(c[h>>2]|0)+8>
;>2]=c[g>>2]&65535;c[(c[h>>2]|0)+4>>2]=(c[(c[j>>2]|0)+360>>2]|0)+1;a
[(c[h>>2]|0)+12>>0]=1;if((c[g>>2]|0)>>>0>(c[(c[j>>2]|0)+420>>
;2]|0)>>>0)c[(c[j>>2]|0)+420>>2]=c[g>>2]&65535;a:while(1){if((Yf(c[j>>
;2]|0)|0)&255|0){e=16;break}switch(d[(c[j>>2]|0)+368>>0]|0|0){case 44:case 137:{e=15;break a}case 45:{e
=16;break a}default:{}}}if((e|0)==15){c[(c[j>>2]|0)+12>>2]=137;i=k;return}else if((e|0)==16){i=k;return}}function
fg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+8|0;h=g+4|0;f=g;c[e>>2]=b;c[h>>2]=d;c[e>>
;2]=c[e>>2];c[h>>2]=c[h>>2];d=c[e>>2]|0;if((c[(c[e>>2]|0)+428>>2]|0)
x3c;=0){c[d+12>>2]=136;i=g;return}d=d+428|0;c[d>>2]=(c[d>>2]|0)+-1;c[f>>2]=(c[(c[e>
x3e;2]|0)+436>>2]|0)+(c[(c[e>>2]|0)+428>>2]<<4);d=(c[f>>2]|0)+8|0;c[d>>
;2]=(c[d>>2]|0)+-1;a[(c[e>>2]|0)+376>>0]=0;d=c[e>>2]|0;if((c[(c[f>>2]|0)+8>
;>2]|0)>0){h=d+428|0;c[h>>2]=(c[h>>2]|0)+1;c[(c[e>>2]|0)+360>>2]=c[(c[f>
x3e;2]|0)+12>>2];i=g;return}else{ag(d,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0
;i=g;return}}function gg(f,g){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;h=m+12|0;n=m+8|0;l=m+16|0;j=m+4|0;k=m;c[h>
;>2]=f;c[n>>2]=g;b[l>>1]=c[c[n>>2]>>2];g=c[h>>2]|0;if((e[l>>1]|
0)>>>0>=(e[(c[h>>2]|0)+36+8>>1]|0)>>>0){if(!(a[g+561>>0]|0)){i=
m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}if(d[g+368>>0]&1|0){c[j>>2]=Oa[c[(c[h
x3e;>2]|0)+572>>2]&63](c[h>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[l>>
;1]<<3)>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[l>>1]<<3)+4>>
;2]|0)|0;n=Oa[c[(c[h>>2]|0)+568>>2]&63](c[h>>2]|0,c[j>>2]|0,c[(c[h>>2]|0)+
244+20>>2]|0)|0;c[k>>2]=n-(c[j>>2]|0)}else c[k>>2]=0;_a[c[(c[h>>2]|0)+584>
;>2]&15](c[h>>2]|0,(c[h>>2]|0)+36|0,b[l>>1]|0,c[k>>2]|0);b[(c[h>>2]|
0)+284>>1]=b[l>>1]|0;b[(c[h>>2]|0)+284+2>>1]=b[l>>1]|0;i=m;return}function hg(
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;r=i;i=i+64|0;h=r+44|0;s=r+40|0;j=r+24|0;p=r+50|0;n=r+16|0;m=r+12
|0;o=r+8|0;l=r+4|0;q=r;k=r+48|0;c[h>>2]=f;c[s>>2]=g;c[h>>2]=c[h>>2];c[s>>2]=c[
s>>2];if(!(b[(c[h>>2]|0)+144+10>>1]|0)){i=r;return}if(d[(c[h>>2]|0)+368>>0]&
;1|0){a[p>>0]=8;c[j>>2]=c[(c[h>>2]|0)+144+12>>2];c[j+4>>2]=c[(c[h>>2
]|0)+144+16>>2];c[j+8>>2]=c[(c[h>>2]|0)+144+20>>2]}else{a[p>>0]=16;c[j>
x3e;2]=(c[(c[h>>2]|0)+144+12>>2]|0)+4;c[j+4>>2]=(c[(c[h>>2]|0)+144+16>>2]|0)+4
;c[j+8>>2]=(c[(c[h>>2]|0)+144+20>>2]|0)+4}c[j+12>>2]=e[(c[h>>2]|0)+144+8>
x3e;1];b[k>>1]=0;c[q>>2]=0;do{c[m>>2]=(e[(c[(c[h>>2]|0)+144+28>>2]|0)+(b[k>
;>1]<<1)>>1]|0)-(e[(c[h>>2]|0)+144+32>>1]|0);c[n>>2]=c[q>>2];if
((c[m>>2]|0)>>>0>=(e[(c[h>>2]|0)+144+8>>1]|0)>>>0)c[m>>
;2]=(e[(c[h>>2]|0)+144+8>>1]|0)-1;while(1){if((c[q>>2]|0)>>>0<=(c[m>>
;2]|0)>>>0)g=(d[(c[(c[h>>2]|0)+144+24>>2]|0)+(c[q>>2]|0)>>0]&d[p>
;>0]|0)==0;else g=0;f=c[q>>2]|0;if(!g)break;c[q>>2]=f+1}do if(f>>>0<=(c[m>>
;2]|0)>>>0){c[o>>2]=c[q>>2];c[l>>2]=c[q>>2];c[q>>2]=(c[q>
x3e;2]|0)+1;while(1){if((c[q>>2]|0)>>>0>(c[m>>2]|0)>>>0)break;if(d[(c[(c[
h>>2]|0)+144+24>>2]|0)+(c[q>>2]|0)>>0]&d[p>>0]|0){ig(j,(c[l>>2]|
0)+1|0,(c[q>>2]|0)-1|0,c[l>>2]|0,c[q>>2]|0);c[l>>2]=c[q>>2]}c[q>>2]=(
c[q>>2]|0)+1}if((c[l>>2]|0)==(c[o>>2]|0)){jg(j,c[n>>2]|0,c[m>>2]|0,c[l>
x3e;2]|0);break}ig(j,(c[l>>2]|0)+1&65535,c[m>>2]|0,c[l>>2]|0,c[o>>2]|0);if((c[o>
;>2]|0)>>>0>0)ig(j,c[n>>2]|0,(c[o>>2]|0)-1|0,c[l>>2]|0,c[o>>2]|
0)}while(0);b[k>>1]=(b[k>>1]|0)+1<<16>>16}while((b[k>>1]|0)<(b[(c[h>
x3e;2]|0)+144+10>>1]|0));i=r;return}function ig(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,x=0,y=0,z=0,A=0;A=i;i=i+80|0;h=A+64|0;j=A+60|0;k=A+56|0;l=A+52|0;m=A+48|0;p=A+44|0;s=A+40|0;t
=A+36|0;q=A+32|0;r=A+28|0;n=A+24|0;o=A+20|0;w=A+16|0;x=A+12|0;y=A+8|0;u=A+4|0;v=A+68|0;z=A;c[h>>2]=b;c[j>>2]=
d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;if((c[j>>2]|0)>>>0>(c[k>>2
]|0)>>>0){i=A;return}if((c[l>>2]|0)>>>0>=(c[(c[h>>2]|0)+12>>2]|
0)>>>0){i=A;return}if((c[m>>2]|0)>>>0>=(c[(c[h>>2]|0)+12>>2]|0)
x3e;>>0){i=A;return}c[s>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+(c[l>>2]<<3)
x3e;>2];c[t>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+(c[m>>2]<<3)>>2];if((
c[s>>2]|0)>(c[t>>2]|0)){c[w>>2]=c[s>>2];c[s>>2]=c[t>>2];c[t>
;>2]=c[w>>2];c[x>>2]=c[l>>2];c[l>>2]=c[m>>2];c[m>>2]=c[x>
x3e;2]}c[q>>2]=c[(c[c[h>>2]>>2]|0)+(c[l>>2]<<3)>>2];c[r>>2
]=c[(c[c[h>>2]>>2]|0)+(c[m>>2]<<3)>>2];c[n>>2]=(c[(c[(c[h>>
;2]|0)+4>>2]|0)+(c[l>>2]<<3)>>2]|0)-(c[q>>2]|0);c[o>>2]=(c[(c[(c[h
x3e;>2]|0)+4>>2]|0)+(c[m>>2]<<3)>>2]|0)-(c[r>>2]|0);if((c[s>>2]|
0)==(c[t>>2]|0)){c[p>>2]=c[j>>2];while(1){if((c[p>>2]|0)>>>0>(c[k>
;>2]|0)>>>0)break;c[y>>2]=c[(c[c[h>>2]>>2]|0)+(c[p>>2]<<3)
x3e;>2];if((c[y>>2]|0)<=(c[q>>2]|0))c[y>>2]=(c[y>>2]|0)+(c[n>>2]|0);
else c[y>>2]=(c[y>>2]|0)+(c[o>>2]|0);c[(c[(c[h>>2]|0)+4>>2]|0)+(c[p>>
;2]<<3)>>2]=c[y>>2];c[p>>2]=(c[p>>2]|0)+1}i=A;return}c[u>>2]=0;a[v
x3e;>0]=0;c[p>>2]=c[j>>2];while(1){if((c[p>>2]|0)>>>0>(c[k>>2]|
0)>>>0)break;c[z>>2]=c[(c[c[h>>2]>>2]|0)+(c[p>>2]<<3)>>
;2];do if((c[z>>2]|0)<=(c[q>>2]|0))c[z>>2]=(c[z>>2]|0)+(c[n>>2]|0);else{if
((c[z>>2]|0)>=(c[r>>2]|0)){c[z>>2]=(c[z>>2]|0)+(c[o>>2]|0);break}if(!(a[v
>>0]|0)){a[v>>0]=1;c[u>>2]=xb((c[r>>2]|0)+(c[o>>2]|0)-((c[q>>2]|0)+(
c[n>>2]|0))|0,65536,(c[t>>2]|0)-(c[s>>2]|0)|0)|0}y=(c[q>>2]|0)+(c[n>>2]|0)|0;c
[z>>2]=y+(Mb((c[(c[(c[h>>2]|0)+8>>2]|0)+(c[p>>2]<<3)>>2]|0)-(c[s>
;>2]|0)|0,c[u>>2]|0)|0)}while(0);c[(c[(c[h>>2]|0)+4>>2]|0)+(c[p>>2]<<3)
x3e;>2]=c[z>>2];c[p>>2]=(c[p>>2]|0)+1}i=A;return}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;m=i;i=i+32|0;f=m+20|0;g=m+16|0;h=m+12|0;j=m+8|0;l=m+4|0;k=m;c[f>>2]=a;c[g>>
2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=(c[(c[(c[f>>2]|0)+4>>2]|0)+(c[j>>2]
x3c;<3)>>2]|0)-(c[(c[c[f>>2]>>2]|0)+(c[j>>2]<<3)>>2]|0);if(!(c[
k>>2]|0)){i=m;return}c[l>>2]=c[g>>2];while(1){if((c[l>>2]|0)>>>0>=(c
[j>>2]|0)>>>0)break;a=(c[(c[f>>2]|0)+4>>2]|0)+(c[l>>2]<<3)|0;c[
a>>2]=(c[a>>2]|0)+(c[k>>2]|0);c[l>>2]=(c[l>>2]|0)+1}c[l>>2]=(c[j>
;>2]|0)+1;while(1){if((c[l>>2]|0)>>>0>(c[h>>2]|0)>>>0)break;a=(c[(c[
f>>2]|0)+4>>2]|0)+(c[l>>2]<<3)|0;c[a>>2]=(c[a>>2]|0)+(c[k>>
;2]|0);c[l>>2]=(c[l>>2]|0)+1}i=m;return}function kg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+64|
0;k=l+48|0;m=l+44|0;g=l+4|0;h=l;j=l+52|0;c[k>>2]=d;c[m>>2]=f;c[k>>2]=c[k>>2];c[m>
x3e;2]=c[m>>2];f=c[k>>2]|0;if((c[(c[k>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0)+284
+20>>2]|0)){c[f+12>>2]=134;i=l;return}if((lg(f,g,h,l+8|0,l+54|0)|0)<<24>>24){i=l;return}
while(1){d=c[k>>2]|0;if((c[(c[k>>2]|0)+284+20>>2]|0)<=0){f=10;break}f=d+28|0;c[f>>2
]=(c[f>>2]|0)+-1;b[j>>1]=c[(c[(c[k>>2]|0)+24>>2]|0)+(c[(c[k>>2]|0)+28>>
;2]<<2)>>2];f=c[k>>2]|0;if((e[j>>1]|0)>>>0>=(e[(c[k>>2]|0)+
108+8>>1]|0)>>>0){if(a[f+561>>0]|0){f=7;break}}else mg(f,b[j>>1]|0,c[g>>2
]|0,c[h>>2]|0,1);m=(c[k>>2]|0)+284+20|0;c[m>>2]=(c[m>>2]|0)+-1}if((f|0)==7){c[(c[k>
x3e;2]|0)+12>>2]=134;i=l;return}else if((f|0)==10){c[d+284+20>>2]=1;c[(c[k>>2]|0)+32>>2]=
c[(c[k>>2]|0)+28>>2];i=l;return}}function lg(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;u=i;i=i+64|0;l=u+62|0;m=u+56|0;n=u+52|0;o=u+48|0;p=u+44|0;q=u+40|0;t=u+4|0;s=u+60|0;r=u;c[m>>2]=
f;c[n>>2]=g;c[o>>2]=h;c[p>>2]=j;c[q>>2]=k;f=c[m>>2]|0;if(d[(c[m>>2]|
0)+368>>0]&1|0){g=t;f=f+36|0;k=g+36|0;do{c[g>>2]=c[f>>2];g=g+4|0;f=f+4|0}while((g|0)<(k|
0));b[s>>1]=b[(c[m>>2]|0)+284+2>>1]|0}else{g=t;f=f+72|0;k=g+36|0;do{c[g>>2]=c[f>>
;2];g=g+4|0;f=f+4|0}while((g|0)<(k|0));b[s>>1]=b[(c[m>>2]|0)+284+4>>1]|0}if((e[s>>1
]|0)>>>0<(e[t+8>>1]|0)>>>0){g=c[p>>2]|0;f=t;k=g+36|0;do{c[g>>2]=
c[f>>2];g=g+4|0;f=f+4|0}while((g|0)<(k|0));b[c[q>>2]>>1]=b[s>>1]|0;c[r>>2
]=Oa[c[(c[m>>2]|0)+572>>2]&63](c[m>>2]|0,(c[(c[t+16>>2]|0)+(e[s>>1]<
x3c;3)>>2]|0)-(c[(c[t+12>>2]|0)+(e[s>>1]<<3)>>2]|0)|0,(c[(c[t+16>>2]|
0)+(e[s>>1]<<3)+4>>2]|0)-(c[(c[t+12>>2]|0)+(e[s>>1]<<3)+4>>
;2]|0)|0)|0;t=xb(c[r>>2]|0,b[(c[m>>2]|0)+284+14>>1]<<16,c[(c[m>>2]|0)+564>
;>2]|0)|0;c[c[n>>2]>>2]=t;t=xb(c[r>>2]|0,b[(c[m>>2]|0)+284+14+2>>1]<
x3c;16,c[(c[m>>2]|0)+564>>2]|0)|0;c[c[o>>2]>>2]=t;a[l>>0]=0;t=a[l>>0
]|0;i=u;return t|0}if(a[(c[m>>2]|0)+561>>0]|0)c[(c[m>>2]|0)+12>>2]=134;b[c[q>>
2]>>1]=0;a[l>>0]=1;t=a[l>>0]|0;i=u;return t|0}function mg(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;q=i;i=i+16|0;l=q+8|0;m=q+12|0;n=q+4|0;o=q;p=q+14|0;c[l>>2]=f;b[m>>1]=g;c[n>
;>2]=h;c[o>>2]=j;a[p>>0]=k;if(b[(c[l>>2]|0)+284+14>>1]|0?(k=(c[(c[l>>2]|0
)+108+16>>2]|0)+(e[m>>1]<<3)|0,c[k>>2]=(c[k>>2]|0)+(c[n>>2]|0),a[p
x3e;>0]|0):0){k=(c[(c[l>>2]|0)+108+24>>2]|0)+(e[m>>1]|0)|0;a[k>>0]=d[k>>0
]|8}if(!(b[(c[l>>2]|0)+284+14+2>>1]|0)){i=q;return}k=(c[(c[l>>2]|0)+108+16>>2]|0)+(e[m
x3e;>1]<<3)+4|0;c[k>>2]=(c[k>>2]|0)+(c[o>>2]|0);if(!(a[p>>0]|0)){i=q;return
}k=(c[(c[l>>2]|0)+108+24>>2]|0)+(e[m>>1]|0)|0;a[k>>0]=d[k>>0]|16;i=q;return}function
ng(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;q=i;i=i+64|0;g=q+48|0;r=q+44|0;p=q+8|0;o=q+60|0;j=q+4|0;k=q
;h=q+58|0;l=q+56|0;n=q+54|0;m=q+52|0;c[g>>2]=d;c[r>>2]=f;b[h>>1]=c[c[r>>2]>>2];
f=c[g>>2]|0;if((b[h>>1]|0)>>>0>=(b[(c[g>>2]|0)+144+10>>1]|0)>
x3e;>0){if(!(a[f+561>>0]|0)){i=q;return}c[(c[g>>2]|0)+12>>2]=134;i=q;return}if((lg(f,j,k,p,o)|
0)<<24>>24){i=q;return}if(!(b[h>>1]|0))b[l>>1]=0;else b[l>>1]=(e[(c[(c[g>
x3e;2]|0)+144+28>>2]|0)+((b[h>>1]|0)-1<<1)>>1]|0)+1-(e[(c[g>>2]|0)+144+32>
;>1]|0);b[n>>1]=(e[(c[(c[g>>2]|0)+144+28>>2]|0)+(b[h>>1]<<1)>>1
]|0)-(e[(c[g>>2]|0)+144+32>>1]|0);do if((e[n>>1]|0)>>>0>=(e[(c[g>>2]|
0)+108+8>>1]|0)>>>0)if((e[(c[g>>2]|0)+108+8>>1]|0)>0){b[n>>1]=(e[(c[
g>>2]|0)+108+8>>1]|0)-1;break}else{b[n>>1]=0;break}while(0);b[m>>1]=b[l>>1]|0;
while(1){if((e[m>>1]|0)>(e[n>>1]|0))break;if(!((c[p+16>>2]|0)==(c[(c[g>>2]|0)+108+16
>>2]|0)?(e[o>>1]|0)==(e[m>>1]|0):0))mg(c[g>>2]|0,b[m>>1]|0,c[j>>2]|0
,c[k>>2]|0,1);b[m>>1]=(b[m>>1]|0)+1<<16>>16}i=q;return}function og(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;p=i;i=i+64|0;g=p+48|0;q=p+44|0;n=p+8|0;m=p+56|0;h=p+4|0;j=p;l=p+54|0;k=p+52|0;
c[g>>2]=d;c[q>>2]=f;f=c[g>>2]|0;if((c[c[q>>2]>>2]|0)>>>0>=
2){if(!(a[f+561>>0]|0)){i=p;return}c[(c[g>>2]|0)+12>>2]=134;i=p;return}if((lg(f,h,j,n,m)|0)<
x3c;24>>24){i=p;return}if((e[(c[g>>2]|0)+284+64>>1]|0)==0?(e[(c[g>>2]|0)+108+8>>
;1]|0)>0:0)b[l>>1]=(e[(c[g>>2]|0)+108+8>>1]|0)-1;else o=8;do if((o|0)==8){if((e[(c[g>>
;2]|0)+284+64>>1]|0)==1?(b[(c[g>>2]|0)+108+10>>1]|0)>0:0){b[l>>1]=b[(c[(c[g>
x3e;2]|0)+108+28>>2]|0)+((b[(c[g>>2]|0)+108+10>>1]|0)-1<<1)>>1]|0;if((e[l>
;>1]|0)>>>0<(e[(c[g>>2]|0)+108+8>>1]|0)>>>0)break;if(!(a[(c[g>
x3e;2]|0)+561>>0]|0)){i=p;return}c[(c[g>>2]|0)+12>>2]=134;i=p;return}b[l>>1]=0}while(0);
b[k>>1]=0;while(1){if((e[k>>1]|0)>(e[l>>1]|0))break;if(!((c[n+16>>2]|0)==(c[(c[g>
;>2]|0)+108+16>>2]|0)?(e[m>>1]|0)==(e[k>>1]|0):0))mg(c[g>>2]|0,b[k>>1]|0,
c[h>>2]|0,c[j>>2]|0,0);b[k>>1]=(b[k>>1]|0)+1<<16>>16}i=p;return}function
pg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;l=m+12|0;g=m+8|0;h=m+4|0;j=m;k=m+16|0;c[l>>2]=d;c[g>
;>2]=f;if((c[(c[l>>2]|0)+16>>2]|0)<((c[(c[l>>2]|0)+284+20>>2]|0)+1|0)){c[(c[l
x3e;>2]|0)+12>>2]=134;i=m;return}c[h>>2]=qg(c[c[g>>2]>>2]|0,b[(c[l>>2]|0)+
284+14>>1]|0)|0;c[j>>2]=qg(c[c[g>>2]>>2]|0,b[(c[l>>2]|0)+284+14+2>>1
]|0)|0;while(1){f=c[l>>2]|0;if((c[(c[l>>2]|0)+284+20>>2]|0)<=0){g=10;break}g=f+28|0;c[g>
x3e;2]=(c[g>>2]|0)+-1;b[k>>1]=c[(c[(c[l>>2]|0)+24>>2]|0)+(c[(c[l>>2]|0)+28>
;>2]<<2)>>2];g=c[l>>2]|0;if((e[k>>1]|0)>>>0>=(e[(c[l>>
;2]|0)+108+8>>1]|0)>>>0){if(a[g+561>>0]|0){g=7;break}}else mg(g,b[k>>1]|0,c[h>
x3e;2]|0,c[j>>2]|0,1);d=(c[l>>2]|0)+284+20|0;c[d>>2]=(c[d>>2]|0)+-1}if((g|0)==7){c[(c[l
x3e;>2]|0)+12>>2]=134;i=m;return}else if((g|0)==10){c[f+284+20>>2]=1;c[(c[l>>2]|0)+32>
x3e;2]=c[(c[l>>2]|0)+28>>2];i=m;return}}function qg(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
;m=i;i=i+32|0;d=m+28|0;e=m+24|0;l=m+20|0;f=m+16|0;g=m+12|0;k=m+8|0;j=m+4|0;h=m;c[d>>2]=a;c[e>>2]=b;c[l>
x3e;2]=c[d>>2]^c[e>>2];if((c[d>>2]|0)<0)c[d>>2]=0-(c[d>>2]|0);if((c[e>
;>2]|0)<0)c[e>>2]=0-(c[e>>2]|0);c[f>>2]=c[d>>2]>>16&65535;c[g
x3e;>2]=c[d>>2]&65535;c[j>>2]=_(c[g>>2]|0,c[e>>2]|0)|0;c[k>>2]=_(c[f
>>2]|0,c[e>>2]|0)|0;c[h>>2]=(c[k>>2]|0)>>>16;c[k>>2]=(c[k>
x3e;2]<<16)+8192;c[j>>2]=(c[j>>2]|0)+(c[k>>2]|0);if((c[j>>2]|0)>>>
;0>=(c[k>>2]|0)>>>0){b=c[j>>2]|0;b=b>>>14;j=c[h>>2]|0;j=j<
x3c;18;j=b|j;c[k>>2]=j;j=c[l>>2]|0;j=(j|0)>=0;k=c[k>>2]|0;l=0-k|0;l=j?k:l;i=m;return l|0}c[h
x3e;>2]=(c[h>>2]|0)+1;b=c[j>>2]|0;b=b>>>14;j=c[h>>2]|0;j=j<<18;j=b|j
;c[k>>2]=j;j=c[l>>2]|0;j=(j|0)>=0;k=c[k>>2]|0;l=0-k|0;l=j?k:l;i=m;return l|0}function rg(b,d){
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,q=0,r=0,s=0;s=i;i=i+48|0;r=s+40|0;g=s+36|0;m=s+32|0;k=s+28|0;o=s+24|0;h=
s+20|0;q=s+16|0;p=s+12|0;n=s+8|0;j=s+4|0;l=s;c[r>>2]=b;c[g>>2]=d;c[r>>2]=c[r>>2];c[g>
;>2]=c[g>>2];d=c[r>>2]|0;if((c[(c[r>>2]|0)+16>>2]|0)<(c[(c[r>>2]|0)+
284+20>>2]|0)){c[d+12>>2]=134;i=s;return}if((e[d+284+60>>1]|0)!=0?(e[(c[r>>2]|0)+284+62
x3e;>1]|0)!=0:0)d=(e[(c[r>>2]|0)+284+64>>1]|0)==0;else d=1;c[q>>2]=d&1;if((e[(c[r>
x3e;2]|0)+284+2>>1]|0)>>>0>=(e[(c[r>>2]|0)+36+8>>1]|0)>>>0){if(!(
a[(c[r>>2]|0)+561>>0]|0)){i=s;return}c[(c[r>>2]|0)+12>>2]=134;i=s;return}d=e[(c[r>
x3e;2]|0)+284+2>>1]|0;b=(c[r>>2]|0)+36|0;if(c[q>>2]|0)c[o>>2]=(c[b+12>>2]|0)+(
d<<3);else c[o>>2]=(c[b+20>>2]|0)+(d<<3);c[h>>2]=(c[(c[r>>2]|0)+36+16
>>2]|0)+(e[(c[r>>2]|0)+284+2>>1]<<3);if((e[(c[r>>2]|0)+284+2>>1]|0)
x3e;>>0<(e[(c[r>>2]|0)+36+8>>1]|0)>>>0?(e[(c[r>>2]|0)+284+4>>
;1]|0)>>>0<(e[(c[r>>2]|0)+72+8>>1]|0)>>>0:0){d=c[(c[r>>2]|0)+576
>>2]|0;b=c[r>>2]|0;f=e[(c[r>>2]|0)+284+4>>1]|0;g=(c[r>>2]|0)+72|0;if(c[q>
x3e;2]|0)c[m>>2]=Oa[d&63](b,(c[(c[g+12>>2]|0)+(f<<3)>>2]|0)-(c[c[o>>2]>
;>2]|0)|0,(c[(c[(c[r>>2]|0)+72+12>>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)+4
x3e;>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;else c[m>>2]=Oa[d&63](b,(c[(c[g+20>>2]|
0)+(f<<3)>>2]|0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+72+20>>2]|0)+(
e[(c[r>>2]|0)+284+4>>1]<<3)+4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;c[
k>>2]=Oa[c[(c[r>>2]|0)+572>>2]&63](c[r>>2]|0,(c[(c[(c[r>>2]|0)+72+16>
;>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)>>2]|0)-(c[c[h>>2]>>2]|0)|0
,(c[(c[(c[r>>2]|0)+72+16>>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)+4>>2]|0
)-(c[(c[h>>2]|0)+4>>2]|0)|0)|0}else{c[m>>2]=0;c[k>>2]=0}while(1){b=c[r>>2]|0;if
((c[(c[r>>2]|0)+284+20>>2]|0)<=0){d=34;break}f=b+28|0;g=(c[f>>2]|0)+-1|0;c[f>>2]=g;
c[p>>2]=c[(c[(c[r>>2]|0)+24>>2]|0)+(g<<2)>>2];if((c[p>>2]|0)>
x3e;>0>=(e[(c[r>>2]|0)+108+8>>1]|0)>>>0){if(a[(c[r>>2]|0)+561>>
0]|0){d=22;break}}else{d=c[(c[r>>2]|0)+576>>2]|0;b=c[r>>2]|0;f=c[p>>2]|0;g=(c[r>>
;2]|0)+108|0;if(c[q>>2]|0)c[n>>2]=Oa[d&63](b,(c[(c[g+12>>2]|0)+(f<<3)>>2]|
0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+12>>2]|0)+(c[p>>2]<<3)+
4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;else c[n>>2]=Oa[d&63](b,(c[(c[g+20>>
;2]|0)+(f<<3)>>2]|0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+20>>2
]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;c[j>>2]=Oa[c
[(c[r>>2]|0)+572>>2]&63](c[r>>2]|0,(c[(c[(c[r>>2]|0)+108+16>>2]|0)+(c[p
x3e;>2]<<3)>>2]|0)-(c[c[h>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+16>>
;2]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0)|0)|0;if(c[n>>2]|
0){if(c[m>>2]|0)d=xb(c[n>>2]|0,c[k>>2]|0,c[m>>2]|0)|0;else d=c[j>>2]|0;c[l>
;>2]=d}else c[l>>2]=0;_a[c[(c[r>>2]|0)+584>>2]&15](c[r>>2]|0,(c[r>>2
]|0)+108|0,c[p>>2]&65535,(c[l>>2]|0)-(c[j>>2]|0)|0)}g=(c[r>>2]|0)+284+20|0;c[g>
;>2]=(c[g>>2]|0)+-1}if((d|0)==22){c[(c[r>>2]|0)+12>>2]=134;i=s;return}else if((d|0)==34){c[b+
284+20>>2]=1;c[(c[r>>2]|0)+32>>2]=c[(c[r>>2]|0)+28>>2];i=s;return}}function sg
(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+8|0;j=m+4|0;l=m+12|0;k=m;c[h>>2]=f;c[j>>2]=g;b[l
x3e;>1]=c[c[j>>2]>>2];if((e[l>>1]|0)>>>0<(e[(c[h>>2]|0)+72+8>
;>1]|0)>>>0?(e[(c[h>>2]|0)+284>>1]|0)>>>0<(e[(c[h>>2]|0)+36
+8>>1]|0)>>>0:0){if(!(e[(c[h>>2]|0)+284+62>>1]|0)){f=(c[(c[h>>2]|0)+72+12
>>2]|0)+(e[l>>1]<<3)|0;g=(c[(c[h>>2]|0)+36+12>>2]|0)+(e[(c[h>>2]|0)+
284>>1]<<3)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];_a[c[(c[h>>
;2]|0)+588>>2]&15](c[h>>2]|0,(c[h>>2]|0)+72|0,b[l>>1]|0,c[(c[j>>2]|0)+4
x3e;>2]|0);f=(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)|0;g=(c[(c[h>>2]|0)+
72+12>>2]|0)+(e[l>>1]<<3)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>
;2]}c[k>>2]=Oa[c[(c[h>>2]|0)+572>>2]&63](c[h>>2]|0,(c[(c[(c[h>>2]|0)+72+16
>>2]|0)+(e[l>>1]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[(c[h
x3e;>2]|0)+284>>1]<<3)>>2]|0)|0,(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>
x3e;1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[(c[h>>2]|0)+284>>
;1]<<3)+4>>2]|0)|0)|0;_a[c[(c[h>>2]|0)+584>>2]&15](c[h>>2]|0,(c[h>
x3e;2]|0)+72|0,b[l>>1]|0,(c[(c[j>>2]|0)+4>>2]|0)-(c[k>>2]|0)|0);b[(c[h>>2]|0)+
284+2>>1]=b[(c[h>>2]|0)+284>>1]|0;b[(c[h>>2]|0)+284+4>>1]=b[l>>1]|0;
if(!(d[(c[h>>2]|0)+368>>0]&1)){i=m;return}b[(c[h>>2]|0)+284>>1]=b[l>>1]|0
;i=m;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return
}function tg(d,f){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+8|0;l=k+4|0;h=k+12|0;g=k;c[j>>2]=d;c[l>>
;2]=f;c[j>>2]=c[j>>2];c[l>>2]=c[l>>2];if((c[(c[j>>2]|0)+16>>2]|0)>
;=(c[(c[j>>2]|0)+284+20>>2]|0)?(e[(c[j>>2]|0)+284>>1]|0)>>>0<(e[(c[j
>>2]|0)+36+8>>1]|0)>>>0:0){while(1){d=c[j>>2]|0;if((c[(c[j>>2]|0)+284+20
x3e;>2]|0)<=0){f=11;break}f=d+28|0;c[f>>2]=(c[f>>2]|0)+-1;b[h>>1]=c[(c[(c[j>>2
]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<2)>>2];f=c[j>>2]|0;if((e[h>
;>1]|0)>>>0>=(e[(c[j>>2]|0)+72+8>>1]|0)>>>0){if(a[f+561>>0
]|0){f=8;break}}else{c[g>>2]=Oa[c[f+572>>2]&63](c[j>>2]|0,(c[(c[(c[j>>2]|0)+72+16
x3e;>2]|0)+(e[h>>1]<<3)>>2]|0)-(c[(c[(c[j>>2]|0)+36+16>>2]|0)+(e[(c[j>
;>2]|0)+284>>1]<<3)>>2]|0)|0,(c[(c[(c[j>>2]|0)+72+16>>2]|0)+(e[h>>
;1]<<3)+4>>2]|0)-(c[(c[(c[j>>2]|0)+36+16>>2]|0)+(e[(c[j>>2]|0)+284>>
1]<<3)+4>>2]|0)|0)|0;_a[c[(c[j>>2]|0)+584>>2]&15](c[j>>2]|0,(c[j>>
;2]|0)+72|0,b[h>>1]|0,0-(c[g>>2]|0)|0)}l=(c[j>>2]|0)+284+20|0;c[l>>2]=(c[l>>2]|
0)+-1}if((f|0)==8){c[(c[j>>2]|0)+12>>2]=134;i=k;return}else if((f|0)==11){c[d+284+20>>2]=1;c[(c[j
x3e;>2]|0)+32>>2]=c[(c[j>>2]|0)+28>>2];i=k;return}}if(!(a[(c[j>>2]|0)+561>>
;0]|0)){i=k;return}c[(c[j>>2]|0)+12>>2]=134;i=k;return}function ug(f,g){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;h=n+16|0;o=n+12|0;j=n+8|0;m=n+20|0;k=n+4|0;l=n;c[h>>2]=f;c[o>>2]=g;c[j>>2]=c[(
c[o>>2]|0)+4>>2];b[m>>1]=c[c[o>>2]>>2];if((e[m>>1]|0)>>>
;0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0?(c[j>>2]|0)>>>0<(c[(c[h
x3e;>2]|0)+380>>2]|0)>>>0:0){c[k>>2]=Ya[c[(c[h>>2]|0)+592>>2]&127
](c[h>>2]|0,c[j>>2]|0)|0;if(!(e[(c[h>>2]|0)+284+60>>1]|0)){o=qg(c[k>>2]|0,b[(c
[h>>2]|0)+284+14>>1]|0)|0;c[(c[(c[h>>2]|0)+36+12>>2]|0)+(e[m>>1]<<3)
x3e;>2]=o;o=qg(c[k>>2]|0,b[(c[h>>2]|0)+284+14+2>>1]|0)|0;c[(c[(c[h>>2]|0)+36+12>
;>2]|0)+(e[m>>1]<<3)+4>>2]=o;o=(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>
;1]<<3)|0;f=(c[(c[h>>2]|0)+36+12>>2]|0)+(e[m>>1]<<3)|0;c[o>>2]=c[f
x3e;>2];c[o+4>>2]=c[f+4>>2]}c[l>>2]=Oa[c[(c[h>>2]|0)+572>>2]&63](c[h
>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>>2]|0,c[(c[(c[h>
;>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)|0;if(d[(c[h>>2]|0)+368>
x3e;0]&1|0){o=(c[k>>2]|0)-(c[l>>2]|0)|0;if(((((c[k>>2]|0)-(c[l>>2]|0)|0)<0?0-o
|0:o)|0)>(c[(c[h>>2]|0)+284+36>>2]|0))c[k>>2]=c[l>>2];c[k>>2]=Oa[c[(c[h
x3e;>2]|0)+568>>2]&63](c[h>>2]|0,c[k>>2]|0,c[(c[h>>2]|0)+244+20>>2]|
0)|0}_a[c[(c[h>>2]|0)+584>>2]&15](c[h>>2]|0,(c[h>>2]|0)+36|0,b[m>>1]|0,(c
[k>>2]|0)-(c[l>>2]|0)|0);b[(c[h>>2]|0)+284>>1]=b[m>>1]|0;b[(c[h>>2]|
0)+284+2>>1]=b[m>>1]|0;i=n;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=n;return}c[(c[h>
x3e;2]|0)+12>>2]=134;i=n;return}function vg(a,f){a=a|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+4|0;h=l;k=l+10|0
;j=l+8|0;c[g>>2]=a;c[h>>2]=f;b[k>>1]=d[(c[(c[g>>2]|0)+356>>2]|0)+((c[(c[g>
;>2]|0)+360>>2]|0)+1)>>0]|0;if((e[k>>1]|0)>>>0>=((c[(c[g>>2]|0)+
20>>2]|0)+1-(c[(c[g>>2]|0)+16>>2]|0)|0)>>>0){c[(c[g>>2]|0)+12>>
2]=130;i=l;return}b[j>>1]=1;while(1){if((e[j>>1]|0|0)>(e[k>>1]|0|0))break;c[(c[h>>2
]|0)+((e[j>>1]|0)-1<<2)>>2]=d[(c[(c[g>>2]|0)+356>>2]|0)+((c[(c[g>>2]|
0)+360>>2]|0)+(e[j>>1]|0)+1)>>0];b[j>>1]=(b[j>>1]|0)+1<<16>>
;16}a=(c[g>>2]|0)+32|0;c[a>>2]=(c[a>>2]|0)+(e[k>>1]|0);i=l;return}function wg(f,g){f=f|0
;g=g|0;var h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+4|0;j=m;l=m+10|0;k=m+8|0;c[h>>2]=f;c[j>>2]=g;b[l>>
1]=d[(c[(c[h>>2]|0)+356>>2]|0)+((c[(c[h>>2]|0)+360>>2]|0)+1)>>0]|0;g=c[h>
x3e;2]|0;if((e[l>>1]|0)>>>0>=((c[(c[h>>2]|0)+20>>2]|0)+1-(c[(c[h>>2]|
0)+16>>2]|0)|0)>>>0){c[g+12>>2]=130;i=m;return}f=g+360|0;c[f>>2]=(c[f>>2]|
0)+2;b[k>>1]=0;while(1){g=c[h>>2]|0;if((e[k>>1]|0|0)>=(e[l>>1]|0|0))break;f=(xg(g)|
0)<<16>>16;c[(c[j>>2]|0)+((e[k>>1]|0)<<2)>>2]=f;b[k>>1]=(b
[k>>1]|0)+1<<16>>16}a[g+376>>0]=0;k=(c[h>>2]|0)+32|0;c[k>>2]=(c[k>
;>2]|0)+(e[l>>1]|0);i=m;return}function xg(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;a=(c[b>
x3e;2]|0)+360|0;c[a>>2]=(c[a>>2]|0)+2;i=e;return ((d[(c[(c[b>>2]|0)+356>>2]|0)+((c[(c[b
x3e;>2]|0)+360>>2]|0)-2)>>0]|0)<<8)+(d[(c[(c[b>>2]|0)+356>>2]|0)+((c[(c[b
>>2]|0)+360>>2]|0)-1)>>0]|0)&65535|0}function yg(b,f){b=b|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i
;i=i+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=b;c[h>>2]=f;c[j>>2]=c[c[h>>2]>>
2];f=c[g>>2]|0;do if((c[j>>2]|0)>>>0<(e[(c[g>>2]|0)+108+8>>1]|0)>
;>>0){b=c[g>>2]|0;if(d[f+368>>0]&1|0){c[k>>2]=Oa[c[b+576>>2]&63](c[g
>>2]|0,c[(c[(c[g>>2]|0)+108+12>>2]|0)+(c[j>>2]<<3)>>2]|0,c[(c[(c[g
x3e;>2]|0)+108+12>>2]|0)+(c[j>>2]<<3)+4>>2]|0)|0;break}else{c[k>>2]=Oa[c[
b+572>>2]&63](c[g>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(c[j>>2]<<
;3)>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(c[j>>2]<<3)+4>>2]|0)|0;break
}}else{if(!(a[f+561>>0]|0)){c[k>>2]=0;break}c[(c[g>>2]|0)+12>>2]=134;i=l;return}while(0);
c[c[h>>2]>>2]=c[k>>2];i=l;return}function zg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0
;g=l+8|0;h=l+4|0;j=l;k=l+12|0;c[g>>2]=d;c[h>>2]=f;b[k>>1]=c[c[h>>2]>>2];f=c[g
x3e;>2]|0;if((e[k>>1]|0)>>>0>=(e[(c[g>>2]|0)+108+8>>1]|0)>>>
;0){if(!(a[f+561>>0]|0)){i=l;return}c[(c[g>>2]|0)+12>>2]=134;i=l;return}else{c[j>>2]=Oa[
c[f+572>>2]&63](c[g>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(e[k>>1]<
x3c;3)>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)|0;
_a[c[(c[g>>2]|0)+584>>2]&15](c[g>>2]|0,(c[g>>2]|0)+108|0,b[k>>1]|0,(c[(c[
h>>2]|0)+4>>2]|0)-(c[j>>2]|0)|0);if(e[(c[g>>2]|0)+284+64>>1]|0){i=l;return}j=(
c[(c[g>>2]|0)+108+12>>2]|0)+(e[k>>1]<<3)|0;k=(c[(c[g>>2]|0)+108+16>>
2]|0)+(e[k>>1]<<3)|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];i=l;return}}
function Ag(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;r=i;i=i+32|0;h=r+24|0;j=r+20|0;l=r+30|0;m=r+28|0;k=r+16
|0;o=r+12|0;p=r+8|0;n=r;c[h>>2]=f;c[j>>2]=g;b[l>>1]=c[(c[j>>2]|0)+4>>2];b[m>
;>1]=c[c[j>>2]>>2];do if((e[m>>1]|0)>>>0<(e[(c[h>>2]|0)+36+8>
;>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h>>2]|0)+72+8>>1]|0)>
;>>0:0){g=c[h>>2]|0;if(d[(c[h>>2]|0)+368>>0]&1|0){c[k>>2]=Oa[c[g+572>
;>2]&63](c[h>>2]|0,(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>
x3e;2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)>>2]|0)|0,(c[(c[(c[h>
;>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>
x3e;2]|0)+(e[l>>1]<<3)+4>>2]|0)|0)|0;break}c[o>>2]=(c[g+36+20>>2]|0)+(e[m>
;>1]<<3);c[p>>2]=(c[(c[h>>2]|0)+72+20>>2]|0)+(e[l>>1]<<3);if((c
[(c[h>>2]|0)+216+4>>2]|0)==(c[(c[h>>2]|0)+216+8>>2]|0)){c[k>>2]=Oa[c[(c[h>
;>2]|0)+576>>2]&63](c[h>>2]|0,(c[c[o>>2]>>2]|0)-(c[c[p>>2]>>
;2]|0)|0,(c[(c[o>>2]|0)+4>>2]|0)-(c[(c[p>>2]|0)+4>>2]|0)|0)|0;c[k>>2]=Mb(c[k
x3e;>2]|0,c[(c[h>>2]|0)+216+4>>2]|0)|0;break}else{c[n>>2]=Mb((c[c[o>>2]>>
2]|0)-(c[c[p>>2]>>2]|0)|0,c[(c[h>>2]|0)+216+4>>2]|0)|0;c[n+4>>2]=Mb((c[(c[o>
;>2]|0)+4>>2]|0)-(c[(c[p>>2]|0)+4>>2]|0)|0,c[(c[h>>2]|0)+216+8>>2]|0)|0;c
[k>>2]=Oa[c[(c[h>>2]|0)+576>>2]&63](c[h>>2]|0,c[n>>2]|0,c[n+4>>
2]|0)|0;break}}else q=3;while(0);do if((q|0)==3){if(!(a[(c[h>>2]|0)+561>>0]|0)){c[k>>2]=0;break}c[(
c[h>>2]|0)+12>>2]=134;i=r;return}while(0);c[c[j>>2]>>2]=c[k>>2];i=r;return}function
Bg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=e[(c[d>>2]|0)+244+8>>1]|0;a=Mb(a,of(c[d>
;>2]|0)|0)|0;i=b;return a|0}function Cg(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+8|0;k=j+4|0;h=j;g=j+12|0;
c[f>>2]=b;c[k>>2]=e;if(c[c[k>>2]>>2]|0){i=j;return}c[h>>2]=1;a[g>>0]=
0;while(1){if(((Yf(c[f>>2]|0)|0)&255|0)==1){f=9;break}switch(d[(c[f>>2]|0)+368>>0]|0|0){case
88:{c[h>>2]=(c[h>>2]|0)+1;break}case 27:{a[g>>0]=(c[h>>2]|0)==1;break}case 89:{c[h>
x3e;2]=(c[h>>2]|0)+-1;a[g>>0]=(c[h>>2]|0)==0;break}default:{}}if(d[g>>0]|0|0){f=9;break}}
if((f|0)==9){i=j;return}}function Dg(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;p=i;i=i+32|0;o=p+20|0;h=p+16|0;m=p+12|
0;n=p+8|0;j=p+24|0;l=p+4|0;k=p;c[o>>2]=f;c[h>>2]=g;c[n>>2]=c[c[h>>2]>>2];c[m
x3e;>2]=1;while(1){h=c[(c[o>>2]|0)+28>>2]|0;if((c[m>>2]|0)>>>0>(c[n>
x3e;2]|0)>>>0){g=16;break}f=c[o>>2]|0;if((h|0)<2){g=4;break}h=f+28|0;c[h>>2]=(c[h>
x3e;2]|0)-2;b[j>>1]=c[(c[(c[o>>2]|0)+24>>2]|0)+((c[(c[o>>2]|0)+28>>2]|0)+1<
;<2)>>2];c[k>>2]=c[(c[(c[o>>2]|0)+24>>2]|0)+(c[(c[o>>2]|0)+28>>
2]<<2)>>2];if((e[j>>1]|0)>>>0>=(e[(c[o>>2]|0)+36+8>>1]|0)
x3e;>>0){if(a[(c[o>>2]|0)+561>>0]|0)c[(c[o>>2]|0)+12>>2]=134}else{c[l>>
;2]=(c[k>>2]&240)>>>4;switch(d[(c[o>>2]|0)+368>>0]|0){case 114:{c[l>>
;2]=(c[l>>2]|0)+32;break}case 113:{c[l>>2]=(c[l>>2]|0)+16;break}default:{}}c[l>>2]=(c[l
x3e;>2]|0)+(b[(c[o>>2]|0)+284+48>>1]|0);h=Bg(c[o>>2]|0)|0;if((h|0)==(c[l>>2]|0)){c[
k>>2]=(c[k>>2]&15)-8;if((c[k>>2]|0)>=0)c[k>>2]=(c[k>>2]|0)+1;c[k>
;>2]=(c[k>>2]<<6|0)/(1<<b[(c[o>>2]|0)+284+50>>1]|0)|0;_a[c[(c[o>>
;2]|0)+584>>2]&15](c[o>>2]|0,(c[o>>2]|0)+36|0,b[j>>1]|0,c[k>>2]|0)}}c[m
x3e;>2]=(c[m>>2]|0)+1}if((g|0)==4){c[f+12>>2]=129;i=p;return}else if((g|0)==16){c[(c[o>>2]|0)+
32>>2]=h;i=p;return}}function Eg(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;o=i;i=i+32|0;n=o+24|0;g=o+20|0;m
=o+16|0;l=o+12|0;h=o+8|0;k=o+4|0;j=o;c[n>>2]=e;c[g>>2]=f;c[m>>2]=c[c[g>>2]>>2];
c[l>>2]=1;while(1){g=c[(c[n>>2]|0)+28>>2]|0;if((c[l>>2]|0)>>>0>(c[m
x3e;>2]|0)>>>0){f=16;break}e=c[n>>2]|0;if((g|0)<2){f=4;break}g=e+28|0;c[g>>2]=(c[g
x3e;>2]|0)-2;c[h>>2]=c[(c[(c[n>>2]|0)+24>>2]|0)+((c[(c[n>>2]|0)+28>>2]|0)+
1<<2)>>2];c[j>>2]=c[(c[(c[n>>2]|0)+24>>2]|0)+(c[(c[n>>2]|0)+28>
x3e;2]<<2)>>2];if((c[h>>2]|0)>>>0>=(c[(c[n>>2]|0)+380>>2]|
0)>>>0){if(a[(c[n>>2]|0)+561>>0]|0){f=7;break}}else{c[k>>2]=(c[j>>2]&
;240)>>>4;switch(d[(c[n>>2]|0)+368>>0]|0){case 117:{c[k>>2]=(c[k>>2]|0)+32
;break}case 116:{c[k>>2]=(c[k>>2]|0)+16;break}default:{}}c[k>>2]=(c[k>>2]|0)+(b[(c[n>
;>2]|0)+284+48>>1]|0);g=Bg(c[n>>2]|0)|0;if((g|0)==(c[k>>2]|0)){c[j>>2]=(c[j>
x3e;2]&15)-8;if((c[j>>2]|0)>=0)c[j>>2]=(c[j>>2]|0)+1;c[j>>2]=(c[j>>2
]<<6|0)/(1<<b[(c[n>>2]|0)+284+50>>1]|0)|0;Ua[c[(c[n>>2]|0)+600>>2]
x26;31](c[n>>2]|0,c[h>>2]|0,c[j>>2]|0)}}c[l>>2]=(c[l>>2]|0)+1}if((f|0)==4){c[e
+12>>2]=129;i=o;return}else if((f|0)==7){c[(c[n>>2]|0)+12>>2]=134;i=o;return}else if((f|0)==16){c[(
c[n>>2]|0)+32>>2]=g;i=o;return}}function Fg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|
0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;switch(c[g>>2]&192|0){case 0:{c[(c[e>
;>2]|0)+476>>2]=(c[f>>2]|0)/2|0;break}case 64:{c[(c[e>>2]|0)+476>>2]=c[f>>
;2];break}case 128:{c[(c[e>>2]|0)+476>>2]=c[f>>2]<<1;break}case 192:{c[(c[e>>2
]|0)+476>>2]=c[f>>2];break}default:{}}switch(c[g>>2]&48|0){case 0:{c[(c[e>>2]|0)+480
>>2]=0;break}case 16:{c[(c[e>>2]|0)+480>>2]=(c[(c[e>>2]|0)+476>>2]|0)/4|0;break
}case 32:{c[(c[e>>2]|0)+480>>2]=(c[(c[e>>2]|0)+476>>2]|0)/2|0;break}case 48:{c[(c[e>
;>2]|0)+480>>2]=((c[(c[e>>2]|0)+476>>2]|0)*3|0)/4|0;break}default:{}}if(!(c[g>>2]
x26;15)){c[(c[e>>2]|0)+484>>2]=(c[(c[e>>2]|0)+476>>2]|0)-1;d=c[e>>2]|0;d=d+476
|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+480|0;a=c[d>>2]|0;a=(a|0)/256|0;c
[d>>2]=a;d=c[e>>2]|0;d=d+484|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;i=h;return}else{d=(_((
c[g>>2]&15)-4|0,c[(c[e>>2]|0)+476>>2]|0)|0)/8|0;c[(c[e>>2]|0)+484>>2]=d;d
=c[e>>2]|0;d=d+476|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+480|0;a=c[d>
;>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+484|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>
;2]=a;i=h;return}}function Gg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0;k=i;i=i+16|0;j=k+4|0;l=k;h=k+8|0;c[j>>2]=f;c[l>
;>2]=g;c[j>>2]=c[j>>2];c[l>>2]=c[l>>2];if((c[(c[j>>2]|0)+16>>2]|
0)<(c[(c[j>>2]|0)+284+20>>2]|0)){c[(c[j>>2]|0)+12>>2]=129;i=k;return}while(1){f=c[j
>>2]|0;if((c[(c[j>>2]|0)+284+20>>2]|0)<=0){g=9;break}l=f+28|0;c[l>>2]=(c[l>>
;2]|0)+-1;b[h>>1]=c[(c[(c[j>>2]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<
2)>>2];if((e[h>>1]|0)>>>0>=(e[(c[j>>2]|0)+144+8>>1]|0)>>
x3e;0){if(a[(c[j>>2]|0)+561>>0]|0){g=6;break}}else{l=(c[(c[j>>2]|0)+144+24>>2]|0)+(e[h
x3e;>1]|0)|0;a[l>>0]=d[l>>0]^1}l=(c[j>>2]|0)+284+20|0;c[l>>2]=(c[l>>2]|0)+-
1}if((g|0)==6){c[(c[j>>2]|0)+12>>2]=134;i=k;return}else if((g|0)==9){c[f+284+20>>2]=1;c[(c[j>
x3e;2]|0)+32>>2]=c[(c[j>>2]|0)+28>>2];i=k;return}}function Hg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0
,m=0,n=0;m=i;i=i+16|0;h=m+4|0;n=m;j=m+12|0;k=m+10|0;l=m+8|0;c[h>>2]=f;c[n>>2]=g;b[k>>1]=c[(c[n>
;>2]|0)+4>>2];b[l>>1]=c[c[n>>2]>>2];if((e[k>>1]|0)>>>0<
;(e[(c[h>>2]|0)+144+8>>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h>
x3e;2]|0)+144+8>>1]|0)>>>0:0){b[j>>1]=b[l>>1]|0;while(1){if((e[j>>1]|0)
x3e;(e[k>>1]|0))break;n=(c[(c[h>>2]|0)+144+24>>2]|0)+(e[j>>1]|0)|0;a[n>>0]=d[n
>>0]|1;b[j>>1]=(b[j>>1]|0)+1<<16>>16}i=m;return}if(!(a[(c[h>>2]|0)+561
>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}function Ig(f,g){f=f|0;g=g|0;var h=0,j=0,k
=0,l=0,m=0,n=0;m=i;i=i+16|0;h=m+4|0;n=m;j=m+12|0;k=m+10|0;l=m+8|0;c[h>>2]=f;c[n>>2]=g;b[k>>1]=c[(c
[n>>2]|0)+4>>2];b[l>>1]=c[c[n>>2]>>2];if((e[k>>1]|0)>>>
;0<(e[(c[h>>2]|0)+144+8>>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h
>>2]|0)+144+8>>1]|0)>>>0:0){b[j>>1]=b[l>>1]|0;while(1){if((e[j>>
;1]|0)>(e[k>>1]|0))break;n=(c[(c[h>>2]|0)+144+24>>2]|0)+(e[j>>1]|0)|0;a[n>>
;0]=d[n>>0]&-2;b[j>>1]=(b[j>>1]|0)+1<<16>>16}i=m;return}if(!(a[(c[h>
x3e;2]|0)+561>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}function Jg(b,f){b=b|0;f=f|0;
var g=0,h=0,j=0,k=0;k=i;i=i+16|0;g=k+8|0;h=k+4|0;j=k;c[g>>2]=b;c[h>>2]=f;c[j>>2]=c[c[h>>
2]>>2]&255;if((c[j>>2]|0)==255){a[(c[g>>2]|0)+284+53>>0]=1;i=k;return}if(!(c[j>
;>2]|0)){a[(c[g>>2]|0)+284+53>>0]=0;i=k;return}if(c[c[h>>2]>>2]&256|0?(e[(c[g
x3e;>2]|0)+244+8>>1]|0|0)<=(c[j>>2]|0):0)a[(c[g>>2]|0)+284+53>>0]=1;if(c[c[h
x3e;>2]>>2]&512|0?d[(c[g>>2]|0)+244+37>>0]|0|0:0)a[(c[g>>2]|0)+284+53>>
;0]=1;if(c[c[h>>2]>>2]&1024|0?d[(c[g>>2]|0)+244+38>>0]|0|0:0)a[(c[g>>2]|0
)+284+53>>0]=1;if(c[c[h>>2]>>2]&2048|0?(e[(c[g>>2]|0)+244+8>>1]|0|0)>
;(c[j>>2]|0):0)a[(c[g>>2]|0)+284+53>>0]=0;if(c[c[h>>2]>>2]&4096|0?d[(c[g
x3e;>2]|0)+244+37>>0]|0|0:0)a[(c[g>>2]|0)+284+53>>0]=0;if(!(c[c[h>>2]>>2]
x26;8192)){i=k;return}if(!(d[(c[g>>2]|0)+244+38>>0]|0)){i=k;return}a[(c[g>>2]|0)+284+53>>
;0]=0;i=k;return}function Kg(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;s=i;i=i+48|0;h=s+32|0;t=s+28|0
;j=s+24|0;k=s+20|0;l=s+16|0;m=s+38|0;n=s+36|0;o=s+12|0;q=s+8|0;p=s+4|0;r=s;c[h>>2]=f;c[t>>2]=g;b[m>>
;1]=c[(c[t>>2]|0)+4>>2];b[n>>1]=c[c[t>>2]>>2];if((e[n>>1]|0)>
x3e;>0<(e[(c[h>>2]|0)+72+8>>1]|0)>>>0?(e[m>>1]|0)>>>0<
;(e[(c[h>>2]|0)+108+8>>1]|0)>>>0:0){c[o>>2]=(c[(c[h>>2]|0)+72+12>>
;2]|0)+(e[n>>1]<<3);c[q>>2]=(c[(c[h>>2]|0)+108+12>>2]|0)+(e[m>>1]<
;<3);c[j>>2]=(c[c[o>>2]>>2]|0)-(c[c[q>>2]>>2]|0);c[k>>2]=(c[(c[
o>>2]|0)+4>>2]|0)-(c[(c[q>>2]|0)+4>>2]|0);if(d[(c[h>>2]|0)+368>>0]
x26;1|0){c[l>>2]=c[k>>2];c[k>>2]=c[j>>2];c[j>>2]=0-(c[l>>2]|0)}Rf(c[
h>>2]|0,c[j>>2]|0,c[k>>2]|0,(c[h>>2]|0)+284+6|0)|0;c[p>>2]=(c[(c[h>>
2]|0)+72+16>>2]|0)+(e[n>>1]<<3);c[r>>2]=(c[(c[h>>2]|0)+108+16>>2]|0)+(
e[m>>1]<<3);c[j>>2]=(c[c[p>>2]>>2]|0)-(c[c[r>>2]>>2]|0);c[
k>>2]=(c[(c[p>>2]|0)+4>>2]|0)-(c[(c[r>>2]|0)+4>>2]|0);if(d[(c[h>>2]|
0)+368>>0]&1|0){c[l>>2]=c[k>>2];c[k>>2]=c[j>>2];c[j>>2]=0-(c[l
x3e;>2]|0)}Rf(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,(c[h>>2]|0)+284+10|0)|0;vf(c[h>>
;2]|0);i=s;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=s;return}c[(c[h>>2]|0)+12>>2]=134;i=s
;return}function Lg(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=
b;c[g>>2]=0;c[g>>2]=c[c[f>>2]>>2]&1|0?35:0;if(c[c[f>>2]>>2]&
;2|0?d[(c[e>>2]|0)+244+37>>0]|0|0:0)c[g>>2]=c[g>>2]|128;if(c[c[f>>2]>>
;2]&4|0?d[(c[e>>2]|0)+244+38>>0]|0|0:0)c[g>>2]=c[g>>2]|256;if(!(c[c[f>>2]
x3e;>2]&32)){b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}if(!(d[(c[e>>2]|0)+604
>>0]|0)){b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}c[g>>2]=c[g>>2
]|4096;b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}function Mg(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;j=k+12|0;g=k+8|0;h=k+4|0;f=k;c[j>>2]=b;c[g>>2]=e;c[h>>2]=c[(c[j>>2]|
0)+416>>2];c[f>>2]=(c[h>>2]|0)+(c[(c[j>>2]|0)+408>>2]<<4);while(1){if
((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break;if((c[(c[h>>2]|0)+8>
;>2]|0)==(c[c[g>>2]>>2]|0))break;c[h>>2]=(c[h>>2]|0)+16}do if((c[h>>2]|0)==(
c[f>>2]|0)){e=c[j>>2]|0;if((c[(c[j>>2]|0)+408>>2]|0)>>>0<(c[(c[j>
;>2]|0)+412>>2]|0)>>>0){f=e+408|0;c[f>>2]=(c[f>>2]|0)+1;break}c[e+12>>
;2]=141;i=k;return}while(0);if(0<=(c[c[g>>2]>>2]|0)?(c[c[g>>2]>>2]|0)<=255:0){
c[(c[h>>2]|0)+8>>2]=c[c[g>>2]>>2]&255;c[(c[h>>2]|0)+4>>2]=(c[(c
[j>>2]|0)+360>>2]|0)+1;c[c[h>>2]>>2]=c[(c[j>>2]|0)+352>>2];a[(c[h>
;>2]|0)+12>>0]=1;if((c[c[g>>2]>>2]|0)>>>0>(c[(c[j>>2]|0)+424>
;>2]|0)>>>0)c[(c[j>>2]|0)+424>>2]=c[c[g>>2]>>2]&255;a:while(1){
if((Yf(c[j>>2]|0)|0)&255|0){e=17;break}switch(d[(c[j>>2]|0)+368>>0]|0|0){case 44:case 137:{e=
16;break a}case 45:{e=17;break a}default:{}}}if((e|0)==16){c[(c[j>>2]|0)+12>>2]=137;i=k;return}else if((e|0)==
17){i=k;return}}c[(c[j>>2]|0)+12>>2]=141;i=k;return}function Ng(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;g=d+8|0;f=d+4|0;h=d;c[j>>2]=a;c[e>>2]=b;c[j>>2]=c[j>>2];
c[g>>2]=c[(c[e>>2]|0)+8>>2];c[f>>2]=c[(c[e>>2]|0)+4>>2];c[h>>
;2]=c[c[e>>2]>>2];c[(c[e>>2]|0)+8>>2]=c[h>>2];c[(c[e>>2]|0)+4>
x3e;2]=c[g>>2];c[c[e>>2]>>2]=c[f>>2];i=d;return}function Og(a,b){a=a|0;b=b|0;var d=0,e=0
,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if((c[c[e>>2]>>2]|0)<0){i=f;return
}c[(c[d>>2]|0)+284+56>>2]=c[c[e>>2]>>2];i=f;return}function Pg(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;k=j+8|0;g=j+4|0;h=j;c[f>>2]=b;c[k>>2]=e;c[g>>2]=c[(c[k>
x3e;2]|0)+4>>2];c[h>>2]=c[c[k>>2]>>2];if((c[g>>2]|0)<1|(c[g>>2]|
0)>2){if(!(a[(c[f>>2]|0)+561>>0]|0)){i=j;return}c[(c[f>>2]|0)+12>>2]=134;i=j;return
}else{if(c[h>>2]|0)c[h>>2]=c[g>>2];a[(c[f>>2]|0)+284+52>>0]=d[(c[f>>
2]|0)+284+52>>0]&~(c[g>>2]&255)|c[h>>2]&255;i=j;return}}function Qg(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;p=i;i=i+32|0;k=p+24|0;q=p+20|0;o=p+28|0;h=p+16|0;j=p+12|0;m=p+8|0;l=p+4|0;n=p;c[k>
;>2]=f;c[q>>2]=g;b[o>>1]=c[c[q>>2]>>2];c[h>>2]=(c[(c[q>>2]|0)+4
>>2]|0)+1;if(((e[o>>1]|0)>>>0<(e[(c[k>>2]|0)+72+8>>1]|0)>>
x3e;0?(c[h>>2]|0)>>>0<((c[(c[k>>2]|0)+380>>2]|0)+1|0)>>>0:0)?(e
[(c[k>>2]|0)+284>>1]|0)>>>0<(e[(c[k>>2]|0)+36+8>>1]|0)>>
x3e;0:0){if(c[h>>2]|0)c[j>>2]=Ya[c[(c[k>>2]|0)+592>>2]&127](c[k>>2]|0,(c[
h>>2]|0)-1|0)|0;else c[j>>2]=0;q=(c[j>>2]|0)-(c[(c[k>>2]|0)+284+44>>2]|0)|0;do
if(((((c[j>>2]|0)-(c[(c[k>>2]|0)+284+44>>2]|0)|0)<0?0-q|0:q)|0)<(c[(c[k>>2]|0
)+284+40>>2]|0)){g=c[(c[k>>2]|0)+284+44>>2]|0;if((c[j>>2]|0)>=0){c[j>>2]=
g;break}else{c[j>>2]=0-g;break}}while(0);if(!(e[(c[k>>2]|0)+284+62>>1]|0)){q=c[(c[(c[k>>
2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)>>2]|0;q=q+(qg(c[j>>2]|
0,b[(c[k>>2]|0)+284+14>>1]|0)|0)|0;c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<
;<3)>>2]=q;q=c[(c[(c[k>>2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<
x3c;3)+4>>2]|0;q=q+(qg(c[j>>2]|0,b[(c[k>>2]|0)+284+14+2>>1]|0)|0)|0;c[(c[(c[k>>
;2]|0)+72+12>>2]|0)+(e[o>>1]<<3)+4>>2]=q;q=(c[(c[k>>2]|0)+72+16>>2]|
0)+(e[o>>1]<<3)|0;f=(c[(c[k>>2]|0)+36+16>>2]|0)+(e[o>>1]<<3)|0;c[q
x3e;>2]=c[f>>2];c[q+4>>2]=c[f+4>>2]}c[n>>2]=Oa[c[(c[k>>2]|0)+576>>
;2]&63](c[k>>2]|0,(c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<<3)>>
2]|0)-(c[(c[(c[k>>2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)>>2]|
0)|0,(c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<<3)+4>>2]|0)-(c[(c[(c[k>>
;2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)+4>>2]|0)|0)|0;c[l>>2]=
Oa[c[(c[k>>2]|0)+572>>2]&63](c[k>>2]|0,(c[(c[(c[k>>2]|0)+72+16>>2]|0)+(e[
o>>1]<<3)>>2]|0)-(c[(c[(c[k>>2]|0)+36+16>>2]|0)+(e[(c[k>>2]|0)+284
x3e;>1]<<3)>>2]|0)|0,(c[(c[(c[k>>2]|0)+72+16>>2]|0)+(e[o>>1]<<3
)+4>>2]|0)-(c[(c[(c[k>>2]|0)+36+16>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)+
4>>2]|0)|0)|0;if(a[(c[k>>2]|0)+284+32>>0]|0?(c[n>>2]^c[j>>2]|0)<0:0)c[j
x3e;>2]=0-(c[j>>2]|0);g=c[k>>2]|0;if(d[(c[k>>2]|0)+368>>0]&4|0){if((e[g+284+60
>>1]|0)==(e[(c[k>>2]|0)+284+62>>1]|0)?(q=(c[j>>2]|0)-(c[n>>2]|0)|0,((((c[j>
;>2]|0)-(c[n>>2]|0)|0)<0?0-q|0:q)|0)>=(c[(c[k>>2]|0)+284+36>>2]|0)):0)c[j>>
;2]=c[n>>2];c[m>>2]=Oa[c[(c[k>>2]|0)+568>>2]&63](c[k>>2]|0,c[j>>
;2]|0,c[(c[k>>2]|0)+244+20+((d[(c[k>>2]|0)+368>>0]&3)<<2)>>2]|0)|0}else c
[m>>2]=If(g,c[j>>2]|0,c[(c[k>>2]|0)+244+20+((d[(c[k>>2]|0)+368>>0]&3)<
;<2)>>2]|0)|0;do if(d[(c[k>>2]|0)+368>>0]&8|0){g=c[m>>2]|0;h=c[(c[k>>
;2]|0)+284+24>>2]|0;if((c[n>>2]|0)>=0){if((g|0)>=(h|0))break;c[m>>2]=c[(c[k>>2
]|0)+284+24>>2];break}else{if((g|0)<=(0-h|0))break;c[m>>2]=0-(c[(c[k>>2]|0)+284+24>>
;2]|0);break}}while(0);_a[c[(c[k>>2]|0)+584>>2]&15](c[k>>2]|0,(c[k>>2]|0)+72|0,b[o
x3e;>1]|0,(c[m>>2]|0)-(c[l>>2]|0)|0);b[(c[k>>2]|0)+284+2>>1]=b[(c[k>>2]|0
)+284>>1]|0;if(d[(c[k>>2]|0)+368>>0]&16|0)b[(c[k>>2]|0)+284>>1]=b[o>
x3e;1]|0;b[(c[k>>2]|0)+284+4>>1]=b[o>>1]|0;i=p;return}if(!(a[(c[k>>2]|0)+561>>
0]|0)){i=p;return}c[(c[k>>2]|0)+12>>2]=134;i=p;return}function Rg(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;s=i;i=i+48|0;o=s+36|0;t=s+32|0;r=s+40|0;q=s+28|0;p=s+24|0;j=s+20|0;l=s+16|0;k=s+12|0;m=s+8|0;h=s;c[o
x3e;>2]=f;c[t>>2]=g;b[r>>1]=c[c[t>>2]>>2];if((e[r>>1]|0)>>>
;0<(e[(c[o>>2]|0)+72+8>>1]|0)>>>0?(e[(c[o>>2]|0)+284>>1]|0)>>
;>0<(e[(c[o>>2]|0)+36+8>>1]|0)>>>0:0){do if((e[(c[o>>2]|0)+284+60>
x3e;1]|0)!=0?(e[(c[o>>2]|0)+284+62>>1]|0)!=0:0){c[k>>2]=(c[(c[o>>2]|0)+72+20>>
2]|0)+(e[r>>1]<<3);c[m>>2]=(c[(c[o>>2]|0)+36+20>>2]|0)+(e[(c[o>>2]|0
)+284>>1]<<3);if((c[(c[o>>2]|0)+216+4>>2]|0)==(c[(c[o>>2]|0)+216+8>>
2]|0)){c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o>>2]|0,(c[c[k>>2]>>
;2]|0)-(c[c[m>>2]>>2]|0)|0,(c[(c[k>>2]|0)+4>>2]|0)-(c[(c[m>>2]|0)+4>>
;2]|0)|0)|0;c[q>>2]=Mb(c[q>>2]|0,c[(c[o>>2]|0)+216+4>>2]|0)|0;break}else{c[h>>
2]=Mb((c[c[k>>2]>>2]|0)-(c[c[m>>2]>>2]|0)|0,c[(c[o>>2]|0)+216+4>>2]|
0)|0;c[h+4>>2]=Mb((c[(c[k>>2]|0)+4>>2]|0)-(c[(c[m>>2]|0)+4>>2]|0)|0,c[(c[o>
;>2]|0)+216+8>>2]|0)|0;c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o>>2]|
0,c[h>>2]|0,c[h+4>>2]|0)|0;break}}else n=7;while(0);if((n|0)==7){c[j>>2]=(c[(c[o>>2]|0)+
72+12>>2]|0)+(e[r>>1]<<3);c[l>>2]=(c[(c[o>>2]|0)+36+12>>2]|0)+(e[(c[
o>>2]|0)+284>>1]<<3);c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o
x3e;>2]|0,(c[c[j>>2]>>2]|0)-(c[c[l>>2]>>2]|0)|0,(c[(c[j>>2]|0)+4>>
;2]|0)-(c[(c[l>>2]|0)+4>>2]|0)|0)|0}t=(c[q>>2]|0)-(c[(c[o>>2]|0)+284+44>>2]|0)|
0;do if(((((c[q>>2]|0)-(c[(c[o>>2]|0)+284+44>>2]|0)|0)<0?0-t|0:t)|0)<(c[(c[o>>
2]|0)+284+40>>2]|0)){g=c[(c[o>>2]|0)+284+44>>2]|0;if((c[q>>2]|0)>=0){c[q>>
;2]=g;break}else{c[q>>2]=0-g;break}}while(0);g=c[o>>2]|0;if(d[(c[o>>2]|0)+368>>0]&4
|0)c[p>>2]=Oa[c[g+568>>2]&63](c[o>>2]|0,c[q>>2]|0,c[(c[o>>2]|0)+244+20+((
d[(c[o>>2]|0)+368>>0]&3)<<2)>>2]|0)|0;else c[p>>2]=If(g,c[q>>2]|
0,c[(c[o>>2]|0)+244+20+((d[(c[o>>2]|0)+368>>0]&3)<<2)>>2]|0)|0;do if(d[(c
[o>>2]|0)+368>>0]&8|0){g=c[p>>2]|0;f=c[(c[o>>2]|0)+284+24>>2]|0;if((c[q
x3e;>2]|0)>=0){if((g|0)>=(f|0))break;c[p>>2]=c[(c[o>>2]|0)+284+24>>2];break}else{if
((g|0)<=(0-f|0))break;c[p>>2]=0-(c[(c[o>>2]|0)+284+24>>2]|0);break}}while(0);c[q>>2
]=Oa[c[(c[o>>2]|0)+572>>2]&63](c[o>>2]|0,(c[(c[(c[o>>2]|0)+72+16>>2]|0)+(
e[r>>1]<<3)>>2]|0)-(c[(c[(c[o>>2]|0)+36+16>>2]|0)+(e[(c[o>>2]|0)+284
>>1]<<3)>>2]|0)|0,(c[(c[(c[o>>2]|0)+72+16>>2]|0)+(e[r>>1]<<
;3)+4>>2]|0)-(c[(c[(c[o>>2]|0)+36+16>>2]|0)+(e[(c[o>>2]|0)+284>>1]<<
3)+4>>2]|0)|0)|0;_a[c[(c[o>>2]|0)+584>>2]&15](c[o>>2]|0,(c[o>>2]|0)+72|0,
b[r>>1]|0,(c[p>>2]|0)-(c[q>>2]|0)|0);b[(c[o>>2]|0)+284+2>>1]=b[(c[o>>
;2]|0)+284>>1]|0;b[(c[o>>2]|0)+284+4>>1]=b[r>>1]|0;if(!(d[(c[o>>2]|0)+368>
;>0]&16)){i=s;return}b[(c[o>>2]|0)+284>>1]=b[r>>1]|0;i=s;return}if(!(a[(c[o>>2
]|0)+561>>0]|0)){i=s;return}c[(c[o>>2]|0)+12>>2]=134;i=s;return}function Sg(f,g){f=f|0;g=g|0;var h
=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+4|0;j=m;l=m+10|0;k=m+8|0;c[h>>2]=f;c[j>>2]=g;b[l>>1]=(d[(c[h
x3e;>2]|0)+368>>0]|0)-184+1;g=c[h>>2]|0;if((e[l>>1]|0)>>>0>=((c[(c[h>
;>2]|0)+20>>2]|0)+1-(c[(c[h>>2]|0)+16>>2]|0)|0)>>>0){c[g+12>>2]=130;
i=m;return}f=g+360|0;c[f>>2]=(c[f>>2]|0)+1;b[k>>1]=0;while(1){g=c[h>>2]|0;if((e[k>
x3e;1]|0|0)>=(e[l>>1]|0|0))break;f=(xg(g)|0)<<16>>16;c[(c[j>>2]|0)+((e[k>>
;1]|0)<<2)>>2]=f;b[k>>1]=(b[k>>1]|0)+1<<16>>16}a[g+376>>0]=
0;i=m;return}function Tg(a,f){a=a|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+4|0;h=l;k=l+10|0;j=l+8|0;c[g>>2]=a;
c[h>>2]=f;b[k>>1]=(d[(c[g>>2]|0)+368>>0]|0)-176+1;if((e[k>>1]|0)>>
x3e;0>=((c[(c[g>>2]|0)+20>>2]|0)+1-(c[(c[g>>2]|0)+16>>2]|0)|0)>>>0){
c[(c[g>>2]|0)+12>>2]=130;i=l;return}b[j>>1]=1;while(1){if((e[j>>1]|0|0)>(e[k>
x3e;1]|0|0))break;c[(c[h>>2]|0)+((e[j>>1]|0)-1<<2)>>2]=d[(c[(c[g>>2]|0)+356>
;>2]|0)+((c[(c[g>>2]|0)+360>>2]|0)+(e[j>>1]|0))>>0];b[j>>1]=(b[j>>
;1]|0)+1<<16>>16}i=l;return}function Ug(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;e=m+24|0;f
=m+20|0;j=m+16|0;h=m+12|0;g=m+8|0;k=m+4|0;l=m;c[f>>2]=d;c[j>>2]=c[c[f>>2]>>2];if(a[(c[f
x3e;>2]|0)+292>>0]|0)c[h>>2]=c[(c[f>>2]|0)+296>>2];else c[h>>2]=c[(c[(c[j
>>2]|0)+96>>2]|0)+40>>2];if(!(c[h>>2]|0)){c[e>>2]=153;l=c[e>>2]|0;i=
m;return l|0}Vg(c[h>>2]|0,c[j>>2]|0,c[f>>2]|0)|0;c[(c[h>>2]|0)+428>>2]=0;c[(c[
h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+476>>2]=64;c[(c[h>>2]|0)+480>>2]=0;c
[(c[h>>2]|0)+484>>2]=0;a[(c[h>>2]|0)+488>>0]=0;c[(c[h>>2]|0)+564>>2]=
65536;c[k>>2]=(c[h>>2]|0)+216;c[l>>2]=(c[h>>2]|0)+244;b[c[k>>2]>>1]=
0;b[(c[k>>2]|0)+2>>1]=0;c[(c[k>>2]|0)+4>>2]=0;c[(c[k>>2]|0)+8>>2]=0;
b[(c[l>>2]|0)+8>>1]=0;c[(c[l>>2]|0)+16>>2]=0;c[(c[l>>2]|0)+12>>2]=65536
;Xg(c[h>>2]|0,1,c[(c[j>>2]|0)+656>>2]|0,c[(c[j>>2]|0)+652>>2]|0)|0;Yg(c[h>
;>2]|0,2)|0;Yg(c[h>>2]|0,3)|0;if((c[(c[j>>2]|0)+652>>2]|0)>>>0>0){c[g>
;>2]=Zg(c[h>>2]|0,1,0)|0;if(!(c[g>>2]|0))c[g>>2]=Ta[c[(c[j>>2]|0)+688>>2]
x26;63](c[h>>2]|0)|0}else c[g>>2]=0;if(!(c[g>>2]|0))_g(c[h>>2]|0,c[f>>2]|0)|0;
c[e>>2]=c[g>>2];l=c[e>>2]|0;i=m;return l|0}function Vg(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;p=i;i=i+32|0;h=p+28|0;j=p+24|0;q=p+20|0;k=p+16|0;m=p+12|0;o=p+8|0;n=p+4|0;l=p;c[j>>2]=d;c[q>
;>2]=f;c[k>>2]=g;c[c[j>>2]>>2]=c[q>>2];c[n>>2]=(c[q>>2]|0)+260;
c[(c[j>>2]|0)+4>>2]=c[k>>2];if(c[k>>2]|0){c[(c[j>>2]|0)+396>>2]=c[(c
[k>>2]|0)+116>>2];c[(c[j>>2]|0)+400>>2]=c[(c[k>>2]|0)+120>>2];c[(c[j
>>2]|0)+408>>2]=c[(c[k>>2]|0)+128>>2];c[(c[j>>2]|0)+412>>2]=c[(c[k
x3e;>2]|0)+132>>2];c[(c[j>>2]|0)+404>>2]=c[(c[k>>2]|0)+124>>2];c[(c[j>
;>2]|0)+416>>2]=c[(c[k>>2]|0)+136>>2];d=(c[j>>2]|0)+244|0;f=(c[k>>2]|0)+72
|0;g=d+40|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));q=(c[j>>2]|0)+216|0;g=(c[k
x3e;>2]|0)+44|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[q+8>>2]=c[g+8>
x3e;2];c[q+12>>2]=c[g+12>>2];c[q+16>>2]=c[g+16>>2];c[q+20>>2]=c[g+20>>
;2];c[q+24>>2]=c[g+24>>2];c[(c[j>>2]|0)+420>>2]=c[(c[k>>2]|0)+140>>2
];c[(c[j>>2]|0)+424>>2]=c[(c[k>>2]|0)+144>>2];c[m>>2]=0;while(1){if((c[m>
x3e;2]|0)>=3)break;q=(c[j>>2]|0)+444+(c[m>>2]<<3)|0;g=(c[k>>2]|0)+148+(c[m>>
;2]<<3)|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[m>>2]=(c[m>>
;2]|0)+1}d=(c[j>>2]|0)+284|0;f=(c[k>>2]|0)+172|0;g=d+68|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f
+4|0}while((d|0)<(g|0));c[(c[j>>2]|0)+380>>2]=c[(c[k>>2]|0)+240>>2];c[(c[j>>
;2]|0)+384>>2]=c[(c[k>>2]|0)+244>>2];b[(c[j>>2]|0)+468>>1]=b[(c[k>>2
]|0)+248>>1]|0;c[(c[j>>2]|0)+472>>2]=c[(c[k>>2]|0)+252>>2];d=(c[j>>2
]|0)+180|0;f=(c[k>>2]|0)+256|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));
d=(c[j>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+72|0;f=(c[j
>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>
;2]|0)+108|0;f=(c[j>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0))}
c[o>>2]=c[(c[j>>2]|0)+20>>2];c[l>>2]=Wg(c[(c[j>>2]|0)+8>>2]|0,o,4,(c
[j>>2]|0)+24|0,(e[(c[n>>2]|0)+24>>1]|0)+32|0)|0;c[(c[j>>2]|0)+20>>2]=c[o>
x3e;2];if(c[l>>2]|0){c[h>>2]=c[l>>2];q=c[h>>2]|0;i=p;return q|0}c[o>>2]=c[(c[j
>>2]|0)+388>>2];c[l>>2]=Wg(c[(c[j>>2]|0)+8>>2]|0,o,1,(c[j>>2]|0)+392
|0,e[(c[n>>2]|0)+26>>1]|0)|0;c[(c[j>>2]|0)+388>>2]=c[o>>2]&65535;if(c[l
x3e;>2]|0){c[h>>2]=c[l>>2];q=c[h>>2]|0;i=p;return q|0}else{b[(c[j>>2]|0)+144+8>
;>1]=0;b[(c[j>>2]|0)+144+10>>1]=0;d=(c[j>>2]|0)+72|0;f=(c[j>>2]|0)+144|0;g=d+36|0;do
{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+108|0;f=(c[j>>2]|
0)+144|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+36|0;f=(
c[j>>2]|0)+144|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));a[(c[j>
x3e;2]|0)+488>>0]=0;c[h>>2]=0;q=c[h>>2]|0;i=p;return q|0}return 0}function Wg(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;o=i;i=i+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;p=o+12|0;l=o+8|0;m
=o+4|0;n=o;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[p>>2]=e;c[l>>2]=f;c[n>>2]=
c[p>>2];do if((c[c[j>>2]>>2]|0)>>>0<(c[l>>2]|0)>>>0){
b=_(c[c[j>>2]>>2]|0,c[k>>2]|0)|0;p=_(c[l>>2]|0,c[k>>2]|0)|0;p=hc(c[h>>
;2]|0,1,b,p,c[c[n>>2]>>2]|0,m)|0;c[c[n>>2]>>2]=p;if(!(c[m>>2]|0)){c[c[j>
x3e;2]>>2]=c[l>>2];break}c[g>>2]=c[m>>2];p=c[g>>2]|0;i=o;return p|0}while(0);c
[g>>2]=0;p=c[g>>2]|0;i=o;return p|0}function Xg(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;g=f+8|0;k=f+4|0;j=f;c[h>>2]=a;c[g>>2]=b;c[k>>2]=d;c[j>>2]=e;c[(c[h>
;>2]|0)+444+((c[g>>2]|0)-1<<3)>>2]=c[k>>2];c[(c[h>>2]|0)+444+((c[g>
x3e;2]|0)-1<<3)+4>>2]=c[j>>2];i=f;return 0}function Yg(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)+444+((c[e>>2]|0)-1<<3)>
x3e;2]=0;c[(c[f>>2]|0)+444+((c[e>>2]|0)-1<<3)+4>>2]=0;i=d;return 0}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;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>
;>2]=d;c[j>>2]=(c[f>>2]|0)+444+((c[g>>2]|0)-1<<3);c[(c[f>>2]|0)+356>
x3e;2]=c[c[j>>2]>>2];c[(c[f>>2]|0)+364>>2]=c[(c[j>>2]|0)+4>>2];c[(c[
f>>2]|0)+360>>2]=c[h>>2];c[(c[f>>2]|0)+352>>2]=c[g>>2];i=e;return 0}
function _g(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[(c[e
>>2]|0)+116>>2]=c[(c[d>>2]|0)+396>>2];c[(c[e>>2]|0)+128>>2]=c[(c[d
x3e;>2]|0)+408>>2];c[(c[e>>2]|0)+140>>2]=c[(c[d>>2]|0)+420>>2];c[(c[e>
;>2]|0)+144>>2]=c[(c[d>>2]|0)+424>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)
x3e;=3)break;b=(c[e>>2]|0)+148+(c[f>>2]<<3)|0;a=(c[d>>2]|0)+444+(c[f>>2]<
x3c;3)|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[f>>2]=(c[f>>2]|0)+1}i
=g;return 0}function $g(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;f=k+16|0;g=k+12|0;d=k+8|0;j=k+4|0;h=k;c[g>>
;2]=b;c[d>>2]=c[c[g>>2]>>2];if(a[(c[g>>2]|0)+292>>0]|0)c[j>>2]=c[(c[
g>>2]|0)+296>>2];else c[j>>2]=c[(c[(c[d>>2]|0)+96>>2]|0)+40>>2];if(!(
c[j>>2]|0)){c[f>>2]=153;j=c[f>>2]|0;i=k;return j|0}Vg(c[j>>2]|0,c[d>>2]|0,c[g
x3e;>2]|0)|0;c[(c[j>>2]|0)+428>>2]=0;c[(c[j>>2]|0)+16>>2]=0;a[(c[j>>2]|0)+
488>>0]=0;Xg(c[j>>2]|0,2,c[(c[d>>2]|0)+664>>2]|0,c[(c[d>>2]|0)+660>>
2]|0)|0;Yg(c[j>>2]|0,3)|0;if((c[(c[d>>2]|0)+660>>2]|0)>>>0>0){c[h>>2
]=Zg(c[j>>2]|0,2,0)|0;if((c[h>>2]|0)==0?(a[(c[g>>2]|0)+292>>0]|0)==0:0)c[h>>2]=
Ta[c[(c[d>>2]|0)+688>>2]&63](c[j>>2]|0)|0}else c[h>>2]=0;d=(c[g>>2]|0)+172
|0;b=(c[j>>2]|0)+284|0;e=d+68|0;do{c[d>>2]=c[b>>2];d=d+4|0;b=b+4|0}while((d|0)<(e|0));_g(c[j
x3e;>2]|0,c[g>>2]|0)|0;c[f>>2]=c[h>>2];j=c[f>>2]|0;i=k;return j|0}function ah(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,P=0,Q=0,R=0;R=i;i=i+192|0;l=R+180|0;m=R+176|0;n=R+172|0;o=R+186|0;q=R+168|0;P=R+164|0;Q=R+160|0;G=R+
156|0;r=R+152|0;s=R+148|0;J=R+185|0;p=R+144|0;w=R+104|0;t=R+96|0;u=R+184|0;z=R+92|0;M=R+88|0;L=R+84|0;x=R+80|0;v=R+76|0;y=R+72|0
;N=R+68|0;A=R+64|0;B=R+60|0;C=R+56|0;O=R+52|0;E=R+48|0;F=R+44|0;D=R+40|0;I=R+36|0;H=R+32|0;K=R;c[l>>2]=f;c[m>>
;2]=g;c[n>>2]=h;a[o>>0]=j;c[q>>2]=0;c[r>>2]=c[c[l>>2]>>2];c[s>
x3e;2]=c[(c[l>>2]|0)+12>>2];a[J>>0]=0;c[p>>2]=0;a[u>>0]=0;if((c[n>>2
]|0)>>>0>1?(c[n>>2]|0)>>>0>(e[(c[r>>2]|0)+260+30>>1]|0)>
;>>0:0)c[q>>2]=21;else k=4;a:do if((k|0)==4){if((c[m>>2]|0)>>>0>=(c[(c[r>
x3e;2]|0)+16>>2]|0)>>>0){c[q>>2]=16;break}c[(c[l>>2]|0)+20>>2]=c[m>
x3e;2];if(!(c[(c[l>>2]|0)+16>>2]&1)){c[P>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+44
+4>>2];c[Q>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+44+8>>2]}else{c[P>>2]=65536
;c[Q>>2]=65536}bh(c[l>>2]|0,c[m>>2]|0);g=c[r>>2]|0;if(c[(c[(c[r>>2]|0)+128>
;>2]|0)+52>>2]|0){c[q>>2]=Oa[c[c[c[(c[g+128>>2]|0)+52>>2]>>2]>>
2]&63](c[(c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,c[m>>2]|0,t)|0;if
(c[q>>2]|0)break;a[u>>0]=1;c[G>>2]=0;c[(c[l>>2]|0)+28>>2]=c[t+4>>2];
g=w;j=g+40|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(j|0));uc(w,c[t>>2]|0,c[t+4>>2]|0);c[(c[l>
x3e;2]|0)+24>>2]=w}else c[G>>2]=Ge(g,c[m>>2]|0,(c[l>>2]|0)+28|0)|0;if((c[(c[l>>
;2]|0)+28>>2]|0)>0){if((c[(c[l>>2]|0)+84>>2]|0)==0?(c[(c[(c[r>>2]|0)+128>>
;2]|0)+52>>2]|0)==0:0){c[q>>2]=8;break}c[q>>2]=Wa[c[(c[r>>2]|0)+512>>2]&31
](c[l>>2]|0,c[m>>2]|0,(c[(c[l>>2]|0)+84>>2]|0)+(c[G>>2]|0)|0,c[(c[l>>
;2]|0)+28>>2]|0)|0;if(c[q>>2]|0)break;a[J>>0]=1;c[q>>2]=Ta[c[(c[r>>2]|0)+520
x3e;>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;if(d[o>>0]|0)break}if(c[(c[l>>2]|0
)+28>>2]|0?b[(c[l>>2]|0)+32>>1]|0:0){c[(c[l>>2]|0)+68>>2]=(c[(c[l>>2
]|0)+36>>2]|0)-(c[(c[l>>2]|0)+52>>2]|0);c[(c[l>>2]|0)+68+4>>2]=0;c[(c[l>
x3e;2]|0)+76>>2]=(c[(c[l>>2]|0)+68>>2]|0)+(c[(c[l>>2]|0)+56>>2]|0);c[(c[l>
;>2]|0)+76+4>>2]=0;c[(c[l>>2]|0)+184>>2]=0;c[(c[l>>2]|0)+184+4>>2]=(c[(c[
l>>2]|0)+176>>2]|0)+(c[(c[l>>2]|0)+36+12>>2]|0);c[(c[l>>2]|0)+192>>2
]=0;c[(c[l>>2]|0)+192+4>>2]=(c[(c[l>>2]|0)+184+4>>2]|0)-(c[(c[l>>2]|0)+180>
;>2]|0);eh(c[l>>2]|0,c[m>>2]|0);if((b[(c[l>>2]|0)+32>>1]|0)>0){c[q>>
2]=Ta[c[(c[r>>2]|0)+524>>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;Va[c[(c[r>>
;2]|0)+516>>2]&63](c[l>>2]|0);a[J>>0]=0;c[q>>2]=gh(c[l>>2]|0)|0;if(c[q>
;>2]|0)break;oc(c[s>>2]|0);break}if((b[(c[l>>2]|0)+32>>1]|0)!=-1){c[q>>2]=20;break}
c[M>>2]=b[(c[s>>2]|0)+20+2>>1];c[L>>2]=b[(c[s>>2]|0)+20>>1];c[q>
;>2]=Ta[c[(c[r>>2]|0)+528>>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;c[x>>
;2]=c[(c[l>>2]|0)+168>>2];Va[c[(c[r>>2]|0)+516>>2]&63](c[l>>2]|0);a[J>
;>0]=0;if(a[(c[r>>2]|0)+708>>0]|0){c[A>>2]=c[(c[r>>2]|0)+100>>2];G=fh(c[r
>>2]|0,c[m>>2]|0,p,(c[(c[s>>2]|0)+56+28>>2]|0)+4|0)|0;c[q>>2]=G;if(G|0)break;c
[N>>2]=(c[(c[s>>2]|0)+56+32>>2]|0)+(c[(c[s>>2]|0)+20+28>>2]<<5);c[y
x3e;>2]=c[(c[s>>2]|0)+56+28>>2];c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[y>
x3e;2]|0))break;if(e[(c[N>>2]|0)+4>>1]&2|0){G=(c[N>>2]|0)+8|0;c[G>>2]=(c[G>>
;2]|0)+((c[(c[p>>2]|0)+(c[v>>2]<<3)>>2]&65535)<<16>>16);G=(c[N
x3e;>2]|0)+12|0;c[G>>2]=(c[G>>2]|0)+((c[(c[p>>2]|0)+(c[v>>2]<<3)+4>
x3e;2]&65535)<<16>>16)}c[v>>2]=(c[v>>2]|0)+1;c[N>>2]=(c[N>>2]|0
)+32}N=(c[l>>2]|0)+68|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+0<
;<3)>>2]|0);N=(c[l>>2]|0)+68+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v
>>2]|0)+0<<3)+4>>2]|0);N=(c[l>>2]|0)+76|0;c[N>>2]=(c[N>>2]|0)+(c[(c[
p>>2]|0)+((c[v>>2]|0)+1<<3)>>2]|0);N=(c[l>>2]|0)+76+4|0;c[N>>2]=(c[N
>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+1<<3)+4>>2]|0);N=(c[l>>2]|0)+184
|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+2<<3)>>2]|0);N=(c
[l>>2]|0)+184+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+2<<
;3)+4>>2]|0);N=(c[l>>2]|0)+192|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>
;>2]|0)+3<<3)>>2]|0);N=(c[l>>2]|0)+192+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>
;>2]|0)+((c[v>>2]|0)+3<<3)+4>>2]|0);Fb(c[A>>2]|0,c[p>>2]|0);c[p>>
;2]=0}if(!(c[(c[l>>2]|0)+16>>2]&1)){N=Mb(c[(c[l>>2]|0)+68>>2]|0,c[P>>2]|0
)|0;c[(c[l>>2]|0)+68>>2]=N;P=Mb(c[(c[l>>2]|0)+76>>2]|0,c[P>>2]|0)|0;c[(c[l>
;>2]|0)+76>>2]=P;P=Mb(c[(c[l>>2]|0)+184+4>>2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0
)+184+4>>2]=P;Q=Mb(c[(c[l>>2]|0)+192+4>>2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0)+192+4
x3e;>2]=Q}if(c[(c[l>>2]|0)+16>>2]&1024|0){oc(c[s>>2]|0);c[(c[(c[l>>2]|0)+8>
;>2]|0)+72>>2]=1668246896;break}c[O>>2]=0;c[E>>2]=c[M>>2];c[F>>2]=c[(c[s
x3e;>2]|0)+56+28>>2];c[D>>2]=c[(c[s>>2]|0)+20+28>>2];c[I>>2]=c[(c[l>
x3e;2]|0)+24>>2];c[H>>2]=c[(c[l>>2]|0)+28>>2];oc(c[s>>2]|0);c[B>>2]=
0;while(1){if((c[B>>2]|0)>>>0>=(c[F>>2]|0)>>>0)break;c[O>>2]=(c
[(c[s>>2]|0)+20+32>>2]|0)+(c[D>>2]<<5)+(c[B>>2]<<5);Q=(c[l>>
;2]|0)+68|0;c[K>>2]=c[Q>>2];c[K+4>>2]=c[Q+4>>2];Q=K+8|0;P=(c[l>>2]|0)+76|0;c[Q
>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=K+16|0;P=(c[l>>2]|0)+184|0;c[Q>>2
]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=K+24|0;P=(c[l>>2]|0)+192|0;c[Q>>2]=c[P>
x3e;2];c[Q+4>>2]=c[P+4>>2];c[C>>2]=b[(c[s>>2]|0)+20+2>>1];c[q>>2]=ah
(c[l>>2]|0,c[c[O>>2]>>2]|0,(c[n>>2]|0)+1|0,0)|0;if(c[q>>2]|0)break a;c[O>
x3e;2]=(c[(c[s>>2]|0)+20+32>>2]|0)+(c[D>>2]<<5)+(c[B>>2]<<5);if(!(e[(
c[O>>2]|0)+4>>1]&512)){Q=(c[l>>2]|0)+68|0;c[Q>>2]=c[K>>2];c[Q+4>>
;2]=c[K+4>>2];Q=(c[l>>2]|0)+76|0;P=K+8|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>
x3e;2];Q=(c[l>>2]|0)+184|0;P=K+16|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=(c[l
>>2]|0)+192|0;P=K+24|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2]}c[E>>2]=b
[(c[s>>2]|0)+20+2>>1];if((c[E>>2]|0)!=(c[C>>2]|0))lh(c[l>>2]|0,c[O>>
2]|0,c[M>>2]|0,c[C>>2]|0)|0;c[B>>2]=(c[B>>2]|0)+1}c[(c[l>>2]|0)+24>>
2]=c[I>>2];c[(c[l>>2]|0)+28>>2]=c[H>>2];c[(c[l>>2]|0)+168>>2]=c[x>
;>2];if(c[(c[l>>2]|0)+16>>2]&2|0)break;if(!(e[(c[O>>2]|0)+4>>1]&256))break
;if((c[E>>2]|0)>>>0<=(c[M>>2]|0)>>>0)break;mh(c[l>>2]|0,c[M>
;>2]|0,c[L>>2]|0)|0;break}c[(c[l>>2]|0)+36>>2]=0;c[(c[l>>2]|0)+36+8>>2]=0
;c[(c[l>>2]|0)+36+4>>2]=0;c[(c[l>>2]|0)+36+12>>2]=0;if(!(a[o>>0]|0)){c[(c[l>
;>2]|0)+68>>2]=(c[(c[l>>2]|0)+36>>2]|0)-(c[(c[l>>2]|0)+52>>2]|0);c[(c[l
x3e;>2]|0)+68+4>>2]=0;c[(c[l>>2]|0)+76>>2]=(c[(c[l>>2]|0)+68>>2]|0)+(c[(c
[l>>2]|0)+56>>2]|0);c[(c[l>>2]|0)+76+4>>2]=0;c[(c[l>>2]|0)+184>>2]=0
;c[(c[l>>2]|0)+184+4>>2]=(c[(c[l>>2]|0)+176>>2]|0)+(c[(c[l>>2]|0)+36+12>
x3e;2]|0);c[(c[l>>2]|0)+192>>2]=0;c[(c[l>>2]|0)+192+4>>2]=(c[(c[l>>2]|0)+184+4
>>2]|0)-(c[(c[l>>2]|0)+180>>2]|0);eh(c[l>>2]|0,c[m>>2]|0);if(a[(c[c[l>>
;2]>>2]|0)+708>>0]|0){c[z>>2]=c[(c[c[l>>2]>>2]|0)+100>>2];c[q>
x3e;2]=fh(c[c[l>>2]>>2]|0,c[m>>2]|0,p,4)|0;if(c[q>>2]|0)break;O=(c[l>>2]|0)+68
|0;c[O>>2]=(c[O>>2]|0)+(c[c[p>>2]>>2]|0);O=(c[l>>2]|0)+68+4|0;c[O>>2
]=(c[O>>2]|0)+(c[(c[p>>2]|0)+4>>2]|0);O=(c[l>>2]|0)+76|0;c[O>>2]=(c[O>>
;2]|0)+(c[(c[p>>2]|0)+8>>2]|0);O=(c[l>>2]|0)+76+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[
p>>2]|0)+8+4>>2]|0);O=(c[l>>2]|0)+184|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>
;2]|0)+16>>2]|0);O=(c[l>>2]|0)+184+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+16+4
>>2]|0);O=(c[l>>2]|0)+192|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+24>>2
]|0);O=(c[l>>2]|0)+192+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+24+4>>2]|0);Fb(c
[z>>2]|0,c[p>>2]|0);c[p>>2]=0}if(!(c[(c[l>>2]|0)+16>>2]&1)){O=Mb(c[(c[l
x3e;>2]|0)+68>>2]|0,c[P>>2]|0)|0;c[(c[l>>2]|0)+68>>2]=O;P=Mb(c[(c[l>>2]|0
)+76>>2]|0,c[P>>2]|0)|0;c[(c[l>>2]|0)+76>>2]=P;P=Mb(c[(c[l>>2]|0)+184+4>
x3e;2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0)+184+4>>2]=P;Q=Mb(c[(c[l>>2]|0)+192+4>>2]|0
,c[Q>>2]|0)|0;c[(c[l>>2]|0)+192+4>>2]=Q}c[q>>2]=0}}while(0);if(a[J>>0]|0)Va[c[(
c[r>>2]|0)+516>>2]&63](c[l>>2]|0);if(!(a[u>>0]|0)){Q=c[q>>2]|0;i=R;return
Q|0}Ra[c[(c[c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]>>2]|0)+4>>2]&7](c[(c[(c[(
c[r>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,t);Q=c[q>>2]|0;i=R;return Q|0}function
bh(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;j=i;i=i+32|0;g=j+8|0;n=j+4|0;o=j;m=j+18|0;l=j+16|0;h=j+14|0;k=j+12|0;c[
g>>2]=d;c[n>>2]=f;c[o>>2]=c[c[g>>2]>>2];b[m>>1]=0;b[l>>1]=
0;b[h>>1]=0;b[k>>1]=0;ch(c[o>>2]|0,c[n>>2]|0,((c[(c[g>>2]|0)+16>>2]
x26;512|0)!=0^1)&1,m,h);dh(c[o>>2]|0,c[n>>2]|0,((c[(c[g>>2]|0)+16>>2]&512|0)!=
0^1)&1,l,k);c[(c[g>>2]|0)+52>>2]=b[m>>1];c[(c[g>>2]|0)+56>>2]=e[h>
x3e;1];c[(c[g>>2]|0)+176>>2]=b[l>>1];c[(c[g>>2]|0)+180>>2]=e[k>>1];if
(a[(c[g>>2]|0)+64>>0]|0){i=j;return}a[(c[g>>2]|0)+64>>0]=1;c[(c[g>>2]|0)+60>
;>2]=e[h>>1];i=j;return}function ch(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;m=i;i=i+
32|0;k=m+12|0;p=m+8|0;n=m+16|0;o=m+4|0;l=m;c[k>>2]=e;c[p>>2]=f;a[n>>0]=g;c[o>>2]=h;c[l
x3e;>2]=j;Za[c[(c[(c[k>>2]|0)+532>>2]|0)+156>>2]&31](c[k>>2]|0,0,c[p>>
;2]|0,c[o>>2]|0,c[l>>2]|0)|0;if(!(d[n>>0]|0)){i=m;return}if(!(c[(c[k>>2]|0)+468+12>
x3e;2]|0)){i=m;return}b[c[l>>2]>>1]=b[(c[k>>2]|0)+216+10>>1]|0;i=m;return}function dh(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;n=i;i=i+32|0;j=n+12|0;k=n+8|0;o=n+16|0;l=n+4|0;m=n;c[j>
x3e;2]=d;c[k>>2]=e;a[o>>0]=f;c[l>>2]=g;c[m>>2]=h;a[o>>0]=a[o>>0]|0;if
(a[(c[j>>2]|0)+296>>0]|0){Za[c[(c[(c[j>>2]|0)+532>>2]|0)+156>>2]&31](c[j
x3e;>2]|0,1,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;i=n;return}else{b[c[l>>2]>>1
]=0;b[c[m>>2]>>1]=b[(c[j>>2]|0)+68>>1]|0;i=n;return}}function eh(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;q=i;i=i+48|0;g=q+32|0;h=q+28|0;m=q+24|0;n=q+42|0;p=q+40|0;k=q+38|0;j=q+36|0;o=q+8|0;l=q;c[
g>>2]=d;c[h>>2]=f;c[m>>2]=c[c[g>>2]>>2];b[n>>1]=0;b[p>>1]=
0;b[k>>1]=0;b[j>>1]=0;if(!(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)){i=q;return}if
(!(c[(c[c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]>>2]|0)+8>>2]|0)){i=q;return}c[o>
;>2]=c[(c[g>>2]|0)+52>>2];c[o+4>>2]=0;c[o+8>>2]=c[(c[g>>2]|0)+56>>
;2];c[o+12>>2]=0;c[l>>2]=Wa[c[(c[c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]>>
;2]|0)+8>>2]&31](c[(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,c[h>
;>2]|0,0,o)|0;if(c[l>>2]|0){i=q;return}b[n>>1]=c[o>>2];b[k>>1]=c[o+8>>2];
c[(c[g>>2]|0)+52>>2]=b[n>>1];c[(c[g>>2]|0)+56>>2]=e[k>>1];c[(c[g>
;>2]|0)+176>>2]=b[p>>1];c[(c[g>>2]|0)+180>>2]=e[j>>1];if(a[(c[g>>
;2]|0)+64>>0]|0){i=q;return}a[(c[g>>2]|0)+64>>0]=1;c[(c[g>>2]|0)+60>>2]=e[k>
;>1];i=q;return}function fh(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,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;M=i;i=i+128|0;j=M+112|0;N=M+108|0;k=M+104|0;l=M+100|0;m=M+96|0
;G=M+92|0;A=M+88|0;o=M+84|0;p=M+80|0;s=M+76|0;t=M+72|0;H=M+68|0;B=M+64|0;u=M+60|0;v=M+56|0;y=M+52|0;K=M+48|0;x=M+44|0;w=M+40|0;C
=M+36|0;F=M+32|0;E=M+28|0;z=M+24|0;D=M+20|0;q=M+16|0;r=M+12|0;I=M+8|0;J=M+4|0;n=M;c[N>>2]=d;c[k>>2]=f;c[l>
;>2]=g;c[m>>2]=h;c[G>>2]=c[(c[N>>2]|0)+104>>2];c[A>>2]=c[(c[G>>
2]|0)+28>>2];c[o>>2]=c[(c[N>>2]|0)+712>>2];c[K>>2]=0;c[x>>2]=0;c[w
x3e;>2]=0;c[F>>2]=0;c[E>>2]=0;c[z>>2]=0;if((c[o>>2]|0)==0?1:(a[(c[N>>2]|0
)+708>>0]|0)==0){c[j>>2]=6;N=c[j>>2]|0;i=M;return N|0}c[p>>2]=hc(c[A>>2]|0,8,0
,c[m>>2]|0,0,s)|0;do if(!(c[s>>2]|0)){c[c[l>>2]>>2]=c[p>>2];if((c[k>>
;2]|0)>>>0<(c[(c[o>>2]|0)+32>>2]|0)>>>0?(c[(c[(c[o>>2]|0)+36>
;>2]|0)+(c[k>>2]<<2)>>2]|0)!=(c[(c[(c[o>>2]|0)+36>>2]|0)+((c[k>>
;2]|0)+1<<2)>>2]|0):0){N=Kc(c[G>>2]|0,c[(c[(c[o>>2]|0)+36>>2]|0)+(c[k>>
;2]<<2)>>2]|0)|0;c[s>>2]=N;if((N|0)==0?(N=ee(c[G>>2]|0,(c[(c[(c[o>>2]|0)+36>
;>2]|0)+((c[k>>2]|0)+1<<2)>>2]|0)-(c[(c[(c[o>>2]|0)+36>>2]|0)+(c[k>
x3e;2]<<2)>>2]|0)|0)|0,c[s>>2]=N,(N|0)==0):0){c[t>>2]=(c[(c[G>>2]|0)+32>
x3e;2]|0)-(c[c[G>>2]>>2]|0);c[K>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0
,0,s)|0;if(((c[s>>2]|0)==0?(c[x>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0,0,s)|0,(c
[s>>2]|0)==0):0)?(c[w>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0,0,s)|0,(c[s>
x3e;2]|0)==0):0){c[H>>2]=(ie(c[G>>2]|0)|0)&65535;N=c[t>>2]|0;c[B>>2]=N+((ie(c[G>
;>2]|0)|0)&65535);if(c[H>>2]&32768|0){c[u>>2]=(c[(c[G>>2]|0)+32>>2]|0)-(c
[c[G>>2]>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[B>>
;2]|0);c[E>>2]=Ce(c[G>>2]|0,F)|0;c[B>>2]=(c[(c[G>>2]|0)+32>>2]|0)-(c[c[G>
x3e;2]>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[u>>2]|0)}c[v
>>2]=0;a:while(1){if((c[v>>2]|0)>>>0>=(c[H>>2]&4095)>>>0)break
;c[I>>2]=(ie(c[G>>2]|0)|0)&65535;c[J>>2]=(ie(c[G>>2]|0)|0)&65535;b:do if(c[J
x3e;>2]&32768|0){c[y>>2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[c[o>>2]
x3e;>2]|0)>>>0)break b;N=(ie(c[G>>2]|0)|0)<<16>>16<<2;c[(c[K>
x3e;2]|0)+(c[y>>2]<<2)>>2]=N;c[y>>2]=(c[y>>2]|0)+1}}else{if((c[J>>2]
x26;4095)>>>0>=(c[(c[o>>2]|0)+24>>2]|0)>>>0){L=21;break a}N=_(c[J>
x3e;2]&4095,c[c[o>>2]>>2]|0)|0;Ss(c[K>>2]|0,(c[(c[o>>2]|0)+28>>2]|0)+(N
x3c;<2)|0,c[c[o>>2]>>2]<<2|0)|0}while(0);c:do if(c[J>>2]&16384|0){c[y>>
;2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[c[o>>2]>>2]|0)>>>0)break;
N=(ie(c[G>>2]|0)|0)<<16>>16<<2;c[(c[x>>2]|0)+(c[y>>2]<<2)
x3e;>2]=N;c[y>>2]=(c[y>>2]|0)+1}c[y>>2]=0;while(1){if((c[y>>2]|0)>>>
0>=(c[c[o>>2]>>2]|0)>>>0)break c;N=(ie(c[G>>2]|0)|0)<<16>>
16<<2;c[(c[w>>2]|0)+(c[y>>2]<<2)>>2]=N;c[y>>2]=(c[y>>2]|0)+
1}}while(0);c[n>>2]=Be(c[o>>2]|0,c[J>>2]&65535,c[K>>2]|0,c[x>>2]|0,c[w>
;>2]|0)|0;if(!(c[n>>2]|0))c[B>>2]=(c[B>>2]|0)+(c[I>>2]|0);else{c[u>>2]=(c
[(c[G>>2]|0)+32>>2]|0)-(c[c[G>>2]>>2]|0);if(c[J>>2]&8192|0){c[(c[G>
x3e;2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[B>>2]|0);c[z>>2]=Ce(c[G>>2]|0,
C)|0;c[D>>2]=c[z>>2]}else{c[D>>2]=c[E>>2];c[C>>2]=c[F>>2]}c[q>
x3e;2]=De(c[G>>2]|0,(c[C>>2]|0)==0?c[m>>2]|0:c[C>>2]|0)|0;c[r>>2]=De(c[G>
x3e;2]|0,(c[C>>2]|0)==0?c[m>>2]|0:c[C>>2]|0)|0;d:do if(!((c[D>>2]|0)==0|(c[r>>
2]|0)==0|(c[q>>2]|0)==0)){N=(c[D>>2]|0)==(-1|0);c[y>>2]=0;if(N)while(1){if((c[y>>2]|0)
x3e;>>0>=(c[m>>2]|0)>>>0)break d;N=Mb(b[(c[q>>2]|0)+(c[y>>2]<
x3c;1)>>1]|0,c[n>>2]|0)|0;h=(c[p>>2]|0)+(c[y>>2]<<3)|0;c[h>>2]=(c[h
x3e;>2]|0)+N;h=Mb(b[(c[r>>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;N=(c[p>
;>2]|0)+(c[y>>2]<<3)+4|0;c[N>>2]=(c[N>>2]|0)+h;c[y>>2]=(c[y>>2]|
0)+1}else while(1){if((c[y>>2]|0)>>>0>=(c[C>>2]|0)>>>0)break d;N=Mb(b[(c[
q>>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;h=(c[p>>2]|0)+(e[(c[z>
x3e;2]|0)+(c[y>>2]<<1)>>1]<<3)|0;c[h>>2]=(c[h>>2]|0)+N;h=Mb(b[(c[r
x3e;>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;N=(c[p>>2]|0)+(e[(c[z>>
;2]|0)+(c[y>>2]<<1)>>1]<<3)+4|0;c[N>>2]=(c[N>>2]|0)+h;c[y>>
;2]=(c[y>>2]|0)+1}}while(0);if((c[z>>2]|0)!=(-1|0)){Fb(c[A>>2]|0,c[z>>2]|0);c[z>>
;2]=0}Fb(c[A>>2]|0,c[q>>2]|0);c[q>>2]=0;Fb(c[A>>2]|0,c[r>>2]|0);c[r>>
;2]=0;c[B>>2]=(c[B>>2]|0)+(c[I>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2
]>>2]|0)+(c[u>>2]|0)}c[v>>2]=(c[v>>2]|0)+1}if((L|0)==21)c[s>>2]=8;Fb(c[A>
x3e;2]|0,c[K>>2]|0);c[K>>2]=0;Fb(c[A>>2]|0,c[x>>2]|0);c[x>>2]=0;Fb(c[A>
x3e;2]|0,c[w>>2]|0);c[w>>2]=0}ge(c[G>>2]|0)}if(!(c[s>>2]|0))break;Fb(c[A>>2]|0
,c[p>>2]|0);c[p>>2]=0;c[c[l>>2]>>2]=0;break}c[j>>2]=0;N=c[j>>2]|0;i=
M;return N|0}while(0);c[j>>2]=c[s>>2];N=c[j>>2]|0;i=M;return N|0}function gh(d){d=d|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;t=i;i=i+64|0;f=t+48|0;g=t+44|0;k=t+40|0;j=t+36|0;p=t+32|0;o=t+28|0;h=t+24|0;
n=t+20|0;l=t+16|0;q=t+12|0;m=t+8|0;r=t+4|0;s=t;c[g>>2]=d;c[k>>2]=c[(c[g>>2]|0)+12>>2];c[
j>>2]=0;c[p>>2]=(c[k>>2]|0)+56;c[o>>2]=b[(c[p>>2]|0)+2>>1];d=(c[(c[p
>>2]|0)+4>>2]|0)+(c[o>>2]<<3)|0;u=(c[g>>2]|0)+68|0;c[d>>2]=c[u>
x3e;2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)+1<<
;3)|0;u=(c[g>>2]|0)+76|0;c[d>>2]=c[u>>2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>
x3e;2]|0)+4>>2]|0)+((c[o>>2]|0)+2<<3)|0;u=(c[g>>2]|0)+184|0;c[d>>2]=c[u>
x3e;2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)+3<<
;3)|0;u=(c[g>>2]|0)+192|0;c[d>>2]=c[u>>2];c[d+4>>2]=c[u+4>>2];a[(c[(c[p>
x3e;2]|0)+8>>2]|0)+(c[o>>2]|0)>>0]=0;a[(c[(c[p>>2]|0)+8>>2]|0)+((c[o>>
;2]|0)+1)>>0]=0;a[(c[(c[p>>2]|0)+8>>2]|0)+((c[o>>2]|0)+2)>>0]=0;a[(c[(c[p>
;>2]|0)+8>>2]|0)+((c[o>>2]|0)+3)>>0]=0;c[o>>2]=(c[o>>2]|0)+4;if(a[(c[c[g
x3e;>2]>>2]|0)+708>>0]|0){c[n>>2]=c[(c[c[g>>2]>>2]|0)+100>>2];c
[j>>2]=fh(c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+20>>2]|0,h,c[o>>2]|0)|0;if(c
[j>>2]|0){c[f>>2]=c[j>>2];u=c[f>>2]|0;i=t;return u|0}c[l>>2]=0;while(1){if((c[
l>>2]|0)>=(c[o>>2]|0))break;u=(c[(c[p>>2]|0)+4>>2]|0)+(c[l>>2]<<
;3)|0;c[u>>2]=(c[u>>2]|0)+(c[(c[h>>2]|0)+(c[l>>2]<<3)>>2]|0);u=(c[(c
[p>>2]|0)+4>>2]|0)+(c[l>>2]<<3)+4|0;c[u>>2]=(c[u>>2]|0)+(c[(c[h>
;>2]|0)+(c[l>>2]<<3)+4>>2]|0);c[l>>2]=(c[l>>2]|0)+1}Fb(c[n>>2]|
0,c[h>>2]|0);c[h>>2]=0}if(!(c[(c[g>>2]|0)+16>>2]&2)){hh((c[g>>2]|0)+124|0
,(c[k>>2]|0)+56|0,0,0);Ss(c[(c[g>>2]|0)+124+20>>2]|0,c[(c[g>>2]|0)+124+16>>2]|
0,(e[(c[g>>2]|0)+124+8>>1]|0)+4<<3|0)|0}if(!(c[(c[g>>2]|0)+16>>2]&1)){c[q
>>2]=c[(c[p>>2]|0)+4>>2];c[m>>2]=(c[(c[p>>2]|0)+4>>2]|0)+(c[o>
x3e;2]<<3);c[r>>2]=c[(c[(c[g>>2]|0)+4>>2]|0)+44+4>>2];c[s>>2]=c[(c[(
c[g>>2]|0)+4>>2]|0)+44+8>>2];while(1){if((c[q>>2]|0)>>>0>=(c[m>
x3e;2]|0)>>>0)break;u=Mb(c[c[q>>2]>>2]|0,c[r>>2]|0)|0;c[c[q>>2]>>
;2]=u;u=Mb(c[(c[q>>2]|0)+4>>2]|0,c[s>>2]|0)|0;c[(c[q>>2]|0)+4>>2]=u;c[q>
x3e;2]=(c[q>>2]|0)+8}u=(c[g>>2]|0)+68|0;s=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-
4<<3)|0;c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];u=(c[g>>2]|0)+76|0;s=(c[(
c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-3<<3)|0;c[u>>2]=c[s>>2];c[u+4>
x3e;2]=c[s+4>>2];u=(c[g>>2]|0)+184|0;s=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-2
x3c;<3)|0;c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];u=(c[g>>2]|0)+192|0;s=(c[(c
[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-1<<3)|0;c[u>>2]=c[s>>2];c[u+4>
x3e;2]=c[s+4>>2]}if(!(c[(c[g>>2]|0)+16>>2]&2)){u=(c[g>>2]|0)+124+8|0;b[u>>
;1]=(e[u>>1]|0)+4;c[j>>2]=ih(c[g>>2]|0,0)|0}c[f>>2]=c[j>>2];u=c[f>>2
]|0;i=t;return u|0}function hh(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;l=g+8|0;j=g+4|0;k=
g;c[h>>2]=a;c[l>>2]=d;c[j>>2]=e;c[k>>2]=f;b[(c[h>>2]|0)+8>>1]=(b[(c[
l>>2]|0)+2>>1]|0)-(c[j>>2]|0);b[(c[h>>2]|0)+10>>1]=(b[c[l>>2]>
x3e;1]|0)-(c[k>>2]|0);c[(c[h>>2]|0)+12>>2]=(c[(c[l>>2]|0)+20>>2]|0)+(c[j>
x3e;2]<<3);c[(c[h>>2]|0)+16>>2]=(c[(c[l>>2]|0)+4>>2]|0)+(c[j>>2]<
;<3);c[(c[h>>2]|0)+20>>2]=(c[(c[l>>2]|0)+24>>2]|0)+(c[j>>2]<<3);
c[(c[h>>2]|0)+24>>2]=(c[(c[l>>2]|0)+8>>2]|0)+(c[j>>2]|0);c[(c[h>>2]|
0)+28>>2]=(c[(c[l>>2]|0)+12>>2]|0)+(c[k>>2]<<1);b[(c[h>>2]|0)+32>
;>1]=c[j>>2];i=g;return}function ih(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,q=0,r=0;r=i;i=i+64|0
;l=r+44|0;m=r+40|0;h=r+49|0;q=r+36|0;g=r+32|0;k=r+28|0;o=r+48|0;p=r+24|0;j=r+20|0;n=r;c[m>>2]=b;a[h>>0]=f;c[
q>>2]=(c[m>>2]|0)+124;c[k>>2]=c[(c[(c[m>>2]|0)+8>>2]|0)+140>>2];c[g
x3e;>2]=c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-4<<3)>
x3e;2];c[g>>2]=((c[g>>2]|0)+32&-64)-(c[g>>2]|0);if(c[g>>2]|0)jh(e[(c[q>>2
]|0)+8>>1]|0,c[(c[q>>2]|0)+16>>2]|0,c[g>>2]|0,0);if((c[k>>2]|0)>>>
;0>0)Ss(c[(c[q>>2]|0)+12>>2]|0,c[(c[q>>2]|0)+16>>2]|0,e[(c[q>>2]|0)+8>
;>1]<<3|0)|0;f=(c[(c[m>>2]|0)+160>>2]|0)+284|0;b=(c[(c[m>>2]|0)+4>>2]|0)+
172|0;g=f+68|0;do{c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0}while((f|0)<(g|0));f=c[m>>2]|0;if(a[h>
x3e;0]|0){c[(c[f+160>>2]|0)+216+4>>2]=65536;c[(c[(c[m>>2]|0)+160>>2]|0)+216+8>>
;2]=65536;Ss(c[(c[q>>2]|0)+20>>2]|0,c[(c[q>>2]|0)+16>>2]|0,e[(c[q>>2]|0)+8>
;>1]<<3|0)|0}else{c[(c[(c[m>>2]|0)+160>>2]|0)+216+4>>2]=c[(c[f+4>>2]|0)+44
+4>>2];c[(c[(c[m>>2]|0)+160>>2]|0)+216+8>>2]=c[(c[(c[m>>2]|0)+4>>2]|
0)+44+8>>2]}c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-3<<3
)>>2]=(c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-3<<3)>
;>2]|0)+32&-64;c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<
;3)+4>>2]=(c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<3)+
4>>2]|0)+32&-64;if((c[k>>2]|0)>>>0>0){c[j>>2]=c[(c[m>>2]|0)+12
x3e;>2];j=(c[j>>2]|0)+56|0;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>
;>2]=c[j+8>>2];c[n+12>>2]=c[j+12>>2];c[n+16>>2]=c[j+16>>2];c[p>>
;2]=Xg(c[(c[m>>2]|0)+160>>2]|0,3,c[(c[(c[m>>2]|0)+160>>2]|0)+392>>2]|0,c[k>
;>2]|0)|0;if(c[p>>2]|0){c[l>>2]=c[p>>2];q=c[l>>2]|0;i=r;return q|0}a[(c[(c[m>
x3e;2]|0)+160>>2]|0)+560>>0]=a[h>>0]|0;f=(c[(c[m>>2]|0)+160>>2]|0)+144|0;b=c[q
>>2]|0;g=f+36|0;do{c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0}while((f|0)<(g|0));if(c[(c[m>>2]|
0)+16>>2]&1|0)f=0;else f=(d[(c[(c[m>>2]|0)+4>>2]|0)+292>>0]|0)!=0;a[o>>0]=
f&1;c[p>>2]=kh(c[(c[m>>2]|0)+160>>2]|0,a[o>>0]|0)|0;if(c[p>>2]|0?d[(c[(c[
m>>2]|0)+160>>2]|0)+561>>0]|0:0){c[l>>2]=c[p>>2];q=c[l>>2]|0;i=r;return
q|0}p=c[n+8>>2]|0;a[p>>0]=a[p>>0]|(c[(c[(c[m>>2]|0)+160>>2]|0)+284+56>
x3e;2]<<5|4)}if(!(a[(c[m>>2]|0)+65>>0]|0)){p=(c[m>>2]|0)+68|0;o=(c[(c[q>>2]|0)+
16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-4<<3)|0;c[p>>2]=c[o>>2];c[p+4>
;>2]=c[o+4>>2];p=(c[m>>2]|0)+76|0;o=(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|
0)+8>>1]|0)-3<<3)|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];p=(c[m>
x3e;2]|0)+184|0;o=(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-2<<3)|0;c[
p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];p=(c[m>>2]|0)+192|0;q=(c[(c[q>>2]|
0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<3)|0;c[p>>2]=c[q>>2];c[p+4
x3e;>2]=c[q+4>>2]}c[l>>2]=0;q=c[l>>2]|0;i=r;return q|0}function jh(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;l=i;i=i+32|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[f>>2]=a;c[g>>2]=b;c[
h>>2]=d;c[j>>2]=e;a:do if(c[h>>2]|0){c[k>>2]=0;while(1){if((c[k>>2]|0)>
x3e;>0>=(c[f>>2]|0)>>>0)break a;a=(c[g>>2]|0)+(c[k>>2]<<3)|0;c[
a>>2]=(c[a>>2]|0)+(c[h>>2]|0);c[k>>2]=(c[k>>2]|0)+1}}while(0);if(!(c[j>
x3e;2]|0)){i=l;return}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=(c[f>>2]|0)>
x3e;>0)break;a=(c[g>>2]|0)+(c[k>>2]<<3)+4|0;c[a>>2]=(c[a>>2]|0)+(c[j>
;>2]|0);c[k>>2]=(c[k>>2]|0)+1}i=l;return}function kh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16
|0;g=k+8|0;h=k+4|0;j=k+12|0;f=k;c[h>>2]=d;a[j>>0]=e;d=Zg(c[h>>2]|0,3,0)|0;c[f>>2]=d;if(d
|0){c[g>>2]=c[f>>2];j=c[g>>2]|0;i=k;return j|0}else{e=(c[h>>2]|0)+36|0;f=(c[h>>
;2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(d|0));e=(c[h>>2]|0)+72|
0;f=(c[h>>2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(d|0));e=(c[h
x3e;>2]|0)+108|0;f=(c[h>>2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)
x3c;(d|0));b[(c[h>>2]|0)+284+60>>1]=1;b[(c[h>>2]|0)+284+62>>1]=1;b[(c[h>>2]|0)+
284+64>>1]=1;b[(c[h>>2]|0)+284+10>>1]=16384;b[(c[h>>2]|0)+284+10+2>>1]=0;d=(c[
h>>2]|0)+284+14|0;f=(c[h>>2]|0)+284+10|0;b[d>>1]=b[f>>1]|0;b[d+2>>1]=b[f+2>
;>1]|0;d=(c[h>>2]|0)+284+6|0;f=(c[h>>2]|0)+284+10|0;b[d>>1]=b[f>>1]|0;b[d+2>
x3e;1]=b[f+2>>1]|0;c[(c[h>>2]|0)+284+28>>2]=1;c[(c[h>>2]|0)+284+20>>2]=1;c[(c[
h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+428>>2]=0;a[j>>0]=a[j>>0]|0;c[g>
;>2]=Ta[c[(c[c[h>>2]>>2]|0)+688>>2]&63](c[h>>2]|0)|0;j=c[g>>2]|0;i=k
;return j|0}return 0}function lh(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;E=i;i=i+80|0;l=E+72|0;m=E+68|0;n=E+64|0;o=E+60|0;p=E+56|0;r=E+52|0;q=E+48|0;x=E+44|0;s=E+76|0;A=E+40|0
;C=E+36|0;k=E+32|0;t=E+28|0;u=E+24|0;y=E+20|0;z=E+16|0;v=E+12|0;w=E+8|0;B=E+4|0;D=E;c[m>>2]=f;c[n>>2]=g;c[o
x3e;>2]=h;c[p>>2]=j;c[r>>2]=c[(c[m>>2]|0)+12>>2];c[q>>2]=c[(c[r>>
;2]|0)+20+4>>2];c[x>>2]=b[(c[r>>2]|0)+20+2>>1];a[s>>0]=e[(c[n>>2]|0)+
4>>1]&200;a:do if(a[s>>0]|0){c[k>>2]=c[p>>2];while(1){if((c[k>>2]|0)>
;>>0>=(c[x>>2]|0)>>>0)break a;Lb((c[q>>2]|0)+(c[k>>2]<<3)|
0,(c[n>>2]|0)+16|0);c[k>>2]=(c[k>>2]|0)+1}}while(0);k=c[(c[n>>2]|0)+8>>2]|0;do
if(e[(c[n>>2]|0)+4>>1]&2|0){c[A>>2]=k;c[C>>2]=c[(c[n>>2]|0)+12>>
;2];if(!((c[A>>2]|0)!=0|(c[C>>2]|0)!=0)){c[l>>2]=0;D=c[l>>2]|0;i=E;return D|0}if(d[s>
;>0]|0?e[(c[n>>2]|0)+4>>1]&2048|0:0){z=Mb(c[(c[n>>2]|0)+16>>2]|0,c[(c[n>
x3e;2]|0)+16>>2]|0)|0;c[v>>2]=Zb(z+(Mb(c[(c[n>>2]|0)+16+4>>2]|0,c[(c[n>>2]|0)+
16+4>>2]|0)|0)|0)|0;z=Mb(c[(c[n>>2]|0)+16+12>>2]|0,c[(c[n>>2]|0)+16+12>>2]|0)|
0;c[w>>2]=Zb(z+(Mb(c[(c[n>>2]|0)+16+8>>2]|0,c[(c[n>>2]|0)+16+8>>2]|0)|0)|0)|0;
c[A>>2]=Mb(c[A>>2]|0,c[v>>2]|0)|0;c[C>>2]=Mb(c[C>>2]|0,c[w>>2]|0)|0}
if((c[(c[m>>2]|0)+16>>2]&1|0)==0?(c[B>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+44+4
x3e;>2],c[D>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+44+8>>2],c[A>>2]=Mb(c[A>
x3e;2]|0,c[B>>2]|0)|0,c[C>>2]=Mb(c[C>>2]|0,c[D>>2]|0)|0,e[(c[n>>2]|0)+4>
x3e;1]&4|0):0){c[A>>2]=(c[A>>2]|0)+32&-64;c[C>>2]=(c[C>>2]|0)+32&-64}}else
{c[t>>2]=k;c[u>>2]=c[(c[n>>2]|0)+12>>2];c[t>>2]=(c[t>>2]|0)+(c[o>
;>2]|0);c[u>>2]=(c[u>>2]|0)+(c[p>>2]|0);if((c[t>>2]|0)>>>0<(c[p
>>2]|0)>>>0?(c[u>>2]|0)>>>0<(c[x>>2]|0)>>>0:0){c
[y>>2]=(c[(c[r>>2]|0)+20+4>>2]|0)+(c[t>>2]<<3);c[z>>2]=(c[(c[r>
x3e;2]|0)+20+4>>2]|0)+(c[u>>2]<<3);c[A>>2]=(c[c[y>>2]>>2]|0)-(c[c[z
x3e;>2]>>2]|0);c[C>>2]=(c[(c[y>>2]|0)+4>>2]|0)-(c[(c[z>>2]|0)+4>>
;2]|0);break}c[l>>2]=21;D=c[l>>2]|0;i=E;return D|0}while(0);if((c[A>>2]|0)!=0|(c[C>>2]|0
)!=0)jh((c[x>>2]|0)-(c[p>>2]|0)|0,(c[q>>2]|0)+(c[p>>2]<<3)|0,c[A>>2]|
0,c[C>>2]|0);c[l>>2]=0;D=c[l>>2]|0;i=E;return D|0}function mh(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;u=i;i=i+48|0;k=u+32|0;l=u+28|0;m=u+24|0;n=u+20|0;o=u+16|0;j=u+12|0;p=u+8|0;s=u+4|0;r=u+
38|0;q=u+36|0;t=u;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[j>>2]=(c[(c[l>>2]|0)+12>
;>2]|0)+20;if(((b[(c[j>>2]|0)+2>>1]|0)+4|0)!=0?((b[(c[(c[l>>2]|0)+12>>2]|0)+20+2>
;>1]|0)+(b[(c[(c[l>>2]|0)+12>>2]|0)+56+2>>1]|0)+((b[(c[j>>2]|0)+2>>1]|0)+
4)|0)>>>0>(c[(c[(c[l>>2]|0)+12>>2]|0)+4>>2]|0)>>>0:0)f=kc(c[(c[
l>>2]|0)+12>>2]|0,(b[(c[j>>2]|0)+2>>1]|0)+4|0,0)|0;else f=0;c[o>>2]=f;if(c[o
x3e;>2]|0){c[k>>2]=c[o>>2];t=c[k>>2]|0;i=u;return t|0}g=(c[(c[j>>2]|0)+4>>
;2]|0)+(b[(c[j>>2]|0)+2>>1]<<3)|0;h=(c[l>>2]|0)+68|0;c[g>>2]=c[h>>2];
c[g+4>>2]=c[h+4>>2];g=(c[(c[j>>2]|0)+4>>2]|0)+((b[(c[j>>2]|0)+2>>1]|
0)+1<<3)|0;h=(c[l>>2]|0)+76|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];g=(
c[(c[j>>2]|0)+4>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+2<<3)|0;h=(c[l>>2]|0
)+184|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];g=(c[(c[j>>2]|0)+4>>2]|0
)+((b[(c[j>>2]|0)+2>>1]|0)+3<<3)|0;h=(c[l>>2]|0)+192|0;c[g>>2]=c[h>>
2];c[g+4>>2]=c[h+4>>2];a[(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>>2]|0)+2>>1
]|0)>>0]=0;a[(c[(c[j>>2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+1)>>0]=
0;a[(c[(c[j>>2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+2)>>0]=0;a[(c[(c[j>
x3e;2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+3)>>0]=0;c[s>>2]=c[(c[l>>
;2]|0)+24>>2];j=Kc(c[s>>2]|0,c[(c[l>>2]|0)+168>>2]|0)|0;c[o>>2]=j;if((j|0)==0?(
b[r>>1]=Pc(c[s>>2]|0,o)|0,(c[o>>2]|0)==0):0){b[q>>1]=b[(c[c[l>>2]>>2
]|0)+260+26>>1]|0;f=e[r>>1]|0;if((e[r>>1]|0)>(e[q>>1]|0)){if((f|0)>(c[(c[l>
;>2]|0)+28>>2]|0)){c[k>>2]=22;t=c[k>>2]|0;i=u;return t|0}c[t>>2]=c[(c[(c[l>>
;2]|0)+160>>2]|0)+388>>2];c[o>>2]=Wg(c[(c[(c[l>>2]|0)+160>>2]|0)+8>>
2]|0,t,1,(c[(c[l>>2]|0)+160>>2]|0)+392|0,e[r>>1]|0)|0;c[(c[(c[l>>2]|0)+160>>2]|
0)+388>>2]=c[t>>2]&65535;if(c[o>>2]|0){c[k>>2]=c[o>>2];t=c[k>>2
]|0;i=u;return t|0}}else if(!f){c[k>>2]=0;t=c[k>>2]|0;i=u;return t|0}t=Rc(c[s>>2]|0,c[(c[(c[l>
;>2]|0)+160>>2]|0)+392>>2]|0,e[r>>1]|0)|0;c[o>>2]=t;if(t|0){c[k>>2]=c[o
x3e;>2];t=c[k>>2]|0;i=u;return t|0}c[(c[(c[l>>2]|0)+8>>2]|0)+136>>2]=c[(c[(c[l>
;>2]|0)+160>>2]|0)+392>>2];c[(c[(c[l>>2]|0)+8>>2]|0)+140>>2]=e[r>>
;1];hh((c[l>>2]|0)+124|0,(c[(c[l>>2]|0)+12>>2]|0)+20|0,c[m>>2]|0,c[n>>2]|0);c[
p>>2]=c[m>>2];while(1){if((c[p>>2]|0)>>>0>=(e[(c[l>>2]|0)+124+8>
;>1]|0)>>>0)break;t=(c[(c[l>>2]|0)+124+24>>2]|0)+(c[p>>2]|0)|0;a[t>>
0]=d[t>>0]&-25;c[p>>2]=(c[p>>2]|0)+1}t=(c[l>>2]|0)+124+8|0;b[t>>1]=(e[t
x3e;>1]|0)+4;c[k>>2]=ih(c[l>>2]|0,1)|0;t=c[k>>2]|0;i=u;return t|0}c[k>>2]=c[o>
x3e;2];t=c[k>>2]|0;i=u;return t|0}function nh(a,f){a=a|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;y=i;i=i+96|0;m=y+88|0;n=y+84|0;o=y+80|0;h=y+64|0;r=y+60|0;x=y+56|0;s=y+52|0;j=y+48|0;g=y+44|0;k=y+40|0;w=y+
36|0;p=y+32|0;t=y+28|0;u=y+24|0;v=y+8|0;q=y;c[n>>2]=a;c[o>>2]=f;c[r>>2]=c[c[n>>2]>
x3e;2];c[s>>2]=c[(c[n>>2]|0)+8>>2];c[j>>2]=c[(c[n>>2]|0)+4>>2];c[x
x3e;>2]=65536;if(!(c[(c[n>>2]|0)+16>>2]&1))c[x>>2]=c[(c[j>>2]|0)+12+8>>
;2];if((c[(c[s>>2]|0)+72>>2]|0)!=1668246896)_d((c[s>>2]|0)+108|0,h);else{a=(c[n>>2]|0)+36
|0;c[h>>2]=c[a>>2];c[h+4>>2]=c[a+4>>2];c[h+8>>2]=c[a+8>>2];c[h+12>
;>2]=c[a+12>>2]}c[g>>2]=c[(c[n>>2]|0)+60>>2];if(c[(c[r>>2]|0)+468+12>
;>2]|0?(c[(c[n>>2]|0)+16>>2]&512|0)==0:0)c[g>>2]=e[(c[r>>2]|0)+216+10>>
;1];c[(c[s>>2]|0)+56>>2]=c[g>>2];c[(c[s>>2]|0)+24+8>>2]=c[h>>2];c[(c
[s>>2]|0)+24+12>>2]=c[h+12>>2];c[(c[s>>2]|0)+24+16>>2]=(c[(c[n>>2]|0
)+76>>2]|0)-(c[(c[n>>2]|0)+68>>2]|0);if(((c[(c[r>>2]|0)+468+12>>2]|0)==0?(c[(c
[n>>2]|0)+16>>2]&2|0)==0:0)?(c[k>>2]=oh(c[r>>2]|0,e[(c[j>>2]|0)+12>
x3e;1]|0,c[o>>2]|0)|0,c[k>>2]|0):0)c[(c[s>>2]|0)+24+16>>2]=d[c[k>>2]>>
;0]<<6;c[(c[s>>2]|0)+24>>2]=(c[h+8>>2]|0)-(c[h>>2]|0);c[(c[s>>2]|0)+
24+4>>2]=(c[h+12>>2]|0)-(c[h+4>>2]|0);do if(d[(c[r>>2]|0)+296>>0]|0?(e[(c[r>
;>2]|0)+300+34>>1]|0)>0:0){c[w>>2]=((Vb((c[(c[n>>2]|0)+184+4>>2]|0)-(c[h+12>
;>2]|0)|0,c[x>>2]|0)|0)&65535)<<16>>16;if((c[(c[n>>2]|0)+184+4>>2]|0
)<=(c[(c[n>>2]|0)+192+4>>2]|0)){c[p>>2]=0;break}else{c[p>>2]=(Vb((c[(c[n>>
;2]|0)+184+4>>2]|0)-(c[(c[n>>2]|0)+192+4>>2]|0)|0,c[x>>2]|0)|0)&65535;break}}else l
=18;while(0);if((l|0)==18){c[t>>2]=((Vb((c[h+12>>2]|0)-(c[h+4>>2]|0)|0,c[x>>2]|0)|0)&
;65535)<<16>>16;g=c[r>>2]|0;if((e[(c[r>>2]|0)+368>>1]|0)!=65535)c[p>>
;2]=(b[g+368+70>>1]|0)-(b[(c[r>>2]|0)+368+72>>1]|0);else c[p>>2]=(b[g+216+4>>1
]|0)-(b[(c[r>>2]|0)+216+6>>1]|0);c[w>>2]=((c[p>>2]|0)-(c[t>>2]|0)|0)/2|0}c[u
x3e;>2]=c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2];do if(c[u>>2]|0?c[(c[c[u>>2]
x3e;>2]|0)+8>>2]|0:0){c[v>>2]=0;c[v+4>>2]=c[w>>2];c[v+8>>2]=c[p>>
;2];c[q>>2]=Wa[c[(c[c[u>>2]>>2]|0)+8>>2]&31](c[(c[u>>2]|0)+4>>2
]|0,c[o>>2]|0,1,v)|0;if(!(c[q>>2]|0)){c[w>>2]=c[v+4>>2];c[p>>2]=c[v+8>>
;2];break}c[m>>2]=c[q>>2];x=c[m>>2]|0;i=y;return x|0}while(0);c[(c[s>>2]|0)+60>>
;2]=c[p>>2];if(!(c[(c[n>>2]|0)+16>>2]&1)){c[w>>2]=Mb(c[w>>2]|0,c[x>
x3e;2]|0)|0;c[p>>2]=Mb(c[p>>2]|0,c[x>>2]|0)|0}c[(c[s>>2]|0)+24+20>>2]=(c[(c[s
x3e;>2]|0)+24+8>>2]|0)-((c[(c[s>>2]|0)+24+16>>2]|0)/2|0);c[(c[s>>2]|0)+24+24>
x3e;2]=c[w>>2];c[(c[s>>2]|0)+24+28>>2]=c[p>>2];c[m>>2]=0;x=c[m>>2]|0
;i=y;return x|0}function oh(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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;h=o+
16|0;j=o+12|0;m=o+8|0;l=o+4|0;k=o;c[f>>2]=a;c[g>>2]=b;c[h>>2]=e;c[m>>2]=0;c[l>>
;2]=c[(c[f>>2]|0)+752>>2];c[k>>2]=(c[(c[f>>2]|0)+740>>2]|0)+8;c[j>>2
]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[f>>2]|0)+748>>2]|0)>>>0){
n=7;break}if((d[(c[(c[f>>2]|0)+756>>2]|0)+(c[j>>2]|0)>>0]|0|0)==(c[g>>2]|0))break
;c[j>>2]=(c[j>>2]|0)+1}if((n|0)==7){n=c[m>>2]|0;i=o;return n|0}c[h>>2]=(c[h>>2
]|0)+2;if((c[h>>2]|0)>>>0>=(c[l>>2]|0)>>>0){n=c[m>>2]|0;i=o;return
n|0}n=(c[k>>2]|0)+(_(c[j>>2]|0,c[l>>2]|0)|0)|0;c[m>>2]=n+(c[h>>2]|0);n=c[m>
;>2]|0;i=o;return n|0}function ph(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;l=i;i=i+32|0;m=l+20|0;f=
l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>
;2]=c[m>>2];c[k>>2]=c[(c[j>>2]|0)+532>>2];c[c[h>>2]>>2]=0;c[(c[h>
;>2]|0)+4>>2]=0;if(!(c[k>>2]|0)){i=l;return 0}m=Oa[c[(c[k>>2]|0)+128>>2]&63](c
[j>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;c[c[h>>2]>>2]=m;i=l;return 0}function qh(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,s=0,t=0,u=0,v=0;t=i;i=i+48|0;v=t+24|0;j=t+20|0;k=t+16
|0;u=t+12|0;l=t+8|0;r=t+4|0;p=t;o=t+36|0;s=t+34|0;m=t+32|0;q=t+30|0;n=t+28|0;c[v>>2]=b;c[j>>2]=d;c[k>
x3e;2]=f;c[u>>2]=g;c[l>>2]=h;c[p>>2]=c[v>>2];a[o>>0]=((c[u>>2]&
512|0)!=0^1)&1;b=(c[u>>2]&16|0)!=0;c[r>>2]=0;if(b){while(1){if((c[r>>2]|0)>>
x3e;0>=(c[k>>2]|0)>>>0)break;dh(c[p>>2]|0,(c[j>>2]|0)+(c[r>>2]|0)|0,
a[o>>0]|0,s,m);c[(c[l>>2]|0)+(c[r>>2]<<2)>>2]=e[m>>1];c[r>>
;2]=(c[r>>2]|0)+1}i=t;return 0}else{while(1){if((c[r>>2]|0)>>>0>=(c[k>>2]|0)
x3e;>>0)break;ch(c[p>>2]|0,(c[j>>2]|0)+(c[r>>2]|0)|0,a[o>>0]|0,q,n);c[(c[l>
;>2]|0)+(c[r>>2]<<2)>>2]=e[n>>1];c[r>>2]=(c[r>>2]|0)+1}i=t;return
0}return 0}function rh(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;m=i;i=i+32|0;d=m+28|0;e=m+24|0;f=m+20|0;l=m+16|
0;g=m+12|0;k=m+8|0;h=m+4|0;j=m;c[e>>2]=a;c[f>>2]=b;c[l>>2]=c[e>>2];c[g>>2]=0;do
if(c[(c[c[e>>2]>>2]|0)+8>>2]&2|0){c[k>>2]=c[c[e>>2]>>2];c[h>
;>2]=c[(c[k>>2]|0)+532>>2];c[g>>2]=Oa[c[(c[h>>2]|0)+148>>2]&63](c[k
x3e;>2]|0,c[f>>2]|0,j)|0;if(c[g>>2]|0){c[(c[l>>2]|0)+112>>2]=-1;break}c[d>>
;2]=sh(c[e>>2]|0,c[j>>2]|0)|0;l=c[d>>2]|0;i=m;return l|0}while(0);Ed(c[c[e>>2]>>
;2]|0,c[f>>2]|0);if(c[(c[c[e>>2]>>2]|0)+8>>2]&1|0)c[g>>2]=th(c[l>>
;2]|0)|0;c[d>>2]=c[g>>2];l=c[d>>2]|0;i=m;return l|0}function sh(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;l=i;i=i+32|0;d=l+24|0;e=l+20|0;j=l+16|0;k=l+12|0;f=l+8|0;h=l+4|0;g=l;c[d>>2]=a;c[e>>2]=b;
c[j>>2]=c[c[d>>2]>>2];c[k>>2]=c[d>>2];c[f>>2]=0;c[(c[k>>2]|
0)+112>>2]=c[e>>2];if(c[(c[c[d>>2]>>2]|0)+8>>2]&1|0){Cd(c[c[d>>
2]>>2]|0,c[e>>2]|0);th(c[k>>2]|0)|0;k=c[f>>2]|0;i=l;return k|0}c[h>>2]=c[(c[j
x3e;>2]|0)+532>>2];c[g>>2]=(c[d>>2]|0)+12;c[f>>2]=Oa[c[(c[h>>2]|0)+152>
;>2]&63](c[j>>2]|0,c[e>>2]|0,c[g>>2]|0)|0;if(!(c[f>>2]|0)){k=c[f>>2]|
0;i=l;return k|0}c[(c[k>>2]|0)+112>>2]=-1;k=c[f>>2]|0;i=l;return k|0}function th(d){d=d|0;var f=0,
g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;g=l+16|0;h=l+12|0;f=l+8|0;j=l+4|0;k=l;c[h>>2]=d;c[j>>2]=0;a[(c[h>
x3e;2]|0)+72+36>>0]=0;c[f>>2]=c[c[h>>2]>>2];c[k>>2]=(c[h>>2]|0)+44;d
=c[k>>2]|0;m=(c[h>>2]|0)+12|0;c[d>>2]=c[m>>2];c[d+4>>2]=c[m+4>>2];c[
d+8>>2]=c[m+8>>2];c[d+12>>2]=c[m+12>>2];c[d+16>>2]=c[m+16>>2];c[d+20
>>2]=c[m+20>>2];c[d+24>>2]=c[m+24>>2];if((e[c[k>>2]>>1]|0)>=1?(
e[(c[k>>2]|0)+2>>1]|0)>=1:0){if(e[(c[f>>2]|0)+160+16>>1]&8|0){m=Vb(e[c[k>
x3e;2]>>1]<<6,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[k>>2]|0)+4>>2]=m;m=Vb(e
[(c[k>>2]|0)+2>>1]<<6,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[k>>2]|0)+8>
;>2]=m;m=(Mb(b[(c[f>>2]|0)+70>>1]|0,c[(c[k>>2]|0)+8>>2]|0)|0)+32&-64;c[(c[k>
;>2]|0)+12>>2]=m;m=(Mb(b[(c[f>>2]|0)+72>>1]|0,c[(c[k>>2]|0)+8>>2]|0)|0)+32
&-64;c[(c[k>>2]|0)+16>>2]=m;m=(Mb(b[(c[f>>2]|0)+74>>1]|0,c[(c[k>>2]|0)+8
x3e;>2]|0)|0)+32&-64;c[(c[k>>2]|0)+20>>2]=m;m=(Mb(b[(c[f>>2]|0)+76>>1]|0,c[(c[
k>>2]|0)+4>>2]|0)|0)+32&-64;c[(c[k>>2]|0)+24>>2]=m}f=c[k>>2]|0;if((e[c[k
x3e;>2]>>1]|0)>=(e[(c[k>>2]|0)+2>>1]|0)){c[(c[h>>2]|0)+72+16>>2]=c[f
+4>>2];b[(c[h>>2]|0)+72+8>>1]=b[c[k>>2]>>1]|0;c[(c[h>>2]|0)+72>
x3e;2]=65536;m=xb(e[(c[k>>2]|0)+2>>1]|0,65536,e[c[k>>2]>>1]|0)|0;c[(c[h>>2]|0)+
72+4>>2]=m}else{c[(c[h>>2]|0)+72+16>>2]=c[f+8>>2];b[(c[h>>2]|0)+72+8>>
;1]=b[(c[k>>2]|0)+2>>1]|0;m=xb(e[c[k>>2]>>1]|0,65536,e[(c[k>>2]|0)+2>>
;1]|0)|0;c[(c[h>>2]|0)+72>>2]=m;c[(c[h>>2]|0)+72+4>>2]=65536}a[(c[h>>2]|0)+301
>>0]=0;if(!(c[j>>2]|0))a[(c[h>>2]|0)+72+36>>0]=1;c[g>>2]=c[j>>2];m=c
[g>>2]|0;i=l;return m|0}c[g>>2]=151;m=c[g>>2]|0;i=l;return m|0}function uh(a){a=a|0;var b=0,d=0;b=
i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return 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[d>>2]=c[d>>2];i=b;return}function wh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=
0;j=i;i=i+32|0;h=j+16|0;d=j+12|0;e=j+8|0;g=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=qc(740,c[e>
x3e;2]|0)|0;if(c[f>>2]|0){c[h>>2]=c[f>>2];h=c[h>>2]|0;i=j;return h|0}if(!(c[d>>
;2]|0)){c[h>>2]=0;h=c[h>>2]|0;i=j;return h|0}c[g>>2]=Wc(c[(c[d>>2]|0)+4>>2]|0,
11340)|0;if(c[g>>2]|0)d=Ya[c[(c[c[g>>2]>>2]|0)+32>>2]&127](c[g>>2]|0,c[e
x3e;>2]|0)|0;else d=0;c[h>>2]=d;h=c[h>>2]|0;i=j;return h|0}function xh(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;k=n+12|0;j=n+8|0;l=n+4|0;m=n;c[f>>2]=d;c[g>>2]=
e;c[h>>2]=c[(c[f>>2]|0)+692>>2];c[k>>2]=0;do if(c[h>>2]|0?(c[(c[h>>2
]|0)+2060>>2]|0)==0:0){c[j>>2]=(c[h>>2]|0)+1324;c[m>>2]=c[(c[f>>2]|0)+100>
;>2];c[l>>2]=bc(c[m>>2]|0,32,k)|0;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}else{m=yh
(c[h>>2]|0,c[c[j>>2]>>2]|0)|0;c[c[l>>2]>>2]=m;m=yh(c[h>>2]|0,c[(c[j
x3e;>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+4>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+
12>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+16>>2
]|0)|0;c[(c[l>>2]|0)+12>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+20>>2]|0)|0;c[(c[l
x3e;>2]|0)+16>>2]=m;c[(c[l>>2]|0)+20>>2]=c[(c[j>>2]|0)+28>>2];a[(c[l>
;>2]|0)+24>>0]=a[(c[j>>2]|0)+24>>0]|0;b[(c[l>>2]|0)+26>>1]=c[(c[j>
x3e;2]|0)+32>>2];b[(c[l>>2]|0)+28>>1]=c[(c[j>>2]|0)+36>>2];c[(c[h>>2
]|0)+2060>>2]=c[l>>2];break}}while(0);if(!(c[h>>2]|0)){m=c[k>>2]|0;i=n;return m|0}m=c[g
x3e;>2]|0;l=c[(c[h>>2]|0)+2060>>2]|0;c[m>>2]=c[l>>2];c[m+4>>2]=c[l+4>
;>2];c[m+8>>2]=c[l+8>>2];c[m+12>>2]=c[l+12>>2];c[m+16>>2]=c[l+16>>
;2];c[m+20>>2]=c[l+20>>2];c[m+24>>2]=c[l+24>>2];c[m+28>>2]=c[l+28>>2
];m=c[k>>2]|0;i=n;return m|0}function yh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>
;>2]=a;c[f>>2]=b;do if((c[f>>2]|0)!=65535){a=c[e>>2]|0;if((c[f>>2]|0)>>
x3e;0>390){c[d>>2]=zh(a,(c[f>>2]|0)-391|0)|0;break}if(c[a+2056>>2]|0){c[d>>2]=Ta[c[(
c[(c[e>>2]|0)+2056>>2]|0)+20>>2]&63](c[f>>2]|0)|0;break}else{c[d>>2]=0;break
}}else c[d>>2]=0;while(0);i=g;return c[d>>2]|0}function zh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f
+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if((c[e>>2]|0)>>>0>=(c[(c[d>>2]|0)+1312
>>2]|0)>>>0){a=0;i=f;return a|0}a=c[(c[(c[d>>2]|0)+1316>>2]|0)+(c[e>>2]
x3c;<2)>>2]|0;i=f;return a|0}function Ah(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]&512|0)>0|0}function Bh(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[(c[e>>2]|0)+692>>2];i=d;return c[(c[b>>2]|0)+1304>>2]|0}
function Ch(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;p=i;i=i+32|0;q=p+24|0;h=p+20|0;j=p+16|0;k=p
+12|0;m=p+8|0;n=p+4|0;o=p+28|0;l=p;c[q>>2]=a;c[h>>2]=d;c[j>>2]=f;c[k>>2]=g;c[m>>
;2]=c[(c[q>>2]|0)+692>>2];if(!(c[(c[m>>2]|0)+2056>>2]|0)){c[l>>2]=2;q=c[l>
;>2]|0;i=p;return q|0}b[o>>1]=b[(c[(c[m>>2]|0)+1152+8>>2]|0)+(c[h>>2]<<1)
x3e;>1]|0;c[n>>2]=yh(c[m>>2]|0,e[o>>1]|0)|0;if(c[n>>2]|0)pe(c[j>>2]|0,c[n
>>2]|0,c[k>>2]|0)|0;c[l>>2]=0;q=c[l>>2]|0;i=p;return q|0}function Dh(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,q=0,r=0;o=i;i=i+48|0;m=o+36|0;r=o+32|0;f=o+28|0;g=o+24|0;h=o+20|0;k=o+16|0;j=o+12|0;l=o
+40|0;n=o+8|0;q=o+4|0;p=o;c[r>>2]=a;c[f>>2]=d;c[g>>2]=c[(c[r>>2]|0)+692>>2];c[
h>>2]=(c[g>>2]|0)+1152;c[q>>2]=c[(c[r>>2]|0)+96>>2];c[p>>2]=Vd(c[q
x3e;>2]|0,71003)|0;c[k>>2]=c[p>>2];if(!(c[k>>2]|0)){c[m>>2]=0;r=c[m>>2]|0
;i=o;return r|0}c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0>=(c[(c[g>>2]|0)+12>
x3e;2]|0)>>>0){f=12;break}b[l>>1]=b[(c[(c[h>>2]|0)+8>>2]|0)+(c[n>>2]<
;<1)>>1]|0;if((e[l>>1]|0|0)>390)c[j>>2]=zh(c[g>>2]|0,(e[l>>1]|0)-391
|0)|0;else c[j>>2]=Ta[c[(c[k>>2]|0)+20>>2]&63](e[l>>1]|0)|0;if(c[j>>2]|0?(
Kr(c[f>>2]|0,c[j>>2]|0)|0)==0:0){f=10;break}c[n>>2]=(c[n>>2]|0)+1}if((f|0)==10){c[m>
;>2]=c[n>>2];r=c[m>>2]|0;i=o;return r|0}else if((f|0)==12){c[m>>2]=0;r=c[m>>2]|0;i=
o;return r|0}return 0}function Eh(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;l=i;i=i+32|0;d=l+28|0;e=l+24|0;f=l+20
|0;g=l+16|0;m=l+12|0;h=l+8|0;k=l+4|0;j=l;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[d>>2];c[g>
x3e;2]=0;c[m>>2]=c[c[f>>2]>>2];c[h>>2]=c[(c[(c[m>>2]|0)+96>>2]|0)+4
x3e;>2];c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;if((c[(c[f>>2]|0)+12>
x3e;2]|0)==828){m=c[g>>2]|0;i=l;return m|0}if((c[(c[f>>2]|0)+12>>2]|0)==868){m=c[g>>2]|0
;i=l;return m|0}c[k>>2]=Wc(c[h>>2]|0,11340)|0;c[j>>2]=Vd(c[k>>2]|0,11426)|0;if(!(c[j>
;>2]|0)){m=c[g>>2]|0;i=l;return m|0}if(!(c[c[j>>2]>>2]|0)){m=c[g>>2]|0;i=l;return m
|0}c[g>>2]=Ya[c[c[j>>2]>>2]&127](c[d>>2]|0,c[e>>2]|0)|0;m=c[g>>
2]|0;i=l;return m|0}function Fh(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;f=b+4|0;e=b;c[d>>2]=a;c
[g>>2]=c[c[d>>2]>>2];c[f>>2]=c[(c[g>>2]|0)+692>>2];c[e>>2]=(
c[f>>2]|0)+116;c[(c[d>>2]|0)+16>>2]=(c[e>>2]|0)+524;i=b;return 0}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)+16>>2]=0;i=b;return}function Hh(a,b){a=a|0;b=b|0
;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=b;c[g>>2]=0;if((c[f>
x3e;2]|0)>>>0>=256){g=c[g>>2]|0;i=h;return g|0}c[g>>2]=e[(c[(c[d>>2]|0)+16>
;>2]|0)+(c[f>>2]<<1)>>1];g=c[g>>2]|0;i=h;return g|0}function Ih(a,b){a=a|0;b=b|0;var
d=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;f=l+16|0;g=l+12|0;j=l+8|0;d=l+4|0;h=l;c[f>>2]=a;c[g>>2]=b;c[j>
;>2]=0;c[d>>2]=c[c[g>>2]>>2];c[c[g>>2]>>2]=0;if((c[d>>2]|0)>
;>>0>=255){k=c[j>>2]|0;i=l;return k|0}c[h>>2]=(c[d>>2]|0)+1;while(1){if((c[h>
x3e;2]|0)>>>0>=256){k=7;break}c[j>>2]=e[(c[(c[f>>2]|0)+16>>2]|0)+(c[h>>
;2]<<1)>>1];d=c[h>>2]|0;if(c[j>>2]|0)break;c[h>>2]=d+1}if((k|0)==7){k=c[j>
;>2]|0;i=l;return k|0}c[c[g>>2]>>2]=d;k=c[j>>2]|0;i=l;return k|0}function Jh(a){a=a|0;var b=0
,d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;b=j+24|0;d=j+20|0;f=j+16|0;g=j+12|0;e=j+8|0;k=j+4|0;h=j;c[d>>2]=a;c[f>
x3e;2]=c[c[d>>2]>>2];c[g>>2]=c[(c[f>>2]|0)+100>>2];c[e>>2]=c[(c[f>
;>2]|0)+692>>2];c[k>>2]=(c[e>>2]|0)+1152;c[h>>2]=c[(c[e>>2]|0)+2056>
x3e;2];if(c[(c[k>>2]|0)+8>>2]|0){c[b>>2]=Sa[c[(c[h>>2]|0)+4>>2]&3](c[g>
;>2]|0,c[d>>2]|0,c[(c[e>>2]|0)+12>>2]|0,105,0,c[f>>2]|0)|0;k=c[b>>2]|0;i=
j;return k|0}else{c[b>>2]=163;k=c[b>>2]|0;i=j;return k|0}return 0}function Kh(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;k=d+16|0;h=d+12|0;g=d+8|0;j=d+4|0;f=d;c[k>>2]=a;c[h>>2]=b;c[g>>2]=c[(c
[k>>2]|0)+692>>2];c[j>>2]=(c[g>>2]|0)+1152;c[f>>2]=e[(c[(c[j>>2]|0)+
8>>2]|0)+(c[h>>2]<<1)>>1];b=yh(c[g>>2]|0,c[f>>2]|0)|0;i=d;return b|0
}function Lh(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]=c[c[d>>
;2]>>2];c[e>>2]=c[(c[f>>2]|0)+100>>2];Fb(c[e>>2]|0,c[(c[d>>2]|0)+20
x3e;>2]|0);c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>2]=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,j=0;d=i;i=i+32|0;f=d+16|0;e=d+12|0;j=d+8|0;h=d+4|0;g=d;c[f>>2]=a;c[e>>
2]=b;c[j>>2]=c[c[f>>2]>>2];c[h>>2]=c[(c[j>>2]|0)+692>>2];c[g>
x3e;2]=c[(c[h>>2]|0)+2056>>2];a=Ya[c[(c[g>>2]|0)+8>>2]&127](c[f>>2]|0,c[e
>>2]|0)|0;i=d;return a|0}function Nh(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;e=d+12|0;j=d+8
|0;h=d+4|0;g=d;c[f>>2]=a;c[e>>2]=b;c[j>>2]=c[c[f>>2]>>2];c[h>>2]=c[(
c[j>>2]|0)+692>>2];c[g>>2]=c[(c[h>>2]|0)+2056>>2];a=Ya[c[(c[g>>2]|0)+
12>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Oh(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;m=i;i=i+32|0;n=m+24|0;f=m+20|0;g=m+16|0;h=m+12|0;l=m+8|0;j=m+4|0;k=m;c[n>>2]=a;c
[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[l>>2]=0;c[j>>2]=c[(c[n>>2]|0)+692>
;>2];if(!(c[j>>2]|0)){n=c[l>>2]|0;i=m;return n|0}c[k>>2]=(c[j>>2]|0)+1324;if((c[(c[
k>>2]|0)+128>>2]|0)==65535){c[l>>2]=6;n=c[l>>2]|0;i=m;return n|0}if(c[f>>2]|0){
if(!(c[(c[j>>2]|0)+2064>>2]|0)){n=yh(c[j>>2]|0,c[(c[k>>2]|0)+128>>2]|0)|0;c[(c
[j>>2]|0)+2064>>2]=n}c[c[f>>2]>>2]=c[(c[j>>2]|0)+2064>>2]}if(c[g>
;>2]|0){if(!(c[(c[j>>2]|0)+2068>>2]|0)){n=yh(c[j>>2]|0,c[(c[k>>2]|0)+132>>
;2]|0)|0;c[(c[j>>2]|0)+2068>>2]=n}c[c[g>>2]>>2]=c[(c[j>>2]|0)+2068>>
2]}if(!(c[h>>2]|0)){n=c[l>>2]|0;i=m;return n|0}c[c[h>>2]>>2]=c[(c[k>>2]|0)+136
>>2];n=c[l>>2]|0;i=m;return n|0}function Ph(b,d){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;k=j+16
|0;e=j+12|0;h=j+8|0;f=j+4|0;g=j;c[k>>2]=b;c[e>>2]=d;c[h>>2]=0;c[f>>2]=c[(c[k>>
2]|0)+692>>2];a[c[e>>2]>>0]=0;if(!(c[f>>2]|0)){k=c[h>>2]|0;i=j;return k|0}c[g
x3e;>2]=(c[f>>2]|0)+1324;if((c[(c[g>>2]|0)+128>>2]|0)==65535){k=c[h>>2]|0;i=j;return
k|0}a[c[e>>2]>>0]=1;k=c[h>>2]|0;i=j;return k|0}function Qh(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;m=i;i=i+32|0;n=m+24|0;f=m+20|0;g=m+16|0;l=m+12|0;j=m+8|0;h=m+4|0;k=m;c[n>>2]=a;c[f>>2
]=b;c[g>>2]=d;c[l>>2]=0;c[j>>2]=c[(c[n>>2]|0)+692>>2];do if(c[j>>2]|
0){c[k>>2]=(c[j>>2]|0)+1324;if((c[(c[k>>2]|0)+128>>2]|0)==65535){c[l>>2]=6;break
}if((c[f>>2]|0)>>>0>(c[(c[j>>2]|0)+12>>2]|0)>>>0){c[l>>
;2]=6;break}c[h>>2]=e[(c[(c[j>>2]|0)+1152+8>>2]|0)+(c[f>>2]<<1)>>1];
if(c[g>>2]|0)c[c[g>>2]>>2]=c[h>>2]}while(0);i=m;return c[l>>2]|0}
function rm(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;L=i;i=i+128|0;N=L+116|0;M=L+112|0;j=L+108|0;D=L+104|0;v=L+100|0;g=L+96|0;h=L+92|0;y=L+88|0;
H=L+84|0;w=L+80|0;p=L+76|0;s=L+72|0;k=L+68|0;r=L+64|0;n=L+60|0;l=L+56|0;t=L+52|0;x=L+48|0;u=L+44|0;m=L+40|0;o=L+36|0;q=L+32|0;C=
L+28|0;z=L+24|0;E=L+20|0;G=L+16|0;F=L+120|0;A=L+12|0;I=L+8|0;B=L+4|0;J=L;c[N>>2]=e;c[M>>2]=f;c[j>>
2]=(c[N>>2]|0)+48+((c[M>>2]|0)*28|0);c[D>>2]=0;c[v>>2]=c[c[N>>2]>>2];
c[g>>2]=(c[(c[N>>2]|0)+112>>2]|0)+40+((c[M>>2]|0)*396|0);c[h>>2]=c[(c[j>
x3e;2]|0)+8>>2];c[y>>2]=(c[h>>2]|0)+((c[c[j>>2]>>2]|0)*52|0);c[(c[j>>
;2]|0)+12>>2]=0;f=c[N>>2]|0;if(!(c[M>>2]|0))f=c[f+4>>2]|0;else f=c[f+12>>2]|0;
c[w>>2]=f;c[p>>2]=Mb(c[(c[g>>2]|0)+204>>2]|0,c[w>>2]|0)|0;if((c[p>>2
]|0)>16)c[p>>2]=Vb(16,c[w>>2]|0)|0;else c[p>>2]=c[(c[g>>2]|0)+204>>2];c[H
>>2]=c[h>>2];while(1){if((c[H>>2]|0)>>>0>=(c[y>>2]|0)>>>
;0)break;c[s>>2]=0;c[k>>2]=65535;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[(c[j>
x3e;2]|0)+12>>2]|0))break;c[n>>2]=(c[(c[j>>2]|0)+20>>2]|0)+((c[r>>2]|0)*48|0);
do if((a[(c[n>>2]|0)+13>>0]|0)==(a[(c[H>>2]|0)+1>>0]|0)){c[l>>2]=(b[(c[H>
x3e;2]|0)+2>>1]|0)-(b[c[n>>2]>>1]|0);if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>
;>2]|0);if((c[l>>2]|0)<(c[p>>2]|0)?(c[l>>2]|0)<(c[k>>2]|0):0){c[t>
x3e;2]=c[(c[H>>2]|0)+20>>2];if(c[t>>2]|0){c[x>>2]=c[(c[n>>2]|0)+40>>
2];c[m>>2]=0;do{c[u>>2]=c[(c[x>>2]|0)+20>>2];if(c[u>>2]|0){if((b[(c[t>>
;2]|0)+2>>1]|0)>(b[(c[u>>2]|0)+2>>1]|0))f=(b[(c[t>>2]|0)+2>>1]|0)-(b[(c[u
>>2]|0)+2>>1]|0)|0;else f=(b[(c[u>>2]|0)+2>>1]|0)-(b[(c[t>>2]|0)+2>>
1]|0)|0;c[m>>2]=f;if((c[m>>2]|0)>=(c[p>>2]|0))break}N=c[(c[x>>2]|0)+16>>2
]|0;c[x>>2]=N}while((N|0)!=(c[(c[n>>2]|0)+40>>2]|0));if((c[m>>2]|0)>=(c[p>>
;2]|0))break}c[k>>2]=c[l>>2];c[s>>2]=c[n>>2]}}while(0);c[r>>2]=(c[r>>
;2]|0)+1}if(c[s>>2]|0){c[(c[H>>2]|0)+16>>2]=c[(c[s>>2]|0)+40>>2];c[(c[(c[s>
;>2]|0)+44>>2]|0)+16>>2]=c[H>>2];c[(c[s>>2]|0)+44>>2]=c[H>>2]}else
{c[D>>2]=Yl(c[j>>2]|0,b[(c[H>>2]|0)+2>>1]|0,a[(c[H>>2]|0)+1>>0]|0,c[
v>>2]|0,o)|0;if(c[D>>2]|0){K=69;break}f=c[o>>2]|0;e=f+48|0;do{c[f>>2]=0;f=f+4|0}while((f
|0)<(e|0));c[(c[o>>2]|0)+40>>2]=c[H>>2];c[(c[o>>2]|0)+44>>2]=c[H>>
;2];b[c[o>>2]>>1]=b[(c[H>>2]|0)+2>>1]|0;N=Mb(b[(c[H>>2]|0)+2>>1]|0,c
[w>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=N;c[(c[o>>2]|0)+4>>2]=N;c[(c[H>>2]|0
)+16>>2]=c[H>>2];a[(c[o>>2]|0)+13>>0]=a[(c[H>>2]|0)+1>>0]|0}c[H>
;>2]=(c[H>>2]|0)+52}if((K|0)==69){N=c[D>>2]|0;i=L;return N|0}c[q>>2]=c[(c[j>>2]|0)+
20>>2];c[C>>2]=(c[q>>2]|0)+((c[(c[j>>2]|0)+12>>2]|0)*48|0);c[z>>2]=c
[q>>2];while(1){if((c[z>>2]|0)>>>0>=(c[C>>2]|0)>>>0)break;c[H
x3e;>2]=c[(c[z>>2]|0)+40>>2];if(c[H>>2]|0)do{c[(c[H>>2]|0)+12>>2]=c[z>
;>2];c[H>>2]=c[(c[H>>2]|0)+16>>2]}while((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>
;>2]|0));c[z>>2]=(c[z>>2]|0)+48}c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)
x3e;>>0>=(c[C>>2]|0)>>>0)break;c[E>>2]=0;c[G>>2]=0;c[H>>2]=
c[(c[z>>2]|0)+40>>2];do{if(d[c[H>>2]>>0]&1|0)c[E>>2]=(c[E>>2]|0
)+1;else c[G>>2]=(c[G>>2]|0)+1;if(c[(c[H>>2]|0)+24>>2]|0)f=(c[(c[(c[H>>2]|0)+24
>>2]|0)+12>>2]|0)!=(c[z>>2]|0);else f=0;a[F>>0]=f&1;if(!(!(c[(c[H>>2]|0)+
20>>2]|0)?!(d[F>>0]|0):0))K=47;do if((K|0)==47){K=0;c[A>>2]=c[(c[z>>2]|0)+24>>
2];c[I>>2]=c[(c[H>>2]|0)+20>>2];if(a[F>>0]|0){c[I>>2]=c[(c[H>>2]|0)+
24>>2];c[A>>2]=c[(c[z>>2]|0)+28>>2]}if(c[A>>2]|0){c[B>>2]=(b[c[z>
;>2]>>1]|0)-(b[c[A>>2]>>1]|0);if((c[B>>2]|0)<0)c[B>>2]=0-(c[B>
x3e;2]|0);if((b[(c[H>>2]|0)+2>>1]|0)>(b[(c[I>>2]|0)+2>>1]|0))f=(b[(c[H>>2
]|0)+2>>1]|0)-(b[(c[I>>2]|0)+2>>1]|0)|0;else f=(b[(c[I>>2]|0)+2>>1]|0)-(b[(c[H
>>2]|0)+2>>1]|0)|0;c[J>>2]=f;if((c[J>>2]|0)<(c[B>>2]|0))c[A>>2]=
c[(c[I>>2]|0)+12>>2]}else c[A>>2]=c[(c[I>>2]|0)+12>>2];f=c[A>>2]|0;e
=c[z>>2]|0;if(a[F>>0]|0){c[e+28>>2]=f;N=(c[A>>2]|0)+12|0;a[N>>0]=d[N>>
;0]|2;break}else{c[e+24>>2]=f;break}}while(0);c[H>>2]=c[(c[H>>2]|0)+16>>2]}while((c[H>
;>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));a[(c[z>>2]|0)+12>>0]=0;if((c[E>>2]|0)
x3e;0?(c[E>>2]|0)>=(c[G>>2]|0):0){N=(c[z>>2]|0)+12|0;a[N>>0]=d[N>>0]|1}if
(c[(c[z>>2]|0)+28>>2]|0?c[(c[z>>2]|0)+24>>2]|0:0)c[(c[z>>2]|0)+28>>2
]=0;c[z>>2]=(c[z>>2]|0)+48}N=c[D>>2]|0;i=L;return N|0}function sm(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;A=i;i=i+80|0;u=A+72|0;h=A+68|0;g=A+64|0;z=A+60|0;y=A+56|0;r
=A+52|0;x=A+48|0;j=A+44|0;l=A+40|0;s=A+36|0;k=A+32|0;o=A+28|0;p=A+24|0;q=A+20|0;m=A+16|0;n=A+12|0;t=A+8|0;w=A+4|0;v=A;c[u>
x3e;2]=e;c[h>>2]=f;c[g>>2]=(c[u>>2]|0)+48+((c[h>>2]|0)*28|0);c[z>>2]=c[(c[g>
;>2]|0)+20>>2];c[y>>2]=(c[z>>2]|0)+((c[(c[g>>2]|0)+12>>2]|0)*48|0);c[j>
;>2]=0;c[l>>2]=0;c[s>>2]=0;c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>
x3e;>0>=(c[y>>2]|0)>>>0)break;do if(!(d[(c[x>>2]|0)+12>>0]&4)){c[k
x3e;>2]=c[(c[x>>2]|0)+24>>2];if(!(c[k>>2]|0)){c[s>>2]=(c[s>>2]|0)+1;break
}if((c[k>>2]|0)>>>0<(c[x>>2]|0)>>>0){tm(c[u>>2]|0,c[h>>
;2]|0,c[k>>2]|0,c[x>>2]|0);g=(c[x>>2]|0)+12|0;a[g>>0]=d[g>>0]|4;break}f=c[u>
;>2]|0;e=c[x>>2]|0;g=c[k>>2]|0;if((c[h>>2]|0)==1|(c[j>>2]|0)!=0)wm(f,e,g,c[l>
x3e;2]|0,c[h>>2]|0)|0;else c[l>>2]=wm(f,e,g,0,0)|0;c[j>>2]=c[x>>2];g=(c[x>>2]|
0)+12|0;a[g>>0]=d[g>>0]|4;g=(c[k>>2]|0)+12|0;a[g>>0]=d[g>>0]|4}while(0);c[x>
;>2]=(c[x>>2]|0)+48}c[r>>2]=((c[y>>2]|0)-(c[z>>2]|0)|0)/48|0;if((c[h>>2]|
0)==0?(c[r>>2]|0)==6|(c[r>>2]|0)==12:0){f=c[z>>2]|0;if((c[r>>2]|0)==6){c[o>>2]=
f;c[p>>2]=(c[z>>2]|0)+96;c[q>>2]=(c[z>>2]|0)+192}else{c[o>>2]=f+48;c[p>
x3e;2]=(c[z>>2]|0)+240;c[q>>2]=(c[z>>2]|0)+432}c[m>>2]=(c[(c[p>>2]|0)+4>
x3e;2]|0)-(c[(c[o>>2]|0)+4>>2]|0);c[n>>2]=(c[(c[q>>2]|0)+4>>2]|0)-(c[(c[p>
;>2]|0)+4>>2]|0);c[t>>2]=(c[m>>2]|0)-(c[n>>2]|0);if((c[t>>2]|0)<0)c[
t>>2]=0-(c[t>>2]|0);if(((c[(c[o>>2]|0)+24>>2]|0)==((c[o>>2]|0)+48|0)?(c[(c[p
x3e;>2]|0)+24>>2]|0)==((c[p>>2]|0)+48|0):0)?((c[t>>2]|0)<8?(c[(c[q>>2]|0)+24
x3e;>2]|0)==((c[q>>2]|0)+48|0):0):0){c[l>>2]=(c[(c[q>>2]|0)+8>>2]|0)-((c[(c[p>
x3e;2]|0)+8>>2]<<1)-(c[(c[o>>2]|0)+8>>2]|0));t=(c[q>>2]|0)+8|0;c[t>>
2]=(c[t>>2]|0)-(c[l>>2]|0);if(c[(c[q>>2]|0)+24>>2]|0){t=(c[(c[q>>2]|0)+24>
;>2]|0)+8|0;c[t>>2]=(c[t>>2]|0)-(c[l>>2]|0)}if((c[r>>2]|0)==12){t=(c[z>>2
]|0)+384+8|0;c[t>>2]=(c[t>>2]|0)-(c[l>>2]|0);t=(c[z>>2]|0)+528+8|0;c[t>>2]=(c[
t>>2]|0)-(c[l>>2]|0)}t=(c[q>>2]|0)+12|0;a[t>>0]=d[t>>0]|4;if(c[(c[q>>
;2]|0)+24>>2]|0){t=(c[(c[q>>2]|0)+24>>2]|0)+12|0;a[t>>0]=d[t>>0]|4}}}if(!(c[s
x3e;>2]|0)){i=A;return}c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>>>0>=(c[y
x3e;>2]|0)>>>0)break;if((d[(c[x>>2]|0)+12>>0]&4|0)==0?c[(c[x>>2]|0)+28>
;>2]|0:0){xm(c[u>>2]|0,c[(c[x>>2]|0)+28>>2]|0,c[x>>2]|0);t=(c[x>>2]|0)+12
|0;a[t>>0]=d[t>>0]|4;c[s>>2]=(c[s>>2]|0)+-1}c[x>>2]=(c[x>>2]|0)+48}if
(!(c[s>>2]|0)){i=A;return}c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>>>0>
;=(c[y>>2]|0)>>>0)break;do if(!(d[(c[x>>2]|0)+12>>0]&4)){t=c[x>>2]|0
;c[v>>2]=t;c[w>>2]=t;do{t=(c[w>>2]|0)+-48|0;c[w>>2]=t;if(t>>>0<(c[z
x3e;>2]|0)>>>0)break}while(!(d[(c[w>>2]|0)+12>>0]&4|0));do{t=(c[v>>2]|0)+
48|0;c[v>>2]=t;if(t>>>0>=(c[y>>2]|0)>>>0)break}while(!(d[(c[v>>
2]|0)+12>>0]&4|0));if((c[w>>2]|0)>>>0<(c[z>>2]|0)>>>0?(c[v
>>2]|0)>>>0>=(c[y>>2]|0)>>>0:0)break;if((c[w>>2]|0)>>
x3e;0<(c[z>>2]|0)>>>0){xm(c[u>>2]|0,c[v>>2]|0,c[x>>2]|0);break}if((c
[v>>2]|0)>>>0>=(c[y>>2]|0)>>>0){xm(c[u>>2]|0,c[w>>2]|
0,c[x>>2]|0);break}f=c[(c[w>>2]|0)+8>>2]|0;e=c[x>>2]|0;if((b[c[v>>2]>>
;1]|0)==(b[c[w>>2]>>1]|0)){c[e+8>>2]=f;break}else{t=f+(xb((b[e>>1]|0)-(b[c[w>>
2]>>1]|0)|0,(c[(c[v>>2]|0)+8>>2]|0)-(c[(c[w>>2]|0)+8>>2]|0)|0,(b[c[v>>
;2]>>1]|0)-(b[c[w>>2]>>1]|0)|0)|0)|0;c[(c[x>>2]|0)+8>>2]=t;break}}while(0);c[x
>>2]=(c[x>>2]|0)+48}i=A;return}function tm(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;
g=i;i=i+32|0;n=g+20|0;m=g+16|0;k=g+12|0;h=g+8|0;l=g+4|0;j=g;c[n>>2]=a;c[m>>2]=b;c[k>>2]=e;c[h>
;>2]=f;c[l>>2]=(c[(c[h>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+4>>2]|0);c[j>
x3e;2]=um(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,d[(c[k>>2]|0)+12>>0]|0,d[(c[h>>
;2]|0)+12>>0]|0)|0;c[(c[h>>2]|0)+8>>2]=(c[(c[k>>2]|0)+8>>2]|0)+(c[j>>
;2]|0);i=g;return}function um(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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+44|0;k=p+40|0;s=p+36|0;g=p+32|0;r=p+28|0;q=p+24|0;t=p+20|0;h=p+16|0;n=p+12|0;o=p+8|0;j=p+4|0;l=p;c[k>>
2]=a;c[s>>2]=b;c[g>>2]=d;c[r>>2]=e;c[q>>2]=f;c[t>>2]=c[(c[k>>2]|0)+112
>>2];c[h>>2]=(c[t>>2]|0)+40+((c[s>>2]|0)*396|0);c[n>>2]=c[g>>2];c[o
x3e;>2]=0;c[j>>2]=(c[s>>2]|0)==1&1;c[r>>2]=c[r>>2];c[q>>2]=c[q>
x3e;2];if(!(c[(c[k>>2]|0)+108>>2]&4)){c[m>>2]=c[g>>2];t=c[m>>2]|0;i=p;return
t|0}if((c[n>>2]|0)<0){c[n>>2]=0-(c[g>>2]|0);c[o>>2]=1}if(c[j>>2]|0?!(c[(
c[k>>2]|0)+108>>2]&2|0):0)b=9;else b=7;do if((b|0)==7){if((c[j>>2]|0)==0?(c[(c[k>>2
]|0)+108>>2]&1|0)==0:0){b=9;break}c[n>>2]=vm((c[h>>2]|0)+12|0,c[(c[h>>2]|0)+8>
x3e;2]|0,c[n>>2]|0)|0;if(c[j>>2]|0)if((c[n>>2]|0)>=64){c[n>>2]=(c[n>>2]|0
)+16&-64;break}else{c[n>>2]=64;break}g=c[n>>2]|0;if(c[(c[k>>2]|0)+108>>2]&8|0)
if((g|0)<64){c[n>>2]=64;break}else{c[n>>2]=(c[n>>2]|0)+32&-64;break}e=c[n>>2]|
0;if((g|0)<48){c[n>>2]=e+64>>1;break}g=c[n>>2]|0;if((e|0)<128){c[n>>2]=g+22&
;-64;break}else{c[n>>2]=g+32&-64;break}}while(0);do if((b|0)==9){if((c[(c[h>>2]|0)+8>>2]|0)
x3e;>>0>0?(t=(c[n>>2]|0)-(c[(c[h>>2]|0)+12+4>>2]|0)|0,((((c[n>>2]|0)-(c[(
c[h>>2]|0)+12+4>>2]|0)|0)<0?0-t|0:t)|0)<40):0){t=c[(c[h>>2]|0)+12+4>>2]|0;c[n
x3e;>2]=t;c[n>>2]=(c[n>>2]|0)<48?48:t;break}g=c[n>>2]|0;if((c[n>>2]|0)<54
){c[n>>2]=(c[n>>2]|0)+((54-g|0)/2|0);break}if((g|0)<192){c[l>>2]=c[n>>2]&63;c[
n>>2]=c[n>>2]&-64;g=c[l>>2]|0;if((c[l>>2]|0)<10){c[n>>2]=(c[n>
x3e;2]|0)+g;break}if((g|0)<22){c[n>>2]=(c[n>>2]|0)+10;break}g=c[l>>2]|0;if((c[l>>2]|
0)<42){c[n>>2]=(c[n>>2]|0)+g;break}if((g|0)<54){c[n>>2]=(c[n>>2]|0)+54;break}else
{c[n>>2]=(c[n>>2]|0)+(c[l>>2]|0);break}}}while(0);if(c[o>>2]|0)c[n>>2]=0-(c[n
x3e;>2]|0);c[m>>2]=c[n>>2];t=c[m>>2]|0;i=p;return t|0}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,l=0,m=0,n=0,o=0;o=i;i=i+48|0;e=o+32|0;f=o+28|0;m=o+24|0;j=o+20|0;g=o+16|0;n=o+12|0;l=o+8|0;k=o+4|0;h=o;
c[e>>2]=a;c[f>>2]=b;c[m>>2]=d;c[g>>2]=98;c[n>>2]=c[m>>2];c[j>
x3e;2]=0;while(1){if((c[j>>2]|0)>=(c[f>>2]|0))break;c[k>>2]=c[(c[e>>2]|0)+((c[j>
;>2]|0)*12|0)+4>>2];c[h>>2]=(c[m>>2]|0)-(c[k>>2]|0);if((c[h>>2]|0)<0
)c[h>>2]=0-(c[h>>2]|0);if((c[h>>2]|0)<(c[g>>2]|0)){c[g>>2]=c[h>>
;2];c[n>>2]=c[k>>2]}c[j>>2]=(c[j>>2]|0)+1}c[l>>2]=(c[n>>2]|0)+32&
;-64;f=c[m>>2]|0;e=c[l>>2]|0;if((c[m>>2]|0)>=(c[n>>2]|0)){if((f|0)>=(e+48|0)){
n=c[m>>2]|0;i=o;return n|0}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}else{if((f|0)<
;=(e-48|0)){n=c[m>>2]|0;i=o;return n|0}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}return
0}function wm(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,y=0,
z=0;z=i;i=i+80|0;h=z+64|0;u=z+60|0;v=z+56|0;j=z+52|0;k=z+48|0;q=z+44|0;w=z+40|0;p=z+36|0;x=z+32|0;l=z+28|0;m=z+24|0;s=z+20|0;n=z
+16|0;t=z+12|0;y=z+8|0;o=z+4|0;r=z;c[h>>2]=a;c[u>>2]=b;c[v>>2]=e;c[j>>2]=f;c[k>>
;2]=g;c[r>>2]=64;do if(!(c[(c[h>>2]|0)+108>>2]&4)){if((d[(c[u>>2]|0)+12>>
0]|0)&1|0?(d[(c[v>>2]|0)+12>>0]|0)&1|0:0)if((c[k>>2]|0)==1){c[r>>2]=55;break}else
{c[r>>2]=49;break}if((c[k>>2]|0)==1){c[r>>2]=61;break}else{c[r>>2]=59;break}}while(0);c[
q>>2]=(c[(c[v>>2]|0)+4>>2]|0)-(c[(c[u>>2]|0)+4>>2]|0);c[w>>2]=um(c[h
>>2]|0,c[k>>2]|0,c[q>>2]|0,d[(c[u>>2]|0)+12>>0]|0,d[(c[v>>2]|0)+12
x3e;>0]|0)|0;c[p>>2]=(((c[(c[u>>2]|0)+4>>2]|0)+(c[(c[v>>2]|0)+4>>2]|0)|0)/
2|0)+(c[j>>2]|0);c[x>>2]=(c[p>>2]|0)-((c[w>>2]|0)/2|0);c[l>>2]=(c[x>>
;2]|0)+(c[w>>2]|0);c[m>>2]=(c[x>>2]|0)-(c[x>>2]&-64);c[n>>2]=(c[l>
x3e;2]|0)-(c[l>>2]&-64);c[s>>2]=64-(c[m>>2]|0);c[t>>2]=64-(c[n>>2]|0);c[y
>>2]=0;do if(!((c[m>>2]|0)==0|(c[n>>2]|0)==0)){if((c[w>>2]|0)<=(c[r>>2]|0
)){if((c[n>>2]|0)>=(c[w>>2]|0))break;if((c[s>>2]|0)<=(c[n>>2]|0)){c[y>>
;2]=c[s>>2];break}else{c[y>>2]=0-(c[n>>2]|0);break}}if((c[r>>2]|0)<64){if((c[m>
;>2]|0)>=(c[r>>2]|0))break;if((c[s>>2]|0)>=(c[r>>2]|0))break;if((c[n>>2]|
0)>=(c[r>>2]|0))break;if((c[t>>2]|0)>=(c[r>>2]|0))break}c[o>>2]=(c[w>>
;2]|0)%64|0;if((c[o>>2]|0)<32){if((c[s>>2]|0)<=(c[o>>2]|0))break;if((c[n>>2]|0
)<=(c[o>>2]|0))break}else c[o>>2]=64-(c[r>>2]|0);c[m>>2]=(c[r>>2]|0)-(c[s
>>2]|0);c[s>>2]=(c[s>>2]|0)-(c[o>>2]|0);c[t>>2]=(c[r>>2]|0)-(c[n>
;>2]|0);c[n>>2]=(c[n>>2]|0)-(c[o>>2]|0);if((c[m>>2]|0)<=(c[s>>2]|0))
c[s>>2]=0-(c[m>>2]|0);if((c[n>>2]|0)<=(c[t>>2]|0))c[t>>2]=0-(c[n>>
;2]|0);q=c[s>>2]|0;r=c[t>>2]|0;if((((c[s>>2]|0)<0?0-q|0:q)|0)<=(((c[t>>2]|0)
x3c;0?0-r|0:r)|0)){c[y>>2]=c[s>>2];break}else{c[y>>2]=c[t>>2];break}}while(0);do if(!(c[(
c[h>>2]|0)+108>>2]&4)){if((c[y>>2]|0)>14){c[y>>2]=14;break}if((c[y>>
2]|0)<-14)c[y>>2]=-14}while(0);c[x>>2]=(c[x>>2]|0)+(c[y>>2]|0);h=c[x>>2]|
0;if((c[(c[u>>2]|0)+4>>2]|0)<(c[(c[v>>2]|0)+4>>2]|0)){c[(c[u>>2]|0)+8>
;>2]=h;c[(c[v>>2]|0)+8>>2]=(c[x>>2]|0)+(c[w>>2]|0);y=c[y>>2]|0;i=z;return
y|0}else{c[(c[u>>2]|0)+8>>2]=h+(c[w>>2]|0);c[(c[v>>2]|0)+8>>2]=c[x>>
;2];y=c[y>>2]|0;i=z;return y|0}return 0}function xm(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;c[h>>2]=c[h>>2];c[(c[f>>2]|
0)+8>>2]=(c[(c[g>>2]|0)+8>>2]|0)+((c[(c[f>>2]|0)+4>>2]|0)-(c[(c[g>>2
]|0)+4>>2]|0));i=e;return}function ym(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;r=i;i=i+48|
0;g=r+36|0;j=r+32|0;s=r+28|0;h=r+24|0;m=r+20|0;l=r+16|0;q=r+40|0;p=r+12|0;n=r+8|0;k=r+4|0;o=r;c[g>>2]=d;c[j>>
;2]=f;c[s>>2]=(c[g>>2]|0)+48+((c[j>>2]|0)*28|0);c[h>>2]=c[(c[s>>2]|0)+20>
x3e;2];c[m>>2]=(c[h>>2]|0)+((c[(c[s>>2]|0)+12>>2]|0)*48|0);if((c[j>>2]|0)==0?c
[(c[g>>2]|0)+108>>2]&1|0:0)g=1;else if((c[j>>2]|0)==1)g=(c[(c[g>>2]|0)+108>>
;2]&2|0)!=0;else g=0;a[q>>0]=g&1;c[l>>2]=c[h>>2];while(1){if((c[l>>2]|0)>
x3e;>0>=(c[m>>2]|0)>>>0)break;c[p>>2]=c[(c[l>>2]|0)+40>>2];if(a
[q>>0]|0)do{c[n>>2]=c[(c[p>>2]|0)+40>>2];while(1){g=c[(c[l>>2]|0)+8>>
;2]|0;f=c[n>>2]|0;if(!(c[j>>2]|0)){c[f+16>>2]=g;s=c[n>>2]|0;b[s>>1]=e[s>
x3e;1]|64}else{c[f+20>>2]=g;s=c[n>>2]|0;b[s>>1]=e[s>>1]|128}if((c[n>>2]|0)==(c
[(c[p>>2]|0)+44>>2]|0))break;c[n>>2]=c[(c[n>>2]|0)+32>>2]}c[p>>2]=c[(
c[p>>2]|0)+16>>2]}while((c[p>>2]|0)!=(c[(c[l>>2]|0)+40>>2]|0));else{c[k>
x3e;2]=(c[(c[l>>2]|0)+8>>2]|0)-(c[(c[l>>2]|0)+4>>2]|0);do{c[o>>2]=c[(c[p>
x3e;2]|0)+40>>2];while(1){g=c[k>>2]|0;f=c[o>>2]|0;if(!(c[j>>2]|0)){s=f+16|0;c[s>>
;2]=(c[s>>2]|0)+g;s=c[o>>2]|0;b[s>>1]=e[s>>1]|64}else{s=f+20|0;c[s>>2]=(c[s>
;>2]|0)+g;s=c[o>>2]|0;b[s>>1]=e[s>>1]|128}if((c[o>>2]|0)==(c[(c[p>>2]|0)+
44>>2]|0))break;c[o>>2]=c[(c[o>>2]|0)+32>>2]}c[p>>2]=c[(c[p>>2]|0)+16
>>2]}while((c[p>>2]|0)!=(c[(c[l>>2]|0)+40>>2]|0))}c[l>>2]=(c[l>>2]|0
)+48}i=r;return}function zm(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=
jm(c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Am(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;km(c[f>>2]|0,c[e>>2]|0);i=d;return}function Bm(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=mm(c[f>>2]|0,c[e>>2]|0)|0;i=
d;return b|0}function Cm(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
x3e;>2]=b;c[f>>2]=d;b=nm(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return b|0}function Dm
(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;l=g+16|0;k=g+12|0;m=g+8|0;j=g+4|0;h=g;c[l>
;>2]=a;c[k>>2]=b;c[m>>2]=d;c[j>>2]=e;c[h>>2]=f;c[m>>2]=c[m>>2];
b=Em((c[l>>2]|0)+20|0,c[(c[k>>2]|0)+4>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=g;return
b|0}function Em(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;q=i;i=i+64|0;j=q+60|0;k=q+56|0;
f=q+52|0;l=q+48|0;m=q+44|0;n=q+40|0;h=q+36|0;p=q+8|0;o=q+4|0;g=q;c[k>>2]=a;c[f>>2]=b;c[l>>2]=d;c[m
>>2]=e;c[h>>2]=c[(c[f>>2]|0)+88>>2];if(!(c[h>>2]|0)){c[j>>2]=6;p=c[j
>>2]|0;i=q;return p|0};c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[p+16
x3e;>2]=0;c[p+20>>2]=0;c[p+24>>2]=0;c[p>>2]=c[f>>2];c[p+4>>2]=c[(c[h>
;>2]|0)+12+4>>2];c[p+12>>2]=0;c[p+8>>2]=c[(c[h>>2]|0)+12+8>>2];c[p+16>
;>2]=0;c[p+20>>2]=(c[m>>2]|0)>>>16&15;c[p+24>>2]=0;c[n>>2]=Fm(c
[k>>2]|0,c[f>>2]|0)|0;do if((c[n>>2]|0)==0?(c[g>>2]=0,c[n>>2]=Jm(c[(c[k>
x3e;2]|0)+4>>2]|0,c[l>>2]|0,c[g>>2]|0,o)|0,(c[n>>2]|0)==0):0){c[(c[k>>2]|0)+136
>>2]=c[o>>2];f=c[o>>2]|0;if(c[(c[c[o>>2]>>2]|0)+16>>2]|0)Ra[c[(c[f
x3e;>2]|0)+16>>2]&7](c[o>>2]|0,p);else{h=f+4|0;c[h>>2]=c[p>>2];c[h+4>>
;2]=c[p+4>>2];c[h+8>>2]=c[p+8>>2];c[h+12>>2]=c[p+12>>2];c[h+16>>2]=c
[p+16>>2];c[h+20>>2]=c[p+20>>2];c[h+24>>2]=c[p+24>>2]}c[m>>2]=c[m>
;>2]|2049;c[m>>2]=c[m>>2]&-5;if(c[(c[c[o>>2]>>2]|0)+24>>2]|0?(c[n>
;>2]=Ya[c[(c[c[o>>2]>>2]|0)+24>>2]&127]((c[k>>2]|0)+12|0,c[o>>2]|0)|
0,c[n>>2]|0):0)break;c[n>>2]=Km(c[k>>2]|0,p,c[l>>2]|0,c[m>>2]|0,0)|0}while(0);
c[j>>2]=c[n>>2];p=c[j>>2]|0;i=q;return p|0}function Fm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=
i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;c[c[d>>2]>>2]=c[e>
;>2];c[(c[d>>2]|0)+4>>2]=c[(c[e>>2]|0)+116>>2];dc(c[(c[d>>2]|0)+8>
x3e;2]|0);if(c[(c[d>>2]|0)+4>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[f>>2]=Gm(c[e>>
;2]|0,(c[d>>2]|0)+4|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[(c[e>>2]|0)+116>
;>2]=c[(c[d>>2]|0)+4>>2];c[(c[e>>2]|0)+116+4>>2]=35;a=c[f>>2]|0;i=g;return
a|0}function Gm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;e=h+12|0;f=h+8|0;j=h+4|0;g=h;c[d>>
2]=a;c[e>>2]=b;c[g>>2]=0;c[j>>2]=c[(c[d>>2]|0)+100>>2];c[g>>2]=bc(c[
j>>2]|0,28+(c[(c[d>>2]|0)+16>>2]|0)|0,f)|0;if((c[f>>2]|0)==0?(c[c[g>>2]>
x3e;2]=c[d>>2],c[(c[g>>2]|0)+4>>2]=c[(c[d>>2]|0)+16>>2],c[(c[g>>2]|0
)+8>>2]=(c[g>>2]|0)+28,c[f>>2]=Hm(c[g>>2]|0)|0,c[f>>2]|0):0){Im(c[g>>
;2]|0);c[g>>2]=0}c[c[e>>2]>>2]=c[g>>2];i=h;return c[f>>2]|0}function Hm(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;s=i;i=i+64|0;e=s+48|0;h=s+44|0;j=s+40|0;p=s+36|0;m=s+32|0;r=s+28|
0;n=s+24|0;g=s+20|0;q=s+16|0;f=s+12|0;k=s+8|0;l=s+4|0;o=s;c[e>>2]=b;c[h>>2]=0;c[j>>2]=c[c[e>
x3e;2]>>2];c[p>>2]=c[(c[j>>2]|0)+92>>2];c[m>>2]=c[(c[e>>2]|0)+8>
;>2];Ns(c[(c[e>>2]|0)+8>>2]|0,127,c[(c[e>>2]|0)+4>>2]|0)|0;c[h>>2]=Id(c[j
>>2]|0,1970170211)|0;a:do if(c[h>>2]|0)c[h>>2]=0;else{c[r>>2]=0;while(1){if(!(c[3900+(c[
r>>2]<<2)>>2]|0))break;c[g>>2]=c[3900+(c[r>>2]<<2)>>2];b:do
if(c[(c[g>>2]|0)+4>>2]|0){c[q>>2]=c[(c[g>>2]|0)+4>>2];while(1){if(!(c[c[q>
;>2]>>2]|0))break b;c[f>>2]=c[c[q>>2]>>2];c[k>>2]=Dc(c[j>>2]|0,
c[f>>2]|0)|0;if((c[k>>2]|0?(c[k>>2]|0)>>>0<(c[(c[e>>2]|0)+4>>
;2]|0)>>>0:0)?(d[(c[m>>2]|0)+(c[k>>2]|0)>>0]|0|0)==127:0)a[(c[m>>2]|0)+(c
[k>>2]|0)>>0]=c[r>>2];while(1){c[f>>2]=Md(c[j>>2]|0,c[f>>2]|0,k)|0;if
(!(c[k>>2]|0))break;if((c[f>>2]|0)>>>0>(c[(c[q>>2]|0)+4>>2]|0)>
x3e;>0)break;if((c[k>>2]|0)>>>0>=(c[(c[e>>2]|0)+4>>2]|0)>>>
;0)continue;if((d[(c[m>>2]|0)+(c[k>>2]|0)>>0]|0|0)!=127)continue;a[(c[m>>2]|0)+(c[k>
;>2]|0)>>0]=c[r>>2]}c[q>>2]=(c[q>>2]|0)+8}}while(0);c[r>>2]=(c[r>>
;2]|0)+1}c[n>>2]=48;while(1){if((c[n>>2]|0)>>>0>57)break a;c[l>>2]=Dc(c[j>
;>2]|0,c[n>>2]|0)|0;if(c[l>>2]|0?(c[l>>2]|0)>>>0<(c[(c[e>>2]|0)+
4>>2]|0)>>>0:0){r=(c[m>>2]|0)+(c[l>>2]|0)|0;a[r>>0]=d[r>>0]|0|128
}c[n>>2]=(c[n>>2]|0)+1}}while(0);c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[e>
x3e;2]|0)+4>>2]|0))break;if(((d[(c[m>>2]|0)+(c[o>>2]|0)>>0]|0)&-129|0)==127){r=(c[m
>>2]|0)+(c[o>>2]|0)|0;a[r>>0]=(d[r>>0]|0)&-128;r=(c[m>>2]|0)+(c[o>
x3e;2]|0)|0;a[r>>0]=d[r>>0]|0|2}c[o>>2]=(c[o>>2]|0)+1}Jd(c[j>>2]|0,c[p>
x3e;2]|0)|0;i=s;return c[h>>2]|0}function Im(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;f=g+4|0;d=
g;c[b>>2]=a;if(!(c[b>>2]|0)){i=g;return}c[e>>2]=c[(c[c[b>>2]>>2]|0)+100>
x3e;2];c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=4)break;if(c[(c[b>>2]|0)+12+(c[f
>>2]<<2)>>2]|0){c[d>>2]=c[3900+(c[f>>2]<<2)>>2];if(c[(c[d
x3e;>2]|0)+20>>2]|0)Va[c[(c[d>>2]|0)+20>>2]&63](c[(c[b>>2]|0)+12+(c[f>>
;2]<<2)>>2]|0);Fb(c[e>>2]|0,c[(c[b>>2]|0)+12+(c[f>>2]<<2)>>
;2]|0);c[(c[b>>2]|0)+12+(c[f>>2]<<2)>>2]=0}c[f>>2]=(c[f>>2]|0)+1}c[(
c[b>>2]|0)+4>>2]=0;c[(c[b>>2]|0)+8>>2]=0;c[c[b>>2]>>2]=0;Fb(c[e>
;>2]|0,c[b>>2]|0);c[b>>2]=0;i=g;return}function Jm(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;q=i;i=i+48|0;g=q+40|0;h=q+36|0;r=q+32|0;j=q+28|0;o=q+24|0;m=q+20|0;k=q+16|0;p=q+12|0;l=q+4|0;n=q;c[
g>>2]=a;c[h>>2]=b;c[r>>2]=e;c[j>>2]=f;c[o>>2]=0;c[p>>2]=c[r>>
;2]&15;c[q+8>>2]=5;c[l>>2]=0;if((c[h>>2]|0)>>>0>=(c[(c[g>>2]|0)+
4>>2]|0)>>>0){c[l>>2]=6;p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l
>>2]|0;i=q;return r|0}c[m>>2]=c[p>>2];if(!((c[m>>2]|0)!=0?((c[m>>2]|0)+1|0)>
;>>0<5:0))c[m>>2]=(d[(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]|0)>>0]|0)
x26;127;c[k>>2]=c[3900+(c[m>>2]<<2)>>2];if(!(c[p>>2]|0))c[p>>2]=c[c[
k>>2]>>2];c[o>>2]=c[(c[g>>2]|0)+12+(c[c[k>>2]>>2]<<2)>
;>2];if(c[o>>2]|0){p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l>>2]|0;i=q;return
r|0}c[n>>2]=c[(c[c[g>>2]>>2]|0)+100>>2];c[o>>2]=bc(c[n>>2]|0,c[(c[k
>>2]|0)+8>>2]|0,l)|0;if(c[l>>2]|0){p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p
;r=c[l>>2]|0;i=q;return r|0}c[c[o>>2]>>2]=c[k>>2];if(c[(c[k>>2]|0)+12>>
;2]|0?(c[l>>2]=Ya[c[(c[k>>2]|0)+12>>2]&127](c[o>>2]|0,c[c[g>>2]>>
;2]|0)|0,c[l>>2]|0):0){if(c[(c[k>>2]|0)+20>>2]|0)Va[c[(c[k>>2]|0)+20>>2]&
63](c[o>>2]|0);Fb(c[n>>2]|0,c[o>>2]|0);c[o>>2]=0;p=c[o>>2]|0;r=c[j>>
2]|0;c[r>>2]=p;r=c[l>>2]|0;i=q;return r|0}c[(c[g>>2]|0)+12+(c[c[k>>2]>>2]<
;<2)>>2]=c[o>>2];p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l>>2]|0;
i=q;return r|0}function Km(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;da=i;i=i+240|0;S=da+236|0;T=da+232|0;U=da+228|0;y=da+224|0;V=da+220|0;X=da+216|0;ea=da+212|0;Y=da+208|0;$=da+204|0;
Z=da+200|0;aa=da+196|0;_=da+192|0;l=da+176|0;r=da+168|0;q=da+164|0;p=da+160|0;u=da+156|0;x=da+152|0;m=da+148|0;n=da+144|0;o=da+140
|0;s=da+136|0;v=da+132|0;t=da+128|0;w=da+124|0;E=da+120|0;J=da+116|0;G=da+112|0;O=da+108|0;P=da+104|0;M=da+96|0;N=da+88|0;Q=da+84
|0;R=da+80|0;I=da+76|0;H=da+72|0;F=da+68|0;z=da+64|0;D=da+60|0;B=da+56|0;C=da+52|0;K=da+48|0;L=da+44|0;A=da+24|0;W=da+8|0;ba=da;
c[S>>2]=f;c[T>>2]=g;c[U>>2]=h;c[y>>2]=j;c[V>>2]=k;c[ea>>2]=c[c[S>
;>2]>>2];c[Y>>2]=c[(c[S>>2]|0)+8>>2];c[$>>2]=c[(c[S>>2]|0)+136
x3e;>2];c[Z>>2]=(c[S>>2]|0)+12;c[aa>>2]=c[(c[ea>>2]|0)+84>>2];c[_>
x3e;2]=c[(c[aa>>2]|0)+156>>2];c[X>>2]=Cb(c[ea>>2]|0,c[U>>2]|0,c[y>>2
]|0)|0;if(c[X>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}a[(c[S>>2]|0)+140>>0]=a[(c[_>>
;2]|0)+8>>0]|0;if(a[(c[S>>2]|0)+140>>0]|0){ea=(c[S>>2]|0)+144|0;g=(c[_>>2]|0)+
12|0;c[ea>>2]=c[g>>2];c[ea+4>>2]=c[g+4>>2];c[ea+8>>2]=c[g+8>>2];c[ea
+12>>2]=c[g+12>>2];ea=(c[S>>2]|0)+160|0;g=(c[_>>2]|0)+28|0;c[ea>>2]=c[g>
x3e;2];c[ea+4>>2]=c[g+4>>2];ea=(c[S>>2]|0)+144|0;c[l>>2]=c[ea>>2];c[l+4>
x3e;2]=c[ea+4>>2];c[l+8>>2]=c[ea+8>>2];c[l+12>>2]=c[ea+12>>2];Wb(l)|0;Lb((c[S
x3e;>2]|0)+160|0,l)}c[(c[aa>>2]|0)+56>>2]=c[(c[aa>>2]|0)+24+16>>2];c[(c[aa>>
;2]|0)+60>>2]=c[(c[aa>>2]|0)+24+28>>2];k=c[(c[aa>>2]|0)+72>>2]|0;a:do if((k|0)
x3e;=1869968492){switch(k|0){case 1869968492:break;default:{ca=49;break a}}if(a[(c[S>>2]|0)+140>>0]|0)Nb((c[
aa>>2]|0)+108|0,c[(c[S>>2]|0)+160>>2]|0,c[(c[S>>2]|0)+160+4>>2]|0);if(((b[(c[aa
>>2]|0)+108+2>>1]|0)+4|0)!=0?((b[(c[Y>>2]|0)+20+2>>1]|0)+(b[(c[Y>>2]|0)+56+2
x3e;>1]|0)+((b[(c[aa>>2]|0)+108+2>>1]|0)+4)|0)>>>0>(c[(c[Y>>2]|0)+4>
x3e;2]|0)>>>0:0)ca=11;else if((b[(c[aa>>2]|0)+108>>1]|0)!=0?((b[(c[Y>>2]|0)+20>
;>1]|0)+(b[(c[Y>>2]|0)+56>>1]|0)+(b[(c[aa>>2]|0)+108>>1]|0)|0)>>>0
x3e;(c[(c[Y>>2]|0)+8>>2]|0)>>>0:0)ca=11;else k=0;if((ca|0)==11)k=kc(c[Y>>2]|0,(b[(c
[aa>>2]|0)+108+2>>1]|0)+4|0,b[(c[aa>>2]|0)+108>>1]|0)|0;c[X>>2]=k;if(c[X>
x3e;2]|0){ea=c[X>>2]|0;i=da;return ea|0}Ss(c[(c[Y>>2]|0)+56+4>>2]|0,c[(c[aa>>2]|0)+108+4
>>2]|0,b[(c[aa>>2]|0)+108+2>>1]<<3|0)|0;Ss(c[(c[Y>>2]|0)+56+12>>2]|0
,c[(c[aa>>2]|0)+108+12>>2]|0,b[(c[aa>>2]|0)+108>>1]<<1|0)|0;Ss(c[(c[Y>>
;2]|0)+56+8>>2]|0,c[(c[aa>>2]|0)+108+8>>2]|0,b[(c[aa>>2]|0)+108+2>>1]|0)|0;b[(
c[Y>>2]|0)+56+2>>1]=b[(c[aa>>2]|0)+108+2>>1]|0;b[(c[Y>>2]|0)+56>>1]=
b[(c[aa>>2]|0)+108>>1]|0;c[(c[S>>2]|0)+168>>2]=c[(c[Z>>2]|0)+8>>2];c
[(c[S>>2]|0)+168+4>>2]=c[(c[Z>>2]|0)+16>>2];ea=Mb(c[(c[aa>>2]|0)+24+16>
x3e;2]|0,c[(c[Z>>2]|0)+4>>2]|0)|0;c[(c[S>>2]|0)+176>>2]=ea+(c[(c[Z>>2]|0)+8>
;>2]|0);c[(c[S>>2]|0)+176+4>>2]=c[(c[Z>>2]|0)+16>>2];if(b[(c[aa>>2]|0)+108
+2>>1]|0){if(c[(c[c[$>>2]>>2]|0)+28>>2]|0)Oa[c[(c[c[$>>2]>>2]|0)+28
x3e;>2]&63](c[Z>>2]|0,(c[Y>>2]|0)+56|0,c[$>>2]|0)|0;do if((c[(c[T>>2]|0)+20>
;>2]|0)!=1){c[m>>2]=(c[Z>>2]|0)+48;c[n>>2]=c[(c[m>>2]|0)+20>>2];c[o>
x3e;2]=(c[n>>2]|0)+((c[(c[m>>2]|0)+12>>2]|0)*48|0)+-48;if((c[(c[m>>2]|0)+12>>2
]|0)>1?(c[(c[Z>>2]|0)+104>>2]&4|0)==0:0){c[r>>2]=(c[(c[S>>2]|0)+176>>
;2]|0)-(c[(c[o>>2]|0)+4>>2]|0);c[q>>2]=c[(c[n>>2]|0)+4>>2];c[p>>2]=c
[(c[n>>2]|0)+8>>2];c[u>>2]=(c[p>>2]|0)-(c[q>>2]|0);c[x>>2]=(c[(c[o
x3e;>2]|0)+8>>2]|0)+(c[r>>2]|0);if((c[q>>2]|0)<24)c[u>>2]=(c[u>>2]|0
)-8;if((c[r>>2]|0)<24)c[x>>2]=(c[x>>2]|0)+8;c[(c[S>>2]|0)+168>>2]=(c[u>
;>2]|0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[x>>2]|0)+32&-64;if((c[q>>2]|0)>
;0?(c[(c[S>>2]|0)+168>>2]|0)>=(c[p>>2]|0):0){ea=(c[S>>2]|0)+168|0;c[ea>>2
]=(c[ea>>2]|0)-64}if((c[r>>2]|0)>0?(c[(c[S>>2]|0)+176>>2]|0)<=(c[(c[o>>
;2]|0)+8>>2]|0):0){ea=(c[S>>2]|0)+176|0;c[ea>>2]=(c[ea>>2]|0)+64}c[(c[aa>>2]|0
)+144>>2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[u>>2]|0);c[(c[aa>>2]|0)+148>>
2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[x>>2]|0);break}c[s>>2]=c[(c[S>>2]|0)+168>
x3e;2];c[v>>2]=c[(c[S>>2]|0)+176>>2];c[(c[S>>2]|0)+168>>2]=(c[s>>2]|
0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[v>>2]|0)+32&-64;c[(c[aa>>2]|0)+144>>
;2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[s>>2]|0);c[(c[aa>>2]|0)+148>>2]=(c[(c[S>
x3e;2]|0)+176>>2]|0)-(c[v>>2]|0)}else{c[t>>2]=c[(c[S>>2]|0)+168>>2];c[w>
x3e;2]=c[(c[S>>2]|0)+176>>2];c[(c[S>>2]|0)+168>>2]=(c[t>>2]|0)+(c[(c[Z>
x3e;2]|0)+116>>2]|0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[w>>2]|0)+(c[(c[Z>>2]|
0)+120>>2]|0)+32&-64;c[(c[aa>>2]|0)+144>>2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[
t>>2]|0);c[(c[aa>>2]|0)+148>>2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[w>>2]|0
)}while(0);oc(c[Y>>2]|0)}}else{switch(k|0){case 1668246896:break;default:{ca=49;break a}}c[J>>2]=c[(c[aa>
;>2]|0)+128>>2];c[O>>2]=b[(c[Y>>2]|0)+20+2>>1];c[X>>2]=lc(c[Y>>
2]|0,c[J>>2]|0)|0;if(c[X>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}Ss(c[(c[Y>>2]|0)+56+32>
;>2]|0,c[(c[aa>>2]|0)+132>>2]|0,c[J>>2]<<5|0)|0;c[(c[Y>>2]|0)+56+28>
x3e;2]=c[J>>2];c[G>>2]=c[(c[Y>>2]|0)+20+28>>2];c[E>>2]=0;while(1){if((c[E>
;>2]|0)>>>0>=(c[J>>2]|0)>>>0)break a;c[P>>2]=(c[(c[Y>>2]|0
)+20+32>>2]|0)+(c[G>>2]<<5)+(c[E>>2]<<5);ea=(c[S>>2]|0)+168|0;c[M>
;>2]=c[ea>>2];c[M+4>>2]=c[ea+4>>2];ea=(c[S>>2]|0)+176|0;c[N>>2]=c[ea>
;>2];c[N+4>>2]=c[ea+4>>2];c[F>>2]=b[(c[Y>>2]|0)+20+2>>1];c[X>>2
]=Km(c[S>>2]|0,c[T>>2]|0,c[c[P>>2]>>2]|0,c[y>>2]|0,(c[V>>2]|0)+1|0)|
0;if(c[X>>2]|0){ca=63;break}c[P>>2]=(c[(c[Y>>2]|0)+20+32>>2]|0)+(c[G>>2]<
x3c;5)+(c[E>>2]<<5);k=(c[S>>2]|0)+168|0;if(e[(c[P>>2]|0)+4>>1]&512|0){c[M
>>2]=c[k>>2];c[M+4>>2]=c[k+4>>2];ea=(c[S>>2]|0)+176|0;c[N>>2]=c[ea
x3e;>2];c[N+4>>2]=c[ea+4>>2]}else{c[k>>2]=c[M>>2];c[k+4>>2]=c[M+4>
x3e;2];ea=(c[S>>2]|0)+176|0;c[ea>>2]=c[N>>2];c[ea+4>>2]=c[N+4>>2]}c[I>>
;2]=b[(c[Y>>2]|0)+20+2>>1];c[H>>2]=(c[I>>2]|0)-(c[F>>2]|0);b:do if(e[(c[P>
;>2]|0)+4>>1]&200|0){c[z>>2]=(c[(c[Y>>2]|0)+20+4>>2]|0)+(c[F>>2]<
;<3);c[D>>2]=(c[z>>2]|0)+(c[H>>2]<<3);while(1){if((c[z>>2]|0)>>
x3e;0>=(c[D>>2]|0)>>>0)break b;Lb(c[z>>2]|0,(c[P>>2]|0)+16|0);c[z>>2
]=(c[z>>2]|0)+8}}while(0);k=c[(c[P>>2]|0)+8>>2]|0;if(e[(c[P>>2]|0)+4>>1]&
2|0){ea=Mb(k,c[(c[Z>>2]|0)+4>>2]|0)|0;c[Q>>2]=ea+(c[(c[Z>>2]|0)+8>>2]|0);ea=Mb
(c[(c[P>>2]|0)+12>>2]|0,c[(c[Z>>2]|0)+12>>2]|0)|0;c[R>>2]=ea+(c[(c[Z>>
;2]|0)+16>>2]|0);c[Q>>2]=(c[Q>>2]|0)+32&-64;c[R>>2]=(c[R>>2]|0)+32&-
64}else{c[B>>2]=k;c[C>>2]=c[(c[P>>2]|0)+12>>2];if(((c[O>>2]|0)+(c[B>>
;2]|0)|0)>>>0>=(c[F>>2]|0)>>>0)break;if((c[C>>2]|0)>>>0>
;=(c[H>>2]|0)>>>0)break;c[C>>2]=(c[C>>2]|0)+(c[F>>2]|0);c[K>>2]=(
c[(c[Y>>2]|0)+20+4>>2]|0)+(c[O>>2]<<3)+(c[B>>2]<<3);c[L>>2
]=(c[(c[Y>>2]|0)+20+4>>2]|0)+(c[O>>2]<<3)+(c[C>>2]<<3);c[Q>>
;2]=(c[c[K>>2]>>2]|0)-(c[c[L>>2]>>2]|0);c[R>>2]=(c[(c[K>>2]|0)+4>
;>2]|0)-(c[(c[L>>2]|0)+4>>2]|0)}ea=(c[Y>>2]|0)+20|0;c[A>>2]=c[ea>>2];c[A+
4>>2]=c[ea+4>>2];c[A+8>>2]=c[ea+8>>2];c[A+12>>2]=c[ea+12>>2];c[A+16
x3e;>2]=c[ea+16>>2];ea=A+4|0;c[ea>>2]=(c[ea>>2]|0)+(c[F>>2]<<3);b[A+2>
;>1]=c[H>>2];Nb(A,c[Q>>2]|0,c[R>>2]|0);c[E>>2]=(c[E>>2]|0)+1}if((ca|0)==63
){ea=c[X>>2]|0;i=da;return ea|0}c[X>>2]=21;ea=c[X>>2]|0;i=da;return ea|0}while(0);if((ca|0)==49)c[
X>>2]=7;if(c[V>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}c[ba>>2]=(c[(c[aa>>2]|0)+24
+20>>2]|0)-(c[(c[aa>>2]|0)+24+8>>2]|0);c[ba+4>>2]=(c[(c[aa>>2]|0)+24+24>
x3e;2]|0)-(c[(c[aa>>2]|0)+24+12>>2]|0);c[ba>>2]=Mb(c[ba>>2]|0,c[(c[$>>2]|0)+4+
4>>2]|0)|0;c[ba+4>>2]=Mb(c[ba+4>>2]|0,c[(c[$>>2]|0)+4+8>>2]|0)|0;if(a[(c[S>
;>2]|0)+140>>0]|0){Kb((c[Y>>2]|0)+20|0,(c[S>>2]|0)+144|0);Lb(ba,(c[S>>2]|0)+144|0)}
if(c[(c[S>>2]|0)+168>>2]|0)Nb((c[Y>>2]|0)+20|0,0-(c[(c[S>>2]|0)+168>>2]|0)|0,0
);_d((c[Y>>2]|0)+20|0,W);c[W>>2]=c[W>>2]&-64;c[W+4>>2]=c[W+4>>2]&-64
;c[W+8>>2]=(c[W+8>>2]|0)+63&-64;c[W+12>>2]=(c[W+12>>2]|0)+63&-64;c[(c[aa>
x3e;2]|0)+24>>2]=(c[W+8>>2]|0)-(c[W>>2]|0);c[(c[aa>>2]|0)+24+4>>2]=(c[W+12>
;>2]|0)-(c[W+4>>2]|0);c[(c[aa>>2]|0)+24+8>>2]=c[W>>2];c[(c[aa>>2]|0)+24+12
>>2]=c[W+12>>2];c[(c[aa>>2]|0)+24+20>>2]=(c[W>>2]|0)+(c[ba>>2]|0)&
;-64;c[(c[aa>>2]|0)+24+24>>2]=(c[W+12>>2]|0)+(c[ba+4>>2]|0)&-64;do if(!(c[(c[(c[aa
x3e;>2]|0)+4>>2]|0)+8>>2]&4|0)){if((Lm(c[(c[S>>2]|0)+4>>2]|0,c[U>>2]|
0)|0)&255|0?d[(c[$>>2]|0)+32>>0]|0:0){ca=58;break}if(c[(c[aa>>2]|0)+24+16>>2]|0)c[(
c[aa>>2]|0)+24+16>>2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[(c[S>>2]|0)+168>>
2]|0)}else ca=58;while(0);if((ca|0)==58){ea=Mb(c[(c[aa>>2]|0)+24+16>>2]|0,c[(c[$>>2]|0)+4+4>
x3e;2]|0)|0;c[(c[aa>>2]|0)+24+16>>2]=ea;c[(c[aa>>2]|0)+144>>2]=0;c[(c[aa>>2]|0
)+148>>2]=0}ea=Mb(c[(c[aa>>2]|0)+24+28>>2]|0,c[(c[$>>2]|0)+4+8>>2]|0)|0;c[(c[aa
>>2]|0)+24+28>>2]=ea;c[(c[aa>>2]|0)+24+16>>2]=(c[(c[aa>>2]|0)+24+16>>
;2]|0)+32&-64;c[(c[aa>>2]|0)+24+28>>2]=(c[(c[aa>>2]|0)+24+28>>2]|0)+32&-64;dc(
c[c[_>>2]>>2]|0);c[X>>2]=pc(c[c[_>>2]>>2]|0,c[Y>>2]|0)|0;if(c[X>
;>2]|0){ea=c[X>>2]|0;i=da;return ea|0}ea=(c[aa>>2]|0)+108|0;ca=(c[c[_>>2]>>2]|0)+20
|0;c[ea>>2]=c[ca>>2];c[ea+4>>2]=c[ca+4>>2];c[ea+8>>2]=c[ca+8>>2];c[ea
+12>>2]=c[ca+12>>2];c[ea+16>>2]=c[ca+16>>2];c[(c[aa>>2]|0)+72>>2]=1869968492
;ea=c[X>>2]|0;i=da;return ea|0}function Lm(b,e){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[g
x3e;>2]=b;c[h>>2]=e;if((c[h>>2]|0)>>>0<(c[(c[g>>2]|0)+4>>2]|0)
x3e;>>0){a[f>>0]=(d[(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]|0)>>0]|0)&
128;b=a[f>>0]|0;i=j;return b|0}else{a[f>>0]=0;b=a[f>>0]|0;i=j;return b|0}return 0}function Mm(a){a
=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Nm((c[d>>2]|0)+20|0,c[c[(c[d>>2]|0)+4>>2]
x3e;>2]|0)|0;i=b;return a|0}function Nm(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
x3e;>2]=b;Ns(c[e>>2]|0,0,184)|0;Hl((c[e>>2]|0)+12|0,c[f>>2]|0);b=ac(c[f>>2]|0,(c[e
x3e;>2]|0)+8|0)|0;i=d;return b|0}function Om(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Pm((c[d>>2
]|0)+20|0);i=b;return}function Pm(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Ol((c[d>>2]|0)+12|0);c[c[d
>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;fc(c[(c[d>>2]|0)+8>>2]|0);c[(c[d>
;>2]|0)+8>>2]=0;i=b;return}function Qm(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
x3e;>2]|0)+108|0}function Rm(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)+120
|0}function Sm(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)+148|0}function Tm(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]=c[(c[d>>2]|0)+8>
x3e;2];c[e>>2]=(c[d>>2]|0)+20;Um((c[d>>2]|0)+20|0,c[f>>2]|0)|0;Vm((c[d>>2]|0)+
108|0);bn((c[d>>2]|0)+120|0);c[(c[d>>2]|0)+120>>2]=c[e>>2];ao((c[d>>2]|0)+148|
0);c[(c[d>>2]|0)+148>>2]=c[e>>2];i=b;return 0}function Um(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i
+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;a=c[d>>2]|0;b=a+88|0;do{c[a>>2]=0;a=a+4|0}while((a
|0)<(b|0));c[c[d>>2]>>2]=c[e>>2];i=f;return 0}function Vm(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]=45;c[(c[d>>2]|0)+4>>2]=24;c[(c[d>>2]|0)+8
>>2]=36;i=b;return}function Wm(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;t=i;i=i+48
|0;h=t+40|0;j=t+36|0;k=t+32|0;p=t+28|0;o=t+24|0;l=t+20|0;q=t+16|0;m=t+12|0;r=t+8|0;n=t+4|0;s=t;c[h>>2]=a;c[j>>
;2]=f;c[k>>2]=g;c[p>>2]=0;c[p>>2]=bc(c[h>>2]|0,2496,o)|0;if(c[o>>2]|0){r=c[p
x3e;>2]|0;s=c[k>>2]|0;c[s>>2]=r;s=c[o>>2]|0;i=t;return s|0}c[c[p>>2]>>2]=
c[h>>2];c[m>>2]=(c[p>>2]|0)+4+204;c[r>>2]=(c[m>>2]|0)+4;c[c[r>>2]>
;>2]=e[(c[j>>2]|0)+120>>1];c[r>>2]=(c[r>>2]|0)+12;c[q>>2]=(c[j>>
;2]|0)+128;c[l>>2]=d[(c[j>>2]|0)+124>>0];while(1){if((c[l>>2]|0)>>>0<
;=0)break;c[c[r>>2]>>2]=b[c[q>>2]>>1];c[r>>2]=(c[r>>2]|0)+12;c[q>
;>2]=(c[q>>2]|0)+2;c[l>>2]=(c[l>>2]|0)+-1}c[c[m>>2]>>2]=(d[(c[j>>
;2]|0)+124>>0]|0)+1;c[n>>2]=(c[p>>2]|0)+4;c[s>>2]=(c[n>>2]|0)+4;c[c[s>>
;2]>>2]=e[(c[j>>2]|0)+122>>1];c[s>>2]=(c[s>>2]|0)+12;c[q>>2]=(c[j>
;>2]|0)+154;c[l>>2]=d[(c[j>>2]|0)+125>>0];while(1){if((c[l>>2]|0)>>>
0<=0)break;c[c[s>>2]>>2]=b[c[q>>2]>>1];c[s>>2]=(c[s>>2]|0)+12;c
[q>>2]=(c[q>>2]|0)+2;c[l>>2]=(c[l>>2]|0)+-1}c[c[n>>2]>>2]=(d[(c[j>
;>2]|0)+125>>0]|0)+1;Xm((c[p>>2]|0)+412|0,d[(c[j>>2]|0)+8>>0]|0,(c[j>>2]|
0)+12|0,d[(c[j>>2]|0)+9>>0]|0,(c[j>>2]|0)+40|0,c[(c[j>>2]|0)+116>>2]|0,0);Xm((
c[p>>2]|0)+412|0,d[(c[j>>2]|0)+10>>0]|0,(c[j>>2]|0)+60|0,d[(c[j>>2]|0)+11>
;>0]|0,(c[j>>2]|0)+88|0,c[(c[j>>2]|0)+116>>2]|0,1);c[(c[p>>2]|0)+412+2064>>
;2]=c[(c[j>>2]|0)+108>>2];c[(c[p>>2]|0)+412+2068>>2]=c[(c[j>>2]|0)+112>
x3e;2];c[(c[p>>2]|0)+412+2076>>2]=c[(c[j>>2]|0)+116>>2];c[(c[p>>2]|0)+4+196>
;>2]=0;c[(c[p>>2]|0)+4+200>>2]=0;c[(c[p>>2]|0)+4+204+196>>2]=0;c[(c[p>>2]|
0)+4+204+200>>2]=0;r=c[p>>2]|0;s=c[k>>2]|0;c[s>>2]=r;s=c[o>>2]|0;i=t;return s|
0}function Xm(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;C=i;i=i+80|0;j=C+76|0;t=C+72|0;k=C+68|0;l=C+64|0;m=C+60|0;u=C+56|0;D=C+52|0;q=C+48|0;w=C+44|0;n=C
+40|0;x=C+36|0;r=C+32|0;o=C+28|0;s=C+24|0;p=C+20|0;z=C+16|0;A=C+12|0;v=C+8|0;y=C+4|0;B=C;c[j>>2]=a;c[t>>2]=b
;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[u>>2]=g;c[D>>2]=h;d=c[j>>2]|0;if(c[
D>>2]|0){c[q>>2]=d+1032;c[w>>2]=(c[j>>2]|0)+1548}else{c[q>>2]=d;c[w>>
;2]=(c[j>>2]|0)+516}c[c[q>>2]>>2]=0;c[c[w>>2]>>2]=0;Ym(c[j>>2]|0,0,c
[t>>2]|0,c[k>>2]|0,c[q>>2]|0,c[w>>2]|0);Ym(c[j>>2]|0,1,c[l>>2]|0,c[m
>>2]|0,c[q>>2]|0,c[w>>2]|0);c[n>>2]=c[c[q>>2]>>2];c[x>>2]=
c[c[w>>2]>>2];a:do if((c[n>>2]|0)>0){c[r>>2]=(c[q>>2]|0)+4;c[t>>
;2]=c[n>>2];while(1){if((c[t>>2]|0)>>>0<=0)break a;if((c[t>>2]|0)>>
x3e;0>1?(c[o>>2]=(c[(c[r>>2]|0)+32>>2]|0)-(c[c[r>>2]>>2]|0),(c[(c[r>
x3e;2]|0)+4>>2]|0)>(c[o>>2]|0)):0)c[(c[r>>2]|0)+4>>2]=c[o>>2];c[(c[r>
;>2]|0)+12>>2]=c[c[r>>2]>>2];c[(c[r>>2]|0)+8>>2]=(c[(c[r>>2]|0)+
4>>2]|0)+(c[c[r>>2]>>2]|0);c[t>>2]=(c[t>>2]|0)+-1;c[r>>2]=(c[r>
x3e;2]|0)+32}}while(0);b:do if((c[x>>2]|0)>0){c[s>>2]=(c[w>>2]|0)+4;c[t>>2]=c[x>
;>2];while(1){if((c[t>>2]|0)>>>0<=0)break b;if((c[t>>2]|0)>>>0>
1?(c[p>>2]=(c[c[s>>2]>>2]|0)-(c[(c[s>>2]|0)+32>>2]|0),(c[(c[s>>2]|0)+
4>>2]|0)<(c[p>>2]|0)):0)c[(c[s>>2]|0)+4>>2]=c[p>>2];c[(c[s>>2]|
0)+8>>2]=c[c[s>>2]>>2];c[(c[s>>2]|0)+12>>2]=(c[(c[s>>2]|0)+4>
x3e;2]|0)+(c[c[s>>2]>>2]|0);c[t>>2]=(c[t>>2]|0)+-1;c[s>>2]=(c[s>>2]|
0)+32}}while(0);c[B>>2]=(c[q>>2]|0)+4;c[t>>2]=c[n>>2];c[z>>2]=1;while(1){if((c
[z>>2]|0)<0)break;if((c[t>>2]|0)>>>0>0){D=(c[B>>2]|0)+12|0;c[D>>
;2]=(c[D>>2]|0)-(c[u>>2]|0);c[A>>2]=c[(c[B>>2]|0)+8>>2];c[t>>2]=(c[t
>>2]|0)+-1;while(1){if((c[t>>2]|0)>>>0<=0)break;c[v>>2]=c[(c[B>>2]|0
)+32+12>>2];c[y>>2]=(c[v>>2]|0)-(c[A>>2]|0);d=c[A>>2]|0;if((c[y>>2]|
0)<(c[u>>2]<<1|0)){D=d+((c[y>>2]|0)/2|0)|0;c[(c[B>>2]|0)+32+12>>2]=D;c[(c
[B>>2]|0)+8>>2]=D}else{c[(c[B>>2]|0)+8>>2]=d+(c[u>>2]|0);c[(c[B>>2]|
0)+32+12>>2]=(c[v>>2]|0)-(c[u>>2]|0)}c[B>>2]=(c[B>>2]|0)+32;c[A>>2]=
c[(c[B>>2]|0)+8>>2];c[t>>2]=(c[t>>2]|0)+-1}c[(c[B>>2]|0)+8>>2]=(c[A
x3e;>2]|0)+(c[u>>2]|0)}c[B>>2]=(c[w>>2]|0)+4;c[t>>2]=c[x>>2];c[z>>
;2]=(c[z>>2]|0)+-1}i=C;return}function Ym(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;A=i;i=i+64|0;B=A+48|0;l=A+54|0;m=A+44|0;n=A+40|0;o=A+36|0;p=A+32|0;s=A+28|0;r=A+24|
0;v=A+53|0;w=A+20|0;t=A+16|0;q=A+12|0;z=A+8|0;y=A+4|0;x=A+52|0;u=A;c[B>>2]=e;a[l>>0]=f;c[m>>2]=g;c
[n>>2]=h;c[o>>2]=j;c[p>>2]=k;c[s>>2]=c[c[o>>2]>>2];c[r>>2]=
c[c[p>>2]>>2];a[v>>0]=1;c[B>>2]=c[B>>2];while(1){if((c[m>>2]|0)>
;>>0<=1)break;a[x>>0]=0;if(!(d[v>>0]|0)?!(d[l>>0]|0):0){c[w>>2]=b[c[n>
;>2]>>1];c[t>>2]=(b[(c[n>>2]|0)+2>>1]|0)-(c[w>>2]|0);c[z>>2]=(c
[o>>2]|0)+4;c[q>>2]=c[s>>2];a[x>>0]=1}else{c[w>>2]=b[(c[n>>2]|0)+2
x3e;>1];c[t>>2]=(b[c[n>>2]>>1]|0)-(c[w>>2]|0);c[z>>2]=(c[p>>2]|
0)+4;c[q>>2]=c[r>>2];a[v>>0]=0}c[y>>2]=c[z>>2];while(1){if((c[q>>2]|
0)>>>0<=0){k=17;break}if((c[w>>2]|0)<(c[c[y>>2]>>2]|0)){k=17;break}if((c[
w>>2]|0)==(c[c[y>>2]>>2]|0)){k=11;break}c[q>>2]=(c[q>>2]|0)+-1;c[y>>
2]=(c[y>>2]|0)+32}do if((k|0)==11){c[u>>2]=c[(c[y>>2]|0)+4>>2];k=c[t>>2]|0;f=c
[u>>2]|0;if((c[t>>2]|0)<0){if((k|0)>=(f|0))break;c[(c[y>>2]|0)+4>>2]=c[t>
x3e;2];break}else{if((k|0)<=(f|0))break;c[(c[y>>2]|0)+4>>2]=c[t>>2];break}}else if((k|0)==17){
while(1){if((c[q>>2]|0)>>>0<=0)break;k=(c[y>>2]|0)+(c[q>>2]<<5)|0;B=(
c[y>>2]|0)+((c[q>>2]|0)-1<<5)|0;c[k>>2]=c[B>>2];c[k+4>>2]=c[B+4>
;>2];c[k+8>>2]=c[B+8>>2];c[k+12>>2]=c[B+12>>2];c[k+16>>2]=c[B+16>>
;2];c[k+20>>2]=c[B+20>>2];c[k+24>>2]=c[B+24>>2];c[k+28>>2]=c[B+28>>2
];c[q>>2]=(c[q>>2]|0)+-1;k=17}c[c[y>>2]>>2]=c[w>>2];c[(c[y>>2]|0)+4
x3e;>2]=c[t>>2];if(a[x>>0]|0){c[s>>2]=(c[s>>2]|0)+1;break}else{c[r>>2]=(c
[r>>2]|0)+1;break}}while(0);c[n>>2]=(c[n>>2]|0)+4;c[m>>2]=(c[m>>2]|0)-2}c[c[o
x3e;>2]>>2]=c[s>>2];c[c[p>>2]>>2]=c[r>>2];i=A;return}function Zm(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;n=i;i=i+32|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g
>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=(c[g>>
;2]|0)+4;c[m>>2]=(c[g>>2]|0)+4;if(!((c[h>>2]|0)==(c[(c[m>>2]|0)+196>>2]|0)?(c[
k>>2]|0)==(c[(c[m>>2]|0)+200>>2]|0):0)){c[(c[m>>2]|0)+196>>2]=c[h>>2
];c[(c[m>>2]|0)+200>>2]=c[k>>2];_m(c[g>>2]|0,0)}c[m>>2]=(c[g>>2]|0)+
4+204;if((c[j>>2]|0)==(c[(c[m>>2]|0)+196>>2]|0)?(c[l>>2]|0)==(c[(c[m>>2]|0)+200
>>2]|0):0){i=n;return 0}c[(c[m>>2]|0)+196>>2]=c[j>>2];c[(c[m>>2]|0)+200>
x3e;2]=c[l>>2];_m(c[g>>2]|0,1);$m((c[g>>2]|0)+412|0,c[j>>2]|0,c[l>>2]|0);i=n;return
0}function _m(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;k=i;i=i+48|0;o=k+36|0;n=k+32|0;l=k+28|0;m=k+24|0
;d=k+20|0;j=k+16|0;g=k+12|0;f=k+8|0;h=k+4|0;e=k;c[o>>2]=a;c[n>>2]=b;c[l>>2]=(c[o>>2]|0)+
4+((c[n>>2]|0)*204|0);c[m>>2]=c[l>>2];c[d>>2]=c[c[m>>2]>>2];c[j>
;>2]=(c[m>>2]|0)+4;c[g>>2]=c[j>>2];c[f>>2]=c[(c[l>>2]|0)+196>>2
];if((c[d>>2]|0)>>>0<=0){i=k;return}o=Mb(c[c[j>>2]>>2]|0,c[f>>2]|0)|
0;c[(c[j>>2]|0)+4>>2]=o;c[(c[j>>2]|0)+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+
32&-64;c[j>>2]=(c[j>>2]|0)+12;c[d>>2]=(c[d>>2]|0)+-1;while(1){if((c[d>>2]|
0)>>>0<=0)break;c[h>>2]=Mb(c[c[j>>2]>>2]|0,c[f>>2]|0)|0;c[e>>
;2]=(c[h>>2]|0)-(c[(c[g>>2]|0)+4>>2]|0);if((c[e>>2]|0)<0)c[e>>2]=0-(c[e
x3e;>2]|0);if((c[e>>2]|0)<128)c[h>>2]=c[(c[g>>2]|0)+4>>2];c[(c[j>>2]|
0)+4>>2]=c[h>>2];c[(c[j>>2]|0)+8>>2]=(c[h>>2]|0)+32&-64;c[d>>2]=(
c[d>>2]|0)+-1;c[j>>2]=(c[j>>2]|0)+12}i=k;return}function $m(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;w=i;i=i+64|0;l=w+56|0;m=w+52|0;f=w+48|0;g=w+44|0;s=w+40|0;h=w+36|0;j=
w+32|0;k=w+28|0;t=w+24|0;u=w+20|0;o=w+16|0;p=w+12|0;r=w+8|0;q=w+4|0;n=w;c[l>>2]=b;c[m>>2]=d;c[f>>2
]=e;c[h>>2]=0;b=c[m>>2]|0;if((c[m>>2]|0)>=34359738)a[(c[l>>2]|0)+2080>>0]=(
b|0)<((c[(c[l>>2]|0)+2064>>2]<<3|0)/125|0|0);else a[(c[l>>2]|0)+2080>>0]=(
b*125|0)<(c[(c[l>>2]|0)+2064>>2]<<3|0);c[j>>2]=c[(c[l>>2]|0)+2068>
x3e;2];while(1){if((c[j>>2]|0)>0)b=(Mb(c[j>>2]|0,c[m>>2]|0)|0)>32;else b=0;e=c[j>
x3e;2]|0;if(!b)break;c[j>>2]=e+-1}c[(c[l>>2]|0)+2072>>2]=e;c[s>>2]=0;while(1){if((c[s>
;>2]|0)>>>0>=4)break;switch(c[s>>2]|0){case 0:{c[h>>2]=c[l>>2];break}case
1:{c[h>>2]=(c[l>>2]|0)+516;break}case 2:{c[h>>2]=(c[l>>2]|0)+1032;break}default:c[h>
;>2]=(c[l>>2]|0)+1548}c[k>>2]=(c[h>>2]|0)+4;c[g>>2]=c[c[h>>2]>>
2];while(1){if((c[g>>2]|0)>>>0<=0)break;j=Mb(c[(c[k>>2]|0)+8>>2]|0,c[m>
x3e;2]|0)|0;c[(c[k>>2]|0)+28>>2]=j+(c[f>>2]|0);j=Mb(c[(c[k>>2]|0)+12>>2]|0,c[m
>>2]|0)|0;c[(c[k>>2]|0)+24>>2]=j+(c[f>>2]|0);j=Mb(c[c[k>>2]>>2]|0,c[
m>>2]|0)|0;c[(c[k>>2]|0)+16>>2]=j+(c[f>>2]|0);j=Mb(c[(c[k>>2]|0)+4>>
2]|0,c[m>>2]|0)|0;c[(c[k>>2]|0)+20>>2]=j;c[(c[k>>2]|0)+16>>2]=(c[(c[k>>
;2]|0)+16>>2]|0)+32&-64;c[g>>2]=(c[g>>2]|0)+-1;c[k>>2]=(c[k>>2]|0)+32}c[s
>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=2)break;b=
c[l>>2]|0;if(!(c[s>>2]|0)){c[r>>2]=b;c[q>>2]=(c[l>>2]|0)+1032}else{c[r>
x3e;2]=b+516;c[q>>2]=(c[l>>2]|0)+1548}c[t>>2]=(c[r>>2]|0)+4;c[o>>2]=c[c[r>
;>2]>>2];while(1){if((c[o>>2]|0)>>>0<=0)break;c[u>>2]=(c[q>>2]|
0)+4;c[p>>2]=c[c[q>>2]>>2];while(1){if((c[p>>2]|0)>>>0<=0)break;c[n
x3e;>2]=(c[c[t>>2]>>2]|0)-(c[c[u>>2]>>2]|0);if((c[n>>2]|0)<0)c[n>
;>2]=0-(c[n>>2]|0);if((Mb(c[n>>2]|0,c[m>>2]|0)|0)<64){v=32;break}c[p>>2]=(c[p
x3e;>2]|0)+-1;c[u>>2]=(c[u>>2]|0)+32}if((v|0)==32){v=0;c[(c[t>>2]|0)+28>>2]=c[(c[u
x3e;>2]|0)+28>>2];c[(c[t>>2]|0)+24>>2]=c[(c[u>>2]|0)+24>>2];c[(c[t>
x3e;2]|0)+16>>2]=c[(c[u>>2]|0)+16>>2];c[(c[t>>2]|0)+20>>2]=c[(c[u>>2
]|0)+20>>2]}c[o>>2]=(c[o>>2]|0)+-1;c[t>>2]=(c[t>>2]|0)+32}c[s>>2]=(c
[s>>2]|0)+1}i=w;return}function an(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(!(c[b>
;>2]|0)){i=e;return}c[d>>2]=c[c[b>>2]>>2];c[(c[b>>2]|0)+4>>2]=0;c[(c[b>
;>2]|0)+4+204>>2]=0;c[(c[b>>2]|0)+412>>2]=0;c[(c[b>>2]|0)+412+516>>2]=0;c
[(c[b>>2]|0)+412+1032>>2]=0;c[(c[b>>2]|0)+412+1548>>2]=0;Fb(c[d>>2]|0,c[b>
;>2]|0);c[b>>2]=0;i=e;return}function bn(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=b;b=c[e>
;>2]|0;d=b+28|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(d|0));c[(c[e>>2]|0)+4>>2]=37;c[(c[e>
;>2]|0)+8>>2]=108;c[(c[e>>2]|0)+12>>2]=13;c[(c[e>>2]|0)+16>>2]=14;c[(c[e
x3e;>2]|0)+20>>2]=5;c[(c[e>>2]|0)+24>>2]=24;i=f;return}function cn(a){a=a|0;var b=0,d=0;b=i;i
=i+16|0;d=b;c[d>>2]=a;dn(c[d>>2]|0,1);i=b;return}function dn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d
=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;b=(c[d>>2]|0)+4|0;if(((c[e>>2]|0)+-1|0)>>>
0<2){c[b>>2]=0;c[(c[d>>2]|0)+12>>2]=c[e>>2];en((c[d>>2]|0)+16|0);en((c[d
x3e;>2]|0)+16+36|0);i=f;return}else{c[b>>2]=6;c[(c[d>>2]|0)+12>>2]=c[e>>2];i=f;return
}}function en(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]=0;c[(c[d>>2]|
0)+12>>2]=0;c[(c[d>>2]|0)+24>>2]=0;i=b;return}function fn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0
,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;g=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[g>>2]=c[(c[d>
x3e;2]|0)+4>>2];if(c[g>>2]|0){h=c[g>>2]|0;i=j;return h|0}c[h>>2]=c[c[d>>2]>
;>2];c[f>>2]=(c[d>>2]|0)+16;c[g>>2]=gn(c[f>>2]|0,c[e>>2]|0,c[h>>
;2]|0)|0;if(c[g>>2]|0){h=c[g>>2]|0;i=j;return h|0}c[g>>2]=gn((c[f>>2]|0)+36|0,c[e>
x3e;2]|0,c[h>>2]|0)|0;h=c[g>>2]|0;i=j;return h|0}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+16|0;g=e+8|0;h=e+4|0;f=e;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;hn(c[g>>2]|0,c[h>>
;2]|0);d=jn((c[g>>2]|0)+24|0,c[f>>2]|0)|0;i=e;return d|0}function hn(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|0)+12
>>2];if((c[f>>2]|0)>>>0<=0){i=h;return}c[g>>2]=(c[(c[d>>2]|0)+12+8
x3e;>2]|0)+(c[f>>2]<<4)+-16;c[(c[g>>2]|0)+12>>2]=c[e>>2];i=h;return}function
jn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+16|0;e=k+12|0;g=k+8|0;h=k+4|0;f=k;c[d>>2]=a;c[e
x3e;>2]=b;c[f>>2]=0;c[g>>2]=(c[c[d>>2]>>2]|0)-1;while(1){if((c[g>>2]|0)
x3c;=0){j=9;break}c[h>>2]=(c[g>>2]|0)-1;while(1){if((c[h>>2]|0)<0)break;if(kn(c[d>>
2]|0,c[g>>2]|0,c[h>>2]|0)|0){j=6;break}c[h>>2]=(c[h>>2]|0)+-1}if((j|0)==6?(j=0,c[f>
x3e;2]=ln(c[d>>2]|0,c[h>>2]|0,c[g>>2]|0,c[e>>2]|0)|0,c[f>>2]|0):0){j=9;break}c
[g>>2]=(c[g>>2]|0)+-1}if((j|0)==9){i=k;return c[f>>2]|0}return 0}function kn(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;l=i;i=i+48|0;f=l+40|0;r=l+36|0;s=l+32|0;q=l+28|0;p=l+24|0;o=l+20|0;h
=l+16|0;j=l+12|0;n=l+8|0;m=l+4|0;g=l;c[r>>2]=a;c[s>>2]=b;c[q>>2]=e;c[p>>2]=(c[(c[r>
x3e;2]|0)+8>>2]|0)+(c[s>>2]<<4);c[o>>2]=(c[(c[r>>2]|0)+8>>2]|0)+(c[q
>>2]<<4);c[h>>2]=c[(c[p>>2]|0)+8>>2];c[j>>2]=c[(c[o>>2]|0)+
8>>2];c[n>>2]=c[c[p>>2]>>2];c[m>>2]=c[c[o>>2]>>2];c[g>
;>2]=(c[n>>2]|0)>>>0<=(c[m>>2]|0)>>>0?c[n>>2]|0:c[m>
x3e;2]|0;while(1){if((c[g>>2]|0)>>>0<8)break;if((d[c[h>>2]>>0]|0)&(d[c[j
x3e;>2]>>0]|0)|0){k=4;break}c[h>>2]=(c[h>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1;c
[g>>2]=(c[g>>2]|0)-8}if((k|0)==4){c[f>>2]=1;s=c[f>>2]|0;i=l;return s|0}if(!(c[g>>
;2]|0)){c[f>>2]=0;s=c[f>>2]|0;i=l;return s|0}else{c[f>>2]=(d[c[h>>2]>>0]|0)&
;(d[c[j>>2]>>0]|0)&~(255>>c[g>>2]);s=c[f>>2]|0;i=l;return s|0}return 0}function
ln(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;x=i;i=i+80|0;h=x+68|0;j
=x+64|0;k=x+60|0;l=x+56|0;v=x+52|0;q=x+48|0;r=x+44|0;s=x+40|0;m=x+36|0;n=x+32|0;o=x+28|0;t=x+24|0;u=x+20|0;w=x+16|0;p=x;c[h>
;>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[q>>2]=0;if((c[j>>2]|0)>(c[k
x3e;>2]|0)){c[v>>2]=c[j>>2];c[j>>2]=c[k>>2];c[k>>2]=c[v>>2]}if(!((
c[j>>2]|0)>=0?(c[j>>2]|0)<(c[k>>2]|0):0)){w=c[q>>2]|0;i=x;return w|0}if((c[k
x3e;>2]|0)>=(c[c[h>>2]>>2]|0)){w=c[q>>2]|0;i=x;return w|0}c[r>>2]=(c[(c[h>
;>2]|0)+8>>2]|0)+(c[j>>2]<<4);c[s>>2]=(c[(c[h>>2]|0)+8>>2]|0)+(
c[k>>2]<<4);c[m>>2]=c[c[r>>2]>>2];c[n>>2]=c[c[s>>2]>
x3e;2];a:do if((c[n>>2]|0)>>>0>0){b:do if((c[n>>2]|0)>>>0>(c[m>
x3e;2]|0)>>>0){c[q>>2]=mn(c[r>>2]|0,c[n>>2]|0,c[l>>2]|0)|0;if(c[q>
x3e;2]|0){w=c[q>>2]|0;i=x;return w|0}c[t>>2]=c[m>>2];while(1){if((c[t>>2]|0)>>
x3e;0>=(c[n>>2]|0)>>>0)break b;nn(c[r>>2]|0,c[t>>2]|0);c[t>>2]=(c[t
x3e;>2]|0)+1}}while(0);c[u>>2]=c[(c[s>>2]|0)+8>>2];c[w>>2]=c[(c[r>>2]|0)+
8>>2];c[t>>2]=((c[n>>2]|0)+7|0)>>>3;while(1){if((c[t>>2]|0)>>
x3e;0<=0)break a;a[c[w>>2]>>0]=d[c[w>>2]>>0]|0|(d[c[u>>2]>>0]|0
);c[w>>2]=(c[w>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+-1
}}while(0);c[c[s>>2]>>2]=0;c[(c[s>>2]|0)+12>>2]=0;c[o>>2]=(c[c[h>>2]
x3e;>2]|0)-1-(c[k>>2]|0);if((c[o>>2]|0)>0){w=c[s>>2]|0;c[p>>2]=c[w>>
2];c[p+4>>2]=c[w+4>>2];c[p+8>>2]=c[w+8>>2];c[p+12>>2]=c[w+12>>2];Ts(
c[s>>2]|0,(c[s>>2]|0)+16|0,c[o>>2]<<4|0)|0;w=(c[s>>2]|0)+(c[o>>2]<
;<4)|0;c[w>>2]=c[p>>2];c[w+4>>2]=c[p+4>>2];c[w+8>>2]=c[p+8>>2];
c[w+12>>2]=c[p+12>>2]}w=c[h>>2]|0;c[w>>2]=(c[w>>2]|0)+-1;w=c[q>>2]|0
;i=x;return w|0}function mn(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;k=i;i=i+32|0;e=k+20|0;l=k+16|0;f=k+12|0;j=k
+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=((c[(c[e>>2]|0)+4>
x3e;2]|0)+7|0)>>>3;c[h>>2]=((c[l>>2]|0)+7|0)>>>3;c[g>>2]=0;if((c[h
x3e;>2]|0)>>>0<=(c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>
;>2]=(c[h>>2]|0)+7&-8;l=hc(c[f>>2]|0,1,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2
]|0)+8>>2]|0,g)|0;c[(c[e>>2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l
|0}c[(c[e>>2]|0)+4>>2]=c[h>>2]<<3;l=c[g>>2]|0;i=k;return l|0}function nn(b,e){
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]=b;c[g>>2]=e;if((c[g>>2]|0
)>>>0>=(c[c[f>>2]>>2]|0)>>>0){i=j;return}c[h>>2]=(c[(c[f>
x3e;2]|0)+8>>2]|0)+(c[g>>2]>>3);a[c[h>>2]>>0]=(d[c[h>>2]>>
0]|0)&~(128>>(c[g>>2]&7));i=j;return}function on(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]=(Tb(c[c
[j>>2]>>2]|0)|0)>>16;c[f+4>>2]=(Tb(c[(c[j>>2]|0)+4>>2]|0)|0)>
x3e;16;pn(c[h>>2]|0,c[g>>2]|0,1,f);i=e;return}function pn(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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;h=o+16|0;j=o+12|0;k=o+8|0;l=o+4|0;m=o;c[f>>2]=a;c[g>>2
]=b;c[h>>2]=d;c[j>>2]=e;if(c[(c[f>>2]|0)+4>>2]|0){i=o;return}if((c[g>>2]|0)<
;0|(c[g>>2]|0)>1)c[g>>2]=(c[g>>2]|0)!=0&1;if(((c[(c[f>>2]|0)+12>>2]|
0)+-1|0)>>>0>=2){i=o;return}c[k>>2]=(c[f>>2]|0)+16+((c[g>>2]|0)*36|0);while(1){
if((c[h>>2]|0)>>>0<=0){n=10;break}c[m>>2]=c[c[f>>2]>>2];c[l>>
;2]=qn(c[k>>2]|0,c[c[j>>2]>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[m>>2]|0,0)|
0;if(c[l>>2]|0)break;c[h>>2]=(c[h>>2]|0)+-1;c[j>>2]=(c[j>>2]|0)+8}if((n|0)==10
){i=o;return}c[(c[f>>2]|0)+4>>2]=c[l>>2];i=o;return}function qn(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;s=i;i=i+48|0;g=s+40|0;h=s+36|0;j=s+32|0;k=s+28|0;l=s+24|0;m=s+20|0;n=
s+16|0;q=s+12|0;p=s+8|0;r=s+4|0;o=s;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>
;2]=f;c[m>>2]=0;c[n>>2]=0;if((c[j>>2]|0)<0){c[n>>2]=c[n>>2]|1;if((c[j>
;>2]|0)==-21){c[n>>2]=c[n>>2]|2;c[h>>2]=(c[h>>2]|0)+(c[j>>2]|0)}c[j>
x3e;2]=0}if(c[l>>2]|0)c[c[l>>2]>>2]=-1;c[r>>2]=c[c[g>>2]>>2];c[o>
;>2]=c[(c[g>>2]|0)+8>>2];c[p>>2]=0;while(1){if((c[p>>2]|0)>>>0>=(
c[r>>2]|0)>>>0)break;if((c[c[o>>2]>>2]|0)==(c[h>>2]|0)?(c[(c[o>>
;2]|0)+4>>2]|0)==(c[j>>2]|0):0)break;c[p>>2]=(c[p>>2]|0)+1;c[o>>2]=(c[o>
x3e;2]|0)+12}do if((c[p>>2]|0)>>>0>=(c[r>>2]|0)>>>0){c[m>>2]=rn
(c[g>>2]|0,c[k>>2]|0,o)|0;if(c[m>>2]|0){b=c[m>>2]|0;i=s;return b|0}else{c[c[o>>
;2]>>2]=c[h>>2];c[(c[o>>2]|0)+4>>2]=c[j>>2];c[(c[o>>2]|0)+8>>
;2]=c[n>>2];break}}while(0);c[m>>2]=tn((c[g>>2]|0)+12|0,c[k>>2]|0,q)|0;if(c[m>>
;2]|0){b=c[m>>2]|0;i=s;return b|0}c[m>>2]=wn(c[q>>2]|0,c[p>>2]|0,c[k>>2]|0)|0;
if(!((c[m>>2]|0)==0&(c[l>>2]|0)!=0)){b=c[m>>2]|0;i=s;return b|0}c[c[l>>2]>>
;2]=c[p>>2];b=c[m>>2]|0;i=s;return b|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;
l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;j=l+8|0;h=l+4|0;k=l;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>
;>2]=0;c[k>>2]=0;c[h>>2]=c[c[e>>2]>>2];c[h>>2]=(c[h>>2]|0)+1;if
((c[h>>2]|0)>>>0>=(c[(c[e>>2]|0)+4>>2]|0)>>>0?(c[j>>2
]=sn(c[e>>2]|0,c[h>>2]|0,c[f>>2]|0)|0,c[j>>2]|0):0){b=c[k>>2]|0;a=c[g>>
;2]|0;c[a>>2]=b;a=c[j>>2]|0;i=l;return a|0}c[k>>2]=(c[(c[e>>2]|0)+8>>2]|0)+((c
[h>>2]|0)*12|0)+-12;c[c[k>>2]>>2]=0;c[(c[k>>2]|0)+4>>2]=0;c[(c[k>>2]|
0)+8>>2]=0;c[c[e>>2]>>2]=c[h>>2];b=c[k>>2]|0;a=c[g>>2]|0;c[a>
x3e;2]=b;a=c[j>>2]|0;i=l;return a|0}function sn(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;k=i;i=i+32|0;
e=k+20|0;l=k+16|0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=c[(
c[e>>2]|0)+4>>2];c[h>>2]=c[l>>2];c[g>>2]=0;if((c[h>>2]|0)>>
;>0<=(c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>>2]=(c[h>>
2]|0)+7&-8;l=hc(c[f>>2]|0,12,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+8>>2]|0,g)|
0;c[(c[e>>2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l|0}c[(c[e>>2]|0)+
4>>2]=c[h>>2];l=c[g>>2]|0;i=k;return l|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;k=i;i=i+32|0;l=k+20|0;e=k+16|0;f=k+12|0;h=k+8|0;g=k+4|0;j=k;c[l>>2]=a;c[e>>2]=b;c[f>>2
]=d;c[h>>2]=0;c[g>>2]=c[c[l>>2]>>2];d=c[l>>2]|0;if(!(c[g>>2]|0)){c[h
>>2]=un(d,c[e>>2]|0,j)|0;j=c[j>>2]|0;l=c[f>>2]|0;c[l>>2]=j;l=c[h>>2]|
0;i=k;return l|0}else{c[j>>2]=(c[d+8>>2]|0)+(c[g>>2]<<4)+-16;j=c[j>>2]|0;l=c[f
>>2]|0;c[l>>2]=j;l=c[h>>2]|0;i=k;return l|0}return 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;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[e>>2]=a;c[f>>2]=b;c[g
x3e;>2]=d;c[j>>2]=0;c[k>>2]=0;c[h>>2]=c[c[e>>2]>>2];c[h>>2]=(c[
h>>2]|0)+1;if((c[h>>2]|0)>>>0>(c[(c[e>>2]|0)+4>>2]|0)>>>
;0?(c[j>>2]=vn(c[e>>2]|0,c[h>>2]|0,c[f>>2]|0)|0,c[j>>2]|0):0){b=c[k>>
;2]|0;a=c[g>>2]|0;c[a>>2]=b;a=c[j>>2]|0;i=l;return a|0}c[k>>2]=(c[(c[e>>2]|0)+
8>>2]|0)+(c[h>>2]<<4)+-16;c[c[k>>2]>>2]=0;c[(c[k>>2]|0)+12>>
;2]=0;c[c[e>>2]>>2]=c[h>>2];b=c[k>>2]|0;a=c[g>>2]|0;c[a>>2]=b;a=c[j
x3e;>2]|0;i=l;return a|0}function vn(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;k=i;i=i+32|0;e=k+20|0;l=k+16|
0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=c[(c[e>>2
]|0)+4>>2];c[h>>2]=c[l>>2];c[g>>2]=0;if((c[h>>2]|0)>>>0<=(
c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>>2]=(c[h>>2]|0)+7&-8;
l=hc(c[f>>2]|0,16,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+8>>2]|0,g)|0;c[(c[e>
x3e;2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l|0}c[(c[e>>2]|0)+4>>2]=
c[h>>2];l=c[g>>2]|0;i=k;return l|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;m=i;i=i+
32|0;g=m+16|0;h=m+12|0;j=m+8|0;k=m+4|0;l=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=0;if((c
[h>>2]|0)<0){l=c[k>>2]|0;i=m;return l|0}do if((c[h>>2]|0)>>>0>=(c[c[g>
;>2]>>2]|0)>>>0){c[k>>2]=mn(c[g>>2]|0,(c[h>>2]|0)+1|0,c[j>>
;2]|0)|0;if(c[k>>2]|0){l=c[k>>2]|0;i=m;return l|0}else{c[c[g>>2]>>2]=(c[h>>2]|
0)+1;break}}while(0);c[l>>2]=(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]>>3);a[c[l>
x3e;2]>>0]=d[c[l>>2]>>0]|0|128>>(c[h>>2]&7);l=c[k>>2]|0;i=m;return
l|0}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,l=0,m=0,n=0;n=i;i=i+48|0;f=n+36|0;e=n+32|0;g=n+28|0;k=n+24
|0;j=n+20|0;m=n+16|0;h=n+12|0;l=n;c[f>>2]=a;c[e>>2]=b;c[g>>2]=d;c[k>>2]=0;if(c[(c[f>
;>2]|0)+4>>2]|0){i=n;return}c[m>>2]=c[c[f>>2]>>2];if((c[e>>2]|0)<0|(
c[e>>2]|0)>1)c[e>>2]=(c[e>>2]|0)!=0&1;c[j>>2]=(c[f>>2]|0)+16+((c[e
x3e;>2]|0)*36|0);a:do if((c[(c[f>>2]|0)+12>>2]|0)==1){c[h>>2]=0;while(1){e=c[j>>2]|
0;if((c[h>>2]|0)>=3)break;a=(Tb(c[c[g>>2]>>2]|0)|0)>>16;d=(Tb(c[(c[g>>2]|
0)+4>>2]|0)|0)>>16;c[k>>2]=qn(e,a,d,c[m>>2]|0,l+(c[h>>2]<<2)|0)|0;if
(c[k>>2]|0)break a;c[h>>2]=(c[h>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+8}c[k>>
2]=yn(e,c[l>>2]|0,c[l+4>>2]|0,c[l+8>>2]|0,c[m>>2]|0)|0;if(!(c[k>>2]|0)){i=n;return
}}else c[k>>2]=6;while(0);c[(c[f>>2]|0)+4>>2]=c[k>>2];i=n;return}function yn(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;p=i;i=i+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;
o=p+8|0;m=p+4|0;n=p;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[o>
;>2]=0;c[m>>2]=c[(c[g>>2]|0)+24>>2];c[n>>2]=c[(c[g>>2]|0)+24+8>>
;2];while(1){if((c[m>>2]|0)>>>0<=0)break;if(zn(c[n>>2]|0,c[h>>2]|0)|0)break;if
(zn(c[n>>2]|0,c[j>>2]|0)|0)break;if(zn(c[n>>2]|0,c[k>>2]|0)|0)break;c[m>>2]=(c
[m>>2]|0)+-1;c[n>>2]=(c[n>>2]|0)+16}if((c[m>>2]|0)==0?(c[o>>2]=un((c[g>
x3e;2]|0)+24|0,c[l>>2]|0,n)|0,c[o>>2]|0):0){f=c[o>>2]|0;i=p;return f|0}c[o>>2]=wn(c[n>
;>2]|0,c[h>>2]|0,c[l>>2]|0)|0;if(c[o>>2]|0){f=c[o>>2]|0;i=p;return f|0}c[o>>
;2]=wn(c[n>>2]|0,c[j>>2]|0,c[l>>2]|0)|0;if(c[o>>2]|0){f=c[o>>2]|0;i=p;return f
|0}c[o>>2]=wn(c[n>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;f=c[o>>2]|0;i=p;return f|0}function
zn(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=b;if((c[g>
x3e;2]|0)>>>0>=(c[c[f>>2]>>2]|0)>>>0){c[e>>2]=0;a=c[e>>
;2]|0;i=h;return a|0}else{c[e>>2]=(d[(c[(c[f>>2]|0)+8>>2]|0)+(c[g>>2]>>3)>
;>0]|0)&128>>(c[g>>2]&7);a=c[e>>2]|0;i=h;return a|0}return 0}function An(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>
2]=0;if(c[(c[d>>2]|0)+4>>2]|0){i=h;return}c[g>>2]=c[c[d>>2]>>2];if((c[(c[d>
;>2]|0)+12>>2]|0)==1){c[f>>2]=Bn((c[d>>2]|0)+16|0,c[e>>2]|0,c[g>>2]|0)|0;
if((c[f>>2]|0)==0?(c[f>>2]=Bn((c[d>>2]|0)+16+36|0,c[e>>2]|0,c[g>>2]|0)|0,(c[f
x3e;>2]|0)==0):0){i=h;return}}else c[f>>2]=6;c[(c[d>>2]|0)+4>>2]=c[f>>2];i=h;return
}function Bn(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+8|0;f=e+4|0;c[g>>2]=a;c[h>>
;2]=b;c[f>>2]=d;hn(c[g>>2]|0,c[h>>2]|0);d=un((c[g>>2]|0)+12|0,c[f>>2]|0,e)|0;i
=e;return d|0}function Cn(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,x=0,y
=0,z=0;z=i;i=i+208|0;h=z+192|0;j=z+188|0;k=z+184|0;l=z+180|0;m=z+176|0;s=z+40|0;q=z+36|0;p=z+32|0;n=z+28|0;o=z+24|0;x=z+20|0;y=z
+16|0;t=z+12|0;u=z+8|0;w=z+4|0;r=z;v=z+196|0;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[s
>>2]=z+48;if(b[(c[k>>2]|0)+2>>1]|0?b[c[k>>2]>>1]|0:0){c[q>>2]=Dn(c[s
>>2]|0,c[k>>2]|0,c[j>>2]|0,c[l>>2]|0)|0;a:do if(!(c[q>>2]|0)){c[n>>2
]=(c[(c[s>>2]|0)+24>>2]|0)+4;c[o>>2]=(c[(c[s>>2]|0)+24>>2]|0)+4+204;c[x>
x3e;2]=c[(c[n>>2]|0)+196>>2];c[y>>2]=c[(c[o>>2]|0)+196>>2];c[t>>2]=c
[x>>2];c[u>>2]=c[y>>2];a[v>>0]=0;c[w>>2]=Mb(c[(c[l>>2]|0)+412+4>
;>2]|0,c[y>>2]|0)|0;c[r>>2]=(c[w>>2]|0)+32&-64;if(c[r>>2]|0?(c[w>>2]|
0)!=(c[r>>2]|0):0){a[v>>0]=1;c[y>>2]=xb(c[y>>2]|0,c[r>>2]|0,c[w>>2]|
0)|0;if((c[r>>2]|0)<(c[w>>2]|0))c[x>>2]=(c[x>>2]|0)-((c[x>>2]|0)/50|0);Zm
(c[(c[s>>2]|0)+24>>2]|0,c[x>>2]|0,c[y>>2]|0,0,0)|0}a[(c[s>>2]|0)+120>>
;0]=1;a[(c[s>>2]|0)+121>>0]=1;a[(c[s>>2]|0)+122>>0]=((c[m>>2]|0)==2?1:(c[m>
;>2]|0)==3)&1;a[(c[s>>2]|0)+123>>0]=((c[m>>2]|0)==2?1:(c[m>>2]|0)==4)&1;a
[(c[s>>2]|0)+124>>0]=(c[m>>2]|0)!=1;c[p>>2]=0;while(1){if((c[p>>2]|0)>=2)
break a;Fn(c[s>>2]|0,c[p>>2]|0);Ln(c[s>>2]|0);Mn((c[s>>2]|0)+28+((c[p>>2]|0)*40
|0)|0,c[(c[s>>2]|0)+24>>2]|0,c[p>>2]|0,c[s>>2]|0);Rn(c[s>>2]|0,c[p>>
2]|0);if((c[p>>2]|0)==1)Vn((c[l>>2]|0)+412|0,c[s>>2]|0);Wn(c[s>>2]|0,c[p>>2]|0
);Xn(c[s>>2]|0,c[p>>2]|0);Yn(c[s>>2]|0,c[p>>2]|0);Zn(c[s>>2]|0,c[p>>
2]|0);if(a[v>>0]|0)Zm(c[(c[s>>2]|0)+24>>2]|0,c[t>>2]|0,c[u>>2]|0,0,0)|0;c[p>
;>2]=(c[p>>2]|0)+1}}while(0);_n(c[s>>2]|0);c[h>>2]=c[q>>2];y=c[h>>2]|0;i=
z;return y|0}c[h>>2]=0;y=c[h>>2]|0;i=z;return y|0}function Dn(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,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+96|0;p=F+88|0;q=F+84|0;r=F+80|0;s
=F+76|0;x=F+72|0;y=F+68|0;k=F+64|0;m=F+60|0;l=F+56|0;o=F+52|0;h=F+48|0;j=F+44|0;n=F+40|0;D=F+36|0;C=F+32|0;E=F+28|0;z=F+24|0;B=F
+20|0;A=F+16|0;t=F+12|0;v=F+8|0;u=F+4|0;w=F;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;g=c[
p>>2]|0;d=g+128|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(d|0));f=c[c[s>>2]>>2]|0;c[(c[p
x3e;>2]|0)+16>>2]=f;c[y>>2]=f;f=hc(c[y>>2]|0,48,0,b[(c[q>>2]|0)+2>>1]|0,0
,x)|0;c[(c[p>>2]|0)+8>>2]=f;if(c[x>>2]|0){E=c[x>>2]|0;i=F;return E|0}f=hc(c[y>>
;2]|0,8,0,b[c[q>>2]>>1]|0,0,x)|0;c[(c[p>>2]|0)+12>>2]=f;if(c[x>>2]|0){E=c[x>
;>2]|0;i=F;return E|0}c[c[p>>2]>>2]=b[(c[q>>2]|0)+2>>1];c[(c[p>>2]|0)+4
x3e;>2]=b[c[q>>2]>>1];c[k>>2]=0;c[o>>2]=c[(c[p>>2]|0)+8>>2];c[h
>>2]=c[(c[p>>2]|0)+12>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0
>=(c[(c[p>>2]|0)+4>>2]|0)>>>0)break;c[m>>2]=(b[(c[(c[q>>2]|0)+12>
;>2]|0)+(c[l>>2]<<1)>>1]|0)+1;c[j>>2]=(c[m>>2]|0)-(c[k>>2]|0);c
[c[h>>2]>>2]=(c[o>>2]|0)+((c[k>>2]|0)*48|0);c[(c[h>>2]|0)+4>>2]=c[j
x3e;>2];if((c[j>>2]|0)>0){c[n>>2]=(c[o>>2]|0)+((c[k>>2]|0)*48|0);c[c[n>
x3e;2]>>2]=(c[o>>2]|0)+((c[m>>2]|0)*48|0)+-48;c[(c[n>>2]|0)+8>>2]=c[h>>
;2];while(1){if((c[j>>2]|0)<=1)break;c[(c[n>>2]|0)+4>>2]=(c[n>>2]|0)+48;c[(c[n>
;>2]|0)+48>>2]=c[n>>2];c[n>>2]=(c[n>>2]|0)+48;c[(c[n>>2]|0)+8>>
2]=c[h>>2];c[j>>2]=(c[j>>2]|0)+-1}c[(c[n>>2]|0)+4>>2]=(c[o>>2]|0)+((
c[k>>2]|0)*48|0)}c[h>>2]=(c[h>>2]|0)+8;c[k>>2]=c[m>>2];c[l>>2]=(c[l
x3e;>2]|0)+1}c[D>>2]=c[(c[p>>2]|0)+8>>2];c[C>>2]=c[D>>2];c[E>>2
]=c[(c[q>>2]|0)+4>>2];c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[c[p
x3e;>2]>>2]|0)>>>0)break;c[B>>2]=((c[c[C>>2]>>2]|0)-(c[D>>
2]|0)|0)/48|0;c[A>>2]=((c[(c[C>>2]|0)+4>>2]|0)-(c[D>>2]|0)|0)/48|0;if(!(a[(c[(c[q>
x3e;2]|0)+8>>2]|0)+(c[z>>2]|0)>>0]&1))c[(c[C>>2]|0)+12>>2]=1;c[t>>
;2]=(c[(c[E>>2]|0)+(c[z>>2]<<3)>>2]|0)-(c[(c[E>>2]|0)+(c[B>>2]<
x3c;3)>>2]|0);c[v>>2]=(c[(c[E>>2]|0)+(c[z>>2]<<3)+4>>2]|0)-(c[(c[E
x3e;>2]|0)+(c[B>>2]<<3)+4>>2]|0);g=(En(c[t>>2]|0,c[v>>2]|0)|0)&255;a
[(c[C>>2]|0)+20>>0]=g;c[u>>2]=(c[(c[E>>2]|0)+(c[A>>2]<<3)>>
;2]|0)-(c[(c[E>>2]|0)+(c[z>>2]<<3)>>2]|0);c[w>>2]=(c[(c[E>>2]|0)+(c[
A>>2]<<3)+4>>2]|0)-(c[(c[E>>2]|0)+(c[z>>2]<<3)+4>>2]|0);g=(
En(c[u>>2]|0,c[w>>2]|0)|0)&255;a[(c[C>>2]|0)+21>>0]=g;g=c[C>>2]|0;do if(!(
c[(c[C>>2]|0)+12>>2]&1|0)){if((a[g+20>>0]|0)==(a[(c[C>>2]|0)+21>>0]|0)){if
((a[(c[C>>2]|0)+21>>0]|0)==4?($b(c[t>>2]|0,c[v>>2]|0,c[u>>2]|0,c[w>>
2]|0)|0)==0:0)break;o=(c[C>>2]|0)+12|0;c[o>>2]=c[o>>2]|2}}else{o=g+12|0;c[o>>2]=c[o>
;>2]|2}while(0);c[z>>2]=(c[z>>2]|0)+1;c[C>>2]=(c[C>>2]|0)+48}c[(c[p>>2]|0
)+20>>2]=c[q>>2];c[(c[p>>2]|0)+24>>2]=c[s>>2];Fn(c[p>>2]|0,0);Gn(c[p
>>2]|0);c[x>>2]=Hn((c[p>>2]|0)+28|0,(c[r>>2]|0)+16|0,(c[r>>2]|0)+16+12|0,(c[r
x3e;>2]|0)+16+24|0,c[y>>2]|0)|0;if(c[x>>2]|0){E=c[x>>2]|0;i=F;return E|0}c[x>>2]=Hn
((c[p>>2]|0)+28+40|0,(c[r>>2]|0)+16+36|0,(c[r>>2]|0)+16+36+12|0,(c[r>>2]|0)+16+36+24|0,c
[y>>2]|0)|0;E=c[x>>2]|0;i=F;return E|0}function En(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0
;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[d>>2]=a;c[e>>2]=b;c[h>>2]=4;b=c[d>>2]|0;c[f>
;>2]=(c[d>>2]|0)>=0?b:0-b|0;b=c[e>>2]|0;c[g>>2]=(c[e>>2]|0)>=0?b:0-b|0;if
(((c[g>>2]|0)*12|0)<(c[f>>2]|0)){c[h>>2]=(c[d>>2]|0)>=0?2:-2;h=c[h>>
2]|0;i=j;return h|0}if(((c[f>>2]|0)*12|0)>=(c[g>>2]|0)){h=c[h>>2]|0;i=j;return h|0}c[h>
x3e;2]=(c[e>>2]|0)>=0?-1:1;h=c[h>>2]|0;i=j;return h|0}function Fn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,
h=0,j=0;h=i;i=i+32|0;j=h+16|0;d=h+12|0;g=h+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[g>>2]=c[(c[(c[j
x3e;>2]|0)+20>>2]|0)+4>>2];c[f>>2]=c[(c[j>>2]|0)+8>>2];c[e>>2]=
c[c[j>>2]>>2];while(1){if((c[e>>2]|0)>>>0<=0)break;c[(c[f>>2]|0)+16
x3e;>2]=0;c[(c[f>>2]|0)+32>>2]=0;b=c[g>>2]|0;if(!(c[d>>2]|0)){c[(c[f>>2]|
0)+36>>2]=c[b>>2];c[(c[f>>2]|0)+40>>2]=c[(c[g>>2]|0)+4>>2]}else{c[(c
[f>>2]|0)+36>>2]=c[b+4>>2];c[(c[f>>2]|0)+40>>2]=c[c[g>>2]>>
;2]}c[e>>2]=(c[e>>2]|0)+-1;c[f>>2]=(c[f>>2]|0)+48;c[g>>2]=(c[g>>2]|0
)+8}i=h;return}function Gn(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;r=i;i=i+64|0;b=r+52|0;l=r+48
|0;h=r+44|0;q=r+40|0;f=r+36|0;e=r+32|0;d=r+28|0;j=r+24|0;k=r+20|0;o=r+16|0;p=r+12|0;n=r+8|0;m=r+4|0;g=r;c[b>>2]=a;c[l
x3e;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[(c[b>>2]|0)+4>>2]|0)>>
;>0)break;c[g>>2]=0;a:do if((c[(c[(c[b>>2]|0)+12>>2]|0)+(c[l>>2]<<3)+4>
;>2]|0)>>>0>=4){c[h>>2]=c[(c[(c[b>>2]|0)+12>>2]|0)+(c[l>>2]<
;<3)>>2];a=c[h>>2]|0;c[f>>2]=a;c[q>>2]=a;do{c[f>>2]=c[(c[f>>2]|
0)+4>>2];if((c[f>>2]|0)==(c[h>>2]|0))break a;c[j>>2]=(c[(c[f>>2]|0)+36>
x3e;2]|0)-(c[(c[q>>2]|0)+36>>2]|0);c[k>>2]=(c[(c[f>>2]|0)+40>>2]|0)-(c[(c[q>
;>2]|0)+40>>2]|0)}while((c[j>>2]|0)==0?(c[k>>2]|0)==0:0);c[e>>2]=c[q>>2];
while(1){c[q>>2]=c[e>>2];c[e>>2]=c[c[e>>2]>>2];if((c[e>>2]|0)==(c[h
x3e;>2]|0))break a;c[o>>2]=(c[(c[q>>2]|0)+36>>2]|0)-(c[(c[e>>2]|0)+36>>2]|
0);c[p>>2]=(c[(c[q>>2]|0)+40>>2]|0)-(c[(c[e>>2]|0)+40>>2]|0);if((c[o>>
;2]|0)==0?(c[p>>2]|0)==0:0)continue;c[n>>2]=_b(c[j>>2]|0,c[k>>2]|0,c[o>>2]|0,c
[p>>2]|0)|0;if(c[n>>2]|0)break}c[h>>2]=c[q>>2];c[j>>2]=c[o>>2];c[k
x3e;>2]=c[p>>2];do{c[d>>2]=c[f>>2];while(1){c[f>>2]=c[d>>2];c[d>>
;2]=c[(c[d>>2]|0)+4>>2];if((c[d>>2]|0)==(c[h>>2]|0))c[g>>2]=1;c[o>>2
]=(c[(c[d>>2]|0)+36>>2]|0)-(c[(c[f>>2]|0)+36>>2]|0);c[p>>2]=(c[(c[d>>
;2]|0)+40>>2]|0)-(c[(c[f>>2]|0)+40>>2]|0);if((c[o>>2]|0)==0?(c[p>>2]|0)==0:0)continue
;c[m>>2]=_b(c[j>>2]|0,c[k>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;if(c[m>>2]|0)
break}if((c[m>>2]^c[n>>2]|0)<0){do{a=(c[q>>2]|0)+12|0;c[a>>2]=c[a>>2]|4;c
[q>>2]=c[(c[q>>2]|0)+4>>2]}while((c[q>>2]|0)!=(c[f>>2]|0));a=(c[q>>2
]|0)+12|0;c[a>>2]=c[a>>2]|4}c[q>>2]=c[f>>2];c[f>>2]=c[d>>2];c[n>
;>2]=c[m>>2];c[j>>2]=c[o>>2];c[k>>2]=c[p>>2]}while((c[g>>2]|0)!=
0^1)}while(0);c[l>>2]=(c[l>>2]|0)+1}i=r;return}function Hn(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;r=i;i=i+48|0;g=r+40|0;h=r+36|0;j=r+32|0;s=r+28|0;k=r+24|0;l=r+20|0;m=r+16|0;q=r+12|0
;p=r+8|0;o=r+4|0;n=r;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[s>>2]=e;c[k>>2]=f;c[s>
;>2]=c[s>>2];c[l>>2]=c[c[h>>2]>>2];a=hc(c[k>>2]|0,4,0,c[l>>2]
x3c;<1,0,m)|0;c[(c[g>>2]|0)+12>>2]=a;if(c[m>>2]|0){s=c[m>>2]|0;i=r;return s|0}s=hc(
c[k>>2]|0,28,0,c[l>>2]|0,0,m)|0;c[(c[g>>2]|0)+8>>2]=s;if(c[m>>2]|0){s=c[m>
;>2]|0;i=r;return s|0}s=hc(c[k>>2]|0,16,0,(c[l>>2]<<1)+1|0,0,m)|0;c[(c[g>>2]|0)+24
x3e;>2]=s;if(c[m>>2]|0){s=c[m>>2]|0;i=r;return s|0}c[c[g>>2]>>2]=c[l>>2];
c[(c[g>>2]|0)+16>>2]=(c[(c[g>>2]|0)+12>>2]|0)+(c[l>>2]<<2);c[(c[g>
;>2]|0)+4>>2]=0;c[(c[g>>2]|0)+20>>2]=0;c[(c[g>>2]|0)+28>>2]=0;c[q>
x3e;2]=c[(c[g>>2]|0)+8>>2];c[p>>2]=c[(c[h>>2]|0)+8>>2];while(1){if((c[l>
x3e;2]|0)>>>0<=0)break;c[c[q>>2]>>2]=c[c[p>>2]>>2];c[(c[q>>
;2]|0)+4>>2]=c[(c[p>>2]|0)+4>>2];c[(c[q>>2]|0)+16>>2]=c[(c[p>>2]|0)+
8>>2];c[l>>2]=(c[l>>2]|0)+-1;c[q>>2]=(c[q>>2]|0)+28;c[p>>2]=(c[p>
;>2]|0)+12}a:do if(c[j>>2]|0){c[o>>2]=c[(c[j>>2]|0)+8>>2];c[l>>2]=c[c[j
x3e;>2]>>2];c[(c[g>>2]|0)+32>>2]=c[j>>2];while(1){if((c[l>>2]|0)>>
;>0<=0)break a;In(c[g>>2]|0,c[o>>2]|0);c[l>>2]=(c[l>>2]|0)+-1;c[o>>2
]=(c[o>>2]|0)+16}}while(0);if((c[(c[g>>2]|0)+4>>2]|0)==(c[c[g>>2]>>2]|0)){s=c[
m>>2]|0;i=r;return s|0}c[l>>2]=c[c[g>>2]>>2];c[n>>2]=0;while(1){if((c[n>
x3e;2]|0)>>>0>=(c[l>>2]|0)>>>0)break;Jn(c[g>>2]|0,c[n>>2]|0);c[
n>>2]=(c[n>>2]|0)+1}s=c[m>>2]|0;i=r;return s|0}function In(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;l=i;i=i+32|0;e=l+24|0;m=l+20|0;j=l+16|0;k=l+12|0;f=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[m>>2]=b;c[j
x3e;>2]=0;c[k>>2]=0;c[f>>2]=c[(c[m>>2]|0)+8>>2];c[h>>2]=c[c[m>>
2]>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>
;>0)break;if(!(c[j>>2]|0)){m=c[f>>2]|0;c[f>>2]=m+1;c[k>>2]=d[m>>0];c[j>
;>2]=128}if(c[k>>2]&c[j>>2]|0)Jn(c[e>>2]|0,c[g>>2]|0);c[j>>2]=c[j>
;>2]>>1;c[g>>2]=(c[g>>2]|0)+1}i=l;return}function Jn(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;k=i;i=i+32|0;d=k+20|0;l=k+16|0;f=k+12|0;h=k+8|0;e=k+4|0;g=k;c[d>>2]=a;c[l>>2]=b;c[f>>
2]=(c[(c[d>>2]|0)+8>>2]|0)+((c[l>>2]|0)*28|0);if((c[l>>2]|0)>>>0>=(c
[c[d>>2]>>2]|0)>>>0){i=k;return}if(c[(c[f>>2]|0)+16>>2]&4|0){i=k;return
}l=(c[f>>2]|0)+16|0;c[l>>2]=c[l>>2]|4;c[h>>2]=c[(c[d>>2]|0)+16>>2];c
[e>>2]=c[(c[d>>2]|0)+4>>2];c[(c[f>>2]|0)+20>>2]=0;while(1){if((c[e>>
2]|0)>>>0<=0)break;c[g>>2]=c[c[h>>2]>>2];if(Kn(c[f>>2]|0,c[g>
x3e;2]|0)|0){j=6;break}c[e>>2]=(c[e>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+4}if((j|0)==6)c[(c[f
x3e;>2]|0)+20>>2]=c[g>>2];if((c[(c[d>>2]|0)+4>>2]|0)>>>0>=(c[c[
d>>2]>>2]|0)>>>0){i=k;return}j=c[f>>2]|0;a=(c[d>>2]|0)+4|0;l=c[a>>
;2]|0;c[a>>2]=l+1;c[(c[(c[d>>2]|0)+16>>2]|0)+(l<<2)>>2]=j;i=k;return}function
Kn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(((c[c[d>>2]>
;>2]|0)+(c[(c[d>>2]|0)+4>>2]|0)|0)<(c[c[e>>2]>>2]|0)){b=0;b=b&1;i=f;return
b|0}b=((c[c[e>>2]>>2]|0)+(c[(c[e>>2]|0)+4>>2]|0)|0)>=(c[c[d>>2]>>
;2]|0);b=b&1;i=f;return b|0}function Ln(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;o=i;i=i+48|0;d=o+32|0;
k=o+28|0;j=o+24|0;l=o+20|0;g=o+16|0;e=o+12|0;m=o+8|0;h=o+4|0;f=o;c[d>>2]=a;c[k>>2]=0;a:while(1){if((c[k>
;>2]|0)>>>0>=(c[(c[d>>2]|0)+4>>2]|0)>>>0){n=17;break}c[j>>
2]=c[(c[(c[d>>2]|0)+12>>2]|0)+(c[k>>2]<<3)>>2];b:do if(c[(c[(c[d>>2]|
0)+12>>2]|0)+(c[k>>2]<<3)+4>>2]|0){c[l>>2]=c[j>>2];c[g>>2]=
c[l>>2];c[e>>2]=c[l>>2];do{c[g>>2]=c[c[g>>2]>>2];if((c[g>>
2]|0)==(c[j>>2]|0)){n=30;break a}}while((c[(c[g>>2]|0)+36>>2]|0)==(c[(c[l>>2]|0)+36>
;>2]|0));b=c[(c[g>>2]|0)+4>>2]|0;c[l>>2]=b;c[j>>2]=b;while(1){c[e>>2]=c[l
>>2];do{c[e>>2]=c[(c[e>>2]|0)+4>>2];if((c[e>>2]|0)==(c[j>>2]|0))break
b}while((c[(c[e>>2]|0)+36>>2]|0)==(c[(c[l>>2]|0)+36>>2]|0));a=c[(c[e>>2]|0)+36
>>2]|0;b=c[(c[l>>2]|0)+36>>2]|0;if((c[(c[g>>2]|0)+36>>2]|0)<(c[(c[l>
x3e;2]|0)+36>>2]|0)){if((a|0)<(b|0))n=14}else if((a|0)>(b|0))n=14;if((n|0)==14)while(1){n=0;b=(c[l>>
;2]|0)+16|0;c[b>>2]=c[b>>2]|64;c[l>>2]=c[(c[l>>2]|0)+4>>2];if((c[l>>
2]|0)!=(c[e>>2]|0))n=14;else break}c[g>>2]=c[c[e>>2]>>2];c[l>>2]=c[e>>
;2]}}while(0);c[k>>2]=(c[k>>2]|0)+1}if((n|0)==17)c[k>>2]=0;c:while(1){if((n|0)==30)c[k>>
2]=(c[k>>2]|0)+1;if((c[k>>2]|0)>>>0>=(c[c[d>>2]>>2]|0)>>
x3e;0)break;c[m>>2]=(c[(c[d>>2]|0)+8>>2]|0)+((c[k>>2]|0)*48|0);c[h>>2]=c[m>
;>2];c[f>>2]=c[m>>2];if(c[(c[m>>2]|0)+16>>2]&64|0){while(1){c[h>>2]=
c[c[h>>2]>>2];if((c[h>>2]|0)==(c[m>>2]|0)){n=30;continue c}if((c[(c[h>>2]|0)+40
>>2]|0)!=(c[(c[m>>2]|0)+40>>2]|0))break}while(1){c[f>>2]=c[(c[f>>2]|0)+4>
x3e;2];if((c[f>>2]|0)==(c[m>>2]|0)){n=30;continue c}if((c[(c[f>>2]|0)+40>>2]|0)!=(c[(c[m
>>2]|0)+40>>2]|0))break}}if((c[(c[h>>2]|0)+40>>2]|0)<(c[(c[m>>2]|0)+40>
;>2]|0)?(c[(c[f>>2]|0)+40>>2]|0)>(c[(c[m>>2]|0)+40>>2]|0):0){n=(c[m>>
;2]|0)+16|0;c[n>>2]=c[n>>2]|128;n=30;continue}if((c[(c[h>>2]|0)+40>>2]|0)<=(c[(c[m
x3e;>2]|0)+40>>2]|0)){n=30;continue}if((c[(c[f>>2]|0)+40>>2]|0)>=(c[(c[m>>2]|0
)+40>>2]|0)){n=30;continue}n=(c[m>>2]|0)+16|0;c[n>>2]=c[n>>2]|256;n=30}i=o;return}function
Mn(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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0;j=l
;c[m>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=c[(c[m>>2]|0)+8>
;>2];c[j>>2]=c[c[m>>2]>>2];while(1){if((c[j>>2]|0)>>>0<=0)break
;Nn(c[k>>2]|0,c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);c[j>>2]=(c[j>>2]|0)+-1;
c[k>>2]=(c[k>>2]|0)+28}i=l;return}function Nn(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;E=i;i=i+96|0;B=E+88|0;k=E+84|0;l=E+80|0;m=E+76|0;p=E+72|0;u=E
+68|0;h=E+64|0;D=E+60|0;C=E+56|0;w=E+52|0;q=E+48|0;v=E+36|0;t=E+32|0;s=E+28|0;r=E+24|0;o=E+20|0;n=E+16|0;y=E+12|0;A=E+8|0;x=E+4|
0;z=E;c[B>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[p>>2]=(c[k>>2]|0)+4+((
c[l>>2]|0)*204|0);c[u>>2]=c[(c[p>>2]|0)+196>>2];c[h>>2]=c[(c[p>>2]|0
)+200>>2];if(c[(c[B>>2]|0)+16>>2]&8|0){i=E;return}b=Mb(c[c[B>>2]>>2]|0,c[
u>>2]|0)|0;c[D>>2]=b+(c[h>>2]|0);c[C>>2]=Mb(c[(c[B>>2]|0)+4>>2]|0,c[
u>>2]|0)|0;if(!((c[l>>2]|0)==0?!(a[(c[m>>2]|0)+120>>0]|0):0))j=4;do if((j|0)==4){if((c[l
>>2]|0)==1?(a[(c[m>>2]|0)+121>>0]|0)==0:0)break;if((c[l>>2]|0)==0?d[(c[m>>2]|0
)+122>>0]|0:0)h=1;else if((c[l>>2]|0)==1)h=(d[(c[m>>2]|0)+123>>0]|0)!=0;else h=0;c[w>
;>2]=h&1;j=c[C>>2]|0;c[q>>2]=j;c[(c[B>>2]|0)+12>>2]=j;c[v>>2]=0;c[v+
4>>2]=0;c[v+8>>2]=0;if((c[l>>2]|0)==1)On((c[k>>2]|0)+412|0,(c[c[B>>2]>>
;2]|0)+(c[(c[B>>2]|0)+4>>2]|0)|0,c[c[B>>2]>>2]|0,v);switch(c[v>>2]|0){case 1:{
c[(c[B>>2]|0)+8>>2]=(c[v+4>>2]|0)-(c[q>>2]|0);break}case 2:{c[(c[B>>2]|0)+8>
;>2]=c[v+8>>2];break}case 3:{c[(c[B>>2]|0)+8>>2]=c[v+8>>2];c[(c[B>>2]|0)+
12>>2]=(c[v+4>>2]|0)-(c[v+8>>2]|0);break}default:{c[t>>2]=c[(c[B>>2]|0)+20>
;>2];if(c[t>>2]|0){if(!(c[(c[t>>2]|0)+16>>2]&8))Nn(c[t>>2]|0,c[k>>2]|
0,c[l>>2]|0,c[m>>2]|0);c[s>>2]=(c[c[t>>2]>>2]|0)+(c[(c[t>>2]|0)+4>
;>2]>>1);c[r>>2]=(c[(c[t>>2]|0)+8>>2]|0)+(c[(c[t>>2]|0)+12>>2]
x3e;>1);c[o>>2]=(c[c[B>>2]>>2]|0)+(c[(c[B>>2]|0)+4>>2]>>1);c[n
x3e;>2]=Mb((c[o>>2]|0)-(c[s>>2]|0)|0,c[u>>2]|0)|0;c[D>>2]=(c[r>>2]|0)+(c[
n>>2]|0)-(c[C>>2]>>1)}c[(c[B>>2]|0)+8>>2]=c[D>>2];c[(c[B>>
2]|0)+12>>2]=c[q>>2];do if(a[(c[m>>2]|0)+124>>0]|0){if((c[C>>2]|0)>64){c[
C>>2]=Pn(c[p>>2]|0,c[C>>2]|0,0)|0;break}if((c[C>>2]|0)>=32){c[D>>2]=(c[D
x3e;>2]|0)+(c[C>>2]>>1)&-64;c[C>>2]=64;break}h=(c[D>>2]|0)+32&-64;if((c[C
>>2]|0)<=0){c[D>>2]=h;break}c[y>>2]=h;c[A>>2]=(c[D>>2]|0)+(c[C>>
;2]|0)+32&-64;c[x>>2]=(c[y>>2]|0)-(c[D>>2]|0);c[z>>2]=(c[A>>2]|0)-((c[D
x3e;>2]|0)+(c[C>>2]|0));if((c[x>>2]|0)<0)c[x>>2]=0-(c[x>>2]|0);if((c[z>
x3e;2]|0)<0)c[z>>2]=0-(c[z>>2]|0);if((c[x>>2]|0)<=(c[z>>2]|0)){c[D>>
2]=c[y>>2];break}else{c[D>>2]=c[A>>2];break}}while(0);A=(c[D>>2]|0)+(Qn(c[D>>2
]|0,c[C>>2]|0)|0)|0;c[(c[B>>2]|0)+8>>2]=A;c[(c[B>>2]|0)+12>>2]=c[C>>
2]}}a:do if(c[w>>2]|0){c[D>>2]=c[(c[B>>2]|0)+8>>2];c[C>>2]=c[(c[B>>2
]|0)+12>>2];if((c[C>>2]|0)<64)c[C>>2]=64;else c[C>>2]=(c[C>>2]|0)+32&
;-64;switch(c[v>>2]|0){case 3:break a;case 1:{c[(c[B>>2]|0)+8>>2]=(c[v+4>>2]|0)-(c[C>
;>2]|0);c[(c[B>>2]|0)+12>>2]=c[C>>2];break a}case 2:{c[(c[B>>2]|0)+12>>2]=
c[C>>2];break a}default:{c[(c[B>>2]|0)+12>>2]=c[C>>2];h=(c[D>>2]|0)+(c[C>
x3e;2]>>1)|0;if(c[C>>2]&64|0)c[D>>2]=(h&-64)+32;else c[D>>2]=h+32&-64;c[(
c[B>>2]|0)+8>>2]=(c[D>>2]|0)-(c[C>>2]>>1);c[(c[B>>2]|0)+12>>
;2]=c[C>>2];break a}}}while(0);D=(c[B>>2]|0)+16|0;c[D>>2]=c[D>>2]|8;i=E;return}while(0);
c[(c[B>>2]|0)+8>>2]=c[D>>2];c[(c[B>>2]|0)+12>>2]=c[C>>2];D=(c[B>
;>2]|0)+16|0;c[D>>2]=c[D>>2]|8;i=E;return}function On(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;r=i;i=i+48|0;g=r+32|0;h=r+28|0;j=r+24|0;k=r+20|0;o=r+16|0;l=r+12|0;m=r+8|0;p=r+4|0;n=r;c[g>
x3e;2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[c[k>>2]>>2]=0;c[n>>2]=d[(c[
g>>2]|0)+2080>>0];c[o>>2]=c[g>>2];c[l>>2]=c[c[o>>2]>>2];c[
p>>2]=(c[o>>2]|0)+4;while(1){if((c[l>>2]|0)>>>0<=0)break;c[m>>2]=(c[
h>>2]|0)-(c[(c[p>>2]|0)+12>>2]|0);if((c[m>>2]|0)<(0-(c[(c[g>>2]|0)+2076
x3e;>2]|0)|0))break;if((c[h>>2]|0)<=((c[(c[p>>2]|0)+8>>2]|0)+(c[(c[g>>2]|0)+2076
>>2]|0)|0)){q=5;break}c[l>>2]=(c[l>>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+32}do if((q|0
)==5){if((c[n>>2]|0)==0?(c[m>>2]|0)>(c[(c[g>>2]|0)+2072>>2]|0):0)break;q=c[k>
x3e;2]|0;c[q>>2]=c[q>>2]|1;c[(c[k>>2]|0)+4>>2]=c[(c[p>>2]|0)+16>>2]}
while(0);c[o>>2]=(c[g>>2]|0)+516;c[l>>2]=c[c[o>>2]>>2];c[p>>2]=(c[o
x3e;>2]|0)+4+(c[l>>2]<<5)+-32;while(1){if((c[l>>2]|0)>>>0<=0){q=17;break}
c[m>>2]=(c[(c[p>>2]|0)+8>>2]|0)-(c[j>>2]|0);if((c[m>>2]|0)<(0-(c[(c[g>
;>2]|0)+2076>>2]|0)|0)){q=17;break}if((c[j>>2]|0)>=((c[(c[p>>2]|0)+12>>2]|0)-(
c[(c[g>>2]|0)+2076>>2]|0)|0)){q=13;break}c[l>>2]=(c[l>>2]|0)+-1;c[p>>2]=(c[p
x3e;>2]|0)+-32}if((q|0)==13){if((c[n>>2]|0)==0?(c[m>>2]|0)>=(c[(c[g>>2]|0)+2072>>
;2]|0):0){i=r;return}q=c[k>>2]|0;c[q>>2]=c[q>>2]|2;c[(c[k>>2]|0)+8>>2]=c[(c[p
x3e;>2]|0)+16>>2];i=r;return}else if((q|0)==17){i=r;return}}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;k=i;i=i+16|0;f=k+8|0;g=k+4|0;h=k+12|0;j=k;c[f>>2]=b;c[g>>2]=d;a[h>>0]=e;do if((c[g>
x3e;2]|0)>64){c[j>>2]=(c[g>>2]|0)-(c[(c[f>>2]|0)+4+4>>2]|0);if((c[j>>2]|0
)<0)c[j>>2]=0-(c[j>>2]|0);if((c[j>>2]|0)<40){d=c[(c[f>>2]|0)+4+4>>2]|
0;c[g>>2]=d;c[g>>2]=(c[g>>2]|0)<48?48:d}f=c[g>>2]|0;if((c[g>>2]|0)>=
192){c[g>>2]=f+32&-64;break}c[j>>2]=f&63;c[g>>2]=c[g>>2]&-64;f=c[j>
x3e;2]|0;if((c[j>>2]|0)<10){c[g>>2]=(c[g>>2]|0)+f;break}if((f|0)<32){c[g>>2]=(
c[g>>2]|0)+10;break}if((c[j>>2]|0)<54){c[g>>2]=(c[g>>2]|0)+54;break}else{c[g>
x3e;2]=(c[g>>2]|0)+(c[j>>2]|0);break}}else c[g>>2]=64;while(0);if(!(a[h>>0]|0)){j=c[g>
;>2]|0;i=k;return j|0}c[g>>2]=(c[g>>2]|0)+32&-64;j=c[g>>2]|0;i=k;return j|0}function Qn(
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;d=g+16|0;j=g+12|0;h=g+8|0;e=g+4|0;f=g;c[j>>2]=a;c[h>>
;2]=b;c[e>>2]=((c[j>>2]|0)+32&-64)-(c[j>>2]|0);c[f>>2]=((c[j>>2]|0)+(c[h
x3e;>2]|0)+32&-64)-(c[j>>2]|0)-(c[h>>2]|0);b=c[e>>2]|0;a=c[f>>2]|0;if((((c[e
x3e;>2]|0)<0?0-b|0:b)|0)<=(((c[f>>2]|0)<0?0-a|0:a)|0)){c[d>>2]=c[e>>2];j=c[d
x3e;>2]|0;i=g;return j|0}else{c[d>>2]=c[f>>2];j=c[d>>2]|0;i=g;return j|0}return 0}function Rn
(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;s=i;i=i+80|0;d=s+64|0;v=s+60|0;q=s
+56|0;k=s+52|0;m=s+48|0;h=s+44|0;j=s+40|0;u=s+36|0;t=s+32|0;r=s+28|0;l=s+24|0;e=s+20|0;n=s+16|0;f=s+12|0;o=s+8|0;g=s+4|0;p=s;c[d
>>2]=a;c[v>>2]=b;c[q>>2]=(c[d>>2]|0)+28+((c[v>>2]|0)*40|0);c[k>>2]=c
[(c[(c[q>>2]|0)+32>>2]|0)+8>>2];c[m>>2]=c[c[(c[q>>2]|0)+32>>2]>
x3e;2];c[h>>2]=0;c[j>>2]=(c[v>>2]|0)==0?1:2;c[u>>2]=(c[(c[d>>2]|0)+24>>
;2]|0)+4+((c[v>>2]|0)*204|0);c[t>>2]=c[(c[u>>2]|0)+196>>2];a=Vb(32,c[t>>2]|0)|
0;c[r>>2]=a;c[r>>2]=(c[r>>2]|0)>30?30:a;a:do if((c[m>>2]|0)>>>0>
;1?(c[c[d>>2]>>2]|0)>>>0>0:0){if((c[(c[k>>2]|0)+12>>2]|0)>>
;>0>(c[c[d>>2]>>2]|0)>>>0)b=c[c[d>>2]>>2]|0;else b=c[(c[k>
x3e;2]|0)+12>>2]|0;c[h>>2]=b;c[k>>2]=(c[k>>2]|0)+16;while(1){if((c[m>>2]|0)>
;>>0<=1)break a;if((c[(c[k>>2]|0)+12>>2]|0)>>>0>(c[c[d>>2]>
;>2]|0)>>>0)b=c[c[d>>2]>>2]|0;else b=c[(c[k>>2]|0)+12>>2]|0;c[l>
;>2]=b;c[e>>2]=(c[l>>2]|0)-(c[h>>2]|0);if((c[e>>2]|0)>0){c[n>>2]=(c[(
c[d>>2]|0)+8>>2]|0)+((c[h>>2]|0)*48|0);Sn(c[q>>2]|0,c[k>>2]|0);Un(c[q>>
;2]|0,c[n>>2]|0,c[e>>2]|0,c[r>>2]|0,c[j>>2]|0)}c[h>>2]=c[l>>2];c[m
x3e;>2]=(c[m>>2]|0)+-1;c[k>>2]=(c[k>>2]|0)+16}}while(0);if((c[m>>2]|0)==1){c[f>
;>2]=c[c[d>>2]>>2];c[o>>2]=c[(c[d>>2]|0)+8>>2];Sn(c[q>>2]|0,c[(
c[(c[q>>2]|0)+32>>2]|0)+8>>2]|0);Un(c[q>>2]|0,c[o>>2]|0,c[f>>2]|0,c[
r>>2]|0,c[j>>2]|0)}c[g>>2]=c[c[d>>2]>>2];c[p>>2]=c[(c[d>>2
]|0)+8>>2];while(1){if((c[g>>2]|0)>>>0<=0)break;if(c[(c[p>>2]|0)+32>>
;2]|0?(c[(c[p>>2]|0)+16>>2]&16|0)==0:0){v=(c[p>>2]|0)+16|0;c[v>>2]=c[v>>2
]|16}c[g>>2]=(c[g>>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+48}i=s;return}function Sn(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;t=i;i=i+64|0;e=t+56|0;u=t+52|0;q=t+48|0;s=t+44|0;h=t+40|0
;o=t+36|0;p=t+32|0;f=t+28|0;j=t+24|0;g=t+20|0;m=t+16|0;n=t+12|0;k=t+8|0;l=t+4|0;r=t;c[e>>2]=a;c[u>>2]=b;c[q
x3e;>2]=0;c[s>>2]=0;c[h>>2]=c[(c[u>>2]|0)+8>>2];c[p>>2]=c[c[u>>
2]>>2];c[f>>2]=0;Tn(c[e>>2]|0);c[o>>2]=0;while(1){if((c[o>>2]|0)>>
x3e;0>=(c[p>>2]|0)>>>0)break;if(!(c[q>>2]|0)){u=c[h>>2]|0;c[h>>2]=u+
1;c[s>>2]=d[u>>0];c[q>>2]=128}if(((c[s>>2]&c[q>>2]|0?(c[j>>2]=(
c[(c[e>>2]|0)+8>>2]|0)+((c[o>>2]|0)*28|0),(c[(c[j>>2]|0)+16>>2]&4|0)==0):
0)?(c[g>>2]=0,(c[g>>2]|0)==0):0)?(u=(c[j>>2]|0)+16|0,c[u>>2]=c[u>>2]|4,(c[f>
;>2]|0)>>>0<(c[c[e>>2]>>2]|0)>>>0):0){a=c[j>>2]|0;u=c[f>
;>2]|0;c[f>>2]=u+1;c[(c[(c[e>>2]|0)+12>>2]|0)+(u<<2)>>2]=a}c[q>>
;2]=c[q>>2]>>1;c[o>>2]=(c[o>>2]|0)+1}c[(c[e>>2]|0)+4>>2]=c[f>
x3e;2];c[r>>2]=c[(c[e>>2]|0)+12>>2];c[m>>2]=1;while(1){if((c[m>>2]|0)>=(c
[f>>2]|0))break;c[k>>2]=c[(c[r>>2]|0)+(c[m>>2]<<2)>>2];c[n>>
;2]=(c[m>>2]|0)-1;while(1){if((c[n>>2]|0)<0)break;c[l>>2]=c[(c[r>>2]|0)+(c[n>
x3e;2]<<2)>>2];if((c[c[l>>2]>>2]|0)<(c[c[k>>2]>>2]|0))break;c[(
c[r>>2]|0)+((c[n>>2]|0)+1<<2)>>2]=c[l>>2];c[(c[r>>2]|0)+(c[n>
x3e;2]<<2)>>2]=c[k>>2];c[n>>2]=(c[n>>2]|0)+-1}c[m>>2]=(c[m>>
;2]|0)+1}i=t;return}function Tn(a){a=a|0;var b=0,d=0,e=0,f=0;e=i;i=i+16|0;f=e+8|0;b=e+4|0;d=e;c[f>>2]=a;c[b>>
;2]=c[c[f>>2]>>2];c[d>>2]=c[(c[f>>2]|0)+8>>2];while(1){if((c[b>>2]|0
)>>>0<=0)break;f=(c[d>>2]|0)+16|0;c[f>>2]=c[f>>2]&-5;c[(c[d>>2]|
0)+24>>2]=-1;c[b>>2]=(c[b>>2]|0)+-1;c[d>>2]=(c[d>>2]|0)+28}i=e;return}function
Un(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,x=0,y=0,z=0,A=0,B=0
,C=0,D=0,E=0,F=0,G=0;F=i;i=i+96|0;G=F+88|0;h=F+84|0;j=F+80|0;k=F+76|0;l=F+72|0;D=F+68|0;A=F+64|0;C=F+60|0;B=F+56|0;x=F+52|0;q=F+
48|0;m=F+44|0;y=F+40|0;r=F+36|0;n=F+32|0;z=F+28|0;w=F+24|0;v=F+20|0;s=F+16|0;o=F+12|0;t=F+8|0;p=F+4|0;u=F;c[G>>2]=b;c[
h>>2]=d;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[D>>2]=c[(c[G>>2]|0)+12>
x3e;2];c[A>>2]=c[(c[G>>2]|0)+4>>2];while(1){if((c[j>>2]|0)>>>0<=0)break
;c[C>>2]=0;c[B>>2]=c[(c[h>>2]|0)+36>>2];a:do if(!(c[(c[h>>2]|0)+16>>
2]&16)){do if((a[(c[h>>2]|0)+20>>0]|0)!=(c[l>>2]|0)?(a[(c[h>>2]|0)+20>>0]|
0)!=(0-(c[l>>2]|0)|0):0){if((a[(c[h>>2]|0)+21>>0]|0)!=(c[l>>2]|0)?(a[(c[h>>2]|
0)+21>>0]|0)!=(0-(c[l>>2]|0)|0):0)break;c[C>>2]=a[(c[h>>2]|0)+21>>0]}else E=6;
while(0);if((E|0)==6){E=0;c[C>>2]=a[(c[h>>2]|0)+20>>0]}if(c[C>>2]|0){if((c[C>>
2]|0)==(c[l>>2]|0)){c[x>>2]=0;while(1){if((c[x>>2]|0)>>>0>=(c[A>>2]|
0)>>>0)break a;c[q>>2]=c[(c[D>>2]|0)+(c[x>>2]<<2)>>2];c[m>
x3e;2]=(c[B>>2]|0)-(c[c[q>>2]>>2]|0);if((c[m>>2]|0)<(c[k>>2]|0)?(0-(c[m
x3e;>2]|0)|0)<(c[k>>2]|0):0)break;c[x>>2]=(c[x>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G
>>2]=c[G>>2]|16;G=(c[h>>2]|0)+16|0;c[G>>2]=c[G>>2]|512;c[(c[h>>2]|0)+
32>>2]=c[q>>2];break}if((c[C>>2]|0)!=(0-(c[l>>2]|0)|0))break;c[y>>2]=0;while(1
){if((c[y>>2]|0)>>>0>=(c[A>>2]|0)>>>0)break a;c[r>>2]=c[(c[D>
;>2]|0)+(c[y>>2]<<2)>>2];c[n>>2]=(c[B>>2]|0)-(c[c[r>>2]>
x3e;2]|0)-(c[(c[r>>2]|0)+4>>2]|0);if((c[n>>2]|0)<(c[k>>2]|0)?(0-(c[n>>2]|
0)|0)<(c[k>>2]|0):0)break;c[y>>2]=(c[y>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>2
]=c[G>>2]|16;G=(c[h>>2]|0)+16|0;c[G>>2]=c[G>>2]|1024;c[(c[h>>2]|0)+32>>
;2]=c[r>>2];break}if(c[(c[h>>2]|0)+16>>2]&64|0){if((c[l>>2]|0)==2){c[w>>2
]=128;c[v>>2]=256}else{c[w>>2]=256;c[v>>2]=128}b:do if(!(c[(c[h>>2]|0)+16>>2]
x26;c[w>>2]|0)){if(c[(c[h>>2]|0)+16>>2]&c[v>>2]|0){c[z>>2]=0;while(1){if((
c[z>>2]|0)>>>0>=(c[A>>2]|0)>>>0)break b;c[t>>2]=c[(c[D>>
;2]|0)+(c[z>>2]<<2)>>2];c[p>>2]=(c[B>>2]|0)-(c[c[t>>2]>>2]|
0)-(c[(c[t>>2]|0)+4>>2]|0);if((c[p>>2]|0)<(c[k>>2]|0)?(0-(c[p>>2]|0)|0)
x3c;(c[k>>2]|0):0)break;c[z>>2]=(c[z>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>2]=c[G
x3e;>2]|1024;c[(c[h>>2]|0)+32>>2]=c[t>>2];G=(c[h>>2]|0)+16|0;c[G>>2]=c[G
x3e;>2]|16}}else{c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[A>>2]|0)>
x3e;>0)break b;c[s>>2]=c[(c[D>>2]|0)+(c[z>>2]<<2)>>2];c[o>>2]=(
c[B>>2]|0)-(c[c[s>>2]>>2]|0);if((c[o>>2]|0)<(c[k>>2]|0)?(0-(c[o>>
;2]|0)|0)<(c[k>>2]|0):0)break;c[z>>2]=(c[z>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>
;2]=c[G>>2]|512;c[(c[h>>2]|0)+32>>2]=c[s>>2];G=(c[h>>2]|0)+16|0;c[G>>
;2]=c[G>>2]|16}while(0);if(!(c[(c[h>>2]|0)+32>>2]|0)){c[z>>2]=0;while(1){if((c[z>
x3e;2]|0)>>>0>=(c[A>>2]|0)>>>0)break a;c[u>>2]=c[(c[D>>2]|0)+(c
[z>>2]<<2)>>2];if((c[B>>2]|0)>=(c[c[u>>2]>>2]|0)?(c[B>>
;2]|0)<=((c[c[u>>2]>>2]|0)+(c[(c[u>>2]|0)+4>>2]|0)|0):0)break;c[z>>2]=(c[
z>>2]|0)+1}c[(c[h>>2]|0)+32>>2]=c[u>>2]}}}while(0);c[j>>2]=(c[j>>2]|
0)+-1;c[h>>2]=(c[h>>2]|0)+48}i=F;return}function Vn(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;q=i;i=i+48|0;f=q+36|0;r=q+32|0;m=q+28|0;o=q+24|0;k=q+20|0;g=q+16|0;l=q+12|0;n=q+8|0;h=q+4|0;j=q;c[f>>2]=b
;c[r>>2]=e;c[k>>2]=c[c[r>>2]>>2];c[l>>2]=c[(c[r>>2]|0)+8>>
2];while(1){if((c[k>>2]|0)>>>0<=0)break;if(!((((a[(c[l>>2]|0)+20>>0]|0)!=2?(a[(
c[l>>2]|0)+20>>0]|0)!=-2:0)?(a[(c[l>>2]|0)+21>>0]|0)!=2:0)?(a[(c[l>>2]|0)+21
x3e;>0]|0)!=-2:0))p=7;a:do if((p|0)==7?(p=0,(c[(c[l>>2]|0)+16>>2]&16|0)==0):0){c[n>>2]=c
[(c[l>>2]|0)+36>>2];c[m>>2]=c[f>>2];c[g>>2]=c[c[m>>2]>>2];
c[o>>2]=(c[m>>2]|0)+4;while(1){if((c[g>>2]|0)>>>0<=0)break;c[h>>2]=(
c[n>>2]|0)-(c[(c[o>>2]|0)+12>>2]|0);if((c[h>>2]|0)<(0-(c[(c[f>>2]|0)+2076
>>2]|0)|0))break;do if((c[n>>2]|0)<=((c[(c[o>>2]|0)+8>>2]|0)+(c[(c[f>>2]|
0)+2076>>2]|0)|0)){if((d[(c[f>>2]|0)+2080>>0]|0)==0?(c[h>>2]|0)>(c[(c[f>>
2]|0)+2072>>2]|0):0)break;c[(c[l>>2]|0)+44>>2]=c[(c[o>>2]|0)+24>>2];r=(c[l>
;>2]|0)+16|0;c[r>>2]=c[r>>2]|16;r=(c[l>>2]|0)+16|0;c[r>>2]=c[r>>2]|32}while
(0);c[g>>2]=(c[g>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+32}c[m>>2]=(c[f>>2]|0
)+516;c[g>>2]=c[c[m>>2]>>2];c[o>>2]=(c[m>>2]|0)+4+(c[g>>2]<<
;5)+-32;while(1){if((c[g>>2]|0)>>>0<=0)break a;c[j>>2]=(c[(c[o>>2]|0)+8>
x3e;2]|0)-(c[n>>2]|0);if((c[j>>2]|0)<(0-(c[(c[f>>2]|0)+2076>>2]|0)|0))break a;do if
((c[n>>2]|0)>=((c[(c[o>>2]|0)+12>>2]|0)-(c[(c[f>>2]|0)+2076>>2]|0)|0)){if
((d[(c[f>>2]|0)+2080>>0]|0)==0?(c[j>>2]|0)>=(c[(c[f>>2]|0)+2072>>2]|0):0)
break;c[(c[l>>2]|0)+44>>2]=c[(c[o>>2]|0)+28>>2];r=(c[l>>2]|0)+16|0;c[r>
x3e;2]=c[r>>2]|16;r=(c[l>>2]|0)+16|0;c[r>>2]=c[r>>2]|32}while(0);c[g>>2]=(c[g
x3e;>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+-32}}while(0);c[k>>2]=(c[k>>2]|0)+-1;c[l>>
;2]=(c[l>>2]|0)+48}i=q;return}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,l=0,m=0;j=i;i=i+32|0;k=j+28
|0;m=j+24|0;l=j+20|0;h=j+16|0;d=j+12|0;g=j+8|0;f=j+4|0;e=j;c[k>>2]=a;c[m>>2]=b;c[l>>2]=(c[(c[k>
;>2]|0)+24>>2]|0)+4+((c[m>>2]|0)*204|0);c[h>>2]=c[(c[l>>2]|0)+196>>2];c[d
>>2]=c[c[k>>2]>>2];c[g>>2]=c[(c[k>>2]|0)+8>>2];while(1){if((c[d>
;>2]|0)>>>0<=0)break;c[f>>2]=c[(c[g>>2]|0)+32>>2];if(c[f>>2]|0){
do if(!(c[(c[g>>2]|0)+16>>2]&512|0)){if(c[(c[g>>2]|0)+16>>2]&1024|0){c[(c[g>
;>2]|0)+44>>2]=(c[(c[f>>2]|0)+8>>2]|0)+(c[(c[f>>2]|0)+12>>2]|0);break}c[e
>>2]=(c[(c[g>>2]|0)+36>>2]|0)-(c[c[f>>2]>>2]|0);if((c[e>>2]|0)<=
0){m=c[(c[f>>2]|0)+8>>2]|0;m=m+(Mb(c[e>>2]|0,c[h>>2]|0)|0)|0;c[(c[g>>2]|0)+44
x3e;>2]=m;break}b=c[(c[f>>2]|0)+8>>2]|0;if((c[e>>2]|0)>=(c[(c[f>>2]|0)+4>
x3e;2]|0)){m=b+(c[(c[f>>2]|0)+12>>2]|0)|0;m=m+(Mb((c[e>>2]|0)-(c[(c[f>>2]|0)+4>>
;2]|0)|0,c[h>>2]|0)|0)|0;c[(c[g>>2]|0)+44>>2]=m;break}else{m=b+(xb(c[e>>2]|0,c[(c[f>
;>2]|0)+12>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0)|0;c[(c[g>>2]|0)+44>>2]=m;break
}}else c[(c[g>>2]|0)+44>>2]=c[(c[f>>2]|0)+8>>2];while(0);m=(c[g>>2]|0)+16|0;c[
m>>2]=c[m>>2]|32}c[d>>2]=(c[d>>2]|0)+-1;c[g>>2]=(c[g>>2]|0)+48}i=j;return
}function Xn(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;t=i;i=i+128|0;u=t+124|
0;w=t+120|0;v=t+116|0;p=t+112|0;k=t+108|0;q=t+104|0;r=t+40|0;m=t+36|0;g=t+32|0;o=t+28|0;n=t+24|0;e=t+20|0;f=t+16|0;j=t+12|0;h=t+
8|0;l=t+4|0;s=t;c[u>>2]=b;c[w>>2]=d;c[v>>2]=(c[(c[u>>2]|0)+24>>2]|0)+4+((c[w
x3e;>2]|0)*204|0);c[p>>2]=c[(c[v>>2]|0)+196>>2];c[k>>2]=c[(c[u>>2]|0)+16
x3e;>2];c[q>>2]=0;c[m>>2]=0;c[g>>2]=c[(c[u>>2]|0)+8>>2];c[o>>2]=(
c[g>>2]|0)+((c[c[u>>2]>>2]|0)*48|0);c[n>>2]=c[g>>2];while(1){if((c[n>>
;2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(c[(c[n>>2]|0)+16>>2]&
16|0)c[m>>2]=(c[m>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+48}if(!(c[m>>2]|0)){i=t;return}
if((c[m>>2]|0)>>>0>16){c[q>>2]=hc(c[k>>2]|0,4,0,c[m>>2]|0,0,e)|0;if(
c[e>>2]|0){i=t;return}}else c[q>>2]=r;c[m>>2]=0;c[n>>2]=c[g>>2];while(1){if((c
[n>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(c[(c[n>>2]|0)+16>
x3e;2]&16|0){c[f>>2]=(c[q>>2]|0)+(c[m>>2]<<2);while(1){if((c[f>>2]|0)>
;>>0<=(c[q>>2]|0)>>>0)break;if((c[(c[(c[f>>2]|0)+-4>>2]|0)+36>
x3e;2]|0)<=(c[(c[n>>2]|0)+36>>2]|0))break;c[c[f>>2]>>2]=c[(c[f>>2]|0)+-4
x3e;>2];c[f>>2]=(c[f>>2]|0)+-4}c[c[f>>2]>>2]=c[n>>2];c[m>>2]=(c
[m>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+48}c[n>>2]=c[g>>2];while(1){if((c[n>>
;2]|0)>>>0>=(c[o>>2]|0)>>>0)break;do if(!(c[(c[n>>2]|0)+16>>2]
x26;16)){if(c[(c[n>>2]|0)+12>>2]&2|0){if((a[(c[n>>2]|0)+20>>0]|0)==4)break;if((a[(c
[n>>2]|0)+20>>0]|0)!=(a[(c[n>>2]|0)+21>>0]|0))break;if((c[(c[n>>2]|0)+16>
x3e;2]&64|0)==0?(c[(c[n>>2]|0)+12>>2]&4|0)==0:0)break;w=(c[n>>2]|0)+12|0;c[w>>
2]=c[w>>2]&-3}c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[m>>2]|0
)>>>0)break;if((c[(c[(c[q>>2]|0)+(c[l>>2]<<2)>>2]|0)+36>>2]|0)
x3e;(c[(c[n>>2]|0)+36>>2]|0))break;c[l>>2]=(c[l>>2]|0)+1}do if(c[l>>2]|0){c[j
x3e;>2]=c[(c[q>>2]|0)+((c[l>>2]|0)-1<<2)>>2];c[l>>2]=c[m>>2];while
(1){if((c[l>>2]|0)>>>0<=0)break;if((c[(c[(c[q>>2]|0)+((c[l>>2]|0)-1<<
;2)>>2]|0)+36>>2]|0)<(c[(c[n>>2]|0)+36>>2]|0))break;c[l>>2]=(c[l>>
;2]|0)+-1}d=c[l>>2]|0;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=c[(c[q>>2]|0)+(d-1
x3c;<2)>>2];w=c[(c[j>>2]|0)+44>>2]|0;w=w+(Mb((c[(c[n>>2]|0)+36>>2]|0)-(c[(
c[j>>2]|0)+36>>2]|0)|0,c[p>>2]|0)|0)|0;c[(c[n>>2]|0)+44>>2]=w;break}c[h>
x3e;2]=c[(c[q>>2]|0)+(d<<2)>>2];c[s>>2]=c[(c[n>>2]|0)+36>>2];if((c[s
>>2]|0)==(c[(c[j>>2]|0)+36>>2]|0)){c[(c[n>>2]|0)+44>>2]=c[(c[j>>2]|0
)+44>>2];break}if((c[s>>2]|0)==(c[(c[h>>2]|0)+36>>2]|0)){c[(c[n>>2]|0)+44>
;>2]=c[(c[h>>2]|0)+44>>2];break}else{w=c[(c[j>>2]|0)+44>>2]|0;w=w+(xb((c[s>>
;2]|0)-(c[(c[j>>2]|0)+36>>2]|0)|0,(c[(c[h>>2]|0)+44>>2]|0)-(c[(c[j>>2]|0)+44
x3e;>2]|0)|0,(c[(c[h>>2]|0)+36>>2]|0)-(c[(c[j>>2]|0)+36>>2]|0)|0)|0)|0;c[(c[n>
x3e;2]|0)+44>>2]=w;break}}else{c[h>>2]=c[c[q>>2]>>2];w=c[(c[h>>2]|0)+44>
x3e;2]|0;w=w+(Mb((c[(c[n>>2]|0)+36>>2]|0)-(c[(c[h>>2]|0)+36>>2]|0)|0,c[p>>2]|0
)|0)|0;c[(c[n>>2]|0)+44>>2]=w}while(0);w=(c[n>>2]|0)+16|0;c[w>>2]=c[w>>2]|32}while
(0);c[n>>2]=(c[n>>2]|0)+48}if((c[q>>2]|0)==(r|0)){i=t;return}Fb(c[k>>2]|0,c[q>>
;2]|0);c[q>>2]=0;i=t;return}function Yn(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;v=i;i=i+80|0;w=v+76|0;y=v+72|0;x=v+68|0;s=v+64|0;h=v+60|0;d=v+56|0;m=v+52|0;u=v+48|0;j=v+44|0;l=v+40|
0;r=v+36|0;k=v+32|0;n=v+28|0;o=v+24|0;e=v+20|0;f=v+16|0;q=v+12|0;p=v+8|0;g=v+4|0;t=v;c[w>>2]=a;c[y>>2]=b;c[x
>>2]=(c[(c[w>>2]|0)+24>>2]|0)+4+((c[y>>2]|0)*204|0);c[s>>2]=c[(c[x>>
2]|0)+196>>2];c[h>>2]=c[(c[x>>2]|0)+200>>2];c[d>>2]=c[(c[w>>2]|0)+12
>>2];c[m>>2]=c[(c[w>>2]|0)+4>>2];while(1){if((c[m>>2]|0)>>>0<
;=0)break;c[u>>2]=c[c[d>>2]>>2];c[l>>2]=(c[u>>2]|0)+((c[(c[d>>2]|0)+
4>>2]|0)*48|0);c[k>>2]=0;c[j>>2]=0;c[r>>2]=c[u>>2];while(1){if((c[r>>
;2]|0)>>>0>=(c[l>>2]|0)>>>0)break;if(c[(c[r>>2]|0)+16>>2]&
32|0){if(!(c[j>>2]|0))c[j>>2]=c[r>>2];c[k>>2]=(c[k>>2]|0)+1}c[r>>2]=(
c[r>>2]|0)+48}a:do if((c[k>>2]|0)>>>0<2){if((c[k>>2]|0)==1){y=c[(c[j>>
;2]|0)+44>>2]|0;c[h>>2]=y-(Mb(c[(c[j>>2]|0)+36>>2]|0,c[s>>2]|0)|0)}c[r>
x3e;2]=c[u>>2];while(1){if((c[r>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break
a;if((c[r>>2]|0)!=(c[j>>2]|0)){y=Mb(c[(c[r>>2]|0)+36>>2]|0,c[s>>2]|0)|0;c[(c[
r>>2]|0)+44>>2]=y+(c[h>>2]|0)}c[r>>2]=(c[r>>2]|0)+48}}else{c[u>>2]=c
[j>>2];do{c[r>>2]=c[j>>2];while(1){c[l>>2]=c[(c[j>>2]|0)+4>>2];if((c
[l>>2]|0)==(c[u>>2]|0))break a;if(!(c[(c[l>>2]|0)+16>>2]&32))break;c[j>>2
]=c[l>>2]}do c[l>>2]=c[(c[l>>2]|0)+4>>2];while(!(c[(c[l>>2]|0)+16>>2
]&32|0));if((c[(c[j>>2]|0)+36>>2]|0)<=(c[(c[l>>2]|0)+36>>2]|0)){c[n>>
;2]=c[(c[j>>2]|0)+36>>2];c[e>>2]=c[(c[j>>2]|0)+44>>2];c[o>>2]=(c[(c[
l>>2]|0)+36>>2]|0)-(c[n>>2]|0);c[f>>2]=(c[(c[l>>2]|0)+44>>2]|0)-(c[e
>>2]|0)}else{c[n>>2]=c[(c[l>>2]|0)+36>>2];c[e>>2]=c[(c[l>>2]|0)+44
x3e;>2];c[o>>2]=(c[(c[j>>2]|0)+36>>2]|0)-(c[n>>2]|0);c[f>>2]=(c[(c[j>
;>2]|0)+44>>2]|0)-(c[e>>2]|0)}c[t>>2]=65536;if((c[o>>2]|0)>0)c[t>>2]=
Vb(c[f>>2]|0,c[o>>2]|0)|0;c[r>>2]=c[(c[j>>2]|0)+4>>2];do{c[q>>2]=c[(
c[r>>2]|0)+36>>2];c[p>>2]=(c[q>>2]|0)-(c[n>>2]|0);do if((c[p>>2]|0)
x3e;0){b=c[e>>2]|0;if((c[p>>2]|0)>=(c[o>>2]|0)){y=b+(c[f>>2]|0)|0;c[g>>2]=
y+(Mb((c[p>>2]|0)-(c[o>>2]|0)|0,c[s>>2]|0)|0);break}else{c[g>>2]=b+(Mb(c[p>>2]|
0,c[t>>2]|0)|0);break}}else{y=c[e>>2]|0;c[g>>2]=y+(Mb(c[p>>2]|0,c[s>>2]|0)|0)}
while(0);c[(c[r>>2]|0)+44>>2]=c[g>>2];c[r>>2]=c[(c[r>>2]|0)+4>>2]}while
((c[r>>2]|0)!=(c[l>>2]|0));c[j>>2]=c[l>>2]}while((c[j>>2]|0)!=(c[u>>
2]|0))}while(0);c[m>>2]=(c[m>>2]|0)+-1;c[d>>2]=(c[d>>2]|0)+8}i=v;return}function Zn(b,d){
b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0;j=l;c[e>>2]=b;c[f
x3e;>2]=d;c[h>>2]=c[(c[e>>2]|0)+8>>2];c[k>>2]=c[(c[(c[e>>2]|0)+20>
x3e;2]|0)+4>>2];c[j>>2]=c[(c[(c[e>>2]|0)+20>>2]|0)+8>>2];c[g>>2]=0;while
(1){if((c[g>>2]|0)>>>0>=(c[c[e>>2]>>2]|0)>>>0)break;d=c[(c[h>
;>2]|0)+44>>2]|0;b=(c[k>>2]|0)+(c[g>>2]<<3)|0;if(!(c[f>>2]|0))c[b>
x3e;2]=d;else c[b+4>>2]=d;if(c[(c[h>>2]|0)+16>>2]&16|0){b=(c[j>>2]|0)+(c[g>>
;2]|0)|0;a[b>>0]=a[b>>0]|(((c[f>>2]|0)==0?32:64)&255)<<24>>24}c[h>
x3e;2]=(c[h>>2]|0)+48;c[g>>2]=(c[g>>2]|0)+1}i=l;return}function _n(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]|0)+16>>2];$n((c[d>>2]|0)+28+40
|0,c[e>>2]|0);$n((c[d>>2]|0)+28|0,c[e>>2]|0);Fb(c[e>>2]|0,c[(c[d>>2]|0)+8>
;>2]|0);c[(c[d>>2]|0)+8>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+12>>2]|0);c[(c[d
>>2]|0)+12>>2]=0;c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>
x3e;2]|0)+16>>2]=0;i=b;return}function $n(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2
]=0;c[(c[e>>2]|0)+20>>2]=0;c[(c[e>>2]|0)+28>>2]=0;Fb(c[f>>2]|0,c[(c[e>>
;2]|0)+12>>2]|0);c[(c[e>>2]|0)+12>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>
;2]|0);c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[c[e>>2]>>2]=0;c
[(c[e>>2]|0)+16>>2]=0;i=d;return}function ao(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;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c
[a+20>>2]=0;c[a+24>>2]=0;c[(c[d>>2]|0)+4>>2]=38;c[(c[d>>2]|0)+8>>2]=
108;c[(c[d>>2]|0)+12>>2]=11;c[(c[d>>2]|0)+16>>2]=12;c[(c[d>>2]|0)+20>>
;2]=15;c[(c[d>>2]|0)+24>>2]=24;i=b;return}function bo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2
]=a;dn(c[d>>2]|0,2);i=b;return}function co(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;o=
i;i=i+160|0;f=o+156|0;g=o+152|0;h=o+148|0;j=o+144|0;l=o+16|0;n=o+8|0;k=o+4|0;m=o;c[f>>2]=a;c[g>>2]=b;c[h>
;>2]=d;c[j>>2]=e;c[m>>2]=c[h>>2];c[n>>2]=0;while(1){if((c[m>>2]|0)<=
0)break;a=c[m>>2]|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>16?16:a;c[k>>2]=0;while
(1){if((c[k>>2]|0)>=(c[h>>2]<<1|0))break;c[n>>2]=(c[n>>2]|0)+(c[(c[j>
;>2]|0)+(c[k>>2]<<2)>>2]|0);a=(Tb(c[n>>2]|0)|0)>>16;c[l+(c[k>>2
]<<2)>>2]=a;c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)
x3e;=(c[h>>2]<<1|0))break;c[l+((c[k>>2]|0)+1<<2)>>2]=(c[l+((c[k>>2]|
0)+1<<2)>>2]|0)-(c[l+(c[k>>2]<<2)>>2]|0);c[k>>2]=(c[k>>2]|
0)+2}pn(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,l);c[m>>2]=(c[m>>2]|0)-(c[h>>2
]|0)}i=o;return}function eo(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;p=i;i=i+48|0;f=p+32|0;g
=p+28|0;h=p+24|0;j=p+20|0;n=p+16|0;m=p+12|0;o=p+8|0;k=p+4|0;l=p;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j
x3e;>2]=e;if(c[(c[f>>2]|0)+4>>2]|0){i=p;return}c[m>>2]=(c[f>>2]|0)+16;c[o>>
;2]=c[c[f>>2]>>2];c[k>>2]=c[c[m>>2]>>2];c[l>>2]=c[(c[m>>2]|
0)+36>>2];if((c[h>>2]|0)!=((c[k>>2]|0)+(c[l>>2]|0)|0)){i=p;return}c[n>>2]=fo(c
[m>>2]|0,c[j>>2]|0,c[l>>2]|0,c[k>>2]|0,c[g>>2]|0,c[o>>2]|0)|0;if((c[
n>>2]|0)==0?(c[n>>2]=fo((c[m>>2]|0)+36|0,c[j>>2]|0,0,c[l>>2]|0,c[g>>
2]|0,c[o>>2]|0)|0,(c[n>>2]|0)==0):0){i=p;return}c[(c[f>>2]|0)+4>>2]=c[n>>2];i=
p;return}function fo(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;o=i;i=i+32|0;h=o+24|0;
j=o+20|0;k=o+16|0;l=o+12|0;p=o+8|0;m=o+4|0;n=o;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c
[p>>2]=f;c[m>>2]=g;c[n>>2]=0;c[n>>2]=Bn(c[h>>2]|0,c[p>>2]|0,c[m>
;>2]|0)|0;if(c[n>>2]|0){p=c[n>>2]|0;i=o;return p|0}c[n>>2]=go((c[h>>2]|0)+12|0,c[j
x3e;>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;p=c[n>>2]|0;i=o;return p|0}function go(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;u=i;i=i+48|0;v=u+44|0;j=u+40|0;k
=u+36|0;l=u+32|0;m=u+28|0;n=u+24|0;o=u+20|0;p=u+16|0;q=u+12|0;t=u+8|0;s=u+4|0;r=u;c[v>>2]=b;c[j>>2]=e;c[k>
;>2]=f;c[l>>2]=g;c[m>>2]=h;c[n>>2]=0;c[n>>2]=tn(c[v>>2]|0,c[m>>
2]|0,o)|0;if(c[n>>2]|0){v=c[n>>2]|0;i=u;return v|0}c[n>>2]=mn(c[o>>2]|0,c[l>>2
]|0,c[m>>2]|0)|0;if(c[n>>2]|0){v=c[n>>2]|0;i=u;return v|0}c[c[o>>2]>>2]=c[l>
;>2];c[p>>2]=(c[j>>2]|0)+((c[k>>2]|0)>>>3);c[q>>2]=128>>(c
[k>>2]&7);c[t>>2]=c[(c[o>>2]|0)+8>>2];c[s>>2]=128;while(1){if((c[l>
x3e;2]|0)>>>0<=0)break;c[r>>2]=(d[c[t>>2]>>0]|0)&~c[s>>2];if((d
[c[p>>2]>>0]|0)&c[q>>2]|0)c[r>>2]=c[r>>2]|c[s>>2];a[c[t>
x3e;2]>>0]=c[r>>2];c[q>>2]=c[q>>2]>>1;if(!(c[q>>2]|0)){c[p>>
;2]=(c[p>>2]|0)+1;c[q>>2]=128}c[s>>2]=c[s>>2]>>1;if(!(c[s>>2]|0)){c[
t>>2]=(c[t>>2]|0)+1;c[s>>2]=128}c[l>>2]=(c[l>>2]|0)+-1}v=c[n>>2]|0;i
=u;return v|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,m=0,n=0;n=i;i=i+32|0;e=n+28|0;f=n+24|0;g=n+20
|0;l=n+16|0;k=n+12|0;m=n+8|0;h=n+4|0;j=n;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[(c[e>>2]|0)+
4>>2]|0){i=n;return}c[k>>2]=(c[e>>2]|0)+16;c[m>>2]=c[c[e>>2]>>2];c[h
>>2]=c[c[k>>2]>>2];c[j>>2]=c[(c[k>>2]|0)+36>>2];if((c[f>>2
]|0)!=((c[h>>2]|0)+(c[j>>2]|0)|0)){i=n;return}c[l>>2]=fo(c[k>>2]|0,c[g>>2]|0,0
,c[h>>2]|0,0,c[m>>2]|0)|0;if((c[l>>2]|0)==0?(c[l>>2]=fo((c[k>>2]|0)+36|0,c[g
x3e;>2]|0,c[h>>2]|0,c[j>>2]|0,0,c[m>>2]|0)|0,(c[l>>2]|0)==0):0){i=n;return}c[(c[e
x3e;>2]|0)+4>>2]=c[l>>2];i=n;return}function io(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)+120>>2]=0;c[(c[d>>2]|0)+148>>2]=0;jo((c[d>>2]|0)+20|0);i=b;return
}function jo(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]>
x3e;2];ko((c[d>>2]|0)+16|0,c[e>>2]|0);ko((c[d>>2]|0)+16+36|0,c[e>>2]|0);c[(c[d>>
;2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;i=b;return}function ko(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;lo((c[f>>2]|0)+24|0,c[e>>2]|0);lo((c[f>>2]|0
)+12|0,c[e>>2]|0);no(c[f>>2]|0,c[e>>2]|0);i=d;return}function lo(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|
0)+4>>2];c[g>>2]=c[(c[d>>2]|0)+8>>2];while(1){if((c[f>>2]|0)>>>
0<=0)break;mo(c[g>>2]|0,c[e>>2]|0);c[f>>2]=(c[f>>2]|0)+-1;c[g>>2]=(c[g>
;>2]|0)+16}Fb(c[e>>2]|0,c[(c[d>>2]|0)+8>>2]|0);c[(c[d>>2]|0)+8>>2]=0;c[c[
d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;i=h;return}function mo(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>2
]|0);c[(c[e>>2]|0)+8>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[(
c[e>>2]|0)+12>>2]=0;i=d;return}function no(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>2]|0);c[(c[e>>2]|0)+8>
;>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;i=d;return}function oo(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;
c[c[e>>2]>>2]=0;c[g>>2]=bc(c[d>>2]|0,24,f)|0;if(c[f>>2]|0){g=c[f>>2]|
0;i=h;return g|0}c[(c[g>>2]|0)+8>>2]=c[d>>2];po(c[g>>2]|0);c[c[e>>2]>>
;2]=c[g>>2];g=c[f>>2]|0;i=h;return g|0}function po(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a
;c[d>>2]=c[d>>2];i=b;return}function qo(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;e=j+12
|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(!(c[e>>2]|0)){i=j;return}if((c[f
>>2]|0)!=0&(c[g>>2]|0)>=3076){c[h>>2]=c[f>>2];c[c[e>>2]>>2
]=(c[f>>2]|0)+1032;c[(c[e>>2]|0)+4>>2]=(c[f>>2]|0)+(c[g>>2]|0)-(c[c[e>>
;2]>>2]|0);c[(c[e>>2]|0)+12>>2]=c[h>>2];i=j;return}else{c[c[e>>2]>>2
]=0;c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+12>>2]=0;i=j;return}}function ro(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;c[h
x3e;>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>>2];i=e;return}function so(a,
d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l+20|0;e=l+16|0;j=l+12|0;f=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c
[j>>2]=d;c[f>>2]=c[(c[j>>2]|0)+4>>2];c[g>>2]=c[c[j>>2]>>2];
if((c[e>>2]|0?c[c[e>>2]>>2]|0:0)?c[(c[e>>2]|0)+4>>2]|0:0){if(!(c[f>>
2]|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}if(b[(c[f>>2]|0)+2>>1]|0?(b[c[f>>
2]>>1]|0)>0:0){if(c[(c[f>>2]|0)+12>>2]|0?c[(c[f>>2]|0)+4>>2]|0:0){if((b[(
c[f>>2]|0)+2>>1]|0)!=((b[(c[(c[f>>2]|0)+12>>2]|0)+((b[c[f>>2]>>1]|0)-
1<<1)>>1]|0)+1|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}c[h>>2]=c[(c[e>
x3e;2]|0)+12>>2];if(c[(c[j>>2]|0)+8>>2]&2|0){c[k>>2]=19;k=c[k>>2]|0;i=l;return
k|0}if(!(c[g>>2]|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}if(c[(c[g>>2]|0)+4>>
;2]|0?c[c[g>>2]>>2]|0:0){if(!(c[(c[g>>2]|0)+12>>2]|0)){c[k>>2]=20;k=c[k>
x3e;2]|0;i=l;return k|0}a=(c[h>>2]|0)+128|0;d=c[f>>2]|0;c[a>>2]=c[d>>2];c[a+4>>
;2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];c[a+16>>2]=c
[d+16>>2];a=(c[h>>2]|0)+104|0;g=c[g>>2]|0;c[a>>2]=c[g>>2];c[a+4>>2]=
c[g+4>>2];c[a+8>>2]=c[g+8>>2];c[a+12>>2]=c[g+12>>2];c[a+16>>2]=c[g+16
>>2];c[a+20>>2]=c[g+20>>2];c[(c[h>>2]|0)+28>>2]=c[c[e>>2]>>
;2];c[(c[h>>2]|0)+32>>2]=(c[(c[h>>2]|0)+28>>2]|0)+((((c[(c[e>>2]|0)+4>>
;2]|0)>>>0)/4|0)<<2);e=c[h>>2]|0;if(c[(c[j>>2]|0)+8>>2]&1|0)e=to(e)|
0;else e=uo(e)|0;c[k>>2]=e;k=c[k>>2]|0;i=l;return k|0}c[k>>2]=0;k=c[k>>2]|0;i=l;return k
|0}c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}c[k>>2]=0;k=c[k>>2]|0;i=l;return k|0}c[k>
x3e;2]=96;k=c[k>>2]|0;i=l;return k|0}function to(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>
x3e;2]=c[d>>2];i=b;return 19}function uo(e){e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;g=k+8|0;h=k+4|0;j=k;c[h>
x3e;2]=e;vo(c[h>>2]|0,c[(c[h>>2]|0)+128+16>>2]&256);c[(c[h>>2]|0)+24>>2]=
c[(c[h>>2]|0)+12>>2];e=c[h>>2]|0;if(!(c[(c[h>>2]|0)+128+16>>2]&8|0)){f=(c
[h>>2]|0)+180|0;if(c[e+128+16>>2]&16|0)a[f>>0]=4;else a[f>>0]=0;if(!(c[(c[h>
x3e;2]|0)+128+16>>2]&32)){f=(c[h>>2]|0)+180|0;a[f>>0]=(d[f>>0]|0)+1}}else a[e+180
x3e;>0]=2;a[(c[h>>2]|0)+181>>0]=((c[(c[h>>2]|0)+128+16>>2]&512|0)!=0^1)&1
;c[(c[h>>2]|0)+164>>2]=16;c[(c[h>>2]|0)+168>>2]=1;c[(c[h>>2]|0)+172>>
;2]=2;c[(c[h>>2]|0)+176>>2]=39;c[(c[h>>2]|0)+1024>>2]=0;b[(c[h>>2]|0)+960>
;>1]=0;b[(c[h>>2]|0)+960+2>>1]=(c[(c[h>>2]|0)+104>>2]|0)-1;b[(c[h>>2]|0)+
56>>1]=c[(c[h>>2]|0)+104+4>>2];c[(c[h>>2]|0)+60>>2]=c[(c[h>>2]|0)+104
+12>>2];f=Ao(c[h>>2]|0,0)|0;c[j>>2]=f;if(f|0){c[g>>2]=c[j>>2];j=c[g>>
;2]|0;i=k;return j|0}if((a[(c[h>>2]|0)+181>>0]|0?(d[(c[h>>2]|0)+180>>0]|0)!=2:0)?(c[(c[h
>>2]|0)+164>>2]=17,c[(c[h>>2]|0)+168>>2]=3,c[(c[h>>2]|0)+172>>2]=4,c
[(c[h>>2]|0)+176>>2]=40,c[(c[h>>2]|0)+1024>>2]=0,b[(c[h>>2]|0)+960>>
1]=0,b[(c[h>>2]|0)+960+2>>1]=(c[(c[h>>2]|0)+104+4>>2]|0)-1,h=Ao(c[h>>2]|0,1)|0
,c[j>>2]=h,h|0):0){c[g>>2]=c[j>>2];j=c[g>>2]|0;i=k;return j|0}c[g>>2]=0;j=c[g
x3e;>2]|0;i=k;return j|0}function vo(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;b=c[d>>2]|0;if(c[f>>2]|0){c[b>>2]=12;c[(c[d>>2]|0)+16>>2]=256;c[(c
[d>>2]|0)+20>>2]=50}else{c[b>>2]=6;c[(c[d>>2]|0)+16>>2]=32;c[(c[d>>2
]|0)+20>>2]=2}c[(c[d>>2]|0)+4>>2]=1<<c[c[d>>2]>>2];c[(c[d>>
;2]|0)+8>>2]=(c[(c[d>>2]|0)+4>>2]|0)/2|0;c[(c[d>>2]|0)+12>>2]=(c[c[d>>
;2]>>2]|0)-6;i=e;return}function wo(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;h=i;i=i+16|0;f=h+12|0;j=h+8|0;k=h
+4|0;g=h;c[f>>2]=a;c[j>>2]=d;c[k>>2]=e;c[g>>2]=c[(c[f>>2]|0)+104+8>>
2];c[k>>2]=c[k>>2];b[(c[f>>2]|0)+156>>1]=0-(c[g>>2]|0);a=_(0-(b[c[j>>
;2]>>1]|0)|0,c[g>>2]|0)|0;c[(c[f>>2]|0)+148>>2]=a;if((c[g>>2]|0)<=0){k=c[
f>>2]|0;k=k+158|0;b[k>>1]=0;k=c[f>>2]|0;k=k+160|0;b[k>>1]=0;i=h;return}j=_((c[(c[f>
x3e;2]|0)+104>>2]|0)-1|0,c[g>>2]|0)|0;k=(c[f>>2]|0)+148|0;c[k>>2]=(c[k>>2]|0)+
j;k=c[f>>2]|0;k=k+158|0;b[k>>1]=0;k=c[f>>2]|0;k=k+160|0;b[k>>1]=0;i=h;return}function xo
(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;v=i;i=i+48|0;m=v+36
|0;z=v+40|0;w=v+32|0;n=v+28|0;y=v+24|0;x=v+20|0;p=v+16|0;q=v+12|0;o=v+8|0;s=v+4|0;r=v+43|0;t=v+42|0;u=v;c[m>>2]=f;b[z
x3e;>1]=g;c[w>>2]=h;c[n>>2]=j;c[y>>2]=k;c[x>>2]=l;b[z>>1]=b[z>>
1]|0;c[y>>2]=c[y>>2];c[x>>2]=c[x>>2];c[p>>2]=((c[w>>2]|0)+(c[(c[m>
;>2]|0)+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>2]|0))>>c[c[m>>2]>>
2];if(((c[n>>2]|0)-(c[w>>2]|0)-(c[(c[m>>2]|0)+4>>2]|0)|0)<=(c[(c[m>>2]|0)+
20>>2]|0))c[q>>2]=c[p>>2];else c[q>>2]=(c[n>>2]&0-(c[(c[m>>2]|0
)+4>>2]|0))>>c[c[m>>2]>>2];if((c[q>>2]|0)<0){i=v;return}if((c[p>>
;2]|0)>=(e[(c[m>>2]|0)+56>>1]|0)){i=v;return}if((c[p>>2]|0)<0)c[p>>2]=0;if((c[
q>>2]|0)>=(e[(c[m>>2]|0)+56>>1]|0))c[q>>2]=(e[(c[m>>2]|0)+56>>1
]|0)-1;c[o>>2]=(c[p>>2]>>3&65535)<<16>>16;c[s>>2]=(c[q>>
;2]>>3&65535)<<16>>16;a[r>>0]=255>>(c[p>>2]&7);a[t>
x3e;0]=~(127>>(c[q>>2]&7));if((b[(c[m>>2]|0)+158>>1]|0)>(c[o>>2]|0))
b[(c[m>>2]|0)+158>>1]=c[o>>2];if((b[(c[m>>2]|0)+160>>1]|0)<(c[s>>
;2]|0))b[(c[m>>2]|0)+160>>1]=c[s>>2];c[u>>2]=(c[(c[m>>2]|0)+60>>2]|0
)+(c[(c[m>>2]|0)+148>>2]|0)+(c[o>>2]|0);c[s>>2]=(c[s>>2]|0)-(c[o>>2]|
0);m=d[r>>0]|0;if((c[s>>2]|0)<=0){z=c[u>>2]|0;a[z>>0]=d[z>>0]|m&d[t
x3e;>0];i=v;return}z=c[u>>2]|0;a[z>>0]=d[z>>0]|m;c[s>>2]=(c[s>>2]|0)+-1;while
(1){if((c[s>>2]|0)<=0)break;z=(c[u>>2]|0)+1|0;c[u>>2]=z;a[z>>0]=-1;c[s>>2
]=(c[s>>2]|0)+-1}z=(c[u>>2]|0)+1|0;a[z>>0]=d[z>>0]|d[t>>0];i=v;return}function
yo(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;y=i;i=i+48|0;m=y+32
|0;n=y+40|0;o=y+28|0;p=y+24|0;q=y+20|0;r=y+16|0;u=y+12|0;v=y+8|0;x=y+4|0;s=y+38|0;w=y+36|0;t=y;c[m>>2]=f;b[n>>
;1]=g;c[o>>2]=h;c[p>>2]=j;c[q>>2]=k;c[r>>2]=l;c[u>>2]=(c[o>>2]|0)+(c
[(c[m>>2]|0)+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>2]|0);c[v>>2]=c[p>>
2]&0-(c[(c[m>>2]|0)+4>>2]|0);c[x>>2]=c[u>>2];if((c[u>>2]|0)>(c[v>
;>2]|0)){c[t>>2]=c[(c[q>>2]|0)+12>>2]&7;if((c[u>>2]|0)!=((c[v>>2]|0)+(
c[(c[m>>2]|0)+4>>2]|0)|0)){i=y;return}a:do switch(c[t>>2]|0){case 0:{c[x>>2]=c[v>
x3e;2];break}case 4:{c[x>>2]=(((c[o>>2]|0)+(c[p>>2]|0)-1|0)/2|0)+(c[(c[m>>2]|0)+8>
x3e;2]|0)&0-(c[(c[m>>2]|0)+4>>2]|0);break}case 5:case 1:{if((c[(c[q>>2]|0)+28>>2]|0
)==(c[r>>2]|0)?(c[(c[q>>2]|0)+16>>2]|0)<=0:0){if(!(c[(c[q>>2]|0)+12>>2]
x26;16)){i=y;return}if(((c[p>>2]|0)-(c[o>>2]|0)|0)<(c[(c[m>>2]|0)+8>>2]|0)){i=y;return
}}if((c[(c[r>>2]|0)+28>>2]|0)==(c[q>>2]|0)?(c[(c[q>>2]|0)+20>>2]|0)==(b[n>
;>1]|0):0){if(!(c[(c[q>>2]|0)+12>>2]&32)){i=y;return}if(((c[p>>2]|0)-(c[o>>2]|
0)|0)<(c[(c[m>>2]|0)+8>>2]|0)){i=y;return}}if((c[t>>2]|0)==1){c[x>>2]=c[v>>
;2];break a}else{c[x>>2]=(((c[o>>2]|0)+(c[p>>2]|0)-1|0)/2|0)+(c[(c[m>>2]|0)+8>>
;2]|0)&0-(c[(c[m>>2]|0)+4>>2]|0);break a}}default:{i=y;return}}while(0);c[u>>2]=(c[x>>
;2]|0)==(c[u>>2]|0)?c[v>>2]|0:c[u>>2]|0;c[u>>2]=c[u>>2]>>c[c[m>
x3e;2]>>2];b[s>>1]=c[u>>2]>>3;b[w>>1]=c[u>>2]&7;if(((c[u>
x3e;2]|0)>=0?(c[u>>2]|0)<(e[(c[m>>2]|0)+56>>1]|0):0)?d[(c[(c[m>>2]|0)+60>
x3e;2]|0)+((c[(c[m>>2]|0)+148>>2]|0)+(b[s>>1]|0))>>0]&128>>b[w>>
;1]|0:0){i=y;return}}c[u>>2]=c[x>>2]>>c[c[m>>2]>>2];if((c[u>>2]|0)
x3c;0){i=y;return}if((c[u>>2]|0)>=(e[(c[m>>2]|0)+56>>1]|0)){i=y;return}b[s>>1]=c[u
x3e;>2]>>3;b[w>>1]=c[u>>2]&7;if((b[(c[m>>2]|0)+158>>1]|0)>(b[s
x3e;>1]|0))b[(c[m>>2]|0)+158>>1]=b[s>>1]|0;if((b[(c[m>>2]|0)+160>>1]|0)
x3c;(b[s>>1]|0))b[(c[m>>2]|0)+160>>1]=b[s>>1]|0;g=(c[(c[m>>2]|0)+60>>
;2]|0)+((c[(c[m>>2]|0)+148>>2]|0)+(b[s>>1]|0))|0;a[g>>0]=d[g>>0]|(128>>
;b[w>>1]&255)<<24>>24;i=y;return}function zo(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>
x3e;2]=a;a=(c[e>>2]|0)+148|0;c[a>>2]=(c[a>>2]|0)+(b[(c[e>>2]|0)+156>>1]|0);i=d
;return}function Ao(d,e){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+16|0;k=m+4|0;l=m;f=m+14|0;g=m+12|0;h=m+10|0;j=m+8|0
;c[l>>2]=d;a[f>>0]=e;while(1){if((c[(c[l>>2]|0)+1024>>2]|0)<0){e=14;break}d=_(b[(c[
l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>>1]|0,c[(c[l>>2]|0)+4>
;>2]|0)|0;c[(c[l>>2]|0)+80>>2]=d;d=_(b[(c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>
;2]<<2)>>1]|0,c[(c[l>>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+76>>2]=d;c[(c[l
>>2]|0)+40>>2]=c[(c[l>>2]|0)+28>>2];c[(c[l>>2]|0)+44>>2]=0;d=(Bo(c[l
>>2]|0,a[f>>0]|0)|0)<<24>>24!=0;e=c[l>>2]|0;if(!d){if(c[e+92>>2]|0?(
Qo(c[l>>2]|0)|0)<<24>>24:0){e=12;break}d=(c[l>>2]|0)+1024|0;c[d>>2]=(c[d>
x3e;2]|0)+-1;continue}if((c[e+44>>2]|0)!=98){e=5;break}c[(c[l>>2]|0)+44>>2]=0;b[g>>1]=b[(
c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)>>1]|0;b[h>>1]=b[(c[l>
;>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>>1]|0;b[j>>1]=((b[g>>
1]|0)+(b[h>>1]|0)|0)/2|0;if((c[(c[l>>2]|0)+1024>>2]|0)>=7){e=8;break}if((b[j>>1]|0)
x3c;(b[g>>1]|0)){e=8;break}b[(c[l>>2]|0)+960+((c[(c[l>>2]|0)+1024>>2]|0)+1<<2)
x3e;>1]=b[j>>1]|0;b[(c[l>>2]|0)+960+((c[(c[l>>2]|0)+1024>>2]|0)+1<<2)+2
x3e;>1]=b[h>>1]|0;b[(c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>
x3e;1]=(b[j>>1]|0)-1;d=(c[l>>2]|0)+1024|0;c[d>>2]=(c[d>>2]|0)+1}if((e|0)==5){c[k>
x3e;2]=1;l=c[k>>2]|0;i=m;return l|0}else if((e|0)==8){c[(c[l>>2]|0)+1024>>2]=0;c[(c[l>>2
]|0)+44>>2]=20;c[k>>2]=c[(c[l>>2]|0)+44>>2];l=c[k>>2]|0;i=m;return l|0}else if
((e|0)==12){c[k>>2]=c[(c[l>>2]|0)+44>>2];l=c[k>>2]|0;i=m;return l|0}else if((e|0)==14){c
[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}return 0}function Bo(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;n=i;i=i+32|0;l=n+21|0;m=n+16|0;f=n+12|0;g=n+8|0;k=n+4|0;h=n;j=n+20|0;c[m>>2]=d;c[f>>2]=e;c[(c[m>>
;2]|0)+92>>2]=0;a[(c[m>>2]|0)+87>>0]=0;a[(c[m>>2]|0)+86>>0]=0;c[(c[m>>
;2]|0)+36>>2]=(c[(c[m>>2]|0)+32>>2]|0)+-32;c[(c[m>>2]|0)+48>>2]=0;c[(c[m>
x3e;2]|0)+88>>2]=c[(c[m>>2]|0)+40>>2];c[(c[(c[m>>2]|0)+88>>2]|0)+8>>
2]=c[(c[m>>2]|0)+40>>2];b[(c[m>>2]|0)+84>>1]=0;c[k>>2]=0;c[g>>2]=0;while
(1){d=c[m>>2]|0;if((c[g>>2]|0)>=(b[(c[m>>2]|0)+128>>1]|0)){e=19;break}c[d+100>
x3e;2]=0;c[(c[m>>2]|0)+96>>2]=0;if((Co(c[m>>2]|0,c[k>>2]&65535,b[(c[(c[m>>
;2]|0)+128+12>>2]|0)+(c[g>>2]<<1)>>1]|0,c[f>>2]|0)|0)<<24>>
;24){e=4;break}c[k>>2]=(b[(c[(c[m>>2]|0)+128+12>>2]|0)+(c[g>>2]<<1)>>
;1]|0)+1;if(((((c[(c[m>>2]|0)+72>>2]&(c[(c[m>>2]|0)+4>>2]|0)-1|0)==0?(c[(c[m>
x3e;2]|0)+72>>2]|0)>=(c[(c[m>>2]|0)+76>>2]|0):0)?(c[(c[m>>2]|0)+72>>2]|0)
x3c;=(c[(c[m>>2]|0)+80>>2]|0):0)?c[(c[m>>2]|0)+96>>2]|0:0)?(c[(c[(c[m>>2]|0)+96
>>2]|0)+12>>2]&8|0)==(c[(c[(c[m>>2]|0)+88>>2]|0)+12>>2]&8|0):0){d=(c
[m>>2]|0)+40|0;c[d>>2]=(c[d>>2]|0)+-4}c[h>>2]=c[(c[m>>2]|0)+88>>2];e
=c[(c[m>>2]|0)+72>>2]|0;d=c[m>>2]|0;if(c[(c[(c[m>>2]|0)+88>>2]|0)+12>>
;2]&8|0)a[j>>0]=(e-(c[d+72>>2]&0-(c[(c[m>>2]|0)+4>>2]|0))|0)>=(c[(c[m>
;>2]|0)+8>>2]|0);else a[j>>0]=((e+(c[d+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>
;2]|0))-(c[(c[m>>2]|0)+72>>2]|0)|0)>=(c[(c[m>>2]|0)+8>>2]|0);if((Fo(c[m>>
2]|0,a[j>>0]|0)|0)<<24>>24){e=15;break}if(c[(c[m>>2]|0)+96>>2]|0)c[(c[h>
x3e;2]|0)+28>>2]=c[(c[m>>2]|0)+96>>2];c[g>>2]=(c[g>>2]|0)+1}if((e|0)==4){a[l
x3e;>0]=1;m=a[l>>0]|0;i=n;return m|0}else if((e|0)==15){a[l>>0]=1;m=a[l>>0]|0;i=n;return m|0}
else if((e|0)==19)if((Oo(d)|0)<<24>>24){a[l>>0]=1;m=a[l>>0]|0;i=n;return m|0}else{a[l>
;>0]=(c[(c[m>>2]|0)+40>>2]|0)>>>0<(c[(c[m>>2]|0)+36>>2]|0)>
;>>0?0:1;m=a[l>>0]|0;i=n;return m|0}return 0}function Co(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,P=0,Q=0,R=0;R=i;i=
i+144|0;k=R+140|0;l=R+132|0;m=R+138|0;n=R+136|0;o=R+128|0;D=R+120|0;C=R+112|0;F=R+104|0;r=R+96|0;q=R+92|0;p=R+88|0;B=R+84|0;A=R+
80|0;s=R+76|0;t=R+72|0;G=R+68|0;L=R+64|0;u=R+60|0;v=R+56|0;E=R+48|0;K=R+44|0;P=R+40|0;w=R+36|0;H=R+32|0;M=R+28|0;I=R+24|0;N=R+20
|0;J=R+16|0;O=R+12|0;x=R+8|0;y=R+4|0;z=R;c[l>>2]=f;b[m>>1]=g;b[n>>1]=h;c[o>>2]=j;c[r>
;>2]=c[(c[l>>2]|0)+128+4>>2];c[p>>2]=(c[r>>2]|0)+(e[n>>1]<<3);c
[F>>2]=(c[(c[r>>2]|0)+(e[m>>1]<<3)>>2]<<c[(c[l>>2]|0)+24
x3e;>2])-(c[(c[l>>2]|0)+8>>2]|0);c[F+4>>2]=(c[(c[r>>2]|0)+(e[m>>1]<
x3c;3)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[D>
;>2]=(c[(c[r>>2]|0)+(e[n>>1]<<3)>>2]<<c[(c[l>>2]|0)+24>>
;2])-(c[(c[l>>2]|0)+8>>2]|0);c[D+4>>2]=(c[(c[r>>2]|0)+(e[n>>1]<<3)+4
>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>>
;2]|0){c[s>>2]=c[F>>2];c[F>>2]=c[F+4>>2];c[F+4>>2]=c[s>>2];c[t>
x3e;2]=c[D>>2];c[D>>2]=c[D+4>>2];c[D+4>>2]=c[t>>2]};c[C>>2]=c[F>
;>2];c[C+4>>2]=c[F+4>>2];c[q>>2]=(c[r>>2]|0)+(e[m>>1]<<3);c[B
x3e;>2]=(c[(c[l>>2]|0)+128+8>>2]|0)+(e[m>>1]|0);if(a[c[B>>2]>>0]&4|0
)a[(c[l>>2]|0)+180>>0]=d[c[B>>2]>>0]>>5;c[A>>2]=a[c[B>>2]
x3e;>0]&3;a:do if((c[A>>2]|0)==2)Q=39;else{if(!(c[A>>2]|0)){if((a[(c[(c[l>>2]|0)+128+8
x3e;>2]|0)+(e[n>>1]|0)>>0]&3|0)==1){c[F>>2]=c[D>>2];c[F+4>>2]=c[D+4
x3e;>2];c[p>>2]=(c[p>>2]|0)+-8}else{c[F>>2]=((c[F>>2]|0)+(c[D>>2]|0)|0)/2
|0;c[F+4>>2]=((c[F+4>>2]|0)+(c[D+4>>2]|0)|0)/2|0;c[D>>2]=c[F>>2];c[D+4>
x3e;2]=c[F+4>>2]}c[q>>2]=(c[q>>2]|0)+-8;c[B>>2]=(c[B>>2]|0)+-1}c[(c[l>>
;2]|0)+68>>2]=c[F>>2];c[(c[l>>2]|0)+72>>2]=c[F+4>>2];b:while(1){if((c[q>
x3e;2]|0)>>>0>=(c[p>>2]|0)>>>0){Q=37;break}c[q>>2]=(c[q>>2]|0)+
8;c[B>>2]=(c[B>>2]|0)+1;c[A>>2]=a[c[B>>2]>>0]&3;switch(c[A>>2]|
0){case 1:{c[G>>2]=(c[c[q>>2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>
;>2]|0)+8>>2]|0);c[L>>2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24
>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>>2]|0){c[u>>2]=c[G>>2];c[G>
;>2]=c[L>>2];c[L>>2]=c[u>>2]}if((Do(c[l>>2]|0,c[G>>2]|0,c[L>>2]|
0)|0)<<24>>24)break a;else continue b}case 0:{c[C>>2]=(c[c[q>>2]>>2]<<
;c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[C+4>>2]=(c[(c[q>>2]|
0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>
x3e;2]|0){c[v>>2]=c[C>>2];c[C>>2]=c[C+4>>2];c[C+4>>2]=c[v>>2]}while(
1){if((c[q>>2]|0)>>>0>=(c[p>>2]|0)>>>0){Q=27;break b}c[q>>2]=(c
[q>>2]|0)+8;c[B>>2]=(c[B>>2]|0)+1;c[A>>2]=a[c[B>>2]>>0]&3;c[K
x3e;>2]=(c[c[q>>2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8
x3e;>2]|0);c[P>>2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(
c[(c[l>>2]|0)+8>>2]|0);if(c[o>>2]|0){c[w>>2]=c[K>>2];c[K>>2]=c[P>
;>2];c[P>>2]=c[w>>2]}if((c[A>>2]|0)==1)break;if(c[A>>2]|0){Q=39;break a}c[E>
x3e;2]=((c[C>>2]|0)+(c[K>>2]|0)|0)/2|0;c[E+4>>2]=((c[C+4>>2]|0)+(c[P>>2]|0)|0)/
2|0;if((Io(c[l>>2]|0,c[C>>2]|0,c[C+4>>2]|0,c[E>>2]|0,c[E+4>>2]|0)|0)<<
;24>>24)break a;c[C>>2]=c[K>>2];c[C+4>>2]=c[P>>2]}if((Io(c[l>>2]|0,c
[C>>2]|0,c[C+4>>2]|0,c[K>>2]|0,c[P>>2]|0)|0)<<24>>24)break a;else continue
b}default:{if(((c[q>>2]|0)+8|0)>>>0>(c[p>>2]|0)>>>0){Q=39;break a}if((a[(
c[B>>2]|0)+1>>0]&3|0)!=2){Q=39;break a}c[q>>2]=(c[q>>2]|0)+16;c[B>>2]=(c[
B>>2]|0)+2;c[H>>2]=(c[(c[q>>2]|0)+-16>>2]<<c[(c[l>>2]|0)+24>>
;2])-(c[(c[l>>2]|0)+8>>2]|0);c[M>>2]=(c[(c[q>>2]|0)+-16+4>>2]<<c[(c[
l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[I>>2]=(c[(c[q>>2]|0)+-8
x3e;>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[N>>2]=(
c[(c[q>>2]|0)+-8+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>
x3e;2]|0);if(c[o>>2]|0){c[x>>2]=c[H>>2];c[H>>2]=c[M>>2];c[M>>2]=c[x
x3e;>2];c[y>>2]=c[I>>2];c[I>>2]=c[N>>2];c[N>>2]=c[y>>2]}if((c[q
>>2]|0)>>>0>(c[p>>2]|0)>>>0){Q=36;break b}c[J>>2]=(c[c[q>
x3e;2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[O>
x3e;2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8
x3e;>2]|0);if(c[o>>2]|0){c[z>>2]=c[J>>2];c[J>>2]=c[O>>2];c[O>>2
]=c[z>>2]}if((Mo(c[l>>2]|0,c[H>>2]|0,c[M>>2]|0,c[I>>2]|0,c[N>>2]|0,c
[J>>2]|0,c[O>>2]|0)|0)<<24>>24)break a;else continue b}}}if((Q|0)==27){if((Io(c[l>
x3e;2]|0,c[C>>2]|0,c[C+4>>2]|0,c[F>>2]|0,c[F+4>>2]|0)|0)<<24>>24)break
}else if((Q|0)==36){if((Mo(c[l>>2]|0,c[H>>2]|0,c[M>>2]|0,c[I>>2]|0,c[N>>2]|0,c
[F>>2]|0,c[F+4>>2]|0)|0)<<24>>24)break}else if((Q|0)==37?(Do(c[l>>2]|0,c[F>
;>2]|0,c[F+4>>2]|0)|0)<<24>>24:0)break;a[k>>0]=0;Q=a[k>>0]|0;i=R;return Q
|0}while(0);if((Q|0)==39)c[(c[l>>2]|0)+44>>2]=20;a[k>>0]=1;Q=a[k>>0]|0;i=R;return Q|0}function
Do(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[g>>2]=b;c[h>>
;2]=d;c[j>>2]=e;a:do switch(c[(c[g>>2]|0)+100>>2]|0){case 0:{if((c[j>>2]|0)>(c[(c[g
>>2]|0)+72>>2]|0)){if(!((Eo(c[g>>2]|0,1,(((c[(c[g>>2]|0)+72>>2]|0)+(c[(c[g>
;>2]|0)+4>>2]|0)-1&0-(c[(c[g>>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72>>2]|
0)|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24))break a;a[f>>0]=1;e=
a[f>>0]|0;i=k;return e|0}if((c[j>>2]|0)<(c[(c[g>>2]|0)+72>>2]|0)?(Eo(c[g>>
;2]|0,2,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>2]&0-(c[(c[g>>2]|0)+
4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24:0){a[f>
x3e;0]=1;e=a[f>>0]|0;i=k;return e|0}break}case 1:{if((c[j>>2]|0)<(c[(c[g>>2]|0)+72>>
;2]|0)){if(((Fo(c[g>>2]|0,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>2]&
;0-(c[(c[g>>2]|0)+4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24
x3e;>24|0)==0?((Eo(c[g>>2]|0,2,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>
;2]&0-(c[(c[g>>2]|0)+4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<
x3c;24>>24|0)==0:0)break a;a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}case 2:{if((c[j>>2
]|0)>(c[(c[g>>2]|0)+72>>2]|0)){if(((Fo(c[g>>2]|0,(((c[(c[g>>2]|0)+72>>2]|
0)+(c[(c[g>>2]|0)+4>>2]|0)-1&0-(c[(c[g>>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72
>>2]|0)|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24|0)==0?((Eo(c[g
x3e;>2]|0,1,(((c[(c[g>>2]|0)+72>>2]|0)+(c[(c[g>>2]|0)+4>>2]|0)-1&0-(c[(c[g>
;>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72>>2]|0)|0)>=(c[(c[g>>2]|0)+8>>2]|
0)&255)|0)<<24>>24|0)==0:0)break a;a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}default
:{}}while(0);switch(c[(c[g>>2]|0)+100>>2]|0){case 1:{if((Go(c[g>>2]|0,c[(c[g>>2]|0)+68
x3e;>2]|0,c[(c[g>>2]|0)+72>>2]|0,c[h>>2]|0,c[j>>2]|0,c[(c[g>>2]|0)+76>
;>2]|0,c[(c[g>>2]|0)+80>>2]|0)|0)<<24>>24){a[f>>0]=1;e=a[f>>0]|
0;i=k;return e|0}break}case 2:{if((Ho(c[g>>2]|0,c[(c[g>>2]|0)+68>>2]|0,c[(c[g>>2]|0)+72
x3e;>2]|0,c[h>>2]|0,c[j>>2]|0,c[(c[g>>2]|0)+76>>2]|0,c[(c[g>>2]|0)+80>
;>2]|0)|0)<<24>>24){a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}default:{}}c[(c[g>
;>2]|0)+68>>2]=c[h>>2];c[(c[g>>2]|0)+72>>2]=c[j>>2];a[f>>0]=0;e
=a[f>>0]|0;i=k;return e|0}function Eo(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+9|0;h=l+4|0;j=
l;k=l+8|0;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;if(!(c[(c[h>>2]|0)+92>>2]|0)){c[(c[h
x3e;>2]|0)+88>>2]=c[(c[h>>2]|0)+40>>2];c[(c[h>>2]|0)+92>>2]=c[(c[h>
x3e;2]|0)+88>>2];b=(c[h>>2]|0)+40|0;c[b>>2]=(c[b>>2]|0)+32}e=c[h>>2]|0;if((c[(
c[h>>2]|0)+40>>2]|0)>>>0>=(c[(c[h>>2]|0)+36>>2]|0)>>>
0){c[e+44>>2]=98;a[g>>0]=1;k=a[g>>0]|0;i=l;return k|0}c[(c[e+88>>2]|0)+12>>2]=
0;c[(c[(c[h>>2]|0)+88>>2]|0)+20>>2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+16>>
;2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+8>>2]=c[(c[h>>2]|0)+40>>2];c[(c[(c[h>>
;2]|0)+88>>2]|0)+4>>2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+28>>2]=0;c[(c[(c[h>
x3e;2]|0)+88>>2]|0)+12>>2]=d[(c[h>>2]|0)+180>>0];switch(c[j>>2]|0){case 1:{b=(
c[(c[h>>2]|0)+88>>2]|0)+12|0;c[b>>2]=c[b>>2]|8;if(a[k>>0]|0){k=(c[(c[h>
x3e;2]|0)+88>>2]|0)+12|0;c[k>>2]=c[k>>2]|32}break}case 2:{if(a[k>>0]|0){k=(c[(c[h>
x3e;2]|0)+88>>2]|0)+12|0;c[k>>2]=c[k>>2]|16}break}default:{c[(c[h>>2]|0)+44>>2
]=20;a[g>>0]=1;k=a[g>>0]|0;i=l;return k|0}}if(!(c[(c[h>>2]|0)+96>>2]|0))c[(c[h>>
;2]|0)+96>>2]=c[(c[h>>2]|0)+88>>2];c[(c[h>>2]|0)+100>>2]=c[j>>2];a[(
c[h>>2]|0)+86>>0]=1;a[(c[h>>2]|0)+87>>0]=0;a[g>>0]=0;k=a[g>>0]|0;i=l
;return k|0}function Fo(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;j=l+13|0;k=l+8|0;f=l+12|0;g=l+4|0;h=l;c[k>
;>2]=d;a[f>>0]=e;c[g>>2]=((c[(c[k>>2]|0)+40>>2]|0)-(c[(c[(c[k>>2]|0)+88
x3e;>2]|0)+8>>2]|0)|0)/4|0;if((c[g>>2]|0)<0){c[(c[k>>2]|0)+44>>2]=99;a[j>
x3e;0]=1;k=a[j>>0]|0;i=l;return k|0}if((c[g>>2]|0)>0){c[(c[(c[k>>2]|0)+88>>2]|0)+16
>>2]=c[g>>2];do if(a[f>>0]|0){f=(c[(c[k>>2]|0)+88>>2]|0)+12|0;g=c[f>>
;2]|0;if(c[(c[(c[k>>2]|0)+88>>2]|0)+12>>2]&8|0){c[f>>2]=g|16;break}else{c[f>
x3e;2]=g|32;break}}while(0);c[h>>2]=c[(c[k>>2]|0)+88>>2];c[(c[k>>2]|0)+88>>2]=
c[(c[k>>2]|0)+40>>2];d=(c[k>>2]|0)+40|0;c[d>>2]=(c[d>>2]|0)+32;c[(c[(c[k>
x3e;2]|0)+88>>2]|0)+16>>2]=0;c[(c[(c[k>>2]|0)+88>>2]|0)+8>>2]=c[(c[k>>
;2]|0)+40>>2];c[(c[h>>2]|0)+28>>2]=c[(c[k>>2]|0)+88>>2];h=(c[k>>2]|0
)+84|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}f=c[k>>2]|0;if((c[(c[k>>2]|0)+40
>>2]|0)>>>0>=(c[(c[k>>2]|0)+36>>2]|0)>>>0){c[f+44>>2]=
98;a[j>>0]=1;k=a[j>>0]|0;i=l;return k|0}else{a[f+87>>0]=0;a[j>>0]=0;k=a[j>>0]|
0;i=l;return k|0}return 0}function Go(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;C=i;i=i+80|0;s=C+72|0;t=C+68|0;u=C+64|0;k=C+60|0;D=C+56|0;l=C+52|0;m=C+48|0;n
=C+44|0;w=C+40|0;x=C+36|0;o=C+32|0;p=C+28|0;q=C+24|0;r=C+20|0;A=C+16|0;y=C+12|0;z=C+8|0;v=C+4|0;B=C;c[t>>2]=b;c[u>
;>2]=d;c[k>>2]=e;c[D>>2]=f;c[l>>2]=g;c[m>>2]=h;c[n>>2]=j;c[w>>2
]=(c[D>>2]|0)-(c[u>>2]|0);c[x>>2]=(c[l>>2]|0)-(c[k>>2]|0);if(((c[x>>
2]|0)>0?(c[l>>2]|0)>=(c[m>>2]|0):0)?(c[k>>2]|0)<=(c[n>>2]|0):0){if((c[k
x3e;>2]|0)<(c[m>>2]|0)){D=xb(c[w>>2]|0,(c[m>>2]|0)-(c[k>>2]|0)|0,c[x>>
;2]|0)|0;c[u>>2]=(c[u>>2]|0)+D;c[o>>2]=c[m>>2]>>c[c[t>>2]>>
;2];c[q>>2]=0}else{c[o>>2]=c[k>>2]>>c[c[t>>2]>>2];c[q>>2]=
c[k>>2]&(c[(c[t>>2]|0)+4>>2]|0)-1}if((c[l>>2]|0)>(c[n>>2]|0)){c[p>
;>2]=c[n>>2]>>c[c[t>>2]>>2];c[r>>2]=0}else{c[p>>2]=c[l>>
;2]>>c[c[t>>2]>>2];c[r>>2]=c[l>>2]&(c[(c[t>>2]|0)+4>>
2]|0)-1}do if((c[q>>2]|0)<=0){if(a[(c[t>>2]|0)+87>>0]|0){D=(c[t>>2]|0)+40|0;c[D>
;>2]=(c[D>>2]|0)+-4;a[(c[t>>2]|0)+87>>0]=0}}else{if((c[o>>2]|0)!=(c[p>>2]|
0)){D=xb(c[w>>2]|0,(c[(c[t>>2]|0)+4>>2]|0)-(c[q>>2]|0)|0,c[x>>2]|0)|0;c[u>
;>2]=(c[u>>2]|0)+D;c[o>>2]=(c[o>>2]|0)+1;break}a[s>>0]=0;D=a[s>>0]|0;i=C;
return D|0}while(0);a[(c[t>>2]|0)+87>>0]=(c[r>>2]|0)==0;if(a[(c[t>>2]|0)+86>>0
]|0){c[(c[(c[t>>2]|0)+88>>2]|0)+20>>2]=c[o>>2];a[(c[t>>2]|0)+86>>0]=
0}c[A>>2]=(c[p>>2]|0)-(c[o>>2]|0)+1;if(((c[(c[t>>2]|0)+40>>2]|0)+(c[A>>
;2]<<2)|0)>>>0>=(c[(c[t>>2]|0)+36>>2]|0)>>>0){c[(c[t>>
;2]|0)+44>>2]=98;a[s>>0]=1;D=a[s>>0]|0;i=C;return D|0}k=c[(c[t>>2]|0)+4>>2]|0;
l=c[w>>2]|0;if((c[w>>2]|0)>0){c[y>>2]=xb(k,l,c[x>>2]|0)|0;D=_(c[(c[t>>2]|
0)+4>>2]|0,c[w>>2]|0)|0;c[z>>2]=(D|0)%(c[x>>2]|0)|0;c[w>>2]=1}else{c[y>
x3e;2]=_(xb(k,0-l|0,c[x>>2]|0)|0,-1)|0;D=_(c[(c[t>>2]|0)+4>>2]|0,0-(c[w>>2]|0)|0)|0;c[z
x3e;>2]=(D|0)%(c[x>>2]|0)|0;c[w>>2]=-1}c[v>>2]=0-(c[x>>2]|0);c[B>>2]=c[(c
[t>>2]|0)+40>>2];while(1){if((c[A>>2]|0)<=0)break;g=c[u>>2]|0;D=c[B>>2]|0
;c[B>>2]=D+4;c[D>>2]=g;c[u>>2]=(c[u>>2]|0)+(c[y>>2]|0);c[v>>2]=(c[v
x3e;>2]|0)+(c[z>>2]|0);if((c[v>>2]|0)>=0){c[v>>2]=(c[v>>2]|0)-(c[x>>
2]|0);c[u>>2]=(c[u>>2]|0)+(c[w>>2]|0)}c[A>>2]=(c[A>>2]|0)+-1}c[(c[t>>
;2]|0)+40>>2]=c[B>>2];a[s>>0]=0;D=a[s>>0]|0;i=C;return D|0}a[s>>0]=0;D=a[s>
;>0]|0;i=C;return D|0}function Ho(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;m=i;i=i+32|0;k=m+24|0;t=m+20|0;s=m+16|0;r=m+12|0;q=m+8|0;o=m+4|0;p=m;l=m+29|0;n=m+28|0;c[k>>2]=b;c[t>
x3e;2]=d;c[s>>2]=e;c[r>>2]=f;c[q>>2]=g;c[o>>2]=h;c[p>>2]=j;a[n>>0]=a
[(c[k>>2]|0)+86>>0]|0;a[l>>0]=Go(c[k>>2]|0,c[t>>2]|0,0-(c[s>>2]|0)|0
,c[r>>2]|0,0-(c[q>>2]|0)|0,0-(c[p>>2]|0)|0,0-(c[o>>2]|0)|0)|0;if(!(a[n>>0]|0)){
t=a[l>>0]|0;i=m;return t|0}if(a[(c[k>>2]|0)+86>>0]|0){t=a[l>>0]|0;i=m;return t|0}c[(c[(c
[k>>2]|0)+88>>2]|0)+20>>2]=0-(c[(c[(c[k>>2]|0)+88>>2]|0)+20>>2]|0);t
=a[l>>0]|0;i=m;return t|0}function Io(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,x=0;t=i;i=i+64|0;h=t+49|0;j=t+44|0;x=t+40|0;w=t+36|0;v=t+32|0;u=t+28|0;n=t+24|0;o=t+20|0;p=t+16|0;m=t+12
|0;r=t+8|0;q=t+4|0;l=t;k=t+48|0;c[j>>2]=b;c[x>>2]=d;c[w>>2]=e;c[v>>2]=f;c[u>>2
]=g;c[(c[j>>2]|0)+52>>2]=(c[j>>2]|0)+184;c[(c[(c[j>>2]|0)+52>>2]|0)+16>
x3e;2]=c[(c[j>>2]|0)+68>>2];c[(c[(c[j>>2]|0)+52>>2]|0)+16+4>>2]=c[(c[j>
x3e;2]|0)+72>>2];c[(c[(c[j>>2]|0)+52>>2]|0)+8>>2]=c[x>>2];c[(c[(c[j>>
;2]|0)+52>>2]|0)+8+4>>2]=c[w>>2];c[c[(c[j>>2]|0)+52>>2]>>2]=c[v>
;>2];c[(c[(c[j>>2]|0)+52>>2]|0)+4>>2]=c[u>>2];a:while(1){c[n>>2]=c[(c[(c[
j>>2]|0)+52>>2]|0)+16+4>>2];c[o>>2]=c[(c[(c[j>>2]|0)+52>>2]|0)+8+4
x3e;>2];c[p>>2]=c[(c[(c[j>>2]|0)+52>>2]|0)+4>>2];c[m>>2]=c[c[(c[j>
x3e;2]|0)+52>>2]>>2];if((c[n>>2]|0)<=(c[p>>2]|0)){c[r>>2]=c[n>>
2];c[q>>2]=c[p>>2]}else{c[r>>2]=c[p>>2];c[q>>2]=c[n>>2]}do if((c[o
x3e;>2]|0)>=(c[r>>2]|0)?(c[o>>2]|0)<=(c[q>>2]|0):0){if((c[n>>2]|0)==(c[p
x3e;>2]|0)){x=(c[j>>2]|0)+52|0;c[x>>2]=(c[x>>2]|0)+-16;break}c[l>>2]=(c[n>>
;2]|0)<(c[p>>2]|0)?1:2;if((c[(c[j>>2]|0)+100>>2]|0)!=(c[l>>2]|0)){d=c[n>>
2]|0;if((c[l>>2]|0)==1)d=((d+(c[(c[j>>2]|0)+4>>2]|0)-1&0-(c[(c[j>>2]|0)+4>>
;2]|0))-(c[n>>2]|0)|0)>=(c[(c[j>>2]|0)+8>>2]|0);else d=(d-(c[n>>2]&0-(c[(c[j
x3e;>2]|0)+4>>2]|0))|0)>=(c[(c[j>>2]|0)+8>>2]|0);a[k>>0]=d&1;if(c[(c[j>
;>2]|0)+100>>2]|0?(Fo(c[j>>2]|0,a[k>>0]|0)|0)<<24>>24|0:0){s=22;break a}if
((Eo(c[j>>2]|0,c[l>>2]|0,a[k>>0]|0)|0)<<24>>24){s=22;break a}}d=c[j>>
;2]|0;e=c[(c[j>>2]|0)+76>>2]|0;b=c[(c[j>>2]|0)+80>>2]|0;if((c[l>>2]|0)==1)if((
Ko(d,2,41,e,b)|0)<<24>>24){s=22;break a}else break;else if((Lo(d,2,41,e,b)|0)<<24>>24){s
=22;break a}else break}else s=7;while(0);if((s|0)==7){s=0;Jo(c[(c[j>>2]|0)+52>>2]|0);x=(c[j>>2]|0)+
52|0;c[x>>2]=(c[x>>2]|0)+16}if((c[(c[j>>2]|0)+52>>2]|0)>>>0<((c[j>
;>2]|0)+184|0)>>>0){s=21;break}}if((s|0)==21){c[(c[j>>2]|0)+68>>2]=c[m>>2];c[(
c[j>>2]|0)+72>>2]=c[p>>2];a[h>>0]=0;x=a[h>>0]|0;i=t;return x|0}else if((s|0)==
22){a[h>>0]=1;x=a[h>>0]|0;i=t;return x|0}return 0}function Jo(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[(c[d>>2]|0)+32>>2]=c[(c[d>>2]|0)+16>>2];c[e>
x3e;2]=c[(c[d>>2]|0)+8>>2];a=((c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c
[d>>2]|0)+24>>2]=a;c[f>>2]=a;a=((c[c[d>>2]>>2]|0)+(c[e>>2]|0)|0)/2|0
;c[(c[d>>2]|0)+8>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16>>2]=((c[f>>2]|0)+(
c[e>>2]|0)|0)/2|0;c[(c[d>>2]|0)+32+4>>2]=c[(c[d>>2]|0)+16+4>>2];c[e>>
;2]=c[(c[d>>2]|0)+8+4>>2];a=((c[(c[d>>2]|0)+16+4>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(
c[d>>2]|0)+24+4>>2]=a;c[f>>2]=a;a=((c[(c[d>>2]|0)+4>>2]|0)+(c[e>>2]|
0)|0)/2|0;c[(c[d>>2]|0)+8+4>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16+4>>2]=((c[f>
x3e;2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function Ko(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,t=0,u=0,v=0,w=0,x=0,y=0;y=i;i=i+64|0;j=y+54|0;k=y+48|0;l=y+44|0;m=y+40|0;n=y+36|0;o=y+32|0;w=y+28|0;x=y+24|0;
q=y+20|0;s=y+16|0;r=y+12|0;t=y+52|0;p=y+8|0;u=y+4|0;v=y;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>
;2]=g;c[o>>2]=h;c[p>>2]=c[(c[k>>2]|0)+52>>2];c[w>>2]=c[(c[p>>2]|0)+(
c[l>>2]<<3)+4>>2];c[x>>2]=c[(c[p>>2]|0)+4>>2];c[v>>2]=c[(c
[k>>2]|0)+40>>2];a:do if((c[x>>2]|0)>=(c[n>>2]|0)?(c[w>>2]|0)<=(c[o
x3e;>2]|0):0){c[s>>2]=c[x>>2]&0-(c[(c[k>>2]|0)+4>>2]|0);if((c[s>>2]|
0)>(c[o>>2]|0))c[s>>2]=c[o>>2];c[r>>2]=c[n>>2];if((c[w>>2]|0)
x3e;=(c[n>>2]|0)){c[q>>2]=(c[w>>2]|0)+(c[(c[k>>2]|0)+4>>2]|0)-1&0-(c[(c[k
>>2]|0)+4>>2]|0);b[t>>1]=c[w>>2]&(c[(c[k>>2]|0)+4>>2]|0)-1;c[r
x3e;>2]=c[q>>2];if(!(b[t>>1]|0)){if(a[(c[k>>2]|0)+87>>0]|0){c[v>>2]=(c[v
x3e;>2]|0)+-4;a[(c[k>>2]|0)+87>>0]=0}f=c[(c[p>>2]|0)+(c[l>>2]<<3)>
x3e;2]|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[q>>2]=(c[q>>2]|0)+(c[(c[k>
x3e;2]|0)+4>>2]|0)}}else c[q>>2]=c[n>>2];if(a[(c[k>>2]|0)+86>>0]|0){c[(c[(c[k
x3e;>2]|0)+88>>2]|0)+20>>2]=c[r>>2]>>c[c[k>>2]>>2];a[(c[k>
x3e;2]|0)+86>>0]=0}if((c[s>>2]|0)>=(c[q>>2]|0)){if(((c[v>>2]|0)+((c[s>>2]|
0)-(c[q>>2]|0)>>c[c[k>>2]>>2]<<2)+4|0)>>>0>=(c[(c[k>
x3e;2]|0)+36>>2]|0)>>>0){c[(c[k>>2]|0)+40>>2]=c[v>>2];c[(c[k>>2
]|0)+44>>2]=98;a[j>>0]=1;x=a[j>>0]|0;i=y;return x|0}c[u>>2]=c[p>>2];while(1){if
((c[p>>2]|0)>>>0<(c[u>>2]|0)>>>0)break a;if((c[q>>2]|0)>(c
[s>>2]|0))break a;a[(c[k>>2]|0)+87>>0]=0;c[x>>2]=c[(c[p>>2]|0)+4>>2];
if((c[x>>2]|0)>(c[q>>2]|0)){c[w>>2]=c[(c[p>>2]|0)+(c[l>>2]<<3)+
4>>2];if(((c[x>>2]|0)-(c[w>>2]|0)|0)>=(c[(c[k>>2]|0)+16>>2]|0)){Va[c[m>
;>2]&63](c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[l>>2]<<3);continue}else{f
=_((c[c[p>>2]>>2]|0)-(c[(c[p>>2]|0)+(c[l>>2]<<3)>>2]|0)|0,(c[q>
x3e;2]|0)-(c[w>>2]|0)|0)|0;f=(c[(c[p>>2]|0)+(c[l>>2]<<3)>>2]|0)+((f|0)/((c[x
x3e;>2]|0)-(c[w>>2]|0)|0)|0)|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[p>>2]=(
c[p>>2]|0)+(0-(c[l>>2]|0)<<3);c[q>>2]=(c[q>>2]|0)+(c[(c[k>>2]|0)+4
x3e;>2]|0);continue}}else{if((c[x>>2]|0)==(c[q>>2]|0)){a[(c[k>>2]|0)+87>>0]=1;f=c[c
[p>>2]>>2]|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[q>>2]=(c[q>>
;2]|0)+(c[(c[k>>2]|0)+4>>2]|0)}c[p>>2]=(c[p>>2]|0)+(0-(c[l>>2]|0)<<3
);continue}}}}while(0);c[(c[k>>2]|0)+40>>2]=c[v>>2];x=(c[k>>2]|0)+52|0;c[x>>2]=(
c[x>>2]|0)+(0-(c[l>>2]|0)<<3);a[j>>0]=0;x=a[j>>0]|0;i=y;return x|0}function Lo
(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;q=i;i=i+32|0;h=q+20|0;j=q+16|0;k=q+12|0;l=q+8|
0;m=q+4|0;n=q;p=q+25|0;o=q+24|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2
]=g;c[n>>2]=c[(c[h>>2]|0)+52>>2];c[(c[n>>2]|0)+4>>2]=0-(c[(c[n>>2]|0
)+4>>2]|0);c[(c[n>>2]|0)+8+4>>2]=0-(c[(c[n>>2]|0)+8+4>>2]|0);c[(c[n>>
;2]|0)+16+4>>2]=0-(c[(c[n>>2]|0)+16+4>>2]|0);if((c[j>>2]|0)>2)c[(c[n>>2]|
0)+24+4>>2]=0-(c[(c[n>>2]|0)+24+4>>2]|0);a[o>>0]=a[(c[h>>2]|0)+86>>0
]|0;a[p>>0]=Ko(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,0-(c[m>>2]|0)|0,0-(c[l>>
;2]|0)|0)|0;if(a[o>>0]|0?(a[(c[h>>2]|0)+86>>0]|0)==0:0)c[(c[(c[h>>2]|0)+88>>2]|
0)+20>>2]=0-(c[(c[(c[h>>2]|0)+88>>2]|0)+20>>2]|0);c[(c[n>>2]|0)+4>>2
]=0-(c[(c[n>>2]|0)+4>>2]|0);i=q;return a[p>>0]|0}function Mo(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;y=i;i=i+80|0;k=y+69|
0;l=y+64|0;E=y+60|0;D=y+56|0;C=y+52|0;B=y+48|0;A=y+44|0;z=y+40|0;p=y+36|0;q=y+32|0;r=y+28|0;s=y+24|0;o=y+20|0;v=y+16|0;t=y+12|0;
w=y+8|0;u=y+4|0;n=y;m=y+68|0;c[l>>2]=b;c[E>>2]=d;c[D>>2]=e;c[C>>2]=f;c[B>>2]=g
;c[A>>2]=h;c[z>>2]=j;c[(c[l>>2]|0)+52>>2]=(c[l>>2]|0)+184;c[(c[(c[l>>
;2]|0)+52>>2]|0)+24>>2]=c[(c[l>>2]|0)+68>>2];c[(c[(c[l>>2]|0)+52>>2]|
0)+24+4>>2]=c[(c[l>>2]|0)+72>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+16>>2]=c
[E>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+16+4>>2]=c[D>>2];c[(c[(c[l>>2]|0)+
52>>2]|0)+8>>2]=c[C>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+8+4>>2]=c[B>
x3e;2];c[c[(c[l>>2]|0)+52>>2]>>2]=c[A>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+
4>>2]=c[z>>2];a:while(1){c[p>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+24+4>>2];
c[q>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+16+4>>2];c[r>>2]=c[(c[(c[l>>2]|0)+
52>>2]|0)+8+4>>2];c[s>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+4>>2];c[o>
x3e;2]=c[c[(c[l>>2]|0)+52>>2]>>2];if((c[p>>2]|0)<=(c[s>>2]|0)){c[v>
x3e;2]=c[p>>2];c[t>>2]=c[s>>2]}else{c[v>>2]=c[s>>2];c[t>>2]=c[p>
;>2]}if((c[q>>2]|0)<=(c[r>>2]|0)){c[w>>2]=c[q>>2];c[u>>2]=c[r>
x3e;2]}else{c[w>>2]=c[r>>2];c[u>>2]=c[q>>2]}do if((c[w>>2]|0)>=(c[v>
x3e;2]|0)?(c[u>>2]|0)<=(c[t>>2]|0):0){if((c[p>>2]|0)==(c[s>>2]|0)){E=(c[l>>
;2]|0)+52|0;c[E>>2]=(c[E>>2]|0)+-24;break}c[n>>2]=(c[p>>2]|0)<=(c[s>>2]|0
)?1:2;if((c[(c[l>>2]|0)+100>>2]|0)!=(c[n>>2]|0)){d=c[p>>2]|0;if((c[n>>2]|0)==1
)d=((d+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[l>>2]|0)+4>>2]|0))-(c[p>>2]|0)|0
)>=(c[(c[l>>2]|0)+8>>2]|0);else d=(d-(c[p>>2]&0-(c[(c[l>>2]|0)+4>>2]|
0))|0)>=(c[(c[l>>2]|0)+8>>2]|0);a[m>>0]=d&1;if(c[(c[l>>2]|0)+100>>2]|
0?(Fo(c[l>>2]|0,a[m>>0]|0)|0)<<24>>24|0:0){x=25;break a}if((Eo(c[l>>2]|0,c[n
x3e;>2]|0,a[m>>0]|0)|0)<<24>>24){x=25;break a}}d=c[l>>2]|0;f=c[(c[l>>2]|0
)+76>>2]|0;e=c[(c[l>>2]|0)+80>>2]|0;if((c[n>>2]|0)==1)if((Ko(d,3,42,f,e)|0)<<24
>>24){x=25;break a}else break;else if((Lo(d,3,42,f,e)|0)<<24>>24){x=25;break a}else break}else x=10
;while(0);if((x|0)==10){x=0;No(c[(c[l>>2]|0)+52>>2]|0);E=(c[l>>2]|0)+52|0;c[E>>2]=(c[E
x3e;>2]|0)+24}if((c[(c[l>>2]|0)+52>>2]|0)>>>0<((c[l>>2]|0)+184|0)>
x3e;>0){x=24;break}}if((x|0)==24){c[(c[l>>2]|0)+68>>2]=c[o>>2];c[(c[l>>2]|0)+72>
;>2]=c[s>>2];a[k>>0]=0;E=a[k>>0]|0;i=y;return E|0}else if((x|0)==25){a[k>>0]=1;E=a[
k>>0]|0;i=y;return E|0}return 0}function No(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;f=b+12|0;e=b+8|
0;g=b+4|0;h=b;c[d>>2]=a;c[(c[d>>2]|0)+48>>2]=c[(c[d>>2]|0)+24>>2];c[g>>
;2]=c[(c[d>>2]|0)+8>>2];c[h>>2]=c[(c[d>>2]|0)+16>>2];a=(c[c[d>>2]>
;>2]|0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+8>>2]=a;a=(c[(c[d>
x3e;2]|0)+24>>2]|0)+(c[h>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>>2]|0)+40>>2]=
a;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1>>1;a=(c[f>>2]|0)+(c[g>>2]|0)+1
x3e;>1;c[f>>2]=a;c[(c[d>>2]|0)+16>>2]=a;a=(c[e>>2]|0)+(c[g>>2]|0)+1>
x3e;1;c[e>>2]=a;c[(c[d>>2]|0)+32>>2]=a;c[(c[d>>2]|0)+24>>2]=(c[f>>2]|
0)+(c[e>>2]|0)+1>>1;c[(c[d>>2]|0)+48+4>>2]=c[(c[d>>2]|0)+24+4>>2];c[
g>>2]=c[(c[d>>2]|0)+8+4>>2];c[h>>2]=c[(c[d>>2]|0)+16+4>>2];a=(c[(c[d
>>2]|0)+4>>2]|0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+8+4>
x3e;2]=a;a=(c[(c[d>>2]|0)+24+4>>2]|0)+(c[h>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>
x3e;2]|0)+40+4>>2]=a;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1>>1;a=(c[f>>2]|
0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+16+4>>2]=a;a=(c[e>>2]|0)+(
c[g>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>>2]|0)+32+4>>2]=a;c[(c[d>>2]|0)+24+
4>>2]=(c[f>>2]|0)+(c[e>>2]|0)+1>>1;i=b;return}function Oo(d){d=d|0;var f=0,g=0,h=0,j=0,k
=0,l=0,m=0;m=i;i=i+32|0;f=m+18|0;g=m+12|0;h=m+8|0;l=m+4|0;j=m+16|0;k=m;c[g>>2]=d;b[j>>1]=b[(c[g>>2
]|0)+84>>1]|0;c[k>>2]=c[(c[g>>2]|0)+92>>2];a:do if((e[j>>1]|0|0)>1&(
c[k>>2]|0)!=0){while(1){if((e[j>>1]|0|0)<=0)break a;d=c[k>>2]|0;if((e[j>>1]|0|0)>
;1)c[(c[k>>2]|0)+4>>2]=(c[d+8>>2]|0)+(c[(c[k>>2]|0)+16>>2]<<2);else
c[d+4>>2]=0;d=c[(c[k>>2]|0)+20>>2]|0;if(c[(c[k>>2]|0)+12>>2]&8|0){c[h>
;>2]=d;c[l>>2]=(c[(c[k>>2]|0)+20>>2]|0)+(c[(c[k>>2]|0)+16>>2]|0)-1}else{c
[h>>2]=d-(c[(c[k>>2]|0)+16>>2]|0)+1;c[l>>2]=c[(c[k>>2]|0)+20>>2];c[(
c[k>>2]|0)+20>>2]=c[h>>2];d=(c[k>>2]|0)+8|0;c[d>>2]=(c[d>>2]|0)+((c[(
c[k>>2]|0)+16>>2]|0)-1<<2)}if((Po(c[g>>2]|0,c[h>>2]|0)|0)<<24>
x3e;24|0)break;if((Po(c[g>>2]|0,(c[l>>2]|0)+1|0)|0)<<24>>24|0)break;c[k>>2]=c[(
c[k>>2]|0)+4>>2];b[j>>1]=(b[j>>1]|0)+-1<<16>>16}a[f>>0]=1;
l=a[f>>0]|0;i=m;return l|0}else c[(c[g>>2]|0)+92>>2]=0;while(0);a[f>>0]=0;l=a[f>>
;0]|0;i=m;return l|0}function Po(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;h=l+20|0;j=l+16|0;k=l+12|0;g=l+8|
0;f=l+4|0;e=l;c[j>>2]=b;c[k>>2]=d;c[e>>2]=(c[(c[j>>2]|0)+48>>2]|0)-1;c[g>
x3e;2]=(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j>>2]|0)+48>>2]|0)<<2);while(1){if((c
[e>>2]|0)>=0)d=(c[k>>2]|0)<(c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]|
0);else d=0;b=c[e>>2]|0;if(!d)break;c[e>>2]=b+-1}if((b|0)>=0?((c[e>>2]|0)>=0?(c[k>
x3e;2]|0)>(c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]|0):0):0)do{c[f>>2]=c[(c[g>
x3e;2]|0)+(c[e>>2]<<2)>>2];c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]=
c[k>>2];c[k>>2]=c[f>>2];c[e>>2]=(c[e>>2]|0)+-1}while((c[e>>2]|0)>
;=0);do if((c[e>>2]|0)<0){b=(c[j>>2]|0)+36|0;c[b>>2]=(c[b>>2]|0)+-4;b=c[j>>
;2]|0;if((c[(c[j>>2]|0)+36>>2]|0)>>>0>(c[(c[j>>2]|0)+40>>2]|0)>
x3e;>0){g=b+48|0;c[g>>2]=(c[g>>2]|0)+1;c[(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j>
x3e;2]|0)+48>>2]|0)<<2)>>2]=c[k>>2];break}c[b+44>>2]=98;a[h>>0]=1;k=
a[h>>0]|0;i=l;return k|0}while(0);a[h>>0]=0;k=a[h>>0]|0;i=l;return k|0}function Qo(d){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;D=i;i=i+80|0;h=D+72|0;j=D+52|0
;z=D+70|0;A=D+68|0;B=D+66|0;k=D+48|0;n=D+44|0;l=D+40|0;m=D+36|0;g=D+64|0;u=D+62|0;f=D+60|0;e=D+58|0;r=D+56|0;w=D+32|0;x=D+28|0;y
=D+24|0;s=D+20|0;t=D+16|0;v=D+12|0;o=D+8|0;p=D+4|0;q=D;c[j>>2]=d;Ro(v);Ro(o);Ro(p);c[k>>2]=c[(c[j>>
;2]|0)+92>>2];b[u>>1]=c[(c[j>>2]|0)+76>>2]>>c[c[j>>2]>>2];
b[g>>1]=c[(c[j>>2]|0)+80>>2]>>c[c[j>>2]>>2];while(1){if(!(c[k>
x3e;2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];b[e>>1]=c[(c[k>>2]|0)+20>>
;2];b[f>>1]=(c[(c[k>>2]|0)+20>>2]|0)+(c[(c[k>>2]|0)+16>>2]|0)-1;if((b[g>
x3e;1]|0)>(b[e>>1]|0))b[g>>1]=b[e>>1]|0;if((b[u>>1]|0)<(b[f>>1]|0))b
[u>>1]=b[f>>1]|0;c[c[k>>2]>>2]=0;So(v,c[k>>2]|0);c[k>>2]=c[n>
x3e;2]}e=c[j>>2]|0;if(!(c[(c[j>>2]|0)+48>>2]|0)){c[e+44>>2]=20;a[h>>0]=1;C=a[h
>>0]|0;i=D;return C|0}Ua[c[e+164>>2]&31](c[j>>2]|0,g,u);c[k>>2]=c[v>>2];while
(1){if(!(c[k>>2]|0))break;c[(c[k>>2]|0)+24>>2]=(c[(c[k>>2]|0)+20>>2]|0)-(b[g
x3e;>1]|0)&65535;c[k>>2]=c[(c[k>>2]|0)+4>>2]}b[z>>1]=b[g>>1]|0;b[B
x3e;>1]=0;if((c[(c[j>>2]|0)+48>>2]|0)>0?(c[(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j
>>2]|0)+48>>2]|0)<<2)>>2]|0)==(b[g>>1]|0):0){g=(c[j>>2]|0)+48|0;c[g
x3e;>2]=(c[g>>2]|0)+-1}a:while(1){if((c[(c[j>>2]|0)+48>>2]|0)<=0)break;c[k>>2]=
c[v>>2];while(1){if(!(c[k>>2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];g=(c[k>
;>2]|0)+24|0;c[g>>2]=(c[g>>2]|0)-(b[B>>1]|0);do if(!(c[(c[k>>2]|0)+24>>2]|
0)){To(v,c[k>>2]|0);e=c[k>>2]|0;if(c[(c[k>>2]|0)+12>>2]&8|0){So(o,e);break}else{So(
p,e);break}}while(0);c[k>>2]=c[n>>2]}Uo(o);Uo(p);d=(c[j>>2]|0)+48|0;g=c[d>>2]|0;c[d>
;>2]=g+-1;b[A>>1]=c[(c[(c[j>>2]|0)+32>>2]|0)+(0-g<<2)>>2];b[B>>
1]=(b[A>>1]|0)-(b[z>>1]|0);while(1){if((b[z>>1]|0)>=(b[A>>1]|0))break;b[r>>
;1]=0;c[l>>2]=c[o>>2];c[m>>2]=c[p>>2];while(1){if(!(c[l>>2]|0))break;c[w>
x3e;2]=c[c[l>>2]>>2];c[x>>2]=c[c[m>>2]>>2];if((c[w>>2]|0)>(c[x
x3e;>2]|0)){c[y>>2]=c[w>>2];c[w>>2]=c[x>>2];c[x>>2]=c[y>>2]}c[s
>>2]=c[w>>2]&0-(c[(c[j>>2]|0)+4>>2]|0);c[t>>2]=(c[x>>2]|0)+(c[(
c[j>>2]|0)+4>>2]|0)-1&0-(c[(c[j>>2]|0)+4>>2]|0);do if((((c[x>>2]|0)-(c[w
x3e;>2]|0)|0)<=(c[(c[j>>2]|0)+4>>2]|0)?(c[s>>2]|0)!=(c[w>>2]|0):0)?(c[t>
x3e;2]|0)!=(c[x>>2]|0):0){if((c[s>>2]|0)<=(c[t>>2]|0)?(c[t>>2]|0)!=((c[s>>
;2]|0)+(c[(c[j>>2]|0)+4>>2]|0)|0):0){C=37;break}c[q>>2]=c[(c[l>>2]|0)+12>>2]
x26;7;if((c[q>>2]|0)!=2){c[c[l>>2]>>2]=c[w>>2];c[c[m>>2]>>2]=c[x>
;>2];c[(c[l>>2]|0)+24>>2]=1;b[r>>1]=(b[r>>1]|0)+1<<16>>16}}else
C=37;while(0);if((C|0)==37){C=0;Xa[c[(c[j>>2]|0)+168>>2]&7](c[j>>2]|0,b[z>>1]|0,c[
w>>2]|0,c[x>>2]|0,c[l>>2]|0,c[m>>2]|0)}c[l>>2]=c[(c[l>>2]|0)+4>
x3e;2];c[m>>2]=c[(c[m>>2]|0)+4>>2]}b:do if((b[r>>1]|0)>0){c[l>>2]=c[o>
;>2];c[m>>2]=c[p>>2];while(1){if(!(c[l>>2]|0))break b;if(c[(c[l>>2]|0)+24>>
;2]|0){c[(c[l>>2]|0)+24>>2]=0;Xa[c[(c[j>>2]|0)+172>>2]&7](c[j>>2]|0,b[z
x3e;>1]|0,c[c[l>>2]>>2]|0,c[c[m>>2]>>2]|0,c[l>>2]|0,c[m>>2]|0)}
c[l>>2]=c[(c[l>>2]|0)+4>>2];c[m>>2]=c[(c[m>>2]|0)+4>>2]}}while(0);Va
[c[(c[j>>2]|0)+176>>2]&63](c[j>>2]|0);b[z>>1]=(b[z>>1]|0)+1<<16
>>16;if((b[z>>1]|0)>=(b[A>>1]|0))continue;Uo(o);Uo(p)}c[k>>2]=c[o>>2];while
(1){if(!(c[k>>2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];if(!(c[(c[k>>2]|0)+16>
;>2]|0))To(o,c[k>>2]|0);c[k>>2]=c[n>>2]}c[k>>2]=c[p>>2];while(1){if(!(c[k
>>2]|0))continue a;c[n>>2]=c[(c[k>>2]|0)+4>>2];if(!(c[(c[k>>2]|0)+16>>
;2]|0))To(p,c[k>>2]|0);c[k>>2]=c[n>>2]}}while(1){if((b[z>>1]|0)>(b[u>>1]|
0))break;Va[c[(c[j>>2]|0)+176>>2]&63](c[j>>2]|0);b[z>>1]=(b[z>>1]|0)+1<
;<16>>16}a[h>>0]=0;C=a[h>>0]|0;i=D;return C|0}function Ro(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]=0;i=b;return}function So(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h
=i;i=i+32|0;j=h+16|0;d=h+12|0;f=h+8|0;e=h+4|0;g=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=c[j>>2];c[
e>>2]=c[c[f>>2]>>2];c[g>>2]=c[c[d>>2]>>2];while(1){if(!(c[e>>
;2]|0))break;if((c[g>>2]|0)<(c[c[e>>2]>>2]|0))break;c[f>>2]=(c[e>>2]|0)+4
;c[e>>2]=c[c[f>>2]>>2]}c[(c[d>>2]|0)+4>>2]=c[e>>2];c[c[f>>
2]>>2]=c[d>>2];i=h;return}function To(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;j=h+12|0;d=h
+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=c[j>>2];c[e>>2]=c[c[f>>
2]>>2];while(1){if(!(c[e>>2]|0)){g=6;break}a=(c[e>>2]|0)+4|0;if((c[e>>2]|0)==(c[d>
x3e;2]|0))break;c[f>>2]=a;c[e>>2]=c[c[f>>2]>>2]}if((g|0)==6){i=h;return}c[c[f>>
;2]>>2]=c[a>>2];i=h;return}function Uo(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;f=g+8|0;d=g+4|
0;e=g;c[b>>2]=a;c[d>>2]=c[c[b>>2]>>2];while(1){if(!(c[d>>2]|0))break;c[c[d>
;>2]>>2]=c[c[(c[d>>2]|0)+8>>2]>>2];a=(c[d>>2]|0)+8|0;c[a>>2]=(c
[a>>2]|0)+((c[(c[d>>2]|0)+12>>2]&8|0?1:-1)<<2);a=(c[d>>2]|0)+16|0;c[a>
;>2]=(c[a>>2]|0)+-1;c[d>>2]=c[(c[d>>2]|0)+4>>2]}c[f>>2]=c[b>>2];
c[d>>2]=c[c[f>>2]>>2];if(!(c[d>>2]|0)){i=g;return}c[e>>2]=c[(c[d>>2]|
0)+4>>2];while(1){if(!(c[e>>2]|0)){b=11;break}if((c[c[d>>2]>>2]|0)<=(c[c[e>>
;2]>>2]|0)){c[f>>2]=(c[d>>2]|0)+4;c[d>>2]=c[c[f>>2]>>2];if(!(c[d>
;>2]|0)){b=11;break}}else{c[c[f>>2]>>2]=c[e>>2];c[(c[d>>2]|0)+4>>2]=c[(c[
e>>2]|0)+4>>2];c[(c[e>>2]|0)+4>>2]=c[d>>2];c[f>>2]=c[b>>2];
c[d>>2]=c[c[f>>2]>>2]}c[e>>2]=c[(c[d>>2]|0)+4>>2]}if((b|0)==11){i=g;
return}}function Vo(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>
x3e;2]=b;c[f>>2]=d;c[h>>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>
x3e;2];i=e;return}function Wo(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;u=i;i=i+48|0;l=u+32|0;m=u+36|0;n=u+28|0;o=u+24|0;w=u+20|0;v=u+16|0;q=u+12|0;r=u+8|0;p=u+4|0;s=u+38|0;t=u;c[l>>2]=e;
b[m>>1]=f;c[n>>2]=g;c[o>>2]=h;c[w>>2]=j;c[v>>2]=k;c[w>>2]=c[w>
x3e;2];c[v>>2]=c[v>>2];if(((c[o>>2]|0)-(c[n>>2]|0)|0)>=(c[(c[l>>2]|0)+4
x3e;>2]|0)){i=u;return}c[q>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[l
>>2]|0)+4>>2]|0);c[r>>2]=c[o>>2]&0-(c[(c[l>>2]|0)+4>>2]|0);if((
c[q>>2]|0)!=(c[r>>2]|0)){i=u;return}c[p>>2]=(c[(c[l>>2]|0)+60>>2]|0)+(b[m>
;>1]>>3);a[s>>0]=128>>(b[m>>1]&7);c[q>>2]=c[q>>2]>>
;c[c[l>>2]>>2];if((c[q>>2]|0)<0){i=u;return}if((c[q>>2]|0)>=(c[(c[l>>
;2]|0)+104>>2]|0)){i=u;return}c[t>>2]=(c[p>>2]|0)+(0-(_(c[q>>2]|0,c[(c[l>>2]|0
)+104+8>>2]|0)|0));if((c[(c[l>>2]|0)+104+8>>2]|0)>0){w=_((c[(c[l>>2]|0)+104>
x3e;2]|0)-1|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[t>>2]=(c[t>>2]|0)+w}w=c[t>>2]|0;a
[w>>0]=d[w>>0]|d[s>>0];i=u;return}function Xo(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;x=i;i=i+48|0;l=x+36|0;m=x+40|0;n=x+32|0;o=x+28|0;p=x+24|0;q=x+20|0;t=x+16|0
;u=x+12|0;w=x+8|0;r=x+4|0;v=x+42|0;s=x;c[l>>2]=e;b[m>>1]=f;c[n>>2]=g;c[o>>2]=h;c[p>
x3e;2]=j;c[q>>2]=k;c[t>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[
l>>2]|0)+4>>2]|0);c[u>>2]=c[o>>2]&0-(c[(c[l>>2]|0)+4>>2]|0);c[w
>>2]=c[t>>2];if((c[t>>2]|0)>(c[u>>2]|0)){c[s>>2]=c[(c[p>>2]|0)+
12>>2]&7;if((c[t>>2]|0)!=((c[u>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)|0)){i=x;return
}a:do switch(c[s>>2]|0){case 0:{c[w>>2]=c[u>>2];break}case 4:{c[w>>2]=(((c[n>>
2]|0)+(c[o>>2]|0)-1|0)/2|0)+(c[(c[l>>2]|0)+8>>2]|0)&0-(c[(c[l>>2]|0)+4>>2
]|0);break}case 5:case 1:{if((c[(c[p>>2]|0)+28>>2]|0)==(c[q>>2]|0)?(c[(c[p>>2]|0)+16>
;>2]|0)<=0:0){if(!(c[(c[p>>2]|0)+12>>2]&16)){i=x;return}if(((c[o>>2]|0)-(c[n>
x3e;2]|0)|0)<(c[(c[l>>2]|0)+8>>2]|0)){i=x;return}}if((c[(c[q>>2]|0)+28>>2]|0)==(c[p
>>2]|0)?(c[(c[p>>2]|0)+20>>2]|0)==(b[m>>1]|0):0){if(!(c[(c[p>>2]|0)+12>
x3e;2]&32)){i=x;return}if(((c[o>>2]|0)-(c[n>>2]|0)|0)<(c[(c[l>>2]|0)+8>>2]|0)){
i=x;return}}if((c[s>>2]|0)==1){c[w>>2]=c[u>>2];break a}else{c[w>>2]=(((c[n>>2]|
0)+(c[o>>2]|0)-1|0)/2|0)+(c[(c[l>>2]|0)+8>>2]|0)&0-(c[(c[l>>2]|0)+4>>2]|0
);break a}}default:{i=x;return}}while(0);c[t>>2]=(c[w>>2]|0)==(c[t>>2]|0)?c[u>>2]|0:c[t
x3e;>2]|0;c[t>>2]=c[t>>2]>>c[c[l>>2]>>2];c[r>>2]=(c[(c[l>
x3e;2]|0)+60>>2]|0)+(b[m>>1]>>3);a[v>>0]=128>>(b[m>>1]&7);f=_(c
[t>>2]|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[r>>2]=(c[r>>2]|0)+(0-f);if((c[(c[l>
;>2]|0)+104+8>>2]|0)>0){f=_((c[(c[l>>2]|0)+104>>2]|0)-1|0,c[(c[l>>2]|0)+104+8
x3e;>2]|0)|0;c[r>>2]=(c[r>>2]|0)+f}if(((c[t>>2]|0)>=0?(c[t>>2]|0)<(c[(c[l
>>2]|0)+104>>2]|0):0)?d[c[r>>2]>>0]&d[v>>0]|0:0){i=x;return}}c[r>>
;2]=(c[(c[l>>2]|0)+60>>2]|0)+(b[m>>1]>>3);a[v>>0]=128>>(b[m>>
;1]&7);c[t>>2]=c[w>>2]>>c[c[l>>2]>>2];if((c[t>>2]|0)<0){i=
x;return}if((c[t>>2]|0)>=(c[(c[l>>2]|0)+104>>2]|0)){i=x;return}f=_(c[t>>2]|0,c[(c[l
>>2]|0)+104+8>>2]|0)|0;c[r>>2]=(c[r>>2]|0)+(0-f);if((c[(c[l>>2]|0)+104+8>
x3e;2]|0)>0){f=_((c[(c[l>>2]|0)+104>>2]|0)-1|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[r>
;>2]=(c[r>>2]|0)+f}f=c[r>>2]|0;a[f>>0]=d[f>>0]|d[v>>0];i=x;return}function
Yo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return}function Zo(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]|0)+8>>2];Fb(c[e
x3e;>2]|0,c[d>>2]|0);c[d>>2]=0;i=b;return}function _o(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)+4>>2];Ua[c[(c[(c[(c[e>>2]|0)+20>>2]|
0)+56>>2]|0)+8>>2]&31](c[(c[e>>2]|0)+60>>2]|0,c[(c[d>>2]|0)+172>>
;2]|0,c[(c[d>>2]|0)+176>>2]|0);i=b;return 0}function $o(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;w=i;i=i+128|0;j=w+112|0;k=w+108|0;l=w+104|0;m=w+100|0;h=w+96|0;p=w+92|0;s=w+88|0;o=
w+72|0;v=w+64|0;q=w+60|0;u=w+56|0;n=w+52|0;r=w+48|0;t=w;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[h>>
;2]=g;if((c[(c[l>>2]|0)+72>>2]|0)==(c[(c[k>>2]|0)+24>>2]|0)){f=c[(c[k>>2]|0)+20
>>2]|0;if((c[m>>2]|0)!=2){if((f|0)==4028){c[j>>2]=19;v=c[j>>2]|0;i=w;return v|0}}else if
((f|0)==4088){c[j>>2]=19;v=c[j>>2]|0;i=w;return v|0}c[s>>2]=(c[l>>2]|0)+108;if(c[h>
x3e;2]|0)Nb(c[s>>2]|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0);_d(c[s>>
;2]|0,o);c[o>>2]=c[o>>2]&-64;c[o+4>>2]=c[o+4>>2]&-64;c[o+8>>2]=(c[o+
8>>2]|0)+63&-64;c[o+12>>2]=(c[o+12>>2]|0)+63&-64;c[v>>2]=(c[o+8>>2]|
0)-(c[o>>2]|0)>>6;c[q>>2]=(c[o+12>>2]|0)-(c[o+4>>2]|0)>>6;c[n>
x3e;2]=(c[l>>2]|0)+76;c[r>>2]=c[(c[k>>2]|0)+8>>2];if(c[(c[(c[l>>2]|0)+156>
;>2]|0)+4>>2]&1|0){Fb(c[r>>2]|0,c[(c[n>>2]|0)+12>>2]|0);c[(c[n>>2]|0
)+12>>2]=0;h=(c[(c[l>>2]|0)+156>>2]|0)+4|0;c[h>>2]=c[h>>2]&-2}f=c[v>
x3e;2]|0;if(c[m>>2]&2|0){c[u>>2]=(f+15|0)>>>4<<1;a[(c[n>>2]|0)+18>
;>0]=1}else{c[u>>2]=f+3&-4;a[(c[n>>2]|0)+18>>0]=2;b[(c[n>>2]|0)+16>>
1]=256}c[(c[n>>2]|0)+4>>2]=c[v>>2];c[c[n>>2]>>2]=c[q>>2];c[(c[n>
;>2]|0)+8>>2]=c[u>>2];v=hc(c[r>>2]|0,c[q>>2]|0,0,c[u>>2]|0,0,p)|0;c[(c[n
x3e;>2]|0)+12>>2]=v;if(!(c[p>>2]|0)){v=(c[(c[l>>2]|0)+156>>2]|0)+4|0;c[v>>
;2]=c[v>>2]|1;Nb(c[s>>2]|0,0-(c[o>>2]|0)|0,0-(c[o+4>>2]|0)|0);c[t>>2]=c[n>
;>2];c[t+4>>2]=c[s>>2];c[t+8>>2]=0;if((a[(c[n>>2]|0)+18>>0]|0)==2){v=t+8|
0;c[v>>2]=c[v>>2]|1}c[p>>2]=Ya[c[(c[k>>2]|0)+64>>2]&127](c[(c[k>>
;2]|0)+60>>2]|0,t)|0;Nb(c[s>>2]|0,c[o>>2]|0,c[o+4>>2]|0);if(!(c[p>>2]|0)){c[(c
[l>>2]|0)+72>>2]=1651078259;c[(c[l>>2]|0)+100>>2]=c[o>>2]>>6;c[(c[l
x3e;>2]|0)+104>>2]=c[o+12>>2]>>6}}}else c[p>>2]=6;c[j>>2]=c[p>>
2];v=c[j>>2]|0;i=w;return v|0}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,l=0;k=i;i=i+32|0;l=
k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[l>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>
;2]=0;if((c[(c[f>>2]|0)+72>>2]|0)!=(c[(c[l>>2]|0)+24>>2]|0)){c[j>>2]=6;l=c[j
x3e;>2]|0;i=k;return l|0}if(c[g>>2]|0)Kb((c[f>>2]|0)+108|0,c[g>>2]|0);if(!(c[h>>2]|
0)){l=c[j>>2]|0;i=k;return l|0}Nb((c[f>>2]|0)+108|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|
0)+4>>2]|0);l=c[j>>2]|0;i=k;return l|0}function bp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0
;h=g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[e>>2]=b;c[f>>2]=d;b=c[f>>2]|0;c[b>>2]=0;c[b+4
>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;if((c[(c[e>>2]|0)+72>>2]|0)!=(c[(c[h>>
;2]|0)+24>>2]|0)){i=g;return}_d((c[e>>2]|0)+108|0,c[f>>2]|0);i=g;return}function cp(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=Oa
[c[(c[(c[(c[h>>2]|0)+20>>2]|0)+56>>2]|0)+12>>2]&63](c[(c[h>>2]|0)+60>
;>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function dp(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[c[e>>2]>>
2]=0;c[g>>2]=bc(c[d>>2]|0,20,f)|0;if(c[f>>2]|0){g=c[f>>2]|0;i=h;return g|0}c[(c[g>
x3e;2]|0)+12>>2]=c[d>>2];c[c[e>>2]>>2]=c[g>>2];g=c[f>>2]|0;i=h;return
g|0}function ep(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;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>
;>2]=a;c[e>>2]=b;c[f>>2]=d;c[g>>2]=c[k>>2];if(!(c[k>>2]|0)){i=j;return}if
((c[e>>2]|0)!=0&(c[f>>2]|0)>=3476){c[h>>2]=c[e>>2];c[(c[g>>2]|0)+16
x3e;>2]=c[h>>2];c[c[g>>2]>>2]=(c[e>>2]|0)+1440;c[(c[g>>2]|0)+4>>
;2]=(c[e>>2]|0)+(c[f>>2]|0)-(c[c[g>>2]>>2]|0)&-16;c[(c[g>>2]|0)+8>
x3e;2]=((c[(c[g>>2]|0)+4>>2]|0)>>>0)/128|0;i=j;return}else{c[c[g>>2]>>2]=
0;c[(c[g>>2]|0)+4>>2]=0;c[(c[g>>2]|0)+16>>2]=0;i=j;return}}function fp(a,d){a=a|0;d=d|0;
var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[f>>2]=a;c[g>>2
]=d;c[h>>2]=c[(c[g>>2]|0)+4>>2];c[j>>2]=c[c[g>>2]>>2];if((c[f>
x3e;2]|0?c[c[f>>2]>>2]|0:0)?c[(c[f>>2]|0)+4>>2]|0:0){if(!(c[h>>2]|0)){c[e>
;>2]=20;k=c[e>>2]|0;i=l;return k|0}if(b[(c[h>>2]|0)+2>>1]|0?(b[c[h>>2]>>1
]|0)>0:0){if(c[(c[h>>2]|0)+12>>2]|0?c[(c[h>>2]|0)+4>>2]|0:0){if((b[(c[h>>
2]|0)+2>>1]|0)!=((b[(c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>>1]|0)-1<<1
)>>1]|0)+1|0)){c[e>>2]=20;k=c[e>>2]|0;i=l;return k|0}c[k>>2]=c[(c[f>>2]|0)+16
x3e;>2];do if(!(c[(c[g>>2]|0)+8>>2]&2)){if(!(c[j>>2]|0)){c[e>>2]=6;k=c[e>
x3e;2]|0;i=l;return k|0}if(c[(c[j>>2]|0)+4>>2]|0?c[c[j>>2]>>2]|0:0){if(c[(c[j>>
;2]|0)+12>>2]|0)break;c[e>>2]=6;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=0;k=c[e>>2]|
0;i=l;return k|0}while(0);if(!(c[(c[g>>2]|0)+8>>2]&1)){c[e>>2]=19;k=c[e>>2]|0;i=l;return
k|0}do if(c[(c[g>>2]|0)+8>>2]&2|0){d=(c[k>>2]|0)+1024|0;if(c[(c[g>>2]|0)+8>
x3e;2]&4|0){a=(c[g>>2]|0)+32|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8
x3e;>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];break}else{c[d>>2]=-32768;c[(c[k>>
;2]|0)+1024+4>>2]=-32768;c[(c[k>>2]|0)+1024+8>>2]=32767;c[(c[k>>2]|0)+1024+12>>
;2]=32767;break}}else{c[(c[k>>2]|0)+1024>>2]=0;c[(c[k>>2]|0)+1024+4>>2]=0;c[(c[k>
x3e;2]|0)+1024+8>>2]=c[(c[j>>2]|0)+4>>2];c[(c[k>>2]|0)+1024+12>>2]=c[c[j>
x3e;2]>>2]}while(0);gp(c[k>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|
0);a=(c[k>>2]|0)+980|0;h=c[h>>2]|0;c[a>>2]=c[h>>2];c[a+4>>2]=c[h+4>>
2];c[a+8>>2]=c[h+8>>2];c[a+12>>2]=c[h+12>>2];c[a+16>>2]=c[h+16>>2];c
[(c[k>>2]|0)+52>>2]=0;c[(c[k>>2]|0)+40>>2]=1;c[(c[k>>2]|0)+1248>>2]=
c[(c[f>>2]|0)+8>>2];c[(c[k>>2]|0)+1232>>2]=0;if(c[(c[g>>2]|0)+8>>2]
x26;2|0){c[(c[k>>2]|0)+1236>>2]=c[(c[g>>2]|0)+12>>2];c[(c[k>>2]|0)+1240>
x3e;2]=c[(c[g>>2]|0)+28>>2]}else{h=(c[k>>2]|0)+1e3|0;j=c[j>>2]|0;c[h>>2]=c[j
x3e;>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[h+12>>2]=c[j+12>
x3e;2];c[h+16>>2]=c[j+16>>2];c[h+20>>2]=c[j+20>>2];c[(c[k>>2]|0)+1236>>
;2]=13;c[(c[k>>2]|0)+1240>>2]=c[k>>2]}c[e>>2]=ip(c[k>>2]|0)|0;k=c[e>>
;2]|0;i=l;return k|0}c[e>>2]=20;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=0;k=c[e>>2]|0;i=l;return
k|0}c[e>>2]=6;k=c[e>>2]|0;i=l;return k|0}function gp(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[(c[f>>2]|0)+1412>>2]=c[
g>>2];c[(c[f>>2]|0)+1416>>2]=c[h>>2];c[(c[f>>2]|0)+1420>>2]=c[g>
;>2];c[(c[f>>2]|0)+44>>2]=0;c[(c[f>>2]|0)+48>>2]=0;c[(c[f>>2]|0)+52>
x3e;2]=0;c[(c[f>>2]|0)+32>>2]=0;c[(c[f>>2]|0)+36>>2]=0;c[(c[f>>2]|0)+40>
x3e;2]=1;i=e;return}function hp(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;r=i;i=i+32|0;s=r+24
|0;l=r+20|0;m=r+16|0;t=r+12|0;o=r+8|0;k=r+4|0;n=r+28|0;p=r;c[s>>2]=f;c[l>>2]=g;c[m>>2]=h;c[t>
x3e;2]=j;c[k>>2]=(c[t>>2]|0)+1e3;c[o>>2]=(c[(c[k>>2]|0)+12>>2]|0)+(0-(_(c[s>
;>2]|0,c[(c[k>>2]|0)+8>>2]|0)|0));if((c[(c[k>>2]|0)+8>>2]|0)>=0){t=_((c[c[k>
;>2]>>2]|0)-1|0,c[(c[k>>2]|0)+8>>2]|0)|0;c[o>>2]=(c[o>>2]|0)+t}while(1){if
((c[l>>2]|0)<=0)break;a[n>>0]=a[(c[m>>2]|0)+4>>0]|0;a:do if(a[n>>0]|0){g=(
c[o>>2]|0)+(b[c[m>>2]>>1]|0)|0;if((e[(c[m>>2]|0)+2>>1]|0)>=8){Ns(g|0,d[n
x3e;>0]&255|0,e[(c[m>>2]|0)+2>>1]|0)|0;break}c[p>>2]=g;switch(e[(c[m>>2]|0)+2
x3e;>1]|0){case 7:{t=a[n>>0]|0;q=c[p>>2]|0;c[p>>2]=q+1;a[q>>0]=t;q=9;break}case 6:{
q=9;break}case 5:{q=10;break}case 4:{q=11;break}case 3:{q=12;break}case 2:{q=13;break}case 1:break;default:break a}if((q|0)==9){
s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s;q=10}if((q|0)==10){s=a[n>>0]|0;t
=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s;q=11}if((q|0)==11){s=a[n>>0]|0;t=c[p>>2]|0;c[
p>>2]=t+1;a[t>>0]=s;q=12}if((q|0)==12){s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t
>>0]=s;q=13}if((q|0)==13){q=0;s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s}a[
c[p>>2]>>0]=a[n>>0]|0}while(0);c[l>>2]=(c[l>>2]|0)+-1;c[m>>2]=(c[m
x3e;>2]|0)+6}i=r;return}function ip(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;w=i;i=i+400|0;u=w+388|0;v=w+384|0;d=w+64|0;b=w+60|0;q=w+56|0;r=w+52|0;p=w+48|0;m=w+44|0;n=w+40|0;k=w+36|0;e=w+32|0;s=w+28|
0;o=w+24|0;l=w+20|0;j=w+16|0;t=w+12|0;h=w+8|0;f=w+4|0;g=w;c[v>>2]=a;jp(c[v>>2]|0);c[k>>2]=(c[v>
;>2]|0)+1024;if((((c[(c[v>>2]|0)+12>>2]|0)>(c[c[k>>2]>>2]|0)?(c[(c[v>>
;2]|0)+8>>2]|0)<(c[(c[k>>2]|0)+8>>2]|0):0)?(c[(c[v>>2]|0)+20>>2]|0)>(
c[(c[k>>2]|0)+4>>2]|0):0)?(c[(c[v>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0)+12>
;>2]|0):0){if((c[(c[v>>2]|0)+8>>2]|0)<(c[c[k>>2]>>2]|0))c[(c[v>>2]|0
)+8>>2]=c[c[k>>2]>>2];if((c[(c[v>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0
)+4>>2]|0))c[(c[v>>2]|0)+16>>2]=c[(c[k>>2]|0)+4>>2];if((c[(c[v>>2]|0
)+12>>2]|0)>(c[(c[k>>2]|0)+8>>2]|0))c[(c[v>>2]|0)+12>>2]=c[(c[k>>
;2]|0)+8>>2];if((c[(c[v>>2]|0)+20>>2]|0)>(c[(c[k>>2]|0)+12>>2]|0))c[(c[v
x3e;>2]|0)+20>>2]=c[(c[k>>2]|0)+12>>2];c[(c[v>>2]|0)+24>>2]=(c[(c[v>
x3e;2]|0)+12>>2]|0)-(c[(c[v>>2]|0)+8>>2]|0);c[(c[v>>2]|0)+28>>2]=(c[(c[v>
x3e;2]|0)+20>>2]|0)-(c[(c[v>>2]|0)+16>>2]|0);c[r>>2]=((c[(c[v>>2]|0)+20>
x3e;2]|0)-(c[(c[v>>2]|0)+16>>2]|0)|0)/(c[(c[v>>2]|0)+1248>>2]|0)|0;if(!(c[r>>2
]|0))c[r>>2]=1;if((c[r>>2]|0)>=39)c[r>>2]=39;c[(c[v>>2]|0)+1252>>2]=0;c[p
>>2]=c[(c[v>>2]|0)+16>>2];c[n>>2]=c[(c[v>>2]|0)+20>>2];c[q>>
;2]=0;a:while(1){if((c[q>>2]|0)>=(c[r>>2]|0)){b=42;break}c[m>>2]=(c[p>>2]|0)+(c[(c[
v>>2]|0)+1248>>2]|0);if(!((c[q>>2]|0)!=((c[r>>2]|0)-1|0)?(c[m>>2]|0)<=(c[
n>>2]|0):0))c[m>>2]=c[n>>2];c[d>>2]=c[p>>2];c[d+4>>2]=c[m>>
;2];c[b>>2]=d;b:while(1){if((c[b>>2]|0)>>>0<d>>>0)break;c[(c[v>>
;2]|0)+1420>>2]=c[(c[v>>2]|0)+1412>>2];c[(c[v>>2]|0)+1424>>2]=(c[(c[b>>
;2]|0)+4>>2]|0)-(c[c[b>>2]>>2]|0);c[h>>2]=c[(c[v>>2]|0)+1424>>2]<
;<2;c[g>>2]=((c[h>>2]|0)>>>0)%16|0;if((c[g>>2]|0)>0)c[h>>2]=(c[
h>>2]|0)+(16-(c[g>>2]|0));c[f>>2]=c[(c[v>>2]|0)+1416>>2];c[f>>2]=(c[
f>>2]|0)-(((c[f>>2]|0)>>>0)%16|0);c[j>>2]=(c[(c[v>>2]|0)+1412>>
2]|0)+(c[f>>2]|0);c[(c[v>>2]|0)+44>>2]=(c[(c[v>>2]|0)+1412>>2]|0)+(c[h>
x3e;2]|0);do if((c[(c[v>>2]|0)+44>>2]|0)>>>0<(c[j>>2]|0)>>>0?(c
[(c[v>>2]|0)+48>>2]=((c[j>>2]|0)-(c[(c[v>>2]|0)+44>>2]|0)|0)/16|0,(c[(c[v>
;>2]|0)+48>>2]|0)>=2):0){c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[(c[v>>2]|0
)+1424>>2]|0))break;c[(c[(c[v>>2]|0)+1420>>2]|0)+(c[t>>2]<<2)>>2]=0;
c[t>>2]=(c[t>>2]|0)+1}c[(c[v>>2]|0)+52>>2]=0;c[(c[v>>2]|0)+40>>2]=1;
c[(c[v>>2]|0)+16>>2]=c[c[b>>2]>>2];c[(c[v>>2]|0)+20>>2]=c[(c[b>
x3e;2]|0)+4>>2];c[(c[v>>2]|0)+28>>2]=(c[(c[b>>2]|0)+4>>2]|0)-(c[c[b>>
;2]>>2]|0);c[l>>2]=kp(c[v>>2]|0)|0;if(c[l>>2]|0)if((c[l>>2]|0)!=64){b=35;break
a}else break;else{zp(c[v>>2]|0,(c[v>>2]|0)+1e3|0);c[b>>2]=(c[b>>2]|0)+-8;continue b}}while
(0);c[e>>2]=c[c[b>>2]>>2];c[s>>2]=c[(c[b>>2]|0)+4>>2];c[o>>
;2]=(c[e>>2]|0)+((c[s>>2]|0)-(c[e>>2]|0)>>1);if((c[o>>2]|0)==(c[e>>2
]|0)){b=37;break a}if(((c[e>>2]|0)-(c[s>>2]|0)|0)>=(c[(c[v>>2]|0)+1248>>2]|0)){a=(c
[v>>2]|0)+1252|0;c[a>>2]=(c[a>>2]|0)+1}c[(c[b>>2]|0)+8>>2]=c[e>>2];c
[(c[b>>2]|0)+8+4>>2]=c[o>>2];c[c[b>>2]>>2]=c[o>>2];c[(c[b>>
;2]|0)+4>>2]=c[s>>2];c[b>>2]=(c[b>>2]|0)+8}c[q>>2]=(c[q>>2]|0)+1;c[p
>>2]=c[m>>2]}if((b|0)==35){c[u>>2]=1;v=c[u>>2]|0;i=w;return v|0}else if((b|0)==37){c[u
x3e;>2]=1;v=c[u>>2]|0;i=w;return v|0}else if((b|0)==42){if((c[(c[v>>2]|0)+1252>>2]|0)>8?(
c[(c[v>>2]|0)+1248>>2]|0)>16:0)c[(c[v>>2]|0)+1248>>2]=(c[(c[v>>2]|0)+1248
>>2]|0)/2|0;c[u>>2]=0;v=c[u>>2]|0;i=w;return v|0}}c[u>>2]=0;v=c[u>>2]|0;i=w;return
v|0}function jp(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;d=j+20|0;k=j+16|0;f=j+12|0;e=j+8|0;g=j+4|0;h=j;c[d>
x3e;2]=a;c[k>>2]=(c[d>>2]|0)+980;c[f>>2]=c[(c[k>>2]|0)+4>>2];c[e>>2]=(
c[f>>2]|0)+(b[(c[k>>2]|0)+2>>1]<<3);if((b[(c[k>>2]|0)+2>>1]|0)<=
0){c[(c[d>>2]|0)+12>>2]=0;c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+20>>2]=
0;c[(c[d>>2]|0)+16>>2]=0;i=j;return}k=c[c[f>>2]>>2]|0;c[(c[d>>2]|0)+12>
x3e;2]=k;c[(c[d>>2]|0)+8>>2]=k;k=c[(c[f>>2]|0)+4>>2]|0;c[(c[d>>2]|0)+20>
x3e;2]=k;c[(c[d>>2]|0)+16>>2]=k;c[f>>2]=(c[f>>2]|0)+8;while(1){if((c[f>>2]|0)
x3e;>>0>=(c[e>>2]|0)>>>0)break;c[g>>2]=c[c[f>>2]>>2];c[h
x3e;>2]=c[(c[f>>2]|0)+4>>2];if((c[g>>2]|0)<(c[(c[d>>2]|0)+8>>2]|0))c
[(c[d>>2]|0)+8>>2]=c[g>>2];if((c[g>>2]|0)>(c[(c[d>>2]|0)+12>>2]|
0))c[(c[d>>2]|0)+12>>2]=c[g>>2];if((c[h>>2]|0)<(c[(c[d>>2]|0)+16>>
;2]|0))c[(c[d>>2]|0)+16>>2]=c[h>>2];if((c[h>>2]|0)>(c[(c[d>>2]|0)+20>
;>2]|0))c[(c[d>>2]|0)+20>>2]=c[h>>2];c[f>>2]=(c[f>>2]|0)+8}c[(c[d>
x3e;2]|0)+8>>2]=c[(c[d>>2]|0)+8>>2]>>6;c[(c[d>>2]|0)+16>>2]=c[(c[d
x3e;>2]|0)+16>>2]>>6;c[(c[d>>2]|0)+12>>2]=(c[(c[d>>2]|0)+12>>2]|
0)+63>>6;c[(c[d>>2]|0)+20>>2]=(c[(c[d>>2]|0)+20>>2]|0)+63>>6;i=j;return
}function kp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;h=4;f=Fs(40)|0;c[f>>2]=0;g=j;c[g>>2]=0;h=
Qs(a+1256|0,1,f|0,h|0)|0;f=C;n=0;b=n;n=0;if((b|0)!=0&(o|0)!=0){d=Rs(c[b>>2]|0,h|0,f|0)|0;if(!d)ta(b|0,o|0);C=o}else
d=-1;if((d|0)==1)b=C;else b=0;while(1){if(b|0){b=7;break}n=0;b=ea(46,a+980|0,4172,a|0)|0;d=n;n=0;if((d|0)!=0&(o|0)!=0){e=Rs
(c[d>>2]|0,h|0,f|0)|0;if(!e)ta(d|0,o|0);C=o}else e=-1;if((e|0)==1){b=C;continue}c[g>>2]=b;n=0;la(43,a|0);b=n
;n=0;if((b|0)!=0&(o|0)!=0){d=Rs(c[b>>2]|0,h|0,f|0)|0;if(!d)ta(b|0,o|0);C=o}else d=-1;if((d|0)==1)b=C;else{b=6;break
}}if((b|0)==6){g=c[g>>2]|0;Gs(h|0);i=j;return g|0}else if((b|0)==7){c[g>>2]=64;g=c[g>>2]|0;Gs(h|0);
i=j;return g|0}return 0}function lp(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;e=d+8|0;g=d+4|0;f=d;c[h>
x3e;2]=a;c[e>>2]=b;mp(c[e>>2]|0);c[g>>2]=c[c[h>>2]>>2]<<2;c[f>
x3e;2]=c[(c[h>>2]|0)+4>>2]<<2;op(c[e>>2]|0,c[g>>2]>>8,c[f>>
;2]>>8);c[(c[e>>2]|0)+64>>2]=c[g>>2];c[(c[e>>2]|0)+68>>2]=c[f>
x3e;2];i=d;return 0}function mp(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(c[(c[b>>2]|0)+
40>>2]|0){i=e;return}if(!(c[(c[b>>2]|0)+32>>2]|c[(c[b>>2]|0)+36>>2])){i=e;return
}c[d>>2]=np(c[b>>2]|0)|0;a=(c[d>>2]|0)+8|0;c[a>>2]=(c[a>>2]|0)+(c[(c[b>
x3e;2]|0)+32>>2]|0);a=(c[d>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+(c[(c[b>>2]|0)+36>
;>2]|0);i=e;return}function np(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+12|0;f=h+8|0;e=h+4|0;g=h;c[d>>
;2]=a;c[g>>2]=c[c[d>>2]>>2];if((c[g>>2]|0)>(c[(c[d>>2]|0)+24>>2
]|0))c[g>>2]=c[(c[d>>2]|0)+24>>2];c[f>>2]=(c[(c[d>>2]|0)+1420>>2]|0)+(
c[(c[d>>2]|0)+4>>2]<<2);while(1){c[e>>2]=c[c[f>>2]>>2];if(!(c[e>
;>2]|0))break;if((c[c[e>>2]>>2]|0)>(c[g>>2]|0))break;if((c[c[e>>2]>>
2]|0)==(c[g>>2]|0)){b=11;break}c[f>>2]=(c[e>>2]|0)+12}if((b|0)==11){g=c[e>>2]|0;i=h;return
g|0}a=c[d>>2]|0;if((c[(c[d>>2]|0)+52>>2]|0)>=(c[(c[d>>2]|0)+48>>2]|0))ta
(a+1256|0,1);b=c[a+44>>2]|0;a=(c[d>>2]|0)+52|0;d=c[a>>2]|0;c[a>>2]=d+1;c[e>>2]=
b+(d<<4);c[c[e>>2]>>2]=c[g>>2];c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>
;2]|0)+4>>2]=0;c[(c[e>>2]|0)+12>>2]=c[c[f>>2]>>2];c[c[f>>2]>>
;2]=c[e>>2];g=c[e>>2]|0;i=h;return g|0}function op(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0
;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if((c[f>>2]|0)>(c[(c[e>>
;2]|0)+12>>2]|0))c[f>>2]=c[(c[e>>2]|0)+12>>2];if((c[f>>2]|0)<(c[(c[e>
;>2]|0)+8>>2]|0))c[f>>2]=(c[(c[e>>2]|0)+8>>2]|0)-1;c[(c[e>>2]|0)+32>
x3e;2]=0;c[(c[e>>2]|0)+36>>2]=0;c[c[e>>2]>>2]=(c[f>>2]|0)-(c[(c[e>>2
]|0)+8>>2]|0);c[(c[e>>2]|0)+4>>2]=(c[g>>2]|0)-(c[(c[e>>2]|0)+16>>2]|
0);c[(c[e>>2]|0)+72>>2]=c[g>>2]<<8;c[(c[e>>2]|0)+40>>2]=0;pp(c[e>
;>2]|0,c[f>>2]|0,c[g>>2]|0);i=h;return}function pp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i
+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[g>>2]=(c[g>>2]|0)-(c
[(c[e>>2]|0)+16>>2]|0);if((c[f>>2]|0)>(c[(c[e>>2]|0)+12>>2]|0))c[f>
x3e;2]=c[(c[e>>2]|0)+12>>2];a=(c[f>>2]|0)-(c[(c[e>>2]|0)+8>>2]|0)|0;c[f>
x3e;2]=a;c[f>>2]=(c[f>>2]|0)<0?-1:a;if(!((c[f>>2]|0)==(c[c[e>>2]>>2]|0)?(
c[g>>2]|0)==(c[(c[e>>2]|0)+4>>2]|0):0)){if(!(c[(c[e>>2]|0)+40>>2]|0))mp(c[e>
;>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[(c[e>>2]|0)+36>>2]=0}c[c[e>>2]>>
;2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=c[g>>2];if((c[g>>2]|0)>>>0>
;=(c[(c[e>>2]|0)+28>>2]|0)>>>0){d=1;d=d&1;a=c[e>>2]|0;a=a+40|0;c[a>>
2]=d;i=h;return}d=(c[f>>2]|0)>=(c[(c[e>>2]|0)+24>>2]|0);d=d&1;a=c[e>>2]|0;a=a+
40|0;c[a>>2]=d;i=h;return}function qp(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;rp(c[f>>2]|0,c[c[e>>2]>>2]<<2,c[(c[e>>2]|0)+4>>2]
x3c;<2);i=d;return 0}function rp(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,y=0,z=0,A=0,B=0,C=0;C=i;i=i+96|0;e=C+88|0;f=C+84|0;g=C+80|0;n=C+76|0;o=C+72|0;q=C+68|0;r=C+64|0;w=C+60|0;k=C+56|0
;l=C+52|0;A=C+48|0;B=C+44|0;x=C+40|0;p=C+36|0;j=C+32|0;y=C+28|0;t=C+24|0;s=C+20|0;v=C+16|0;u=C+12|0;m=C+8|0;z=C+4|0;h=C;c[e>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[n>>2]=c[(c[e>>2]|0)+72>>2]>>8;c[o
x3e;>2]=c[g>>2]>>8;c[q>>2]=(c[(c[e>>2]|0)+68>>2]|0)-(c[(c[e>>2]|
0)+72>>2]|0);c[r>>2]=(c[g>>2]|0)-(c[o>>2]<<8);c[k>>2]=(c[f>>
;2]|0)-(c[(c[e>>2]|0)+64>>2]|0);c[l>>2]=(c[g>>2]|0)-(c[(c[e>>2]|0)+68>>
;2]|0);c[v>>2]=c[n>>2];c[u>>2]=c[o>>2];if((c[n>>2]|0)>(c[o>>2]|
0)){c[v>>2]=c[o>>2];c[u>>2]=c[n>>2]}if((c[v>>2]|0)>=(c[(c[e>>2]|
0)+20>>2]|0)){A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>
;>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=
A;i=C;return}if((c[u>>2]|0)<(c[(c[e>>2]|0)+16>>2]|0)){A=c[f>>2]|0;B=c[e>>
2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0
;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C;return}if((c[n>>2]|0)==(c[o>>2]|0)){
sp(c[e>>2]|0,c[n>>2]|0,c[(c[e>>2]|0)+64>>2]|0,c[q>>2]|0,c[f>>2]|0,c[
r>>2]|0);A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>
;2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C
;return}c[s>>2]=1;if(!(c[k>>2]|0)){c[m>>2]=c[(c[e>>2]|0)+64>>2]>>8;c
[z>>2]=(c[(c[e>>2]|0)+64>>2]|0)-(c[m>>2]<<8)<<1;c[p>>2]=256
;if((c[l>>2]|0)<0){c[p>>2]=0;c[s>>2]=-1}c[j>>2]=(c[p>>2]|0)-(c[q>>
;2]|0);A=_(c[z>>2]|0,c[j>>2]|0)|0;B=(c[e>>2]|0)+32|0;c[B>>2]=(c[B>>2]|0)+A;B=(
c[e>>2]|0)+36|0;c[B>>2]=(c[B>>2]|0)+(c[j>>2]|0);c[n>>2]=(c[n>>2]|0)+(
c[s>>2]|0);pp(c[e>>2]|0,c[m>>2]|0,c[n>>2]|0);c[j>>2]=(c[p>>2]|0)+(c[
p>>2]|0)-256;c[h>>2]=_(c[z>>2]|0,c[j>>2]|0)|0;while(1){if((c[n>>2]|0)==(c[o>
;>2]|0))break;B=(c[e>>2]|0)+32|0;c[B>>2]=(c[B>>2]|0)+(c[h>>2]|0);B=(c[e>>
2]|0)+36|0;c[B>>2]=(c[B>>2]|0)+(c[j>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[s>>
;2]|0);pp(c[e>>2]|0,c[m>>2]|0,c[n>>2]|0)}c[j>>2]=(c[r>>2]|0)-256+(c[p>>
;2]|0);B=_(c[z>>2]|0,c[j>>2]|0)|0;A=(c[e>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+B;A=(
c[e>>2]|0)+36|0;c[A>>2]=(c[A>>2]|0)+(c[j>>2]|0);A=c[f>>2]|0;B=c[e>>2
]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;
A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C;return}c[x>>2]=_(256-(c[q>>2]|0)|0,c
[k>>2]|0)|0;c[p>>2]=256;c[s>>2]=1;if((c[l>>2]|0)<0){c[x>>2]=_(c[q>
x3e;2]|0,c[k>>2]|0)|0;c[p>>2]=0;c[s>>2]=-1;c[l>>2]=0-(c[l>>2]|0)}c[j>>
;2]=(c[x>>2]|0)/(c[l>>2]|0)|0;c[w>>2]=(c[x>>2]|0)%(c[l>>2]|0)|0;if((c[w>
x3e;2]|0)<0){c[j>>2]=(c[j>>2]|0)+-1;c[w>>2]=(c[w>>2]|0)+(c[l>>2]|0)}c[A
x3e;>2]=(c[(c[e>>2]|0)+64>>2]|0)+(c[j>>2]|0);sp(c[e>>2]|0,c[n>>2]|0,c[(c[
e>>2]|0)+64>>2]|0,c[q>>2]|0,c[A>>2]|0,c[p>>2]|0);c[n>>2]=(c[n>
x3e;2]|0)+(c[s>>2]|0);pp(c[e>>2]|0,c[A>>2]>>8,c[n>>2]|0);a:do if((c[n>>
;2]|0)!=(c[o>>2]|0)){c[x>>2]=c[k>>2]<<8;c[t>>2]=(c[x>>2]|0)/(c[l>
;>2]|0)|0;c[y>>2]=(c[x>>2]|0)%(c[l>>2]|0)|0;if((c[y>>2]|0)<0){c[t>>2
]=(c[t>>2]|0)+-1;c[y>>2]=(c[y>>2]|0)+(c[l>>2]|0)}c[w>>2]=(c[w>>2]|0)-(
c[l>>2]|0);while(1){if((c[n>>2]|0)==(c[o>>2]|0))break a;c[j>>2]=c[t>>2];c[w>
;>2]=(c[w>>2]|0)+(c[y>>2]|0);if((c[w>>2]|0)>=0){c[w>>2]=(c[w>>2]|0)-(
c[l>>2]|0);c[j>>2]=(c[j>>2]|0)+1}c[B>>2]=(c[A>>2]|0)+(c[j>>2]|0);sp(
c[e>>2]|0,c[n>>2]|0,c[A>>2]|0,256-(c[p>>2]|0)|0,c[B>>2]|0,c[p>>2]|0);
c[A>>2]=c[B>>2];c[n>>2]=(c[n>>2]|0)+(c[s>>2]|0);pp(c[e>>2]|0,c[A>
;>2]>>8,c[n>>2]|0)}}while(0);sp(c[e>>2]|0,c[n>>2]|0,c[A>>2]|0,256-(c[p>
;>2]|0)|0,c[f>>2]|0,c[r>>2]|0);A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A
;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>
;2]|0;B=B+72|0;c[B>>2]=A;i=C;return}function sp(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;y=i;i=i+80|0;h=y+68|0;j=y+64|0;A=y+60|0;k=y+56|0;z=y+52|0;l=y+48|0;o=
y+44|0;p=y+40|0;r=y+36|0;s=y+32|0;m=y+28|0;v=y+24|0;u=y+20|0;x=y+16|0;w=y+12|0;q=y+8|0;n=y+4|0;t=y;c[h>>2]=a;c[j>
x3e;2]=b;c[A>>2]=d;c[k>>2]=e;c[z>>2]=f;c[l>>2]=g;c[n>>2]=(c[z>>2]|0)-(
c[A>>2]|0);c[o>>2]=c[A>>2]>>8;c[p>>2]=c[z>>2]>>8;c[r>
x3e;2]=(c[A>>2]|0)-(c[o>>2]<<8);c[s>>2]=(c[z>>2]|0)-(c[p>>2]<
x3c;8);if((c[k>>2]|0)==(c[l>>2]|0)){pp(c[h>>2]|0,c[p>>2]|0,c[j>>2]|0);i=y;return
}if((c[o>>2]|0)==(c[p>>2]|0)){c[m>>2]=(c[l>>2]|0)-(c[k>>2]|0);z=_((c[r>
x3e;2]|0)+(c[s>>2]|0)|0,c[m>>2]|0)|0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;
A=(c[h>>2]|0)+36|0;c[A>>2]=(c[A>>2]|0)+(c[m>>2]|0);i=y;return}c[w>>2]=_(256-(c
[r>>2]|0)|0,(c[l>>2]|0)-(c[k>>2]|0)|0)|0;c[q>>2]=256;c[t>>2]=1;if((c[n>
x3e;2]|0)<0){c[w>>2]=_(c[r>>2]|0,(c[l>>2]|0)-(c[k>>2]|0)|0)|0;c[q>>2]=0;c
[t>>2]=-1;c[n>>2]=0-(c[n>>2]|0)}c[m>>2]=(c[w>>2]|0)/(c[n>>2]|0)|0;c[
v>>2]=(c[w>>2]|0)%(c[n>>2]|0)|0;if((c[v>>2]|0)<0){c[m>>2]=(c[m>>
;2]|0)+-1;c[v>>2]=(c[v>>2]|0)+(c[n>>2]|0)}z=_((c[r>>2]|0)+(c[q>>2]|0)|0,c[m>
;>2]|0)|0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;A=(c[h>>2]|0)+36|0;c[A>>
;2]=(c[A>>2]|0)+(c[m>>2]|0);c[o>>2]=(c[o>>2]|0)+(c[t>>2]|0);pp(c[h>>
2]|0,c[o>>2]|0,c[j>>2]|0);c[k>>2]=(c[k>>2]|0)+(c[m>>2]|0);a:do if((c[o>
x3e;2]|0)!=(c[p>>2]|0)){c[w>>2]=(c[l>>2]|0)-(c[k>>2]|0)+(c[m>>2]|0)<<
;8;c[u>>2]=(c[w>>2]|0)/(c[n>>2]|0)|0;c[x>>2]=(c[w>>2]|0)%(c[n>>2]|0)|
0;if((c[x>>2]|0)<0){c[u>>2]=(c[u>>2]|0)+-1;c[x>>2]=(c[x>>2]|0)+(c[n>
x3e;2]|0)}c[v>>2]=(c[v>>2]|0)-(c[n>>2]|0);while(1){if((c[o>>2]|0)==(c[p>>2]|0))
break a;c[m>>2]=c[u>>2];c[v>>2]=(c[v>>2]|0)+(c[x>>2]|0);if((c[v>>2]|
0)>=0){c[v>>2]=(c[v>>2]|0)-(c[n>>2]|0);c[m>>2]=(c[m>>2]|0)+1}A=(c[h>
x3e;2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+(c[m>>2]<<8);A=(c[h>>2]|0)+36|0;c[A>
x3e;2]=(c[A>>2]|0)+(c[m>>2]|0);c[k>>2]=(c[k>>2]|0)+(c[m>>2]|0);c[o>>
2]=(c[o>>2]|0)+(c[t>>2]|0);pp(c[h>>2]|0,c[o>>2]|0,c[j>>2]|0)}}while(0);c[m>
;>2]=(c[l>>2]|0)-(c[k>>2]|0);z=_((c[s>>2]|0)+256-(c[q>>2]|0)|0,c[m>>2]|0)|
0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;A=(c[h>>2]|0)+36|0;c[A>>2]=(c[A>
;>2]|0)+(c[m>>2]|0);i=y;return}function tp(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;up(c[h>>2]|0,c[g>>2]|0,c[f>>2]|
0);i=e;return 0}function up(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;p=i;i=i+48|0;e=p+44
|0;q=p+40|0;r=p+36|0;g=p+32|0;h=p+28|0;n=p+24|0;j=p+20|0;k=p+16|0;f=p+12|0;m=p+8|0;l=p+4|0;o=p;c[e>>2]=a;c[q>>
;2]=b;c[r>>2]=d;c[f>>2]=(c[e>>2]|0)+76;c[c[f>>2]>>2]=c[c[r>>2]>
x3e;2]<<2;c[(c[f>>2]|0)+4>>2]=c[(c[r>>2]|0)+4>>2]<<2;c[(c[f>>
;2]|0)+8>>2]=c[c[q>>2]>>2]<<2;c[(c[f>>2]|0)+8+4>>2]=c[(c[q>>
;2]|0)+4>>2]<<2;c[(c[f>>2]|0)+16>>2]=c[(c[e>>2]|0)+64>>2];c[(c[f>
;>2]|0)+16+4>>2]=c[(c[e>>2]|0)+68>>2];a=(c[(c[f>>2]|0)+16>>2]|0)+(c[c[f
x3e;>2]>>2]|0)-(c[(c[f>>2]|0)+8>>2]<<1)|0;c[g>>2]=((c[(c[f>>2]|
0)+16>>2]|0)+(c[c[f>>2]>>2]|0)-(c[(c[f>>2]|0)+8>>2]<<1)|0)<0?0-
a|0:a;a=(c[(c[f>>2]|0)+16+4>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0)-(c[(c[f>>2]|0)+8+4
x3e;>2]<<1)|0;c[h>>2]=((c[(c[f>>2]|0)+16+4>>2]|0)+(c[(c[f>>2]|0)+4>
x3e;2]|0)-(c[(c[f>>2]|0)+8+4>>2]<<1)|0)<0?0-a|0:a;if((c[g>>2]|0)<(c[h>>
;2]|0))c[g>>2]=c[h>>2];if((c[g>>2]|0)<=64){rp(c[e>>2]|0,c[c[f>>2]>
x3e;2]|0,c[(c[f>>2]|0)+4>>2]|0);i=p;return}c[j>>2]=0;while(1){if((c[g>>2]|0)<=64)break
;c[g>>2]=c[g>>2]>>2;c[j>>2]=(c[j>>2]|0)+1}c[k>>2]=(c[e>>2]|
0)+852;c[c[k>>2]>>2]=c[j>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)<0)break;c[
j>>2]=c[(c[k>>2]|0)+(c[n>>2]<<2)>>2];if((c[j>>2]|0)>1){r=c[(c[f
>>2]|0)+4>>2]|0;c[l>>2]=r;c[m>>2]=r;c[o>>2]=c[(c[f>>2]|0)+8+4>
x3e;2];if((c[o>>2]|0)<(c[m>>2]|0))c[m>>2]=c[o>>2];if((c[o>>2]|0)>(c[
l>>2]|0))c[l>>2]=c[o>>2];c[o>>2]=c[(c[f>>2]|0)+16+4>>2];if((c[o>
;>2]|0)<(c[m>>2]|0))c[m>>2]=c[o>>2];if((c[o>>2]|0)>(c[l>>2]|0))
c[l>>2]=c[o>>2];if((c[m>>2]>>8|0)<(c[(c[e>>2]|0)+20>>2]|0)?(c[l
>>2]>>8|0)>=(c[(c[e>>2]|0)+16>>2]|0):0){vp(c[f>>2]|0);c[f>>2]=(
c[f>>2]|0)+16;c[n>>2]=(c[n>>2]|0)+1;r=(c[j>>2]|0)-1|0;c[(c[k>>2]|0)+((c[n>
;>2]|0)-1<<2)>>2]=r;c[(c[k>>2]|0)+(c[n>>2]<<2)>>2]=r;continue}}
rp(c[e>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0);c[n>>2]=(c[n>
;>2]|0)+-1;c[f>>2]=(c[f>>2]|0)+-16}i=p;return}function vp(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[(c[d>>2]|0)+32>>2]=c[(c[d>>2]|0)+16>>2];c[e>
x3e;2]=c[(c[d>>2]|0)+8>>2];a=((c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c
[d>>2]|0)+24>>2]=a;c[f>>2]=a;a=((c[c[d>>2]>>2]|0)+(c[e>>2]|0)|0)/2|0
;c[(c[d>>2]|0)+8>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16>>2]=((c[f>>2]|0)+(
c[e>>2]|0)|0)/2|0;c[(c[d>>2]|0)+32+4>>2]=c[(c[d>>2]|0)+16+4>>2];c[e>>
;2]=c[(c[d>>2]|0)+8+4>>2];a=((c[(c[d>>2]|0)+16+4>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(
c[d>>2]|0)+24+4>>2]=a;c[f>>2]=a;a=((c[(c[d>>2]|0)+4>>2]|0)+(c[e>>2]|
0)|0)/2|0;c[(c[d>>2]|0)+8+4>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16+4>>2]=((c[f>
x3e;2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function wp(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;h=f+8|0;g=f+4|0;k=f;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;c[k>>2]=e;xp(c[k>>
;2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0);i=f;return 0}function xp(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;w=i;i=i+80|0;f=w+72|0;x=w+68|0;y=w+64|0;z=w+60|
0;h=w+56|0;s=w+52|0;r=w+48|0;v=w+44|0;j=w+40|0;n=w+36|0;m=w+32|0;q=w+28|0;k=w+24|0;o=w+20|0;l=w+16|0;p=w+12|0;g=w+8|0;t=w+4|0;u=
w;c[f>>2]=a;c[x>>2]=b;c[y>>2]=d;c[z>>2]=e;c[h>>2]=(c[f>>2]|0)+76;c[c
[h>>2]>>2]=c[c[z>>2]>>2]<<2;c[(c[h>>2]|0)+4>>2]=c[(c[z>
;>2]|0)+4>>2]<<2;c[(c[h>>2]|0)+8>>2]=c[c[y>>2]>>2]<<2
;c[(c[h>>2]|0)+8+4>>2]=c[(c[y>>2]|0)+4>>2]<<2;c[(c[h>>2]|0)+16>
x3e;2]=c[c[x>>2]>>2]<<2;c[(c[h>>2]|0)+16+4>>2]=c[(c[x>>2]|0)+4>
x3e;2]<<2;c[(c[h>>2]|0)+24>>2]=c[(c[f>>2]|0)+64>>2];c[(c[h>>2]|0)+24
+4>>2]=c[(c[f>>2]|0)+68>>2];a:while(1){z=c[(c[h>>2]|0)+4>>2]|0;c[r>>
2]=z;c[s>>2]=z;c[v>>2]=c[(c[h>>2]|0)+8+4>>2];if((c[v>>2]|0)<(c[s>>
;2]|0))c[s>>2]=c[v>>2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>
2];c[v>>2]=c[(c[h>>2]|0)+16+4>>2];if((c[v>>2]|0)<(c[s>>2]|0))c[s>>
;2]=c[v>>2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>2];c[v>>2]=
c[(c[h>>2]|0)+24+4>>2];if((c[v>>2]|0)<(c[s>>2]|0))c[s>>2]=c[v>>
2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>2];do if((c[s>>2]>>8
|0)<(c[(c[f>>2]|0)+20>>2]|0)?(c[r>>2]>>8|0)>=(c[(c[f>>2]|0)+16>
x3e;2]|0):0){c[j>>2]=(c[(c[h>>2]|0)+24>>2]|0)-(c[c[h>>2]>>2]|0);c[n>>
;2]=(c[(c[h>>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0);b=c[j>>2]|0;c[m>
x3e;2]=(c[j>>2]|0)<0?0-b|0:b;b=c[n>>2]|0;c[q>>2]=(c[n>>2]|0)<0?0-b|0:b;b=c[m
x3e;>2]|0;if((c[m>>2]|0)>(c[q>>2]|0))b=(b*236|0)+((c[q>>2]|0)*97|0)|0;else b=(b*97|0)+((
c[q>>2]|0)*236|0)|0;c[g>>2]=b>>8;if(((((((c[g>>2]|0)<=32767?(c[u>>2]=(c[g
>>2]|0)*42,c[k>>2]=(c[(c[h>>2]|0)+8>>2]|0)-(c[c[h>>2]>>2]|0),c[o>
;>2]=(c[(c[h>>2]|0)+8+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0),y=_(c[n>>2]|0,c[k
x3e;>2]|0)|0,y=(y-(_(c[j>>2]|0,c[o>>2]|0)|0)|0)<0,z=_(c[n>>2]|0,c[k>>2]|0)|0,z
=z-(_(c[j>>2]|0,c[o>>2]|0)|0)|0,c[t>>2]=y?0-z|0:z,(c[t>>2]|0)<=(c[u>>2]|0
)):0)?(c[l>>2]=(c[(c[h>>2]|0)+16>>2]|0)-(c[c[h>>2]>>2]|0),c[p>>2]=(c
[(c[h>>2]|0)+16+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0),y=_(c[n>>2]|0,c[l>>
2]|0)|0,y=(y-(_(c[j>>2]|0,c[p>>2]|0)|0)|0)<0,z=_(c[n>>2]|0,c[l>>2]|0)|0,z=z-(_(c[j
x3e;>2]|0,c[p>>2]|0)|0)|0,c[t>>2]=y?0-z|0:z,(c[t>>2]|0)<=(c[u>>2]|0)):0)?(z=_(
c[n>>2]|0,c[o>>2]|0)|0,(z+(_(c[j>>2]|0,c[k>>2]|0)|0)|0)>=0):0)?(z=_(c[n>>
2]|0,c[p>>2]|0)|0,(z+(_(c[j>>2]|0,c[l>>2]|0)|0)|0)>=0):0)?(z=_(c[n>>2]|0,(c[(c[h>
;>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+8+4>>2]|0)|0)|0,(z+(_(c[j>>2]|0,(c[(c[h>>
;2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+8>>2]|0)|0)|0)|0)>=0):0)?(z=_(c[n>>2]|0,(c[(c[h>
;>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+16+4>>2]|0)|0)|0,(z+(_(c[j>>2]|0,(c[(c[h>
x3e;2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+16>>2]|0)|0)|0)|0)>=0):0)break;yp(c[h>>2]|0);c[h
>>2]=(c[h>>2]|0)+24;continue a}while(0);rp(c[f>>2]|0,c[c[h>>2]>>2]|0,c[(c[h>
;>2]|0)+4>>2]|0);if((c[h>>2]|0)==((c[f>>2]|0)+76|0))break;c[h>>2]=(c[h>>2
]|0)+-24}i=w;return}function yp(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;f=b+12|0;e=b+8|0;g=b+4|0;h=b;c[d>
;>2]=a;c[(c[d>>2]|0)+48>>2]=c[(c[d>>2]|0)+24>>2];c[g>>2]=c[(c[d>>
;2]|0)+8>>2];c[h>>2]=c[(c[d>>2]|0)+16>>2];a=((c[c[d>>2]>>2]|0)+(c[g
x3e;>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+8>>2]=a;a=((c[(c[d>>2]|0)+24>>2
]|0)+(c[h>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+40>>2]=a;c[g>>2]=((c[g>
x3e;2]|0)+(c[h>>2]|0)|0)/2|0;a=((c[f>>2]|0)+(c[g>>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>
;2]|0)+16>>2]=a;a=((c[e>>2]|0)+(c[g>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+32
x3e;>2]=a;c[(c[d>>2]|0)+24>>2]=((c[f>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c[d>>2]|
0)+48+4>>2]=c[(c[d>>2]|0)+24+4>>2];c[g>>2]=c[(c[d>>2]|0)+8+4>>2];c[h
>>2]=c[(c[d>>2]|0)+16+4>>2];a=((c[(c[d>>2]|0)+4>>2]|0)+(c[g>>2]|0)|0
)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+8+4>>2]=a;a=((c[(c[d>>2]|0)+24+4>>2]|0)+(c[h>
;>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+40+4>>2]=a;c[g>>2]=((c[g>>2]|0)+(c
[h>>2]|0)|0)/2|0;a=((c[f>>2]|0)+(c[g>>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+16+
4>>2]=a;a=((c[e>>2]|0)+(c[g>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+32+4>
x3e;2]=a;c[(c[d>>2]|0)+24+4>>2]=((c[f>>2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function zp(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;k=i;i=i+32|0;d=k+24|0;l=k+20|0;j=k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;e=k;c[d>
;>2]=a;c[l>>2]=b;c[l>>2]=c[l>>2];if(!(c[(c[d>>2]|0)+52>>2]|0)){i=k;return
}c[(c[d>>2]|0)+1232>>2]=0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[d>>2]|
0)+1424>>2]|0))break;c[f>>2]=c[(c[(c[d>>2]|0)+1420>>2]|0)+(c[j>>2]<<
2)>>2];c[g>>2]=0;c[h>>2]=0;while(1){if(!(c[f>>2]|0))break;if(c[g>>2]|0?(c[c[f
x3e;>2]>>2]|0)>(c[h>>2]|0):0)Ap(c[d>>2]|0,c[h>>2]|0,c[j>>2]|0,c[g>
;>2]<<9,(c[c[f>>2]>>2]|0)-(c[h>>2]|0)|0);c[g>>2]=(c[g>>2]|0)+(c
[(c[f>>2]|0)+4>>2]|0);c[e>>2]=(c[g>>2]<<9)-(c[(c[f>>2]|0)+8>>
;2]|0);if(c[e>>2]|0?(c[c[f>>2]>>2]|0)>=0:0)Ap(c[d>>2]|0,c[c[f>>2]>
x3e;2]|0,c[j>>2]|0,c[e>>2]|0,1);c[h>>2]=(c[c[f>>2]>>2]|0)+1;c[f>>2]=
c[(c[f>>2]|0)+12>>2]}if(c[g>>2]|0)Ap(c[d>>2]|0,c[h>>2]|0,c[j>>2]|0,c
[g>>2]<<9,(c[(c[d>>2]|0)+24>>2]|0)-(c[h>>2]|0)|0);c[j>>2]=(c[j>
x3e;2]|0)+1}if(!(c[(c[d>>2]|0)+1236>>2]|0)){i=k;return}if((c[(c[d>>2]|0)+1232>>2]|0)<
;=0){i=k;return}_a[c[(c[d>>2]|0)+1236>>2]&15](c[(c[d>>2]|0)+1244>>2]|0,c[(c[d>
x3e;2]|0)+1232>>2]|0,(c[d>>2]|0)+1040|0,c[(c[d>>2]|0)+1240>>2]|0);i=k;return}function Ap
(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;s=i;i=i+32|0;l=s+28|0;m=s+24|0;n=s+20|0;t=s+16
|0;o=s+12|0;r=s+8|0;p=s+4|0;q=s;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[t>>2]=j;c[o>>2
]=k;c[q>>2]=c[t>>2]>>9;if((c[q>>2]|0)<0)c[q>>2]=0-(c[q>>2]|0);k
=c[q>>2]|0;do if(c[(c[l>>2]|0)+980+16>>2]&2|0){c[q>>2]=k&511;k=c[q>>
2]|0;if((c[q>>2]|0)>256){c[q>>2]=512-k;break}if((k|0)==256)c[q>>2]=255}else if((k|0)>=256
)c[q>>2]=255;while(0);c[n>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);t=(c[m>
;>2]|0)+(c[(c[l>>2]|0)+8>>2]|0)|0;c[m>>2]=t;c[m>>2]=(c[m>>2]|0)>=32767
?32767:t;if((c[n>>2]|0)>=2147483647)c[n>>2]=2147483647;if(!(c[q>>2]|0)){i=s;return}c[p>
x3e;2]=c[(c[l>>2]|0)+1232>>2];c[r>>2]=(c[l>>2]|0)+1040+((c[p>>2]|0)*6|0)+-6;if
((((c[p>>2]|0)>0?(c[(c[l>>2]|0)+1244>>2]|0)==(c[n>>2]|0):0)?((b[c[r>>2]
x3e;>1]|0)+(e[(c[r>>2]|0)+2>>1]|0)|0)==(c[m>>2]|0):0)?(d[(c[r>>2]|0)+4>>0
]|0)==(c[q>>2]|0):0){b[(c[r>>2]|0)+2>>1]=(e[(c[r>>2]|0)+2>>1]|0)+(c[o>>
;2]|0);i=s;return}if((c[p>>2]|0)>=32?1:(c[(c[l>>2]|0)+1244>>2]|0)!=(c[n>>2]|0)){if((
c[p>>2]|0)>0?(c[(c[l>>2]|0)+1236>>2]|0)!=0:0)_a[c[(c[l>>2]|0)+1236>>2]&
;15](c[(c[l>>2]|0)+1244>>2]|0,c[p>>2]|0,(c[l>>2]|0)+1040|0,c[(c[l>>2]|0)+1240
x3e;>2]|0);c[(c[l>>2]|0)+1232>>2]=0;c[(c[l>>2]|0)+1244>>2]=c[n>>2];c[p>
;>2]=0;c[r>>2]=(c[l>>2]|0)+1040}else c[r>>2]=(c[r>>2]|0)+6;b[c[r>>2]>
;>1]=c[m>>2];b[(c[r>>2]|0)+2>>1]=c[o>>2];a[(c[r>>2]|0)+4>>0]=c[
q>>2];t=(c[l>>2]|0)+1232|0;c[t>>2]=(c[t>>2]|0)+1;i=s;return}function Bp(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]|0)+12>>2];Fb(c[e>>
;2]|0,c[d>>2]|0);c[d>>2]=0;i=b;return}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]=c[(c[e>>2]|0)+4>>2];Ua[c[(c[(c[(c[e>>2]|0)+20>>2]|0)+56>
;>2]|0)+8>>2]&31](c[(c[e>>2]|0)+60>>2]|0,c[(c[d>>2]|0)+172>>2]|0,c[(
c[d>>2]|0)+176>>2]|0);i=b;return 0}function Dp(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;k=i;
i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;if((c[h>
;>2]|0)==1)c[h>>2]=0;b=Ep(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,0)|0;i=
k;return b|0}function Ep(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;P=i;i=i+192|0;k=P+180|0;l=P+176|0;m=P+172|0;n=P+168|0;o=P+
164|0;p=P+160|0;t=P+156|0;B=P+152|0;r=P+136|0;H=P+128|0;u=P+124|0;v=P+120|0;I=P+116|0;D=P+112|0;q=P+108|0;A=P+104|0;y=P+100|0;G=
P+96|0;L=P+92|0;N=P+88|0;K=P+84|0;O=P+80|0;C=P+32|0;z=P+28|0;w=P+24|0;M=P+20|0;s=P+16|0;E=P+12|0;F=P+8|0;J=P+4|0;x=P;c[l>
x3e;2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=h;c[p>>2]=j;c[B>>2]=0;c[y>>2]=(
c[n>>2]|0)==3&1;c[G>>2]=(c[n>>2]|0)==4&1;do if((c[(c[m>>2]|0)+72>>2]|
0)==(c[(c[l>>2]|0)+24>>2]|0)){if((c[n>>2]|0)!=(c[p>>2]|0)){c[k>>2]=19;O=c[k>
;>2]|0;i=P;return O|0}c[B>>2]=(c[m>>2]|0)+108;if(c[o>>2]|0)Nb(c[B>>2]|0,c[c[o>
x3e;2]>>2]|0,c[(c[o>>2]|0)+4>>2]|0);_d(c[B>>2]|0,r);c[r>>2]=c[r>>2]
x26;-64;c[r+4>>2]=c[r+4>>2]&-64;c[r+8>>2]=(c[r+8>>2]|0)+63&-64;c[r+12>>
;2]=(c[r+12>>2]|0)+63&-64;if((c[r>>2]|0)<0?(c[r+8>>2]|0)>(2147483647+(c[r>>
;2]|0)|0):0){c[k>>2]=98;O=c[k>>2]|0;i=P;return O|0}c[H>>2]=(c[r+8>>2]|0)-(c[r>>
;2]|0)>>6;if((c[r+4>>2]|0)<0?(c[r+12>>2]|0)>(2147483647+(c[r+4>>2]|0)|0):0){c[
k>>2]=98;O=c[k>>2]|0;i=P;return O|0}c[u>>2]=(c[r+12>>2]|0)-(c[r+4>>2]|0)>
x3e;6;c[q>>2]=(c[m>>2]|0)+76;c[A>>2]=c[(c[l>>2]|0)+8>>2];c[I>>2]=c[H
>>2];c[v>>2]=c[u>>2];if(c[(c[(c[m>>2]|0)+156>>2]|0)+4>>2]&1|0){
Fb(c[A>>2]|0,c[(c[q>>2]|0)+12>>2]|0);c[(c[q>>2]|0)+12>>2]=0;f=(c[(c[m>>
;2]|0)+156>>2]|0)+4|0;c[f>>2]=c[f>>2]&-2}c[D>>2]=c[H>>2];if(c[y>>
;2]|0){c[H>>2]=(c[H>>2]|0)*3;c[D>>2]=(c[H>>2]|0)+3&-4}if(c[G>>2]|0)c[u>
;>2]=(c[u>>2]|0)*3;c[L>>2]=c[r>>2];c[N>>2]=c[r+4>>2];c[K>>2]=c[
r>>2]>>6;c[O>>2]=c[r+12>>2]>>6;if((c[H>>2]|0)>>>0>
;32767|(c[u>>2]|0)>>>0>32767){c[k>>2]=98;O=c[k>>2]|0;i=P;return O|0}a[(c[q>
;>2]|0)+18>>0]=2;b[(c[q>>2]|0)+16>>1]=256;c[(c[q>>2]|0)+4>>2]=c[H>
x3e;2];c[c[q>>2]>>2]=c[u>>2];c[(c[q>>2]|0)+8>>2]=c[D>>2];Nb(c[B>
;>2]|0,0-(c[L>>2]|0)|0,0-(c[N>>2]|0)|0);f=bc(c[A>>2]|0,_(c[D>>2]|0,c[u>>2
]|0)|0,t)|0;c[(c[q>>2]|0)+12>>2]=f;if(!(c[t>>2]|0)){f=(c[(c[m>>2]|0)+156>>2]|0
)+4|0;c[f>>2]=c[f>>2]|1;c[C>>2]=c[q>>2];c[C+4>>2]=c[B>>2];c[C+8>
;>2]=1;c[t>>2]=Ya[c[(c[l>>2]|0)+64>>2]&127](c[(c[l>>2]|0)+60>>2]|0,C
)|0;a:do if(c[y>>2]|0){c[z>>2]=c[(c[q>>2]|0)+12>>2];c[w>>2]=c[v>>2];
while(1){if((c[w>>2]|0)>>>0<=0)break a;c[s>>2]=(c[z>>2]|0)+(c[H>>2]|
0);c[M>>2]=c[I>>2];while(1){if((c[M>>2]|0)>>>0<=0)break;c[E>>2]=d[(c
[z>>2]|0)+((c[M>>2]|0)-1)>>0];a[(c[s>>2]|0)+-3>>0]=c[E>>2];a[(c[s>
;>2]|0)+-2>>0]=c[E>>2];a[(c[s>>2]|0)+-1>>0]=c[E>>2];c[s>>2]=(c[
s>>2]|0)+-3;c[M>>2]=(c[M>>2]|0)+-1}c[w>>2]=(c[w>>2]|0)+-1;c[z>>2]=(c
[z>>2]|0)+(c[D>>2]|0)}}while(0);b:do if(c[G>>2]|0){c[F>>2]=(c[(c[q>>2]|0)+12
x3e;>2]|0)+(_((c[u>>2]|0)-(c[v>>2]|0)|0,c[D>>2]|0)|0);c[J>>2]=c[(c[q>>2]|
0)+12>>2];c[x>>2]=c[v>>2];while(1){if((c[x>>2]|0)>>>0<=0)break b;Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);c[F
>>2]=(c[F>>2]|0)+(c[D>>2]|0);c[x>>2]=(c[x>>2]|0)+-1}}while(0);Nb(c[B>>
;2]|0,c[L>>2]|0,c[N>>2]|0);if((c[K>>2]|0)>2147483647|(c[O>>2]|0)>2147483647){c
[k>>2]=23;O=c[k>>2]|0;i=P;return O|0}else{if(c[t>>2]|0)break;c[(c[m>>2]|0)+72>>
;2]=1651078259;c[(c[m>>2]|0)+100>>2]=c[K>>2];c[(c[m>>2]|0)+104>>2]=c[O>
x3e;2];break}}}else c[t>>2]=6;while(0);if((c[B>>2]|0)!=0&(c[o>>2]|0)!=0)Nb(c[B>>2]|
0,0-(c[c[o>>2]>>2]|0)|0,0-(c[(c[o>>2]|0)+4>>2]|0)|0);c[k>>2]=c[t>>2];
O=c[k>>2]|0;i=P;return O|0}function Fp(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;l=k+16
|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[l>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2
]=0;if((c[(c[f>>2]|0)+72>>2]|0)!=(c[(c[l>>2]|0)+24>>2]|0)){c[j>>2]=6;l=c[j>
;>2]|0;i=k;return l|0}if(c[g>>2]|0)Kb((c[f>>2]|0)+108|0,c[g>>2]|0);if(!(c[h>>2]|0)){
l=c[j>>2]|0;i=k;return l|0}Nb((c[f>>2]|0)+108|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+
4>>2]|0);l=c[j>>2]|0;i=k;return l|0}function Gp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;h=
g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[e>>2]=b;c[f>>2]=d;b=c[f>>2]|0;c[b>>2]=0;c[b+4>
;>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;if((c[(c[e>>2]|0)+72>>2]|0)!=(c[(c[h>>2]|
0)+24>>2]|0)){i=g;return}_d((c[e>>2]|0)+108|0,c[f>>2]|0);i=g;return}function Hp(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=Oa[c[(
c[(c[(c[h>>2]|0)+20>>2]|0)+56>>2]|0)+12>>2]&63](c[(c[h>>2]|0)+60>>
;2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function Ip(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;j=i;i=i+32|0;m=j+16|0;g=j+12|0;l=j+8|0;k=j+4|0;h=j;c[m>>2]=b;c[g>>2]=d;c[l>>2]=e;c[k>
;>2]=f;c[h>>2]=Ep(c[m>>2]|0,c[g>>2]|0,c[l>>2]|0,c[k>>2]|0,3)|0;if(c[h>
;>2]|0){m=c[h>>2]|0;i=j;return m|0}a[(c[g>>2]|0)+76+18>>0]=5;m=c[h>>2]|0;i=j;return
m|0}function Jp(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;j=i;i=i+32|0;m=j+16|0;g=j+12|0;l=j+8|0;k=j+4|0;h=j
;c[m>>2]=b;c[g>>2]=d;c[l>>2]=e;c[k>>2]=f;c[h>>2]=Ep(c[m>>2]|0,c[g>
;>2]|0,c[l>>2]|0,c[k>>2]|0,4)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=j;return m|0}a[(c[g>
;>2]|0)+76+18>>0]=6;m=c[h>>2]|0;i=j;return m|0}function Kp(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[(c[e>>2]|
0)+32>>2]=c[g>>2];a=hc(c[g>>2]|0,4,0,c[f>>2]|0,0,h)|0;c[(c[e>>2]|0)+24>
x3e;2]=a;if((c[h>>2]|0)==0?(a=hc(c[g>>2]|0,4,0,c[f>>2]|0,0,h)|0,c[(c[e>>2]|0)+28>
x3e;2]=a,(c[h>>2]|0)==0):0){c[(c[e>>2]|0)+16>>2]=c[f>>2];c[(c[e>>2]|0)+12>
;>2]=-559038737;c[(c[e>>2]|0)+20>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+8>
;>2]=0;c[(c[e>>2]|0)+4>>2]=0;a=(c[e>>2]|0)+36|0;c[a>>2]=c[1094];c[a+4>>2]=
c[1095];c[a+8>>2]=c[1096];c[a+12>>2]=c[1097]}if(!(c[h>>2]|0)){a=c[h>>2]|0;i=j;return a|0
}Fb(c[g>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;a=c[h>>
2]|0;i=j;return a|0}function Lp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;d=g+4|0;f=g;c[b>>2]=a;c
[e>>2]=c[(c[b>>2]|0)+32>>2];c[f>>2]=c[c[b>>2]>>2];if(!(c[f>>
;2]|0)){i=g;return}a=bc(c[e>>2]|0,c[(c[b>>2]|0)+4>>2]|0,d)|0;c[c[b>>2]>>2]=a;if
(c[d>>2]|0){i=g;return}Ss(c[c[b>>2]>>2]|0,c[f>>2]|0,c[(c[b>>2]|0)+4>>
;2]|0)|0;Mp(c[b>>2]|0,c[f>>2]|0);c[(c[b>>2]|0)+8>>2]=c[(c[b>>2]|0)+4>>
;2];Fb(c[e>>2]|0,c[f>>2]|0);c[f>>2]=0;c[d>>2]=c[d>>2];i=g;return}function Mp(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;h=g+16|0;j=g+12|0;d=g+8|0;f=g+4|0;e=g;c[h>>2]=a;c[j>>
;2]=b;c[d>>2]=(c[c[h>>2]>>2]|0)-(c[j>>2]|0);c[f>>2]=c[(c[h>>2]|0)+24
>>2];c[e>>2]=(c[f>>2]|0)+(c[(c[h>>2]|0)+16>>2]<<2);while(1){if((c[f
x3e;>2]|0)>>>0>=(c[e>>2]|0)>>>0)break;if(c[c[f>>2]>>2]|0){
j=c[f>>2]|0;c[j>>2]=(c[j>>2]|0)+(c[d>>2]|0)}c[f>>2]=(c[f>>2]|0)+4}i=
g;return}function Np(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o
+20|0;j=o+16|0;k=o+12|0;l=o+8|0;n=o+4|0;m=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if((
c[h>>2]|0)>=0?(c[h>>2]|0)<(c[(c[g>>2]|0)+16>>2]|0):0){if((c[k>>2]|0)
x3c;0){c[f>>2]=6;a=c[f>>2]|0;i=o;return a|0}do if(((c[(c[g>>2]|0)+4>>2]|0)+(c[k>>
;2]|0)|0)>>>0>(c[(c[g>>2]|0)+8>>2]|0)>>>0){c[n>>2]=c[(c[g>
x3e;2]|0)+8>>2];a=(c[j>>2]|0)-(c[c[g>>2]>>2]|0)|0;c[m>>2]=a;c[m>>2]=(
c[m>>2]|0)>>>0>=(c[(c[g>>2]|0)+8>>2]|0)>>>0?-1:a;while(1){if((c
[n>>2]|0)>>>0>=((c[(c[g>>2]|0)+4>>2]|0)+(c[k>>2]|0)|0)>>
x3e;0)break;c[n>>2]=(c[n>>2]|0)+(((c[n>>2]|0)>>>2)+1);c[n>>2]=(c[n>
x3e;2]|0)+1023&-1024}c[l>>2]=Op(c[g>>2]|0,c[n>>2]|0)|0;if(c[l>>2]|0){c[f>>
;2]=c[l>>2];a=c[f>>2]|0;i=o;return a|0}else{if((c[m>>2]|0)<0)break;c[j>>2]=(c[c[g
x3e;>2]>>2]|0)+(c[m>>2]|0);break}}while(0);c[(c[(c[g>>2]|0)+24>>2]|0)+(c[h>>
;2]<<2)>>2]=(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+4>>2]|0);c[(c[(c[g>
;>2]|0)+28>>2]|0)+(c[h>>2]<<2)>>2]=c[k>>2];Ss((c[c[g>>2]>
x3e;2]|0)+(c[(c[g>>2]|0)+4>>2]|0)|0,c[j>>2]|0,c[k>>2]|0)|0;a=(c[g>>2]|0)+4|0;c
[a>>2]=(c[a>>2]|0)+(c[k>>2]|0);c[f>>2]=0;a=c[f>>2]|0;i=o;return a|0}c[f>
x3e;2]=6;a=c[f>>2]|0;i=o;return a|0}function Op(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0
;e=k+16|0;f=k+12|0;h=k+8|0;j=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[h>>2]=c[(c[e>>2]|0)+32>
;>2];c[j>>2]=c[c[e>>2]>>2];b=bc(c[h>>2]|0,c[f>>2]|0,g)|0;c[c[e>>
;2]>>2]=b;b=c[j>>2]|0;if(c[g>>2]|0){c[c[e>>2]>>2]=b;c[d>>2]=c[g>
;>2];j=c[d>>2]|0;i=k;return j|0}if(b|0){Ss(c[c[e>>2]>>2]|0,c[j>>2]|0,c[(c[e>
x3e;2]|0)+8>>2]|0)|0;Mp(c[e>>2]|0,c[j>>2]|0);Fb(c[h>>2]|0,c[j>>2]|0);c[j>
x3e;2]=0}c[(c[e>>2]|0)+8>>2]=c[f>>2];c[d>>2]=0;j=c[d>>2]|0;i=k;return j|0}function
Pp(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+32>>
;2];if((c[(c[b>>2]|0)+12>>2]|0)!=-559038737){i=e;return}Fb(c[d>>2]|0,c[c[b>>2]>>
;2]|0);c[c[b>>2]>>2]=0;Fb(c[d>>2]|0,c[(c[b>>2]|0)+24>>2]|0);c[(c[b>>
2]|0)+24>>2]=0;Fb(c[d>>2]|0,c[(c[b>>2]|0)+28>>2]|0);c[(c[b>>2]|0)+28>>
;2]=0;c[(c[b>>2]|0)+12>>2]=0;i=e;return}function Qp(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;j=f+8|0;k=f+4|0;h=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[h>>2]=e;c[(c[
g>>2]|0)+12>>2]=0;c[(c[g>>2]|0)+4>>2]=c[j>>2];c[(c[g>>2]|0)+8>
x3e;2]=c[k>>2];c[c[g>>2]>>2]=c[j>>2];c[(c[g>>2]|0)+16>>2]=c[h>
x3e;2];b=(c[g>>2]|0)+20|0;d=4392;e=b+52|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0
));i=f;return}function Rp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return
}function Sp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Tp(c[d>>2]|0,c[(c[d>>2]|0)+8>>
;2]|0);i=b;return}function Tp(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+8|0;e=h+4|0;g=h;c[f>>2]=a;c[e>
;>2]=b;c[g>>2]=c[c[f>>2]>>2];while(1){if((c[g>>2]|0)>>>0>=(c[e
x3e;>2]|0)>>>0){e=12;break}if((((((d[c[g>>2]>>0]|0|0)!=32?(d[c[g>>2]>>
;0]|0|0)!=13:0)?(d[c[g>>2]>>0]|0|0)!=10:0)?(d[c[g>>2]>>0]|0|0)!=9:0)?(d[c[g>>2
]>>0]|0|0)!=12:0)?d[c[g>>2]>>0]|0|0:0){if((d[c[g>>2]>>0]|0|0)!=37){e=12;break}
Up(g,c[e>>2]|0)}c[g>>2]=(c[g>>2]|0)+1}if((e|0)==12){c[c[f>>2]>>2]=c[g>>
;2];i=h;return}}function Up(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=c[c[e>>2]>>2];while(1){if((c[g>>2]|0)>>>0>=(c[f>
;>2]|0)>>>0)break;if((d[c[g>>2]>>0]|0|0)==13)break;if((d[c[g>>2]>>0]|
0|0)==10)break;c[g>>2]=(c[g>>2]|0)+1}c[c[e>>2]>>2]=c[g>>2];i=h;return}function
Vp(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=c[c[e
x3e;>2]>>2];c[h>>2]=c[(c[e>>2]|0)+8>>2];c[g>>2]=0;Tp(f,c[h>>2]|
0);a:do if((c[f>>2]|0)>>>0<(c[h>>2]|0)>>>0){if((d[c[f>>2]>
x3e;0]|0|0)!=91?(d[c[f>>2]>>0]|0|0)!=93:0){if((d[c[f>>2]>>0]|0|0)==123){c[g>>2
]=Wp(f,c[h>>2]|0)|0;break}if((d[c[f>>2]>>0]|0|0)==40){c[g>>2]=Xp(f,c[h>>2]|0)|
0;break}a=c[f>>2]|0;if((d[c[f>>2]>>0]|0|0)==60){if((a+1|0)>>>0<(c[h>>
;2]|0)>>>0?(d[(c[f>>2]|0)+1>>0]|0|0)==60:0){c[f>>2]=(c[f>>2]|0)+1;c[f>
;>2]=(c[f>>2]|0)+1;break}c[g>>2]=Yp(f,c[h>>2]|0)|0;break}b=c[f>>2]|0;if((d[a>
x3e;0]|0|0)==62){c[f>>2]=b+1;if((c[f>>2]|0)>>>0<(c[h>>2]|0)>>>0
?(d[c[f>>2]>>0]|0|0)==62:0){c[f>>2]=(c[f>>2]|0)+1;break}c[g>>2]=3;break}if((d[
b>>0]|0|0)==47)c[f>>2]=(c[f>>2]|0)+1;while(1){if((c[f>>2]|0)>>>0>=(c
[h>>2]|0)>>>0)break a;if((d[c[f>>2]>>0]|0|0)==32)break a;if((d[c[f>>2]>
;>0]|0|0)==13)break a;if((d[c[f>>2]>>0]|0|0)==10)break a;if((d[c[f>>2]>>0]|0|0)==9)
break a;if((d[c[f>>2]>>0]|0|0)==12)break a;if(!(d[c[f>>2]>>0]|0))break a;if((d[c[f>
x3e;2]>>0]|0|0)==47)break a;if((d[c[f>>2]>>0]|0|0)==40)break a;if((d[c[f>>2]>>
0]|0|0)==41)break a;if((d[c[f>>2]>>0]|0|0)==60)break a;if((d[c[f>>2]>>0]|0|0)==62)break
a;if((d[c[f>>2]>>0]|0|0)==91)break a;if((d[c[f>>2]>>0]|0|0)==93)break a;if((d[c[f>
x3e;2]>>0]|0|0)==123)break a;if((d[c[f>>2]>>0]|0|0)==125)break a;if((d[c[f>>2]>>
;0]|0|0)==37)break a;c[f>>2]=(c[f>>2]|0)+1}}c[f>>2]=(c[f>>2]|0)+1}while(0);if((c[f>
x3e;2]|0)!=(c[c[e>>2]>>2]|0)){h=c[g>>2]|0;g=c[e>>2]|0;g=g+12|0;c[g>>2]=h;g=c[f
>>2]|0;h=c[e>>2]|0;c[h>>2]=g;i=j;return}c[g>>2]=3;h=c[g>>2]|0;g=c[e>>
;2]|0;g=g+12|0;c[g>>2]=h;g=c[f>>2]|0;h=c[e>>2]|0;c[h>>2]=g;i=j;return}function Wp(a,b){a
=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+16|0;f=l+12|0;g=l+8|0;h=l+4|0;j=l;c[e>>2]=a;c[f>>
;2]=b;c[h>>2]=0;c[j>>2]=0;c[g>>2]=c[c[e>>2]>>2];a:while(1){if(!((c[g>>
;2]|0)>>>0<(c[f>>2]|0)>>>0?(c[j>>2]|0)==0:0))break;switch(d[c[g>>
;2]>>0]|0|0){case 123:{c[h>>2]=(c[h>>2]|0)+1;break}case 125:{c[h>>2]=(c[h>>2]|
0)+-1;if(!(c[h>>2]|0)){k=6;break a}break}case 40:{c[j>>2]=Xp(g,c[f>>2]|0)|0;break}case 60:{c[j>
;>2]=Yp(g,c[f>>2]|0)|0;break}case 37:{Up(g,c[f>>2]|0);break}default:{}}c[g>>2]=(c[g>>
;2]|0)+1}if((k|0)==6)c[g>>2]=(c[g>>2]|0)+1;if(!(c[h>>2]|0)){b=c[g>>2]|0;k=c[e>>
;2]|0;c[k>>2]=b;k=c[j>>2]|0;i=l;return k|0}c[j>>2]=3;b=c[g>>2]|0;k=c[e>>2]|0;c
[k>>2]=b;k=c[j>>2]|0;i=l;return k|0}function Xp(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;n=i;i=i
+32|0;k=n+20|0;f=n+16|0;l=n+12|0;h=n+8|0;m=n+4|0;j=n;g=n+24|0;c[k>>2]=b;c[f>>2]=e;c[l>>2]=c[c[k>
;>2]>>2];c[h>>2]=0;c[m>>2]=3;a:while(1){if((c[l>>2]|0)>>>0>=(c[
f>>2]|0)>>>0){f=18;break}a[g>>0]=a[c[l>>2]>>0]|0;c[l>>2]=(c[l
x3e;>2]|0)+1;if((d[g>>0]|0|0)!=92){if((d[g>>0]|0|0)==40){c[h>>2]=(c[h>>2]|0)+1;continue
}if((d[g>>0]|0|0)!=41)continue;c[h>>2]=(c[h>>2]|0)+-1;if(!(c[h>>2]|0)){f=17;break}else continue
}if((c[l>>2]|0)==(c[f>>2]|0)){f=18;break}switch(d[c[l>>2]>>0]|0|0){case 41:case 40:case
92:case 102:case 98:case 116:case 114:case 110:{c[l>>2]=(c[l>>2]|0)+1;continue a}default:{}}c[j>>2
]=0;while(1){if((c[j>>2]|0)>>>0>=3)continue a;if((c[l>>2]|0)>>>0>=(c
[f>>2]|0)>>>0)continue a;if(48>(d[c[l>>2]>>0]|0|0))continue a;if((d[c[l>
x3e;2]>>0]|0|0)>55)continue a;c[l>>2]=(c[l>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1
}}if((f|0)==17){c[m>>2]=0;e=c[l>>2]|0;l=c[k>>2]|0;c[l>>2]=e;m=c[m>>2]|0;i=n;return
m|0}else if((f|0)==18){e=c[l>>2]|0;l=c[k>>2]|0;c[l>>2]=e;m=c[m>>2]|0;i=n;return m|0}return
0}function Yp(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=c[c[e>>2]>>2];c[h>>2]=0;while(1){b=(c[g>>2]|0)+1|0;c[g>
x3e;2]=b;if(b>>>0>=(c[f>>2]|0)>>>0)break;Tp(g,c[f>>2]|0);if((c[g>>
;2]|0)>>>0>=(c[f>>2]|0)>>>0)break;if((d[c[g>>2]>>0]|0|0)>=
48?(d[c[g>>2]>>0]|0|0)<=57:0)continue;if((d[c[g>>2]>>0]|0|0)>=65?(d[c[g>
x3e;2]>>0]|0|0)<=70:0)continue;if((d[c[g>>2]>>0]|0|0)<97)break;if((d[c[g>>2]
x3e;>0]|0|0)>102)break}if((c[g>>2]|0)>>>0<(c[f>>2]|0)>>>0?(d[c[
g>>2]>>0]|0|0)!=62:0){c[h>>2]=3;g=c[g>>2]|0;b=c[e>>2]|0;c[b>>2]=g;b=
c[h>>2]|0;i=j;return b|0}c[g>>2]=(c[g>>2]|0)+1;g=c[g>>2]|0;b=c[e>>2]|0;c[b>
;>2]=g;b=c[h>>2]|0;i=j;return b|0}function Zp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Sp(c[d>
;>2]|0);a=_p(c[d>>2]|0,c[(c[d>>2]|0)+8>>2]|0)|0;i=b;return a|0}function _p(a,b){a=a|0;b=b|0;var
e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[f>>2]=a;c[g>>2]=b;c[h>>
;2]=$p(c[f>>2]|0,c[g>>2]|0,10)|0;c[j>>2]=c[c[f>>2]>>2];if((c[j>>2]|0
)>>>0<(c[g>>2]|0)>>>0?(d[c[j>>2]>>0]|0|0)==35:0){c[c[f>>
;2]>>2]=(c[j>>2]|0)+1;c[e>>2]=$p(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;j=
c[e>>2]|0;i=k;return j|0}c[e>>2]=c[h>>2];j=c[e>>2]|0;i=k;return j|0}function $p(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;q=i;i=i+32|0;g=q+20|0;h=q+16|0;j=q+12|0;k=q+8|0;n=q+4|0;m=q;o=q+25|
0;l=q+24|0;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[n>>2]=c[c[h>>2]>>2];c[m
x3e;>2]=0;a[o>>0]=0;if(((c[k>>2]|0)<2?1:(c[n>>2]|0)==(c[j>>2]|0))|(c[k>
x3e;2]|0)>36){c[g>>2]=0;p=c[g>>2]|0;i=q;return p|0}if(!((d[c[n>>2]>>0]|0)!=45?(d[c[
n>>2]>>0]|0)!=43:0))p=5;if((p|0)==5?(a[o>>0]=(d[c[n>>2]>>0]|0)==45,c[n>
x3e;2]=(c[n>>2]|0)+1,(c[n>>2]|0)==(c[j>>2]|0)):0){c[g>>2]=0;p=c[g>>2]|0;i=q;return
p|0}while(1){if((c[n>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;if((d[c[n>
x3e;2]>>0]|0)==32)break;if((d[c[n>>2]>>0]|0)==13)break;if((d[c[n>>2]>>0]|0)==10
)break;if((d[c[n>>2]>>0]|0)==9)break;if((d[c[n>>2]>>0]|0)==12)break;if(!(d[c[n>>
;2]>>0]|0))break;if((d[c[n>>2]>>0]|0)>=128)break;a[l>>0]=a[11579+(d[c[n>>
2]>>0]&127)>>0]|0;if((a[l>>0]|0)<0)break;if((a[l>>0]|0)>=(c[k>>
2]|0))break;p=_(c[m>>2]|0,c[k>>2]|0)|0;c[m>>2]=p+(a[l>>0]|0);c[n>>2]=(c[n>
;>2]|0)+1}if(a[o>>0]|0)c[m>>2]=0-(c[m>>2]|0);c[c[h>>2]>>2]=c[n>>
;2];c[g>>2]=c[m>>2];p=c[g>>2]|0;i=q;return p|0}function aq(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;Sp(c[f>>2]|0);b=bq(c[f>>2]|0,c[(c[f>>2]|
0)+8>>2]|0,c[e>>2]|0)|0;i=d;return b|0}function bq(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;s=i;i=i+48|0;g=s+28|0;h=s+24|0;j=s+20|0;k=s+16|0;p=s+12|0;o=s+8|0;m=s+4|0;n=s;q=s+33|0;l=s+32|0;c[h>>
;2]=b;c[j>>2]=e;c[k>>2]=f;c[p>>2]=c[c[h>>2]>>2];c[m>>2]=0;c[n>
x3e;2]=1;a[q>>0]=0;if((c[p>>2]|0)==(c[j>>2]|0)){c[g>>2]=0;r=c[g>>2]|0;i=s;return
r|0}if(!((d[c[p>>2]>>0]|0)!=45?(d[c[p>>2]>>0]|0)!=43:0))r=5;if((r|0)==5?(a[q>>
;0]=(d[c[p>>2]>>0]|0)==45,c[p>>2]=(c[p>>2]|0)+1,(c[p>>2]|0)==(c[j>>2
]|0)):0){c[g>>2]=0;r=c[g>>2]|0;i=s;return r|0}if((d[c[p>>2]>>0]|0)!=46)c[o>>2]=(
_p(p,c[j>>2]|0)|0)<<16;else c[o>>2]=0;a:do if((c[p>>2]|0)>>>0<(c[j
x3e;>2]|0)>>>0?(d[c[p>>2]>>0]|0)==46:0){c[p>>2]=(c[p>>2]|0)+1;while(
1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break a;if((d[c[p>>2]>
;>0]|0)==32)break a;if((d[c[p>>2]>>0]|0)==13)break a;if((d[c[p>>2]>>0]|0)==10)break
a;if((d[c[p>>2]>>0]|0)==9)break a;if((d[c[p>>2]>>0]|0)==12)break a;if(!(d[c[p>>
;2]>>0]|0))break a;if((d[c[p>>2]>>0]|0)>=128)break a;a[l>>0]=a[11579+(d[c[p>
x3e;2]>>0]&127)>>0]|0;if((a[l>>0]|0)<0)break a;if((a[l>>0]|0)>=10)break a
;if(!((c[o>>2]|0)==0&(c[k>>2]|0)>0)){if((c[n>>2]|0)<1e7){c[m>>2]=((c[m>
;>2]|0)*10|0)+(a[l>>0]|0);c[n>>2]=(c[n>>2]|0)*10}}else{c[k>>2]=(c[k>>2]|0
)+-1;c[m>>2]=((c[m>>2]|0)*10|0)+(a[l>>0]|0)}c[p>>2]=(c[p>>2]|0)+1}}while(0);do
if(((c[p>>2]|0)+1|0)>>>0<(c[j>>2]|0)>>>0){if((d[c[p>>2]>
x3e;0]|0)!=101?(d[c[p>>2]>>0]|0)!=69:0)break;c[p>>2]=(c[p>>2]|0)+1;r=_p(p,c[j>>
;2]|0)|0;c[k>>2]=(c[k>>2]|0)+r}while(0);while(1){if((c[k>>2]|0)<=0)break;c[o>>2]=(c
[o>>2]|0)*10;c[m>>2]=(c[m>>2]|0)*10;c[k>>2]=(c[k>>2]|0)+-1}while(1){if((c[k>
;>2]|0)>=0)break;c[o>>2]=(c[o>>2]|0)/10|0;c[n>>2]=(c[n>>2]|0)*10;c[k>>
;2]=(c[k>>2]|0)+1}if(c[m>>2]|0){r=Vb(c[m>>2]|0,c[n>>2]|0)|0;c[o>>2]=(c[o>
x3e;2]|0)+r}if(a[q>>0]|0)c[o>>2]=0-(c[o>>2]|0);c[c[h>>2]>>2]=c[p>>2];
c[g>>2]=c[o>>2];r=c[g>>2]|0;i=s;return r|0}function cq(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;q=i;i=i+32|0;j=q+20|0;k=q+16|0;l=q+12|0;m=q+8|0;n=q+24|0;p=q+4|0;o=q;c[j>>2]=b;c[k>
;>2]=e;c[l>>2]=f;c[m>>2]=g;a[n>>0]=h;c[p>>2]=0;Sp(c[j>>2]|0);c[o>>
;2]=c[c[j>>2]>>2];if((c[o>>2]|0)>>>0>=(c[(c[j>>2]|0)+8>>2]|
0)>>>0){g=c[p>>2]|0;i=q;return g|0}do if(a[n>>0]|0){if((d[c[o>>2]>>0]|0)==
60){c[o>>2]=(c[o>>2]|0)+1;break}c[p>>2]=3;g=c[p>>2]|0;i=q;return g|0}while(0);g=dq(o,c[(
c[j>>2]|0)+8>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;c[c[m>>2]>>2]=g;if(a[n>
;>0]|0){if((c[o>>2]|0)>>>0<(c[(c[j>>2]|0)+8>>2]|0)>>>0?(d[
c[o>>2]>>0]|0)!=62:0){c[p>>2]=3;g=c[p>>2]|0;i=q;return g|0}c[o>>2]=(c[o>
x3e;2]|0)+1}c[c[j>>2]>>2]=c[o>>2];g=c[p>>2]|0;i=q;return g|0}function dq(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;r=i;i=i+48|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0;n=r+16|0;p=r+12|0
;q=r+8|0;o=r+4|0;m=r;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[p>>2]=0;c[q>
;>2]=0;c[o>>2]=1;c[l>>2]=c[l>>2]<<1;c[n>>2]=c[c[h>>2]>>
;2];if((c[l>>2]|0)>>>0>((c[j>>2]|0)-(c[n>>2]|0)|0)>>>0)c[l>
;>2]=(c[j>>2]|0)-(c[n>>2]|0);while(1){if((c[p>>2]|0)>>>0>=(c[l>>
;2]|0)>>>0)break;c[m>>2]=d[(c[n>>2]|0)+(c[p>>2]|0)>>0];if(!((c[m>>
;2]|0)==32|(c[m>>2]|0)==13|(c[m>>2]|0)==10|(c[m>>2]|0)==9|(c[m>>2]|0)==12|(c[m>>
;2]|0)==0)){if((c[m>>2]|0)>>>0>=128)break;c[m>>2]=a[11579+(c[m>>2]&127)
x3e;>0];if((c[m>>2]|0)>>>0>=16)break;c[o>>2]=c[o>>2]<<4|c[m>
;>2];if(c[o>>2]&256|0){e=c[o>>2]&255;g=c[q>>2]|0;c[q>>2]=g+1;a[(c[k>
x3e;2]|0)+g>>0]=e;c[o>>2]=1}}c[p>>2]=(c[p>>2]|0)+1}if((c[o>>2]|0)==1){n=c[n>
;>2]|0;o=c[p>>2]|0;o=n+o|0;p=c[h>>2]|0;c[p>>2]=o;q=c[q>>2]|0;i=r;return q|0}g=c[o
x3e;>2]<<4&255;o=c[q>>2]|0;c[q>>2]=o+1;a[(c[k>>2]|0)+o>>0]=g;n=c[n
x3e;>2]|0;o=c[p>>2]|0;o=n+o|0;p=c[h>>2]|0;c[p>>2]=o;q=c[q>>2]|0;i=r;return q|0}function
eq(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;Sp(c[h>>2]|0);a=fq(c[h>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[g>>2]|0,c[f
x3e;>2]|0)|0;i=e;return a|0}function fq(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;t=
i;i=i+32|0;q=t+24|0;k=t+20|0;l=t+16|0;m=t+12|0;s=t+8|0;r=t+4|0;j=t+31|0;o=t+30|0;n=t+28|0;p=t;c[q>>2]=e;c[k>>
;2]=f;c[l>>2]=g;c[m>>2]=h;c[s>>2]=c[c[q>>2]>>2];c[r>>2]=0;a:do if((c
[s>>2]|0)>>>0<(c[k>>2]|0)>>>0){a[j>>0]=a[c[s>>2]>
;>0]|0;a[o>>0]=0;if((d[j>>0]|0)!=91){if((d[j>>0]|0)==123)a[o>>0]=125}else a[o>
x3e;0]=93;if(a[o>>0]|0)c[s>>2]=(c[s>>2]|0)+1;while(1){if((c[s>>2]|0)>>>0
x3e;=(c[k>>2]|0)>>>0)break a;Tp(s,c[k>>2]|0);if((c[s>>2]|0)>>>0>
;=(c[k>>2]|0)>>>0)break a;j=c[s>>2]|0;if((d[c[s>>2]>>0]|0)==(d[o>>
;0]|0)){e=11;break}c[p>>2]=j;if(c[m>>2]|0?(c[r>>2]|0)>=(c[l>>2]|0):0)break a;e=(bq(
s,c[k>>2]|0,0)|0)>>16&65535;if(c[m>>2]|0)j=(c[m>>2]|0)+(c[r>>2]<<
;1)|0;else j=n;b[j>>1]=e;if((c[p>>2]|0)==(c[s>>2]|0)){e=17;break}c[r>>2]=(c[r>>
;2]|0)+1;if(!(a[o>>0]|0))break a}if((e|0)==11){c[s>>2]=j+1;break}else if((e|0)==17){c[r>>2]=-1;break
}}while(0);c[c[q>>2]>>2]=c[s>>2];i=t;return c[r>>2]|0}function gq(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>
x3e;2]=d;c[g>>2]=e;Sp(c[k>>2]|0);d=hq(c[k>>2]|0,c[(c[k>>2]|0)+8>>2]|0,c[j>
;>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=f;return d|0}function hq(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;u=i;i=i+48|0;r=u+32|0;k=u+28|0;l=u+24|0;m=u+20|0;n=u+16|0;t=u+12|0;s=u+8|0;j=u+37
|0;p=u+36|0;o=u+4|0;q=u;c[r>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[t
x3e;>2]=c[c[r>>2]>>2];c[s>>2]=0;a:do if((c[t>>2]|0)>>>0<(c[k>
;>2]|0)>>>0){a[j>>0]=a[c[t>>2]>>0]|0;a[p>>0]=0;if((d[j>>0]|
0)!=91){if((d[j>>0]|0)==123)a[p>>0]=125}else a[p>>0]=93;if(a[p>>0]|0)c[t>>2]=(
c[t>>2]|0)+1;while(1){if((c[t>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break
a;Tp(t,c[k>>2]|0);if((c[t>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break a;
j=c[t>>2]|0;if((d[c[t>>2]>>0]|0)==(d[p>>0]|0)){b=11;break}c[q>>2]=j;if(c[m>
;>2]|0?(c[s>>2]|0)>=(c[l>>2]|0):0)break a;b=bq(t,c[k>>2]|0,c[n>>2]|0)|0;if(c[m
>>2]|0)j=(c[m>>2]|0)+(c[s>>2]<<2)|0;else j=o;c[j>>2]=b;if((c[q>>2]|0
)==(c[t>>2]|0)){b=17;break}c[s>>2]=(c[s>>2]|0)+1;if(!(a[p>>0]|0))break a}if((b|0)==11){c
[t>>2]=j+1;break}else if((b|0)==17){c[s>>2]=-1;break}}while(0);c[c[r>>2]>>2]=c[t>
x3e;2];i=u;return c[s>>2]|0}function iq(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;e=k+16|0;f=k+12|0;g=
k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;c[(c[f>>2]|0)+8>>2]=0;c[c[f>>2]>>
;2]=0;c[(c[f>>2]|0)+4>>2]=0;Sp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];c[j
x3e;>2]=c[(c[e>>2]|0)+8>>2];if((c[g>>2]|0)>>>0>=(c[j>>2]|0)>
;>>0){i=k;return}a:do switch(d[c[g>>2]>>0]|0|0){case 40:{c[(c[f>>2]|0)+8>>2]=2
;c[c[f>>2]>>2]=c[g>>2];if(!(Xp(g,c[j>>2]|0)|0))c[(c[f>>2]|0)+4>>2]=c
[g>>2];break}case 123:{c[(c[f>>2]|0)+8>>2]=3;c[c[f>>2]>>2]=c[g>>2];if
(!(Wp(g,c[j>>2]|0)|0))c[(c[f>>2]|0)+4>>2]=c[g>>2];break}case 91:{c[(c[f>>2]|0)+
8>>2]=3;c[h>>2]=1;b=c[g>>2]|0;c[g>>2]=b+1;c[c[f>>2]>>2]=b;c[c[e>
;>2]>>2]=c[g>>2];Sp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];while(1){if
((c[g>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break a;if(!((c[(c[e>>2]|0)+12
>>2]|0)!=0^1))break a;if((d[c[g>>2]>>0]|0|0)!=91){if((d[c[g>>2]>>0]|0|0)==93?(
c[h>>2]=(c[h>>2]|0)+-1,(c[h>>2]|0)<=0):0)break}else c[h>>2]=(c[h>>2]|0)+1
;c[c[e>>2]>>2]=c[g>>2];Vp(c[e>>2]|0);Sp(c[e>>2]|0);c[g>>2]=c[c[e>
;>2]>>2]}b=(c[g>>2]|0)+1|0;c[g>>2]=b;c[(c[f>>2]|0)+4>>2]=b;break}default:{
c[c[f>>2]>>2]=c[g>>2];c[(c[f>>2]|0)+8>>2]=(d[c[g>>2]>>0]|0
|0)==47?4:1;Vp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];if(!(c[(c[e>>2]|0)+12>>
;2]|0))c[(c[f>>2]|0)+4>>2]=c[g>>2]}}while(0);if(!(c[(c[f>>2]|0)+4>>2]|0)){c[c[
f>>2]>>2]=0;c[(c[f>>2]|0)+8>>2]=0}c[c[e>>2]>>2]=c[g>>2];i=
k;return}function jq(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;q=i;i=i+64|0;f=q+52|0;g=q+
48|0;h=q+44|0;j=q+40|0;m=q+28|0;n=q+24|0;o=q+20|0;k=q+16|0;l=q+12|0;p=q;c[f>>2]=a;c[g>>2]=b;c[h>>2
]=d;c[j>>2]=e;c[c[j>>2]>>2]=-1;iq(c[f>>2]|0,m);if((c[m+8>>2]|0)!=3){i=q;return
}c[n>>2]=c[c[f>>2]>>2];c[o>>2]=c[(c[f>>2]|0)+8>>2];c[k>>2]=
c[g>>2];c[l>>2]=(c[k>>2]|0)+((c[h>>2]|0)*12|0);c[c[f>>2]>>2]=(c[m>
;>2]|0)+1;c[(c[f>>2]|0)+8>>2]=(c[m+4>>2]|0)+-1;while(1){if((c[c[f>>2]>>2]|
0)>>>0>=(c[(c[f>>2]|0)+8>>2]|0)>>>0)break;iq(c[f>>2]|0,p);if(!(
c[p+8>>2]|0))break;if(c[g>>2]|0?(c[k>>2]|0)>>>0<(c[l>>2]|0)>>
;>0:0){b=c[k>>2]|0;c[b>>2]=c[p>>2];c[b+4>>2]=c[p+4>>2];c[b+8>>2
]=c[p+8>>2]}c[k>>2]=(c[k>>2]|0)+12}c[c[j>>2]>>2]=((c[k>>2]|0)-(c[g
x3e;>2]|0)|0)/12|0;c[c[f>>2]>>2]=c[n>>2];c[(c[f>>2]|0)+8>>2]=c[o>>
;2];i=q;return}function kq(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;H=i;i=i+128|0;k=H+112|0;l=H+108|0;m=H+104|0;n=H+100|0;o=H+96|0;D=H+84|0;r=H+80|0;v=H+76|
0;q=H+72|0;t=H+68|0;s=H+64|0;E=H+52|0;x=H+48|0;y=H+44|0;z=H+40|0;F=H+36|0;B=H+32|0;w=H+28|0;u=H+24|0;C=H+8|0;p=H+4|0;A=H;c[k>
;>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;iq(c[k>>2]|0,D);a:do if(c[
D+8>>2]|0){c[q>>2]=1;c[t>>2]=0;c[r>>2]=c[D>>2];c[v>>2]=c[D+4>
x3e;2];if((c[(c[l>>2]|0)+8>>2]|0)==7){c[x>>2]=c[c[k>>2]>>2];c[y>>2]=
c[(c[k>>2]|0)+8>>2];c[c[k>>2]>>2]=(c[D>>2]|0)+1;c[(c[k>>2]|0)+8>
;>2]=(c[D+4>>2]|0)+-1;iq(c[k>>2]|0,E);c[c[k>>2]>>2]=c[x>>2];c[(c[k>
x3e;2]|0)+8>>2]=c[y>>2];if((c[E+8>>2]|0)==3)G=5}else if((c[D+8>>2]|0)==3)G=5;if((G|0)==5
){if(!(c[n>>2]|0))break;c[q>>2]=c[n>>2];c[t>>2]=1;c[r>>2]=(c[r>>2]|0
)+1;c[v>>2]=(c[v>>2]|0)+-1}b:while(1){if((c[q>>2]|0)>>>0<=0){G=32;break}c[z>
;>2]=(c[(c[m>>2]|0)+(c[t>>2]<<2)>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0
);Tp(r,c[v>>2]|0);switch(c[(c[l>>2]|0)+8>>2]|0){case 1:{c[F>>2]=lq(r,c[v>>2]|0
)|0;G=13;break}case 3:{c[F>>2]=bq(r,c[v>>2]|0,0)|0;G=13;break}case 4:{c[F>>2]=bq(r,c[v>>
2]|0,3)|0;G=13;break}case 2:{c[F>>2]=_p(r,c[v>>2]|0)|0;G=13;break}case 6:case 5:{c[w>>2]=c[(c[k>
;>2]|0)+16>>2];c[u>>2]=(c[v>>2]|0)-(c[r>>2]|0);if((c[r>>2]|0)>>
x3e;0<(c[v>>2]|0)>>>0){if((c[D+8>>2]|0)==4){c[u>>2]=(c[u>>2]|0)+-1;c
[r>>2]=(c[r>>2]|0)+1}else{if((c[D+8>>2]|0)!=2){G=23;break b}c[r>>2]=(c[r>>2]|0
)+1;c[u>>2]=(c[u>>2]|0)-2}if(c[c[z>>2]>>2]|0){Fb(c[w>>2]|0,c[c[z>>2]
x3e;>2]|0);c[c[z>>2]>>2]=0;c[c[z>>2]>>2]=0}c[B>>2]=bc(c[w>>2]|0
,(c[u>>2]|0)+1|0,s)|0;if(c[s>>2]|0){G=33;break b}Ss(c[B>>2]|0,c[r>>2]|0,c[u>>2
]|0)|0;a[(c[B>>2]|0)+(c[u>>2]|0)>>0]=0;c[c[z>>2]>>2]=c[B>>2]}break}case
7:{c[p>>2]=c[z>>2];c[A>>2]=hq(r,c[v>>2]|0,4,C,0)|0;if((c[A>>2]|0)<0){G=29
;break b}E=Tb(c[C>>2]|0)|0;c[c[p>>2]>>2]=E;E=Tb(c[C+4>>2]|0)|0;c[(c[p>>2]|0)+4
>>2]=E;E=Tb(c[C+8>>2]|0)|0;c[(c[p>>2]|0)+8>>2]=E;E=Tb(c[C+12>>2]|0)|0;c[(c[p
x3e;>2]|0)+12>>2]=E;break}default:break a}c:do if((G|0)==13){G=0;switch(d[(c[l>>2]|0)+20>>0]|
0|0){case 1:{a[c[z>>2]>>0]=c[F>>2];break c}case 2:{b[c[z>>2]>>1]=c[F>>
;2];break c}case 4:{c[c[z>>2]>>2]=c[F>>2];break c}default:{c[c[z>>2]>>2]=c[F
x3e;>2];break c}}}while(0);c[q>>2]=(c[q>>2]|0)+-1;c[t>>2]=(c[t>>2]|0)+1}if((G|0)==23
){c[s>>2]=3;G=c[s>>2]|0;i=H;return G|0}else if((G|0)==29){c[s>>2]=3;G=c[s>>2]|0;i=H;return
G|0}else if((G|0)==32){c[o>>2]=c[o>>2];c[s>>2]=0;G=c[s>>2]|0;i=H;return G|0}else if((G|
0)==33){G=c[s>>2]|0;i=H;return G|0}}while(0);c[s>>2]=3;G=c[s>>2]|0;i=H;return G|0}function lq(b,e){
b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;f=l+8|0;g=l+4|0;h=l;j=l+12|0;c[f>>2]=b;c[g>>2]=e;c[h>
;>2]=c[c[f>>2]>>2];a[j>>0]=0;if((((((c[h>>2]|0)+3|0)>>>0<(c[g
x3e;>2]|0)>>>0?(d[c[h>>2]>>0]|0|0)==116:0)?(d[(c[h>>2]|0)+1>>0]|0|0)==
114:0)?(d[(c[h>>2]|0)+2>>0]|0|0)==117:0)?(d[(c[h>>2]|0)+3>>0]|0|0)==101:0){a[j>>
;0]=1;c[h>>2]=(c[h>>2]|0)+5}else k=7;if(((((((k|0)==7?((c[h>>2]|0)+4|0)>>>0<(c
[g>>2]|0)>>>0:0)?(d[c[h>>2]>>0]|0|0)==102:0)?(d[(c[h>>2]|0)+1>>
0]|0|0)==97:0)?(d[(c[h>>2]|0)+2>>0]|0|0)==108:0)?(d[(c[h>>2]|0)+3>>0]|0|0)==115:0)?(d[(c
[h>>2]|0)+4>>0]|0|0)==101:0){a[j>>0]=0;c[h>>2]=(c[h>>2]|0)+6}c[c[f>>
2]>>2]=c[h>>2];i=l;return d[j>>0]|0|0}function mq(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;v=i;i=i+464|0;j=v+456|0;k=v+452|0;l=v+448|0;m=v+444|0;n=v+440|0;o=v+56|0;u=v+52
|0;r=v+48|0;p=v+44|0;s=v+40|0;t=v+36|0;q=v;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n
x3e;>2]=h;c[p>>2]=0;e=q;g=c[k>>2]|0;f=e+36|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while
((e|0)<(f|0));c[q+8>>2]=2;if(!((c[(c[k>>2]|0)+8>>2]|0)!=9?(c[(c[k>>2]|0)+8>>
;2]|0)!=7:0))c[q+8>>2]=3;jq(c[j>>2]|0,o,32,r);if((c[r>>2]|0)<0){c[p>>2]=162;u=c[p
x3e;>2]|0;i=v;return u|0}if((c[r>>2]|0)>>>0>(c[(c[k>>2]|0)+24>>2]|0)>
;>>0)c[r>>2]=c[(c[k>>2]|0)+24>>2];c[s>>2]=c[c[j>>2]>>2];c[
t>>2]=c[(c[j>>2]|0)+8>>2];if((c[(c[k>>2]|0)+8>>2]|0)!=7?c[(c[k>>2]|0
)+28>>2]|0:0)a[(c[c[l>>2]>>2]|0)+(c[(c[k>>2]|0)+28>>2]|0)>>0]=c[r>
;>2];c[u>>2]=o;while(1){if((c[r>>2]|0)<=0)break;c[c[j>>2]>>2]=c[c[u>>
;2]>>2];c[(c[j>>2]|0)+8>>2]=c[(c[u>>2]|0)+4>>2];kq(c[j>>2]|0,q,c[l
x3e;>2]|0,c[m>>2]|0,0)|0;o=q+16|0;c[o>>2]=(c[o>>2]|0)+(d[q+20>>0]|0);c[r>>
;2]=(c[r>>2]|0)+-1;c[u>>2]=(c[u>>2]|0)+12}c[n>>2]=c[n>>2];c[c[j>>2]
x3e;>2]=c[s>>2];c[(c[j>>2]|0)+8>>2]=c[t>>2];u=c[p>>2]|0;i=v;return u|0}function
nq(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;h=n+16|0;o=n+12|0;j=n+8|0;k=n+4|0;l=n+
20|0;m=n;c[h>>2]=b;c[o>>2]=d;c[j>>2]=e;c[k>>2]=f;a[l>>0]=g;c[(c[h>>2
]|0)+64>>2]=0;a[(c[h>>2]|0)+68>>0]=1;c[(c[h>>2]|0)+4>>2]=c[o>>2];c[(
c[h>>2]|0)+8>>2]=c[k>>2];c[c[h>>2]>>2]=c[(c[o>>2]|0)+100>>
2];if(c[k>>2]|0?(c[m>>2]=c[c[(c[k>>2]|0)+156>>2]>>2],c[(c[h>>2]|0)+12
>>2]=c[m>>2],c[(c[h>>2]|0)+16>>2]=(c[m>>2]|0)+20,c[(c[h>>2]|0)+20>
;>2]=(c[m>>2]|0)+56,dc(c[m>>2]|0),c[(c[h>>2]|0)+76>>2]=c[(c[j>>2]|0)+40
x3e;>2],c[(c[h>>2]|0)+72>>2]=0,a[l>>0]|0):0)c[(c[h>>2]|0)+72>>2]=c[(c[(c[
k>>2]|0)+156>>2]|0)+36>>2];c[(c[h>>2]|0)+24>>2]=0;c[(c[h>>2]|0)+28
x3e;>2]=0;c[(c[h>>2]|0)+32>>2]=0;c[(c[h>>2]|0)+32+4>>2]=0;c[(c[h>>2]|0)+40
>>2]=0;c[(c[h>>2]|0)+40+4>>2]=0;o=(c[h>>2]|0)+80|0;c[o>>2]=c[1111];c[o+4>
x3e;2]=c[1112];c[o+8>>2]=c[1113];c[o+12>>2]=c[1114];c[o+16>>2]=c[1115];c[o+20>>2]=c[1116
];c[o+24>>2]=c[1117];c[o+28>>2]=c[1118];i=n;return}function oq(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0
;d=e;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+8>>2];if(!(c[d>>2]|0)){i=e;return}d=(c[d
x3e;>2]|0)+108|0;a=c[(c[b>>2]|0)+16>>2]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4
>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>
;>2];i=e;return}function pq(a,d){a=a|0;d=d|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]=
d;if(!(c[f>>2]|0)){d=0;i=g;return d|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20+2>>1]|0)+(b[(c[(
c[e>>2]|0)+12>>2]|0)+56+2>>1]|0)+(c[f>>2]|0)|0)>>>0<=(c[(c[(c[e>
;>2]|0)+12>>2]|0)+4>>2]|0)>>>0){d=0;i=g;return d|0}d=kc(c[(c[e>>2]|0)+12>
x3e;2]|0,c[f>>2]|0,0)|0;i=g;return d|0}function qq(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;p=i;i=i+32|0;q=p+20|0;j=p+16|0;k=p+12|0;l=p+24|0;n=p+8|0;o=p+4|0;m=p;c[q>>2]=e;c[j>>2]=f;c[k>>2]=
g;a[l>>0]=h;c[n>>2]=c[(c[q>>2]|0)+20>>2];if(!(a[(c[q>>2]|0)+68>>0]|0
)){q=c[n>>2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}c[o>
;>2]=(c[(c[n>>2]|0)+4>>2]|0)+(b[(c[n>>2]|0)+2>>1]<<3);c[m>>2]=(
c[(c[n>>2]|0)+8>>2]|0)+(b[(c[n>>2]|0)+2>>1]|0);q=(Tb(c[j>>2]|0)|0)>>
16;c[c[o>>2]>>2]=q;q=(Tb(c[k>>2]|0)|0)>>16;c[(c[o>>2]|0)+4>>2]=q;a[c
[m>>2]>>0]=d[l>>0]|0?1:2;q=c[n>>2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16
x3e;>16;b[q>>1]=g;i=p;return}function rq(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;e=j+12|0;f
=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=pq(c[e>>2]|0,1)|0;if(
c[h>>2]|0){d=c[h>>2]|0;i=j;return d|0}qq(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0,1);d=c[
h>>2]|0;i=j;return d|0}function sq(d){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[e>
;>2]=d;c[h>>2]=c[(c[e>>2]|0)+20>>2];if(!(c[h>>2]|0)){c[f>>2]=3;h=c[f>
;>2]|0;i=j;return h|0}if(!(a[(c[e>>2]|0)+68>>0]|0)){h=c[h>>2]|0;b[h>>1]=(b[h>
x3e;1]|0)+1<<16>>16;c[f>>2]=0;h=c[f>>2]|0;i=j;return h|0}if(((b[(c[(c[e>>2]|0)+
12>>2]|0)+20>>1]|0)+(b[(c[(c[e>>2]|0)+12>>2]|0)+56>>1]|0)+1|0)>>>
;0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+8>>2]|0)>>>0)e=0;else e=kc(c[(c[e>>2
]|0)+12>>2]|0,0,1)|0;c[g>>2]=e;if(!(c[g>>2]|0)){if((b[c[h>>2]>>1]|0)>0)b[(
c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>>1]|0)-1<<1)>>1]=(b[(c[h>
x3e;2]|0)+2>>1]|0)-1;h=c[h>>2]|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}c[f
x3e;>2]=c[g>>2];h=c[f>>2]|0;i=j;return h|0}function tq(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=3;if((c
[(c[e>>2]|0)+64>>2]|0)==3){c[h>>2]=0;d=c[h>>2]|0;i=j;return d|0}c[(c[e>>2]|0)+
64>>2]=3;c[h>>2]=sq(c[e>>2]|0)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=j;return d|0}c[h
x3e;>2]=rq(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;d=c[h>>2]|0;i=j;return d|0}function uq(
a){a=a|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;l=k+20|0;j=k+16|0;h=k+12|0;f=k+8|0;g=k+4|0;e=k;c[l>>2]=a;c[j>
;>2]=c[(c[l>>2]|0)+20>>2];if(!(c[j>>2]|0)){i=k;return}if((b[c[j>>2]>>1]|0
)<=1)a=0;else a=(b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>1]|0)-2<<1)>
;>1]|0)+1|0;c[h>>2]=a;if((((b[(c[j>>2]|0)+2>>1]|0)>1?(c[f>>2]=(c[(c[j>>
;2]|0)+4>>2]|0)+(c[h>>2]<<3),c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(b[(c[j
>>2]|0)+2>>1]<<3)+-8,c[e>>2]=(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>
x3e;2]|0)+2>>1]|0)+-1,(c[c[f>>2]>>2]|0)==(c[c[g>>2]>>2]|0)):0)?(c[(c[f>
x3e;2]|0)+4>>2]|0)==(c[(c[g>>2]|0)+4>>2]|0):0)?(d[c[e>>2]>>0]|0)==1:0){l=(c[j
x3e;>2]|0)+2|0;b[l>>1]=(b[l>>1]|0)+-1<<16>>16}if((b[c[j>>2]>>1]|
0)<=0){i=k;return}a=c[j>>2]|0;if((c[h>>2]|0)==((b[(c[j>>2]|0)+2>>1]|0)-1|0)){b[a>
;>1]=(b[a>>1]|0)+-1<<16>>16;l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>>1]|
0)+-1<<16>>16;i=k;return}else{b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>
;1]|0)-1<<1)>>1]=(b[a+2>>1]|0)-1;i=k;return}}function vq(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;x=i;i=i+64|0;m=x+44|0;n=x+40|0;o=x+36
|0;p=x+32|0;q=x+28|0;r=x+24|0;s=x+20|0;t=x+48|0;u=x+16|0;v=x+12|0;w=x+8|0;z=x+4|0;y=x;c[n>>2]=b;c[o>>2]=d;c[
p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=h;a[t>>0]=j;c[u>>2]=k;c[v>
x3e;2]=l;Ns(c[n>>2]|0,0,1500)|0;c[w>>2]=0;c[z>>2]=c[(c[o>>2]|0)+96>>2];c[y>
;>2]=Vd(c[z>>2]|0,71003)|0;c[w>>2]=c[y>>2];if(c[w>>2]|0){c[(c[n>>2]|0)+1348
>>2]=c[w>>2];nq(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,a[t>>
;0]|0);c[(c[n>>2]|0)+1352>>2]=c[(c[o>>2]|0)+16>>2];c[(c[n>>2]|0)+1356>>
;2]=c[r>>2];c[(c[n>>2]|0)+1468>>2]=c[u>>2];c[(c[n>>2]|0)+1464>>2]=c[
s>>2];c[(c[n>>2]|0)+1472>>2]=c[v>>2];z=(c[n>>2]|0)+1476|0;c[z>>2]=c[
1119];c[z+4>>2]=c[1120];c[z+8>>2]=c[1121];c[m>>2]=0;z=c[m>>2]|0;i=x;return z|0}else{c[m
x3e;>2]=7;z=c[m>>2]|0;i=x;return z|0}return 0}function wq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=
a;oq(c[d>>2]|0);i=b;return}function xq(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;Y=i;i=
i+176|0;k=Y+156|0;l=Y+152|0;h=Y+148|0;j=Y+144|0;v=Y+140|0;W=Y+136|0;C=Y+132|0;F=Y+128|0;s=Y+124|0;U=Y+120|0;V=Y+116|0;L=Y+112|0;
M=Y+108|0;D=Y+104|0;R=Y+100|0;E=Y+160|0;N=Y+96|0;w=Y+92|0;Q=Y+88|0;K=Y+84|0;S=Y+80|0;O=Y+76|0;n=Y+72|0;x=Y+68|0;o=Y+64|0;J=Y+60|
0;H=Y+56|0;G=Y+52|0;t=Y+48|0;T=Y+44|0;P=Y+40|0;y=Y+36|0;p=Y+32|0;z=Y+28|0;q=Y+24|0;A=Y+20|0;r=Y+16|0;m=Y+12|0;I=Y+8|0;B=Y+4|0;u=
Y;c[l>>2]=e;c[h>>2]=f;c[j>>2]=g;c[s>>2]=c[l>>2];c[D>>2]=0;c[R>
x3e;2]=0;c[N>>2]=N^l^h;e=(c[N>>2]^c[N>>2]>>10^c[N>>2]>>20)&65535
;c[N>>2]=e;c[N>>2]=(c[N>>2]|0)==0?29572:e;c[(c[l>>2]|0)+1136>>2]=(c[l>>
;2]|0)+112;c[(c[l>>2]|0)+1344>>2]=(c[l>>2]|0)+1140;c[W>>2]=(c[l>>2]|0)+1140;c[(
c[s>>2]|0)+64>>2]=0;c[w>>2]=c[(c[s>>2]|0)+72>>2];if((c[(c[l>>2]|0)+1492
>>2]|0)>>>0>0)Ns(c[(c[l>>2]|0)+1488>>2]|0,0,c[(c[l>>2]|0)+1492>
x3e;2]<<2|0)|0;c[(c[W>>2]|0)+4>>2]=c[h>>2];e=(c[h>>2]|0)+(c[j>>2]|0)|
0;c[(c[W>>2]|0)+8>>2]=e;c[F>>2]=e;e=c[(c[W>>2]|0)+4>>2]|0;c[c[W>>2]
x3e;>2]=e;c[C>>2]=e;c[v>>2]=0;e=c[(c[s>>2]|0)+24>>2]|0;c[L>>2]=e;c[U>
;>2]=e;e=c[(c[s>>2]|0)+28>>2]|0;c[M>>2]=e;c[V>>2]=e;if(c[w>>2]|0)Va[c[(c[
w>>2]|0)+4>>2]&63](c[c[w>>2]>>2]|0);a[E>>0]=0;a:while(1){if((c[C>>
;2]|0)>>>0>=(c[F>>2]|0)>>>0){X=186;break}c[Q>>2]=c[(c[l>>2]|0)+
1136>>2];c[K>>2]=0;c[S>>2]=0;e=c[C>>2]|0;c[C>>2]=e+1;b:do switch(d[e>>
;0]|0){case 1:{c[K>>2]=16;break}case 3:{c[K>>2]=18;break}case 4:{c[K>>2]=14;break}case 5:{c[K>
;>2]=9;break}case 6:{c[K>>2]=6;break}case 7:{c[K>>2]=13;break}case 8:{c[K>>2]=11;break}case 9
:{c[K>>2]=5;break}case 10:{c[K>>2]=22;break}case 11:{c[K>>2]=24;break}case 13:{c[K>>2]=2
;break}case 14:{c[K>>2]=1;break}case 15:{c[K>>2]=26;break}case 21:{c[K>>2]=10;break}case 22:{c[K
x3e;>2]=7;break}case 30:{c[K>>2]=12;break}case 31:{c[K>>2]=8;break}case 12:{if((c[C>>2]|0)>
;>>0>(c[F>>2]|0)>>>0)break a;e=c[C>>2]|0;c[C>>2]=e+1;switch(d[e>
;>0]|0){case 0:{c[K>>2]=15;break b}case 1:{c[K>>2]=19;break b}case 2:{c[K>>2]=17;break b}case
6:{c[K>>2]=3;break b}case 7:{c[K>>2]=4;break b}case 12:{c[K>>2]=20;break b}case 16:{c[K>>
;2]=21;break b}case 17:{c[K>>2]=23;break b}case 33:{c[K>>2]=25;break b}default:break a}}case 255:{if(((c[C
x3e;>2]|0)+4|0)>>>0>(c[F>>2]|0)>>>0)break a;c[S>>2]=d[c[C>>
;2]>>0]<<24|d[(c[C>>2]|0)+1>>0]<<16|d[(c[C>>2]|0)+2>>0]<
;<8|d[(c[C>>2]|0)+3>>0];c[C>>2]=(c[C>>2]|0)+4;h=(a[E>>0]|0)!=0;if((c[S>
;>2]|0)>32e3|(c[S>>2]|0)<-32e3){if(h)break b;a[E>>0]=1;break b}else{if(h)break b;c[S>>
;2]=c[S>>2]<<16;break b}}default:{if((d[(c[C>>2]|0)+-1>>0]|0)<32)break a;h=c[C>
;>2]|0;do if((d[(c[C>>2]|0)+-1>>0]|0)>=247){e=h+1|0;c[C>>2]=e;if(e>>>0>
;(c[F>>2]|0)>>>0)break a;h=d[(c[C>>2]|0)+-2>>0]|0;if((d[(c[C>>2]|0)+-2>
;>0]|0)<251){c[S>>2]=(h-247<<8)+(d[(c[C>>2]|0)+-1>>0]|0)+108;break}else{c[S>
;>2]=0-((h-251<<8)+(d[(c[C>>2]|0)+-1>>0]|0)+108);break}}else c[S>>2]=(d[h+-1>
x3e;0]|0)-139;while(0);if(!(a[E>>0]|0))c[S>>2]=c[S>>2]<<16}}while(0);c:do if((c[R>
x3e;2]|0)>0){switch(c[K>>2]|0){case 23:case 0:case 24:case 22:break c;default:{}}c[R>>2]=0}while(0);if(!((
d[E>>0]|0)==0|(c[K>>2]|0)==0|(c[K>>2]|0)==20))a[E>>0]=0;if(!(c[K>>2]|0)){if((((
c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)>=256)break;g=c[S>>2]|0;e=c[Q>>2]|0;c[Q>
x3e;2]=e+4;c[e>>2]=g;c[(c[l>>2]|0)+1136>>2]=c[Q>>2];continue}if((c[K>>2]|0)==21
){if((((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)<2){X=188;break}c[Q>>2]=(c[Q>>2]|0)+-
8;c[O>>2]=c[(c[Q>>2]|0)+4>>2]>>16;c[n>>2]=c[c[Q>>2]>>2]>
;>16;if((c[n>>2]|0)>(((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)){X=188;break}c[Q>>
;2]=(c[Q>>2]|0)+(0-(c[n>>2]|0)<<2);c[D>>2]=0;c[R>>2]=0;do switch(c[O>>
;2]|0){case 1:{if(c[n>>2]|0)break a;c[(c[l>>2]|0)+1400>>2]=1;c[(c[l>>2]|0)+1404>>
;2]=0;e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}e=pq(c[s>
;>2]|0,6)|0;c[v>>2]=e;if(e|0){X=186;break a}break}case 2:{if(c[n>>2]|0)break a;g=(c[l>>2]|0)+
1404|0;e=c[g>>2]|0;c[g>>2]=e+1;c[x>>2]=e;if((c[x>>2]|0)>0&(c[x>>2]|0
)<7)qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,((c[x>>2]|0)==3?1:(c[x>>2]|0)==6)&
;1);break}case 0:{if((c[n>>2]|0)!=3)break a;if(!(c[(c[l>>2]|0)+1400>>2]|0))break a;if((c[(c[l>
;>2]|0)+1404>>2]|0)!=7)break a;c[c[Q>>2]>>2]=c[U>>2];c[(c[Q>>2]|0)+4>
;>2]=c[V>>2];c[D>>2]=2;break}case 3:{if((c[n>>2]|0)!=1)break a;c[D>>2]=1;if(c[w>
;>2]|0)Ra[c[(c[w>>2]|0)+20>>2]&7](c[c[w>>2]>>2]|0,b[(c[(c[s>>2]|0)+20
>>2]|0)+2>>1]|0);break}case 13:case 12:{c[Q>>2]=(c[l>>2]|0)+112;break}case 18:case 17:case
16:case 15:case 14:{c[o>>2]=c[(c[l>>2]|0)+1464>>2];if(!(c[o>>2]|0))break a;c[J>>
;2]=(c[O>>2]|0)-13+((c[O>>2]|0)==18&1);if((c[n>>2]|0)!=(_(c[J>>2]|0,c[c[o>>
;2]>>2]|0)|0))break a;c[t>>2]=(c[Q>>2]|0)+(c[J>>2]<<2);c[T>>2]=c[Q
x3e;>2];c[H>>2]=0;while(1){if((c[H>>2]|0)>>>0>=(c[J>>2]|0)>>>
;0)break;c[P>>2]=c[c[T>>2]>>2];c[G>>2]=1;while(1){if((c[G>>2]|0)>>
x3e;0>=(c[c[o>>2]>>2]|0)>>>0)break;e=c[t>>2]|0;c[t>>2]=e+4;e=Mb(c[e
x3e;>2]|0,c[(c[(c[o>>2]|0)+136>>2]|0)+(c[G>>2]<<2)>>2]|0)|0;c[P>>
;2]=(c[P>>2]|0)+e;c[G>>2]=(c[G>>2]|0)+1}g=c[P>>2]|0;e=c[T>>2]|0;c[T>>
;2]=e+4;c[e>>2]=g;c[H>>2]=(c[H>>2]|0)+1}c[D>>2]=c[J>>2];break}case 19:{c[p>
;>2]=c[(c[l>>2]|0)+1464>>2];if((c[n>>2]|0)!=1|(c[p>>2]|0)==0)break a;c[y>>
;2]=c[c[Q>>2]>>2]>>16;if((c[y>>2]|0)<0)break a;if(((c[y>>2]|0)+(c[c[p>
;>2]>>2]|0)|0)>>>0>(c[(c[l>>2]|0)+1492>>2]|0)>>>0)break a;
Ss((c[(c[l>>2]|0)+1488>>2]|0)+(c[y>>2]<<2)|0,c[(c[p>>2]|0)+136>>2]|0
,c[c[p>>2]>>2]<<2|0)|0;break}case 20:{if((c[n>>2]|0)!=2)break a;e=c[Q>>2]|0;c[
e>>2]=(c[e>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);c[D>>2]=1;break}case 21:{if((c[n>
;>2]|0)!=2)break a;e=c[Q>>2]|0;c[e>>2]=(c[e>>2]|0)-(c[(c[Q>>2]|0)+4>>2]|0
);c[D>>2]=1;break}case 22:{if((c[n>>2]|0)!=2)break a;e=Mb(c[c[Q>>2]>>2]|0,c[(c[Q>
x3e;2]|0)+4>>2]|0)|0;c[c[Q>>2]>>2]=e;c[D>>2]=1;break}case 23:{if((c[n>>2]|0)!=
2)break a;if(!(c[(c[Q>>2]|0)+4>>2]|0))break a;e=Vb(c[c[Q>>2]>>2]|0,c[(c[Q>>2]|
0)+4>>2]|0)|0;c[c[Q>>2]>>2]=e;c[D>>2]=1;break}case 24:{c[q>>2]=c[(c[l>>
;2]|0)+1464>>2];if((c[n>>2]|0)!=2|(c[q>>2]|0)==0)break a;c[z>>2]=c[(c[Q>>2]|0)+
4>>2]>>16;if((c[z>>2]|0)<0)break a;if((c[z>>2]|0)>>>0>=(c[(c[l
x3e;>2]|0)+1492>>2]|0)>>>0)break a;c[(c[(c[l>>2]|0)+1488>>2]|0)+(c[z>>
;2]<<2)>>2]=c[c[Q>>2]>>2];break}case 25:{c[r>>2]=c[(c[l>>2]|0)+1464
x3e;>2];if((c[n>>2]|0)!=1|(c[r>>2]|0)==0)break a;c[A>>2]=c[c[Q>>2]>>2]>
;>16;if((c[A>>2]|0)<0)break a;if((c[A>>2]|0)>>>0>=(c[(c[l>>2]|0)+1492
>>2]|0)>>>0)break a;c[c[Q>>2]>>2]=c[(c[(c[l>>2]|0)+1488>>2]|0)+(
c[A>>2]<<2)>>2];c[D>>2]=1;break}case 27:{if((c[n>>2]|0)!=4)break a;if((c[(c[Q
x3e;>2]|0)+8>>2]|0)>(c[(c[Q>>2]|0)+12>>2]|0))c[c[Q>>2]>>2]=c[(c[Q>
;>2]|0)+4>>2];c[D>>2]=1;break}case 28:{if(c[n>>2]|0)break a;c[m>>2]=c[N>>
2];if((c[m>>2]|0)>=32768)c[m>>2]=(c[m>>2]|0)+1;c[c[Q>>2]>>2]=c[m>>
;2];c[N>>2]=Mb(c[N>>2]|0,65536-(c[N>>2]|0)|0)|0;if(!(c[N>>2]|0))c[N>>2]=(c[N
x3e;>2]|0)+10355;c[D>>2]=1;break}default:c[R>>2]=c[n>>2]}while(0);c[Q>>2]=(c[Q>
;>2]|0)+(c[D>>2]<<2);c[(c[l>>2]|0)+1136>>2]=c[Q>>2];continue}c[I>>
;2]=c[4488+(c[K>>2]<<2)>>2];if((((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)<(
c[I>>2]|0)){X=188;break}c[Q>>2]=(c[Q>>2]|0)+(0-(c[I>>2]|0)<<2);d:do switch(c[K
>>2]|0){case 1:{X=121;break a}case 3:{X=127;break a}case 2:{c[(c[s>>2]|0)+64>>2]=1;e=(c[s>>
;2]|0)+32|0;c[e>>2]=(c[e>>2]|0)+(c[c[Q>>2]>>2]|0);c[(c[s>>2]|0)+40>>
2]=c[(c[Q>>2]|0)+4>>2];c[(c[s>>2]|0)+40+4>>2]=0;e=(c[(c[s>>2]|0)+24>>
;2]|0)+(c[c[Q>>2]>>2]|0)|0;c[U>>2]=e;c[L>>2]=e;e=c[(c[s>>2]|0)+28>>2
]|0;c[V>>2]=e;c[M>>2]=e;c[M>>2]=c[M>>2];if(a[(c[s>>2]|0)+70>>0]|0){X
=126;break a}break}case 4:{c[(c[s>>2]|0)+64>>2]=1;e=(c[s>>2]|0)+32|0;c[e>>2]=(c[e>
x3e;2]|0)+(c[c[Q>>2]>>2]|0);e=(c[s>>2]|0)+32+4|0;c[e>>2]=(c[e>>2]|0)+(c[(c[Q
x3e;>2]|0)+4>>2]|0);c[(c[s>>2]|0)+40>>2]=c[(c[Q>>2]|0)+8>>2];c[(c[s>
x3e;2]|0)+40+4>>2]=c[(c[Q>>2]|0)+12>>2];c[U>>2]=(c[(c[s>>2]|0)+24>>2
]|0)+(c[c[Q>>2]>>2]|0);c[V>>2]=(c[(c[s>>2]|0)+28>>2]|0)+(c[(c[Q>>2]|
0)+4>>2]|0);if(a[(c[s>>2]|0)+70>>0]|0){X=129;break a}break}case 5:{if(!((c[(c[s>>2]|0)+64
>>2]|0)!=3?(c[(c[s>>2]|0)+64>>2]|0)!=2:0))uq(c[s>>2]|0);c[(c[s>>2]|0)+64>
x3e;2]=1;break}case 6:{X=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=X;if(X|0){X=186;break
a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);X=144;break}case 7:{c[U>>2]=(c[U>
;>2]|0)+(c[c[Q>>2]>>2]|0);if(!(c[(c[l>>2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|
0)+64>>2]|0))break a;c[(c[s>>2]|0)+64>>2]=2}break}case 8:{e=tq(c[s>>2]|0,c[U>>
2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){
X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);qq(c[s>>2]|0,c[U>>
;2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);c[V>>
2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2
]|0,0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+12>>2]|0);qq(c[s>>2]|0,c[U>>
;2]|0,c[V>>2]|0,1);break}case 9:{X=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=
X;if(X|0){X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);c[V>>2]=(c[V>
;>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);X=144;break}case 10:{c[U>>2]=(c[U>>2]|0)+(c[c[Q>
;>2]>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);if(!(c[(c[l>
x3e;2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|0)+64>>2]|0))break a;c[(c[s>>2]|0)+64>>
2]=2}break}case 11:{e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break
a}e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>
x3e;2]>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);qq(c[s>>2]|
0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);
c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+12>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,
c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+16>>2]|0);c[V>>2]=(c
[V>>2]|0)+(c[(c[Q>>2]|0)+20>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,
1);break}case 12:{e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}
e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){X=186;break a}c[V>>2]=(c[V>>2]|0)+(c[c[Q>>
;2]>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(
c[(c[Q>>2]|0)+4>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);qq
(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+
12>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,1);break}case 13:{X=tq(c[s>>2]|0,c[
U>>2]|0,c[V>>2]|0)|0;c[v>>2]=X;if(X|0){X=186;break a}c[V>>2]=(c[V>>2]|0)+(c[c[
Q>>2]>>2]|0);X=144;break}case 14:{c[V>>2]=(c[V>>2]|0)+(c[c[Q>>2]>>2]|
0);if(!(c[(c[l>>2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|0)+64>>2]|0))break a;c[(c[s>>
;2]|0)+64>>2]=2}break}case 20:{e=Vb(c[c[Q>>2]>>2]|0,c[(c[Q>>2]|0)+4>>2]|0)|0;c
[c[Q>>2]>>2]=e;c[Q>>2]=(c[Q>>2]|0)+4;a[E>>0]=0;break}case 22:{c[B>>2
]=c[c[Q>>2]>>2]>>16;if((c[B>>2]|0)<0)break a;if((c[B>>2]|0)>=(c[(c[l
>>2]|0)+1364>>2]|0))break a;if((((c[W>>2]|0)-((c[l>>2]|0)+1140)|0)/12|0|0)>=16)break
a;c[c[W>>2]>>2]=c[C>>2];c[W>>2]=(c[W>>2]|0)+12;c[(c[W>>2]|0)+4>
;>2]=c[(c[(c[l>>2]|0)+1368>>2]|0)+(c[B>>2]<<2)>>2];if(c[(c[l>>2
]|0)+1372>>2]|0)c[(c[W>>2]|0)+8>>2]=(c[(c[W>>2]|0)+4>>2]|0)+(c[(c[(c[l>
x3e;2]|0)+1372>>2]|0)+(c[B>>2]<<2)>>2]|0);else{if((c[(c[l>>2]|0)+1360>>
;2]|0)>=0)h=c[(c[l>>2]|0)+1360>>2]|0;else h=0;e=(c[W>>2]|0)+4|0;c[e>>2]=(c[e>
x3e;2]|0)+h;c[(c[W>>2]|0)+8>>2]=c[(c[(c[l>>2]|0)+1368>>2]|0)+((c[B>>2]|0)+1<
;<2)>>2]}c[c[W>>2]>>2]=c[(c[W>>2]|0)+4>>2];if(!(c[(c[W>>2]|0)+4
>>2]|0))break a;c[(c[l>>2]|0)+1344>>2]=c[W>>2];c[C>>2]=c[(c[W>>2]|0)+
4>>2];c[F>>2]=c[(c[W>>2]|0)+8>>2];break}case 23:{if((c[D>>2]|0)>0){c[D>
;>2]=(c[D>>2]|0)+-1;break d}if(!(c[R>>2]|0))break a;c[R>>2]=(c[R>>2]|0)+-1;c[Q>
;>2]=(c[Q>>2]|0)+4;break}case 24:{if((c[W>>2]|0)>>>0<=((c[l>>2]|0)+1140|0
)>>>0)break a;c[W>>2]=(c[W>>2]|0)+-12;c[C>>2]=c[c[W>>2]>>2];c[F
>>2]=c[(c[W>>2]|0)+8>>2];c[(c[l>>2]|0)+1344>>2]=c[W>>2];break}case 26
:case 15:break;case 16:{if(c[w>>2]|0)Ua[c[(c[w>>2]|0)+12>>2]&31](c[c[w>>2]>>
;2]|0,1,c[Q>>2]|0);break}case 17:{if(c[w>>2]|0)Ua[c[(c[w>>2]|0)+16>>2]&31](c[c[w>
;>2]>>2]|0,1,c[Q>>2]|0);break}case 18:{if(c[w>>2]|0){e=c[Q>>2]|0;c[e>>2]=(
c[e>>2]|0)+(c[L>>2]|0);Ua[c[(c[w>>2]|0)+12>>2]&31](c[c[w>>2]>>2
]|0,0,c[Q>>2]|0)}break}case 19:{if(c[w>>2]|0){c[u>>2]=c[L>>2];e=c[Q>>2]|0;c[e
x3e;>2]=(c[e>>2]|0)+(c[u>>2]|0);e=(c[Q>>2]|0)+8|0;c[e>>2]=(c[e>>2]|0)+(c[
u>>2]|0);e=(c[Q>>2]|0)+16|0;c[e>>2]=(c[e>>2]|0)+(c[u>>2]|0);Ua[c[(c[w>>
;2]|0)+16>>2]&31](c[c[w>>2]>>2]|0,0,c[Q>>2]|0)}break}case 25:{c[U>>2]=c[c
[Q>>2]>>2];c[V>>2]=c[(c[Q>>2]|0)+4>>2];c[(c[l>>2]|0)+1400>>
;2]=0;break}default:break a}while(0);if((X|0)==144?(X=0,e=rq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0,c[v
x3e;>2]=e,e|0):0){X=186;break}c[(c[l>>2]|0)+1136>>2]=c[Q>>2]}do if((X|0)==121){uq(c[s>
x3e;2]|0);if(c[w>>2]|0){if(Ya[c[(c[w>>2]|0)+8>>2]&127](c[c[w>>2]>>2]|0,b[(
c[(c[s>>2]|0)+20>>2]|0)+2>>1]|0)|0)break;Wa[c[(c[w>>2]|0)+24>>2]&31](c[c[
w>>2]>>2]|0,c[(c[s>>2]|0)+20>>2]|0,c[(c[s>>2]|0)+76>>2]|0,c[(c[l>
;>2]|0)+1468>>2]|0)|0}oc(c[(c[s>>2]|0)+12>>2]|0);c[k>>2]=0;X=c[k>>2]|0;i=
Y;return X|0}else if((X|0)==126){c[k>>2]=0;X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==127){c[k>>2]=
yq(c[l>>2]|0,c[c[Q>>2]>>2]|0,c[(c[Q>>2]|0)+4>>2]|0,c[(c[Q>>2]|0)+8
x3e;>2]|0,c[(c[Q>>2]|0)+12>>2]>>16,c[(c[Q>>2]|0)+16>>2]>>16)|0;
X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==129){c[k>>2]=0;X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==
186){c[k>>2]=c[v>>2];X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==188){c[k>>2]=161;X=c[k>
;>2]|0;i=Y;return X|0}while(0);c[k>>2]=160;X=c[k>>2]|0;i=Y;return X|0}function yq(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;A=i;i=i+80|0;n=A+68|0;o=A+64
|0;p=A+60|0;q=A+56|0;r=A+52|0;k=A+48|0;l=A+44|0;v=A+40|0;u=A+36|0;s=A+32|0;x=A+24|0;t=A+16|0;m=A+12|0;w=A+8|0;y=A+4|0;z=A;c[o>
;>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[k>>2]=h;c[l>>2]=j;c[m>>2
]=c[(c[o>>2]|0)+4>>2];if(a[(c[o>>2]|0)+1496>>0]|0){c[n>>2]=160;z=c[n>>
;2]|0;i=A;return z|0}c[q>>2]=(c[q>>2]|0)+(c[(c[o>>2]|0)+32>>2]|0);if((c[(c[o>>
2]|0)+1356>>2]|0)==0?(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)==0:0){c[n>>2]=160;
z=c[n>>2]|0;i=A;return z|0}if(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0){c[u>>2]=c[
k>>2];c[s>>2]=c[l>>2]}else{c[u>>2]=zq(c[o>>2]|0,c[k>>2]|0)|0;c[s>
;>2]=zq(c[o>>2]|0,c[l>>2]|0)|0}if((c[u>>2]|0)<0|(c[s>>2]|0)<0){c[n>
x3e;2]=160;z=c[n>>2]|0;i=A;return z|0}k=c[o>>2]|0;if(a[(c[o>>2]|0)+69>>0]|0){c[w>
x3e;2]=c[k+8>>2];c[y>>2]=c[c[(c[w>>2]|0)+156>>2]>>2];c[v>>2]=lc(c[y
x3e;>2]|0,2)|0;if(!(c[v>>2]|0)){c[z>>2]=c[(c[y>>2]|0)+56+32>>2];c[c[z>>2]
x3e;>2]=c[u>>2];b[(c[z>>2]|0)+4>>1]=514;c[(c[z>>2]|0)+8>>2]=0;c[(c[z>
;>2]|0)+12>>2]=0;c[z>>2]=(c[z>>2]|0)+32;c[c[z>>2]>>2]=c[s>>2];b
[(c[z>>2]|0)+4>>1]=2;x=(Tb((c[q>>2]|0)-(c[p>>2]|0)|0)|0)>>16;c[(c[z>>
;2]|0)+8>>2]=x;x=(Tb(c[r>>2]|0)|0)>>16;c[(c[z>>2]|0)+12>>2]=x;c[(c[w>>
;2]|0)+128>>2]=2;c[(c[w>>2]|0)+132>>2]=c[(c[y>>2]|0)+20+32>>2];c[(c[w>>
;2]|0)+72>>2]=1668246896;c[(c[y>>2]|0)+56+28>>2]=2}}else{nc(c[k+12>>2]|0);a[(c[o>
x3e;2]|0)+1496>>0]=1;c[v>>2]=Aq(c[o>>2]|0,c[u>>2]|0)|0;a[(c[o>>2]|0)+1496>
;>0]=0;if((c[v>>2]|0)==0?(z=(c[o>>2]|0)+32|0,c[x>>2]=c[z>>2],c[x+4>>2]=c[
z+4>>2],z=(c[o>>2]|0)+40|0,c[t>>2]=c[z>>2],c[t+4>>2]=c[z+4>>2],c[(c[
o>>2]|0)+32>>2]=0,c[(c[o>>2]|0)+32+4>>2]=0,c[(c[o>>2]|0)+24>>2]=(c[q
>>2]|0)-(c[p>>2]|0),c[(c[o>>2]|0)+28>>2]=c[r>>2],a[(c[o>>2]|0)+1496
x3e;>0]=1,c[v>>2]=Aq(c[o>>2]|0,c[s>>2]|0)|0,a[(c[o>>2]|0)+1496>>0]=0,(c[v
>>2]|0)==0):0){z=(c[o>>2]|0)+32|0;c[z>>2]=c[x>>2];c[z+4>>2]=c[x+4>>2
];z=(c[o>>2]|0)+40|0;c[z>>2]=c[t>>2];c[z+4>>2]=c[t+4>>2];c[(c[o>>2]|
0)+24>>2]=0;c[(c[o>>2]|0)+28>>2]=0}}c[n>>2]=c[v>>2];z=c[n>>2]|0;i=A;
return z|0}function zq(b,d){b=b|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;l=n+24|0;f=n+20|0;g=n+16|0;m=n+12|0;h=n
+8|0;k=n+4|0;j=n;c[f>>2]=b;c[g>>2]=d;c[k>>2]=c[(c[f>>2]|0)+1348>>2];if((c[g>
;>2]|0)<0|(c[g>>2]|0)>255){c[l>>2]=-1;m=c[l>>2]|0;i=n;return m|0}c[h>>2]=
Ta[c[(c[k>>2]|0)+20>>2]&63](e[(c[(c[k>>2]|0)+24>>2]|0)+(c[g>>2]<<
;1)>>1]|0)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[(c[f>>2]|0)+1352
>>2]|0)>>>0){f=10;break}c[j>>2]=c[(c[(c[f>>2]|0)+1356>>2]|0)+(c[m>
x3e;2]<<2)>>2];if((c[j>>2]|0?(a[c[j>>2]>>0]|0)==(a[c[h>>2]>>
;0]|0):0)?(Kr(c[j>>2]|0,c[h>>2]|0)|0)==0:0){f=8;break}c[m>>2]=(c[m>>2]|0)+1}if((f|0)==8){
c[l>>2]=c[m>>2];m=c[l>>2]|0;i=n;return m|0}else if((f|0)==10){c[l>>2]=-1;m=c[l>>
;2]|0;i=n;return m|0}return 0}function Aq(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=Ya[c[(c[f>>2]|0)+1472>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return b|0}
function Bq(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|
0;k=n+8|0;m=n+4|0;l=n;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=0;c[m>
;>2]=bc(c[h>>2]|0,16,l)|0;if(c[l>>2]|0){c[f>>2]=c[l>>2];m=c[f>>2]|0;i=n;return
m|0}else{a=c[j>>2]|0;c[(c[m>>2]|0)+4>>2]=a;c[c[m>>2]>>2]=a;c[(c[m>>
2]|0)+8>>2]=c[k>>2];c[(c[m>>2]|0)+12>>2]=2;c[c[g>>2]>>2]=c[h>
x3e;2];c[(c[g>>2]|0)+4>>2]=c[m>>2];c[(c[g>>2]|0)+8>>2]=0;c[(c[g>>2]|
0)+12>>2]=0;c[f>>2]=0;m=c[f>>2]|0;i=n;return m|0}return 0}function Cq(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];Fb(c[e>>2]|0,c[(c[d>
;>2]|0)+4>>2]|0);c[(c[d>>2]|0)+4>>2]=0;i=b;return}function Dq(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;o=i;i=i+80|0;j=o+68|0;k=o+64|0;n=o+60|0;m=o+56|0;l=o+52|0;d=o+48|0;e=o+44|0;f=o+40|0;h=o+8|0;g=o;c[k
x3e;>2]=b;c[n>>2]=c[c[k>>2]>>2];c[m>>2]=c[(c[k>>2]|0)+8>>2];c[l
>>2]=160;c[f>>2]=0;if(!(c[m>>2]|0)){c[j>>2]=6;n=c[j>>2]|0;i=o;return n|0}c[d
x3e;>2]=Eq(c[k>>2]|0,1,e)|0;if(!((c[d>>2]|0)==0|(c[e>>2]|0)!=16)?(Lr(c[d>>2]|0,11707
,16)|0)==0:0){a:while(1){b=Eq(c[k>>2]|0,1,e)|0;c[d>>2]=b;if(!b){d=24;break}switch(Iq(c[d>>2]|0,c[e
>>2]|0)|0){case 49:{d=22;break a}case 20:{d=23;break a}case 40:{if(Jq(c[k>>2]|0,f)|0){d=24;break a}if((c[f
x3e;>2]|0)!=0&(c[f>>2]|0)!=2){d=10;break a}else continue a}case 30:{c[h>>2]=4;if((Kq(c[k>>
;2]|0,h,1)|0)!=1){d=24;break a}a[c[m>>2]>>0]=a[h+4>>0]|0;continue a}case 26:{c[h>>2]=2;c
[h+8>>2]=2;c[h+16>>2]=2;c[h+24>>2]=2;if((Kq(c[k>>2]|0,h,4)|0)!=4){d=24;break a}c[(c[m>
;>2]|0)+4>>2]=c[h+4>>2];c[(c[m>>2]|0)+4+4>>2]=c[h+8+4>>2];c[(c[m>>
;2]|0)+4+8>>2]=c[h+16+4>>2];c[(c[m>>2]|0)+4+12>>2]=c[h+24+4>>2];continue a}case
0:{c[h>>2]=2;if((Kq(c[k>>2]|0,h,1)|0)!=1){d=24;break a}c[(c[m>>2]|0)+20>>2]=c[h+4>
x3e;2];continue a}case 14:{c[h>>2]=2;if((Kq(c[k>>2]|0,h,1)|0)!=1){d=24;break a}c[(c[m>>2]|0)+24>
;>2]=c[h+4>>2];continue a}case 45:{c[g>>2]=0;if(Jq(c[k>>2]|0,g)|0){d=24;break a}c[l>>
;2]=Lq(c[k>>2]|0,c[g>>2]|0,17)|0;if(c[l>>2]|0){d=21;break a}else continue a}default:continue a}}if
((d|0)==10){c[l>>2]=7;d=24}else if((d|0)==21){c[j>>2]=c[l>>2];n=c[j>>2]|0;i=o;return n|0
}else if((d|0)==22){c[l>>2]=Mq(c[k>>2]|0)|0;if(c[l>>2]|0)d=24;else d=23}if((d|0)==23){c[j>>
;2]=0;n=c[j>>2]|0;i=o;return n|0}else if((d|0)==24){Fb(c[n>>2]|0,c[(c[m>>2]|0)+28>>2]|0);
c[(c[m>>2]|0)+28>>2]=0;c[(c[m>>2]|0)+32>>2]=0;Fb(c[n>>2]|0,c[(c[m>>2
]|0)+36>>2]|0);c[(c[m>>2]|0)+36>>2]=0;c[(c[m>>2]|0)+40>>2]=0;a[c[m>>
2]>>0]=0;c[j>>2]=c[l>>2];n=c[j>>2]|0;i=o;return n|0}}c[j>>2]=2;n=c[j>>
;2]|0;i=o;return n|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,l=0;j=i;i=i+32|0;l=j+12|0;k=j+16|0;g=j+8|0;f=j
+4|0;h=j;c[l>>2]=b;a[k>>0]=d;c[g>>2]=e;c[f>>2]=c[(c[l>>2]|0)+4>>2];c
[h>>2]=0;a:do if(a[k>>0]|0)do{if((c[(c[f>>2]|0)+12>>2]|0)<2)Fq(c[f>>2]|0)|
0;c[(c[f>>2]|0)+12>>2]=0;c[h>>2]=Hq(c[f>>2]|0)|0;if(c[h>>2]|0)break a;if((c[(c
[f>>2]|0)+12>>2]|0)>=3)break a}while((c[(c[f>>2]|0)+12>>2]|0)>=2);else while(1
){e=c[f>>2]|0;if((c[(c[f>>2]|0)+12>>2]|0)>=1^1){Hq(e)|0;continue}c[e+12>>2]=0;c[h
x3e;>2]=Hq(c[f>>2]|0)|0;if(c[h>>2]|0)break a;if((c[(c[f>>2]|0)+12>>2]|0)>=3)break
a;if((c[(c[f>>2]|0)+12>>2]|0)<1)break}while(0);if(!(c[g>>2]|0)){l=c[h>>2]|0;i=j;return
l|0}if(c[h>>2]|0)e=(c[c[f>>2]>>2]|0)-(c[h>>2]|0)-1|0;else e=0;c[c[g>>2]>
x3e;2]=e;l=c[h>>2]|0;i=j;return l|0}function Fq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;f=h+8|0;g=h
+4|0;b=h;c[f>>2]=a;Gq(c[f>>2]|0)|0;if((c[(c[f>>2]|0)+12>>2]|0)>=2){c[e>>2
]=0;g=c[e>>2]|0;i=h;return g|0}c[g>>2]=(c[c[f>>2]>>2]|0)+-1;while(1){if((c[c[f>>
;2]>>2]|0)>>>0<(c[(c[f>>2]|0)+8>>2]|0)>>>0){j=c[f>>2]|
0;a=c[j>>2]|0;c[j>>2]=a+1;a=d[a>>0]|0}else a=-1;c[b>>2]=a;if((c[b>>2]|0)==13|(
c[b>>2]|0)==10){a=7;break}if((c[b>>2]|0)==-1|(c[b>>2]|0)==26){a=9;break}}if((a|0)==7)c[(c[f>
x3e;2]|0)+12>>2]=2;else if((a|0)==9)c[(c[f>>2]|0)+12>>2]=3;c[e>>2]=c[g>>2];j=c
[e>>2]|0;i=h;return j|0}function Gq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;b=g+8|0;e=g+4|0;f=g;c[e>>2
]=a;c[f>>2]=0;if((c[(c[e>>2]|0)+12>>2]|0)>=1){c[b>>2]=59;f=c[b>>2]|0;i=g;
return f|0}do{if((c[c[e>>2]>>2]|0)>>>0<(c[(c[e>>2]|0)+8>>2]|0)>
x3e;>0){h=c[e>>2]|0;a=c[h>>2]|0;c[h>>2]=a+1;a=d[a>>0]|0}else a=-1;c[f>>2]=
a}while((c[f>>2]|0)==32|(c[f>>2]|0)==9);do if(!((c[f>>2]|0)==13|(c[f>>2]|0)==10)){if((c[
f>>2]|0)==59){c[(c[e>>2]|0)+12>>2]=1;break}if((c[f>>2]|0)==-1|(c[f>>2]|0)==26)
c[(c[e>>2]|0)+12>>2]=3}else c[(c[e>>2]|0)+12>>2]=2;while(0);c[b>>2]=c[f>
x3e;2];h=c[b>>2]|0;i=g;return h|0}function Hq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;b=j+12|0;e=j+8|0;g
=j+4|0;f=j;c[e>>2]=a;Gq(c[e>>2]|0)|0;if((c[(c[e>>2]|0)+12>>2]|0)>=1){c[b>>
;2]=0;h=c[b>>2]|0;i=j;return h|0}c[g>>2]=(c[c[e>>2]>>2]|0)+-1;while(1){if((c[c[e>
x3e;2]>>2]|0)>>>0<(c[(c[e>>2]|0)+8>>2]|0)>>>0){k=c[e>>
;2]|0;a=c[k>>2]|0;c[k>>2]=a+1;a=d[a>>0]|0}else a=-1;c[f>>2]=a;if((c[f>>2]|0)==
32|(c[f>>2]|0)==9)break;if((c[f>>2]|0)==13|(c[f>>2]|0)==10){h=8;break}if((c[f>>2]|0)==59
){h=10;break}if((c[f>>2]|0)==-1|(c[f>>2]|0)==26){h=12;break}}if((h|0)==8)c[(c[e>>2]|0)+12>>
;2]=2;else if((h|0)==10)c[(c[e>>2]|0)+12>>2]=1;else if((h|0)==12)c[(c[e>>2]|0)+12>>2]=3;
c[b>>2]=c[g>>2];k=c[b>>2]|0;i=j;return k|0}function Iq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=
i;i=i+16|0;h=j+12|0;e=j+8|0;f=j+4|0;g=j;c[e>>2]=b;c[f>>2]=d;c[g>>2]=0;a:while(1){if((c[g>>
;2]|0)>=74){b=10;break}if((c[g>>2]|0)<74?(a[c[4608+(c[g>>2]<<2)>>2]>>
;0]|0)==(a[c[e>>2]>>0]|0):0)do{if((a[c[4608+(c[g>>2]<<2)>>2]>>0]|0)!=(
a[c[e>>2]>>0]|0)){b=5;break a}b=(Lr(c[4608+(c[g>>2]<<2)>>2]|0,c[e>>2
]|0,c[f>>2]|0)|0)==0;d=c[g>>2]|0;if(b){b=7;break a}c[g>>2]=d+1}while((c[g>>2]|0)<74
);c[g>>2]=(c[g>>2]|0)+1}if((b|0)==5){c[h>>2]=75;h=c[h>>2]|0;i=j;return h|0}else if((b|0)==
7){c[h>>2]=d;h=c[h>>2]|0;i=j;return h|0}else if((b|0)==10){c[h>>2]=75;h=c[h>>2]|0;i=j;return
h|0}return 0}function Jq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+32|0;d=g+16|0;h=g+12|0;e=g+8|0;f=g;c[h>>2]=
a;c[e>>2]=b;c[f>>2]=3;if((Kq(c[h>>2]|0,f,1)|0)==1){c[c[e>>2]>>2]=c[f+4>
x3e;2];c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}else{c[d>>2]=160;h=c[d>>2]|0;i=g;return h|0}
return 0}function Kq(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;r=i;i=i+48|0;f=r+40|0;g=r+36|0
;h=r+32|0;j=r+28|0;p=r+24|0;o=r+20|0;l=r+16|0;m=r+12|0;q=r+8|0;n=r+4|0;k=r;c[g>>2]=b;c[h>>2]=d;c[j>>
;2]=e;c[p>>2]=c[(c[g>>2]|0)+4>>2];if((c[j>>2]|0)>>>0>5){c[f>>
;2]=0;q=c[f>>2]|0;i=r;return q|0}c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[j
x3e;>2]|0)>>>0)break;c[q>>2]=(c[h>>2]|0)+(c[l>>2]<<3);e=c[p>>
;2]|0;if(!(c[c[q>>2]>>2]|0))c[o>>2]=Fq(e)|0;else c[o>>2]=Hq(e)|0;if(!(c[o>>2]|
0))break;c[m>>2]=(c[c[p>>2]>>2]|0)-(c[o>>2]|0)-1;a:do switch(c[c[q>>2]>
x3e;2]|0){case 1:case 0:{c[n>>2]=c[c[g>>2]>>2];d=cc(c[n>>2]|0,(c[m>>2]|0)+1|0,
k)|0;c[(c[q>>2]|0)+4>>2]=d;if(!(c[k>>2]|0)){Ss(c[(c[q>>2]|0)+4>>2]|0,c[o>
x3e;2]|0,c[m>>2]|0)|0;a[(c[(c[q>>2]|0)+4>>2]|0)+(c[m>>2]|0)>>0]=0}break}case 2
:{d=bq(o,(c[o>>2]|0)+(c[m>>2]|0)|0,0)|0;c[(c[q>>2]|0)+4>>2]=d;break}case 3:{d=_p(o,(c[o
x3e;>2]|0)+(c[m>>2]|0)|0)|0;c[(c[q>>2]|0)+4>>2]=d;break}case 4:{if((c[m>>2]|0)==4)e
=(Lr(c[o>>2]|0,12412,4)|0)!=0^1;else e=0;a[(c[q>>2]|0)+4>>0]=e&1;break}case 5:if(c[(c[g>
x3e;2]|0)+12>>2]|0){d=Oa[c[(c[g>>2]|0)+12>>2]&63](c[o>>2]|0,c[m>>2]|0,c[(
c[g>>2]|0)+16>>2]|0)|0;c[(c[q>>2]|0)+4>>2]=d;break a}else{c[(c[q>>2]|0)+4>
;>2]=0;break a}default:{}}while(0);c[l>>2]=(c[l>>2]|0)+1}c[f>>2]=c[l>>2];q=c[f>
;>2]|0;i=r;return q|0}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,l=0,m=0,n=0;n=i;i=i+32|0;e=n+24|0;f=
n+20|0;g=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;l=n;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;do{a=c[g>>2]|
0;c[g>>2]=a+-1;if(a>>>0<=0){m=4;break}c[j>>2]=Eq(c[f>>2]|0,1,0)|0}while((c[j
x3e;>2]|0)!=0);a:do if((m|0)==4){while(1){m=Eq(c[f>>2]|0,1,k)|0;c[j>>2]=m;if(!m)break a;c[l>>
2]=Iq(c[j>>2]|0,c[k>>2]|0)|0;if((c[l>>2]|0)==20?1:(c[l>>2]|0)==(c[h>>2]|0))break
;else m=4}c[e>>2]=0;m=c[e>>2]|0;i=n;return m|0}while(0);c[e>>2]=160;m=c[e>>2]|0;i=n;return
m|0}function Mq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;f=h+16|0;b=h+12|0;g=h+8|0;d=h+4|0;e=h;c[b>>2]=a;a:while
(1){a=Eq(c[b>>2]|0,1,e)|0;c[d>>2]=a;if(!a){b=9;break}switch(Iq(c[d>>2]|0,c[e>>2]|0)|0){case
75:continue a;case 20:case 21:{b=8;break a}case 53:{c[g>>2]=Nq(c[b>>2]|0)|0;if(c[g>>2]|0){b=5;break
a}else continue a}case 51:case 50:{c[g>>2]=Oq(c[b>>2]|0)|0;if(c[g>>2]|0){b=7;break a}else continue
a}default:{b=9;break a}}}if((b|0)==5)c[f>>2]=c[g>>2];else if((b|0)==7)c[f>>2]=c[g>>2];else
if((b|0)==8)c[f>>2]=0;else if((b|0)==9)c[f>>2]=160;i=h;return c[f>>2]|0}function Nq(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;n=i;i=i+80|0;b=n+72|0;d=n+68|0;f=n+64|0;m=n+60|0;g=n+56|0;h=n+52|0;k=n+48|0;j=n+44|0
;e=n+40|0;l=n;c[d>>2]=a;c[f>>2]=c[(c[d>>2]|0)+8>>2];c[k>>2]=-1;a:do if(!(Jq(c[
d>>2]|0,(c[f>>2]|0)+32|0)|0)){if(c[(c[f>>2]|0)+32>>2]|0?(c[j>>2]=c[c[d>
x3e;2]>>2],a=hc(c[j>>2]|0,20,0,c[(c[f>>2]|0)+32>>2]|0,0,e)|0,c[(c[f>>2]|0)+28
x3e;>2]=a,c[e>>2]|0):0){c[b>>2]=c[e>>2];m=c[b>>2]|0;i=n;return m|0}b:while(1){a=Eq(
c[d>>2]|0,1,h)|0;c[g>>2]=a;if(!a)break a;switch(Iq(c[g>>2]|0,c[h>>2]|0)|0){case 75:continue
b;case 20:case 21:case 23:break b;case 56:break;default:break a}c[k>>2]=(c[k>>2]|0)+1;if((c[k>>2]|
0)>=(c[(c[f>>2]|0)+32>>2]|0))break a;c[m>>2]=(c[(c[f>>2]|0)+28>>2]|0)+((c
[k>>2]|0)*20|0);c[l>>2]=3;c[l+8>>2]=2;c[l+16>>2]=2;c[l+24>>2]=2;c[l+32>
x3e;2]=2;if((Kq(c[d>>2]|0,l,5)|0)!=5)break a;c[c[m>>2]>>2]=c[l+4>>2];c[(c[m>>2
]|0)+4>>2]=c[l+8+4>>2];c[(c[m>>2]|0)+8>>2]=c[l+16+4>>2];c[(c[m>>2]|0
)+12>>2]=c[l+24+4>>2];c[(c[m>>2]|0)+16>>2]=c[l+32+4>>2];if((c[c[m>>2
]>>2]|0)>=0)continue;if((c[(c[m>>2]|0)+8>>2]|0)<=0)continue;c[(c[m>>2]|0)+8>
;>2]=0-(c[(c[m>>2]|0)+8>>2]|0)}c[(c[f>>2]|0)+32>>2]=(c[k>>2]|0)+1;c[b>
;>2]=0;m=c[b>>2]|0;i=n;return m|0}while(0);c[b>>2]=160;m=c[b>>2]|0;i=n;return m|0}function Oq
(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;p=i;i=i+80|0;e=p+72|0;f=p+68|0;g=p+64|0;j=p+60|0;h=p+56|0;k=p+
52|0;l=p+48|0;d=p+44|0;b=p+40|0;o=p+36|0;m=p+32|0;n=p;c[f>>2]=a;c[g>>2]=c[(c[f>>2]|0)+8>>
;2];c[l>>2]=-1;a:do if(!(Jq(c[f>>2]|0,(c[g>>2]|0)+40|0)|0)){if(c[(c[g>>2]|0)+40>>
;2]|0?(c[d>>2]=c[c[f>>2]>>2],a=hc(c[d>>2]|0,16,0,c[(c[g>>2]|0)+40>>2
]|0,0,b)|0,c[(c[g>>2]|0)+36>>2]=a,c[b>>2]|0):0){c[e>>2]=c[b>>2];o=c[e>>
;2]|0;i=p;return o|0}b:while(1){a=Eq(c[f>>2]|0,1,k)|0;c[h>>2]=a;if(!a)break a;c[o>>2]=Iq(c[h>
x3e;2]|0,c[k>>2]|0)|0;switch(c[o>>2]|0){case 75:continue b;case 20:case 21:case 22:break b;case 37:case 36:case
34:break;default:break a}c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)>=(c[(c[g>>2]|0)+40
x3e;>2]|0))break a;c[j>>2]=(c[(c[g>>2]|0)+36>>2]|0)+(c[l>>2]<<4);c[n>
;>2]=5;c[n+8>>2]=5;c[n+16>>2]=3;c[n+24>>2]=3;c[m>>2]=Kq(c[f>>2]|0,n,4)|0;
if((c[m>>2]|0)<3)break a;c[c[j>>2]>>2]=c[n+4>>2];c[(c[j>>2]|0)+4>>
;2]=c[n+8+4>>2];if((c[o>>2]|0)==37){c[(c[j>>2]|0)+8>>2]=0;c[(c[j>>2]|0)+12>
;>2]=c[n+16+4>>2];continue}c[(c[j>>2]|0)+8>>2]=c[n+16+4>>2];if((c[o>>2]|0
)==34&(c[m>>2]|0)==4)b=c[n+24+4>>2]|0;else b=0;c[(c[j>>2]|0)+12>>2]=b}c[(c[g>
x3e;2]|0)+40>>2]=(c[l>>2]|0)+1;Bs(c[(c[g>>2]|0)+36>>2]|0,c[(c[g>>2]|0)+40>
;>2]|0,16,109);c[e>>2]=0;o=c[e>>2]|0;i=p;return o|0}while(0);c[e>>2]=160;o=c[e>>2]|
0;i=p;return o|0}function Pq(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;g=i;i=i+32|0;d=g+24|0;l=g+20|0;k=g+16|0;j=g+12
|0;h=g+8|0;e=g+4|0;f=g;c[l>>2]=a;c[k>>2]=b;c[j>>2]=c[l>>2];c[h>>2]=c[k>
x3e;2];c[e>>2]=c[c[j>>2]>>2]<<16|c[(c[j>>2]|0)+4>>2];c[f>>
2]=c[c[h>>2]>>2]<<16|c[(c[h>>2]|0)+4>>2];if((c[e>>2]|0)>>
x3e;0>(c[f>>2]|0)>>>0){c[d>>2]=1;l=c[d>>2]|0;i=g;return l|0}if((c[e>>
;2]|0)>>>0<(c[f>>2]|0)>>>0){c[d>>2]=-1;l=c[d>>2]|0;i=g;return l
|0}else{c[d>>2]=0;l=c[d>>2]|0;i=g;return l|0}return 0}function Qq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d
x3e;>2]=a;Rq(c[d>>2]|0,0);i=b;return 0}function Rq(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[d>>2]=a;c[f>>2]=b;c[h>>2]=c[c[d>>2]>>2];c[g>>
2]=c[(c[h>>2]|0)+484>>2];c[(c[d>>2]|0)+24>>2]=c[(c[h>>2]|0)+132+284>>
;2];c[(c[d>>2]|0)+28>>2]=c[(c[h>>2]|0)+132+288>>2];c[(c[d>>2]|0)+20>>
;2]=c[(c[g>>2]|0)+20>>2];a=c[g>>2]|0;if(c[f>>2]|0){g=c[a+28>>2]|0;h=c[d>
x3e;2]|0;h=h+16|0;c[h>>2]=g;i=e;return}else{g=c[a+24>>2]|0;h=c[d>>2]|0;h=h+16|0;c[h>>2]=
g;i=e;return}}function Sq(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)+24>>2]=0;c
[(c[d>>2]|0)+28>>2]=0;c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>2]=0;
i=b;return}function Tq(b,d){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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;m=o+16|0;h=o+12|0
;l=o+8|0;j=o+4|0;k=o;c[f>>2]=b;c[g>>2]=d;c[m>>2]=0;if((c[g>>2]|0)>>>0>
;=256){n=c[m>>2]|0;i=o;return n|0}c[h>>2]=e[(c[(c[f>>2]|0)+16>>2]|0)+(c[g>>2]
x3c;<1)>>1];c[j>>2]=Ta[c[(c[f>>2]|0)+20>>2]&63](c[h>>2]|0)|0;c[l>
;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[(c[f>>2]|0)+24>>2]|0)>>
x3e;0){n=9;break}c[k>>2]=c[(c[(c[f>>2]|0)+28>>2]|0)+(c[l>>2]<<2)>>2];
if((c[k>>2]|0?(a[c[k>>2]>>0]|0)==(a[c[j>>2]>>0]|0):0)?(Kr(c[k>>2]|0,
c[j>>2]|0)|0)==0:0)break;c[l>>2]=(c[l>>2]|0)+1}if((n|0)==9){n=c[m>>2]|0;i=o;return n|0}c
[m>>2]=c[l>>2];n=c[m>>2]|0;i=o;return n|0}function Uq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0
;j=i;i=i+16|0;d=j+12|0;e=j+8|0;g=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[f>>2]=(c[c[e
x3e;>2]>>2]|0)+1;while(1){if((c[f>>2]|0)>>>0>=256)break;c[g>>2]=Tq(c[d>
;>2]|0,c[f>>2]|0)|0;if(c[g>>2]|0){h=6;break}c[f>>2]=(c[f>>2]|0)+1}if((h|0)==6){b=c[
f>>2]|0;h=c[e>>2]|0;c[h>>2]=b;h=c[g>>2]|0;i=j;return h|0}c[f>>2]=0;b=c[f>
x3e;2]|0;h=c[e>>2]|0;c[h>>2]=b;h=c[g>>2]|0;i=j;return h|0}function Vq(a){a=a|0;var b=0,d=0;b=i;i=i
+16|0;d=b;c[d>>2]=a;Rq(c[d>>2]|0,1);i=b;return 0}function Wq(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]=c[c[d>>2]>>2];c[e>>2]=(c[f>>2]|0)+132
+240;c[(c[d>>2]|0)+16>>2]=c[(c[e>>2]|0)+4>>2];c[(c[d>>2]|0)+20>>2]=(
c[(c[e>>2]|0)+8>>2]|0)-(c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+24>>2]=
c[(c[e>>2]|0)+12>>2];i=b;return 0}function Xq(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)+24>>2]=0;c[(c[d>>2]|0)+16>>2]=0;c[(c[d>>2]|0)+20>>2]=0;i=b
;return}function Yq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=
b;c[g>>2]=0;if((c[f>>2]|0)>>>0<(c[(c[d>>2]|0)+16>>2]|0)>>
x3e;0){g=c[g>>2]|0;i=h;return g|0}if((c[f>>2]|0)>>>0>=((c[(c[d>>2]|0)+16>
x3e;2]|0)+(c[(c[d>>2]|0)+20>>2]|0)|0)>>>0){g=c[g>>2]|0;i=h;return g|0}c[g>>
;2]=e[(c[(c[d>>2]|0)+24>>2]|0)+(c[f>>2]<<1)>>1];g=c[g>>2]|0;i=h;return
g|0}function Zq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;d=k+12|0;f=k+8|0;h=k+4|0;g=k;c[d>>2]=a;c[f
x3e;>2]=b;c[h>>2]=0;c[g>>2]=c[c[f>>2]>>2];c[g>>2]=(c[g>>2]|0)+1
;if((c[g>>2]|0)>>>0<(c[(c[d>>2]|0)+16>>2]|0)>>>0)c[g>>
;2]=c[(c[d>>2]|0)+16>>2];while(1){if((c[g>>2]|0)>>>0>=((c[(c[d>>2]|0
)+16>>2]|0)+(c[(c[d>>2]|0)+20>>2]|0)|0)>>>0)break;c[h>>2]=e[(c[(c[d>
x3e;2]|0)+24>>2]|0)+(c[g>>2]<<1)>>1];if(c[h>>2]|0){j=7;break}c[g>>2]=(
c[g>>2]|0)+1}if((j|0)==7){b=c[g>>2]|0;j=c[f>>2]|0;c[j>>2]=b;j=c[h>>2]|0;i=k;return
j|0}c[g>>2]=0;b=c[g>>2]|0;j=c[f>>2]|0;c[j>>2]=b;j=c[h>>2]|0;i=k;return j|0}function
_q(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;d=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[d>>2]=c[c[e>
x3e;2]>>2];c[f>>2]=c[(c[d>>2]|0)+100>>2];c[g>>2]=c[(c[d>>2]|0)+484
x3e;>2];a=Sa[c[(c[g>>2]|0)+4>>2]&3](c[f>>2]|0,c[e>>2]|0,c[(c[d>>2]|0
)+132+284>>2]|0,110,0,c[d>>2]|0)|0;i=b;return a|0}function $q(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;
e=f+4|0;d=f;c[e>>2]=a;c[d>>2]=b;i=f;return c[(c[(c[e>>2]|0)+132+288>>2]|0)+(c[d>>
;2]<<2)>>2]|0}function ar(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]=c[c[d>>2]>>2];c[e>>2]=c[(c[f>>2]|0)+100>>2];Fb(c[e>>
;2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>
;2]=0;i=b;return}function br(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;h=d+4|0;g=d;c[f>>2
]=a;c[e>>2]=b;c[h>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[h>>2]|0)+484>
x3e;2];a=Ya[c[(c[g>>2]|0)+8>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function
cr(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;h=d+4|0;g=d;c[f>>2]=a;c[e>>2]=b;c
[h>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[h>>2]|0)+484>>2];a=Ya[c[(c[g>
x3e;2]|0)+12>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function dr(a,d,e){a=a|0;d=d|0;e=
e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+4|0;h=f;g=f+8|0;c[j>>2]=a;c[h>>2]=d;b[g>>1]=e;er(j,(c[j
x3e;>2]|0)+(c[h>>2]|0)|0,c[j>>2]|0,c[h>>2]|0,g)|0;i=f;return}function er(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;v=i;i=i+48|0;l=v+36|0;m=v+32|0;n=v+28|0;o=v+24|0;p=v+20|0;r
=v+16|0;s=v+12|0;t=v+8|0;u=v+4|0;q=v;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[p>
x3e;2]=k;c[t>>2]=e[c[p>>2]>>1];c[r>>2]=c[c[l>>2]>>2];if((c[o>
x3e;2]|0)>>>0>((c[m>>2]|0)-(c[r>>2]|0)|0)>>>0)c[o>>2]=(c[m>
;>2]|0)-(c[r>>2]|0);c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[o>>
;2]|0)>>>0)break;c[u>>2]=d[(c[r>>2]|0)+(c[s>>2]|0)>>0];c[q>>2]=
c[u>>2]^(c[t>>2]|0)>>>8;c[t>>2]=(((c[u>>2]|0)+(c[t>>2]|0)|0)*52845
|0)+22719&65535;a[(c[n>>2]|0)+(c[s>>2]|0)>>0]=c[q>>2];c[s>>2]=(c[s>
x3e;2]|0)+1}c[c[l>>2]>>2]=(c[r>>2]|0)+(c[o>>2]|0);b[c[p>>2]>>1]=c[t
x3e;>2];i=v;return c[s>>2]|0}function fr(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
,u=0;u=i;i=i+64|0;r=u+44|0;e=u+40|0;h=u+36|0;o=u+32|0;m=u+28|0;f=u+49|0;k=u+24|0;j=u+20|0;p=u+16|0;n=u+12|0;g=u+48|0;l=u+8|0;t=u
+4|0;s=u;c[e>>2]=b;if(((a[c[e>>2]>>0]|0)==117?(a[(c[e>>2]|0)+1>>0]|0)==110:0)?(
a[(c[e>>2]|0)+2>>0]|0)==105:0){c[o>>2]=0;c[m>>2]=(c[e>>2]|0)+3;c[h>>
2]=4;while(1){if((c[h>>2]|0)<=0)break;a[f>>0]=a[c[m>>2]>>0]|0;c[k>>2]=(d[
f>>0]|0)-48;do if((c[k>>2]|0)>>>0>=10){c[k>>2]=(d[f>>0]|0)-65;if((c[
k>>2]|0)>>>0>=6){c[k>>2]=16;break}else{c[k>>2]=(c[k>>2]|0)+10;break}}
while(0);if((c[k>>2]|0)>>>0>=16)break;c[o>>2]=(c[o>>2]<<4)+(c[k>
;>2]|0);c[h>>2]=(c[h>>2]|0)+-1;c[m>>2]=(c[m>>2]|0)+1}if(!(c[h>>2]|0)){if(!(
a[c[m>>2]>>0]|0)){c[r>>2]=c[o>>2];t=c[r>>2]|0;i=u;return t|0}if((a[c[m>
x3e;2]>>0]|0)==46){c[r>>2]=c[o>>2]|-2147483648;t=c[r>>2]|0;i=u;return t|0}}}if((a[c[e>
;>2]>>0]|0)==117){c[p>>2]=0;c[n>>2]=(c[e>>2]|0)+1;c[j>>2]=6;while(1){if((
c[j>>2]|0)<=0)break;a[g>>0]=a[c[n>>2]>>0]|0;c[l>>2]=(d[g>>0]|0)-
48;do if((c[l>>2]|0)>>>0>=10){c[l>>2]=(d[g>>0]|0)-65;if((c[l>>2]|0)
x3e;>>0>=6){c[l>>2]=16;break}else{c[l>>2]=(c[l>>2]|0)+10;break}}while(0);if((c[l>
;>2]|0)>>>0>=16)break;c[p>>2]=(c[p>>2]<<4)+(c[l>>2]|0);c[j>
;>2]=(c[j>>2]|0)+-1;c[n>>2]=(c[n>>2]|0)+1}if((c[j>>2]|0)<=2){if(!(a[c[n>
x3e;2]>>0]|0)){c[r>>2]=c[p>>2];t=c[r>>2]|0;i=u;return t|0}if((a[c[n>>2]>
x3e;0]|0)==46){c[r>>2]=c[p>>2]|-2147483648;t=c[r>>2]|0;i=u;return t|0}}}c[t>>2]=c[e>
;>2];c[s>>2]=0;while(1){if(!(a[c[t>>2]>>0]|0))break;if((a[c[t>>2]>>0]|0)==
46?(c[t>>2]|0)>>>0>(c[e>>2]|0)>>>0:0){q=35;break}c[t>>2]=(c[t
x3e;>2]|0)+1}if((q|0)==35)c[s>>2]=c[t>>2];e=c[e>>2]|0;if(c[s>>2]|0){c[r>>
2]=gr(e,c[s>>2]|0)|0|-2147483648;t=c[r>>2]|0;i=u;return t|0}else{c[r>>2]=gr(e,c[t>>2]|0)|
0;t=c[r>>2]|0;i=u;return t|0}return 0}function gr(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;t=i;i=i+64|0;f=t+48|0;g=t+44|0;h=t+40|0;j=t+36|0;l=t+32|0;o=t+28|0;m=t+24|0;q=t+20|0;n=t+16|0;r=t+12|0;k=t+8|0;p=t+4|0;
s=t;c[g>>2]=b;c[h>>2]=e;c[j>>2]=0;c[q>>2]=12431;a:do if(c[g>>2]|0?(c[g>
x3e;2]|0)>>>0<(c[h>>2]|0)>>>0:0){b=c[g>>2]|0;c[g>>2]=b+1;c[j>
;>2]=a[b>>0];c[l>>2]=d[(c[q>>2]|0)+1>>0];c[q>>2]=(c[q>>2]|0)+2;
c[o>>2]=0;c[m>>2]=c[l>>2];while(1){if((c[o>>2]|0)>=(c[m>>2]|0))break a;c[
n>>2]=(c[o>>2]|0)+(c[m>>2]|0)>>1;c[r>>2]=(c[q>>2]|0)+(c[n>>
;2]<<1);c[r>>2]=12431+(d[c[r>>2]>>0]<<8|d[(c[r>>2]|0)+1>>0
]);c[k>>2]=d[c[r>>2]>>0]&127;if((c[k>>2]|0)==(c[j>>2]|0))break;e=c[n>
;>2]|0;if((c[k>>2]|0)<(c[j>>2]|0)){c[o>>2]=e+1;continue}else{c[m>>2]=e;continue
}}c[q>>2]=c[r>>2];while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>
;>0)break;r=c[g>>2]|0;c[g>>2]=r+1;c[j>>2]=a[r>>0];r=(d[c[q>>2]>>
;0]&128|0)!=0;c[q>>2]=(c[q>>2]|0)+1;if(r)if((c[j>>2]|0)!=(d[c[q>>2]>>0]
x26;127|0))break a;else continue;c[l>>2]=d[c[q>>2]>>0]&127;if(d[c[q>>2]>>
0]&128|0)c[q>>2]=(c[q>>2]|0)+2;c[q>>2]=(c[q>>2]|0)+1;while(1){if((c[l>>2]|
0)<=0)break a;c[p>>2]=d[c[q>>2]>>0]<<8|d[(c[q>>2]|0)+1>>0];c[s
x3e;>2]=12431+(c[p>>2]|0);if((c[j>>2]|0)==(d[c[s>>2]>>0]&127|0))break;c[l>
;>2]=(c[l>>2]|0)+-1;c[q>>2]=(c[q>>2]|0)+2}c[q>>2]=c[s>>2]}if((d[c[q>
x3e;2]>>0]&128|0)==0?d[(c[q>>2]|0)+1>>0]&128|0:0){c[f>>2]=d[(c[q>>2]|
0)+2>>0]<<8|d[(c[q>>2]|0)+3>>0];s=c[f>>2]|0;i=t;return s|0}}while(0);c[f>
x3e;2]=0;s=c[f>>2]|0;i=t;return s|0}function hr(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;w=i;i=i+144|0;h=w+128|0;j=w+124|0;k=w+120|0;l=w+116|0;m=w+112|0;n=w+108|0;p=w+104|0;q
=w+64|0;r=w+24|0;u=w+16|0;o=w+12|0;t=w+8|0;v=w+4|0;s=w;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>
;2]=e;c[m>>2]=f;c[n>>2]=g;f=q;e=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(e|0));c[(c[j>
x3e;2]|0)+16>>2]=0;c[(c[j>>2]|0)+20>>2]=0;b=hc(c[h>>2]|0,8,0,(c[k>>2]|0)+10|0,
0,p)|0;c[(c[j>>2]|0)+20>>2]=b;if(c[p>>2]|0){v=c[p>>2]|0;i=w;return v|0}c[t>>2]=
c[(c[j>>2]|0)+20>>2];c[u>>2]=0;while(1){if((c[u>>2]|0)>>>0>=(c[k>
;>2]|0)>>>0)break;c[s>>2]=Ya[c[l>>2]&127](c[n>>2]|0,c[u>>2]|0)|
0;if(c[s>>2]|0){ir(c[s>>2]|0,c[u>>2]|0,r,q);c[v>>2]=fr(c[s>>2]|0)|0;if(c[v>
;>2]&2147483647|0){jr(c[v>>2]|0,q);c[c[t>>2]>>2]=c[v>>2];c[(c[t>>2]|
0)+4>>2]=c[u>>2];c[t>>2]=(c[t>>2]|0)+8}if(c[m>>2]|0)Ra[c[m>>2]&
7](c[n>>2]|0,c[s>>2]|0)}c[u>>2]=(c[u>>2]|0)+1}c[u>>2]=0;while(1){if((c[u>
x3e;2]|0)>>>0>=10)break;if((c[q+(c[u>>2]<<2)>>2]|0)==1){c[c[t>>2]>
;>2]=c[5252+(c[u>>2]<<2)>>2];c[(c[t>>2]|0)+4>>2]=c[r+(c[u>>2]
x3c;<2)>>2];c[t>>2]=(c[t>>2]|0)+8}c[u>>2]=(c[u>>2]|0)+1}c[o>>2]=((
c[t>>2]|0)-(c[(c[j>>2]|0)+20>>2]|0)|0)/8|0;if(!(c[o>>2]|0)){Fb(c[h>>2]|0,c[(c[
j>>2]|0)+20>>2]|0);c[(c[j>>2]|0)+20>>2]=0;if(!(c[p>>2]|0))c[p>>2]=163
}else{if((c[o>>2]|0)>>>0<(((c[k>>2]|0)>>>0)/2|0)>>>0){v=hc
(c[h>>2]|0,8,c[k>>2]|0,c[o>>2]|0,c[(c[j>>2]|0)+20>>2]|0,p)|0;c[(c[j>>
;2]|0)+20>>2]=v;c[p>>2]=0}Bs(c[(c[j>>2]|0)+20>>2]|0,c[o>>2]|0,8,111)}c[(c[j>
;>2]|0)+16>>2]=c[o>>2];v=c[p>>2]|0;i=w;return v|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,l=0,m=0;m=i;i=i+32|0;f=m+16|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m;c[f>>2]=a;c[g>>2]=b;c[h
>>2]=d;c[j>>2]=e;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=10){l=7;break
}e=(Kr(67222+(c[5212+(c[k>>2]<<2)>>2]|0)|0,c[f>>2]|0)|0)==0;d=c[k>>2]|0;if(e)break
;c[k>>2]=d+1}if((l|0)==7){i=m;return}if(c[(c[j>>2]|0)+(d<<2)>>2]|0){i=m;return}c[(c[j>
;>2]|0)+(c[k>>2]<<2)>>2]=1;c[(c[h>>2]|0)+(c[k>>2]<<2)>>
;2]=c[g>>2];i=m;return}function jr(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;d=h+8|0;e=h+4|0;f=h;c[d>
x3e;2]=a;c[e>>2]=b;c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=10){g=6;break}b=c[f
x3e;>2]|0;if((c[d>>2]|0)==(c[5252+(c[f>>2]<<2)>>2]|0))break;c[f>>2]=b+1}if
((g|0)==6){i=h;return}c[(c[e>>2]|0)+(b<<2)>>2]=2;i=h;return}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;j=i;i=i+32|0;d=j+24|0;l=j+20|0;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[l>>2]=a;c[k>>
;2]=b;c[e>>2]=c[l>>2];c[f>>2]=c[k>>2];c[g>>2]=c[c[e>>2]>>2
]&2147483647;c[h>>2]=c[c[f>>2]>>2]&2147483647;do if((c[g>>2]|0)==(c[h>>
;2]|0)){if((c[c[e>>2]>>2]|0)>>>0>(c[c[f>>2]>>2]|0)>>>
0){c[d>>2]=1;break}if((c[c[e>>2]>>2]|0)>>>0<(c[c[f>>2]>>2]|
0)>>>0){c[d>>2]=-1;break}else{c[d>>2]=0;break}}else{if((c[g>>2]|0)>>>
;0>(c[h>>2]|0)>>>0){c[d>>2]=1;break}if((c[g>>2]|0)>>>0<(c[
h>>2]|0)>>>0){c[d>>2]=-1;break}else{c[d>>2]=0;break}}while(0);i=j;return c[d>
x3e;2]|0}function lr(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;m=i;i=i+32|0;d=m+28|0;n=m+24|0;e=m+20|0;j=m+16
|0;g=m+12|0;h=m+8|0;k=m+4|0;f=m;c[n>>2]=a;c[e>>2]=b;c[k>>2]=0;c[j>>2]=c[(c[n>>
2]|0)+20>>2];c[g>>2]=(c[j>>2]|0)+(c[(c[n>>2]|0)+16>>2]<<3)+-8;while(
1){if((c[j>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[h>>2]=(c[j>
x3e;2]|0)+((((c[g>>2]|0)-(c[j>>2]|0)|0)/8|0)>>1<<3);a=c[h>>2]|0;if((c[c[h>
;>2]>>2]|0)==(c[e>>2]|0)){l=4;break}c[f>>2]=c[a>>2]&2147483647;if((c[f>
x3e;2]|0)==(c[e>>2]|0))c[k>>2]=c[h>>2];if((c[j>>2]|0)==(c[g>>2]|0))break;a=c[h
>>2]|0;if((c[f>>2]|0)>>>0<(c[e>>2]|0)>>>0){c[j>>2]=a+
8;continue}else{c[g>>2]=a+-8;continue}}if((l|0)==4)c[k>>2]=a;if(c[k>>2]|0){c[d>>2]=c[(c[
k>>2]|0)+4>>2];n=c[d>>2]|0;i=m;return n|0}else{c[d>>2]=0;n=c[d>>2]|0;i=m;return
n|0}return 0}function mr(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;o=i;i=i+48|0;d=o+32|0;e=o+28|0;m=o+24
|0;g=o+20|0;l=o+16|0;j=o+12|0;k=o+8|0;h=o+4|0;f=o;c[d>>2]=a;c[e>>2]=b;c[m>>2]=0;c[g>>2]=(
c[c[e>>2]>>2]|0)+1;c[l>>2]=0;c[j>>2]=c[(c[d>>2]|0)+16>>2];while(1){if
((c[l>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;c[k>>2]=(c[l>>
;2]|0)+(((c[j>>2]|0)-(c[l>>2]|0)|0)>>>1);c[h>>2]=(c[(c[d>>2]|0)+20>
x3e;2]|0)+(c[k>>2]<<3);a=c[h>>2]|0;if((c[c[h>>2]>>2]|0)==(c[g>>2]|0)){
n=4;break}c[f>>2]=c[a>>2]&2147483647;if((c[f>>2]|0)==(c[g>>2]|0))c[m>>2]=
c[(c[h>>2]|0)+4>>2];a=c[k>>2]|0;if((c[f>>2]|0)>>>0<(c[g>>2
]|0)>>>0){c[l>>2]=a+1;continue}else{c[j>>2]=a;continue}}if((n|0)==4){c[m>>2]=c[a+4
x3e;>2];l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}if(c[m>
x3e;2]|0){l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}c[g>>2]=
0;if((c[l>>2]|0)>>>0>=(c[(c[d>>2]|0)+16>>2]|0)>>>0){l=c[g>
x3e;2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}c[h>>2]=(c[(c[d>>2]|
0)+20>>2]|0)+(c[l>>2]<<3);c[m>>2]=c[(c[h>>2]|0)+4>>2];c[g>>
;2]=c[c[h>>2]>>2]&2147483647;l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>
;>2]|0;i=o;return n|0}function nr(a){a=a|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=a;c[d>>2]=(c[d>>
;2]|0)>>>0>=258?0:a;i=e;return 67307+(b[8388+(c[d>>2]<<1)>>1]|0)|0}function or
(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[e>>2]=a;if((c[e>>2]|0)>>>0>=391){c[
d>>2]=0;a=c[d>>2]|0;i=f;return a|0}else{c[d>>2]=67307+(b[8904+(c[e>>2]<<1)>
;>1]|0);a=c[d>>2]|0;i=f;return a|0}return 0}function pr(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[f>>2]=c[f>>2];b=qc(5292,c[e>>2]|0)|0;i=d;return b|0}function
qr(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;e=h+12|0;f=h+8|0;d=h+4|0;g=h;c[f>>2]=a;c[d>>2]=b;if
(!(c[f>>2]|0)){c[e>>2]=40;g=c[e>>2]|0;i=h;return g|0}c[(c[f>>2]|0)+12>>2]=0;c[(
c[f>>2]|0)+16>>2]=c[d>>2];c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+8>>
;2]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>>2]|0)+24>>2]=0;c[g>>2]=fs(c[d>>
2]|0,71020)|0;if(!(c[g>>2]|0)){c[e>>2]=1;g=c[e>>2]|0;i=h;return g|0}us(c[g>>2]|0,0,2)|0;
d=ps(c[g>>2]|0)|0;c[(c[f>>2]|0)+4>>2]=d;d=c[g>>2]|0;if(c[(c[f>>2]|0)+4>
x3e;2]|0){us(d,0,0)|0;c[(c[f>>2]|0)+12>>2]=c[g>>2];c[(c[f>>2]|0)+20>>2]=25;c[(
c[f>>2]|0)+24>>2]=44;c[e>>2]=0;g=c[e>>2]|0;i=h;return g|0}else{ks(d)|0;c[e>>2]=
81;g=c[e>>2]|0;i=h;return g|0}return 0}function rr(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;m=
i;i=i+32|0;f=m+20|0;g=m+16|0;h=m+12|0;j=m+8|0;k=m+4|0;l=m;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>
x3e;2]=e;if((c[k>>2]|0)==0?(c[h>>2]|0)>>>0>(c[(c[g>>2]|0)+4>>2]|0)
x3e;>>0:0){c[f>>2]=1;a=c[f>>2]|0;i=m;return a|0}c[l>>2]=c[(c[g>>2]|0)+12>
x3e;2];if((c[(c[g>>2]|0)+8>>2]|0)!=(c[h>>2]|0))us(c[l>>2]|0,c[h>>2]|0,0)|0;c[f
>>2]=ts(c[j>>2]|0,1,c[k>>2]|0,c[l>>2]|0)|0;a=c[f>>2]|0;i=m;return a|0}function
sr(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;ks(c[(c[d>>2]|0)+12>>2]|0)|0;c[(c[d>>
;2]|0)+12>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;i=b;return}function tr(){
var a=0,b=0;b=i;i=i+16|0;a=b;c[a>>2]=Fs(16)|0;if(!(c[a>>2]|0)){a=c[a>>2]|0;i=b;return a|0}c[c[a>
;>2]>>2]=0;c[(c[a>>2]|0)+4>>2]=112;c[(c[a>>2]|0)+12>>2]=26;c[(c[a>
x3e;2]|0)+8>>2]=6;a=c[a>>2]|0;i=b;return a|0}function ur(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[f>>2]=c[f>>2];b=Fs(c[e>>2]|0)|0;i=d;return b|0}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;f=i;i=i+16|0;k=f+12|0;j=f+8|0;g=f+4|0;h=f;c[k>>2]=a;c[j
x3e;>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=c[k>>2];c[j>>2]=c[j>>2];d
=Hs(c[h>>2]|0,c[g>>2]|0)|0;i=f;return d|0}function wr(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[f>>2]=c[f>>2];Gs(c[e>>2]|0);i=d;return}function xr(a
){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Gs(c[d>>2]|0);i=b;return}function yr(a){a=a|0;var b=0,d=0;b=i
;i=i+16|0;d=b;c[d>>2]=c[a+60>>2];a=zr(Aa(6,d|0)|0)|0;i=b;return a|0}function zr(a){a=a|0;if(a>>>
;0>4294963200){c[(Ar()|0)>>2]=0-a;a=-1}return a|0}function Ar(){var a=0;if(!(c[18388]|0))a=73596;else a=c[(xa()|0
)+64>>2]|0;return a|0}function Br(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+80|0;f=g;c[b+36>>2]=47;if((c[
b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21505,c[f+8>>2]=g+12,Fa(54,f
|0)|0):0)a[b+75>>0]=-1;f=Cr(b,d,e)|0;i=g;return f|0}function Cr(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;q=i;i=i+48|0;n=q+16|0;m=q;e=q+32|0;o=a+28|0;f=c[o>>2]|0;c[e>>2]=f;p=a+20|0;f=(c[p>
;>2]|0)-f|0;c[e+4>>2]=f;c[e+8>>2]=b;c[e+12>>2]=d;k=a+60|0;l=a+44|0;b=2;f=f+d|0;while(1){if(!(
c[18388]|0)){c[n>>2]=c[k>>2];c[n+4>>2]=e;c[n+8>>2]=b;h=zr(Ka(146,n|0)|0)|0}else{Da(45,a|
0);c[m>>2]=c[k>>2];c[m+4>>2]=e;c[m+8>>2]=b;h=zr(Ka(146,m|0)|0)|0;ra(0)}if((f|0)==(h|0)){
f=6;break}if((h|0)<0){f=8;break}f=f-h|0;g=c[e+4>>2]|0;if(h>>>0<=g>>>0)if((b|0)==
2){c[o>>2]=(c[o>>2]|0)+h;j=g;b=2}else j=g;else{j=c[l>>2]|0;c[o>>2]=j;c[p>>2]=j
;j=c[e+12>>2]|0;h=h-g|0;e=e+8|0;b=b+-1|0}c[e>>2]=(c[e>>2]|0)+h;c[e+4>>2]=j-h}if((f|0)==6
){n=c[l>>2]|0;c[a+16>>2]=n+(c[a+48>>2]|0);a=n;c[o>>2]=a;c[p>>2]=a}else if((f|0
)==8){c[a+16>>2]=0;c[o>>2]=0;c[p>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else
d=d-(c[e+4>>2]|0)|0}i=q;return d|0}function Dr(a){a=a|0;if(!(c[a+68>>2]|0))Er(a);return}function Er(a){a=a|
0;return}function Fr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c
[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((zr(Ha(140,g|0)|0)|0)<0){c[e>
;>2]=-1;a=-1}else a=c[e>>2]|0;i=f;return a|0}function Gr(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;m=i;i=i+48|0;h=m+16|0;g=m;f=m+32|0;c[f>>2]=d;j=f+4|0;l=b+48|0;n=c[l>>2]|0;c[j>>2]=e-((n|0)!=0
&1);k=b+44|0;c[f+8>>2]=c[k>>2];c[f+12>>2]=n;if(!(c[18388]|0)){c[h>>2]=c[b+60>
x3e;2];c[h+4>>2]=f;c[h+8>>2]=2;f=zr(Ja(145,h|0)|0)|0}else{Da(46,b|0);c[g>>2]=c[b+60>>2];
c[g+4>>2]=f;c[g+8>>2]=2;f=zr(Ja(145,g|0)|0)|0;ra(0)}if((f|0)>=1){j=c[j>>2]|0;if(f>>
x3e;0>j>>>0){g=c[k>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-j);if(!(c[l>>
;2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else{c[b>>2]=c[b>>2
]|f&48^16;c[b+8>>2]=0;c[b+4>>2]=0}i=m;return f|0}function Hr(a){a=a|0;if(!(c[a+68>>2]|0))Er(a
);return}function Ir(a){a=a|0;var b=0;b=(Jr(a)|0)==0;return (b?a:a|32)|0}function Jr(a){a=a|0;return (a+-65|0)>>>
0<26|0}function Kr(b,c){b=b|0;c=c|0;var d=0,e=0;e=a[b>>0]|0;d=a[c>>0]|0;if(e<<24>>24
==0?1:e<<24>>24!=d<<24>>24)c=e;else{do{b=b+1|0;c=c+1|0;e=a[b>>0]|0;d=a[c>
x3e;0]|0}while(!(e<<24>>24==0?1:e<<24>>24!=d<<24>>24));c=e}return (c
&255)-(d&255)|0}function Lr(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;if(!e)c=0;else{f=a[b>>0]|0;a:do if(!(f<
;<24>>24))f=0;else while(1){e=e+-1|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>
;>24&((e|0)!=0&g<<24>>24!=0)))break a;b=b+1|0;c=c+1|0;f=a[b>>0]|0;if(!(f<<
;24>>24)){f=0;break}}while(0);c=(f&255)-(d[c>>0]|0)|0}return c|0}function Mr(b){b=b|0;var d=0,e=0;d=b+74
|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+44|0;if((c[d>>2]|0)>>>0>(c[e>
x3e;2]|0)>>>0)Oa[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[b+28>>2]=0;c[d>
x3e;2]=0;d=c[b>>2]|0;if(d&20)if(!(d&4))d=-1;else{c[b>>2]=d|32;d=-1}else{d=c[e>>2]|0;c[b+
8>>2]=d;c[b+4>>2]=d;d=0}return d|0}function Nr(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;s=i;i=i+224|0;o=s+120|0;r=s+80|0;q=s;p=s+136|0;f=r;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(
g|0));c[o>>2]=c[e>>2];if((Or(0,d,o,q,r)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)m=_r(b)|0;else
m=0;e=c[b>>2]|0;n=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;e=b+48|0;if(!(c[e>
x3e;2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=p;j=b+28|0;c[j>>2]=p;k=b+20|0;c[k>>2]=p;c[e>
;>2]=80;l=b+16|0;c[l>>2]=p+80;f=Or(b,d,o,q,r)|0;if(h){Oa[c[b+36>>2]&63](b,0,0)|0;f=(c[k>>
;2]|0)==0?-1:f;c[g>>2]=h;c[e>>2]=0;c[l>>2]=0;c[j>>2]=0;c[k>>2]=0}}else f=Or(b,
d,o,q,r)|0;e=c[b>>2]|0;c[b>>2]=e|n;if(m|0)Er(b);e=(e&32|0)==0?f:-1}i=s;return e|0}function Or(e,f,g,j,l
){e=e|0;f=f|0;g=g|0;j=j|0;l=l|0;var m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,
J=0,K=0,L=0,M=0,N=0,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;ia=i;i=i+624
|0;da=ia+24|0;fa=ia+16|0;ea=ia+588|0;aa=ia+576|0;ca=ia;W=ia+536|0;ha=ia+8|0;ga=ia+528|0;M=(e|0)!=0;N=W+40|0;V=N;W=W+39|0;X=ha+4|
0;Y=ea;Z=0-Y|0;$=aa+12|0;aa=aa+11|0;ba=$;O=ba-Y|0;P=-2-Y|0;Q=ba+2|0;R=da+288|0;S=ea+9|0;T=S;U=ea+8|0;m=0;o=0;n=0;y=f;a:while(1){
do if((m|0)>-1)if((o|0)>(2147483647-m|0)){c[(Ar()|0)>>2]=75;m=-1;break}else{m=o+m|0;break}while(0);f=a[y>
;>0]|0;if(!(f<<24>>24)){L=244;break}else o=y;b:while(1){switch(f<<24>>24){case 37:{
f=o;L=9;break b}case 0:{f=o;break b}default:{}}K=o+1|0;f=a[K>>0]|0;o=K}c:do if((L|0)==9)while(1){L=0;if((a[f+1>
x3e;0]|0)!=37)break c;o=o+1|0;f=f+2|0;if((a[f>>0]|0)==37)L=9;else break}while(0);w=o-y|0;if(M?(c[e>>2]&
32|0)==0:0)Pr(y,w,e)|0;if((o|0)!=(y|0)){o=w;y=f;continue}r=f+1|0;o=a[r>>0]|0;p=(o<<24>>24)+-48|0;if
(p>>>0<10){K=(a[f+2>>0]|0)==36;r=K?f+3|0:r;o=a[r>>0]|0;u=K?p:-1;n=K?1:n}else u=-1;f=o<
;<24>>24;d:do if((f&-32|0)==32){p=0;while(1){if(!(1<<f+-32&75913)){s=p;break d}p=1<<
;(o<<24>>24)+-32|p;r=r+1|0;o=a[r>>0]|0;f=o<<24>>24;if((f&-32|0)!=32){s=p;
break}}}else s=0;while(0);do if(o<<24>>24==42){o=r+1|0;f=(a[o>>0]|0)+-48|0;if(f>>>0
<10?(a[r+2>>0]|0)==36:0){c[l+(f<<2)>>2]=10;n=1;r=r+3|0;f=c[j+((a[o>>0]|0)+-48<
x3c;3)>>2]|0}else{if(n|0){m=-1;break a}if(!M){v=s;n=0;r=o;K=0;break}n=(c[g>>2]|0)+(4-1)&~(4-1);f=c[n>
;>2]|0;c[g>>2]=n+4;n=0;r=o}if((f|0)<0){v=s|8192;K=0-f|0}else{v=s;K=f}}else{p=(o<<24>>24)+-
48|0;if(p>>>0<10){f=r;o=0;do{o=(o*10|0)+p|0;f=f+1|0;p=(a[f>>0]|0)+-48|0}while(p>>>0
<10);if((o|0)<0){m=-1;break a}else{v=s;r=f;K=o}}else{v=s;K=0}}while(0);e:do if((a[r>>0]|0)==46){f=r+1|0;o=a[
f>>0]|0;if(o<<24>>24!=42){p=(o<<24>>24)+-48|0;if(p>>>0<10)
o=0;else{s=0;break}while(1){o=(o*10|0)+p|0;f=f+1|0;p=(a[f>>0]|0)+-48|0;if(p>>>0>=10){s=o;break e}}}
f=r+2|0;o=(a[f>>0]|0)+-48|0;if(o>>>0<10?(a[r+3>>0]|0)==36:0){c[l+(o<<2)>
x3e;2]=10;s=c[j+((a[f>>0]|0)+-48<<3)>>2]|0;f=r+4|0;break}if(n|0){m=-1;break a}if(M){J=(c[g>
x3e;2]|0)+(4-1)&~(4-1);s=c[J>>2]|0;c[g>>2]=J+4}else s=0}else{s=-1;f=r}while(0);t=0;while(1){o=(a[f>
;>0]|0)+-65|0;if(o>>>0>57){m=-1;break a}p=f+1|0;o=a[71023+(t*58|0)+o>>0]|0;r=o&255;if((r
+-1|0)>>>0<8){f=p;t=r}else{J=p;break}}if(!(o<<24>>24)){m=-1;break}p=(u|0)>-1;do if(
o<<24>>24==19)if(p){m=-1;break a}else L=52;else{if(p){c[l+(u<<2)>>2]=r;H=j+(u<<
;3)|0;I=c[H+4>>2]|0;L=ca;c[L>>2]=c[H>>2];c[L+4>>2]=I;L=52;break}if(!M){m=0;break a}Rr(ca
,r,g)}while(0);if((L|0)==52?(L=0,!M):0){o=w;y=J;continue}u=a[f>>0]|0;u=(t|0)!=0&(u&15|0)==3?u&-33:u;p=v
&-65537;I=(v&8192|0)==0?v:p;f:do switch(u|0){case 110:switch(t|0){case 0:{c[c[ca>>2]>>2]=m;o=w;y=J
;continue a}case 1:{c[c[ca>>2]>>2]=m;o=w;y=J;continue a}case 2:{o=c[ca>>2]|0;c[o>>2]=m;c
[o+4>>2]=((m|0)<0)<<31>>31;o=w;y=J;continue a}case 3:{b[c[ca>>2]>>1]=m;o=
w;y=J;continue a}case 4:{a[c[ca>>2]>>0]=m;o=w;y=J;continue a}case 6:{c[c[ca>>2]>>2]=m;o=
w;y=J;continue a}case 7:{o=c[ca>>2]|0;c[o>>2]=m;c[o+4>>2]=((m|0)<0)<<31>>
31;o=w;y=J;continue a}default:{o=w;y=J;continue a}}case 112:{t=I|8;s=s>>>0>8?s:8;u=120;L=64;break}case 88:case
120:{t=I;L=64;break}case 111:{p=ca;o=c[p>>2]|0;p=c[p+4>>2]|0;if((o|0)==0&(p|0)==0)f=N;else{f=N;do{f=f+-
1|0;a[f>>0]=o&7|48;o=Os(o|0,p|0,3)|0;p=C}while(!((o|0)==0&(p|0)==0))}if(!(I&8)){o=I;t=0;r=71503;L=77}else
{t=V-f|0;o=I;s=(s|0)>(t|0)?s:t+1|0;t=0;r=71503;L=77}break}case 105:case 100:{o=ca;f=c[o>>2]|0;o=c[o+4>>
2]|0;if((o|0)<0){f=Ls(0,0,f|0,o|0)|0;o=C;p=ca;c[p>>2]=f;c[p+4>>2]=o;p=1;r=71503;L=76;break f}if(!(I&
;2048)){r=I&1;p=r;r=(r|0)==0?71503:71505;L=76}else{p=1;r=71504;L=76}break}case 117:{o=ca;f=c[o>>2]|0;o=c[o+4>
;>2]|0;p=0;r=71503;L=76;break}case 99:{a[W>>0]=c[ca>>2];f=W;u=1;w=0;v=71503;o=N;break}case 109:{o=Tr(c[(
Ar()|0)>>2]|0)|0;L=82;break}case 115:{o=c[ca>>2]|0;o=o|0?o:73405;L=82;break}case 67:{c[ha>>2]=c[ca
>>2];c[X>>2]=0;c[ca>>2]=ha;f=ha;s=-1;L=86;break}case 83:{f=c[ca>>2]|0;if(!s){Vr(e,32,K,0
,I);f=0;L=97}else L=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{q=+h[ca>>3];c[fa>
;>2]=0;h[k>>3]=q;if((c[k+4>>2]|0)>=0)if(!(I&2048)){H=I&1;G=H;H=(H|0)==0?73413:73418}else
{G=1;H=73415}else{q=-q;G=1;H=73412}h[k>>3]=q;F=c[k+4>>2]&2146435072;do if(F>>>0<2146435072
|(F|0)==2146435072&0<0){x=+Yr(q,fa)*2.0;o=x!=0.0;if(o)c[fa>>2]=(c[fa>>2]|0)+-1;D=u|32;if((D|0)==97
){v=u&32;y=(v|0)==0?H:H+9|0;w=G|2;f=12-s|0;do if(!(s>>>0>11|(f|0)==0)){q=8.0;do{f=f+-1|0;q=q*16.0}while
((f|0)!=0);if((a[y>>0]|0)==45){q=-(q+(-x-q));break}else{q=x+q-q;break}}else q=x;while(0);o=c[fa>>2]|0;f=(o|0
)<0?0-o|0:o;f=Sr(f,((f|0)<0)<<31>>31,$)|0;if((f|0)==($|0)){a[aa>>0]=48;f=aa}a[f+-1>
x3e;0]=(o>>31&2)+43;t=f+-2|0;a[t>>0]=u+15;r=(s|0)<1;p=(I&8|0)==0;o=ea;while(1){H=~~q;f=o+1|0;
a[o>>0]=d[71487+H>>0]|v;q=(q-+(H|0))*16.0;do if((f-Y|0)==1){if(p&(r&q==0.0))break;a[f>>0
]=46;f=o+2|0}while(0);if(!(q!=0.0))break;else o=f}p=t;s=(s|0)!=0&(P+f|0)<(s|0)?Q+s-p|0:O-p+f|0;r=s+w|0;Vr(e,32,K,r,I);
if(!(c[e>>2]&32))Pr(y,w,e)|0;Vr(e,48,K,r,I^65536);o=f-Y|0;if(!(c[e>>2]&32))Pr(ea,o,e)|0;f=ba-p|0;Vr
(e,48,s-(o+f)|0,0,0);if(!(c[e>>2]&32))Pr(t,f,e)|0;Vr(e,32,K,r,I^8192);f=(r|0)<(K|0)?K:r;break}f=(s|0)<0
?6:s;if(o){o=(c[fa>>2]|0)+-28|0;c[fa>>2]=o;q=x*268435456.0}else{q=x;o=c[fa>>2]|0}F=(o|0)<0?da
:R;E=F;o=F;do{B=~~q>>>0;c[o>>2]=B;o=o+4|0;q=(q-+(B>>>0))*1.0e9}while(q!=0.0);p=o;o=c[fa
x3e;>2]|0;if((o|0)>0){s=F;while(1){t=(o|0)>29?29:o;r=p+-4|0;do if(r>>>0<s>>>0)
r=s;else{o=0;do{B=Ps(c[r>>2]|0,0,t|0)|0;B=Ms(B|0,C|0,o|0,0)|0;o=C;A=$s(B|0,o|0,1e9,0)|0;c[r>>2]=A;o=_s(B|0,o
|0,1e9,0)|0;r=r+-4|0}while(r>>>0>=s>>>0);if(!o){r=s;break}r=s+-4|0;c[r>>2]=o}while(
0);while(1){if(p>>>0<=r>>>0)break;o=p+-4|0;if(!(c[o>>2]|0))p=o;else break}o=(c[fa
x3e;>2]|0)-t|0;c[fa>>2]=o;if((o|0)>0)s=r;else break}}else r=F;if((o|0)<0){y=((f+25|0)/9|0)+1|0;z=(D|0)==
102;v=r;while(1){w=0-o|0;w=(w|0)>9?9:w;do if(v>>>0<p>>>0){o=(1<<w)+-1|0;s=1e9
x3e;>>w;r=0;t=v;do{B=c[t>>2]|0;c[t>>2]=(B>>>w)+r;r=_(B&o,s)|0;t=t+4|0}while(t
x3e;>>0<p>>>0);o=(c[v>>2]|0)==0?v+4|0:v;if(!r){r=o;break}c[p>>2]=r;r=o;p=p+4|0
}else r=(c[v>>2]|0)==0?v+4|0:v;while(0);o=z?F:r;p=(p-o>>2|0)>(y|0)?o+(y<<2)|0:p;o=(c[fa>
x3e;2]|0)+w|0;c[fa>>2]=o;if((o|0)>=0){z=r;break}else v=r}}else z=r;do if(z>>>0<p>>
x3e;0){o=(E-z>>2)*9|0;s=c[z>>2]|0;if(s>>>0<10)break;else r=10;do{r=r*10|0;o=o+1|0}while(
s>>>0>=r>>>0)}else o=0;while(0);A=(D|0)==103;B=(f|0)!=0;r=f-((D|0)!=102?o:0)+((B&A)<
;<31>>31)|0;if((r|0)<(((p-E>>2)*9|0)+-9|0)){t=r+9216|0;r=F+4+(((t|0)/9|0)+-1024<<2)|0;t=((
t|0)%9|0)+1|0;if((t|0)<9){s=10;do{s=s*10|0;t=t+1|0}while((t|0)!=9)}else s=10;w=c[r>>2]|0;y=(w>>>0)%(
s>>>0)|0;t=(r+4|0)==(p|0);do if(t&(y|0)==0)s=z;else{x=(((w>>>0)/(s>>>0)|0)&
;1|0)==0?9007199254740992.0:9007199254740994.0;v=(s|0)/2|0;if(y>>>0<v>>>0)q=.5;else q=t&(
y|0)==(v|0)?1.0:1.5;do if(G){if((a[H>>0]|0)!=45)break;x=-x;q=-q}while(0);t=w-y|0;c[r>>2]=t;if(!(x+q!=x)){s=z
;break}D=t+s|0;c[r>>2]=D;if(D>>>0>999999999){o=z;while(1){s=r+-4|0;c[r>>2]=0;if(s>
x3e;>0<o>>>0){o=o+-4|0;c[o>>2]=0}D=(c[s>>2]|0)+1|0;c[s>>2]=D;if(D>
x3e;>0>999999999)r=s;else{v=o;r=s;break}}}else v=z;o=(E-v>>2)*9|0;t=c[v>>2]|0;if(t>>>
;0<10){s=v;break}else s=10;do{s=s*10|0;o=o+1|0}while(t>>>0>=s>>>0);s=v}while(0);D=r+4|0;
z=s;p=p>>>0>D>>>0?D:p}w=0-o|0;while(1){if(p>>>0<=z>>>0){y=
0;D=p;break}r=p+-4|0;if(!(c[r>>2]|0))p=r;else{y=1;D=p;break}}do if(A){f=(B&1^1)+f|0;if((f|0)>(o|0)&(o|0
)>-5){u=u+-1|0;f=f+-1-o|0}else{u=u+-2|0;f=f+-1|0}p=I&8;if(p|0)break;do if(y){p=c[D+-4>>2]|0;if(!p){r=9;break
}if(!((p>>>0)%10|0)){s=10;r=0}else{r=0;break}do{s=s*10|0;r=r+1|0}while(!((p>>>0)%(s>>>
;0)|0|0))}else r=9;while(0);p=((D-E>>2)*9|0)+-9|0;if((u|32|0)==102){p=p-r|0;p=(p|0)<0?0:p;f=(f|0)<(p|0)?f:p;
p=0;break}else{p=p+o-r|0;p=(p|0)<0?0:p;f=(f|0)<(p|0)?f:p;p=0;break}}else p=I&8;while(0);v=f|p;s=(v|0)!=0&1;t
=(u|32|0)==102;if(t){o=(o|0)>0?o:0;u=0}else{r=(o|0)<0?w:o;r=Sr(r,((r|0)<0)<<31>>31,$)|0;if((ba
-r|0)<2)do{r=r+-1|0;a[r>>0]=48}while((ba-r|0)<2);a[r+-1>>0]=(o>>31&2)+43;E=r+-2|0;a
[E>>0]=u;o=ba-E|0;u=E}w=G+1+f+s+o|0;Vr(e,32,K,w,I);if(!(c[e>>2]&32))Pr(H,G,e)|0;Vr(e,48,K,w,I^65536);do
if(t){r=z>>>0>F>>>0?F:z;o=r;do{p=Sr(c[o>>2]|0,0,S)|0;do if((o|0)==(r|0)){if((p|0)!=(
S|0))break;a[U>>0]=48;p=U}else{if(p>>>0<=ea>>>0)break;Ns(ea|0,48,p-Y|0)|0;do p=p+-1
|0;while(p>>>0>ea>>>0)}while(0);if(!(c[e>>2]&32))Pr(p,T-p|0,e)|0;o=o+4|0}while
(o>>>0<=F>>>0);do if(v|0){if(c[e>>2]&32|0)break;Pr(73447,1,e)|0}while(0);if((f
|0)>0&o>>>0<D>>>0){p=o;while(1){o=Sr(c[p>>2]|0,0,S)|0;if(o>>>
;0>ea>>>0){Ns(ea|0,48,o-Y|0)|0;do o=o+-1|0;while(o>>>0>ea>>>0)}if(!(c[e
x3e;>2]&32))Pr(o,(f|0)>9?9:f,e)|0;p=p+4|0;o=f+-9|0;if(!((f|0)>9&p>>>0<D>>
x3e;0)){f=o;break}else f=o}}Vr(e,48,f+9|0,9,0)}else{t=y?D:z+4|0;if((f|0)>-1){s=(p|0)==0;r=z;do{o=Sr(c[r>>2]|0,0,S
)|0;if((o|0)==(S|0)){a[U>>0]=48;o=U}do if((r|0)==(z|0)){p=o+1|0;if(!(c[e>>2]&32))Pr(o,1,e)|0;if(s&(
f|0)<1){o=p;break}if(c[e>>2]&32|0){o=p;break}Pr(73447,1,e)|0;o=p}else{if(o>>>0<=ea>
x3e;>0)break;Ns(ea|0,48,o+Z|0)|0;do o=o+-1|0;while(o>>>0>ea>>>0)}while(0);p=T-o|0;if(!(c
[e>>2]&32))Pr(o,(f|0)>(p|0)?p:f,e)|0;f=f-p|0;r=r+4|0}while(r>>>0<t>>>0&
;(f|0)>-1)}Vr(e,48,f+18|0,18,0);if(c[e>>2]&32|0)break;Pr(u,ba-u|0,e)|0}while(0);Vr(e,32,K,w,I^8192);f=(w|0)
x3c;(K|0)?K:w}else{t=(u&32|0)!=0;s=q!=q|0.0!=0.0;o=s?0:G;r=o+3|0;Vr(e,32,K,r,p);f=c[e>>2]|0;if(!(f&32)){Pr(H
,o,e)|0;f=c[e>>2]|0}if(!(f&32))Pr(s?(t?73439:73443):t?73431:73435,3,e)|0;Vr(e,32,K,r,I^8192);f=(r|0)<(K|0)?K
:r}while(0);o=f;y=J;continue a}default:{f=y;p=I;u=s;w=0;v=71503;o=N}}while(0);g:do if((L|0)==64){p=ca;o=c[p>>2]|0;p=c[
p+4>>2]|0;r=u&32;if(!((o|0)==0&(p|0)==0)){f=N;do{f=f+-1|0;a[f>>0]=d[71487+(o&15)>>0
]|r;o=Os(o|0,p|0,4)|0;p=C}while(!((o|0)==0&(p|0)==0));L=ca;if((t&8|0)==0|(c[L>>2]|0)==0&(c[L+4>>
;2]|0)==0){o=t;t=0;r=71503;L=77}else{o=t;t=2;r=71503+(u>>4)|0;L=77}}else{f=N;o=t;t=0;r=71503;L=77}}else if((L|0)==76){
f=Sr(f,o,N)|0;o=I;t=p;L=77}else if((L|0)==82){L=0;I=Ur(o,0,s)|0;H=(I|0)==0;f=o;u=H?s:I-o|0;w=0;v=71503;o=H?o+s|0:I}else if((L|0)==
86){L=0;p=0;o=0;t=f;while(1){r=c[t>>2]|0;if(!r)break;o=Wr(ga,r)|0;if((o|0)<0|o>>>0>(s-p|0)>
;>>0)break;p=o+p|0;if(s>>>0>p>>>0)t=t+4|0;else break}if((o|0)<0){m=-1;break a}
Vr(e,32,K,p,I);if(!p){f=0;L=97}else{r=0;while(1){o=c[f>>2]|0;if(!o){f=p;L=97;break g}o=Wr(ga,o)|0;r=o+r|0;if((r|0)>
;(p|0)){f=p;L=97;break g}if(!(c[e>>2]&32))Pr(ga,o,e)|0;if(r>>>0>=p>>>0){f=p;L=
97;break}else f=f+4|0}}}while(0);if((L|0)==97){L=0;Vr(e,32,K,f,I^8192);o=(K|0)>(f|0)?K:f;y=J;continue}if((L|0)==77){L=0;p=(
s|0)>-1?o&-65537:o;o=ca;o=(c[o>>2]|0)!=0|(c[o+4>>2]|0)!=0;if((s|0)!=0|o){u=(o&1^1)+(V-f)|0;u=(
s|0)>(u|0)?s:u;w=t;v=r;o=N}else{f=N;u=0;w=t;v=r;o=N}}t=o-f|0;r=(u|0)<(t|0)?t:u;s=w+r|0;o=(K|0)<(s|0)?s:K;Vr(e,32,
o,s,p);if(!(c[e>>2]&32))Pr(v,w,e)|0;Vr(e,48,o,s,p^65536);Vr(e,48,r,t,0);if(!(c[e>>2]&32))Pr(f,t,e)|
0;Vr(e,32,o,s,p^8192);y=J}h:do if((L|0)==244)if(!e)if(n){m=1;while(1){n=c[l+(m<<2)>>2]|0;if(!n)break;Rr(j+(m
<<3)|0,n,g);m=m+1|0;if((m|0)>=10){m=1;break h}}if((m|0)<10)while(1){if(c[l+(m<<2)>>2]|0){
m=-1;break h}m=m+1|0;if((m|0)>=10){m=1;break}}else m=1}else m=0;while(0);i=ia;return m|0}function Pr(b,d,e){b=b|0;d=d|0;e=e
|0;var f=0,g=0,h=0,i=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(Qr(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((
h|0)==5){i=e+20|0;f=c[i>>2]|0;h=f;if((g-f|0)>>>0<d>>>0){f=Oa[c[e+36>>2]
x26;63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){f=d;while(1){if(!f){g=h;f=0;break b}g=f+-1|0;if((a[b+g>>
;0]|0)==10)break;else f=g}if((Oa[c[e+36>>2]&63](e,b,f)|0)>>>0<f>>>0)break a;d=
d-f|0;b=b+f|0;g=c[i>>2]|0}else{g=h;f=0}while(0);Ss(g|0,b|0,d|0)|0;c[i>>2]=(c[i>>2]|0)+d;f=f+d|0}while
(0);return f|0}function Qr(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if
(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;d=c[b+44>>2]|0;c[b+28>>2]=d;c[b+20>>2]=d
;c[b+16>>2]=d+(c[b+48>>2]|0);d=0}else{c[b>>2]=d|32;d=-1}return d|0}function Rr(a,b,d){a=a|0;b=b|0;
d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b
=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e
x3e;>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break
a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4
x3e;>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d
x3e;>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f
x3e;>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((
e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>
;>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1
);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>
;2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;
c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&
;~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1
);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function Sr(b,
c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295)while(1){e=$s(b
|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e|48;e=_s(b|0,c|0,10,0)|0;if(c>>>0>9|(c|0)==9&b>>
x3e;0>4294967295){b=e;c=C}else{b=e;break}}if(b)while(1){d=d+-1|0;a[d>>0]=(b>>>0)%10|0|48;if(b>
;>>0<10)break;else b=(b>>>0)/10|0}return d|0}function Tr(b){b=b|0;var c=0,e=0;c=0;while(1){if((d[71513
+c>>0]|0)==(b|0)){e=2;break}c=c+1|0;if((c|0)==87){c=87;b=71601;e=5;break}}if((e|0)==2)if(!c)b=71601;else{b=71601;e=5}if
((e|0)==5)while(1){e=b;while(1){b=e+1|0;if(!(a[e>>0]|0))break;else e=b}c=c+-1|0;if(!c)break;else e=5}return b|0}function
Ur(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if
((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5
;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24
>>24){f=_(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144
)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e
){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(
0);return (e|0?b:0)|0}function Vr(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;j=i;i=i+256|0;h=j;do if((d|0)>(e
|0)&(f&73728|0)==0){f=d-e|0;Ns(h|0,b|0,(f>>>0>256?256:f)|0)|0;b=c[a>>2]|0;g=(b&32|0
)==0;if(f>>>0>255){e=d-e|0;do{if(g){Pr(h,256,a)|0;b=c[a>>2]|0}f=f+-256|0;g=(b&32|0)==0}while(
f>>>0>255);if(g)f=e&255;else break}else if(!g)break;Pr(h,f,a)|0}while(0);i=j;return}function Wr(a,b){a=
a|0;b=b|0;if(!a)a=0;else a=Xr(a,b,0)|0;return a|0}function Xr(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128
){a[b>>0]=d;b=1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0
]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224
;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>
;0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>
x3e;0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(Ar()|0)>>2]=84;b=-1;break}}
else b=1;while(0);return b|0}function Yr(a,b){a=+a;b=b|0;return +(+Zr(a,b))}function Zr(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[k>
;>3]=a;d=c[k>>2]|0;e=c[k+4>>2]|0;f=Os(d|0,e|0,52)|0;f=f&2047;switch(f|0){case 0:{if(a!=0.0){a=+Zr(
a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>
x3e;2]=f+-1022;c[k>>2]=d;c[k+4>>2]=e&-2146435073|1071644672;a=+h[k>>3]}}return +a}function _r
(a){a=a|0;return 0}function $r(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)d=0;else{f=d;e=b;while(1){b=a[e>>0]|0;d
=a[c>>0]|0;if(b<<24>>24!=d<<24>>24)break;f=f+-1|0;if(!f){d=0;break a}else{e=e+
1|0;c=c+1|0}}d=(b&255)-(d&255)|0}while(0);return d|0}function as(a,b,c){a=a|0;b=b|0;c=c|0;bs(a,b,c)|0;return a|0}function
bs(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;do if(!((g^b)&3)){f=(e|0)!=0;a:do if(f&(g&3|0)!=0)while(1){g=a[d
>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0;if(!(f&
;(d&3|0)!=0)){h=5;break}}else h=5;while(0);if((h|0)==5)if(!f){e=0;break}if(a[d>>0]|0){b:do if(e>>>
0>3)do{f=c[d>>2]|0;if((f&-2139062144^-2139062144)&f+-16843009|0)break b;c[b>>2]=f;e=e+-4|0;d=
d+4|0;b=b+4|0}while(e>>>0>3);while(0);h=11}}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a
[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|
0}while(0);Ns(b|0,0,e|0)|0;return b|0}function cs(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=b;b=f;while(1){if(!(
a[d>>0]|0))break a;d=d+1|0;b=d;if(!(b&3)){b=d;e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if
(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;
while((a[b>>0]|0)!=0)}return b-f|0}function ds(a,b){a=a|0;b=b|0;es(a,b)|0;return a|0}function es(b,d){b=b|0;d=d|0;var
e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24
))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){
f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break
;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+
1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function fs(b,d){b=b|0;
d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+32|0;f=g+16|0;e=g;if(Ur(73449,a[d>>0]|0,4)|0){h=gs(d)|0|32768;c[e>>2]=b;c[
e+4>>2]=h;c[e+8>>2]=438;e=zr(Ca(5,e|0)|0)|0;if((e|0)>=0){b=js(e,d)|0;if(!b){c[f>>2]=e;Aa(6,f|
0)|0;b=0}}else b=0}else{c[(Ar()|0)>>2]=22;b=0}i=g;return b|0}function gs(b){b=b|0;var c=0,d=0,e=0;d=(hs(b,43)|0)==0;c=
a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(hs(b,120)|0)==0;d=e?d:d|128;b=(hs(b,101)|0)==0;b=b?d:d|524288
;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==
97?b|1024:b)|0}function hs(b,c){b=b|0;c=c|0;b=is(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?
b:0)|0}function is(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(cs(b)|0)|0;else{if(b&3){e=d&255;do{g=
a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b
=b+1|0}while((b&3|0)!=0)}f=_(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009
))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144
^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g
x3c;<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function js(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;o=i;i=i+112|0;n=o+40|0;l=o+24|0;k=o+16|0;g=o;m=o+52|0;f=a[d>>0]|0;if(Ur(73449
,f<<24>>24,4)|0){e=Fs(1144)|0;if(!e)e=0;else{h=e;j=h+112|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(
j|0));if(!(hs(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(hs(d,101)|0){c[g>>2]=b;c[g+4>
x3e;2]=2;c[g+8>>2]=1;sa(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[k>>2]=b;c[k
+4>>2]=3;f=sa(221,k|0)|0;if(!(f&1024)){c[l>>2]=b;c[l+4>>2]=4;c[l+8>>2]=f|1024;sa(221
,l|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+120
;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21505,c[n+8
>>2]=m,(Fa(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=48;c[e+36>>2]=47;c[e+40>>2]=
32;c[e+12>>2]=33;if(!(c[18389]|0))c[e+76>>2]=-1;ua(73580);f=c[18394]|0;c[e+56>>2]=f;if(f|0)c[f+52
x3e;>2]=e;c[18394]=e;Ga(73580)}}else{c[(Ar()|0)>>2]=22;e=0}i=o;return e|0}function ks(a){a=a|0;var b=0,d=0,e=0;e=(
c[a>>2]&1|0)!=0;if(!e){ua(73580);d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];
b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[18394]|0)==(a|0))c[18394]=b;Ga(73580)}b=ls(a)|0;b=Ta[c[a+12>>
;2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)Gs(d);if(!e)Gs(a);return b|0}function ls(a){a=a|0;var b=0,d=0;do if(a){if((c
[a+76>>2]|0)<=-1){b=ms(a)|0;break}d=(_r(a)|0)==0;b=ms(a)|0;if(!d)Er(a)}else{if(!(c[1356]|0))b=0;else b=ls(c[1356]|
0)|0;ua(73580);a=c[18394]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=_r(a)|0;else d=0;if((c[a+20>>2]|0)>>
;>0>(c[a+28>>2]|0)>>>0)b=ms(a)|0|b;if(d|0)Er(a);a=c[a+56>>2]|0}while((a|0)!=0);Ga(73580
)}while(0);return b|0}function ms(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;g=a+28|0;if((c[b>>2]|0)>>>
;0>(c[g>>2]|0)>>>0?(Oa[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)b=-1;else
{h=a+4|0;d=c[h>>2]|0;e=a+8|0;f=c[e>>2]|0;if(d>>>0<f>>>0)Oa[c[a+40>
x3e;2]&63](a,d-f|0,1)|0;c[a+16>>2]=0;c[g>>2]=0;c[b>>2]=0;c[e>>2]=0;c[h>>2
]=0;b=0}return b|0}function ns(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>
x3e;0>(c[a+28>>2]|0)>>>0?2:1;b=Oa[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a
+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function os(a){a=a|0;
var b=0;if((c[a+76>>2]|0)>-1){b=(_r(a)|0)==0;a=ns(a)|0}else a=ns(a)|0;return a|0}function ps(a){a=a|0;return os(a
)|0}function qs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(_r(a)|0)==0;b=rs(a,b,d)|0;if(!e)Er(a)}else
b=rs(a,b,d)|0;return b|0}function rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>
x3e;2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Oa[c[a+
36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>
;2]=0;if((Oa[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>
;2]=c[a>>2]&-17;b=0}}return b|0}function ss(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;b=Nr
(c[1327]|0,a,e)|0;i=d;return b|0}function ts(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;j=_(e,d)|0;if((c[f+76
x3e;>2]|0)>-1)k=_r(f)|0;else k=0;g=f+74|0;i=a[g>>0]|0;a[g>>0]=i+255|i;g=f+4|0;i=c[g>>2]|
0;h=(c[f+8>>2]|0)-i|0;if((h|0)>0){h=h>>>0<j>>>0?h:j;Ss(b|0,i|0,h|0)|0;c[g>
;>2]=i+h;b=b+h|0;g=j-h|0}else g=j;a:do if(!g)l=13;else{i=f+32|0;h=g;while(1){if(Mr(f)|0){e=h;break}g=Oa[c[i>>2]
x26;63](f,b,h)|0;if((g+1|0)>>>0<2){e=h;break}if((h|0)==(g|0)){l=13;break a}else{b=b+g|0;h=h-g|0}}if(k|0)Er(f
);e=((j-e|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(k)Er(f);return e|0}function us(a,b,c){a=a|0;b
=b|0;c=c|0;return qs(a,b,c)|0}function vs(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;w=i;i=i+1056|0;u=w+1024|0;v=w;k=a[e>>0]|0;do if(k<<24>>24){t=hs(b,k<<24>>24
)|0;if(t){j=a[e+1>>0]|0;if(j<<24>>24){f=t+1|0;m=a[f>>0]|0;if(m<<24>>
24){h=a[e+2>>0]|0;if(!(h<<24>>24)){j=j&255|(k&255)<<8;b=m;g=d[t>>0]
x3c;<8|m&255;while(1){g=g&65535;if((g|0)==(j|0))break;f=f+1|0;h=a[f>>0]|0;if(!(h<<24>>
;24)){b=0;break}else{b=h;g=h&255|g<<8}}b=b<<24>>24?f+-1|0:0;break}f=t+2|0;b=a[f>>0]|
0;if(b<<24>>24){g=a[e+3>>0]|0;if(!(g<<24>>24)){h=(j&255)<<16|(k
&255)<<24|(h&255)<<8;g=(b&255)<<8|(m&255)<<16|d[t>>0]<
;<24;if((g|0)!=(h|0))do{f=f+1|0;b=a[f>>0]|0;g=(b&255|g)<<8}while(!(b<<24>>24==
0|(g|0)==(h|0)));b=b<<24>>24?f+-2|0:0;break}f=t+3|0;l=a[f>>0]|0;if(l<<24>>24){
if(!(a[e+4>>0]|0)){h=(j&255)<<16|(k&255)<<24|(h&255)<<8|g&255;b=(b
x26;255)<<8|(m&255)<<16|l&255|d[t>>0]<<24;if((b|0)==(h|0))b=l;else{g=b;do{f=f+
1|0;b=a[f>>0]|0;g=b&255|g<<8}while(!(b<<24>>24==0|(g|0)==(h|0)))}b=b<<24
x3e;>24?f+-3|0:0;break};c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[u+12>>2]=0;c[u+16>
x3e;2]=0;c[u+20>>2]=0;c[u+24>>2]=0;c[u+28>>2]=0;b=k;g=0;while(1){if(!(a[t+g>>0]|0)){b=0;
break}f=u+(((b&255)>>>5&255)<<2)|0;c[f>>2]=c[f>>2]|1<<(b&31
);f=g+1|0;c[v+((b&255)<<2)>>2]=f;b=a[e+f>>0]|0;if(!(b<<24>>24)){n=23;break
}else g=f}a:do if((n|0)==23){b:do if(f>>>0>1){h=1;n=-1;b=0;c:while(1){m=1;while(1){d:while(1){j=1;while(1){k
=a[e+(j+n)>>0]|0;l=a[e+h>>0]|0;if(k<<24>>24!=l<<24>>24){m=h;j=k;h=l;
break d}if((j|0)==(m|0))break;j=j+1|0;h=j+b|0;if(h>>>0>=f>>>0){b=n;p=m;break c}}b=b+m|0;h=b+1
|0;if(h>>>0>=f>>>0){b=n;p=m;break c}}k=m-n|0;if((j&255)<=(h&255))break;b=m+1|0
;if(b>>>0<f>>>0){h=b;b=m;m=k}else{b=n;p=k;break c}}h=b+2|0;if(h>>>0>=f>
;>>0){p=1;break}else{n=b;b=b+1|0}}j=1;k=-1;h=0;while(1){l=h;h=1;while(1){o=l;e:while(1){l=1;while(1){n=a[e+(l+k)>
x3e;0]|0;m=a[e+j>>0]|0;if(n<<24>>24!=m<<24>>24){l=j;j=o;break e}if((l|0)==(h|0
))break;l=l+1|0;j=l+o|0;if(j>>>0>=f>>>0){j=p;break b}}o=o+h|0;j=o+1|0;if(j>>>0
>=f>>>0){j=p;break b}}h=l-k|0;if((n&255)>=(m&255)){h=j;break}j=l+1|0;if(j>>>0
x3e;=f>>>0){j=p;break b}}j=h+2|0;if(j>>>0>=f>>>0){k=h;j=p;h=1;break}else{k=h;h
=h+1|0}}}else{b=-1;k=-1;j=1;h=1}while(0);r=(k+1|0)>>>0>(b+1|0)>>>0;h=r?h:j;r=r?k:b;q=r+1|0;if
(!($r(e,e+h|0,q)|0))s=f-h|0;else{h=f-r+-1|0;s=0;h=(r>>>0>h>>>0?r:h)+1|0}n=f|63;o=(s|0)!=0;p=f
-h|0;b=t;m=0;l=t;f:while(1){j=b;do if((l-j|0)>>>0<f>>>0){k=Ur(l,0,n)|0;if(k)if((k-j|0)>
x3e;>0<f>>>0){b=0;break a}else break;else{k=l+n|0;break}}else k=l;while(0);j=a[b+g>>0]|0;if(!(
1<<(j&31)&c[u+(((j&255)>>>5&255)<<2)>>2])){b=b+f|0;m=0;l=k;continue
}t=c[v+((j&255)<<2)>>2]|0;j=f-t|0;if((f|0)!=(t|0)){b=b+(o&(m|0)!=0&j>>>0<
h>>>0?p:j)|0;m=0;l=k;continue}j=q>>>0>m>>>0?q:m;l=a[e+j>>0]|0;g:do if
(!(l<<24>>24))j=q;else{while(1){if(l<<24>>24!=(a[b+j>>0]|0))break;j=j+1|0;l=a[
e+j>>0]|0;if(!(l<<24>>24)){j=q;break g}}b=b+(j-r)|0;m=0;l=k;continue f}while(0);do{if(j>>
;>0<=m>>>0)break a;j=j+-1|0}while((a[e+j>>0]|0)==(a[b+j>>0]|0));b=b+h|0;m=s;l=k}}while
(0)}else b=0}else b=0}else b=0}else b=t}else b=0}while(0);i=w;return b|0}function ws(a){a=a|0;var b=0,c=0;c=(cs(a)|0)+1|0;b=Fs(c
)|0;if(!b)b=0;else Ss(b|0,a|0,c|0)|0;return b|0}function xs(a,b){a=a|0;b=b|0;return ys(a,b,(cs(a)|0)+1|0)|0}function ys(b,c,d){b
=b|0;c=c|0;d=d|0;var e=0;e=c&255;do{if(!d){c=0;break}d=d+-1|0;c=b+d|0}while((a[c>>0]|0)!=e<<24>>
;24);return c|0}function zs(a,b){a=a|0;b=b|0;ds(a+(cs(a)|0)|0,b)|0;return a|0}function As(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;e=a[b
>>0]|0;a:do if(!(e<<24>>24))b=0;else{g=e;f=e&255;while(1){e=a[c>>0]|0;if(!(e<
x3c;24>>24)){b=g;break a}if(g<<24>>24!=e<<24>>24?(g=Ir(f)|0,(g|0)!=(Ir(d[c>
;>0]|0)|0)):0)break;b=b+1|0;c=c+1|0;e=a[b>>0]|0;if(!(e<<24>>24)){b=0;break a}else{g=e;f=e&
;255}}b=a[b>>0]|0}while(0);g=Ir(b&255)|0;return g-(Ir(d[c>>0]|0)|0)|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,r=0;r=i;i=i+208|0;o=r+8|0;p=r;f=_(d,b)|0;n=p;c[n>>2]=1;c[n
+4>>2]=0;if(f|0){n=0-d|0;c[o+4>>2]=d;c[o>>2]=d;g=d;b=d;h=2;while(1){b=b+d+g|0;c[o+(h<<2)
x3e;>2]=b;if(b>>>0<f>>>0){m=g;g=b;h=h+1|0;b=m}else break}h=a+f+n|0;m=p+4|0;if(h>>
;>0>a>>>0){j=h;g=1;f=1;while(1){do if((g&3|0)==3){Cs(a,d,e,f,o);l=c[m>>2]|0;b=l<<
;30|(c[p>>2]|0)>>>2;c[p>>2]=b;c[m>>2]=l>>>2;f=f+2|0}else{b=f+-1|0;if
((c[o+(b<<2)>>2]|0)>>>0<(j-a|0)>>>0)Cs(a,d,e,f,o);else Es(a,d,e,p,f,0,o);
if((f|0)==1){b=c[p>>2]|0;c[m>>2]=b>>>31|c[m>>2]<<1;b=b<<1;c[p
x3e;>2]=b;f=0;break}if(b>>>0>31){g=c[p>>2]|0;c[m>>2]=g;c[p>>2]=0;b=f+-33|
0;f=g;g=0}else{f=c[m>>2]|0;g=c[p>>2]|0}c[m>>2]=g>>>(32-b|0)|f<<b;b=g<
;<b;c[p>>2]=b;f=1}while(0);g=b|1;c[p>>2]=g;b=a+d|0;if(b>>>0>=h>>>0){
a=f;break}else a=b}}else{b=a;a=1}Es(b,d,e,p,a,0,o);l=p+4|0;g=c[p>>2]|0;h=c[l>>2]|0;f=(h|0)==0;if(!((a|0)==1
x26;(g|0)==1&f)){k=h;while(1){if((a|0)<2){h=g+-1|0;do if(h){if(!(h&1)){f=0;do{f=f+1|0;h=h>>>1}while
(!(h&1|0))}else{if(f)f=32;else{if(!(k&1)){h=k;f=0}else{j=0;h=k;f=0;break}do{f=f+1|0;h=h>>>1}while(!(h
x26;1|0))}f=f+32|0}if(f>>>0>31)q=28;else{j=f;h=k}}else{f=32;q=28}while(0);if((q|0)==28){q=0;c[p>>2
]=k;c[m>>2]=0;j=f+-32|0;g=k;h=0}c[p>>2]=h<<32-j|g>>>j;c[m>>2]=h>>
;>j;b=b+n|0;h=f+a|0}else{j=g>>>30;h=a+-2|0;c[p>>2]=(g<<1&2147483646|j<<31
)^3;c[m>>2]=(j|k<<2)>>>1;Es(b+(0-(c[o+(h<<2)>>2]|0))+n|0,d,e,p,a+-1|0,1,o
);k=c[p>>2]|0;c[m>>2]=k>>>31|c[m>>2]<<1;c[p>>2]=k<<1|
1;b=b+n|0;Es(b,d,e,p,h,1,o)}g=c[p>>2]|0;k=c[l>>2]|0;f=(k|0)==0;if((h|0)==1&(g|0)==1&f)break;else a
=h}}}i=r;return}function Cs(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;p=i;i=i+240|0;o=p;c
[o>>2]=a;a:do if((e|0)>1){n=0-b|0;g=e;h=a;k=a;l=1;while(1){a=h+n|0;m=g+-2|0;j=a+(0-(c[f+(m<<2)>>
;2]|0))|0;if((Ya[d&127](k,j)|0)>-1?(Ya[d&127](k,a)|0)>-1:0){e=l;break a}e=l+1|0;h=o+(l<<2)|0;if((Ya
[d&127](j,a)|0)>-1){c[h>>2]=j;a=j;g=g+-1|0}else{c[h>>2]=a;g=m}if((g|0)<=1)break a;h=a;k=c[o
x3e;>2]|0;l=e}}else e=1;while(0);Ds(b,o,e);i=p;return}function Ds(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+
256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0>256?256:
a;Ss(e|0,c[b>>2]|0,f|0)|0;e=0;do{j=b+(e<<2)|0;e=e+1|0;Ss(c[j>>2]|0,c[b+(e<<2)>>
;2]|0,f|0)|0;c[j>>2]=(c[j>>2]|0)+f}while((e|0)!=(d|0));if((a|0)==(f|0))break a;a=a-f|0;e=c[g>>2]|0
}while(0);i=h;return}function Es(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;r=i;i=i+240|0;p=r;l=c[e>>2]|0;k=c[e+4>>2]|0;c[p>>2]=a;o=0-b|0;a:do if((k|0)!=0|(l|0)!=1?(j=a+(0-(
c[h+(f<<2)>>2]|0))|0,(Ya[d&127](j,a)|0)>=1):0){g=(g|0)==0;m=1;n=l;while(1){if(g&(f|0)>1){
e=a+o|0;g=c[h+(f+-2<<2)>>2]|0;if((Ya[d&127](e,j)|0)>-1){g=f;e=m;q=19;break a}if((Ya[d&127](e+(
0-g)|0,j)|0)>-1){g=f;e=m;q=19;break a}}e=m+1|0;c[p+(m<<2)>>2]=j;g=n+-1|0;do if(g){if(!(g&1)){a=0;do
{a=a+1|0;g=g>>>1}while(!(g&1|0))}else{if(!k)g=32;else{if(!(k&1)){a=k;g=0}else{l=0;g=n;a=0;break}do{g=g+
1|0;a=a>>>1}while(!(a&1|0))}a=g+32|0}if(a>>>0>31)q=15;else{l=a;g=n}}else{a=32;q=15}while
(0);if((q|0)==15){q=0;l=a+-32|0;g=k;k=0}n=k<<32-l|g>>>l;k=k>>>l;g=a+f|0;if(!((k|0)!=0|(n
|0)!=1)){a=j;q=19;break a}a=j+(0-(c[h+(g<<2)>>2]|0))|0;if((Ya[d&127](a,c[p>>2]|0)|0)<1){
a=j;f=g;g=0;q=18;break}else{l=j;f=g;g=1;j=a;m=e;a=l}}}else{e=1;q=18}while(0);if((q|0)==18?(g|0)==0:0){g=f;q=19}if((q|0)==19){Ds(
b,p,e);Cs(a,b,d,g,h)}i=r;return}function Fs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,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;do if(a>>>0<245){o=a>>>
;0<11?16:a+11&-8;a=o>>>3;j=c[18400]|0;b=j>>>a;if(b&3|0){b=(b&1^1)+a|0;d=73640+(
b<<1<<2)|0;e=d+8|0;f=c[e>>2]|0;g=f+8|0;h=c[g>>2]|0;do if((d|0)!=(h|0)){if(h>>
x3e;0<(c[18404]|0)>>>0)ya();a=h+12|0;if((c[a>>2]|0)==(f|0)){c[a>>2]=d;c[e>>2]=
h;break}else ya()}else c[18400]=j&~(1<<b);while(0);L=b<<3;c[f+4>>2]=L|3;L=f+L+4|0;c[L>
x3e;2]=c[L>>2]|1;L=g;return L|0}h=c[18402]|0;if(o>>>0>h>>>0){if(b|0){d=2<<
;a;d=b<<a&(d|0-d);d=(d&0-d)+-1|0;i=d>>>12&16;d=d>>>i;f=d>>>
;5&8;d=d>>>f;g=d>>>2&4;d=d>>>g;e=d>>>1&2;d=d>>
;>e;b=d>>>1&1;b=(f|i|g|e|b)+(d>>>b)|0;d=73640+(b<<1<<2)|0;e=d+8|0;g=
c[e>>2]|0;i=g+8|0;f=c[i>>2]|0;do if((d|0)!=(f|0)){if(f>>>0<(c[18404]|0)>>>
;0)ya();a=f+12|0;if((c[a>>2]|0)==(g|0)){c[a>>2]=d;c[e>>2]=f;k=c[18402]|0;break}else ya()}else{c[18400
]=j&~(1<<b);k=h}while(0);h=(b<<3)-o|0;c[g+4>>2]=o|3;e=g+o|0;c[e+4>>2]=h|1;c[e+h>
;>2]=h;if(k|0){f=c[18405]|0;b=k>>>3;d=73640+(b<<1<<2)|0;a=c[18400]|0;b=1<<b;if
(a&b){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{l=a;m=b}}else{c[
18400]=a|b;l=d+8|0;m=d}c[l>>2]=f;c[m+12>>2]=f;c[f+8>>2]=m;c[f+12>>2]=d}c[18402]=h;c[18405
]=e;L=i;return L|0}a=c[18401]|0;if(a){d=(a&0-a)+-1|0;K=d>>>12&16;d=d>>>K;J=d>>
x3e;5&8;d=d>>>J;L=d>>>2&4;d=d>>>L;b=d>>>1&2;d=d>
x3e;>b;e=d>>>1&1;e=c[73904+((J|K|L|b|e)+(d>>>e)<<2)>>2]|0;d=(c[e+4
x3e;>2]&-8)-o|0;b=e;while(1){a=c[b+16>>2]|0;if(!a){a=c[b+20>>2]|0;if(!a){j=e;break}}b=(c[a+4>
x3e;2]&-8)-o|0;L=b>>>0<d>>>0;d=L?b:d;b=a;e=L?a:e}g=c[18404]|0;if(j>>>0<
;g>>>0)ya();i=j+o|0;if(j>>>0>=i>>>0)ya();h=c[j+24>>2]|0;e=c[j+12>
;>2]|0;do if((e|0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if(!a){b=j+16|0;a=c[b>>2]|0;if(!a){n=0;break}}while(1){
e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;b=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;b=e}}if(b>>
;>0<g>>>0)ya();else{c[b>>2]=0;n=a;break}}else{f=c[j+8>>2]|0;if(f>>>0
<g>>>0)ya();a=f+12|0;if((c[a>>2]|0)!=(j|0))ya();b=e+8|0;if((c[b>>2]|0)==(j|0)){c[a>
x3e;2]=e;c[b>>2]=f;n=e;break}else ya()}while(0);do if(h|0){a=c[j+28>>2]|0;b=73904+(a<<2)|0;if((j|0
)==(c[b>>2]|0)){c[b>>2]=n;if(!n){c[18401]=c[18401]&~(1<<a);break}}else{if(h>>>
0<(c[18404]|0)>>>0)ya();a=h+16|0;if((c[a>>2]|0)==(j|0))c[a>>2]=n;else c[h+20>>
2]=n;if(!n)break}b=c[18404]|0;if(n>>>0<b>>>0)ya();c[n+24>>2]=h;a=c[j+16>>
2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else{c[n+16>>2]=a;c[a+24>>2]=n;break}while
(0);a=c[j+20>>2]|0;if(a|0)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[n+20>>2]=
a;c[a+24>>2]=n;break}}while(0);if(d>>>0<16){L=d+o|0;c[j+4>>2]=L|3;L=j+L+4|0;c[L>>
;2]=c[L>>2]|1}else{c[j+4>>2]=o|3;c[i+4>>2]=d|1;c[i+d>>2]=d;a=c[18402]|0;if(a|0){f=c[18405
]|0;b=a>>>3;e=73640+(b<<1<<2)|0;a=c[18400]|0;b=1<<b;if(a&b){a=e+8|0;b=c[a>
;>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{p=a;q=b}}else{c[18400]=a|b;p=e+8|0;q=e}c[p>
;>2]=f;c[q+12>>2]=f;c[f+8>>2]=q;c[f+12>>2]=e}c[18402]=d;c[18405]=i}L=j+8|0;return L|0}}}else
if(a>>>0<=4294967231){a=a+11|0;o=a&-8;j=c[18401]|0;if(j){d=0-o|0;a=a>>>8;if(a)if(o>
x3e;>0>16777215)i=31;else{q=(a+1048320|0)>>>16&8;E=a<<q;p=(E+520192|0)>>>
16&4;E=E<<p;i=(E+245760|0)>>>16&2;i=14-(p|q|i)+(E<<i>>>15)|0;i=o>
;>>(i+7|0)&1|i<<1}else i=0;b=c[73904+(i<<2)>>2]|0;a:do if(!b){a=0;b=0;E=86}else{f=d
;a=0;g=o<<((i|0)==31?0:25-(i>>>1)|0);h=b;b=0;while(1){e=c[h+4>>2]&-8;d=e-o|0;if(d>
x3e;>0<f>>>0)if((e|0)==(o|0)){a=h;b=h;E=90;break a}else b=h;else d=f;e=c[h+20>>2]|0;h=c[h+16+(
g>>>31<<2)>>2]|0;a=(e|0)==0|(e|0)==(h|0)?a:e;e=(h|0)==0;if(e){E=86;break}else{f=d;g=g<
x3c;(e&1^1)}}}while(0);if((E|0)==86){if((a|0)==0&(b|0)==0){a=2<<i;a=j&(a|0-a);if(!a)break;q=(a&0-a
)+-1|0;m=q>>>12&16;q=q>>>m;l=q>>>5&8;q=q>>>l;n=q>>
;>2&4;q=q>>>n;p=q>>>1&2;q=q>>>p;a=q>>>1&1;a=c[73904
+((l|m|n|p|a)+(q>>>a)<<2)>>2]|0}if(!a){i=d;j=b}else E=90}if((E|0)==90)while(1){E=0;q=(c[a+4
x3e;>2]&-8)-o|0;e=q>>>0<d>>>0;d=e?q:d;b=e?a:b;e=c[a+16>>2]|0;if(e|0){a=e;
E=90;continue}a=c[a+20>>2]|0;if(!a){i=d;j=b;break}else E=90}if((j|0)!=0?i>>>0<((c[18402]|0)-o|0)
x3e;>>0:0){f=c[18404]|0;if(j>>>0<f>>>0)ya();h=j+o|0;if(j>>>0>=h
>>>0)ya();g=c[j+24>>2]|0;d=c[j+12>>2]|0;do if((d|0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if
(!a){b=j+16|0;a=c[b>>2]|0;if(!a){s=0;break}}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;
e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<f>>>0)ya();else{c[b>>2]=0;
s=a;break}}else{e=c[j+8>>2]|0;if(e>>>0<f>>>0)ya();a=e+12|0;if((c[a>>2]|0)!=(
j|0))ya();b=d+8|0;if((c[b>>2]|0)==(j|0)){c[a>>2]=d;c[b>>2]=e;s=d;break}else ya()}while(0);do if(g|
0){a=c[j+28>>2]|0;b=73904+(a<<2)|0;if((j|0)==(c[b>>2]|0)){c[b>>2]=s;if(!s){c[18401]=c[18401
]&~(1<<a);break}}else{if(g>>>0<(c[18404]|0)>>>0)ya();a=g+16|0;if((c[a>>
;2]|0)==(j|0))c[a>>2]=s;else c[g+20>>2]=s;if(!s)break}b=c[18404]|0;if(s>>>0<b>>
;>0)ya();c[s+24>>2]=g;a=c[j+16>>2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else
{c[s+16>>2]=a;c[a+24>>2]=s;break}while(0);a=c[j+20>>2]|0;if(a|0)if(a>>>0<(c[18404
]|0)>>>0)ya();else{c[s+20>>2]=a;c[a+24>>2]=s;break}}while(0);do if(i>>>0>=
16){c[j+4>>2]=o|3;c[h+4>>2]=i|1;c[h+i>>2]=i;a=i>>>3;if(i>>>0<256
){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>
;>0<(c[18404]|0)>>>0)ya();else{u=a;v=b}}else{c[18400]=b|a;u=d+8|0;v=d}c[u>>2]=h;c[v+12>
x3e;2]=h;c[h+8>>2]=v;c[h+12>>2]=d;break}a=i>>>8;if(a)if(i>>>0>16777215)d=
31;else{K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|0)>>>16&4;L=L<<J;d
=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>>15)|0;d=i>>>(d+7|0)&1
|d<<1}else d=0;e=73904+(d<<2)|0;c[h+28>>2]=d;a=h+16|0;c[a+4>>2]=0;c[a>>2]=0;a=
c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[e>>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8
>>2]=h;break}f=i<<((d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>
x3e;2]&-8|0)==(i|0)){d=a;E=148;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d){E=145;break
}else{f=f<<1;a=d}}if((E|0)==145)if(b>>>0<(c[18404]|0)>>>0)ya();else{c[b>>
2]=h;c[h+24>>2]=a;c[h+12>>2]=h;c[h+8>>2]=h;break}else if((E|0)==148){a=d+8|0;b=c[a>>2]|0
;L=c[18404]|0;if(b>>>0>=L>>>0&d>>>0>=L>>>0){c[b+12>
;>2]=h;c[a>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;c[h+24>>2]=0;break}else ya()}}else{L=i+o|
0;c[j+4>>2]=L|3;L=j+L+4|0;c[L>>2]=c[L>>2]|1}while(0);L=j+8|0;return L|0}}}else o=-1;while(0);d=c[18402
]|0;if(d>>>0>=o>>>0){a=d-o|0;b=c[18405]|0;if(a>>>0>15){L=b+o|0;c[18405]=L
;c[18402]=a;c[L+4>>2]=a|1;c[L+a>>2]=a;c[b+4>>2]=o|3}else{c[18402]=0;c[18405]=0;c[b+4>>2]=
d|3;L=b+d+4|0;c[L>>2]=c[L>>2]|1}L=b+8|0;return L|0}a=c[18403]|0;if(a>>>0>o>>
x3e;0){J=a-o|0;c[18403]=J;L=c[18406]|0;K=L+o|0;c[18406]=K;c[K+4>>2]=J|1;c[L+4>>2]=o|3;L=L+8|0;return L|0}do
if(!(c[18518]|0)){a=Ia(30)|0;if(!(a+-1&a)){c[18520]=a;c[18519]=a;c[18521]=-1;c[18522]=-1;c[18523]=0;c[18511]=0;c[18518]=(va
(0)|0)&-16^1431655768;break}else ya()}while(0);h=o+48|0;g=c[18520]|0;i=o+47|0;f=g+i|0;g=0-g|0;j=f&g;if(j>>
x3e;0<=o>>>0){L=0;return L|0}a=c[18510]|0;if(a|0?(u=c[18508]|0,v=u+j|0,v>>>0<=u>>
;>0|v>>>0>a>>>0):0){L=0;return L|0}b:do if(!(c[18511]&4)){a=c[18406]|0;c:do if(a){d
=74048;while(1){b=c[d>>2]|0;if(b>>>0<=a>>>0?(r=d+4|0,(b+(c[r>>2]|0)|0)>
;>>0>a>>>0):0){e=d;d=r;break}d=c[d+8>>2]|0;if(!d){E=173;break c}}a=f-(c[18403]|0)&g
;if(a>>>0<2147483647){b=Ba(a|0)|0;if((b|0)==((c[e>>2]|0)+(c[d>>2]|0)|0)){if((b|0)!=(-1|0
)){h=b;f=a;E=193;break b}}else E=183}}else E=173;while(0);do if((E|0)==173?(t=Ba(0)|0,(t|0)!=(-1|0)):0){a=t;b=c[18519]|0;d=b+-1|
0;if(!(d&a))a=j;else a=j-a+(d+a&0-b)|0;b=c[18508]|0;d=b+a|0;if(a>>>0>o>>>0&a
x3e;>>0<2147483647){v=c[18510]|0;if(v|0?d>>>0<=b>>>0|d>>>0>
;v>>>0:0)break;b=Ba(a|0)|0;if((b|0)==(t|0)){h=t;f=a;E=193;break b}else E=183}}while(0);d:do if((E|0)==183){d=0-a|
0;do if(h>>>0>a>>>0&(a>>>0<2147483647&(b|0)!=(-1|0))?(w=c[18520
]|0,w=i-a+w&0-w,w>>>0<2147483647):0)if((Ba(w|0)|0)==(-1|0)){Ba(d|0)|0;break d}else{a=w+a|0;break}while(
0);if((b|0)!=(-1|0)){h=b;f=a;E=193;break b}}while(0);c[18511]=c[18511]|4;E=190}else E=190;while(0);if((((E|0)==190?j>>
x3e;0<2147483647:0)?(x=Ba(j|0)|0,y=Ba(0)|0,x>>>0<y>>>0&((x|0)!=(-1|0)&(y|0)!=(-
1|0))):0)?(z=y-x|0,z>>>0>(o+40|0)>>>0):0){h=x;f=z;E=193}if((E|0)==193){a=(c[18508]|0)+f|0;c[18508
]=a;if(a>>>0>(c[18509]|0)>>>0)c[18509]=a;i=c[18406]|0;do if(i){e=74048;do{a=c[e>>2]|
0;b=e+4|0;d=c[b>>2]|0;if((h|0)==(a+d|0)){A=a;B=b;C=d;D=e;E=203;break}e=c[e+8>>2]|0}while((e|0)!=0);if(((E|0)==
203?(c[D+12>>2]&8|0)==0:0)?i>>>0<h>>>0&i>>>0>=A>
x3e;>0:0){c[B>>2]=C+f;L=i+8|0;L=(L&7|0)==0?0:0-L&7;K=i+L|0;L=f-L+(c[18403]|0)|0;c[18406]=K;c[18403]=L;c
[K+4>>2]=L|1;c[K+L+4>>2]=40;c[18407]=c[18522];break}a=c[18404]|0;if(h>>>0<a>>
x3e;0){c[18404]=h;j=h}else j=a;d=h+f|0;a=74048;while(1){if((c[a>>2]|0)==(d|0)){b=a;E=211;break}a=c[a+8>>2]|0
;if(!a){b=74048;break}}if((E|0)==211)if(!(c[a+12>>2]&8)){c[b>>2]=h;l=a+4|0;c[l>>2]=(c[l>
x3e;2]|0)+f;l=h+8|0;l=h+((l&7|0)==0?0:0-l&7)|0;a=d+8|0;a=d+((a&7|0)==0?0:0-a&7)|0;k=l+o|0;g=a-l-o|0;c[l+4>
;>2]=o|3;do if((a|0)!=(i|0)){if((a|0)==(c[18405]|0)){L=(c[18402]|0)+g|0;c[18402]=L;c[18405]=k;c[k+4>>2]=L|1;c[k+L
>>2]=L;break}b=c[a+4>>2]|0;if((b&3|0)==1){i=b&-8;f=b>>>3;e:do if(b>>>
;0>=256){h=c[a+24>>2]|0;e=c[a+12>>2]|0;do if((e|0)==(a|0)){d=a+16|0;e=d+4|0;b=c[e>>2]|0;if(!b
){b=c[d>>2]|0;if(!b){J=0;break}}else d=e;while(1){e=b+20|0;f=c[e>>2]|0;if(f|0){b=f;d=e;continue}e=b+16|0;f=c
[e>>2]|0;if(!f)break;else{b=f;d=e}}if(d>>>0<j>>>0)ya();else{c[d>>2]=0;J=b
;break}}else{f=c[a+8>>2]|0;if(f>>>0<j>>>0)ya();b=f+12|0;if((c[b>>2]|0)!=(
a|0))ya();d=e+8|0;if((c[d>>2]|0)==(a|0)){c[b>>2]=e;c[d>>2]=f;J=e;break}else ya()}while(0);if(!h)break
;b=c[a+28>>2]|0;d=73904+(b<<2)|0;do if((a|0)!=(c[d>>2]|0)){if(h>>>0<(c[18404]|
0)>>>0)ya();b=h+16|0;if((c[b>>2]|0)==(a|0))c[b>>2]=J;else c[h+20>>2]=J;if(!J)break
e}else{c[d>>2]=J;if(J|0)break;c[18401]=c[18401]&~(1<<b);break e}while(0);e=c[18404]|0;if(J>>
x3e;0<e>>>0)ya();c[J+24>>2]=h;b=a+16|0;d=c[b>>2]|0;do if(d|0)if(d>>>0<
;e>>>0)ya();else{c[J+16>>2]=d;c[d+24>>2]=J;break}while(0);b=c[b+4>>2]|0;if(!b)break
;if(b>>>0<(c[18404]|0)>>>0)ya();else{c[J+20>>2]=b;c[b+24>>2]=J;break}}else
{d=c[a+8>>2]|0;e=c[a+12>>2]|0;b=73640+(f<<1<<2)|0;do if((d|0)!=(b|0)){if(d>>
x3e;0<j>>>0)ya();if((c[d+12>>2]|0)==(a|0))break;ya()}while(0);if((e|0)==(d|0)){c[18400]=c[18400]
x26;~(1<<f);break}do if((e|0)==(b|0))G=e+8|0;else{if(e>>>0<j>>>0)ya();b=e+8|0;if((c
[b>>2]|0)==(a|0)){G=b;break}ya()}while(0);c[d+12>>2]=e;c[G>>2]=d}while(0);a=a+i|0;g=i+g|0}a=a+4|0;
c[a>>2]=c[a>>2]&-2;c[k+4>>2]=g|1;c[k+g>>2]=g;a=g>>>3;if(g>>
;>0<256){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;do if(!(b&a)){c[18400]=b|a;K=d+8|0
;L=d}else{a=d+8|0;b=c[a>>2]|0;if(b>>>0>=(c[18404]|0)>>>0){K=a;L=b;break}ya()}while(
0);c[K>>2]=k;c[L+12>>2]=k;c[k+8>>2]=L;c[k+12>>2]=d;break}a=g>>>8;do if(!a
)d=0;else{if(g>>>0>16777215){d=31;break}K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192
|0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>
;>15)|0;d=g>>>(d+7|0)&1|d<<1}while(0);e=73904+(d<<2)|0;c[k+28>>2]=d;a=k+16
|0;c[a+4>>2]=0;c[a>>2]=0;a=c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[e>>2]=k;c[k+
24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}f=g<<((d|0)==31?0:25-(d>>>1)|0);a
=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0)==(g|0)){d=a;E=281;break}b=a+16+(f>>>31<<
;2)|0;d=c[b>>2]|0;if(!d){E=278;break}else{f=f<<1;a=d}}if((E|0)==278)if(b>>>0<(c[18404]|0
)>>>0)ya();else{c[b>>2]=k;c[k+24>>2]=a;c[k+12>>2]=k;c[k+8>>2]=k;break}else
if((E|0)==281){a=d+8|0;b=c[a>>2]|0;L=c[18404]|0;if(b>>>0>=L>>>0&d>>
x3e;0>=L>>>0){c[b+12>>2]=k;c[a>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;c[k+24
>>2]=0;break}else ya()}}else{L=(c[18403]|0)+g|0;c[18403]=L;c[18406]=k;c[k+4>>2]=L|1}while(0);L=l+8|0;return
L|0}else b=74048;while(1){a=c[b>>2]|0;if(a>>>0<=i>>>0?(F=a+(c[b+4>>2]|0)|
0,F>>>0>i>>>0):0){b=F;break}b=c[b+8>>2]|0}g=b+-47|0;d=g+8|0;d=g+((d&7|0)==0?0:
0-d&7)|0;g=i+16|0;d=d>>>0<g>>>0?i:d;a=d+8|0;e=h+8|0;e=(e&7|0)==0?0:0-e&7;L=h+e
|0;e=f+-40-e|0;c[18406]=L;c[18403]=e;c[L+4>>2]=e|1;c[L+e+4>>2]=40;c[18407]=c[18522];e=d+4|0;c[e>>2
]=27;c[a>>2]=c[18512];c[a+4>>2]=c[18513];c[a+8>>2]=c[18514];c[a+12>>2]=c[18515];c[18512]=
h;c[18513]=f;c[18515]=0;c[18514]=a;a=d+24|0;do{a=a+4|0;c[a>>2]=7}while((a+4|0)>>>0<b>>
x3e;0);if((d|0)!=(i|0)){h=d-i|0;c[e>>2]=c[e>>2]&-2;c[i+4>>2]=h|1;c[d>>2]=h;a=h>
;>>3;if(h>>>0<256){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;if(b&
;a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{H=a;I=b}}else{c[18400]=
b|a;H=d+8|0;I=d}c[H>>2]=i;c[I+12>>2]=i;c[i+8>>2]=I;c[i+12>>2]=d;break}a=h>>>
;8;if(a)if(h>>>0>16777215)d=31;else{K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|
0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>
;>15)|0;d=h>>>(d+7|0)&1|d<<1}else d=0;f=73904+(d<<2)|0;c[i+28>>2]=d;c[i+20
>>2]=0;c[g>>2]=0;a=c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[f>>2]=i;c[i+24>
x3e;2]=f;c[i+12>>2]=i;c[i+8>>2]=i;break}e=h<<((d|0)==31?0:25-(d>>>1)|0);a=c[f>
x3e;2]|0;while(1){if((c[a+4>>2]&-8|0)==(h|0)){d=a;E=307;break}b=a+16+(e>>>31<<2)|0;d=c[b
>>2]|0;if(!d){E=304;break}else{e=e<<1;a=d}}if((E|0)==304)if(b>>>0<(c[18404]|0)>>
;>0)ya();else{c[b>>2]=i;c[i+24>>2]=a;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((E|0)==
307){a=d+8|0;b=c[a>>2]|0;L=c[18404]|0;if(b>>>0>=L>>>0&d>>>0>
;=L>>>0){c[b+12>>2]=i;c[a>>2]=i;c[i+8>>2]=b;c[i+12>>2]=d;c[i+24>>
;2]=0;break}else ya()}}}else{L=c[18404]|0;if((L|0)==0|h>>>0<L>>>0)c[18404]=h;c[18512]=h;c[18513
]=f;c[18515]=0;c[18409]=c[18518];c[18408]=-1;a=0;do{L=73640+(a<<1<<2)|0;c[L+12>>2]=L;c[L+8>
x3e;2]=L;a=a+1|0}while((a|0)!=32);L=h+8|0;L=(L&7|0)==0?0:0-L&7;K=h+L|0;L=f+-40-L|0;c[18406]=K;c[18403]=L;c[K+4>
x3e;2]=L|1;c[K+L+4>>2]=40;c[18407]=c[18522]}while(0);a=c[18403]|0;if(a>>>0>o>>>0){J
=a-o|0;c[18403]=J;L=c[18406]|0;K=L+o|0;c[18406]=K;c[K+4>>2]=J|1;c[L+4>>2]=o|3;L=L+8|0;return L|0}}c[(Ar()|0)
x3e;>2]=12;L=0;return L|0}function Gs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;if(!a)return
;d=a+-8|0;h=c[18404]|0;if(d>>>0<h>>>0)ya();a=c[a+-4>>2]|0;b=a&3;if((b|0)==1)ya
();e=a&-8;m=d+e|0;do if(!(a&1)){a=c[d>>2]|0;if(!b)return;k=d+(0-a)|0;j=a+e|0;if(k>>>0<h
x3e;>>0)ya();if((k|0)==(c[18405]|0)){a=m+4|0;b=c[a>>2]|0;if((b&3|0)!=3){q=k;g=j;break}c[18402]=j;c[a>
;>2]=b&-2;c[k+4>>2]=j|1;c[k+j>>2]=j;return}e=a>>>3;if(a>>>0<256
){b=c[k+8>>2]|0;d=c[k+12>>2]|0;a=73640+(e<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>
;0<h>>>0)ya();if((c[b+12>>2]|0)!=(k|0))ya()}if((d|0)==(b|0)){c[18400]=c[18400]&~(1<<
;e);q=k;g=j;break}if((d|0)!=(a|0)){if(d>>>0<h>>>0)ya();a=d+8|0;if((c[a>>2]|0)==(k|0
))f=a;else ya()}else f=d+8|0;c[b+12>>2]=d;c[f>>2]=b;q=k;g=j;break}f=c[k+24>>2]|0;d=c[k+12>>
;2]|0;do if((d|0)==(k|0)){b=k+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){i=0;break}}else b=d;while(1
){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>
;>0<h>>>0)ya();else{c[b>>2]=0;i=a;break}}else{e=c[k+8>>2]|0;if(e>>>0
<h>>>0)ya();a=e+12|0;if((c[a>>2]|0)!=(k|0))ya();b=d+8|0;if((c[b>>2]|0)==(k|0)){c[a>
x3e;2]=d;c[b>>2]=e;i=d;break}else ya()}while(0);if(f){a=c[k+28>>2]|0;b=73904+(a<<2)|0;if((k|0)==(c
[b>>2]|0)){c[b>>2]=i;if(!i){c[18401]=c[18401]&~(1<<a);q=k;g=j;break}}else{if(f>>>
;0<(c[18404]|0)>>>0)ya();a=f+16|0;if((c[a>>2]|0)==(k|0))c[a>>2]=i;else c[f+20>>
;2]=i;if(!i){q=k;g=j;break}}d=c[18404]|0;if(i>>>0<d>>>0)ya();c[i+24>>2]=f;a=k+16|0;
b=c[a>>2]|0;do if(b|0)if(b>>>0<d>>>0)ya();else{c[i+16>>2]=b;c[b+24>
x3e;2]=i;break}while(0);a=c[a+4>>2]|0;if(a)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[i+
20>>2]=a;c[a+24>>2]=i;q=k;g=j;break}else{q=k;g=j}}else{q=k;g=j}}else{q=d;g=e}while(0);if(q>>>
0>=m>>>0)ya();a=m+4|0;b=c[a>>2]|0;if(!(b&1))ya();if(!(b&2)){if((m|0)==(c[18406]|0)){p=(c
[18403]|0)+g|0;c[18403]=p;c[18406]=q;c[q+4>>2]=p|1;if((q|0)!=(c[18405]|0))return;c[18405]=0;c[18402]=0;return}if((m|0)==(
c[18405]|0)){p=(c[18402]|0)+g|0;c[18402]=p;c[18405]=q;c[q+4>>2]=p|1;c[q+p>>2]=p;return}g=(b&-8)+g|0;e=b
>>>3;do if(b>>>0>=256){f=c[m+24>>2]|0;a=c[m+12>>2]|0;do if((a|0)==(m|0)){
b=m+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){n=0;break}}else b=d;while(1){d=a+20|0;e=c[d>>
;2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<(c[18404]|0
)>>>0)ya();else{c[b>>2]=0;n=a;break}}else{b=c[m+8>>2]|0;if(b>>>0<(c[18404
]|0)>>>0)ya();d=b+12|0;if((c[d>>2]|0)!=(m|0))ya();e=a+8|0;if((c[e>>2]|0)==(m|0)){c[d>>
;2]=a;c[e>>2]=b;n=a;break}else ya()}while(0);if(f|0){a=c[m+28>>2]|0;b=73904+(a<<2)|0;if((m|0)==(c[
b>>2]|0)){c[b>>2]=n;if(!n){c[18401]=c[18401]&~(1<<a);break}}else{if(f>>>0<
;(c[18404]|0)>>>0)ya();a=f+16|0;if((c[a>>2]|0)==(m|0))c[a>>2]=n;else c[f+20>>2]=n;if
(!n)break}d=c[18404]|0;if(n>>>0<d>>>0)ya();c[n+24>>2]=f;a=m+16|0;b=c[a>>2
]|0;do if(b|0)if(b>>>0<d>>>0)ya();else{c[n+16>>2]=b;c[b+24>>2]=n;break}while
(0);a=c[a+4>>2]|0;if(a|0)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[n+20>>2]=a
;c[a+24>>2]=n;break}}}else{b=c[m+8>>2]|0;d=c[m+12>>2]|0;a=73640+(e<<1<<2)|0;if
((b|0)!=(a|0)){if(b>>>0<(c[18404]|0)>>>0)ya();if((c[b+12>>2]|0)!=(m|0))ya()}if((d|0
)==(b|0)){c[18400]=c[18400]&~(1<<e);break}if((d|0)!=(a|0)){if(d>>>0<(c[18404]|0)>>
x3e;0)ya();a=d+8|0;if((c[a>>2]|0)==(m|0))l=a;else ya()}else l=d+8|0;c[b+12>>2]=d;c[l>>2]=b}while(0
);c[q+4>>2]=g|1;c[q+g>>2]=g;if((q|0)==(c[18405]|0)){c[18402]=g;return}}else{c[a>>2]=b&-2;c[q+
4>>2]=g|1;c[q+g>>2]=g}a=g>>>3;if(g>>>0<256){d=73640+(a<<1<
x3c;2)|0;b=c[18400]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>
;>>0)ya();else{o=a;p=b}}else{c[18400]=b|a;o=d+8|0;p=d}c[o>>2]=q;c[p+12>>2]=q;c[q+8>>2]=p
;c[q+12>>2]=d;return}a=g>>>8;if(a)if(g>>>0>16777215)d=31;else{o=(a+1048320|0)>
x3e;>16&8;p=a<<o;n=(p+520192|0)>>>16&4;p=p<<n;d=(p+245760|0)>>>
16&2;d=14-(n|o|d)+(p<<d>>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=73904
+(d<<2)|0;c[q+28>>2]=d;c[q+20>>2]=0;c[q+16>>2]=0;a=c[18401]|0;b=1<<d;do if(a
x26;b){f=g<<((d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0
)==(g|0)){d=a;e=130;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d){e=127;break}else{f=f<
x3c;1;a=d}}if((e|0)==127)if(b>>>0<(c[18404]|0)>>>0)ya();else{c[b>>2]=q;c[q+24>
x3e;2]=a;c[q+12>>2]=q;c[q+8>>2]=q;break}else if((e|0)==130){a=d+8|0;b=c[a>>2]|0;p=c[18404]|0;if(b
x3e;>>0>=p>>>0&d>>>0>=p>>>0){c[b+12>>2]=q;c[a>
;>2]=q;c[q+8>>2]=b;c[q+12>>2]=d;c[q+24>>2]=0;break}else ya()}}else{c[18401]=a|b;c[e>>
;2]=q;c[q+24>>2]=e;c[q+12>>2]=q;c[q+8>>2]=q}while(0);q=(c[18408]|0)+-1|0;c[18408]=q;if(!q)a=74056;
else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[18408]=-1;return}function Hs(a,b){a=a|0;b=b|0;var d=0,e=0;
if(!a){a=Fs(b)|0;return a|0}if(b>>>0>4294967231){c[(Ar()|0)>>2]=12;a=0;return a|0}d=Is(a+-8|0,b>
;>>0<11?16:b+11&-8)|0;if(d|0){a=d+8|0;return a|0}d=Fs(b)|0;if(!d){a=0;return a|0}e=c[a+-4>>2]|0;e=(
e&-8)-((e&3|0)==0?8:4)|0;Ss(d|0,a|0,(e>>>0<b>>>0?e:b)|0)|0;Gs(a);a=d;return a|0}
function Rh(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;ca=i;i=i+192
|0;Y=ca+172|0;l=ca+168|0;I=ca+164|0;H=ca+160|0;m=ca+156|0;n=ca+152|0;p=ca+148|0;aa=ca+144|0;u=ca+140|0;t=ca+136|0;s=ca+132|0;U=ca
+177|0;V=ca+176|0;q=ca+128|0;r=ca+124|0;o=ca+120|0;J=ca+116|0;M=ca+112|0;S=ca+108|0;P=ca+104|0;z=ca+100|0;v=ca+96|0;w=ca+92|0;y=
ca+88|0;x=ca+84|0;D=ca+80|0;F=ca+76|0;A=ca+72|0;B=ca+68|0;G=ca+64|0;E=ca+60|0;C=ca+56|0;W=ca+52|0;Q=ca+48|0;R=ca+44|0;N=ca+40|0;
O=ca+36|0;K=ca+32|0;X=ca+28|0;_=ca+16|0;L=ca+12|0;T=ca+8|0;$=ca+4|0;Z=ca;c[l>>2]=f;c[I>>2]=g;c[H>>
2]=h;c[m>>2]=j;c[n>>2]=k;c[p>>2]=c[I>>2];a[U>>0]=1;a[V>>0]=0;c[q>
;>2]=c[(c[(c[I>>2]|0)+96>>2]|0)+4>>2];c[u>>2]=Ud(c[q>>2]|0,11340)|0;do if
(c[u>>2]|0){c[r>>2]=c[(c[p>>2]|0)+96>>2];c[o>>2]=Vd(c[r>>2]|0,71003)|
0;c[t>>2]=c[o>>2];c[s>>2]=Ud(c[q>>2]|0,11524)|0;f=Kc(c[l>>2]|0,0)|0;c[aa>
x3e;2]=f;if(!f){c[aa>>2]=Za[c[(c[u>>2]|0)+4>>2]&31](c[l>>2]|0,c[p>>2]|0,c
[H>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;if(!(c[aa>>2]|0)){if((c[(c[p>>2]|0)+148>
x3e;2]|0)!=1330926671){ba=112;break}if((c[H>>2]|0)<0){c[Y>>2]=0;ba=c[Y>>2]|0;i=ca;return ba|0
}if((c[H>>2]|0)>0){c[aa>>2]=6;break}a[V>>0]=1;c[aa>>2]=Wa[c[(c[p>>2]|0)+508
>>2]&31](c[p>>2]|0,1751474532,c[l>>2]|0,0)|0;if(c[aa>>2]|0){c[aa>>2]=Ya[c
[(c[u>>2]|0)+40>>2]&127](c[p>>2]|0,c[l>>2]|0)|0;if(c[aa>>2]|0)break}else{
a[U>>0]=0;c[aa>>2]=Za[c[(c[u>>2]|0)+8>>2]&31](c[l>>2]|0,c[p>>2]|
0,0,c[m>>2]|0,c[n>>2]|0)|0;if(c[aa>>2]|0)break}c[aa>>2]=Wa[c[(c[p>>2]|0)+508
x3e;>2]&31](c[p>>2]|0,1128678944,c[l>>2]|0,0)|0;if(c[aa>>2]|0)break}else{f=Kc(c[l>
x3e;2]|0,0)|0;c[aa>>2]=f;if(f|0)break;c[aa>>2]=0}c[S>>2]=c[(c[I>>2]|0)+100>>2];
c[J>>2]=bc(c[S>>2]|0,2072,aa)|0;if((c[aa>>2]|0)==0?(c[(c[p>>2]|0)+692>>2]=c[J
x3e;>2],c[aa>>2]=Sh(c[q>>2]|0,c[l>>2]|0,c[H>>2]|0,c[J>>2]|0,a[U>>
;0]|0)|0,(c[aa>>2]|0)==0):0){c[(c[J>>2]|0)+2052>>2]=c[s>>2];c[(c[J>>2]|0)+2056
>>2]=c[t>>2];c[(c[I>>2]|0)+4>>2]=c[H>>2];c[(c[I>>2]|0)+16>>
;2]=c[(c[J>>2]|0)+12>>2];c[M>>2]=(c[J>>2]|0)+1324;if(c[t>>2]|0?1:(c[(c[M>
x3e;2]|0)+128>>2]|0)!=65535){if(!(c[(c[M>>2]|0)+64>>2]|0)){if(d[U>>0]|0)l=1e3;else l=e[(
c[p>>2]|0)+68>>1]|0;c[(c[M>>2]|0)+64>>2]=l}c[v>>2]=(c[M>>2]|0)+48;c[
w>>2]=(c[M>>2]|0)+68;c[y>>2]=(c[M>>2]|0)+64;f=c[(c[v>>2]|0)+12>>2]|0
;c[x>>2]=(c[(c[v>>2]|0)+12>>2]|0)<0?0-f|0:f;if((c[x>>2]|0)!=65536){f=Vb(c[c[y>
x3e;2]>>2]|0,c[x>>2]|0)|0;c[c[y>>2]>>2]=f;y=Vb(c[c[v>>2]>>2]|0,c[x
x3e;>2]|0)|0;c[c[v>>2]>>2]=y;y=Vb(c[(c[v>>2]|0)+8>>2]|0,c[x>>2]|0)|0;c[(c
[v>>2]|0)+8>>2]=y;y=Vb(c[(c[v>>2]|0)+4>>2]|0,c[x>>2]|0)|0;c[(c[v>>2]|
0)+4>>2]=y;y=Vb(c[(c[v>>2]|0)+12>>2]|0,c[x>>2]|0)|0;c[(c[v>>2]|0)+12>>
;2]=y;y=Vb(c[c[w>>2]>>2]|0,c[x>>2]|0)|0;c[c[w>>2]>>2]=y;y=Vb(c[(c[w>>
;2]|0)+4>>2]|0,c[x>>2]|0)|0;c[(c[w>>2]|0)+4>>2]=y}y=c[w>>2]|0;c[y>>2
]=c[y>>2]>>16;y=(c[w>>2]|0)+4|0;c[y>>2]=c[y>>2]>>16;c[z>>2
]=c[(c[J>>2]|0)+1892>>2];while(1){if((c[z>>2]|0)>>>0<=0)break;c[D>>2
]=c[(c[J>>2]|0)+1896+((c[z>>2]|0)-1<<2)>>2];c[F>>2]=(c[J>>2]|0)+1324
;if(c[(c[D>>2]|0)+64>>2]|0){if((c[(c[F>>2]|0)+64>>2]|0)>>>0>1?(c[(c[
D>>2]|0)+64>>2]|0)>>>0>1:0){if((c[(c[F>>2]|0)+64>>2]|0)>>
x3e;0<(c[(c[D>>2]|0)+64>>2]|0)>>>0)l=c[(c[F>>2]|0)+64>>2]|0;else l=c
[(c[D>>2]|0)+64>>2]|0;c[C>>2]=l}else c[C>>2]=1;Xb((c[F>>2]|0)+48|0,(c[D>
x3e;2]|0)+48|0,c[C>>2]|0);Yb((c[D>>2]|0)+68|0,(c[F>>2]|0)+48|0,c[C>>2]|0);y=xb(c[(c[D>
;>2]|0)+64>>2]|0,c[(c[F>>2]|0)+64>>2]|0,c[C>>2]|0)|0;c[(c[D>>2]|0)+64>
;>2]=y}else{y=(c[D>>2]|0)+48|0;x=(c[F>>2]|0)+48|0;c[y>>2]=c[x>>2];c[y+4>>
2]=c[x+4>>2];c[y+8>>2]=c[x+8>>2];c[y+12>>2]=c[x+12>>2];y=(c[D>>2]|0)+
68|0;x=(c[F>>2]|0)+68|0;c[y>>2]=c[x>>2];c[y+4>>2]=c[x+4>>2];c[(c[D>>
2]|0)+64>>2]=c[(c[F>>2]|0)+64>>2]}c[A>>2]=(c[D>>2]|0)+48;c[B>>2]=(c[
D>>2]|0)+68;c[G>>2]=(c[D>>2]|0)+64;y=c[(c[A>>2]|0)+12>>2]|0;c[E>>2]=(
c[(c[A>>2]|0)+12>>2]|0)<0?0-y|0:y;if((c[E>>2]|0)!=65536){y=Vb(c[c[G>>2]>>
2]|0,c[E>>2]|0)|0;c[c[G>>2]>>2]=y;if((c[c[G>>2]>>2]|0)>>>0>
;1e5)c[c[G>>2]>>2]=(((c[c[G>>2]>>2]|0)+500|0)>>>0)/1e3|0;y=Vb(c[c[A>
x3e;2]>>2]|0,c[E>>2]|0)|0;c[c[A>>2]>>2]=y;y=Vb(c[(c[A>>2]|0)+8>>2]|0
,c[E>>2]|0)|0;c[(c[A>>2]|0)+8>>2]=y;y=Vb(c[(c[A>>2]|0)+4>>2]|0,c[E>>
2]|0)|0;c[(c[A>>2]|0)+4>>2]=y;y=Vb(c[(c[A>>2]|0)+12>>2]|0,c[E>>2]|0)|0;c[(c[A
x3e;>2]|0)+12>>2]=y;y=Vb(c[c[B>>2]>>2]|0,c[E>>2]|0)|0;c[c[B>>2]>>
;2]=y;y=Vb(c[(c[B>>2]|0)+4>>2]|0,c[E>>2]|0)|0;c[(c[B>>2]|0)+4>>2]=y}y=c[B>
;>2]|0;c[y>>2]=c[y>>2]>>16;y=(c[B>>2]|0)+4|0;c[y>>2]=c[y>>2]>
;>16;c[z>>2]=(c[z>>2]|0)+-1}if(a[U>>0]|0){c[W>>2]=0;c[c[I>>2]>>
2]=c[(c[J>>2]|0)+8>>2];l=c[J>>2]|0;if((c[(c[M>>2]|0)+128>>2]|0)!=65535)c[(c[I
x3e;>2]|0)+16>>2]=(c[l+1152+16>>2]|0)+1;else c[(c[I>>2]|0)+16>>2]=c[l+1176+8>
x3e;2];c[(c[I>>2]|0)+52>>2]=c[(c[M>>2]|0)+80>>2]>>16;c[(c[I>>2]|0)+52
+4>>2]=c[(c[M>>2]|0)+80+4>>2]>>16;c[(c[I>>2]|0)+52+8>>2]=(c[(c[M>
;>2]|0)+80+8>>2]|0)+65535>>16;c[(c[I>>2]|0)+52+12>>2]=(c[(c[M>>2]|0)+80+12
>>2]|0)+65535>>16;b[(c[I>>2]|0)+68>>1]=c[(c[M>>2]|0)+64>>2];b[(c[I
x3e;>2]|0)+70>>1]=c[(c[I>>2]|0)+52+12>>2];b[(c[I>>2]|0)+72>>1]=c[(c[I>
;>2]|0)+52+4>>2];b[(c[I>>2]|0)+74>>1]=((e[(c[I>>2]|0)+68>>1]|0)*12|0)/10|
0;if((b[(c[I>>2]|0)+74>>1]|0)<((b[(c[I>>2]|0)+70>>1]|0)-(b[(c[I>>2]|0)+72
>>1]|0)|0))b[(c[I>>2]|0)+74>>1]=(b[(c[I>>2]|0)+70>>1]|0)-(b[(c[I>>2]|
0)+72>>1]|0);b[(c[I>>2]|0)+80>>1]=c[(c[M>>2]|0)+32>>2]>>16;b[(c[I>
;>2]|0)+82>>1]=c[(c[M>>2]|0)+36>>2]>>16;l=qi(c[J>>2]|0,c[H>>2]|
0)|0;c[(c[I>>2]|0)+20>>2]=l;l=c[J>>2]|0;m=c[M>>2]|0;a:do if(c[(c[I>>2]|0)+20
x3e;>2]|0){c[Q>>2]=yh(l,c[m+12>>2]|0)|0;c[R>>2]=c[Q>>2];c[N>>2]=c[(c[I>
;>2]|0)+20>>2];c[O>>2]=0;ri(c[(c[I>>2]|0)+20>>2]|0);if(c[(c[M>>2]|0)+16
x3e;>2]|0?(c[O>>2]=yh(c[J>>2]|0,c[(c[M>>2]|0)+16>>2]|0)|0,c[O>>2]|0):0)c[
N>>2]=c[O>>2];if((c[Q>>2]|0)!=0&(c[N>>2]|0)!=0){b:while(1){if(!(a[c[R>>2]
x3e;>0]|0))break a;if((a[c[R>>2]>>0]|0)==(a[c[N>>2]>>0]|0)){c[N>>2]=(c[N
x3e;>2]|0)+1;c[R>>2]=(c[R>>2]|0)+1;continue}do if((a[c[R>>2]>>0]|0)!=32){if((a[c[R
x3e;>2]>>0]|0)==45)break;if((a[c[N>>2]>>0]|0)!=32?(a[c[N>>2]>>0]|0)!=45:0
)break b;c[N>>2]=(c[N>>2]|0)+1;continue b}while(0);c[R>>2]=(c[R>>2]|0)+1}if((a[c[N>
x3e;2]>>0]|0)==0?a[c[R>>2]>>0]|0:0)c[W>>2]=si(c[S>>2]|0,c[R>>2]|0)|0
}}else{c[K>>2]=yh(l,c[m+168>>2]|0)|0;if(c[K>>2]|0){R=si(c[S>>2]|0,c[K>>2]|0)|0
;c[(c[I>>2]|0)+20>>2]=R}}while(0);if(c[W>>2]|0)c[(c[I>>2]|0)+24>>2]=c[W>
x3e;2];else{W=si(c[S>>2]|0,11262)|0;c[(c[I>>2]|0)+24>>2]=W}c[P>>2]=2065;if(a[V>>
;0]|0)c[P>>2]=c[P>>2]|8;if(a[(c[M>>2]|0)+24>>0]|0)c[P>>2]=c[P>>2]|4;
c[(c[I>>2]|0)+8>>2]=c[P>>2];c[P>>2]=0;if(c[(c[M>>2]|0)+28>>2]|0)c[P
x3e;>2]=c[P>>2]|1;c[X>>2]=yh(c[J>>2]|0,c[(c[M>>2]|0)+20>>2]|0)|0;do if(c[
X>>2]|0){if(Kr(c[X>>2]|0,11270)|0?Kr(c[X>>2]|0,11275)|0:0)break;c[P>>2]=c[P>>2
]|2}while(0);do if(!(c[P>>2]&2)){if(!(c[(c[I>>2]|0)+24>>2]|0))break;if(Lr(c[(c[I>>2
]|0)+24>>2]|0,11270,4)|0?Lr(c[(c[I>>2]|0)+24>>2]|0,11275,5)|0:0)break;c[P>>2]=c[P>
x3e;2]|2}while(0);c[(c[I>>2]|0)+12>>2]=c[P>>2]}if((c[(c[M>>2]|0)+128>>2]|0)==65535
){X=(c[I>>2]|0)+8|0;c[X>>2]=c[X>>2]|512}if((c[(c[M>>2]|0)+128>>2]|0)!=65535?d[
U>>0]|0:0){X=(c[I>>2]|0)+8|0;c[X>>2]=c[X>>2]|4096}c[$>>2]=(c[J>>2]|0
)+116;c[T>>2]=0;while(1){if((c[T>>2]|0)>>>0>=(c[(c[I>>2]|0)+36>>2]|0
)>>>0){ba=96;break}c[L>>2]=c[(c[(c[I>>2]|0)+40>>2]|0)+(c[T>>2]<<
;2)>>2];if((e[(c[L>>2]|0)+8>>1]|0)==3?(e[(c[L>>2]|0)+10>>1]|0)==1:0)break;if(!(
e[(c[L>>2]|0)+8>>1]|0))break;c[T>>2]=(c[T>>2]|0)+1}if((ba|0)==96){if(d[U>>0]|0
?(c[(c[J>>2]|0)+1324+128>>2]|0)!=65535:0)break;if(((c[T>>2]|0)+1|0)>>>0>15)break
;c[_>>2]=c[I>>2];b[_+8>>1]=3;b[_+10>>1]=1;c[_+4>>2]=1970170211;c[T>>
2]=c[(c[I>>2]|0)+36>>2];c[aa>>2]=Ld(868,0,_,0)|0;if((c[aa>>2]|0)!=0&163!=(c[aa>
;>2]|0))break;c[aa>>2]=0;if((c[(c[I>>2]|0)+92>>2]|0)==0?(c[T>>2]|0)!=(c[(c[I>
x3e;2]|0)+36>>2]|0):0)c[(c[I>>2]|0)+92>>2]=c[(c[(c[I>>2]|0)+40>>2]|0)+(c[T>
;>2]<<2)>>2]}if((c[T>>2]|0)>>>0<=15?(c[(c[$>>2]|0)+8>>
;2]|0)>>>0>0:0){c[_>>2]=c[I>>2];b[_+8>>1]=7;do if(c[(c[$>>2]|0)+4>
;>2]|0){l=_+10|0;if((c[(c[$>>2]|0)+4>>2]|0)==1){b[l>>1]=1;c[_+4>>2]=1094992453;c[Z
x3e;>2]=828;break}else{b[l>>1]=2;c[_+4>>2]=1094992451;c[Z>>2]=828;break}}else{b[_+10>>
;1]=0;c[_+4>>2]=1094995778;c[Z>>2]=828}while(0);c[aa>>2]=Ld(c[Z>>2]|0,0,_,0)|0}}else ba=
112}}}else ba=112;while(0);if((ba|0)==112)c[aa>>2]=2;c[Y>>2]=c[aa>>2];ba=c[Y>>2]|0;i=ca;
return ba|0}function Sh(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
;x=i;i=i+112|0;j=x+100|0;p=x+96|0;q=x+92|0;r=x+88|0;k=x+105|0;u=x+84|0;n=x+80|0;s=x+76|0;t=x+72|0;w=x+40|0;l=x+8|0;o=x+4|0;m=x;v
=x+104|0;c[j>>2]=b;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;a[k>>0]=h;c[n>>2]=c
[(c[p>>2]|0)+28>>2];Ns(c[r>>2]|0,0,2072)|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>
x3e;2]=0;c[w+12>>2]=0;c[w+16>>2]=0;c[w+20>>2]=0;c[w+24>>2]=0;c[w+28>>2]=0;c[c[
r>>2]>>2]=c[p>>2];c[(c[r>>2]|0)+4>>2]=c[n>>2];c[t>>2]=(c[r
>>2]|0)+1324;c[s>>2]=Mc(c[p>>2]|0)|0;e=le(c[p>>2]|0,5532,c[r>>2]|0)|0;c[u>
;>2]=e;a:do if(!e){if(((d[(c[r>>2]|0)+16>>0]|0|0)==1?(d[(c[r>>2]|0)+18>>0]|0|0)>
;=4:0)?(d[(c[r>>2]|0)+19>>0]|0|0)<=4:0){e=Qc(c[p>>2]|0,(d[(c[r>>2]|0)+18>>
;0]|0)-4|0)|0;c[u>>2]=e;if(e|0)break;e=Th((c[r>>2]|0)+20|0,c[p>>2]|0,0)|0;c[u>>2]=e;if(e
|0)break;e=Th((c[r>>2]|0)+1208|0,c[p>>2]|0,0)|0;c[u>>2]=e;if(e|0)break;e=Th(w,c[p>>2]|0,
1)|0;c[u>>2]=e;if(e|0)break;e=Th((c[r>>2]|0)+84|0,c[p>>2]|0,1)|0;c[u>>2]=e;if(e|0)break;
e=Vh(w,(c[r>>2]|0)+1316|0,(c[r>>2]|0)+1320|0)|0;c[u>>2]=e;if(e|0)break;c[(c[r>>2]|0)+1312
>>2]=c[w+8>>2];c[(c[r>>2]|0)+8>>2]=c[(c[r>>2]|0)+20+8>>2];if((c[q>
;>2]|0)>=(c[(c[r>>2]|0)+8>>2]|0))c[u>>2]=6;if((c[q>>2]|0)<0)break;c[u>
;>2]=Xh((c[r>>2]|0)+1324|0,(c[r>>2]|0)+1208|0,c[q>>2]|0,c[p>>2]|0,c[s>>2]|
0,c[j>>2]|0)|0;if(c[u>>2]|0)break;e=Kc(c[p>>2]|0,(c[s>>2]|0)+(c[(c[t>>2]|0)+108
>>2]|0)|0)|0;c[u>>2]=e;if(e|0)break;c[u>>2]=Th((c[r>>2]|0)+1176|0,c[p>>2]|0,0)|
0;if(c[u>>2]|0)break;if((c[(c[t>>2]|0)+128>>2]|0)!=65535){e=Kc(c[p>>2]|0,(c[s>>
;2]|0)+(c[(c[t>>2]|0)+160>>2]|0)|0)|0;c[u>>2]=e;if(e|0)break;c[u>>2]=Th(l,c[p>>
;2]|0,0)|0;if(c[u>>2]|0)break;b:do if((c[l+8>>2]|0)>>>0<=32){c[(c[r>>2]|0)+1892
>>2]=c[l+8>>2];c[o>>2]=hc(c[n>>2]|0,568,0,c[l+8>>2]|0,0,u)|0;if(c[u>>
;2]|0)break;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[l+8>>2]|0)>>
x3e;0)break;c[(c[r>>2]|0)+1896+(c[m>>2]<<2)>>2]=(c[o>>2]|0)+((c[m>>2
]|0)*568|0);c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0
x3e;=(c[l+8>>2]|0)>>>0)break;c[o>>2]=c[(c[r>>2]|0)+1896+(c[m>>2]<<
;2)>>2];c[u>>2]=Xh(c[o>>2]|0,l,c[m>>2]|0,c[p>>2]|0,c[s>>2]|0,c[j>
;>2]|0)|0;if(c[u>>2]|0)break b;c[m>>2]=(c[m>>2]|0)+1}c[u>>2]=ki((c[r>>2]|
0)+2024|0,c[(c[r>>2]|0)+1176+8>>2]|0,c[p>>2]|0,(c[s>>2]|0)+(c[(c[t>>2]|0)+164
x3e;>2]|0)|0)|0}while(0);li(l);if(c[u>>2]|0)break}else c[(c[r>>2]|0)+1892>>2]=0;if(!(c[(c[t
x3e;>2]|0)+108>>2]|0)){c[u>>2]=2;break}c[(c[r>>2]|0)+12>>2]=c[(c[r>>2]|0)+
1176+8>>2];c[u>>2]=Vh((c[r>>2]|0)+84|0,(c[r>>2]|0)+1308|0,0)|0;if(c[u>>2]|0)break
;do if((c[(c[r>>2]|0)+12>>2]|0)>>>0>0){if((c[(c[t>>2]|0)+128>>2]|0)!=
65535)j=(d[k>>0]|0|0)!=0;else j=0;a[v>>0]=j&1;c[u>>2]=mi((c[r>>2]|0)+1152|0,c[(c[r
x3e;>2]|0)+12>>2]|0,c[p>>2]|0,c[s>>2]|0,c[(c[t>>2]|0)+100>>2]|0,a[v>
x3e;0]|0)|0;if(c[u>>2]|0)break a;if((c[(c[t>>2]|0)+128>>2]|0)!=65535)break;c[u>>2]=oi((c
[r>>2]|0)+116|0,(c[r>>2]|0)+1152|0,c[(c[r>>2]|0)+12>>2]|0,c[p>>2]|0,c[s>
x3e;2]|0,c[(c[t>>2]|0)+104>>2]|0)|0;if(c[u>>2]|0)break a}while(0);v=qi(c[r>>2]|0,c[q>
;>2]|0)|0;c[(c[r>>2]|0)+1304>>2]=v;break}c[u>>2]=2}while(0);li(w);i=x;return c[u>>2
]|0}function Th(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;r=i;i=i+32|0;n=r+16|0;j=r+12|0;o=r+23|0;p=r+8|0
;q=r+4|0;k=r+20|0;l=r+22|0;m=r;c[n>>2]=f;c[j>>2]=g;a[o>>0]=h;c[q>>2]=c[(c[j>>2
]|0)+28>>2];g=c[n>>2]|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=
0;c[g+16>>2]=0;c[g+20>>2]=0;c[g+24>>2]=0;c[g+28>>2]=0;c[c[n>>2]>>2]=
c[j>>2];g=Mc(c[j>>2]|0)|0;c[(c[n>>2]|0)+4>>2]=g;b[k>>1]=Pc(c[j>>2]|0
,p)|0;do if(((c[p>>2]|0)==0?(e[k>>1]|0)>0:0)?(a[l>>0]=ke(c[j>>2]|0,p)|0,(c[p>
x3e;2]|0)==0):0){if((d[l>>0]|0)>=1?(d[l>>0]|0)<=4:0){c[(c[n>>2]|0)+8>>2]=e[k
x3e;>1];a[(c[n>>2]|0)+12>>0]=a[l>>0]|0;c[m>>2]=_((e[k>>1]|0)+1|0,d[l>
;>0]|0)|0;c[(c[n>>2]|0)+16>>2]=(c[(c[n>>2]|0)+4>>2]|0)+3+(c[m>>2]|0);g=Qc
(c[j>>2]|0,(c[m>>2]|0)-(d[l>>0]|0)|0)|0;c[p>>2]=g;if(g|0)break;c[m>>2]=Uh(c[n
x3e;>2]|0,p)|0;if(c[p>>2]|0)break;if(!(c[m>>2]|0)){c[p>>2]=8;break}k=(c[m>>2]|0)+-1
|0;c[m>>2]=k;c[(c[n>>2]|0)+20>>2]=k;k=c[j>>2]|0;j=c[m>>2]|0;if(a[o>>
0]|0){c[p>>2]=de(k,j,(c[n>>2]|0)+28|0)|0;break}else{c[p>>2]=Qc(k,j)|0;break}}c[p>>2]=8}while
(0);if(!(c[p>>2]|0)){q=c[p>>2]|0;i=r;return q|0}Fb(c[q>>2]|0,c[(c[n>>2]|0)+24>>
;2]|0);c[(c[n>>2]|0)+24>>2]=0;q=c[p>>2]|0;i=r;return q|0}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,m=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;m=l+8|0;k=l+24|0;j=l+4|0;h=l;c[e>>2]=a;c[f>>
2]=b;c[m>>2]=c[c[e>>2]>>2];c[j>>2]=0;a=Rc(c[m>>2]|0,k,d[(c[e>>2]|0)+
12>>0]|0)|0;c[g>>2]=a;if(a|0){k=c[g>>2]|0;m=c[f>>2]|0;c[m>>2]=k;m=c[j>>
;2]|0;i=l;return m|0}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(d[(c[e>>2]|0)+12>>0]|0|0))
break;c[j>>2]=c[j>>2]<<8|(d[k+(c[h>>2]|0)>>0]|0);c[h>>2]=(c[h>
x3e;2]|0)+1}k=c[g>>2]|0;m=c[f>>2]|0;c[m>>2]=k;m=c[j>>2]|0;i=l;return m|0}function Vh(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;t=i;i=i+48|0;f=t+44|0;g=t+40|0;h=t+36|0;k=t+32
|0;m=t+28|0;r=t+24|0;o=t+20|0;n=t+16|0;j=t+12|0;l=t+8|0;q=t+4|0;p=t;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;
c[k>>2]=0;c[m>>2]=c[(c[c[f>>2]>>2]|0)+28>>2];c[o>>2]=0;c[c[g>
x3e;2]>>2]=0;if((c[(c[f>>2]|0)+24>>2]|0)==0?(c[k>>2]=Wh(c[f>>2]|0)|0,c[k>
x3e;2]|0):0){s=c[k>>2]|0;i=t;return s|0}if((c[(c[f>>2]|0)+8>>2]|0)>>>0<=0){s=c
[k>>2]|0;i=t;return s|0}c[r>>2]=hc(c[m>>2]|0,4,0,(c[(c[f>>2]|0)+8>>2]|0)+1|0,0
,k)|0;if(c[k>>2]|0){s=c[k>>2]|0;i=t;return s|0}if(c[h>>2]|0?(c[o>>2]=bc(c[m>>2
]|0,(c[(c[f>>2]|0)+20>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)|0,k)|0,c[k>>2]|0):0){s=c[
k>>2]|0;i=t;return s|0}c[l>>2]=0;c[q>>2]=c[(c[f>>2]|0)+28>>2];d=(c[c[(c[f>
;>2]|0)+24>>2]>>2]|0)-1|0;c[j>>2]=d;c[j>>2]=(c[j>>2]|0)>>>
0>=(c[(c[f>>2]|0)+20>>2]|0)>>>0?0:d;if(c[h>>2]|0)c[c[r>>2]>>
;2]=(c[o>>2]|0)+(c[j>>2]|0);else c[c[r>>2]>>2]=(c[q>>2]|0)+(c[j>>2]|
0);c[n>>2]=1;while(1){if((c[n>>2]|0)>>>0>(c[(c[f>>2]|0)+8>>2]|0)>
;>>0)break;c[p>>2]=(c[(c[(c[f>>2]|0)+24>>2]|0)+(c[n>>2]<<2)>>
;2]|0)-1;if((c[p>>2]|0)!=0?(c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0:0){
if((c[p>>2]|0)>>>0>=(c[(c[f>>2]|0)+20>>2]|0)>>>0?(c[n>>
;2]|0)>>>0<(c[(c[f>>2]|0)+8>>2]|0)>>>0:0)s=16}else s=16;if((s|0)==16){s=0
;c[p>>2]=c[j>>2]}if(c[h>>2]|0){c[(c[r>>2]|0)+(c[n>>2]<<2)>>
;2]=(c[o>>2]|0)+(c[p>>2]|0)+(c[l>>2]|0);if((c[p>>2]|0)!=(c[j>>2]|0)){Ss(c[(c[r
>>2]|0)+((c[n>>2]|0)-1<<2)>>2]|0,(c[q>>2]|0)+(c[j>>2]|0)|0,(c[(c[r
x3e;>2]|0)+(c[n>>2]<<2)>>2]|0)-(c[(c[r>>2]|0)+((c[n>>2]|0)-1<<2
)>>2]|0)|0)|0;a[c[(c[r>>2]|0)+(c[n>>2]<<2)>>2]>>0]=0;d=(c[r>>
;2]|0)+(c[n>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+1}}else
c[(c[r>>2]|0)+(c[n>>2]<<2)>>2]=(c[q>>2]|0)+(c[p>>2]|0);c[j>>
;2]=c[p>>2];c[n>>2]=(c[n>>2]|0)+1}c[c[g>>2]>>2]=c[r>>2];if(!(c[h>
;>2]|0)){s=c[k>>2]|0;i=t;return s|0}c[c[h>>2]>>2]=c[o>>2];s=c[k>>2]|0;i=t
;return s|0}function Wh(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;o=i;i=i+48|0;e=o+28|0;g=o+24|0;n=o+20|0;h=o+16|0;j=
o+32|0;f=o+12|0;k=o+8|0;l=o+4|0;m=o;c[e>>2]=b;c[g>>2]=0;c[n>>2]=c[c[e>>2]>>2];
c[h>>2]=c[(c[n>>2]|0)+28>>2];if(((((c[(c[e>>2]|0)+8>>2]|0)>>>0
x3e;0?(c[(c[e>>2]|0)+24>>2]|0)==0:0)?(a[j>>0]=a[(c[e>>2]|0)+12>>0]|0,c[f>
x3e;2]=_((c[(c[e>>2]|0)+8>>2]|0)+1|0,d[j>>0]|0)|0,b=hc(c[h>>2]|0,4,0,(c[(c[e>>
2]|0)+8>>2]|0)+1|0,0,g)|0,c[(c[e>>2]|0)+24>>2]=b,(c[g>>2]|0)==0):0)?(b=Kc(c[n>>
;2]|0,(c[(c[e>>2]|0)+4>>2]|0)+3|0)|0,c[g>>2]=b,(b|0)==0):0)?(b=ee(c[n>>2]|0,c[f>>
;2]|0)|0,c[g>>2]=b,(b|0)==0):0){c[m>>2]=c[(c[e>>2]|0)+24>>2];c[k>>2]=c[(c[n>
;>2]|0)+32>>2];c[l>>2]=(c[k>>2]|0)+(c[f>>2]|0);a:do switch(d[j>>0]|0){case
1:while(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>
2]>>2]=d[c[k>>2]>>0];c[k>>2]=(c[k>>2]|0)+1;c[m>>2]=(c[m>>2
]|0)+4}case 2:while(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m
x3e;>2]>>2]=((d[c[k>>2]>>0]&65535)<<8|(d[(c[k>>2]|0)+1>>0]
x26;65535)<<0)&65535;c[k>>2]=(c[k>>2]|0)+2;c[m>>2]=(c[m>>2]|0)+4}case 3:while
(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>2]>
x3e;2]=a[c[k>>2]>>0]<<16|d[(c[k>>2]|0)+1>>0]<<8|d[(c[k>>2]|
0)+2>>0]<<0;c[k>>2]=(c[k>>2]|0)+3;c[m>>2]=(c[m>>2]|0)+4}default:while
(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>2]>
x3e;2]=d[c[k>>2]>>0]<<24|d[(c[k>>2]|0)+1>>0]<<16|d[(c[k>>2
]|0)+2>>0]<<8|d[(c[k>>2]|0)+3>>0]<<0;c[k>>2]=(c[k>>2]|0)+4
;c[m>>2]=(c[m>>2]|0)+4}}while(0);ge(c[n>>2]|0)}if(!(c[g>>2]|0)){n=c[g>>2]|0;i=
o;return n|0}Fb(c[h>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;n=c[g
>>2]|0;i=o;return n|0}function Xh(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;v=i;i=i+464|0;k=v+456|0;l=v+452|0;w=v+448|0;m=v+444|0;n=v+440|0;o=v+436|0;r=v+432|0;s=v+16|0;p=v+12|0;q=v+8
|0;u=v+4|0;t=v;c[k>>2]=b;c[l>>2]=e;c[w>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>
;2]=j;c[p>>2]=0;c[u>>2]=c[k>>2];c[t>>2]=(c[k>>2]|0)+172;Yh(s,4096,c[k>>
;2]|0,c[o>>2]|0);Ns(c[u>>2]|0,0,172)|0;c[(c[u>>2]|0)+32>>2]=-6553600;c[(c[u>>2
]|0)+36>>2]=3276800;c[(c[u>>2]|0)+44>>2]=2;c[(c[u>>2]|0)+48>>2]=65536;c[(c[u
x3e;>2]|0)+48+12>>2]=65536;c[(c[u>>2]|0)+152>>2]=8720;c[c[u>>2]>>2]=65535
;c[(c[u>>2]|0)+4>>2]=65535;c[(c[u>>2]|0)+8>>2]=65535;c[(c[u>>2]|0)+12>>
;2]=65535;c[(c[u>>2]|0)+16>>2]=65535;c[(c[u>>2]|0)+20>>2]=65535;c[(c[u>>2]|0)+
124>>2]=65535;c[(c[u>>2]|0)+128>>2]=65535;c[(c[u>>2]|0)+132>>2]=65535;c[(c[u
x3e;>2]|0)+168>>2]=65535;c[r>>2]=Zh(c[l>>2]|0,c[w>>2]|0,p,q)|0;if(!(c[r>>
2]|0))c[r>>2]=_h(s,c[p>>2]|0,(c[p>>2]|0)+(c[q>>2]|0)|0)|0;ji(c[l>>2]|0,p);if(c
[r>>2]|0){w=c[r>>2]|0;i=v;return w|0}if((c[(c[u>>2]|0)+128>>2]|0)!=65535){w=c[r>>
;2]|0;i=v;return w|0}do if(c[(c[u>>2]|0)+112>>2]|0?c[(c[u>>2]|0)+116>>2]|0:0){Ns(c[t>
;>2]|0,0,360)|0;c[(c[t>>2]|0)+200>>2]=7;c[(c[t>>2]|0)+204>>2]=1;c[(c[t>>2
]|0)+332>>2]=-1;c[(c[t>>2]|0)+340>>2]=3932;c[(c[t>>2]|0)+196>>2]=2596864;Yh(s,
8192,c[t>>2]|0,c[o>>2]|0);w=Kc(c[m>>2]|0,(c[n>>2]|0)+(c[(c[k>>2]|0)+112>
x3e;2]|0)|0)|0;c[r>>2]=w;if(w|0){w=c[r>>2]|0;i=v;return w|0}w=ee(c[m>>2]|0,c[(c[k>>2]|0)+
116>>2]|0)|0;c[r>>2]=w;if(w|0){w=c[r>>2]|0;i=v;return w|0}c[r>>2]=_h(s,c[(c[m>>
;2]|0)+32>>2]|0,c[(c[m>>2]|0)+36>>2]|0)|0;ge(c[m>>2]|0);if(c[r>>2]|0){w=c[r>
;>2]|0;i=v;return w|0}else{w=c[t>>2]|0;a[w>>0]=(d[w>>0]|0)&-2;break}}while(0);if(!(c[(c[
t>>2]|0)+348>>2]|0)){w=c[r>>2]|0;i=v;return w|0}w=Kc(c[m>>2]|0,(c[n>>2]|0)+(c[(
c[u>>2]|0)+112>>2]|0)+(c[(c[t>>2]|0)+348>>2]|0)|0)|0;c[r>>2]=w;if(w|0){w=c[r
x3e;>2]|0;i=v;return w|0}c[r>>2]=Th((c[k>>2]|0)+532|0,c[m>>2]|0,1)|0;if(c[r>>2]|0){
w=c[r>>2]|0;i=v;return w|0}c[r>>2]=Vh((c[k>>2]|0)+532|0,(c[k>>2]|0)+564|0,0)|0;w=c[r>
;>2]|0;i=v;return w|0}function Yh(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;Ns(c[g>>2]|0,0,416)|0;c[(c[g
>>2]|0)+404>>2]=(c[g>>2]|0)+16;c[(c[g>>2]|0)+408>>2]=c[k>>2];c[(c[g
x3e;>2]|0)+412>>2]=c[j>>2];c[c[g>>2]>>2]=c[h>>2];i=f;return}function Zh(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;q=i;i=i+48|0;g=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;l=q
+16|0;p=q+12|0;m=q+8|0;n=q+4|0;o=q;c[g>>2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>
;2]=0;if(c[g>>2]|0?(c[(c[g>>2]|0)+8>>2]|0)>>>0>(c[h>>2]|0)>>
;>0:0){c[p>>2]=c[c[g>>2]>>2];c[n>>2]=0;b=c[h>>2]|0;a=c[g>>2]|0;
a:do if(c[(c[g>>2]|0)+24>>2]|0){c[m>>2]=c[(c[a+24>>2]|0)+(b<<2)>>2];
if(c[m>>2]|0)do{c[h>>2]=(c[h>>2]|0)+1;c[n>>2]=c[(c[(c[g>>2]|0)+24>>2
]|0)+(c[h>>2]<<2)>>2];if(c[n>>2]|0)break a}while((c[h>>2]|0)>>>
0<(c[(c[g>>2]|0)+8>>2]|0)>>>0)}else{c[o>>2]=_(b,d[a+12>>0]|0)|0;o=Kc
(c[p>>2]|0,(c[(c[g>>2]|0)+4>>2]|0)+3+(c[o>>2]|0)|0)|0;c[l>>2]=o;if(o|0){p=c[l
x3e;>2]|0;i=q;return p|0}c[m>>2]=Uh(c[g>>2]|0,l)|0;if(c[l>>2]|0){p=c[l>>2]|0;i=q;return
p|0}if(c[m>>2]|0)do{c[h>>2]=(c[h>>2]|0)+1;c[n>>2]=Uh(c[g>>2]|0,l)|0;if(c[n>
;>2]|0)break a}while((c[h>>2]|0)>>>0<(c[(c[g>>2]|0)+8>>2]|0)>>
x3e;0)}while(0);if(!((c[n>>2]|0)>>>0<=((c[(c[p>>2]|0)+4>>2]|0)+1|0)>>
;>0?(c[(c[g>>2]|0)+16>>2]|0)>>>0<=((c[(c[p>>2]|0)+4>>2]|0)-(c[n
>>2]|0)+1|0)>>>0:0))c[n>>2]=(c[(c[p>>2]|0)+4>>2]|0)-(c[(c[g>>2]|
0)+16>>2]|0)+1;if(c[m>>2]|0?(c[n>>2]|0)>>>0>(c[m>>2]|0)>>
x3e;0:0){c[c[k>>2]>>2]=(c[n>>2]|0)-(c[m>>2]|0);if(c[(c[g>>2]|0)+28>>
2]|0){c[c[j>>2]>>2]=(c[(c[g>>2]|0)+28>>2]|0)+(c[m>>2]|0)+-1;p=c[l>>2
]|0;i=q;return p|0}o=Kc(c[p>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[m>>2]|0)-1|0)|0;c[l>
x3e;2]=o;if(o|0){p=c[l>>2]|0;i=q;return p|0}c[l>>2]=de(c[p>>2]|0,(c[n>>2]|0)-(c[m>
x3e;2]|0)|0,c[j>>2]|0)|0;p=c[l>>2]|0;i=q;return p|0}c[c[j>>2]>>2]=0;c[c[k>>2]
x3e;>2]=0;p=c[l>>2]|0;i=q;return p|0}c[l>>2]=6;p=c[l>>2]|0;i=q;return p|0}function _h(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;v=i;i=i+64|0;h=v+52|0;w=v+48|0;j=v+44|0;p=
v+40|0;m=v+36|0;x=v+32|0;s=v+28|0;k=v+24|0;o=v+20|0;n=v+16|0;t=v+12|0;q=v+8|0;r=v+4|0;l=v;c[h>>2]=e;c[w>>2]=
f;c[j>>2]=g;c[p>>2]=c[w>>2];c[m>>2]=0;c[x>>2]=c[c[h>>2]>>2
];c[x>>2]=c[x>>2];c[(c[h>>2]|0)+404>>2]=(c[h>>2]|0)+16;c[(c[h>>2]|0)+
4>>2]=c[w>>2];c[(c[h>>2]|0)+8>>2]=c[j>>2];c[(c[h>>2]|0)+12>>
;2]=c[w>>2];a:while(1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0){u=47
;break}c[s>>2]=d[c[p>>2]>>0];g=((c[(c[h>>2]|0)+404>>2]|0)-((c[h>>2]|
0)+16)|0)/4|0;b:do if((c[s>>2]|0)>>>0>=27&(c[s>>2]|0)!=31){if((g|0)>=96){u=48;
break a}w=c[p>>2]|0;f=(c[h>>2]|0)+404|0;x=c[f>>2]|0;c[f>>2]=x+4;c[x>>2]=w;if((
c[s>>2]|0)==30){c[p>>2]=(c[p>>2]|0)+1;while(1){if((c[p>>2]|0)>>>0>=(
c[j>>2]|0)>>>0){u=47;break a}c[s>>2]=(d[c[p>>2]>>0]|0)>>4;if((c
[s>>2]|0)==15)break b;c[s>>2]=(d[c[p>>2]>>0]|0)&15;if((c[s>>2]|0)==15)break
b;c[p>>2]=(c[p>>2]|0)+1}}if((c[s>>2]|0)==28){c[p>>2]=(c[p>>2]|0)+2;break}if((
c[s>>2]|0)==29){c[p>>2]=(c[p>>2]|0)+4;break}if((c[s>>2]|0)>>>0>246)c
[p>>2]=(c[p>>2]|0)+1}else{c[o>>2]=g;c[c[(c[h>>2]|0)+404>>2]>>2]=c[p
x3e;>2];c[k>>2]=c[s>>2];if((c[s>>2]|0)==12){c[p>>2]=(c[p>>2]|0)+1;if((c[p
>>2]|0)>>>0>=(c[j>>2]|0)>>>0){u=50;break a}c[k>>2]=256|(d[c[p
x3e;>2]>>0]|0)}c[k>>2]=c[k>>2]|c[(c[h>>2]|0)+408>>2];c[n>>2]=920
;while(1){if(!(c[c[n>>2]>>2]|0))break;if((c[(c[n>>2]|0)+4>>2]|0)==(c[k>>2]|0)){
u=23;break}c[n>>2]=(c[n>>2]|0)+28}c:do if((u|0)==23){u=0;c[q>>2]=(c[(c[h>>2]|0)+412>
;>2]|0)+(c[(c[n>>2]|0)+8>>2]|0);if((c[o>>2]|0)>>>0<1?(c[c[n>>2]
x3e;>2]|0)!=6:0){u=49;break a}switch(c[c[n>>2]>>2]|0){case 1:case 4:case 5:{c[t>>2]=hi((c[h
x3e;>2]|0)+16|0)|0;break}case 2:{c[t>>2]=fi((c[h>>2]|0)+16|0)|0;break}case 3:{c[t>>2]=di((c[h
>>2]|0)+16|0,3)|0;break}case 6:{c[r>>2]=(c[(c[h>>2]|0)+412>>2]|0)+(c[(c[n>>2]|
0)+24>>2]|0);c[l>>2]=(c[h>>2]|0)+16;if((c[o>>2]|0)>>>0>(c[(c[n>
x3e;2]|0)+20>>2]|0)>>>0)c[o>>2]=c[(c[n>>2]|0)+20>>2];a[c[r>>2]
x3e;>0]=c[o>>2];c[t>>2]=0;while(1){if((c[o>>2]|0)>>>0<=0)break c;x=c[l>
;>2]|0;c[l>>2]=x+4;x=hi(x)|0;c[t>>2]=(c[t>>2]|0)+x;switch(d[(c[n>>2]|0)+12>>
;0]|0|0){case 1:{a[c[q>>2]>>0]=c[t>>2];break}case 2:{b[c[q>>2]>>1]=c[t>
x3e;2];break}case 4:{c[c[q>>2]>>2]=c[t>>2];break}default:c[c[q>>2]>>2]=c[t>
;>2]}c[q>>2]=(c[q>>2]|0)+(d[(c[n>>2]|0)+12>>0]|0);c[o>>2]=(c[o>>
;2]|0)+-1}}default:{c[m>>2]=Ta[c[(c[n>>2]|0)+16>>2]&63](c[h>>2]|0)|0;if(c[m>
x3e;2]|0){u=47;break a}else break c}}switch(d[(c[n>>2]|0)+12>>0]|0|0){case 1:{a[c[q>>2]>>
;0]=c[t>>2];break c}case 2:{b[c[q>>2]>>1]=c[t>>2];break c}case 4:{c[c[q>>2]>
;>2]=c[t>>2];break c}default:{c[c[q>>2]>>2]=c[t>>2];break c}}}while(0);c[(c[h>
x3e;2]|0)+404>>2]=(c[h>>2]|0)+16}while(0);c[p>>2]=(c[p>>2]|0)+1}if((u|0)==47){x=c[m>
;>2]|0;i=v;return x|0}else if((u|0)==48){c[m>>2]=6;x=c[m>>2]|0;i=v;return x|0}else if((u|0)==49){c[m>
;>2]=6;x=c[m>>2]|0;i=v;return x|0}else if((u|0)==50){c[m>>2]=6;x=c[m>>2]|0;i=v;return x|0}return
0}function $h(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;k=j+28|0;l=j+24|0;e=j+20|0;f=j+16|0;h=j+12|0;b=j+8|
0;d=j+4|0;g=j;c[k>>2]=a;c[l>>2]=c[(c[k>>2]|0)+412>>2];c[e>>2]=(c[l>>
2]|0)+48;c[f>>2]=(c[l>>2]|0)+68;c[h>>2]=(c[l>>2]|0)+64;c[b>>2]=(c[k>>
;2]|0)+16;c[d>>2]=161;if((c[(c[k>>2]|0)+404>>2]|0)>>>0<((c[k>>2]|0)+
16+24|0)>>>0){l=c[d>>2]|0;i=j;return l|0}c[d>>2]=0;l=c[b>>2]|0;c[b>>2]=l+
4;l=ai(l,g)|0;c[c[e>>2]>>2]=l;c[g>>2]=0-(c[g>>2]|0);if((c[g>>2]|0)<0|(c[g
>>2]|0)>9){c[c[e>>2]>>2]=65536;c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|
0)+8>>2]=0;c[(c[e>>2]|0)+12>>2]=65536;c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+
4>>2]=0;c[c[h>>2]>>2]=1;l=c[d>>2]|0;i=j;return l|0}else{l=c[b>>2]|0;c[b>
x3e;2]=l+4;l=di(l,c[g>>2]|0)|0;c[(c[e>>2]|0)+8>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l
=di(l,c[g>>2]|0)|0;c[(c[e>>2]|0)+4>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l=di(l,c[g>
;>2]|0)|0;c[(c[e>>2]|0)+12>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l=di(l,c[g>>2]|0
)|0;c[c[f>>2]>>2]=l;l=di(c[b>>2]|0,c[g>>2]|0)|0;c[(c[f>>2]|0)+4>>2]=
l;c[c[h>>2]>>2]=c[2376+(c[g>>2]<<2)>>2];l=c[d>>2]|0;i=j;return l|0}return
0}function ai(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;e=j+16|0;k=j+12|0;f=j+8|0;h=j+4|0;g=j;c[k>>2]=
a;c[f>>2]=b;b=c[c[k>>2]>>2]|0;a=c[(c[k>>2]|0)+4>>2]|0;if((d[c[c[k>>2
]>>2]>>0]|0|0)==30){c[e>>2]=bi(b,a,0,c[f>>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}c
[h>>2]=ci(b,a)|0;if((c[h>>2]|0)<=32767){c[c[f>>2]>>2]=0;c[e>>2]=c[h>
x3e;2]<<16;k=c[e>>2]|0;i=j;return k|0}c[g>>2]=5;while(1){if((c[g>>2]|0)>=10)break;if
((c[h>>2]|0)<(c[2376+(c[g>>2]<<2)>>2]|0))break;c[g>>2]=(c[g>>2]|
0)+1}a=c[g>>2]|0;if(((c[h>>2]|0)/(c[2376+((c[g>>2]|0)-5<<2)>>2]|0)|0|0)>32767
){c[c[f>>2]>>2]=a-4;c[e>>2]=Vb(c[h>>2]|0,c[2376+((c[g>>2]|0)-4<<2)
x3e;>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}else{c[c[f>>2]>>2]=a-5;c[e>>2]=Vb(c[h>
x3e;2]|0,c[2376+((c[g>>2]|0)-5<<2)>>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}return 0}function
bi(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,v=0,w=0,x=0,y=0,z=0;y=i;i=i+80|
0;z=y+64|0;g=y+60|0;h=y+56|0;t=y+52|0;n=y+48|0;m=y+44|0;o=y+40|0;w=y+36|0;r=y+32|0;u=y+28|0;x=y+24|0;k=y+20|0;j=y+16|0;l=y+12|0;
v=y+8|0;q=y+4|0;s=y;c[z>>2]=a;c[g>>2]=b;c[h>>2]=e;c[t>>2]=f;c[n>>2]=c[z>
x3e;2];c[x>>2]=0;c[k>>2]=0;if(c[t>>2]|0)c[c[t>>2]>>2]=0;c[w>>2]=0;c[
r>>2]=0;c[u>>2]=0;c[j>>2]=0;c[l>>2]=0;c[v>>2]=0;c[o>>2]=4;while(1){if
(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n>>2]|0)>>>0>=(c[g>>2
]|0)>>>0):0){p=54;break}c[m>>2]=(d[c[n>>2]>>0]|0)>>c[o>>2]&
;15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|0)==14){c[x>>2]=1;continue}if((c[m>>2]|0
)>>>0>9)break;if((c[r>>2]|0)>=214748364){c[j>>2]=(c[j>>2]|0)+1;continue}if
(!((c[m>>2]|0)!=0|(c[r>>2]|0)!=0))continue;c[l>>2]=(c[l>>2]|0)+1;c[r>>2]=((c[r
>>2]|0)*10|0)+(c[m>>2]|0)}if((p|0)==54){z=c[w>>2]|0;i=y;return z|0}a:do if((c[m>>2]|0)==
10){while(1){if(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n>>2]|0)>>>0>=(c
[g>>2]|0)>>>0):0)break;c[m>>2]=(d[c[n>>2]>>0]|0)>>c[o>>
;2]&15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|0)>>>0>=10)break a;if(!((c[m>
;>2]|0)!=0|(c[r>>2]|0)!=0)){c[j>>2]=(c[j>>2]|0)+-1;continue}if(!((c[r>>2]|0)<214748364
&(c[v>>2]|0)<9))continue;c[v>>2]=(c[v>>2]|0)+1;c[r>>2]=((c[r>>2]|0)*
10|0)+(c[m>>2]|0)}z=c[w>>2]|0;i=y;return z|0}while(0);if((c[m>>2]|0)==12){c[k>>2]=1;c[m
x3e;>2]=11}do if((c[m>>2]|0)==11){while(1){if(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n
>>2]|0)>>>0>=(c[g>>2]|0)>>>0):0){p=54;break}c[m>>2]=(d[c[n>
;>2]>>0]|0)>>c[o>>2]&15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|
0)>>>0>=10){p=28;break}c[u>>2]=((c[u>>2]|0)*10|0)+(c[m>>2]|0);if((c[u>>
;2]|0)>1e3){p=54;break}}if((p|0)==28){if(!(c[k>>2]|0))break;c[u>>2]=0-(c[u>>2]|0);break}else
if((p|0)==54){z=c[w>>2]|0;i=y;return z|0}}while(0);c[u>>2]=(c[u>>2]|0)+((c[h>>2]|0)+(c[j
>>2]|0));do if(!(c[t>>2]|0)){c[l>>2]=(c[l>>2]|0)+(c[u>>2]|0);c[v>>2]=(
c[v>>2]|0)-(c[u>>2]|0);z=c[l>>2]|0;if((((c[l>>2]|0)<0?0-z|0:z)|0)>5){z=c[w>
;>2]|0;i=y;return z|0}if((c[l>>2]|0)<0){c[r>>2]=(c[r>>2]|0)/(c[2376+(0-(c[l>>2
]|0)<<2)>>2]|0)|0;c[v>>2]=(c[v>>2]|0)+(c[l>>2]|0)}if((c[v>>2]|0)==10
){c[r>>2]=(c[r>>2]|0)/10|0;c[v>>2]=(c[v>>2]|0)-1}if((c[v>>2]|0)>0)if(((c[
r>>2]|0)/(c[2376+(c[v>>2]<<2)>>2]|0)|0|0)>32767){z=c[w>>2]|0;i=y;return z
|0}else{c[w>>2]=Vb(c[r>>2]|0,c[2376+(c[v>>2]<<2)>>2]|0)|0;break}else{c[r>
x3e;2]=_(c[r>>2]|0,c[2376+(0-(c[v>>2]|0)<<2)>>2]|0)|0;if((c[r>>2]|0)>32767
){z=c[w>>2]|0;i=y;return z|0}else{c[w>>2]=c[r>>2]<<16;break}}}else{c[v>>2]=(c[
v>>2]|0)+(c[l>>2]|0);c[u>>2]=(c[u>>2]|0)+(c[l>>2]|0);j=c[r>>2]|0;if((
c[v>>2]|0)>5){g=c[r>>2]|0;h=c[v>>2]|0;if(((j|0)/(c[2376+((c[v>>2]|0)-5<<2
)>>2]|0)|0|0)>32767){c[w>>2]=Vb(g,c[2376+(h-4<<2)>>2]|0)|0;c[c[t>>2]>
;>2]=(c[u>>2]|0)-4;break}else{c[w>>2]=Vb(g,c[2376+(h-5<<2)>>2]|0)|0;c[c[t>>
;2]>>2]=(c[u>>2]|0)-5;break}}if((j|0)>32767){c[w>>2]=Vb(c[r>>2]|0,10)|0;c[c[t>
x3e;2]>>2]=(c[u>>2]|0)-(c[v>>2]|0)+1;break}if((c[u>>2]|0)>0){c[q>>2]=(c[u
>>2]|0)<5?c[u>>2]|0:5;c[u>>2]=(c[u>>2]|0)-(c[q>>2]|0);c[s>>2]=(
c[q>>2]|0)-(c[v>>2]|0);c[r>>2]=_(c[r>>2]|0,c[2376+(c[s>>2]<<2)>
x3e;2]|0)|0;if((c[r>>2]|0)>32767){c[r>>2]=(c[r>>2]|0)/10|0;c[u>>2]=(c[u>>
2]|0)+1}}else c[u>>2]=(c[u>>2]|0)-(c[v>>2]|0);c[w>>2]=c[r>>2]<<16;c[
c[t>>2]>>2]=c[u>>2]}while(0);if(!(c[x>>2]|0)){z=c[w>>2]|0;i=y;return z|0}c[w
x3e;>2]=0-(c[w>>2]|0);z=c[w>>2]|0;i=y;return z|0}function ci(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k
=0;j=i;i=i+32|0;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>>2]=a;c[e>>2]=b;c[f>>2]=c[k>>2
];a=c[f>>2]|0;c[f>>2]=a+1;c[g>>2]=d[a>>0];c[h>>2]=0;do if((c[g>>2]|0
)==28){if(((c[f>>2]|0)+2|0)>>>0<=(c[e>>2]|0)>>>0){c[h>>2]=(((d[
c[f>>2]>>0]|0)<<8|(d[(c[f>>2]|0)+1>>0]|0))&65535)<<16>>
;16;c[f>>2]=(c[f>>2]|0)+2;k=c[h>>2]|0;i=j;return k|0}}else{if((c[g>>2]|0)==29){if(((c[f
x3e;>2]|0)+4|0)>>>0>(c[e>>2]|0)>>>0)break;c[h>>2]=(d[c[f>>
2]>>0]|0)<<24|(d[(c[f>>2]|0)+1>>0]|0)<<16|(d[(c[f>>2]|0)+2>>
;0]|0)<<8|(d[(c[f>>2]|0)+3>>0]|0);c[f>>2]=(c[f>>2]|0)+4;k=c[h>>2]|0;
i=j;return k|0}a=c[g>>2]|0;if((c[g>>2]|0)<247){c[h>>2]=a-139;k=c[h>>2]|0;i=j;return
k|0}b=((c[f>>2]|0)+1|0)>>>0>(c[e>>2]|0)>>>0;if((a|0)<251){if(b)break
;c[h>>2]=((c[g>>2]|0)-247<<8)+(d[c[f>>2]>>0]|0)+108;c[f>>2]=(c[f>
;>2]|0)+1;k=c[h>>2]|0;i=j;return k|0}else{if(b)break;c[h>>2]=(0-((c[g>>2]|0)-251)<<
8)-(d[c[f>>2]>>0]|0)-108;c[f>>2]=(c[f>>2]|0)+1;k=c[h>>2]|0;i=j;return k|0}}while
(0);c[h>>2]=0;k=c[h>>2]|0;i=j;return k|0}function di(a,b){a=a|0;b=b|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]=b;b=c[c[g>>2]>>2]|0;a=c[(c[g>>2]|0)+4>>2]|0;if((
d[c[c[g>>2]>>2]>>0]|0|0)==30){g=bi(b,a,c[e>>2]|0,0)|0;i=f;return g|0}else{g=ci(b,a)|0;g=(
_(g,c[2376+(c[e>>2]<<2)>>2]|0)|0)<<16;i=f;return g|0}return 0}function ei(a){a=a|0;var b
=0,d=0,e=0,f=0,g=0,h=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;b=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[h>>2]=c[(c[g>>
;2]|0)+412>>2];c[b>>2]=(c[h>>2]|0)+80;c[d>>2]=(c[g>>2]|0)+16;c[e>>2]=
161;if((c[(c[g>>2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+16|0)>>>0){
h=c[e>>2]|0;i=f;return h|0}h=c[d>>2]|0;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[c[b>>2]>>
2]=h;h=c[d>>2]|0;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[(c[b>>2]|0)+4>>2]=h;h=c[d>>2]|0
;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[(c[b>>2]|0)+8>>2]=h;h=Tb(fi(c[d>>2]|0)|0)|0;c[(c[b>
x3e;2]|0)+12>>2]=h;c[e>>2]=0;h=c[e>>2]|0;i=f;return h|0}function fi(a){a=a|0;var b=0,e=0,f=0;e=i;i
=i+16|0;f=e;c[f>>2]=a;b=c[c[f>>2]>>2]|0;a=c[(c[f>>2]|0)+4>>2]|0;if((d[c[c[f>
;>2]>>2]>>0]|0|0)==30){f=bi(b,a,0,0)|0;i=e;return f|0}else{f=(ci(b,a)|0)<<16;i=e;return f|0}return
0}function gi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+12|0;d=f+8|0;b=f+4|0;e=f;c[g>>2]=a;c[d>>2]=
c[(c[g>>2]|0)+412>>2];c[b>>2]=(c[g>>2]|0)+16;c[e>>2]=161;if((c[(c[g>>
;2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+8|0)>>>0){g=c[e>>2]|0;i=f
;return g|0}g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+116>>2]=g;g=hi(c[b>>
;2]|0)|0;c[(c[d>>2]|0)+112>>2]=g;c[e>>2]=0;g=c[e>>2]|0;i=f;return g|0}function hi(a){a=a
|0;var b=0,e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=a;b=c[c[f>>2]>>2]|0;a=c[(c[f>>2]|0)+4>
x3e;2]|0;if((d[c[c[f>>2]>>2]>>0]|0|0)==30){f=(bi(b,a,0,0)|0)>>16;i=e;return f|0}else{f=ci
(b,a)|0;i=e;return f|0}return 0}function ii(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+12|0;d=f+8|0;b=f+4|0;e=f;c[g>
x3e;2]=a;c[d>>2]=c[(c[g>>2]|0)+412>>2];c[b>>2]=(c[g>>2]|0)+16;c[e>>2
]=161;if((c[(c[g>>2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+12|0)>>>
0){g=c[e>>2]|0;i=f;return g|0}g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+128>
x3e;2]=g;g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+132>>2]=g;g=hi(c[b>>2
]|0)|0;c[(c[d>>2]|0)+136>>2]=g;c[e>>2]=0;g=c[e>>2]|0;i=f;return g|0}function ji(a,b){a=a
|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;if(c[(c[d>>2]|0)+
28>>2]|0){i=g;return}c[f>>2]=c[c[d>>2]>>2];fe(c[f>>2]|0,c[e>>2]|0);i
=g;return}function ki(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;o=i;i=i+32|0;h=o+20|0;j=o+16|0;k=o+12
|0;p=o+8|0;l=o+4|0;m=o+24|0;n=o;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[p>>2]=g;f=Kc(c[k>
x3e;2]|0,c[p>>2]|0)|0;c[l>>2]=f;if(f|0){p=c[l>>2]|0;i=o;return p|0}a[m>>0]=ke(c[k>
x3e;2]|0,l)|0;if(c[l>>2]|0){p=c[l>>2]|0;i=o;return p|0}a[c[h>>2]>>0]=a[m>>0]|0
;c[(c[h>>2]|0)+20>>2]=0;a:do switch(d[m>>0]|0|0){case 0:{c[(c[h>>2]|0)+12>>2]=
c[j>>2];break}case 3:{c[n>>2]=(Pc(c[k>>2]|0,l)|0)&65535;if(c[l>>2]|0){p=c[l>
x3e;2]|0;i=o;return p|0}else{c[(c[h>>2]|0)+12>>2]=((c[n>>2]|0)*3|0)+2;break a}}default:{c[l>
x3e;2]=3;p=c[l>>2]|0;i=o;return p|0}}while(0);c[l>>2]=de(c[k>>2]|0,c[(c[h>>2]|0)+12>
;>2]|0,(c[h>>2]|0)+8|0)|0;p=c[l>>2]|0;i=o;return p|0}function li(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16
|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;if(!(c[c[b>>2]>>2]|0)){i=f;return}c[e>>2]=c[c[b>
x3e;2]>>2];c[d>>2]=c[(c[e>>2]|0)+28>>2];if(c[(c[b>>2]|0)+28>>2]|0)fe
(c[e>>2]|0,(c[b>>2]|0)+28|0);Fb(c[d>>2]|0,c[(c[b>>2]|0)+24>>2]|0);c[(c[b>
x3e;2]|0)+24>>2]=0;e=c[b>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>
x3e;2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0;i=f;return}function mi(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,v=0,w=0,x=0,y=0;y=i;i=i+48|0;r=y+36|0;s
=y+32|0;t=y+28|0;l=y+24|0;m=y+20|0;u=y+42|0;x=y+16|0;v=y+12|0;n=y+40|0;w=y+8|0;p=y+4|0;o=y;c[r>>2]=d;c[s>>2]=
f;c[t>>2]=g;c[l>>2]=h;c[m>>2]=j;a[u>>0]=k;c[x>>2]=c[(c[t>>2]|0)+28
x3e;>2];c[v>>2]=0;a:do if((c[m>>2]|0)>>>0>2){c[(c[r>>2]|0)+4>>2
]=(c[l>>2]|0)+(c[m>>2]|0);g=Kc(c[t>>2]|0,c[(c[r>>2]|0)+4>>2]|0)|0;c[v>>
;2]=g;if(((g|0)==0?(g=(ke(c[t>>2]|0,v)|0)&255,c[c[r>>2]>>2]=g,(c[v>>2]|0)==0):0)?(g
=hc(c[x>>2]|0,2,0,c[s>>2]|0,0,v)|0,c[(c[r>>2]|0)+8>>2]=g,(c[v>>2]|0)==0):0){b[
c[(c[r>>2]|0)+8>>2]>>1]=0;switch(c[c[r>>2]>>2]|0){case 0:{if((c[s>>2
]|0)>>>0<=0){q=39;break a}p=ee(c[t>>2]|0,(c[s>>2]|0)-1<<1)|0;c[v>>2]=
p;if(p|0)break a;c[w>>2]=1;while(1){l=c[t>>2]|0;if((c[w>>2]|0)>>>0>=(c[s>
x3e;2]|0)>>>0)break;q=ie(l)|0;b[(c[(c[r>>2]|0)+8>>2]|0)+(c[w>>2]<<1)>
;>1]=q;c[w>>2]=(c[w>>2]|0)+1}ge(l);q=39;break a}case 2:case 1:{c[w>>2]=1;b:while(1){if((c[w
x3e;>2]|0)>>>0>=(c[s>>2]|0)>>>0){q=39;break a}b[n>>1]=Pc(c[t>
x3e;2]|0,v)|0;if(c[v>>2]|0)break a;l=c[t>>2]|0;if((c[c[r>>2]>>2]|0)==2){c[p>>2
]=(Pc(l,v)|0)&65535;if(c[v>>2]|0)break a}else{c[p>>2]=(ke(l,v)|0)&255;if(c[v>>2]|0)break
a}if((e[n>>1]|0)>>>0>(65535-(c[p>>2]|0)|0)>>>0)c[p>>2]=65535-(
e[n>>1]|0);c[o>>2]=0;while(1){if((c[w>>2]|0)>>>0>=(c[s>>2]|0)>
x3e;>0)continue b;if((c[o>>2]|0)>>>0>(c[p>>2]|0)>>>0)continue b;b[(c
[(c[r>>2]|0)+8>>2]|0)+(c[w>>2]<<1)>>1]=b[n>>1]|0;c[o>>2]=(
c[o>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1;b[n>>1]=(b[n>>1]|0)+1<<16>
x3e;16}}}default:{c[v>>2]=3;break a}}}}else{c[(c[r>>2]|0)+4>>2]=c[m>>2];switch(c[m>
x3e;2]|0){case 0:{if((c[s>>2]|0)>>>0>229){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0
,c[s>>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+
8>>2]|0,5556,c[s>>2]<<1|0)|0;q=39;break a}case 1:{if((c[s>>2]|0)>>>0>
;166){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0,c[s>>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2
]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+8>>2]|0,6014,c[s>>2]<<1|0)|0;q=39;break
a}case 2:{if((c[s>>2]|0)>>>0>87){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0,c[s>
;>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+8>
x3e;2]|0,6346,c[s>>2]<<1|0)|0;q=39;break a}default:{c[v>>2]=3;break a}}}while(0);if((q|0)==39?a[u
x3e;>0]|0:0)c[v>>2]=ni(c[r>>2]|0,c[s>>2]|0,c[x>>2]|0)|0;if(!(c[v>>2]|0)){
x=c[v>>2]|0;i=y;return x|0}Fb(c[x>>2]|0,c[(c[r>>2]|0)+8>>2]|0);c[(c[r>>2]|0)+8
>>2]=0;Fb(c[x>>2]|0,c[(c[r>>2]|0)+12>>2]|0);c[(c[r>>2]|0)+12>>2]=0;c
[c[r>>2]>>2]=0;c[(c[r>>2]|0)+4>>2]=0;c[(c[r>>2]|0)+8>>2]=0;x=c[v>
;>2]|0;i=y;return x|0}function ni(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;o=i;i=i+32|0;g=o+20|0;h=o+16
|0;j=o+12|0;k=o+8|0;l=o+4|0;m=o;n=o+24|0;c[g>>2]=a;c[h>>2]=d;c[j>>2]=f;c[k>>2]=0;b[n>
;>1]=0;if((c[(c[g>>2]|0)+16>>2]|0)>>>0>0){d=c[k>>2]|0;i=o;return d|0}c[l
x3e;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[h>>2]|0)>>>0)break;if((e[(
c[(c[g>>2]|0)+8>>2]|0)+(c[l>>2]<<1)>>1]|0|0)>(e[n>>1]|0|0))b[n
x3e;>1]=b[(c[(c[g>>2]|0)+8>>2]|0)+(c[l>>2]<<1)>>1]|0;c[l>>2]=(c
[l>>2]|0)+1}d=hc(c[j>>2]|0,2,0,(e[n>>1]|0)+1|0,0,k)|0;c[(c[g>>2]|0)+12>>2]=d;if
(c[k>>2]|0){d=c[k>>2]|0;i=o;return d|0}c[m>>2]=(c[h>>2]|0)-1;while(1){if((c[m>>
;2]|0)<0)break;b[(c[(c[g>>2]|0)+12>>2]|0)+((e[(c[(c[g>>2]|0)+8>>2]|0)+(c[m>>
;2]<<1)>>1]|0)<<1)>>1]=c[m>>2];c[m>>2]=(c[m>>2]|0)+-1}c[(c
[g>>2]|0)+16>>2]=e[n>>1];c[(c[g>>2]|0)+20>>2]=c[h>>2];d=c[k>>
;2]|0;i=o;return d|0}function oi(a,f,g,h,j,k){a=a|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;F=i;i=i+80|0;l=F+64|0;m=F+60|0;o=F+56|0;p=F+52|0;q=F+48|0;r=F+44|0;t=F+40|0;s=F+36|0;z
=F+32|0;x=F+68|0;w=F+28|0;C=F+24|0;B=F+20|0;y=F+16|0;A=F+12|0;v=F+8|0;D=F+4|0;u=F;c[l>>2]=a;c[m>>2]=f;c[o>
;>2]=g;c[p>>2]=h;c[q>>2]=j;c[r>>2]=k;c[t>>2]=0;if(!(c[(c[m>>2]|0)+8>
x3e;2]|0)){c[t>>2]=3;E=c[t>>2]|0;i=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>
x3e;>0>=256)break;b[(c[l>>2]|0)+12+(c[z>>2]<<1)>>1]=0;b[(c[l>>2]|0)+
524+(c[z>>2]<<1)>>1]=0;c[z>>2]=(c[z>>2]|0)+1}if((c[r>>2]|0)>>
;>0<=1){switch(c[r>>2]|0){case 0:{Ss((c[l>>2]|0)+12|0,6520,512)|0;break}case 1:{Ss((c[l>>
;2]|0)+12|0,7032,512)|0;break}default:{c[t>>2]=3;E=c[t>>2]|0;i=F;return E|0}}c[(c[l>>2]|0)+8>
x3e;2]=0;c[t>>2]=ni(c[m>>2]|0,c[o>>2]|0,c[(c[p>>2]|0)+28>>2]|0)|0;if(c[t>
x3e;2]|0){E=c[t>>2]|0;i=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=256
)break;c[D>>2]=e[(c[l>>2]|0)+12+(c[z>>2]<<1)>>1];c[u>>2]=0;if(c[D>
;>2]|0)c[u>>2]=pi(c[m>>2]|0,c[D>>2]|0)|0;if(c[u>>2]|0){b[(c[l>>2]|0)+524+(
c[z>>2]<<1)>>1]=c[u>>2];c[(c[l>>2]|0)+8>>2]=(c[z>>2]|0)+1}
else{b[(c[l>>2]|0)+524+(c[z>>2]<<1)>>1]=0;b[(c[l>>2]|0)+12+(c[z>>2]
x3c;<1)>>1]=0}c[z>>2]=(c[z>>2]|0)+1}E=c[t>>2]|0;i=F;return E|0}c[(c[l>>2]|
0)+4>>2]=(c[q>>2]|0)+(c[r>>2]|0);h=Kc(c[p>>2]|0,c[(c[l>>2]|0)+4>>2]|
0)|0;c[t>>2]=h;if(h|0){E=c[t>>2]|0;i=F;return E|0}h=(ke(c[p>>2]|0,t)|0)&255;c[c[l>>
2]>>2]=h;if(c[t>>2]|0){E=c[t>>2]|0;i=F;return E|0}c[s>>2]=(ke(c[p>>2]|0,t)|0)
x26;255;if(c[t>>2]|0){E=c[t>>2]|0;i=F;return E|0}a:do switch(c[c[l>>2]>>2]&127|0){case
0:{c[(c[l>>2]|0)+8>>2]=(c[s>>2]|0)+1;h=ee(c[p>>2]|0,c[s>>2]|0)|0;c[t>>
;2]=h;if(h|0){E=c[t>>2]|0;i=F;return E|0}c[C>>2]=c[(c[p>>2]|0)+32>>2];c[z>>2]=
1;while(1){if((c[z>>2]|0)>>>0>(c[s>>2]|0)>>>0)break;h=c[C>>2]|0
;c[C>>2]=h+1;c[w>>2]=d[h>>0];if((c[z>>2]|0)>>>0<(c[o>>2]|0
)>>>0){b[(c[l>>2]|0)+524+(c[w>>2]<<1)>>1]=c[z>>2];b[(c[l>
x3e;2]|0)+12+(c[w>>2]<<1)>>1]=b[(c[(c[m>>2]|0)+8>>2]|0)+(c[z>>2]<
;<1)>>1]|0}c[z>>2]=(c[z>>2]|0)+1}ge(c[p>>2]|0);break}case 1:{c[y>>2]=1;c[(
c[l>>2]|0)+8>>2]=0;c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[s>
x3e;2]|0)>>>0){E=30;break}c[w>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break
}c[B>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break}c[B>>2]=(c[B>>2
]|0)+1;if((c[B>>2]|0)>>>0>(c[(c[l>>2]|0)+8>>2]|0)>>>0)c[(c[l>
;>2]|0)+8>>2]=c[B>>2];c[A>>2]=c[y>>2];while(1){if((c[A>>2]|0)>>
x3e;0>=((c[B>>2]|0)+(c[y>>2]|0)|0)>>>0)break;if((c[w>>2]|0)>>>0
<256?(c[A>>2]|0)>>>0<(c[o>>2]|0)>>>0:0){b[(c[l>>2]|0)+524+(
c[w>>2]<<1)>>1]=c[A>>2];b[(c[l>>2]|0)+12+(c[w>>2]<<1)>
;>1]=b[(c[(c[m>>2]|0)+8>>2]|0)+(c[A>>2]<<1)>>1]|0}c[A>>2]=(c[A
x3e;>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1}c[z>>2]=(c[z>>2]|0)+1;c[y>>2]=(c[y>
;>2]|0)+(c[B>>2]|0)}if((E|0)==30){if((c[(c[l>>2]|0)+8>>2]|0)>>>0<=256)break
a;c[(c[l>>2]|0)+8>>2]=256;break a}else if((E|0)==58){E=c[t>>2]|0;i=F;return E|0}break}default:{c[
t>>2]=3;E=c[t>>2]|0;i=F;return E|0}}while(0);if(!(c[c[l>>2]>>2]&128)){E=c[t>
x3e;2]|0;i=F;return E|0}c[s>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=c[t>>2]|0;i
=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[s>>2]|0)>>
x3e;0){E=58;break}c[w>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break}b[x>>1]=
Pc(c[p>>2]|0,t)|0;if(c[t>>2]|0){E=58;break}b[(c[l>>2]|0)+12+(c[w>>2]<<1)>
x3e;1]=b[x>>1]|0;c[v>>2]=0;while(1){if((c[v>>2]|0)>>>0>=(c[o>>2]|0)
x3e;>>0)break;n=c[v>>2]|0;if((e[(c[(c[m>>2]|0)+8>>2]|0)+(c[v>>2]<<1)
x3e;>1]|0|0)==(e[x>>1]|0|0)){E=42;break}c[v>>2]=n+1}if((E|0)==42){E=0;b[(c[l>>2]|0)+524+(c[w
x3e;>2]<<1)>>1]=n}c[z>>2]=(c[z>>2]|0)+1}if((E|0)==58){E=c[t>>2]|0;i=F;return
E|0}return 0}function pi(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>
;2]=b;c[g>>2]=0;if((c[f>>2]|0)>>>0>(c[(c[d>>2]|0)+16>>2]|0)>>
;>0){g=c[g>>2]|0;i=h;return g|0}c[g>>2]=e[(c[(c[d>>2]|0)+12>>2]|0)+(c[f>>
2]<<1)>>1];g=c[g>>2]|0;i=h;return g|0}function qi(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+32|0;n=l+28|0;m=l+24|0;h=l+20|0;j=l+16|0;f=l+12|0;e=l+8|0;g=l+4|0;k=l;c[n>>2]=b;c[m>>2]=d;c
[h>>2]=(c[n>>2]|0)+20;c[j>>2]=c[(c[c[h>>2]>>2]|0)+28>>2];c[k>
x3e;2]=0;c[g>>2]=Zh(c[h>>2]|0,c[m>>2]|0,f,e)|0;if(c[g>>2]|0){n=c[k>>2]|0;i=l;return
n|0}c[k>>2]=bc(c[j>>2]|0,(c[e>>2]|0)+1|0,g)|0;if(!(c[g>>2]|0)){Ss(c[k>>2]|0,c
[f>>2]|0,c[e>>2]|0)|0;a[(c[k>>2]|0)+(c[e>>2]|0)>>0]=0}ji(c[h>>2]|0,f
);n=c[k>>2]|0;i=l;return n|0}function ri(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;e=h+12|0;c[
d>>2]=b;c[f>>2]=0;c[g>>2]=(cs(c[d>>2]|0)|0)+1;a[e>>0]=1;a:while(1){if(!(a[e>
;>0]|0))break;if((c[g>>2]|0)>=7?(a[(c[d>>2]|0)+6>>0]|0)==43:0){c[f>>2]=0;while
(1){if((c[f>>2]|0)>=6)break;if(!(65<=(a[(c[d>>2]|0)+(c[f>>2]|0)>>0]|0)?(a[(c[d
>>2]|0)+(c[f>>2]|0)>>0]|0)<=90:0))a[e>>0]=0;c[f>>2]=(c[f>>2]|0)+
1}if(!(a[e>>0]|0))continue;c[f>>2]=7;while(1){if((c[f>>2]|0)>=(c[g>>2]|0))continue
a;a[(c[d>>2]|0)+((c[f>>2]|0)-7)>>0]=a[(c[d>>2]|0)+(c[f>>2]|0)>>0]|0;
c[f>>2]=(c[f>>2]|0)+1}}a[e>>0]=0}i=h;return}function si(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;g=e+8|0;f=e+4|0;d=e;c[h>>2]=a;c[g>>2]=b;c[d>>2]=oe(c[h>>2]|0,c[g>
;>2]|0,f)|0;c[f>>2]=c[f>>2];i=e;return c[d>>2]|0}function ti(a){a=a|0;var b=0,d=0,e=0,f=0,g=0
,h=0;h=i;i=i+32|0;b=h+16|0;e=h+12|0;f=h+8|0;g=h+4|0;d=h;c[b>>2]=a;c[e>>2]=c[b>>2];if(!(c[e>
x3e;2]|0)){i=h;return}c[f>>2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[e>>2]|0)+532
x3e;>2];if(c[g>>2]|0)Va[c[(c[g>>2]|0)+12>>2]&63](c[e>>2]|0);c[d>>2]=
c[(c[e>>2]|0)+692>>2];if(!(c[d>>2]|0)){i=h;return}ui(c[d>>2]|0);Fb(c[f>>2]|0,c
[(c[e>>2]|0)+692>>2]|0);c[(c[e>>2]|0)+692>>2]=0;i=h;return}function ui(a){a=a|0;var b=0,
d=0,e=0,f=0;f=i;i=i+16|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;c[e>>2]=c[(c[b>>2]|0)+4>>2];li((c
[b>>2]|0)+84|0);li((c[b>>2]|0)+1208|0);li((c[b>>2]|0)+20|0);li((c[b>>2]|0)+1176|0);if((c
[(c[b>>2]|0)+1892>>2]|0)>>>0>0){c[d>>2]=0;while(1){a=c[e>>2]|0;if((c
[d>>2]|0)>>>0>=(c[(c[b>>2]|0)+1892>>2]|0)>>>0)break;vi(a,c[(c[b
>>2]|0)+1896+(c[d>>2]<<2)>>2]|0);c[d>>2]=(c[d>>2]|0)+1}Fb(a,c[(c[b
x3e;>2]|0)+1896>>2]|0);c[(c[b>>2]|0)+1896>>2]=0}wi((c[b>>2]|0)+116|0);xi((c[b>
x3e;2]|0)+1152|0,c[c[b>>2]>>2]|0);vi(c[e>>2]|0,(c[b>>2]|0)+1324|0);zi((c[b>>2]|
0)+2024|0,c[c[b>>2]>>2]|0);Fb(c[e>>2]|0,c[(c[b>>2]|0)+2060>>2]|0);c[(c[b>
x3e;2]|0)+2060>>2]=0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1304>>2]|0);c[(c[b>>2]|0)+1304
>>2]=0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1308>>2]|0);c[(c[b>>2]|0)+1308>>2]=
0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1316>>2]|0);c[(c[b>>2]|0)+1316>>2]=0;Fb(c[e>
x3e;2]|0,c[(c[b>>2]|0)+1320>>2]|0);c[(c[b>>2]|0)+1320>>2]=0;i=f;return}function vi(a,b){
a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=f;return
}li((c[e>>2]|0)+532|0);Fb(c[d>>2]|0,c[(c[e>>2]|0)+564>>2]|0);c[(c[e>>2]|0)+564
>>2]=0;i=f;return}function wi(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]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+8>>2]=0;i=b;return}function xi(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)+28>>2];yi(c[e>>2]|0,c[f>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>
2]|0);c[(c[e>>2]|0)+8>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;i=
d;return}function yi(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;Fb(c[f>
;>2]|0,c[(c[e>>2]|0)+12>>2]|0);c[(c[e>>2]|0)+12>>2]=0;c[(c[e>>2]|0)+16>
;>2]=0;i=d;return}function zi(b,d){b=b|0;d=d|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]=d;if(c[(c[e>>2]|0)+8>>2]|0)fe(c[f>>2]|0,(c[e>>2]|0)+8|0);c[(c[e>>2]|0)+12
x3e;>2]=0;a[c[e>>2]>>0]=0;c[(c[e>>2]|0)+4>>2]=0;i=g;return}function Ai(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;o=i;i=i+240|0;k=o+232|0;n=o+228|0;l=o+224|0;e=o+220|0;b=o+216|0;d=o+212|0;m=o+208
|0;h=o+12|0;g=o+8|0;f=o+4|0;j=o;c[k>>2]=a;c[n>>2]=c[k>>2];c[l>>2]=0;c[e>>2]=Bi
(c[n>>2]|0)|0;do if(c[e>>2]|0){c[b>>2]=c[c[k>>2]>>2];c[d>>2]=c[(c[b
x3e;>2]|0)+692>>2];c[g>>2]=c[(c[c[k>>2]>>2]|0)+100>>2];c[m>>2]=
bc(c[g>>2]|0,132,l)|0;if(c[l>>2]|0){n=c[l>>2]|0;i=o;return n|0}Ci((c[d>>2]|0)+1324|0,h);
c[l>>2]=Oa[c[c[e>>2]>>2]&63](c[(c[c[k>>2]>>2]|0)+100>>2]|0,h,c[
m>>2]|0)|0;if(c[l>>2]|0){n=c[l>>2]|0;i=o;return n|0}c[f>>2]=c[(c[d>>2]|0)+1892
>>2];while(1){if((c[f>>2]|0)>>>0<=0){a=8;break}c[j>>2]=c[(c[d>>2]|0)+
1896+((c[f>>2]|0)-1<<2)>>2];Ci(c[j>>2]|0,h);c[l>>2]=Oa[c[c[e>>2]>
;>2]&63](c[(c[c[k>>2]>>2]|0)+100>>2]|0,h,(c[m>>2]|0)+4+((c[f>>2]|0)-
1<<2)|0)|0;if(c[l>>2]|0){a=10;break}c[f>>2]=(c[f>>2]|0)+-1}if((a|0)==8){c[(c[k>>
;2]|0)+40>>2]=c[m>>2];break}else if((a|0)==10){n=c[l>>2]|0;i=o;return n|0}}while(0);c[(c[n>
x3e;2]|0)+44>>2]=-1;n=c[l>>2]|0;i=o;return n|0}function Bi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=i;i=i+32|0
;f=e+16|0;h=e+12|0;g=e+8|0;d=e+4|0;b=e;c[f>>2]=a;c[h>>2]=c[c[f>>2]>>2];c[g>>2]=
c[(c[h>>2]|0)+692>>2];c[d>>2]=c[(c[g>>2]|0)+2052>>2];c[b>>2]=Wc(c[(c
[(c[c[f>>2]>>2]|0)+96>>2]|0)+4>>2]|0,11524)|0;if(!((c[b>>2]|0)!=0&(c[d>
;>2]|0)!=0)){h=0;i=e;return h|0}if(!(c[c[d>>2]>>2]|0)){h=0;i=e;return h|0}h=Ta[c[c[d>>2]>
;>2]&63](c[b>>2]|0)|0;i=e;return h|0}function Ci(d,e){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;l
=k+16|0;f=k+12|0;h=k+8|0;j=k+4|0;g=k;c[l>>2]=d;c[f>>2]=e;c[h>>2]=(c[l>>2]|0)+172;Ns(c[f
x3e;>2]|0,0,196)|0;d=a[c[h>>2]>>0]|0;a[(c[f>>2]|0)+8>>0]=d;c[g>>2]=d&
;255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break
;b[(c[f>>2]|0)+12+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+4+(c[j>>2]<<
;2)>>2];c[j>>2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|0)+1>>0]|0;a[(c[f>>2]|0)+
9>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c
[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+40+(c[j>>2]<<1)>>1]=c[(c[h>
;>2]|0)+60+(c[j>>2]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|
0)+2>>0]|0;a[(c[f>>2]|0)+10>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if((c[
j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+60+(c[j>
x3e;2]<<1)>>1]=c[(c[h>>2]|0)+100+(c[j>>2]<<2)>>2];c[j>>2]=(
c[j>>2]|0)+1}l=a[(c[h>>2]|0)+3>>0]|0;a[(c[f>>2]|0)+11>>0]=l;c[g>>2]=
l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>
;0)break;b[(c[f>>2]|0)+88+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+156+(c[j>>2
]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}c[(c[f>>2]|0)+108>>2]=c[(c[h>
x3e;2]|0)+196>>2];c[(c[f>>2]|0)+112>>2]=c[(c[h>>2]|0)+200>>2];c[(c[f>>
;2]|0)+116>>2]=c[(c[h>>2]|0)+204>>2];b[(c[f>>2]|0)+120>>1]=c[(c[h>>2
]|0)+208>>2];b[(c[f>>2]|0)+122>>1]=c[(c[h>>2]|0)+212>>2];l=a[(c[h>>2
]|0)+216>>0]|0;a[(c[f>>2]|0)+124>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if
((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+128+(c[j
x3e;>2]<<1)>>1]=c[(c[h>>2]|0)+220+(c[j>>2]<<2)>>2];c[j>>
;2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|0)+217>>0]|0;a[(c[f>>2]|0)+125>>0]=l;c[g>
x3e;2]=l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>
;>0)break;b[(c[f>>2]|0)+154+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+272+(c[j>
x3e;2]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}a[(c[f>>2]|0)+126>>0]=a[(c[h>
;>2]|0)+324>>0]|0;c[(c[f>>2]|0)+184>>2]=c[(c[h>>2]|0)+336>>2];c[(c[f>
;>2]|0)+4>>2]=c[(c[h>>2]|0)+332>>2];i=k;return}function Di(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h
=0,j=0,k=0;h=i;i=i+32|0;j=h+24|0;g=h+20|0;k=h+16|0;b=h+12|0;f=h+8|0;d=h+4|0;e=h;c[j>>2]=a;c[g>>2]=c[j>
x3e;2];c[k>>2]=c[c[g>>2]>>2];c[b>>2]=c[(c[k>>2]|0)+692>>2];c[f>
x3e;2]=c[(c[j>>2]|0)+40>>2];if(!(c[f>>2]|0)){i=h;return}c[d>>2]=Bi(c[g>>2]|0)|
0;if(!(c[d>>2]|0)){i=h;return}Va[c[(c[d>>2]|0)+8>>2]&63](c[c[f>>2]>>2]|0);
c[e>>2]=c[(c[b>>2]|0)+1892>>2];while(1){if((c[e>>2]|0)>>>0<=0)break;
Va[c[(c[d>>2]|0)+8>>2]&63](c[(c[f>>2]|0)+4+((c[e>>2]|0)-1<<2)>>
2]|0);c[e>>2]=(c[e>>2]|0)+-1}i=h;return}function Ei(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;g=i;i=i+32|0;b=
g+20|0;j=g+16|0;h=g+12|0;f=g+8|0;e=g+4|0;d=g;c[b>>2]=a;c[j>>2]=c[(c[b>>2]|0)+4>>2];c[h
x3e;>2]=c[(c[j>>2]|0)+692>>2];c[f>>2]=c[(c[h>>2]|0)+2052>>2];if(!(c[f>
;>2]|0)){i=g;return 0}c[e>>2]=Wc(c[(c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2]|0)+4>>
;2]|0,11524)|0;if(!(c[e>>2]|0)){i=g;return 0}c[d>>2]=Ta[c[(c[f>>2]|0)+8>>2]&63](c[e
>>2]|0)|0;c[(c[(c[b>>2]|0)+156>>2]|0)+36>>2]=c[d>>2];i=g;return 0}function Fi(
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)+156>>2]|0)+36>>2]=0;i=b
;return}function Gi(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o+
20|0;j=o+16|0;k=o+12|0;l=o+8|0;n=o+4|0;m=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[n
x3e;>2]=c[g>>2];c[m>>2]=c[h>>2];if(!(c[n>>2]|0)){c[f>>2]=37;n=c[f>
x3e;2]|0;i=o;return n|0}if(!(c[m>>2]|0))c[k>>2]=c[k>>2]|3;if(c[k>>2]&1|0)c[m>
x3e;2]=0;if(c[m>>2]|0?(c[c[h>>2]>>2]|0)!=(c[(c[g>>2]|0)+4>>2]|0):0){c[f>
x3e;2]=35;n=c[f>>2]|0;i=o;return n|0}c[l>>2]=Hi(c[n>>2]|0,c[m>>2]|0,c[j>>2]|0,
c[k>>2]|0)|0;c[f>>2]=c[l>>2];n=c[f>>2]|0;i=o;return n|0}function Hi(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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;V=i;i=i+1120|0;A=V+1092|0;B=V+1088|0;C=V+1084|0;x=V+1080|0;D=V+1076|0;I=V+1072|0;H=V+144
|0;J=V+140|0;O=V+1113|0;M=V+1112|0;r=V+136|0;K=V+120|0;L=V+112|0;k=V+108|0;m=V+104|0;n=V+100|0;l=V+1104|0;q=V+96|0;p=V+92|0;o=V+
1101|0;s=V+88|0;t=V+84|0;u=V+80|0;v=V+64|0;w=V+56|0;F=V+40|0;P=V+32|0;E=V+24|0;N=V+1100|0;z=V+1098|0;y=V+1096|0;Q=V+16|0;G=V+12|
0;R=V+8|0;S=V+4|0;T=V;c[B>>2]=f;c[C>>2]=g;c[x>>2]=h;c[D>>2]=j;c[J>>2]=c[(c[B
x3e;>2]|0)+4>>2];c[r>>2]=c[(c[J>>2]|0)+692>>2];a[M>>0]=0;if((c[(c[r>
x3e;2]|0)+1324+128>>2]|0)!=65535?c[(c[r>>2]|0)+1152+12>>2]|0:0){if(c[x>>2]|0?(c[x>
x3e;2]=pi((c[r>>2]|0)+1152|0,c[x>>2]|0)|0,(c[x>>2]|0)==0):0){c[A>>2]=6;U=c[A>>
2]|0;i=V;return U|0}}else U=6;if((U|0)==6?(c[x>>2]|0)>>>0>=(c[(c[r>>2]|0)+12>>
2]|0)>>>0:0){c[A>>2]=6;U=c[A>>2]|0;i=V;return U|0}if(c[D>>2]&1024|0)c[D>
x3e;2]=c[D>>2]|3;c[(c[B>>2]|0)+164>>2]=65536;c[(c[B>>2]|0)+168>>2]=65536;if(c[
C>>2]|0){c[(c[B>>2]|0)+164>>2]=c[(c[C>>2]|0)+12+4>>2];c[(c[B>>2]|0)+
168>>2]=c[(c[C>>2]|0)+12+8>>2]}if((((c[C>>2]|0?(c[k>>2]=c[c[C>>2]>
;>2],c[m>>2]=c[(c[k>>2]|0)+532>>2],c[n>>2]=c[(c[k>>2]|0)+104>>2
],(c[(c[C>>2]|0)+44>>2]|0)!=-1):0)?c[(c[m>>2]|0)+140>>2]|0:0)?(c[D>>2]&8|
0)==0:0)?(c[I>>2]=Na[c[(c[m>>2]|0)+104>>2]&1](c[J>>2]|0,c[(c[C>>2]|0)+44
x3e;>2]|0,c[x>>2]|0,c[D>>2]|0,c[n>>2]|0,(c[B>>2]|0)+76|0,l)|0,(c[I>>2]|0)==
0):0){b[(c[B>>2]|0)+108+2>>1]=0;b[(c[B>>2]|0)+108>>1]=0;c[(c[B>>2]|0)+24>
x3e;2]=d[l+1>>0]<<6;c[(c[B>>2]|0)+24+4>>2]=d[l>>0]<<6;c[(c[B>
x3e;2]|0)+24+8>>2]=a[l+2>>0]<<6;c[(c[B>>2]|0)+24+12>>2]=a[l+3>>0]<
;<6;c[(c[B>>2]|0)+24+16>>2]=d[l+4>>0]<<6;c[(c[B>>2]|0)+24+20>>2
]=a[l+5>>0]<<6;c[(c[B>>2]|0)+24+24>>2]=a[l+6>>0]<<6;c[(c[B>>
;2]|0)+24+28>>2]=d[l+7>>0]<<6;c[(c[B>>2]|0)+72>>2]=1651078259;if(c[D>>
;2]&16|0){c[(c[B>>2]|0)+100>>2]=a[l+5>>0];c[(c[B>>2]|0)+104>>2]=a[l+6>
;>0]}else{c[(c[B>>2]|0)+100>>2]=a[l+2>>0];c[(c[B>>2]|0)+104>>2]=a[l+3>
;>0]}c[A>>2]=c[I>>2];U=c[A>>2]|0;i=V;return U|0}if(c[D>>2]&16384|0){c[A>
x3e;2]=6;U=c[A>>2]|0;i=V;return U|0}k=c[r>>2]|0;if(c[(c[r>>2]|0)+1892>>2]|0){a[o>
x3e;0]=Ii(k+2024|0,c[x>>2]|0)|0;if((d[o>>0]|0)>>>0>=(c[(c[r>>2]|0)+1892>
x3e;2]|0)>>>0)a[o>>0]=(c[(c[r>>2]|0)+1892>>2]|0)-1;c[q>>2]=c[(c[r>
x3e;2]|0)+1324+64>>2];c[p>>2]=c[(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|
0)+64>>2];n=(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|0)+48|0;c[K>>2]=c[n
>>2];c[K+4>>2]=c[n+4>>2];c[K+8>>2]=c[n+8>>2];c[K+12>>2]=c[n+12>
x3e;2];o=(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|0)+68|0;c[L>>2]=c[o>>2
];c[L+4>>2]=c[o+4>>2];if((c[q>>2]|0)!=(c[p>>2]|0)){o=xb(c[(c[B>>2]|0)+164>
;>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[(c[B>>2]|0)+164>>2]=o;q=xb(c[(c[B>>2]|0)+
168>>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[(c[B>>2]|0)+168>>2]=q;a[M>>0]=1}}
else{q=k+1324+48|0;c[K>>2]=c[q>>2];c[K+4>>2]=c[q+4>>2];c[K+8>>2]=c[q+8>
x3e;2];c[K+12>>2]=c[q+12>>2];q=(c[r>>2]|0)+1324+68|0;c[L>>2]=c[q>>2];c[L+4>
;>2]=c[q+4>>2]}b[(c[B>>2]|0)+108+2>>1]=0;b[(c[B>>2]|0)+108>>1]=0;if(!(c[D
>>2]&1))k=(c[D>>2]&2|0)==0;else k=0;a[O>>0]=k&1;c[(c[B>>2]|0)+72>>
;2]=1869968492;Ji(H,c[J>>2]|0,c[C>>2]|0,c[B>>2]|0,a[O>>0]|0,c[D>>2]>>
;16&15);if(c[D>>2]&256|0)a[H+753>>0]=1;a[H+66>>0]=c[D>>2]&0;c[I>>
;2]=Mi(c[J>>2]|0,c[x>>2]|0,s,t)|0;do if(((c[I>>2]|0)==0?(c[I>>2]=Ni(H,c[C>>2]|
0,c[x>>2]|0)|0,(c[I>>2]|0)==0):0)?(c[I>>2]=Oi(H,c[s>>2]|0,c[t>>2]|0)|0,Yi(c[J
x3e;>2]|0,s,c[t>>2]|0),(c[I>>2]|0)==0):0){if(c[(c[(c[J>>2]|0)+128>>2]|0)+52>
x3e;2]|0){c[(c[B>>2]|0)+136>>2]=0;c[(c[B>>2]|0)+140>>2]=0;break}c[u>>2]=(c[r
x3e;>2]|0)+1176;if(c[(c[u>>2]|0)+24>>2]|0){c[(c[B>>2]|0)+136>>2]=(c[(c[u>>
;2]|0)+28>>2]|0)+(c[(c[(c[u>>2]|0)+24>>2]|0)+(c[x>>2]<<2)>>2]|0)+-1;
c[(c[B>>2]|0)+140>>2]=c[t>>2]}}while(0);if(!(c[I>>2]|0))Zi(H);if(((c[I>>2]|0)==
0?c[(c[(c[J>>2]|0)+128>>2]|0)+52>>2]|0:0)?c[(c[c[(c[(c[J>>2]|0)+128>>2]|0)+52
x3e;>2]>>2]|0)+8>>2]|0:0){c[v>>2]=c[H+32>>2];c[v+4>>2]=0;c[v+8>>
;2]=c[H+40>>2];c[v+12>>2]=c[H+40+4>>2];c[I>>2]=Wa[c[(c[c[(c[(c[J>>2]|0)+128>
;>2]|0)+52>>2]>>2]|0)+8>>2]&31](c[(c[(c[(c[J>>2]|0)+128>>2]|0)+52>
;>2]|0)+4>>2]|0,c[x>>2]|0,0,v)|0;c[H+32>>2]=c[v>>2];c[H+40>>2]=c[v+8>
;>2];c[H+40+4>>2]=c[v+12>>2]}do if(!(c[I>>2]|0)){k=c[B>>2]|0;if(c[D>>2]
x26;1024|0){c[w>>2]=c[k+156>>2];c[(c[B>>2]|0)+24+8>>2]=c[H+32>>2];c[(c[B>
x3e;2]|0)+24+16>>2]=c[H+744>>2];U=(c[w>>2]|0)+12|0;c[U>>2]=c[K>>2];c[U+4>
x3e;2]=c[K+4>>2];c[U+8>>2]=c[K+8>>2];c[U+12>>2]=c[K+12>>2];U=(c[w>>2
]|0)+28|0;c[U>>2]=c[L>>2];c[U+4>>2]=c[L+4>>2];a[(c[w>>2]|0)+8>>0]=1;
break}c[P>>2]=k+24;c[(c[P>>2]|0)+16>>2]=c[H+744>>2];c[(c[B>>2]|0)+56>>
;2]=c[H+744>>2];a[(c[(c[B>>2]|0)+156>>2]|0)+8>>0]=0;if(d[(c[J>>2]|0)+296>
x3e;0]|0?(e[(c[J>>2]|0)+300+34>>1]|0)>0:0)k=(c[(c[J>>2]|0)+300+36>>2]|0)!=0;else k=
0;a[N>>0]=k&1;do if(!(a[N>>0]|0)){k=c[J>>2]|0;if((e[(c[J>>2]|0)+368>>1]|0
)!=65535){c[(c[P>>2]|0)+28>>2]=(b[k+368+70>>1]|0)-(b[(c[J>>2]|0)+368+72>>1]|0);
break}else{c[(c[P>>2]|0)+28>>2]=(b[k+216+4>>1]|0)-(b[(c[J>>2]|0)+216+6>>1]|0);
break}}else{b[z>>1]=0;b[y>>1]=0;Za[c[(c[(c[J>>2]|0)+532>>2]|0)+156>>2]&31
](c[J>>2]|0,1,c[x>>2]|0,z,y)|0;c[(c[P>>2]|0)+24>>2]=b[z>>1];c[(c[P>>
2]|0)+28>>2]=e[y>>1]}while(0);c[(c[B>>2]|0)+60>>2]=c[(c[P>>2]|0)+28>>
;2];c[(c[B>>2]|0)+72>>2]=1869968492;c[(c[B>>2]|0)+108+16>>2]=0;if(c[C>>2]|0?(e
[(c[C>>2]|0)+12+2>>1]|0)<24:0){J=(c[B>>2]|0)+108+16|0;c[J>>2]=c[J>>2]|256
}J=(c[B>>2]|0)+108+16|0;c[J>>2]=c[J>>2]|4;do if((c[K>>2]|0)==65536?(c[K+12>>2]|
0)==65536:0){if(c[K+4>>2]|0){U=64;break}if(c[K+8>>2]|0)U=64}else U=64;while(0);if((U|0)==64)Kb((c[B>>
;2]|0)+108|0,K);if(!((c[L>>2]|0)==0?!(c[L+4>>2]|0):0))Nb((c[B>>2]|0)+108|0,c[L>>2]|0,c[L
+4>>2]|0);c[E>>2]=c[(c[P>>2]|0)+16>>2];c[E+4>>2]=0;Lb(E,K);c[(c[P>>2
]|0)+16>>2]=(c[E>>2]|0)+(c[L>>2]|0);c[E>>2]=0;c[E+4>>2]=c[(c[P>>2]|0
)+28>>2];Lb(E,K);c[(c[P>>2]|0)+28>>2]=(c[E+4>>2]|0)+(c[L+4>>2]|0);if(!((c[D>
;>2]&1|0)!=0?!(d[M>>0]|0):0)){c[G>>2]=(c[B>>2]|0)+108;c[R>>2]=c[(c[G>>
;2]|0)+4>>2];c[S>>2]=c[(c[B>>2]|0)+164>>2];c[T>>2]=c[(c[B>>2]|0)+168
>>2];if(!(a[O>>0]|0?(c[H+68>>2]|0)!=0:0))U=72;a:do if((U|0)==72){c[Q>>2]=b[(c[G>>
;2]|0)+2>>1];while(1){if((c[Q>>2]|0)<=0)break a;U=Mb(c[c[R>>2]>>2]|0,c[S>>
;2]|0)|0;c[c[R>>2]>>2]=U;U=Mb(c[(c[R>>2]|0)+4>>2]|0,c[T>>2]|0)|0;c[(c[R>
x3e;2]|0)+4>>2]=U;c[Q>>2]=(c[Q>>2]|0)+-1;c[R>>2]=(c[R>>2]|0)+8}}while(0);U=Mb(
c[(c[P>>2]|0)+16>>2]|0,c[S>>2]|0)|0;c[(c[P>>2]|0)+16>>2]=U;U=Mb(c[(c[P>
x3e;2]|0)+28>>2]|0,c[T>>2]|0)|0;c[(c[P>>2]|0)+28>>2]=U}_d((c[B>>2]|0)+108|0,F);
c[c[P>>2]>>2]=(c[F+8>>2]|0)-(c[F>>2]|0);c[(c[P>>2]|0)+4>>2]=(c[F+12
x3e;>2]|0)-(c[F+4>>2]|0);c[(c[P>>2]|0)+8>>2]=c[F>>2];c[(c[P>>2]|0)+12>
;>2]=c[F+12>>2];if(a[N>>0]|0){c[(c[P>>2]|0)+20>>2]=(c[(c[P>>2]|0)+8>
x3e;2]|0)-((c[(c[P>>2]|0)+16>>2]|0)/2|0);break}if(!(c[D>>2]&16))break;Bd(c[P>>2]|0,
c[(c[P>>2]|0)+28>>2]|0)}while(0);c[A>>2]=c[I>>2];U=c[A>>2]|0;i=V;return U|0}function
Ii(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;o=i;i=i+32|0;j=o+20|0;f=o+16|0;k=o+25|0;g=o+12|0;h=o+8|0;l=o+24|0;m
=o+4|0;n=o;c[j>>2]=b;c[f>>2]=e;a[k>>0]=0;switch(d[c[j>>2]>>0]|0|0){case 0:{a[k
>>0]=a[(c[(c[j>>2]|0)+8>>2]|0)+(c[f>>2]|0)>>0]|0;n=a[k>>0]|0;i=o;return
n|0}case 3:{b=c[j>>2]|0;if(((c[f>>2]|0)-(c[(c[j>>2]|0)+16>>2]|0)|0)>>>0
x3c;(c[(c[j>>2]|0)+20>>2]|0)>>>0){a[k>>0]=a[b+24>>0]|0;n=a[k>>0
]|0;i=o;return n|0}c[g>>2]=c[b+8>>2];c[h>>2]=(c[g>>2]|0)+(c[(c[j>>2]|0)+12>
;>2]|0);c[g>>2]=(c[g>>2]|0)+2;c[m>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[g>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;while(1){if((c[f>>
2]|0)>>>0<(c[m>>2]|0)>>>0){b=10;break}e=c[g>>2]|0;c[g>>2]=e+1;a
[l>>0]=a[e>>0]|0;c[g>>2]=(c[g>>2]|0)+2;c[n>>2]=(((d[(c[g>>2]|0)+-2
x3e;>0]|0)&65535)<<8|((d[(c[g>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if
((c[f>>2]|0)>>>0<(c[n>>2]|0)>>>0){b=8;break}c[m>>2]=c[n>
x3e;2];if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>>0){b=10;break}}if((b|0)==8){a[k
x3e;>0]=a[l>>0]|0;c[(c[j>>2]|0)+16>>2]=c[m>>2];c[(c[j>>2]|0)+20>>
;2]=(c[n>>2]|0)-(c[m>>2]|0);a[(c[j>>2]|0)+24>>0]=a[l>>0]|0;n=a[k>>0]|
0;i=o;return n|0}else if((b|0)==10){n=a[k>>0]|0;i=o;return n|0}break}default:{n=a[k>>0]|0;i=o;return n|0}}return
0}function Ji(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;j=i;i=i+32|0;k=j+20|0;q=j+16
|0;p=j+12|0;o=j+8|0;n=j+24|0;l=j+4|0;m=j;c[k>>2]=b;c[q>>2]=d;c[p>>2]=e;c[o>>2]=f;a[n>
;>0]=g;c[l>>2]=h;c[m>>2]=c[(c[q>>2]|0)+692>>2];Ns(c[k>>2]|0,0,928)|0;Ki(c
[k>>2]|0,c[q>>2]|0,c[p>>2]|0,c[o>>2]|0,a[n>>0]|0);c[(c[k>>2]|0)+76
x3e;>2]=c[m>>2];c[(c[k>>2]|0)+892>>2]=c[(c[m>>2]|0)+84+8>>2];c[(c[k>
x3e;2]|0)+908>>2]=c[(c[m>>2]|0)+1308>>2];f=Li(c[(c[m>>2]|0)+1324+44>>2]|0,c[(c
[k>>2]|0)+892>>2]|0)|0;c[(c[k>>2]|0)+900>>2]=f;c[(c[k>>2]|0)+920>>2]=
c[l>>2];i=j;return}function Ki(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;p=i;i=i+32
|0;j=p+20|0;q=p+16|0;k=p+12|0;l=p+8|0;m=p+24|0;o=p+4|0;n=p;c[j>>2]=b;c[q>>2]=e;c[k>>2]=f;c[l>
x3e;2]=g;a[m>>0]=h;a[(c[j>>2]|0)+64>>0]=0;a[(c[j>>2]|0)+65>>0]=1;c[(c[j>
x3e;2]|0)+4>>2]=c[q>>2];c[(c[j>>2]|0)+8>>2]=c[l>>2];c[c[j>>2]>
x3e;2]=c[(c[q>>2]|0)+100>>2];if(c[l>>2]|0?(c[o>>2]=c[c[(c[l>>2]|0)+156>
x3e;2]>>2],c[(c[j>>2]|0)+12>>2]=c[o>>2],c[(c[j>>2]|0)+16>>2]=(c[o>
;>2]|0)+20,c[(c[j>>2]|0)+20>>2]=(c[o>>2]|0)+56,dc(c[o>>2]|0),c[(c[j>>2]|0
)+72>>2]=0,c[(c[j>>2]|0)+68>>2]=0,(d[m>>0]|0|0)!=0&(c[k>>2]|0)!=0):0){c[n
>>2]=c[(c[k>>2]|0)+40>>2];c[(c[j>>2]|0)+72>>2]=c[c[n>>2]>>
2];c[(c[j>>2]|0)+68>>2]=c[(c[(c[l>>2]|0)+156>>2]|0)+36>>2]}c[(c[j>>2
]|0)+24>>2]=0;c[(c[j>>2]|0)+28>>2]=0;c[(c[j>>2]|0)+32>>2]=0;c[(c[j>>
2]|0)+32+4>>2]=0;c[(c[j>>2]|0)+40>>2]=0;c[(c[j>>2]|0)+40+4>>2]=0;i=p;return}function
Li(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[d>>2]=b;do if((c[g>
;>2]|0)!=1){if((c[d>>2]|0)>>>0<1240){c[e>>2]=107;break}if((c[d>>2]|0)>
;>>0<33900){c[e>>2]=1131;break}else{c[e>>2]=32768;break}}else c[e>>2]=0;while(0);i=
f;return c[e>>2]|0}function Mi(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;o=i;i=i+48|0;f
=o+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;m=o+8|0;n=o+4|0;l=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k
x3e;>2]=e;a=c[g>>2]|0;if(c[(c[(c[g>>2]|0)+128>>2]|0)+52>>2]|0){c[n>>2]=Oa
[c[c[c[(c[a+128>>2]|0)+52>>2]>>2]>>2]&63](c[(c[(c[(c[g>>2]|0)+128>
x3e;2]|0)+52>>2]|0)+4>>2]|0,c[h>>2]|0,m)|0;c[c[j>>2]>>2]=c[m>>2];c[c
[k>>2]>>2]=c[m+4>>2];c[f>>2]=c[n>>2];n=c[f>>2]|0;i=o;return n|0}else
{c[l>>2]=c[a+692>>2];c[f>>2]=Zh((c[l>>2]|0)+1176|0,c[h>>2]|0,c[j>>2]|
0,c[k>>2]|0)|0;n=c[f>>2]|0;i=o;return n|0}return 0}function Ni(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;q=i;i=i+48|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;l=q+12|0;p=q+8|0;m=q+4|0;n=q+32|0;o=q;c[g>>2]=
b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=c[g>>2];c[l>>2]=c[(c[(c[k>>2]|0)+4>
;>2]|0)+692>>2];c[p>>2]=(c[l>>2]|0)+1324;c[m>>2]=0;do if(c[(c[l>>2]|0)+1892
>>2]|0){a[n>>0]=Ii((c[l>>2]|0)+2024|0,c[j>>2]|0)|0;if((d[n>>0]|0)>>
x3e;0>=(c[(c[l>>2]|0)+1892>>2]|0)>>>0){c[m>>2]=3;p=c[m>>2]|0;i=q;return
p|0}else{c[p>>2]=c[(c[l>>2]|0)+1896+((d[n>>0]|0)<<2)>>2];if(!(c[h>>
2]|0?(c[(c[k>>2]|0)+68>>2]|0)!=0:0))break;c[o>>2]=c[(c[h>>2]|0)+40>>2];c[(c[k
x3e;>2]|0)+72>>2]=c[(c[o>>2]|0)+4+((d[n>>0]|0)<<2)>>2];break}}while(0);c[(
c[g>>2]|0)+888>>2]=c[(c[p>>2]|0)+532+8>>2];c[(c[g>>2]|0)+904>>2]=c[(
c[p>>2]|0)+564>>2];e=Li(c[(c[(c[g>>2]|0)+76>>2]|0)+1324+44>>2]|0,c[(c[g>
x3e;2]|0)+888>>2]|0)|0;c[(c[g>>2]|0)+896>>2]=e;c[(c[g>>2]|0)+744>>2]=c[(c[p>
;>2]|0)+172+352>>2];c[(c[g>>2]|0)+748>>2]=c[(c[p>>2]|0)+172+356>>2];p=c[m
>>2]|0;i=q;return p|0}function Oi(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,$=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;ta=i;i=i+272|0;h=
ta+256|0;j=ta+252|0;va=ta+248|0;ua=ta+244|0;y=ta+240|0;ra=ta+236|0;K=ta+232|0;L=ta+228|0;m=ta+224|0;pa=ta+220|0;qa=ta+216|0;$=ta
+212|0;ca=ta+208|0;n=ta+204|0;A=ta+200|0;W=ta+196|0;la=ta+260|0;ba=ta+192|0;ma=ta+188|0;l=ta+184|0;T=ta+180|0;Z=ta+176|0;aa=ta+172
|0;X=ta+168|0;M=ta+164|0;N=ta+160|0;O=ta+156|0;Y=ta+152|0;P=ta+148|0;V=ta+144|0;Q=ta+140|0;U=ta+136|0;R=ta+132|0;ea=ta+128|0;fa=
ta+124|0;da=ta+120|0;ga=ta+116|0;w=ta+112|0;x=ta+108|0;B=ta+104|0;s=ta+100|0;ha=ta+96|0;v=ta+92|0;z=ta+88|0;k=ta+84|0;t=ta+80|0;
_=ta+76|0;S=ta+72|0;ia=ta+68|0;E=ta+64|0;u=ta+60|0;F=ta+56|0;ja=ta+52|0;C=ta+48|0;ka=ta+44|0;D=ta+40|0;na=ta+36|0;G=ta+32|0;H=ta
+28|0;oa=ta+24|0;o=ta+20|0;p=ta+16|0;q=ta+12|0;r=ta+8|0;I=ta+4|0;J=ta;c[j>>2]=e;c[va>>2]=f;c[ua>>2
]=g;c[m>>2]=c[j>>2];c[n>>2]=c[(c[(c[j>>2]|0)+76>>2]|0)+1324+44>>2];c
[(c[j>>2]|0)+756>>2]=0;a[(c[j>>2]|0)+752>>0]=1;c[$>>2]=$^j^va;e=(c[$>>
;2]^c[$>>2]>>10^c[$>>2]>>20)&65535;c[$>>2]=e;c[$>>2]=(c[$>
x3e;2]|0)==0?29572:e;c[(c[j>>2]|0)+276>>2]=(c[j>>2]|0)+80;c[(c[j>>2]|0)+676>>2
]=(c[j>>2]|0)+280;c[ra>>2]=(c[j>>2]|0)+280;c[ca>>2]=c[(c[j>>2]|0)+276>>
;2];c[A>>2]=c[(c[m>>2]|0)+68>>2];a[(c[m>>2]|0)+64>>0]=0;c[c[ra>>2]
x3e;>2]=c[va>>2];e=(c[va>>2]|0)+(c[ua>>2]|0)|0;c[(c[ra>>2]|0)+4>>2]=e;c[L
>>2]=e;e=c[c[ra>>2]>>2]|0;c[(c[ra>>2]|0)+8>>2]=e;c[K>>2]=e;c[y>
x3e;2]=0;c[pa>>2]=c[(c[m>>2]|0)+24>>2];c[qa>>2]=c[(c[m>>2]|0)+28>>2];
if(c[A>>2]|0)Va[c[(c[A>>2]|0)+4>>2]&63](c[c[A>>2]>>2]|0);a:while(1){if((c
[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0){sa=307;break}va=c[K>>2]|0;c[K
x3e;>2]=va+1;a[la>>0]=a[va>>0]|0;if((d[la>>0]|0)<32?(d[la>>0]|0)!=28:0){c[l>
;>2]=c[(c[j>>2]|0)+276>>2];c[T>>2]=((c[l>>2]|0)-((c[j>>2]|0)+80)|0)/4|0;c
[W>>2]=0;b:do switch(d[la>>0]|0){case 1:{c[W>>2]=19;break}case 3:{c[W>>2]=20;break}case
4:{c[W>>2]=3;break}case 5:{c[W>>2]=4;break}case 6:{c[W>>2]=5;break}case 7:{c[W>>2]=6;break
}case 8:{c[W>>2]=7;break}case 9:{c[W>>2]=53;break}case 10:{c[W>>2]=49;break}case 11:{c[W>>
;2]=51;break}case 12:{if((c[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0)break a;va=c[K
x3e;>2]|0;c[K>>2]=va+1;a[la>>0]=a[va>>0]|0;do switch(d[la>>0]|0){case 0:{c[W>
x3e;2]=25;break b}case 1:{c[W>>2]=20;break b}case 2:{c[W>>2]=19;break b}case 3:{c[W>>2]=44;break b
}case 4:{c[W>>2]=45;break b}case 5:{c[W>>2]=46;break b}case 6:{c[W>>2]=56;break b}case 7:{c[W>
;>2]=57;break b}case 8:{c[W>>2]=42;break b}case 9:{c[W>>2]=26;break b}case 10:{c[W>>2]=27;break
b}case 11:{c[W>>2]=28;break b}case 12:{c[W>>2]=29;break b}case 13:{c[W>>2]=43;break b}case 14:{c[
W>>2]=30;break b}case 15:{c[W>>2]=47;break b}case 16:{c[W>>2]=54;break b}case 17:{c[W>>2
]=55;break b}case 18:{c[W>>2]=35;break b}case 20:{c[W>>2]=40;break b}case 21:{c[W>>2]=41;break b}case
22:{c[W>>2]=48;break b}case 23:{c[W>>2]=31;break b}case 24:{c[W>>2]=32;break b}case 26:{c[W>
x3e;2]=33;break b}case 27:{c[W>>2]=39;break b}case 28:{c[W>>2]=36;break b}case 29:{c[W>>2]=37;break
b}case 30:{c[W>>2]=38;break b}case 33:{c[W>>2]=58;break b}case 34:{c[W>>2]=15;break b}case 35:{c[
W>>2]=14;break b}case 36:{c[W>>2]=16;break b}case 37:{c[W>>2]=17;break b}default:{c[K>>2
]=(c[K>>2]|0)+-1;break b}}while(0)}case 13:{c[W>>2]=52;break}case 14:{c[W>>2]=18;break}case 16:{c[
W>>2]=34;break}case 18:{c[W>>2]=21;break}case 19:{c[W>>2]=23;break}case 20:{c[W>>2]=24;break
}case 21:{c[W>>2]=1;break}case 22:{c[W>>2]=2;break}case 23:{c[W>>2]=22;break}case 24:{c[W>>
;2]=10;break}case 25:{c[W>>2]=11;break}case 26:{c[W>>2]=13;break}case 27:{c[W>>2]=8;break}case 29:{
c[W>>2]=50;break}case 30:{c[W>>2]=12;break}case 31:{c[W>>2]=9;break}default:{}}while(0);if(!(c[W
x3e;>2]|0))break;c[Z>>2]=d[11281+(c[W>>2]|0)>>0];if(c[Z>>2]&128|0){if((c[T>
;>2]|0)>0?d[(c[j>>2]|0)+752>>0]|0:0){switch(c[W>>2]|0){case 3:case 2:{c[aa>>2]=
c[T>>2]&2;break}case 24:case 23:case 1:case 22:case 21:case 20:case 19:{c[aa>>2]=c[T>>2]&
;1;break}case 18:{c[aa>>2]=((c[T>>2]|0)==5?1:(c[T>>2]|0)==1)&1;break}default:c[aa>>
2]=0}if(c[aa>>2]|0){c[(c[j>>2]|0)+744>>2]=(c[(c[j>>2]|0)+748>>2]|0)+(c[c[ca>
;>2]>>2]>>16);if(a[(c[j>>2]|0)+753>>0]|0){sa=307;break}c[T>>2]=(c[T>
x3e;2]|0)+-1}}a[(c[j>>2]|0)+752>>0]=0;c[Z>>2]=0}c[Z>>2]=c[Z>>2]&15;if((c[
T>>2]|0)<(c[Z>>2]|0)){sa=309;break}c[l>>2]=(c[l>>2]|0)+(0-(c[Z>>2]|0)<
;<2);c[T>>2]=(c[T>>2]|0)-(c[Z>>2]|0);do switch(c[W>>2]|0){case 56:{sa=220;break a}case
18:{sa=221;break a}case 22:case 21:case 20:case 19:{if(c[A>>2]|0)_a[c[(c[A>>2]|0)+12>>2]&15](
c[c[A>>2]>>2]|0,((c[W>>2]|0)==19?1:(c[W>>2]|0)==21)&1,(c[T>>2]|0)/2|0,(c[
l>>2]|0)+(0-(c[T>>2]&-2)<<2)|0);va=(c[j>>2]|0)+756|0;c[va>>2]=(c[va>
x3e;2]|0)+((c[T>>2]|0)/2|0);c[l>>2]=c[ca>>2];break}case 24:case 23:{if((c[T>>2]|0)>
0){if(c[A>>2]|0)_a[c[(c[A>>2]|0)+12>>2]&15](c[c[A>>2]>>2]|0,0,(c[T>
x3e;2]|0)/2|0,(c[l>>2]|0)+(0-(c[T>>2]&-2)<<2)|0);va=(c[j>>2]|0)+756|0;c[va>>
;2]=(c[va>>2]|0)+((c[T>>2]|0)/2|0)}if(((c[K>>2]|0)+((c[(c[j>>2]|0)+756>>2]|0)+
7>>3)|0)>>>0>=(c[L>>2]|0)>>>0)break a;do if(c[A>>2]|0){f=c[A>
;>2]|0;if((c[W>>2]|0)==23){_a[c[f+16>>2]&15](c[c[A>>2]>>2]|0,b[(c[(c[m>
x3e;2]|0)+20>>2]|0)+2>>1]|0,c[(c[j>>2]|0)+756>>2]|0,c[K>>2]|0);break}else{Ua[c
[f+20>>2]&31](c[c[A>>2]>>2]|0,c[(c[j>>2]|0)+756>>2]|0,c[K>>2]|0
);break}}while(0);c[K>>2]=(c[K>>2]|0)+((c[(c[j>>2]|0)+756>>2]|0)+7>>3);c[l>
;>2]=c[ca>>2];break}case 1:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64>>0]=0;c[pa>>2]=(
c[pa>>2]|0)+(c[(c[l>>2]|0)+-8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>
2]|0)+-4>>2]|0);c[l>>2]=c[ca>>2];break}case 3:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64
x3e;>0]=0;c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+-4>>2]|0);c[l>>2]=c[ca>
;>2];break}case 2:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64>>0]=0;c[pa>>2]=(c[pa>>2
]|0)+(c[(c[l>>2]|0)+-4>>2]|0);c[l>>2]=c[ca>>2];break}case 4:{if(Qi(c[m>>2]|0,c
[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[T>>2]|0)/2|0)|0){sa=307;break
a}if((c[T>>2]|0)<2){sa=309;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[T>>2]&-2)<
x3c;2);while(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>
;0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|
0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>
;2]=(c[l>>2]|0)+8}c[l>>2]=c[ca>>2];break}case 6:case 5:{c[X>>2]=(c[W>>2]|0)==5
&1;if((c[T>>2]|0)<1){sa=309;break a}if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){
sa=307;break a}if(Ti(c[m>>2]|0,c[T>>2]|0)|0){sa=307;break a}c[l>>2]=c[ca>>2];while(1){if
((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;f=c[c[l
x3e;>2]>>2]|0;if(c[X>>2]|0)c[pa>>2]=(c[pa>>2]|0)+f;else c[qa>>2]=(c[qa>
;>2]|0)+f;if(Si(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>
;>2]|0)+4;c[X>>2]=c[X>>2]^1}c[l>>2]=c[ca>>2];break}case 7:{if((c[T>>2]|0)
x3c;6){sa=309;break a}c[M>>2]=(c[T>>2]|0)-((c[T>>2]|0)%6|0);if(Qi(c[m>>2]|0,c[pa>
x3e;2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[M>>2]|0)/2|0)|0){sa=307;break a}c[l>
;>2]=(c[l>>2]|0)+(0-(c[M>>2]|0)<<2);while(1){if((c[l>>2]|0)>>>0>
;=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>
x3e;2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>
2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>
;2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>
x3e;2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>
;>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0,1);c[l>>2]=(c[l>>2]|0)+24}c[l>>2]=c[ca>>2];break}case 13:{if((c[T>
x3e;2]|0)<4){sa=309;break a}c[N>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0)-(
c[N>>2]|0)|0)>0)c[N>>2]=(c[N>>2]|0)+1;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[N>>2]|0)<<2);if(c[N>>
2]&1|0){c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2
]|0)+4;c[N>>2]=(c[N>>2]|0)+-1}if(Ti(c[m>>2]|0,((c[N>>2]|0)/4|0)*3|0)|0){sa=307;break a}while
(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;c[qa
>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>
;>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[qa
>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c
[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+16}c[l>>2]=c[ca>>2];break}case 8:{if((c[T>
;>2]|0)<4){sa=309;break a}c[O>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0
)-(c[O>>2]|0)|0)>0)c[O>>2]=(c[O>>2]|0)+1;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[O>>2]|0)<<2);if(c[O>>
;2]&1|0){c[qa>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>
2]|0)+4;c[O>>2]=(c[O>>2]|0)+-1}if(Ti(c[m>>2]|0,((c[O>>2]|0)/4|0)*3|0)|0){sa=307;break a}
while(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break
;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa
>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[
qa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0
,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+16}c[l>>2]=c[ca>>2];break}case 9:case
12:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if((c[T>>2]|0)<4){sa=309
;break a}c[P>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0)-(c[P>>2]|0)|0)
x3e;0)c[P>>2]=(c[P>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+(0-(c[P>>2]|0)<<2);if
(Ti(c[m>>2]|0,((c[P>>2]|0)/4|0)*3|0)|0){sa=309;break a}c[Y>>2]=(c[W>>2]|0)==9&1;while
(1){if((c[P>>2]|0)<4)break;c[P>>2]=(c[P>>2]|0)-4;f=c[c[l>>2]>>2]|0;if(c[Y
>>2]|0){c[pa>>2]=(c[pa>>2]|0)+f;Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0
);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0
)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[qa>>
;2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);if((c[P>>2]|0)==1)c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1)}else
{c[qa>>2]=(c[qa>>2]|0)+f;Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>
;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
x3e;2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
x3e;2]|0)+(c[(c[l>>2]|0)+12>>2]|0);if((c[P>>2]|0)==1)c[qa>>2]=(c[qa>>2]|0)+(c[(
c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1)}c[l>>2]=(
c[l>>2]|0)+16;c[Y>>2]=c[Y>>2]^1}c[l>>2]=c[ca>>2];break}case 11:{if((c[T>
x3e;2]|0)<8){sa=309;break a}c[Q>>2]=c[T>>2]&-2;c[V>>2]=((c[Q>>2]|0)-6|0)/2|0;if
(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[V>>2
]|0)+3|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[Q>>2]|0)<<2);while(1){va=(c[V>
;>2]|0)>0;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>
;>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);f=c[m>>2]|0;g=c[pa>>2]|0;e=c[qa>>2]|0;if(!
va)break;Ui(f,g,e,1);c[l>>2]=(c[l>>2]|0)+8;c[V>>2]=(c[V>>2]|0)+-1}Ui(f,g,e,0);c[pa>
x3e;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
;>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20
x3e;>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case
10:{if((c[T>>2]|0)<8){sa=309;break a}c[R>>2]=(c[T>>2]|0)-2;c[R>>2]=(c[R>>
;2]|0)-((c[R>>2]|0)%6|0)+2;c[U>>2]=((c[R>>2]|0)-2|0)/6|0;if(Qi(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,((c[U>>2]|0)*3|0)+2|0)|0){sa=307;break a}c[l
x3e;>2]=(c[l>>2]|0)+(0-(c[R>>2]|0)<<2);while(1){va=(c[U>>2]|0)>0;c[pa>>
;2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|
0)+4>>2]|0);f=c[m>>2]|0;g=c[pa>>2]|0;e=c[qa>>2]|0;if(!va)break;Ui(f,g,e,0);c[pa>>
;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
x3e;2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
x3e;2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20>
;>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+24;c[U
x3e;>2]=(c[U>>2]|0)+-1}Ui(f,g,e,1);c[l>>2]=c[ca>>2];break}case 16:{if(Qi(c[m>>2]|0,
c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;break a}c[ea>>2]=c
[qa>>2];c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>
x3e;2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa
x3e;>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[
l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c
[pa>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|
0,1);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);Ui(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0);c[qa>
x3e;2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+28>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+32>>2]|0);c[qa>>2]=c[ea>
;>2];Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 15
:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;
break a}c[fa>>2]=c[qa>>2];c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);Ui
(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2
]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>
2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+12>>
;2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>
;>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);c[qa>>2]=c[fa>>2];Ui(c[m>>2]|0,c[pa>
;>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0);Ui(c[
m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 17:{c[w>>
;2]=0;c[x>>2]=0;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>
x3e;2]|0,6)|0){sa=307;break a}c[da>>2]=c[pa>>2];c[ga>>2]=c[qa>>2];c[ha>>2]=c[l
>>2];c[s>>2]=5;while(1){if((c[s>>2]|0)<=0)break;c[w>>2]=(c[w>>2]|0)+(c[c[
ha>>2]>>2]|0);c[x>>2]=(c[x>>2]|0)+(c[(c[ha>>2]|0)+4>>2]|0);c[ha>
;>2]=(c[ha>>2]|0)+8;c[s>>2]=(c[s>>2]|0)+-1}if((c[w>>2]|0)<0)c[w>>2]=
0-(c[w>>2]|0);if((c[x>>2]|0)<0)c[x>>2]=0-(c[x>>2]|0);c[B>>2]=(c[w>
x3e;2]|0)>(c[x>>2]|0)&1;c[s>>2]=5;while(1){if((c[s>>2]|0)<=0)break;c[pa>>
2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|
0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,(c[s>>2]|0)==3&255);c[l>
;>2]=(c[l>>2]|0)+8;c[s>>2]=(c[s>>2]|0)+-1}if(c[B>>2]|0){c[pa>>2]=(c[pa>
;>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=c[ga>>2]}else{c[pa>>2]=c[da>>
;2];c[qa>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0)}Ui(c[m>>2]|0,c[pa>>2]|0,
c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 14:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;break a}c[v>>2]=6;while(1){if((c[v>>
;2]|0)>>>0<=0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>
;>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,((c[v>>2]|0)==4?1:(c[v>>2]|0)==1)&1);c[l>>2]=(c[l>>2]|0)+8;c[v>>
;2]=(c[v>>2]|0)+-1}c[l>>2]=c[ca>>2];break}case 26:{if((c[c[l>>2]>>2]|0)<0
)c[c[l>>2]>>2]=0-(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case
27:{va=c[l>>2]|0;c[va>>2]=(c[va>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>
2]=(c[l>>2]|0)+4;break}case 28:{va=c[l>>2]|0;c[va>>2]=(c[va>>2]|0)-(c[(c[l>>2]|
0)+4>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case 29:{va=Vb(c[c[l>>2]>>2]|0,c[(c[l
x3e;>2]|0)+4>>2]|0)|0;c[c[l>>2]>>2]=va;c[l>>2]=(c[l>>2]|0)+4;break}case 30
:{c[c[l>>2]>>2]=0-(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case
31:{c[k>>2]=c[$>>2];if((c[k>>2]|0)>=32768)c[k>>2]=(c[k>>2]|0)+1;c[c[l>
;>2]>>2]=c[k>>2];c[$>>2]=Mb(c[$>>2]|0,65536-(c[$>>2]|0)|0)|0;if(!(c[$>
;>2]|0))c[$>>2]=(c[$>>2]|0)+10355;c[l>>2]=(c[l>>2]|0)+4;break}case 32:{va=Mb(c[c[l
x3e;>2]>>2]|0,c[(c[l>>2]|0)+4>>2]|0)|0;c[c[l>>2]>>2]=va;c[l>>2]=(
c[l>>2]|0)+4;break}case 33:{if((c[c[l>>2]>>2]|0)>0){c[t>>2]=9;c[_>>2]=c[c
[l>>2]>>2];while(1){f=c[_>>2]|0;c[S>>2]=f+(Vb(c[c[l>>2]>>2]|0,c[_>
;>2]|0)|0)+1>>1;f=c[S>>2]|0;if((c[t>>2]|0)<=0?1:(c[S>>2]|0)==(c[_>>2
]|0))break;c[_>>2]=f}c[c[l>>2]>>2]=f}else c[c[l>>2]>>2]=0;c[l>>2]=(c
[l>>2]|0)+4;break}case 25:case 35:break;case 36:{c[ia>>2]=c[c[l>>2]>>2];c[c[l>>
;2]>>2]=c[(c[l>>2]|0)+4>>2];c[(c[l>>2]|0)+4>>2]=c[ia>>2];c[l>
x3e;2]=(c[l>>2]|0)+8;break}case 37:{c[E>>2]=c[c[l>>2]>>2]>>16;if((c[E>>
;2]|0)>=0){if((c[E>>2]|0)>((c[T>>2]|0)-2|0))c[E>>2]=(c[T>>2]|0)-2}else c[E>
;>2]=0;c[c[l>>2]>>2]=c[(c[l>>2]|0)+(0-((c[E>>2]|0)+1)<<2)>>2];c
[l>>2]=(c[l>>2]|0)+4;break}case 38:{c[u>>2]=c[c[l>>2]>>2]>>16;c[F>
;>2]=c[(c[l>>2]|0)+4>>2]>>16;if((c[u>>2]|0)<=0)c[u>>2]=1;c[l>
x3e;2]=(c[l>>2]|0)+(0-(c[u>>2]|0)<<2);if((c[l>>2]|0)>>>0<(c[ca>
x3e;2]|0)>>>0){sa=309;break a}c:do if((c[F>>2]|0)>=0)while(1){if((c[F>>2]|0)<=0)break
c;c[ja>>2]=c[(c[l>>2]|0)+((c[u>>2]|0)-1<<2)>>2];c[C>>2]=(c[u>
x3e;2]|0)-2;while(1){if((c[C>>2]|0)<0)break;c[(c[l>>2]|0)+((c[C>>2]|0)+1<<2)>
x3e;2]=c[(c[l>>2]|0)+(c[C>>2]<<2)>>2];c[C>>2]=(c[C>>2]|0)+-1}c[c[l
x3e;>2]>>2]=c[ja>>2];c[F>>2]=(c[F>>2]|0)+-1}else while(1){if((c[F>>2]|0)
x3e;=0)break c;c[ka>>2]=c[c[l>>2]>>2];c[D>>2]=0;while(1){if((c[D>>2]|0)>=((
c[u>>2]|0)-1|0))break;c[(c[l>>2]|0)+(c[D>>2]<<2)>>2]=c[(c[l>>2]|0)+((
c[D>>2]|0)+1<<2)>>2];c[D>>2]=(c[D>>2]|0)+1}c[(c[l>>2]|0)+((c[u>
x3e;2]|0)-1<<2)>>2]=c[ka>>2];c[F>>2]=(c[F>>2]|0)+1}while(0);c[l>>2]=(
c[l>>2]|0)+(c[u>>2]<<2);break}case 39:{c[(c[l>>2]|0)+4>>2]=c[c[l>>2]
x3e;>2];c[l>>2]=(c[l>>2]|0)+8;break}case 40:{c[na>>2]=c[c[l>>2]>>2];c[G
x3e;>2]=c[(c[l>>2]|0)+4>>2]>>16;if((c[G>>2]|0)>=0&(c[G>>2]|0)
x3c;32)c[(c[j>>2]|0)+760+(c[G>>2]<<2)>>2]=c[na>>2];break}case 41:{c[H>>
;2]=c[c[l>>2]>>2]>>16;c[oa>>2]=0;if((c[H>>2]|0)>=0&(c[H>>2
]|0)<32)c[oa>>2]=c[(c[j>>2]|0)+760+(c[H>>2]<<2)>>2];c[c[l>>2]
x3e;>2]=c[oa>>2];c[l>>2]=(c[l>>2]|0)+4;break}case 51:{if((c[(c[j>>2]|0)+676>
x3e;2]|0)>>>0<=((c[j>>2]|0)+280|0)>>>0)break a;va=(c[j>>2]|0)+676|0;c[va
x3e;>2]=(c[va>>2]|0)+-12;c[ra>>2]=c[(c[j>>2]|0)+676>>2];c[K>>2]=c[(c[ra
x3e;>2]|0)+8>>2];c[L>>2]=c[(c[ra>>2]|0)+4>>2];break}case 50:{c[J>>2]=(c[c
[l>>2]>>2]>>16)+(c[(c[j>>2]|0)+900>>2]|0);if((c[J>>2]|0)>>
x3e;0>=(c[(c[j>>2]|0)+892>>2]|0)>>>0)break a;if((((c[ra>>2]|0)-((c[j>>
;2]|0)+280)|0)/12|0|0)>=32)break a;c[(c[ra>>2]|0)+8>>2]=c[K>>2];c[ra>>2]=(c[ra>
;>2]|0)+12;c[c[ra>>2]>>2]=c[(c[(c[j>>2]|0)+908>>2]|0)+(c[J>>2]<<
;2)>>2];c[(c[ra>>2]|0)+4>>2]=c[(c[(c[j>>2]|0)+908>>2]|0)+((c[J>>2]|0
)+1<<2)>>2];c[(c[ra>>2]|0)+8>>2]=c[c[ra>>2]>>2];if(!(c[c[ra>>
;2]>>2]|0))break a;if((c[(c[ra>>2]|0)+4>>2]|0)==(c[c[ra>>2]>>2]|0))break a;c[(
c[j>>2]|0)+676>>2]=c[ra>>2];c[K>>2]=c[c[ra>>2]>>2];c[L>>2]=
c[(c[ra>>2]|0)+4>>2];break}case 53:{c[l>>2]=c[ca>>2];break}case 52:{c[(c[j>>2]|
0)+744>>2]=(c[(c[j>>2]|0)+748>>2]|0)+(c[(c[l>>2]|0)+4>>2]>>16);c[(c[
j>>2]|0)+32>>2]=c[c[l>>2]>>2];c[(c[j>>2]|0)+32+4>>2]=0;c[pa>>
;2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=c[(c[j>>2]|0
)+28>>2];c[l>>2]=c[ca>>2];break}case 57:{c[(c[j>>2]|0)+744>>2]=(c[(c[j>
x3e;2]|0)+748>>2]|0)+(c[(c[l>>2]|0)+8>>2]>>16);c[(c[j>>2]|0)+32>>2]=
c[c[l>>2]>>2];c[(c[j>>2]|0)+32+4>>2]=c[(c[l>>2]|0)+4>>2];c[pa>
x3e;2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[(c[j>>
2]|0)+28>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>2]=c[ca>>2];break}case 58:{c[pa
x3e;>2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[(c[j>
x3e;2]|0)+28>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>2]=c[ca>>2];break}case 54:{c[
l>>2]=(c[l>>2]|0)+(0-(2+(c[(c[l>>2]|0)+-8>>2]>>16))<<2);if((c[l>
;>2]|0)>>>0<(c[ca>>2]|0)>>>0){sa=309;break a}break}case 55:{c[l>>2]=(
c[l>>2]|0)+4;break}case 44:{if(c[c[l>>2]>>2]|0)f=(c[(c[l>>2]|0)+4>>2]|0)!=0;else
f=0;c[o>>2]=f&1;c[c[l>>2]>>2]=c[o>>2]|0?65536:0;c[l>>2]=(c[l>>
2]|0)+4;break}case 45:{if(c[c[l>>2]>>2]|0)f=1;else f=(c[(c[l>>2]|0)+4>>2]|0)!=0;c[p>
;>2]=f&1;c[c[l>>2]>>2]=c[p>>2]|0?65536:0;c[l>>2]=(c[l>>2]|0)+4;break
}case 47:{c[q>>2]=((c[c[l>>2]>>2]|0)!=0^1)&1;c[c[l>>2]>>2]=c[q>>
;2]|0?65536:0;c[l>>2]=(c[l>>2]|0)+4;break}case 48:{c[r>>2]=(c[(c[l>>2]|0)+8>>2
]|0)<=(c[(c[l>>2]|0)+12>>2]|0)&1;if(!(c[r>>2]|0))c[c[l>>2]>>2]=c[(c[
l>>2]|0)+4>>2];c[l>>2]=(c[l>>2]|0)+4;break}case 49:{c[I>>2]=(c[c[l>>
2]>>2]>>16)+(c[(c[j>>2]|0)+896>>2]|0);if((c[I>>2]|0)>>>0>=(
c[(c[j>>2]|0)+888>>2]|0)>>>0)break a;if((((c[ra>>2]|0)-((c[j>>2]|0)+280)|
0)/12|0|0)>=32)break a;c[(c[ra>>2]|0)+8>>2]=c[K>>2];c[ra>>2]=(c[ra>>2]|0)+
12;c[c[ra>>2]>>2]=c[(c[(c[j>>2]|0)+904>>2]|0)+(c[I>>2]<<2)>>
;2];c[(c[ra>>2]|0)+4>>2]=c[(c[(c[j>>2]|0)+904>>2]|0)+((c[I>>2]|0)+1<<
;2)>>2];c[(c[ra>>2]|0)+8>>2]=c[c[ra>>2]>>2];if(!(c[c[ra>>2]>>
;2]|0))break a;if((c[(c[ra>>2]|0)+4>>2]|0)==(c[c[ra>>2]>>2]|0))break a;c[(c[j>>
;2]|0)+676>>2]=c[ra>>2];c[K>>2]=c[c[ra>>2]>>2];c[L>>2]=c[(c[ra>
x3e;2]|0)+4>>2];break}default:{sa=305;break a}}while(0);c[(c[j>>2]|0)+276>>2]=c[l>>2];if
((((c[(c[j>>2]|0)+276>>2]|0)-(c[ca>>2]|0)|0)/4|0|0)>=48){sa=310;break}else continue}c[ba>
;>2]=16;do if((d[la>>0]|0)!=28){f=d[la>>0]|0;if((d[la>>0]|0)<247){c[ma>>2]=f-139
;break}if((f|0)<251){if((c[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0)break a;ua=(
d[la>>0]|0)-247<<8;va=c[K>>2]|0;c[K>>2]=va+1;c[ma>>2]=ua+(d[va>>0]|0
)+108;break}f=c[K>>2]|0;if((d[la>>0]|0)<255){if(f>>>0>=(c[L>>2]|0)>
x3e;>0)break a;ua=0-((d[la>>0]|0)-251)<<8;va=c[K>>2]|0;c[K>>2]=va+1;c[ma>>
;2]=ua-(d[va>>0]|0)-108;break}if((f+3|0)>>>0>=(c[L>>2]|0)>>>0)break a;c[ma
>>2]=d[c[K>>2]>>0]<<24|d[(c[K>>2]|0)+1>>0]<<16|d[(c[K>
;>2]|0)+2>>0]<<8|d[(c[K>>2]|0)+3>>0];c[K>>2]=(c[K>>2]|0)+4;if((
c[n>>2]|0)==2)c[ba>>2]=0}else{if(((c[K>>2]|0)+1|0)>>>0>=(c[L>>2]|0)
x3e;>>0)break a;c[ma>>2]=((d[c[K>>2]>>0]<<8|d[(c[K>>2]|0)+1>>
;0])&65535)<<16>>16;c[K>>2]=(c[K>>2]|0)+2}while(0);if((((c[(c[j>>2]|0)+276
>>2]|0)-(c[ca>>2]|0)|0)/4|0|0)>=48){sa=310;break}c[ma>>2]=c[ma>>2]<<c[ba
x3e;>2];ua=c[ma>>2]|0;e=(c[j>>2]|0)+276|0;va=c[e>>2]|0;c[e>>2]=va+4;c[va>>
;2]=ua}do if((sa|0)==220){c[y>>2]=Vi(c[j>>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[(c[l>>2]|0)+12>>2]>>16,c[(c[l>
x3e;2]|0)+16>>2]>>16)|0;oc(c[(c[m>>2]|0)+12>>2]|0);c[h>>2]=c[y>>2];va
=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==221){if((c[T>>2]|0)>=4){c[z>>2]=c[(c[j>>
;2]|0)+744>>2];c[y>>2]=Vi(c[j>>2]|0,0,c[(c[l>>2]|0)+-16>>2]|0,c[(c[l>>
;2]|0)+-12>>2]|0,c[(c[l>>2]|0)+-8>>2]>>16,c[(c[l>>2]|0)+-4>>2]>
x3e;16)|0;c[(c[j>>2]|0)+744>>2]=c[z>>2]}else{if(!(c[y>>2]|0))c[y>>2]=0;Pi(c[m
x3e;>2]|0);if(c[A>>2]|0){if(Ya[c[(c[A>>2]|0)+8>>2]&127](c[c[A>>2]>>2
]|0,b[(c[(c[m>>2]|0)+20>>2]|0)+2>>1]|0)|0)break;Wa[c[(c[A>>2]|0)+24>>2]&31
](c[c[A>>2]>>2]|0,c[(c[m>>2]|0)+20>>2]|0,c[(c[m>>2]|0)+72>>2]|0,c[(c
[j>>2]|0)+920>>2]|0)|0}oc(c[(c[m>>2]|0)+12>>2]|0)}c[h>>2]=c[y>>2];va
=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==305){c[h>>2]=7;va=c[h>>2]|0;i=ta;return va|0}else if((
sa|0)==307){c[h>>2]=c[y>>2];va=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==309){c[h>>2]=129
;va=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==310){c[h>>2]=130;va=c[h>>2]|0;i=ta;return va|0}while
(0);c[h>>2]=3;va=c[h>>2]|0;i=ta;return va|0}function Pi(a){a=a|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|
0;l=k+20|0;j=k+16|0;h=k+12|0;f=k+8|0;g=k+4|0;e=k;c[l>>2]=a;c[j>>2]=c[(c[l>>2]|0)+20>>2];
if(!(c[j>>2]|0)){i=k;return}if((b[c[j>>2]>>1]|0)<=1)a=0;else a=(b[(c[(c[j>>2]|0)+12
>>2]|0)+((b[c[j>>2]>>1]|0)-2<<1)>>1]|0)+1|0;c[h>>2]=a;if((((b[(c[j
x3e;>2]|0)+2>>1]|0)>1?(c[f>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[h>>2]<
;<3),c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(b[(c[j>>2]|0)+2>>1]<<3)+-
8,c[e>>2]=(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>>2]|0)+2>>1]|0)+-1,(c[c[f>>
;2]>>2]|0)==(c[c[g>>2]>>2]|0)):0)?(c[(c[f>>2]|0)+4>>2]|0)==(c[(c[g>>
2]|0)+4>>2]|0):0)?(d[c[e>>2]>>0]|0)==1:0){l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>
x3e;1]|0)+-1<<16>>16}if((b[c[j>>2]>>1]|0)<=0){i=k;return}a=c[j>>2]|0;if((
c[h>>2]|0)==((b[(c[j>>2]|0)+2>>1]|0)-1|0)){b[a>>1]=(b[a>>1]|0)+-1<<16
>>16;l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>>1]|0)+-1<<16>>16;i=k;return}else
{b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>1]|0)-1<<1)>>1]=(b[a+2>
;>1]|0)-1;i=k;return}}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;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=
k;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2]=0;if(a[(c[f>>2]|0)+64>>0]|0){
e=c[j>>2]|0;i=k;return e|0}a[(c[f>>2]|0)+64>>0]=1;c[j>>2]=Ri(c[f>>2]|0)|0;if(c
[j>>2]|0){e=c[j>>2]|0;i=k;return e|0}c[j>>2]=Si(c[f>>2]|0,c[g>>2]|0,c[h>
x3e;2]|0)|0;e=c[j>>2]|0;i=k;return e|0}function Ri(d){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[e>>2]=d;c[h>>2]=c[(c[e>>2]|0)+20>>2];if(!(a[(c[e>>2]|0)+65>>
;0]|0)){h=c[h>>2]|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16;c[f>>2]=0;h=c[f>
;>2]|0;i=j;return h|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20>>1]|0)+(b[(c[(c[e>>2]|0)+12
>>2]|0)+56>>1]|0)+1|0)>>>0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+8>>
;2]|0)>>>0)e=0;else e=kc(c[(c[e>>2]|0)+12>>2]|0,0,1)|0;c[g>>2]=e;if(!(c[g>>
;2]|0)){if((b[c[h>>2]>>1]|0)>0)b[(c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>
;>1]|0)-1<<1)>>1]=(b[(c[h>>2]|0)+2>>1]|0)-1;h=c[h>>2]|0;b[h>>1]=(
b[h>>1]|0)+1<<16>>16}c[f>>2]=c[g>>2];h=c[f>>2]|0;i=j;return h|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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>
;2]=b;c[g>>2]=d;c[h>>2]=Ti(c[e>>2]|0,1)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=j;return
d|0}Ui(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0,1);d=c[h>>2]|0;i=j;return d|0}function Ti(a,d){a=a
|0;d=d|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]=d;if(!(c[f>>2]|0)){d=0;i=g;return
d|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20+2>>1]|0)+(b[(c[(c[e>>2]|0)+12>>2]|0)+56
+2>>1]|0)+(c[f>>2]|0)|0)>>>0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+4>>
;2]|0)>>>0){d=0;i=g;return d|0}d=kc(c[(c[e>>2]|0)+12>>2]|0,c[f>>2]|0,0)|0;i=g;return
d|0}function Ui(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;p=i;i=i+32|0;q=p+20|0;j=p+16|0;k=p+12|0;l=
p+24|0;n=p+8|0;o=p+4|0;m=p;c[q>>2]=e;c[j>>2]=f;c[k>>2]=g;a[l>>0]=h;c[n>>2]=c[(
c[q>>2]|0)+20>>2];if(!(a[(c[q>>2]|0)+65>>0]|0)){q=c[n>>2]|0;q=q+2|0;g=b[q>
;>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}c[o>>2]=(c[(c[n>>2]|0)+4>
x3e;2]|0)+(b[(c[n>>2]|0)+2>>1]<<3);c[m>>2]=(c[(c[n>>2]|0)+8>>2]|0)+(
b[(c[n>>2]|0)+2>>1]|0);c[c[o>>2]>>2]=c[j>>2]>>16;c[(c[o>>2
]|0)+4>>2]=c[k>>2]>>16;a[c[m>>2]>>0]=d[l>>0]|0?1:2;q=c[n>>
2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}function Vi(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,D=0,E=0,F=0,G=0
;G=i;i=i+96|0;k=G+92|0;l=G+88|0;m=G+84|0;n=G+80|0;o=G+76|0;p=G+72|0;q=G+68|0;y=G+64|0;u=G+60|0;t=G+56|0;r=G+52|0;z=G+48|0;C=G+40
|0;s=G+32|0;w=G+24|0;x=G+20|0;B=G+16|0;v=G+12|0;A=G+8|0;D=G+4|0;E=G;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;
c[o>>2]=g;c[p>>2]=h;c[q>>2]=j;c[u>>2]=c[l>>2];c[z>>2]=c[(c[l>
x3e;2]|0)+4>>2];if(a[(c[l>>2]|0)+924>>0]|0){c[k>>2]=160;F=c[k>>2]|0;i=G;return
F|0}c[n>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+32>>2]|0);c[o>>2]=(c[o>>2]|0
)+(c[(c[l>>2]|0)+32+4>>2]|0);if(c[(c[(c[z>>2]|0)+128>>2]|0)+52>>2]|0){c[t>
;>2]=c[p>>2];c[r>>2]=c[q>>2]}else{c[v>>2]=c[(c[z>>2]|0)+692>>2];
c[t>>2]=Wi(c[v>>2]|0,c[p>>2]|0)|0;c[r>>2]=Wi(c[v>>2]|0,c[q>>2]|0)|0}
if((c[t>>2]|0)<0|(c[r>>2]|0)<0){c[k>>2]=160;F=c[k>>2]|0;i=G;return F|0}if(a[(c
[u>>2]|0)+66>>0]|0){c[A>>2]=c[(c[u>>2]|0)+8>>2];c[D>>2]=c[c[(c[A>
;>2]|0)+156>>2]>>2];c[y>>2]=lc(c[D>>2]|0,2)|0;if(!(c[y>>2]|0)){c[E>
x3e;2]=c[(c[D>>2]|0)+56+32>>2];c[c[E>>2]>>2]=c[t>>2];b[(c[E>>2]|0)+4
>>1]=514;c[(c[E>>2]|0)+8>>2]=0;c[(c[E>>2]|0)+12>>2]=0;c[E>>2]=(c[E
x3e;>2]|0)+32;c[c[E>>2]>>2]=c[r>>2];b[(c[E>>2]|0)+4>>1]=2;c[(c[E>>
;2]|0)+8>>2]=c[n>>2]>>16;c[(c[E>>2]|0)+12>>2]=c[o>>2]>>16;
c[(c[A>>2]|0)+128>>2]=2;c[(c[A>>2]|0)+132>>2]=c[(c[D>>2]|0)+20+32>>2
];c[(c[A>>2]|0)+72>>2]=1668246896;c[(c[D>>2]|0)+56+28>>2]=2;F=11}}else F=11;do if((F|0)==
11){nc(c[(c[u>>2]|0)+12>>2]|0);c[y>>2]=Mi(c[z>>2]|0,c[t>>2]|0,w,x)|0;if((c[y
x3e;>2]|0)==0?(a[(c[l>>2]|0)+924>>0]=1,c[y>>2]=Oi(c[l>>2]|0,c[w>>2]|0,c[x
>>2]|0)|0,a[(c[l>>2]|0)+924>>0]=0,Yi(c[z>>2]|0,w,c[x>>2]|0),c[y>>2]|
0):0)break;F=(c[u>>2]|0)+32|0;c[C>>2]=c[F>>2];c[C+4>>2]=c[F+4>>2];F=(c[u>
x3e;2]|0)+40|0;c[s>>2]=c[F>>2];c[s+4>>2]=c[F+4>>2];c[B>>2]=c[(c[l>>2
]|0)+744>>2];c[(c[u>>2]|0)+32>>2]=0;c[(c[u>>2]|0)+32+4>>2]=0;c[(c[u>>
;2]|0)+24>>2]=(c[n>>2]|0)-(c[m>>2]|0);c[(c[u>>2]|0)+28>>2]=c[o>>2];c
[y>>2]=Mi(c[z>>2]|0,c[r>>2]|0,w,x)|0;if((c[y>>2]|0)==0?(a[(c[l>>2]|0)+924>
;>0]=1,c[y>>2]=Oi(c[l>>2]|0,c[w>>2]|0,c[x>>2]|0)|0,a[(c[l>>2]|0)+924>
;>0]=0,Yi(c[z>>2]|0,w,c[x>>2]|0),c[y>>2]|0):0)break;F=(c[u>>2]|0)+32|0;c[F>>
;2]=c[C>>2];c[F+4>>2]=c[C+4>>2];F=(c[u>>2]|0)+40|0;c[F>>2]=c[s>>2];c
[F+4>>2]=c[s+4>>2];c[(c[l>>2]|0)+744>>2]=c[B>>2];c[(c[u>>2]|0)+24>
;>2]=0;c[(c[u>>2]|0)+28>>2]=0}while(0);c[k>>2]=c[y>>2];F=c[k>>2]|0;i=G;return
F|0}function Wi(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l+12|0;g=l+8|0;f=l+4|0;j=l;h=l+16|0;c[g>>
2]=a;c[f>>2]=d;if(!(c[(c[g>>2]|0)+1152+8>>2]|0)){c[k>>2]=-1;k=c[k>>2]|0;i=l;return
k|0}if((c[f>>2]|0)<0|(c[f>>2]|0)>255){c[k>>2]=-1;k=c[k>>2]|0;i=l;return k|0}b
[h>>1]=Xi(c[f>>2]|0)|0;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[
g>>2]|0)+12>>2]|0)>>>0){f=10;break}a=c[j>>2]|0;if((e[(c[(c[g>>2]|0)+1152+
8>>2]|0)+(c[j>>2]<<1)>>1]|0|0)==(e[h>>1]|0|0)){f=8;break}c[j>>2]=a+1
}if((f|0)==8){c[k>>2]=a;k=c[k>>2]|0;i=l;return k|0}else if((f|0)==10){c[k>>2]=-1;k=c[k>>
2]|0;i=l;return k|0}return 0}function Xi(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<256)b=e[6520+(c[b>>2]<<1)>>1]|0;else b=0;i=d;return b&65535|0}function Yi
(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;e=k+24|0;f=k+20|0;g=k+16|0;j=k+8|0;h=k;c[e>>2]=a;c[
f>>2]=b;c[g>>2]=d;if(c[(c[(c[e>>2]|0)+128>>2]|0)+52>>2]|0){c[j>>2]=c
[c[f>>2]>>2];c[j+4>>2]=c[g>>2];Ra[c[(c[c[(c[(c[e>>2]|0)+128>>2]|0)+52
>>2]>>2]|0)+4>>2]&7](c[(c[(c[(c[e>>2]|0)+128>>2]|0)+52>>2]|0)+4
>>2]|0,j);i=k;return}else{c[h>>2]=c[(c[e>>2]|0)+692>>2];ji((c[h>>2]|0)+1176|0,
c[f>>2]|0);i=k;return}}function Zi(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;c[d>>
;2]=c[(c[b>>2]|0)+8>>2];if(!(c[d>>2]|0)){i=e;return}d=(c[d>>2]|0)+108|0;a=c[(c[b>
x3e;2]|0)+16>>2]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a
+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];i=e;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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2]=c[m>>2];c[k>>2]=c[(
c[j>>2]|0)+532>>2];c[c[h>>2]>>2]=0;c[(c[h>>2]|0)+4>>2]=0;if(!(c[k>
;>2]|0)){i=l;return 0}m=Oa[c[(c[k>>2]|0)+128>>2]&63](c[j>>2]|0,c[f>>2]|0,c[g
x3e;>2]|0)|0;c[c[h>>2]>>2]=m;i=l;return 0}function $i(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;p=i;i=i+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;m=p+8|0;o=p+4|0;n=p;c[g>>2]=
a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[o>>2]=0;c[n>>2]=c[(c[g
x3e;>2]|0)+84>>2];c[k>>2]=c[k>>2]|256;c[m>>2]=0;while(1){if((c[m>>2]|0)
x3e;>>0>=(c[j>>2]|0)>>>0){f=8;break}c[o>>2]=Gi(c[n>>2]|0,c[(c[g>
;>2]|0)+88>>2]|0,(c[h>>2]|0)+(c[m>>2]|0)|0,c[k>>2]|0)|0;if(c[o>>2]|0){f=8
;break}f=c[n>>2]|0;if(c[k>>2]&16|0)f=c[f+60>>2]|0;else f=c[f+56>>2]|0;c[(c[l>
x3e;2]|0)+(c[m>>2]<<2)>>2]=f;c[m>>2]=(c[m>>2]|0)+1}if((f|0)==8){i=p;return c[o
>>2]|0}return 0}function aj(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;v=i;i=i+80|0;k=v+64|0;l=v+60|0;d=v+56|0;g=v+52|0;n=v+48|0;e=v+44|0;h=v+40|0;j=v+36|0;f=v+32|0;m=v+28|0;p=v+24|0;s=v+20|0;o=v+
16|0;q=v+12|0;r=v+8|0;t=v+4|0;u=v;c[l>>2]=a;c[d>>2]=b;c[g>>2]=c[l>>2];do if(c[(c[c[l>
;>2]>>2]|0)+8>>2]&2|0){c[e>>2]=c[c[l>>2]>>2];c[h>>2]=c[(c[
e>>2]|0)+532>>2];if(Oa[c[(c[h>>2]|0)+148>>2]&63](c[e>>2]|0,c[d>>
;2]|0,j)|0){c[(c[g>>2]|0)+44>>2]=-1;break}c[k>>2]=bj(c[l>>2]|0,c[j>>2]|0)|0;u=
c[k>>2]|0;i=v;return u|0}while(0);Ed(c[c[l>>2]>>2]|0,c[d>>2]|0);c[n>>2]=Bi(c[g
>>2]|0)|0;a:do if(c[n>>2]|0){c[f>>2]=c[c[l>>2]>>2];c[m>>2]=c[(c[f>
;>2]|0)+692>>2];c[p>>2]=c[(c[l>>2]|0)+40>>2];c[s>>2]=c[(c[m>>2]|
0)+1324+64>>2];Za[c[(c[n>>2]|0)+4>>2]&31](c[c[p>>2]>>2]|0,c[(c[l>>
;2]|0)+12+4>>2]|0,c[(c[l>>2]|0)+12+8>>2]|0,0,0)|0;c[o>>2]=c[(c[m>>2]|0)+1892
x3e;>2];while(1){if((c[o>>2]|0)>>>0<=0)break a;c[q>>2]=c[(c[m>>2]|0)+1896
+((c[o>>2]|0)-1<<2)>>2];c[r>>2]=c[(c[q>>2]|0)+64>>2];d=c[(c[l>
x3e;2]|0)+12+4>>2]|0;if((c[s>>2]|0)!=(c[r>>2]|0)){c[t>>2]=xb(d,c[s>>2]|0,c[r
x3e;>2]|0)|0;c[u>>2]=xb(c[(c[l>>2]|0)+12+8>>2]|0,c[s>>2]|0,c[r>>2]|0)|0}else
{c[t>>2]=d;c[u>>2]=c[(c[l>>2]|0)+12+8>>2]}Za[c[(c[n>>2]|0)+4>>2]&
;31](c[(c[p>>2]|0)+4+((c[o>>2]|0)-1<<2)>>2]|0,c[t>>2]|0,c[u>>2]|0,0,
0)|0;c[o>>2]=(c[o>>2]|0)+-1}}while(0);c[k>>2]=0;u=c[k>>2]|0;i=v;return u|0}function bj(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;p=i;i=i+64|0;e=p+48|0;r=p+44|0;q=p+40|0;g=p+36|0;d=p
+32|0;f=p+28|0;j=p+24|0;m=p+20|0;h=p+16|0;k=p+12|0;l=p+8|0;n=p+4|0;o=p;c[e>>2]=a;c[r>>2]=b;c[q>>2]=
c[e>>2];c[(c[q>>2]|0)+44>>2]=c[r>>2];Cd(c[c[e>>2]>>2]|0,c[r>>
;2]|0);c[g>>2]=Bi(c[q>>2]|0)|0;if(!(c[g>>2]|0)){i=p;return 0}c[d>>2]=c[c[e>>2]
x3e;>2];c[f>>2]=c[(c[d>>2]|0)+692>>2];c[j>>2]=c[(c[e>>2]|0)+40>>
;2];c[m>>2]=c[(c[f>>2]|0)+1324+64>>2];Za[c[(c[g>>2]|0)+4>>2]&31](c[c[j>
;>2]>>2]|0,c[(c[e>>2]|0)+12+4>>2]|0,c[(c[e>>2]|0)+12+8>>2]|0,0,0)|0;c[h
x3e;>2]=c[(c[f>>2]|0)+1892>>2];while(1){if((c[h>>2]|0)>>>0<=0)break;c[k
x3e;>2]=c[(c[f>>2]|0)+1896+((c[h>>2]|0)-1<<2)>>2];c[l>>2]=c[(c[k>>
;2]|0)+64>>2];d=c[(c[e>>2]|0)+12+4>>2]|0;if((c[m>>2]|0)!=(c[l>>2]|0)){c[n>
;>2]=xb(d,c[m>>2]|0,c[l>>2]|0)|0;c[o>>2]=xb(c[(c[e>>2]|0)+12+8>>2]|0,c[m
x3e;>2]|0,c[l>>2]|0)|0}else{c[n>>2]=d;c[o>>2]=c[(c[e>>2]|0)+12+8>>2]}Za[c
[(c[g>>2]|0)+4>>2]&31](c[(c[j>>2]|0)+4+((c[h>>2]|0)-1<<2)>>2]|0
,c[n>>2]|0,c[o>>2]|0,0,0)|0;c[h>>2]=(c[h>>2]|0)+-1}i=p;return 0}function cj(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];i=d;return 0}function dj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;h=g+8|0;e=g+4|0;f=g;c[h>>2
]=a;c[e>>2]=b;c[f>>2]=c[(c[h>>2]|0)+16>>2];if((c[e>>2]|0)>>>0
x3e;=256){h=0;i=g;return h|0}h=d[(c[f>>2]|0)+(6+(c[e>>2]|0))>>0]|0;i=g;return h|0}function ej(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;l=i;i=i+32|0;m=l+20|0;e=l+16|0;j=l+12|0;f=l+8|0;h=l+4|0;g=l;c[m>>2]=a;
c[e>>2]=b;c[j>>2]=c[(c[m>>2]|0)+16>>2];c[f>>2]=c[c[e>>2]>>
2];c[h>>2]=0;c[g>>2]=0;c[j>>2]=(c[j>>2]|0)+6;do{m=(c[f>>2]|0)+1|0;c[f>>
;2]=m;if(m>>>0>=256){k=5;break}c[g>>2]=d[(c[j>>2]|0)+(c[f>>2]|0)>>0]}
while(!(c[g>>2]|0));if((k|0)==5){k=c[h>>2]|0;m=c[e>>2]|0;c[m>>2]=k;m=c[g>>2]|0
;i=l;return m|0}c[h>>2]=c[f>>2];k=c[h>>2]|0;m=c[e>>2]|0;c[m>>2]=k;m=c[g>
x3e;2]|0;i=l;return m|0}function fj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;e=k+20|0;f=k+16|0;j=k+12|0;l=k
+8|0;h=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[j>>2]=(c[e>>2]|0)+2;c[j>>2]=(c[j>
x3e;2]|0)+2;c[l>>2]=(((d[(c[j>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[j>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535;if((c[l>>2]|0)>>>0<262?1:((c[e>>
;2]|0)+(c[l>>2]|0)|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>
;>2]|0,8);if((c[(c[f>>2]|0)+8>>2]|0)>>>0<1){i=k;return 0}c[j>>2]=(c[e>
;>2]|0)+6;c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>=256)break;l=c[j>>2]|0;c[
j>>2]=l+1;c[g>>2]=d[l>>0];if((c[g>>2]|0)>>>0>=(c[(c[f>>2]|
0)+172>>2]|0)>>>0)sc(c[f>>2]|0,16);c[h>>2]=(c[h>>2]|0)+1}i=k;return 0}function
gj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>
;2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=0;c[c[f>>2]>>2]=(((
d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&65535)<<
;0)&65535;i=e;return 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,o=0,p=0,q=0,r=0;p=i;i=i+48|0;r=p+40
|0;f=p+36|0;q=p+32|0;m=p+28|0;o=p+24|0;l=p+20|0;j=p+16|0;n=p+12|0;g=p+8|0;h=p+4|0;k=p;c[r>>2]=b;c[f>>2]=e;c[
q>>2]=c[(c[r>>2]|0)+16>>2];c[m>>2]=0;c[o>>2]=ij(c[q>>2]|0,c[f>
x3e;2]|0)|0;if(!(c[o>>2]|0)){r=c[m>>2]|0;i=p;return r|0}c[l>>2]=c[o>>2];c[j>>2
]=c[f>>2]&255;c[l>>2]=(c[l>>2]|0)+2;c[n>>2]=((d[(c[l>>2]|0)+-2>>
;0]&65535)<<8|(d[(c[l>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[l>>2]=(
c[l>>2]|0)+2;c[g>>2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>>
2]|0)+-2+1>>0]&65535)<<0)&65535;c[l>>2]=(c[l>>2]|0)+2;c[h>>2]=((a[(c
[l>>2]|0)+-2>>0]<<16>>16<<8|d[(c[l>>2]|0)+-2+1>>0]<
x3c;0)&65535)<<16>>16;c[k>>2]=((d[c[l>>2]>>0]&65535)<<8|(d
[(c[l>>2]|0)+1>>0]&65535)<<0)&65535;c[j>>2]=(c[j>>2]|0)-(c[n>
x3e;2]|0);if(!(c[k>>2]|0?(c[j>>2]|0)>>>0<(c[g>>2]|0)>>>0:0)){r=
c[m>>2]|0;i=p;return r|0}c[l>>2]=(c[l>>2]|0)+((c[k>>2]|0)+(c[j>>2]<<
1));c[j>>2]=((d[c[l>>2]>>0]&65535)<<8|(d[(c[l>>2]|0)+1>>0]&
;65535)<<0)&65535;if(!(c[j>>2]|0)){r=c[m>>2]|0;i=p;return r|0}c[m>>2]=(c[j>>
;2]|0)+(c[h>>2]|0)&65535;r=c[m>>2]|0;i=p;return r|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,m=0,n=0;n=i;i=i+32|0;e=n+28|0;f=n+24|0;k=n+20|0;h=n+16|0;g=n+12|0;j=n+8|0;m=n+4|0;l=n;c[e>>2]=a;c[f>>
;2]=b;c[k>>2]=0;if((c[f>>2]|0)>>>0>=65536){a=c[k>>2]|0;i=n;return a|0}c[h>
;>2]=c[f>>2]&255;c[g>>2]=(c[f>>2]|0)>>>8;c[j>>2]=(c[e>>
;2]|0)+6;c[m>>2]=(c[e>>2]|0)+518;if(!(c[g>>2]|0)){c[l>>2]=c[m>>2];c[j>>
;2]=(c[j>>2]|0)+(c[h>>2]<<1);if((((d[c[j>>2]>>0]|0)&65535)<<8|((
d[(c[j>>2]|0)+1>>0]|0)&65535)<<0)&65535|0){a=c[k>>2]|0;i=n;return a|0}}else{c[
j>>2]=(c[j>>2]|0)+(c[g>>2]<<1);c[l>>2]=(c[m>>2]|0)+((((d[c[j>
x3e;2]>>0]|0)&65535)<<8|((d[(c[j>>2]|0)+1>>0]|0)&65535)<<0)&65535
&-8);if((c[l>>2]|0)==(c[m>>2]|0)){a=c[k>>2]|0;i=n;return a|0}}c[k>>2]=c[l>>
;2];a=c[k>>2]|0;i=n;return a|0}function jj(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;v=i;i=i+64|0;w=v+56|0;f=v+52|0;t=v+48|0;l=v+44|0;q=v+40|0;h=v+36|0;s=v+32|0;o=v+28|0;r=v+24|0;j=v+20|0;k=v+16|0;n=
v+12|0;g=v+8|0;p=v+4|0;m=v;c[w>>2]=b;c[f>>2]=e;c[t>>2]=c[(c[w>>2]|0)+16>>2];c[
l>>2]=0;c[q>>2]=0;c[h>>2]=(c[c[f>>2]>>2]|0)+1;a:while(1){if((c[h>>2]|
0)>>>0>=65536){u=15;break}c[s>>2]=ij(c[t>>2]|0,c[h>>2]|0)|0;b:do if(c[s>
x3e;2]|0?(c[o>>2]=c[s>>2],c[o>>2]=(c[o>>2]|0)+2,c[r>>2]=((d[(c[o>>2]|
0)+-2>>0]&65535)<<8|(d[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535,c[
o>>2]=(c[o>>2]|0)+2,c[j>>2]=((d[(c[o>>2]|0)+-2>>0]&65535)<<8|(d
[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535,c[o>>2]=(c[o>>2]|0)+2,c[k>
;>2]=((a[(c[o>>2]|0)+-2>>0]<<16>>16<<8|d[(c[o>>2]|0)+-2+1>
x3e;0]<<0)&65535)<<16>>16,c[n>>2]=((d[c[o>>2]>>0]&65535)
x3c;<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535,c[g>>2]=c[h>>2]&
;255,c[n>>2]|0):0){if((c[g>>2]|0)>>>0<(c[r>>2]|0)>>>0){c[g>
;>2]=c[r>>2];c[p>>2]=0}else c[p>>2]=(c[g>>2]|0)-(c[r>>2]|0);c[o>>
;2]=(c[o>>2]|0)+((c[n>>2]|0)+(c[p>>2]<<1));c[h>>2]=(c[h>>2]&-256
)+(c[g>>2]|0);while(1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break
b;c[o>>2]=(c[o>>2]|0)+2;c[m>>2]=((d[(c[o>>2]|0)+-2>>0]&65535)<<
;8|(d[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535;if(c[m>>2]|0?(c[l>>2]=(c
[m>>2]|0)+(c[k>>2]|0)&65535,c[l>>2]|0):0)break a;c[p>>2]=(c[p>>2]|0)+1;c[
h>>2]=(c[h>>2]|0)+1}}while(0);c[h>>2]=(c[h>>2]&-256)+256}if((u|0)==15){u=c[q>
x3e;2]|0;w=c[f>>2]|0;c[w>>2]=u;w=c[l>>2]|0;i=v;return w|0}c[q>>2]=c[h>>2];u=c[
q>>2]|0;w=c[f>>2]|0;c[w>>2]=u;w=c[l>>2]|0;i=v;return w|0}function kj(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;x=i;i=i+80|0;g=x+64|0;h=x+60|0;v=x+56|0;q=x+52|0;t=x+48
|0;s=x+44|0;f=x+40|0;w=x+36|0;m=x+32|0;o=x+28|0;l=x+24|0;j=x+20|0;u=x+16|0;k=x+12|0;n=x+8|0;r=x+4|0;p=x;c[g>>2]=b;c[h
x3e;>2]=e;c[v>>2]=(c[g>>2]|0)+2;c[q>>2]=((d[c[v>>2]>>0]&65535)<
x3c;8|(d[(c[v>>2]|0)+1>>0]&65535)<<0)&65535;if((c[q>>2]|0)>>>0
x3c;518?1:((c[g>>2]|0)+(c[q>>2]|0)|0)>>>0>(c[(c[h>>2]|0)+4>>2]|0)>
;>>0)sc(c[h>>2]|0,8);c[f>>2]=(c[g>>2]|0)+6;c[v>>2]=c[f>>2];c[s>
x3e;2]=0;c[t>>2]=0;while(1){f=c[v>>2]|0;if((c[t>>2]|0)>>>0>=256)break;c[v>
;>2]=f+2;c[o>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+
1>>0]&65535)<<0)&65535;if((c[(c[h>>2]|0)+8>>2]|0)>>>0>=2?c
[o>>2]&7|0:0)sc(c[h>>2]|0,8);c[o>>2]=(c[o>>2]|0)>>>3;if((c[o>
x3e;2]|0)>>>0>(c[s>>2]|0)>>>0)c[s>>2]=c[o>>2];c[t>>2]=(
c[t>>2]|0)+1}c[w>>2]=f;c[m>>2]=(c[w>>2]|0)+((c[s>>2]|0)+1<<3);if((c[
m>>2]|0)>>>0>(c[(c[h>>2]|0)+4>>2]|0)>>>0)sc(c[h>>2]|0
,8);c[t>>2]=0;while(1){if((c[t>>2]|0)>>>0>(c[s>>2]|0)>>>0)break
;c[v>>2]=(c[v>>2]|0)+2;c[l>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8
|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[v>>2]=(c[v>>2]|0)+2;c[j
x3e;>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>>0]&
;65535)<<0)&65535;c[v>>2]=(c[v>>2]|0)+2;c[k>>2]=((a[(c[v>>2]|0)+-2>
x3e;0]<<16>>16<<8|d[(c[v>>2]|0)+-2+1>>0]<<0)&65535)<<
16>>16;c[v>>2]=(c[v>>2]|0)+2;c[u>>2]=((d[(c[v>>2]|0)+-2>>0]&65535
)<<8|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0)&65535;a:do if(c[j>>2]|0){do
if((c[(c[h>>2]|0)+8>>2]|0)>>>0>=2){if((c[l>>2]|0)>>>0<256?((
c[l>>2]|0)+(c[j>>2]|0)|0)>>>0<=256:0)break;sc(c[h>>2]|0,8)}while(0);if(c[u>
;>2]|0){c[n>>2]=(c[v>>2]|0)+-2+(c[u>>2]|0);if(!((c[n>>2]|0)>>>0>
;=(c[m>>2]|0)>>>0?((c[n>>2]|0)+(c[j>>2]<<1)|0)>>>0<=((
c[g>>2]|0)+(c[q>>2]|0)|0)>>>0:0))sc(c[h>>2]|0,9);if((c[(c[h>>2]|0)+8>
;>2]|0)>>>0>=1){c[r>>2]=(c[v>>2]|0)+(c[j>>2]<<1);while(1){if((c
[v>>2]|0)>>>0>=(c[r>>2]|0)>>>0)break a;c[v>>2]=(c[v>>
2]|0)+2;c[p>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>
;>0]&65535)<<0)&65535;if(!(c[p>>2]|0))continue;c[p>>2]=(c[p>>2]|0)+(c[k
x3e;>2]|0)&65535;if((c[p>>2]|0)>>>0<(c[(c[h>>2]|0)+172>>2]|0)>
x3e;>0)continue;sc(c[h>>2]|0,16)}}}}while(0);c[t>>2]=(c[t>>2]|0)+1}i=x;return 0}function lj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(
c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=2;c[c[f>>2]>>2]=(((d[c
[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&65535)<<0
)&65535;i=e;return 0}function mj(a,b){a=a|0;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[f>>2]=a;
c[h>>2]=b;c[(c[f>>2]|0)+16>>2]=c[h>>2];c[g>>2]=(c[h>>2]|0)+6;c[(c[f
x3e;>2]|0)+32>>2]=((((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1
x3e;>0]|0)&65535)<<0)&65535)>>1;c[(c[f>>2]|0)+24>>2]=-1;c[(c[f>>
;2]|0)+28>>2]=0;i=e;return 0}function nj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>
;>2]=a;c[f>>2]=b;do if((c[f>>2]|0)>>>0<65536){b=c[e>>2]|0;if(c[(c[e>
x3e;2]|0)+20>>2]&1|0){c[d>>2]=oj(b,f,0)|0;break}else{c[d>>2]=pj(b,f,0)|0;break}}else c[d>
;>2]=0;while(0);i=g;return c[d>>2]|0}function oj(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;z=i;i=i+80|0;g=z+60|0;h=z+56|0;j=z+52|0;k=z+64|0;t=z+48|0;x=z+44|0;n=z+40|0;u=z+36|0;m=
z+32|0;q=z+28|0;s=z+24|0;l=z+20|0;p=z+16|0;v=z+12|0;w=z+8|0;o=z+4|0;r=z;c[h>>2]=b;c[j>>2]=e;a[k>>0
]=f;c[l>>2]=c[c[j>>2]>>2];c[p>>2]=0;c[v>>2]=(c[(c[h>>2]|0)+16>
x3e;2]|0)+6;c[t>>2]=((d[c[v>>2]>>0]&65535)<<8|(d[(c[v>>2]|0)+1>>
;0]&65535)<<0)&65535&-2;c[s>>2]=(c[t>>2]|0)>>>1;if(!(c[s>>
2]|0)){c[g>>2]=0;y=c[g>>2]|0;i=z;return y|0}if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1
;while(1){if((c[l>>2]|0)>>>0>65535)break;c[v>>2]=(c[(c[h>>2]|0)+16>>
2]|0)+14;c[w>>2]=(c[(c[h>>2]|0)+16>>2]|0)+16+(c[t>>2]|0);c[q>>2]=0;while(1){if
((c[q>>2]|0)>>>0>=(c[s>>2]|0)>>>0)break;c[v>>2]=(c[v>>
;2]|0)+2;c[n>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>
;>0]&65535)<<0)&65535;c[w>>2]=(c[w>>2]|0)+2;c[x>>2]=((d[(c[w>>2
]|0)+-2>>0]&65535)<<8|(d[(c[w>>2]|0)+-2+1>>0]&65535)<<0)&65535;
if((c[l>>2]|0)>>>0>=(c[x>>2]|0)>>>0?(c[l>>2]|0)>>>
;0<=(c[n>>2]|0)>>>0:0){c[v>>2]=(c[w>>2]|0)+-2+(c[t>>2]|0);c[m>
x3e;2]=((a[c[v>>2]>>0]<<16>>16<<8|d[(c[v>>2]|0)+1>>0]<
;<0)&65535)<<16>>16;c[v>>2]=(c[v>>2]|0)+(c[t>>2]|0);c[u>>2
]=((d[c[v>>2]>>0]&65535)<<8|(d[(c[v>>2]|0)+1>>0]&65535)<<0
)&65535;if((((c[x>>2]|0)==65535?(c[q>>2]|0)>>>0>=((c[s>>2]|0)-1|0)>
x3e;>0:0)&(c[n>>2]|0)==65535?(c[o>>2]=c[c[h>>2]>>2],c[r>>2]=(c[(c[o
x3e;>2]|0)+500>>2]|0)+(c[(c[o>>2]|0)+504>>2]|0),c[u>>2]|0):0)?((c[v>>2]|0
)+(c[u>>2]|0)+2|0)>>>0>(c[r>>2]|0)>>>0:0){c[m>>2]=1;c[u>
x3e;2]=0}if((c[u>>2]|0)!=65535){y=15;break}}c[q>>2]=(c[q>>2]|0)+1}do if((y|0)==15){y=0;if(!(c[u>
;>2]|0)){c[p>>2]=(c[l>>2]|0)+(c[m>>2]|0)&65535;break}c[v>>2]=(c[v>>2
]|0)+((c[u>>2]|0)+((c[l>>2]|0)-(c[x>>2]|0)<<1));c[p>>2]=((d[c[v>>2]
x3e;>0]&65535)<<8|(d[(c[v>>2]|0)+1>>0]&65535)<<0)&65535;if(c[p>
x3e;2]|0)c[p>>2]=(c[p>>2]|0)+(c[m>>2]|0)&65535}while(0);if((a[k>>0]|0)==0|(c[p>
;>2]|0)!=0)break;c[l>>2]=(c[l>>2]|0)+1}if((d[k>>0]|0)!=0&(c[p>>2]|0)!=0)c[c[j
x3e;>2]>>2]=c[l>>2];c[g>>2]=c[p>>2];y=c[g>>2]|0;i=z;return y|0}function pj
(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,D=0,E=0,F=
0,G=0;G=i;i=i+96|0;g=G+88|0;h=G+84|0;j=G+80|0;k=G+92|0;z=G+76|0;E=G+72|0;o=G+68|0;A=G+64|0;n=G+60|0;t=G+56|0;v=G+52|0;u=G+48|0;y
=G+44|0;l=G+40|0;q=G+36|0;C=G+32|0;p=G+28|0;s=G+24|0;r=G+20|0;D=G+16|0;B=G+12|0;w=G+8|0;x=G+4|0;m=G;c[h>>2]=b;c[j>
;>2]=e;a[k>>0]=f;c[l>>2]=c[c[j>>2]>>2];c[q>>2]=0;c[C>>2]=(c[(c[
h>>2]|0)+16>>2]|0)+6;c[z>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C
x3e;>2]|0)+1>>0]&65535)<<0)&65535&-2;if(!(c[z>>2]|0)){c[g>>2]=0;F=c[
g>>2]|0;i=G;return F|0}c[y>>2]=(c[z>>2]|0)>>>1;c[u>>2]=c[y>>2];
c[o>>2]=65535;if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1;c[v>>2]=0;c[t>>2]=c
[y>>2];while(1){if((c[v>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[u
x3e;>2]=((c[v>>2]|0)+(c[t>>2]|0)|0)>>>1;c[C>>2]=(c[(c[h>>2]|0)+16>
;>2]|0)+14+(c[u>>2]<<1);c[o>>2]=((d[c[C>>2]>>0]&65535)<<8|(
d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(2+(c[z>
;>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>
;0]&65535)<<0)&65535;if((c[l>>2]|0)>>>0<(c[E>>2]|0)>>>
;0){c[t>>2]=c[u>>2];continue}if((c[l>>2]|0)>>>0<=(c[o>>2]|0)>
x3e;>0){F=11;break}c[v>>2]=(c[u>>2]|0)+1}do if((F|0)==11){c[C>>2]=(c[C>>2]|0)+(c[z
x3e;>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>>
;2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>
x3e;2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0
]&65535)<<0)&65535;if((((c[E>>2]|0)==65535?(c[u>>2]|0)>>>0>=((c[y>
;>2]|0)-1|0)>>>0:0)&(c[o>>2]|0)==65535?(c[p>>2]=c[c[h>>2]>>2],c
[s>>2]=(c[(c[p>>2]|0)+500>>2]|0)+(c[(c[p>>2]|0)+504>>2]|0),c[A>>2]|0
):0)?((c[C>>2]|0)+(c[A>>2]|0)+2|0)>>>0>(c[s>>2]|0)>>>0:0){c[n
x3e;>2]=1;c[A>>2]=0}if(c[(c[h>>2]|0)+20>>2]&2|0){c[t>>2]=c[u>>2];if((
c[A>>2]|0)==65535)c[u>>2]=(c[t>>2]|0)+1;c[r>>2]=c[t>>2];while(1){if((c[r>
x3e;2]|0)>>>0<=0)break;c[B>>2]=c[C>>2];c[C>>2]=(c[(c[h>>2]|0)+16>
;>2]|0)+14+((c[r>>2]|0)-1<<1);c[D>>2]=((d[c[C>>2]>>0]&65535)<
x3c;8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[l>>2]|0)>>>0
x3e;(c[D>>2]|0)>>>0){F=21;break}c[o>>2]=c[D>>2];c[C>>2]=(c[C>>2
]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>
;2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>
;>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>>2]|0)+1>>0]
x3c;<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>
;2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<
;0)&65535;if((c[A>>2]|0)!=65535)c[u>>2]=(c[r>>2]|0)-1;c[r>>2]=(c[r>>2]|0)+-
1}if((F|0)==21)c[C>>2]=c[B>>2];if((c[u>>2]|0)==((c[t>>2]|0)+1|0)){if((c[r>>2]|
0)!=(c[t>>2]|0)){c[C>>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[t>>2]<<1);c[
o>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535
)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>
;2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>
;>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>
x3e;16<<8|d[(c[C>>2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>
;2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(
d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535}c[u>>2]=c[t>>2];c[r>>
2]=(c[t>>2]|0)+1;while(1){if((c[r>>2]|0)>>>0>=(c[y>>2]|0)>>>0)break
;c[C>>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[r>>2]<<1);c[w>>2]=((d[c[C>
;>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c
[C>>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[x>>2]=((d[c[C>>2]>>0]&65535
)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[l>>2]|0)>>
;>0<(c[x>>2]|0)>>>0)break;c[o>>2]=c[w>>2];c[E>>2]=c[x>>
;2];c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<
;16>>16<<8|d[(c[C>>2]|0)+1>>0]<<0)&65535)<<16>>16;c[C
>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[A>>2]|0)!=65535)c[u>
x3e;2]=c[r>>2];c[r>>2]=(c[r>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+-1;if((c[u>>
;2]|0)==(c[t>>2]|0)){c[u>>2]=c[r>>2];break}}if((c[u>>2]|0)!=(c[r>>2]|0)){c[C
x3e;>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[u>>2]<<1);c[o>>2]=((d[c[C>>
;2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>
;>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(
c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>
x3e;2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>
;>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>
;0]&65535)<<0)&65535}}else if((c[A>>2]|0)==65535)break;if(!(c[A>>2]|0)){c[q>>2
]=(c[l>>2]|0)+(c[n>>2]|0)&65535;break}c[C>>2]=(c[C>>2]|0)+((c[A>>2]|0)+((
c[l>>2]|0)-(c[E>>2]|0)<<1));c[q>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if(c[q>>2]|0)c[q>>2]=(
c[q>>2]|0)+(c[n>>2]|0)&65535}while(0);do if(a[k>>0]|0){c[m>>2]=c[h>>2];if
((c[l>>2]|0)>>>0>(c[o>>2]|0)>>>0?(c[u>>2]=(c[u>>2]|0)+
1,(c[u>>2]|0)==(c[y>>2]|0)):0){c[g>>2]=0;F=c[g>>2]|0;i=G;return F|0}if(qj(c[m>>
;2]|0,c[u>>2]|0)|0){if(!(c[q>>2]|0))break;c[c[j>>2]>>2]=c[l>>2];break}c[(c[m
x3e;>2]|0)+24>>2]=c[l>>2];if(c[q>>2]|0)c[(c[m>>2]|0)+28>>2]=c[q>>
;2];else{c[(c[m>>2]|0)+24>>2]=c[l>>2];rj(c[m>>2]|0);c[q>>2]=c[(c[m>>
2]|0)+28>>2]}if(c[q>>2]|0)c[c[j>>2]>>2]=c[(c[m>>2]|0)+24>>2]}while(0
);c[g>>2]=c[q>>2];F=c[g>>2]|0;i=G;return F|0}function qj(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;p=i;i=i+48|0;k=p+32|0;l=p+28|0;m=p+24|0;j=p+20|0;o=p+16|0;h=p+12|0;n=p+8|0;f=p+4|0;g=p;c[l>>2]=b;c
[m>>2]=e;c[j>>2]=c[(c[l>>2]|0)+16>>2];c[h>>2]=c[(c[l>>2]|0)+32>
x3e;2];while(1){if((c[m>>2]|0)>>>0>=(c[h>>2]|0)>>>0){b=12;break}c[o>
x3e;2]=(c[j>>2]|0)+14+(c[m>>2]<<1);c[(c[l>>2]|0)+44>>2]=((d[c[o>>2]
x3e;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;c[o>>
;2]=(c[o>>2]|0)+(2+(c[h>>2]<<1));c[(c[l>>2]|0)+40>>2]=((d[c[o>>2]>
;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;c[o>>
2]=(c[o>>2]|0)+(c[h>>2]<<1);c[(c[l>>2]|0)+48>>2]=((a[c[o>>2]>
x3e;0]<<16>>16<<8|d[(c[o>>2]|0)+1>>0]<<0)&65535)<<16
x3e;>16;c[o>>2]=(c[o>>2]|0)+(c[h>>2]<<1);c[n>>2]=((d[c[o>>2]>
;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;if(((((c[m>
;>2]|0)>>>0>=((c[h>>2]|0)-1|0)>>>0?(c[(c[l>>2]|0)+40>>2]|0
)==65535:0)?(c[(c[l>>2]|0)+44>>2]|0)==65535:0)?(c[f>>2]=c[c[l>>2]>>2],c[g>
;>2]=(c[(c[f>>2]|0)+500>>2]|0)+(c[(c[f>>2]|0)+504>>2]|0),c[n>>2]|0):0)?((
c[o>>2]|0)+(c[n>>2]|0)+2|0)>>>0>(c[g>>2]|0)>>>0:0){c[(c[l>
x3e;2]|0)+48>>2]=1;c[n>>2]=0}if((c[n>>2]|0)!=65535){b=10;break}c[m>>2]=(c[m>>2
]|0)+1}if((b|0)==10){c[(c[l>>2]|0)+52>>2]=c[n>>2]|0?(c[o>>2]|0)+(c[n>>2]|0)|0:
0;c[(c[l>>2]|0)+36>>2]=c[m>>2];c[k>>2]=0;o=c[k>>2]|0;i=p;return o|0}else if((b
|0)==12){c[k>>2]=-1;o=c[k>>2]|0;i=p;return o|0}return 0}function rj(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;n=i;i=i+32|0;j=n+28|0;k=n+24|0;h=n+20|0;f=n+16|0;e=n+12|0;g=n+8|0;l=n+4|0;m=n;c[j>>2]=a;a:do if((c[(c[j
x3e;>2]|0)+24>>2]|0)>>>0<65535){c[k>>2]=(c[(c[j>>2]|0)+24>>2]|0
)+1;if((c[k>>2]|0)>>>0<(c[(c[j>>2]|0)+40>>2]|0)>>>0)c[k>
x3e;2]=c[(c[j>>2]|0)+40>>2];b:while(1){c[h>>2]=c[(c[j>>2]|0)+52>>2];c[f>
x3e;2]=c[(c[j>>2]|0)+44>>2];c[e>>2]=c[(c[j>>2]|0)+48>>2];c:do if((c[k>>
;2]|0)>>>0<=(c[f>>2]|0)>>>0){if(!(c[h>>2]|0))while(1){c[m>>2]=(
c[k>>2]|0)+(c[e>>2]|0)&65535;b=c[k>>2]|0;if(c[m>>2]|0){a=12;break b}b=b+1|0;c[k>
;>2]=b;if(b>>>0>(c[f>>2]|0)>>>0)break c}c[g>>2]=(c[h>>2]|0
)+((c[k>>2]|0)-(c[(c[j>>2]|0)+40>>2]|0)<<1);do{c[g>>2]=(c[g>>2]|0)+2
;c[l>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+-2+1>
x3e;0]|0)&65535)<<0)&65535;if(c[l>>2]|0?(c[l>>2]=(c[l>>2]|0)+(c[e>>2
]|0)&65535,c[l>>2]|0):0){a=9;break b}b=(c[k>>2]|0)+1|0;c[k>>2]=b}while(b>>>0
x3c;=(c[f>>2]|0)>>>0)}while(0);if((qj(c[j>>2]|0,(c[(c[j>>2]|0)+36>>2]|0)+
1|0)|0)<0)break a;if((c[k>>2]|0)>>>0>=(c[(c[j>>2]|0)+40>>2]|0)>>
;>0)continue;c[k>>2]=c[(c[j>>2]|0)+40>>2]}if((a|0)==9){c[(c[j>>2]|0)+24>>
2]=c[k>>2];c[(c[j>>2]|0)+28>>2]=c[l>>2];i=n;return}else if((a|0)==12){c[(c[j>>
2]|0)+24>>2]=b;c[(c[j>>2]|0)+28>>2]=c[m>>2];i=n;return}}while(0);c[(c[j>>2]|0)+
24>>2]=-1;c[(c[j>>2]|0)+28>>2]=0;i=n;return}function sj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=b;if((c[c[f>>2]>>
;2]|0)>>>0>=65535){c[d>>2]=0;h=c[d>>2]|0;i=j;return h|0}a=c[e>>2]|0;do if(!(c[(
c[e>>2]|0)+20>>2]&1|0)){c[g>>2]=a;if((c[c[f>>2]>>2]|0)!=(c[(c[g>>
;2]|0)+24>>2]|0)){c[h>>2]=pj(c[e>>2]|0,c[f>>2]|0,1)|0;break}rj(c[g>>2]|0);c[h
x3e;>2]=c[(c[g>>2]|0)+28>>2];if(c[h>>2]|0)c[c[f>>2]>>2]=c[(c[g>>
;2]|0)+24>>2]}else c[h>>2]=oj(a,c[f>>2]|0,1)|0;while(0);c[d>>2]=c[h>>2];h=c[d
x3e;>2]|0;i=j;return h|0}function tj(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,D=0,E=0,F=0,G=0,H=0;H=i;i=i+112|0;n=H+104|0;o=H+100|0;B=H+96|0;x=H+92|0;g=H+88|0;m=H+84|0;j=H+80|0;f=
H+76|0;s=H+72|0;z=H+68|0;r=H+64|0;l=H+60|0;h=H+56|0;k=H+52|0;G=H+48|0;q=H+44|0;A=H+40|0;y=H+36|0;w=H+32|0;v=H+28|0;p=H+24|0;F=H+
20|0;D=H+16|0;C=H+12|0;E=H+8|0;t=H+4|0;u=H;c[n>>2]=b;c[o>>2]=e;c[B>>2]=(c[n>>2]|0)+2;c[B
>>2]=(c[B>>2]|0)+2;c[x>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<<8|(d[(
c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[r>>2]=0;if((c[x>>2]|0)>
x3e;>0<16)sc(c[o>>2]|0,8);if(((c[n>>2]|0)+(c[x>>2]|0)|0)>>>0>(c[(c[o
>>2]|0)+4>>2]|0)>>>0){if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=
1)sc(c[o>>2]|0,8);c[x>>2]=(c[(c[o>>2]|0)+4>>2]|0)-(c[n>>2]|0)}c[B>>2
]=(c[n>>2]|0)+6;c[B>>2]=(c[B>>2]|0)+2;c[z>>2]=((d[(c[B>>2]|0)+-2>>0]
x26;65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if((c[(c[o>>2
]|0)+8>>2]|0)>>>0>=2?c[z>>2]&1|0:0)sc(c[o>>2]|0,8);c[z>>2]=((c[
z>>2]|0)>>>0)/2|0;if((c[x>>2]|0)>>>0<(16+(c[z>>2]<<1
x3c;<2)|0)>>>0)sc(c[o>>2]|0,8);do if((c[(c[o>>2]|0)+8>>2]|0)>>>
0>=2){c[B>>2]=(c[B>>2]|0)+2;c[l>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<
;<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[B>>2]=(c[B>>2]|0
)+2;c[h>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<<8|(d[(c[B>>2]|0)+-2+1>>
;0]&65535)<<0)&65535;c[B>>2]=(c[B>>2]|0)+2;c[k>>2]=((d[(c[B>>2]|0)+-
2>>0]&65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if((c[
l>>2]|c[k>>2])&1|0)sc(c[o>>2]|0,8);c[l>>2]=((c[l>>2]|0)>>>
0)/2|0;c[k>>2]=((c[k>>2]|0)>>>0)/2|0;if((((c[l>>2]|0)>>>0<=(c[z
>>2]|0)>>>0?c[l>>2]<<1>>>0>=(c[z>>2]|0)>>
x3e;0:0)?((c[l>>2]|0)+(c[k>>2]|0)|0)==(c[z>>2]|0):0)?(c[l>>2]|0)==(1<<c[h>
;>2]|0):0)break;sc(c[o>>2]|0,8)}while(0);c[g>>2]=(c[n>>2]|0)+14;c[m>>2]=(c[n>
x3e;2]|0)+16+(c[z>>2]<<1);c[f>>2]=(c[m>>2]|0)+(c[z>>2]<<1);c[j>
x3e;2]=(c[f>>2]|0)+(c[z>>2]<<1);c[s>>2]=(c[j>>2]|0)+(c[z>>2]<
x3c;1);if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=2?(c[B>>2]=(c[g>>2]|0)+((c[z
x3e;>2]|0)-1<<1),(((d[c[B>>2]>>0]&65535)<<8|(d[(c[B>>2]|0)+1>
x3e;0]&65535)<<0)&65535|0)!=65535):0)sc(c[o>>2]|0,8);c[w>>2]=0;c[v>>2]=0;c[F
x3e;>2]=c[m>>2];c[D>>2]=c[g>>2];c[C>>2]=c[f>>2];c[E>>2]=c[j>
;>2];c[y>>2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[z>>2]|0)>>>
0)break;c[B>>2]=c[E>>2];c[F>>2]=(c[F>>2]|0)+2;c[G>>2]=((d[(c[F>>2]|0
)+-2>>0]&65535)<<8|(d[(c[F>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[D
>>2]=(c[D>>2]|0)+2;c[q>>2]=((d[(c[D>>2]|0)+-2>>0]&65535)<<8|(d[(
c[D>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+2;c[p>
x3e;2]=((a[(c[C>>2]|0)+-2>>0]<<16>>16<<8|d[(c[C>>2]|0)+-2+1>>
;0]<<0)&65535)<<16>>16;c[E>>2]=(c[E>>2]|0)+2;c[A>>2]=((d[(c[E
x3e;>2]|0)+-2>>0]&65535)<<8|(d[(c[E>>2]|0)+-2+1>>0]&65535)<<0)
x26;65535;if((c[G>>2]|0)>>>0>(c[q>>2]|0)>>>0)sc(c[o>>2]|0,8);do
if((c[y>>2]|0)>>>0>0?(c[G>>2]|0)>>>0<=(c[v>>2]|0)>
x3e;>0:0){if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=1){sc(c[o>>2]|0,8);break}if((c[
w>>2]|0)>>>0<=(c[G>>2]|0)>>>0?(c[v>>2]|0)>>>0<
;=(c[q>>2]|0)>>>0:0){c[r>>2]=c[r>>2]|2;break}c[r>>2]=c[r>>2]|1}
while(0);f=c[A>>2]|0;a:do if((c[A>>2]|0)!=0&(c[A>>2]|0)!=65535){c[B>>2]=(c[B>
x3e;2]|0)+f;do if((c[(c[o>>2]|0)+8>>2]|0)>>>0<1){if(!(((c[G>>2]|0)==65535?(c[y
>>2]|0)==((c[z>>2]|0)-1|0):0)&(c[q>>2]|0)==65535)){if((c[B>>2]|0)>>>
0>=(c[s>>2]|0)>>>0?((c[B>>2]|0)+((c[q>>2]|0)-(c[G>>2]|0)+1<<
;1)|0)>>>0<=(c[(c[o>>2]|0)+4>>2]|0)>>>0:0)break;sc(c[o>>2]|0,8)}}
else{if((c[B>>2]|0)>>>0>=(c[s>>2]|0)>>>0?((c[B>>2]|0)+((c[q>
;>2]|0)-(c[G>>2]|0)+1<<1)|0)>>>0<=((c[n>>2]|0)+(c[x>>2]|0)|0)
x3e;>>0:0)break;sc(c[o>>2]|0,8)}while(0);if((c[(c[o>>2]|0)+8>>2]|0)>>>0
x3e;=1){c[t>>2]=c[G>>2];while(1){if((c[t>>2]|0)>>>0>=(c[q>>2]|0)>
;>>0)break a;c[B>>2]=(c[B>>2]|0)+2;c[u>>2]=((d[(c[B>>2]|0)+-2>>0]&
;65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if(c[u>>2]|0?(c[
u>>2]=(c[u>>2]|0)+(c[p>>2]|0)&65535,(c[u>>2]|0)>>>0>=(c[(c[o>
;>2]|0)+172>>2]|0)>>>0):0)sc(c[o>>2]|0,16);c[t>>2]=(c[t>>2]|0)+1}}}else
if((f|0)==65535){if((c[(c[o>>2]|0)+8>>2]|0)>>>0<2?((c[G>>2]|0)==65535?(c[y>
;>2]|0)==((c[z>>2]|0)-1|0):0)&(c[q>>2]|0)==65535:0)break;sc(c[o>>2]|0,8)}while(0);c[w>
;>2]=c[G>>2];c[v>>2]=c[q>>2];c[y>>2]=(c[y>>2]|0)+1}i=H;return c[r>
x3e;2]|0}function uj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=
b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=4;c[c[f>>2]
x3e;>2]=(((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&
65535)<<0)&65535;i=e;return 0}function vj(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;h=i;i=i+32|0;n
=h+28|0;l=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;k=h+8|0;j=h+4|0;e=h;c[n>>2]=a;c[l>>2]=b;c[m>>2]=c[(c[n
>>2]|0)+16>>2];c[g>>2]=0;c[f>>2]=(c[m>>2]|0)+6;c[f>>2]=(c[f>>
;2]|0)+2;c[k>>2]=(((d[(c[f>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+-2+
1>>0]|0)&65535)<<0)&65535;c[f>>2]=(c[f>>2]|0)+2;c[j>>2]=(((d[(c[f>
;>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+-2+1>>0]|0)&65535)<<
;0)&65535;c[e>>2]=(c[l>>2]|0)-(c[k>>2]|0);if((c[e>>2]|0)>>>0>=(
c[j>>2]|0)>>>0){n=c[g>>2]|0;i=h;return n|0}c[f>>2]=(c[f>>2]|0)+(c[e>
x3e;2]<<1);c[g>>2]=(((d[c[f>>2]>>0]|0)&65535)<<8|((d[(c[f>>2]|0
)+1>>0]|0)&65535)<<0)&65535;n=c[g>>2]|0;i=h;return n|0}function wj(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;o=i;i=i+48|0;q=o+36|0;f=o+32|0;p=o+28|0;m=o+24|0;g=o+20|0;j=o+16|0;l=o+12|0;e=o+
8|0;h=o+4|0;k=o;c[q>>2]=a;c[f>>2]=b;c[p>>2]=c[(c[q>>2]|0)+16>>2];c[m>>
;2]=0;c[g>>2]=(c[c[f>>2]>>2]|0)+1;c[j>>2]=0;c[l>>2]=(c[p>>2]|0)+6;c[
l>>2]=(c[l>>2]|0)+2;c[e>>2]=(((d[(c[l>>2]|0)+-2>>0]|0)&65535)<<
8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[l>>2]=(c[l>>2]|0)+2
;c[h>>2]=(((d[(c[l>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>
x3e;0]|0)&65535)<<0)&65535;if((c[g>>2]|0)>>>0>=65536){p=c[m>>2]|0;q=
c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}if((c[g>>2]|0)>>>0<(c
[e>>2]|0)>>>0)c[g>>2]=c[e>>2];c[k>>2]=(c[g>>2]|0)-(c[e>>
;2]|0);c[l>>2]=(c[l>>2]|0)+(c[k>>2]<<1);while(1){if((c[k>>2]|0)>>>
;0>=(c[h>>2]|0)>>>0){n=9;break}c[l>>2]=(c[l>>2]|0)+2;c[j>>2]=(((d[(c
[l>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<
;<0)&65535;a=c[g>>2]|0;if(c[j>>2]|0)break;c[g>>2]=a+1;c[k>>2]=(c[k>>
2]|0)+1}if((n|0)==9){p=c[m>>2]|0;q=c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}c[m>
;>2]=a;p=c[m>>2]|0;q=c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}function xj(a,b
){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;k=l+12|0;j=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[
f>>2]=b;if(((c[e>>2]|0)+10|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>
;>0)sc(c[f>>2]|0,8);c[k>>2]=(c[e>>2]|0)+2;c[k>>2]=(c[k>>2]|0)+2;c[j>
x3e;2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)
x26;65535)<<0)&65535;c[k>>2]=(c[e>>2]|0)+8;c[k>>2]=(c[k>>2]|0)+2;c[g>
;>2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0
)&65535)<<0)&65535;if(!(((c[e>>2]|0)+(c[j>>2]|0)|0)>>>0<=(c[(c[f>
;>2]|0)+4>>2]|0)>>>0?(c[j>>2]|0)>>>0>=(10+(c[g>>2]<
x3c;1)|0)>>>0:0))sc(c[f>>2]|0,8);if(!((c[g>>2]|0)>>>0>0?(c[(c[f>>
;2]|0)+8>>2]|0)>>>0>=1:0)){i=l;return 0}do{c[k>>2]=(c[k>>2]|0)+2;c[h>>
;2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)&
;65535)<<0)&65535;if((c[h>>2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)
x3e;>>0)sc(c[f>>2]|0,16);c[g>>2]=(c[g>>2]|0)+-1}while((c[g>>2]|0)>>
x3e;0>0);i=l;return 0}function yj(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;f=e+4|0;g=e;c[h>>2]=a
;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=6;
c[c[f>>2]>>2]=(((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1
x3e;>0]|0)&65535)<<0)&65535;i=e;return 0}function zj(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;m=i;i=i+48|0;o=m+32|0;h=m+28|0;n=m+24|0;j=m+20|0;g=m+16|0;f=m+12|0;k=m+8|0;e=m+4|0;l=m;c[o>>2]=a;c[h>
x3e;2]=b;c[n>>2]=c[(c[o>>2]|0)+16>>2];c[j>>2]=0;c[g>>2]=(c[n>>2]|0)+
8204;c[g>>2]=(c[g>>2]|0)+4;c[f>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(
c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>
;>2]|0)+-4+3>>0]|0)<<0;while(1){if((c[f>>2]|0)>>>0<=0){b=7;break}c[g>
;>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>
;2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-
4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[e>>2]=(d[(c[g>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[l>
x3e;2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if((c[h
x3e;>2]|0)>>>0<(c[k>>2]|0)>>>0){b=7;break}if((c[h>>2]|0)>>
x3e;0<=(c[e>>2]|0)>>>0){b=5;break}c[f>>2]=(c[f>>2]|0)+-1}if((b|0)==5){c[j>
;>2]=(c[l>>2]|0)+(c[h>>2]|0)-(c[k>>2]|0);o=c[j>>2]|0;i=m;return o|0}else if((b|0)==
7){o=c[j>>2]|0;i=m;return o|0}return 0}function Aj(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;p=i;i=i+48|0;r=p+40|0;e=p+36|0;l=p+32|0;f=p+28|0;h=p+24|0;q=p+20|0;k=p+16|0;j=p+12|0;m=p+8|0;g=p+4|0;n=p;c[r>>2]=
a;c[e>>2]=b;c[l>>2]=0;c[f>>2]=(c[c[e>>2]>>2]|0)+1;c[h>>2]=0;c[q>
;>2]=c[(c[r>>2]|0)+16>>2];c[k>>2]=(c[q>>2]|0)+8204;c[k>>2]=(c[k>>
;2]|0)+4;c[j>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<
;<0;c[k>>2]=(c[q>>2]|0)+8208;while(1){if((c[j>>2]|0)>>>0<=0){o=9;break}c[
k>>2]=(c[k>>2]|0)+4;c[m>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>
;>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>
2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>2]|0)+4;c[g>>2]=(d[(c[k>>2]|0)+-4
>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>
x3e;0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>2]|0)+4;c[n
>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<
x3c;16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;if
((c[f>>2]|0)>>>0<(c[m>>2]|0)>>>0)c[f>>2]=c[m>>2];if((
c[f>>2]|0)>>>0<=(c[g>>2]|0)>>>0?(c[h>>2]=(c[f>>2]|0)-(
c[m>>2]|0)+(c[n>>2]|0),c[h>>2]|0):0)break;c[j>>2]=(c[j>>2]|0)+-1}if((o|0)==9){
q=c[l>>2]|0;r=c[e>>2]|0;c[r>>2]=q;r=c[h>>2]|0;i=p;return r|0}c[l>>2]=c[f>
x3e;2];q=c[l>>2]|0;r=c[e>>2]|0;c[r>>2]=q;r=c[h>>2]|0;i=p;return r|0}function Bj(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;t=i;i=i+64|0;e=t+52|0;f=t+48|0;q=t+44|0;k=t+40|0;m=t+36
|0;p=t+32|0;o=t+28|0;r=t+24|0;h=t+20|0;s=t+16|0;g=t+12|0;l=t+8|0;j=t+4|0;n=t;c[e>>2]=a;c[f>>2]=b;c[q>
x3e;2]=(c[e>>2]|0)+4;if(((c[e>>2]|0)+16+8192|0)>>>0>(c[(c[f>>2]|0)+4>>
;2]|0)>>>0)sc(c[f>>2]|0,8);c[q>>2]=(c[q>>2]|0)+4;c[m>>2]=(d[(c[q>>
;2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-
4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;if((c[m>>2]|0)>>
;>0<8208?1:(c[m>>2]|0)>>>0>((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>
2]|0)|0)>>>0)sc(c[f>>2]|0,8);c[k>>2]=(c[e>>2]|0)+12;c[q>>2]=(c[k>>
;2]|0)+8192;c[q>>2]=(c[q>>2]|0)+4;c[p>>2]=(d[(c[q>>2]|0)+-4>>0]|0)<<
24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(
c[q>>2]|0)+-4+3>>0]|0)<<0;if(((c[q>>2]|0)+((c[p>>2]|0)*12|0)|0)>>>
;0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[l>>2]=0;c[o>
x3e;2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[q>>
;2]=(c[q>>2]|0)+4;c[r>>2]=(d[(c[q>>2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3
x3e;>0]|0)<<0;c[q>>2]=(c[q>>2]|0)+4;c[h>>2]=(d[(c[q>>2]|0)+-4>>
0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;c[q>>2]=(c[q>>2]|0)+4;c[s>>
;2]=(d[(c[q>>2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(
c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;if((c[r>
;>2]|0)>>>0>(c[h>>2]|0)>>>0)sc(c[f>>2]|0,8);if((c[o>>2]|0)
x3e;>>0>0?(c[r>>2]|0)>>>0<=(c[l>>2]|0)>>>0:0)sc(c[f>
x3e;2]|0,8);a:do if((c[(c[f>>2]|0)+8>>2]|0)>>>0>=1){if(((c[s>>2]|0)+(c[h>
x3e;2]|0)-(c[r>>2]|0)|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)>>>0)sc(
c[f>>2]|0,16);c[g>>2]=(c[h>>2]|0)-(c[r>>2]|0)+1;if(c[r>>2]&-65536|0)while
(1){if((c[g>>2]|0)>>>0<=0)break a;c[j>>2]=(c[r>>2]|0)>>>16;c[n
x3e;>2]=c[r>>2]&65535;if(!((d[(c[k>>2]|0)+((c[j>>2]|0)>>>3)>>0]|
0)&128>>(c[j>>2]&7)))sc(c[f>>2]|0,8);if(!((d[(c[k>>2]|0)+((c[n>>2]|0
)>>>3)>>0]|0)&128>>(c[n>>2]&7)))sc(c[f>>2]|0,8);c[g>>
2]=(c[g>>2]|0)+-1;c[r>>2]=(c[r>>2]|0)+1}else{if(c[h>>2]&-65536|0)sc(c[f>>
2]|0,8);while(1){if((c[g>>2]|0)>>>0<=0)break a;c[n>>2]=c[r>>2]&65535;if((
d[(c[k>>2]|0)+((c[n>>2]|0)>>>3)>>0]|0)&128>>(c[n>>2]&
7)|0)sc(c[f>>2]|0,8);c[g>>2]=(c[g>>2]|0)+-1;c[r>>2]=(c[r>>2]|0)+1}}}while(0);c
[l>>2]=c[h>>2];c[o>>2]=(c[o>>2]|0)+1}i=t;return 0}function Cj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16
>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=8;c[c[f>>2]>>2]=(d[c[g>>2]>>
0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>>0]|0)<
x3c;8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function Dj(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;h=i;i=i+32|0;n=h+28|0;l=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;k=h+8|0;j=h+4|0;e=h;c[n>>2]=a;c[l>>
;2]=b;c[m>>2]=c[(c[n>>2]|0)+16>>2];c[g>>2]=0;c[f>>2]=(c[m>>2]|0)+12;
c[f>>2]=(c[f>>2]|0)+4;c[k>>2]=(d[(c[f>>2]|0)+-4>>0]|0)<<24|(d[(c[f
x3e;>2]|0)+-4+1>>0]|0)<<16|(d[(c[f>>2]|0)+-4+2>>0]|0)<<8|(d[(c[f>>
;2]|0)+-4+3>>0]|0)<<0;c[f>>2]=(c[f>>2]|0)+4;c[j>>2]=(d[(c[f>>2]|0)+-
4>>0]|0)<<24|(d[(c[f>>2]|0)+-4+1>>0]|0)<<16|(d[(c[f>>2]|0)+-4+2>
;>0]|0)<<8|(d[(c[f>>2]|0)+-4+3>>0]|0)<<0;c[e>>2]=(c[l>>2]|0)-(c
[k>>2]|0);if((c[e>>2]|0)>>>0>=(c[j>>2]|0)>>>0){n=c[g>>
;2]|0;i=h;return n|0}c[f>>2]=(c[f>>2]|0)+(c[e>>2]<<1);c[g>>2]=(((d[c[f>
x3e;2]>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+1>>0]|0)&65535)<<0)&65535
;n=c[g>>2]|0;i=h;return n|0}function Ej(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;m=i;i=i+48|0;o=m+
32|0;j=m+28|0;n=m+24|0;k=m+20|0;l=m+16|0;g=m+12|0;h=m+8|0;e=m+4|0;f=m;c[o>>2]=a;c[j>>2]=b;c[n>>2]=
c[(c[o>>2]|0)+16>>2];c[k>>2]=(c[c[j>>2]>>2]|0)+1;c[l>>2]=0;c[g>
x3e;2]=(c[n>>2]|0)+12;c[g>>2]=(c[g>>2]|0)+4;c[h>>2]=(d[(c[g>>2]|0)+-4>>
;0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[e>>
;2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(
c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if((c[k>
;>2]|0)>>>0<(c[h>>2]|0)>>>0)c[k>>2]=c[h>>2];c[f>>
;2]=(c[k>>2]|0)-(c[h>>2]|0);c[g>>2]=(c[g>>2]|0)+(c[f>>2]<<1);while(1
){if((c[f>>2]|0)>>>0>=(c[e>>2]|0)>>>0){a=7;break}c[g>>2]=(c[g
x3e;>2]|0)+2;c[l>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[g>>
2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if(c[l>>2]|0){a=7;break}c[k>>2]=(c[k>
x3e;2]|0)+1;c[f>>2]=(c[f>>2]|0)+1}if((a|0)==7){c[c[j>>2]>>2]=c[k>>2];i=m;return
c[l>>2]|0}return 0}function Fj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;k=l+12
|0;j=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[f>>2]=b;c[k>>2]=(c[e>>2]|0)+4;if(((c[e>>2]|
0)+20|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[k>
;>2]=(c[k>>2]|0)+4;c[j>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>
;2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-
4+3>>0]|0)<<0;c[k>>2]=(c[e>>2]|0)+16;c[k>>2]=(c[k>>2]|0)+4;c[g>
x3e;2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;if(!((c[j
>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>2]|0)|0)>>>
;0?(c[j>>2]|0)>>>0>=(20+(c[g>>2]<<1)|0)>>>0:0))sc(c[f>>
;2]|0,8);if(!((c[g>>2]|0)>>>0>0?(c[(c[f>>2]|0)+8>>2]|0)>>>0>
;=1:0)){i=l;return 0}do{c[k>>2]=(c[k>>2]|0)+2;c[h>>2]=(((d[(c[k>>2]|0)+-2>>0]|
0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c[h>
x3e;2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)>>>0)sc(c[f>>2]|0,16);c
[g>>2]=(c[g>>2]|0)+-1}while((c[g>>2]|0)>>>0>0);i=l;return 0}function Gj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[
h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=10;c[c[f>>2]>>2]=(d[c[g>
;>2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>
;>0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function Hj(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;c[(c[g>>2]|0)+16>>2]=c[h>
x3e;2];c[h>>2]=(c[h>>2]|0)+12;c[(c[g>>2]|0)+40>>2]=(d[c[h>>2]>>0]|0)
x3c;<24|(d[(c[h>>2]|0)+1>>0]|0)<<16|(d[(c[h>>2]|0)+2>>0]|0)<<8|(
d[(c[h>>2]|0)+3>>0]|0)<<0;a[(c[g>>2]|0)+24>>0]=0;i=f;return 0}function Ij(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=Jj(c[f>>2]|0,e,0)|0;i=d
;return a|0}function Jj(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;x=i;i=i
+64|0;g=x+52|0;h=x+48|0;j=x+44|0;k=x+56|0;o=x+40|0;t=x+36|0;s=x+32|0;l=x+28|0;u=x+24|0;n=x+20|0;v=x+16|0;p=x+12|0;r=x+8|0;q=x+4|
0;m=x;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;c[o>>2]=0;c[t>>2]=(c[(c[h>>2]|0)+
16>>2]|0)+12;c[s>>2]=d[c[t>>2]>>0]<<24|d[(c[t>>2]|0)+1>>0]
x3c;<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t>>2]|0)+3>>0]<<0;c[l>
x3e;2]=c[c[j>>2]>>2];if(!(c[s>>2]|0)){c[g>>2]=0;w=c[g>>2]|0;i=x;return w|0}c[q
>>2]=c[s>>2];c[n>>2]=-1;if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1;c[r>
x3e;2]=0;c[p>>2]=c[s>>2];while(1){if((c[r>>2]|0)>>>0>=(c[p>>2]|0)>
;>>0)break;c[q>>2]=((c[r>>2]|0)+(c[p>>2]|0)|0)>>>1;c[t>>2]=(c[(
c[h>>2]|0)+16>>2]|0)+16+((c[q>>2]|0)*12|0);c[t>>2]=(c[t>>2]|0)+4;c[u>>
;2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>>2]|0)+-4+1>>0]<<16|d[(c[t>
x3e;2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4+3>>0]<<0;c[t>>2]=(c[t>
x3e;2]|0)+4;c[n>>2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>>2]|0)+-4+1>>0]
x3c;<16|d[(c[t>>2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4+3>>0]<<0;if((
c[l>>2]|0)>>>0<(c[u>>2]|0)>>>0){c[p>>2]=c[q>>2];continue
}if((c[l>>2]|0)>>>0<=(c[n>>2]|0)>>>0){w=11;break}c[r>>2]=(c[q
x3e;>2]|0)+1}if((w|0)==11){c[v>>2]=d[c[t>>2]>>0]<<24|d[(c[t>>2]|0)+1>
;>0]<<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t>>2]|0)+3>>0]<<
0;c[o>>2]=(c[v>>2]|0)+(c[l>>2]|0)-(c[u>>2]|0)}if(a[k>>0]|0){c[m>>2]=
c[h>>2];if((c[l>>2]|0)>>>0>(c[n>>2]|0)>>>0?(c[q>>2]=(
c[q>>2]|0)+1,(c[q>>2]|0)==(c[s>>2]|0)):0){c[g>>2]=0;w=c[g>>2]|0;i=x;return w|0
}a[(c[m>>2]|0)+24>>0]=1;c[(c[m>>2]|0)+28>>2]=c[l>>2];c[(c[m>>2]|0)+36
>>2]=c[q>>2];if(!(c[o>>2]|0)){Kj(c[m>>2]|0);if(a[(c[m>>2]|0)+24>>0]|
0)c[o>>2]=c[(c[m>>2]|0)+32>>2]}else c[(c[m>>2]|0)+32>>2]=c[o>>2];if(
c[o>>2]|0)c[c[j>>2]>>2]=c[(c[m>>2]|0)+28>>2]}c[g>>2]=c[o>>
2];w=c[g>>2]|0;i=x;return w|0}function Kj(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;e=n+28|0;k=n+24
|0;l=n+20|0;g=n+16|0;m=n+12|0;f=n+8|0;j=n+4|0;h=n;c[e>>2]=b;a:do if((c[(c[e>>2]|0)+28>>2]|0)>
x3e;>0<4294967295){c[f>>2]=(c[(c[e>>2]|0)+28>>2]|0)+1;c[j>>2]=c[(c[e>>
;2]|0)+36>>2];c[j>>2]=c[(c[e>>2]|0)+36>>2];b:while(1){if((c[j>>2]|0)>>
;>0>=(c[(c[e>>2]|0)+40>>2]|0)>>>0)break a;c[k>>2]=(c[(c[e>>2]|0
)+16>>2]|0)+16+((c[j>>2]|0)*12|0);c[k>>2]=(c[k>>2]|0)+4;c[l>>2]=(d[(c[k>
x3e;2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0
)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>
;2]|0)+4;c[g>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<
;<0;c[m>>2]=(d[c[k>>2]>>0]|0)<<24|(d[(c[k>>2]|0)+1>>0]|0)<
x3c;16|(d[(c[k>>2]|0)+2>>0]|0)<<8|(d[(c[k>>2]|0)+3>>0]|0)<<0;if((c[f
>>2]|0)>>>0<(c[l>>2]|0)>>>0)c[f>>2]=c[l>>2];while(1){
if((c[f>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[h>>2]=(c[m>>
;2]|0)+(c[f>>2]|0)-(c[l>>2]|0);b=c[f>>2]|0;if(c[h>>2]|0)break b;c[f>>2]=b+1}c[
j>>2]=(c[j>>2]|0)+1}c[(c[e>>2]|0)+28>>2]=b;c[(c[e>>2]|0)+32>>2]=c[h
x3e;>2];c[(c[e>>2]|0)+36>>2]=c[j>>2];i=n;return}while(0);a[(c[e>>2]|0)+24>>
;0]=0;i=n;return}function Lj(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m
;c[g>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];if((c[(c[j>>2]|0)+28>>2]|0)>
;>>0>=4294967295){c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}do if(d[(c[j>>2]|0)+24>
x3e;0]|0?(c[(c[j>>2]|0)+28>>2]|0)==(c[c[h>>2]>>2]|0):0){Kj(c[j>>2]|0);if(!(a[(
c[j>>2]|0)+24>>0]|0)){c[k>>2]=0;break}c[k>>2]=c[(c[j>>2]|0)+32>>2];if
(c[k>>2]|0)c[c[h>>2]>>2]=c[(c[j>>2]|0)+28>>2]}else l=9;while(0);if((l|0)==9)c[
k>>2]=Jj(c[g>>2]|0,c[h>>2]|0,1)|0;c[f>>2]=c[k>>2];l=c[f>>2]|0;i=m;return
l|0}function Mj(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0;m=p+28|0;j=p+24
|0;l=p+20|0;k=p+16|0;n=p+12|0;g=p+8|0;o=p+4|0;h=p;c[e>>2]=a;c[f>>2]=b;if(((c[e>>2]|0)+16|0)>
x3e;>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[m>>2]=(c[e
>>2]|0)+4;c[m>>2]=(c[m>>2]|0)+4;c[j>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<
;<24|(d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<
;8|(d[(c[m>>2]|0)+-4+3>>0]|0)<<0;c[m>>2]=(c[e>>2]|0)+12;c[m>>2]=(c[m
>>2]|0)+4;c[l>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1
x3e;>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>
;0]|0)<<0;if(!((c[j>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>
x3e;2]|0)|0)>>>0?(c[j>>2]|0)>>>0>=(16+((c[l>>2]|0)*12|0)|0)>>
x3e;0:0))sc(c[f>>2]|0,8);c[h>>2]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0
x3e;=(c[l>>2]|0)>>>0)break;c[m>>2]=(c[m>>2]|0)+4;c[n>>2]=(d[(c[m>>
;2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-
4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>0]|0)<<0;c[m>>2]=(c[m>>
2]|0)+4;c[g>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1>>0]|
0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>0]|0)<
;<0;c[m>>2]=(c[m>>2]|0)+4;c[o>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(
d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m
x3e;>2]|0)+-4+3>>0]|0)<<0;if((c[n>>2]|0)>>>0>(c[g>>2]|0)>
x3e;>0)sc(c[f>>2]|0,8);if((c[k>>2]|0)>>>0>0?(c[n>>2]|0)>>>
0<=(c[h>>2]|0)>>>0:0)sc(c[f>>2]|0,8);if((c[(c[f>>2]|0)+8>>2]|0)>
;>>0>=1?((c[o>>2]|0)+(c[g>>2]|0)-(c[n>>2]|0)|0)>>>0>=(c[(c[f>
;>2]|0)+172>>2]|0)>>>0:0)sc(c[f>>2]|0,16);c[h>>2]=c[g>>2];c[k>
x3e;2]=(c[k>>2]|0)+1}i=p;return 0}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;h=e+8|0;f=e+4|0;g=e;c[
h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4
>>2]=12;c[c[f>>2]>>2]=(d[c[g>>2]>>0]|0)<<24|(d[(c[g>>2]|0)+
1>>0]|0)<<16|(d[(c[g>>2]|0)+2>>0]|0)<<8|(d[(c[g>>2]|0)+3>>
0]|0)<<0;i=e;return 0}function Oj(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;c[(c[g>>2]|0)+16>>2]=c[h>>2];c[h>>2]=(c[h>>2]|0)+12;c[(c[g>
x3e;2]|0)+40>>2]=(d[c[h>>2]>>0]|0)<<24|(d[(c[h>>2]|0)+1>>0]|0)<
x3c;16|(d[(c[h>>2]|0)+2>>0]|0)<<8|(d[(c[h>>2]|0)+3>>0]|0)<<0;a[(c[g
x3e;>2]|0)+24>>0]=0;i=f;return 0}function Pj(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>
x3e;2]=a;c[e>>2]=b;a=Qj(c[f>>2]|0,e,0)|0;i=d;return a|0}function Qj(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;w=i;i=i+64|0;g=w+48|0;h=w+44|0;j=w+40|0;k=w+52|0;o=w+36|0;t=w+32|0;s=w+28|0
;l=w+24|0;u=w+20|0;n=w+16|0;p=w+12|0;r=w+8|0;q=w+4|0;m=w;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;c[o>
x3e;2]=0;c[t>>2]=(c[(c[h>>2]|0)+16>>2]|0)+12;c[s>>2]=d[c[t>>2]>>0]
x3c;<24|d[(c[t>>2]|0)+1>>0]<<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t
x3e;>2]|0)+3>>0]<<0;c[l>>2]=c[c[j>>2]>>2];if(!(c[s>>2]|0)){c[g
x3e;>2]=0;v=c[g>>2]|0;i=w;return v|0}c[q>>2]=c[s>>2];c[n>>2]=-1;if(a[k>>0
]|0)c[l>>2]=(c[l>>2]|0)+1;c[r>>2]=0;c[p>>2]=c[s>>2];while(1){if((c[r>>
;2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[q>>2]=((c[r>>2]|0)+(c[p>
;>2]|0)|0)>>>1;c[t>>2]=(c[(c[h>>2]|0)+16>>2]|0)+16+((c[q>>2]|0)*12|0
);c[t>>2]=(c[t>>2]|0)+4;c[u>>2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>
;>2]|0)+-4+1>>0]<<16|d[(c[t>>2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4
+3>>0]<<0;c[t>>2]=(c[t>>2]|0)+4;c[n>>2]=d[(c[t>>2]|0)+-4>>
0]<<24|d[(c[t>>2]|0)+-4+1>>0]<<16|d[(c[t>>2]|0)+-4+2>>0]<<
8|d[(c[t>>2]|0)+-4+3>>0]<<0;if((c[l>>2]|0)>>>0<(c[u>>2]|0)
x3e;>>0){c[p>>2]=c[q>>2];continue}if((c[l>>2]|0)>>>0<=(c[n>>
;2]|0)>>>0){v=11;break}c[r>>2]=(c[q>>2]|0)+1}if((v|0)==11)c[o>>2]=d[c[t>>
2]>>0]<<24|d[(c[t>>2]|0)+1>>0]<<16|d[(c[t>>2]|0)+2>>0]<
;<8|d[(c[t>>2]|0)+3>>0]<<0;if(a[k>>0]|0){c[m>>2]=c[h>>2];if((c[
l>>2]|0)>>>0>(c[n>>2]|0)>>>0?(c[q>>2]=(c[q>>2]|0)+1,(
c[q>>2]|0)==(c[s>>2]|0)):0){c[g>>2]=0;v=c[g>>2]|0;i=w;return v|0}a[(c[m>>2]|0)+
24>>0]=1;c[(c[m>>2]|0)+28>>2]=c[l>>2];c[(c[m>>2]|0)+36>>2]=c[q>
x3e;2];if(!(c[o>>2]|0)){Rj(c[m>>2]|0);if(a[(c[m>>2]|0)+24>>0]|0)c[o>>2]=c[(c[m
>>2]|0)+32>>2]}else c[(c[m>>2]|0)+32>>2]=c[o>>2];if(c[o>>2]|0)c[c[j
x3e;>2]>>2]=c[(c[m>>2]|0)+28>>2]}c[g>>2]=c[o>>2];v=c[g>>2]|0;i=
w;return v|0}function Rj(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;e=n+28|0;l=n+24|0;m=n+20|0;g=n+16|0;j=n+12
|0;f=n+8|0;k=n+4|0;h=n;c[e>>2]=b;a:do if((c[(c[e>>2]|0)+28>>2]|0)>>>0<4294967295
){c[f>>2]=(c[(c[e>>2]|0)+28>>2]|0)+1;c[k>>2]=c[(c[e>>2]|0)+36>>2];c[
k>>2]=c[(c[e>>2]|0)+36>>2];while(1){if((c[k>>2]|0)>>>0>=(c[(c[e>
;>2]|0)+40>>2]|0)>>>0)break a;c[l>>2]=(c[(c[e>>2]|0)+16>>2]|0)+16+((
c[k>>2]|0)*12|0);c[l>>2]=(c[l>>2]|0)+4;c[m>>2]=(d[(c[l>>2]|0)+-4>>0]|
0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)<
;<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;c[l>>2]=(c[l>>2]|0)+4;c[g>>2]=(
d[(c[l>>2]|0)+-4>>0]|0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l
x3e;>2]|0)+-4+2>>0]|0)<<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;c[j>>2]=(
d[c[l>>2]>>0]|0)<<24|(d[(c[l>>2]|0)+1>>0]|0)<<16|(d[(c[l>>
2]|0)+2>>0]|0)<<8|(d[(c[l>>2]|0)+3>>0]|0)<<0;if((c[f>>2]|0)>>
;>0<(c[m>>2]|0)>>>0)c[f>>2]=c[m>>2];if((c[f>>2]|0)>>
x3e;0<=(c[g>>2]|0)>>>0?(c[h>>2]=c[j>>2],c[h>>2]|0):0)break;c[k>
x3e;2]=(c[k>>2]|0)+1}c[(c[e>>2]|0)+28>>2]=c[f>>2];c[(c[e>>2]|0)+32>>
2]=c[h>>2];c[(c[e>>2]|0)+36>>2]=c[k>>2];i=n;return}while(0);a[(c[e>>2]|0)+24
x3e;>0]=0;i=n;return}function Sj(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;j=
m+4|0;k=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];if((c[(c[j>>2]|0)+28>>
2]|0)>>>0>=4294967295){c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}do if(d[(c[j>>2]|0
)+24>>0]|0?(c[(c[j>>2]|0)+28>>2]|0)==(c[c[h>>2]>>2]|0):0){Rj(c[j>>2]|
0);if(!(a[(c[j>>2]|0)+24>>0]|0)){c[k>>2]=0;break}c[k>>2]=c[(c[j>>2]|0)+32>
;>2];if(c[k>>2]|0)c[c[h>>2]>>2]=c[(c[j>>2]|0)+28>>2]}else l=9;while(0);if
((l|0)==9)c[k>>2]=Qj(c[g>>2]|0,c[h>>2]|0,1)|0;c[f>>2]=c[k>>2];l=c[f>>
;2]|0;i=m;return l|0}function Tj(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0
;n=p+28|0;k=p+24|0;m=p+20|0;l=p+16|0;o=p+12|0;g=p+8|0;h=p+4|0;j=p;c[e>>2]=a;c[f>>2]=b;if(((c[e>>2]|
0)+16|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[n>
;>2]=(c[e>>2]|0)+4;c[n>>2]=(c[n>>2]|0)+4;c[k>>2]=(d[(c[n>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;c[n>>2]=(c[e>>2]|0)+12;c[n>
x3e;2]=(c[n>>2]|0)+4;c[m>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4
+3>>0]|0)<<0;if(!((c[k>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0
)-(c[e>>2]|0)|0)>>>0?(c[k>>2]|0)>>>0>=(16+((c[m>>2]|0)*12|0)|0)
x3e;>>0:0))sc(c[f>>2]|0,8);c[j>>2]=0;c[l>>2]=0;while(1){if((c[l>>2]|0)>
x3e;>0>=(c[m>>2]|0)>>>0)break;c[n>>2]=(c[n>>2]|0)+4;c[o>>2]=(d[(
c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>
;>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;c[n>>2]=(c
[n>>2]|0)+4;c[g>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1
>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>
x3e;0]|0)<<0;c[n>>2]=(c[n>>2]|0)+4;c[h>>2]=(d[(c[n>>2]|0)+-4>>0]|0)
x3c;<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<
x3c;8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;if((c[o>>2]|0)>>>0>(c[g>>
;2]|0)>>>0)sc(c[f>>2]|0,8);if((c[l>>2]|0)>>>0>0?(c[o>>2]|0)>
;>>0<=(c[j>>2]|0)>>>0:0)sc(c[f>>2]|0,8);if((c[(c[f>>2]|0)+8>>
;2]|0)>>>0>=1?(c[h>>2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)
x3e;>>0:0)sc(c[f>>2]|0,16);c[j>>2]=c[g>>2];c[l>>2]=(c[l>>2]|0)+1}i=p
;return 0}function Uj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2
]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=13;c[c[f>>
;2]>>2]=(d[c[g>>2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(
d[(c[g>>2]|0)+2>>0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function
Vj(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;c[(c[f>>2]|0)+16
>>2]=c[g>>2];c[g>>2]=(c[g>>2]|0)+6;c[(c[f>>2]|0)+24>>2]=(d[c[g>
x3e;2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>
x3e;0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;c[(c[f>>2]|0)+28>>2]=0;c[(c[
f>>2]|0)+32>>2]=0;i=e;return 0}function Wj(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>
2]=a;c[d>>2]=c[(c[b>>2]|0)+36>>2];c[(c[b>>2]|0)+28>>2]=0;if(!(c[d>>2
]|0)){i=e;return}if(!(c[(c[b>>2]|0)+32>>2]|0)){i=e;return}Fb(c[d>>2]|0,c[(c[b>>2]|0)+32
x3e;>2]|0);c[(c[b>>2]|0)+32>>2]=0;i=e;return}function Xj(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[f>>2]=c[f>>2];c[e>>2]=c[e>>2];i=d;
return 0}function Yj(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[f>
x3e;2]=c[f>>2];c[c[e>>2]>>2]=0;i=d;return 0}function Zj(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;o=i;i=i+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;p=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a
;c[j>>2]=b;c[k>>2]=e;c[p>>2]=f;c[n>>2]=_j((c[(c[h>>2]|0)+16>>2]|0)+6
|0,c[p>>2]|0)|0;if(!(c[n>>2]|0)){c[g>>2]=0;p=c[g>>2]|0;i=o;return p|0}c[n>>2]=(
c[n>>2]|0)+4;c[l>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+
1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>
x3e;0]|0)<<0;c[m>>2]=(d[c[n>>2]>>0]|0)<<24|(d[(c[n>>2]|0)+1>>
;0]|0)<<16|(d[(c[n>>2]|0)+2>>0]|0)<<8|(d[(c[n>>2]|0)+3>>0]|0)<
x3c;0;if(c[l>>2]|0?$j((c[(c[h>>2]|0)+16>>2]|0)+(c[l>>2]|0)|0,c[k>>2]|0)|0:0){c
[g>>2]=Ya[c[(c[(c[j>>2]|0)+12>>2]|0)+12>>2]&127](c[j>>2]|0,c[k>>
;2]|0)|0;p=c[g>>2]|0;i=o;return p|0}if(c[m>>2]|0){c[g>>2]=ak((c[(c[h>>2]|0)+16>>
;2]|0)+(c[m>>2]|0)|0,c[k>>2]|0)|0;p=c[g>>2]|0;i=o;return p|0}else{c[g>>2]=0;p=c[g>
x3e;2]|0;i=o;return p|0}return 0}function _j(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;n=i;i=i+48|0;l=n+32|0;
e=n+28|0;f=n+24|0;o=n+20|0;g=n+16|0;j=n+12|0;h=n+8|0;m=n+4|0;k=n;c[e>>2]=a;c[f>>2]=b;c[o>>2]=(d[c[
e>>2]>>0]|0)<<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>>2]|0
)+2>>0]|0)<<8|(d[(c[e>>2]|0)+3>>0]|0)<<0;c[j>>2]=0;c[g>>2]=
c[o>>2];c[e>>2]=(c[e>>2]|0)+4;while(1){if((c[j>>2]|0)>>>0>=(c[g>
;>2]|0)>>>0){e=8;break}c[h>>2]=((c[j>>2]|0)+(c[g>>2]|0)|0)>>>1;
c[m>>2]=(c[e>>2]|0)+((c[h>>2]|0)*11|0);c[m>>2]=(c[m>>2]|0)+3;c[k>>2]=(
d[(c[m>>2]|0)+-3>>0]|0)<<16|(d[(c[m>>2]|0)+-3+1>>0]|0)<<8|(d[(c[m>
;>2]|0)+-3+2>>0]|0)<<0;if((c[f>>2]|0)>>>0<(c[k>>2]|0)>>
;>0){c[g>>2]=c[h>>2];continue}if((c[f>>2]|0)>>>0<=(c[k>>2]|0)
x3e;>>0){e=7;break}c[j>>2]=(c[h>>2]|0)+1}if((e|0)==7){c[l>>2]=c[m>>2];o=c[l>
;>2]|0;i=n;return o|0}else if((e|0)==8){c[l>>2]=0;o=c[l>>2]|0;i=n;return o|0}return 0}function $j(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;o=i;i=i+48|0;n=o+36|0;e=o+32|0;f=o+28|0;p=o+24|0;h=o+20|0;k=o+16|0;j
=o+12|0;l=o+8|0;m=o+4|0;g=o;c[e>>2]=a;c[f>>2]=b;c[p>>2]=(d[c[e>>2]>>0]|0)<
;<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>>2]|0)+2>>0]|0)<<8|(d[(
c[e>>2]|0)+3>>0]|0)<<0;c[k>>2]=0;c[h>>2]=c[p>>2];c[e>>2]=(
c[e>>2]|0)+4;while(1){if((c[k>>2]|0)>>>0>=(c[h>>2]|0)>>>0){e=8;
break}c[j>>2]=((c[k>>2]|0)+(c[h>>2]|0)|0)>>>1;c[l>>2]=(c[e>>2]|
0)+(c[j>>2]<<2);c[l>>2]=(c[l>>2]|0)+3;c[m>>2]=(d[(c[l>>2]|0)+-3>
;>0]|0)<<16|(d[(c[l>>2]|0)+-3+1>>0]|0)<<8|(d[(c[l>>2]|0)+-3+2>>
0]|0)<<0;p=c[l>>2]|0;c[l>>2]=p+1;c[g>>2]=d[p>>0];if((c[f>>2]|0)>
;>>0<(c[m>>2]|0)>>>0){c[h>>2]=c[j>>2];continue}if((c[f>>2]|
0)>>>0<=((c[m>>2]|0)+(c[g>>2]|0)|0)>>>0){e=7;break}c[k>>2]=(c[j
>>2]|0)+1}if((e|0)==7){c[n>>2]=1;p=c[n>>2]|0;i=o;return p|0}else if((e|0)==8){c[n>>2]=0;
p=c[n>>2]|0;i=o;return p|0}return 0}function ak(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;n=i;i=i+48
|0;l=n+32|0;e=n+28|0;f=n+24|0;o=n+20|0;g=n+16|0;j=n+12|0;h=n+8|0;m=n+4|0;k=n;c[e>>2]=a;c[f>>2]=b;c[o>
x3e;2]=(d[c[e>>2]>>0]|0)<<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>
;>2]|0)+2>>0]|0)<<8|(d[(c[e>>2]|0)+3>>0]|0)<<0;c[j>>2]=0;c[g>
;>2]=c[o>>2];c[e>>2]=(c[e>>2]|0)+4;while(1){if((c[j>>2]|0)>>>0>=(
c[g>>2]|0)>>>0){e=8;break}c[h>>2]=((c[j>>2]|0)+(c[g>>2]|0)|0)>>
x3e;1;c[m>>2]=(c[e>>2]|0)+((c[h>>2]|0)*5|0);c[m>>2]=(c[m>>2]|0)+3;c[k>>
;2]=(d[(c[m>>2]|0)+-3>>0]|0)<<16|(d[(c[m>>2]|0)+-3+1>>0]|0)<<8|(d[(c
[m>>2]|0)+-3+2>>0]|0)<<0;if((c[f>>2]|0)>>>0<(c[k>>2]|0)>
;>>0){c[g>>2]=c[h>>2];continue}if((c[f>>2]|0)>>>0<=(c[k>>2
]|0)>>>0){e=7;break}c[j>>2]=(c[h>>2]|0)+1}if((e|0)==7){c[l>>2]=(((d[c[m>>
2]>>0]|0)&65535)<<8|((d[(c[m>>2]|0)+1>>0]|0)&65535)<<0)&65535;o
=c[l>>2]|0;i=n;return o|0}else if((e|0)==8){c[l>>2]=0;o=c[l>>2]|0;i=n;return o|0}return 0}function
bk(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;m=i;i=i+32|0;f=m+24|0;g=m+20|0;h=m+16|0;n=m+12|0;l=m+8|0;j=m+4|
0;k=m;c[g>>2]=a;c[h>>2]=b;c[n>>2]=e;c[l>>2]=_j((c[(c[g>>2]|0)+16>>2]|
0)+6|0,c[n>>2]|0)|0;if(!(c[l>>2]|0)){c[f>>2]=-1;n=c[f>>2]|0;i=m;return n|0}c[l>>
;2]=(c[l>>2]|0)+4;c[j>>2]=(d[(c[l>>2]|0)+-4>>0]|0)<<24|(d[(c[l>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)<<8|(d[(c[l>>2]|0)+-4+3
x3e;>0]|0)<<0;c[l>>2]=(c[l>>2]|0)+4;c[k>>2]=(d[(c[l>>2]|0)+-4>>
0]|0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;if(c[j>>2]|0?$j((c[(c[g>>2]|0)+16>
;>2]|0)+(c[j>>2]|0)|0,c[h>>2]|0)|0:0){c[f>>2]=1;n=c[f>>2]|0;i=m;return n|0}if(c[k
x3e;>2]|0?ak((c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]|0)|0,c[h>>2]|0)|0:0){c[f>>
2]=0;n=c[f>>2]|0;i=m;return n|0}c[f>>2]=-1;n=c[f>>2]|0;i=m;return n|0}function ck(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;l=i;i=i+32|0;e=l+28|0;n=l+24|0;m=l+20|0;f=l+16|0;g=l+12|0;j=l+8|0;k=l+4|0;h=l;c[n>
x3e;2]=a;c[m>>2]=b;c[f>>2]=c[n>>2];c[g>>2]=c[(c[f>>2]|0)+24>>2];c[j
x3e;>2]=(c[(c[n>>2]|0)+16>>2]|0)+10;if(dk(c[f>>2]|0,(c[g>>2]|0)+1|0,c[m>>
2]|0)|0){c[e>>2]=0;n=c[e>>2]|0;i=l;return n|0}c[k>>2]=c[(c[f>>2]|0)+32>>2];c[h
>>2]=0;while(1){if((c[h>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[j
x3e;>2]=(c[j>>2]|0)+3;c[(c[k>>2]|0)+(c[h>>2]<<2)>>2]=(d[(c[j>>2
]|0)+-3>>0]|0)<<16|(d[(c[j>>2]|0)+-3+1>>0]|0)<<8|(d[(c[j>>2]|0)+-3+2
>>0]|0)<<0;c[j>>2]=(c[j>>2]|0)+8;c[h>>2]=(c[h>>2]|0)+1}c[(c[k>
x3e;2]|0)+(c[h>>2]<<2)>>2]=0;c[e>>2]=c[k>>2];n=c[e>>2]|0;i=l;return
n|0}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,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0
;j=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=c[(c[f>>2]|0)+28>>2];c[j
x3e;>2]=0;do if((c[g>>2]|0)>>>0>(c[(c[f>>2]|0)+28>>2]|0)>>>
;0){c[(c[f>>2]|0)+36>>2]=c[h>>2];k=hc(c[h>>2]|0,4,c[k>>2]|0,c[g>>2]|
0,c[(c[f>>2]|0)+32>>2]|0,j)|0;c[(c[f>>2]|0)+32>>2]=k;if(!(c[j>>2]|0)){c[(c[f
x3e;>2]|0)+28>>2]=c[g>>2];break}c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|
0}while(0);c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|0}function ek(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;q=i;i=i+48|0;f=q+40|0;g=q+36|0;r=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;n=q+16|0;o=q+12|
0;p=q+8|0;l=q+4|0;m=q;c[g>>2]=a;c[r>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];c[k>
x3e;2]=c[(c[j>>2]|0)+24>>2];c[n>>2]=(c[(c[g>>2]|0)+16>>2]|0)+10;if(dk(c[j>
;>2]|0,(c[k>>2]|0)+1|0,c[r>>2]|0)|0){c[f>>2]=0;r=c[f>>2]|0;i=q;return r|0}c[o>
x3e;2]=c[(c[j>>2]|0)+32>>2];while(1){if((c[k>>2]|0)>>>0<=0)break;c[n>>
;2]=(c[n>>2]|0)+3;c[p>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0
)+-3+1>>0]|0)<<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;c[n>>2]=(c[n>>
;2]|0)+4;c[l>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<
;<0;c[n>>2]=(c[n>>2]|0)+4;c[m>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(
d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n
x3e;>2]|0)+-4+3>>0]|0)<<0;if(c[l>>2]|0?$j((c[(c[g>>2]|0)+16>>2]|0)+(c[l
x3e;>2]|0)|0,c[h>>2]|0)|0:0)e=9;else e=7;if(((e|0)==7?(e=0,c[m>>2]|0):0)?ak((c[(c[g>>2]|0)+16
>>2]|0)+(c[m>>2]|0)|0,c[h>>2]|0)|0:0)e=9;if((e|0)==9){c[c[o>>2]>>2]=c[p>
x3e;2];c[o>>2]=(c[o>>2]|0)+4}c[k>>2]=(c[k>>2]|0)+-1}c[c[o>>2]>>2]=0;
c[f>>2]=c[(c[j>>2]|0)+32>>2];r=c[f>>2]|0;i=q;return r|0}function fk(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;y=i;i=i+80|0;f=y+72|0;g=y+68|0;h=y+64|0
;z=y+60|0;w=y+56|0;x=y+52|0;p=y+48|0;l=y+44|0;s=y+40|0;j=y+36|0;u=y+32|0;t=y+28|0;o=y+24|0;k=y+20|0;v=y+16|0;n=y+12|0;m=y+8|0;r=
y+4|0;q=y;c[g>>2]=a;c[h>>2]=b;c[z>>2]=e;c[w>>2]=_j((c[(c[g>>2]|0)+16>>
;2]|0)+6|0,c[z>>2]|0)|0;if(!(c[w>>2]|0)){c[f>>2]=0;z=c[f>>2]|0;i=y;return z|0}c[w>
x3e;2]=(c[w>>2]|0)+4;c[l>>2]=(d[(c[w>>2]|0)+-4>>0]|0)<<24|(d[(c[w>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|0)<<8|(d[(c[w>>2]|0)+-4
+3>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+4;c[s>>2]=(d[(c[w>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[w>>2]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[w>>2]|0)+-4+3>>0]|0)<<0;if((c[l>>2]|0)==0&(c[s>>2]|
0)==0){c[f>>2]=0;z=c[f>>2]|0;i=y;return z|0}if(!(c[l>>2]|0)){c[f>>2]=gk(c[g>>2
]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[s>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return
z|0}a=c[g>>2]|0;if(!(c[s>>2]|0)){c[f>>2]=hk(a,(c[(c[g>>2]|0)+16>>2]|0)+(c[l
x3e;>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return z|0}c[j>>2]=a;c[w>>2]=(c[(c[g>
;>2]|0)+16>>2]|0)+(c[s>>2]|0);c[n>>2]=(c[(c[g>>2]|0)+16>>2]|0)+(c[l>
x3e;2]|0);c[w>>2]=(c[w>>2]|0)+4;c[t>>2]=(d[(c[w>>2]|0)+-4>>0]|0)<<24
|(d[(c[w>>2]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|0)<<8|(d[(c[
w>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=ik(c[n>>2]|0)|0;c[n>>2]=(c[n>
x3e;2]|0)+4;c[u>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>
;0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)
x3c;<0;if(!(c[t>>2]|0)){c[f>>2]=hk(c[g>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[
l>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return z|0}if(!(c[k>>2]|0)){c[f>>2]=gk
(c[g>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[s>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>
;2]|0;i=y;return z|0}if(dk(c[j>>2]|0,(c[k>>2]|0)+(c[t>>2]|0)+1|0,c[h>>2]|0)|0){c[f>
x3e;2]=0;z=c[f>>2]|0;i=y;return z|0}c[x>>2]=c[(c[j>>2]|0)+32>>2];c[n>>2]=(c[n
x3e;>2]|0)+3;c[o>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>
;>0]|0)<<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+
1;c[k>>2]=d[z>>0];c[m>>2]=1;c[w>>2]=(c[w>>2]|0)+3;c[v>>2]=(d[(c[w>
;>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<<8|(d[(c[w>>2]|
0)+-3+2>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+2;c[r>>2]=1;c[p>>2]=0;while(1){
if((c[v>>2]|0)>>>0<=((c[o>>2]|0)+(c[k>>2]|0)|0)>>>0){if((c[v>
;>2]|0)>>>0<(c[o>>2]|0)>>>0){s=c[v>>2]|0;z=c[p>>2]|0;c[p
x3e;>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=s}c[r>>2]=(c[r>>2]|0)+1;if((c[r>
;>2]|0)>>>0>(c[t>>2]|0)>>>0)break;c[w>>2]=(c[w>>2]|0)+3;c[
v>>2]=(d[(c[w>>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<
x3c;8|(d[(c[w>>2]|0)+-3+2>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+2;continue}c[q>
x3e;2]=0;while(1){if((c[q>>2]|0)>>>0>(c[k>>2]|0)>>>0)break;s=(c[o>
x3e;2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>
;2]=s;c[q>>2]=(c[q>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1;if((c[m>>2]|0)>>
x3e;0>(c[u>>2]|0)>>>0)break;c[n>>2]=(c[n>>2]|0)+3;c[o>>2]=(d[(c[n>
;>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>>0]|0)<<8|(d[(c[n>>2]|
0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+1;c[k>>2]=d[z>>0]}a:do if((c
[r>>2]|0)>>>0>(c[t>>2]|0)>>>0){if((c[m>>2]|0)>>>
0<=(c[u>>2]|0)>>>0){c[q>>2]=0;while(1){if((c[q>>2]|0)>>>0>(
c[k>>2]|0)>>>0)break;w=(c[o>>2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>
;2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=w;c[q>>2]=(c[q>>2]|0)+1}while(1){if((c[m>
;>2]|0)>>>0>=(c[u>>2]|0)>>>0)break a;c[n>>2]=(c[n>>2]|0)+3
;c[o>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>>0]|0)<
;<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+1;c[k>>
2]=d[z>>0];c[q>>2]=0;while(1){if((c[q>>2]|0)>>>0>(c[k>>2]|0)>
x3e;>0)break;w=(c[o>>2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>
2]|0)+(z<<2)>>2]=w;c[q>>2]=(c[q>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1}}}else
{v=c[v>>2]|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=v;while
(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a;c[w>>2]=(c[w>
;>2]|0)+3;v=(d[(c[w>>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<
x3c;8|(d[(c[w>>2]|0)+-3+2>>0]|0)<<0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>
2]|0)+(z<<2)>>2]=v;c[w>>2]=(c[w>>2]|0)+2;c[r>>2]=(c[r>>2]|0)+1}}while
(0);c[(c[x>>2]|0)+(c[p>>2]<<2)>>2]=0;c[f>>2]=c[x>>2];z=c[f>>
;2]|0;i=y;return z|0}function gk(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;m=i;i=i+32|0;f=m+28|0;o=m+24|0
;g=m+20|0;n=m+16|0;h=m+12|0;k=m+8|0;j=m+4|0;l=m;c[o>>2]=a;c[g>>2]=b;c[n>>2]=e;c[h>>2]=c[
o>>2];c[g>>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<
x3c;24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(
d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if(dk(c[h>>2]|0,(c[k>>2]|0)+1|0,c[n>>2]|
0)|0){c[f>>2]=0;o=c[f>>2]|0;i=m;return o|0}c[l>>2]=c[(c[h>>2]|0)+32>>2];c[j>
;>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break;c[g>
x3e;2]=(c[g>>2]|0)+3;c[(c[l>>2]|0)+(c[j>>2]<<2)>>2]=(d[(c[g>>2]|0)+-
3>>0]|0)<<16|(d[(c[g>>2]|0)+-3+1>>0]|0)<<8|(d[(c[g>>2]|0)+-3+2>
x3e;0]|0)<<0;c[g>>2]=(c[g>>2]|0)+2;c[j>>2]=(c[j>>2]|0)+1}c[(c[l>>2]|
0)+(c[j>>2]<<2)>>2]=0;c[f>>2]=c[l>>2];o=c[f>>2]|0;i=m;return o|0}function
hk(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;n=i;i=i+48|0;f=n+32|0;p=n+28|0;g=n+24|0;o=n+20|0;h=n+16
|0;k=n+12|0;j=n+8|0;l=n+4|0;m=n;c[p>>2]=a;c[g>>2]=b;c[o>>2]=e;c[h>>2]=c[p>>2];
c[j>>2]=ik(c[g>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-
4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>
;>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if(dk(c[h>>2]|0,(c[j>>
2]|0)+1|0,c[o>>2]|0)|0){c[f>>2]=0;p=c[f>>2]|0;i=n;return p|0}c[l>>2]=c[(c[h>>2
]|0)+32>>2];while(1){if((c[k>>2]|0)>>>0<=0)break;c[g>>2]=(c[g>>2]|0)+
3;c[m>>2]=(d[(c[g>>2]|0)+-3>>0]|0)<<16|(d[(c[g>>2]|0)+-3+1>>0]|0)<
;<8|(d[(c[g>>2]|0)+-3+2>>0]|0)<<0;p=c[g>>2]|0;c[g>>2]=p+1;c[j>>
2]=(d[p>>0]|0)+1;do{c[c[l>>2]>>2]=c[m>>2];c[m>>2]=(c[m>>2]|0)+1;c[l
x3e;>2]=(c[l>>2]|0)+4;p=(c[j>>2]|0)+-1|0;c[j>>2]=p}while((p|0)!=0);c[k>>2]=(c[k>
;>2]|0)+-1}c[c[l>>2]>>2]=0;c[f>>2]=c[(c[h>>2]|0)+32>>2];p=c[f>>
2]|0;i=n;return p|0}function ik(a){a=a|0;var b=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+8|0;e=g+4|0;f=g;c[b>>2]=a;c[b>>
;2]=(c[b>>2]|0)+4;c[e>>2]=(d[(c[b>>2]|0)+-4>>0]|0)<<24|(d[(c[b>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[b>>2]|0)+-4+2>>0]|0)<<8|(d[(c[b>>2]|0)+-4+3
x3e;>0]|0)<<0;c[f>>2]=0;c[b>>2]=(c[b>>2]|0)+3;while(1){if((c[e>>2]|0)>
;>>0<=0)break;c[f>>2]=(c[f>>2]|0)+(1+(d[c[b>>2]>>0]|0));c[b>>2]=(
c[b>>2]|0)+4;c[e>>2]=(c[e>>2]|0)+-1}i=g;return c[f>>2]|0}function jk(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;B=i;i=i+96|0;e=B+84|0;f=B+80|0;y=B+
76|0;r=B+72|0;x=B+68|0;s=B+64|0;q=B+60|0;A=B+56|0;j=B+52|0;u=B+48|0;k=B+44|0;w=B+40|0;m=B+36|0;o=B+32|0;g=B+28|0;h=B+24|0;t=B+20
|0;v=B+16|0;n=B+12|0;p=B+8|0;z=B+4|0;l=B;c[e>>2]=a;c[f>>2]=b;c[y>>2]=(c[e>>2]|0)+2;c[y
x3e;>2]=(c[y>>2]|0)+4;c[r>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[y>
x3e;2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>>2]|
0)+-4+3>>0]|0)<<0;c[y>>2]=(c[y>>2]|0)+4;c[x>>2]=(d[(c[y>>2]|0)+-4>
;>0]|0)<<24|(d[(c[y>>2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>
;0]|0)<<8|(d[(c[y>>2]|0)+-4+3>>0]|0)<<0;if(!((c[r>>2]|0)>>>0<
;=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>2]|0)|0)>>>0?(c[r>>2]|0)>>>
;0>=(10+((c[x>>2]|0)*11|0)|0)>>>0:0))sc(c[f>>2]|0,8);c[q>>2]=1;c[s>>
2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[x>>2]|0)>>>0)break;c[y>>2]=(
c[y>>2]|0)+3;c[A>>2]=(d[(c[y>>2]|0)+-3>>0]|0)<<16|(d[(c[y>>2]|0)+-3+
1>>0]|0)<<8|(d[(c[y>>2]|0)+-3+2>>0]|0)<<0;c[y>>2]=(c[y>>2]|
0)+4;c[j>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[y>>2]|0)+-4+1>>0]|0)
x3c;<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>>2]|0)+-4+3>>0]|0)<<
;0;c[y>>2]=(c[y>>2]|0)+4;c[u>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[
y>>2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>
x3e;2]|0)+-4+3>>0]|0)<<0;if(!((c[j>>2]|0)>>>0<(c[r>>2]|0)>>
;>0?(c[u>>2]|0)>>>0<(c[r>>2]|0)>>>0:0))sc(c[f>>2]|0,8);if((
c[A>>2]|0)>>>0<(c[q>>2]|0)>>>0)sc(c[f>>2]|0,8);c[q>>2
]=(c[A>>2]|0)+1;a:do if(c[j>>2]|0){c[k>>2]=(c[e>>2]|0)+(c[j>>2]|0);c[k>
x3e;2]=(c[k>>2]|0)+4;c[w>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4
+3>>0]|0)<<0;c[o>>2]=0;if(((c[k>>2]|0)+(c[w>>2]<<2)|0)>>
x3e;0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[m>>2]=0;while(1){
if((c[m>>2]|0)>>>0>=(c[w>>2]|0)>>>0)break a;c[k>>2]=(c[k>
x3e;2]|0)+3;c[g>>2]=(d[(c[k>>2]|0)+-3>>0]|0)<<16|(d[(c[k>>2]|0)+-3+1>>
;0]|0)<<8|(d[(c[k>>2]|0)+-3+2>>0]|0)<<0;b=c[k>>2]|0;c[k>>2]=b+1;c[h
x3e;>2]=d[b>>0];if(((c[g>>2]|0)+(c[h>>2]|0)|0)>>>0>=1114112)sc(c[f>
x3e;2]|0,8);if((c[g>>2]|0)>>>0<(c[o>>2]|0)>>>0)sc(c[f>>2]|0,8);
c[o>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+1}}while(0);b:do if(c[u
x3e;>2]|0){c[t>>2]=(c[e>>2]|0)+(c[u>>2]|0);c[t>>2]=(c[t>>2]|0)+4;c[v>
;>2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16
|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-4+3>>0]|0)<<0;c[p>
;>2]=0;if(c[v>>2]<<2>>>0>((c[(c[f>>2]|0)+4>>2]|0)-(c[t>>
;2]|0)|0)>>>0)sc(c[f>>2]|0,8);c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0
x3e;=(c[v>>2]|0)>>>0)break b;c[t>>2]=(c[t>>2]|0)+3;c[z>>2]=(d[(c[t>
x3e;2]|0)+-3>>0]|0)<<16|(d[(c[t>>2]|0)+-3+1>>0]|0)<<8|(d[(c[t>>2]|0)+-
3+2>>0]|0)<<0;c[t>>2]=(c[t>>2]|0)+2;c[l>>2]=(((d[(c[t>>2]|0)+-2>
;>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c
[z>>2]|0)>>>0>=1114112)sc(c[f>>2]|0,8);if((c[z>>2]|0)>>>0<(
c[p>>2]|0)>>>0)sc(c[f>>2]|0,8);c[p>>2]=(c[z>>2]|0)+1;if((c[(c[f>>
;2]|0)+8>>2]|0)>>>0>=1?(c[l>>2]|0)>>>0>=(c[(c[f>>2]|0)+172
>>2]|0)>>>0:0)sc(c[f>>2]|0,16);c[n>>2]=(c[n>>2]|0)+1}}while(0);c[s>
x3e;2]=(c[s>>2]|0)+1}i=B;return 0}function kk(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[f>>2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=14;c[c[e>>2]>
;>2]=-1;i=d;return 0}function lk(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;m=k+20|0;l=k
+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[m>>2]=a;c[l>>2]=b;c[f>>2]=d;c[g>>2]=e;c[j>>
;2]=mk(c[m>>2]|0,c[l>>2]|0)|0;if(!(c[j>>2]|0)){c[h>>2]=142;m=c[h>>2]|0;i=k;return
m|0}if(c[g>>2]|0)c[c[g>>2]>>2]=c[(c[j>>2]|0)+12>>2];c[h>>2]=Kc(c[f
x3e;>2]|0,c[(c[j>>2]|0)+8>>2]|0)|0;m=c[h>>2]|0;i=k;return m|0}function mk(a,b){a=a|0;b=b|0;var
d=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;g=j+16|0;k=j+12|0;d=j+8|0;h=j+4|0;f=j;c[k>>2]=a;c[d>>2]=b;c[h>>
;2]=c[(c[k>>2]|0)+156>>2];c[f>>2]=(c[h>>2]|0)+((e[(c[k>>2]|0)+152>>1
]|0)<<4);while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>>0){d=7;break
}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)?c[(c[h>>2]|0)+12>>2]|0:0){d=5;break}c[h>
;>2]=(c[h>>2]|0)+16}if((d|0)==5){c[g>>2]=c[h>>2];k=c[g>>2]|0;i=j;return k|0}else if
((d|0)==7){c[g>>2]=0;k=c[g>>2]|0;i=j;return k|0}return 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,r=0,s=0;q=i;i=i+48|0;g=q+40|0;h=q+36|0;j=q+32|0;k=q+28|0;s=q+24|0;r=q+20|0;m=q+16|
0;n=q+12|0;p=q+8|0;o=q+4|0;l=q;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[s>>2]=e;c[r>>2]=
f;c[n>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+4>>2];c[s>>2]=c[s>>2];c[r>
x3e;2]=c[r>>2];c[p>>2]=c[(c[j>>2]|0)+532>>2];do if(!(c[p>>2]|0)){c[p>>
;2]=Ud(c[n>>2]|0,11340)|0;if(c[p>>2]|0){c[(c[j>>2]|0)+532>>2]=c[p>>2];c[(c[j
x3e;>2]|0)+508>>2]=c[c[p>>2]>>2];break}c[g>>2]=3;s=c[g>>2]|0;i=q;return s
|0}while(0);c[o>>2]=c[(c[j>>2]|0)+96>>2];c[l>>2]=Vd(c[o>>2]|0,71003)|0;c[(c[j
x3e;>2]|0)+536>>2]=c[l>>2];c[m>>2]=ok(c[h>>2]|0,c[j>>2]|0)|0;if(c[m>
x3e;2]|0){c[g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}if((c[k>>2]|0)<0)c[k>>
;2]=0;if((c[k>>2]|0)>=(c[(c[j>>2]|0)+132+8>>2]|0)){c[g>>2]=6;s=c[g>>2]|0;
i=q;return s|0}s=Kc(c[h>>2]|0,c[(c[(c[j>>2]|0)+132+12>>2]|0)+(c[k>>2]<<2)>
;>2]|0)|0;c[m>>2]=s;if(s|0){c[g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}c[m>>
;2]=Ya[c[(c[p>>2]|0)+132>>2]&127](c[j>>2]|0,c[h>>2]|0)|0;if(c[m>>2]|0){c[
g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}else{c[c[j>>2]>>2]=c[(c[j>>
2]|0)+132+8>>2];c[(c[j>>2]|0)+4>>2]=c[k>>2];c[g>>2]=c[m>>2];s=c[g>
;>2]|0;i=q;return s|0}return 0}function ok(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;m=i;i=i+32|0;g=m+28|0;h
=m+24|0;j=m+20|0;d=m+16|0;k=m+12|0;f=m+8|0;e=m+4|0;l=m;c[h>>2]=a;c[j>>2]=b;c[d>>2]=c[(c[h>>
;2]|0)+28>>2];c[(c[j>>2]|0)+132>>2]=0;c[(c[j>>2]|0)+132+4>>2]=0;c[(c[j>
x3e;2]|0)+132+8>>2]=0;c[e>>2]=Mc(c[h>>2]|0)|0;c[f>>2]=Oc(c[h>>2]|0,k)|0;if(c[k
>>2]|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}if((c[f>>2]|0)!=65536&(
c[f>>2]|0)!=1953784678&(c[f>>2]|0)!=1330926671&(c[f>>2]|0)!=1953658213&(c[f>
x3e;2]|0)!=1954115633&(c[f>>2]|0)!=131072){c[g>>2]=2;l=c[g>>2]|0;i=m;return l|0}c[(c[j>
x3e;2]|0)+132>>2]=1953784678;do if((c[f>>2]|0)==1953784678){f=le(c[h>>2]|0,7544,(c[j>>2]|
0)+132|0)|0;c[k>>2]=f;if(f|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}f=hc(c[d>
x3e;2]|0,4,0,c[(c[j>>2]|0)+132+8>>2]|0,0,k)|0;c[(c[j>>2]|0)+132+12>>2]=f;if(c[k>>
;2]|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}f=ee(c[h>>2]|0,c[(c[j>>2]|0)+
132+8>>2]<<2)|0;c[k>>2]=f;if(f|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return
l|0}c[l>>2]=0;while(1){b=c[h>>2]|0;if((c[l>>2]|0)>=(c[(c[j>>2]|0)+132+8>>
;2]|0))break;f=je(b)|0;c[(c[(c[j>>2]|0)+132+12>>2]|0)+(c[l>>2]<<2)>>2]=f;c[l
x3e;>2]=(c[l>>2]|0)+1}ge(b)}else{c[(c[j>>2]|0)+132+4>>2]=65536;c[(c[j>>2]|0)+132+8
x3e;>2]=1;l=bc(c[d>>2]|0,4,k)|0;c[(c[j>>2]|0)+132+12>>2]=l;if(!(c[k>>2]|0)){c[c[(c[
j>>2]|0)+132+12>>2]>>2]=c[e>>2];break}c[g>>2]=c[k>>2];l=c[g>>
;2]|0;i=m;return l|0}while(0);c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}function pk(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;I=i;i=i+112|0;o=I+92|0;F=I+88|0;J=I+84|0;l=I+80|0;m=I+76|0;G=I+72|0;x=I+68|0;r=I+103|0;u=I+102|0;s=I+101|0;t=I+100|0;D=I+64|
0;n=I+60|0;H=I+56|0;q=I+52|0;v=I+48|0;p=I+44|0;B=I+40|0;E=I+36|0;w=I+32|0;A=I+98|0;y=I+96|0;C=I+4|0;z=I;c[o>>2]=f;c[F
x3e;>2]=g;c[J>>2]=h;c[l>>2]=j;c[m>>2]=k;a[s>>0]=0;a[t>>0]=0;c[D>>
;2]=c[(c[F>>2]|0)+532>>2];c[J>>2]=c[J>>2];c[n>>2]=0;while(1){if((c[n>>
;2]|0)>=(c[l>>2]|0))break;if((c[(c[m>>2]|0)+(c[n>>2]<<3)>>2]|0)!=1768386662
){if((c[(c[m>>2]|0)+(c[n>>2]<<3)>>2]|0)==1768386675)a[t>>0]=1}else a[s>
x3e;0]=1;c[n>>2]=(c[n>>2]|0)+1}if(!(c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]|0)?!(mk
(c[F>>2]|0,1735162214)|0):0)l=(mk(c[F>>2]|0,1128678944)|0)!=0;else l=1;a[r>>0]=l&1;a[u>
x3e;0]=0;if((a[r>>0]|0)==0?c[(c[D>>2]|0)+84>>2]|0:0){c[G>>2]=Ya[c[(c[D>>2]|0)+
84>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;a[u>>0]=((c[G>>2]|0)!=0^1)&1}if((
a[u>>0]|0)==0?(c[G>>2]=Ya[c[(c[D>>2]|0)+32>>2]&127](c[F>>2]|0,c[o>
x3e;2]|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if(!(e[(c[F>>2]|0)+160+18>>1]|0)){c
[G>>2]=8;J=c[G>>2]|0;i=I;return J|0}c[G>>2]=Ya[c[(c[D>>2]|0)+44>>2]&127](
c[F>>2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+40>>2]&127](c[F>>
;2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+56>>2]&127](c[F>>2]|0,c[o>
;>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+52>>2]&127](c[F>>2]|0,c[o>>2]|0)|
0;c[x>>2]=c[G>>2];if(!(a[u>>0]|0)){c[G>>2]=Oa[c[(c[D>>2]|0)+36>>2]
x26;63](c[F>>2]|0,c[o>>2]|0,0)|0;do if(c[G>>2]|0){if((c[G>>2]|0)==142){if((c[(c[F>
x3e;2]|0)+148>>2]|0)==1953658213){a[r>>0]=0;c[G>>2]=0;break}c[G>>2]=143;if(c[(c[(c[F>
;>2]|0)+128>>2]|0)+52>>2]|0?c[(c[c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]>
x3e;2]|0)+8>>2]|0:0){b[(c[F>>2]|0)+216+34>>1]=0;c[G>>2]=0}}}else{c[G>>2]=Oa[c[(
c[D>>2]|0)+136>>2]&63](c[F>>2]|0,c[o>>2]|0,0)|0;if(((c[G>>2]|0)==142?(c[G
>>2]=147,c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]|0):0)?c[(c[c[(c[(c[F>>2]|0)+128>
;>2]|0)+52>>2]>>2]|0)+8>>2]|0:0){b[(c[F>>2]|0)+216+34>>1]=0;c[G>>
;2]=0}}while(0);if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}c[G>>2]=Oa[c[(c[D>>2]|0)+36>
;>2]&63](c[F>>2]|0,c[o>>2]|0,1)|0;if((c[G>>2]|0)==0?(c[G>>2]=Oa[c[(c[D>
x3e;2]|0)+136>>2]&63](c[F>>2]|0,c[o>>2]|0,1)|0,(c[G>>2]|0)==0):0)a[(c[F>>
2]|0)+296>>0]=1;if((c[G>>2]|0)!=0&(c[G>>2]|0)!=142){J=c[G>>2]|0;i=I;return J|0}c[G
x3e;>2]=Ya[c[(c[D>>2]|0)+48>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;if(c[G>>
2]|0)b[(c[F>>2]|0)+368>>1]=-1}do if(c[(c[D>>2]|0)+140>>2]|0?(c[G>>2]=Ya[c[(c[D
>>2]|0)+140>>2]&127](c[F>>2]|0,c[o>>2]|0)|0,c[G>>2]|0):0)if((c[G>>
;2]|0)==142){c[G>>2]=0;break}else{J=c[G>>2]|0;i=I;return J|0}while(0);c[G>>2]=Ya[c[(c[D>>
;2]|0)+80>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;do if(c[G>>2]|0)if((c[G>>2]|0)!=
142){J=c[G>>2]|0;i=I;return J|0}else{c[(c[F>>2]|0)+556>>2]=0;break}while(0);c[G>>2]=Ya[c
[(c[D>>2]|0)+76>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>
x3e;2]|0)+72>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;c[(c[F>>2]|0)+16>>2]=e[(c[F
x3e;>2]|0)+260+4>>1];c[(c[F>>2]|0)+20>>2]=0;c[(c[F>>2]|0)+24>>2]=0;if((e[(
c[F>>2]|0)+368>>1]|0)!=65535?e[(c[F>>2]|0)+368+64>>1]&256|0:0){if((a[s>>0
]|0)==0?(c[G>>2]=qk(c[F>>2]|0,16,(c[F>>2]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0
;i=I;return J|0}if((c[(c[F>>2]|0)+20>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,1,(c[F>>2
]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if((a[t>>0]|0)==0?(c[G>>2]=qk(c[F
x3e;>2]|0,17,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if((c[(c[F>>
;2]|0)+24>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,2,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){
J=c[G>>2]|0;i=I;return J|0}}else{c[G>>2]=qk(c[F>>2]|0,21,(c[F>>2]|0)+20|0)|0;if(c[G>
;>2]|0){J=c[G>>2]|0;i=I;return J|0}if(!(a[s>>0]|0?1:(c[(c[F>>2]|0)+20>>2]|0)!=0)?(c
[G>>2]=qk(c[F>>2]|0,16,(c[F>>2]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return
J|0}if((c[(c[F>>2]|0)+20>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,1,(c[F>>2]|0)+20|0)|
0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}c[G>>2]=qk(c[F>>2]|0,22,(c[F>>2]|0)+
24|0)|0;if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}if(!(a[t>>0]|0?1:(c[(c[F>>2]|0)+24>
;>2]|0)!=0)?(c[G>>2]=qk(c[F>>2]|0,17,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>
x3e;2]|0;i=I;return J|0}if((c[(c[F>>2]|0)+24>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,2,(c[F>
;>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}}c[H>>2]=c[F>>2];c[q>
x3e;2]=c[(c[H>>2]|0)+8>>2];if((d[r>>0]|0)==1)c[q>>2]=c[q>>2]|1;c[q>>
2]=c[q>>2]|24;if((c[x>>2]|0)==0?(c[(c[F>>2]|0)+468>>2]|0)!=196608:0)c[q>>2]=c[
q>>2]|512;if(c[(c[F>>2]|0)+468+12>>2]|0)c[q>>2]=c[q>>2]|4;if(a[(c[F>>
;2]|0)+296>>0]|0)c[q>>2]=c[q>>2]|32;if(c[(c[F>>2]|0)+784>>2]|0)c[q>>
2]=c[q>>2]|64;if((mk(c[F>>2]|0,1735162214)|0?mk(c[F>>2]|0,1719034226)|0:0)?mk(c[F>>2]|0,
1735811442)|0:0)c[q>>2]=c[q>>2]|256;c[(c[H>>2]|0)+8>>2]=c[q>>2];c[q>>
;2]=0;if((d[r>>0]|0)==1?(e[(c[F>>2]|0)+368>>1]|0)!=65535:0){if(!(!(e[(c[F>>2]|0)+368+64
x3e;>1]&512|0)?!(e[(c[F>>2]|0)+368+64>>1]&1|0):0))c[q>>2]=c[q>>2]|1;if(e[(
c[F>>2]|0)+368+64>>1]&32|0)c[q>>2]=c[q>>2]|2}else{if(e[(c[F>>2]|0)+160+44
>>1]&1|0)c[q>>2]=c[q>>2]|2;if(e[(c[F>>2]|0)+160+44>>1]&2|0)c[q>
x3e;2]=c[q>>2]|1}c[(c[H>>2]|0)+12>>2]=c[q>>2];tk(c[F>>2]|0)|0;c[v>>2
]=0;while(1){if((c[v>>2]|0)>=(c[(c[H>>2]|0)+36>>2]|0))break;c[p>>2]=c[(c[(c[H>
x3e;2]|0)+40>>2]|0)+(c[v>>2]<<2)>>2];J=uk(e[(c[p>>2]|0)+8>>1]|0,e[(c
[p>>2]|0)+10>>1]|0)|0;c[(c[p>>2]|0)+4>>2]=J;c[v>>2]=(c[v>>2]|0)+1}c[
E>>2]=c[(c[F>>2]|0)+612>>2];do if((c[E>>2]|0)>>>0>0){c[w>>
2]=c[(c[(c[F>>2]|0)+104>>2]|0)+28>>2];b[A>>1]=b[(c[F>>2]|0)+160+18>>
1]|0;b[y>>1]=b[(c[F>>2]|0)+368+2>>1]|0;if(!((e[A>>1]|0)!=0?(e[(c[F>>2]|0)+368
x3e;>1]|0)!=65535:0)){b[y>>1]=0;b[A>>1]=1}J=hc(c[w>>2]|0,16,0,c[E>>2]|0,0,G)|0;c[(c
[H>>2]|0)+32>>2]=J;if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}c[B>>2]=0;while(1){
m=c[H>>2]|0;if((c[B>>2]|0)>>>0>=(c[E>>2]|0)>>>0){l=103;break}c[
z>>2]=(c[m+32>>2]|0)+(c[B>>2]<<4);c[G>>2]=Oa[c[(c[D>>2]|0)+152>
x3e;2]&63](c[F>>2]|0,c[B>>2]|0,C)|0;if(c[G>>2]|0){l=112;break}b[c[z>>2]>>
1]=c[C+20>>2]>>6;J=_(b[y>>1]|0,e[C>>1]|0)|0;b[(c[z>>2]|0)+2>>1]=(J+((
e[A>>1]|0)/2|0)|0)/(e[A>>1]|0)|0;c[(c[z>>2]|0)+8>>2]=e[C>>1]<<6;c[(c
[z>>2]|0)+12>>2]=e[C+2>>1]<<6;c[(c[z>>2]|0)+4>>2]=e[C+2>>1
]<<6;c[B>>2]=(c[B>>2]|0)+1}if((l|0)==103){J=m+8|0;c[J>>2]=c[J>>2]|2;c[(c[H>
;>2]|0)+28>>2]=c[E>>2];break}else if((l|0)==112){J=c[G>>2]|0;i=I;return J|0}}while(0);if((c[(
c[H>>2]|0)+8>>2]&2|0)==0?(c[(c[H>>2]|0)+8>>2]&1|0)==0:0){J=(c[H>>2]|
0)+8|0;c[J>>2]=c[J>>2]|1}if(!(c[(c[H>>2]|0)+8>>2]&1)){J=c[G>>2]|0;i=I;return
J|0}c[(c[H>>2]|0)+52>>2]=b[(c[F>>2]|0)+160+36>>1];c[(c[H>>2]|0)+52+4>>
;2]=b[(c[F>>2]|0)+160+38>>1];c[(c[H>>2]|0)+52+8>>2]=b[(c[F>>2]|0)+160+40>
x3e;1];c[(c[H>>2]|0)+52+12>>2]=b[(c[F>>2]|0)+160+42>>1];b[(c[H>>2]|0)+68>
x3e;1]=b[(c[F>>2]|0)+160+18>>1]|0;b[(c[H>>2]|0)+70>>1]=b[(c[F>>2]|0)+216+4>
;>1]|0;b[(c[H>>2]|0)+72>>1]=b[(c[F>>2]|0)+216+6>>1]|0;b[(c[H>>2]|0)+74>
;>1]=(b[(c[H>>2]|0)+70>>1]|0)-(b[(c[H>>2]|0)+72>>1]|0)+(b[(c[F>>2]|0)+216
+8>>1]|0);b[(c[H>>2]|0)+76>>1]=b[(c[F>>2]|0)+216+10>>1]|0;if(d[(c[F>>
;2]|0)+296>>0]|0)l=e[(c[F>>2]|0)+300+10>>1]|0;else l=b[(c[H>>2]|0)+74>>1]|0;b[(
c[H>>2]|0)+78>>1]=l;b[(c[H>>2]|0)+80>>1]=(b[(c[F>>2]|0)+468+8>>1]|0)-((
b[(c[F>>2]|0)+468+10>>1]|0)/2|0);b[(c[H>>2]|0)+82>>1]=b[(c[F>>2]|0)+468+10>
;>1]|0;J=c[G>>2]|0;i=I;return J|0}function qk(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,r=
0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=i;i=i+64|0;h=z+48|0;j=z+54|0;k=z+44|0;t=z+40|0;m=z+36|0;w=z+32|0;u=z+52|0;v=z+28|0;n=z+24|0;
p=z+20|0;o=z+16|0;r=z+12|0;q=z+8|0;s=z+56|0;l=z+4|0;x=z;c[h>>2]=d;b[j>>1]=f;c[k>>2]=g;c[t>>
;2]=c[(c[h>>2]|0)+100>>2];c[m>>2]=0;c[w>>2]=0;c[n>>2]=-1;c[p>>2]=-1;
c[o>>2]=-1;c[r>>2]=-1;c[q>>2]=-1;a[s>>0]=0;c[v>>2]=c[(c[h>>2]|0)+348
+12>>2];b[u>>1]=0;while(1){if((e[u>>1]|0)>=(e[(c[h>>2]|0)+344>>1]|0))break
;a:do if((e[(c[v>>2]|0)+6>>1]|0)==(e[j>>1]|0)?(e[(c[v>>2]|0)+8>>1]|0)>0:0
)switch(e[c[v>>2]>>1]|0){case 2:case 0:{c[q>>2]=e[u>>1];break a}case 1:{if(!(e[(c[v>
;>2]|0)+4>>1]|0)){c[o>>2]=e[u>>1];break a}if(e[(c[v>>2]|0)+2>>1]|0)break
a;c[p>>2]=e[u>>1];break a}case 3:{if((c[r>>2]|0)!=-1?(e[(c[v>>2]|0)+4>>1]&
;1023|0)!=9:0)break a;switch(e[(c[v>>2]|0)+2>>1]|0){case 10:case 1:case 0:break;default:break a}a[s>>
;0]=(e[(c[v>>2]|0)+4>>1]&1023|0)==9;c[r>>2]=e[u>>1];break a}default:break a}while(0
);b[u>>1]=(b[u>>1]|0)+1<<16>>16;c[v>>2]=(c[v>>2]|0)+20}c[n>>
;2]=c[p>>2];if((c[o>>2]|0)>=0)c[n>>2]=c[o>>2];c[l>>2]=0;b:do if((c[r>
;>2]|0)>=0?(c[n>>2]|0)<0|(a[s>>0]|0)!=0:0){c[v>>2]=(c[(c[h>>2]|0)+348+12
x3e;>2]|0)+((c[r>>2]|0)*20|0);switch(e[(c[v>>2]|0)+2>>1]|0){case 0:case 1:{c[l>>2]=
106;break b}case 10:{c[l>>2]=106;break b}default:break b}}else y=23;while(0);do if((y|0)==23){if((c[n>>2]|0)
x3e;=0){c[v>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[n>>2]|0)*20|0);c[l>>2]=107;break
}if((c[q>>2]|0)>=0){c[v>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[q>>2]|0)*20|
0);c[l>>2]=106}}while(0);if(!((c[v>>2]|0)!=0&(c[l>>2]|0)!=0)){x=c[w>>2]|0;y=c[k>
;>2]|0;c[y>>2]=x;y=c[m>>2]|0;i=z;return y|0}do if(!(c[(c[v>>2]|0)+16>>2]|0)){c[x>
;>2]=c[(c[h>>2]|0)+348+16>>2];y=hc(c[t>>2]|0,1,0,e[(c[v>>2]|0)+8>>1]|0,0,
m)|0;c[(c[v>>2]|0)+16>>2]=y;if(((c[m>>2]|0)==0?(y=Kc(c[x>>2]|0,c[(c[v>>2]|0)+12
>>2]|0)|0,c[m>>2]=y,(y|0)==0):0)?(y=Rc(c[x>>2]|0,c[(c[v>>2]|0)+16>>2]|0,e[(c[v
>>2]|0)+8>>1]|0)|0,c[m>>2]=y,(y|0)==0):0)break;Fb(c[t>>2]|0,c[(c[v>>2]|0)+16
x3e;>2]|0);c[(c[v>>2]|0)+16>>2]=0;b[(c[v>>2]|0)+8>>1]=0;c[w>>2]=0;x=c[w
x3e;>2]|0;y=c[k>>2]|0;c[y>>2]=x;y=c[m>>2]|0;i=z;return y|0}while(0);c[w>>2]=Ya[c[l
x3e;>2]&127](c[v>>2]|0,c[t>>2]|0)|0;x=c[w>>2]|0;y=c[k>>2]|0;c[y>>2]=
x;y=c[m>>2]|0;i=z;return y|0}function rk(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,q=0;n=i;i=i+48|0;g=n
+32|0;q=n+28|0;p=n+24|0;m=n+20|0;j=n+16|0;h=n+12|0;k=n+8|0;l=n+4|0;o=n;c[q>>2]=b;c[p>>2]=f;c[m>>2]=
0;c[l>>2]=c[(c[q>>2]|0)+16>>2];c[j>>2]=((e[(c[q>>2]|0)+8>>1]|0)>
;>>0)/2|0;c[m>>2]=hc(c[p>>2]|0,1,0,(c[j>>2]|0)+1|0,0,o)|0;if(c[o>>2]|0){c[g>
;>2]=0;q=c[g>>2]|0;i=n;return q|0}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=(
c[j>>2]|0)>>>0)break;c[l>>2]=(c[l>>2]|0)+2;q=(((d[(c[l>>2]|0)+-2>>
;0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[h>
x3e;2]=q;c[h>>2]=(c[h>>2]|0)>>>0<32|(c[h>>2]|0)>>>0>127?63
:q;a[(c[m>>2]|0)+(c[k>>2]|0)>>0]=c[h>>2];c[k>>2]=(c[k>>2]|0)+1}a[(c[
m>>2]|0)+(c[j>>2]|0)>>0]=0;c[g>>2]=c[m>>2];q=c[g>>2]|0;i=n;return q|
0}function sk(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,q=0;n=i;i=i+48|0;g=n+32|0;q=n+28|0;p=n+24|0;m=n+20|0;j=n+
16|0;h=n+12|0;k=n+8|0;l=n+4|0;o=n;c[q>>2]=b;c[p>>2]=f;c[m>>2]=0;c[l>>2]=c[(c[q>>
;2]|0)+16>>2];c[j>>2]=e[(c[q>>2]|0)+8>>1];c[m>>2]=hc(c[p>>2]|0,1,0,(
c[j>>2]|0)+1|0,0,o)|0;if(c[o>>2]|0){c[g>>2]=0;q=c[g>>2]|0;i=n;return q|0}c[k>>
2]=0;while(1){if((c[k>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;q=c[l>>
2]|0;c[l>>2]=q+1;q=d[q>>0]|0;c[h>>2]=q;c[h>>2]=(c[h>>2]|0)>>>0
x3c;32|(c[h>>2]|0)>>>0>127?63:q;a[(c[m>>2]|0)+(c[k>>2]|0)>>0]=c[h>
;>2];c[k>>2]=(c[k>>2]|0)+1}a[(c[m>>2]|0)+(c[j>>2]|0)>>0]=0;c[g>>
;2]=c[m>>2];q=c[g>>2]|0;i=n;return q|0}function tk(a){a=a|0;var f=0,g=0,h=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,A=0;A=i;i=i+224|0;y=4;x=Fs(40)|0;c[x>>2]=0;s=A+216|0;t=A+212|0;l=A+200|0;p=A+196|0;r=A+192
|0;u=A+188|0;m=A+184|0;w=A+8|0;q=A+4|0;v=A;j=c[a+500>>2]|0;k=j+(c[a+504>>2]|0)|0;c[t>>2]=j;if(c[t
x3e;>2]|0?((c[t>>2]|0)+4|0)>>>0<=k>>>0:0){c[t>>2]=(c[t>>2]|
0)+2;f=c[t>>2]|0;if((((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535|0){c[t>>2]=f+-2;z=8;Gs(x|0);i=A;return z|0}c[t>>2]=
f+2;c[s>>2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>
;>0]|0)&65535)<<0)&65535;while(1){if((c[s>>2]|0)>>>0<=0)break;if(((c[t>
;>2]|0)+8|0)>>>0>k>>>0)break;c[t>>2]=(c[t>>2]|0)+2;b[l+8>>
1]=((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535
)<<0;c[t>>2]=(c[t>>2]|0)+2;b[l+10>>1]=((d[(c[t>>2]|0)+-2>>0]|0)&
;65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0;c[l>>2]=a;c[l+4>>
;2]=0;c[t>>2]=(c[t>>2]|0)+4;f=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>
2]|0)+-4+1>>0]|0)<<16|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-
4+3>>0]|0)<<0;if(f|0?f>>>0<=((c[a+504>>2]|0)-2|0)>>>0:0){c[p>
;>2]=j+f;c[r>>2]=(((d[c[p>>2]>>0]|0)&65535)<<8|((d[(c[p>>2]|0)+1>
;>0]|0)&65535)<<0)&65535;c[u>>2]=3080;while(1){if(!(c[c[u>>2]>>2]|0))break
;c[m>>2]=c[c[u>>2]>>2];if((c[(c[m>>2]|0)+40>>2]|0)==(c[r>>2]|0)){z=14
;break}c[u>>2]=(c[u>>2]|0)+4}a:do if((z|0)==14){z=0;c[q>>2]=0;n=0;qa(10,w|0,c[p>>2]|0,k|
0,0);f=n;n=0;if((f|0)!=0&(o|0)!=0){g=Rs(c[f>>2]|0,x|0,y|0)|0;if(!g)ta(f|0,o|0);C=o}else g=-1;if((g|0)!=1){c[w+172
>>2]=e[a+260+4>>1];x=Qs(w+16|0,1,x|0,y|0)|0;y=C;n=0;f=n;n=0;if((f|0)!=0&(o|0)!=0){g=Rs(c[f>>2
]|0,x|0,y|0)|0;if(!g)ta(f|0,o|0);C=o}else g=-1;if((g|0)!=1)f=0;else f=C}else f=C;while(1){if(!f){n=0;f=oa(c[(c[m>>2]|0
)+44>>2]|0,c[p>>2]|0,w|0)|0;g=n;n=0;if((g|0)!=0&(o|0)!=0){h=Rs(c[g>>2]|0,x|0,y|0)|0;if(!h)ta(
g|0,o|0);C=o}else h=-1;if((h|0)==1){f=C;continue}c[q>>2]=f}if(c[w+12>>2]|0)break a;n=0;f=ma(23,c[m>>
;2]|0,c[p>>2]|0,l|0,v|0)|0;g=n;n=0;if((g|0)!=0&(o|0)!=0){h=Rs(c[g>>2]|0,x|0,y|0)|0;if(!h)ta(g|0,o|0);C=
o}else h=-1;if((h|0)==1)f=C;else break}if(!f)c[(c[v>>2]|0)+20>>2]=c[q>>2]}while(0)}c[s>>
2]=(c[s>>2]|0)+-1}z=0;Gs(x|0);i=A;return z|0}z=8;Gs(x|0);i=A;return z|0}function uk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g
=0,h=0,j=0;j=i;i=i+32|0;g=j+16|0;d=j+12|0;e=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[h>>2]=3120;c[f
>>2]=(c[h>>2]|0)+132;while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>
x3e;>0){d=8;break}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)){if((c[(c[h>>2]|0)+4>>
;2]|0)==(c[e>>2]|0)){d=6;break}if((c[(c[h>>2]|0)+4>>2]|0)==-1){d=6;break}}c[h>>2]=(c[h
x3e;>2]|0)+12}if((d|0)==6){c[g>>2]=c[(c[h>>2]|0)+8>>2];h=c[g>>2]|0;i=j;return h|0}else
if((d|0)==8){c[g>>2]=0;h=c[g>>2]|0;i=j;return h|0}return 0}function vk(d){d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i
;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=d;if(!(c[e>>2]|0)){i=j;return}c[f>>2]=c[(c[e>
x3e;2]|0)+100>>2];c[g>>2]=c[(c[e>>2]|0)+532>>2];if(c[g>>2]|0){if(c[(c[g>
x3e;2]|0)+116>>2]|0)Va[c[(c[g>>2]|0)+116>>2]&63](c[e>>2]|0);if(c[(c[g>>2]|
0)+144>>2]|0)Va[c[(c[g>>2]|0)+144>>2]&63](c[e>>2]|0)}wk(c[e>>2]|0);xk(c[e
>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+132+12>>2]|0);c[(c[e>>2]|0)+132+12>>
;2]=0;c[(c[e>>2]|0)+132+8>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+156>>2]|0);c[(c[e
x3e;>2]|0)+156>>2]=0;b[(c[e>>2]|0)+152>>1]=0;c[h>>2]=c[(c[e>>2]|0)+104>
;>2];fe(c[h>>2]|0,(c[e>>2]|0)+500|0);c[(c[e>>2]|0)+504>>2]=0;Fb(c[f>>2]|0
,c[(c[e>>2]|0)+216+36>>2]|0);c[(c[e>>2]|0)+216+36>>2]=0;Fb(c[f>>2]|0,c[(c[e>
;>2]|0)+216+40>>2]|0);c[(c[e>>2]|0)+216+40>>2]=0;if(a[(c[e>>2]|0)+296>>0]|
0){Fb(c[f>>2]|0,c[(c[e>>2]|0)+300+36>>2]|0);c[(c[e>>2]|0)+300+36>>2]=0;Fb(c[f
x3e;>2]|0,c[(c[e>>2]|0)+300+40>>2]|0);c[(c[e>>2]|0)+300+40>>2]=0;a[(c[e>>
2]|0)+296>>0]=0}Fb(c[f>>2]|0,c[(c[e>>2]|0)+548+4>>2]|0);c[(c[e>>2]|0)+548+4>
;>2]=0;b[(c[e>>2]|0)+548+2>>1]=0;if(c[g>>2]|0)Va[c[(c[g>>2]|0)+60>>2]&
;63](c[e>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+20>>2]|0);c[(c[e>>2]|0)+20>>
;2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;Fb(c[f>
x3e;2]|0,c[(c[e>>2]|0)+32>>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[(c[e>>2]|0)+28>
x3e;2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+700>>2]|0);c[(c[e>>2]|0)+700>>2]=0;c[(c[e
x3e;>2]|0)+532>>2]=0;i=j;return}function wk(b){b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=b;c[e>>2]=(c[d>>2]|0)+792;if(!(a[(c[e>>2]|0)+20>>0]|0)){i=g;return}c[f>
x3e;2]=c[(c[d>>2]|0)+104>>2];if(c[c[e>>2]>>2]|0)fe(c[f>>2]|0,c[e>>2]|
0);c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|0)+12>>2]=
0;i=g;return}function xk(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]|0)+104>>2];fe(c[e>>2]|0,(c[d>>2]|0)+772|0);c[(c[d>>2]|0)+776>>2]=0;c[(c[d
x3e;>2]|0)+780>>2]=0;c[(c[d>>2]|0)+784>>2]=0;c[(c[d>>2]|0)+788>>2]=0;i=b;
return}function yk(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[f>
x3e;2]=c[f>>2];b=qc(3252,c[e>>2]|0)|0;i=d;return b|0}function zk(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;s=i;i=i+48|0;g=s+36|0;h=s+32|0;j=s+28|0;k=s+24|0;l=s+20|0;m=s+16|0;n=s+12|0;p=s
+8|0;q=s+4|0;o=s;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;e=c[h>
x3e;2]|0;do if(c[j>>2]|0){c[q>>2]=mk(e,c[j>>2]|0)|0;if(c[q>>2]|0){c[k>>2]=(c[k
>>2]|0)+(c[(c[q>>2]|0)+8>>2]|0);c[o>>2]=c[(c[q>>2]|0)+12>>2];r=6;break
}else{c[n>>2]=142;break}}else{c[o>>2]=c[(c[e+104>>2]|0)+4>>2];r=6}while(0);if((r|0)==6){
if(c[m>>2]|0?(c[c[m>>2]>>2]|0)==0:0){c[c[m>>2]>>2]=c[o>>2];c[g>
x3e;2]=0;r=c[g>>2]|0;i=s;return r|0}if(c[m>>2]|0)c[o>>2]=c[c[m>>2]>>2];c[p>
;>2]=c[(c[h>>2]|0)+104>>2];c[n>>2]=Sc(c[p>>2]|0,c[k>>2]|0,c[l>>
2]|0,c[o>>2]|0)|0}c[g>>2]=c[n>>2];r=c[g>>2]|0;i=s;return r|0}function Ak(a,b){a=a|0;b=b|
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]=a;c[j>>2]=b;switch(c[j>>2]|0){case
0:{c[g>>2]=(c[f>>2]|0)+160;break}case 3:{c[g>>2]=(c[f>>2]|0)+216;break}case 4:{c[g>
x3e;2]=d[(c[f>>2]|0)+296>>0]|0|0?(c[f>>2]|0)+300|0:0;break}case 2:{c[g>>2]=(e[(c[f>
x3e;2]|0)+368>>1]|0|0)==65535?0:(c[f>>2]|0)+368|0;break}case 5:{c[g>>2]=(c[f>>2]|0)+468;
break}case 1:{c[g>>2]=(c[f>>2]|0)+260;break}case 6:{c[g>>2]=c[(c[f>>2]|0)+556>>
;2]|0?(c[f>>2]|0)+556|0:0;break}default:c[g>>2]=0}i=h;return c[g>>2]|0}function Bk(a,b,d,f,g){a=a|
0;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;o=i;i=i+32|0;h=o+20|0;j=o+16|0;k=o+12|0;l=o+8|0;m=o+4|0;n=o;c[j>
x3e;2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=f;c[n>>2]=g;if(!((c[l>>2]|0)!=0&(c[m
>>2]|0)!=0&(c[n>>2]|0)!=0)){c[h>>2]=6;d=c[h>>2]|0;i=o;return d|0}if((c[k>>
;2]|0)>>>0>=(e[(c[j>>2]|0)+152>>1]|0)>>>0){c[h>>2]=142;d=c[h>
;>2]|0;i=o;return d|0}else{c[c[l>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>>
;2]<<4)>>2];c[c[m>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>>
;2]<<4)+8>>2];c[c[n>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>
x3e;2]<<4)+12>>2];c[h>>2]=0;d=c[h>>2]|0;i=o;return d|0}return 0}function Ck(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,z=0,A=0;A=i;i=i+80|0;g=A+72|0;h=A+68|0;r=A+64|0;m=A+60|
0;l=A+56|0;x=A+52|0;s=A+48|0;p=A+44|0;t=A+40|0;n=A+36|0;j=A+32|0;y=A+28|0;w=A+24|0;v=A+20|0;q=A+16|0;u=A+12|0;o=A+8|0;k=A+4|0;z=
A;c[h>>2]=f;c[x>>2]=0;if(c[(c[h>>2]|0)+700>>2]|0){c[g>>2]=c[(c[h>>2]|
0)+700>>2];z=c[g>>2]|0;i=A;return z|0}c[m>>2]=-1;c[l>>2]=-1;c[r>>2]=0;while(1){
if((c[r>>2]|0)>=(e[(c[h>>2]|0)+344>>1]|0|0))break;c[s>>2]=(c[(c[h>>2]|0)+
348+12>>2]|0)+((c[r>>2]|0)*20|0);if((e[(c[s>>2]|0)+6>>1]|0|0)==6?(e[(c[s>>2]|0
)+8>>1]|0|0)>0:0){if(((e[c[s>>2]>>1]|0|0)==3?(e[(c[s>>2]|0)+2>>1]|0|0)==1
:0)?(e[(c[s>>2]|0)+4>>1]|0|0)==1033:0)c[m>>2]=c[r>>2];if(((e[c[s>>2]>>
;1]|0|0)==1?(e[(c[s>>2]|0)+2>>1]|0|0)==0:0)?(e[(c[s>>2]|0)+4>>1]|0|0)==0:0)c[l>>
;2]=c[r>>2]}c[r>>2]=(c[r>>2]|0)+1}do if((c[m>>2]|0)!=-1){c[p>>2]=c[(c[h>
x3e;2]|0)+100>>2];c[t>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[m>>2]|0)*20|0);c[n
x3e;>2]=(e[(c[t>>2]|0)+8>>1]|0|0)/2|0;c[j>>2]=0;c[j>>2]=c[j>>2];c[x>
x3e;2]=bc(c[p>>2]|0,(e[(c[t>>2]|0)+8>>1]|0)+1|0,j)|0;if(!(c[j>>2]|0)){c[y>>2]=
c[(c[h>>2]|0)+348+16>>2];c[w>>2]=c[x>>2];c[v>>2]=c[(c[t>>2]|0)+16>
;>2];z=Kc(c[y>>2]|0,c[(c[t>>2]|0)+12>>2]|0)|0;c[j>>2]=z;if((z|0)==0?(z=ee(c[y>
x3e;2]|0,e[(c[t>>2]|0)+8>>1]|0)|0,c[j>>2]=z,(z|0)==0):0){c[v>>2]=c[(c[y>>2]|0)+
32>>2];while(1){if((c[n>>2]|0)>>>0<=0)break;if(((d[c[v>>2]>>0]|0|0)==
0?(d[(c[v>>2]|0)+1>>0]|0|0)>=32:0)?(d[(c[v>>2]|0)+1>>0]|0|0)<128:0){u=a[(c[v
x3e;>2]|0)+1>>0]|0;z=c[w>>2]|0;c[w>>2]=z+1;a[z>>0]=u}c[n>>2]=(c[n>
x3e;2]|0)+-1;c[v>>2]=(c[v>>2]|0)+2}a[c[w>>2]>>0]=0;ge(c[y>>2]|0);break}Fb(c[p
x3e;>2]|0,c[x>>2]|0);c[x>>2]=0;b[(c[t>>2]|0)+8>>1]=0;c[(c[t>>2]|0)+12>
;>2]=0;Fb(c[p>>2]|0,c[(c[t>>2]|0)+16>>2]|0);c[(c[t>>2]|0)+16>>2]=0}}else
if((c[l>>2]|0)!=-1?(c[q>>2]=c[(c[h>>2]|0)+100>>2],c[u>>2]=(c[(c[h>>2
]|0)+348+12>>2]|0)+((c[l>>2]|0)*20|0),c[o>>2]=e[(c[u>>2]|0)+8>>1],c[k>>
;2]=0,c[k>>2]=c[k>>2],c[x>>2]=bc(c[q>>2]|0,(c[o>>2]|0)+1|0,k)|0,(c[k>>
;2]|0)==0):0){c[z>>2]=c[(c[h>>2]|0)+348+16>>2];y=Kc(c[z>>2]|0,c[(c[u>>2]|0)+12
>>2]|0)|0;c[k>>2]=y;if((y|0)==0?(z=Rc(c[z>>2]|0,c[x>>2]|0,c[o>>2]|0)|0,c[k>
;>2]=z,(z|0)==0):0){a[(c[x>>2]|0)+(c[o>>2]|0)>>0]=0;break}c[(c[u>>2]|0)+12>>
;2]=0;b[(c[u>>2]|0)+8>>1]=0;Fb(c[q>>2]|0,c[(c[u>>2]|0)+16>>2]|0);c[(c[u>
x3e;2]|0)+16>>2]=0;Fb(c[q>>2]|0,c[x>>2]|0);c[x>>2]=0}while(0);c[(c[h>>2]|0)+700
>>2]=c[x>>2];c[g>>2]=c[x>>2];z=c[g>>2]|0;i=A;return z|0}function Dk(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;m=k+20|0;l=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[m>>
;2]=a;c[l>>2]=b;c[f>>2]=d;c[g>>2]=e;c[h>>2]=Ek(c[m>>2]|0,c[l>>2]|0,j
)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=k;return m|0}pe(c[f>>2]|0,c[j>>2]|0,c[g>>2]|0)|
0;m=c[h>>2]|0;i=k;return m|0}function Ek(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,r=0,s=0,t=0;
t=i;i=i+48|0;h=t+36|0;j=t+32|0;k=t+28|0;l=t+24|0;m=t+20|0;p=t+16|0;n=t+12|0;q=t+8|0;r=t+4|0;o=t+40|0;s=t;c[j>>2]=d;c[k
>>2]=f;c[l>>2]=g;if(!(c[j>>2]|0)){c[h>>2]=35;s=c[h>>2]|0;i=t;return s|0}if((c[
k>>2]|0)>>>0>=(e[(c[j>>2]|0)+260+4>>1]|0)>>>0){c[h>>2
]=16;s=c[h>>2]|0;i=t;return s|0}c[q>>2]=c[(c[j>>2]|0)+536>>2];if(!(c[q>>2]|0)){
c[h>>2]=7;s=c[h>>2]|0;i=t;return s|0}c[p>>2]=(c[j>>2]|0)+628;f=Ta[c[(c[q>>2]|0
)+16>>2]&63](0)|0;c[c[l>>2]>>2]=f;c[n>>2]=c[(c[j>>2]|0)+468>>2];
do if((c[n>>2]|0)==65536){if((c[k>>2]|0)>>>0<258){s=Ta[c[(c[q>>2]|0)+16>
x3e;2]&63](c[k>>2]|0)|0;c[c[l>>2]>>2]=s}}else{if((c[n>>2]|0)!=131072){if((c[n>
x3e;2]|0)!=163840)break;c[s>>2]=(c[p>>2]|0)+4;if((a[c[p>>2]>>0]|0)==0?(c[m>>2]=
Fk(c[j>>2]|0)|0,c[m>>2]|0):0)break;if((c[k>>2]|0)>>>0>=(e[c[s>>2]>
;>1]|0)>>>0)break;c[k>>2]=(c[k>>2]|0)+(a[(c[(c[s>>2]|0)+4>>2]|0)+(c[
k>>2]|0)>>0]|0);s=Ta[c[(c[q>>2]|0)+16>>2]&63](c[k>>2]|0)|0;c[c[l>>
;2]>>2]=s;break}c[r>>2]=(c[p>>2]|0)+4;if((a[c[p>>2]>>0]|0)==0?(c[m>>
2]=Fk(c[j>>2]|0)|0,c[m>>2]|0):0)break;if((c[k>>2]|0)>>>0<(e[c[r>>2]
x3e;>1]|0)>>>0){b[o>>1]=b[(c[(c[r>>2]|0)+4>>2]|0)+(c[k>>2]<<
;1)>>1]|0;if((e[o>>1]|0)<258){s=Ta[c[(c[q>>2]|0)+16>>2]&63](e[o>>1]|
0)|0;c[c[l>>2]>>2]=s;break}else{c[c[l>>2]>>2]=c[(c[(c[r>>2]|0)+8>>2]|
0)+((e[o>>1]|0)-258<<2)>>2];break}}}while(0);c[h>>2]=0;s=c[h>>2]|0;i=t;return
s|0}function Fk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;j=k+16|0;e=k+12|0;f=k+8|0;g=k+4|0;h=k;c[d>
x3e;2]=b;c[j>>2]=c[(c[d>>2]|0)+104>>2];c[e>>2]=Wa[c[(c[d>>2]|0)+508>>
;2]&31](c[d>>2]|0,1886352244,c[j>>2]|0,g)|0;if(c[e>>2]|0){j=c[e>>2]|0;i=k;return j|
0}b=Mc(c[j>>2]|0)|0;c[h>>2]=b+(c[g>>2]|0);c[f>>2]=c[(c[d>>2]|0)+468>>
;2];g=Qc(c[j>>2]|0,32)|0;c[e>>2]=g;if(g|0){j=c[e>>2]|0;i=k;return j|0}do if((c[f>>2]|0)!=
131072)if((c[f>>2]|0)==163840){c[e>>2]=Hk(c[d>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;break
}else{c[e>>2]=3;break}else c[e>>2]=Gk(c[d>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;while(0
);a[(c[d>>2]|0)+628>>0]=1;j=c[e>>2]|0;i=k;return j|0}function Gk(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,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=i;i=i+64|0;l=A+52|0;m=A+48|0;n=A+44|0;o=A+40|0;s=A+36|
0;p=A+32|0;w=A+28|0;x=A+60|0;q=A+24|0;v=A+20|0;j=A+16|0;k=A+12|0;h=A+8|0;t=A+58|0;r=A+4|0;y=A;u=A+56|0;c[m>>2]=d;c[n
x3e;>2]=f;c[o>>2]=g;c[s>>2]=c[(c[n>>2]|0)+28>>2];c[q>>2]=0;c[v>>
;2]=0;c[w>>2]=(Pc(c[n>>2]|0,p)|0)&65535;do if(!(c[p>>2]|0)){if((c[w>>2]|0)>(e[(
c[m>>2]|0)+260+4>>1]|0|0)){c[p>>2]=3;break}c[q>>2]=hc(c[s>>2]|0,2,0,c[w>
x3e;2]|0,0,p)|0;a:do if((c[p>>2]|0)==0?(f=ee(c[n>>2]|0,c[w>>2]<<1)|0,c[p>>2]=f
,(f|0)==0):0){c[j>>2]=0;while(1){d=c[n>>2]|0;if((c[j>>2]|0)>=(c[w>>2]|0))break;f=ie
(d)|0;b[(c[q>>2]|0)+(c[j>>2]<<1)>>1]=f;c[j>>2]=(c[j>>2]|0)+1}ge(d);b
[x>>1]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[w>>2]|0))break;c[h>>2]=e[(
c[q>>2]|0)+(c[k>>2]<<1)>>1];if((c[h>>2]|0)>=258?(c[h>>2]=(c[h
x3e;>2]|0)-257,(c[h>>2]|0)>(e[x>>1]|0|0)):0)b[x>>1]=c[h>>2];c[k>>2]=(
c[k>>2]|0)+1}c[v>>2]=hc(c[s>>2]|0,4,0,e[x>>1]|0,0,p)|0;if(!(c[p>>2]|0)){b[t>
;>1]=0;while(1){if((e[t>>1]|0|0)>=(e[x>>1]|0|0)){z=28;break}k=Mc(c[n>>2]|0)|0;if((k|0)
x3e;=(c[o>>2]|0)){z=28;break}c[r>>2]=(ke(c[n>>2]|0,p)|0)&255;if(c[p>>2]|0)break;if(!((
c[r>>2]|0)<=(c[o>>2]|0)?(k=Mc(c[n>>2]|0)|0,(k|0)<=((c[o>>2]|0)-(c[r>>
;2]|0)|0)):0)){k=c[o>>2]|0;if(0>(k-(Mc(c[n>>2]|0)|0)|0))d=0;else{d=c[o>>2]|0;d=d-(Mc(c[n>
;>2]|0)|0)|0}c[r>>2]=d}k=hc(c[s>>2]|0,1,0,(c[r>>2]|0)+1|0,0,p)|0;c[(c[v>>2]|0)+((e[
t>>1]|0)<<2)>>2]=k;if(c[p>>2]|0)break;k=Rc(c[n>>2]|0,c[(c[v>>2]|0)+((
e[t>>1]|0)<<2)>>2]|0,c[r>>2]|0)|0;c[p>>2]=k;if(k|0)break;a[(c[(c[v>>
2]|0)+((e[t>>1]|0)<<2)>>2]|0)+(c[r>>2]|0)>>0]=0;b[t>>1]=(b[t>
x3e;1]|0)+1<<16>>16}b:do if((z|0)==28){c:do if((e[t>>1]|0|0)<(e[x>>1]|0|0))while(1){
if((e[t>>1]|0|0)>=(e[x>>1]|0|0))break c;z=hc(c[s>>2]|0,1,0,1,0,p)|0;c[(c[v>>2]|0)+((
e[t>>1]|0)<<2)>>2]=z;if(c[p>>2]|0)break b;a[c[(c[v>>2]|0)+((e[t>>1]|
0)<<2)>>2]>>0]=0;b[t>>1]=(b[t>>1]|0)+1<<16>>16}while(0);c[
y>>2]=(c[m>>2]|0)+628+4;b[c[y>>2]>>1]=c[w>>2];b[(c[y>>2]|0)+2>
x3e;1]=b[x>>1]|0;c[(c[y>>2]|0)+4>>2]=c[q>>2];c[(c[y>>2]|0)+8>>2]=c[v
>>2];c[l>>2]=0;z=c[l>>2]|0;i=A;return z|0}while(0);b[u>>1]=0;while(1){if((e[u>>
;1]|0|0)>=(e[x>>1]|0|0))break a;Fb(c[s>>2]|0,c[(c[v>>2]|0)+((e[u>>1]|0)<<
2)>>2]|0);c[(c[v>>2]|0)+((e[u>>1]|0)<<2)>>2]=0;b[u>>1]=(b[u>>
;1]|0)+1<<16>>16}}}while(0);Fb(c[s>>2]|0,c[v>>2]|0);c[v>>2]=0;Fb(c[s>>
;2]|0,c[q>>2]|0);c[q>>2]=0}while(0);c[l>>2]=c[p>>2];z=c[l>>2]|0;i=A;return z|0
}function Hk(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,r=0,s=0,t=0,u=0;t=i;i=i+48|0;h=t+40|0;j=t+36|0;k=t
+32|0;u=t+28|0;n=t+24|0;l=t+20|0;p=t+16|0;q=t+12|0;o=t+8|0;m=t+4|0;r=t;c[j>>2]=d;c[k>>2]=f;c[u>>2]=
g;c[n>>2]=c[(c[k>>2]|0)+28>>2];c[q>>2]=0;c[u>>2]=c[u>>2];c[p>
x3e;2]=(Pc(c[k>>2]|0,l)|0)&65535;do if(!(c[l>>2]|0)){if((c[p>>2]|0)>258?1:(c[p>>
;2]|0)>(e[(c[j>>2]|0)+260+4>>1]|0)){c[l>>2]=3;break}c[q>>2]=hc(c[n>>2]|0,
1,0,c[p>>2]|0,0,l)|0;do if((c[l>>2]|0)==0?(u=Rc(c[k>>2]|0,c[q>>2]|0,c[p>>2]|0)|
0,c[l>>2]=u,(u|0)==0):0){c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[p>>2]|0))break;c[m
x3e;>2]=(c[o>>2]|0)+(a[(c[q>>2]|0)+(c[o>>2]|0)>>0]|0);if((c[m>>2]|0)<
;0){s=10;break}if((c[m>>2]|0)>(c[p>>2]|0)){s=10;break}c[o>>2]=(c[o>>2]|0)+1}if((s|0
)==10){c[l>>2]=3;break}c[r>>2]=(c[j>>2]|0)+628+4;b[c[r>>2]>>1]=c[p>>
2];c[(c[r>>2]|0)+4>>2]=c[q>>2];c[h>>2]=0;u=c[h>>2]|0;i=t;return u|0}while(0);Fb
(c[n>>2]|0,c[q>>2]|0);c[q>>2]=0}while(0);c[h>>2]=c[l>>2];u=c[h>>2]|0
;i=t;return u|0}function Ik(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;m=i;i=i+32|0;k=m+28|0;d=m+24|0;e=m+20|0;j=m
+16|0;l=m+12|0;h=m+8|0;g=m+4|0;f=m;c[d>>2]=a;c[e>>2]=b;c[j>>2]=c[d>>2];c[h>>2]=-
1;if((c[(c[j>>2]|0)+16>>2]|0)<0){c[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}if((c[(c[j>
;>2]|0)+16>>2]|0)>>>0<4294967295)c[h>>2]=c[(c[j>>2]|0)+16>>2];c
[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[h>>2]|0)>>>0){d=11;break
}c[f>>2]=Ek(c[d>>2]|0,c[l>>2]|0,g)|0;if((c[f>>2]|0)==0?(Kr(c[e>>2]|0,c[g>
x3e;2]|0)|0)==0:0){d=9;break}c[l>>2]=(c[l>>2]|0)+1}if((d|0)==9){c[k>>2]=c[l>>2];l=c[k>
;>2]|0;i=m;return l|0}else if((d|0)==11){c[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}return 0}function Jk(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;l=i;i=i+48|0;e=l+32|0;f=l+28|0;g=l+24|0;h=l+16|0;k=l+8|0;j=l;c[e>>
;2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=Kk(c[e>>2]|0,11392,k)|0;if(c[j>>2]|0){k=c[j
x3e;>2]|0;i=l;return k|0}c[j>>2]=Kk(c[e>>2]|0,11409,h)|0;if(c[j>>2]|0){k=c[j>>2]|0;
i=l;return k|0}if((c[k>>2]|0)==1?(c[h>>2]|0)==1:0){c[c[f>>2]>>2]=c[h+4>>2];c[c
[g>>2]>>2]=c[k+4>>2];k=c[j>>2]|0;i=l;return k|0}c[j>>2]=6;k=c[j>>2]|
0;i=l;return k|0}function Kk(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;x=
i;i=i+64|0;g=x+56|0;h=x+52|0;j=x+48|0;m=x+44|0;s=x+40|0;o=x+36|0;q=x+32|0;n=x+28|0;t=x+24|0;r=x+20|0;l=x+16|0;k=x+12|0;u=x+8|0;p
=x+4|0;v=x;c[g>>2]=a;c[h>>2]=b;c[j>>2]=f;c[m>>2]=(c[g>>2]|0)+792;c[s>>
;2]=c[(c[g>>2]|0)+88>>2];c[o>>2]=0;c[c[j>>2]>>2]=0;if((d[(c[m>>2]|0)+
20>>0]|0|0)==0?(c[o>>2]=Lk(c[g>>2]|0,c[(c[g>>2]|0)+104>>2]|0)|0,c[o>>
;2]|0):0){w=c[o>>2]|0;i=x;return w|0}c[n>>2]=c[(c[m>>2]|0)+16>>2];c[q>>2]=(c[c
[m>>2]>>2]|0)+8;c[t>>2]=(c[q>>2]|0)+(c[n>>2]<<2);c[o>>2]=6
;if((c[s>>2]|0)==0|(c[h>>2]|0)==0){w=c[o>>2]|0;i=x;return w|0}c[r>>2]=cs(c[h>>
2]|0)|0;if(!((c[r>>2]|0)!=0&(c[n>>2]|0)>>>0>0)){w=c[o>>2]|0;i=x;return w|
0}while(1){c[q>>2]=(c[q>>2]|0)+2;c[l>>2]=(((d[(c[q>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[q>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[q>>2]=(c[q>
x3e;2]|0)+2;c[k>>2]=(((d[(c[q>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[q>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535;g=c[k>>2]|0;if((c[l>>2]|0)==(e[(c[s>>2]|
0)+12+2>>1]|0|0))break;c[t>>2]=(c[t>>2]|0)+(g*10|0);c[n>>2]=(c[n>>2]|0)+-1;if((
c[n>>2]|0)>>>0<=0){w=20;break}}if((w|0)==20){w=c[o>>2]|0;i=x;return w|0}c[n>>2
]=g;c[q>>2]=c[t>>2];a:while(1){if((c[n>>2]|0)>>>0<=0){w=20;break}c[u>>
;2]=(((d[(c[q>>2]|0)+4>>0]|0)&65535)<<8|((d[(c[q>>2]|0)+4+1>>0]|0)&65535
)<<0)&65535;b:do if(((c[u>>2]&16|0?(c[p>>2]=(d[c[q>>2]>>0]|0)<
x3c;24|(d[(c[q>>2]|0)+1>>0]|0)<<16|(d[(c[q>>2]|0)+2>>0]|0)<<8|(d[(c[
q>>2]|0)+3>>0]|0)<<0,c[v>>2]=(d[(c[q>>2]|0)+6>>0]|0)<<24|(
d[(c[q>>2]|0)+6+1>>0]|0)<<16|(d[(c[q>>2]|0)+6+2>>0]|0)<<8|(d[(c[q>
;>2]|0)+6+3>>0]|0)<<0,(c[p>>2]|0)>>>0<(c[(c[m>>2]|0)+12>
x3e;2]|0)>>>0):0)?(c[r>>2]|0)>>>0<((c[(c[m>>2]|0)+12>>2]|0)-(c[
p>>2]|0)|0)>>>0:0)?(Lr(c[h>>2]|0,(c[(c[m>>2]|0)+8>>2]|0)+(c[p>>
2]|0)|0,(c[(c[m>>2]|0)+12>>2]|0)-(c[p>>2]|0)|0)|0)==0:0){switch(c[u>>2]&15|0){case
2:{w=17;break a}case 3:{w=18;break a}case 1:case 0:break;default:break b}if((c[v>>2]|0)>>>0<(c[(c[
m>>2]|0)+12>>2]|0)>>>0?Ur((c[(c[m>>2]|0)+8>>2]|0)+(c[v>>2]|0)|0
,0,c[(c[m>>2]|0)+12>>2]|0)|0:0){w=16;break a}}while(0);c[q>>2]=(c[q>>2]|0)+10;c[n>
x3e;2]=(c[n>>2]|0)+-1}if((w|0)==16){c[c[j>>2]>>2]=1;c[(c[j>>2]|0)+4>>2]=(c[(c[
m>>2]|0)+8>>2]|0)+(c[v>>2]|0);c[o>>2]=0;w=c[o>>2]|0;i=x;return w|0}else if((w|
0)==17){c[c[j>>2]>>2]=2;c[(c[j>>2]|0)+4>>2]=c[v>>2];c[o>>2]=0;w=c[o
x3e;>2]|0;i=x;return w|0}else if((w|0)==18){c[c[j>>2]>>2]=3;c[(c[j>>2]|0)+4>>2]=c[v
>>2];c[o>>2]=0;w=c[o>>2]|0;i=x;return w|0}else if((w|0)==20){w=c[o>>2]|0;i=x;return w|0}
return 0}function Lk(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;r=i;i=i+48|0;s=r+44|0;f=r+40|0;g=r
+36|0;k=r+32|0;j=r+28|0;n=r+24|0;q=r+20|0;m=r+16|0;p=r+12|0;h=r+8|0;o=r+4|0;l=r;c[s>>2]=b;c[f>>2]=e;c[g>
;>2]=(c[s>>2]|0)+792;e=c[g>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12
>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[j>>2]=lk(c[s>>2]|0,1111770656,c[f>>
;2]|0,k)|0;if(!((c[j>>2]|0)!=0|(c[k>>2]|0)>>>0<8)?(s=de(c[f>>2]|0,c[k>>
;2]|0,c[g>>2]|0)|0,c[j>>2]=s,(s|0)==0):0){c[(c[g>>2]|0)+4>>2]=(c[c[g>>2]>
x3e;2]|0)+(c[k>>2]|0);c[n>>2]=c[c[g>>2]>>2];c[n>>2]=(c[n>>2]|0)+2;c[
q>>2]=(((d[(c[n>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[n>>2]|0)+-2+1>>
;0]|0)&65535)<<0)&65535;c[n>>2]=(c[n>>2]|0)+2;c[m>>2]=(((d[(c[n>>2]|
0)+-2>>0]|0)&65535)<<8|((d[(c[n>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535
;c[n>>2]=(c[n>>2]|0)+4;c[p>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n
x3e;>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>
;2]|0)+-4+3>>0]|0)<<0;if((!((c[q>>2]|0)!=1|(c[p>>2]|0)>>>0<8)?((((c[
p>>2]|0)-8|0)>>>0)/4|0)>>>0>=(c[m>>2]|0)>>>0:0)?((c[p>
;>2]|0)+1|0)>>>0<=(c[k>>2]|0)>>>0:0){c[(c[g>>2]|0)+16>>2]=
c[m>>2];c[(c[g>>2]|0)+8>>2]=(c[c[g>>2]>>2]|0)+(c[p>>2]|0);c[(c[g>
;>2]|0)+12>>2]=(c[k>>2]|0)-(c[p>>2]|0);c[h>>2]=c[(c[g>>2]|0)+16>>
;2];c[n>>2]=(c[c[g>>2]>>2]|0)+8;c[o>>2]=(c[n>>2]|0)+(c[h>>2]<
x3c;2);while(1){if((c[h>>2]|0)>>>0<=0)break;c[l>>2]=(((d[(c[n>>2]|0)+2>
x3e;0]|0)&65535)<<8|((d[(c[n>>2]|0)+2+1>>0]|0)&65535)<<0)&65535;c[o>
x3e;2]=(c[o>>2]|0)+((c[l>>2]|0)*10|0);c[n>>2]=(c[n>>2]|0)+4;c[h>>2]=(c[h>
x3e;2]|0)+-1}if((c[o>>2]|0)>>>0<=(c[(c[g>>2]|0)+8>>2]|0)>>>0){a
[(c[g>>2]|0)+20>>0]=1;s=c[j>>2]|0;i=r;return s|0}}fe(c[f>>2]|0,c[g>>2]|0);s=c[
g>>2]|0;c[s>>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[j>>2]=8;s=c[j>>2]|0;i=r;return s|0}c[j>>2]=8;s=c[j>>2]|0;i=r;return
s|0}function Mk(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;h=d+4|0;g=d;c[f>>2]=a;c[e>
;>2]=b;c[h>>2]=c[f>>2];c[g>>2]=c[(c[h>>2]|0)+12>>2];b=Ya[c[(c[g>>
;2]|0)+48>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return b|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;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;c[k>>2]=c[k>>2];c[j>>2]=c[j>>2];c[h>>2]=c[h>>
;2];c[g>>2]=c[g>>2];i=f;return 7}function Ok(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;c[h>>2]=c[h>>2];c[g>>2]=
c[g>>2];c[f>>2]=c[f>>2];i=e;return 7}function Pk(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=Qk(c[f>>2]|0,c[e>>2]|0,1751474532)|0;i=d;return b|0}function
Qk(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+16|0;f=j+12|0;k=j+8|0;g=j+4|0;h=j;c[e>>2]=a;
c[f>>2]=b;c[k>>2]=d;c[g>>2]=Wa[c[(c[e>>2]|0)+508>>2]&31](c[e>>2
]|0,c[k>>2]|0,c[f>>2]|0,0)|0;if(c[g>>2]|0){k=c[g>>2]|0;i=j;return k|0}c[h>>2]=(
c[e>>2]|0)+160;c[g>>2]=le(c[f>>2]|0,7560,c[h>>2]|0)|0;k=c[g>>2]|0;i=j;return k
|0}function Rk(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;f=l+16|0;g=l+12|0;m=l+20|0;h=l+8|0;j=l+4|0;
k=l;c[f>>2]=b;c[g>>2]=d;a[m>>0]=e;b=c[f>>2]|0;do if(a[m>>0]|0){c[k>>
2]=b+300;c[h>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1986553185,c[g>>2
]|0,0)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=l;return m|0}else{c[j>>2]=c[k>>2];break}}else{c[h
x3e;>2]=Wa[c[b+508>>2]&31](c[f>>2]|0,1751672161,c[g>>2]|0,0)|0;if(c[h>>2]|0){m
=c[h>>2]|0;i=l;return m|0}else{c[j>>2]=(c[f>>2]|0)+216;break}}while(0);m=le(c[g>>2]|0,7644
,c[j>>2]|0)|0;c[h>>2]=m;if(m|0){m=c[h>>2]|0;i=l;return m|0}c[(c[j>>2]|0)+36>>2
]=0;c[(c[j>>2]|0)+40>>2]=0;m=c[h>>2]|0;i=l;return m|0}function Sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0
,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Wa[c[(c[d>>2]|0)+508
x3e;>2]&31](c[d>>2]|0,1668112752,c[e>>2]|0,(c[d>>2]|0)+504|0)|0;if(c[f>>2]|0){
b=c[f>>2]|0;i=g;return b|0}b=de(c[e>>2]|0,c[(c[d>>2]|0)+504>>2]|0,(c[d>>2]|0)+
500|0)|0;c[f>>2]=b;if(!b){b=c[f>>2]|0;i=g;return b|0}c[(c[d>>2]|0)+504>>2]=0;b=c[f>
x3e;2]|0;i=g;return b|0}function Tk(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;k=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>
x3e;2]=a;c[f>>2]=d;c[h>>2]=(c[k>>2]|0)+260;c[g>>2]=Wa[c[(c[k>>2]|0)+508>
x3e;2]&31](c[k>>2]|0,1835104368,c[f>>2]|0,0)|0;if(c[g>>2]|0){k=c[g>>2]|0;i=j;return
k|0}k=le(c[f>>2]|0,7720,c[h>>2]|0)|0;c[g>>2]=k;if(k|0){k=c[g>>2]|0;i=j;return k|0}b[(c[
h>>2]|0)+6>>1]=0;b[(c[h>>2]|0)+8>>1]=0;b[(c[h>>2]|0)+10>>1]=0;b[(c[h
>>2]|0)+12>>1]=0;b[(c[h>>2]|0)+14>>1]=0;b[(c[h>>2]|0)+16>>1]=0;b[(c[
h>>2]|0)+18>>1]=0;b[(c[h>>2]|0)+20>>1]=0;b[(c[h>>2]|0)+22>>1]=0;b[(c
[h>>2]|0)+24>>1]=0;b[(c[h>>2]|0)+26>>1]=0;b[(c[h>>2]|0)+28>>1]=0;b[(
c[h>>2]|0)+30>>1]=0;if((c[c[h>>2]>>2]|0)<65536){k=c[g>>2]|0;i=j;return k|
0}k=le(c[f>>2]|0,7736,c[h>>2]|0)|0;c[g>>2]=k;if(k|0){k=c[g>>2]|0;i=j;return k|0}if((e[(c
[h>>2]|0)+20>>1]|0|0)<64)b[(c[h>>2]|0)+20>>1]=64;if((e[(c[h>>2]|0)+16>
;>1]|0)>>>0>65531)b[(c[h>>2]|0)+16>>1]=-5;if((e[(c[h>>2]|0)+30>>
;1]|0|0)<=100){k=c[g>>2]|0;i=j;return k|0}b[(c[h>>2]|0)+30>>1]=100;k=c[g>>2]|0;i=j;
return k|0}function Uk(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[
g>>2]=d;c[h>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1330851634,c[g>
;>2]|0,0)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=k;return d|0}c[j>>2]=(c[f>>2]|0)+368;d=le(c
[g>>2]|0,7796,c[j>>2]|0)|0;c[h>>2]=d;if(d|0){d=c[h>>2]|0;i=k;return d|0}c[(c[j>>
;2]|0)+80>>2]=0;c[(c[j>>2]|0)+84>>2]=0;b[(c[j>>2]|0)+88>>1]=0;b[(c[j>>
;2]|0)+90>>1]=0;b[(c[j>>2]|0)+92>>1]=0;b[(c[j>>2]|0)+94>>1]=0;b[(c[j>>
;2]|0)+96>>1]=0;if((e[c[j>>2]>>1]|0|0)<1){d=c[h>>2]|0;i=k;return d|0}d=le(c[g>
x3e;2]|0,7972,c[j>>2]|0)|0;c[h>>2]=d;if(d|0){d=c[h>>2]|0;i=k;return d|0}if((e[c[j>>2]>
;>1]|0|0)<2){d=c[h>>2]|0;i=k;return d|0}c[h>>2]=le(c[g>>2]|0,7988,c[j>>2]|0)|0
;d=c[h>>2]|0;i=k;return d|0}function Vk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;j=h+12|0;e=
h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[g>>2]=(c[j>>2]|0)+468;c[f>>2]=Wa[c[(c[
j>>2]|0)+508>>2]&31](c[j>>2]|0,1886352244,c[e>>2]|0,0)|0;if(c[f>>2]|0){c[
d>>2]=c[f>>2];j=c[d>>2]|0;i=h;return j|0}j=le(c[e>>2]|0,8016,c[g>>2]|0)|0;c[f
x3e;>2]=j;if(j|0){c[d>>2]=c[f>>2];j=c[d>>2]|0;i=h;return j|0}else{c[d>>2]=0;j=c[d
x3e;>2]|0;i=h;return j|0}return 0}function Wk(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,q=0,r=0;r=i;i=i+
48|0;f=r+40|0;g=r+36|0;k=r+32|0;l=r+28|0;q=r+24|0;p=r+20|0;n=r+16|0;m=r+12|0;h=r+8|0;o=r+4|0;j=r;c[f>>2]=a;c[g>
x3e;2]=d;c[l>>2]=c[(c[g>>2]|0)+28>>2];c[o>>2]=(c[f>>2]|0)+348;c[(c[o>>
;2]|0)+16>>2]=c[g>>2];c[k>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>
;2]|0,1851878757,c[g>>2]|0,p)|0;if(c[k>>2]|0){q=c[k>>2]|0;i=r;return q|0}c[q>>2]=Mc(c[g
x3e;>2]|0)|0;d=le(c[g>>2]|0,8060,c[o>>2]|0)|0;c[k>>2]=d;if(d|0){q=c[k>>2]|0;i=r;return
q|0}c[n>>2]=(c[q>>2]|0)+6+((c[(c[o>>2]|0)+4>>2]|0)*12|0);c[m>>2]=(c[q>
x3e;2]|0)+(c[p>>2]|0);if((c[n>>2]|0)>>>0>(c[m>>2]|0)>>>0){c[k
x3e;>2]=145;q=c[k>>2]|0;i=r;return q|0}c[h>>2]=c[(c[o>>2]|0)+4>>2];c[(c[o>>
;2]|0)+4>>2]=0;p=hc(c[l>>2]|0,20,0,c[h>>2]|0,0,k)|0;c[(c[o>>2]|0)+12>>2]=p;if(
c[k>>2]|0){q=c[k>>2]|0;i=r;return q|0}p=ee(c[g>>2]|0,(c[h>>2]|0)*12|0)|0;c[k>>
2]=p;if(p|0){q=c[k>>2]|0;i=r;return q|0}c[j>>2]=c[(c[o>>2]|0)+12>>2];while(1){if((c[h>
;>2]|0)>>>0<=0)break;p=le(c[g>>2]|0,8080,c[j>>2]|0)|0;c[k>>2]=p;do if((p|
0)==0?e[(c[j>>2]|0)+8>>1]|0|0:0){p=(c[j>>2]|0)+12|0;c[p>>2]=(c[p>>2]|0)+((c[q
x3e;>2]|0)+(c[(c[o>>2]|0)+8>>2]|0));if((c[(c[j>>2]|0)+12>>2]|0)>>>0
x3e;=(c[n>>2]|0)>>>0?((c[(c[j>>2]|0)+12>>2]|0)+(e[(c[j>>2]|0)+8>>
;1]|0)|0)>>>0<=(c[m>>2]|0)>>>0:0){c[j>>2]=(c[j>>2]|0)+20;break}
c[(c[j>>2]|0)+12>>2]=0;b[(c[j>>2]|0)+8>>1]=0}while(0);c[h>>2]=(c[h>>
2]|0)+-1}c[(c[o>>2]|0)+4>>2]=((c[j>>2]|0)-(c[(c[o>>2]|0)+12>>2]|0)|0)/20|0;ge(
c[g>>2]|0);b[(c[f>>2]|0)+344>>1]=c[(c[o>>2]|0)+4>>2];q=c[k>>2]|0;i=r
;return q|0}function Xk(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;j=h+16|0;f=h+12|0;g=h+8|0;e=h+4|0;d=h;c[j>>2
]=a;c[f>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+8>>2];c[g>>2]=(c[j>>2]|0)+348
;c[e>>2]=c[(c[g>>2]|0)+12>>2];c[d>>2]=c[(c[g>>2]|0)+4>>2];if(!(c[(c[
g>>2]|0)+12>>2]|0)){j=c[g>>2]|0;j=j+4|0;c[j>>2]=0;j=c[g>>2]|0;b[j>>1
]=0;j=c[g>>2]|0;j=j+8|0;c[j>>2]=0;i=h;return}while(1){a=c[f>>2]|0;if((c[d>>2]|0)>
x3e;>0<=0)break;Fb(a,c[(c[e>>2]|0)+16>>2]|0);c[(c[e>>2]|0)+16>>2]=0;b[(c[e>
;>2]|0)+8>>1]=0;c[d>>2]=(c[d>>2]|0)+-1;c[e>>2]=(c[e>>2]|0)+20}Fb(a,c[(c[g
>>2]|0)+12>>2]|0);c[(c[g>>2]|0)+12>>2]=0;j=c[g>>2]|0;j=j+4|0;c[j>>2]=
0;j=c[g>>2]|0;b[j>>1]=0;j=c[g>>2]|0;j=j+8|0;c[j>>2]=0;i=h;return}function Yk(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[f>>2]=c[f>>2];c[e
x3e;>2]=c[e>>2];i=d;return 7}function Zk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>
;2]=c[d>>2];i=b;return}function _k(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;x=i;i=i+80|0;e=x+68|0;f=x+64|0;l=x+60|0;w=x+56|0;t=x+52|0;u=x+48|0;o=x+44|0;q=x+40|0;g=x+36|0;s=x+32|0;p=x+28|0;m=
x+24|0;j=x+20|0;v=x+16|0;n=x+12|0;h=x+8|0;r=x+4|0;k=x;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;c[s>>
;2]=0;c[l>>2]=Wa[c[(c[e>>2]|0)+508>>2]&31](c[e>>2]|0,1801810542,c[f>>2]|0
,w)|0;if(c[l>>2]|0){w=c[l>>2]|0;i=x;return w|0}if((c[w>>2]|0)>>>0<4){c[l>
x3e;2]=142;w=c[l>>2]|0;i=x;return w|0}b=de(c[f>>2]|0,c[w>>2]|0,(c[e>>2]|0)+772|0)|0;c[l
x3e;>2]=b;if(b|0){w=c[l>>2]|0;i=x;return w|0}c[(c[e>>2]|0)+776>>2]=c[w>>2];c[t>
;>2]=c[(c[e>>2]|0)+772>>2];c[u>>2]=(c[t>>2]|0)+(c[w>>2]|0);c[t>>
;2]=(c[t>>2]|0)+2;c[t>>2]=(c[t>>2]|0)+2;w=(((d[(c[t>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[q>>2]=w;c[q>
;>2]=(c[q>>2]|0)>>>0>32?32:w;c[o>>2]=0;while(1){if((c[o>>2]|0)>>
;>0>=(c[q>>2]|0)>>>0)break;c[n>>2]=1<<c[o>>2];if(((c[t>>
;2]|0)+6|0)>>>0>(c[u>>2]|0)>>>0)break;c[v>>2]=c[t>>2];c[t>
x3e;2]=(c[t>>2]|0)+2;c[t>>2]=(c[t>>2]|0)+2;c[m>>2]=(((d[(c[t>>2]|0)+-2>
x3e;0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[t>
;>2]=(c[t>>2]|0)+2;c[j>>2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(
c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c[m>>2]|0)>>>0<
;=6)break;c[v>>2]=(c[v>>2]|0)+(c[m>>2]|0);if((c[v>>2]|0)>>>0>(c[u>
;>2]|0)>>>0)c[v>>2]=c[u>>2];if((c[j>>2]&-9|0)==1?((c[t>>2]|0)+8
|0)>>>0<=(c[u>>2]|0)>>>0:0){c[t>>2]=(c[t>>2]|0)+2;c[p>>
;2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&
;65535)<<0)&65535;c[t>>2]=(c[t>>2]|0)+6;if(((c[v>>2]|0)-(c[t>>2]|0)|0)<
;((c[p>>2]|0)*6|0))c[p>>2]=((c[v>>2]|0)-(c[t>>2]|0)|0)/6|0;c[g>>2]=c[g>
x3e;2]|c[n>>2];if((c[p>>2]|0)>>>0>0){c[t>>2]=(c[t>>2]|0)+4;c[r>
x3e;2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-4+3>>0]|0)<<0;c[t>
x3e;2]=(c[t>>2]|0)+2;c[h>>2]=(c[p>>2]|0)-1;while(1){if((c[h>>2]|0)>>>0<
;=0)break;c[t>>2]=(c[t>>2]|0)+4;c[k>>2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24
|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[
t>>2]|0)+-4+3>>0]|0)<<0;if((c[k>>2]|0)>>>0<=(c[r>>2]|0)>
;>>0)break;c[t>>2]=(c[t>>2]|0)+2;c[r>>2]=c[k>>2];c[h>>2]=(c[h>
x3e;2]|0)+-1}if(!(c[h>>2]|0))c[s>>2]=c[s>>2]|c[n>>2]}}c[t>>2]=c[v>>2
];c[o>>2]=(c[o>>2]|0)+1}c[(c[e>>2]|0)+780>>2]=c[o>>2];c[(c[e>>2]|0)+
784>>2]=c[g>>2];c[(c[e>>2]|0)+788>>2]=c[s>>2];w=c[l>>2]|0;i=x;return
w|0}function $k(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;n=i;i=i+32|0;f=n+24|0;h=n+20|0;j=n+16|0;g=n+12|0;l=n+8|0;m
=n+4|0;k=n;c[f>>2]=a;c[h>>2]=d;c[g>>2]=c[(c[h>>2]|0)+28>>2];c[j>>2]=
Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1734439792,c[h>>2]|0,0)|0;if(c[j>>
2]|0){m=c[j>>2]|0;i=n;return m|0}d=ee(c[h>>2]|0,4)|0;c[j>>2]=d;if(d|0){m=c[j>>2]|0;i=n;return
m|0}a=ie(c[h>>2]|0)|0;b[(c[f>>2]|0)+548>>1]=a;a=ie(c[h>>2]|0)|0;b[(c[f>>2]|0)+
548+2>>1]=a;ge(c[h>>2]|0);a=(c[f>>2]|0)+548+2|0;if((e[(c[f>>2]|0)+548>>1]|0|0)
x3e;=2){b[a>>1]=0;c[j>>2]=8;m=c[j>>2]|0;i=n;return m|0}c[m>>2]=e[a>>1];c[k>
;>2]=hc(c[g>>2]|0,4,0,c[m>>2]|0,0,j)|0;if(c[j>>2]|0){m=c[j>>2]|0;i=n;return m|0}g=ee
(c[h>>2]|0,c[m>>2]<<2)|0;c[j>>2]=g;if(g|0){m=c[j>>2]|0;i=n;return m|0}c[(c[f
x3e;>2]|0)+548+4>>2]=c[k>>2];c[l>>2]=0;while(1){a=c[h>>2]|0;if((c[l>>2]|0
)>>>0>=(c[m>>2]|0)>>>0)break;g=ie(a)|0;b[(c[k>>2]|0)+(c[l>>2]
x3c;<2)>>1]=g;g=ie(c[h>>2]|0)|0;b[(c[k>>2]|0)+(c[l>>2]<<2)+2>>1
]=g;c[l>>2]=(c[l>>2]|0)+1}ge(a);m=c[j>>2]|0;i=n;return m|0}function al(a,b){a=a|0;b=b|0;var d=0,e=
0,f=0,g=0,h=0;g=i;i=i+16|0;h=g+12|0;d=g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[d>>2]=b;c[f>>2]=(c[h>>
;2]|0)+556;c[e>>2]=Wa[c[(c[h>>2]|0)+508>>2]&31](c[h>>2]|0,1346587732,c[d>>
;2]|0,0)|0;if(c[e>>2]|0){h=c[e>>2]|0;i=g;return h|0}c[e>>2]=le(c[d>>2]|0,8108,c[f>
x3e;2]|0)|0;h=c[e>>2]|0;i=g;return h|0}function bl(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>
x3e;2]=a;c[e>>2]=b;b=Qk(c[f>>2]|0,c[e>>2]|0,1651008868)|0;i=d;return b|0}function cl(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;j=f+32|0;l=f+28|0;k=f+24|0;g=f+20|0;h=f;c[j>>2]=a;c[l>
;>2]=b;c[k>>2]=d;c[g>>2]=e;c[h>>2]=0;c[h+4>>2]=c[l>>2];c[h+8>>2
]=c[k>>2];c[h+12>>2]=0;c[h+16>>2]=0;c[c[g>>2]>>2]=2147483647;d=dl(c[j>>
;2]|0,h,c[g>>2]|0)|0;i=f;return d|0}function dl(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;b=Ad(c[h>>2]|0,c[g>>2]|0,0,c[f>>
;2]|0)|0;i=e;return b|0}function el(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[f>>2]=c[f>>2];c[e>>2]=c[e>>2];i=d;return 7}function fl(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;r=i;i=i+48|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0;m=r+16|0;n=
r+12|0;o=r+8|0;p=r+4|0;q=r;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c
[o>>2]=g;if((c[(c[j>>2]|0)+616>>2]|0?(c[(c[j>>2]|0)+612>>2]|0)>>>
;0>(c[l>>2]|0)>>>0:0)?(c[q>>2]=(c[(c[j>>2]|0)+616>>2]|0)+((c[l>
x3e;2]|0)*48|0),c[p>>2]=gl(c[k>>2]|0,c[q>>2]|0,c[m>>2]|0,c[o>>2]|0)|0,(c[p>
;>2]|0)==0):0){c[c[n>>2]>>2]=c[q>>2];c[h>>2]=0;d=c[h>>2]|0;i=r;return d|0
}c[c[m>>2]>>2]=0;c[c[n>>2]>>2]=0;c[c[o>>2]>>2]=0;c[h>>2]=6
;d=c[h>>2]|0;i=r;return d|0}function gl(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;r
=i;i=i+48|0;h=r+28|0;j=r+24|0;k=r+20|0;l=r+16|0;m=r+12|0;p=r+8|0;q=r+4|0;n=r+32|0;o=r;c[j>>2]=a;c[k>>2]=d;c[
l>>2]=f;c[m>>2]=g;a:do if(((c[j>>2]|0)>>>0>=(e[(c[k>>2]|0)+40>
x3e;1]|0)>>>0?(c[j>>2]|0)>>>0<=(e[(c[k>>2]|0)+42>>1]|0)>
x3e;>0:0)?(c[p>>2]=c[(c[k>>2]|0)+4>>2],c[q>>2]=(c[p>>2]|0)+((c[c[k>
x3e;2]>>2]|0)*40|0),c[p>>2]|0):0){while(1){if((c[p>>2]|0)>>>0>=(c[q>>
;2]|0)>>>0)break a;if((c[j>>2]|0)>>>0>=(e[c[p>>2]>>1]|0)>
x3e;>0?(c[j>>2]|0)>>>0<=(e[(c[p>>2]|0)+2>>1]|0)>>>0:0)break
;c[p>>2]=(c[p>>2]|0)+40}b[n>>1]=(c[j>>2]|0)-(e[c[p>>2]>>1]|0);b:do switch
(e[(c[p>>2]|0)+4>>1]|0|0){case 3:case 1:{c[c[m>>2]>>2]=c[(c[(c[p>>2]|0)+28>
;>2]|0)+((e[n>>1]|0)<<2)>>2];break}case 2:{d=(c[(c[p>>2]|0)+8>>2]|0)+(_(c
[(c[p>>2]|0)+12>>2]|0,e[n>>1]|0)|0)|0;c[c[m>>2]>>2]=d;break}case 5:case 4:{c[o
>>2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[(c[p>>2]|0)+24>>2]|0)>
x3e;>0)break a;if((e[(c[(c[p>>2]|0)+32>>2]|0)+(c[o>>2]<<1)>>1]|0|0)==(c[j
>>2]|0))break;c[o>>2]=(c[o>>2]|0)+1}if((e[(c[p>>2]|0)+4>>1]|0|0)==4){c[c[m>
;>2]>>2]=c[(c[(c[p>>2]|0)+28>>2]|0)+(c[o>>2]<<2)>>2];break b}else
{d=(c[(c[p>>2]|0)+8>>2]|0)+(_(c[o>>2]|0,c[(c[p>>2]|0)+12>>2]|0)|0)|0;c[c[m>
;>2]>>2]=d;break b}}default:break a}while(0);c[c[l>>2]>>2]=c[p>>2];c[h>>2
]=0;d=c[h>>2]|0;i=r;return d|0}while(0);c[c[l>>2]>>2]=0;c[c[m>>2]>>2]=0;c[h>
;>2]=6;d=c[h>>2]|0;i=r;return d|0}function hl(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;n=i;i=i+32
|0;g=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;l=n;m=n+20|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=f;c[l>>2]=
0;switch(e[(c[j>>2]|0)+6>>1]|0|0){case 8:case 2:case 1:{b=le(c[h>>2]|0,8172,m)|0;c[l>>2]=
b;if(!b){a[c[k>>2]>>0]=a[m>>0]|0;a[(c[k>>2]|0)+1>>0]=a[m+1>>0]|0;a[(
c[k>>2]|0)+2>>0]=a[m+2>>0]|0;a[(c[k>>2]|0)+3>>0]=a[m+3>>0]|0;a[(c[k
x3e;>2]|0)+4>>0]=a[m+4>>0]|0;a[(c[k>>2]|0)+5>>0]=0;a[(c[k>>2]|0)+6>
x3e;0]=0;a[(c[k>>2]|0)+7>>0]=0}break}case 9:case 7:case 6:{c[l>>2]=le(c[h>>2]|0,8200,c[k
>>2]|0)|0;break}default:{if((e[(c[j>>2]|0)+4>>1]|0|0)!=2?(e[(c[j>>2]|0)+4>>1]|
0|0)!=5:0){c[g>>2]=3;b=c[g>>2]|0;i=n;return b|0}b=c[k>>2]|0;m=(c[j>>2]|0)+16|0;a[b>
x3e;0]=a[m>>0]|0;a[b+1>>0]=a[m+1>>0]|0;a[b+2>>0]=a[m+2>>0]|0;a[b+3>>
0]=a[m+3>>0]|0;a[b+4>>0]=a[m+4>>0]|0;a[b+5>>0]=a[m+5>>0]|0;a[b+6>>0]=
a[m+6>>0]|0;a[b+7>>0]=a[m+7>>0]|0}}c[g>>2]=c[l>>2];b=c[g>>2]|0;i=n;return
b|0}function il(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;w=i;i=i+64|0;l=w+48|0;x=w+44|0;y=w+40|0;m=w+36|0;n=w+32|0;o=w+28|0;p=w+24|0;s=w+20|0;r=w+16|0;t=w+12|0;v=w+8|0;u=w+4|0;q=w
;c[l>>2]=b;c[x>>2]=e;c[y>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[p>
;>2]=k;c[s>>2]=fl(c[l>>2]|0,c[y>>2]|0,c[x>>2]|0,u,v,t)|0;if(c[s>>2]|0){y=
c[s>>2]|0;i=w;return y|0}c[s>>2]=Wa[c[(c[l>>2]|0)+508>>2]&31](c[l>>2]|0,1161970772
,c[n>>2]|0,0)|0;if(c[s>>2]|0)c[s>>2]=Wa[c[(c[l>>2]|0)+508>>2]&31](c[l>
;>2]|0,1650745716,c[n>>2]|0,0)|0;if(c[s>>2]|0){y=c[s>>2]|0;i=w;return y|0}c[r>>2]=Mc
(c[n>>2]|0)|0;c[s>>2]=jl(c[v>>2]|0,c[u>>2]|0,c[r>>2]|0,c[t>>2]|0,c[(
c[l>>2]|0)+84>>2]|0,0,0,c[n>>2]|0,c[p>>2]|0,0)|0;if(c[s>>2]|0){y=c[s>>
;2]|0;i=w;return y|0}if(a[(c[v>>2]|0)+47>>0]&1|0){c[q>>2]=(a[(c[v>>2]|0)+16>
x3e;0]|0)-(a[(c[v>>2]|0)+16+1>>0]|0);a[(c[p>>2]|0)+5>>0]=(0-(d[(c[p>>2]|0)+1
x3e;>0]|0)|0)/2|0;a[(c[p>>2]|0)+6>>0]=((c[q>>2]|0)-(d[c[p>>2]>>0]|0)|0)/2
|0;a[(c[p>>2]|0)+7>>0]=((c[q>>2]|0)*12|0)/10|0}if(!(c[m>>2]&64)){y=c[s>>2
]|0;i=w;return y|0}ml(c[o>>2]|0,c[p>>2]|0);y=c[s>>2]|0;i=w;return y|0}function jl(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;L=i;i=i+96|0;u=L+72|0;v=L+68|0;q=L+64|0;x=L+60|0;M=L+56|0;y=L+52|0;z=L+48|0;A=L+44|0;B=L+40|0;r
=L+36|0;w=L+32|0;J=L+28|0;s=L+24|0;I=L+20|0;t=L+16|0;D=L+12|0;C=L+8|0;K=L+78|0;E=L+76|0;H=L+4|0;F=L+80|0;G=L;c[v>>2]=f
;c[q>>2]=g;c[x>>2]=h;c[M>>2]=j;c[y>>2]=k;c[z>>2]=l;c[A>>2]=m;c[B>
;>2]=n;c[r>>2]=o;c[w>>2]=p;c[J>>2]=c[(c[B>>2]|0)+28>>2];c[s>>2]=(
c[y>>2]|0)+76;m=Kc(c[B>>2]|0,(c[x>>2]|0)+(c[M>>2]|0)|0)|0;c[I>>2]=m;a:do if((m
|0)==0?(c[I>>2]=hl(c[B>>2]|0,c[q>>2]|0,c[r>>2]|0)|0,(c[I>>2]|0)==0):0){if(!(c[
w>>2]|0)){c[(c[s>>2]|0)+4>>2]=d[(c[r>>2]|0)+1>>0];c[c[s>>2]>>
;2]=d[c[r>>2]>>0];switch(d[(c[v>>2]|0)+46>>0]|0){case 1:{a[(c[s>>2]|0)+18>
;>0]=1;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|0)+4>>2]|0)+7>>3;break}case 2:{a[(
c[s>>2]|0)+18>>0]=3;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|0)+4>>2]|0)+3>
;>2;break}case 4:{a[(c[s>>2]|0)+18>>0]=4;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|
0)+4>>2]|0)+1>>1;break}case 8:{a[(c[s>>2]|0)+18>>0]=2;c[(c[s>>2]|0)+8>>
;2]=c[(c[s>>2]|0)+4>>2];break}default:{c[u>>2]=3;M=c[u>>2]|0;i=L;return M|0}}c[t>
x3e;2]=_(c[c[s>>2]>>2]|0,c[(c[s>>2]|0)+8>>2]|0)|0;if(!(c[t>>2]|0))break;c[I>
;>2]=xc(c[y>>2]|0,c[t>>2]|0)|0;if(c[I>>2]|0)break}switch(e[(c[q>>2]|0)+6>>
;1]|0){case 7:case 6:case 5:case 2:case 1:{c[u>>2]=kl(c[s>>2]|0,c[z>>2]|0,c[A>>2]|0,d[(c
[v>>2]|0)+46>>0]|0,b[(c[q>>2]|0)+6>>1]|0,c[r>>2]|0,c[B>>2]|0)|0;M=c[
u>>2]|0;i=L;return M|0}case 8:{M=Qc(c[B>>2]|0,1)|0;c[I>>2]=M;if(M|0){c[I>>2]=83;break a}
break}case 9:break;default:{c[u>>2]=3;M=c[u>>2]|0;i=L;return M|0}}b[K>>1]=Pc(c[B>>2]|0,I
)|0;if((c[I>>2]|0)==0?(c[D>>2]=hc(c[J>>2]|0,4,0,e[K>>1]|0,0,I)|0,(c[I>>2]|0)==
0):0){b[E>>1]=b[K>>1]|0;M=ee(c[B>>2]|0,e[K>>1]<<2)|0;c[I>>2]=M;b:do
if(!M){c[C>>2]=c[D>>2];while(1){q=c[B>>2]|0;if((e[E>>1]|0)<=0)break;M=ie(q)|0;b[c[C
>>2]>>1]=M;M=he(c[B>>2]|0)|0;a[(c[C>>2]|0)+2>>0]=M;M=he(c[B>>2]|0)|0
;a[(c[C>>2]|0)+3>>0]=M;b[E>>1]=(b[E>>1]|0)+-1<<16>>16;c[C>>
;2]=(c[C>>2]|0)+4}ge(q);b[E>>1]=b[K>>1]|0;c[C>>2]=c[D>>2];while(1){if((e[E>
;>1]|0)<=0)break b;c[I>>2]=gl(e[c[C>>2]>>1]|0,c[v>>2]|0,H,G)|0;if(c[I>>
;2]|0)break b;c[I>>2]=jl(c[v>>2]|0,c[H>>2]|0,c[x>>2]|0,c[G>>2]|0,c[y>>
;2]|0,(c[z>>2]|0)+(a[(c[C>>2]|0)+2>>0]|0)|0,(c[A>>2]|0)+(a[(c[C>>2]|0)+3>
x3e;0]|0)|0,c[B>>2]|0,F,(c[w>>2]|0)+1|0)|0;if(c[I>>2]|0)break b;b[E>>1]=(b[E>>
1]|0)+-1<<16>>16;c[C>>2]=(c[C>>2]|0)+4}}while(0);Fb(c[J>>2]|0,c[D>>2
]|0);c[D>>2]=0}}while(0);c[u>>2]=c[I>>2];M=c[u>>2]|0;i=L;return M|0}function kl(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;C=i;i=i+64|
0;n=C+48|0;o=C+44|0;p=C+40|0;q=C+36|0;r=C+32|0;s=C+52|0;t=C+28|0;u=C+24|0;v=C+20|0;y=C+16|0;w=C+12|0;x=C+8|0;z=C+4|0;B=C+54|0;A=
C;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;c[r>>2]=j;b[s>>1]=k;c[t>>2]=l;c[u>
;>2]=m;if(((c[p>>2]|0)>=0?!((c[q>>2]|0)<0?1:((c[p>>2]|0)+(d[(c[t>>2]|0)+1
>>0]|0)|0)>(c[(c[o>>2]|0)+4>>2]|0)):0)?((c[q>>2]|0)+(d[c[t>>2]>>
;0]|0)|0)<=(c[c[o>>2]>>2]|0):0){c[y>>2]=d[(c[t>>2]|0)+1>>0];c[w>>
;2]=d[c[t>>2]>>0];c[z>>2]=_(c[r>>2]|0,c[y>>2]|0)|0;a[B>>0]=0;switch(
e[s>>1]|0|0){case 6:case 1:{switch(c[r>>2]|0){case 1:{c[A>>2]=(c[y>>2]|0)+7>>3
;break}case 2:{c[A>>2]=(c[y>>2]|0)+3>>2;break}case 4:{c[A>>2]=(c[y>>2]|0)+1>
;>1;break}default:c[A>>2]=c[y>>2]}c[x>>2]=_(c[w>>2]|0,c[A>>2]|0)|0;a[B>
;>0]=1;break}case 7:case 5:case 2:{c[z>>2]=_(c[y>>2]|0,c[r>>2]|0)|0;c[x>>2]=(_(c[w
x3e;>2]|0,c[z>>2]|0)|0)+7>>3;break}default:{c[n>>2]=3;h=c[n>>2]|0;i=C;return h|0}}h
=ee(c[u>>2]|0,c[x>>2]|0)|0;c[v>>2]=h;if(!h){h=_(c[p>>2]|0,c[r>>2]|0)|0;ll(c[o
x3e;>2]|0,c[(c[u>>2]|0)+32>>2]|0,c[z>>2]|0,a[B>>0]|0,h,c[q>>2]|0,d[c[t>
;>2]>>0]|0);ge(c[u>>2]|0)}}else c[v>>2]=6;c[n>>2]=c[v>>2];h=c[n>>
;2]|0;i=C;return h|0}function ll(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,D=0,E=0,F=0;F=i;i=i+64|0;n=F+44|0;q=F+40|0;r=F+36|0;s=F+54|0;t=F+32|0;o=F+28|0;p=F+24|0;y=F+20|0;z
=F+16|0;x=F+12|0;u=F+48|0;A=F+8|0;w=F+4|0;v=F;B=F+53|0;C=F+52|0;D=F+51|0;E=F+50|0;c[n>>2]=f;c[q>>2]=g;c[r>
;>2]=h;a[s>>0]=j;c[t>>2]=k;c[o>>2]=l;c[p>>2]=m;c[z>>2]=c[(c[n>>
2]|0)+8>>2];c[y>>2]=c[(c[n>>2]|0)+12>>2];if((c[z>>2]|0)<0){l=_(c[z>
x3e;2]|0,(c[c[n>>2]>>2]|0)-1|0)|0;c[y>>2]=(c[y>>2]|0)+(0-l)}l=(c[t>>2]>
x3e;3)+(_(c[o>>2]|0,c[z>>2]|0)|0)|0;c[y>>2]=(c[y>>2]|0)+l;b[u>>1]=0;c[A>
x3e;2]=0;c[x>>2]=c[p>>2];while(1){if((c[x>>2]|0)<=0)break;c[w>>2]=c[y>>2];
c[v>>2]=c[r>>2];a[B>>0]=c[t>>2]&7;a[C>>0]=8-(d[B>>0]|0);if((c[v
>>2]|0)>=8){c[v>>2]=(c[v>>2]|0)-8;do{if((c[A>>2]|0)>>>0<8){l=c[
q>>2]|0;c[q>>2]=l+1;b[u>>1]=e[u>>1]|(d[l>>0]&65535)<<8-(c[A>
;>2]|0)&65535;c[A>>2]=(c[A>>2]|0)+8}a[D>>0]=e[u>>1]>>8;n=d[D>
x3e;0]|0;if(a[B>>0]|0){l=c[w>>2]|0;a[l>>0]=d[l>>0]|n>>d[B>>0]&255
;l=(c[w>>2]|0)+1|0;a[l>>0]=d[l>>0]|d[D>>0]<<d[C>>0]&255}else{l=
c[w>>2]|0;a[l>>0]=d[l>>0]|n}c[w>>2]=(c[w>>2]|0)+1;b[u>>1]=e[u>
x3e;1]<<8;c[A>>2]=(c[A>>2]|0)-8;c[v>>2]=(c[v>>2]|0)-8}while((c[v>>2]|
0)>=0);c[v>>2]=(c[v>>2]|0)+8}if((c[v>>2]|0)>0){if((c[A>>2]|0)<(c[v>
x3e;2]|0)){l=c[q>>2]|0;c[q>>2]=l+1;b[u>>1]=e[u>>1]|(d[l>>0]&65535)<
x3c;8-(c[A>>2]|0)&65535;c[A>>2]=(c[A>>2]|0)+8}a[E>>0]=e[u>>1]>>
8&255&~(255>>c[v>>2]);l=c[w>>2]|0;a[l>>0]=d[l>>0]|d[E>>0]
x3e;>d[B>>0]&255;if((c[v>>2]|0)>(d[C>>0]|0)){l=(c[w>>2]|0)+1|0;a[l>
x3e;0]=d[l>>0]|d[E>>0]<<d[C>>0]&255}b[u>>1]=e[u>>1]<<
c[v>>2];c[A>>2]=(c[A>>2]|0)-(c[v>>2]|0)}if(a[s>>0]|0){b[u>>1]=0;c[A
x3e;>2]=0}c[y>>2]=(c[y>>2]|0)+(c[z>>2]|0);c[x>>2]=(c[x>>2]|0)+-1}i=F;return
}function ml(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;z=i;i=i+80|0;l
=z+60|0;m=z+56|0;w=z+52|0;f=z+48|0;r=z+44|0;q=z+40|0;g=z+36|0;j=z+32|0;h=z+28|0;k=z+24|0;o=z+20|0;t=z+16|0;y=z+12|0;u=z+66|0;n=z
+8|0;x=z+65|0;v=z+4|0;p=z;s=z+64|0;c[l>>2]=b;c[m>>2]=e;c[q>>2]=c[(c[l>>2]|0)+12>>
;2];c[w>>2]=c[c[l>>2]>>2];c[r>>2]=c[(c[l>>2]|0)+8>>2];c[f>>
;2]=0;a:while(1){if((c[f>>2]|0)>=(c[w>>2]|0))break;c[g>>2]=c[q>>2];c[j>>2
]=(c[q>>2]|0)+(c[r>>2]|0);while(1){if((c[g>>2]|0)>>>0>=(c[j>>2]|0)
x3e;>>0)break;if(a[c[g>>2]>>0]|0)break a;c[g>>2]=(c[g>>2]|0)+1}c[q>>
2]=c[j>>2];c[f>>2]=(c[f>>2]|0)+1}if((c[f>>2]|0)>=(c[w>>2]|0)){c[(c[l>
;>2]|0)+4>>2]=0;c[c[l>>2]>>2]=0;c[(c[l>>2]|0)+8>>2]=0;a[(c[l>>2
]|0)+18>>0]=1;i=z;return}if((c[f>>2]|0)>0){c[q>>2]=c[(c[l>>2]|0)+12>>2];e
=(c[q>>2]|0)+(_(c[f>>2]|0,c[r>>2]|0)|0)|0;Ts(c[q>>2]|0,e|0,_((c[w>>2]|0)-(c[f
x3e;>2]|0)|0,c[r>>2]|0)|0)|0;a[c[m>>2]>>0]=(d[c[m>>2]>>0]|0)-(c[f>
x3e;2]|0);a[(c[m>>2]|0)+3>>0]=(a[(c[m>>2]|0)+3>>0]|0)-(c[f>>2]|0);a[(c[m>
x3e;2]|0)+6>>0]=(a[(c[m>>2]|0)+6>>0]|0)-(c[f>>2]|0);e=c[l>>2]|0;c[e>>
;2]=(c[e>>2]|0)-(c[f>>2]|0);c[w>>2]=(c[w>>2]|0)-(c[f>>2]|0)}c[q>>2]=(
c[(c[l>>2]|0)+12>>2]|0)+(_((c[w>>2]|0)-1|0,c[r>>2]|0)|0);c[f>>2]=0;b:while(1){
if((c[f>>2]|0)>=(c[w>>2]|0))break;c[h>>2]=c[q>>2];c[k>>2]=(c[q>>
;2]|0)+(c[r>>2]|0);while(1){if((c[h>>2]|0)>>>0>=(c[k>>2]|0)>>>0
)break;if(a[c[h>>2]>>0]|0)break b;c[h>>2]=(c[h>>2]|0)+1}c[q>>2]=(c[q>>
;2]|0)+(0-(c[r>>2]|0));c[f>>2]=(c[f>>2]|0)+1}if((c[f>>2]|0)>0){a[c[m>>2]
x3e;>0]=(d[c[m>>2]>>0]|0)-(c[f>>2]|0);c[w>>2]=(c[w>>2]|0)-(c[f>>
;2]|0);e=c[l>>2]|0;c[e>>2]=(c[e>>2]|0)-(c[f>>2]|0)}c:do{c[q>>2]=c[(c[l>
x3e;2]|0)+12>>2];c[o>>2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);while(1){if((c
[q>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(d[c[q>>2]>>0]
x26;128|0)break c;c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}c[q>>2]=c[(c[l>>2]|0)+12>
;>2];c[o>>2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);while(1){f=(c[l>>2]|0
)+4|0;g=c[f>>2]|0;if((c[q>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[y
>>2]=g;c[n>>2]=c[q>>2];a[u>>0]=d[c[n>>2]>>0]<<1;c[t>
x3e;2]=8;while(1){if((c[t>>2]|0)>=(c[y>>2]|0))break;a[x>>0]=a[(c[n>>2]|0)+1>
x3e;0]|0;a[c[n>>2]>>0]=d[u>>0]|d[x>>0]>>7;a[u>>0]=d[x>>0]
x3c;<1;c[n>>2]=(c[n>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+8}a[c[n>>2]>>0
]=a[u>>0]|0;c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}c[f>>2]=g+-1;e=(c[m>>2]|
0)+2|0;a[e>>0]=(a[e>>0]|0)+1<<24>>24;e=(c[m>>2]|0)+5|0;a[e>>0]=(a[e
x3e;>0]|0)+1<<24>>24;e=(c[m>>2]|0)+1|0;a[e>>0]=(a[e>>0]|0)+-1<<
24>>24}while((c[(c[l>>2]|0)+4>>2]|0)>0);d:while(1){c[v>>2]=(c[(c[l>>2]|0)+
4>>2]|0)-1;c[q>>2]=(c[(c[l>>2]|0)+12>>2]|0)+(c[v>>2]>>3);c[p>
x3e;2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);a[s>>0]=128>>(c[v>>2]
x26;7);while(1){if((c[q>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;if(d[c[q>
x3e;2]>>0]&d[s>>0]|0){f=37;break d}c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}y=(c[l
>>2]|0)+4|0;c[y>>2]=(c[y>>2]|0)+-1;y=(c[m>>2]|0)+1|0;a[y>>0]=(a[y>>0
]|0)+-1<<24>>24;if((c[(c[l>>2]|0)+4>>2]|0)<=0){f=37;break}}if((f|0)==37){i=z;return
}}function nl(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return}function
ol(d){d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;f=n+20|0;j=n+16|0;l=n+12|0;g=n+8|0;m=n+4|0;k=n+24|0;h=n;c[f>
x3e;2]=d;c[j>>2]=c[(c[f>>2]|0)+100>>2];c[l>>2]=(c[f>>2]|0)+628;if(!(a[c[l>
;>2]>>0]|0)){m=c[l>>2]|0;a[m>>0]=0;i=n;return}c[g>>2]=c[(c[f>>2]|0)+468
x3e;>2];if((c[g>>2]|0)!=131072){if((c[g>>2]|0)!=163840){m=c[l>>2]|0;a[m>>0]=0;i=n;return
}c[h>>2]=(c[l>>2]|0)+4;Fb(c[j>>2]|0,c[(c[h>>2]|0)+4>>2]|0);c[(c[h>>2
]|0)+4>>2]=0;b[c[h>>2]>>1]=0;m=c[l>>2]|0;a[m>>0]=0;i=n;return}c[m>>2
]=(c[l>>2]|0)+4;Fb(c[j>>2]|0,c[(c[m>>2]|0)+4>>2]|0);c[(c[m>>2]|0)+4>>
;2]=0;b[c[m>>2]>>1]=0;b[k>>1]=0;while(1){f=c[j>>2]|0;if((e[k>>1]|0)>=(e[(
c[m>>2]|0)+2>>1]|0))break;Fb(f,c[(c[(c[m>>2]|0)+8>>2]|0)+(e[k>>1]<<2
)>>2]|0);c[(c[(c[m>>2]|0)+8>>2]|0)+(e[k>>1]<<2)>>2]=0;b[k>>
;1]=(b[k>>1]|0)+1<<16>>16}Fb(f,c[(c[m>>2]|0)+8>>2]|0);c[(c[m>>2]|0)+
8>>2]=0;b[(c[m>>2]|0)+2>>1]=0;m=c[l>>2]|0;a[m>>0]=0;i=n;return}function pl(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;c[h>>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>>2];i=e;return 7}function
ql(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[f>>2]=c[f>
;>2];c[e>>2]=c[e>>2];i=d;return 0}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,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=i;i=i+96|0;g=E+88|0;h=E+84|0;j=E+80|0;D=E+76|0;l=E+72|0;s=
E+68|0;y=E+64|0;z=E+60|0;k=E+56|0;w=E+52|0;C=E+48|0;r=E+44|0;n=E+40|0;x=E+36|0;B=E+32|0;p=E+28|0;v=E+24|0;t=E+20|0;u=E+16|0;A=E+
12|0;o=E+8|0;m=E+4|0;q=E;c[g>>2]=b;c[h>>2]=e;c[j>>2]=f;c[D>>2]=0;c[s>>2]=1;c[y
>>2]=c[(c[g>>2]|0)+772>>2];c[z>>2]=(c[y>>2]|0)+(c[(c[g>>2]|0)+776>
;>2]|0);c[y>>2]=(c[y>>2]|0)+4;c[s>>2]=1;c[l>>2]=c[(c[g>>2]|0)+780>
x3e;2];while(1){if((c[l>>2]|0)>>>0<=0){b=28;break}if(((c[y>>2]|0)+6|0)>>>
0>(c[z>>2]|0)>>>0){b=28;break}c[k>>2]=c[y>>2];c[w>>2]=c[k>>
;2];c[y>>2]=(c[y>>2]|0)+2;c[C>>2]=((d[(c[y>>2]|0)+-2>>0]&65535)<<
;8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[y>>2]=(c[y>>2]|0)+2;c[
r>>2]=((d[(c[y>>2]|0)+-2>>0]&65535)<<8|(d[(c[y>>2]|0)+-2+1>>0]
x26;65535)<<0)&65535;c[y>>2]=(c[y>>2]|0)+2;c[n>>2]=((d[(c[y>>2]|0)+-2>
;>0]&65535)<<8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[B>>
;2]=0;c[C>>2]=c[C>>2];c[w>>2]=(c[k>>2]|0)+(c[r>>2]|0);if((c[w>>2]|0)
x3e;>>0>(c[z>>2]|0)>>>0)c[w>>2]=c[z>>2];a:do if(c[(c[g>>2]|
0)+784>>2]&c[s>>2]|0?((c[y>>2]|0)+8|0)>>>0<=(c[w>>2]|0)>
x3e;>0:0){c[y>>2]=(c[y>>2]|0)+2;c[x>>2]=((d[(c[y>>2]|0)+-2>>0]&65535
)<<8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[y>>2]=(c[y>>
;2]|0)+6;if(((c[w>>2]|0)-(c[y>>2]|0)|0)<((c[x>>2]|0)*6|0))c[x>>2]=((c[w>>
2]|0)-(c[y>>2]|0)|0)/6|0;if(!((c[n>>2]|0)>>>8)){c[p>>2]=c[h>>2]<<
;16|c[j>>2];if(c[(c[g>>2]|0)+788>>2]&c[s>>2]|0){c[v>>2]=0;c[t>>
2]=c[x>>2];while(1){if((c[v>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a
;c[u>>2]=((c[v>>2]|0)+(c[t>>2]|0)|0)>>>1;c[A>>2]=(c[y>>2]|0)+((
c[u>>2]|0)*6|0);c[A>>2]=(c[A>>2]|0)+4;c[o>>2]=d[(c[A>>2]|0)+-4>>0]
x3c;<24|d[(c[A>>2]|0)+-4+1>>0]<<16|d[(c[A>>2]|0)+-4+2>>0]<<8|d[(
c[A>>2]|0)+-4+3>>0]<<0;if((c[o>>2]|0)==(c[p>>2]|0))break;b=c[u>>2]|0
;if((c[o>>2]|0)>>>0<(c[p>>2]|0)>>>0){c[v>>2]=b+1;continue}else{
c[t>>2]=b;continue}}c[B>>2]=((a[c[A>>2]>>0]<<16>>16<<8|d[(
c[A>>2]|0)+1>>0]<<0)&65535)<<16>>16}else{c[m>>2]=c[x>>
;2];while(1){if((c[m>>2]|0)>>>0<=0)break a;c[y>>2]=(c[y>>2]|0)+4;c[q>>
;2]=d[(c[y>>2]|0)+-4>>0]<<24|d[(c[y>>2]|0)+-4+1>>0]<<16|d[(c[y>
x3e;2]|0)+-4+2>>0]<<8|d[(c[y>>2]|0)+-4+3>>0]<<0;b=c[y>>2]|0;if((c[q
x3e;>2]|0)==(c[p>>2]|0))break;c[y>>2]=b+2;c[m>>2]=(c[m>>2]|0)+-1}c[B>>2]=((
a[b>>0]<<16>>16<<8|d[(c[y>>2]|0)+1>>0]<<0)&65535)<
;<16>>16}b=c[B>>2]|0;if(c[n>>2]&8|0){c[D>>2]=b;break}else{c[D>>2]=(c
[D>>2]|0)+b;break}}}while(0);c[y>>2]=c[w>>2];c[l>>2]=(c[l>>2]|0)+-1;c[s>
x3e;2]=c[s>>2]<<1}if((b|0)==28){i=E;return c[D>>2]|0}return 0}function sl(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;n=i;i=i+48|0;f=n+36|0;h=n+32|0;m=n+16|0;k=n+12|0;g=n+8|0;j=n+4|0;l=n;c[f>>2]=a;c[h>
x3e;2]=d;c[g>>2]=c[(c[h>>2]|0)+28>>2];c[m+12>>2]=Mc(c[h>>2]|0)|0;c[m>>
;2]=Oc(c[h>>2]|0,k)|0;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}d=le(c[h>>2]|0,8240,m)|0;
c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}c[k>>2]=tl(m,c[h>>2]|0)|0;if(c[k>>
;2]|0){m=c[k>>2]|0;i=n;return m|0}b[(c[f>>2]|0)+152>>1]=b[m+4>>1]|0;c[(c[f>>2]|
0)+148>>2]=c[m>>2];d=hc(c[g>>2]|0,16,0,e[(c[f>>2]|0)+152>>1]|0,0,k)|0;c[(c[f
x3e;>2]|0)+156>>2]=d;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}d=Kc(c[h>>2]|0,(c[m+12
>>2]|0)+12|0)|0;c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}d=ee(c[h>>2]|0,(e[(c[f>
;>2]|0)+152>>1]|0)<<4)|0;c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}c[j>>
;2]=c[(c[f>>2]|0)+156>>2];c[l>>2]=0;while(1){f=c[h>>2]|0;if((c[l>>2]|0)>=(
e[m+4>>1]|0|0))break;d=je(f)|0;c[c[j>>2]>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>>2]|0)+
4>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>>2]|0)+8>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>
x3e;2]|0)+12>>2]=d;if(((c[(c[j>>2]|0)+8>>2]|0)+(c[(c[j>>2]|0)+12>>2]|0)|0)>
;>>0<=(c[(c[h>>2]|0)+4>>2]|0)>>>0)c[j>>2]=(c[j>>2]|0)+16;c
[l>>2]=(c[l>>2]|0)+1}ge(f);m=c[k>>2]|0;i=n;return m|0}function tl(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,q=0,r=0,s=0;s=i;i=i+64|0;f=s+48|0;g=s+44|0;h=s+40|0;n=s+54|0;q=s+52|0;j=s+36|0;l=s+32|0;k=s+28|0;o=
s+24|0;p=s+8|0;m=s;c[f>>2]=a;c[g>>2]=d;b[q>>1]=0;c[j>>2]=0;c[l>>2]=0;c[k>
x3e;2]=0;c[o>>2]=(c[(c[f>>2]|0)+12>>2]|0)+12;d=Kc(c[g>>2]|0,c[o>>2]|0)|0;c[h
x3e;>2]=d;if(d|0){r=c[h>>2]|0;i=s;return r|0}b[n>>1]=0;a:while(1){if((e[n>>1]|0|0)>=(e[(
c[f>>2]|0)+4>>1]|0|0))break;d=le(c[g>>2]|0,8264,p)|0;c[h>>2]=d;if(d|0){r=5;break}do if(((
c[p+8>>2]|0)+(c[p+12>>2]|0)|0)>>>0<=(c[(c[g>>2]|0)+4>>2]|0)>>
;>0){b[q>>1]=(b[q>>1]|0)+1<<16>>16;if((c[p>>2]|0)!=1751474532?(c[p>
x3e;2]|0)!=1651008868:0){if((c[p>>2]|0)==1397313095){c[l>>2]=1;break}if((c[p>>2]|0)!=1296389185)break
;c[k>>2]=1;break}c[j>>2]=1;if((c[p+12>>2]|0)>>>0<54){r=10;break a}d=Kc(c[g>
;>2]|0,(c[p+8>>2]|0)+12|0)|0;c[h>>2]=d;if(d|0){r=27;break a}c[m>>2]=Oc(c[g>>2]|0,h)|
0;if(c[h>>2]|0){r=27;break a}if((c[m>>2]|0)!=1594834165){r=14;break a}d=Kc(c[g>>2]|0,(c[o>>
;2]|0)+((e[n>>1]|0)+1<<4)|0)|0;c[h>>2]=d;if(d|0){r=27;break a}}while(0);b[n>>1]=(b[n>
;>1]|0)+1<<16>>16}if((r|0)==5){b[n>>1]=(b[n>>1]|0)+-1<<16>>16;b
[(c[f>>2]|0)+4>>1]=b[n>>1]|0}else if((r|0)==10){c[h>>2]=142;r=c[h>>2]|0;i=s;return
r|0}else if((r|0)==14){c[h>>2]=142;r=c[h>>2]|0;i=s;return r|0}else if((r|0)==27){r=c[h>>2]|0;i=s;
return r|0}b[(c[f>>2]|0)+4>>1]=b[q>>1]|0;if(!(e[(c[f>>2]|0)+4>>1]|0)){c[h>
;>2]=2;r=c[h>>2]|0;i=s;return r|0}if((c[j>>2]|0)==0?!((c[l>>2]|0)!=0&(c[k>>2]|
0)!=0):0){c[h>>2]=142;r=c[h>>2]|0;i=s;return r|0}c[h>>2]=0;r=c[h>>2]|0;i=s;return r|0}function
ul(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;E=i;i=i
+80|0;B=E+72|0;j=E+68|0;C=E+78|0;D=E+64|0;r=E+60|0;z=E+56|0;t=E+52|0;s=E+48|0;u=E+44|0;q=E+40|0;w=E+36|0;v=E+32|0;o=E+28|0;x=E+24
|0;p=E+20|0;y=E+16|0;k=E+12|0;m=E+8|0;l=E+4|0;n=E;A=E+76|0;c[B>>2]=f;c[j>>2]=g;a[C>>0]=h;c[r>
x3e;2]=c[(c[j>>2]|0)+28>>2];f=c[B>>2]|0;if(a[C>>0]|0){c[o>>2]=f+300+36;c[x>
;>2]=(c[B>>2]|0)+300+40;c[D>>2]=Wa[c[(c[B>>2]|0)+508>>2]&31](c[B>>2]|
0,1986884728,c[j>>2]|0,z)|0;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}c[s>>2]=e[(c[B>
;>2]|0)+300+34>>1];if((c[s>>2]|0)>>>0>(((c[z>>2]|0)>>>0)/4
|0)>>>0)c[s>>2]=((c[z>>2]|0)>>>0)/4|0;b[(c[B>>2]|0)+300+34>>
;1]=0;c[q>>2]=c[o>>2];c[w>>2]=c[x>>2]}else{c[p>>2]=f+216+36;c[y>>2]=(
c[B>>2]|0)+216+40;c[D>>2]=Wa[c[(c[B>>2]|0)+508>>2]&31](c[B>>2]|0,1752003704
,c[j>>2]|0,z)|0;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}c[s>>2]=e[(c[B>>2]|0)+
216+34>>1];if((c[s>>2]|0)>>>0>(((c[z>>2]|0)>>>0)/4|0)>>
;>0)c[s>>2]=((c[z>>2]|0)>>>0)/4|0;b[(c[B>>2]|0)+216+34>>1]=0;c[q>
;>2]=c[p>>2];c[w>>2]=c[y>>2]}c[t>>2]=(e[(c[B>>2]|0)+260+4>>1]|0
)-(c[s>>2]|0);c[u>>2]=(((c[z>>2]|0)-(c[s>>2]<<2)|0)>>>0)/2|0;if
((c[t>>2]|0)<0)c[t>>2]=0;y=hc(c[r>>2]|0,4,0,c[s>>2]|0,0,D)|0;c[c[q>>2]>
;>2]=y;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}y=hc(c[r>>2]|0,2,0,c[t>>2]|0,0,D)|0
;c[c[w>>2]>>2]=y;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}z=ee(c[j>>2]|0,c[z
x3e;>2]|0)|0;c[D>>2]=z;if(z|0){D=c[D>>2]|0;i=E;return D|0}c[v>>2]=c[(c[j>>2]|0)+32
x3e;>2];c[k>>2]=c[c[q>>2]>>2];c[m>>2]=(c[k>>2]|0)+(c[s>>2]<
;<2);while(1){if((c[k>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;c[v>>
;2]=(c[v>>2]|0)+2;b[c[k>>2]>>1]=(d[(c[v>>2]|0)+-2>>0]&65535)<<8
|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0;c[v>>2]=(c[v>>2]|0)+2;b[(c[k>>
;2]|0)+2>>1]=a[(c[v>>2]|0)+-2>>0]<<16>>16<<8|d[(c[v>>2]|0)+-
2+1>>0]<<0;c[k>>2]=(c[k>>2]|0)+4}c[l>>2]=c[c[w>>2]>>2];c[n
>>2]=(c[l>>2]|0)+(((c[t>>2]|0)<(c[u>>2]|0)?c[t>>2]|0:c[u>>2]|0)
x3c;<1);while(1){if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[v>
x3e;2]=(c[v>>2]|0)+2;b[c[l>>2]>>1]=a[(c[v>>2]|0)+-2>>0]<<16>>
;16<<8|d[(c[v>>2]|0)+-2+1>>0]<<0;c[l>>2]=(c[l>>2]|0)+2}a:do if((c[u
x3e;>2]|0)>0?(c[t>>2]|0)>(c[u>>2]|0):0){b[A>>1]=b[(c[c[w>>2]>>2
]|0)+((c[u>>2]|0)-1<<1)>>1]|0;c[n>>2]=(c[c[w>>2]>>2]|0)+(c[t>
x3e;2]<<1);while(1){if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a
;b[c[l>>2]>>1]=b[A>>1]|0;c[l>>2]=(c[l>>2]|0)+2}}while(0);ge(c[j>>2]|
0);g=c[s>>2]&65535;f=c[B>>2]|0;if(a[C>>0]|0){b[f+300+34>>1]=g;D=c[D>>2]|0
;i=E;return D|0}else{b[f+216+34>>1]=g;D=c[D>>2]|0;i=E;return D|0}return 0}function vl(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;s=i;i=i+64|0;e=s+48|0;k=s+44|0;r=s+40|0;n=s+36|0;j=s+32|0;g=s+28|0;q=s+24
|0;h=s+20|0;f=s+16|0;p=s+12|0;l=s+8|0;o=s+4|0;m=s;c[e>>2]=a;c[k>>2]=d;c[r>>2]=0;c[n>>2]=
c[(c[k>>2]|0)+28>>2];c[(c[e>>2]|0)+612>>2]=0;c[r>>2]=Wa[c[(c[e>>2]|0
)+508>>2]&31](c[e>>2]|0,1161972803,c[k>>2]|0,0)|0;if(c[r>>2]|0)c[r>>2]=Wa
[c[(c[e>>2]|0)+508>>2]&31](c[e>>2]|0,1651273571,c[k>>2]|0,0)|0;if(c[r>>2]|
0){r=c[r>>2]|0;i=s;return r|0}c[q>>2]=Mc(c[k>>2]|0)|0;d=ee(c[k>>2]|0,8)|0;c[r>>
;2]=d;if(d|0){r=c[r>>2]|0;i=s;return r|0}c[j>>2]=je(c[k>>2]|0)|0;c[g>>2]=je(c[k>>
;2]|0)|0;ge(c[k>>2]|0);if((c[j>>2]|0)!=131072|(c[g>>2]|0)>>>0>=65536){c[r>
;>2]=3;r=c[r>>2]|0;i=s;return r|0}j=hc(c[n>>2]|0,48,0,c[g>>2]|0,0,r)|0;c[(c[e>>2]|0
)+616>>2]=j;if(c[r>>2]|0){r=c[r>>2]|0;i=s;return r|0}c[(c[e>>2]|0)+612>>2]=c[g
>>2];c[h>>2]=c[(c[e>>2]|0)+616>>2];c[f>>2]=c[g>>2];j=ee(c[k>>
;2]|0,(c[g>>2]|0)*48|0)|0;c[r>>2]=j;if(j|0){r=c[r>>2]|0;i=s;return r|0}while(1){if((c[f>>
;2]|0)>>>0<=0)break;j=le(c[k>>2]|0,8288,c[h>>2]|0)|0;c[r>>2]=j;if(j|0)break;j=
le(c[k>>2]|0,8308,(c[h>>2]|0)+16|0)|0;c[r>>2]=j;if(j|0)break;j=le(c[k>>2]|0,8308,(c[h>
;>2]|0)+28|0)|0;c[r>>2]=j;if(j|0)break;j=le(c[k>>2]|0,8360,c[h>>2]|0)|0;c[r>>2]=j;if
(j|0)break;c[f>>2]=(c[f>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+48}ge(c[k>>2]|0);c[p>
;>2]=c[(c[e>>2]|0)+616>>2];c[l>>2]=c[g>>2];a:while(1){if((c[l>>2]|0)>
;>>0<=0){e=30;break}c[m>>2]=c[c[p>>2]>>2];j=Kc(c[k>>2]|0,(c[q>>
2]|0)+(c[(c[p>>2]|0)+8>>2]|0)|0)|0;c[r>>2]=j;if(j|0){e=30;break}j=ee(c[k>>2]|0,c[c[p>
;>2]>>2]<<3)|0;c[r>>2]=j;if(j|0){e=30;break}j=hc(c[n>>2]|0,40,0,c[c[p>>2]
x3e;>2]|0,0,r)|0;c[(c[p>>2]|0)+4>>2]=j;if(c[r>>2]|0){e=30;break}c[o>>2]=c[(c[p>
;>2]|0)+4>>2];while(1){e=c[k>>2]|0;if((c[m>>2]|0)>>>0<=0)break;j=ie(e)|0;
b[c[o>>2]>>1]=j;j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+2>>1]=j;j=(c[q>>2]|0
)+(c[(c[p>>2]|0)+8>>2]|0)|0;j=j+(je(c[k>>2]|0)|0)|0;c[(c[o>>2]|0)+36>>2]=j;c[m
>>2]=(c[m>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+40}ge(e);c[m>>2]=c[c[p>>2]
x3e;>2];c[o>>2]=c[(c[p>>2]|0)+4>>2];while(1){if((c[m>>2]|0)>>>0<
;=0)break;j=Kc(c[k>>2]|0,c[(c[o>>2]|0)+36>>2]|0)|0;c[r>>2]=j;if(j|0){e=30;break a}j=ee(c
[k>>2]|0,8)|0;c[r>>2]=j;if(j|0){e=30;break a}j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+4>>
;1]=j;j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+6>>1]=j;j=je(c[k>>2]|0)|0;c[(c[o>>2]|0)+
8>>2]=j;ge(c[k>>2]|0);c[r>>2]=wl(c[o>>2]|0,c[k>>2]|0)|0;if(c[r>>2]|0
){e=30;break a}c[m>>2]=(c[m>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+40}c[l>>2]=(c[l>
;>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+48}if((e|0)==30){r=c[r>>2]|0;i=s;return r|0}return 0}function
wl(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;p=i;i=i+32|0;j=p+24|0;k=p+20|0;l=p+16|0;g=p+12|0;o=p+8|0;n=p+4|0;h=p
;m=p+28|0;c[j>>2]=b;c[k>>2]=f;c[g>>2]=c[(c[k>>2]|0)+28>>2];switch(e[(c[j>
x3e;2]|0)+4>>1]|0|0){case 3:case 1:{a[m>>0]=(e[(c[j>>2]|0)+4>>1]|0|0)==1;if((e[(c[j>
;>2]|0)+2>>1]|0|0)<(e[c[j>>2]>>1]|0|0)){c[l>>2]=3;o=c[l>>2]|0;i=p;return
o|0}c[o>>2]=(e[(c[j>>2]|0)+2>>1]|0)-(e[c[j>>2]>>1]|0)+1;c[(c[j>>2]|
0)+24>>2]=c[o>>2];c[o>>2]=(c[o>>2]|0)+1;c[h>>2]=d[m>>0]|0|0?4:2;f=hc
(c[g>>2]|0,4,0,c[o>>2]|0,0,l)|0;c[(c[j>>2]|0)+28>>2]=f;if(c[l>>2]|0){o=c[l>
;>2]|0;i=p;return o|0}f=ee(c[k>>2]|0,_(c[o>>2]|0,c[h>>2]|0)|0)|0;c[l>>2]=f;if(f|0){
o=c[l>>2]|0;i=p;return o|0}c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0>=(c[o>
x3e;2]|0)>>>0)break;b=c[(c[j>>2]|0)+8>>2]|0;g=c[k>>2]|0;if(d[m>>0]|0|0)g=
je(g)|0;else g=(ie(g)|0)&65535;c[(c[(c[j>>2]|0)+28>>2]|0)+(c[n>>2]<<2)>>2
]=b+g;c[n>>2]=(c[n>>2]|0)+1}ge(c[k>>2]|0);o=c[l>>2]|0;i=p;return o|0}case 2:{c[l>
x3e;2]=xl(c[j>>2]|0,c[k>>2]|0)|0;o=c[l>>2]|0;i=p;return o|0}case 4:{c[l>>2]=yl(c[j>
x3e;2]|0,c[k>>2]|0,1)|0;o=c[l>>2]|0;i=p;return o|0}case 5:{c[l>>2]=xl(c[j>>2]|0,c[k>
;>2]|0)|0;if(c[l>>2]|0){o=c[l>>2]|0;i=p;return o|0}c[l>>2]=yl(c[j>>2]|0,c[k>
x3e;2]|0,0)|0;o=c[l>>2]|0;i=p;return o|0}default:{c[l>>2]=3;o=c[l>>2]|0;i=p;return o|0}}return 0}function
xl(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;b
=Oc(c[f>>2]|0,g)|0;c[(c[e>>2]|0)+12>>2]=b;if(c[g>>2]|0){c[d>>2]=c[g>>
;2];b=c[d>>2]|0;i=h;return b|0}else{b=le(c[f>>2]|0,8200,(c[e>>2]|0)+16|0)|0;c[g>>2]=b;c[
d>>2]=(b|0)!=0&1;b=c[d>>2]|0;i=h;return b|0}return 0}function yl(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;p=i;i=i+32|0;j=p+24|0;k=p+20|0;l=p+28|0;n=p+16|0;m=p+12|0;o=p+8|0;h=p+4|0;g=p;c[j>>2]=d;c[k
>>2]=e;a[l>>0]=f;c[g>>2]=c[(c[k>>2]|0)+28>>2];c[m>>2]=Oc(c[k>
x3e;2]|0,n)|0;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}c[(c[j>>2]|0)+24>>2]=c[m>>
;2];do if(a[l>>0]|0){e=hc(c[g>>2]|0,4,0,c[m>>2]|0,0,n)|0;c[(c[j>>2]|0)+28>>2]=
e;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}else{c[h>>2]=c[m>>2]<<2;break}}else
c[h>>2]=c[m>>2]<<1;while(0);e=hc(c[g>>2]|0,2,0,c[m>>2]|0,0,n)|0;c[(c[j>
x3e;2]|0)+32>>2]=e;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}e=ee(c[k>>2]|0,c[h>>
;2]|0)|0;c[n>>2]=e;if(e|0){o=c[n>>2]|0;i=p;return o|0}c[o>>2]=0;while(1){f=c[k>>2]|0;if((
c[o>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;e=ie(f)|0;b[(c[(c[j>>2]|0
)+32>>2]|0)+(c[o>>2]<<1)>>1]=e;if(a[l>>0]|0){e=c[(c[j>>2]|0)+8>
x3e;2]|0;e=e+((ie(c[k>>2]|0)|0)&65535)|0;c[(c[(c[j>>2]|0)+28>>2]|0)+(c[o>>2]<
x3c;2)>>2]=e}c[o>>2]=(c[o>>2]|0)+1}ge(f);o=c[n>>2]|0;i=p;return o|0}function zl(a){a=a|0
;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;b=j+20|0;d=j+16|0;g=j+12|0;h=j+8|0;e=j+4|0;f=j;c[b>>2]=a;c[d>>
2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[b>>2]|0)+616>>2];c[h>>2]=(c[g
x3e;>2]|0)+((c[(c[b>>2]|0)+612>>2]|0)*48|0);if(!(c[g>>2]|0)){h=c[b>>2]|0;h=h+612|0;
c[h>>2]=0;i=j;return}while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>>
;0)break;c[e>>2]=c[(c[g>>2]|0)+4>>2];c[f>>2]=(c[e>>2]|0)+((c[c[g>>2]
x3e;>2]|0)*40|0);a:do if(c[e>>2]|0)while(1){if((c[e>>2]|0)>>>0>=(c[f>>2]|
0)>>>0)break a;Fb(c[d>>2]|0,c[(c[e>>2]|0)+28>>2]|0);c[(c[e>>2]|0)+28>
;>2]=0;Fb(c[d>>2]|0,c[(c[e>>2]|0)+32>>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[e>
;>2]=(c[e>>2]|0)+40}while(0);Fb(c[d>>2]|0,c[(c[g>>2]|0)+4>>2]|0);c[(c[g>>
2]|0)+4>>2]=0;c[c[g>>2]>>2]=0;c[g>>2]=(c[g>>2]|0)+48}Fb(c[d>>2]|0,c[(
c[b>>2]|0)+616>>2]|0);c[(c[b>>2]|0)+616>>2]=0;h=c[b>>2]|0;h=h+612|0;c[h>
x3e;2]=0;i=j;return}function Al(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;n=i;i=i+32|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+
4|0;m=n;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;if((c[k>>2]|0)>>>0>=(c[(c[j>
;>2]|0)+612>>2]|0)>>>0){c[h>>2]=6;f=c[h>>2]|0;i=n;return f|0}else{c[m>>
;2]=(c[(c[j>>2]|0)+616>>2]|0)+((c[k>>2]|0)*48|0);b[c[l>>2]>>1]=d[(c[m>>
;2]|0)+44>>0]|0;b[(c[l>>2]|0)+2>>1]=d[(c[m>>2]|0)+45>>0]|0;c[(c[l>>2
]|0)+12>>2]=a[(c[m>>2]|0)+16>>0]<<6;c[(c[l>>2]|0)+16>>2]=a[(c[m>
;>2]|0)+16+1>>0]<<6;c[(c[l>>2]|0)+24>>2]=(a[(c[m>>2]|0)+16+6>>0
]|0)+(d[(c[m>>2]|0)+16+2>>0]|0)+(a[(c[m>>2]|0)+16+7>>0]|0)<<6;c[(c[l>>
;2]|0)+20>>2]=(c[(c[l>>2]|0)+12>>2]|0)-(c[(c[l>>2]|0)+16>>2]|0);c[h>>
;2]=0;f=c[h>>2]|0;i=n;return f|0}return 0}function Bl(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;s=i;i=i+48|0;l=s+32|0;t=s+28|0;w=s+38|0;m=s+24|0;n=s+20|0;o=s+16|0;v=s+12|0;u=s+8|0;p=s+4|0;r=s;q=s
+36|0;c[t>>2]=f;a[w>>0]=g;c[m>>2]=h;c[n>>2]=j;c[o>>2]=k;c[v>>2]=(c[t
>>2]|0)+300;c[u>>2]=(c[t>>2]|0)+216;c[p>>2]=d[w>>0]|0|0?c[v>>2]|0:c[
u>>2]|0;b[q>>1]=b[(c[p>>2]|0)+34>>1]|0;if((e[q>>1]|0|0?c[(c[p>>2]|0)+
36>>2]|0:0)?(c[m>>2]|0)>>>0<(e[(c[t>>2]|0)+260+4>>1]|0)>>
x3e;0:0){if((c[m>>2]|0)>>>0<(e[q>>1]|0)>>>0){c[r>>2]=(c[(c[p>
;>2]|0)+36>>2]|0)+(c[m>>2]<<2);b[c[n>>2]>>1]=b[(c[r>>2]|0)+2>
;>1]|0;b[c[o>>2]>>1]=b[c[r>>2]>>1]|0}else{b[c[n>>2]>>1]=b[(c[(c
[p>>2]|0)+40>>2]|0)+((c[m>>2]|0)-(e[q>>1]|0)<<1)>>1]|0;b[c[o>
x3e;2]>>1]=b[(c[(c[p>>2]|0)+36>>2]|0)+((e[q>>1]|0)-1<<2)>>1]|0}c[l
x3e;>2]=0;w=c[l>>2]|0;i=s;return w|0}b[c[o>>2]>>1]=0;b[c[n>>2]>>1]=0;c[l
x3e;>2]=0;w=c[l>>2]|0;i=s;return w|0}function Cl(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;Dl(c[f>>2]|0,c[e>>2]|0);i=d;return 0}function Dl(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)+112>>2]=c[f>>
2];c[(c[e>>2]|0)+104>>2]=c[(c[f>>2]|0)+4+24>>2];i=d;return}function El(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[f>>2]=c[f>>2];c[e>
x3e;2]=c[e>>2];i=d;return 0}function Fl(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+16|0;f=k+12|0;h=
k+8|0;j=k+4|0;g=k;c[d>>2]=a;c[f>>2]=b;c[h>>2]=0;c[j>>2]=c[(c[f>>2]|0)+92>
x3e;2];c[(c[d>>2]|0)+36>>2]=e[(c[f>>2]|0)+68>>1];c[g>>2]=0;while(1){if(!(c[3616
+(c[g>>2]<<2)>>2]|0))break;c[h>>2]=Id(c[f>>2]|0,c[3616+(c[g>>2]<
;<2)>>2]|0)|0;if(!(c[h>>2]|0))break;c[g>>2]=(c[g>>2]|0)+1}if(c[h>>2]|0){a
=c[f>>2]|0;j=c[j>>2]|0;Jd(a,j)|0;i=k;return 0}Gl(c[d>>2]|0,c[f>>2]|0,111);Pl(c[d>
x3e;2]|0,c[f>>2]|0);Rl(c[d>>2]|0,c[f>>2]|0);a=c[f>>2]|0;j=c[j>>2]|0;Jd(a,j)|0;
i=k;return 0}function Gl(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,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=
0;y=i;i=i+1024|0;t=y+1016|0;g=y+1012|0;z=y+1008|0;w=y+884|0;m=y+880|0;n=y+876|0;v=y+872|0;l=y+40|0;r=y+36|0;j=y+32|0;h=y+28|0;s=
y+24|0;o=y+20|0;p=y+16|0;q=y+12|0;k=y+8|0;u=y+4|0;x=y;c[t>>2]=d;c[g>>2]=e;c[z>>2]=f;Hl(w,c[(c[g>
;>2]|0)+100>>2]|0);c[(c[t>>2]|0)+40+8>>2]=0;c[(c[t>>2]|0)+40+396+8>>2]=0;
c[r>>2]=l+4;c[n>>2]=Dc(c[g>>2]|0,c[z>>2]|0)|0;a:do if(((c[n>>2]|0?(c[m>
x3e;2]=Cb(c[g>>2]|0,c[n>>2]|0,1)|0,(c[m>>2]|0)==0):0)?(b[(c[(c[g>>2]|0)+84>>2]|
0)+108+2>>1]|0)>0:0)?(Ns(l|0,0,832)|0,c[l+36>>2]=c[(c[t>>2]|0)+36>>2],c[(c[r>
x3e;2]|0)+8>>2]=65536,c[(c[r>>2]|0)+4>>2]=65536,c[(c[r>>2]|0)+16>>2]=0,c[(c[r
x3e;>2]|0)+12>>2]=0,c[c[r>>2]>>2]=c[g>>2],c[(c[r>>2]|0)+20>>2]=
0,c[(c[r>>2]|0)+24>>2]=0,Dl(w,l),c[m>>2]=Il(w,(c[(c[g>>2]|0)+84>>2]|0)+108|0)|
0,(c[m>>2]|0)==0):0){c[v>>2]=0;while(1){if((c[v>>2]|0)>=2)break a;c[j>>2]=(c[t>
;>2]|0)+40+((c[v>>2]|0)*396|0);c[h>>2]=w+48+((c[v>>2]|0)*28|0);c[q>>2]=0;c[m>
x3e;2]=Kl(w,c[v>>2]|0)|0;if(c[m>>2]|0)break a;Ml(w,c[v>>2]|0);c[s>>2]=c[(c[h>>
2]|0)+8>>2];c[o>>2]=(c[s>>2]|0)+((c[c[h>>2]>>2]|0)*52|0);while(1){if((c[s>
;>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[p>>2]=c[(c[s>>2]|0)+20
>>2];if((c[p>>2]|0?(c[(c[p>>2]|0)+20>>2]|0)==(c[s>>2]|0):0)?(c[p>>2]|
0)>>>0>(c[s>>2]|0)>>>0:0){c[k>>2]=(b[(c[s>>2]|0)+2>>1
]|0)-(b[(c[p>>2]|0)+2>>1]|0);if((c[k>>2]|0)<0)c[k>>2]=0-(c[k>>2]|0);if((c
[q>>2]|0)>>>0<16){r=c[k>>2]|0;z=c[q>>2]|0;c[q>>2]=z+1;c[(c[j>
x3e;2]|0)+12+(z*12|0)>>2]=r}}c[s>>2]=(c[s>>2]|0)+52}Nl(c[q>>2]|0,(c[j>>2]|0)+12
|0);c[(c[j>>2]|0)+8>>2]=c[q>>2];c[v>>2]=(c[v>>2]|0)+1}}while(0);c[v>>
;2]=0;while(1){if((c[v>>2]|0)>=2)break;c[u>>2]=(c[t>>2]|0)+40+((c[v>>2]|0)*396|0);if
((c[(c[u>>2]|0)+8>>2]|0)>>>0>0)g=c[(c[u>>2]|0)+12>>2]|0;else g=((c[(
c[t>>2]|0)+36>>2]|0)*50|0)/2048|0;c[x>>2]=g;c[(c[u>>2]|0)+204>>2]=(c[x>
x3e;2]|0)/5|0;c[(c[u>>2]|0)+208>>2]=c[x>>2];a[(c[u>>2]|0)+212>>0]=0;c[v>
x3e;2]=(c[v>>2]|0)+1}Ol(w);i=y;return}function Hl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>
x3e;2]=a;c[e>>2]=b;a=c[d>>2]|0;b=a+124|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[c[d>
x3e;2]>>2]=c[e>>2];i=f;return}function Il(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,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;M=i;i=i+128|0;g=M+112|0;h=M+108|0;A=M+104|0;z
=M+100|0;n=M+96|0;m=M+92|0;s=M+88|0;u=M+84|0;r=M+80|0;t=M+76|0;l=M+72|0;I=M+68|0;J=M+64|0;q=M+60|0;p=M+56|0;k=M+52|0;o=M+48|0;j=
M+44|0;v=M+40|0;w=M+36|0;x=M+32|0;y=M+116|0;B=M+28|0;K=M+24|0;D=M+20|0;E=M+16|0;C=M+12|0;F=M+8|0;G=M+4|0;H=M;c[g>>2]=d
;c[h>>2]=f;c[A>>2]=0;c[s>>2]=c[(c[g>>2]|0)+4>>2];c[u>>2]=c[(c[g>
;>2]|0)+12>>2];c[r>>2]=c[(c[g>>2]|0)+8>>2];c[t>>2]=c[(c[g>>2]|0
)+16>>2];c[l>>2]=c[c[g>>2]>>2];c[(c[g>>2]|0)+28>>2]=0;c[(c[g>
x3e;2]|0)+40>>2]=0;c[(c[g>>2]|0)+48>>2]=0;c[(c[g>>2]|0)+48+12>>2]=0;c[(c[g>
;>2]|0)+48+28>>2]=0;c[(c[g>>2]|0)+48+28+12>>2]=0;c[m>>2]=b[c[h>>2]>
x3e;1];c[n>>2]=c[(c[g>>2]|0)+36>>2];do if((c[m>>2]|0)>>>0>(c[n>
x3e;2]|0)>>>0){c[m>>2]=(c[m>>2]|0)+3&-4;f=hc(c[l>>2]|0,4,c[n>>2]|0,c
[m>>2]|0,c[(c[g>>2]|0)+44>>2]|0,A)|0;c[(c[g>>2]|0)+44>>2]=f;if(c[A>>
2]|0){L=c[A>>2]|0;i=M;return L|0}else{c[(c[g>>2]|0)+36>>2]=c[m>>2];break}}while(0);c[m
x3e;>2]=(b[(c[h>>2]|0)+2>>1]|0)+2;c[n>>2]=c[(c[g>>2]|0)+24>>2];do if((c[m
>>2]|0)>>>0>(c[n>>2]|0)>>>0){c[m>>2]=(c[m>>2]|0)+2+7
x26;-8;f=hc(c[l>>2]|0,40,c[n>>2]|0,c[m>>2]|0,c[(c[g>>2]|0)+32>>2]|0,A)|0;c[(c[
g>>2]|0)+32>>2]=f;if(c[A>>2]|0){L=c[A>>2]|0;i=M;return L|0}else{c[(c[g>>2]|0)+
24>>2]=c[m>>2];break}}while(0);c[(c[g>>2]|0)+28>>2]=b[(c[h>>2]|0)+2>>
;1];c[(c[g>>2]|0)+40>>2]=b[c[h>>2]>>1];c[(c[g>>2]|0)+48+24>>2]=2;c[(
c[g>>2]|0)+48+28+24>>2]=-1;if(($d(c[h>>2]|0)|0)==1){c[(c[g>>2]|0)+48+24>>2]=-2
;c[(c[g>>2]|0)+48+28+24>>2]=1}c[(c[g>>2]|0)+4>>2]=c[s>>2];c[(c[g>>2]|
0)+12>>2]=c[u>>2];c[(c[g>>2]|0)+8>>2]=c[r>>2];c[(c[g>>2]|0)+16>
x3e;2]=c[t>>2];c[(c[g>>2]|0)+116>>2]=0;c[(c[g>>2]|0)+120>>2]=0;c[z>>
2]=c[(c[g>>2]|0)+32>>2];if(!(c[(c[g>>2]|0)+28>>2]|0)){L=c[A>>2]|0;i=M;return L
|0}c[J>>2]=(c[z>>2]|0)+((c[(c[g>>2]|0)+28>>2]|0)*40|0);c[q>>2]=c[(c[h>>
;2]|0)+4>>2];c[p>>2]=c[(c[h>>2]|0)+8>>2];c[k>>2]=(c[z>>2]|0)+((b[c[(
c[h>>2]|0)+12>>2]>>1]|0)*40|0);c[o>>2]=c[k>>2];c[j>>2]=0;c[I>
x3e;2]=c[z>>2];while(1){if((c[I>>2]|0)>>>0>=(c[J>>2]|0)>>>0)break
;b[(c[I>>2]|0)+12>>1]=c[c[q>>2]>>2];b[(c[I>>2]|0)+14>>1]=c[(c[q>
;>2]|0)+4>>2];f=Mb(c[c[q>>2]>>2]|0,c[s>>2]|0)|0;f=f+(c[r>>2]|0)|0;c[(c[I
x3e;>2]|0)+16>>2]=f;c[(c[I>>2]|0)+4>>2]=f;f=Mb(c[(c[q>>2]|0)+4>>2]|0,c[u
x3e;>2]|0)|0;f=f+(c[t>>2]|0)|0;c[(c[I>>2]|0)+20>>2]=f;c[(c[I>>2]|0)+8>>2]=
f;switch(a[c[p>>2]>>0]&3|0){case 0:{b[c[I>>2]>>1]=1;break}case 2:{b[c[I>>
2]>>1]=2;break}default:b[c[I>>2]>>1]=0}c[(c[I>>2]|0)+36>>2]=c[o>>2];
c[(c[o>>2]|0)+32>>2]=c[I>>2];c[o>>2]=c[I>>2];if((c[I>>2]|0)==(c[k>
;>2]|0)?(f=(c[j>>2]|0)+1|0,c[j>>2]=f,(f|0)<(b[c[h>>2]>>1]|0)):0){c[k>>
;2]=(c[z>>2]|0)+((b[(c[(c[h>>2]|0)+12>>2]|0)+(c[j>>2]<<1)>>1]|0)*40|
0);c[o>>2]=c[k>>2]}c[I>>2]=(c[I>>2]|0)+40;c[q>>2]=(c[q>>2]|0)+8;c[p
x3e;>2]=(c[p>>2]|0)+1}c[v>>2]=c[(c[g>>2]|0)+44>>2];c[w>>2]=(c[v>>
;2]|0)+(c[(c[g>>2]|0)+40>>2]<<2);c[x>>2]=c[(c[h>>2]|0)+12>>2];b[y>
;>1]=0;while(1){g=c[z>>2]|0;if((c[v>>2]|0)>>>0>=(c[w>>2]|0)>>
x3e;0)break;c[c[v>>2]>>2]=g+((b[y>>1]|0)*40|0);b[y>>1]=(b[c[x>>2]>>1
]|0)+1;c[v>>2]=(c[v>>2]|0)+4;c[x>>2]=(c[x>>2]|0)+2}c[B>>2]=g;c[K>>2]=
0;c[D>>2]=0;c[E>>2]=0;c[C>>2]=4;c[I>>2]=c[z>>2];while(1){if((c[I>>2]|
0)>>>0>=(c[J>>2]|0)>>>0)break;if((c[I>>2]|0)==(c[B>>2]|0)){c[K
x3e;>2]=c[(c[B>>2]|0)+36>>2];c[D>>2]=(b[(c[B>>2]|0)+12>>1]|0)-(b[(c[K>
;>2]|0)+12>>1]|0);c[E>>2]=(b[(c[B>>2]|0)+14>>1]|0)-(b[(c[K>>2]|0)+14>
;>1]|0);c[C>>2]=Jl(c[D>>2]|0,c[E>>2]|0)|0;c[B>>2]=(c[K>>2]|0)+40}a[(c[I
x3e;>2]|0)+2>>0]=c[C>>2];c[F>>2]=c[(c[I>>2]|0)+32>>2];c[G>>2]=(
b[(c[F>>2]|0)+12>>1]|0)-(b[(c[I>>2]|0)+12>>1]|0);c[H>>2]=(b[(c[F>>2]|
0)+14>>1]|0)-(b[(c[I>>2]|0)+14>>1]|0);c[C>>2]=Jl(c[G>>2]|0,c[H>>2]|0
)|0;a[(c[I>>2]|0)+3>>0]=c[C>>2];do if(!(e[c[I>>2]>>1]&3|0)){g=c[I>
x3e;2]|0;if((a[(c[I>>2]|0)+3>>0]|0)!=(a[(c[I>>2]|0)+2>>0]|0))if((a[g+2>>0]|0)==(
0-(a[(c[I>>2]|0)+3>>0]|0)|0)){L=28;break}else break;if(!((a[g+3>>0]|0)==4?!($b(c[D>>2]|0
,c[E>>2]|0,c[G>>2]|0,c[H>>2]|0)|0):0))L=28}else L=28;while(0);if((L|0)==28){L=0;z=c[I>>2
]|0;b[z>>1]=e[z>>1]|256}c[D>>2]=c[G>>2];c[E>>2]=c[H>>2];c[K>>
;2]=c[I>>2];c[I>>2]=(c[I>>2]|0)+40}L=c[A>>2]|0;i=M;return L|0}function Jl(a,b){a=a|0;b=b
|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;g=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;a=(c[e
>>2]|0)>=(0-(c[d>>2]|0)|0);do if((c[e>>2]|0)>=(c[d>>2]|0))if(a){c[f>>
;2]=2;c[g>>2]=c[e>>2];c[h>>2]=c[d>>2];break}else{c[f>>2]=-1;c[g>>2]=
0-(c[d>>2]|0);c[h>>2]=c[e>>2];break}else if(a){c[f>>2]=1;c[g>>2]=c[d>>
;2];c[h>>2]=c[e>>2];break}else{c[f>>2]=-2;c[g>>2]=c[e>>2];c[h>>2]=c[
d>>2];break}while(0);c[h>>2]=(c[h>>2]|0)*14;d=c[g>>2]|0;e=c[h>>2]|0;if((((c[g
x3e;>2]|0)<0?0-d|0:d)|0)>(((c[h>>2]|0)<0?0-e|0:e)|0)){h=c[f>>2]|0;i=j;return h|0}c[f>
;>2]=4;h=c[f>>2]|0;i=j;return h|0}function Kl(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;P=i;i=i+176|0;j=P+164|0;k=P+160|0;p=P+
156|0;v=P+152|0;G=P+148|0;N=P+144|0;A=P+92|0;q=P+88|0;r=P+84|0;t=P+80|0;B=P+76|0;n=P+72|0;l=P+68|0;o=P+64|0;m=P+60|0;z=P+56|0;s=
P+52|0;x=P+48|0;w=P+44|0;u=P+40|0;y=P+168|0;D=P+36|0;E=P+32|0;C=P+28|0;O=P+24|0;H=P+20|0;J=P+16|0;I=P+12|0;K=P+8|0;L=P+4|0;M=P;c
[j>>2]=f;c[k>>2]=g;c[p>>2]=(c[j>>2]|0)+48+((c[k>>2]|0)*28|0);c[v>>2]=
c[c[j>>2]>>2];c[G>>2]=0;c[N>>2]=0;c[q>>2]=c[(c[j>>2]|0)+44>>
;2];c[r>>2]=(c[q>>2]|0)+(c[(c[j>>2]|0)+40>>2]<<2);f=A;h=f+52|0;do{c[f>>
;2]=0;f=f+4|0}while((f|0)<(h|0));c[A+32>>2]=32e3;a[A>>0]=0;g=c[(c[p>>2]|0)+24>>2]|0
;c[t>>2]=(c[(c[p>>2]|0)+24>>2]|0)<0?0-g|0:g;c[B>>2]=c[t>>2];c[c[p>
x3e;2]>>2]=0;g=c[(c[j>>2]|0)+32>>2]|0;a:do if(!(c[k>>2]|0)){c[n>>2]=g;c[l>
;>2]=(c[n>>2]|0)+((c[(c[j>>2]|0)+28>>2]|0)*40|0);while(1){if((c[n>>2]|0)>>
;>0>=(c[l>>2]|0)>>>0)break a;c[(c[n>>2]|0)+24>>2]=b[(c[n>>2]|0)+
12>>1];c[(c[n>>2]|0)+28>>2]=b[(c[n>>2]|0)+14>>1];c[n>>2]=(c[n>
x3e;2]|0)+40}}else{c[o>>2]=g;c[m>>2]=(c[o>>2]|0)+((c[(c[j>>2]|0)+28>>2]|0)*40|
0);while(1){if((c[o>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break a;c[(c[o>>
;2]|0)+24>>2]=b[(c[o>>2]|0)+14>>1];c[(c[o>>2]|0)+28>>2]=b[(c[o>>2]|0
)+12>>1];c[o>>2]=(c[o>>2]|0)+40}}while(0);b:while(1){if((c[q>>2]|0)>>>0
x3e;=(c[r>>2]|0)>>>0)break;c[z>>2]=c[c[q>>2]>>2];c[s>>2]=c[(c[z
>>2]|0)+36>>2];c[x>>2]=0;c[w>>2]=32e3;c[u>>2]=-32e3;c:do if((c[z>>2]|
0)!=(c[s>>2]|0)){o=a[(c[s>>2]|0)+3>>0]|0;d:do if((((a[(c[s>>2]|0)+3>>0]|0)<
;0?0-o|0:o)|0)==(c[t>>2]|0)?(o=a[(c[z>>2]|0)+3>>0]|0,(((a[(c[z>>2]|0)+3>>0]|0)
x3c;0?0-o|0:o)|0)==(c[t>>2]|0)):0){c[s>>2]=c[z>>2];while(1){c[z>>2]=c[(c[z>>2]|
0)+36>>2];o=a[(c[z>>2]|0)+3>>0]|0;g=c[z>>2]|0;if((((a[(c[z>>2]|0)+3>>
;0]|0)<0?0-o|0:o)|0)!=(c[t>>2]|0))break;if((g|0)==(c[s>>2]|0))break d}c[z>>2]=c[g+32>>
;2]}while(0);c[s>>2]=c[z>>2];a[y>>0]=0;while(1){do if(c[x>>2]|0){c[D>>2]=c[(c[
z>>2]|0)+24>>2];if((c[D>>2]|0)<(c[w>>2]|0))c[w>>2]=c[D>>2];if((
c[D>>2]|0)>(c[u>>2]|0))c[u>>2]=c[D>>2];if((a[(c[z>>2]|0)+3>>0]|
0)==(c[B>>2]|0)?(c[z>>2]|0)!=(c[s>>2]|0):0)break;c[(c[N>>2]|0)+44>>2]=c[z>
;>2];b[(c[N>>2]|0)+2>>1]=(c[w>>2]|0)+(c[u>>2]|0)>>1;if((e[c[(c[N>>
;2]|0)+40>>2]>>1]|e[c[z>>2]>>1])&3|0){o=c[N>>2]|0;a[o>>0]=d[o
x3e;>0]|1}o=c[(c[z>>2]|0)+28>>2]|0;c[u>>2]=o;c[w>>2]=o;c[E>>2]=c[(c[(c[N
x3e;>2]|0)+40>>2]|0)+28>>2];if((c[E>>2]|0)<(c[w>>2]|0))c[w>>2]=c[E
x3e;>2];if((c[E>>2]|0)>(c[u>>2]|0))c[u>>2]=c[E>>2];b[(c[N>>2]|0)+4
x3e;>1]=c[w>>2];b[(c[N>>2]|0)+6>>1]=c[u>>2];b[(c[N>>2]|0)+8>>1]=(
b[(c[N>>2]|0)+6>>1]|0)-(b[(c[N>>2]|0)+4>>1]|0);c[x>>2]=0;c[N>>2]=0}while
(0);if((c[z>>2]|0)==(c[s>>2]|0)){if(a[y>>0]|0)break c;a[y>>0]=1}if((c[x>>2]|0)==
0?(o=a[(c[z>>2]|0)+3>>0]|0,(((a[(c[z>>2]|0)+3>>0]|0)<0?0-o|0:o)|0)==(c[t>>
;2]|0)):0){c[B>>2]=a[(c[z>>2]|0)+3>>0];c[G>>2]=Ll(c[p>>2]|0,c[v>>2]|
0,N)|0;if(c[G>>2]|0){F=53;break b}f=c[N>>2]|0;g=A;h=f+52|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=
g+4|0}while((f|0)<(h|0));a[(c[N>>2]|0)+1>>0]=c[B>>2];o=c[(c[z>>2]|0)+24>>
2]|0;c[u>>2]=o;c[w>>2]=o;c[(c[N>>2]|0)+40>>2]=c[z>>2];c[(c[N>>2]|0)+
44>>2]=c[z>>2];c[(c[N>>2]|0)+48>>2]=c[q>>2];c[x>>2]=1}c[z>>
;2]=c[(c[z>>2]|0)+32>>2]}}while(0);c[q>>2]=(c[q>>2]|0)+4}if((F|0)==53){O=c[G>>
2]|0;i=P;return O|0}c[C>>2]=c[(c[p>>2]|0)+8>>2];c[O>>2]=(c[C>>2]|0)+((c[c[p>
;>2]>>2]|0)*52|0);c[N>>2]=c[C>>2];while(1){if((c[N>>2]|0)>>>0>=(
c[O>>2]|0)>>>0)break;c[H>>2]=c[(c[N>>2]|0)+40>>2];c[J>>2]=c[(c[
N>>2]|0)+44>>2];c[I>>2]=c[(c[H>>2]|0)+28>>2];c[K>>2]=c[(c[J>>
;2]|0)+28>>2];do if((c[H>>2]|0)!=(c[J>>2]|0)){g=c[(c[H>>2]|0)+36>>2]|0;if((c[I
>>2]|0)<(c[K>>2]|0)){c[L>>2]=g;if((c[(c[L>>2]|0)+28>>2]|0)<(c[I>
;>2]|0))b[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8>>1]|0)+((c[I>>2]|0)-(c[(c[L
x3e;>2]|0)+28>>2]|0)>>1);c[L>>2]=c[(c[J>>2]|0)+32>>2];if((c[(c[L>>
;2]|0)+28>>2]|0)<=(c[K>>2]|0))break;b[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8
x3e;>1]|0)+((c[(c[L>>2]|0)+28>>2]|0)-(c[K>>2]|0)>>1);break}else{c[M>>2]=g
;if((c[(c[M>>2]|0)+28>>2]|0)>(c[I>>2]|0))b[(c[N>>2]|0)+8>>1]=(b[(c[N>
;>2]|0)+8>>1]|0)+((c[(c[M>>2]|0)+28>>2]|0)-(c[I>>2]|0)>>1);c[M>>
;2]=c[(c[J>>2]|0)+32>>2];if((c[(c[M>>2]|0)+28>>2]|0)>=(c[K>>2]|0))break;b
[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8>>1]|0)+((c[K>>2]|0)-(c[(c[M>>2]|
0)+28>>2]|0)>>1);break}}while(0);c[N>>2]=(c[N>>2]|0)+52}O=c[G>>2]|0;i=P;return
O|0}function Ll(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;n=i;i=i+32|0;e=n+28|0;f=n+24|0;g=n+20|0;j=n+16
|0;m=n+12|0;l=n+8|0;k=n+4|0;h=n;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=0;c[m>>2
]=0;do if((c[c[e>>2]>>2]|0)>=(c[(c[e>>2]|0)+4>>2]|0)){c[l>>2]=c[(c[e>
;>2]|0)+4>>2];c[k>>2]=c[l>>2];c[h>>2]=41297762;if((c[l>>2]|0)>=(c[h
x3e;>2]|0)){c[j>>2]=64;l=c[m>>2]|0;m=c[g>>2]|0;c[m>>2]=l;m=c[j>>2]|0;i=n;
return m|0}c[k>>2]=(c[k>>2]|0)+((c[k>>2]>>2)+4);if(!((c[k>>2]|0)>=(c[l>
;>2]|0)?(c[k>>2]|0)<=(c[h>>2]|0):0))c[k>>2]=c[h>>2];l=hc(c[f>>2]|0,52
,c[l>>2]|0,c[k>>2]|0,c[(c[e>>2]|0)+8>>2]|0,j)|0;c[(c[e>>2]|0)+8>>2]=
l;if(c[j>>2]|0){l=c[m>>2]|0;m=c[g>>2]|0;c[m>>2]=l;m=c[j>>2]|0;i=n;return m|0}else
{c[(c[e>>2]|0)+4>>2]=c[k>>2];break}}while(0);k=c[(c[e>>2]|0)+8>>2]|0;b=c[e>
;>2]|0;l=c[b>>2]|0;c[b>>2]=l+1;c[m>>2]=k+(l*52|0);l=c[m>>2]|0;m=c[g>>2]|0
;c[m>>2]=l;m=c[j>>2]|0;i=n;return m|0}function Ml(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;u=i;i=i+64|0;v=u+60|0;w=u+56|0;f=u+52|0;t=u+48|0;s=u+44|0;k=u+40|0;j=u+36|0;q=u+32|0;r=u+28|0;n=u
+24|0;o=u+20|0;g=u+16|0;m=u+12|0;l=u+8|0;h=u+4|0;p=u;c[v>>2]=d;c[w>>2]=e;c[f>>2]=(c[v>>2
]|0)+48+((c[w>>2]|0)*28|0);c[t>>2]=c[(c[f>>2]|0)+8>>2];c[s>>2]=(c[t>>
;2]|0)+((c[c[f>>2]>>2]|0)*52|0);d=(c[(c[(c[v>>2]|0)+112>>2]|0)+36>>2]<<
;3|0)/2048|0;c[k>>2]=d;c[k>>2]=(c[k>>2]|0)==0?1:d;c[j>>2]=((c[(c[(c[v>>2]|0)+112
>>2]|0)+36>>2]|0)*6e3|0)/2048|0;c[q>>2]=c[t>>2];while(1){if((c[q>>2]|0)>
x3e;>0>=(c[s>>2]|0)>>>0)break;a:do if((a[(c[q>>2]|0)+1>>0]|0)==(c[(c[f>
;>2]|0)+24>>2]|0)?(c[(c[q>>2]|0)+40>>2]|0)!=(c[(c[q>>2]|0)+44>>2]|0):0){c
[r>>2]=c[t>>2];while(1){if((c[r>>2]|0)>>>0>=(c[s>>2]|0)>>
x3e;0)break a;if(((a[(c[q>>2]|0)+1>>0]|0)+(a[(c[r>>2]|0)+1>>0]|0)|0)==0?(b[(c[r>>
;2]|0)+2>>1]|0)>(b[(c[q>>2]|0)+2>>1]|0):0){c[n>>2]=b[(c[q>>2]|0)+2>
x3e;1];c[o>>2]=b[(c[r>>2]|0)+2>>1];c[g>>2]=(c[o>>2]|0)-(c[n>>2]|0);if
((c[g>>2]|0)<0)c[g>>2]=0-(c[g>>2]|0);c[m>>2]=b[(c[q>>2]|0)+4>>1
];c[l>>2]=b[(c[q>>2]|0)+6>>1];if((c[m>>2]|0)<(b[(c[r>>2]|0)+4>>
1]|0))c[m>>2]=b[(c[r>>2]|0)+4>>1];if((c[l>>2]|0)>(b[(c[r>>2]|0)+6>
x3e;1]|0))c[l>>2]=b[(c[r>>2]|0)+6>>1];c[h>>2]=(c[l>>2]|0)-(c[m>>2]|0
);if((c[h>>2]|0)>=(c[k>>2]|0)){c[p>>2]=(c[g>>2]|0)+((c[j>>2]|0)/(c[h>
;>2]|0)|0);if((c[p>>2]|0)<(c[(c[q>>2]|0)+32>>2]|0)){c[(c[q>>2]|0)+32>>
;2]=c[p>>2];c[(c[q>>2]|0)+20>>2]=c[r>>2]}if((c[p>>2]|0)<(c[(c[r>>
;2]|0)+32>>2]|0)){c[(c[r>>2]|0)+32>>2]=c[p>>2];c[(c[r>>2]|0)+20>>2]=
c[q>>2]}}}c[r>>2]=(c[r>>2]|0)+52}}while(0);c[q>>2]=(c[q>>2]|0)+52}c[q>>
;2]=c[t>>2];while(1){if((c[q>>2]|0)>>>0>=(c[s>>2]|0)>>>0)break;
c[r>>2]=c[(c[q>>2]|0)+20>>2];if(c[r>>2]|0?(c[(c[r>>2]|0)+20>>2]|0)!=(
c[q>>2]|0):0){c[(c[q>>2]|0)+20>>2]=0;c[(c[q>>2]|0)+24>>2]=c[(c[r>>2]|
0)+20>>2]}c[q>>2]=(c[q>>2]|0)+52}i=u;return}function Nl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;j=i;i=i+32|0;d=j+24|0;e=j+20|0;f=j+16|0;g=j+12|0;h=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=1;while(1){if((
c[f>>2]|0)>>>0>=(c[d>>2]|0)>>>0)break;c[g>>2]=c[f>>2];
while(1){if((c[g>>2]|0)>>>0<=0)break;if((c[(c[e>>2]|0)+((c[g>>2]|0)*12|0)>
;>2]|0)>(c[(c[e>>2]|0)+(((c[g>>2]|0)-1|0)*12|0)>>2]|0))break;b=(c[e>>2]|0)+((c
[g>>2]|0)*12|0)|0;c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+
8>>2];b=(c[e>>2]|0)+((c[g>>2]|0)*12|0)|0;a=(c[e>>2]|0)+(((c[g>>2]|0)-1|0)*12|0
)|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];b=(c[e
x3e;>2]|0)+(((c[g>>2]|0)-1|0)*12|0)|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];
c[b+8>>2]=c[h+8>>2];c[g>>2]=(c[g>>2]|0)+-1}c[f>>2]=(c[f>>2]|0)+1}i=j
;return}function Ol(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;f=g+8|0;e=g+4|0;d=g;c[b>>2]=a;if(!(c[b>
;>2]|0)){i=g;return}if(!(c[c[b>>2]>>2]|0)){i=g;return}c[f>>2]=c[c[b>>2]>>
2];c[e>>2]=0;while(1){if((c[e>>2]|0)>=2)break;c[d>>2]=(c[b>>2]|0)+48+((c[e>>
;2]|0)*28|0);c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;Fb(c[f>>2]|0,c[(c[d>
x3e;2]|0)+8>>2]|0);c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+12>>2]=0;c[(c[d>
x3e;2]|0)+16>>2]=0;Fb(c[f>>2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>
x3e;2]=0;c[e>>2]=(c[e>>2]|0)+1}Fb(c[f>>2]|0,c[(c[b>>2]|0)+44>>2]|0);c[(c[b>
;>2]|0)+44>>2]=0;c[(c[b>>2]|0)+36>>2]=0;c[(c[b>>2]|0)+40>>2]=0;Fb(c[f>
;>2]|0,c[(c[b>>2]|0)+32>>2]|0);c[(c[b>>2]|0)+32>>2]=0;c[(c[b>>2]|0)+28>
;>2]=0;c[(c[b>>2]|0)+24>>2]=0;c[c[b>>2]>>2]=0;i=g;return}function Pl(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;N=i;i=i+224|0;O=N+212|0;g=N+208|0;u=N+160|0;L=N+112|0;B=N+104|0;C=N+100|0;j=N+96|0;o=N+92|0;s=N+88|0;h=N+84|0;v=N
+80|0;F=N+76|0;y=N+72|0;p=N+68|0;q=N+64|0;w=N+60|0;n=N+56|0;m=N+52|0;k=N+48|0;l=N+44|0;G=N+40|0;K=N+217|0;A=N+36|0;t=N+32|0;x=N+
28|0;D=N+24|0;H=N+20|0;I=N+16|0;z=N+12|0;r=N+8|0;J=N+4|0;M=N;E=N+216|0;c[O>>2]=e;c[g>>2]=f;c[h>>2]=(
c[O>>2]|0)+40+396;c[v>>2]=c[(c[g>>2]|0)+84>>2];c[j>>2]=0;while(1){if((c[j>
;>2]|0)>=6)break;c[F>>2]=11435+((c[j>>2]|0)*13|0);c[y>>2]=(c[F>>2]|0)+12;c[B
x3e;>2]=0;c[C>>2]=0;while(1){if((c[F>>2]|0)>>>0>=(c[y>>2]|0)>>
x3e;0)break;if(!(a[c[F>>2]>>0]|0))break;a[K>>0]=0;c[w>>2]=Dc(c[g>>2]|0,a[c[F
x3e;>2]>>0]|0)|0;do if((c[w>>2]|0?(c[s>>2]=Cb(c[g>>2]|0,c[w>>2]|0,1)|0,(c
[s>>2]|0)==0):0)?(b[(c[v>>2]|0)+108+2>>1]|0)>0:0){c[G>>2]=c[(c[v>>2]|0)+108
+4>>2];c[m>>2]=-1;c[n>>2]=0;c[k>>2]=0;c[l>>2]=0;c[t>>2]=0;c[x>
x3e;2]=-1;c[A>>2]=0;while(1){f=c[m>>2]|0;if((c[A>>2]|0)>=(b[(c[v>>2]|0)+108>
x3e;1]|0))break;c[D>>2]=f;c[x>>2]=b[(c[(c[v>>2]|0)+108+12>>2]|0)+(c[A>>2]<
;<1)>>1];if((c[x>>2]|0)>(c[t>>2]|0)){O=(c[j>>2]|0)==0|(c[j>>2]|0)==2
|(c[j>>2]|0)==3;c[H>>2]=c[t>>2];a:do if(O)while(1){if((c[H>>2]|0)>(c[x>>2
]|0))break a;if(!((c[m>>2]|0)>=0?(c[(c[G>>2]|0)+(c[H>>2]<<3)+4>>2]|0)<
;=(c[n>>2]|0):0)){c[m>>2]=c[H>>2];c[n>>2]=c[(c[G>>2]|0)+(c[H>>2]<
;<3)+4>>2]}c[H>>2]=(c[H>>2]|0)+1}else while(1){if((c[H>>2]|0)>(c[x>>
2]|0))break a;if(!((c[m>>2]|0)>=0?(c[(c[G>>2]|0)+(c[H>>2]<<3)+4>>2]|0)>
;=(c[n>>2]|0):0)){c[m>>2]=c[H>>2];c[n>>2]=c[(c[G>>2]|0)+(c[H>>2]<
;<3)+4>>2]}c[H>>2]=(c[H>>2]|0)+1}while(0);if((c[m>>2]|0)!=(c[D>>2]|0)){c[
k>>2]=c[t>>2];c[l>>2]=c[x>>2]}}c[t>>2]=(c[x>>2]|0)+1;c[A>>
2]=(c[A>>2]|0)+1}if((f|0)>=0){c[I>>2]=c[m>>2];c[z>>2]=c[I>>2];do{if((c[I
x3e;>2]|0)>(c[k>>2]|0))c[I>>2]=(c[I>>2]|0)+-1;else c[I>>2]=c[l>>2];c
[r>>2]=(c[(c[G>>2]|0)+(c[I>>2]<<3)+4>>2]|0)-(c[n>>2]|0);if((c[r>
;>2]|0)<-5|(c[r>>2]|0)>5)break}while((c[I>>2]|0)!=(c[m>>2]|0));do{if((c[z>>
;2]|0)<(c[l>>2]|0))c[z>>2]=(c[z>>2]|0)+1;else c[z>>2]=c[k>>2];c[r>
x3e;2]=(c[(c[G>>2]|0)+(c[z>>2]<<3)+4>>2]|0)-(c[n>>2]|0);if((c[r>>2]|
0)<-5|(c[r>>2]|0)>5)break}while((c[z>>2]|0)!=(c[m>>2]|0));if((a[(c[(c[v>>2]|0)+
108+8>>2]|0)+(c[I>>2]|0)>>0]&3|0)!=1)f=1;else f=(a[(c[(c[v>>2]|0)+108+8>>
2]|0)+(c[z>>2]|0)>>0]&3|0)!=1;a[K>>0]=f&1}f=c[n>>2]|0;if(a[K>>0]|0){
O=c[C>>2]|0;c[C>>2]=O+1;c[L+(O<<2)>>2]=f;break}else{O=c[B>>2]|0;c[B>>
;2]=O+1;c[u+(O<<2)>>2]=f;break}}while(0);c[F>>2]=(c[F>>2]|0)+1}if(!((c[B>>2]|0
)==0&(c[C>>2]|0)==0)){Ql(c[C>>2]|0,L);Ql(c[B>>2]|0,u);c[o>>2]=(c[h>>2]|0)+
220+((c[(c[h>>2]|0)+216>>2]|0)*28|0);c[p>>2]=c[o>>2];c[q>>2]=(c[o>>2
]|0)+12;f=(c[h>>2]|0)+216|0;c[f>>2]=(c[f>>2]|0)+1;f=c[C>>2]|0;do if(c[B>>2]|0){
e=c[u+(((c[B>>2]|0)/2|0)<<2)>>2]|0;if(!f){c[c[q>>2]>>2]=e;c[c[p>>2]
x3e;>2]=e;break}else{c[c[p>>2]>>2]=e;c[c[q>>2]>>2]=c[L+(((c[C>>2]|0)/2|0)
x3c;<2)>>2];break}}else{O=c[L+(((f|0)/2|0)<<2)>>2]|0;c[c[q>>2]>>2]=O;c[c[
p>>2]>>2]=O}while(0);if((c[c[q>>2]>>2]|0)!=(c[c[p>>2]>>2]|0)){c[J>
;>2]=c[c[p>>2]>>2];c[M>>2]=c[c[q>>2]>>2];a[E>>0]=(c[M>>
;2]|0)>(c[J>>2]|0);if((c[j>>2]|0)==0|(c[j>>2]|0)==2)f=1;else f=(c[j>>2]|0)==3;if(f
x26;1^d[E>>0]|0){O=((c[M>>2]|0)+(c[J>>2]|0)|0)/2|0;c[c[p>>2]>>2]=O;c[c[q>
x3e;2]>>2]=O}}c[(c[o>>2]|0)+24>>2]=0;if((c[j>>2]|0)==0|(c[j>>2]|0)==2|(c[j>
;>2]|0)==3){O=(c[o>>2]|0)+24|0;c[O>>2]=c[O>>2]|2}if((c[j>>2]|0)==3){O=(c[o>>
;2]|0)+24|0;c[O>>2]=c[O>>2]|4}}c[j>>2]=(c[j>>2]|0)+1}i=N;return}function Ql(a,b){a=a|0;b
=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[d>>2]=a;c[e>>2]=b;c[f
x3e;>2]=1;while(1){if((c[f>>2]|0)>>>0>=(c[d>>2]|0)>>>0)break;c[g>
;>2]=c[f>>2];while(1){if((c[g>>2]|0)>>>0<=0)break;if((c[(c[e>>2]|0)+(c[g
x3e;>2]<<2)>>2]|0)>(c[(c[e>>2]|0)+((c[g>>2]|0)-1<<2)>>2]|0
))break;c[h>>2]=c[(c[e>>2]|0)+(c[g>>2]<<2)>>2];c[(c[e>>2]|0)+(c[g>
;>2]<<2)>>2]=c[(c[e>>2]|0)+((c[g>>2]|0)-1<<2)>>2];c[(c[e>
x3e;2]|0)+((c[g>>2]|0)-1<<2)>>2]=c[h>>2];c[g>>2]=(c[g>>2]|0)+-1}c[f
x3e;>2]=(c[f>>2]|0)+1}i=j;return}function Rl(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;o=i;i=i
+32|0;e=o+20|0;f=o+16|0;j=o+12|0;m=o+25|0;l=o+24|0;g=o+8|0;k=o+4|0;h=o;c[e>>2]=b;c[f>>2]=d;a[m>>0]=
0;a[l>>0]=1;c[k>>2]=0;c[j>>2]=48;a:while(1){if((c[j>>2]|0)>>>0>57){n
=10;break}c[h>>2]=Dc(c[f>>2]|0,c[j>>2]|0)|0;do if(c[h>>2]|0?(vb(c[f>>2]|0,c[h
x3e;>2]|0,2051,g)|0)==0:0){d=c[g>>2]|0;if(a[m>>0]|0)if((d|0)!=(c[k>>2]|0))break a;else break;
else{c[k>>2]=d;a[m>>0]=1;break}}while(0);c[j>>2]=(c[j>>2]|0)+1}if((n|0)==10){m=a[l>
x3e;0]|0;n=c[e>>2]|0;n=n+32|0;a[n>>0]=m;i=o;return}a[l>>0]=0;m=a[l>>0]|0;n=c[e>>
;2]|0;n=n+32|0;a[n>>0]=m;i=o;return}function Sl(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)+4+20>>2]=c[(c[e>>2]|0)+20>>2];c[(c[f>>
2]|0)+4>>2]=c[c[e>>2]>>2];Tl(c[f>>2]|0,c[e>>2]|0,0);Tl(c[f>>2]|0,c[e
>>2]|0,1);i=d;return}function Tl(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;x=i;i=i+64|0;m=x+60|0;f=x+56|0;n=x+52|0;w=x+48|0;r=x+44|0;p=x+40|0;v=x+36|0;g=x+32|0;h=x+28|0;k=x+24|0;j=x+20|0;
o=x+16|0;q=x+12|0;u=x+8|0;s=x+4|0;t=x;c[m>>2]=b;c[f>>2]=d;c[n>>2]=e;e=c[f>>2]|0;if(!(c[n
>>2]|0)){c[w>>2]=c[e+4>>2];c[r>>2]=c[(c[f>>2]|0)+12>>2]}else{c[w>
;>2]=c[e+8>>2];c[r>>2]=c[(c[f>>2]|0)+16>>2]}c[p>>2]=(c[m>>2]|0)+
40+((c[n>>2]|0)*396|0);if((c[(c[p>>2]|0)+388>>2]|0)==(c[w>>2]|0)?(c[(c[p>>2]|0
)+392>>2]|0)==(c[r>>2]|0):0){i=x;return}c[(c[p>>2]|0)+388>>2]=c[w>>2];c[(c[p
x3e;>2]|0)+392>>2]=c[r>>2];c[g>>2]=(c[m>>2]|0)+40+396;c[h>>2]=0;c[v>
x3e;2]=0;while(1){if((c[v>>2]|0)>>>0>=(c[(c[g>>2]|0)+216>>2]|0)>>>
;0)break;e=c[v>>2]|0;if(c[(c[g>>2]|0)+220+((c[v>>2]|0)*28|0)+24>>2]&4|0){l=9;break}
c[v>>2]=e+1}if((l|0)==9)c[h>>2]=(c[g>>2]|0)+220+(e*28|0);if(c[h>>2]|0?(c[k>>2]=
Mb(c[(c[h>>2]|0)+12>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0,c[j>>2]=(c[k>>2]|
0)+40&-64,(c[n>>2]|0)==1?(c[k>>2]|0)!=(c[j>>2]|0):0):0)c[w>>2]=xb(c[w>>2]|
0,c[j>>2]|0,c[k>>2]|0)|0;c[c[p>>2]>>2]=c[w>>2];c[(c[p>>2]|0)+4>
x3e;2]=c[r>>2];e=c[w>>2]|0;b=(c[m>>2]|0)+4|0;if(!(c[n>>2]|0)){c[b+4>>2]=e;c[(c
[m>>2]|0)+4+12>>2]=c[r>>2]}else{c[b+8>>2]=e;c[(c[m>>2]|0)+4+16>>2]=c
[r>>2]}c[v>>2]=0;while(1){e=c[p>>2]|0;if((c[v>>2]|0)>>>0>=(c[(c[p>
;>2]|0)+8>>2]|0)>>>0)break;c[o>>2]=e+12+((c[v>>2]|0)*12|0);m=Mb(c[c[o>>
;2]>>2]|0,c[w>>2]|0)|0;c[(c[o>>2]|0)+4>>2]=m;c[(c[o>>2]|0)+8>>2]=c[(
c[o>>2]|0)+4>>2];c[v>>2]=(c[v>>2]|0)+1}o=(Mb(c[e+208>>2]|0,c[w>>2]|0
)|0)<40&255;a[(c[p>>2]|0)+212>>0]=o;if((c[n>>2]|0)!=1){i=x;return}c[v>>2]=0;while
(1){if((c[v>>2]|0)>>>0>=(c[(c[p>>2]|0)+216>>2]|0)>>>0)break;c[q
>>2]=(c[p>>2]|0)+220+((c[v>>2]|0)*28|0);o=Mb(c[c[q>>2]>>2]|0,c[w>>2]|
0)|0;c[(c[q>>2]|0)+4>>2]=o+(c[r>>2]|0);c[(c[q>>2]|0)+8>>2]=c[(c[q>>2
]|0)+4>>2];o=Mb(c[(c[q>>2]|0)+12>>2]|0,c[w>>2]|0)|0;c[(c[q>>2]|0)+12+4>
x3e;2]=o+(c[r>>2]|0);c[(c[q>>2]|0)+12+8>>2]=c[(c[q>>2]|0)+12+4>>2];o=(c[q>
;>2]|0)+24|0;c[o>>2]=c[o>>2]&-2;c[u>>2]=Mb((c[c[q>>2]>>2]|0)-(c[(c[q
>>2]|0)+12>>2]|0)|0,c[w>>2]|0)|0;if((c[u>>2]|0)<=48&(c[u>>2]|0)>
;=-48){c[s>>2]=(c[(c[q>>2]|0)+12>>2]|0)-(c[c[q>>2]>>2]|0);c[t>>2]=c[
s>>2];if((c[s>>2]|0)<0)c[t>>2]=0-(c[t>>2]|0);c[t>>2]=Mb(c[t>>2]|
0,c[w>>2]|0)|0;do if((c[t>>2]|0)>=32){e=c[t>>2]|0;if((c[t>>2]|0)<64){c[t>
x3e;2]=32+(e-32+16&-32);break}else{c[t>>2]=e+32&-64;break}}else c[t>>2]=0;while(0);if((c[s>
x3e;2]|0)<0)c[t>>2]=0-(c[t>>2]|0);c[(c[q>>2]|0)+8>>2]=(c[(c[q>>2]|0)+4>
;>2]|0)+32&-64;c[(c[q>>2]|0)+12+8>>2]=(c[(c[q>>2]|0)+8>>2]|0)+(c[t>>
2]|0);o=(c[q>>2]|0)+24|0;c[o>>2]=c[o>>2]|1}c[v>>2]=(c[v>>2]|0)+1}i=x;return}function
Ul(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;d=j+20|0;k=j+16|0;f=j+12|0;h=j+8|0;g=j+4|0;e=j;c[d>>
2]=a;c[k>>2]=b;c[e>>2]=c[(c[k>>2]|0)+4>>2];Dl(c[d>>2]|0,c[k>>2]|0);c
[(c[d>>2]|0)+4>>2]=c[(c[k>>2]|0)+40>>2];c[(c[d>>2]|0)+8>>2]=c[(c[k
x3e;>2]|0)+40+4>>2];c[(c[d>>2]|0)+12>>2]=c[(c[k>>2]|0)+40+396>>2];c[(c[d
x3e;>2]|0)+16>>2]=c[(c[k>>2]|0)+40+396+4>>2];c[f>>2]=c[(c[k>>2]|0)+4+20
x3e;>2];c[h>>2]=c[(c[d>>2]|0)+104>>2];c[g>>2]=0;if((c[f>>2]|0)==2|(c[f>
;>2]|0)==3)c[g>>2]=c[g>>2]|1;if((c[f>>2]|0)==2|(c[f>>2]|0)==4)c[g>>2]=c[g
>>2]|2;if((c[f>>2]|0)!=1)c[g>>2]=c[g>>2]|4;if((c[f>>2]|0)==2)c[g>>2]=
c[g>>2]|8;if((c[f>>2]|0)!=1?(c[(c[e>>2]|0)+12>>2]&1|0)==0:0){k=c[h>>2]|0;
h=c[d>>2]|0;h=h+104|0;c[h>>2]=k;h=c[g>>2]|0;k=c[d>>2]|0;k=k+108|0;c[k>>2]=h;i=
j;return 0}c[h>>2]=c[h>>2]|1;k=c[h>>2]|0;h=c[d>>2]|0;h=h+104|0;c[h>>2]=k;h=c[g
>>2]|0;k=c[d>>2]|0;k=k+108|0;c[k>>2]=h;i=j;return 0}function Vl(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;f=k+16|0;g=k+12|0;e=k+8|0;j=k+4|0;h=k;c[f>>2]=a;c[g>>2]=b;c[e>>2]=
d;c[j>>2]=Il(c[f>>2]|0,c[g>>2]|0)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}if
((c[(c[f>>2]|0)+104>>2]&1|0)==0?(c[j>>2]=Wl(c[f>>2]|0,0)|0,c[j>>2]|0):0){
j=c[j>>2]|0;i=k;return j|0}do if(!(c[(c[f>>2]|0)+104>>2]&2)){c[j>>2]=Wl(c[f>
x3e;2]|0,1)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}else{Zl(c[f>>2]|0,c[e>>2]|0);break
}}while(0);c[h>>2]=0;while(1){if((c[h>>2]|0)>=2)break;if((c[h>>2]|0)==0?!(c[(c[f>>2
]|0)+104>>2]&1|0):0)e=13;else e=11;if(((e|0)==11?(e=0,(c[h>>2]|0)==1):0)?(c[(c[f>>2]|0)+104
x3e;>2]&2|0)==0:0)e=13;if((e|0)==13){_l(c[f>>2]|0,c[h>>2]|0);dm(c[f>>2]|0,c[h>>
;2]|0);em(c[f>>2]|0,c[h>>2]|0);fm(c[f>>2]|0,c[h>>2]|0)}c[h>>2]=(c[h>>
;2]|0)+1}im(c[f>>2]|0,c[g>>2]|0);j=c[j>>2]|0;i=k;return j|0}function Wl(a,b){a=a|0;b=b|0;var d=0,e
=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Kl(c[d>>2]|0,c[e
>>2]|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}Ml(c[d>>2]|0,c[e>>2]|0);c[f
>>2]=Xl(c[d>>2]|0,c[e>>2]|0)|0;a=c[f>>2]|0;i=g;return a|0}function Xl(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
;M=i;i=i+128|0;g=M+112|0;h=M+108|0;l=M+104|0;D=M+100|0;t=M+96|0;j=M+92|0;k=M+88|0;w=M+84|0;H=M+80|0;K=M+76|0;u=M+72|0;p=M+68|0;v
=M+64|0;s=M+60|0;r=M+56|0;n=M+52|0;m=M+48|0;o=M+44|0;q=M+40|0;C=M+36|0;z=M+32|0;E=M+28|0;G=M+24|0;L=M+20|0;y=M+16|0;F=M+116|0;A=
M+12|0;I=M+8|0;B=M+4|0;J=M;c[g>>2]=e;c[h>>2]=f;c[l>>2]=(c[g>>2]|0)+48+((c[h>>2
]|0)*28|0);c[D>>2]=0;c[t>>2]=c[c[g>>2]>>2];c[j>>2]=(c[(c[g>>2]|0)+112
>>2]|0)+40+((c[h>>2]|0)*396|0);c[k>>2]=c[(c[l>>2]|0)+8>>2];c[w>>2]=(
c[k>>2]|0)+((c[c[l>>2]>>2]|0)*52|0);c[(c[l>>2]|0)+12>>2]=0;f=c[g>>2]|
0;if(!(c[h>>2]|0))f=c[f+4>>2]|0;else f=c[f+12>>2]|0;c[u>>2]=f;c[K>>2]=(c[h>
;>2]|0)==0?2:1;if(!(c[h>>2]|0))c[v>>2]=Vb(64,c[(c[g>>2]|0)+12>>2]|0)|0;else c[v>
;>2]=0;j=Mb(c[(c[j>>2]|0)+204>>2]|0,c[u>>2]|0)|0;c[p>>2]=j;c[p>>2]=(c[p
x3e;>2]|0)>16?16:j;c[p>>2]=Vb(c[p>>2]|0,c[u>>2]|0)|0;c[H>>2]=c[k>>2];
a:while(1){if((c[H>>2]|0)>>>0>=(c[w>>2]|0)>>>0)break;c[s>>2]=0;
do if((b[(c[H>>2]|0)+8>>1]|0)>=(c[v>>2]|0)){if(c[(c[H>>2]|0)+24>>2]|0?(b[(
c[H>>2]|0)+8>>1]<<1|0)<((c[v>>2]|0)*3|0):0)break;c[r>>2]=0;while(1){if((c
[r>>2]|0)>=(c[(c[l>>2]|0)+12>>2]|0))break;c[n>>2]=(c[(c[l>>2]|0)+20>
x3e;2]|0)+((c[r>>2]|0)*48|0);c[m>>2]=(b[(c[H>>2]|0)+2>>1]|0)-(b[c[n>>2]>
x3e;1]|0);if((c[m>>2]|0)<0)c[m>>2]=0-(c[m>>2]|0);if((c[m>>2]|0)<(c[p>>
;2]|0)?(a[(c[n>>2]|0)+13>>0]|0)==(a[(c[H>>2]|0)+1>>0]|0):0){x=18;break}c[r>>2]=(
c[r>>2]|0)+1}if((x|0)==18){x=0;c[s>>2]=c[n>>2]}if(c[s>>2]|0){c[(c[H>>2]|0)+16
x3e;>2]=c[(c[s>>2]|0)+40>>2];c[(c[(c[s>>2]|0)+44>>2]|0)+16>>2]=c[H>
x3e;2];c[(c[s>>2]|0)+44>>2]=c[H>>2];break}c[D>>2]=Yl(c[l>>2]|0,b[(c[H>>
;2]|0)+2>>1]|0,a[(c[H>>2]|0)+1>>0]|0,c[t>>2]|0,o)|0;if(c[D>>2]|0){x=66;break a
}f=c[o>>2]|0;e=f+48|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(e|0));c[(c[o>>2]|0)+40>>2]=
c[H>>2];c[(c[o>>2]|0)+44>>2]=c[H>>2];b[c[o>>2]>>1]=b[(c[H>>
;2]|0)+2>>1]|0;a[(c[o>>2]|0)+13>>0]=a[(c[H>>2]|0)+1>>0]|0;k=Mb(b[(c[H>>
;2]|0)+2>>1]|0,c[u>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=k;c[(c[o>>2]|0)+4>>2
]=k;c[(c[H>>2]|0)+16>>2]=c[H>>2]}while(0);c[H>>2]=(c[H>>2]|0)+52}if((x|0)==66){
L=c[D>>2]|0;i=M;return L|0}c[q>>2]=c[(c[l>>2]|0)+20>>2];c[C>>2]=(c[q>>
;2]|0)+((c[(c[l>>2]|0)+12>>2]|0)*48|0);c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)
x3e;>>0>=(c[C>>2]|0)>>>0)break;c[H>>2]=c[(c[z>>2]|0)+40>>2
];if(c[H>>2]|0)do{c[(c[H>>2]|0)+12>>2]=c[z>>2];c[H>>2]=c[(c[H>>2]|0)+
16>>2]}while((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));c[z>>2]=(c[z>>2]|
0)+48}c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)>>>0>=(c[C>>2]|0)>
x3e;>0)break;c[E>>2]=0;c[G>>2]=0;c[L>>2]=0;c[y>>2]=0;c[H>>2]=c[(c[z>
x3e;2]|0)+40>>2];do{if(d[c[H>>2]>>0]&1|0)c[E>>2]=(c[E>>2]|0)+1;else c[G
x3e;>2]=(c[G>>2]|0)+1;f=(b[(c[H>>2]|0)+6>>1]|0)-(b[(c[H>>2]|0)+4>>1]|0)|0
;if((a[(c[H>>2]|0)+1>>0]|0)==(c[K>>2]|0))c[L>>2]=(c[L>>2]|0)+f;else c[y>
x3e;2]=(c[y>>2]|0)+f;if(c[(c[H>>2]|0)+24>>2]|0?c[(c[(c[H>>2]|0)+24>>2]|0)+12
x3e;>2]|0:0)f=(c[(c[(c[H>>2]|0)+24>>2]|0)+12>>2]|0)!=(c[z>>2]|0);else f=0;a[F>
x3e;0]=f&1;if(c[(c[H>>2]|0)+20>>2]|0?c[(c[(c[H>>2]|0)+20>>2]|0)+12>>2]|0:
0)x=45;else x=44;if((x|0)==44?(x=0,d[F>>0]|0):0)x=45;do if((x|0)==45){c[A>>2]=c[(c[z>>2]|0)+24>
;>2];c[I>>2]=c[(c[H>>2]|0)+20>>2];if(a[F>>0]|0){c[I>>2]=c[(c[H>>
;2]|0)+24>>2];c[A>>2]=c[(c[z>>2]|0)+28>>2]}if(c[A>>2]|0){c[B>>2]=(b[
c[z>>2]>>1]|0)-(b[c[A>>2]>>1]|0);if((c[B>>2]|0)<0)c[B>>2]=0-(c[
B>>2]|0);c[J>>2]=(b[(c[H>>2]|0)+2>>1]|0)-(b[(c[I>>2]|0)+2>>1]|0);if((
c[J>>2]|0)<0)c[J>>2]=0-(c[J>>2]|0);if((c[J>>2]|0)<(c[B>>2]|0))c[A>
;>2]=c[(c[I>>2]|0)+12>>2]}else c[A>>2]=c[(c[I>>2]|0)+12>>2];f=c[A>
x3e;2]|0;e=c[z>>2]|0;if(a[F>>0]|0){c[e+28>>2]=f;x=(c[A>>2]|0)+12|0;a[x>>0]=d[x
>>0]|2;break}else{c[e+24>>2]=f;break}}while(0);c[H>>2]=c[(c[H>>2]|0)+16>>2]}while
((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));a[(c[z>>2]|0)+12>>0]=0;if((c[E>
x3e;2]|0)>0?(c[E>>2]|0)>=(c[G>>2]|0):0){x=(c[z>>2]|0)+12|0;a[x>>0]=d[x>
x3e;0]|1}if(c[(c[z>>2]|0)+28>>2]|0?c[(c[z>>2]|0)+24>>2]|0:0)c[(c[z>>2]|0)+28
x3e;>2]=0;c[z>>2]=(c[z>>2]|0)+48}L=c[D>>2]|0;i=M;return L|0}function Yl(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,t=0,u=0;u=i;i=i+48|0;n=u+40|0;o=u+36|0;p=u+32|0;j=u+28|0;q=u+24|
0;t=u+20|0;r=u+16|0;s=u+12|0;m=u+8|0;l=u+4|0;k=u;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[j>>2]=g
;c[q>>2]=h;c[t>>2]=0;c[r>>2]=0;do if((c[(c[n>>2]|0)+12>>2]|0)>=(c[(c[n>
;>2]|0)+16>>2]|0)){c[m>>2]=c[(c[n>>2]|0)+16>>2];c[l>>2]=c[m>>2];
c[k>>2]=44739242;if((c[m>>2]|0)>=(c[k>>2]|0)){c[t>>2]=64;r=c[r>>2]|0;s=c[
q>>2]|0;c[s>>2]=r;t=c[t>>2]|0;i=u;return t|0}c[l>>2]=(c[l>>2]|0)+((c[l>
x3e;2]>>2)+4);if(!((c[l>>2]|0)>=(c[m>>2]|0)?(c[l>>2]|0)<=(c[k>>2]|0):
0))c[l>>2]=c[k>>2];m=hc(c[j>>2]|0,48,c[m>>2]|0,c[l>>2]|0,c[(c[n>>2]|
0)+20>>2]|0,t)|0;c[(c[n>>2]|0)+20>>2]=m;if(c[t>>2]|0){r=c[r>>2]|0;s=c[q>
x3e;2]|0;c[s>>2]=r;t=c[t>>2]|0;i=u;return t|0}else{c[(c[n>>2]|0)+16>>2]=c[l>>2
];break}}while(0);c[s>>2]=c[(c[n>>2]|0)+20>>2];c[r>>2]=(c[s>>2]|0)+((c[(c[n>
;>2]|0)+12>>2]|0)*48|0);while(1){if((c[r>>2]|0)>>>0<=(c[s>>2]|0)>>
;>0)break;if((b[(c[r>>2]|0)+-48>>1]|0)<(c[o>>2]|0))break;if((b[(c[r>>2]|0)+-48
>>1]|0)==(c[o>>2]|0)?(c[p>>2]|0)==(c[(c[n>>2]|0)+24>>2]|0):0)break;j=c[r>
x3e;2]|0;h=(c[r>>2]|0)+-48|0;d=j+48|0;do{c[j>>2]=c[h>>2];j=j+4|0;h=h+4|0}while((j|0)<(d|0));c
[r>>2]=(c[r>>2]|0)+-48}j=(c[n>>2]|0)+12|0;c[j>>2]=(c[j>>2]|0)+1;j=c[r>>
;2]|0;d=j+48|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(d|0));b[c[r>>2]>>1]=c[o>>2];a[(c[r
>>2]|0)+13>>0]=c[p>>2];r=c[r>>2]|0;s=c[q>>2]|0;c[s>>2]=r;t=c[t>
x3e;2]|0;i=u;return t|0}function Zl(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;v=i;i=i
+64|0;w=v+44|0;g=v+40|0;h=v+36|0;o=v+32|0;p=v+28|0;t=v+24|0;u=v+20|0;j=v+16|0;k=v+12|0;l=v+8|0;m=v+4|0;r=v+50|0;q=v+49|0;n=v;s=v
+48|0;c[w>>2]=e;c[g>>2]=f;c[h>>2]=(c[w>>2]|0)+48+28;c[o>>2]=c[(c[h>>
2]|0)+20>>2];c[p>>2]=(c[o>>2]|0)+((c[(c[h>>2]|0)+12>>2]|0)*48|0);c[t>>
;2]=(c[g>>2]|0)+40+396;c[u>>2]=c[c[t>>2]>>2];while(1){if((c[o>>2]|0)>>
;>0>=(c[p>>2]|0)>>>0)break;c[k>>2]=0;w=Mb(((c[(c[g>>2]|0)+36>>2
]|0)>>>0)/40|0,c[u>>2]|0)|0;c[l>>2]=w;c[l>>2]=(c[l>>2]|0)>32?32:w;c[
j>>2]=0;while(1){if((c[j>>2]|0)>=6)break;c[m>>2]=(c[t>>2]|0)+220+((c[j>>2
]|0)*28|0);if(c[(c[m>>2]|0)+24>>2]&1|0?(a[r>>0]=(c[(c[m>>2]|0)+24>>2]&
;2|0)!=0,a[q>>0]=(a[(c[o>>2]|0)+13>>0]|0)==(c[(c[h>>2]|0)+24>>2]|0),d[r>
x3e;0]^d[q>>0]|0):0){c[n>>2]=(b[c[o>>2]>>1]|0)-(c[c[m>>2]>>2]|0);if((
c[n>>2]|0)<0)c[n>>2]=0-(c[n>>2]|0);c[n>>2]=Mb(c[n>>2]|0,c[u>>2]|
0)|0;if((c[n>>2]|0)<(c[l>>2]|0)){c[l>>2]=c[n>>2];c[k>>2]=c[m>>2
]}if((c[n>>2]|0?(d[(c[o>>2]|0)+12>>0]&1|0)!=0:0)?(a[s>>0]=(b[c[o>>2]>
;>1]|0)<(c[c[m>>2]>>2]|0),d[r>>0]^d[s>>0]|0):0){c[m>>2]=(c[t>
x3e;2]|0)+220+((c[j>>2]|0)*28|0);c[n>>2]=(b[c[o>>2]>>1]|0)-(c[(c[m>>2]|0)+12
x3e;>2]|0);if((c[n>>2]|0)<0)c[n>>2]=0-(c[n>>2]|0);c[n>>2]=Mb(c[n>>2]|
0,c[u>>2]|0)|0;if((c[n>>2]|0)<(c[l>>2]|0)){c[l>>2]=c[n>>2];c[k>>
;2]=(c[m>>2]|0)+12}}}c[j>>2]=(c[j>>2]|0)+1}if(c[k>>2]|0)c[(c[o>>2]|0)+20>
x3e;2]=c[k>>2];c[o>>2]=(c[o>>2]|0)+48}i=v;return}function _l(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,D=0,E=0,F=0,G=0,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;U=i;i=i+176|0;M=U+160|0;j=U+156|0;V=U+152|0;T=U+148|0;S=U+144|0;K=U+140|0;R=U+136|0;O=U+132|0;J=U+128|0;
f=U+124|0;g=U+120|0;h=U+116|0;t=U+112|0;y=U+108|0;w=U+104|0;k=U+100|0;m=U+96|0;u=U+92|0;v=U+88|0;B=U+84|0;p=U+80|0;A=U+76|0;z=U+
72|0;x=U+68|0;l=U+64|0;n=U+60|0;o=U+56|0;r=U+52|0;s=U+48|0;C=U+44|0;q=U+40|0;G=U+36|0;H=U+32|0;I=U+28|0;E=U+24|0;F=U+20|0;L=U+16
|0;D=U+12|0;Q=U+8|0;P=U+4|0;N=U;c[M>>2]=b;c[j>>2]=e;c[V>>2]=(c[M>>2]|0)+48+((c[j>
x3e;2]|0)*28|0);c[T>>2]=c[(c[V>>2]|0)+20>>2];c[S>>2]=(c[T>>2]|0)+((c[(c[V>
;>2]|0)+12>>2]|0)*48|0);c[O>>2]=0;c[J>>2]=0;a:do if((c[j>>2]|0)==1){c[R>>
2]=c[T>>2];while(1){if((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break a
;if(!((d[(c[R>>2]|0)+12>>0]|0)&4)){c[f>>2]=c[(c[R>>2]|0)+20>>2];c[g>
x3e;2]=0;c[h>>2]=c[(c[R>>2]|0)+24>>2];if(!(c[f>>2]|0)){if(c[h>>2]|0?c[(c[h>
;>2]|0)+20>>2]|0:0){c[f>>2]=c[(c[h>>2]|0)+20>>2];c[g>>2]=c[h>>2
];c[h>>2]=c[R>>2]}}else c[g>>2]=c[R>>2];if(c[g>>2]|0){c[(c[g>>2]|0)+
8>>2]=c[(c[f>>2]|0)+8>>2];V=(c[g>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if(
c[h>>2]|0?(c[(c[h>>2]|0)+20>>2]|0)==0:0){$l(c[M>>2]|0,c[j>>2]|0,c[g>>
;2]|0,c[h>>2]|0);V=(c[h>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4}if(!(c[O>>2]|0))c[O>
;>2]=c[R>>2]}}c[R>>2]=(c[R>>2]|0)+48}}while(0);c[R>>2]=c[T>>2];while(1){if
((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;do if(!((d[(c[R>>2]|0)+
12>>0]|0)&4)){c[t>>2]=c[(c[R>>2]|0)+24>>2];if(!(c[t>>2]|0)){c[J>>
;2]=(c[J>>2]|0)+1;break}if(c[(c[t>>2]|0)+20>>2]|0){$l(c[M>>2]|0,c[j>>2]|0,c[t
x3e;>2]|0,c[R>>2]|0);V=(c[R>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;break}if(!(c[O>>
;2]|0)){c[y>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0);c[k>>
;2]=am(c[M>>2]|0,c[j>>2]|0,c[y>>2]|0,d[(c[R>>2]|0)+12>>0]|0,d[(c[t>>
2]|0)+12>>0]|0)|0;if((c[k>>2]|0)<=64){c[p>>2]=32;c[B>>2]=32}else{c[B>>2]=
38;c[p>>2]=26}f=c[(c[R>>2]|0)+4>>2]|0;if((c[k>>2]|0)<96){c[w>>2]=f+(c[y
x3e;>2]>>1);c[m>>2]=(c[w>>2]|0)+32&-64;c[u>>2]=(c[w>>2]|0)-((c[m>
;>2]|0)-(c[B>>2]|0));if((c[u>>2]|0)<0)c[u>>2]=0-(c[u>>2]|0);c[v>>2]=(
c[w>>2]|0)-((c[m>>2]|0)+(c[p>>2]|0));if((c[v>>2]|0)<0)c[v>>2]=0-(c[v>
;>2]|0);if((c[u>>2]|0)<(c[v>>2]|0))c[m>>2]=(c[m>>2]|0)-(c[B>>2]|0);else
c[m>>2]=(c[m>>2]|0)+(c[p>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[m>>2]|0)-((c
[k>>2]|0)/2|0);c[(c[t>>2]|0)+8>>2]=(c[(c[R>>2]|0)+8>>2]|0)+(c[k>>2]|
0)}else c[(c[R>>2]|0)+8>>2]=f+32&-64;c[O>>2]=c[R>>2];V=(c[R>>2]|0)+12|0;a
[V>>0]=d[V>>0]|0|4;$l(c[M>>2]|0,c[j>>2]|0,c[R>>2]|0,c[t>>2]|0);break
}c[A>>2]=(c[(c[O>>2]|0)+8>>2]|0)+((c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2
]|0)+4>>2]|0));c[z>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|
0);c[x>>2]=(c[A>>2]|0)+(c[z>>2]>>1);c[l>>2]=am(c[M>>2]|0,c[j>
x3e;2]|0,c[z>>2]|0,d[(c[R>>2]|0)+12>>0]|0,d[(c[t>>2]|0)+12>>0]|0)|0;do if((d[(
c[t>>2]|0)+12>>0]|0)&4|0)c[(c[R>>2]|0)+8>>2]=(c[(c[t>>2]|0)+8>>
2]|0)-(c[l>>2]|0);else{if((c[l>>2]|0)>=96){c[A>>2]=(c[(c[O>>2]|0)+8>>2]|0
)+((c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2]|0)+4>>2]|0));c[z>>2]=(c[(c[t>>
;2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0);c[x>>2]=(c[A>>2]|0)+(c[z>>2]
x3e;>1);c[l>>2]=am(c[M>>2]|0,c[j>>2]|0,c[z>>2]|0,d[(c[R>>2]|0)+12>
x3e;0]|0,d[(c[t>>2]|0)+12>>0]|0)|0;c[n>>2]=(c[A>>2]|0)+32&-64;c[r>>2]=(c[
n>>2]|0)+(c[l>>2]>>1)-(c[x>>2]|0);if((c[r>>2]|0)<0)c[r>>2]=0-(c
[r>>2]|0);c[o>>2]=((c[A>>2]|0)+(c[z>>2]|0)+32&-64)-(c[l>>2]|0);c[s>
x3e;2]=(c[o>>2]|0)+(c[l>>2]>>1)-(c[x>>2]|0);if((c[s>>2]|0)<0)c[s>>
;2]=0-(c[s>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[r>>2]|0)<(c[s>>2]|0)?c[n>
x3e;2]|0:c[o>>2]|0;c[(c[t>>2]|0)+8>>2]=(c[(c[R>>2]|0)+8>>2]|0)+(c[l>>
;2]|0);break}c[n>>2]=(c[x>>2]|0)+32&-64;if((c[l>>2]|0)<=64){c[q>>2]=32;c[C>
;>2]=32}else{c[C>>2]=38;c[q>>2]=26}c[r>>2]=(c[x>>2]|0)-((c[n>>2]|0)-(c[C
x3e;>2]|0));if((c[r>>2]|0)<0)c[r>>2]=0-(c[r>>2]|0);c[s>>2]=(c[x>>2]|
0)-((c[n>>2]|0)+(c[q>>2]|0));if((c[s>>2]|0)<0)c[s>>2]=0-(c[s>>2]|0);if((c
[r>>2]|0)<(c[s>>2]|0))c[n>>2]=(c[n>>2]|0)-(c[C>>2]|0);else c[n>>
;2]=(c[n>>2]|0)+(c[q>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[n>>2]|0)-((c[l>>2
]|0)/2|0);c[(c[t>>2]|0)+8>>2]=(c[n>>2]|0)+((c[l>>2]|0)/2|0)}while(0);V=(c[R>>2
]|0)+12|0;a[V>>0]=d[V>>0]|0|4;V=(c[t>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if((c[R
x3e;>2]|0)>>>0>(c[T>>2]|0)>>>0?(c[(c[R>>2]|0)+8>>2]|0)<
;(c[(c[R>>2]|0)+-48+8>>2]|0):0)c[(c[R>>2]|0)+8>>2]=c[(c[R>>2]|0)+-48+8>
x3e;2]}while(0);c[R>>2]=(c[R>>2]|0)+48}c[K>>2]=((c[S>>2]|0)-(c[T>>2]|0)|0)/48|
0;if((c[j>>2]|0)==0?(c[K>>2]|0)==6|(c[K>>2]|0)==12:0){f=c[T>>2]|0;if((c[K>>2]|
0)==6){c[G>>2]=f;c[H>>2]=(c[T>>2]|0)+96;c[I>>2]=(c[T>>2]|0)+192}else{c[G>
x3e;2]=f+48;c[H>>2]=(c[T>>2]|0)+240;c[I>>2]=(c[T>>2]|0)+432}c[E>>2]=(c[(c[H>
;>2]|0)+4>>2]|0)-(c[(c[G>>2]|0)+4>>2]|0);c[F>>2]=(c[(c[I>>2]|0)+4>
x3e;2]|0)-(c[(c[H>>2]|0)+4>>2]|0);c[L>>2]=(c[E>>2]|0)-(c[F>>2]|0);if((c[L>
;>2]|0)<0)c[L>>2]=0-(c[L>>2]|0);if((c[L>>2]|0)<8){c[D>>2]=(c[(c[I>
x3e;2]|0)+8>>2]|0)-((c[(c[H>>2]|0)+8>>2]<<1)-(c[(c[G>>2]|0)+8>>2]|0));
V=(c[I>>2]|0)+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0);if(c[(c[I>>2]|0)+24>>
;2]|0){V=(c[(c[I>>2]|0)+24>>2]|0)+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0)}if((c[K
x3e;>2]|0)==12){V=(c[T>>2]|0)+384+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0);V=(c[T>
x3e;2]|0)+528+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0)}V=(c[I>>2]|0)+12|0;a[V>>0]=d
[V>>0]|0|4;if(c[(c[I>>2]|0)+24>>2]|0){V=(c[(c[I>>2]|0)+24>>2]|0)+12|0;a[V>
;>0]=d[V>>0]|0|4}}}if((c[J>>2]|0)==0&(c[O>>2]|0)!=0){i=U;return}c[R>>2]=c[T>
;>2];while(1){if((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;if(!((d[(c[R
>>2]|0)+12>>0]|0)&4)){c[Q>>2]=1e3;if(c[(c[R>>2]|0)+28>>2]|0?(c[Q>>
;2]=(c[(c[(c[R>>2]|0)+28>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0),(c[Q>>
;2]|0)<0):0)c[Q>>2]=0-(c[Q>>2]|0);do if((c[Q>>2]|0)<80)cm(c[M>>2]|0,c[(c[R>
;>2]|0)+28>>2]|0,c[R>>2]|0);else{f=c[R>>2]|0;if(!(c[O>>2]|0)){c[(c[R>>2]|
0)+8>>2]=(c[f+4>>2]|0)+32&-64;c[O>>2]=c[R>>2];break}c[P>>2]=f+-48;while(1
){if((c[P>>2]|0)>>>0<(c[T>>2]|0)>>>0)break;if((d[(c[P>>2]|0)+12
>>0]|0)&4|0)break;c[P>>2]=(c[P>>2]|0)+-48}c[N>>2]=(c[R>>2]|0)+48;while(1){
if((c[N>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;if((d[(c[N>>2]|0)+12
x3e;>0]|0)&4|0)break;c[N>>2]=(c[N>>2]|0)+48}if((((c[P>>2]|0)>>>0>=(c
[T>>2]|0)>>>0?(c[P>>2]|0)>>>0<(c[R>>2]|0)>>>0:0)?(
c[N>>2]|0)>>>0<(c[S>>2]|0)>>>0:0)?(c[N>>2]|0)>>>
0>(c[R>>2]|0)>>>0:0){f=c[(c[P>>2]|0)+8>>2]|0;e=c[R>>2]|0;if((c[(c[N
x3e;>2]|0)+4>>2]|0)==(c[(c[P>>2]|0)+4>>2]|0)){c[e+8>>2]=f;break}else{V=f+(xb((c[e+4
>>2]|0)-(c[(c[P>>2]|0)+4>>2]|0)|0,(c[(c[N>>2]|0)+8>>2]|0)-(c[(c[P>>2
]|0)+8>>2]|0)|0,(c[(c[N>>2]|0)+4>>2]|0)-(c[(c[P>>2]|0)+4>>2]|0)|0)|0)|0;c[(c[R
>>2]|0)+8>>2]=V;break}}c[(c[R>>2]|0)+8>>2]=(c[(c[O>>2]|0)+8>>2]|0)+((
c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2]|0)+4>>2]|0)+16&-32)}while(0);V=(c[R>>2
]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if((c[R>>2]|0)>>>0>(c[T>>2]|0)>
x3e;>0?(c[(c[R>>2]|0)+8>>2]|0)<(c[(c[R>>2]|0)+-48+8>>2]|0):0)c[(c[R>>
;2]|0)+8>>2]=c[(c[R>>2]|0)+-48+8>>2];if((((c[R>>2]|0)+48|0)>>>0<(c[S
>>2]|0)>>>0?(d[(c[R>>2]|0)+48+12>>0]|0)&4|0:0)?(c[(c[R>>2]|0)+8>
;>2]|0)>(c[(c[R>>2]|0)+48+8>>2]|0):0)c[(c[R>>2]|0)+8>>2]=c[(c[R>>2]|
0)+48+8>>2]}c[R>>2]=(c[R>>2]|0)+48}i=U;return}function $l(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;g=i;i=i+32|0;n=g+20|0;m=g+16|0;k=g+12|0;h=g+8|0;l=g+4|0;j=g;c[n>>2]=a;c[m>>2]=b;c[k
>>2]=e;c[h>>2]=f;c[l>>2]=(c[(c[h>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+4>
;>2]|0);c[j>>2]=am(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,d[(c[k>>2]|0)+12>
x3e;0]|0,d[(c[h>>2]|0)+12>>0]|0)|0;c[(c[h>>2]|0)+8>>2]=(c[(c[k>>2]|0)+8>
x3e;2]|0)+(c[j>>2]|0);i=g;return}function am(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;u=i;i=i+64|0;q=u+52|0;j=u+48|0;v=u+44|0;h=u+40|0;o=u+36|0;k=u+32|0;w=u+28|0;p=u+24|0;s=u+20|0;t=
u+16|0;n=u+12|0;r=u+8|0;m=u+4|0;l=u;c[j>>2]=a;c[v>>2]=b;c[h>>2]=e;c[o>>2]=f;c[k>>
;2]=g;c[w>>2]=c[(c[j>>2]|0)+112>>2];c[p>>2]=(c[w>>2]|0)+40+((c[v>>2]|
0)*396|0);c[s>>2]=c[h>>2];c[t>>2]=0;c[n>>2]=(c[v>>2]|0)==1&1;if(c[(c[j>
;>2]|0)+108>>2]&4|0?(d[(c[p>>2]|0)+212>>0]|0|0)==0:0){if((c[s>>2]|0)<0){c
[s>>2]=0-(c[h>>2]|0);c[t>>2]=1}if(c[n>>2]|0?!(c[(c[j>>2]|0)+108>>2]
x26;2|0):0)b=10;else b=8;do if((b|0)==8){if((c[n>>2]|0)==0?(c[(c[j>>2]|0)+108>>2]&1|0)==0:0){
b=10;break}c[m>>2]=c[s>>2];c[s>>2]=bm((c[p>>2]|0)+12|0,c[(c[p>>2]|0)+8>
x3e;2]|0,c[s>>2]|0)|0;if(c[n>>2]|0)if((c[s>>2]|0)>=64){c[s>>2]=(c[s>>2]|0
)+16&-64;break}else{c[s>>2]=64;break}h=c[s>>2]|0;if(c[(c[j>>2]|0)+108>>2]&8|0)
if((h|0)<64){c[s>>2]=64;break}else{c[s>>2]=(c[s>>2]|0)+32&-64;break}f=c[s>>2]|
0;if((h|0)<48){c[s>>2]=f+64>>1;break}h=c[s>>2]|0;if((f|0)>=128){c[s>>2]=h+32
x26;-64;break}c[s>>2]=h+22&-64;c[l>>2]=(c[s>>2]|0)-(c[m>>2]|0);if((c[l>>2
]|0)<0)c[l>>2]=0-(c[l>>2]|0);if((c[l>>2]|0)>=16?(c[s>>2]=c[m>>2],(c[
s>>2]|0)<48):0)c[s>>2]=(c[s>>2]|0)+64>>1}while(0);do if((b|0)==10?!((c[k>>
;2]&2|0)!=0&(c[n>>2]|0)!=0&(c[s>>2]|0)<192):0){h=c[s>>2]|0;if(c[o>>2
]&1|0){if((h|0)<80)c[s>>2]=64}else if((h|0)<56)c[s>>2]=56;if((c[(c[p>>2]|0)+8>
x3e;2]|0)>>>0>0){c[r>>2]=(c[s>>2]|0)-(c[(c[p>>2]|0)+12+4>>2]|0);if((
c[r>>2]|0)<0)c[r>>2]=0-(c[r>>2]|0);if((c[r>>2]|0)<40){w=c[(c[p>>2]|0
)+12+4>>2]|0;c[s>>2]=w;c[s>>2]=(c[s>>2]|0)<48?48:w;break}h=c[s>>2]|0;if((
c[s>>2]|0)>=192){c[s>>2]=h+32&-64;break}c[r>>2]=h&63;c[s>>2]=c[s>>
;2]&-64;h=c[r>>2]|0;if((c[r>>2]|0)<10){c[s>>2]=(c[s>>2]|0)+h;break}if((h|0)<
;32){c[s>>2]=(c[s>>2]|0)+10;break}if((c[r>>2]|0)<54){c[s>>2]=(c[s>>2]|0)+
54;break}else{c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);break}}}while(0);if(c[t>>2]|0)c[s>>
;2]=0-(c[s>>2]|0);c[q>>2]=c[s>>2];w=c[q>>2]|0;i=u;return w|0}c[q>>2]=c[h>
x3e;2];w=c[q>>2]|0;i=u;return w|0}function bm(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;o=i
;i=i+48|0;e=o+32|0;f=o+28|0;m=o+24|0;j=o+20|0;g=o+16|0;n=o+12|0;l=o+8|0;k=o+4|0;h=o;c[e>>2]=a;c[f>>2]=b;c[m
x3e;>2]=d;c[g>>2]=98;c[n>>2]=c[m>>2];c[j>>2]=0;while(1){if((c[j>>2]|0)>
;=(c[f>>2]|0))break;c[k>>2]=c[(c[e>>2]|0)+((c[j>>2]|0)*12|0)+4>>2];c[h>
x3e;2]=(c[m>>2]|0)-(c[k>>2]|0);if((c[h>>2]|0)<0)c[h>>2]=0-(c[h>>2]|0);if((
c[h>>2]|0)<(c[g>>2]|0)){c[g>>2]=c[h>>2];c[n>>2]=c[k>>2]}c[j>
;>2]=(c[j>>2]|0)+1}c[l>>2]=(c[n>>2]|0)+32&-64;f=c[m>>2]|0;e=c[l>>2]|
0;if((c[m>>2]|0)>=(c[n>>2]|0)){if((f|0)>=(e+48|0)){n=c[m>>2]|0;i=o;return n|0}c[m>
x3e;2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}else{if((f|0)<=(e-48|0)){n=c[m>>2]|0;i=o;return n|0
}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}return 0}function cm(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;c[h>>2]=c[h
x3e;>2];c[(c[f>>2]|0)+8>>2]=(c[(c[g>>2]|0)+8>>2]|0)+((c[(c[f>>2]|0)+4>
;>2]|0)-(c[(c[g>>2]|0)+4>>2]|0));i=e;return}function dm(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,q=0,r=0,s=0,t=0,u=0;q=i;i=i+64|0;u=q+52|0;s=q+48|0;t=q+44|0;r=q+40|0;p=q+36|0;o=q+32|0;f=q+28|0;m=q+24|0;h=q+20|0;
k=q+16|0;g=q+12|0;n=q+8|0;j=q+4|0;l=q;c[u>>2]=a;c[s>>2]=d;c[t>>2]=(c[u>>2]|0)+48+((c[s
x3e;>2]|0)*28|0);c[r>>2]=c[(c[t>>2]|0)+8>>2];c[p>>2]=(c[r>>2]|0)+((c[c[t
x3e;>2]>>2]|0)*52|0);a=(c[s>>2]|0)==0;c[o>>2]=c[r>>2];if(a){while(1){if((c[o>
x3e;2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[f>>2]=c[(c[o>>2]|0)+12
x3e;>2];a:do if(c[f>>2]|0){c[h>>2]=c[(c[o>>2]|0)+40>>2];c[k>>2]=c[(c[o>
;>2]|0)+44>>2];c[m>>2]=c[h>>2];while(1){c[(c[m>>2]|0)+16>>2]=c[(c[f>
x3e;2]|0)+8>>2];u=c[m>>2]|0;b[u>>1]=e[u>>1]|0|64;if((c[m>>2]|0)==(c[k>>
;2]|0))break a;c[m>>2]=c[(c[m>>2]|0)+32>>2]}}while(0);c[o>>2]=(c[o>>2]|0)+52}i
=q;return}else{while(1){if((c[o>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[g>
;>2]=c[(c[o>>2]|0)+12>>2];b:do if(c[g>>2]|0){c[j>>2]=c[(c[o>>2]|0)+40>
;>2];c[l>>2]=c[(c[o>>2]|0)+44>>2];c[n>>2]=c[j>>2];while(1){c[(c[n>
x3e;2]|0)+20>>2]=c[(c[g>>2]|0)+8>>2];u=c[n>>2]|0;b[u>>1]=e[u>>1]|0|128
;if((c[n>>2]|0)==(c[l>>2]|0))break b;c[n>>2]=c[(c[n>>2]|0)+32>>2]}}while(0);c[
o>>2]=(c[o>>2]|0)+52}i=q;return}}function em(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,q=
0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;z=i;i=i+96|0;B=z+80|0;g=z+76|0;f=z+72|0;w=z+68|0;A=z+64|0;n=z+60|0;m=z+56|0;x=z+52
|0;v=z+48|0;l=z+44|0;y=z+40|0;u=z+36|0;p=z+32|0;k=z+28|0;s=z+24|0;q=z+20|0;r=z+16|0;o=z+12|0;t=z+8|0;j=z+4|0;h=z;c[B>>
2]=a;c[g>>2]=d;c[f>>2]=c[(c[B>>2]|0)+32>>2];c[w>>2]=(c[f>>2]|0)+((c[(
c[B>>2]|0)+28>>2]|0)*40|0);c[A>>2]=(c[B>>2]|0)+48+((c[g>>2]|0)*28|0);c[n>
x3e;2]=c[(c[A>>2]|0)+20>>2];c[m>>2]=(c[n>>2]|0)+((c[(c[A>>2]|0)+12>>
2]|0)*48|0);if(!(c[g>>2]|0))c[x>>2]=64;else c[x>>2]=128;if((c[n>>2]|0)>>>
0>=(c[m>>2]|0)>>>0){i=z;return}c[v>>2]=c[f>>2];while(1){if((c[v>>2]|
0)>>>0>=(c[w>>2]|0)>>>0)break;do if(!(e[c[v>>2]>>1]&c[x>
;>2])){if(e[c[v>>2]>>1]&256|0?(e[c[v>>2]>>1]&512|0)==0:0)break;d=c[v>
;>2]|0;if((c[g>>2]|0)==1){c[y>>2]=b[d+14>>1];c[u>>2]=c[(c[v>>2]|0)+8>
;>2]}else{c[y>>2]=b[d+12>>1];c[u>>2]=c[(c[v>>2]|0)+4>>2]}c[p>>2
]=c[y>>2];c[l>>2]=c[n>>2];c[k>>2]=(b[c[l>>2]>>1]|0)-(c[y>>
2]|0);a:do if((c[k>>2]|0)>=0)c[y>>2]=(c[(c[l>>2]|0)+8>>2]|0)-((c[(c[l>>2]|
0)+4>>2]|0)-(c[u>>2]|0));else{c[l>>2]=(c[m>>2]|0)+-48;c[k>>2]=(c[y>>
2]|0)-(b[c[l>>2]>>1]|0);if((c[k>>2]|0)>=0){c[y>>2]=(c[(c[l>>2]|0)+8>
x3e;2]|0)+((c[u>>2]|0)-(c[(c[l>>2]|0)+4>>2]|0));break}c[s>>2]=0;c[q>>2]=((c[m
x3e;>2]|0)-(c[n>>2]|0)|0)/48|0;b:do if((c[q>>2]|0)<=8){c[t>>2]=0;while(1){if((c[t>
x3e;2]|0)>=(c[q>>2]|0))break;if((b[(c[n>>2]|0)+((c[t>>2]|0)*48|0)>>1]|0)>=(c[y
>>2]|0))break;c[t>>2]=(c[t>>2]|0)+1}d=c[t>>2]|0;if((b[(c[n>>2]|0)+((c[t>
x3e;2]|0)*48|0)>>1]|0)==(c[y>>2]|0)){c[y>>2]=c[(c[n>>2]|0)+(d*48|0)+8>>2];break
a}else{c[s>>2]=d;break}}else{while(1){if((c[s>>2]|0)>=(c[q>>2]|0))break b;c[r>>2]=(
c[q>>2]|0)+(c[s>>2]|0)>>1;c[l>>2]=(c[n>>2]|0)+((c[r>>2]|0)*48|0);c[o
>>2]=b[c[l>>2]>>1];if((c[y>>2]|0)<(c[o>>2]|0)){c[q>>2]=c[r>
;>2];continue}if((c[y>>2]|0)<=(c[o>>2]|0))break;c[s>>2]=(c[r>>2]|0)+1}c[y>
;>2]=c[(c[l>>2]|0)+8>>2];break a}while(0);c[j>>2]=(c[n>>2]|0)+((c[s>>2]|0
)*48|0)+-48;c[h>>2]=(c[n>>2]|0)+((c[s>>2]|0)*48|0);if(!(c[(c[j>>2]|0)+16>>2]|0
)){B=Vb((c[(c[h>>2]|0)+8>>2]|0)-(c[(c[j>>2]|0)+8>>2]|0)|0,(b[c[h>>2]>>
;1]|0)-(b[c[j>>2]>>1]|0)|0)|0;c[(c[j>>2]|0)+16>>2]=B}B=c[(c[j>>2]|0)+8>
x3e;2]|0;c[y>>2]=B+(Mb((c[p>>2]|0)-(b[c[j>>2]>>1]|0)|0,c[(c[j>>2]|0)+16>
x3e;2]|0)|0)}while(0);d=c[y>>2]|0;a=c[v>>2]|0;if(!(c[g>>2]|0))c[a+16>>2]=d;else c[a+20
x3e;>2]=d;B=c[v>>2]|0;b[B>>1]=e[B>>1]|c[x>>2]}while(0);c[v>>2]=(c[v>
x3e;2]|0)+40}i=z;return}function fm(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,s=0;r=i;i=i+48|0;s=
r+44|0;d=r+40|0;o=r+36|0;n=r+32|0;f=r+28|0;g=r+24|0;p=r+20|0;m=r+16|0;h=r+12|0;j=r+8|0;k=r+4|0;l=r;c[s>>2]=a;c[d>
x3e;2]=b;c[o>>2]=c[(c[s>>2]|0)+32>>2];c[n>>2]=(c[o>>2]|0)+((c[(c[s>>
2]|0)+28>>2]|0)*40|0);c[f>>2]=c[(c[s>>2]|0)+44>>2];c[g>>2]=(c[f>>2]|
0)+(c[(c[s>>2]|0)+40>>2]<<2);a:do if(!(c[d>>2]|0)){c[p>>2]=64;c[m>>2
]=c[o>>2];while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a;
c[(c[m>>2]|0)+24>>2]=c[(c[m>>2]|0)+16>>2];c[(c[m>>2]|0)+28>>2]=c[(c[
m>>2]|0)+4>>2];c[m>>2]=(c[m>>2]|0)+40}}else{c[p>>2]=128;c[m>>2]=c[o
x3e;>2];while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a;c[(c[m
x3e;>2]|0)+24>>2]=c[(c[m>>2]|0)+20>>2];c[(c[m>>2]|0)+28>>2]=c[(c[m>
x3e;2]|0)+8>>2];c[m>>2]=(c[m>>2]|0)+40}}while(0);c[m>>2]=c[o>>2];while(1){if((
c[f>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[m>>2]=c[c[f>>
2]>>2];c[h>>2]=c[(c[m>>2]|0)+36>>2];c[j>>2]=c[m>>2];while(1){if((c[m
>>2]|0)>>>0>(c[h>>2]|0)>>>0)break;b=c[m>>2]|0;if((e[c[m>
x3e;2]>>1]|0)&c[p>>2]|0){q=14;break}c[m>>2]=b+40}do if((q|0)==14){q=0;c[k>>2]=b;c[l
>>2]=c[m>>2];b:while(1){if((c[m>>2]|0)>>>0<(c[h>>2]|0)>>
x3e;0)b=((e[(c[m>>2]|0)+40>>1]|0)&c[p>>2]|0)!=0;else b=0;a=c[m>>2]|0;if(b){c[m>
;>2]=a+40;continue}c[l>>2]=a;c[m>>2]=(c[m>>2]|0)+40;while(1){if((c[m>>2]|0)>
x3e;>0>(c[h>>2]|0)>>>0)break b;if((e[c[m>>2]>>1]|0)&c[p>>2
]|0)break;c[m>>2]=(c[m>>2]|0)+40}gm((c[l>>2]|0)+40|0,(c[m>>2]|0)+-40|0,c[l>>2]|
0,c[m>>2]|0)}if((c[l>>2]|0)==(c[k>>2]|0)){hm(c[j>>2]|0,c[h>>2]|0,c[k>>
;2]|0);break}if((c[l>>2]|0)>>>0<(c[h>>2]|0)>>>0)gm((c[l>>2]|0)+
40|0,c[h>>2]|0,c[l>>2]|0,c[k>>2]|0);if((c[k>>2]|0)>>>0>(c[o>>
;2]|0)>>>0)gm(c[j>>2]|0,(c[k>>2]|0)+-40|0,c[l>>2]|0,c[k>>2]|0)}while(0);c
[f>>2]=(c[f>>2]|0)+4}s=(c[d>>2]|0)==0;c[m>>2]=c[o>>2];if(s){while(1){if((c[m
x3e;>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[(c[m>>2]|0)+16>>2]=
c[(c[m>>2]|0)+24>>2];c[m>>2]=(c[m>>2]|0)+40}i=r;return}else{while(1){if((c[m>>
2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[(c[m>>2]|0)+20>>2]=c[(c[m>
;>2]|0)+24>>2];c[m>>2]=(c[m>>2]|0)+40}i=r;return}}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;q=i;i=i+48|0;f=q+36|0;g=q+32|0;h=q+28|0;j=q+24|0;m=q+20|0;n=q+16|0;o=q+12|0;p=
q+8|0;k=q+4|0;l=q;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[o>>2]=c[(c[h>
x3e;2]|0)+28>>2];c[p>>2]=c[(c[j>>2]|0)+28>>2];c[k>>2]=(c[(c[h>>2]|0)+
24>>2]|0)-(c[o>>2]|0);c[l>>2]=(c[(c[j>>2]|0)+24>>2]|0)-(c[p>>2]|0);if
((c[f>>2]|0)>>>0>(c[g>>2]|0)>>>0){i=q;return}if((c[o>>2]|0)==(c
[p>>2]|0)){c[m>>2]=c[f>>2];while(1){if((c[m>>2]|0)>>>0>(c[g>>
;2]|0)>>>0)break;c[n>>2]=c[(c[m>>2]|0)+28>>2];if((c[n>>2]|0)<=(c[o
x3e;>2]|0))c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);else c[n>>2]=(c[n>>2]|0)+(c[l
x3e;>2]|0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>2]|0)+40}i=q;return
}e=(c[o>>2]|0)<(c[p>>2]|0);c[m>>2]=c[f>>2];if(e){while(1){if((c[m>>2]|0)
x3e;>>0>(c[g>>2]|0)>>>0)break;c[n>>2]=c[(c[m>>2]|0)+28>>2];
do if((c[n>>2]|0)>(c[o>>2]|0))if((c[n>>2]|0)>=(c[p>>2]|0)){c[n>>2]=(
c[n>>2]|0)+(c[l>>2]|0);break}else{e=c[(c[h>>2]|0)+24>>2]|0;c[n>>2]=e+(xb((c[n
x3e;>2]|0)-(c[o>>2]|0)|0,(c[(c[j>>2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+24>>2]|0
)|0,(c[p>>2]|0)-(c[o>>2]|0)|0)|0);break}else c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);while
(0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>2]|0)+40}i=q;return}else{while(
1){if((c[m>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[n>>2]=c[(c[m>
;>2]|0)+28>>2];do if((c[n>>2]|0)>(c[p>>2]|0))if((c[n>>2]|0)>=(c[o>
x3e;2]|0)){c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);break}else{e=c[(c[h>>2]|0)+24>>2]|0
;c[n>>2]=e+(xb((c[n>>2]|0)-(c[o>>2]|0)|0,(c[(c[j>>2]|0)+24>>2]|0)-(c[(c[h>
;>2]|0)+24>>2]|0)|0,(c[p>>2]|0)-(c[o>>2]|0)|0)|0);break}else c[n>>2]=(c[n>>
;2]|0)+(c[l>>2]|0);while(0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>
;2]|0)+40}i=q;return}}function hm(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;e=k+16|0;f=k+12|0;g=k+8|0;j=
k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=(c[(c[g>>2]|0)+24>>2
]|0)-(c[(c[g>>2]|0)+28>>2]|0);if(!(c[h>>2]|0)){i=k;return}c[j>>2]=c[e>>2];while
(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[(c[j>>2]|0)+24
x3e;>2]=(c[(c[j>>2]|0)+28>>2]|0)+(c[h>>2]|0);c[j>>2]=(c[j>>2]|0)+40}c[j
x3e;>2]=(c[g>>2]|0)+40;while(1){if((c[j>>2]|0)>>>0>(c[f>>2]|0)>>
;>0)break;c[(c[j>>2]|0)+24>>2]=(c[(c[j>>2]|0)+28>>2]|0)+(c[h>>2]|0);c[j
x3e;>2]=(c[j>>2]|0)+40}i=k;return}function im(b,d){b=b|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;m=k+20
|0;l=k+16|0;g=k+12|0;f=k+8|0;j=k+4|0;h=k;c[m>>2]=b;c[l>>2]=d;c[g>>2]=c[(c[m>>2]|0)+32>
;>2];c[f>>2]=(c[g>>2]|0)+((c[(c[m>>2]|0)+28>>2]|0)*40|0);c[j>>2]=c[(c[l
x3e;>2]|0)+4>>2];c[h>>2]=c[(c[l>>2]|0)+8>>2];while(1){if((c[g>>2]|0)>
;>>0>=(c[f>>2]|0)>>>0)break;c[c[j>>2]>>2]=c[(c[g>>2]|0)+16
>>2];c[(c[j>>2]|0)+4>>2]=c[(c[g>>2]|0)+20>>2];do if(!((e[c[g>>2]>
;>1]|0)&1|0)){b=c[h>>2]|0;if((e[c[g>>2]>>1]|0)&2|0){a[b>>0]=2;break}else{
a[b>>0]=1;break}}else a[c[h>>2]>>0]=0;while(0);c[g>>2]=(c[g>>2]|0)+40;c[j>
;>2]=(c[j>>2]|0)+8;c[h>>2]=(c[h>>2]|0)+1}i=k;return}function jm(a,b){a=a|0;b=b|0;var d=0,f=0,
g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[f>>2]|0)+92>
;>2];c[(c[d>>2]|0)+36>>2]=e[(c[f>>2]|0)+68>>1];if(Id(c[f>>2]|0,1970170211
)|0){c[(c[f>>2]|0)+92>>2]=0;a=c[f>>2]|0;g=c[g>>2]|0;Jd(a,g)|0;i=h;return 0}else{Gl(c[d
x3e;>2]|0,c[f>>2]|0,3e4);Rl(c[d>>2]|0,c[f>>2]|0);a=c[f>>2]|0;g=c[g>>2]|0;
Jd(a,g)|0;i=h;return 0}return 0}function km(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)+4|0;a=c[e>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>
;>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2];c[b+16>>2]=c[a+16>>
;2];c[b+20>>2]=c[a+20>>2];c[b+24>>2]=c[a+24>>2];lm(c[f>>2]|0,c[e>>2]|
0,0);lm(c[f>>2]|0,c[e>>2]|0,1);i=d;return}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;g=i;i
=i+16|0;j=g+12|0;e=g+8|0;h=g+4|0;f=g;c[j>>2]=a;c[e>>2]=b;c[h>>2]=d;c[f>>2]=(c[j>>
;2]|0)+40+((c[h>>2]|0)*396|0);d=c[e>>2]|0;if(!(c[h>>2]|0)){c[c[f>>2]>>2]=c[d+4
>>2];c[(c[f>>2]|0)+4>>2]=c[(c[e>>2]|0)+12>>2];i=g;return}else{c[c[f>>
;2]>>2]=c[d+8>>2];c[(c[f>>2]|0)+4>>2]=c[(c[e>>2]|0)+16>>2];i=g;return
}}function mm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;j=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=
a;c[j>>2]=b;Dl(c[d>>2]|0,c[j>>2]|0);c[(c[d>>2]|0)+4>>2]=c[(c[j>>2]|0
)+40>>2];c[(c[d>>2]|0)+8>>2]=c[(c[j>>2]|0)+40+4>>2];c[(c[d>>2]|0)+12
>>2]=c[(c[j>>2]|0)+40+396>>2];c[(c[d>>2]|0)+16>>2]=c[(c[j>>2]|0)+40+
396+4>>2];c[e>>2]=c[(c[j>>2]|0)+4+20>>2];c[g>>2]=c[(c[d>>2]|0)+104
x3e;>2];c[f>>2]=0;if((c[e>>2]|0)==2|(c[e>>2]|0)==3)c[f>>2]=c[f>>2]|1;if((
c[e>>2]|0)==2|(c[e>>2]|0)==4)c[f>>2]=c[f>>2]|2;if((c[e>>2]|0)!=1)c[f>>
;2]=c[f>>2]|4;if((c[e>>2]|0)!=2){j=c[g>>2]|0;j=j|4;c[g>>2]=j;j=c[g>>2]|0;g=c[d
>>2]|0;g=g+104|0;c[g>>2]=j;g=c[f>>2]|0;j=c[d>>2]|0;j=j+108|0;c[j>>2]=g;i=h;return
0}c[f>>2]=c[f>>2]|8;j=c[g>>2]|0;j=j|4;c[g>>2]=j;j=c[g>>2]|0;g=c[d>>
2]|0;g=g+104|0;c[g>>2]=j;g=c[f>>2]|0;j=c[d>>2]|0;j=j+108|0;c[j>>2]=g;i=h;return 0}function
nm(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+16|0;f=j+12|0;k=j+8|0;h=j+4|0;g=j;c[e>>2]=a;
c[f>>2]=b;c[k>>2]=d;c[k>>2]=c[k>>2];c[h>>2]=Il(c[e>>2]|0,c[f>
x3e;2]|0)|0;if(c[h>>2]|0){k=c[h>>2]|0;i=j;return k|0}if((c[(c[e>>2]|0)+104>>2]&1|0)==
0?(c[h>>2]=om(c[e>>2]|0,0)|0,c[h>>2]|0):0){k=c[h>>2]|0;i=j;return k|0}if((c[(c[e>
x3e;2]|0)+104>>2]&2|0)==0?(c[h>>2]=om(c[e>>2]|0,1)|0,c[h>>2]|0):0){k=c[h>>
;2]|0;i=j;return k|0}c[g>>2]=0;while(1){if((c[g>>2]|0)>=2)break;if((c[g>>2]|0)==0?!(c[(c[e>
;>2]|0)+104>>2]&1|0):0)a=12;else a=10;if(((a|0)==10?(a=0,(c[g>>2]|0)==1):0)?(c[(c[e>>2]|
0)+104>>2]&2|0)==0:0)a=12;if((a|0)==12){sm(c[e>>2]|0,c[g>>2]|0);ym(c[e>>2]|0,c[g>
;>2]|0);em(c[e>>2]|0,c[g>>2]|0);fm(c[e>>2]|0,c[g>>2]|0)}c[g>>2]=(c[g>
;>2]|0)+1}im(c[e>>2]|0,c[f>>2]|0);k=c[h>>2]|0;i=j;return k|0}function om(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=pm(c[d>>2]|
0,c[e>>2]|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}qm(c[d>>2]|0,c[e>>2]|0
);c[f>>2]=rm(c[d>>2]|0,c[e>>2]|0)|0;a=c[f>>2]|0;i=g;return a|0}function pm(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,q=0,r=0,s=0,t=0;q=i;i=i+48|0;g=q+44|0;s=q+40|0;r=q+36|0;t=q+32|0;p=q+28|0;o=q+24|0;h
=q+20|0;n=q+16|0;m=q+12|0;l=q+8|0;j=q+4|0;k=q;c[s>>2]=b;c[r>>2]=f;c[t>>2]=(c[s>>2]|0)+48
+((c[r>>2]|0)*28|0);c[p>>2]=c[(c[t>>2]|0)+8>>2];c[o>>2]=(c[p>>2]|0)+((
c[c[t>>2]>>2]|0)*52|0);c[h>>2]=Kl(c[s>>2]|0,c[r>>2]|0)|0;if(c[h>>2]|
0){c[g>>2]=c[h>>2];t=c[g>>2]|0;i=q;return t|0}c[n>>2]=c[p>>2];while(1){if((c[n
>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[m>>2]=c[(c[n>>2]|
0)+40>>2];c[l>>2]=c[(c[n>>2]|0)+44>>2];c[j>>2]=(e[c[m>>2]>>
;1]|0)&3;t=c[n>>2]|0;a[t>>0]=(d[t>>0]|0)&-2;while(1){if((c[m>>2]|0)==(c[l>
;>2]|0))break;c[m>>2]=c[(c[m>>2]|0)+32>>2];c[k>>2]=(e[c[m>>2]>>
1]|0)&3;if(!((c[j>>2]|0)!=0|(c[k>>2]|0)!=0))break;if((c[m>>2]|0)==(c[l>>2]|0)){t=c[
n>>2]|0;a[t>>0]=d[t>>0]|0|1}c[j>>2]=c[k>>2]}c[n>>2]=(c[n>>
2]|0)+52}c[g>>2]=0;t=c[g>>2]|0;i=q;return t|0}function qm(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;v=i;i=i+80|0;x=v+68|0;w=v+64|0;y=v+60|0;u=v+56|0;t=v+52|0;n=v+48|0;r=v+44|0;s=v+40
|0;j=v+36|0;g=v+32|0;f=v+28|0;p=v+24|0;o=v+20|0;h=v+16|0;l=v+12|0;m=v+8|0;q=v+4|0;k=v;c[x>>2]=d;c[w>>2]=e;c[
y>>2]=(c[x>>2]|0)+48+((c[w>>2]|0)*28|0);c[u>>2]=c[(c[y>>2]|0)+8>>2];
c[t>>2]=(c[u>>2]|0)+((c[c[y>>2]>>2]|0)*52|0);c[n>>2]=c[(c[y>>2]|0)+24
>>2];c[j>>2]=(c[(c[(c[x>>2]|0)+112>>2]|0)+36>>2]<<3|0)/2048|0;e=c[x
x3e;>2]|0;if(!(c[w>>2]|0))e=c[e+4>>2]|0;else e=c[e+12>>2]|0;c[g>>2]=e;c[g>>
;2]=Vb(192,c[g>>2]|0)|0;c[r>>2]=c[u>>2];while(1){if((c[r>>2]|0)>>>0>=(
c[t>>2]|0)>>>0)break;a:do if((c[(c[r>>2]|0)+40>>2]|0)!=(c[(c[r>>2]|0)+44
x3e;>2]|0)?(a[(c[r>>2]|0)+1>>0]|0)==(c[n>>2]|0):0){c[s>>2]=c[u>>2];while(
1){if((c[s>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a;do if(((c[s>>2]|
0)!=(c[r>>2]|0)?((a[(c[r>>2]|0)+1>>0]|0)+(a[(c[s>>2]|0)+1>>0]|0)|0)==0:0)?(c[f
>>2]=(b[(c[s>>2]|0)+2>>1]|0)-(b[(c[r>>2]|0)+2>>1]|0),(c[f>>2]|0)>
;=0):0){c[p>>2]=b[(c[r>>2]|0)+4>>1];c[o>>2]=b[(c[r>>2]|0)+6>>1];if((
c[p>>2]|0)<(b[(c[s>>2]|0)+4>>1]|0))c[p>>2]=b[(c[s>>2]|0)+4>>1];
if((c[o>>2]|0)>(b[(c[s>>2]|0)+6>>1]|0))c[o>>2]=b[(c[s>>2]|0)+6>>
;1];c[h>>2]=(c[o>>2]|0)-(c[p>>2]|0);if((c[h>>2]|0)>=(c[j>>2]|0)){do if((c
[f>>2]<<3|0)<((c[(c[r>>2]|0)+32>>2]|0)*9|0)){if((c[f>>2]<<3|0)
x3e;=((c[(c[r>>2]|0)+32>>2]|0)*7|0)?(c[(c[r>>2]|0)+36>>2]|0)>=(c[h>>2]|0):
0)break;c[(c[r>>2]|0)+32>>2]=c[f>>2];c[(c[r>>2]|0)+36>>2]=c[h>>2];c[(
c[r>>2]|0)+20>>2]=c[s>>2]}while(0);if((c[f>>2]<<3|0)<((c[(c[s>>
2]|0)+32>>2]|0)*9|0)){if((c[f>>2]<<3|0)>=((c[(c[s>>2]|0)+32>>2]|0)*7|0)?(
c[(c[s>>2]|0)+36>>2]|0)>=(c[h>>2]|0):0)break;c[(c[s>>2]|0)+32>>2]=c[f>
;>2];c[(c[s>>2]|0)+36>>2]=c[h>>2];c[(c[s>>2]|0)+20>>2]=c[r>>2]}}}
while(0);c[s>>2]=(c[s>>2]|0)+52}}while(0);c[r>>2]=(c[r>>2]|0)+52}c[r>>2]=c[u
x3e;>2];while(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[l>
x3e;2]=c[(c[r>>2]|0)+20>>2];b:do if(((c[l>>2]|0?(c[(c[l>>2]|0)+20>>2]|0)==(c[r
>>2]|0):0)?(b[(c[l>>2]|0)+2>>1]|0)>(b[(c[r>>2]|0)+2>>1]|0):0)?(c[(c[r>
;>2]|0)+32>>2]|0)<(c[g>>2]|0):0){c[s>>2]=c[u>>2];c:while(1){if((c[s>>
;2]|0)>>>0>=(c[t>>2]|0)>>>0)break b;d:do if(((((b[(c[s>>2]|0)+2>>
;1]|0)<=(b[(c[r>>2]|0)+2>>1]|0)?(c[r>>2]|0)!=(c[s>>2]|0):0)?(c[m>>2]=c[(c
[s>>2]|0)+20>>2],c[m>>2]|0):0)?(c[(c[m>>2]|0)+20>>2]|0)==(c[s>>2]|0):
0)?(b[(c[m>>2]|0)+2>>1]|0)>=(b[(c[l>>2]|0)+2>>1]|0):0){if((b[(c[r>>2]|0)+
2>>1]|0)==(b[(c[s>>2]|0)+2>>1]|0)?(b[(c[l>>2]|0)+2>>1]|0)==(b[(c[m>>
2]|0)+2>>1]|0):0)break;if((c[(c[s>>2]|0)+32>>2]|0)>(c[(c[r>>2]|0)+32>>2]|
0)?(c[(c[r>>2]|0)+32>>2]<<2|0)>(c[(c[s>>2]|0)+32>>2]|0):0){if((c[(c[r>
;>2]|0)+36>>2]|0)<((c[(c[s>>2]|0)+36>>2]|0)*3|0))break c;c[q>>2]=c[u>>
;2];while(1){if((c[q>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break d;c[k>>2
]=c[(c[q>>2]|0)+20>>2];do if((c[k>>2]|0)==(c[s>>2]|0)){c[(c[q>>2]|0)+20>
x3e;2]=0;c[(c[q>>2]|0)+24>>2]=c[l>>2]}else{if((c[k>>2]|0)!=(c[m>>2]|0))break;c
[(c[q>>2]|0)+20>>2]=0;c[(c[q>>2]|0)+24>>2]=c[r>>2]}while(0);c[q>>2]=(
c[q>>2]|0)+52}}}while(0);c[s>>2]=(c[s>>2]|0)+52}c[(c[l>>2]|0)+20>>2]=0;c[(c[r
x3e;>2]|0)+20>>2]=0}while(0);c[r>>2]=(c[r>>2]|0)+52}c[r>>2]=c[u>>2];while
(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[s>>2]=c[(c[r>
;>2]|0)+20>>2];do if(c[s>>2]|0?(y=(c[s>>2]|0)+28|0,c[y>>2]=(c[y>>2]|0)+1,(
c[(c[s>>2]|0)+20>>2]|0)!=(c[r>>2]|0)):0){c[(c[r>>2]|0)+20>>2]=0;if((c[(c[s>
;>2]|0)+32>>2]|0)>=(c[g>>2]|0)?(c[(c[r>>2]|0)+32>>2]|0)>=(c[(c[s>>
;2]|0)+32>>2]<<2|0):0){y=(c[s>>2]|0)+28|0;c[y>>2]=(c[y>>2]|0)+-1;break}c[(c[r
x3e;>2]|0)+24>>2]=c[(c[s>>2]|0)+20>>2]}while(0);c[r>>2]=(c[r>>2]|0)+52}i=
v;return}
function Is(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=a+4|0;o=c[n>>2]|0;d=o&-8;k=a+d
|0;i=c[18404]|0;e=o&3;if(!((e|0)!=1&a>>>0>=i>>>0&a>>>0<k
x3e;>>0))ya();f=c[k+4>>2]|0;if(!(f&1))ya();if(!e){if(b>>>0<256){a=0;return a|0}if(d
>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[18520]<<1>>>0:0
)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a
|0;m=a+b|0;c[n>>2]=o&1|b|2;c[m+4>>2]=d|3;b=m+d+4|0;c[b>>2]=c[b>>2]|1;Js(m,d);return
a|0}if((k|0)==(c[18406]|0)){d=(c[18403]|0)+d|0;if(d>>>0<=b>>>0){a=0;return a|0}m=d-b|0;l=a+b
|0;c[n>>2]=o&1|b|2;c[l+4>>2]=m|1;c[18406]=l;c[18403]=m;return a|0}if((k|0)==(c[18405]|0)){e=(c[18402]|0
)+d|0;if(e>>>0<b>>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){e=a+b|0;m=e+d|0
;c[n>>2]=o&1|b|2;c[e+4>>2]=d|1;c[m>>2]=d;b=m+4|0;c[b>>2]=c[b>>2]&-2}
else{c[n>>2]=o&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[18402]=d;c[18405]=e;return a|0}if(
f&2|0){a=0;return a|0}l=(f&-8)+d|0;if(l>>>0<b>>>0){a=0;return a|0}m=l-b|0;g=f>
x3e;>3;do if(f>>>0>=256){h=c[k+24>>2]|0;f=c[k+12>>2]|0;do if((f|0)==(k|0)){e=k+16|0
;f=e+4|0;d=c[f>>2]|0;if(!d){d=c[e>>2]|0;if(!d){j=0;break}}else e=f;while(1){f=d+20|0;g=c[f>>2]|0;if
(g|0){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0<i>>>
0)ya();else{c[e>>2]=0;j=d;break}}else{g=c[k+8>>2]|0;if(g>>>0<i>>>0)ya();d
=g+12|0;if((c[d>>2]|0)!=(k|0))ya();e=f+8|0;if((c[e>>2]|0)==(k|0)){c[d>>2]=f;c[e>>2]=g;j=
f;break}else ya()}while(0);if(h|0){d=c[k+28>>2]|0;e=73904+(d<<2)|0;if((k|0)==(c[e>>2]|0)){c[e>
;>2]=j;if(!j){c[18401]=c[18401]&~(1<<d);break}}else{if(h>>>0<(c[18404]|0)>>>
;0)ya();d=h+16|0;if((c[d>>2]|0)==(k|0))c[d>>2]=j;else c[h+20>>2]=j;if(!j)break}f=c[18404]|0;if(j
x3e;>>0<f>>>0)ya();c[j+24>>2]=h;d=k+16|0;e=c[d>>2]|0;do if(e|0)if(e>>
;>0<f>>>0)ya();else{c[j+16>>2]=e;c[e+24>>2]=j;break}while(0);d=c[d+4>>2]|
0;if(d|0)if(d>>>0<(c[18404]|0)>>>0)ya();else{c[j+20>>2]=d;c[d+24>>2]=j;break
}}}else{e=c[k+8>>2]|0;f=c[k+12>>2]|0;d=73640+(g<<1<<2)|0;if((e|0)!=(d|0)){if(e>>
;>0<i>>>0)ya();if((c[e+12>>2]|0)!=(k|0))ya()}if((f|0)==(e|0)){c[18400]=c[18400]&~(1<
;<g);break}if((f|0)!=(d|0)){if(f>>>0<i>>>0)ya();d=f+8|0;if((c[d>>2]|0)==(k|0))
h=d;else ya()}else h=f+8|0;c[e+12>>2]=f;c[h>>2]=e}while(0);if(m>>>0<16){c[n>>2
]=l|o&1|2;b=a+l+4|0;c[b>>2]=c[b>>2]|1;return a|0}else{l=a+b|0;c[n>>2]=o&1|b|2;c[l+4>
;>2]=m|3;b=l+m+4|0;c[b>>2]=c[b>>2]|1;Js(l,m);return a|0}return 0}function Js(a,b){a=a|0;b=b|0;var d=0,e
=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;
if(!(d&3))return;l=a+(0-f)|0;k=f+b|0;i=c[18404]|0;if(l>>>0<i>>>0)ya();if((l|0)==(c[18405
]|0)){a=o+4|0;d=c[a>>2]|0;if((d&3|0)!=3){r=l;g=k;break}c[18402]=k;c[a>>2]=d&-2;c[l+4>>2]=
k|1;c[l+k>>2]=k;return}e=f>>>3;if(f>>>0<256){a=c[l+8>>2]|0;b=c[l+12>
x3e;2]|0;d=73640+(e<<1<<2)|0;if((a|0)!=(d|0)){if(a>>>0<i>>>0)ya();if((c[a
+12>>2]|0)!=(l|0))ya()}if((b|0)==(a|0)){c[18400]=c[18400]&~(1<<e);r=l;g=k;break}if((b|0)!=(d|0)){if(b
x3e;>>0<i>>>0)ya();d=b+8|0;if((c[d>>2]|0)==(l|0))h=d;else ya()}else h=b+8|0;c[a+12>
x3e;2]=b;c[h>>2]=a;r=l;g=k;break}f=c[l+24>>2]|0;b=c[l+12>>2]|0;do if((b|0)==(l|0)){a=l+16|0;b=a+4|
0;d=c[b>>2]|0;if(!d){d=c[a>>2]|0;if(!d){j=0;break}}else a=b;while(1){b=d+20|0;e=c[b>>2]|0;if(e|0){
d=e;a=b;continue}b=d+16|0;e=c[b>>2]|0;if(!e)break;else{d=e;a=b}}if(a>>>0<i>>>0)ya();
else{c[a>>2]=0;j=d;break}}else{e=c[l+8>>2]|0;if(e>>>0<i>>>0)ya();d=e+12|0
;if((c[d>>2]|0)!=(l|0))ya();a=b+8|0;if((c[a>>2]|0)==(l|0)){c[d>>2]=b;c[a>>2]=e;j=b;break
}else ya()}while(0);if(f){d=c[l+28>>2]|0;a=73904+(d<<2)|0;if((l|0)==(c[a>>2]|0)){c[a>>2]=
j;if(!j){c[18401]=c[18401]&~(1<<d);r=l;g=k;break}}else{if(f>>>0<(c[18404]|0)>>>
;0)ya();d=f+16|0;if((c[d>>2]|0)==(l|0))c[d>>2]=j;else c[f+20>>2]=j;if(!j){r=l;g=k;break}}b=c[18404
]|0;if(j>>>0<b>>>0)ya();c[j+24>>2]=f;d=l+16|0;a=c[d>>2]|0;do if(a|0)if(a
x3e;>>0<b>>>0)ya();else{c[j+16>>2]=a;c[a+24>>2]=j;break}while(0);d=c[d+4>
x3e;2]|0;if(d)if(d>>>0<(c[18404]|0)>>>0)ya();else{c[j+20>>2]=d;c[d+24>>2]=
j;r=l;g=k;break}else{r=l;g=k}}else{r=l;g=k}}else{r=a;g=b}while(0);h=c[18404]|0;if(o>>>0<h>>>0
)ya();d=o+4|0;a=c[d>>2]|0;if(!(a&2)){if((o|0)==(c[18406]|0)){q=(c[18403]|0)+g|0;c[18403]=q;c[18406]=r;c[r+4>
x3e;2]=q|1;if((r|0)!=(c[18405]|0))return;c[18405]=0;c[18402]=0;return}if((o|0)==(c[18405]|0)){q=(c[18402]|0)+g|0;c[18402]=q;c[18405
]=r;c[r+4>>2]=q|1;c[r+q>>2]=q;return}g=(a&-8)+g|0;e=a>>>3;do if(a>>>0>
;=256){f=c[o+24>>2]|0;b=c[o+12>>2]|0;do if((b|0)==(o|0)){a=o+16|0;b=a+4|0;d=c[b>>2]|0;if(!d){d=c[a
>>2]|0;if(!d){n=0;break}}else a=b;while(1){b=d+20|0;e=c[b>>2]|0;if(e|0){d=e;a=b;continue}b=d+16|0;e=c[b>
;>2]|0;if(!e)break;else{d=e;a=b}}if(a>>>0<h>>>0)ya();else{c[a>>2]=0;n=d;break}}
else{e=c[o+8>>2]|0;if(e>>>0<h>>>0)ya();d=e+12|0;if((c[d>>2]|0)!=(o|0))ya();
a=b+8|0;if((c[a>>2]|0)==(o|0)){c[d>>2]=b;c[a>>2]=e;n=b;break}else ya()}while(0);if(f|0){d=c[o+28
x3e;>2]|0;a=73904+(d<<2)|0;if((o|0)==(c[a>>2]|0)){c[a>>2]=n;if(!n){c[18401]=c[18401]&~(1
<<d);break}}else{if(f>>>0<(c[18404]|0)>>>0)ya();d=f+16|0;if((c[d>>2]|0)==(
o|0))c[d>>2]=n;else c[f+20>>2]=n;if(!n)break}b=c[18404]|0;if(n>>>0<b>>>0)
ya();c[n+24>>2]=f;d=o+16|0;a=c[d>>2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else
{c[n+16>>2]=a;c[a+24>>2]=n;break}while(0);d=c[d+4>>2]|0;if(d|0)if(d>>>0<(c[18404
]|0)>>>0)ya();else{c[n+20>>2]=d;c[d+24>>2]=n;break}}}else{a=c[o+8>>2]|0;b=c[o+12>
;>2]|0;d=73640+(e<<1<<2)|0;if((a|0)!=(d|0)){if(a>>>0<h>>>0)ya();if((
c[a+12>>2]|0)!=(o|0))ya()}if((b|0)==(a|0)){c[18400]=c[18400]&~(1<<e);break}if((b|0)!=(d|0)){if(b>
x3e;>0<h>>>0)ya();d=b+8|0;if((c[d>>2]|0)==(o|0))m=d;else ya()}else m=b+8|0;c[a+12>>
2]=b;c[m>>2]=a}while(0);c[r+4>>2]=g|1;c[r+g>>2]=g;if((r|0)==(c[18405]|0)){c[18402]=g;return}}else{
c[d>>2]=a&-2;c[r+4>>2]=g|1;c[r+g>>2]=g}d=g>>>3;if(g>>>0<256
){b=73640+(d<<1<<2)|0;a=c[18400]|0;d=1<<d;if(a&d){d=b+8|0;a=c[d>>2]|0;if(a>>
;>0<(c[18404]|0)>>>0)ya();else{p=d;q=a}}else{c[18400]=a|d;p=b+8|0;q=b}c[p>>2]=r;c[q+12>
x3e;2]=r;c[r+8>>2]=q;c[r+12>>2]=b;return}d=g>>>8;if(d)if(g>>>0>16777215)b
=31;else{p=(d+1048320|0)>>>16&8;q=d<<p;o=(q+520192|0)>>>16&4;q=q<<o;
b=(q+245760|0)>>>16&2;b=14-(o|p|b)+(q<<b>>>15)|0;b=g>>>(b+7|0)&
1|b<<1}else b=0;e=73904+(b<<2)|0;c[r+28>>2]=b;c[r+20>>2]=0;c[r+16>>2]=0;d=c[18401
]|0;a=1<<b;if(!(d&a)){c[18401]=d|a;c[e>>2]=r;c[r+24>>2]=e;c[r+12>>2]=r;c[r+8>
x3e;2]=r;return}f=g<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]
x26;-8|0)==(g|0)){b=d;e=127;break}a=d+16+(f>>>31<<2)|0;b=c[a>>2]|0;if(!b){e=124;break}else{f=
f<<1;d=b}}if((e|0)==124){if(a>>>0<(c[18404]|0)>>>0)ya();c[a>>2]=r;c[r+24
x3e;>2]=d;c[r+12>>2]=r;c[r+8>>2]=r;return}else if((e|0)==127){d=b+8|0;a=c[d>>2]|0;q=c[18404]|
0;if(!(a>>>0>=q>>>0&b>>>0>=q>>>0))ya();c[a+12>
x3e;2]=r;c[d>>2]=r;c[r+8>>2]=a;c[r+12>>2]=b;c[r+24>>2]=0;return}}function Ks(){}function
Ls(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (C=d,a-c
>>>0|0)|0}function Ms(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (C=b+d+(c>>>
;0<a>>>0|0)>>>0,c|0)|0}function Ns(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;h=b&3;i=d|d<<8|d<<16|d<<24;g=f&~3;if(h){h=b+4-h|0;while((b|0)
x3c;(h|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(g|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(f|0)){a[b>
x3e;0]=d;b=b+1|0}return b-e|0}function Os(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>>c;return a>>
x3e;c|(b&(1<<c)-1)<<32-c}C=0;return b>>>c-32|0}function Ps(a,b,c){a=a|0;b=b|0;c=c|0;if((
c|0)<32){C=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}C=a<
x3c;c-32;return 0}function Qs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;p=p+1|0;c[a>>2]=p;while((f|0)<(e|0)){if(!(
c[d+(f<<3)>>2]|0)){c[d+(f<<3)>>2]=p;c[d+((f<<3)+4)>>2]=b;c[d+((f<
;<3)+8)>>2]=0;C=e;return d|0}f=f+1|0}e=e*2|0;d=Hs(d|0,8*(e+1|0)|0)|0;d=Qs(a|0,b|0,d|0,e|0)|0;C=e;return d|0}function
Rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;while((f|0)<(d|0)){e=c[b+(f<<3)>>2]|0;if(!e)break;if((e|0)==(a
|0))return c[b+((f<<3)+4)>>2]|0;f=f+1|0}return 0}function Ss(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=
4096)return Ea(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if(!e)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 Ts(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 Ss(b,c,d)|0;return b|0}function Us(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>c;return a>
;>>c|(b&(1<<c)-1)<<32-c}C=(b|0)<0?-1:0;return b>>c-32|0}function Vs(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 Ws(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=_(e,f)|0;d=a>>
;>16;a=(c>>>16)+(_(e,d)|0)|0;e=b>>>16;b=_(e,f)|0;return (C=(a>>>16)+(_(e,d)|0)+(((
a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Xs(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)<
x3c;1;h=Ls(j^a|0,i^b|0,j|0,i|0)|0;g=C;a=f^j;b=e^i;return Ls((at(h,g,Ls(f^c|0,e^d|0,f|0,e|0)|0,C,0)|0)^a|0,C^b|0,a|0,b|0)|0}function
Ys(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+16|0;j=f|0;h=b>>31|((b|0)<0?-1:0)<
x3c;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;a=Ls(h^a|0,g^b|0,h|0,g|0)|0;b=C;at(a,b,Ls(l^d|0,k^e|0,l|0,k|0)|
0,C,j)|0;e=Ls(c[j>>2]^h|0,c[j+4>>2]^g|0,h|0,g|0)|0;d=C;i=f;return (C=d,e)|0}function Zs(a,b,c,d){a=a|0;b=b|0
;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Ws(e,f)|0;a=C;return (C=(_(b,f)|0)+(_(d,e)|0)+a|a&0,c|0|0)|0}function _s(a,b,c,d){a=a|0;
b=b|0;c=c|0;d=d|0;return at(a,b,c,d,0)|0}function $s(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+16|0;f=g|0;at(a,b,d,e,
f)|0;i=g;return (C=c[f+4>>2]|0,c[f>>2]|0)|0}function at(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0
,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(
h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (C=n,f
)|0}else{if(!g){n=0;f=0;return (C=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (C=n,f)|0}}g=(i|0)==0
;do if(h){if(!g){g=(aa(i|0)|0)-(aa(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>
;>>(m>>>0)&b|k<<i;b=k>>>(m>>>0)&b;g=0;i=l<<
i;break}if(!f){n=0;f=0;return (C=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (C=n,f)|0}g=h-1|0;if
(g&h|0){i=(aa(h|0)|0)+33-(aa(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>
31&k>>>(o>>>0)|(k<<m|l>>>(i>>>0))&b;b=b&k
x3e;>>(i>>>0);g=l<<p&j;i=(k<<p|l>>>(o>>>0))&
;j|l<<m&i-33>>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&
;0;p=a|0|0;return (C=o,p)|0}else{p=Vs(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>
;(p>>>0)|0;return (C=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c
[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (C=o,p)|0}if(!l){if(f|0){c[f
x3e;>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>
;0)>>>0;return (C=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&
;0}o=0;p=k>>>((Vs(i|0)|0)>>>0);return (C=o,p)|0}g=(aa(i|0)|0)-(aa(k|0)|0)|0;if(g>>>
0<=30){b=g+1|0;i=31-g|0;h=b;a=k<<i|l>>>(b>>>0);b=k>>>(b>>
x3e;0);g=0;i=l<<i;break}if(!f){o=0;p=0;return (C=o,p)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return
(C=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Ms(m|0,l|0,-1,-1)|0;d=C;j=i;i=0;do{e=j;j=g>>>31
|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Ls(k|0,d|0,
e|0,n|0)|0;p=C;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Ls(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>
x3e;31|((p|0)<0?-1:0)<<1)&l|0)|0;b=C;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4
x3e;>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|
0>>>31)&-2|i;return (C=o,p)|0}function bt(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return
Na[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ct(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Oa[a&63](b|0,c|0,d|0)|0}function
dt(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Pa[a&1](b|0,c|0,d|0,e|0,f|0)}function et(a,b,c,d,e,f,g,h,i,j){a=a|0;b=
b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;return Qa[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)|0}function ft(a,b,c
){a=a|0;b=b|0;c=c|0;Ra[a&7](b|0,c|0)}function gt(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 Sa[a&
3](b|0,c|0,d|0,e|0,f|0,g|0)|0}function ht(a,b){a=a|0;b=b|0;return Ta[a&63](b|0)|0}function it(a,b,c,d){a=a|0;b=b|0;c=c|0;d=
d|0;Ua[a&31](b|0,c|0,d|0)}function jt(a,b){a=a|0;b=b|0;Va[a&63](b|0)}function kt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=
e|0;return Wa[a&31](b|0,c|0,d|0,e|0)|0}function lt(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;Xa[a&7](b|
0,c|0,d|0,e|0,f|0,g|0)}function mt(a,b,c){a=a|0;b=b|0;c=c|0;return Ya[a&127](b|0,c|0)|0}function nt(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 Za[a&31](b|0,c|0,d|0,e|0,f|0)|0}function ot(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;_a[a
x26;15](b|0,c|0,d|0,e|0)}function pt(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;ba(0);return 0}function qt(a,b,c){
a=a|0;b=b|0;c=c|0;ba(1);return 0}function rt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(2)}function st(a,b,c,d,e,f,g,h,i){a=a|0
;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;ba(3);return 0}function tt(a,b){a=a|0;b=b|0;ba(4)}function ut(a,b,c,d,e,f){a=a|
0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ba(5);return 0}function vt(a){a=a|0;ba(6);return 0}function wt(a,b,c){a=a|0;b=b|0;c=c|0;ba(7)}function
xt(a){a=a|0;ba(8)}function yt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(9);return 0}function zt(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;
e=e|0;f=f|0;ba(10)}function At(a,b){a=a|0;b=b|0;ba(11);return 0}function Bt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(12);return
0}function Ct(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(13)}
...
function read(filename, binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize "](filename);var ret=nodeFS["readFileSync"](filename);if(!ret&&filename!=nodePath["resolve"](filename)){filename=path.join(__dirname ,"..","src",filename);ret=nodeFS["readFileSync"](filename)}if(ret&&!binary)ret=ret.toString();return ret}
...
var Module;if(typeof Module==="undefined")Module={};if(!Module.expectedDataFileDownloads){Module.expectedDataFileDownloads
=0;Module.finishedDataFileDownloads=0}Module.expectedDataFileDownloads++;((function(){var loadPackage=(function(metadata){function
runWithFS(){var fileData0=[];fileData0.push.apply(fileData0,[79,84,84,79,0,13,0,128,0,3,0,80,67,70,70,32,137,224,82,238,0,0,7,132
,0,0,45,223,70,70,84,77,101,130,23,249,0,0,55,12,0,0,0,28,71,68,69,70,0,160,0,4,0,0,53,100,0,0,0,32,71,80,79,83,184,255,184,254,
0,0,54,220,0,0,0,48,71,83,85,66,234,147,151,221,0,0,53,132,0,0,1,88,79,83,47,50,131,156,137,79,0,0,1,64,0,0,0,96,99,109,97,112,146
,230,183,142,0,0,5,184,0,0,1,170,104,101,97,100,251,7,171,9,0,0,0,220,0,0,0,54,104,104,101,97,7,42,2,2,0,0,1,20,0,0,0,36,104,109
,116,120,33,252,29,155,0,0,55,40,0,0,0,234,109,97,120,112,0,115,80,0,0,0,1,56,0,0,0,6,110,97,109,101,152,108,186,46,0,0,1,160,0,
0,4,23,112,111,115,116,0,3,0,1,0,0,7,100,0,0,0,32,0,1,0,0,0,2,0,0,252,84,172,109,95,15,60,245,0,11,3,232,0,0,0,0,204,138,51,83,0
,0,0,0,204,138,51,83,0,87,255,44,2,124,4,82,0,0,0,8,0,2,0,0,0,0,0,0,0,1,0,0,4,82,255,44,0,90,2,211,0,0,0,0,2,124,0,1,0,0,0,0,0,0
,0,0,0,0,0,0,0,0,0,2,0,0,80,0,0,115,0,0,0,3,2,211,1,144,0,5,0,0,2,138,2,188,0,0,0,140,2,138,2,188,0,0,1,224,0,49,1,2,0,0,2,0,5,9
,0,0,0,0,0,0,0,0,0,35,0,0,42,0,0,0,0,0,0,0,0,0,80,102,69,100,0,64,0,32,37,160,3,32,255,56,0,90,4,82,0,212,0,0,0,1,0,0,0,0,2,56,3
,12,0,32,0,32,0,1,0,0,0,24,1,38,0,1,0,0,0,0,0,0,0,86,0,174,0,1,0,0,0,0,0,1,0,4,1,15,0,1,0,0,0,0,0,2,0,7,1,36,0,1,0,0,0,0,0,3,0,33
,1,112,0,1,0,0,0,0,0,4,0,5,1,158,0,1,0,0,0,0,0,5,0,10,1,186,0,1,0,0,0,0,0,6,0,4,1,207,0,1,0,0,0,0,1,0,0,16,2,224,0,1,0,0,0,0,1,1
,0,23,2,166,0,1,0,0,0,0,1,2,0,20,2,97,0,1,0,0,0,0,1,3,0,15,2,39,0,1,0,0,0,0,1,4,0,16,1,246,0,3,0,1,4,9,0,0,0,172,0,0,0,3,0,1,4,9
,0,1,0,8,1,5,0,3,0,1,4,9,0,2,0,14,1,20,0,3,0,1,4,9,0,3,0,66,1,44,0,3,0,1,4,9,0,4,0,10,1,146,0,3,0,1,4,9,0,5,0,20,1,164,0,3,0,1,4
,9,0,6,0,8,1,197,0,3,0,1,4,9,1,0,0,32,2,190,0,3,0,1,4,9,1,1,0,46,2,118,0,3,0,1,4,9,1,2,0,40,2,55,0,3,0,1,4,9,1,3,0,30,2,7,0,3,0,
1,4,9,1,4,0,32,1,212,0,77,0,97,0,116,0,116,0,104,0,101,0,119,0,32,0,83,0,107,0,97,0,108,0,97,0,32,0,40,0,50,0,48,0,49,0,49,0,45,
0,49,0,50,0,41,0,59,0,32,0,98,0,97,0,115,0,101,0,100,0,32,0,111,0,110,0,32,0,99,0,111,0,100,0,101,0,32,0,98,0,121,0,32,0,82,0,105
,0,99,0,104,0,97,0,114,0,100,0,32,0,66,0,46,0,32,0,87,0,97,0,108,0,101,0,115,0,32,0,40,0,49,0,57,0,56,0,56,0,45,0,56,0,57,0,41,0
,32,0,97,0,110,0,100,0,32,0,84,0,111,0,114,0,32,0,76,0,105,0,108,0,108,0,113,0,118,0,105,0,115,0,116,0,0,77,97,116,116,104,101,119
,32,83,107,97,108,97,32,40,50,48,49,49,45,49,50,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,82,105,99,104
,97,114,100,32,66,46,32,87,97,108,101,115,32,40,49,57,56,56,45,56,57,41,32,97,110,100,32,84,111,114,32,76,105,108,108,113,118,105
,115,116,0,0,79,0,67,0,82,0,65,0,0,79,67,82,65,0,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,0,82,101,103,117,108,97,114,0,0,70,0,
111,0,110,0,116,0,70,0,111,0,114,0,103,0,101,0,32,0,50,0,46,0,48,0,32,0,58,0,32,0,79,0,67,0,82,0,32,0,65,0,32,0,58,0,32,0,50,0,55
,0,45,0,57,0,45,0,50,0,48,0,49,0,50,0,0,70,111,110,116,70,111,114,103,101,32,50,46,48,32,58,32,79,67,82,32,65,32,58,32,50,55,45,
57,45,50,48,49,50,0,0,79,0,67,0,82,0,32,0,65,0,0,79,67,82,32,65,0,0,86,0,101,0,114,0,115,0,105,0,111,0,110,0,32,0,50,0,32,0,0,86
,101,114,115,105,111,110,32,50,32,0,0,79,0,67,0,82,0,65,0,0,79,67,82,65,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,
32,0,104,0,121,0,112,0,104,0,101,0,110,0,0,65,108,116,101,114,110,97,116,101,32,104,121,112,104,101,110,0,0,65,0,108,0,116,0,101
,0,114,0,110,0,97,0,116,0,101,0,32,0,99,0,111,0,109,0,109,0,97,0,0,65,108,116,101,114,110,97,116,101,32,99,111,109,109,97,0,0,65
,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,97,0,112,0,111,0,115,0,116,0,114,0,111,0,112,0,104,0,101,0,0,65,108,116,101
,114,110,97,116,101,32,97,112,111,115,116,114,111,112,104,101,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,113,0
,117,0,101,0,115,0,116,0,105,0,111,0,110,0,32,0,109,0,97,0,114,0,107,0,0,65,108,116,101,114,110,97,116,101,32,113,117,101,115,116
,105,111,110,32,109,97,114,107,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,112,0,101,0,114,0,105,0,111,0,100,0,
0,65,108,116,101,114,110,97,116,101,32,112,101,114,105,111,100,0,0,0,0,0,3,0,0,0,3,0,0,0,28,0,1,0,0,0,0,0,164,0,3,0,1,0,0,0,28,0
,4,0,136,0,0,0,30,0,16,0,3,0,14,0,93,0,125,0,163,0,165,0,198,0,209,0,214,0,216,0,220,2,198,2,220,36,66,37,2,37,160,255,255,0,0,0
,32,0,95,0,163,0,165,0,196,0,209,0,214,0,216,0,220,2,198,2,220,36,64,37,2,37,160,255,255,255,225,255,225,255,192,255,191,255,167
,255,157,255,153,255,152,255,149,253,121,253,131,220,40,219,112,218,192,0,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,1,6,0,0,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,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,0,64,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,91,92,93,94,0,0,107,108,0,0,110,111,113,0
,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,109,112,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,95,0,0,0,0,0,0,0,0,0,0,0,
3,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,0,0,0,0,0,1,0,4,4,0,1,1,1,5,79,67,82,65,0,1,2,0,1,0,52,248,37,0,248,38,1,248
,39,2,248,40,3,248,24,4,140,12,1,139,12,3,139,12,4,226,251,104,249,16,250,230,5,28,1,37,15,28,0,0,16,28,2,10,17,28,0,52,28,44,255
,18,0,14,2,0,1,0,8,0,18,0,30,0,45,0,54,0,64,0,71,0,78,0,85,0,92,0,93,0,179,0,184,0,188,117,110,105,50,53,65,48,112,101,114,105,111
,100,46,97,108,116,113,117,101,115,116,105,111,110,46,97,108,116,113,117,111,116,101,115,105,110,103,108,101,46,97,108,116,99,111
,109,109,97,46,97,108,116,104,121,112,104,101,110,46,97,108,116,117,110,105,50,52,52,48,117,110,105,50,52,52,49,117,110,105,50,52
,52,50,117,110,105,50,53,48,50,50,77,97,116,116,104,101,119,32,83,107,97,108,97,32,40,50,48,49,49,45,49,50,41,59,32,98,97,115,101
,100,32,111,110,32,99,111,100,101,32,98,121,32,82,105,99,104,97,114,100,32,66,46,32,87,97,108,101,115,32,40,49,57,56,56,45,56,57
,41,32,97,110,100,32,84,111,114,32,76,105,108,108,113,118,105,115,116,79,67,82,32,65,79,67,82,65,0,0,0,0,1,0,2,0,3,0,4,0,5,0,6,0
,7,0,104,0,9,0,10,0,11,0,12,0,13,0,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,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,54,0,55,0,56,0,57,0,58
,0,59,0,60,0,61,0,62,0,126,0,64,0,124,0,66,0,67,0,68,0,69,0,70,0,71,0,72,0,73,0,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,94,0,127,1,135,1,136,1,137,0,98,0,100,1,138,1,139,1,140,1,141,1,142,1,143,0,
173,0,175,0,138,0,186,0,189,0,141,0,195,1,144,0,115,2,0,1,0,2,0,3,0,83,0,176,1,63,1,187,2,61,2,234,3,34,3,139,3,246,4,140,4,211,
5,14,5,53,5,71,5,130,5,188,6,14,6,92,6,201,7,21,7,123,7,211,8,39,8,144,8,232,9,27,9,119,9,196,9,216,10,39,10,170,11,66,11,143,11
,243,12,105,12,231,13,39,13,99,13,228,14,46,14,118,14,188,15,28,15,68,15,149,15,210,16,117,16,190,17,91,17,192,18,53,18,125,18,197
,19,19,19,142,20,9,20,87,20,138,20,206,21,11,21,83,21,150,21,183,21,243,22,121,23,30,23,143,23,241,24,117,24,203,25,137,25,231,26
,82,26,217,27,62,27,121,27,254,28,88,28,228,29,153,29,252,30,80,30,236,31,77,31,171,32,7,32,141,33,8,33,124,33,201,34,51,34,94,34
,199,35,51,35,66,35,109,35,221,36,79,36,202,37,3,37,58,37,70,37,124,37,187,38,0,38,114,38,227,39,107,39,238,40,193,41,142,41,252
,42,11,14,14,139,247,35,249,17,119,1,247,178,247,43,3,247,178,190,21,111,162,116,167,30,188,6,167,162,162,167,31,181,7,167,116,161
,111,30,90,6,111,116,117,111,31,249,17,4,164,252,19,5,141,111,160,117,167,139,8,165,163,160,168,31,164,248,19,139,142,5,165,115,
160,112,30,90,6,111,116,116,112,31,14,249,59,240,1,247,55,238,3,247,3,249,110,21,191,251,157,5,144,116,159,121,164,139,163,139,160
,157,143,162,8,181,247,106,247,6,139,180,251,97,5,139,137,138,137,139,137,139,115,165,119,165,139,170,139,155,163,144,165,153,216
,154,221,159,212,8,153,7,140,144,140,145,139,144,139,143,138,143,143,12,37,171,252,134,102,7,138,134,138,135,139,135,8,14,247,189
,240,247,3,240,247,62,119,1,247,104,240,236,240,3,247,5,247,240,21,111,161,116,167,30,188,251,11,6,111,161,116,167,167,162,162,167
,30,247,11,236,251,11,7,111,162,116,167,167,161,162,167,30,247,11,188,7,167,162,162,167,166,116,162,111,31,90,247,3,188,6,167,162
,162,167,167,116,161,111,31,90,247,12,6,166,117,162,111,111,116,116,112,30,251,12,42,247,12,7,166,116,162,111,111,117,116,112,30
,251,12,90,7,111,117,117,111,111,161,116,167,31,188,251,3,90,6,111,117,116,112,31,247,92,189,21,247,3,236,251,3,7,14,160,118,247
,62,240,207,241,207,240,247,62,119,1,247,5,239,237,240,237,240,3,20,112,247,5,247,112,21,111,161,117,167,30,247,40,251,11,6,111,
162,116,167,166,162,162,167,30,247,11,247,40,7,167,162,161,167,31,247,62,7,167,116,162,111,30,251,239,207,247,239,6,167,162,162,
167,167,116,161,111,31,251,40,247,12,6,166,116,162,112,111,116,116,112,30,251,12,251,40,7,111,117,117,111,31,251,62,7,111,161,116
,167,30,247,239,71,251,239,6,111,117,116,111,31,14,139,247,78,248,44,247,78,1,247,5,247,92,236,247,93,3,247,5,247,27,21,111,161,
117,167,30,155,139,154,146,148,151,8,248,33,248,146,5,146,147,143,150,139,151,139,167,116,161,111,139,123,139,124,132,130,127,8,
252,33,252,146,5,132,131,136,128,139,127,8,248,146,4,111,161,116,167,30,238,6,167,162,162,167,31,224,7,166,116,162,111,30,40,6,111
,117,116,112,31,247,189,253,59,21,111,162,116,167,30,238,6,167,162,162,167,31,223,7,167,116,162,111,30,40,6,111,116,116,111,31,14
,139,240,248,129,240,1,247,5,240,247,88,240,3,247,5,247,43,21,57,207,70,222,30,237,6,151,139,150,144,148,146,8,213,202,194,80,5,
148,129,152,133,154,139,167,139,162,162,139,167,139,152,133,151,131,148,8,87,195,5,161,157,183,163,139,176,139,167,116,162,111,139
,126,139,128,134,130,132,8,88,95,32,247,6,247,17,246,5,150,148,145,154,139,154,8,208,7,221,71,208,56,30,43,6,56,71,70,57,31,70,7
,139,126,144,126,147,130,8,235,37,47,60,5,128,129,133,126,139,123,8,240,70,21,139,185,217,205,246,251,6,83,91,60,139,5,112,116,161
,167,31,247,236,4,188,7,167,162,161,166,30,235,6,165,163,115,113,31,139,93,251,3,45,5,14,249,160,119,18,247,153,247,93,251,93,239
,19,160,247,153,248,26,21,111,162,117,167,30,163,139,158,155,145,161,8,238,247,229,5,19,192,140,144,140,144,139,144,8,166,116,162
,111,30,40,6,111,116,116,112,31,14,160,118,249,160,119,1,247,153,240,3,247,153,247,186,21,139,87,158,97,163,108,8,247,9,251,42,5
,148,128,154,131,155,139,167,139,161,162,139,167,139,150,135,150,133,148,8,251,9,247,41,5,127,155,129,160,139,165,8,247,84,7,139
,165,149,160,151,155,8,247,9,247,41,5,145,148,143,150,139,151,139,166,117,162,111,139,123,139,124,131,130,128,8,251,9,251,42,5,115
,108,120,97,139,87,8,14,160,118,249,160,119,1,247,253,240,3,247,104,190,21,111,161,116,167,30,155,139,154,147,148,150,8,247,9,247
,42,5,163,170,158,181,139,191,8,247,84,7,139,191,120,181,115,170,8,251,9,247,42,5,130,150,124,147,123,139,111,139,117,116,139,112
,139,127,143,128,145,130,8,247,9,251,41,5,151,123,149,118,139,113,8,251,84,7,139,113,129,118,127,123,8,251,9,251,41,5,133,130,135
,128,139,128,8,14,247,203,240,3,247,5,247,112,21,111,161,117,167,30,152,139,150,143,148,147,8,247,7,237,139,251,37,5,111,162,117
,167,166,162,161,167,30,139,247,37,247,7,41,5,148,131,150,135,152,139,167,139,162,161,139,167,139,155,132,152,128,149,8,251,45,247
,23,247,45,247,23,5,150,149,146,152,139,155,139,167,116,161,111,139,126,139,128,135,130,131,8,251,7,41,139,247,37,5,167,116,161,
112,111,116,117,111,30,139,251,37,251,7,237,5,130,147,128,143,126,139,111,139,117,117,139,111,139,123,145,126,150,129,8,247,45,251
,23,251,45,251,23,5,128,129,133,126,139,123,8,14,247,232,240,1,247,203,240,3,247,5,248,26,21,111,161,117,167,30,247,40,251,40,6,
111,162,116,167,166,162,162,167,30,247,40,247,40,7,167,162,161,167,167,116,162,111,31,251,40,247,40,6,166,116,162,112,111,116,116
,112,30,251,40,251,40,7,111,117,116,111,31,14,160,118,247,147,240,18,247,104,247,191,38,240,19,224,247,104,247,197,21,111,161,117
,167,30,19,208,247,40,251,96,6,111,162,116,167,167,161,162,167,30,19,224,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31
,14,247,189,247,36,1,247,5,247,240,21,111,161,116,167,30,248,33,6,167,162,162,167,31,181,7,167,116,162,111,30,252,33,6,111,117,116
,111,31,14,247,19,247,78,1,247,153,247,93,3,247,153,247,70,21,32,10,14,160,118,249,160,119,1,247,5,190,21,111,161,116,167,30,158
,139,155,149,148,154,8,248,33,249,59,5,143,147,142,147,139,149,139,166,116,162,111,139,120,139,123,129,130,124,8,252,33,253,59,5
,135,131,137,131,139,130,8,14,139,240,248,214,240,1,247,5,240,247,188,240,3,247,5,240,21,84,185,93,194,30,247,188,6,193,186,186,
193,31,248,214,7,193,92,186,85,30,251,188,6,84,93,93,84,31,240,252,214,21,248,214,247,188,252,214,7,14,139,240,248,214,240,18,247
,5,247,191,38,240,237,240,19,232,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,247,146,7,167,116,162,111,111,117,116
,111,30,251,96,7,19,216,41,249,59,251,141,6,19,232,111,117,116,112,111,161,116,167,31,19,216,247,40,252,214,251,40,6,111,117,116
,112,31,14,139,240,247,131,239,247,131,240,1,247,5,240,247,188,240,3,20,224,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31
,251,238,247,131,247,188,6,193,186,185,193,31,247,131,7,193,92,186,85,30,251,239,6,111,117,116,112,111,161,116,167,31,247,239,251
,131,251,188,6,84,93,94,84,31,14,139,240,247,131,240,247,130,240,1,248,146,240,3,20,224,247,5,190,21,111,161,116,167,30,247,239,
6,193,186,186,193,31,247,80,7,139,177,124,175,114,166,164,166,154,174,139,178,8,247,80,7,193,92,186,85,30,251,239,6,111,117,116,
112,111,161,116,167,31,247,239,251,80,6,112,116,116,111,30,251,89,6,111,117,116,111,111,161,117,167,31,247,89,6,166,163,115,112,
31,251,80,251,239,7,111,117,116,112,31,14,160,118,247,147,240,248,60,119,1,247,29,240,247,89,240,3,247,29,247,147,21,247,190,251
,96,6,111,162,116,167,166,162,162,167,30,247,96,7,167,161,161,167,167,117,162,111,31,247,181,7,167,116,161,112,111,116,117,111,30
,251,181,251,89,248,10,7,166,117,162,111,111,116,116,112,30,14,139,240,84,236,247,89,240,247,130,240,18,247,104,240,247,89,240,20
,176,19,124,247,5,232,21,139,118,151,121,157,131,8,19,188,181,121,181,111,195,139,8,247,119,6,193,186,186,193,31,247,131,7,193,92
,186,85,30,251,89,247,130,247,139,6,167,162,162,167,166,116,162,111,31,251,240,252,76,247,190,251,131,251,129,6,49,177,5,19,124,
133,142,132,140,132,139,8,111,117,117,111,31,14,139,240,247,46,240,247,215,240,18,247,5,247,42,251,42,239,247,189,240,19,236,247
,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,247,146,7,167,116,162,111,30,251,239,247,215,6,19,244,167,161,162,167,31
,19,236,166,117,162,111,30,89,6,19,244,111,117,116,112,31,19,236,239,253,9,21,247,46,247,189,251,46,7,14,160,118,249,59,240,1,247
,203,240,237,240,3,247,5,249,67,21,111,161,117,167,30,164,139,160,157,143,163,8,247,189,251,73,6,251,73,251,46,5,128,129,132,125
,139,124,8,251,146,7,111,162,116,167,166,162,162,167,30,139,247,123,247,73,247,46,5,150,149,146,153,139,154,8,247,197,252,84,7,111
,117,116,112,31,14,139,240,247,131,240,247,130,240,18,247,5,239,139,239,236,239,139,240,19,240,247,5,240,21,19,234,84,185,93,193
,30,247,189,6,193,186,186,193,31,247,131,7,19,228,193,92,186,85,30,19,234,247,181,7,166,118,162,111,30,251,91,6,111,118,116,112,
31,251,181,7,19,240,84,94,92,85,31,239,251,131,21,247,131,7,19,242,247,189,251,131,6,19,236,251,89,247,232,21,247,130,236,251,130
,7,14,139,240,247,215,240,247,46,240,18,247,5,239,247,139,247,43,38,240,19,244,247,5,248,111,21,111,161,116,167,30,247,239,251,215
,6,19,248,111,117,116,112,31,19,244,111,161,116,167,30,189,6,19,248,167,162,162,167,31,19,244,249,59,7,166,116,162,111,30,252,33
,6,111,117,116,112,31,239,251,97,21,247,46,247,189,251,46,7,14,247,19,247,78,247,46,247,78,1,247,153,247,93,3,247,153,247,70,21,
32,10,247,146,4,111,162,117,167,30,238,6,167,162,161,167,31,224,7,167,116,162,111,30,40,6,111,116,116,111,31,14,160,118,247,147,
240,247,45,247,78,18,247,104,247,92,137,240,19,240,247,104,247,197,21,111,161,117,167,30,19,232,247,40,251,96,6,111,162,116,167,
167,161,162,167,30,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31,19,240,247,147,4,111,161,116,167,30,239,6,166,162,162
,167,31,224,7,167,116,161,112,30,39,6,111,117,117,111,31,14,247,5,248,4,21,139,120,149,124,153,130,8,248,33,251,125,5,147,134,148
,137,148,139,167,139,162,161,139,167,139,158,128,155,125,148,8,251,251,247,103,247,251,247,103,5,153,148,150,155,139,158,139,167
,116,161,111,139,130,139,130,137,131,134,8,252,33,251,125,5,125,130,129,123,139,120,8,14,247,147,240,247,3,240,1,247,5,247,197,21
,33,10,247,104,4,33,10,14,247,5,247,27,21,111,161,117,167,30,148,139,148,141,147,144,8,248,38,247,128,5,152,147,146,155,139,156,
8,181,7,139,158,128,155,125,148,8,252,33,247,125,5,131,144,130,141,130,139,111,139,117,117,139,111,139,120,149,123,153,130,8,247
,252,251,103,251,252,251,103,5,125,130,129,123,139,120,8,14,139,240,249,59,119,1,247,104,240,3,247,5,248,111,21,111,161,116,167,
30,152,139,150,144,148,146,8,247,157,247,119,188,97,139,101,251,173,251,131,5,128,130,133,124,139,124,8,54,7,111,161,117,167,167
,162,161,167,30,139,201,247,172,247,131,5,150,149,146,152,139,155,8,224,7,139,154,132,153,128,148,8,40,224,5,130,146,127,144,127
,139,126,139,128,134,130,12,37,251,190,251,147,5,128,130,133,125,139,124,8,238,252,60,21,111,161,116,167,167,162,162,167,166,116
,162,111,111,117,116,112,30,14,139,240,247,173,240,247,88,240,1,247,5,240,236,240,237,240,3,20,224,20,28,247,5,247,42,21,57,206,
71,221,30,177,139,174,154,166,163,165,115,174,124,177,139,8,220,208,207,221,31,248,88,7,235,58,221,42,30,251,35,6,93,139,96,120,
105,108,118,120,106,109,139,103,139,111,161,116,167,139,158,139,157,150,147,155,153,166,171,170,175,139,8,247,35,6,181,174,104,97
,31,252,88,7,113,117,116,112,112,117,161,166,30,247,174,7,167,116,162,112,30,39,6,57,72,71,57,31,240,251,75,21,247,75,7,166,160,
161,166,30,188,251,124,6,112,117,117,112,112,118,161,166,30,14,160,118,247,62,240,248,145,119,1,247,2,190,21,111,163,116,167,30,
162,139,159,154,145,160,8,178,247,26,247,115,139,178,251,26,5,145,118,158,124,162,139,8,167,163,162,167,31,251,94,249,73,5,133,160
,118,154,117,139,116,139,120,124,133,118,8,106,252,109,21,220,247,170,221,251,170,5,14,139,240,247,131,240,247,130,240,1,247,5,240
,247,188,240,3,247,5,22,247,188,6,247,2,231,232,247,1,31,176,7,139,198,111,194,97,176,181,176,167,194,139,198,8,176,7,247,1,47,232
,251,2,30,251,188,6,240,253,59,21,247,131,247,87,7,193,186,92,85,31,102,7,85,92,92,85,30,251,87,247,232,21,247,130,247,87,7,193,
186,92,85,31,102,7,85,92,93,85,30,14,139,240,248,214,240,1,247,5,240,3,247,5,248,26,21,139,98,149,107,153,109,171,69,174,73,174,
72,162,94,189,100,201,139,8,247,78,6,167,162,162,167,166,116,162,111,31,251,78,6,119,139,122,152,132,154,8,36,247,95,5,131,156,134
,157,139,162,139,162,144,157,156,12,37,242,247,95,5,146,154,156,152,159,139,8,247,78,6,167,162,162,167,166,116,162,111,31,251,78
,6,77,139,86,102,118,93,8,38,251,96,5,125,110,129,106,139,98,8,14,139,240,248,214,240,1,247,104,240,247,89,240,3,247,5,190,21,111
,161,116,167,30,247,78,6,201,139,192,176,160,185,8,240,247,96,5,153,168,150,173,139,179,139,179,128,173,125,168,8,37,247,95,5,116
,184,89,178,77,139,8,251,78,6,111,117,116,112,111,161,116,167,31,188,252,214,90,6,111,117,116,112,31,247,92,189,21,248,214,175,7
,159,139,156,126,146,124,8,242,251,95,5,147,123,145,119,139,117,139,117,132,120,122,12,37,36,251,95,5,132,124,122,126,119,139,8,
14,139,240,247,131,240,247,130,240,1,247,5,240,3,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31,251,238,247,131,247,40,6,166
,162,161,167,167,116,162,112,31,251,40,247,130,247,238,6,167,162,162,167,166,116,162,111,31,252,83,6,14,160,118,248,60,240,247,46
,240,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,248,9,247,139,7,167,161,162,167,167,117,161,111,31,251,139,247
,46,247,238,6,167,162,162,167,166,116,162,111,31,252,83,6,14,139,240,247,46,240,247,215,240,18,247,5,240,247,39,247,142,38,240,19
,244,247,5,247,44,21,56,206,70,223,30,247,87,6,222,208,208,222,31,247,96,251,92,7,19,248,111,117,116,111,111,161,117,167,31,19,244
,238,36,6,111,115,116,112,30,251,87,6,112,116,162,167,31,247,163,7,139,165,148,159,151,155,8,247,28,247,66,5,147,150,153,148,157
,139,8,247,41,6,167,162,162,167,166,116,162,111,31,251,41,6,86,139,97,113,114,107,8,251,28,251,68,5,115,108,121,99,139,87,8,14,160
,118,247,232,240,247,231,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,247,181,247,188,251,181,7
,111,161,116,167,167,162,162,167,30,249,59,7,166,116,162,111,111,117,116,112,30,251,181,251,188,247,181,7,166,116,162,111,111,117
,116,112,30,14,139,240,248,214,240,1,247,203,240,3,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251
,40,248,214,247,40,6,167,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,111,161,116,167,31,247,40,252,214,251,40,6,111,
117,116,112,31,14,139,240,249,59,119,1,247,54,240,247,89,240,3,247,54,247,43,21,56,208,71,222,30,234,6,222,208,208,221,31,248,215
,7,166,116,162,111,111,117,116,112,30,252,215,7,112,116,116,111,30,44,6,111,116,161,167,31,247,46,7,167,117,162,111,111,116,116,
111,30,14,160,118,249,160,119,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,121,247,205,251,160,5,148,132
,150,134,152,139,167,139,162,162,139,167,139,154,132,153,128,148,8,251,244,247,193,247,244,247,193,5,150,148,146,153,139,155,139
,166,116,162,111,139,126,139,128,134,130,132,8,251,205,251,160,139,247,122,5,166,116,162,111,111,117,116,112,30,14,139,240,249,59
,119,1,247,5,240,3,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31,251,238,249,9,6,166,116,162,111,111,117,116,112,30,14,160
,118,249,160,119,1,247,5,240,236,240,237,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,248,224,236,251,30,139,113,5,
111,162,116,167,166,162,162,167,30,139,165,237,247,32,139,252,226,5,111,161,116,167,167,162,162,167,30,249,109,251,19,7,251,14,251
,67,251,15,247,67,251,18,139,5,14,160,118,249,160,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,
139,248,185,247,155,252,236,247,26,139,139,249,110,5,166,116,162,111,111,117,116,112,30,139,252,188,251,156,248,238,251,25,139,5
,14,139,240,248,214,240,1,247,5,240,247,188,240,3,247,5,248,26,21,139,98,148,106,154,110,8,246,251,107,5,159,101,182,105,193,139
,194,139,182,173,159,177,8,246,247,107,5,153,168,150,173,139,179,139,179,128,173,125,168,8,32,247,107,5,119,177,96,173,84,139,85
,139,96,105,119,101,8,32,251,107,5,125,110,129,106,139,98,8,247,6,197,21,247,0,247,105,5,144,149,148,147,151,139,151,139,150,130
,143,12,37,247,0,251,105,5,147,123,145,119,139,117,139,117,132,120,122,12,37,32,251,107,5,134,129,130,133,125,139,127,139,129,147
,135,148,8,251,0,247,106,5,131,156,134,157,139,162,139,162,144,157,156,12,37,14,160,118,247,189,240,247,173,240,1,247,5,240,247,
188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,247,138,247,137,7,222,208,208,222,31,247,72,7,221,70,208,56,30,251,238
,6,240,252,18,21,247,173,247,137,7,165,164,116,112,31,251,72,7,111,115,116,112,30,14,139,240,249,59,119,1,247,5,240,236,247,13,217
,240,3,247,5,247,15,21,72,194,83,206,30,172,139,166,152,158,156,8,214,203,176,45,247,26,139,5,167,162,162,167,166,116,162,111,31
,74,139,115,200,5,201,191,217,189,139,247,3,8,247,174,7,206,82,195,72,30,107,139,110,126,121,122,8,251,117,251,82,5,100,105,108,
85,139,72,8,240,251,174,21,247,174,7,139,174,154,165,158,156,8,247,124,247,87,146,139,5,152,149,130,127,31,251,174,7,139,80,93,113
,107,111,126,173,127,199,94,139,111,139,116,116,139,111,139,133,140,132,141,134,8,176,45,251,0,47,131,139,5,126,131,148,152,31,14
,160,118,248,60,240,247,46,240,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,248,9,208,7,247,125,252
,35,5,148,124,155,129,158,139,167,139,162,162,139,167,139,148,136,147,135,147,8,251,95,247,240,197,139,5,221,209,209,221,31,191,
7,222,70,208,56,30,251,238,6,240,251,147,21,247,46,247,137,7,166,163,116,111,31,87,7,112,115,115,112,30,14,139,240,248,214,240,1
,247,5,240,247,188,240,3,247,5,247,27,21,65,201,78,212,30,247,141,6,203,139,187,192,141,200,139,167,128,164,125,156,8,252,8,248,
114,139,143,139,142,5,146,146,142,144,30,247,141,6,157,156,123,121,111,161,116,167,167,162,162,167,213,76,200,66,31,251,141,6,78
,87,88,79,31,136,7,139,111,149,115,152,121,8,248,10,252,118,5,131,132,134,133,30,251,141,6,120,124,154,158,167,116,162,111,111,117
,116,111,31,14,160,118,248,230,247,78,38,240,18,247,5,240,236,240,237,240,19,220,247,5,249,25,21,111,161,116,167,167,162,162,167
,30,19,188,173,236,253,8,7,111,162,116,167,166,162,162,167,30,249,8,237,105,7,19,220,111,161,116,167,167,162,162,167,30,19,188,247
,27,252,134,7,14,139,240,249,59,119,1,247,5,240,247,188,240,3,247,5,247,43,21,57,207,70,222,30,247,87,6,222,208,208,221,31,248,215
,7,166,116,162,111,111,117,116,112,30,252,215,7,112,114,116,113,30,251,87,6,112,116,161,167,31,248,215,7,166,116,162,111,111,117
,116,112,30,14,160,118,249,160,119,1,247,5,240,247,188,240,3,247,5,248,185,21,247,93,252,153,5,147,120,157,126,161,139,160,139,157
,152,147,158,8,247,94,248,154,139,247,72,5,166,116,162,111,111,117,116,112,30,139,251,53,251,40,252,14,251,40,248,14,139,247,53,
5,166,116,162,111,111,117,116,112,30,14,139,240,249,59,119,1,247,5,240,236,240,237,240,3,247,5,247,14,21,195,42,5,148,124,156,129
,158,139,8,236,6,164,139,154,156,150,157,149,120,155,123,163,139,8,237,6,158,139,155,149,148,154,8,196,236,139,248,244,5,166,116
,162,111,111,117,116,112,30,139,252,217,110,91,98,139,5,131,153,130,159,128,156,8,247,215,7,167,116,161,112,111,116,117,111,30,251
,215,7,128,122,130,119,131,125,8,98,139,111,187,139,248,217,5,166,116,162,111,111,117,116,112,30,14,160,118,249,160,119,1,247,5,
190,21,111,161,116,167,30,158,139,155,149,148,154,8,247,47,247,156,247,46,251,156,5,148,124,155,129,158,139,167,139,162,162,139,
167,139,148,136,147,135,147,8,251,76,247,206,247,76,247,206,5,143,147,142,147,139,149,139,166,116,162,111,139,120,139,123,129,130
,124,8,251,46,251,156,251,47,247,156,5,130,154,123,149,120,139,111,139,117,116,139,112,139,129,141,131,143,131,8,247,76,251,206,
251,76,251,206,5,135,131,137,131,139,130,8,14,160,118,249,160,119,1,247,5,240,236,240,236,241,3,247,5,249,7,21,247,90,251,146,139
,251,214,5,111,162,116,167,166,162,162,167,30,139,247,214,247,91,247,146,139,242,5,166,116,162,111,111,116,116,112,30,139,71,251
,39,251,82,251,40,247,82,139,207,5,166,116,162,111,111,117,116,112,30,14,139,240,248,214,240,1,247,4,203,21,140,75,248,83,139,5,
167,162,162,167,166,116,162,111,31,251,201,139,247,252,248,251,139,203,252,84,139,5,111,117,116,112,111,161,116,167,31,247,201,6
,14,139,240,248,214,240,1,247,5,239,187,240,3,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,90
,248,214,247,90,6,167,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,31,239,253,9,21,248,214,187,252,214,7,14,160,118,249
,160,119,1,247,5,249,110,21,139,129,141,131,143,131,8,248,33,253,59,5,148,124,155,129,158,139,167,139,162,162,139,167,139,148,136
,147,135,147,8,252,33,249,59,5,130,154,123,149,120,139,111,139,117,116,139,112,8,14,139,240,248,214,240,1,247,253,240,187,240,3,
247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,249,59,7,166,116,162,111,30,252,33,6,111,117,116,112,111,161,116,167
,31,247,90,252,214,251,90,6,111,117,116,112,31,247,241,189,21,248,214,187,252,214,7,14,247,4,247,82,21,140,127,5,111,161,116,167
,30,157,139,154,148,147,151,8,247,50,247,128,247,49,251,128,5,147,127,154,130,157,139,167,139,162,162,139,167,139,146,137,146,136
,146,8,251,92,248,20,5,131,155,122,150,120,139,119,139,122,128,131,123,8,14,38,240,1,247,5,89,21,111,161,116,167,30,248,33,6,167
,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,31,14,249,160,119,1,247,54,249,110,21,139,123,146,125,150,130,8,247,190
,251,147,5,147,133,149,133,153,139,167,139,162,162,139,167,139,148,137,147,135,146,8,251,95,247,154,5,130,151,124,146,123,139,8,
40,6,111,116,116,112,31,14,139,240,247,46,240,247,3,240,18,247,5,240,247,177,238,45,246,19,244,247,5,247,42,21,57,206,71,221,30,
247,41,6,148,139,148,141,146,144,8,213,182,5,112,161,116,166,167,163,161,167,30,19,248,126,248,9,5,136,218,74,205,57,139,8,251,78
,6,111,117,116,111,111,161,117,167,31,247,78,6,195,139,132,76,141,84,125,144,124,141,124,139,8,251,85,6,57,72,71,57,31,240,83,21
,195,7,165,161,162,165,30,247,85,6,19,244,163,164,116,115,31,139,95,32,76,251,27,139,5,112,118,161,166,31,14,139,240,248,2,240,247
,104,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,154,7,174,107,177,105,201,139,8,214,6,180,139
,172,155,162,159,180,175,188,173,139,214,8,247,98,7,139,189,115,178,110,164,104,169,104,176,75,139,8,64,6,80,139,98,108,104,106,
8,247,118,7,166,116,162,111,111,117,116,112,30,240,252,142,21,247,12,7,139,155,145,153,150,146,8,225,213,5,146,146,150,144,153,139
,8,214,6,157,139,151,130,150,129,155,123,168,124,139,109,8,251,98,7,139,123,131,126,129,131,121,124,120,111,108,139,8,64,6,125,139
,128,144,132,146,8,53,213,5,129,147,132,151,139,156,8,14,139,240,248,2,240,1,247,5,240,3,247,5,247,116,21,139,88,162,101,168,114
,8,225,65,5,163,118,171,124,181,139,8,247,103,6,167,162,162,167,166,116,162,111,31,251,103,6,125,139,128,144,132,146,8,53,212,5,
129,148,132,151,139,156,8,247,12,7,139,155,145,153,150,146,8,225,213,5,146,146,150,144,153,139,8,247,103,6,167,162,161,167,167,116
,162,111,31,251,103,6,51,139,93,70,89,98,110,114,116,101,139,88,8,14,139,240,248,2,240,247,104,119,1,247,5,240,247,188,240,3,247
,5,247,73,21,139,88,161,101,169,114,174,108,173,103,204,139,8,214,6,203,139,176,173,174,172,8,123,7,111,161,116,167,167,162,162,
167,30,249,59,7,166,116,162,111,111,117,116,112,30,251,123,7,103,170,105,177,73,139,8,64,6,98,139,106,123,116,119,97,104,92,105,
139,63,8,240,251,98,21,34,10,14,139,240,247,3,240,247,46,240,1,247,5,240,247,188,240,3,247,5,247,73,21,139,88,161,101,169,114,174
,108,173,103,204,139,8,247,153,6,167,162,162,167,166,116,162,111,31,251,153,6,125,139,130,144,130,146,120,156,105,155,139,174,8,
170,247,238,7,167,162,162,167,31,247,16,7,139,190,115,177,110,164,104,170,104,175,75,139,8,251,17,6,98,139,106,123,116,119,97,104
,92,104,139,64,8,240,65,21,213,7,139,156,146,151,149,147,157,154,158,167,170,139,8,247,17,6,173,191,95,103,31,65,7,14,160,118,248
,103,240,247,3,240,1,247,128,240,3,247,29,248,153,21,111,161,117,167,30,188,252,52,6,111,162,116,167,167,161,162,167,30,248,52,238
,7,166,162,161,167,167,116,162,112,31,40,173,6,181,173,174,182,30,247,13,6,167,161,162,167,166,117,162,111,31,251,13,6,41,59,60,
40,31,105,90,7,111,117,116,111,31,14,251,104,240,247,45,240,247,216,240,1,247,5,239,247,189,240,3,247,5,247,116,21,139,88,162,101
,168,114,174,109,174,101,203,139,8,214,6,201,139,178,174,174,172,8,251,33,7,139,124,131,125,129,131,121,125,120,110,108,139,8,251
,103,6,111,116,116,111,111,162,117,167,31,247,103,6,180,139,172,155,162,159,180,175,188,173,139,214,8,248,184,7,167,116,162,111,
111,117,116,111,30,121,7,103,170,105,177,73,139,8,64,6,98,139,106,123,116,119,97,104,92,106,139,62,8,239,251,55,21,247,55,7,139,
156,147,150,149,149,159,153,154,167,172,139,8,214,6,153,139,150,134,146,132,8,225,65,5,148,131,148,125,139,124,8,61,7,139,123,131
,126,129,131,8,53,65,5,132,132,128,134,125,139,8,64,6,104,88,184,175,31,14,160,118,248,103,240,247,104,119,1,247,5,240,247,188,239
,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,203,247,55,244,210,139,5,166,139,159,117,141,114,8,152,252,7,5,112,162
,117,166,167,161,162,167,30,127,248,8,5,136,218,74,205,57,139,8,82,6,106,139,113,129,117,125,8,43,78,139,247,139,5,166,116,162,111
,111,117,116,112,30,14,139,240,248,2,240,247,3,247,35,18,247,54,247,142,251,43,247,43,39,239,19,240,247,54,190,21,35,10,19,228,41
,6,19,240,248,52,7,167,116,162,112,30,251,41,6,111,116,116,111,111,162,117,167,31,19,228,238,252,2,40,6,111,116,116,112,31,19,232
,238,249,59,21,19,228,111,162,116,167,30,189,6,19,232,166,162,162,167,31,181,7,167,116,161,112,30,19,228,89,6,19,232,111,116,117
,111,31,14,251,104,240,248,214,240,247,3,247,35,18,247,153,247,192,251,43,247,43,39,239,19,232,247,54,62,21,131,7,150,70,202,81,
215,139,8,237,6,19,228,222,207,206,222,31,19,240,248,215,7,167,116,162,111,30,251,90,6,111,116,116,111,111,162,117,167,31,19,228
,247,41,252,165,6,19,232,112,115,117,112,30,41,6,77,139,162,224,79,139,8,111,116,116,111,31,247,140,249,187,21,19,228,111,162,116
,167,30,188,6,19,232,167,162,162,167,31,181,7,167,116,161,111,30,19,228,90,6,19,232,111,116,117,111,31,14,160,118,248,204,119,247
,124,119,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,38,187,181,247,157,251,119,5,148,132,151,134,152,
139,167,139,161,162,139,167,139,154,132,153,128,148,8,251,145,247,108,247,95,247,66,5,150,148,146,153,139,154,139,167,116,162,111
,139,127,139,127,134,131,132,8,251,156,251,117,139,248,35,5,166,116,162,111,111,117,116,112,30,14,139,240,248,214,240,18,247,54,
247,142,38,240,19,224,247,54,190,21,35,10,19,208,41,6,19,224,249,9,7,166,116,162,112,30,251,41,6,111,116,116,112,111,162,116,167
,31,19,208,237,252,214,41,6,111,116,116,112,31,14,160,118,248,103,240,18,244,240,244,240,230,239,53,240,19,248,244,190,21,111,161
,116,167,167,162,162,167,30,139,247,243,214,204,147,139,5,153,147,131,125,31,252,30,7,111,162,116,167,166,162,162,167,30,139,247
,250,207,197,145,139,5,149,139,145,128,140,131,8,19,244,153,252,35,5,140,112,162,117,166,139,8,167,161,162,167,31,19,248,124,248
,37,5,137,203,82,188,78,139,114,139,112,131,116,120,8,117,121,5,117,168,103,158,100,139,102,139,111,122,118,121,133,159,119,154,
117,139,8,111,117,116,111,31,14,160,118,248,103,240,1,247,5,240,247,188,239,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139
,247,203,247,55,244,210,139,5,166,139,159,117,141,114,8,152,252,7,5,112,162,117,166,167,161,162,167,30,127,248,8,5,136,218,74,205
,57,139,8,82,6,106,139,113,129,117,125,8,43,78,139,173,5,167,116,162,111,111,117,116,111,30,14,139,240,248,2,240,1,247,5,240,247
,188,240,3,247,5,247,73,21,139,89,161,100,169,114,175,109,172,102,204,139,8,247,17,6,180,139,172,155,162,159,180,175,188,173,139
,214,8,247,98,7,139,189,115,178,110,164,104,169,104,176,75,139,8,251,17,6,98,139,106,123,116,119,97,104,92,104,139,64,8,240,251,
98,21,247,98,7,139,156,146,151,149,147,157,154,158,167,170,139,8,247,17,6,173,191,95,103,31,251,98,7,139,123,131,126,129,131,121
,124,120,111,108,139,8,251,17,6,125,139,130,144,130,146,120,156,105,155,139,174,8,14,251,83,118,247,83,240,248,44,240,1,247,5,240
,247,188,240,3,247,5,251,54,21,111,161,117,167,167,162,161,167,30,247,108,7,173,102,178,101,205,139,8,160,6,181,139,171,154,163,
160,8,225,213,5,168,164,163,179,139,188,8,247,53,7,139,220,82,175,95,179,104,171,101,175,76,139,8,118,6,70,139,105,98,103,103,8,
166,7,166,116,162,111,111,117,116,112,30,240,251,212,21,247,22,7,139,154,144,151,148,146,8,229,230,5,147,147,152,145,153,139,8,160
,6,151,139,153,133,145,133,8,226,64,5,148,132,147,124,139,124,8,251,53,7,139,124,131,124,130,132,8,52,65,5,132,132,128,134,125,139
,8,118,6,122,139,130]);fileData0.push.apply(fileData0,[144,130,148,118,158,120,160,119,159,122,156,112,154,139,172,8,14,251,83,118
,247,104,240,248,2,240,1,247,5,240,247,188,240,3,247,5,247,73,21,139,88,161,101,169,114,174,108,173,103,204,139,8,214,6,203,139,
176,173,174,172,8,251,121,7,111,161,117,167,167,162,161,167,30,249,59,7,167,116,162,111,111,117,116,111,30,121,7,103,170,105,177
,73,139,8,64,6,98,139,106,123,116,119,97,104,92,105,139,63,8,240,251,98,21,34,10,14,160,118,248,103,240,1,247,5,240,247,188,240,
3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,165,247,58,247,35,220,139,5,166,161,116,113,31,111,7,111,161,117,167,167
,162,161,167,30,167,7,221,70,207,58,30,40,6,129,139,128,137,131,133,8,251,11,37,139,198,5,167,116,162,111,111,117,116,111,30,14,
139,240,248,2,240,1,247,17,239,247,174,242,3,247,5,232,21,139,123,146,125,151,129,172,111,181,114,199,139,8,247,81,6,223,139,208
,207,140,223,8,141,7,139,204,95,193,92,160,8,251,170,247,12,5,128,143,134,149,139,149,8,153,149,154,157,30,247,106,6,176,139,148
,96,175,139,167,139,162,162,139,167,139,150,135,150,133,147,114,172,94,169,86,139,8,251,106,6,105,139,106,125,115,115,113,114,128
,108,139,108,139,88,169,89,185,119,8,247,169,251,12,5,159,130,148,120,139,120,8,112,122,112,105,30,251,95,6,132,139,127,147,132,
141,114,146,131,164,107,139,111,139,118,117,139,111,8,14,139,240,248,2,240,1,247,104,240,3,247,5,248,153,21,111,161,117,167,30,188
,251,209,6,58,207,70,220,30,239,6,214,139,201,198,152,207,8,147,7,167,116,162,111,30,78,139,162,54,78,139,8,39,6,113,117,161,166
,31,247,209,247,89,7,167,161,161,167,167,117,162,111,31,251,89,247,11,6,167,116,162,111,111,117,116,111,30,251,11,90,7,111,117,116
,111,31,14,139,240,248,103,119,1,247,5,239,247,189,240,3,247,5,248,153,21,151,252,9,5,141,61,206,73,220,139,8,196,6,172,139,165,
149,161,153,8,236,201,139,104,5,111,161,116,167,167,162,162,167,30,248,102,7,167,116,162,111,111,117,116,111,30,139,251,204,251,
56,35,68,139,5,112,139,119,160,137,165,8,126,248,7,5,166,116,161,112,111,117,116,111,30,14,160,118,248,204,119,1,247,5,240,247,188
,240,3,247,5,248,68,21,139,132,140,132,142,133,8,247,59,252,18,5,147,121,156,127,160,139,8,202,6,160,139,156,151,147,157,8,247,59
,248,18,5,142,145,141,146,139,146,8,224,7,167,116,162,111,111,117,116,111,30,139,65,251,41,251,231,251,39,247,231,139,213,5,167,
116,162,111,111,117,116,111,30,14,160,118,248,204,119,1,241,240,247,0,240,247,0,240,3,20,56,241,248,152,21,149,251,190,191,251,74
,5,145,118,159,124,162,139,8,188,6,158,139,155,149,148,154,8,195,234,194,44,5,148,124,155,129,158,139,8,188,6,162,139,159,154,145
,160,8,190,247,62,150,247,202,139,141,5,166,115,162,112,30,112,139,117,117,138,112,8,129,251,183,107,251,0,73,247,6,139,247,6,5,
166,116,162,112,111,116,116,112,30,139,251,6,73,251,6,107,247,0,129,247,183,5,138,166,117,161,112,139,8,111,116,115,111,31,14,160
,118,248,204,119,1,247,5,190,21,111,161,116,167,30,155,139,153,146,148,150,8,247,52,247,85,247,51,251,85,5,148,128,153,132,155,139
,167,139,162,162,139,167,139,151,135,150,132,148,8,251,65,247,100,247,53,247,86,5,146,148,144,150,139,151,139,167,116,162,111,139
,124,139,125,132,129,127,8,251,40,251,71,251,41,247,71,5,129,151,125,146,124,139,111,139,116,116,139,111,139,127,144,128,146,130
,8,247,53,251,86,251,65,251,100,5,132,130,136,128,139,127,8,14,251,104,240,249,59,119,1,247,5,240,247,187,241,3,247,5,251,54,21,
111,161,117,167,30,247,28,6,160,139,157,151,147,157,8,247,152,248,230,5,142,145,141,146,139,146,8,224,7,167,116,162,111,111,116,
116,111,30,139,65,251,24,251,192,107,139,251,23,247,192,139,213,5,167,116,162,111,111,117,116,111,30,54,7,139,132,140,132,142,133
,8,247,41,251,231,5,146,121,157,126,160,139,8,160,139,72,251,45,36,139,5,111,117,116,111,31,14,139,240,248,2,240,1,247,5,190,21,
111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,208,139,247,243,247,229,5,149,149,145,152,139,153,8,181,7,167
,116,162,111,30,252,9,6,111,117,116,111,111,161,117,167,31,247,185,139,251,244,251,230,5,129,130,134,126,139,125,8,14,139,240,247
,131,240,247,130,240,1,247,203,240,3,247,5,248,26,21,111,161,117,167,30,236,6,167,162,115,112,31,251,80,7,85,186,92,193,30,247,40
,6,167,162,162,167,166,116,162,111,31,251,40,247,80,6,139,178,124,174,115,166,163,166,154,174,139,178,8,247,80,247,40,7,167,162,
162,167,166,116,162,111,31,251,40,6,85,92,92,85,31,251,80,7,112,117,116,110,30,42,6,111,117,116,111,31,14,160,118,249,160,119,1,
247,203,240,3,247,203,190,21,111,162,116,167,166,162,162,167,30,247,181,38,7,240,4,240,247,181,6,166,116,162,112,111,116,116,112
,30,14,139,240,247,131,240,247,130,240,1,247,203,240,3,247,5,190,21,111,161,116,167,30,247,40,6,193,186,186,193,31,247,80,7,165,
161,164,167,30,237,6,167,162,161,167,167,116,162,111,31,41,6,111,117,162,166,31,247,80,7,193,92,186,85,30,251,40,6,111,117,116,112
,111,161,116,167,31,247,40,251,80,6,139,100,154,104,163,112,115,112,124,104,139,100,8,251,80,251,40,7,111,117,116,112,31,14,248,
62,238,247,45,240,1,247,5,240,236,240,237,240,3,20,56,247,5,248,153,21,111,161,117,167,167,162,161,167,30,247,3,7,166,160,162,166
,166,161,116,112,30,87,7,139,99,155,101,167,110,169,109,176,126,175,139,8,217,214,200,228,31,247,3,7,167,116,162,111,111,117,116
,111,30,251,3,7,113,117,114,112,112,117,164,165,30,191,7,139,180,123,177,111,167,109,169,103,153,103,139,8,62,63,77,50,31,14,226
,248,185,3,226,114,21,248,185,249,210,252,185,6,14,139,247,142,1,247,129,247,141,3,247,129,190,21,111,161,116,167,30,247,41,6,167
,161,162,167,31,247,40,7,167,117,162,111,30,251,41,6,111,117,116,111,31,14,160,118,249,160,119,1,247,104,240,3,247,5,248,111,21,
111,161,116,167,30,152,139,150,144,148,146,8,247,157,247,119,188,97,139,101,251,173,251,131,5,128,130,133,124,139,124,8,251,146,
7,111,161,116,167,167,162,162,167,30,139,247,123,247,172,247,131,5,150,149,146,152,139,155,8,224,7,139,154,132,153,128,148,8,40,
224,5,130,146,127,144,127,139,126,139,128,134,130,12,37,251,190,251,147,5,128,130,133,125,139,124,8,14,139,240,247,131,240,247,130
,240,1,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,122,139,209,247,131,247,52,139,5,167,162,
161,167,167,116,162,111,31,251,23,139,198,247,94,5,145,158,158,156,162,139,8,163,6,167,162,162,167,166,116,162,111,31,115,6,67,139
,83,87,122,82,8,72,251,122,251,53,139,5,111,117,116,111,111,161,117,167,31,247,23,139,70,251,131,77,139,5,111,117,116,112,31,14,
160,118,247,147,240,248,60,119,1,247,203,240,3,247,5,247,197,21,111,161,117,167,30,247,40,251,96,6,111,162,116,167,166,162,162,167
,30,247,96,247,40,7,167,162,161,167,167,116,162,111,31,251,40,160,6,247,84,247,219,5,143,147,142,147,139,149,139,166,116,162,111
,139,120,139,123,129,130,124,8,251,46,251,157,251,47,247,157,5,130,154,123,149,120,139,111,139,117,116,139,112,139,129,141,131,143
,131,8,247,84,251,219,139,118,251,40,139,5,111,117,116,111,31,14,249,160,119,1,247,201,243,3,247,151,249,110,21,190,251,148,5,139
,137,138,137,139,137,8,115,166,119,165,165,164,162,166,30,190,247,148,5,139,141,140,141,139,141,8,163,111,159,113,30,40,6,111,114
,116,112,31,14,160,118,247,104,247,36,1,247,253,247,42,3,247,104,247,155,21,111,161,116,167,30,238,251,53,6,111,161,116,167,30,189
,6,167,161,162,167,31,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31,14,247,232,240,1,247,5,248,26,21,33,10,14,139,240
,248,214,240,1,247,5,240,236,240,237,240,3,247,5,22,247,191,249,59,237,251,96,6,111,161,116,167,167,162,162,167,30,247,197,251,192
,253,59,42,247,96,7,167,116,162,111,111,117,116,111,30,14,160,118,247,232,240,247,231,119,1,247,5,240,247,188,240,3,247,5,190,21
,111,161,116,167,167,162,162,167,30,247,181,247,188,251,181,7,111,161,116,167,167,162,162,167,30,249,59,7,166,116,162,111,111,117
,116,112,30,251,181,252,33,7,14,160,118,247,232,240,247,231,119,1,247,5,240,236,240,237,240,3,247,5,247,232,21,247,90,251,181,6,
111,162,116,167,166,162,162,167,30,247,181,247,91,248,26,7,166,116,162,111,111,117,116,112,30,251,181,251,188,247,181,7,166,116,
162,111,111,117,116,112,30,14,160,118,247,19,240,248,2,247,78,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,30,160,139,
158,152,146,158,8,176,234,247,121,139,176,44,5,146,120,158,126,160,139,167,139,162,162,139,167,139,145,137,145,137,145,8,251,90,
248,145,5,131,158,120,152,118,139,117,139,122,126,131,120,8,251,90,252,145,5,137,133,138,133,139,133,8,248,230,4,36,10,247,65,252
,138,21,214,247,85,214,251,85,5,213,248,53,21,36,10,14,160,118,247,62,240,248,44,240,1,247,54,240,247,89,240,3,247,1,191,21,111,
164,115,167,30,162,139,159,154,145,160,8,179,247,26,247,114,139,178,251,26,5,145,118,159,124,162,139,8,167,163,162,167,31,251,27
,248,96,5,185,148,176,181,139,187,8,208,7,193,92,186,85,30,251,89,6,85,92,92,85,31,70,7,139,91,176,97,185,130,8,157,238,21,208,247
,89,70,7,251,71,251,231,21,209,247,130,161,139,209,251,130,5,14,139,240,208,240,208,240,247,130,240,18,247,253,247,142,251,142,240
,19,244,247,5,190,21,111,161,116,167,30,161,139,157,153,146,158,8,189,247,29,240,139,5,19,248,251,11,7,111,161,116,167,30,247,41
,6,167,162,162,167,166,116,162,111,31,19,244,41,247,131,237,6,19,248,167,162,161,167,167,116,162,111,31,19,244,41,247,130,237,6,
19,248,167,162,162,167,166,116,162,111,31,251,41,6,121,139,122,129,130,125,8,251,143,253,68,5,137,133,138,134,139,133,8,247,76,247
,112,21,19,244,203,247,67,139,251,67,5,14,160,118,249,16,247,36,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162
,167,30,139,247,188,247,201,251,223,5,148,129,152,133,154,139,8,167,162,162,167,31,248,60,7,167,116,161,111,111,117,117,111,30,139
,251,189,251,202,247,223,5,130,149,126,145,124,139,8,111,117,117,111,31,247,104,4,111,161,116,167,30,162,139,159,155,145,160,8,247
,240,102,142,139,5,166,160,163,166,31,182,7,166,116,162,111,30,116,139,119,123,134,118,8,251,241,176,135,139,5,113,119,115,113,31
,14,139,240,248,44,240,123,247,78,18,247,5,239,247,188,241,19,216,247,5,247,172,21,139,113,147,120,150,123,8,220,251,5,139,134,5
,172,95,169,82,214,139,8,160,6,229,139,176,225,178,196,8,192,215,5,150,155,148,159,139,164,8,189,7,139,165,130,158,128,155,8,57,
247,5,5,105,185,114,199,61,139,8,118,6,92,139,103,116,119,109,101,82,100,85,100,84,128,122,131,122,139,112,8,247,207,4,19,184,111
,161,116,167,167,161,162,167,30,224,7,166,117,162,111,111,117,116,112,30,239,252,89,21,139,192,247,10,247,61,5,19,216,143,144,147
,144,147,139,8,160,6,147,139,147,134,143,134,8,247,10,251,61,139,88,251,10,251,59,5,135,133,132,134,130,139,8,118,6,130,139,131,
144,136,145,8,247,70,248,169,21,19,184,111,162,116,167,167,162,162,167,30,224,7,166,116,162,111,111,116,116,112,30,14,139,240,248
,214,240,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,30,182,139,156,192,156,167,158,96,183,101,197,139,194,139,182,173
,159,177,8,246,247,107,5,153,168,150,173,139,179,139,222,95,198,110,198,8,205,247,5,5,143,147,142,147,139,149,139,166,116,162,111
,139,96,139,122,86,122,111,120,182,95,177,80,139,85,139,96,105,119,101,8,32,251,107,5,125,110,129,106,139,98,139,54,182,83,168,79
,8,73,251,5,5,135,131,137,131,139,130,8,240,247,231,21,139,162,144,157,147,156,8,247,0,247,105,5,144,149,148,147,151,139,151,139
,150,130,143,12,37,173,72,251,68,251,192,5,125,167,121,166,139,180,8,226,251,96,21,247,68,247,192,5,153,112,158,109,139,100,139,
117,132,120,132,122,8,251,0,251,106,5,134,129,131,132,125,139,127,139,129,147,135,12,37,14,139,240,248,129,247,78,18,247,5,240,137
,240,236,239,139,240,19,228,247,5,247,44,21,56,206,70,223,30,247,87,6,222,208,208,222,31,248,44,7,167,116,161,111,111,117,117,111
,30,252,44,7,111,115,116,112,30,251,87,6,112,116,162,167,31,248,44,7,167,116,161,111,111,117,117,111,30,19,208,238,224,21,36,10,
19,200,247,90,54,21,111,162,116,167,167,160,162,167,30,224,7,166,118,162,111,111,116,116,112,30,14,247,203,240,3,247,203,38,21,240
,28,4,183,38,6,14,249,103,20,139,21,139,139,248,204,139,247,104,139,6,251,104,139,7,158,12,10,240,10,236,142,140,140,180,140,181
,203,12,12,240,11,236,143,189,189,188,188,247,142,12,13,139,12,14,28,0,52,19,0,5,1,1,28,54,125,143,164,111,162,116,167,30,238,6,
167,162,162,167,31,224,7,167,116,161,111,30,40,6,111,116,117,111,31,11,111,161,117,167,30,248,33,6,167,162,161,167,167,116,162,111
,31,252,33,6,111,117,116,111,31,11,247,98,7,139,157,147,150,149,148,158,154,155,166,171,139,8,214,6,153,139,150,134,146,132,8,225
,65,5,148,131,148,125,139,124,8,251,12,7,139,123,131,125,129,132,8,53,65,5,132,133,128,133,125,139,8,64,6,125,139,130,144,130,146
,120,156,105,155,139,174,8,11,111,162,116,167,30,247,189,6,167,162,162,167,166,116,162,111,31,11,111,161,116,167,167,162,162,167
,30,224,7,166,116,162,111,111,117,116,112,30,11,0,0,1,0,0,0,14,0,0,0,24,0,0,0,0,0,2,0,1,0,1,0,114,0,1,0,4,0,0,0,2,0,0,0,1,0,0,0,
10,0,68,0,162,0,2,68,70,76,84,0,14,108,97,116,110,0,36,0,4,0,0,0,0,255,255,0,6,0,0,0,1,0,2,0,3,0,4,0,5,0,4,0,0,0,0,255,255,0,6,0
,0,0,1,0,2,0,3,0,4,0,5,0,6,97,97,108,116,0,38,115,115,48,49,0,44,115,115,48,50,0,50,115,115,48,51,0,56,115,115,48,52,0,62,115,115
,48,53,0,68,0,0,0,1,0,0,0,30,0,1,0,1,0,28,0,1,0,2,0,26,0,1,0,3,0,24,0,1,0,4,0,22,0,1,0,5,0,0,1,0,0,0,1,1,0,0,1,2,0,0,1,3,0,0,1,4
,0,6,0,14,0,22,0,30,0,38,0,46,0,54,0,3,0,0,0,1,0,48,0,1,0,0,0,1,0,100,0,1,0,0,0,1,0,104,0,1,0,0,0,1,0,108,0,1,0,0,0,1,0,112,0,1,
0,0,0,1,0,116,0,1,0,46,0,5,0,16,0,22,0,28,0,34,0,40,0,2,0,8,0,101,0,2,0,13,0,102,0,2,0,14,0,103,0,2,0,15,0,97,0,2,0,32,0,98,0,1,
0,5,0,8,0,13,0,14,0,15,0,32,0,1,0,6,0,82,0,1,0,1,0,15,0,1,0,6,0,66,0,1,0,1,0,32,0,1,0,6,0,93,0,1,0,1,0,8,0,1,0,6,0,89,0,1,0,1,0,
13,0,1,0,6,0,89,0,1,0,1,0,14,0,1,0,0,0,10,0,44,0,46,0,2,68,70,76,84,0,14,108,97,116,110,0,24,0,4,0,0,0,0,255,255,0,0,0,4,0,0,0,0
,255,255,0,0,0,0,0,0,0,0,0,1,0,0,0,0,204,109,177,85,0,0,0,0,204,138,51,80,0,0,0,0,204,138,51,83,2,211,0,0,2,211,0,0,1,30,0,111,0
,113,0,113,0,113,0,113,1,5,1,5,0,212,0,113,0,113,0,212,0,113,1,5,0,113,0,113,0,113,0,113,0,113,0,137,0,113,0,113,0,113,0,113,0,113
,1,5,0,212,0,113,0,113,0,113,0,113,0,113,0,110,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,162,0,113,0,113,0,113,0,113,0,113
,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,112,0,113,0,113,0,113,0,112,0,113,0,162,0,113,0,113,0,113,0,113,0
,113,0,137,0,113,0,113,0,162,0,162,0,113,0,162,0,105,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,102,0,113,0,113,0,113
,0,113,1,55,0,113,0,113,0,87,0,237,0,113,0,113,0,113,1,3,0,212,0,113,0,113,0,113,0,113,0,113,0,109,0,113,0,113,0,113,0,113,0,113
,1,55,0,0]);Module["FS_createDataFile"]("/","OCRA.otf",fileData0,true,true);var fileData1=[];fileData1
.push.apply(fileData1,[79,84,84,79,0,13,0,128,0,3,0,80,67,70,70,32,129,193,239,92,0,0,6,176,0,0,60,213,70,70,84,77,108,79,91,201
,0,0,68,252,0,0,0,28,71,68,69,70,0,190,0,4,0,0,67,136,0,0,0,32,71,80,79,83,184,255,184,254,0,0,68,204,0,0,0,48,71,83,85,66,119,90
,101,154,0,0,67,168,0,0,1,36,79,83,47,50,90,188,142,61,0,0,1,64,0,0,0,96,99,109,97,112,83,222,211,245,0,0,4,28,0,0,2,114,104,101
,97,100,6,47,76,75,0,0,0,220,0,0,0,54,104,104,101,97,4,6,251,46,0,0,1,20,0,0,0,36,104,109,116,120,49,149,74,40,0,0,69,24,0,0,1,240
,109,97,120,112,0,145,80,0,0,0,1,56,0,0,0,6,110,97,109,101,174,145,152,55,0,0,1,160,0,0,2,121,112,111,115,116,0,3,0,0,0,0,6,144,
0,0,0,32,0,1,0,0,0,2,0,0,89,59,114,1,95,15,60,245,0,11,3,232,0,0,0,0,211,135,133,179,0,0,0,0,211,135,133,179,249,67,249,67,6,189
,6,189,0,0,0,8,0,2,0,0,0,0,0,0,0,1,0,0,3,170,254,176,0,90,2,211,249,67,249,67,6,189,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,103,0,0,80
,0,0,145,0,0,0,2,2,211,1,144,0,5,0,0,2,138,2,188,0,0,0,140,2,138,2,188,0,0,1,224,0,49,1,2,0,0,2,0,5,9,0,0,0,0,0,0,0,0,0,175,0,0,
0,104,0,0,0,0,0,0,0,0,80,102,69,100,0,64,0,32,43,88,3,32,255,56,0,90,3,170,1,80,0,0,0,1,0,0,0,0,2,22,2,189,0,32,0,32,0,1,0,0,0,14
,0,174,0,1,0,0,0,0,0,0,0,67,0,136,0,1,0,0,0,0,0,1,0,4,0,214,0,1,0,0,0,0,0,2,0,7,0,235,0,1,0,0,0,0,0,3,0,41,1,71,0,1,0,0,0,0,0,4,
0,13,1,141,0,1,0,0,0,0,0,5,0,10,1,177,0,1,0,0,0,0,0,6,0,4,1,198,0,3,0,1,4,9,0,0,0,134,0,0,0,3,0,1,4,9,0,1,0,8,0,204,0,3,0,1,4,9,
0,2,0,14,0,219,0,3,0,1,4,9,0,3,0,82,0,243,0,3,0,1,4,9,0,4,0,26,1,113,0,3,0,1,4,9,0,5,0,20,1,155,0,3,0,1,4,9,0,6,0,8,1,188,0,77,0
,97,0,116,0,116,0,104,0,101,0,119,0,32,0,83,0,107,0,97,0,108,0,97,0,32,0,40,0,50,0,48,0,49,0,49,0,41,0,59,0,32,0,98,0,97,0,115,0
,101,0,100,0,32,0,111,0,110,0,32,0,99,0,111,0,100,0,101,0,32,0,98,0,121,0,32,0,78,0,111,0,114,0,98,0,101,0,114,0,116,0,32,0,83,0
,99,0,104,0,119,0,97,0,114,0,122,0,32,0,40,0,49,0,57,0,56,0,54,0,44,0,32,0,50,0,48,0,49,0,49,0,41,0,0,77,97,116,116,104,101,119,
32,83,107,97,108,97,32,40,50,48,49,49,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,78,111,114,98,101,114
,116,32,83,99,104,119,97,114,122,32,40,49,57,56,54,44,32,50,48,49,49,41,0,0,79,0,67,0,82,0,66,0,0,79,67,82,66,0,0,82,0,101,0,103
,0,117,0,108,0,97,0,114,0,0,82,101,103,117,108,97,114,0,0,70,0,111,0,110,0,116,0,70,0,111,0,114,0,103,0,101,0,32,0,50,0,46,0,48,
0,32,0,58,0,32,0,79,0,67,0,82,0,32,0,66,0,32,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,32,0,58,0,32,0,50,0,55,0,45,0,57,0,45,0,50
,0,48,0,49,0,50,0,0,70,111,110,116,70,111,114,103,101,32,50,46,48,32,58,32,79,67,82,32,66,32,82,101,103,117,108,97,114,32,58,32,
50,55,45,57,45,50,48,49,50,0,0,79,0,67,0,82,0,32,0,66,0,32,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,0,79,67,82,32,66,32,82,101,
103,117,108,97,114,0,0,86,0,101,0,114,0,115,0,105,0,111,0,110,0,32,0,50,0,32,0,0,86,101,114,115,105,111,110,32,50,32,0,0,79,0,67
,0,82,0,66,0,0,79,67,82,66,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,28,0,1,0,0,0,0,1,108,0,3,0,1,0,0,0,28,0,4,1,80,0,0,0,80,0,64,0,5,0,16,0
,126,0,161,0,164,0,169,0,175,0,180,0,184,0,191,0,196,0,198,0,214,0,216,0,220,0,223,0,228,0,230,0,246,0,248,0,252,1,49,1,83,2,55,
2,199,2,217,2,220,3,147,3,152,3,155,3,158,3,160,3,163,3,166,3,168,33,38,33,145,33,147,34,6,43,34,43,88,255,255,0,0,0,32,0,161,0,
164,0,167,0,174,0,180,0,184,0,191,0,196,0,198,0,214,0,216,0,220,0,223,0,228,0,230,0,246,0,248,0,252,1,49,1,82,2,55,2,198,2,216,2
,220,3,147,3,152,3,155,3,158,3,160,3,163,3,165,3,168,33,38,33,145,33,147,34,6,43,34,43,88,255,255,255,225,255,191,255,189,255,187
,255,183,255,179,255,176,255,170,255,166,255,165,255,150,255,149,255,146,255,144,255,140,255,139,255,124,255,123,255,120,255,68,
255,36,254,65,253,179,253,163,253,161,252,235,252,231,252,229,252,227,252,226,252,224,252,223,252,222,223,97,222,247,222,246,222
,132,213,105,213,52,0,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,1,6,0,0,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,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,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,91,92,93,94,95,0,106,0,0,0,0,108,110,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,0,0,0,0,116,0,0,0,0,98,0,0,111,101,100,0
,103,99,0,107,109,0,0,0,0,0,0,0,0,0,0,0,0,0,0,113,115,105,96,0,0,0,0,138,0,0,0,0,0,0,0,118,119,0,0,0,0,0,0,0,0,0,0,0,0,0,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,121,125,102,123,124,0,104,0,0,122,0,0,0,3,0,0,0,0,0,0,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,4,4,0,1,1,1,5,79,67,82,66,0,1,2,0,1,0,54,248,47,0,248,48,1,248,49,2,248,50,3,248,51,4,139,12,3,139,12,4,28
,249,67,28,249,67,28,6,189,28,6,189,5,28,1,96,15,28,0,0,16,28,2,129,17,28,0,70,28,58,29,18,0,25,2,0,1,0,9,0,14,0,19,0,25,0,27,0,
29,0,34,0,41,0,44,0,47,0,50,0,57,0,66,0,71,0,78,0,85,0,100,0,109,0,121,0,128,0,133,0,200,0,213,0,217,0,223,100,111,116,108,101,115
,115,106,71,97,109,109,97,84,104,101,116,97,76,97,109,98,100,97,88,105,80,105,83,105,103,109,97,85,112,115,105,108,111,110,80,104
,105,80,115,105,79,104,109,97,114,114,111,119,117,112,97,114,114,111,119,100,111,119,110,68,101,108,116,97,117,110,105,50,66,50,
50,117,110,105,50,66,53,56,113,117,111,116,101,115,105,110,103,108,101,46,97,108,116,103,114,97,118,101,46,97,108,116,113,117,111
,116,101,100,98,108,46,97,108,116,98,97,114,46,97,108,116,50,46,48,48,48,77,97,116,116,104,101,119,32,83,107,97,108,97,32,40,50,
48,49,49,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,78,111,114,98,101,114,116,32,83,99,104,119,97,114,
122,32,40,49,57,56,54,44,32,50,48,49,49,41,79,67,82,32,66,32,82,101,103,117,108,97,114,79,67,82,66,78,111,114,109,97,108,0,0,0,0
,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,
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,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,94,0,95,0,96,0,103,0,102,0,131,0,170,0,165,0,128,0,125,0
,133,0,123,0,173,0,138,0,189,0,141,0,195,0,149,0,202,0,144,0,218,0,147,0,224,0,145,0,142,0,148,1,135,0,126,0,136,0,129,0,130,0,127
,1,136,1,137,1,138,1,139,1,140,1,141,1,142,1,143,1,144,1,145,1,146,1,147,1,148,1,149,1,150,1,151,1,152,1,153,1,154,0,145,2,0,1,0
,2,0,3,0,31,0,134,1,64,1,254,2,176,3,110,3,165,3,251,4,77,4,200,5,15,5,80,5,119,5,161,5,218,6,78,6,146,7,13,7,136,7,236,8,103,8,
208,9,37,9,176,10,36,10,87,10,169,10,245,11,55,11,131,12,3,12,205,13,33,13,167,14,30,14,116,14,191,14,254,15,163,15,235,16,47,16
,142,16,236,17,26,17,125,17,206,18,9,18,96,19,6,19,124,20,12,20,67,20,156,20,225,21,106,21,227,22,58,22,133,22,189,22,248,23,52,
23,60,23,101,23,162,24,29,24,164,25,33,25,166,26,21,26,116,27,26,27,118,27,165,28,14,28,114,28,183,29,47,29,127,29,152,30,22,30,
154,30,241,31,128,31,239,32,81,32,167,33,31,33,152,34,3,34,80,34,222,35,1,35,141,35,172,35,200,36,138,37,81,37,142,38,150,38,174
,38,209,39,13,39,94,39,222,40,102,40,217,41,86,42,19,42,173,43,64,43,208,44,172,44,233,45,146,46,7,46,38,46,203,47,89,47,163,47,
171,47,251,48,68,48,86,48,117,48,183,49,20,49,120,49,170,49,245,50,118,50,228,51,146,52,7,52,175,53,15,53,111,53,164,53,188,53,189
,53,224,54,29,54,90,54,118,14,14,66,247,38,18,247,182,247,38,251,15,239,19,192,247,182,116,21,32,10,19,160,162,247,198,21,33,10,
14,248,86,247,212,18,247,53,247,22,251,22,239,247,84,247,15,251,15,237,19,160,247,53,248,136,21,113,163,115,165,30,166,139,159,160
,142,161,8,168,247,119,5,19,192,139,141,140,140,139,141,8,162,115,161,112,30,110,6,112,116,116,112,31,19,136,247,184,251,112,21,
112,162,116,166,30,165,139,156,157,144,161,8,19,144,164,247,122,139,143,5,164,114,160,114,30,116,6,112,116,117,111,31,14,247,96,
239,247,49,239,247,104,119,1,247,242,238,195,238,3,247,5,247,146,21,139,113,159,118,164,136,8,102,251,59,5,112,163,116,165,30,163
,139,159,156,144,161,8,179,247,70,247,17,139,104,251,48,139,128,5,112,162,116,166,30,162,139,160,157,144,160,8,179,247,70,193,139
,5,166,162,162,166,166,117,162,111,31,108,139,174,247,49,155,139,5,166,162,162,166,31,139,164,120,160,115,143,8,173,247,43,139,150
,5,167,116,161,112,30,114,139,122,120,132,119,8,100,251,65,251,18,139,175,247,54,5,165,115,163,113,30,115,139,119,121,134,118,8,
100,251,65,84,139,5,111,117,117,111,111,162,117,166,31,172,139,103,251,49,122,139,5,111,117,117,111,31,247,61,189,21,175,247,49,
247,17,139,104,251,49,5,14,181,239,248,54,118,213,241,1,247,8,238,237,239,239,239,3,247,5,247,69,21,139,133,139,132,142,133,169,
64,211,106,234,131,8,137,7,111,162,117,166,166,162,162,166,30,141,7,247,1,155,230,205,139,247,2,139,247,14,41,178,37,170,8,247,79
,7,177,131,165,122,161,111,148,127,152,130,158,139,166,139,162,162,139,165,139,150,135,149,133,147,102,193,86,173,62,149,8,144,7
,166,116,162,112,112,116,117,111,30,134,7,33,127,48,85,139,251,2,139,251,13,238,102,237,111,8,251,103,7,113,141,114,143,120,149,
108,155,134,192,95,139,112,139,116,117,139,111,8,241,247,250,21,139,191,186,158,190,146,8,251,49,7,102,153,78,155,139,188,8,247,
90,252,26,21,247,72,7,188,122,190,113,139,91,139,86,92,113,86,129,8,14,126,239,228,239,247,100,239,228,239,18,247,7,237,199,236,
124,237,199,236,19,249,247,5,182,21,111,162,116,166,30,156,139,157,151,148,152,8,248,35,249,55,5,143,146,142,148,139,148,139,166
,116,162,112,139,126,139,125,135,129,129,8,252,42,253,65,5,134,132,137,130,139,130,8,141,248,218,21,68,180,69,226,30,19,253,224,
181,211,211,211,97,212,54,55,95,64,66,31,237,142,21,162,146,161,162,162,146,116,117,120,131,114,117,30,130,6,123,144,134,161,139
,156,8,19,251,247,34,252,136,21,68,180,69,226,224,181,212,211,211,97,211,54,30,55,95,64,66,31,237,142,21,162,145,161,163,162,146
,116,117,120,130,114,118,30,133,6,138,140,138,140,138,139,8,123,134,167,153,31,14,126,239,248,222,239,18,247,5,239,67,239,247,75
,239,127,240,19,228,247,5,247,97,21,139,251,26,227,56,247,24,138,8,145,6,197,139,187,154,179,164,152,122,150,119,167,139,166,139
,162,162,139,166,139,165,120,155,128,155,176,195,158,212,139,220,8,166,116,163,112,112,115,116,111,30,139,95,132,98,125,105,8,251
,35,247,91,5,19,216,206,191,247,1,204,139,247,9,8,236,51,193,43,251,10,58,70,251,8,30,139,61,172,85,175,90,8,85,91,96,79,139,45,
8,19,224,239,22,139,197,167,170,169,169,8,247,47,251,107,5,115,125,111,131,106,139,8,133,6,62,140,94,178,139,217,8,19,216,167,248
,19,21,199,178,164,199,175,187,127,100,30,139,115,121,114,126,123,111,105,101,111,100,111,8,115,173,116,176,139,189,8,14,247,168
,247,67,3,247,168,249,100,21,159,251,182,5,141,114,160,121,166,139,8,173,6,165,139,157,156,144,163,8,160,247,184,5,139,140,140,140
,139,140,139,162,118,160,116,142,8,58,6,112,116,117,111,31,14,249,153,119,1,247,148,239,3,247,148,248,7,21,139,251,76,237,251,9,
247,4,64,147,134,149,136,149,139,166,139,162,161,139,167,139,156,129,156,127,147,50,196,62,232,139,247,35,8,144,7,141,247,46,209
,228,233,201,152,148,148,155,139,155,139,167,116,161,112,139,129,139,129,136,131,133,251,6,60,45,251,9,137,251,83,8,14,249,153,119
,1,248,6,239,3,247,73,176,21,112,162,116,166,30,149,139,149,142,147,144,247,6,216,236,247,10,139,247,79,139,247,84,43,247,8,251,
7,218,131,145,130,142,128,139,112,139,116,116,139,112,139,126,148,115,152,135,8,230,77,215,47,139,251,43,139,251,41,64,50,47,79,
127,131,129,121,139,123,8,14,247,205,239,3,247,5,248,82,21,139,115,154,123,158,131,8,247,26,95,49,251,13,5,133,130,135,129,139,128
,139,112,161,116,167,139,153,139,151,143,149,148,8,246,247,36,223,251,36,5,148,130,153,135,152,139,167,139,161,161,139,167,139,148
,137,147,135,147,8,62,247,23,247,9,178,5,159,146,154,156,139,163,139,166,116,162,112,139,133,139,134,138,134,137,8,251,26,95,139
,247,43,5,166,116,162,112,112,116,117,111,30,139,251,43,251,41,188,5,112,115,114,112,31,14,247,222,239,1,247,205,239,3,247,5,248
,16,21,111,162,117,166,30,247,42,251,71,6,111,162,117,166,166,162,162,166,30,247,71,247,42,7,166,162,162,166,166,116,162,112,31,
251,42,247,70,6,166,117,162,111,111,117,117,111,30,251,70,251,42,7,112,116,117,111,31,14,251,55,118,1,247,51,251,26,21,111,161,117
,167,30,167,6,152,139,152,143,149,149,8,247,146,247,153,5,148,148,144,152,139,152,8,170,7,167,116,161,112,30,251,3,6,126,139,124
,135,130,129,8,251,70,251,194,5,135,131,137,131,139,130,8,14,247,208,247,20,1,247,5,248,2,21,111,161,117,167,30,248,36,6,167,161
,162,166,31,167,7,166,117,162,111,30,252,36,6,111,117,117,111,31,14,129,247,89,1,247,133,247,135,3,247,133,179,21,112,162,116,166
,30,247,35,6,166,162,161,167,31,236,7,167,116,161,112,30,251,35,6,112,116,116,112,31,14,249,153,119,1,247,65,176,21,111,162,117,
166,30,159,139,159,153,145,156,8,247,172,249,66,5,142,145,140,145,139,146,139,166,116,162,112,139,119,139,119,125,133,122,8,251,
172,253,66,5,136,133,138,133,139,132,8,14,125,239,248,222,239,1,247,5,239,247,192,239,3,247,5,247,235,21,251,87,189,251,53,247,92
,30,149,139,148,138,149,139,8,154,6,247,54,152,183,247,65,139,247,62,8,247,122,119,247,92,251,122,251,124,121,251,91,251,123,30,
239,22,139,215,139,227,154,201,156,208,172,174,224,139,155,139,161,139,148,137,237,120,144,251,32,139,251,15,8,93,7,251,0,126,251
,40,251,7,30,117,6,123,139,117,139,129,141,50,158,126,247,26,139,240,8,14,247,248,239,3,247,36,248,202,21,112,161,116,167,30,151
,139,151,143,148,147,8,247,21,247,2,139,252,234,5,111,162,117,166,166,162,162,166,30,249,60,7,166,116,162,112,30,107,6,127,139,128
,135,130,131,8,251,75,251,49,5,129,131,134,125,139,126,8,14,140,239,248,208,239,1,248,123,239,3,247,22,249,50,21,113,163,116,165
,30,149,139,150,142,147,145,183,170,183,151,205,139,207,139,195,96,139,69,139,112,128,114,123,118,112,103,87,106,94,110,59,88,60
,77,113,48,8,130,108,138,96,139,100,8,118,7,112,162,116,166,30,247,244,6,166,162,162,166,166,117,162,111,31,251,193,6,145,247,8,
202,177,218,189,224,193,247,4,208,139,247,24,139,247,20,42,224,251,19,139,47,139,81,119,77,98,127,131,130,120,139,124,8,14,126,239
,248,207,239,1,248,140,239,3,247,5,208,21,66,247,36,130,199,30,247,46,139,247,18,227,146,247,43,8,154,7,139,247,17,53,216,251,5,
168,8,247,51,247,60,5,148,148,145,150,139,152,8,174,7,166,116,162,112,30,251,255,6,111,117,117,111,112,162,116,166,31,247,171,139
,251,76,251,85,5,131,131,136,127,139,128,8,112,162,116,166,241,241,98,36,30,130,7,134,40,55,94,41,139,93,139,93,148,96,158,133,141
,133,141,132,139,8,112,116,117,111,31,14,247,56,239,1,248,46,239,3,247,5,247,106,21,111,162,117,166,30,247,139,251,16,6,112,162,
116,166,166,162,162,166,30,247,16,192,7,166,162,162,166,166,117,162,111,31,86,247,8,6,166,116,162,112,112,116,116,112,30,251,8,251
,81,7,247,96,248,71,5,142,145,141,146,139,147,139,166,116,162,112,139,120,139,119,126,133,123,8,251,109,252,99,5,136,132,137,133
,139,131,8,14,126,239,247,218,239,247,37,239,1,248,109,239,3,247,31,176,21,111,162,117,166,30,246,139,247,3,157,220,211,183,179,
180,203,139,215,8,247,65,251,13,222,251,67,30,124,139,147,247,37,247,139,139,5,166,162,163,165,166,117,162,111,31,251,186,6,112,
139,118,119,137,112,8,125,251,143,139,136,5,113,163,118,165,30,143,6,160,141,161,140,160,139,204,139,202,127,174,101,165,111,146
,100,139,100,139,117,132,118,129,120,91,54,251,6,116,34,139,8,112,116,117,111,31,14,126,239,247,192,239,1,247,5,239,247,192,239,
3,247,5,247,121,21,143,251,37,238,42,247,39,139,8,247,39,242,238,247,35,247,49,44,240,251,47,31,117,139,119,137,119,135,191,212,
200,206,199,204,147,148,144,151,139,152,139,166,116,162,112,139,126,139,125,134,130,129,61,54,60,53,78,38,8,101,76,107,58,139,41
,8,239,127,21,237,192,199,236,239,189,81,39,51,78,85,50,49,79,192,228,30,14,249,38,239,1,247,131,239,3,247,5,249,88,21,112,162,116
,166,30,247,232,6,131,118,126,120,127,121,91,69,78,79,97,65,78,32,120,251,17,139,251,16,8,111,162,117,166,166,162,162,166,30,139
,245,153,247,0,192,232,180,210,200,197,184,206,173,189,165,194,139,199,8,166,117,162,111,30,252,36,6,111,117,117,111,31,14,126,239
,248,222,239,18,247,5,238,74,239,247,124,239,73,239,19,228,247,5,247,92,21,251,19,245,53,247,36,30,183,6,247,10,148,227,237,139,
245,139,237,70,212,63,191,8,19,216,201,178,188,189,139,227,8,244,251,3,207,34,33,251,2,72,33,30,139,51,189,87,200,102,8,63,87,70
,67,139,40,8,19,228,238,22,139,222,229,193,202,171,204,105,222,83,139,60,8,77,80,88,69,30,118,6,57,70,178,213,31,19,216,174,248,
36,21,190,209,161,185,185,209,117,88,30,139,72,80,113,82,113,8,83,165,79,166,139,205,8,14,247,165,239,247,192,239,1,247,5,239,247
,192,239,3,247,5,248,150,21,251,26,236,32,247,45,30,159,139,160,140,159,142,92,65,82,72,74,80,129,129,133,127,139,124,139,111,162
,117,166,139,151,139,151,144,148,147,222,213,210,226,195,235,8,182,212,177,214,139,245,8,247,50,251,2,240,251,32,251,32,251,2,251
,10,251,33,30,239,22,225,204,212,224,228,200,79,40,30,139,114,136,115,132,116,123,83,76,126,78,139,8,46,82,197,222,31,14,129,247
,72,247,75,247,72,1,247,151,247,100,3,247,151,179,21,111,162,117,166,30,247,0,6,166,162,162,166,31,219,7,166,116,162,112,30,251,
0,6,112,116,117,111,31,247,175,4,34,10,14,247,245,247,72,1,247,171,247,100,3,247,48,251,21,21,111,162,117,166,30,182,6,152,139,152
,145,148,148,8,247,96,247,159,5,141,141,140,142,139,142,139,143,138,143,139,143,8,166,116,162,112,30,251,3,6,117,139,122,126,133
,124,8,251,16,251,145,5,136,133,138,131,139,132,8,247,15,248,168,21,34,10,14,247,18,247,236,21,248,45,251,163,5,147,133,149,136,
149,139,166,139,162,162,139,166,139,153,134,151,129,149,8,251,237,247,122,247,237,247,122,5,151,147,142,153,139,153,139,166,116,
162,112,139,129,139,129,136,131,133,8,252,45,251,163,5,130,130,135,125,139,126,139,126,143,125,139,130,8,14,247,108,239,247,20,239
,1,247,5,247,158,21,111,161,117,167,30,248,36,6,167,161,162,166,166,116,162,112,31,252,36,6,112,116,117,111,31,247,120,4,111,162
,117,166,30,248,36,6,166,162,162,166,166,117,162,111,31,252,36,6,111,117,117,111,31,14,247,5,247,6,21,111,162,117,166,30,149,139
,148,142,148,145,8,248,44,247,163,5,150,146,142,155,139,152,139,152,135,153,139,148,8,252,44,247,163,5,130,145,130,142,129,139,112
,139,116,117,139,111,139,125,144,127,148,129,8,247,237,251,122,251,237,251,122,5,130,129,134,127,139,125,8,14,72,247,38,248,173,
237,18,247,33,239,188,247,38,251,15,239,182,239,19,236,247,33,248,156,21,140,114,161,117,166,139,8,167,161,161,167,31,139,142,139
,144,5,139,197,193,160,191,145,8,142,6,148,139,148,136,148,139,179,130,178,119,139,92,139,105,109,91,119,118,103,99,82,109,139,66
,8,111,162,117,166,166,162,162,166,30,139,146,143,146,143,144,155,161,163,153,157,159,175,177,179,207,140,204,8,141,7,247,10,40,
196,38,33,251,1,76,251,13,30,19,244,247,41,252,183,21,32,10,14,120,239,247,132,239,247,89,239,1,247,5,239,247,15,239,216,239,3,247
,5,247,86,21,139,251,9,173,47,247,3,135,8,147,6,185,139,173,154,166,162,161,113,171,128,172,139,174,139,175,152,165,163,191,187,
143,202,139,238,8,247,6,7,247,95,90,247,64,251,96,30,130,6,251,17,136,45,81,123,32,8,132,7,111,161,117,167,30,164,139,160,158,142
,162,147,199,198,159,208,142,8,148,6,247,32,152,251,31,251,28,31,139,251,6,139,113,5,139,80,136,79,91,136,8,138,6,121,139,133,161
,138,162,8,247,135,7,165,116,163,112,30,122,139,122,129,130,124,117,154,103,151,108,139,251,7,138,113,251,2,139,251,8,8,239,133,
21,139,145,139,156,5,184,141,204,178,30,177,139,169,108,153,112,8,251,19,7,126,111,123,112,100,139,8,133,6,91,142,138,193,139,189
,8,14,247,91,239,248,44,119,1,247,11,179,21,111,162,117,166,30,162,139,159,156,144,159,8,183,247,64,247,95,139,184,251,64,5,144,
119,159,122,162,139,8,166,163,163,165,31,251,57,249,16,5,134,157,119,152,118,139,8,71,6,116,139,118,122,134,119,8,251,53,252,253
,5,247,60,247,138,21,215,247,184,215,251,184,5,14,140,239,247,107,239,247,77,239,18,247,5,239,247,178,238,54,239,19,244,247,5,190
,21,111,162,117,166,30,247,63,6,211,139,213,145,195,183,188,177,167,198,139,200,8,141,7,139,200,111,196,92,176,8,19,248,180,175,
158,189,139,189,139,207,104,206,78,174,88,167,80,140,81,139,8,251,63,6,111,117,117,111,31,239,252,186,21,247,107,247,42,7,19,244
,219,139,208,111,140,62,8,138,7,48,47,121,52,30,251,13,247,207,21,247,77,247,13,7,19,248,226,139,210,128,146,60,8,130,7,70,70,122
,72,30,14,126,239,248,97,118,228,239,1,247,53,239,247,99,237,3,247,53,247,234,21,141,251,71,188,251,68,247,77,139,227,139,207,193
,152,215,8,148,7,166,117,162,112,30,115,139,118,120,135,117,133,108,110,122,103,139,251,12,139,125,247,35,137,247,6,8,156,7,139,
247,8,160,247,25,247,2,145,8,144,6,157,139,156,134,154,128,167,118,132,87,188,139,8,166,161,162,166,31,149,7,122,214,72,193,52,139
,8,134,6,251,70,135,88,251,68,139,251,75,8,14,161,118,249,80,119,1,247,56,239,247,115,239,3,247,56,190,21,112,162,116,166,30,177
,139,176,139,176,146,247,41,166,247,4,247,13,139,247,67,139,227,109,215,99,193,74,226,51,204,251,42,139,8,111,117,116,112,31,239
,252,184,21,248,131,7,181,134,172,126,168,118,203,93,194,63,139,33,139,251,36,49,67,251,25,127,8,14,140,239,247,107,239,247,77,239
,1,247,51,239,3,247,51,190,21,111,162,117,166,30,247,234,6,166,162,161,167,167,117,161,111,31,251,184,247,107,247,136,6,167,161,
162,166,166,116,162,112,31,251,136,247,77,247,184,6,166,162,161,167,167,117,161,111,31,251,234,6,111,117,117,111,31,14,247,208,239
,247,77,239,1,247,102,239,3,247,102,179,21,112,162,116,166,166,162,162,166,30,247,168,247,71,7,166,162,162,166,166,115,162,113,31
,251,71,247,77,247,116,6,166,162,161,167,167,117,161,111,31,251,166,6,111,117,116,112,31,14,124,241,247,84,239,247,126,241,18,247
,13,240,247,3,247,155,39,239,19,244,247,13,247,245,21,139,251,9,170,251,9,199,77,183,93,205,113,214,139,169,139,171,143,171,148,
175,149,208,158,139,186,8,19,248,247,147,7,166,116,162,112,30,251,55,6,112,116,117,111,111,161,117,167,31,19,244,247,5,251,66,6,
105,127,106,133,109,139,69,139,84,172,115,207,121,189,129,202,139,200,139,222,158,220,182,183,168,168,177,153,177,139,181,139,180
,122,166,108,8,149,128,151,132,155,139,166,139,162,162,139,166,139,151,135,150,131,148,102,184,86,168,81,148,125,141,125,140,126
,139,66,139,79,106,98,98,8,78,78,109,251,5,139,251,6,8,14,247,202,239,247,195,119,1,247,33,239,247,135,239,3,247,33,179,21,112,162
,116,166,166,162,161,167,30,247,162,247,135,251,162,7,112,162,116,166,166,162,161,167,30,249,3,7,167,116,161,112,112,116,116,112
,30,251,145,251,135,247,145,7,167,116,161,112,112,116,116,112,30,14,140,239,248,136,239,1,247,205,239,3,247,62,190,21,112,162,116
,166,30,247,178,6,166,162,162,166,166,117,162,111,31,46,248,136,212,6,166,162,162,166,166,117,162,111,31,251,138,6,111,117,116,112
,112,162,116,166,31,212,252,136,46,6,111,117,116,112,31,14,123,241,249,7,119,1,247,22,239,247,52,239,3,247,22,247,57,21,139,66,184
,82,189,111,169,123,169,132,167,139,236,139,220,223,139,232,139,143,138,144,139,143,8,248,125,7,166,116,162,112,112,116,116,112,
30,252,133,7,83,103,115,102,97,94,169,189,30,139,144,140,144,140,145,8,148,7,167,118,161,111,30,113,139,121,122,134,116,136,126,
138,128,139,127,8,14,249,93,119,1,247,19,239,3,247,19,179,21,112,162,116,166,166,162,162,166,30,139,247,167,247,192,251,202,5,149
,129,152,134,152,139,166,139,162,162,139,166,139,152,133,151,130,149,8,251,172,247,182,247,149,247,155,5,148,148,145,152,139,152
,139,166,116,162,112,139,126,139,126,133,129,130,8,251,169,251,174,139,247,139,5,166,116,162,112,112,116,116,112,30,14,140,239,248
,248,119,1,247,33,239,3,247,33,190,21,112,162,116,166,30,248,8,6,166,162,162,166,166,117,162,111,31,251,214,248,198,6,167,116,161
,112,112,116,116,112,30,14,249,93,119,1,247,5,239,247,192,239,3,247,5,179,21,111,162,117,166,166,162,162,166,30,139,248,175,241,
251,228,5,145,119,159,123,161,139,163,139,156,156,146,158,8,241,247,228,139,252,175,5,111,162,117,166,166,162,162,166,30,249,3,7
,166,116,162,112,30,62,6,116,139,119,123,134,119,8,64,251,139,64,247,139,5,133,158,120,156,116,139,8,62,6,112,116,117,111,31,14,
249,93,119,1,247,19,239,247,164,239,3,247,19,179,21,112,162,116,166,166,162,162,166,30,139,248,116,247,131,252,138,5,147,123,156
,127,159,139,8,177,6,165,163,162,166,31,249,3,7,166,115,162,113,112,116,117,111,30,139,252,117,251,132,248,138,5,131,155,122,152
,119,139,8,102,6,112,116,116,112,31,14,126,239,248,170,239,1,247,8,239,247,186,239,3,247,8,247,246,21,35,10,239,135,21,144,7,139
,218,161,222,179,191,157,162,169,164,176,139,8,243,182,251,47,251,4,35,93,251,55,38,31,37,139,95,247,55,138,243,8,14,247,179,239
,247,106,239,1,247,33,239,247,164,239,3,247,33,179,21,112,162,116,166,166,162,161,167,30,247,139,247,14,7,219,139,222,158,187,203
,164,171,151,179,141,181,8,150,7,247,30,251,0,207,251,34,30,251,64,6,111,117,116,112,31,239,251,156,21,247,106,247,14,7,224,204,
117,55,31,132,7,135,58,66,119,66,139,8,14,171,239,248,120,239,1,247,7,242,247,164,235,3,247,7,248,13,21,139,66,149,66,159,89,172
,59,223,70,230,139,178,139,180,152,178,169,8,193,69,5,148,127,153,136,152,139,166,139,163,162,139,166,139,150,135,150,132,148,8,
74,223,5,171,199,156,219,139,220,8,247,61,65,247,63,251,51,30,130,6,40,139,69,61,109,69,119,91,129,68,139,67,8,242,163,21,192,7,
144,214,181,226,220,139,235,139,187,251,15,139,251,14,139,94,132,94,126,100,8,60,241,5,130,150,124,143,125,139,112,139,117,116,139
,112,139,127,143,129,146,130,8,236,251,17,5,121,126,119,131,115,139,129,139,129,140,128,142,45,164,132,247,6,139,247,18,8,14,247
,179,239,247,106,239,1,247,45,239,247,123,239,3,247,45,179,21,111,162,117,166,166,162,162,166,30,247,139,225,7,247,56,251,175,5,
148,129,154,135,152,139,166,139,162,162,139,166,139,148,138,147,134,147,8,251,28,247,126,5,237,175,177,236,139,247,3,139,237,251
,15,191,45,147,8,251,56,6,111,117,117,111,31,239,251,156,21,247,106,247,0,7,171,139,171,127,167,123,153,132,156,129,139,126,139,
90,137,86,102,108,117,120,108,135,110,139,8,14,124,239,248,167,239,1,247,45,239,247,118,239,3,247,39,247,45,21,152,41,229,69,245
,139,151,139,152,140,152,141,244,156,219,214,139,247,1,139,247,50,251,37,176,34,193,101,159,101,161,139,196,139,190,199,167,195,
139,8,168,139,167,132,158,123,166,116,139,85,187,139,167,139,161,162,139,166,139,143,138,144,138,143,116,222,66,193,35,139,8,133
,6,251,2,137,40,69,139,32,139,251,45,247,33,100,242,87,180,118,180,117,139,78,139,110,128,109,116,122,115,121,107,129,108,139,86
,139,89,166,131,194,8,136,162,118,159,113,139,8,112,116,116,112,31,14,248,237,239,1,247,205,239,3,247,5,249,31,21,111,162,117,166
,30,247,42,252,197,6,111,162,117,166,166,162,162,166,30,248,197,247,42,7,166,162,162,166,166,117,162,111,31,252,36,6,111,117,117
,111,31,14,126,239,249,6,119,1,247,19,239,247,164,239,3,247,19,247,103,21,139,65,171,67,201,98,181,111,189,130,189,139,189,139,189
,148,181,167,200,180,172,211,139,213,8,248,88,7,166,115,162,113,112,116,117,111,30,252,88,7,62,86,92,56,30,109,139,107,143,114,155
,105,162,124,179,139,180,8,248,88,7,166,116,162,112,112,116,116,112,30,14,249,93,119,1,247,4,249,43,21,247,59,253,16,5,144,120,160
,121,163,139,8,207,6,162,139,159,156,144,159,8,247,61,249,16,5,165,115,163,112,30,115,139,121,122,132,119,8,251,43,252,207,251,44
,248,207,5,134,159,119,156,116,139,8,112,115,116,112,31,14,249,93,119,1,247,5,239,247,191,240,3,247,5,249,43,21,147,251,120,151,
251,102,182,251,88,144,119,158,120,165,139,8,167,6,165,139,155,156,145,158,8,200,247,103,199,251,92,5,147,113,174,118,173,139,163
,139,160,158,143,159,181,247,87,153,247,103,147,247,120,8,141,7,164,115,162,113,113,114,116,112,30,133,251,55,130,251,43,119,251
,35,8,81,247,86,5,133,157,121,157,115,139,8,122,6,115,139,123,124,132,121,8,80,251,96,5,118,247,38,131,247,46,133,247,56,138,165
,118,163,111,139,8,113,115,118,112,31,14,249,93,119,1,247,25,179,21,111,162,117,166,30,159,139,153,151,149,153,8,247,28,247,142,
247,34,251,154,5,149,129,154,135,152,139,166,139,162,162,139,166,139,147,137,148,135,146,8,251,53,247,188,247,47,247,170,5,143,147
,141,147,139,148,139,166,116,162,112,139,119,139,125,126,129,126,8,251,22,251,127,251,30,247,139,5,130,148,125,144,126,139,112,139
,116,117,139,111,139,130,141,131,143,131,8,247,47,251,170,251,53,251,188,5,135,132,137,130,139,131,8,14,249,93,119,1,247,205,239
,3,247,28,249,43,21,139,130,141,131,143,132,8,247,63,251,212,139,251,171,5,111,162,117,166,166,162,162,166,30,139,247,171,247,63
,247,212,5,143,146,141,147,139,148,139,166,116,162,112,139,121,139,119,127,133,124,8,251,25,251,141,251,25,247,141,5,130,154,124
,151,119,139,112,139,116,117,139,111,8,14,140,239,248,136,239,1,247,33,190,21,112,162,116,166,30,247,235,6,166,162,161,167,167,117
,161,111,31,251,153,139,247,163,248,163,5,143,146,141,147,139,147,8,165,116,163,112,30,251,198,6,111,117,116,112,112,162,116,166
,31,247,116,139,251,163,252,163,5,135,132,137,131,139,131,8,14,126,239,248,222,239,1,247,102,239,3,247,102,176,21,112,162,116,166
,30,247,178,6,166,162,162,166,166,116,162,112,31,251,128,248,222,247,128,6,167,161,162,166,166,116,162,112,31,251,178,6,112,116,
116,112,31,14,249,153,119,1,247,65,249,103,21,139,132,140,133,142,133,8,247,172,253,66,5,146,122,158,125,159,139,166,139,162,162
,139,166,139,146,138,145,136,145,8,251,172,249,66,5,132,155,120,154,119,139,112,139,116,117,139,111,8,14,126,239,248,222,239,1,248
,52,239,3,247,22,176,21,112,162,116,166,30,247,178,6,166,162,162,166,31,249,66,7,166,116,162,112,30,251,178,6,112,116,116,112,112
,161,116,167,31,247,128,252,222,251,128,6,112,116,116,112,31,14,247,5,248,53,21,36,10,14,251,128,247,21,1,247,5,251,49,21,110,7,
111,162,117,166,30,248,36,6,166,162,162,166,31,168,7,166,116,162,112,30,252,36,6,112,116,117,111,31,14,248,220,247,78,1,247,151,
247,46,3,247,151,249,100,21,139,129,141,130,144,131,8,199,45,5,149,129,153,134,152,139,166,139,162,162,139,166,139,149,136,148,134
,147,8,79,234,5,132,150,123,142,126,139,112,139,116,117,139,111,8,14,122,240,247,50,236,244,239,1,247,19,239,247,141,239,3,247,19
,247,46,21,139,39,230,75,223,133,145,139,145,138,144,139,202,139,191,165,181,175,8,131,7,111,162,117,166,166,162,162,166,30,247,
202,7,139,194,117,193,99,177,99,176,83,152,84,139,77,139,80,116,89,103,128,131,131,122,139,125,139,111,161,117,167,139,150,139,150
,142,148,146,8,170,164,177,152,179,139,169,139,170,136,161,118,161,119,144,108,142,109,251,66,138,251,67,127,139,251,64,8,239,22
,37,10,14,123,238,247,250,237,247,126,119,1,247,16,239,247,181,239,3,247,16,176,21,112,162,116,166,166,162,161,167,30,143,7,177,
109,184,118,190,134,148,138,148,139,148,139,8,247,48,211,247,28,247,53,31,145,7,138,247,20,68,228,251,1,166,118,144,119,142,120,
139,81,139,89,116,99,107,8,247,131,7,167,116,161,112,112,116,116,112,30,239,252,159,21,247,17,7,161,183,175,178,183,159,159,148,
158,143,157,139,216,139,190,60,141,62,8,131,7,139,62,124,76,91,107,115,123,115,133,116,139,70,139,77,198,115,197,8,14,121,239,247
,248,239,1,247,59,239,247,93,237,3,247,59,247,166,21,139,251,19,170,44,223,94,172,121,172,132,172,139,227,139,217,195,158,215,8,
151,7,166,117,162,112,30,114,139,120,120,134,119,132,112,115,121,112,133,127,136,127,138,129,139,48,139,121,237,139,233,139,205,
153,203,185,161,156,147,162,143,163,139,8,172,139,170,130,147,116,146,118,156,121,163,139,8,167,160,161,167,31,151,7,124,200,84,
176,75,147,124,141,125,140,125,139,251,43,139,74,251,5,139,251,43,8,14,124,235,247,250,239,247,126,119,1,247,5,239,247,180,239,3
,247,5,247,161,21,139,251,36,197,32,247,14,112,159,135,158,137,158,139,197,139,190,158,180,170,140,113,162,117,165,139,8,166,162
,161,167,31,249,66,7,167,116,161,112,112,116,116,112,30,251,130,7,101,167,85,165,79,139,121,139,120,136,120,134,251,5,108,72,45,
139,251,29,8,239,22,139,205,157,189,183,169,164,156,165,146,163,139,207,139,197,83,164,84,8,251,20,7,123,89,99,101,94,121,118,130
,119,135,121,139,53,139,97,234,139,232,8,14,124,237,247,45,239,247,0,239,1,247,19,248,56,3,247,19,247,166,21,139,251,29,195,35,246
,104,164,131,173,134,175,139,8,217,223,162,205,167,116,161,111,31,126,139,127,134,130,130,126,126,123,131,118,136,127,137,127,138
,128,139,45,139,94,202,130,229,8,247,212,6,166,162,162,166,247,40,60,247,2,251,44,31,133,6,251,42,136,54,251,10,139,251,41,8,246
,201,21,156,201,181,185,210,139,226,139,165,99,153,71,8,14,248,69,239,247,29,239,1,247,199,239,3,247,39,248,119,21,112,161,116,167
,30,247,2,139,145,252,32,5,111,162,117,166,166,162,162,166,30,133,248,32,247,14,139,5,166,162,162,166,166,115,162,113,31,251,14,
148,6,139,161,139,171,143,152,151,182,189,157,192,139,8,166,162,162,166,166,116,162,112,251,41,69,61,251,42,31,130,251,2,7,112,116
,116,112,31,14,251,82,239,247,1,239,247,212,239,1,247,8,239,247,163,239,3,247,8,247,161,21,251,28,217,251,6,247,32,30,205,139,187
,161,178,172,8,139,114,139,117,5,139,117,138,117,130,119,121,98,99,127,82,139,110,139,97,139,117,149,113,151,138,177,100,139,112
,139,116,117,139,111,139,132,140,132,142,133,8,170,67,212,121,240,139,247,30,139,229,219,139,247,19,139,153,138,154,137,154,8,248
,61,7,166,116,162,112,30,114,139,116,118,137,114,107,165,99,157,91,143,131,140,131,139,131,139,8,251,42,62,251,10,251,44,31,239,
22,235,175,213,233,30,152,6,208,134,178,77,159,84,8,55,7,108,86,99,78,57,139,8,57,103,211,217,31,14,248,75,239,247,126,119,1,247
,48,239,247,106,239,3,247,48,176,21,111,162,117,166,166,162,162,166,30,247,184,7,166,191,178,197,214,139,8,210,141,70,67,31,139,
127,139,251,141,5,112,162,116,166,166,162,162,166,30,247,141,7,139,182,139,186,129,176,119,210,80,194,55,139,78,139,94,118,104,110
,8,247,126,7,166,116,162,112,112,116,117,111,30,14,248,60,239,242,247,38,18,247,73,247,172,251,34,247,37,36,239,19,224,247,73,248
,110,21,112,162,116,166,30,19,200,38,10,19,224,39,10,19,208,247,30,247,95,21,40,10,14,251,75,242,248,140,239,241,247,38,18,247,102
,247,138,251,29,247,37,251,0,239,19,228,247,45,251,21,21,95,182,129,185,30,163,139,163,142,160,141,195,144,187,188,161,184,157,176
,140,183,139,181,8,139,152,5,19,240,41,10,19,228,235,252,3,6,139,107,139,99,129,118,133,125,118,111,121,138,8,88,137,5,125,139,125
,140,125,139,8,134,6,111,117,117,111,31,19,232,247,58,249,186,21,40,10,14,248,172,119,247,149,119,1,247,65,239,3,247,65,176,21,111
,162,117,166,166,162,162,166,30,247,99,142,7,247,117,251,134,5,148,129,153,134,152,139,166,139,162,162,139,166,139,152,134,151,131
,148,8,251,98,247,113,247,64,247,50,5,149,148,145,152,139,153,139,166,116,162,112,139,126,139,127,133,130,130,8,251,88,251,69,136
,139,139,248,15,5,166,116,162,112,112,116,117,111,30,14,132,239,249,60,119,18,247,145,238,46,239,19,224,247,145,247,120,21,139,68
,147,88,173,94,183,81,204,129,241,139,8,166,162,162,166,166,116,162,112,31,113,139,101,139,125,141,74,148,128,192,139,210,8,19,208
,146,248,130,5,167,116,162,112,111,117,116,111,30,14,248,75,239,1,247,5,239,239,239,239,239,3,20,112,247,5,176,21,111,162,117,166
,166,162,162,166,30,247,170,7,178,165,224,183,30,161,139,146,114,140,121,8,251,251,7,111,162,117,166,166,162,162,166,30,247,170,
7,179,166,223,182,30,161,139,146,114,140,121,8,251,251,7,111,162,117,166,166,162,162,166,30,248,3,7,209,85,204,63,30,99,139,104,
120,113,111,116,167,104,158,98,139,108,139,113,129,117,123,130,153,124,148,122,139,8,112,116,117,111,31,14,248,75,239,1,247,19,239
,247,164,239,3,247,19,176,21,112,162,116,166,166,162,162,166,30,247,158,7,165,203,191,211,225,139,8,230,156,76,49,31,251,141,7,111
,162,117,166,165,163,162,166,30,247,141,7,247,41,81,243,251,42,30,71,139,85,114,97,102,8,148,7,166,116,161,112,112,116,117,112,30
,14,123,239,247,252,239,1,247,5,239,247,192,239,3,247,5,247,155,21,42,10,239,22,43,10,14,251,55,118,247,60,239,247,248,238,1,247
,16,239,247,181,239,3]);fileData1.push.apply(fileData1,[247,16,251,26,21,112,161,116,167,167,161,161,167,30,247,64,7,176,109,185
,118,192,136,8,156,6,247,46,221,247,13,247,44,31,139,247,37,79,238,251,14,169,117,144,119,142,119,139,82,139,90,118,100,107,8,167
,116,161,112,112,116,116,112,30,239,251,172,21,247,10,7,163,192,189,196,207,144,144,139,143,140,143,139,238,139,174,53,139,42,139
,54,107,75,66,120,126,136,127,137,127,139,62,139,96,208,112,192,8,14,251,55,118,247,60,237,247,249,239,1,247,5,239,247,180,239,3
,247,5,247,149,21,139,251,31,203,38,247,9,113,160,134,158,137,158,139,198,139,189,160,178,171,8,251,63,7,112,161,116,167,167,161
,161,167,30,249,0,7,167,116,161,112,112,116,116,112,30,100,171,90,160,82,139,119,139,119,136,117,134,251,15,109,81,40,139,251,37
,8,239,22,139,207,153,202,187,168,164,154,164,146,162,139,210,139,195,78,165,83,8,251,11,7,120,93,103,95,93,120,118,131,120,135,
121,139,55,139,94,225,139,228,8,14,248,75,239,1,247,96,239,247,84,239,3,247,96,176,21,112,162,116,166,166,162,161,167,30,247,116
,7,139,214,183,228,219,150,146,139,146,142,146,139,144,139,145,136,144,139,157,135,152,124,139,121,140,112,161,117,166,139,166,139
,162,162,139,167,8,138,214,81,202,51,139,79,139,91,119,102,106,8,167,117,160,111,112,116,117,112,30,14,123,236,247,255,239,1,247
,51,239,247,112,239,3,247,45,236,21,139,130,140,130,144,131,176,79,203,112,232,139,8,149,6,247,7,142,240,183,139,247,10,139,247,
31,251,40,152,251,3,168,109,147,108,152,139,177,8,190,197,143,185,30,165,6,169,137,173,135,146,111,144,118,159,123,163,139,166,139
,162,162,139,166,139,143,138,143,138,144,121,207,67,175,66,143,8,108,6,32,42,96,251,4,31,139,251,31,247,30,122,247,2,110,169,131
,181,129,139,102,139,91,77,119,79,139,106,139,108,145,118,149,114,151,131,177,103,139,112,139,116,117,139,111,8,14,126,239,247,232
,239,18,247,141,239,44,239,19,224,247,19,248,113,21,112,162,116,166,30,214,139,136,251,118,139,127,5,139,44,162,72,212,111,158,132
,169,134,169,139,8,201,206,158,190,166,116,162,112,31,110,139,114,119,108,139,8,137,6,72,139,185,205,31,142,247,120,247,43,139,5
,166,162,162,166,166,116,162,112,31,19,208,251,41,139,141,240,5,166,117,162,111,111,117,118,110,30,137,38,62,139,5,112,116,116,112
,31,14,123,239,248,88,119,1,247,19,239,247,164,239,3,247,19,247,134,21,139,100,140,100,148,105,163,53,205,81,245,137,8,143,6,207
,139,192,163,180,175,8,132,7,111,162,117,166,165,163,162,166,30,248,85,7,166,115,162,113,112,116,117,111,30,251,151,7,116,71,90,
64,52,139,8,134,6,42,142,128,204,139,244,8,247,121,7,166,115,162,112,113,116,115,113,30,251,121,7,14,248,172,119,1,247,8,248,122
,21,139,133,140,133,141,134,8,247,52,252,85,5,146,120,158,125,160,139,8,213,6,159,139,161,154,144,157,8,247,52,248,85,5,141,144,
140,145,139,145,139,166,116,162,112,139,118,139,118,123,134,121,8,251,40,252,51,135,139,251,40,248,51,5,132,158,122,154,116,139,
112,139,116,117,139,111,8,14,248,172,119,1,247,7,239,247,187,240,3,247,7,248,122,21,194,252,91,5,142,116,160,118,165,139,8,189,6
,162,139,156,155,146,158,8,185,247,51,185,251,51,5,145,120,157,123,163,139,8,188,6,164,139,161,159,141,163,8,195,248,91,139,143,
5,163,114,161,113,30,113,139,119,118,135,116,8,100,251,216,102,247,18,5,133,159,121,155,115,139,8,93,6,116,139,119,123,134,119,8
,102,251,18,99,247,216,5,137,163,117,159,114,139,8,112,115,116,112,31,14,248,172,119,1,247,39,176,21,112,162,116,166,30,152,139,
153,143,148,149,8,247,22,247,77,247,21,251,77,5,148,127,153,137,153,139,165,139,163,162,139,166,139,149,135,149,133,148,8,251,32
,247,92,247,22,247,84,5,144,147,142,149,139,149,139,166,116,162,112,139,126,139,125,134,130,130,8,251,10,251,67,251,10,247,67,5,
132,149,123,143,126,139,112,139,116,117,139,111,139,129,142,129,144,131,8,247,21,251,84,251,32,251,92,5,133,130,136,129,139,129,
8,14,251,75,241,248,253,119,1,247,5,251,23,21,139,114,156,120,161,134,148,137,149,138,148,139,189,139,183,170,157,176,8,247,207,
248,212,5,143,146,141,148,139,148,139,166,116,162,112,139,126,139,124,134,129,130,8,251,49,251,182,251,61,247,182,5,130,148,125,
144,126,139,112,139,116,117,139,111,139,130,141,130,144,132,8,247,84,251,223,251,0,251,90,5,133,127,130,138,129,139,8,123,6,112,
116,117,111,31,14,138,239,247,217,239,1,247,39,188,21,112,161,116,167,30,247,232,6,167,161,162,166,166,116,162,112,31,251,151,139
,247,164,247,194,5,148,148,144,151,139,151,8,179,7,167,117,161,111,30,251,200,6,111,117,117,111,111,162,117,166,31,247,124,139,251
,170,251,200,5,131,130,134,128,139,127,8,14,126,239,247,135,239,247,135,239,1,247,176,239,3,20,224,247,5,248,15,21,111,162,118,166
,30,175,139,181,139,161,117,159,118,140,109,139,111,139,41,161,62,204,100,184,112,220,138,205,139,8,166,162,162,166,166,116,162,
112,31,91,139,68,139,118,152,102,162,137,186,139,198,139,193,127,196,100,178,183,172,146,213,139,196,139,172,139,177,158,164,162
,171,185,141,196,139,8,173,6,167,161,162,166,166,116,162,112,31,251,8,139,64,131,90,72,107,95,132,83,139,84,8,129,7,139,110,138,
108,124,121,118,114,93,139,101,139,8,112,116,116,111,31,14,249,153,119,1,247,205,239,3,247,205,251,3,21,111,161,117,167,167,161,
162,166,30,249,214,7,166,116,162,112,112,116,117,111,30,14,126,239,247,135,239,247,135,239,1,247,233,239,3,20,224,247,5,176,21,111
,162,117,166,30,205,139,220,139,184,167,204,178,160,215,139,238,139,167,140,169,160,160,161,161,181,139,175,139,8,166,162,161,166
,166,116,163,112,31,135,6,102,139,96,139,118,164,122,159,139,176,139,170,139,194,133,195,107,183,90,206,63,147,251,7,139,8,112,116
,117,111,111,161,117,167,31,178,139,196,139,160,132,190,124,149,93,139,77,139,84,146,63,183,106,100,100,127,82,139,85,139,106,139
,101,129,115,120,95,90,136,72,139,8,106,6,112,116,117,111,31,14,248,171,239,125,240,107,159,18,139,238,247,166,238,19,88,247,19,
248,233,21,44,10,19,184,45,10,19,88,46,10,14,247,191,247,37,18,247,182,247,38,251,15,239,19,192,248,216,247,241,21,47,10,162,252
,201,21,33,10,14,247,56,239,247,124,239,1,247,39,239,247,124,239,3,247,118,247,72,21,111,162,117,166,30,152,139,152,144,148,149,
8,190,190,5,172,119,178,127,181,139,180,139,177,150,173,160,8,190,88,5,149,129,152,134,152,139,166,139,162,162,139,166,139,152,134
,152,129,148,8,87,191,5,160,172,151,178,139,180,139,180,126,178,119,172,8,191,191,5,149,148,144,152,139,152,139,166,116,162,112,
139,126,139,126,134,129,129,8,88,88,5,106,159,100,151,98,139,97,139,100,127,106,119,8,88,190,5,130,149,126,144,126,139,112,139,116
,117,139,111,139,126,144,126,148,130,8,191,87,5,119,106,127,100,139,98,139,97,151,101,159,106,8,87,87,5,130,130,134,126,139,126,
8,247,26,247,92,21,203,191,191,203,203,191,87,75,75,84,87,78,75,87,191,203,30,14,247,134,248,24,21,139,32,241,102,238,131,204,134
,247,6,147,139,65,139,75,73,126,78,138,8,133,6,69,139,88,156,119,190,131,157,121,153,118,139,111,139,117,116,139,111,139,133,140
,134,141,133,174,52,217,94,247,12,139,8,147,6,247,10,141,247,1,190,139,247,12,8,144,7,138,184,125,172,115,164,162,165,155,172,139
,179,8,143,7,136,241,50,181,44,148,76,145,35,130,139,212,139,202,204,155,201,139,168,139,166,134,158,126,169,119,139,88,186,139,
165,139,163,163,139,165,8,139,145,138,144,137,144,114,216,66,185,38,139,251,16,139,36,82,139,251,14,139,100,149,109,155,116,110,
110,116,100,139,93,8,239,22,139,163,160,161,158,152,181,126,189,134,189,134,178,136,198,133,139,95,139,112,123,126,122,128,120,144
,118,142,118,141,84,144,251,23,131,139,200,8,14,247,165,247,49,1,247,119,239,211,239,3,248,90,247,215,21,112,161,116,167,167,161
,162,166,30,196,7,166,116,162,112,112,116,116,112,30,247,64,82,21,111,161,117,167,166,162,162,166,30,196,7,166,115,162,113,112,116
,117,111,30,14,139,28,249,67,247,192,247,192,247,192,247,192,247,192,248,86,247,192,247,192,247,192,247,192,247,192,1,28,249,67,
247,192,247,192,247,192,247,192,247,192,248,86,247,192,247,192,247,192,247,192,247,192,3,247,117,4,247,16,240,38,251,16,251,16,38
,38,251,16,251,16,38,240,247,16,247,16,240,240,247,16,31,247,192,4,251,182,251,127,251,127,251,182,251,182,247,127,251,127,247,182
,247,182,247,127,247,127,247,182,247,182,251,127,247,127,251,182,31,135,247,192,21,248,89,248,12,252,4,252,89,252,89,252,12,252,
12,252,89,252,89,252,4,248,12,248,89,248,89,248,4,248,4,248,89,31,247,192,4,252,255,252,138,252,138,252,255,252,255,248,138,252,
146,248,255,248,255,248,146,248,146,248,255,248,255,252,146,248,138,252,255,31,247,192,4,249,165,249,24,253,16,253,165,253,165,253
,24,253,24,253,165,253,165,253,16,249,24,249,165,249,165,249,16,249,16,249,165,31,143,247,192,21,254,74,253,155,253,155,254,74,254
,74,249,155,253,155,250,74,250,74,249,155,249,155,250,74,250,74,253,155,249,155,254,74,31,14,248,159,251,92,251,16,21,247,92,39,
247,92,239,139,247,140,251,92,239,251,92,39,5,14,248,172,239,1,247,146,248,222,21,112,161,116,167,30,248,8,6,166,162,162,166,166
,115,162,113,31,252,8,6,112,116,116,112,31,14,248,137,247,78,1,247,205,247,46,3,249,6,248,187,21,111,162,117,166,30,152,139,153,
144,148,148,8,199,234,5,144,147,142,149,139,148,139,166,116,162,112,139,126,139,125,135,130,129,8,79,44,5,134,131,136,130,139,129
,8,14,251,228,239,239,247,89,1,247,193,239,145,239,3,248,238,150,21,42,7,112,162,116,166,30,142,139,143,139,5,166,161,117,111,112
,116,116,111,31,137,139,136,139,5,111,117,116,112,31,139,112,161,118,165,137,8,146,6,222,207,205,223,31,139,208,94,195,78,157,8,
193,7,167,117,161,111,111,117,116,112,30,14,251,113,239,248,173,247,37,18,247,62,239,159,247,38,251,15,239,210,239,19,236,247,232
,107,21,125,7,146,34,221,69,247,5,139,8,148,6,247,1,143,233,213,139,245,8,150,7,137,165,118,160,112,139,8,111,117,116,112,31,139
,137,139,135,5,83,83,109,84,30,87,139,89,165,138,194,8,143,7,139,186,158,162,165,161,184,177,192,177,139,210,8,222,7,166,116,162
,112,112,116,117,111,30,56,7,139,112,101,116,114,118,8,96,102,102,87,139,64,8,19,244,247,12,248,134,21,47,10,14,247,35,240,47,238
,248,1,247,49,79,119,18,247,5,239,247,192,239,19,44,247,118,249,46,21,48,10,142,253,63,21,111,162,117,166,30,163,139,155,155,146
,159,8,19,76,177,247,18,5,19,156,247,119,130,174,251,9,5,144,119,159,123,161,139,166,139,162,162,139,166,139,144,138,144,138,143
,8,251,78,249,3,5,133,157,121,157,115,139,8,116,6,115,139,123,124,132,121,8,251,78,253,6,5,137,135,139,134,139,134,8,19,76,247,56
,247,103,21,222,247,167,5,19,140,223,251,174,5,205,248,58,21,19,44,48,10,14,140,239,237,239,156,239,247,80,239,1,251,2,178,21,114
,165,115,165,30,163,139,157,157,146,158,8,183,247,64,247,95,139,180,251,52,5,145,118,157,122,164,139,8,247,215,6,166,162,162,166
,166,117,162,111,31,251,177,139,83,247,107,247,233,139,5,167,161,162,166,166,116,162,112,31,252,2,139,90,247,80,248,51,139,5,166
,162,162,166,166,117,162,111,31,252,186,6,115,139,120,122,134,119,8,147,252,4,21,214,247,183,215,251,183,5,14,126,239,248,68,238
,137,247,49,18,247,5,239,47,239,247,175,239,48,239,19,176,247,118,249,46,21,48,10,147,252,56,21,139,251,12,178,46,208,84,172,113
,181,117,198,139,188,139,187,156,176,170,208,195,177,229,139,247,14,139,247,56,63,247,43,251,57,139,116,139,116,136,117,131,8,251
,3,100,76,251,10,139,251,39,8,239,22,241,178,247,6,242,242,177,251,6,37,35,100,251,4,37,30,120,139,124,148,123,142,75,172,111,218
,139,231,8,19,162,247,184,247,255,21,48,10,14,126,239,248,170,239,1,247,10,237,247,186,239,3,247,66,119,21,112,162,116,166,30,157
,139,155,150,148,152,8,191,226,5,175,105,183,119,190,139,247,53,139,224,247,88,140,247,63,8,145,7,139,218,121,218,106,203,8,211,
247,13,5,144,146,141,148,139,148,139,167,117,161,112,139,125,139,126,134,129,130,8,81,44,5,103,172,96,158,87,139,99,139,90,121,109
,115,57,73,95,251,20,139,251,22,139,60,155,59,173,72,8,65,251,15,5,135,131,136,130,139,130,8,247,21,248,10,21,144,7,139,218,161,
222,179,191,157,162,169,164,176,139,171,139,165,124,160,115,8,251,102,251,238,5,128,179,134,181,139,175,8,207,251,119,21,247,102
,247,241,5,150,98,144,96,139,101,139,35,93,251,55,38,139,107,139,113,155,118,163,8,14,126,239,248,222,239,18,247,5,239,39,247,43
,247,89,247,44,39,239,19,228,247,118,247,178,21,251,77,207,251,6,247,74,247,74,207,247,7,247,76,30,247,143,7,166,116,162,112,112
,116,117,111,30,251,143,7,139,103,138,102,130,104,124,77,89,110,64,139,87,139,95,154,115,170,113,173,135,203,139,194,8,247,143,7
,166,116,162,112,112,116,117,111,30,247,78,4,111,161,117,167,30,19,224,189,6,19,208,168,161,161,167,31,19,224,167,116,161,111,30
,89,6,112,116,117,111,31,19,200,247,240,22,112,161,116,167,30,191,6,167,161,162,166,166,116,162,112,31,87,6,112,116,116,112,31,14
,132,239,247,140,247,8,247,105,239,18,247,28,239,247,146,239,62,237,19,248,247,164,176,21,111,162,117,166,166,162,162,166,30,248
,56,7,247,10,146,234,247,12,211,194,105,68,30,139,81,97,92,89,136,114,137,119,118,139,114,8,121,7,112,161,116,165,30,141,139,142
,139,141,139,5,19,244,210,139,172,81,140,72,8,135,7,139,83,118,77,82,138,114,138,116,116,139,113,139,113,164,115,165,139,247,9,142
,195,245,139,247,0,139,218,109,219,79,179,8,19,248,180,175,167,194,139,203,8,142,7,137,247,18,44,216,251,22,139,8,251,76,96,251,
24,251,73,31,14,122,240,247,50,236,244,239,154,247,49,18,247,19,239,139,239,211,239,116,239,19,249,247,146,247,46,21,139,39,230,
75,223,133,145,139,145,138,144,139,202,139,191,165,181,175,8,131,7,111,162,117,166,166,162,162,166,30,247,202,7,139,194,117,193,
99,177,99,176,83,152,84,139,77,139,80,116,89,103,128,131,131,122,139,125,139,111,161,117,167,139,150,139,150,142,148,146,8,170,164
,177,152,179,139,169,139,170,136,161,118,161,119,144,108,142,109,8,251,66,138,251,67,127,139,251,64,8,239,22,37,10,19,244,248,90
,4,49,10,247,64,81,21,50,10,14,124,237,247,45,239,247,0,239,1,103,239,3,67,247,46,21,139,39,230,75,223,133,145,139,145,138,144,139
,203,139,190,166,181,175,8,130,7,111,162,117,166,30,164,139,160,158,143,163,157,125,160,129,162,131,164,131,174,134,175,139,8,217
,224,162,205,166,116,162,111,31,126,139,125,134,129,130,8,137,7,129,125,118,134,122,136,127,137,127,138,128,139,45,139,94,202,130
,229,8,247,211,6,167,161,161,167,247,40,62,247,2,251,45,31,133,6,64,137,81,110,99,92,103,191,71,165,68,139,77,139,78,119,91,100,
127,130,132,125,139,123,139,112,161,116,167,139,150,139,150,142,148,146,8,170,164,177,152,179,139,169,139,170,136,161,118,161,119
,145,108,141,109,251,65,138,251,68,126,139,251,63,8,239,22,214,229,152,229,30,163,139,162,138,161,138,8,99,7,108,89,89,73,64,139
,8,129,6,104,141,91,164,139,182,8,247,248,247,74,21,51,10,14,123,239,247,252,239,154,247,49,1,247,5,239,153,239,210,240,153,239,
3,247,118,247,155,21,42,10,239,22,43,10,153,247,237,21,49,10,247,63,81,21,113,162,116,166,166,163,161,166,30,197,7,166,114,162,113
,113,115,116,112,30,14,123,239,247,252,239,1,247,5,239,247,192,239,3,247,32,116,21,112,162,116,166,30,152,139,152,144,148,149,8,
208,220,5,177,114,185,125,194,139,247,52,139,229,247,15,139,247,48,139,203,124,197,111,185,8,213,227,5,146,148,144,150,139,151,139
,166,117,162,111,139,125,139,127,134,129,130,8,68,57,5,102,164,94,153,85,139,251,55,139,52,251,15,139,251,50,139,76,153,81,167,93
,8,66,52,5,131,130,135,128,139,127,8,247,35,247,178,21,238,187,221,241,30,167,139,163,133,159,128,8,251,101,251,139,5,130,164,135
,167,139,169,8,216,251,54,21,247,101,247,139,5,148,114,144,110,139,108,139,40,92,59,36,139,111,139,114,145,119,150,8,14,123,239,
248,88,119,182,247,49,18,247,19,239,139,239,211,239,139,239,19,242,247,146,247,134,21,139,100,140,100,148,105,163,53,205,81,245,
137,8,143,6,207,139,192,163,180,176,8,131,7,111,162,117,166,165,163,162,166,30,248,85,7,166,115,162,113,112,116,117,111,30,251,151
,7,116,71,90,64,52,139,8,134,6,42,142,128,204,139,244,8,247,121,7,166,115,162,112,113,116,115,113,30,251,121,7,239,247,243,21,49
,10,247,64,81,21,50,10,14,248,60,239,18,247,73,247,172,39,239,19,192,247,254,248,110,21,112,162,116,166,30,19,160,38,10,19,192,39
,10,14,126,239,53,239,247,107,239,247,77,239,59,239,18,58,239,247,186,239,19,166,251,54,247,246,21,140,251,63,226,251,88,247,51,
139,198,139,189,166,177,182,8,133,7,19,118,111,162,117,166,30,247,235,6,166,162,162,166,166,117,162,111,31,251,185,247,107,247,136
,6,167,160,161,167,166,117,162,112,31,251,136,247,77,247,185,6,166,162,162,166,166,117,162,111,31,251,235,6,111,139,119,119,137,
112,8,19,174,100,180,90,165,80,139,8,251,60,60,251,83,251,63,31,239,134,21,145,7,139,217,157,223,181,189,162,166,165,161,177,139
,240,139,184,251,41,140,251,3,8,132,7,138,35,95,251,55,37,139,37,139,95,247,55,138,243,8,14,123,239,247,44,239,247,0,239,1,52,239
,3,251,66,247,155,21,251,50,228,251,13,247,53,30,229,139,206,177,182,201,165,98,177,110,187,123,163,131,174,134,175,139,8,218,224
,162,205,166,116,162,111,31,126,139,124,135,130,129,127,125,123,132,119,136,127,137,127,138,128,139,45,139,94,202,130,229,8,247,
211,6,167,161,161,167,247,40,62,247,2,251,45,31,133,6,54,137,76,102,99,80,97,199,72,177,51,139,8,251,55,52,251,15,251,50,31,239,
22,238,187,221,241,240,188,58,39,40,91,59,37,37,91,219,238,30,248,43,212,21,51,10,14,251,71,239,248,139,239,18,247,102,247,138,39
,239,19,208,247,198,251,21,21,111,162,117,166,30,177,139,209,139,145,141,239,162,178,229,139,247,13,8,19,224,41,10,19,208,235,252
,3,6,139,107,139,99,129,117,122,101,106,134,97,139,123,139,122,140,121,139,8,111,117,117,111,31,14,247,5,248,53,21,36,10,14,248,
196,118,1,247,118,250,12,21,139,130,142,129,144,131,8,247,97,251,201,5,149,130,153,135,152,139,152,139,152,143,148,139,8,247,94,
247,195,5,146,149,145,150,139,151,139,166,117,162,111,139,126,139,127,133,129,130,8,251,57,251,73,251,57,247,74,5,130,149,126,143
,126,139,8,111,117,117,111,31,14,249,33,239,1,247,5,239,247,192,239,3,247,118,250,9,21,149,251,23,247,1,38,247,23,139,247,23,139
,247,1,240,149,247,23,8,142,7,166,117,162,111,30,112,139,118,119,137,113,133,61,74,78,60,139,60,139,74,200,133,217,137,164,118,160
,112,139,8,111,117,117,111,31,14,248,112,247,37,1,247,182,247,38,3,248,216,248,162,21,47,10,14,248,171,239,125,240,127,119,18,139
,238,247,166,238,19,88,247,19,248,233,21,44,10,19,184,45,10,19,88,46,10,14,161,118,248,128,247,112,39,239,18,247,33,239,247,164,
239,19,184,247,174,190,21,112,162,116,166,166,162,161,167,30,248,198,247,164,69,7,19,216,111,161,117,167,167,161,162,166,30,247,
12,7,166,116,162,112,30,19,184,252,8,6,112,116,116,112,31,14,126,239,247,109,239,247,109,239,1,247,8,239,179,247,106,179,239,3,20
,252,247,124,247,246,21,35,10,239,135,21,144,7,139,236,170,236,198,186,154,151,160,148,160,139,8,243,182,251,47,251,4,35,93,251,
55,38,31,37,139,95,247,55,138,243,8,179,22,111,162,117,166,30,247,6,6,166,162,162,166,166,117,162,111,31,251,6,6,111,117,117,111
,31,14,249,87,119,1,247,33,247,50,247,20,247,49,3,247,174,179,21,112,162,116,166,30,197,6,166,162,162,166,31,139,154,132,153,127
,148,8,222,247,249,222,251,249,5,127,130,132,125,139,124,8,112,162,116,166,30,196,6,166,162,161,167,31,139,163,122,157,117,145,8
,251,25,248,216,5,134,160,120,157,114,139,116,139,118,122,134,117,8,251,28,252,216,5,118,133,123,119,139,117,8,14,140,239,247,107
,239,247,77,239,1,247,140,190,21,52,10,248,236,4,52,10,199,251,177,21,112,161,116,167,30,247,149,6,167,161,161,167,167,116,161,112
,31,251,149,6,112,116,116,112,31,14,248,249,239,1,247,33,239,247,135,239,3,247,118,249,43,21,139,119,150,122,156,131,8,252,214,7
,112,162,116,166,166,162,161,167,30,248,209,247,135,252,209,7,112,162,116,166,166,162,161,167,30,248,214,7,156,147,151,156,139,159
,8,166,116,162,112,30,252,36,6,112,116,117,111,31,14,140,239,39,247,21,248,79,247,20,39,239,18,19,128,247,210,190,21,111,162,117
,166,30,19,64,247,234,6,166,162,161,167,31,168,7,167,116,161,112,30,19,144,120,139,121,127,131,122,8,251,118,139,226,247,125,5,141
,144,140,145,139,145,139,145,138,145,139,145,8,52,247,124,247,118,139,5,19,32,147,123,156,127,159,139,8,167,161,161,167,31,167,7
,167,117,161,111,30,19,144,251,234,6,111,117,117,111,31,139,133,140,133,141,134,8,244,251,175,34,251,174,5,137,133,138,133,139,133
,8,14,248,216,237,1,247,205,239,3,247,204,248,207,21,111,162,117,166,30,152,139,152,145,148,148,152,152,139,170,161,139,8,144,6,
165,134,145,107,139,110,8,252,113,7,111,162,117,166,166,162,162,166,30,248,113,7,139,168,145,170,165,145,8,143,6,150,139,148,132
,141,128,143,117,159,120,164,139,8,166,161,162,166,31,148,7,128,202,86,174,84,139,108,139,108,128,114,116,114,162,108,150,108,139
,84,139,85,104,128,76,8,14,127,242,18,247,5,239,210,247,49,251,20,239,239,239,19,216,247,118,247,155,21,139,251,32,210,251,4,247
,21,116,8,110,7,19,232,122,131,127,122,139,119,8,112,162,116,166,30,196,6,166,162,161,167,31,19,216,139,159,128,156,122,147,8,168
,7,247,20,162,211,247,5,139,247,31,139,247,32,66,247,5,251,19,163,8,168,7,19,232,155,147,151,156,139,159,8,167,117,161,111,30,82
,6,111,117,116,112,31,19,216,139,120,151,121,156,131,8,110,7,251,19,112,66,36,139,251,39,8,239,22,139,204,161,199,181,169,149,146
,152,143,152,144,8,251,235,7,71,161,107,208,139,220,8,247,92,251,64,21,247,237,7,206,117,172,70,139,57,139,58,107,70,71,117,8,14
,247,205,239,196,239,3,247,204,248,207,21,147,251,38,5,152,251,52,142,251,121,247,25,95,8,90,7,111,162,117,166,166,162,162,166,30
,188,7,235,174,170,247,28,151,247,10,8,157,247,182,139,142,5,165,116,160,112,30,112,139,118,118,137,113,134,42,133,45,130,46,135
,91,133,58,112,94,8,248,106,7,166,116,162,112,112,116,117,111,30,252,106,7,112,183,133,220,135,188,131,232,132,233,134,236,137,165
,118,160,112,139,8,111,117,117,111,31,14,249,101,239,18,247,6,238,125,247,20,211,247,20,126,235,19,192,247,120,248,201,21,139,107
,143,106,146,104,165,251,24,169,251,23,173,251,22,8,19,160,129,130,133,125,139,124,8,111,162,117,166,30,167,6,166,162,162,166,31
,139,144,138,144,138,143,100,247,36,105,247,37,110,247,39,8,19,200,134,165,134,165,139,166,8,145,7,141,225,200,205,226,139,232,139
,197,66,139,48,139,117,135,115,132,116,8,19,144,35,252,78,139,127,5,111,162,117,166,30,167,6,166,162,162,166,31,139,154,132,152,
128,149,8,230,248,26,5,19,200,146,169,142,168,139,167,139,247,43,44,247,13,251,44,139,72,139,74,115,92,91,8,89,89,119,77,139,67,
8,14,249,81,119,1,247,205,239,3,247,232,248,145,21,112,161,116,167,30,152,139,152,144,148,148,8,197,196,139,252,126,5,111,162,117
,166,166,162,162,166,30,139,248,126,196,82,5,149,130,151,134,153,139,167,139,161,162,139,166,139,152,133,151,130,149,8,251,35,247
,35,5,130,148,126,144,126,139,124,139,127,134,130,139,8,251,34,251,35,5,129,129,134,127,139,126,8,14,249,81,119,1,247,205,239,3,
247,232,247,75,21,139,126,144,126,149,129,8,247,34,251,34,5,149,129,152,134,152,139,152,139,152,144,148,139,8,247,35,247,34,5,148
,149,145,152,139,152,139,166,116,162,112,139,125,139,127,134,129,129,8,82,82,139,248,126,5,166,117,162,111,111,117,117,111,30,139
,252,126,81,196,5,130,149,126,144,126,139,8,112,116,116,112,31,14,129,239,248,253,119,1,247,172,179,21,114,162,114,167,30,247,235
,6,166,163,162,166,31,251,66,249,10,5,133,159,119,156,117,139,117,139,117,123,134,118,8,83,252,216,21,244,248,16,244,252,16,5,14
,247,17,4,247,142,251,17,247,142,247,17,139,247,142,251,142,247,17,251,142,251,17,5,14,14,248,137,247,78,1,247,205,239,3,249,6,248
,187,21,111,162,117,166,166,162,162,166,30,225,7,166,116,162,112,112,116,117,111,30,14,248,137,247,78,1,247,151,247,46,3,248,154
,249,17,21,139,130,141,129,144,131,8,200,45,5,149,130,152,133,152,139,166,139,162,162,139,166,139,149,136,148,134,147,8,79,234,5
,132,150,123,142,126,139,112,139,116,117,139,111,8,14,248,232,247,66,1,247,111,239,227,239,3,248,74,249,26,21,111,161,117,167,167
,161,162,166,30,213,7,166,116,162,112,112,116,117,111,30,247,80,65,21,112,161,116,167,167,161,162,166,30,213,7,166,116,162,112,112
,116,116,112,30,14,146,239,3,153,68,21,112,161,116,167,167,161,162,166,30,249,94,7,166,116,162,112,112,116,116,112,30,14,249,103
,20,139,21,121,156,248,173,147,247,49,159,188,142,6,251,76,140,7,30,10,3,150,37,255,12,9,155,12,10,239,10,239,167,157,150,156,145
,145,150,162,239,12,12,239,11,239,167,157,147,143,155,173,145,168,247,3,12,13,30,10,6,255,12,18,28,0,70,19,0,21,2,0,1,0,28,0,50,
0,79,0,124,0,195,0,226,0,241,1,2,1,29,1,50,1,80,1,98,1,129,1,180,1,194,1,221,1,242,2,7,2,28,2,42,2,68,112,162,116,166,30,185,6,166
,162,162,166,31,185,7,166,116,162,112,30,93,6,112,116,116,112,31,11,111,161,117,167,167,161,162,166,30,248,27,7,166,116,162,112,
112,116,117,111,30,11,111,161,117,167,30,247,0,6,167,161,162,166,31,219,7,166,116,162,112,30,251,0,6,112,116,117,111,31,11,140,251
,63,226,251,88,247,51,139,247,53,139,224,247,88,140,247,63,8,142,7,247,70,51,247,78,251,51,30,99,139,90,122,109,114,59,74,91,251
,14,139,251,26,8,11,111,162,117,166,30,152,139,152,144,148,149,8,247,56,247,66,247,57,251,66,5,149,129,152,134,152,139,166,139,162
,162,139,166,139,149,136,149,133,147,8,251,97,247,200,5,131,150,123,142,126,139,126,139,126,135,129,139,8,251,97,251,200,5,134,131
,136,129,139,129,8,11,214,229,152,229,30,163,139,162,138,161,138,8,99,7,107,87,87,75,64,139,8,131,6,105,141,91,164,139,182,8,11,
247,22,252,23,6,112,162,116,166,166,162,161,167,30,11,248,73,7,167,117,161,111,30,251,72,6,111,117,116,112,31,11,111,162,117,166
,30,184,6,166,162,161,167,31,185,7,167,116,161,112,30,94,6,112,116,117,111,31,11,248,53,7,166,117,162,111,30,251,38,6,111,117,116
,112,112,162,116,166,31,11,251,50,228,251,13,247,53,247,52,229,247,15,247,48,247,50,47,247,15,251,50,251,55,52,251,15,251,50,30,
11,238,187,221,241,240,188,58,39,40,92,59,36,36,92,219,238,30,11,112,162,116,166,30,163,139,160,157,143,161,145,164,153,148,155,
139,163,139,168,121,157,125,172,114,175,115,181,135,8,11,144,139,143,138,144,139,206,139,198,187,152,206,140,142,140,143,139,142
,139,166,115,162,113,139,116,139,117,121,135,117,134,113,126,130,122,139,8,115,139,109,158,121,153,106,164,102,163,98,143,8,11,134
,139,135,140,134,139,72,139,79,91,125,72,8,11,112,161,116,167,30,185,6,167,161,162,166,31,184,7,166,117,162,111,30,93,6,111,117,
116,112,31,11,111,161,117,167,167,161,162,166,30,196,7,166,116,162,112,112,116,117,111,30,11,113,162,116,166,166,162,162,165,30,
197,7,166,116,162,112,112,116,116,112,30,11,112,161,117,167,166,162,162,165,30,197,7,166,115,162,113,112,116,117,111,30,11,155,201
,181,185,209,139,226,139,167,99,154,71,8,11,112,162,116,166,30,248,13,6,166,162,161,167,167,117,161,111,31,252,13,6,111,117,116,
112,31,11,0,0,0,0,1,0,0,0,14,0,0,0,24,0,0,0,0,0,2,0,1,0,1,0,144,0,1,0,4,0,0,0,2,0,0,0,1,0,0,0,10,0,64,0,142,0,2,68,70,76,84,0,14
,108,97,116,110,0,34,0,4,0,0,0,0,255,255,0,5,0,0,0,1,0,2,0,3,0,4,0,4,0,0,0,0,255,255,0,5,0,0,0,1,0,2,0,3,0,4,0,5,97,97,108,116,0
,32,115,115,48,49,0,38,115,115,48,50,0,44,115,115,48,51,0,50,115,115,48,52,0,56,0,0,0,1,0,0,0,24,0,1,0,1,0,22,0,1,0,2,0,20,0,1,0
,3,0,18,0,1,0,4,0,0,1,0,0,0,1,1,0,0,1,2,0,0,1,3,0,5,0,12,0,20,0,28,0,36,0,44,0,3,0,0,0,1,0,40,0,1,0,0,0,1,0,82,0,1,0,0,0,1,0,86,
0,1,0,0,0,1,0,90,0,1,0,0,0,1,0,94,0,1,0,38,0,4,0,14,0,20,0,26,0,32,0,2,0,3,0,143,0,2,0,8,0,141,0,2,0,65,0,142,0,2,0,93,0,144,0,1
,0,4,0,3,0,8,0,65,0,93,0,1,0,6,0,77,0,1,0,1,0,65,0,1,0,6,0,140,0,1,0,1,0,3,0,1,0,6,0,133,0,1,0,1,0,8,0,1,0,6,0,51,0,1,0,1,0,93,0
,1,0,0,0,10,0,44,0,46,0,2,68,70,76,84,0,14,108,97,116,110,0,24,0,4,0,0,0,0,255,255,0,0,0,4,0,0,0,0,255,255,0,0,0,0,0,0,0,0,0,1,0
,0,0,0,204,61,162,207,0,0,0,0,204,138,51,83,0,0,0,0,211,135,133,166,2,211,0,0,2,211,0,0,2,211,1,34,2,211,0,161,2,211,0,113,2,211
,0,113,2,211,0,113,2,211,0,113,2,211,1,20,2,211,1,0,2,211,0,181,2,211,0,113,2,211,0,113,2,211,0,159,2,211,0,113,2,211,0,241,2,211
,0,173,2,211,0,113,2,211,0,144,2,211,0,130,2,211,0,113,2,211,0,113,2,211,0,139,2,211,0,113,2,211,0,113,2,211,0,113,2,211,0,113,2
,211,1,3,2,211,0,156,2,211,0,113,2,211,0,113,2,211,0,113,2,211,0,141,2,211,0,113,2,211,0,119,2,211,0,113,2,211,0,161,2,211,0,164
,2,211,0,159,2,211,0,210,2,211,0,121,2,211,0,141,2,211,0,170,2,211,0,130,2,211,0,127,2,211,0,141,2,211,0,113,2,211,0,127,2,211,0
,116,2,211,0,141,2,211,0,115,2,211,0,153,2,211,0,147,2,211,0,113,2,211,0,127,2,211,0,112,2,211,0,113,2,211,0,133,2,211,0,136,2,211
,0,141,2,211,0,210,2,211,0,173,2,211,0,130,2,211,0,113,2,211,0,113,2,211,1,3,2,211,0,127,2,211,0,124,2,211,0,167,2,211,0,113,2,211
,0,127,2,211,0,147,2,211,0,116,2,211,0,156,2,211,0,181,2,211,0,153,2,211,0,173,2,211,0,253,2,211,0,113,2,211,0,127,2,211,0,113,2
,211,0,124,2,211,0,113,2,211,0,204,2,211,0,153,2,211,0,127,2,211,0,127,2,211,0,116,2,211,0,115,2,211,0,147,2,211,0,113,2,211,0,147
,2,211,0,113,2,211,1,57,2,211,0,113,2,211,0,127,2,211,2,68,2,211,0,226,2,211,0,242,2,211,1,198,0,0,249,67,2,11,255,56,2,211,0,254
,2,114,2,90,1,84,0,226,255,146,0,226,0,174,0,226,1,16,0,254,255,184,0,226,0,140,0,254,1,106,255,94,255,82,1,50,0,113,0,226,0,226
,2,68,0,127,1,26,0,232,1,26,0,248,0,226,1,62,1,56,0,226,1,56,0,228,1,84,1,84,1,24,0,0,0,0,2,114,2,6,1,182,0,14]);Module["FS_createDataFile
"]("/","OCRB.otf",fileData1,true,true)}if(Module["calledRun"]){runWithFS()}else{if(!Module[
x22;preRun"])Module["preRun"]=[];Module["preRun"].push(runWithFS)}});loadPackage({"files":[]})}))();
var Module;if(!Module)Module=(typeof Module!=="undefined"?Module:null)||{};var moduleOverrides={};for(var key in Module
){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;
var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"
;]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER
=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"
;]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("The provided Module['ENVIRONMENT'] value
is not valid. It must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER
=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require===
x22;function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&
;&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["
;print"]=console.log;if(!Module["printErr"])Module["printErr"]=console.warn;var nodeFS;var nodePath;Module
["read"]=function read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("
path");filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);if(!ret&
x26;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){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(
ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process
["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function read(){throw"no read() available (jsc?)"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}}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};Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response)}else{onerror()}};xhr.onerror=onerror;xhr.send(null)};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.warn(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&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"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var Runtime={setTempRet0:(function(value){tempRet0=value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),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}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)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),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}),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[sig]){Runtime.funcWrappers[sig]={}}var sigCache=Runtime.funcWrappers[sig];if(!sigCache[func]){sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func,arguments)}}return sigCache[func]}),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+15&-16;return ret}),staticAlloc:(function(size){var ret=STATICTOP;STATICTOP=STATICTOP+size|0;STATICTOP=STATICTOP+15&-16;return ret}),dynamicAlloc:(function(size){var ret=DYNAMICTOP;DYNAMICTOP=DYNAMICTOP+size|0;DYNAMICTOP=DYNAMICTOP+15&-16;if(DYNAMICTOP>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){DYNAMICTOP=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module["Runtime"]=Runtime;var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];if(!func){try{func=eval("_"+ident)}catch(e){}}assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)");return func}var cwrap,ccall;((function(){var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"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){ret=Runtime.stackAlloc((str.length<<2)+1);writeStringToMemory(str,ret)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;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){if(opts&&opts.async){EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(stack)}));return}Runtime.stackRestore(stack)}return ret};var sourceRegex=/^function\s*[a-zA-Z$_0-9]*\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/;function parseJSFunc(jsfunc){var parsed=jsfunc.toString().match(sourceRegex).slice(1);return{arguments:parsed[0],body:parsed[1],returnValue:parsed[2]}}var JSsource=null;function ensureJSsource(){if(!JSsource){JSsource={};for(var fun in JSfuncs){if(JSfuncs.hasOwnProperty(fun)){JSsource[fun]=parseJSFunc(JSfuncs[fun])}}}}cwrap=function cwrap(ident,returnType,argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident);var numericArgs=argTypes.every((function(type){return type==="number"}));var numericRet=returnType!=="string";if(numericRet&&numericArgs){return cfunc}var argNames=argTypes.map((function(x,i){return"$"+i}));var funcstr="(function("+argNames.join(",")+") {";var nargs=argTypes.length;if(!numericArgs){ensureJSsource();funcstr+="var stack = "+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"];funcstr+="var "+convertCode.arguments+" = "+arg+";";funcstr+=convertCode.body+";";funcstr+=arg+"=("+convertCode.returnValue+");"}}var cfuncname=parseJSFunc((function(){return cfunc})).returnValue;funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");";if(!numericRet){var strgfy=parseJSFunc((function(){return Pointer_stringify})).returnValue;funcstr+="ret = "+strgfy+"(ret);"}if(!numericArgs){ensureJSsource();funcstr+=JSsource["stackRestore"].body.replace("()","(stack)")+";"}funcstr+="return ret})";return eval(funcstr)}}))();Module["ccall"]=ccall;Module["cwrap"]=cwrap;function setValue(ptr,value,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";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?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}Module["setValue"]=setValue;function getValue(ptr,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";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;var ALLOC_STACK=1;var ALLOC_STATIC=2;var ALLOC_DYNAMIC=3;var ALLOC_NONE=4;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;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:Runtime.staticAlloc,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";setValue(ret+i,curr,type);if(previousType!==type){typeSize=Runtime.getNativeTypeSize(type);previousType=type}i+=typeSize}return ret}Module["allocate"]=allocate;function getMemory(size){if(!staticSealed)return Runtime.staticAlloc(size);if(typeof _sbrk!=="undefined"&&!_sbrk.called||!runtimeInitialized)return Runtime.dynamicAlloc(size);return _malloc(size)}Module["getMemory"]=getMemory;function Pointer_stringify(ptr,length){if(length===0||!ptr)return"";var hasUtf=0;var t;var i=0;while(1){t=HEAPU8[ptr+i>>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module["UTF8ToString"](ptr)}Module["Pointer_stringify"]=Pointer_stringify;function AsciiToString(ptr){var str="";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module["AsciiToString"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module["stringToAscii"]=stringToAscii;function UTF8ArrayToString(u8Array,idx){var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}Module["UTF8ArrayToString"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module["UTF8ToString"]=UTF8ToString;function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}Module["stringToUTF8Array"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}Module["stringToUTF8"]=stringToUTF8;function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}Module["lengthBytesUTF8"]=lengthBytesUTF8;function demangle(func){var hasLibcxxabi=!!Module["___cxa_demangle"];if(hasLibcxxabi){try{var buf=_malloc(func.length);writeStringToMemory(func.substr(1),buf);var status=_malloc(4);var ret=Module["___cxa_demangle"](buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){return func}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}}Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");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 jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module["stackTrace"]=stackTrace;var PAGE_SIZE=4096;function alignMemoryPage(x){if(x%4096>0){x+=4096-x%4096}return x}var HEAP;var buffer;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE=0,STATICTOP=0,staticSealed=false;var STACK_BASE=0,STACKTOP=0,STACK_MAX=0;var DYNAMIC_BASE=0,DYNAMICTOP=0;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;var totalMemory=64*1024;while(totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK){if(totalMemory<16*1024*1024){totalMemory*=2}else{totalMemory+=16*1024*1024}}if(totalMemory!==TOTAL_MEMORY){TOTAL_MEMORY=totalMemory}if(Module["buffer"]){buffer=Module["buffer"]}else{buffer=new ArrayBuffer(TOTAL_MEMORY)}updateGlobalBufferViews();HEAP32[0]=255;if(HEAPU8[0]!==255||HEAPU8[3]!==0)throw"Typed arrays 2 must be run on a little-endian system";Module["HEAP"]=HEAP;Module["buffer"]=buffer;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__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}Module["addOnPreRun"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}Module["intArrayToString"]=intArrayToString;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++>>0]=array[i]}}Module["writeArrayToMemory"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}Module["writeAsciiToMemory"]=writeAsciiToMemory;if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];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;var Math_clz32=Math.clz32;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}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()}}}Module["removeRunDependency"]=removeRunDependency;Module["preloadedImages"]={};Module["preloadedAudios"]={};var ASM_CONSTS=[];STATIC_BASE=8;STATICTOP=STATIC_BASE+75136;__ATINIT__.push();allocate([90,0,0,0,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,1,0,0,124,2,0,0,68,11,0,0,80,15,0,0,116,15,0,0,188,15,0,0,100,16,0,0,160,16,0,0,220,16,0,0,216,19,0,0,24,20,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,8,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,89,111,63,0,0,0,45,0,167,144,26,0,71,9,14,0,1,32,7,0,139,147,3,0,56,202,1,0,42,229,0,0,151,114,0,0,76,57,0,0,166,28,0,0,83,14,0,0,41,7,0,0,149,3,0,0,202,1,0,0,229,0,0,0,115,0,0,0,57,0,0,0,29,0,0,0,14,0,0,0,7,0,0,0,4,0,0,0,2,0,0,0,1,0,0,0,1,5,0,0,84,0,0,0,249,40,0,0,0,0,1,0,0,0,2,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,56,3,0,0,48,1,0,0,160,0,0,0,10,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,11,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,12,0,0,0,2,0,0,0,3,0,0,0,213,43,0,0,2,41,0,0,11,41,0,0,164,1,0,0,49,41,0,0,184,1,0,0,65,41,0,0,188,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,4,0,0,0,88,240,188,5,228,2,0,0,241,59,35,40,196,135,0,0,234,161,68,163,225,1,0,0,88,240,188,5,228,2,0,0,241,59,35,40,196,135,0,0,235,161,68,163,225,1,0,0,212,234,229,17,80,3,0,0,59,202,48,90,99,144,0,0,2,38,164,19,126,0,0,0,252,255,251,255,8,0,0,0,184,72,158,156,162,190,0,0,18,1,2,112,8,0,0,0,252,255,251,255,8,0,0,0,131,4,90,10,57,124,1,0,18,1,2,112,8,0,0,0,0,0,0,0,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,0,1,0,0,0,64,0,0,0,1,0,0,0,1,0,0,0,68,0,0,0,0,0,0,0,0,0,0,0,9,0,3,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,1,5,0,0,44,0,0,0,209,43,0,0,0,0,1,0,0,0,2,0,0,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,56,3,0,0,48,0,0,0,172,0,0,0,13,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,11,0,0,0,1,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,6,0,0,0,7,0,0,0,213,43,0,0,230,43,0,0,234,43,0,0,28,3,0,0,92,44,0,0,44,3,0,0,113,44,0,0,48,3,0,0,162,44,0,0,56,3,0,0,250,43,0,0,140,3,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,10,0,0,0,20,0,0,0,9,0,0,0,8,0,0,0,11,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,10,0,0,0,9,0,0,0,13,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,15,0,0,0,5,0,0,0,4,0,0,0,0,16,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,16,0,0,4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,17,0,0,8,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,2,16,0,0,12,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,16,0,0,16,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,16,0,0,20,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,1,17,0,0,24,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,17,0,0,28,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,17,0,0,32,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,17,0,0,36,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,17,0,0,40,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,6,17,0,0,44,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,7,17,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,13,16,0,0,76,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,5,16,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,17,0,0,96,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,15,16,0,0,100,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,16,16,0,0,104,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,17,16,0,0,108,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,18,16,0,0,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,20,17,0,0,120,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,21,17,0,0,124,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,30,17,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,31,17,0,0,140,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,17,0,0,144,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,33,17,0,0,148,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,34,17,0,0,152,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,35,17,0,0,156,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,36,17,0,0,160,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,37,17,0,0,164,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,38,17,0,0,168,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,6,32,0,0,4,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,6,0,0,0,7,32,0,0,60,0,0,0,4,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,6,0,0,0,8,32,0,0,100,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,2,0,0,0,6,0,0,0,9,32,0,0,156,0,0,0,4,0,0,0,0,0,0,0,10,0,0,0,3,0,0,0,3,0,0,0,9,33,0,0,196,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,33,0,0,200,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,33,0,0,204,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,32,0,0,208,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,32,0,0,212,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,12,33,0,0,220,0,0,0,4,0,0,0,0,0,0,0,13,0,0,0,216,0,0,0,6,0,0,0,13,33,0,0,16,1,0,0,4,0,0,0,0,0,0,0,13,0,0,0,217,0,0,0,5,0,0,0,14,33,0,0,68,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,15,33,0,0,72,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,16,33,0,0,76,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,17,33,0,0,80,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,18,33,0,0,84,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,19,33,0,0,88,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,19,32,0,0,92,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,20,32,0,0,96,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,21,32,0,0,100,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5,0,202,154,59,24,0,0,0,16,0,0,0,0,0,0,0,17,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,19,0,0,0,20,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,21,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,23,0,0,0,24,0,0,0,56,0,0,0,25,0,0,0,0,0,0,0,26,0,0,0,27,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,28,0,0,0,29,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,30,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,32,0,0,0,33,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,34,0,0,0,35,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,36,0,0,0,37,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,38,0,0,0,39,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,40,0,0,0,41,0,0,0,44,0,0,0,42,0,0,0,0,0,0,0,43,0,0,0,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,45,0,0,0,46,0,0,0,44,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,50,0,0,0,51,0,0,0,40,0,0,0,52,0,0,0,10,0,0,0,53,0,0,0,54,0,0,0,7,0,0,0,6,0,0,0,55,0,0,0,7,0,0,0,8,0,0,0,14,0,0,0,56,0,0,0,57,0,0,0,0,0,0,0,20,0,0,0,76,44,0,0,0,0,1,0,0,0,2,0,104,11,0,0,0,0,0,0,0,0,0,0,58,0,0,0,8,0,0,0,15,0,0,0,16,0,0,0,11,0,0,0,58,0,0,0,17,0,0,0,9,0,0,0,9,0,0,0,59,0,0,0,10,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,12,0,0,0,65,0,0,0,13,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,10,0,0,0,70,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,14,0,0,0,12,0,0,0,15,0,0,0,13,0,0,0,71,0,0,0,14,0,0,0,72,0,0,0,15,0,0,0,73,0,0,0,16,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,112,9,0,0,164,9,0,0,216,9,0,0,12,10,0,0,64,10,0,0,116,10,0,0,168,10,0,0,220,10,0,0,16,11,0,0,0,0,0,0,2,0,0,0,255,255,255,255,99,105,110,117,0,0,0,0,255,255,255,255,99,105,110,117,1,0,0,0,0,0,0,0,110,109,114,97,3,0,0,0,0,0,0,0,98,109,121,115,3,0,0,0,10,0,0,0,99,105,110,117,3,0,0,0,1,0,0,0,99,105,110,117,3,0,0,0,2,0,0,0,115,105,106,115,3,0,0,0,3,0,0,0,32,32,98,103,3,0,0,0,4,0,0,0,53,103,105,98,3,0,0,0,5,0,0,0,115,110,97,119,3,0,0,0,6,0,0,0,97,104,111,106,81,44,0,0,228,12,0,0,92,44,0,0,240,12,0,0,113,44,0,0,244,12,0,0,124,44,0,0,252,12,0,0,162,44,0,0,4,13,0,0,0,0,0,0,0,0,0,0,17,0,0,0,74,0,0,0,19,0,0,0,15,0,0,0,11,0,0,0,75,0,0,0,18,0,0,0,19,0,0,0,76,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,77,0,0,0,78,0,0,0,1,0,0,0,72,13,0,0,64,3,0,0,79,0,0,0,1,0,0,0,0,0,0,0,80,0,0,0,20,0,0,0,32,0,0,0,127,0,0,0,160,0,0,0,255,0,0,0,0,1,0,0,127,1,0,0,128,1,0,0,79,2,0,0,80,2,0,0,175,2,0,0,176,2,0,0,255,2,0,0,0,3,0,0,111,3,0,0,112,3,0,0,255,3,0,0,0,4,0,0,255,4,0,0,0,5,0,0,47,5,0,0,0,29,0,0,127,29,0,0,128,29,0,0,191,29,0,0,192,29,0,0,255,29,0,0,0,30,0,0,255,30,0,0,0,31,0,0,255,31,0,0,0,32,0,0,111,32,0,0,112,32,0,0,159,32,0,0,160,32,0,0,207,32,0,0,80,33,0,0,143,33,0,0,96,36,0,0,255,36,0,0,96,44,0,0,127,44,0,0,224,45,0,0,255,45,0,0,64,166,0,0,159,166,0,0,32,167,0,0,255,167,0,0,0,251,0,0,6,251,0,0,0,212,1,0,255,215,1,0,0,0,0,0,0,0,0,0,99,105,110,117,110,109,114,97,66,79,68,65,49,116,97,108,0,0,0,0,2,0,0,0,84,14,0,0,64,3,0,0,81,0,0,0,2,0,0,0,0,0,0,0,82,0,0,0,21,0,0,0,128,46,0,0,255,46,0,0,0,47,0,0,223,47,0,0,0,48,0,0,63,48,0,0,64,48,0,0,159,48,0,0,160,48,0,0,255,48,0,0,0,49,0,0,47,49,0,0,48,49,0,0,143,49,0,0,160,49,0,0,191,49,0,0,192,49,0,0,239,49,0,0,240,49,0,0,255,49,0,0,0,50,0,0,255,50,0,0,0,51,0,0,255,51,0,0,0,52,0,0,191,77,0,0,192,77,0,0,255,77,0,0,0,78,0,0,255,159,0,0,0,249,0,0,255,250,0,0,48,254,0,0,79,254,0,0,0,255,0,0,239,255,0,0,0,0,2,0,223,166,2,0,0,248,2,0,31,250,2,0,0,0,0,0,0,0,0,0,3,0,0,0,28,15,0,0,64,3,0,0,83,0,0,0,3,0,0,0,0,0,0,0,84,0,0,0,22,0,0,0,0,9,0,0,255,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,8,13,0,0,40,13,0,0,52,14,0,0,252,14,0,0,0,0,0,0,4,0,0,0,204,0,0,0,249,44,0,0,0,0,1,0,0,0,2,0,44,15,0,0,16,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,176,0,0,0,4,45,0,0,0,0,1,0,0,0,2,0,152,15,0,0,17,0,0,0,18,0,0,0,0,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,108,116,117,111,85,0,0,0,1,0,0,0,2,0,0,0,86,0,0,0,19,0,0,0,2,0,0,0,72,0,0,0,13,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,12,0,0,0,13,0,0,0,3,0,0,0,23,0,0,0,164,15,0,0,2,0,0,0,72,0,0,0,21,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,12,0,0,0,13,0,0,0,3,0,0,0,23,0,0,0,164,15,0,0,108,116,117,111,87,0,0,0,4,0,0,0,0,0,0,0,88,0,0,0,20,0,0,0,89,0,0,0,90,0,0,0,24,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,72,0,0,0,29,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,15,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,2,0,0,0,72,0,0,0,36,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,17,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,2,0,0,0,72,0,0,0,47,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,18,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,26,0,0,0,21,0,0,0,19,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,23,0,0,0,91,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,4,0,0,0,2,0,0,0,22,0,0,0,23,0,0,0,1,0,0,0,26,0,0,0,92,0,0,0,3,0,0,0,28,0,0,0,24,0,0,0,29,0,0,0,27,0,0,0,1,0,0,0,28,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,5,0,0,0,4,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,4,0,0,0,2,0,0,0,2,0,0,0,6,0,0,0,4,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,6,0,0,0,2,0,0,0,6,0,0,0,2,0,0,0,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,21,0,0,0,29,0,0,0,25,0,0,0,204,45,0,0,213,45,0,0,223,45,0,0,232,45,0,0,234,45,0,0,249,45,0,0,8,46,0,0,29,46,0,0,31,46,0,0,34,46,0,0,37,46,0,0,47,46,0,0,57,46,0,0,70,46,0,0,81,46,0,0,91,46,0,0,106,46,0,0,114,46,0,0,129,46,0,0,143,46,0,0,156,46,0,0,171,46,0,0,183,46,0,0,196,46,0,0,209,46,0,0,217,46,0,0,228,46,0,0,237,46,0,0,246,46,0,0,255,46,0,0,10,47,0,0,20,47,0,0,33,47,0,0,42,47,0,0,54,47,0,0,57,47,0,0,61,47,0,0,65,47,0,0,69,47,0,0,71,47,0,0,85,47,0,0,97,47,0,0,99,47,0,0,106,47,0,0,110,47,0,0,120,47,0,0,137,47,0,0,153,47,0,0,187,45,0,0,168,47,0,0,182,47,0,0,197,47,0,0,213,47,0,0,229,47,0,0,244,47,0,0,250,47,0,0,0,48,0,0,10,48,0,0,28,48,0,0,47,48,0,0,50,48,0,0,58,48,0,0,66,48,0,0,68,48,0,0,71,48,0,0,75,48,0,0,79,48,0,0,82,48,0,0,86,48,0,0,90,48,0,0,93,48,0,0,96,48,0,0,103,48,0,0,116,48,0,0,32,0,0,0,26,0,0,0,30,0,0,0,93,0,0,0,94,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,27,0,0,0,30,0,0,0,93,0,0,0,94,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,0,0,0,28,0,0,0,31,0,0,0,95,0,0,0,96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,29,0,0,0,32,0,0,0,97,0,0,0,98,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,19,0,0,80,19,0,0,120,19,0,0,160,19,0,0,0,0,0,0,20,0,0,0,129,48,0,0,0,0,2,0,0,0,2,0,252,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,0,0,40,17,0,0,92,17,0,0,124,17,0,0,6,0,0,0,200,19,0,0,244,17,0,0,0,0,0,0,20,0,0,0,135,48,0,0,0,0,1,0,0,0,2,0,60,20,0,0,0,0,0,0,0,0,0,0,99,0,0,0,30,0,0,0,2,0,0,0,100,0,0,0,101,0,0,0,31,0,0,0,32,0,0,0,120,25,0,0,214,37,0,0,0,0,0,0,6,0,0,0,12,0,0,0,21,0,0,0,28,0,0,0,35,0,0,0,38,0,0,0,53,0,0,0,59,0,0,0,72,0,0,0,148,3,0,0,169,3,0,0,21,34,0,0,173,0,0,0,201,2,0,0,188,3,0,0,25,34,0,0,160,0,0,0,26,2,0,0,27,2,0,0,91,21,1,0,60,20,0,0,0,0,0,0,0,0,0,0,192,20,0,0,5,0,0,0,0,0,0,0,0,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,32,0,0,0,120,33,1,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,20,0,0,4,0,16,0,17,4,0,0,12,2,4,0,12,2,6,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,0,0,0,0,4,0,20,0,16,4,0,0,16,4,4,0,16,4,8,0,16,4,12,0,12,2,16,0,12,2,18,0,0,0,0,0,4,0,20,0,17,4,0,0,12,2,4,0,12,2,6,0,16,4,8,0,12,2,12,0,12,2,14,0,16,4,16,0,0,0,0,0,4,0,4,0,8,1,16,0,8,1,17,0,8,1,18,0,8,1,19,0,0,0,0,0,0,0,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,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,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,94,0,95,0,96,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,111,0,112,0,113,0,114,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,123,0,124,0,125,0,126,0,127,0,128,0,129,0,130,0,131,0,132,0,133,0,134,0,135,0,136,0,137,0,138,0,139,0,140,0,141,0,142,0,143,0,144,0,145,0,146,0,147,0,148,0,149,0,150,0,151,0,152,0,153,0,154,0,155,0,156,0,157,0,158,0,159,0,160,0,161,0,162,0,163,0,164,0,165,0,166,0,167,0,168,0,169,0,170,0,171,0,172,0,173,0,174,0,175,0,176,0,177,0,178,0,179,0,180,0,181,0,182,0,183,0,184,0,185,0,186,0,187,0,188,0,189,0,190,0,191,0,192,0,193,0,194,0,195,0,196,0,197,0,198,0,199,0,200,0,201,0,202,0,203,0,204,0,205,0,206,0,207,0,208,0,209,0,210,0,211,0,212,0,213,0,214,0,215,0,216,0,217,0,218,0,219,0,220,0,221,0,222,0,223,0,224,0,225,0,226,0,227,0,228,0,0,0,1,0,229,0,230,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,253,0,254,0,255,0,0,1,1,1,2,1,3,1,4,1,5,1,6,1,7,1,8,1,9,1,10,1,109,0,110,0,11,1,12,1,13,1,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,1,48,1,49,1,50,1,51,1,52,1,53,1,54,1,55,1,56,1,57,1,58,1,59,1,60,1,61,1,62,1,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,0,0,1,0,231,0,232,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,253,0,254,0,255,0,0,1,1,1,2,1,3,1,4,1,5,1,6,1,7,1,8,1,9,1,10,1,109,0,110,0,11,1,12,1,13,1,14,1,16,1,44,1,45,1,46,1,49,1,58,1,59,1,158,0,155,0,163,0,64,1,65,1,66,1,67,1,68,1,69,1,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,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,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,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,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,94,0,95,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,0,0,111,0,112,0,113,0,114,0,0,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,0,0,123,0,0,0,124,0,125,0,126,0,127,0,128,0,129,0,130,0,131,0,0,0,132,0,133,0,0,0,134,0,135,0,136,0,137,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,138,0,0,0,139,0,0,0,0,0,0,0,0,0,140,0,141,0,142,0,143,0,0,0,0,0,0,0,0,0,0,0,144,0,0,0,0,0,0,0,145,0,0,0,0,0,146,0,147,0,148,0,149,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,229,0,230,0,0,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,0,0,253,0,254,0,255,0,0,1,1,1,0,0,0,0,0,0,2,1,0,0,0,0,3,1,4,1,5,1,6,1,0,0,0,0,7,1,8,1,9,1,0,0,10,1,109,0,110,0,11,1,12,1,13,1,0,0,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,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,48,1,49,1,50,1,0,0,0,0,51,1,52,1,53,1,54,1,55,1,0,0,56,1,0,0,0,0,56,1,0,0,0,0,58,1,59,1,0,0,0,0,60,1,61,1,62,1,0,0,0,0,0,0,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,0,0,0,0,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,4,0,8,0,17,4,4,0,17,4,8,0,0,0,0,0,4,0,54,0,16,4,0,0,16,4,4,0,17,4,8,0,17,4,12,0,12,2,16,0,12,2,18,0,17,4,20,0,17,4,24,0,17,4,28,0,17,4,32,0,13,2,36,0,13,2,38,0,13,2,40,0,13,2,42,0,12,2,44,0,12,2,46,0,13,2,48,0,13,2,50,0,13,2,52,0,0,0,0,0,4,0,36,0,16,4,0,0,13,2,4,0,13,2,6,0,13,2,8,0,12,2,10,0,13,2,12,0,13,2,14,0,13,2,16,0,13,2,18,0,13,2,20,0,13,2,22,0,13,2,24,0,13,2,26,0,13,2,28,0,13,2,30,0,13,2,32,0,12,2,34,0,0,0,0,0,4,0,6,0,17,4,0,0,12,2,4,0,0,0,0,0,4,0,26,0,12,2,6,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,12,2,16,0,12,2,18,0,12,2,20,0,12,2,22,0,12,2,24,0,12,2,26,0,12,2,28,0,12,2,30,0,0,0,0,0,4,0,78,0,12,2,0,0,13,2,2,0,12,2,4,0,12,2,6,0,13,2,8,0,13,2,10,0,13,2,12,0,13,2,14,0,13,2,16,0,13,2,18,0,13,2,20,0,13,2,22,0,13,2,24,0,13,2,26,0,13,2,28,0,13,2,30,0,8,1,32,0,8,1,33,0,8,1,34,0,8,1,35,0,8,1,36,0,8,1,37,0,8,1,38,0,8,1,39,0,8,1,40,0,8,1,41,0,16,4,44,0,16,4,48,0,16,4,52,0,16,4,56,0,8,1,60,0,8,1,61,0,8,1,62,0,8,1,63,0,12,2,64,0,12,2,66,0,12,2,68,0,13,2,70,0,13,2,72,0,13,2,74,0,12,2,76,0,12,2,78,0,0,0,0,0,4,0,8,0,16,4,80,0,16,4,84,0,0,0,0,0,4,0,10,0,13,2,88,0,13,2,90,0,12,2,92,0,12,2,94,0,12,2,96,0,0,0,0,0,4,0,32,0,16,4,0,0,16,4,4,0,13,2,8,0,13,2,10,0,16,4,12,0,16,4,16,0,16,4,20,0,16,4,24,0,16,4,28,0,0,0,0,0,4,0,6,0,12,2,0,0,12,4,4,0,12,4,8,0,0,0,0,0,12,2,0,0,12,2,2,0,12,2,4,0,12,2,6,0,12,2,8,0,12,4,12,0,0,0,0,0,4,0,54,0,16,4,0,0,16,4,4,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,12,2,16,0,24,16,20,0,24,8,36,0,24,6,44,0,9,1,50,0,9,1,51,0,8,1,52,0,8,1,53,0,0,0,0,0,4,0,5,0,8,1,0,0,8,1,1,0,9,1,2,0,9,1,3,0,8,1,4,0,0,0,0,0,4,0,8,0,8,1,0,0,8,1,1,0,9,1,2,0,9,1,3,0,8,1,4,0,9,1,5,0,9,1,6,0,8,1,7,0,0,0,0,0,4,0,8,0,12,2,4,0,12,2,6,0,12,2,8,0,12,2,10,0,0,0,0,0,4,0,16,0,16,4,0,0,16,4,4,0,16,4,8,0,16,4,12,0,0,0,0,0,16,4,8,0,17,0,0,0,16,4,0,0,16,4,12,0,0,0,0,0,9,1,0,0,9,1,1,0,8,1,2,0,9,1,3,0,9,1,4,0,9,1,5,0,9,1,6,0,9,1,7,0,9,1,8,0,9,1,9,0,9,1,10,0,9,1,11,0,0,0,0,0,12,2,40,0,12,2,42,0,8,1,44,0,8,1,45,0,8,1,46,0,9,1,47,0,0,0,0,0,253,0,0,0,6,0,5,1,11,1,18,1,27,1,38,1,45,1,53,1,246,2,74,1,84,1,95,1,104,1,109,1,115,1,122,1,129,1,135,1,140,1,144,1,148,1,154,1,159,1,164,1,168,1,174,1,180,1,185,1,191,1,201,1,206,1,212,1,220,1,229,1,232,1,234,1,236,1,238,1,240,1,242,1,244,1,246,1,248,1,250,1,252,1,254,1,0,2,2,2,4,2,6,2,8,2,10,2,12,2,14,2,16,2,18,2,20,2,22,2,24,2,26,2,28,2,40,2,50,2,63,2,75,2,211,3,96,2,98,2,100,2,102,2,104,2,106,2,108,2,110,2,112,2,114,2,116,2,118,2,120,2,122,2,124,2,126,2,128,2,130,2,132,2,134,2,136,2,138,2,140,2,142,2,144,2,146,2,148,2,158,2,162,2,173,2,95,5,112,5,125,5,134,5,206,5,232,5,26,6,67,6,96,6,74,6,86,6,109,6,103,6,116,6,125,6,154,6,132,6,144,6,161,6,190,6,168,6,180,6,197,6,204,6,233,6,211,6,223,6,240,6,254,6,27,7,5,7,17,7,71,3,239,4,195,2,200,2,229,2,113,3,103,3,136,4,22,5,66,5,173,4,217,3,7,4,23,0,62,4,84,4,32,0,195,4,41,0,51,0,218,2,170,4,64,0,76,0,86,0,94,0,97,0,65,4,94,4,106,0,107,4,126,4,198,3,184,2,159,4,112,0,222,2,120,0,132,0,15,3,162,3,177,3,138,0,105,5,118,5,249,5,91,4,133,4,64,3,55,4,2,3,148,3,86,2,63,1,222,4,155,0,41,7,50,6,209,2,237,2,29,3,43,3,58,3,61,3,78,3,88,3,120,3,135,3,186,3,83,5,141,5,76,5,153,5,163,5,170,5,177,5,189,5,199,5,213,5,220,5,163,0,242,5,7,6,14,6,36,6,110,4,223,3,234,3,240,3,247,3,253,3,16,4,21,4,29,4,42,4,49,4,77,4,119,4,0,6,247,6,60,6,51,7,229,4,183,4,39,5,43,6,34,7,205,4,246,4,33,5,43,5,147,4,10,5,52,5,187,4,211,4,252,4,169,0,175,0,182,0,189,0,200,0,209,0,218,0,225,0,232,0,239,0,246,0,253,0,5,1,11,1,18,1,27,1,38,1,45,1,53,1,63,1,74,1,84,1,95,1,104,1,109,1,115,1,122,1,129,1,135,1,140,1,144,1,148,1,154,1,159,1,164,1,168,1,174,1,180,1,185,1,191,1,201,1,206,1,212,1,220,1,229,1,232,1,234,1,236,1,238,1,240,1,242,1,244,1,246,1,248,1,250,1,252,1,254,1,0,2,2,2,4,2,6,2,8,2,10,2,12,2,14,2,16,2,18,2,20,2,22,2,24,2,26,2,28,2,40,2,50,2,63,2,75,2,86,2,96,2,98,2,100,2,102,2,104,2,106,2,108,2,110,2,112,2,114,2,116,2,118,2,120,2,122,2,124,2,126,2,128,2,130,2,132,2,134,2,136,2,138,2,140,2,142,2,144,2,146,2,148,2,158,2,162,2,173,2,184,2,195,2,200,2,209,2,218,2,222,2,229,2,237,2,246,2,2,3,15,3,29,3,43,3,58,3,61,3,64,3,71,3,78,3,88,3,103,3,113,3,120,3,135,3,148,3,162,3,177,3,186,3,198,3,211,3,217,3,223,3,234,3,240,3,247,3,253,3,7,4,16,4,21,4,29,4,42,4,49,4,55,4,62,4,65,4,77,4,84,4,91,4,94,4,107,4,110,4,119,4,126,4,133,4,136,4,147,4,159,4,170,4,173,4,183,4,187,4,195,4,205,4,211,4,222,4,229,4,239,4,246,4,252,4,10,5,22,5,33,5,39,5,43,5,52,5,66,5,76,5,83,5,95,5,105,5,112,5,118,5,125,5,134,5,141,5,153,5,163,5,170,5,177,5,189,5,199,5,206,5,213,5,220,5,232,5,242,5,249,5,0,6,7,6,14,6,26,6,36,6,43,6,50,6,60,6,67,6,74,6,86,6,96,6,103,6,109,6,116,6,125,6,132,6,144,6,154,6,161,6,168,6,180,6,190,6,197,6,204,6,211,6,223,6,233,6,240,6,247,6,254,6,5,7,17,7,27,7,34,7,41,7,51,7,58,7,70,7,88,7,103,7,118,7,133,7,144,7,162,7,181,7,196,7,211,7,224,7,236,7,248,7,6,8,19,8,32,8,44,8,58,8,72,8,85,8,99,8,119,8,134,8,148,8,158,8,168,8,181,8,191,8,201,8,211,8,221,8,231,8,241,8,251,8,5,9,15,9,25,9,28,9,32,9,36,9,54,9,73,9,89,9,104,9,115,9,122,9,129,9,136,9,143,9,150,9,157,9,164,9,171,9,178,9,185,9,192,9,199,9,206,9,213,9,220,9,227,9,234,9,241,9,248,9,255,9,6,10,13,10,20,10,27,10,34,10,41,10,55,10,65,10,72,10,83,10,99,10,112,10,124,10,136,10,148,10,162,10,173,10,184,10,199,10,211,10,222,10,237,10,249,10,3,11,16,11,34,11,44,11,57,11,69,11,82,11,91,11,101,11,114,11,127,11,140,11,152,11,166,11,180,11,193,11,206,11,218,11,230,11,244,11,1,12,14,12,26,12,40,12,54,12,67,12,80,12,95,12,110,12,124,12,136,12,148,12,165,12,177,12,192,12,203,12,211,12,225,12,237,12,249,12,10,13,25,13,37,13,49,13,66,13,81,13,90,13,102,13,114,13,126,13,143,13,155,13,170,13,178,13,190,13,202,13,214,13,231,13,246,13,2,14,13,14,28,14,36,14,44,14,52,14,60,14,66,14,71,14,76,14,82,14,89,14,97,14,103,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,229,0,230,0,0,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,0,0,253,0,254,0,255,0,0,1,1,1,0,0,0,0,0,0,2,1,0,0,0,0,3,1,4,1,5,1,6,1,0,0,0,0,7,1,8,1,9,1,0,0,10,1,109,0,110,0,11,1,12,1,13,1,0,0,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,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,48,1,49,1,50,1,0,0,0,0,51,1,52,1,53,1,54,1,55,1,0,0,56,1,0,0,0,0,57,1,0,0,0,0,58,1,59,1,0,0,0,0,60,1,61,1,62,1,0,0,0,0,0,0,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,0,0,0,0,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,108,111,97,100,95,102,111,110,116,40,37,115,44,37,115,41,58,32,116,111,111,32,109,97,110,121,32,102,111,110,116,115,33,10,0,78,101,119,95,70,97,99,101,40,37,115,44,37,115,41],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([32,69,114,114,111,114,33,32,37,100,10,0,83,101,116,95,67,104,97,114,95,83,105,122,101,32,69,114,114,111,114,33,32,37,100,10,0,76,111,97,100,95,67,104,97,114,32,69,114,114,111,114,33,32,37,100,10,0,73,110,105,116,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,65,46,111,116,102,0,78,101,119,95,70,97,99,101,40,79,67,82,45,65,41,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,66,46,111,116,102,0,78,101,119,95,70,97,99,101,40,79,67,82,45,66,41,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,45,65,0,79,67,82,45,66,0,99,105,100,0,116,121,112,101,49,0,79,84,84,79,0,46,95,0,47,46,46,110,97,109,101,100,102,111,114,107,47,114,115,114,99,0,47,114,115,114,99,0,114,101,115,111,117,114,99,101,46,102,114,107,47,0,46,114,101,115,111,117,114,99,101,47,0,37,0,46,65,112,112,108,101,68,111,117,98,108,101,47,0,116,114,117,101,116,121,112,101,0,84,114,117,101,84,121,112,101,0,109,117,108,116,105,45,109,97,115,116,101,114,115,0,87,105,100,116,104,0,79,112,116,105,99,97,108,83,105,122,101,0,83,108,97,110,116,0,116,114,117,101,116,121,112,101,45,101,110,103,105,110,101,0,116,116,45,103,108,121,102,0,68,70,75,97,105,83,104,111,45,83,66,0,0,0,0,0,0,68,70,75,97,105,83,104,117,0,0,0,0,0,0,0,0,0,68,70,75,97,105,45,83,66,0,0,0,0,0,0,0,0,0,72,117,97,84,105,97,110,75,97,105,84,105,63,0,0,0,0,72,117,97,84,105,97,110,83,111,110,103,84,105,63,0,0,0,77,105,110,103,76,105,85,0,0,0,0,0,0,0,0,0,0,80,77,105,110,103,76,105,85,0,0,0,0,0,0,0,0,0,77,105,110,103,76,105,52,51,0,0,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,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,255,254,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,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,2,3,4,5,6,7,8,9,3,5,7,9,11,13,15,17,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,32,32,32,32,32,32,2,2,0,80,16,16,16,16,16,16,16,16,0,0,16,0,16,16,16,16,18,16,0,34,1,17,16,32,0,16,32,16,16,0,16,16,0,0,0,0,16,16,16,16,16,0,32,32,0,0,32,32,0,0,32,17,32,17,17,17,32,33,33,1,1,0,0,16,33,33,33,33,33,33,17,17,16,0,33,33,17,16,16,16,33,33,33,33,17,17,17,17,17,17,17,17,17,17,17,17,32,16,16,16,16,16,16,16,32,32,0,0,0,0,16,16,0,32,32,0,0,16,32,32,17,16,51,33,33,16,32,0,0,0,0,0,0,0,0,0,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,1,2,3,4,5,6,7,8,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,99,102,102,0,120,102,56,54,45,100,114,105,118,101,114,45,110,97,109,101,0,67,70,70,0,112,111,115,116,115,99,114,105,112,116,45,105,110,102,111,0,67,73,68,0,82,101,103,117,108,97,114,0,66,111,108,100,0,66,108,97,99,107,0,0,194,193,193,32,32,32,32,32,32,32,32,32,32,13,7,9,11,128,130,130,130,130,128,128,0,1,2,2,2,1,0,2,1,1,1,2,1,2,1,2,1,4,3,2,2,1,2,4,1,1,0,2,0,0,0,5,4,2,115,102,110,116,0,115,102,110,116,45,116,97,98,108,101,0,112,111,115,116,115,99,114,105,112,116,45,102,111,110,116,45,110,97,109,101,0,103,108,121,112,104,45,100,105,99,116,0,98,100,102,0,67,72,65,82,83,69,84,95,82,69,71,73,83,84,82,89,0,67,72,65,82,83,69,84,95,69,78,67,79,68,73,78,71,0,116,116,45,99,109,97,112,115,0,84,72,69,90,79,67,81,83,0,0,0,0,0,72,69,90,76,79,67,85,83,0,0,0,0,0,102,105,106,107,100,98,104,0,0,0,0,0,0,120,122,114,111,101,115,99,0,0,0,0,0,0,120,122,114,111,101,115,99,0,0,0,0,0,0,112,113,103,106,121,0,0,0,0,0,0,0,0,97,117,116,111,102,105,116,116,101,114,0,112,115,104,105,110,116,101,114,0,114,97,115,116,101,114,49,0,114,97,115,116,101,114,53,0,115,109,111,111,116,104,0,115,109,111,111,116,104,45,108,99,100,0,115,109,111,111,116,104,45,108,99,100,118,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,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,255,255,255,255,255,255,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,255,255,255,255,255,83,116,97,114,116,70,111,110,116,77,101,116,114,105,99,115,0,65,115,99,101,110,100,101,114,0,65,120,105,115,76,97,98,101,108,0,65,120,105,115,84,121,112,101,0,66,0,66,108,101,110,100,65,120,105,115,84,121,112,101,115,0,66,108,101,110,100,68,101,115,105,103,110,77,97,112,0,66,108,101,110,100,68,101,115,105,103,110,80,111,115,105,116,105,111,110,115,0,67,0,67,67,0,67,72,0,67,97,112,72,101,105,103,104,116,0,67,104,97,114,87,105,100,116,104,0,67,104,97,114,97,99,116,101,114,83,101,116,0,67,104,97,114,97,99,116,101,114,115,0,68,101,115,99,101,110,100,101,114,0,69,110,99,111,100,105,110,103,83,99,104,101,109,101,0,69,110,100,65,120,105,115,0,69,110,100,67,104,97,114,77,101,116,114,105,99,115,0,69,110,100,67,111,109,112,111,115,105,116,101,115,0,69,110,100,68,105,114,101,99,116,105,111,110,0,69,110,100,70,111,110,116,77,101,116,114,105,99,115,0,69,110,100,75,101,114,110,68,97,116,97,0,69,110,100,75,101,114,110,80,97,105,114,115,0,69,110,100,84,114,97,99,107,75,101,114,110,0,69,115,99,67,104,97,114,0,70,97,109,105,108,121,78,97,109,101,0,70,111,110,116,66,66,111,120,0,70,111,110,116,78,97,109,101,0,70,117,108,108,78,97,109,101,0,73,115,66,97,115,101,70,111,110,116,0,73,115,67,73,68,70,111,110,116,0,73,115,70,105,120,101,100,80,105,116,99,104,0,73,115,70,105,120,101,100,86,0,73,116,97,108,105,99,65,110,103,108,101,0,75,80,0,75,80,72,0,75,80,88,0,75,80,89,0,76,0,77,97,112,112,105,110,103,83,99,104,101,109,101,0,77,101,116,114,105,99,115,83,101,116,115,0,78,0,78,111,116,105,99,101,0,80,67,67,0,83,116,97,114,116,65,120,105,115,0,83,116,97,114,116,67,104,97,114,77,101,116,114,105,99,115,0,83,116,97,114,116,67,111,109,112,111,115,105,116,101,115,0,83,116,97,114,116,68,105,114,101,99,116,105,111,110,0,83,116,97,114,116,75,101,114,110,68,97,116,97,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,48,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,49,0,83,116,97,114,116,84,114,97,99,107,75,101,114,110,0,83,116,100,72,87,0,83,116,100,86,87,0,84,114,97,99,107,75,101,114,110,0,85,110,100,101,114,108,105,110,101,80,111,115,105,116,105,111,110,0,85,110,100,101,114,108,105,110,101,84,104,105,99,107,110,101,115,115,0,86,86,0,86,86,101,99,116,111,114,0,86,101,114,115,105,111,110,0,87,0,87,48,0,87,48,88,0,87,48,89,0,87,49,0,87,49,88,0,87,49,89,0,87,88,0,87,89,0,87,101,105,103,104,116,0,87,101,105,103,104,116,86,101,99,116,111,114,0,88,72,101,105,103,104,116,0,116,114,117,101,0,112,115,97,117,120,0,112,115,110,97,109,101,115,0,0,52,0,106,2,167,3,63,4,220,6,125,9,143,10,23,11,137,12,199,14,246,15,87,16,233,17,219,18,104,19,88,22,110,23,32,23,71,24,77,27,156,29,73,31,247,32,107,32,222,33,55,34,154,35,218,53,84,59,196,68,6,75,183,83,178,88,135,93,242,101,165,109,185,111,55,117,254,123,73,130,238,138,206,145,31,153,182,156,189,163,249,178,221,193,17,197,99,199,240,204,27,204,155,210,100,65,143,0,65,0,140,0,175,0,193,1,15,1,147,1,233,1,251,2,7,2,40,2,57,2,82,2,91,2,128,2,136,2,154,69,131,0,198,0,150,0,158,0,167,225,227,245,244,101,128,1,252,237,225,227,242,239,110,128,1,226,243,237,225,236,108,128,247,230,225,227,245,244,101,129,0,193,0,185,243,237,225,236,108,128,247,225,226,242,229,246,101,134,1,2,0,213,0,221,0,232,0,243,0,251,1,7,225,227,245,244,101,128,30,174,227,249,242,233,236,236,233,99,128,4,208,228,239,244,226,229,236,239,119,128,30,182,231,242,225,246,101,128,30,176,232,239,239,235,225,226,239,246,101,128,30,178,244,233,236,228,101,128,30,180,99,4,1,25,1,32,1,121,1,137,225,242,239,110,128,1,205,233,242,99,2,1,40,1,45,236,101,128,36,182,245,237,230,236,229,120,134,0,194,1,66,1,74,1,85,1,93,1,105,1,113,225,227,245,244,101,128,30,164,228,239,244,226,229,236,239,119,128,30,172,231,242,225,246,101,128,30,166,232,239,239,235,225,226,239,246,101,128,30,168,243,237,225,236,108,128,247,226,244,233,236,228,101,128,30,170,245,244,101,129,246,201,1,129,243,237,225,236,108,128,247,180,249,242,233,236,236,233,99,128,4,16,100,3,1,155,1,165,1,209,226,236,231,242,225,246,101,128,2,0,233,229,242,229,243,233,115,131,0,196,1,181,1,192,1,201,227,249,242,233,236,236,233,99,128,4,210,237,225,227,242,239,110,128,1,222,243,237,225,236,108,128,247,228,239,116,2,1,216,1,224,226,229,236,239,119,128,30,160,237,225,227,242,239,110,128,1,224,231,242,225,246,101,129,0,192,1,243,243,237,225,236,108,128,247,224,232,239,239,235,225,226,239,246,101,128,30,162,105,2,2,13,2,25,229,227,249,242,233,236,236,233,99,128,4,212,238,246,229,242,244,229,228,226,242,229,246,101,128,2,2,236,240,232,97,129,3,145,2,49,244,239,238,239,115,128,3,134,109,2,2,63,2,71,225,227,242,239,110,128,1,0,239,238,239,243,240,225,227,101,128,255,33,239,231,239,238,229,107,128,1,4,242,233,238,103,131,0,197,2,104,2,112,2,120,225,227,245,244,101,128,1,250,226,229,236,239,119,128,30,0,243,237,225,236,108,128,247,229,243,237,225,236,108,128,247,97,244,233,236,228,101,129,0,195,2,146,243,237,225,236,108,128,247,227,249,226,225,242,237,229,238,233,225,110,128,5,49,66,137,0,66,2,189,2,198,2,223,3,3,3,10,3,22,3,34,3,46,3,54,227,233,242,227,236,101,128,36,183,228,239,116,2,2,206,2,215,225,227,227,229,238,116,128,30,2,226,229,236,239,119,128,30,4,101,3,2,231,2,242,2,254,227,249,242,233,236,236,233,99,128,4,17,238,225,242,237,229,238,233,225,110,128,5,50,244,97,128,3,146,232,239,239,107,128,1,129,236,233,238,229,226,229,236,239,119,128,30,6,237,239,238,239,243,240,225,227,101,128,255,34,242,229,246,229,243,237,225,236,108,128,246,244,243,237,225,236,108,128,247,98,244,239,240,226,225,114,128,1,130,67,137,0,67,3,85,3,127,3,193,3,210,3,224,4,171,4,188,4,200,4,212,97,3,3,93,3,104,3,111,225,242,237,229,238,233,225,110,128,5,62,227,245,244,101,128,1,6,242,239,110,129,246,202,3,119,243,237,225,236,108,128,246,245,99,3,3,135,3,142,3,171,225,242,239,110,128,1,12,229,228,233,236,236,97,130,0,199,3,155,3,163,225,227,245,244,101,128,30,8,243,237,225,236,108,128,247,231,233,242,99,2,3,179,3,184,236,101,128,36,184,245,237,230,236,229,120,128,1,8,228,239,116,129,1,10,3,201,225,227,227,229,238,116,128,1,10,229,228,233,236,236,225,243,237,225,236,108,128,247,184,104,4,3,234,3,246,4,161,4,165,225,225,242,237,229,238,233,225,110,128,5,73,101,6,4,4,4,24,4,35,4,103,4,115,4,136,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,188,227,249,242,233,236,236,233,99,128,4,39,100,2,4,41,4,85,229,243,227,229,238,228,229,114,2,4,54,4,74,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,190,227,249,242,233,236,236,233,99,128,4,182,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,244,232,225,242,237,229,238,233,225,110,128,5,67,235,232,225,235,225,243,243,233,225,238,227,249,242,233,236,236,233,99,128,4,203,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,184,105,128,3,167,239,239,107,128,1,135,233,242,227,245,237,230,236,229,248,243,237,225,236,108,128,246,246,237,239,238,239,243,240,225,227,101,128,255,35,239,225,242,237,229,238,233,225,110,128,5,81,243,237,225,236,108,128,247,99,68,142,0,68,4,252,5,10,5,36,5,96,5,121,5,166,5,173,5,231,5,244,6,0,6,12,6,28,6,48,6,57,90,129,1,241,5,2,227,225,242,239,110,128,1,196,97,2,5,16,5,27,225,242,237,229,238,233,225,110,128,5,52,230,242,233,227,225,110,128,1,137,99,4,5,46,5,53,5,62,5,89,225,242,239,110,128,1,14,229,228,233,236,236,97,128,30,16,233,242,99,2,5,70,5,75,236,101,128,36,185,245,237,230,236,229,248,226,229,236,239,119,128,30,18,242,239,225,116,128,1,16,228,239,116,2,5,104,5,113,225,227,227,229,238,116,128,30,10,226,229,236,239,119,128,30,12,101,3,5,129,5,140,5,150,227,249,242,233,236,236,233,99,128,4,20,233,227,239,240,244,233,99,128,3,238,236,244,97,129,34,6,5,158,231,242,229,229,107,128,3,148,232,239,239,107,128,1,138,105,2,5,179,5,218,229,242,229,243,233,115,131,246,203,5,194,5,202,5,210,193,227,245,244,101,128,246,204,199,242,225,246,101,128,246,205,243,237,225,236,108,128,247,168,231,225,237,237,225,231,242,229,229,107,128,3,220,234,229,227,249,242,233,236,236,233,99,128,4,2,236,233,238,229,226,229,236,239,119,128,30,14,237,239,238,239,243,240,225,227,101,128,255,36,239,244,225,227,227,229,238,244,243,237,225,236,108,128,246,247,115,2,6,34,6,41,236,225,243,104,128,1,16,237,225,236,108,128,247,100,244,239,240,226,225,114,128,1,139,122,131,1,242,6,67,6,75,6,112,227,225,242,239,110,128,1,197,101,2,6,81,6,101,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,224,227,249,242,233,236,236,233,99,128,4,5,232,229,227,249,242,233,236,236,233,99,128,4,15,69,146,0,69,6,165,6,183,6,191,7,89,7,153,7,165,7,183,7,211,8,7,8,36,8,94,8,169,8,189,8,208,8,248,9,44,9,109,9,115,225,227,245,244,101,129,0,201,6,175,243,237,225,236,108,128,247,233,226,242,229,246,101,128,1,20,99,5,6,203,6,210,6,224,6,236,7,79,225,242,239,110,128,1,26,229,228,233,236,236,225,226,242,229,246,101,128,30,28,232,225,242,237,229,238,233,225,110,128,5,53,233,242,99,2,6,244,6,249,236,101,128,36,186,245,237,230,236,229,120,135,0,202,7,16,7,24,7,32,7,43,7,51,7,63,7,71,225,227,245,244,101,128,30,190,226,229,236,239,119,128,30,24,228,239,244,226,229,236,239,119,128,30,198,231,242,225,246,101,128,30,192,232,239,239,235,225,226,239,246,101,128,30,194,243,237,225,236,108,128,247,234,244,233,236,228,101,128,30,196,249,242,233,236,236,233,99,128,4,4,100,3,7,97,7,107,7,127,226,236,231,242,225,246,101,128,2,4,233,229,242,229,243,233,115,129,0,203,7,119,243,237,225,236,108,128,247,235,239,116,130,1,22,7,136,7,145,225,227,227,229,238,116,128,1,22,226,229,236,239,119,128,30,184,230,227,249,242,233,236,236,233,99,128,4,36,231,242,225,246,101,129,0,200,7,175,243,237,225,236,108,128,247,232,104,2,7,189,7,200,225,242,237,229,238,233,225,110,128,5,55,239,239,235,225,226,239,246,101,128,30,186,105,3,7,219,7,230,7,245,231,232,244,242,239,237,225,110,128,33,103,238,246,229,242,244,229,228,226,242,229,246,101,128,2,6,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,100,108,2,8,13,8,24,227,249,242,233,236,236,233,99,128,4,27,229,246,229,238,242,239,237,225,110,128,33,106,109,3,8,44,8,72,8,83,225,227,242,239,110,130,1,18,8,56,8,64,225,227,245,244,101,128,30,22,231,242,225,246,101,128,30,20,227,249,242,233,236,236,233,99,128,4,28,239,238,239,243,240,225,227,101,128,255,37,110,4,8,104,8,115,8,135,8,154,227,249,242,233,236,236,233,99,128,4,29,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,162,103,129,1,74,8,141,232,229,227,249,242,233,236,236,233,99,128,4,164,232,239,239,235,227,249,242,233,236,236,233,99,128,4,199,111,2,8,175,8,183,231,239,238,229,107,128,1,24,240,229,110,128,1,144,240,243,233,236,239,110,129,3,149,8,200,244,239,238,239,115,128,3,136,114,2,8,214,8,225,227,249,242,233,236,236,233,99,128,4,32,229,246,229,242,243,229,100,129,1,142,8,237,227,249,242,233,236,236,233,99,128,4,45,115,4,9,2,9,13,9,33,9,37,227,249,242,233,236,236,233,99,128,4,33,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,170,104,128,1,169,237,225,236,108,128,247,101,116,3,9,52,9,78,9,92,97,130,3,151,9,60,9,70,242,237,229,238,233,225,110,128,5,56,244,239,238,239,115,128,3,137,104,129,0,208,9,84,243,237,225,236,108,128,247,240,233,236,228,101,129,30,188,9,101,226,229,236,239,119,128,30,26,245,242,111,128,32,172,250,104,130,1,183,9,124,9,132,227,225,242,239,110,128,1,238,242,229,246,229,242,243,229,100,128,1,184,70,136,0,70,9,163,9,172,9,184,9,212,9,219,9,248,10,4,10,15,227,233,242,227,236,101,128,36,187,228,239,244,225,227,227,229,238,116,128,30,30,101,2,9,190,9,202,232,225,242,237,229,238,233,225,110,128,5,86,233,227,239,240,244,233,99,128,3,228,232,239,239,107,128,1,145,105,2,9,225,9,238,244,225,227,249,242,233,236,236,233,99,128,4,114,246,229,242,239,237,225,110,128,33,100,237,239,238,239,243,240,225,227,101,128,255,38,239,245,242,242,239,237,225,110,128,33,99,243,237,225,236,108,128,247,102,71,140,0,71,10,51,10,61,10,107,10,115,10,176,10,193,10,205,11,39,11,52,11,65,11,90,11,107,194,243,241,245,225,242,101,128,51,135,97,3,10,69,10,76,10,94,227,245,244,101,128,1,244,237,237,97,129,3,147,10,84,225,230,242,233,227,225,110,128,1,148,238,231,233,225,227,239,240,244,233,99,128,3,234,226,242,229,246,101,128,1,30,99,4,10,125,10,132,10,141,10,163,225,242,239,110,128,1,230,229,228,233,236,236,97,128,1,34,233,242,99,2,10,149,10,154,236,101,128,36,188,245,237,230,236,229,120,128,1,28,239,237,237,225,225,227,227,229,238,116,128,1,34,228,239,116,129,1,32,10,184,225,227,227,229,238,116,128,1,32,229,227,249,242,233,236,236,233,99,128,4,19,104,3,10,213,10,226,11,33,225,228,225,242,237,229,238,233,225,110,128,5,66,101,3,10,234,10,255,11,16,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,148,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,146,245,240,244,245,242,238,227,249,242,233,236,236,233,99,128,4,144,239,239,107,128,1,147,233,237,225,242,237,229,238,233,225,110,128,5,51,234,229,227,249,242,233,236,236,233,99,128,4,3,109,2,11,71,11,79,225,227,242,239,110,128,30,32,239,238,239,243,240,225,227,101,128,255,39,242,225,246,101,129,246,206,11,99,243,237,225,236,108,128,247,96,115,2,11,113,11,129,237,225,236,108,129,247,103,11,122,232,239,239,107,128,2,155,244,242,239,235,101,128,1,228,72,140,0,72,11,165,11,190,11,198,11,208,12,17,12,40,12,77,12,117,12,129,12,157,12,165,12,189,177,184,53,3,11,175,11,180,11,185,179,51,128,37,207,180,51,128,37,170,181,49,128,37,171,178,178,176,183,51,128,37,161,208,243,241,245,225,242,101,128,51,203,97,3,11,216,11,236,12,0,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,168,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,178,242,228,243,233,231,238,227,249,242,233,236,236,233,99,128,4,42,98,2,12,23,12,28,225,114,128,1,38,242,229,246,229,226,229,236,239,119,128,30,42,99,2,12,46,12,55,229,228,233,236,236,97,128,30,40,233,242,99,2,12,63,12,68,236,101,128,36,189,245,237,230,236,229,120,128,1,36,100,2,12,83,12,93,233,229,242,229,243,233,115,128,30,38,239,116,2,12,100,12,109,225,227,227,229,238,116,128,30,34,226,229,236,239,119,128,30,36,237,239,238,239,243,240,225,227,101,128,255,40,111,2,12,135,12,146,225,242,237,229,238,233,225,110,128,5,64,242,233,227,239,240,244,233,99,128,3,232,243,237,225,236,108,128,247,104,245,238,231,225,242,245,237,236,225,245,116,129,246,207,12,181,243,237,225,236,108,128,246,248,250,243,241,245,225,242,101,128,51,144,73,146,0,73,12,239,12,251,12,255,13,11,13,29,13,37,13,94,13,181,13,214,13,224,13,242,13,254,14,48,14,86,14,99,14,166,14,187,14,205,193,227,249,242,233,236,236,233,99,128,4,47,74,128,1,50,213,227,249,242,233,236,236,233,99,128,4,46,225,227,245,244,101,129,0,205,13,21,243,237,225,236,108,128,247,237,226,242,229,246,101,128,1,44,99,3,13,45,13,52,13,84,225,242,239,110,128,1,207,233,242,99,2,13,60,13,65,236,101,128,36,190,245,237,230,236,229,120,129,0,206,13,76,243,237,225,236,108,128,247,238,249,242,233,236,236,233,99,128,4,6,100,3,13,102,13,112,13,155,226,236,231,242,225,246,101,128,2,8,233,229,242,229,243,233,115,131,0,207,13,128,13,136,13,147,225,227,245,244,101,128,30,46,227,249,242,233,236,236,233,99,128,4,228,243,237,225,236,108,128,247,239,239,116,130,1,48,13,164,13,173,225,227,227,229,238,116,128,1,48,226,229,236,239,119,128,30,202,101,2,13,187,13,203,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,214,227,249,242,233,236,236,233,99,128,4,21,230,242,225,235,244,245,114,128,33,17,231,242,225,246,101,129,0,204,13,234,243,237,225,236,108,128,247,236,232,239,239,235,225,226,239,246,101,128,30,200,105,3,14,6,14,17,14,32,227,249,242,233,236,236,233,99,128,4,24,238,246,229,242,244,229,228,226,242,229,246,101,128,2,10,243,232,239,242,244,227,249,242,233,236,236,233,99,128,4,25,109,2,14,54,14,75,225,227,242,239,110,129,1,42,14,64,227,249,242,233,236,236,233,99,128,4,226,239,238,239,243,240,225,227,101,128,255,41,238,233,225,242,237,229,238,233,225,110,128,5,59,111,3,14,107,14,118,14,126,227,249,242,233,236,236,233,99,128,4,1,231,239,238,229,107,128,1,46,244,97,131,3,153,14,137,14,147,14,158,225,230,242,233,227,225,110,128,1,150,228,233,229,242,229,243,233,115,128,3,170,244,239,238,239,115,128,3,138,115,2,14,172,14,179,237,225,236,108,128,247,105,244,242,239,235,101,128,1,151,244,233,236,228,101,129,1,40,14,197,226,229,236,239,119,128,30,44,250,232,233,244,243,97,2,14,216,14,227,227,249,242,233,236,236,233,99,128,4,116,228,226,236,231,242,225,246,229,227,249,242,233,236,236,233,99,128,4,118,74,134,0,74,15,6,15,18,15,41,15,53,15,67,15,79,225,225,242,237,229,238,233,225,110,128,5,65,227,233,242,99,2,15,27,15,32,236,101,128,36,191,245,237,230,236,229,120,128,1,52,229,227,249,242,233,236,236,233,99,128,4,8,232,229,232,225,242,237,229,238,233,225,110,128,5,75,237,239,238,239,243,240,225,227,101,128,255,42,243,237,225,236,108,128,247,106,75,140,0,75,15,115,15,125,15,135,16,18,16,65,16,76,16,106,16,143,16,156,16,168,16,180,16,208,194,243,241,245,225,242,101,128,51,133,203,243,241,245,225,242,101,128,51,205,97,7,15,151,15,169,15,191,15,211,15,226,15,232,15,249,226,225,243,232,235,233,242,227,249,242,233,236,236,233,99,128,4,160,99,2,15,175,15,181,245,244,101,128,30,48,249,242,233,236,236,233,99,128,4,26,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,154,232,239,239,235,227,249,242,233,236,236,233,99,128,4,195,240,240,97,128,3,154,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,158,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,156,99,4,16,28,16,35,16,44,16,52,225,242,239,110,128,1,232,229,228,233,236,236,97,128,1,54,233,242,227,236,101,128,36,192,239,237,237,225,225,227,227,229,238,116,128,1,54,228,239,244,226,229,236,239,119,128,30,50,101,2,16,82,16,94,232,225,242,237,229,238,233,225,110,128,5,84,238,225,242,237,229,238,233,225,110,128,5,63,104,3,16,114,16,126,16,137,225,227,249,242,233,236,236,233,99,128,4,37,229,233,227,239,240,244,233,99,128,3,230,239,239,107,128,1,152,234,229,227,249,242,233,236,236,233,99,128,4,12,236,233,238,229,226,229,236,239,119,128,30,52,237,239,238,239,243,240,225,227,101,128,255,43,239,240,240,97,2,16,189,16,200,227,249,242,233,236,236,233,99,128,4,128,231,242,229,229,107,128,3,222,115,2,16,214,16,226,233,227,249,242,233,236,236,233,99,128,4,110,237,225,236,108,128,247,107,76,138,0,76,17,1,17,5,17,9,17,29,17,95,17,133,17,147,17,165,17,177,17,189,74,128,1,199,76,128,246,191,97,2,17,15,17,22,227,245,244,101,128,1,57,237,226,228,97,128,3,155,99,4,17,39,17,46,17,55,17,82,225,242,239,110,128,1,61,229,228,233,236,236,97,128,1,59,233,242,99,2,17,63,17,68,236,101,128,36,193,245,237,230,236,229,248,226,229,236,239,119,128,30,60,239,237,237,225,225,227,227,229,238,116,128,1,59,228,239,116,130,1,63,17,105,17,114,225,227,227,229,238,116,128,1,63,226,229,236,239,119,129,30,54,17,124,237,225,227,242,239,110,128,30,56,233,247,238,225,242,237,229,238,233,225,110,128,5,60,106,129,1,200,17,153,229,227,249,242,233,236,236,233,99,128,4,9,236,233,238,229,226,229,236,239,119,128,30,58,237,239,238,239,243,240,225,227,101,128,255,44,115,2,17,195,17,212,236,225,243,104,129,1,65,17,204,243,237,225,236,108,128,246,249,237,225,236,108,128,247,108,77,137,0,77,17,241,17,251,18,24,18,33,18,58,18,71,18,83,18,91,18,100,194,243,241,245,225,242,101,128,51,134,225,99,2,18,2,18,18,242,239,110,129,246,208,18,10,243,237,225,236,108,128,247,175,245,244,101,128,30,62,227,233,242,227,236,101,128,36,194,228,239,116,2,18,41,18,50,225,227,227,229,238,116,128,30,64,226,229,236,239,119,128,30,66,229,238,225,242,237,229,238,233,225,110,128,5,68,237,239,238,239,243,240,225,227,101,128,255,45,243,237,225,236,108,128,247,109,244,245,242,238,229,100,128,1,156,117,128,3,156,78,141,0,78,18,134,18,138,18,146,18,212,18,237,18,248,19,3,19,21,19,33,19,45,19,58,19,66,19,84,74,128,1,202,225,227,245,244,101,128,1,67,99,4,18,156,18,163,18,172,18,199,225,242,239,110,128,1,71,229,228,233,236,236,97,128,1,69,233,242,99,2,18,180,18,185,236,101,128,36,195,245,237,230,236,229,248,226,229,236,239,119,128,30,74,239,237,237,225,225,227,227,229,238,116,128,1,69,228,239,116,2,18,220,18,229,225,227,227,229,238,116,128,30,68,226,229,236,239,119,128,30,70,232,239,239,235,236,229,230,116,128,1,157,233,238,229,242,239,237,225,110,128,33,104,106,129,1,203,19,9,229,227,249,242,233,236,236,233,99,128,4,10,236,233,238,229,226,229,236,239,119,128,30,72,237,239,238,239,243,240,225,227,101,128,255,46,239,247,225,242,237,229,238,233,225,110,128,5,70,243,237,225,236,108,128,247,110,244,233,236,228,101,129,0,209,19,76,243,237,225,236,108,128,247,241,117,128,3,157,79,141,0,79,19,118,19,132,19,150,19,203,20,78,20,152,20,187,21,48,21,69,21,213,21,223,21,254,22,53,69,129,1,82,19,124,243,237,225,236,108,128,246,250,225,227,245,244,101,129,0,211,19,142,243,237,225,236,108,128,247,243,98,2,19,156,19,196,225,242,242,229,100,2,19,166,19,177,227,249,242,233,236,236,233,99,128,4,232,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,234,242,229,246,101,128,1,78,99,4,19,213,19,220,19,235,20,68,225,242,239,110,128,1,209,229,238,244,229,242,229,228,244,233,236,228,101,128,1,159,233,242,99,2,19,243,19,248,236,101,128,36,196,245,237,230,236,229,120,134,0,212,20,13,20,21,20,32,20,40,20,52,20,60,225,227,245,244,101,128,30,208,228,239,244,226,229,236,239,119,128,30,216,231,242,225,246,101,128,30,210,232,239,239,235,225,226,239,246,101,128,30,212,243,237,225,236,108,128,247,244,244,233,236,228,101,128,30,214,249,242,233,236,236,233,99,128,4,30,100,3,20,86,20,109,20,142,226,108,2,20,93,20,101,225,227,245,244,101,128,1,80,231,242,225,246,101,128,2,12,233,229,242,229,243,233,115,130,0,214,20,123,20,134,227,249,242,233,236,236,233,99,128,4,230,243,237,225,236,108,128,247,246,239,244,226,229,236,239,119,128,30,204,103,2,20,158,20,170,239,238,229,235,243,237,225,236,108,128,246,251,242,225,246,101,129,0,210,20,179,243,237,225,236,108,128,247,242,104,4,20,197,20,208,20,212,21,34,225,242,237,229,238,233,225,110,128,5,85,109,128,33,38,111,2,20,218,20,228,239,235,225,226,239,246,101,128,30,206,242,110,133,1,160,20,243,20,251,21,6,21,14,21,26,225,227,245,244,101,128,30,218,228,239,244,226,229,236,239,119,128,30,226,231,242,225,246,101,128,30,220,232,239,239,235,225,226,239,246,101,128,30,222,244,233,236,228,101,128,30,224,245,238,231,225,242,245,237,236,225,245,116,128,1,80,105,129,1,162,21,54,238,246,229,242,244,229,228,226,242,229,246,101,128,2,14,109,4,21,79,21,107,21,184,21,202,225,227,242,239,110,130,1,76,21,91,21,99,225,227,245,244,101,128,30,82,231,242,225,246,101,128,30,80,229,231,97,132,33,38,21,121,21,132,21,140,21,156,227,249,242,233,236,236,233,99,128,4,96,231,242,229,229,107,128,3,169,242,239,245,238,228,227,249,242,233,236,236,233,99,128,4,122,116,2,21,162,21,177,233,244,236,239,227,249,242,233,236,236,233,99,128,4,124,239,238,239,115,128,3,143,233,227,242,239,110,129,3,159,21,194,244,239,238,239,115,128,3,140,239,238,239,243,240,225,227,101,128,255,47,238,229,242,239,237,225,110,128,33,96,111,2,21,229,21,248,231,239,238,229,107,129,1,234,21,239,237,225,227,242,239,110,128,1,236,240,229,110,128,1,134,115,3,22,6,22,33,22,40,236,225,243,104,130,0,216,22,17,22,25,225,227,245,244,101,128,1,254,243,237,225,236,108,128,247,248,237,225,236,108,128,247,111,244,242,239,235,229,225,227,245,244,101,128,1,254,116,2,22,59,22,70,227,249,242,233,236,236,233,99,128,4,126,233,236,228,101,131,0,213,22,83,22,91,22,102,225,227,245,244,101,128,30,76,228,233,229,242,229,243,233,115,128,30,78,243,237,225,236,108,128,247,245,80,136,0,80,22,130,22,138,22,147,22,159,22,211,22,227,22,246,23,2,225,227,245,244,101,128,30,84,227,233,242,227,236,101,128,36,197,228,239,244,225,227,227,229,238,116,128,30,86,101,3,22,167,22,178,22,190,227,249,242,233,236,236,233,99,128,4,31,232,225,242,237,229,238,233,225,110,128,5,74,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,166,104,2,22,217,22,221,105,128,3,166,239,239,107,128,1,164,105,129,3,160,22,233,247,242,225,242,237,229,238,233,225,110,128,5,83,237,239,238,239,243,240,225,227,101,128,255,48,115,2,23,8,23,25,105,129,3,168,23,14,227,249,242,233,236,236,233,99,128,4,112,237,225,236,108,128,247,112,81,131,0,81,23,42,23,51,23,63,227,233,242,227,236,101,128,36,198,237,239,238,239,243,240,225,227,101,128,255,49,243,237,225,236,108,128,247,113,82,138,0,82,23,95,23,119,23,166,23,217,23,230,23,240,23,245,24,19,24,31,24,43,97,2,23,101,23,112,225,242,237,229,238,233,225,110,128,5,76,227,245,244,101,128,1,84,99,4,23,129,23,136,23,145,23,153,225,242,239,110,128,1,88,229,228,233,236,236,97,128,1,86,233,242,227,236,101,128,36,199,239,237,237,225,225,227,227,229,238,116,128,1,86,100,2,23,172,23,182,226,236,231,242,225,246,101,128,2,16,239,116,2,23,189,23,198,225,227,227,229,238,116,128,30,88,226,229,236,239,119,129,30,90,23,208,237,225,227,242,239,110,128,30,92,229,232,225,242,237,229,238,233,225,110,128,5,80,230,242,225,235,244,245,114,128,33,28,232,111,128,3,161,233,110,2,23,252,24,5,231,243,237,225,236,108,128,246,252,246,229,242,244,229,228,226,242,229,246,101,128,2,18,236,233,238,229,226,229,236,239,119,128,30,94,237,239,238,239,243,240,225,227,101,128,255,50,243,237,225,236,108,129,247,114,24,53,233,238,246,229,242,244,229,100,129,2,129,24,66,243,245,240,229,242,233,239,114,128,2,182,83,139,0,83,24,103,26,17,26,55,26,182,26,221,26,250,27,84,27,105,27,117,27,135,27,143,70,6,24,117,24,209,24,241,25,77,25,119,25,221,48,9,24,137,24,145,24,153,24,161,24,169,24,177,24,185,24,193,24,201,177,176,176,176,48,128,37,12,178,176,176,176,48,128,37,20,179,176,176,176,48,128,37,16,180,176,176,176,48,128,37,24,181,176,176,176,48,128,37,60,182,176,176,176,48,128,37,44,183,176,176,176,48,128,37,52,184,176,176,176,48,128,37,28,185,176,176,176,48,128,37,36,49,3,24,217,24,225,24,233,176,176,176,176,48,128,37,0,177,176,176,176,48,128,37,2,185,176,176,176,48,128,37,97,50,9,25,5,25,13,25,21,25,29,25,37,25,45,25,53,25,61,25,69,176,176,176,176,48,128,37,98,177,176,176,176,48,128,37,86,178,176,176,176,48,128,37,85,179,176,176,176,48,128,37,99,180,176,176,176,48,128,37,81,181,176,176,176,48,128,37,87,182,176,176,176,48,128,37,93,183,176,176,176,48,128,37,92,184,176,176,176,48,128,37,91,51,4,25,87,25,95,25,103,25,111,182,176,176,176,48,128,37,94,183,176,176,176,48,128,37,95,184,176,176,176,48,128,37,90,185,176,176,176,48,128,37,84,52,10,25,141,25,149,25,157,25,165,25,173,25,181,25,189,25,197,25,205,25,213,176,176,176,176,48,128,37,105,177,176,176,176,48,128,37,102,178,176,176,176,48,128,37,96,179,176,176,176,48,128,37,80,180,176,176,176,48,128,37,108,181,176,176,176,48,128,37,103,182,176,176,176,48,128,37,104,183,176,176,176,48,128,37,100,184,176,176,176,48,128,37,101,185,176,176,176,48,128,37,89,53,5,25,233,25,241,25,249,26,1,26,9,176,176,176,176,48,128,37,88,177,176,176,176,48,128,37,82,178,176,176,176,48,128,37,83,179,176,176,176,48,128,37,107,180,176,176,176,48,128,37,106,97,2,26,23,26,44,227,245,244,101,129,1,90,26,32,228,239,244,225,227,227,229,238,116,128,30,100,237,240,233,231,242,229,229,107,128,3,224,99,5,26,67,26,98,26,107,26,147,26,169,225,242,239,110,130,1,96,26,78,26,90,228,239,244,225,227,227,229,238,116,128,30,102,243,237,225,236,108,128,246,253,229,228,233,236,236,97,128,1,94,232,247,97,130,1,143,26,117,26,128,227,249,242,233,236,236,233,99,128,4,216,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,218,233,242,99,2,26,155,26,160,236,101,128,36,200,245,237,230,236,229,120,128,1,92,239,237,237,225,225,227,227,229,238,116,128,2,24,228,239,116,2,26,190,26,199,225,227,227,229,238,116,128,30,96,226,229,236,239,119,129,30,98,26,209,228,239,244,225,227,227,229,238,116,128,30,104,101,2,26,227,26,239,232,225,242,237,229,238,233,225,110,128,5,77,246,229,238,242,239,237,225,110,128,33,102,104,5,27,6,27,34,27,48,27,59,27,72,97,2,27,12,27,23,225,242,237,229,238,233,225,110,128,5,71,227,249,242,233,236,236,233,99,128,4,40,227,232,225,227,249,242,233,236,236,233,99,128,4,41,229,233,227,239,240,244,233,99,128,3,226,232,225,227,249,242,233,236,236,233,99,128,4,186,233,237,225,227,239,240,244,233,99,128,3,236,105,2,27,90,27,96,231,237,97,128,3,163,248,242,239,237,225,110,128,33,101,237,239,238,239,243,240,225,227,101,128,255,51,239,230,244,243,233,231,238,227,249,242,233,236,236,233,99,128,4,44,243,237,225,236,108,128,247,115,244,233,231,237,225,231,242,229,229,107,128,3,218,84,141,0,84,27,186,27,191,27,197,28,7,28,32,28,96,28,147,28,177,28,189,28,201,28,246,29,6,29,46,225,117,128,3,164,226,225,114,128,1,102,99,4,27,207,27,214,27,223,27,250,225,242,239,110,128,1,100,229,228,233,236,236,97,128,1,98,233,242,99,2,27,231,27,236,236,101,128,36,201,245,237,230,236,229,248,226,229,236,239,119,128,30,112,239,237,237,225,225,227,227,229,238,116,128,1,98,228,239,116,2,28,15,28,24,225,227,227,229,238,116,128,30,106,226,229,236,239,119,128,30,108,101,4,28,42,28,53,28,73,28,82,227,249,242,233,236,236,233,99,128,4,34,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,172,238,242,239,237,225,110,128,33,105,244,243,229,227,249,242,233,236,236,233,99,128,4,180,104,3,28,104,28,110,28,136,229,244,97,128,3,152,111,2,28,116,28,121,239,107,128,1,172,242,110,129,0,222,28,128,243,237,225,236,108,128,247,254,242,229,229,242,239,237,225,110,128,33,98,105,2,28,153,28,164,236,228,229,243,237,225,236,108,128,246,254,247,238,225,242,237,229,238,233,225,110,128,5,79,236,233,238,229,226,229,236,239,119,128,30,110,237,239,238,239,243,240,225,227,101,128,255,52,111,2,28,207,28,218,225,242,237,229,238,233,225,110,128,5,57,238,101,3,28,227,28,234,28,240,230,233,246,101,128,1,188,243,233,120,128,1,132,244,247,111,128,1,167,242,229,244,242,239,230,236,229,248,232,239,239,107,128,1,174,115,3,29,14,29,26,29,39,229,227,249,242,233,236,236,233,99,128,4,38,232,229,227,249,242,233,236,236,233,99,128,4,11,237,225,236,108,128,247,116,119,2,29,52,29,64,229,236,246,229,242,239,237,225,110,128,33,107,239,242,239,237,225,110,128,33,97,85,142,0,85,29,105,29,123,29,131,29,198,30,69,30,87,30,198,30,214,30,226,31,21,31,30,31,142,31,149,31,219,225,227,245,244,101,129,0,218,29,115,243,237,225,236,108,128,247,250,226,242,229,246,101,128,1,108,99,3,29,139,29,146,29,188,225,242,239,110,128,1,211,233,242,99,2,29,154,29,159,236,101,128,36,202,245,237,230,236,229,120,130,0,219,29,172,29,180,226,229,236,239,119,128,30,118,243,237,225,236,108,128,247,251,249,242,233,236,236,233,99,128,4,35,100,3,29,206,29,229,30,59,226,108,2,29,213,29,221,225,227,245,244,101,128,1,112,231,242,225,246,101,128,2,20,233,229,242,229,243,233,115,134,0,220,29,251,30,3,30,11,30,34,30,42,30,51,225,227,245,244,101,128,1,215,226,229,236,239,119,128,30,114,99,2,30,17,30,24,225,242,239,110,128,1,217,249,242,233,236,236,233,99,128,4,240,231,242,225,246,101,128,1,219,237,225,227,242,239,110,128,1,213,243,237,225,236,108,128,247,252,239,244,226,229,236,239,119,128,30,228,231,242,225,246,101,129,0,217,30,79,243,237,225,236,108,128,247,249,104,2,30,93,30,171,111,2,30,99,30,109,239,235,225,226,239,246,101,128,30,230,242,110,133,1,175,30,124,30,132,30,143,30,151,30,163,225,227,245,244,101,128,30,232,228,239,244,226,229,236,239,119,128,30,240,231,242,225,246,101,128,30,234,232,239,239,235,225,226,239,246,101,128,30,236,244,233,236,228,101,128,30,238,245,238,231,225,242,245,237,236,225,245,116,129,1,112,30,187,227,249,242,233,236,236,233,99,128,4,242,233,238,246,229,242,244,229,228,226,242,229,246,101,128,2,22,235,227,249,242,233,236,236,233,99,128,4,120,109,2,30,232,31,10,225,227,242,239,110,130,1,106,30,244,30,255,227,249,242,233,236,236,233,99,128,4,238,228,233,229,242,229,243,233,115,128,30,122,239,238,239,243,240,225,227,101,128,255,53,239,231,239,238,229,107,128,1,114,240,243,233,236,239,110,133,3,165,31,49,31,53,31,90,31,121,31,134,49,128,3,210,97,2,31,59,31,81,227,245,244,229,232,239,239,235,243,249,237,226,239,236,231,242,229,229,107,128,3,211,230,242,233,227,225,110,128,1,177,228,233,229,242,229,243,233,115,129,3,171,31,103,232,239,239,235,243,249,237,226,239,236,231,242,229,229,107,128,3,212],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10240);allocate([232,239,239,235,243,249,237,226,239,108,128,3,210,244,239,238,239,115,128,3,142,242,233,238,103,128,1,110,115,3,31,157,31,172,31,179,232,239,242,244,227,249,242,233,236,236,233,99,128,4,14,237,225,236,108,128,247,117,244,242,225,233,231,232,116,2,31,191,31,202,227,249,242,233,236,236,233,99,128,4,174,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,176,244,233,236,228,101,130,1,104,31,231,31,239,225,227,245,244,101,128,30,120,226,229,236,239,119,128,30,116,86,136,0,86,32,11,32,20,32,31,32,60,32,67,32,79,32,91,32,99,227,233,242,227,236,101,128,36,203,228,239,244,226,229,236,239,119,128,30,126,101,2,32,37,32,48,227,249,242,233,236,236,233,99,128,4,18,247,225,242,237,229,238,233,225,110,128,5,78,232,239,239,107,128,1,178,237,239,238,239,243,240,225,227,101,128,255,54,239,225,242,237,229,238,233,225,110,128,5,72,243,237,225,236,108,128,247,118,244,233,236,228,101,128,30,124,87,134,0,87,32,123,32,131,32,154,32,194,32,202,32,214,225,227,245,244,101,128,30,130,227,233,242,99,2,32,140,32,145,236,101,128,36,204,245,237,230,236,229,120,128,1,116,100,2,32,160,32,170,233,229,242,229,243,233,115,128,30,132,239,116,2,32,177,32,186,225,227,227,229,238,116,128,30,134,226,229,236,239,119,128,30,136,231,242,225,246,101,128,30,128,237,239,238,239,243,240,225,227,101,128,255,55,243,237,225,236,108,128,247,119,88,134,0,88,32,238,32,247,33,18,33,31,33,35,33,47,227,233,242,227,236,101,128,36,205,100,2,32,253,33,7,233,229,242,229,243,233,115,128,30,140,239,244,225,227,227,229,238,116,128,30,138,229,232,225,242,237,229,238,233,225,110,128,5,61,105,128,3,158,237,239,238,239,243,240,225,227,101,128,255,56,243,237,225,236,108,128,247,120,89,139,0,89,33,81,33,116,33,139,33,189,33,228,33,236,33,253,34,40,34,52,34,60,34,68,97,2,33,87,33,104,227,245,244,101,129,0,221,33,96,243,237,225,236,108,128,247,253,244,227,249,242,233,236,236,233,99,128,4,98,227,233,242,99,2,33,125,33,130,236,101,128,36,206,245,237,230,236,229,120,128,1,118,100,2,33,145,33,165,233,229,242,229,243,233,115,129,1,120,33,157,243,237,225,236,108,128,247,255,239,116,2,33,172,33,181,225,227,227,229,238,116,128,30,142,226,229,236,239,119,128,30,244,229,114,2,33,196,33,208,233,227,249,242,233,236,236,233,99,128,4,43,245,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,248,231,242,225,246,101,128,30,242,232,239,239,107,129,1,179,33,245,225,226,239,246,101,128,30,246,105,3,34,5,34,16,34,27,225,242,237,229,238,233,225,110,128,5,69,227,249,242,233,236,236,233,99,128,4,7,247,238,225,242,237,229,238,233,225,110,128,5,82,237,239,238,239,243,240,225,227,101,128,255,57,243,237,225,236,108,128,247,121,244,233,236,228,101,128,30,248,245,115,2,34,75,34,113,226,233,103,2,34,83,34,94,227,249,242,233,236,236,233,99,128,4,106,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,108,236,233,244,244,236,101,2,34,124,34,135,227,249,242,233,236,236,233,99,128,4,102,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,104,90,136,0,90,34,174,34,198,34,243,35,14,35,81,35,173,35,185,35,197,97,2,34,180,34,191,225,242,237,229,238,233,225,110,128,5,54,227,245,244,101,128,1,121,99,2,34,204,34,221,225,242,239,110,129,1,125,34,213,243,237,225,236,108,128,246,255,233,242,99,2,34,229,34,234,236,101,128,36,207,245,237,230,236,229,120,128,30,144,228,239,116,130,1,123,34,253,35,6,225,227,227,229,238,116,128,1,123,226,229,236,239,119,128,30,146,101,3,35,22,35,33,35,76,227,249,242,233,236,236,233,99,128,4,23,100,2,35,39,35,58,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,152,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,222,244,97,128,3,150,232,101,4,35,92,35,103,35,119,35,130,225,242,237,229,238,233,225,110,128,5,58,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,193,227,249,242,233,236,236,233,99,128,4,22,100,2,35,136,35,155,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,150,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,220,236,233,238,229,226,229,236,239,119,128,30,148,237,239,238,239,243,240,225,227,101,128,255,58,115,2,35,203,35,210,237,225,236,108,128,247,122,244,242,239,235,101,128,1,181,97,149,0,97,36,8,36,144,37,35,37,211,38,55,38,91,45,10,45,47,45,74,46,43,46,81,47,170,47,242,48,197,48,206,49,79,51,87,52,77,52,124,53,19,53,33,97,7,36,24,36,34,36,41,36,48,36,73,36,89,36,100,226,229,238,231,225,236,105,128,9,134,227,245,244,101,128,0,225,228,229,246,97,128,9,6,231,117,2,36,55,36,64,234,225,242,225,244,105,128,10,134,242,237,245,235,232,105,128,10,6,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,62,242,245,243,241,245,225,242,101,128,51,3,246,239,247,229,236,243,233,231,110,3,36,116,36,126,36,133,226,229,238,231,225,236,105,128,9,190,228,229,246,97,128,9,62,231,245,234,225,242,225,244,105,128,10,190,98,4,36,154,36,195,36,204,36,214,226,242,229,246,233,225,244,233,239,110,2,36,169,36,184,237,225,242,235,225,242,237,229,238,233,225,110,128,5,95,243,233,231,238,228,229,246,97,128,9,112,229,238,231,225,236,105,128,9,133,239,240,239,237,239,230,111,128,49,26,242,229,246,101,134,1,3,36,233,36,241,36,252,37,7,37,15,37,27,225,227,245,244,101,128,30,175,227,249,242,233,236,236,233,99,128,4,209,228,239,244,226,229,236,239,119,128,30,183,231,242,225,246,101,128,30,177,232,239,239,235,225,226,239,246,101,128,30,179,244,233,236,228,101,128,30,181,99,4,37,45,37,52,37,131,37,201,225,242,239,110,128,1,206,233,242,99,2,37,60,37,65,236,101,128,36,208,245,237,230,236,229,120,133,0,226,37,84,37,92,37,103,37,111,37,123,225,227,245,244,101,128,30,165,228,239,244,226,229,236,239,119,128,30,173,231,242,225,246,101,128,30,167,232,239,239,235,225,226,239,246,101,128,30,169,244,233,236,228,101,128,30,171,245,244,101,133,0,180,37,147,37,158,37,175,37,182,37,191,226,229,236,239,247,227,237,98,128,3,23,99,2,37,164,37,169,237,98,128,3,1,239,237,98,128,3,1,228,229,246,97,128,9,84,236,239,247,237,239,100,128,2,207,244,239,238,229,227,237,98,128,3,65,249,242,233,236,236,233,99,128,4,48,100,5,37,223,37,233,37,247,37,253,38,31,226,236,231,242,225,246,101,128,2,1,228,225,235,231,245,242,237,245,235,232,105,128,10,113,229,246,97,128,9,5,233,229,242,229,243,233,115,130,0,228,38,11,38,22,227,249,242,233,236,236,233,99,128,4,211,237,225,227,242,239,110,128,1,223,239,116,2,38,38,38,46,226,229,236,239,119,128,30,161,237,225,227,242,239,110,128,1,225,101,131,0,230,38,65,38,73,38,82,225,227,245,244,101,128,1,253,235,239,242,229,225,110,128,49,80,237,225,227,242,239,110,128,1,227,230,233,105,6,38,107,38,127,41,64,41,70,41,85,44,185,48,2,38,113,38,120,176,178,176,56,128,32,21,184,185,180,49,128,32,164,177,48,3,38,136,40,160,41,39,48,9,38,156,38,176,38,238,39,44,39,106,39,168,39,230,40,36,40,98,49,3,38,164,38,168,38,172,55,128,4,16,56,128,4,17,57,128,4,18,50,10,38,198,38,202,38,206,38,210,38,214,38,218,38,222,38,226,38,230,38,234,48,128,4,19,49,128,4,20,50,128,4,21,51,128,4,1,52,128,4,22,53,128,4,23,54,128,4,24,55,128,4,25,56,128,4,26,57,128,4,27,51,10,39,4,39,8,39,12,39,16,39,20,39,24,39,28,39,32,39,36,39,40,48,128,4,28,49,128,4,29,50,128,4,30,51,128,4,31,52,128,4,32,53,128,4,33,54,128,4,34,55,128,4,35,56,128,4,36,57,128,4,37,52,10,39,66,39,70,39,74,39,78,39,82,39,86,39,90,39,94,39,98,39,102,48,128,4,38,49,128,4,39,50,128,4,40,51,128,4,41,52,128,4,42,53,128,4,43,54,128,4,44,55,128,4,45,56,128,4,46,57,128,4,47,53,10,39,128,39,132,39,136,39,140,39,144,39,148,39,152,39,156,39,160,39,164,48,128,4,144,49,128,4,2,50,128,4,3,51,128,4,4,52,128,4,5,53,128,4,6,54,128,4,7,55,128,4,8,56,128,4,9,57,128,4,10,54,10,39,190,39,194,39,198,39,202,39,206,39,210,39,214,39,218,39,222,39,226,48,128,4,11,49,128,4,12,50,128,4,14,51,128,246,196,52,128,246,197,53,128,4,48,54,128,4,49,55,128,4,50,56,128,4,51,57,128,4,52,55,10,39,252,40,0,40,4,40,8,40,12,40,16,40,20,40,24,40,28,40,32,48,128,4,53,49,128,4,81,50,128,4,54,51,128,4,55,52,128,4,56,53,128,4,57,54,128,4,58,55,128,4,59,56,128,4,60,57,128,4,61,56,10,40,58,40,62,40,66,40,70,40,74,40,78,40,82,40,86,40,90,40,94,48,128,4,62,49,128,4,63,50,128,4,64,51,128,4,65,52,128,4,66,53,128,4,67,54,128,4,68,55,128,4,69,56,128,4,70,57,128,4,71,57,10,40,120,40,124,40,128,40,132,40,136,40,140,40,144,40,148,40,152,40,156,48,128,4,72,49,128,4,73,50,128,4,74,51,128,4,75,52,128,4,76,53,128,4,77,54,128,4,78,55,128,4,79,56,128,4,145,57,128,4,82,49,4,40,170,40,232,40,237,41,7,48,10,40,192,40,196,40,200,40,204,40,208,40,212,40,216,40,220,40,224,40,228,48,128,4,83,49,128,4,84,50,128,4,85,51,128,4,86,52,128,4,87,53,128,4,88,54,128,4,89,55,128,4,90,56,128,4,91,57,128,4,92,177,48,128,4,94,52,4,40,247,40,251,40,255,41,3,53,128,4,15,54,128,4,98,55,128,4,114,56,128,4,116,57,5,41,19,41,23,41,27,41,31,41,35,50,128,246,198,51,128,4,95,52,128,4,99,53,128,4,115,54,128,4,117,56,2,41,45,41,59,51,2,41,51,41,55,49,128,246,199,50,128,246,200,180,54,128,4,217,178,185,57,128,32,14,179,48,2,41,77,41,81,48,128,32,15,49,128,32,13,181,55,7,41,102,41,172,42,237,43,58,44,15,44,108,44,179,51,2,41,108,41,122,56,2,41,114,41,118,49,128,6,106,56,128,6,12,57,8,41,140,41,144,41,148,41,152,41,156,41,160,41,164,41,168,50,128,6,96,51,128,6,97,52,128,6,98,53,128,6,99,54,128,6,100,55,128,6,101,56,128,6,102,57,128,6,103,52,7,41,188,41,220,42,26,42,88,42,120,42,176,42,232,48,5,41,200,41,204,41,208,41,212,41,216,48,128,6,104,49,128,6,105,51,128,6,27,55,128,6,31,57,128,6,33,49,10,41,242,41,246,41,250,41,254,42,2,42,6,42,10,42,14,42,18,42,22,48,128,6,34,49,128,6,35,50,128,6,36,51,128,6,37,52,128,6,38,53,128,6,39,54,128,6,40,55,128,6,41,56,128,6,42,57,128,6,43,50,10,42,48,42,52,42,56,42,60,42,64,42,68,42,72,42,76,42,80,42,84,48,128,6,44,49,128,6,45,50,128,6,46,51,128,6,47,52,128,6,48,53,128,6,49,54,128,6,50,55,128,6,51,56,128,6,52,57,128,6,53,51,5,42,100,42,104,42,108,42,112,42,116,48,128,6,54,49,128,6,55,50,128,6,56,51,128,6,57,52,128,6,58,52,9,42,140,42,144,42,148,42,152,42,156,42,160,42,164,42,168,42,172,48,128,6,64,49,128,6,65,50,128,6,66,51,128,6,67,52,128,6,68,53,128,6,69,54,128,6,70,56,128,6,72,57,128,6,73,53,9,42,196,42,200,42,204,42,208,42,212,42,216,42,220,42,224,42,228,48,128,6,74,49,128,6,75,50,128,6,76,51,128,6,77,52,128,6,78,53,128,6,79,54,128,6,80,55,128,6,81,56,128,6,82,183,48,128,6,71,53,3,42,245,43,21,43,53,48,5,43,1,43,5,43,9,43,13,43,17,53,128,6,164,54,128,6,126,55,128,6,134,56,128,6,152,57,128,6,175,49,5,43,33,43,37,43,41,43,45,43,49,49,128,6,121,50,128,6,136,51,128,6,145,52,128,6,186,57,128,6,210,179,52,128,6,213,54,7,43,74,43,79,43,84,43,89,43,127,43,189,43,251,179,54,128,32,170,180,53,128,5,190,181,56,128,5,195,54,6,43,103,43,107,43,111,43,115,43,119,43,123,52,128,5,208,53,128,5,209,54,128,5,210,55,128,5,211,56,128,5,212,57,128,5,213,55,10,43,149,43,153,43,157,43,161,43,165,43,169,43,173,43,177,43,181,43,185,48,128,5,214,49,128,5,215,50,128,5,216,51,128,5,217,52,128,5,218,53,128,5,219,54,128,5,220,55,128,5,221,56,128,5,222,57,128,5,223,56,10,43,211,43,215,43,219,43,223,43,227,43,231,43,235,43,239,43,243,43,247,48,128,5,224,49,128,5,225,50,128,5,226,51,128,5,227,52,128,5,228,53,128,5,229,54,128,5,230,55,128,5,231,56,128,5,232,57,128,5,233,57,3,44,3,44,7,44,11,48,128,5,234,52,128,251,42,53,128,251,43,55,4,44,25,44,39,44,59,44,64,48,2,44,31,44,35,48,128,251,75,53,128,251,31,49,3,44,47,44,51,44,55,54,128,5,240,55,128,5,241,56,128,5,242,178,51,128,251,53,57,7,44,80,44,84,44,88,44,92,44,96,44,100,44,104,51,128,5,180,52,128,5,181,53,128,5,182,54,128,5,187,55,128,5,184,56,128,5,183,57,128,5,176,56,3,44,116,44,160,44,165,48,7,44,132,44,136,44,140,44,144,44,148,44,152,44,156,48,128,5,178,49,128,5,177,50,128,5,179,51,128,5,194,52,128,5,193,54,128,5,185,55,128,5,188,179,57,128,5,189,52,2,44,171,44,175,49,128,5,191,50,128,5,192,185,178,57,128,2,188,54,3,44,193,44,252,45,3,49,4,44,203,44,219,44,225,44,246,50,2,44,209,44,214,180,56,128,33,5,184,57,128,33,19,179,181,50,128,33,22,181,55,3,44,234,44,238,44,242,51,128,32,44,52,128,32,45,53,128,32,46,182,182,52,128,32,12,179,177,182,55,128,6,109,180,185,179,55,128,2,189,103,2,45,16,45,23,242,225,246,101,128,0,224,117,2,45,29,45,38,234,225,242,225,244,105,128,10,133,242,237,245,235,232,105,128,10,5,104,2,45,53,45,63,233,242,225,231,225,238,97,128,48,66,239,239,235,225,226,239,246,101,128,30,163,105,7,45,90,45,115,45,122,45,134,45,159,45,175,45,255,98,2,45,96,45,105,229,238,231,225,236,105,128,9,144,239,240,239,237,239,230,111,128,49,30,228,229,246,97,128,9,16,229,227,249,242,233,236,236,233,99,128,4,213,231,117,2,45,141,45,150,234,225,242,225,244,105,128,10,144,242,237,245,235,232,105,128,10,16,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,72,110,5,45,187,45,196,45,210,45,226,45,241,225,242,225,226,233,99,128,6,57,230,233,238,225,236,225,242,225,226,233,99,128,254,202,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,203,237,229,228,233,225,236,225,242,225,226,233,99,128,254,204,246,229,242,244,229,228,226,242,229,246,101,128,2,3,246,239,247,229,236,243,233,231,110,3,46,15,46,25,46,32,226,229,238,231,225,236,105,128,9,200,228,229,246,97,128,9,72,231,245,234,225,242,225,244,105,128,10,200,107,2,46,49,46,73,225,244,225,235,225,238,97,129,48,162,46,61,232,225,236,230,247,233,228,244,104,128,255,113,239,242,229,225,110,128,49,79,108,3,46,89,47,145,47,154,101,2,46,95,47,140,102,136,5,208,46,115,46,124,46,139,46,153,46,242,47,0,47,111,47,125,225,242,225,226,233,99,128,6,39,228,225,231,229,243,232,232,229,226,242,229,119,128,251,48,230,233,238,225,236,225,242,225,226,233,99,128,254,142,104,2,46,159,46,234,225,237,250,97,2,46,168,46,201,225,226,239,246,101,2,46,178,46,187,225,242,225,226,233,99,128,6,35,230,233,238,225,236,225,242,225,226,233,99,128,254,132,226,229,236,239,119,2,46,211,46,220,225,242,225,226,233,99,128,6,37,230,233,238,225,236,225,242,225,226,233,99,128,254,136,229,226,242,229,119,128,5,208,236,225,237,229,228,232,229,226,242,229,119,128,251,79,237,97,2,47,7,47,43,228,228,225,225,226,239,246,101,2,47,20,47,29,225,242,225,226,233,99,128,6,34,230,233,238,225,236,225,242,225,226,233,99,128,254,130,235,243,245,242,97,4,47,57,47,66,47,80,47,96,225,242,225,226,233,99,128,6,73,230,233,238,225,236,225,242,225,226,233,99,128,254,240,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,243,237,229,228,233,225,236,225,242,225,226,233,99,128,254,244,240,225,244,225,232,232,229,226,242,229,119,128,251,46,241,225,237,225,244,243,232,229,226,242,229,119,128,251,47,240,104,128,33,53,236,229,241,245,225,108,128,34,76,240,232,97,129,3,177,47,162,244,239,238,239,115,128,3,172,109,4,47,180,47,188,47,199,47,233,225,227,242,239,110,128,1,1,239,238,239,243,240,225,227,101,128,255,65,240,229,242,243,225,238,100,130,0,38,47,213,47,225,237,239,238,239,243,240,225,227,101,128,255,6,243,237,225,236,108,128,247,38,243,241,245,225,242,101,128,51,194,110,4,47,252,48,7,48,129,48,139,226,239,240,239,237,239,230,111,128,49,34,103,4,48,17,48,28,48,42,48,121,226,239,240,239,237,239,230,111,128,49,36,235,232,225,238,235,232,245,244,232,225,105,128,14,90,236,101,131,34,32,48,53,48,106,48,113,226,242,225,227,235,229,116,2,48,65,48,85,236,229,230,116,129,48,8,48,74,246,229,242,244,233,227,225,108,128,254,63,242,233,231,232,116,129,48,9,48,95,246,229,242,244,233,227,225,108,128,254,64,236,229,230,116,128,35,41,242,233,231,232,116,128,35,42,243,244,242,239,109,128,33,43,239,244,229,236,229,233,97,128,3,135,117,2,48,145,48,157,228,225,244,244,225,228,229,246,97,128,9,82,243,246,225,242,97,3,48,169,48,179,48,186,226,229,238,231,225,236,105,128,9,130,228,229,246,97,128,9,2,231,245,234,225,242,225,244,105,128,10,130,239,231,239,238,229,107,128,1,5,112,3,48,214,48,238,49,12,97,2,48,220,48,232,225,244,239,243,241,245,225,242,101,128,51,0,242,229,110,128,36,156,239,243,244,242,239,240,232,101,2,48,251,49,6,225,242,237,229,238,233,225,110,128,5,90,237,239,100,128,2,188,112,2,49,18,49,23,236,101,128,248,255,242,111,2,49,30,49,38,225,227,232,229,115,128,34,80,120,2,49,44,49,64,229,241,245,225,108,129,34,72,49,54,239,242,233,237,225,231,101,128,34,82,233,237,225,244,229,236,249,229,241,245,225,108,128,34,69,114,4,49,89,49,116,49,120,49,165,225,229,97,2,49,97,49,107,229,235,239,242,229,225,110,128,49,142,235,239,242,229,225,110,128,49,141,99,128,35,18,105,2,49,126,49,140,231,232,244,232,225,236,230,242,233,238,103,128,30,154,238,103,130,0,229,49,149,49,157,225,227,245,244,101,128,1,251,226,229,236,239,119,128,30,1,242,239,119,8,49,185,49,192,50,65,50,131,50,181,50,236,51,3,51,78,226,239,244,104,128,33,148,100,3,49,200,49,239,50,30,225,243,104,4,49,212,49,219,49,226,49,234,228,239,247,110,128,33,227,236,229,230,116,128,33,224,242,233,231,232,116,128,33,226,245,112,128,33,225,226,108,5,49,252,50,3,50,10,50,17,50,25,226,239,244,104,128,33,212,228,239,247,110,128,33,211,236,229,230,116,128,33,208,242,233,231,232,116,128,33,210,245,112,128,33,209,239,247,110,131,33,147,50,42,50,49,50,57,236,229,230,116,128,33,153,242,233,231,232,116,128,33,152,247,232,233,244,101,128,33,233,104,2,50,71,50,122,229,225,100,4,50,83,50,93,50,103,50,114,228,239,247,238,237,239,100,128,2,197,236,229,230,244,237,239,100,128,2,194,242,233,231,232,244,237,239,100,128,2,195,245,240,237,239,100,128,2,196,239,242,233,250,229,120,128,248,231,236,229,230,116,131,33,144,50,144,50,161,50,173,228,226,108,129,33,208,50,152,243,244,242,239,235,101,128,33,205,239,246,229,242,242,233,231,232,116,128,33,198,247,232,233,244,101,128,33,230,242,233,231,232,116,132,33,146,50,197,50,209,50,217,50,228,228,226,236,243,244,242,239,235,101,128,33,207,232,229,225,246,121,128,39,158,239,246,229,242,236,229,230,116,128,33,196,247,232,233,244,101,128,33,232,244,225,98,2,50,244,50,251,236,229,230,116,128,33,228,242,233,231,232,116,128,33,229,245,112,132,33,145,51,16,51,44,51,62,51,70,100,2,51,22,51,34,110,129,33,149,51,28,226,243,101,128,33,168,239,247,238,226,225,243,101,128,33,168,236,229,230,116,129,33,150,51,53,239,230,228,239,247,110,128,33,197,242,233,231,232,116,128,33,151,247,232,233,244,101,128,33,231,246,229,242,244,229,120,128,248,230,115,5,51,99,51,175,51,220,52,47,52,57,99,2,51,105,51,157,233,105,2,51,112,51,135,227,233,242,227,245,109,129,0,94,51,123,237,239,238,239,243,240,225,227,101,128,255,62,244,233,236,228,101,129,0,126,51,145,237,239,238,239,243,240,225,227,101,128,255,94,242,233,240,116,129,2,81,51,166,244,245,242,238,229,100,128,2,82,237,225,236,108,2,51,184,51,195,232,233,242,225,231,225,238,97,128,48,65,235,225,244,225,235,225,238,97,129,48,161,51,208,232,225,236,230,247,233,228,244,104,128,255,103,244,229,242,233,115,2,51,230,52,43,107,131,0,42,51,240,52,12,52,35,97,2,51,246,52,4,236,244,239,238,229,225,242,225,226,233,99,128,6,109,242,225,226,233,99,128,6,109,109,2,52,18,52,24,225,244,104,128,34,23,239,238,239,243,240,225,227,101,128,255,10,243,237,225,236,108,128,254,97,109,128,32,66,245,240,229,242,233,239,114,128,246,233,249,237,240,244,239,244,233,227,225,236,236,249,229,241,245,225,108,128,34,67,116,132,0,64,52,89,52,96,52,108,52,116,233,236,228,101,128,0,227,237,239,238,239,243,240,225,227,101,128,255,32,243,237,225,236,108,128,254,107,245,242,238,229,100,128,2,80,117,6,52,138,52,163,52,170,52,195,52,215,52,231,98,2,52,144,52,153,229,238,231,225,236,105,128,9,148,239,240,239,237,239,230,111,128,49,32,228,229,246,97,128,9,20,231,117,2,52,177,52,186,234,225,242,225,244,105,128,10,148,242,237,245,235,232,105,128,10,20,236,229,238,231,244,232,237,225,242,235,226,229,238,231,225,236,105,128,9,215,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,76,246,239,247,229,236,243,233,231,110,3,52,247,53,1,53,8,226,229,238,231,225,236,105,128,9,204,228,229,246,97,128,9,76,231,245,234,225,242,225,244,105,128,10,204,246,225,231,242,225,232,225,228,229,246,97,128,9,61,121,2,53,39,53,51,226,225,242,237,229,238,233,225,110,128,5,97,233,110,130,5,226,53,60,53,75,225,236,244,239,238,229,232,229,226,242,229,119,128,251,32,232,229,226,242,229,119,128,5,226,98,144,0,98,53,120,53,255,54,10,54,19,54,44,55,85,55,147,55,220,57,146,57,158,57,201,57,209,57,219,59,89,59,113,59,122,97,7,53,136,53,146,53,170,53,177,53,202,53,226,53,237,226,229,238,231,225,236,105,128,9,172,227,235,243,236,225,243,104,129,0,92,53,158,237,239,238,239,243,240,225,227,101,128,255,60,228,229,246,97,128,9,44,231,117,2,53,184,53,193,234,225,242,225,244,105,128,10,172,242,237,245,235,232,105,128,10,44,104,2,53,208,53,218,233,242,225,231,225,238,97,128,48,112,244,244,232,225,105,128,14,63,235,225,244,225,235,225,238,97,128,48,208,114,129,0,124,53,243,237,239,238,239,243,240,225,227,101,128,255,92,226,239,240,239,237,239,230,111,128,49,5,227,233,242,227,236,101,128,36,209,228,239,116,2,54,27,54,36,225,227,227,229,238,116,128,30,3,226,229,236,239,119,128,30,5,101,6,54,58,54,79,54,102,54,244,54,255,55,11,225,237,229,228,243,233,248,244,229,229,238,244,232,238,239,244,229,115,128,38,108,99,2,54,85,54,92,225,245,243,101,128,34,53,249,242,233,236,236,233,99,128,4,49,104,5,54,114,54,123,54,137,54,167,54,226,225,242,225,226,233,99,128,6,40,230,233,238,225,236,225,242,225,226,233,99,128,254,144,105,2,54,143,54,158,238,233,244,233,225,236,225,242,225,226,233,99,128,254,145,242,225,231,225,238,97,128,48,121,237,101,2,54,174,54,187,228,233,225,236,225,242,225,226,233,99,128,254,146,229,237,105,2,54,195,54,210,238,233,244,233,225,236,225,242,225,226,233,99,128,252,159,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,8,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,109,235,225,244,225,235,225,238,97,128,48,217,238,225,242,237,229,238,233,225,110,128,5,98,116,132,5,209,55,23,55,43,55,63,55,72,97,129,3,178,55,29,243,249,237,226,239,236,231,242,229,229,107,128,3,208,228,225,231,229,243,104,129,251,49,55,54,232,229,226,242,229,119,128,251,49,232,229,226,242,229,119,128,5,209,242,225,230,229,232,229,226,242,229,119,128,251,76,104,2,55,91,55,141,97,3,55,99,55,109,55,116,226,229,238,231,225,236,105,128,9,173,228,229,246,97,128,9,45,231,117,2,55,123,55,132,234,225,242,225,244,105,128,10,173,242,237,245,235,232,105,128,10,45,239,239,107,128,2,83,105,5,55,159,55,170,55,181,55,195,55,209,232,233,242,225,231,225,238,97,128,48,115,235,225,244,225,235,225,238,97,128,48,211,236,225,226,233,225,236,227,236,233,227,107,128,2,152,238,228,233,231,245,242,237,245,235,232,105,128,10,2,242,245,243,241,245,225,242,101,128,51,49,108,3,55,228,57,129,57,140,97,2,55,234,57,124,227,107,6,55,249,56,2,56,39,56,188,56,243,57,39,227,233,242,227,236,101,128,37,207,100,2,56,8,56,17,233,225,237,239,238,100,128,37,198,239,247,238,240,239,233,238,244,233,238,231,244,242,233,225,238,231,236,101,128,37,188,108,2,56,45,56,148,101,2,56,51,56,87,230,244,240,239,233,238,244,233,238,103,2,56,66,56,76,240,239,233,238,244,229,114,128,37,196,244,242,233,225,238,231,236,101,128,37,192,238,244,233,227,245,236,225,242,226,242,225,227,235,229,116,2,56,107,56,127,236,229,230,116,129,48,16,56,116,246,229,242,244,233,227,225,108,128,254,59,242,233,231,232,116,129,48,17,56,137,246,229,242,244,233,227,225,108,128,254,60,239,247,229,114,2,56,157,56,172,236,229,230,244,244,242,233,225,238,231,236,101,128,37,227,242,233,231,232,244,244,242,233,225,238,231,236,101,128,37,226,114,2,56,194,56,205,229,227,244,225,238,231,236,101,128,37,172,233,231,232,244,240,239,233,238,244,233,238,103,2,56,222,56,232,240,239,233,238,244,229,114,128,37,186,244,242,233,225,238,231,236,101,128,37,182,115,3,56,251,57,25,57,33,109,2,57,1,57,13,225,236,236,243,241,245,225,242,101,128,37,170,233,236,233,238,231,230,225,227,101,128,38,59,241,245,225,242,101,128,37,160,244,225,114,128,38,5,245,240,112,2,57,47,57,85,229,114,2,57,54,57,69,236,229,230,244,244,242,233,225,238,231,236,101,128,37,228,242,233,231,232,244,244,242,233,225,238,231,236,101,128,37,229,239,233,238,244,233,238,103,2,57,97,57,113,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,180,244,242,233,225,238,231,236,101,128,37,178,238,107,128,36,35,233,238,229,226,229,236,239,119,128,30,7,239,227,107,128,37,136,237,239,238,239,243,240,225,227,101,128,255,66,111,3,57,166,57,179,57,190,226,225,233,237,225,233,244,232,225,105,128,14,26,232,233,242,225,231,225,238,97,128,48,124,235,225,244,225,235,225,238,97,128,48,220,240,225,242,229,110,128,36,157,241,243,241,245,225,242,101,128,51,195,114,4,57,229,58,223,59,40,59,79,225,99,2,57,236,58,130,101,3,57,244,57,249,58,61,229,120,128,248,244,236,229,230,116,133,0,123,58,10,58,15,58,37,58,45,58,50,226,116,128,248,243,109,2,58,21,58,26,233,100,128,248,242,239,238,239,243,240,225,227,101,128,255,91,243,237,225,236,108,128,254,91,244,112,128,248,241,246,229,242,244,233,227,225,108,128,254,55,242,233,231,232,116,133,0,125,58,79,58,84,58,106,58,114,58,119,226,116,128,248,254,109,2,58,90,58,95,233,100,128,248,253,239,238,239,243,240,225,227,101,128,255,93,243,237,225,236,108,128,254,92,244,112,128,248,252,246,229,242,244,233,227,225,108,128,254,56,235,229,116,2,58,138,58,180,236,229,230,116,132,0,91,58,153,58,158,58,163,58,175,226,116,128,248,240,229,120,128,248,239,237,239,238,239,243,240,225,227,101,128,255,59,244,112,128,248,238,242,233,231,232,116,132,0,93,58,196,58,201,58,206,58,218,226,116,128,248,251,229,120,128,248,250,237,239,238,239,243,240,225,227,101,128,255,61,244,112,128,248,249,229,246,101,131,2,216,58,235,58,246,58,252,226,229,236,239,247,227,237,98,128,3,46,227,237,98,128,3,6,233,238,246,229,242,244,229,100,3,59,11,59,22,59,28,226,229,236,239,247,227,237,98,128,3,47,227,237,98,128,3,17,228,239,245,226,236,229,227,237,98,128,3,97,233,228,231,101,2,59,49,59,60,226,229,236,239,247,227,237,98,128,3,42,233,238,246,229,242,244,229,228,226,229,236,239,247,227,237,98,128,3,58,239,235,229,238,226,225,114,128,0,166,115,2,59,95,59,103,244,242,239,235,101,128,1,128,245,240,229,242,233,239,114,128,246,234,244,239,240,226,225,114,128,1,131,117,3,59,130,59,141,59,152,232,233,242,225,231,225,238,97,128,48,118,235,225,244,225,235,225,238,97,128,48,214,236,108,2,59,159,59,189,229,116,130,32,34,59,168,59,178,233,238,246,229,242,243,101,128,37,216,239,240,229,242,225,244,239,114,128,34,25,243,229,249,101,128,37,206,99,143,0,99,59,230,60,179,60,190,60,254,61,29,61,122,63,33,64,17,64,117,64,166,67,158,67,166,67,176,67,188,67,221,97,9,59,250,60,5,60,15,60,22,60,29,60,54,60,64,60,116,60,125,225,242,237,229,238,233,225,110,128,5,110,226,229,238,231,225,236,105,128,9,154,227,245,244,101,128,1,7,228,229,246,97,128,9,26,231,117,2,60,36,60,45,234,225,242,225,244,105,128,10,154,242,237,245,235,232,105,128,10,26,236,243,241,245,225,242,101,128,51,136,238,228,242,225,226,233,238,228,117,4,60,82,60,92,60,98,60,105,226,229,238,231,225,236,105,128,9,129,227,237,98,128,3,16,228,229,246,97,128,9,1,231,245,234,225,242,225,244,105,128,10,129,240,243,236,239,227,107,128,33,234,114,3,60,133,60,139,60,165,229,239,102,128,33,5,239,110,130,2,199,60,148,60,159,226,229,236,239,247,227,237,98,128,3,44,227,237,98,128,3,12,242,233,225,231,229,242,229,244,245,242,110,128,33,181,226,239,240,239,237,239,230,111,128,49,24,99,4,60,200,60,207,60,226,60,248,225,242,239,110,128,1,13,229,228,233,236,236,97,129,0,231,60,218,225,227,245,244,101,128,30,9,233,242,99,2,60,234,60,239,236,101,128,36,210,245,237,230,236,229,120,128,1,9,245,242,108,128,2,85,100,2,61,4,61,20,239,116,129,1,11,61,11,225,227,227,229,238,116,128,1,11,243,241,245,225,242,101,128,51,197,101,2,61,35,61,51,228,233,236,236,97,129,0,184,61,45,227,237,98,128,3,39,238,116,132,0,162,61,64,61,88,61,100,61,111,105,2,61,70,61,78,231,242,225,228,101,128,33,3,238,230,229,242,233,239,114,128,246,223,237,239,238,239,243,240,225,227,101,128,255,224,239,236,228,243,244,249,236,101,128,247,162,243,245,240,229,242,233,239,114,128,246,224,104,5,61,134,61,197,61,208,62,136,62,228,97,4,61,144,61,155,61,165,61,172,225,242,237,229,238,233,225,110,128,5,121,226,229,238,231,225,236,105,128,9,155,228,229,246,97,128,9,27,231,117,2,61,179,61,188,234,225,242,225,244,105,128,10,155,242,237,245,235,232,105,128,10,27,226,239,240,239,237,239,230,111,128,49,20,101,6,61,222,61,242,62,10,62,78,62,90,62,111,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,189,99,2,61,248,62,0,235,237,225,242,107,128,39,19,249,242,233,236,236,233,99,128,4,71,100,2,62,16,62,60,229,243,227,229,238,228,229,114,2,62,29,62,49,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,191,227,249,242,233,236,236,233,99,128,4,183,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,245,232,225,242,237,229,238,233,225,110,128,5,115,235,232,225,235,225,243,243,233,225,238,227,249,242,233,236,236,233,99,128,4,204,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,185,105,129,3,199,62,142,229,245,227,104,4,62,155,62,190,62,205,62,214,97,2,62,161,62,176,227,233,242,227,236,229,235,239,242,229,225,110,128,50,119,240,225,242,229,238,235,239,242,229,225,110,128,50,23,227,233,242,227,236,229,235,239,242,229,225,110,128,50,105,235,239,242,229,225,110,128,49,74,240,225,242,229,238,235,239,242,229,225,110,128,50,9,111,2,62,234,63,28,227,104,3,62,243,63,9,63,19,225,110,2,62,250,63,2,231,244,232,225,105,128,14,10,244,232,225,105,128,14,8,233,238,231,244,232,225,105,128,14,9,239,229,244,232,225,105,128,14,12,239,107,128,1,136,105,2,63,39,63,141,229,245,99,5,63,53,63,88,63,103,63,112,63,126,97,2,63,59,63,74,227,233,242,227,236,229,235,239,242,229,225,110,128,50,118,240,225,242,229,238,235,239,242,229,225,110,128,50,22,227,233,242,227,236,229,235,239,242,229,225,110,128,50,104,235,239,242,229,225,110,128,49,72,240,225,242,229,238,235,239,242,229,225,110,128,50,8,245,240,225,242,229,238,235,239,242,229,225,110,128,50,28,242,99,2,63,148,63,243,236,101,132,37,203,63,161,63,172,63,177,63,201,237,245,236,244,233,240,236,121,128,34,151,239,116,128,34,153,112,2,63,183,63,189,236,245,115,128,34,149,239,243,244,225,236,237,225,242,107,128,48,54,247,233,244,104,2,63,210,63,226,236,229,230,244,232,225,236,230,226,236,225,227,107,128,37,208,242,233,231,232,244,232,225,236,230,226,236,225,227,107,128,37,209,245,237,230,236,229,120,130,2,198,64,0,64,11,226,229,236,239,247,227,237,98,128,3,45,227,237,98,128,3,2,108,3,64,25,64,31,64,85,229,225,114,128,35,39,233,227,107,4,64,43,64,54,64,63,64,73,225,236,246,229,239,236,225,114,128,1,194,228,229,238,244,225,108,128,1,192,236,225,244,229,242,225,108,128,1,193,242,229,244,242,239,230,236,229,120,128,1,195,245,98,129,38,99,64,92,243,245,233,116,2,64,101,64,109,226,236,225,227,107,128,38,99,247,232,233,244,101,128,38,103,109,3,64,125,64,139,64,150,227,245,226,229,228,243,241,245,225,242,101,128,51,164,239,238,239,243,240,225,227,101,128,255,67,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,160,111,8,64,184,64,195,65,26,65,224,66,253,67,28,67,135,67,144,225,242,237,229,238,233,225,110,128,5,129,236,239,110,131,0,58,64,207,64,232,64,251,237,239,110,2,64,215,64,223,229,244,225,242,121,128,32,161,239,243,240,225,227,101,128,255,26,115,2,64,238,64,244,233,231,110,128,32,161,237,225,236,108,128,254,85,244,242,233,225,238,231,245,236,225,114,2,65,10,65,20,232,225,236,230,237,239,100,128,2,209,237,239,100,128,2,208,109,2,65,32,65,217,237,97,134,0,44,65,49,65,113,65,124,65,136,65,166,65,189,97,3,65,57,65,83,65,91,226,239,246,101,2,65,66,65,72,227,237,98,128,3,19,242,233,231,232,244,227,237,98,128,3,21,227,227,229,238,116,128,246,195,114,2,65,97,65,104,225,226,233,99,128,6,12,237,229,238,233,225,110,128,5,93,233,238,230,229,242,233,239,114,128,246,225,237,239,238,239,243,240,225,227,101,128,255,12,242,229,246,229,242,243,229,100,2,65,149,65,160,225,226,239,246,229,227,237,98,128,3,20,237,239,100,128,2,189,115,2,65,172,65,179,237,225,236,108,128,254,80,245,240,229,242,233,239,114,128,246,226,244,245,242,238,229,100,2,65,200,65,211,225,226,239,246,229,227,237,98,128,3,18,237,239,100,128,2,187,240,225,243,115,128,38,60,110,2,65,230,65,239,231,242,245,229,238,116,128,34,69,116,2,65,245,66,3,239,245,242,233,238,244,229,231,242,225,108,128,34,46,242,239,108,142,35,3,66,37,66,43,66,58,66,73,66,117,66,162,66,176,66,181,66,186,66,191,66,197,66,202,66,243,66,248,193,195,75,128,0,6,66,2,66,49,66,54,197,76,128,0,7,83,128,0,8,67,2,66,64,66,69,193,78,128,0,24,82,128,0,13,68,3,66,81,66,107,66,112,67,4,66,91,66,95,66,99,66,103,49,128,0,17,50,128,0,18,51,128,0,19,52,128,0,20,197,76,128,0,127,204,69,128,0,16,69,5,66,129,66,133,66,138,66,143,66,148,77,128,0,25,206,81,128,0,5,207,84,128,0,4,211,67,128,0,27,84,2,66,154,66,158,66,128,0,23,88,128,0,3,70,2,66,168,66,172,70,128,0,12,83,128,0,28,199,83,128,0,29,200,84,128,0,9,204,70,128,0,10,206,193,75,128,0,21,210,83,128,0,30,83,5,66,214,66,218,66,228,66,233,66,238,73,128,0,15,79,129,0,14,66,224,84,128,0,2,212,88,128,0,1,213,66,128,0,26,217,78,128,0,22,213,83,128,0,31,214,84,128,0,11,240,249,242,233,231,232,116,129,0,169,67,9,115,2,67,15,67,21,225,238,115,128,248,233,229,242,233,102,128,246,217,114,2,67,34,67,118,238,229,242,226,242,225,227,235,229,116,2,67,49,67,83,236,229,230,116,130,48,12,67,60,67,72,232,225,236,230,247,233,228,244,104,128,255,98,246,229,242,244,233,227,225,108,128,254,65,242,233,231,232,116,130,48,13,67,95,67,107,232,225,236,230,247,233,228,244,104,128,255,99,246,229,242,244,233,227,225,108,128,254,66,240,239,242,225,244,233,239,238,243,241,245,225,242,101,128,51,127,243,241,245,225,242,101,128,51,199,246,229,242,235,231,243,241,245,225,242,101,128,51,198,240,225,242,229,110,128,36,158,242,245,250,229,233,242,111,128,32,162,243,244,242,229,244,227,232,229,100,128,2,151,245,114,2,67,195,67,213,236,121,2,67,202,67,208,225,238,100,128,34,207,239,114,128,34,206,242,229,238,227,121,128,0,164,249,114,4,67,232,67,240,67,247,67,255,194,242,229,246,101,128,246,209,198,236,229,120,128,246,210,226,242,229,246,101,128,246,212,230,236,229,120,128,246,213,100,146,0,100,68,46,69,184,70,208,71,12,71,188,72,142,72,204,73,133,73,146,73,155,73,181,73,206,73,215,75,26,75,34,75,45,75,65,75,93,97,11,68,70,68,81,68,91,68,163,68,226,68,237,68,248,69,61,69,123,69,129,69,159,225,242,237,229,238,233,225,110,128,5,100,226,229,238,231,225,236,105,128,9,166,100,5,68,103,68,112,68,118,68,132,68,148,225,242,225,226,233,99,128,6,54,229,246,97,128,9,38,230,233,238,225,236,225,242,225,226,233,99,128,254,190,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,191,237,229,228,233,225,236,225,242,225,226,233,99,128,254,192,103,3,68,171,68,188,68,202,229,243,104,129,5,188,68,179,232,229,226,242,229,119,128,5,188,231,229,114,129,32,32,68,196,228,226,108,128,32,33,117,2,68,208,68,217,234,225,242,225,244,105,128,10,166,242,237,245,235,232,105,128,10,38,232,233,242,225,231,225,238,97,128,48,96,235,225,244,225,235,225,238,97,128,48,192,108,3,69,0,69,9,69,47,225,242,225,226,233,99,128,6,47,229,116,130,5,211,69,18,69,38,228,225,231,229,243,104,129,251,51,69,29,232,229,226,242,229,119,128,251,51,232,229,226,242,229,119,128,5,211,230,233,238,225,236,225,242,225,226,233,99,128,254,170,237,237,97,3,69,71,69,80,69,92,225,242,225,226,233,99,128,6,79,236,239,247,225,242,225,226,233,99,128,6,79,244,225,238,97,2,69,101,69,115,236,244,239,238,229,225,242,225,226,233,99,128,6,76,242,225,226,233,99,128,6,76,238,228,97,128,9,100,242,231,97,2,69,137,69,146,232,229,226,242,229,119,128,5,167,236,229,230,244,232,229,226,242,229,119,128,5,167,243,233,225,240,238,229,245,237,225,244,225,227,249,242,233,236,236,233,227,227,237,98,128,4,133,98,3,69,192,70,189,70,199,108,9,69,212,69,220,70,77,70,85,70,101,70,112,70,130,70,144,70,155,199,242,225,246,101,128,246,211,97,2,69,226,70,27,238,231,236,229,226,242,225,227,235,229,116,2,69,242,70,6,236,229,230,116,129,48,10,69,251,246,229,242,244,233,227,225,108,128,254,61,242,233,231,232,116,129,48,11,70,16,246,229,242,244,233,227,225,108,128,254,62,114,2,70,33,70,54,227,232,233,238,246,229,242,244,229,228,226,229,236,239,247,227,237,98,128,3,43,242,239,119,2,70,62,70,69,236,229,230,116,128,33,212,242,233,231,232,116,128,33,210,228,225,238,228,97,128,9,101,231,242,225,246,101,129,246,214,70,95,227,237,98,128,3,15,233,238,244,229,231,242,225,108,128,34,44,236,239,247,236,233,238,101,129,32,23,70,124,227,237,98,128,3,51,239,246,229,242,236,233,238,229,227,237,98,128,3,63,240,242,233,237,229,237,239,100,128,2,186,246,229,242,244,233,227,225,108,2,70,168,70,174,226,225,114,128,32,22,236,233,238,229,225,226,239,246,229,227,237,98,128,3,14,239,240,239,237,239,230,111,128,49,9,243,241,245,225,242,101,128,51,200,99,4,70,218,70,225,70,234,71,5,225,242,239,110,128,1,15,229,228,233,236,236,97,128,30,17,233,242,99,2,70,242,70,247,236,101,128,36,211,245,237,230,236,229,248,226,229,236,239,119,128,30,19,242,239,225,116,128,1,17,100,4,71,22,71,103,71,113,71,164,97,4,71,32,71,42,71,49,71,74,226,229,238,231,225,236,105,128,9,161,228,229,246,97,128,9,33,231,117,2,71,56,71,65,234,225,242,225,244,105,128,10,161,242,237,245,235,232,105,128,10,33,108,2,71,80,71,89,225,242,225,226,233,99,128,6,136,230,233,238,225,236,225,242,225,226,233,99,128,251,137,228,232,225,228,229,246,97,128,9,92,232,97,3,71,122,71,132,71],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+20480);allocate([139,226,229,238,231,225,236,105,128,9,162,228,229,246,97,128,9,34,231,117,2,71,146,71,155,234,225,242,225,244,105,128,10,162,242,237,245,235,232,105,128,10,34,239,116,2,71,171,71,180,225,227,227,229,238,116,128,30,11,226,229,236,239,119,128,30,13,101,8,71,206,72,3,72,10,72,35,72,45,72,56,72,101,72,137,99,2,71,212,71,249,233,237,225,236,243,229,240,225,242,225,244,239,114,2,71,230,71,239,225,242,225,226,233,99,128,6,107,240,229,242,243,233,225,110,128,6,107,249,242,233,236,236,233,99,128,4,52,231,242,229,101,128,0,176,232,105,2,72,17,72,26,232,229,226,242,229,119,128,5,173,242,225,231,225,238,97,128,48,103,233,227,239,240,244,233,99,128,3,239,235,225,244,225,235,225,238,97,128,48,199,108,2,72,62,72,85,229,244,101,2,72,70,72,77,236,229,230,116,128,35,43,242,233,231,232,116,128,35,38,244,97,129,3,180,72,92,244,245,242,238,229,100,128,1,141,238,239,237,233,238,225,244,239,242,237,233,238,245,243,239,238,229,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,248,250,104,128,2,164,104,2,72,148,72,198,97,3,72,156,72,166,72,173,226,229,238,231,225,236,105,128,9,167,228,229,246,97,128,9,39,231,117,2,72,180,72,189,234,225,242,225,244,105,128,10,167,242,237,245,235,232,105,128,10,39,239,239,107,128,2,87,105,6,72,218,73,11,73,71,73,82,73,93,73,103,97,2,72,224,72,246,236,249,244,233,235,225,244,239,238,239,115,129,3,133,72,240,227,237,98,128,3,68,237,239,238,100,129,38,102,72,255,243,245,233,244,247,232,233,244,101,128,38,98,229,242,229,243,233,115,133,0,168,73,30,73,38,73,49,73,55,73,63,225,227,245,244,101,128,246,215,226,229,236,239,247,227,237,98,128,3,36,227,237,98,128,3,8,231,242,225,246,101,128,246,216,244,239,238,239,115,128,3,133,232,233,242,225,231,225,238,97,128,48,98,235,225,244,225,235,225,238,97,128,48,194,244,244,239,237,225,242,107,128,48,3,246,105,2,73,110,73,121,228,101,129,0,247,73,117,115,128,34,35,243,233,239,238,243,236,225,243,104,128,34,21,234,229,227,249,242,233,236,236,233,99,128,4,82,235,243,232,225,228,101,128,37,147,108,2,73,161,73,172,233,238,229,226,229,236,239,119,128,30,15,243,241,245,225,242,101,128,51,151,109,2,73,187,73,195,225,227,242,239,110,128,1,17,239,238,239,243,240,225,227,101,128,255,68,238,226,236,239,227,107,128,37,132,111,10,73,237,73,249,74,3,74,14,74,25,74,97,74,102,74,113,74,228,74,254,227,232,225,228,225,244,232,225,105,128,14,14,228,229,235,244,232,225,105,128,14,20,232,233,242,225,231,225,238,97,128,48,105,235,225,244,225,235,225,238,97,128,48,201,236,236,225,114,132,0,36,74,40,74,51,74,63,74,74,233,238,230,229,242,233,239,114,128,246,227,237,239,238,239,243,240,225,227,101,128,255,4,239,236,228,243,244,249,236,101,128,247,36,115,2,74,80,74,87,237,225,236,108,128,254,105,245,240,229,242,233,239,114,128,246,228,238,103,128,32,171,242,245,243,241,245,225,242,101,128,51,38,116,6,74,127,74,144,74,166,74,177,74,209,74,216,225,227,227,229,238,116,129,2,217,74,138,227,237,98,128,3,7,226,229,236,239,247,99,2,74,155,74,160,237,98,128,3,35,239,237,98,128,3,35,235,225,244,225,235,225,238,97,128,48,251,236,229,243,115,2,74,186,74,190,105,128,1,49,106,129,246,190,74,196,243,244,242,239,235,229,232,239,239,107,128,2,132,237,225,244,104,128,34,197,244,229,228,227,233,242,227,236,101,128,37,204,245,226,236,229,249,239,228,240,225,244,225,104,129,251,31,74,245,232,229,226,242,229,119,128,251,31,247,238,244,225,227,107,2,75,9,75,20,226,229,236,239,247,227,237,98,128,3,30,237,239,100,128,2,213,240,225,242,229,110,128,36,159,243,245,240,229,242,233,239,114,128,246,235,116,2,75,51,75,57,225,233,108,128,2,86,239,240,226,225,114,128,1,140,117,2,75,71,75,82,232,233,242,225,231,225,238,97,128,48,101,235,225,244,225,235,225,238,97,128,48,197,122,132,1,243,75,105,75,114,75,133,75,170,225,236,244,239,238,101,128,2,163,99,2,75,120,75,127,225,242,239,110,128,1,198,245,242,108,128,2,165,101,2,75,139,75,159,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,225,227,249,242,233,236,236,233,99,128,4,85,232,229,227,249,242,233,236,236,233,99,128,4,95,101,151,0,101,75,233,75,252,76,30,77,4,77,66,77,99,77,111,77,134,77,187,79,43,79,101,79,203,80,63,80,198,81,17,81,48,81,110,81,163,82,98,82,231,82,251,83,39,83,130,97,2,75,239,75,246,227,245,244,101,128,0,233,242,244,104,128,38,65,98,3,76,4,76,13,76,23,229,238,231,225,236,105,128,9,143,239,240,239,237,239,230,111,128,49,28,242,229,246,101,128,1,21,99,5,76,42,76,115,76,129,76,161,76,250,97,2,76,48,76,109,238,228,242,97,3,76,59,76,66,76,77,228,229,246,97,128,9,13,231,245,234,225,242,225,244,105,128,10,141,246,239,247,229,236,243,233,231,110,2,76,91,76,98,228,229,246,97,128,9,69,231,245,234,225,242,225,244,105,128,10,197,242,239,110,128,1,27,229,228,233,236,236,225,226,242,229,246,101,128,30,29,104,2,76,135,76,146,225,242,237,229,238,233,225,110,128,5,101,249,233,247,238,225,242,237,229,238,233,225,110,128,5,135,233,242,99,2,76,169,76,174,236,101,128,36,212,245,237,230,236,229,120,134,0,234,76,195,76,203,76,211,76,222,76,230,76,242,225,227,245,244,101,128,30,191,226,229,236,239,119,128,30,25,228,239,244,226,229,236,239,119,128,30,199,231,242,225,246,101,128,30,193,232,239,239,235,225,226,239,246,101,128,30,195,244,233,236,228,101,128,30,197,249,242,233,236,236,233,99,128,4,84,100,4,77,14,77,24,77,30,77,40,226,236,231,242,225,246,101,128,2,5,229,246,97,128,9,15,233,229,242,229,243,233,115,128,0,235,239,116,130,1,23,77,49,77,58,225,227,227,229,238,116,128,1,23,226,229,236,239,119,128,30,185,101,2,77,72,77,83,231,245,242,237,245,235,232,105,128,10,15,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,71,230,227,249,242,233,236,236,233,99,128,4,68,103,2,77,117,77,124,242,225,246,101,128,0,232,245,234,225,242,225,244,105,128,10,143,104,4,77,144,77,155,77,166,77,176,225,242,237,229,238,233,225,110,128,5,103,226,239,240,239,237,239,230,111,128,49,29,233,242,225,231,225,238,97,128,48,72,239,239,235,225,226,239,246,101,128,30,187,105,4,77,197,77,208,79,10,79,25,226,239,240,239,237,239,230,111,128,49,31,231,232,116,142,0,56,77,242,77,251,78,5,78,35,78,42,78,80,78,105,78,150,78,184,78,196,78,207,78,240,78,248,79,3,225,242,225,226,233,99,128,6,104,226,229,238,231,225,236,105,128,9,238,227,233,242,227,236,101,129,36,103,78,16,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,145,228,229,246,97,128,9,110,229,229,110,2,78,50,78,59,227,233,242,227,236,101,128,36,113,112,2,78,65,78,72,225,242,229,110,128,36,133,229,242,233,239,100,128,36,153,231,117,2,78,87,78,96,234,225,242,225,244,105,128,10,238,242,237,245,235,232,105,128,10,110,104,2,78,111,78,137,97,2,78,117,78,128,227,235,225,242,225,226,233,99,128,6,104,238,231,250,232,239,117,128,48,40,238,239,244,229,226,229,225,237,229,100,128,38,107,105,2,78,156,78,174,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,39,238,230,229,242,233,239,114,128,32,136,237,239,238,239,243,240,225,227,101,128,255,24,239,236,228,243,244,249,236,101,128,247,56,112,2,78,213,78,220,225,242,229,110,128,36,123,229,114,2,78,227,78,233,233,239,100,128,36,143,243,233,225,110,128,6,248,242,239,237,225,110,128,33,119,243,245,240,229,242,233,239,114,128,32,120,244,232,225,105,128,14,88,238,246,229,242,244,229,228,226,242,229,246,101,128,2,7,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,101,107,2,79,49,79,73,225,244,225,235,225,238,97,129,48,168,79,61,232,225,236,230,247,233,228,244,104,128,255,116,111,2,79,79,79,94,238,235,225,242,231,245,242,237,245,235,232,105,128,10,116,242,229,225,110,128,49,84,108,3,79,109,79,120,79,181,227,249,242,233,236,236,233,99,128,4,59,101,2,79,126,79,133,237,229,238,116,128,34,8,246,229,110,3,79,143,79,152,79,173,227,233,242,227,236,101,128,36,106,112,2,79,158,79,165,225,242,229,110,128,36,126,229,242,233,239,100,128,36,146,242,239,237,225,110,128,33,122,236,233,240,243,233,115,129,32,38,79,192,246,229,242,244,233,227,225,108,128,34,238,109,5,79,215,79,243,79,254,80,18,80,29,225,227,242,239,110,130,1,19,79,227,79,235,225,227,245,244,101,128,30,23,231,242,225,246,101,128,30,21,227,249,242,233,236,236,233,99,128,4,60,228,225,243,104,129,32,20,80,7,246,229,242,244,233,227,225,108,128,254,49,239,238,239,243,240,225,227,101,128,255,69,112,2,80,35,80,55,232,225,243,233,243,237,225,242,235,225,242,237,229,238,233,225,110,128,5,91,244,249,243,229,116,128,34,5,110,6,80,77,80,88,80,99,80,143,80,175,80,190,226,239,240,239,237,239,230,111,128,49,35,227,249,242,233,236,236,233,99,128,4,61,100,2,80,105,80,124,225,243,104,129,32,19,80,113,246,229,242,244,233,227,225,108,128,254,50,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,163,103,130,1,75,80,151,80,162,226,239,240,239,237,239,230,111,128,49,37,232,229,227,249,242,233,236,236,233,99,128,4,165,232,239,239,235,227,249,242,233,236,236,233,99,128,4,200,243,240,225,227,101,128,32,2,111,3,80,206,80,214,80,223,231,239,238,229,107,128,1,25,235,239,242,229,225,110,128,49,83,240,229,110,130,2,91,80,233,80,242,227,236,239,243,229,100,128,2,154,242,229,246,229,242,243,229,100,130,2,92,81,1,81,10,227,236,239,243,229,100,128,2,94,232,239,239,107,128,2,93,112,2,81,23,81,30,225,242,229,110,128,36,160,243,233,236,239,110,129,3,181,81,40,244,239,238,239,115,128,3,173,241,117,2,81,55,81,99,225,108,130,0,61,81,64,81,76,237,239,238,239,243,240,225,227,101,128,255,29,115,2,81,82,81,89,237,225,236,108,128,254,102,245,240,229,242,233,239,114,128,32,124,233,246,225,236,229,238,227,101,128,34,97,114,3,81,118,81,129,81,140,226,239,240,239,237,239,230,111,128,49,38,227,249,242,233,236,236,233,99,128,4,64,229,246,229,242,243,229,100,129,2,88,81,152,227,249,242,233,236,236,233,99,128,4,77,115,6,81,177,81,188,81,208,82,33,82,78,82,88,227,249,242,233,236,236,233,99,128,4,65,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,171,104,132,2,131,81,220,81,227,82,2,82,17,227,245,242,108,128,2,134,239,242,116,2,81,235,81,242,228,229,246,97,128,9,14,246,239,247,229,236,243,233,231,238,228,229,246,97,128,9,70,242,229,246,229,242,243,229,228,236,239,239,112,128,1,170,243,241,245,225,244,242,229,246,229,242,243,229,100,128,2,133,237,225,236,108,2,82,42,82,53,232,233,242,225,231,225,238,97,128,48,71,235,225,244,225,235,225,238,97,129,48,167,82,66,232,225,236,230,247,233,228,244,104,128,255,106,244,233,237,225,244,229,100,128,33,46,245,240,229,242,233,239,114,128,246,236,116,5,82,110,82,136,82,140,82,157,82,223,97,130,3,183,82,118,82,128,242,237,229,238,233,225,110,128,5,104,244,239,238,239,115,128,3,174,104,128,0,240,233,236,228,101,129,30,189,82,149,226,229,236,239,119,128,30,27,238,225,232,244,97,3,82,169,82,201,82,210,230,239,245,235,104,2,82,179,82,188,232,229,226,242,229,119,128,5,145,236,229,230,244,232,229,226,242,229,119,128,5,145,232,229,226,242,229,119,128,5,145,236,229,230,244,232,229,226,242,229,119,128,5,145,245,242,238,229,100,128,1,221,117,2,82,237,82,246,235,239,242,229,225,110,128,49,97,242,111,128,32,172,246,239,247,229,236,243,233,231,110,3,83,11,83,21,83,28,226,229,238,231,225,236,105,128,9,199,228,229,246,97,128,9,71,231,245,234,225,242,225,244,105,128,10,199,120,2,83,45,83,118,227,236,225,109,132,0,33,83,60,83,71,83,98,83,110,225,242,237,229,238,233,225,110,128,5,92,100,2,83,77,83,82,226,108,128,32,60,239,247,110,129,0,161,83,90,243,237,225,236,108,128,247,161,237,239,238,239,243,240,225,227,101,128,255,1,243,237,225,236,108,128,247,33,233,243,244,229,238,244,233,225,108,128,34,3,250,104,131,2,146,83,141,83,160,83,171,99,2,83,147,83,154,225,242,239,110,128,1,239,245,242,108,128,2,147,242,229,246,229,242,243,229,100,128,1,185,244,225,233,108,128,1,186,102,140,0,102,83,206,84,32,84,43,84,52,84,64,84,167,84,183,86,191,86,204,86,230,88,107,88,115,97,4,83,216,83,223,83,234,83,245,228,229,246,97,128,9,94,231,245,242,237,245,235,232,105,128,10,94,232,242,229,238,232,229,233,116,128,33,9,244,232,97,3,83,255,84,8,84,20,225,242,225,226,233,99,128,6,78,236,239,247,225,242,225,226,233,99,128,6,78,244,225,238,225,242,225,226,233,99,128,6,75,226,239,240,239,237,239,230,111,128,49,8,227,233,242,227,236,101,128,36,213,228,239,244,225,227,227,229,238,116,128,30,31,101,3,84,72,84,150,84,160,104,4,84,82,84,105,84,119,84,135,225,114,2,84,89,84,96,225,226,233,99,128,6,65,237,229,238,233,225,110,128,5,134,230,233,238,225,236,225,242,225,226,233,99,128,254,210,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,211,237,229,228,233,225,236,225,242,225,226,233,99,128,254,212,233,227,239,240,244,233,99,128,3,229,237,225,236,101,128,38,64,102,130,251,0,84,175,84,179,105,128,251,3,108,128,251,4,105,136,251,1,84,203,84,243,84,254,85,20,85,142,85,159,85,167,85,180,230,244,229,229,110,2,84,213,84,222,227,233,242,227,236,101,128,36,110,112,2,84,228,84,235,225,242,229,110,128,36,130,229,242,233,239,100,128,36,150,231,245,242,229,228,225,243,104,128,32,18,236,236,229,100,2,85,7,85,13,226,239,120,128,37,160,242,229,227,116,128,37,172,238,225,108,5,85,34,85,73,85,90,85,107,85,123,235,225,102,130,5,218,85,44,85,64,228,225,231,229,243,104,129,251,58,85,55,232,229,226,242,229,119,128,251,58,232,229,226,242,229,119,128,5,218,237,229,109,129,5,221,85,81,232,229,226,242,229,119,128,5,221,238,245,110,129,5,223,85,98,232,229,226,242,229,119,128,5,223,240,101,129,5,227,85,114,232,229,226,242,229,119,128,5,227,244,243,225,228,105,129,5,229,85,133,232,229,226,242,229,119,128,5,229,242,243,244,244,239,238,229,227,232,233,238,229,243,101,128,2,201,243,232,229,249,101,128,37,201,244,225,227,249,242,233,236,236,233,99,128,4,115,246,101,142,0,53,85,213,85,222,85,232,86,6,86,13,86,23,86,48,86,75,86,109,86,121,86,132,86,165,86,173,86,184,225,242,225,226,233,99,128,6,101,226,229,238,231,225,236,105,128,9,235,227,233,242,227,236,101,129,36,100,85,243,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,142,228,229,246,97,128,9,107,229,233,231,232,244,232,115,128,33,93,231,117,2,86,30,86,39,234,225,242,225,244,105,128,10,235,242,237,245,235,232,105,128,10,107,232,97,2,86,55,86,66,227,235,225,242,225,226,233,99,128,6,101,238,231,250,232,239,117,128,48,37,105,2,86,81,86,99,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,36,238,230,229,242,233,239,114,128,32,133,237,239,238,239,243,240,225,227,101,128,255,21,239,236,228,243,244,249,236,101,128,247,53,112,2,86,138,86,145,225,242,229,110,128,36,120,229,114,2,86,152,86,158,233,239,100,128,36,140,243,233,225,110,128,6,245,242,239,237,225,110,128,33,116,243,245,240,229,242,233,239,114,128,32,117,244,232,225,105,128,14,85,108,129,251,2,86,197,239,242,233,110,128,1,146,109,2,86,210,86,221,239,238,239,243,240,225,227,101,128,255,70,243,241,245,225,242,101,128,51,153,111,4,86,240,87,6,87,18,87,25,230,97,2,86,247,86,255,238,244,232,225,105,128,14,31,244,232,225,105,128,14,29,238,231,237,225,238,244,232,225,105,128,14,79,242,225,236,108,128,34,0,245,114,142,0,52,87,58,87,67,87,77,87,107,87,114,87,139,87,166,87,200,87,212,87,231,87,242,88,19,88,27,88,38,225,242,225,226,233,99,128,6,100,226,229,238,231,225,236,105,128,9,234,227,233,242,227,236,101,129,36,99,87,88,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,141,228,229,246,97,128,9,106,231,117,2,87,121,87,130,234,225,242,225,244,105,128,10,234,242,237,245,235,232,105,128,10,106,232,97,2,87,146,87,157,227,235,225,242,225,226,233,99,128,6,100,238,231,250,232,239,117,128,48,36,105,2,87,172,87,190,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,35,238,230,229,242,233,239,114,128,32,132,237,239,238,239,243,240,225,227,101,128,255,20,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,247,239,236,228,243,244,249,236,101,128,247,52,112,2,87,248,87,255,225,242,229,110,128,36,119,229,114,2,88,6,88,12,233,239,100,128,36,139,243,233,225,110,128,6,244,242,239,237,225,110,128,33,115,243,245,240,229,242,233,239,114,128,32,116,116,2,88,44,88,82,229,229,110,2,88,52,88,61,227,233,242,227,236,101,128,36,109,112,2,88,67,88,74,225,242,229,110,128,36,129,229,242,233,239,100,128,36,149,104,2,88,88,88,93,225,105,128,14,84,244,239,238,229,227,232,233,238,229,243,101,128,2,203,240,225,242,229,110,128,36,161,242,97,2,88,122,88,130,227,244,233,239,110,128,32,68,238,99,128,32,163,103,144,0,103,88,171,89,117,89,140,89,201,89,218,90,139,91,132,91,217,91,230,92,88,92,113,92,141,92,163,93,108,93,130,93,232,97,9,88,191,88,201,88,208,88,215,89,23,89,48,89,59,89,70,89,104,226,229,238,231,225,236,105,128,9,151,227,245,244,101,128,1,245,228,229,246,97,128,9,23,102,4,88,225,88,234,88,248,89,8,225,242,225,226,233,99,128,6,175,230,233,238,225,236,225,242,225,226,233,99,128,251,147,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,148,237,229,228,233,225,236,225,242,225,226,233,99,128,251,149,231,117,2,89,30,89,39,234,225,242,225,244,105,128,10,151,242,237,245,235,232,105,128,10,23,232,233,242,225,231,225,238,97,128,48,76,235,225,244,225,235,225,238,97,128,48,172,237,237,97,130,3,179,89,80,89,93,236,225,244,233,238,243,237,225,236,108,128,2,99,243,245,240,229,242,233,239,114,128,2,224,238,231,233,225,227,239,240,244,233,99,128,3,235,98,2,89,123,89,133,239,240,239,237,239,230,111,128,49,13,242,229,246,101,128,1,31,99,4,89,150,89,157,89,166,89,188,225,242,239,110,128,1,231,229,228,233,236,236,97,128,1,35,233,242,99,2,89,174,89,179,236,101,128,36,214,245,237,230,236,229,120,128,1,29,239,237,237,225,225,227,227,229,238,116,128,1,35,228,239,116,129,1,33,89,209,225,227,227,229,238,116,128,1,33,101,6,89,232,89,243,89,254,90,9,90,28,90,130,227,249,242,233,236,236,233,99,128,4,51,232,233,242,225,231,225,238,97,128,48,82,235,225,244,225,235,225,238,97,128,48,178,239,237,229,244,242,233,227,225,236,236,249,229,241,245,225,108,128,34,81,114,3,90,36,90,85,90,95,229,243,104,3,90,46,90,61,90,70,225,227,227,229,238,244,232,229,226,242,229,119,128,5,156,232,229,226,242,229,119,128,5,243,237,245,241,228,225,237,232,229,226,242,229,119,128,5,157,237,225,238,228,226,236,115,128,0,223,243,232,225,249,233,109,2,90,106,90,121,225,227,227,229,238,244,232,229,226,242,229,119,128,5,158,232,229,226,242,229,119,128,5,244,244,225,237,225,242,107,128,48,19,104,5,90,151,91,28,91,91,91,116,91,122,97,4,90,161,90,171,90,194,90,219,226,229,238,231,225,236,105,128,9,152,100,2,90,177,90,188,225,242,237,229,238,233,225,110,128,5,114,229,246,97,128,9,24,231,117,2,90,201,90,210,234,225,242,225,244,105,128,10,152,242,237,245,235,232,105,128,10,24,233,110,4,90,230,90,239,90,253,91,13,225,242,225,226,233,99,128,6,58,230,233,238,225,236,225,242,225,226,233,99,128,254,206,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,207,237,229,228,233,225,236,225,242,225,226,233,99,128,254,208,101,3,91,36,91,57,91,74,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,149,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,147,245,240,244,245,242,238,227,249,242,233,236,236,233,99,128,4,145,232,97,2,91,98,91,105,228,229,246,97,128,9,90,231,245,242,237,245,235,232,105,128,10,90,239,239,107,128,2,96,250,243,241,245,225,242,101,128,51,147,105,3,91,140,91,151,91,162,232,233,242,225,231,225,238,97,128,48,78,235,225,244,225,235,225,238,97,128,48,174,109,2,91,168,91,179,225,242,237,229,238,233,225,110,128,5,99,229,108,130,5,210,91,188,91,208,228,225,231,229,243,104,129,251,50,91,199,232,229,226,242,229,119,128,251,50,232,229,226,242,229,119,128,5,210,234,229,227,249,242,233,236,236,233,99,128,4,83,236,239,244,244,225,108,2,91,241,92,2,233,238,246,229,242,244,229,228,243,244,242,239,235,101,128,1,190,243,244,239,112,132,2,148,92,17,92,28,92,34,92,66,233,238,246,229,242,244,229,100,128,2,150,237,239,100,128,2,192,242,229,246,229,242,243,229,100,130,2,149,92,49,92,55,237,239,100,128,2,193,243,245,240,229,242,233,239,114,128,2,228,243,244,242,239,235,101,129,2,161,92,77,242,229,246,229,242,243,229,100,128,2,162,109,2,92,94,92,102,225,227,242,239,110,128,30,33,239,238,239,243,240,225,227,101,128,255,71,111,2,92,119,92,130,232,233,242,225,231,225,238,97,128,48,84,235,225,244,225,235,225,238,97,128,48,180,240,97,2,92,148,92,154,242,229,110,128,36,162,243,241,245,225,242,101,128,51,172,114,2,92,169,93,10,97,2,92,175,92,183,228,233,229,238,116,128,34,7,246,101,134,0,96,92,200,92,211,92,228,92,235,92,244,93,0,226,229,236,239,247,227,237,98,128,3,22,99,2,92,217,92,222,237,98,128,3,0,239,237,98,128,3,0,228,229,246,97,128,9,83,236,239,247,237,239,100,128,2,206,237,239,238,239,243,240,225,227,101,128,255,64,244,239,238,229,227,237,98,128,3,64,229,225,244,229,114,132,0,62,93,26,93,45,93,57,93,100,229,241,245,225,108,129,34,101,93,36,239,242,236,229,243,115,128,34,219,237,239,238,239,243,240,225,227,101,128,255,30,111,2,93,63,93,89,114,2,93,69,93,82,229,241,245,233,246,225,236,229,238,116,128,34,115,236,229,243,115,128,34,119,246,229,242,229,241,245,225,108,128,34,103,243,237,225,236,108,128,254,101,115,2,93,114,93,122,227,242,233,240,116,128,2,97,244,242,239,235,101,128,1,229,117,4,93,140,93,151,93,208,93,219,232,233,242,225,231,225,238,97,128,48,80,233,108,2,93,158,93,183,236,229,237,239,116,2,93,168,93,175,236,229,230,116,128,0,171,242,233,231,232,116,128,0,187,243,233,238,231,108,2,93,193,93,200,236,229,230,116,128,32,57,242,233,231,232,116,128,32,58,235,225,244,225,235,225,238,97,128,48,176,242,225,237,245,243,241,245,225,242,101,128,51,24,249,243,241,245,225,242,101,128,51,201,104,144,0,104,94,22,96,164,96,199,96,236,97,20,98,164,98,184,99,149,99,161,99,173,100,241,100,249,101,4,101,13,101,93,101,97,97,13,94,50,94,89,94,99,94,129,94,154,94,232,94,244,95,13,95,28,95,57,95,70,95,128,95,137,97,2,94,56,94,75,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,169,236,244,239,238,229,225,242,225,226,233,99,128,6,193,226,229,238,231,225,236,105,128,9,185,228,101,2,94,106,94,124,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,179,246,97,128,9,57,231,117,2,94,136,94,145,234,225,242,225,244,105,128,10,185,242,237,245,235,232,105,128,10,57,104,4,94,164,94,173,94,187,94,217,225,242,225,226,233,99,128,6,45,230,233,238,225,236,225,242,225,226,233,99,128,254,162,105,2,94,193,94,208,238,233,244,233,225,236,225,242,225,226,233,99,128,254,163,242,225,231,225,238,97,128,48,111,237,229,228,233,225,236,225,242,225,226,233,99,128,254,164,233,244,245,243,241,245,225,242,101,128,51,42,235,225,244,225,235,225,238,97,129,48,207,95,1,232,225,236,230,247,233,228,244,104,128,255,138,236,225,238,244,231,245,242,237,245,235,232,105,128,10,77,237,250,97,2,95,36,95,45,225,242,225,226,233,99,128,6,33,236,239,247,225,242,225,226,233,99,128,6,33,238,231,245,236,230,233,236,236,229,114,128,49,100,114,2,95,76,95,92,228,243,233,231,238,227,249,242,233,236,236,233,99,128,4,74,240,239,239,110,2,95,101,95,114,236,229,230,244,226,225,242,226,245,112,128,33,188,242,233,231,232,244,226,225,242,226,245,112,128,33,192,243,241,245,225,242,101,128,51,202,244,225,102,3,95,147,95,239,96,74,240,225,244,225,104,134,5,178,95,167,95,172,95,186,95,195,95,210,95,226,177,54,128,5,178,50,2,95,178,95,182,51,128,5,178,102,128,5,178,232,229,226,242,229,119,128,5,178,238,225,242,242,239,247,232,229,226,242,229,119,128,5,178,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,178,247,233,228,229,232,229,226,242,229,119,128,5,178,241,225,237,225,244,115,135,5,179,96,6,96,11,96,16,96,21,96,30,96,45,96,61,177,98,128,5,179,178,56,128,5,179,179,52,128,5,179,232,229,226,242,229,119,128,5,179,238,225,242,242,239,247,232,229,226,242,229,119,128,5,179,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,179,247,233,228,229,232,229,226,242,229,119,128,5,179,243,229,231,239,108,135,5,177,96,96,96,101,96,106,96,111,96,120,96,135,96,151,177,55,128,5,177,178,52,128,5,177,179,48,128,5,177,232,229,226,242,229,119,128,5,177,238,225,242,242,239,247,232,229,226,242,229,119,128,5,177,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,177,247,233,228,229,232,229,226,242,229,119,128,5,177,98,3,96,172,96,177,96,187,225,114,128,1,39,239,240,239,237,239,230,111,128,49,15,242,229,246,229,226,229,236,239,119,128,30,43,99,2,96,205,96,214,229,228,233,236,236,97,128,30,41,233,242,99,2,96,222,96,227,236,101,128,36,215,245,237,230,236,229,120,128,1,37,100,2,96,242,96,252,233,229,242,229,243,233,115,128,30,39,239,116,2,97,3,97,12,225,227,227,229,238,116,128,30,35,226,229,236,239,119,128,30,37,101,136,5,212,97,40,97,73,97,93,98,66,98,82,98,127,98,136,98,149,225,242,116,129,38,101,97,48,243,245,233,116,2,97,57,97,65,226,236,225,227,107,128,38,101,247,232,233,244,101,128,38,97,228,225,231,229,243,104,129,251,52,97,84,232,229,226,242,229,119,128,251,52,104,6,97,107,97,135,97,143,97,193,97,239,98,32,97,2,97,113,97,127,236,244,239,238,229,225,242,225,226,233,99,128,6,193,242,225,226,233,99,128,6,71,229,226,242,229,119,128,5,212,230,233,238,225,236,97,2,97,154,97,185,236,116,2,97,161,97,173,239,238,229,225,242,225,226,233,99,128,251,167,244,247,239,225,242,225,226,233,99,128,254,234,242,225,226,233,99,128,254,234,232,225,237,250,225,225,226,239,246,101,2,97,208,97,222,230,233,238,225,236,225,242,225,226,233,99,128,251,165,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,251,164,105,2,97,245,98,23,238,233,244,233,225,236,97,2,98,1,98,15,236,244,239,238,229,225,242,225,226,233,99,128,251,168,242,225,226,233,99,128,254,235,242,225,231,225,238,97,128,48,120,237,229,228,233,225,236,97,2,98,44,98,58,236,244,239,238,229,225,242,225,226,233,99,128,251,169,242,225,226,233,99,128,254,236,233,243,229,233,229,242,225,243,241,245,225,242,101,128,51,123,107,2,98,88,98,112,225,244,225,235,225,238,97,129,48,216,98,100,232,225,236,230,247,233,228,244,104,128,255,141,245,244,225,225,242,245,243,241,245,225,242,101,128,51,54,238,231,232,239,239,107,128,2,103,242,245,244,245,243,241,245,225,242,101,128,51,57,116,129,5,215,98,155,232,229,226,242,229,119,128,5,215,232,239,239,107,129,2,102,98,173,243,245,240,229,242,233,239,114,128,2,177,105,4,98,194,99,23,99,34,99,59,229,245,104,4,98,206,98,241,99,0,99,9,97,2,98,212,98,227,227,233,242,227,236,229,235,239,242,229,225,110,128,50,123,240,225,242,229,238,235,239,242,229,225,110,128,50,27,227,233,242,227,236,229,235,239,242,229,225,110,128,50,109,235,239,242,229,225,110,128,49,78,240,225,242,229,238,235,239,242,229,225,110,128,50,13,232,233,242,225,231,225,238,97,128,48,114,235,225,244,225,235,225,238,97,129,48,210,99,47,232,225,236,230,247,233,228,244,104,128,255,139,242,233,113,134,5,180,99,77,99,82,99,96,99,105,99,120,99,136,177,52,128,5,180,50,2,99,88,99,92,49,128,5,180,100,128,5,180,232,229,226,242,229,119,128,5,180,238,225,242,242,239,247,232,229,226,242,229,119,128,5,180,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,180,247,233,228,229,232,229,226,242,229,119,128,5,180,236,233,238,229,226,229,236,239,119,128,30,150,237,239,238,239,243,240,225,227,101,128,255,72,111,9,99,193,99,204,99,228,99,253,100,85,100,98,100,184,100,224,100,235,225,242,237,229,238,233,225,110,128,5,112,232,105,2,99,211,99,219,240,244,232,225,105,128,14,43,242,225,231,225,238,97,128,48,123,235,225,244,225,235,225,238,97,129,48,219,99,241,232,225,236,230,247,233,228,244,104,128,255,142,236,225,109,135,5,185,100,17,100,22,100,27,100,32,100,41,100,56,100,72,177,57,128,5,185,178,54,128,5,185,179,50,128,5,185,232,229,226,242,229,119,128,5,185,238,225,242,242,239,247,232,229,226,242,229,119,128,5,185,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,185,247,233,228,229,232,229,226,242,229,119,128,5,185,238,239,235,232,245,235,244,232,225,105,128,14,46,111,2,100,104,100,174,107,4,100,114,100,126,100,132,100,154,225,226,239,246,229,227,239,237,98,128,3,9,227,237,98,128,3,9,240,225,236,225,244,225,236,233,250,229,228,226,229,236,239,247,227,237,98,128,3,33,242,229,244,242,239,230,236,229,248,226,229,236,239,247,227,237,98,128,3,34,238,243,241,245,225,242,101,128,51,66,114,2,100,190,100,217,105,2,100,196,100,205,227,239,240,244,233,99,128,3,233,250,239,238,244,225,236,226,225,114,128,32,21,238,227,237,98,128,3,27,244,243,240,242,233,238,231,115,128,38,104,245,243,101,128,35,2,240,225,242,229,110,128,36,163,243,245,240,229,242,233,239,114,128,2,176,244,245,242,238,229,100,128,2,101,117,4,101,23,101,34,101,47,101,72,232,233,242,225,231,225,238,97,128,48,117,233,233,244,239,243,241,245,225,242,101,128,51,51,235,225,244,225,235,225,238,97,129,48,213,101,60,232,225,236,230,247,233,228,244,104,128,255,140,238,231,225,242,245,237,236,225,245,116,129,2,221,101,87,227,237,98,128,3,11,118,128,1,149,249,240,232,229,110,132,0,45,101,113,101,124,101,136,101,159,233,238,230,229,242,233,239,114,128,246,229,237,239,238,239,243,240,225,227,101,128,255,13,115,2,101,142,101,149,237,225,236,108,128,254,99,245,240,229,242,233,239,114,128,246,230,244,247,111,128,32,16,105,149,0,105,101,211,101,234,102,12,102,59,105,197,106,61,106,98,106,125,107,31,107,35,107,73,107,95,107,179,108,88,108,163,108,171,108,184,109,15,109,72,109,100,109,144,225,99,2,101,218,101,224,245,244,101,128,0,237,249,242,233,236,236,233,99,128,4,79,98,3,101,242,101,251,102,5,229,238,231,225,236,105,128,9,135,239,240,239,237,239,230,111,128,49,39,242,229,246,101,128,1,45,99,3,102,20,102,27,102,49,225,242,239,110,128,1,208,233,242,99,2,102,35,102,40,236,101,128,36,216,245,237,230,236,229,120,128,0,238,249,242,233,236,236,233,99,128,4,86,100,4,102,69,102,79,105,154,105,187,226,236,231,242,225,246,101,128,2,9,101,2,102,85,105,149,239,231,242,225,240,104,7,102,106,102,120,102,133,105,62,105,93,105,106,105,118,229,225,242,244,232,227,233,242,227,236,101,128,50,143,230,233,242,229,227,233,242,227,236,101,128,50,139,233,99,14,102,164,102,180,103,23,103,77,103,143,103,172,103,188,103,245,104,38,104,50,104,77,104,144,105,26,105,55,225,236,236,233,225,238,227,229,240,225,242,229,110,128,50,63,99,4,102,190,102,201,102,215,102,222,225,236,236,240,225,242,229,110,128,50,58,229,238,244,242,229,227,233,242,227,236,101,128,50,165,236,239,243,101,128,48,6,111,3,102,230,102,245,103,9,237,237,97,129,48,1,102,238,236,229,230,116,128,255,100,238,231,242,225,244,245,236,225,244,233,239,238,240,225,242,229,110,128,50,55,242,242,229,227,244,227,233,242,227,236,101,128,50,163,101,3,103,31,103,43,103,60,225,242,244,232,240,225,242,229,110,128,50,47,238,244,229,242,240,242,233,243,229,240,225,242,229,110,128,50,61,248,227,229,236,236,229,238,244,227,233,242,227,236,101,128,50,157,102,2,103,83,103,98,229,243,244,233,246,225,236,240,225,242,229,110,128,50,64,105,2,103,104,103,133,238,225,238,227,233,225,108,2,103,116,103,125,227,233,242,227,236,101,128,50,150,240,225,242,229,110,128,50,54,242,229,240,225,242,229,110,128,50,43,104,2,103,149,103,160,225,246,229,240,225,242,229,110,128,50,50,233,231,232,227,233,242,227,236,101,128,50,164,233,244,229,242,225,244,233,239,238,237,225,242,107,128,48,5,108,3,103,196,103,222,103,234,225,226,239,114,2,103,205,103,214,227,233,242,227,236,101,128,50,152,240,225,242,229,110,128,50,56,229,230,244,227,233,242,227,236,101,128,50,167,239,247,227,233,242,227,236,101,128,50,166,109,2,103,251,104,27,101,2,104,1,104,16,228,233,227,233,238,229,227,233,242,227,236,101,128,50,169,244,225,236,240,225,242,229,110,128,50,46,239,239,238,240,225,242,229,110,128,50,42,238,225,237,229,240,225,242,229,110,128,50,52,112,2,104,56,104,64,229,242,233,239,100,128,48,2,242,233,238,244,227,233,242,227,236,101,128,50,158,114,2,104,83,104,131,101,3,104,91,104,102,104,117,225,227,232,240,225,242,229,110,128,50,67,240,242,229,243,229,238,244,240,225,242,229,110,128,50,57,243,239,245,242,227,229,240,225,242,229,110,128,50,62,233,231,232,244,227,233,242,227,236,101,128,50,168,115,5,104,156,104,185,104,199,104,224,104,252,101,2,104,162,104,175,227,242,229,244,227,233,242,227,236,101,128,50,153,236,230,240,225,242,229,110,128,50,66,239,227,233,229,244,249,240,225,242,229,110,128,50,51,112,2,104,205,104,211,225,227,101,128,48,0,229,227,233,225,236,240,225,242,229,110,128,50,53,116,2,104,230,104,241,239,227,235,240,225,242,229,110,128,50,49,245,228,249,240,225,242,229,110,128,50,59,117,2,105,2,105,11,238,240,225,242,229,110,128,50,48,240,229,242,246,233,243,229,240,225,242,229,110,128,50,60,119,2,105,32,105,44,225,244,229,242,240,225,242,229,110,128,50,44,239,239,228,240,225,242,229,110,128,50,45,250,229,242,111,128,48,7,109,2,105,68,105,81,229,244,225,236,227,233,242,227,236,101,128,50,142,239,239,238,227,233,242,227,236,101,128,50,138,238,225,237,229,227,233,242,227,236,101,128,50,148,243,245,238,227,233,242,227,236,101,128,50,144,119,2,105,124,105,137,225,244,229,242,227,233,242,227,236,101,128,50,140,239,239,228,227,233,242,227,236,101,128,50,141,246,97,128,9,7,233,229,242,229,243,233,115,130,0,239,105,168,105,176,225,227,245,244,101,128,30,47,227,249,242,233,236,236,233,99,128,4,229,239,244,226,229,236,239,119,128,30,203,101,3,105,205,105,221,105,232,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,215,227,249,242,233,236,236,233,99,128,4,53,245,238,103,4,105,244,106,23,106,38,106,47,97,2,105,250,106,9,227,233,242,227,236,229,235,239,242,229,225,110,128,50,117,240,225,242,229,238,235,239,242,229,225,110,128,50,21,227,233,242,227,236,229,235,239,242,229,225,110,128,50,103,235,239,242,229,225,110,128,49,71,240,225,242,229,238,235,239,242,229,225,110,128,50,7,103,2,106,67,106,74,242,225,246,101,128,0,236,117,2,106,80,106,89,234,225,242,225,244,105,128,10,135,242,237,245,235,232,105,128,10,7,104,2,106,104,106,114,233,242,225,231,225,238,97,128,48,68,239,239,235,225,226,239,246,101,128,30,201,105,8,106,143,106,153,106,164,106,171,106,196,106,212,106,227,106,243,226,229,238,231,225,236,105,128,9,136,227,249,242,233,236,236,233,99,128,4,56,228,229,246,97,128,9,8,231,117,2,106,178,106,187,234,225,242,225,244,105,128,10,136,242,237,245,235,232,105,128,10,8,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,64,238,246,229,242,244,229,228,226,242,229,246,101,128,2,11,243,232,239,242,244,227,249,242,233,236,236,233,99,128,4,57,246,239,247,229,236,243,233,231,110,3,107,3,107,13,107,20,226,229,238,231,225,236,105,128,9,192,228,229,246,97,128,9,64,231,245,234,225,242,225,244,105,128,10,192,106,128,1,51,107,2,107,41,107,65,225,244,225,235,225,238,97,129,48,164,107,53,232,225,236,230,247,233,228,244,104,128,255,114,239,242,229,225,110,128,49,99,108,2,107,79,107,84,228,101,128,2,220,245,249,232,229,226,242,229,119,128,5,172,109,2,107,101,107,168,97,3,107,109,107,129,107,154,227,242,239,110,129,1,43,107,118,227,249,242,233,236,236,233,99,128,4,227,231,229,239,242,225,240,240,242,239,248,233,237,225,244,229,236,249,229,241,245,225,108,128,34,83,244,242,225,231,245,242,237,245,235,232,105,128,10,63,239,238,239,243,240,225,227,101,128,255,73,110,5,107,191,107,201,107,210,107,222,108,50,227,242,229,237,229,238,116,128,34,6,230,233,238,233,244,121,128,34,30,233,225,242,237,229,238,233,225,110,128,5,107,116,2,107,228,108,40,101,2,107,234,108,29,231,242,225,108,131,34,43,107,247,108,9,108,14,98,2,107,253,108,5,239,244,244,239,109,128,35,33,116,128,35,33,229,120,128,248,245,116,2,108,20,108,25,239,112,128,35,32,112,128,35,32,242,243,229,227,244,233,239,110,128,34,41,233,243,241,245,225,242,101,128,51,5,118,3,108,58,108,67,108,76,226,245,236,236,229,116,128,37,216,227,233,242,227,236,101,128,37,217,243,237,233,236,229,230,225,227,101,128,38,59,111,3,108,96,108,107,108,115,227,249,242,233,236,236,233,99,128,4,81,231,239,238,229,107,128,1,47,244,97,131,3,185,108,126,108,147,108,155,228,233,229,242,229,243,233,115,129,3,202,108,139,244,239,238,239,115,128,3,144,236,225,244,233,110,128,2,105,244,239,238,239,115,128,3,175,240,225,242,229,110,128,36,164,242,233,231,245,242,237,245,235,232,105,128,10,114,115,4,108,194,108,239,108,253,109,5,237,225,236,108,2,108,203,108,214,232,233,242,225,231,225,238,97,128,48,67,235,225,244,225,235,225,238,97,129,48,163,108,227,232,225,236,230,247,233,228,244,104,128,255,104,243,232,225,242,226,229,238,231,225,236,105,128,9,250,244,242,239,235,101,128,2,104,245,240,229,242,233,239,114,128,246,237,116,2,109,21,109,55,229,242,225,244,233,239,110,2,109,33,109,44,232,233,242,225,231,225,238,97,128,48,157,235,225,244,225,235,225,238,97,128,48,253,233,236,228,101,129,1,41,109,64,226,229,236,239,119,128,30,45,117,2,109,78,109,89,226,239,240,239,237,239,230,111,128,49,41,227,249,242,233,236,236,233,99,128,4,78,246,239,247,229,236,243,233,231,110,3,109,116,109,126,109,133,226,229,238,231,225,236,105,128,9,191,228,229,246,97,128,9,63,231,245,234,225,242,225,244,105,128,10,191,250,232,233,244,243,97,2,109,155,109,166,227,249,242,233,236,236,233,99,128,4,117,228,226,236,231,242,225,246,229,227,249,242,233,236,236,233,99,128,4,119,106,138,0,106,109,209,110,16,110,27,110,77,110,93,110,206,111,19,111,24,111,36,111,44,97,4,109,219,109,230,109,240,109,247,225,242,237,229,238,233,225,110,128,5,113,226,229,238,231,225,236,105,128,9,156,228,229,246,97,128,9,28,231,117,2,109,254,110,7,234,225,242,225,244,105,128,10,156,242,237,245,235,232,105,128,10,28,226,239,240,239,237,239,230,111,128,49,16,99,3,110,35,110,42,110,64,225,242,239,110,128,1,240,233,242,99,2,110,50,110,55,236,101,128,36,217,245,237,230,236,229,120,128,1,53,242,239,243,243,229,228,244,225,233,108,128,2,157,228,239,244,236,229,243,243,243,244,242,239,235,101,128,2,95,101,3,110,101,110,112,110,177,227,249,242,233,236,236,233,99,128,4,88,229,109,4,110,123,110,132,110,146,110,162,225,242,225,226,233,99,128,6,44,230,233,238,225,236,225,242,225,226,233,99,128,254,158,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,159,237,229,228,233,225,236,225,242,225,226,233,99,128,254,160,104,2,110,183,110,192,225,242,225,226,233,99,128,6,152,230,233,238,225,236,225,242,225,226,233,99,128,251,139,104,2,110,212,111,6,97,3,110,220,110,230,110,237,226,229,238,231,225,236,105,128,9,157,228,229,246,97,128,9,29,231,117,2,110,244,110,253,234,225,242,225,244,105,128,10,157,242,237,245,235,232,105,128,10,29,229,232,225,242,237,229,238,233,225,110,128,5,123,233,115,128,48,4,237,239,238,239,243,240,225,227,101,128,255,74,240,225,242,229,110,128,36,165,243,245,240,229,242,233,239,114,128,2,178,107,146,0,107,111,95,113,184,113,195,114,1,114,12,114,102,114,116,115,224,116,164,116,177,116,203,116,252,117,134,117,156,117,169,117,192,117,234,117,244,97,12,111,121,111,153,111,175,111,205,112,63,112,88,112,118,112,143,112,249,113,7,113,130,113,159],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+30720);allocate([98,2,111,127,111,144,225,243,232,235,233,242,227,249,242,233,236,236,233,99,128,4,161,229,238,231,225,236,105,128,9,149,99,2,111,159,111,165,245,244,101,128,30,49,249,242,233,236,236,233,99,128,4,58,228,101,2,111,182,111,200,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,155,246,97,128,9,21,102,135,5,219,111,223,111,232,111,252,112,10,112,19,112,35,112,50,225,242,225,226,233,99,128,6,67,228,225,231,229,243,104,129,251,59,111,243,232,229,226,242,229,119,128,251,59,230,233,238,225,236,225,242,225,226,233,99,128,254,218,232,229,226,242,229,119,128,5,219,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,219,237,229,228,233,225,236,225,242,225,226,233,99,128,254,220,242,225,230,229,232,229,226,242,229,119,128,251,77,231,117,2,112,70,112,79,234,225,242,225,244,105,128,10,149,242,237,245,235,232,105,128,10,21,104,2,112,94,112,104,233,242,225,231,225,238,97,128,48,75,239,239,235,227,249,242,233,236,236,233,99,128,4,196,235,225,244,225,235,225,238,97,129,48,171,112,131,232,225,236,230,247,233,228,244,104,128,255,118,112,2,112,149,112,170,240,97,129,3,186,112,156,243,249,237,226,239,236,231,242,229,229,107,128,3,240,249,229,239,245,110,3,112,182,112,196,112,230,237,233,229,245,237,235,239,242,229,225,110,128,49,113,112,2,112,202,112,217,232,233,229,245,240,232,235,239,242,229,225,110,128,49,132,233,229,245,240,235,239,242,229,225,110,128,49,120,243,243,225,238,231,240,233,229,245,240,235,239,242,229,225,110,128,49,121,242,239,242,233,233,243,241,245,225,242,101,128,51,13,115,5,113,19,113,63,113,78,113,86,113,114,232,233,228,225,225,245,244,111,2,113,32,113,41,225,242,225,226,233,99,128,6,64,238,239,243,233,228,229,226,229,225,242,233,238,231,225,242,225,226,233,99,128,6,64,237,225,236,236,235,225,244,225,235,225,238,97,128,48,245,241,245,225,242,101,128,51,132,242,97,2,113,93,113,102,225,242,225,226,233,99,128,6,80,244,225,238,225,242,225,226,233,99,128,6,77,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,159,244,225,232,233,242,225,240,242,239,236,239,238,231,237,225,242,235,232,225,236,230,247,233,228,244,104,128,255,112,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,157,226,239,240,239,237,239,230,111,128,49,14,99,4,113,205,113,227,113,236,113,244,97,2,113,211,113,221,236,243,241,245,225,242,101,128,51,137,242,239,110,128,1,233,229,228,233,236,236,97,128,1,55,233,242,227,236,101,128,36,218,239,237,237,225,225,227,227,229,238,116,128,1,55,228,239,244,226,229,236,239,119,128,30,51,101,4,114,22,114,49,114,74,114,86,104,2,114,28,114,39,225,242,237,229,238,233,225,110,128,5,132,233,242,225,231,225,238,97,128,48,81,235,225,244,225,235,225,238,97,129,48,177,114,62,232,225,236,230,247,233,228,244,104,128,255,121,238,225,242,237,229,238,233,225,110,128,5,111,243,237,225,236,236,235,225,244,225,235,225,238,97,128,48,246,231,242,229,229,238,236,225,238,228,233,99,128,1,56,104,6,114,130,115,3,115,14,115,39,115,126,115,214,97,5,114,142,114,152,114,163,114,170,114,195,226,229,238,231,225,236,105,128,9,150,227,249,242,233,236,236,233,99,128,4,69,228,229,246,97,128,9,22,231,117,2,114,177,114,186,234,225,242,225,244,105,128,10,150,242,237,245,235,232,105,128,10,22,104,4,114,205,114,214,114,228,114,244,225,242,225,226,233,99,128,6,46,230,233,238,225,236,225,242,225,226,233,99,128,254,166,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,167,237,229,228,233,225,236,225,242,225,226,233,99,128,254,168,229,233,227,239,240,244,233,99,128,3,231,232,97,2,115,21,115,28,228,229,246,97,128,9,89,231,245,242,237,245,235,232,105,128,10,89,233,229,245,235,104,4,115,53,115,88,115,103,115,112,97,2,115,59,115,74,227,233,242,227,236,229,235,239,242,229,225,110,128,50,120,240,225,242,229,238,235,239,242,229,225,110,128,50,24,227,233,242,227,236,229,235,239,242,229,225,110,128,50,106,235,239,242,229,225,110,128,49,75,240,225,242,229,238,235,239,242,229,225,110,128,50,10,111,4,115,136,115,185,115,195,115,200,235,104,4,115,147,115,156,115,165,115,175,225,233,244,232,225,105,128,14,2,239,238,244,232,225,105,128,14,5,245,225,244,244,232,225,105,128,14,3,247,225,233,244,232,225,105,128,14,4,237,245,244,244,232,225,105,128,14,91,239,107,128,1,153,242,225,235,232,225,238,231,244,232,225,105,128,14,6,250,243,241,245,225,242,101,128,51,145,105,4,115,234,115,245,116,14,116,63,232,233,242,225,231,225,238,97,128,48,77,235,225,244,225,235,225,238,97,129,48,173,116,2,232,225,236,230,247,233,228,244,104,128,255,119,242,111,3,116,23,116,38,116,54,231,245,242,225,237,245,243,241,245,225,242,101,128,51,21,237,229,229,244,239,242,245,243,241,245,225,242,101,128,51,22,243,241,245,225,242,101,128,51,20,249,229,239,107,5,116,78,116,113,116,128,116,137,116,151,97,2,116,84,116,99,227,233,242,227,236,229,235,239,242,229,225,110,128,50,110,240,225,242,229,238,235,239,242,229,225,110,128,50,14,227,233,242,227,236,229,235,239,242,229,225,110,128,50,96,235,239,242,229,225,110,128,49,49,240,225,242,229,238,235,239,242,229,225,110,128,50,0,243,233,239,243,235,239,242,229,225,110,128,49,51,234,229,227,249,242,233,236,236,233,99,128,4,92,108,2,116,183,116,194,233,238,229,226,229,236,239,119,128,30,53,243,241,245,225,242,101,128,51,152,109,3,116,211,116,225,116,236,227,245,226,229,228,243,241,245,225,242,101,128,51,166,239,238,239,243,240,225,227,101,128,255,75,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,162,111,5,117,8,117,34,117,72,117,84,117,98,104,2,117,14,117,24,233,242,225,231,225,238,97,128,48,83,237,243,241,245,225,242,101,128,51,192,235,97,2,117,41,117,49,233,244,232,225,105,128,14,1,244,225,235,225,238,97,129,48,179,117,60,232,225,236,230,247,233,228,244,104,128,255,122,239,240,239,243,241,245,225,242,101,128,51,30,240,240,225,227,249,242,233,236,236,233,99,128,4,129,114,2,117,104,117,124,229,225,238,243,244,225,238,228,225,242,228,243,249,237,226,239,108,128,50,127,239,238,233,243,227,237,98,128,3,67,240,97,2,117,141,117,147,242,229,110,128,36,166,243,241,245,225,242,101,128,51,170,243,233,227,249,242,233,236,236,233,99,128,4,111,116,2,117,175,117,184,243,241,245,225,242,101,128,51,207,245,242,238,229,100,128,2,158,117,2,117,198,117,209,232,233,242,225,231,225,238,97,128,48,79,235,225,244,225,235,225,238,97,129,48,175,117,222,232,225,236,230,247,233,228,244,104,128,255,120,246,243,241,245,225,242,101,128,51,184,247,243,241,245,225,242,101,128,51,190,108,146,0,108,118,38,120,65,120,94,120,160,120,198,121,94,121,103,121,119,121,143,121,161,122,23,122,64,122,199,122,207,122,240,122,249,123,1,123,63,97,7,118,54,118,64,118,71,118,78,118,103,118,119,120,53,226,229,238,231,225,236,105,128,9,178,227,245,244,101,128,1,58,228,229,246,97,128,9,50,231,117,2,118,85,118,94,234,225,242,225,244,105,128,10,178,242,237,245,235,232,105,128,10,50,235,235,232,225,238,231,249,225,239,244,232,225,105,128,14,69,109,10,118,141,119,80,119,97,119,135,119,149,119,168,119,184,119,204,119,224,119,247,97,2,118,147,119,72,236,229,102,4,118,159,118,173,119,9,119,26,230,233,238,225,236,225,242,225,226,233,99,128,254,252,232,225,237,250,97,2,118,183,118,224,225,226,239,246,101,2,118,193,118,207,230,233,238,225,236,225,242,225,226,233,99,128,254,248,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,247,226,229,236,239,119,2,118,234,118,248,230,233,238,225,236,225,242,225,226,233,99,128,254,250,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,249,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,251,237,225,228,228,225,225,226,239,246,101,2,119,41,119,55,230,233,238,225,236,225,242,225,226,233,99,128,254,246,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,245,242,225,226,233,99,128,6,68,226,228,97,129,3,187,119,88,243,244,242,239,235,101,128,1,155,229,100,130,5,220,119,106,119,126,228,225,231,229,243,104,129,251,60,119,117,232,229,226,242,229,119,128,251,60,232,229,226,242,229,119,128,5,220,230,233,238,225,236,225,242,225,226,233,99,128,254,222,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,202,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,223,234,229,229,237,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,201,235,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,203,236,225,237,232,229,232,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,253,242,237,101,2,119,254,120,11,228,233,225,236,225,242,225,226,233,99,128,254,224,229,109,2,120,18,120,37,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,253,136,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,204,242,231,229,227,233,242,227,236,101,128,37,239,98,3,120,73,120,78,120,84,225,114,128,1,154,229,236,116,128,2,108,239,240,239,237,239,230,111,128,49,12,99,4,120,104,120,111,120,120,120,147,225,242,239,110,128,1,62,229,228,233,236,236,97,128,1,60,233,242,99,2,120,128,120,133,236,101,128,36,219,245,237,230,236,229,248,226,229,236,239,119,128,30,61,239,237,237,225,225,227,227,229,238,116,128,1,60,228,239,116,130,1,64,120,170,120,179,225,227,227,229,238,116,128,1,64,226,229,236,239,119,129,30,55,120,189,237,225,227,242,239,110,128,30,57,101,3,120,206,120,244,121,89,230,116,2,120,213,120,229,225,238,231,236,229,225,226,239,246,229,227,237,98,128,3,26,244,225,227,235,226,229,236,239,247,227,237,98,128,3,24,243,115,132,0,60,121,1,121,23,121,35,121,81,229,241,245,225,108,129,34,100,121,11,239,242,231,242,229,225,244,229,114,128,34,218,237,239,238,239,243,240,225,227,101,128,255,28,111,2,121,41,121,70,114,2,121,47,121,60,229,241,245,233,246,225,236,229,238,116,128,34,114,231,242,229,225,244,229,114,128,34,118,246,229,242,229,241,245,225,108,128,34,102,243,237,225,236,108,128,254,100,250,104,128,2,110,230,226,236,239,227,107,128,37,140,232,239,239,235,242,229,244,242,239,230,236,229,120,128,2,109,105,2,121,125,121,130,242,97,128,32,164,247,238,225,242,237,229,238,233,225,110,128,5,108,106,129,1,201,121,149,229,227,249,242,233,236,236,233,99,128,4,89,108,132,246,192,121,173,121,197,121,208,121,217,97,2,121,179,121,186,228,229,246,97,128,9,51,231,245,234,225,242,225,244,105,128,10,179,233,238,229,226,229,236,239,119,128,30,59,236,225,228,229,246,97,128,9,52,246,239,227,225,236,233,99,3,121,231,121,241,121,248,226,229,238,231,225,236,105,128,9,225,228,229,246,97,128,9,97,246,239,247,229,236,243,233,231,110,2,122,6,122,16,226,229,238,231,225,236,105,128,9,227,228,229,246,97,128,9,99,109,3,122,31,122,44,122,55,233,228,228,236,229,244,233,236,228,101,128,2,107,239,238,239,243,240,225,227,101,128,255,76,243,241,245,225,242,101,128,51,208,111,6,122,78,122,90,122,132,122,143,122,149,122,191,227,232,245,236,225,244,232,225,105,128,14,44,231,233,227,225,108,3,122,102,122,108,122,127,225,238,100,128,34,39,238,239,116,129,0,172,122,116,242,229,246,229,242,243,229,100,128,35,16,239,114,128,34,40,236,233,238,231,244,232,225,105,128,14,37,238,231,115,128,1,127,247,236,233,238,101,2,122,159,122,182,99,2,122,165,122,177,229,238,244,229,242,236,233,238,101,128,254,78,237,98,128,3,50,228,225,243,232,229,100,128,254,77,250,229,238,231,101,128,37,202,240,225,242,229,110,128,36,167,115,3,122,215,122,222,122,230,236,225,243,104,128,1,66,241,245,225,242,101,128,33,19,245,240,229,242,233,239,114,128,246,238,244,243,232,225,228,101,128,37,145,245,244,232,225,105,128,14,38,246,239,227,225,236,233,99,3,123,15,123,25,123,32,226,229,238,231,225,236,105,128,9,140,228,229,246,97,128,9,12,246,239,247,229,236,243,233,231,110,2,123,46,123,56,226,229,238,231,225,236,105,128,9,226,228,229,246,97,128,9,98,248,243,241,245,225,242,101,128,51,211,109,144,0,109,123,109,125,218,125,243,126,14,126,39,127,92,127,114,128,169,128,199,128,248,129,99,129,121,129,146,129,155,130,182,130,210,97,12,123,135,123,145,123,209,123,216,123,241,124,33,125,125,125,150,125,155,125,169,125,181,125,186,226,229,238,231,225,236,105,128,9,174,99,2,123,151,123,203,242,239,110,132,0,175,123,165,123,176,123,182,123,191,226,229,236,239,247,227,237,98,128,3,49,227,237,98,128,3,4,236,239,247,237,239,100,128,2,205,237,239,238,239,243,240,225,227,101,128,255,227,245,244,101,128,30,63,228,229,246,97,128,9,46,231,117,2,123,223,123,232,234,225,242,225,244,105,128,10,174,242,237,245,235,232,105,128,10,46,104,2,123,247,124,23,225,240,225,235,104,2,124,1,124,10,232,229,226,242,229,119,128,5,164,236,229,230,244,232,229,226,242,229,119,128,5,164,233,242,225,231,225,238,97,128,48,126,105,5,124,45,124,114,124,177,124,207,125,113,227,232,225,244,244,225,247,97,3,124,60,124,91,124,98,236,239,119,2,124,68,124,79,236,229,230,244,244,232,225,105,128,248,149,242,233,231,232,244,244,232,225,105,128,248,148,244,232,225,105,128,14,75,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,147,229,107,3,124,123,124,154,124,161,236,239,119,2,124,131,124,142,236,229,230,244,244,232,225,105,128,248,140,242,233,231,232,244,244,232,225,105,128,248,139,244,232,225,105,128,14,72,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,138,232,225,238,225,235,225,116,2,124,189,124,200,236,229,230,244,244,232,225,105,128,248,132,244,232,225,105,128,14,49,116,3,124,215,124,243,125,50,225,233,235,232,117,2,124,225,124,236,236,229,230,244,244,232,225,105,128,248,137,244,232,225,105,128,14,71,232,111,3,124,252,125,27,125,34,236,239,119,2,125,4,125,15,236,229,230,244,244,232,225,105,128,248,143,242,233,231,232,244,244,232,225,105,128,248,142,244,232,225,105,128,14,73,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,141,242,105,3,125,59,125,90,125,97,236,239,119,2,125,67,125,78,236,229,230,244,244,232,225,105,128,248,146,242,233,231,232,244,244,232,225,105,128,248,145,244,232,225,105,128,14,74,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,144,249,225,237,239,235,244,232,225,105,128,14,70,235,225,244,225,235,225,238,97,129,48,222,125,138,232,225,236,230,247,233,228,244,104,128,255,143,236,101,128,38,66,238,243,249,239,238,243,241,245,225,242,101,128,51,71,241,225,230,232,229,226,242,229,119,128,5,190,242,115,128,38,66,115,2,125,192,125,210,239,242,225,227,233,242,227,236,229,232,229,226,242,229,119,128,5,175,241,245,225,242,101,128,51,131,98,2,125,224,125,234,239,240,239,237,239,230,111,128,49,7,243,241,245,225,242,101,128,51,212,99,2,125,249,126,1,233,242,227,236,101,128,36,220,245,226,229,228,243,241,245,225,242,101,128,51,165,228,239,116,2,126,22,126,31,225,227,227,229,238,116,128,30,65,226,229,236,239,119,128,30,67,101,7,126,55,126,182,126,193,126,208,126,233,127,14,127,26,101,2,126,61,126,169,109,4,126,71,126,80,126,94,126,110,225,242,225,226,233,99,128,6,69,230,233,238,225,236,225,242,225,226,233,99,128,254,226,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,227,237,101,2,126,117,126,130,228,233,225,236,225,242,225,226,233,99,128,254,228,229,237,105,2,126,138,126,153,238,233,244,233,225,236,225,242,225,226,233,99,128,252,209,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,72,244,239,242,245,243,241,245,225,242,101,128,51,77,232,233,242,225,231,225,238,97,128,48,129,233,250,233,229,242,225,243,241,245,225,242,101,128,51,126,235,225,244,225,235,225,238,97,129,48,225,126,221,232,225,236,230,247,233,228,244,104,128,255,146,109,130,5,222,126,241,127,5,228,225,231,229,243,104,129,251,62,126,252,232,229,226,242,229,119,128,251,62,232,229,226,242,229,119,128,5,222,238,225,242,237,229,238,233,225,110,128,5,116,242,235,232,97,3,127,37,127,46,127,79,232,229,226,242,229,119,128,5,165,235,229,230,245,236,97,2,127,57,127,66,232,229,226,242,229,119,128,5,166,236,229,230,244,232,229,226,242,229,119,128,5,166,236,229,230,244,232,229,226,242,229,119,128,5,165,104,2,127,98,127,104,239,239,107,128,2,113,250,243,241,245,225,242,101,128,51,146,105,6,127,128,127,165,128,46,128,57,128,82,128,139,228,100,2,127,135,127,160,236,229,228,239,244,235,225,244,225,235,225,238,225,232,225,236,230,247,233,228,244,104,128,255,101,239,116,128,0,183,229,245,109,5,127,179,127,214,127,229,127,238,128,33,97,2,127,185,127,200,227,233,242,227,236,229,235,239,242,229,225,110,128,50,114,240,225,242,229,238,235,239,242,229,225,110,128,50,18,227,233,242,227,236,229,235,239,242,229,225,110,128,50,100,235,239,242,229,225,110,128,49,65,112,2,127,244,128,20,97,2,127,250,128,8,238,243,233,239,243,235,239,242,229,225,110,128,49,112,242,229,238,235,239,242,229,225,110,128,50,4,233,229,245,240,235,239,242,229,225,110,128,49,110,243,233,239,243,235,239,242,229,225,110,128,49,111,232,233,242,225,231,225,238,97,128,48,127,235,225,244,225,235,225,238,97,129,48,223,128,70,232,225,236,230,247,233,228,244,104,128,255,144,238,117,2,128,89,128,134,115,132,34,18,128,101,128,112,128,121,128,127,226,229,236,239,247,227,237,98,128,3,32,227,233,242,227,236,101,128,34,150,237,239,100,128,2,215,240,236,245,115,128,34,19,244,101,128,32,50,242,105,2,128,146,128,160,226,225,225,242,245,243,241,245,225,242,101,128,51,74,243,241,245,225,242,101,128,51,73,108,2,128,175,128,190,239,238,231,236,229,231,244,245,242,238,229,100,128,2,112,243,241,245,225,242,101,128,51,150,109,3,128,207,128,221,128,232,227,245,226,229,228,243,241,245,225,242,101,128,51,163,239,238,239,243,240,225,227,101,128,255,77,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,159,111,5,129,4,129,30,129,55,129,65,129,74,104,2,129,10,129,20,233,242,225,231,225,238,97,128,48,130,237,243,241,245,225,242,101,128,51,193,235,225,244,225,235,225,238,97,129,48,226,129,43,232,225,236,230,247,233,228,244,104,128,255,147,236,243,241,245,225,242,101,128,51,214,237,225,244,232,225,105,128,14,33,246,229,242,243,243,241,245,225,242,101,129,51,167,129,89,228,243,241,245,225,242,101,128,51,168,240,97,2,129,106,129,112,242,229,110,128,36,168,243,241,245,225,242,101,128,51,171,115,2,129,127,129,136,243,241,245,225,242,101,128,51,179,245,240,229,242,233,239,114,128,246,239,244,245,242,238,229,100,128,2,111,117,141,0,181,129,185,129,189,129,199,129,223,129,233,129,255,130,10,130,35,130,58,130,68,130,98,130,162,130,172,49,128,0,181,225,243,241,245,225,242,101,128,51,130,227,104,2,129,206,129,216,231,242,229,225,244,229,114,128,34,107,236,229,243,115,128,34,106,230,243,241,245,225,242,101,128,51,140,103,2,129,239,129,246,242,229,229,107,128,3,188,243,241,245,225,242,101,128,51,141,232,233,242,225,231,225,238,97,128,48,128,235,225,244,225,235,225,238,97,129,48,224,130,23,232,225,236,230,247,233,228,244,104,128,255,145,108,2,130,41,130,50,243,241,245,225,242,101,128,51,149,244,233,240,236,121,128,0,215,237,243,241,245,225,242,101,128,51,155,238,225,104,2,130,76,130,85,232,229,226,242,229,119,128,5,163,236,229,230,244,232,229,226,242,229,119,128,5,163,115,2,130,104,130,153,233,99,3,130,113,130,130,130,141,225,236,238,239,244,101,129,38,106,130,124,228,226,108,128,38,107,230,236,225,244,243,233,231,110,128,38,109,243,232,225,242,240,243,233,231,110,128,38,111,243,241,245,225,242,101,128,51,178,246,243,241,245,225,242,101,128,51,182,247,243,241,245,225,242,101,128,51,188,118,2,130,188,130,201,237,229,231,225,243,241,245,225,242,101,128,51,185,243,241,245,225,242,101,128,51,183,119,2,130,216,130,229,237,229,231,225,243,241,245,225,242,101,128,51,191,243,241,245,225,242,101,128,51,189,110,150,0,110,131,30,131,164,131,188,131,254,132,23,132,81,132,91,132,158,132,201,134,235,134,253,135,22,135,53,135,79,135,144,137,126,137,134,137,159,137,167,138,135,138,145,138,155,97,8,131,48,131,68,131,75,131,82,131,107,131,118,131,143,131,155,98,2,131,54,131,63,229,238,231,225,236,105,128,9,168,236,97,128,34,7,227,245,244,101,128,1,68,228,229,246,97,128,9,40,231,117,2,131,89,131,98,234,225,242,225,244,105,128,10,168,242,237,245,235,232,105,128,10,40,232,233,242,225,231,225,238,97,128,48,106,235,225,244,225,235,225,238,97,129,48,202,131,131,232,225,236,230,247,233,228,244,104,128,255,133,240,239,243,244,242,239,240,232,101,128,1,73,243,241,245,225,242,101,128,51,129,98,2,131,170,131,180,239,240,239,237,239,230,111,128,49,11,243,240,225,227,101,128,0,160,99,4,131,198,131,205,131,214,131,241,225,242,239,110,128,1,72,229,228,233,236,236,97,128,1,70,233,242,99,2,131,222,131,227,236,101,128,36,221,245,237,230,236,229,248,226,229,236,239,119,128,30,75,239,237,237,225,225,227,227,229,238,116,128,1,70,228,239,116,2,132,6,132,15,225,227,227,229,238,116,128,30,69,226,229,236,239,119,128,30,71,101,3,132,31,132,42,132,67,232,233,242,225,231,225,238,97,128,48,109,235,225,244,225,235,225,238,97,129,48,205,132,55,232,225,236,230,247,233,228,244,104,128,255,136,247,243,232,229,241,229,236,243,233,231,110,128,32,170,230,243,241,245,225,242,101,128,51,139,103,2,132,97,132,147,97,3,132,105,132,115,132,122,226,229,238,231,225,236,105,128,9,153,228,229,246,97,128,9,25,231,117,2,132,129,132,138,234,225,242,225,244,105,128,10,153,242,237,245,235,232,105,128,10,25,239,238,231,245,244,232,225,105,128,14,7,104,2,132,164,132,174,233,242,225,231,225,238,97,128,48,147,239,239,107,2,132,182,132,189,236,229,230,116,128,2,114,242,229,244,242,239,230,236,229,120,128,2,115,105,4,132,211,133,124,133,135,133,193,229,245,110,7,132,229,133,8,133,40,133,54,133,63,133,96,133,109,97,2,132,235,132,250,227,233,242,227,236,229,235,239,242,229,225,110,128,50,111,240,225,242,229,238,235,239,242,229,225,110,128,50,15,227,105,2,133,15,133,27,229,245,227,235,239,242,229,225,110,128,49,53,242,227,236,229,235,239,242,229,225,110,128,50,97,232,233,229,245,232,235,239,242,229,225,110,128,49,54,235,239,242,229,225,110,128,49,52,240,97,2,133,70,133,84,238,243,233,239,243,235,239,242,229,225,110,128,49,104,242,229,238,235,239,242,229,225,110,128,50,1,243,233,239,243,235,239,242,229,225,110,128,49,103,244,233,235,229,245,244,235,239,242,229,225,110,128,49,102,232,233,242,225,231,225,238,97,128,48,107,107,2,133,141,133,165,225,244,225,235,225,238,97,129,48,203,133,153,232,225,236,230,247,233,228,244,104,128,255,134,232,225,232,233,116,2,133,175,133,186,236,229,230,244,244,232,225,105,128,248,153,244,232,225,105,128,14,77,238,101,141,0,57,133,224,133,233,133,243,134,17,134,24,134,49,134,76,134,110,134,122,134,133,134,166,134,174,134,185,225,242,225,226,233,99,128,6,105,226,229,238,231,225,236,105,128,9,239,227,233,242,227,236,101,129,36,104,133,254,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,146,228,229,246,97,128,9,111,231,117,2,134,31,134,40,234,225,242,225,244,105,128,10,239,242,237,245,235,232,105,128,10,111,232,97,2,134,56,134,67,227,235,225,242,225,226,233,99,128,6,105,238,231,250,232,239,117,128,48,41,105,2,134,82,134,100,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,40,238,230,229,242,233,239,114,128,32,137,237,239,238,239,243,240,225,227,101,128,255,25,239,236,228,243,244,249,236,101,128,247,57,112,2,134,139,134,146,225,242,229,110,128,36,124,229,114,2,134,153,134,159,233,239,100,128,36,144,243,233,225,110,128,6,249,242,239,237,225,110,128,33,120,243,245,240,229,242,233,239,114,128,32,121,116,2,134,191,134,229,229,229,110,2,134,199,134,208,227,233,242,227,236,101,128,36,114,112,2,134,214,134,221,225,242,229,110,128,36,134,229,242,233,239,100,128,36,154,232,225,105,128,14,89,106,129,1,204,134,241,229,227,249,242,233,236,236,233,99,128,4,90,235,225,244,225,235,225,238,97,129,48,243,135,10,232,225,236,230,247,233,228,244,104,128,255,157,108,2,135,28,135,42,229,231,242,233,231,232,244,236,239,238,103,128,1,158,233,238,229,226,229,236,239,119,128,30,73,109,2,135,59,135,70,239,238,239,243,240,225,227,101,128,255,78,243,241,245,225,242,101,128,51,154,110,2,135,85,135,135,97,3,135,93,135,103,135,110,226,229,238,231,225,236,105,128,9,163,228,229,246,97,128,9,35,231,117,2,135,117,135,126,234,225,242,225,244,105,128,10,163,242,237,245,235,232,105,128,10,35,238,225,228,229,246,97,128,9,41,111,6,135,158,135,169,135,194,135,235,136,187,137,114,232,233,242,225,231,225,238,97,128,48,110,235,225,244,225,235,225,238,97,129,48,206,135,182,232,225,236,230,247,233,228,244,104,128,255,137,110,3,135,202,135,218,135,227,226,242,229,225,235,233,238,231,243,240,225,227,101,128,0,160,229,238,244,232,225,105,128,14,19,245,244,232,225,105,128,14,25,239,110,7,135,252,136,5,136,19,136,53,136,69,136,110,136,169,225,242,225,226,233,99,128,6,70,230,233,238,225,236,225,242,225,226,233,99,128,254,230,231,232,245,238,238,97,2,136,30,136,39,225,242,225,226,233,99,128,6,186,230,233,238,225,236,225,242,225,226,233,99,128,251,159,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,231,234,229,229,237,105,2,136,79,136,94,238,233,244,233,225,236,225,242,225,226,233,99,128,252,210,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,75,237,101,2,136,117,136,130,228,233,225,236,225,242,225,226,233,99,128,254,232,229,237,105,2,136,138,136,153,238,233,244,233,225,236,225,242,225,226,233,99,128,252,213,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,78,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,141,116,7,136,203,136,214,136,243,137,22,137,34,137,54,137,80,227,239,238,244,225,233,238,115,128,34,12,101,2,136,220,136,236,236,229,237,229,238,116,129,34,9,136,231,239,102,128,34,9,241,245,225,108,128,34,96,231,242,229,225,244,229,114,129,34,111,136,255,238,239,114,2,137,7,137,15,229,241,245,225,108,128,34,113,236,229,243,115,128,34,121,233,228,229,238,244,233,227,225,108,128,34,98,236,229,243,115,129,34,110,137,43,238,239,242,229,241,245,225,108,128,34,112,112,2,137,60,137,70,225,242,225,236,236,229,108,128,34,38,242,229,227,229,228,229,115,128,34,128,243,117,3,137,89,137,96,137,105,226,243,229,116,128,34,132,227,227,229,229,228,115,128,34,129,240,229,242,243,229,116,128,34,133,247,225,242,237,229,238,233,225,110,128,5,118,240,225,242,229,110,128,36,169,115,2,137,140,137,149,243,241,245,225,242,101,128,51,177,245,240,229,242,233,239,114,128,32,127,244,233,236,228,101,128,0,241,117,132,3,189,137,179,137,190,138,15,138,98,232,233,242,225,231,225,238,97,128,48,108,107,2,137,196,137,220,225,244,225,235,225,238,97,129,48,204,137,208,232,225,236,230,247,233,228,244,104,128,255,135,244,97,3,137,229,137,239,137,246,226,229,238,231,225,236,105,128,9,188,228,229,246,97,128,9,60,231,117,2,137,253,138,6,234,225,242,225,244,105,128,10,188,242,237,245,235,232,105,128,10,60,109,2,138,21,138,55,226,229,242,243,233,231,110,130,0,35,138,35,138,47,237,239,238,239,243,240,225,227,101,128,255,3,243,237,225,236,108,128,254,95,229,114,2,138,62,138,94,225,236,243,233,231,110,2,138,73,138,81,231,242,229,229,107,128,3,116,236,239,247,229,242,231,242,229,229,107,128,3,117,111,128,33,22,110,130,5,224,138,106,138,126,228,225,231,229,243,104,129,251,64,138,117,232,229,226,242,229,119,128,251,64,232,229,226,242,229,119,128,5,224,246,243,241,245,225,242,101,128,51,181,247,243,241,245,225,242,101,128,51,187,249,97,3,138,164,138,174,138,181,226,229,238,231,225,236,105,128,9,158,228,229,246,97,128,9,30,231,117,2,138,188,138,197,234,225,242,225,244,105,128,10,158,242,237,245,235,232,105,128,10,30,111,147,0,111,138,248,139,14,139,92,140,6,140,78,140,93,140,133,141,0,141,21,141,59,141,70,141,248,143,82,143,146,143,179,143,225,144,98,144,145,144,157,97,2,138,254,139,5,227,245,244,101,128,0,243,238,231,244,232,225,105,128,14,45,98,4,139,24,139,66,139,75,139,85,225,242,242,229,100,130,2,117,139,36,139,47,227,249,242,233,236,236,233,99,128,4,233,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,235,229,238,231,225,236,105,128,9,147,239,240,239,237,239,230,111,128,49,27,242,229,246,101,128,1,79,99,3,139,100,139,173,139,252,97,2,139,106,139,167,238,228,242,97,3,139,117,139,124,139,135,228,229,246,97,128,9,17,231,245,234,225,242,225,244,105,128,10,145,246,239,247,229,236,243,233,231,110,2,139,149,139,156,228,229,246,97,128,9,73,231,245,234,225,242,225,244,105,128,10,201,242,239,110,128,1,210,233,242,99,2,139,181,139,186,236,101,128,36,222,245,237,230,236,229,120,133,0,244,139,205,139,213,139,224,139,232,139,244,225,227,245,244,101,128,30,209,228,239,244,226,229,236,239,119,128,30,217,231,242,225,246,101,128,30,211,232,239,239,235,225,226,239,246,101,128,30,213,244,233,236,228,101,128,30,215,249,242,233,236,236,233,99,128,4,62,100,4,140,16,140,39,140,45,140,68,226,108,2,140,23,140,31,225,227,245,244,101,128,1,81,231,242,225,246,101,128,2,13,229,246,97,128,9,19,233,229,242,229,243,233,115,129,0,246,140,57,227,249,242,233,236,236,233,99,128,4,231,239,244,226,229,236,239,119,128,30,205,101,129,1,83,140,84,235,239,242,229,225,110,128,49,90,103,3,140,101,140,116,140,123,239,238,229,107,129,2,219,140,110,227,237,98,128,3,40,242,225,246,101,128,0,242,245,234,225,242,225,244,105,128,10,147,104,4,140,143,140,154,140,164,140,242,225,242,237,229,238,233,225,110,128,5,133,233,242,225,231,225,238,97,128,48,74,111,2,140,170,140,180,239,235,225,226,239,246,101,128,30,207,242,110,133,1,161,140,195,140,203,140,214,140,222,140,234,225,227,245,244,101,128,30,219,228,239,244,226,229,236,239,119,128,30,227,231,242,225,246,101,128,30,221,232,239,239,235,225,226,239,246,101,128,30,223,244,233,236,228,101,128,30,225,245,238,231,225,242,245,237,236,225,245,116,128,1,81,105,129,1,163,141,6,238,246,229,242,244,229,228,226,242,229,246,101,128,2,15,107,2,141,27,141,51,225,244,225,235,225,238,97,129,48,170,141,39,232,225,236,230,247,233,228,244,104,128,255,117,239,242,229,225,110,128,49,87,236,229,232,229,226,242,229,119,128,5,171,109,6,141,84,141,112,141,119,141,208,141,219,141,237,225,227,242,239,110,130,1,77,141,96,141,104,225,227,245,244,101,128,30,83,231,242,225,246,101,128,30,81,228,229,246,97,128,9,80,229,231,97,133,3,201,141,135,141,139,141,150,141,164,141,180,49,128,3,214,227,249,242,233,236,236,233,99,128,4,97,236,225,244,233,238,227,236,239,243,229,100,128,2,119,242,239,245,238,228,227,249,242,233,236,236,233,99,128,4,123,116,2,141,186,141,201,233,244,236,239,227,249,242,233,236,236,233,99,128,4,125,239,238,239,115,128,3,206,231,245,234,225,242,225,244,105,128,10,208,233,227,242,239,110,129,3,191,141,229,244,239,238,239,115,128,3,204,239,238,239,243,240,225,227,101,128,255,79,238,101,145,0,49,142,31,142,40,142,50,142,80,142,105,142,114,142,123,142,148,142,182,142,216,142,228,142,247,143,2,143,35,143,45,143,53,143,64,225,242,225,226,233,99,128,6,97,226,229,238,231,225,236,105,128,9,231,227,233,242,227,236,101,129,36,96,142,61,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,138,100,2,142,86,142,92,229,246,97,128,9,103,239,244,229,238,236,229,225,228,229,114,128,32,36,229,233,231,232,244,104,128,33,91,230,233,244,244,229,100,128,246,220,231,117,2,142,130,142,139,234,225,242,225,244,105,128,10,231,242,237,245,235,232,105,128,10,103,232,97,3,142,157,142,168,142,173,227,235,225,242,225,226,233,99,128,6,97,236,102,128,0,189,238,231,250,232,239,117,128,48,33,105,2,142,188,142,206,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,32,238,230,229,242,233,239,114,128,32,129,237,239,238,239,243,240,225,227,101,128,255,17,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,244,239,236,228,243,244,249,236,101,128,247,49,112,2,143,8,143,15,225,242,229,110,128,36,116,229,114,2,143,22,143,28,233,239,100,128,36,136,243,233,225,110,128,6,241,241,245,225,242,244,229,114,128,0,188,242,239,237,225,110,128,33,112,243,245,240,229,242,233,239,114,128,0,185,244,104,2,143,71,143,76,225,105,128,14,81,233,242,100,128,33,83,111,3,143,90,143,124,143,140,103,2,143,96,143,114,239,238,229,107,129,1,235,143,105,237,225,227,242,239,110,128,1,237,245,242,237,245,235,232,105,128,10,19,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,75,240,229,110,128,2,84,112,3,143,154,143,161,143,172,225,242,229,110,128,36,170,229,238,226,245,236,236,229,116,128,37,230,244,233,239,110,128,35,37,114,2,143,185,143,214,100,2,143,191,143,202,230,229,237,233,238,233,238,101,128,0,170,237,225,243,227,245,236,233,238,101,128,0,186,244,232,239,231,239,238,225,108,128,34,31,115,5,143,237,144,13,144,30,144,75,144,88,232,239,242,116,2,143,246,143,253,228,229,246,97,128,9,18,246,239,247,229,236,243,233,231,238,228,229,246,97,128,9,74,236,225,243,104,129,0,248,144,22,225,227,245,244,101,128,1,255,237,225,236,108,2,144,39,144,50,232,233,242,225,231,225,238,97,128,48,73,235,225,244,225,235,225,238,97,129,48,169,144,63,232,225,236,230,247,233,228,244,104,128,255,107,244,242,239,235,229,225,227,245,244,101,128,1,255,245,240,229,242,233,239,114,128,246,240,116,2,144,104,144,115,227,249,242,233,236,236,233,99,128,4,127,233,236,228,101,130,0,245,144,126,144,134,225,227,245,244,101,128,30,77,228,233,229,242,229,243,233,115,128,30,79,245,226,239,240,239,237,239,230,111,128,49,33,118,2,144,163,144,244,229,114,2,144,170,144,236,236,233,238,101,131,32,62,144,183,144,206,144,229,99,2,144,189,144,201,229,238,244,229,242,236,233,238,101,128,254,74,237,98,128,3,5,100,2,144,212,144,220,225,243,232,229,100,128,254,73,226,236,247,225,246,121,128,254,76,247,225,246,121,128,254,75,243,227,239,242,101,128,0,175,239,247,229,236,243,233,231,110,3,145,3,145,13,145,20,226,229,238,231,225,236,105,128,9,203,228,229,246,97,128,9,75,231,245,234,225,242,225,244,105,128,10,203,112,145,0,112,145,69,147,197,147,208,147,217,147,229,149,154,149,164,150,156,151,175,152,9,152,35,152,166,152,174,153,76,153,134,153,162,153,172,97,14,145,99,145,131,145,141,145,148,145,155,145,203,145,214,145,228,145,239,146,30,146,44,147,56,147,95,147,185,97,2,145,105,145,117,237,240,243,243,241,245,225,242,101,128,51,128,243,229,238,244,239,243,241,245,225,242,101,128,51,43,226,229,238,231,225,236,105,128,9,170,227,245,244,101,128,30,85,228,229,246,97,128,9,42,103,2,145,161,145,179,101,2,145,167,145,174,228,239,247,110,128,33,223,245,112,128,33,222,117,2,145,185,145,194,234,225,242,225,244,105,128,10,170,242,237,245,235,232,105,128,10,42,232,233,242,225,231,225,238,97,128,48,113,233,249,225,238,238,239,233,244,232,225,105,128,14,47,235,225,244,225,235,225,238,97,128,48,209,108,2,145,245,146,14,225,244,225,236,233,250,225,244,233,239,238,227,249,242,233,236,236,233,227,227,237,98,128,4,132,239,227,232,235,225,227,249,242,233,236,236,233,99,128,4,192,238,243,233,239,243,235,239,242,229,225,110,128,49,127,114,3,146,52,146,73,147,45,97,2,146,58,146,66,231,242,225,240,104,128,0,182,236,236,229,108,128,34,37,229,110,2,146,80,146,190,236,229,230,116,136,0,40,146,103,146,118,146,123,146,128,146,139,146,151,146,174,146,179,225,236,244,239,238,229,225,242,225,226,233,99,128,253,62,226,116,128,248,237,229,120,128,248,236,233,238,230,229,242,233,239,114,128,32,141,237,239,238,239,243,240,225,227,101,128,255,8,115,2,146,157,146,164,237,225,236,108,128,254,89,245,240,229,242,233,239,114,128,32,125,244,112,128,248,235,246,229,242,244,233,227,225,108,128,254,53,242,233,231,232,116,136,0,41,146,214,146,229,146,234,146,239,146,250,147,6,147,29,147,34,225,236,244,239,238,229,225,242,225,226,233,99,128,253,63,226,116,128,248,248,229,120,128,248,247,233,238,230,229,242,233,239,114,128,32,142,237,239,238,239,243,240,225,227,101,128,255,9,115,2,147,12,147,19,237,225,236,108,128,254,90,245,240,229,242,233,239,114,128,32,126,244,112,128,248,246,246,229,242,244,233,227,225,108,128,254,54,244,233,225,236,228,233,230,102,128,34,2,115,3,147,64,147,75,147,87,229,241,232,229,226,242,229,119,128,5,192,232,244,225,232,229,226,242,229,119,128,5,153,241,245,225,242,101,128,51,169,244,225,104,134,5,183,147,113,147,127,147,132,147,141,147,156,147,172,49,2,147,119,147,123,49,128,5,183,100,128,5,183,178,97,128,5,183,232,229,226,242,229,119,128,5,183,238,225,242,242,239,247,232,229,226,242,229,119,128,5,183,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,183,247,233,228,229,232,229,226,242,229,119,128,5,183,250,229,242,232,229,226,242,229,119,128,5,161,226,239,240,239,237,239,230,111,128,49,6,227,233,242,227,236,101,128,36,223,228,239,244,225,227,227,229,238,116,128,30,87,101,137,5,228,147,251,148,6,148,26,148,38,148,58,148,160,148,171,148,192,149,147,227,249,242,233,236,236,233,99,128,4,63,228,225,231,229,243,104,129,251,68,148,17,232,229,226,242,229,119,128,251,68,229,250,233,243,241,245,225,242,101,128,51,59,230,233,238,225,236,228,225,231,229,243,232,232,229,226,242,229,119,128,251,67,104,5,148,70,148,93,148,101,148,115,148,145,225,114,2,148,77,148,84,225,226,233,99,128,6,126,237,229,238,233,225,110,128,5,122,229,226,242,229,119,128,5,228,230,233,238,225,236,225,242,225,226,233,99,128,251,87,105,2,148,121,148,136,238,233,244,233,225,236,225,242,225,226,233,99,128,251,88,242,225,231,225,238,97,128,48,122,237,229,228,233,225,236,225,242,225,226,233,99,128,251,89,235,225,244,225,235,225,238,97,128,48,218,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,167,114,5,148,204,148,216,149,2,149,123,149,136,225,230,229,232,229,226,242,229,119,128,251,78,227,229,238,116,131,0,37,148,229,148,238,148,250,225,242,225,226,233,99,128,6,106,237,239,238,239,243,240,225,227,101,128,255,5,243,237,225,236,108,128,254,106,105,2,149,8,149,105,239,100,134,0,46,149,25,149,36,149,47,149,59,149,70,149,82,225,242,237,229,238,233,225,110,128,5,137,227,229,238,244,229,242,229,100,128,0,183,232,225,236,230,247,233,228,244,104,128,255,97,233,238,230,229,242,233,239,114,128,246,231,237,239,238,239,243,240,225,227,101,128,255,14,115,2,149,88,149,95,237,225,236,108,128,254,82,245,240,229,242,233,239,114,128,246,232,243,240,239,237,229,238,233,231,242,229,229,235,227,237,98,128,3,66,240,229,238,228,233,227,245,236,225,114,128,34,165,244,232,239,245,243,225,238,100,128,32,48,243,229,244,97,128,32,167,230,243,241,245,225,242,101,128,51,138,104,3,149,172,149,222,150,103,97,3,149,180,149,190,149,197,226,229,238,231,225,236,105,128,9,171,228,229,246,97,128,9,43,231,117,2,149,204,149,213,234,225,242,225,244,105,128,10,171,242,237,245,235,232,105,128,10,43,105,133,3,198,149,236,149,240,150,70,150,78,150,89,49,128,3,213,229,245,240,104,4,149,253,150,32,150,47,150,56,97,2,150,3,150,18,227,233,242,227,236,229,235,239,242,229,225,110,128,50,122,240,225,242,229,238,235,239,242,229,225,110,128,50,26,227,233,242,227,236,229,235,239,242,229,225,110,128,50,108,235,239,242,229,225,110,128,49,77,240,225,242,229,238,235,239,242,229,225,110,128,50,12,236,225,244,233,110,128,2,120,238,244,232,245,244,232,225,105,128,14,58,243,249,237,226,239,236,231,242,229,229,107,128,3,213,111,3,150,111,150,116,150,142,239,107,128,1,165,240,104,2,150,123,150,132,225,238,244,232,225,105,128,14,30,245,238,231,244,232,225,105,128,14,28,243,225,237,240,232,225,239,244,232,225,105,128,14,32,105,133,3,192,150,170,151,126,151,137,151,148,151,162,229,245,112,6,150,186,150,221,150,253,151,25,151,39,151,91,97,2,150,192,150,207,227,233,242,227,236,229,235,239,242,229,225,110,128,50,115,240,225,242,229,238,235,239,242,229,225,110,128,50,19,227,105,2,150,228,150,240,229,245,227,235,239,242,229,225,110,128,49,118,242,227,236,229,235,239,242,229,225,110,128,50,101,107,2,151,3,151,17,233,249,229,239,235,235,239,242,229,225,110,128,49,114,239,242,229,225,110,128,49,66,240,225,242,229,238,235,239,242,229,225,110,128,50,5,243,233,239,115,2,151,48,151,76,107,2,151,54,151,68,233,249,229,239,235,235,239,242,229,225,110,128,49,116,239,242,229,225,110,128,49,68,244,233,235,229,245,244,235,239,242,229,225,110,128,49,117,116,2,151,97,151,112,232,233,229,245,244,232,235,239,242,229,225,110,128,49,119,233,235,229,245,244,235,239,242,229],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+40960);allocate([225,110,128,49,115,232,233,242,225,231,225,238,97,128,48,116,235,225,244,225,235,225,238,97,128,48,212,243,249,237,226,239,236,231,242,229,229,107,128,3,214,247,242,225,242,237,229,238,233,225,110,128,5,131,236,245,115,132,0,43,151,189,151,200,151,209,151,242,226,229,236,239,247,227,237,98,128,3,31,227,233,242,227,236,101,128,34,149,109,2,151,215,151,222,233,238,245,115,128,0,177,111,2,151,228,151,232,100,128,2,214,238,239,243,240,225,227,101,128,255,11,115,2,151,248,151,255,237,225,236,108,128,254,98,245,240,229,242,233,239,114,128,32,122,109,2,152,15,152,26,239,238,239,243,240,225,227,101,128,255,80,243,241,245,225,242,101,128,51,216,111,5,152,47,152,58,152,125,152,136,152,146,232,233,242,225,231,225,238,97,128,48,125,233,238,244,233,238,231,233,238,228,229,120,4,152,78,152,90,152,102,152,115,228,239,247,238,247,232,233,244,101,128,38,31,236,229,230,244,247,232,233,244,101,128,38,28,242,233,231,232,244,247,232,233,244,101,128,38,30,245,240,247,232,233,244,101,128,38,29,235,225,244,225,235,225,238,97,128,48,221,240,236,225,244,232,225,105,128,14,27,243,244,225,236,237,225,242,107,129,48,18,152,159,230,225,227,101,128,48,32,240,225,242,229,110,128,36,171,114,3,152,182,152,208,152,233,101,2,152,188,152,196,227,229,228,229,115,128,34,122,243,227,242,233,240,244,233,239,110,128,33,30,233,237,101,2,152,216,152,222,237,239,100,128,2,185,242,229,246,229,242,243,229,100,128,32,53,111,4,152,243,152,250,153,4,153,17,228,245,227,116,128,34,15,234,229,227,244,233,246,101,128,35,5,236,239,238,231,229,228,235,225,238,97,128,48,252,112,2,153,23,153,60,101,2,153,29,153,36,236,236,239,114,128,35,24,242,243,117,2,153,44,153,51,226,243,229,116,128,34,130,240,229,242,243,229,116,128,34,131,239,242,244,233,239,110,129,34,55,153,71,225,108,128,34,29,115,2,153,82,153,125,105,130,3,200,153,90,153,101,227,249,242,233,236,236,233,99,128,4,113,236,233,240,238,229,245,237,225,244,225,227,249,242,233,236,236,233,227,227,237,98,128,4,134,243,241,245,225,242,101,128,51,176,117,2,153,140,153,151,232,233,242,225,231,225,238,97,128,48,119,235,225,244,225,235,225,238,97,128,48,215,246,243,241,245,225,242,101,128,51,180,247,243,241,245,225,242,101,128,51,186,113,136,0,113,153,202,154,251,155,6,155,15,155,22,155,34,155,72,155,80,97,4,153,212,153,235,154,43,154,234,100,2,153,218,153,224,229,246,97,128,9,88,237,225,232,229,226,242,229,119,128,5,168,102,4,153,245,153,254,154,12,154,28,225,242,225,226,233,99,128,6,66,230,233,238,225,236,225,242,225,226,233,99,128,254,214,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,215,237,229,228,233,225,236,225,242,225,226,233,99,128,254,216,237,225,244,115,136,5,184,154,66,154,86,154,100,154,105,154,110,154,119,154,134,154,221,49,3,154,74,154,78,154,82,48,128,5,184,97,128,5,184,99,128,5,184,50,2,154,92,154,96,55,128,5,184,57,128,5,184,179,51,128,5,184,228,101,128,5,184,232,229,226,242,229,119,128,5,184,238,225,242,242,239,247,232,229,226,242,229,119,128,5,184,113,2,154,140,154,206,225,244,225,110,4,154,153,154,162,154,177,154,193,232,229,226,242,229,119,128,5,184,238,225,242,242,239,247,232,229,226,242,229,119,128,5,184,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,184,247,233,228,229,232,229,226,242,229,119,128,5,184,245,225,242,244,229,242,232,229,226,242,229,119,128,5,184,247,233,228,229,232,229,226,242,229,119,128,5,184,242,238,229,249,240,225,242,225,232,229,226,242,229,119,128,5,159,226,239,240,239,237,239,230,111,128,49,17,227,233,242,227,236,101,128,36,224,232,239,239,107,128,2,160,237,239,238,239,243,240,225,227,101,128,255,81,239,102,130,5,231,155,43,155,63,228,225,231,229,243,104,129,251,71,155,54,232,229,226,242,229,119,128,251,71,232,229,226,242,229,119,128,5,231,240,225,242,229,110,128,36,172,117,4,155,90,155,102,155,191,156,22,225,242,244,229,242,238,239,244,101,128,38,105,226,245,244,115,135,5,187,155,123,155,128,155,133,155,138,155,147,155,162,155,178,177,56,128,5,187,178,53,128,5,187,179,49,128,5,187,232,229,226,242,229,119,128,5,187,238,225,242,242,239,247,232,229,226,242,229,119,128,5,187,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,187,247,233,228,229,232,229,226,242,229,119,128,5,187,229,243,244,233,239,110,133,0,63,155,210,155,233,155,250,156,2,156,14,225,114,2,155,217,155,224,225,226,233,99,128,6,31,237,229,238,233,225,110,128,5,94,228,239,247,110,129,0,191,155,242,243,237,225,236,108,128,247,191,231,242,229,229,107,128,3,126,237,239,238,239,243,240,225,227,101,128,255,31,243,237,225,236,108,128,247,63,239,244,101,4,156,34,156,105,156,125,156,154,228,226,108,133,0,34,156,50,156,57,156,64,156,76,156,97,226,225,243,101,128,32,30,236,229,230,116,128,32,28,237,239,238,239,243,240,225,227,101,128,255,2,240,242,233,237,101,129,48,30,156,86,242,229,246,229,242,243,229,100,128,48,29,242,233,231,232,116,128,32,29,236,229,230,116,129,32,24,156,114,242,229,246,229,242,243,229,100,128,32,27,114,2,156,131,156,141,229,246,229,242,243,229,100,128,32,27,233,231,232,116,129,32,25,156,150,110,128,1,73,243,233,238,231,108,2,156,164,156,171,226,225,243,101,128,32,26,101,129,0,39,156,177,237,239,238,239,243,240,225,227,101,128,255,7,114,145,0,114,156,227,157,231,157,242,158,33,158,84,159,101,159,125,159,220,161,254,162,35,162,47,162,101,162,109,163,15,163,26,163,61,163,161,97,11,156,251,157,6,157,16,157,23,157,88,157,104,157,129,157,140,157,165,157,188,157,225,225,242,237,229,238,233,225,110,128,5,124,226,229,238,231,225,236,105,128,9,176,227,245,244,101,128,1,85,100,4,157,33,157,39,157,53,157,79,229,246,97,128,9,48,233,227,225,108,129,34,26,157,48,229,120,128,248,229,239,246,229,242,243,243,241,245,225,242,101,129,51,174,157,69,228,243,241,245,225,242,101,128,51,175,243,241,245,225,242,101,128,51,173,230,101,129,5,191,157,95,232,229,226,242,229,119,128,5,191,231,117,2,157,111,157,120,234,225,242,225,244,105,128,10,176,242,237,245,235,232,105,128,10,48,232,233,242,225,231,225,238,97,128,48,137,235,225,244,225,235,225,238,97,129,48,233,157,153,232,225,236,230,247,233,228,244,104,128,255,151,236,239,247,229,242,228,233,225,231,239,238,225,236,226,229,238,231,225,236,105,128,9,241,109,2,157,194,157,217,233,228,228,236,229,228,233,225,231,239,238,225,236,226,229,238,231,225,236,105,128,9,240,243,232,239,242,110,128,2,100,244,233,111,128,34,54,226,239,240,239,237,239,230,111,128,49,22,99,4,157,252,158,3,158,12,158,20,225,242,239,110,128,1,89,229,228,233,236,236,97,128,1,87,233,242,227,236,101,128,36,225,239,237,237,225,225,227,227,229,238,116,128,1,87,100,2,158,39,158,49,226,236,231,242,225,246,101,128,2,17,239,116,2,158,56,158,65,225,227,227,229,238,116,128,30,89,226,229,236,239,119,129,30,91,158,75,237,225,227,242,239,110,128,30,93,101,6,158,98,158,143,158,178,158,233,159,2,159,35,102,2,158,104,158,117,229,242,229,238,227,229,237,225,242,107,128,32,59,236,229,248,243,117,2,158,127,158,134,226,243,229,116,128,34,134,240,229,242,243,229,116,128,34,135,231,233,243,244,229,114,2,158,154,158,159,229,100,128,0,174,115,2,158,165,158,171,225,238,115,128,248,232,229,242,233,102,128,246,218,104,3,158,186,158,209,158,223,225,114,2,158,193,158,200,225,226,233,99,128,6,49,237,229,238,233,225,110,128,5,128,230,233,238,225,236,225,242,225,226,233,99,128,254,174,233,242,225,231,225,238,97,128,48,140,235,225,244,225,235,225,238,97,129,48,236,158,246,232,225,236,230,247,233,228,244,104,128,255,154,243,104,130,5,232,159,11,159,26,228,225,231,229,243,232,232,229,226,242,229,119,128,251,72,232,229,226,242,229,119,128,5,232,118,3,159,43,159,56,159,88,229,242,243,229,228,244,233,236,228,101,128,34,61,233,97,2,159,63,159,72,232,229,226,242,229,119,128,5,151,237,245,231,242,225,243,232,232,229,226,242,229,119,128,5,151,236,239,231,233,227,225,236,238,239,116,128,35,16,230,233,243,232,232,239,239,107,129,2,126,159,114,242,229,246,229,242,243,229,100,128,2,127,104,2,159,131,159,154,97,2,159,137,159,147,226,229,238,231,225,236,105,128,9,221,228,229,246,97,128,9,93,111,131,3,193,159,164,159,193,159,207,239,107,129,2,125,159,171,244,245,242,238,229,100,129,2,123,159,182,243,245,240,229,242,233,239,114,128,2,181,243,249,237,226,239,236,231,242,229,229,107,128,3,241,244,233,227,232,239,239,235,237,239,100,128,2,222,105,6,159,234,161,22,161,68,161,79,161,104,161,240,229,245,108,9,160,0,160,35,160,50,160,64,160,110,160,124,160,210,160,223,161,2,97,2,160,6,160,21,227,233,242,227,236,229,235,239,242,229,225,110,128,50,113,240,225,242,229,238,235,239,242,229,225,110,128,50,17,227,233,242,227,236,229,235,239,242,229,225,110,128,50,99,232,233,229,245,232,235,239,242,229,225,110,128,49,64,107,2,160,70,160,102,233,249,229,239,107,2,160,80,160,89,235,239,242,229,225,110,128,49,58,243,233,239,243,235,239,242,229,225,110,128,49,105,239,242,229,225,110,128,49,57,237,233,229,245,237,235,239,242,229,225,110,128,49,59,112,3,160,132,160,164,160,179,97,2,160,138,160,152,238,243,233,239,243,235,239,242,229,225,110,128,49,108,242,229,238,235,239,242,229,225,110,128,50,3,232,233,229,245,240,232,235,239,242,229,225,110,128,49,63,233,229,245,112,2,160,188,160,197,235,239,242,229,225,110,128,49,60,243,233,239,243,235,239,242,229,225,110,128,49,107,243,233,239,243,235,239,242,229,225,110,128,49,61,116,2,160,229,160,244,232,233,229,245,244,232,235,239,242,229,225,110,128,49,62,233,235,229,245,244,235,239,242,229,225,110,128,49,106,249,229,239,242,233,238,232,233,229,245,232,235,239,242,229,225,110,128,49,109,231,232,116,2,161,30,161,38,225,238,231,236,101,128,34,31,116,2,161,44,161,58,225,227,235,226,229,236,239,247,227,237,98,128,3,25,242,233,225,238,231,236,101,128,34,191,232,233,242,225,231,225,238,97,128,48,138,235,225,244,225,235,225,238,97,129,48,234,161,92,232,225,236,230,247,233,228,244,104,128,255,152,110,2,161,110,161,226,103,131,2,218,161,120,161,131,161,137,226,229,236,239,247,227,237,98,128,3,37,227,237,98,128,3,10,232,225,236,102,2,161,146,161,192,236,229,230,116,131,2,191,161,159,161,170,161,181,225,242,237,229,238,233,225,110,128,5,89,226,229,236,239,247,227,237,98,128,3,28,227,229,238,244,229,242,229,100,128,2,211,242,233,231,232,116,130,2,190,161,204,161,215,226,229,236,239,247,227,237,98,128,3,57,227,229,238,244,229,242,229,100,128,2,210,246,229,242,244,229,228,226,242,229,246,101,128,2,19,244,244,239,242,245,243,241,245,225,242,101,128,51,81,108,2,162,4,162,15,233,238,229,226,229,236,239,119,128,30,95,239,238,231,236,229,103,129,2,124,162,26,244,245,242,238,229,100,128,2,122,237,239,238,239,243,240,225,227,101,128,255,82,111,3,162,55,162,66,162,91,232,233,242,225,231,225,238,97,128,48,141,235,225,244,225,235,225,238,97,129,48,237,162,79,232,225,236,230,247,233,228,244,104,128,255,155,242,245,225,244,232,225,105,128,14,35,240,225,242,229,110,128,36,173,114,3,162,117,162,153,162,183,97,3,162,125,162,135,162,142,226,229,238,231,225,236,105,128,9,220,228,229,246,97,128,9,49,231,245,242,237,245,235,232,105,128,10,92,229,104,2,162,160,162,169,225,242,225,226,233,99,128,6,145,230,233,238,225,236,225,242,225,226,233,99,128,251,141,246,239,227,225,236,233,99,4,162,199,162,209,162,216,162,227,226,229,238,231,225,236,105,128,9,224,228,229,246,97,128,9,96,231,245,234,225,242,225,244,105,128,10,224,246,239,247,229,236,243,233,231,110,3,162,243,162,253,163,4,226,229,238,231,225,236,105,128,9,196,228,229,246,97,128,9,68,231,245,234,225,242,225,244,105,128,10,196,243,245,240,229,242,233,239,114,128,246,241,116,2,163,32,163,40,226,236,239,227,107,128,37,144,245,242,238,229,100,129,2,121,163,50,243,245,240,229,242,233,239,114,128,2,180,117,4,163,71,163,82,163,107,163,154,232,233,242,225,231,225,238,97,128,48,139,235,225,244,225,235,225,238,97,129,48,235,163,95,232,225,236,230,247,233,228,244,104,128,255,153,112,2,163,113,163,148,229,101,2,163,120,163,134,237,225,242,235,226,229,238,231,225,236,105,128,9,242,243,233,231,238,226,229,238,231,225,236,105,128,9,243,233,225,104,128,246,221,244,232,225,105,128,14,36,246,239,227,225,236,233,99,4,163,177,163,187,163,194,163,205,226,229,238,231,225,236,105,128,9,139,228,229,246,97,128,9,11,231,245,234,225,242,225,244,105,128,10,139,246,239,247,229,236,243,233,231,110,3,163,221,163,231,163,238,226,229,238,231,225,236,105,128,9,195,228,229,246,97,128,9,67,231,245,234,225,242,225,244,105,128,10,195,115,147,0,115,164,35,166,5,166,16,166,142,166,181,169,123,169,134,172,21,174,159,174,205,174,232,175,167,175,234,177,11,177,21,177,207,178,24,178,194,178,204,97,9,164,55,164,65,164,86,164,158,164,183,164,194,164,219,164,251,165,35,226,229,238,231,225,236,105,128,9,184,227,245,244,101,129,1,91,164,74,228,239,244,225,227,227,229,238,116,128,30,101,100,5,164,98,164,107,164,113,164,127,164,143,225,242,225,226,233,99,128,6,53,229,246,97,128,9,56,230,233,238,225,236,225,242,225,226,233,99,128,254,186,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,187,237,229,228,233,225,236,225,242,225,226,233,99,128,254,188,231,117,2,164,165,164,174,234,225,242,225,244,105,128,10,184,242,237,245,235,232,105,128,10,56,232,233,242,225,231,225,238,97,128,48,85,235,225,244,225,235,225,238,97,129,48,181,164,207,232,225,236,230,247,233,228,244,104,128,255,123,236,236,225,236,236,225,232,239,245,225,236,225,249,232,229,247,225,243,225,236,236,225,237,225,242,225,226,233,99,128,253,250,237,229,235,104,130,5,225,165,6,165,26,228,225,231,229,243,104,129,251,65,165,17,232,229,226,242,229,119,128,251,65,232,229,226,242,229,119,128,5,225,242,97,5,165,48,165,122,165,130,165,180,165,188,97,5,165,60,165,68,165,76,165,107,165,115,225,244,232,225,105,128,14,50,229,244,232,225,105,128,14,65,233,237,225,233,109,2,165,86,165,97,225,236,225,233,244,232,225,105,128,14,68,245,225,238,244,232,225,105,128,14,67,237,244,232,225,105,128,14,51,244,232,225,105,128,14,48,229,244,232,225,105,128,14,64,105,3,165,138,165,162,165,173,105,2,165,144,165,155,236,229,230,244,244,232,225,105,128,248,134,244,232,225,105,128,14,53,236,229,230,244,244,232,225,105,128,248,133,244,232,225,105,128,14,52,239,244,232,225,105,128,14,66,117,3,165,196,165,246,165,253,101,3,165,204,165,228,165,239,101,2,165,210,165,221,236,229,230,244,244,232,225,105,128,248,136,244,232,225,105,128,14,55,236,229,230,244,244,232,225,105,128,248,135,244,232,225,105,128,14,54,244,232,225,105,128,14,56,245,244,232,225,105,128,14,57,226,239,240,239,237,239,230,111,128,49,25,99,5,166,28,166,49,166,58,166,107,166,129,225,242,239,110,129,1,97,166,37,228,239,244,225,227,227,229,238,116,128,30,103,229,228,233,236,236,97,128,1,95,232,247,97,131,2,89,166,70,166,81,166,100,227,249,242,233,236,236,233,99,128,4,217,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,219,232,239,239,107,128,2,90,233,242,99,2,166,115,166,120,236,101,128,36,226,245,237,230,236,229,120,128,1,93,239,237,237,225,225,227,227,229,238,116,128,2,25,228,239,116,2,166,150,166,159,225,227,227,229,238,116,128,30,97,226,229,236,239,119,129,30,99,166,169,228,239,244,225,227,227,229,238,116,128,30,105,101,9,166,201,166,217,166,252,167,61,167,164,167,191,167,216,168,41,168,68,225,231,245,236,236,226,229,236,239,247,227,237,98,128,3,60,99,2,166,223,166,245,239,238,100,129,32,51,166,231,244,239,238,229,227,232,233,238,229,243,101,128,2,202,244,233,239,110,128,0,167,229,110,4,167,7,167,16,167,30,167,46,225,242,225,226,233,99,128,6,51,230,233,238,225,236,225,242,225,226,233,99,128,254,178,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,179,237,229,228,233,225,236,225,242,225,226,233,99,128,254,180,231,239,108,135,5,182,167,81,167,95,167,100,167,109,167,124,167,140,167,151,49,2,167,87,167,91,51,128,5,182,102,128,5,182,178,99,128,5,182,232,229,226,242,229,119,128,5,182,238,225,242,242,239,247,232,229,226,242,229,119,128,5,182,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,182,244,225,232,229,226,242,229,119,128,5,146,247,233,228,229,232,229,226,242,229,119,128,5,182,104,2,167,170,167,181,225,242,237,229,238,233,225,110,128,5,125,233,242,225,231,225,238,97,128,48,91,235,225,244,225,235,225,238,97,129,48,187,167,204,232,225,236,230,247,233,228,244,104,128,255,126,237,105,2,167,223,168,10,227,239,236,239,110,131,0,59,167,237,167,246,168,2,225,242,225,226,233,99,128,6,27,237,239,238,239,243,240,225,227,101,128,255,27,243,237,225,236,108,128,254,84,246,239,233,227,229,228,237,225,242,235,235,225,238,97,129,48,156,168,29,232,225,236,230,247,233,228,244,104,128,255,159,238,116,2,168,48,168,58,233,243,241,245,225,242,101,128,51,34,239,243,241,245,225,242,101,128,51,35,246,229,110,142,0,55,168,102,168,111,168,121,168,151,168,158,168,168,168,193,168,220,168,254,169,10,169,21,169,54,169,62,169,73,225,242,225,226,233,99,128,6,103,226,229,238,231,225,236,105,128,9,237,227,233,242,227,236,101,129,36,102,168,132,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,144,228,229,246,97,128,9,109,229,233,231,232,244,232,115,128,33,94,231,117,2,168,175,168,184,234,225,242,225,244,105,128,10,237,242,237,245,235,232,105,128,10,109,232,97,2,168,200,168,211,227,235,225,242,225,226,233,99,128,6,103,238,231,250,232,239,117,128,48,39,105,2,168,226,168,244,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,38,238,230,229,242,233,239,114,128,32,135,237,239,238,239,243,240,225,227,101,128,255,23,239,236,228,243,244,249,236,101,128,247,55,112,2,169,27,169,34,225,242,229,110,128,36,122,229,114,2,169,41,169,47,233,239,100,128,36,142,243,233,225,110,128,6,247,242,239,237,225,110,128,33,118,243,245,240,229,242,233,239,114,128,32,119,116,2,169,79,169,117,229,229,110,2,169,87,169,96,227,233,242,227,236,101,128,36,112,112,2,169,102,169,109,225,242,229,110,128,36,132,229,242,233,239,100,128,36,152,232,225,105,128,14,87,230,244,232,249,240,232,229,110,128,0,173,104,7,169,150,170,124,170,135,170,149,171,94,171,107,172,15,97,6,169,164,169,175,169,185,169,196,170,83,170,108,225,242,237,229,238,233,225,110,128,5,119,226,229,238,231,225,236,105,128,9,182,227,249,242,233,236,236,233,99,128,4,72,100,2,169,202,170,42,228,97,4,169,213,169,222,169,253,170,11,225,242,225,226,233,99,128,6,81,228,225,237,237,97,2,169,232,169,241,225,242,225,226,233,99,128,252,97,244,225,238,225,242,225,226,233,99,128,252,94,230,225,244,232,225,225,242,225,226,233,99,128,252,96,235,225,243,242,97,2,170,21,170,30,225,242,225,226,233,99,128,252,98,244,225,238,225,242,225,226,233,99,128,252,95,101,132,37,146,170,54,170,61,170,69,170,78,228,225,242,107,128,37,147,236,233,231,232,116,128,37,145,237,229,228,233,245,109,128,37,146,246,97,128,9,54,231,117,2,170,90,170,99,234,225,242,225,244,105,128,10,182,242,237,245,235,232,105,128,10,54,236,243,232,229,236,229,244,232,229,226,242,229,119,128,5,147,226,239,240,239,237,239,230,111,128,49,21,227,232,225,227,249,242,233,236,236,233,99,128,4,73,101,4,170,159,170,224,170,234,170,251,229,110,4,170,170,170,179,170,193,170,209,225,242,225,226,233,99,128,6,52,230,233,238,225,236,225,242,225,226,233,99,128,254,182,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,183,237,229,228,233,225,236,225,242,225,226,233,99,128,254,184,233,227,239,240,244,233,99,128,3,227,241,229,108,129,32,170,170,242,232,229,226,242,229,119,128,32,170,246,97,134,5,176,171,12,171,27,171,41,171,50,171,65,171,81,49,2,171,18,171,23,177,53,128,5,176,53,128,5,176,50,2,171,33,171,37,50,128,5,176,101,128,5,176,232,229,226,242,229,119,128,5,176,238,225,242,242,239,247,232,229,226,242,229,119,128,5,176,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,176,247,233,228,229,232,229,226,242,229,119,128,5,176,232,225,227,249,242,233,236,236,233,99,128,4,187,105,2,171,113,171,124,237,225,227,239,240,244,233,99,128,3,237,110,131,5,233,171,134,171,217,171,226,100,2,171,140,171,206,225,231,229,243,104,130,251,73,171,152,171,161,232,229,226,242,229,119,128,251,73,115,2,171,167,171,187,232,233,238,228,239,116,129,251,44,171,178,232,229,226,242,229,119,128,251,44,233,238,228,239,116,129,251,45,171,197,232,229,226,242,229,119,128,251,45,239,244,232,229,226,242,229,119,128,5,193,232,229,226,242,229,119,128,5,233,115,2,171,232,171,252,232,233,238,228,239,116,129,251,42,171,243,232,229,226,242,229,119,128,251,42,233,238,228,239,116,129,251,43,172,6,232,229,226,242,229,119,128,251,43,239,239,107,128,2,130,105,8,172,39,172,83,172,94,172,119,172,149,172,157,172,170,173,85,231,237,97,131,3,195,172,51,172,55,172,63,49,128,3,194,230,233,238,225,108,128,3,194,236,245,238,225,244,229,243,249,237,226,239,236,231,242,229,229,107,128,3,242,232,233,242,225,231,225,238,97,128,48,87,235,225,244,225,235,225,238,97,129,48,183,172,107,232,225,236,230,247,233,228,244,104,128,255,124,236,245,113,2,172,127,172,136,232,229,226,242,229,119,128,5,189,236,229,230,244,232,229,226,242,229,119,128,5,189,237,233,236,225,114,128,34,60,238,228,239,244,232,229,226,242,229,119,128,5,194,239,115,6,172,185,172,220,172,252,173,24,173,38,173,70,97,2,172,191,172,206,227,233,242,227,236,229,235,239,242,229,225,110,128,50,116,240,225,242,229,238,235,239,242,229,225,110,128,50,20,227,105,2,172,227,172,239,229,245,227,235,239,242,229,225,110,128,49,126,242,227,236,229,235,239,242,229,225,110,128,50,102,107,2,173,2,173,16,233,249,229,239,235,235,239,242,229,225,110,128,49,122,239,242,229,225,110,128,49,69,238,233,229,245,238,235,239,242,229,225,110,128,49,123,112,2,173,44,173,57,225,242,229,238,235,239,242,229,225,110,128,50,6,233,229,245,240,235,239,242,229,225,110,128,49,125,244,233,235,229,245,244,235,239,242,229,225,110,128,49,124,120,141,0,54,173,115,173,124,173,134,173,164,173,171,173,196,173,223,174,1,174,13,174,24,174,57,174,65,174,76,225,242,225,226,233,99,128,6,102,226,229,238,231,225,236,105,128,9,236,227,233,242,227,236,101,129,36,101,173,145,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,143,228,229,246,97,128,9,108,231,117,2,173,178,173,187,234,225,242,225,244,105,128,10,236,242,237,245,235,232,105,128,10,108,232,97,2,173,203,173,214,227,235,225,242,225,226,233,99,128,6,102,238,231,250,232,239,117,128,48,38,105,2,173,229,173,247,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,37,238,230,229,242,233,239,114,128,32,134,237,239,238,239,243,240,225,227,101,128,255,22,239,236,228,243,244,249,236,101,128,247,54,112,2,174,30,174,37,225,242,229,110,128,36,121,229,114,2,174,44,174,50,233,239,100,128,36,141,243,233,225,110,128,6,246,242,239,237,225,110,128,33,117,243,245,240,229,242,233,239,114,128,32,118,116,2,174,82,174,153,229,229,110,2,174,90,174,132,99,2,174,96,174,104,233,242,227,236,101,128,36,111,245,242,242,229,238,227,249,228,229,238,239,237,233,238,225,244,239,242,226,229,238,231,225,236,105,128,9,249,112,2,174,138,174,145,225,242,229,110,128,36,131,229,242,233,239,100,128,36,151,232,225,105,128,14,86,108,2,174,165,174,185,225,243,104,129,0,47,174,173,237,239,238,239,243,240,225,227,101,128,255,15,239,238,103,129,1,127,174,193,228,239,244,225,227,227,229,238,116,128,30,155,109,2,174,211,174,221,233,236,229,230,225,227,101,128,38,58,239,238,239,243,240,225,227,101,128,255,83,111,6,174,246,175,40,175,51,175,76,175,121,175,132,102,2,174,252,175,10,240,225,243,245,241,232,229,226,242,229,119,128,5,195,116,2,175,16,175,25,232,249,240,232,229,110,128,0,173,243,233,231,238,227,249,242,233,236,236,233,99,128,4,76,232,233,242,225,231,225,238,97,128,48,93,235,225,244,225,235,225,238,97,129,48,189,175,64,232,225,236,230,247,233,228,244,104,128,255,127,236,233,228,245,115,2,175,86,175,103,236,239,238,231,239,246,229,242,236,225,249,227,237,98,128,3,56,243,232,239,242,244,239,246,229,242,236,225,249,227,237,98,128,3,55,242,245,243,233,244,232,225,105,128,14,41,115,3,175,140,175,150,175,158,225,236,225,244,232,225,105,128,14,40,239,244,232,225,105,128,14,11,245,225,244,232,225,105,128,14,42,240,97,3,175,176,175,196,175,228,227,101,129,0,32,175,183,232,225,227,235,225,242,225,226,233,99,128,0,32,228,101,129,38,96,175,203,243,245,233,116,2,175,212,175,220,226,236,225,227,107,128,38,96,247,232,233,244,101,128,38,100,242,229,110,128,36,174,241,245,225,242,101,11,176,6,176,17,176,31,176,56,176,73,176,99,176,114,176,147,176,174,176,230,176,245,226,229,236,239,247,227,237,98,128,3,59,99,2,176,23,176,27,99,128,51,196,109,128,51,157,228,233,225,231,239,238,225,236,227,242,239,243,243,232,225,244,227,232,230,233,236,108,128,37,169,232,239,242,233,250,239,238,244,225,236,230,233,236,108,128,37,164,107,2,176,79,176,83,103,128,51,143,109,129,51,158,176,89,227,225,240,233,244,225,108,128,51,206,108,2,176,105,176,109,110,128,51,209,239,103,128,51,210,109,4,176,124,176,128,176,133,176,137,103,128,51,142,233,108,128,51,213,109,128,51,156,243,241,245,225,242,229,100,128,51,161,239,242,244,232,239,231,239,238,225,236,227,242,239,243,243,232,225,244,227,232,230,233,236,108,128,37,166,245,240,240,229,114,2,176,184,176,207,236,229,230,244,244,239,236,239,247,229,242,242,233,231,232,244,230,233,236,108,128,37,167,242,233,231,232,244,244,239,236,239,247,229,242,236,229,230,244,230,233,236,108,128,37,168,246,229,242,244,233,227,225,236,230,233,236,108,128,37,165,247,232,233,244,229,247,233,244,232,243,237,225,236,236,226,236,225,227,107,128,37,163,242,243,241,245,225,242,101,128,51,219,115,2,177,27,177,197,97,4,177,37,177,47,177,54,177,65,226,229,238,231,225,236,105,128,9,183,228,229,246,97,128,9,55,231,245,234,225,242,225,244,105,128,10,183,238,103,8,177,84,177,98,177,112,177,126,177,141,177,155,177,169,177,182,227,233,229,245,227,235,239,242,229,225,110,128,49,73,232,233,229,245,232,235,239,242,229,225,110,128,49,133,233,229,245,238,231,235,239,242,229,225,110,128,49,128,235,233,249,229,239,235,235,239,242,229,225,110,128,49,50,238,233,229,245,238,235,239,242,229,225,110,128,49,101,240,233,229,245,240,235,239,242,229,225,110,128,49,67,243,233,239,243,235,239,242,229,225,110,128,49,70,244,233,235,229,245,244,235,239,242,229,225,110,128,49,56,245,240,229,242,233,239,114,128,246,242,116,2,177,213,177,236,229,242,236,233,238,103,129,0,163,177,224,237,239,238,239,243,240,225,227,101,128,255,225,242,239,235,101,2,177,245,178,6,236,239,238,231,239,246,229,242,236,225,249,227,237,98,128,3,54,243,232,239,242,244,239,246,229,242,236,225,249,227,237,98,128,3,53,117,7,178,40,178,72,178,94,178,105,178,146,178,156,178,160,226,243,229,116,130,34,130,178,51,178,62,238,239,244,229,241,245,225,108,128,34,138,239,242,229,241,245,225,108,128,34,134,99,2,178,78,178,86,227,229,229,228,115,128,34,123,232,244,232,225,116,128,34,11,232,233,242,225,231,225,238,97,128,48,89,107,2,178,111,178,135,225,244,225,235,225,238,97,129,48,185,178,123,232,225,236,230,247,233,228,244,104,128,255,125,245,238,225,242,225,226,233,99,128,6,82,237,237,225,244,233,239,110,128,34,17,110,128,38,60,240,229,242,243,229,116,130,34,131,178,173,178,184,238,239,244,229,241,245,225,108,128,34,139,239,242,229,241,245,225,108,128,34,135,246,243,241,245,225,242,101,128,51,220,249,239,245,247,225,229,242,225,243,241,245,225,242,101,128,51,124,116,144,0,116,179,1,180,10,180,31,180,174,180,214,183,6,186,144,187,219,187,231,187,243,189,20,189,45,189,131,190,55,190,239,191,73,97,10,179,23,179,33,179,54,179,61,179,86,179,164,179,181,179,206,179,220,179,224,226,229,238,231,225,236,105,128,9,164,227,107,2,179,40,179,47,228,239,247,110,128,34,164,236,229,230,116,128,34,163,228,229,246,97,128,9,36,231,117,2,179,68,179,77,234,225,242,225,244,105,128,10,164,242,237,245,235,232,105,128,10,36,104,4,179,96,179,105,179,119,179,149,225,242,225,226,233,99,128,6,55,230,233,238,225,236,225,242,225,226,233,99,128,254,194,105,2,179,125,179,140,238,233,244,233,225,236,225,242,225,226,233,99,128,254,195,242,225,231,225,238,97,128,48,95,237,229,228,233,225,236,225,242,225,226,233,99,128,254,196,233,243,249,239,245,229,242,225,243,241,245,225,242,101,128,51,125,235,225,244,225,235,225,238,97,129,48,191,179,194,232,225,236,230,247,233,228,244,104,128,255,128,244,247,229,229,236,225,242,225,226,233,99,128,6,64,117,128,3,196,118,130,5,234,179,232,180,1,228,225,231,229,115,129,251,74,179,242,104,129,251,74,179,248,232,229,226,242,229,119,128,251,74,232,229,226,242,229,119,128,5,234,98,2,180,16,180,21,225,114,128,1,103,239,240,239,237,239,230,111,128,49,10,99,6,180,45,180,52,180,59,180,68,180,134,180,161,225,242,239,110,128,1,101,227,245,242,108,128,2,168,229,228,233,236,236,97,128,1,99,232,229,104,4,180,80,180,89,180,103,180,119,225,242,225,226,233,99,128,6,134,230,233,238,225,236,225,242,225,226,233,99,128,251,123,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,124,237,229,228,233,225,236,225,242,225,226,233,99,128,251,125,233,242,99,2,180,142,180,147,236,101,128,36,227,245,237,230,236,229,248,226,229,236,239,119,128,30,113,239,237,237,225,225,227,227,229,238,116,128,1,99,100,2,180,180,180,190,233,229,242,229,243,233,115,128,30,151,239,116,2,180,197,180,206,225,227,227,229,238,116,128,30,107,226,229,236,239,119,128,30,109,101,9,180,234,180,245,181,9,182,19,182,44,182,108,182,175,182,180,182,232,227,249,242,233,236,236,233,99,128,4,66,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,173,104,7,181,25,181,34,181,48,181,88,181,118,181,159,182,1,225,242,225,226,233,99,128,6,42,230,233,238,225,236,225,242,225,226,233,99,128,254,150,232,225,232,105,2,181,57,181,72,238,233,244,233,225,236,225,242,225,226,233,99,128,252,162,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,12,105,2,181,94,181,109,238,233,244,233,225,236,225,242,225,226,233,99,128,254,151,242,225,231,225,238,97,128,48,102,234,229,229,237,105,2,181,128,181,143,238,233,244,233,225,236,225,242,225,226,233,99,128,252,161,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,11,109,2,181,165,181,199,225,242,226,245,244,97,2,181,176,181,185,225,242,225,226,233,99,128,6,41,230,233,238,225,236,225,242,225,226,233,99,128,254,148,101,2,181,205,181,218,228,233,225,236,225,242,225,226,233,99,128,254,152,229,237,105,2,181,226,181,241,238,233,244,233,225,236,225,242,225,226,233,99,128,252,164,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,14,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,115,235,225,244,225,235,225,238,97,129,48,198,182,32,232,225,236,230,247,233,228,244,104,128,255,131,108,2,182,50,182,69,229,240,232,239,238,101,129,33,33,182,61,226,236,225,227,107,128,38,14,233,243,232,97,2,182,78,182,93,231,229,228,239,236,225,232,229,226,242,229,119,128,5,160,241,229,244,225,238,225,232,229,226,242,229,119,128,5,169,110,4,182,118,182,127,182,146,182,167,227,233,242,227,236,101,128,36,105,233,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,41,112,2,182,152,182,159,225,242,229,110,128,36,125,229,242,233,239,100,128,36,145,242,239,237,225,110,128,33,121,243,104,128,2,167,116,131,5,216,182,190,182,210,182,219,228,225,231,229,243,104,129,251,56,182,201,232,229,226,242,229,119,128,251,56,232,229,226,242,229,119,128,5,216,243,229,227,249,242,233,236,236,233,99,128,4,181,246,233,114,2,182,240,182,249,232,229,226,242,229,119,128,5,155,236,229,230,244,232,229,226,242,229,119,128,5,155,104,6,183,20,183,172,184,38,184,170,185,77,186,134,97,5,183,32,183,42,183,49,183,74,183,103,226,229,238,231,225,236,105,128,9,165,228,229,246,97,128,9,37,231,117,2,183,56,183,65,234,225,242,225,244,105,128,10,165,242,237,245,235,232,105,128,10,37,108,2,183,80,183,89,225,242,225,226,233,99,128,6,48,230,233,238,225,236,225,242,225,226,233,99,128,254,172,238,244,232,225,235,232,225,116,3,183,118,183,149,183,156,236,239,119,2,183,126,183,137,236,229,230,244,244,232,225,105,128,248,152,242,233,231,232,244,244,232,225,105,128,248,151,244,232,225,105,128,14,76,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,150,101,3,183,180,183,244,184,11,104,4,183,190,183,199,183,213,183,229,225,242,225,226,233,99,128,6,43,230,233,238,225,236,225,242,225,226,233,99,128,254,154,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,155,237,229,228,233,225,236,225,242,225,226,233,99,128,254,156,242,101,2,183,251,184,4,229,248,233,243,244,115,128,34,3,230,239,242,101,128,34,52,244,97,130,3,184,184,20,184,24,49,128,3,209,243,249,237,226,239,236,231,242,229,229,107,128,3,209,105,2,184,44,184,130,229,245,244,104,4,184,57,184,92,184,107,184,116,97,2,184,63,184,78,227,233,242,227,236,229,235,239,242,229,225,110,128,50,121,240,225,242,229,238,235,239,242,229,225,110,128,50,25,227,233,242,227,236,229,235,239,242,229,225,110,128,50,107,235,239,242,229,225,110,128,49,76,240,225,242,229,238,235,239,242,229,225,110,128,50,11,242,244,229,229,110,2,184,140,184,149,227,233,242,227,236,101,128,36,108,112,2,184,155,184,162,225,242,229,110,128,36,128,229,242,233,239,100,128,36,148,111,6,184,184,184,201,184,206,184,220,184,225,185,22,238,225,238,231,237,239,238,244,232,239,244,232,225,105,128,14,17,239,107,128,1,173,240,232,245,244,232,225,239,244,232,225,105,128,14,18,242,110,128,0,254,244,104,3,184,234,185,2,185,12,97,2,184,240,184,250,232,225,238,244,232,225,105,128,14,23,238,244,232,225,105,128,14,16,239,238,231,244,232,225,105,128,14,24,245,238,231,244,232,225,105,128,14,22,245,243,225,238,100,2,185,32,185,43,227,249,242,233,236,236,233,99,128,4,130,243,243,229,240,225,242,225,244,239,114,2,185,58,185,67,225,242,225,226,233,99,128,6,108,240,229,242,243,233,225,110,128,6,108,242,229,101,144,0,51,185,115,185,124,185,134,185,164,185,171,185,181,185,206,185,233,186,11,186,23,186,42,186,53,186,86,186,108,186,116,186,127,225,242,225,226,233,99,128,6,99,226,229,238,231,225,236,105,128,9,233,227,233,242,227,236,101,129,36,98,185,145,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,140,228,229,246,97,128,9,105,229,233,231,232,244,232,115,128,33,92,231,117,2,185,188,185,197,234,225,242,225,244,105,128,10,233,242,237,245,235,232,105,128,10,105,232,97,2,185,213,185,224,227,235,225,242,225,226,233,99,128,6,99,238,231,250,232,239,117,128,48,35,105,2,185,239,186,1,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,34,238,230,229,242,233,239,114,128,32,131,237,239,238,239,243,240,225,227,101,128,255,19,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,246,239,236,228,243,244,249,236,101,128,247,51,112,2,186,59,186,66,225,242,229,110,128,36,118,229,114,2,186,73,186,79,233,239,100,128,36,138,243,233,225,110,128,6,243,241,245,225,242,244,229,242,115,129,0,190,186,99,229,237,228,225,243,104,128,246,222,242,239,237,225,110,128,33,114,243,245,240,229,242,233,239,114,128,0,179,244,232,225,105,128,14,83,250,243,241,245,225,242,101,128,51,148,105,7,186,160,186,171,187,30,187,128,187,140,187,189,187,206,232,233,242,225,231,225,238,97,128,48,97,107,2,186,177,186,201,225,244,225,235,225,238,97,129,48,193,186,189,232,225,236,230,247,233,228,244,104,128,255,129,229,245,116,4,186,213,186,248,187,7,187,16,97,2,186,219,186,234,227,233,242,227,236,229,235,239,242,229,225,110,128,50,112,240,225,242,229,238,235,239,242,229,225,110,128,50,16,227,233,242,227,236,229,235,239,242,229,225,110,128,50,98,235,239,242,229,225,110,128,49,55,240,225,242,229,238,235,239,242,229,225,110,128,50,2,236,228,101,133,2,220,187,46,187,57,187,74,187,86,187,114,226,229,236,239,247,227,237,98,128,3,48,99,2,187,63,187,68,237,98,128,3,3,239,237,98,128,3,3,228,239,245,226,236,229,227,237,98,128,3,96,111,2,187,92,187,102,240,229,242,225,244,239,114,128,34,60,246,229,242,236,225,249,227,237,98,128,3,52,246,229,242,244,233,227,225,236,227,237,98,128,3,62,237,229,243,227,233,242,227,236,101,128,34,151,112,2,187,146,187,176,229,232,97,2,187,154,187,163,232,229,226,242,229,119,128,5,150,236,229,230,244,232,229,226,242,229,119,128,5,150,240,233,231,245,242,237,245,235,232,105,128,10,112,244,236,239,227,249,242,233,236,236,233,227,227,237,98,128,4,131,247,238,225,242,237,229,238,233,225,110,128,5,127,236,233,238,229,226,229,236,239,119,128,30,111,237,239,238,239,243,240,225,227,101,128,255,84,111,7,188,3,188,14,188,25,188,50,188,170,188,182,189,10,225,242,237,229,238,233,225,110,128,5,105,232,233,242,225,231,225,238,97,128,48,104,235,225,244,225,235,225,238,97,129,48,200,188,38,232,225,236,230,247,233,228,244,104,128,255,132,110,3,188,58,188,156,188,161,101,4,188,68,188,137,188,144,188,150,226,225,114,4,188,80,188,109,188,119,188,128,229,248,244,242,97,2,188,90,188,100,232,233,231,232,237,239,100,128,2,229,236,239,247,237,239,100,128,2,233,232,233,231,232,237,239,100,128,2,230,236,239,247,237,239,100,128,2,232,237,233,228,237,239,100,128,2,231,230,233,246,101,128,1,189,243,233,120,128,1,133,244,247,111,128,1,168,239,115,128,3,132,243,241,245,225,242,101,128,51,39,240,225,244,225,235,244,232,225,105,128,14,15,242,244,239,233,243,229,243,232,229,236,236,226,242,225,227,235,229,116,2,188,205,188,235,236,229,230,116,130,48,20,188,216,188,224,243,237,225,236,108,128,254,93,246,229,242,244,233,227,225,108,128,254,57,242,233,231,232,116,130,48,21,188,247,188,255,243,237,225,236,108,128,254,94,246,229,242,244,233,227,225,108,128,254,58,244,225,239,244,232,225,105,128,14,21,240,97,2,189,27,189,39,236,225,244,225,236,232,239,239,107,128,1,171,242,229,110,128,36,175,114,3,189,53,189,84,189,99,225,228,229,237,225,242,107,129,33,34,189,65,115,2,189,71,189,77,225,238,115,128,248,234,229,242,233,102,128,246,219,229,244,242,239,230,236,229,248,232,239,239,107,128,2,136,233,225,103,4,189,111,189,116,189,121,189,126,228,110,128,37,188,236,102,128,37,196,242,116,128,37,186,245,112,128,37,178,115,132,2,166,189,143,189,182,190,32,190,45,225,228,105,130,5,230,189,153,189,173,228,225,231,229,243,104,129,251,70,189,164,232,229,226,242,229,119,128,251,70,232,229,226,242,229,119,128,5,230,101,2,189,188,189,199,227,249,242,233,236,236,233,99,128,4,70,242,101,134,5,181,189,216,189,230,189,235,189,244,190,3,190,19,49,2,189,222,189,226,50,128,5,181,101,128,5,181,178,98,128,5,181,232,229,226,242,229,119,128,5,181,238,225,242,242,239,247,232,229,226,242,229,119,128,5,181,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,181,247,233,228,229,232,229,226,242,229,119,128,5,181,232,229,227,249,242,233,236,236,233,99,128,4,91,245,240,229,242,233,239,114,128,246,243,116,4,190,65,190,115,190,180,190,231,97,3,190,73,190,83,190,90,226,229,238,231,225,236,105,128,9,159,228,229,246,97,128,9,31,231,117,2,190,97,190,106,234,225,242,225,244,105,128,10,159,242,237,245,235,232,105,128,10,31,229,104,4,190,126,190,135,190,149,190,165,225,242,225,226,233,99,128,6,121,230,233,238,225,236,225,242,225,226,233,99,128,251,103,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,104,237,229,228,233,225,236,225,242,225,226,233,99,128,251,105,232,97,3,190,189,190,199,190,206,226,229,238,231,225,236,105,128,9,160,228,229,246,97,128,9,32,231,117,2,190,213,190,222,234,225,242,225,244,105,128,10,160,242,237,245,235,232,105,128,10,32,245,242,238,229,100,128,2,135,117,3,190,247,191,2,191,27,232,233,242,225,231,225,238,97,128,48,100,235,225,244,225,235,225,238,97,129,48,196,191,15,232,225,236,230,247,233,228,244,104,128,255,130,243,237,225,236,108,2,191,37,191,48,232,233,242,225,231,225,238,97,128,48,99,235,225,244,225,235,225,238,97,129,48,195,191,61,232,225,236,230,247,233,228,244,104,128,255,111,119,2,191,79,191,184,101,2,191,85,191,133,236,246,101,3,191,95,191,104,191,125,227,233,242,227,236,101,128,36,107,112,2,191,110,191,117,225,242,229,110,128,36,127,229,242,233,239],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+51200);allocate([100,128,36,147,242,239,237,225,110,128,33,123,238,244,121,3,191,143,191,152,191,163,227,233,242,227,236,101,128,36,115,232,225,238,231,250,232,239,117,128,83,68,112,2,191,169,191,176,225,242,229,110,128,36,135,229,242,233,239,100,128,36,155,111,142,0,50,191,216,191,225,191,235,192,9,192,61,192,86,192,113,192,147,192,159,192,178,192,189,192,222,192,230,192,254,225,242,225,226,233,99,128,6,98,226,229,238,231,225,236,105,128,9,232,227,233,242,227,236,101,129,36,97,191,246,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,139,100,2,192,15,192,21,229,246,97,128,9,104,239,116,2,192,28,192,39,229,238,236,229,225,228,229,114,128,32,37,236,229,225,228,229,114,129,32,37,192,50,246,229,242,244,233,227,225,108,128,254,48,231,117,2,192,68,192,77,234,225,242,225,244,105,128,10,232,242,237,245,235,232,105,128,10,104,232,97,2,192,93,192,104,227,235,225,242,225,226,233,99,128,6,98,238,231,250,232,239,117,128,48,34,105,2,192,119,192,137,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,33,238,230,229,242,233,239,114,128,32,130,237,239,238,239,243,240,225,227,101,128,255,18,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,245,239,236,228,243,244,249,236,101,128,247,50,112,2,192,195,192,202,225,242,229,110,128,36,117,229,114,2,192,209,192,215,233,239,100,128,36,137,243,233,225,110,128,6,242,242,239,237,225,110,128,33,113,115,2,192,236,192,244,244,242,239,235,101,128,1,187,245,240,229,242,233,239,114,128,0,178,244,104,2,193,5,193,10,225,105,128,14,82,233,242,228,115,128,33,84,117,145,0,117,193,55,193,63,193,104,193,161,194,43,194,80,194,203,194,219,195,14,195,84,195,165,195,174,196,37,196,61,196,169,196,197,197,55,225,227,245,244,101,128,0,250,98,4,193,73,193,78,193,87,193,97,225,114,128,2,137,229,238,231,225,236,105,128,9,137,239,240,239,237,239,230,111,128,49,40,242,229,246,101,128,1,109,99,3,193,112,193,119,193,151,225,242,239,110,128,1,212,233,242,99,2,193,127,193,132,236,101,128,36,228,245,237,230,236,229,120,129,0,251,193,143,226,229,236,239,119,128,30,119,249,242,233,236,236,233,99,128,4,67,100,5,193,173,193,184,193,207,193,213,194,33,225,244,244,225,228,229,246,97,128,9,81,226,108,2,193,191,193,199,225,227,245,244,101,128,1,113,231,242,225,246,101,128,2,21,229,246,97,128,9,9,233,229,242,229,243,233,115,133,0,252,193,233,193,241,193,249,194,16,194,24,225,227,245,244,101,128,1,216,226,229,236,239,119,128,30,115,99,2,193,255,194,6,225,242,239,110,128,1,218,249,242,233,236,236,233,99,128,4,241,231,242,225,246,101,128,1,220,237,225,227,242,239,110,128,1,214,239,244,226,229,236,239,119,128,30,229,103,2,194,49,194,56,242,225,246,101,128,0,249,117,2,194,62,194,71,234,225,242,225,244,105,128,10,137,242,237,245,235,232,105,128,10,9,104,3,194,88,194,98,194,176,233,242,225,231,225,238,97,128,48,70,111,2,194,104,194,114,239,235,225,226,239,246,101,128,30,231,242,110,133,1,176,194,129,194,137,194,148,194,156,194,168,225,227,245,244,101,128,30,233,228,239,244,226,229,236,239,119,128,30,241,231,242,225,246,101,128,30,235,232,239,239,235,225,226,239,246,101,128,30,237,244,233,236,228,101,128,30,239,245,238,231,225,242,245,237,236,225,245,116,129,1,113,194,192,227,249,242,233,236,236,233,99,128,4,243,233,238,246,229,242,244,229,228,226,242,229,246,101,128,2,23,107,3,194,227,194,251,195,6,225,244,225,235,225,238,97,129,48,166,194,239,232,225,236,230,247,233,228,244,104,128,255,115,227,249,242,233,236,236,233,99,128,4,121,239,242,229,225,110,128,49,92,109,2,195,20,195,73,97,2,195,26,195,59,227,242,239,110,130,1,107,195,37,195,48,227,249,242,233,236,236,233,99,128,4,239,228,233,229,242,229,243,233,115,128,30,123,244,242,225,231,245,242,237,245,235,232,105,128,10,65,239,238,239,243,240,225,227,101,128,255,85,110,2,195,90,195,145,228,229,242,243,227,239,242,101,132,0,95,195,109,195,115,195,127,195,138,228,226,108,128,32,23,237,239,238,239,243,240,225,227,101,128,255,63,246,229,242,244,233,227,225,108,128,254,51,247,225,246,121,128,254,79,105,2,195,151,195,156,239,110,128,34,42,246,229,242,243,225,108,128,34,0,239,231,239,238,229,107,128,1,115,112,5,195,186,195,193,195,201,195,216,196,11,225,242,229,110,128,36,176,226,236,239,227,107,128,37,128,240,229,242,228,239,244,232,229,226,242,229,119,128,5,196,243,233,236,239,110,131,3,197,195,230,195,251,196,3,228,233,229,242,229,243,233,115,129,3,203,195,243,244,239,238,239,115,128,3,176,236,225,244,233,110,128,2,138,244,239,238,239,115,128,3,205,244,225,227,107,2,196,20,196,31,226,229,236,239,247,227,237,98,128,3,29,237,239,100,128,2,212,114,2,196,43,196,55,225,231,245,242,237,245,235,232,105,128,10,115,233,238,103,128,1,111,115,3,196,69,196,84,196,129,232,239,242,244,227,249,242,233,236,236,233,99,128,4,94,237,225,236,108,2,196,93,196,104,232,233,242,225,231,225,238,97,128,48,69,235,225,244,225,235,225,238,97,129,48,165,196,117,232,225,236,230,247,233,228,244,104,128,255,105,244,242,225,233,231,232,116,2,196,141,196,152,227,249,242,233,236,236,233,99,128,4,175,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,177,244,233,236,228,101,130,1,105,196,181,196,189,225,227,245,244,101,128,30,121,226,229,236,239,119,128,30,117,117,5,196,209,196,219,196,226,196,251,197,11,226,229,238,231,225,236,105,128,9,138,228,229,246,97,128,9,10,231,117,2,196,233,196,242,234,225,242,225,244,105,128,10,138,242,237,245,235,232,105,128,10,10,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,66,246,239,247,229,236,243,233,231,110,3,197,27,197,37,197,44,226,229,238,231,225,236,105,128,9,194,228,229,246,97,128,9,66,231,245,234,225,242,225,244,105,128,10,194,246,239,247,229,236,243,233,231,110,3,197,71,197,81,197,88,226,229,238,231,225,236,105,128,9,193,228,229,246,97,128,9,65,231,245,234,225,242,225,244,105,128,10,193,118,139,0,118,197,125,198,17,198,26,198,37,198,222,198,229,199,71,199,83,199,183,199,191,199,212,97,4,197,135,197,142,197,167,197,178,228,229,246,97,128,9,53,231,117,2,197,149,197,158,234,225,242,225,244,105,128,10,181,242,237,245,235,232,105,128,10,53,235,225,244,225,235,225,238,97,128,48,247,118,132,5,213,197,190,197,217,197,249,198,5,228,225,231,229,243,104,130,251,53,197,203,197,208,182,53,128,251,53,232,229,226,242,229,119,128,251,53,104,2,197,223,197,231,229,226,242,229,119,128,5,213,239,236,225,109,129,251,75,197,240,232,229,226,242,229,119,128,251,75,246,225,246,232,229,226,242,229,119,128,5,240,249,239,228,232,229,226,242,229,119,128,5,241,227,233,242,227,236,101,128,36,229,228,239,244,226,229,236,239,119,128,30,127,101,6,198,51,198,62,198,126,198,137,198,143,198,210,227,249,242,233,236,236,233,99,128,4,50,104,4,198,72,198,81,198,95,198,111,225,242,225,226,233,99,128,6,164,230,233,238,225,236,225,242,225,226,233,99,128,251,107,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,108,237,229,228,233,225,236,225,242,225,226,233,99,128,251,109,235,225,244,225,235,225,238,97,128,48,249,238,245,115,128,38,64,242,244,233,227,225,108,2,198,154,198,160,226,225,114,128,0,124,236,233,238,101,4,198,173,198,184,198,195,198,204,225,226,239,246,229,227,237,98,128,3,13,226,229,236,239,247,227,237,98,128,3,41,236,239,247,237,239,100,128,2,204,237,239,100,128,2,200,247,225,242,237,229,238,233,225,110,128,5,126,232,239,239,107,128,2,139,105,3,198,237,198,248,199,31,235,225,244,225,235,225,238,97,128,48,248,242,225,237,97,3,199,3,199,13,199,20,226,229,238,231,225,236,105,128,9,205,228,229,246,97,128,9,77,231,245,234,225,242,225,244,105,128,10,205,243,225,242,231,97,3,199,43,199,53,199,60,226,229,238,231,225,236,105,128,9,131,228,229,246,97,128,9,3,231,245,234,225,242,225,244,105,128,10,131,237,239,238,239,243,240,225,227,101,128,255,86,111,3,199,91,199,102,199,172,225,242,237,229,238,233,225,110,128,5,120,233,227,229,100,2,199,111,199,147,233,244,229,242,225,244,233,239,110,2,199,125,199,136,232,233,242,225,231,225,238,97,128,48,158,235,225,244,225,235,225,238,97,128,48,254,237,225,242,235,235,225,238,97,129,48,155,199,160,232,225,236,230,247,233,228,244,104,128,255,158,235,225,244,225,235,225,238,97,128,48,250,240,225,242,229,110,128,36,177,116,2,199,197,199,204,233,236,228,101,128,30,125,245,242,238,229,100,128,2,140,117,2,199,218,199,229,232,233,242,225,231,225,238,97,128,48,148,235,225,244,225,235,225,238,97,128,48,244,119,143,0,119,200,18,200,251,201,5,201,28,201,68,201,135,201,143,203,114,203,155,203,167,203,242,203,250,204,1,204,12,204,21,97,8,200,36,200,43,200,53,200,64,200,102,200,134,200,146,200,182,227,245,244,101,128,30,131,229,235,239,242,229,225,110,128,49,89,232,233,242,225,231,225,238,97,128,48,143,107,2,200,70,200,94,225,244,225,235,225,238,97,129,48,239,200,82,232,225,236,230,247,233,228,244,104,128,255,156,239,242,229,225,110,128,49,88,243,237,225,236,108,2,200,112,200,123,232,233,242,225,231,225,238,97,128,48,142,235,225,244,225,235,225,238,97,128,48,238,244,244,239,243,241,245,225,242,101,128,51,87,118,2,200,152,200,160,229,228,225,243,104,128,48,28,249,245,238,228,229,242,243,227,239,242,229,246,229,242,244,233,227,225,108,128,254,52,119,3,200,190,200,199,200,213,225,242,225,226,233,99,128,6,72,230,233,238,225,236,225,242,225,226,233,99,128,254,238,232,225,237,250,225,225,226,239,246,101,2,200,228,200,237,225,242,225,226,233,99,128,6,36,230,233,238,225,236,225,242,225,226,233,99,128,254,134,226,243,241,245,225,242,101,128,51,221,227,233,242,99,2,201,14,201,19,236,101,128,36,230,245,237,230,236,229,120,128,1,117,100,2,201,34,201,44,233,229,242,229,243,233,115,128,30,133,239,116,2,201,51,201,60,225,227,227,229,238,116,128,30,135,226,229,236,239,119,128,30,137,101,4,201,78,201,89,201,101,201,125,232,233,242,225,231,225,238,97,128,48,145,233,229,242,243,244,242,225,243,115,128,33,24,107,2,201,107,201,117,225,244,225,235,225,238,97,128,48,241,239,242,229,225,110,128,49,94,239,235,239,242,229,225,110,128,49,93,231,242,225,246,101,128,30,129,232,233,244,101,8,201,164,201,173,202,1,202,91,202,175,202,220,203,16,203,72,226,245,236,236,229,116,128,37,230,99,2,201,179,201,199,233,242,227,236,101,129,37,203,201,189,233,238,246,229,242,243,101,128,37,217,239,242,238,229,242,226,242,225,227,235,229,116,2,201,216,201,236,236,229,230,116,129,48,14,201,225,246,229,242,244,233,227,225,108,128,254,67,242,233,231,232,116,129,48,15,201,246,246,229,242,244,233,227,225,108,128,254,68,100,2,202,7,202,48,233,225,237,239,238,100,129,37,199,202,18,227,239,238,244,225,233,238,233,238,231,226,236,225,227,235,243,237,225,236,236,228,233,225,237,239,238,100,128,37,200,239,247,238,240,239,233,238,244,233,238,103,2,202,64,202,80,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,191,244,242,233,225,238,231,236,101,128,37,189,236,101,2,202,98,202,140,230,244,240,239,233,238,244,233,238,103,2,202,113,202,129,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,195,244,242,233,225,238,231,236,101,128,37,193,238,244,233,227,245,236,225,242,226,242,225,227,235,229,116,2,202,160,202,167,236,229,230,116,128,48,22,242,233,231,232,116,128,48,23,242,233,231,232,244,240,239,233,238,244,233,238,103,2,202,193,202,209,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,185,244,242,233,225,238,231,236,101,128,37,183,115,3,202,228,203,2,203,10,109,2,202,234,202,246,225,236,236,243,241,245,225,242,101,128,37,171,233,236,233,238,231,230,225,227,101,128,38,58,241,245,225,242,101,128,37,161,244,225,114,128,38,6,116,2,203,22,203,33,229,236,229,240,232,239,238,101,128,38,15,239,242,244,239,233,243,229,243,232,229,236,236,226,242,225,227,235,229,116,2,203,57,203,64,236,229,230,116,128,48,24,242,233,231,232,116,128,48,25,245,240,240,239,233,238,244,233,238,103,2,203,87,203,103,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,181,244,242,233,225,238,231,236,101,128,37,179,105,2,203,120,203,131,232,233,242,225,231,225,238,97,128,48,144,107,2,203,137,203,147,225,244,225,235,225,238,97,128,48,240,239,242,229,225,110,128,49,95,237,239,238,239,243,240,225,227,101,128,255,87,111,4,203,177,203,188,203,213,203,231,232,233,242,225,231,225,238,97,128,48,146,235,225,244,225,235,225,238,97,129,48,242,203,201,232,225,236,230,247,233,228,244,104,128,255,102,110,129,32,169,203,219,237,239,238,239,243,240,225,227,101,128,255,230,247,225,229,238,244,232,225,105,128,14,39,240,225,242,229,110,128,36,178,242,233,238,103,128,30,152,243,245,240,229,242,233,239,114,128,2,183,244,245,242,238,229,100,128,2,141,249,238,110,128,1,191,120,137,0,120,204,49,204,60,204,71,204,80,204,107,204,120,204,124,204,136,204,144,225,226,239,246,229,227,237,98,128,3,61,226,239,240,239,237,239,230,111,128,49,18,227,233,242,227,236,101,128,36,231,100,2,204,86,204,96,233,229,242,229,243,233,115,128,30,141,239,244,225,227,227,229,238,116,128,30,139,229,232,225,242,237,229,238,233,225,110,128,5,109,105,128,3,190,237,239,238,239,243,240,225,227,101,128,255,88,240,225,242,229,110,128,36,179,243,245,240,229,242,233,239,114,128,2,227,121,143,0,121,204,189,205,148,205,171,205,211,207,177,207,185,207,202,208,10,208,22,209,19,209,59,209,71,209,82,209,103,210,76,97,11,204,213,204,225,204,235,204,242,204,249,205,3,205,28,205,39,205,77,205,90,205,136,225,228,239,243,241,245,225,242,101,128,51,78,226,229,238,231,225,236,105,128,9,175,227,245,244,101,128,0,253,228,229,246,97,128,9,47,229,235,239,242,229,225,110,128,49,82,231,117,2,205,10,205,19,234,225,242,225,244,105,128,10,175,242,237,245,235,232,105,128,10,47,232,233,242,225,231,225,238,97,128,48,132,107,2,205,45,205,69,225,244,225,235,225,238,97,129,48,228,205,57,232,225,236,230,247,233,228,244,104,128,255,148,239,242,229,225,110,128,49,81,237,225,235,235,225,238,244,232,225,105,128,14,78,243,237,225,236,108,2,205,100,205,111,232,233,242,225,231,225,238,97,128,48,131,235,225,244,225,235,225,238,97,129,48,227,205,124,232,225,236,230,247,233,228,244,104,128,255,108,244,227,249,242,233,236,236,233,99,128,4,99,227,233,242,99,2,205,157,205,162,236,101,128,36,232,245,237,230,236,229,120,128,1,119,100,2,205,177,205,187,233,229,242,229,243,233,115,128,0,255,239,116,2,205,194,205,203,225,227,227,229,238,116,128,30,143,226,229,236,239,119,128,30,245,101,7,205,227,206,235,206,244,207,6,207,38,207,114,207,165,104,8,205,245,205,254,206,32,206,46,206,119,206,135,206,194,206,212,225,242,225,226,233,99,128,6,74,226,225,242,242,229,101,2,206,9,206,18,225,242,225,226,233,99,128,6,210,230,233,238,225,236,225,242,225,226,233,99,128,251,175,230,233,238,225,236,225,242,225,226,233,99,128,254,242,232,225,237,250,225,225,226,239,246,101,4,206,65,206,74,206,88,206,104,225,242,225,226,233,99,128,6,38,230,233,238,225,236,225,242,225,226,233,99,128,254,138,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,139,237,229,228,233,225,236,225,242,225,226,233,99,128,254,140,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,243,237,101,2,206,142,206,155,228,233,225,236,225,242,225,226,233,99,128,254,244,229,237,105,2,206,163,206,178,238,233,244,233,225,236,225,242,225,226,233,99,128,252,221,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,88,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,148,244,232,242,229,229,228,239,244,243,226,229,236,239,247,225,242,225,226,233,99,128,6,209,235,239,242,229,225,110,128,49,86,110,129,0,165,206,250,237,239,238,239,243,240,225,227,101,128,255,229,111,2,207,12,207,21,235,239,242,229,225,110,128,49,85,242,233,238,232,233,229,245,232,235,239,242,229,225,110,128,49,134,114,3,207,46,207,82,207,94,225,232,226,229,238,249,239,237,111,2,207,60,207,69,232,229,226,242,229,119,128,5,170,236,229,230,244,232,229,226,242,229,119,128,5,170,233,227,249,242,233,236,236,233,99,128,4,75,245,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,249,243,233,229,245,238,103,3,207,127,207,136,207,152,235,239,242,229,225,110,128,49,129,240,225,238,243,233,239,243,235,239,242,229,225,110,128,49,131,243,233,239,243,235,239,242,229,225,110,128,49,130,244,233,246,232,229,226,242,229,119,128,5,154,231,242,225,246,101,128,30,243,232,239,239,107,129,1,180,207,194,225,226,239,246,101,128,30,247,105,5,207,214,207,225,207,236,207,245,207,253,225,242,237,229,238,233,225,110,128,5,117,227,249,242,233,236,236,233,99,128,4,87,235,239,242,229,225,110,128,49,98,238,249,225,238,103,128,38,47,247,238,225,242,237,229,238,233,225,110,128,5,130,237,239,238,239,243,240,225,227,101,128,255,89,111,7,208,38,208,108,208,119,208,129,208,167,208,213,208,222,100,131,5,217,208,48,208,68,208,77,228,225,231,229,243,104,129,251,57,208,59,232,229,226,242,229,119,128,251,57,232,229,226,242,229,119,128,5,217,249,239,100,2,208,85,208,94,232,229,226,242,229,119,128,5,242,240,225,244,225,232,232,229,226,242,229,119,128,251,31,232,233,242,225,231,225,238,97,128,48,136,233,235,239,242,229,225,110,128,49,137,107,2,208,135,208,159,225,244,225,235,225,238,97,129,48,232,208,147,232,225,236,230,247,233,228,244,104,128,255,150,239,242,229,225,110,128,49,91,243,237,225,236,108,2,208,177,208,188,232,233,242,225,231,225,238,97,128,48,135,235,225,244,225,235,225,238,97,129,48,231,208,201,232,225,236,230,247,233,228,244,104,128,255,110,244,231,242,229,229,107,128,3,243,121,2,208,228,209,9,97,2,208,234,208,244,229,235,239,242,229,225,110,128,49,136,107,2,208,250,209,2,239,242,229,225,110,128,49,135,244,232,225,105,128,14,34,233,238,231,244,232,225,105,128,14,13,112,2,209,25,209,32,225,242,229,110,128,36,180,239,231,229,231,242,225,237,237,229,238,105,129,3,122,209,48,231,242,229,229,235,227,237,98,128,3,69,114,129,1,166,209,65,233,238,103,128,30,153,243,245,240,229,242,233,239,114,128,2,184,116,2,209,88,209,95,233,236,228,101,128,30,249,245,242,238,229,100,128,2,142,117,5,209,115,209,126,209,136,209,174,210,50,232,233,242,225,231,225,238,97,128,48,134,233,235,239,242,229,225,110,128,49,140,107,2,209,142,209,166,225,244,225,235,225,238,97,129,48,230,209,154,232,225,236,230,247,233,228,244,104,128,255,149,239,242,229,225,110,128,49,96,115,3,209,182,209,220,210,5,226,233,103,2,209,190,209,201,227,249,242,233,236,236,233,99,128,4,107,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,109,236,233,244,244,236,101,2,209,231,209,242,227,249,242,233,236,236,233,99,128,4,103,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,105,237,225,236,108,2,210,14,210,25,232,233,242,225,231,225,238,97,128,48,133,235,225,244,225,235,225,238,97,129,48,229,210,38,232,225,236,230,247,233,228,244,104,128,255,109,249,101,2,210,57,210,66,235,239,242,229,225,110,128,49,139,239,235,239,242,229,225,110,128,49,138,249,97,2,210,83,210,93,226,229,238,231,225,236,105,128,9,223,228,229,246,97,128,9,95,122,142,0,122,210,132,211,140,211,151,211,194,211,221,213,0,213,108,213,150,213,162,213,174,213,202,213,210,213,226,213,235,97,10,210,154,210,165,210,172,210,179,210,190,211,12,211,42,211,53,211,89,211,101,225,242,237,229,238,233,225,110,128,5,102,227,245,244,101,128,1,122,228,229,246,97,128,9,91,231,245,242,237,245,235,232,105,128,10,91,104,4,210,200,210,209,210,223,210,253,225,242,225,226,233,99,128,6,56,230,233,238,225,236,225,242,225,226,233,99,128,254,198,105,2,210,229,210,244,238,233,244,233,225,236,225,242,225,226,233,99,128,254,199,242,225,231,225,238,97,128,48,86,237,229,228,233,225,236,225,242,225,226,233,99,128,254,200,233,110,2,211,19,211,28,225,242,225,226,233,99,128,6,50,230,233,238,225,236,225,242,225,226,233,99,128,254,176,235,225,244,225,235,225,238,97,128,48,182,241,229,102,2,211,61,211,75,231,225,228,239,236,232,229,226,242,229,119,128,5,149,241,225,244,225,238,232,229,226,242,229,119,128,5,148,242,241,225,232,229,226,242,229,119,128,5,152,249,233,110,130,5,214,211,111,211,131,228,225,231,229,243,104,129,251,54,211,122,232,229,226,242,229,119,128,251,54,232,229,226,242,229,119,128,5,214,226,239,240,239,237,239,230,111,128,49,23,99,3,211,159,211,166,211,188,225,242,239,110,128,1,126,233,242,99,2,211,174,211,179,236,101,128,36,233,245,237,230,236,229,120,128,30,145,245,242,108,128,2,145,228,239,116,130,1,124,211,204,211,213,225,227,227,229,238,116,128,1,124,226,229,236,239,119,128,30,147,101,6,211,235,211,246,212,33,212,44,212,55,212,251,227,249,242,233,236,236,233,99,128,4,55,100,2,211,252,212,15,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,153,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,223,232,233,242,225,231,225,238,97,128,48,92,235,225,244,225,235,225,238,97,128,48,188,242,111,140,0,48,212,84,212,93,212,103,212,110,212,135,212,148,212,159,212,171,212,182,212,192,212,203,212,210,225,242,225,226,233,99,128,6,96,226,229,238,231,225,236,105,128,9,230,228,229,246,97,128,9,102,231,117,2,212,117,212,126,234,225,242,225,244,105,128,10,230,242,237,245,235,232,105,128,10,102,232,225,227,235,225,242,225,226,233,99,128,6,96,233,238,230,229,242,233,239,114,128,32,128,237,239,238,239,243,240,225,227,101,128,255,16,239,236,228,243,244,249,236,101,128,247,48,240,229,242,243,233,225,110,128,6,240,243,245,240,229,242,233,239,114,128,32,112,244,232,225,105,128,14,80,247,233,228,244,104,3,212,222,212,231,212,243,234,239,233,238,229,114,128,254,255,238,239,238,234,239,233,238,229,114,128,32,12,243,240,225,227,101,128,32,11,244,97,128,3,182,104,2,213,6,213,17,226,239,240,239,237,239,230,111,128,49,19,101,4,213,27,213,38,213,54,213,65,225,242,237,229,238,233,225,110,128,5,106,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,194,227,249,242,233,236,236,233,99,128,4,54,100,2,213,71,213,90,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,151,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,221,105,3,213,116,213,127,213,138,232,233,242,225,231,225,238,97,128,48,88,235,225,244,225,235,225,238,97,128,48,184,238,239,242,232,229,226,242,229,119,128,5,174,236,233,238,229,226,229,236,239,119,128,30,149,237,239,238,239,243,240,225,227,101,128,255,90,111,2,213,180,213,191,232,233,242,225,231,225,238,97,128,48,94,235,225,244,225,235,225,238,97,128,48,190,240,225,242,229,110,128,36,181,242,229,244,242,239,230,236,229,248,232,239,239,107,128,2,144,243,244,242,239,235,101,128,1,182,117,2,213,241,213,252,232,233,242,225,231,225,238,97,128,48,90,235,225,244,225,235,225,238,97,128,48,186,68,101,108,116,97,0,79,109,101,103,97,0,102,114,97,99,116,105,111,110,0,104,121,112,104,101,110,0,109,97,99,114,111,110,0,109,117,0,112,101,114,105,111,100,99,101,110,116,101,114,101,100,0,115,112,97,99,101,0,84,99,111,109,109,97,97,99,99,101,110,116,0,116,99,111,109,109,97,97,99,99,101,110,116,0,46,110,117,108,108,0,110,111,110,109,97,114,107,105,110,103,114,101,116,117,114,110,0,110,111,116,101,113,117,97,108,0,105,110,102,105,110,105,116,121,0,108,101,115,115,101,113,117,97,108,0,103,114,101,97,116,101,114,101,113,117,97,108,0,112,97,114,116,105,97,108,100,105,102,102,0,115,117,109,109,97,116,105,111,110,0,112,114,111,100,117,99,116,0,112,105,0,105,110,116,101,103,114,97,108,0,79,109,101,103,97,0,114,97,100,105,99,97,108,0,97,112,112,114,111,120,101,113,117,97,108,0,68,101,108,116,97,0,110,111,110,98,114,101,97,107,105,110,103,115,112,97,99,101,0,108,111,122,101,110,103,101,0,97,112,112,108,101,0,102,114,97,110,99,0,71,98,114,101,118,101,0,103,98,114,101,118,101,0,73,100,111,116,97,99,99,101,110,116,0,83,99,101,100,105,108,108,97,0,115,99,101,100,105,108,108,97,0,67,97,99,117,116,101,0,99,97,99,117,116,101,0,67,99,97,114,111,110,0,99,99,97,114,111,110,0,100,99,114,111,97,116,0,46,110,111,116,100,101,102,0,115,112,97,99,101,0,101,120,99,108,97,109,0,113,117,111,116,101,100,98,108,0,110,117,109,98,101,114,115,105,103,110,0,100,111,108,108,97,114,0,112,101,114,99,101,110,116,0,97,109,112,101,114,115,97,110,100,0,113,117,111,116,101,114,105,103,104,116,0,112,97,114,101,110,108,101,102,116,0,112,97,114,101,110,114,105,103,104,116,0,97,115,116,101,114,105,115,107,0,112,108,117,115,0,99,111,109,109,97,0,104,121,112,104,101,110,0,112,101,114,105,111,100,0,115,108,97,115,104,0,122,101,114,111,0,111,110,101,0,116,119,111,0,116,104,114,101,101,0,102,111,117,114,0,102,105,118,101,0,115,105,120,0,115,101,118,101,110,0,101,105,103,104,116,0,110,105,110,101,0,99,111,108,111,110,0,115,101,109,105,99,111,108,111,110,0,108,101,115,115,0,101,113,117,97,108,0,103,114,101,97,116,101,114,0,113,117,101,115,116,105,111,110,0,97,116,0,65,0,66,0,67,0,68,0,69,0,70,0,71,0,72,0,73,0,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,98,114,97,99,107,101,116,108,101,102,116,0,98,97,99,107,115,108,97,115,104,0,98,114,97,99,107,101,116,114,105,103,104,116,0,97,115,99,105,105,99,105,114,99,117,109,0,117,110,100,101,114,115,99,111,114,101,0,113,117,111,116,101,108,101,102,116,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,111,0,112,0,113,0,114,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,98,114,97,99,101,108,101,102,116,0,98,97,114,0,98,114,97,99,101,114,105,103,104,116,0,97,115,99,105,105,116,105,108,100,101,0,101,120,99,108,97,109,100,111,119,110,0,99,101,110,116,0,115,116,101,114,108,105,110,103,0,102,114,97,99,116,105,111,110,0,121,101,110,0,102,108,111,114,105,110,0,115,101,99,116,105,111,110,0,99,117,114,114,101,110,99,121,0,113,117,111,116,101,115,105,110,103,108,101,0,113,117,111,116,101,100,98,108,108,101,102,116,0,103,117,105,108,108,101,109,111,116,108,101,102,116,0,103,117,105,108,115,105,110,103,108,108,101,102,116,0,103,117,105,108,115,105,110,103,108,114,105,103,104,116,0,102,105,0,102,108,0,101,110,100,97,115,104,0,100,97,103,103,101,114,0,100,97,103,103,101,114,100,98,108,0,112,101,114,105,111,100,99,101,110,116,101,114,101,100,0,112,97,114,97,103,114,97,112,104,0,98,117,108,108,101,116,0,113,117,111,116,101,115,105,110,103,108,98,97,115,101,0,113,117,111,116,101,100,98,108,98,97,115,101,0,113,117,111,116,101,100,98,108,114,105,103,104,116,0,103,117,105,108,108,101,109,111,116,114,105,103,104,116,0,101,108,108,105,112,115,105,115,0,112,101,114,116,104,111,117,115,97,110,100,0,113,117,101,115,116,105,111,110,100,111,119,110,0,103,114,97,118,101,0,97,99,117,116,101,0,99,105,114,99,117,109,102,108,101,120,0,116,105,108,100,101,0,109,97,99,114,111,110,0,98,114,101,118,101,0,100,111,116,97,99,99,101,110,116,0,100,105,101,114,101,115,105,115,0,114,105,110,103,0,99,101,100,105,108,108,97,0,104,117,110,103,97,114,117,109,108,97,117,116,0,111,103,111,110,101,107,0,99,97,114,111,110,0,101,109,100,97,115,104,0,65,69,0,111,114,100,102,101,109,105,110,105,110,101,0,76,115,108,97,115,104,0,79,115,108,97,115,104,0,79,69,0,111,114,100,109,97,115,99,117,108,105,110,101,0,97,101,0,100,111,116,108,101,115,115,105,0,108,115,108,97,115,104,0,111,115,108,97,115,104,0,111,101,0,103,101,114,109,97,110,100,98,108,115,0,111,110,101,115,117,112,101,114,105,111,114,0,108,111,103,105,99,97,108,110,111,116,0,109,117,0,116,114,97,100,101,109,97,114,107,0,69,116,104,0,111,110,101,104,97,108,102,0,112,108,117,115,109,105,110,117,115,0,84,104,111,114,110,0,111,110,101,113,117,97,114,116,101,114,0,100,105,118,105,100,101,0,98,114,111,107,101,110,98,97,114,0,100,101,103,114,101,101,0,116,104,111,114,110,0,116,104,114,101,101,113,117,97,114,116,101,114,115,0,116,119,111,115,117,112,101,114,105,111,114,0,114,101,103,105,115,116,101,114,101,100,0,109,105,110,117,115,0,101,116,104,0,109,117,108,116,105,112,108,121,0,116,104,114,101,101,115,117,112,101,114,105,111,114,0,99,111,112,121,114,105,103,104,116,0,65,97,99,117,116,101,0,65,99,105,114,99,117,109,102,108,101,120,0,65,100,105,101,114,101,115,105,115,0,65,103,114,97,118,101,0,65,114,105,110,103,0,65,116,105,108,100,101,0,67,99,101,100,105,108,108,97,0,69,97,99,117,116,101,0,69,99,105,114,99,117,109,102,108,101,120,0,69,100,105,101,114,101,115,105,115,0,69,103,114,97,118,101,0,73,97,99,117,116,101,0,73,99,105,114,99,117,109,102,108,101,120,0,73,100,105,101,114,101,115,105,115,0,73,103,114,97,118,101,0,78,116,105,108,100,101,0,79,97,99,117,116,101,0,79,99,105,114,99,117,109,102,108,101,120,0,79,100,105,101,114,101,115,105,115,0,79,103,114,97,118,101,0,79,116,105,108,100,101,0,83,99,97,114,111,110,0,85,97,99,117,116,101,0,85,99,105,114,99,117,109,102,108,101,120,0,85,100,105,101,114,101,115,105,115,0,85,103,114,97,118,101,0,89,97,99,117,116,101,0,89,100,105,101,114,101,115,105,115,0,90,99,97,114,111,110,0,97,97,99,117,116,101,0,97,99,105,114,99,117,109,102,108,101,120,0,97,100,105,101,114,101,115,105,115,0,97,103,114,97,118,101,0,97,114,105,110,103,0,97,116,105,108,100,101,0,99,99,101,100,105,108,108,97,0,101,97,99,117,116,101,0,101,99,105,114,99,117,109,102,108,101,120,0,101,100,105,101,114,101,115,105,115,0,101,103,114,97,118,101,0,105,97,99,117,116,101,0,105,99,105,114,99,117,109,102,108,101,120,0,105,100,105,101,114,101,115,105,115,0,105,103,114,97,118,101,0,110,116,105,108,100,101,0,111,97,99,117,116,101,0,111,99,105,114,99,117,109,102,108,101,120,0,111,100,105,101,114,101,115,105,115,0,111,103,114,97,118,101,0,111,116,105,108,100,101,0,115,99,97,114,111,110,0,117,97,99,117,116,101,0,117,99,105,114,99,117,109,102,108,101,120,0,117,100,105,101,114,101,115,105,115,0,117,103,114,97,118,101,0,121,97,99,117,116,101,0,121,100,105,101,114,101,115,105,115,0,122,99,97,114,111,110,0,101,120,99,108,97,109,115,109,97,108,108,0,72,117,110,103,97,114,117,109,108,97,117,116,115,109,97,108,108,0,100,111,108,108,97,114,111,108,100,115,116,121,108,101,0,100,111,108,108,97,114,115,117,112,101,114,105,111,114,0,97,109,112,101,114,115,97,110,100,115,109,97,108,108,0,65,99,117,116,101,115,109,97,108,108,0,112,97,114,101,110,108,101,102,116,115,117,112,101,114,105,111,114,0,112,97,114,101,110,114,105,103,104,116,115,117,112,101,114,105,111,114,0,116,119,111,100,111,116,101,110,108,101,97,100,101,114,0,111,110,101,100,111,116,101,110,108,101,97,100,101,114,0,122,101,114,111,111,108,100,115,116,121,108,101,0,111,110,101,111,108,100,115,116,121,108,101,0,116,119,111,111,108,100,115,116,121,108,101,0,116,104,114,101,101,111,108,100,115,116,121,108,101,0,102,111,117,114,111,108,100,115,116,121,108,101,0,102,105,118,101,111,108,100,115,116,121,108,101,0,115,105,120,111,108,100,115,116,121,108,101,0,115,101,118,101,110,111,108,100,115,116,121,108,101,0,101,105,103,104,116,111,108,100,115,116,121,108,101,0,110,105,110,101,111,108,100,115,116,121,108,101,0,99,111,109,109,97,115,117,112,101,114,105,111,114,0,116,104,114,101,101,113,117,97,114,116,101,114,115,101,109,100,97,115,104,0,112,101,114,105,111,100,115,117,112,101,114,105,111,114,0,113,117,101,115,116,105,111,110,115,109,97,108,108,0,97,115,117,112,101,114,105,111,114,0,98,115,117,112,101,114,105,111,114,0,99,101,110,116,115,117,112,101,114,105,111,114,0,100,115,117,112,101,114,105,111,114,0,101,115,117,112,101,114,105,111,114,0,105,115,117,112,101,114,105,111,114,0,108,115,117,112,101,114,105,111,114,0,109,115,117,112,101,114,105,111,114,0,110,115,117,112,101,114,105,111,114,0,111,115,117,112,101,114,105,111,114,0,114,115,117,112,101,114,105,111,114,0,115,115,117,112,101,114,105,111,114,0,116,115,117,112,101,114,105,111,114,0,102,102,0,102,102,105,0,102,102,108,0,112,97,114,101,110,108,101,102,116,105,110,102,101,114,105,111,114,0,112,97,114,101,110,114,105,103,104,116,105,110,102,101,114,105,111,114,0,67,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,104,121,112,104,101,110,115,117,112,101,114,105,111,114,0,71,114,97,118,101,115,109,97,108,108,0,65,115,109,97,108,108,0,66,115,109,97,108,108,0,67,115,109,97,108,108,0,68,115,109,97,108,108,0,69,115,109,97,108,108,0,70,115,109,97,108,108,0,71,115,109,97,108,108,0,72,115,109,97,108,108,0,73,115,109,97,108,108,0,74,115,109,97,108,108,0,75,115,109,97,108,108,0,76,115,109,97,108,108,0,77,115,109,97,108,108,0,78,115,109,97,108,108,0,79,115,109,97,108,108,0,80,115,109,97,108,108,0,81,115,109,97,108,108,0,82,115,109,97,108,108,0,83,115,109,97,108,108,0,84,115,109,97,108,108,0,85,115,109,97,108,108,0,86,115,109,97,108,108,0,87,115,109,97,108,108,0,88,115,109,97,108,108,0,89,115,109,97,108,108,0,90,115,109,97,108,108,0,99,111,108,111,110,109,111,110,101,116,97,114,121,0,111,110,101,102,105,116,116,101,100,0,114,117,112,105,97,104,0,84,105,108,100,101,115,109,97,108,108,0,101,120,99,108,97,109,100,111,119,110,115,109,97,108,108,0,99,101,110,116,111,108,100,115,116,121,108,101,0,76,115,108,97,115,104,115,109,97,108,108,0,83,99,97,114,111,110,115,109,97,108,108,0,90,99,97,114,111,110,115,109,97,108,108,0,68,105,101,114,101,115,105,115,115,109,97,108,108,0,66,114,101,118,101,115,109,97,108,108,0,67,97,114,111,110,115,109,97,108,108,0,68,111,116,97,99,99,101,110,116,115,109,97,108,108,0,77,97,99,114,111,110,115,109,97,108,108,0,102,105,103,117,114,101,100,97,115,104,0,104,121,112,104,101,110,105,110,102,101,114,105,111,114,0,79,103,111,110,101,107,115,109,97,108,108,0,82,105,110,103,115,109,97,108,108,0,67,101,100,105,108,108,97,115,109,97,108,108,0,113,117,101,115,116,105,111,110,100,111,119,110,115,109,97,108,108,0,111,110,101,101,105,103,104,116,104,0,116,104,114,101,101,101,105,103,104,116,104,115,0,102,105,118,101,101,105,103,104,116,104,115,0,115,101,118,101,110,101,105,103,104,116,104,115,0,111,110,101,116,104,105,114,100,0,116,119,111,116,104,105,114,100,115,0,122,101,114,111,115,117,112,101,114,105,111,114,0,102,111,117,114,115,117,112,101,114,105,111,114,0,102,105,118,101,115,117,112,101,114,105,111,114,0,115,105,120,115,117,112,101,114,105,111,114,0,115,101,118,101,110,115,117,112,101,114,105,111,114,0,101,105,103,104,116,115,117,112,101,114,105,111,114,0,110,105,110,101,115,117,112,101,114,105,111,114,0,122,101,114,111,105,110,102,101,114,105,111,114,0,111,110,101,105,110,102,101,114,105,111,114,0,116,119,111,105,110,102,101,114,105,111,114,0,116,104,114,101,101,105,110,102,101,114,105,111,114,0,102,111,117,114,105,110,102,101,114,105,111,114,0,102,105,118,101,105,110,102,101,114,105,111,114,0,115,105,120,105,110,102,101,114,105,111,114,0,115,101,118,101,110,105,110,102,101,114,105,111,114,0,101,105,103,104,116,105,110,102,101,114,105,111,114,0,110,105,110,101,105,110,102,101,114,105,111,114,0,99,101,110,116,105,110,102,101,114,105,111,114,0,100,111,108,108,97,114,105,110,102,101,114,105,111,114,0,112,101,114,105,111,100,105,110,102,101,114,105,111,114,0,99,111,109,109,97,105,110,102,101,114,105,111,114,0,65,103,114,97,118,101,115,109,97,108,108,0,65,97,99,117,116,101,115,109,97,108,108,0,65,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,65,116,105,108,100,101,115,109,97,108,108,0,65,100,105,101,114,101,115,105,115,115,109,97,108,108,0,65,114,105,110,103,115,109,97,108,108,0,65,69,115,109,97,108,108,0,67,99,101,100,105,108,108,97,115,109,97,108,108,0,69,103,114,97,118,101,115,109,97,108,108,0,69,97,99,117,116,101,115,109,97,108,108,0,69,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,69,100,105,101,114,101,115,105,115,115,109,97,108,108,0,73,103,114,97,118,101,115,109,97,108,108,0,73,97,99,117,116,101,115,109,97,108,108,0,73,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,73,100,105,101,114,101,115,105,115,115,109,97,108,108,0,69,116,104,115,109,97,108,108,0,78,116,105,108,100,101,115,109,97,108,108,0,79,103,114,97,118,101,115,109,97,108,108,0,79,97,99,117,116,101,115,109,97,108,108,0,79,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,79,116,105,108,100,101,115,109,97,108,108,0,79,100,105,101,114,101,115,105,115,115,109,97,108,108,0,79,69,115,109,97,108,108,0,79,115,108,97,115,104,115,109,97,108,108,0,85,103,114,97,118,101,115,109,97,108,108,0,85,97,99,117,116,101,115,109,97,108,108,0,85,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,85,100,105,101,114,101,115,105,115,115,109,97,108,108,0,89,97,99,117,116,101,115,109,97,108,108,0,84,104,111,114,110,115,109,97,108,108,0,89,100,105,101,114,101,115,105,115,115,109,97,108,108,0,48,48,49,46,48,48,48,0,48,48,49,46,48,48,49,0,48,48,49,46,48,48,50,0,48,48,49,46,48,48,51,0,66,108,97,99,107,0,66,111,108,100,0,66,111,111,107,0,76,105,103,104,116,0,77,101,100,105,117,109,0,82,101,103,117,108,97,114,0,82,111,109,97,110,0,83,101,109,105,98,111,108,100,0,112,111,115,116,115,99,114,105,112,116,45,99,109,97,112,115,0,114,98,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,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,18,0,0,0,18,18,18,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,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+61440);allocate([0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0,114,119,97,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+71680);var tempDoublePtr=STATICTOP;STATICTOP+=16;Module["_i64Subtract"]=_i64Subtract;Module["_i64Add"]=_i64Add;Module["_memset"]=_memset;function _pthread_cleanup_push(routine,arg){__ATEXIT__.push((function(){Runtime.dynCall("vi",routine,[arg])}));_pthread_cleanup_push.level=__ATEXIT__.length}Module["_bitshift64Lshr"]=_bitshift64Lshr;Module["_bitshift64Shl"]=_bitshift64Shl;function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!");__ATEXIT__.pop();_pthread_cleanup_push.level=__ATEXIT__.length}function _abort(){Module["abort"]()}function _realloc(){throw"bad"}Module["_realloc"]=_realloc;Module["_saveSetjmp"]=_saveSetjmp;Module["_testSetjmp"]=_testSetjmp;function _longjmp(env,value){asm["setThrew"](env,value||1);throw"longjmp"}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"};function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>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){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up--;up){parts.unshift("..")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))}),join2:(function(l,r){return PATH.normalize(l+"/"+r)}),resolve:(function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter((function(p){return!!p})),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start<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(){}),shutdown:(function(){}),register:(function(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)}),stream_ops:{open:(function(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}stream.tty=tty;stream.seekable=false}),close:(function(stream){stream.tty.ops.flush(stream.tty)}),flush:(function(stream){stream.tty.ops.flush(stream.tty)}),read:(function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(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){var BUFSIZE=256;var buf=new Buffer(BUFSIZE);var bytesRead=0;var fd=process.stdin.fd;var usingDevice=false;try{fd=fs.openSync("/dev/stdin","r");usingDevice=true}catch(e){}bytesRead=fs.readSync(fd,buf,0,BUFSIZE,null);if(usingDevice){fs.closeSync(fd)}if(bytesRead>0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;i<node.usedBytes;++i)arr.push(node.contents[i]);return arr}return node.contents}),getFileDataAsTypedArray:(function(node){if(!node.contents)return new Uint8Array;if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)}),expandFileStorage:(function(node,newCapacity){if(node.contents&&node.contents.subarray&&newCapacity>node.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.buffer.byteLength:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity<CAPACITY_DOUBLING_MAX?2:1.125)|0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}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;node.usedBytes=0;return}if(!node.contents||node.contents.subarray){var oldContents=node.contents;node.contents=new Uint8Array(new ArrayBuffer(newSize));if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize;return}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={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}}),lookup:(function(parent,name){throw FS.genericErrors[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(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)}}}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|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){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i<size;i++)buffer[offset+i]=contents[position+i]}return size}),write:(function(stream,buffer,offset,length,position,canOwn){if(!length)return 0;var node=stream.node;node.timestamp=Date.now();if(buffer.subarray&&(!node.contents||node.contents.subarray)){if(canOwn){node.contents=buffer.subarray(offset,offset+length);node.usedBytes=length;return length}else if(node.usedBytes===0&&position===0){node.contents=new Uint8Array(buffer.subarray(offset,offset+length));node.usedBytes=length;return length}else if(position+length<=node.usedBytes){node.contents.set(buffer.subarray(offset,offset+length),position);return length}}MEMFS.expandFileStorage(node,position+length);if(node.contents.subarray&&buffer.subarray)node.contents.set(buffer.subarray(offset,offset+length),position);else{for(var i=0;i<length;i++){node.contents[position+i]=buffer[offset+i]}}node.usedBytes=Math.max(node.usedBytes,position+length);return length}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.usedBytes}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}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;if(!(flags&2)&&(contents.buffer===buffer||contents.buffer===buffer.buffer)){allocated=false;ptr=contents.byteOffset}else{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}}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}if(mmapFlags&2){return 0}var bytesWritten=MEMFS.stream_ops.write(stream,buffer,0,length,offset,false);return 0})}};var IDBFS={dbs:{},indexedDB:(function(){if(typeof indexedDB!=="undefined")return indexedDB;var ret=null;if(typeof window==="object")ret=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;assert(ret,"IDBFS used, but indexedDB not supported");return ret}),DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",mount:(function(mount){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){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)}if(!fileStore.indexNames.contains("timestamp")){fileStore.createIndex("timestamp","timestamp",{unique:false})}});req.onsuccess=(function(){db=req.result;IDBFS.dbs[name]=db;callback(null,db)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),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(e){callback(this.error);e.preventDefault()});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)){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.chmod(path,entry.mode);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(e){callback(this.error);e.preventDefault()})}),storeRemoteEntry:(function(store,path,entry,callback){var req=store.put(entry,path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),removeRemoteEntry:(function(store,path,callback){var req=store.delete(path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),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 completed=0;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err){if(!done.errored){done.errored=true;return callback(err)}return}if(++completed>=total){return callback(null)}}transaction.onerror=(function(e){done(this.error);e.preventDefault()});create.sort().forEach((function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,(function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)}))}else{IDBFS.loadLocalEntry(path,(function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)}))}}));remove.sort().reverse().forEach((function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}}))})};var NODEFS={isWindows:false,staticInit:(function(){NODEFS.isWindows=!!process.platform.match(/^win/)}),mount:(function(mount){assert(ENVIRONMENT_IS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)}),createNode:(function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node}),getMode:(function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&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){flags&=~32768;flags&=~524288;if(flags in NODEFS.flagsToPermissionStringMap){return NODEFS.flagsToPermissionStringMap[flags]}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.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){if(length===0)return 0;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){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){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:(function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i<parts.length-1;i++){var curr=parts.slice(0,i+1).join("/");if(!createdParents[curr]){createdParents[curr]=WORKERFS.createNode(parent,curr,WORKERFS.DIR_MODE,0)}parent=createdParents[curr]}return parent}function base(path){var parts=path.split("/");return parts[parts.length-1]}Array.prototype.forEach.call(mount.opts["files"]||[],(function(file){WORKERFS.createNode(ensureParent(file.name),base(file.name),WORKERFS.FILE_MODE,0,file,file.lastModifiedDate)}));(mount.opts["blobs"]||[]).forEach((function(obj){WORKERFS.createNode(ensureParent(obj["name"]),base(obj["name"]),WORKERFS.FILE_MODE,0,obj["data"])}));(mount.opts["packages"]||[]).forEach((function(pack){pack["metadata"].files.forEach((function(file){var name=file.filename.substr(1);WORKERFS.createNode(ensureParent(name),base(name),WORKERFS.FILE_MODE,0,pack["blob"].slice(file.start,file.end))}))}));return root}),createNode:(function(parent,name,mode,dev,contents,mtime){var node=FS.createNode(parent,name,mode);node.mode=mode;node.node_ops=WORKERFS.node_ops;node.stream_ops=WORKERFS.stream_ops;node.timestamp=(mtime||new Date).getTime();assert(WORKERFS.FILE_MODE!==WORKERFS.DIR_MODE);if(mode===WORKERFS.FILE_MODE){node.size=contents.size;node.contents=contents}else{node.size=4096;node.contents={}}if(parent){parent.contents[name]=node}return node}),node_ops:{getattr:(function(node){return{dev:1,ino:undefined,mode:node.mode,nlink:1,uid:0,gid:0,rdev:undefined,size:node.size,atime:new Date(node.timestamp),mtime:new Date(node.timestamp),ctime:new Date(node.timestamp),blksize:4096,blocks:Math.ceil(node.size/4096)}}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}}),lookup:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}),mknod:(function(parent,name,mode,dev){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rename:(function(oldNode,newDir,newName){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),unlink:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rmdir:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readdir:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),symlink:(function(parent,newName,oldPath){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readlink:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)})},stream_ops:{read:(function(stream,buffer,offset,length,position){if(position>=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size}),write:(function(stream,buffer,offset,length,position){throw new FS.ErrnoError(ERRNO_CODES.EIO)}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};STATICTOP+=16;STATICTOP+=16;STATICTOP+=16;var FS={root:null,mounts:[],devices:[null],streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i<parts.length;i++){var islast=i===parts.length-1;if(islast&&opts.parent){break}current=FS.lookupNode(current,parts[i]);current_path=PATH.join2(current_path,parts[i]);if(FS.isMountpoint(current)){if(!islast||islast&&opts.follow_mount){current=current.mounted.root}}if(!islast||opts.follow){var count=0;while(FS.isLink(current.mode)){var link=FS.readlink(current_path);current_path=PATH.resolve(PATH.dirname(current_path),link);var lookup=FS.lookupPath(current_path,{recurse_count:opts.recurse_count});current=lookup.node;if(count++>40){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,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return ERRNO_CODES.EACCES}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return ERRNO_CODES.EACCES}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return ERRNO_CODES.EACCES}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return ERRNO_CODES.EACCES;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return ERRNO_CODES.EEXIST}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return ERRNO_CODES.ENOTDIR}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return ERRNO_CODES.EBUSY}}else{if(FS.isDir(node.mode)){return ERRNO_CODES.EISDIR}}return 0}),mayOpen:(function(node,flags){if(!node){return ERRNO_CODES.ENOENT}if(FS.isLink(node.mode)){return ERRNO_CODES.ELOOP}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return ERRNO_CODES.EISDIR}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(ERRNO_CODES.EMFILE)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdev:(function(path,mode,dev){if(typeof dev==="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)}),symlink:(function(oldpath,newpath){if(!PATH.resolve(oldpath)){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}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);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)}if(!old_dir||!new_dir)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(ERRNO_CODES.EXDEV)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}relative=PATH.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var err=FS.mayDelete(old_dir,old_name,isdir);if(err){throw new FS.ErrnoError(err)}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(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)}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}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){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){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!link.node_ops.readlink){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return PATH.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))}),stat:(function(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}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()})}),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:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path==="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(ERRNO_CODES.EEXIST)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}if(!created){var err=FS.mayOpen(node,flags);if(err){throw new FS.ErrnoError(err)}}if(flags&512){FS.truncate(node,0)}flags&=~(128|512);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false},fd_start,fd_end);if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1;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){if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}}),llseek:(function(stream,offset,whence){if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position}),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){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){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)}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!stream||!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)}),munmap:(function(stream){return 0}),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=UTF8ArrayToString(buf,0)}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 buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,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");FS.mkdir("/home");FS.mkdir("/home/web_user")}),createDefaultDevices:(function(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:(function(){return 0}),write:(function(stream,buffer,offset,length,pos){return length})});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var random_device;if(typeof crypto!=="undefined"){var randomBuffer=new Uint8Array(1);random_device=(function(){crypto.getRandomValues(randomBuffer);return randomBuffer[0]})}else if(ENVIRONMENT_IS_NODE){random_device=(function(){return require("crypto").randomBytes(1)[0]})}else{random_device=(function(){return Math.random()*256|0})}FS.createDevice("/dev","random",random_device);FS.createDevice("/dev","urandom",random_device);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")}),createSpecialDirectories:(function(){FS.mkdir("/proc");FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:(function(){var node=FS.createNode("/proc/self","fd",16384|511,73);node.node_ops={lookup:(function(parent,name){var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:(function(){return stream.path})}};ret.parent=ret;return ret})};return node})},{},"/proc/self/fd")}),createStandardStreams:(function(){if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin","r");assert(stdin.fd===0,"invalid handle for stdin ("+stdin.fd+")");var stdout=FS.open("/dev/stdout","w");assert(stdout.fd===1,"invalid handle for stdout ("+stdout.fd+")");var stderr=FS.open("/dev/stderr","w");assert(stderr.fd===2,"invalid handle for stderr ("+stderr.fd+")")}),ensureErrnoError:(function(){if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.node=node;this.setErrno=(function(errno){this.errno=errno;for(var key in ERRNO_CODES){if(ERRNO_CODES[key]===errno){this.code=key;break}}});this.setErrno(errno);this.message=ERRNO_MESSAGES[errno]};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[ERRNO_CODES.ENOENT].forEach((function(code){FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack="<generic error, no stack>"}))}),staticInit:(function(){FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS,"IDBFS":IDBFS,"NODEFS":NODEFS,"WORKERFS":WORKERFS}}),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();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()}),quit:(function(){FS.init.initialized=false;var fflush=Module["_fflush"];if(fflush)fflush(0);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){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){}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}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);FS.registerDevice(dev,{open:(function(stream){stream.seekable=false}),close:(function(stream){if(output&&output.buffer&&output.buffer.length){output(10)}}),read:(function(stream,buffer,offset,length,pos){var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=input()}catch(e){throw new FS.ErrnoError(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"]){try{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){function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype.get=function LazyUint8Array_get(idx){if(idx>this.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i<size;i++){buffer[offset+i]=contents[position+i]}}else{for(var i=0;i<size;i++){buffer[offset+i]=contents.get(position+i)}}return size};node.stream_ops=stream_ops;return node}),createPreloadedFile:(function(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish){Browser.init();var fullname=name?PATH.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency("cp "+fullname);function processData(byteArray){function finish(byteArray){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency(dep)}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(dep)}));handled=true}}));if(!handled)finish(byteArray)}addRunDependency(dep);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;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})};var SYSCALLS={DEFAULT_POLLMASK:5,mappings:{},umask:511,calculateAt:(function(dirfd,path){if(path[0]!=="/"){var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=FS.getStream(dirfd);if(!dirstream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);dir=dirstream.path}path=PATH.join2(dir,path)}return path}),doStat:(function(func,path,buf){try{var stat=func(path)}catch(e){if(e&&e.node&&PATH.normalize(path)!==PATH.normalize(FS.getPath(e.node))){return-ERRNO_CODES.ENOTDIR}throw e}HEAP32[buf>>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;HEAP32[buf+36>>2]=stat.size;HEAP32[buf+40>>2]=4096;HEAP32[buf+44>>2]=stat.blocks;HEAP32[buf+48>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+52>>2]=0;HEAP32[buf+56>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ino;return 0}),doMsync:(function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)}),doMkdir:(function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0}),doMknod:(function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-ERRNO_CODES.EINVAL}FS.mknod(path,mode,dev);return 0}),doReadlink:(function(path,buf,bufsize){if(bufsize<=0)return-ERRNO_CODES.EINVAL;var ret=FS.readlink(path);ret=ret.slice(0,Math.max(0,bufsize));writeStringToMemory(ret,buf,true);return ret.length}),doAccess:(function(path,amode){if(amode&~7){return-ERRNO_CODES.EINVAL}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-ERRNO_CODES.EACCES}return 0}),doDup:(function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd}),doReadv:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr<len)break}return ret}),doWritev:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret}),varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),getStreamFromFD:(function(){var stream=FS.getStream(SYSCALLS.get());if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return stream}),getSocketFromFD:(function(){var socket=SOCKFS.getSocket(SYSCALLS.get());if(!socket)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return socket}),getSocketAddress:(function(allowNull){var addrp=SYSCALLS.get(),addrlen=SYSCALLS.get();if(allowNull&&addrp===0)return null;var info=__read_sockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___lock(){}function ___unlock(){}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:return totalMemory/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 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 79:return 0;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:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}function _sbrk(bytes){var self=_sbrk;if(!self.called){DYNAMICTOP=alignMemoryPage(DYNAMICTOP);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){var success=self.alloc(bytes);if(!success)return-1>>>0}return ret}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;Module["_memmove"]=_memmove;function _emscripten_set_main_loop_timing(mode,value){Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){setTimeout(Browser.mainLoop.runner,value)};Browser.mainLoop.method="timeout"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method="rAF"}else if(mode==2){if(!window["setImmediate"]){var setImmediates=[];var emscriptenMainLoopMessageId="__emcc";function Browser_setImmediate_messageHandler(event){if(event.source===window&&event.data===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}}window.addEventListener("message",Browser_setImmediate_messageHandler,true);window["setImmediate"]=function Browser_emulated_setImmediate(func){setImmediates.push(func);window.postMessage(emscriptenMainLoopMessageId,"*")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){window["setImmediate"](Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop,arg,noSetTiming){Module["noExitRuntime"]=true;assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");Browser.mainLoop.func=func;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;Browser.mainLoop.runner=function Browser_mainLoop_runner(){if(ABORT)return;if(Browser.mainLoop.queue.length>0){var start=Date.now();var blocker=Browser.mainLoop.queue.shift();blocker.func(blocker.arg);if(Browser.mainLoop.remainingBlockers){var remaining=Browser.mainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){Browser.mainLoop.remainingBlockers=next}else{next=next+.5;Browser.mainLoop.remainingBlockers=(8*remaining+next)/9}}console.log('main loop blocker "'+blocker.name+'" took '+(Date.now()-start)+" ms");Browser.mainLoop.updateStatus();if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;setTimeout(Browser.mainLoop.runner,0);return}if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0;if(Browser.mainLoop.timingMode==1&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}if(Browser.mainLoop.method==="timeout"&&Module.ctx){Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!");Browser.mainLoop.method=""}Browser.mainLoop.runIter((function(){if(typeof arg!=="undefined"){Runtime.dynCall("vi",func,[arg])}else{Runtime.dynCall("v",func)}}));if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;if(typeof SDL==="object"&&SDL.audio&&SDL.audio.queueNewAudioData)SDL.audio.queueNewAudioData();Browser.mainLoop.scheduler()};if(!noSetTiming){if(fps&&fps>0)_emscripten_set_main_loop_timing(0,1e3/fps);else _emscripten_set_main_loop_timing(1,1);Browser.mainLoop.scheduler()}if(simulateInfiniteLoop){throw"SimulateInfiniteLoop"}}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:(function(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++}),resume:(function(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;_emscripten_set_main_loop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()}),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}}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"]=[];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}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){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);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;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);var audio=new Audio;audio.addEventListener("canplaythrough",(function(){finish(audio)}),false);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&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src="data:audio/x-"+name.substr(-3)+";base64,"+encode64(byteArray);finish(audio)};audio.src=url;Browser.safeSetTimeout((function(){finish(audio)}),1e4)}else{return fail()}};Module["preloadPlugins"].push(audioPlugin);var canvas=Module["canvas"];function pointerLockChange(){Browser.pointerLock=document["pointerLockElement"]===canvas||document["mozPointerLockElement"]===canvas||document["webkitPointerLockElement"]===canvas||document["msPointerLockElement"]===canvas}if(canvas){canvas.requestPointerLock=canvas["requestPointerLock"]||canvas["mozRequestPointerLock"]||canvas["webkitRequestPointerLock"]||canvas["msRequestPointerLock"]||(function(){});canvas.exitPointerLock=document["exitPointerLock"]||document["mozExitPointerLock"]||document["webkitExitPointerLock"]||document["msExitPointerLock"]||(function(){});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&&canvas==Module.canvas)return Module.ctx;var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}canvas.style.backgroundColor="black"}else{ctx=canvas.getContext("2d")}if(!ctx)return null;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)GL.makeContextCurrent(contextHandle);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,vrDevice){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;Browser.vrDevice=vrDevice;if(typeof Browser.lockPointer==="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas==="undefined")Browser.resizeCanvas=false;if(typeof Browser.vrDevice==="undefined")Browser.vrDevice=null;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{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)}var canvasContainer=document.createElement("div");canvas.parentNode.insertBefore(canvasContainer,canvas);canvasContainer.appendChild(canvas);canvasContainer.requestFullScreen=canvasContainer["requestFullScreen"]||canvasContainer["mozRequestFullScreen"]||canvasContainer["msRequestFullscreen"]||(canvasContainer["webkitRequestFullScreen"]?(function(){canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"])}):null);if(vrDevice){canvasContainer.requestFullScreen({vrDisplay:vrDevice})}else{canvasContainer.requestFullScreen()}}),nextRAF:0,fakeRequestAnimationFrame:(function(func){var now=Date.now();if(Browser.nextRAF===0){Browser.nextRAF=now+1e3/60}else{while(now+2>=Browser.nextRAF){Browser.nextRAF+=1e3/60}}var delay=Math.max(Browser.nextRAF-now,0);setTimeout(func,delay)}),requestAnimationFrame:function requestAnimationFrame(func){if(typeof window==="undefined"){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)})}),allowAsyncCallbacks:true,queuedAsyncCallbacks:[],pauseAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=false}),resumeAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=true;if(Browser.queuedAsyncCallbacks.length>0){var callbacks=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[];callbacks.forEach((function(func){func()}))}}),safeRequestAnimationFrame:(function(func){return Browser.requestAnimationFrame((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}))}),safeSetTimeout:(function(func,timeout){Module["noExitRuntime"]=true;return setTimeout((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}),timeout)}),safeSetInterval:(function(func,timeout){Module["noExitRuntime"]=true;return setInterval((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){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 delta}),mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:(function(event){if(Browser.pointerLock){if(event.type!="mousemove"&&"mozMovementX"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}if(typeof SDL!="undefined"){Browser.mouseX=SDL.mouseX+Browser.mouseMovementX;Browser.mouseY=SDL.mouseY+Browser.mouseMovementY}else{Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}}else{var rect=Module["canvas"].getBoundingClientRect();var cw=Module["canvas"].width;var ch=Module["canvas"].height;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}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"){var last=Browser.touches[touch.identifier];if(!last)last=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}var x=event.pageX-(scrollX+rect.left);var y=event.pageY-(scrollY+rect.top);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}}),asyncLoad:(function(url,onload,onerror,noRunDep){Module["readAsync"](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(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags|8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),setWindowedCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags&~8388608;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")}}}}),wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle:(function(){var handle=Browser.nextWgetRequestHandle;Browser.nextWgetRequestHandle++;return handle})};function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}function _pthread_self(){return 0}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;assert(offset_high===0);FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21506:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((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;Module["FS_unlink"]=FS.unlink;__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}Module["requestFullScreen"]=function Module_requestFullScreen(lockPointer,resizeCanvas,vrDevice){Browser.requestFullScreen(lockPointer,resizeCanvas,vrDevice)};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()};Module["createContext"]=function Module_createContext(canvas,useWebGL,setInModule,webGLContextAttributes){return Browser.createContext(canvas,useWebGL,setInModule,webGLContextAttributes)};STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);staticSealed=true;STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX);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);function invoke_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){try{return Module["dynCall_iiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}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_viiiii(index,a1,a2,a3,a4,a5){try{Module["dynCall_viiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){try{return Module["dynCall_iiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9)}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_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_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)}}Module.asmGlobalArg={"Math":Math,"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Uint32Array":Uint32Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,"Infinity":Infinity};Module.asmLibraryArg={"abort":abort,"assert":assert,"invoke_iiiiiiii":invoke_iiiiiiii,"invoke_iiii":invoke_iiii,"invoke_viiiii":invoke_viiiii,"invoke_iiiiiiiiii":invoke_iiiiiiiiii,"invoke_vii":invoke_vii,"invoke_iiiiiii":invoke_iiiiiii,"invoke_ii":invoke_ii,"invoke_viii":invoke_viii,"invoke_vi":invoke_vi,"invoke_iiiii":invoke_iiiii,"invoke_viiiiii":invoke_viiiiii,"invoke_iii":invoke_iii,"invoke_iiiiii":invoke_iiiiii,"invoke_viiii":invoke_viiii,"_pthread_cleanup_pop":_pthread_cleanup_pop,"___syscall221":___syscall221,"_longjmp":_longjmp,"___lock":___lock,"_time":_time,"_emscripten_set_main_loop":_emscripten_set_main_loop,"_pthread_self":_pthread_self,"_abort":_abort,"_emscripten_set_main_loop_timing":_emscripten_set_main_loop_timing,"___syscall6":___syscall6,"_sbrk":_sbrk,"___syscall5":___syscall5,"_pthread_cleanup_push":_pthread_cleanup_push,"_emscripten_memcpy_big":_emscripten_memcpy_big,"___syscall54":___syscall54,"___unlock":___unlock,"___syscall140":___syscall140,"_sysconf":_sysconf,"___syscall145":___syscall145,"___syscall146":___syscall146,"___setErrNo":___setErrNo,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"cttz_i8":cttz_i8};// EMSCRIPTEN_START_ASM
var asm=(function(global,env,buffer) {
"use asm";var a=new global.Int8Array(buffer);var b=new global.Int16Array(buffer);var c=new global.Int32Array(buffer);var
d=new global.Uint8Array(buffer);var e=new global.Uint16Array(buffer);var f=new global.Uint32Array(buffer);var g=new global.Float32Array
(buffer);var h=new global.Float64Array(buffer);var i=env.STACKTOP|0;var j=env.STACK_MAX|0;var k=env.tempDoublePtr|0;var l=env.ABORT
|0;var m=env.cttz_i8|0;var n=0;var o=0;var p=0;var q=0;var r=global.NaN,s=global.Infinity;var t=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,
B=0.0;var C=0;var D=0;var E=0;var F=0;var G=0;var H=0;var I=0;var J=0;var K=0;var L=0;var M=global.Math.floor;var N=global.Math.
abs;var O=global.Math.sqrt;var P=global.Math.pow;var Q=global.Math.cos;var R=global.Math.sin;var S=global.Math.tan;var T=global.
Math.acos;var U=global.Math.asin;var V=global.Math.atan;var W=global.Math.atan2;var X=global.Math.exp;var Y=global.Math.log;var
Z=global.Math.ceil;var _=global.Math.imul;var $=global.Math.min;var aa=global.Math.clz32;var ba=env.abort;var ca=env.assert;var
da=env.invoke_iiiiiiii;var ea=env.invoke_iiii;var fa=env.invoke_viiiii;var ga=env.invoke_iiiiiiiiii;var ha=env.invoke_vii;var ia
=env.invoke_iiiiiii;var ja=env.invoke_ii;var ka=env.invoke_viii;var la=env.invoke_vi;var ma=env.invoke_iiiii;var na=env.invoke_viiiiii
;var oa=env.invoke_iii;var pa=env.invoke_iiiiii;var qa=env.invoke_viiii;var ra=env._pthread_cleanup_pop;var sa=env.___syscall221
;var ta=env._longjmp;var ua=env.___lock;var va=env._time;var wa=env._emscripten_set_main_loop;var xa=env._pthread_self;var ya=env
._abort;var za=env._emscripten_set_main_loop_timing;var Aa=env.___syscall6;var Ba=env._sbrk;var Ca=env.___syscall5;var Da=env._pthread_cleanup_push
;var Ea=env._emscripten_memcpy_big;var Fa=env.___syscall54;var Ga=env.___unlock;var Ha=env.___syscall140;var Ia=env._sysconf;var
Ja=env.___syscall145;var Ka=env.___syscall146;var La=env.___setErrNo;var Ma=0.0;
// EMSCRIPTEN_START_FUNCS
function $a(a){a=a|0;var b=0;b=i;i=i+a|0;i=i+15&-16;return b|0}function ab(){return i|0}function bb(a){a=a|0;i=a}function cb
(a,b){a=a|0;b=b|0;i=a;j=b}function db(a,b){a=a|0;b=b|0;if(!n){n=a;o=b}}function eb(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]}function
fb(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 gb(a){a=a|0;C=a}function hb(){return C|0}function
ib(a){a=a|0;c[18364]=(a|0)!=0&1;return 0}function jb(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+32|0;h=j+8|0
;f=j;e=c[18367]|0;if((e|0)!=0?(As(e,b)|0)==0:0){e=73468;f=2;g=4}else g=3;do if((g|0)==3){e=c[18368]|0;if(e|0?(As(e,b)|0)==0:0){e
=73472;f=3;g=4;break}e=c[18369]|0;if(e|0?(As(e,b)|0)==0:0){e=73476;f=4;g=4;break}e=c[18370]|0;if(e|0?(As(e,b)|0)==0:0){e=73480;f
=5;g=4;break}e=c[18371]|0;if(e|0?(As(e,b)|0)==0:0){e=73484;f=6;g=4;break}e=c[18372]|0;if(e|0?(As(e,b)|0)==0:0){e=73488;f=7;g=4;break
}e=c[18373]|0;if(e|0?(As(e,b)|0)==0:0){e=73492;f=8;g=4;break}e=c[18374]|0;if(e|0?(As(e,b)|0)==0:0){e=73496;f=9;g=4;break}if(c[18367
]|0)if(c[18368]|0)if(c[18369]|0)if(c[18370]|0)if(c[18371]|0)if(c[18372]|0)if(c[18373]|0)if(!(c[18374]|0))f=9;else{c[f>>
;2]=a;c[f+4>>2]=b;ss(10198,f)|0;h=-1;i=j;return h|0}else f=8;else f=7;else f=6;else f=5;else f=4;else f=3;else f=2}while
(0);if((g|0)==4){g=73500+(f<<2)|0;vd(c[g>>2]|0)|0;Gs(c[e>>2]|0);c[e>>2]=0;c[g>>
;2]=0}e=Ec(c[18385]|0,a,0,73500+(f<<2)|0)|0;if(!e){c[73460+(f<<2)>>2]=ws(b)|0;c[8+(f<<2)
x3e;>2]=d;h=0;i=j;return h|0}else{c[h>>2]=a;c[h+4>>2]=b;c[h+8>>2]=e;ss(10233,h)|0;h=e;i=j;return
h|0}return 0}function kb(a){a=a|0;var b=0,d=0;b=c[18365]|0;if(b)if(As(a,b)|0){b=c[18366]|0;if(((b|0)!=0?(As(a,b)|0)!=0:0)?(d=c[
18367]|0,(d|0)!=0):0)if(As(a,d)|0){b=c[18368]|0;if(b)if(As(a,b)|0){b=c[18369]|0;if(b)if(As(a,b)|0){b=c[18370]|0;if(b)if(As(a,b)|
0){b=c[18371]|0;if(b)if(As(a,b)|0){b=c[18372]|0;if(b)if(As(a,b)|0){b=c[18373]|0;if(b)if(As(a,b)|0){b=c[18374]|0;if(!b)b=1;else{a
=(As(a,b)|0)==0;return (a?9:1)|0}}else b=8;else b=1}else b=7;else b=1}else b=6;else b=1}else b=5;else b=1}else b=4;else b=1}else
b=3;else b=1}else b=2;else b=1}else b=0;else b=1;return b|0}function lb(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;p=i;i=i+16|0;k=p+8|0;j=p;if(!(b>>>0<=9?(c[73460+(b<<2)>>2]|0)!=0:0))b=1;h=
c[73500+(b<<2)>>2]|0;b=c[8+(b<<2)>>2]|0;f=(_(f<<6,b)|0)/100|0;b=(_(g<<
;6,b)|0)/100|0;if((e+-65|0)>>>0<26&(h|0)==(c[18376]|0))b=(b*108|0)/100|0;b=Hd(h,f,b,72,0)|0;if(b|0){c[j
>>2]=b;ss(10260,j)|0;o=0;i=p;return o|0}c[18386]=c[h+84>>2];if((h|0)==(c[18375]|0)|(h|0)==(c[18376]|0))if((e
|0)==126)e=732;else e=(e|0)==94?710:e;if(!(c[18364]|0))e=Cc(h,e,4)|0;else e=Cc(h,e,131076)|0;if(e|0){c[k>>2]=e;ss(10285
,k)|0;o=0;i=p;return o|0}b=c[18386]|0;if(!(c[18364]|0)){o=c[b+88>>2]|0;i=p;return o|0}e=c[18387]|0;if(e|0)Gs(e);m=b+80
|0;f=c[m>>2]|0;n=b+76|0;g=c[n>>2]|0;e=Fs(_(g,f)|0)|0;c[18387]=e;if(!e){o=0;i=p;return o|0}if((g|0)<=0){
o=e;i=p;return o|0}o=b+84|0;l=b+88|0;b=e;k=0;do{j=_(c[o>>2]|0,k)|0;j=(c[l>>2]|0)+j|0;if((f|0)>0){h=0;while
(1){g=b+1|0;a[b>>0]=(((d[j+(h>>3)>>0]|0)&1<<(h&7^7)|0)!=0)<<31>
x3e;31;h=h+1|0;f=c[m>>2]|0;if((h|0)>=(f|0)){b=g;break}else b=g}g=c[n>>2]|0}k=k+1|0}while((k|0)<(g|
0));i=p;return e|0}function mb(){return c[(c[18386]|0)+100>>2]|0}function nb(){return c[(c[18386]|0)+104>>2]|
0}function ob(){return c[(c[18386]|0)+80>>2]|0}function pb(){return c[(c[18386]|0)+76>>2]|0}function qb(){return
c[(c[18386]|0)+84>>2]|0}function rb(){return c[(c[18386]|0)+64>>2]>>6|0}function sb(){var a=0,b=0
,d=0,e=0,f=0;f=i;i=i+32|0;e=f+16|0;d=f+8|0;b=f;a=ub(73540)|0;if(a|0){c[b>>2]=a;ss(10306,b)|0;e=1;i=f;return e|0}a=Ec(c
[18385]|0,10322,0,73500)|0;if(a|0){c[d>>2]=a;ss(10331,d)|0;e=1;i=f;return e|0}a=Ec(c[18385]|0,10358,0,73504)|0;if(!a){
c[18365]=ws(10394)|0;c[18366]=ws(10400)|0;e=0;i=f;return e|0}else{c[e>>2]=a;ss(10367,e)|0;e=1;i=f;return e|0}return 0}
function tb(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;c[d>>2]=48;while(1){if(!(
c[c[d>>2]>>2]|0))break;c[e>>2]=Nd(c[b>>2]|0,c[c[d>>2]>>2]|0)|0;c[d
x3e;>2]=(c[d>>2]|0)+4}i=f;return}function ub(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;d=g+8|0;e=g+4
|0;f=g;c[d>>2]=a;c[f>>2]=tr()|0;if(!(c[f>>2]|0)){c[b>>2]=7;f=c[b>>2]|0;i=g;return
f|0}c[e>>2]=Wd(c[f>>2]|0,c[d>>2]|0)|0;if(c[e>>2]|0)xr(c[f>>2]|0);else tb(c[c[
d>>2]>>2]|0);c[b>>2]=c[e>>2];f=c[b>>2]|0;i=g;return f|0}function vb(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;
c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(!(c[g>>2]|0)){c[f>>2]=35;
e=c[f>>2]|0;i=n;return e|0}if((c[h>>2]|0)>>>0>=(c[(c[g>>2]|0)+16>>2]|
0)>>>0){c[f>>2]=16;e=c[f>>2]|0;i=n;return e|0}c[m>>2]=c[(c[(c[(c[g>>2]|0)+
96>>2]|0)+20>>2]|0)+92>>2];do if(c[m>>2]|0){if((c[j>>2]&3|0)==0?(c[j>
;>2]>>16&15|0)!=1:0)break;c[l>>2]=Za[c[m>>2]&31](c[g>>2]|0,c[h>>
;2]|0,1,c[j>>2]|0,c[k>>2]|0)|0;if(!(c[l>>2]|0)){c[f>>2]=wb(c[g>>2]|0,c[k>
x3e;2]|0,1,c[j>>2]|0)|0;e=c[f>>2]|0;i=n;return e|0}if((c[l>>2]|0)!=7){c[f>>2]=c[l>
x3e;2];e=c[f>>2]|0;i=n;return e|0}}while(0);c[f>>2]=Bb(c[g>>2]|0,c[h>>2]|0,1,c[j>
x3e;2]|0,c[k>>2]|0)|0;e=c[f>>2]|0;i=n;return e|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,m=0,n=0;n=i;i=i+32|0;g=n+24|0;f=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;c[f>>2]=a;c[h>>2]=
b;c[j>>2]=d;c[k>>2]=e;if(c[k>>2]&1|0){c[g>>2]=0;m=c[g>>2]|0;i=n;return m|
0}if(!(c[(c[f>>2]|0)+88>>2]|0)){c[g>>2]=36;m=c[g>>2]|0;i=n;return m|0}f=(c[(c[f>>
;2]|0)+88>>2]|0)+12|0;if(c[k>>2]&16|0)c[m>>2]=c[f+8>>2];else c[m>>2]=c[f+
4>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[j>>2]|0)>>
x3e;0)break;k=xb(c[(c[h>>2]|0)+(c[l>>2]<<2)>>2]|0,c[m>>2]|0,64)|0;c[(c[h>
x3e;2]|0)+(c[l>>2]<<2)>>2]=k;c[l>>2]=(c[l>>2]|0)+1}c[g>>2]=0;m=c[g
x3e;>2]|0;i=n;return m|0}function xb(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;m=i;i=i+48|0;e=m+32|0;f=m
+28|0;g=m+24|0;h=m+20|0;j=m+16|0;k=m+8|0;l=m;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(c[f>>2]|0?(
c[g>>2]|0)!=(c[h>>2]|0):0){c[j>>2]=c[f>>2];d=c[f>>2]|0;c[f>>2]=(c[f
x3e;>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[g>>2];d=c[g>>2]|0;c[g>>2]=(c[
g>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[h>>2];d=c[h>>2]|0;c[h>>2]=(
c[h>>2]|0)<0?0-d|0:d;do if(!((c[f>>2]|0)<=46340&(c[g>>2]|0)<=46340&(c[h
x3e;>2]|0)<=176095&(c[h>>2]|0)>0))if((c[h>>2]|0)>0){yb(c[f>>2]|0,c[g>
;>2]|0,k);c[l+4>>2]=0;c[l>>2]=c[h>>2]>>1;zb(k,l,k);c[f>>2]=Ab(c[k+4>
x3e;2]|0,c[k>>2]|0,c[h>>2]|0)|0;break}else{c[f>>2]=2147483647;break}else{l=_(c[f>>2]|0,c
[g>>2]|0)|0;c[f>>2]=(l+(c[h>>2]>>1)|0)/(c[h>>2]|0)|0}while(0);l=c[f>>
;2]|0;c[e>>2]=(c[j>>2]|0)<0?0-l|0:l;l=c[e>>2]|0;i=m;return l|0}c[e>>2]=c[f>>
;2];l=c[e>>2]|0;i=m;return l|0}function yb(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;e=i;i=i+48|0;q=e+40|0;p=e+36|0;f=e+32|0;o=e+28|0;m=e+24|0;n=e+20|0;l=e+16|0;h=e+12|0;g=e+8|0;j=e+4|0;k=e;c[q>>2]=a;c
[p>>2]=b;c[f>>2]=d;c[o>>2]=c[q>>2]&65535;c[m>>2]=(c[q>>2]|0)>
;>>16;c[n>>2]=c[p>>2]&65535;c[l>>2]=(c[p>>2]|0)>>>16;c[h
x3e;>2]=_(c[o>>2]|0,c[n>>2]|0)|0;c[j>>2]=_(c[o>>2]|0,c[l>>2]|0)|0;c[k>
;>2]=_(c[n>>2]|0,c[m>>2]|0)|0;c[g>>2]=_(c[m>>2]|0,c[l>>2]|0)|0;c[j>
x3e;2]=(c[j>>2]|0)+(c[k>>2]|0);c[g>>2]=(c[g>>2]|0)+(((c[j>>2]|0)>>
x3e;0<(c[k>>2]|0)>>>0&1)<<16);c[g>>2]=(c[g>>2]|0)+((c[j>
x3e;2]|0)>>>16);c[j>>2]=c[j>>2]<<16;c[h>>2]=(c[h>>2]|0)+(c[j>
;>2]|0);c[g>>2]=(c[g>>2]|0)+((c[h>>2]|0)>>>0<(c[j>>2]|0)>
x3e;>0&1);c[c[f>>2]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2
];i=e;return}function zb(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+12|0;f=e+8|0;h=e+4|0;g=e
;c[j>>2]=a;c[k>>2]=b;c[f>>2]=d;c[h>>2]=(c[c[j>>2]>>2]|0)+(c[c[k>
;>2]>>2]|0);c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[k>>2]|0)+4>>2
]|0)+((c[h>>2]|0)>>>0<(c[c[j>>2]>>2]|0)>>>0&1);c[c[f>
x3e;2]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2];i=e;return}function Ab(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+32|0;e=l+24|0;m=l+20|0;f=l+16|0;g=l+12|0;k=l+8|0;j=l+4|0;h=l;c[m>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=0;c[k>>2]=c[m>>2];if((c[k>>2
]|0)>>>0>=(c[g>>2]|0)>>>0){c[e>>2]=2147483647;m=c[e>>2]|0;i=l;return
m|0}c[h>>2]=32;do{c[k>>2]=c[k>>2]<<1;c[j>>2]=c[j>>2]<<1;c
[k>>2]=c[k>>2]|(c[f>>2]|0)>>>31;if((c[k>>2]|0)>>>0>=(
c[g>>2]|0)>>>0){c[k>>2]=(c[k>>2]|0)-(c[g>>2]|0);c[j>>2]=c[j>
;>2]|1}c[f>>2]=c[f>>2]<<1;m=(c[h>>2]|0)+-1|0;c[h>>2]=m}while((m|0)!=0);c[
e>>2]=c[j>>2];m=c[e>>2]|0;i=l;return m|0}function Bb(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;t=i;i=i+48|0;l=t+40|0;m=t+36|0;n=t+32|0;o=t+28|0;p=t+24|0;q=t+20|0;h=t+16|0;
j=t+12|0;g=t+8|0;s=t+4|0;r=t;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f
;c[r>>2]=0;if(!(c[m>>2]|0)){c[l>>2]=35;s=c[l>>2]|0;i=t;return s|0}c[j>>2]=c[(c
[m>>2]|0)+16>>2];c[g>>2]=(c[n>>2]|0)+(c[o>>2]|0);if(((c[n>>2]|0)>
;>>0<(c[j>>2]|0)>>>0?(c[g>>2]|0)>>>0>=(c[n>>2]|0
)>>>0:0)?(c[g>>2]|0)>>>0<=(c[j>>2]|0)>>>0:0){if(!(c[o>
;>2]|0)){c[l>>2]=0;s=c[l>>2]|0;i=t;return s|0}c[h>>2]=c[(c[(c[(c[m>>2]|0)+96>
x3e;2]|0)+20>>2]|0)+92>>2];do if(c[h>>2]|0){if((c[p>>2]&3|0)==0?(c[p>>2]
x3e;>16&15|0)!=1:0){k=15;break}c[r>>2]=Za[c[h>>2]&31](c[m>>2]|0,c[n>>2]|0
,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;if(c[r>>2]|0)if((c[r>>2]|0)!=7){c[l>>
;2]=c[r>>2];s=c[l>>2]|0;i=t;return s|0}else k=15}else k=15;while(0);if((k|0)==15){c[r>>2]=0;if(c[p
>>2]&536870912|0){c[l>>2]=7;s=c[l>>2]|0;i=t;return s|0}c[p>>2]=c[p>>2]|256
;c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c
[r>>2]=Cb(c[m>>2]|0,(c[n>>2]|0)+(c[s>>2]|0)|0,c[p>>2]|0)|0;if(c[r>>2
]|0)break;d=(c[(c[m>>2]|0)+84>>2]|0)+64|0;if(c[p>>2]&16|0)d=c[d+4>>2]|0;else d=c[d
x3e;>2]|0;c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]=d;c[s>>2]=(c[s>>2]|0)+
1}if(c[r>>2]|0){c[l>>2]=c[r>>2];s=c[l>>2]|0;i=t;return s|0}}c[l>>2]=wb(c[m>
;>2]|0,c[q>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;s=c[l>>2]|0;i=t;return s|0}c[l>>2
]=16;s=c[l>>2]|0;i=t;return s|0}function Cb(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;A=i;i=i+80|0;r=A+64|0;s=A+60|0;g=A+56|0;t=A+52|0;u=A+48|0;j=A+44|0;z=A+40|0;n=A+36|0;h=A+68|0
;k=A+32|0;o=A+28|0;l=A+24|0;m=A+20|0;p=A+16|0;w=A+12|0;v=A+8|0;y=A+4|0;x=A;c[s>>2]=b;c[g>>2]=e;c[t>>
;2]=f;a[h>>0]=0;if((c[s>>2]|0?c[(c[s>>2]|0)+88>>2]|0:0)?c[(c[s>>2]|0)+84>
x3e;2]|0:0){c[z>>2]=c[(c[s>>2]|0)+84>>2];Db(c[z>>2]|0);c[j>>2]=c[(c[s>>
;2]|0)+96>>2];c[n>>2]=c[(c[j>>2]|0)+4>>2];c[k>>2]=c[(c[n>>2]|0)+168
x3e;>2];if(c[t>>2]&1024|0)c[t>>2]=c[t>>2]|2049;if(c[t>>2]&1|0){c[t>
x3e;2]=c[t>>2]|10;c[t>>2]=c[t>>2]&-5}do if(((((c[k>>2]|0?(c[t>>2]&2|
0)==0:0)?(c[t>>2]&32768|0)==0:0)?c[c[c[j>>2]>>2]>>2]&256|0:0)?(c[c[c[j>
x3e;2]>>2]>>2]&512|0)==0:0)?(c[(c[s>>2]|0)+8>>2]&8192|0)==0:0){if(!((c[(c[(c[s
>>2]|0)+128>>2]|0)+4+8>>2]|0)==0?(c[(c[(c[s>>2]|0)+128>>2]|0)+4>>2]|
0)!=0:0)){if(c[(c[(c[s>>2]|0)+128>>2]|0)+4>>2]|0)break;if(!(c[(c[(c[s>>2]|0)+128>
x3e;2]|0)+4+8>>2]|0))break}if((c[t>>2]&32|0)==0?c[c[c[j>>2]>>2]>>2]&
1024|0:0){c[o>>2]=c[t>>2]>>16&15;if((c[o>>2]|0)!=1?(d[(c[(c[s>>2]|0)+128
x3e;>2]|0)+56>>0]|0)==0:0)break;a[h>>0]=1;break}a[h>>0]=1}while(0);do if(!(a[h>>0]|
0)){c[u>>2]=Wa[c[(c[(c[j>>2]|0)+20>>2]|0)+80>>2]&31](c[z>>2]|0,c[(c[s>
;>2]|0)+88>>2]|0,c[g>>2]|0,c[t>>2]|0)|0;if(!(c[u>>2]|0))if((c[(c[z>>2]|0)+
72>>2]|0)==1869968492){c[u>>2]=Gb((c[z>>2]|0)+108|0)|0;if(!(c[u>>2]|0))if(c[t>>
;2]&2|0)q=36;else{Hb(c[z>>2]|0,c[t>>2]&16);q=36}}else q=36}else{if(((c[(c[s>>2]|0)+8>
;>2]&2|0?(c[t>>2]&8|0)==0:0)?(c[u>>2]=Wa[c[(c[(c[j>>2]|0)+20>>2]|0)+80>
;>2]&31](c[z>>2]|0,c[(c[s>>2]|0)+88>>2]|0,c[g>>2]|0,c[t>>2]|16384)|0
,(c[u>>2]|0)==0):0)?(c[(c[z>>2]|0)+72>>2]|0)==1651078259:0){q=36;break}c[m>>2]=c[(c[s>
;>2]|0)+128>>2];c[p>>2]=c[(c[m>>2]|0)+28>>2];c[(c[m>>2]|0)+28>>
2]=0;c[l>>2]=c[(c[c[k>>2]>>2]|0)+20>>2];c[u>>2]=Za[c[(c[l>>2]|0)+12
x3e;>2]&31](c[k>>2]|0,c[z>>2]|0,c[(c[s>>2]|0)+88>>2]|0,c[g>>2]|0,c[t
>>2]|0)|0;c[(c[m>>2]|0)+28>>2]=c[p>>2];q=36}while(0);if((q|0)==36){g=c[z>>2]|0
;if(c[t>>2]&16|0){c[g+64>>2]=0;c[(c[z>>2]|0)+64+4>>2]=c[(c[z>>2]|0)+24+28
>>2]}else{c[(c[z>>2]|0)+64>>2]=c[g+24+16>>2];c[(c[z>>2]|0)+64+4>>2]=
0}if((c[t>>2]&8192|0)==0?c[(c[s>>2]|0)+8>>2]&1|0:0){c[w>>2]=(c[(c[s>>
;2]|0)+88>>2]|0)+12;q=xb(c[(c[z>>2]|0)+56>>2]|0,c[(c[w>>2]|0)+4>>2]|0,64)|0;c[(
c[z>>2]|0)+56>>2]=q;w=xb(c[(c[z>>2]|0)+60>>2]|0,c[(c[w>>2]|0)+8>>2]|
0,64)|0;c[(c[z>>2]|0)+60>>2]=w}if((c[t>>2]&2048|0)==0?(c[v>>2]=c[(c[s>>2]|
0)+128>>2],c[(c[v>>2]|0)+28>>2]|0):0){c[y>>2]=Ib(c[z>>2]|0)|0;if(!(c[y>
x3e;2]|0)){if((c[(c[z>>2]|0)+72>>2]|0)==1869968492){if((c[v>>2]|0)+4|0)Kb((c[z>>2]|0)+108
|0,(c[v>>2]|0)+4|0);if((c[v>>2]|0)+20|0)Nb((c[z>>2]|0)+108|0,c[(c[v>>2]|0)+20>>
;2]|0,c[(c[v>>2]|0)+20+4>>2]|0)}}else c[u>>2]=Wa[c[(c[(c[y>>2]|0)+20>>2]|0)+44
>>2]&31](c[y>>2]|0,c[z>>2]|0,(c[v>>2]|0)+4|0,(c[v>>2]|0)+20|0)|0;Lb((c[z
x3e;>2]|0)+64|0,(c[v>>2]|0)+4|0)}if((((c[u>>2]|0)==0?(c[(c[z>>2]|0)+72>>2]|0)!=1651078259
:0)?(c[(c[z>>2]|0)+72>>2]|0)!=1668246896:0)?c[t>>2]&4|0:0){c[x>>2]=c[t>>2
]>>16&15;if((c[x>>2]|0)==0?c[t>>2]&4096|0:0)c[x>>2]=2;c[u>>2]=Ob(c[z
>>2]|0,c[x>>2]|0)|0}}c[r>>2]=c[u>>2];z=c[r>>2]|0;i=A;return z|0}c[r>>
;2]=35;z=c[r>>2]|0;i=A;return z|0}function Db(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;Eb(c[e>
x3e;2]|0);b=(c[e>>2]|0)+24|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[
b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;c[b+28>>2]=0;b=(c[e>>2]|0)+108|0;c[b>
;>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[(c[e>>2]|0)+76
+4>>2]=0;c[(c[e>>2]|0)+76>>2]=0;c[(c[e>>2]|0)+76+8>>2]=0;a[(c[e>>2]|
0)+76+18>>0]=0;c[(c[e>>2]|0)+100>>2]=0;c[(c[e>>2]|0)+104>>2]=0;c[(c[e>>
;2]|0)+128>>2]=0;c[(c[e>>2]|0)+132>>2]=0;c[(c[e>>2]|0)+136>>2]=0;c[(c[e>
x3e;2]|0)+140>>2]=0;c[(c[e>>2]|0)+152>>2]=0;c[(c[e>>2]|0)+72>>2]=0;c[(c[e>
;>2]|0)+56>>2]=0;c[(c[e>>2]|0)+60>>2]=0;c[(c[e>>2]|0)+144>>2]=0;c[(c[e>
;>2]|0)+148>>2]=0;i=d;return}function Eb(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if
(c[(c[b>>2]|0)+156>>2]|0?c[(c[(c[b>>2]|0)+156>>2]|0)+4>>2]&1|0:0){c[d>
;>2]=c[(c[(c[b>>2]|0)+4>>2]|0)+100>>2];Fb(c[d>>2]|0,c[(c[b>>2]|0)+76+12
x3e;>2]|0);c[(c[b>>2]|0)+76+12>>2]=0;a=(c[(c[b>>2]|0)+156>>2]|0)+4|0;c[a>>
;2]=c[a>>2]&-2;i=e;return}c[(c[b>>2]|0)+76+12>>2]=0;i=e;return}function Fb(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=f;return}Ra[c[(c[d>
;>2]|0)+8>>2]&7](c[d>>2]|0,c[e>>2]|0);i=f;return}function Gb(a){a=a|0;var d=0,e=0,f=0,g=
0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;d=l+24|0;e=l+20|0;k=l+16|0;j=l+12|0;g=l+8|0;f=l+4|0;h=l;c[e>>2]=a;a:do if(c[e>>
;2]|0){c[k>>2]=b[(c[e>>2]|0)+2>>1];c[j>>2]=b[c[e>>2]>>1];if((c[k>
;>2]|0)==0&(c[j>>2]|0)==0){c[d>>2]=0;a=c[d>>2]|0;i=l;return a|0}if(!((c[k>>2]|
0)<=0|(c[j>>2]|0)<=0)){c[f>>2]=-1;c[g>>2]=-1;c[h>>2]=0;while(1){if((c[h>
x3e;2]|0)>=(c[j>>2]|0))break;c[f>>2]=b[(c[(c[e>>2]|0)+12>>2]|0)+(c[h>>2]
x3c;<1)>>1];if((c[f>>2]|0)<=(c[g>>2]|0))break a;if((c[f>>2]|0)>=(c[k>
;>2]|0))break a;c[g>>2]=c[f>>2];c[h>>2]=(c[h>>2]|0)+1}if((c[f>>2]|0)==((c
[k>>2]|0)-1|0)){c[d>>2]=0;a=c[d>>2]|0;i=l;return a|0}}}while(0);c[d>>2]=6;a=c[d>>
;2]|0;i=l;return a|0}function Hb(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+32|0;k=h+12|0;j=h+16|0;f=h+8|0;g=h+4|0;e=h
;c[k>>2]=b;a[j>>0]=d;c[f>>2]=(c[k>>2]|0)+24;b=c[f>>2]|0;if(a[j>>0]|0
){c[(c[f>>2]|0)+8>>2]=c[b+8>>2]&-64;c[(c[f>>2]|0)+12>>2]=(c[(c[f>>
;2]|0)+12>>2]|0)+63&-64;c[g>>2]=(c[(c[f>>2]|0)+20>>2]|0)+(c[c[f>>2]>
x3e;2]|0)+63&-64;c[e>>2]=(c[(c[f>>2]|0)+24>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0)+
63&-64;c[(c[f>>2]|0)+20>>2]=c[(c[f>>2]|0)+20>>2]&-64;c[(c[f>>2]|0)+24
>>2]=c[(c[f>>2]|0)+24>>2]&-64;c[c[f>>2]>>2]=(c[g>>2]|0)-(c[(c[f
>>2]|0)+20>>2]|0);c[(c[f>>2]|0)+4>>2]=(c[e>>2]|0)-(c[(c[f>>2]|0)+24
x3e;>2]|0);k=c[f>>2]|0;k=k+16|0;k=c[k>>2]|0;k=k+32|0;k=k&-64;j=c[f>>2]|0;j=j+16|0;c[j>
;>2]=k;j=c[f>>2]|0;j=j+28|0;j=c[j>>2]|0;j=j+32|0;j=j&-64;k=c[f>>2]|0;k=k+28|0;c[k>
x3e;2]=j;i=h;return}else{c[(c[f>>2]|0)+20>>2]=c[b+20>>2]&-64;c[(c[f>>2]|0)+24>
x3e;2]=c[(c[f>>2]|0)+24>>2]&-64;c[g>>2]=(c[(c[f>>2]|0)+8>>2]|0)+(c[c[f>
;>2]>>2]|0)+63&-64;c[e>>2]=(c[(c[f>>2]|0)+12>>2]|0)-(c[(c[f>>2]|0)+4
>>2]|0)&-64;c[(c[f>>2]|0)+8>>2]=c[(c[f>>2]|0)+8>>2]&-64;c[(c[f>
x3e;2]|0)+12>>2]=(c[(c[f>>2]|0)+12>>2]|0)+63&-64;c[c[f>>2]>>2]=(c[g>
x3e;2]|0)-(c[(c[f>>2]|0)+8>>2]|0);c[(c[f>>2]|0)+4>>2]=(c[(c[f>>2]|0)+12>
x3e;2]|0)-(c[e>>2]|0);k=c[f>>2]|0;k=k+16|0;k=c[k>>2]|0;k=k+32|0;k=k&-64;j=c[f>>2]|0
;j=j+16|0;c[j>>2]=k;j=c[f>>2]|0;j=j+28|0;j=c[j>>2]|0;j=j+32|0;j=j&-64;k=c[f>>2]|0;k
=k+28|0;c[k>>2]=j;i=h;return}}function Ib(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;b=f+12|0;g=f+8|0;d=f+4|0;e=f;c
[b>>2]=a;c[g>>2]=c[(c[b>>2]|0)+4>>2];c[d>>2]=c[(c[(c[g>>2]|0)+96>
;>2]|0)+4>>2];c[e>>2]=c[(c[d>>2]|0)+164>>2];if(c[e>>2]|0?(c[(c[e>>
;2]|0)+24>>2]|0)==(c[(c[b>>2]|0)+72>>2]|0):0){g=c[e>>2]|0;i=f;return g|0}c[e>>
2]=Jb(c[d>>2]|0,c[(c[b>>2]|0)+72>>2]|0,0)|0;g=c[e>>2]|0;i=f;return g|0}function Jb(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;m=i;i=i+32|0;e=m+20|0;f=m+16|0;g=m+12|0;h=m+8|0;k=m+4|0;j=m;c[e>>
;2]=a;c[f>>2]=b;c[g>>2]=d;c[k>>2]=0;if(!(c[e>>2]|0)){l=c[k>>2]|0;i=m;return l|
0}c[h>>2]=c[(c[e>>2]|0)+156>>2];if(c[g>>2]|0){if(c[c[g>>2]>>2]|0)c[h
>>2]=c[(c[c[g>>2]>>2]|0)+4>>2];c[c[g>>2]>>2]=0}while(1){if(!(c[h>
;>2]|0)){l=12;break}c[j>>2]=c[(c[h>>2]|0)+8>>2];if((c[(c[j>>2]|0)+24>>2]|
0)==(c[f>>2]|0))break;c[h>>2]=c[(c[h>>2]|0)+4>>2]}if((l|0)==12){l=c[k>>2]|0;i=
m;return l|0}if(c[g>>2]|0)c[c[g>>2]>>2]=c[h>>2];c[k>>2]=c[j>>2];l=c[
k>>2]|0;i=m;return l|0}function Kb(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;
c[e>>2]=a;c[f>>2]=d;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=j;return}c[h>>
2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=(c[h>>2]|0)+(b[(c[e>>2]|0)+2>>1]<
;<3);while(1){if((c[h>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;Lb(c[h>
x3e;2]|0,c[f>>2]|0);c[h>>2]=(c[h>>2]|0)+8}i=j;return}function Lb(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;if(!((c[d>>2]|0)!=0&(c[
e>>2]|0)!=0)){i=h;return}a=Mb(c[c[d>>2]>>2]|0,c[c[e>>2]>>2]|0)|0;c[f>>
;2]=a+(Mb(c[(c[d>>2]|0)+4>>2]|0,c[(c[e>>2]|0)+4>>2]|0)|0);a=Mb(c[c[d>>2]>
x3e;2]|0,c[(c[e>>2]|0)+8>>2]|0)|0;c[g>>2]=a+(Mb(c[(c[d>>2]|0)+4>>2]|0,c[(c[e
x3e;>2]|0)+12>>2]|0)|0);c[c[d>>2]>>2]=c[f>>2];c[(c[d>>2]|0)+4>>
2]=c[g>>2];i=h;return}function Mb(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;l=i;i=i+32|0;f=l+24|0;d=l+20|0;
e=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;g=l;c[d>>2]=a;c[e>>2]=b;a=c[d>>2]|0;if((c[d>>2]|0)==0|(
c[e>>2]|0)==65536){c[f>>2]=a;k=c[f>>2]|0;i=l;return k|0}c[h>>2]=a;a=c[d>>2]|0;
c[d>>2]=(c[d>>2]|0)<0?0-a|0:a;c[h>>2]=c[h>>2]^c[e>>2];a=c[e>>2]|
0;c[e>>2]=(c[e>>2]|0)<0?0-a|0:a;c[j>>2]=c[d>>2];c[k>>2]=c[e>>2];
a=c[j>>2]|0;if((c[j>>2]|0)>>>0<=2048&(c[k>>2]|0)>>>0<=
1048576)c[j>>2]=((_(a,c[k>>2]|0)|0)+32768|0)>>>16;else{c[g>>2]=a&65535;e=_((c[
j>>2]|0)>>>16,c[k>>2]|0)|0;e=e+(_(c[g>>2]|0,(c[k>>2]|0)>>>
16)|0)|0;c[j>>2]=e+(((_(c[g>>2]|0,c[k>>2]&65535)|0)+32768|0)>>>16)}k=c[j>
x3e;2]|0;c[f>>2]=(c[h>>2]|0)<0?0-k|0:k;k=c[f>>2]|0;i=l;return k|0}function Nb(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;m=i;i=i+32|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m+16|0;l=m;c[g>>2]=a;c[h>>2]=d
;c[j>>2]=f;if(!(c[g>>2]|0)){i=m;return}c[l>>2]=c[(c[g>>2]|0)+4>>2];b[k>
x3e;1]=0;while(1){if((e[k>>1]|0)>=(b[(c[g>>2]|0)+2>>1]|0))break;f=c[l>>2]|0;c[f>
;>2]=(c[f>>2]|0)+(c[h>>2]|0);f=(c[l>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+(c[j
x3e;>2]|0);c[l>>2]=(c[l>>2]|0)+8;b[k>>1]=(b[k>>1]|0)+1<<16>>16}
i=m;return}function Ob(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[
f>>2]=b;if(c[e>>2]|0?c[(c[e>>2]|0)+4>>2]|0:0){c[g>>2]=c[(c[(c[(c[e>>
2]|0)+4>>2]|0)+96>>2]|0)+4>>2];c[d>>2]=Pb(c[g>>2]|0,c[e>>2]|0,c[f>
;>2]|0)|0;a=c[d>>2]|0;i=h;return a|0}c[d>>2]=6;a=c[d>>2]|0;i=h;return a|0}function Pb(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;o=i;i=i+32|0;g=o+20|0;h=o+16|0;j=o+12|0;k=o+8|0;m=o+4|0;l=o;n=o+24|0;c[g
x3e;>2]=b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=0;if((c[(c[h>>2]|0)+72>>2]|0)==1651078259
){n=c[k>>2]|0;i=o;return n|0}c[l>>2]=0;a[n>>0]=0;b=c[g>>2]|0;if((c[(c[h>>2]|0)+
72>>2]|0)==1869968492){c[m>>2]=c[b+164>>2];c[l>>2]=c[(c[g>>2]|0)+156>>
;2]}else c[m>>2]=Jb(b,c[(c[h>>2]|0)+72>>2]|0,l)|0;c[k>>2]=7;while(1){if(!(c[m>>
;2]|0))break;c[k>>2]=Wa[c[(c[m>>2]|0)+68>>2]&31](c[m>>2]|0,c[h>>2]|0,c[j
x3e;>2]|0,0)|0;if(!(c[k>>2]|0))break;if((c[k>>2]&255|0)!=19)break;c[m>>2]=Jb(c[g>
x3e;2]|0,c[(c[h>>2]|0)+72>>2]|0,l)|0;a[n>>0]=1}if(c[k>>2]|0){n=c[k>>2]|0;i=o;return
n|0}if(!((d[n>>0]|0|0)!=0&(c[m>>2]|0)!=0)){n=c[k>>2]|0;i=o;return n|0}Qb(c[g>>2]|0
,c[m>>2]|0,0,0)|0;n=c[k>>2]|0;i=o;return n|0}function Qb(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o+20|0;j=o+16|0;k=o+12|0;m=o+8|0;l=o+4|0;n=o;c[g>>2]=a;c[h>
;>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=0;if(!(c[g>>2]|0)){c[f>>2]=33;n=c[f>
;>2]|0;i=o;return n|0}if(!(c[h>>2]|0)){c[f>>2]=6;n=c[f>>2]|0;i=o;return n|0}c[m>>2]=
Rb((c[g>>2]|0)+156|0,c[h>>2]|0)|0;a:do if(c[m>>2]|0){Sb((c[g>>2]|0)+156|0,c[m>>
;2]|0);if((c[(c[h>>2]|0)+24>>2]|0)==1869968492)c[(c[g>>2]|0)+164>>2]=c[h>>2];if
((c[j>>2]|0)>>>0>0){c[n>>2]=c[(c[(c[h>>2]|0)+20>>2]|0)+52>>
;2];while(1){if((c[j>>2]|0)>>>0<=0)break a;c[l>>2]=Oa[c[n>>2]&63](c[h>
;>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0)|0;if(c[l>>2]|0)break a;c[j
x3e;>2]=(c[j>>2]|0)+-1}}}else c[l>>2]=6;while(0);c[f>>2]=c[l>>2];n=c[f>>2
]|0;i=o;return n|0}function Rb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;f=g+12|0;h=g+8|0;d=g+4|0;e=g;c[h>>
;2]=a;c[d>>2]=b;c[e>>2]=c[c[h>>2]>>2];while(1){if(!(c[e>>2]|0)){b=6;break}a=c[
e>>2]|0;if((c[(c[e>>2]|0)+8>>2]|0)==(c[d>>2]|0)){b=4;break}c[e>>2]=c[a+4>
x3e;2]}if((b|0)==4){c[f>>2]=a;h=c[f>>2]|0;i=g;return h|0}else if((b|0)==6){c[f>>2]=0;h=c[f>
x3e;2]|0;i=g;return h|0}return 0}function Sb(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;e=h+12|0;f=h+8|0;d=h+4|0;g=h;
c[e>>2]=a;c[f>>2]=b;c[d>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[f>>
2]|0)+4>>2];if(!(c[d>>2]|0)){i=h;return}c[(c[d>>2]|0)+4>>2]=c[g>>2];d=c[d>
;>2]|0;if(c[g>>2]|0)c[c[g>>2]>>2]=d;else c[(c[e>>2]|0)+4>>2]=d;c[c[f>
;>2]>>2]=0;c[(c[f>>2]|0)+4>>2]=c[c[e>>2]>>2];c[c[c[e>>2]>
x3e;2]>>2]=c[f>>2];c[c[e>>2]>>2]=c[f>>2];i=h;return}function Tb(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;if((c[d>>2]|0)>=0){d=a+32768&-65536;i=b;return
d|0}else{d=0-(0-a+32768&-65536)|0;i=b;return d|0}return 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;l=i;i=i+32|0;e=l+24|0;f=l+20|0;g=l+16|0;h=l+12|0;j=l+8|0;k=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if
(c[f>>2]|0?(c[g>>2]|0)!=(c[h>>2]|0):0){c[j>>2]=c[f>>2];d=c[f>>2]|0;c
[f>>2]=(c[f>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[g>>2];d=c[g>>2]|
0;c[g>>2]=(c[g>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[h>>2];d=c[h>>
2]|0;c[h>>2]=(c[h>>2]|0)<0?0-d|0:d;do if(!((c[f>>2]|0)<=46340&(c[g>>2]|0)
x3c;=46340&(c[h>>2]|0)>0))if((c[h>>2]|0)>0){yb(c[f>>2]|0,c[g>>2]|0,k);c[f
>>2]=Ab(c[k+4>>2]|0,c[k>>2]|0,c[h>>2]|0)|0;break}else{c[f>>2]=2147483647;break
}else{k=_(c[f>>2]|0,c[g>>2]|0)|0;c[f>>2]=(k|0)/(c[h>>2]|0)|0}while(0);k=c[f>>2
]|0;c[e>>2]=(c[j>>2]|0)<0?0-k|0:k;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=c[f>>
;2];k=c[e>>2]|0;i=l;return k|0}function Vb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+28|0;e=k+
24|0;g=k+20|0;f=k+16|0;h=k+8|0;j=k;c[d>>2]=a;c[e>>2]=b;c[g>>2]=c[d>>2];b=c[d>>
2]|0;c[d>>2]=(c[d>>2]|0)<0?0-b|0:b;c[g>>2]=c[g>>2]^c[e>>2];b=c[e>>
;2]|0;c[e>>2]=(c[e>>2]|0)<0?0-b|0:b;do if(c[e>>2]|0){a=c[d>>2]|0;if(!(c[d>>
;2]>>16)){c[f>>2]=(((a<<16)+(c[e>>2]>>1)|0)>>>0)/((c[e>>
;2]|0)>>>0)|0;break}else{c[h+4>>2]=a>>16;c[h>>2]=c[d>>2]<<16;c[
j+4>>2]=0;c[j>>2]=c[e>>2]>>1;zb(h,j,h);c[f>>2]=Ab(c[h+4>>2]|0,c[h>
;>2]|0,c[e>>2]|0)|0;break}}else c[f>>2]=2147483647;while(0);j=c[f>>2]|0;i=k;return ((c[g>
;>2]|0)<0?0-j|0:j)|0}function Wb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0;f=h+4|0;g
=h;c[d>>2]=a;if(!(c[d>>2]|0)){c[b>>2]=6;g=c[b>>2]|0;i=h;return g|0}a=Mb(c[c[d>>
;2]>>2]|0,c[(c[d>>2]|0)+12>>2]|0)|0;c[e>>2]=a-(Mb(c[(c[d>>2]|0)+4>>2
]|0,c[(c[d>>2]|0)+8>>2]|0)|0);if(c[e>>2]|0){a=0-(Vb(c[(c[d>>2]|0)+4>>2]|0,c[e
x3e;>2]|0)|0)|0;c[(c[d>>2]|0)+4>>2]=a;a=0-(Vb(c[(c[d>>2]|0)+8>>2]|0,c[e>>
2]|0)|0)|0;c[(c[d>>2]|0)+8>>2]=a;c[f>>2]=c[c[d>>2]>>2];c[g>>2]=c[(c[
d>>2]|0)+12>>2];g=Vb(c[g>>2]|0,c[e>>2]|0)|0;c[c[d>>2]>>2]=g;g=Vb(c[f
>>2]|0,c[e>>2]|0)|0;c[(c[d>>2]|0)+12>>2]=g;c[b>>2]=0;g=c[b>>2]|0;i=h
;return g|0}else{c[b>>2]=6;g=c[b>>2]|0;i=h;return g|0}return 0}function Xb(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;m=i;i=i+32|0;e=m+28|0;f=m+24|0;n=m+20|0;h=m+16|0;j=m+12|0;k=m+8|0;l=m+4|0;g=m;c[e>>2]=
a;c[f>>2]=b;c[n>>2]=d;c[g>>2]=c[n>>2]<<16;if(!((c[e>>2]|0)!=0&(
c[f>>2]|0)!=0)){i=m;return}n=xb(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0,c[g>>
;2]|0)|0;c[h>>2]=n+(xb(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>
x3e;2]|0)|0);n=xb(c[c[e>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0;c[j>
x3e;2]=n+(xb(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);n=xb(c
[(c[e>>2]|0)+8>>2]|0,c[c[f>>2]>>2]|0,c[g>>2]|0)|0;c[k>>2]=n+(xb(c[(c
[e>>2]|0)+12>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>>2]|0)|0);n=xb(c[(c[e>>
2]|0)+8>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0;c[l>>2]=n+(xb(c[(c[e>>
;2]|0)+12>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);c[c[f>>2]>>2]=c
[h>>2];c[(c[f>>2]|0)+4>>2]=c[j>>2];c[(c[f>>2]|0)+8>>2]=c[k>>
;2];c[(c[f>>2]|0)+12>>2]=c[l>>2];i=m;return}function Yb(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;k=i;i=i+32|0;e=k+20|0;f=k+16|0;l=k+12|0;h=k+8|0;j=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[l>>
;2]=d;c[g>>2]=c[l>>2]<<16;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=k;return
}l=xb(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0,c[g>>2]|0)|0;c[h>>2]=l+(xb(c[(
c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0);l=xb(c[c[e>>2
]>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>>2]|0)|0;c[j>>2]=l+(xb(c[(c[e>>2]|
0)+4>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);c[c[e>>2]>>2]=c[h>
;>2];c[(c[e>>2]|0)+4>>2]=c[j>>2];i=k;return}function Zb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,
j=0;j=i;i=i+32|0;b=j+20|0;g=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;d=j;c[b>>2]=a;c[g>>2]=0;if((c[b>>2]|0)
x3c;=0){a=c[g>>2]|0;i=j;return a|0}c[e>>2]=0;c[f>>2]=c[b>>2];c[d>>2]=24;do{c[e
>>2]=c[e>>2]<<2|(c[f>>2]|0)>>>30;c[f>>2]=c[f>>2]<
;<2;c[g>>2]=c[g>>2]<<1;c[h>>2]=(c[g>>2]<<1)+1;if((c[e>>
;2]|0)>>>0>=(c[h>>2]|0)>>>0){c[e>>2]=(c[e>>2]|0)-(c[h>>
;2]|0);c[g>>2]=(c[g>>2]|0)+1}a=(c[d>>2]|0)+-1|0;c[d>>2]=a}while((a|0)!=0);a=c[g>>
;2]|0;i=j;return a|0}function _b(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;n=i;i=i+48|0;f=n+32|0;k=n+
28|0;g=n+24|0;l=n+20|0;m=n+16|0;h=n+8|0;j=n;c[f>>2]=a;c[k>>2]=b;c[g>>2]=d;c[l>>2]=e;b=c[
f>>2]|0;do if(!(c[k>>2]|0)){a=c[l>>2]|0;if((b|0)>=0){c[m>>2]=a;break}else{c[m>
x3e;2]=0-a;break}}else{if(!b){a=c[g>>2]|0;if((c[k>>2]|0)>=0){c[m>>2]=0-a;break}else{c[m>
x3e;2]=a;break}}b=c[g>>2]|0;if(!(c[l>>2]|0)){a=c[k>>2]|0;if((b|0)>=0){c[m>>2]=a;break
}else{c[m>>2]=0-a;break}}if(!b){a=c[f>>2]|0;if((c[l>>2]|0)>=0){c[m>>2]=0-a;break}else
{c[m>>2]=a;break}}yb(c[f>>2]|0,c[l>>2]|0,h);yb(c[k>>2]|0,c[g>>2]|0,j);if((c[h+
4>>2]|0)>>>0>(c[j+4>>2]|0)>>>0){c[m>>2]=1;break}if((c[h+4>
x3e;2]|0)>>>0<(c[j+4>>2]|0)>>>0){c[m>>2]=-1;break}if((c[h>>2]|0
)>>>0>(c[j>>2]|0)>>>0){c[m>>2]=1;break}if((c[h>>2]|0)>>
;>0<(c[j>>2]|0)>>>0){c[m>>2]=-1;break}else{c[m>>2]=0;break}}while(0);i=n;
return c[m>>2]|0}function $b(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;p=i;i=i+48|0
;f=p+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;n=p+8|0;o=p+4|0;m=p;c[f>>2]=a;c[g>>2]=b;c[h>>
;2]=d;c[j>>2]=e;c[k>>2]=c[f>>2];c[l>>2]=c[g>>2];if((c[k>>2]|0)<
0)c[k>>2]=0-(c[k>>2]|0);if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>>2]|0);c[n>
x3e;2]=(c[k>>2]|0)+(c[l>>2]|0);c[k>>2]=c[h>>2];if((c[k>>2]|0)<0)c[k>
x3e;2]=0-(c[k>>2]|0);c[l>>2]=c[j>>2];if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>
;>2]|0);c[o>>2]=(c[k>>2]|0)+(c[l>>2]|0);c[k>>2]=(c[h>>2]|0)+(c[f>>
;2]|0);if((c[k>>2]|0)<0)c[k>>2]=0-(c[k>>2]|0);c[l>>2]=(c[j>>2]|0)+(c[g>
;>2]|0);if((c[l>>2]|0)>=0){e=c[k>>2]|0;d=c[l>>2]|0;d=e+d|0;c[m>>2]=d;d=c[n>
;>2]|0;e=c[o>>2]|0;e=d+e|0;d=c[m>>2]|0;d=e-d|0;e=c[m>>2]|0;e=e>>4;e=(d|0)<(e|0
);e=e&1;i=p;return e|0}c[l>>2]=0-(c[l>>2]|0);e=c[k>>2]|0;d=c[l>>2]|0;d=e+d|0;c[m>
;>2]=d;d=c[n>>2]|0;e=c[o>>2]|0;e=d+e|0;d=c[m>>2]|0;d=e-d|0;e=c[m>>2]|0;e=e>>
;4;e=(d|0)<(e|0);e=e&1;i=p;return e|0}function ac(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;d=h+12|0;e=h+8
|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[g>>2]=bc(c[d>>2]|0,96,f)|0;if(c
[f>>2]|0){a=c[f>>2]|0;i=h;return a|0}c[c[g>>2]>>2]=c[d>>2];c[c[e>>2]
x3e;>2]=c[g>>2];a=c[f>>2]|0;i=h;return a|0}function bc(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;k=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[k>>2]=a;c[e>>2]=b;c[f>>2]=d;c[g>>
;2]=cc(c[k>>2]|0,c[e>>2]|0,h)|0;if((c[h>>2]|0)==0&(c[e>>2]|0)>0)Ns(c[g>
x3e;2]|0,0,c[e>>2]|0)|0;c[c[f>>2]>>2]=c[h>>2];i=j;return c[g>>2]|0}function cc
(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;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f
>>2]=b;c[g>>2]=d;c[j>>2]=0;c[h>>2]=0;if((c[f>>2]|0)>0){c[h>>2]=
Ya[c[(c[e>>2]|0)+4>>2]&127](c[e>>2]|0,c[f>>2]|0)|0;if(!(c[h>>2]|0))c[j>
;>2]=64}else if((c[f>>2]|0)<0)c[j>>2]=6;c[c[g>>2]>>2]=c[j>>2];i=k;return
c[h>>2]|0}function dc(a){a=a|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[d>>
;2]=(c[g>>2]|0)+20;c[e>>2]=(c[g>>2]|0)+56;b[(c[d>>2]|0)+2>>1]=0;b[c[d>>
;2]>>1]=0;c[(c[d>>2]|0)+28>>2]=0;a=c[e>>2]|0;d=c[d>>2]|0;e=a+36|0;do{c[a>
x3e;2]=c[d>>2];a=a+4|0;d=d+4|0}while((a|0)<(e|0));i=f;return}function ec(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];Fb(c[e>>2]|0,c[(c[d>>2]|0)+
20+4>>2]|0);c[(c[d>>2]|0)+20+4>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+8>>
;2]|0);c[(c[d>>2]|0)+20+8>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+12>>2]|0);c[(c[d
>>2]|0)+20+12>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+20>>2]|0);c[(c[d>>
2]|0)+20+20>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+32>>2]|0);c[(c[d>>2]|0)+20+32
x3e;>2]=0;c[(c[d>>2]|0)+20+24>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+8
>>2]=0;c[(c[d>>2]|0)+12>>2]=0;dc(c[d>>2]|0);i=b;return}function fc(a){a=a|0;var b=0,d=0,
e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(!(c[b>>2]|0)){i=e;return}c[d>>2]=c[c[b>>2]>
;>2];ec(c[b>>2]|0);Fb(c[d>>2]|0,c[b>>2]|0);c[b>>2]=0;i=e;return}function gc(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[g>>2]=c[c[d>>2]>>2];b
=hc(c[g>>2]|0,8,0,c[(c[d>>2]|0)+4>>2]<<1,0,e)|0;c[(c[d>>2]|0)+20+20>>
;2]=b;if(c[e>>2]|0){g=c[e>>2]|0;i=f;return g|0}a[(c[d>>2]|0)+16>>0]=1;c[(c[d>>
2]|0)+20+24>>2]=(c[(c[d>>2]|0)+20+20>>2]|0)+(c[(c[d>>2]|0)+4>>2]<<3);
jc(c[d>>2]|0);g=c[e>>2]|0;i=f;return g|0}function hc(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;o=i;i=i+32|0;p=o+24|0;h=o+20|0;j=o+16|0;k=o+12|0;l=o+8|0;m=o+4|0;n=o;c[p>>2]=a;c[h>
x3e;2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=0;c[l>>2]=ic
(c[p>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,n)|0;if((c[n>>2]|
0)==0?(c[k>>2]|0)>(c[j>>2]|0):0){p=(c[l>>2]|0)+(_(c[j>>2]|0,c[h>>2]|0)|0)|
0;Ns(p|0,0,_((c[k>>2]|0)-(c[j>>2]|0)|0,c[h>>2]|0)|0)|0}c[c[m>>2]>>2]=c[n>
x3e;2];i=o;return c[l>>2]|0}function ic(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;s=i;i=i+48|0;h=s+36|0;j=s+32|0;k=s+28|0;l=s+24|0;m=s+20|0;n=s+16|0;q=s+12|0;o=s+8|0;p=s+4|0;r=s;c[h>>
;2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[q>>2]=0;do
if(!((c[k>>2]|0)<0|(c[l>>2]|0)<0|(c[j>>2]|0)<0)){if((c[l>>2]|0)==0|(c[j
x3e;>2]|0)==0){Fb(c[h>>2]|0,c[m>>2]|0);c[m>>2]=0;break}if((c[l>>2]|0)>(2147483647
/(c[j>>2]|0)|0|0)){c[q>>2]=10;break}if(!(c[k>>2]|0)){c[m>>2]=bc(c[h>>2]|0,_(c[
l>>2]|0,c[j>>2]|0)|0,q)|0;break}c[p>>2]=_(c[k>>2]|0,c[j>>2]|0)|0;c[r>>
;2]=_(c[l>>2]|0,c[j>>2]|0)|0;c[o>>2]=Wa[c[(c[h>>2]|0)+12>>2]&31](c[h>
;>2]|0,c[p>>2]|0,c[r>>2]|0,c[m>>2]|0)|0;if(!(c[o>>2]|0)){c[q>>2]=64;break
}else{c[m>>2]=c[o>>2];break}}else c[q>>2]=6;while(0);c[c[n>>2]>>2]=c[q>
x3e;2];i=s;return c[m>>2]|0}function jc(d){d=d|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
]=d;c[f>>2]=(c[e>>2]|0)+20;c[h>>2]=(c[e>>2]|0)+56;c[(c[h>>2]|0)+4>>2
]=(c[(c[f>>2]|0)+4>>2]|0)+(b[(c[f>>2]|0)+2>>1]<<3);c[(c[h>>2]|0)+8
x3e;>2]=(c[(c[f>>2]|0)+8>>2]|0)+(b[(c[f>>2]|0)+2>>1]|0);c[(c[h>>2]|0)+12
x3e;>2]=(c[(c[f>>2]|0)+12>>2]|0)+(b[c[f>>2]>>1]<<1);if(!(a[(c[e>>
;2]|0)+16>>0]|0)){i=g;return}c[(c[e>>2]|0)+56+20>>2]=(c[(c[e>>2]|0)+20+20>>2]|
0)+(b[(c[f>>2]|0)+2>>1]<<3);c[(c[e>>2]|0)+56+24>>2]=(c[(c[e>>2]|0)+20
+24>>2]|0)+(b[(c[f>>2]|0)+2>>1]<<3);i=g;return}function kc(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,s=0,t=0;s=i;i=i+48|0;g=s+36|0;h=s+32|0;t=s+28|0;j=s+24|0;o=s+20|0;n=s+16|0;l=s+12|0;
m=s+8|0;k=s+40|0;p=s+4|0;q=s;c[h>>2]=d;c[t>>2]=e;c[j>>2]=f;c[o>>2]=c[c[h>>2]
x3e;>2];c[n>>2]=0;c[l>>2]=(c[h>>2]|0)+20;c[m>>2]=(c[h>>2]|0)+56;a[k>
x3e;0]=0;c[p>>2]=(b[(c[l>>2]|0)+2>>1]|0)+(b[(c[m>>2]|0)+2>>1]|0)+(c[t>>
;2]|0);c[q>>2]=c[(c[h>>2]|0)+4>>2];do if((c[p>>2]|0)>>>0>(c[q>
x3e;2]|0)>>>0){c[p>>2]=(c[p>>2]|0)+7&-8;if((c[p>>2]|0)>>>0>
;32767){c[g>>2]=10;t=c[g>>2]|0;i=s;return t|0}t=hc(c[o>>2]|0,8,c[q>>2]|0,c[p>>
2]|0,c[(c[l>>2]|0)+4>>2]|0,n)|0;c[(c[l>>2]|0)+4>>2]=t;if((c[n>>2]|0)==0?(t=hc(
c[o>>2]|0,1,c[q>>2]|0,c[p>>2]|0,c[(c[l>>2]|0)+8>>2]|0,n)|0,c[(c[l>>2
]|0)+8>>2]=t,(c[n>>2]|0)==0):0){if(a[(c[h>>2]|0)+16>>0]|0){t=hc(c[o>>2]|0,8,c[
q>>2]<<1,c[p>>2]<<1,c[(c[h>>2]|0)+20+20>>2]|0,n)|0;c[(c[h>>
;2]|0)+20+20>>2]=t;if(c[n>>2]|0)break;Ts((c[(c[h>>2]|0)+20+20>>2]|0)+(c[p>>2]
x3c;<3)|0,(c[(c[h>>2]|0)+20+20>>2]|0)+(c[q>>2]<<3)|0,c[q>>2]<<3
|0)|0;c[(c[h>>2]|0)+20+24>>2]=(c[(c[h>>2]|0)+20+20>>2]|0)+(c[p>>2]<<
3)}a[k>>0]=1;c[(c[h>>2]|0)+4>>2]=c[p>>2];r=10}}else r=10;while(0);a:do if((r|0)==10){c[q
>>2]=c[(c[h>>2]|0)+8>>2];c[p>>2]=(b[c[l>>2]>>1]|0)+(b[c[m>>
;2]>>1]|0)+(c[j>>2]|0);do if((c[p>>2]|0)>>>0>(c[q>>2]|0)>>
x3e;0){c[p>>2]=(c[p>>2]|0)+3&-4;if((c[p>>2]|0)>>>0>32767){c[g>>
2]=10;t=c[g>>2]|0;i=s;return t|0}else{t=hc(c[o>>2]|0,2,c[q>>2]|0,c[p>>2]|0,c[(c[l>
x3e;2]|0)+12>>2]|0,n)|0;c[(c[l>>2]|0)+12>>2]=t;if(c[n>>2]|0)break a;a[k>>0]=1;
c[(c[h>>2]|0)+8>>2]=c[p>>2];break}}while(0);if(a[k>>0]|0)jc(c[h>>2]|0)}while(0
);c[g>>2]=c[n>>2];t=c[g>>2]|0;i=s;return t|0}function lc(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;d=k+28|0;l=k+24|0;g=k+20|0;f=k+16|0;h=k+12|0;j=k+8|0;e=k+4|0;m=k;c[d>>2]=a;c[l>>
;2]=b;c[g>>2]=c[c[d>>2]>>2];c[f>>2]=0;c[e>>2]=(c[d>>2]|0)+20;c[m>
;>2]=(c[d>>2]|0)+56;c[h>>2]=(c[(c[e>>2]|0)+28>>2]|0)+(c[(c[m>>2]|0)+28>
;>2]|0)+(c[l>>2]|0);c[j>>2]=c[(c[d>>2]|0)+12>>2];if((c[h>>2]|0)>>
;>0<=(c[j>>2]|0)>>>0){m=c[f>>2]|0;i=k;return m|0}c[h>>2]=(c[h>>
2]|0)+1&-2;m=hc(c[g>>2]|0,32,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+32>>2]|0,f
)|0;c[(c[e>>2]|0)+32>>2]=m;if(c[f>>2]|0){m=c[f>>2]|0;i=k;return m|0}c[(c[d>>2]|
0)+12>>2]=c[h>>2];mc(c[d>>2]|0);m=c[f>>2]|0;i=k;return m|0}function mc(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+4|0;d=b;c[f>>2]=a;c[e>>2]=(c[f>>2]|0)+20;c[d>>2]=(c
[f>>2]|0)+56;c[(c[d>>2]|0)+32>>2]=(c[(c[e>>2]|0)+32>>2]|0)+(c[(c[e>>
2]|0)+28>>2]<<5);i=b;return}function nc(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;c[f>>2]=(c[e>>2]|0)+56;b[(c[f>>2]|0)+2>>1]=0;b[c[f>>2]>>1]=0;c[(c[
f>>2]|0)+28>>2]=0;jc(c[e>>2]|0);mc(c[e>>2]|0);i=d;return}function oc(a){a=a|0;var d=0,e=
0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[d>>2]=a;if(!(c[d>>2]|0)){
i=k;return}c[e>>2]=(c[d>>2]|0)+20;c[f>>2]=(c[d>>2]|0)+56;c[j>>2]=b[c[f>
x3e;2]>>1];c[h>>2]=b[(c[e>>2]|0)+2>>1];b[(c[e>>2]|0)+2>>1]=(b[(c[e
x3e;>2]|0)+2>>1]|0)+(b[(c[f>>2]|0)+2>>1]|0);b[c[e>>2]>>1]=(b[c[e>>
;2]>>1]|0)+(b[c[f>>2]>>1]|0);a=(c[e>>2]|0)+28|0;c[a>>2]=(c[a>>2]|0)+(
c[(c[f>>2]|0)+28>>2]|0);c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[j
x3e;>2]|0)>>>0)break;b[(c[(c[f>>2]|0)+12>>2]|0)+(c[g>>2]<<1)>
x3e;1]=(b[(c[(c[f>>2]|0)+12>>2]|0)+(c[g>>2]<<1)>>1]|0)+(c[h>>2]|0);c
[g>>2]=(c[g>>2]|0)+1}nc(c[d>>2]|0);i=k;return}function pc(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,j=0,k=0
,l=0,m=0,n=0;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;l=n+12|0;k=n+8|0;m=n+4|0;j=n;c[f>>2]=a;c[g>>2]=e;c[l>
;>2]=b[(c[g>>2]|0)+20+2>>1];c[k>>2]=b[(c[g>>2]|0)+20>>1];c[h>>2
]=kc(c[f>>2]|0,c[l>>2]|0,c[k>>2]|0)|0;if(c[h>>2]|0){a=c[h>>2]|0;i=n;return a|0
}c[m>>2]=(c[f>>2]|0)+20;c[j>>2]=(c[g>>2]|0)+20;Ss(c[(c[m>>2]|0)+4>>2
]|0,c[(c[j>>2]|0)+4>>2]|0,c[l>>2]<<3|0)|0;Ss(c[(c[m>>2]|0)+8>>2]|0,c
[(c[j>>2]|0)+8>>2]|0,c[l>>2]|0)|0;Ss(c[(c[m>>2]|0)+12>>2]|0,c[(c[j>>
2]|0)+12>>2]|0,c[k>>2]<<1|0)|0;if(d[(c[f>>2]|0)+16>>0]|0?d[(c[g>>2]|
0)+16>>0]|0:0){Ss(c[(c[f>>2]|0)+20+20>>2]|0,c[(c[g>>2]|0)+20+20>>2]|0,c[l>
;>2]<<3|0)|0;Ss(c[(c[f>>2]|0)+20+24>>2]|0,c[(c[g>>2]|0)+20+24>>2]|0,c[l
x3e;>2]<<3|0)|0}b[(c[m>>2]|0)+2>>1]=c[l>>2];b[c[m>>2]>>1]=c[k
x3e;>2];jc(c[f>>2]|0);a=c[h>>2]|0;i=n;return a|0}function qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;h=i;i=i+16|0;j=h+12|0;d=h+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=0;c[e>>2]=c[j
x3e;>2];if(!((c[e>>2]|0)!=0&(c[d>>2]|0)!=0)){j=c[f>>2]|0;i=h;return j|0}while(1){if(!(c[
c[e>>2]>>2]|0)){g=6;break}j=(Kr(c[c[e>>2]>>2]|0,c[d>>2]|0)|0)==0;a=c[e>
x3e;2]|0;if(j)break;c[e>>2]=a+8}if((g|0)==6){j=c[f>>2]|0;i=h;return j|0}c[f>>2]=c[a+4>>2
];j=c[f>>2]|0;i=h;return j|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;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;c[c[g>>2]>
x3e;2]=c[k>>2];c[(c[g>>2]|0)+4>>2]=c[j>>2];c[(c[g>>2]|0)+8>>2]=c[h
x3e;>2];c[(c[g>>2]|0)+12>>2]=0;i=f;return}function sc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d
+8|0;f=d+4|0;c[e>>2]=a;c[f>>2]=b;c[d>>2]=(c[e>>2]|0)+16;c[(c[e>>2]|0)+12>
x3e;2]=c[f>>2];ta(c[d>>2]|0,1)}function tc(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;m=i;
i=i+32|0;h=m+24|0;e=m+20|0;f=m+16|0;j=m+12|0;k=m+8|0;g=m+4|0;l=m;c[e>>2]=a;c[f>>2]=b;c[j>>2]=d;c[c
[j>>2]>>2]=0;if(!(c[e>>2]|0)){c[h>>2]=33;l=c[h>>2]|0;i=m;return l|0}if(!(c[f
x3e;>2]|0)){c[h>>2]=6;l=c[h>>2]|0;i=m;return l|0}c[g>>2]=c[c[e>>2]>>2];c[
l>>2]=bc(c[g>>2]|0,40,k)|0;if(!(c[k>>2]|0)){c[(c[l>>2]|0)+28>>2]=c[g>>
;2];do if(c[c[f>>2]>>2]&1|0)uc(c[l>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[(c[f>
;>2]|0)+8>>2]|0);else{if(c[c[f>>2]>>2]&4|0){c[k>>2]=qr(c[l>>2]|0,c[(
c[f>>2]|0)+12>>2]|0)|0;c[(c[l>>2]|0)+16>>2]=c[(c[f>>2]|0)+12>>2];break
}if(c[c[f>>2]>>2]&2|0?c[(c[f>>2]|0)+16>>2]|0:0){Fb(c[g>>2]|0,c[l>>
;2]|0);c[l>>2]=0;c[l>>2]=c[(c[f>>2]|0)+16>>2];break}c[k>>2]=6}while(0);e=c[g
x3e;>2]|0;f=c[l>>2]|0;if(c[k>>2]|0){Fb(e,f);c[l>>2]=0}else c[f+28>>2]=e;c[c[j>
x3e;2]>>2]=c[l>>2]}c[h>>2]=c[k>>2];l=c[h>>2]|0;i=m;return l|0}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;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]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2];c[(c[f>
x3e;2]|0)+8>>2]=0;c[(c[f>>2]|0)+32>>2]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>
x3e;2]|0)+24>>2]=0;i=e;return}function vc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=a;c[e>>2]=b;if(!(c[d>>2]|0)){i=g;return}c[f>>2]=c[(c[d>>2]|0)+28>>2];
wc(c[d>>2]|0);if(c[e>>2]|0){i=g;return}Fb(c[f>>2]|0,c[d>>2]|0);c[d>>2]=0;i=g;return
}function wc(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)){i=d;return}if(!(c[(c[b>
x3e;2]|0)+24>>2]|0)){i=d;return}Va[c[(c[b>>2]|0)+24>>2]&63](c[b>>2]|0);i=d;return}function
xc(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c
[g>>2]=c[(c[(c[d>>2]|0)+4>>2]|0)+100>>2];if(c[(c[(c[d>>2]|0)+156>>2]|
0)+4>>2]&1|0){Fb(c[g>>2]|0,c[(c[d>>2]|0)+76+12>>2]|0);c[(c[d>>2]|0)+76+12
>>2]=0}else{a=(c[(c[d>>2]|0)+156>>2]|0)+4|0;c[a>>2]=c[a>>2]|1}a=bc(c[g>
x3e;2]|0,c[e>>2]|0,f)|0;c[(c[d>>2]|0)+76+12>>2]=a;i=h;return c[f>>2]|0}function yc(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;m=i;i=i+32|0;d=m+28|0;e=m+24|0;f=m+20|0;j=m+16|0;h=m+12|0;g=m+8|0;k=m+4|0;l=
m;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0?c[(c[e>>2]|0)+96>>2]|0:0){c[h>>2]=
c[(c[e>>2]|0)+96>>2];c[g>>2]=c[(c[h>>2]|0)+20>>2];c[k>>2]=c[(c[h>
;>2]|0)+8>>2];c[l>>2]=bc(c[k>>2]|0,c[(c[g>>2]|0)+44>>2]|0,j)|0;do if(c[j
x3e;>2]|0){if(c[f>>2]|0)c[c[f>>2]>>2]=0}else{c[(c[l>>2]|0)+4>>2]=c[e>
;>2];c[j>>2]=zc(c[l>>2]|0)|0;if(c[j>>2]|0){Ac(c[l>>2]|0);Fb(c[k>>2]|0,c[l
>>2]|0);c[l>>2]=0;break}c[(c[l>>2]|0)+8>>2]=c[(c[e>>2]|0)+84>>2];c[(
c[e>>2]|0)+84>>2]=c[l>>2];if(c[f>>2]|0)c[c[f>>2]>>2]=c[l>>
2]}while(0);c[d>>2]=c[j>>2];l=c[d>>2]|0;i=m;return l|0}c[d>>2]=6;l=c[d>>2]|0;i
=m;return l|0}function zc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;b=j+20|0;e=j+16|0;d=j+12|0;h=j+8|0;f=j+4|0;g=j;c
[b>>2]=a;c[e>>2]=c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2];c[d>>2]=c[(c[e>
;>2]|0)+20>>2];c[h>>2]=c[(c[e>>2]|0)+8>>2];c[f>>2]=0;c[g>>2]=0;
c[c[b>>2]>>2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=bc(c[h>>2]|0,40,f)|0;if(c[
f>>2]|0){a=c[f>>2]|0;i=j;return a|0}c[(c[b>>2]|0)+156>>2]=c[g>>2];if(!(c[c[c[e
>>2]>>2]>>2]&512))c[f>>2]=ac(c[h>>2]|0,c[g>>2]|0)|0;if(c[f>
;>2]|0){a=c[f>>2]|0;i=j;return a|0}if(!(c[(c[d>>2]|0)+64>>2]|0)){a=c[f>>2]|0;i=j;return
a|0}c[f>>2]=Ta[c[(c[d>>2]|0)+64>>2]&63](c[b>>2]|0)|0;a=c[f>>2]|0;i=j;return
a|0}function Ac(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;d=g+4|0;f=g;c[b>>2]=a;c[e>>2
]=c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2];c[d>>2]=c[(c[e>>2]|0)+20>>2];c[f
x3e;>2]=c[(c[e>>2]|0)+8>>2];if(c[(c[d>>2]|0)+68>>2]|0)Va[c[(c[d>>2]|0)+68
>>2]&63](c[b>>2]|0);Eb(c[b>>2]|0);if(!(c[(c[b>>2]|0)+156>>2]|0)){i=g;return
}if(!(c[c[c[e>>2]>>2]>>2]&512)){fc(c[c[(c[b>>2]|0)+156>>2]>>2]|
0);c[c[(c[b>>2]|0)+156>>2]>>2]=0}Fb(c[f>>2]|0,c[(c[b>>2]|0)+156>>2]|
0);c[(c[b>>2]|0)+156>>2]=0;i=g;return}function Bc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+
16|0;d=j+12|0;g=j+8|0;h=j+4|0;b=j;c[f>>2]=a;if(!(c[f>>2]|0)){i=j;return}c[d>>2]=c[(c[(c[f>>
;2]|0)+4>>2]|0)+96>>2];c[g>>2]=c[(c[d>>2]|0)+8>>2];c[h>>2]=0;c[b>
;>2]=c[(c[(c[f>>2]|0)+4>>2]|0)+84>>2];while(1){if(!(c[b>>2]|0)){e=10;break}if((c[b
x3e;>2]|0)==(c[f>>2]|0))break;c[h>>2]=c[b>>2];c[b>>2]=c[(c[b>>2]|0)+8>
;>2]}if((e|0)==10){i=j;return}b=c[(c[b>>2]|0)+8>>2]|0;if(c[h>>2]|0)c[(c[h>>2]|0)+8
x3e;>2]=b;else c[(c[(c[f>>2]|0)+4>>2]|0)+84>>2]=b;Ac(c[f>>2]|0);Fb(c[g>>2
]|0,c[f>>2]|0);c[f>>2]=0;i=j;return}function Cc(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;e=k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[f>>2]|0
)){c[e>>2]=35;d=c[e>>2]|0;i=k;return d|0}c[j>>2]=c[g>>2];if(c[(c[f>>2]|0)+92
x3e;>2]|0)c[j>>2]=Dc(c[f>>2]|0,c[g>>2]|0)|0;c[e>>2]=Cb(c[f>>2]|0,c[j>
;>2]|0,c[h>>2]|0)|0;d=c[e>>2]|0;i=k;return d|0}function Dc(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;if(!(c[d>>2]|0)){g=
c[g>>2]|0;i=h;return g|0}if(!(c[(c[d>>2]|0)+92>>2]|0)){g=c[g>>2]|0;i=h;return g|0}c[f>
;>2]=c[(c[d>>2]|0)+92>>2];c[g>>2]=Ya[c[(c[(c[f>>2]|0)+12>>2]|0)+12>
x3e;2]&127](c[f>>2]|0,c[e>>2]|0)|0;g=c[g>>2]|0;i=h;return g|0}function Ec(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;m=i;i=i+64|0;f=m+48|0;g=m+44|0;h=m+40|0;j=m+36|0;k=m+32|0;l=m;c[g>>2]=a;
c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(c[h>>2]|0){c[l>>2]=4;c[l+12>>2]=c[h
>>2];c[l+16>>2]=0;c[f>>2]=Fc(c[g>>2]|0,l,c[j>>2]|0,c[k>>2]|0)|0;b=c[
f>>2]|0;i=m;return b|0}else{c[f>>2]=6;b=c[f>>2]|0;i=m;return b|0}return 0}function Fc(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;G=i;i=i
+96|0;C=G+80|0;j=G+76|0;k=G+72|0;l=G+68|0;D=G+64|0;E=G+60|0;o=G+56|0;u=G+52|0;B=G+48|0;q=G+44|0;v=G+40|0;p=G+84|0;n=G+36|0;t=G+32
|0;w=G+28|0;y=G+24|0;x=G+20|0;z=G+16|0;A=G+12|0;r=G+8|0;m=G+4|0;s=G;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;
c[D>>2]=h;c[B>>2]=0;c[q>>2]=0;c[v>>2]=0;if(!(((c[D>>2]|0)==0&(c[l>
x3e;2]|0)>=0^1)&(c[k>>2]|0)!=0)){c[C>>2]=6;F=c[C>>2]|0;i=G;return F|0}if(c[c[k>>
;2]>>2]&2|0)h=(c[(c[k>>2]|0)+16>>2]|0)!=0;else h=0;a[p>>0]=h&1;c[E>>
2]=tc(c[j>>2]|0,c[k>>2]|0,B)|0;a:do if(!(c[E>>2]|0)){c[u>>2]=c[c[j>>2]>
x3e;2];do if(c[c[k>>2]>>2]&8|0?c[(c[k>>2]|0)+20>>2]|0:0){c[o>>2]=c[(c[k
x3e;>2]|0)+20>>2];if(c[c[c[o>>2]>>2]>>2]&1|0){c[w>>2]=0;c[y>>
;2]=0;if(c[c[k>>2]>>2]&16|0){c[w>>2]=c[(c[k>>2]|0)+24>>2];c[y>>
2]=c[(c[k>>2]|0)+28>>2]}c[E>>2]=Gc(c[o>>2]|0,c[B>>2]|0,c[l>>2]|0,c[w
>>2]|0,c[y>>2]|0,q)|0;if(!(c[E>>2]|0))break}else c[E>>2]=32;vc(c[B>>2]|0,d[p
x3e;>0]|0);F=60;break a}else F=14;while(0);b:do if((F|0)==14){c[n>>2]=(c[j>>2]|0)+28;c[t>>2]=(
c[n>>2]|0)+(c[(c[j>>2]|0)+24>>2]<<2);while(1){if((c[n>>2]|0)>>>
0>=(c[t>>2]|0)>>>0){F=27;break a}if(c[c[c[c[n>>2]>>2]>>2]>>
;2]&1|0){c[x>>2]=0;c[z>>2]=0;c[o>>2]=c[c[n>>2]>>2];if(c[c[k>>2]
x3e;>2]&16|0){c[x>>2]=c[(c[k>>2]|0)+24>>2];c[z>>2]=c[(c[k>>2]|0)+28
x3e;>2]}c[E>>2]=Gc(c[o>>2]|0,c[B>>2]|0,c[l>>2]|0,c[x>>2]|0,c[z>>
;2]|0,q)|0;if(!(c[E>>2]|0))break b;if((Kr(c[(c[c[c[n>>2]>>2]>>2]|0)+8>>2]|0,10489
)|0)==0?(c[E>>2]&255|0)==142:0){if(Kc(c[B>>2]|0,0)|0){F=27;break a}c[E>>2]=Lc(c[j>>
2]|0,c[B>>2]|0,c[l>>2]|0,c[x>>2]|0,c[z>>2]|0,c[D>>2]|0)|0;if(!(c[E>>
2]|0))break}if((c[E>>2]&255|0)!=2){F=27;break a}}c[n>>2]=(c[n>>2]|0)+4}vc(c[B>>2]|0
,d[p>>0]|0);c[C>>2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}while(0);if(a[p>>0]|0){
B=(c[q>>2]|0)+8|0;c[B>>2]=c[B>>2]|1024}c[v>>2]=bc(c[u>>2]|0,12,E)|0;if(!(c[E
x3e;>2]|0)){c[(c[v>>2]|0)+8>>2]=c[q>>2];td((c[(c[q>>2]|0)+96>>2]|0)+24|0,
c[v>>2]|0);if((c[l>>2]|0)>=0){c[E>>2]=yc(c[q>>2]|0,0)|0;if(c[E>>2]|0){F=60
;break}c[E>>2]=ud(c[q>>2]|0,A)|0;if(c[E>>2]|0){F=60;break}c[(c[q>>2]|0)+88>>2]=
c[A>>2]}if(c[(c[q>>2]|0)+8>>2]&1|0){if((b[(c[q>>2]|0)+74>>1]|0)<0)b[(
c[q>>2]|0)+74>>1]=0-(b[(c[q>>2]|0)+74>>1]|0);if(!(c[(c[q>>2]|0)+8>>2
]&32))b[(c[q>>2]|0)+78>>1]=b[(c[q>>2]|0)+74>>1]|0}c:do if(c[(c[q>>2]|0)+8
>>2]&2|0){c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[(c[q>>2]|0)+28>>2]|0
))break c;c[m>>2]=(c[(c[q>>2]|0)+32>>2]|0)+(c[r>>2]<<4);if((b[c[m>>2
]>>1]|0)<0)b[c[m>>2]>>1]=0-(b[c[m>>2]>>1]|0);if((c[(c[m>>2]|0)+
8>>2]|0)<0)c[(c[m>>2]|0)+8>>2]=(0-(c[(c[m>>2]|0)+8>>2]|0)&65535)<
;<16>>16;if((c[(c[m>>2]|0)+12>>2]|0)<0)c[(c[m>>2]|0)+12>>2]=0-(c[(c[
m>>2]|0)+12>>2]|0);c[r>>2]=(c[r>>2]|0)+1}}while(0);c[s>>2]=c[(c[q>>2
]|0)+128>>2];c[(c[s>>2]|0)+4>>2]=65536;c[(c[s>>2]|0)+4+4>>2]=0;c[(c[s>>
;2]|0)+4+8>>2]=0;c[(c[s>>2]|0)+4+12>>2]=65536;c[(c[s>>2]|0)+20>>2]=0;c[(c[s>
;>2]|0)+20+4>>2]=0;c[(c[s>>2]|0)+60>>2]=1;h=c[q>>2]|0;if(c[D>>2]|0){c[c[D
>>2]>>2]=h;break}else{vd(h)|0;break}}else F=60}else F=27;while(0);if((F|0)==27){if(!(((c[E>>2]&
;255|0)!=81?(c[E>>2]&255|0)!=2:0)?(c[E>>2]&255|0)!=85:0))F=30;do if((F|0)==30){c[E>>2]=Xc
(c[j>>2]|0,c[B>>2]|0,c[l>>2]|0,c[D>>2]|0,c[k>>2]|0)|0;if(c[E>>2]|0){
if((c[E>>2]&255|0)!=2)break;c[E>>2]=2;break}else{vc(c[B>>2]|0,d[p>>0]|0);c[C>
x3e;2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}}while(0);vc(c[B>>2]|0,d[p>>0]|0);F=60}if((F|0
)==60)vd(c[q>>2]|0)|0;c[C>>2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}function Gc(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;v=i;i=i+64|0;h=v+48|0;j=v+44|0
;k=v+40|0;l=v+36|0;m=v+32|0;n=v+28|0;u=v+24|0;o=v+20|0;r=v+16|0;p=v+12|0;q=v+8|0;t=v+4|0;s=v;c[h>>2]=a;c[j>>
2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[r>>2]=0;c[t>>2]=0;c[o
>>2]=c[(c[h>>2]|0)+20>>2];c[u>>2]=c[(c[h>>2]|0)+8>>2];c[r>>
;2]=bc(c[u>>2]|0,c[(c[o>>2]|0)+36>>2]|0,p)|0;do if((c[p>>2]|0)==0?(c[t>>2]=bc(
c[u>>2]|0,64,p)|0,(c[p>>2]|0)==0):0){c[(c[r>>2]|0)+128>>2]=c[t>>2];c[(c[r>
;>2]|0)+96>>2]=c[h>>2];c[(c[r>>2]|0)+100>>2]=c[u>>2];c[(c[r>>2]|
0)+104>>2]=c[j>>2];c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]=0;c[s>>2]=0;while
(1){if((c[s>>2]|0)>=(c[l>>2]|0))break;if(!((c[(c[(c[r>>2]|0)+128>>2]|0)+52>>
;2]|0)!=0^1))break;if((c[(c[m>>2]|0)+(c[s>>2]<<3)>>2]|0)==1768842098)c[(c[(c[r>>
;2]|0)+128>>2]|0)+52>>2]=c[(c[m>>2]|0)+(c[s>>2]<<3)+4>>2];c[s>
x3e;2]=(c[s>>2]|0)+1}if(c[(c[o>>2]|0)+48>>2]|0)c[p>>2]=Za[c[(c[o>>2]|0)+48>
;>2]&31](c[j>>2]|0,c[r>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(!(c
[p>>2]|0)){c[q>>2]=Hc(c[r>>2]|0)|0;if((c[q>>2]|0)!=0&(c[q>>2]|0)!=38){c[p
>>2]=c[q>>2];break}else{c[c[n>>2]>>2]=c[r>>2];break}}}while(0);if(!(c[p>
x3e;2]|0)){b=c[p>>2]|0;i=v;return b|0}Ic(c[r>>2]|0,c[u>>2]|0);if(c[(c[o>>2]|0)+52>
x3e;2]|0)Va[c[(c[o>>2]|0)+52>>2]&63](c[r>>2]|0);Fb(c[u>>2]|0,c[t>>2]|0);c
[t>>2]=0;Fb(c[u>>2]|0,c[r>>2]|0);c[r>>2]=0;c[c[n>>2]>>2]=0;b=c[p>
;>2]|0;i=v;return b|0}function Hc(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;b=j+12|0;d=j+8|0;g=j+4|0;f=j;c[d>
x3e;2]=a;c[g>>2]=c[(c[d>>2]|0)+40>>2];if(!(c[g>>2]|0)){c[b>>2]=38;h=c[b>
x3e;2]|0;i=j;return h|0}c[f>>2]=(c[g>>2]|0)+(c[(c[d>>2]|0)+36>>2]<<2);while(1){
a=(c[f>>2]|0)+-4|0;c[f>>2]=a;if(a>>>0<(c[g>>2]|0)>>>0)break;if((
c[(c[c[f>>2]>>2]|0)+4>>2]|0)!=1970170211)continue;if(!((e[(c[c[f>>2]>>2]|0)+8
x3e;>1]|0|0)==3?(e[(c[c[f>>2]>>2]|0)+10>>1]|0|0)==10:0)){if(e[(c[c[f>>2]>>
;2]|0)+8>>1]|0|0)continue;if((e[(c[c[f>>2]>>2]|0)+10>>1]|0|0)!=4)continue}if((((c[f>
;>2]|0)-(c[g>>2]|0)|0)/4|0|0)<=15){h=11;break}}if((h|0)==11){c[(c[d>>2]|0)+92>>2]=c[c[f
x3e;>2]>>2];c[b>>2]=0;h=c[b>>2]|0;i=j;return h|0}c[f>>2]=(c[g>>2]|0)+(c[(
c[d>>2]|0)+36>>2]<<2);while(1){h=(c[f>>2]|0)+-4|0;c[f>>2]=h;if(h>>
x3e;0<(c[g>>2]|0)>>>0){h=17;break}if((c[(c[c[f>>2]>>2]|0)+4>>2]|0)!=
1970170211)continue;if((((c[f>>2]|0)-(c[g>>2]|0)|0)/4|0|0)<=15){h=16;break}}if((h|0)==16){c[(c[d>
x3e;2]|0)+92>>2]=c[c[f>>2]>>2];c[b>>2]=0;h=c[b>>2]|0;i=j;return h|0}else if((h
|0)==17){c[b>>2]=38;h=c[b>>2]|0;i=j;return h|0}return 0}function Ic(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;if(!(c[d>>2]|0)){i=h;return}c[g>
;>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[d>>2]|0)+36>>2]|0))break;c[f>>2]=c[(c[(c
[d>>2]|0)+40>>2]|0)+(c[g>>2]<<2)>>2];Jc(c[f>>2]|0);c[(c[(c[d>
x3e;2]|0)+40>>2]|0)+(c[g>>2]<<2)>>2]=0;c[g>>2]=(c[g>>2]|0)+1}Fb(c[e
x3e;>2]|0,c[(c[d>>2]|0)+40>>2]|0);c[(c[d>>2]|0)+40>>2]=0;c[(c[d>>2]|0)+36
>>2]=0;i=h;return}function Jc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;b=f+12|0;d=f+8|0;g=f+4|0;e=f;c[b>>
;2]=a;c[d>>2]=c[(c[b>>2]|0)+12>>2];c[g>>2]=c[c[b>>2]>>2];c[e>
x3e;2]=c[(c[g>>2]|0)+100>>2];if(!(c[(c[d>>2]|0)+8>>2]|0)){e=c[e>>2]|0;g=c[b>
;>2]|0;Fb(e,g);c[b>>2]=0;i=f;return}Va[c[(c[d>>2]|0)+8>>2]&63](c[b>>2]|0);e=c[
e>>2]|0;g=c[b>>2]|0;Fb(e,g);c[b>>2]=0;i=f;return}function Kc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;
g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;if(c[(c[d>>2]|0)+20>
x3e;2]|0){if(Wa[c[(c[d>>2]|0)+20>>2]&31](c[d>>2]|0,c[e>>2]|0,0,0)|0)c[f>>
2]=85}else if((c[e>>2]|0)>>>0>(c[(c[d>>2]|0)+4>>2]|0)>>>0)c[f
x3e;>2]=85;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[(c[d>>2]|0)+8>>2]=c[e>
x3e;2];a=c[f>>2]|0;i=g;return a|0}function Lc(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0
,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;w=i;i=i+64|0;j=w+52|0;k=w+48|0;l=w+44|0;m=w+40|0;y=w+36|0;x=w+32|0;n=w+28|0;o=w+24|
0;s=w+20|0;t=w+16|0;r=w+12|0;u=w+8|0;q=w+56|0;v=w+4|0;p=w;c[k>>2]=a;c[l>>2]=b;c[m>>2]=e;c[y>
x3e;2]=f;c[x>>2]=g;c[n>>2]=h;c[s>>2]=c[c[k>>2]>>2];c[y>>2]=c[y>
x3e;2];c[x>>2]=c[x>>2];c[u>>2]=Mc(c[l>>2]|0)|0;c[o>>2]=Nc(c[l>>2]|0,
c[m>>2]|0,t,r,q)|0;if((((c[o>>2]|0)==0?(Kc(c[l>>2]|0,(c[u>>2]|0)+(c[t>>2]|0)|0
)|0)==0:0)?(c[v>>2]=bc(c[s>>2]|0,c[r>>2]|0,o)|0,(c[o>>2]|0)==0):0)?(c[o>>2]=Rc
(c[l>>2]|0,c[v>>2]|0,c[r>>2]|0)|0,(c[o>>2]|0)==0):0)c[o>>2]=Tc(c[k>>
2]|0,c[v>>2]|0,c[r>>2]|0,(c[m>>2]|0)<0?c[m>>2]|0:0,d[q>>0]|0|0?10406:10410
,c[n>>2]|0)|0;if((c[o>>2]|0)==2?(c[p>>2]=Kc(c[l>>2]|0,c[u>>2]|0)|0,c[p>
x3e;2]|0):0){c[j>>2]=c[p>>2];y=c[j>>2]|0;i=w;return y|0}c[j>>2]=c[o>>2];y=c[j
x3e;>2]|0;i=w;return y|0}function Mc(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 Nc(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;v=i;i=i+48|0;t=v+36|0;k=v+32|0;l=v+28|0;m=v+24|0;n=v+20|0;o=v+16|0;u=v+12|0;q=v+40|0;r=v+8|0;s=v+4|0;p=v;c[k>>2]=d;c
[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[c[m>>2]>>2]=0;c[c[n>
x3e;2]>>2]=0;a[c[o>>2]>>0]=0;c[s>>2]=Oc(c[k>>2]|0,u)|0;if(c[u>>2]|0){
c[t>>2]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}if((c[s>>2]|0)!=1954115633){c[t>>2]=
2;u=c[t>>2]|0;i=v;return u|0}b[q>>1]=Pc(c[k>>2]|0,u)|0;if(c[u>>2]|0){c[t>>2]=c
[u>>2];u=c[t>>2]|0;i=v;return u|0}d=Qc(c[k>>2]|0,6)|0;c[u>>2]=d;if(d|0){c[t>>2
]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}c[r>>2]=-1;a[c[o>>2]>>0]=0;c[p>>
;2]=0;while(1){if((c[p>>2]|0)>=(e[q>>1]|0|0)){k=26;break}c[s>>2]=Oc(c[k>>2]|0,u)|0;
if(c[u>>2]|0){k=15;break}d=Qc(c[k>>2]|0,4)|0;c[u>>2]=d;if(d|0){k=15;break}d=Oc(c[k>>2]|0
,u)|0;c[c[m>>2]>>2]=d;if(c[u>>2]|0){k=15;break}d=Oc(c[k>>2]|0,u)|0;c[c[n>>2]
x3e;>2]=d;if(c[u>>2]|0){k=15;break}if((c[s>>2]|0)==1128875040){c[r>>2]=(c[r>>2]|0)+
1;d=c[m>>2]|0;c[d>>2]=(c[d>>2]|0)+22;d=c[n>>2]|0;c[d>>2]=(c[d>>2]|0)-
22;a[c[o>>2]>>0]=1;if((c[l>>2]|0)<0){k=18;break}}else if((c[s>>2]|0)==1415139377?(c
[r>>2]=(c[r>>2]|0)+1,d=c[m>>2]|0,c[d>>2]=(c[d>>2]|0)+24,d=c[n>>2]|0,
c[d>>2]=(c[d>>2]|0)-24,a[c[o>>2]>>0]=0,(c[l>>2]|0)<0):0){k=21;break}if((c
[l>>2]|0)>=0?(c[r>>2]|0)==(c[l>>2]|0):0){k=24;break}c[p>>2]=(c[p>>2]|0)+1
}if((k|0)==15){c[t>>2]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}else if((k|0)==18){c[t>>2]=0;u
=c[t>>2]|0;i=v;return u|0}else if((k|0)==21){c[t>>2]=0;u=c[t>>2]|0;i=v;return u|0}else if((k|0)==24
){c[t>>2]=0;u=c[t>>2]|0;i=v;return u|0}else if((k|0)==26){c[t>>2]=142;u=c[t>>2]|0;i=v;return
u|0}return 0}function Oc(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;k=m+20|0;j=m+4
|0;l=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=0;c[l>>2]=0;c[c[h>>2]>>2]=0;do if
(((c[(c[g>>2]|0)+8>>2]|0)+3|0)>>>0<(c[(c[g>>2]|0)+4>>2]|0)>>
;>0){e=c[g>>2]|0;if(c[(c[g>>2]|0)+20>>2]|0){if((Wa[c[e+20>>2]&31](c[g>>
;2]|0,c[(c[g>>2]|0)+8>>2]|0,k,4)|0)!=4)break;c[j>>2]=k}else c[j>>2]=(c[e>>2]|0
)+(c[(c[g>>2]|0)+8>>2]|0);if(c[j>>2]|0){c[j>>2]=(c[j>>2]|0)+4;c[l>>2
]=a[(c[j>>2]|0)+-4>>0]<<24|d[(c[j>>2]|0)+-4+1>>0]<<16|d[(c[j>
x3e;2]|0)+-4+2>>0]<<8|d[(c[j>>2]|0)+-4+3>>0]<<0}k=(c[g>>2]|0)+8|0;c[
k>>2]=(c[k>>2]|0)+4;c[f>>2]=c[l>>2];l=c[f>>2]|0;i=m;return l|0}while(0);c[c[h
x3e;>2]>>2]=85;c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}function Pc(e,f){e=e|0;f=f|0;var g=0,h=0,
j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;g=n+14|0;h=n+8|0;j=n+4|0;l=n+16|0;k=n;m=n+12|0;c[h>>2]=e;c[j>>2]=f;c[k>
;>2]=0;b[m>>1]=0;c[c[j>>2]>>2]=0;do if(((c[(c[h>>2]|0)+8>>2]|0)+1|0)>
;>>0<(c[(c[h>>2]|0)+4>>2]|0)>>>0){f=c[h>>2]|0;if(c[(c[h>>2
]|0)+20>>2]|0){if((Wa[c[f+20>>2]&31](c[h>>2]|0,c[(c[h>>2]|0)+8>>2]|0,l,2)|
0)!=2)break;c[k>>2]=l}else c[k>>2]=(c[f>>2]|0)+(c[(c[h>>2]|0)+8>>2]|0);if(c[k
x3e;>2]|0){c[k>>2]=(c[k>>2]|0)+2;b[m>>1]=a[(c[k>>2]|0)+-2>>0]<<
16>>16<<8|d[(c[k>>2]|0)+-2+1>>0]<<0}l=(c[h>>2]|0)+8|0;c[l>>
;2]=(c[l>>2]|0)+2;b[g>>1]=b[m>>1]|0;m=b[g>>1]|0;i=n;return m|0}while(0);c[c[j>>
;2]>>2]=85;b[g>>1]=0;m=b[g>>1]|0;i=n;return m|0}function Qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g
=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)<0){c[d>>2]=85;a=
c[d>>2]|0;i=g;return a|0}else{c[d>>2]=Kc(c[e>>2]|0,(c[(c[e>>2]|0)+8>>2]|0)+(c[
f>>2]|0)|0)|0;a=c[d>>2]|0;i=g;return a|0}return 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+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=Sc(c[h>>2]|0,c[(c[h>
;>2]|0)+8>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function Sc(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g>>2]=
a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=0;if((c[h>>2]|0)>>>0>
;=(c[(c[g>>2]|0)+4>>2]|0)>>>0){c[f>>2]=85;m=c[f>>2]|0;i=n;return m|0}d=c[
g>>2]|0;if(c[(c[g>>2]|0)+20>>2]|0)c[m>>2]=Wa[c[d+20>>2]&31](c[g>>
;2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;else{c[m>>2]=(c[d+4>>2]|0)-(c[h>
x3e;2]|0);if((c[m>>2]|0)>>>0>(c[k>>2]|0)>>>0)c[m>>2]=c[k>
x3e;2];Ss(c[j>>2]|0,(c[c[g>>2]>>2]|0)+(c[h>>2]|0)|0,c[m>>2]|0)|0}c[(c[g>
x3e;2]|0)+8>>2]=(c[h>>2]|0)+(c[m>>2]|0);if((c[m>>2]|0)>>>0<(c[k>
;>2]|0)>>>0)c[l>>2]=85;c[f>>2]=c[l>>2];m=c[f>>2]|0;i=n;return m|0}function
Tc(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;s=i;i=i+80|0;h=s+72|0;j
=s+68|0;k=s+64|0;t=s+60|0;l=s+56|0;m=s+52|0;n=s+48|0;o=s+16|0;p=s+8|0;r=s+4|0;q=s;c[j>>2]=a;c[k>>2]=b;c[t>
;>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[r>>2]=0;c[q>>2]=c[c[j>>2
]>>2];c[p>>2]=Vc(c[j>>2]|0,c[k>>2]|0,c[t>>2]|0,33,r)|0;if(c[p>>2]|0){
Fb(c[q>>2]|0,c[k>>2]|0);c[k>>2]=0;c[h>>2]=c[p>>2];t=c[h>>2]|0;i=s;return
t|0}c[o>>2]=2;c[o+16>>2]=c[r>>2];if(c[m>>2]|0){c[o>>2]=c[o>>2]|8;c[
o+20>>2]=Wc(c[j>>2]|0,c[m>>2]|0)|0}c[p>>2]=Fc(c[j>>2]|0,o,c[l>>2]|0,
c[n>>2]|0)|0;if(!(c[p>>2]|0)){t=(c[c[n>>2]>>2]|0)+8|0;c[t>>2]=c[t>>2
]&-1025}else{wc(c[r>>2]|0);Fb(c[q>>2]|0,c[r>>2]|0);c[r>>2]=0}c[h>>2]=c[p
x3e;>2];t=c[h>>2]|0;i=s;return t|0}function Uc(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]|0)+28>>2];Fb(c[e>>2]|0,c[c[d>>2]>>2]|0);c[c[d
>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;c[(c[d>>2
]|0)+24>>2]=0;i=b;return}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,j=0,k=0,l=0,m=0,n=0,o=0,p=0,
q=0;q=i;i=i+48|0;g=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;l=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;p=q;c[h>>2]=a;c[j>>2]=
b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;if(!(c[h>>2]|0)){c[g>>2]=33;p=c[g>>2
]|0;i=q;return p|0}if(!(c[j>>2]|0)){c[g>>2]=6;p=c[g>>2]|0;i=q;return p|0}c[c[m>>2]>
x3e;2]=0;c[o>>2]=c[c[h>>2]>>2];c[p>>2]=bc(c[o>>2]|0,40,n)|0;if(!(c[n>>
;2]|0)){uc(c[p>>2]|0,c[j>>2]|0,c[k>>2]|0);c[(c[p>>2]|0)+24>>2]=c[l>>
2];c[c[m>>2]>>2]=c[p>>2]}c[g>>2]=c[n>>2];p=c[g>>2]|0;i=q;return p|0}
function Wc(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;l=i;i=i+32|0;e=l+20|0;d=l+16|0;f=l+12|0;j=l+8|0;g=l+4|0;h=l;c[d
>>2]=a;c[f>>2]=b;c[j>>2]=0;if(!((c[d>>2]|0)!=0&(c[f>>2]|0)!=0)){c[e>
x3e;2]=c[j>>2];k=c[e>>2]|0;i=l;return k|0}c[g>>2]=(c[d>>2]|0)+28;c[h>>2]=(c[g
x3e;>2]|0)+(c[(c[d>>2]|0)+24>>2]<<2);while(1){if((c[g>>2]|0)>>>0>
;=(c[h>>2]|0)>>>0)break;b=(Kr(c[(c[c[c[g>>2]>>2]>>2]|0)+8>>2]|0
,c[f>>2]|0)|0)==0;d=c[g>>2]|0;if(b){k=6;break}c[g>>2]=d+4}if((k|0)==6)c[j>>2]=c[d>
x3e;2];c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|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;n=i;i=i+32|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g>>2]=a;c[h>
x3e;2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[l>>2]=c[l>>2];c[m>>2]=Yc(c[
g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;if((c[m>>2]&255|0)==2)c[m>
x3e;2]=Zc(c[g>>2]|0,c[h>>2]|0,0,c[j>>2]|0,c[k>>2]|0)|0;if((c[m>>2]&255|0)!=
2?(c[m>>2]&255|0)!=85:0){b=c[m>>2]|0;i=n;return b|0}if(!(c[c[l>>2]>>2]&4)){b=c
[m>>2]|0;i=n;return b|0}c[m>>2]=dd(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>
;2]|0,c[l>>2]|0)|0;b=c[m>>2]|0;i=n;return b|0}function Yc(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;q=i;i=i+160|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;l=q+12|0;o=q+32|0;n=q+8|0;m=q+4|0;p=q;c[h>>
;2]=a;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;if(!(c[j>>2]|0)){c[g>>2]=85;b=c[g>>
;2]|0;i=q;return b|0}c[n>>2]=Kc(c[j>>2]|0,0)|0;if((c[n>>2]|0)==0?(c[n>>2]=Rc(c[j>
x3e;2]|0,o,128)|0,(c[n>>2]|0)==0):0){if(((((((d[o>>0]|0|0)==0?(d[o+74>>0]|0|0)==0:0)?(d[o+82>
x3e;0]|0|0)==0:0)?d[o+1>>0]|0|0:0)?(d[o+1>>0]|0|0)<=33:0)?(d[o+63>>0]|0|0)==0:0)?(d[o+(2+(d[o
+1>>0]|0))>>0]|0|0)==0:0){c[m>>2]=(d[o+83>>0]|0)<<24|(d[o+84>>0]|0)
x3c;<16|(d[o+85>>0]|0)<<8|(d[o+86>>0]|0);c[p>>2]=128+((c[m>>2]|0)+127&
;-128);c[g>>2]=Zc(c[h>>2]|0,c[j>>2]|0,c[p>>2]|0,c[k>>2]|0,c[l>>2]|0)|
0;b=c[g>>2]|0;i=q;return b|0}c[g>>2]=2;b=c[g>>2]|0;i=q;return b|0}c[g>>2]=c[n>>
;2];b=c[g>>2]|0;i=q;return b|0}function Zc(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;t=i;i=i+64|0;g=t+48|0;h=t+44|0;j=t+40|0;u=t+36|0;k=t+32|0;l=t+28|0;r=t+24|0;o=t+20|0;q=t+16|0;s=t+12|0
;n=t+8|0;m=t+4|0;p=t;c[h>>2]=a;c[j>>2]=b;c[u>>2]=d;c[k>>2]=e;c[l>>2]=f;c[r>
;>2]=c[c[h>>2]>>2];c[o>>2]=_c(c[h>>2]|0,c[j>>2]|0,c[u>>2]|0,q,s
)|0;if(c[o>>2]|0){c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return u|0}c[o>>2]=$c(c[h>
;>2]|0,c[j>>2]|0,c[q>>2]|0,c[s>>2]|0,1347375956,n,m)|0;f=c[h>>2]|0;e=c[j>>
;2]|0;if(!(c[o>>2]|0)){c[o>>2]=bd(f,e,c[n>>2]|0,c[m>>2]|0,c[k>>2]|0,c[l>
x3e;2]|0)|0;Fb(c[r>>2]|0,c[n>>2]|0);c[n>>2]=0;if(!(c[o>>2]|0))c[c[c[l>>2]>
;>2]>>2]=1;c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return u|0}c[o>>2]=$c(f,e,c[q
x3e;>2]|0,c[s>>2]|0,1936092788,n,m)|0;if((c[o>>2]|0)==0?(c[p>>2]=(c[k>>2]|0)%(c[m
x3e;>2]|0)|0,c[o>>2]=cd(c[h>>2]|0,c[j>>2]|0,c[n>>2]|0,c[m>>2]|0,c[p>
x3e;2]|0,c[l>>2]|0)|0,Fb(c[r>>2]|0,c[n>>2]|0),c[n>>2]=0,(c[o>>2]|0)==0):0)c[c[
c[l>>2]>>2]>>2]=c[m>>2];c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return
u|0}function _c(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;x=
i;i=i+96|0;j=x+48|0;y=x+44|0;k=x+40|0;l=x+36|0;m=x+32|0;n=x+28|0;q=x+24|0;r=x+72|0;s=x+56|0;u=x+20|0;v=x+16|0;p=x+12|0;o=x+8|0;t
=x+4|0;w=x;c[y>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[y>>2]=
c[y>>2];c[q>>2]=Kc(c[k>>2]|0,c[l>>2]|0)|0;if(c[q>>2]|0){c[j>>2]=c[q
x3e;>2];y=c[j>>2]|0;i=x;return y|0}c[q>>2]=Rc(c[k>>2]|0,r,16)|0;if(c[q>>2]|0){c[j
x3e;>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}c[c[n>>2]>>2]=(c[l>>2]|0)+((d[
r>>0]|0)<<24|(d[r+1>>0]|0)<<16|(d[r+2>>0]|0)<<8|(d[r+3>>0]|
0));c[u>>2]=(c[l>>2]|0)+((d[r+4>>0]|0)<<24|(d[r+5>>0]|0)<<16|(d[r+6
x3e;>0]|0)<<8|(d[r+7>>0]|0));c[v>>2]=(d[r+8>>0]|0)<<24|(d[r+9>>
0]|0)<<16|(d[r+10>>0]|0)<<8|(d[r+11>>0]|0);if(((c[c[n>>2]>>2]|0)+(c[
v>>2]|0)|0)==(c[u>>2]|0)?(c[u>>2]|0)!=(c[l>>2]|0):0){c[q>>2]=Kc(c[k>>
;2]|0,c[u>>2]|0)|0;if(c[q>>2]|0){c[j>>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}a[
s+15>>0]=(d[r+15>>0]|0)+1;c[q>>2]=Rc(c[k>>2]|0,s,16)|0;if(c[q>>2]|0){c[j>
x3e;2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}c[p>>2]=1;c[o>>2]=1;c[t>>2]=0;while(
1){if((c[t>>2]|0)>=16)break;if(d[s+(c[t>>2]|0)>>0]|0|0)c[p>>2]=0;if((d[s+(c[t>
x3e;2]|0)>>0]|0|0)!=(d[r+(c[t>>2]|0)>>0]|0|0))c[o>>2]=0;c[t>>2]=(c[t>>
;2]|0)+1}if(!((c[p>>2]|0)!=0|(c[o>>2]|0)!=0)){c[j>>2]=2;y=c[j>>2]|0;i=x;return y|0}c[q
x3e;>2]=Qc(c[k>>2]|0,8)|0;c[w>>2]=(Pc(c[k>>2]|0,q)|0)&65535;if(c[q>>2]|0){c[j
x3e;>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}if((c[w>>2]|0)==-1){c[j>>2]=2;y=c[j>
;>2]|0;i=x;return y|0}c[q>>2]=Kc(c[k>>2]|0,(c[u>>2]|0)+(c[w>>2]|0)|0)|0;if(c[q>
;>2]|0){c[j>>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}else{c[c[m>>2]>>2]=(c[
u>>2]|0)+(c[w>>2]|0);c[j>>2]=0;y=c[j>>2]|0;i=x;return y|0}}c[j>>2]=2;y=c[j>
;>2]|0;i=x;return y|0}function $c(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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=i;i=i+80|0;o=C+72|0;D=C+68|0;p=C+64|0;q=C+60|0;r=C+56|0;k=C+52|0;s=C+48|0;
t=C+44|0;u=C+40|0;m=C+36|0;v=C+32|0;l=C+28|0;A=C+24|0;n=C+20|0;z=C+16|0;w=C+12|0;B=C+8|0;x=C+4|0;y=C;c[D>>2]=a;c[p>
;>2]=d;c[q>>2]=e;c[r>>2]=f;c[k>>2]=g;c[s>>2]=h;c[t>>2]=j;c[w>>2
]=c[c[D>>2]>>2];c[u>>2]=Kc(c[p>>2]|0,c[q>>2]|0)|0;if(c[u>>2]|0){c[o
x3e;>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[l>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if
(c[u>>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[l>>2]=(c[l>>
;2]|0)+1;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[l>>2]|0)){k=30;break}c[n>>2]=Oc(c[p
x3e;>2]|0,u)|0;if(c[u>>2]|0){k=10;break}c[A>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if(c[u>
x3e;2]|0){k=10;break}c[z>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if(c[u>>2]|0){k=10;break}if((c[n>
x3e;2]|0)==(c[k>>2]|0)){k=12;break}c[m>>2]=(c[m>>2]|0)+1}if((k|0)==10){c[o>>2]=c[u>
x3e;2];D=c[o>>2]|0;i=C;return D|0}else if((k|0)==12){c[c[t>>2]>>2]=(c[A>>2]|0)+1;c[z>
;>2]=(c[z>>2]|0)+(c[q>>2]|0);c[u>>2]=Kc(c[p>>2]|0,c[z>>2]|0)|0;if(c[u>
;>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[y>>2]=hc(c[w>>2]|0,8
,0,c[c[t>>2]>>2]|0,0,u)|0;if(c[u>>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;
i=C;return D|0}c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[c[t>>2]>>2]|0)){k=23;break}D=Pc
(c[p>>2]|0,u)|0;b[(c[y>>2]|0)+(c[v>>2]<<3)>>1]=D;if(c[u>>2]|0)break;
D=Qc(c[p>>2]|0,2)|0;c[u>>2]=D;if(D|0)break;c[B>>2]=Oc(c[p>>2]|0,u)|0;if(c[u>>2
]|0)break;D=Qc(c[p>>2]|0,4)|0;c[u>>2]=D;if(D|0)break;c[(c[y>>2]|0)+(c[v>>2]<<3
)+4>>2]=c[B>>2]&16777215;c[v>>2]=(c[v>>2]|0)+1}if((k|0)==23?(Bs(c[y>>2]|0
,c[c[t>>2]>>2]|0,8,102),c[x>>2]=hc(c[w>>2]|0,4,0,c[c[t>>2]>>2]|0,0,u
)|0,(c[u>>2]|0)==0):0){c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[c[t>>2]>>2]|
0))break;c[(c[x>>2]|0)+(c[v>>2]<<2)>>2]=(c[r>>2]|0)+(c[(c[y>>2]|0)+(
c[v>>2]<<3)+4>>2]|0);c[v>>2]=(c[v>>2]|0)+1}c[c[s>>2]>>2]=c
[x>>2];c[u>>2]=0}Fb(c[w>>2]|0,c[y>>2]|0);c[y>>2]=0;c[o>>2]=c[u>
x3e;2];D=c[o>>2]|0;i=C;return D|0}else if((k|0)==30){c[o>>2]=1;D=c[o>>2]|0;i=C;return D|0}return 0
}function ad(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=b;do if
((e[c[f>>2]>>1]|0|0)>=(e[c[g>>2]>>1]|0|0))if((e[c[f>>2]>>1]|0|0
)>(e[c[g>>2]>>1]|0|0)){c[d>>2]=1;break}else{c[d>>2]=0;break}else c[d>>2]=-
1;while(0);i=h;return c[d>>2]|0}function bd(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,C=0,D=0;D=i;i=i+80|0;j=D+72|0;k=D+68|0;l=D+64|0;m=D+60|0;n=D+56|0;o=D+52|
0;p=D+48|0;q=D+44|0;u=D+40|0;v=D+36|0;s=D+32|0;B=D+28|0;r=D+24|0;t=D+20|0;w=D+16|0;y=D+12|0;x=D+8|0;z=D+4|0;A=D;c[k>>2
]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;c[q>>2]=1;c[u
x3e;>2]=c[c[k>>2]>>2];if((c[o>>2]|0)==-1)c[o>>2]=0;if(c[o>>2]|0){c[j>
;>2]=c[q>>2];C=c[j>>2]|0;i=D;return C|0}c[w>>2]=0;c[s>>2]=0;while(1){if((c[s>
x3e;2]|0)>=(c[n>>2]|0)){C=10;break}c[q>>2]=Kc(c[l>>2]|0,c[(c[m>>2]|0)+(c[s>>
;2]<<2)>>2]|0)|0;if(c[q>>2]|0)break;c[A>>2]=Oc(c[l>>2]|0,q)|0;if(c[q>>
;2]|0)break;c[w>>2]=(c[w>>2]|0)+((c[A>>2]|0)+6);c[s>>2]=(c[s>>2]|0)+1}a:do if((
C|0)==10?(c[v>>2]=bc(c[u>>2]|0,(c[w>>2]|0)+2|0,q)|0,(c[q>>2]|0)==0):0){a[c[v>>
2]>>0]=-128;a[(c[v>>2]|0)+1>>0]=1;a[(c[v>>2]|0)+2>>0]=0;a[(c[v>>2]|0
)+3>>0]=0;a[(c[v>>2]|0)+4>>0]=0;a[(c[v>>2]|0)+5>>0]=0;c[y>>2]=6;c[x
x3e;>2]=2;c[t>>2]=0;c[B>>2]=1;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[n>>
;2]|0)){C=31;break}c[q>>2]=Kc(c[l>>2]|0,c[(c[m>>2]|0)+(c[s>>2]<<2)>>
2]|0)|0;if(c[q>>2]|0)break;c[z>>2]=Oc(c[l>>2]|0,q)|0;if(c[q>>2]|0)break a;c[r>>
;2]=(Pc(c[l>>2]|0,q)|0)&65535;if(c[q>>2]|0)break a;if(c[r>>2]>>8|0){if((c[z>
x3e;2]|0)>2)c[z>>2]=(c[z>>2]|0)-2;else c[z>>2]=0;if((c[r>>2]>>8|0)==(c[B
x3e;>2]|0))c[t>>2]=(c[t>>2]|0)+(c[z>>2]|0);else{if(((c[x>>2]|0)+3|0)>((c[w>
;>2]|0)+2|0))break;a[(c[v>>2]|0)+(c[x>>2]|0)>>0]=c[t>>2];a[(c[v>>2]|0)+((
c[x>>2]|0)+1)>>0]=c[t>>2]>>8;a[(c[v>>2]|0)+((c[x>>2]|0)+2)>>
;0]=c[t>>2]>>16;a[(c[v>>2]|0)+((c[x>>2]|0)+3)>>0]=c[t>>2]>>
;24;if((c[r>>2]>>8|0)==5){C=31;break}if(((c[y>>2]|0)+6|0)>((c[w>>2]|0)+2|0))break;d
=c[y>>2]|0;c[y>>2]=d+1;a[(c[v>>2]|0)+d>>0]=-128;c[B>>2]=c[r>>2]>
;>8;c[t>>2]=c[z>>2];d=c[B>>2]&255;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>
;>2]|0)+A>>0]=d;c[x>>2]=c[y>>2];A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>
;2]|0)+A>>0]=0;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>2]|0)+A>>0]=0;A=c[y>>
2]|0;c[y>>2]=A+1;a[(c[v>>2]|0)+A>>0]=0;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>
;2]|0)+A>>0]=0}c[q>>2]=1;if((c[y>>2]|0)>(c[w>>2]|0))break;if(((c[y>>2]|0)+(
c[z>>2]|0)|0)>(c[w>>2]|0))break;c[q>>2]=Rc(c[l>>2]|0,(c[v>>2]|0)+(c[y>
;>2]|0)|0,c[z>>2]|0)|0;if(c[q>>2]|0)break;c[y>>2]=(c[y>>2]|0)+(c[z>>2]|0)}
c[s>>2]=(c[s>>2]|0)+1}if(((C|0)==31?((c[y>>2]|0)+2|0)<=((c[w>>2]|0)+2|0):0)?(C=c[y
x3e;>2]|0,c[y>>2]=C+1,a[(c[v>>2]|0)+C>>0]=-128,C=c[y>>2]|0,c[y>>2]=C+1,a[(
c[v>>2]|0)+C>>0]=3,((c[x>>2]|0)+3|0)<=((c[w>>2]|0)+2|0)):0){a[(c[v>>2]|0)+(
c[x>>2]|0)>>0]=c[t>>2];a[(c[v>>2]|0)+((c[x>>2]|0)+1)>>0]=c[t>
x3e;2]>>8;a[(c[v>>2]|0)+((c[x>>2]|0)+2)>>0]=c[t>>2]>>16;a[(c[v>
x3e;2]|0)+((c[x>>2]|0)+3)>>0]=c[t>>2]>>24;c[j>>2]=Tc(c[k>>2]|0,c[v
x3e;>2]|0,c[y>>2]|0,c[o>>2]|0,10410,c[p>>2]|0)|0;C=c[j>>2]|0;i=D;return C|0}Fb(c[u
x3e;>2]|0,c[v>>2]|0);c[v>>2]=0}while(0);c[j>>2]=c[q>>2];C=c[j>>2]|0;i=D;return
C|0}function cd(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;w=i;i=i+64|0;o=w+52|0;p=w+48|0;h=w+44|0;j=w+40|0;k=w+36|0;l=w+32|0;q=w+28|0;n=w+24|0;v=w+20|0;r=w+16|0;m=w+12|0;u=w+8|0;t=w+4|
0;s=w;c[p>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[q>>2]=g;c[
n>>2]=c[c[p>>2]>>2];c[s>>2]=0;if((c[l>>2]|0)==-1)c[l>>2]=0;if((c[l
x3e;>2]|0)>=(c[k>>2]|0)){c[o>>2]=1;v=c[o>>2]|0;i=w;return v|0}c[m>>2]=c[(c[j
x3e;>2]|0)+(c[l>>2]<<2)>>2];c[r>>2]=Kc(c[h>>2]|0,c[m>>2]|0)|0;if
((c[r>>2]|0)==0?(c[u>>2]=Oc(c[h>>2]|0,r)|0,(c[r>>2]|0)==0):0){if((c[u>>2]|0)==-
1){c[o>>2]=1;v=c[o>>2]|0;i=w;return v|0}c[r>>2]=Lc(c[p>>2]|0,c[h>>2]|0,c[l>
;>2]|0,0,0,c[q>>2]|0)|0;if(c[r>>2]|0?(Kc(c[h>>2]|0,(c[m>>2]|0)+4|0)|0)==0:0){c[v>
;>2]=bc(c[n>>2]|0,c[u>>2]|0,r)|0;if(c[r>>2]|0){c[o>>2]=c[r>>2];v=c[o>
;>2]|0;i=w;return v|0}c[r>>2]=Rc(c[h>>2]|0,c[v>>2]|0,c[u>>2]|0)|0;if(!(c[r>>
;2]|0)){if((c[u>>2]|0)>4)h=($r(c[v>>2]|0,10416,4)|0)!=0^1;else h=0;c[t>>2]=h&1;c[r>
x3e;2]=Tc(c[p>>2]|0,c[v>>2]|0,c[u>>2]|0,c[s>>2]|0,c[t>>2]|0?11217:10489,c[q>
;>2]|0)|0}}}c[o>>2]=c[r>>2];v=c[o>>2]|0;i=w;return v|0}function dd(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;y=i;i=i+192|0;j=y+176|0;z=y+172|0;k=y+168
|0;l=y+164|0;m=y+160|0;t=y+156|0;o=y+152|0;r=y+148|0;q=y+112|0;u=y+76|0;p=y+40|0;s=y+181|0;w=y+180|0;n=y+8|0;v=y;c[j>>
2]=b;c[z>>2]=e;c[k>>2]=f;c[l>>2]=g;c[m>>2]=h;c[t>>2]=c[c[j>>2]>
x3e;2];c[o>>2]=2;a[w>>0]=0;c[v>>2]=0;ed(c[j>>2]|0,c[z>>2]|0,c[(c[m>>
2]|0)+12>>2]|0,q,u,p);c[r>>2]=0;while(1){if((c[r>>2]|0)>=9)break;a[s>>0]=rd(c[r>
;>2]|0)|0;if(!(d[s>>0]|0?(d[w>>0]|0)!=0:0))x=5;if((x|0)==5?(x=0,(c[p+(c[r>>2]<<2)
x3e;>2]|0)==0):0){c[n>>2]=4;if(c[q+(c[r>>2]<<2)>>2]|0)g=c[q+(c[r>>2]<
;<2)>>2]|0;else g=c[(c[m>>2]|0)+12>>2]|0;c[n+12>>2]=g;c[o>>2]=tc(c[j>
;>2]|0,n,v)|0;if((d[s>>0]|0)!=0&(c[o>>2]|0)==81)a[w>>0]=1;if(!(c[o>>2]|0)){c[o
>>2]=Zc(c[j>>2]|0,c[v>>2]|0,c[u+(c[r>>2]<<2)>>2]|0,c[k>>2]|
0,c[l>>2]|0)|0;vc(c[v>>2]|0,0);if(!(c[o>>2]|0))break;if(a[s>>0]|0)a[w>>0]=1}}c
[r>>2]=(c[r>>2]|0)+1}c[r>>2]=0;while(1){if((c[r>>2]|0)>=9)break;if(c[q+(c[r>
x3e;2]<<2)>>2]|0){Fb(c[t>>2]|0,c[q+(c[r>>2]<<2)>>2]|0);c[q+(c[r>
;>2]<<2)>>2]=0}c[r>>2]=(c[r>>2]|0)+1}if(!(c[o>>2]|0)){z=c[o>>2]|
0;i=y;return z|0}c[o>>2]=2;z=c[o>>2]|0;i=y;return z|0}function ed(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;p=i;i=i+32|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;m=p+8|0;n=p+4|0;o=p;c[h>>2
]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=0;while
(1){if((c[o>>2]|0)>=9)break;c[(c[l>>2]|0)+(c[o>>2]<<2)>>2]=0;if(c[j>
x3e;2]|0){b=Kc(c[j>>2]|0,0)|0;c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]=b}else c[(c[n>
;>2]|0)+(c[o>>2]<<2)>>2]=0;if(!(c[(c[n>>2]|0)+(c[o>>2]<<2)>
;>2]|0)){b=Za[c[96+(c[o>>2]<<3)>>2]&31](c[h>>2]|0,c[j>>2]|0,c[k>
;>2]|0,(c[l>>2]|0)+(c[o>>2]<<2)|0,(c[m>>2]|0)+(c[o>>2]<<2)|0)|0
;c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]=b}c[o>>2]=(c[o>>2]|0)+1}i=p;return}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,m=0,n=0,o=0;n=i;i=i+32|0;g=n+24|0;h=n+20|0;j=n+16|0;k=n+12|
0;o=n+8|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[o>>2]=e;c[l>>2]=f;c[m>
;>2]=333319;c[c[o>>2]>>2]=0;if(!(c[j>>2]|0)){c[g>>2]=81;o=c[g>>2]|0;i=n;return
o|0}else{c[g>>2]=gd(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[m>>2]|0,c[l>>2]|
0)|0;o=c[g>>2]|0;i=n;return o|0}return 0}function gd(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,v=0,w=0,x=0;v=i;i=i+64|0;r=v+52|0;x=v+48|0;m=v+44|0;w=v+40|0;j=v+36|0;s=v+32|0;k=v+28|0;u=v+24|0;l=v
+20|0;q=v+56|0;p=v+16|0;n=v+12|0;t=v+8|0;o=v+4|0;c[x>>2]=a;c[m>>2]=d;c[w>>2]=f;c[j>>2]=g
;c[s>>2]=h;c[l>>2]=0;c[o>>2]=0;c[v>>2]=2;c[x>>2]=c[x>>2];c[w>
x3e;2]=c[w>>2];c[l>>2]=c[l>>2];c[o>>2]=c[o>>2];c[k>>2]=Oc(c[m>
x3e;2]|0,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}if((c[k>>
;2]|0)!=(c[j>>2]|0)){c[r>>2]=2;x=c[r>>2]|0;i=v;return x|0}c[l>>2]=Oc(c[m>>2]|0
,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}c[u>>2]=Qc(c[m
x3e;>2]|0,16)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}b[q>
x3e;1]=Pc(c[m>>2]|0,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return
x|0}if(!(e[q>>1]|0)){c[r>>2]=2;x=c[r>>2]|0;i=v;return x|0}c[p>>2]=0;while(1){if((c[p>
;>2]|0)>=(e[q>>1]|0|0)){j=24;break}c[n>>2]=Oc(c[m>>2]|0,u)|0;if(c[u>>2]|0){j=16
;break}j=c[m>>2]|0;if((c[n>>2]|0)==2){c[t>>2]=Oc(j,u)|0;if((c[u>>2]|0)==0?(c[o>>
;2]=Oc(c[m>>2]|0,u)|0,(c[u>>2]|0)==0):0){j=20;break}}else{c[u>>2]=Qc(j,8)|0;if(c[u>>2]|0
){j=22;break}}c[p>>2]=(c[p>>2]|0)+1}if((j|0)==16){c[r>>2]=c[u>>2];x=c[r>>2]|0;
i=v;return x|0}else if((j|0)==20){c[c[s>>2]>>2]=c[t>>2];c[r>>2]=0;x=c[r>>2]|0;
i=v;return x|0}else if((j|0)==22){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}else if((j|0)==24){c[
r>>2]=2;x=c[r>>2]|0;i=v;return x|0}return 0}function hd(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;n=i;i=i+32|0;g=n+24|0;h=n+20|0;j=n+16|0;k=n+12|0;o=n+8|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>
;2]=b;c[k>>2]=d;c[o>>2]=e;c[l>>2]=f;c[m>>2]=333312;c[c[o>>2]>>2]=0;if
(!(c[j>>2]|0)){c[g>>2]=81;o=c[g>>2]|0;i=n;return o|0}else{c[g>>2]=gd(c[h>>2]|0
,c[j>>2]|0,c[k>>2]|0,c[m>>2]|0,c[l>>2]|0)|0;o=c[g>>2]|0;i=n;return o|0}return
0}function id(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;o=i;i=i+48|0;g=o+32|0;h=o+28|
0;q=o+24|0;p=o+20|0;j=o+16|0;k=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;c[p>>2]=d;c[j>
x3e;2]=e;c[k>>2]=f;c[q>>2]=c[q>>2];c[m>>2]=c[c[h>>2]>>2];c[n>
x3e;2]=jd(c[m>>2]|0,c[p>>2]|0,10421)|0;if(!(c[n>>2]|0)){c[g>>2]=64;q=c[g>>2]|0
;i=o;return q|0}c[l>>2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;if(c[l>>2]|0){Fb(c
[m>>2]|0,c[n>>2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c[n>>2];c[g>
x3e;2]=c[l>>2];q=c[g>>2]|0;i=o;return q|0}function jd(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;f=m+32|0;p=m+28|0;g=m+24|0;h=m+20|0;j=m+16|0;l=m+12|0;k=m+8|0;o=m+4|0;n=m;c[p>>2]=b;c[g>
;>2]=d;c[h>>2]=e;c[j>>2]=0;c[n>>2]=0;c[n>>2]=c[n>>2];d=cs(c[g>>
2]|0)|0;c[o>>2]=d+(cs(c[h>>2]|0)|0);c[j>>2]=bc(c[p>>2]|0,(c[o>>2]|0)+1|0,n)|0;
if(c[n>>2]|0){c[f>>2]=0;p=c[f>>2]|0;i=m;return p|0}c[l>>2]=xs(c[g>>2]|0,47)|0;
if(c[l>>2]|0){as(c[j>>2]|0,c[g>>2]|0,(c[l>>2]|0)-(c[g>>2]|0)+1|0)|0;a[(c[j>
;>2]|0)+((c[l>>2]|0)-(c[g>>2]|0)+1)>>0]=0;c[k>>2]=(c[l>>2]|0)+1}else{c[k
x3e;>2]=c[g>>2];a[c[j>>2]>>0]=0}zs(c[j>>2]|0,c[h>>2]|0)|0;zs(c[j>>
;2]|0,c[k>>2]|0)|0;c[f>>2]=c[j>>2];p=c[f>>2]|0;i=m;return p|0}function kd(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;m=i;i=i+64|0;e=m+60|0;f=m+56|0;g=m+52|0;h=m+48|0;n=m+16|0;l=m+8|0;k=m+4|0;j=m
;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=0;c[n>>2]=4;c[n+12>>2]=c[g>
;>2];c[j>>2]=tc(c[f>>2]|0,n,l)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];n=c[e>
;>2]|0;i=m;return n|0}else{c[j>>2]=fd(c[f>>2]|0,c[l>>2]|0,c[g>>2]|0,k,c[h>>
;2]|0)|0;vc(c[l>>2]|0,0);c[e>>2]=c[j>>2];n=c[e>>2]|0;i=m;return n|0}return 0}function ld
(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;q=i;i=i+48|0;m=q+36|0;r=q+32|0;s=q+28|
0;h=q+24|0;n=q+20|0;o=q+16|0;k=q+12|0;p=q+8|0;l=q+4|0;j=q;c[r>>2]=b;c[s>>2]=d;c[h>>2]=e;c[n>
x3e;2]=f;c[o>>2]=g;c[j>>2]=cs(c[h>>2]|0)|0;c[s>>2]=c[s>>2];c[l>>2]=c
[c[r>>2]>>2];if(((c[j>>2]|0)+18|0)>2147483647){c[m>>2]=10;s=c[m>>2]|0;i=q
;return s|0}c[p>>2]=bc(c[l>>2]|0,(c[j>>2]|0)+18|0,k)|0;if(c[k>>2]|0){c[m>>2]=c
[k>>2];s=c[m>>2]|0;i=q;return s|0}else{Ss(c[p>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;h=(
c[p>>2]|0)+(c[j>>2]|0)|0;j=10424;e=h+18|0;do{a[h>>0]=a[j>>0]|0;h=h+1|0;j=j+1|0}while((h|
0)<(e|0));c[c[n>>2]>>2]=c[p>>2];c[c[o>>2]>>2]=0;c[m>>2]=0;s=c[m
>>2]|0;i=q;return s|0}return 0}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,o=0,p=
0,q=0,r=0,s=0;q=i;i=i+48|0;h=q+36|0;r=q+32|0;s=q+28|0;j=q+24|0;k=q+20|0;l=q+16|0;n=q+12|0;p=q+8|0;o=q+4|0;m=q;c[r>>2]=
b;c[s>>2]=d;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[m>>2]=cs(c[j>>2]|0)|0;c[
s>>2]=c[s>>2];c[o>>2]=c[c[r>>2]>>2];if(((c[m>>2]|0)+6|0)>2147483647
){c[h>>2]=10;s=c[h>>2]|0;i=q;return s|0}c[p>>2]=bc(c[o>>2]|0,(c[m>>2]|0)+6|0,n
)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];s=c[h>>2]|0;i=q;return s|0}else{Ss(c[p>>2]|0
,c[j>>2]|0,c[m>>2]|0)|0;s=(c[p>>2]|0)+(c[m>>2]|0)|0;a[s>>0]=a[10442]|0;a[s+1
x3e;>0]=a[10443]|0;a[s+2>>0]=a[10444]|0;a[s+3>>0]=a[10445]|0;a[s+4>>0]=a[10446]|0;a[s+5>
x3e;0]=a[10447]|0;c[c[k>>2]>>2]=c[p>>2];c[c[l>>2]>>2]=0;c[h>>2]=0;s=
c[h>>2]|0;i=q;return s|0}return 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,m=0,n=0
,o=0,p=0;l=i;i=i+32|0;g=l+28|0;o=l+24|0;p=l+20|0;m=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;n=l;c[o>>2]=a;c[p>>2]=b;c
[m>>2]=d;c[h>>2]=e;c[j>>2]=f;c[p>>2]=c[p>>2];c[n>>2]=c[c[o>>
;2]>>2];c[k>>2]=jd(c[n>>2]|0,c[m>>2]|0,10448)|0;if(c[k>>2]|0){c[c[h>>
;2]>>2]=c[k>>2];c[c[j>>2]>>2]=0;c[g>>2]=0;p=c[g>>2]|0;i=l;return p|0
}else{c[g>>2]=64;p=c[g>>2]|0;i=l;return p|0}return 0}function od(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+32|0;g=l+28|0;o=l+24|0;p=l+20|0;m=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;n=l;c[o>>
;2]=a;c[p>>2]=b;c[m>>2]=d;c[h>>2]=e;c[j>>2]=f;c[p>>2]=c[p>>2];c[n>
;>2]=c[c[o>>2]>>2];c[k>>2]=jd(c[n>>2]|0,c[m>>2]|0,10462)|0;if(c[k>
x3e;2]|0){c[c[h>>2]>>2]=c[k>>2];c[c[j>>2]>>2]=0;c[g>>2]=0;p=c[g>
;>2]|0;i=l;return p|0}else{c[g>>2]=64;p=c[g>>2]|0;i=l;return p|0}return 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;o=i;i=i+48|0;g=o+32|0;h=o+28|0;q=o+24|0;p=o+20|0;j=o+16|0;k=
o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;c[p>>2]=d;c[j>>2]=e;c[k>>2]=f;c
[q>>2]=c[q>>2];c[m>>2]=c[c[h>>2]>>2];c[n>>2]=jd(c[m>>2]|0,
c[p>>2]|0,10473)|0;if(!(c[n>>2]|0)){c[g>>2]=64;q=c[g>>2]|0;i=o;return q|0}c[l>>
;2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;if(c[l>>2]|0){Fb(c[m>>2]|0,c[n>
x3e;2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c[n>>2];c[g>>2]=c[l>>2];q=c[g
>>2]|0;i=o;return q|0}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,p=0,q=0
;o=i;i=i+48|0;g=o+32|0;h=o+28|0;q=o+24|0;p=o+20|0;j=o+16|0;k=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;
c[p>>2]=d;c[j>>2]=e;c[k>>2]=f;c[q>>2]=c[q>>2];c[m>>2]=c[c[h>>
;2]>>2];c[n>>2]=jd(c[m>>2]|0,c[p>>2]|0,10475)|0;if(!(c[n>>2]|0)){c[g>>
;2]=64;q=c[g>>2]|0;i=o;return q|0}c[l>>2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;
if(c[l>>2]|0){Fb(c[m>>2]|0,c[n>>2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c
[n>>2];c[g>>2]=c[l>>2];q=c[g>>2]|0;i=o;return q|0}function rd(b){b=b|0;var d=0,e=0,f=0;e
=i;i=i+16|0;d=e+4|0;f=e;c[f>>2]=b;if(((sd(c[f>>2]|0)|0)+-3|0)>>>0<2){a[d>>0]=1
;f=a[d>>0]|0;i=e;return f|0}else{a[d>>0]=0;f=a[d>>0]|0;i=e;return f|0}return 0}function sd(a){a=a|
0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[d>>2]=a;if((c[d>>2]|0)>>>0>=9){c[b>>
;2]=-2;a=c[b>>2]|0;i=e;return a|0}else{c[b>>2]=c[96+(c[d>>2]<<3)+4>>2];a=c[b
x3e;>2]|0;i=e;return a|0}return 0}function td(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|0)+4>>2];c[(c[e>>2]|0)+4>>2
]=0;c[c[e>>2]>>2]=c[f>>2];a=c[e>>2]|0;if(c[f>>2]|0){c[(c[f>>2]|0)+4
x3e;>2]=a;e=c[e>>2]|0;f=c[d>>2]|0;f=f+4|0;c[f>>2]=e;i=g;return}else{c[c[d>>2]>
x3e;2]=a;e=c[e>>2]|0;f=c[d>>2]|0;f=f+4|0;c[f>>2]=e;i=g;return}}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;n=i;i=i+48|0;d=n+32|0;e=n+28|0;f=n+24|0;j=n+20|0;k=n+16|0;h=n+12|0;g=n+8|0;m=n+4|0;l=n;c[e
>>2]=a;c[f>>2]=b;c[m>>2]=0;c[l>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=35;m=c
[d>>2]|0;i=n;return m|0}if(!(c[f>>2]|0)){c[d>>2]=36;m=c[d>>2]|0;i=n;return m|0}if(!(c[(c
[e>>2]|0)+96>>2]|0)){c[d>>2]=34;m=c[d>>2]|0;i=n;return m|0}c[c[f>>2]>>
;2]=0;c[h>>2]=c[(c[e>>2]|0)+96>>2];c[g>>2]=c[(c[h>>2]|0)+20>>2];c[k
x3e;>2]=c[(c[e>>2]|0)+100>>2];c[m>>2]=bc(c[k>>2]|0,c[(c[g>>2]|0)+40>
x3e;2]|0,j)|0;if((c[j>>2]|0)==0?(c[l>>2]=bc(c[k>>2]|0,12,j)|0,(c[j>>2]|0)==0):0){c[c[m
x3e;>2]>>2]=c[e>>2];c[(c[m>>2]|0)+40>>2]=0;if(c[(c[g>>2]|0)+56>>
;2]|0)c[j>>2]=Ta[c[(c[g>>2]|0)+56>>2]&63](c[m>>2]|0)|0;if(!(c[j>>2]|0)){c
[c[f>>2]>>2]=c[m>>2];c[(c[l>>2]|0)+8>>2]=c[m>>2];td((c[e>>
2]|0)+108|0,c[l>>2]|0)}}if(c[j>>2]|0){Fb(c[k>>2]|0,c[l>>2]|0);c[l>>2]=0;Fb(c[k
>>2]|0,c[m>>2]|0);c[m>>2]=0}c[d>>2]=c[j>>2];m=c[d>>2]|0;i=n;return m
|0}function vd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;e=h+12|0;d=h+8|0;f=h+4|0;g=h;c[b>>2]=a;c[e
x3e;>2]=35;if(!(c[b>>2]|0)){g=c[e>>2]|0;i=h;return g|0}if(!(c[(c[b>>2]|0)+96>>2]|0)){
g=c[e>>2]|0;i=h;return g|0}a=(c[(c[b>>2]|0)+128>>2]|0)+60|0;c[a>>2]=(c[a>>2]|0
)+-1;if((c[(c[(c[b>>2]|0)+128>>2]|0)+60>>2]|0)>>>0>0){c[e>>2]=0;g=c[
e>>2]|0;i=h;return g|0}c[d>>2]=c[(c[b>>2]|0)+96>>2];c[f>>2]=c[(c[d>>
2]|0)+8>>2];c[g>>2]=Rb((c[d>>2]|0)+24|0,c[b>>2]|0)|0;if(!(c[g>>2]|0)){g=c[e>
;>2]|0;i=h;return g|0}wd((c[d>>2]|0)+24|0,c[g>>2]|0);Fb(c[f>>2]|0,c[g>>2]|0);c[g>
;>2]=0;xd(c[f>>2]|0,c[b>>2]|0,c[d>>2]|0);c[e>>2]=0;g=c[e>>2]|0;i=h;return
g|0}function wd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+12|0;h=g+8|0;d=g+4|0;f=g;c[e>>2]=a;c[h>
;>2]=b;c[d>>2]=c[c[h>>2]>>2];c[f>>2]=c[(c[h>>2]|0)+4>>2];a=c[f
x3e;>2]|0;if(c[d>>2]|0)c[(c[d>>2]|0)+4>>2]=a;else c[c[e>>2]>>2]=a;a=c[d
x3e;>2]|0;if(c[f>>2]|0){c[c[f>>2]>>2]=a;i=g;return}else{c[(c[e>>2]|0)+4>>
2]=a;i=g;return}}function xd(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[(c[g>>2]|0)+20>>2];if(c[(c[f>
x3e;2]|0)+116+4>>2]|0)Va[c[(c[f>>2]|0)+116+4>>2]&63](c[(c[f>>2]|0)+116>>2
]|0);while(1){d=c[f>>2]|0;if(!(c[(c[f>>2]|0)+84>>2]|0))break;Bc(c[d+84>>2]|0)}zd(d+108|0
,7,c[e>>2]|0,c[g>>2]|0);c[(c[f>>2]|0)+88>>2]=0;if(c[(c[f>>2]|0)+44+4>>
;2]|0)Va[c[(c[f>>2]|0)+44+4>>2]&63](c[f>>2]|0);Ic(c[f>>2]|0,c[e>>2]|0);if
(c[(c[h>>2]|0)+52>>2]|0)Va[c[(c[h>>2]|0)+52>>2]&63](c[f>>2]|0);vc(c[(c[f
x3e;>2]|0)+104>>2]|0,(c[(c[f>>2]|0)+8>>2]&1024|0)!=0&1);c[(c[f>>2]|0)+104
>>2]=0;if(!(c[(c[f>>2]|0)+128>>2]|0)){g=c[e>>2]|0;h=c[f>>2]|0;Fb(g,h);c[f>
;>2]=0;i=j;return}Fb(c[e>>2]|0,c[(c[f>>2]|0)+128>>2]|0);c[(c[f>>2]|0)+128>>
;2]=0;g=c[e>>2]|0;h=c[f>>2]|0;Fb(g,h);c[f>>2]=0;i=j;return}function yd(a,b,d){a=a|0;b=b|0;d=d|0;var
e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[(c[f>>
;2]|0)+4+4>>2]|0)Va[c[(c[f>>2]|0)+4+4>>2]&63](c[f>>2]|0);if(c[(c[(c[g>>2]|
0)+20>>2]|0)+60>>2]|0)Va[c[(c[(c[g>>2]|0)+20>>2]|0)+60>>2]&63](c[f>
x3e;2]|0);Fb(c[e>>2]|0,c[(c[f>>2]|0)+40>>2]|0);c[(c[f>>2]|0)+40>>2]=0;Fb(c[e
x3e;>2]|0,c[f>>2]|0);c[f>>2]=0;i=h;return}function zd(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;c[f>>2]=a;c[g>>2]=b
;c[h>>2]=d;c[j>>2]=e;c[k>>2]=c[c[f>>2]>>2];while(1){if(!(c[k>>2]|0))
break;c[m>>2]=c[(c[k>>2]|0)+4>>2];c[l>>2]=c[(c[k>>2]|0)+8>>2];if(c[g
>>2]|0)Ua[c[g>>2]&31](c[h>>2]|0,c[l>>2]|0,c[j>>2]|0);Fb(c[h>>2]|
0,c[k>>2]|0);c[k>>2]=0;c[k>>2]=c[m>>2]}c[c[f>>2]>>2]=0;c[(c[f>
x3e;2]|0)+4>>2]=0;i=n;return}function Ad(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;s=i;i=i+48|0;h=s+28|0;j=s+24|0;k=s+20|0;l=s+32|0;m=s+16|0;p=s+12|0;q=s+8|0;o=s+4|0;n=s;c[j>>2]=b;c[k>>2]=
e;a[l>>0]=f;c[m>>2]=g;if(!(c[(c[j>>2]|0)+8>>2]&2)){c[h>>2]=35;r=c[h>
x3e;2]|0;i=s;return r|0}if(c[c[k>>2]>>2]|0){c[h>>2]=7;r=c[h>>2]|0;i=s;return r|0}b=c[(c[
k>>2]|0)+4>>2]|0;if(c[(c[k>>2]|0)+12>>2]|0)b=((_(b,c[(c[k>>2]|0)+12>>
;2]|0)|0)+36|0)/72|0;c[q>>2]=b;b=c[(c[k>>2]|0)+8>>2]|0;if(c[(c[k>>2]|0)+16>>2]|
0)b=((_(b,c[(c[k>>2]|0)+16>>2]|0)|0)+36|0)/72|0;c[o>>2]=b;if(c[(c[k>>2]|0)+4>>
2]|0?!(c[(c[k>>2]|0)+8>>2]|0):0)c[o>>2]=c[q>>2];else r=12;if(((r|0)==12?(c[(c[k>>
;2]|0)+4>>2]|0)==0:0)?c[(c[k>>2]|0)+8>>2]|0:0)c[q>>2]=c[o>>2];c[q>>2
]=(c[q>>2]|0)+32&-64;c[o>>2]=(c[o>>2]|0)+32&-64;c[p>>2]=0;while(1){if((c[p>
;>2]|0)>=(c[(c[j>>2]|0)+28>>2]|0)){r=24;break}c[n>>2]=(c[(c[j>>2]|0)+32>
x3e;2]|0)+(c[p>>2]<<4);if((c[o>>2]|0)==((c[(c[n>>2]|0)+12>>2]|0)+32&-64|0
)){if((c[q>>2]|0)==((c[(c[n>>2]|0)+8>>2]|0)+32&-64|0))break;if(d[l>>0]|0|0)break}c[
p>>2]=(c[p>>2]|0)+1}if((r|0)==24){c[h>>2]=23;r=c[h>>2]|0;i=s;return r|0}if(c[m>>
;2]|0)c[c[m>>2]>>2]=c[p>>2];c[h>>2]=0;r=c[h>>2]|0;i=s;return r|0}function Bd(a
,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c
[(c[d>>2]|0)+4>>2];if((c[(c[d>>2]|0)+12>>2]|0)<0){if((c[f>>2]|0)<(c[(
c[d>>2]|0)+12>>2]|0))c[f>>2]=c[(c[d>>2]|0)+12>>2]}else if((c[(c[d>>2
]|0)+12>>2]|0)>0)c[f>>2]=(c[f>>2]|0)-(c[(c[d>>2]|0)+12>>2]|0);if(!(c[e>
;>2]|0))c[e>>2]=((c[f>>2]|0)*12|0)/10|0;c[(c[d>>2]|0)+20>>2]=(c[(c[d>>2]|
0)+8>>2]|0)-((c[(c[d>>2]|0)+16>>2]|0)/2|0);c[(c[d>>2]|0)+24>>2]=((c[e>>
;2]|0)-(c[f>>2]|0)|0)/2|0;c[(c[d>>2]|0)+28>>2]=c[e>>2];i=g;return}function Cd(a,d){a=a|0
;d=d|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;f=j+12|0;k=j+8|0;h=j+4|0;g=j;c[f>>2]=a;c[k>>2]=d;c[h>>
2]=(c[(c[f>>2]|0)+88>>2]|0)+12;c[g>>2]=(c[(c[f>>2]|0)+32>>2]|0)+(c[k>>
;2]<<4);b[c[h>>2]>>1]=(c[(c[g>>2]|0)+8>>2]|0)+32>>6;b[(c[h>>
;2]|0)+2>>1]=(c[(c[g>>2]|0)+12>>2]|0)+32>>6;if(c[(c[f>>2]|0)+8>>2]
x26;1|0){k=Vb(c[(c[g>>2]|0)+8>>2]|0,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[h>>2]|0)+4
x3e;>2]=k;k=Vb(c[(c[g>>2]|0)+12>>2]|0,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[h>>2
]|0)+8>>2]=k;Dd(c[f>>2]|0,c[h>>2]|0);i=j;return}else{c[(c[h>>2]|0)+4>>2]=65536
;c[(c[h>>2]|0)+8>>2]=65536;c[(c[h>>2]|0)+12>>2]=c[(c[g>>2]|0)+12>>2];
c[(c[h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+20>>2]=b[c[g>>2]>>1]<<
;6;c[(c[h>>2]|0)+24>>2]=c[(c[g>>2]|0)+8>>2];i=j;return}}function Dd(a,d){a=a|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]=a;c[f>>2]=d;d=(Mb(b[(c[g>>2]|0)+70>>1]|0,c
[(c[f>>2]|0)+8>>2]|0)|0)+63&-64;c[(c[f>>2]|0)+12>>2]=d;d=(Mb(b[(c[g>>2]|0
)+72>>1]|0,c[(c[f>>2]|0)+8>>2]|0)|0)&-64;c[(c[f>>2]|0)+16>>2]=d;d=(Mb(b[(
c[g>>2]|0)+74>>1]|0,c[(c[f>>2]|0)+8>>2]|0)|0)+32&-64;c[(c[f>>2]|0)+20>
;>2]=d;d=(Mb(b[(c[g>>2]|0)+76>>1]|0,c[(c[f>>2]|0)+4>>2]|0)|0)+32&-64;c[(c[f>
;>2]|0)+24>>2]=d;i=e;return}function Ed(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;o=i;i=i+32|0;j=o
+24|0;k=o+20|0;l=o+16|0;h=o+12|0;g=o+8|0;n=o+4|0;m=o;c[j>>2]=a;c[k>>2]=d;c[l>>2]=(c[(c[j>>
;2]|0)+88>>2]|0)+12;if(!(c[(c[j>>2]|0)+8>>2]&1)){n=c[l>>2]|0;c[n>>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[(c[l>>2]|0)+4>>2]=65536;c[(c[l>>2]|0)+8>>2]=65536;i=o;return}c[h>>2]=0
;c[g>>2]=0;c[n>>2]=0;c[m>>2]=0;a:do switch(c[c[k>>2]>>2]|0){case 0:{f=e[(c[j
x3e;>2]|0)+68>>1]|0;c[g>>2]=f;c[h>>2]=f;f=11;break}case 1:{f=(b[(c[j>>2]|0)+70>
;>1]|0)-(b[(c[j>>2]|0)+72>>1]|0)|0;c[g>>2]=f;c[h>>2]=f;f=11;break}case 2:{c[h>
x3e;2]=(c[(c[j>>2]|0)+52+8>>2]|0)-(c[(c[j>>2]|0)+52>>2]|0);c[g>>2]=(c[(c[j>
;>2]|0)+52+12>>2]|0)-(c[(c[j>>2]|0)+52+4>>2]|0);f=11;break}case 3:{c[h>>2]=b[(c[j
x3e;>2]|0)+76>>1];c[g>>2]=(b[(c[j>>2]|0)+70>>1]|0)-(b[(c[j>>2]|0)+72>
;>1]|0);f=11;break}case 4:{c[(c[l>>2]|0)+4>>2]=c[(c[k>>2]|0)+4>>2];c[(c[l>>
;2]|0)+8>>2]=c[(c[k>>2]|0)+8>>2];a=c[(c[l>>2]|0)+8>>2]|0;if(!(c[(c[l>>
;2]|0)+4>>2]|0)){c[(c[l>>2]|0)+4>>2]=a;break a}if(!a)c[(c[l>>2]|0)+8>>2]=c[(c[
l>>2]|0)+4>>2];break}default:f=11}while(0);do if((f|0)==11){if((c[h>>2]|0)<0)c[h>>2
]=0-(c[h>>2]|0);if((c[g>>2]|0)<0)c[g>>2]=0-(c[g>>2]|0);a=c[(c[k>>2]|0)+4
x3e;>2]|0;if(c[(c[k>>2]|0)+12>>2]|0)a=((_(a,c[(c[k>>2]|0)+12>>2]|0)|0)+36|0)/72|0;c
[n>>2]=a;a=c[(c[k>>2]|0)+8>>2]|0;if(c[(c[k>>2]|0)+16>>2]|0)a=((_(a,c[(c[k>
;>2]|0)+16>>2]|0)|0)+36|0)/72|0;c[m>>2]=a;if(!(c[(c[k>>2]|0)+4>>2]|0)){f=Vb(c[m>
;>2]|0,c[g>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=f;c[(c[l>>2]|0)+4>>2]=f;c[n>
x3e;2]=xb(c[m>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;break}f=Vb(c[n>>2]|0,c[h>>2]|0)|0;c
[(c[l>>2]|0)+4>>2]=f;if(!(c[(c[k>>2]|0)+8>>2]|0)){c[(c[l>>2]|0)+8>>2
]=c[(c[l>>2]|0)+4>>2];c[m>>2]=xb(c[n>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;break
}h=Vb(c[m>>2]|0,c[g>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=h;if((c[c[k>>2]>>2]|
0)==3){a=c[l>>2]|0;if((c[(c[l>>2]|0)+8>>2]|0)>(c[(c[l>>2]|0)+4>>2]|0)){c[(
c[l>>2]|0)+8>>2]=c[a+4>>2];break}else{c[(c[l>>2]|0)+4>>2]=c[a+8>>2];
break}}}while(0);if(c[c[k>>2]>>2]|0){c[n>>2]=Mb(e[(c[j>>2]|0)+68>>1]|0,c[(c[l
x3e;>2]|0)+4>>2]|0)|0;c[m>>2]=Mb(e[(c[j>>2]|0)+68>>1]|0,c[(c[l>>2]|0)+8
x3e;>2]|0)|0}b[c[l>>2]>>1]=(c[n>>2]|0)+32>>6;b[(c[l>>2]|0)+2>>1
]=(c[m>>2]|0)+32>>6;Dd(c[j>>2]|0,c[l>>2]|0);i=o;return}function Fd(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0?c[(
c[e>>2]|0)+8>>2]&2|0:0){if((c[f>>2]|0)>=0?(c[f>>2]|0)<(c[(c[e>>
2]|0)+28>>2]|0):0){c[g>>2]=c[(c[(c[e>>2]|0)+96>>2]|0)+20>>2];if(c[(c[g>
x3e;2]|0)+100>>2]|0){c[d>>2]=Ya[c[(c[g>>2]|0)+100>>2]&127](c[(c[e>>2]|0)+
88>>2]|0,c[f>>2]|0)|0;b=c[d>>2]|0;i=h;return b|0}else{Cd(c[e>>2]|0,c[f>>2]|0);
c[d>>2]=0;b=c[d>>2]|0;i=h;return b|0}}c[d>>2]=6;b=c[d>>2]|0;i=h;return b|0}c[d>>
;2]=35;b=c[d>>2]|0;i=h;return b|0}function Gd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e
=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=35;j=c
[d>>2]|0;i=k;return j|0}if(((c[f>>2]|0?(c[(c[f>>2]|0)+4>>2]|0)>=0:0)?(c[(c[f>
x3e;2]|0)+8>>2]|0)>=0:0)?(c[c[f>>2]>>2]|0)>>>0<5:0){c[g>>2]=c[(
c[(c[e>>2]|0)+96>>2]|0)+20>>2];if(c[(c[g>>2]|0)+96>>2]|0){c[d>>2]=Ya
[c[(c[g>>2]|0)+96>>2]&127](c[(c[e>>2]|0)+88>>2]|0,c[f>>2]|0)|0;j=c[d>
;>2]|0;i=k;return j|0}if((c[(c[e>>2]|0)+8>>2]&1|0)==0?c[(c[e>>2]|0)+8>>2]&
;2|0:0){c[h>>2]=Ad(c[e>>2]|0,c[f>>2]|0,0,j)|0;if(c[h>>2]|0){c[d>>2]=c[h>
x3e;2];j=c[d>>2]|0;i=k;return j|0}else{c[d>>2]=Fd(c[e>>2]|0,c[j>>2]|0)|0;j=c[d>>
;2]|0;i=k;return j|0}}Ed(c[e>>2]|0,c[f>>2]|0);c[d>>2]=0;j=c[d>>2]|0;i=k;return j|0}c[d
x3e;>2]=6;j=c[d>>2]|0;i=k;return j|0}function Hd(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;n=i;i=i+48|0;g=n+36|0;h=n+32|0;j=n+28|0;k=n+24|0;l=n+20|0;m=n;c[g>>2]=a;c[h>>2]=b;c[j>>2]=
d;c[k>>2]=e;c[l>>2]=f;d=c[j>>2]|0;if(c[h>>2]|0){if(!d)c[j>>2]=c[h>>2
]}else c[h>>2]=d;d=c[l>>2]|0;if(c[k>>2]|0){if(!d)c[l>>2]=c[k>>2]}else c[k>
;>2]=d;if((c[h>>2]|0)<64)c[h>>2]=64;if((c[j>>2]|0)<64)c[j>>2]=64;if(!(c[k
>>2]|0)){c[l>>2]=72;c[k>>2]=72}c[m>>2]=0;c[m+4>>2]=c[h>>2];c[m+8>
;>2]=c[j>>2];c[m+12>>2]=c[k>>2];c[m+16>>2]=c[l>>2];m=Gd(c[g>>2]|
0,m)|0;i=n;return m|0}function Id(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+16|0;g=j+12|0;d=j+8|0;h=j+4|0;e=
j;c[g>>2]=a;c[d>>2]=b;if(!(c[g>>2]|0)){c[f>>2]=35;h=c[f>>2]|0;i=j;return h|0}if
(!(c[d>>2]|0)){c[f>>2]=6;h=c[f>>2]|0;i=j;return h|0}b=c[g>>2]|0;if((c[d>>2]|0)==
1970170211){c[f>>2]=Hc(b)|0;h=c[f>>2]|0;i=j;return h|0}c[h>>2]=c[b+40>>2];if(!(c[h>
x3e;2]|0)){c[f>>2]=38;h=c[f>>2]|0;i=j;return h|0}c[e>>2]=(c[h>>2]|0)+(c[(c[g>>
2]|0)+36>>2]<<2);while(1){if((c[h>>2]|0)>>>0>=(c[e>>2]|0)>>
;>0){b=15;break}if((c[(c[c[h>>2]>>2]|0)+4>>2]|0)==(c[d>>2]|0)?(((c[h>>2]|
0)-(c[(c[g>>2]|0)+40>>2]|0)|0)/4|0|0)<=15:0){b=13;break}c[h>>2]=(c[h>>2]|0)+4}if((b
|0)==13){c[(c[g>>2]|0)+92>>2]=c[c[h>>2]>>2];c[f>>2]=0;h=c[f>>2]|0;i=
j;return h|0}else if((b|0)==15){c[f>>2]=6;h=c[f>>2]|0;i=j;return h|0}return 0}function Jd(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+16|0;g=j+12|0;d=j+8|0;h=j+4|0;e=j;c[g>>2]=a;c[d>>2]=b;if(!(c[g>
;>2]|0)){c[f>>2]=35;h=c[f>>2]|0;i=j;return h|0}c[h>>2]=c[(c[g>>2]|0)+40>>
2];if(!(c[h>>2]|0)){c[f>>2]=38;h=c[f>>2]|0;i=j;return h|0}if((Kd(c[d>>2]|0)|0)==14){c[f
x3e;>2]=6;h=c[f>>2]|0;i=j;return h|0}c[e>>2]=(c[h>>2]|0)+(c[(c[g>>2]|0)+36>>
;2]<<2);while(1){if((c[h>>2]|0)>>>0>=(c[e>>2]|0)>>>0){d=13;break
}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)?(((c[h>>2]|0)-(c[(c[g>>2]|0)+40>>
2]|0)|0)/4|0|0)<=15:0){d=11;break}c[h>>2]=(c[h>>2]|0)+4}if((d|0)==11){c[(c[g>>2]|0)+92>
x3e;2]=c[c[h>>2]>>2];c[f>>2]=0;h=c[f>>2]|0;i=j;return h|0}else if((d|0)==13){c[f>
x3e;2]=6;h=c[f>>2]|0;i=j;return h|0}return 0}function Kd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;b=k
+28|0;d=k+24|0;j=k+20|0;g=k+16|0;f=k+8|0;h=k+4|0;e=k;c[d>>2]=a;if(c[d>>2]|0?c[c[d>>2]>>2
]|0:0){c[g>>2]=c[c[d>>2]>>2];c[h>>2]=c[(c[g>>2]|0)+96>>2];c[e>
x3e;2]=0;if(c[(c[c[h>>2]>>2]|0)+32>>2]|0)c[e>>2]=Ya[c[(c[c[h>>2]>>2]|
0)+32>>2]&127](c[h>>2]|0,11426)|0;c[j>>2]=c[e>>2];if(!(c[j>>2]|0)){c[b>
;>2]=-1;j=c[b>>2]|0;i=k;return j|0}if(Ya[c[c[j>>2]>>2]&127](c[d>>2]|0,f)|0){c[
b>>2]=-1;j=c[b>>2]|0;i=k;return j|0}else{c[b>>2]=c[f+4>>2];j=c[b>>2]|0;i=k;return
j|0}}c[b>>2]=-1;j=c[b>>2]|0;i=k;return j|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,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;f=q+32|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;l=q;c[g>>
;2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=0;if(!((c[g>>2]|0)==0|(c[j>
x3e;2]|0)==0)?c[c[j>>2]>>2]|0:0){c[n>>2]=c[c[j>>2]>>2];c[o>>2]=c[(c[
n>>2]|0)+100>>2];c[l>>2]=bc(c[o>>2]|0,c[c[g>>2]>>2]|0,m)|0;do if(!(c
[m>>2]|0)){b=c[l>>2]|0;a=c[j>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4
x3e;>2];c[b+8>>2]=c[a+8>>2];c[(c[l>>2]|0)+12>>2]=c[g>>2];if(!(c[(c[g>
;>2]|0)+4>>2]|0?(c[m>>2]=Ya[c[(c[g>>2]|0)+4>>2]&127](c[l>>2]|0,c[h
x3e;>2]|0)|0,(c[m>>2]|0)!=0):0))p=7;if((p|0)==7?(p=hc(c[o>>2]|0,4,c[(c[n>>2]|0)+36>>
;2]|0,(c[(c[n>>2]|0)+36>>2]|0)+1|0,c[(c[n>>2]|0)+40>>2]|0,m)|0,c[(c[n>>2]|0)+40
>>2]=p,(c[m>>2]|0)==0):0){o=c[l>>2]|0;b=(c[n>>2]|0)+36|0;p=c[b>>2]|0;c[b>
x3e;2]=p+1;c[(c[(c[n>>2]|0)+40>>2]|0)+(p<<2)>>2]=o;break}Jc(c[l>>2]|0);c[l>
;>2]=0}while(0);if(c[k>>2]|0)c[c[k>>2]>>2]=c[l>>2];c[f>>2]=c[m>>
;2];p=c[f>>2]|0;i=q;return p|0}c[f>>2]=6;p=c[f>>2]|0;i=q;return p|0}function Md(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;m=i;i=i+32|0;e=m+24|0;f=m+20|0;g=m+16|0;l=m+12|0;k=m+8|0;j=m+4|0;h=m;c[e>>2
]=a;c[f>>2]=b;c[g>>2]=d;c[l>>2]=0;c[k>>2]=0;if((c[e>>2]|0?c[(c[e>>2]|
0)+92>>2]|0:0)?c[(c[e>>2]|0)+16>>2]|0:0){c[j>>2]=c[f>>2];c[h>>2]=c[(
c[e>>2]|0)+92>>2];do c[k>>2]=Ya[c[(c[(c[h>>2]|0)+12>>2]|0)+16>>2]&
;127](c[h>>2]|0,j)|0;while((c[k>>2]|0)>>>0>=(c[(c[e>>2]|0)+16>>2]|0)
x3e;>>0);c[l>>2]=(c[k>>2]|0)==0?0:c[j>>2]|0}if(!(c[g>>2]|0)){l=c[l>>
2]|0;i=m;return l|0}c[c[g>>2]>>2]=c[k>>2];l=c[l>>2]|0;i=m;return l|0}function Nd(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;p=i;i=i+48|0;d=p+36|0;e=p+32|0;f=p+28|0;j=p+24|0;k=p+20|0;l=p+16|0
;m=p+12|0;g=p+8|0;h=p+4|0;n=p;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=33;o=c[d>
;>2]|0;i=p;return o|0}if(!(c[f>>2]|0)){c[d>>2]=6;o=c[d>>2]|0;i=p;return o|0}if((c[(c[f>
x3e;2]|0)+16>>2]|0)>131076){c[d>>2]=4;o=c[d>>2]|0;i=p;return o|0}c[m>>2]=0;while(1){
if((c[m>>2]|0)>>>0>=(c[(c[e>>2]|0)+24>>2]|0)>>>0)break;c[l>
;>2]=c[(c[e>>2]|0)+28+(c[m>>2]<<2)>>2];if(!(Kr(c[(c[c[l>>2]>>2]|
0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0)){o=10;break}c[m>>2]=(c[m>>2]|0)+1}do if((
o|0)==10){if((c[(c[f>>2]|0)+12>>2]|0)>(c[(c[c[l>>2]>>2]|0)+12>>2]|0)){Od(
c[e>>2]|0,c[l>>2]|0)|0;break}c[d>>2]=5;o=c[d>>2]|0;i=p;return o|0}while(0);c[k>>
;2]=c[c[e>>2]>>2];c[j>>2]=0;a:do if((c[(c[e>>2]|0)+24>>2]|0)>>>
0<32){c[l>>2]=bc(c[k>>2]|0,c[(c[f>>2]|0)+4>>2]|0,j)|0;if(!(c[j>>2]|0)){c[(
c[l>>2]|0)+4>>2]=c[e>>2];c[(c[l>>2]|0)+8>>2]=c[k>>2];c[c[l>>
;2]>>2]=c[f>>2];if(!(c[c[c[l>>2]>>2]>>2]&2|0?(c[j>>2]=Td(c[l>
;>2]|0)|0,(c[j>>2]|0)!=0):0))o=19;do if((o|0)==19){if(c[c[c[l>>2]>>2]>>2]&4|0)
c[(c[e>>2]|0)+168>>2]=c[l>>2];if((c[c[c[l>>2]>>2]>>2]&1|0?(c[g
x3e;>2]=c[l>>2],c[(c[g>>2]|0)+20>>2]=c[c[l>>2]>>2],(c[c[c[g>>2]
x3e;>2]>>2]&512|0)==0):0)?(c[j>>2]=ac(c[k>>2]|0,(c[g>>2]|0)+36|0)|0,c[j>
x3e;2]|0):0)break;if(c[(c[f>>2]|0)+24>>2]|0?(c[j>>2]=Ta[c[(c[f>>2]|0)+24>>2]
x26;63](c[l>>2]|0)|0,c[j>>2]|0):0)break;n=c[l>>2]|0;m=(c[e>>2]|0)+24|0;o=c[m>>
2]|0;c[m>>2]=o+1;c[(c[e>>2]|0)+28+(o<<2)>>2]=n;break a}while(0);if(c[c[c[l>>2]
x3e;>2]>>2]&1|0?(c[h>>2]=c[l>>2],(c[c[c[h>>2]>>2]>>2]&
;512|0)==0):0)fc(c[(c[h>>2]|0)+36>>2]|0);if((c[c[c[l>>2]>>2]>>2]&2|0?(c[n
>>2]=c[l>>2],(c[(c[(c[n>>2]|0)+20>>2]|0)+36>>2]|0)==1869968492):0)?c[(c[n>
;>2]|0)+60>>2]|0:0)Va[c[(c[(c[(c[n>>2]|0)+20>>2]|0)+56>>2]|0)+20>>2]&
;63](c[(c[n>>2]|0)+60>>2]|0);Fb(c[k>>2]|0,c[l>>2]|0);c[l>>2]=0}}else c[j>
x3e;2]=48;while(0);c[d>>2]=c[j>>2];o=c[d>>2]|0;i=p;return o|0}function Od(a,b){a=a|0;b=b|0;var d=0
,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;if(!(c[e>
x3e;2]|0)){c[d>>2]=33;b=c[d>>2]|0;i=j;return b|0}a:do if(c[f>>2]|0){c[g>>2]=(c[e>
x3e;2]|0)+28;c[h>>2]=(c[g>>2]|0)+(c[(c[e>>2]|0)+24>>2]<<2);while(1){if((c[g>
;>2]|0)>>>0>=(c[h>>2]|0)>>>0)break a;if((c[c[g>>2]>>2]|0)==(
c[f>>2]|0))break;c[g>>2]=(c[g>>2]|0)+4}b=(c[e>>2]|0)+24|0;c[b>>2]=(c[b>
x3e;2]|0)+-1;c[h>>2]=(c[h>>2]|0)+-4;while(1){if((c[g>>2]|0)>>>0>=(c[h>>
;2]|0)>>>0)break;c[c[g>>2]>>2]=c[(c[g>>2]|0)+4>>2];c[g>>2]=(c[g
>>2]|0)+4}c[c[h>>2]>>2]=0;Pd(c[f>>2]|0);c[d>>2]=0;b=c[d>>2]|0;i=j;return
b|0}while(0);c[d>>2]=34;b=c[d>>2]|0;i=j;return b|0}function Pd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|
0;b=g+12|0;f=g+8|0;d=g+4|0;e=g;c[b>>2]=a;c[f>>2]=c[(c[b>>2]|0)+8>>2];c[d>>2]=c
[c[b>>2]>>2];c[e>>2]=c[(c[b>>2]|0)+4>>2];if(c[(c[b>>2]|0)+12+4>
x3e;2]|0)Va[c[(c[b>>2]|0)+12+4>>2]&63](c[b>>2]|0);if(c[e>>2]|0?(c[(c[e>>2
]|0)+168>>2]|0)==(c[b>>2]|0):0)c[(c[e>>2]|0)+168>>2]=0;if(c[c[c[b>>2]>>
;2]>>2]&2|0)Qd(c[b>>2]|0);if(c[c[c[b>>2]>>2]>>2]&1|0)Sd(c[b>>
;2]|0);if(!(c[(c[d>>2]|0)+28>>2]|0)){f=c[f>>2]|0;a=c[b>>2]|0;Fb(f,a);c[b>>2]=0
;i=g;return}Va[c[(c[d>>2]|0)+28>>2]&63](c[b>>2]|0);f=c[f>>2]|0;a=c[b>>2]|
0;Fb(f,a);c[b>>2]=0;i=g;return}function Qd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0
;f=h+4|0;g=h;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+4>>2];c[e>>2]=c[c[d>>2]
x3e;>2];c[f>>2]=Rb((c[d>>2]|0)+156|0,c[b>>2]|0)|0;if(!(c[f>>2]|0)){i=h;return}c[g
x3e;>2]=c[b>>2];if((c[(c[(c[g>>2]|0)+20>>2]|0)+36>>2]|0)==1869968492?c[(c[g>
x3e;2]|0)+60>>2]|0:0)Va[c[(c[(c[(c[g>>2]|0)+20>>2]|0)+56>>2]|0)+20>>2]&63
](c[(c[g>>2]|0)+60>>2]|0);wd((c[d>>2]|0)+156|0,c[f>>2]|0);Fb(c[e>>2]|0,c[f>
;>2]|0);c[f>>2]=0;Rd(c[d>>2]|0);i=h;return}function Rd(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]=Jb(c[d>>2]|0,1869968492,0)|0;c[(c[d>>2]|0)+164>>2]=c[e>
;>2];i=b;return}function Sd(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;zd((c[b>>2]|0)+24|0,8,c[(c[
b>>2]|0)+8>>2]|0,c[b>>2]|0);if(c[c[c[b>>2]>>2]>>2]&512|0){i=d;return
}fc(c[(c[b>>2]|0)+36>>2]|0);i=d;return}function Td(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+
32|0;b=l+24|0;f=l+20|0;g=l+16|0;e=l+12|0;h=l+8|0;j=l+4|0;d=l;c[b>>2]=a;c[f>>2]=c[(c[b>>2]|0)+4>
;>2];c[g>>2]=c[c[f>>2]>>2];c[h>>2]=0;c[h>>2]=bc(c[g>>2]|0,12,e)|
0;if(c[e>>2]|0){k=c[e>>2]|0;i=l;return k|0}c[j>>2]=c[b>>2];c[d>>2]=c[c[b>
x3e;2]>>2];c[(c[j>>2]|0)+20>>2]=c[d>>2];c[(c[j>>2]|0)+24>>2]=c[(c[d
x3e;>2]|0)+36>>2];if((c[(c[d>>2]|0)+36>>2]|0)==1869968492?c[(c[(c[d>>2]|0)+56>
x3e;2]|0)+4>>2]|0:0){c[e>>2]=Ya[c[(c[(c[d>>2]|0)+56>>2]|0)+4>>2]&127](c[g
>>2]|0,(c[j>>2]|0)+60|0)|0;if(!(c[e>>2]|0)){c[(c[j>>2]|0)+64>>2]=c[(c[(c[d>
;>2]|0)+56>>2]|0)+16>>2];c[(c[j>>2]|0)+68>>2]=c[(c[d>>2]|0)+40>>
;2];k=6}}else k=6;if((k|0)==6){c[(c[h>>2]|0)+8>>2]=c[b>>2];td((c[f>>2]|0)+156|0,c[h>
;>2]|0);Rd(c[f>>2]|0)}if(!(c[e>>2]|0)){k=c[e>>2]|0;i=l;return k|0}Fb(c[g>>2]|0,c[h
x3e;>2]|0);c[h>>2]=0;k=c[e>>2]|0;i=l;return k|0}function Ud(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]=Wc(c[g>>2]|0,c[f>>2]|0)|
0;if(!(c[d>>2]|0)){g=0;i=e;return g|0}g=c[(c[c[d>>2]>>2]|0)+20>>2]|0;i=e;return g|0}function
Vd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;j=k+12|0;g=k+8|0;f=k+4|0;h=k;c[d>>
2]=a;c[e>>2]=b;c[j>>2]=0;if(!(c[d>>2]|0)){j=c[j>>2]|0;i=k;return j|0}if(c[(c[c[d>
x3e;2]>>2]|0)+32>>2]|0)c[j>>2]=Ya[c[(c[c[d>>2]>>2]|0)+32>>2]&127
](c[d>>2]|0,c[e>>2]|0)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}c[g>>2]=c[(c
[d>>2]|0)+4>>2];c[f>>2]=(c[g>>2]|0)+28;c[h>>2]=(c[f>>2]|0)+(c[(c[g
x3e;>2]|0)+24>>2]<<2);while(1){if((c[f>>2]|0)>>>0>=(c[h>>2]|0)
x3e;>>0){d=11;break}if(((c[c[f>>2]>>2]|0)!=(c[d>>2]|0)?c[(c[c[c[f>>2]>>
;2]>>2]|0)+32>>2]|0:0)?(c[j>>2]=Ya[c[(c[c[c[f>>2]>>2]>>2]|0)+32>
;>2]&127](c[c[f>>2]>>2]|0,c[e>>2]|0)|0,c[j>>2]|0):0){d=11;break}c[f>>
;2]=(c[f>>2]|0)+4}if((d|0)==11){j=c[j>>2]|0;i=k;return j|0}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;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=b;c[h>>2]=0;
if(!(c[e>>2]|0)){c[d>>2]=6;a=c[d>>2]|0;i=j;return a|0}c[h>>2]=bc(c[e>>2]|0,200
,g)|0;if(c[g>>2]|0){c[d>>2]=c[g>>2];a=c[d>>2]|0;i=j;return a|0}c[c[h>>2]>
x3e;2]=c[e>>2];c[(c[h>>2]|0)+176>>2]=16384;a=bc(c[e>>2]|0,16384,g)|0;c[(c[h>>2
]|0)+172>>2]=a;if(c[g>>2]|0){Fb(c[e>>2]|0,c[h>>2]|0);c[h>>2]=0;c[d>>
2]=c[g>>2];a=c[d>>2]|0;i=j;return a|0}else{c[(c[h>>2]|0)+12>>2]=2;c[(c[h>>2]|0
)+16>>2]=4;c[(c[h>>2]|0)+20>>2]=4;c[(c[h>>2]|0)+196>>2]=1;c[c[f>>2]
x3e;>2]=c[h>>2];c[d>>2]=0;a=c[d>>2]|0;i=j;return a|0}return 0}function Xd(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;p=i;i=i+48|0;g=p+44|0;h=p+40|0;j=p+36|0;k=p+32|0;l=p+28|0;m=p+24|0
;o=p+4|0;n=p;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>
2]=c[(c[c[h>>2]>>2]|0)+96>>2];if(!(c[(c[(c[n>>2]|0)+20>>2]|0)+96>>2]|
0)){c[g>>2]=0;b=c[g>>2]|0;i=p;return b|0}c[o>>2]=0;c[o+4>>2]=c[j>>2];c[o+8>
;>2]=c[k>>2];if(!(c[l>>2]|0))c[l>>2]=c[m>>2];if(!(c[m>>2]|0))c[m>>
;2]=c[l>>2];if(!(c[l>>2]|0)){c[m>>2]=72;c[l>>2]=72}c[o+12>>2]=c[l>>2
];c[o+16>>2]=c[m>>2];c[g>>2]=Ya[c[(c[(c[n>>2]|0)+20>>2]|0)+96>>2]&
;127](c[h>>2]|0,o)|0;b=c[g>>2]|0;i=p;return b|0}function Yd(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;l=i;i=i+48|0;e=l+36|0;f=l+32|0;g=l+28|0;h=l+24|0;k=l+4|0;j=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=
d;c[j>>2]=c[(c[c[f>>2]>>2]|0)+96>>2];if(c[(c[(c[j>>2]|0)+20>>2]|0)+96
>>2]|0){c[k>>2]=0;c[k+4>>2]=c[g>>2]<<6;c[k+8>>2]=c[h>>2]
x3c;<6;c[k+12>>2]=0;c[k+16>>2]=0;c[e>>2]=Ya[c[(c[(c[j>>2]|0)+20>>2]|0)+96
>>2]&127](c[f>>2]|0,k)|0;b=c[e>>2]|0;i=l;return b|0}else{c[e>>2]=0;b=c[e>>
;2]|0;i=l;return b|0}return 0}function Zd(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,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;E=i;i=i+128|0;g=E+124|0;h=E+120|0;j=E+116|0;k=E+112|0;w=E+104|0;v=E+96|0;y=E+88|0;r=E+84|
0;p=E+80|0;u=E+76|0;m=E+72|0;q=E+68|0;n=E+64|0;t=E+60|0;s=E+56|0;l=E+52|0;o=E+48|0;z=E+40|0;A=E+32|0;x=E+24|0;B=E+16|0;C=E+8|0;D
=E;c[h>>2]=d;c[j>>2]=e;c[k>>2]=f;if(!((c[h>>2]|0)!=0&(c[j>>2]|0)!=0)){c[g
>>2]=6;D=c[g>>2]|0;i=E;return D|0}c[s>>2]=c[(c[j>>2]|0)+16>>2];c[l>>
2]=c[(c[j>>2]|0)+20>>2];c[n>>2]=0;c[q>>2]=0;a:while(1){if((c[q>>2]|0)>=(b
[c[h>>2]>>1]|0)){e=32;break}c[o>>2]=b[(c[(c[h>>2]|0)+12>>2]|0)+(c[q>>
;2]<<1)>>1];if((c[o>>2]|0)<0){e=34;break}c[p>>2]=(c[(c[h>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<3);f=(c[(c[h>>2]|0)+4>>2]|0)+(c[n>>2]<<3)|0;c[y
x3e;>2]=c[f>>2];c[y+4>>2]=c[f+4>>2];c[y>>2]=(c[y>>2]<<c[s>
x3e;2])-(c[l>>2]|0);c[y+4>>2]=(c[y+4>>2]<<c[s>>2])-(c[l>>2]|0);f=(c[(
c[h>>2]|0)+4>>2]|0)+(c[o>>2]<<3)|0;c[w>>2]=c[f>>2];c[w+4>>
2]=c[f+4>>2];c[w>>2]=(c[w>>2]<<c[s>>2])-(c[l>>2]|0);c[w+4>>
;2]=(c[w+4>>2]<<c[s>>2])-(c[l>>2]|0);c[v>>2]=c[y>>2];c[v+4>>
;2]=c[y+4>>2];c[r>>2]=(c[(c[h>>2]|0)+4>>2]|0)+(c[n>>2]<<3);c[u>
x3e;2]=(c[(c[h>>2]|0)+8>>2]|0)+(c[n>>2]|0);c[t>>2]=a[c[u>>2]>>0]&
;3;if((c[t>>2]|0)==2){e=34;break}if(!(c[t>>2]|0)){if((a[(c[(c[h>>2]|0)+8>>2]|0)+(c[o>
;>2]|0)>>0]&3|0)==1){c[y>>2]=c[w>>2];c[y+4>>2]=c[w+4>>2];c[p>
x3e;2]=(c[p>>2]|0)+-8}else{c[y>>2]=((c[y>>2]|0)+(c[w>>2]|0)|0)/2|0;c[y+4>>2]=((
c[y+4>>2]|0)+(c[w+4>>2]|0)|0)/2|0;c[w>>2]=c[y>>2];c[w+4>>2]=c[y+4>>2
]}c[r>>2]=(c[r>>2]|0)+-8;c[u>>2]=(c[u>>2]|0)+-1}c[m>>2]=Ya[c[c[j>>2]
x3e;>2]&127](y,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break}b:while(1){if((c[r>>2]|0)>>
;>0>=(c[p>>2]|0)>>>0){e=29;break}c[r>>2]=(c[r>>2]|0)+8;c[u>>2]=(
c[u>>2]|0)+1;c[t>>2]=a[c[u>>2]>>0]&3;switch(c[t>>2]|0){case 1:{c[z>
x3e;2]=(c[c[r>>2]>>2]<<c[s>>2])-(c[l>>2]|0);c[z+4>>2]=(c[(c[r>
x3e;2]|0)+4>>2]<<c[s>>2])-(c[l>>2]|0);c[m>>2]=Ya[c[(c[j>>2]|0)+4>
;>2]&127](z,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else continue b}case 0:{c[v>>2]=(c[c
[r>>2]>>2]<<c[s>>2])-(c[l>>2]|0);c[v+4>>2]=(c[(c[r>>2]|0)+
4>>2]<<c[s>>2])-(c[l>>2]|0);while(1){if((c[r>>2]|0)>>>0>=(
c[p>>2]|0)>>>0){e=23;break b}c[r>>2]=(c[r>>2]|0)+8;c[u>>2]=(c[u>>
;2]|0)+1;c[t>>2]=a[c[u>>2]>>0]&3;c[A>>2]=(c[c[r>>2]>>2]<
x3c;c[s>>2])-(c[l>>2]|0);c[A+4>>2]=(c[(c[r>>2]|0)+4>>2]<<c[s>
x3e;2])-(c[l>>2]|0);if((c[t>>2]|0)==1)break;if(c[t>>2]|0){e=34;break a}c[x>>2]=((c[v>
;>2]|0)+(c[A>>2]|0)|0)/2|0;c[x+4>>2]=((c[v+4>>2]|0)+(c[A+4>>2]|0)|0)/2|0;c[m>
x3e;2]=Oa[c[(c[j>>2]|0)+8>>2]&63](v,x,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a};c[v
x3e;>2]=c[A>>2];c[v+4>>2]=c[A+4>>2]}c[m>>2]=Oa[c[(c[j>>2]|0)+8>>
;2]&63](v,A,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else continue b}default:{if(((c[r>>2]|0)+
8|0)>>>0>(c[p>>2]|0)>>>0){e=34;break a}if((a[(c[u>>2]|0)+1>>0]
x26;3|0)!=2){e=34;break a}c[r>>2]=(c[r>>2]|0)+16;c[u>>2]=(c[u>>2]|0)+2;c[B>>2]=(
c[(c[r>>2]|0)+-16>>2]<<c[s>>2])-(c[l>>2]|0);c[B+4>>2]=(c[(c[r>
x3e;2]|0)+-16+4>>2]<<c[s>>2])-(c[l>>2]|0);c[C>>2]=(c[(c[r>>2]|0)+-8
x3e;>2]<<c[s>>2])-(c[l>>2]|0);c[C+4>>2]=(c[(c[r>>2]|0)+-8+4>>2]
x3c;<c[s>>2])-(c[l>>2]|0);if((c[r>>2]|0)>>>0>(c[p>>2]|0)>
x3e;>0){e=28;break b}c[D>>2]=(c[c[r>>2]>>2]<<c[s>>2])-(c[l>>2]|
0);c[D+4>>2]=(c[(c[r>>2]|0)+4>>2]<<c[s>>2])-(c[l>>2]|0);c[m>>
;2]=Wa[c[(c[j>>2]|0)+12>>2]&31](B,C,D,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else
continue b}}}if((e|0)==23)c[m>>2]=Oa[c[(c[j>>2]|0)+8>>2]&63](v,y,c[k>>2]|0)|0;else
if((e|0)==28)c[m>>2]=Wa[c[(c[j>>2]|0)+12>>2]&31](B,C,y,c[k>>2]|0)|0;else if((e|0)==
29)c[m>>2]=Ya[c[(c[j>>2]|0)+4>>2]&127](y,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;
break}c[n>>2]=(c[o>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+1}if((e|0)==32){c[g>>2]=0;D=c[
g>>2]|0;i=E;return D|0}else if((e|0)==33){c[g>>2]=c[m>>2];D=c[g>>2]|0;i=E;return D|0}else
if((e|0)==34){c[g>>2]=20;D=c[g>>2]|0;i=E;return D|0}return 0}function _d(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0;l=p+28|0;o=p+24|0;k=p+20|0;n=p+16|0;h=p+12|0;g=p+8|0;j=p+4|0;m=p;c
[e>>2]=a;c[f>>2]=d;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=p;return}a:do if(!(b[(c[e
>>2]|0)+2>>1]|0)){c[l>>2]=0;c[o>>2]=0;c[k>>2]=0;c[n>>2]=0}else{c[h
x3e;>2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=(c[h>>2]|0)+(b[(c[e>>2]|0)+2>>
;1]<<3);a=c[c[h>>2]>>2]|0;c[k>>2]=a;c[l>>2]=a;a=c[(c[h>>2]|0)+4>
;>2]|0;c[n>>2]=a;c[o>>2]=a;c[h>>2]=(c[h>>2]|0)+8;while(1){if((c[h>>2]|0)
x3e;>>0>=(c[g>>2]|0)>>>0)break a;c[j>>2]=c[c[h>>2]>>2];if((
c[j>>2]|0)<(c[l>>2]|0))c[l>>2]=c[j>>2];if((c[j>>2]|0)>(c[k>>
;2]|0))c[k>>2]=c[j>>2];c[m>>2]=c[(c[h>>2]|0)+4>>2];if((c[m>>2]|0)<
;(c[o>>2]|0))c[o>>2]=c[m>>2];if((c[m>>2]|0)>(c[n>>2]|0))c[n>>2]=
c[m>>2];c[h>>2]=(c[h>>2]|0)+8}}while(0);c[c[f>>2]>>2]=c[l>>2];c[(c[f
>>2]|0)+8>>2]=c[k>>2];c[(c[f>>2]|0)+4>>2]=c[o>>2];c[(c[f>>
2]|0)+12>>2]=c[n>>2];i=p;return}function $d(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,o=0,p=0,q=0
,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+128|0;d=F+116|0;e=F+112|0;z=F+108|0;D=F+104|0;C=F+100|0;A=F
+96|0;B=F+92|0;f=F+88|0;l=F+84|0;n=F+80|0;s=F+76|0;r=F+72|0;m=F+68|0;t=F+56|0;u=F+44|0;h=F+40|0;g=F+36|0;k=F+32|0;j=F+28|0;q=F+24
|0;x=F+20|0;o=F+16|0;p=F+12|0;v=F+8|0;w=F+4|0;y=F;c[e>>2]=a;c[z>>2]=32768;c[D>>2]=32768;c[C>
x3e;2]=-32768;c[A>>2]=0;c[B>>2]=0;c[u>>2]=c[42];c[u+4>>2]=c[43];c[u+8>>2]=c[44
];if(c[e>>2]|0?(b[(c[e>>2]|0)+2>>1]|0)>0:0){c[l>>2]=c[(c[e>>2]|0)+4>
x3e;2];c[f>>2]=c[(c[e>>2]|0)+12>>2];while(1){if((c[f>>2]|0)>>>0>=((c
[(c[e>>2]|0)+12>>2]|0)+(b[c[e>>2]>>1]<<1)|0)>>>0)break;c[h>
;>2]=32768;c[g>>2]=-32768;c[k>>2]=32768;c[j>>2]=-32768;c[n>>2]=(c[(c[e>>2
]|0)+4>>2]|0)+(b[c[f>>2]>>1]<<3);if((c[n>>2]|0)>>>0>=((c[l
>>2]|0)+16|0)>>>0){c[r>>2]=c[l>>2];while(1){if((c[r>>2]|0)>>>
;0>(c[n>>2]|0)>>>0)break;if((c[c[r>>2]>>2]|0)<(c[h>>2]|0))c[h
x3e;>2]=c[c[r>>2]>>2];if((c[c[r>>2]>>2]|0)>(c[g>>2]|0))c[g>>
;2]=c[c[r>>2]>>2];if((c[(c[r>>2]|0)+4>>2]|0)<(c[k>>2]|0))c[k>>2
]=c[(c[r>>2]|0)+4>>2];if((c[(c[r>>2]|0)+4>>2]|0)>(c[j>>2]|0))c[j>>
;2]=c[(c[r>>2]|0)+4>>2];c[r>>2]=(c[r>>2]|0)+8}if(((c[h>>2]|0)<(c[z>
x3e;2]|0)?(c[h>>2]|0)!=(c[g>>2]|0):0)?(c[k>>2]|0)!=(c[j>>2]|0):0){c[z>>2]=c[h
x3e;>2];c[D>>2]=c[k>>2];c[C>>2]=c[j>>2];c[A>>2]=c[l>>2];c[B>
;>2]=c[n>>2]}}c[f>>2]=(c[f>>2]|0)+2;c[l>>2]=(c[n>>2]|0)+8}if((c[z>
x3e;2]|0)==32768){c[d>>2]=0;E=c[d>>2]|0;i=F;return E|0}c[t>>2]=((c[D>>2]|0)*3|0)+(c[C>
;>2]|0)>>2;c[t+4>>2]=(c[D>>2]|0)+(c[C>>2]|0)>>1;c[t+8>>2]=(c[D
x3e;>2]|0)+((c[C>>2]|0)*3|0)>>2;c[m>>2]=0;while(1){if((c[m>>2]|0)>=3)break;a:while
(1){c[q>>2]=32768;c[x>>2]=-32768;c[w>>2]=0;c[v>>2]=0;c[p>>2]=0;c[o>>
2]=0;c[s>>2]=c[B>>2];c[r>>2]=c[A>>2];while(1){if((c[r>>2]|0)>>>
0>(c[B>>2]|0)>>>0)break a;if((c[(c[r>>2]|0)+4>>2]|0)==(c[t+(c[m>>2]
x3c;<2)>>2]|0))break;if((c[(c[s>>2]|0)+4>>2]|0)==(c[t+(c[m>>2]<<2)>
x3e;2]|0))break;if(!((c[(c[r>>2]|0)+4>>2]|0)<(c[t+(c[m>>2]<<2)>>2]|0)?(c[(
c[s>>2]|0)+4>>2]|0)<(c[t+(c[m>>2]<<2)>>2]|0):0))E=34;do if((E|0)==34){E=0
;if((c[(c[r>>2]|0)+4>>2]|0)>(c[t+(c[m>>2]<<2)>>2]|0)?(c[(c[s>>2
]|0)+4>>2]|0)>(c[t+(c[m>>2]<<2)>>2]|0):0)break;D=xb((c[c[r>>2]>>
;2]|0)-(c[c[s>>2]>>2]|0)|0,(c[t+(c[m>>2]<<2)>>2]|0)-(c[(c[s>>2]|0)+4
>>2]|0)|0,(c[(c[r>>2]|0)+4>>2]|0)-(c[(c[s>>2]|0)+4>>2]|0)|0)|0;c[y>>
2]=D+(c[c[s>>2]>>2]|0);if((c[y>>2]|0)<(c[q>>2]|0)){c[q>>2]=c[y>>
;2];c[o>>2]=c[s>>2];c[p>>2]=c[r>>2]}if((c[y>>2]|0)>(c[x>>2]|0)){
c[x>>2]=c[y>>2];c[v>>2]=c[s>>2];c[w>>2]=c[r>>2]}}while(0);c[s>
x3e;2]=c[r>>2];c[r>>2]=(c[r>>2]|0)+8}D=t+(c[m>>2]<<2)|0;c[D>>2]=(c[D
>>2]|0)+1}do if((c[o>>2]|0)!=0&(c[v>>2]|0)!=0){if((c[(c[o>>2]|0)+4>>2]|0)
x3c;(c[(c[p>>2]|0)+4>>2]|0)?(c[(c[v>>2]|0)+4>>2]|0)>(c[(c[w>>2]|0)+4>
;>2]|0):0){c[u+(c[m>>2]<<2)>>2]=0;break}if((c[(c[o>>2]|0)+4>>2]|0)>(
c[(c[p>>2]|0)+4>>2]|0)?(c[(c[v>>2]|0)+4>>2]|0)<(c[(c[w>>2]|0)+4>>
;2]|0):0){c[u+(c[m>>2]<<2)>>2]=1;break}c[u+(c[m>>2]<<2)>>2]=2}while(
0);c[m>>2]=(c[m>>2]|0)+1}do if((c[u>>2]|0)!=2){if((c[u>>2]|0)!=(c[u+4>>2]|0)?(
c[u>>2]|0)!=(c[u+8>>2]|0):0)break;c[d>>2]=c[u>>2];E=c[d>>2]|0;i=F;return E|0}while
(0);if((c[u+4>>2]|0)!=2?(c[u+4>>2]|0)==(c[u+8>>2]|0):0){c[d>>2]=c[u+4>>2];E=c[
d>>2]|0;i=F;return E|0}c[d>>2]=0;E=c[d>>2]|0;i=F;return E|0}c[d>>2]=0;E=c[d>>2
]|0;i=F;return E|0}function ae(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;f=h+12|0;g=h+8|0;b=h+4|0;e=h;c[d
x3e;>2]=a;c[f>>2]=c[c[d>>2]>>2];c[g>>2]=c[(c[d>>2]|0)+4>>2];j=c
[f>>2]|0;a=c[g>>2]|0;c[b>>2]=((c[f>>2]|0)>=0?j:0-j|0)|((c[g>>2]|0)>=
0?a:0-a|0);c[e>>2]=0;if((c[b>>2]|0)>=65536){c[b>>2]=c[b>>2]>>16;c[e>
x3e;2]=(c[e>>2]|0)+16}if((c[b>>2]|0)>=256){c[b>>2]=c[b>>2]>>8;c[e>
x3e;2]=(c[e>>2]|0)+8}if((c[b>>2]|0)>=16){c[b>>2]=c[b>>2]>>4;c[e>>
;2]=(c[e>>2]|0)+4}if((c[b>>2]|0)>=4){c[b>>2]=c[b>>2]>>2;c[e>>2]=(
c[e>>2]|0)+2}if((c[b>>2]|0)>=2){c[b>>2]=c[b>>2]>>1;c[e>>2]=(c[e
>>2]|0)+1}a=c[e>>2]|0;if((c[e>>2]|0)<=27){c[e>>2]=27-a;c[c[d>>2]>>
;2]=c[f>>2]<<c[e>>2];c[(c[d>>2]|0)+4>>2]=c[g>>2]<<c[e>
;>2];j=c[e>>2]|0;i=h;return j|0}else{c[e>>2]=a-27;c[c[d>>2]>>2]=c[f>>2]
x3e;>c[e>>2];c[(c[d>>2]|0)+4>>2]=c[g>>2]>>c[e>>2];c[e>>
;2]=0-(c[e>>2]|0);j=c[e>>2]|0;i=h;return j|0}return 0}function be(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k
=0,l=0;l=i;i=i+32|0;h=l+24|0;j=l+20|0;g=l+16|0;e=l+12|0;k=l+8|0;f=l+4|0;d=l;c[h>>2]=a;c[k>>2]=c[c[h>>
;2]>>2];c[f>>2]=c[(c[h>>2]|0)+4>>2];c[j>>2]=0;if((c[k>>2]|0)<0){
c[k>>2]=0-(c[k>>2]|0);c[f>>2]=0-(c[f>>2]|0);c[j>>2]=11796480}if((c[f>>
;2]|0)>0)c[j>>2]=0-(c[j>>2]|0);c[d>>2]=180;a=c[f>>2]|0;b=c[k>>2]<<
;1;if((c[f>>2]|0)<0){c[g>>2]=a+b;c[k>>2]=(c[k>>2]|0)-(c[f>>2]<<
1);c[f>>2]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)-(c[b
x3e;>2]|0)}else{c[g>>2]=a-b;c[k>>2]=(c[k>>2]|0)+(c[f>>2]<<1);c[f>>
;2]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)+(c[b>>2]|0)}
c[e>>2]=0;do{a=c[f>>2]|0;b=c[k>>2]>>c[e>>2];if((c[f>>2]|0)<0){c
[g>>2]=a+b;c[k>>2]=(c[k>>2]|0)-(c[f>>2]>>c[e>>2]);c[f>>2]=
c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)-(c[b>>2]|0)}else
{c[g>>2]=a-b;c[k>>2]=(c[k>>2]|0)+(c[f>>2]>>c[e>>2]);c[f>>2
]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)+(c[b>>2]|0)}b=(
c[e>>2]|0)+1|0;c[e>>2]=b}while((b|0)<23);a=c[j>>2]|0;if((c[j>>2]|0)>=0){c[j>
;>2]=a+16&-32;g=c[k>>2]|0;k=c[h>>2]|0;c[k>>2]=g;j=c[j>>2]|0;k=c[h>>2
]|0;k=k+4|0;c[k>>2]=j;i=l;return}else{c[j>>2]=0-(0-a+16&-32);g=c[k>>2]|0;k=c[h>>2]|
0;c[k>>2]=g;j=c[j>>2]|0;k=c[h>>2]|0;k=k+4|0;c[k>>2]=j;i=l;return}}function ce(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;f=i;i=i+48|0;b=f+36|0;e=f+32|0;m=f+28|0;k=f+24|0;n=f+20|0;l=f+16|0;d=f+12|0;h=f+8|0
;j=f+4|0;g=f;c[b>>2]=a;c[e>>2]=c[b>>2];a=c[b>>2]|0;c[b>>2]=(c[b>>2]|
0)>=0?a:0-a|0;c[m>>2]=(c[b>>2]|0)>>>16;c[k>>2]=c[b>>2]&65535;c[
n>>2]=17797;c[l>>2]=47593;c[d>>2]=_(c[n>>2]|0,c[m>>2]|0)|0;a=_(c[n>>
2]|0,c[k>>2]|0)|0;c[h>>2]=a+(_(c[l>>2]|0,c[m>>2]|0)|0);c[j>>2]=(_(c[l>>
;2]|0,c[k>>2]|0)|0)>>>16;c[g>>2]=(c[h>>2]|0)>>>0>=(c[j>>
;2]|0)>>>0?c[h>>2]|0:c[j>>2]|0;c[h>>2]=(c[h>>2]|0)+(c[j>>2]|0);
c[d>>2]=(c[d>>2]|0)+((c[h>>2]|0)>>>16);if((c[h>>2]|0)>>>0
x3e;=(c[g>>2]|0)>>>0){l=c[d>>2]|0;c[b>>2]=l;l=c[e>>2]|0;l=(l|0)>=0;m
=c[b>>2]|0;n=0-m|0;n=l?m:n;i=f;return n|0}c[d>>2]=(c[d>>2]|0)+65536;l=c[d>>2]|0;c[b>
;>2]=l;l=c[e>>2]|0;l=(l|0)>=0;m=c[b>>2]|0;n=0-m|0;n=l?m:n;i=f;return n|0}function de(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;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[j>>2]=b;c[f>
x3e;2]=d;c[g>>2]=ee(c[e>>2]|0,c[j>>2]|0)|0;if(c[g>>2]|0){j=c[g>>2]|0;i=h;return
j|0}c[c[f>>2]>>2]=c[(c[e>>2]|0)+32>>2];c[(c[e>>2]|0)+32>>2]=0;c[(c[
e>>2]|0)+36>>2]=0;j=c[g>>2]|0;i=h;return j|0}function ee(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,
j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;b=c[d>
x3e;2]|0;if(!(c[(c[d>>2]|0)+20>>2]|0)){if((c[b+8>>2]|0)>>>0<(c[(c[d>>
;2]|0)+4>>2]|0)>>>0?((c[(c[d>>2]|0)+4>>2]|0)-(c[(c[d>>2]|0)+8>>
2]|0)|0)>>>0>=(c[e>>2]|0)>>>0:0){c[(c[d>>2]|0)+32>>2]=(c[c[d>
;>2]>>2]|0)+(c[(c[d>>2]|0)+8>>2]|0);c[(c[d>>2]|0)+36>>2]=(c[(c[d>>
;2]|0)+32>>2]|0)+(c[e>>2]|0);h=(c[d>>2]|0)+8|0;c[h>>2]=(c[h>>2]|0)+(c[e>
x3e;2]|0);h=c[f>>2]|0;i=j;return h|0}c[f>>2]=85;h=c[f>>2]|0;i=j;return h|0}c[g>>2]=c[b+28
>>2];if((c[e>>2]|0)>>>0>(c[(c[d>>2]|0)+4>>2]|0)>>>0){
c[f>>2]=85;h=c[f>>2]|0;i=j;return h|0}a=cc(c[g>>2]|0,c[e>>2]|0,f)|0;c[c[d>>2]
x3e;>2]=a;if(c[f>>2]|0){h=c[f>>2]|0;i=j;return h|0}c[h>>2]=Wa[c[(c[d>>2]|0)+20>
;>2]&31](c[d>>2]|0,c[(c[d>>2]|0)+8>>2]|0,c[c[d>>2]>>2]|0,c[e>
x3e;2]|0)|0;if((c[h>>2]|0)>>>0<(c[e>>2]|0)>>>0){Fb(c[g>>2]|0,c[
c[d>>2]>>2]|0);c[c[d>>2]>>2]=0;c[f>>2]=85}c[(c[d>>2]|0)+32>>
;2]=c[c[d>>2]>>2];c[(c[d>>2]|0)+36>>2]=(c[(c[d>>2]|0)+32>>2]|0)+(c[e
>>2]|0);g=(c[d>>2]|0)+8|0;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0);h=c[f>>2]|
0;i=j;return h|0}function fe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>
x3e;2]=b;if(c[d>>2]|0?c[(c[d>>2]|0)+20>>2]|0:0){c[f>>2]=c[(c[d>>2]|0)+28>
x3e;2];Fb(c[f>>2]|0,c[c[e>>2]>>2]|0);c[c[e>>2]>>2]=0}c[c[e>>2]>
x3e;2]=0;i=g;return}function ge(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(c[(c[b>>2]|0)+
20>>2]|0){c[d>>2]=c[(c[b>>2]|0)+28>>2];Fb(c[d>>2]|0,c[c[b>>2]>
x3e;2]|0);c[c[b>>2]>>2]=0}c[(c[b>>2]|0)+32>>2]=0;c[(c[b>>2]|0)+36>>2
]=0;i=e;return}function he(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f;e=f+4|0;c[d>>2]=b;a[e>>0]=0;if((c[(c[d
x3e;>2]|0)+32>>2]|0)>>>0>=(c[(c[d>>2]|0)+36>>2]|0)>>>0){b=
a[e>>0]|0;i=f;return b|0}d=(c[d>>2]|0)+32|0;b=c[d>>2]|0;c[d>>2]=b+1;a[e>>0]=a[
b>>0]|0;b=a[e>>0]|0;i=f;return b|0}function ie(e){e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;f=j+4|0;g=j;h=j+8|0
;c[f>>2]=e;b[h>>1]=0;c[g>>2]=c[(c[f>>2]|0)+32>>2];if(((c[g>>2]|0)+1|
0)>>>0>=(c[(c[f>>2]|0)+36>>2]|0)>>>0){g=c[g>>2]|0;e=c[f>
x3e;2]|0;e=e+32|0;c[e>>2]=g;e=b[h>>1]|0;i=j;return e|0}c[g>>2]=(c[g>>2]|0)+2;b[h>
x3e;1]=a[(c[g>>2]|0)+-2>>0]<<16>>16<<8|d[(c[g>>2]|0)+-2+1>>
;0]<<0;g=c[g>>2]|0;e=c[f>>2]|0;e=e+32|0;c[e>>2]=g;e=b[h>>1]|0;i=j;return e|0}function
je(b){b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=b;c[g>>2]=0;c[f>>2]=c[(c
[e>>2]|0)+32>>2];if(((c[f>>2]|0)+3|0)>>>0>=(c[(c[e>>2]|0)+36>
x3e;2]|0)>>>0){f=c[f>>2]|0;b=c[e>>2]|0;b=b+32|0;c[b>>2]=f;b=c[g>>2]|0;i=h
;return b|0}c[f>>2]=(c[f>>2]|0)+4;c[g>>2]=a[(c[f>>2]|0)+-4>>0]<<24|d
[(c[f>>2]|0)+-4+1>>0]<<16|d[(c[f>>2]|0)+-4+2>>0]<<8|d[(c[f>>
;2]|0)+-4+3>>0]<<0;f=c[f>>2]|0;b=c[e>>2]|0;b=b+32|0;c[b>>2]=f;b=c[g>>
;2]|0;i=h;return b|0}function ke(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+9|0;f=j+4|0;g=j;h=j+8|0;c[f>>
;2]=b;c[g>>2]=d;a[h>>0]=0;c[c[g>>2]>>2]=0;d=c[f>>2]|0;if(c[(c[f>>2]|
0)+20>>2]|0)if((Wa[c[d+20>>2]&31](c[f>>2]|0,c[(c[f>>2]|0)+8>>2]|0,h,1)|0)!=
1)d=6;else d=5;else if((c[d+8>>2]|0)>>>0<(c[(c[f>>2]|0)+4>>2]|0)>>
x3e;0){a[h>>0]=a[(c[c[f>>2]>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)>>0]|0;d=5
}else d=6;if((d|0)==5){g=(c[f>>2]|0)+8|0;c[g>>2]=(c[g>>2]|0)+1;a[e>>0]=a[h>>0]|
0;h=a[e>>0]|0;i=j;return h|0}else if((d|0)==6){c[c[g>>2]>>2]=85;a[e>>0]=0;h=a[e>>
;0]|0;i=j;return h|0}return 0}function le(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;v=i;i
=i+48|0;j=v+36|0;k=v+32|0;l=v+28|0;m=v+24|0;o=v+20|0;p=v+40|0;n=v+16|0;t=v+12|0;s=v+8|0;r=v+4|0;q=v;c[k>>2]=f;c[l>
;>2]=g;c[m>>2]=h;a[p>>0]=0;if(!((c[l>>2]|0)!=0&(c[k>>2]|0)!=0)){c[j>>
;2]=6;u=c[j>>2]|0;i=v;return u|0}c[n>>2]=c[(c[k>>2]|0)+32>>2];c[o>>2]=0;a:while
(1){switch(d[c[l>>2]>>0]|0){case 4:{c[o>>2]=ee(c[k>>2]|0,e[(c[l>>2]|0)+2>
x3e;1]|0)|0;if(c[o>>2]|0)break a;a[p>>0]=1;c[n>>2]=c[(c[k>>2]|0)+32>>2];c[l>
;>2]=(c[l>>2]|0)+4;continue a}case 25:case 24:{c[q>>2]=d[(c[l>>2]|0)+1>>0];if(((c[n
>>2]|0)+(c[q>>2]|0)|0)>>>0>(c[(c[k>>2]|0)+36>>2]|0)>>>
;0){u=8;break a}if((d[c[l>>2]>>0]|0)==24){c[r>>2]=(c[m>>2]|0)+(e[(c[l>>2]|0)+2
>>1]|0);Ss(c[r>>2]|0,c[n>>2]|0,c[q>>2]|0)|0}c[n>>2]=(c[n>>2]|0)+(c[q
>>2]|0);c[l>>2]=(c[l>>2]|0)+4;continue a}case 9:case 8:{h=c[n>>2]|0;c[n>>2]=h+
1;c[t>>2]=d[h>>0];c[s>>2]=24;break}case 12:case 13:{c[n>>2]=(c[n>>2]|0)+2;c[t
x3e;>2]=((d[(c[n>>2]|0)+-2>>0]&65535)<<8|(d[(c[n>>2]|0)+-2+1>>0]&
;65535)<<0)&65535;c[s>>2]=16;break}case 14:case 15:{c[n>>2]=(c[n>>2]|0)+2;c[t>
x3e;2]=((d[(c[n>>2]|0)+-2+1>>0]&65535)<<8|(d[(c[n>>2]|0)+-2>>0]&65535
)<<0)&65535;c[s>>2]=16;break}case 16:case 17:{c[n>>2]=(c[n>>2]|0)+4;c[t>>
2]=d[(c[n>>2]|0)+-4>>0]<<24|d[(c[n>>2]|0)+-4+1>>0]<<16|d[(c[n>
x3e;2]|0)+-4+2>>0]<<8|d[(c[n>>2]|0)+-4+3>>0]<<0;c[s>>2]=0;break}case
18:case 19:{c[n>>2]=(c[n>>2]|0)+4;c[t>>2]=d[(c[n>>2]|0)+-4+3>>0]<<24
|d[(c[n>>2]|0)+-4+2>>0]<<16|d[(c[n>>2]|0)+-4+1>>0]<<8|d[(c[n>
x3e;2]|0)+-4>>0]<<0;c[s>>2]=0;break}case 20:case 21:{c[n>>2]=(c[n>>2]|0)+3;c[t
>>2]=d[(c[n>>2]|0)+-3>>0]<<16|d[(c[n>>2]|0)+-3+1>>0]<<8|d[(
c[n>>2]|0)+-3+2>>0]<<0;c[s>>2]=8;break}case 22:case 23:{c[n>>2]=(c[n>>
;2]|0)+3;c[t>>2]=d[(c[n>>2]|0)+-3+2>>0]<<16|d[(c[n>>2]|0)+-3+1>>0]
x3c;<8|d[(c[n>>2]|0)+-3>>0]<<0;c[s>>2]=8;break}default:{u=19;break a}}if(d[c[l>
;>2]>>0]&1|0)c[t>>2]=c[t>>2]<<c[s>>2]>>c[s>>2];c
[r>>2]=(c[m>>2]|0)+(e[(c[l>>2]|0)+2>>1]|0);switch(d[(c[l>>2]|0)+1>>0
]|0){case 1:{a[c[r>>2]>>0]=c[t>>2];break}case 2:{b[c[r>>2]>>1]=c[t>>
2];break}case 4:{c[c[r>>2]>>2]=c[t>>2];break}default:c[c[r>>2]>>2]=c[t>
x3e;2]}c[l>>2]=(c[l>>2]|0)+4}if((u|0)==8)c[o>>2]=85;else if((u|0)==19)c[(c[k>>2]|0)+32
x3e;>2]=c[n>>2];if(a[p>>0]|0)ge(c[k>>2]|0);c[j>>2]=c[o>>2];u=c[j>>
;2]|0;i=v;return u|0}function me(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+32|0;d=f+16|0;g=f+12|0;e=f+8|0;b=f;c[g>>2]=a
;a=c[g>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];a=c[b+4>>2]|0;if(!(
c[b>>2]|0)){g=c[b+4>>2]|0;c[d>>2]=(a|0)>=0?g:0-g|0;g=c[d>>2]|0;i=f;return g|0}if(!a
){g=c[b>>2]|0;c[d>>2]=(c[b>>2]|0)>=0?g:0-g|0;g=c[d>>2]|0;i=f;return g|0}c[e>
x3e;2]=ae(b)|0;be(b);c[b>>2]=ce(c[b>>2]|0)|0;a=c[b>>2]|0;b=c[e>>2]|0;if((c[e>>
2]|0)>0){c[d>>2]=a+(1<<b-1)>>c[e>>2];g=c[d>>2]|0;i=f;return g|0}else{c[d
x3e;>2]=a<<0-b;g=c[d>>2]|0;i=f;return g|0}return 0}function ne(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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>>2]=a;c[f>>2]=b;c[g
>>2]=d;c[h>>2]=e;c[k>>2]=cc(c[m>>2]|0,c[g>>2]|0,j)|0;if(!((c[j>>2]|0
)==0&(c[f>>2]|0)!=0)){d=c[j>>2]|0;m=c[h>>2]|0;c[m>>2]=d;m=c[k>>2]|0;i=l;return
m|0}Ss(c[k>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;d=c[j>>2]|0;m=c[h>>2]|0;c[m>>
;2]=d;m=c[k>>2]|0;i=l;return m|0}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;j=i;i=i+16|0;e=j+12|0;f=
j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[f>>2]|0)a=(cs(c[f>>2]|0)|
0)+1|0;else a=0;c[h>>2]=a;h=ne(c[e>>2]|0,c[f>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=j;
return h|0}function pe(b,d,e){b=b|0;d=d|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]=b;c[g>
;>2]=d;c[h>>2]=e;while(1){if((c[h>>2]|0)>>>0<=1)break;if(!(a[c[g>>2]>
;>0]|0))break;e=c[g>>2]|0;c[g>>2]=e+1;e=a[e>>0]|0;d=c[f>>2]|0;c[f>>2]=d+1
;a[d>>0]=e;c[h>>2]=(c[h>>2]|0)+-1}a[c[f>>2]>>0]=0;i=j;return (a[c[g>>
;2]>>0]|0)!=0|0}function qe(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]=c[f>>2];if(re(c[e>>2]|0)|0){c[b>>2]=0;f=c[b>>2]|0;i=d;return f|0}else{c[b>
;>2]=153;f=c[b>>2]|0;i=d;return f|0}return 0}function re(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16
|0;d=h+12|0;f=h+8|0;g=h+4|0;e=h;c[d>>2]=a;c[g>>2]=c[(c[d>>2]|0)+8>>2];c[f>>2]=
c[(c[d>>2]|0)+40>>2];do if(!(c[(c[d>>2]|0)+40>>2]|0)){c[f>>2]=bc(c[g>>
;2]|0,608,e)|0;if((c[e>>2]|0)==0?(c[e>>2]=se(c[f>>2]|0,c[g>>2]|0)|0,(c[e>>2]|0
)==0):0){c[(c[d>>2]|0)+40>>2]=c[f>>2];break}c[b>>2]=0;g=c[b>>2]|0;i=h;return g
|0}while(0);c[b>>2]=c[(c[d>>2]|0)+40>>2];g=c[b>>2]|0;i=h;return g|0}function se(a,d){a=a
|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;f=h+8|0;j=h+4|0;g=h;c[f>>2]=a;c[j>>2]=d;c[(c[f>
x3e;2]|0)+8>>2]=c[j>>2];c[(c[f>>2]|0)+432>>2]=32;a=hc(c[j>>2]|0,16,0,c[(c[f>
;>2]|0)+432>>2]|0,0,g)|0;c[(c[f>>2]|0)+436>>2]=a;a=c[f>>2]|0;if(c[g>>2]|0
){te(a)|0;c[e>>2]=c[g>>2];j=c[e>>2]|0;i=h;return j|0}else{b[a+440>>1]=0;b[(c[f>>
;2]|0)+442>>1]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>>2]|0)+388>>2]=0;c[(c[f>
x3e;2]|0)+24>>2]=0;c[(c[f>>2]|0)+392>>2]=0;c[c[f>>2]>>2]=0;c[(c[f>>2
]|0)+4>>2]=0;c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}return 0}function te(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;c[f>>2]=c[(c[e>>2]|0)+8>>2];b[(c[e>>2]|0)+440
>>1]=0;b[(c[e>>2]|0)+442>>1]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);
c[(c[e>>2]|0)+24>>2]=0;c[(c[e>>2]|0)+20>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2
]|0)+436>>2]|0);c[(c[e>>2]|0)+436>>2]=0;c[(c[e>>2]|0)+432>>2]=0;c[(c[e>
x3e;2]|0)+428>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+392>>2]|0);c[(c[e>>2]|0)+392>
;>2]=0;c[(c[e>>2]|0)+388>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[c[e>>2]>>
;2]=0;Fb(c[f>>2]|0,c[e>>2]|0);c[e>>2]=0;i=d;return 0}function ue(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];if(!(c[(c[b>>2]|0)+40>>2]|0)){i=d;return
}te(c[(c[b>>2]|0)+40>>2]|0)|0;c[(c[b>>2]|0)+40>>2]=0;i=d;return}function ve(a,b){a=a|0;b
=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=qc(380,c[f>>2]|0)|0;if(c[g>>2]|0){c[d>>2]=c[g>>2];b=c[d>
x3e;2]|0;i=k;return b|0}if(!(c[e>>2]|0)){c[d>>2]=0;b=c[d>>2]|0;i=k;return b|0}c[j>>2]=Wc
(c[(c[e>>2]|0)+4>>2]|0,11340)|0;if(c[j>>2]|0?(c[h>>2]=c[(c[c[j>>2]>>
2]|0)+20>>2],c[h>>2]|0):0){c[d>>2]=Ya[c[(c[h>>2]|0)+16>>2]&127](c[e>
x3e;2]|0,c[f>>2]|0)|0;b=c[d>>2]|0;i=k;return b|0}c[d>>2]=0;b=c[d>>2]|0;i=k;return b|0}function
we(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;q=i;i=i+48|0;f=q+32|0;g=q+28|0;h=q+24|0;k=q+20|0;j=
q+16|0;o=q+12|0;l=q+8|0;n=q+4|0;m=q;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=0;c[n>>
;2]=c[(c[f>>2]|0)+100>>2];a[(c[f>>2]|0)+708>>0]=0;if((c[(c[f>>2]|0)+712>
x3e;2]|0)==0?(d=xe(c[f>>2]|0,0)|0,c[k>>2]=d,d|0):0){p=c[k>>2]|0;i=q;return p|0}c[j>>2]=c
[(c[f>>2]|0)+712>>2];c[o>>2]=c[(c[j>>2]|0)+8>>2];if((c[g>>2]|0)!=(c[
c[o>>2]>>2]|0)){c[k>>2]=6;p=c[k>>2]|0;i=q;return p|0}c[l>>2]=0;while(1){if((c[
l>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;if((c[(c[h>>2]|0)+(c[l>
;>2]<<2)>>2]|0)<-65536){p=9;break}if((c[(c[h>>2]|0)+(c[l>>2]<<2)>
;>2]|0)>65536){p=9;break}c[l>>2]=(c[l>>2]|0)+1}if((p|0)==9){c[k>>2]=6;p=c[k>>2
]|0;i=q;return p|0}if((c[(c[j>>2]|0)+36>>2]|0)==0?(p=ye(c[f>>2]|0)|0,c[k>>2]=p,p|0):0){p
=c[k>>2]|0;i=q;return p|0}a:do if(!(c[(c[j>>2]|0)+4>>2]|0)){p=hc(c[n>>2]|0,4,0,c[g>
x3e;2]|0,0,k)|0;c[(c[j>>2]|0)+4>>2]=p;if(c[k>>2]|0){p=c[k>>2]|0;i=q;return p|0}else{c[m
x3e;>2]=1;break}}else{c[m>>2]=0;c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c
[g>>2]|0)>>>0)break a;if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[l>>2]<<2
)>>2]|0)!=(c[(c[h>>2]|0)+(c[l>>2]<<2)>>2]|0))break;c[l>>2]=(c[l>
;>2]|0)+1}c[m>>2]=2}while(0);c[c[j>>2]>>2]=c[g>>2];Ss(c[(c[j>>2]|0)+4>
;>2]|0,c[h>>2]|0,c[g>>2]<<2|0)|0;a[(c[f>>2]|0)+708>>0]=1;if(!(c[(c[f>
;>2]|0)+672>>2]|0)){p=c[k>>2]|0;i=q;return p|0}switch(c[m>>2]|0){case 2:{Fb(c[n>>2]|
0,c[(c[f>>2]|0)+672>>2]|0);c[(c[f>>2]|0)+672>>2]=0;c[(c[f>>2]|0)+672>>
;2]=0;ze(c[f>>2]|0,c[(c[f>>2]|0)+104>>2]|0)|0;p=c[k>>2]|0;i=q;return p|0}case 1:{Ae(c[f
x3e;>2]|0,c[(c[f>>2]|0)+104>>2]|0)|0;p=c[k>>2]|0;i=q;return p|0}default:{p=c[k>>2]|
0;i=q;return p|0}}return 0}function xe(b,d){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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,
x=0,y=0;y=i;i=i+96|0;k=y+92|0;s=y+88|0;r=y+84|0;o=y+80|0;f=y+76|0;u=y+72|0;h=y+68|0;m=y+64|0;n=y+60|0;v=y+56|0;p=y+52|0;x=y+48|0
;t=y+44|0;q=y+40|0;l=y+24|0;g=y+4|0;w=y;c[k>>2]=b;c[s>>2]=d;c[r>>2]=c[(c[k>>2]|0)+104>
;>2];c[o>>2]=c[(c[k>>2]|0)+100>>2];c[u>>2]=0;a:do if(!(c[(c[k>>2]|0)+712
x3e;>2]|0)){d=Wa[c[(c[k>>2]|0)+508>>2]&31](c[k>>2]|0,1735811442,c[r>>2]|0,f)|0
;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0}d=Wa[c[(c[k>>2]|0)+508>>2]&31](c[k>
;>2]|0,1719034226,c[r>>2]|0,f)|0;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0}c[h>>
2]=Mc(c[r>>2]|0)|0;d=le(c[r>>2]|0,5428,l)|0;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0
}if(((((((c[l>>2]|0)==65536?(e[l+6>>1]|0|0)==2:0)?(e[l+10>>1]|0|0)==20:0)?(e[l+8>>1]|0|0
)<=16382:0)?(e[l+14>>1]|0|0)==(4+((e[l+8>>1]|0)<<2)|0):0)?(e[l+12>>1]|0|0)<=32511
:0)?(d=(e[l+4>>1]|0)+((e[l+8>>1]|0)*20|0)+(_(e[l+12>>1]|0,e[l+14>>1]|0)|0)|0,d>>
;>0<=(c[f>>2]|0)>>>0):0){f=bc(c[o>>2]|0,40,u)|0;c[(c[k>>2]|0)+712>
x3e;2]=f;if(c[u>>2]|0){x=c[u>>2]|0;i=y;return x|0}f=20+((e[l+8>>1]|0)*24|0)+((e[l+12>>1]|
0)<<3)+((_(e[l+12>>1]|0,e[l+8>>1]|0)|0)<<2)|0;c[(c[(c[k>>2]|0)+712>>
2]|0)+12>>2]=f+((e[l+8>>1]|0)*5|0);c[v>>2]=bc(c[o>>2]|0,c[(c[(c[k>>2]|0)+712
x3e;>2]|0)+12>>2]|0,u)|0;if(c[u>>2]|0){x=c[u>>2]|0;i=y;return x|0}c[(c[(c[k>>2]|0)+
712>>2]|0)+8>>2]=c[v>>2];c[c[v>>2]>>2]=e[l+8>>1];c[(c[v>>2
]|0)+4>>2]=-1;c[(c[v>>2]|0)+8>>2]=e[l+12>>1];c[(c[v>>2]|0)+12>>2]=(c
[v>>2]|0)+20;c[(c[v>>2]|0)+16>>2]=(c[(c[v>>2]|0)+12>>2]|0)+((e[l+8>>
1]|0)*24|0);c[p>>2]=(c[(c[v>>2]|0)+16>>2]|0)+((e[l+12>>1]|0)<<3);c[m>>
;2]=0;while(1){b=c[p>>2]|0;if((c[m>>2]|0)>=(e[l+12>>1]|0|0))break;c[(c[(c[v>>2]|0)+
16>>2]|0)+(c[m>>2]<<3)>>2]=b;c[p>>2]=(c[p>>2]|0)+((e[l+8>>
1]|0)<<2);c[m>>2]=(c[m>>2]|0)+1}c[x>>2]=b;c[m>>2]=0;while(1){if((c[m>>
;2]|0)>=(e[l+8>>1]|0|0))break;c[(c[(c[v>>2]|0)+12>>2]|0)+((c[m>>2]|0)*24|0)>
x3e;2]=c[x>>2];c[x>>2]=(c[x>>2]|0)+5;c[m>>2]=(c[m>>2]|0)+1}h=Kc(c[r>>
;2]|0,(c[h>>2]|0)+(e[l+4>>1]|0)|0)|0;c[u>>2]=h;if(h|0){x=c[u>>2]|0;i=y;return x|0}c[t>
;>2]=c[(c[v>>2]|0)+12>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(e[l+8>>
;1]|0|0))break;h=le(c[r>>2]|0,5464,g)|0;c[u>>2]=h;if(h|0){j=50;break}c[(c[t>>2]|0)+16>>2
]=c[g>>2];c[(c[t>>2]|0)+4>>2]=c[g+4>>2];c[(c[t>>2]|0)+8>>2]=c[g+8>
;>2];c[(c[t>>2]|0)+12>>2]=c[g+12>>2];c[(c[t>>2]|0)+20>>2]=e[g+18>>
;1];a[c[c[t>>2]>>2]>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>24;a[(c[c[t
x3e;>2]>>2]|0)+1>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>16;a[(c[c[t>>
;2]>>2]|0)+2>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>8;a[(c[c[t>>2]>
;>2]|0)+3>>0]=c[(c[t>>2]|0)+16>>2];a[(c[c[t>>2]>>2]|0)+4>>0]=0;
c[t>>2]=(c[t>>2]|0)+24;c[m>>2]=(c[m>>2]|0)+1}if((j|0)==50){x=c[u>>2]|0;i=y;return
x|0}c[q>>2]=c[(c[v>>2]|0)+16>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(e[l
+12>>1]|0|0))break a;j=ee(c[r>>2]|0,4+((e[l+8>>1]|0)<<2)|0)|0;c[u>>2]=j;if(j|0
)break;j=(ie(c[r>>2]|0)|0)&65535;c[(c[q>>2]|0)+4>>2]=j;ie(c[r>>2]|0)|0;c[n>>
;2]=0;while(1){b=c[r>>2]|0;if((c[n>>2]|0)>=(e[l+8>>1]|0|0))break;j=je(b)|0;c[(c[c[q>>
;2]>>2]|0)+(c[n>>2]<<2)>>2]=j;c[n>>2]=(c[n>>2]|0)+1}ge(b);c[m>
x3e;2]=(c[m>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+8}x=c[u>>2]|0;i=y;return x|0}c[u>>2]=
8;x=c[u>>2]|0;i=y;return x|0}while(0);if(!(c[s>>2]|0)){x=c[u>>2]|0;i=y;return x|0}c[v>>2
]=bc(c[o>>2]|0,c[(c[(c[k>>2]|0)+712>>2]|0)+12>>2]|0,u)|0;if(c[u>>2]|0){x=c[u
x3e;>2]|0;i=y;return x|0}Ss(c[v>>2]|0,c[(c[(c[k>>2]|0)+712>>2]|0)+8>>2]|0,c[(c[(c[k
>>2]|0)+712>>2]|0)+12>>2]|0)|0;c[(c[v>>2]|0)+12>>2]=(c[v>>2]|0)+20;c
[(c[v>>2]|0)+16>>2]=(c[(c[v>>2]|0)+12>>2]|0)+((c[c[v>>2]>>2]|0)*24|0
);c[p>>2]=(c[(c[v>>2]|0)+16>>2]|0)+(c[(c[v>>2]|0)+8>>2]<<3);c[w>
;>2]=0;while(1){if((c[w>>2]|0)>>>0>=(c[(c[v>>2]|0)+8>>2]|0)>>
x3e;0)break;c[(c[(c[v>>2]|0)+16>>2]|0)+(c[w>>2]<<3)>>2]=c[p>>2];c[p
x3e;>2]=(c[p>>2]|0)+(c[c[v>>2]>>2]<<2);c[w>>2]=(c[w>>2]|0)+1}c[
t>>2]=c[(c[v>>2]|0)+12>>2];c[x>>2]=c[p>>2];c[w>>2]=0;while(1){if((c[
w>>2]|0)>>>0>=(c[c[v>>2]>>2]|0)>>>0)break;c[c[t>>2]
x3e;>2]=c[x>>2];b=c[t>>2]|0;do if((c[(c[t>>2]|0)+16>>2]|0)!=2003265652){d=c[t>
x3e;2]|0;if((c[b+16>>2]|0)==2003072104){c[d>>2]=10521;break}b=c[t>>2]|0;if((c[d+16>>2]|0
)==1869640570){c[b>>2]=10527;break}if((c[b+16>>2]|0)==1936486004)c[c[t>>2]>>2]=10539}else
c[b>>2]=12384;while(0);c[x>>2]=(c[x>>2]|0)+5;c[t>>2]=(c[t>>2]|0)+24;c[w>
x3e;2]=(c[w>>2]|0)+1}c[c[s>>2]>>2]=c[v>>2];x=c[u>>2]|0;i=y;return x|0}function
ye(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+64|0;b=o+56|0;n=o+52|0;l=o+48|0;d=o+44|0;f=o+40|0;j=o+36|0;
k=o+32|0;h=o+24|0;m=o+20|0;g=o;c[b>>2]=a;c[n>>2]=c[(c[b>>2]|0)+104>>2];c[l>>2]=
c[(c[n>>2]|0)+28>>2];c[d>>2]=c[(c[b>>2]|0)+712>>2];b=Wa[c[(c[b>>2]|0
)+508>>2]&31](c[b>>2]|0,1735811442,c[n>>2]|0,o+28|0)|0;c[f>>2]=b;if(b|0){n=c[f>
;>2]|0;i=o;return n|0}c[h>>2]=Mc(c[n>>2]|0)|0;b=le(c[n>>2]|0,5496,g)|0;c[f>>2]=b;if
(b|0){n=c[f>>2]|0;i=o;return n|0}c[(c[d>>2]|0)+24>>2]=e[g+6>>1];c[(c[d>>2]|0)+
32>>2]=e[g+12>>1];c[m>>2]=(c[h>>2]|0)+(c[g+16>>2]|0);if((c[g>>2]|0)==
65536?(e[g+4>>1]|0|0)==(c[c[(c[d>>2]|0)+8>>2]>>2]&65535|0):0){b=hc(c[l>>2
]|0,4,0,(c[(c[d>>2]|0)+32>>2]|0)+1|0,0,f)|0;c[(c[d>>2]|0)+36>>2]=b;if(c[f>>2]|
0){n=c[f>>2]|0;i=o;return n|0}a=c[n>>2]|0;b=(c[(c[d>>2]|0)+32>>2]|0)+1|0;if((e[g+14>
;>1]|0)&1|0){b=ee(a,b<<2)|0;c[f>>2]=b;if(b|0){n=c[f>>2]|0;i=o;return n|0}c[j>>
2]=0;while(1){if((c[j>>2]|0)>>>0>(c[(c[d>>2]|0)+32>>2]|0)>>>0)break
;b=c[m>>2]|0;b=b+(je(c[n>>2]|0)|0)|0;c[(c[(c[d>>2]|0)+36>>2]|0)+(c[j>>2]<
x3c;2)>>2]=b;c[j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|0)}else{b=ee(a,b<<1)|0;c[f>
x3e;2]=b;if(b|0){n=c[f>>2]|0;i=o;return n|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0
x3e;(c[(c[d>>2]|0)+32>>2]|0)>>>0)break;b=c[m>>2]|0;b=b+(((ie(c[n>>2]|0)|0
)&65535)<<1)|0;c[(c[(c[d>>2]|0)+36>>2]|0)+(c[j>>2]<<2)>>2]=b;c[
j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|0)}if(!(c[(c[d>>2]|0)+24>>2]|0)){n=c[f>>
;2]|0;i=o;return n|0}m=hc(c[l>>2]|0,4,0,_(e[g+4>>1]|0,c[(c[d>>2]|0)+24>>2]|0)|0,0,f)|0;c
[(c[d>>2]|0)+28>>2]=m;if(c[f>>2]|0){n=c[f>>2]|0;i=o;return n|0}m=Kc(c[n>>2]|0,(
c[h>>2]|0)+(c[g+8>>2]|0)|0)|0;c[f>>2]=m;if(m|0){n=c[f>>2]|0;i=o;return n|0}m=ee(c[n>
;>2]|0,(_(c[(c[d>>2]|0)+24>>2]|0,e[g+4>>1]|0)|0)<<1)|0;c[f>>2]=m;if(m|0){
n=c[f>>2]|0;i=o;return n|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[d>
;>2]|0)+24>>2]|0)>>>0)break;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>
;0>=(e[g+4>>1]|0)>>>0)break;l=(ie(c[n>>2]|0)|0)<<16>>16<<2
;m=_(c[j>>2]|0,e[g+4>>1]|0)|0;c[(c[(c[d>>2]|0)+28>>2]|0)+(m+(c[k>>2]|0)<
x3c;2)>>2]=l;c[k>>2]=(c[k>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|
0);n=c[f>>2]|0;i=o;return n|0}c[f>>2]=8;n=c[f>>2]|0;i=o;return n|0}function ze(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;n=i;i=i+32|0;h=n+24|0;j=n+20|0;l=n+16|0;f=n+12|0;g=n+8|0;k=n+4|0;m=n;c[h>>2]=d;c[j>
;>2]=e;c[f>>2]=c[(c[j>>2]|0)+28>>2];c[l>>2]=Wa[c[(c[h>>2]|0)+508>>
;2]&31](c[h>>2]|0,1668707360,c[j>>2]|0,g)|0;if(c[l>>2]|0){c[(c[h>>2]|0)+668>
x3e;2]=0;c[(c[h>>2]|0)+672>>2]=0;c[l>>2]=0;m=c[l>>2]|0;i=n;return m|0}c[(c[h>>
2]|0)+668>>2]=((c[g>>2]|0)>>>0)/2|0;g=hc(c[f>>2]|0,2,0,c[(c[h>>2]|0)+668
x3e;>2]|0,0,l)|0;c[(c[h>>2]|0)+672>>2]=g;if(c[l>>2]|0){m=c[l>>2]|0;i=n;return m|0}g
=ee(c[j>>2]|0,c[(c[h>>2]|0)+668>>2]<<1)|0;c[l>>2]=g;if(g|0){m=c[l>>2
]|0;i=n;return m|0}c[k>>2]=c[(c[h>>2]|0)+672>>2];c[m>>2]=(c[k>>2]|0)+(c[(c[h
x3e;>2]|0)+668>>2]<<1);while(1){d=c[j>>2]|0;if((c[k>>2]|0)>>>0>=(
c[m>>2]|0)>>>0)break;g=ie(d)|0;b[c[k>>2]>>1]=g;c[k>>2]=(c[k>>2]|
0)+2}ge(d);if(!(a[(c[h>>2]|0)+708>>0]|0)){m=c[l>>2]|0;i=n;return m|0}c[l>>2]=Ae(c[h>
;>2]|0,c[j>>2]|0)|0;m=c[l>>2]|0;i=n;return m|0}function Ae(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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=i;i=i+96|0;h=C+84|0;j=C+80|0;n=C+76|0;u=C+72|0;g=C+68|0;f
=C+64|0;y=C+60|0;v=C+56|0;o=C+52|0;p=C+48|0;s=C+44|0;B=C+40|0;r=C+36|0;q=C+32|0;l=C+28|0;x=C+24|0;t=C+20|0;m=C+16|0;z=C+12|0;A=C
+8|0;k=C+4|0;w=C;c[h>>2]=a;c[j>>2]=d;c[u>>2]=c[(c[j>>2]|0)+28>>2];c[B>>
;2]=0;c[r>>2]=0;c[q>>2]=0;c[l>>2]=c[(c[h>>2]|0)+712>>2];if(!(c[l>>2]|
0)){c[n>>2]=0;z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>
;>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>
;2]|0;i=C;return B|0}if(!(c[(c[h>>2]|0)+672>>2]|0)){c[n>>2]=0;z=c[u>>2]|0;A=c[B>>
;2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;
B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}c[n>>2]=Wa[c[(c[h>>2]|
0)+508>>2]&31](c[h>>2]|0,1668702578,c[j>>2]|0,f)|0;if(c[n>>2]|0){c[n>>2]=
0;z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[
r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}f
=ee(c[j>>2]|0,c[f>>2]|0)|0;c[n>>2]=f;if(f|0){c[n>>2]=0;z=c[u>>2]|0;A=c[B>
x3e;2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|
0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}c[g>>2]=(c[(c[j>>2]|
0)+32>>2]|0)-(c[c[j>>2]>>2]|0);a:do if((je(c[j>>2]|0)|0)==65536){c[B>>2]=hc(c[
u>>2]|0,4,0,c[c[l>>2]>>2]|0,0,n)|0;if(((c[n>>2]|0)==0?(c[r>>2]=hc(c[u>>
;2]|0,4,0,c[c[l>>2]>>2]|0,0,n)|0,(c[n>>2]|0)==0):0)?(c[q>>2]=hc(c[u>>2]|0,4,0,
c[c[l>>2]>>2]|0,0,n)|0,(c[n>>2]|0)==0):0){c[y>>2]=(ie(c[j>>2]|0)|0)&65535
;g=c[g>>2]|0;c[v>>2]=g+((ie(c[j>>2]|0)|0)&65535);c[p>>2]=0;while(1){if((c[p>
x3e;2]|0)>>>0>=(c[y>>2]&4095)>>>0)break a;c[z>>2]=(ie(c[j>>
;2]|0)|0)&65535;c[A>>2]=(ie(c[j>>2]|0)|0)&65535;do if(c[A>>2]&32768|0){c[s>>
;2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[c[l>>2]>>2]|0)>>>0)break;
g=(ie(c[j>>2]|0)|0)<<16>>16<<2;c[(c[B>>2]|0)+(c[s>>2]<<2)
x3e;>2]=g;c[s>>2]=(c[s>>2]|0)+1}b:do if(c[A>>2]&16384|0){c[s>>2]=0;while(1){if
((c[s>>2]|0)>>>0>=(c[c[l>>2]>>2]|0)>>>0)break;g=(ie(c[j>
x3e;2]|0)|0)<<16>>16<<2;c[(c[r>>2]|0)+(c[s>>2]<<2)>>2]=g;c
[s>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[c[l
x3e;>2]>>2]|0)>>>0)break b;g=(ie(c[j>>2]|0)|0)<<16>>16<<2;
c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]=g;c[s>>2]=(c[s>>2]|0)+1}}while(0);c[k
>>2]=Be(c[l>>2]|0,c[A>>2]&65535,c[B>>2]|0,c[r>>2]|0,c[q>>2]|0)|
0;if(c[k>>2]|0?c[A>>2]&8192|0:0){c[o>>2]=(c[(c[j>>2]|0)+32>>2]|0)-(c[c[j
x3e;>2]>>2]|0);c[(c[j>>2]|0)+32>>2]=(c[c[j>>2]>>2]|0)+(c[v>>2]|
0);c[t>>2]=Ce(c[j>>2]|0,x)|0;if(!(c[x>>2]|0))a=c[(c[h>>2]|0)+668>>2]|0;else a=
c[x>>2]|0;c[m>>2]=De(c[j>>2]|0,a)|0;c:do if(!((c[t>>2]|0)==0|(c[m>>2]|0)==0)){
g=(c[t>>2]|0)==(-1|0);c[s>>2]=0;if(g)while(1){if((c[s>>2]|0)>>>0>=(c[(c[h>
;>2]|0)+668>>2]|0)>>>0)break c;g=b[(c[(c[h>>2]|0)+672>>2]|0)+(c[s>>2
]<<1)>>1]|0;g=g+(Mb(b[(c[m>>2]|0)+(c[s>>2]<<1)>>1]|0,c[k>>
2]|0)|0)&65535;b[(c[(c[h>>2]|0)+672>>2]|0)+(c[s>>2]<<1)>>1]=g;c[s>
x3e;2]=(c[s>>2]|0)+1}else while(1){if((c[s>>2]|0)>>>0>=(c[x>>2]|0)>>
x3e;0)break c;c[w>>2]=e[(c[t>>2]|0)+(c[s>>2]<<1)>>1];g=b[(c[(c[h>>2]|
0)+672>>2]|0)+(c[w>>2]<<1)>>1]|0;g=g+(Mb(b[(c[m>>2]|0)+(c[s>>2]<
;<1)>>1]|0,c[k>>2]|0)|0)&65535;b[(c[(c[h>>2]|0)+672>>2]|0)+(c[w>>2]
x3c;<1)>>1]=g;c[s>>2]=(c[s>>2]|0)+1}}while(0);if((c[t>>2]|0)!=(-1|0)){Fb(c[u>
x3e;2]|0,c[t>>2]|0);c[t>>2]=0}Fb(c[u>>2]|0,c[m>>2]|0);c[m>>2]=0;c[v>>
;2]=(c[v>>2]|0)+(c[z>>2]|0);c[(c[j>>2]|0)+32>>2]=(c[c[j>>2]>>2]|0)+(
c[o>>2]|0);break}c[v>>2]=(c[v>>2]|0)+(c[z>>2]|0)}else{d:do if(c[A>>2]&16384
|0){c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=c[c[l>>2]>>2]<<
1>>>0)break d;ie(c[j>>2]|0)|0;c[s>>2]=(c[s>>2]|0)+1}}while(0);c[v>>2]=(c[
v>>2]|0)+(c[z>>2]|0)}while(0);c[p>>2]=(c[p>>2]|0)+1}}}else c[n>>2]=0;while(0);
ge(c[j>>2]|0);z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>
;>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>
;2]|0;i=C;return B|0}function Be(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;r=i;i=i+32|0;j
=r+24|0;k=r+28|0;l=r+20|0;m=r+16|0;n=r+12|0;o=r+8|0;q=r+4|0;p=r;c[j>>2]=a;b[k>>1]=d;c[l>>2]=f;c[m
x3e;>2]=g;c[n>>2]=h;c[q>>2]=65536;c[o>>2]=0;a:while(1){if((c[o>>2]|0)>>
x3e;0>=(c[c[j>>2]>>2]|0)>>>0){a=19;break}do if(c[(c[l>>2]|0)+(c[o>>2
]<<2)>>2]|0){if(!(c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>
2]|0)){a=9;break a}if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)<0?(c
[(c[l>>2]|0)+(c[o>>2]<<2)>>2]|0)>0:0){a=9;break a}if((c[(c[(c[j>>2]|0)+4
x3e;>2]|0)+(c[o>>2]<<2)>>2]|0)>0?(c[(c[l>>2]|0)+(c[o>>2]<<
2)>>2]|0)<0:0){a=9;break a}if(!((e[k>>1]|0)&16384)){f=c[(c[(c[j>>2]|0)+4>>2]|0
)+(c[o>>2]<<2)>>2]|0;c[q>>2]=xb(c[q>>2]|0,(c[(c[(c[j>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<2)>>2]|0)>0?f:0-f|0,65536)|0;break}if((c[(c[(c[j>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<2)>>2]|0)<=(c[(c[m>>2]|0)+(c[o>>2]<<2)>
;>2]|0)){a=14;break a}if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)
x3e;=(c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]|0)){a=14;break a}a=c[o>>2]|0;if((c[(c[(c[
j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)<(c[(c[l>>2]|0)+(c[o>
x3e;2]<<2)>>2]|0)){c[p>>2]=xb((c[(c[(c[j>>2]|0)+4>>2]|0)+(a<<2)>
;>2]|0)-(c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]|0)|0,65536,(c[(c[l>>2]|0)+(c[o>
;>2]<<2)>>2]|0)-(c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]|0)|0)|0;c[q>
;>2]=xb(c[q>>2]|0,c[p>>2]|0,65536)|0;break}else{c[p>>2]=xb((c[(c[n>>2]|0)+(a<
x3c;2)>>2]|0)-(c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)|0,65536
,(c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[l>>2]|0)+(c[o>>2]<<
;2)>>2]|0)|0)|0;c[q>>2]=xb(c[q>>2]|0,c[p>>2]|0,65536)|0;break}}while(0);c[o>>2
]=(c[o>>2]|0)+1}if((a|0)==9){c[q>>2]=0;q=c[q>>2]|0;i=r;return q|0}else if((a|0)==14){c[q>>
;2]=0;q=c[q>>2]|0;i=r;return q|0}else if((a|0)==19){q=c[q>>2]|0;i=r;return q|0}return 0}function Ce(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;p=i;i=i+48|0;e=p+40|0;f=p+36|0;q=p+32|0;n=p+28|0;m=p+24|0;o=p+20|0;
j=p+16|0;k=p+12|0;h=p+8|0;l=p+4|0;g=p;c[f>>2]=a;c[q>>2]=d;c[l>>2]=c[(c[f>>2]|0)+28>
x3e;2];c[g>>2]=0;c[g>>2]=c[g>>2];a=(he(c[f>>2]|0)|0)&255;c[m>>2]=a;c[c[q
x3e;>2]>>2]=a;if(!(c[m>>2]|0)){c[e>>2]=-1;q=c[e>>2]|0;i=p;return q|0}if(c[m>
x3e;2]&128|0){q=(he(c[f>>2]|0)|0)&255;c[m>>2]=q|(c[m>>2]&127)<<8}c[n>
;>2]=hc(c[l>>2]|0,2,0,c[m>>2]|0,0,g)|0;if(c[g>>2]|0){c[e>>2]=0;q=c[e>>2]|
0;i=p;return q|0}c[j>>2]=0;a:while(1){if((c[j>>2]|0)>=(c[m>>2]|0))break;c[o>>2]=(he
(c[f>>2]|0)|0)&255;if(c[o>>2]&128|0){c[o>>2]=c[o>>2]&127;q=ie(c[f>
x3e;2]|0)|0;a=c[j>>2]|0;c[j>>2]=a+1;b[(c[n>>2]|0)+(a<<1)>>1]=q;c[h>>
2]=q&65535;if((c[o>>2]|0)<1)break;if(((c[j>>2]|0)+(c[o>>2]|0)|0)>=(c[m>>2
]|0))break;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[o>>2]|0))continue a;a=(ie(c[f>>2]|
0)|0)&65535;a=(c[h>>2]|0)+a|0;c[h>>2]=a;q=c[j>>2]|0;c[j>>2]=q+1;b[(c[n>>2
]|0)+(q<<1)>>1]=a;c[k>>2]=(c[k>>2]|0)+1}}else{q=(he(c[f>>2]|0)|0)&255;a=c
[j>>2]|0;c[j>>2]=a+1;b[(c[n>>2]|0)+(a<<1)>>1]=q;c[h>>2]=q&65535
;if((c[o>>2]|0)<1)break;if(((c[j>>2]|0)+(c[o>>2]|0)|0)>=(c[m>>2]|0))break;c[k
x3e;>2]=0;while(1){if((c[k>>2]|0)>=(c[o>>2]|0))continue a;a=(he(c[f>>2]|0)|0)&255;a
=(c[h>>2]|0)+a|0;c[h>>2]=a;q=c[j>>2]|0;c[j>>2]=q+1;b[(c[n>>2]|0)+(q<<
;1)>>1]=a;c[k>>2]=(c[k>>2]|0)+1}}}c[e>>2]=c[n>>2];q=c[e>>2]|0;i=p;return
q|0}function De(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;n=i;i=i+48|0;k=n+32|0;e=n+28|0;f=n+24|0;l=n+20|0;j
=n+16|0;g=n+12|0;h=n+8|0;m=n+4|0;o=n;c[e>>2]=a;c[f>>2]=d;c[l>>2]=0;c[m>>2]=c[(c[e>
x3e;2]|0)+28>>2];c[o>>2]=0;c[o>>2]=c[o>>2];c[l>>2]=hc(c[m>>2]|0,2,0,
c[f>>2]|0,0,o)|0;if(c[o>>2]|0){c[k>>2]=0;o=c[k>>2]|0;i=n;return o|0}c[g>>2]=0;
while(1){if((c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0){e=19;break}c[j>>2
]=(he(c[e>>2]|0)|0)&255;a:do if(!(c[j>>2]&128|0)){o=(c[j>>2]&64|0)!=0;c[h>>
;2]=0;if(o)while(1){if((c[h>>2]|0)>>>0>(c[j>>2]&63)>>>0)break a;if((
c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break a;a=ie(c[e>>2]|0)|0;o=c[g
>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=a;c[h>>2]=(c[h>>
;2]|0)+1}else while(1){if((c[h>>2]|0)>>>0>(c[j>>2]&63)>>>0)break a;if
((c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break a;a=(he(c[e>>2]|0)|0)
x3c;<24>>24;o=c[g>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=a;
c[h>>2]=(c[h>>2]|0)+1}}else{c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>(c
[j>>2]&63)>>>0)break a;if((c[g>>2]|0)>>>0>=(c[f>>2]|0)>
;>>0)break a;o=c[g>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=0;c[h
x3e;>2]=(c[h>>2]|0)+1}}while(0);if((c[h>>2]|0)>>>0<=(c[j>>2]&63)>
;>>0){e=18;break}}if((e|0)==18){Fb(c[m>>2]|0,c[l>>2]|0);c[l>>2]=0;c[k>>2]=0;o=
c[k>>2]|0;i=n;return o|0}else if((e|0)==19){c[k>>2]=c[l>>2];o=c[k>>2]|0;i=n;return o|0}return
0}function Ee(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,t=0,u=0;u=i;i=i+48|0;g=u+44|0;h=u+40
|0;j=u+36|0;n=u+32|0;s=u+28|0;m=u+24|0;r=u+20|0;o=u+16|0;p=u+12|0;k=u+8|0;l=u+4|0;q=u;c[g>>2]=b;c[h>>2]=d;c[
j>>2]=f;c[n>>2]=0;c[s>>2]=0;c[q>>2]=c[(c[g>>2]|0)+100>>2];if((c[(c[g
>>2]|0)+712>>2]|0)==0?(d=xe(c[g>>2]|0,0)|0,c[n>>2]=d,d|0):0){r=c[q>>2]|0;t=c[s
>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}c[m>>2]=c[(c[g>>2]|0)+712
x3e;>2];c[r>>2]=c[(c[m>>2]|0)+8>>2];if((c[h>>2]|0)!=(c[c[r>>2]>>
;2]|0)){c[n>>2]=6;r=c[q>>2]|0;t=c[s>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return
t|0}c[s>>2]=hc(c[q>>2]|0,4,0,c[c[r>>2]>>2]|0,0,n)|0;if(c[n>>2]|0){r=c[q>
x3e;2]|0;t=c[s>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}c[k>>2]=c[(c[r>
x3e;2]|0)+12>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[c[r>>2]
x3e;>2]|0)>>>0)break;if((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|0)>(c[(
c[k>>2]|0)+12>>2]|0)){t=10;break}if((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|
0)<(c[(c[k>>2]|0)+4>>2]|0)){t=10;break}do if((c[(c[j>>2]|0)+(c[o>>2]<<2)
x3e;>2]|0)>=(c[(c[k>>2]|0)+8>>2]|0)){f=c[o>>2]|0;if((c[(c[k>>2]|0)+12>>
;2]|0)==(c[(c[k>>2]|0)+8>>2]|0)){c[(c[s>>2]|0)+(f<<2)>>2]=0;break}else{d=xb((c
[(c[j>>2]|0)+(f<<2)>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0,65536,(c[(c[k>>
2]|0)+12>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0)|0;c[(c[s>>2]|0)+(c[o>>2]<<
;2)>>2]=d;break}}else{d=0-(xb((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[k>
x3e;2]|0)+8>>2]|0)|0,65536,(c[(c[k>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0)|
0)|0;c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]=d}while(0);c[o>>2]=(c[o>>2]|0)+1
;c[k>>2]=(c[k>>2]|0)+24}if((t|0)==10){c[n>>2]=6;r=c[q>>2]|0;t=c[s>>2]|0;Fb(r,t
);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}if(!(a[(c[m>>2]|0)+16>>0]|0))Fe(c[g>>2]|
0);a:do if(c[(c[m>>2]|0)+20>>2]|0){c[l>>2]=c[(c[m>>2]|0)+20>>2];c[o>>
;2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[c[r>>2]>>2]|0)>>>0)break
a;c[p>>2]=1;while(1){if((c[p>>2]|0)>>>0>=(e[c[l>>2]>>1]|0)>>
;>0)break;if((c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]|0)<(c[(c[(c[l>>2]|0)+4
x3e;>2]|0)+(c[p>>2]<<3)>>2]|0)){t=25;break}c[p>>2]=(c[p>>2]|0)+1}if((t|0)==
25){t=0;m=xb((c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[(c[l>>2]|0)+4>>
;2]|0)+((c[p>>2]|0)-1<<3)>>2]|0)|0,65536,(c[(c[(c[l>>2]|0)+4>>2]|0)+(c[p>
x3e;2]<<3)>>2]|0)-(c[(c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1<<3)>
;>2]|0)|0)|0;m=xb(m,(c[(c[(c[l>>2]|0)+4>>2]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(
c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1<<3)+4>>2]|0)|0,65536)|0;c[(c[s>>
;2]|0)+(c[o>>2]<<2)>>2]=m+(c[(c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1
x3c;<3)+4>>2]|0)}c[o>>2]=(c[o>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+8}}while(0);c[
n>>2]=we(c[g>>2]|0,c[h>>2]|0,c[s>>2]|0)|0;r=c[q>>2]|0;t=c[s>>2]|0;Fb
(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|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,p=0,
q=0,r=0;q=i;i=i+48|0;r=q+40|0;p=q+36|0;o=q+32|0;m=q+28|0;j=q+24|0;g=q+20|0;l=q+16|0;f=q+12|0;h=q+8|0;n=q+4|0;k=q;c[r>>
2]=d;c[p>>2]=c[(c[r>>2]|0)+104>>2];c[o>>2]=c[(c[p>>2]|0)+28>>2];c[m
x3e;>2]=c[(c[r>>2]|0)+712>>2];c[g>>2]=0;c[g>>2]=c[g>>2];a[(c[m>>
;2]|0)+16>>0]=1;d=Wa[c[(c[r>>2]|0)+508>>2]&31](c[r>>2]|0,1635148146,c[p>>
2]|0,k)|0;c[g>>2]=d;if(d|0){i=q;return}r=ee(c[p>>2]|0,c[k>>2]|0)|0;c[g>>2]=r;if(r|0){i=q
;return}c[l>>2]=je(c[p>>2]|0)|0;c[f>>2]=je(c[p>>2]|0)|0;a:do if(((c[l>>2]|0)==
65536?(c[f>>2]|0)==(c[c[(c[m>>2]|0)+8>>2]>>2]|0):0)?(r=hc(c[o>>2]|0,8,0,c[f>
;>2]|0,0,g)|0,c[(c[m>>2]|0)+20>>2]=r,(c[g>>2]|0)==0):0){c[j>>2]=c[(c[m>>2
]|0)+20>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[f>>2]|0))break a;r=ie(c[p>
x3e;2]|0)|0;b[c[j>>2]>>1]=r;r=hc(c[o>>2]|0,8,0,e[c[j>>2]>>1]|0,0,g)|0;c[(c[j
x3e;>2]|0)+4>>2]=r;if(c[g>>2]|0)break;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(e[c[
j>>2]>>1]|0|0))break;r=(ie(c[p>>2]|0)|0)<<16>>16<<2;c[(c[(c[j>
x3e;2]|0)+4>>2]|0)+(c[n>>2]<<3)>>2]=r;r=(ie(c[p>>2]|0)|0)<<16>
x3e;16<<2;c[(c[(c[j>>2]|0)+4>>2]|0)+(c[n>>2]<<3)+4>>2]=r;c[n>
x3e;2]=(c[n>>2]|0)+1}c[h>>2]=(c[h>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+8}c[n>>
;2]=(c[h>>2]|0)-1;while(1){f=c[o>>2]|0;if((c[n>>2]|0)<0)break;Fb(f,c[(c[(c[m>>2]|0)+
20>>2]|0)+(c[n>>2]<<3)+4>>2]|0);c[(c[(c[m>>2]|0)+20>>2]|0)+(c[n>
;>2]<<3)+4>>2]=0;c[n>>2]=(c[n>>2]|0)+-1}Fb(f,c[(c[m>>2]|0)+20>>
2]|0);c[(c[m>>2]|0)+20>>2]=0;c[(c[m>>2]|0)+20>>2]=0}while(0);ge(c[p>>2]|0);i=q
;return}function Ge(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;p=i;i=i+32|0;h=p+28|0;j=p+24|0;g=p+20|0;k=p
+16|0;n=p+12|0;o=p+8|0;l=p+4|0;m=p;c[j>>2]=a;c[g>>2]=e;c[k>>2]=f;c[o>>2]=0;c[n>>
;2]=0;do if((c[g>>2]|0)>>>0<(c[(c[j>>2]|0)+732>>2]|0)>>>0){a=c[(
c[j>>2]|0)+736>>2]|0;f=c[g>>2]|0;if(b[(c[j>>2]|0)+160+50>>1]|0){c[l>>
;2]=a+(f<<2);c[m>>2]=(c[(c[j>>2]|0)+736>>2]|0)+(c[(c[j>>2]|0)+732>>2
]<<2);c[l>>2]=(c[l>>2]|0)+4;c[n>>2]=d[(c[l>>2]|0)+-4>>0]<<
24|d[(c[l>>2]|0)+-4+1>>0]<<16|d[(c[l>>2]|0)+-4+2>>0]<<8|d[(c[l>
x3e;2]|0)+-4+3>>0]<<0;c[o>>2]=c[n>>2];if(((c[l>>2]|0)+4|0)>>>0
x3e;(c[m>>2]|0)>>>0)break;c[l>>2]=(c[l>>2]|0)+4;c[o>>2]=d[(c[l>>
;2]|0)+-4>>0]<<24|d[(c[l>>2]|0)+-4+1>>0]<<16|d[(c[l>>2]|0)+-4+2>
;>0]<<8|d[(c[l>>2]|0)+-4+3>>0]<<0;break}c[l>>2]=a+(f<<1);c[m>
;>2]=(c[(c[j>>2]|0)+736>>2]|0)+(c[(c[j>>2]|0)+732>>2]<<1);c[l>>
2]=(c[l>>2]|0)+2;c[n>>2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>
x3e;2]|0)+-2+1>>0]&65535)<<0)&65535;c[o>>2]=c[n>>2];if(((c[l>>2]|0)+
2|0)>>>0<=(c[m>>2]|0)>>>0){c[l>>2]=(c[l>>2]|0)+2;c[o>>
;2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>>2]|0)+-2+1>>0]&65535)
x3c;<0)&65535}c[n>>2]=c[n>>2]<<1;c[o>>2]=c[o>>2]<<1}while(
0);if((c[n>>2]|0)>>>0>=(c[(c[j>>2]|0)+704>>2]|0)>>>0){c[c[k>
;>2]>>2]=0;c[h>>2]=0;o=c[h>>2]|0;i=p;return o|0}if((c[o>>2]|0)>>>0
x3e;=(c[(c[j>>2]|0)+704>>2]|0)>>>0)c[o>>2]=c[(c[j>>2]|0)+704>>2
];if((c[o>>2]|0)>>>0>=(c[n>>2]|0)>>>0)c[c[k>>2]>>2]=(
c[o>>2]|0)-(c[n>>2]|0);else c[c[k>>2]>>2]=(c[(c[j>>2]|0)+704>>2]|0)-(
c[n>>2]|0);c[h>>2]=c[n>>2];o=c[h>>2]|0;i=p;return o|0}function He(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;r=i;i=i+48|0;g=r+36|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0
;m=r+16|0;n=r+12|0;s=r+8|0;p=r+4|0;o=r;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>
x3e;2]=f;c[o>>2]=c[j>>2];c[s>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+4>>2];c[
p>>2]=Ud(c[s>>2]|0,11340)|0;do if(c[p>>2]|0){s=Kc(c[h>>2]|0,0)|0;c[n>>2]=s;if((
s|0)==0?(c[n>>2]=Za[c[(c[p>>2]|0)+4>>2]&31](c[h>>2]|0,c[o>>2]|0,c[k>
x3e;2]|0,c[l>>2]|0,c[m>>2]|0)|0,(c[n>>2]|0)==0):0){if(((c[(c[o>>2]|0)+148>>2]|
0)!=65536?(c[(c[o>>2]|0)+148>>2]|0)!=131072:0)?(c[(c[o>>2]|0)+148>>2]|0)!=1953658213:0){
q=24;break}s=(c[j>>2]|0)+8|0;c[s>>2]=c[s>>2]|2048;if((c[k>>2]|0)<0){c[g>>
2]=0;s=c[g>>2]|0;i=r;return s|0}c[n>>2]=Za[c[(c[p>>2]|0)+8>>2]&31](c[h>>2
]|0,c[o>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(!(c[n>>2]|0)){if((Ie(c[j>
;>2]|0)|0)<<24>>24){s=(c[j>>2]|0)+8|0;c[s>>2]=c[s>>2]|8192}c[n>>
;2]=Ne(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0)){if(c[(c[j>>2]|0)+8>>2]&1|0
){if(!(c[(c[(c[j>>2]|0)+128>>2]|0)+52>>2]|0))c[n>>2]=Oe(c[o>>2]|0,c[h>>
;2]|0)|0;if(!(c[n>>2]|0))c[n>>2]=ze(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0))c[n
>>2]=Pe(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0))c[n>>2]=Qe(c[o>>2]|0,
c[h>>2]|0)|0}Re(c[o>>2]|0)}}}}else q=24;while(0);if((q|0)==24)c[n>>2]=2;c[g>>2]=c[n>
;>2];s=c[g>>2]|0;i=r;return s|0}function Ie(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[e>>2]=b
;do if(c[e>>2]|0){b=c[e>>2]|0;if(c[(c[e>>2]|0)+20>>2]|0)if((Je(c[b+20>>2]|0)|0
)<<24>>24){a[d>>0]=1;break}else{a[d>>0]=0;break}else if((Ke(b)|0)<<24>>
;24){a[d>>0]=1;break}else{a[d>>0]=0;break}}else a[d>>0]=0;while(0);i=f;return a[d>>0]|0}
function Je(b){b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;f=g+8|0;d=g+4|0;e=g;c[d>>2]=b;c[e>>2]=0;while(1){if((c
[e>>2]|0)>=8){d=6;break}if(vs(c[d>>2]|0,10569+((c[e>>2]|0)*17|0)|0)|0){d=4;break}c[e>>
;2]=(c[e>>2]|0)+1}if((d|0)==4){a[f>>0]=1;f=a[f>>0]|0;i=g;return f|0}else if((d|0)==6){a[f>>
;0]=0;f=a[f>>0]|0;i=g;return f|0}return 0}function Ke(b){b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+48|0;d=
n+40|0;f=n+36|0;g=n+32|0;l=n+12|0;h=n+8|0;j=n+4|0;k=n;c[f>>2]=b;c[l>>2]=0;c[l+4>>2]=0;c[l+8>
x3e;2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[h>>2]=0;a:while(1){if((c[h>>2]|0)>=(e[(c[f>
;>2]|0)+152>>1]|0|0)){m=18;break}c[g>>2]=0;b=c[(c[(c[f>>2]|0)+156>>2]|0)+(c[h>
x3e;2]<<4)>>2]|0;b:do if((b|0)>=1718642541)if((b|0)<1886545264){switch(b|0){case 1718642541:break;
default:break b}c[k>>2]=1;m=7;break}else{switch(b|0){case 1886545264:break;default:break b}c[k>>2]=2;m=7;break
}else{switch(b|0){case 1668707360:break;default:break b}c[k>>2]=0;m=7}while(0);c:do if((m|0)==7){m=0;c[j>>2]=
0;while(1){if((c[j>>2]|0)>=5)break c;if((c[(c[(c[f>>2]|0)+156>>2]|0)+(c[h>>2]<
x3c;4)+12>>2]|0)==(c[448+((c[j>>2]|0)*24|0)+(c[k>>2]<<3)+4>>2]|0)){if(!(c[g>
;>2]|0))c[g>>2]=Le(c[f>>2]|0,c[h>>2]&65535)|0;if((c[448+((c[j>>2]|0)*24|0)+(c[
k>>2]<<3)>>2]|0)==(c[g>>2]|0)){b=l+(c[j>>2]<<2)|0;c[b>>2]=(
c[b>>2]|0)+1}if((c[l+(c[j>>2]<<2)>>2]|0)==3){m=15;break a}}c[j>>2]=(c[j>
x3e;2]|0)+1}}while(0);c[h>>2]=(c[h>>2]|0)+1}if((m|0)==15){a[d>>0]=1;m=a[d>>0]|0;i=n;return
m|0}else if((m|0)==18){a[d>>0]=0;m=a[d>>0]|0;i=n;return m|0}return 0}function Le(a,d){a=a|0;d=d|0;var f=0,g
=0,h=0,j=0;j=i;i=i+16|0;f=j+4|0;g=j;h=j+8|0;c[g>>2]=a;b[h>>1]=d;if(c[(c[(c[g>>2]|0)+156>>
;2]|0)+((e[h>>1]|0)<<4)+4>>2]|0){c[f>>2]=c[(c[(c[g>>2]|0)+156>>2]|0)+((
e[h>>1]|0)<<4)+4>>2];d=c[f>>2]|0;i=j;return d|0}if(!(c[(c[g>>2]|0)+508>
x3e;2]|0)){c[f>>2]=0;d=c[f>>2]|0;i=j;return d|0}if(Wa[c[(c[g>>2]|0)+508>>2]&31](c[g
>>2]|0,c[(c[(c[g>>2]|0)+156>>2]|0)+((e[h>>1]|0)<<4)>>2]|0,c[(c[g>
;>2]|0)+104>>2]|0,0)|0){c[f>>2]=Me(c[(c[g>>2]|0)+104>>2]|0,c[(c[(c[g>>2]|
0)+156>>2]|0)+((e[h>>1]|0)<<4)+12>>2]|0)|0;d=c[f>>2]|0;i=j;return d|0}else{c[f
>>2]=0;d=c[f>>2]|0;i=j;return d|0}return 0}function Me(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+
32|0;d=j+20|0;e=j+16|0;f=j+12|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;a=ee(c[e>>2]|0
,c[f>>2]|0)|0;c[j+8>>2]=a;if(a|0){c[d>>2]=0;h=c[d>>2]|0;i=j;return h|0}while(1){if((c[f
x3e;>2]|0)>>>0<=3)break;a=je(c[e>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+a;c[f>
x3e;2]=(c[f>>2]|0)-4}c[h>>2]=3;while(1){b=c[e>>2]|0;if((c[f>>2]|0)>>>0<
;=0)break;a=(he(b)|0)&255;c[g>>2]=(c[g>>2]|0)+(a<<(c[h>>2]<<3));c[f>
x3e;2]=(c[f>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+-1}ge(b);c[d>>2]=c[g>>2];h=c[d>
x3e;2]|0;i=j;return h|0}function Ne(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;s=i;i=i+48|0;f=s+44
|0;g=s+40|0;h=s+36|0;j=s+32|0;l=s+28|0;r=s+24|0;m=s+20|0;n=s+16|0;q=s+12|0;p=s+8|0;o=s+4|0;k=s;c[g>>2]=b;c[h>>
;2]=e;c[l>>2]=c[(c[h>>2]|0)+28>>2];c[j>>2]=Wa[c[(c[g>>2]|0)+508>>2]
x26;31](c[g>>2]|0,1751412088,c[h>>2]|0,q)|0;if((c[j>>2]|0)!=0|(c[q>>2]|0)>>>
;0<8){c[f>>2]=0;r=c[f>>2]|0;i=s;return r|0}e=de(c[h>>2]|0,c[q>>2]|0,(c[g>>
;2]|0)+740|0)|0;c[j>>2]=e;do if(!e){c[o>>2]=c[(c[g>>2]|0)+740>>2];c[k>>2]=(c[o
>>2]|0)+(c[q>>2]|0);c[o>>2]=(c[o>>2]|0)+2;c[r>>2]=(((d[(c[o>>2]|0)+-
2>>0]|0)&65535)<<8|((d[(c[o>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535
;c[o>>2]=(c[o>>2]|0)+2;c[n>>2]=(((d[(c[o>>2]|0)+-2>>0]|0)&65535)<<
;8|((d[(c[o>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[o>>2]=(c[o>>2]|0)+
4;c[p>>2]=(d[(c[o>>2]|0)+-4>>0]|0)<<24|(d[(c[o>>2]|0)+-4+1>>0]|0)<
;<16|(d[(c[o>>2]|0)+-4+2>>0]|0)<<8|(d[(c[o>>2]|0)+-4+3>>0]|0)<<
0;if((c[p>>2]|0)>>>0>=4294901760)c[p>>2]=c[p>>2]&65535;if(!((c[r>>
;2]|0)!=0|(c[n>>2]|0)>>>0>255|(c[p>>2]|0)>>>0>65537)){r=hc(c[l>
x3e;2]|0,1,0,c[n>>2]|0,0,j)|0;c[(c[g>>2]|0)+756>>2]=r;if(!(c[j>>2]|0)){c[m>>2]=
0;while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;if(((c[o>>
2]|0)+(c[p>>2]|0)|0)>>>0>(c[k>>2]|0)>>>0)break;a[(c[(c[g>>2]|0)+
756>>2]|0)+(c[m>>2]|0)>>0]=a[c[o>>2]>>0]|0;c[o>>2]=(c[o>>2
]|0)+(c[p>>2]|0);c[m>>2]=(c[m>>2]|0)+1}c[(c[g>>2]|0)+748>>2]=c[m>>2];
c[(c[g>>2]|0)+744>>2]=c[q>>2];c[(c[g>>2]|0)+752>>2]=c[p>>2];break}}else
c[j>>2]=3;fe(c[h>>2]|0,(c[g>>2]|0)+740|0);c[(c[g>>2]|0)+744>>2]=0}while(0);c[
f>>2]=c[j>>2];r=c[f>>2]|0;i=s;return r|0}function Oe(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,q=0,r=0;r=i;i=i+48|0;g=r+40|0;h=r+36|0;m=r+32|0;q=r+28|0;f=r+24|0;o=r+20|0;l=r+16|0;n=r+12|0;p=r+8|0;k=r+4|0;j=r
;c[g>>2]=a;c[h>>2]=d;c[m>>2]=Wa[c[(c[g>>2]|0)+508>>2]&31](c[g>>
2]|0,1735162214,c[h>>2]|0,(c[g>>2]|0)+704|0)|0;if((c[m>>2]|0)!=142){if(c[m>>2]|0){q=c[m
x3e;>2]|0;i=r;return q|0}}else c[(c[g>>2]|0)+704>>2]=0;c[m>>2]=Wa[c[(c[g>>2]|0)+508
>>2]&31](c[g>>2]|0,1819239265,c[h>>2]|0,q)|0;if(c[m>>2]|0){c[m>>2]=144;q=
c[m>>2]|0;i=r;return q|0}do if(b[(c[g>>2]|0)+160+50>>1]|0){c[f>>2]=2;if((c[q>>
2]|0)>>>0<262144){c[(c[g>>2]|0)+732>>2]=(c[q>>2]|0)>>>(c[f>
;>2]|0);break}c[m>>2]=8;q=c[m>>2]|0;i=r;return q|0}else{c[f>>2]=1;if((c[q>>2]|0)>
;>>0<131072){c[(c[g>>2]|0)+732>>2]=(c[q>>2]|0)>>>(c[f>>2]|
0);break}c[m>>2]=8;q=c[m>>2]|0;i=r;return q|0}while(0);if((c[(c[g>>2]|0)+732>>2]|0)!=(c[(
c[g>>2]|0)+16>>2]|0)?(c[(c[g>>2]|0)+732>>2]|0)>>>0<(c[(c[g>>
;2]|0)+16>>2]|0)>>>0:0){c[o>>2]=c[(c[g>>2]|0)+16>>2]<<c[f>
x3e;2];c[l>>2]=c[(c[g>>2]|0)+156>>2];c[n>>2]=(c[l>>2]|0)+(e[(c[g>>2]|
0)+152>>1]<<4);c[p>>2]=Mc(c[h>>2]|0)|0;c[k>>2]=2147483647;while(1){a=c[l>
x3e;2]|0;if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[j>>2]=(c[a
+8>>2]|0)-(c[p>>2]|0);if((c[j>>2]|0)>0?(c[j>>2]|0)<(c[k>>2]|0):0)c[k
>>2]=c[j>>2];c[l>>2]=(c[l>>2]|0)+16}if((a|0)==(c[n>>2]|0))c[k>>2]=(c
[(c[h>>2]|0)+4>>2]|0)-(c[p>>2]|0);if((c[o>>2]|0)<=(c[k>>2]|0)){c[(c[g>
;>2]|0)+732>>2]=c[(c[g>>2]|0)+16>>2];c[q>>2]=c[o>>2]}}c[m>>2]=de
(c[h>>2]|0,c[q>>2]|0,(c[g>>2]|0)+736|0)|0;q=c[m>>2]|0;i=r;return q|0}function Pe(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>
;2]=Wa[c[(c[d>>2]|0)+508>>2]&31](c[d>>2]|0,1718642541,c[e>>2]|0,g)|0;if(c[f>
x3e;2]|0){c[(c[d>>2]|0)+656>>2]=0;c[(c[d>>2]|0)+652>>2]=0;c[f>>2]=0;g=c[f>
;>2]|0;i=h;return g|0}else{c[(c[d>>2]|0)+652>>2]=c[g>>2];c[f>>2]=de(c[e>>
2]|0,c[g>>2]|0,(c[d>>2]|0)+656|0)|0;g=c[f>>2]|0;i=h;return g|0}return 0}function Qe(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Wa
[c[(c[d>>2]|0)+508>>2]&31](c[d>>2]|0,1886545264,c[e>>2]|0,g)|0;if(c[f>>2]|
0){c[(c[d>>2]|0)+664>>2]=0;c[(c[d>>2]|0)+660>>2]=0;c[f>>2]=0;g=c[f>>
2]|0;i=h;return g|0}else{c[(c[d>>2]|0)+660>>2]=c[g>>2];c[f>>2]=de(c[e>>2]|0,c[
g>>2]|0,(c[d>>2]|0)+664|0)|0;g=c[f>>2]|0;i=h;return g|0}return 0}function Re(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)+512>>2]=22;c[(c[d>>2]|0)+520>>2]=34;c
[(c[d>>2]|0)+524>>2]=35;c[(c[d>>2]|0)+528>>2]=36;c[(c[d>>2]|0)+516>>
2]=34;i=b;return}function Se(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;g=l+20|0
;n=l+16|0;m=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=a;c[n>>2]=b;c[m>>2]=d;c[h>>2]=e;c[k>
x3e;2]=c[(c[g>>2]|0)+24>>2];c[n>>2]=c[n>>2];d=Kc(c[k>>2]|0,c[m>>2]|0
)|0;c[j>>2]=d;if((d|0)==0?(n=ee(c[k>>2]|0,c[h>>2]|0)|0,c[j>>2]=n,(n|0)==0):0){c[(c[g>
;>2]|0)+200>>2]=c[(c[k>>2]|0)+32>>2];c[(c[g>>2]|0)+204>>2]=c[(c[k>
x3e;2]|0)+36>>2];c[f>>2]=0;n=c[f>>2]|0;i=l;return n|0}c[f>>2]=c[j>>2];n=c[f>
;>2]|0;i=l;return n|0}function Te(e){e=e|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;f=j+12|0;g=j+8|0;h=j+4|0;k=j;c[g>>
;2]=e;c[h>>2]=c[(c[g>>2]|0)+200>>2];c[k>>2]=c[(c[g>>2]|0)+204>>2];if
(((c[h>>2]|0)+10|0)>>>0>(c[k>>2]|0)>>>0){c[f>>2]=20;k=c[f>
x3e;2]|0;i=j;return k|0}else{c[h>>2]=(c[h>>2]|0)+2;b[(c[g>>2]|0)+32>>1]=a[(c[h>>
;2]|0)+-2>>0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0;c[h>
;>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36>>2]=((a[(c[h>>2]|0)+-2>>0]<<
;16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<16>>16;
c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+4>>2]=((a[(c[h>>2]|0)+-2>>0]
x3c;<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<16>
x3e;16;c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+8>>2]=((a[(c[h>>2]|0)+-2>
x3e;0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<
16>>16;c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+12>>2]=((a[(c[h>>2]|0)+-
2>>0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<
;<16>>16;c[(c[g>>2]|0)+200>>2]=c[h>>2];c[f>>2]=0;k=c[f>>2]|0;i=
j;return k|0}return 0}function Ue(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,z=0,A=0,B
=0,C=0,D=0,E=0,F=0,G=0,H=0;H=i;i=i+96|0;j=H+72|0;o=H+68|0;A=H+64|0;v=H+60|0;u=H+56|0;w=H+52|0;z=H+48|0;r=H+44|0;x=H+78|0;y=H+40|
0;s=H+36|0;t=H+32|0;k=H+83|0;n=H+82|0;B=H+28|0;C=H+24|0;D=H+20|0;l=H+16|0;m=H+12|0;g=H+76|0;E=H+8|0;F=H+4|0;p=H+81|0;G=H;q=H+80|
0;c[j>>2]=f;c[A>>2]=c[(c[j>>2]|0)+200>>2];c[v>>2]=c[(c[j>>2]|0)+204
x3e;>2];c[u>>2]=c[(c[j>>2]|0)+12>>2];c[w>>2]=b[(c[j>>2]|0)+32>>
1];c[r>>2]=c[c[j>>2]>>2];c[E>>2]=0;if((c[w>>2]|0)!=0?((b[(c[u>>2]|0)+
20>>1]|0)+(b[(c[u>>2]|0)+56>>1]|0)+(c[w>>2]|0)|0)>>>0>(c[(c[u>
x3e;2]|0)+8>>2]|0)>>>0:0)f=kc(c[u>>2]|0,0,c[w>>2]|0)|0;else f=0;c[o>>2]=f
;if(c[o>>2]|0){G=c[o>>2]|0;i=H;return G|0}c[l>>2]=c[(c[u>>2]|0)+56+12>>2];c[m
x3e;>2]=(c[l>>2]|0)+(c[w>>2]<<1);a:do if((c[w>>2]|0)<4095?((c[A>>2]|
0)+((c[w>>2]|0)+1<<1)|0)>>>0<=(c[v>>2]|0)>>>0:0){c[A>>
;2]=(c[A>>2]|0)+2;b[g>>1]=(d[(c[A>>2]|0)+-2>>0]&65535)<<8|(d[(c[A>
x3e;2]|0)+-2+1>>0]&65535)<<0;if((c[w>>2]|0)>0)b[c[l>>2]>>1]=b[g>
;>1]|0;c[l>>2]=(c[l>>2]|0)+2;while(1){if((c[l>>2]|0)>>>0>=(c[m>>
;2]|0)>>>0)break;c[A>>2]=(c[A>>2]|0)+2;b[c[l>>2]>>1]=(d[(c[A>>2
]|0)+-2>>0]&65535)<<8|(d[(c[A>>2]|0)+-2+1>>0]&65535)<<0;if((b[c[l>
;>2]>>1]|0)<=(b[g>>1]|0)){h=12;break}b[g>>1]=b[c[l>>2]>>1]|0;c[l>
;>2]=(c[l>>2]|0)+2}if((h|0)==12){c[o>>2]=8;G=c[o>>2]|0;i=H;return G|0}c[y>>2]=0;if((
c[w>>2]|0)>0?(c[y>>2]=(b[(c[l>>2]|0)+-2>>1]|0)+1,(c[y>>2]|0)<0):0)break
;if(((c[y>>2]|0)+4|0)!=0?((b[(c[u>>2]|0)+20+2>>1]|0)+(b[(c[u>>2]|0)+56+2>>1]|0
)+((c[y>>2]|0)+4)|0)>>>0>(c[(c[u>>2]|0)+4>>2]|0)>>>0:0)f=kc(c[u
>>2]|0,(c[y>>2]|0)+4|0,0)|0;else f=0;c[o>>2]=f;if(c[o>>2]|0){G=c[o>>2]|0;i=H;return
G|0}c[z>>2]=(c[u>>2]|0)+56;c[l>>2]=(c[(c[z>>2]|0)+12>>2]|0)+2;while(1){if((c[
l>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;if((b[(c[l>>2]|0)+-2>
x3e;1]|0)>=(b[c[l>>2]>>1]|0))break a;c[l>>2]=(c[l>>2]|0)+2}c[(c[(c[j>>2]|
0)+8>>2]|0)+140>>2]=0;c[(c[(c[j>>2]|0)+8>>2]|0)+136>>2]=0;if(((c[A>>
2]|0)+2|0)>>>0<=(c[v>>2]|0)>>>0){c[A>>2]=(c[A>>2]|0)+2;b[x>
;>1]=(d[(c[A>>2]|0)+-2>>0]&65535)<<8|(d[(c[A>>2]|0)+-2+1>>0]&65535
)<<0;if((e[x>>1]|0)>(e[(c[r>>2]|0)+260+26>>1]|0)){c[o>>2]=22;G=c[o>
x3e;2]|0;i=H;return G|0}if(((c[v>>2]|0)-(c[A>>2]|0)|0)<(e[x>>1]|0)){c[o>>2]=22;G=c[
o>>2]|0;i=H;return G|0}if(!(c[(c[j>>2]|0)+16>>2]&2)){c[(c[(c[j>>2]|0)+8>>
2]|0)+140>>2]=e[x>>1];c[(c[(c[j>>2]|0)+8>>2]|0)+136>>2]=c[(c[(c[j>>2
]|0)+160>>2]|0)+392>>2];Ss(c[(c[(c[j>>2]|0)+160>>2]|0)+392>>2]|0,c[A>>
;2]|0,e[x>>1]|0)|0}c[A>>2]=(c[A>>2]|0)+(e[x>>1]|0);c[s>>2]=c[(c[z>>2
]|0)+8>>2];c[t>>2]=(c[s>>2]|0)+(c[y>>2]|0);b:while(1){if((c[s>>2]|0)>>
;>0>=(c[t>>2]|0)>>>0)break;if(((c[A>>2]|0)+1|0)>>>0>(c[v>
x3e;2]|0)>>>0)break a;r=c[A>>2]|0;c[A>>2]=r+1;r=a[r>>0]|0;a[k>>0]=r;x=c[s
>>2]|0;c[s>>2]=x+1;a[x>>0]=r;if(!(d[k>>0]&8))continue;if(((c[A>>2]|0)+1|0
)>>>0>(c[v>>2]|0)>>>0)break a;x=c[A>>2]|0;c[A>>2]=x+1;a[n>
x3e;0]=a[x>>0]|0;if(((c[s>>2]|0)+(d[n>>0]|0)|0)>>>0>(c[t>>2]|0)>
;>>0)break a;while(1){if((d[n>>0]|0)<=0)continue b;r=a[k>>0]|0;x=c[s>>2]|0;c[s>
;>2]=x+1;a[x>>0]=r;a[n>>0]=(a[n>>0]|0)+-1<<24>>24}}c[B>>2]=c[(c
[z>>2]|0)+4>>2];c[C>>2]=(c[B>>2]|0)+(c[y>>2]<<3);c[s>>2]=c
[(c[z>>2]|0)+8>>2];c[D>>2]=0;if(((c[A>>2]|0)+(c[E>>2]|0)|0)>>>0
<=(c[v>>2]|0)>>>0){while(1){if((c[B>>2]|0)>>>0>=(c[C>>2]|0
)>>>0)break;c[F>>2]=0;a[p>>0]=a[c[s>>2]>>0]|0;if(d[p>>0]&2
|0){if(((c[A>>2]|0)+1|0)>>>0>(c[v>>2]|0)>>>0)break a;E=c[A>>2]|
0;c[A>>2]=E+1;c[F>>2]=d[E>>0];if(!(d[p>>0]&16))c[F>>2]=0-(c[F>>
2]|0)}else if(!(d[p>>0]&16)){if(((c[A>>2]|0)+2|0)>>>0>(c[v>>2]|0)>
x3e;>0)break a;c[A>>2]=(c[A>>2]|0)+2;c[F>>2]=((a[(c[A>>2]|0)+-2>>0]<
x3c;16>>16<<8|d[(c[A>>2]|0)+-2+1>>0]<<0)&65535)<<16>>
16}c[D>>2]=(c[D>>2]|0)+(c[F>>2]|0);c[c[B>>2]>>2]=c[D>>2];a[c[s>
x3e;2]>>0]=d[p>>0]&-19;c[B>>2]=(c[B>>2]|0)+8;c[s>>2]=(c[s>>2]|0
)+1}c[B>>2]=c[(c[u>>2]|0)+56+4>>2];c[C>>2]=(c[B>>2]|0)+(c[y>>2]<
;<3);c[s>>2]=c[(c[z>>2]|0)+8>>2];c[D>>2]=0;while(1){if((c[B>>2]|0)>
x3e;>0>=(c[C>>2]|0)>>>0)break;c[G>>2]=0;a[q>>0]=a[c[s>>2]>
x3e;0]|0;if(d[q>>0]&4|0){if(((c[A>>2]|0)+1|0)>>>0>(c[v>>2]|0)>>
x3e;0)break a;F=c[A>>2]|0;c[A>>2]=F+1;c[G>>2]=d[F>>0];if(!(d[q>>0]&32))c[
G>>2]=0-(c[G>>2]|0)}else if(!(d[q>>0]&32)){if(((c[A>>2]|0)+2|0)>>>0
x3e;(c[v>>2]|0)>>>0)break a;c[A>>2]=(c[A>>2]|0)+2;c[G>>2]=((a[(c[A>
x3e;2]|0)+-2>>0]<<16>>16<<8|d[(c[A>>2]|0)+-2+1>>0]<<0)&
;65535)<<16>>16}c[D>>2]=(c[D>>2]|0)+(c[G>>2]|0);c[(c[B>>2]|0)+4>
;>2]=c[D>>2];a[c[s>>2]>>0]=d[q>>0]&1;c[B>>2]=(c[B>>2]|0)+8
;c[s>>2]=(c[s>>2]|0)+1}b[(c[z>>2]|0)+2>>1]=c[y>>2];b[c[z>>2]>
x3e;1]=c[w>>2];c[(c[j>>2]|0)+200>>2]=c[A>>2];G=c[o>>2]|0;i=H;return G|0}}}while
(0);c[o>>2]=20;G=c[o>>2]|0;i=H;return G|0}function Ve(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;u=i;i=i+64|0;n=u+48|0;o=u+44|0;s=u+40|0;q=u+36|0;p=u+32|0;h=u+28|0;r=u+24|0;j=u+20|0;k=u+16|0;m=u+12|0;l=u+8|0;g=
u+4|0;t=u;c[n>>2]=f;c[s>>2]=c[(c[n>>2]|0)+200>>2];c[q>>2]=c[(c[n>>2]|
0)+204>>2];c[p>>2]=c[(c[n>>2]|0)+12>>2];c[r>>2]=0;while(1){c[o>>2]=lc
(c[p>>2]|0,(c[r>>2]|0)+1|0)|0;if(c[o>>2]|0){f=24;break}if(((c[s>>2]|0)+4|0)>>
x3e;0>(c[q>>2]|0)>>>0){f=25;break}c[h>>2]=(c[(c[p>>2]|0)+56+32>>2]|0
)+(c[r>>2]<<5);c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+8>>2]=0;c[s>
;>2]=(c[s>>2]|0)+2;b[(c[h>>2]|0)+4>>1]=(d[(c[s>>2]|0)+-2>>0]&65535)
x3c;<8|(d[(c[s>>2]|0)+-2+1>>0]&65535)<<0;c[s>>2]=(c[s>>2]|0)+2;c[c[h
>>2]>>2]=((d[(c[s>>2]|0)+-2>>0]&65535)<<8|(d[(c[s>>2]|0)+-2+1
x3e;>0]&65535)<<0)&65535;c[g>>2]=2;if(e[(c[h>>2]|0)+4>>1]&1|0)c[g>
;>2]=(c[g>>2]|0)+2;do if(!(e[(c[h>>2]|0)+4>>1]&8|0)){if(e[(c[h>>2]|0)+4>
x3e;1]&64|0){c[g>>2]=(c[g>>2]|0)+4;break}if(e[(c[h>>2]|0)+4>>1]&128|0)c[g>
;>2]=(c[g>>2]|0)+8}else c[g>>2]=(c[g>>2]|0)+2;while(0);if(((c[s>>2]|0)+(c[g>
x3e;2]|0)|0)>>>0>(c[q>>2]|0)>>>0){f=25;break}f=c[s>>2]|0;if(e[(c[h>
x3e;2]|0)+4>>1]&1|0){c[s>>2]=f+2;c[(c[h>>2]|0)+8>>2]=((a[(c[s>>2]|0)+-2
x3e;>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<
x3c;16>>16;c[s>>2]=(c[s>>2]|0)+2;c[(c[h>>2]|0)+12>>2]=((a[(c[s>>2]|0
)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)
x3c;<16>>16}else{c[s>>2]=f+1;c[(c[h>>2]|0)+8>>2]=a[f>>0];f=c[s>>
;2]|0;c[s>>2]=f+1;c[(c[h>>2]|0)+12>>2]=a[f>>0]}c[m>>2]=65536;c[j>>2]=
65536;c[l>>2]=0;c[k>>2]=0;do if(!(e[(c[h>>2]|0)+4>>1]&8|0)){if(e[(c[h>>2]|
0)+4>>1]&64|0){c[s>>2]=(c[s>>2]|0)+2;c[j>>2]=((a[(c[s>>2]|0)+-2>>
;0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<<16
x3e;>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[m>>2]=((a[(c[s>>2]|0)+-2>>0]
x3c;<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<<16>
x3e;16<<2;break}if(e[(c[h>>2]|0)+4>>1]&128|0){c[s>>2]=(c[s>>2]|0)+2;c[j
x3e;>2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>
;>0]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[l>
x3e;2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>
;0]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[k>>
2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0
]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[m>>2]=((
a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<
;<0)&65535)<<16>>16<<2}}else{c[s>>2]=(c[s>>2]|0)+2;c[j>>2]=((
a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<
;<0)&65535)<<16>>16<<2;c[m>>2]=c[j>>2]}while(0);c[(c[h>>2]|
0)+16>>2]=c[j>>2];c[(c[h>>2]|0)+16+4>>2]=c[k>>2];c[(c[h>>2]|0)+16+8
x3e;>2]=c[l>>2];c[(c[h>>2]|0)+16+12>>2]=c[m>>2];c[r>>2]=(c[r>>2
]|0)+1;if(!(e[(c[h>>2]|0)+4>>1]&32)){f=23;break}}if((f|0)==23){c[(c[p>>2]|0)+56+28>>
;2]=c[r>>2];c[t>>2]=c[(c[n>>2]|0)+24>>2];t=Mc(c[t>>2]|0)|0;c[(c[n>>2
]|0)+168>>2]=(c[s>>2]|0)+t-(c[q>>2]|0);c[(c[n>>2]|0)+200>>2]=c[s>>2];
t=c[o>>2]|0;i=u;return t|0}else if((f|0)==24){t=c[o>>2]|0;i=u;return t|0}else if((f|0)==25){c[o>>2
]=21;t=c[o>>2]|0;i=u;return t|0}return 0}function We(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];ge(c[d>>2]|0);i=b;return}function Xe(a){a=a|0;var b=0,
d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[b>>2]=a;c[d>>2]=c[b>>2];if
(!(c[d>>2]|0)){i=h;return}c[e>>2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[b>
x3e;2]|0)+104>>2];c[f>>2]=c[(c[d>>2]|0)+532>>2];if(c[(c[d>>2]|0)+692+4>
x3e;2]|0)Va[c[(c[d>>2]|0)+692+4>>2]&63](c[(c[d>>2]|0)+692>>2]|0);if(c[f>>
2]|0)Va[c[(c[f>>2]|0)+12>>2]&63](c[d>>2]|0);Ye(c[d>>2]|0);Ze(c[d>>2]|0);Fb
(c[e>>2]|0,c[(c[d>>2]|0)+672>>2]|0);c[(c[d>>2]|0)+672>>2]=0;c[(c[d>>
2]|0)+668>>2]=0;fe(c[g>>2]|0,(c[d>>2]|0)+656|0);fe(c[g>>2]|0,(c[d>>2]|0)+664|0
);c[(c[d>>2]|0)+652>>2]=0;c[(c[d>>2]|0)+660>>2]=0;_e(c[e>>2]|0,c[(c[d>>
;2]|0)+712>>2]|0);c[(c[d>>2]|0)+712>>2]=0;i=h;return}function Ye(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]|0)+104>>2];fe(c[e>>2]|0,(c[d>
;>2]|0)+736|0);c[(c[d>>2]|0)+732>>2]=0;i=b;return}function Ze(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)+104>>2];c[f>>2]=c[(c[e>
;>2]|0)+28>>2];Fb(c[f>>2]|0,c[(c[d>>2]|0)+756>>2]|0);c[(c[d>>2]|0)+756>
;>2]=0;fe(c[e>>2]|0,(c[d>>2]|0)+740|0);i=b;return}function _e(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;
i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=g;return}Fb(c[d>>2]|
0,c[(c[e>>2]|0)+4>>2]|0);c[(c[e>>2]|0)+4>>2]=0;Fb(c[d>>2]|0,c[(c[e>>
2]|0)+8>>2]|0);c[(c[e>>2]|0)+8>>2]=0;if(c[(c[e>>2]|0)+20>>2]|0){c[f>>
;2]=0;while(1){b=c[d>>2]|0;if((c[f>>2]|0)>>>0>=(c[c[e>>2]>>2]|0)>
;>>0)break;Fb(b,c[(c[(c[e>>2]|0)+20>>2]|0)+(c[f>>2]<<3)+4>>2]|0);c[(
c[(c[e>>2]|0)+20>>2]|0)+(c[f>>2]<<3)+4>>2]=0;c[f>>2]=(c[f>>
;2]|0)+1}Fb(b,c[(c[e>>2]|0)+20>>2]|0);c[(c[e>>2]|0)+20>>2]=0}Fb(c[d>>2]|0,c[(c
[e>>2]|0)+28>>2]|0);c[(c[e>>2]|0)+28>>2]=0;Fb(c[d>>2]|0,c[(c[e>>2]|0
)+36>>2]|0);c[(c[e>>2]|0)+36>>2]=0;Fb(c[d>>2]|0,c[e>>2]|0);c[e>>2]=0
;i=g;return}function $e(b){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]=b;c[f>>2]=c[g
x3e;>2];c[d>>2]=0;a[(c[f>>2]|0)+300>>0]=0;a[(c[f>>2]|0)+301>>0]=0;a[(c[f
x3e;>2]|0)+72+36>>0]=0;c[(c[f>>2]|0)+112>>2]=-1;i=e;return c[d>>2]|0}function af(b){
b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=b;c[e>>2]=c[d>>2];if(a[(c[e>>2]|0
)+300>>0]|0)bf(c[d>>2]|0);a[(c[e>>2]|0)+72+36>>0]=0;i=f;return}function bf(d){d=d|0;var
e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;j=g+12|0;f=g+8|0;h=g+4|0;e=g;c[j>>2]=d;c[f>>2]=c[j>>2];c[h>
x3e;2]=c[c[j>>2]>>2];c[e>>2]=c[(c[h>>2]|0)+100>>2];if(a[(c[f>>2]|0)+
292>>0]|0){c[(c[f>>2]|0)+296>>2]=0;a[(c[f>>2]|0)+292>>0]=0}Fb(c[e>>2
]|0,c[(c[f>>2]|0)+244>>2]|0);c[(c[f>>2]|0)+244>>2]=0;c[(c[f>>2]|0)+240>
x3e;2]=0;Fb(c[e>>2]|0,c[(c[f>>2]|0)+252>>2]|0);c[(c[f>>2]|0)+252>>2]=0;b[(c[f
x3e;>2]|0)+248>>1]=0;cf((c[f>>2]|0)+256|0);Fb(c[e>>2]|0,c[(c[f>>2]|0)+124>>
;2]|0);c[(c[f>>2]|0)+124>>2]=0;Fb(c[e>>2]|0,c[(c[f>>2]|0)+136>>2]|0);c[(c[f>
;>2]|0)+136>>2]=0;c[(c[f>>2]|0)+116>>2]=0;c[(c[f>>2]|0)+120>>2]=0;c[(c[f
x3e;>2]|0)+128>>2]=0;c[(c[f>>2]|0)+132>>2]=0;c[(c[f>>2]|0)+140>>2]=0;c[(c
[f>>2]|0)+144>>2]=0;a[(c[f>>2]|0)+300>>0]=0;a[(c[f>>2]|0)+301>>0]=0;
i=g;return}function cf(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=c[c[d>>
2]>>2];if(!(c[e>>2]|0)){i=f;return}Fb(c[e>>2]|0,c[(c[d>>2]|0)+28>>2]|0);c[(c[d
>>2]|0)+28>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+24>>2]|0);c[(c[d>>2]|0)+
24>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+16>>2]=0
;Fb(c[e>>2]|0,c[(c[d>>2]|0)+12>>2]|0);c[(c[d>>2]|0)+12>>2]=0;Fb(c[e>>
;2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>>2]=0;b[(c[d>>2]|0)+8>>
;1]=0;b[(c[d>>2]|0)+4>>1]=0;b[(c[d>>2]|0)+10>>1]=0;b[(c[d>>2]|0)+6>>
1]=0;c[c[d>>2]>>2]=0;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;a=gc(c
[c[(c[d>>2]|0)+156>>2]>>2]|0)|0;i=b;return a|0}function ef(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+32|0;o=n+28|0;p=n+24|0;g=n+20|0;h=n+16|0;m=n+12|0;l=n+8|0;k=n+4|0;j=n;c[o
>>2]=a;c[p>>2]=b;c[g>>2]=d;c[h>>2]=e;c[m>>2]=c[o>>2];c[l>>
2]=c[p>>2];c[k>>2]=c[(c[o>>2]|0)+4>>2];if(!(c[m>>2]|0)){c[f>>2]=37;p
=c[f>>2]|0;i=n;return p|0}if(!(c[l>>2]|0)){c[f>>2]=36;p=c[f>>2]|0;i=n;return p|0}if(!(c[
k>>2]|0)){c[f>>2]=6;p=c[f>>2]|0;i=n;return p|0}if((c[g>>2]|0)>>>0>=(
c[(c[k>>2]|0)+16>>2]|0)>>>0?(c[(c[(c[k>>2]|0)+128>>2]|0)+52>>2]|
0)==0:0){c[f>>2]=6;p=c[f>>2]|0;i=n;return p|0}if(c[h>>2]&2|0){if(c[(c[k>>2]|0)+8>
;>2]&8192|0)c[h>>2]=c[h>>2]&-3;if(c[h>>2]&32768|0)c[h>>2]=c[h>
x3e;2]|2}if(c[h>>2]&1025|0?(c[h>>2]=c[h>>2]|9,(c[(c[k>>2]|0)+8>>2]&8192
|0)==0):0)c[h>>2]=c[h>>2]|2;c[j>>2]=ff(c[l>>2]|0,c[m>>2]|0,c[g>>2]|0
,c[h>>2]|0)|0;c[f>>2]=c[j>>2];p=c[f>>2]|0;i=n;return p|0}function ff(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;r=i;i=i+256|0;h=r+240|0;j=r+236|0;k=r+232|0;l=r+228|0;m=r+224|0;o=r+220
|0;n=r+216|0;p=r+8|0;q=r;c[j>>2]=b;c[k>>2]=d;c[l>>2]=f;c[m>>2]=g;c[o>>2]=c[(c[
k>>2]|0)+4>>2];c[n>>2]=0;if(((c[(c[j>>2]|0)+112>>2]|0)!=-1?(c[m>>2]
x26;8|0)==0:0)?(c[n>>2]=gf(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0,(c[n>
;>2]|0)==0):0){c[q>>2]=c[o>>2];if((c[(c[q>>2]|0)+8>>2]&1|0?(hf(p,c[j>>
;2]|0,c[k>>2]|0,c[m>>2]|0,1)|0,ah(p,c[l>>2]|0,0,1)|0,c[(c[k>>2]|0)+56>>2]=c[p+
60>>2],c[(c[k>>2]|0)+60>>2]=(c[p+176>>2]|0)+(c[p+36+12>>2]|0)-(c[p+180>
x3e;2]|0),c[(c[o>>2]|0)+468+12>>2]|0):0)?(c[m>>2]&512|0)==0:0)c[(c[k>>2]|0)+56>
;>2]=e[(c[o>>2]|0)+216+10>>1];c[h>>2]=0;b=c[h>>2]|0;i=r;return b|0}if((c[m>>
;2]&1|0)==0?(a[(c[j>>2]|0)+72+36>>0]|0)==0:0){c[h>>2]=36;b=c[h>>2]|0;i=r;return b|0
}if(c[m>>2]&16384|0){c[h>>2]=6;b=c[h>>2]|0;i=r;return b|0}c[n>>2]=hf(p,c[j>>
;2]|0,c[k>>2]|0,c[m>>2]|0,0)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];b=c[h>>
2]|0;i=r;return b|0}c[(c[k>>2]|0)+72>>2]=1869968492;c[(c[k>>2]|0)+128>>2]=0;c[(c[k>
x3e;2]|0)+108+16>>2]=0;c[n>>2]=ah(p,c[l>>2]|0,0,0)|0;if(!(c[n>>2]|0)){if((c[(c[k>
x3e;2]|0)+72>>2]|0)!=1668246896){b=(c[k>>2]|0)+108|0;q=(c[p+12>>2]|0)+20|0;c[b>>2]=c[q
x3e;>2];c[b+4>>2]=c[q+4>>2];c[b+8>>2]=c[q+8>>2];c[b+12>>2]=c[q+12>
x3e;2];c[b+16>>2]=c[q+16>>2];b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]&-513;
if(c[p+68>>2]|0)Nb((c[k>>2]|0)+108|0,0-(c[p+68>>2]|0)|0,0)}else{c[(c[k>>2]|0)+128>
x3e;2]=c[(c[p+12>>2]|0)+20+28>>2];c[(c[k>>2]|0)+132>>2]=c[(c[p+12>>2]|0)+20+32
>>2]}a:do if(!(c[m>>2]&2)){if(!(a[(c[p+160>>2]|0)+284+53>>0]|0)){b=(c[k>>
2]|0)+108+16|0;c[b>>2]=c[b>>2]|8;break}switch(c[(c[p+160>>2]|0)+284+56>>2]|0){case 1:break
a;case 0:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|32;break a}case 4:{b=(c[k>>2]|0)+108+16
|0;c[b>>2]=c[b>>2]|48;break a}case 5:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|16
;break a}default:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|8;break a}}}while(0);nh(p,c[l>>
2]|0)|0}if((c[m>>2]&1|0)==0?(e[(c[j>>2]|0)+12+2>>1]|0)<24:0){b=(c[k>>2]|0)+108
+16|0;c[b>>2]=c[b>>2]|256}c[h>>2]=c[n>>2];b=c[h>>2]|0;i=r;return b|0}function
gf(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;n=i;i=i+48|0;q=n+28|0;j=n+24|0;p=n+20|0;k=n+16|0
;r=n+12|0;s=n+8|0;o=n+4|0;l=n;m=n+32|0;c[q>>2]=e;c[j>>2]=f;c[p>>2]=g;c[k>>2]=h;c[r>
x3e;2]=c[(c[j>>2]|0)+4>>2];c[s>>2]=c[(c[r>>2]|0)+532>>2];c[o>>2]=c[(
c[r>>2]|0)+104>>2];c[l>>2]=Na[c[(c[s>>2]|0)+104>>2]&1](c[r>>2]|
0,c[(c[q>>2]|0)+112>>2]|0,c[p>>2]|0,c[k>>2]|0,c[o>>2]|0,(c[j>>2]|0)+
76|0,m)|0;if(c[l>>2]|0){s=c[l>>2]|0;i=n;return s|0}b[(c[j>>2]|0)+108+2>>1]=0;b[(c[j>
;>2]|0)+108>>1]=0;c[(c[j>>2]|0)+24>>2]=d[m+1>>0]<<6;c[(c[j>>2]|
0)+24+4>>2]=d[m>>0]<<6;c[(c[j>>2]|0)+24+8>>2]=a[m+2>>0]<<6
;c[(c[j>>2]|0)+24+12>>2]=a[m+3>>0]<<6;c[(c[j>>2]|0)+24+16>>2]=d[m+4
x3e;>0]<<6;c[(c[j>>2]|0)+24+20>>2]=a[m+5>>0]<<6;c[(c[j>>2]|0)+24
+24>>2]=a[m+6>>0]<<6;c[(c[j>>2]|0)+24+28>>2]=d[m+7>>0]<<6;
c[(c[j>>2]|0)+72>>2]=1651078259;if(c[k>>2]&16|0){c[(c[j>>2]|0)+100>>2]=a[
m+5>>0];c[(c[j>>2]|0)+104>>2]=a[m+6>>0];s=c[l>>2]|0;i=n;return s|0}else{c[(c[j
>>2]|0)+100>>2]=a[m+2>>0];c[(c[j>>2]|0)+104>>2]=a[m+3>>0];s=c[l>
;>2]|0;i=n;return s|0}return 0}function hf(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;y=i;i=i+64|0;n=y+44|0;o=y+40|0;p=y+36|0;q=y+32|0;r=y+28|0;s=y+49|0;v=y+24|0;x=y+20|0;u=y+16|0;l=y+48|0;
k=y+12|0;m=y+8|0;t=y+4|0;w=y;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;a[s>>0]=j
;c[v>>2]=c[(c[q>>2]|0)+4>>2];c[x>>2]=c[(c[v>>2]|0)+104>>2];Ns(c[o>
;>2]|0,0,208)|0;if(!((c[r>>2]&2|0)!=0|(a[s>>0]|0)!=0)){if((a[(c[p>>2]|0)+301>>
0]|0)==0?(c[k>>2]=jf(c[p>>2]|0)|0,c[k>>2]|0):0){c[n>>2]=c[k>>2];x=c[n>>
;2]|0;i=y;return x|0}if(d[(c[p>>2]|0)+292>>0]|0)k=c[(c[p>>2]|0)+296>>2]|0;else k=c[(c[(c
[v>>2]|0)+96>>2]|0)+40>>2]|0;c[u>>2]=k;if(!(c[u>>2]|0)){c[n>>2]=153;
x=c[n>>2]|0;i=y;return x|0}a[l>>0]=(c[r>>2]>>16&15|0)!=2;Vg(c[u>>2]|0,c[v
>>2]|0,c[p>>2]|0)|0;if((d[l>>0]|0)!=(d[(c[u>>2]|0)+604>>0]|0)){a[(c[u>>
;2]|0)+604>>0]=a[l>>0]|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[(
c[p>>2]|0)+240>>2]|0)>>>0)break;l=Mb(b[(c[(c[v>>2]|0)+672>>2]|0)+(c[m>
;>2]<<1)>>1]|0,c[(c[p>>2]|0)+72+16>>2]|0)|0;c[(c[(c[p>>2]|0)+244>>
;2]|0)+(c[m>>2]<<2)>>2]=l;c[m>>2]=(c[m>>2]|0)+1}$g(c[p>>2]|0)|0}if(d
[(c[u>>2]|0)+284+52>>0]&1|0)c[r>>2]=c[r>>2]|2;if(d[(c[u>>2]|0)+284+52>
;>0]&2|0){k=(c[u>>2]|0)+284|0;j=568;g=k+68|0;do{c[k>>2]=c[j>>2];k=k+4|0;j=j+4|0}while((k
|0)<(g|0))}a[(c[u>>2]|0)+561>>0]=c[r>>2]&128;c[(c[o>>2]|0)+160>>2]=c
[u>>2];c[(c[o>>2]|0)+164>>2]=c[(c[u>>2]|0)+392>>2]}do if(c[(c[(c[v>>
2]|0)+128>>2]|0)+52>>2]|0)c[(c[o>>2]|0)+84>>2]=0;else{c[t>>2]=Wa[c[(c[v>
x3e;2]|0)+508>>2]&31](c[v>>2]|0,1735162214,c[x>>2]|0,0)|0;if((c[t>>2]|0)==142){c[(c
[o>>2]|0)+84>>2]=0;break}if(!(c[t>>2]|0)){u=Mc(c[x>>2]|0)|0;c[(c[o>>2]|0)+84
x3e;>2]=u;break}c[n>>2]=c[t>>2];x=c[n>>2]|0;i=y;return x|0}while(0);if(!(a[s>>0]|0)){
c[w>>2]=c[c[(c[q>>2]|0)+156>>2]>>2];dc(c[w>>2]|0);c[(c[o>>2]|0)+12
x3e;>2]=c[w>>2]}c[(c[o>>2]|0)+16>>2]=c[r>>2];c[c[o>>2]>>2]=c[v
x3e;>2];c[(c[o>>2]|0)+4>>2]=c[p>>2];c[(c[o>>2]|0)+8>>2]=c[q>>2];
c[(c[o>>2]|0)+24>>2]=c[x>>2];c[n>>2]=0;x=c[n>>2]|0;i=y;return x|0}function jf(
d){d=d|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;h=k+12|0;j=k+8|0;g=k+4|0;f=k;c[h>>2]=d;c[j>>2]=0;if((a[(c[h>
;>2]|0)+300>>0]|0)==0?(c[j>>2]=kf(c[h>>2]|0)|0,c[j>>2]|0):0){j=c[j>>2]|0;
i=k;return j|0}if(a[(c[h>>2]|0)+301>>0]|0){j=c[j>>2]|0;i=k;return j|0}c[f>>2]=c[c[h>
;>2]>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[(c[h>>2]|0)+
240>>2]|0)>>>0)break;d=Mb(b[(c[(c[f>>2]|0)+672>>2]|0)+(c[g>>2]<<
;1)>>1]|0,c[(c[h>>2]|0)+72+16>>2]|0)|0;c[(c[(c[h>>2]|0)+244>>2]|0)+(c[g>
x3e;2]<<2)>>2]=d;c[g>>2]=(c[g>>2]|0)+1}c[g>>2]=0;while(1){if((c[g>>2
]|0)>>>0>=(e[(c[h>>2]|0)+256+8>>1]|0)>>>0)break;c[(c[(c[h>>2]|0
)+256+12>>2]|0)+(c[g>>2]<<3)>>2]=0;c[(c[(c[h>>2]|0)+256+12>>2]|0)+(c
[g>>2]<<3)+4>>2]=0;c[(c[(c[h>>2]|0)+256+16>>2]|0)+(c[g>>2]<<
;3)>>2]=0;c[(c[(c[h>>2]|0)+256+16>>2]|0)+(c[g>>2]<<3)+4>>2]=0;c[g>
;>2]=(c[g>>2]|0)+1}c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(e[(c[h>
x3e;2]|0)+248>>1]|0)>>>0)break;c[(c[(c[h>>2]|0)+252>>2]|0)+(c[g>>2]<
x3c;2)>>2]=0;c[g>>2]=(c[g>>2]|0)+1}f=(c[h>>2]|0)+172|0;g=568;d=f+68|0;do{c[f>>
2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(d|0));c[j>>2]=$g(c[h>>2]|0)|0;if(c[j>>2]|0){
j=c[j>>2]|0;i=k;return j|0}a[(c[h>>2]|0)+301>>0]=1;j=c[j>>2]|0;i=k;return j|0}function kf
(d){d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;l=q+32|0;m=q+28|0;p=q+24|0;n=q+20|0;h=q+16|0;f=q+12|0;k=q
+36|0;g=q+8|0;j=q+4|0;o=q;c[l>>2]=d;c[p>>2]=c[l>>2];c[n>>2]=c[c[l>>2]>>
;2];c[h>>2]=c[(c[n>>2]|0)+100>>2];c[g>>2]=(c[n>>2]|0)+260;a[(c[p>>2]|
0)+300>>0]=1;a[(c[p>>2]|0)+301>>0]=0;c[(c[p>>2]|0)+120>>2]=e[(c[g>>2
]|0)+20>>1];c[(c[p>>2]|0)+132>>2]=e[(c[g>>2]|0)+22>>1];c[(c[p>>2]|0)+
116>>2]=0;c[(c[p>>2]|0)+128>>2]=0;c[(c[p>>2]|0)+140>>2]=0;c[(c[p>>2]|
0)+144>>2]=0;c[(c[p>>2]|0)+240>>2]=c[(c[n>>2]|0)+668>>2];b[(c[p>>2]|
0)+248>>1]=b[(c[g>>2]|0)+18>>1]|0;c[j>>2]=(c[p>>2]|0)+72;a[(c[j>>2]|
0)+37>>0]=0;a[(c[j>>2]|0)+38>>0]=0;c[f>>2]=0;while(1){if((c[f>>2]|0)>=4)break
;c[(c[j>>2]|0)+20+(c[f>>2]<<2)>>2]=0;c[f>>2]=(c[f>>2]|0)+1}j=hc(c[h
x3e;>2]|0,16,0,c[(c[p>>2]|0)+120>>2]|0,0,m)|0;c[(c[p>>2]|0)+124>>2]=j;if(((((c[m>
;>2]|0)==0?(j=hc(c[h>>2]|0,16,0,c[(c[p>>2]|0)+132>>2]|0,0,m)|0,c[(c[p>>2]|0)+136>
;>2]=j,(c[m>>2]|0)==0):0)?(j=hc(c[h>>2]|0,4,0,c[(c[p>>2]|0)+240>>2]|0,0,m)|0,c[(c[p
>>2]|0)+244>>2]=j,(c[m>>2]|0)==0):0)?(j=hc(c[h>>2]|0,4,0,e[(c[p>>2]|0)+248>
;>1]|0,0,m)|0,c[(c[p>>2]|0)+252>>2]=j,(c[m>>2]|0)==0):0)?(b[k>>1]=b[(c[g>>
;2]|0)+16>>1]|0,b[k>>1]=(e[k>>1]|0)+4,c[m>>2]=lf(c[h>>2]|0,b[k>>1]|0
,0,(c[p>>2]|0)+256|0)|0,(c[m>>2]|0)==0):0){b[(c[p>>2]|0)+256+8>>1]=b[k>>1]|0;d
=(c[p>>2]|0)+172|0;f=568;g=d+68|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));c[o
x3e;>2]=c[(c[(c[n>>2]|0)+96>>2]|0)+4>>2];c[(c[n>>2]|0)+688>>2]=c[(c[o>
;>2]|0)+180>>2];if(!(c[(c[n>>2]|0)+688>>2]|0))c[(c[n>>2]|0)+688>>2]=37;c[
m>>2]=Ug(c[p>>2]|0)|0}if(!(c[m>>2]|0)){p=c[m>>2]|0;i=q;return p|0}bf(c[l>>2]|0
);p=c[m>>2]|0;i=q;return p|0}function lf(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;n=i;i=i+16|0;h=n
+8|0;j=n+14|0;k=n+12|0;l=n+4|0;m=n;c[h>>2]=a;b[j>>1]=d;b[k>>1]=f;c[l>>2]=g;f=c[l>
x3e;2]|0;d=f+36|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(d|0));c[c[l>>2]>>2]=c[h>>2];g=hc
(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0;c[(c[l>>2]|0)+12>>2]=g;if(((((c[m>>2]|0)==0?(g
=hc(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+16>>2]=g,(c[m>>2]|0)==0):0)?(
g=hc(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+20>>2]=g,(c[m>>2]|0)==0):0)?(
g=hc(c[h>>2]|0,1,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+24>>2]=g,(c[m>>2]|0)==0):0)?(
h=hc(c[h>>2]|0,2,0,b[k>>1]|0,0,m)|0,c[(c[l>>2]|0)+28>>2]=h,(c[m>>2]|0)==0):0){
b[(c[l>>2]|0)+4>>1]=b[j>>1]|0;b[(c[l>>2]|0)+6>>1]=b[k>>1]|0;m=c[m>
;>2]|0;i=n;return m|0}cf(c[l>>2]|0);m=c[m>>2]|0;i=n;return m|0}function mf(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,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=i;i=i+96|0;h=G+68|0;j=G+64|0;C=G+60|0
;z=G+56|0;E=G+80|0;k=G+78|0;l=G+76|0;t=G+74|0;v=G+52|0;x=G+48|0;u=G+72|0;w=G+44|0;y=G+40|0;r=G+36|0;s=G+32|0;m=G+28|0;n=G+24|0;o
=G+20|0;p=G+16|0;q=G+12|0;B=G+8|0;D=G+4|0;A=G;c[j>>2]=f;c[C>>2]=0;c[(c[j>>2]|0)+244+12>>
2]=0;f=(c[j>>2]|0)+592|0;if((e[(c[j>>2]|0)+216>>1]|0)!=(e[(c[j>>2]|0)+216+2>>1
]|0)){c[f>>2]=103;c[(c[j>>2]|0)+596>>2]=9;c[(c[j>>2]|0)+600>>2]=10}else{c[f>
;>2]=104;c[(c[j>>2]|0)+596>>2]=11;c[(c[j>>2]|0)+600>>2]=12}vf(c[j>>2]|0);
Hf(c[j>>2]|0,c[(c[j>>2]|0)+284+28>>2]&255);a:while(1){a[(c[j>>2]|0)+368>>
0]=a[(c[(c[j>>2]|0)+356>>2]|0)+(c[(c[j>>2]|0)+360>>2]|0)>>0]|0;g=a[10705+(d[(c
[j>>2]|0)+368>>0]|0)>>0]|0;c[(c[j>>2]|0)+372>>2]=g;if((g|0)<0){if(((c[(c[
j>>2]|0)+360>>2]|0)+1|0)>(c[(c[j>>2]|0)+364>>2]|0)){F=196;break}g=2-(_(c[(c[j>
x3e;2]|0)+372>>2]|0,d[(c[(c[j>>2]|0)+356>>2]|0)+((c[(c[j>>2]|0)+360>>2]|0)+1)
x3e;>0]|0)|0)|0;c[(c[j>>2]|0)+372>>2]=g}if(((c[(c[j>>2]|0)+360>>2]|0)+(c[(c[j>
x3e;2]|0)+372>>2]|0)|0)>(c[(c[j>>2]|0)+364>>2]|0)){F=196;break}c[(c[j>>2]|0)+28>
;>2]=(c[(c[j>>2]|0)+16>>2]|0)-(d[10961+(d[(c[j>>2]|0)+368>>0]|0)>>0]>
;>4);f=c[j>>2]|0;if((c[(c[j>>2]|0)+28>>2]|0)<0){F=10;break}c[(c[j>>2]|0)+32>
;>2]=(c[f+28>>2]|0)+(d[10961+(d[(c[j>>2]|0)+368>>0]|0)>>0]&15);f=c[j>>
;2]|0;if((c[(c[j>>2]|0)+32>>2]|0)>>>0>(c[(c[j>>2]|0)+20>>2]|0)>
x3e;>0){F=12;break}a[f+376>>0]=1;c[(c[j>>2]|0)+12>>2]=0;c[z>>2]=(c[(c[j>>
2]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<2);a[E>>0]=a[(c[j>>2]|0)+368
x3e;>0]|0;b:do switch(d[E>>0]|0){case 5:case 4:case 3:case 2:case 1:case 0:{b[k>>1]=(d[E>>0]
x26;1)<<14;b[l>>1]=b[k>>1]^16384;if((d[E>>0]|0)<4){b[(c[j>>2]|0)+284+10
x3e;>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+10+2>>1]=b[l>>1]|0;b[(c[j>>2]|0)+284+
6>>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+6+2>>1]=b[l>>1]|0}if(!(d[E>>0]&
;2)){b[(c[j>>2]|0)+284+14>>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+14+2>>1]=b[l>
x3e;1]|0}vf(c[j>>2]|0);break}case 7:case 6:{if(!((Qf(c[j>>2]|0,c[(c[z>>2]|0)+4>>2]&
65535,c[c[z>>2]>>2]&65535,d[(c[j>>2]|0)+368>>0]|0,(c[j>>2]|0)+284+10|0)|0
)&255)){g=(c[j>>2]|0)+284+6|0;f=(c[j>>2]|0)+284+10|0;b[g>>1]=b[f>>1]|0;b[g+2>
x3e;1]=b[f+2>>1]|0;vf(c[j>>2]|0)}break}case 9:case 8:{if(!((Qf(c[j>>2]|0,c[(c[z>>2]|0)+4
>>2]&65535,c[c[z>>2]>>2]&65535,d[(c[j>>2]|0)+368>>0]|0,(c[j>>
;2]|0)+284+14|0)|0)&255))vf(c[j>>2]|0);break}case 10:{b[t>>1]=c[(c[z>>2]|0)+4>>2];c
[x>>2]=b[t>>1];b[t>>1]=c[c[z>>2]>>2];c[v>>2]=b[t>>1];Rf(c[
j>>2]|0,c[v>>2]|0,c[x>>2]|0,(c[j>>2]|0)+284+10|0)|0;g=(c[j>>2]|0)+284+6|0;f=(c
[j>>2]|0)+284+10|0;b[g>>1]=b[f>>1]|0;b[g+2>>1]=b[f+2>>1]|0;vf(c[j>>2
]|0);break}case 11:{b[u>>1]=c[(c[z>>2]|0)+4>>2];c[y>>2]=b[u>>1];b[u>>
;1]=c[c[z>>2]>>2];c[w>>2]=b[u>>1];Rf(c[j>>2]|0,c[w>>2]|0,c[y>
x3e;2]|0,(c[j>>2]|0)+284+14|0)|0;vf(c[j>>2]|0);break}case 12:{c[c[z>>2]>>2]=b[(c[j>
x3e;2]|0)+284+10>>1];c[(c[z>>2]|0)+4>>2]=b[(c[j>>2]|0)+284+10+2>>1];break}case
13:{c[c[z>>2]>>2]=b[(c[j>>2]|0)+284+14>>1];c[(c[z>>2]|0)+4>>2]=b[(c
[j>>2]|0)+284+14+2>>1];break}case 14:{g=(c[j>>2]|0)+284+14|0;f=(c[j>>2]|0)+284+10|0;b[g
x3e;>1]=b[f>>1]|0;b[g+2>>1]=b[f+2>>1]|0;vf(c[j>>2]|0);break}case 15:{Sf(c[j>
x3e;2]|0,c[z>>2]|0);break}case 16:{b[(c[j>>2]|0)+284>>1]=c[c[z>>2]>>2];break}case
17:{b[(c[j>>2]|0)+284+2>>1]=c[c[z>>2]>>2];break}case 18:{b[(c[j>>2]|0)+284+4
x3e;>1]=c[c[z>>2]>>2];break}case 19:{Tf(c[j>>2]|0,c[z>>2]|0);break}case 20:{Uf(c[j
x3e;>2]|0,c[z>>2]|0);break}case 21:{Vf(c[j>>2]|0,c[z>>2]|0);break}case 22:{Wf(c[j>>
2]|0,c[z>>2]|0);break}case 23:if((c[c[z>>2]>>2]|0)<0){c[(c[j>>2]|0)+12>>2
]=132;break b}else{c[(c[j>>2]|0)+284+20>>2]=c[c[z>>2]>>2];break b}case 24:{c[(c[j>
x3e;2]|0)+284+28>>2]=1;c[(c[j>>2]|0)+568>>2]=33;break}case 25:{c[(c[j>>2]|0)+284+28>
;>2]=0;c[(c[j>>2]|0)+568>>2]=34;break}case 26:{c[(c[j>>2]|0)+284+24>>2]=c[c[z>
x3e;2]>>2];break}case 27:{Xf(c[j>>2]|0,c[z>>2]|0);break}case 28:{g=(c[j>>2]|0)+360|0;c[g
>>2]=(c[g>>2]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|0)+360>>2]|0)<
;0)c[(c[j>>2]|0)+12>>2]=132;a[(c[j>>2]|0)+376>>0]=0;break}case 29:{c[(c[j>>2]|
0)+284+36>>2]=c[c[z>>2]>>2];break}case 30:{c[(c[j>>2]|0)+284+40>>2]=c[c[z>
;>2]>>2];break}case 31:{c[(c[j>>2]|0)+284+44>>2]=c[c[z>>2]>>2]>>
;10;break}case 32:{c[(c[z>>2]|0)+4>>2]=c[c[z>>2]>>2];break}case 127:case 126:case 89:case
33:break;case 34:{c[(c[j>>2]|0)+32>>2]=0;break}case 35:{c[r>>2]=c[c[z>>2]>>2];
c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>>2];c[(c[z>>2]|0)+4>>2]=c[r>>
;2];break}case 36:{c[c[z>>2]>>2]=c[(c[j>>2]|0)+16>>2];break}case 37:{c[s>>2]=c
[c[z>>2]>>2];if((c[s>>2]|0)>0?(c[s>>2]|0)<=(c[(c[j>>2]|0)+28>
x3e;2]|0):0){c[c[z>>2]>>2]=c[(c[(c[j>>2]|0)+24>>2]|0)+((c[(c[j>>2]|0)+28>
x3e;2]|0)-(c[s>>2]|0)<<2)>>2];break b}c[(c[j>>2]|0)+12>>2]=134;break}case 38:{
Zf(c[j>>2]|0,c[z>>2]|0);break}case 39:{_f(c[j>>2]|0,c[z>>2]|0);break}case 40:{$f(c[j>
;>2]|0,c[z>>2]|0);break}case 41:{bg(c[j>>2]|0,c[z>>2]|0);break}case 42:{cg(c[j>>2]|
0,c[z>>2]|0);break}case 43:{dg(c[j>>2]|0,c[z>>2]|0);break}case 44:{eg(c[j>>2]|0,c[z>
;>2]|0);break}case 45:{fg(c[j>>2]|0,c[z>>2]|0);break}case 47:case 46:{gg(c[j>>2]|0,c[z>
x3e;2]|0);break}case 49:case 48:{hg(c[j>>2]|0,c[z>>2]|0);break}case 51:case 50:{kg(c[j>>2]|0,c[z
x3e;>2]|0);break}case 53:case 52:{ng(c[j>>2]|0,c[z>>2]|0);break}case 55:case 54:{og(c[j>>2]|0
,c[z>>2]|0);break}case 56:{pg(c[j>>2]|0,c[z>>2]|0);break}case 57:{rg(c[j>>2]|0,c[z>
x3e;2]|0);break}case 59:case 58:{sg(c[j>>2]|0,c[z>>2]|0);break}case 60:{tg(c[j>>2]|0,c[z>>
;2]|0);break}case 61:{c[(c[j>>2]|0)+284+28>>2]=2;c[(c[j>>2]|0)+568>>2]=35;break}case 63:
case 62:{ug(c[j>>2]|0,c[z>>2]|0);break}case 64:{vg(c[j>>2]|0,c[z>>2]|0);break}case 65:{wg
(c[j>>2]|0,c[z>>2]|0);break}case 66:{c[m>>2]=c[c[z>>2]>>2];if((c[m>>
2]|0)>>>0>=(e[(c[j>>2]|0)+468>>1]|0)>>>0)if(a[(c[j>>2]|0)+561
x3e;>0]|0){F=81;break b}else break b;else{c[(c[(c[j>>2]|0)+472>>2]|0)+(c[m>>2]<<2)
x3e;>2]=c[(c[z>>2]|0)+4>>2];break b}}case 67:{c[n>>2]=c[c[z>>2]>>2];if((c
[n>>2]|0)>>>0<(e[(c[j>>2]|0)+468>>1]|0)>>>0){c[c[z>>2
]>>2]=c[(c[(c[j>>2]|0)+472>>2]|0)+(c[n>>2]<<2)>>2];break b}if(a[(c[j
>>2]|0)+561>>0]|0)F=81;else c[c[z>>2]>>2]=0;break}case 68:{c[o>>2]=c[c[z>
x3e;2]>>2];f=c[j>>2]|0;if((c[o>>2]|0)>>>0>=(c[(c[j>>2]|0)+380>
x3e;2]|0)>>>0)if(a[f+561>>0]|0){F=81;break b}else break b;else{Ua[c[f+596>>2]&31](c[j>
;>2]|0,c[o>>2]|0,c[(c[z>>2]|0)+4>>2]|0);break b}}case 69:{c[p>>2]=c[c[z>>
2]>>2];f=c[j>>2]|0;if((c[p>>2]|0)>>>0<(c[(c[j>>2]|0)+380>>
2]|0)>>>0){g=Ya[c[f+592>>2]&127](c[j>>2]|0,c[p>>2]|0)|0;c[c[z>>2]>
;>2]=g;break b}if(a[f+561>>0]|0)F=81;else c[c[z>>2]>>2]=0;break}case 71:case 70:{yg(c[j>
x3e;2]|0,c[z>>2]|0);break}case 72:{zg(c[j>>2]|0,c[z>>2]|0);break}case 74:case 73:{Ag(c[j>>
;2]|0,c[z>>2]|0);break}case 75:{g=Bg(c[j>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 76:{g=Bg(c[
j>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 77:{a[(c[j>>2]|0)+284+32>>0]=1;break}case
78:{a[(c[j>>2]|0)+284+32>>0]=0;break}case 79:{c[(c[j>>2]|0)+12>>2]=135;break}case 80:{c
[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<(c[(c[z>>2]|0)+4>>2]|0)&1;break
}case 81:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<=(c[(c[z>>2]|0)+4>>2]|
0)&1;break}case 82:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)>(c[(c[z>>2]|0)+4
>>2]|0)&1;break}case 83:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)>=(c[(c[z>
;>2]|0)+4>>2]|0)&1;break}case 84:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)==(
c[(c[z>>2]|0)+4>>2]|0)&1;break}case 85:{c[c[z>>2]>>2]=(c[c[z>>2]>>
;2]|0)!=(c[(c[z>>2]|0)+4>>2]|0)&1;break}case 86:{g=((Oa[c[(c[j>>2]|0)+568>>2]&
63](c[j>>2]|0,c[c[z>>2]>>2]|0,0)|0)&127|0)==64&1;c[c[z>>2]>>2]=g;break
}case 87:{g=((Oa[c[(c[j>>2]|0)+568>>2]&63](c[j>>2]|0,c[c[z>>2]>>2]|0,0)|0
)&127|0)==0&1;c[c[z>>2]>>2]=g;break}case 88:{Cg(c[j>>2]|0,c[z>>2]|0);break}case
90:{if(c[c[z>>2]>>2]|0)f=(c[(c[z>>2]|0)+4>>2]|0)!=0;else f=0;c[c[z>>2]>
x3e;2]=f&1;break}case 91:{if(c[c[z>>2]>>2]|0)f=1;else f=(c[(c[z>>2]|0)+4>>2]|0)!=0;
c[c[z>>2]>>2]=f&1;break}case 92:{c[c[z>>2]>>2]=((c[c[z>>2]>>2]|
0)!=0^1)&1;break}case 93:{Dg(c[j>>2]|0,c[z>>2]|0);break}case 94:{b[(c[j>>2]|0)+284+48>
x3e;1]=c[c[z>>2]>>2];break}case 95:{b[(c[j>>2]|0)+284+50>>1]=c[c[z>>2]>
x3e;2];break}case 96:{g=c[z>>2]|0;c[g>>2]=(c[g>>2]|0)+(c[(c[z>>2]|0)+4>>2]|0);
break}case 97:{g=c[z>>2]|0;c[g>>2]=(c[g>>2]|0)-(c[(c[z>>2]|0)+4>>2]|0);break}case
98:if(!(c[(c[z>>2]|0)+4>>2]|0)){c[(c[j>>2]|0)+12>>2]=133;break b}else{g=Ub(c[c[z>
x3e;2]>>2]|0,64,c[(c[z>>2]|0)+4>>2]|0)|0;c[c[z>>2]>>2]=g;break b}case 99:{g=xb
(c[c[z>>2]>>2]|0,c[(c[z>>2]|0)+4>>2]|0,64)|0;c[c[z>>2]>>2]=g;break}case
100:{g=c[c[z>>2]>>2]|0;c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<0?0-g|0
:g;break}case 101:{c[c[z>>2]>>2]=0-(c[c[z>>2]>>2]|0);break}case 102:{c[c[z>>2]
x3e;>2]=c[c[z>>2]>>2]&-64;break}case 103:{c[c[z>>2]>>2]=(c[c[z>>2]
x3e;>2]|0)+63&-64;break}case 107:case 106:case 105:case 104:{g=Oa[c[(c[j>>2]|0)+568>>2]&63](c
[j>>2]|0,c[c[z>>2]>>2]|0,c[(c[j>>2]|0)+244+20+((d[(c[j>>2]|0)+368>>0
]|0)-104<<2)>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 111:case 110:case 109:case 108:{g=If(c[
j>>2]|0,c[c[z>>2]>>2]|0,c[(c[j>>2]|0)+244+20+((d[(c[j>>2]|0)+368>>0]|
0)-108<<2)>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 112:{c[q>>2]=c[c[z>>2
]>>2];if((c[q>>2]|0)>>>0>=(c[(c[j>>2]|0)+380>>2]|0)>>>
;0)if(a[(c[j>>2]|0)+561>>0]|0){F=81;break b}else break b;else{g=Mb(c[(c[z>>2]|0)+4>>2]|0
,c[(c[j>>2]|0)+244+16>>2]|0)|0;c[(c[(c[j>>2]|0)+384>>2]|0)+(c[q>>2]<<
;2)>>2]=g;break b}}case 114:case 113:{Dg(c[j>>2]|0,c[z>>2]|0);break}case 117:case 116:case 115:{Eg
(c[j>>2]|0,c[z>>2]|0);break}case 118:{Fg(c[j>>2]|0,16384,c[c[z>>2]>>2]|0);c[(c
[j>>2]|0)+284+28>>2]=6;c[(c[j>>2]|0)+568>>2]=36;break}case 119:{Fg(c[j>>2]|0,11585
,c[c[z>>2]>>2]|0);c[(c[j>>2]|0)+284+28>>2]=7;c[(c[j>>2]|0)+568>>2]=37
;break}case 120:{if(c[(c[z>>2]|0)+4>>2]|0){g=(c[j>>2]|0)+360|0;c[g>>2]=(c[g>>2
]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|0)+360>>2]|0)<0)c[(c[j>>2]|0)+12>
;>2]=132;a[(c[j>>2]|0)+376>>0]=0}break}case 121:{if(!(c[(c[z>>2]|0)+4>>2]|0)){g=(c[
j>>2]|0)+360|0;c[g>>2]=(c[g>>2]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|
0)+360>>2]|0)<0)c[(c[j>>2]|0)+12>>2]=132;a[(c[j>>2]|0)+376>>0]=0}break}case
122:{c[(c[j>>2]|0)+284+28>>2]=5;c[(c[j>>2]|0)+568>>2]=38;break}case 123:{$f(c[j>
x3e;2]|0,c[z>>2]|0);break}case 124:{c[(c[j>>2]|0)+284+28>>2]=4;c[(c[j>>2]|0)+568>
x3e;2]=39;break}case 125:{c[(c[j>>2]|0)+284+28>>2]=3;c[(c[j>>2]|0)+568>>2]=40;break}case
128:{Gg(c[j>>2]|0,c[z>>2]|0);break}case 129:{Hg(c[j>>2]|0,c[z>>2]|0);break}case 130:{Ig
(c[j>>2]|0,c[z>>2]|0);break}case 132:case 131:{$f(c[j>>2]|0,c[z>>2]|0);break}case 133:{Jg
(c[j>>2]|0,c[z>>2]|0);break}case 135:case 134:{Kg(c[j>>2]|0,c[z>>2]|0);break}case 136:{Lg
(c[j>>2]|0,c[z>>2]|0);break}case 137:{Mg(c[j>>2]|0,c[z>>2]|0);break}case 138:{Ng(c[j>
;>2]|0,c[z>>2]|0);break}case 139:{if((c[(c[z>>2]|0)+4>>2]|0)>(c[c[z>>2]>
x3e;2]|0))c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>>2];break}case 140:{if((c[(c[z>>2]|0)+
4>>2]|0)<(c[c[z>>2]>>2]|0))c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>
x3e;2];break}case 141:{Og(c[j>>2]|0,c[z>>2]|0);break}case 142:{Pg(c[j>>2]|0,c[z>>2]|0);break
}case 143:{$f(c[j>>2]|0,c[z>>2]|0);break}default:{if((d[E>>0]|0)>=224){Qg(c[j>>2]|0
,c[z>>2]|0);break b}if((d[E>>0]|0)>=192){Rg(c[j>>2]|0,c[z>>2]|0);break b}if((d[E>
;>0]|0)>=184){Sg(c[j>>2]|0,c[z>>2]|0);break b}f=c[j>>2]|0;g=c[z>>2]|0;if((d[E
x3e;>0]|0)>=176){Tg(f,g);break b}else{$f(f,g);break b}}}while(0);if((F|0)==81){F=0;c[(c[j>>2]|0)+12>>
;2]=134}f=c[j>>2]|0;if(c[(c[j>>2]|0)+12>>2]|0){if((c[f+12>>2]|0)!=128)break;c[B>>
;2]=c[(c[j>>2]|0)+416>>2];c[D>>2]=(c[B>>2]|0)+(c[(c[j>>2]|0)+408>>2]
x3c;<4);while(1){if((c[B>>2]|0)>>>0>=(c[D>>2]|0)>>>0){F=186;break a}
if(d[(c[B>>2]|0)+12>>0]|0?(d[(c[j>>2]|0)+368>>0]|0)==(c[(c[B>>2]|0)+8>>
;2]&255|0):0)break;c[B>>2]=(c[B>>2]|0)+16}f=c[j>>2]|0;if((c[(c[j>>2]|0)+428>
x3e;2]|0)>=(c[(c[j>>2]|0)+432>>2]|0)){F=183;break}c[A>>2]=(c[(c[j>>2]|0)+436>
x3e;2]|0)+(c[f+428>>2]<<4);c[c[A>>2]>>2]=c[(c[j>>2]|0)+352>>2];c[(c[
A>>2]|0)+4>>2]=(c[(c[j>>2]|0)+360>>2]|0)+1;c[(c[A>>2]|0)+8>>2]=1;c[(
c[A>>2]|0)+12>>2]=c[(c[B>>2]|0)+4>>2];if(((ag(c[j>>2]|0,c[c[B>>2]>
;>2]|0,c[(c[B>>2]|0)+4>>2]|0)|0)&255|0)==1)break}else{c[(c[j>>2]|0)+16>>2]=c[f
+32>>2];if(a[(c[j>>2]|0)+376>>0]|0){g=(c[j>>2]|0)+360|0;c[g>>2]=(c[g>>
;2]|0)+(c[(c[j>>2]|0)+372>>2]|0)}g=(c[C>>2]|0)+1|0;c[C>>2]=g;if((g|0)>1e6){F=190;break
}}f=c[j>>2]|0;if((c[(c[j>>2]|0)+360>>2]|0)>=(c[(c[j>>2]|0)+364>>2]|0)){F=
192;break}if(!((a[f+488>>0]|0)!=0^1)){F=195;break}}if((F|0)==10)c[f+12>>2]=129;else if((F|0)==12)c[f+12>
;>2]=130;else if((F|0)==183)c[f+12>>2]=134;else if((F|0)==186)c[(c[j>>2]|0)+12>>2]=128;else if
((F|0)==190){c[h>>2]=139;F=c[h>>2]|0;i=G;return F|0}else if((F|0)==192)if((c[f+428>>2]|0)>0)c
[(c[j>>2]|0)+12>>2]=131;else F=195;else if((F|0)==196)c[(c[j>>2]|0)+12>>2]=131;if((F|0)==
195){c[h>>2]=0;F=c[h>>2]|0;i=G;return F|0}if(c[(c[j>>2]|0)+12>>2]|0?(a[(c[j>>2
]|0)+488>>0]|0)==0:0)a[(c[(c[j>>2]|0)+4>>2]|0)+301>>0]=0;c[h>>2]=c[(c[j>
x3e;2]|0)+12>>2];F=c[h>>2]|0;i=G;return F|0}function nf(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[(c[(c[e>>2]|0)+384>>2]|0)+(c[f>>2]<<2)
x3e;>2]|0;b=Mb(b,of(c[e>>2]|0)|0)|0;i=d;return b|0}function of(a){a=a|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+
8|0;f=h+4|0;g=h;c[e>>2]=a;do if(!(c[(c[e>>2]|0)+244+12>>2]|0)){a=c[e>>2]|0;if(!(b[(c[e
x3e;>2]|0)+284+10+2>>1]|0)){c[(c[e>>2]|0)+244+12>>2]=c[a+244>>2];break}d=c[e>
x3e;2]|0;if(!(b[a+284+10>>1]|0)){c[(c[e>>2]|0)+244+12>>2]=c[d+244+4>>2];break}else{c[f
x3e;>2]=xb(b[d+284+10>>1]|0,c[(c[e>>2]|0)+244>>2]|0,16384)|0;c[g>>2]=xb(b[(c[e>
;>2]|0)+284+10+2>>1]|0,c[(c[e>>2]|0)+244+4>>2]|0,16384)|0;g=pf(c[f>>2]|0,c[g>
x3e;2]|0)|0;c[(c[e>>2]|0)+244+12>>2]=g;break}}while(0);i=h;return c[(c[e>>2]|0)+244+12>>
2]|0}function pf(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;f=d+8|0;e=d;c[g>>2]=a;c[f>>2]=b;
c[e>>2]=c[g>>2];c[e+4>>2]=c[f>>2];b=me(e)|0;i=d;return b|0}function qf(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;d=c[h
x3e;>2]|0;d=Vb(d,of(c[g>>2]|0)|0)|0;c[(c[(c[g>>2]|0)+384>>2]|0)+(c[f>>2]<<
;2)>>2]=d;i=e;return}function rf(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;b=c[h>>2]|0;b=Vb(b,of(c[g>>2]|0)|0)|0;d=(c[(c[g>>
;2]|0)+384>>2]|0)+(c[f>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+b;i=e;return}function sf(
a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f+4|0;d=f;c[e>>2]=a;c[d>>2]=b;i=f;return c[(c[(c[e>>
;2]|0)+384>>2]|0)+(c[d>>2]<<2)>>2]|0}function tf(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;c[(c[(c[g>>2]|0)+384
>>2]|0)+(c[f>>2]<<2)>>2]=c[h>>2];i=e;return}function uf(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[(c[h>
;>2]|0)+384>>2]|0)+(c[g>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+(c[f>>2]|
0);i=e;return}function vf(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=a;d=(c[e>>2]|0)+284|0;do if((b[(
c[e>>2]|0)+284+14>>1]|0)!=16384){a=(c[e>>2]|0)+284+10|0;if((b[d+14+2>>1]|0)==16384){c[(c
[e>>2]|0)+564>>2]=b[a+2>>1]<<16;break}else{d=(_(b[a>>1]|0,b[(c[e>>2]|
0)+284+14>>1]|0)|0)<<2;d=d+((_(b[(c[e>>2]|0)+284+10+2>>1]|0,b[(c[e>>2]|0)+284+
14+2>>1]|0)|0)<<2)|0;c[(c[e>>2]|0)+564>>2]=d;break}}else c[(c[e>>2]|0)+564>
;>2]=b[d+10>>1]<<16;while(0);a=c[e>>2]|0;do if((b[(c[e>>2]|0)+284+10>>1]|
0)!=16384){d=(c[e>>2]|0)+572|0;if((b[a+284+10+2>>1]|0)==16384){c[d>>2]=42;break}else{c[d>>
;2]=43;break}}else c[a+572>>2]=41;while(0);a=c[e>>2]|0;do if((b[(c[e>>2]|0)+284+6>>1]|0)!=
16384){d=(c[e>>2]|0)+576|0;if((b[a+284+6+2>>1]|0)==16384){c[d>>2]=42;break}else{c[d>>2]=
44;break}}else c[a+576>>2]=41;while(0);c[(c[e>>2]|0)+584>>2]=4;c[(c[e>>2]|0)+588>
x3e;2]=5;do if((c[(c[e>>2]|0)+564>>2]|0)==1073741824){a=c[e>>2]|0;if((b[(c[e>>2]|0)+284+
14>>1]|0)==16384){c[a+584>>2]=6;c[(c[e>>2]|0)+588>>2]=7;break}if((b[a+284+14+2>>
;1]|0)==16384){c[(c[e>>2]|0)+584>>2]=8;c[(c[e>>2]|0)+588>>2]=9}}while(0);d=c[(c[e>
x3e;2]|0)+564>>2]|0;if((((c[(c[e>>2]|0)+564>>2]|0)<0?0-d|0:d)|0)>=67108864){e=c[e>
x3e;2]|0;e=e+244|0;e=e+12|0;c[e>>2]=0;i=f;return}c[(c[e>>2]|0)+564>>2]=1073741824;e=c[e>>
;2]|0;e=e+244|0;e=e+12|0;c[e>>2]=0;i=f;return}function wf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=i;i=i+16|0;h=
f+8|0;e=f+4|0;g=f;c[h>>2]=a;c[e>>2]=b;c[g>>2]=d;c[h>>2]=c[h>>2];c[g>>
;2]=c[g>>2];i=f;return c[e>>2]|0}function xf(a,b,d){a=a|0;b=b|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]=b;c[e>>2]=d;c[h>>2]=c[h>>2];c[g>>2]=
c[g>>2];i=f;return c[e>>2]|0}function yf(a,d,e){a=a|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]=a;c[j>>2]=d;c[h>>2]=e;a=zf(c[j>>2]|0,c[h>>2]|0,b[(c[g>
x3e;2]|0)+284+10>>1]|0,b[(c[g>>2]|0)+284+10+2>>1]|0)|0;i=f;return a|0}function zf(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;h=i;i=i+64|0;t=h+48|0;r=h+44|0;s=h+40|0;q=h+36|0;p=
h+32|0;k=h+28|0;n=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;l=h+8|0;o=h+4|0;j=h;c[t>>2]=a;c[r>>2]=b;c[s>>2
]=d;c[q>>2]=e;c[f>>2]=_(c[t>>2]&65535,c[s>>2]|0)|0;c[p>>2]=_(c[t>>
;2]>>16,c[s>>2]|0)|0;c[l>>2]=(c[f>>2]|0)+(c[p>>2]<<16);c[n>>
;2]=(c[p>>2]>>16)+(c[f>>2]>>31)+((c[l>>2]|0)>>>0<(c[f>
;>2]|0)>>>0&1);c[f>>2]=_(c[r>>2]&65535,c[q>>2]|0)|0;c[p>>2
]=_(c[r>>2]>>16,c[q>>2]|0)|0;c[o>>2]=(c[f>>2]|0)+(c[p>>2]<<
;16);c[m>>2]=(c[p>>2]>>16)+(c[f>>2]>>31)+((c[o>>2]|0)>>>
;0<(c[f>>2]|0)>>>0&1);c[j>>2]=(c[l>>2]|0)+(c[o>>2]|0);c[g>
x3e;2]=(c[n>>2]|0)+(c[m>>2]|0)+((c[j>>2]|0)>>>0<(c[l>>2]|0)>>
;>0&1);c[k>>2]=c[g>>2]>>31;c[f>>2]=(c[j>>2]|0)+(c[k>>2]|0);
c[g>>2]=(c[g>>2]|0)+((c[k>>2]|0)+((c[f>>2]|0)>>>0<(c[j>>2]|
0)>>>0&1));c[j>>2]=c[f>>2];c[f>>2]=(c[j>>2]|0)+8192;c[g>>2
]=(c[g>>2]|0)+((c[f>>2]|0)>>>0<(c[j>>2]|0)>>>0&1);i=h;return
c[g>>2]<<18|(c[f>>2]|0)>>>14|0}function Af(a,d,e){a=a|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]=a;c[j>>2]=d;c[h>>2]=e;a=zf(c[j>>2]|0,c[h
x3e;>2]|0,b[(c[g>>2]|0)+284+6>>1]|0,b[(c[g>>2]|0)+284+6+2>>1]|0)|0;i=f;return a|0}function
Bf(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;p=i;i=i+32|0;k=p+12|0;l=p+8|0;m=p+16|0;n=p+4|0;o=p;c[k>>
;2]=f;c[l>>2]=g;b[m>>1]=h;c[n>>2]=j;c[o>>2]=b[(c[k>>2]|0)+284+14>>1];
if(c[o>>2]|0){h=xb(c[n>>2]|0,c[o>>2]<<16,c[(c[k>>2]|0)+564>>2]|0)|0;
g=(c[(c[l>>2]|0)+16>>2]|0)+(e[m>>1]<<3)|0;c[g>>2]=(c[g>>2]|0)+h;g=(c
[(c[l>>2]|0)+24>>2]|0)+(e[m>>1]|0)|0;a[g>>0]=d[g>>0]|8}c[o>>2]=b[(c[
k>>2]|0)+284+14+2>>1];if(!(c[o>>2]|0)){i=p;return}o=xb(c[n>>2]|0,c[o>>2]<
x3c;16,c[(c[k>>2]|0)+564>>2]|0)|0;g=(c[(c[l>>2]|0)+16>>2]|0)+(e[m>>1]<<
;3)+4|0;c[g>>2]=(c[g>>2]|0)+o;g=(c[(c[l>>2]|0)+24>>2]|0)+(e[m>>1]|0)|0;a[g>
;>0]=d[g>>0]|16;i=p;return}function Cf(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;n=i;i=i+32|0;
h=n+12|0;j=n+8|0;k=n+16|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>2]=d;b[k>>1]=f;c[l>>2]=g;c[m>
x3e;2]=b[(c[h>>2]|0)+284+14>>1];if(c[m>>2]|0){f=xb(c[l>>2]|0,c[m>>2]<<
;16,c[(c[h>>2]|0)+564>>2]|0)|0;d=(c[(c[j>>2]|0)+12>>2]|0)+(e[k>>1]<<
3)|0;c[d>>2]=(c[d>>2]|0)+f}c[m>>2]=b[(c[h>>2]|0)+284+14+2>>1];if(!(c[m>
x3e;2]|0)){i=n;return}m=xb(c[l>>2]|0,c[m>>2]<<16,c[(c[h>>2]|0)+564>>2]|0)|0;d=(
c[(c[j>>2]|0)+12>>2]|0)+(e[k>>1]<<3)+4|0;c[d>>2]=(c[d>>2]|0)+m;i=n;return
}function Df(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;k=i;i=i+16|0;o=k+8|0;m=k+4|0;l=k+12|0;n=k;c[o>>2
]=f;c[m>>2]=g;b[l>>1]=h;c[n>>2]=j;c[o>>2]=c[o>>2];g=(c[(c[m>>2]|0)+16
>>2]|0)+((e[l>>1]|0)<<3)|0;c[g>>2]=(c[g>>2]|0)+(c[n>>2]|0);g=(c[(c[m
>>2]|0)+24>>2]|0)+(e[l>>1]|0)|0;a[g>>0]=d[g>>0]|0|8;i=k;return}function Ef(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;h=i;i=i+16|0;m=h+8|0;l=h+4|0;k=h+12|0;j=h;c[m>>2]=a;c[l>>
;2]=d;b[k>>1]=f;c[j>>2]=g;c[m>>2]=c[m>>2];d=(c[(c[l>>2]|0)+12>>2]|0)+((
e[k>>1]|0)<<3)|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);i=h;return}function Ff(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;k=i;i=i+16|0;o=k+8|0;m=k+4|0;l=k+12|0;n=k;c[o>>2]=f;c[m>>
2]=g;b[l>>1]=h;c[n>>2]=j;c[o>>2]=c[o>>2];g=(c[(c[m>>2]|0)+16>>2]|0)+((
e[l>>1]|0)<<3)+4|0;c[g>>2]=(c[g>>2]|0)+(c[n>>2]|0);g=(c[(c[m>>2]|0)+
24>>2]|0)+(e[l>>1]|0)|0;a[g>>0]=d[g>>0]|0|16;i=k;return}function Gf(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;h=i;i=i+16|0;m=h+8|0;l=h+4|0;k=h+12|0;j=h;c[m>>2]=a;c[l>>2]=d;b[k>
x3e;1]=f;c[j>>2]=g;c[m>>2]=c[m>>2];d=(c[(c[l>>2]|0)+12>>2]|0)+((e[k>>
;1]|0)<<3)+4|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);i=h;return}function Hf(b,e){b=b|0;e=e|0;var
f=0,g=0,h=0;g=i;i=i+16|0;f=g;h=g+4|0;c[f>>2]=b;a[h>>0]=e;switch(d[h>>0]|0|0){case 5:{c[(c[f>
x3e;2]|0)+568>>2]=38;break}case 1:{c[(c[f>>2]|0)+568>>2]=33;break}case 4:{c[(c[f>>2]|0)+
568>>2]=39;break}case 3:{c[(c[f>>2]|0)+568>>2]=40;break}case 0:{c[(c[f>>2]|0)+568>
x3e;2]=34;break}case 2:{c[(c[f>>2]|0)+568>>2]=35;break}case 6:{c[(c[f>>2]|0)+568>>2]=36;
break}case 7:{c[(c[f>>2]|0)+568>>2]=37;break}default:{}}i=g;return}function If(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;j=g+12|0;e=g+8|0;h=g+4|0;f=g;c[j>>2]=a;c[e>>2]=b;c[h>>2]=d;c[j>
;>2]=c[j>>2];d=c[e>>2]|0;b=c[h>>2]|0;if((c[e>>2]|0)>=0){j=d+b|0;c[f>>
;2]=j;c[f>>2]=(c[e>>2]|0)!=0&(c[f>>2]|0)<0?0:j;j=c[f>>2]|0;i=g;return j|0}else
{j=d-b|0;c[f>>2]=j;c[f>>2]=(c[f>>2]|0)>0?0:j;j=c[f>>2]|0;i=g;return j|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,j=0;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>
;2]=b;c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e
x3e;>2]|0)+32&-64)|0;c[g>>2]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;
return j|0}c[g>>2]=(c[e>>2]|0)+(c[f>>2]|0)+32;if((c[e>>2]|0)!=0&(c[g>>2]|
0)>0){c[g>>2]=c[g>>2]&-64;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>
;>2]|0;i=h;return j|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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f
=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|
0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)+63&-64)|0;c[g>>2]=j;c[g>>2]=(c[g>>
;2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2]=(c[e>>2]|0)+(c[f>>2]|0)+63;if((c[e
x3e;>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2]=c[g>>2]&-64;j=c[g>>2]|0;i=h;return
j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c[j>>2]=
c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)&-64)|0;c[g>>2
]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2]=(c[e>>2]|
0)+(c[f>>2]|0);if((c[e>>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2]=c[g>>2]&
;-64;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|0}return 0}function Mf(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;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;
c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|0)>=0){j=((c[e>>2]|0)+(c[f>>
;2]|0)&-64)+32|0;c[g>>2]=j;c[g>>2]=(c[e>>2]|0)!=0&(c[g>>2]|0)<0?0:j;j=c[g
>>2]|0;i=h;return j|0}else{j=0-(((c[f>>2]|0)-(c[e>>2]|0)&-64)+32)|0;c[g>>2]=j;c[g
x3e;>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}return 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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c
[j>>2]=c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)+16&-32
)|0;c[g>>2]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2
]=(c[e>>2]|0)+(c[f>>2]|0)+16;if((c[e>>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2
]=c[g>>2]&-32;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|0}
return 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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2
]=a;c[f>>2]=b;c[g>>2]=d;if((c[f>>2]|0)>=0){a=(c[f>>2]|0)-(c[(c[e>>2]|0)+480
>>2]|0)+(c[(c[e>>2]|0)+484>>2]|0)+(c[g>>2]|0)&0-(c[(c[e>>2]|0)+476>
x3e;2]|0);c[h>>2]=a;c[h>>2]=(c[f>>2]|0)!=0&(c[h>>2]|0)<0?0:a;c[h>>2]=(
c[h>>2]|0)+(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}else{a=0-((c[(c[e>
x3e;2]|0)+484>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0)-(c[f>>2]|0)+(c[g>>2]|0)&0-(
c[(c[e>>2]|0)+476>>2]|0))|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>0?0:a;c[h>
x3e;2]=(c[h>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}return 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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>
;2]=b;c[g>>2]=d;if((c[f>>2]|0)>=0){a=_(((c[f>>2]|0)-(c[(c[e>>2]|0)+480>>2
]|0)+(c[(c[e>>2]|0)+484>>2]|0)+(c[g>>2]|0)|0)/(c[(c[e>>2]|0)+476>>2]|0)|0,c[(c
[e>>2]|0)+476>>2]|0)|0;c[h>>2]=a;c[h>>2]=(c[f>>2]|0)!=0&(c[h>>2
]|0)<0?0:a;c[h>>2]=(c[h>>2]|0)+(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;
return h|0}else{a=0-(_(((c[(c[e>>2]|0)+484>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0)-(c[f>
x3e;2]|0)+(c[g>>2]|0)|0)/(c[(c[e>>2]|0)+476>>2]|0)|0,c[(c[e>>2]|0)+476>>2]|0)|
0)|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>0?0:a;c[h>>2]=(c[h>>2]|0)-(c[(c[e>
;>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}return 0}function Qf(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;v=i;i=i+48|0;k=v+36|0;l=v+28|0;m=v+34|0;n=v+32|0;o=v+24|0;p=v+20|0;q=v+
16|0;r=v+12|0;s=v+8|0;t=v+4|0;u=v;c[l>>2]=d;b[m>>1]=f;b[n>>1]=g;c[o>>2]=h;c[p>>
;2]=j;if((e[m>>1]|0)>>>0<(e[(c[l>>2]|0)+108+8>>1]|0)>>>0?(e[n
x3e;>1]|0)>>>0<(e[(c[l>>2]|0)+72+8>>1]|0)>>>0:0){c[t>>2]=(
c[(c[l>>2]|0)+72+16>>2]|0)+(e[n>>1]<<3);c[u>>2]=(c[(c[l>>2]|0)+108+16
>>2]|0)+(e[m>>1]<<3);c[q>>2]=(c[c[t>>2]>>2]|0)-(c[c[u>>2]
x3e;>2]|0);c[r>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[u>>2]|0)+4>>2]|0);if(c[o
>>2]&1|0){c[s>>2]=c[r>>2];c[r>>2]=c[q>>2];c[q>>2]=0-(c[s>
x3e;2]|0)}Rf(c[l>>2]|0,c[q>>2]|0,c[r>>2]|0,c[p>>2]|0)|0;a[k>>0]=0;u=a[k>
x3e;0]|0;i=v;return u|0}if(a[(c[l>>2]|0)+561>>0]|0)c[(c[l>>2]|0)+12>>2]=134;a[k>>
;0]=1;u=a[k>>0]|0;i=v;return u|0}function Rf(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;
p=i;i=i+32|0;h=p+22|0;q=p+16|0;j=p+12|0;k=p+8|0;l=p+4|0;o=p;m=p+21|0;n=p+20|0;c[q>>2]=d;c[j>>2]=e;c[k>
x3e;2]=f;c[l>>2]=g;c[q>>2]=c[q>>2];d=c[j>>2]|0;if((((c[j>>2]|0)<0?0-d|0:d
)|0)<65536?(q=c[k>>2]|0,(((c[k>>2]|0)<0?0-q|0:q)|0)<65536):0){c[j>>2]=c[j>>
;2]<<8;c[k>>2]=c[k>>2]<<8;c[o>>2]=pf(c[j>>2]|0,c[k>>2]|0)|
0;if(!(c[o>>2]|0)){a[h>>0]=0;q=a[h>>0]|0;i=p;return q|0}else{q=(xb(c[j>>2]|0,16384,c[o
x3e;>2]|0)|0)&65535;b[c[l>>2]>>1]=q;q=(xb(c[k>>2]|0,16384,c[o>>2]|0)|0)&65535
;b[(c[l>>2]|0)+2>>1]=q;a[h>>0]=0;q=a[h>>0]|0;i=p;return q|0}}c[o>>2]=pf(c[j>
;>2]|0,c[k>>2]|0)|0;c[j>>2]=xb(c[j>>2]|0,16384,c[o>>2]|0)|0;c[k>>2]=xb(c[
k>>2]|0,16384,c[o>>2]|0)|0;q=_(c[j>>2]|0,c[j>>2]|0)|0;c[o>>2]=q+(_(c[k>
x3e;2]|0,c[k>>2]|0)|0);if((c[j>>2]|0)<0){c[j>>2]=0-(c[j>>2]|0);a[m>>0]=1}
else a[m>>0]=0;if((c[k>>2]|0)<0){c[k>>2]=0-(c[k>>2]|0);a[n>>0]=1}else a[n
>>0]=0;while(1){if((c[o>>2]|0)>=268435456)break;if((c[j>>2]|0)<(c[k>>2]|0))c[j
>>2]=(c[j>>2]|0)+1;else c[k>>2]=(c[k>>2]|0)+1;q=_(c[j>>2]|0,c[j>>2]|
0)|0;c[o>>2]=q+(_(c[k>>2]|0,c[k>>2]|0)|0)}while(1){if((c[o>>2]|0)<268451840)break;if
((c[j>>2]|0)<(c[k>>2]|0))c[j>>2]=(c[j>>2]|0)+-1;else c[k>>2]=(c[k>
x3e;2]|0)+-1;q=_(c[j>>2]|0,c[j>>2]|0)|0;c[o>>2]=q+(_(c[k>>2]|0,c[k>>2]|0)|0)}if
(a[m>>0]|0)c[j>>2]=0-(c[j>>2]|0);if(a[n>>0]|0)c[k>>2]=0-(c[k>>2]|0);
b[c[l>>2]>>1]=c[j>>2];b[(c[l>>2]|0)+2>>1]=c[k>>2];a[h>>0]=
0;q=a[h>>0]|0;i=p;return q|0}function Sf(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;x=i;i=i+64|0;h=x+44|0;y=x+40|0;v=x+56|0;k=x+54|0;l=x+52|0;m=x+50|0;n=x+48|0;s=x+36|0;t=x+32|0;u=x+28|0;o=x+24|0;p=x+
20|0;q=x+16|0;r=x+12|0;w=x+8|0;j=x;c[h>>2]=f;c[y>>2]=g;b[v>>1]=c[c[y>>2]>>2];b
[k>>1]=c[(c[y>>2]|0)+4>>2];b[l>>1]=c[(c[y>>2]|0)+8>>2];b[m>>
;1]=c[(c[y>>2]|0)+12>>2];b[n>>1]=c[(c[y>>2]|0)+16>>2];if(((((e[m>>1]|
0)>>>0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0?(e[n>>1]|0)>>
x3e;0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0:0)?(e[k>>1]|0)>>>0<(e
[(c[h>>2]|0)+72+8>>1]|0)>>>0:0)?(e[l>>1]|0)>>>0<(e[(c[h>
x3e;2]|0)+72+8>>1]|0)>>>0:0)?(e[v>>1]|0)>>>0<(e[(c[h>>2]|0)+108
+8>>1]|0)>>>0:0){c[q>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1
]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>>
2]|0);c[r>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)+4>>2]|0)-(
c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0);c[o>>2]=(c[(c[(c
[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+72+16
x3e;>2]|0)+(e[k>>1]<<3)>>2]|0);c[p>>2]=(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]
x3c;<3)+4>>2]|0);c[t>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<
;3)>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2]|0);c[u>
;>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)-(c[(c[(c[h>
;>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0);y=(c[(c[h>>2]|0)+108+24>
x3e;2]|0)+(e[v>>1]|0)|0;a[y>>0]=d[y>>0]|24;y=xb(c[o>>2]|0,0-(c[r>>2]|0)|0,64)|
0;c[s>>2]=y+(xb(c[p>>2]|0,c[q>>2]|0,64)|0);y=c[s>>2]|0;if((((c[s>>2]|0)<0
?0-y|0:y)|0)>=64){y=xb(c[t>>2]|0,0-(c[r>>2]|0)|0,64)|0;c[w>>2]=y+(xb(c[u>>2]|0,c[q
x3e;>2]|0,64)|0);c[j>>2]=xb(c[w>>2]|0,c[o>>2]|0,c[s>>2]|0)|0;c[j+4>>2]=xb
(c[w>>2]|0,c[p>>2]|0,c[s>>2]|0)|0;c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>
;1]<<3)>>2]=(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2
]|0)+(c[j>>2]|0);c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)+4>>2]=(
c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)+(c[j+4>>2]|0);i=
x;return}else{c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)>>2]=((c[(c[(c[h>
;>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2]|0)+(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]
x3c;<3)>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)>>2]|
0)|0)/4|0;c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)+4>>2]=((c[(c[(c[h>
x3e;2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]
x3c;<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)+4>>
;2]|0)|0)/4|0;i=x;return}}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=x;return}c[(c[h>>2]|0)+12>>2]=
134;i=x;return}function Tf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e
;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>2]|0)+36|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e
x3e;>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{e=(c[g>>2]|0)+36|0;d=(c[g>
x3e;2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c
[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>>2]=134;i=j;return}}b[(c[g>>
2]|0)+284+60>>1]=c[c[h>>2]>>2];i=j;return}function Uf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i
+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>
2]|0)+72|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));
break}case 1:{e=(c[g>>2]|0)+72|0;d=(c[g>>2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0
;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>
2]|0)+12>>2]=134;i=j;return}}b[(c[g>>2]|0)+284+62>>1]=c[c[h>>2]>>2];i=j;return
}function Vf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h
x3e;>2]>>2]|0){case 0:{e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=
c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+144
|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c[g>>
;2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>>2]=134;i=j;return}}b[(c[g>>2]|0)+284+64
x3e;>1]=c[c[h>>2]>>2];i=j;return}function Wf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;
h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>2]|0)+36|0;d=(
c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{
e=(c[g>>2]|0)+36|0;d=(c[g>>2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while
((e|0)<(f|0));break}default:{if(!(a[(c[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>
x3e;2]=134;i=j;return}}e=(c[g>>2]|0)+72|0;d=(c[g>>2]|0)+36|0;f=e+36|0;do{c[e>>2]=c[d>>2];
e=e+4|0;d=d+4|0}while((e|0)<(f|0));e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+36|0;f=e+36|0;do{c[e>>2]=
c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));b[(c[g>>2]|0)+284+60>>1]=c[c[h>>2]>
x3e;2];b[(c[g>>2]|0)+284+62>>1]=c[c[h>>2]>>2];b[(c[g>>2]|0)+284+64>>
1]=c[c[h>>2]>>2];i=j;return}function Xf(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+8|0;h=g+4|0;f=
g;c[e>>2]=a;c[h>>2]=b;c[e>>2]=c[e>>2];c[h>>2]=c[h>>2];c[f>>
;2]=1;while(1){if(((Yf(c[e>>2]|0)|0)&255|0)==1){e=7;break}switch(d[(c[e>>2]|0)+368>>0]|0|0){case
88:{c[f>>2]=(c[f>>2]|0)+1;break}case 89:{c[f>>2]=(c[f>>2]|0)+-1;break}default:{}}if(!(c
[f>>2]|0)){e=7;break}}if((e|0)==7){i=g;return}}function Yf(b){b=b|0;var e=0,f=0,g=0;g=i;i=i+16|0;e=g+4|0;f=g;c[f>
x3e;2]=b;b=(c[f>>2]|0)+360|0;c[b>>2]=(c[b>>2]|0)+(c[(c[f>>2]|0)+372>>2]|0);do
if((c[(c[f>>2]|0)+360>>2]|0)<(c[(c[f>>2]|0)+364>>2]|0)){a[(c[f>>2]|0)+368
>>0]=a[(c[(c[f>>2]|0)+356>>2]|0)+(c[(c[f>>2]|0)+360>>2]|0)>>0]|0;c[(
c[f>>2]|0)+372>>2]=a[10705+(d[(c[f>>2]|0)+368>>0]|0)>>0];if((c[(c[f>>
;2]|0)+372>>2]|0)<0){if(((c[(c[f>>2]|0)+360>>2]|0)+1|0)>(c[(c[f>>2]|0)+364>
;>2]|0))break;b=2-(_(c[(c[f>>2]|0)+372>>2]|0,d[(c[(c[f>>2]|0)+356>>2]|0)+((c[(c[f
x3e;>2]|0)+360>>2]|0)+1)>>0]|0)|0)|0;c[(c[f>>2]|0)+372>>2]=b}if(((c[(c[f>>
;2]|0)+360>>2]|0)+(c[(c[f>>2]|0)+372>>2]|0)|0)<=(c[(c[f>>2]|0)+364>>2]|0)){
a[e>>0]=0;b=a[e>>0]|0;i=g;return b|0}}while(0);c[(c[f>>2]|0)+12>>2]=131;a[e>>0
]=1;b=a[e>>0]|0;i=g;return b|0}function Zf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;d=g+12|0;h=g+8|0;f=g+
4|0;e=g;c[d>>2]=a;c[h>>2]=b;c[f>>2]=c[c[h>>2]>>2];if((c[f>>2]|0)>
;0?(c[f>>2]|0)<=(c[(c[d>>2]|0)+28>>2]|0):0){c[e>>2]=c[(c[(c[d>>2]|0)+24
x3e;>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)<<2)>>2];Ts((c[(c[d>
x3e;2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)<<2)|0,(c[(c[d>
x3e;2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)+1<<2)|0,(c[f>
x3e;2]|0)-1<<2|0)|0;c[(c[(c[d>>2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-1<
;<2)>>2]=c[e>>2];i=g;return}c[(c[d>>2]|0)+12>>2]=134;i=g;return}function _f(d,f){d=
d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;g=l+8|0;m=l+4|0;j=l+14|0;k=l+12|0;h=l;c[g>>2]=d;c[m>>2]=f
;b[j>>1]=c[c[m>>2]>>2];b[k>>1]=c[(c[m>>2]|0)+4>>2];if((e[j>>
;1]|0)>>>0<(e[(c[g>>2]|0)+72+8>>1]|0)>>>0?(e[k>>1]|0)>>
;>0<(e[(c[g>>2]|0)+36+8>>1]|0)>>>0:0){c[h>>2]=(Oa[c[(c[g>>2]|0)+
572>>2]&63](c[g>>2]|0,(c[(c[(c[g>>2]|0)+36+16>>2]|0)+(e[k>>1]<<
3)>>2]|0)-(c[(c[(c[g>>2]|0)+72+16>>2]|0)+(e[j>>1]<<3)>>2]|0)|0,(c[(c
[(c[g>>2]|0)+36+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)-(c[(c[(c[g>>2]|0)+72
+16>>2]|0)+(e[j>>1]<<3)+4>>2]|0)|0)|0)/2|0;_a[c[(c[g>>2]|0)+584>>2]
x26;15](c[g>>2]|0,(c[g>>2]|0)+72|0,b[j>>1]|0,c[h>>2]|0);_a[c[(c[g>>2]|0)+584
x3e;>2]&15](c[g>>2]|0,(c[g>>2]|0)+36|0,b[k>>1]|0,0-(c[h>>2]|0)|0);i=l;return}if
(!(a[(c[g>>2]|0)+561>>0]|0)){i=l;return}c[(c[g>>2]|0)+12>>2]=134;i=l;return}function $f(
b,e){b=b|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+16|0;m=l+12|0;k=l+8|0;f=l+4|0;j=l;c[h>>2]=b;c[m>
;>2]=e;c[k>>2]=c[(c[h>>2]|0)+416>>2];c[f>>2]=(c[k>>2]|0)+(c[(c[h>>
;2]|0)+408>>2]<<4);c[h>>2]=c[h>>2];c[m>>2]=c[m>>2];while(1){if((c[k
x3e;>2]|0)>>>0>=(c[f>>2]|0)>>>0){g=9;break}if((c[(c[k>>2]|0)+8>
x3e;2]&255|0)==(d[(c[h>>2]|0)+368>>0]|0|0)?d[(c[k>>2]|0)+12>>0]|0|0:0)break;c[k>
;>2]=(c[k>>2]|0)+16}if((g|0)==9){c[(c[h>>2]|0)+12>>2]=128;i=l;return}e=c[h>>2]|0;if
((c[(c[h>>2]|0)+428>>2]|0)>=(c[(c[h>>2]|0)+432>>2]|0)){c[e+12>>2]=130;i=l
;return}else{g=c[e+436>>2]|0;f=(c[h>>2]|0)+428|0;m=c[f>>2]|0;c[f>>2]=m+1;c[j>>
2]=g+(m<<4);c[c[j>>2]>>2]=c[(c[h>>2]|0)+352>>2];c[(c[j>>2]|0)+4>
;>2]=(c[(c[h>>2]|0)+360>>2]|0)+1;c[(c[j>>2]|0)+8>>2]=1;c[(c[j>>2]|0)+12
x3e;>2]=c[(c[k>>2]|0)+4>>2];ag(c[h>>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>
;2]|0)+4>>2]|0)|0;a[(c[h>>2]|0)+376>>0]=0;i=l;return}}function ag(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;l=i;i=i+32|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=b;c[h>>2]=d;c[j>>2
]=e;if((c[h>>2]|0)<1|(c[h>>2]|0)>3){c[(c[g>>2]|0)+12>>2]=132;a[f>>0]=
1;k=a[f>>0]|0;i=l;return k|0}c[k>>2]=(c[g>>2]|0)+444+((c[h>>2]|0)-1<<3);if(!(c
[c[k>>2]>>2]|0)){c[(c[g>>2]|0)+12>>2]=138;a[f>>0]=1;k=a[f>>0]|0;i=l;
return k|0}if((c[j>>2]|0)>>>0>(c[(c[k>>2]|0)+4>>2]|0)>>>0){c[(c
[g>>2]|0)+12>>2]=131;a[f>>0]=1;k=a[f>>0]|0;i=l;return k|0}else{c[(c[g>>2]|0)+356
>>2]=c[c[k>>2]>>2];c[(c[g>>2]|0)+364>>2]=c[(c[k>>2]|0)+4>>
2];c[(c[g>>2]|0)+360>>2]=c[j>>2];c[(c[g>>2]|0)+352>>2]=c[h>>2];a[f
x3e;>0]=0;k=a[f>>0]|0;i=l;return k|0}return 0}function bg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;h
=l+4|0;m=l;k=l+8|0;j=l+10|0;c[h>>2]=f;c[m>>2]=g;b[k>>1]=c[c[m>>2]>>2];if((e[k
x3e;>1]|0)>>>0>=(e[(c[h>>2]|0)+36+8>>1]|0)>>>0){if(!(a[(c[h>>
;2]|0)+561>>0]|0)){i=l;return}c[(c[h>>2]|0)+12>>2]=134;i=l;return}a[j>>0]=-1;if(b[(c[h
x3e;>2]|0)+284+14>>1]|0)a[j>>0]=d[j>>0]&-9;if(b[(c[h>>2]|0)+284+14+2>>
;1]|0)a[j>>0]=d[j>>0]&-17;m=(c[(c[h>>2]|0)+36+24>>2]|0)+(e[k>>1]|0)|0;a[m
>>0]=d[m>>0]&d[j>>0];i=l;return}function cg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;
l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;k=l+8|0;h=l+4|0;j=l;c[e>>2]=b;c[f>>2]=d;c[g>>2]=c[(c[f>
;>2]|0)+4>>2];do if((c[g>>2]|0)>>>0<((c[(c[e>>2]|0)+420>>2]|0)+
1|0)>>>0){c[h>>2]=(c[(c[e>>2]|0)+404>>2]|0)+(c[g>>2]<<4);if(!(((
c[(c[e>>2]|0)+420>>2]|0)+1|0)==(c[(c[e>>2]|0)+396>>2]|0)?(c[(c[h>>2]|0)+8>
;>2]|0)==(c[g>>2]|0):0)){c[h>>2]=c[(c[e>>2]|0)+404>>2];c[j>>2]=(c[h>
x3e;2]|0)+(c[(c[e>>2]|0)+396>>2]<<4);while(1){if((c[h>>2]|0)>>>0<(c[
j>>2]|0)>>>0)d=(c[(c[h>>2]|0)+8>>2]|0)!=(c[g>>2]|0);else d=0;b=c[h>
x3e;2]|0;if(!d)break;c[h>>2]=b+16}if((b|0)==(c[j>>2]|0))break}if(a[(c[h>>2]|0)+12>>0]|0){
if((c[(c[e>>2]|0)+428>>2]|0)>=(c[(c[e>>2]|0)+432>>2]|0)){c[(c[e>>2]|0)+12
>>2]=130;i=l;return}if((c[c[f>>2]>>2]|0)<=0){i=l;return}c[k>>2]=(c[(c[e>>
2]|0)+436>>2]|0)+(c[(c[e>>2]|0)+428>>2]<<4);c[c[k>>2]>>2]=c[(c[e>
;>2]|0)+352>>2];c[(c[k>>2]|0)+4>>2]=(c[(c[e>>2]|0)+360>>2]|0)+1;c[(c[k>
;>2]|0)+8>>2]=c[c[f>>2]>>2];c[(c[k>>2]|0)+12>>2]=c[(c[h>>2]|0)+
4>>2];k=(c[e>>2]|0)+428|0;c[k>>2]=(c[k>>2]|0)+1;ag(c[e>>2]|0,c[c[h>>
2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0)|0;a[(c[e>>2]|0)+376>>0]=0;i=l;return}}while(0);
c[(c[e>>2]|0)+12>>2]=134;i=l;return}function dg(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;g=k+20|0;l=k+16|0;e=k+12|0;j=k+8|0;h=k+4|0;f=k;c[g>>2]=b;c[l>>2]=d;c[e>>2]=c[c[l>>2]
x3e;>2];do if((c[e>>2]|0)>>>0<((c[(c[g>>2]|0)+420>>2]|0)+1|0)>>
x3e;0){c[h>>2]=(c[(c[g>>2]|0)+404>>2]|0)+(c[e>>2]<<4);if(!(((c[(c[g>>
;2]|0)+420>>2]|0)+1|0)==(c[(c[g>>2]|0)+396>>2]|0)?(c[(c[h>>2]|0)+8>>2]|0)==(c[
e>>2]|0):0)){c[h>>2]=c[(c[g>>2]|0)+404>>2];c[f>>2]=(c[h>>2]|0)+(c[(c
[g>>2]|0)+396>>2]<<4);while(1){if((c[h>>2]|0)>>>0<(c[f>>2]|
0)>>>0)b=(c[(c[h>>2]|0)+8>>2]|0)!=(c[e>>2]|0);else b=0;d=c[h>>2]|0;if(!b)
break;c[h>>2]=d+16}if((d|0)==(c[f>>2]|0))break}if(a[(c[h>>2]|0)+12>>0]|0){d=c[g>>
;2]|0;if((c[(c[g>>2]|0)+428>>2]|0)>=(c[(c[g>>2]|0)+432>>2]|0)){c[d+12>>2]=
130;i=k;return}else{c[j>>2]=(c[d+436>>2]|0)+(c[(c[g>>2]|0)+428>>2]<<4);c[c[j
x3e;>2]>>2]=c[(c[g>>2]|0)+352>>2];c[(c[j>>2]|0)+4>>2]=(c[(c[g>>
2]|0)+360>>2]|0)+1;c[(c[j>>2]|0)+8>>2]=1;c[(c[j>>2]|0)+12>>2]=c[(c[h>>
;2]|0)+4>>2];l=(c[g>>2]|0)+428|0;c[l>>2]=(c[l>>2]|0)+1;ag(c[g>>2]|0,c[c[h>
;>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0)|0;a[(c[g>>2]|0)+376>>0]=0;i=k;return}}}
while(0);c[(c[g>>2]|0)+12>>2]=134;i=k;return}function eg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=
i+32|0;j=k+16|0;l=k+12|0;g=k+8|0;h=k+4|0;f=k;c[j>>2]=b;c[l>>2]=e;c[h>>2]=c[(c[j>>2]|0)+404
>>2];c[f>>2]=(c[h>>2]|0)+(c[(c[j>>2]|0)+396>>2]<<4);c[g>>2
]=c[c[l>>2]>>2];while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>
x3e;0)break;if((c[(c[h>>2]|0)+8>>2]|0)==(c[g>>2]|0))break;c[h>>2]=(c[h>>2]|0)+
16}do if((c[h>>2]|0)==(c[f>>2]|0)){e=c[j>>2]|0;if((c[(c[j>>2]|0)+396>>2]|0)>
;>>0<(c[(c[j>>2]|0)+400>>2]|0)>>>0){l=e+396|0;c[l>>2]=(c[l>>
;2]|0)+1;break}c[e+12>>2]=140;i=k;return}while(0);e=c[j>>2]|0;if((c[g>>2]|0)>>>0>
;65535){c[e+12>>2]=140;i=k;return}c[c[h>>2]>>2]=c[e+352>>2];c[(c[h>>2]|0)+8>
;>2]=c[g>>2]&65535;c[(c[h>>2]|0)+4>>2]=(c[(c[j>>2]|0)+360>>2]|0)+1;a
[(c[h>>2]|0)+12>>0]=1;if((c[g>>2]|0)>>>0>(c[(c[j>>2]|0)+420>>
;2]|0)>>>0)c[(c[j>>2]|0)+420>>2]=c[g>>2]&65535;a:while(1){if((Yf(c[j>>
;2]|0)|0)&255|0){e=16;break}switch(d[(c[j>>2]|0)+368>>0]|0|0){case 44:case 137:{e=15;break a}case 45:{e
=16;break a}default:{}}}if((e|0)==15){c[(c[j>>2]|0)+12>>2]=137;i=k;return}else if((e|0)==16){i=k;return}}function
fg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+8|0;h=g+4|0;f=g;c[e>>2]=b;c[h>>2]=d;c[e>>
;2]=c[e>>2];c[h>>2]=c[h>>2];d=c[e>>2]|0;if((c[(c[e>>2]|0)+428>>2]|0)
x3c;=0){c[d+12>>2]=136;i=g;return}d=d+428|0;c[d>>2]=(c[d>>2]|0)+-1;c[f>>2]=(c[(c[e>
x3e;2]|0)+436>>2]|0)+(c[(c[e>>2]|0)+428>>2]<<4);d=(c[f>>2]|0)+8|0;c[d>>
;2]=(c[d>>2]|0)+-1;a[(c[e>>2]|0)+376>>0]=0;d=c[e>>2]|0;if((c[(c[f>>2]|0)+8>
;>2]|0)>0){h=d+428|0;c[h>>2]=(c[h>>2]|0)+1;c[(c[e>>2]|0)+360>>2]=c[(c[f>
x3e;2]|0)+12>>2];i=g;return}else{ag(d,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0
;i=g;return}}function gg(f,g){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;h=m+12|0;n=m+8|0;l=m+16|0;j=m+4|0;k=m;c[h>
;>2]=f;c[n>>2]=g;b[l>>1]=c[c[n>>2]>>2];g=c[h>>2]|0;if((e[l>>1]|
0)>>>0>=(e[(c[h>>2]|0)+36+8>>1]|0)>>>0){if(!(a[g+561>>0]|0)){i=
m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}if(d[g+368>>0]&1|0){c[j>>2]=Oa[c[(c[h
x3e;>2]|0)+572>>2]&63](c[h>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[l>>
;1]<<3)>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[l>>1]<<3)+4>>
;2]|0)|0;n=Oa[c[(c[h>>2]|0)+568>>2]&63](c[h>>2]|0,c[j>>2]|0,c[(c[h>>2]|0)+
244+20>>2]|0)|0;c[k>>2]=n-(c[j>>2]|0)}else c[k>>2]=0;_a[c[(c[h>>2]|0)+584>
;>2]&15](c[h>>2]|0,(c[h>>2]|0)+36|0,b[l>>1]|0,c[k>>2]|0);b[(c[h>>2]|
0)+284>>1]=b[l>>1]|0;b[(c[h>>2]|0)+284+2>>1]=b[l>>1]|0;i=m;return}function hg(
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;r=i;i=i+64|0;h=r+44|0;s=r+40|0;j=r+24|0;p=r+50|0;n=r+16|0;m=r+12
|0;o=r+8|0;l=r+4|0;q=r;k=r+48|0;c[h>>2]=f;c[s>>2]=g;c[h>>2]=c[h>>2];c[s>>2]=c[
s>>2];if(!(b[(c[h>>2]|0)+144+10>>1]|0)){i=r;return}if(d[(c[h>>2]|0)+368>>0]&
;1|0){a[p>>0]=8;c[j>>2]=c[(c[h>>2]|0)+144+12>>2];c[j+4>>2]=c[(c[h>>2
]|0)+144+16>>2];c[j+8>>2]=c[(c[h>>2]|0)+144+20>>2]}else{a[p>>0]=16;c[j>
x3e;2]=(c[(c[h>>2]|0)+144+12>>2]|0)+4;c[j+4>>2]=(c[(c[h>>2]|0)+144+16>>2]|0)+4
;c[j+8>>2]=(c[(c[h>>2]|0)+144+20>>2]|0)+4}c[j+12>>2]=e[(c[h>>2]|0)+144+8>
x3e;1];b[k>>1]=0;c[q>>2]=0;do{c[m>>2]=(e[(c[(c[h>>2]|0)+144+28>>2]|0)+(b[k>
;>1]<<1)>>1]|0)-(e[(c[h>>2]|0)+144+32>>1]|0);c[n>>2]=c[q>>2];if
((c[m>>2]|0)>>>0>=(e[(c[h>>2]|0)+144+8>>1]|0)>>>0)c[m>>
;2]=(e[(c[h>>2]|0)+144+8>>1]|0)-1;while(1){if((c[q>>2]|0)>>>0<=(c[m>>
;2]|0)>>>0)g=(d[(c[(c[h>>2]|0)+144+24>>2]|0)+(c[q>>2]|0)>>0]&d[p>
;>0]|0)==0;else g=0;f=c[q>>2]|0;if(!g)break;c[q>>2]=f+1}do if(f>>>0<=(c[m>>
;2]|0)>>>0){c[o>>2]=c[q>>2];c[l>>2]=c[q>>2];c[q>>2]=(c[q>
x3e;2]|0)+1;while(1){if((c[q>>2]|0)>>>0>(c[m>>2]|0)>>>0)break;if(d[(c[(c[
h>>2]|0)+144+24>>2]|0)+(c[q>>2]|0)>>0]&d[p>>0]|0){ig(j,(c[l>>2]|
0)+1|0,(c[q>>2]|0)-1|0,c[l>>2]|0,c[q>>2]|0);c[l>>2]=c[q>>2]}c[q>>2]=(
c[q>>2]|0)+1}if((c[l>>2]|0)==(c[o>>2]|0)){jg(j,c[n>>2]|0,c[m>>2]|0,c[l>
x3e;2]|0);break}ig(j,(c[l>>2]|0)+1&65535,c[m>>2]|0,c[l>>2]|0,c[o>>2]|0);if((c[o>
;>2]|0)>>>0>0)ig(j,c[n>>2]|0,(c[o>>2]|0)-1|0,c[l>>2]|0,c[o>>2]|
0)}while(0);b[k>>1]=(b[k>>1]|0)+1<<16>>16}while((b[k>>1]|0)<(b[(c[h>
x3e;2]|0)+144+10>>1]|0));i=r;return}function ig(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,x=0,y=0,z=0,A=0;A=i;i=i+80|0;h=A+64|0;j=A+60|0;k=A+56|0;l=A+52|0;m=A+48|0;p=A+44|0;s=A+40|0;t
=A+36|0;q=A+32|0;r=A+28|0;n=A+24|0;o=A+20|0;w=A+16|0;x=A+12|0;y=A+8|0;u=A+4|0;v=A+68|0;z=A;c[h>>2]=b;c[j>>2]=
d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;if((c[j>>2]|0)>>>0>(c[k>>2
]|0)>>>0){i=A;return}if((c[l>>2]|0)>>>0>=(c[(c[h>>2]|0)+12>>2]|
0)>>>0){i=A;return}if((c[m>>2]|0)>>>0>=(c[(c[h>>2]|0)+12>>2]|0)
x3e;>>0){i=A;return}c[s>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+(c[l>>2]<<3)
x3e;>2];c[t>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+(c[m>>2]<<3)>>2];if((
c[s>>2]|0)>(c[t>>2]|0)){c[w>>2]=c[s>>2];c[s>>2]=c[t>>2];c[t>
;>2]=c[w>>2];c[x>>2]=c[l>>2];c[l>>2]=c[m>>2];c[m>>2]=c[x>
x3e;2]}c[q>>2]=c[(c[c[h>>2]>>2]|0)+(c[l>>2]<<3)>>2];c[r>>2
]=c[(c[c[h>>2]>>2]|0)+(c[m>>2]<<3)>>2];c[n>>2]=(c[(c[(c[h>>
;2]|0)+4>>2]|0)+(c[l>>2]<<3)>>2]|0)-(c[q>>2]|0);c[o>>2]=(c[(c[(c[h
x3e;>2]|0)+4>>2]|0)+(c[m>>2]<<3)>>2]|0)-(c[r>>2]|0);if((c[s>>2]|
0)==(c[t>>2]|0)){c[p>>2]=c[j>>2];while(1){if((c[p>>2]|0)>>>0>(c[k>
;>2]|0)>>>0)break;c[y>>2]=c[(c[c[h>>2]>>2]|0)+(c[p>>2]<<3)
x3e;>2];if((c[y>>2]|0)<=(c[q>>2]|0))c[y>>2]=(c[y>>2]|0)+(c[n>>2]|0);
else c[y>>2]=(c[y>>2]|0)+(c[o>>2]|0);c[(c[(c[h>>2]|0)+4>>2]|0)+(c[p>>
;2]<<3)>>2]=c[y>>2];c[p>>2]=(c[p>>2]|0)+1}i=A;return}c[u>>2]=0;a[v
x3e;>0]=0;c[p>>2]=c[j>>2];while(1){if((c[p>>2]|0)>>>0>(c[k>>2]|
0)>>>0)break;c[z>>2]=c[(c[c[h>>2]>>2]|0)+(c[p>>2]<<3)>>
;2];do if((c[z>>2]|0)<=(c[q>>2]|0))c[z>>2]=(c[z>>2]|0)+(c[n>>2]|0);else{if
((c[z>>2]|0)>=(c[r>>2]|0)){c[z>>2]=(c[z>>2]|0)+(c[o>>2]|0);break}if(!(a[v
>>0]|0)){a[v>>0]=1;c[u>>2]=xb((c[r>>2]|0)+(c[o>>2]|0)-((c[q>>2]|0)+(
c[n>>2]|0))|0,65536,(c[t>>2]|0)-(c[s>>2]|0)|0)|0}y=(c[q>>2]|0)+(c[n>>2]|0)|0;c
[z>>2]=y+(Mb((c[(c[(c[h>>2]|0)+8>>2]|0)+(c[p>>2]<<3)>>2]|0)-(c[s>
;>2]|0)|0,c[u>>2]|0)|0)}while(0);c[(c[(c[h>>2]|0)+4>>2]|0)+(c[p>>2]<<3)
x3e;>2]=c[z>>2];c[p>>2]=(c[p>>2]|0)+1}i=A;return}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;m=i;i=i+32|0;f=m+20|0;g=m+16|0;h=m+12|0;j=m+8|0;l=m+4|0;k=m;c[f>>2]=a;c[g>>
2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=(c[(c[(c[f>>2]|0)+4>>2]|0)+(c[j>>2]
x3c;<3)>>2]|0)-(c[(c[c[f>>2]>>2]|0)+(c[j>>2]<<3)>>2]|0);if(!(c[
k>>2]|0)){i=m;return}c[l>>2]=c[g>>2];while(1){if((c[l>>2]|0)>>>0>=(c
[j>>2]|0)>>>0)break;a=(c[(c[f>>2]|0)+4>>2]|0)+(c[l>>2]<<3)|0;c[
a>>2]=(c[a>>2]|0)+(c[k>>2]|0);c[l>>2]=(c[l>>2]|0)+1}c[l>>2]=(c[j>
;>2]|0)+1;while(1){if((c[l>>2]|0)>>>0>(c[h>>2]|0)>>>0)break;a=(c[(c[
f>>2]|0)+4>>2]|0)+(c[l>>2]<<3)|0;c[a>>2]=(c[a>>2]|0)+(c[k>>
;2]|0);c[l>>2]=(c[l>>2]|0)+1}i=m;return}function kg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+64|
0;k=l+48|0;m=l+44|0;g=l+4|0;h=l;j=l+52|0;c[k>>2]=d;c[m>>2]=f;c[k>>2]=c[k>>2];c[m>
x3e;2]=c[m>>2];f=c[k>>2]|0;if((c[(c[k>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0)+284
+20>>2]|0)){c[f+12>>2]=134;i=l;return}if((lg(f,g,h,l+8|0,l+54|0)|0)<<24>>24){i=l;return}
while(1){d=c[k>>2]|0;if((c[(c[k>>2]|0)+284+20>>2]|0)<=0){f=10;break}f=d+28|0;c[f>>2
]=(c[f>>2]|0)+-1;b[j>>1]=c[(c[(c[k>>2]|0)+24>>2]|0)+(c[(c[k>>2]|0)+28>>
;2]<<2)>>2];f=c[k>>2]|0;if((e[j>>1]|0)>>>0>=(e[(c[k>>2]|0)+
108+8>>1]|0)>>>0){if(a[f+561>>0]|0){f=7;break}}else mg(f,b[j>>1]|0,c[g>>2
]|0,c[h>>2]|0,1);m=(c[k>>2]|0)+284+20|0;c[m>>2]=(c[m>>2]|0)+-1}if((f|0)==7){c[(c[k>
x3e;2]|0)+12>>2]=134;i=l;return}else if((f|0)==10){c[d+284+20>>2]=1;c[(c[k>>2]|0)+32>>2]=
c[(c[k>>2]|0)+28>>2];i=l;return}}function lg(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;u=i;i=i+64|0;l=u+62|0;m=u+56|0;n=u+52|0;o=u+48|0;p=u+44|0;q=u+40|0;t=u+4|0;s=u+60|0;r=u;c[m>>2]=
f;c[n>>2]=g;c[o>>2]=h;c[p>>2]=j;c[q>>2]=k;f=c[m>>2]|0;if(d[(c[m>>2]|
0)+368>>0]&1|0){g=t;f=f+36|0;k=g+36|0;do{c[g>>2]=c[f>>2];g=g+4|0;f=f+4|0}while((g|0)<(k|
0));b[s>>1]=b[(c[m>>2]|0)+284+2>>1]|0}else{g=t;f=f+72|0;k=g+36|0;do{c[g>>2]=c[f>>
;2];g=g+4|0;f=f+4|0}while((g|0)<(k|0));b[s>>1]=b[(c[m>>2]|0)+284+4>>1]|0}if((e[s>>1
]|0)>>>0<(e[t+8>>1]|0)>>>0){g=c[p>>2]|0;f=t;k=g+36|0;do{c[g>>2]=
c[f>>2];g=g+4|0;f=f+4|0}while((g|0)<(k|0));b[c[q>>2]>>1]=b[s>>1]|0;c[r>>2
]=Oa[c[(c[m>>2]|0)+572>>2]&63](c[m>>2]|0,(c[(c[t+16>>2]|0)+(e[s>>1]<
x3c;3)>>2]|0)-(c[(c[t+12>>2]|0)+(e[s>>1]<<3)>>2]|0)|0,(c[(c[t+16>>2]|
0)+(e[s>>1]<<3)+4>>2]|0)-(c[(c[t+12>>2]|0)+(e[s>>1]<<3)+4>>
;2]|0)|0)|0;t=xb(c[r>>2]|0,b[(c[m>>2]|0)+284+14>>1]<<16,c[(c[m>>2]|0)+564>
;>2]|0)|0;c[c[n>>2]>>2]=t;t=xb(c[r>>2]|0,b[(c[m>>2]|0)+284+14+2>>1]<
x3c;16,c[(c[m>>2]|0)+564>>2]|0)|0;c[c[o>>2]>>2]=t;a[l>>0]=0;t=a[l>>0
]|0;i=u;return t|0}if(a[(c[m>>2]|0)+561>>0]|0)c[(c[m>>2]|0)+12>>2]=134;b[c[q>>
2]>>1]=0;a[l>>0]=1;t=a[l>>0]|0;i=u;return t|0}function mg(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;q=i;i=i+16|0;l=q+8|0;m=q+12|0;n=q+4|0;o=q;p=q+14|0;c[l>>2]=f;b[m>>1]=g;c[n>
;>2]=h;c[o>>2]=j;a[p>>0]=k;if(b[(c[l>>2]|0)+284+14>>1]|0?(k=(c[(c[l>>2]|0
)+108+16>>2]|0)+(e[m>>1]<<3)|0,c[k>>2]=(c[k>>2]|0)+(c[n>>2]|0),a[p
x3e;>0]|0):0){k=(c[(c[l>>2]|0)+108+24>>2]|0)+(e[m>>1]|0)|0;a[k>>0]=d[k>>0
]|8}if(!(b[(c[l>>2]|0)+284+14+2>>1]|0)){i=q;return}k=(c[(c[l>>2]|0)+108+16>>2]|0)+(e[m
x3e;>1]<<3)+4|0;c[k>>2]=(c[k>>2]|0)+(c[o>>2]|0);if(!(a[p>>0]|0)){i=q;return
}k=(c[(c[l>>2]|0)+108+24>>2]|0)+(e[m>>1]|0)|0;a[k>>0]=d[k>>0]|16;i=q;return}function
ng(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;q=i;i=i+64|0;g=q+48|0;r=q+44|0;p=q+8|0;o=q+60|0;j=q+4|0;k=q
;h=q+58|0;l=q+56|0;n=q+54|0;m=q+52|0;c[g>>2]=d;c[r>>2]=f;b[h>>1]=c[c[r>>2]>>2];
f=c[g>>2]|0;if((b[h>>1]|0)>>>0>=(b[(c[g>>2]|0)+144+10>>1]|0)>
x3e;>0){if(!(a[f+561>>0]|0)){i=q;return}c[(c[g>>2]|0)+12>>2]=134;i=q;return}if((lg(f,j,k,p,o)|
0)<<24>>24){i=q;return}if(!(b[h>>1]|0))b[l>>1]=0;else b[l>>1]=(e[(c[(c[g>
x3e;2]|0)+144+28>>2]|0)+((b[h>>1]|0)-1<<1)>>1]|0)+1-(e[(c[g>>2]|0)+144+32>
;>1]|0);b[n>>1]=(e[(c[(c[g>>2]|0)+144+28>>2]|0)+(b[h>>1]<<1)>>1
]|0)-(e[(c[g>>2]|0)+144+32>>1]|0);do if((e[n>>1]|0)>>>0>=(e[(c[g>>2]|
0)+108+8>>1]|0)>>>0)if((e[(c[g>>2]|0)+108+8>>1]|0)>0){b[n>>1]=(e[(c[
g>>2]|0)+108+8>>1]|0)-1;break}else{b[n>>1]=0;break}while(0);b[m>>1]=b[l>>1]|0;
while(1){if((e[m>>1]|0)>(e[n>>1]|0))break;if(!((c[p+16>>2]|0)==(c[(c[g>>2]|0)+108+16
>>2]|0)?(e[o>>1]|0)==(e[m>>1]|0):0))mg(c[g>>2]|0,b[m>>1]|0,c[j>>2]|0
,c[k>>2]|0,1);b[m>>1]=(b[m>>1]|0)+1<<16>>16}i=q;return}function og(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;p=i;i=i+64|0;g=p+48|0;q=p+44|0;n=p+8|0;m=p+56|0;h=p+4|0;j=p;l=p+54|0;k=p+52|0;
c[g>>2]=d;c[q>>2]=f;f=c[g>>2]|0;if((c[c[q>>2]>>2]|0)>>>0>=
2){if(!(a[f+561>>0]|0)){i=p;return}c[(c[g>>2]|0)+12>>2]=134;i=p;return}if((lg(f,h,j,n,m)|0)<
x3c;24>>24){i=p;return}if((e[(c[g>>2]|0)+284+64>>1]|0)==0?(e[(c[g>>2]|0)+108+8>>
;1]|0)>0:0)b[l>>1]=(e[(c[g>>2]|0)+108+8>>1]|0)-1;else o=8;do if((o|0)==8){if((e[(c[g>>
;2]|0)+284+64>>1]|0)==1?(b[(c[g>>2]|0)+108+10>>1]|0)>0:0){b[l>>1]=b[(c[(c[g>
x3e;2]|0)+108+28>>2]|0)+((b[(c[g>>2]|0)+108+10>>1]|0)-1<<1)>>1]|0;if((e[l>
;>1]|0)>>>0<(e[(c[g>>2]|0)+108+8>>1]|0)>>>0)break;if(!(a[(c[g>
x3e;2]|0)+561>>0]|0)){i=p;return}c[(c[g>>2]|0)+12>>2]=134;i=p;return}b[l>>1]=0}while(0);
b[k>>1]=0;while(1){if((e[k>>1]|0)>(e[l>>1]|0))break;if(!((c[n+16>>2]|0)==(c[(c[g>
;>2]|0)+108+16>>2]|0)?(e[m>>1]|0)==(e[k>>1]|0):0))mg(c[g>>2]|0,b[k>>1]|0,
c[h>>2]|0,c[j>>2]|0,0);b[k>>1]=(b[k>>1]|0)+1<<16>>16}i=p;return}function
pg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;l=m+12|0;g=m+8|0;h=m+4|0;j=m;k=m+16|0;c[l>>2]=d;c[g>
;>2]=f;if((c[(c[l>>2]|0)+16>>2]|0)<((c[(c[l>>2]|0)+284+20>>2]|0)+1|0)){c[(c[l
x3e;>2]|0)+12>>2]=134;i=m;return}c[h>>2]=qg(c[c[g>>2]>>2]|0,b[(c[l>>2]|0)+
284+14>>1]|0)|0;c[j>>2]=qg(c[c[g>>2]>>2]|0,b[(c[l>>2]|0)+284+14+2>>1
]|0)|0;while(1){f=c[l>>2]|0;if((c[(c[l>>2]|0)+284+20>>2]|0)<=0){g=10;break}g=f+28|0;c[g>
x3e;2]=(c[g>>2]|0)+-1;b[k>>1]=c[(c[(c[l>>2]|0)+24>>2]|0)+(c[(c[l>>2]|0)+28>
;>2]<<2)>>2];g=c[l>>2]|0;if((e[k>>1]|0)>>>0>=(e[(c[l>>
;2]|0)+108+8>>1]|0)>>>0){if(a[g+561>>0]|0){g=7;break}}else mg(g,b[k>>1]|0,c[h>
x3e;2]|0,c[j>>2]|0,1);d=(c[l>>2]|0)+284+20|0;c[d>>2]=(c[d>>2]|0)+-1}if((g|0)==7){c[(c[l
x3e;>2]|0)+12>>2]=134;i=m;return}else if((g|0)==10){c[f+284+20>>2]=1;c[(c[l>>2]|0)+32>
x3e;2]=c[(c[l>>2]|0)+28>>2];i=m;return}}function qg(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
;m=i;i=i+32|0;d=m+28|0;e=m+24|0;l=m+20|0;f=m+16|0;g=m+12|0;k=m+8|0;j=m+4|0;h=m;c[d>>2]=a;c[e>>2]=b;c[l>
x3e;2]=c[d>>2]^c[e>>2];if((c[d>>2]|0)<0)c[d>>2]=0-(c[d>>2]|0);if((c[e>
;>2]|0)<0)c[e>>2]=0-(c[e>>2]|0);c[f>>2]=c[d>>2]>>16&65535;c[g
x3e;>2]=c[d>>2]&65535;c[j>>2]=_(c[g>>2]|0,c[e>>2]|0)|0;c[k>>2]=_(c[f
>>2]|0,c[e>>2]|0)|0;c[h>>2]=(c[k>>2]|0)>>>16;c[k>>2]=(c[k>
x3e;2]<<16)+8192;c[j>>2]=(c[j>>2]|0)+(c[k>>2]|0);if((c[j>>2]|0)>>>
;0>=(c[k>>2]|0)>>>0){b=c[j>>2]|0;b=b>>>14;j=c[h>>2]|0;j=j<
x3c;18;j=b|j;c[k>>2]=j;j=c[l>>2]|0;j=(j|0)>=0;k=c[k>>2]|0;l=0-k|0;l=j?k:l;i=m;return l|0}c[h
x3e;>2]=(c[h>>2]|0)+1;b=c[j>>2]|0;b=b>>>14;j=c[h>>2]|0;j=j<<18;j=b|j
;c[k>>2]=j;j=c[l>>2]|0;j=(j|0)>=0;k=c[k>>2]|0;l=0-k|0;l=j?k:l;i=m;return l|0}function rg(b,d){
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,q=0,r=0,s=0;s=i;i=i+48|0;r=s+40|0;g=s+36|0;m=s+32|0;k=s+28|0;o=s+24|0;h=
s+20|0;q=s+16|0;p=s+12|0;n=s+8|0;j=s+4|0;l=s;c[r>>2]=b;c[g>>2]=d;c[r>>2]=c[r>>2];c[g>
;>2]=c[g>>2];d=c[r>>2]|0;if((c[(c[r>>2]|0)+16>>2]|0)<(c[(c[r>>2]|0)+
284+20>>2]|0)){c[d+12>>2]=134;i=s;return}if((e[d+284+60>>1]|0)!=0?(e[(c[r>>2]|0)+284+62
x3e;>1]|0)!=0:0)d=(e[(c[r>>2]|0)+284+64>>1]|0)==0;else d=1;c[q>>2]=d&1;if((e[(c[r>
x3e;2]|0)+284+2>>1]|0)>>>0>=(e[(c[r>>2]|0)+36+8>>1]|0)>>>0){if(!(
a[(c[r>>2]|0)+561>>0]|0)){i=s;return}c[(c[r>>2]|0)+12>>2]=134;i=s;return}d=e[(c[r>
x3e;2]|0)+284+2>>1]|0;b=(c[r>>2]|0)+36|0;if(c[q>>2]|0)c[o>>2]=(c[b+12>>2]|0)+(
d<<3);else c[o>>2]=(c[b+20>>2]|0)+(d<<3);c[h>>2]=(c[(c[r>>2]|0)+36+16
>>2]|0)+(e[(c[r>>2]|0)+284+2>>1]<<3);if((e[(c[r>>2]|0)+284+2>>1]|0)
x3e;>>0<(e[(c[r>>2]|0)+36+8>>1]|0)>>>0?(e[(c[r>>2]|0)+284+4>>
;1]|0)>>>0<(e[(c[r>>2]|0)+72+8>>1]|0)>>>0:0){d=c[(c[r>>2]|0)+576
>>2]|0;b=c[r>>2]|0;f=e[(c[r>>2]|0)+284+4>>1]|0;g=(c[r>>2]|0)+72|0;if(c[q>
x3e;2]|0)c[m>>2]=Oa[d&63](b,(c[(c[g+12>>2]|0)+(f<<3)>>2]|0)-(c[c[o>>2]>
;>2]|0)|0,(c[(c[(c[r>>2]|0)+72+12>>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)+4
x3e;>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;else c[m>>2]=Oa[d&63](b,(c[(c[g+20>>2]|
0)+(f<<3)>>2]|0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+72+20>>2]|0)+(
e[(c[r>>2]|0)+284+4>>1]<<3)+4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;c[
k>>2]=Oa[c[(c[r>>2]|0)+572>>2]&63](c[r>>2]|0,(c[(c[(c[r>>2]|0)+72+16>
;>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)>>2]|0)-(c[c[h>>2]>>2]|0)|0
,(c[(c[(c[r>>2]|0)+72+16>>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)+4>>2]|0
)-(c[(c[h>>2]|0)+4>>2]|0)|0)|0}else{c[m>>2]=0;c[k>>2]=0}while(1){b=c[r>>2]|0;if
((c[(c[r>>2]|0)+284+20>>2]|0)<=0){d=34;break}f=b+28|0;g=(c[f>>2]|0)+-1|0;c[f>>2]=g;
c[p>>2]=c[(c[(c[r>>2]|0)+24>>2]|0)+(g<<2)>>2];if((c[p>>2]|0)>
x3e;>0>=(e[(c[r>>2]|0)+108+8>>1]|0)>>>0){if(a[(c[r>>2]|0)+561>>
0]|0){d=22;break}}else{d=c[(c[r>>2]|0)+576>>2]|0;b=c[r>>2]|0;f=c[p>>2]|0;g=(c[r>>
;2]|0)+108|0;if(c[q>>2]|0)c[n>>2]=Oa[d&63](b,(c[(c[g+12>>2]|0)+(f<<3)>>2]|
0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+12>>2]|0)+(c[p>>2]<<3)+
4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;else c[n>>2]=Oa[d&63](b,(c[(c[g+20>>
;2]|0)+(f<<3)>>2]|0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+20>>2
]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;c[j>>2]=Oa[c
[(c[r>>2]|0)+572>>2]&63](c[r>>2]|0,(c[(c[(c[r>>2]|0)+108+16>>2]|0)+(c[p
x3e;>2]<<3)>>2]|0)-(c[c[h>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+16>>
;2]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0)|0)|0;if(c[n>>2]|
0){if(c[m>>2]|0)d=xb(c[n>>2]|0,c[k>>2]|0,c[m>>2]|0)|0;else d=c[j>>2]|0;c[l>
;>2]=d}else c[l>>2]=0;_a[c[(c[r>>2]|0)+584>>2]&15](c[r>>2]|0,(c[r>>2
]|0)+108|0,c[p>>2]&65535,(c[l>>2]|0)-(c[j>>2]|0)|0)}g=(c[r>>2]|0)+284+20|0;c[g>
;>2]=(c[g>>2]|0)+-1}if((d|0)==22){c[(c[r>>2]|0)+12>>2]=134;i=s;return}else if((d|0)==34){c[b+
284+20>>2]=1;c[(c[r>>2]|0)+32>>2]=c[(c[r>>2]|0)+28>>2];i=s;return}}function sg
(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+8|0;j=m+4|0;l=m+12|0;k=m;c[h>>2]=f;c[j>>2]=g;b[l
x3e;>1]=c[c[j>>2]>>2];if((e[l>>1]|0)>>>0<(e[(c[h>>2]|0)+72+8>
;>1]|0)>>>0?(e[(c[h>>2]|0)+284>>1]|0)>>>0<(e[(c[h>>2]|0)+36
+8>>1]|0)>>>0:0){if(!(e[(c[h>>2]|0)+284+62>>1]|0)){f=(c[(c[h>>2]|0)+72+12
>>2]|0)+(e[l>>1]<<3)|0;g=(c[(c[h>>2]|0)+36+12>>2]|0)+(e[(c[h>>2]|0)+
284>>1]<<3)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];_a[c[(c[h>>
;2]|0)+588>>2]&15](c[h>>2]|0,(c[h>>2]|0)+72|0,b[l>>1]|0,c[(c[j>>2]|0)+4
x3e;>2]|0);f=(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)|0;g=(c[(c[h>>2]|0)+
72+12>>2]|0)+(e[l>>1]<<3)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>
;2]}c[k>>2]=Oa[c[(c[h>>2]|0)+572>>2]&63](c[h>>2]|0,(c[(c[(c[h>>2]|0)+72+16
>>2]|0)+(e[l>>1]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[(c[h
x3e;>2]|0)+284>>1]<<3)>>2]|0)|0,(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>
x3e;1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[(c[h>>2]|0)+284>>
;1]<<3)+4>>2]|0)|0)|0;_a[c[(c[h>>2]|0)+584>>2]&15](c[h>>2]|0,(c[h>
x3e;2]|0)+72|0,b[l>>1]|0,(c[(c[j>>2]|0)+4>>2]|0)-(c[k>>2]|0)|0);b[(c[h>>2]|0)+
284+2>>1]=b[(c[h>>2]|0)+284>>1]|0;b[(c[h>>2]|0)+284+4>>1]=b[l>>1]|0;
if(!(d[(c[h>>2]|0)+368>>0]&1)){i=m;return}b[(c[h>>2]|0)+284>>1]=b[l>>1]|0
;i=m;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return
}function tg(d,f){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+8|0;l=k+4|0;h=k+12|0;g=k;c[j>>2]=d;c[l>>
;2]=f;c[j>>2]=c[j>>2];c[l>>2]=c[l>>2];if((c[(c[j>>2]|0)+16>>2]|0)>
;=(c[(c[j>>2]|0)+284+20>>2]|0)?(e[(c[j>>2]|0)+284>>1]|0)>>>0<(e[(c[j
>>2]|0)+36+8>>1]|0)>>>0:0){while(1){d=c[j>>2]|0;if((c[(c[j>>2]|0)+284+20
x3e;>2]|0)<=0){f=11;break}f=d+28|0;c[f>>2]=(c[f>>2]|0)+-1;b[h>>1]=c[(c[(c[j>>2
]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<2)>>2];f=c[j>>2]|0;if((e[h>
;>1]|0)>>>0>=(e[(c[j>>2]|0)+72+8>>1]|0)>>>0){if(a[f+561>>0
]|0){f=8;break}}else{c[g>>2]=Oa[c[f+572>>2]&63](c[j>>2]|0,(c[(c[(c[j>>2]|0)+72+16
x3e;>2]|0)+(e[h>>1]<<3)>>2]|0)-(c[(c[(c[j>>2]|0)+36+16>>2]|0)+(e[(c[j>
;>2]|0)+284>>1]<<3)>>2]|0)|0,(c[(c[(c[j>>2]|0)+72+16>>2]|0)+(e[h>>
;1]<<3)+4>>2]|0)-(c[(c[(c[j>>2]|0)+36+16>>2]|0)+(e[(c[j>>2]|0)+284>>
1]<<3)+4>>2]|0)|0)|0;_a[c[(c[j>>2]|0)+584>>2]&15](c[j>>2]|0,(c[j>>
;2]|0)+72|0,b[h>>1]|0,0-(c[g>>2]|0)|0)}l=(c[j>>2]|0)+284+20|0;c[l>>2]=(c[l>>2]|
0)+-1}if((f|0)==8){c[(c[j>>2]|0)+12>>2]=134;i=k;return}else if((f|0)==11){c[d+284+20>>2]=1;c[(c[j
x3e;>2]|0)+32>>2]=c[(c[j>>2]|0)+28>>2];i=k;return}}if(!(a[(c[j>>2]|0)+561>>
;0]|0)){i=k;return}c[(c[j>>2]|0)+12>>2]=134;i=k;return}function ug(f,g){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;h=n+16|0;o=n+12|0;j=n+8|0;m=n+20|0;k=n+4|0;l=n;c[h>>2]=f;c[o>>2]=g;c[j>>2]=c[(
c[o>>2]|0)+4>>2];b[m>>1]=c[c[o>>2]>>2];if((e[m>>1]|0)>>>
;0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0?(c[j>>2]|0)>>>0<(c[(c[h
x3e;>2]|0)+380>>2]|0)>>>0:0){c[k>>2]=Ya[c[(c[h>>2]|0)+592>>2]&127
](c[h>>2]|0,c[j>>2]|0)|0;if(!(e[(c[h>>2]|0)+284+60>>1]|0)){o=qg(c[k>>2]|0,b[(c
[h>>2]|0)+284+14>>1]|0)|0;c[(c[(c[h>>2]|0)+36+12>>2]|0)+(e[m>>1]<<3)
x3e;>2]=o;o=qg(c[k>>2]|0,b[(c[h>>2]|0)+284+14+2>>1]|0)|0;c[(c[(c[h>>2]|0)+36+12>
;>2]|0)+(e[m>>1]<<3)+4>>2]=o;o=(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>
;1]<<3)|0;f=(c[(c[h>>2]|0)+36+12>>2]|0)+(e[m>>1]<<3)|0;c[o>>2]=c[f
x3e;>2];c[o+4>>2]=c[f+4>>2]}c[l>>2]=Oa[c[(c[h>>2]|0)+572>>2]&63](c[h
>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>>2]|0,c[(c[(c[h>
;>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)|0;if(d[(c[h>>2]|0)+368>
x3e;0]&1|0){o=(c[k>>2]|0)-(c[l>>2]|0)|0;if(((((c[k>>2]|0)-(c[l>>2]|0)|0)<0?0-o
|0:o)|0)>(c[(c[h>>2]|0)+284+36>>2]|0))c[k>>2]=c[l>>2];c[k>>2]=Oa[c[(c[h
x3e;>2]|0)+568>>2]&63](c[h>>2]|0,c[k>>2]|0,c[(c[h>>2]|0)+244+20>>2]|
0)|0}_a[c[(c[h>>2]|0)+584>>2]&15](c[h>>2]|0,(c[h>>2]|0)+36|0,b[m>>1]|0,(c
[k>>2]|0)-(c[l>>2]|0)|0);b[(c[h>>2]|0)+284>>1]=b[m>>1]|0;b[(c[h>>2]|
0)+284+2>>1]=b[m>>1]|0;i=n;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=n;return}c[(c[h>
x3e;2]|0)+12>>2]=134;i=n;return}function vg(a,f){a=a|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+4|0;h=l;k=l+10|0
;j=l+8|0;c[g>>2]=a;c[h>>2]=f;b[k>>1]=d[(c[(c[g>>2]|0)+356>>2]|0)+((c[(c[g>
;>2]|0)+360>>2]|0)+1)>>0]|0;if((e[k>>1]|0)>>>0>=((c[(c[g>>2]|0)+
20>>2]|0)+1-(c[(c[g>>2]|0)+16>>2]|0)|0)>>>0){c[(c[g>>2]|0)+12>>
2]=130;i=l;return}b[j>>1]=1;while(1){if((e[j>>1]|0|0)>(e[k>>1]|0|0))break;c[(c[h>>2
]|0)+((e[j>>1]|0)-1<<2)>>2]=d[(c[(c[g>>2]|0)+356>>2]|0)+((c[(c[g>>2]|
0)+360>>2]|0)+(e[j>>1]|0)+1)>>0];b[j>>1]=(b[j>>1]|0)+1<<16>>
;16}a=(c[g>>2]|0)+32|0;c[a>>2]=(c[a>>2]|0)+(e[k>>1]|0);i=l;return}function wg(f,g){f=f|0
;g=g|0;var h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+4|0;j=m;l=m+10|0;k=m+8|0;c[h>>2]=f;c[j>>2]=g;b[l>>
1]=d[(c[(c[h>>2]|0)+356>>2]|0)+((c[(c[h>>2]|0)+360>>2]|0)+1)>>0]|0;g=c[h>
x3e;2]|0;if((e[l>>1]|0)>>>0>=((c[(c[h>>2]|0)+20>>2]|0)+1-(c[(c[h>>2]|
0)+16>>2]|0)|0)>>>0){c[g+12>>2]=130;i=m;return}f=g+360|0;c[f>>2]=(c[f>>2]|
0)+2;b[k>>1]=0;while(1){g=c[h>>2]|0;if((e[k>>1]|0|0)>=(e[l>>1]|0|0))break;f=(xg(g)|
0)<<16>>16;c[(c[j>>2]|0)+((e[k>>1]|0)<<2)>>2]=f;b[k>>1]=(b
[k>>1]|0)+1<<16>>16}a[g+376>>0]=0;k=(c[h>>2]|0)+32|0;c[k>>2]=(c[k>
;>2]|0)+(e[l>>1]|0);i=m;return}function xg(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;a=(c[b>
x3e;2]|0)+360|0;c[a>>2]=(c[a>>2]|0)+2;i=e;return ((d[(c[(c[b>>2]|0)+356>>2]|0)+((c[(c[b
x3e;>2]|0)+360>>2]|0)-2)>>0]|0)<<8)+(d[(c[(c[b>>2]|0)+356>>2]|0)+((c[(c[b
>>2]|0)+360>>2]|0)-1)>>0]|0)&65535|0}function yg(b,f){b=b|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i
;i=i+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=b;c[h>>2]=f;c[j>>2]=c[c[h>>2]>>
2];f=c[g>>2]|0;do if((c[j>>2]|0)>>>0<(e[(c[g>>2]|0)+108+8>>1]|0)>
;>>0){b=c[g>>2]|0;if(d[f+368>>0]&1|0){c[k>>2]=Oa[c[b+576>>2]&63](c[g
>>2]|0,c[(c[(c[g>>2]|0)+108+12>>2]|0)+(c[j>>2]<<3)>>2]|0,c[(c[(c[g
x3e;>2]|0)+108+12>>2]|0)+(c[j>>2]<<3)+4>>2]|0)|0;break}else{c[k>>2]=Oa[c[
b+572>>2]&63](c[g>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(c[j>>2]<<
;3)>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(c[j>>2]<<3)+4>>2]|0)|0;break
}}else{if(!(a[f+561>>0]|0)){c[k>>2]=0;break}c[(c[g>>2]|0)+12>>2]=134;i=l;return}while(0);
c[c[h>>2]>>2]=c[k>>2];i=l;return}function zg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0
;g=l+8|0;h=l+4|0;j=l;k=l+12|0;c[g>>2]=d;c[h>>2]=f;b[k>>1]=c[c[h>>2]>>2];f=c[g
x3e;>2]|0;if((e[k>>1]|0)>>>0>=(e[(c[g>>2]|0)+108+8>>1]|0)>>>
;0){if(!(a[f+561>>0]|0)){i=l;return}c[(c[g>>2]|0)+12>>2]=134;i=l;return}else{c[j>>2]=Oa[
c[f+572>>2]&63](c[g>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(e[k>>1]<
x3c;3)>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)|0;
_a[c[(c[g>>2]|0)+584>>2]&15](c[g>>2]|0,(c[g>>2]|0)+108|0,b[k>>1]|0,(c[(c[
h>>2]|0)+4>>2]|0)-(c[j>>2]|0)|0);if(e[(c[g>>2]|0)+284+64>>1]|0){i=l;return}j=(
c[(c[g>>2]|0)+108+12>>2]|0)+(e[k>>1]<<3)|0;k=(c[(c[g>>2]|0)+108+16>>
2]|0)+(e[k>>1]<<3)|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];i=l;return}}
function Ag(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;r=i;i=i+32|0;h=r+24|0;j=r+20|0;l=r+30|0;m=r+28|0;k=r+16
|0;o=r+12|0;p=r+8|0;n=r;c[h>>2]=f;c[j>>2]=g;b[l>>1]=c[(c[j>>2]|0)+4>>2];b[m>
;>1]=c[c[j>>2]>>2];do if((e[m>>1]|0)>>>0<(e[(c[h>>2]|0)+36+8>
;>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h>>2]|0)+72+8>>1]|0)>
;>>0:0){g=c[h>>2]|0;if(d[(c[h>>2]|0)+368>>0]&1|0){c[k>>2]=Oa[c[g+572>
;>2]&63](c[h>>2]|0,(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>
x3e;2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)>>2]|0)|0,(c[(c[(c[h>
;>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>
x3e;2]|0)+(e[l>>1]<<3)+4>>2]|0)|0)|0;break}c[o>>2]=(c[g+36+20>>2]|0)+(e[m>
;>1]<<3);c[p>>2]=(c[(c[h>>2]|0)+72+20>>2]|0)+(e[l>>1]<<3);if((c
[(c[h>>2]|0)+216+4>>2]|0)==(c[(c[h>>2]|0)+216+8>>2]|0)){c[k>>2]=Oa[c[(c[h>
;>2]|0)+576>>2]&63](c[h>>2]|0,(c[c[o>>2]>>2]|0)-(c[c[p>>2]>>
;2]|0)|0,(c[(c[o>>2]|0)+4>>2]|0)-(c[(c[p>>2]|0)+4>>2]|0)|0)|0;c[k>>2]=Mb(c[k
x3e;>2]|0,c[(c[h>>2]|0)+216+4>>2]|0)|0;break}else{c[n>>2]=Mb((c[c[o>>2]>>
2]|0)-(c[c[p>>2]>>2]|0)|0,c[(c[h>>2]|0)+216+4>>2]|0)|0;c[n+4>>2]=Mb((c[(c[o>
;>2]|0)+4>>2]|0)-(c[(c[p>>2]|0)+4>>2]|0)|0,c[(c[h>>2]|0)+216+8>>2]|0)|0;c
[k>>2]=Oa[c[(c[h>>2]|0)+576>>2]&63](c[h>>2]|0,c[n>>2]|0,c[n+4>>
2]|0)|0;break}}else q=3;while(0);do if((q|0)==3){if(!(a[(c[h>>2]|0)+561>>0]|0)){c[k>>2]=0;break}c[(
c[h>>2]|0)+12>>2]=134;i=r;return}while(0);c[c[j>>2]>>2]=c[k>>2];i=r;return}function
Bg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=e[(c[d>>2]|0)+244+8>>1]|0;a=Mb(a,of(c[d>
;>2]|0)|0)|0;i=b;return a|0}function Cg(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+8|0;k=j+4|0;h=j;g=j+12|0;
c[f>>2]=b;c[k>>2]=e;if(c[c[k>>2]>>2]|0){i=j;return}c[h>>2]=1;a[g>>0]=
0;while(1){if(((Yf(c[f>>2]|0)|0)&255|0)==1){f=9;break}switch(d[(c[f>>2]|0)+368>>0]|0|0){case
88:{c[h>>2]=(c[h>>2]|0)+1;break}case 27:{a[g>>0]=(c[h>>2]|0)==1;break}case 89:{c[h>
x3e;2]=(c[h>>2]|0)+-1;a[g>>0]=(c[h>>2]|0)==0;break}default:{}}if(d[g>>0]|0|0){f=9;break}}
if((f|0)==9){i=j;return}}function Dg(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;p=i;i=i+32|0;o=p+20|0;h=p+16|0;m=p+12|
0;n=p+8|0;j=p+24|0;l=p+4|0;k=p;c[o>>2]=f;c[h>>2]=g;c[n>>2]=c[c[h>>2]>>2];c[m
x3e;>2]=1;while(1){h=c[(c[o>>2]|0)+28>>2]|0;if((c[m>>2]|0)>>>0>(c[n>
x3e;2]|0)>>>0){g=16;break}f=c[o>>2]|0;if((h|0)<2){g=4;break}h=f+28|0;c[h>>2]=(c[h>
x3e;2]|0)-2;b[j>>1]=c[(c[(c[o>>2]|0)+24>>2]|0)+((c[(c[o>>2]|0)+28>>2]|0)+1<
;<2)>>2];c[k>>2]=c[(c[(c[o>>2]|0)+24>>2]|0)+(c[(c[o>>2]|0)+28>>
2]<<2)>>2];if((e[j>>1]|0)>>>0>=(e[(c[o>>2]|0)+36+8>>1]|0)
x3e;>>0){if(a[(c[o>>2]|0)+561>>0]|0)c[(c[o>>2]|0)+12>>2]=134}else{c[l>>
;2]=(c[k>>2]&240)>>>4;switch(d[(c[o>>2]|0)+368>>0]|0){case 114:{c[l>>
;2]=(c[l>>2]|0)+32;break}case 113:{c[l>>2]=(c[l>>2]|0)+16;break}default:{}}c[l>>2]=(c[l
x3e;>2]|0)+(b[(c[o>>2]|0)+284+48>>1]|0);h=Bg(c[o>>2]|0)|0;if((h|0)==(c[l>>2]|0)){c[
k>>2]=(c[k>>2]&15)-8;if((c[k>>2]|0)>=0)c[k>>2]=(c[k>>2]|0)+1;c[k>
;>2]=(c[k>>2]<<6|0)/(1<<b[(c[o>>2]|0)+284+50>>1]|0)|0;_a[c[(c[o>>
;2]|0)+584>>2]&15](c[o>>2]|0,(c[o>>2]|0)+36|0,b[j>>1]|0,c[k>>2]|0)}}c[m
x3e;>2]=(c[m>>2]|0)+1}if((g|0)==4){c[f+12>>2]=129;i=p;return}else if((g|0)==16){c[(c[o>>2]|0)+
32>>2]=h;i=p;return}}function Eg(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;o=i;i=i+32|0;n=o+24|0;g=o+20|0;m
=o+16|0;l=o+12|0;h=o+8|0;k=o+4|0;j=o;c[n>>2]=e;c[g>>2]=f;c[m>>2]=c[c[g>>2]>>2];
c[l>>2]=1;while(1){g=c[(c[n>>2]|0)+28>>2]|0;if((c[l>>2]|0)>>>0>(c[m
x3e;>2]|0)>>>0){f=16;break}e=c[n>>2]|0;if((g|0)<2){f=4;break}g=e+28|0;c[g>>2]=(c[g
x3e;>2]|0)-2;c[h>>2]=c[(c[(c[n>>2]|0)+24>>2]|0)+((c[(c[n>>2]|0)+28>>2]|0)+
1<<2)>>2];c[j>>2]=c[(c[(c[n>>2]|0)+24>>2]|0)+(c[(c[n>>2]|0)+28>
x3e;2]<<2)>>2];if((c[h>>2]|0)>>>0>=(c[(c[n>>2]|0)+380>>2]|
0)>>>0){if(a[(c[n>>2]|0)+561>>0]|0){f=7;break}}else{c[k>>2]=(c[j>>2]&
;240)>>>4;switch(d[(c[n>>2]|0)+368>>0]|0){case 117:{c[k>>2]=(c[k>>2]|0)+32
;break}case 116:{c[k>>2]=(c[k>>2]|0)+16;break}default:{}}c[k>>2]=(c[k>>2]|0)+(b[(c[n>
;>2]|0)+284+48>>1]|0);g=Bg(c[n>>2]|0)|0;if((g|0)==(c[k>>2]|0)){c[j>>2]=(c[j>
x3e;2]&15)-8;if((c[j>>2]|0)>=0)c[j>>2]=(c[j>>2]|0)+1;c[j>>2]=(c[j>>2
]<<6|0)/(1<<b[(c[n>>2]|0)+284+50>>1]|0)|0;Ua[c[(c[n>>2]|0)+600>>2]
x26;31](c[n>>2]|0,c[h>>2]|0,c[j>>2]|0)}}c[l>>2]=(c[l>>2]|0)+1}if((f|0)==4){c[e
+12>>2]=129;i=o;return}else if((f|0)==7){c[(c[n>>2]|0)+12>>2]=134;i=o;return}else if((f|0)==16){c[(
c[n>>2]|0)+32>>2]=g;i=o;return}}function Fg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|
0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;switch(c[g>>2]&192|0){case 0:{c[(c[e>
;>2]|0)+476>>2]=(c[f>>2]|0)/2|0;break}case 64:{c[(c[e>>2]|0)+476>>2]=c[f>>
;2];break}case 128:{c[(c[e>>2]|0)+476>>2]=c[f>>2]<<1;break}case 192:{c[(c[e>>2
]|0)+476>>2]=c[f>>2];break}default:{}}switch(c[g>>2]&48|0){case 0:{c[(c[e>>2]|0)+480
>>2]=0;break}case 16:{c[(c[e>>2]|0)+480>>2]=(c[(c[e>>2]|0)+476>>2]|0)/4|0;break
}case 32:{c[(c[e>>2]|0)+480>>2]=(c[(c[e>>2]|0)+476>>2]|0)/2|0;break}case 48:{c[(c[e>
;>2]|0)+480>>2]=((c[(c[e>>2]|0)+476>>2]|0)*3|0)/4|0;break}default:{}}if(!(c[g>>2]
x26;15)){c[(c[e>>2]|0)+484>>2]=(c[(c[e>>2]|0)+476>>2]|0)-1;d=c[e>>2]|0;d=d+476
|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+480|0;a=c[d>>2]|0;a=(a|0)/256|0;c
[d>>2]=a;d=c[e>>2]|0;d=d+484|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;i=h;return}else{d=(_((
c[g>>2]&15)-4|0,c[(c[e>>2]|0)+476>>2]|0)|0)/8|0;c[(c[e>>2]|0)+484>>2]=d;d
=c[e>>2]|0;d=d+476|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+480|0;a=c[d>
;>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+484|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>
;2]=a;i=h;return}}function Gg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0;k=i;i=i+16|0;j=k+4|0;l=k;h=k+8|0;c[j>>2]=f;c[l>
;>2]=g;c[j>>2]=c[j>>2];c[l>>2]=c[l>>2];if((c[(c[j>>2]|0)+16>>2]|
0)<(c[(c[j>>2]|0)+284+20>>2]|0)){c[(c[j>>2]|0)+12>>2]=129;i=k;return}while(1){f=c[j
>>2]|0;if((c[(c[j>>2]|0)+284+20>>2]|0)<=0){g=9;break}l=f+28|0;c[l>>2]=(c[l>>
;2]|0)+-1;b[h>>1]=c[(c[(c[j>>2]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<
2)>>2];if((e[h>>1]|0)>>>0>=(e[(c[j>>2]|0)+144+8>>1]|0)>>
x3e;0){if(a[(c[j>>2]|0)+561>>0]|0){g=6;break}}else{l=(c[(c[j>>2]|0)+144+24>>2]|0)+(e[h
x3e;>1]|0)|0;a[l>>0]=d[l>>0]^1}l=(c[j>>2]|0)+284+20|0;c[l>>2]=(c[l>>2]|0)+-
1}if((g|0)==6){c[(c[j>>2]|0)+12>>2]=134;i=k;return}else if((g|0)==9){c[f+284+20>>2]=1;c[(c[j>
x3e;2]|0)+32>>2]=c[(c[j>>2]|0)+28>>2];i=k;return}}function Hg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0
,m=0,n=0;m=i;i=i+16|0;h=m+4|0;n=m;j=m+12|0;k=m+10|0;l=m+8|0;c[h>>2]=f;c[n>>2]=g;b[k>>1]=c[(c[n>
;>2]|0)+4>>2];b[l>>1]=c[c[n>>2]>>2];if((e[k>>1]|0)>>>0<
;(e[(c[h>>2]|0)+144+8>>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h>
x3e;2]|0)+144+8>>1]|0)>>>0:0){b[j>>1]=b[l>>1]|0;while(1){if((e[j>>1]|0)
x3e;(e[k>>1]|0))break;n=(c[(c[h>>2]|0)+144+24>>2]|0)+(e[j>>1]|0)|0;a[n>>0]=d[n
>>0]|1;b[j>>1]=(b[j>>1]|0)+1<<16>>16}i=m;return}if(!(a[(c[h>>2]|0)+561
>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}function Ig(f,g){f=f|0;g=g|0;var h=0,j=0,k
=0,l=0,m=0,n=0;m=i;i=i+16|0;h=m+4|0;n=m;j=m+12|0;k=m+10|0;l=m+8|0;c[h>>2]=f;c[n>>2]=g;b[k>>1]=c[(c
[n>>2]|0)+4>>2];b[l>>1]=c[c[n>>2]>>2];if((e[k>>1]|0)>>>
;0<(e[(c[h>>2]|0)+144+8>>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h
>>2]|0)+144+8>>1]|0)>>>0:0){b[j>>1]=b[l>>1]|0;while(1){if((e[j>>
;1]|0)>(e[k>>1]|0))break;n=(c[(c[h>>2]|0)+144+24>>2]|0)+(e[j>>1]|0)|0;a[n>>
;0]=d[n>>0]&-2;b[j>>1]=(b[j>>1]|0)+1<<16>>16}i=m;return}if(!(a[(c[h>
x3e;2]|0)+561>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}function Jg(b,f){b=b|0;f=f|0;
var g=0,h=0,j=0,k=0;k=i;i=i+16|0;g=k+8|0;h=k+4|0;j=k;c[g>>2]=b;c[h>>2]=f;c[j>>2]=c[c[h>>
2]>>2]&255;if((c[j>>2]|0)==255){a[(c[g>>2]|0)+284+53>>0]=1;i=k;return}if(!(c[j>
;>2]|0)){a[(c[g>>2]|0)+284+53>>0]=0;i=k;return}if(c[c[h>>2]>>2]&256|0?(e[(c[g
x3e;>2]|0)+244+8>>1]|0|0)<=(c[j>>2]|0):0)a[(c[g>>2]|0)+284+53>>0]=1;if(c[c[h
x3e;>2]>>2]&512|0?d[(c[g>>2]|0)+244+37>>0]|0|0:0)a[(c[g>>2]|0)+284+53>>
;0]=1;if(c[c[h>>2]>>2]&1024|0?d[(c[g>>2]|0)+244+38>>0]|0|0:0)a[(c[g>>2]|0
)+284+53>>0]=1;if(c[c[h>>2]>>2]&2048|0?(e[(c[g>>2]|0)+244+8>>1]|0|0)>
;(c[j>>2]|0):0)a[(c[g>>2]|0)+284+53>>0]=0;if(c[c[h>>2]>>2]&4096|0?d[(c[g
x3e;>2]|0)+244+37>>0]|0|0:0)a[(c[g>>2]|0)+284+53>>0]=0;if(!(c[c[h>>2]>>2]
x26;8192)){i=k;return}if(!(d[(c[g>>2]|0)+244+38>>0]|0)){i=k;return}a[(c[g>>2]|0)+284+53>>
;0]=0;i=k;return}function Kg(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;s=i;i=i+48|0;h=s+32|0;t=s+28|0
;j=s+24|0;k=s+20|0;l=s+16|0;m=s+38|0;n=s+36|0;o=s+12|0;q=s+8|0;p=s+4|0;r=s;c[h>>2]=f;c[t>>2]=g;b[m>>
;1]=c[(c[t>>2]|0)+4>>2];b[n>>1]=c[c[t>>2]>>2];if((e[n>>1]|0)>
x3e;>0<(e[(c[h>>2]|0)+72+8>>1]|0)>>>0?(e[m>>1]|0)>>>0<
;(e[(c[h>>2]|0)+108+8>>1]|0)>>>0:0){c[o>>2]=(c[(c[h>>2]|0)+72+12>>
;2]|0)+(e[n>>1]<<3);c[q>>2]=(c[(c[h>>2]|0)+108+12>>2]|0)+(e[m>>1]<
;<3);c[j>>2]=(c[c[o>>2]>>2]|0)-(c[c[q>>2]>>2]|0);c[k>>2]=(c[(c[
o>>2]|0)+4>>2]|0)-(c[(c[q>>2]|0)+4>>2]|0);if(d[(c[h>>2]|0)+368>>0]
x26;1|0){c[l>>2]=c[k>>2];c[k>>2]=c[j>>2];c[j>>2]=0-(c[l>>2]|0)}Rf(c[
h>>2]|0,c[j>>2]|0,c[k>>2]|0,(c[h>>2]|0)+284+6|0)|0;c[p>>2]=(c[(c[h>>
2]|0)+72+16>>2]|0)+(e[n>>1]<<3);c[r>>2]=(c[(c[h>>2]|0)+108+16>>2]|0)+(
e[m>>1]<<3);c[j>>2]=(c[c[p>>2]>>2]|0)-(c[c[r>>2]>>2]|0);c[
k>>2]=(c[(c[p>>2]|0)+4>>2]|0)-(c[(c[r>>2]|0)+4>>2]|0);if(d[(c[h>>2]|
0)+368>>0]&1|0){c[l>>2]=c[k>>2];c[k>>2]=c[j>>2];c[j>>2]=0-(c[l
x3e;>2]|0)}Rf(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,(c[h>>2]|0)+284+10|0)|0;vf(c[h>>
;2]|0);i=s;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=s;return}c[(c[h>>2]|0)+12>>2]=134;i=s
;return}function Lg(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=
b;c[g>>2]=0;c[g>>2]=c[c[f>>2]>>2]&1|0?35:0;if(c[c[f>>2]>>2]&
;2|0?d[(c[e>>2]|0)+244+37>>0]|0|0:0)c[g>>2]=c[g>>2]|128;if(c[c[f>>2]>>
;2]&4|0?d[(c[e>>2]|0)+244+38>>0]|0|0:0)c[g>>2]=c[g>>2]|256;if(!(c[c[f>>2]
x3e;>2]&32)){b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}if(!(d[(c[e>>2]|0)+604
>>0]|0)){b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}c[g>>2]=c[g>>2
]|4096;b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}function Mg(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;j=k+12|0;g=k+8|0;h=k+4|0;f=k;c[j>>2]=b;c[g>>2]=e;c[h>>2]=c[(c[j>>2]|
0)+416>>2];c[f>>2]=(c[h>>2]|0)+(c[(c[j>>2]|0)+408>>2]<<4);while(1){if
((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break;if((c[(c[h>>2]|0)+8>
;>2]|0)==(c[c[g>>2]>>2]|0))break;c[h>>2]=(c[h>>2]|0)+16}do if((c[h>>2]|0)==(
c[f>>2]|0)){e=c[j>>2]|0;if((c[(c[j>>2]|0)+408>>2]|0)>>>0<(c[(c[j>
;>2]|0)+412>>2]|0)>>>0){f=e+408|0;c[f>>2]=(c[f>>2]|0)+1;break}c[e+12>>
;2]=141;i=k;return}while(0);if(0<=(c[c[g>>2]>>2]|0)?(c[c[g>>2]>>2]|0)<=255:0){
c[(c[h>>2]|0)+8>>2]=c[c[g>>2]>>2]&255;c[(c[h>>2]|0)+4>>2]=(c[(c
[j>>2]|0)+360>>2]|0)+1;c[c[h>>2]>>2]=c[(c[j>>2]|0)+352>>2];a[(c[h>
;>2]|0)+12>>0]=1;if((c[c[g>>2]>>2]|0)>>>0>(c[(c[j>>2]|0)+424>
;>2]|0)>>>0)c[(c[j>>2]|0)+424>>2]=c[c[g>>2]>>2]&255;a:while(1){
if((Yf(c[j>>2]|0)|0)&255|0){e=17;break}switch(d[(c[j>>2]|0)+368>>0]|0|0){case 44:case 137:{e=
16;break a}case 45:{e=17;break a}default:{}}}if((e|0)==16){c[(c[j>>2]|0)+12>>2]=137;i=k;return}else if((e|0)==
17){i=k;return}}c[(c[j>>2]|0)+12>>2]=141;i=k;return}function Ng(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;g=d+8|0;f=d+4|0;h=d;c[j>>2]=a;c[e>>2]=b;c[j>>2]=c[j>>2];
c[g>>2]=c[(c[e>>2]|0)+8>>2];c[f>>2]=c[(c[e>>2]|0)+4>>2];c[h>>
;2]=c[c[e>>2]>>2];c[(c[e>>2]|0)+8>>2]=c[h>>2];c[(c[e>>2]|0)+4>
x3e;2]=c[g>>2];c[c[e>>2]>>2]=c[f>>2];i=d;return}function Og(a,b){a=a|0;b=b|0;var d=0,e=0
,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if((c[c[e>>2]>>2]|0)<0){i=f;return
}c[(c[d>>2]|0)+284+56>>2]=c[c[e>>2]>>2];i=f;return}function Pg(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;k=j+8|0;g=j+4|0;h=j;c[f>>2]=b;c[k>>2]=e;c[g>>2]=c[(c[k>
x3e;2]|0)+4>>2];c[h>>2]=c[c[k>>2]>>2];if((c[g>>2]|0)<1|(c[g>>2]|
0)>2){if(!(a[(c[f>>2]|0)+561>>0]|0)){i=j;return}c[(c[f>>2]|0)+12>>2]=134;i=j;return
}else{if(c[h>>2]|0)c[h>>2]=c[g>>2];a[(c[f>>2]|0)+284+52>>0]=d[(c[f>>
2]|0)+284+52>>0]&~(c[g>>2]&255)|c[h>>2]&255;i=j;return}}function Qg(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;p=i;i=i+32|0;k=p+24|0;q=p+20|0;o=p+28|0;h=p+16|0;j=p+12|0;m=p+8|0;l=p+4|0;n=p;c[k>
;>2]=f;c[q>>2]=g;b[o>>1]=c[c[q>>2]>>2];c[h>>2]=(c[(c[q>>2]|0)+4
>>2]|0)+1;if(((e[o>>1]|0)>>>0<(e[(c[k>>2]|0)+72+8>>1]|0)>>
x3e;0?(c[h>>2]|0)>>>0<((c[(c[k>>2]|0)+380>>2]|0)+1|0)>>>0:0)?(e
[(c[k>>2]|0)+284>>1]|0)>>>0<(e[(c[k>>2]|0)+36+8>>1]|0)>>
x3e;0:0){if(c[h>>2]|0)c[j>>2]=Ya[c[(c[k>>2]|0)+592>>2]&127](c[k>>2]|0,(c[
h>>2]|0)-1|0)|0;else c[j>>2]=0;q=(c[j>>2]|0)-(c[(c[k>>2]|0)+284+44>>2]|0)|0;do
if(((((c[j>>2]|0)-(c[(c[k>>2]|0)+284+44>>2]|0)|0)<0?0-q|0:q)|0)<(c[(c[k>>2]|0
)+284+40>>2]|0)){g=c[(c[k>>2]|0)+284+44>>2]|0;if((c[j>>2]|0)>=0){c[j>>2]=
g;break}else{c[j>>2]=0-g;break}}while(0);if(!(e[(c[k>>2]|0)+284+62>>1]|0)){q=c[(c[(c[k>>
2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)>>2]|0;q=q+(qg(c[j>>2]|
0,b[(c[k>>2]|0)+284+14>>1]|0)|0)|0;c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<
;<3)>>2]=q;q=c[(c[(c[k>>2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<
x3c;3)+4>>2]|0;q=q+(qg(c[j>>2]|0,b[(c[k>>2]|0)+284+14+2>>1]|0)|0)|0;c[(c[(c[k>>
;2]|0)+72+12>>2]|0)+(e[o>>1]<<3)+4>>2]=q;q=(c[(c[k>>2]|0)+72+16>>2]|
0)+(e[o>>1]<<3)|0;f=(c[(c[k>>2]|0)+36+16>>2]|0)+(e[o>>1]<<3)|0;c[q
x3e;>2]=c[f>>2];c[q+4>>2]=c[f+4>>2]}c[n>>2]=Oa[c[(c[k>>2]|0)+576>>
;2]&63](c[k>>2]|0,(c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<<3)>>
2]|0)-(c[(c[(c[k>>2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)>>2]|
0)|0,(c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<<3)+4>>2]|0)-(c[(c[(c[k>>
;2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)+4>>2]|0)|0)|0;c[l>>2]=
Oa[c[(c[k>>2]|0)+572>>2]&63](c[k>>2]|0,(c[(c[(c[k>>2]|0)+72+16>>2]|0)+(e[
o>>1]<<3)>>2]|0)-(c[(c[(c[k>>2]|0)+36+16>>2]|0)+(e[(c[k>>2]|0)+284
x3e;>1]<<3)>>2]|0)|0,(c[(c[(c[k>>2]|0)+72+16>>2]|0)+(e[o>>1]<<3
)+4>>2]|0)-(c[(c[(c[k>>2]|0)+36+16>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)+
4>>2]|0)|0)|0;if(a[(c[k>>2]|0)+284+32>>0]|0?(c[n>>2]^c[j>>2]|0)<0:0)c[j
x3e;>2]=0-(c[j>>2]|0);g=c[k>>2]|0;if(d[(c[k>>2]|0)+368>>0]&4|0){if((e[g+284+60
>>1]|0)==(e[(c[k>>2]|0)+284+62>>1]|0)?(q=(c[j>>2]|0)-(c[n>>2]|0)|0,((((c[j>
;>2]|0)-(c[n>>2]|0)|0)<0?0-q|0:q)|0)>=(c[(c[k>>2]|0)+284+36>>2]|0)):0)c[j>>
;2]=c[n>>2];c[m>>2]=Oa[c[(c[k>>2]|0)+568>>2]&63](c[k>>2]|0,c[j>>
;2]|0,c[(c[k>>2]|0)+244+20+((d[(c[k>>2]|0)+368>>0]&3)<<2)>>2]|0)|0}else c
[m>>2]=If(g,c[j>>2]|0,c[(c[k>>2]|0)+244+20+((d[(c[k>>2]|0)+368>>0]&3)<
;<2)>>2]|0)|0;do if(d[(c[k>>2]|0)+368>>0]&8|0){g=c[m>>2]|0;h=c[(c[k>>
;2]|0)+284+24>>2]|0;if((c[n>>2]|0)>=0){if((g|0)>=(h|0))break;c[m>>2]=c[(c[k>>2
]|0)+284+24>>2];break}else{if((g|0)<=(0-h|0))break;c[m>>2]=0-(c[(c[k>>2]|0)+284+24>>
;2]|0);break}}while(0);_a[c[(c[k>>2]|0)+584>>2]&15](c[k>>2]|0,(c[k>>2]|0)+72|0,b[o
x3e;>1]|0,(c[m>>2]|0)-(c[l>>2]|0)|0);b[(c[k>>2]|0)+284+2>>1]=b[(c[k>>2]|0
)+284>>1]|0;if(d[(c[k>>2]|0)+368>>0]&16|0)b[(c[k>>2]|0)+284>>1]=b[o>
x3e;1]|0;b[(c[k>>2]|0)+284+4>>1]=b[o>>1]|0;i=p;return}if(!(a[(c[k>>2]|0)+561>>
0]|0)){i=p;return}c[(c[k>>2]|0)+12>>2]=134;i=p;return}function Rg(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;s=i;i=i+48|0;o=s+36|0;t=s+32|0;r=s+40|0;q=s+28|0;p=s+24|0;j=s+20|0;l=s+16|0;k=s+12|0;m=s+8|0;h=s;c[o
x3e;>2]=f;c[t>>2]=g;b[r>>1]=c[c[t>>2]>>2];if((e[r>>1]|0)>>>
;0<(e[(c[o>>2]|0)+72+8>>1]|0)>>>0?(e[(c[o>>2]|0)+284>>1]|0)>>
;>0<(e[(c[o>>2]|0)+36+8>>1]|0)>>>0:0){do if((e[(c[o>>2]|0)+284+60>
x3e;1]|0)!=0?(e[(c[o>>2]|0)+284+62>>1]|0)!=0:0){c[k>>2]=(c[(c[o>>2]|0)+72+20>>
2]|0)+(e[r>>1]<<3);c[m>>2]=(c[(c[o>>2]|0)+36+20>>2]|0)+(e[(c[o>>2]|0
)+284>>1]<<3);if((c[(c[o>>2]|0)+216+4>>2]|0)==(c[(c[o>>2]|0)+216+8>>
2]|0)){c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o>>2]|0,(c[c[k>>2]>>
;2]|0)-(c[c[m>>2]>>2]|0)|0,(c[(c[k>>2]|0)+4>>2]|0)-(c[(c[m>>2]|0)+4>>
;2]|0)|0)|0;c[q>>2]=Mb(c[q>>2]|0,c[(c[o>>2]|0)+216+4>>2]|0)|0;break}else{c[h>>
2]=Mb((c[c[k>>2]>>2]|0)-(c[c[m>>2]>>2]|0)|0,c[(c[o>>2]|0)+216+4>>2]|
0)|0;c[h+4>>2]=Mb((c[(c[k>>2]|0)+4>>2]|0)-(c[(c[m>>2]|0)+4>>2]|0)|0,c[(c[o>
;>2]|0)+216+8>>2]|0)|0;c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o>>2]|
0,c[h>>2]|0,c[h+4>>2]|0)|0;break}}else n=7;while(0);if((n|0)==7){c[j>>2]=(c[(c[o>>2]|0)+
72+12>>2]|0)+(e[r>>1]<<3);c[l>>2]=(c[(c[o>>2]|0)+36+12>>2]|0)+(e[(c[
o>>2]|0)+284>>1]<<3);c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o
x3e;>2]|0,(c[c[j>>2]>>2]|0)-(c[c[l>>2]>>2]|0)|0,(c[(c[j>>2]|0)+4>>
;2]|0)-(c[(c[l>>2]|0)+4>>2]|0)|0)|0}t=(c[q>>2]|0)-(c[(c[o>>2]|0)+284+44>>2]|0)|
0;do if(((((c[q>>2]|0)-(c[(c[o>>2]|0)+284+44>>2]|0)|0)<0?0-t|0:t)|0)<(c[(c[o>>
2]|0)+284+40>>2]|0)){g=c[(c[o>>2]|0)+284+44>>2]|0;if((c[q>>2]|0)>=0){c[q>>
;2]=g;break}else{c[q>>2]=0-g;break}}while(0);g=c[o>>2]|0;if(d[(c[o>>2]|0)+368>>0]&4
|0)c[p>>2]=Oa[c[g+568>>2]&63](c[o>>2]|0,c[q>>2]|0,c[(c[o>>2]|0)+244+20+((
d[(c[o>>2]|0)+368>>0]&3)<<2)>>2]|0)|0;else c[p>>2]=If(g,c[q>>2]|
0,c[(c[o>>2]|0)+244+20+((d[(c[o>>2]|0)+368>>0]&3)<<2)>>2]|0)|0;do if(d[(c
[o>>2]|0)+368>>0]&8|0){g=c[p>>2]|0;f=c[(c[o>>2]|0)+284+24>>2]|0;if((c[q
x3e;>2]|0)>=0){if((g|0)>=(f|0))break;c[p>>2]=c[(c[o>>2]|0)+284+24>>2];break}else{if
((g|0)<=(0-f|0))break;c[p>>2]=0-(c[(c[o>>2]|0)+284+24>>2]|0);break}}while(0);c[q>>2
]=Oa[c[(c[o>>2]|0)+572>>2]&63](c[o>>2]|0,(c[(c[(c[o>>2]|0)+72+16>>2]|0)+(
e[r>>1]<<3)>>2]|0)-(c[(c[(c[o>>2]|0)+36+16>>2]|0)+(e[(c[o>>2]|0)+284
>>1]<<3)>>2]|0)|0,(c[(c[(c[o>>2]|0)+72+16>>2]|0)+(e[r>>1]<<
;3)+4>>2]|0)-(c[(c[(c[o>>2]|0)+36+16>>2]|0)+(e[(c[o>>2]|0)+284>>1]<<
3)+4>>2]|0)|0)|0;_a[c[(c[o>>2]|0)+584>>2]&15](c[o>>2]|0,(c[o>>2]|0)+72|0,
b[r>>1]|0,(c[p>>2]|0)-(c[q>>2]|0)|0);b[(c[o>>2]|0)+284+2>>1]=b[(c[o>>
;2]|0)+284>>1]|0;b[(c[o>>2]|0)+284+4>>1]=b[r>>1]|0;if(!(d[(c[o>>2]|0)+368>
;>0]&16)){i=s;return}b[(c[o>>2]|0)+284>>1]=b[r>>1]|0;i=s;return}if(!(a[(c[o>>2
]|0)+561>>0]|0)){i=s;return}c[(c[o>>2]|0)+12>>2]=134;i=s;return}function Sg(f,g){f=f|0;g=g|0;var h
=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+4|0;j=m;l=m+10|0;k=m+8|0;c[h>>2]=f;c[j>>2]=g;b[l>>1]=(d[(c[h
x3e;>2]|0)+368>>0]|0)-184+1;g=c[h>>2]|0;if((e[l>>1]|0)>>>0>=((c[(c[h>
;>2]|0)+20>>2]|0)+1-(c[(c[h>>2]|0)+16>>2]|0)|0)>>>0){c[g+12>>2]=130;
i=m;return}f=g+360|0;c[f>>2]=(c[f>>2]|0)+1;b[k>>1]=0;while(1){g=c[h>>2]|0;if((e[k>
x3e;1]|0|0)>=(e[l>>1]|0|0))break;f=(xg(g)|0)<<16>>16;c[(c[j>>2]|0)+((e[k>>
;1]|0)<<2)>>2]=f;b[k>>1]=(b[k>>1]|0)+1<<16>>16}a[g+376>>0]=
0;i=m;return}function Tg(a,f){a=a|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+4|0;h=l;k=l+10|0;j=l+8|0;c[g>>2]=a;
c[h>>2]=f;b[k>>1]=(d[(c[g>>2]|0)+368>>0]|0)-176+1;if((e[k>>1]|0)>>
x3e;0>=((c[(c[g>>2]|0)+20>>2]|0)+1-(c[(c[g>>2]|0)+16>>2]|0)|0)>>>0){
c[(c[g>>2]|0)+12>>2]=130;i=l;return}b[j>>1]=1;while(1){if((e[j>>1]|0|0)>(e[k>
x3e;1]|0|0))break;c[(c[h>>2]|0)+((e[j>>1]|0)-1<<2)>>2]=d[(c[(c[g>>2]|0)+356>
;>2]|0)+((c[(c[g>>2]|0)+360>>2]|0)+(e[j>>1]|0))>>0];b[j>>1]=(b[j>>
;1]|0)+1<<16>>16}i=l;return}function Ug(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;e=m+24|0;f
=m+20|0;j=m+16|0;h=m+12|0;g=m+8|0;k=m+4|0;l=m;c[f>>2]=d;c[j>>2]=c[c[f>>2]>>2];if(a[(c[f
x3e;>2]|0)+292>>0]|0)c[h>>2]=c[(c[f>>2]|0)+296>>2];else c[h>>2]=c[(c[(c[j
>>2]|0)+96>>2]|0)+40>>2];if(!(c[h>>2]|0)){c[e>>2]=153;l=c[e>>2]|0;i=
m;return l|0}Vg(c[h>>2]|0,c[j>>2]|0,c[f>>2]|0)|0;c[(c[h>>2]|0)+428>>2]=0;c[(c[
h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+476>>2]=64;c[(c[h>>2]|0)+480>>2]=0;c
[(c[h>>2]|0)+484>>2]=0;a[(c[h>>2]|0)+488>>0]=0;c[(c[h>>2]|0)+564>>2]=
65536;c[k>>2]=(c[h>>2]|0)+216;c[l>>2]=(c[h>>2]|0)+244;b[c[k>>2]>>1]=
0;b[(c[k>>2]|0)+2>>1]=0;c[(c[k>>2]|0)+4>>2]=0;c[(c[k>>2]|0)+8>>2]=0;
b[(c[l>>2]|0)+8>>1]=0;c[(c[l>>2]|0)+16>>2]=0;c[(c[l>>2]|0)+12>>2]=65536
;Xg(c[h>>2]|0,1,c[(c[j>>2]|0)+656>>2]|0,c[(c[j>>2]|0)+652>>2]|0)|0;Yg(c[h>
;>2]|0,2)|0;Yg(c[h>>2]|0,3)|0;if((c[(c[j>>2]|0)+652>>2]|0)>>>0>0){c[g>
;>2]=Zg(c[h>>2]|0,1,0)|0;if(!(c[g>>2]|0))c[g>>2]=Ta[c[(c[j>>2]|0)+688>>2]
x26;63](c[h>>2]|0)|0}else c[g>>2]=0;if(!(c[g>>2]|0))_g(c[h>>2]|0,c[f>>2]|0)|0;
c[e>>2]=c[g>>2];l=c[e>>2]|0;i=m;return l|0}function Vg(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;p=i;i=i+32|0;h=p+28|0;j=p+24|0;q=p+20|0;k=p+16|0;m=p+12|0;o=p+8|0;n=p+4|0;l=p;c[j>>2]=d;c[q>
;>2]=f;c[k>>2]=g;c[c[j>>2]>>2]=c[q>>2];c[n>>2]=(c[q>>2]|0)+260;
c[(c[j>>2]|0)+4>>2]=c[k>>2];if(c[k>>2]|0){c[(c[j>>2]|0)+396>>2]=c[(c
[k>>2]|0)+116>>2];c[(c[j>>2]|0)+400>>2]=c[(c[k>>2]|0)+120>>2];c[(c[j
>>2]|0)+408>>2]=c[(c[k>>2]|0)+128>>2];c[(c[j>>2]|0)+412>>2]=c[(c[k
x3e;>2]|0)+132>>2];c[(c[j>>2]|0)+404>>2]=c[(c[k>>2]|0)+124>>2];c[(c[j>
;>2]|0)+416>>2]=c[(c[k>>2]|0)+136>>2];d=(c[j>>2]|0)+244|0;f=(c[k>>2]|0)+72
|0;g=d+40|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));q=(c[j>>2]|0)+216|0;g=(c[k
x3e;>2]|0)+44|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[q+8>>2]=c[g+8>
x3e;2];c[q+12>>2]=c[g+12>>2];c[q+16>>2]=c[g+16>>2];c[q+20>>2]=c[g+20>>
;2];c[q+24>>2]=c[g+24>>2];c[(c[j>>2]|0)+420>>2]=c[(c[k>>2]|0)+140>>2
];c[(c[j>>2]|0)+424>>2]=c[(c[k>>2]|0)+144>>2];c[m>>2]=0;while(1){if((c[m>
x3e;2]|0)>=3)break;q=(c[j>>2]|0)+444+(c[m>>2]<<3)|0;g=(c[k>>2]|0)+148+(c[m>>
;2]<<3)|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[m>>2]=(c[m>>
;2]|0)+1}d=(c[j>>2]|0)+284|0;f=(c[k>>2]|0)+172|0;g=d+68|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f
+4|0}while((d|0)<(g|0));c[(c[j>>2]|0)+380>>2]=c[(c[k>>2]|0)+240>>2];c[(c[j>>
;2]|0)+384>>2]=c[(c[k>>2]|0)+244>>2];b[(c[j>>2]|0)+468>>1]=b[(c[k>>2
]|0)+248>>1]|0;c[(c[j>>2]|0)+472>>2]=c[(c[k>>2]|0)+252>>2];d=(c[j>>2
]|0)+180|0;f=(c[k>>2]|0)+256|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));
d=(c[j>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+72|0;f=(c[j
>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>
;2]|0)+108|0;f=(c[j>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0))}
c[o>>2]=c[(c[j>>2]|0)+20>>2];c[l>>2]=Wg(c[(c[j>>2]|0)+8>>2]|0,o,4,(c
[j>>2]|0)+24|0,(e[(c[n>>2]|0)+24>>1]|0)+32|0)|0;c[(c[j>>2]|0)+20>>2]=c[o>
x3e;2];if(c[l>>2]|0){c[h>>2]=c[l>>2];q=c[h>>2]|0;i=p;return q|0}c[o>>2]=c[(c[j
>>2]|0)+388>>2];c[l>>2]=Wg(c[(c[j>>2]|0)+8>>2]|0,o,1,(c[j>>2]|0)+392
|0,e[(c[n>>2]|0)+26>>1]|0)|0;c[(c[j>>2]|0)+388>>2]=c[o>>2]&65535;if(c[l
x3e;>2]|0){c[h>>2]=c[l>>2];q=c[h>>2]|0;i=p;return q|0}else{b[(c[j>>2]|0)+144+8>
;>1]=0;b[(c[j>>2]|0)+144+10>>1]=0;d=(c[j>>2]|0)+72|0;f=(c[j>>2]|0)+144|0;g=d+36|0;do
{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+108|0;f=(c[j>>2]|
0)+144|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+36|0;f=(
c[j>>2]|0)+144|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));a[(c[j>
x3e;2]|0)+488>>0]=0;c[h>>2]=0;q=c[h>>2]|0;i=p;return q|0}return 0}function Wg(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;o=i;i=i+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;p=o+12|0;l=o+8|0;m
=o+4|0;n=o;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[p>>2]=e;c[l>>2]=f;c[n>>2]=
c[p>>2];do if((c[c[j>>2]>>2]|0)>>>0<(c[l>>2]|0)>>>0){
b=_(c[c[j>>2]>>2]|0,c[k>>2]|0)|0;p=_(c[l>>2]|0,c[k>>2]|0)|0;p=hc(c[h>>
;2]|0,1,b,p,c[c[n>>2]>>2]|0,m)|0;c[c[n>>2]>>2]=p;if(!(c[m>>2]|0)){c[c[j>
x3e;2]>>2]=c[l>>2];break}c[g>>2]=c[m>>2];p=c[g>>2]|0;i=o;return p|0}while(0);c
[g>>2]=0;p=c[g>>2]|0;i=o;return p|0}function Xg(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;g=f+8|0;k=f+4|0;j=f;c[h>>2]=a;c[g>>2]=b;c[k>>2]=d;c[j>>2]=e;c[(c[h>
;>2]|0)+444+((c[g>>2]|0)-1<<3)>>2]=c[k>>2];c[(c[h>>2]|0)+444+((c[g>
x3e;2]|0)-1<<3)+4>>2]=c[j>>2];i=f;return 0}function Yg(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)+444+((c[e>>2]|0)-1<<3)>
x3e;2]=0;c[(c[f>>2]|0)+444+((c[e>>2]|0)-1<<3)+4>>2]=0;i=d;return 0}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;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>
;>2]=d;c[j>>2]=(c[f>>2]|0)+444+((c[g>>2]|0)-1<<3);c[(c[f>>2]|0)+356>
x3e;2]=c[c[j>>2]>>2];c[(c[f>>2]|0)+364>>2]=c[(c[j>>2]|0)+4>>2];c[(c[
f>>2]|0)+360>>2]=c[h>>2];c[(c[f>>2]|0)+352>>2]=c[g>>2];i=e;return 0}
function _g(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[(c[e
>>2]|0)+116>>2]=c[(c[d>>2]|0)+396>>2];c[(c[e>>2]|0)+128>>2]=c[(c[d
x3e;>2]|0)+408>>2];c[(c[e>>2]|0)+140>>2]=c[(c[d>>2]|0)+420>>2];c[(c[e>
;>2]|0)+144>>2]=c[(c[d>>2]|0)+424>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)
x3e;=3)break;b=(c[e>>2]|0)+148+(c[f>>2]<<3)|0;a=(c[d>>2]|0)+444+(c[f>>2]<
x3c;3)|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[f>>2]=(c[f>>2]|0)+1}i
=g;return 0}function $g(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;f=k+16|0;g=k+12|0;d=k+8|0;j=k+4|0;h=k;c[g>>
;2]=b;c[d>>2]=c[c[g>>2]>>2];if(a[(c[g>>2]|0)+292>>0]|0)c[j>>2]=c[(c[
g>>2]|0)+296>>2];else c[j>>2]=c[(c[(c[d>>2]|0)+96>>2]|0)+40>>2];if(!(
c[j>>2]|0)){c[f>>2]=153;j=c[f>>2]|0;i=k;return j|0}Vg(c[j>>2]|0,c[d>>2]|0,c[g
x3e;>2]|0)|0;c[(c[j>>2]|0)+428>>2]=0;c[(c[j>>2]|0)+16>>2]=0;a[(c[j>>2]|0)+
488>>0]=0;Xg(c[j>>2]|0,2,c[(c[d>>2]|0)+664>>2]|0,c[(c[d>>2]|0)+660>>
2]|0)|0;Yg(c[j>>2]|0,3)|0;if((c[(c[d>>2]|0)+660>>2]|0)>>>0>0){c[h>>2
]=Zg(c[j>>2]|0,2,0)|0;if((c[h>>2]|0)==0?(a[(c[g>>2]|0)+292>>0]|0)==0:0)c[h>>2]=
Ta[c[(c[d>>2]|0)+688>>2]&63](c[j>>2]|0)|0}else c[h>>2]=0;d=(c[g>>2]|0)+172
|0;b=(c[j>>2]|0)+284|0;e=d+68|0;do{c[d>>2]=c[b>>2];d=d+4|0;b=b+4|0}while((d|0)<(e|0));_g(c[j
x3e;>2]|0,c[g>>2]|0)|0;c[f>>2]=c[h>>2];j=c[f>>2]|0;i=k;return j|0}function ah(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,P=0,Q=0,R=0;R=i;i=i+192|0;l=R+180|0;m=R+176|0;n=R+172|0;o=R+186|0;q=R+168|0;P=R+164|0;Q=R+160|0;G=R+
156|0;r=R+152|0;s=R+148|0;J=R+185|0;p=R+144|0;w=R+104|0;t=R+96|0;u=R+184|0;z=R+92|0;M=R+88|0;L=R+84|0;x=R+80|0;v=R+76|0;y=R+72|0
;N=R+68|0;A=R+64|0;B=R+60|0;C=R+56|0;O=R+52|0;E=R+48|0;F=R+44|0;D=R+40|0;I=R+36|0;H=R+32|0;K=R;c[l>>2]=f;c[m>>
;2]=g;c[n>>2]=h;a[o>>0]=j;c[q>>2]=0;c[r>>2]=c[c[l>>2]>>2];c[s>
x3e;2]=c[(c[l>>2]|0)+12>>2];a[J>>0]=0;c[p>>2]=0;a[u>>0]=0;if((c[n>>2
]|0)>>>0>1?(c[n>>2]|0)>>>0>(e[(c[r>>2]|0)+260+30>>1]|0)>
;>>0:0)c[q>>2]=21;else k=4;a:do if((k|0)==4){if((c[m>>2]|0)>>>0>=(c[(c[r>
x3e;2]|0)+16>>2]|0)>>>0){c[q>>2]=16;break}c[(c[l>>2]|0)+20>>2]=c[m>
x3e;2];if(!(c[(c[l>>2]|0)+16>>2]&1)){c[P>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+44
+4>>2];c[Q>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+44+8>>2]}else{c[P>>2]=65536
;c[Q>>2]=65536}bh(c[l>>2]|0,c[m>>2]|0);g=c[r>>2]|0;if(c[(c[(c[r>>2]|0)+128>
;>2]|0)+52>>2]|0){c[q>>2]=Oa[c[c[c[(c[g+128>>2]|0)+52>>2]>>2]>>
2]&63](c[(c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,c[m>>2]|0,t)|0;if
(c[q>>2]|0)break;a[u>>0]=1;c[G>>2]=0;c[(c[l>>2]|0)+28>>2]=c[t+4>>2];
g=w;j=g+40|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(j|0));uc(w,c[t>>2]|0,c[t+4>>2]|0);c[(c[l>
x3e;2]|0)+24>>2]=w}else c[G>>2]=Ge(g,c[m>>2]|0,(c[l>>2]|0)+28|0)|0;if((c[(c[l>>
;2]|0)+28>>2]|0)>0){if((c[(c[l>>2]|0)+84>>2]|0)==0?(c[(c[(c[r>>2]|0)+128>>
;2]|0)+52>>2]|0)==0:0){c[q>>2]=8;break}c[q>>2]=Wa[c[(c[r>>2]|0)+512>>2]&31
](c[l>>2]|0,c[m>>2]|0,(c[(c[l>>2]|0)+84>>2]|0)+(c[G>>2]|0)|0,c[(c[l>>
;2]|0)+28>>2]|0)|0;if(c[q>>2]|0)break;a[J>>0]=1;c[q>>2]=Ta[c[(c[r>>2]|0)+520
x3e;>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;if(d[o>>0]|0)break}if(c[(c[l>>2]|0
)+28>>2]|0?b[(c[l>>2]|0)+32>>1]|0:0){c[(c[l>>2]|0)+68>>2]=(c[(c[l>>2
]|0)+36>>2]|0)-(c[(c[l>>2]|0)+52>>2]|0);c[(c[l>>2]|0)+68+4>>2]=0;c[(c[l>
x3e;2]|0)+76>>2]=(c[(c[l>>2]|0)+68>>2]|0)+(c[(c[l>>2]|0)+56>>2]|0);c[(c[l>
;>2]|0)+76+4>>2]=0;c[(c[l>>2]|0)+184>>2]=0;c[(c[l>>2]|0)+184+4>>2]=(c[(c[
l>>2]|0)+176>>2]|0)+(c[(c[l>>2]|0)+36+12>>2]|0);c[(c[l>>2]|0)+192>>2
]=0;c[(c[l>>2]|0)+192+4>>2]=(c[(c[l>>2]|0)+184+4>>2]|0)-(c[(c[l>>2]|0)+180>
;>2]|0);eh(c[l>>2]|0,c[m>>2]|0);if((b[(c[l>>2]|0)+32>>1]|0)>0){c[q>>
2]=Ta[c[(c[r>>2]|0)+524>>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;Va[c[(c[r>>
;2]|0)+516>>2]&63](c[l>>2]|0);a[J>>0]=0;c[q>>2]=gh(c[l>>2]|0)|0;if(c[q>
;>2]|0)break;oc(c[s>>2]|0);break}if((b[(c[l>>2]|0)+32>>1]|0)!=-1){c[q>>2]=20;break}
c[M>>2]=b[(c[s>>2]|0)+20+2>>1];c[L>>2]=b[(c[s>>2]|0)+20>>1];c[q>
;>2]=Ta[c[(c[r>>2]|0)+528>>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;c[x>>
;2]=c[(c[l>>2]|0)+168>>2];Va[c[(c[r>>2]|0)+516>>2]&63](c[l>>2]|0);a[J>
;>0]=0;if(a[(c[r>>2]|0)+708>>0]|0){c[A>>2]=c[(c[r>>2]|0)+100>>2];G=fh(c[r
>>2]|0,c[m>>2]|0,p,(c[(c[s>>2]|0)+56+28>>2]|0)+4|0)|0;c[q>>2]=G;if(G|0)break;c
[N>>2]=(c[(c[s>>2]|0)+56+32>>2]|0)+(c[(c[s>>2]|0)+20+28>>2]<<5);c[y
x3e;>2]=c[(c[s>>2]|0)+56+28>>2];c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[y>
x3e;2]|0))break;if(e[(c[N>>2]|0)+4>>1]&2|0){G=(c[N>>2]|0)+8|0;c[G>>2]=(c[G>>
;2]|0)+((c[(c[p>>2]|0)+(c[v>>2]<<3)>>2]&65535)<<16>>16);G=(c[N
x3e;>2]|0)+12|0;c[G>>2]=(c[G>>2]|0)+((c[(c[p>>2]|0)+(c[v>>2]<<3)+4>
x3e;2]&65535)<<16>>16)}c[v>>2]=(c[v>>2]|0)+1;c[N>>2]=(c[N>>2]|0
)+32}N=(c[l>>2]|0)+68|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+0<
;<3)>>2]|0);N=(c[l>>2]|0)+68+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v
>>2]|0)+0<<3)+4>>2]|0);N=(c[l>>2]|0)+76|0;c[N>>2]=(c[N>>2]|0)+(c[(c[
p>>2]|0)+((c[v>>2]|0)+1<<3)>>2]|0);N=(c[l>>2]|0)+76+4|0;c[N>>2]=(c[N
>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+1<<3)+4>>2]|0);N=(c[l>>2]|0)+184
|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+2<<3)>>2]|0);N=(c
[l>>2]|0)+184+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+2<<
;3)+4>>2]|0);N=(c[l>>2]|0)+192|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>
;>2]|0)+3<<3)>>2]|0);N=(c[l>>2]|0)+192+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>
;>2]|0)+((c[v>>2]|0)+3<<3)+4>>2]|0);Fb(c[A>>2]|0,c[p>>2]|0);c[p>>
;2]=0}if(!(c[(c[l>>2]|0)+16>>2]&1)){N=Mb(c[(c[l>>2]|0)+68>>2]|0,c[P>>2]|0
)|0;c[(c[l>>2]|0)+68>>2]=N;P=Mb(c[(c[l>>2]|0)+76>>2]|0,c[P>>2]|0)|0;c[(c[l>
;>2]|0)+76>>2]=P;P=Mb(c[(c[l>>2]|0)+184+4>>2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0
)+184+4>>2]=P;Q=Mb(c[(c[l>>2]|0)+192+4>>2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0)+192+4
x3e;>2]=Q}if(c[(c[l>>2]|0)+16>>2]&1024|0){oc(c[s>>2]|0);c[(c[(c[l>>2]|0)+8>
;>2]|0)+72>>2]=1668246896;break}c[O>>2]=0;c[E>>2]=c[M>>2];c[F>>2]=c[(c[s
x3e;>2]|0)+56+28>>2];c[D>>2]=c[(c[s>>2]|0)+20+28>>2];c[I>>2]=c[(c[l>
x3e;2]|0)+24>>2];c[H>>2]=c[(c[l>>2]|0)+28>>2];oc(c[s>>2]|0);c[B>>2]=
0;while(1){if((c[B>>2]|0)>>>0>=(c[F>>2]|0)>>>0)break;c[O>>2]=(c
[(c[s>>2]|0)+20+32>>2]|0)+(c[D>>2]<<5)+(c[B>>2]<<5);Q=(c[l>>
;2]|0)+68|0;c[K>>2]=c[Q>>2];c[K+4>>2]=c[Q+4>>2];Q=K+8|0;P=(c[l>>2]|0)+76|0;c[Q
>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=K+16|0;P=(c[l>>2]|0)+184|0;c[Q>>2
]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=K+24|0;P=(c[l>>2]|0)+192|0;c[Q>>2]=c[P>
x3e;2];c[Q+4>>2]=c[P+4>>2];c[C>>2]=b[(c[s>>2]|0)+20+2>>1];c[q>>2]=ah
(c[l>>2]|0,c[c[O>>2]>>2]|0,(c[n>>2]|0)+1|0,0)|0;if(c[q>>2]|0)break a;c[O>
x3e;2]=(c[(c[s>>2]|0)+20+32>>2]|0)+(c[D>>2]<<5)+(c[B>>2]<<5);if(!(e[(
c[O>>2]|0)+4>>1]&512)){Q=(c[l>>2]|0)+68|0;c[Q>>2]=c[K>>2];c[Q+4>>
;2]=c[K+4>>2];Q=(c[l>>2]|0)+76|0;P=K+8|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>
x3e;2];Q=(c[l>>2]|0)+184|0;P=K+16|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=(c[l
>>2]|0)+192|0;P=K+24|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2]}c[E>>2]=b
[(c[s>>2]|0)+20+2>>1];if((c[E>>2]|0)!=(c[C>>2]|0))lh(c[l>>2]|0,c[O>>
2]|0,c[M>>2]|0,c[C>>2]|0)|0;c[B>>2]=(c[B>>2]|0)+1}c[(c[l>>2]|0)+24>>
2]=c[I>>2];c[(c[l>>2]|0)+28>>2]=c[H>>2];c[(c[l>>2]|0)+168>>2]=c[x>
;>2];if(c[(c[l>>2]|0)+16>>2]&2|0)break;if(!(e[(c[O>>2]|0)+4>>1]&256))break
;if((c[E>>2]|0)>>>0<=(c[M>>2]|0)>>>0)break;mh(c[l>>2]|0,c[M>
;>2]|0,c[L>>2]|0)|0;break}c[(c[l>>2]|0)+36>>2]=0;c[(c[l>>2]|0)+36+8>>2]=0
;c[(c[l>>2]|0)+36+4>>2]=0;c[(c[l>>2]|0)+36+12>>2]=0;if(!(a[o>>0]|0)){c[(c[l>
;>2]|0)+68>>2]=(c[(c[l>>2]|0)+36>>2]|0)-(c[(c[l>>2]|0)+52>>2]|0);c[(c[l
x3e;>2]|0)+68+4>>2]=0;c[(c[l>>2]|0)+76>>2]=(c[(c[l>>2]|0)+68>>2]|0)+(c[(c
[l>>2]|0)+56>>2]|0);c[(c[l>>2]|0)+76+4>>2]=0;c[(c[l>>2]|0)+184>>2]=0
;c[(c[l>>2]|0)+184+4>>2]=(c[(c[l>>2]|0)+176>>2]|0)+(c[(c[l>>2]|0)+36+12>
x3e;2]|0);c[(c[l>>2]|0)+192>>2]=0;c[(c[l>>2]|0)+192+4>>2]=(c[(c[l>>2]|0)+184+4
>>2]|0)-(c[(c[l>>2]|0)+180>>2]|0);eh(c[l>>2]|0,c[m>>2]|0);if(a[(c[c[l>>
;2]>>2]|0)+708>>0]|0){c[z>>2]=c[(c[c[l>>2]>>2]|0)+100>>2];c[q>
x3e;2]=fh(c[c[l>>2]>>2]|0,c[m>>2]|0,p,4)|0;if(c[q>>2]|0)break;O=(c[l>>2]|0)+68
|0;c[O>>2]=(c[O>>2]|0)+(c[c[p>>2]>>2]|0);O=(c[l>>2]|0)+68+4|0;c[O>>2
]=(c[O>>2]|0)+(c[(c[p>>2]|0)+4>>2]|0);O=(c[l>>2]|0)+76|0;c[O>>2]=(c[O>>
;2]|0)+(c[(c[p>>2]|0)+8>>2]|0);O=(c[l>>2]|0)+76+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[
p>>2]|0)+8+4>>2]|0);O=(c[l>>2]|0)+184|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>
;2]|0)+16>>2]|0);O=(c[l>>2]|0)+184+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+16+4
>>2]|0);O=(c[l>>2]|0)+192|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+24>>2
]|0);O=(c[l>>2]|0)+192+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+24+4>>2]|0);Fb(c
[z>>2]|0,c[p>>2]|0);c[p>>2]=0}if(!(c[(c[l>>2]|0)+16>>2]&1)){O=Mb(c[(c[l
x3e;>2]|0)+68>>2]|0,c[P>>2]|0)|0;c[(c[l>>2]|0)+68>>2]=O;P=Mb(c[(c[l>>2]|0
)+76>>2]|0,c[P>>2]|0)|0;c[(c[l>>2]|0)+76>>2]=P;P=Mb(c[(c[l>>2]|0)+184+4>
x3e;2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0)+184+4>>2]=P;Q=Mb(c[(c[l>>2]|0)+192+4>>2]|0
,c[Q>>2]|0)|0;c[(c[l>>2]|0)+192+4>>2]=Q}c[q>>2]=0}}while(0);if(a[J>>0]|0)Va[c[(
c[r>>2]|0)+516>>2]&63](c[l>>2]|0);if(!(a[u>>0]|0)){Q=c[q>>2]|0;i=R;return
Q|0}Ra[c[(c[c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]>>2]|0)+4>>2]&7](c[(c[(c[(
c[r>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,t);Q=c[q>>2]|0;i=R;return Q|0}function
bh(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;j=i;i=i+32|0;g=j+8|0;n=j+4|0;o=j;m=j+18|0;l=j+16|0;h=j+14|0;k=j+12|0;c[
g>>2]=d;c[n>>2]=f;c[o>>2]=c[c[g>>2]>>2];b[m>>1]=0;b[l>>1]=
0;b[h>>1]=0;b[k>>1]=0;ch(c[o>>2]|0,c[n>>2]|0,((c[(c[g>>2]|0)+16>>2]
x26;512|0)!=0^1)&1,m,h);dh(c[o>>2]|0,c[n>>2]|0,((c[(c[g>>2]|0)+16>>2]&512|0)!=
0^1)&1,l,k);c[(c[g>>2]|0)+52>>2]=b[m>>1];c[(c[g>>2]|0)+56>>2]=e[h>
x3e;1];c[(c[g>>2]|0)+176>>2]=b[l>>1];c[(c[g>>2]|0)+180>>2]=e[k>>1];if
(a[(c[g>>2]|0)+64>>0]|0){i=j;return}a[(c[g>>2]|0)+64>>0]=1;c[(c[g>>2]|0)+60>
;>2]=e[h>>1];i=j;return}function ch(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;m=i;i=i+
32|0;k=m+12|0;p=m+8|0;n=m+16|0;o=m+4|0;l=m;c[k>>2]=e;c[p>>2]=f;a[n>>0]=g;c[o>>2]=h;c[l
x3e;>2]=j;Za[c[(c[(c[k>>2]|0)+532>>2]|0)+156>>2]&31](c[k>>2]|0,0,c[p>>
;2]|0,c[o>>2]|0,c[l>>2]|0)|0;if(!(d[n>>0]|0)){i=m;return}if(!(c[(c[k>>2]|0)+468+12>
x3e;2]|0)){i=m;return}b[c[l>>2]>>1]=b[(c[k>>2]|0)+216+10>>1]|0;i=m;return}function dh(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;n=i;i=i+32|0;j=n+12|0;k=n+8|0;o=n+16|0;l=n+4|0;m=n;c[j>
x3e;2]=d;c[k>>2]=e;a[o>>0]=f;c[l>>2]=g;c[m>>2]=h;a[o>>0]=a[o>>0]|0;if
(a[(c[j>>2]|0)+296>>0]|0){Za[c[(c[(c[j>>2]|0)+532>>2]|0)+156>>2]&31](c[j
x3e;>2]|0,1,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;i=n;return}else{b[c[l>>2]>>1
]=0;b[c[m>>2]>>1]=b[(c[j>>2]|0)+68>>1]|0;i=n;return}}function eh(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;q=i;i=i+48|0;g=q+32|0;h=q+28|0;m=q+24|0;n=q+42|0;p=q+40|0;k=q+38|0;j=q+36|0;o=q+8|0;l=q;c[
g>>2]=d;c[h>>2]=f;c[m>>2]=c[c[g>>2]>>2];b[n>>1]=0;b[p>>1]=
0;b[k>>1]=0;b[j>>1]=0;if(!(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)){i=q;return}if
(!(c[(c[c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]>>2]|0)+8>>2]|0)){i=q;return}c[o>
;>2]=c[(c[g>>2]|0)+52>>2];c[o+4>>2]=0;c[o+8>>2]=c[(c[g>>2]|0)+56>>
;2];c[o+12>>2]=0;c[l>>2]=Wa[c[(c[c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]>>
;2]|0)+8>>2]&31](c[(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,c[h>
;>2]|0,0,o)|0;if(c[l>>2]|0){i=q;return}b[n>>1]=c[o>>2];b[k>>1]=c[o+8>>2];
c[(c[g>>2]|0)+52>>2]=b[n>>1];c[(c[g>>2]|0)+56>>2]=e[k>>1];c[(c[g>
;>2]|0)+176>>2]=b[p>>1];c[(c[g>>2]|0)+180>>2]=e[j>>1];if(a[(c[g>>
;2]|0)+64>>0]|0){i=q;return}a[(c[g>>2]|0)+64>>0]=1;c[(c[g>>2]|0)+60>>2]=e[k>
;>1];i=q;return}function fh(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,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;M=i;i=i+128|0;j=M+112|0;N=M+108|0;k=M+104|0;l=M+100|0;m=M+96|0
;G=M+92|0;A=M+88|0;o=M+84|0;p=M+80|0;s=M+76|0;t=M+72|0;H=M+68|0;B=M+64|0;u=M+60|0;v=M+56|0;y=M+52|0;K=M+48|0;x=M+44|0;w=M+40|0;C
=M+36|0;F=M+32|0;E=M+28|0;z=M+24|0;D=M+20|0;q=M+16|0;r=M+12|0;I=M+8|0;J=M+4|0;n=M;c[N>>2]=d;c[k>>2]=f;c[l>
;>2]=g;c[m>>2]=h;c[G>>2]=c[(c[N>>2]|0)+104>>2];c[A>>2]=c[(c[G>>
2]|0)+28>>2];c[o>>2]=c[(c[N>>2]|0)+712>>2];c[K>>2]=0;c[x>>2]=0;c[w
x3e;>2]=0;c[F>>2]=0;c[E>>2]=0;c[z>>2]=0;if((c[o>>2]|0)==0?1:(a[(c[N>>2]|0
)+708>>0]|0)==0){c[j>>2]=6;N=c[j>>2]|0;i=M;return N|0}c[p>>2]=hc(c[A>>2]|0,8,0
,c[m>>2]|0,0,s)|0;do if(!(c[s>>2]|0)){c[c[l>>2]>>2]=c[p>>2];if((c[k>>
;2]|0)>>>0<(c[(c[o>>2]|0)+32>>2]|0)>>>0?(c[(c[(c[o>>2]|0)+36>
;>2]|0)+(c[k>>2]<<2)>>2]|0)!=(c[(c[(c[o>>2]|0)+36>>2]|0)+((c[k>>
;2]|0)+1<<2)>>2]|0):0){N=Kc(c[G>>2]|0,c[(c[(c[o>>2]|0)+36>>2]|0)+(c[k>>
;2]<<2)>>2]|0)|0;c[s>>2]=N;if((N|0)==0?(N=ee(c[G>>2]|0,(c[(c[(c[o>>2]|0)+36>
;>2]|0)+((c[k>>2]|0)+1<<2)>>2]|0)-(c[(c[(c[o>>2]|0)+36>>2]|0)+(c[k>
x3e;2]<<2)>>2]|0)|0)|0,c[s>>2]=N,(N|0)==0):0){c[t>>2]=(c[(c[G>>2]|0)+32>
x3e;2]|0)-(c[c[G>>2]>>2]|0);c[K>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0
,0,s)|0;if(((c[s>>2]|0)==0?(c[x>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0,0,s)|0,(c
[s>>2]|0)==0):0)?(c[w>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0,0,s)|0,(c[s>
x3e;2]|0)==0):0){c[H>>2]=(ie(c[G>>2]|0)|0)&65535;N=c[t>>2]|0;c[B>>2]=N+((ie(c[G>
;>2]|0)|0)&65535);if(c[H>>2]&32768|0){c[u>>2]=(c[(c[G>>2]|0)+32>>2]|0)-(c
[c[G>>2]>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[B>>
;2]|0);c[E>>2]=Ce(c[G>>2]|0,F)|0;c[B>>2]=(c[(c[G>>2]|0)+32>>2]|0)-(c[c[G>
x3e;2]>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[u>>2]|0)}c[v
>>2]=0;a:while(1){if((c[v>>2]|0)>>>0>=(c[H>>2]&4095)>>>0)break
;c[I>>2]=(ie(c[G>>2]|0)|0)&65535;c[J>>2]=(ie(c[G>>2]|0)|0)&65535;b:do if(c[J
x3e;>2]&32768|0){c[y>>2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[c[o>>2]
x3e;>2]|0)>>>0)break b;N=(ie(c[G>>2]|0)|0)<<16>>16<<2;c[(c[K>
x3e;2]|0)+(c[y>>2]<<2)>>2]=N;c[y>>2]=(c[y>>2]|0)+1}}else{if((c[J>>2]
x26;4095)>>>0>=(c[(c[o>>2]|0)+24>>2]|0)>>>0){L=21;break a}N=_(c[J>
x3e;2]&4095,c[c[o>>2]>>2]|0)|0;Ss(c[K>>2]|0,(c[(c[o>>2]|0)+28>>2]|0)+(N
x3c;<2)|0,c[c[o>>2]>>2]<<2|0)|0}while(0);c:do if(c[J>>2]&16384|0){c[y>>
;2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[c[o>>2]>>2]|0)>>>0)break;
N=(ie(c[G>>2]|0)|0)<<16>>16<<2;c[(c[x>>2]|0)+(c[y>>2]<<2)
x3e;>2]=N;c[y>>2]=(c[y>>2]|0)+1}c[y>>2]=0;while(1){if((c[y>>2]|0)>>>
0>=(c[c[o>>2]>>2]|0)>>>0)break c;N=(ie(c[G>>2]|0)|0)<<16>>
16<<2;c[(c[w>>2]|0)+(c[y>>2]<<2)>>2]=N;c[y>>2]=(c[y>>2]|0)+
1}}while(0);c[n>>2]=Be(c[o>>2]|0,c[J>>2]&65535,c[K>>2]|0,c[x>>2]|0,c[w>
;>2]|0)|0;if(!(c[n>>2]|0))c[B>>2]=(c[B>>2]|0)+(c[I>>2]|0);else{c[u>>2]=(c
[(c[G>>2]|0)+32>>2]|0)-(c[c[G>>2]>>2]|0);if(c[J>>2]&8192|0){c[(c[G>
x3e;2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[B>>2]|0);c[z>>2]=Ce(c[G>>2]|0,
C)|0;c[D>>2]=c[z>>2]}else{c[D>>2]=c[E>>2];c[C>>2]=c[F>>2]}c[q>
x3e;2]=De(c[G>>2]|0,(c[C>>2]|0)==0?c[m>>2]|0:c[C>>2]|0)|0;c[r>>2]=De(c[G>
x3e;2]|0,(c[C>>2]|0)==0?c[m>>2]|0:c[C>>2]|0)|0;d:do if(!((c[D>>2]|0)==0|(c[r>>
2]|0)==0|(c[q>>2]|0)==0)){N=(c[D>>2]|0)==(-1|0);c[y>>2]=0;if(N)while(1){if((c[y>>2]|0)
x3e;>>0>=(c[m>>2]|0)>>>0)break d;N=Mb(b[(c[q>>2]|0)+(c[y>>2]<
x3c;1)>>1]|0,c[n>>2]|0)|0;h=(c[p>>2]|0)+(c[y>>2]<<3)|0;c[h>>2]=(c[h
x3e;>2]|0)+N;h=Mb(b[(c[r>>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;N=(c[p>
;>2]|0)+(c[y>>2]<<3)+4|0;c[N>>2]=(c[N>>2]|0)+h;c[y>>2]=(c[y>>2]|
0)+1}else while(1){if((c[y>>2]|0)>>>0>=(c[C>>2]|0)>>>0)break d;N=Mb(b[(c[
q>>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;h=(c[p>>2]|0)+(e[(c[z>
x3e;2]|0)+(c[y>>2]<<1)>>1]<<3)|0;c[h>>2]=(c[h>>2]|0)+N;h=Mb(b[(c[r
x3e;>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;N=(c[p>>2]|0)+(e[(c[z>>
;2]|0)+(c[y>>2]<<1)>>1]<<3)+4|0;c[N>>2]=(c[N>>2]|0)+h;c[y>>
;2]=(c[y>>2]|0)+1}}while(0);if((c[z>>2]|0)!=(-1|0)){Fb(c[A>>2]|0,c[z>>2]|0);c[z>>
;2]=0}Fb(c[A>>2]|0,c[q>>2]|0);c[q>>2]=0;Fb(c[A>>2]|0,c[r>>2]|0);c[r>>
;2]=0;c[B>>2]=(c[B>>2]|0)+(c[I>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2
]>>2]|0)+(c[u>>2]|0)}c[v>>2]=(c[v>>2]|0)+1}if((L|0)==21)c[s>>2]=8;Fb(c[A>
x3e;2]|0,c[K>>2]|0);c[K>>2]=0;Fb(c[A>>2]|0,c[x>>2]|0);c[x>>2]=0;Fb(c[A>
x3e;2]|0,c[w>>2]|0);c[w>>2]=0}ge(c[G>>2]|0)}if(!(c[s>>2]|0))break;Fb(c[A>>2]|0
,c[p>>2]|0);c[p>>2]=0;c[c[l>>2]>>2]=0;break}c[j>>2]=0;N=c[j>>2]|0;i=
M;return N|0}while(0);c[j>>2]=c[s>>2];N=c[j>>2]|0;i=M;return N|0}function gh(d){d=d|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;t=i;i=i+64|0;f=t+48|0;g=t+44|0;k=t+40|0;j=t+36|0;p=t+32|0;o=t+28|0;h=t+24|0;
n=t+20|0;l=t+16|0;q=t+12|0;m=t+8|0;r=t+4|0;s=t;c[g>>2]=d;c[k>>2]=c[(c[g>>2]|0)+12>>2];c[
j>>2]=0;c[p>>2]=(c[k>>2]|0)+56;c[o>>2]=b[(c[p>>2]|0)+2>>1];d=(c[(c[p
>>2]|0)+4>>2]|0)+(c[o>>2]<<3)|0;u=(c[g>>2]|0)+68|0;c[d>>2]=c[u>
x3e;2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)+1<<
;3)|0;u=(c[g>>2]|0)+76|0;c[d>>2]=c[u>>2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>
x3e;2]|0)+4>>2]|0)+((c[o>>2]|0)+2<<3)|0;u=(c[g>>2]|0)+184|0;c[d>>2]=c[u>
x3e;2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)+3<<
;3)|0;u=(c[g>>2]|0)+192|0;c[d>>2]=c[u>>2];c[d+4>>2]=c[u+4>>2];a[(c[(c[p>
x3e;2]|0)+8>>2]|0)+(c[o>>2]|0)>>0]=0;a[(c[(c[p>>2]|0)+8>>2]|0)+((c[o>>
;2]|0)+1)>>0]=0;a[(c[(c[p>>2]|0)+8>>2]|0)+((c[o>>2]|0)+2)>>0]=0;a[(c[(c[p>
;>2]|0)+8>>2]|0)+((c[o>>2]|0)+3)>>0]=0;c[o>>2]=(c[o>>2]|0)+4;if(a[(c[c[g
x3e;>2]>>2]|0)+708>>0]|0){c[n>>2]=c[(c[c[g>>2]>>2]|0)+100>>2];c
[j>>2]=fh(c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+20>>2]|0,h,c[o>>2]|0)|0;if(c
[j>>2]|0){c[f>>2]=c[j>>2];u=c[f>>2]|0;i=t;return u|0}c[l>>2]=0;while(1){if((c[
l>>2]|0)>=(c[o>>2]|0))break;u=(c[(c[p>>2]|0)+4>>2]|0)+(c[l>>2]<<
;3)|0;c[u>>2]=(c[u>>2]|0)+(c[(c[h>>2]|0)+(c[l>>2]<<3)>>2]|0);u=(c[(c
[p>>2]|0)+4>>2]|0)+(c[l>>2]<<3)+4|0;c[u>>2]=(c[u>>2]|0)+(c[(c[h>
;>2]|0)+(c[l>>2]<<3)+4>>2]|0);c[l>>2]=(c[l>>2]|0)+1}Fb(c[n>>2]|
0,c[h>>2]|0);c[h>>2]=0}if(!(c[(c[g>>2]|0)+16>>2]&2)){hh((c[g>>2]|0)+124|0
,(c[k>>2]|0)+56|0,0,0);Ss(c[(c[g>>2]|0)+124+20>>2]|0,c[(c[g>>2]|0)+124+16>>2]|
0,(e[(c[g>>2]|0)+124+8>>1]|0)+4<<3|0)|0}if(!(c[(c[g>>2]|0)+16>>2]&1)){c[q
>>2]=c[(c[p>>2]|0)+4>>2];c[m>>2]=(c[(c[p>>2]|0)+4>>2]|0)+(c[o>
x3e;2]<<3);c[r>>2]=c[(c[(c[g>>2]|0)+4>>2]|0)+44+4>>2];c[s>>2]=c[(c[(
c[g>>2]|0)+4>>2]|0)+44+8>>2];while(1){if((c[q>>2]|0)>>>0>=(c[m>
x3e;2]|0)>>>0)break;u=Mb(c[c[q>>2]>>2]|0,c[r>>2]|0)|0;c[c[q>>2]>>
;2]=u;u=Mb(c[(c[q>>2]|0)+4>>2]|0,c[s>>2]|0)|0;c[(c[q>>2]|0)+4>>2]=u;c[q>
x3e;2]=(c[q>>2]|0)+8}u=(c[g>>2]|0)+68|0;s=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-
4<<3)|0;c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];u=(c[g>>2]|0)+76|0;s=(c[(
c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-3<<3)|0;c[u>>2]=c[s>>2];c[u+4>
x3e;2]=c[s+4>>2];u=(c[g>>2]|0)+184|0;s=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-2
x3c;<3)|0;c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];u=(c[g>>2]|0)+192|0;s=(c[(c
[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-1<<3)|0;c[u>>2]=c[s>>2];c[u+4>
x3e;2]=c[s+4>>2]}if(!(c[(c[g>>2]|0)+16>>2]&2)){u=(c[g>>2]|0)+124+8|0;b[u>>
;1]=(e[u>>1]|0)+4;c[j>>2]=ih(c[g>>2]|0,0)|0}c[f>>2]=c[j>>2];u=c[f>>2
]|0;i=t;return u|0}function hh(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;l=g+8|0;j=g+4|0;k=
g;c[h>>2]=a;c[l>>2]=d;c[j>>2]=e;c[k>>2]=f;b[(c[h>>2]|0)+8>>1]=(b[(c[
l>>2]|0)+2>>1]|0)-(c[j>>2]|0);b[(c[h>>2]|0)+10>>1]=(b[c[l>>2]>
x3e;1]|0)-(c[k>>2]|0);c[(c[h>>2]|0)+12>>2]=(c[(c[l>>2]|0)+20>>2]|0)+(c[j>
x3e;2]<<3);c[(c[h>>2]|0)+16>>2]=(c[(c[l>>2]|0)+4>>2]|0)+(c[j>>2]<
;<3);c[(c[h>>2]|0)+20>>2]=(c[(c[l>>2]|0)+24>>2]|0)+(c[j>>2]<<3);
c[(c[h>>2]|0)+24>>2]=(c[(c[l>>2]|0)+8>>2]|0)+(c[j>>2]|0);c[(c[h>>2]|
0)+28>>2]=(c[(c[l>>2]|0)+12>>2]|0)+(c[k>>2]<<1);b[(c[h>>2]|0)+32>
;>1]=c[j>>2];i=g;return}function ih(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,q=0,r=0;r=i;i=i+64|0
;l=r+44|0;m=r+40|0;h=r+49|0;q=r+36|0;g=r+32|0;k=r+28|0;o=r+48|0;p=r+24|0;j=r+20|0;n=r;c[m>>2]=b;a[h>>0]=f;c[
q>>2]=(c[m>>2]|0)+124;c[k>>2]=c[(c[(c[m>>2]|0)+8>>2]|0)+140>>2];c[g
x3e;>2]=c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-4<<3)>
x3e;2];c[g>>2]=((c[g>>2]|0)+32&-64)-(c[g>>2]|0);if(c[g>>2]|0)jh(e[(c[q>>2
]|0)+8>>1]|0,c[(c[q>>2]|0)+16>>2]|0,c[g>>2]|0,0);if((c[k>>2]|0)>>>
;0>0)Ss(c[(c[q>>2]|0)+12>>2]|0,c[(c[q>>2]|0)+16>>2]|0,e[(c[q>>2]|0)+8>
;>1]<<3|0)|0;f=(c[(c[m>>2]|0)+160>>2]|0)+284|0;b=(c[(c[m>>2]|0)+4>>2]|0)+
172|0;g=f+68|0;do{c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0}while((f|0)<(g|0));f=c[m>>2]|0;if(a[h>
x3e;0]|0){c[(c[f+160>>2]|0)+216+4>>2]=65536;c[(c[(c[m>>2]|0)+160>>2]|0)+216+8>>
;2]=65536;Ss(c[(c[q>>2]|0)+20>>2]|0,c[(c[q>>2]|0)+16>>2]|0,e[(c[q>>2]|0)+8>
;>1]<<3|0)|0}else{c[(c[(c[m>>2]|0)+160>>2]|0)+216+4>>2]=c[(c[f+4>>2]|0)+44
+4>>2];c[(c[(c[m>>2]|0)+160>>2]|0)+216+8>>2]=c[(c[(c[m>>2]|0)+4>>2]|
0)+44+8>>2]}c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-3<<3
)>>2]=(c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-3<<3)>
;>2]|0)+32&-64;c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<
;3)+4>>2]=(c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<3)+
4>>2]|0)+32&-64;if((c[k>>2]|0)>>>0>0){c[j>>2]=c[(c[m>>2]|0)+12
x3e;>2];j=(c[j>>2]|0)+56|0;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>
;>2]=c[j+8>>2];c[n+12>>2]=c[j+12>>2];c[n+16>>2]=c[j+16>>2];c[p>>
;2]=Xg(c[(c[m>>2]|0)+160>>2]|0,3,c[(c[(c[m>>2]|0)+160>>2]|0)+392>>2]|0,c[k>
;>2]|0)|0;if(c[p>>2]|0){c[l>>2]=c[p>>2];q=c[l>>2]|0;i=r;return q|0}a[(c[(c[m>
x3e;2]|0)+160>>2]|0)+560>>0]=a[h>>0]|0;f=(c[(c[m>>2]|0)+160>>2]|0)+144|0;b=c[q
>>2]|0;g=f+36|0;do{c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0}while((f|0)<(g|0));if(c[(c[m>>2]|
0)+16>>2]&1|0)f=0;else f=(d[(c[(c[m>>2]|0)+4>>2]|0)+292>>0]|0)!=0;a[o>>0]=
f&1;c[p>>2]=kh(c[(c[m>>2]|0)+160>>2]|0,a[o>>0]|0)|0;if(c[p>>2]|0?d[(c[(c[
m>>2]|0)+160>>2]|0)+561>>0]|0:0){c[l>>2]=c[p>>2];q=c[l>>2]|0;i=r;return
q|0}p=c[n+8>>2]|0;a[p>>0]=a[p>>0]|(c[(c[(c[m>>2]|0)+160>>2]|0)+284+56>
x3e;2]<<5|4)}if(!(a[(c[m>>2]|0)+65>>0]|0)){p=(c[m>>2]|0)+68|0;o=(c[(c[q>>2]|0)+
16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-4<<3)|0;c[p>>2]=c[o>>2];c[p+4>
;>2]=c[o+4>>2];p=(c[m>>2]|0)+76|0;o=(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|
0)+8>>1]|0)-3<<3)|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];p=(c[m>
x3e;2]|0)+184|0;o=(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-2<<3)|0;c[
p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];p=(c[m>>2]|0)+192|0;q=(c[(c[q>>2]|
0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<3)|0;c[p>>2]=c[q>>2];c[p+4
x3e;>2]=c[q+4>>2]}c[l>>2]=0;q=c[l>>2]|0;i=r;return q|0}function jh(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;l=i;i=i+32|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[f>>2]=a;c[g>>2]=b;c[
h>>2]=d;c[j>>2]=e;a:do if(c[h>>2]|0){c[k>>2]=0;while(1){if((c[k>>2]|0)>
x3e;>0>=(c[f>>2]|0)>>>0)break a;a=(c[g>>2]|0)+(c[k>>2]<<3)|0;c[
a>>2]=(c[a>>2]|0)+(c[h>>2]|0);c[k>>2]=(c[k>>2]|0)+1}}while(0);if(!(c[j>
x3e;2]|0)){i=l;return}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=(c[f>>2]|0)>
x3e;>0)break;a=(c[g>>2]|0)+(c[k>>2]<<3)+4|0;c[a>>2]=(c[a>>2]|0)+(c[j>
;>2]|0);c[k>>2]=(c[k>>2]|0)+1}i=l;return}function kh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16
|0;g=k+8|0;h=k+4|0;j=k+12|0;f=k;c[h>>2]=d;a[j>>0]=e;d=Zg(c[h>>2]|0,3,0)|0;c[f>>2]=d;if(d
|0){c[g>>2]=c[f>>2];j=c[g>>2]|0;i=k;return j|0}else{e=(c[h>>2]|0)+36|0;f=(c[h>>
;2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(d|0));e=(c[h>>2]|0)+72|
0;f=(c[h>>2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(d|0));e=(c[h
x3e;>2]|0)+108|0;f=(c[h>>2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)
x3c;(d|0));b[(c[h>>2]|0)+284+60>>1]=1;b[(c[h>>2]|0)+284+62>>1]=1;b[(c[h>>2]|0)+
284+64>>1]=1;b[(c[h>>2]|0)+284+10>>1]=16384;b[(c[h>>2]|0)+284+10+2>>1]=0;d=(c[
h>>2]|0)+284+14|0;f=(c[h>>2]|0)+284+10|0;b[d>>1]=b[f>>1]|0;b[d+2>>1]=b[f+2>
;>1]|0;d=(c[h>>2]|0)+284+6|0;f=(c[h>>2]|0)+284+10|0;b[d>>1]=b[f>>1]|0;b[d+2>
x3e;1]=b[f+2>>1]|0;c[(c[h>>2]|0)+284+28>>2]=1;c[(c[h>>2]|0)+284+20>>2]=1;c[(c[
h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+428>>2]=0;a[j>>0]=a[j>>0]|0;c[g>
;>2]=Ta[c[(c[c[h>>2]>>2]|0)+688>>2]&63](c[h>>2]|0)|0;j=c[g>>2]|0;i=k
;return j|0}return 0}function lh(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;E=i;i=i+80|0;l=E+72|0;m=E+68|0;n=E+64|0;o=E+60|0;p=E+56|0;r=E+52|0;q=E+48|0;x=E+44|0;s=E+76|0;A=E+40|0
;C=E+36|0;k=E+32|0;t=E+28|0;u=E+24|0;y=E+20|0;z=E+16|0;v=E+12|0;w=E+8|0;B=E+4|0;D=E;c[m>>2]=f;c[n>>2]=g;c[o
x3e;>2]=h;c[p>>2]=j;c[r>>2]=c[(c[m>>2]|0)+12>>2];c[q>>2]=c[(c[r>>
;2]|0)+20+4>>2];c[x>>2]=b[(c[r>>2]|0)+20+2>>1];a[s>>0]=e[(c[n>>2]|0)+
4>>1]&200;a:do if(a[s>>0]|0){c[k>>2]=c[p>>2];while(1){if((c[k>>2]|0)>
;>>0>=(c[x>>2]|0)>>>0)break a;Lb((c[q>>2]|0)+(c[k>>2]<<3)|
0,(c[n>>2]|0)+16|0);c[k>>2]=(c[k>>2]|0)+1}}while(0);k=c[(c[n>>2]|0)+8>>2]|0;do
if(e[(c[n>>2]|0)+4>>1]&2|0){c[A>>2]=k;c[C>>2]=c[(c[n>>2]|0)+12>>
;2];if(!((c[A>>2]|0)!=0|(c[C>>2]|0)!=0)){c[l>>2]=0;D=c[l>>2]|0;i=E;return D|0}if(d[s>
;>0]|0?e[(c[n>>2]|0)+4>>1]&2048|0:0){z=Mb(c[(c[n>>2]|0)+16>>2]|0,c[(c[n>
x3e;2]|0)+16>>2]|0)|0;c[v>>2]=Zb(z+(Mb(c[(c[n>>2]|0)+16+4>>2]|0,c[(c[n>>2]|0)+
16+4>>2]|0)|0)|0)|0;z=Mb(c[(c[n>>2]|0)+16+12>>2]|0,c[(c[n>>2]|0)+16+12>>2]|0)|
0;c[w>>2]=Zb(z+(Mb(c[(c[n>>2]|0)+16+8>>2]|0,c[(c[n>>2]|0)+16+8>>2]|0)|0)|0)|0;
c[A>>2]=Mb(c[A>>2]|0,c[v>>2]|0)|0;c[C>>2]=Mb(c[C>>2]|0,c[w>>2]|0)|0}
if((c[(c[m>>2]|0)+16>>2]&1|0)==0?(c[B>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+44+4
x3e;>2],c[D>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+44+8>>2],c[A>>2]=Mb(c[A>
x3e;2]|0,c[B>>2]|0)|0,c[C>>2]=Mb(c[C>>2]|0,c[D>>2]|0)|0,e[(c[n>>2]|0)+4>
x3e;1]&4|0):0){c[A>>2]=(c[A>>2]|0)+32&-64;c[C>>2]=(c[C>>2]|0)+32&-64}}else
{c[t>>2]=k;c[u>>2]=c[(c[n>>2]|0)+12>>2];c[t>>2]=(c[t>>2]|0)+(c[o>
;>2]|0);c[u>>2]=(c[u>>2]|0)+(c[p>>2]|0);if((c[t>>2]|0)>>>0<(c[p
>>2]|0)>>>0?(c[u>>2]|0)>>>0<(c[x>>2]|0)>>>0:0){c
[y>>2]=(c[(c[r>>2]|0)+20+4>>2]|0)+(c[t>>2]<<3);c[z>>2]=(c[(c[r>
x3e;2]|0)+20+4>>2]|0)+(c[u>>2]<<3);c[A>>2]=(c[c[y>>2]>>2]|0)-(c[c[z
x3e;>2]>>2]|0);c[C>>2]=(c[(c[y>>2]|0)+4>>2]|0)-(c[(c[z>>2]|0)+4>>
;2]|0);break}c[l>>2]=21;D=c[l>>2]|0;i=E;return D|0}while(0);if((c[A>>2]|0)!=0|(c[C>>2]|0
)!=0)jh((c[x>>2]|0)-(c[p>>2]|0)|0,(c[q>>2]|0)+(c[p>>2]<<3)|0,c[A>>2]|
0,c[C>>2]|0);c[l>>2]=0;D=c[l>>2]|0;i=E;return D|0}function mh(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;u=i;i=i+48|0;k=u+32|0;l=u+28|0;m=u+24|0;n=u+20|0;o=u+16|0;j=u+12|0;p=u+8|0;s=u+4|0;r=u+
38|0;q=u+36|0;t=u;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[j>>2]=(c[(c[l>>2]|0)+12>
;>2]|0)+20;if(((b[(c[j>>2]|0)+2>>1]|0)+4|0)!=0?((b[(c[(c[l>>2]|0)+12>>2]|0)+20+2>
;>1]|0)+(b[(c[(c[l>>2]|0)+12>>2]|0)+56+2>>1]|0)+((b[(c[j>>2]|0)+2>>1]|0)+
4)|0)>>>0>(c[(c[(c[l>>2]|0)+12>>2]|0)+4>>2]|0)>>>0:0)f=kc(c[(c[
l>>2]|0)+12>>2]|0,(b[(c[j>>2]|0)+2>>1]|0)+4|0,0)|0;else f=0;c[o>>2]=f;if(c[o
x3e;>2]|0){c[k>>2]=c[o>>2];t=c[k>>2]|0;i=u;return t|0}g=(c[(c[j>>2]|0)+4>>
;2]|0)+(b[(c[j>>2]|0)+2>>1]<<3)|0;h=(c[l>>2]|0)+68|0;c[g>>2]=c[h>>2];
c[g+4>>2]=c[h+4>>2];g=(c[(c[j>>2]|0)+4>>2]|0)+((b[(c[j>>2]|0)+2>>1]|
0)+1<<3)|0;h=(c[l>>2]|0)+76|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];g=(
c[(c[j>>2]|0)+4>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+2<<3)|0;h=(c[l>>2]|0
)+184|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];g=(c[(c[j>>2]|0)+4>>2]|0
)+((b[(c[j>>2]|0)+2>>1]|0)+3<<3)|0;h=(c[l>>2]|0)+192|0;c[g>>2]=c[h>>
2];c[g+4>>2]=c[h+4>>2];a[(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>>2]|0)+2>>1
]|0)>>0]=0;a[(c[(c[j>>2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+1)>>0]=
0;a[(c[(c[j>>2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+2)>>0]=0;a[(c[(c[j>
x3e;2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+3)>>0]=0;c[s>>2]=c[(c[l>>
;2]|0)+24>>2];j=Kc(c[s>>2]|0,c[(c[l>>2]|0)+168>>2]|0)|0;c[o>>2]=j;if((j|0)==0?(
b[r>>1]=Pc(c[s>>2]|0,o)|0,(c[o>>2]|0)==0):0){b[q>>1]=b[(c[c[l>>2]>>2
]|0)+260+26>>1]|0;f=e[r>>1]|0;if((e[r>>1]|0)>(e[q>>1]|0)){if((f|0)>(c[(c[l>
;>2]|0)+28>>2]|0)){c[k>>2]=22;t=c[k>>2]|0;i=u;return t|0}c[t>>2]=c[(c[(c[l>>
;2]|0)+160>>2]|0)+388>>2];c[o>>2]=Wg(c[(c[(c[l>>2]|0)+160>>2]|0)+8>>
2]|0,t,1,(c[(c[l>>2]|0)+160>>2]|0)+392|0,e[r>>1]|0)|0;c[(c[(c[l>>2]|0)+160>>2]|
0)+388>>2]=c[t>>2]&65535;if(c[o>>2]|0){c[k>>2]=c[o>>2];t=c[k>>2
]|0;i=u;return t|0}}else if(!f){c[k>>2]=0;t=c[k>>2]|0;i=u;return t|0}t=Rc(c[s>>2]|0,c[(c[(c[l>
;>2]|0)+160>>2]|0)+392>>2]|0,e[r>>1]|0)|0;c[o>>2]=t;if(t|0){c[k>>2]=c[o
x3e;>2];t=c[k>>2]|0;i=u;return t|0}c[(c[(c[l>>2]|0)+8>>2]|0)+136>>2]=c[(c[(c[l>
;>2]|0)+160>>2]|0)+392>>2];c[(c[(c[l>>2]|0)+8>>2]|0)+140>>2]=e[r>>
;1];hh((c[l>>2]|0)+124|0,(c[(c[l>>2]|0)+12>>2]|0)+20|0,c[m>>2]|0,c[n>>2]|0);c[
p>>2]=c[m>>2];while(1){if((c[p>>2]|0)>>>0>=(e[(c[l>>2]|0)+124+8>
;>1]|0)>>>0)break;t=(c[(c[l>>2]|0)+124+24>>2]|0)+(c[p>>2]|0)|0;a[t>>
0]=d[t>>0]&-25;c[p>>2]=(c[p>>2]|0)+1}t=(c[l>>2]|0)+124+8|0;b[t>>1]=(e[t
x3e;>1]|0)+4;c[k>>2]=ih(c[l>>2]|0,1)|0;t=c[k>>2]|0;i=u;return t|0}c[k>>2]=c[o>
x3e;2];t=c[k>>2]|0;i=u;return t|0}function nh(a,f){a=a|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;y=i;i=i+96|0;m=y+88|0;n=y+84|0;o=y+80|0;h=y+64|0;r=y+60|0;x=y+56|0;s=y+52|0;j=y+48|0;g=y+44|0;k=y+40|0;w=y+
36|0;p=y+32|0;t=y+28|0;u=y+24|0;v=y+8|0;q=y;c[n>>2]=a;c[o>>2]=f;c[r>>2]=c[c[n>>2]>
x3e;2];c[s>>2]=c[(c[n>>2]|0)+8>>2];c[j>>2]=c[(c[n>>2]|0)+4>>2];c[x
x3e;>2]=65536;if(!(c[(c[n>>2]|0)+16>>2]&1))c[x>>2]=c[(c[j>>2]|0)+12+8>>
;2];if((c[(c[s>>2]|0)+72>>2]|0)!=1668246896)_d((c[s>>2]|0)+108|0,h);else{a=(c[n>>2]|0)+36
|0;c[h>>2]=c[a>>2];c[h+4>>2]=c[a+4>>2];c[h+8>>2]=c[a+8>>2];c[h+12>
;>2]=c[a+12>>2]}c[g>>2]=c[(c[n>>2]|0)+60>>2];if(c[(c[r>>2]|0)+468+12>
;>2]|0?(c[(c[n>>2]|0)+16>>2]&512|0)==0:0)c[g>>2]=e[(c[r>>2]|0)+216+10>>
;1];c[(c[s>>2]|0)+56>>2]=c[g>>2];c[(c[s>>2]|0)+24+8>>2]=c[h>>2];c[(c
[s>>2]|0)+24+12>>2]=c[h+12>>2];c[(c[s>>2]|0)+24+16>>2]=(c[(c[n>>2]|0
)+76>>2]|0)-(c[(c[n>>2]|0)+68>>2]|0);if(((c[(c[r>>2]|0)+468+12>>2]|0)==0?(c[(c
[n>>2]|0)+16>>2]&2|0)==0:0)?(c[k>>2]=oh(c[r>>2]|0,e[(c[j>>2]|0)+12>
x3e;1]|0,c[o>>2]|0)|0,c[k>>2]|0):0)c[(c[s>>2]|0)+24+16>>2]=d[c[k>>2]>>
;0]<<6;c[(c[s>>2]|0)+24>>2]=(c[h+8>>2]|0)-(c[h>>2]|0);c[(c[s>>2]|0)+
24+4>>2]=(c[h+12>>2]|0)-(c[h+4>>2]|0);do if(d[(c[r>>2]|0)+296>>0]|0?(e[(c[r>
;>2]|0)+300+34>>1]|0)>0:0){c[w>>2]=((Vb((c[(c[n>>2]|0)+184+4>>2]|0)-(c[h+12>
;>2]|0)|0,c[x>>2]|0)|0)&65535)<<16>>16;if((c[(c[n>>2]|0)+184+4>>2]|0
)<=(c[(c[n>>2]|0)+192+4>>2]|0)){c[p>>2]=0;break}else{c[p>>2]=(Vb((c[(c[n>>
;2]|0)+184+4>>2]|0)-(c[(c[n>>2]|0)+192+4>>2]|0)|0,c[x>>2]|0)|0)&65535;break}}else l
=18;while(0);if((l|0)==18){c[t>>2]=((Vb((c[h+12>>2]|0)-(c[h+4>>2]|0)|0,c[x>>2]|0)|0)&
;65535)<<16>>16;g=c[r>>2]|0;if((e[(c[r>>2]|0)+368>>1]|0)!=65535)c[p>>
;2]=(b[g+368+70>>1]|0)-(b[(c[r>>2]|0)+368+72>>1]|0);else c[p>>2]=(b[g+216+4>>1
]|0)-(b[(c[r>>2]|0)+216+6>>1]|0);c[w>>2]=((c[p>>2]|0)-(c[t>>2]|0)|0)/2|0}c[u
x3e;>2]=c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2];do if(c[u>>2]|0?c[(c[c[u>>2]
x3e;>2]|0)+8>>2]|0:0){c[v>>2]=0;c[v+4>>2]=c[w>>2];c[v+8>>2]=c[p>>
;2];c[q>>2]=Wa[c[(c[c[u>>2]>>2]|0)+8>>2]&31](c[(c[u>>2]|0)+4>>2
]|0,c[o>>2]|0,1,v)|0;if(!(c[q>>2]|0)){c[w>>2]=c[v+4>>2];c[p>>2]=c[v+8>>
;2];break}c[m>>2]=c[q>>2];x=c[m>>2]|0;i=y;return x|0}while(0);c[(c[s>>2]|0)+60>>
;2]=c[p>>2];if(!(c[(c[n>>2]|0)+16>>2]&1)){c[w>>2]=Mb(c[w>>2]|0,c[x>
x3e;2]|0)|0;c[p>>2]=Mb(c[p>>2]|0,c[x>>2]|0)|0}c[(c[s>>2]|0)+24+20>>2]=(c[(c[s
x3e;>2]|0)+24+8>>2]|0)-((c[(c[s>>2]|0)+24+16>>2]|0)/2|0);c[(c[s>>2]|0)+24+24>
x3e;2]=c[w>>2];c[(c[s>>2]|0)+24+28>>2]=c[p>>2];c[m>>2]=0;x=c[m>>2]|0
;i=y;return x|0}function oh(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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;h=o+
16|0;j=o+12|0;m=o+8|0;l=o+4|0;k=o;c[f>>2]=a;c[g>>2]=b;c[h>>2]=e;c[m>>2]=0;c[l>>
;2]=c[(c[f>>2]|0)+752>>2];c[k>>2]=(c[(c[f>>2]|0)+740>>2]|0)+8;c[j>>2
]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[f>>2]|0)+748>>2]|0)>>>0){
n=7;break}if((d[(c[(c[f>>2]|0)+756>>2]|0)+(c[j>>2]|0)>>0]|0|0)==(c[g>>2]|0))break
;c[j>>2]=(c[j>>2]|0)+1}if((n|0)==7){n=c[m>>2]|0;i=o;return n|0}c[h>>2]=(c[h>>2
]|0)+2;if((c[h>>2]|0)>>>0>=(c[l>>2]|0)>>>0){n=c[m>>2]|0;i=o;return
n|0}n=(c[k>>2]|0)+(_(c[j>>2]|0,c[l>>2]|0)|0)|0;c[m>>2]=n+(c[h>>2]|0);n=c[m>
;>2]|0;i=o;return n|0}function ph(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;l=i;i=i+32|0;m=l+20|0;f=
l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>
;2]=c[m>>2];c[k>>2]=c[(c[j>>2]|0)+532>>2];c[c[h>>2]>>2]=0;c[(c[h>
;>2]|0)+4>>2]=0;if(!(c[k>>2]|0)){i=l;return 0}m=Oa[c[(c[k>>2]|0)+128>>2]&63](c
[j>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;c[c[h>>2]>>2]=m;i=l;return 0}function qh(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,s=0,t=0,u=0,v=0;t=i;i=i+48|0;v=t+24|0;j=t+20|0;k=t+16
|0;u=t+12|0;l=t+8|0;r=t+4|0;p=t;o=t+36|0;s=t+34|0;m=t+32|0;q=t+30|0;n=t+28|0;c[v>>2]=b;c[j>>2]=d;c[k>
x3e;2]=f;c[u>>2]=g;c[l>>2]=h;c[p>>2]=c[v>>2];a[o>>0]=((c[u>>2]&
512|0)!=0^1)&1;b=(c[u>>2]&16|0)!=0;c[r>>2]=0;if(b){while(1){if((c[r>>2]|0)>>
x3e;0>=(c[k>>2]|0)>>>0)break;dh(c[p>>2]|0,(c[j>>2]|0)+(c[r>>2]|0)|0,
a[o>>0]|0,s,m);c[(c[l>>2]|0)+(c[r>>2]<<2)>>2]=e[m>>1];c[r>>
;2]=(c[r>>2]|0)+1}i=t;return 0}else{while(1){if((c[r>>2]|0)>>>0>=(c[k>>2]|0)
x3e;>>0)break;ch(c[p>>2]|0,(c[j>>2]|0)+(c[r>>2]|0)|0,a[o>>0]|0,q,n);c[(c[l>
;>2]|0)+(c[r>>2]<<2)>>2]=e[n>>1];c[r>>2]=(c[r>>2]|0)+1}i=t;return
0}return 0}function rh(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;m=i;i=i+32|0;d=m+28|0;e=m+24|0;f=m+20|0;l=m+16|
0;g=m+12|0;k=m+8|0;h=m+4|0;j=m;c[e>>2]=a;c[f>>2]=b;c[l>>2]=c[e>>2];c[g>>2]=0;do
if(c[(c[c[e>>2]>>2]|0)+8>>2]&2|0){c[k>>2]=c[c[e>>2]>>2];c[h>
;>2]=c[(c[k>>2]|0)+532>>2];c[g>>2]=Oa[c[(c[h>>2]|0)+148>>2]&63](c[k
x3e;>2]|0,c[f>>2]|0,j)|0;if(c[g>>2]|0){c[(c[l>>2]|0)+112>>2]=-1;break}c[d>>
;2]=sh(c[e>>2]|0,c[j>>2]|0)|0;l=c[d>>2]|0;i=m;return l|0}while(0);Ed(c[c[e>>2]>>
;2]|0,c[f>>2]|0);if(c[(c[c[e>>2]>>2]|0)+8>>2]&1|0)c[g>>2]=th(c[l>>
;2]|0)|0;c[d>>2]=c[g>>2];l=c[d>>2]|0;i=m;return l|0}function sh(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;l=i;i=i+32|0;d=l+24|0;e=l+20|0;j=l+16|0;k=l+12|0;f=l+8|0;h=l+4|0;g=l;c[d>>2]=a;c[e>>2]=b;
c[j>>2]=c[c[d>>2]>>2];c[k>>2]=c[d>>2];c[f>>2]=0;c[(c[k>>2]|
0)+112>>2]=c[e>>2];if(c[(c[c[d>>2]>>2]|0)+8>>2]&1|0){Cd(c[c[d>>
2]>>2]|0,c[e>>2]|0);th(c[k>>2]|0)|0;k=c[f>>2]|0;i=l;return k|0}c[h>>2]=c[(c[j
x3e;>2]|0)+532>>2];c[g>>2]=(c[d>>2]|0)+12;c[f>>2]=Oa[c[(c[h>>2]|0)+152>
;>2]&63](c[j>>2]|0,c[e>>2]|0,c[g>>2]|0)|0;if(!(c[f>>2]|0)){k=c[f>>2]|
0;i=l;return k|0}c[(c[k>>2]|0)+112>>2]=-1;k=c[f>>2]|0;i=l;return k|0}function th(d){d=d|0;var f=0,
g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;g=l+16|0;h=l+12|0;f=l+8|0;j=l+4|0;k=l;c[h>>2]=d;c[j>>2]=0;a[(c[h>
x3e;2]|0)+72+36>>0]=0;c[f>>2]=c[c[h>>2]>>2];c[k>>2]=(c[h>>2]|0)+44;d
=c[k>>2]|0;m=(c[h>>2]|0)+12|0;c[d>>2]=c[m>>2];c[d+4>>2]=c[m+4>>2];c[
d+8>>2]=c[m+8>>2];c[d+12>>2]=c[m+12>>2];c[d+16>>2]=c[m+16>>2];c[d+20
>>2]=c[m+20>>2];c[d+24>>2]=c[m+24>>2];if((e[c[k>>2]>>1]|0)>=1?(
e[(c[k>>2]|0)+2>>1]|0)>=1:0){if(e[(c[f>>2]|0)+160+16>>1]&8|0){m=Vb(e[c[k>
x3e;2]>>1]<<6,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[k>>2]|0)+4>>2]=m;m=Vb(e
[(c[k>>2]|0)+2>>1]<<6,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[k>>2]|0)+8>
;>2]=m;m=(Mb(b[(c[f>>2]|0)+70>>1]|0,c[(c[k>>2]|0)+8>>2]|0)|0)+32&-64;c[(c[k>
;>2]|0)+12>>2]=m;m=(Mb(b[(c[f>>2]|0)+72>>1]|0,c[(c[k>>2]|0)+8>>2]|0)|0)+32
&-64;c[(c[k>>2]|0)+16>>2]=m;m=(Mb(b[(c[f>>2]|0)+74>>1]|0,c[(c[k>>2]|0)+8
x3e;>2]|0)|0)+32&-64;c[(c[k>>2]|0)+20>>2]=m;m=(Mb(b[(c[f>>2]|0)+76>>1]|0,c[(c[
k>>2]|0)+4>>2]|0)|0)+32&-64;c[(c[k>>2]|0)+24>>2]=m}f=c[k>>2]|0;if((e[c[k
x3e;>2]>>1]|0)>=(e[(c[k>>2]|0)+2>>1]|0)){c[(c[h>>2]|0)+72+16>>2]=c[f
+4>>2];b[(c[h>>2]|0)+72+8>>1]=b[c[k>>2]>>1]|0;c[(c[h>>2]|0)+72>
x3e;2]=65536;m=xb(e[(c[k>>2]|0)+2>>1]|0,65536,e[c[k>>2]>>1]|0)|0;c[(c[h>>2]|0)+
72+4>>2]=m}else{c[(c[h>>2]|0)+72+16>>2]=c[f+8>>2];b[(c[h>>2]|0)+72+8>>
;1]=b[(c[k>>2]|0)+2>>1]|0;m=xb(e[c[k>>2]>>1]|0,65536,e[(c[k>>2]|0)+2>>
;1]|0)|0;c[(c[h>>2]|0)+72>>2]=m;c[(c[h>>2]|0)+72+4>>2]=65536}a[(c[h>>2]|0)+301
>>0]=0;if(!(c[j>>2]|0))a[(c[h>>2]|0)+72+36>>0]=1;c[g>>2]=c[j>>2];m=c
[g>>2]|0;i=l;return m|0}c[g>>2]=151;m=c[g>>2]|0;i=l;return m|0}function uh(a){a=a|0;var b=0,d=0;b=
i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return 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[d>>2]=c[d>>2];i=b;return}function wh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=
0;j=i;i=i+32|0;h=j+16|0;d=j+12|0;e=j+8|0;g=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=qc(740,c[e>
x3e;2]|0)|0;if(c[f>>2]|0){c[h>>2]=c[f>>2];h=c[h>>2]|0;i=j;return h|0}if(!(c[d>>
;2]|0)){c[h>>2]=0;h=c[h>>2]|0;i=j;return h|0}c[g>>2]=Wc(c[(c[d>>2]|0)+4>>2]|0,
11340)|0;if(c[g>>2]|0)d=Ya[c[(c[c[g>>2]>>2]|0)+32>>2]&127](c[g>>2]|0,c[e
x3e;>2]|0)|0;else d=0;c[h>>2]=d;h=c[h>>2]|0;i=j;return h|0}function xh(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;k=n+12|0;j=n+8|0;l=n+4|0;m=n;c[f>>2]=d;c[g>>2]=
e;c[h>>2]=c[(c[f>>2]|0)+692>>2];c[k>>2]=0;do if(c[h>>2]|0?(c[(c[h>>2
]|0)+2060>>2]|0)==0:0){c[j>>2]=(c[h>>2]|0)+1324;c[m>>2]=c[(c[f>>2]|0)+100>
;>2];c[l>>2]=bc(c[m>>2]|0,32,k)|0;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}else{m=yh
(c[h>>2]|0,c[c[j>>2]>>2]|0)|0;c[c[l>>2]>>2]=m;m=yh(c[h>>2]|0,c[(c[j
x3e;>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+4>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+
12>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+16>>2
]|0)|0;c[(c[l>>2]|0)+12>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+20>>2]|0)|0;c[(c[l
x3e;>2]|0)+16>>2]=m;c[(c[l>>2]|0)+20>>2]=c[(c[j>>2]|0)+28>>2];a[(c[l>
;>2]|0)+24>>0]=a[(c[j>>2]|0)+24>>0]|0;b[(c[l>>2]|0)+26>>1]=c[(c[j>
x3e;2]|0)+32>>2];b[(c[l>>2]|0)+28>>1]=c[(c[j>>2]|0)+36>>2];c[(c[h>>2
]|0)+2060>>2]=c[l>>2];break}}while(0);if(!(c[h>>2]|0)){m=c[k>>2]|0;i=n;return m|0}m=c[g
x3e;>2]|0;l=c[(c[h>>2]|0)+2060>>2]|0;c[m>>2]=c[l>>2];c[m+4>>2]=c[l+4>
;>2];c[m+8>>2]=c[l+8>>2];c[m+12>>2]=c[l+12>>2];c[m+16>>2]=c[l+16>>
;2];c[m+20>>2]=c[l+20>>2];c[m+24>>2]=c[l+24>>2];c[m+28>>2]=c[l+28>>2
];m=c[k>>2]|0;i=n;return m|0}function yh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>
;>2]=a;c[f>>2]=b;do if((c[f>>2]|0)!=65535){a=c[e>>2]|0;if((c[f>>2]|0)>>
x3e;0>390){c[d>>2]=zh(a,(c[f>>2]|0)-391|0)|0;break}if(c[a+2056>>2]|0){c[d>>2]=Ta[c[(
c[(c[e>>2]|0)+2056>>2]|0)+20>>2]&63](c[f>>2]|0)|0;break}else{c[d>>2]=0;break
}}else c[d>>2]=0;while(0);i=g;return c[d>>2]|0}function zh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f
+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if((c[e>>2]|0)>>>0>=(c[(c[d>>2]|0)+1312
>>2]|0)>>>0){a=0;i=f;return a|0}a=c[(c[(c[d>>2]|0)+1316>>2]|0)+(c[e>>2]
x3c;<2)>>2]|0;i=f;return a|0}function Ah(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]&512|0)>0|0}function Bh(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[(c[e>>2]|0)+692>>2];i=d;return c[(c[b>>2]|0)+1304>>2]|0}
function Ch(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;p=i;i=i+32|0;q=p+24|0;h=p+20|0;j=p+16|0;k=p
+12|0;m=p+8|0;n=p+4|0;o=p+28|0;l=p;c[q>>2]=a;c[h>>2]=d;c[j>>2]=f;c[k>>2]=g;c[m>>
;2]=c[(c[q>>2]|0)+692>>2];if(!(c[(c[m>>2]|0)+2056>>2]|0)){c[l>>2]=2;q=c[l>
;>2]|0;i=p;return q|0}b[o>>1]=b[(c[(c[m>>2]|0)+1152+8>>2]|0)+(c[h>>2]<<1)
x3e;>1]|0;c[n>>2]=yh(c[m>>2]|0,e[o>>1]|0)|0;if(c[n>>2]|0)pe(c[j>>2]|0,c[n
>>2]|0,c[k>>2]|0)|0;c[l>>2]=0;q=c[l>>2]|0;i=p;return q|0}function Dh(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,q=0,r=0;o=i;i=i+48|0;m=o+36|0;r=o+32|0;f=o+28|0;g=o+24|0;h=o+20|0;k=o+16|0;j=o+12|0;l=o
+40|0;n=o+8|0;q=o+4|0;p=o;c[r>>2]=a;c[f>>2]=d;c[g>>2]=c[(c[r>>2]|0)+692>>2];c[
h>>2]=(c[g>>2]|0)+1152;c[q>>2]=c[(c[r>>2]|0)+96>>2];c[p>>2]=Vd(c[q
x3e;>2]|0,71003)|0;c[k>>2]=c[p>>2];if(!(c[k>>2]|0)){c[m>>2]=0;r=c[m>>2]|0
;i=o;return r|0}c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0>=(c[(c[g>>2]|0)+12>
x3e;2]|0)>>>0){f=12;break}b[l>>1]=b[(c[(c[h>>2]|0)+8>>2]|0)+(c[n>>2]<
;<1)>>1]|0;if((e[l>>1]|0|0)>390)c[j>>2]=zh(c[g>>2]|0,(e[l>>1]|0)-391
|0)|0;else c[j>>2]=Ta[c[(c[k>>2]|0)+20>>2]&63](e[l>>1]|0)|0;if(c[j>>2]|0?(
Kr(c[f>>2]|0,c[j>>2]|0)|0)==0:0){f=10;break}c[n>>2]=(c[n>>2]|0)+1}if((f|0)==10){c[m>
;>2]=c[n>>2];r=c[m>>2]|0;i=o;return r|0}else if((f|0)==12){c[m>>2]=0;r=c[m>>2]|0;i=
o;return r|0}return 0}function Eh(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;l=i;i=i+32|0;d=l+28|0;e=l+24|0;f=l+20
|0;g=l+16|0;m=l+12|0;h=l+8|0;k=l+4|0;j=l;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[d>>2];c[g>
x3e;2]=0;c[m>>2]=c[c[f>>2]>>2];c[h>>2]=c[(c[(c[m>>2]|0)+96>>2]|0)+4
x3e;>2];c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;if((c[(c[f>>2]|0)+12>
x3e;2]|0)==828){m=c[g>>2]|0;i=l;return m|0}if((c[(c[f>>2]|0)+12>>2]|0)==868){m=c[g>>2]|0
;i=l;return m|0}c[k>>2]=Wc(c[h>>2]|0,11340)|0;c[j>>2]=Vd(c[k>>2]|0,11426)|0;if(!(c[j>
;>2]|0)){m=c[g>>2]|0;i=l;return m|0}if(!(c[c[j>>2]>>2]|0)){m=c[g>>2]|0;i=l;return m
|0}c[g>>2]=Ya[c[c[j>>2]>>2]&127](c[d>>2]|0,c[e>>2]|0)|0;m=c[g>>
2]|0;i=l;return m|0}function Fh(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;f=b+4|0;e=b;c[d>>2]=a;c
[g>>2]=c[c[d>>2]>>2];c[f>>2]=c[(c[g>>2]|0)+692>>2];c[e>>2]=(
c[f>>2]|0)+116;c[(c[d>>2]|0)+16>>2]=(c[e>>2]|0)+524;i=b;return 0}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)+16>>2]=0;i=b;return}function Hh(a,b){a=a|0;b=b|0
;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=b;c[g>>2]=0;if((c[f>
x3e;2]|0)>>>0>=256){g=c[g>>2]|0;i=h;return g|0}c[g>>2]=e[(c[(c[d>>2]|0)+16>
;>2]|0)+(c[f>>2]<<1)>>1];g=c[g>>2]|0;i=h;return g|0}function Ih(a,b){a=a|0;b=b|0;var
d=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;f=l+16|0;g=l+12|0;j=l+8|0;d=l+4|0;h=l;c[f>>2]=a;c[g>>2]=b;c[j>
;>2]=0;c[d>>2]=c[c[g>>2]>>2];c[c[g>>2]>>2]=0;if((c[d>>2]|0)>
;>>0>=255){k=c[j>>2]|0;i=l;return k|0}c[h>>2]=(c[d>>2]|0)+1;while(1){if((c[h>
x3e;2]|0)>>>0>=256){k=7;break}c[j>>2]=e[(c[(c[f>>2]|0)+16>>2]|0)+(c[h>>
;2]<<1)>>1];d=c[h>>2]|0;if(c[j>>2]|0)break;c[h>>2]=d+1}if((k|0)==7){k=c[j>
;>2]|0;i=l;return k|0}c[c[g>>2]>>2]=d;k=c[j>>2]|0;i=l;return k|0}function Jh(a){a=a|0;var b=0
,d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;b=j+24|0;d=j+20|0;f=j+16|0;g=j+12|0;e=j+8|0;k=j+4|0;h=j;c[d>>2]=a;c[f>
x3e;2]=c[c[d>>2]>>2];c[g>>2]=c[(c[f>>2]|0)+100>>2];c[e>>2]=c[(c[f>
;>2]|0)+692>>2];c[k>>2]=(c[e>>2]|0)+1152;c[h>>2]=c[(c[e>>2]|0)+2056>
x3e;2];if(c[(c[k>>2]|0)+8>>2]|0){c[b>>2]=Sa[c[(c[h>>2]|0)+4>>2]&3](c[g>
;>2]|0,c[d>>2]|0,c[(c[e>>2]|0)+12>>2]|0,105,0,c[f>>2]|0)|0;k=c[b>>2]|0;i=
j;return k|0}else{c[b>>2]=163;k=c[b>>2]|0;i=j;return k|0}return 0}function Kh(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;k=d+16|0;h=d+12|0;g=d+8|0;j=d+4|0;f=d;c[k>>2]=a;c[h>>2]=b;c[g>>2]=c[(c
[k>>2]|0)+692>>2];c[j>>2]=(c[g>>2]|0)+1152;c[f>>2]=e[(c[(c[j>>2]|0)+
8>>2]|0)+(c[h>>2]<<1)>>1];b=yh(c[g>>2]|0,c[f>>2]|0)|0;i=d;return b|0
}function Lh(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]=c[c[d>>
;2]>>2];c[e>>2]=c[(c[f>>2]|0)+100>>2];Fb(c[e>>2]|0,c[(c[d>>2]|0)+20
x3e;>2]|0);c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>2]=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,j=0;d=i;i=i+32|0;f=d+16|0;e=d+12|0;j=d+8|0;h=d+4|0;g=d;c[f>>2]=a;c[e>>
2]=b;c[j>>2]=c[c[f>>2]>>2];c[h>>2]=c[(c[j>>2]|0)+692>>2];c[g>
x3e;2]=c[(c[h>>2]|0)+2056>>2];a=Ya[c[(c[g>>2]|0)+8>>2]&127](c[f>>2]|0,c[e
>>2]|0)|0;i=d;return a|0}function Nh(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;e=d+12|0;j=d+8
|0;h=d+4|0;g=d;c[f>>2]=a;c[e>>2]=b;c[j>>2]=c[c[f>>2]>>2];c[h>>2]=c[(
c[j>>2]|0)+692>>2];c[g>>2]=c[(c[h>>2]|0)+2056>>2];a=Ya[c[(c[g>>2]|0)+
12>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Oh(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;m=i;i=i+32|0;n=m+24|0;f=m+20|0;g=m+16|0;h=m+12|0;l=m+8|0;j=m+4|0;k=m;c[n>>2]=a;c
[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[l>>2]=0;c[j>>2]=c[(c[n>>2]|0)+692>
;>2];if(!(c[j>>2]|0)){n=c[l>>2]|0;i=m;return n|0}c[k>>2]=(c[j>>2]|0)+1324;if((c[(c[
k>>2]|0)+128>>2]|0)==65535){c[l>>2]=6;n=c[l>>2]|0;i=m;return n|0}if(c[f>>2]|0){
if(!(c[(c[j>>2]|0)+2064>>2]|0)){n=yh(c[j>>2]|0,c[(c[k>>2]|0)+128>>2]|0)|0;c[(c
[j>>2]|0)+2064>>2]=n}c[c[f>>2]>>2]=c[(c[j>>2]|0)+2064>>2]}if(c[g>
;>2]|0){if(!(c[(c[j>>2]|0)+2068>>2]|0)){n=yh(c[j>>2]|0,c[(c[k>>2]|0)+132>>
;2]|0)|0;c[(c[j>>2]|0)+2068>>2]=n}c[c[g>>2]>>2]=c[(c[j>>2]|0)+2068>>
2]}if(!(c[h>>2]|0)){n=c[l>>2]|0;i=m;return n|0}c[c[h>>2]>>2]=c[(c[k>>2]|0)+136
>>2];n=c[l>>2]|0;i=m;return n|0}function Ph(b,d){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;k=j+16
|0;e=j+12|0;h=j+8|0;f=j+4|0;g=j;c[k>>2]=b;c[e>>2]=d;c[h>>2]=0;c[f>>2]=c[(c[k>>
2]|0)+692>>2];a[c[e>>2]>>0]=0;if(!(c[f>>2]|0)){k=c[h>>2]|0;i=j;return k|0}c[g
x3e;>2]=(c[f>>2]|0)+1324;if((c[(c[g>>2]|0)+128>>2]|0)==65535){k=c[h>>2]|0;i=j;return
k|0}a[c[e>>2]>>0]=1;k=c[h>>2]|0;i=j;return k|0}function Qh(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;m=i;i=i+32|0;n=m+24|0;f=m+20|0;g=m+16|0;l=m+12|0;j=m+8|0;h=m+4|0;k=m;c[n>>2]=a;c[f>>2
]=b;c[g>>2]=d;c[l>>2]=0;c[j>>2]=c[(c[n>>2]|0)+692>>2];do if(c[j>>2]|
0){c[k>>2]=(c[j>>2]|0)+1324;if((c[(c[k>>2]|0)+128>>2]|0)==65535){c[l>>2]=6;break
}if((c[f>>2]|0)>>>0>(c[(c[j>>2]|0)+12>>2]|0)>>>0){c[l>>
;2]=6;break}c[h>>2]=e[(c[(c[j>>2]|0)+1152+8>>2]|0)+(c[f>>2]<<1)>>1];
if(c[g>>2]|0)c[c[g>>2]>>2]=c[h>>2]}while(0);i=m;return c[l>>2]|0}
function rm(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;L=i;i=i+128|0;N=L+116|0;M=L+112|0;j=L+108|0;D=L+104|0;v=L+100|0;g=L+96|0;h=L+92|0;y=L+88|0;
H=L+84|0;w=L+80|0;p=L+76|0;s=L+72|0;k=L+68|0;r=L+64|0;n=L+60|0;l=L+56|0;t=L+52|0;x=L+48|0;u=L+44|0;m=L+40|0;o=L+36|0;q=L+32|0;C=
L+28|0;z=L+24|0;E=L+20|0;G=L+16|0;F=L+120|0;A=L+12|0;I=L+8|0;B=L+4|0;J=L;c[N>>2]=e;c[M>>2]=f;c[j>>
2]=(c[N>>2]|0)+48+((c[M>>2]|0)*28|0);c[D>>2]=0;c[v>>2]=c[c[N>>2]>>2];
c[g>>2]=(c[(c[N>>2]|0)+112>>2]|0)+40+((c[M>>2]|0)*396|0);c[h>>2]=c[(c[j>
x3e;2]|0)+8>>2];c[y>>2]=(c[h>>2]|0)+((c[c[j>>2]>>2]|0)*52|0);c[(c[j>>
;2]|0)+12>>2]=0;f=c[N>>2]|0;if(!(c[M>>2]|0))f=c[f+4>>2]|0;else f=c[f+12>>2]|0;
c[w>>2]=f;c[p>>2]=Mb(c[(c[g>>2]|0)+204>>2]|0,c[w>>2]|0)|0;if((c[p>>2
]|0)>16)c[p>>2]=Vb(16,c[w>>2]|0)|0;else c[p>>2]=c[(c[g>>2]|0)+204>>2];c[H
>>2]=c[h>>2];while(1){if((c[H>>2]|0)>>>0>=(c[y>>2]|0)>>>
;0)break;c[s>>2]=0;c[k>>2]=65535;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[(c[j>
x3e;2]|0)+12>>2]|0))break;c[n>>2]=(c[(c[j>>2]|0)+20>>2]|0)+((c[r>>2]|0)*48|0);
do if((a[(c[n>>2]|0)+13>>0]|0)==(a[(c[H>>2]|0)+1>>0]|0)){c[l>>2]=(b[(c[H>
x3e;2]|0)+2>>1]|0)-(b[c[n>>2]>>1]|0);if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>
;>2]|0);if((c[l>>2]|0)<(c[p>>2]|0)?(c[l>>2]|0)<(c[k>>2]|0):0){c[t>
x3e;2]=c[(c[H>>2]|0)+20>>2];if(c[t>>2]|0){c[x>>2]=c[(c[n>>2]|0)+40>>
2];c[m>>2]=0;do{c[u>>2]=c[(c[x>>2]|0)+20>>2];if(c[u>>2]|0){if((b[(c[t>>
;2]|0)+2>>1]|0)>(b[(c[u>>2]|0)+2>>1]|0))f=(b[(c[t>>2]|0)+2>>1]|0)-(b[(c[u
>>2]|0)+2>>1]|0)|0;else f=(b[(c[u>>2]|0)+2>>1]|0)-(b[(c[t>>2]|0)+2>>
1]|0)|0;c[m>>2]=f;if((c[m>>2]|0)>=(c[p>>2]|0))break}N=c[(c[x>>2]|0)+16>>2
]|0;c[x>>2]=N}while((N|0)!=(c[(c[n>>2]|0)+40>>2]|0));if((c[m>>2]|0)>=(c[p>>
;2]|0))break}c[k>>2]=c[l>>2];c[s>>2]=c[n>>2]}}while(0);c[r>>2]=(c[r>>
;2]|0)+1}if(c[s>>2]|0){c[(c[H>>2]|0)+16>>2]=c[(c[s>>2]|0)+40>>2];c[(c[(c[s>
;>2]|0)+44>>2]|0)+16>>2]=c[H>>2];c[(c[s>>2]|0)+44>>2]=c[H>>2]}else
{c[D>>2]=Yl(c[j>>2]|0,b[(c[H>>2]|0)+2>>1]|0,a[(c[H>>2]|0)+1>>0]|0,c[
v>>2]|0,o)|0;if(c[D>>2]|0){K=69;break}f=c[o>>2]|0;e=f+48|0;do{c[f>>2]=0;f=f+4|0}while((f
|0)<(e|0));c[(c[o>>2]|0)+40>>2]=c[H>>2];c[(c[o>>2]|0)+44>>2]=c[H>>
;2];b[c[o>>2]>>1]=b[(c[H>>2]|0)+2>>1]|0;N=Mb(b[(c[H>>2]|0)+2>>1]|0,c
[w>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=N;c[(c[o>>2]|0)+4>>2]=N;c[(c[H>>2]|0
)+16>>2]=c[H>>2];a[(c[o>>2]|0)+13>>0]=a[(c[H>>2]|0)+1>>0]|0}c[H>
;>2]=(c[H>>2]|0)+52}if((K|0)==69){N=c[D>>2]|0;i=L;return N|0}c[q>>2]=c[(c[j>>2]|0)+
20>>2];c[C>>2]=(c[q>>2]|0)+((c[(c[j>>2]|0)+12>>2]|0)*48|0);c[z>>2]=c
[q>>2];while(1){if((c[z>>2]|0)>>>0>=(c[C>>2]|0)>>>0)break;c[H
x3e;>2]=c[(c[z>>2]|0)+40>>2];if(c[H>>2]|0)do{c[(c[H>>2]|0)+12>>2]=c[z>
;>2];c[H>>2]=c[(c[H>>2]|0)+16>>2]}while((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>
;>2]|0));c[z>>2]=(c[z>>2]|0)+48}c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)
x3e;>>0>=(c[C>>2]|0)>>>0)break;c[E>>2]=0;c[G>>2]=0;c[H>>2]=
c[(c[z>>2]|0)+40>>2];do{if(d[c[H>>2]>>0]&1|0)c[E>>2]=(c[E>>2]|0
)+1;else c[G>>2]=(c[G>>2]|0)+1;if(c[(c[H>>2]|0)+24>>2]|0)f=(c[(c[(c[H>>2]|0)+24
>>2]|0)+12>>2]|0)!=(c[z>>2]|0);else f=0;a[F>>0]=f&1;if(!(!(c[(c[H>>2]|0)+
20>>2]|0)?!(d[F>>0]|0):0))K=47;do if((K|0)==47){K=0;c[A>>2]=c[(c[z>>2]|0)+24>>
2];c[I>>2]=c[(c[H>>2]|0)+20>>2];if(a[F>>0]|0){c[I>>2]=c[(c[H>>2]|0)+
24>>2];c[A>>2]=c[(c[z>>2]|0)+28>>2]}if(c[A>>2]|0){c[B>>2]=(b[c[z>
;>2]>>1]|0)-(b[c[A>>2]>>1]|0);if((c[B>>2]|0)<0)c[B>>2]=0-(c[B>
x3e;2]|0);if((b[(c[H>>2]|0)+2>>1]|0)>(b[(c[I>>2]|0)+2>>1]|0))f=(b[(c[H>>2
]|0)+2>>1]|0)-(b[(c[I>>2]|0)+2>>1]|0)|0;else f=(b[(c[I>>2]|0)+2>>1]|0)-(b[(c[H
>>2]|0)+2>>1]|0)|0;c[J>>2]=f;if((c[J>>2]|0)<(c[B>>2]|0))c[A>>2]=
c[(c[I>>2]|0)+12>>2]}else c[A>>2]=c[(c[I>>2]|0)+12>>2];f=c[A>>2]|0;e
=c[z>>2]|0;if(a[F>>0]|0){c[e+28>>2]=f;N=(c[A>>2]|0)+12|0;a[N>>0]=d[N>>
;0]|2;break}else{c[e+24>>2]=f;break}}while(0);c[H>>2]=c[(c[H>>2]|0)+16>>2]}while((c[H>
;>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));a[(c[z>>2]|0)+12>>0]=0;if((c[E>>2]|0)
x3e;0?(c[E>>2]|0)>=(c[G>>2]|0):0){N=(c[z>>2]|0)+12|0;a[N>>0]=d[N>>0]|1}if
(c[(c[z>>2]|0)+28>>2]|0?c[(c[z>>2]|0)+24>>2]|0:0)c[(c[z>>2]|0)+28>>2
]=0;c[z>>2]=(c[z>>2]|0)+48}N=c[D>>2]|0;i=L;return N|0}function sm(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;A=i;i=i+80|0;u=A+72|0;h=A+68|0;g=A+64|0;z=A+60|0;y=A+56|0;r
=A+52|0;x=A+48|0;j=A+44|0;l=A+40|0;s=A+36|0;k=A+32|0;o=A+28|0;p=A+24|0;q=A+20|0;m=A+16|0;n=A+12|0;t=A+8|0;w=A+4|0;v=A;c[u>
x3e;2]=e;c[h>>2]=f;c[g>>2]=(c[u>>2]|0)+48+((c[h>>2]|0)*28|0);c[z>>2]=c[(c[g>
;>2]|0)+20>>2];c[y>>2]=(c[z>>2]|0)+((c[(c[g>>2]|0)+12>>2]|0)*48|0);c[j>
;>2]=0;c[l>>2]=0;c[s>>2]=0;c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>
x3e;>0>=(c[y>>2]|0)>>>0)break;do if(!(d[(c[x>>2]|0)+12>>0]&4)){c[k
x3e;>2]=c[(c[x>>2]|0)+24>>2];if(!(c[k>>2]|0)){c[s>>2]=(c[s>>2]|0)+1;break
}if((c[k>>2]|0)>>>0<(c[x>>2]|0)>>>0){tm(c[u>>2]|0,c[h>>
;2]|0,c[k>>2]|0,c[x>>2]|0);g=(c[x>>2]|0)+12|0;a[g>>0]=d[g>>0]|4;break}f=c[u>
;>2]|0;e=c[x>>2]|0;g=c[k>>2]|0;if((c[h>>2]|0)==1|(c[j>>2]|0)!=0)wm(f,e,g,c[l>
x3e;2]|0,c[h>>2]|0)|0;else c[l>>2]=wm(f,e,g,0,0)|0;c[j>>2]=c[x>>2];g=(c[x>>2]|
0)+12|0;a[g>>0]=d[g>>0]|4;g=(c[k>>2]|0)+12|0;a[g>>0]=d[g>>0]|4}while(0);c[x>
;>2]=(c[x>>2]|0)+48}c[r>>2]=((c[y>>2]|0)-(c[z>>2]|0)|0)/48|0;if((c[h>>2]|
0)==0?(c[r>>2]|0)==6|(c[r>>2]|0)==12:0){f=c[z>>2]|0;if((c[r>>2]|0)==6){c[o>>2]=
f;c[p>>2]=(c[z>>2]|0)+96;c[q>>2]=(c[z>>2]|0)+192}else{c[o>>2]=f+48;c[p>
x3e;2]=(c[z>>2]|0)+240;c[q>>2]=(c[z>>2]|0)+432}c[m>>2]=(c[(c[p>>2]|0)+4>
x3e;2]|0)-(c[(c[o>>2]|0)+4>>2]|0);c[n>>2]=(c[(c[q>>2]|0)+4>>2]|0)-(c[(c[p>
;>2]|0)+4>>2]|0);c[t>>2]=(c[m>>2]|0)-(c[n>>2]|0);if((c[t>>2]|0)<0)c[
t>>2]=0-(c[t>>2]|0);if(((c[(c[o>>2]|0)+24>>2]|0)==((c[o>>2]|0)+48|0)?(c[(c[p
x3e;>2]|0)+24>>2]|0)==((c[p>>2]|0)+48|0):0)?((c[t>>2]|0)<8?(c[(c[q>>2]|0)+24
x3e;>2]|0)==((c[q>>2]|0)+48|0):0):0){c[l>>2]=(c[(c[q>>2]|0)+8>>2]|0)-((c[(c[p>
x3e;2]|0)+8>>2]<<1)-(c[(c[o>>2]|0)+8>>2]|0));t=(c[q>>2]|0)+8|0;c[t>>
2]=(c[t>>2]|0)-(c[l>>2]|0);if(c[(c[q>>2]|0)+24>>2]|0){t=(c[(c[q>>2]|0)+24>
;>2]|0)+8|0;c[t>>2]=(c[t>>2]|0)-(c[l>>2]|0)}if((c[r>>2]|0)==12){t=(c[z>>2
]|0)+384+8|0;c[t>>2]=(c[t>>2]|0)-(c[l>>2]|0);t=(c[z>>2]|0)+528+8|0;c[t>>2]=(c[
t>>2]|0)-(c[l>>2]|0)}t=(c[q>>2]|0)+12|0;a[t>>0]=d[t>>0]|4;if(c[(c[q>>
;2]|0)+24>>2]|0){t=(c[(c[q>>2]|0)+24>>2]|0)+12|0;a[t>>0]=d[t>>0]|4}}}if(!(c[s
x3e;>2]|0)){i=A;return}c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>>>0>=(c[y
x3e;>2]|0)>>>0)break;if((d[(c[x>>2]|0)+12>>0]&4|0)==0?c[(c[x>>2]|0)+28>
;>2]|0:0){xm(c[u>>2]|0,c[(c[x>>2]|0)+28>>2]|0,c[x>>2]|0);t=(c[x>>2]|0)+12
|0;a[t>>0]=d[t>>0]|4;c[s>>2]=(c[s>>2]|0)+-1}c[x>>2]=(c[x>>2]|0)+48}if
(!(c[s>>2]|0)){i=A;return}c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>>>0>
;=(c[y>>2]|0)>>>0)break;do if(!(d[(c[x>>2]|0)+12>>0]&4)){t=c[x>>2]|0
;c[v>>2]=t;c[w>>2]=t;do{t=(c[w>>2]|0)+-48|0;c[w>>2]=t;if(t>>>0<(c[z
x3e;>2]|0)>>>0)break}while(!(d[(c[w>>2]|0)+12>>0]&4|0));do{t=(c[v>>2]|0)+
48|0;c[v>>2]=t;if(t>>>0>=(c[y>>2]|0)>>>0)break}while(!(d[(c[v>>
2]|0)+12>>0]&4|0));if((c[w>>2]|0)>>>0<(c[z>>2]|0)>>>0?(c[v
>>2]|0)>>>0>=(c[y>>2]|0)>>>0:0)break;if((c[w>>2]|0)>>
x3e;0<(c[z>>2]|0)>>>0){xm(c[u>>2]|0,c[v>>2]|0,c[x>>2]|0);break}if((c
[v>>2]|0)>>>0>=(c[y>>2]|0)>>>0){xm(c[u>>2]|0,c[w>>2]|
0,c[x>>2]|0);break}f=c[(c[w>>2]|0)+8>>2]|0;e=c[x>>2]|0;if((b[c[v>>2]>>
;1]|0)==(b[c[w>>2]>>1]|0)){c[e+8>>2]=f;break}else{t=f+(xb((b[e>>1]|0)-(b[c[w>>
2]>>1]|0)|0,(c[(c[v>>2]|0)+8>>2]|0)-(c[(c[w>>2]|0)+8>>2]|0)|0,(b[c[v>>
;2]>>1]|0)-(b[c[w>>2]>>1]|0)|0)|0)|0;c[(c[x>>2]|0)+8>>2]=t;break}}while(0);c[x
>>2]=(c[x>>2]|0)+48}i=A;return}function tm(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;
g=i;i=i+32|0;n=g+20|0;m=g+16|0;k=g+12|0;h=g+8|0;l=g+4|0;j=g;c[n>>2]=a;c[m>>2]=b;c[k>>2]=e;c[h>
;>2]=f;c[l>>2]=(c[(c[h>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+4>>2]|0);c[j>
x3e;2]=um(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,d[(c[k>>2]|0)+12>>0]|0,d[(c[h>>
;2]|0)+12>>0]|0)|0;c[(c[h>>2]|0)+8>>2]=(c[(c[k>>2]|0)+8>>2]|0)+(c[j>>
;2]|0);i=g;return}function um(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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+44|0;k=p+40|0;s=p+36|0;g=p+32|0;r=p+28|0;q=p+24|0;t=p+20|0;h=p+16|0;n=p+12|0;o=p+8|0;j=p+4|0;l=p;c[k>>
2]=a;c[s>>2]=b;c[g>>2]=d;c[r>>2]=e;c[q>>2]=f;c[t>>2]=c[(c[k>>2]|0)+112
>>2];c[h>>2]=(c[t>>2]|0)+40+((c[s>>2]|0)*396|0);c[n>>2]=c[g>>2];c[o
x3e;>2]=0;c[j>>2]=(c[s>>2]|0)==1&1;c[r>>2]=c[r>>2];c[q>>2]=c[q>
x3e;2];if(!(c[(c[k>>2]|0)+108>>2]&4)){c[m>>2]=c[g>>2];t=c[m>>2]|0;i=p;return
t|0}if((c[n>>2]|0)<0){c[n>>2]=0-(c[g>>2]|0);c[o>>2]=1}if(c[j>>2]|0?!(c[(
c[k>>2]|0)+108>>2]&2|0):0)b=9;else b=7;do if((b|0)==7){if((c[j>>2]|0)==0?(c[(c[k>>2
]|0)+108>>2]&1|0)==0:0){b=9;break}c[n>>2]=vm((c[h>>2]|0)+12|0,c[(c[h>>2]|0)+8>
x3e;2]|0,c[n>>2]|0)|0;if(c[j>>2]|0)if((c[n>>2]|0)>=64){c[n>>2]=(c[n>>2]|0
)+16&-64;break}else{c[n>>2]=64;break}g=c[n>>2]|0;if(c[(c[k>>2]|0)+108>>2]&8|0)
if((g|0)<64){c[n>>2]=64;break}else{c[n>>2]=(c[n>>2]|0)+32&-64;break}e=c[n>>2]|
0;if((g|0)<48){c[n>>2]=e+64>>1;break}g=c[n>>2]|0;if((e|0)<128){c[n>>2]=g+22&
;-64;break}else{c[n>>2]=g+32&-64;break}}while(0);do if((b|0)==9){if((c[(c[h>>2]|0)+8>>2]|0)
x3e;>>0>0?(t=(c[n>>2]|0)-(c[(c[h>>2]|0)+12+4>>2]|0)|0,((((c[n>>2]|0)-(c[(
c[h>>2]|0)+12+4>>2]|0)|0)<0?0-t|0:t)|0)<40):0){t=c[(c[h>>2]|0)+12+4>>2]|0;c[n
x3e;>2]=t;c[n>>2]=(c[n>>2]|0)<48?48:t;break}g=c[n>>2]|0;if((c[n>>2]|0)<54
){c[n>>2]=(c[n>>2]|0)+((54-g|0)/2|0);break}if((g|0)<192){c[l>>2]=c[n>>2]&63;c[
n>>2]=c[n>>2]&-64;g=c[l>>2]|0;if((c[l>>2]|0)<10){c[n>>2]=(c[n>
x3e;2]|0)+g;break}if((g|0)<22){c[n>>2]=(c[n>>2]|0)+10;break}g=c[l>>2]|0;if((c[l>>2]|
0)<42){c[n>>2]=(c[n>>2]|0)+g;break}if((g|0)<54){c[n>>2]=(c[n>>2]|0)+54;break}else
{c[n>>2]=(c[n>>2]|0)+(c[l>>2]|0);break}}}while(0);if(c[o>>2]|0)c[n>>2]=0-(c[n
x3e;>2]|0);c[m>>2]=c[n>>2];t=c[m>>2]|0;i=p;return t|0}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,l=0,m=0,n=0,o=0;o=i;i=i+48|0;e=o+32|0;f=o+28|0;m=o+24|0;j=o+20|0;g=o+16|0;n=o+12|0;l=o+8|0;k=o+4|0;h=o;
c[e>>2]=a;c[f>>2]=b;c[m>>2]=d;c[g>>2]=98;c[n>>2]=c[m>>2];c[j>
x3e;2]=0;while(1){if((c[j>>2]|0)>=(c[f>>2]|0))break;c[k>>2]=c[(c[e>>2]|0)+((c[j>
;>2]|0)*12|0)+4>>2];c[h>>2]=(c[m>>2]|0)-(c[k>>2]|0);if((c[h>>2]|0)<0
)c[h>>2]=0-(c[h>>2]|0);if((c[h>>2]|0)<(c[g>>2]|0)){c[g>>2]=c[h>>
;2];c[n>>2]=c[k>>2]}c[j>>2]=(c[j>>2]|0)+1}c[l>>2]=(c[n>>2]|0)+32&
;-64;f=c[m>>2]|0;e=c[l>>2]|0;if((c[m>>2]|0)>=(c[n>>2]|0)){if((f|0)>=(e+48|0)){
n=c[m>>2]|0;i=o;return n|0}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}else{if((f|0)<
;=(e-48|0)){n=c[m>>2]|0;i=o;return n|0}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}return
0}function wm(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,y=0,
z=0;z=i;i=i+80|0;h=z+64|0;u=z+60|0;v=z+56|0;j=z+52|0;k=z+48|0;q=z+44|0;w=z+40|0;p=z+36|0;x=z+32|0;l=z+28|0;m=z+24|0;s=z+20|0;n=z
+16|0;t=z+12|0;y=z+8|0;o=z+4|0;r=z;c[h>>2]=a;c[u>>2]=b;c[v>>2]=e;c[j>>2]=f;c[k>>
;2]=g;c[r>>2]=64;do if(!(c[(c[h>>2]|0)+108>>2]&4)){if((d[(c[u>>2]|0)+12>>
0]|0)&1|0?(d[(c[v>>2]|0)+12>>0]|0)&1|0:0)if((c[k>>2]|0)==1){c[r>>2]=55;break}else
{c[r>>2]=49;break}if((c[k>>2]|0)==1){c[r>>2]=61;break}else{c[r>>2]=59;break}}while(0);c[
q>>2]=(c[(c[v>>2]|0)+4>>2]|0)-(c[(c[u>>2]|0)+4>>2]|0);c[w>>2]=um(c[h
>>2]|0,c[k>>2]|0,c[q>>2]|0,d[(c[u>>2]|0)+12>>0]|0,d[(c[v>>2]|0)+12
x3e;>0]|0)|0;c[p>>2]=(((c[(c[u>>2]|0)+4>>2]|0)+(c[(c[v>>2]|0)+4>>2]|0)|0)/
2|0)+(c[j>>2]|0);c[x>>2]=(c[p>>2]|0)-((c[w>>2]|0)/2|0);c[l>>2]=(c[x>>
;2]|0)+(c[w>>2]|0);c[m>>2]=(c[x>>2]|0)-(c[x>>2]&-64);c[n>>2]=(c[l>
x3e;2]|0)-(c[l>>2]&-64);c[s>>2]=64-(c[m>>2]|0);c[t>>2]=64-(c[n>>2]|0);c[y
>>2]=0;do if(!((c[m>>2]|0)==0|(c[n>>2]|0)==0)){if((c[w>>2]|0)<=(c[r>>2]|0
)){if((c[n>>2]|0)>=(c[w>>2]|0))break;if((c[s>>2]|0)<=(c[n>>2]|0)){c[y>>
;2]=c[s>>2];break}else{c[y>>2]=0-(c[n>>2]|0);break}}if((c[r>>2]|0)<64){if((c[m>
;>2]|0)>=(c[r>>2]|0))break;if((c[s>>2]|0)>=(c[r>>2]|0))break;if((c[n>>2]|
0)>=(c[r>>2]|0))break;if((c[t>>2]|0)>=(c[r>>2]|0))break}c[o>>2]=(c[w>>
;2]|0)%64|0;if((c[o>>2]|0)<32){if((c[s>>2]|0)<=(c[o>>2]|0))break;if((c[n>>2]|0
)<=(c[o>>2]|0))break}else c[o>>2]=64-(c[r>>2]|0);c[m>>2]=(c[r>>2]|0)-(c[s
>>2]|0);c[s>>2]=(c[s>>2]|0)-(c[o>>2]|0);c[t>>2]=(c[r>>2]|0)-(c[n>
;>2]|0);c[n>>2]=(c[n>>2]|0)-(c[o>>2]|0);if((c[m>>2]|0)<=(c[s>>2]|0))
c[s>>2]=0-(c[m>>2]|0);if((c[n>>2]|0)<=(c[t>>2]|0))c[t>>2]=0-(c[n>>
;2]|0);q=c[s>>2]|0;r=c[t>>2]|0;if((((c[s>>2]|0)<0?0-q|0:q)|0)<=(((c[t>>2]|0)
x3c;0?0-r|0:r)|0)){c[y>>2]=c[s>>2];break}else{c[y>>2]=c[t>>2];break}}while(0);do if(!(c[(
c[h>>2]|0)+108>>2]&4)){if((c[y>>2]|0)>14){c[y>>2]=14;break}if((c[y>>
2]|0)<-14)c[y>>2]=-14}while(0);c[x>>2]=(c[x>>2]|0)+(c[y>>2]|0);h=c[x>>2]|
0;if((c[(c[u>>2]|0)+4>>2]|0)<(c[(c[v>>2]|0)+4>>2]|0)){c[(c[u>>2]|0)+8>
;>2]=h;c[(c[v>>2]|0)+8>>2]=(c[x>>2]|0)+(c[w>>2]|0);y=c[y>>2]|0;i=z;return
y|0}else{c[(c[u>>2]|0)+8>>2]=h+(c[w>>2]|0);c[(c[v>>2]|0)+8>>2]=c[x>>
;2];y=c[y>>2]|0;i=z;return y|0}return 0}function xm(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;c[h>>2]=c[h>>2];c[(c[f>>2]|
0)+8>>2]=(c[(c[g>>2]|0)+8>>2]|0)+((c[(c[f>>2]|0)+4>>2]|0)-(c[(c[g>>2
]|0)+4>>2]|0));i=e;return}function ym(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;r=i;i=i+48|
0;g=r+36|0;j=r+32|0;s=r+28|0;h=r+24|0;m=r+20|0;l=r+16|0;q=r+40|0;p=r+12|0;n=r+8|0;k=r+4|0;o=r;c[g>>2]=d;c[j>>
;2]=f;c[s>>2]=(c[g>>2]|0)+48+((c[j>>2]|0)*28|0);c[h>>2]=c[(c[s>>2]|0)+20>
x3e;2];c[m>>2]=(c[h>>2]|0)+((c[(c[s>>2]|0)+12>>2]|0)*48|0);if((c[j>>2]|0)==0?c
[(c[g>>2]|0)+108>>2]&1|0:0)g=1;else if((c[j>>2]|0)==1)g=(c[(c[g>>2]|0)+108>>
;2]&2|0)!=0;else g=0;a[q>>0]=g&1;c[l>>2]=c[h>>2];while(1){if((c[l>>2]|0)>
x3e;>0>=(c[m>>2]|0)>>>0)break;c[p>>2]=c[(c[l>>2]|0)+40>>2];if(a
[q>>0]|0)do{c[n>>2]=c[(c[p>>2]|0)+40>>2];while(1){g=c[(c[l>>2]|0)+8>>
;2]|0;f=c[n>>2]|0;if(!(c[j>>2]|0)){c[f+16>>2]=g;s=c[n>>2]|0;b[s>>1]=e[s>
x3e;1]|64}else{c[f+20>>2]=g;s=c[n>>2]|0;b[s>>1]=e[s>>1]|128}if((c[n>>2]|0)==(c
[(c[p>>2]|0)+44>>2]|0))break;c[n>>2]=c[(c[n>>2]|0)+32>>2]}c[p>>2]=c[(
c[p>>2]|0)+16>>2]}while((c[p>>2]|0)!=(c[(c[l>>2]|0)+40>>2]|0));else{c[k>
x3e;2]=(c[(c[l>>2]|0)+8>>2]|0)-(c[(c[l>>2]|0)+4>>2]|0);do{c[o>>2]=c[(c[p>
x3e;2]|0)+40>>2];while(1){g=c[k>>2]|0;f=c[o>>2]|0;if(!(c[j>>2]|0)){s=f+16|0;c[s>>
;2]=(c[s>>2]|0)+g;s=c[o>>2]|0;b[s>>1]=e[s>>1]|64}else{s=f+20|0;c[s>>2]=(c[s>
;>2]|0)+g;s=c[o>>2]|0;b[s>>1]=e[s>>1]|128}if((c[o>>2]|0)==(c[(c[p>>2]|0)+
44>>2]|0))break;c[o>>2]=c[(c[o>>2]|0)+32>>2]}c[p>>2]=c[(c[p>>2]|0)+16
>>2]}while((c[p>>2]|0)!=(c[(c[l>>2]|0)+40>>2]|0))}c[l>>2]=(c[l>>2]|0
)+48}i=r;return}function zm(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=
jm(c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Am(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;km(c[f>>2]|0,c[e>>2]|0);i=d;return}function Bm(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=mm(c[f>>2]|0,c[e>>2]|0)|0;i=
d;return b|0}function Cm(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
x3e;>2]=b;c[f>>2]=d;b=nm(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return b|0}function Dm
(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;l=g+16|0;k=g+12|0;m=g+8|0;j=g+4|0;h=g;c[l>
;>2]=a;c[k>>2]=b;c[m>>2]=d;c[j>>2]=e;c[h>>2]=f;c[m>>2]=c[m>>2];
b=Em((c[l>>2]|0)+20|0,c[(c[k>>2]|0)+4>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=g;return
b|0}function Em(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;q=i;i=i+64|0;j=q+60|0;k=q+56|0;
f=q+52|0;l=q+48|0;m=q+44|0;n=q+40|0;h=q+36|0;p=q+8|0;o=q+4|0;g=q;c[k>>2]=a;c[f>>2]=b;c[l>>2]=d;c[m
>>2]=e;c[h>>2]=c[(c[f>>2]|0)+88>>2];if(!(c[h>>2]|0)){c[j>>2]=6;p=c[j
>>2]|0;i=q;return p|0};c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[p+16
x3e;>2]=0;c[p+20>>2]=0;c[p+24>>2]=0;c[p>>2]=c[f>>2];c[p+4>>2]=c[(c[h>
;>2]|0)+12+4>>2];c[p+12>>2]=0;c[p+8>>2]=c[(c[h>>2]|0)+12+8>>2];c[p+16>
;>2]=0;c[p+20>>2]=(c[m>>2]|0)>>>16&15;c[p+24>>2]=0;c[n>>2]=Fm(c
[k>>2]|0,c[f>>2]|0)|0;do if((c[n>>2]|0)==0?(c[g>>2]=0,c[n>>2]=Jm(c[(c[k>
x3e;2]|0)+4>>2]|0,c[l>>2]|0,c[g>>2]|0,o)|0,(c[n>>2]|0)==0):0){c[(c[k>>2]|0)+136
>>2]=c[o>>2];f=c[o>>2]|0;if(c[(c[c[o>>2]>>2]|0)+16>>2]|0)Ra[c[(c[f
x3e;>2]|0)+16>>2]&7](c[o>>2]|0,p);else{h=f+4|0;c[h>>2]=c[p>>2];c[h+4>>
;2]=c[p+4>>2];c[h+8>>2]=c[p+8>>2];c[h+12>>2]=c[p+12>>2];c[h+16>>2]=c
[p+16>>2];c[h+20>>2]=c[p+20>>2];c[h+24>>2]=c[p+24>>2]}c[m>>2]=c[m>
;>2]|2049;c[m>>2]=c[m>>2]&-5;if(c[(c[c[o>>2]>>2]|0)+24>>2]|0?(c[n>
;>2]=Ya[c[(c[c[o>>2]>>2]|0)+24>>2]&127]((c[k>>2]|0)+12|0,c[o>>2]|0)|
0,c[n>>2]|0):0)break;c[n>>2]=Km(c[k>>2]|0,p,c[l>>2]|0,c[m>>2]|0,0)|0}while(0);
c[j>>2]=c[n>>2];p=c[j>>2]|0;i=q;return p|0}function Fm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=
i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;c[c[d>>2]>>2]=c[e>
;>2];c[(c[d>>2]|0)+4>>2]=c[(c[e>>2]|0)+116>>2];dc(c[(c[d>>2]|0)+8>
x3e;2]|0);if(c[(c[d>>2]|0)+4>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[f>>2]=Gm(c[e>>
;2]|0,(c[d>>2]|0)+4|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[(c[e>>2]|0)+116>
;>2]=c[(c[d>>2]|0)+4>>2];c[(c[e>>2]|0)+116+4>>2]=35;a=c[f>>2]|0;i=g;return
a|0}function Gm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;e=h+12|0;f=h+8|0;j=h+4|0;g=h;c[d>>
2]=a;c[e>>2]=b;c[g>>2]=0;c[j>>2]=c[(c[d>>2]|0)+100>>2];c[g>>2]=bc(c[
j>>2]|0,28+(c[(c[d>>2]|0)+16>>2]|0)|0,f)|0;if((c[f>>2]|0)==0?(c[c[g>>2]>
x3e;2]=c[d>>2],c[(c[g>>2]|0)+4>>2]=c[(c[d>>2]|0)+16>>2],c[(c[g>>2]|0
)+8>>2]=(c[g>>2]|0)+28,c[f>>2]=Hm(c[g>>2]|0)|0,c[f>>2]|0):0){Im(c[g>>
;2]|0);c[g>>2]=0}c[c[e>>2]>>2]=c[g>>2];i=h;return c[f>>2]|0}function Hm(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;s=i;i=i+64|0;e=s+48|0;h=s+44|0;j=s+40|0;p=s+36|0;m=s+32|0;r=s+28|
0;n=s+24|0;g=s+20|0;q=s+16|0;f=s+12|0;k=s+8|0;l=s+4|0;o=s;c[e>>2]=b;c[h>>2]=0;c[j>>2]=c[c[e>
x3e;2]>>2];c[p>>2]=c[(c[j>>2]|0)+92>>2];c[m>>2]=c[(c[e>>2]|0)+8>
;>2];Ns(c[(c[e>>2]|0)+8>>2]|0,127,c[(c[e>>2]|0)+4>>2]|0)|0;c[h>>2]=Id(c[j
>>2]|0,1970170211)|0;a:do if(c[h>>2]|0)c[h>>2]=0;else{c[r>>2]=0;while(1){if(!(c[3900+(c[
r>>2]<<2)>>2]|0))break;c[g>>2]=c[3900+(c[r>>2]<<2)>>2];b:do
if(c[(c[g>>2]|0)+4>>2]|0){c[q>>2]=c[(c[g>>2]|0)+4>>2];while(1){if(!(c[c[q>
;>2]>>2]|0))break b;c[f>>2]=c[c[q>>2]>>2];c[k>>2]=Dc(c[j>>2]|0,
c[f>>2]|0)|0;if((c[k>>2]|0?(c[k>>2]|0)>>>0<(c[(c[e>>2]|0)+4>>
;2]|0)>>>0:0)?(d[(c[m>>2]|0)+(c[k>>2]|0)>>0]|0|0)==127:0)a[(c[m>>2]|0)+(c
[k>>2]|0)>>0]=c[r>>2];while(1){c[f>>2]=Md(c[j>>2]|0,c[f>>2]|0,k)|0;if
(!(c[k>>2]|0))break;if((c[f>>2]|0)>>>0>(c[(c[q>>2]|0)+4>>2]|0)>
x3e;>0)break;if((c[k>>2]|0)>>>0>=(c[(c[e>>2]|0)+4>>2]|0)>>>
;0)continue;if((d[(c[m>>2]|0)+(c[k>>2]|0)>>0]|0|0)!=127)continue;a[(c[m>>2]|0)+(c[k>
;>2]|0)>>0]=c[r>>2]}c[q>>2]=(c[q>>2]|0)+8}}while(0);c[r>>2]=(c[r>>
;2]|0)+1}c[n>>2]=48;while(1){if((c[n>>2]|0)>>>0>57)break a;c[l>>2]=Dc(c[j>
;>2]|0,c[n>>2]|0)|0;if(c[l>>2]|0?(c[l>>2]|0)>>>0<(c[(c[e>>2]|0)+
4>>2]|0)>>>0:0){r=(c[m>>2]|0)+(c[l>>2]|0)|0;a[r>>0]=d[r>>0]|0|128
}c[n>>2]=(c[n>>2]|0)+1}}while(0);c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[e>
x3e;2]|0)+4>>2]|0))break;if(((d[(c[m>>2]|0)+(c[o>>2]|0)>>0]|0)&-129|0)==127){r=(c[m
>>2]|0)+(c[o>>2]|0)|0;a[r>>0]=(d[r>>0]|0)&-128;r=(c[m>>2]|0)+(c[o>
x3e;2]|0)|0;a[r>>0]=d[r>>0]|0|2}c[o>>2]=(c[o>>2]|0)+1}Jd(c[j>>2]|0,c[p>
x3e;2]|0)|0;i=s;return c[h>>2]|0}function Im(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;f=g+4|0;d=
g;c[b>>2]=a;if(!(c[b>>2]|0)){i=g;return}c[e>>2]=c[(c[c[b>>2]>>2]|0)+100>
x3e;2];c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=4)break;if(c[(c[b>>2]|0)+12+(c[f
>>2]<<2)>>2]|0){c[d>>2]=c[3900+(c[f>>2]<<2)>>2];if(c[(c[d
x3e;>2]|0)+20>>2]|0)Va[c[(c[d>>2]|0)+20>>2]&63](c[(c[b>>2]|0)+12+(c[f>>
;2]<<2)>>2]|0);Fb(c[e>>2]|0,c[(c[b>>2]|0)+12+(c[f>>2]<<2)>>
;2]|0);c[(c[b>>2]|0)+12+(c[f>>2]<<2)>>2]=0}c[f>>2]=(c[f>>2]|0)+1}c[(
c[b>>2]|0)+4>>2]=0;c[(c[b>>2]|0)+8>>2]=0;c[c[b>>2]>>2]=0;Fb(c[e>
;>2]|0,c[b>>2]|0);c[b>>2]=0;i=g;return}function Jm(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;q=i;i=i+48|0;g=q+40|0;h=q+36|0;r=q+32|0;j=q+28|0;o=q+24|0;m=q+20|0;k=q+16|0;p=q+12|0;l=q+4|0;n=q;c[
g>>2]=a;c[h>>2]=b;c[r>>2]=e;c[j>>2]=f;c[o>>2]=0;c[p>>2]=c[r>>
;2]&15;c[q+8>>2]=5;c[l>>2]=0;if((c[h>>2]|0)>>>0>=(c[(c[g>>2]|0)+
4>>2]|0)>>>0){c[l>>2]=6;p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l
>>2]|0;i=q;return r|0}c[m>>2]=c[p>>2];if(!((c[m>>2]|0)!=0?((c[m>>2]|0)+1|0)>
;>>0<5:0))c[m>>2]=(d[(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]|0)>>0]|0)
x26;127;c[k>>2]=c[3900+(c[m>>2]<<2)>>2];if(!(c[p>>2]|0))c[p>>2]=c[c[
k>>2]>>2];c[o>>2]=c[(c[g>>2]|0)+12+(c[c[k>>2]>>2]<<2)>
;>2];if(c[o>>2]|0){p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l>>2]|0;i=q;return
r|0}c[n>>2]=c[(c[c[g>>2]>>2]|0)+100>>2];c[o>>2]=bc(c[n>>2]|0,c[(c[k
>>2]|0)+8>>2]|0,l)|0;if(c[l>>2]|0){p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p
;r=c[l>>2]|0;i=q;return r|0}c[c[o>>2]>>2]=c[k>>2];if(c[(c[k>>2]|0)+12>>
;2]|0?(c[l>>2]=Ya[c[(c[k>>2]|0)+12>>2]&127](c[o>>2]|0,c[c[g>>2]>>
;2]|0)|0,c[l>>2]|0):0){if(c[(c[k>>2]|0)+20>>2]|0)Va[c[(c[k>>2]|0)+20>>2]&
63](c[o>>2]|0);Fb(c[n>>2]|0,c[o>>2]|0);c[o>>2]=0;p=c[o>>2]|0;r=c[j>>
2]|0;c[r>>2]=p;r=c[l>>2]|0;i=q;return r|0}c[(c[g>>2]|0)+12+(c[c[k>>2]>>2]<
;<2)>>2]=c[o>>2];p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l>>2]|0;
i=q;return r|0}function Km(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;da=i;i=i+240|0;S=da+236|0;T=da+232|0;U=da+228|0;y=da+224|0;V=da+220|0;X=da+216|0;ea=da+212|0;Y=da+208|0;$=da+204|0;
Z=da+200|0;aa=da+196|0;_=da+192|0;l=da+176|0;r=da+168|0;q=da+164|0;p=da+160|0;u=da+156|0;x=da+152|0;m=da+148|0;n=da+144|0;o=da+140
|0;s=da+136|0;v=da+132|0;t=da+128|0;w=da+124|0;E=da+120|0;J=da+116|0;G=da+112|0;O=da+108|0;P=da+104|0;M=da+96|0;N=da+88|0;Q=da+84
|0;R=da+80|0;I=da+76|0;H=da+72|0;F=da+68|0;z=da+64|0;D=da+60|0;B=da+56|0;C=da+52|0;K=da+48|0;L=da+44|0;A=da+24|0;W=da+8|0;ba=da;
c[S>>2]=f;c[T>>2]=g;c[U>>2]=h;c[y>>2]=j;c[V>>2]=k;c[ea>>2]=c[c[S>
;>2]>>2];c[Y>>2]=c[(c[S>>2]|0)+8>>2];c[$>>2]=c[(c[S>>2]|0)+136
x3e;>2];c[Z>>2]=(c[S>>2]|0)+12;c[aa>>2]=c[(c[ea>>2]|0)+84>>2];c[_>
x3e;2]=c[(c[aa>>2]|0)+156>>2];c[X>>2]=Cb(c[ea>>2]|0,c[U>>2]|0,c[y>>2
]|0)|0;if(c[X>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}a[(c[S>>2]|0)+140>>0]=a[(c[_>>
;2]|0)+8>>0]|0;if(a[(c[S>>2]|0)+140>>0]|0){ea=(c[S>>2]|0)+144|0;g=(c[_>>2]|0)+
12|0;c[ea>>2]=c[g>>2];c[ea+4>>2]=c[g+4>>2];c[ea+8>>2]=c[g+8>>2];c[ea
+12>>2]=c[g+12>>2];ea=(c[S>>2]|0)+160|0;g=(c[_>>2]|0)+28|0;c[ea>>2]=c[g>
x3e;2];c[ea+4>>2]=c[g+4>>2];ea=(c[S>>2]|0)+144|0;c[l>>2]=c[ea>>2];c[l+4>
x3e;2]=c[ea+4>>2];c[l+8>>2]=c[ea+8>>2];c[l+12>>2]=c[ea+12>>2];Wb(l)|0;Lb((c[S
x3e;>2]|0)+160|0,l)}c[(c[aa>>2]|0)+56>>2]=c[(c[aa>>2]|0)+24+16>>2];c[(c[aa>>
;2]|0)+60>>2]=c[(c[aa>>2]|0)+24+28>>2];k=c[(c[aa>>2]|0)+72>>2]|0;a:do if((k|0)
x3e;=1869968492){switch(k|0){case 1869968492:break;default:{ca=49;break a}}if(a[(c[S>>2]|0)+140>>0]|0)Nb((c[
aa>>2]|0)+108|0,c[(c[S>>2]|0)+160>>2]|0,c[(c[S>>2]|0)+160+4>>2]|0);if(((b[(c[aa
>>2]|0)+108+2>>1]|0)+4|0)!=0?((b[(c[Y>>2]|0)+20+2>>1]|0)+(b[(c[Y>>2]|0)+56+2
x3e;>1]|0)+((b[(c[aa>>2]|0)+108+2>>1]|0)+4)|0)>>>0>(c[(c[Y>>2]|0)+4>
x3e;2]|0)>>>0:0)ca=11;else if((b[(c[aa>>2]|0)+108>>1]|0)!=0?((b[(c[Y>>2]|0)+20>
;>1]|0)+(b[(c[Y>>2]|0)+56>>1]|0)+(b[(c[aa>>2]|0)+108>>1]|0)|0)>>>0
x3e;(c[(c[Y>>2]|0)+8>>2]|0)>>>0:0)ca=11;else k=0;if((ca|0)==11)k=kc(c[Y>>2]|0,(b[(c
[aa>>2]|0)+108+2>>1]|0)+4|0,b[(c[aa>>2]|0)+108>>1]|0)|0;c[X>>2]=k;if(c[X>
x3e;2]|0){ea=c[X>>2]|0;i=da;return ea|0}Ss(c[(c[Y>>2]|0)+56+4>>2]|0,c[(c[aa>>2]|0)+108+4
>>2]|0,b[(c[aa>>2]|0)+108+2>>1]<<3|0)|0;Ss(c[(c[Y>>2]|0)+56+12>>2]|0
,c[(c[aa>>2]|0)+108+12>>2]|0,b[(c[aa>>2]|0)+108>>1]<<1|0)|0;Ss(c[(c[Y>>
;2]|0)+56+8>>2]|0,c[(c[aa>>2]|0)+108+8>>2]|0,b[(c[aa>>2]|0)+108+2>>1]|0)|0;b[(
c[Y>>2]|0)+56+2>>1]=b[(c[aa>>2]|0)+108+2>>1]|0;b[(c[Y>>2]|0)+56>>1]=
b[(c[aa>>2]|0)+108>>1]|0;c[(c[S>>2]|0)+168>>2]=c[(c[Z>>2]|0)+8>>2];c
[(c[S>>2]|0)+168+4>>2]=c[(c[Z>>2]|0)+16>>2];ea=Mb(c[(c[aa>>2]|0)+24+16>
x3e;2]|0,c[(c[Z>>2]|0)+4>>2]|0)|0;c[(c[S>>2]|0)+176>>2]=ea+(c[(c[Z>>2]|0)+8>
;>2]|0);c[(c[S>>2]|0)+176+4>>2]=c[(c[Z>>2]|0)+16>>2];if(b[(c[aa>>2]|0)+108
+2>>1]|0){if(c[(c[c[$>>2]>>2]|0)+28>>2]|0)Oa[c[(c[c[$>>2]>>2]|0)+28
x3e;>2]&63](c[Z>>2]|0,(c[Y>>2]|0)+56|0,c[$>>2]|0)|0;do if((c[(c[T>>2]|0)+20>
;>2]|0)!=1){c[m>>2]=(c[Z>>2]|0)+48;c[n>>2]=c[(c[m>>2]|0)+20>>2];c[o>
x3e;2]=(c[n>>2]|0)+((c[(c[m>>2]|0)+12>>2]|0)*48|0)+-48;if((c[(c[m>>2]|0)+12>>2
]|0)>1?(c[(c[Z>>2]|0)+104>>2]&4|0)==0:0){c[r>>2]=(c[(c[S>>2]|0)+176>>
;2]|0)-(c[(c[o>>2]|0)+4>>2]|0);c[q>>2]=c[(c[n>>2]|0)+4>>2];c[p>>2]=c
[(c[n>>2]|0)+8>>2];c[u>>2]=(c[p>>2]|0)-(c[q>>2]|0);c[x>>2]=(c[(c[o
x3e;>2]|0)+8>>2]|0)+(c[r>>2]|0);if((c[q>>2]|0)<24)c[u>>2]=(c[u>>2]|0
)-8;if((c[r>>2]|0)<24)c[x>>2]=(c[x>>2]|0)+8;c[(c[S>>2]|0)+168>>2]=(c[u>
;>2]|0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[x>>2]|0)+32&-64;if((c[q>>2]|0)>
;0?(c[(c[S>>2]|0)+168>>2]|0)>=(c[p>>2]|0):0){ea=(c[S>>2]|0)+168|0;c[ea>>2
]=(c[ea>>2]|0)-64}if((c[r>>2]|0)>0?(c[(c[S>>2]|0)+176>>2]|0)<=(c[(c[o>>
;2]|0)+8>>2]|0):0){ea=(c[S>>2]|0)+176|0;c[ea>>2]=(c[ea>>2]|0)+64}c[(c[aa>>2]|0
)+144>>2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[u>>2]|0);c[(c[aa>>2]|0)+148>>
2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[x>>2]|0);break}c[s>>2]=c[(c[S>>2]|0)+168>
x3e;2];c[v>>2]=c[(c[S>>2]|0)+176>>2];c[(c[S>>2]|0)+168>>2]=(c[s>>2]|
0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[v>>2]|0)+32&-64;c[(c[aa>>2]|0)+144>>
;2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[s>>2]|0);c[(c[aa>>2]|0)+148>>2]=(c[(c[S>
x3e;2]|0)+176>>2]|0)-(c[v>>2]|0)}else{c[t>>2]=c[(c[S>>2]|0)+168>>2];c[w>
x3e;2]=c[(c[S>>2]|0)+176>>2];c[(c[S>>2]|0)+168>>2]=(c[t>>2]|0)+(c[(c[Z>
x3e;2]|0)+116>>2]|0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[w>>2]|0)+(c[(c[Z>>2]|
0)+120>>2]|0)+32&-64;c[(c[aa>>2]|0)+144>>2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[
t>>2]|0);c[(c[aa>>2]|0)+148>>2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[w>>2]|0
)}while(0);oc(c[Y>>2]|0)}}else{switch(k|0){case 1668246896:break;default:{ca=49;break a}}c[J>>2]=c[(c[aa>
;>2]|0)+128>>2];c[O>>2]=b[(c[Y>>2]|0)+20+2>>1];c[X>>2]=lc(c[Y>>
2]|0,c[J>>2]|0)|0;if(c[X>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}Ss(c[(c[Y>>2]|0)+56+32>
;>2]|0,c[(c[aa>>2]|0)+132>>2]|0,c[J>>2]<<5|0)|0;c[(c[Y>>2]|0)+56+28>
x3e;2]=c[J>>2];c[G>>2]=c[(c[Y>>2]|0)+20+28>>2];c[E>>2]=0;while(1){if((c[E>
;>2]|0)>>>0>=(c[J>>2]|0)>>>0)break a;c[P>>2]=(c[(c[Y>>2]|0
)+20+32>>2]|0)+(c[G>>2]<<5)+(c[E>>2]<<5);ea=(c[S>>2]|0)+168|0;c[M>
;>2]=c[ea>>2];c[M+4>>2]=c[ea+4>>2];ea=(c[S>>2]|0)+176|0;c[N>>2]=c[ea>
;>2];c[N+4>>2]=c[ea+4>>2];c[F>>2]=b[(c[Y>>2]|0)+20+2>>1];c[X>>2
]=Km(c[S>>2]|0,c[T>>2]|0,c[c[P>>2]>>2]|0,c[y>>2]|0,(c[V>>2]|0)+1|0)|
0;if(c[X>>2]|0){ca=63;break}c[P>>2]=(c[(c[Y>>2]|0)+20+32>>2]|0)+(c[G>>2]<
x3c;5)+(c[E>>2]<<5);k=(c[S>>2]|0)+168|0;if(e[(c[P>>2]|0)+4>>1]&512|0){c[M
>>2]=c[k>>2];c[M+4>>2]=c[k+4>>2];ea=(c[S>>2]|0)+176|0;c[N>>2]=c[ea
x3e;>2];c[N+4>>2]=c[ea+4>>2]}else{c[k>>2]=c[M>>2];c[k+4>>2]=c[M+4>
x3e;2];ea=(c[S>>2]|0)+176|0;c[ea>>2]=c[N>>2];c[ea+4>>2]=c[N+4>>2]}c[I>>
;2]=b[(c[Y>>2]|0)+20+2>>1];c[H>>2]=(c[I>>2]|0)-(c[F>>2]|0);b:do if(e[(c[P>
;>2]|0)+4>>1]&200|0){c[z>>2]=(c[(c[Y>>2]|0)+20+4>>2]|0)+(c[F>>2]<
;<3);c[D>>2]=(c[z>>2]|0)+(c[H>>2]<<3);while(1){if((c[z>>2]|0)>>
x3e;0>=(c[D>>2]|0)>>>0)break b;Lb(c[z>>2]|0,(c[P>>2]|0)+16|0);c[z>>2
]=(c[z>>2]|0)+8}}while(0);k=c[(c[P>>2]|0)+8>>2]|0;if(e[(c[P>>2]|0)+4>>1]&
2|0){ea=Mb(k,c[(c[Z>>2]|0)+4>>2]|0)|0;c[Q>>2]=ea+(c[(c[Z>>2]|0)+8>>2]|0);ea=Mb
(c[(c[P>>2]|0)+12>>2]|0,c[(c[Z>>2]|0)+12>>2]|0)|0;c[R>>2]=ea+(c[(c[Z>>
;2]|0)+16>>2]|0);c[Q>>2]=(c[Q>>2]|0)+32&-64;c[R>>2]=(c[R>>2]|0)+32&-
64}else{c[B>>2]=k;c[C>>2]=c[(c[P>>2]|0)+12>>2];if(((c[O>>2]|0)+(c[B>>
;2]|0)|0)>>>0>=(c[F>>2]|0)>>>0)break;if((c[C>>2]|0)>>>0>
;=(c[H>>2]|0)>>>0)break;c[C>>2]=(c[C>>2]|0)+(c[F>>2]|0);c[K>>2]=(
c[(c[Y>>2]|0)+20+4>>2]|0)+(c[O>>2]<<3)+(c[B>>2]<<3);c[L>>2
]=(c[(c[Y>>2]|0)+20+4>>2]|0)+(c[O>>2]<<3)+(c[C>>2]<<3);c[Q>>
;2]=(c[c[K>>2]>>2]|0)-(c[c[L>>2]>>2]|0);c[R>>2]=(c[(c[K>>2]|0)+4>
;>2]|0)-(c[(c[L>>2]|0)+4>>2]|0)}ea=(c[Y>>2]|0)+20|0;c[A>>2]=c[ea>>2];c[A+
4>>2]=c[ea+4>>2];c[A+8>>2]=c[ea+8>>2];c[A+12>>2]=c[ea+12>>2];c[A+16
x3e;>2]=c[ea+16>>2];ea=A+4|0;c[ea>>2]=(c[ea>>2]|0)+(c[F>>2]<<3);b[A+2>
;>1]=c[H>>2];Nb(A,c[Q>>2]|0,c[R>>2]|0);c[E>>2]=(c[E>>2]|0)+1}if((ca|0)==63
){ea=c[X>>2]|0;i=da;return ea|0}c[X>>2]=21;ea=c[X>>2]|0;i=da;return ea|0}while(0);if((ca|0)==49)c[
X>>2]=7;if(c[V>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}c[ba>>2]=(c[(c[aa>>2]|0)+24
+20>>2]|0)-(c[(c[aa>>2]|0)+24+8>>2]|0);c[ba+4>>2]=(c[(c[aa>>2]|0)+24+24>
x3e;2]|0)-(c[(c[aa>>2]|0)+24+12>>2]|0);c[ba>>2]=Mb(c[ba>>2]|0,c[(c[$>>2]|0)+4+
4>>2]|0)|0;c[ba+4>>2]=Mb(c[ba+4>>2]|0,c[(c[$>>2]|0)+4+8>>2]|0)|0;if(a[(c[S>
;>2]|0)+140>>0]|0){Kb((c[Y>>2]|0)+20|0,(c[S>>2]|0)+144|0);Lb(ba,(c[S>>2]|0)+144|0)}
if(c[(c[S>>2]|0)+168>>2]|0)Nb((c[Y>>2]|0)+20|0,0-(c[(c[S>>2]|0)+168>>2]|0)|0,0
);_d((c[Y>>2]|0)+20|0,W);c[W>>2]=c[W>>2]&-64;c[W+4>>2]=c[W+4>>2]&-64
;c[W+8>>2]=(c[W+8>>2]|0)+63&-64;c[W+12>>2]=(c[W+12>>2]|0)+63&-64;c[(c[aa>
x3e;2]|0)+24>>2]=(c[W+8>>2]|0)-(c[W>>2]|0);c[(c[aa>>2]|0)+24+4>>2]=(c[W+12>
;>2]|0)-(c[W+4>>2]|0);c[(c[aa>>2]|0)+24+8>>2]=c[W>>2];c[(c[aa>>2]|0)+24+12
>>2]=c[W+12>>2];c[(c[aa>>2]|0)+24+20>>2]=(c[W>>2]|0)+(c[ba>>2]|0)&
;-64;c[(c[aa>>2]|0)+24+24>>2]=(c[W+12>>2]|0)+(c[ba+4>>2]|0)&-64;do if(!(c[(c[(c[aa
x3e;>2]|0)+4>>2]|0)+8>>2]&4|0)){if((Lm(c[(c[S>>2]|0)+4>>2]|0,c[U>>2]|
0)|0)&255|0?d[(c[$>>2]|0)+32>>0]|0:0){ca=58;break}if(c[(c[aa>>2]|0)+24+16>>2]|0)c[(
c[aa>>2]|0)+24+16>>2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[(c[S>>2]|0)+168>>
2]|0)}else ca=58;while(0);if((ca|0)==58){ea=Mb(c[(c[aa>>2]|0)+24+16>>2]|0,c[(c[$>>2]|0)+4+4>
x3e;2]|0)|0;c[(c[aa>>2]|0)+24+16>>2]=ea;c[(c[aa>>2]|0)+144>>2]=0;c[(c[aa>>2]|0
)+148>>2]=0}ea=Mb(c[(c[aa>>2]|0)+24+28>>2]|0,c[(c[$>>2]|0)+4+8>>2]|0)|0;c[(c[aa
>>2]|0)+24+28>>2]=ea;c[(c[aa>>2]|0)+24+16>>2]=(c[(c[aa>>2]|0)+24+16>>
;2]|0)+32&-64;c[(c[aa>>2]|0)+24+28>>2]=(c[(c[aa>>2]|0)+24+28>>2]|0)+32&-64;dc(
c[c[_>>2]>>2]|0);c[X>>2]=pc(c[c[_>>2]>>2]|0,c[Y>>2]|0)|0;if(c[X>
;>2]|0){ea=c[X>>2]|0;i=da;return ea|0}ea=(c[aa>>2]|0)+108|0;ca=(c[c[_>>2]>>2]|0)+20
|0;c[ea>>2]=c[ca>>2];c[ea+4>>2]=c[ca+4>>2];c[ea+8>>2]=c[ca+8>>2];c[ea
+12>>2]=c[ca+12>>2];c[ea+16>>2]=c[ca+16>>2];c[(c[aa>>2]|0)+72>>2]=1869968492
;ea=c[X>>2]|0;i=da;return ea|0}function Lm(b,e){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[g
x3e;>2]=b;c[h>>2]=e;if((c[h>>2]|0)>>>0<(c[(c[g>>2]|0)+4>>2]|0)
x3e;>>0){a[f>>0]=(d[(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]|0)>>0]|0)&
128;b=a[f>>0]|0;i=j;return b|0}else{a[f>>0]=0;b=a[f>>0]|0;i=j;return b|0}return 0}function Mm(a){a
=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Nm((c[d>>2]|0)+20|0,c[c[(c[d>>2]|0)+4>>2]
x3e;>2]|0)|0;i=b;return a|0}function Nm(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
x3e;>2]=b;Ns(c[e>>2]|0,0,184)|0;Hl((c[e>>2]|0)+12|0,c[f>>2]|0);b=ac(c[f>>2]|0,(c[e
x3e;>2]|0)+8|0)|0;i=d;return b|0}function Om(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Pm((c[d>>2
]|0)+20|0);i=b;return}function Pm(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Ol((c[d>>2]|0)+12|0);c[c[d
>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;fc(c[(c[d>>2]|0)+8>>2]|0);c[(c[d>
;>2]|0)+8>>2]=0;i=b;return}function Qm(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
x3e;>2]|0)+108|0}function Rm(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)+120
|0}function Sm(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)+148|0}function Tm(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]=c[(c[d>>2]|0)+8>
x3e;2];c[e>>2]=(c[d>>2]|0)+20;Um((c[d>>2]|0)+20|0,c[f>>2]|0)|0;Vm((c[d>>2]|0)+
108|0);bn((c[d>>2]|0)+120|0);c[(c[d>>2]|0)+120>>2]=c[e>>2];ao((c[d>>2]|0)+148|
0);c[(c[d>>2]|0)+148>>2]=c[e>>2];i=b;return 0}function Um(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i
+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;a=c[d>>2]|0;b=a+88|0;do{c[a>>2]=0;a=a+4|0}while((a
|0)<(b|0));c[c[d>>2]>>2]=c[e>>2];i=f;return 0}function Vm(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]=45;c[(c[d>>2]|0)+4>>2]=24;c[(c[d>>2]|0)+8
>>2]=36;i=b;return}function Wm(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;t=i;i=i+48
|0;h=t+40|0;j=t+36|0;k=t+32|0;p=t+28|0;o=t+24|0;l=t+20|0;q=t+16|0;m=t+12|0;r=t+8|0;n=t+4|0;s=t;c[h>>2]=a;c[j>>
;2]=f;c[k>>2]=g;c[p>>2]=0;c[p>>2]=bc(c[h>>2]|0,2496,o)|0;if(c[o>>2]|0){r=c[p
x3e;>2]|0;s=c[k>>2]|0;c[s>>2]=r;s=c[o>>2]|0;i=t;return s|0}c[c[p>>2]>>2]=
c[h>>2];c[m>>2]=(c[p>>2]|0)+4+204;c[r>>2]=(c[m>>2]|0)+4;c[c[r>>2]>
;>2]=e[(c[j>>2]|0)+120>>1];c[r>>2]=(c[r>>2]|0)+12;c[q>>2]=(c[j>>
;2]|0)+128;c[l>>2]=d[(c[j>>2]|0)+124>>0];while(1){if((c[l>>2]|0)>>>0<
;=0)break;c[c[r>>2]>>2]=b[c[q>>2]>>1];c[r>>2]=(c[r>>2]|0)+12;c[q>
;>2]=(c[q>>2]|0)+2;c[l>>2]=(c[l>>2]|0)+-1}c[c[m>>2]>>2]=(d[(c[j>>
;2]|0)+124>>0]|0)+1;c[n>>2]=(c[p>>2]|0)+4;c[s>>2]=(c[n>>2]|0)+4;c[c[s>>
;2]>>2]=e[(c[j>>2]|0)+122>>1];c[s>>2]=(c[s>>2]|0)+12;c[q>>2]=(c[j>
;>2]|0)+154;c[l>>2]=d[(c[j>>2]|0)+125>>0];while(1){if((c[l>>2]|0)>>>
0<=0)break;c[c[s>>2]>>2]=b[c[q>>2]>>1];c[s>>2]=(c[s>>2]|0)+12;c
[q>>2]=(c[q>>2]|0)+2;c[l>>2]=(c[l>>2]|0)+-1}c[c[n>>2]>>2]=(d[(c[j>
;>2]|0)+125>>0]|0)+1;Xm((c[p>>2]|0)+412|0,d[(c[j>>2]|0)+8>>0]|0,(c[j>>2]|
0)+12|0,d[(c[j>>2]|0)+9>>0]|0,(c[j>>2]|0)+40|0,c[(c[j>>2]|0)+116>>2]|0,0);Xm((
c[p>>2]|0)+412|0,d[(c[j>>2]|0)+10>>0]|0,(c[j>>2]|0)+60|0,d[(c[j>>2]|0)+11>
;>0]|0,(c[j>>2]|0)+88|0,c[(c[j>>2]|0)+116>>2]|0,1);c[(c[p>>2]|0)+412+2064>>
;2]=c[(c[j>>2]|0)+108>>2];c[(c[p>>2]|0)+412+2068>>2]=c[(c[j>>2]|0)+112>
x3e;2];c[(c[p>>2]|0)+412+2076>>2]=c[(c[j>>2]|0)+116>>2];c[(c[p>>2]|0)+4+196>
;>2]=0;c[(c[p>>2]|0)+4+200>>2]=0;c[(c[p>>2]|0)+4+204+196>>2]=0;c[(c[p>>2]|
0)+4+204+200>>2]=0;r=c[p>>2]|0;s=c[k>>2]|0;c[s>>2]=r;s=c[o>>2]|0;i=t;return s|
0}function Xm(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;C=i;i=i+80|0;j=C+76|0;t=C+72|0;k=C+68|0;l=C+64|0;m=C+60|0;u=C+56|0;D=C+52|0;q=C+48|0;w=C+44|0;n=C
+40|0;x=C+36|0;r=C+32|0;o=C+28|0;s=C+24|0;p=C+20|0;z=C+16|0;A=C+12|0;v=C+8|0;y=C+4|0;B=C;c[j>>2]=a;c[t>>2]=b
;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[u>>2]=g;c[D>>2]=h;d=c[j>>2]|0;if(c[
D>>2]|0){c[q>>2]=d+1032;c[w>>2]=(c[j>>2]|0)+1548}else{c[q>>2]=d;c[w>>
;2]=(c[j>>2]|0)+516}c[c[q>>2]>>2]=0;c[c[w>>2]>>2]=0;Ym(c[j>>2]|0,0,c
[t>>2]|0,c[k>>2]|0,c[q>>2]|0,c[w>>2]|0);Ym(c[j>>2]|0,1,c[l>>2]|0,c[m
>>2]|0,c[q>>2]|0,c[w>>2]|0);c[n>>2]=c[c[q>>2]>>2];c[x>>2]=
c[c[w>>2]>>2];a:do if((c[n>>2]|0)>0){c[r>>2]=(c[q>>2]|0)+4;c[t>>
;2]=c[n>>2];while(1){if((c[t>>2]|0)>>>0<=0)break a;if((c[t>>2]|0)>>
x3e;0>1?(c[o>>2]=(c[(c[r>>2]|0)+32>>2]|0)-(c[c[r>>2]>>2]|0),(c[(c[r>
x3e;2]|0)+4>>2]|0)>(c[o>>2]|0)):0)c[(c[r>>2]|0)+4>>2]=c[o>>2];c[(c[r>
;>2]|0)+12>>2]=c[c[r>>2]>>2];c[(c[r>>2]|0)+8>>2]=(c[(c[r>>2]|0)+
4>>2]|0)+(c[c[r>>2]>>2]|0);c[t>>2]=(c[t>>2]|0)+-1;c[r>>2]=(c[r>
x3e;2]|0)+32}}while(0);b:do if((c[x>>2]|0)>0){c[s>>2]=(c[w>>2]|0)+4;c[t>>2]=c[x>
;>2];while(1){if((c[t>>2]|0)>>>0<=0)break b;if((c[t>>2]|0)>>>0>
1?(c[p>>2]=(c[c[s>>2]>>2]|0)-(c[(c[s>>2]|0)+32>>2]|0),(c[(c[s>>2]|0)+
4>>2]|0)<(c[p>>2]|0)):0)c[(c[s>>2]|0)+4>>2]=c[p>>2];c[(c[s>>2]|
0)+8>>2]=c[c[s>>2]>>2];c[(c[s>>2]|0)+12>>2]=(c[(c[s>>2]|0)+4>
x3e;2]|0)+(c[c[s>>2]>>2]|0);c[t>>2]=(c[t>>2]|0)+-1;c[s>>2]=(c[s>>2]|
0)+32}}while(0);c[B>>2]=(c[q>>2]|0)+4;c[t>>2]=c[n>>2];c[z>>2]=1;while(1){if((c
[z>>2]|0)<0)break;if((c[t>>2]|0)>>>0>0){D=(c[B>>2]|0)+12|0;c[D>>
;2]=(c[D>>2]|0)-(c[u>>2]|0);c[A>>2]=c[(c[B>>2]|0)+8>>2];c[t>>2]=(c[t
>>2]|0)+-1;while(1){if((c[t>>2]|0)>>>0<=0)break;c[v>>2]=c[(c[B>>2]|0
)+32+12>>2];c[y>>2]=(c[v>>2]|0)-(c[A>>2]|0);d=c[A>>2]|0;if((c[y>>2]|
0)<(c[u>>2]<<1|0)){D=d+((c[y>>2]|0)/2|0)|0;c[(c[B>>2]|0)+32+12>>2]=D;c[(c
[B>>2]|0)+8>>2]=D}else{c[(c[B>>2]|0)+8>>2]=d+(c[u>>2]|0);c[(c[B>>2]|
0)+32+12>>2]=(c[v>>2]|0)-(c[u>>2]|0)}c[B>>2]=(c[B>>2]|0)+32;c[A>>2]=
c[(c[B>>2]|0)+8>>2];c[t>>2]=(c[t>>2]|0)+-1}c[(c[B>>2]|0)+8>>2]=(c[A
x3e;>2]|0)+(c[u>>2]|0)}c[B>>2]=(c[w>>2]|0)+4;c[t>>2]=c[x>>2];c[z>>
;2]=(c[z>>2]|0)+-1}i=C;return}function Ym(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;A=i;i=i+64|0;B=A+48|0;l=A+54|0;m=A+44|0;n=A+40|0;o=A+36|0;p=A+32|0;s=A+28|0;r=A+24|
0;v=A+53|0;w=A+20|0;t=A+16|0;q=A+12|0;z=A+8|0;y=A+4|0;x=A+52|0;u=A;c[B>>2]=e;a[l>>0]=f;c[m>>2]=g;c
[n>>2]=h;c[o>>2]=j;c[p>>2]=k;c[s>>2]=c[c[o>>2]>>2];c[r>>2]=
c[c[p>>2]>>2];a[v>>0]=1;c[B>>2]=c[B>>2];while(1){if((c[m>>2]|0)>
;>>0<=1)break;a[x>>0]=0;if(!(d[v>>0]|0)?!(d[l>>0]|0):0){c[w>>2]=b[c[n>
;>2]>>1];c[t>>2]=(b[(c[n>>2]|0)+2>>1]|0)-(c[w>>2]|0);c[z>>2]=(c
[o>>2]|0)+4;c[q>>2]=c[s>>2];a[x>>0]=1}else{c[w>>2]=b[(c[n>>2]|0)+2
x3e;>1];c[t>>2]=(b[c[n>>2]>>1]|0)-(c[w>>2]|0);c[z>>2]=(c[p>>2]|
0)+4;c[q>>2]=c[r>>2];a[v>>0]=0}c[y>>2]=c[z>>2];while(1){if((c[q>>2]|
0)>>>0<=0){k=17;break}if((c[w>>2]|0)<(c[c[y>>2]>>2]|0)){k=17;break}if((c[
w>>2]|0)==(c[c[y>>2]>>2]|0)){k=11;break}c[q>>2]=(c[q>>2]|0)+-1;c[y>>
2]=(c[y>>2]|0)+32}do if((k|0)==11){c[u>>2]=c[(c[y>>2]|0)+4>>2];k=c[t>>2]|0;f=c
[u>>2]|0;if((c[t>>2]|0)<0){if((k|0)>=(f|0))break;c[(c[y>>2]|0)+4>>2]=c[t>
x3e;2];break}else{if((k|0)<=(f|0))break;c[(c[y>>2]|0)+4>>2]=c[t>>2];break}}else if((k|0)==17){
while(1){if((c[q>>2]|0)>>>0<=0)break;k=(c[y>>2]|0)+(c[q>>2]<<5)|0;B=(
c[y>>2]|0)+((c[q>>2]|0)-1<<5)|0;c[k>>2]=c[B>>2];c[k+4>>2]=c[B+4>
;>2];c[k+8>>2]=c[B+8>>2];c[k+12>>2]=c[B+12>>2];c[k+16>>2]=c[B+16>>
;2];c[k+20>>2]=c[B+20>>2];c[k+24>>2]=c[B+24>>2];c[k+28>>2]=c[B+28>>2
];c[q>>2]=(c[q>>2]|0)+-1;k=17}c[c[y>>2]>>2]=c[w>>2];c[(c[y>>2]|0)+4
x3e;>2]=c[t>>2];if(a[x>>0]|0){c[s>>2]=(c[s>>2]|0)+1;break}else{c[r>>2]=(c
[r>>2]|0)+1;break}}while(0);c[n>>2]=(c[n>>2]|0)+4;c[m>>2]=(c[m>>2]|0)-2}c[c[o
x3e;>2]>>2]=c[s>>2];c[c[p>>2]>>2]=c[r>>2];i=A;return}function Zm(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;n=i;i=i+32|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g
>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=(c[g>>
;2]|0)+4;c[m>>2]=(c[g>>2]|0)+4;if(!((c[h>>2]|0)==(c[(c[m>>2]|0)+196>>2]|0)?(c[
k>>2]|0)==(c[(c[m>>2]|0)+200>>2]|0):0)){c[(c[m>>2]|0)+196>>2]=c[h>>2
];c[(c[m>>2]|0)+200>>2]=c[k>>2];_m(c[g>>2]|0,0)}c[m>>2]=(c[g>>2]|0)+
4+204;if((c[j>>2]|0)==(c[(c[m>>2]|0)+196>>2]|0)?(c[l>>2]|0)==(c[(c[m>>2]|0)+200
>>2]|0):0){i=n;return 0}c[(c[m>>2]|0)+196>>2]=c[j>>2];c[(c[m>>2]|0)+200>
x3e;2]=c[l>>2];_m(c[g>>2]|0,1);$m((c[g>>2]|0)+412|0,c[j>>2]|0,c[l>>2]|0);i=n;return
0}function _m(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;k=i;i=i+48|0;o=k+36|0;n=k+32|0;l=k+28|0;m=k+24|0
;d=k+20|0;j=k+16|0;g=k+12|0;f=k+8|0;h=k+4|0;e=k;c[o>>2]=a;c[n>>2]=b;c[l>>2]=(c[o>>2]|0)+
4+((c[n>>2]|0)*204|0);c[m>>2]=c[l>>2];c[d>>2]=c[c[m>>2]>>2];c[j>
;>2]=(c[m>>2]|0)+4;c[g>>2]=c[j>>2];c[f>>2]=c[(c[l>>2]|0)+196>>2
];if((c[d>>2]|0)>>>0<=0){i=k;return}o=Mb(c[c[j>>2]>>2]|0,c[f>>2]|0)|
0;c[(c[j>>2]|0)+4>>2]=o;c[(c[j>>2]|0)+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+
32&-64;c[j>>2]=(c[j>>2]|0)+12;c[d>>2]=(c[d>>2]|0)+-1;while(1){if((c[d>>2]|
0)>>>0<=0)break;c[h>>2]=Mb(c[c[j>>2]>>2]|0,c[f>>2]|0)|0;c[e>>
;2]=(c[h>>2]|0)-(c[(c[g>>2]|0)+4>>2]|0);if((c[e>>2]|0)<0)c[e>>2]=0-(c[e
x3e;>2]|0);if((c[e>>2]|0)<128)c[h>>2]=c[(c[g>>2]|0)+4>>2];c[(c[j>>2]|
0)+4>>2]=c[h>>2];c[(c[j>>2]|0)+8>>2]=(c[h>>2]|0)+32&-64;c[d>>2]=(
c[d>>2]|0)+-1;c[j>>2]=(c[j>>2]|0)+12}i=k;return}function $m(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;w=i;i=i+64|0;l=w+56|0;m=w+52|0;f=w+48|0;g=w+44|0;s=w+40|0;h=w+36|0;j=
w+32|0;k=w+28|0;t=w+24|0;u=w+20|0;o=w+16|0;p=w+12|0;r=w+8|0;q=w+4|0;n=w;c[l>>2]=b;c[m>>2]=d;c[f>>2
]=e;c[h>>2]=0;b=c[m>>2]|0;if((c[m>>2]|0)>=34359738)a[(c[l>>2]|0)+2080>>0]=(
b|0)<((c[(c[l>>2]|0)+2064>>2]<<3|0)/125|0|0);else a[(c[l>>2]|0)+2080>>0]=(
b*125|0)<(c[(c[l>>2]|0)+2064>>2]<<3|0);c[j>>2]=c[(c[l>>2]|0)+2068>
x3e;2];while(1){if((c[j>>2]|0)>0)b=(Mb(c[j>>2]|0,c[m>>2]|0)|0)>32;else b=0;e=c[j>
x3e;2]|0;if(!b)break;c[j>>2]=e+-1}c[(c[l>>2]|0)+2072>>2]=e;c[s>>2]=0;while(1){if((c[s>
;>2]|0)>>>0>=4)break;switch(c[s>>2]|0){case 0:{c[h>>2]=c[l>>2];break}case
1:{c[h>>2]=(c[l>>2]|0)+516;break}case 2:{c[h>>2]=(c[l>>2]|0)+1032;break}default:c[h>
;>2]=(c[l>>2]|0)+1548}c[k>>2]=(c[h>>2]|0)+4;c[g>>2]=c[c[h>>2]>>
2];while(1){if((c[g>>2]|0)>>>0<=0)break;j=Mb(c[(c[k>>2]|0)+8>>2]|0,c[m>
x3e;2]|0)|0;c[(c[k>>2]|0)+28>>2]=j+(c[f>>2]|0);j=Mb(c[(c[k>>2]|0)+12>>2]|0,c[m
>>2]|0)|0;c[(c[k>>2]|0)+24>>2]=j+(c[f>>2]|0);j=Mb(c[c[k>>2]>>2]|0,c[
m>>2]|0)|0;c[(c[k>>2]|0)+16>>2]=j+(c[f>>2]|0);j=Mb(c[(c[k>>2]|0)+4>>
2]|0,c[m>>2]|0)|0;c[(c[k>>2]|0)+20>>2]=j;c[(c[k>>2]|0)+16>>2]=(c[(c[k>>
;2]|0)+16>>2]|0)+32&-64;c[g>>2]=(c[g>>2]|0)+-1;c[k>>2]=(c[k>>2]|0)+32}c[s
>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=2)break;b=
c[l>>2]|0;if(!(c[s>>2]|0)){c[r>>2]=b;c[q>>2]=(c[l>>2]|0)+1032}else{c[r>
x3e;2]=b+516;c[q>>2]=(c[l>>2]|0)+1548}c[t>>2]=(c[r>>2]|0)+4;c[o>>2]=c[c[r>
;>2]>>2];while(1){if((c[o>>2]|0)>>>0<=0)break;c[u>>2]=(c[q>>2]|
0)+4;c[p>>2]=c[c[q>>2]>>2];while(1){if((c[p>>2]|0)>>>0<=0)break;c[n
x3e;>2]=(c[c[t>>2]>>2]|0)-(c[c[u>>2]>>2]|0);if((c[n>>2]|0)<0)c[n>
;>2]=0-(c[n>>2]|0);if((Mb(c[n>>2]|0,c[m>>2]|0)|0)<64){v=32;break}c[p>>2]=(c[p
x3e;>2]|0)+-1;c[u>>2]=(c[u>>2]|0)+32}if((v|0)==32){v=0;c[(c[t>>2]|0)+28>>2]=c[(c[u
x3e;>2]|0)+28>>2];c[(c[t>>2]|0)+24>>2]=c[(c[u>>2]|0)+24>>2];c[(c[t>
x3e;2]|0)+16>>2]=c[(c[u>>2]|0)+16>>2];c[(c[t>>2]|0)+20>>2]=c[(c[u>>2
]|0)+20>>2]}c[o>>2]=(c[o>>2]|0)+-1;c[t>>2]=(c[t>>2]|0)+32}c[s>>2]=(c
[s>>2]|0)+1}i=w;return}function an(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(!(c[b>
;>2]|0)){i=e;return}c[d>>2]=c[c[b>>2]>>2];c[(c[b>>2]|0)+4>>2]=0;c[(c[b>
;>2]|0)+4+204>>2]=0;c[(c[b>>2]|0)+412>>2]=0;c[(c[b>>2]|0)+412+516>>2]=0;c
[(c[b>>2]|0)+412+1032>>2]=0;c[(c[b>>2]|0)+412+1548>>2]=0;Fb(c[d>>2]|0,c[b>
;>2]|0);c[b>>2]=0;i=e;return}function bn(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=b;b=c[e>
;>2]|0;d=b+28|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(d|0));c[(c[e>>2]|0)+4>>2]=37;c[(c[e>
;>2]|0)+8>>2]=108;c[(c[e>>2]|0)+12>>2]=13;c[(c[e>>2]|0)+16>>2]=14;c[(c[e
x3e;>2]|0)+20>>2]=5;c[(c[e>>2]|0)+24>>2]=24;i=f;return}function cn(a){a=a|0;var b=0,d=0;b=i;i
=i+16|0;d=b;c[d>>2]=a;dn(c[d>>2]|0,1);i=b;return}function dn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d
=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;b=(c[d>>2]|0)+4|0;if(((c[e>>2]|0)+-1|0)>>>
0<2){c[b>>2]=0;c[(c[d>>2]|0)+12>>2]=c[e>>2];en((c[d>>2]|0)+16|0);en((c[d
x3e;>2]|0)+16+36|0);i=f;return}else{c[b>>2]=6;c[(c[d>>2]|0)+12>>2]=c[e>>2];i=f;return
}}function en(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]=0;c[(c[d>>2]|
0)+12>>2]=0;c[(c[d>>2]|0)+24>>2]=0;i=b;return}function fn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0
,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;g=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[g>>2]=c[(c[d>
x3e;2]|0)+4>>2];if(c[g>>2]|0){h=c[g>>2]|0;i=j;return h|0}c[h>>2]=c[c[d>>2]>
;>2];c[f>>2]=(c[d>>2]|0)+16;c[g>>2]=gn(c[f>>2]|0,c[e>>2]|0,c[h>>
;2]|0)|0;if(c[g>>2]|0){h=c[g>>2]|0;i=j;return h|0}c[g>>2]=gn((c[f>>2]|0)+36|0,c[e>
x3e;2]|0,c[h>>2]|0)|0;h=c[g>>2]|0;i=j;return h|0}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+16|0;g=e+8|0;h=e+4|0;f=e;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;hn(c[g>>2]|0,c[h>>
;2]|0);d=jn((c[g>>2]|0)+24|0,c[f>>2]|0)|0;i=e;return d|0}function hn(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|0)+12
>>2];if((c[f>>2]|0)>>>0<=0){i=h;return}c[g>>2]=(c[(c[d>>2]|0)+12+8
x3e;>2]|0)+(c[f>>2]<<4)+-16;c[(c[g>>2]|0)+12>>2]=c[e>>2];i=h;return}function
jn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+16|0;e=k+12|0;g=k+8|0;h=k+4|0;f=k;c[d>>2]=a;c[e
x3e;>2]=b;c[f>>2]=0;c[g>>2]=(c[c[d>>2]>>2]|0)-1;while(1){if((c[g>>2]|0)
x3c;=0){j=9;break}c[h>>2]=(c[g>>2]|0)-1;while(1){if((c[h>>2]|0)<0)break;if(kn(c[d>>
2]|0,c[g>>2]|0,c[h>>2]|0)|0){j=6;break}c[h>>2]=(c[h>>2]|0)+-1}if((j|0)==6?(j=0,c[f>
x3e;2]=ln(c[d>>2]|0,c[h>>2]|0,c[g>>2]|0,c[e>>2]|0)|0,c[f>>2]|0):0){j=9;break}c
[g>>2]=(c[g>>2]|0)+-1}if((j|0)==9){i=k;return c[f>>2]|0}return 0}function kn(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;l=i;i=i+48|0;f=l+40|0;r=l+36|0;s=l+32|0;q=l+28|0;p=l+24|0;o=l+20|0;h
=l+16|0;j=l+12|0;n=l+8|0;m=l+4|0;g=l;c[r>>2]=a;c[s>>2]=b;c[q>>2]=e;c[p>>2]=(c[(c[r>
x3e;2]|0)+8>>2]|0)+(c[s>>2]<<4);c[o>>2]=(c[(c[r>>2]|0)+8>>2]|0)+(c[q
>>2]<<4);c[h>>2]=c[(c[p>>2]|0)+8>>2];c[j>>2]=c[(c[o>>2]|0)+
8>>2];c[n>>2]=c[c[p>>2]>>2];c[m>>2]=c[c[o>>2]>>2];c[g>
;>2]=(c[n>>2]|0)>>>0<=(c[m>>2]|0)>>>0?c[n>>2]|0:c[m>
x3e;2]|0;while(1){if((c[g>>2]|0)>>>0<8)break;if((d[c[h>>2]>>0]|0)&(d[c[j
x3e;>2]>>0]|0)|0){k=4;break}c[h>>2]=(c[h>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1;c
[g>>2]=(c[g>>2]|0)-8}if((k|0)==4){c[f>>2]=1;s=c[f>>2]|0;i=l;return s|0}if(!(c[g>>
;2]|0)){c[f>>2]=0;s=c[f>>2]|0;i=l;return s|0}else{c[f>>2]=(d[c[h>>2]>>0]|0)&
;(d[c[j>>2]>>0]|0)&~(255>>c[g>>2]);s=c[f>>2]|0;i=l;return s|0}return 0}function
ln(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;x=i;i=i+80|0;h=x+68|0;j
=x+64|0;k=x+60|0;l=x+56|0;v=x+52|0;q=x+48|0;r=x+44|0;s=x+40|0;m=x+36|0;n=x+32|0;o=x+28|0;t=x+24|0;u=x+20|0;w=x+16|0;p=x;c[h>
;>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[q>>2]=0;if((c[j>>2]|0)>(c[k
x3e;>2]|0)){c[v>>2]=c[j>>2];c[j>>2]=c[k>>2];c[k>>2]=c[v>>2]}if(!((
c[j>>2]|0)>=0?(c[j>>2]|0)<(c[k>>2]|0):0)){w=c[q>>2]|0;i=x;return w|0}if((c[k
x3e;>2]|0)>=(c[c[h>>2]>>2]|0)){w=c[q>>2]|0;i=x;return w|0}c[r>>2]=(c[(c[h>
;>2]|0)+8>>2]|0)+(c[j>>2]<<4);c[s>>2]=(c[(c[h>>2]|0)+8>>2]|0)+(
c[k>>2]<<4);c[m>>2]=c[c[r>>2]>>2];c[n>>2]=c[c[s>>2]>
x3e;2];a:do if((c[n>>2]|0)>>>0>0){b:do if((c[n>>2]|0)>>>0>(c[m>
x3e;2]|0)>>>0){c[q>>2]=mn(c[r>>2]|0,c[n>>2]|0,c[l>>2]|0)|0;if(c[q>
x3e;2]|0){w=c[q>>2]|0;i=x;return w|0}c[t>>2]=c[m>>2];while(1){if((c[t>>2]|0)>>
x3e;0>=(c[n>>2]|0)>>>0)break b;nn(c[r>>2]|0,c[t>>2]|0);c[t>>2]=(c[t
x3e;>2]|0)+1}}while(0);c[u>>2]=c[(c[s>>2]|0)+8>>2];c[w>>2]=c[(c[r>>2]|0)+
8>>2];c[t>>2]=((c[n>>2]|0)+7|0)>>>3;while(1){if((c[t>>2]|0)>>
x3e;0<=0)break a;a[c[w>>2]>>0]=d[c[w>>2]>>0]|0|(d[c[u>>2]>>0]|0
);c[w>>2]=(c[w>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+-1
}}while(0);c[c[s>>2]>>2]=0;c[(c[s>>2]|0)+12>>2]=0;c[o>>2]=(c[c[h>>2]
x3e;>2]|0)-1-(c[k>>2]|0);if((c[o>>2]|0)>0){w=c[s>>2]|0;c[p>>2]=c[w>>
2];c[p+4>>2]=c[w+4>>2];c[p+8>>2]=c[w+8>>2];c[p+12>>2]=c[w+12>>2];Ts(
c[s>>2]|0,(c[s>>2]|0)+16|0,c[o>>2]<<4|0)|0;w=(c[s>>2]|0)+(c[o>>2]<
;<4)|0;c[w>>2]=c[p>>2];c[w+4>>2]=c[p+4>>2];c[w+8>>2]=c[p+8>>2];
c[w+12>>2]=c[p+12>>2]}w=c[h>>2]|0;c[w>>2]=(c[w>>2]|0)+-1;w=c[q>>2]|0
;i=x;return w|0}function mn(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;k=i;i=i+32|0;e=k+20|0;l=k+16|0;f=k+12|0;j=k
+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=((c[(c[e>>2]|0)+4>
x3e;2]|0)+7|0)>>>3;c[h>>2]=((c[l>>2]|0)+7|0)>>>3;c[g>>2]=0;if((c[h
x3e;>2]|0)>>>0<=(c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>
;>2]=(c[h>>2]|0)+7&-8;l=hc(c[f>>2]|0,1,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2
]|0)+8>>2]|0,g)|0;c[(c[e>>2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l
|0}c[(c[e>>2]|0)+4>>2]=c[h>>2]<<3;l=c[g>>2]|0;i=k;return l|0}function nn(b,e){
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]=b;c[g>>2]=e;if((c[g>>2]|0
)>>>0>=(c[c[f>>2]>>2]|0)>>>0){i=j;return}c[h>>2]=(c[(c[f>
x3e;2]|0)+8>>2]|0)+(c[g>>2]>>3);a[c[h>>2]>>0]=(d[c[h>>2]>>
0]|0)&~(128>>(c[g>>2]&7));i=j;return}function on(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]=(Tb(c[c
[j>>2]>>2]|0)|0)>>16;c[f+4>>2]=(Tb(c[(c[j>>2]|0)+4>>2]|0)|0)>
x3e;16;pn(c[h>>2]|0,c[g>>2]|0,1,f);i=e;return}function pn(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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;h=o+16|0;j=o+12|0;k=o+8|0;l=o+4|0;m=o;c[f>>2]=a;c[g>>2
]=b;c[h>>2]=d;c[j>>2]=e;if(c[(c[f>>2]|0)+4>>2]|0){i=o;return}if((c[g>>2]|0)<
;0|(c[g>>2]|0)>1)c[g>>2]=(c[g>>2]|0)!=0&1;if(((c[(c[f>>2]|0)+12>>2]|
0)+-1|0)>>>0>=2){i=o;return}c[k>>2]=(c[f>>2]|0)+16+((c[g>>2]|0)*36|0);while(1){
if((c[h>>2]|0)>>>0<=0){n=10;break}c[m>>2]=c[c[f>>2]>>2];c[l>>
;2]=qn(c[k>>2]|0,c[c[j>>2]>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[m>>2]|0,0)|
0;if(c[l>>2]|0)break;c[h>>2]=(c[h>>2]|0)+-1;c[j>>2]=(c[j>>2]|0)+8}if((n|0)==10
){i=o;return}c[(c[f>>2]|0)+4>>2]=c[l>>2];i=o;return}function qn(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;s=i;i=i+48|0;g=s+40|0;h=s+36|0;j=s+32|0;k=s+28|0;l=s+24|0;m=s+20|0;n=
s+16|0;q=s+12|0;p=s+8|0;r=s+4|0;o=s;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>
;2]=f;c[m>>2]=0;c[n>>2]=0;if((c[j>>2]|0)<0){c[n>>2]=c[n>>2]|1;if((c[j>
;>2]|0)==-21){c[n>>2]=c[n>>2]|2;c[h>>2]=(c[h>>2]|0)+(c[j>>2]|0)}c[j>
x3e;2]=0}if(c[l>>2]|0)c[c[l>>2]>>2]=-1;c[r>>2]=c[c[g>>2]>>2];c[o>
;>2]=c[(c[g>>2]|0)+8>>2];c[p>>2]=0;while(1){if((c[p>>2]|0)>>>0>=(
c[r>>2]|0)>>>0)break;if((c[c[o>>2]>>2]|0)==(c[h>>2]|0)?(c[(c[o>>
;2]|0)+4>>2]|0)==(c[j>>2]|0):0)break;c[p>>2]=(c[p>>2]|0)+1;c[o>>2]=(c[o>
x3e;2]|0)+12}do if((c[p>>2]|0)>>>0>=(c[r>>2]|0)>>>0){c[m>>2]=rn
(c[g>>2]|0,c[k>>2]|0,o)|0;if(c[m>>2]|0){b=c[m>>2]|0;i=s;return b|0}else{c[c[o>>
;2]>>2]=c[h>>2];c[(c[o>>2]|0)+4>>2]=c[j>>2];c[(c[o>>2]|0)+8>>
;2]=c[n>>2];break}}while(0);c[m>>2]=tn((c[g>>2]|0)+12|0,c[k>>2]|0,q)|0;if(c[m>>
;2]|0){b=c[m>>2]|0;i=s;return b|0}c[m>>2]=wn(c[q>>2]|0,c[p>>2]|0,c[k>>2]|0)|0;
if(!((c[m>>2]|0)==0&(c[l>>2]|0)!=0)){b=c[m>>2]|0;i=s;return b|0}c[c[l>>2]>>
;2]=c[p>>2];b=c[m>>2]|0;i=s;return b|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;
l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;j=l+8|0;h=l+4|0;k=l;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>
;>2]=0;c[k>>2]=0;c[h>>2]=c[c[e>>2]>>2];c[h>>2]=(c[h>>2]|0)+1;if
((c[h>>2]|0)>>>0>=(c[(c[e>>2]|0)+4>>2]|0)>>>0?(c[j>>2
]=sn(c[e>>2]|0,c[h>>2]|0,c[f>>2]|0)|0,c[j>>2]|0):0){b=c[k>>2]|0;a=c[g>>
;2]|0;c[a>>2]=b;a=c[j>>2]|0;i=l;return a|0}c[k>>2]=(c[(c[e>>2]|0)+8>>2]|0)+((c
[h>>2]|0)*12|0)+-12;c[c[k>>2]>>2]=0;c[(c[k>>2]|0)+4>>2]=0;c[(c[k>>2]|
0)+8>>2]=0;c[c[e>>2]>>2]=c[h>>2];b=c[k>>2]|0;a=c[g>>2]|0;c[a>
x3e;2]=b;a=c[j>>2]|0;i=l;return a|0}function sn(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;k=i;i=i+32|0;
e=k+20|0;l=k+16|0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=c[(
c[e>>2]|0)+4>>2];c[h>>2]=c[l>>2];c[g>>2]=0;if((c[h>>2]|0)>>
;>0<=(c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>>2]=(c[h>>
2]|0)+7&-8;l=hc(c[f>>2]|0,12,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+8>>2]|0,g)|
0;c[(c[e>>2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l|0}c[(c[e>>2]|0)+
4>>2]=c[h>>2];l=c[g>>2]|0;i=k;return l|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;k=i;i=i+32|0;l=k+20|0;e=k+16|0;f=k+12|0;h=k+8|0;g=k+4|0;j=k;c[l>>2]=a;c[e>>2]=b;c[f>>2
]=d;c[h>>2]=0;c[g>>2]=c[c[l>>2]>>2];d=c[l>>2]|0;if(!(c[g>>2]|0)){c[h
>>2]=un(d,c[e>>2]|0,j)|0;j=c[j>>2]|0;l=c[f>>2]|0;c[l>>2]=j;l=c[h>>2]|
0;i=k;return l|0}else{c[j>>2]=(c[d+8>>2]|0)+(c[g>>2]<<4)+-16;j=c[j>>2]|0;l=c[f
>>2]|0;c[l>>2]=j;l=c[h>>2]|0;i=k;return l|0}return 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;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[e>>2]=a;c[f>>2]=b;c[g
x3e;>2]=d;c[j>>2]=0;c[k>>2]=0;c[h>>2]=c[c[e>>2]>>2];c[h>>2]=(c[
h>>2]|0)+1;if((c[h>>2]|0)>>>0>(c[(c[e>>2]|0)+4>>2]|0)>>>
;0?(c[j>>2]=vn(c[e>>2]|0,c[h>>2]|0,c[f>>2]|0)|0,c[j>>2]|0):0){b=c[k>>
;2]|0;a=c[g>>2]|0;c[a>>2]=b;a=c[j>>2]|0;i=l;return a|0}c[k>>2]=(c[(c[e>>2]|0)+
8>>2]|0)+(c[h>>2]<<4)+-16;c[c[k>>2]>>2]=0;c[(c[k>>2]|0)+12>>
;2]=0;c[c[e>>2]>>2]=c[h>>2];b=c[k>>2]|0;a=c[g>>2]|0;c[a>>2]=b;a=c[j
x3e;>2]|0;i=l;return a|0}function vn(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;k=i;i=i+32|0;e=k+20|0;l=k+16|
0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=c[(c[e>>2
]|0)+4>>2];c[h>>2]=c[l>>2];c[g>>2]=0;if((c[h>>2]|0)>>>0<=(
c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>>2]=(c[h>>2]|0)+7&-8;
l=hc(c[f>>2]|0,16,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+8>>2]|0,g)|0;c[(c[e>
x3e;2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l|0}c[(c[e>>2]|0)+4>>2]=
c[h>>2];l=c[g>>2]|0;i=k;return l|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;m=i;i=i+
32|0;g=m+16|0;h=m+12|0;j=m+8|0;k=m+4|0;l=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=0;if((c
[h>>2]|0)<0){l=c[k>>2]|0;i=m;return l|0}do if((c[h>>2]|0)>>>0>=(c[c[g>
;>2]>>2]|0)>>>0){c[k>>2]=mn(c[g>>2]|0,(c[h>>2]|0)+1|0,c[j>>
;2]|0)|0;if(c[k>>2]|0){l=c[k>>2]|0;i=m;return l|0}else{c[c[g>>2]>>2]=(c[h>>2]|
0)+1;break}}while(0);c[l>>2]=(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]>>3);a[c[l>
x3e;2]>>0]=d[c[l>>2]>>0]|0|128>>(c[h>>2]&7);l=c[k>>2]|0;i=m;return
l|0}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,l=0,m=0,n=0;n=i;i=i+48|0;f=n+36|0;e=n+32|0;g=n+28|0;k=n+24
|0;j=n+20|0;m=n+16|0;h=n+12|0;l=n;c[f>>2]=a;c[e>>2]=b;c[g>>2]=d;c[k>>2]=0;if(c[(c[f>
;>2]|0)+4>>2]|0){i=n;return}c[m>>2]=c[c[f>>2]>>2];if((c[e>>2]|0)<0|(
c[e>>2]|0)>1)c[e>>2]=(c[e>>2]|0)!=0&1;c[j>>2]=(c[f>>2]|0)+16+((c[e
x3e;>2]|0)*36|0);a:do if((c[(c[f>>2]|0)+12>>2]|0)==1){c[h>>2]=0;while(1){e=c[j>>2]|
0;if((c[h>>2]|0)>=3)break;a=(Tb(c[c[g>>2]>>2]|0)|0)>>16;d=(Tb(c[(c[g>>2]|
0)+4>>2]|0)|0)>>16;c[k>>2]=qn(e,a,d,c[m>>2]|0,l+(c[h>>2]<<2)|0)|0;if
(c[k>>2]|0)break a;c[h>>2]=(c[h>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+8}c[k>>
2]=yn(e,c[l>>2]|0,c[l+4>>2]|0,c[l+8>>2]|0,c[m>>2]|0)|0;if(!(c[k>>2]|0)){i=n;return
}}else c[k>>2]=6;while(0);c[(c[f>>2]|0)+4>>2]=c[k>>2];i=n;return}function yn(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;p=i;i=i+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;
o=p+8|0;m=p+4|0;n=p;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[o>
;>2]=0;c[m>>2]=c[(c[g>>2]|0)+24>>2];c[n>>2]=c[(c[g>>2]|0)+24+8>>
;2];while(1){if((c[m>>2]|0)>>>0<=0)break;if(zn(c[n>>2]|0,c[h>>2]|0)|0)break;if
(zn(c[n>>2]|0,c[j>>2]|0)|0)break;if(zn(c[n>>2]|0,c[k>>2]|0)|0)break;c[m>>2]=(c
[m>>2]|0)+-1;c[n>>2]=(c[n>>2]|0)+16}if((c[m>>2]|0)==0?(c[o>>2]=un((c[g>
x3e;2]|0)+24|0,c[l>>2]|0,n)|0,c[o>>2]|0):0){f=c[o>>2]|0;i=p;return f|0}c[o>>2]=wn(c[n>
;>2]|0,c[h>>2]|0,c[l>>2]|0)|0;if(c[o>>2]|0){f=c[o>>2]|0;i=p;return f|0}c[o>>
;2]=wn(c[n>>2]|0,c[j>>2]|0,c[l>>2]|0)|0;if(c[o>>2]|0){f=c[o>>2]|0;i=p;return f
|0}c[o>>2]=wn(c[n>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;f=c[o>>2]|0;i=p;return f|0}function
zn(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=b;if((c[g>
x3e;2]|0)>>>0>=(c[c[f>>2]>>2]|0)>>>0){c[e>>2]=0;a=c[e>>
;2]|0;i=h;return a|0}else{c[e>>2]=(d[(c[(c[f>>2]|0)+8>>2]|0)+(c[g>>2]>>3)>
;>0]|0)&128>>(c[g>>2]&7);a=c[e>>2]|0;i=h;return a|0}return 0}function An(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>
2]=0;if(c[(c[d>>2]|0)+4>>2]|0){i=h;return}c[g>>2]=c[c[d>>2]>>2];if((c[(c[d>
;>2]|0)+12>>2]|0)==1){c[f>>2]=Bn((c[d>>2]|0)+16|0,c[e>>2]|0,c[g>>2]|0)|0;
if((c[f>>2]|0)==0?(c[f>>2]=Bn((c[d>>2]|0)+16+36|0,c[e>>2]|0,c[g>>2]|0)|0,(c[f
x3e;>2]|0)==0):0){i=h;return}}else c[f>>2]=6;c[(c[d>>2]|0)+4>>2]=c[f>>2];i=h;return
}function Bn(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+8|0;f=e+4|0;c[g>>2]=a;c[h>>
;2]=b;c[f>>2]=d;hn(c[g>>2]|0,c[h>>2]|0);d=un((c[g>>2]|0)+12|0,c[f>>2]|0,e)|0;i
=e;return d|0}function Cn(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,x=0,y
=0,z=0;z=i;i=i+208|0;h=z+192|0;j=z+188|0;k=z+184|0;l=z+180|0;m=z+176|0;s=z+40|0;q=z+36|0;p=z+32|0;n=z+28|0;o=z+24|0;x=z+20|0;y=z
+16|0;t=z+12|0;u=z+8|0;w=z+4|0;r=z;v=z+196|0;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[s
>>2]=z+48;if(b[(c[k>>2]|0)+2>>1]|0?b[c[k>>2]>>1]|0:0){c[q>>2]=Dn(c[s
>>2]|0,c[k>>2]|0,c[j>>2]|0,c[l>>2]|0)|0;a:do if(!(c[q>>2]|0)){c[n>>2
]=(c[(c[s>>2]|0)+24>>2]|0)+4;c[o>>2]=(c[(c[s>>2]|0)+24>>2]|0)+4+204;c[x>
x3e;2]=c[(c[n>>2]|0)+196>>2];c[y>>2]=c[(c[o>>2]|0)+196>>2];c[t>>2]=c
[x>>2];c[u>>2]=c[y>>2];a[v>>0]=0;c[w>>2]=Mb(c[(c[l>>2]|0)+412+4>
;>2]|0,c[y>>2]|0)|0;c[r>>2]=(c[w>>2]|0)+32&-64;if(c[r>>2]|0?(c[w>>2]|
0)!=(c[r>>2]|0):0){a[v>>0]=1;c[y>>2]=xb(c[y>>2]|0,c[r>>2]|0,c[w>>2]|
0)|0;if((c[r>>2]|0)<(c[w>>2]|0))c[x>>2]=(c[x>>2]|0)-((c[x>>2]|0)/50|0);Zm
(c[(c[s>>2]|0)+24>>2]|0,c[x>>2]|0,c[y>>2]|0,0,0)|0}a[(c[s>>2]|0)+120>>
;0]=1;a[(c[s>>2]|0)+121>>0]=1;a[(c[s>>2]|0)+122>>0]=((c[m>>2]|0)==2?1:(c[m>
;>2]|0)==3)&1;a[(c[s>>2]|0)+123>>0]=((c[m>>2]|0)==2?1:(c[m>>2]|0)==4)&1;a
[(c[s>>2]|0)+124>>0]=(c[m>>2]|0)!=1;c[p>>2]=0;while(1){if((c[p>>2]|0)>=2)
break a;Fn(c[s>>2]|0,c[p>>2]|0);Ln(c[s>>2]|0);Mn((c[s>>2]|0)+28+((c[p>>2]|0)*40
|0)|0,c[(c[s>>2]|0)+24>>2]|0,c[p>>2]|0,c[s>>2]|0);Rn(c[s>>2]|0,c[p>>
2]|0);if((c[p>>2]|0)==1)Vn((c[l>>2]|0)+412|0,c[s>>2]|0);Wn(c[s>>2]|0,c[p>>2]|0
);Xn(c[s>>2]|0,c[p>>2]|0);Yn(c[s>>2]|0,c[p>>2]|0);Zn(c[s>>2]|0,c[p>>
2]|0);if(a[v>>0]|0)Zm(c[(c[s>>2]|0)+24>>2]|0,c[t>>2]|0,c[u>>2]|0,0,0)|0;c[p>
;>2]=(c[p>>2]|0)+1}}while(0);_n(c[s>>2]|0);c[h>>2]=c[q>>2];y=c[h>>2]|0;i=
z;return y|0}c[h>>2]=0;y=c[h>>2]|0;i=z;return y|0}function Dn(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,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+96|0;p=F+88|0;q=F+84|0;r=F+80|0;s
=F+76|0;x=F+72|0;y=F+68|0;k=F+64|0;m=F+60|0;l=F+56|0;o=F+52|0;h=F+48|0;j=F+44|0;n=F+40|0;D=F+36|0;C=F+32|0;E=F+28|0;z=F+24|0;B=F
+20|0;A=F+16|0;t=F+12|0;v=F+8|0;u=F+4|0;w=F;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;g=c[
p>>2]|0;d=g+128|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(d|0));f=c[c[s>>2]>>2]|0;c[(c[p
x3e;>2]|0)+16>>2]=f;c[y>>2]=f;f=hc(c[y>>2]|0,48,0,b[(c[q>>2]|0)+2>>1]|0,0
,x)|0;c[(c[p>>2]|0)+8>>2]=f;if(c[x>>2]|0){E=c[x>>2]|0;i=F;return E|0}f=hc(c[y>>
;2]|0,8,0,b[c[q>>2]>>1]|0,0,x)|0;c[(c[p>>2]|0)+12>>2]=f;if(c[x>>2]|0){E=c[x>
;>2]|0;i=F;return E|0}c[c[p>>2]>>2]=b[(c[q>>2]|0)+2>>1];c[(c[p>>2]|0)+4
x3e;>2]=b[c[q>>2]>>1];c[k>>2]=0;c[o>>2]=c[(c[p>>2]|0)+8>>2];c[h
>>2]=c[(c[p>>2]|0)+12>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0
>=(c[(c[p>>2]|0)+4>>2]|0)>>>0)break;c[m>>2]=(b[(c[(c[q>>2]|0)+12>
;>2]|0)+(c[l>>2]<<1)>>1]|0)+1;c[j>>2]=(c[m>>2]|0)-(c[k>>2]|0);c
[c[h>>2]>>2]=(c[o>>2]|0)+((c[k>>2]|0)*48|0);c[(c[h>>2]|0)+4>>2]=c[j
x3e;>2];if((c[j>>2]|0)>0){c[n>>2]=(c[o>>2]|0)+((c[k>>2]|0)*48|0);c[c[n>
x3e;2]>>2]=(c[o>>2]|0)+((c[m>>2]|0)*48|0)+-48;c[(c[n>>2]|0)+8>>2]=c[h>>
;2];while(1){if((c[j>>2]|0)<=1)break;c[(c[n>>2]|0)+4>>2]=(c[n>>2]|0)+48;c[(c[n>
;>2]|0)+48>>2]=c[n>>2];c[n>>2]=(c[n>>2]|0)+48;c[(c[n>>2]|0)+8>>
2]=c[h>>2];c[j>>2]=(c[j>>2]|0)+-1}c[(c[n>>2]|0)+4>>2]=(c[o>>2]|0)+((
c[k>>2]|0)*48|0)}c[h>>2]=(c[h>>2]|0)+8;c[k>>2]=c[m>>2];c[l>>2]=(c[l
x3e;>2]|0)+1}c[D>>2]=c[(c[p>>2]|0)+8>>2];c[C>>2]=c[D>>2];c[E>>2
]=c[(c[q>>2]|0)+4>>2];c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[c[p
x3e;>2]>>2]|0)>>>0)break;c[B>>2]=((c[c[C>>2]>>2]|0)-(c[D>>
2]|0)|0)/48|0;c[A>>2]=((c[(c[C>>2]|0)+4>>2]|0)-(c[D>>2]|0)|0)/48|0;if(!(a[(c[(c[q>
x3e;2]|0)+8>>2]|0)+(c[z>>2]|0)>>0]&1))c[(c[C>>2]|0)+12>>2]=1;c[t>>
;2]=(c[(c[E>>2]|0)+(c[z>>2]<<3)>>2]|0)-(c[(c[E>>2]|0)+(c[B>>2]<
x3c;3)>>2]|0);c[v>>2]=(c[(c[E>>2]|0)+(c[z>>2]<<3)+4>>2]|0)-(c[(c[E
x3e;>2]|0)+(c[B>>2]<<3)+4>>2]|0);g=(En(c[t>>2]|0,c[v>>2]|0)|0)&255;a
[(c[C>>2]|0)+20>>0]=g;c[u>>2]=(c[(c[E>>2]|0)+(c[A>>2]<<3)>>
;2]|0)-(c[(c[E>>2]|0)+(c[z>>2]<<3)>>2]|0);c[w>>2]=(c[(c[E>>2]|0)+(c[
A>>2]<<3)+4>>2]|0)-(c[(c[E>>2]|0)+(c[z>>2]<<3)+4>>2]|0);g=(
En(c[u>>2]|0,c[w>>2]|0)|0)&255;a[(c[C>>2]|0)+21>>0]=g;g=c[C>>2]|0;do if(!(
c[(c[C>>2]|0)+12>>2]&1|0)){if((a[g+20>>0]|0)==(a[(c[C>>2]|0)+21>>0]|0)){if
((a[(c[C>>2]|0)+21>>0]|0)==4?($b(c[t>>2]|0,c[v>>2]|0,c[u>>2]|0,c[w>>
2]|0)|0)==0:0)break;o=(c[C>>2]|0)+12|0;c[o>>2]=c[o>>2]|2}}else{o=g+12|0;c[o>>2]=c[o>
;>2]|2}while(0);c[z>>2]=(c[z>>2]|0)+1;c[C>>2]=(c[C>>2]|0)+48}c[(c[p>>2]|0
)+20>>2]=c[q>>2];c[(c[p>>2]|0)+24>>2]=c[s>>2];Fn(c[p>>2]|0,0);Gn(c[p
>>2]|0);c[x>>2]=Hn((c[p>>2]|0)+28|0,(c[r>>2]|0)+16|0,(c[r>>2]|0)+16+12|0,(c[r
x3e;>2]|0)+16+24|0,c[y>>2]|0)|0;if(c[x>>2]|0){E=c[x>>2]|0;i=F;return E|0}c[x>>2]=Hn
((c[p>>2]|0)+28+40|0,(c[r>>2]|0)+16+36|0,(c[r>>2]|0)+16+36+12|0,(c[r>>2]|0)+16+36+24|0,c
[y>>2]|0)|0;E=c[x>>2]|0;i=F;return E|0}function En(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0
;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[d>>2]=a;c[e>>2]=b;c[h>>2]=4;b=c[d>>2]|0;c[f>
;>2]=(c[d>>2]|0)>=0?b:0-b|0;b=c[e>>2]|0;c[g>>2]=(c[e>>2]|0)>=0?b:0-b|0;if
(((c[g>>2]|0)*12|0)<(c[f>>2]|0)){c[h>>2]=(c[d>>2]|0)>=0?2:-2;h=c[h>>
2]|0;i=j;return h|0}if(((c[f>>2]|0)*12|0)>=(c[g>>2]|0)){h=c[h>>2]|0;i=j;return h|0}c[h>
x3e;2]=(c[e>>2]|0)>=0?-1:1;h=c[h>>2]|0;i=j;return h|0}function Fn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,
h=0,j=0;h=i;i=i+32|0;j=h+16|0;d=h+12|0;g=h+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[g>>2]=c[(c[(c[j
x3e;>2]|0)+20>>2]|0)+4>>2];c[f>>2]=c[(c[j>>2]|0)+8>>2];c[e>>2]=
c[c[j>>2]>>2];while(1){if((c[e>>2]|0)>>>0<=0)break;c[(c[f>>2]|0)+16
x3e;>2]=0;c[(c[f>>2]|0)+32>>2]=0;b=c[g>>2]|0;if(!(c[d>>2]|0)){c[(c[f>>2]|
0)+36>>2]=c[b>>2];c[(c[f>>2]|0)+40>>2]=c[(c[g>>2]|0)+4>>2]}else{c[(c
[f>>2]|0)+36>>2]=c[b+4>>2];c[(c[f>>2]|0)+40>>2]=c[c[g>>2]>>
;2]}c[e>>2]=(c[e>>2]|0)+-1;c[f>>2]=(c[f>>2]|0)+48;c[g>>2]=(c[g>>2]|0
)+8}i=h;return}function Gn(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;r=i;i=i+64|0;b=r+52|0;l=r+48
|0;h=r+44|0;q=r+40|0;f=r+36|0;e=r+32|0;d=r+28|0;j=r+24|0;k=r+20|0;o=r+16|0;p=r+12|0;n=r+8|0;m=r+4|0;g=r;c[b>>2]=a;c[l
x3e;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[(c[b>>2]|0)+4>>2]|0)>>
;>0)break;c[g>>2]=0;a:do if((c[(c[(c[b>>2]|0)+12>>2]|0)+(c[l>>2]<<3)+4>
;>2]|0)>>>0>=4){c[h>>2]=c[(c[(c[b>>2]|0)+12>>2]|0)+(c[l>>2]<
;<3)>>2];a=c[h>>2]|0;c[f>>2]=a;c[q>>2]=a;do{c[f>>2]=c[(c[f>>2]|
0)+4>>2];if((c[f>>2]|0)==(c[h>>2]|0))break a;c[j>>2]=(c[(c[f>>2]|0)+36>
x3e;2]|0)-(c[(c[q>>2]|0)+36>>2]|0);c[k>>2]=(c[(c[f>>2]|0)+40>>2]|0)-(c[(c[q>
;>2]|0)+40>>2]|0)}while((c[j>>2]|0)==0?(c[k>>2]|0)==0:0);c[e>>2]=c[q>>2];
while(1){c[q>>2]=c[e>>2];c[e>>2]=c[c[e>>2]>>2];if((c[e>>2]|0)==(c[h
x3e;>2]|0))break a;c[o>>2]=(c[(c[q>>2]|0)+36>>2]|0)-(c[(c[e>>2]|0)+36>>2]|
0);c[p>>2]=(c[(c[q>>2]|0)+40>>2]|0)-(c[(c[e>>2]|0)+40>>2]|0);if((c[o>>
;2]|0)==0?(c[p>>2]|0)==0:0)continue;c[n>>2]=_b(c[j>>2]|0,c[k>>2]|0,c[o>>2]|0,c
[p>>2]|0)|0;if(c[n>>2]|0)break}c[h>>2]=c[q>>2];c[j>>2]=c[o>>2];c[k
x3e;>2]=c[p>>2];do{c[d>>2]=c[f>>2];while(1){c[f>>2]=c[d>>2];c[d>>
;2]=c[(c[d>>2]|0)+4>>2];if((c[d>>2]|0)==(c[h>>2]|0))c[g>>2]=1;c[o>>2
]=(c[(c[d>>2]|0)+36>>2]|0)-(c[(c[f>>2]|0)+36>>2]|0);c[p>>2]=(c[(c[d>>
;2]|0)+40>>2]|0)-(c[(c[f>>2]|0)+40>>2]|0);if((c[o>>2]|0)==0?(c[p>>2]|0)==0:0)continue
;c[m>>2]=_b(c[j>>2]|0,c[k>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;if(c[m>>2]|0)
break}if((c[m>>2]^c[n>>2]|0)<0){do{a=(c[q>>2]|0)+12|0;c[a>>2]=c[a>>2]|4;c
[q>>2]=c[(c[q>>2]|0)+4>>2]}while((c[q>>2]|0)!=(c[f>>2]|0));a=(c[q>>2
]|0)+12|0;c[a>>2]=c[a>>2]|4}c[q>>2]=c[f>>2];c[f>>2]=c[d>>2];c[n>
;>2]=c[m>>2];c[j>>2]=c[o>>2];c[k>>2]=c[p>>2]}while((c[g>>2]|0)!=
0^1)}while(0);c[l>>2]=(c[l>>2]|0)+1}i=r;return}function Hn(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;r=i;i=i+48|0;g=r+40|0;h=r+36|0;j=r+32|0;s=r+28|0;k=r+24|0;l=r+20|0;m=r+16|0;q=r+12|0
;p=r+8|0;o=r+4|0;n=r;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[s>>2]=e;c[k>>2]=f;c[s>
;>2]=c[s>>2];c[l>>2]=c[c[h>>2]>>2];a=hc(c[k>>2]|0,4,0,c[l>>2]
x3c;<1,0,m)|0;c[(c[g>>2]|0)+12>>2]=a;if(c[m>>2]|0){s=c[m>>2]|0;i=r;return s|0}s=hc(
c[k>>2]|0,28,0,c[l>>2]|0,0,m)|0;c[(c[g>>2]|0)+8>>2]=s;if(c[m>>2]|0){s=c[m>
;>2]|0;i=r;return s|0}s=hc(c[k>>2]|0,16,0,(c[l>>2]<<1)+1|0,0,m)|0;c[(c[g>>2]|0)+24
x3e;>2]=s;if(c[m>>2]|0){s=c[m>>2]|0;i=r;return s|0}c[c[g>>2]>>2]=c[l>>2];
c[(c[g>>2]|0)+16>>2]=(c[(c[g>>2]|0)+12>>2]|0)+(c[l>>2]<<2);c[(c[g>
;>2]|0)+4>>2]=0;c[(c[g>>2]|0)+20>>2]=0;c[(c[g>>2]|0)+28>>2]=0;c[q>
x3e;2]=c[(c[g>>2]|0)+8>>2];c[p>>2]=c[(c[h>>2]|0)+8>>2];while(1){if((c[l>
x3e;2]|0)>>>0<=0)break;c[c[q>>2]>>2]=c[c[p>>2]>>2];c[(c[q>>
;2]|0)+4>>2]=c[(c[p>>2]|0)+4>>2];c[(c[q>>2]|0)+16>>2]=c[(c[p>>2]|0)+
8>>2];c[l>>2]=(c[l>>2]|0)+-1;c[q>>2]=(c[q>>2]|0)+28;c[p>>2]=(c[p>
;>2]|0)+12}a:do if(c[j>>2]|0){c[o>>2]=c[(c[j>>2]|0)+8>>2];c[l>>2]=c[c[j
x3e;>2]>>2];c[(c[g>>2]|0)+32>>2]=c[j>>2];while(1){if((c[l>>2]|0)>>
;>0<=0)break a;In(c[g>>2]|0,c[o>>2]|0);c[l>>2]=(c[l>>2]|0)+-1;c[o>>2
]=(c[o>>2]|0)+16}}while(0);if((c[(c[g>>2]|0)+4>>2]|0)==(c[c[g>>2]>>2]|0)){s=c[
m>>2]|0;i=r;return s|0}c[l>>2]=c[c[g>>2]>>2];c[n>>2]=0;while(1){if((c[n>
x3e;2]|0)>>>0>=(c[l>>2]|0)>>>0)break;Jn(c[g>>2]|0,c[n>>2]|0);c[
n>>2]=(c[n>>2]|0)+1}s=c[m>>2]|0;i=r;return s|0}function In(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;l=i;i=i+32|0;e=l+24|0;m=l+20|0;j=l+16|0;k=l+12|0;f=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[m>>2]=b;c[j
x3e;>2]=0;c[k>>2]=0;c[f>>2]=c[(c[m>>2]|0)+8>>2];c[h>>2]=c[c[m>>
2]>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>
;>0)break;if(!(c[j>>2]|0)){m=c[f>>2]|0;c[f>>2]=m+1;c[k>>2]=d[m>>0];c[j>
;>2]=128}if(c[k>>2]&c[j>>2]|0)Jn(c[e>>2]|0,c[g>>2]|0);c[j>>2]=c[j>
;>2]>>1;c[g>>2]=(c[g>>2]|0)+1}i=l;return}function Jn(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;k=i;i=i+32|0;d=k+20|0;l=k+16|0;f=k+12|0;h=k+8|0;e=k+4|0;g=k;c[d>>2]=a;c[l>>2]=b;c[f>>
2]=(c[(c[d>>2]|0)+8>>2]|0)+((c[l>>2]|0)*28|0);if((c[l>>2]|0)>>>0>=(c
[c[d>>2]>>2]|0)>>>0){i=k;return}if(c[(c[f>>2]|0)+16>>2]&4|0){i=k;return
}l=(c[f>>2]|0)+16|0;c[l>>2]=c[l>>2]|4;c[h>>2]=c[(c[d>>2]|0)+16>>2];c
[e>>2]=c[(c[d>>2]|0)+4>>2];c[(c[f>>2]|0)+20>>2]=0;while(1){if((c[e>>
2]|0)>>>0<=0)break;c[g>>2]=c[c[h>>2]>>2];if(Kn(c[f>>2]|0,c[g>
x3e;2]|0)|0){j=6;break}c[e>>2]=(c[e>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+4}if((j|0)==6)c[(c[f
x3e;>2]|0)+20>>2]=c[g>>2];if((c[(c[d>>2]|0)+4>>2]|0)>>>0>=(c[c[
d>>2]>>2]|0)>>>0){i=k;return}j=c[f>>2]|0;a=(c[d>>2]|0)+4|0;l=c[a>>
;2]|0;c[a>>2]=l+1;c[(c[(c[d>>2]|0)+16>>2]|0)+(l<<2)>>2]=j;i=k;return}function
Kn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(((c[c[d>>2]>
;>2]|0)+(c[(c[d>>2]|0)+4>>2]|0)|0)<(c[c[e>>2]>>2]|0)){b=0;b=b&1;i=f;return
b|0}b=((c[c[e>>2]>>2]|0)+(c[(c[e>>2]|0)+4>>2]|0)|0)>=(c[c[d>>2]>>
;2]|0);b=b&1;i=f;return b|0}function Ln(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;o=i;i=i+48|0;d=o+32|0;
k=o+28|0;j=o+24|0;l=o+20|0;g=o+16|0;e=o+12|0;m=o+8|0;h=o+4|0;f=o;c[d>>2]=a;c[k>>2]=0;a:while(1){if((c[k>
;>2]|0)>>>0>=(c[(c[d>>2]|0)+4>>2]|0)>>>0){n=17;break}c[j>>
2]=c[(c[(c[d>>2]|0)+12>>2]|0)+(c[k>>2]<<3)>>2];b:do if(c[(c[(c[d>>2]|
0)+12>>2]|0)+(c[k>>2]<<3)+4>>2]|0){c[l>>2]=c[j>>2];c[g>>2]=
c[l>>2];c[e>>2]=c[l>>2];do{c[g>>2]=c[c[g>>2]>>2];if((c[g>>
2]|0)==(c[j>>2]|0)){n=30;break a}}while((c[(c[g>>2]|0)+36>>2]|0)==(c[(c[l>>2]|0)+36>
;>2]|0));b=c[(c[g>>2]|0)+4>>2]|0;c[l>>2]=b;c[j>>2]=b;while(1){c[e>>2]=c[l
>>2];do{c[e>>2]=c[(c[e>>2]|0)+4>>2];if((c[e>>2]|0)==(c[j>>2]|0))break
b}while((c[(c[e>>2]|0)+36>>2]|0)==(c[(c[l>>2]|0)+36>>2]|0));a=c[(c[e>>2]|0)+36
>>2]|0;b=c[(c[l>>2]|0)+36>>2]|0;if((c[(c[g>>2]|0)+36>>2]|0)<(c[(c[l>
x3e;2]|0)+36>>2]|0)){if((a|0)<(b|0))n=14}else if((a|0)>(b|0))n=14;if((n|0)==14)while(1){n=0;b=(c[l>>
;2]|0)+16|0;c[b>>2]=c[b>>2]|64;c[l>>2]=c[(c[l>>2]|0)+4>>2];if((c[l>>
2]|0)!=(c[e>>2]|0))n=14;else break}c[g>>2]=c[c[e>>2]>>2];c[l>>2]=c[e>>
;2]}}while(0);c[k>>2]=(c[k>>2]|0)+1}if((n|0)==17)c[k>>2]=0;c:while(1){if((n|0)==30)c[k>>
2]=(c[k>>2]|0)+1;if((c[k>>2]|0)>>>0>=(c[c[d>>2]>>2]|0)>>
x3e;0)break;c[m>>2]=(c[(c[d>>2]|0)+8>>2]|0)+((c[k>>2]|0)*48|0);c[h>>2]=c[m>
;>2];c[f>>2]=c[m>>2];if(c[(c[m>>2]|0)+16>>2]&64|0){while(1){c[h>>2]=
c[c[h>>2]>>2];if((c[h>>2]|0)==(c[m>>2]|0)){n=30;continue c}if((c[(c[h>>2]|0)+40
>>2]|0)!=(c[(c[m>>2]|0)+40>>2]|0))break}while(1){c[f>>2]=c[(c[f>>2]|0)+4>
x3e;2];if((c[f>>2]|0)==(c[m>>2]|0)){n=30;continue c}if((c[(c[f>>2]|0)+40>>2]|0)!=(c[(c[m
>>2]|0)+40>>2]|0))break}}if((c[(c[h>>2]|0)+40>>2]|0)<(c[(c[m>>2]|0)+40>
;>2]|0)?(c[(c[f>>2]|0)+40>>2]|0)>(c[(c[m>>2]|0)+40>>2]|0):0){n=(c[m>>
;2]|0)+16|0;c[n>>2]=c[n>>2]|128;n=30;continue}if((c[(c[h>>2]|0)+40>>2]|0)<=(c[(c[m
x3e;>2]|0)+40>>2]|0)){n=30;continue}if((c[(c[f>>2]|0)+40>>2]|0)>=(c[(c[m>>2]|0
)+40>>2]|0)){n=30;continue}n=(c[m>>2]|0)+16|0;c[n>>2]=c[n>>2]|256;n=30}i=o;return}function
Mn(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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0;j=l
;c[m>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=c[(c[m>>2]|0)+8>
;>2];c[j>>2]=c[c[m>>2]>>2];while(1){if((c[j>>2]|0)>>>0<=0)break
;Nn(c[k>>2]|0,c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);c[j>>2]=(c[j>>2]|0)+-1;
c[k>>2]=(c[k>>2]|0)+28}i=l;return}function Nn(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;E=i;i=i+96|0;B=E+88|0;k=E+84|0;l=E+80|0;m=E+76|0;p=E+72|0;u=E
+68|0;h=E+64|0;D=E+60|0;C=E+56|0;w=E+52|0;q=E+48|0;v=E+36|0;t=E+32|0;s=E+28|0;r=E+24|0;o=E+20|0;n=E+16|0;y=E+12|0;A=E+8|0;x=E+4|
0;z=E;c[B>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[p>>2]=(c[k>>2]|0)+4+((
c[l>>2]|0)*204|0);c[u>>2]=c[(c[p>>2]|0)+196>>2];c[h>>2]=c[(c[p>>2]|0
)+200>>2];if(c[(c[B>>2]|0)+16>>2]&8|0){i=E;return}b=Mb(c[c[B>>2]>>2]|0,c[
u>>2]|0)|0;c[D>>2]=b+(c[h>>2]|0);c[C>>2]=Mb(c[(c[B>>2]|0)+4>>2]|0,c[
u>>2]|0)|0;if(!((c[l>>2]|0)==0?!(a[(c[m>>2]|0)+120>>0]|0):0))j=4;do if((j|0)==4){if((c[l
>>2]|0)==1?(a[(c[m>>2]|0)+121>>0]|0)==0:0)break;if((c[l>>2]|0)==0?d[(c[m>>2]|0
)+122>>0]|0:0)h=1;else if((c[l>>2]|0)==1)h=(d[(c[m>>2]|0)+123>>0]|0)!=0;else h=0;c[w>
;>2]=h&1;j=c[C>>2]|0;c[q>>2]=j;c[(c[B>>2]|0)+12>>2]=j;c[v>>2]=0;c[v+
4>>2]=0;c[v+8>>2]=0;if((c[l>>2]|0)==1)On((c[k>>2]|0)+412|0,(c[c[B>>2]>>
;2]|0)+(c[(c[B>>2]|0)+4>>2]|0)|0,c[c[B>>2]>>2]|0,v);switch(c[v>>2]|0){case 1:{
c[(c[B>>2]|0)+8>>2]=(c[v+4>>2]|0)-(c[q>>2]|0);break}case 2:{c[(c[B>>2]|0)+8>
;>2]=c[v+8>>2];break}case 3:{c[(c[B>>2]|0)+8>>2]=c[v+8>>2];c[(c[B>>2]|0)+
12>>2]=(c[v+4>>2]|0)-(c[v+8>>2]|0);break}default:{c[t>>2]=c[(c[B>>2]|0)+20>
;>2];if(c[t>>2]|0){if(!(c[(c[t>>2]|0)+16>>2]&8))Nn(c[t>>2]|0,c[k>>2]|
0,c[l>>2]|0,c[m>>2]|0);c[s>>2]=(c[c[t>>2]>>2]|0)+(c[(c[t>>2]|0)+4>
;>2]>>1);c[r>>2]=(c[(c[t>>2]|0)+8>>2]|0)+(c[(c[t>>2]|0)+12>>2]
x3e;>1);c[o>>2]=(c[c[B>>2]>>2]|0)+(c[(c[B>>2]|0)+4>>2]>>1);c[n
x3e;>2]=Mb((c[o>>2]|0)-(c[s>>2]|0)|0,c[u>>2]|0)|0;c[D>>2]=(c[r>>2]|0)+(c[
n>>2]|0)-(c[C>>2]>>1)}c[(c[B>>2]|0)+8>>2]=c[D>>2];c[(c[B>>
2]|0)+12>>2]=c[q>>2];do if(a[(c[m>>2]|0)+124>>0]|0){if((c[C>>2]|0)>64){c[
C>>2]=Pn(c[p>>2]|0,c[C>>2]|0,0)|0;break}if((c[C>>2]|0)>=32){c[D>>2]=(c[D
x3e;>2]|0)+(c[C>>2]>>1)&-64;c[C>>2]=64;break}h=(c[D>>2]|0)+32&-64;if((c[C
>>2]|0)<=0){c[D>>2]=h;break}c[y>>2]=h;c[A>>2]=(c[D>>2]|0)+(c[C>>
;2]|0)+32&-64;c[x>>2]=(c[y>>2]|0)-(c[D>>2]|0);c[z>>2]=(c[A>>2]|0)-((c[D
x3e;>2]|0)+(c[C>>2]|0));if((c[x>>2]|0)<0)c[x>>2]=0-(c[x>>2]|0);if((c[z>
x3e;2]|0)<0)c[z>>2]=0-(c[z>>2]|0);if((c[x>>2]|0)<=(c[z>>2]|0)){c[D>>
2]=c[y>>2];break}else{c[D>>2]=c[A>>2];break}}while(0);A=(c[D>>2]|0)+(Qn(c[D>>2
]|0,c[C>>2]|0)|0)|0;c[(c[B>>2]|0)+8>>2]=A;c[(c[B>>2]|0)+12>>2]=c[C>>
2]}}a:do if(c[w>>2]|0){c[D>>2]=c[(c[B>>2]|0)+8>>2];c[C>>2]=c[(c[B>>2
]|0)+12>>2];if((c[C>>2]|0)<64)c[C>>2]=64;else c[C>>2]=(c[C>>2]|0)+32&
;-64;switch(c[v>>2]|0){case 3:break a;case 1:{c[(c[B>>2]|0)+8>>2]=(c[v+4>>2]|0)-(c[C>
;>2]|0);c[(c[B>>2]|0)+12>>2]=c[C>>2];break a}case 2:{c[(c[B>>2]|0)+12>>2]=
c[C>>2];break a}default:{c[(c[B>>2]|0)+12>>2]=c[C>>2];h=(c[D>>2]|0)+(c[C>
x3e;2]>>1)|0;if(c[C>>2]&64|0)c[D>>2]=(h&-64)+32;else c[D>>2]=h+32&-64;c[(
c[B>>2]|0)+8>>2]=(c[D>>2]|0)-(c[C>>2]>>1);c[(c[B>>2]|0)+12>>
;2]=c[C>>2];break a}}}while(0);D=(c[B>>2]|0)+16|0;c[D>>2]=c[D>>2]|8;i=E;return}while(0);
c[(c[B>>2]|0)+8>>2]=c[D>>2];c[(c[B>>2]|0)+12>>2]=c[C>>2];D=(c[B>
;>2]|0)+16|0;c[D>>2]=c[D>>2]|8;i=E;return}function On(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;r=i;i=i+48|0;g=r+32|0;h=r+28|0;j=r+24|0;k=r+20|0;o=r+16|0;l=r+12|0;m=r+8|0;p=r+4|0;n=r;c[g>
x3e;2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[c[k>>2]>>2]=0;c[n>>2]=d[(c[
g>>2]|0)+2080>>0];c[o>>2]=c[g>>2];c[l>>2]=c[c[o>>2]>>2];c[
p>>2]=(c[o>>2]|0)+4;while(1){if((c[l>>2]|0)>>>0<=0)break;c[m>>2]=(c[
h>>2]|0)-(c[(c[p>>2]|0)+12>>2]|0);if((c[m>>2]|0)<(0-(c[(c[g>>2]|0)+2076
x3e;>2]|0)|0))break;if((c[h>>2]|0)<=((c[(c[p>>2]|0)+8>>2]|0)+(c[(c[g>>2]|0)+2076
>>2]|0)|0)){q=5;break}c[l>>2]=(c[l>>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+32}do if((q|0
)==5){if((c[n>>2]|0)==0?(c[m>>2]|0)>(c[(c[g>>2]|0)+2072>>2]|0):0)break;q=c[k>
x3e;2]|0;c[q>>2]=c[q>>2]|1;c[(c[k>>2]|0)+4>>2]=c[(c[p>>2]|0)+16>>2]}
while(0);c[o>>2]=(c[g>>2]|0)+516;c[l>>2]=c[c[o>>2]>>2];c[p>>2]=(c[o
x3e;>2]|0)+4+(c[l>>2]<<5)+-32;while(1){if((c[l>>2]|0)>>>0<=0){q=17;break}
c[m>>2]=(c[(c[p>>2]|0)+8>>2]|0)-(c[j>>2]|0);if((c[m>>2]|0)<(0-(c[(c[g>
;>2]|0)+2076>>2]|0)|0)){q=17;break}if((c[j>>2]|0)>=((c[(c[p>>2]|0)+12>>2]|0)-(
c[(c[g>>2]|0)+2076>>2]|0)|0)){q=13;break}c[l>>2]=(c[l>>2]|0)+-1;c[p>>2]=(c[p
x3e;>2]|0)+-32}if((q|0)==13){if((c[n>>2]|0)==0?(c[m>>2]|0)>=(c[(c[g>>2]|0)+2072>>
;2]|0):0){i=r;return}q=c[k>>2]|0;c[q>>2]=c[q>>2]|2;c[(c[k>>2]|0)+8>>2]=c[(c[p
x3e;>2]|0)+16>>2];i=r;return}else if((q|0)==17){i=r;return}}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;k=i;i=i+16|0;f=k+8|0;g=k+4|0;h=k+12|0;j=k;c[f>>2]=b;c[g>>2]=d;a[h>>0]=e;do if((c[g>
x3e;2]|0)>64){c[j>>2]=(c[g>>2]|0)-(c[(c[f>>2]|0)+4+4>>2]|0);if((c[j>>2]|0
)<0)c[j>>2]=0-(c[j>>2]|0);if((c[j>>2]|0)<40){d=c[(c[f>>2]|0)+4+4>>2]|
0;c[g>>2]=d;c[g>>2]=(c[g>>2]|0)<48?48:d}f=c[g>>2]|0;if((c[g>>2]|0)>=
192){c[g>>2]=f+32&-64;break}c[j>>2]=f&63;c[g>>2]=c[g>>2]&-64;f=c[j>
x3e;2]|0;if((c[j>>2]|0)<10){c[g>>2]=(c[g>>2]|0)+f;break}if((f|0)<32){c[g>>2]=(
c[g>>2]|0)+10;break}if((c[j>>2]|0)<54){c[g>>2]=(c[g>>2]|0)+54;break}else{c[g>
x3e;2]=(c[g>>2]|0)+(c[j>>2]|0);break}}else c[g>>2]=64;while(0);if(!(a[h>>0]|0)){j=c[g>
;>2]|0;i=k;return j|0}c[g>>2]=(c[g>>2]|0)+32&-64;j=c[g>>2]|0;i=k;return j|0}function Qn(
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;d=g+16|0;j=g+12|0;h=g+8|0;e=g+4|0;f=g;c[j>>2]=a;c[h>>
;2]=b;c[e>>2]=((c[j>>2]|0)+32&-64)-(c[j>>2]|0);c[f>>2]=((c[j>>2]|0)+(c[h
x3e;>2]|0)+32&-64)-(c[j>>2]|0)-(c[h>>2]|0);b=c[e>>2]|0;a=c[f>>2]|0;if((((c[e
x3e;>2]|0)<0?0-b|0:b)|0)<=(((c[f>>2]|0)<0?0-a|0:a)|0)){c[d>>2]=c[e>>2];j=c[d
x3e;>2]|0;i=g;return j|0}else{c[d>>2]=c[f>>2];j=c[d>>2]|0;i=g;return j|0}return 0}function Rn
(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;s=i;i=i+80|0;d=s+64|0;v=s+60|0;q=s
+56|0;k=s+52|0;m=s+48|0;h=s+44|0;j=s+40|0;u=s+36|0;t=s+32|0;r=s+28|0;l=s+24|0;e=s+20|0;n=s+16|0;f=s+12|0;o=s+8|0;g=s+4|0;p=s;c[d
>>2]=a;c[v>>2]=b;c[q>>2]=(c[d>>2]|0)+28+((c[v>>2]|0)*40|0);c[k>>2]=c
[(c[(c[q>>2]|0)+32>>2]|0)+8>>2];c[m>>2]=c[c[(c[q>>2]|0)+32>>2]>
x3e;2];c[h>>2]=0;c[j>>2]=(c[v>>2]|0)==0?1:2;c[u>>2]=(c[(c[d>>2]|0)+24>>
;2]|0)+4+((c[v>>2]|0)*204|0);c[t>>2]=c[(c[u>>2]|0)+196>>2];a=Vb(32,c[t>>2]|0)|
0;c[r>>2]=a;c[r>>2]=(c[r>>2]|0)>30?30:a;a:do if((c[m>>2]|0)>>>0>
;1?(c[c[d>>2]>>2]|0)>>>0>0:0){if((c[(c[k>>2]|0)+12>>2]|0)>>
;>0>(c[c[d>>2]>>2]|0)>>>0)b=c[c[d>>2]>>2]|0;else b=c[(c[k>
x3e;2]|0)+12>>2]|0;c[h>>2]=b;c[k>>2]=(c[k>>2]|0)+16;while(1){if((c[m>>2]|0)>
;>>0<=1)break a;if((c[(c[k>>2]|0)+12>>2]|0)>>>0>(c[c[d>>2]>
;>2]|0)>>>0)b=c[c[d>>2]>>2]|0;else b=c[(c[k>>2]|0)+12>>2]|0;c[l>
;>2]=b;c[e>>2]=(c[l>>2]|0)-(c[h>>2]|0);if((c[e>>2]|0)>0){c[n>>2]=(c[(
c[d>>2]|0)+8>>2]|0)+((c[h>>2]|0)*48|0);Sn(c[q>>2]|0,c[k>>2]|0);Un(c[q>>
;2]|0,c[n>>2]|0,c[e>>2]|0,c[r>>2]|0,c[j>>2]|0)}c[h>>2]=c[l>>2];c[m
x3e;>2]=(c[m>>2]|0)+-1;c[k>>2]=(c[k>>2]|0)+16}}while(0);if((c[m>>2]|0)==1){c[f>
;>2]=c[c[d>>2]>>2];c[o>>2]=c[(c[d>>2]|0)+8>>2];Sn(c[q>>2]|0,c[(
c[(c[q>>2]|0)+32>>2]|0)+8>>2]|0);Un(c[q>>2]|0,c[o>>2]|0,c[f>>2]|0,c[
r>>2]|0,c[j>>2]|0)}c[g>>2]=c[c[d>>2]>>2];c[p>>2]=c[(c[d>>2
]|0)+8>>2];while(1){if((c[g>>2]|0)>>>0<=0)break;if(c[(c[p>>2]|0)+32>>
;2]|0?(c[(c[p>>2]|0)+16>>2]&16|0)==0:0){v=(c[p>>2]|0)+16|0;c[v>>2]=c[v>>2
]|16}c[g>>2]=(c[g>>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+48}i=s;return}function Sn(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;t=i;i=i+64|0;e=t+56|0;u=t+52|0;q=t+48|0;s=t+44|0;h=t+40|0
;o=t+36|0;p=t+32|0;f=t+28|0;j=t+24|0;g=t+20|0;m=t+16|0;n=t+12|0;k=t+8|0;l=t+4|0;r=t;c[e>>2]=a;c[u>>2]=b;c[q
x3e;>2]=0;c[s>>2]=0;c[h>>2]=c[(c[u>>2]|0)+8>>2];c[p>>2]=c[c[u>>
2]>>2];c[f>>2]=0;Tn(c[e>>2]|0);c[o>>2]=0;while(1){if((c[o>>2]|0)>>
x3e;0>=(c[p>>2]|0)>>>0)break;if(!(c[q>>2]|0)){u=c[h>>2]|0;c[h>>2]=u+
1;c[s>>2]=d[u>>0];c[q>>2]=128}if(((c[s>>2]&c[q>>2]|0?(c[j>>2]=(
c[(c[e>>2]|0)+8>>2]|0)+((c[o>>2]|0)*28|0),(c[(c[j>>2]|0)+16>>2]&4|0)==0):
0)?(c[g>>2]=0,(c[g>>2]|0)==0):0)?(u=(c[j>>2]|0)+16|0,c[u>>2]=c[u>>2]|4,(c[f>
;>2]|0)>>>0<(c[c[e>>2]>>2]|0)>>>0):0){a=c[j>>2]|0;u=c[f>
;>2]|0;c[f>>2]=u+1;c[(c[(c[e>>2]|0)+12>>2]|0)+(u<<2)>>2]=a}c[q>>
;2]=c[q>>2]>>1;c[o>>2]=(c[o>>2]|0)+1}c[(c[e>>2]|0)+4>>2]=c[f>
x3e;2];c[r>>2]=c[(c[e>>2]|0)+12>>2];c[m>>2]=1;while(1){if((c[m>>2]|0)>=(c
[f>>2]|0))break;c[k>>2]=c[(c[r>>2]|0)+(c[m>>2]<<2)>>2];c[n>>
;2]=(c[m>>2]|0)-1;while(1){if((c[n>>2]|0)<0)break;c[l>>2]=c[(c[r>>2]|0)+(c[n>
x3e;2]<<2)>>2];if((c[c[l>>2]>>2]|0)<(c[c[k>>2]>>2]|0))break;c[(
c[r>>2]|0)+((c[n>>2]|0)+1<<2)>>2]=c[l>>2];c[(c[r>>2]|0)+(c[n>
x3e;2]<<2)>>2]=c[k>>2];c[n>>2]=(c[n>>2]|0)+-1}c[m>>2]=(c[m>>
;2]|0)+1}i=t;return}function Tn(a){a=a|0;var b=0,d=0,e=0,f=0;e=i;i=i+16|0;f=e+8|0;b=e+4|0;d=e;c[f>>2]=a;c[b>>
;2]=c[c[f>>2]>>2];c[d>>2]=c[(c[f>>2]|0)+8>>2];while(1){if((c[b>>2]|0
)>>>0<=0)break;f=(c[d>>2]|0)+16|0;c[f>>2]=c[f>>2]&-5;c[(c[d>>2]|
0)+24>>2]=-1;c[b>>2]=(c[b>>2]|0)+-1;c[d>>2]=(c[d>>2]|0)+28}i=e;return}function
Un(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,x=0,y=0,z=0,A=0,B=0
,C=0,D=0,E=0,F=0,G=0;F=i;i=i+96|0;G=F+88|0;h=F+84|0;j=F+80|0;k=F+76|0;l=F+72|0;D=F+68|0;A=F+64|0;C=F+60|0;B=F+56|0;x=F+52|0;q=F+
48|0;m=F+44|0;y=F+40|0;r=F+36|0;n=F+32|0;z=F+28|0;w=F+24|0;v=F+20|0;s=F+16|0;o=F+12|0;t=F+8|0;p=F+4|0;u=F;c[G>>2]=b;c[
h>>2]=d;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[D>>2]=c[(c[G>>2]|0)+12>
x3e;2];c[A>>2]=c[(c[G>>2]|0)+4>>2];while(1){if((c[j>>2]|0)>>>0<=0)break
;c[C>>2]=0;c[B>>2]=c[(c[h>>2]|0)+36>>2];a:do if(!(c[(c[h>>2]|0)+16>>
2]&16)){do if((a[(c[h>>2]|0)+20>>0]|0)!=(c[l>>2]|0)?(a[(c[h>>2]|0)+20>>0]|
0)!=(0-(c[l>>2]|0)|0):0){if((a[(c[h>>2]|0)+21>>0]|0)!=(c[l>>2]|0)?(a[(c[h>>2]|
0)+21>>0]|0)!=(0-(c[l>>2]|0)|0):0)break;c[C>>2]=a[(c[h>>2]|0)+21>>0]}else E=6;
while(0);if((E|0)==6){E=0;c[C>>2]=a[(c[h>>2]|0)+20>>0]}if(c[C>>2]|0){if((c[C>>
2]|0)==(c[l>>2]|0)){c[x>>2]=0;while(1){if((c[x>>2]|0)>>>0>=(c[A>>2]|
0)>>>0)break a;c[q>>2]=c[(c[D>>2]|0)+(c[x>>2]<<2)>>2];c[m>
x3e;2]=(c[B>>2]|0)-(c[c[q>>2]>>2]|0);if((c[m>>2]|0)<(c[k>>2]|0)?(0-(c[m
x3e;>2]|0)|0)<(c[k>>2]|0):0)break;c[x>>2]=(c[x>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G
>>2]=c[G>>2]|16;G=(c[h>>2]|0)+16|0;c[G>>2]=c[G>>2]|512;c[(c[h>>2]|0)+
32>>2]=c[q>>2];break}if((c[C>>2]|0)!=(0-(c[l>>2]|0)|0))break;c[y>>2]=0;while(1
){if((c[y>>2]|0)>>>0>=(c[A>>2]|0)>>>0)break a;c[r>>2]=c[(c[D>
;>2]|0)+(c[y>>2]<<2)>>2];c[n>>2]=(c[B>>2]|0)-(c[c[r>>2]>
x3e;2]|0)-(c[(c[r>>2]|0)+4>>2]|0);if((c[n>>2]|0)<(c[k>>2]|0)?(0-(c[n>>2]|
0)|0)<(c[k>>2]|0):0)break;c[y>>2]=(c[y>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>2
]=c[G>>2]|16;G=(c[h>>2]|0)+16|0;c[G>>2]=c[G>>2]|1024;c[(c[h>>2]|0)+32>>
;2]=c[r>>2];break}if(c[(c[h>>2]|0)+16>>2]&64|0){if((c[l>>2]|0)==2){c[w>>2
]=128;c[v>>2]=256}else{c[w>>2]=256;c[v>>2]=128}b:do if(!(c[(c[h>>2]|0)+16>>2]
x26;c[w>>2]|0)){if(c[(c[h>>2]|0)+16>>2]&c[v>>2]|0){c[z>>2]=0;while(1){if((
c[z>>2]|0)>>>0>=(c[A>>2]|0)>>>0)break b;c[t>>2]=c[(c[D>>
;2]|0)+(c[z>>2]<<2)>>2];c[p>>2]=(c[B>>2]|0)-(c[c[t>>2]>>2]|
0)-(c[(c[t>>2]|0)+4>>2]|0);if((c[p>>2]|0)<(c[k>>2]|0)?(0-(c[p>>2]|0)|0)
x3c;(c[k>>2]|0):0)break;c[z>>2]=(c[z>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>2]=c[G
x3e;>2]|1024;c[(c[h>>2]|0)+32>>2]=c[t>>2];G=(c[h>>2]|0)+16|0;c[G>>2]=c[G
x3e;>2]|16}}else{c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[A>>2]|0)>
x3e;>0)break b;c[s>>2]=c[(c[D>>2]|0)+(c[z>>2]<<2)>>2];c[o>>2]=(
c[B>>2]|0)-(c[c[s>>2]>>2]|0);if((c[o>>2]|0)<(c[k>>2]|0)?(0-(c[o>>
;2]|0)|0)<(c[k>>2]|0):0)break;c[z>>2]=(c[z>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>
;2]=c[G>>2]|512;c[(c[h>>2]|0)+32>>2]=c[s>>2];G=(c[h>>2]|0)+16|0;c[G>>
;2]=c[G>>2]|16}while(0);if(!(c[(c[h>>2]|0)+32>>2]|0)){c[z>>2]=0;while(1){if((c[z>
x3e;2]|0)>>>0>=(c[A>>2]|0)>>>0)break a;c[u>>2]=c[(c[D>>2]|0)+(c
[z>>2]<<2)>>2];if((c[B>>2]|0)>=(c[c[u>>2]>>2]|0)?(c[B>>
;2]|0)<=((c[c[u>>2]>>2]|0)+(c[(c[u>>2]|0)+4>>2]|0)|0):0)break;c[z>>2]=(c[
z>>2]|0)+1}c[(c[h>>2]|0)+32>>2]=c[u>>2]}}}while(0);c[j>>2]=(c[j>>2]|
0)+-1;c[h>>2]=(c[h>>2]|0)+48}i=F;return}function Vn(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;q=i;i=i+48|0;f=q+36|0;r=q+32|0;m=q+28|0;o=q+24|0;k=q+20|0;g=q+16|0;l=q+12|0;n=q+8|0;h=q+4|0;j=q;c[f>>2]=b
;c[r>>2]=e;c[k>>2]=c[c[r>>2]>>2];c[l>>2]=c[(c[r>>2]|0)+8>>
2];while(1){if((c[k>>2]|0)>>>0<=0)break;if(!((((a[(c[l>>2]|0)+20>>0]|0)!=2?(a[(
c[l>>2]|0)+20>>0]|0)!=-2:0)?(a[(c[l>>2]|0)+21>>0]|0)!=2:0)?(a[(c[l>>2]|0)+21
x3e;>0]|0)!=-2:0))p=7;a:do if((p|0)==7?(p=0,(c[(c[l>>2]|0)+16>>2]&16|0)==0):0){c[n>>2]=c
[(c[l>>2]|0)+36>>2];c[m>>2]=c[f>>2];c[g>>2]=c[c[m>>2]>>2];
c[o>>2]=(c[m>>2]|0)+4;while(1){if((c[g>>2]|0)>>>0<=0)break;c[h>>2]=(
c[n>>2]|0)-(c[(c[o>>2]|0)+12>>2]|0);if((c[h>>2]|0)<(0-(c[(c[f>>2]|0)+2076
>>2]|0)|0))break;do if((c[n>>2]|0)<=((c[(c[o>>2]|0)+8>>2]|0)+(c[(c[f>>2]|
0)+2076>>2]|0)|0)){if((d[(c[f>>2]|0)+2080>>0]|0)==0?(c[h>>2]|0)>(c[(c[f>>
2]|0)+2072>>2]|0):0)break;c[(c[l>>2]|0)+44>>2]=c[(c[o>>2]|0)+24>>2];r=(c[l>
;>2]|0)+16|0;c[r>>2]=c[r>>2]|16;r=(c[l>>2]|0)+16|0;c[r>>2]=c[r>>2]|32}while
(0);c[g>>2]=(c[g>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+32}c[m>>2]=(c[f>>2]|0
)+516;c[g>>2]=c[c[m>>2]>>2];c[o>>2]=(c[m>>2]|0)+4+(c[g>>2]<<
;5)+-32;while(1){if((c[g>>2]|0)>>>0<=0)break a;c[j>>2]=(c[(c[o>>2]|0)+8>
x3e;2]|0)-(c[n>>2]|0);if((c[j>>2]|0)<(0-(c[(c[f>>2]|0)+2076>>2]|0)|0))break a;do if
((c[n>>2]|0)>=((c[(c[o>>2]|0)+12>>2]|0)-(c[(c[f>>2]|0)+2076>>2]|0)|0)){if
((d[(c[f>>2]|0)+2080>>0]|0)==0?(c[j>>2]|0)>=(c[(c[f>>2]|0)+2072>>2]|0):0)
break;c[(c[l>>2]|0)+44>>2]=c[(c[o>>2]|0)+28>>2];r=(c[l>>2]|0)+16|0;c[r>
x3e;2]=c[r>>2]|16;r=(c[l>>2]|0)+16|0;c[r>>2]=c[r>>2]|32}while(0);c[g>>2]=(c[g
x3e;>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+-32}}while(0);c[k>>2]=(c[k>>2]|0)+-1;c[l>>
;2]=(c[l>>2]|0)+48}i=q;return}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,l=0,m=0;j=i;i=i+32|0;k=j+28
|0;m=j+24|0;l=j+20|0;h=j+16|0;d=j+12|0;g=j+8|0;f=j+4|0;e=j;c[k>>2]=a;c[m>>2]=b;c[l>>2]=(c[(c[k>
;>2]|0)+24>>2]|0)+4+((c[m>>2]|0)*204|0);c[h>>2]=c[(c[l>>2]|0)+196>>2];c[d
>>2]=c[c[k>>2]>>2];c[g>>2]=c[(c[k>>2]|0)+8>>2];while(1){if((c[d>
;>2]|0)>>>0<=0)break;c[f>>2]=c[(c[g>>2]|0)+32>>2];if(c[f>>2]|0){
do if(!(c[(c[g>>2]|0)+16>>2]&512|0)){if(c[(c[g>>2]|0)+16>>2]&1024|0){c[(c[g>
;>2]|0)+44>>2]=(c[(c[f>>2]|0)+8>>2]|0)+(c[(c[f>>2]|0)+12>>2]|0);break}c[e
>>2]=(c[(c[g>>2]|0)+36>>2]|0)-(c[c[f>>2]>>2]|0);if((c[e>>2]|0)<=
0){m=c[(c[f>>2]|0)+8>>2]|0;m=m+(Mb(c[e>>2]|0,c[h>>2]|0)|0)|0;c[(c[g>>2]|0)+44
x3e;>2]=m;break}b=c[(c[f>>2]|0)+8>>2]|0;if((c[e>>2]|0)>=(c[(c[f>>2]|0)+4>
x3e;2]|0)){m=b+(c[(c[f>>2]|0)+12>>2]|0)|0;m=m+(Mb((c[e>>2]|0)-(c[(c[f>>2]|0)+4>>
;2]|0)|0,c[h>>2]|0)|0)|0;c[(c[g>>2]|0)+44>>2]=m;break}else{m=b+(xb(c[e>>2]|0,c[(c[f>
;>2]|0)+12>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0)|0;c[(c[g>>2]|0)+44>>2]=m;break
}}else c[(c[g>>2]|0)+44>>2]=c[(c[f>>2]|0)+8>>2];while(0);m=(c[g>>2]|0)+16|0;c[
m>>2]=c[m>>2]|32}c[d>>2]=(c[d>>2]|0)+-1;c[g>>2]=(c[g>>2]|0)+48}i=j;return
}function Xn(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;t=i;i=i+128|0;u=t+124|
0;w=t+120|0;v=t+116|0;p=t+112|0;k=t+108|0;q=t+104|0;r=t+40|0;m=t+36|0;g=t+32|0;o=t+28|0;n=t+24|0;e=t+20|0;f=t+16|0;j=t+12|0;h=t+
8|0;l=t+4|0;s=t;c[u>>2]=b;c[w>>2]=d;c[v>>2]=(c[(c[u>>2]|0)+24>>2]|0)+4+((c[w
x3e;>2]|0)*204|0);c[p>>2]=c[(c[v>>2]|0)+196>>2];c[k>>2]=c[(c[u>>2]|0)+16
x3e;>2];c[q>>2]=0;c[m>>2]=0;c[g>>2]=c[(c[u>>2]|0)+8>>2];c[o>>2]=(
c[g>>2]|0)+((c[c[u>>2]>>2]|0)*48|0);c[n>>2]=c[g>>2];while(1){if((c[n>>
;2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(c[(c[n>>2]|0)+16>>2]&
16|0)c[m>>2]=(c[m>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+48}if(!(c[m>>2]|0)){i=t;return}
if((c[m>>2]|0)>>>0>16){c[q>>2]=hc(c[k>>2]|0,4,0,c[m>>2]|0,0,e)|0;if(
c[e>>2]|0){i=t;return}}else c[q>>2]=r;c[m>>2]=0;c[n>>2]=c[g>>2];while(1){if((c
[n>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(c[(c[n>>2]|0)+16>
x3e;2]&16|0){c[f>>2]=(c[q>>2]|0)+(c[m>>2]<<2);while(1){if((c[f>>2]|0)>
;>>0<=(c[q>>2]|0)>>>0)break;if((c[(c[(c[f>>2]|0)+-4>>2]|0)+36>
x3e;2]|0)<=(c[(c[n>>2]|0)+36>>2]|0))break;c[c[f>>2]>>2]=c[(c[f>>2]|0)+-4
x3e;>2];c[f>>2]=(c[f>>2]|0)+-4}c[c[f>>2]>>2]=c[n>>2];c[m>>2]=(c
[m>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+48}c[n>>2]=c[g>>2];while(1){if((c[n>>
;2]|0)>>>0>=(c[o>>2]|0)>>>0)break;do if(!(c[(c[n>>2]|0)+16>>2]
x26;16)){if(c[(c[n>>2]|0)+12>>2]&2|0){if((a[(c[n>>2]|0)+20>>0]|0)==4)break;if((a[(c
[n>>2]|0)+20>>0]|0)!=(a[(c[n>>2]|0)+21>>0]|0))break;if((c[(c[n>>2]|0)+16>
x3e;2]&64|0)==0?(c[(c[n>>2]|0)+12>>2]&4|0)==0:0)break;w=(c[n>>2]|0)+12|0;c[w>>
2]=c[w>>2]&-3}c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[m>>2]|0
)>>>0)break;if((c[(c[(c[q>>2]|0)+(c[l>>2]<<2)>>2]|0)+36>>2]|0)
x3e;(c[(c[n>>2]|0)+36>>2]|0))break;c[l>>2]=(c[l>>2]|0)+1}do if(c[l>>2]|0){c[j
x3e;>2]=c[(c[q>>2]|0)+((c[l>>2]|0)-1<<2)>>2];c[l>>2]=c[m>>2];while
(1){if((c[l>>2]|0)>>>0<=0)break;if((c[(c[(c[q>>2]|0)+((c[l>>2]|0)-1<<
;2)>>2]|0)+36>>2]|0)<(c[(c[n>>2]|0)+36>>2]|0))break;c[l>>2]=(c[l>>
;2]|0)+-1}d=c[l>>2]|0;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=c[(c[q>>2]|0)+(d-1
x3c;<2)>>2];w=c[(c[j>>2]|0)+44>>2]|0;w=w+(Mb((c[(c[n>>2]|0)+36>>2]|0)-(c[(
c[j>>2]|0)+36>>2]|0)|0,c[p>>2]|0)|0)|0;c[(c[n>>2]|0)+44>>2]=w;break}c[h>
x3e;2]=c[(c[q>>2]|0)+(d<<2)>>2];c[s>>2]=c[(c[n>>2]|0)+36>>2];if((c[s
>>2]|0)==(c[(c[j>>2]|0)+36>>2]|0)){c[(c[n>>2]|0)+44>>2]=c[(c[j>>2]|0
)+44>>2];break}if((c[s>>2]|0)==(c[(c[h>>2]|0)+36>>2]|0)){c[(c[n>>2]|0)+44>
;>2]=c[(c[h>>2]|0)+44>>2];break}else{w=c[(c[j>>2]|0)+44>>2]|0;w=w+(xb((c[s>>
;2]|0)-(c[(c[j>>2]|0)+36>>2]|0)|0,(c[(c[h>>2]|0)+44>>2]|0)-(c[(c[j>>2]|0)+44
x3e;>2]|0)|0,(c[(c[h>>2]|0)+36>>2]|0)-(c[(c[j>>2]|0)+36>>2]|0)|0)|0)|0;c[(c[n>
x3e;2]|0)+44>>2]=w;break}}else{c[h>>2]=c[c[q>>2]>>2];w=c[(c[h>>2]|0)+44>
x3e;2]|0;w=w+(Mb((c[(c[n>>2]|0)+36>>2]|0)-(c[(c[h>>2]|0)+36>>2]|0)|0,c[p>>2]|0
)|0)|0;c[(c[n>>2]|0)+44>>2]=w}while(0);w=(c[n>>2]|0)+16|0;c[w>>2]=c[w>>2]|32}while
(0);c[n>>2]=(c[n>>2]|0)+48}if((c[q>>2]|0)==(r|0)){i=t;return}Fb(c[k>>2]|0,c[q>>
;2]|0);c[q>>2]=0;i=t;return}function Yn(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;v=i;i=i+80|0;w=v+76|0;y=v+72|0;x=v+68|0;s=v+64|0;h=v+60|0;d=v+56|0;m=v+52|0;u=v+48|0;j=v+44|0;l=v+40|
0;r=v+36|0;k=v+32|0;n=v+28|0;o=v+24|0;e=v+20|0;f=v+16|0;q=v+12|0;p=v+8|0;g=v+4|0;t=v;c[w>>2]=a;c[y>>2]=b;c[x
>>2]=(c[(c[w>>2]|0)+24>>2]|0)+4+((c[y>>2]|0)*204|0);c[s>>2]=c[(c[x>>
2]|0)+196>>2];c[h>>2]=c[(c[x>>2]|0)+200>>2];c[d>>2]=c[(c[w>>2]|0)+12
>>2];c[m>>2]=c[(c[w>>2]|0)+4>>2];while(1){if((c[m>>2]|0)>>>0<
;=0)break;c[u>>2]=c[c[d>>2]>>2];c[l>>2]=(c[u>>2]|0)+((c[(c[d>>2]|0)+
4>>2]|0)*48|0);c[k>>2]=0;c[j>>2]=0;c[r>>2]=c[u>>2];while(1){if((c[r>>
;2]|0)>>>0>=(c[l>>2]|0)>>>0)break;if(c[(c[r>>2]|0)+16>>2]&
32|0){if(!(c[j>>2]|0))c[j>>2]=c[r>>2];c[k>>2]=(c[k>>2]|0)+1}c[r>>2]=(
c[r>>2]|0)+48}a:do if((c[k>>2]|0)>>>0<2){if((c[k>>2]|0)==1){y=c[(c[j>>
;2]|0)+44>>2]|0;c[h>>2]=y-(Mb(c[(c[j>>2]|0)+36>>2]|0,c[s>>2]|0)|0)}c[r>
x3e;2]=c[u>>2];while(1){if((c[r>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break
a;if((c[r>>2]|0)!=(c[j>>2]|0)){y=Mb(c[(c[r>>2]|0)+36>>2]|0,c[s>>2]|0)|0;c[(c[
r>>2]|0)+44>>2]=y+(c[h>>2]|0)}c[r>>2]=(c[r>>2]|0)+48}}else{c[u>>2]=c
[j>>2];do{c[r>>2]=c[j>>2];while(1){c[l>>2]=c[(c[j>>2]|0)+4>>2];if((c
[l>>2]|0)==(c[u>>2]|0))break a;if(!(c[(c[l>>2]|0)+16>>2]&32))break;c[j>>2
]=c[l>>2]}do c[l>>2]=c[(c[l>>2]|0)+4>>2];while(!(c[(c[l>>2]|0)+16>>2
]&32|0));if((c[(c[j>>2]|0)+36>>2]|0)<=(c[(c[l>>2]|0)+36>>2]|0)){c[n>>
;2]=c[(c[j>>2]|0)+36>>2];c[e>>2]=c[(c[j>>2]|0)+44>>2];c[o>>2]=(c[(c[
l>>2]|0)+36>>2]|0)-(c[n>>2]|0);c[f>>2]=(c[(c[l>>2]|0)+44>>2]|0)-(c[e
>>2]|0)}else{c[n>>2]=c[(c[l>>2]|0)+36>>2];c[e>>2]=c[(c[l>>2]|0)+44
x3e;>2];c[o>>2]=(c[(c[j>>2]|0)+36>>2]|0)-(c[n>>2]|0);c[f>>2]=(c[(c[j>
;>2]|0)+44>>2]|0)-(c[e>>2]|0)}c[t>>2]=65536;if((c[o>>2]|0)>0)c[t>>2]=
Vb(c[f>>2]|0,c[o>>2]|0)|0;c[r>>2]=c[(c[j>>2]|0)+4>>2];do{c[q>>2]=c[(
c[r>>2]|0)+36>>2];c[p>>2]=(c[q>>2]|0)-(c[n>>2]|0);do if((c[p>>2]|0)
x3e;0){b=c[e>>2]|0;if((c[p>>2]|0)>=(c[o>>2]|0)){y=b+(c[f>>2]|0)|0;c[g>>2]=
y+(Mb((c[p>>2]|0)-(c[o>>2]|0)|0,c[s>>2]|0)|0);break}else{c[g>>2]=b+(Mb(c[p>>2]|
0,c[t>>2]|0)|0);break}}else{y=c[e>>2]|0;c[g>>2]=y+(Mb(c[p>>2]|0,c[s>>2]|0)|0)}
while(0);c[(c[r>>2]|0)+44>>2]=c[g>>2];c[r>>2]=c[(c[r>>2]|0)+4>>2]}while
((c[r>>2]|0)!=(c[l>>2]|0));c[j>>2]=c[l>>2]}while((c[j>>2]|0)!=(c[u>>
2]|0))}while(0);c[m>>2]=(c[m>>2]|0)+-1;c[d>>2]=(c[d>>2]|0)+8}i=v;return}function Zn(b,d){
b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0;j=l;c[e>>2]=b;c[f
x3e;>2]=d;c[h>>2]=c[(c[e>>2]|0)+8>>2];c[k>>2]=c[(c[(c[e>>2]|0)+20>
x3e;2]|0)+4>>2];c[j>>2]=c[(c[(c[e>>2]|0)+20>>2]|0)+8>>2];c[g>>2]=0;while
(1){if((c[g>>2]|0)>>>0>=(c[c[e>>2]>>2]|0)>>>0)break;d=c[(c[h>
;>2]|0)+44>>2]|0;b=(c[k>>2]|0)+(c[g>>2]<<3)|0;if(!(c[f>>2]|0))c[b>
x3e;2]=d;else c[b+4>>2]=d;if(c[(c[h>>2]|0)+16>>2]&16|0){b=(c[j>>2]|0)+(c[g>>
;2]|0)|0;a[b>>0]=a[b>>0]|(((c[f>>2]|0)==0?32:64)&255)<<24>>24}c[h>
x3e;2]=(c[h>>2]|0)+48;c[g>>2]=(c[g>>2]|0)+1}i=l;return}function _n(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]|0)+16>>2];$n((c[d>>2]|0)+28+40
|0,c[e>>2]|0);$n((c[d>>2]|0)+28|0,c[e>>2]|0);Fb(c[e>>2]|0,c[(c[d>>2]|0)+8>
;>2]|0);c[(c[d>>2]|0)+8>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+12>>2]|0);c[(c[d
>>2]|0)+12>>2]=0;c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>
x3e;2]|0)+16>>2]=0;i=b;return}function $n(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2
]=0;c[(c[e>>2]|0)+20>>2]=0;c[(c[e>>2]|0)+28>>2]=0;Fb(c[f>>2]|0,c[(c[e>>
;2]|0)+12>>2]|0);c[(c[e>>2]|0)+12>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>
;2]|0);c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[c[e>>2]>>2]=0;c
[(c[e>>2]|0)+16>>2]=0;i=d;return}function ao(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;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c
[a+20>>2]=0;c[a+24>>2]=0;c[(c[d>>2]|0)+4>>2]=38;c[(c[d>>2]|0)+8>>2]=
108;c[(c[d>>2]|0)+12>>2]=11;c[(c[d>>2]|0)+16>>2]=12;c[(c[d>>2]|0)+20>>
;2]=15;c[(c[d>>2]|0)+24>>2]=24;i=b;return}function bo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2
]=a;dn(c[d>>2]|0,2);i=b;return}function co(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;o=
i;i=i+160|0;f=o+156|0;g=o+152|0;h=o+148|0;j=o+144|0;l=o+16|0;n=o+8|0;k=o+4|0;m=o;c[f>>2]=a;c[g>>2]=b;c[h>
;>2]=d;c[j>>2]=e;c[m>>2]=c[h>>2];c[n>>2]=0;while(1){if((c[m>>2]|0)<=
0)break;a=c[m>>2]|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>16?16:a;c[k>>2]=0;while
(1){if((c[k>>2]|0)>=(c[h>>2]<<1|0))break;c[n>>2]=(c[n>>2]|0)+(c[(c[j>
;>2]|0)+(c[k>>2]<<2)>>2]|0);a=(Tb(c[n>>2]|0)|0)>>16;c[l+(c[k>>2
]<<2)>>2]=a;c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)
x3e;=(c[h>>2]<<1|0))break;c[l+((c[k>>2]|0)+1<<2)>>2]=(c[l+((c[k>>2]|
0)+1<<2)>>2]|0)-(c[l+(c[k>>2]<<2)>>2]|0);c[k>>2]=(c[k>>2]|
0)+2}pn(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,l);c[m>>2]=(c[m>>2]|0)-(c[h>>2
]|0)}i=o;return}function eo(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;p=i;i=i+48|0;f=p+32|0;g
=p+28|0;h=p+24|0;j=p+20|0;n=p+16|0;m=p+12|0;o=p+8|0;k=p+4|0;l=p;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j
x3e;>2]=e;if(c[(c[f>>2]|0)+4>>2]|0){i=p;return}c[m>>2]=(c[f>>2]|0)+16;c[o>>
;2]=c[c[f>>2]>>2];c[k>>2]=c[c[m>>2]>>2];c[l>>2]=c[(c[m>>2]|
0)+36>>2];if((c[h>>2]|0)!=((c[k>>2]|0)+(c[l>>2]|0)|0)){i=p;return}c[n>>2]=fo(c
[m>>2]|0,c[j>>2]|0,c[l>>2]|0,c[k>>2]|0,c[g>>2]|0,c[o>>2]|0)|0;if((c[
n>>2]|0)==0?(c[n>>2]=fo((c[m>>2]|0)+36|0,c[j>>2]|0,0,c[l>>2]|0,c[g>>
2]|0,c[o>>2]|0)|0,(c[n>>2]|0)==0):0){i=p;return}c[(c[f>>2]|0)+4>>2]=c[n>>2];i=
p;return}function fo(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;o=i;i=i+32|0;h=o+24|0;
j=o+20|0;k=o+16|0;l=o+12|0;p=o+8|0;m=o+4|0;n=o;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c
[p>>2]=f;c[m>>2]=g;c[n>>2]=0;c[n>>2]=Bn(c[h>>2]|0,c[p>>2]|0,c[m>
;>2]|0)|0;if(c[n>>2]|0){p=c[n>>2]|0;i=o;return p|0}c[n>>2]=go((c[h>>2]|0)+12|0,c[j
x3e;>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;p=c[n>>2]|0;i=o;return p|0}function go(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;u=i;i=i+48|0;v=u+44|0;j=u+40|0;k
=u+36|0;l=u+32|0;m=u+28|0;n=u+24|0;o=u+20|0;p=u+16|0;q=u+12|0;t=u+8|0;s=u+4|0;r=u;c[v>>2]=b;c[j>>2]=e;c[k>
;>2]=f;c[l>>2]=g;c[m>>2]=h;c[n>>2]=0;c[n>>2]=tn(c[v>>2]|0,c[m>>
2]|0,o)|0;if(c[n>>2]|0){v=c[n>>2]|0;i=u;return v|0}c[n>>2]=mn(c[o>>2]|0,c[l>>2
]|0,c[m>>2]|0)|0;if(c[n>>2]|0){v=c[n>>2]|0;i=u;return v|0}c[c[o>>2]>>2]=c[l>
;>2];c[p>>2]=(c[j>>2]|0)+((c[k>>2]|0)>>>3);c[q>>2]=128>>(c
[k>>2]&7);c[t>>2]=c[(c[o>>2]|0)+8>>2];c[s>>2]=128;while(1){if((c[l>
x3e;2]|0)>>>0<=0)break;c[r>>2]=(d[c[t>>2]>>0]|0)&~c[s>>2];if((d
[c[p>>2]>>0]|0)&c[q>>2]|0)c[r>>2]=c[r>>2]|c[s>>2];a[c[t>
x3e;2]>>0]=c[r>>2];c[q>>2]=c[q>>2]>>1;if(!(c[q>>2]|0)){c[p>>
;2]=(c[p>>2]|0)+1;c[q>>2]=128}c[s>>2]=c[s>>2]>>1;if(!(c[s>>2]|0)){c[
t>>2]=(c[t>>2]|0)+1;c[s>>2]=128}c[l>>2]=(c[l>>2]|0)+-1}v=c[n>>2]|0;i
=u;return v|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,m=0,n=0;n=i;i=i+32|0;e=n+28|0;f=n+24|0;g=n+20
|0;l=n+16|0;k=n+12|0;m=n+8|0;h=n+4|0;j=n;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[(c[e>>2]|0)+
4>>2]|0){i=n;return}c[k>>2]=(c[e>>2]|0)+16;c[m>>2]=c[c[e>>2]>>2];c[h
>>2]=c[c[k>>2]>>2];c[j>>2]=c[(c[k>>2]|0)+36>>2];if((c[f>>2
]|0)!=((c[h>>2]|0)+(c[j>>2]|0)|0)){i=n;return}c[l>>2]=fo(c[k>>2]|0,c[g>>2]|0,0
,c[h>>2]|0,0,c[m>>2]|0)|0;if((c[l>>2]|0)==0?(c[l>>2]=fo((c[k>>2]|0)+36|0,c[g
x3e;>2]|0,c[h>>2]|0,c[j>>2]|0,0,c[m>>2]|0)|0,(c[l>>2]|0)==0):0){i=n;return}c[(c[e
x3e;>2]|0)+4>>2]=c[l>>2];i=n;return}function io(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)+120>>2]=0;c[(c[d>>2]|0)+148>>2]=0;jo((c[d>>2]|0)+20|0);i=b;return
}function jo(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]>
x3e;2];ko((c[d>>2]|0)+16|0,c[e>>2]|0);ko((c[d>>2]|0)+16+36|0,c[e>>2]|0);c[(c[d>>
;2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;i=b;return}function ko(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;lo((c[f>>2]|0)+24|0,c[e>>2]|0);lo((c[f>>2]|0
)+12|0,c[e>>2]|0);no(c[f>>2]|0,c[e>>2]|0);i=d;return}function lo(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|
0)+4>>2];c[g>>2]=c[(c[d>>2]|0)+8>>2];while(1){if((c[f>>2]|0)>>>
0<=0)break;mo(c[g>>2]|0,c[e>>2]|0);c[f>>2]=(c[f>>2]|0)+-1;c[g>>2]=(c[g>
;>2]|0)+16}Fb(c[e>>2]|0,c[(c[d>>2]|0)+8>>2]|0);c[(c[d>>2]|0)+8>>2]=0;c[c[
d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;i=h;return}function mo(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>2
]|0);c[(c[e>>2]|0)+8>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[(
c[e>>2]|0)+12>>2]=0;i=d;return}function no(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>2]|0);c[(c[e>>2]|0)+8>
;>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;i=d;return}function oo(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;
c[c[e>>2]>>2]=0;c[g>>2]=bc(c[d>>2]|0,24,f)|0;if(c[f>>2]|0){g=c[f>>2]|
0;i=h;return g|0}c[(c[g>>2]|0)+8>>2]=c[d>>2];po(c[g>>2]|0);c[c[e>>2]>>
;2]=c[g>>2];g=c[f>>2]|0;i=h;return g|0}function po(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a
;c[d>>2]=c[d>>2];i=b;return}function qo(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;e=j+12
|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(!(c[e>>2]|0)){i=j;return}if((c[f
>>2]|0)!=0&(c[g>>2]|0)>=3076){c[h>>2]=c[f>>2];c[c[e>>2]>>2
]=(c[f>>2]|0)+1032;c[(c[e>>2]|0)+4>>2]=(c[f>>2]|0)+(c[g>>2]|0)-(c[c[e>>
;2]>>2]|0);c[(c[e>>2]|0)+12>>2]=c[h>>2];i=j;return}else{c[c[e>>2]>>2
]=0;c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+12>>2]=0;i=j;return}}function ro(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;c[h
x3e;>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>>2];i=e;return}function so(a,
d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l+20|0;e=l+16|0;j=l+12|0;f=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c
[j>>2]=d;c[f>>2]=c[(c[j>>2]|0)+4>>2];c[g>>2]=c[c[j>>2]>>2];
if((c[e>>2]|0?c[c[e>>2]>>2]|0:0)?c[(c[e>>2]|0)+4>>2]|0:0){if(!(c[f>>
2]|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}if(b[(c[f>>2]|0)+2>>1]|0?(b[c[f>>
2]>>1]|0)>0:0){if(c[(c[f>>2]|0)+12>>2]|0?c[(c[f>>2]|0)+4>>2]|0:0){if((b[(
c[f>>2]|0)+2>>1]|0)!=((b[(c[(c[f>>2]|0)+12>>2]|0)+((b[c[f>>2]>>1]|0)-
1<<1)>>1]|0)+1|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}c[h>>2]=c[(c[e>
x3e;2]|0)+12>>2];if(c[(c[j>>2]|0)+8>>2]&2|0){c[k>>2]=19;k=c[k>>2]|0;i=l;return
k|0}if(!(c[g>>2]|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}if(c[(c[g>>2]|0)+4>>
;2]|0?c[c[g>>2]>>2]|0:0){if(!(c[(c[g>>2]|0)+12>>2]|0)){c[k>>2]=20;k=c[k>
x3e;2]|0;i=l;return k|0}a=(c[h>>2]|0)+128|0;d=c[f>>2]|0;c[a>>2]=c[d>>2];c[a+4>>
;2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];c[a+16>>2]=c
[d+16>>2];a=(c[h>>2]|0)+104|0;g=c[g>>2]|0;c[a>>2]=c[g>>2];c[a+4>>2]=
c[g+4>>2];c[a+8>>2]=c[g+8>>2];c[a+12>>2]=c[g+12>>2];c[a+16>>2]=c[g+16
>>2];c[a+20>>2]=c[g+20>>2];c[(c[h>>2]|0)+28>>2]=c[c[e>>2]>>
;2];c[(c[h>>2]|0)+32>>2]=(c[(c[h>>2]|0)+28>>2]|0)+((((c[(c[e>>2]|0)+4>>
;2]|0)>>>0)/4|0)<<2);e=c[h>>2]|0;if(c[(c[j>>2]|0)+8>>2]&1|0)e=to(e)|
0;else e=uo(e)|0;c[k>>2]=e;k=c[k>>2]|0;i=l;return k|0}c[k>>2]=0;k=c[k>>2]|0;i=l;return k
|0}c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}c[k>>2]=0;k=c[k>>2]|0;i=l;return k|0}c[k>
x3e;2]=96;k=c[k>>2]|0;i=l;return k|0}function to(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>
x3e;2]=c[d>>2];i=b;return 19}function uo(e){e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;g=k+8|0;h=k+4|0;j=k;c[h>
x3e;2]=e;vo(c[h>>2]|0,c[(c[h>>2]|0)+128+16>>2]&256);c[(c[h>>2]|0)+24>>2]=
c[(c[h>>2]|0)+12>>2];e=c[h>>2]|0;if(!(c[(c[h>>2]|0)+128+16>>2]&8|0)){f=(c
[h>>2]|0)+180|0;if(c[e+128+16>>2]&16|0)a[f>>0]=4;else a[f>>0]=0;if(!(c[(c[h>
x3e;2]|0)+128+16>>2]&32)){f=(c[h>>2]|0)+180|0;a[f>>0]=(d[f>>0]|0)+1}}else a[e+180
x3e;>0]=2;a[(c[h>>2]|0)+181>>0]=((c[(c[h>>2]|0)+128+16>>2]&512|0)!=0^1)&1
;c[(c[h>>2]|0)+164>>2]=16;c[(c[h>>2]|0)+168>>2]=1;c[(c[h>>2]|0)+172>>
;2]=2;c[(c[h>>2]|0)+176>>2]=39;c[(c[h>>2]|0)+1024>>2]=0;b[(c[h>>2]|0)+960>
;>1]=0;b[(c[h>>2]|0)+960+2>>1]=(c[(c[h>>2]|0)+104>>2]|0)-1;b[(c[h>>2]|0)+
56>>1]=c[(c[h>>2]|0)+104+4>>2];c[(c[h>>2]|0)+60>>2]=c[(c[h>>2]|0)+104
+12>>2];f=Ao(c[h>>2]|0,0)|0;c[j>>2]=f;if(f|0){c[g>>2]=c[j>>2];j=c[g>>
;2]|0;i=k;return j|0}if((a[(c[h>>2]|0)+181>>0]|0?(d[(c[h>>2]|0)+180>>0]|0)!=2:0)?(c[(c[h
>>2]|0)+164>>2]=17,c[(c[h>>2]|0)+168>>2]=3,c[(c[h>>2]|0)+172>>2]=4,c
[(c[h>>2]|0)+176>>2]=40,c[(c[h>>2]|0)+1024>>2]=0,b[(c[h>>2]|0)+960>>
1]=0,b[(c[h>>2]|0)+960+2>>1]=(c[(c[h>>2]|0)+104+4>>2]|0)-1,h=Ao(c[h>>2]|0,1)|0
,c[j>>2]=h,h|0):0){c[g>>2]=c[j>>2];j=c[g>>2]|0;i=k;return j|0}c[g>>2]=0;j=c[g
x3e;>2]|0;i=k;return j|0}function vo(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;b=c[d>>2]|0;if(c[f>>2]|0){c[b>>2]=12;c[(c[d>>2]|0)+16>>2]=256;c[(c
[d>>2]|0)+20>>2]=50}else{c[b>>2]=6;c[(c[d>>2]|0)+16>>2]=32;c[(c[d>>2
]|0)+20>>2]=2}c[(c[d>>2]|0)+4>>2]=1<<c[c[d>>2]>>2];c[(c[d>>
;2]|0)+8>>2]=(c[(c[d>>2]|0)+4>>2]|0)/2|0;c[(c[d>>2]|0)+12>>2]=(c[c[d>>
;2]>>2]|0)-6;i=e;return}function wo(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;h=i;i=i+16|0;f=h+12|0;j=h+8|0;k=h
+4|0;g=h;c[f>>2]=a;c[j>>2]=d;c[k>>2]=e;c[g>>2]=c[(c[f>>2]|0)+104+8>>
2];c[k>>2]=c[k>>2];b[(c[f>>2]|0)+156>>1]=0-(c[g>>2]|0);a=_(0-(b[c[j>>
;2]>>1]|0)|0,c[g>>2]|0)|0;c[(c[f>>2]|0)+148>>2]=a;if((c[g>>2]|0)<=0){k=c[
f>>2]|0;k=k+158|0;b[k>>1]=0;k=c[f>>2]|0;k=k+160|0;b[k>>1]=0;i=h;return}j=_((c[(c[f>
x3e;2]|0)+104>>2]|0)-1|0,c[g>>2]|0)|0;k=(c[f>>2]|0)+148|0;c[k>>2]=(c[k>>2]|0)+
j;k=c[f>>2]|0;k=k+158|0;b[k>>1]=0;k=c[f>>2]|0;k=k+160|0;b[k>>1]=0;i=h;return}function xo
(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;v=i;i=i+48|0;m=v+36
|0;z=v+40|0;w=v+32|0;n=v+28|0;y=v+24|0;x=v+20|0;p=v+16|0;q=v+12|0;o=v+8|0;s=v+4|0;r=v+43|0;t=v+42|0;u=v;c[m>>2]=f;b[z
x3e;>1]=g;c[w>>2]=h;c[n>>2]=j;c[y>>2]=k;c[x>>2]=l;b[z>>1]=b[z>>
1]|0;c[y>>2]=c[y>>2];c[x>>2]=c[x>>2];c[p>>2]=((c[w>>2]|0)+(c[(c[m>
;>2]|0)+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>2]|0))>>c[c[m>>2]>>
2];if(((c[n>>2]|0)-(c[w>>2]|0)-(c[(c[m>>2]|0)+4>>2]|0)|0)<=(c[(c[m>>2]|0)+
20>>2]|0))c[q>>2]=c[p>>2];else c[q>>2]=(c[n>>2]&0-(c[(c[m>>2]|0
)+4>>2]|0))>>c[c[m>>2]>>2];if((c[q>>2]|0)<0){i=v;return}if((c[p>>
;2]|0)>=(e[(c[m>>2]|0)+56>>1]|0)){i=v;return}if((c[p>>2]|0)<0)c[p>>2]=0;if((c[
q>>2]|0)>=(e[(c[m>>2]|0)+56>>1]|0))c[q>>2]=(e[(c[m>>2]|0)+56>>1
]|0)-1;c[o>>2]=(c[p>>2]>>3&65535)<<16>>16;c[s>>2]=(c[q>>
;2]>>3&65535)<<16>>16;a[r>>0]=255>>(c[p>>2]&7);a[t>
x3e;0]=~(127>>(c[q>>2]&7));if((b[(c[m>>2]|0)+158>>1]|0)>(c[o>>2]|0))
b[(c[m>>2]|0)+158>>1]=c[o>>2];if((b[(c[m>>2]|0)+160>>1]|0)<(c[s>>
;2]|0))b[(c[m>>2]|0)+160>>1]=c[s>>2];c[u>>2]=(c[(c[m>>2]|0)+60>>2]|0
)+(c[(c[m>>2]|0)+148>>2]|0)+(c[o>>2]|0);c[s>>2]=(c[s>>2]|0)-(c[o>>2]|
0);m=d[r>>0]|0;if((c[s>>2]|0)<=0){z=c[u>>2]|0;a[z>>0]=d[z>>0]|m&d[t
x3e;>0];i=v;return}z=c[u>>2]|0;a[z>>0]=d[z>>0]|m;c[s>>2]=(c[s>>2]|0)+-1;while
(1){if((c[s>>2]|0)<=0)break;z=(c[u>>2]|0)+1|0;c[u>>2]=z;a[z>>0]=-1;c[s>>2
]=(c[s>>2]|0)+-1}z=(c[u>>2]|0)+1|0;a[z>>0]=d[z>>0]|d[t>>0];i=v;return}function
yo(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;y=i;i=i+48|0;m=y+32
|0;n=y+40|0;o=y+28|0;p=y+24|0;q=y+20|0;r=y+16|0;u=y+12|0;v=y+8|0;x=y+4|0;s=y+38|0;w=y+36|0;t=y;c[m>>2]=f;b[n>>
;1]=g;c[o>>2]=h;c[p>>2]=j;c[q>>2]=k;c[r>>2]=l;c[u>>2]=(c[o>>2]|0)+(c
[(c[m>>2]|0)+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>2]|0);c[v>>2]=c[p>>
2]&0-(c[(c[m>>2]|0)+4>>2]|0);c[x>>2]=c[u>>2];if((c[u>>2]|0)>(c[v>
;>2]|0)){c[t>>2]=c[(c[q>>2]|0)+12>>2]&7;if((c[u>>2]|0)!=((c[v>>2]|0)+(
c[(c[m>>2]|0)+4>>2]|0)|0)){i=y;return}a:do switch(c[t>>2]|0){case 0:{c[x>>2]=c[v>
x3e;2];break}case 4:{c[x>>2]=(((c[o>>2]|0)+(c[p>>2]|0)-1|0)/2|0)+(c[(c[m>>2]|0)+8>
x3e;2]|0)&0-(c[(c[m>>2]|0)+4>>2]|0);break}case 5:case 1:{if((c[(c[q>>2]|0)+28>>2]|0
)==(c[r>>2]|0)?(c[(c[q>>2]|0)+16>>2]|0)<=0:0){if(!(c[(c[q>>2]|0)+12>>2]
x26;16)){i=y;return}if(((c[p>>2]|0)-(c[o>>2]|0)|0)<(c[(c[m>>2]|0)+8>>2]|0)){i=y;return
}}if((c[(c[r>>2]|0)+28>>2]|0)==(c[q>>2]|0)?(c[(c[q>>2]|0)+20>>2]|0)==(b[n>
;>1]|0):0){if(!(c[(c[q>>2]|0)+12>>2]&32)){i=y;return}if(((c[p>>2]|0)-(c[o>>2]|
0)|0)<(c[(c[m>>2]|0)+8>>2]|0)){i=y;return}}if((c[t>>2]|0)==1){c[x>>2]=c[v>>
;2];break a}else{c[x>>2]=(((c[o>>2]|0)+(c[p>>2]|0)-1|0)/2|0)+(c[(c[m>>2]|0)+8>>
;2]|0)&0-(c[(c[m>>2]|0)+4>>2]|0);break a}}default:{i=y;return}}while(0);c[u>>2]=(c[x>>
;2]|0)==(c[u>>2]|0)?c[v>>2]|0:c[u>>2]|0;c[u>>2]=c[u>>2]>>c[c[m>
x3e;2]>>2];b[s>>1]=c[u>>2]>>3;b[w>>1]=c[u>>2]&7;if(((c[u>
x3e;2]|0)>=0?(c[u>>2]|0)<(e[(c[m>>2]|0)+56>>1]|0):0)?d[(c[(c[m>>2]|0)+60>
x3e;2]|0)+((c[(c[m>>2]|0)+148>>2]|0)+(b[s>>1]|0))>>0]&128>>b[w>>
;1]|0:0){i=y;return}}c[u>>2]=c[x>>2]>>c[c[m>>2]>>2];if((c[u>>2]|0)
x3c;0){i=y;return}if((c[u>>2]|0)>=(e[(c[m>>2]|0)+56>>1]|0)){i=y;return}b[s>>1]=c[u
x3e;>2]>>3;b[w>>1]=c[u>>2]&7;if((b[(c[m>>2]|0)+158>>1]|0)>(b[s
x3e;>1]|0))b[(c[m>>2]|0)+158>>1]=b[s>>1]|0;if((b[(c[m>>2]|0)+160>>1]|0)
x3c;(b[s>>1]|0))b[(c[m>>2]|0)+160>>1]=b[s>>1]|0;g=(c[(c[m>>2]|0)+60>>
;2]|0)+((c[(c[m>>2]|0)+148>>2]|0)+(b[s>>1]|0))|0;a[g>>0]=d[g>>0]|(128>>
;b[w>>1]&255)<<24>>24;i=y;return}function zo(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>
x3e;2]=a;a=(c[e>>2]|0)+148|0;c[a>>2]=(c[a>>2]|0)+(b[(c[e>>2]|0)+156>>1]|0);i=d
;return}function Ao(d,e){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+16|0;k=m+4|0;l=m;f=m+14|0;g=m+12|0;h=m+10|0;j=m+8|0
;c[l>>2]=d;a[f>>0]=e;while(1){if((c[(c[l>>2]|0)+1024>>2]|0)<0){e=14;break}d=_(b[(c[
l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>>1]|0,c[(c[l>>2]|0)+4>
;>2]|0)|0;c[(c[l>>2]|0)+80>>2]=d;d=_(b[(c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>
;2]<<2)>>1]|0,c[(c[l>>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+76>>2]=d;c[(c[l
>>2]|0)+40>>2]=c[(c[l>>2]|0)+28>>2];c[(c[l>>2]|0)+44>>2]=0;d=(Bo(c[l
>>2]|0,a[f>>0]|0)|0)<<24>>24!=0;e=c[l>>2]|0;if(!d){if(c[e+92>>2]|0?(
Qo(c[l>>2]|0)|0)<<24>>24:0){e=12;break}d=(c[l>>2]|0)+1024|0;c[d>>2]=(c[d>
x3e;2]|0)+-1;continue}if((c[e+44>>2]|0)!=98){e=5;break}c[(c[l>>2]|0)+44>>2]=0;b[g>>1]=b[(
c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)>>1]|0;b[h>>1]=b[(c[l>
;>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>>1]|0;b[j>>1]=((b[g>>
1]|0)+(b[h>>1]|0)|0)/2|0;if((c[(c[l>>2]|0)+1024>>2]|0)>=7){e=8;break}if((b[j>>1]|0)
x3c;(b[g>>1]|0)){e=8;break}b[(c[l>>2]|0)+960+((c[(c[l>>2]|0)+1024>>2]|0)+1<<2)
x3e;>1]=b[j>>1]|0;b[(c[l>>2]|0)+960+((c[(c[l>>2]|0)+1024>>2]|0)+1<<2)+2
x3e;>1]=b[h>>1]|0;b[(c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>
x3e;1]=(b[j>>1]|0)-1;d=(c[l>>2]|0)+1024|0;c[d>>2]=(c[d>>2]|0)+1}if((e|0)==5){c[k>
x3e;2]=1;l=c[k>>2]|0;i=m;return l|0}else if((e|0)==8){c[(c[l>>2]|0)+1024>>2]=0;c[(c[l>>2
]|0)+44>>2]=20;c[k>>2]=c[(c[l>>2]|0)+44>>2];l=c[k>>2]|0;i=m;return l|0}else if
((e|0)==12){c[k>>2]=c[(c[l>>2]|0)+44>>2];l=c[k>>2]|0;i=m;return l|0}else if((e|0)==14){c
[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}return 0}function Bo(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;n=i;i=i+32|0;l=n+21|0;m=n+16|0;f=n+12|0;g=n+8|0;k=n+4|0;h=n;j=n+20|0;c[m>>2]=d;c[f>>2]=e;c[(c[m>>
;2]|0)+92>>2]=0;a[(c[m>>2]|0)+87>>0]=0;a[(c[m>>2]|0)+86>>0]=0;c[(c[m>>
;2]|0)+36>>2]=(c[(c[m>>2]|0)+32>>2]|0)+-32;c[(c[m>>2]|0)+48>>2]=0;c[(c[m>
x3e;2]|0)+88>>2]=c[(c[m>>2]|0)+40>>2];c[(c[(c[m>>2]|0)+88>>2]|0)+8>>
2]=c[(c[m>>2]|0)+40>>2];b[(c[m>>2]|0)+84>>1]=0;c[k>>2]=0;c[g>>2]=0;while
(1){d=c[m>>2]|0;if((c[g>>2]|0)>=(b[(c[m>>2]|0)+128>>1]|0)){e=19;break}c[d+100>
x3e;2]=0;c[(c[m>>2]|0)+96>>2]=0;if((Co(c[m>>2]|0,c[k>>2]&65535,b[(c[(c[m>>
;2]|0)+128+12>>2]|0)+(c[g>>2]<<1)>>1]|0,c[f>>2]|0)|0)<<24>>
;24){e=4;break}c[k>>2]=(b[(c[(c[m>>2]|0)+128+12>>2]|0)+(c[g>>2]<<1)>>
;1]|0)+1;if(((((c[(c[m>>2]|0)+72>>2]&(c[(c[m>>2]|0)+4>>2]|0)-1|0)==0?(c[(c[m>
x3e;2]|0)+72>>2]|0)>=(c[(c[m>>2]|0)+76>>2]|0):0)?(c[(c[m>>2]|0)+72>>2]|0)
x3c;=(c[(c[m>>2]|0)+80>>2]|0):0)?c[(c[m>>2]|0)+96>>2]|0:0)?(c[(c[(c[m>>2]|0)+96
>>2]|0)+12>>2]&8|0)==(c[(c[(c[m>>2]|0)+88>>2]|0)+12>>2]&8|0):0){d=(c
[m>>2]|0)+40|0;c[d>>2]=(c[d>>2]|0)+-4}c[h>>2]=c[(c[m>>2]|0)+88>>2];e
=c[(c[m>>2]|0)+72>>2]|0;d=c[m>>2]|0;if(c[(c[(c[m>>2]|0)+88>>2]|0)+12>>
;2]&8|0)a[j>>0]=(e-(c[d+72>>2]&0-(c[(c[m>>2]|0)+4>>2]|0))|0)>=(c[(c[m>
;>2]|0)+8>>2]|0);else a[j>>0]=((e+(c[d+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>
;2]|0))-(c[(c[m>>2]|0)+72>>2]|0)|0)>=(c[(c[m>>2]|0)+8>>2]|0);if((Fo(c[m>>
2]|0,a[j>>0]|0)|0)<<24>>24){e=15;break}if(c[(c[m>>2]|0)+96>>2]|0)c[(c[h>
x3e;2]|0)+28>>2]=c[(c[m>>2]|0)+96>>2];c[g>>2]=(c[g>>2]|0)+1}if((e|0)==4){a[l
x3e;>0]=1;m=a[l>>0]|0;i=n;return m|0}else if((e|0)==15){a[l>>0]=1;m=a[l>>0]|0;i=n;return m|0}
else if((e|0)==19)if((Oo(d)|0)<<24>>24){a[l>>0]=1;m=a[l>>0]|0;i=n;return m|0}else{a[l>
;>0]=(c[(c[m>>2]|0)+40>>2]|0)>>>0<(c[(c[m>>2]|0)+36>>2]|0)>
;>>0?0:1;m=a[l>>0]|0;i=n;return m|0}return 0}function Co(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,P=0,Q=0,R=0;R=i;i=
i+144|0;k=R+140|0;l=R+132|0;m=R+138|0;n=R+136|0;o=R+128|0;D=R+120|0;C=R+112|0;F=R+104|0;r=R+96|0;q=R+92|0;p=R+88|0;B=R+84|0;A=R+
80|0;s=R+76|0;t=R+72|0;G=R+68|0;L=R+64|0;u=R+60|0;v=R+56|0;E=R+48|0;K=R+44|0;P=R+40|0;w=R+36|0;H=R+32|0;M=R+28|0;I=R+24|0;N=R+20
|0;J=R+16|0;O=R+12|0;x=R+8|0;y=R+4|0;z=R;c[l>>2]=f;b[m>>1]=g;b[n>>1]=h;c[o>>2]=j;c[r>
;>2]=c[(c[l>>2]|0)+128+4>>2];c[p>>2]=(c[r>>2]|0)+(e[n>>1]<<3);c
[F>>2]=(c[(c[r>>2]|0)+(e[m>>1]<<3)>>2]<<c[(c[l>>2]|0)+24
x3e;>2])-(c[(c[l>>2]|0)+8>>2]|0);c[F+4>>2]=(c[(c[r>>2]|0)+(e[m>>1]<
x3c;3)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[D>
;>2]=(c[(c[r>>2]|0)+(e[n>>1]<<3)>>2]<<c[(c[l>>2]|0)+24>>
;2])-(c[(c[l>>2]|0)+8>>2]|0);c[D+4>>2]=(c[(c[r>>2]|0)+(e[n>>1]<<3)+4
>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>>
;2]|0){c[s>>2]=c[F>>2];c[F>>2]=c[F+4>>2];c[F+4>>2]=c[s>>2];c[t>
x3e;2]=c[D>>2];c[D>>2]=c[D+4>>2];c[D+4>>2]=c[t>>2]};c[C>>2]=c[F>
;>2];c[C+4>>2]=c[F+4>>2];c[q>>2]=(c[r>>2]|0)+(e[m>>1]<<3);c[B
x3e;>2]=(c[(c[l>>2]|0)+128+8>>2]|0)+(e[m>>1]|0);if(a[c[B>>2]>>0]&4|0
)a[(c[l>>2]|0)+180>>0]=d[c[B>>2]>>0]>>5;c[A>>2]=a[c[B>>2]
x3e;>0]&3;a:do if((c[A>>2]|0)==2)Q=39;else{if(!(c[A>>2]|0)){if((a[(c[(c[l>>2]|0)+128+8
x3e;>2]|0)+(e[n>>1]|0)>>0]&3|0)==1){c[F>>2]=c[D>>2];c[F+4>>2]=c[D+4
x3e;>2];c[p>>2]=(c[p>>2]|0)+-8}else{c[F>>2]=((c[F>>2]|0)+(c[D>>2]|0)|0)/2
|0;c[F+4>>2]=((c[F+4>>2]|0)+(c[D+4>>2]|0)|0)/2|0;c[D>>2]=c[F>>2];c[D+4>
x3e;2]=c[F+4>>2]}c[q>>2]=(c[q>>2]|0)+-8;c[B>>2]=(c[B>>2]|0)+-1}c[(c[l>>
;2]|0)+68>>2]=c[F>>2];c[(c[l>>2]|0)+72>>2]=c[F+4>>2];b:while(1){if((c[q>
x3e;2]|0)>>>0>=(c[p>>2]|0)>>>0){Q=37;break}c[q>>2]=(c[q>>2]|0)+
8;c[B>>2]=(c[B>>2]|0)+1;c[A>>2]=a[c[B>>2]>>0]&3;switch(c[A>>2]|
0){case 1:{c[G>>2]=(c[c[q>>2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>
;>2]|0)+8>>2]|0);c[L>>2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24
>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>>2]|0){c[u>>2]=c[G>>2];c[G>
;>2]=c[L>>2];c[L>>2]=c[u>>2]}if((Do(c[l>>2]|0,c[G>>2]|0,c[L>>2]|
0)|0)<<24>>24)break a;else continue b}case 0:{c[C>>2]=(c[c[q>>2]>>2]<<
;c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[C+4>>2]=(c[(c[q>>2]|
0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>
x3e;2]|0){c[v>>2]=c[C>>2];c[C>>2]=c[C+4>>2];c[C+4>>2]=c[v>>2]}while(
1){if((c[q>>2]|0)>>>0>=(c[p>>2]|0)>>>0){Q=27;break b}c[q>>2]=(c
[q>>2]|0)+8;c[B>>2]=(c[B>>2]|0)+1;c[A>>2]=a[c[B>>2]>>0]&3;c[K
x3e;>2]=(c[c[q>>2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8
x3e;>2]|0);c[P>>2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(
c[(c[l>>2]|0)+8>>2]|0);if(c[o>>2]|0){c[w>>2]=c[K>>2];c[K>>2]=c[P>
;>2];c[P>>2]=c[w>>2]}if((c[A>>2]|0)==1)break;if(c[A>>2]|0){Q=39;break a}c[E>
x3e;2]=((c[C>>2]|0)+(c[K>>2]|0)|0)/2|0;c[E+4>>2]=((c[C+4>>2]|0)+(c[P>>2]|0)|0)/
2|0;if((Io(c[l>>2]|0,c[C>>2]|0,c[C+4>>2]|0,c[E>>2]|0,c[E+4>>2]|0)|0)<<
;24>>24)break a;c[C>>2]=c[K>>2];c[C+4>>2]=c[P>>2]}if((Io(c[l>>2]|0,c
[C>>2]|0,c[C+4>>2]|0,c[K>>2]|0,c[P>>2]|0)|0)<<24>>24)break a;else continue
b}default:{if(((c[q>>2]|0)+8|0)>>>0>(c[p>>2]|0)>>>0){Q=39;break a}if((a[(
c[B>>2]|0)+1>>0]&3|0)!=2){Q=39;break a}c[q>>2]=(c[q>>2]|0)+16;c[B>>2]=(c[
B>>2]|0)+2;c[H>>2]=(c[(c[q>>2]|0)+-16>>2]<<c[(c[l>>2]|0)+24>>
;2])-(c[(c[l>>2]|0)+8>>2]|0);c[M>>2]=(c[(c[q>>2]|0)+-16+4>>2]<<c[(c[
l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[I>>2]=(c[(c[q>>2]|0)+-8
x3e;>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[N>>2]=(
c[(c[q>>2]|0)+-8+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>
x3e;2]|0);if(c[o>>2]|0){c[x>>2]=c[H>>2];c[H>>2]=c[M>>2];c[M>>2]=c[x
x3e;>2];c[y>>2]=c[I>>2];c[I>>2]=c[N>>2];c[N>>2]=c[y>>2]}if((c[q
>>2]|0)>>>0>(c[p>>2]|0)>>>0){Q=36;break b}c[J>>2]=(c[c[q>
x3e;2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[O>
x3e;2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8
x3e;>2]|0);if(c[o>>2]|0){c[z>>2]=c[J>>2];c[J>>2]=c[O>>2];c[O>>2
]=c[z>>2]}if((Mo(c[l>>2]|0,c[H>>2]|0,c[M>>2]|0,c[I>>2]|0,c[N>>2]|0,c
[J>>2]|0,c[O>>2]|0)|0)<<24>>24)break a;else continue b}}}if((Q|0)==27){if((Io(c[l>
x3e;2]|0,c[C>>2]|0,c[C+4>>2]|0,c[F>>2]|0,c[F+4>>2]|0)|0)<<24>>24)break
}else if((Q|0)==36){if((Mo(c[l>>2]|0,c[H>>2]|0,c[M>>2]|0,c[I>>2]|0,c[N>>2]|0,c
[F>>2]|0,c[F+4>>2]|0)|0)<<24>>24)break}else if((Q|0)==37?(Do(c[l>>2]|0,c[F>
;>2]|0,c[F+4>>2]|0)|0)<<24>>24:0)break;a[k>>0]=0;Q=a[k>>0]|0;i=R;return Q
|0}while(0);if((Q|0)==39)c[(c[l>>2]|0)+44>>2]=20;a[k>>0]=1;Q=a[k>>0]|0;i=R;return Q|0}function
Do(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[g>>2]=b;c[h>>
;2]=d;c[j>>2]=e;a:do switch(c[(c[g>>2]|0)+100>>2]|0){case 0:{if((c[j>>2]|0)>(c[(c[g
>>2]|0)+72>>2]|0)){if(!((Eo(c[g>>2]|0,1,(((c[(c[g>>2]|0)+72>>2]|0)+(c[(c[g>
;>2]|0)+4>>2]|0)-1&0-(c[(c[g>>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72>>2]|
0)|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24))break a;a[f>>0]=1;e=
a[f>>0]|0;i=k;return e|0}if((c[j>>2]|0)<(c[(c[g>>2]|0)+72>>2]|0)?(Eo(c[g>>
;2]|0,2,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>2]&0-(c[(c[g>>2]|0)+
4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24:0){a[f>
x3e;0]=1;e=a[f>>0]|0;i=k;return e|0}break}case 1:{if((c[j>>2]|0)<(c[(c[g>>2]|0)+72>>
;2]|0)){if(((Fo(c[g>>2]|0,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>2]&
;0-(c[(c[g>>2]|0)+4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24
x3e;>24|0)==0?((Eo(c[g>>2]|0,2,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>
;2]&0-(c[(c[g>>2]|0)+4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<
x3c;24>>24|0)==0:0)break a;a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}case 2:{if((c[j>>2
]|0)>(c[(c[g>>2]|0)+72>>2]|0)){if(((Fo(c[g>>2]|0,(((c[(c[g>>2]|0)+72>>2]|
0)+(c[(c[g>>2]|0)+4>>2]|0)-1&0-(c[(c[g>>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72
>>2]|0)|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24|0)==0?((Eo(c[g
x3e;>2]|0,1,(((c[(c[g>>2]|0)+72>>2]|0)+(c[(c[g>>2]|0)+4>>2]|0)-1&0-(c[(c[g>
;>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72>>2]|0)|0)>=(c[(c[g>>2]|0)+8>>2]|
0)&255)|0)<<24>>24|0)==0:0)break a;a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}default
:{}}while(0);switch(c[(c[g>>2]|0)+100>>2]|0){case 1:{if((Go(c[g>>2]|0,c[(c[g>>2]|0)+68
x3e;>2]|0,c[(c[g>>2]|0)+72>>2]|0,c[h>>2]|0,c[j>>2]|0,c[(c[g>>2]|0)+76>
;>2]|0,c[(c[g>>2]|0)+80>>2]|0)|0)<<24>>24){a[f>>0]=1;e=a[f>>0]|
0;i=k;return e|0}break}case 2:{if((Ho(c[g>>2]|0,c[(c[g>>2]|0)+68>>2]|0,c[(c[g>>2]|0)+72
x3e;>2]|0,c[h>>2]|0,c[j>>2]|0,c[(c[g>>2]|0)+76>>2]|0,c[(c[g>>2]|0)+80>
;>2]|0)|0)<<24>>24){a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}default:{}}c[(c[g>
;>2]|0)+68>>2]=c[h>>2];c[(c[g>>2]|0)+72>>2]=c[j>>2];a[f>>0]=0;e
=a[f>>0]|0;i=k;return e|0}function Eo(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+9|0;h=l+4|0;j=
l;k=l+8|0;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;if(!(c[(c[h>>2]|0)+92>>2]|0)){c[(c[h
x3e;>2]|0)+88>>2]=c[(c[h>>2]|0)+40>>2];c[(c[h>>2]|0)+92>>2]=c[(c[h>
x3e;2]|0)+88>>2];b=(c[h>>2]|0)+40|0;c[b>>2]=(c[b>>2]|0)+32}e=c[h>>2]|0;if((c[(
c[h>>2]|0)+40>>2]|0)>>>0>=(c[(c[h>>2]|0)+36>>2]|0)>>>
0){c[e+44>>2]=98;a[g>>0]=1;k=a[g>>0]|0;i=l;return k|0}c[(c[e+88>>2]|0)+12>>2]=
0;c[(c[(c[h>>2]|0)+88>>2]|0)+20>>2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+16>>
;2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+8>>2]=c[(c[h>>2]|0)+40>>2];c[(c[(c[h>>
;2]|0)+88>>2]|0)+4>>2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+28>>2]=0;c[(c[(c[h>
x3e;2]|0)+88>>2]|0)+12>>2]=d[(c[h>>2]|0)+180>>0];switch(c[j>>2]|0){case 1:{b=(
c[(c[h>>2]|0)+88>>2]|0)+12|0;c[b>>2]=c[b>>2]|8;if(a[k>>0]|0){k=(c[(c[h>
x3e;2]|0)+88>>2]|0)+12|0;c[k>>2]=c[k>>2]|32}break}case 2:{if(a[k>>0]|0){k=(c[(c[h>
x3e;2]|0)+88>>2]|0)+12|0;c[k>>2]=c[k>>2]|16}break}default:{c[(c[h>>2]|0)+44>>2
]=20;a[g>>0]=1;k=a[g>>0]|0;i=l;return k|0}}if(!(c[(c[h>>2]|0)+96>>2]|0))c[(c[h>>
;2]|0)+96>>2]=c[(c[h>>2]|0)+88>>2];c[(c[h>>2]|0)+100>>2]=c[j>>2];a[(
c[h>>2]|0)+86>>0]=1;a[(c[h>>2]|0)+87>>0]=0;a[g>>0]=0;k=a[g>>0]|0;i=l
;return k|0}function Fo(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;j=l+13|0;k=l+8|0;f=l+12|0;g=l+4|0;h=l;c[k>
;>2]=d;a[f>>0]=e;c[g>>2]=((c[(c[k>>2]|0)+40>>2]|0)-(c[(c[(c[k>>2]|0)+88
x3e;>2]|0)+8>>2]|0)|0)/4|0;if((c[g>>2]|0)<0){c[(c[k>>2]|0)+44>>2]=99;a[j>
x3e;0]=1;k=a[j>>0]|0;i=l;return k|0}if((c[g>>2]|0)>0){c[(c[(c[k>>2]|0)+88>>2]|0)+16
>>2]=c[g>>2];do if(a[f>>0]|0){f=(c[(c[k>>2]|0)+88>>2]|0)+12|0;g=c[f>>
;2]|0;if(c[(c[(c[k>>2]|0)+88>>2]|0)+12>>2]&8|0){c[f>>2]=g|16;break}else{c[f>
x3e;2]=g|32;break}}while(0);c[h>>2]=c[(c[k>>2]|0)+88>>2];c[(c[k>>2]|0)+88>>2]=
c[(c[k>>2]|0)+40>>2];d=(c[k>>2]|0)+40|0;c[d>>2]=(c[d>>2]|0)+32;c[(c[(c[k>
x3e;2]|0)+88>>2]|0)+16>>2]=0;c[(c[(c[k>>2]|0)+88>>2]|0)+8>>2]=c[(c[k>>
;2]|0)+40>>2];c[(c[h>>2]|0)+28>>2]=c[(c[k>>2]|0)+88>>2];h=(c[k>>2]|0
)+84|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}f=c[k>>2]|0;if((c[(c[k>>2]|0)+40
>>2]|0)>>>0>=(c[(c[k>>2]|0)+36>>2]|0)>>>0){c[f+44>>2]=
98;a[j>>0]=1;k=a[j>>0]|0;i=l;return k|0}else{a[f+87>>0]=0;a[j>>0]=0;k=a[j>>0]|
0;i=l;return k|0}return 0}function Go(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;C=i;i=i+80|0;s=C+72|0;t=C+68|0;u=C+64|0;k=C+60|0;D=C+56|0;l=C+52|0;m=C+48|0;n
=C+44|0;w=C+40|0;x=C+36|0;o=C+32|0;p=C+28|0;q=C+24|0;r=C+20|0;A=C+16|0;y=C+12|0;z=C+8|0;v=C+4|0;B=C;c[t>>2]=b;c[u>
;>2]=d;c[k>>2]=e;c[D>>2]=f;c[l>>2]=g;c[m>>2]=h;c[n>>2]=j;c[w>>2
]=(c[D>>2]|0)-(c[u>>2]|0);c[x>>2]=(c[l>>2]|0)-(c[k>>2]|0);if(((c[x>>
2]|0)>0?(c[l>>2]|0)>=(c[m>>2]|0):0)?(c[k>>2]|0)<=(c[n>>2]|0):0){if((c[k
x3e;>2]|0)<(c[m>>2]|0)){D=xb(c[w>>2]|0,(c[m>>2]|0)-(c[k>>2]|0)|0,c[x>>
;2]|0)|0;c[u>>2]=(c[u>>2]|0)+D;c[o>>2]=c[m>>2]>>c[c[t>>2]>>
;2];c[q>>2]=0}else{c[o>>2]=c[k>>2]>>c[c[t>>2]>>2];c[q>>2]=
c[k>>2]&(c[(c[t>>2]|0)+4>>2]|0)-1}if((c[l>>2]|0)>(c[n>>2]|0)){c[p>
;>2]=c[n>>2]>>c[c[t>>2]>>2];c[r>>2]=0}else{c[p>>2]=c[l>>
;2]>>c[c[t>>2]>>2];c[r>>2]=c[l>>2]&(c[(c[t>>2]|0)+4>>
2]|0)-1}do if((c[q>>2]|0)<=0){if(a[(c[t>>2]|0)+87>>0]|0){D=(c[t>>2]|0)+40|0;c[D>
;>2]=(c[D>>2]|0)+-4;a[(c[t>>2]|0)+87>>0]=0}}else{if((c[o>>2]|0)!=(c[p>>2]|
0)){D=xb(c[w>>2]|0,(c[(c[t>>2]|0)+4>>2]|0)-(c[q>>2]|0)|0,c[x>>2]|0)|0;c[u>
;>2]=(c[u>>2]|0)+D;c[o>>2]=(c[o>>2]|0)+1;break}a[s>>0]=0;D=a[s>>0]|0;i=C;
return D|0}while(0);a[(c[t>>2]|0)+87>>0]=(c[r>>2]|0)==0;if(a[(c[t>>2]|0)+86>>0
]|0){c[(c[(c[t>>2]|0)+88>>2]|0)+20>>2]=c[o>>2];a[(c[t>>2]|0)+86>>0]=
0}c[A>>2]=(c[p>>2]|0)-(c[o>>2]|0)+1;if(((c[(c[t>>2]|0)+40>>2]|0)+(c[A>>
;2]<<2)|0)>>>0>=(c[(c[t>>2]|0)+36>>2]|0)>>>0){c[(c[t>>
;2]|0)+44>>2]=98;a[s>>0]=1;D=a[s>>0]|0;i=C;return D|0}k=c[(c[t>>2]|0)+4>>2]|0;
l=c[w>>2]|0;if((c[w>>2]|0)>0){c[y>>2]=xb(k,l,c[x>>2]|0)|0;D=_(c[(c[t>>2]|
0)+4>>2]|0,c[w>>2]|0)|0;c[z>>2]=(D|0)%(c[x>>2]|0)|0;c[w>>2]=1}else{c[y>
x3e;2]=_(xb(k,0-l|0,c[x>>2]|0)|0,-1)|0;D=_(c[(c[t>>2]|0)+4>>2]|0,0-(c[w>>2]|0)|0)|0;c[z
x3e;>2]=(D|0)%(c[x>>2]|0)|0;c[w>>2]=-1}c[v>>2]=0-(c[x>>2]|0);c[B>>2]=c[(c
[t>>2]|0)+40>>2];while(1){if((c[A>>2]|0)<=0)break;g=c[u>>2]|0;D=c[B>>2]|0
;c[B>>2]=D+4;c[D>>2]=g;c[u>>2]=(c[u>>2]|0)+(c[y>>2]|0);c[v>>2]=(c[v
x3e;>2]|0)+(c[z>>2]|0);if((c[v>>2]|0)>=0){c[v>>2]=(c[v>>2]|0)-(c[x>>
2]|0);c[u>>2]=(c[u>>2]|0)+(c[w>>2]|0)}c[A>>2]=(c[A>>2]|0)+-1}c[(c[t>>
;2]|0)+40>>2]=c[B>>2];a[s>>0]=0;D=a[s>>0]|0;i=C;return D|0}a[s>>0]=0;D=a[s>
;>0]|0;i=C;return D|0}function Ho(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;m=i;i=i+32|0;k=m+24|0;t=m+20|0;s=m+16|0;r=m+12|0;q=m+8|0;o=m+4|0;p=m;l=m+29|0;n=m+28|0;c[k>>2]=b;c[t>
x3e;2]=d;c[s>>2]=e;c[r>>2]=f;c[q>>2]=g;c[o>>2]=h;c[p>>2]=j;a[n>>0]=a
[(c[k>>2]|0)+86>>0]|0;a[l>>0]=Go(c[k>>2]|0,c[t>>2]|0,0-(c[s>>2]|0)|0
,c[r>>2]|0,0-(c[q>>2]|0)|0,0-(c[p>>2]|0)|0,0-(c[o>>2]|0)|0)|0;if(!(a[n>>0]|0)){
t=a[l>>0]|0;i=m;return t|0}if(a[(c[k>>2]|0)+86>>0]|0){t=a[l>>0]|0;i=m;return t|0}c[(c[(c
[k>>2]|0)+88>>2]|0)+20>>2]=0-(c[(c[(c[k>>2]|0)+88>>2]|0)+20>>2]|0);t
=a[l>>0]|0;i=m;return t|0}function Io(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,x=0;t=i;i=i+64|0;h=t+49|0;j=t+44|0;x=t+40|0;w=t+36|0;v=t+32|0;u=t+28|0;n=t+24|0;o=t+20|0;p=t+16|0;m=t+12
|0;r=t+8|0;q=t+4|0;l=t;k=t+48|0;c[j>>2]=b;c[x>>2]=d;c[w>>2]=e;c[v>>2]=f;c[u>>2
]=g;c[(c[j>>2]|0)+52>>2]=(c[j>>2]|0)+184;c[(c[(c[j>>2]|0)+52>>2]|0)+16>
x3e;2]=c[(c[j>>2]|0)+68>>2];c[(c[(c[j>>2]|0)+52>>2]|0)+16+4>>2]=c[(c[j>
x3e;2]|0)+72>>2];c[(c[(c[j>>2]|0)+52>>2]|0)+8>>2]=c[x>>2];c[(c[(c[j>>
;2]|0)+52>>2]|0)+8+4>>2]=c[w>>2];c[c[(c[j>>2]|0)+52>>2]>>2]=c[v>
;>2];c[(c[(c[j>>2]|0)+52>>2]|0)+4>>2]=c[u>>2];a:while(1){c[n>>2]=c[(c[(c[
j>>2]|0)+52>>2]|0)+16+4>>2];c[o>>2]=c[(c[(c[j>>2]|0)+52>>2]|0)+8+4
x3e;>2];c[p>>2]=c[(c[(c[j>>2]|0)+52>>2]|0)+4>>2];c[m>>2]=c[c[(c[j>
x3e;2]|0)+52>>2]>>2];if((c[n>>2]|0)<=(c[p>>2]|0)){c[r>>2]=c[n>>
2];c[q>>2]=c[p>>2]}else{c[r>>2]=c[p>>2];c[q>>2]=c[n>>2]}do if((c[o
x3e;>2]|0)>=(c[r>>2]|0)?(c[o>>2]|0)<=(c[q>>2]|0):0){if((c[n>>2]|0)==(c[p
x3e;>2]|0)){x=(c[j>>2]|0)+52|0;c[x>>2]=(c[x>>2]|0)+-16;break}c[l>>2]=(c[n>>
;2]|0)<(c[p>>2]|0)?1:2;if((c[(c[j>>2]|0)+100>>2]|0)!=(c[l>>2]|0)){d=c[n>>
2]|0;if((c[l>>2]|0)==1)d=((d+(c[(c[j>>2]|0)+4>>2]|0)-1&0-(c[(c[j>>2]|0)+4>>
;2]|0))-(c[n>>2]|0)|0)>=(c[(c[j>>2]|0)+8>>2]|0);else d=(d-(c[n>>2]&0-(c[(c[j
x3e;>2]|0)+4>>2]|0))|0)>=(c[(c[j>>2]|0)+8>>2]|0);a[k>>0]=d&1;if(c[(c[j>
;>2]|0)+100>>2]|0?(Fo(c[j>>2]|0,a[k>>0]|0)|0)<<24>>24|0:0){s=22;break a}if
((Eo(c[j>>2]|0,c[l>>2]|0,a[k>>0]|0)|0)<<24>>24){s=22;break a}}d=c[j>>
;2]|0;e=c[(c[j>>2]|0)+76>>2]|0;b=c[(c[j>>2]|0)+80>>2]|0;if((c[l>>2]|0)==1)if((
Ko(d,2,41,e,b)|0)<<24>>24){s=22;break a}else break;else if((Lo(d,2,41,e,b)|0)<<24>>24){s
=22;break a}else break}else s=7;while(0);if((s|0)==7){s=0;Jo(c[(c[j>>2]|0)+52>>2]|0);x=(c[j>>2]|0)+
52|0;c[x>>2]=(c[x>>2]|0)+16}if((c[(c[j>>2]|0)+52>>2]|0)>>>0<((c[j>
;>2]|0)+184|0)>>>0){s=21;break}}if((s|0)==21){c[(c[j>>2]|0)+68>>2]=c[m>>2];c[(
c[j>>2]|0)+72>>2]=c[p>>2];a[h>>0]=0;x=a[h>>0]|0;i=t;return x|0}else if((s|0)==
22){a[h>>0]=1;x=a[h>>0]|0;i=t;return x|0}return 0}function Jo(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[(c[d>>2]|0)+32>>2]=c[(c[d>>2]|0)+16>>2];c[e>
x3e;2]=c[(c[d>>2]|0)+8>>2];a=((c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c
[d>>2]|0)+24>>2]=a;c[f>>2]=a;a=((c[c[d>>2]>>2]|0)+(c[e>>2]|0)|0)/2|0
;c[(c[d>>2]|0)+8>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16>>2]=((c[f>>2]|0)+(
c[e>>2]|0)|0)/2|0;c[(c[d>>2]|0)+32+4>>2]=c[(c[d>>2]|0)+16+4>>2];c[e>>
;2]=c[(c[d>>2]|0)+8+4>>2];a=((c[(c[d>>2]|0)+16+4>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(
c[d>>2]|0)+24+4>>2]=a;c[f>>2]=a;a=((c[(c[d>>2]|0)+4>>2]|0)+(c[e>>2]|
0)|0)/2|0;c[(c[d>>2]|0)+8+4>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16+4>>2]=((c[f>
x3e;2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function Ko(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,t=0,u=0,v=0,w=0,x=0,y=0;y=i;i=i+64|0;j=y+54|0;k=y+48|0;l=y+44|0;m=y+40|0;n=y+36|0;o=y+32|0;w=y+28|0;x=y+24|0;
q=y+20|0;s=y+16|0;r=y+12|0;t=y+52|0;p=y+8|0;u=y+4|0;v=y;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>
;2]=g;c[o>>2]=h;c[p>>2]=c[(c[k>>2]|0)+52>>2];c[w>>2]=c[(c[p>>2]|0)+(
c[l>>2]<<3)+4>>2];c[x>>2]=c[(c[p>>2]|0)+4>>2];c[v>>2]=c[(c
[k>>2]|0)+40>>2];a:do if((c[x>>2]|0)>=(c[n>>2]|0)?(c[w>>2]|0)<=(c[o
x3e;>2]|0):0){c[s>>2]=c[x>>2]&0-(c[(c[k>>2]|0)+4>>2]|0);if((c[s>>2]|
0)>(c[o>>2]|0))c[s>>2]=c[o>>2];c[r>>2]=c[n>>2];if((c[w>>2]|0)
x3e;=(c[n>>2]|0)){c[q>>2]=(c[w>>2]|0)+(c[(c[k>>2]|0)+4>>2]|0)-1&0-(c[(c[k
>>2]|0)+4>>2]|0);b[t>>1]=c[w>>2]&(c[(c[k>>2]|0)+4>>2]|0)-1;c[r
x3e;>2]=c[q>>2];if(!(b[t>>1]|0)){if(a[(c[k>>2]|0)+87>>0]|0){c[v>>2]=(c[v
x3e;>2]|0)+-4;a[(c[k>>2]|0)+87>>0]=0}f=c[(c[p>>2]|0)+(c[l>>2]<<3)>
x3e;2]|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[q>>2]=(c[q>>2]|0)+(c[(c[k>
x3e;2]|0)+4>>2]|0)}}else c[q>>2]=c[n>>2];if(a[(c[k>>2]|0)+86>>0]|0){c[(c[(c[k
x3e;>2]|0)+88>>2]|0)+20>>2]=c[r>>2]>>c[c[k>>2]>>2];a[(c[k>
x3e;2]|0)+86>>0]=0}if((c[s>>2]|0)>=(c[q>>2]|0)){if(((c[v>>2]|0)+((c[s>>2]|
0)-(c[q>>2]|0)>>c[c[k>>2]>>2]<<2)+4|0)>>>0>=(c[(c[k>
x3e;2]|0)+36>>2]|0)>>>0){c[(c[k>>2]|0)+40>>2]=c[v>>2];c[(c[k>>2
]|0)+44>>2]=98;a[j>>0]=1;x=a[j>>0]|0;i=y;return x|0}c[u>>2]=c[p>>2];while(1){if
((c[p>>2]|0)>>>0<(c[u>>2]|0)>>>0)break a;if((c[q>>2]|0)>(c
[s>>2]|0))break a;a[(c[k>>2]|0)+87>>0]=0;c[x>>2]=c[(c[p>>2]|0)+4>>2];
if((c[x>>2]|0)>(c[q>>2]|0)){c[w>>2]=c[(c[p>>2]|0)+(c[l>>2]<<3)+
4>>2];if(((c[x>>2]|0)-(c[w>>2]|0)|0)>=(c[(c[k>>2]|0)+16>>2]|0)){Va[c[m>
;>2]&63](c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[l>>2]<<3);continue}else{f
=_((c[c[p>>2]>>2]|0)-(c[(c[p>>2]|0)+(c[l>>2]<<3)>>2]|0)|0,(c[q>
x3e;2]|0)-(c[w>>2]|0)|0)|0;f=(c[(c[p>>2]|0)+(c[l>>2]<<3)>>2]|0)+((f|0)/((c[x
x3e;>2]|0)-(c[w>>2]|0)|0)|0)|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[p>>2]=(
c[p>>2]|0)+(0-(c[l>>2]|0)<<3);c[q>>2]=(c[q>>2]|0)+(c[(c[k>>2]|0)+4
x3e;>2]|0);continue}}else{if((c[x>>2]|0)==(c[q>>2]|0)){a[(c[k>>2]|0)+87>>0]=1;f=c[c
[p>>2]>>2]|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[q>>2]=(c[q>>
;2]|0)+(c[(c[k>>2]|0)+4>>2]|0)}c[p>>2]=(c[p>>2]|0)+(0-(c[l>>2]|0)<<3
);continue}}}}while(0);c[(c[k>>2]|0)+40>>2]=c[v>>2];x=(c[k>>2]|0)+52|0;c[x>>2]=(
c[x>>2]|0)+(0-(c[l>>2]|0)<<3);a[j>>0]=0;x=a[j>>0]|0;i=y;return x|0}function Lo
(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;q=i;i=i+32|0;h=q+20|0;j=q+16|0;k=q+12|0;l=q+8|
0;m=q+4|0;n=q;p=q+25|0;o=q+24|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2
]=g;c[n>>2]=c[(c[h>>2]|0)+52>>2];c[(c[n>>2]|0)+4>>2]=0-(c[(c[n>>2]|0
)+4>>2]|0);c[(c[n>>2]|0)+8+4>>2]=0-(c[(c[n>>2]|0)+8+4>>2]|0);c[(c[n>>
;2]|0)+16+4>>2]=0-(c[(c[n>>2]|0)+16+4>>2]|0);if((c[j>>2]|0)>2)c[(c[n>>2]|
0)+24+4>>2]=0-(c[(c[n>>2]|0)+24+4>>2]|0);a[o>>0]=a[(c[h>>2]|0)+86>>0
]|0;a[p>>0]=Ko(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,0-(c[m>>2]|0)|0,0-(c[l>>
;2]|0)|0)|0;if(a[o>>0]|0?(a[(c[h>>2]|0)+86>>0]|0)==0:0)c[(c[(c[h>>2]|0)+88>>2]|
0)+20>>2]=0-(c[(c[(c[h>>2]|0)+88>>2]|0)+20>>2]|0);c[(c[n>>2]|0)+4>>2
]=0-(c[(c[n>>2]|0)+4>>2]|0);i=q;return a[p>>0]|0}function Mo(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;y=i;i=i+80|0;k=y+69|
0;l=y+64|0;E=y+60|0;D=y+56|0;C=y+52|0;B=y+48|0;A=y+44|0;z=y+40|0;p=y+36|0;q=y+32|0;r=y+28|0;s=y+24|0;o=y+20|0;v=y+16|0;t=y+12|0;
w=y+8|0;u=y+4|0;n=y;m=y+68|0;c[l>>2]=b;c[E>>2]=d;c[D>>2]=e;c[C>>2]=f;c[B>>2]=g
;c[A>>2]=h;c[z>>2]=j;c[(c[l>>2]|0)+52>>2]=(c[l>>2]|0)+184;c[(c[(c[l>>
;2]|0)+52>>2]|0)+24>>2]=c[(c[l>>2]|0)+68>>2];c[(c[(c[l>>2]|0)+52>>2]|
0)+24+4>>2]=c[(c[l>>2]|0)+72>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+16>>2]=c
[E>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+16+4>>2]=c[D>>2];c[(c[(c[l>>2]|0)+
52>>2]|0)+8>>2]=c[C>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+8+4>>2]=c[B>
x3e;2];c[c[(c[l>>2]|0)+52>>2]>>2]=c[A>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+
4>>2]=c[z>>2];a:while(1){c[p>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+24+4>>2];
c[q>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+16+4>>2];c[r>>2]=c[(c[(c[l>>2]|0)+
52>>2]|0)+8+4>>2];c[s>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+4>>2];c[o>
x3e;2]=c[c[(c[l>>2]|0)+52>>2]>>2];if((c[p>>2]|0)<=(c[s>>2]|0)){c[v>
x3e;2]=c[p>>2];c[t>>2]=c[s>>2]}else{c[v>>2]=c[s>>2];c[t>>2]=c[p>
;>2]}if((c[q>>2]|0)<=(c[r>>2]|0)){c[w>>2]=c[q>>2];c[u>>2]=c[r>
x3e;2]}else{c[w>>2]=c[r>>2];c[u>>2]=c[q>>2]}do if((c[w>>2]|0)>=(c[v>
x3e;2]|0)?(c[u>>2]|0)<=(c[t>>2]|0):0){if((c[p>>2]|0)==(c[s>>2]|0)){E=(c[l>>
;2]|0)+52|0;c[E>>2]=(c[E>>2]|0)+-24;break}c[n>>2]=(c[p>>2]|0)<=(c[s>>2]|0
)?1:2;if((c[(c[l>>2]|0)+100>>2]|0)!=(c[n>>2]|0)){d=c[p>>2]|0;if((c[n>>2]|0)==1
)d=((d+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[l>>2]|0)+4>>2]|0))-(c[p>>2]|0)|0
)>=(c[(c[l>>2]|0)+8>>2]|0);else d=(d-(c[p>>2]&0-(c[(c[l>>2]|0)+4>>2]|
0))|0)>=(c[(c[l>>2]|0)+8>>2]|0);a[m>>0]=d&1;if(c[(c[l>>2]|0)+100>>2]|
0?(Fo(c[l>>2]|0,a[m>>0]|0)|0)<<24>>24|0:0){x=25;break a}if((Eo(c[l>>2]|0,c[n
x3e;>2]|0,a[m>>0]|0)|0)<<24>>24){x=25;break a}}d=c[l>>2]|0;f=c[(c[l>>2]|0
)+76>>2]|0;e=c[(c[l>>2]|0)+80>>2]|0;if((c[n>>2]|0)==1)if((Ko(d,3,42,f,e)|0)<<24
>>24){x=25;break a}else break;else if((Lo(d,3,42,f,e)|0)<<24>>24){x=25;break a}else break}else x=10
;while(0);if((x|0)==10){x=0;No(c[(c[l>>2]|0)+52>>2]|0);E=(c[l>>2]|0)+52|0;c[E>>2]=(c[E
x3e;>2]|0)+24}if((c[(c[l>>2]|0)+52>>2]|0)>>>0<((c[l>>2]|0)+184|0)>
x3e;>0){x=24;break}}if((x|0)==24){c[(c[l>>2]|0)+68>>2]=c[o>>2];c[(c[l>>2]|0)+72>
;>2]=c[s>>2];a[k>>0]=0;E=a[k>>0]|0;i=y;return E|0}else if((x|0)==25){a[k>>0]=1;E=a[
k>>0]|0;i=y;return E|0}return 0}function No(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;f=b+12|0;e=b+8|
0;g=b+4|0;h=b;c[d>>2]=a;c[(c[d>>2]|0)+48>>2]=c[(c[d>>2]|0)+24>>2];c[g>>
;2]=c[(c[d>>2]|0)+8>>2];c[h>>2]=c[(c[d>>2]|0)+16>>2];a=(c[c[d>>2]>
;>2]|0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+8>>2]=a;a=(c[(c[d>
x3e;2]|0)+24>>2]|0)+(c[h>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>>2]|0)+40>>2]=
a;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1>>1;a=(c[f>>2]|0)+(c[g>>2]|0)+1
x3e;>1;c[f>>2]=a;c[(c[d>>2]|0)+16>>2]=a;a=(c[e>>2]|0)+(c[g>>2]|0)+1>
x3e;1;c[e>>2]=a;c[(c[d>>2]|0)+32>>2]=a;c[(c[d>>2]|0)+24>>2]=(c[f>>2]|
0)+(c[e>>2]|0)+1>>1;c[(c[d>>2]|0)+48+4>>2]=c[(c[d>>2]|0)+24+4>>2];c[
g>>2]=c[(c[d>>2]|0)+8+4>>2];c[h>>2]=c[(c[d>>2]|0)+16+4>>2];a=(c[(c[d
>>2]|0)+4>>2]|0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+8+4>
x3e;2]=a;a=(c[(c[d>>2]|0)+24+4>>2]|0)+(c[h>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>
x3e;2]|0)+40+4>>2]=a;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1>>1;a=(c[f>>2]|
0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+16+4>>2]=a;a=(c[e>>2]|0)+(
c[g>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>>2]|0)+32+4>>2]=a;c[(c[d>>2]|0)+24+
4>>2]=(c[f>>2]|0)+(c[e>>2]|0)+1>>1;i=b;return}function Oo(d){d=d|0;var f=0,g=0,h=0,j=0,k
=0,l=0,m=0;m=i;i=i+32|0;f=m+18|0;g=m+12|0;h=m+8|0;l=m+4|0;j=m+16|0;k=m;c[g>>2]=d;b[j>>1]=b[(c[g>>2
]|0)+84>>1]|0;c[k>>2]=c[(c[g>>2]|0)+92>>2];a:do if((e[j>>1]|0|0)>1&(
c[k>>2]|0)!=0){while(1){if((e[j>>1]|0|0)<=0)break a;d=c[k>>2]|0;if((e[j>>1]|0|0)>
;1)c[(c[k>>2]|0)+4>>2]=(c[d+8>>2]|0)+(c[(c[k>>2]|0)+16>>2]<<2);else
c[d+4>>2]=0;d=c[(c[k>>2]|0)+20>>2]|0;if(c[(c[k>>2]|0)+12>>2]&8|0){c[h>
;>2]=d;c[l>>2]=(c[(c[k>>2]|0)+20>>2]|0)+(c[(c[k>>2]|0)+16>>2]|0)-1}else{c
[h>>2]=d-(c[(c[k>>2]|0)+16>>2]|0)+1;c[l>>2]=c[(c[k>>2]|0)+20>>2];c[(
c[k>>2]|0)+20>>2]=c[h>>2];d=(c[k>>2]|0)+8|0;c[d>>2]=(c[d>>2]|0)+((c[(
c[k>>2]|0)+16>>2]|0)-1<<2)}if((Po(c[g>>2]|0,c[h>>2]|0)|0)<<24>
x3e;24|0)break;if((Po(c[g>>2]|0,(c[l>>2]|0)+1|0)|0)<<24>>24|0)break;c[k>>2]=c[(
c[k>>2]|0)+4>>2];b[j>>1]=(b[j>>1]|0)+-1<<16>>16}a[f>>0]=1;
l=a[f>>0]|0;i=m;return l|0}else c[(c[g>>2]|0)+92>>2]=0;while(0);a[f>>0]=0;l=a[f>>
;0]|0;i=m;return l|0}function Po(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;h=l+20|0;j=l+16|0;k=l+12|0;g=l+8|
0;f=l+4|0;e=l;c[j>>2]=b;c[k>>2]=d;c[e>>2]=(c[(c[j>>2]|0)+48>>2]|0)-1;c[g>
x3e;2]=(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j>>2]|0)+48>>2]|0)<<2);while(1){if((c
[e>>2]|0)>=0)d=(c[k>>2]|0)<(c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]|
0);else d=0;b=c[e>>2]|0;if(!d)break;c[e>>2]=b+-1}if((b|0)>=0?((c[e>>2]|0)>=0?(c[k>
x3e;2]|0)>(c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]|0):0):0)do{c[f>>2]=c[(c[g>
x3e;2]|0)+(c[e>>2]<<2)>>2];c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]=
c[k>>2];c[k>>2]=c[f>>2];c[e>>2]=(c[e>>2]|0)+-1}while((c[e>>2]|0)>
;=0);do if((c[e>>2]|0)<0){b=(c[j>>2]|0)+36|0;c[b>>2]=(c[b>>2]|0)+-4;b=c[j>>
;2]|0;if((c[(c[j>>2]|0)+36>>2]|0)>>>0>(c[(c[j>>2]|0)+40>>2]|0)>
x3e;>0){g=b+48|0;c[g>>2]=(c[g>>2]|0)+1;c[(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j>
x3e;2]|0)+48>>2]|0)<<2)>>2]=c[k>>2];break}c[b+44>>2]=98;a[h>>0]=1;k=
a[h>>0]|0;i=l;return k|0}while(0);a[h>>0]=0;k=a[h>>0]|0;i=l;return k|0}function Qo(d){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;D=i;i=i+80|0;h=D+72|0;j=D+52|0
;z=D+70|0;A=D+68|0;B=D+66|0;k=D+48|0;n=D+44|0;l=D+40|0;m=D+36|0;g=D+64|0;u=D+62|0;f=D+60|0;e=D+58|0;r=D+56|0;w=D+32|0;x=D+28|0;y
=D+24|0;s=D+20|0;t=D+16|0;v=D+12|0;o=D+8|0;p=D+4|0;q=D;c[j>>2]=d;Ro(v);Ro(o);Ro(p);c[k>>2]=c[(c[j>>
;2]|0)+92>>2];b[u>>1]=c[(c[j>>2]|0)+76>>2]>>c[c[j>>2]>>2];
b[g>>1]=c[(c[j>>2]|0)+80>>2]>>c[c[j>>2]>>2];while(1){if(!(c[k>
x3e;2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];b[e>>1]=c[(c[k>>2]|0)+20>>
;2];b[f>>1]=(c[(c[k>>2]|0)+20>>2]|0)+(c[(c[k>>2]|0)+16>>2]|0)-1;if((b[g>
x3e;1]|0)>(b[e>>1]|0))b[g>>1]=b[e>>1]|0;if((b[u>>1]|0)<(b[f>>1]|0))b
[u>>1]=b[f>>1]|0;c[c[k>>2]>>2]=0;So(v,c[k>>2]|0);c[k>>2]=c[n>
x3e;2]}e=c[j>>2]|0;if(!(c[(c[j>>2]|0)+48>>2]|0)){c[e+44>>2]=20;a[h>>0]=1;C=a[h
>>0]|0;i=D;return C|0}Ua[c[e+164>>2]&31](c[j>>2]|0,g,u);c[k>>2]=c[v>>2];while
(1){if(!(c[k>>2]|0))break;c[(c[k>>2]|0)+24>>2]=(c[(c[k>>2]|0)+20>>2]|0)-(b[g
x3e;>1]|0)&65535;c[k>>2]=c[(c[k>>2]|0)+4>>2]}b[z>>1]=b[g>>1]|0;b[B
x3e;>1]=0;if((c[(c[j>>2]|0)+48>>2]|0)>0?(c[(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j
>>2]|0)+48>>2]|0)<<2)>>2]|0)==(b[g>>1]|0):0){g=(c[j>>2]|0)+48|0;c[g
x3e;>2]=(c[g>>2]|0)+-1}a:while(1){if((c[(c[j>>2]|0)+48>>2]|0)<=0)break;c[k>>2]=
c[v>>2];while(1){if(!(c[k>>2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];g=(c[k>
;>2]|0)+24|0;c[g>>2]=(c[g>>2]|0)-(b[B>>1]|0);do if(!(c[(c[k>>2]|0)+24>>2]|
0)){To(v,c[k>>2]|0);e=c[k>>2]|0;if(c[(c[k>>2]|0)+12>>2]&8|0){So(o,e);break}else{So(
p,e);break}}while(0);c[k>>2]=c[n>>2]}Uo(o);Uo(p);d=(c[j>>2]|0)+48|0;g=c[d>>2]|0;c[d>
;>2]=g+-1;b[A>>1]=c[(c[(c[j>>2]|0)+32>>2]|0)+(0-g<<2)>>2];b[B>>
1]=(b[A>>1]|0)-(b[z>>1]|0);while(1){if((b[z>>1]|0)>=(b[A>>1]|0))break;b[r>>
;1]=0;c[l>>2]=c[o>>2];c[m>>2]=c[p>>2];while(1){if(!(c[l>>2]|0))break;c[w>
x3e;2]=c[c[l>>2]>>2];c[x>>2]=c[c[m>>2]>>2];if((c[w>>2]|0)>(c[x
x3e;>2]|0)){c[y>>2]=c[w>>2];c[w>>2]=c[x>>2];c[x>>2]=c[y>>2]}c[s
>>2]=c[w>>2]&0-(c[(c[j>>2]|0)+4>>2]|0);c[t>>2]=(c[x>>2]|0)+(c[(
c[j>>2]|0)+4>>2]|0)-1&0-(c[(c[j>>2]|0)+4>>2]|0);do if((((c[x>>2]|0)-(c[w
x3e;>2]|0)|0)<=(c[(c[j>>2]|0)+4>>2]|0)?(c[s>>2]|0)!=(c[w>>2]|0):0)?(c[t>
x3e;2]|0)!=(c[x>>2]|0):0){if((c[s>>2]|0)<=(c[t>>2]|0)?(c[t>>2]|0)!=((c[s>>
;2]|0)+(c[(c[j>>2]|0)+4>>2]|0)|0):0){C=37;break}c[q>>2]=c[(c[l>>2]|0)+12>>2]
x26;7;if((c[q>>2]|0)!=2){c[c[l>>2]>>2]=c[w>>2];c[c[m>>2]>>2]=c[x>
;>2];c[(c[l>>2]|0)+24>>2]=1;b[r>>1]=(b[r>>1]|0)+1<<16>>16}}else
C=37;while(0);if((C|0)==37){C=0;Xa[c[(c[j>>2]|0)+168>>2]&7](c[j>>2]|0,b[z>>1]|0,c[
w>>2]|0,c[x>>2]|0,c[l>>2]|0,c[m>>2]|0)}c[l>>2]=c[(c[l>>2]|0)+4>
x3e;2];c[m>>2]=c[(c[m>>2]|0)+4>>2]}b:do if((b[r>>1]|0)>0){c[l>>2]=c[o>
;>2];c[m>>2]=c[p>>2];while(1){if(!(c[l>>2]|0))break b;if(c[(c[l>>2]|0)+24>>
;2]|0){c[(c[l>>2]|0)+24>>2]=0;Xa[c[(c[j>>2]|0)+172>>2]&7](c[j>>2]|0,b[z
x3e;>1]|0,c[c[l>>2]>>2]|0,c[c[m>>2]>>2]|0,c[l>>2]|0,c[m>>2]|0)}
c[l>>2]=c[(c[l>>2]|0)+4>>2];c[m>>2]=c[(c[m>>2]|0)+4>>2]}}while(0);Va
[c[(c[j>>2]|0)+176>>2]&63](c[j>>2]|0);b[z>>1]=(b[z>>1]|0)+1<<16
>>16;if((b[z>>1]|0)>=(b[A>>1]|0))continue;Uo(o);Uo(p)}c[k>>2]=c[o>>2];while
(1){if(!(c[k>>2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];if(!(c[(c[k>>2]|0)+16>
;>2]|0))To(o,c[k>>2]|0);c[k>>2]=c[n>>2]}c[k>>2]=c[p>>2];while(1){if(!(c[k
>>2]|0))continue a;c[n>>2]=c[(c[k>>2]|0)+4>>2];if(!(c[(c[k>>2]|0)+16>>
;2]|0))To(p,c[k>>2]|0);c[k>>2]=c[n>>2]}}while(1){if((b[z>>1]|0)>(b[u>>1]|
0))break;Va[c[(c[j>>2]|0)+176>>2]&63](c[j>>2]|0);b[z>>1]=(b[z>>1]|0)+1<
;<16>>16}a[h>>0]=0;C=a[h>>0]|0;i=D;return C|0}function Ro(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]=0;i=b;return}function So(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h
=i;i=i+32|0;j=h+16|0;d=h+12|0;f=h+8|0;e=h+4|0;g=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=c[j>>2];c[
e>>2]=c[c[f>>2]>>2];c[g>>2]=c[c[d>>2]>>2];while(1){if(!(c[e>>
;2]|0))break;if((c[g>>2]|0)<(c[c[e>>2]>>2]|0))break;c[f>>2]=(c[e>>2]|0)+4
;c[e>>2]=c[c[f>>2]>>2]}c[(c[d>>2]|0)+4>>2]=c[e>>2];c[c[f>>
2]>>2]=c[d>>2];i=h;return}function To(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;j=h+12|0;d=h
+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=c[j>>2];c[e>>2]=c[c[f>>
2]>>2];while(1){if(!(c[e>>2]|0)){g=6;break}a=(c[e>>2]|0)+4|0;if((c[e>>2]|0)==(c[d>
x3e;2]|0))break;c[f>>2]=a;c[e>>2]=c[c[f>>2]>>2]}if((g|0)==6){i=h;return}c[c[f>>
;2]>>2]=c[a>>2];i=h;return}function Uo(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;f=g+8|0;d=g+4|
0;e=g;c[b>>2]=a;c[d>>2]=c[c[b>>2]>>2];while(1){if(!(c[d>>2]|0))break;c[c[d>
;>2]>>2]=c[c[(c[d>>2]|0)+8>>2]>>2];a=(c[d>>2]|0)+8|0;c[a>>2]=(c
[a>>2]|0)+((c[(c[d>>2]|0)+12>>2]&8|0?1:-1)<<2);a=(c[d>>2]|0)+16|0;c[a>
;>2]=(c[a>>2]|0)+-1;c[d>>2]=c[(c[d>>2]|0)+4>>2]}c[f>>2]=c[b>>2];
c[d>>2]=c[c[f>>2]>>2];if(!(c[d>>2]|0)){i=g;return}c[e>>2]=c[(c[d>>2]|
0)+4>>2];while(1){if(!(c[e>>2]|0)){b=11;break}if((c[c[d>>2]>>2]|0)<=(c[c[e>>
;2]>>2]|0)){c[f>>2]=(c[d>>2]|0)+4;c[d>>2]=c[c[f>>2]>>2];if(!(c[d>
;>2]|0)){b=11;break}}else{c[c[f>>2]>>2]=c[e>>2];c[(c[d>>2]|0)+4>>2]=c[(c[
e>>2]|0)+4>>2];c[(c[e>>2]|0)+4>>2]=c[d>>2];c[f>>2]=c[b>>2];
c[d>>2]=c[c[f>>2]>>2]}c[e>>2]=c[(c[d>>2]|0)+4>>2]}if((b|0)==11){i=g;
return}}function Vo(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>
x3e;2]=b;c[f>>2]=d;c[h>>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>
x3e;2];i=e;return}function Wo(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;u=i;i=i+48|0;l=u+32|0;m=u+36|0;n=u+28|0;o=u+24|0;w=u+20|0;v=u+16|0;q=u+12|0;r=u+8|0;p=u+4|0;s=u+38|0;t=u;c[l>>2]=e;
b[m>>1]=f;c[n>>2]=g;c[o>>2]=h;c[w>>2]=j;c[v>>2]=k;c[w>>2]=c[w>
x3e;2];c[v>>2]=c[v>>2];if(((c[o>>2]|0)-(c[n>>2]|0)|0)>=(c[(c[l>>2]|0)+4
x3e;>2]|0)){i=u;return}c[q>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[l
>>2]|0)+4>>2]|0);c[r>>2]=c[o>>2]&0-(c[(c[l>>2]|0)+4>>2]|0);if((
c[q>>2]|0)!=(c[r>>2]|0)){i=u;return}c[p>>2]=(c[(c[l>>2]|0)+60>>2]|0)+(b[m>
;>1]>>3);a[s>>0]=128>>(b[m>>1]&7);c[q>>2]=c[q>>2]>>
;c[c[l>>2]>>2];if((c[q>>2]|0)<0){i=u;return}if((c[q>>2]|0)>=(c[(c[l>>
;2]|0)+104>>2]|0)){i=u;return}c[t>>2]=(c[p>>2]|0)+(0-(_(c[q>>2]|0,c[(c[l>>2]|0
)+104+8>>2]|0)|0));if((c[(c[l>>2]|0)+104+8>>2]|0)>0){w=_((c[(c[l>>2]|0)+104>
x3e;2]|0)-1|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[t>>2]=(c[t>>2]|0)+w}w=c[t>>2]|0;a
[w>>0]=d[w>>0]|d[s>>0];i=u;return}function Xo(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;x=i;i=i+48|0;l=x+36|0;m=x+40|0;n=x+32|0;o=x+28|0;p=x+24|0;q=x+20|0;t=x+16|0
;u=x+12|0;w=x+8|0;r=x+4|0;v=x+42|0;s=x;c[l>>2]=e;b[m>>1]=f;c[n>>2]=g;c[o>>2]=h;c[p>
x3e;2]=j;c[q>>2]=k;c[t>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[
l>>2]|0)+4>>2]|0);c[u>>2]=c[o>>2]&0-(c[(c[l>>2]|0)+4>>2]|0);c[w
>>2]=c[t>>2];if((c[t>>2]|0)>(c[u>>2]|0)){c[s>>2]=c[(c[p>>2]|0)+
12>>2]&7;if((c[t>>2]|0)!=((c[u>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)|0)){i=x;return
}a:do switch(c[s>>2]|0){case 0:{c[w>>2]=c[u>>2];break}case 4:{c[w>>2]=(((c[n>>
2]|0)+(c[o>>2]|0)-1|0)/2|0)+(c[(c[l>>2]|0)+8>>2]|0)&0-(c[(c[l>>2]|0)+4>>2
]|0);break}case 5:case 1:{if((c[(c[p>>2]|0)+28>>2]|0)==(c[q>>2]|0)?(c[(c[p>>2]|0)+16>
;>2]|0)<=0:0){if(!(c[(c[p>>2]|0)+12>>2]&16)){i=x;return}if(((c[o>>2]|0)-(c[n>
x3e;2]|0)|0)<(c[(c[l>>2]|0)+8>>2]|0)){i=x;return}}if((c[(c[q>>2]|0)+28>>2]|0)==(c[p
>>2]|0)?(c[(c[p>>2]|0)+20>>2]|0)==(b[m>>1]|0):0){if(!(c[(c[p>>2]|0)+12>
x3e;2]&32)){i=x;return}if(((c[o>>2]|0)-(c[n>>2]|0)|0)<(c[(c[l>>2]|0)+8>>2]|0)){
i=x;return}}if((c[s>>2]|0)==1){c[w>>2]=c[u>>2];break a}else{c[w>>2]=(((c[n>>2]|
0)+(c[o>>2]|0)-1|0)/2|0)+(c[(c[l>>2]|0)+8>>2]|0)&0-(c[(c[l>>2]|0)+4>>2]|0
);break a}}default:{i=x;return}}while(0);c[t>>2]=(c[w>>2]|0)==(c[t>>2]|0)?c[u>>2]|0:c[t
x3e;>2]|0;c[t>>2]=c[t>>2]>>c[c[l>>2]>>2];c[r>>2]=(c[(c[l>
x3e;2]|0)+60>>2]|0)+(b[m>>1]>>3);a[v>>0]=128>>(b[m>>1]&7);f=_(c
[t>>2]|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[r>>2]=(c[r>>2]|0)+(0-f);if((c[(c[l>
;>2]|0)+104+8>>2]|0)>0){f=_((c[(c[l>>2]|0)+104>>2]|0)-1|0,c[(c[l>>2]|0)+104+8
x3e;>2]|0)|0;c[r>>2]=(c[r>>2]|0)+f}if(((c[t>>2]|0)>=0?(c[t>>2]|0)<(c[(c[l
>>2]|0)+104>>2]|0):0)?d[c[r>>2]>>0]&d[v>>0]|0:0){i=x;return}}c[r>>
;2]=(c[(c[l>>2]|0)+60>>2]|0)+(b[m>>1]>>3);a[v>>0]=128>>(b[m>>
;1]&7);c[t>>2]=c[w>>2]>>c[c[l>>2]>>2];if((c[t>>2]|0)<0){i=
x;return}if((c[t>>2]|0)>=(c[(c[l>>2]|0)+104>>2]|0)){i=x;return}f=_(c[t>>2]|0,c[(c[l
>>2]|0)+104+8>>2]|0)|0;c[r>>2]=(c[r>>2]|0)+(0-f);if((c[(c[l>>2]|0)+104+8>
x3e;2]|0)>0){f=_((c[(c[l>>2]|0)+104>>2]|0)-1|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[r>
;>2]=(c[r>>2]|0)+f}f=c[r>>2]|0;a[f>>0]=d[f>>0]|d[v>>0];i=x;return}function
Yo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return}function Zo(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]|0)+8>>2];Fb(c[e
x3e;>2]|0,c[d>>2]|0);c[d>>2]=0;i=b;return}function _o(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)+4>>2];Ua[c[(c[(c[(c[e>>2]|0)+20>>2]|
0)+56>>2]|0)+8>>2]&31](c[(c[e>>2]|0)+60>>2]|0,c[(c[d>>2]|0)+172>>
;2]|0,c[(c[d>>2]|0)+176>>2]|0);i=b;return 0}function $o(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;w=i;i=i+128|0;j=w+112|0;k=w+108|0;l=w+104|0;m=w+100|0;h=w+96|0;p=w+92|0;s=w+88|0;o=
w+72|0;v=w+64|0;q=w+60|0;u=w+56|0;n=w+52|0;r=w+48|0;t=w;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[h>>
;2]=g;if((c[(c[l>>2]|0)+72>>2]|0)==(c[(c[k>>2]|0)+24>>2]|0)){f=c[(c[k>>2]|0)+20
>>2]|0;if((c[m>>2]|0)!=2){if((f|0)==4028){c[j>>2]=19;v=c[j>>2]|0;i=w;return v|0}}else if
((f|0)==4088){c[j>>2]=19;v=c[j>>2]|0;i=w;return v|0}c[s>>2]=(c[l>>2]|0)+108;if(c[h>
x3e;2]|0)Nb(c[s>>2]|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0);_d(c[s>>
;2]|0,o);c[o>>2]=c[o>>2]&-64;c[o+4>>2]=c[o+4>>2]&-64;c[o+8>>2]=(c[o+
8>>2]|0)+63&-64;c[o+12>>2]=(c[o+12>>2]|0)+63&-64;c[v>>2]=(c[o+8>>2]|
0)-(c[o>>2]|0)>>6;c[q>>2]=(c[o+12>>2]|0)-(c[o+4>>2]|0)>>6;c[n>
x3e;2]=(c[l>>2]|0)+76;c[r>>2]=c[(c[k>>2]|0)+8>>2];if(c[(c[(c[l>>2]|0)+156>
;>2]|0)+4>>2]&1|0){Fb(c[r>>2]|0,c[(c[n>>2]|0)+12>>2]|0);c[(c[n>>2]|0
)+12>>2]=0;h=(c[(c[l>>2]|0)+156>>2]|0)+4|0;c[h>>2]=c[h>>2]&-2}f=c[v>
x3e;2]|0;if(c[m>>2]&2|0){c[u>>2]=(f+15|0)>>>4<<1;a[(c[n>>2]|0)+18>
;>0]=1}else{c[u>>2]=f+3&-4;a[(c[n>>2]|0)+18>>0]=2;b[(c[n>>2]|0)+16>>
1]=256}c[(c[n>>2]|0)+4>>2]=c[v>>2];c[c[n>>2]>>2]=c[q>>2];c[(c[n>
;>2]|0)+8>>2]=c[u>>2];v=hc(c[r>>2]|0,c[q>>2]|0,0,c[u>>2]|0,0,p)|0;c[(c[n
x3e;>2]|0)+12>>2]=v;if(!(c[p>>2]|0)){v=(c[(c[l>>2]|0)+156>>2]|0)+4|0;c[v>>
;2]=c[v>>2]|1;Nb(c[s>>2]|0,0-(c[o>>2]|0)|0,0-(c[o+4>>2]|0)|0);c[t>>2]=c[n>
;>2];c[t+4>>2]=c[s>>2];c[t+8>>2]=0;if((a[(c[n>>2]|0)+18>>0]|0)==2){v=t+8|
0;c[v>>2]=c[v>>2]|1}c[p>>2]=Ya[c[(c[k>>2]|0)+64>>2]&127](c[(c[k>>
;2]|0)+60>>2]|0,t)|0;Nb(c[s>>2]|0,c[o>>2]|0,c[o+4>>2]|0);if(!(c[p>>2]|0)){c[(c
[l>>2]|0)+72>>2]=1651078259;c[(c[l>>2]|0)+100>>2]=c[o>>2]>>6;c[(c[l
x3e;>2]|0)+104>>2]=c[o+12>>2]>>6}}}else c[p>>2]=6;c[j>>2]=c[p>>
2];v=c[j>>2]|0;i=w;return v|0}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,l=0;k=i;i=i+32|0;l=
k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[l>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>
;2]=0;if((c[(c[f>>2]|0)+72>>2]|0)!=(c[(c[l>>2]|0)+24>>2]|0)){c[j>>2]=6;l=c[j
x3e;>2]|0;i=k;return l|0}if(c[g>>2]|0)Kb((c[f>>2]|0)+108|0,c[g>>2]|0);if(!(c[h>>2]|
0)){l=c[j>>2]|0;i=k;return l|0}Nb((c[f>>2]|0)+108|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|
0)+4>>2]|0);l=c[j>>2]|0;i=k;return l|0}function bp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0
;h=g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[e>>2]=b;c[f>>2]=d;b=c[f>>2]|0;c[b>>2]=0;c[b+4
>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;if((c[(c[e>>2]|0)+72>>2]|0)!=(c[(c[h>>
;2]|0)+24>>2]|0)){i=g;return}_d((c[e>>2]|0)+108|0,c[f>>2]|0);i=g;return}function cp(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=Oa
[c[(c[(c[(c[h>>2]|0)+20>>2]|0)+56>>2]|0)+12>>2]&63](c[(c[h>>2]|0)+60>
;>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function dp(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[c[e>>2]>>
2]=0;c[g>>2]=bc(c[d>>2]|0,20,f)|0;if(c[f>>2]|0){g=c[f>>2]|0;i=h;return g|0}c[(c[g>
x3e;2]|0)+12>>2]=c[d>>2];c[c[e>>2]>>2]=c[g>>2];g=c[f>>2]|0;i=h;return
g|0}function ep(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;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>
;>2]=a;c[e>>2]=b;c[f>>2]=d;c[g>>2]=c[k>>2];if(!(c[k>>2]|0)){i=j;return}if
((c[e>>2]|0)!=0&(c[f>>2]|0)>=3476){c[h>>2]=c[e>>2];c[(c[g>>2]|0)+16
x3e;>2]=c[h>>2];c[c[g>>2]>>2]=(c[e>>2]|0)+1440;c[(c[g>>2]|0)+4>>
;2]=(c[e>>2]|0)+(c[f>>2]|0)-(c[c[g>>2]>>2]|0)&-16;c[(c[g>>2]|0)+8>
x3e;2]=((c[(c[g>>2]|0)+4>>2]|0)>>>0)/128|0;i=j;return}else{c[c[g>>2]>>2]=
0;c[(c[g>>2]|0)+4>>2]=0;c[(c[g>>2]|0)+16>>2]=0;i=j;return}}function fp(a,d){a=a|0;d=d|0;
var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[f>>2]=a;c[g>>2
]=d;c[h>>2]=c[(c[g>>2]|0)+4>>2];c[j>>2]=c[c[g>>2]>>2];if((c[f>
x3e;2]|0?c[c[f>>2]>>2]|0:0)?c[(c[f>>2]|0)+4>>2]|0:0){if(!(c[h>>2]|0)){c[e>
;>2]=20;k=c[e>>2]|0;i=l;return k|0}if(b[(c[h>>2]|0)+2>>1]|0?(b[c[h>>2]>>1
]|0)>0:0){if(c[(c[h>>2]|0)+12>>2]|0?c[(c[h>>2]|0)+4>>2]|0:0){if((b[(c[h>>
2]|0)+2>>1]|0)!=((b[(c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>>1]|0)-1<<1
)>>1]|0)+1|0)){c[e>>2]=20;k=c[e>>2]|0;i=l;return k|0}c[k>>2]=c[(c[f>>2]|0)+16
x3e;>2];do if(!(c[(c[g>>2]|0)+8>>2]&2)){if(!(c[j>>2]|0)){c[e>>2]=6;k=c[e>
x3e;2]|0;i=l;return k|0}if(c[(c[j>>2]|0)+4>>2]|0?c[c[j>>2]>>2]|0:0){if(c[(c[j>>
;2]|0)+12>>2]|0)break;c[e>>2]=6;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=0;k=c[e>>2]|
0;i=l;return k|0}while(0);if(!(c[(c[g>>2]|0)+8>>2]&1)){c[e>>2]=19;k=c[e>>2]|0;i=l;return
k|0}do if(c[(c[g>>2]|0)+8>>2]&2|0){d=(c[k>>2]|0)+1024|0;if(c[(c[g>>2]|0)+8>
x3e;2]&4|0){a=(c[g>>2]|0)+32|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8
x3e;>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];break}else{c[d>>2]=-32768;c[(c[k>>
;2]|0)+1024+4>>2]=-32768;c[(c[k>>2]|0)+1024+8>>2]=32767;c[(c[k>>2]|0)+1024+12>>
;2]=32767;break}}else{c[(c[k>>2]|0)+1024>>2]=0;c[(c[k>>2]|0)+1024+4>>2]=0;c[(c[k>
x3e;2]|0)+1024+8>>2]=c[(c[j>>2]|0)+4>>2];c[(c[k>>2]|0)+1024+12>>2]=c[c[j>
x3e;2]>>2]}while(0);gp(c[k>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|
0);a=(c[k>>2]|0)+980|0;h=c[h>>2]|0;c[a>>2]=c[h>>2];c[a+4>>2]=c[h+4>>
2];c[a+8>>2]=c[h+8>>2];c[a+12>>2]=c[h+12>>2];c[a+16>>2]=c[h+16>>2];c
[(c[k>>2]|0)+52>>2]=0;c[(c[k>>2]|0)+40>>2]=1;c[(c[k>>2]|0)+1248>>2]=
c[(c[f>>2]|0)+8>>2];c[(c[k>>2]|0)+1232>>2]=0;if(c[(c[g>>2]|0)+8>>2]
x26;2|0){c[(c[k>>2]|0)+1236>>2]=c[(c[g>>2]|0)+12>>2];c[(c[k>>2]|0)+1240>
x3e;2]=c[(c[g>>2]|0)+28>>2]}else{h=(c[k>>2]|0)+1e3|0;j=c[j>>2]|0;c[h>>2]=c[j
x3e;>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[h+12>>2]=c[j+12>
x3e;2];c[h+16>>2]=c[j+16>>2];c[h+20>>2]=c[j+20>>2];c[(c[k>>2]|0)+1236>>
;2]=13;c[(c[k>>2]|0)+1240>>2]=c[k>>2]}c[e>>2]=ip(c[k>>2]|0)|0;k=c[e>>
;2]|0;i=l;return k|0}c[e>>2]=20;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=0;k=c[e>>2]|0;i=l;return
k|0}c[e>>2]=6;k=c[e>>2]|0;i=l;return k|0}function gp(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[(c[f>>2]|0)+1412>>2]=c[
g>>2];c[(c[f>>2]|0)+1416>>2]=c[h>>2];c[(c[f>>2]|0)+1420>>2]=c[g>
;>2];c[(c[f>>2]|0)+44>>2]=0;c[(c[f>>2]|0)+48>>2]=0;c[(c[f>>2]|0)+52>
x3e;2]=0;c[(c[f>>2]|0)+32>>2]=0;c[(c[f>>2]|0)+36>>2]=0;c[(c[f>>2]|0)+40>
x3e;2]=1;i=e;return}function hp(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;r=i;i=i+32|0;s=r+24
|0;l=r+20|0;m=r+16|0;t=r+12|0;o=r+8|0;k=r+4|0;n=r+28|0;p=r;c[s>>2]=f;c[l>>2]=g;c[m>>2]=h;c[t>
x3e;2]=j;c[k>>2]=(c[t>>2]|0)+1e3;c[o>>2]=(c[(c[k>>2]|0)+12>>2]|0)+(0-(_(c[s>
;>2]|0,c[(c[k>>2]|0)+8>>2]|0)|0));if((c[(c[k>>2]|0)+8>>2]|0)>=0){t=_((c[c[k>
;>2]>>2]|0)-1|0,c[(c[k>>2]|0)+8>>2]|0)|0;c[o>>2]=(c[o>>2]|0)+t}while(1){if
((c[l>>2]|0)<=0)break;a[n>>0]=a[(c[m>>2]|0)+4>>0]|0;a:do if(a[n>>0]|0){g=(
c[o>>2]|0)+(b[c[m>>2]>>1]|0)|0;if((e[(c[m>>2]|0)+2>>1]|0)>=8){Ns(g|0,d[n
x3e;>0]&255|0,e[(c[m>>2]|0)+2>>1]|0)|0;break}c[p>>2]=g;switch(e[(c[m>>2]|0)+2
x3e;>1]|0){case 7:{t=a[n>>0]|0;q=c[p>>2]|0;c[p>>2]=q+1;a[q>>0]=t;q=9;break}case 6:{
q=9;break}case 5:{q=10;break}case 4:{q=11;break}case 3:{q=12;break}case 2:{q=13;break}case 1:break;default:break a}if((q|0)==9){
s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s;q=10}if((q|0)==10){s=a[n>>0]|0;t
=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s;q=11}if((q|0)==11){s=a[n>>0]|0;t=c[p>>2]|0;c[
p>>2]=t+1;a[t>>0]=s;q=12}if((q|0)==12){s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t
>>0]=s;q=13}if((q|0)==13){q=0;s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s}a[
c[p>>2]>>0]=a[n>>0]|0}while(0);c[l>>2]=(c[l>>2]|0)+-1;c[m>>2]=(c[m
x3e;>2]|0)+6}i=r;return}function ip(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;w=i;i=i+400|0;u=w+388|0;v=w+384|0;d=w+64|0;b=w+60|0;q=w+56|0;r=w+52|0;p=w+48|0;m=w+44|0;n=w+40|0;k=w+36|0;e=w+32|0;s=w+28|
0;o=w+24|0;l=w+20|0;j=w+16|0;t=w+12|0;h=w+8|0;f=w+4|0;g=w;c[v>>2]=a;jp(c[v>>2]|0);c[k>>2]=(c[v>
;>2]|0)+1024;if((((c[(c[v>>2]|0)+12>>2]|0)>(c[c[k>>2]>>2]|0)?(c[(c[v>>
;2]|0)+8>>2]|0)<(c[(c[k>>2]|0)+8>>2]|0):0)?(c[(c[v>>2]|0)+20>>2]|0)>(
c[(c[k>>2]|0)+4>>2]|0):0)?(c[(c[v>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0)+12>
;>2]|0):0){if((c[(c[v>>2]|0)+8>>2]|0)<(c[c[k>>2]>>2]|0))c[(c[v>>2]|0
)+8>>2]=c[c[k>>2]>>2];if((c[(c[v>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0
)+4>>2]|0))c[(c[v>>2]|0)+16>>2]=c[(c[k>>2]|0)+4>>2];if((c[(c[v>>2]|0
)+12>>2]|0)>(c[(c[k>>2]|0)+8>>2]|0))c[(c[v>>2]|0)+12>>2]=c[(c[k>>
;2]|0)+8>>2];if((c[(c[v>>2]|0)+20>>2]|0)>(c[(c[k>>2]|0)+12>>2]|0))c[(c[v
x3e;>2]|0)+20>>2]=c[(c[k>>2]|0)+12>>2];c[(c[v>>2]|0)+24>>2]=(c[(c[v>
x3e;2]|0)+12>>2]|0)-(c[(c[v>>2]|0)+8>>2]|0);c[(c[v>>2]|0)+28>>2]=(c[(c[v>
x3e;2]|0)+20>>2]|0)-(c[(c[v>>2]|0)+16>>2]|0);c[r>>2]=((c[(c[v>>2]|0)+20>
x3e;2]|0)-(c[(c[v>>2]|0)+16>>2]|0)|0)/(c[(c[v>>2]|0)+1248>>2]|0)|0;if(!(c[r>>2
]|0))c[r>>2]=1;if((c[r>>2]|0)>=39)c[r>>2]=39;c[(c[v>>2]|0)+1252>>2]=0;c[p
>>2]=c[(c[v>>2]|0)+16>>2];c[n>>2]=c[(c[v>>2]|0)+20>>2];c[q>>
;2]=0;a:while(1){if((c[q>>2]|0)>=(c[r>>2]|0)){b=42;break}c[m>>2]=(c[p>>2]|0)+(c[(c[
v>>2]|0)+1248>>2]|0);if(!((c[q>>2]|0)!=((c[r>>2]|0)-1|0)?(c[m>>2]|0)<=(c[
n>>2]|0):0))c[m>>2]=c[n>>2];c[d>>2]=c[p>>2];c[d+4>>2]=c[m>>
;2];c[b>>2]=d;b:while(1){if((c[b>>2]|0)>>>0<d>>>0)break;c[(c[v>>
;2]|0)+1420>>2]=c[(c[v>>2]|0)+1412>>2];c[(c[v>>2]|0)+1424>>2]=(c[(c[b>>
;2]|0)+4>>2]|0)-(c[c[b>>2]>>2]|0);c[h>>2]=c[(c[v>>2]|0)+1424>>2]<
;<2;c[g>>2]=((c[h>>2]|0)>>>0)%16|0;if((c[g>>2]|0)>0)c[h>>2]=(c[
h>>2]|0)+(16-(c[g>>2]|0));c[f>>2]=c[(c[v>>2]|0)+1416>>2];c[f>>2]=(c[
f>>2]|0)-(((c[f>>2]|0)>>>0)%16|0);c[j>>2]=(c[(c[v>>2]|0)+1412>>
2]|0)+(c[f>>2]|0);c[(c[v>>2]|0)+44>>2]=(c[(c[v>>2]|0)+1412>>2]|0)+(c[h>
x3e;2]|0);do if((c[(c[v>>2]|0)+44>>2]|0)>>>0<(c[j>>2]|0)>>>0?(c
[(c[v>>2]|0)+48>>2]=((c[j>>2]|0)-(c[(c[v>>2]|0)+44>>2]|0)|0)/16|0,(c[(c[v>
;>2]|0)+48>>2]|0)>=2):0){c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[(c[v>>2]|0
)+1424>>2]|0))break;c[(c[(c[v>>2]|0)+1420>>2]|0)+(c[t>>2]<<2)>>2]=0;
c[t>>2]=(c[t>>2]|0)+1}c[(c[v>>2]|0)+52>>2]=0;c[(c[v>>2]|0)+40>>2]=1;
c[(c[v>>2]|0)+16>>2]=c[c[b>>2]>>2];c[(c[v>>2]|0)+20>>2]=c[(c[b>
x3e;2]|0)+4>>2];c[(c[v>>2]|0)+28>>2]=(c[(c[b>>2]|0)+4>>2]|0)-(c[c[b>>
;2]>>2]|0);c[l>>2]=kp(c[v>>2]|0)|0;if(c[l>>2]|0)if((c[l>>2]|0)!=64){b=35;break
a}else break;else{zp(c[v>>2]|0,(c[v>>2]|0)+1e3|0);c[b>>2]=(c[b>>2]|0)+-8;continue b}}while
(0);c[e>>2]=c[c[b>>2]>>2];c[s>>2]=c[(c[b>>2]|0)+4>>2];c[o>>
;2]=(c[e>>2]|0)+((c[s>>2]|0)-(c[e>>2]|0)>>1);if((c[o>>2]|0)==(c[e>>2
]|0)){b=37;break a}if(((c[e>>2]|0)-(c[s>>2]|0)|0)>=(c[(c[v>>2]|0)+1248>>2]|0)){a=(c
[v>>2]|0)+1252|0;c[a>>2]=(c[a>>2]|0)+1}c[(c[b>>2]|0)+8>>2]=c[e>>2];c
[(c[b>>2]|0)+8+4>>2]=c[o>>2];c[c[b>>2]>>2]=c[o>>2];c[(c[b>>
;2]|0)+4>>2]=c[s>>2];c[b>>2]=(c[b>>2]|0)+8}c[q>>2]=(c[q>>2]|0)+1;c[p
>>2]=c[m>>2]}if((b|0)==35){c[u>>2]=1;v=c[u>>2]|0;i=w;return v|0}else if((b|0)==37){c[u
x3e;>2]=1;v=c[u>>2]|0;i=w;return v|0}else if((b|0)==42){if((c[(c[v>>2]|0)+1252>>2]|0)>8?(
c[(c[v>>2]|0)+1248>>2]|0)>16:0)c[(c[v>>2]|0)+1248>>2]=(c[(c[v>>2]|0)+1248
>>2]|0)/2|0;c[u>>2]=0;v=c[u>>2]|0;i=w;return v|0}}c[u>>2]=0;v=c[u>>2]|0;i=w;return
v|0}function jp(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;d=j+20|0;k=j+16|0;f=j+12|0;e=j+8|0;g=j+4|0;h=j;c[d>
x3e;2]=a;c[k>>2]=(c[d>>2]|0)+980;c[f>>2]=c[(c[k>>2]|0)+4>>2];c[e>>2]=(
c[f>>2]|0)+(b[(c[k>>2]|0)+2>>1]<<3);if((b[(c[k>>2]|0)+2>>1]|0)<=
0){c[(c[d>>2]|0)+12>>2]=0;c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+20>>2]=
0;c[(c[d>>2]|0)+16>>2]=0;i=j;return}k=c[c[f>>2]>>2]|0;c[(c[d>>2]|0)+12>
x3e;2]=k;c[(c[d>>2]|0)+8>>2]=k;k=c[(c[f>>2]|0)+4>>2]|0;c[(c[d>>2]|0)+20>
x3e;2]=k;c[(c[d>>2]|0)+16>>2]=k;c[f>>2]=(c[f>>2]|0)+8;while(1){if((c[f>>2]|0)
x3e;>>0>=(c[e>>2]|0)>>>0)break;c[g>>2]=c[c[f>>2]>>2];c[h
x3e;>2]=c[(c[f>>2]|0)+4>>2];if((c[g>>2]|0)<(c[(c[d>>2]|0)+8>>2]|0))c
[(c[d>>2]|0)+8>>2]=c[g>>2];if((c[g>>2]|0)>(c[(c[d>>2]|0)+12>>2]|
0))c[(c[d>>2]|0)+12>>2]=c[g>>2];if((c[h>>2]|0)<(c[(c[d>>2]|0)+16>>
;2]|0))c[(c[d>>2]|0)+16>>2]=c[h>>2];if((c[h>>2]|0)>(c[(c[d>>2]|0)+20>
;>2]|0))c[(c[d>>2]|0)+20>>2]=c[h>>2];c[f>>2]=(c[f>>2]|0)+8}c[(c[d>
x3e;2]|0)+8>>2]=c[(c[d>>2]|0)+8>>2]>>6;c[(c[d>>2]|0)+16>>2]=c[(c[d
x3e;>2]|0)+16>>2]>>6;c[(c[d>>2]|0)+12>>2]=(c[(c[d>>2]|0)+12>>2]|
0)+63>>6;c[(c[d>>2]|0)+20>>2]=(c[(c[d>>2]|0)+20>>2]|0)+63>>6;i=j;return
}function kp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;h=4;f=Fs(40)|0;c[f>>2]=0;g=j;c[g>>2]=0;h=
Qs(a+1256|0,1,f|0,h|0)|0;f=C;n=0;b=n;n=0;if((b|0)!=0&(o|0)!=0){d=Rs(c[b>>2]|0,h|0,f|0)|0;if(!d)ta(b|0,o|0);C=o}else
d=-1;if((d|0)==1)b=C;else b=0;while(1){if(b|0){b=7;break}n=0;b=ea(46,a+980|0,4172,a|0)|0;d=n;n=0;if((d|0)!=0&(o|0)!=0){e=Rs
(c[d>>2]|0,h|0,f|0)|0;if(!e)ta(d|0,o|0);C=o}else e=-1;if((e|0)==1){b=C;continue}c[g>>2]=b;n=0;la(43,a|0);b=n
;n=0;if((b|0)!=0&(o|0)!=0){d=Rs(c[b>>2]|0,h|0,f|0)|0;if(!d)ta(b|0,o|0);C=o}else d=-1;if((d|0)==1)b=C;else{b=6;break
}}if((b|0)==6){g=c[g>>2]|0;Gs(h|0);i=j;return g|0}else if((b|0)==7){c[g>>2]=64;g=c[g>>2]|0;Gs(h|0);
i=j;return g|0}return 0}function lp(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;e=d+8|0;g=d+4|0;f=d;c[h>
x3e;2]=a;c[e>>2]=b;mp(c[e>>2]|0);c[g>>2]=c[c[h>>2]>>2]<<2;c[f>
x3e;2]=c[(c[h>>2]|0)+4>>2]<<2;op(c[e>>2]|0,c[g>>2]>>8,c[f>>
;2]>>8);c[(c[e>>2]|0)+64>>2]=c[g>>2];c[(c[e>>2]|0)+68>>2]=c[f>
x3e;2];i=d;return 0}function mp(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(c[(c[b>>2]|0)+
40>>2]|0){i=e;return}if(!(c[(c[b>>2]|0)+32>>2]|c[(c[b>>2]|0)+36>>2])){i=e;return
}c[d>>2]=np(c[b>>2]|0)|0;a=(c[d>>2]|0)+8|0;c[a>>2]=(c[a>>2]|0)+(c[(c[b>
x3e;2]|0)+32>>2]|0);a=(c[d>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+(c[(c[b>>2]|0)+36>
;>2]|0);i=e;return}function np(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+12|0;f=h+8|0;e=h+4|0;g=h;c[d>>
;2]=a;c[g>>2]=c[c[d>>2]>>2];if((c[g>>2]|0)>(c[(c[d>>2]|0)+24>>2
]|0))c[g>>2]=c[(c[d>>2]|0)+24>>2];c[f>>2]=(c[(c[d>>2]|0)+1420>>2]|0)+(
c[(c[d>>2]|0)+4>>2]<<2);while(1){c[e>>2]=c[c[f>>2]>>2];if(!(c[e>
;>2]|0))break;if((c[c[e>>2]>>2]|0)>(c[g>>2]|0))break;if((c[c[e>>2]>>
2]|0)==(c[g>>2]|0)){b=11;break}c[f>>2]=(c[e>>2]|0)+12}if((b|0)==11){g=c[e>>2]|0;i=h;return
g|0}a=c[d>>2]|0;if((c[(c[d>>2]|0)+52>>2]|0)>=(c[(c[d>>2]|0)+48>>2]|0))ta
(a+1256|0,1);b=c[a+44>>2]|0;a=(c[d>>2]|0)+52|0;d=c[a>>2]|0;c[a>>2]=d+1;c[e>>2]=
b+(d<<4);c[c[e>>2]>>2]=c[g>>2];c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>
;2]|0)+4>>2]=0;c[(c[e>>2]|0)+12>>2]=c[c[f>>2]>>2];c[c[f>>2]>>
;2]=c[e>>2];g=c[e>>2]|0;i=h;return g|0}function op(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0
;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if((c[f>>2]|0)>(c[(c[e>>
;2]|0)+12>>2]|0))c[f>>2]=c[(c[e>>2]|0)+12>>2];if((c[f>>2]|0)<(c[(c[e>
;>2]|0)+8>>2]|0))c[f>>2]=(c[(c[e>>2]|0)+8>>2]|0)-1;c[(c[e>>2]|0)+32>
x3e;2]=0;c[(c[e>>2]|0)+36>>2]=0;c[c[e>>2]>>2]=(c[f>>2]|0)-(c[(c[e>>2
]|0)+8>>2]|0);c[(c[e>>2]|0)+4>>2]=(c[g>>2]|0)-(c[(c[e>>2]|0)+16>>2]|
0);c[(c[e>>2]|0)+72>>2]=c[g>>2]<<8;c[(c[e>>2]|0)+40>>2]=0;pp(c[e>
;>2]|0,c[f>>2]|0,c[g>>2]|0);i=h;return}function pp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i
+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[g>>2]=(c[g>>2]|0)-(c
[(c[e>>2]|0)+16>>2]|0);if((c[f>>2]|0)>(c[(c[e>>2]|0)+12>>2]|0))c[f>
x3e;2]=c[(c[e>>2]|0)+12>>2];a=(c[f>>2]|0)-(c[(c[e>>2]|0)+8>>2]|0)|0;c[f>
x3e;2]=a;c[f>>2]=(c[f>>2]|0)<0?-1:a;if(!((c[f>>2]|0)==(c[c[e>>2]>>2]|0)?(
c[g>>2]|0)==(c[(c[e>>2]|0)+4>>2]|0):0)){if(!(c[(c[e>>2]|0)+40>>2]|0))mp(c[e>
;>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[(c[e>>2]|0)+36>>2]=0}c[c[e>>2]>>
;2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=c[g>>2];if((c[g>>2]|0)>>>0>
;=(c[(c[e>>2]|0)+28>>2]|0)>>>0){d=1;d=d&1;a=c[e>>2]|0;a=a+40|0;c[a>>
2]=d;i=h;return}d=(c[f>>2]|0)>=(c[(c[e>>2]|0)+24>>2]|0);d=d&1;a=c[e>>2]|0;a=a+
40|0;c[a>>2]=d;i=h;return}function qp(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;rp(c[f>>2]|0,c[c[e>>2]>>2]<<2,c[(c[e>>2]|0)+4>>2]
x3c;<2);i=d;return 0}function rp(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,y=0,z=0,A=0,B=0,C=0;C=i;i=i+96|0;e=C+88|0;f=C+84|0;g=C+80|0;n=C+76|0;o=C+72|0;q=C+68|0;r=C+64|0;w=C+60|0;k=C+56|0
;l=C+52|0;A=C+48|0;B=C+44|0;x=C+40|0;p=C+36|0;j=C+32|0;y=C+28|0;t=C+24|0;s=C+20|0;v=C+16|0;u=C+12|0;m=C+8|0;z=C+4|0;h=C;c[e>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[n>>2]=c[(c[e>>2]|0)+72>>2]>>8;c[o
x3e;>2]=c[g>>2]>>8;c[q>>2]=(c[(c[e>>2]|0)+68>>2]|0)-(c[(c[e>>2]|
0)+72>>2]|0);c[r>>2]=(c[g>>2]|0)-(c[o>>2]<<8);c[k>>2]=(c[f>>
;2]|0)-(c[(c[e>>2]|0)+64>>2]|0);c[l>>2]=(c[g>>2]|0)-(c[(c[e>>2]|0)+68>>
;2]|0);c[v>>2]=c[n>>2];c[u>>2]=c[o>>2];if((c[n>>2]|0)>(c[o>>2]|
0)){c[v>>2]=c[o>>2];c[u>>2]=c[n>>2]}if((c[v>>2]|0)>=(c[(c[e>>2]|
0)+20>>2]|0)){A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>
;>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=
A;i=C;return}if((c[u>>2]|0)<(c[(c[e>>2]|0)+16>>2]|0)){A=c[f>>2]|0;B=c[e>>
2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0
;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C;return}if((c[n>>2]|0)==(c[o>>2]|0)){
sp(c[e>>2]|0,c[n>>2]|0,c[(c[e>>2]|0)+64>>2]|0,c[q>>2]|0,c[f>>2]|0,c[
r>>2]|0);A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>
;2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C
;return}c[s>>2]=1;if(!(c[k>>2]|0)){c[m>>2]=c[(c[e>>2]|0)+64>>2]>>8;c
[z>>2]=(c[(c[e>>2]|0)+64>>2]|0)-(c[m>>2]<<8)<<1;c[p>>2]=256
;if((c[l>>2]|0)<0){c[p>>2]=0;c[s>>2]=-1}c[j>>2]=(c[p>>2]|0)-(c[q>>
;2]|0);A=_(c[z>>2]|0,c[j>>2]|0)|0;B=(c[e>>2]|0)+32|0;c[B>>2]=(c[B>>2]|0)+A;B=(
c[e>>2]|0)+36|0;c[B>>2]=(c[B>>2]|0)+(c[j>>2]|0);c[n>>2]=(c[n>>2]|0)+(
c[s>>2]|0);pp(c[e>>2]|0,c[m>>2]|0,c[n>>2]|0);c[j>>2]=(c[p>>2]|0)+(c[
p>>2]|0)-256;c[h>>2]=_(c[z>>2]|0,c[j>>2]|0)|0;while(1){if((c[n>>2]|0)==(c[o>
;>2]|0))break;B=(c[e>>2]|0)+32|0;c[B>>2]=(c[B>>2]|0)+(c[h>>2]|0);B=(c[e>>
2]|0)+36|0;c[B>>2]=(c[B>>2]|0)+(c[j>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[s>>
;2]|0);pp(c[e>>2]|0,c[m>>2]|0,c[n>>2]|0)}c[j>>2]=(c[r>>2]|0)-256+(c[p>>
;2]|0);B=_(c[z>>2]|0,c[j>>2]|0)|0;A=(c[e>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+B;A=(
c[e>>2]|0)+36|0;c[A>>2]=(c[A>>2]|0)+(c[j>>2]|0);A=c[f>>2]|0;B=c[e>>2
]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;
A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C;return}c[x>>2]=_(256-(c[q>>2]|0)|0,c
[k>>2]|0)|0;c[p>>2]=256;c[s>>2]=1;if((c[l>>2]|0)<0){c[x>>2]=_(c[q>
x3e;2]|0,c[k>>2]|0)|0;c[p>>2]=0;c[s>>2]=-1;c[l>>2]=0-(c[l>>2]|0)}c[j>>
;2]=(c[x>>2]|0)/(c[l>>2]|0)|0;c[w>>2]=(c[x>>2]|0)%(c[l>>2]|0)|0;if((c[w>
x3e;2]|0)<0){c[j>>2]=(c[j>>2]|0)+-1;c[w>>2]=(c[w>>2]|0)+(c[l>>2]|0)}c[A
x3e;>2]=(c[(c[e>>2]|0)+64>>2]|0)+(c[j>>2]|0);sp(c[e>>2]|0,c[n>>2]|0,c[(c[
e>>2]|0)+64>>2]|0,c[q>>2]|0,c[A>>2]|0,c[p>>2]|0);c[n>>2]=(c[n>
x3e;2]|0)+(c[s>>2]|0);pp(c[e>>2]|0,c[A>>2]>>8,c[n>>2]|0);a:do if((c[n>>
;2]|0)!=(c[o>>2]|0)){c[x>>2]=c[k>>2]<<8;c[t>>2]=(c[x>>2]|0)/(c[l>
;>2]|0)|0;c[y>>2]=(c[x>>2]|0)%(c[l>>2]|0)|0;if((c[y>>2]|0)<0){c[t>>2
]=(c[t>>2]|0)+-1;c[y>>2]=(c[y>>2]|0)+(c[l>>2]|0)}c[w>>2]=(c[w>>2]|0)-(
c[l>>2]|0);while(1){if((c[n>>2]|0)==(c[o>>2]|0))break a;c[j>>2]=c[t>>2];c[w>
;>2]=(c[w>>2]|0)+(c[y>>2]|0);if((c[w>>2]|0)>=0){c[w>>2]=(c[w>>2]|0)-(
c[l>>2]|0);c[j>>2]=(c[j>>2]|0)+1}c[B>>2]=(c[A>>2]|0)+(c[j>>2]|0);sp(
c[e>>2]|0,c[n>>2]|0,c[A>>2]|0,256-(c[p>>2]|0)|0,c[B>>2]|0,c[p>>2]|0);
c[A>>2]=c[B>>2];c[n>>2]=(c[n>>2]|0)+(c[s>>2]|0);pp(c[e>>2]|0,c[A>
;>2]>>8,c[n>>2]|0)}}while(0);sp(c[e>>2]|0,c[n>>2]|0,c[A>>2]|0,256-(c[p>
;>2]|0)|0,c[f>>2]|0,c[r>>2]|0);A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A
;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>
;2]|0;B=B+72|0;c[B>>2]=A;i=C;return}function sp(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;y=i;i=i+80|0;h=y+68|0;j=y+64|0;A=y+60|0;k=y+56|0;z=y+52|0;l=y+48|0;o=
y+44|0;p=y+40|0;r=y+36|0;s=y+32|0;m=y+28|0;v=y+24|0;u=y+20|0;x=y+16|0;w=y+12|0;q=y+8|0;n=y+4|0;t=y;c[h>>2]=a;c[j>
x3e;2]=b;c[A>>2]=d;c[k>>2]=e;c[z>>2]=f;c[l>>2]=g;c[n>>2]=(c[z>>2]|0)-(
c[A>>2]|0);c[o>>2]=c[A>>2]>>8;c[p>>2]=c[z>>2]>>8;c[r>
x3e;2]=(c[A>>2]|0)-(c[o>>2]<<8);c[s>>2]=(c[z>>2]|0)-(c[p>>2]<
x3c;8);if((c[k>>2]|0)==(c[l>>2]|0)){pp(c[h>>2]|0,c[p>>2]|0,c[j>>2]|0);i=y;return
}if((c[o>>2]|0)==(c[p>>2]|0)){c[m>>2]=(c[l>>2]|0)-(c[k>>2]|0);z=_((c[r>
x3e;2]|0)+(c[s>>2]|0)|0,c[m>>2]|0)|0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;
A=(c[h>>2]|0)+36|0;c[A>>2]=(c[A>>2]|0)+(c[m>>2]|0);i=y;return}c[w>>2]=_(256-(c
[r>>2]|0)|0,(c[l>>2]|0)-(c[k>>2]|0)|0)|0;c[q>>2]=256;c[t>>2]=1;if((c[n>
x3e;2]|0)<0){c[w>>2]=_(c[r>>2]|0,(c[l>>2]|0)-(c[k>>2]|0)|0)|0;c[q>>2]=0;c
[t>>2]=-1;c[n>>2]=0-(c[n>>2]|0)}c[m>>2]=(c[w>>2]|0)/(c[n>>2]|0)|0;c[
v>>2]=(c[w>>2]|0)%(c[n>>2]|0)|0;if((c[v>>2]|0)<0){c[m>>2]=(c[m>>
;2]|0)+-1;c[v>>2]=(c[v>>2]|0)+(c[n>>2]|0)}z=_((c[r>>2]|0)+(c[q>>2]|0)|0,c[m>
;>2]|0)|0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;A=(c[h>>2]|0)+36|0;c[A>>
;2]=(c[A>>2]|0)+(c[m>>2]|0);c[o>>2]=(c[o>>2]|0)+(c[t>>2]|0);pp(c[h>>
2]|0,c[o>>2]|0,c[j>>2]|0);c[k>>2]=(c[k>>2]|0)+(c[m>>2]|0);a:do if((c[o>
x3e;2]|0)!=(c[p>>2]|0)){c[w>>2]=(c[l>>2]|0)-(c[k>>2]|0)+(c[m>>2]|0)<<
;8;c[u>>2]=(c[w>>2]|0)/(c[n>>2]|0)|0;c[x>>2]=(c[w>>2]|0)%(c[n>>2]|0)|
0;if((c[x>>2]|0)<0){c[u>>2]=(c[u>>2]|0)+-1;c[x>>2]=(c[x>>2]|0)+(c[n>
x3e;2]|0)}c[v>>2]=(c[v>>2]|0)-(c[n>>2]|0);while(1){if((c[o>>2]|0)==(c[p>>2]|0))
break a;c[m>>2]=c[u>>2];c[v>>2]=(c[v>>2]|0)+(c[x>>2]|0);if((c[v>>2]|
0)>=0){c[v>>2]=(c[v>>2]|0)-(c[n>>2]|0);c[m>>2]=(c[m>>2]|0)+1}A=(c[h>
x3e;2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+(c[m>>2]<<8);A=(c[h>>2]|0)+36|0;c[A>
x3e;2]=(c[A>>2]|0)+(c[m>>2]|0);c[k>>2]=(c[k>>2]|0)+(c[m>>2]|0);c[o>>
2]=(c[o>>2]|0)+(c[t>>2]|0);pp(c[h>>2]|0,c[o>>2]|0,c[j>>2]|0)}}while(0);c[m>
;>2]=(c[l>>2]|0)-(c[k>>2]|0);z=_((c[s>>2]|0)+256-(c[q>>2]|0)|0,c[m>>2]|0)|
0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;A=(c[h>>2]|0)+36|0;c[A>>2]=(c[A>
;>2]|0)+(c[m>>2]|0);i=y;return}function tp(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;up(c[h>>2]|0,c[g>>2]|0,c[f>>2]|
0);i=e;return 0}function up(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;p=i;i=i+48|0;e=p+44
|0;q=p+40|0;r=p+36|0;g=p+32|0;h=p+28|0;n=p+24|0;j=p+20|0;k=p+16|0;f=p+12|0;m=p+8|0;l=p+4|0;o=p;c[e>>2]=a;c[q>>
;2]=b;c[r>>2]=d;c[f>>2]=(c[e>>2]|0)+76;c[c[f>>2]>>2]=c[c[r>>2]>
x3e;2]<<2;c[(c[f>>2]|0)+4>>2]=c[(c[r>>2]|0)+4>>2]<<2;c[(c[f>>
;2]|0)+8>>2]=c[c[q>>2]>>2]<<2;c[(c[f>>2]|0)+8+4>>2]=c[(c[q>>
;2]|0)+4>>2]<<2;c[(c[f>>2]|0)+16>>2]=c[(c[e>>2]|0)+64>>2];c[(c[f>
;>2]|0)+16+4>>2]=c[(c[e>>2]|0)+68>>2];a=(c[(c[f>>2]|0)+16>>2]|0)+(c[c[f
x3e;>2]>>2]|0)-(c[(c[f>>2]|0)+8>>2]<<1)|0;c[g>>2]=((c[(c[f>>2]|
0)+16>>2]|0)+(c[c[f>>2]>>2]|0)-(c[(c[f>>2]|0)+8>>2]<<1)|0)<0?0-
a|0:a;a=(c[(c[f>>2]|0)+16+4>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0)-(c[(c[f>>2]|0)+8+4
x3e;>2]<<1)|0;c[h>>2]=((c[(c[f>>2]|0)+16+4>>2]|0)+(c[(c[f>>2]|0)+4>
x3e;2]|0)-(c[(c[f>>2]|0)+8+4>>2]<<1)|0)<0?0-a|0:a;if((c[g>>2]|0)<(c[h>>
;2]|0))c[g>>2]=c[h>>2];if((c[g>>2]|0)<=64){rp(c[e>>2]|0,c[c[f>>2]>
x3e;2]|0,c[(c[f>>2]|0)+4>>2]|0);i=p;return}c[j>>2]=0;while(1){if((c[g>>2]|0)<=64)break
;c[g>>2]=c[g>>2]>>2;c[j>>2]=(c[j>>2]|0)+1}c[k>>2]=(c[e>>2]|
0)+852;c[c[k>>2]>>2]=c[j>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)<0)break;c[
j>>2]=c[(c[k>>2]|0)+(c[n>>2]<<2)>>2];if((c[j>>2]|0)>1){r=c[(c[f
>>2]|0)+4>>2]|0;c[l>>2]=r;c[m>>2]=r;c[o>>2]=c[(c[f>>2]|0)+8+4>
x3e;2];if((c[o>>2]|0)<(c[m>>2]|0))c[m>>2]=c[o>>2];if((c[o>>2]|0)>(c[
l>>2]|0))c[l>>2]=c[o>>2];c[o>>2]=c[(c[f>>2]|0)+16+4>>2];if((c[o>
;>2]|0)<(c[m>>2]|0))c[m>>2]=c[o>>2];if((c[o>>2]|0)>(c[l>>2]|0))
c[l>>2]=c[o>>2];if((c[m>>2]>>8|0)<(c[(c[e>>2]|0)+20>>2]|0)?(c[l
>>2]>>8|0)>=(c[(c[e>>2]|0)+16>>2]|0):0){vp(c[f>>2]|0);c[f>>2]=(
c[f>>2]|0)+16;c[n>>2]=(c[n>>2]|0)+1;r=(c[j>>2]|0)-1|0;c[(c[k>>2]|0)+((c[n>
;>2]|0)-1<<2)>>2]=r;c[(c[k>>2]|0)+(c[n>>2]<<2)>>2]=r;continue}}
rp(c[e>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0);c[n>>2]=(c[n>
;>2]|0)+-1;c[f>>2]=(c[f>>2]|0)+-16}i=p;return}function vp(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[(c[d>>2]|0)+32>>2]=c[(c[d>>2]|0)+16>>2];c[e>
x3e;2]=c[(c[d>>2]|0)+8>>2];a=((c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c
[d>>2]|0)+24>>2]=a;c[f>>2]=a;a=((c[c[d>>2]>>2]|0)+(c[e>>2]|0)|0)/2|0
;c[(c[d>>2]|0)+8>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16>>2]=((c[f>>2]|0)+(
c[e>>2]|0)|0)/2|0;c[(c[d>>2]|0)+32+4>>2]=c[(c[d>>2]|0)+16+4>>2];c[e>>
;2]=c[(c[d>>2]|0)+8+4>>2];a=((c[(c[d>>2]|0)+16+4>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(
c[d>>2]|0)+24+4>>2]=a;c[f>>2]=a;a=((c[(c[d>>2]|0)+4>>2]|0)+(c[e>>2]|
0)|0)/2|0;c[(c[d>>2]|0)+8+4>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16+4>>2]=((c[f>
x3e;2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function wp(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;h=f+8|0;g=f+4|0;k=f;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;c[k>>2]=e;xp(c[k>>
;2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0);i=f;return 0}function xp(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;w=i;i=i+80|0;f=w+72|0;x=w+68|0;y=w+64|0;z=w+60|
0;h=w+56|0;s=w+52|0;r=w+48|0;v=w+44|0;j=w+40|0;n=w+36|0;m=w+32|0;q=w+28|0;k=w+24|0;o=w+20|0;l=w+16|0;p=w+12|0;g=w+8|0;t=w+4|0;u=
w;c[f>>2]=a;c[x>>2]=b;c[y>>2]=d;c[z>>2]=e;c[h>>2]=(c[f>>2]|0)+76;c[c
[h>>2]>>2]=c[c[z>>2]>>2]<<2;c[(c[h>>2]|0)+4>>2]=c[(c[z>
;>2]|0)+4>>2]<<2;c[(c[h>>2]|0)+8>>2]=c[c[y>>2]>>2]<<2
;c[(c[h>>2]|0)+8+4>>2]=c[(c[y>>2]|0)+4>>2]<<2;c[(c[h>>2]|0)+16>
x3e;2]=c[c[x>>2]>>2]<<2;c[(c[h>>2]|0)+16+4>>2]=c[(c[x>>2]|0)+4>
x3e;2]<<2;c[(c[h>>2]|0)+24>>2]=c[(c[f>>2]|0)+64>>2];c[(c[h>>2]|0)+24
+4>>2]=c[(c[f>>2]|0)+68>>2];a:while(1){z=c[(c[h>>2]|0)+4>>2]|0;c[r>>
2]=z;c[s>>2]=z;c[v>>2]=c[(c[h>>2]|0)+8+4>>2];if((c[v>>2]|0)<(c[s>>
;2]|0))c[s>>2]=c[v>>2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>
2];c[v>>2]=c[(c[h>>2]|0)+16+4>>2];if((c[v>>2]|0)<(c[s>>2]|0))c[s>>
;2]=c[v>>2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>2];c[v>>2]=
c[(c[h>>2]|0)+24+4>>2];if((c[v>>2]|0)<(c[s>>2]|0))c[s>>2]=c[v>>
2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>2];do if((c[s>>2]>>8
|0)<(c[(c[f>>2]|0)+20>>2]|0)?(c[r>>2]>>8|0)>=(c[(c[f>>2]|0)+16>
x3e;2]|0):0){c[j>>2]=(c[(c[h>>2]|0)+24>>2]|0)-(c[c[h>>2]>>2]|0);c[n>>
;2]=(c[(c[h>>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0);b=c[j>>2]|0;c[m>
x3e;2]=(c[j>>2]|0)<0?0-b|0:b;b=c[n>>2]|0;c[q>>2]=(c[n>>2]|0)<0?0-b|0:b;b=c[m
x3e;>2]|0;if((c[m>>2]|0)>(c[q>>2]|0))b=(b*236|0)+((c[q>>2]|0)*97|0)|0;else b=(b*97|0)+((
c[q>>2]|0)*236|0)|0;c[g>>2]=b>>8;if(((((((c[g>>2]|0)<=32767?(c[u>>2]=(c[g
>>2]|0)*42,c[k>>2]=(c[(c[h>>2]|0)+8>>2]|0)-(c[c[h>>2]>>2]|0),c[o>
;>2]=(c[(c[h>>2]|0)+8+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0),y=_(c[n>>2]|0,c[k
x3e;>2]|0)|0,y=(y-(_(c[j>>2]|0,c[o>>2]|0)|0)|0)<0,z=_(c[n>>2]|0,c[k>>2]|0)|0,z
=z-(_(c[j>>2]|0,c[o>>2]|0)|0)|0,c[t>>2]=y?0-z|0:z,(c[t>>2]|0)<=(c[u>>2]|0
)):0)?(c[l>>2]=(c[(c[h>>2]|0)+16>>2]|0)-(c[c[h>>2]>>2]|0),c[p>>2]=(c
[(c[h>>2]|0)+16+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0),y=_(c[n>>2]|0,c[l>>
2]|0)|0,y=(y-(_(c[j>>2]|0,c[p>>2]|0)|0)|0)<0,z=_(c[n>>2]|0,c[l>>2]|0)|0,z=z-(_(c[j
x3e;>2]|0,c[p>>2]|0)|0)|0,c[t>>2]=y?0-z|0:z,(c[t>>2]|0)<=(c[u>>2]|0)):0)?(z=_(
c[n>>2]|0,c[o>>2]|0)|0,(z+(_(c[j>>2]|0,c[k>>2]|0)|0)|0)>=0):0)?(z=_(c[n>>
2]|0,c[p>>2]|0)|0,(z+(_(c[j>>2]|0,c[l>>2]|0)|0)|0)>=0):0)?(z=_(c[n>>2]|0,(c[(c[h>
;>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+8+4>>2]|0)|0)|0,(z+(_(c[j>>2]|0,(c[(c[h>>
;2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+8>>2]|0)|0)|0)|0)>=0):0)?(z=_(c[n>>2]|0,(c[(c[h>
;>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+16+4>>2]|0)|0)|0,(z+(_(c[j>>2]|0,(c[(c[h>
x3e;2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+16>>2]|0)|0)|0)|0)>=0):0)break;yp(c[h>>2]|0);c[h
>>2]=(c[h>>2]|0)+24;continue a}while(0);rp(c[f>>2]|0,c[c[h>>2]>>2]|0,c[(c[h>
;>2]|0)+4>>2]|0);if((c[h>>2]|0)==((c[f>>2]|0)+76|0))break;c[h>>2]=(c[h>>2
]|0)+-24}i=w;return}function yp(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;f=b+12|0;e=b+8|0;g=b+4|0;h=b;c[d>
;>2]=a;c[(c[d>>2]|0)+48>>2]=c[(c[d>>2]|0)+24>>2];c[g>>2]=c[(c[d>>
;2]|0)+8>>2];c[h>>2]=c[(c[d>>2]|0)+16>>2];a=((c[c[d>>2]>>2]|0)+(c[g
x3e;>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+8>>2]=a;a=((c[(c[d>>2]|0)+24>>2
]|0)+(c[h>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+40>>2]=a;c[g>>2]=((c[g>
x3e;2]|0)+(c[h>>2]|0)|0)/2|0;a=((c[f>>2]|0)+(c[g>>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>
;2]|0)+16>>2]=a;a=((c[e>>2]|0)+(c[g>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+32
x3e;>2]=a;c[(c[d>>2]|0)+24>>2]=((c[f>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c[d>>2]|
0)+48+4>>2]=c[(c[d>>2]|0)+24+4>>2];c[g>>2]=c[(c[d>>2]|0)+8+4>>2];c[h
>>2]=c[(c[d>>2]|0)+16+4>>2];a=((c[(c[d>>2]|0)+4>>2]|0)+(c[g>>2]|0)|0
)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+8+4>>2]=a;a=((c[(c[d>>2]|0)+24+4>>2]|0)+(c[h>
;>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+40+4>>2]=a;c[g>>2]=((c[g>>2]|0)+(c
[h>>2]|0)|0)/2|0;a=((c[f>>2]|0)+(c[g>>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+16+
4>>2]=a;a=((c[e>>2]|0)+(c[g>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+32+4>
x3e;2]=a;c[(c[d>>2]|0)+24+4>>2]=((c[f>>2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function zp(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;k=i;i=i+32|0;d=k+24|0;l=k+20|0;j=k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;e=k;c[d>
;>2]=a;c[l>>2]=b;c[l>>2]=c[l>>2];if(!(c[(c[d>>2]|0)+52>>2]|0)){i=k;return
}c[(c[d>>2]|0)+1232>>2]=0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[d>>2]|
0)+1424>>2]|0))break;c[f>>2]=c[(c[(c[d>>2]|0)+1420>>2]|0)+(c[j>>2]<<
2)>>2];c[g>>2]=0;c[h>>2]=0;while(1){if(!(c[f>>2]|0))break;if(c[g>>2]|0?(c[c[f
x3e;>2]>>2]|0)>(c[h>>2]|0):0)Ap(c[d>>2]|0,c[h>>2]|0,c[j>>2]|0,c[g>
;>2]<<9,(c[c[f>>2]>>2]|0)-(c[h>>2]|0)|0);c[g>>2]=(c[g>>2]|0)+(c
[(c[f>>2]|0)+4>>2]|0);c[e>>2]=(c[g>>2]<<9)-(c[(c[f>>2]|0)+8>>
;2]|0);if(c[e>>2]|0?(c[c[f>>2]>>2]|0)>=0:0)Ap(c[d>>2]|0,c[c[f>>2]>
x3e;2]|0,c[j>>2]|0,c[e>>2]|0,1);c[h>>2]=(c[c[f>>2]>>2]|0)+1;c[f>>2]=
c[(c[f>>2]|0)+12>>2]}if(c[g>>2]|0)Ap(c[d>>2]|0,c[h>>2]|0,c[j>>2]|0,c
[g>>2]<<9,(c[(c[d>>2]|0)+24>>2]|0)-(c[h>>2]|0)|0);c[j>>2]=(c[j>
x3e;2]|0)+1}if(!(c[(c[d>>2]|0)+1236>>2]|0)){i=k;return}if((c[(c[d>>2]|0)+1232>>2]|0)<
;=0){i=k;return}_a[c[(c[d>>2]|0)+1236>>2]&15](c[(c[d>>2]|0)+1244>>2]|0,c[(c[d>
x3e;2]|0)+1232>>2]|0,(c[d>>2]|0)+1040|0,c[(c[d>>2]|0)+1240>>2]|0);i=k;return}function Ap
(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;s=i;i=i+32|0;l=s+28|0;m=s+24|0;n=s+20|0;t=s+16
|0;o=s+12|0;r=s+8|0;p=s+4|0;q=s;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[t>>2]=j;c[o>>2
]=k;c[q>>2]=c[t>>2]>>9;if((c[q>>2]|0)<0)c[q>>2]=0-(c[q>>2]|0);k
=c[q>>2]|0;do if(c[(c[l>>2]|0)+980+16>>2]&2|0){c[q>>2]=k&511;k=c[q>>
2]|0;if((c[q>>2]|0)>256){c[q>>2]=512-k;break}if((k|0)==256)c[q>>2]=255}else if((k|0)>=256
)c[q>>2]=255;while(0);c[n>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);t=(c[m>
;>2]|0)+(c[(c[l>>2]|0)+8>>2]|0)|0;c[m>>2]=t;c[m>>2]=(c[m>>2]|0)>=32767
?32767:t;if((c[n>>2]|0)>=2147483647)c[n>>2]=2147483647;if(!(c[q>>2]|0)){i=s;return}c[p>
x3e;2]=c[(c[l>>2]|0)+1232>>2];c[r>>2]=(c[l>>2]|0)+1040+((c[p>>2]|0)*6|0)+-6;if
((((c[p>>2]|0)>0?(c[(c[l>>2]|0)+1244>>2]|0)==(c[n>>2]|0):0)?((b[c[r>>2]
x3e;>1]|0)+(e[(c[r>>2]|0)+2>>1]|0)|0)==(c[m>>2]|0):0)?(d[(c[r>>2]|0)+4>>0
]|0)==(c[q>>2]|0):0){b[(c[r>>2]|0)+2>>1]=(e[(c[r>>2]|0)+2>>1]|0)+(c[o>>
;2]|0);i=s;return}if((c[p>>2]|0)>=32?1:(c[(c[l>>2]|0)+1244>>2]|0)!=(c[n>>2]|0)){if((
c[p>>2]|0)>0?(c[(c[l>>2]|0)+1236>>2]|0)!=0:0)_a[c[(c[l>>2]|0)+1236>>2]&
;15](c[(c[l>>2]|0)+1244>>2]|0,c[p>>2]|0,(c[l>>2]|0)+1040|0,c[(c[l>>2]|0)+1240
x3e;>2]|0);c[(c[l>>2]|0)+1232>>2]=0;c[(c[l>>2]|0)+1244>>2]=c[n>>2];c[p>
;>2]=0;c[r>>2]=(c[l>>2]|0)+1040}else c[r>>2]=(c[r>>2]|0)+6;b[c[r>>2]>
;>1]=c[m>>2];b[(c[r>>2]|0)+2>>1]=c[o>>2];a[(c[r>>2]|0)+4>>0]=c[
q>>2];t=(c[l>>2]|0)+1232|0;c[t>>2]=(c[t>>2]|0)+1;i=s;return}function Bp(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]|0)+12>>2];Fb(c[e>>
;2]|0,c[d>>2]|0);c[d>>2]=0;i=b;return}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]=c[(c[e>>2]|0)+4>>2];Ua[c[(c[(c[(c[e>>2]|0)+20>>2]|0)+56>
;>2]|0)+8>>2]&31](c[(c[e>>2]|0)+60>>2]|0,c[(c[d>>2]|0)+172>>2]|0,c[(
c[d>>2]|0)+176>>2]|0);i=b;return 0}function Dp(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;k=i;
i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;if((c[h>
;>2]|0)==1)c[h>>2]=0;b=Ep(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,0)|0;i=
k;return b|0}function Ep(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;P=i;i=i+192|0;k=P+180|0;l=P+176|0;m=P+172|0;n=P+168|0;o=P+
164|0;p=P+160|0;t=P+156|0;B=P+152|0;r=P+136|0;H=P+128|0;u=P+124|0;v=P+120|0;I=P+116|0;D=P+112|0;q=P+108|0;A=P+104|0;y=P+100|0;G=
P+96|0;L=P+92|0;N=P+88|0;K=P+84|0;O=P+80|0;C=P+32|0;z=P+28|0;w=P+24|0;M=P+20|0;s=P+16|0;E=P+12|0;F=P+8|0;J=P+4|0;x=P;c[l>
x3e;2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=h;c[p>>2]=j;c[B>>2]=0;c[y>>2]=(
c[n>>2]|0)==3&1;c[G>>2]=(c[n>>2]|0)==4&1;do if((c[(c[m>>2]|0)+72>>2]|
0)==(c[(c[l>>2]|0)+24>>2]|0)){if((c[n>>2]|0)!=(c[p>>2]|0)){c[k>>2]=19;O=c[k>
;>2]|0;i=P;return O|0}c[B>>2]=(c[m>>2]|0)+108;if(c[o>>2]|0)Nb(c[B>>2]|0,c[c[o>
x3e;2]>>2]|0,c[(c[o>>2]|0)+4>>2]|0);_d(c[B>>2]|0,r);c[r>>2]=c[r>>2]
x26;-64;c[r+4>>2]=c[r+4>>2]&-64;c[r+8>>2]=(c[r+8>>2]|0)+63&-64;c[r+12>>
;2]=(c[r+12>>2]|0)+63&-64;if((c[r>>2]|0)<0?(c[r+8>>2]|0)>(2147483647+(c[r>>
;2]|0)|0):0){c[k>>2]=98;O=c[k>>2]|0;i=P;return O|0}c[H>>2]=(c[r+8>>2]|0)-(c[r>>
;2]|0)>>6;if((c[r+4>>2]|0)<0?(c[r+12>>2]|0)>(2147483647+(c[r+4>>2]|0)|0):0){c[
k>>2]=98;O=c[k>>2]|0;i=P;return O|0}c[u>>2]=(c[r+12>>2]|0)-(c[r+4>>2]|0)>
x3e;6;c[q>>2]=(c[m>>2]|0)+76;c[A>>2]=c[(c[l>>2]|0)+8>>2];c[I>>2]=c[H
>>2];c[v>>2]=c[u>>2];if(c[(c[(c[m>>2]|0)+156>>2]|0)+4>>2]&1|0){
Fb(c[A>>2]|0,c[(c[q>>2]|0)+12>>2]|0);c[(c[q>>2]|0)+12>>2]=0;f=(c[(c[m>>
;2]|0)+156>>2]|0)+4|0;c[f>>2]=c[f>>2]&-2}c[D>>2]=c[H>>2];if(c[y>>
;2]|0){c[H>>2]=(c[H>>2]|0)*3;c[D>>2]=(c[H>>2]|0)+3&-4}if(c[G>>2]|0)c[u>
;>2]=(c[u>>2]|0)*3;c[L>>2]=c[r>>2];c[N>>2]=c[r+4>>2];c[K>>2]=c[
r>>2]>>6;c[O>>2]=c[r+12>>2]>>6;if((c[H>>2]|0)>>>0>
;32767|(c[u>>2]|0)>>>0>32767){c[k>>2]=98;O=c[k>>2]|0;i=P;return O|0}a[(c[q>
;>2]|0)+18>>0]=2;b[(c[q>>2]|0)+16>>1]=256;c[(c[q>>2]|0)+4>>2]=c[H>
x3e;2];c[c[q>>2]>>2]=c[u>>2];c[(c[q>>2]|0)+8>>2]=c[D>>2];Nb(c[B>
;>2]|0,0-(c[L>>2]|0)|0,0-(c[N>>2]|0)|0);f=bc(c[A>>2]|0,_(c[D>>2]|0,c[u>>2
]|0)|0,t)|0;c[(c[q>>2]|0)+12>>2]=f;if(!(c[t>>2]|0)){f=(c[(c[m>>2]|0)+156>>2]|0
)+4|0;c[f>>2]=c[f>>2]|1;c[C>>2]=c[q>>2];c[C+4>>2]=c[B>>2];c[C+8>
;>2]=1;c[t>>2]=Ya[c[(c[l>>2]|0)+64>>2]&127](c[(c[l>>2]|0)+60>>2]|0,C
)|0;a:do if(c[y>>2]|0){c[z>>2]=c[(c[q>>2]|0)+12>>2];c[w>>2]=c[v>>2];
while(1){if((c[w>>2]|0)>>>0<=0)break a;c[s>>2]=(c[z>>2]|0)+(c[H>>2]|
0);c[M>>2]=c[I>>2];while(1){if((c[M>>2]|0)>>>0<=0)break;c[E>>2]=d[(c
[z>>2]|0)+((c[M>>2]|0)-1)>>0];a[(c[s>>2]|0)+-3>>0]=c[E>>2];a[(c[s>
;>2]|0)+-2>>0]=c[E>>2];a[(c[s>>2]|0)+-1>>0]=c[E>>2];c[s>>2]=(c[
s>>2]|0)+-3;c[M>>2]=(c[M>>2]|0)+-1}c[w>>2]=(c[w>>2]|0)+-1;c[z>>2]=(c
[z>>2]|0)+(c[D>>2]|0)}}while(0);b:do if(c[G>>2]|0){c[F>>2]=(c[(c[q>>2]|0)+12
x3e;>2]|0)+(_((c[u>>2]|0)-(c[v>>2]|0)|0,c[D>>2]|0)|0);c[J>>2]=c[(c[q>>2]|
0)+12>>2];c[x>>2]=c[v>>2];while(1){if((c[x>>2]|0)>>>0<=0)break b;Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);c[F
>>2]=(c[F>>2]|0)+(c[D>>2]|0);c[x>>2]=(c[x>>2]|0)+-1}}while(0);Nb(c[B>>
;2]|0,c[L>>2]|0,c[N>>2]|0);if((c[K>>2]|0)>2147483647|(c[O>>2]|0)>2147483647){c
[k>>2]=23;O=c[k>>2]|0;i=P;return O|0}else{if(c[t>>2]|0)break;c[(c[m>>2]|0)+72>>
;2]=1651078259;c[(c[m>>2]|0)+100>>2]=c[K>>2];c[(c[m>>2]|0)+104>>2]=c[O>
x3e;2];break}}}else c[t>>2]=6;while(0);if((c[B>>2]|0)!=0&(c[o>>2]|0)!=0)Nb(c[B>>2]|
0,0-(c[c[o>>2]>>2]|0)|0,0-(c[(c[o>>2]|0)+4>>2]|0)|0);c[k>>2]=c[t>>2];
O=c[k>>2]|0;i=P;return O|0}function Fp(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;l=k+16
|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[l>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2
]=0;if((c[(c[f>>2]|0)+72>>2]|0)!=(c[(c[l>>2]|0)+24>>2]|0)){c[j>>2]=6;l=c[j>
;>2]|0;i=k;return l|0}if(c[g>>2]|0)Kb((c[f>>2]|0)+108|0,c[g>>2]|0);if(!(c[h>>2]|0)){
l=c[j>>2]|0;i=k;return l|0}Nb((c[f>>2]|0)+108|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+
4>>2]|0);l=c[j>>2]|0;i=k;return l|0}function Gp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;h=
g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[e>>2]=b;c[f>>2]=d;b=c[f>>2]|0;c[b>>2]=0;c[b+4>
;>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;if((c[(c[e>>2]|0)+72>>2]|0)!=(c[(c[h>>2]|
0)+24>>2]|0)){i=g;return}_d((c[e>>2]|0)+108|0,c[f>>2]|0);i=g;return}function Hp(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=Oa[c[(
c[(c[(c[h>>2]|0)+20>>2]|0)+56>>2]|0)+12>>2]&63](c[(c[h>>2]|0)+60>>
;2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function Ip(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;j=i;i=i+32|0;m=j+16|0;g=j+12|0;l=j+8|0;k=j+4|0;h=j;c[m>>2]=b;c[g>>2]=d;c[l>>2]=e;c[k>
;>2]=f;c[h>>2]=Ep(c[m>>2]|0,c[g>>2]|0,c[l>>2]|0,c[k>>2]|0,3)|0;if(c[h>
;>2]|0){m=c[h>>2]|0;i=j;return m|0}a[(c[g>>2]|0)+76+18>>0]=5;m=c[h>>2]|0;i=j;return
m|0}function Jp(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;j=i;i=i+32|0;m=j+16|0;g=j+12|0;l=j+8|0;k=j+4|0;h=j
;c[m>>2]=b;c[g>>2]=d;c[l>>2]=e;c[k>>2]=f;c[h>>2]=Ep(c[m>>2]|0,c[g>
;>2]|0,c[l>>2]|0,c[k>>2]|0,4)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=j;return m|0}a[(c[g>
;>2]|0)+76+18>>0]=6;m=c[h>>2]|0;i=j;return m|0}function Kp(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[(c[e>>2]|
0)+32>>2]=c[g>>2];a=hc(c[g>>2]|0,4,0,c[f>>2]|0,0,h)|0;c[(c[e>>2]|0)+24>
x3e;2]=a;if((c[h>>2]|0)==0?(a=hc(c[g>>2]|0,4,0,c[f>>2]|0,0,h)|0,c[(c[e>>2]|0)+28>
x3e;2]=a,(c[h>>2]|0)==0):0){c[(c[e>>2]|0)+16>>2]=c[f>>2];c[(c[e>>2]|0)+12>
;>2]=-559038737;c[(c[e>>2]|0)+20>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+8>
;>2]=0;c[(c[e>>2]|0)+4>>2]=0;a=(c[e>>2]|0)+36|0;c[a>>2]=c[1094];c[a+4>>2]=
c[1095];c[a+8>>2]=c[1096];c[a+12>>2]=c[1097]}if(!(c[h>>2]|0)){a=c[h>>2]|0;i=j;return a|0
}Fb(c[g>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;a=c[h>>
2]|0;i=j;return a|0}function Lp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;d=g+4|0;f=g;c[b>>2]=a;c
[e>>2]=c[(c[b>>2]|0)+32>>2];c[f>>2]=c[c[b>>2]>>2];if(!(c[f>>
;2]|0)){i=g;return}a=bc(c[e>>2]|0,c[(c[b>>2]|0)+4>>2]|0,d)|0;c[c[b>>2]>>2]=a;if
(c[d>>2]|0){i=g;return}Ss(c[c[b>>2]>>2]|0,c[f>>2]|0,c[(c[b>>2]|0)+4>>
;2]|0)|0;Mp(c[b>>2]|0,c[f>>2]|0);c[(c[b>>2]|0)+8>>2]=c[(c[b>>2]|0)+4>>
;2];Fb(c[e>>2]|0,c[f>>2]|0);c[f>>2]=0;c[d>>2]=c[d>>2];i=g;return}function Mp(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;h=g+16|0;j=g+12|0;d=g+8|0;f=g+4|0;e=g;c[h>>2]=a;c[j>>
;2]=b;c[d>>2]=(c[c[h>>2]>>2]|0)-(c[j>>2]|0);c[f>>2]=c[(c[h>>2]|0)+24
>>2];c[e>>2]=(c[f>>2]|0)+(c[(c[h>>2]|0)+16>>2]<<2);while(1){if((c[f
x3e;>2]|0)>>>0>=(c[e>>2]|0)>>>0)break;if(c[c[f>>2]>>2]|0){
j=c[f>>2]|0;c[j>>2]=(c[j>>2]|0)+(c[d>>2]|0)}c[f>>2]=(c[f>>2]|0)+4}i=
g;return}function Np(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o
+20|0;j=o+16|0;k=o+12|0;l=o+8|0;n=o+4|0;m=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if((
c[h>>2]|0)>=0?(c[h>>2]|0)<(c[(c[g>>2]|0)+16>>2]|0):0){if((c[k>>2]|0)
x3c;0){c[f>>2]=6;a=c[f>>2]|0;i=o;return a|0}do if(((c[(c[g>>2]|0)+4>>2]|0)+(c[k>>
;2]|0)|0)>>>0>(c[(c[g>>2]|0)+8>>2]|0)>>>0){c[n>>2]=c[(c[g>
x3e;2]|0)+8>>2];a=(c[j>>2]|0)-(c[c[g>>2]>>2]|0)|0;c[m>>2]=a;c[m>>2]=(
c[m>>2]|0)>>>0>=(c[(c[g>>2]|0)+8>>2]|0)>>>0?-1:a;while(1){if((c
[n>>2]|0)>>>0>=((c[(c[g>>2]|0)+4>>2]|0)+(c[k>>2]|0)|0)>>
x3e;0)break;c[n>>2]=(c[n>>2]|0)+(((c[n>>2]|0)>>>2)+1);c[n>>2]=(c[n>
x3e;2]|0)+1023&-1024}c[l>>2]=Op(c[g>>2]|0,c[n>>2]|0)|0;if(c[l>>2]|0){c[f>>
;2]=c[l>>2];a=c[f>>2]|0;i=o;return a|0}else{if((c[m>>2]|0)<0)break;c[j>>2]=(c[c[g
x3e;>2]>>2]|0)+(c[m>>2]|0);break}}while(0);c[(c[(c[g>>2]|0)+24>>2]|0)+(c[h>>
;2]<<2)>>2]=(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+4>>2]|0);c[(c[(c[g>
;>2]|0)+28>>2]|0)+(c[h>>2]<<2)>>2]=c[k>>2];Ss((c[c[g>>2]>
x3e;2]|0)+(c[(c[g>>2]|0)+4>>2]|0)|0,c[j>>2]|0,c[k>>2]|0)|0;a=(c[g>>2]|0)+4|0;c
[a>>2]=(c[a>>2]|0)+(c[k>>2]|0);c[f>>2]=0;a=c[f>>2]|0;i=o;return a|0}c[f>
x3e;2]=6;a=c[f>>2]|0;i=o;return a|0}function Op(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0
;e=k+16|0;f=k+12|0;h=k+8|0;j=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[h>>2]=c[(c[e>>2]|0)+32>
;>2];c[j>>2]=c[c[e>>2]>>2];b=bc(c[h>>2]|0,c[f>>2]|0,g)|0;c[c[e>>
;2]>>2]=b;b=c[j>>2]|0;if(c[g>>2]|0){c[c[e>>2]>>2]=b;c[d>>2]=c[g>
;>2];j=c[d>>2]|0;i=k;return j|0}if(b|0){Ss(c[c[e>>2]>>2]|0,c[j>>2]|0,c[(c[e>
x3e;2]|0)+8>>2]|0)|0;Mp(c[e>>2]|0,c[j>>2]|0);Fb(c[h>>2]|0,c[j>>2]|0);c[j>
x3e;2]=0}c[(c[e>>2]|0)+8>>2]=c[f>>2];c[d>>2]=0;j=c[d>>2]|0;i=k;return j|0}function
Pp(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+32>>
;2];if((c[(c[b>>2]|0)+12>>2]|0)!=-559038737){i=e;return}Fb(c[d>>2]|0,c[c[b>>2]>>
;2]|0);c[c[b>>2]>>2]=0;Fb(c[d>>2]|0,c[(c[b>>2]|0)+24>>2]|0);c[(c[b>>
2]|0)+24>>2]=0;Fb(c[d>>2]|0,c[(c[b>>2]|0)+28>>2]|0);c[(c[b>>2]|0)+28>>
;2]=0;c[(c[b>>2]|0)+12>>2]=0;i=e;return}function Qp(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;j=f+8|0;k=f+4|0;h=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[h>>2]=e;c[(c[
g>>2]|0)+12>>2]=0;c[(c[g>>2]|0)+4>>2]=c[j>>2];c[(c[g>>2]|0)+8>
x3e;2]=c[k>>2];c[c[g>>2]>>2]=c[j>>2];c[(c[g>>2]|0)+16>>2]=c[h>
x3e;2];b=(c[g>>2]|0)+20|0;d=4392;e=b+52|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0
));i=f;return}function Rp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return
}function Sp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Tp(c[d>>2]|0,c[(c[d>>2]|0)+8>>
;2]|0);i=b;return}function Tp(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+8|0;e=h+4|0;g=h;c[f>>2]=a;c[e>
;>2]=b;c[g>>2]=c[c[f>>2]>>2];while(1){if((c[g>>2]|0)>>>0>=(c[e
x3e;>2]|0)>>>0){e=12;break}if((((((d[c[g>>2]>>0]|0|0)!=32?(d[c[g>>2]>>
;0]|0|0)!=13:0)?(d[c[g>>2]>>0]|0|0)!=10:0)?(d[c[g>>2]>>0]|0|0)!=9:0)?(d[c[g>>2
]>>0]|0|0)!=12:0)?d[c[g>>2]>>0]|0|0:0){if((d[c[g>>2]>>0]|0|0)!=37){e=12;break}
Up(g,c[e>>2]|0)}c[g>>2]=(c[g>>2]|0)+1}if((e|0)==12){c[c[f>>2]>>2]=c[g>>
;2];i=h;return}}function Up(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=c[c[e>>2]>>2];while(1){if((c[g>>2]|0)>>>0>=(c[f>
;>2]|0)>>>0)break;if((d[c[g>>2]>>0]|0|0)==13)break;if((d[c[g>>2]>>0]|
0|0)==10)break;c[g>>2]=(c[g>>2]|0)+1}c[c[e>>2]>>2]=c[g>>2];i=h;return}function
Vp(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=c[c[e
x3e;>2]>>2];c[h>>2]=c[(c[e>>2]|0)+8>>2];c[g>>2]=0;Tp(f,c[h>>2]|
0);a:do if((c[f>>2]|0)>>>0<(c[h>>2]|0)>>>0){if((d[c[f>>2]>
x3e;0]|0|0)!=91?(d[c[f>>2]>>0]|0|0)!=93:0){if((d[c[f>>2]>>0]|0|0)==123){c[g>>2
]=Wp(f,c[h>>2]|0)|0;break}if((d[c[f>>2]>>0]|0|0)==40){c[g>>2]=Xp(f,c[h>>2]|0)|
0;break}a=c[f>>2]|0;if((d[c[f>>2]>>0]|0|0)==60){if((a+1|0)>>>0<(c[h>>
;2]|0)>>>0?(d[(c[f>>2]|0)+1>>0]|0|0)==60:0){c[f>>2]=(c[f>>2]|0)+1;c[f>
;>2]=(c[f>>2]|0)+1;break}c[g>>2]=Yp(f,c[h>>2]|0)|0;break}b=c[f>>2]|0;if((d[a>
x3e;0]|0|0)==62){c[f>>2]=b+1;if((c[f>>2]|0)>>>0<(c[h>>2]|0)>>>0
?(d[c[f>>2]>>0]|0|0)==62:0){c[f>>2]=(c[f>>2]|0)+1;break}c[g>>2]=3;break}if((d[
b>>0]|0|0)==47)c[f>>2]=(c[f>>2]|0)+1;while(1){if((c[f>>2]|0)>>>0>=(c
[h>>2]|0)>>>0)break a;if((d[c[f>>2]>>0]|0|0)==32)break a;if((d[c[f>>2]>
;>0]|0|0)==13)break a;if((d[c[f>>2]>>0]|0|0)==10)break a;if((d[c[f>>2]>>0]|0|0)==9)
break a;if((d[c[f>>2]>>0]|0|0)==12)break a;if(!(d[c[f>>2]>>0]|0))break a;if((d[c[f>
x3e;2]>>0]|0|0)==47)break a;if((d[c[f>>2]>>0]|0|0)==40)break a;if((d[c[f>>2]>>
0]|0|0)==41)break a;if((d[c[f>>2]>>0]|0|0)==60)break a;if((d[c[f>>2]>>0]|0|0)==62)break
a;if((d[c[f>>2]>>0]|0|0)==91)break a;if((d[c[f>>2]>>0]|0|0)==93)break a;if((d[c[f>
x3e;2]>>0]|0|0)==123)break a;if((d[c[f>>2]>>0]|0|0)==125)break a;if((d[c[f>>2]>>
;0]|0|0)==37)break a;c[f>>2]=(c[f>>2]|0)+1}}c[f>>2]=(c[f>>2]|0)+1}while(0);if((c[f>
x3e;2]|0)!=(c[c[e>>2]>>2]|0)){h=c[g>>2]|0;g=c[e>>2]|0;g=g+12|0;c[g>>2]=h;g=c[f
>>2]|0;h=c[e>>2]|0;c[h>>2]=g;i=j;return}c[g>>2]=3;h=c[g>>2]|0;g=c[e>>
;2]|0;g=g+12|0;c[g>>2]=h;g=c[f>>2]|0;h=c[e>>2]|0;c[h>>2]=g;i=j;return}function Wp(a,b){a
=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+16|0;f=l+12|0;g=l+8|0;h=l+4|0;j=l;c[e>>2]=a;c[f>>
;2]=b;c[h>>2]=0;c[j>>2]=0;c[g>>2]=c[c[e>>2]>>2];a:while(1){if(!((c[g>>
;2]|0)>>>0<(c[f>>2]|0)>>>0?(c[j>>2]|0)==0:0))break;switch(d[c[g>>
;2]>>0]|0|0){case 123:{c[h>>2]=(c[h>>2]|0)+1;break}case 125:{c[h>>2]=(c[h>>2]|
0)+-1;if(!(c[h>>2]|0)){k=6;break a}break}case 40:{c[j>>2]=Xp(g,c[f>>2]|0)|0;break}case 60:{c[j>
;>2]=Yp(g,c[f>>2]|0)|0;break}case 37:{Up(g,c[f>>2]|0);break}default:{}}c[g>>2]=(c[g>>
;2]|0)+1}if((k|0)==6)c[g>>2]=(c[g>>2]|0)+1;if(!(c[h>>2]|0)){b=c[g>>2]|0;k=c[e>>
;2]|0;c[k>>2]=b;k=c[j>>2]|0;i=l;return k|0}c[j>>2]=3;b=c[g>>2]|0;k=c[e>>2]|0;c
[k>>2]=b;k=c[j>>2]|0;i=l;return k|0}function Xp(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;n=i;i=i
+32|0;k=n+20|0;f=n+16|0;l=n+12|0;h=n+8|0;m=n+4|0;j=n;g=n+24|0;c[k>>2]=b;c[f>>2]=e;c[l>>2]=c[c[k>
;>2]>>2];c[h>>2]=0;c[m>>2]=3;a:while(1){if((c[l>>2]|0)>>>0>=(c[
f>>2]|0)>>>0){f=18;break}a[g>>0]=a[c[l>>2]>>0]|0;c[l>>2]=(c[l
x3e;>2]|0)+1;if((d[g>>0]|0|0)!=92){if((d[g>>0]|0|0)==40){c[h>>2]=(c[h>>2]|0)+1;continue
}if((d[g>>0]|0|0)!=41)continue;c[h>>2]=(c[h>>2]|0)+-1;if(!(c[h>>2]|0)){f=17;break}else continue
}if((c[l>>2]|0)==(c[f>>2]|0)){f=18;break}switch(d[c[l>>2]>>0]|0|0){case 41:case 40:case
92:case 102:case 98:case 116:case 114:case 110:{c[l>>2]=(c[l>>2]|0)+1;continue a}default:{}}c[j>>2
]=0;while(1){if((c[j>>2]|0)>>>0>=3)continue a;if((c[l>>2]|0)>>>0>=(c
[f>>2]|0)>>>0)continue a;if(48>(d[c[l>>2]>>0]|0|0))continue a;if((d[c[l>
x3e;2]>>0]|0|0)>55)continue a;c[l>>2]=(c[l>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1
}}if((f|0)==17){c[m>>2]=0;e=c[l>>2]|0;l=c[k>>2]|0;c[l>>2]=e;m=c[m>>2]|0;i=n;return
m|0}else if((f|0)==18){e=c[l>>2]|0;l=c[k>>2]|0;c[l>>2]=e;m=c[m>>2]|0;i=n;return m|0}return
0}function Yp(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=c[c[e>>2]>>2];c[h>>2]=0;while(1){b=(c[g>>2]|0)+1|0;c[g>
x3e;2]=b;if(b>>>0>=(c[f>>2]|0)>>>0)break;Tp(g,c[f>>2]|0);if((c[g>>
;2]|0)>>>0>=(c[f>>2]|0)>>>0)break;if((d[c[g>>2]>>0]|0|0)>=
48?(d[c[g>>2]>>0]|0|0)<=57:0)continue;if((d[c[g>>2]>>0]|0|0)>=65?(d[c[g>
x3e;2]>>0]|0|0)<=70:0)continue;if((d[c[g>>2]>>0]|0|0)<97)break;if((d[c[g>>2]
x3e;>0]|0|0)>102)break}if((c[g>>2]|0)>>>0<(c[f>>2]|0)>>>0?(d[c[
g>>2]>>0]|0|0)!=62:0){c[h>>2]=3;g=c[g>>2]|0;b=c[e>>2]|0;c[b>>2]=g;b=
c[h>>2]|0;i=j;return b|0}c[g>>2]=(c[g>>2]|0)+1;g=c[g>>2]|0;b=c[e>>2]|0;c[b>
;>2]=g;b=c[h>>2]|0;i=j;return b|0}function Zp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Sp(c[d>
;>2]|0);a=_p(c[d>>2]|0,c[(c[d>>2]|0)+8>>2]|0)|0;i=b;return a|0}function _p(a,b){a=a|0;b=b|0;var
e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[f>>2]=a;c[g>>2]=b;c[h>>
;2]=$p(c[f>>2]|0,c[g>>2]|0,10)|0;c[j>>2]=c[c[f>>2]>>2];if((c[j>>2]|0
)>>>0<(c[g>>2]|0)>>>0?(d[c[j>>2]>>0]|0|0)==35:0){c[c[f>>
;2]>>2]=(c[j>>2]|0)+1;c[e>>2]=$p(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;j=
c[e>>2]|0;i=k;return j|0}c[e>>2]=c[h>>2];j=c[e>>2]|0;i=k;return j|0}function $p(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;q=i;i=i+32|0;g=q+20|0;h=q+16|0;j=q+12|0;k=q+8|0;n=q+4|0;m=q;o=q+25|
0;l=q+24|0;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[n>>2]=c[c[h>>2]>>2];c[m
x3e;>2]=0;a[o>>0]=0;if(((c[k>>2]|0)<2?1:(c[n>>2]|0)==(c[j>>2]|0))|(c[k>
x3e;2]|0)>36){c[g>>2]=0;p=c[g>>2]|0;i=q;return p|0}if(!((d[c[n>>2]>>0]|0)!=45?(d[c[
n>>2]>>0]|0)!=43:0))p=5;if((p|0)==5?(a[o>>0]=(d[c[n>>2]>>0]|0)==45,c[n>
x3e;2]=(c[n>>2]|0)+1,(c[n>>2]|0)==(c[j>>2]|0)):0){c[g>>2]=0;p=c[g>>2]|0;i=q;return
p|0}while(1){if((c[n>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;if((d[c[n>
x3e;2]>>0]|0)==32)break;if((d[c[n>>2]>>0]|0)==13)break;if((d[c[n>>2]>>0]|0)==10
)break;if((d[c[n>>2]>>0]|0)==9)break;if((d[c[n>>2]>>0]|0)==12)break;if(!(d[c[n>>
;2]>>0]|0))break;if((d[c[n>>2]>>0]|0)>=128)break;a[l>>0]=a[11579+(d[c[n>>
2]>>0]&127)>>0]|0;if((a[l>>0]|0)<0)break;if((a[l>>0]|0)>=(c[k>>
2]|0))break;p=_(c[m>>2]|0,c[k>>2]|0)|0;c[m>>2]=p+(a[l>>0]|0);c[n>>2]=(c[n>
;>2]|0)+1}if(a[o>>0]|0)c[m>>2]=0-(c[m>>2]|0);c[c[h>>2]>>2]=c[n>>
;2];c[g>>2]=c[m>>2];p=c[g>>2]|0;i=q;return p|0}function aq(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;Sp(c[f>>2]|0);b=bq(c[f>>2]|0,c[(c[f>>2]|
0)+8>>2]|0,c[e>>2]|0)|0;i=d;return b|0}function bq(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;s=i;i=i+48|0;g=s+28|0;h=s+24|0;j=s+20|0;k=s+16|0;p=s+12|0;o=s+8|0;m=s+4|0;n=s;q=s+33|0;l=s+32|0;c[h>>
;2]=b;c[j>>2]=e;c[k>>2]=f;c[p>>2]=c[c[h>>2]>>2];c[m>>2]=0;c[n>
x3e;2]=1;a[q>>0]=0;if((c[p>>2]|0)==(c[j>>2]|0)){c[g>>2]=0;r=c[g>>2]|0;i=s;return
r|0}if(!((d[c[p>>2]>>0]|0)!=45?(d[c[p>>2]>>0]|0)!=43:0))r=5;if((r|0)==5?(a[q>>
;0]=(d[c[p>>2]>>0]|0)==45,c[p>>2]=(c[p>>2]|0)+1,(c[p>>2]|0)==(c[j>>2
]|0)):0){c[g>>2]=0;r=c[g>>2]|0;i=s;return r|0}if((d[c[p>>2]>>0]|0)!=46)c[o>>2]=(
_p(p,c[j>>2]|0)|0)<<16;else c[o>>2]=0;a:do if((c[p>>2]|0)>>>0<(c[j
x3e;>2]|0)>>>0?(d[c[p>>2]>>0]|0)==46:0){c[p>>2]=(c[p>>2]|0)+1;while(
1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break a;if((d[c[p>>2]>
;>0]|0)==32)break a;if((d[c[p>>2]>>0]|0)==13)break a;if((d[c[p>>2]>>0]|0)==10)break
a;if((d[c[p>>2]>>0]|0)==9)break a;if((d[c[p>>2]>>0]|0)==12)break a;if(!(d[c[p>>
;2]>>0]|0))break a;if((d[c[p>>2]>>0]|0)>=128)break a;a[l>>0]=a[11579+(d[c[p>
x3e;2]>>0]&127)>>0]|0;if((a[l>>0]|0)<0)break a;if((a[l>>0]|0)>=10)break a
;if(!((c[o>>2]|0)==0&(c[k>>2]|0)>0)){if((c[n>>2]|0)<1e7){c[m>>2]=((c[m>
;>2]|0)*10|0)+(a[l>>0]|0);c[n>>2]=(c[n>>2]|0)*10}}else{c[k>>2]=(c[k>>2]|0
)+-1;c[m>>2]=((c[m>>2]|0)*10|0)+(a[l>>0]|0)}c[p>>2]=(c[p>>2]|0)+1}}while(0);do
if(((c[p>>2]|0)+1|0)>>>0<(c[j>>2]|0)>>>0){if((d[c[p>>2]>
x3e;0]|0)!=101?(d[c[p>>2]>>0]|0)!=69:0)break;c[p>>2]=(c[p>>2]|0)+1;r=_p(p,c[j>>
;2]|0)|0;c[k>>2]=(c[k>>2]|0)+r}while(0);while(1){if((c[k>>2]|0)<=0)break;c[o>>2]=(c
[o>>2]|0)*10;c[m>>2]=(c[m>>2]|0)*10;c[k>>2]=(c[k>>2]|0)+-1}while(1){if((c[k>
;>2]|0)>=0)break;c[o>>2]=(c[o>>2]|0)/10|0;c[n>>2]=(c[n>>2]|0)*10;c[k>>
;2]=(c[k>>2]|0)+1}if(c[m>>2]|0){r=Vb(c[m>>2]|0,c[n>>2]|0)|0;c[o>>2]=(c[o>
x3e;2]|0)+r}if(a[q>>0]|0)c[o>>2]=0-(c[o>>2]|0);c[c[h>>2]>>2]=c[p>>2];
c[g>>2]=c[o>>2];r=c[g>>2]|0;i=s;return r|0}function cq(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;q=i;i=i+32|0;j=q+20|0;k=q+16|0;l=q+12|0;m=q+8|0;n=q+24|0;p=q+4|0;o=q;c[j>>2]=b;c[k>
;>2]=e;c[l>>2]=f;c[m>>2]=g;a[n>>0]=h;c[p>>2]=0;Sp(c[j>>2]|0);c[o>>
;2]=c[c[j>>2]>>2];if((c[o>>2]|0)>>>0>=(c[(c[j>>2]|0)+8>>2]|
0)>>>0){g=c[p>>2]|0;i=q;return g|0}do if(a[n>>0]|0){if((d[c[o>>2]>>0]|0)==
60){c[o>>2]=(c[o>>2]|0)+1;break}c[p>>2]=3;g=c[p>>2]|0;i=q;return g|0}while(0);g=dq(o,c[(
c[j>>2]|0)+8>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;c[c[m>>2]>>2]=g;if(a[n>
;>0]|0){if((c[o>>2]|0)>>>0<(c[(c[j>>2]|0)+8>>2]|0)>>>0?(d[
c[o>>2]>>0]|0)!=62:0){c[p>>2]=3;g=c[p>>2]|0;i=q;return g|0}c[o>>2]=(c[o>
x3e;2]|0)+1}c[c[j>>2]>>2]=c[o>>2];g=c[p>>2]|0;i=q;return g|0}function dq(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;r=i;i=i+48|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0;n=r+16|0;p=r+12|0
;q=r+8|0;o=r+4|0;m=r;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[p>>2]=0;c[q>
;>2]=0;c[o>>2]=1;c[l>>2]=c[l>>2]<<1;c[n>>2]=c[c[h>>2]>>
;2];if((c[l>>2]|0)>>>0>((c[j>>2]|0)-(c[n>>2]|0)|0)>>>0)c[l>
;>2]=(c[j>>2]|0)-(c[n>>2]|0);while(1){if((c[p>>2]|0)>>>0>=(c[l>>
;2]|0)>>>0)break;c[m>>2]=d[(c[n>>2]|0)+(c[p>>2]|0)>>0];if(!((c[m>>
;2]|0)==32|(c[m>>2]|0)==13|(c[m>>2]|0)==10|(c[m>>2]|0)==9|(c[m>>2]|0)==12|(c[m>>
;2]|0)==0)){if((c[m>>2]|0)>>>0>=128)break;c[m>>2]=a[11579+(c[m>>2]&127)
x3e;>0];if((c[m>>2]|0)>>>0>=16)break;c[o>>2]=c[o>>2]<<4|c[m>
;>2];if(c[o>>2]&256|0){e=c[o>>2]&255;g=c[q>>2]|0;c[q>>2]=g+1;a[(c[k>
x3e;2]|0)+g>>0]=e;c[o>>2]=1}}c[p>>2]=(c[p>>2]|0)+1}if((c[o>>2]|0)==1){n=c[n>
;>2]|0;o=c[p>>2]|0;o=n+o|0;p=c[h>>2]|0;c[p>>2]=o;q=c[q>>2]|0;i=r;return q|0}g=c[o
x3e;>2]<<4&255;o=c[q>>2]|0;c[q>>2]=o+1;a[(c[k>>2]|0)+o>>0]=g;n=c[n
x3e;>2]|0;o=c[p>>2]|0;o=n+o|0;p=c[h>>2]|0;c[p>>2]=o;q=c[q>>2]|0;i=r;return q|0}function
eq(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;Sp(c[h>>2]|0);a=fq(c[h>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[g>>2]|0,c[f
x3e;>2]|0)|0;i=e;return a|0}function fq(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;t=
i;i=i+32|0;q=t+24|0;k=t+20|0;l=t+16|0;m=t+12|0;s=t+8|0;r=t+4|0;j=t+31|0;o=t+30|0;n=t+28|0;p=t;c[q>>2]=e;c[k>>
;2]=f;c[l>>2]=g;c[m>>2]=h;c[s>>2]=c[c[q>>2]>>2];c[r>>2]=0;a:do if((c
[s>>2]|0)>>>0<(c[k>>2]|0)>>>0){a[j>>0]=a[c[s>>2]>
;>0]|0;a[o>>0]=0;if((d[j>>0]|0)!=91){if((d[j>>0]|0)==123)a[o>>0]=125}else a[o>
x3e;0]=93;if(a[o>>0]|0)c[s>>2]=(c[s>>2]|0)+1;while(1){if((c[s>>2]|0)>>>0
x3e;=(c[k>>2]|0)>>>0)break a;Tp(s,c[k>>2]|0);if((c[s>>2]|0)>>>0>
;=(c[k>>2]|0)>>>0)break a;j=c[s>>2]|0;if((d[c[s>>2]>>0]|0)==(d[o>>
;0]|0)){e=11;break}c[p>>2]=j;if(c[m>>2]|0?(c[r>>2]|0)>=(c[l>>2]|0):0)break a;e=(bq(
s,c[k>>2]|0,0)|0)>>16&65535;if(c[m>>2]|0)j=(c[m>>2]|0)+(c[r>>2]<<
;1)|0;else j=n;b[j>>1]=e;if((c[p>>2]|0)==(c[s>>2]|0)){e=17;break}c[r>>2]=(c[r>>
;2]|0)+1;if(!(a[o>>0]|0))break a}if((e|0)==11){c[s>>2]=j+1;break}else if((e|0)==17){c[r>>2]=-1;break
}}while(0);c[c[q>>2]>>2]=c[s>>2];i=t;return c[r>>2]|0}function gq(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>
x3e;2]=d;c[g>>2]=e;Sp(c[k>>2]|0);d=hq(c[k>>2]|0,c[(c[k>>2]|0)+8>>2]|0,c[j>
;>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=f;return d|0}function hq(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;u=i;i=i+48|0;r=u+32|0;k=u+28|0;l=u+24|0;m=u+20|0;n=u+16|0;t=u+12|0;s=u+8|0;j=u+37
|0;p=u+36|0;o=u+4|0;q=u;c[r>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[t
x3e;>2]=c[c[r>>2]>>2];c[s>>2]=0;a:do if((c[t>>2]|0)>>>0<(c[k>
;>2]|0)>>>0){a[j>>0]=a[c[t>>2]>>0]|0;a[p>>0]=0;if((d[j>>0]|
0)!=91){if((d[j>>0]|0)==123)a[p>>0]=125}else a[p>>0]=93;if(a[p>>0]|0)c[t>>2]=(
c[t>>2]|0)+1;while(1){if((c[t>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break
a;Tp(t,c[k>>2]|0);if((c[t>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break a;
j=c[t>>2]|0;if((d[c[t>>2]>>0]|0)==(d[p>>0]|0)){b=11;break}c[q>>2]=j;if(c[m>
;>2]|0?(c[s>>2]|0)>=(c[l>>2]|0):0)break a;b=bq(t,c[k>>2]|0,c[n>>2]|0)|0;if(c[m
>>2]|0)j=(c[m>>2]|0)+(c[s>>2]<<2)|0;else j=o;c[j>>2]=b;if((c[q>>2]|0
)==(c[t>>2]|0)){b=17;break}c[s>>2]=(c[s>>2]|0)+1;if(!(a[p>>0]|0))break a}if((b|0)==11){c
[t>>2]=j+1;break}else if((b|0)==17){c[s>>2]=-1;break}}while(0);c[c[r>>2]>>2]=c[t>
x3e;2];i=u;return c[s>>2]|0}function iq(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;e=k+16|0;f=k+12|0;g=
k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;c[(c[f>>2]|0)+8>>2]=0;c[c[f>>2]>>
;2]=0;c[(c[f>>2]|0)+4>>2]=0;Sp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];c[j
x3e;>2]=c[(c[e>>2]|0)+8>>2];if((c[g>>2]|0)>>>0>=(c[j>>2]|0)>
;>>0){i=k;return}a:do switch(d[c[g>>2]>>0]|0|0){case 40:{c[(c[f>>2]|0)+8>>2]=2
;c[c[f>>2]>>2]=c[g>>2];if(!(Xp(g,c[j>>2]|0)|0))c[(c[f>>2]|0)+4>>2]=c
[g>>2];break}case 123:{c[(c[f>>2]|0)+8>>2]=3;c[c[f>>2]>>2]=c[g>>2];if
(!(Wp(g,c[j>>2]|0)|0))c[(c[f>>2]|0)+4>>2]=c[g>>2];break}case 91:{c[(c[f>>2]|0)+
8>>2]=3;c[h>>2]=1;b=c[g>>2]|0;c[g>>2]=b+1;c[c[f>>2]>>2]=b;c[c[e>
;>2]>>2]=c[g>>2];Sp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];while(1){if
((c[g>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break a;if(!((c[(c[e>>2]|0)+12
>>2]|0)!=0^1))break a;if((d[c[g>>2]>>0]|0|0)!=91){if((d[c[g>>2]>>0]|0|0)==93?(
c[h>>2]=(c[h>>2]|0)+-1,(c[h>>2]|0)<=0):0)break}else c[h>>2]=(c[h>>2]|0)+1
;c[c[e>>2]>>2]=c[g>>2];Vp(c[e>>2]|0);Sp(c[e>>2]|0);c[g>>2]=c[c[e>
;>2]>>2]}b=(c[g>>2]|0)+1|0;c[g>>2]=b;c[(c[f>>2]|0)+4>>2]=b;break}default:{
c[c[f>>2]>>2]=c[g>>2];c[(c[f>>2]|0)+8>>2]=(d[c[g>>2]>>0]|0
|0)==47?4:1;Vp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];if(!(c[(c[e>>2]|0)+12>>
;2]|0))c[(c[f>>2]|0)+4>>2]=c[g>>2]}}while(0);if(!(c[(c[f>>2]|0)+4>>2]|0)){c[c[
f>>2]>>2]=0;c[(c[f>>2]|0)+8>>2]=0}c[c[e>>2]>>2]=c[g>>2];i=
k;return}function jq(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;q=i;i=i+64|0;f=q+52|0;g=q+
48|0;h=q+44|0;j=q+40|0;m=q+28|0;n=q+24|0;o=q+20|0;k=q+16|0;l=q+12|0;p=q;c[f>>2]=a;c[g>>2]=b;c[h>>2
]=d;c[j>>2]=e;c[c[j>>2]>>2]=-1;iq(c[f>>2]|0,m);if((c[m+8>>2]|0)!=3){i=q;return
}c[n>>2]=c[c[f>>2]>>2];c[o>>2]=c[(c[f>>2]|0)+8>>2];c[k>>2]=
c[g>>2];c[l>>2]=(c[k>>2]|0)+((c[h>>2]|0)*12|0);c[c[f>>2]>>2]=(c[m>
;>2]|0)+1;c[(c[f>>2]|0)+8>>2]=(c[m+4>>2]|0)+-1;while(1){if((c[c[f>>2]>>2]|
0)>>>0>=(c[(c[f>>2]|0)+8>>2]|0)>>>0)break;iq(c[f>>2]|0,p);if(!(
c[p+8>>2]|0))break;if(c[g>>2]|0?(c[k>>2]|0)>>>0<(c[l>>2]|0)>>
;>0:0){b=c[k>>2]|0;c[b>>2]=c[p>>2];c[b+4>>2]=c[p+4>>2];c[b+8>>2
]=c[p+8>>2]}c[k>>2]=(c[k>>2]|0)+12}c[c[j>>2]>>2]=((c[k>>2]|0)-(c[g
x3e;>2]|0)|0)/12|0;c[c[f>>2]>>2]=c[n>>2];c[(c[f>>2]|0)+8>>2]=c[o>>
;2];i=q;return}function kq(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;H=i;i=i+128|0;k=H+112|0;l=H+108|0;m=H+104|0;n=H+100|0;o=H+96|0;D=H+84|0;r=H+80|0;v=H+76|
0;q=H+72|0;t=H+68|0;s=H+64|0;E=H+52|0;x=H+48|0;y=H+44|0;z=H+40|0;F=H+36|0;B=H+32|0;w=H+28|0;u=H+24|0;C=H+8|0;p=H+4|0;A=H;c[k>
;>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;iq(c[k>>2]|0,D);a:do if(c[
D+8>>2]|0){c[q>>2]=1;c[t>>2]=0;c[r>>2]=c[D>>2];c[v>>2]=c[D+4>
x3e;2];if((c[(c[l>>2]|0)+8>>2]|0)==7){c[x>>2]=c[c[k>>2]>>2];c[y>>2]=
c[(c[k>>2]|0)+8>>2];c[c[k>>2]>>2]=(c[D>>2]|0)+1;c[(c[k>>2]|0)+8>
;>2]=(c[D+4>>2]|0)+-1;iq(c[k>>2]|0,E);c[c[k>>2]>>2]=c[x>>2];c[(c[k>
x3e;2]|0)+8>>2]=c[y>>2];if((c[E+8>>2]|0)==3)G=5}else if((c[D+8>>2]|0)==3)G=5;if((G|0)==5
){if(!(c[n>>2]|0))break;c[q>>2]=c[n>>2];c[t>>2]=1;c[r>>2]=(c[r>>2]|0
)+1;c[v>>2]=(c[v>>2]|0)+-1}b:while(1){if((c[q>>2]|0)>>>0<=0){G=32;break}c[z>
;>2]=(c[(c[m>>2]|0)+(c[t>>2]<<2)>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0
);Tp(r,c[v>>2]|0);switch(c[(c[l>>2]|0)+8>>2]|0){case 1:{c[F>>2]=lq(r,c[v>>2]|0
)|0;G=13;break}case 3:{c[F>>2]=bq(r,c[v>>2]|0,0)|0;G=13;break}case 4:{c[F>>2]=bq(r,c[v>>
2]|0,3)|0;G=13;break}case 2:{c[F>>2]=_p(r,c[v>>2]|0)|0;G=13;break}case 6:case 5:{c[w>>2]=c[(c[k>
;>2]|0)+16>>2];c[u>>2]=(c[v>>2]|0)-(c[r>>2]|0);if((c[r>>2]|0)>>
x3e;0<(c[v>>2]|0)>>>0){if((c[D+8>>2]|0)==4){c[u>>2]=(c[u>>2]|0)+-1;c
[r>>2]=(c[r>>2]|0)+1}else{if((c[D+8>>2]|0)!=2){G=23;break b}c[r>>2]=(c[r>>2]|0
)+1;c[u>>2]=(c[u>>2]|0)-2}if(c[c[z>>2]>>2]|0){Fb(c[w>>2]|0,c[c[z>>2]
x3e;>2]|0);c[c[z>>2]>>2]=0;c[c[z>>2]>>2]=0}c[B>>2]=bc(c[w>>2]|0
,(c[u>>2]|0)+1|0,s)|0;if(c[s>>2]|0){G=33;break b}Ss(c[B>>2]|0,c[r>>2]|0,c[u>>2
]|0)|0;a[(c[B>>2]|0)+(c[u>>2]|0)>>0]=0;c[c[z>>2]>>2]=c[B>>2]}break}case
7:{c[p>>2]=c[z>>2];c[A>>2]=hq(r,c[v>>2]|0,4,C,0)|0;if((c[A>>2]|0)<0){G=29
;break b}E=Tb(c[C>>2]|0)|0;c[c[p>>2]>>2]=E;E=Tb(c[C+4>>2]|0)|0;c[(c[p>>2]|0)+4
>>2]=E;E=Tb(c[C+8>>2]|0)|0;c[(c[p>>2]|0)+8>>2]=E;E=Tb(c[C+12>>2]|0)|0;c[(c[p
x3e;>2]|0)+12>>2]=E;break}default:break a}c:do if((G|0)==13){G=0;switch(d[(c[l>>2]|0)+20>>0]|
0|0){case 1:{a[c[z>>2]>>0]=c[F>>2];break c}case 2:{b[c[z>>2]>>1]=c[F>>
;2];break c}case 4:{c[c[z>>2]>>2]=c[F>>2];break c}default:{c[c[z>>2]>>2]=c[F
x3e;>2];break c}}}while(0);c[q>>2]=(c[q>>2]|0)+-1;c[t>>2]=(c[t>>2]|0)+1}if((G|0)==23
){c[s>>2]=3;G=c[s>>2]|0;i=H;return G|0}else if((G|0)==29){c[s>>2]=3;G=c[s>>2]|0;i=H;return
G|0}else if((G|0)==32){c[o>>2]=c[o>>2];c[s>>2]=0;G=c[s>>2]|0;i=H;return G|0}else if((G|
0)==33){G=c[s>>2]|0;i=H;return G|0}}while(0);c[s>>2]=3;G=c[s>>2]|0;i=H;return G|0}function lq(b,e){
b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;f=l+8|0;g=l+4|0;h=l;j=l+12|0;c[f>>2]=b;c[g>>2]=e;c[h>
;>2]=c[c[f>>2]>>2];a[j>>0]=0;if((((((c[h>>2]|0)+3|0)>>>0<(c[g
x3e;>2]|0)>>>0?(d[c[h>>2]>>0]|0|0)==116:0)?(d[(c[h>>2]|0)+1>>0]|0|0)==
114:0)?(d[(c[h>>2]|0)+2>>0]|0|0)==117:0)?(d[(c[h>>2]|0)+3>>0]|0|0)==101:0){a[j>>
;0]=1;c[h>>2]=(c[h>>2]|0)+5}else k=7;if(((((((k|0)==7?((c[h>>2]|0)+4|0)>>>0<(c
[g>>2]|0)>>>0:0)?(d[c[h>>2]>>0]|0|0)==102:0)?(d[(c[h>>2]|0)+1>>
0]|0|0)==97:0)?(d[(c[h>>2]|0)+2>>0]|0|0)==108:0)?(d[(c[h>>2]|0)+3>>0]|0|0)==115:0)?(d[(c
[h>>2]|0)+4>>0]|0|0)==101:0){a[j>>0]=0;c[h>>2]=(c[h>>2]|0)+6}c[c[f>>
2]>>2]=c[h>>2];i=l;return d[j>>0]|0|0}function mq(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;v=i;i=i+464|0;j=v+456|0;k=v+452|0;l=v+448|0;m=v+444|0;n=v+440|0;o=v+56|0;u=v+52
|0;r=v+48|0;p=v+44|0;s=v+40|0;t=v+36|0;q=v;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n
x3e;>2]=h;c[p>>2]=0;e=q;g=c[k>>2]|0;f=e+36|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while
((e|0)<(f|0));c[q+8>>2]=2;if(!((c[(c[k>>2]|0)+8>>2]|0)!=9?(c[(c[k>>2]|0)+8>>
;2]|0)!=7:0))c[q+8>>2]=3;jq(c[j>>2]|0,o,32,r);if((c[r>>2]|0)<0){c[p>>2]=162;u=c[p
x3e;>2]|0;i=v;return u|0}if((c[r>>2]|0)>>>0>(c[(c[k>>2]|0)+24>>2]|0)>
;>>0)c[r>>2]=c[(c[k>>2]|0)+24>>2];c[s>>2]=c[c[j>>2]>>2];c[
t>>2]=c[(c[j>>2]|0)+8>>2];if((c[(c[k>>2]|0)+8>>2]|0)!=7?c[(c[k>>2]|0
)+28>>2]|0:0)a[(c[c[l>>2]>>2]|0)+(c[(c[k>>2]|0)+28>>2]|0)>>0]=c[r>
;>2];c[u>>2]=o;while(1){if((c[r>>2]|0)<=0)break;c[c[j>>2]>>2]=c[c[u>>
;2]>>2];c[(c[j>>2]|0)+8>>2]=c[(c[u>>2]|0)+4>>2];kq(c[j>>2]|0,q,c[l
x3e;>2]|0,c[m>>2]|0,0)|0;o=q+16|0;c[o>>2]=(c[o>>2]|0)+(d[q+20>>0]|0);c[r>>
;2]=(c[r>>2]|0)+-1;c[u>>2]=(c[u>>2]|0)+12}c[n>>2]=c[n>>2];c[c[j>>2]
x3e;>2]=c[s>>2];c[(c[j>>2]|0)+8>>2]=c[t>>2];u=c[p>>2]|0;i=v;return u|0}function
nq(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;h=n+16|0;o=n+12|0;j=n+8|0;k=n+4|0;l=n+
20|0;m=n;c[h>>2]=b;c[o>>2]=d;c[j>>2]=e;c[k>>2]=f;a[l>>0]=g;c[(c[h>>2
]|0)+64>>2]=0;a[(c[h>>2]|0)+68>>0]=1;c[(c[h>>2]|0)+4>>2]=c[o>>2];c[(
c[h>>2]|0)+8>>2]=c[k>>2];c[c[h>>2]>>2]=c[(c[o>>2]|0)+100>>
2];if(c[k>>2]|0?(c[m>>2]=c[c[(c[k>>2]|0)+156>>2]>>2],c[(c[h>>2]|0)+12
>>2]=c[m>>2],c[(c[h>>2]|0)+16>>2]=(c[m>>2]|0)+20,c[(c[h>>2]|0)+20>
;>2]=(c[m>>2]|0)+56,dc(c[m>>2]|0),c[(c[h>>2]|0)+76>>2]=c[(c[j>>2]|0)+40
x3e;>2],c[(c[h>>2]|0)+72>>2]=0,a[l>>0]|0):0)c[(c[h>>2]|0)+72>>2]=c[(c[(c[
k>>2]|0)+156>>2]|0)+36>>2];c[(c[h>>2]|0)+24>>2]=0;c[(c[h>>2]|0)+28
x3e;>2]=0;c[(c[h>>2]|0)+32>>2]=0;c[(c[h>>2]|0)+32+4>>2]=0;c[(c[h>>2]|0)+40
>>2]=0;c[(c[h>>2]|0)+40+4>>2]=0;o=(c[h>>2]|0)+80|0;c[o>>2]=c[1111];c[o+4>
x3e;2]=c[1112];c[o+8>>2]=c[1113];c[o+12>>2]=c[1114];c[o+16>>2]=c[1115];c[o+20>>2]=c[1116
];c[o+24>>2]=c[1117];c[o+28>>2]=c[1118];i=n;return}function oq(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0
;d=e;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+8>>2];if(!(c[d>>2]|0)){i=e;return}d=(c[d
x3e;>2]|0)+108|0;a=c[(c[b>>2]|0)+16>>2]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4
>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>
;>2];i=e;return}function pq(a,d){a=a|0;d=d|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]=
d;if(!(c[f>>2]|0)){d=0;i=g;return d|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20+2>>1]|0)+(b[(c[(
c[e>>2]|0)+12>>2]|0)+56+2>>1]|0)+(c[f>>2]|0)|0)>>>0<=(c[(c[(c[e>
;>2]|0)+12>>2]|0)+4>>2]|0)>>>0){d=0;i=g;return d|0}d=kc(c[(c[e>>2]|0)+12>
x3e;2]|0,c[f>>2]|0,0)|0;i=g;return d|0}function qq(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;p=i;i=i+32|0;q=p+20|0;j=p+16|0;k=p+12|0;l=p+24|0;n=p+8|0;o=p+4|0;m=p;c[q>>2]=e;c[j>>2]=f;c[k>>2]=
g;a[l>>0]=h;c[n>>2]=c[(c[q>>2]|0)+20>>2];if(!(a[(c[q>>2]|0)+68>>0]|0
)){q=c[n>>2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}c[o>
;>2]=(c[(c[n>>2]|0)+4>>2]|0)+(b[(c[n>>2]|0)+2>>1]<<3);c[m>>2]=(
c[(c[n>>2]|0)+8>>2]|0)+(b[(c[n>>2]|0)+2>>1]|0);q=(Tb(c[j>>2]|0)|0)>>
16;c[c[o>>2]>>2]=q;q=(Tb(c[k>>2]|0)|0)>>16;c[(c[o>>2]|0)+4>>2]=q;a[c
[m>>2]>>0]=d[l>>0]|0?1:2;q=c[n>>2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16
x3e;>16;b[q>>1]=g;i=p;return}function rq(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;e=j+12|0;f
=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=pq(c[e>>2]|0,1)|0;if(
c[h>>2]|0){d=c[h>>2]|0;i=j;return d|0}qq(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0,1);d=c[
h>>2]|0;i=j;return d|0}function sq(d){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[e>
;>2]=d;c[h>>2]=c[(c[e>>2]|0)+20>>2];if(!(c[h>>2]|0)){c[f>>2]=3;h=c[f>
;>2]|0;i=j;return h|0}if(!(a[(c[e>>2]|0)+68>>0]|0)){h=c[h>>2]|0;b[h>>1]=(b[h>
x3e;1]|0)+1<<16>>16;c[f>>2]=0;h=c[f>>2]|0;i=j;return h|0}if(((b[(c[(c[e>>2]|0)+
12>>2]|0)+20>>1]|0)+(b[(c[(c[e>>2]|0)+12>>2]|0)+56>>1]|0)+1|0)>>>
;0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+8>>2]|0)>>>0)e=0;else e=kc(c[(c[e>>2
]|0)+12>>2]|0,0,1)|0;c[g>>2]=e;if(!(c[g>>2]|0)){if((b[c[h>>2]>>1]|0)>0)b[(
c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>>1]|0)-1<<1)>>1]=(b[(c[h>
x3e;2]|0)+2>>1]|0)-1;h=c[h>>2]|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}c[f
x3e;>2]=c[g>>2];h=c[f>>2]|0;i=j;return h|0}function tq(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=3;if((c
[(c[e>>2]|0)+64>>2]|0)==3){c[h>>2]=0;d=c[h>>2]|0;i=j;return d|0}c[(c[e>>2]|0)+
64>>2]=3;c[h>>2]=sq(c[e>>2]|0)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=j;return d|0}c[h
x3e;>2]=rq(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;d=c[h>>2]|0;i=j;return d|0}function uq(
a){a=a|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;l=k+20|0;j=k+16|0;h=k+12|0;f=k+8|0;g=k+4|0;e=k;c[l>>2]=a;c[j>
;>2]=c[(c[l>>2]|0)+20>>2];if(!(c[j>>2]|0)){i=k;return}if((b[c[j>>2]>>1]|0
)<=1)a=0;else a=(b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>1]|0)-2<<1)>
;>1]|0)+1|0;c[h>>2]=a;if((((b[(c[j>>2]|0)+2>>1]|0)>1?(c[f>>2]=(c[(c[j>>
;2]|0)+4>>2]|0)+(c[h>>2]<<3),c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(b[(c[j
>>2]|0)+2>>1]<<3)+-8,c[e>>2]=(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>
x3e;2]|0)+2>>1]|0)+-1,(c[c[f>>2]>>2]|0)==(c[c[g>>2]>>2]|0)):0)?(c[(c[f>
x3e;2]|0)+4>>2]|0)==(c[(c[g>>2]|0)+4>>2]|0):0)?(d[c[e>>2]>>0]|0)==1:0){l=(c[j
x3e;>2]|0)+2|0;b[l>>1]=(b[l>>1]|0)+-1<<16>>16}if((b[c[j>>2]>>1]|
0)<=0){i=k;return}a=c[j>>2]|0;if((c[h>>2]|0)==((b[(c[j>>2]|0)+2>>1]|0)-1|0)){b[a>
;>1]=(b[a>>1]|0)+-1<<16>>16;l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>>1]|
0)+-1<<16>>16;i=k;return}else{b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>
;1]|0)-1<<1)>>1]=(b[a+2>>1]|0)-1;i=k;return}}function vq(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;x=i;i=i+64|0;m=x+44|0;n=x+40|0;o=x+36
|0;p=x+32|0;q=x+28|0;r=x+24|0;s=x+20|0;t=x+48|0;u=x+16|0;v=x+12|0;w=x+8|0;z=x+4|0;y=x;c[n>>2]=b;c[o>>2]=d;c[
p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=h;a[t>>0]=j;c[u>>2]=k;c[v>
x3e;2]=l;Ns(c[n>>2]|0,0,1500)|0;c[w>>2]=0;c[z>>2]=c[(c[o>>2]|0)+96>>2];c[y>
;>2]=Vd(c[z>>2]|0,71003)|0;c[w>>2]=c[y>>2];if(c[w>>2]|0){c[(c[n>>2]|0)+1348
>>2]=c[w>>2];nq(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,a[t>>
;0]|0);c[(c[n>>2]|0)+1352>>2]=c[(c[o>>2]|0)+16>>2];c[(c[n>>2]|0)+1356>>
;2]=c[r>>2];c[(c[n>>2]|0)+1468>>2]=c[u>>2];c[(c[n>>2]|0)+1464>>2]=c[
s>>2];c[(c[n>>2]|0)+1472>>2]=c[v>>2];z=(c[n>>2]|0)+1476|0;c[z>>2]=c[
1119];c[z+4>>2]=c[1120];c[z+8>>2]=c[1121];c[m>>2]=0;z=c[m>>2]|0;i=x;return z|0}else{c[m
x3e;>2]=7;z=c[m>>2]|0;i=x;return z|0}return 0}function wq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=
a;oq(c[d>>2]|0);i=b;return}function xq(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;Y=i;i=
i+176|0;k=Y+156|0;l=Y+152|0;h=Y+148|0;j=Y+144|0;v=Y+140|0;W=Y+136|0;C=Y+132|0;F=Y+128|0;s=Y+124|0;U=Y+120|0;V=Y+116|0;L=Y+112|0;
M=Y+108|0;D=Y+104|0;R=Y+100|0;E=Y+160|0;N=Y+96|0;w=Y+92|0;Q=Y+88|0;K=Y+84|0;S=Y+80|0;O=Y+76|0;n=Y+72|0;x=Y+68|0;o=Y+64|0;J=Y+60|
0;H=Y+56|0;G=Y+52|0;t=Y+48|0;T=Y+44|0;P=Y+40|0;y=Y+36|0;p=Y+32|0;z=Y+28|0;q=Y+24|0;A=Y+20|0;r=Y+16|0;m=Y+12|0;I=Y+8|0;B=Y+4|0;u=
Y;c[l>>2]=e;c[h>>2]=f;c[j>>2]=g;c[s>>2]=c[l>>2];c[D>>2]=0;c[R>
x3e;2]=0;c[N>>2]=N^l^h;e=(c[N>>2]^c[N>>2]>>10^c[N>>2]>>20)&65535
;c[N>>2]=e;c[N>>2]=(c[N>>2]|0)==0?29572:e;c[(c[l>>2]|0)+1136>>2]=(c[l>>
;2]|0)+112;c[(c[l>>2]|0)+1344>>2]=(c[l>>2]|0)+1140;c[W>>2]=(c[l>>2]|0)+1140;c[(
c[s>>2]|0)+64>>2]=0;c[w>>2]=c[(c[s>>2]|0)+72>>2];if((c[(c[l>>2]|0)+1492
>>2]|0)>>>0>0)Ns(c[(c[l>>2]|0)+1488>>2]|0,0,c[(c[l>>2]|0)+1492>
x3e;2]<<2|0)|0;c[(c[W>>2]|0)+4>>2]=c[h>>2];e=(c[h>>2]|0)+(c[j>>2]|0)|
0;c[(c[W>>2]|0)+8>>2]=e;c[F>>2]=e;e=c[(c[W>>2]|0)+4>>2]|0;c[c[W>>2]
x3e;>2]=e;c[C>>2]=e;c[v>>2]=0;e=c[(c[s>>2]|0)+24>>2]|0;c[L>>2]=e;c[U>
;>2]=e;e=c[(c[s>>2]|0)+28>>2]|0;c[M>>2]=e;c[V>>2]=e;if(c[w>>2]|0)Va[c[(c[
w>>2]|0)+4>>2]&63](c[c[w>>2]>>2]|0);a[E>>0]=0;a:while(1){if((c[C>>
;2]|0)>>>0>=(c[F>>2]|0)>>>0){X=186;break}c[Q>>2]=c[(c[l>>2]|0)+
1136>>2];c[K>>2]=0;c[S>>2]=0;e=c[C>>2]|0;c[C>>2]=e+1;b:do switch(d[e>>
;0]|0){case 1:{c[K>>2]=16;break}case 3:{c[K>>2]=18;break}case 4:{c[K>>2]=14;break}case 5:{c[K>
;>2]=9;break}case 6:{c[K>>2]=6;break}case 7:{c[K>>2]=13;break}case 8:{c[K>>2]=11;break}case 9
:{c[K>>2]=5;break}case 10:{c[K>>2]=22;break}case 11:{c[K>>2]=24;break}case 13:{c[K>>2]=2
;break}case 14:{c[K>>2]=1;break}case 15:{c[K>>2]=26;break}case 21:{c[K>>2]=10;break}case 22:{c[K
x3e;>2]=7;break}case 30:{c[K>>2]=12;break}case 31:{c[K>>2]=8;break}case 12:{if((c[C>>2]|0)>
;>>0>(c[F>>2]|0)>>>0)break a;e=c[C>>2]|0;c[C>>2]=e+1;switch(d[e>
;>0]|0){case 0:{c[K>>2]=15;break b}case 1:{c[K>>2]=19;break b}case 2:{c[K>>2]=17;break b}case
6:{c[K>>2]=3;break b}case 7:{c[K>>2]=4;break b}case 12:{c[K>>2]=20;break b}case 16:{c[K>>
;2]=21;break b}case 17:{c[K>>2]=23;break b}case 33:{c[K>>2]=25;break b}default:break a}}case 255:{if(((c[C
x3e;>2]|0)+4|0)>>>0>(c[F>>2]|0)>>>0)break a;c[S>>2]=d[c[C>>
;2]>>0]<<24|d[(c[C>>2]|0)+1>>0]<<16|d[(c[C>>2]|0)+2>>0]<
;<8|d[(c[C>>2]|0)+3>>0];c[C>>2]=(c[C>>2]|0)+4;h=(a[E>>0]|0)!=0;if((c[S>
;>2]|0)>32e3|(c[S>>2]|0)<-32e3){if(h)break b;a[E>>0]=1;break b}else{if(h)break b;c[S>>
;2]=c[S>>2]<<16;break b}}default:{if((d[(c[C>>2]|0)+-1>>0]|0)<32)break a;h=c[C>
;>2]|0;do if((d[(c[C>>2]|0)+-1>>0]|0)>=247){e=h+1|0;c[C>>2]=e;if(e>>>0>
;(c[F>>2]|0)>>>0)break a;h=d[(c[C>>2]|0)+-2>>0]|0;if((d[(c[C>>2]|0)+-2>
;>0]|0)<251){c[S>>2]=(h-247<<8)+(d[(c[C>>2]|0)+-1>>0]|0)+108;break}else{c[S>
;>2]=0-((h-251<<8)+(d[(c[C>>2]|0)+-1>>0]|0)+108);break}}else c[S>>2]=(d[h+-1>
x3e;0]|0)-139;while(0);if(!(a[E>>0]|0))c[S>>2]=c[S>>2]<<16}}while(0);c:do if((c[R>
x3e;2]|0)>0){switch(c[K>>2]|0){case 23:case 0:case 24:case 22:break c;default:{}}c[R>>2]=0}while(0);if(!((
d[E>>0]|0)==0|(c[K>>2]|0)==0|(c[K>>2]|0)==20))a[E>>0]=0;if(!(c[K>>2]|0)){if((((
c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)>=256)break;g=c[S>>2]|0;e=c[Q>>2]|0;c[Q>
x3e;2]=e+4;c[e>>2]=g;c[(c[l>>2]|0)+1136>>2]=c[Q>>2];continue}if((c[K>>2]|0)==21
){if((((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)<2){X=188;break}c[Q>>2]=(c[Q>>2]|0)+-
8;c[O>>2]=c[(c[Q>>2]|0)+4>>2]>>16;c[n>>2]=c[c[Q>>2]>>2]>
;>16;if((c[n>>2]|0)>(((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)){X=188;break}c[Q>>
;2]=(c[Q>>2]|0)+(0-(c[n>>2]|0)<<2);c[D>>2]=0;c[R>>2]=0;do switch(c[O>>
;2]|0){case 1:{if(c[n>>2]|0)break a;c[(c[l>>2]|0)+1400>>2]=1;c[(c[l>>2]|0)+1404>>
;2]=0;e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}e=pq(c[s>
;>2]|0,6)|0;c[v>>2]=e;if(e|0){X=186;break a}break}case 2:{if(c[n>>2]|0)break a;g=(c[l>>2]|0)+
1404|0;e=c[g>>2]|0;c[g>>2]=e+1;c[x>>2]=e;if((c[x>>2]|0)>0&(c[x>>2]|0
)<7)qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,((c[x>>2]|0)==3?1:(c[x>>2]|0)==6)&
;1);break}case 0:{if((c[n>>2]|0)!=3)break a;if(!(c[(c[l>>2]|0)+1400>>2]|0))break a;if((c[(c[l>
;>2]|0)+1404>>2]|0)!=7)break a;c[c[Q>>2]>>2]=c[U>>2];c[(c[Q>>2]|0)+4>
;>2]=c[V>>2];c[D>>2]=2;break}case 3:{if((c[n>>2]|0)!=1)break a;c[D>>2]=1;if(c[w>
;>2]|0)Ra[c[(c[w>>2]|0)+20>>2]&7](c[c[w>>2]>>2]|0,b[(c[(c[s>>2]|0)+20
>>2]|0)+2>>1]|0);break}case 13:case 12:{c[Q>>2]=(c[l>>2]|0)+112;break}case 18:case 17:case
16:case 15:case 14:{c[o>>2]=c[(c[l>>2]|0)+1464>>2];if(!(c[o>>2]|0))break a;c[J>>
;2]=(c[O>>2]|0)-13+((c[O>>2]|0)==18&1);if((c[n>>2]|0)!=(_(c[J>>2]|0,c[c[o>>
;2]>>2]|0)|0))break a;c[t>>2]=(c[Q>>2]|0)+(c[J>>2]<<2);c[T>>2]=c[Q
x3e;>2];c[H>>2]=0;while(1){if((c[H>>2]|0)>>>0>=(c[J>>2]|0)>>>
;0)break;c[P>>2]=c[c[T>>2]>>2];c[G>>2]=1;while(1){if((c[G>>2]|0)>>
x3e;0>=(c[c[o>>2]>>2]|0)>>>0)break;e=c[t>>2]|0;c[t>>2]=e+4;e=Mb(c[e
x3e;>2]|0,c[(c[(c[o>>2]|0)+136>>2]|0)+(c[G>>2]<<2)>>2]|0)|0;c[P>>
;2]=(c[P>>2]|0)+e;c[G>>2]=(c[G>>2]|0)+1}g=c[P>>2]|0;e=c[T>>2]|0;c[T>>
;2]=e+4;c[e>>2]=g;c[H>>2]=(c[H>>2]|0)+1}c[D>>2]=c[J>>2];break}case 19:{c[p>
;>2]=c[(c[l>>2]|0)+1464>>2];if((c[n>>2]|0)!=1|(c[p>>2]|0)==0)break a;c[y>>
;2]=c[c[Q>>2]>>2]>>16;if((c[y>>2]|0)<0)break a;if(((c[y>>2]|0)+(c[c[p>
;>2]>>2]|0)|0)>>>0>(c[(c[l>>2]|0)+1492>>2]|0)>>>0)break a;
Ss((c[(c[l>>2]|0)+1488>>2]|0)+(c[y>>2]<<2)|0,c[(c[p>>2]|0)+136>>2]|0
,c[c[p>>2]>>2]<<2|0)|0;break}case 20:{if((c[n>>2]|0)!=2)break a;e=c[Q>>2]|0;c[
e>>2]=(c[e>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);c[D>>2]=1;break}case 21:{if((c[n>
;>2]|0)!=2)break a;e=c[Q>>2]|0;c[e>>2]=(c[e>>2]|0)-(c[(c[Q>>2]|0)+4>>2]|0
);c[D>>2]=1;break}case 22:{if((c[n>>2]|0)!=2)break a;e=Mb(c[c[Q>>2]>>2]|0,c[(c[Q>
x3e;2]|0)+4>>2]|0)|0;c[c[Q>>2]>>2]=e;c[D>>2]=1;break}case 23:{if((c[n>>2]|0)!=
2)break a;if(!(c[(c[Q>>2]|0)+4>>2]|0))break a;e=Vb(c[c[Q>>2]>>2]|0,c[(c[Q>>2]|
0)+4>>2]|0)|0;c[c[Q>>2]>>2]=e;c[D>>2]=1;break}case 24:{c[q>>2]=c[(c[l>>
;2]|0)+1464>>2];if((c[n>>2]|0)!=2|(c[q>>2]|0)==0)break a;c[z>>2]=c[(c[Q>>2]|0)+
4>>2]>>16;if((c[z>>2]|0)<0)break a;if((c[z>>2]|0)>>>0>=(c[(c[l
x3e;>2]|0)+1492>>2]|0)>>>0)break a;c[(c[(c[l>>2]|0)+1488>>2]|0)+(c[z>>
;2]<<2)>>2]=c[c[Q>>2]>>2];break}case 25:{c[r>>2]=c[(c[l>>2]|0)+1464
x3e;>2];if((c[n>>2]|0)!=1|(c[r>>2]|0)==0)break a;c[A>>2]=c[c[Q>>2]>>2]>
;>16;if((c[A>>2]|0)<0)break a;if((c[A>>2]|0)>>>0>=(c[(c[l>>2]|0)+1492
>>2]|0)>>>0)break a;c[c[Q>>2]>>2]=c[(c[(c[l>>2]|0)+1488>>2]|0)+(
c[A>>2]<<2)>>2];c[D>>2]=1;break}case 27:{if((c[n>>2]|0)!=4)break a;if((c[(c[Q
x3e;>2]|0)+8>>2]|0)>(c[(c[Q>>2]|0)+12>>2]|0))c[c[Q>>2]>>2]=c[(c[Q>
;>2]|0)+4>>2];c[D>>2]=1;break}case 28:{if(c[n>>2]|0)break a;c[m>>2]=c[N>>
2];if((c[m>>2]|0)>=32768)c[m>>2]=(c[m>>2]|0)+1;c[c[Q>>2]>>2]=c[m>>
;2];c[N>>2]=Mb(c[N>>2]|0,65536-(c[N>>2]|0)|0)|0;if(!(c[N>>2]|0))c[N>>2]=(c[N
x3e;>2]|0)+10355;c[D>>2]=1;break}default:c[R>>2]=c[n>>2]}while(0);c[Q>>2]=(c[Q>
;>2]|0)+(c[D>>2]<<2);c[(c[l>>2]|0)+1136>>2]=c[Q>>2];continue}c[I>>
;2]=c[4488+(c[K>>2]<<2)>>2];if((((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)<(
c[I>>2]|0)){X=188;break}c[Q>>2]=(c[Q>>2]|0)+(0-(c[I>>2]|0)<<2);d:do switch(c[K
>>2]|0){case 1:{X=121;break a}case 3:{X=127;break a}case 2:{c[(c[s>>2]|0)+64>>2]=1;e=(c[s>>
;2]|0)+32|0;c[e>>2]=(c[e>>2]|0)+(c[c[Q>>2]>>2]|0);c[(c[s>>2]|0)+40>>
2]=c[(c[Q>>2]|0)+4>>2];c[(c[s>>2]|0)+40+4>>2]=0;e=(c[(c[s>>2]|0)+24>>
;2]|0)+(c[c[Q>>2]>>2]|0)|0;c[U>>2]=e;c[L>>2]=e;e=c[(c[s>>2]|0)+28>>2
]|0;c[V>>2]=e;c[M>>2]=e;c[M>>2]=c[M>>2];if(a[(c[s>>2]|0)+70>>0]|0){X
=126;break a}break}case 4:{c[(c[s>>2]|0)+64>>2]=1;e=(c[s>>2]|0)+32|0;c[e>>2]=(c[e>
x3e;2]|0)+(c[c[Q>>2]>>2]|0);e=(c[s>>2]|0)+32+4|0;c[e>>2]=(c[e>>2]|0)+(c[(c[Q
x3e;>2]|0)+4>>2]|0);c[(c[s>>2]|0)+40>>2]=c[(c[Q>>2]|0)+8>>2];c[(c[s>
x3e;2]|0)+40+4>>2]=c[(c[Q>>2]|0)+12>>2];c[U>>2]=(c[(c[s>>2]|0)+24>>2
]|0)+(c[c[Q>>2]>>2]|0);c[V>>2]=(c[(c[s>>2]|0)+28>>2]|0)+(c[(c[Q>>2]|
0)+4>>2]|0);if(a[(c[s>>2]|0)+70>>0]|0){X=129;break a}break}case 5:{if(!((c[(c[s>>2]|0)+64
>>2]|0)!=3?(c[(c[s>>2]|0)+64>>2]|0)!=2:0))uq(c[s>>2]|0);c[(c[s>>2]|0)+64>
x3e;2]=1;break}case 6:{X=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=X;if(X|0){X=186;break
a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);X=144;break}case 7:{c[U>>2]=(c[U>
;>2]|0)+(c[c[Q>>2]>>2]|0);if(!(c[(c[l>>2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|
0)+64>>2]|0))break a;c[(c[s>>2]|0)+64>>2]=2}break}case 8:{e=tq(c[s>>2]|0,c[U>>
2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){
X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);qq(c[s>>2]|0,c[U>>
;2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);c[V>>
2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2
]|0,0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+12>>2]|0);qq(c[s>>2]|0,c[U>>
;2]|0,c[V>>2]|0,1);break}case 9:{X=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=
X;if(X|0){X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);c[V>>2]=(c[V>
;>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);X=144;break}case 10:{c[U>>2]=(c[U>>2]|0)+(c[c[Q>
;>2]>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);if(!(c[(c[l>
x3e;2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|0)+64>>2]|0))break a;c[(c[s>>2]|0)+64>>
2]=2}break}case 11:{e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break
a}e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>
x3e;2]>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);qq(c[s>>2]|
0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);
c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+12>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,
c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+16>>2]|0);c[V>>2]=(c
[V>>2]|0)+(c[(c[Q>>2]|0)+20>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,
1);break}case 12:{e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}
e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){X=186;break a}c[V>>2]=(c[V>>2]|0)+(c[c[Q>>
;2]>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(
c[(c[Q>>2]|0)+4>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);qq
(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+
12>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,1);break}case 13:{X=tq(c[s>>2]|0,c[
U>>2]|0,c[V>>2]|0)|0;c[v>>2]=X;if(X|0){X=186;break a}c[V>>2]=(c[V>>2]|0)+(c[c[
Q>>2]>>2]|0);X=144;break}case 14:{c[V>>2]=(c[V>>2]|0)+(c[c[Q>>2]>>2]|
0);if(!(c[(c[l>>2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|0)+64>>2]|0))break a;c[(c[s>>
;2]|0)+64>>2]=2}break}case 20:{e=Vb(c[c[Q>>2]>>2]|0,c[(c[Q>>2]|0)+4>>2]|0)|0;c
[c[Q>>2]>>2]=e;c[Q>>2]=(c[Q>>2]|0)+4;a[E>>0]=0;break}case 22:{c[B>>2
]=c[c[Q>>2]>>2]>>16;if((c[B>>2]|0)<0)break a;if((c[B>>2]|0)>=(c[(c[l
>>2]|0)+1364>>2]|0))break a;if((((c[W>>2]|0)-((c[l>>2]|0)+1140)|0)/12|0|0)>=16)break
a;c[c[W>>2]>>2]=c[C>>2];c[W>>2]=(c[W>>2]|0)+12;c[(c[W>>2]|0)+4>
;>2]=c[(c[(c[l>>2]|0)+1368>>2]|0)+(c[B>>2]<<2)>>2];if(c[(c[l>>2
]|0)+1372>>2]|0)c[(c[W>>2]|0)+8>>2]=(c[(c[W>>2]|0)+4>>2]|0)+(c[(c[(c[l>
x3e;2]|0)+1372>>2]|0)+(c[B>>2]<<2)>>2]|0);else{if((c[(c[l>>2]|0)+1360>>
;2]|0)>=0)h=c[(c[l>>2]|0)+1360>>2]|0;else h=0;e=(c[W>>2]|0)+4|0;c[e>>2]=(c[e>
x3e;2]|0)+h;c[(c[W>>2]|0)+8>>2]=c[(c[(c[l>>2]|0)+1368>>2]|0)+((c[B>>2]|0)+1<
;<2)>>2]}c[c[W>>2]>>2]=c[(c[W>>2]|0)+4>>2];if(!(c[(c[W>>2]|0)+4
>>2]|0))break a;c[(c[l>>2]|0)+1344>>2]=c[W>>2];c[C>>2]=c[(c[W>>2]|0)+
4>>2];c[F>>2]=c[(c[W>>2]|0)+8>>2];break}case 23:{if((c[D>>2]|0)>0){c[D>
;>2]=(c[D>>2]|0)+-1;break d}if(!(c[R>>2]|0))break a;c[R>>2]=(c[R>>2]|0)+-1;c[Q>
;>2]=(c[Q>>2]|0)+4;break}case 24:{if((c[W>>2]|0)>>>0<=((c[l>>2]|0)+1140|0
)>>>0)break a;c[W>>2]=(c[W>>2]|0)+-12;c[C>>2]=c[c[W>>2]>>2];c[F
>>2]=c[(c[W>>2]|0)+8>>2];c[(c[l>>2]|0)+1344>>2]=c[W>>2];break}case 26
:case 15:break;case 16:{if(c[w>>2]|0)Ua[c[(c[w>>2]|0)+12>>2]&31](c[c[w>>2]>>
;2]|0,1,c[Q>>2]|0);break}case 17:{if(c[w>>2]|0)Ua[c[(c[w>>2]|0)+16>>2]&31](c[c[w>
;>2]>>2]|0,1,c[Q>>2]|0);break}case 18:{if(c[w>>2]|0){e=c[Q>>2]|0;c[e>>2]=(
c[e>>2]|0)+(c[L>>2]|0);Ua[c[(c[w>>2]|0)+12>>2]&31](c[c[w>>2]>>2
]|0,0,c[Q>>2]|0)}break}case 19:{if(c[w>>2]|0){c[u>>2]=c[L>>2];e=c[Q>>2]|0;c[e
x3e;>2]=(c[e>>2]|0)+(c[u>>2]|0);e=(c[Q>>2]|0)+8|0;c[e>>2]=(c[e>>2]|0)+(c[
u>>2]|0);e=(c[Q>>2]|0)+16|0;c[e>>2]=(c[e>>2]|0)+(c[u>>2]|0);Ua[c[(c[w>>
;2]|0)+16>>2]&31](c[c[w>>2]>>2]|0,0,c[Q>>2]|0)}break}case 25:{c[U>>2]=c[c
[Q>>2]>>2];c[V>>2]=c[(c[Q>>2]|0)+4>>2];c[(c[l>>2]|0)+1400>>
;2]=0;break}default:break a}while(0);if((X|0)==144?(X=0,e=rq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0,c[v
x3e;>2]=e,e|0):0){X=186;break}c[(c[l>>2]|0)+1136>>2]=c[Q>>2]}do if((X|0)==121){uq(c[s>
x3e;2]|0);if(c[w>>2]|0){if(Ya[c[(c[w>>2]|0)+8>>2]&127](c[c[w>>2]>>2]|0,b[(
c[(c[s>>2]|0)+20>>2]|0)+2>>1]|0)|0)break;Wa[c[(c[w>>2]|0)+24>>2]&31](c[c[
w>>2]>>2]|0,c[(c[s>>2]|0)+20>>2]|0,c[(c[s>>2]|0)+76>>2]|0,c[(c[l>
;>2]|0)+1468>>2]|0)|0}oc(c[(c[s>>2]|0)+12>>2]|0);c[k>>2]=0;X=c[k>>2]|0;i=
Y;return X|0}else if((X|0)==126){c[k>>2]=0;X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==127){c[k>>2]=
yq(c[l>>2]|0,c[c[Q>>2]>>2]|0,c[(c[Q>>2]|0)+4>>2]|0,c[(c[Q>>2]|0)+8
x3e;>2]|0,c[(c[Q>>2]|0)+12>>2]>>16,c[(c[Q>>2]|0)+16>>2]>>16)|0;
X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==129){c[k>>2]=0;X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==
186){c[k>>2]=c[v>>2];X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==188){c[k>>2]=161;X=c[k>
;>2]|0;i=Y;return X|0}while(0);c[k>>2]=160;X=c[k>>2]|0;i=Y;return X|0}function yq(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;A=i;i=i+80|0;n=A+68|0;o=A+64
|0;p=A+60|0;q=A+56|0;r=A+52|0;k=A+48|0;l=A+44|0;v=A+40|0;u=A+36|0;s=A+32|0;x=A+24|0;t=A+16|0;m=A+12|0;w=A+8|0;y=A+4|0;z=A;c[o>
;>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[k>>2]=h;c[l>>2]=j;c[m>>2
]=c[(c[o>>2]|0)+4>>2];if(a[(c[o>>2]|0)+1496>>0]|0){c[n>>2]=160;z=c[n>>
;2]|0;i=A;return z|0}c[q>>2]=(c[q>>2]|0)+(c[(c[o>>2]|0)+32>>2]|0);if((c[(c[o>>
2]|0)+1356>>2]|0)==0?(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)==0:0){c[n>>2]=160;
z=c[n>>2]|0;i=A;return z|0}if(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0){c[u>>2]=c[
k>>2];c[s>>2]=c[l>>2]}else{c[u>>2]=zq(c[o>>2]|0,c[k>>2]|0)|0;c[s>
;>2]=zq(c[o>>2]|0,c[l>>2]|0)|0}if((c[u>>2]|0)<0|(c[s>>2]|0)<0){c[n>
x3e;2]=160;z=c[n>>2]|0;i=A;return z|0}k=c[o>>2]|0;if(a[(c[o>>2]|0)+69>>0]|0){c[w>
x3e;2]=c[k+8>>2];c[y>>2]=c[c[(c[w>>2]|0)+156>>2]>>2];c[v>>2]=lc(c[y
x3e;>2]|0,2)|0;if(!(c[v>>2]|0)){c[z>>2]=c[(c[y>>2]|0)+56+32>>2];c[c[z>>2]
x3e;>2]=c[u>>2];b[(c[z>>2]|0)+4>>1]=514;c[(c[z>>2]|0)+8>>2]=0;c[(c[z>
;>2]|0)+12>>2]=0;c[z>>2]=(c[z>>2]|0)+32;c[c[z>>2]>>2]=c[s>>2];b
[(c[z>>2]|0)+4>>1]=2;x=(Tb((c[q>>2]|0)-(c[p>>2]|0)|0)|0)>>16;c[(c[z>>
;2]|0)+8>>2]=x;x=(Tb(c[r>>2]|0)|0)>>16;c[(c[z>>2]|0)+12>>2]=x;c[(c[w>>
;2]|0)+128>>2]=2;c[(c[w>>2]|0)+132>>2]=c[(c[y>>2]|0)+20+32>>2];c[(c[w>>
;2]|0)+72>>2]=1668246896;c[(c[y>>2]|0)+56+28>>2]=2}}else{nc(c[k+12>>2]|0);a[(c[o>
x3e;2]|0)+1496>>0]=1;c[v>>2]=Aq(c[o>>2]|0,c[u>>2]|0)|0;a[(c[o>>2]|0)+1496>
;>0]=0;if((c[v>>2]|0)==0?(z=(c[o>>2]|0)+32|0,c[x>>2]=c[z>>2],c[x+4>>2]=c[
z+4>>2],z=(c[o>>2]|0)+40|0,c[t>>2]=c[z>>2],c[t+4>>2]=c[z+4>>2],c[(c[
o>>2]|0)+32>>2]=0,c[(c[o>>2]|0)+32+4>>2]=0,c[(c[o>>2]|0)+24>>2]=(c[q
>>2]|0)-(c[p>>2]|0),c[(c[o>>2]|0)+28>>2]=c[r>>2],a[(c[o>>2]|0)+1496
x3e;>0]=1,c[v>>2]=Aq(c[o>>2]|0,c[s>>2]|0)|0,a[(c[o>>2]|0)+1496>>0]=0,(c[v
>>2]|0)==0):0){z=(c[o>>2]|0)+32|0;c[z>>2]=c[x>>2];c[z+4>>2]=c[x+4>>2
];z=(c[o>>2]|0)+40|0;c[z>>2]=c[t>>2];c[z+4>>2]=c[t+4>>2];c[(c[o>>2]|
0)+24>>2]=0;c[(c[o>>2]|0)+28>>2]=0}}c[n>>2]=c[v>>2];z=c[n>>2]|0;i=A;
return z|0}function zq(b,d){b=b|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;l=n+24|0;f=n+20|0;g=n+16|0;m=n+12|0;h=n
+8|0;k=n+4|0;j=n;c[f>>2]=b;c[g>>2]=d;c[k>>2]=c[(c[f>>2]|0)+1348>>2];if((c[g>
;>2]|0)<0|(c[g>>2]|0)>255){c[l>>2]=-1;m=c[l>>2]|0;i=n;return m|0}c[h>>2]=
Ta[c[(c[k>>2]|0)+20>>2]&63](e[(c[(c[k>>2]|0)+24>>2]|0)+(c[g>>2]<<
;1)>>1]|0)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[(c[f>>2]|0)+1352
>>2]|0)>>>0){f=10;break}c[j>>2]=c[(c[(c[f>>2]|0)+1356>>2]|0)+(c[m>
x3e;2]<<2)>>2];if((c[j>>2]|0?(a[c[j>>2]>>0]|0)==(a[c[h>>2]>>
;0]|0):0)?(Kr(c[j>>2]|0,c[h>>2]|0)|0)==0:0){f=8;break}c[m>>2]=(c[m>>2]|0)+1}if((f|0)==8){
c[l>>2]=c[m>>2];m=c[l>>2]|0;i=n;return m|0}else if((f|0)==10){c[l>>2]=-1;m=c[l>>
;2]|0;i=n;return m|0}return 0}function Aq(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=Ya[c[(c[f>>2]|0)+1472>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return b|0}
function Bq(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|
0;k=n+8|0;m=n+4|0;l=n;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=0;c[m>
;>2]=bc(c[h>>2]|0,16,l)|0;if(c[l>>2]|0){c[f>>2]=c[l>>2];m=c[f>>2]|0;i=n;return
m|0}else{a=c[j>>2]|0;c[(c[m>>2]|0)+4>>2]=a;c[c[m>>2]>>2]=a;c[(c[m>>
2]|0)+8>>2]=c[k>>2];c[(c[m>>2]|0)+12>>2]=2;c[c[g>>2]>>2]=c[h>
x3e;2];c[(c[g>>2]|0)+4>>2]=c[m>>2];c[(c[g>>2]|0)+8>>2]=0;c[(c[g>>2]|
0)+12>>2]=0;c[f>>2]=0;m=c[f>>2]|0;i=n;return m|0}return 0}function Cq(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];Fb(c[e>>2]|0,c[(c[d>
;>2]|0)+4>>2]|0);c[(c[d>>2]|0)+4>>2]=0;i=b;return}function Dq(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;o=i;i=i+80|0;j=o+68|0;k=o+64|0;n=o+60|0;m=o+56|0;l=o+52|0;d=o+48|0;e=o+44|0;f=o+40|0;h=o+8|0;g=o;c[k
x3e;>2]=b;c[n>>2]=c[c[k>>2]>>2];c[m>>2]=c[(c[k>>2]|0)+8>>2];c[l
>>2]=160;c[f>>2]=0;if(!(c[m>>2]|0)){c[j>>2]=6;n=c[j>>2]|0;i=o;return n|0}c[d
x3e;>2]=Eq(c[k>>2]|0,1,e)|0;if(!((c[d>>2]|0)==0|(c[e>>2]|0)!=16)?(Lr(c[d>>2]|0,11707
,16)|0)==0:0){a:while(1){b=Eq(c[k>>2]|0,1,e)|0;c[d>>2]=b;if(!b){d=24;break}switch(Iq(c[d>>2]|0,c[e
>>2]|0)|0){case 49:{d=22;break a}case 20:{d=23;break a}case 40:{if(Jq(c[k>>2]|0,f)|0){d=24;break a}if((c[f
x3e;>2]|0)!=0&(c[f>>2]|0)!=2){d=10;break a}else continue a}case 30:{c[h>>2]=4;if((Kq(c[k>>
;2]|0,h,1)|0)!=1){d=24;break a}a[c[m>>2]>>0]=a[h+4>>0]|0;continue a}case 26:{c[h>>2]=2;c
[h+8>>2]=2;c[h+16>>2]=2;c[h+24>>2]=2;if((Kq(c[k>>2]|0,h,4)|0)!=4){d=24;break a}c[(c[m>
;>2]|0)+4>>2]=c[h+4>>2];c[(c[m>>2]|0)+4+4>>2]=c[h+8+4>>2];c[(c[m>>
;2]|0)+4+8>>2]=c[h+16+4>>2];c[(c[m>>2]|0)+4+12>>2]=c[h+24+4>>2];continue a}case
0:{c[h>>2]=2;if((Kq(c[k>>2]|0,h,1)|0)!=1){d=24;break a}c[(c[m>>2]|0)+20>>2]=c[h+4>
x3e;2];continue a}case 14:{c[h>>2]=2;if((Kq(c[k>>2]|0,h,1)|0)!=1){d=24;break a}c[(c[m>>2]|0)+24>
;>2]=c[h+4>>2];continue a}case 45:{c[g>>2]=0;if(Jq(c[k>>2]|0,g)|0){d=24;break a}c[l>>
;2]=Lq(c[k>>2]|0,c[g>>2]|0,17)|0;if(c[l>>2]|0){d=21;break a}else continue a}default:continue a}}if
((d|0)==10){c[l>>2]=7;d=24}else if((d|0)==21){c[j>>2]=c[l>>2];n=c[j>>2]|0;i=o;return n|0
}else if((d|0)==22){c[l>>2]=Mq(c[k>>2]|0)|0;if(c[l>>2]|0)d=24;else d=23}if((d|0)==23){c[j>>
;2]=0;n=c[j>>2]|0;i=o;return n|0}else if((d|0)==24){Fb(c[n>>2]|0,c[(c[m>>2]|0)+28>>2]|0);
c[(c[m>>2]|0)+28>>2]=0;c[(c[m>>2]|0)+32>>2]=0;Fb(c[n>>2]|0,c[(c[m>>2
]|0)+36>>2]|0);c[(c[m>>2]|0)+36>>2]=0;c[(c[m>>2]|0)+40>>2]=0;a[c[m>>
2]>>0]=0;c[j>>2]=c[l>>2];n=c[j>>2]|0;i=o;return n|0}}c[j>>2]=2;n=c[j>>
;2]|0;i=o;return n|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,l=0;j=i;i=i+32|0;l=j+12|0;k=j+16|0;g=j+8|0;f=j
+4|0;h=j;c[l>>2]=b;a[k>>0]=d;c[g>>2]=e;c[f>>2]=c[(c[l>>2]|0)+4>>2];c
[h>>2]=0;a:do if(a[k>>0]|0)do{if((c[(c[f>>2]|0)+12>>2]|0)<2)Fq(c[f>>2]|0)|
0;c[(c[f>>2]|0)+12>>2]=0;c[h>>2]=Hq(c[f>>2]|0)|0;if(c[h>>2]|0)break a;if((c[(c
[f>>2]|0)+12>>2]|0)>=3)break a}while((c[(c[f>>2]|0)+12>>2]|0)>=2);else while(1
){e=c[f>>2]|0;if((c[(c[f>>2]|0)+12>>2]|0)>=1^1){Hq(e)|0;continue}c[e+12>>2]=0;c[h
x3e;>2]=Hq(c[f>>2]|0)|0;if(c[h>>2]|0)break a;if((c[(c[f>>2]|0)+12>>2]|0)>=3)break
a;if((c[(c[f>>2]|0)+12>>2]|0)<1)break}while(0);if(!(c[g>>2]|0)){l=c[h>>2]|0;i=j;return
l|0}if(c[h>>2]|0)e=(c[c[f>>2]>>2]|0)-(c[h>>2]|0)-1|0;else e=0;c[c[g>>2]>
x3e;2]=e;l=c[h>>2]|0;i=j;return l|0}function Fq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;f=h+8|0;g=h
+4|0;b=h;c[f>>2]=a;Gq(c[f>>2]|0)|0;if((c[(c[f>>2]|0)+12>>2]|0)>=2){c[e>>2
]=0;g=c[e>>2]|0;i=h;return g|0}c[g>>2]=(c[c[f>>2]>>2]|0)+-1;while(1){if((c[c[f>>
;2]>>2]|0)>>>0<(c[(c[f>>2]|0)+8>>2]|0)>>>0){j=c[f>>2]|
0;a=c[j>>2]|0;c[j>>2]=a+1;a=d[a>>0]|0}else a=-1;c[b>>2]=a;if((c[b>>2]|0)==13|(
c[b>>2]|0)==10){a=7;break}if((c[b>>2]|0)==-1|(c[b>>2]|0)==26){a=9;break}}if((a|0)==7)c[(c[f>
x3e;2]|0)+12>>2]=2;else if((a|0)==9)c[(c[f>>2]|0)+12>>2]=3;c[e>>2]=c[g>>2];j=c
[e>>2]|0;i=h;return j|0}function Gq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;b=g+8|0;e=g+4|0;f=g;c[e>>2
]=a;c[f>>2]=0;if((c[(c[e>>2]|0)+12>>2]|0)>=1){c[b>>2]=59;f=c[b>>2]|0;i=g;
return f|0}do{if((c[c[e>>2]>>2]|0)>>>0<(c[(c[e>>2]|0)+8>>2]|0)>
x3e;>0){h=c[e>>2]|0;a=c[h>>2]|0;c[h>>2]=a+1;a=d[a>>0]|0}else a=-1;c[f>>2]=
a}while((c[f>>2]|0)==32|(c[f>>2]|0)==9);do if(!((c[f>>2]|0)==13|(c[f>>2]|0)==10)){if((c[
f>>2]|0)==59){c[(c[e>>2]|0)+12>>2]=1;break}if((c[f>>2]|0)==-1|(c[f>>2]|0)==26)
c[(c[e>>2]|0)+12>>2]=3}else c[(c[e>>2]|0)+12>>2]=2;while(0);c[b>>2]=c[f>
x3e;2];h=c[b>>2]|0;i=g;return h|0}function Hq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;b=j+12|0;e=j+8|0;g
=j+4|0;f=j;c[e>>2]=a;Gq(c[e>>2]|0)|0;if((c[(c[e>>2]|0)+12>>2]|0)>=1){c[b>>
;2]=0;h=c[b>>2]|0;i=j;return h|0}c[g>>2]=(c[c[e>>2]>>2]|0)+-1;while(1){if((c[c[e>
x3e;2]>>2]|0)>>>0<(c[(c[e>>2]|0)+8>>2]|0)>>>0){k=c[e>>
;2]|0;a=c[k>>2]|0;c[k>>2]=a+1;a=d[a>>0]|0}else a=-1;c[f>>2]=a;if((c[f>>2]|0)==
32|(c[f>>2]|0)==9)break;if((c[f>>2]|0)==13|(c[f>>2]|0)==10){h=8;break}if((c[f>>2]|0)==59
){h=10;break}if((c[f>>2]|0)==-1|(c[f>>2]|0)==26){h=12;break}}if((h|0)==8)c[(c[e>>2]|0)+12>>
;2]=2;else if((h|0)==10)c[(c[e>>2]|0)+12>>2]=1;else if((h|0)==12)c[(c[e>>2]|0)+12>>2]=3;
c[b>>2]=c[g>>2];k=c[b>>2]|0;i=j;return k|0}function Iq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=
i;i=i+16|0;h=j+12|0;e=j+8|0;f=j+4|0;g=j;c[e>>2]=b;c[f>>2]=d;c[g>>2]=0;a:while(1){if((c[g>>
;2]|0)>=74){b=10;break}if((c[g>>2]|0)<74?(a[c[4608+(c[g>>2]<<2)>>2]>>
;0]|0)==(a[c[e>>2]>>0]|0):0)do{if((a[c[4608+(c[g>>2]<<2)>>2]>>0]|0)!=(
a[c[e>>2]>>0]|0)){b=5;break a}b=(Lr(c[4608+(c[g>>2]<<2)>>2]|0,c[e>>2
]|0,c[f>>2]|0)|0)==0;d=c[g>>2]|0;if(b){b=7;break a}c[g>>2]=d+1}while((c[g>>2]|0)<74
);c[g>>2]=(c[g>>2]|0)+1}if((b|0)==5){c[h>>2]=75;h=c[h>>2]|0;i=j;return h|0}else if((b|0)==
7){c[h>>2]=d;h=c[h>>2]|0;i=j;return h|0}else if((b|0)==10){c[h>>2]=75;h=c[h>>2]|0;i=j;return
h|0}return 0}function Jq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+32|0;d=g+16|0;h=g+12|0;e=g+8|0;f=g;c[h>>2]=
a;c[e>>2]=b;c[f>>2]=3;if((Kq(c[h>>2]|0,f,1)|0)==1){c[c[e>>2]>>2]=c[f+4>
x3e;2];c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}else{c[d>>2]=160;h=c[d>>2]|0;i=g;return h|0}
return 0}function Kq(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;r=i;i=i+48|0;f=r+40|0;g=r+36|0
;h=r+32|0;j=r+28|0;p=r+24|0;o=r+20|0;l=r+16|0;m=r+12|0;q=r+8|0;n=r+4|0;k=r;c[g>>2]=b;c[h>>2]=d;c[j>>
;2]=e;c[p>>2]=c[(c[g>>2]|0)+4>>2];if((c[j>>2]|0)>>>0>5){c[f>>
;2]=0;q=c[f>>2]|0;i=r;return q|0}c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[j
x3e;>2]|0)>>>0)break;c[q>>2]=(c[h>>2]|0)+(c[l>>2]<<3);e=c[p>>
;2]|0;if(!(c[c[q>>2]>>2]|0))c[o>>2]=Fq(e)|0;else c[o>>2]=Hq(e)|0;if(!(c[o>>2]|
0))break;c[m>>2]=(c[c[p>>2]>>2]|0)-(c[o>>2]|0)-1;a:do switch(c[c[q>>2]>
x3e;2]|0){case 1:case 0:{c[n>>2]=c[c[g>>2]>>2];d=cc(c[n>>2]|0,(c[m>>2]|0)+1|0,
k)|0;c[(c[q>>2]|0)+4>>2]=d;if(!(c[k>>2]|0)){Ss(c[(c[q>>2]|0)+4>>2]|0,c[o>
x3e;2]|0,c[m>>2]|0)|0;a[(c[(c[q>>2]|0)+4>>2]|0)+(c[m>>2]|0)>>0]=0}break}case 2
:{d=bq(o,(c[o>>2]|0)+(c[m>>2]|0)|0,0)|0;c[(c[q>>2]|0)+4>>2]=d;break}case 3:{d=_p(o,(c[o
x3e;>2]|0)+(c[m>>2]|0)|0)|0;c[(c[q>>2]|0)+4>>2]=d;break}case 4:{if((c[m>>2]|0)==4)e
=(Lr(c[o>>2]|0,12412,4)|0)!=0^1;else e=0;a[(c[q>>2]|0)+4>>0]=e&1;break}case 5:if(c[(c[g>
x3e;2]|0)+12>>2]|0){d=Oa[c[(c[g>>2]|0)+12>>2]&63](c[o>>2]|0,c[m>>2]|0,c[(
c[g>>2]|0)+16>>2]|0)|0;c[(c[q>>2]|0)+4>>2]=d;break a}else{c[(c[q>>2]|0)+4>
;>2]=0;break a}default:{}}while(0);c[l>>2]=(c[l>>2]|0)+1}c[f>>2]=c[l>>2];q=c[f>
;>2]|0;i=r;return q|0}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,l=0,m=0,n=0;n=i;i=i+32|0;e=n+24|0;f=
n+20|0;g=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;l=n;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;do{a=c[g>>2]|
0;c[g>>2]=a+-1;if(a>>>0<=0){m=4;break}c[j>>2]=Eq(c[f>>2]|0,1,0)|0}while((c[j
x3e;>2]|0)!=0);a:do if((m|0)==4){while(1){m=Eq(c[f>>2]|0,1,k)|0;c[j>>2]=m;if(!m)break a;c[l>>
2]=Iq(c[j>>2]|0,c[k>>2]|0)|0;if((c[l>>2]|0)==20?1:(c[l>>2]|0)==(c[h>>2]|0))break
;else m=4}c[e>>2]=0;m=c[e>>2]|0;i=n;return m|0}while(0);c[e>>2]=160;m=c[e>>2]|0;i=n;return
m|0}function Mq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;f=h+16|0;b=h+12|0;g=h+8|0;d=h+4|0;e=h;c[b>>2]=a;a:while
(1){a=Eq(c[b>>2]|0,1,e)|0;c[d>>2]=a;if(!a){b=9;break}switch(Iq(c[d>>2]|0,c[e>>2]|0)|0){case
75:continue a;case 20:case 21:{b=8;break a}case 53:{c[g>>2]=Nq(c[b>>2]|0)|0;if(c[g>>2]|0){b=5;break
a}else continue a}case 51:case 50:{c[g>>2]=Oq(c[b>>2]|0)|0;if(c[g>>2]|0){b=7;break a}else continue
a}default:{b=9;break a}}}if((b|0)==5)c[f>>2]=c[g>>2];else if((b|0)==7)c[f>>2]=c[g>>2];else
if((b|0)==8)c[f>>2]=0;else if((b|0)==9)c[f>>2]=160;i=h;return c[f>>2]|0}function Nq(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;n=i;i=i+80|0;b=n+72|0;d=n+68|0;f=n+64|0;m=n+60|0;g=n+56|0;h=n+52|0;k=n+48|0;j=n+44|0
;e=n+40|0;l=n;c[d>>2]=a;c[f>>2]=c[(c[d>>2]|0)+8>>2];c[k>>2]=-1;a:do if(!(Jq(c[
d>>2]|0,(c[f>>2]|0)+32|0)|0)){if(c[(c[f>>2]|0)+32>>2]|0?(c[j>>2]=c[c[d>
x3e;2]>>2],a=hc(c[j>>2]|0,20,0,c[(c[f>>2]|0)+32>>2]|0,0,e)|0,c[(c[f>>2]|0)+28
x3e;>2]=a,c[e>>2]|0):0){c[b>>2]=c[e>>2];m=c[b>>2]|0;i=n;return m|0}b:while(1){a=Eq(
c[d>>2]|0,1,h)|0;c[g>>2]=a;if(!a)break a;switch(Iq(c[g>>2]|0,c[h>>2]|0)|0){case 75:continue
b;case 20:case 21:case 23:break b;case 56:break;default:break a}c[k>>2]=(c[k>>2]|0)+1;if((c[k>>2]|
0)>=(c[(c[f>>2]|0)+32>>2]|0))break a;c[m>>2]=(c[(c[f>>2]|0)+28>>2]|0)+((c
[k>>2]|0)*20|0);c[l>>2]=3;c[l+8>>2]=2;c[l+16>>2]=2;c[l+24>>2]=2;c[l+32>
x3e;2]=2;if((Kq(c[d>>2]|0,l,5)|0)!=5)break a;c[c[m>>2]>>2]=c[l+4>>2];c[(c[m>>2
]|0)+4>>2]=c[l+8+4>>2];c[(c[m>>2]|0)+8>>2]=c[l+16+4>>2];c[(c[m>>2]|0
)+12>>2]=c[l+24+4>>2];c[(c[m>>2]|0)+16>>2]=c[l+32+4>>2];if((c[c[m>>2
]>>2]|0)>=0)continue;if((c[(c[m>>2]|0)+8>>2]|0)<=0)continue;c[(c[m>>2]|0)+8>
;>2]=0-(c[(c[m>>2]|0)+8>>2]|0)}c[(c[f>>2]|0)+32>>2]=(c[k>>2]|0)+1;c[b>
;>2]=0;m=c[b>>2]|0;i=n;return m|0}while(0);c[b>>2]=160;m=c[b>>2]|0;i=n;return m|0}function Oq
(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;p=i;i=i+80|0;e=p+72|0;f=p+68|0;g=p+64|0;j=p+60|0;h=p+56|0;k=p+
52|0;l=p+48|0;d=p+44|0;b=p+40|0;o=p+36|0;m=p+32|0;n=p;c[f>>2]=a;c[g>>2]=c[(c[f>>2]|0)+8>>
;2];c[l>>2]=-1;a:do if(!(Jq(c[f>>2]|0,(c[g>>2]|0)+40|0)|0)){if(c[(c[g>>2]|0)+40>>
;2]|0?(c[d>>2]=c[c[f>>2]>>2],a=hc(c[d>>2]|0,16,0,c[(c[g>>2]|0)+40>>2
]|0,0,b)|0,c[(c[g>>2]|0)+36>>2]=a,c[b>>2]|0):0){c[e>>2]=c[b>>2];o=c[e>>
;2]|0;i=p;return o|0}b:while(1){a=Eq(c[f>>2]|0,1,k)|0;c[h>>2]=a;if(!a)break a;c[o>>2]=Iq(c[h>
x3e;2]|0,c[k>>2]|0)|0;switch(c[o>>2]|0){case 75:continue b;case 20:case 21:case 22:break b;case 37:case 36:case
34:break;default:break a}c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)>=(c[(c[g>>2]|0)+40
x3e;>2]|0))break a;c[j>>2]=(c[(c[g>>2]|0)+36>>2]|0)+(c[l>>2]<<4);c[n>
;>2]=5;c[n+8>>2]=5;c[n+16>>2]=3;c[n+24>>2]=3;c[m>>2]=Kq(c[f>>2]|0,n,4)|0;
if((c[m>>2]|0)<3)break a;c[c[j>>2]>>2]=c[n+4>>2];c[(c[j>>2]|0)+4>>
;2]=c[n+8+4>>2];if((c[o>>2]|0)==37){c[(c[j>>2]|0)+8>>2]=0;c[(c[j>>2]|0)+12>
;>2]=c[n+16+4>>2];continue}c[(c[j>>2]|0)+8>>2]=c[n+16+4>>2];if((c[o>>2]|0
)==34&(c[m>>2]|0)==4)b=c[n+24+4>>2]|0;else b=0;c[(c[j>>2]|0)+12>>2]=b}c[(c[g>
x3e;2]|0)+40>>2]=(c[l>>2]|0)+1;Bs(c[(c[g>>2]|0)+36>>2]|0,c[(c[g>>2]|0)+40>
;>2]|0,16,109);c[e>>2]=0;o=c[e>>2]|0;i=p;return o|0}while(0);c[e>>2]=160;o=c[e>>2]|
0;i=p;return o|0}function Pq(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;g=i;i=i+32|0;d=g+24|0;l=g+20|0;k=g+16|0;j=g+12
|0;h=g+8|0;e=g+4|0;f=g;c[l>>2]=a;c[k>>2]=b;c[j>>2]=c[l>>2];c[h>>2]=c[k>
x3e;2];c[e>>2]=c[c[j>>2]>>2]<<16|c[(c[j>>2]|0)+4>>2];c[f>>
2]=c[c[h>>2]>>2]<<16|c[(c[h>>2]|0)+4>>2];if((c[e>>2]|0)>>
x3e;0>(c[f>>2]|0)>>>0){c[d>>2]=1;l=c[d>>2]|0;i=g;return l|0}if((c[e>>
;2]|0)>>>0<(c[f>>2]|0)>>>0){c[d>>2]=-1;l=c[d>>2]|0;i=g;return l
|0}else{c[d>>2]=0;l=c[d>>2]|0;i=g;return l|0}return 0}function Qq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d
x3e;>2]=a;Rq(c[d>>2]|0,0);i=b;return 0}function Rq(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[d>>2]=a;c[f>>2]=b;c[h>>2]=c[c[d>>2]>>2];c[g>>
2]=c[(c[h>>2]|0)+484>>2];c[(c[d>>2]|0)+24>>2]=c[(c[h>>2]|0)+132+284>>
;2];c[(c[d>>2]|0)+28>>2]=c[(c[h>>2]|0)+132+288>>2];c[(c[d>>2]|0)+20>>
;2]=c[(c[g>>2]|0)+20>>2];a=c[g>>2]|0;if(c[f>>2]|0){g=c[a+28>>2]|0;h=c[d>
x3e;2]|0;h=h+16|0;c[h>>2]=g;i=e;return}else{g=c[a+24>>2]|0;h=c[d>>2]|0;h=h+16|0;c[h>>2]=
g;i=e;return}}function Sq(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)+24>>2]=0;c
[(c[d>>2]|0)+28>>2]=0;c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>2]=0;
i=b;return}function Tq(b,d){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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;m=o+16|0;h=o+12|0
;l=o+8|0;j=o+4|0;k=o;c[f>>2]=b;c[g>>2]=d;c[m>>2]=0;if((c[g>>2]|0)>>>0>
;=256){n=c[m>>2]|0;i=o;return n|0}c[h>>2]=e[(c[(c[f>>2]|0)+16>>2]|0)+(c[g>>2]
x3c;<1)>>1];c[j>>2]=Ta[c[(c[f>>2]|0)+20>>2]&63](c[h>>2]|0)|0;c[l>
;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[(c[f>>2]|0)+24>>2]|0)>>
x3e;0){n=9;break}c[k>>2]=c[(c[(c[f>>2]|0)+28>>2]|0)+(c[l>>2]<<2)>>2];
if((c[k>>2]|0?(a[c[k>>2]>>0]|0)==(a[c[j>>2]>>0]|0):0)?(Kr(c[k>>2]|0,
c[j>>2]|0)|0)==0:0)break;c[l>>2]=(c[l>>2]|0)+1}if((n|0)==9){n=c[m>>2]|0;i=o;return n|0}c
[m>>2]=c[l>>2];n=c[m>>2]|0;i=o;return n|0}function Uq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0
;j=i;i=i+16|0;d=j+12|0;e=j+8|0;g=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[f>>2]=(c[c[e
x3e;>2]>>2]|0)+1;while(1){if((c[f>>2]|0)>>>0>=256)break;c[g>>2]=Tq(c[d>
;>2]|0,c[f>>2]|0)|0;if(c[g>>2]|0){h=6;break}c[f>>2]=(c[f>>2]|0)+1}if((h|0)==6){b=c[
f>>2]|0;h=c[e>>2]|0;c[h>>2]=b;h=c[g>>2]|0;i=j;return h|0}c[f>>2]=0;b=c[f>
x3e;2]|0;h=c[e>>2]|0;c[h>>2]=b;h=c[g>>2]|0;i=j;return h|0}function Vq(a){a=a|0;var b=0,d=0;b=i;i=i
+16|0;d=b;c[d>>2]=a;Rq(c[d>>2]|0,1);i=b;return 0}function Wq(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]=c[c[d>>2]>>2];c[e>>2]=(c[f>>2]|0)+132
+240;c[(c[d>>2]|0)+16>>2]=c[(c[e>>2]|0)+4>>2];c[(c[d>>2]|0)+20>>2]=(
c[(c[e>>2]|0)+8>>2]|0)-(c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+24>>2]=
c[(c[e>>2]|0)+12>>2];i=b;return 0}function Xq(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)+24>>2]=0;c[(c[d>>2]|0)+16>>2]=0;c[(c[d>>2]|0)+20>>2]=0;i=b
;return}function Yq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=
b;c[g>>2]=0;if((c[f>>2]|0)>>>0<(c[(c[d>>2]|0)+16>>2]|0)>>
x3e;0){g=c[g>>2]|0;i=h;return g|0}if((c[f>>2]|0)>>>0>=((c[(c[d>>2]|0)+16>
x3e;2]|0)+(c[(c[d>>2]|0)+20>>2]|0)|0)>>>0){g=c[g>>2]|0;i=h;return g|0}c[g>>
;2]=e[(c[(c[d>>2]|0)+24>>2]|0)+(c[f>>2]<<1)>>1];g=c[g>>2]|0;i=h;return
g|0}function Zq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;d=k+12|0;f=k+8|0;h=k+4|0;g=k;c[d>>2]=a;c[f
x3e;>2]=b;c[h>>2]=0;c[g>>2]=c[c[f>>2]>>2];c[g>>2]=(c[g>>2]|0)+1
;if((c[g>>2]|0)>>>0<(c[(c[d>>2]|0)+16>>2]|0)>>>0)c[g>>
;2]=c[(c[d>>2]|0)+16>>2];while(1){if((c[g>>2]|0)>>>0>=((c[(c[d>>2]|0
)+16>>2]|0)+(c[(c[d>>2]|0)+20>>2]|0)|0)>>>0)break;c[h>>2]=e[(c[(c[d>
x3e;2]|0)+24>>2]|0)+(c[g>>2]<<1)>>1];if(c[h>>2]|0){j=7;break}c[g>>2]=(
c[g>>2]|0)+1}if((j|0)==7){b=c[g>>2]|0;j=c[f>>2]|0;c[j>>2]=b;j=c[h>>2]|0;i=k;return
j|0}c[g>>2]=0;b=c[g>>2]|0;j=c[f>>2]|0;c[j>>2]=b;j=c[h>>2]|0;i=k;return j|0}function
_q(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;d=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[d>>2]=c[c[e>
x3e;2]>>2];c[f>>2]=c[(c[d>>2]|0)+100>>2];c[g>>2]=c[(c[d>>2]|0)+484
x3e;>2];a=Sa[c[(c[g>>2]|0)+4>>2]&3](c[f>>2]|0,c[e>>2]|0,c[(c[d>>2]|0
)+132+284>>2]|0,110,0,c[d>>2]|0)|0;i=b;return a|0}function $q(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;
e=f+4|0;d=f;c[e>>2]=a;c[d>>2]=b;i=f;return c[(c[(c[e>>2]|0)+132+288>>2]|0)+(c[d>>
;2]<<2)>>2]|0}function ar(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]=c[c[d>>2]>>2];c[e>>2]=c[(c[f>>2]|0)+100>>2];Fb(c[e>>
;2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>
;2]=0;i=b;return}function br(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;h=d+4|0;g=d;c[f>>2
]=a;c[e>>2]=b;c[h>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[h>>2]|0)+484>
x3e;2];a=Ya[c[(c[g>>2]|0)+8>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function
cr(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;h=d+4|0;g=d;c[f>>2]=a;c[e>>2]=b;c
[h>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[h>>2]|0)+484>>2];a=Ya[c[(c[g>
x3e;2]|0)+12>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function dr(a,d,e){a=a|0;d=d|0;e=
e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+4|0;h=f;g=f+8|0;c[j>>2]=a;c[h>>2]=d;b[g>>1]=e;er(j,(c[j
x3e;>2]|0)+(c[h>>2]|0)|0,c[j>>2]|0,c[h>>2]|0,g)|0;i=f;return}function er(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;v=i;i=i+48|0;l=v+36|0;m=v+32|0;n=v+28|0;o=v+24|0;p=v+20|0;r
=v+16|0;s=v+12|0;t=v+8|0;u=v+4|0;q=v;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[p>
x3e;2]=k;c[t>>2]=e[c[p>>2]>>1];c[r>>2]=c[c[l>>2]>>2];if((c[o>
x3e;2]|0)>>>0>((c[m>>2]|0)-(c[r>>2]|0)|0)>>>0)c[o>>2]=(c[m>
;>2]|0)-(c[r>>2]|0);c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[o>>
;2]|0)>>>0)break;c[u>>2]=d[(c[r>>2]|0)+(c[s>>2]|0)>>0];c[q>>2]=
c[u>>2]^(c[t>>2]|0)>>>8;c[t>>2]=(((c[u>>2]|0)+(c[t>>2]|0)|0)*52845
|0)+22719&65535;a[(c[n>>2]|0)+(c[s>>2]|0)>>0]=c[q>>2];c[s>>2]=(c[s>
x3e;2]|0)+1}c[c[l>>2]>>2]=(c[r>>2]|0)+(c[o>>2]|0);b[c[p>>2]>>1]=c[t
x3e;>2];i=v;return c[s>>2]|0}function fr(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
,u=0;u=i;i=i+64|0;r=u+44|0;e=u+40|0;h=u+36|0;o=u+32|0;m=u+28|0;f=u+49|0;k=u+24|0;j=u+20|0;p=u+16|0;n=u+12|0;g=u+48|0;l=u+8|0;t=u
+4|0;s=u;c[e>>2]=b;if(((a[c[e>>2]>>0]|0)==117?(a[(c[e>>2]|0)+1>>0]|0)==110:0)?(
a[(c[e>>2]|0)+2>>0]|0)==105:0){c[o>>2]=0;c[m>>2]=(c[e>>2]|0)+3;c[h>>
2]=4;while(1){if((c[h>>2]|0)<=0)break;a[f>>0]=a[c[m>>2]>>0]|0;c[k>>2]=(d[
f>>0]|0)-48;do if((c[k>>2]|0)>>>0>=10){c[k>>2]=(d[f>>0]|0)-65;if((c[
k>>2]|0)>>>0>=6){c[k>>2]=16;break}else{c[k>>2]=(c[k>>2]|0)+10;break}}
while(0);if((c[k>>2]|0)>>>0>=16)break;c[o>>2]=(c[o>>2]<<4)+(c[k>
;>2]|0);c[h>>2]=(c[h>>2]|0)+-1;c[m>>2]=(c[m>>2]|0)+1}if(!(c[h>>2]|0)){if(!(
a[c[m>>2]>>0]|0)){c[r>>2]=c[o>>2];t=c[r>>2]|0;i=u;return t|0}if((a[c[m>
x3e;2]>>0]|0)==46){c[r>>2]=c[o>>2]|-2147483648;t=c[r>>2]|0;i=u;return t|0}}}if((a[c[e>
;>2]>>0]|0)==117){c[p>>2]=0;c[n>>2]=(c[e>>2]|0)+1;c[j>>2]=6;while(1){if((
c[j>>2]|0)<=0)break;a[g>>0]=a[c[n>>2]>>0]|0;c[l>>2]=(d[g>>0]|0)-
48;do if((c[l>>2]|0)>>>0>=10){c[l>>2]=(d[g>>0]|0)-65;if((c[l>>2]|0)
x3e;>>0>=6){c[l>>2]=16;break}else{c[l>>2]=(c[l>>2]|0)+10;break}}while(0);if((c[l>
;>2]|0)>>>0>=16)break;c[p>>2]=(c[p>>2]<<4)+(c[l>>2]|0);c[j>
;>2]=(c[j>>2]|0)+-1;c[n>>2]=(c[n>>2]|0)+1}if((c[j>>2]|0)<=2){if(!(a[c[n>
x3e;2]>>0]|0)){c[r>>2]=c[p>>2];t=c[r>>2]|0;i=u;return t|0}if((a[c[n>>2]>
x3e;0]|0)==46){c[r>>2]=c[p>>2]|-2147483648;t=c[r>>2]|0;i=u;return t|0}}}c[t>>2]=c[e>
;>2];c[s>>2]=0;while(1){if(!(a[c[t>>2]>>0]|0))break;if((a[c[t>>2]>>0]|0)==
46?(c[t>>2]|0)>>>0>(c[e>>2]|0)>>>0:0){q=35;break}c[t>>2]=(c[t
x3e;>2]|0)+1}if((q|0)==35)c[s>>2]=c[t>>2];e=c[e>>2]|0;if(c[s>>2]|0){c[r>>
2]=gr(e,c[s>>2]|0)|0|-2147483648;t=c[r>>2]|0;i=u;return t|0}else{c[r>>2]=gr(e,c[t>>2]|0)|
0;t=c[r>>2]|0;i=u;return t|0}return 0}function gr(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;t=i;i=i+64|0;f=t+48|0;g=t+44|0;h=t+40|0;j=t+36|0;l=t+32|0;o=t+28|0;m=t+24|0;q=t+20|0;n=t+16|0;r=t+12|0;k=t+8|0;p=t+4|0;
s=t;c[g>>2]=b;c[h>>2]=e;c[j>>2]=0;c[q>>2]=12431;a:do if(c[g>>2]|0?(c[g>
x3e;2]|0)>>>0<(c[h>>2]|0)>>>0:0){b=c[g>>2]|0;c[g>>2]=b+1;c[j>
;>2]=a[b>>0];c[l>>2]=d[(c[q>>2]|0)+1>>0];c[q>>2]=(c[q>>2]|0)+2;
c[o>>2]=0;c[m>>2]=c[l>>2];while(1){if((c[o>>2]|0)>=(c[m>>2]|0))break a;c[
n>>2]=(c[o>>2]|0)+(c[m>>2]|0)>>1;c[r>>2]=(c[q>>2]|0)+(c[n>>
;2]<<1);c[r>>2]=12431+(d[c[r>>2]>>0]<<8|d[(c[r>>2]|0)+1>>0
]);c[k>>2]=d[c[r>>2]>>0]&127;if((c[k>>2]|0)==(c[j>>2]|0))break;e=c[n>
;>2]|0;if((c[k>>2]|0)<(c[j>>2]|0)){c[o>>2]=e+1;continue}else{c[m>>2]=e;continue
}}c[q>>2]=c[r>>2];while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>
;>0)break;r=c[g>>2]|0;c[g>>2]=r+1;c[j>>2]=a[r>>0];r=(d[c[q>>2]>>
;0]&128|0)!=0;c[q>>2]=(c[q>>2]|0)+1;if(r)if((c[j>>2]|0)!=(d[c[q>>2]>>0]
x26;127|0))break a;else continue;c[l>>2]=d[c[q>>2]>>0]&127;if(d[c[q>>2]>>
0]&128|0)c[q>>2]=(c[q>>2]|0)+2;c[q>>2]=(c[q>>2]|0)+1;while(1){if((c[l>>2]|
0)<=0)break a;c[p>>2]=d[c[q>>2]>>0]<<8|d[(c[q>>2]|0)+1>>0];c[s
x3e;>2]=12431+(c[p>>2]|0);if((c[j>>2]|0)==(d[c[s>>2]>>0]&127|0))break;c[l>
;>2]=(c[l>>2]|0)+-1;c[q>>2]=(c[q>>2]|0)+2}c[q>>2]=c[s>>2]}if((d[c[q>
x3e;2]>>0]&128|0)==0?d[(c[q>>2]|0)+1>>0]&128|0:0){c[f>>2]=d[(c[q>>2]|
0)+2>>0]<<8|d[(c[q>>2]|0)+3>>0];s=c[f>>2]|0;i=t;return s|0}}while(0);c[f>
x3e;2]=0;s=c[f>>2]|0;i=t;return s|0}function hr(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;w=i;i=i+144|0;h=w+128|0;j=w+124|0;k=w+120|0;l=w+116|0;m=w+112|0;n=w+108|0;p=w+104|0;q
=w+64|0;r=w+24|0;u=w+16|0;o=w+12|0;t=w+8|0;v=w+4|0;s=w;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>
;2]=e;c[m>>2]=f;c[n>>2]=g;f=q;e=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(e|0));c[(c[j>
x3e;2]|0)+16>>2]=0;c[(c[j>>2]|0)+20>>2]=0;b=hc(c[h>>2]|0,8,0,(c[k>>2]|0)+10|0,
0,p)|0;c[(c[j>>2]|0)+20>>2]=b;if(c[p>>2]|0){v=c[p>>2]|0;i=w;return v|0}c[t>>2]=
c[(c[j>>2]|0)+20>>2];c[u>>2]=0;while(1){if((c[u>>2]|0)>>>0>=(c[k>
;>2]|0)>>>0)break;c[s>>2]=Ya[c[l>>2]&127](c[n>>2]|0,c[u>>2]|0)|
0;if(c[s>>2]|0){ir(c[s>>2]|0,c[u>>2]|0,r,q);c[v>>2]=fr(c[s>>2]|0)|0;if(c[v>
;>2]&2147483647|0){jr(c[v>>2]|0,q);c[c[t>>2]>>2]=c[v>>2];c[(c[t>>2]|
0)+4>>2]=c[u>>2];c[t>>2]=(c[t>>2]|0)+8}if(c[m>>2]|0)Ra[c[m>>2]&
7](c[n>>2]|0,c[s>>2]|0)}c[u>>2]=(c[u>>2]|0)+1}c[u>>2]=0;while(1){if((c[u>
x3e;2]|0)>>>0>=10)break;if((c[q+(c[u>>2]<<2)>>2]|0)==1){c[c[t>>2]>
;>2]=c[5252+(c[u>>2]<<2)>>2];c[(c[t>>2]|0)+4>>2]=c[r+(c[u>>2]
x3c;<2)>>2];c[t>>2]=(c[t>>2]|0)+8}c[u>>2]=(c[u>>2]|0)+1}c[o>>2]=((
c[t>>2]|0)-(c[(c[j>>2]|0)+20>>2]|0)|0)/8|0;if(!(c[o>>2]|0)){Fb(c[h>>2]|0,c[(c[
j>>2]|0)+20>>2]|0);c[(c[j>>2]|0)+20>>2]=0;if(!(c[p>>2]|0))c[p>>2]=163
}else{if((c[o>>2]|0)>>>0<(((c[k>>2]|0)>>>0)/2|0)>>>0){v=hc
(c[h>>2]|0,8,c[k>>2]|0,c[o>>2]|0,c[(c[j>>2]|0)+20>>2]|0,p)|0;c[(c[j>>
;2]|0)+20>>2]=v;c[p>>2]=0}Bs(c[(c[j>>2]|0)+20>>2]|0,c[o>>2]|0,8,111)}c[(c[j>
;>2]|0)+16>>2]=c[o>>2];v=c[p>>2]|0;i=w;return v|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,l=0,m=0;m=i;i=i+32|0;f=m+16|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m;c[f>>2]=a;c[g>>2]=b;c[h
>>2]=d;c[j>>2]=e;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=10){l=7;break
}e=(Kr(67222+(c[5212+(c[k>>2]<<2)>>2]|0)|0,c[f>>2]|0)|0)==0;d=c[k>>2]|0;if(e)break
;c[k>>2]=d+1}if((l|0)==7){i=m;return}if(c[(c[j>>2]|0)+(d<<2)>>2]|0){i=m;return}c[(c[j>
;>2]|0)+(c[k>>2]<<2)>>2]=1;c[(c[h>>2]|0)+(c[k>>2]<<2)>>
;2]=c[g>>2];i=m;return}function jr(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;d=h+8|0;e=h+4|0;f=h;c[d>
x3e;2]=a;c[e>>2]=b;c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=10){g=6;break}b=c[f
x3e;>2]|0;if((c[d>>2]|0)==(c[5252+(c[f>>2]<<2)>>2]|0))break;c[f>>2]=b+1}if
((g|0)==6){i=h;return}c[(c[e>>2]|0)+(b<<2)>>2]=2;i=h;return}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;j=i;i=i+32|0;d=j+24|0;l=j+20|0;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[l>>2]=a;c[k>>
;2]=b;c[e>>2]=c[l>>2];c[f>>2]=c[k>>2];c[g>>2]=c[c[e>>2]>>2
]&2147483647;c[h>>2]=c[c[f>>2]>>2]&2147483647;do if((c[g>>2]|0)==(c[h>>
;2]|0)){if((c[c[e>>2]>>2]|0)>>>0>(c[c[f>>2]>>2]|0)>>>
0){c[d>>2]=1;break}if((c[c[e>>2]>>2]|0)>>>0<(c[c[f>>2]>>2]|
0)>>>0){c[d>>2]=-1;break}else{c[d>>2]=0;break}}else{if((c[g>>2]|0)>>>
;0>(c[h>>2]|0)>>>0){c[d>>2]=1;break}if((c[g>>2]|0)>>>0<(c[
h>>2]|0)>>>0){c[d>>2]=-1;break}else{c[d>>2]=0;break}}while(0);i=j;return c[d>
x3e;2]|0}function lr(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;m=i;i=i+32|0;d=m+28|0;n=m+24|0;e=m+20|0;j=m+16
|0;g=m+12|0;h=m+8|0;k=m+4|0;f=m;c[n>>2]=a;c[e>>2]=b;c[k>>2]=0;c[j>>2]=c[(c[n>>
2]|0)+20>>2];c[g>>2]=(c[j>>2]|0)+(c[(c[n>>2]|0)+16>>2]<<3)+-8;while(
1){if((c[j>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[h>>2]=(c[j>
x3e;2]|0)+((((c[g>>2]|0)-(c[j>>2]|0)|0)/8|0)>>1<<3);a=c[h>>2]|0;if((c[c[h>
;>2]>>2]|0)==(c[e>>2]|0)){l=4;break}c[f>>2]=c[a>>2]&2147483647;if((c[f>
x3e;2]|0)==(c[e>>2]|0))c[k>>2]=c[h>>2];if((c[j>>2]|0)==(c[g>>2]|0))break;a=c[h
>>2]|0;if((c[f>>2]|0)>>>0<(c[e>>2]|0)>>>0){c[j>>2]=a+
8;continue}else{c[g>>2]=a+-8;continue}}if((l|0)==4)c[k>>2]=a;if(c[k>>2]|0){c[d>>2]=c[(c[
k>>2]|0)+4>>2];n=c[d>>2]|0;i=m;return n|0}else{c[d>>2]=0;n=c[d>>2]|0;i=m;return
n|0}return 0}function mr(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;o=i;i=i+48|0;d=o+32|0;e=o+28|0;m=o+24
|0;g=o+20|0;l=o+16|0;j=o+12|0;k=o+8|0;h=o+4|0;f=o;c[d>>2]=a;c[e>>2]=b;c[m>>2]=0;c[g>>2]=(
c[c[e>>2]>>2]|0)+1;c[l>>2]=0;c[j>>2]=c[(c[d>>2]|0)+16>>2];while(1){if
((c[l>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;c[k>>2]=(c[l>>
;2]|0)+(((c[j>>2]|0)-(c[l>>2]|0)|0)>>>1);c[h>>2]=(c[(c[d>>2]|0)+20>
x3e;2]|0)+(c[k>>2]<<3);a=c[h>>2]|0;if((c[c[h>>2]>>2]|0)==(c[g>>2]|0)){
n=4;break}c[f>>2]=c[a>>2]&2147483647;if((c[f>>2]|0)==(c[g>>2]|0))c[m>>2]=
c[(c[h>>2]|0)+4>>2];a=c[k>>2]|0;if((c[f>>2]|0)>>>0<(c[g>>2
]|0)>>>0){c[l>>2]=a+1;continue}else{c[j>>2]=a;continue}}if((n|0)==4){c[m>>2]=c[a+4
x3e;>2];l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}if(c[m>
x3e;2]|0){l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}c[g>>2]=
0;if((c[l>>2]|0)>>>0>=(c[(c[d>>2]|0)+16>>2]|0)>>>0){l=c[g>
x3e;2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}c[h>>2]=(c[(c[d>>2]|
0)+20>>2]|0)+(c[l>>2]<<3);c[m>>2]=c[(c[h>>2]|0)+4>>2];c[g>>
;2]=c[c[h>>2]>>2]&2147483647;l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>
;>2]|0;i=o;return n|0}function nr(a){a=a|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=a;c[d>>2]=(c[d>>
;2]|0)>>>0>=258?0:a;i=e;return 67307+(b[8388+(c[d>>2]<<1)>>1]|0)|0}function or
(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[e>>2]=a;if((c[e>>2]|0)>>>0>=391){c[
d>>2]=0;a=c[d>>2]|0;i=f;return a|0}else{c[d>>2]=67307+(b[8904+(c[e>>2]<<1)>
;>1]|0);a=c[d>>2]|0;i=f;return a|0}return 0}function pr(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[f>>2]=c[f>>2];b=qc(5292,c[e>>2]|0)|0;i=d;return b|0}function
qr(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;e=h+12|0;f=h+8|0;d=h+4|0;g=h;c[f>>2]=a;c[d>>2]=b;if
(!(c[f>>2]|0)){c[e>>2]=40;g=c[e>>2]|0;i=h;return g|0}c[(c[f>>2]|0)+12>>2]=0;c[(
c[f>>2]|0)+16>>2]=c[d>>2];c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+8>>
;2]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>>2]|0)+24>>2]=0;c[g>>2]=fs(c[d>>
2]|0,71020)|0;if(!(c[g>>2]|0)){c[e>>2]=1;g=c[e>>2]|0;i=h;return g|0}us(c[g>>2]|0,0,2)|0;
d=ps(c[g>>2]|0)|0;c[(c[f>>2]|0)+4>>2]=d;d=c[g>>2]|0;if(c[(c[f>>2]|0)+4>
x3e;2]|0){us(d,0,0)|0;c[(c[f>>2]|0)+12>>2]=c[g>>2];c[(c[f>>2]|0)+20>>2]=25;c[(
c[f>>2]|0)+24>>2]=44;c[e>>2]=0;g=c[e>>2]|0;i=h;return g|0}else{ks(d)|0;c[e>>2]=
81;g=c[e>>2]|0;i=h;return g|0}return 0}function rr(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;m=
i;i=i+32|0;f=m+20|0;g=m+16|0;h=m+12|0;j=m+8|0;k=m+4|0;l=m;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>
x3e;2]=e;if((c[k>>2]|0)==0?(c[h>>2]|0)>>>0>(c[(c[g>>2]|0)+4>>2]|0)
x3e;>>0:0){c[f>>2]=1;a=c[f>>2]|0;i=m;return a|0}c[l>>2]=c[(c[g>>2]|0)+12>
x3e;2];if((c[(c[g>>2]|0)+8>>2]|0)!=(c[h>>2]|0))us(c[l>>2]|0,c[h>>2]|0,0)|0;c[f
>>2]=ts(c[j>>2]|0,1,c[k>>2]|0,c[l>>2]|0)|0;a=c[f>>2]|0;i=m;return a|0}function
sr(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;ks(c[(c[d>>2]|0)+12>>2]|0)|0;c[(c[d>>
;2]|0)+12>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;i=b;return}function tr(){
var a=0,b=0;b=i;i=i+16|0;a=b;c[a>>2]=Fs(16)|0;if(!(c[a>>2]|0)){a=c[a>>2]|0;i=b;return a|0}c[c[a>
;>2]>>2]=0;c[(c[a>>2]|0)+4>>2]=112;c[(c[a>>2]|0)+12>>2]=26;c[(c[a>
x3e;2]|0)+8>>2]=6;a=c[a>>2]|0;i=b;return a|0}function ur(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[f>>2]=c[f>>2];b=Fs(c[e>>2]|0)|0;i=d;return b|0}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;f=i;i=i+16|0;k=f+12|0;j=f+8|0;g=f+4|0;h=f;c[k>>2]=a;c[j
x3e;>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=c[k>>2];c[j>>2]=c[j>>2];d
=Hs(c[h>>2]|0,c[g>>2]|0)|0;i=f;return d|0}function wr(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[f>>2]=c[f>>2];Gs(c[e>>2]|0);i=d;return}function xr(a
){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Gs(c[d>>2]|0);i=b;return}function yr(a){a=a|0;var b=0,d=0;b=i
;i=i+16|0;d=b;c[d>>2]=c[a+60>>2];a=zr(Aa(6,d|0)|0)|0;i=b;return a|0}function zr(a){a=a|0;if(a>>>
;0>4294963200){c[(Ar()|0)>>2]=0-a;a=-1}return a|0}function Ar(){var a=0;if(!(c[18388]|0))a=73596;else a=c[(xa()|0
)+64>>2]|0;return a|0}function Br(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+80|0;f=g;c[b+36>>2]=47;if((c[
b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21505,c[f+8>>2]=g+12,Fa(54,f
|0)|0):0)a[b+75>>0]=-1;f=Cr(b,d,e)|0;i=g;return f|0}function Cr(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;q=i;i=i+48|0;n=q+16|0;m=q;e=q+32|0;o=a+28|0;f=c[o>>2]|0;c[e>>2]=f;p=a+20|0;f=(c[p>
;>2]|0)-f|0;c[e+4>>2]=f;c[e+8>>2]=b;c[e+12>>2]=d;k=a+60|0;l=a+44|0;b=2;f=f+d|0;while(1){if(!(
c[18388]|0)){c[n>>2]=c[k>>2];c[n+4>>2]=e;c[n+8>>2]=b;h=zr(Ka(146,n|0)|0)|0}else{Da(45,a|
0);c[m>>2]=c[k>>2];c[m+4>>2]=e;c[m+8>>2]=b;h=zr(Ka(146,m|0)|0)|0;ra(0)}if((f|0)==(h|0)){
f=6;break}if((h|0)<0){f=8;break}f=f-h|0;g=c[e+4>>2]|0;if(h>>>0<=g>>>0)if((b|0)==
2){c[o>>2]=(c[o>>2]|0)+h;j=g;b=2}else j=g;else{j=c[l>>2]|0;c[o>>2]=j;c[p>>2]=j
;j=c[e+12>>2]|0;h=h-g|0;e=e+8|0;b=b+-1|0}c[e>>2]=(c[e>>2]|0)+h;c[e+4>>2]=j-h}if((f|0)==6
){n=c[l>>2]|0;c[a+16>>2]=n+(c[a+48>>2]|0);a=n;c[o>>2]=a;c[p>>2]=a}else if((f|0
)==8){c[a+16>>2]=0;c[o>>2]=0;c[p>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else
d=d-(c[e+4>>2]|0)|0}i=q;return d|0}function Dr(a){a=a|0;if(!(c[a+68>>2]|0))Er(a);return}function Er(a){a=a|
0;return}function Fr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c
[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((zr(Ha(140,g|0)|0)|0)<0){c[e>
;>2]=-1;a=-1}else a=c[e>>2]|0;i=f;return a|0}function Gr(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;m=i;i=i+48|0;h=m+16|0;g=m;f=m+32|0;c[f>>2]=d;j=f+4|0;l=b+48|0;n=c[l>>2]|0;c[j>>2]=e-((n|0)!=0
&1);k=b+44|0;c[f+8>>2]=c[k>>2];c[f+12>>2]=n;if(!(c[18388]|0)){c[h>>2]=c[b+60>
x3e;2];c[h+4>>2]=f;c[h+8>>2]=2;f=zr(Ja(145,h|0)|0)|0}else{Da(46,b|0);c[g>>2]=c[b+60>>2];
c[g+4>>2]=f;c[g+8>>2]=2;f=zr(Ja(145,g|0)|0)|0;ra(0)}if((f|0)>=1){j=c[j>>2]|0;if(f>>
x3e;0>j>>>0){g=c[k>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-j);if(!(c[l>>
;2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else{c[b>>2]=c[b>>2
]|f&48^16;c[b+8>>2]=0;c[b+4>>2]=0}i=m;return f|0}function Hr(a){a=a|0;if(!(c[a+68>>2]|0))Er(a
);return}function Ir(a){a=a|0;var b=0;b=(Jr(a)|0)==0;return (b?a:a|32)|0}function Jr(a){a=a|0;return (a+-65|0)>>>
0<26|0}function Kr(b,c){b=b|0;c=c|0;var d=0,e=0;e=a[b>>0]|0;d=a[c>>0]|0;if(e<<24>>24
==0?1:e<<24>>24!=d<<24>>24)c=e;else{do{b=b+1|0;c=c+1|0;e=a[b>>0]|0;d=a[c>
x3e;0]|0}while(!(e<<24>>24==0?1:e<<24>>24!=d<<24>>24));c=e}return (c
&255)-(d&255)|0}function Lr(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;if(!e)c=0;else{f=a[b>>0]|0;a:do if(!(f<
;<24>>24))f=0;else while(1){e=e+-1|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>
;>24&((e|0)!=0&g<<24>>24!=0)))break a;b=b+1|0;c=c+1|0;f=a[b>>0]|0;if(!(f<<
;24>>24)){f=0;break}}while(0);c=(f&255)-(d[c>>0]|0)|0}return c|0}function Mr(b){b=b|0;var d=0,e=0;d=b+74
|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+44|0;if((c[d>>2]|0)>>>0>(c[e>
x3e;2]|0)>>>0)Oa[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[b+28>>2]=0;c[d>
x3e;2]=0;d=c[b>>2]|0;if(d&20)if(!(d&4))d=-1;else{c[b>>2]=d|32;d=-1}else{d=c[e>>2]|0;c[b+
8>>2]=d;c[b+4>>2]=d;d=0}return d|0}function Nr(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;s=i;i=i+224|0;o=s+120|0;r=s+80|0;q=s;p=s+136|0;f=r;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(
g|0));c[o>>2]=c[e>>2];if((Or(0,d,o,q,r)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)m=_r(b)|0;else
m=0;e=c[b>>2]|0;n=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;e=b+48|0;if(!(c[e>
x3e;2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=p;j=b+28|0;c[j>>2]=p;k=b+20|0;c[k>>2]=p;c[e>
;>2]=80;l=b+16|0;c[l>>2]=p+80;f=Or(b,d,o,q,r)|0;if(h){Oa[c[b+36>>2]&63](b,0,0)|0;f=(c[k>>
;2]|0)==0?-1:f;c[g>>2]=h;c[e>>2]=0;c[l>>2]=0;c[j>>2]=0;c[k>>2]=0}}else f=Or(b,
d,o,q,r)|0;e=c[b>>2]|0;c[b>>2]=e|n;if(m|0)Er(b);e=(e&32|0)==0?f:-1}i=s;return e|0}function Or(e,f,g,j,l
){e=e|0;f=f|0;g=g|0;j=j|0;l=l|0;var m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,
J=0,K=0,L=0,M=0,N=0,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;ia=i;i=i+624
|0;da=ia+24|0;fa=ia+16|0;ea=ia+588|0;aa=ia+576|0;ca=ia;W=ia+536|0;ha=ia+8|0;ga=ia+528|0;M=(e|0)!=0;N=W+40|0;V=N;W=W+39|0;X=ha+4|
0;Y=ea;Z=0-Y|0;$=aa+12|0;aa=aa+11|0;ba=$;O=ba-Y|0;P=-2-Y|0;Q=ba+2|0;R=da+288|0;S=ea+9|0;T=S;U=ea+8|0;m=0;o=0;n=0;y=f;a:while(1){
do if((m|0)>-1)if((o|0)>(2147483647-m|0)){c[(Ar()|0)>>2]=75;m=-1;break}else{m=o+m|0;break}while(0);f=a[y>
;>0]|0;if(!(f<<24>>24)){L=244;break}else o=y;b:while(1){switch(f<<24>>24){case 37:{
f=o;L=9;break b}case 0:{f=o;break b}default:{}}K=o+1|0;f=a[K>>0]|0;o=K}c:do if((L|0)==9)while(1){L=0;if((a[f+1>
x3e;0]|0)!=37)break c;o=o+1|0;f=f+2|0;if((a[f>>0]|0)==37)L=9;else break}while(0);w=o-y|0;if(M?(c[e>>2]&
32|0)==0:0)Pr(y,w,e)|0;if((o|0)!=(y|0)){o=w;y=f;continue}r=f+1|0;o=a[r>>0]|0;p=(o<<24>>24)+-48|0;if
(p>>>0<10){K=(a[f+2>>0]|0)==36;r=K?f+3|0:r;o=a[r>>0]|0;u=K?p:-1;n=K?1:n}else u=-1;f=o<
;<24>>24;d:do if((f&-32|0)==32){p=0;while(1){if(!(1<<f+-32&75913)){s=p;break d}p=1<<
;(o<<24>>24)+-32|p;r=r+1|0;o=a[r>>0]|0;f=o<<24>>24;if((f&-32|0)!=32){s=p;
break}}}else s=0;while(0);do if(o<<24>>24==42){o=r+1|0;f=(a[o>>0]|0)+-48|0;if(f>>>0
<10?(a[r+2>>0]|0)==36:0){c[l+(f<<2)>>2]=10;n=1;r=r+3|0;f=c[j+((a[o>>0]|0)+-48<
x3c;3)>>2]|0}else{if(n|0){m=-1;break a}if(!M){v=s;n=0;r=o;K=0;break}n=(c[g>>2]|0)+(4-1)&~(4-1);f=c[n>
;>2]|0;c[g>>2]=n+4;n=0;r=o}if((f|0)<0){v=s|8192;K=0-f|0}else{v=s;K=f}}else{p=(o<<24>>24)+-
48|0;if(p>>>0<10){f=r;o=0;do{o=(o*10|0)+p|0;f=f+1|0;p=(a[f>>0]|0)+-48|0}while(p>>>0
<10);if((o|0)<0){m=-1;break a}else{v=s;r=f;K=o}}else{v=s;K=0}}while(0);e:do if((a[r>>0]|0)==46){f=r+1|0;o=a[
f>>0]|0;if(o<<24>>24!=42){p=(o<<24>>24)+-48|0;if(p>>>0<10)
o=0;else{s=0;break}while(1){o=(o*10|0)+p|0;f=f+1|0;p=(a[f>>0]|0)+-48|0;if(p>>>0>=10){s=o;break e}}}
f=r+2|0;o=(a[f>>0]|0)+-48|0;if(o>>>0<10?(a[r+3>>0]|0)==36:0){c[l+(o<<2)>
x3e;2]=10;s=c[j+((a[f>>0]|0)+-48<<3)>>2]|0;f=r+4|0;break}if(n|0){m=-1;break a}if(M){J=(c[g>
x3e;2]|0)+(4-1)&~(4-1);s=c[J>>2]|0;c[g>>2]=J+4}else s=0}else{s=-1;f=r}while(0);t=0;while(1){o=(a[f>
;>0]|0)+-65|0;if(o>>>0>57){m=-1;break a}p=f+1|0;o=a[71023+(t*58|0)+o>>0]|0;r=o&255;if((r
+-1|0)>>>0<8){f=p;t=r}else{J=p;break}}if(!(o<<24>>24)){m=-1;break}p=(u|0)>-1;do if(
o<<24>>24==19)if(p){m=-1;break a}else L=52;else{if(p){c[l+(u<<2)>>2]=r;H=j+(u<<
;3)|0;I=c[H+4>>2]|0;L=ca;c[L>>2]=c[H>>2];c[L+4>>2]=I;L=52;break}if(!M){m=0;break a}Rr(ca
,r,g)}while(0);if((L|0)==52?(L=0,!M):0){o=w;y=J;continue}u=a[f>>0]|0;u=(t|0)!=0&(u&15|0)==3?u&-33:u;p=v
&-65537;I=(v&8192|0)==0?v:p;f:do switch(u|0){case 110:switch(t|0){case 0:{c[c[ca>>2]>>2]=m;o=w;y=J
;continue a}case 1:{c[c[ca>>2]>>2]=m;o=w;y=J;continue a}case 2:{o=c[ca>>2]|0;c[o>>2]=m;c
[o+4>>2]=((m|0)<0)<<31>>31;o=w;y=J;continue a}case 3:{b[c[ca>>2]>>1]=m;o=
w;y=J;continue a}case 4:{a[c[ca>>2]>>0]=m;o=w;y=J;continue a}case 6:{c[c[ca>>2]>>2]=m;o=
w;y=J;continue a}case 7:{o=c[ca>>2]|0;c[o>>2]=m;c[o+4>>2]=((m|0)<0)<<31>>
31;o=w;y=J;continue a}default:{o=w;y=J;continue a}}case 112:{t=I|8;s=s>>>0>8?s:8;u=120;L=64;break}case 88:case
120:{t=I;L=64;break}case 111:{p=ca;o=c[p>>2]|0;p=c[p+4>>2]|0;if((o|0)==0&(p|0)==0)f=N;else{f=N;do{f=f+-
1|0;a[f>>0]=o&7|48;o=Os(o|0,p|0,3)|0;p=C}while(!((o|0)==0&(p|0)==0))}if(!(I&8)){o=I;t=0;r=71503;L=77}else
{t=V-f|0;o=I;s=(s|0)>(t|0)?s:t+1|0;t=0;r=71503;L=77}break}case 105:case 100:{o=ca;f=c[o>>2]|0;o=c[o+4>>
2]|0;if((o|0)<0){f=Ls(0,0,f|0,o|0)|0;o=C;p=ca;c[p>>2]=f;c[p+4>>2]=o;p=1;r=71503;L=76;break f}if(!(I&
;2048)){r=I&1;p=r;r=(r|0)==0?71503:71505;L=76}else{p=1;r=71504;L=76}break}case 117:{o=ca;f=c[o>>2]|0;o=c[o+4>
;>2]|0;p=0;r=71503;L=76;break}case 99:{a[W>>0]=c[ca>>2];f=W;u=1;w=0;v=71503;o=N;break}case 109:{o=Tr(c[(
Ar()|0)>>2]|0)|0;L=82;break}case 115:{o=c[ca>>2]|0;o=o|0?o:73405;L=82;break}case 67:{c[ha>>2]=c[ca
>>2];c[X>>2]=0;c[ca>>2]=ha;f=ha;s=-1;L=86;break}case 83:{f=c[ca>>2]|0;if(!s){Vr(e,32,K,0
,I);f=0;L=97}else L=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{q=+h[ca>>3];c[fa>
;>2]=0;h[k>>3]=q;if((c[k+4>>2]|0)>=0)if(!(I&2048)){H=I&1;G=H;H=(H|0)==0?73413:73418}else
{G=1;H=73415}else{q=-q;G=1;H=73412}h[k>>3]=q;F=c[k+4>>2]&2146435072;do if(F>>>0<2146435072
|(F|0)==2146435072&0<0){x=+Yr(q,fa)*2.0;o=x!=0.0;if(o)c[fa>>2]=(c[fa>>2]|0)+-1;D=u|32;if((D|0)==97
){v=u&32;y=(v|0)==0?H:H+9|0;w=G|2;f=12-s|0;do if(!(s>>>0>11|(f|0)==0)){q=8.0;do{f=f+-1|0;q=q*16.0}while
((f|0)!=0);if((a[y>>0]|0)==45){q=-(q+(-x-q));break}else{q=x+q-q;break}}else q=x;while(0);o=c[fa>>2]|0;f=(o|0
)<0?0-o|0:o;f=Sr(f,((f|0)<0)<<31>>31,$)|0;if((f|0)==($|0)){a[aa>>0]=48;f=aa}a[f+-1>
x3e;0]=(o>>31&2)+43;t=f+-2|0;a[t>>0]=u+15;r=(s|0)<1;p=(I&8|0)==0;o=ea;while(1){H=~~q;f=o+1|0;
a[o>>0]=d[71487+H>>0]|v;q=(q-+(H|0))*16.0;do if((f-Y|0)==1){if(p&(r&q==0.0))break;a[f>>0
]=46;f=o+2|0}while(0);if(!(q!=0.0))break;else o=f}p=t;s=(s|0)!=0&(P+f|0)<(s|0)?Q+s-p|0:O-p+f|0;r=s+w|0;Vr(e,32,K,r,I);
if(!(c[e>>2]&32))Pr(y,w,e)|0;Vr(e,48,K,r,I^65536);o=f-Y|0;if(!(c[e>>2]&32))Pr(ea,o,e)|0;f=ba-p|0;Vr
(e,48,s-(o+f)|0,0,0);if(!(c[e>>2]&32))Pr(t,f,e)|0;Vr(e,32,K,r,I^8192);f=(r|0)<(K|0)?K:r;break}f=(s|0)<0
?6:s;if(o){o=(c[fa>>2]|0)+-28|0;c[fa>>2]=o;q=x*268435456.0}else{q=x;o=c[fa>>2]|0}F=(o|0)<0?da
:R;E=F;o=F;do{B=~~q>>>0;c[o>>2]=B;o=o+4|0;q=(q-+(B>>>0))*1.0e9}while(q!=0.0);p=o;o=c[fa
x3e;>2]|0;if((o|0)>0){s=F;while(1){t=(o|0)>29?29:o;r=p+-4|0;do if(r>>>0<s>>>0)
r=s;else{o=0;do{B=Ps(c[r>>2]|0,0,t|0)|0;B=Ms(B|0,C|0,o|0,0)|0;o=C;A=$s(B|0,o|0,1e9,0)|0;c[r>>2]=A;o=_s(B|0,o
|0,1e9,0)|0;r=r+-4|0}while(r>>>0>=s>>>0);if(!o){r=s;break}r=s+-4|0;c[r>>2]=o}while(
0);while(1){if(p>>>0<=r>>>0)break;o=p+-4|0;if(!(c[o>>2]|0))p=o;else break}o=(c[fa
x3e;>2]|0)-t|0;c[fa>>2]=o;if((o|0)>0)s=r;else break}}else r=F;if((o|0)<0){y=((f+25|0)/9|0)+1|0;z=(D|0)==
102;v=r;while(1){w=0-o|0;w=(w|0)>9?9:w;do if(v>>>0<p>>>0){o=(1<<w)+-1|0;s=1e9
x3e;>>w;r=0;t=v;do{B=c[t>>2]|0;c[t>>2]=(B>>>w)+r;r=_(B&o,s)|0;t=t+4|0}while(t
x3e;>>0<p>>>0);o=(c[v>>2]|0)==0?v+4|0:v;if(!r){r=o;break}c[p>>2]=r;r=o;p=p+4|0
}else r=(c[v>>2]|0)==0?v+4|0:v;while(0);o=z?F:r;p=(p-o>>2|0)>(y|0)?o+(y<<2)|0:p;o=(c[fa>
x3e;2]|0)+w|0;c[fa>>2]=o;if((o|0)>=0){z=r;break}else v=r}}else z=r;do if(z>>>0<p>>
x3e;0){o=(E-z>>2)*9|0;s=c[z>>2]|0;if(s>>>0<10)break;else r=10;do{r=r*10|0;o=o+1|0}while(
s>>>0>=r>>>0)}else o=0;while(0);A=(D|0)==103;B=(f|0)!=0;r=f-((D|0)!=102?o:0)+((B&A)<
;<31>>31)|0;if((r|0)<(((p-E>>2)*9|0)+-9|0)){t=r+9216|0;r=F+4+(((t|0)/9|0)+-1024<<2)|0;t=((
t|0)%9|0)+1|0;if((t|0)<9){s=10;do{s=s*10|0;t=t+1|0}while((t|0)!=9)}else s=10;w=c[r>>2]|0;y=(w>>>0)%(
s>>>0)|0;t=(r+4|0)==(p|0);do if(t&(y|0)==0)s=z;else{x=(((w>>>0)/(s>>>0)|0)&
;1|0)==0?9007199254740992.0:9007199254740994.0;v=(s|0)/2|0;if(y>>>0<v>>>0)q=.5;else q=t&(
y|0)==(v|0)?1.0:1.5;do if(G){if((a[H>>0]|0)!=45)break;x=-x;q=-q}while(0);t=w-y|0;c[r>>2]=t;if(!(x+q!=x)){s=z
;break}D=t+s|0;c[r>>2]=D;if(D>>>0>999999999){o=z;while(1){s=r+-4|0;c[r>>2]=0;if(s>
x3e;>0<o>>>0){o=o+-4|0;c[o>>2]=0}D=(c[s>>2]|0)+1|0;c[s>>2]=D;if(D>
x3e;>0>999999999)r=s;else{v=o;r=s;break}}}else v=z;o=(E-v>>2)*9|0;t=c[v>>2]|0;if(t>>>
;0<10){s=v;break}else s=10;do{s=s*10|0;o=o+1|0}while(t>>>0>=s>>>0);s=v}while(0);D=r+4|0;
z=s;p=p>>>0>D>>>0?D:p}w=0-o|0;while(1){if(p>>>0<=z>>>0){y=
0;D=p;break}r=p+-4|0;if(!(c[r>>2]|0))p=r;else{y=1;D=p;break}}do if(A){f=(B&1^1)+f|0;if((f|0)>(o|0)&(o|0
)>-5){u=u+-1|0;f=f+-1-o|0}else{u=u+-2|0;f=f+-1|0}p=I&8;if(p|0)break;do if(y){p=c[D+-4>>2]|0;if(!p){r=9;break
}if(!((p>>>0)%10|0)){s=10;r=0}else{r=0;break}do{s=s*10|0;r=r+1|0}while(!((p>>>0)%(s>>>
;0)|0|0))}else r=9;while(0);p=((D-E>>2)*9|0)+-9|0;if((u|32|0)==102){p=p-r|0;p=(p|0)<0?0:p;f=(f|0)<(p|0)?f:p;
p=0;break}else{p=p+o-r|0;p=(p|0)<0?0:p;f=(f|0)<(p|0)?f:p;p=0;break}}else p=I&8;while(0);v=f|p;s=(v|0)!=0&1;t
=(u|32|0)==102;if(t){o=(o|0)>0?o:0;u=0}else{r=(o|0)<0?w:o;r=Sr(r,((r|0)<0)<<31>>31,$)|0;if((ba
-r|0)<2)do{r=r+-1|0;a[r>>0]=48}while((ba-r|0)<2);a[r+-1>>0]=(o>>31&2)+43;E=r+-2|0;a
[E>>0]=u;o=ba-E|0;u=E}w=G+1+f+s+o|0;Vr(e,32,K,w,I);if(!(c[e>>2]&32))Pr(H,G,e)|0;Vr(e,48,K,w,I^65536);do
if(t){r=z>>>0>F>>>0?F:z;o=r;do{p=Sr(c[o>>2]|0,0,S)|0;do if((o|0)==(r|0)){if((p|0)!=(
S|0))break;a[U>>0]=48;p=U}else{if(p>>>0<=ea>>>0)break;Ns(ea|0,48,p-Y|0)|0;do p=p+-1
|0;while(p>>>0>ea>>>0)}while(0);if(!(c[e>>2]&32))Pr(p,T-p|0,e)|0;o=o+4|0}while
(o>>>0<=F>>>0);do if(v|0){if(c[e>>2]&32|0)break;Pr(73447,1,e)|0}while(0);if((f
|0)>0&o>>>0<D>>>0){p=o;while(1){o=Sr(c[p>>2]|0,0,S)|0;if(o>>>
;0>ea>>>0){Ns(ea|0,48,o-Y|0)|0;do o=o+-1|0;while(o>>>0>ea>>>0)}if(!(c[e
x3e;>2]&32))Pr(o,(f|0)>9?9:f,e)|0;p=p+4|0;o=f+-9|0;if(!((f|0)>9&p>>>0<D>>
x3e;0)){f=o;break}else f=o}}Vr(e,48,f+9|0,9,0)}else{t=y?D:z+4|0;if((f|0)>-1){s=(p|0)==0;r=z;do{o=Sr(c[r>>2]|0,0,S
)|0;if((o|0)==(S|0)){a[U>>0]=48;o=U}do if((r|0)==(z|0)){p=o+1|0;if(!(c[e>>2]&32))Pr(o,1,e)|0;if(s&(
f|0)<1){o=p;break}if(c[e>>2]&32|0){o=p;break}Pr(73447,1,e)|0;o=p}else{if(o>>>0<=ea>
x3e;>0)break;Ns(ea|0,48,o+Z|0)|0;do o=o+-1|0;while(o>>>0>ea>>>0)}while(0);p=T-o|0;if(!(c
[e>>2]&32))Pr(o,(f|0)>(p|0)?p:f,e)|0;f=f-p|0;r=r+4|0}while(r>>>0<t>>>0&
;(f|0)>-1)}Vr(e,48,f+18|0,18,0);if(c[e>>2]&32|0)break;Pr(u,ba-u|0,e)|0}while(0);Vr(e,32,K,w,I^8192);f=(w|0)
x3c;(K|0)?K:w}else{t=(u&32|0)!=0;s=q!=q|0.0!=0.0;o=s?0:G;r=o+3|0;Vr(e,32,K,r,p);f=c[e>>2]|0;if(!(f&32)){Pr(H
,o,e)|0;f=c[e>>2]|0}if(!(f&32))Pr(s?(t?73439:73443):t?73431:73435,3,e)|0;Vr(e,32,K,r,I^8192);f=(r|0)<(K|0)?K
:r}while(0);o=f;y=J;continue a}default:{f=y;p=I;u=s;w=0;v=71503;o=N}}while(0);g:do if((L|0)==64){p=ca;o=c[p>>2]|0;p=c[
p+4>>2]|0;r=u&32;if(!((o|0)==0&(p|0)==0)){f=N;do{f=f+-1|0;a[f>>0]=d[71487+(o&15)>>0
]|r;o=Os(o|0,p|0,4)|0;p=C}while(!((o|0)==0&(p|0)==0));L=ca;if((t&8|0)==0|(c[L>>2]|0)==0&(c[L+4>>
;2]|0)==0){o=t;t=0;r=71503;L=77}else{o=t;t=2;r=71503+(u>>4)|0;L=77}}else{f=N;o=t;t=0;r=71503;L=77}}else if((L|0)==76){
f=Sr(f,o,N)|0;o=I;t=p;L=77}else if((L|0)==82){L=0;I=Ur(o,0,s)|0;H=(I|0)==0;f=o;u=H?s:I-o|0;w=0;v=71503;o=H?o+s|0:I}else if((L|0)==
86){L=0;p=0;o=0;t=f;while(1){r=c[t>>2]|0;if(!r)break;o=Wr(ga,r)|0;if((o|0)<0|o>>>0>(s-p|0)>
;>>0)break;p=o+p|0;if(s>>>0>p>>>0)t=t+4|0;else break}if((o|0)<0){m=-1;break a}
Vr(e,32,K,p,I);if(!p){f=0;L=97}else{r=0;while(1){o=c[f>>2]|0;if(!o){f=p;L=97;break g}o=Wr(ga,o)|0;r=o+r|0;if((r|0)>
;(p|0)){f=p;L=97;break g}if(!(c[e>>2]&32))Pr(ga,o,e)|0;if(r>>>0>=p>>>0){f=p;L=
97;break}else f=f+4|0}}}while(0);if((L|0)==97){L=0;Vr(e,32,K,f,I^8192);o=(K|0)>(f|0)?K:f;y=J;continue}if((L|0)==77){L=0;p=(
s|0)>-1?o&-65537:o;o=ca;o=(c[o>>2]|0)!=0|(c[o+4>>2]|0)!=0;if((s|0)!=0|o){u=(o&1^1)+(V-f)|0;u=(
s|0)>(u|0)?s:u;w=t;v=r;o=N}else{f=N;u=0;w=t;v=r;o=N}}t=o-f|0;r=(u|0)<(t|0)?t:u;s=w+r|0;o=(K|0)<(s|0)?s:K;Vr(e,32,
o,s,p);if(!(c[e>>2]&32))Pr(v,w,e)|0;Vr(e,48,o,s,p^65536);Vr(e,48,r,t,0);if(!(c[e>>2]&32))Pr(f,t,e)|
0;Vr(e,32,o,s,p^8192);y=J}h:do if((L|0)==244)if(!e)if(n){m=1;while(1){n=c[l+(m<<2)>>2]|0;if(!n)break;Rr(j+(m
<<3)|0,n,g);m=m+1|0;if((m|0)>=10){m=1;break h}}if((m|0)<10)while(1){if(c[l+(m<<2)>>2]|0){
m=-1;break h}m=m+1|0;if((m|0)>=10){m=1;break}}else m=1}else m=0;while(0);i=ia;return m|0}function Pr(b,d,e){b=b|0;d=d|0;e=e
|0;var f=0,g=0,h=0,i=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(Qr(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((
h|0)==5){i=e+20|0;f=c[i>>2]|0;h=f;if((g-f|0)>>>0<d>>>0){f=Oa[c[e+36>>2]
x26;63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){f=d;while(1){if(!f){g=h;f=0;break b}g=f+-1|0;if((a[b+g>>
;0]|0)==10)break;else f=g}if((Oa[c[e+36>>2]&63](e,b,f)|0)>>>0<f>>>0)break a;d=
d-f|0;b=b+f|0;g=c[i>>2]|0}else{g=h;f=0}while(0);Ss(g|0,b|0,d|0)|0;c[i>>2]=(c[i>>2]|0)+d;f=f+d|0}while
(0);return f|0}function Qr(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if
(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;d=c[b+44>>2]|0;c[b+28>>2]=d;c[b+20>>2]=d
;c[b+16>>2]=d+(c[b+48>>2]|0);d=0}else{c[b>>2]=d|32;d=-1}return d|0}function Rr(a,b,d){a=a|0;b=b|0;
d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b
=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e
x3e;>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break
a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4
x3e;>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d
x3e;>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f
x3e;>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((
e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>
;>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1
);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>
;2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;
c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&
;~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1
);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function Sr(b,
c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295)while(1){e=$s(b
|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e|48;e=_s(b|0,c|0,10,0)|0;if(c>>>0>9|(c|0)==9&b>>
x3e;0>4294967295){b=e;c=C}else{b=e;break}}if(b)while(1){d=d+-1|0;a[d>>0]=(b>>>0)%10|0|48;if(b>
;>>0<10)break;else b=(b>>>0)/10|0}return d|0}function Tr(b){b=b|0;var c=0,e=0;c=0;while(1){if((d[71513
+c>>0]|0)==(b|0)){e=2;break}c=c+1|0;if((c|0)==87){c=87;b=71601;e=5;break}}if((e|0)==2)if(!c)b=71601;else{b=71601;e=5}if
((e|0)==5)while(1){e=b;while(1){b=e+1|0;if(!(a[e>>0]|0))break;else e=b}c=c+-1|0;if(!c)break;else e=5}return b|0}function
Ur(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if
((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5
;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24
>>24){f=_(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144
)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e
){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(
0);return (e|0?b:0)|0}function Vr(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;j=i;i=i+256|0;h=j;do if((d|0)>(e
|0)&(f&73728|0)==0){f=d-e|0;Ns(h|0,b|0,(f>>>0>256?256:f)|0)|0;b=c[a>>2]|0;g=(b&32|0
)==0;if(f>>>0>255){e=d-e|0;do{if(g){Pr(h,256,a)|0;b=c[a>>2]|0}f=f+-256|0;g=(b&32|0)==0}while(
f>>>0>255);if(g)f=e&255;else break}else if(!g)break;Pr(h,f,a)|0}while(0);i=j;return}function Wr(a,b){a=
a|0;b=b|0;if(!a)a=0;else a=Xr(a,b,0)|0;return a|0}function Xr(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128
){a[b>>0]=d;b=1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0
]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224
;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>
;0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>
x3e;0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(Ar()|0)>>2]=84;b=-1;break}}
else b=1;while(0);return b|0}function Yr(a,b){a=+a;b=b|0;return +(+Zr(a,b))}function Zr(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[k>
;>3]=a;d=c[k>>2]|0;e=c[k+4>>2]|0;f=Os(d|0,e|0,52)|0;f=f&2047;switch(f|0){case 0:{if(a!=0.0){a=+Zr(
a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>
x3e;2]=f+-1022;c[k>>2]=d;c[k+4>>2]=e&-2146435073|1071644672;a=+h[k>>3]}}return +a}function _r
(a){a=a|0;return 0}function $r(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)d=0;else{f=d;e=b;while(1){b=a[e>>0]|0;d
=a[c>>0]|0;if(b<<24>>24!=d<<24>>24)break;f=f+-1|0;if(!f){d=0;break a}else{e=e+
1|0;c=c+1|0}}d=(b&255)-(d&255)|0}while(0);return d|0}function as(a,b,c){a=a|0;b=b|0;c=c|0;bs(a,b,c)|0;return a|0}function
bs(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;do if(!((g^b)&3)){f=(e|0)!=0;a:do if(f&(g&3|0)!=0)while(1){g=a[d
>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0;if(!(f&
;(d&3|0)!=0)){h=5;break}}else h=5;while(0);if((h|0)==5)if(!f){e=0;break}if(a[d>>0]|0){b:do if(e>>>
0>3)do{f=c[d>>2]|0;if((f&-2139062144^-2139062144)&f+-16843009|0)break b;c[b>>2]=f;e=e+-4|0;d=
d+4|0;b=b+4|0}while(e>>>0>3);while(0);h=11}}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a
[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|
0}while(0);Ns(b|0,0,e|0)|0;return b|0}function cs(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=b;b=f;while(1){if(!(
a[d>>0]|0))break a;d=d+1|0;b=d;if(!(b&3)){b=d;e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if
(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;
while((a[b>>0]|0)!=0)}return b-f|0}function ds(a,b){a=a|0;b=b|0;es(a,b)|0;return a|0}function es(b,d){b=b|0;d=d|0;var
e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24
))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){
f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break
;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+
1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function fs(b,d){b=b|0;
d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+32|0;f=g+16|0;e=g;if(Ur(73449,a[d>>0]|0,4)|0){h=gs(d)|0|32768;c[e>>2]=b;c[
e+4>>2]=h;c[e+8>>2]=438;e=zr(Ca(5,e|0)|0)|0;if((e|0)>=0){b=js(e,d)|0;if(!b){c[f>>2]=e;Aa(6,f|
0)|0;b=0}}else b=0}else{c[(Ar()|0)>>2]=22;b=0}i=g;return b|0}function gs(b){b=b|0;var c=0,d=0,e=0;d=(hs(b,43)|0)==0;c=
a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(hs(b,120)|0)==0;d=e?d:d|128;b=(hs(b,101)|0)==0;b=b?d:d|524288
;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==
97?b|1024:b)|0}function hs(b,c){b=b|0;c=c|0;b=is(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?
b:0)|0}function is(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(cs(b)|0)|0;else{if(b&3){e=d&255;do{g=
a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b
=b+1|0}while((b&3|0)!=0)}f=_(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009
))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144
^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g
x3c;<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function js(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;o=i;i=i+112|0;n=o+40|0;l=o+24|0;k=o+16|0;g=o;m=o+52|0;f=a[d>>0]|0;if(Ur(73449
,f<<24>>24,4)|0){e=Fs(1144)|0;if(!e)e=0;else{h=e;j=h+112|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(
j|0));if(!(hs(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(hs(d,101)|0){c[g>>2]=b;c[g+4>
x3e;2]=2;c[g+8>>2]=1;sa(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[k>>2]=b;c[k
+4>>2]=3;f=sa(221,k|0)|0;if(!(f&1024)){c[l>>2]=b;c[l+4>>2]=4;c[l+8>>2]=f|1024;sa(221
,l|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+120
;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21505,c[n+8
>>2]=m,(Fa(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=48;c[e+36>>2]=47;c[e+40>>2]=
32;c[e+12>>2]=33;if(!(c[18389]|0))c[e+76>>2]=-1;ua(73580);f=c[18394]|0;c[e+56>>2]=f;if(f|0)c[f+52
x3e;>2]=e;c[18394]=e;Ga(73580)}}else{c[(Ar()|0)>>2]=22;e=0}i=o;return e|0}function ks(a){a=a|0;var b=0,d=0,e=0;e=(
c[a>>2]&1|0)!=0;if(!e){ua(73580);d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];
b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[18394]|0)==(a|0))c[18394]=b;Ga(73580)}b=ls(a)|0;b=Ta[c[a+12>>
;2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)Gs(d);if(!e)Gs(a);return b|0}function ls(a){a=a|0;var b=0,d=0;do if(a){if((c
[a+76>>2]|0)<=-1){b=ms(a)|0;break}d=(_r(a)|0)==0;b=ms(a)|0;if(!d)Er(a)}else{if(!(c[1356]|0))b=0;else b=ls(c[1356]|
0)|0;ua(73580);a=c[18394]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=_r(a)|0;else d=0;if((c[a+20>>2]|0)>>
;>0>(c[a+28>>2]|0)>>>0)b=ms(a)|0|b;if(d|0)Er(a);a=c[a+56>>2]|0}while((a|0)!=0);Ga(73580
)}while(0);return b|0}function ms(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;g=a+28|0;if((c[b>>2]|0)>>>
;0>(c[g>>2]|0)>>>0?(Oa[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)b=-1;else
{h=a+4|0;d=c[h>>2]|0;e=a+8|0;f=c[e>>2]|0;if(d>>>0<f>>>0)Oa[c[a+40>
x3e;2]&63](a,d-f|0,1)|0;c[a+16>>2]=0;c[g>>2]=0;c[b>>2]=0;c[e>>2]=0;c[h>>2
]=0;b=0}return b|0}function ns(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>
x3e;0>(c[a+28>>2]|0)>>>0?2:1;b=Oa[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a
+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function os(a){a=a|0;
var b=0;if((c[a+76>>2]|0)>-1){b=(_r(a)|0)==0;a=ns(a)|0}else a=ns(a)|0;return a|0}function ps(a){a=a|0;return os(a
)|0}function qs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(_r(a)|0)==0;b=rs(a,b,d)|0;if(!e)Er(a)}else
b=rs(a,b,d)|0;return b|0}function rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>
x3e;2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Oa[c[a+
36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>
;2]=0;if((Oa[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>
;2]=c[a>>2]&-17;b=0}}return b|0}function ss(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;b=Nr
(c[1327]|0,a,e)|0;i=d;return b|0}function ts(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;j=_(e,d)|0;if((c[f+76
x3e;>2]|0)>-1)k=_r(f)|0;else k=0;g=f+74|0;i=a[g>>0]|0;a[g>>0]=i+255|i;g=f+4|0;i=c[g>>2]|
0;h=(c[f+8>>2]|0)-i|0;if((h|0)>0){h=h>>>0<j>>>0?h:j;Ss(b|0,i|0,h|0)|0;c[g>
;>2]=i+h;b=b+h|0;g=j-h|0}else g=j;a:do if(!g)l=13;else{i=f+32|0;h=g;while(1){if(Mr(f)|0){e=h;break}g=Oa[c[i>>2]
x26;63](f,b,h)|0;if((g+1|0)>>>0<2){e=h;break}if((h|0)==(g|0)){l=13;break a}else{b=b+g|0;h=h-g|0}}if(k|0)Er(f
);e=((j-e|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(k)Er(f);return e|0}function us(a,b,c){a=a|0;b
=b|0;c=c|0;return qs(a,b,c)|0}function vs(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;w=i;i=i+1056|0;u=w+1024|0;v=w;k=a[e>>0]|0;do if(k<<24>>24){t=hs(b,k<<24>>24
)|0;if(t){j=a[e+1>>0]|0;if(j<<24>>24){f=t+1|0;m=a[f>>0]|0;if(m<<24>>
24){h=a[e+2>>0]|0;if(!(h<<24>>24)){j=j&255|(k&255)<<8;b=m;g=d[t>>0]
x3c;<8|m&255;while(1){g=g&65535;if((g|0)==(j|0))break;f=f+1|0;h=a[f>>0]|0;if(!(h<<24>>
;24)){b=0;break}else{b=h;g=h&255|g<<8}}b=b<<24>>24?f+-1|0:0;break}f=t+2|0;b=a[f>>0]|
0;if(b<<24>>24){g=a[e+3>>0]|0;if(!(g<<24>>24)){h=(j&255)<<16|(k
&255)<<24|(h&255)<<8;g=(b&255)<<8|(m&255)<<16|d[t>>0]<
;<24;if((g|0)!=(h|0))do{f=f+1|0;b=a[f>>0]|0;g=(b&255|g)<<8}while(!(b<<24>>24==
0|(g|0)==(h|0)));b=b<<24>>24?f+-2|0:0;break}f=t+3|0;l=a[f>>0]|0;if(l<<24>>24){
if(!(a[e+4>>0]|0)){h=(j&255)<<16|(k&255)<<24|(h&255)<<8|g&255;b=(b
x26;255)<<8|(m&255)<<16|l&255|d[t>>0]<<24;if((b|0)==(h|0))b=l;else{g=b;do{f=f+
1|0;b=a[f>>0]|0;g=b&255|g<<8}while(!(b<<24>>24==0|(g|0)==(h|0)))}b=b<<24
x3e;>24?f+-3|0:0;break};c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[u+12>>2]=0;c[u+16>
x3e;2]=0;c[u+20>>2]=0;c[u+24>>2]=0;c[u+28>>2]=0;b=k;g=0;while(1){if(!(a[t+g>>0]|0)){b=0;
break}f=u+(((b&255)>>>5&255)<<2)|0;c[f>>2]=c[f>>2]|1<<(b&31
);f=g+1|0;c[v+((b&255)<<2)>>2]=f;b=a[e+f>>0]|0;if(!(b<<24>>24)){n=23;break
}else g=f}a:do if((n|0)==23){b:do if(f>>>0>1){h=1;n=-1;b=0;c:while(1){m=1;while(1){d:while(1){j=1;while(1){k
=a[e+(j+n)>>0]|0;l=a[e+h>>0]|0;if(k<<24>>24!=l<<24>>24){m=h;j=k;h=l;
break d}if((j|0)==(m|0))break;j=j+1|0;h=j+b|0;if(h>>>0>=f>>>0){b=n;p=m;break c}}b=b+m|0;h=b+1
|0;if(h>>>0>=f>>>0){b=n;p=m;break c}}k=m-n|0;if((j&255)<=(h&255))break;b=m+1|0
;if(b>>>0<f>>>0){h=b;b=m;m=k}else{b=n;p=k;break c}}h=b+2|0;if(h>>>0>=f>
;>>0){p=1;break}else{n=b;b=b+1|0}}j=1;k=-1;h=0;while(1){l=h;h=1;while(1){o=l;e:while(1){l=1;while(1){n=a[e+(l+k)>
x3e;0]|0;m=a[e+j>>0]|0;if(n<<24>>24!=m<<24>>24){l=j;j=o;break e}if((l|0)==(h|0
))break;l=l+1|0;j=l+o|0;if(j>>>0>=f>>>0){j=p;break b}}o=o+h|0;j=o+1|0;if(j>>>0
>=f>>>0){j=p;break b}}h=l-k|0;if((n&255)>=(m&255)){h=j;break}j=l+1|0;if(j>>>0
x3e;=f>>>0){j=p;break b}}j=h+2|0;if(j>>>0>=f>>>0){k=h;j=p;h=1;break}else{k=h;h
=h+1|0}}}else{b=-1;k=-1;j=1;h=1}while(0);r=(k+1|0)>>>0>(b+1|0)>>>0;h=r?h:j;r=r?k:b;q=r+1|0;if
(!($r(e,e+h|0,q)|0))s=f-h|0;else{h=f-r+-1|0;s=0;h=(r>>>0>h>>>0?r:h)+1|0}n=f|63;o=(s|0)!=0;p=f
-h|0;b=t;m=0;l=t;f:while(1){j=b;do if((l-j|0)>>>0<f>>>0){k=Ur(l,0,n)|0;if(k)if((k-j|0)>
x3e;>0<f>>>0){b=0;break a}else break;else{k=l+n|0;break}}else k=l;while(0);j=a[b+g>>0]|0;if(!(
1<<(j&31)&c[u+(((j&255)>>>5&255)<<2)>>2])){b=b+f|0;m=0;l=k;continue
}t=c[v+((j&255)<<2)>>2]|0;j=f-t|0;if((f|0)!=(t|0)){b=b+(o&(m|0)!=0&j>>>0<
h>>>0?p:j)|0;m=0;l=k;continue}j=q>>>0>m>>>0?q:m;l=a[e+j>>0]|0;g:do if
(!(l<<24>>24))j=q;else{while(1){if(l<<24>>24!=(a[b+j>>0]|0))break;j=j+1|0;l=a[
e+j>>0]|0;if(!(l<<24>>24)){j=q;break g}}b=b+(j-r)|0;m=0;l=k;continue f}while(0);do{if(j>>
;>0<=m>>>0)break a;j=j+-1|0}while((a[e+j>>0]|0)==(a[b+j>>0]|0));b=b+h|0;m=s;l=k}}while
(0)}else b=0}else b=0}else b=0}else b=t}else b=0}while(0);i=w;return b|0}function ws(a){a=a|0;var b=0,c=0;c=(cs(a)|0)+1|0;b=Fs(c
)|0;if(!b)b=0;else Ss(b|0,a|0,c|0)|0;return b|0}function xs(a,b){a=a|0;b=b|0;return ys(a,b,(cs(a)|0)+1|0)|0}function ys(b,c,d){b
=b|0;c=c|0;d=d|0;var e=0;e=c&255;do{if(!d){c=0;break}d=d+-1|0;c=b+d|0}while((a[c>>0]|0)!=e<<24>>
;24);return c|0}function zs(a,b){a=a|0;b=b|0;ds(a+(cs(a)|0)|0,b)|0;return a|0}function As(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;e=a[b
>>0]|0;a:do if(!(e<<24>>24))b=0;else{g=e;f=e&255;while(1){e=a[c>>0]|0;if(!(e<
x3c;24>>24)){b=g;break a}if(g<<24>>24!=e<<24>>24?(g=Ir(f)|0,(g|0)!=(Ir(d[c>
;>0]|0)|0)):0)break;b=b+1|0;c=c+1|0;e=a[b>>0]|0;if(!(e<<24>>24)){b=0;break a}else{g=e;f=e&
;255}}b=a[b>>0]|0}while(0);g=Ir(b&255)|0;return g-(Ir(d[c>>0]|0)|0)|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,r=0;r=i;i=i+208|0;o=r+8|0;p=r;f=_(d,b)|0;n=p;c[n>>2]=1;c[n
+4>>2]=0;if(f|0){n=0-d|0;c[o+4>>2]=d;c[o>>2]=d;g=d;b=d;h=2;while(1){b=b+d+g|0;c[o+(h<<2)
x3e;>2]=b;if(b>>>0<f>>>0){m=g;g=b;h=h+1|0;b=m}else break}h=a+f+n|0;m=p+4|0;if(h>>
;>0>a>>>0){j=h;g=1;f=1;while(1){do if((g&3|0)==3){Cs(a,d,e,f,o);l=c[m>>2]|0;b=l<<
;30|(c[p>>2]|0)>>>2;c[p>>2]=b;c[m>>2]=l>>>2;f=f+2|0}else{b=f+-1|0;if
((c[o+(b<<2)>>2]|0)>>>0<(j-a|0)>>>0)Cs(a,d,e,f,o);else Es(a,d,e,p,f,0,o);
if((f|0)==1){b=c[p>>2]|0;c[m>>2]=b>>>31|c[m>>2]<<1;b=b<<1;c[p
x3e;>2]=b;f=0;break}if(b>>>0>31){g=c[p>>2]|0;c[m>>2]=g;c[p>>2]=0;b=f+-33|
0;f=g;g=0}else{f=c[m>>2]|0;g=c[p>>2]|0}c[m>>2]=g>>>(32-b|0)|f<<b;b=g<
;<b;c[p>>2]=b;f=1}while(0);g=b|1;c[p>>2]=g;b=a+d|0;if(b>>>0>=h>>>0){
a=f;break}else a=b}}else{b=a;a=1}Es(b,d,e,p,a,0,o);l=p+4|0;g=c[p>>2]|0;h=c[l>>2]|0;f=(h|0)==0;if(!((a|0)==1
x26;(g|0)==1&f)){k=h;while(1){if((a|0)<2){h=g+-1|0;do if(h){if(!(h&1)){f=0;do{f=f+1|0;h=h>>>1}while
(!(h&1|0))}else{if(f)f=32;else{if(!(k&1)){h=k;f=0}else{j=0;h=k;f=0;break}do{f=f+1|0;h=h>>>1}while(!(h
x26;1|0))}f=f+32|0}if(f>>>0>31)q=28;else{j=f;h=k}}else{f=32;q=28}while(0);if((q|0)==28){q=0;c[p>>2
]=k;c[m>>2]=0;j=f+-32|0;g=k;h=0}c[p>>2]=h<<32-j|g>>>j;c[m>>2]=h>>
;>j;b=b+n|0;h=f+a|0}else{j=g>>>30;h=a+-2|0;c[p>>2]=(g<<1&2147483646|j<<31
)^3;c[m>>2]=(j|k<<2)>>>1;Es(b+(0-(c[o+(h<<2)>>2]|0))+n|0,d,e,p,a+-1|0,1,o
);k=c[p>>2]|0;c[m>>2]=k>>>31|c[m>>2]<<1;c[p>>2]=k<<1|
1;b=b+n|0;Es(b,d,e,p,h,1,o)}g=c[p>>2]|0;k=c[l>>2]|0;f=(k|0)==0;if((h|0)==1&(g|0)==1&f)break;else a
=h}}}i=r;return}function Cs(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;p=i;i=i+240|0;o=p;c
[o>>2]=a;a:do if((e|0)>1){n=0-b|0;g=e;h=a;k=a;l=1;while(1){a=h+n|0;m=g+-2|0;j=a+(0-(c[f+(m<<2)>>
;2]|0))|0;if((Ya[d&127](k,j)|0)>-1?(Ya[d&127](k,a)|0)>-1:0){e=l;break a}e=l+1|0;h=o+(l<<2)|0;if((Ya
[d&127](j,a)|0)>-1){c[h>>2]=j;a=j;g=g+-1|0}else{c[h>>2]=a;g=m}if((g|0)<=1)break a;h=a;k=c[o
x3e;>2]|0;l=e}}else e=1;while(0);Ds(b,o,e);i=p;return}function Ds(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+
256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0>256?256:
a;Ss(e|0,c[b>>2]|0,f|0)|0;e=0;do{j=b+(e<<2)|0;e=e+1|0;Ss(c[j>>2]|0,c[b+(e<<2)>>
;2]|0,f|0)|0;c[j>>2]=(c[j>>2]|0)+f}while((e|0)!=(d|0));if((a|0)==(f|0))break a;a=a-f|0;e=c[g>>2]|0
}while(0);i=h;return}function Es(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;r=i;i=i+240|0;p=r;l=c[e>>2]|0;k=c[e+4>>2]|0;c[p>>2]=a;o=0-b|0;a:do if((k|0)!=0|(l|0)!=1?(j=a+(0-(
c[h+(f<<2)>>2]|0))|0,(Ya[d&127](j,a)|0)>=1):0){g=(g|0)==0;m=1;n=l;while(1){if(g&(f|0)>1){
e=a+o|0;g=c[h+(f+-2<<2)>>2]|0;if((Ya[d&127](e,j)|0)>-1){g=f;e=m;q=19;break a}if((Ya[d&127](e+(
0-g)|0,j)|0)>-1){g=f;e=m;q=19;break a}}e=m+1|0;c[p+(m<<2)>>2]=j;g=n+-1|0;do if(g){if(!(g&1)){a=0;do
{a=a+1|0;g=g>>>1}while(!(g&1|0))}else{if(!k)g=32;else{if(!(k&1)){a=k;g=0}else{l=0;g=n;a=0;break}do{g=g+
1|0;a=a>>>1}while(!(a&1|0))}a=g+32|0}if(a>>>0>31)q=15;else{l=a;g=n}}else{a=32;q=15}while
(0);if((q|0)==15){q=0;l=a+-32|0;g=k;k=0}n=k<<32-l|g>>>l;k=k>>>l;g=a+f|0;if(!((k|0)!=0|(n
|0)!=1)){a=j;q=19;break a}a=j+(0-(c[h+(g<<2)>>2]|0))|0;if((Ya[d&127](a,c[p>>2]|0)|0)<1){
a=j;f=g;g=0;q=18;break}else{l=j;f=g;g=1;j=a;m=e;a=l}}}else{e=1;q=18}while(0);if((q|0)==18?(g|0)==0:0){g=f;q=19}if((q|0)==19){Ds(
b,p,e);Cs(a,b,d,g,h)}i=r;return}function Fs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,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;do if(a>>>0<245){o=a>>>
;0<11?16:a+11&-8;a=o>>>3;j=c[18400]|0;b=j>>>a;if(b&3|0){b=(b&1^1)+a|0;d=73640+(
b<<1<<2)|0;e=d+8|0;f=c[e>>2]|0;g=f+8|0;h=c[g>>2]|0;do if((d|0)!=(h|0)){if(h>>
x3e;0<(c[18404]|0)>>>0)ya();a=h+12|0;if((c[a>>2]|0)==(f|0)){c[a>>2]=d;c[e>>2]=
h;break}else ya()}else c[18400]=j&~(1<<b);while(0);L=b<<3;c[f+4>>2]=L|3;L=f+L+4|0;c[L>
x3e;2]=c[L>>2]|1;L=g;return L|0}h=c[18402]|0;if(o>>>0>h>>>0){if(b|0){d=2<<
;a;d=b<<a&(d|0-d);d=(d&0-d)+-1|0;i=d>>>12&16;d=d>>>i;f=d>>>
;5&8;d=d>>>f;g=d>>>2&4;d=d>>>g;e=d>>>1&2;d=d>>
;>e;b=d>>>1&1;b=(f|i|g|e|b)+(d>>>b)|0;d=73640+(b<<1<<2)|0;e=d+8|0;g=
c[e>>2]|0;i=g+8|0;f=c[i>>2]|0;do if((d|0)!=(f|0)){if(f>>>0<(c[18404]|0)>>>
;0)ya();a=f+12|0;if((c[a>>2]|0)==(g|0)){c[a>>2]=d;c[e>>2]=f;k=c[18402]|0;break}else ya()}else{c[18400
]=j&~(1<<b);k=h}while(0);h=(b<<3)-o|0;c[g+4>>2]=o|3;e=g+o|0;c[e+4>>2]=h|1;c[e+h>
;>2]=h;if(k|0){f=c[18405]|0;b=k>>>3;d=73640+(b<<1<<2)|0;a=c[18400]|0;b=1<<b;if
(a&b){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{l=a;m=b}}else{c[
18400]=a|b;l=d+8|0;m=d}c[l>>2]=f;c[m+12>>2]=f;c[f+8>>2]=m;c[f+12>>2]=d}c[18402]=h;c[18405
]=e;L=i;return L|0}a=c[18401]|0;if(a){d=(a&0-a)+-1|0;K=d>>>12&16;d=d>>>K;J=d>>
x3e;5&8;d=d>>>J;L=d>>>2&4;d=d>>>L;b=d>>>1&2;d=d>
x3e;>b;e=d>>>1&1;e=c[73904+((J|K|L|b|e)+(d>>>e)<<2)>>2]|0;d=(c[e+4
x3e;>2]&-8)-o|0;b=e;while(1){a=c[b+16>>2]|0;if(!a){a=c[b+20>>2]|0;if(!a){j=e;break}}b=(c[a+4>
x3e;2]&-8)-o|0;L=b>>>0<d>>>0;d=L?b:d;b=a;e=L?a:e}g=c[18404]|0;if(j>>>0<
;g>>>0)ya();i=j+o|0;if(j>>>0>=i>>>0)ya();h=c[j+24>>2]|0;e=c[j+12>
;>2]|0;do if((e|0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if(!a){b=j+16|0;a=c[b>>2]|0;if(!a){n=0;break}}while(1){
e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;b=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;b=e}}if(b>>
;>0<g>>>0)ya();else{c[b>>2]=0;n=a;break}}else{f=c[j+8>>2]|0;if(f>>>0
<g>>>0)ya();a=f+12|0;if((c[a>>2]|0)!=(j|0))ya();b=e+8|0;if((c[b>>2]|0)==(j|0)){c[a>
x3e;2]=e;c[b>>2]=f;n=e;break}else ya()}while(0);do if(h|0){a=c[j+28>>2]|0;b=73904+(a<<2)|0;if((j|0
)==(c[b>>2]|0)){c[b>>2]=n;if(!n){c[18401]=c[18401]&~(1<<a);break}}else{if(h>>>
0<(c[18404]|0)>>>0)ya();a=h+16|0;if((c[a>>2]|0)==(j|0))c[a>>2]=n;else c[h+20>>
2]=n;if(!n)break}b=c[18404]|0;if(n>>>0<b>>>0)ya();c[n+24>>2]=h;a=c[j+16>>
2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else{c[n+16>>2]=a;c[a+24>>2]=n;break}while
(0);a=c[j+20>>2]|0;if(a|0)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[n+20>>2]=
a;c[a+24>>2]=n;break}}while(0);if(d>>>0<16){L=d+o|0;c[j+4>>2]=L|3;L=j+L+4|0;c[L>>
;2]=c[L>>2]|1}else{c[j+4>>2]=o|3;c[i+4>>2]=d|1;c[i+d>>2]=d;a=c[18402]|0;if(a|0){f=c[18405
]|0;b=a>>>3;e=73640+(b<<1<<2)|0;a=c[18400]|0;b=1<<b;if(a&b){a=e+8|0;b=c[a>
;>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{p=a;q=b}}else{c[18400]=a|b;p=e+8|0;q=e}c[p>
;>2]=f;c[q+12>>2]=f;c[f+8>>2]=q;c[f+12>>2]=e}c[18402]=d;c[18405]=i}L=j+8|0;return L|0}}}else
if(a>>>0<=4294967231){a=a+11|0;o=a&-8;j=c[18401]|0;if(j){d=0-o|0;a=a>>>8;if(a)if(o>
x3e;>0>16777215)i=31;else{q=(a+1048320|0)>>>16&8;E=a<<q;p=(E+520192|0)>>>
16&4;E=E<<p;i=(E+245760|0)>>>16&2;i=14-(p|q|i)+(E<<i>>>15)|0;i=o>
;>>(i+7|0)&1|i<<1}else i=0;b=c[73904+(i<<2)>>2]|0;a:do if(!b){a=0;b=0;E=86}else{f=d
;a=0;g=o<<((i|0)==31?0:25-(i>>>1)|0);h=b;b=0;while(1){e=c[h+4>>2]&-8;d=e-o|0;if(d>
x3e;>0<f>>>0)if((e|0)==(o|0)){a=h;b=h;E=90;break a}else b=h;else d=f;e=c[h+20>>2]|0;h=c[h+16+(
g>>>31<<2)>>2]|0;a=(e|0)==0|(e|0)==(h|0)?a:e;e=(h|0)==0;if(e){E=86;break}else{f=d;g=g<
x3c;(e&1^1)}}}while(0);if((E|0)==86){if((a|0)==0&(b|0)==0){a=2<<i;a=j&(a|0-a);if(!a)break;q=(a&0-a
)+-1|0;m=q>>>12&16;q=q>>>m;l=q>>>5&8;q=q>>>l;n=q>>
;>2&4;q=q>>>n;p=q>>>1&2;q=q>>>p;a=q>>>1&1;a=c[73904
+((l|m|n|p|a)+(q>>>a)<<2)>>2]|0}if(!a){i=d;j=b}else E=90}if((E|0)==90)while(1){E=0;q=(c[a+4
x3e;>2]&-8)-o|0;e=q>>>0<d>>>0;d=e?q:d;b=e?a:b;e=c[a+16>>2]|0;if(e|0){a=e;
E=90;continue}a=c[a+20>>2]|0;if(!a){i=d;j=b;break}else E=90}if((j|0)!=0?i>>>0<((c[18402]|0)-o|0)
x3e;>>0:0){f=c[18404]|0;if(j>>>0<f>>>0)ya();h=j+o|0;if(j>>>0>=h
>>>0)ya();g=c[j+24>>2]|0;d=c[j+12>>2]|0;do if((d|0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if
(!a){b=j+16|0;a=c[b>>2]|0;if(!a){s=0;break}}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;
e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<f>>>0)ya();else{c[b>>2]=0;
s=a;break}}else{e=c[j+8>>2]|0;if(e>>>0<f>>>0)ya();a=e+12|0;if((c[a>>2]|0)!=(
j|0))ya();b=d+8|0;if((c[b>>2]|0)==(j|0)){c[a>>2]=d;c[b>>2]=e;s=d;break}else ya()}while(0);do if(g|
0){a=c[j+28>>2]|0;b=73904+(a<<2)|0;if((j|0)==(c[b>>2]|0)){c[b>>2]=s;if(!s){c[18401]=c[18401
]&~(1<<a);break}}else{if(g>>>0<(c[18404]|0)>>>0)ya();a=g+16|0;if((c[a>>
;2]|0)==(j|0))c[a>>2]=s;else c[g+20>>2]=s;if(!s)break}b=c[18404]|0;if(s>>>0<b>>
;>0)ya();c[s+24>>2]=g;a=c[j+16>>2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else
{c[s+16>>2]=a;c[a+24>>2]=s;break}while(0);a=c[j+20>>2]|0;if(a|0)if(a>>>0<(c[18404
]|0)>>>0)ya();else{c[s+20>>2]=a;c[a+24>>2]=s;break}}while(0);do if(i>>>0>=
16){c[j+4>>2]=o|3;c[h+4>>2]=i|1;c[h+i>>2]=i;a=i>>>3;if(i>>>0<256
){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>
;>0<(c[18404]|0)>>>0)ya();else{u=a;v=b}}else{c[18400]=b|a;u=d+8|0;v=d}c[u>>2]=h;c[v+12>
x3e;2]=h;c[h+8>>2]=v;c[h+12>>2]=d;break}a=i>>>8;if(a)if(i>>>0>16777215)d=
31;else{K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|0)>>>16&4;L=L<<J;d
=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>>15)|0;d=i>>>(d+7|0)&1
|d<<1}else d=0;e=73904+(d<<2)|0;c[h+28>>2]=d;a=h+16|0;c[a+4>>2]=0;c[a>>2]=0;a=
c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[e>>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8
>>2]=h;break}f=i<<((d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>
x3e;2]&-8|0)==(i|0)){d=a;E=148;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d){E=145;break
}else{f=f<<1;a=d}}if((E|0)==145)if(b>>>0<(c[18404]|0)>>>0)ya();else{c[b>>
2]=h;c[h+24>>2]=a;c[h+12>>2]=h;c[h+8>>2]=h;break}else if((E|0)==148){a=d+8|0;b=c[a>>2]|0
;L=c[18404]|0;if(b>>>0>=L>>>0&d>>>0>=L>>>0){c[b+12>
;>2]=h;c[a>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;c[h+24>>2]=0;break}else ya()}}else{L=i+o|
0;c[j+4>>2]=L|3;L=j+L+4|0;c[L>>2]=c[L>>2]|1}while(0);L=j+8|0;return L|0}}}else o=-1;while(0);d=c[18402
]|0;if(d>>>0>=o>>>0){a=d-o|0;b=c[18405]|0;if(a>>>0>15){L=b+o|0;c[18405]=L
;c[18402]=a;c[L+4>>2]=a|1;c[L+a>>2]=a;c[b+4>>2]=o|3}else{c[18402]=0;c[18405]=0;c[b+4>>2]=
d|3;L=b+d+4|0;c[L>>2]=c[L>>2]|1}L=b+8|0;return L|0}a=c[18403]|0;if(a>>>0>o>>
x3e;0){J=a-o|0;c[18403]=J;L=c[18406]|0;K=L+o|0;c[18406]=K;c[K+4>>2]=J|1;c[L+4>>2]=o|3;L=L+8|0;return L|0}do
if(!(c[18518]|0)){a=Ia(30)|0;if(!(a+-1&a)){c[18520]=a;c[18519]=a;c[18521]=-1;c[18522]=-1;c[18523]=0;c[18511]=0;c[18518]=(va
(0)|0)&-16^1431655768;break}else ya()}while(0);h=o+48|0;g=c[18520]|0;i=o+47|0;f=g+i|0;g=0-g|0;j=f&g;if(j>>
x3e;0<=o>>>0){L=0;return L|0}a=c[18510]|0;if(a|0?(u=c[18508]|0,v=u+j|0,v>>>0<=u>>
;>0|v>>>0>a>>>0):0){L=0;return L|0}b:do if(!(c[18511]&4)){a=c[18406]|0;c:do if(a){d
=74048;while(1){b=c[d>>2]|0;if(b>>>0<=a>>>0?(r=d+4|0,(b+(c[r>>2]|0)|0)>
;>>0>a>>>0):0){e=d;d=r;break}d=c[d+8>>2]|0;if(!d){E=173;break c}}a=f-(c[18403]|0)&g
;if(a>>>0<2147483647){b=Ba(a|0)|0;if((b|0)==((c[e>>2]|0)+(c[d>>2]|0)|0)){if((b|0)!=(-1|0
)){h=b;f=a;E=193;break b}}else E=183}}else E=173;while(0);do if((E|0)==173?(t=Ba(0)|0,(t|0)!=(-1|0)):0){a=t;b=c[18519]|0;d=b+-1|
0;if(!(d&a))a=j;else a=j-a+(d+a&0-b)|0;b=c[18508]|0;d=b+a|0;if(a>>>0>o>>>0&a
x3e;>>0<2147483647){v=c[18510]|0;if(v|0?d>>>0<=b>>>0|d>>>0>
;v>>>0:0)break;b=Ba(a|0)|0;if((b|0)==(t|0)){h=t;f=a;E=193;break b}else E=183}}while(0);d:do if((E|0)==183){d=0-a|
0;do if(h>>>0>a>>>0&(a>>>0<2147483647&(b|0)!=(-1|0))?(w=c[18520
]|0,w=i-a+w&0-w,w>>>0<2147483647):0)if((Ba(w|0)|0)==(-1|0)){Ba(d|0)|0;break d}else{a=w+a|0;break}while(
0);if((b|0)!=(-1|0)){h=b;f=a;E=193;break b}}while(0);c[18511]=c[18511]|4;E=190}else E=190;while(0);if((((E|0)==190?j>>
x3e;0<2147483647:0)?(x=Ba(j|0)|0,y=Ba(0)|0,x>>>0<y>>>0&((x|0)!=(-1|0)&(y|0)!=(-
1|0))):0)?(z=y-x|0,z>>>0>(o+40|0)>>>0):0){h=x;f=z;E=193}if((E|0)==193){a=(c[18508]|0)+f|0;c[18508
]=a;if(a>>>0>(c[18509]|0)>>>0)c[18509]=a;i=c[18406]|0;do if(i){e=74048;do{a=c[e>>2]|
0;b=e+4|0;d=c[b>>2]|0;if((h|0)==(a+d|0)){A=a;B=b;C=d;D=e;E=203;break}e=c[e+8>>2]|0}while((e|0)!=0);if(((E|0)==
203?(c[D+12>>2]&8|0)==0:0)?i>>>0<h>>>0&i>>>0>=A>
x3e;>0:0){c[B>>2]=C+f;L=i+8|0;L=(L&7|0)==0?0:0-L&7;K=i+L|0;L=f-L+(c[18403]|0)|0;c[18406]=K;c[18403]=L;c
[K+4>>2]=L|1;c[K+L+4>>2]=40;c[18407]=c[18522];break}a=c[18404]|0;if(h>>>0<a>>
x3e;0){c[18404]=h;j=h}else j=a;d=h+f|0;a=74048;while(1){if((c[a>>2]|0)==(d|0)){b=a;E=211;break}a=c[a+8>>2]|0
;if(!a){b=74048;break}}if((E|0)==211)if(!(c[a+12>>2]&8)){c[b>>2]=h;l=a+4|0;c[l>>2]=(c[l>
x3e;2]|0)+f;l=h+8|0;l=h+((l&7|0)==0?0:0-l&7)|0;a=d+8|0;a=d+((a&7|0)==0?0:0-a&7)|0;k=l+o|0;g=a-l-o|0;c[l+4>
;>2]=o|3;do if((a|0)!=(i|0)){if((a|0)==(c[18405]|0)){L=(c[18402]|0)+g|0;c[18402]=L;c[18405]=k;c[k+4>>2]=L|1;c[k+L
>>2]=L;break}b=c[a+4>>2]|0;if((b&3|0)==1){i=b&-8;f=b>>>3;e:do if(b>>>
;0>=256){h=c[a+24>>2]|0;e=c[a+12>>2]|0;do if((e|0)==(a|0)){d=a+16|0;e=d+4|0;b=c[e>>2]|0;if(!b
){b=c[d>>2]|0;if(!b){J=0;break}}else d=e;while(1){e=b+20|0;f=c[e>>2]|0;if(f|0){b=f;d=e;continue}e=b+16|0;f=c
[e>>2]|0;if(!f)break;else{b=f;d=e}}if(d>>>0<j>>>0)ya();else{c[d>>2]=0;J=b
;break}}else{f=c[a+8>>2]|0;if(f>>>0<j>>>0)ya();b=f+12|0;if((c[b>>2]|0)!=(
a|0))ya();d=e+8|0;if((c[d>>2]|0)==(a|0)){c[b>>2]=e;c[d>>2]=f;J=e;break}else ya()}while(0);if(!h)break
;b=c[a+28>>2]|0;d=73904+(b<<2)|0;do if((a|0)!=(c[d>>2]|0)){if(h>>>0<(c[18404]|
0)>>>0)ya();b=h+16|0;if((c[b>>2]|0)==(a|0))c[b>>2]=J;else c[h+20>>2]=J;if(!J)break
e}else{c[d>>2]=J;if(J|0)break;c[18401]=c[18401]&~(1<<b);break e}while(0);e=c[18404]|0;if(J>>
x3e;0<e>>>0)ya();c[J+24>>2]=h;b=a+16|0;d=c[b>>2]|0;do if(d|0)if(d>>>0<
;e>>>0)ya();else{c[J+16>>2]=d;c[d+24>>2]=J;break}while(0);b=c[b+4>>2]|0;if(!b)break
;if(b>>>0<(c[18404]|0)>>>0)ya();else{c[J+20>>2]=b;c[b+24>>2]=J;break}}else
{d=c[a+8>>2]|0;e=c[a+12>>2]|0;b=73640+(f<<1<<2)|0;do if((d|0)!=(b|0)){if(d>>
x3e;0<j>>>0)ya();if((c[d+12>>2]|0)==(a|0))break;ya()}while(0);if((e|0)==(d|0)){c[18400]=c[18400]
x26;~(1<<f);break}do if((e|0)==(b|0))G=e+8|0;else{if(e>>>0<j>>>0)ya();b=e+8|0;if((c
[b>>2]|0)==(a|0)){G=b;break}ya()}while(0);c[d+12>>2]=e;c[G>>2]=d}while(0);a=a+i|0;g=i+g|0}a=a+4|0;
c[a>>2]=c[a>>2]&-2;c[k+4>>2]=g|1;c[k+g>>2]=g;a=g>>>3;if(g>>
;>0<256){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;do if(!(b&a)){c[18400]=b|a;K=d+8|0
;L=d}else{a=d+8|0;b=c[a>>2]|0;if(b>>>0>=(c[18404]|0)>>>0){K=a;L=b;break}ya()}while(
0);c[K>>2]=k;c[L+12>>2]=k;c[k+8>>2]=L;c[k+12>>2]=d;break}a=g>>>8;do if(!a
)d=0;else{if(g>>>0>16777215){d=31;break}K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192
|0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>
;>15)|0;d=g>>>(d+7|0)&1|d<<1}while(0);e=73904+(d<<2)|0;c[k+28>>2]=d;a=k+16
|0;c[a+4>>2]=0;c[a>>2]=0;a=c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[e>>2]=k;c[k+
24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}f=g<<((d|0)==31?0:25-(d>>>1)|0);a
=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0)==(g|0)){d=a;E=281;break}b=a+16+(f>>>31<<
;2)|0;d=c[b>>2]|0;if(!d){E=278;break}else{f=f<<1;a=d}}if((E|0)==278)if(b>>>0<(c[18404]|0
)>>>0)ya();else{c[b>>2]=k;c[k+24>>2]=a;c[k+12>>2]=k;c[k+8>>2]=k;break}else
if((E|0)==281){a=d+8|0;b=c[a>>2]|0;L=c[18404]|0;if(b>>>0>=L>>>0&d>>
x3e;0>=L>>>0){c[b+12>>2]=k;c[a>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;c[k+24
>>2]=0;break}else ya()}}else{L=(c[18403]|0)+g|0;c[18403]=L;c[18406]=k;c[k+4>>2]=L|1}while(0);L=l+8|0;return
L|0}else b=74048;while(1){a=c[b>>2]|0;if(a>>>0<=i>>>0?(F=a+(c[b+4>>2]|0)|
0,F>>>0>i>>>0):0){b=F;break}b=c[b+8>>2]|0}g=b+-47|0;d=g+8|0;d=g+((d&7|0)==0?0:
0-d&7)|0;g=i+16|0;d=d>>>0<g>>>0?i:d;a=d+8|0;e=h+8|0;e=(e&7|0)==0?0:0-e&7;L=h+e
|0;e=f+-40-e|0;c[18406]=L;c[18403]=e;c[L+4>>2]=e|1;c[L+e+4>>2]=40;c[18407]=c[18522];e=d+4|0;c[e>>2
]=27;c[a>>2]=c[18512];c[a+4>>2]=c[18513];c[a+8>>2]=c[18514];c[a+12>>2]=c[18515];c[18512]=
h;c[18513]=f;c[18515]=0;c[18514]=a;a=d+24|0;do{a=a+4|0;c[a>>2]=7}while((a+4|0)>>>0<b>>
x3e;0);if((d|0)!=(i|0)){h=d-i|0;c[e>>2]=c[e>>2]&-2;c[i+4>>2]=h|1;c[d>>2]=h;a=h>
;>>3;if(h>>>0<256){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;if(b&
;a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{H=a;I=b}}else{c[18400]=
b|a;H=d+8|0;I=d}c[H>>2]=i;c[I+12>>2]=i;c[i+8>>2]=I;c[i+12>>2]=d;break}a=h>>>
;8;if(a)if(h>>>0>16777215)d=31;else{K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|
0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>
;>15)|0;d=h>>>(d+7|0)&1|d<<1}else d=0;f=73904+(d<<2)|0;c[i+28>>2]=d;c[i+20
>>2]=0;c[g>>2]=0;a=c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[f>>2]=i;c[i+24>
x3e;2]=f;c[i+12>>2]=i;c[i+8>>2]=i;break}e=h<<((d|0)==31?0:25-(d>>>1)|0);a=c[f>
x3e;2]|0;while(1){if((c[a+4>>2]&-8|0)==(h|0)){d=a;E=307;break}b=a+16+(e>>>31<<2)|0;d=c[b
>>2]|0;if(!d){E=304;break}else{e=e<<1;a=d}}if((E|0)==304)if(b>>>0<(c[18404]|0)>>
;>0)ya();else{c[b>>2]=i;c[i+24>>2]=a;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((E|0)==
307){a=d+8|0;b=c[a>>2]|0;L=c[18404]|0;if(b>>>0>=L>>>0&d>>>0>
;=L>>>0){c[b+12>>2]=i;c[a>>2]=i;c[i+8>>2]=b;c[i+12>>2]=d;c[i+24>>
;2]=0;break}else ya()}}}else{L=c[18404]|0;if((L|0)==0|h>>>0<L>>>0)c[18404]=h;c[18512]=h;c[18513
]=f;c[18515]=0;c[18409]=c[18518];c[18408]=-1;a=0;do{L=73640+(a<<1<<2)|0;c[L+12>>2]=L;c[L+8>
x3e;2]=L;a=a+1|0}while((a|0)!=32);L=h+8|0;L=(L&7|0)==0?0:0-L&7;K=h+L|0;L=f+-40-L|0;c[18406]=K;c[18403]=L;c[K+4>
x3e;2]=L|1;c[K+L+4>>2]=40;c[18407]=c[18522]}while(0);a=c[18403]|0;if(a>>>0>o>>>0){J
=a-o|0;c[18403]=J;L=c[18406]|0;K=L+o|0;c[18406]=K;c[K+4>>2]=J|1;c[L+4>>2]=o|3;L=L+8|0;return L|0}}c[(Ar()|0)
x3e;>2]=12;L=0;return L|0}function Gs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;if(!a)return
;d=a+-8|0;h=c[18404]|0;if(d>>>0<h>>>0)ya();a=c[a+-4>>2]|0;b=a&3;if((b|0)==1)ya
();e=a&-8;m=d+e|0;do if(!(a&1)){a=c[d>>2]|0;if(!b)return;k=d+(0-a)|0;j=a+e|0;if(k>>>0<h
x3e;>>0)ya();if((k|0)==(c[18405]|0)){a=m+4|0;b=c[a>>2]|0;if((b&3|0)!=3){q=k;g=j;break}c[18402]=j;c[a>
;>2]=b&-2;c[k+4>>2]=j|1;c[k+j>>2]=j;return}e=a>>>3;if(a>>>0<256
){b=c[k+8>>2]|0;d=c[k+12>>2]|0;a=73640+(e<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>
;0<h>>>0)ya();if((c[b+12>>2]|0)!=(k|0))ya()}if((d|0)==(b|0)){c[18400]=c[18400]&~(1<<
;e);q=k;g=j;break}if((d|0)!=(a|0)){if(d>>>0<h>>>0)ya();a=d+8|0;if((c[a>>2]|0)==(k|0
))f=a;else ya()}else f=d+8|0;c[b+12>>2]=d;c[f>>2]=b;q=k;g=j;break}f=c[k+24>>2]|0;d=c[k+12>>
;2]|0;do if((d|0)==(k|0)){b=k+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){i=0;break}}else b=d;while(1
){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>
;>0<h>>>0)ya();else{c[b>>2]=0;i=a;break}}else{e=c[k+8>>2]|0;if(e>>>0
<h>>>0)ya();a=e+12|0;if((c[a>>2]|0)!=(k|0))ya();b=d+8|0;if((c[b>>2]|0)==(k|0)){c[a>
x3e;2]=d;c[b>>2]=e;i=d;break}else ya()}while(0);if(f){a=c[k+28>>2]|0;b=73904+(a<<2)|0;if((k|0)==(c
[b>>2]|0)){c[b>>2]=i;if(!i){c[18401]=c[18401]&~(1<<a);q=k;g=j;break}}else{if(f>>>
;0<(c[18404]|0)>>>0)ya();a=f+16|0;if((c[a>>2]|0)==(k|0))c[a>>2]=i;else c[f+20>>
;2]=i;if(!i){q=k;g=j;break}}d=c[18404]|0;if(i>>>0<d>>>0)ya();c[i+24>>2]=f;a=k+16|0;
b=c[a>>2]|0;do if(b|0)if(b>>>0<d>>>0)ya();else{c[i+16>>2]=b;c[b+24>
x3e;2]=i;break}while(0);a=c[a+4>>2]|0;if(a)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[i+
20>>2]=a;c[a+24>>2]=i;q=k;g=j;break}else{q=k;g=j}}else{q=k;g=j}}else{q=d;g=e}while(0);if(q>>>
0>=m>>>0)ya();a=m+4|0;b=c[a>>2]|0;if(!(b&1))ya();if(!(b&2)){if((m|0)==(c[18406]|0)){p=(c
[18403]|0)+g|0;c[18403]=p;c[18406]=q;c[q+4>>2]=p|1;if((q|0)!=(c[18405]|0))return;c[18405]=0;c[18402]=0;return}if((m|0)==(
c[18405]|0)){p=(c[18402]|0)+g|0;c[18402]=p;c[18405]=q;c[q+4>>2]=p|1;c[q+p>>2]=p;return}g=(b&-8)+g|0;e=b
>>>3;do if(b>>>0>=256){f=c[m+24>>2]|0;a=c[m+12>>2]|0;do if((a|0)==(m|0)){
b=m+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){n=0;break}}else b=d;while(1){d=a+20|0;e=c[d>>
;2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<(c[18404]|0
)>>>0)ya();else{c[b>>2]=0;n=a;break}}else{b=c[m+8>>2]|0;if(b>>>0<(c[18404
]|0)>>>0)ya();d=b+12|0;if((c[d>>2]|0)!=(m|0))ya();e=a+8|0;if((c[e>>2]|0)==(m|0)){c[d>>
;2]=a;c[e>>2]=b;n=a;break}else ya()}while(0);if(f|0){a=c[m+28>>2]|0;b=73904+(a<<2)|0;if((m|0)==(c[
b>>2]|0)){c[b>>2]=n;if(!n){c[18401]=c[18401]&~(1<<a);break}}else{if(f>>>0<
;(c[18404]|0)>>>0)ya();a=f+16|0;if((c[a>>2]|0)==(m|0))c[a>>2]=n;else c[f+20>>2]=n;if
(!n)break}d=c[18404]|0;if(n>>>0<d>>>0)ya();c[n+24>>2]=f;a=m+16|0;b=c[a>>2
]|0;do if(b|0)if(b>>>0<d>>>0)ya();else{c[n+16>>2]=b;c[b+24>>2]=n;break}while
(0);a=c[a+4>>2]|0;if(a|0)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[n+20>>2]=a
;c[a+24>>2]=n;break}}}else{b=c[m+8>>2]|0;d=c[m+12>>2]|0;a=73640+(e<<1<<2)|0;if
((b|0)!=(a|0)){if(b>>>0<(c[18404]|0)>>>0)ya();if((c[b+12>>2]|0)!=(m|0))ya()}if((d|0
)==(b|0)){c[18400]=c[18400]&~(1<<e);break}if((d|0)!=(a|0)){if(d>>>0<(c[18404]|0)>>
x3e;0)ya();a=d+8|0;if((c[a>>2]|0)==(m|0))l=a;else ya()}else l=d+8|0;c[b+12>>2]=d;c[l>>2]=b}while(0
);c[q+4>>2]=g|1;c[q+g>>2]=g;if((q|0)==(c[18405]|0)){c[18402]=g;return}}else{c[a>>2]=b&-2;c[q+
4>>2]=g|1;c[q+g>>2]=g}a=g>>>3;if(g>>>0<256){d=73640+(a<<1<
x3c;2)|0;b=c[18400]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>
;>>0)ya();else{o=a;p=b}}else{c[18400]=b|a;o=d+8|0;p=d}c[o>>2]=q;c[p+12>>2]=q;c[q+8>>2]=p
;c[q+12>>2]=d;return}a=g>>>8;if(a)if(g>>>0>16777215)d=31;else{o=(a+1048320|0)>
x3e;>16&8;p=a<<o;n=(p+520192|0)>>>16&4;p=p<<n;d=(p+245760|0)>>>
16&2;d=14-(n|o|d)+(p<<d>>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=73904
+(d<<2)|0;c[q+28>>2]=d;c[q+20>>2]=0;c[q+16>>2]=0;a=c[18401]|0;b=1<<d;do if(a
x26;b){f=g<<((d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0
)==(g|0)){d=a;e=130;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d){e=127;break}else{f=f<
x3c;1;a=d}}if((e|0)==127)if(b>>>0<(c[18404]|0)>>>0)ya();else{c[b>>2]=q;c[q+24>
x3e;2]=a;c[q+12>>2]=q;c[q+8>>2]=q;break}else if((e|0)==130){a=d+8|0;b=c[a>>2]|0;p=c[18404]|0;if(b
x3e;>>0>=p>>>0&d>>>0>=p>>>0){c[b+12>>2]=q;c[a>
;>2]=q;c[q+8>>2]=b;c[q+12>>2]=d;c[q+24>>2]=0;break}else ya()}}else{c[18401]=a|b;c[e>>
;2]=q;c[q+24>>2]=e;c[q+12>>2]=q;c[q+8>>2]=q}while(0);q=(c[18408]|0)+-1|0;c[18408]=q;if(!q)a=74056;
else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[18408]=-1;return}function Hs(a,b){a=a|0;b=b|0;var d=0,e=0;
if(!a){a=Fs(b)|0;return a|0}if(b>>>0>4294967231){c[(Ar()|0)>>2]=12;a=0;return a|0}d=Is(a+-8|0,b>
;>>0<11?16:b+11&-8)|0;if(d|0){a=d+8|0;return a|0}d=Fs(b)|0;if(!d){a=0;return a|0}e=c[a+-4>>2]|0;e=(
e&-8)-((e&3|0)==0?8:4)|0;Ss(d|0,a|0,(e>>>0<b>>>0?e:b)|0)|0;Gs(a);a=d;return a|0}
function Rh(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;ca=i;i=i+192
|0;Y=ca+172|0;l=ca+168|0;I=ca+164|0;H=ca+160|0;m=ca+156|0;n=ca+152|0;p=ca+148|0;aa=ca+144|0;u=ca+140|0;t=ca+136|0;s=ca+132|0;U=ca
+177|0;V=ca+176|0;q=ca+128|0;r=ca+124|0;o=ca+120|0;J=ca+116|0;M=ca+112|0;S=ca+108|0;P=ca+104|0;z=ca+100|0;v=ca+96|0;w=ca+92|0;y=
ca+88|0;x=ca+84|0;D=ca+80|0;F=ca+76|0;A=ca+72|0;B=ca+68|0;G=ca+64|0;E=ca+60|0;C=ca+56|0;W=ca+52|0;Q=ca+48|0;R=ca+44|0;N=ca+40|0;
O=ca+36|0;K=ca+32|0;X=ca+28|0;_=ca+16|0;L=ca+12|0;T=ca+8|0;$=ca+4|0;Z=ca;c[l>>2]=f;c[I>>2]=g;c[H>>
2]=h;c[m>>2]=j;c[n>>2]=k;c[p>>2]=c[I>>2];a[U>>0]=1;a[V>>0]=0;c[q>
;>2]=c[(c[(c[I>>2]|0)+96>>2]|0)+4>>2];c[u>>2]=Ud(c[q>>2]|0,11340)|0;do if
(c[u>>2]|0){c[r>>2]=c[(c[p>>2]|0)+96>>2];c[o>>2]=Vd(c[r>>2]|0,71003)|
0;c[t>>2]=c[o>>2];c[s>>2]=Ud(c[q>>2]|0,11524)|0;f=Kc(c[l>>2]|0,0)|0;c[aa>
x3e;2]=f;if(!f){c[aa>>2]=Za[c[(c[u>>2]|0)+4>>2]&31](c[l>>2]|0,c[p>>2]|0,c
[H>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;if(!(c[aa>>2]|0)){if((c[(c[p>>2]|0)+148>
x3e;2]|0)!=1330926671){ba=112;break}if((c[H>>2]|0)<0){c[Y>>2]=0;ba=c[Y>>2]|0;i=ca;return ba|0
}if((c[H>>2]|0)>0){c[aa>>2]=6;break}a[V>>0]=1;c[aa>>2]=Wa[c[(c[p>>2]|0)+508
>>2]&31](c[p>>2]|0,1751474532,c[l>>2]|0,0)|0;if(c[aa>>2]|0){c[aa>>2]=Ya[c
[(c[u>>2]|0)+40>>2]&127](c[p>>2]|0,c[l>>2]|0)|0;if(c[aa>>2]|0)break}else{
a[U>>0]=0;c[aa>>2]=Za[c[(c[u>>2]|0)+8>>2]&31](c[l>>2]|0,c[p>>2]|
0,0,c[m>>2]|0,c[n>>2]|0)|0;if(c[aa>>2]|0)break}c[aa>>2]=Wa[c[(c[p>>2]|0)+508
x3e;>2]&31](c[p>>2]|0,1128678944,c[l>>2]|0,0)|0;if(c[aa>>2]|0)break}else{f=Kc(c[l>
x3e;2]|0,0)|0;c[aa>>2]=f;if(f|0)break;c[aa>>2]=0}c[S>>2]=c[(c[I>>2]|0)+100>>2];
c[J>>2]=bc(c[S>>2]|0,2072,aa)|0;if((c[aa>>2]|0)==0?(c[(c[p>>2]|0)+692>>2]=c[J
x3e;>2],c[aa>>2]=Sh(c[q>>2]|0,c[l>>2]|0,c[H>>2]|0,c[J>>2]|0,a[U>>
;0]|0)|0,(c[aa>>2]|0)==0):0){c[(c[J>>2]|0)+2052>>2]=c[s>>2];c[(c[J>>2]|0)+2056
>>2]=c[t>>2];c[(c[I>>2]|0)+4>>2]=c[H>>2];c[(c[I>>2]|0)+16>>
;2]=c[(c[J>>2]|0)+12>>2];c[M>>2]=(c[J>>2]|0)+1324;if(c[t>>2]|0?1:(c[(c[M>
x3e;2]|0)+128>>2]|0)!=65535){if(!(c[(c[M>>2]|0)+64>>2]|0)){if(d[U>>0]|0)l=1e3;else l=e[(
c[p>>2]|0)+68>>1]|0;c[(c[M>>2]|0)+64>>2]=l}c[v>>2]=(c[M>>2]|0)+48;c[
w>>2]=(c[M>>2]|0)+68;c[y>>2]=(c[M>>2]|0)+64;f=c[(c[v>>2]|0)+12>>2]|0
;c[x>>2]=(c[(c[v>>2]|0)+12>>2]|0)<0?0-f|0:f;if((c[x>>2]|0)!=65536){f=Vb(c[c[y>
x3e;2]>>2]|0,c[x>>2]|0)|0;c[c[y>>2]>>2]=f;y=Vb(c[c[v>>2]>>2]|0,c[x
x3e;>2]|0)|0;c[c[v>>2]>>2]=y;y=Vb(c[(c[v>>2]|0)+8>>2]|0,c[x>>2]|0)|0;c[(c
[v>>2]|0)+8>>2]=y;y=Vb(c[(c[v>>2]|0)+4>>2]|0,c[x>>2]|0)|0;c[(c[v>>2]|
0)+4>>2]=y;y=Vb(c[(c[v>>2]|0)+12>>2]|0,c[x>>2]|0)|0;c[(c[v>>2]|0)+12>>
;2]=y;y=Vb(c[c[w>>2]>>2]|0,c[x>>2]|0)|0;c[c[w>>2]>>2]=y;y=Vb(c[(c[w>>
;2]|0)+4>>2]|0,c[x>>2]|0)|0;c[(c[w>>2]|0)+4>>2]=y}y=c[w>>2]|0;c[y>>2
]=c[y>>2]>>16;y=(c[w>>2]|0)+4|0;c[y>>2]=c[y>>2]>>16;c[z>>2
]=c[(c[J>>2]|0)+1892>>2];while(1){if((c[z>>2]|0)>>>0<=0)break;c[D>>2
]=c[(c[J>>2]|0)+1896+((c[z>>2]|0)-1<<2)>>2];c[F>>2]=(c[J>>2]|0)+1324
;if(c[(c[D>>2]|0)+64>>2]|0){if((c[(c[F>>2]|0)+64>>2]|0)>>>0>1?(c[(c[
D>>2]|0)+64>>2]|0)>>>0>1:0){if((c[(c[F>>2]|0)+64>>2]|0)>>
x3e;0<(c[(c[D>>2]|0)+64>>2]|0)>>>0)l=c[(c[F>>2]|0)+64>>2]|0;else l=c
[(c[D>>2]|0)+64>>2]|0;c[C>>2]=l}else c[C>>2]=1;Xb((c[F>>2]|0)+48|0,(c[D>
x3e;2]|0)+48|0,c[C>>2]|0);Yb((c[D>>2]|0)+68|0,(c[F>>2]|0)+48|0,c[C>>2]|0);y=xb(c[(c[D>
;>2]|0)+64>>2]|0,c[(c[F>>2]|0)+64>>2]|0,c[C>>2]|0)|0;c[(c[D>>2]|0)+64>
;>2]=y}else{y=(c[D>>2]|0)+48|0;x=(c[F>>2]|0)+48|0;c[y>>2]=c[x>>2];c[y+4>>
2]=c[x+4>>2];c[y+8>>2]=c[x+8>>2];c[y+12>>2]=c[x+12>>2];y=(c[D>>2]|0)+
68|0;x=(c[F>>2]|0)+68|0;c[y>>2]=c[x>>2];c[y+4>>2]=c[x+4>>2];c[(c[D>>
2]|0)+64>>2]=c[(c[F>>2]|0)+64>>2]}c[A>>2]=(c[D>>2]|0)+48;c[B>>2]=(c[
D>>2]|0)+68;c[G>>2]=(c[D>>2]|0)+64;y=c[(c[A>>2]|0)+12>>2]|0;c[E>>2]=(
c[(c[A>>2]|0)+12>>2]|0)<0?0-y|0:y;if((c[E>>2]|0)!=65536){y=Vb(c[c[G>>2]>>
2]|0,c[E>>2]|0)|0;c[c[G>>2]>>2]=y;if((c[c[G>>2]>>2]|0)>>>0>
;1e5)c[c[G>>2]>>2]=(((c[c[G>>2]>>2]|0)+500|0)>>>0)/1e3|0;y=Vb(c[c[A>
x3e;2]>>2]|0,c[E>>2]|0)|0;c[c[A>>2]>>2]=y;y=Vb(c[(c[A>>2]|0)+8>>2]|0
,c[E>>2]|0)|0;c[(c[A>>2]|0)+8>>2]=y;y=Vb(c[(c[A>>2]|0)+4>>2]|0,c[E>>
2]|0)|0;c[(c[A>>2]|0)+4>>2]=y;y=Vb(c[(c[A>>2]|0)+12>>2]|0,c[E>>2]|0)|0;c[(c[A
x3e;>2]|0)+12>>2]=y;y=Vb(c[c[B>>2]>>2]|0,c[E>>2]|0)|0;c[c[B>>2]>>
;2]=y;y=Vb(c[(c[B>>2]|0)+4>>2]|0,c[E>>2]|0)|0;c[(c[B>>2]|0)+4>>2]=y}y=c[B>
;>2]|0;c[y>>2]=c[y>>2]>>16;y=(c[B>>2]|0)+4|0;c[y>>2]=c[y>>2]>
;>16;c[z>>2]=(c[z>>2]|0)+-1}if(a[U>>0]|0){c[W>>2]=0;c[c[I>>2]>>
2]=c[(c[J>>2]|0)+8>>2];l=c[J>>2]|0;if((c[(c[M>>2]|0)+128>>2]|0)!=65535)c[(c[I
x3e;>2]|0)+16>>2]=(c[l+1152+16>>2]|0)+1;else c[(c[I>>2]|0)+16>>2]=c[l+1176+8>
x3e;2];c[(c[I>>2]|0)+52>>2]=c[(c[M>>2]|0)+80>>2]>>16;c[(c[I>>2]|0)+52
+4>>2]=c[(c[M>>2]|0)+80+4>>2]>>16;c[(c[I>>2]|0)+52+8>>2]=(c[(c[M>
;>2]|0)+80+8>>2]|0)+65535>>16;c[(c[I>>2]|0)+52+12>>2]=(c[(c[M>>2]|0)+80+12
>>2]|0)+65535>>16;b[(c[I>>2]|0)+68>>1]=c[(c[M>>2]|0)+64>>2];b[(c[I
x3e;>2]|0)+70>>1]=c[(c[I>>2]|0)+52+12>>2];b[(c[I>>2]|0)+72>>1]=c[(c[I>
;>2]|0)+52+4>>2];b[(c[I>>2]|0)+74>>1]=((e[(c[I>>2]|0)+68>>1]|0)*12|0)/10|
0;if((b[(c[I>>2]|0)+74>>1]|0)<((b[(c[I>>2]|0)+70>>1]|0)-(b[(c[I>>2]|0)+72
>>1]|0)|0))b[(c[I>>2]|0)+74>>1]=(b[(c[I>>2]|0)+70>>1]|0)-(b[(c[I>>2]|
0)+72>>1]|0);b[(c[I>>2]|0)+80>>1]=c[(c[M>>2]|0)+32>>2]>>16;b[(c[I>
;>2]|0)+82>>1]=c[(c[M>>2]|0)+36>>2]>>16;l=qi(c[J>>2]|0,c[H>>2]|
0)|0;c[(c[I>>2]|0)+20>>2]=l;l=c[J>>2]|0;m=c[M>>2]|0;a:do if(c[(c[I>>2]|0)+20
x3e;>2]|0){c[Q>>2]=yh(l,c[m+12>>2]|0)|0;c[R>>2]=c[Q>>2];c[N>>2]=c[(c[I>
;>2]|0)+20>>2];c[O>>2]=0;ri(c[(c[I>>2]|0)+20>>2]|0);if(c[(c[M>>2]|0)+16
x3e;>2]|0?(c[O>>2]=yh(c[J>>2]|0,c[(c[M>>2]|0)+16>>2]|0)|0,c[O>>2]|0):0)c[
N>>2]=c[O>>2];if((c[Q>>2]|0)!=0&(c[N>>2]|0)!=0){b:while(1){if(!(a[c[R>>2]
x3e;>0]|0))break a;if((a[c[R>>2]>>0]|0)==(a[c[N>>2]>>0]|0)){c[N>>2]=(c[N
x3e;>2]|0)+1;c[R>>2]=(c[R>>2]|0)+1;continue}do if((a[c[R>>2]>>0]|0)!=32){if((a[c[R
x3e;>2]>>0]|0)==45)break;if((a[c[N>>2]>>0]|0)!=32?(a[c[N>>2]>>0]|0)!=45:0
)break b;c[N>>2]=(c[N>>2]|0)+1;continue b}while(0);c[R>>2]=(c[R>>2]|0)+1}if((a[c[N>
x3e;2]>>0]|0)==0?a[c[R>>2]>>0]|0:0)c[W>>2]=si(c[S>>2]|0,c[R>>2]|0)|0
}}else{c[K>>2]=yh(l,c[m+168>>2]|0)|0;if(c[K>>2]|0){R=si(c[S>>2]|0,c[K>>2]|0)|0
;c[(c[I>>2]|0)+20>>2]=R}}while(0);if(c[W>>2]|0)c[(c[I>>2]|0)+24>>2]=c[W>
x3e;2];else{W=si(c[S>>2]|0,11262)|0;c[(c[I>>2]|0)+24>>2]=W}c[P>>2]=2065;if(a[V>>
;0]|0)c[P>>2]=c[P>>2]|8;if(a[(c[M>>2]|0)+24>>0]|0)c[P>>2]=c[P>>2]|4;
c[(c[I>>2]|0)+8>>2]=c[P>>2];c[P>>2]=0;if(c[(c[M>>2]|0)+28>>2]|0)c[P
x3e;>2]=c[P>>2]|1;c[X>>2]=yh(c[J>>2]|0,c[(c[M>>2]|0)+20>>2]|0)|0;do if(c[
X>>2]|0){if(Kr(c[X>>2]|0,11270)|0?Kr(c[X>>2]|0,11275)|0:0)break;c[P>>2]=c[P>>2
]|2}while(0);do if(!(c[P>>2]&2)){if(!(c[(c[I>>2]|0)+24>>2]|0))break;if(Lr(c[(c[I>>2
]|0)+24>>2]|0,11270,4)|0?Lr(c[(c[I>>2]|0)+24>>2]|0,11275,5)|0:0)break;c[P>>2]=c[P>
x3e;2]|2}while(0);c[(c[I>>2]|0)+12>>2]=c[P>>2]}if((c[(c[M>>2]|0)+128>>2]|0)==65535
){X=(c[I>>2]|0)+8|0;c[X>>2]=c[X>>2]|512}if((c[(c[M>>2]|0)+128>>2]|0)!=65535?d[
U>>0]|0:0){X=(c[I>>2]|0)+8|0;c[X>>2]=c[X>>2]|4096}c[$>>2]=(c[J>>2]|0
)+116;c[T>>2]=0;while(1){if((c[T>>2]|0)>>>0>=(c[(c[I>>2]|0)+36>>2]|0
)>>>0){ba=96;break}c[L>>2]=c[(c[(c[I>>2]|0)+40>>2]|0)+(c[T>>2]<<
;2)>>2];if((e[(c[L>>2]|0)+8>>1]|0)==3?(e[(c[L>>2]|0)+10>>1]|0)==1:0)break;if(!(
e[(c[L>>2]|0)+8>>1]|0))break;c[T>>2]=(c[T>>2]|0)+1}if((ba|0)==96){if(d[U>>0]|0
?(c[(c[J>>2]|0)+1324+128>>2]|0)!=65535:0)break;if(((c[T>>2]|0)+1|0)>>>0>15)break
;c[_>>2]=c[I>>2];b[_+8>>1]=3;b[_+10>>1]=1;c[_+4>>2]=1970170211;c[T>>
2]=c[(c[I>>2]|0)+36>>2];c[aa>>2]=Ld(868,0,_,0)|0;if((c[aa>>2]|0)!=0&163!=(c[aa>
;>2]|0))break;c[aa>>2]=0;if((c[(c[I>>2]|0)+92>>2]|0)==0?(c[T>>2]|0)!=(c[(c[I>
x3e;2]|0)+36>>2]|0):0)c[(c[I>>2]|0)+92>>2]=c[(c[(c[I>>2]|0)+40>>2]|0)+(c[T>
;>2]<<2)>>2]}if((c[T>>2]|0)>>>0<=15?(c[(c[$>>2]|0)+8>>
;2]|0)>>>0>0:0){c[_>>2]=c[I>>2];b[_+8>>1]=7;do if(c[(c[$>>2]|0)+4>
;>2]|0){l=_+10|0;if((c[(c[$>>2]|0)+4>>2]|0)==1){b[l>>1]=1;c[_+4>>2]=1094992453;c[Z
x3e;>2]=828;break}else{b[l>>1]=2;c[_+4>>2]=1094992451;c[Z>>2]=828;break}}else{b[_+10>>
;1]=0;c[_+4>>2]=1094995778;c[Z>>2]=828}while(0);c[aa>>2]=Ld(c[Z>>2]|0,0,_,0)|0}}else ba=
112}}}else ba=112;while(0);if((ba|0)==112)c[aa>>2]=2;c[Y>>2]=c[aa>>2];ba=c[Y>>2]|0;i=ca;
return ba|0}function Sh(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
;x=i;i=i+112|0;j=x+100|0;p=x+96|0;q=x+92|0;r=x+88|0;k=x+105|0;u=x+84|0;n=x+80|0;s=x+76|0;t=x+72|0;w=x+40|0;l=x+8|0;o=x+4|0;m=x;v
=x+104|0;c[j>>2]=b;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;a[k>>0]=h;c[n>>2]=c
[(c[p>>2]|0)+28>>2];Ns(c[r>>2]|0,0,2072)|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>
x3e;2]=0;c[w+12>>2]=0;c[w+16>>2]=0;c[w+20>>2]=0;c[w+24>>2]=0;c[w+28>>2]=0;c[c[
r>>2]>>2]=c[p>>2];c[(c[r>>2]|0)+4>>2]=c[n>>2];c[t>>2]=(c[r
>>2]|0)+1324;c[s>>2]=Mc(c[p>>2]|0)|0;e=le(c[p>>2]|0,5532,c[r>>2]|0)|0;c[u>
;>2]=e;a:do if(!e){if(((d[(c[r>>2]|0)+16>>0]|0|0)==1?(d[(c[r>>2]|0)+18>>0]|0|0)>
;=4:0)?(d[(c[r>>2]|0)+19>>0]|0|0)<=4:0){e=Qc(c[p>>2]|0,(d[(c[r>>2]|0)+18>>
;0]|0)-4|0)|0;c[u>>2]=e;if(e|0)break;e=Th((c[r>>2]|0)+20|0,c[p>>2]|0,0)|0;c[u>>2]=e;if(e
|0)break;e=Th((c[r>>2]|0)+1208|0,c[p>>2]|0,0)|0;c[u>>2]=e;if(e|0)break;e=Th(w,c[p>>2]|0,
1)|0;c[u>>2]=e;if(e|0)break;e=Th((c[r>>2]|0)+84|0,c[p>>2]|0,1)|0;c[u>>2]=e;if(e|0)break;
e=Vh(w,(c[r>>2]|0)+1316|0,(c[r>>2]|0)+1320|0)|0;c[u>>2]=e;if(e|0)break;c[(c[r>>2]|0)+1312
>>2]=c[w+8>>2];c[(c[r>>2]|0)+8>>2]=c[(c[r>>2]|0)+20+8>>2];if((c[q>
;>2]|0)>=(c[(c[r>>2]|0)+8>>2]|0))c[u>>2]=6;if((c[q>>2]|0)<0)break;c[u>
;>2]=Xh((c[r>>2]|0)+1324|0,(c[r>>2]|0)+1208|0,c[q>>2]|0,c[p>>2]|0,c[s>>2]|
0,c[j>>2]|0)|0;if(c[u>>2]|0)break;e=Kc(c[p>>2]|0,(c[s>>2]|0)+(c[(c[t>>2]|0)+108
>>2]|0)|0)|0;c[u>>2]=e;if(e|0)break;c[u>>2]=Th((c[r>>2]|0)+1176|0,c[p>>2]|0,0)|
0;if(c[u>>2]|0)break;if((c[(c[t>>2]|0)+128>>2]|0)!=65535){e=Kc(c[p>>2]|0,(c[s>>
;2]|0)+(c[(c[t>>2]|0)+160>>2]|0)|0)|0;c[u>>2]=e;if(e|0)break;c[u>>2]=Th(l,c[p>>
;2]|0,0)|0;if(c[u>>2]|0)break;b:do if((c[l+8>>2]|0)>>>0<=32){c[(c[r>>2]|0)+1892
>>2]=c[l+8>>2];c[o>>2]=hc(c[n>>2]|0,568,0,c[l+8>>2]|0,0,u)|0;if(c[u>>
;2]|0)break;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[l+8>>2]|0)>>
x3e;0)break;c[(c[r>>2]|0)+1896+(c[m>>2]<<2)>>2]=(c[o>>2]|0)+((c[m>>2
]|0)*568|0);c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0
x3e;=(c[l+8>>2]|0)>>>0)break;c[o>>2]=c[(c[r>>2]|0)+1896+(c[m>>2]<<
;2)>>2];c[u>>2]=Xh(c[o>>2]|0,l,c[m>>2]|0,c[p>>2]|0,c[s>>2]|0,c[j>
;>2]|0)|0;if(c[u>>2]|0)break b;c[m>>2]=(c[m>>2]|0)+1}c[u>>2]=ki((c[r>>2]|
0)+2024|0,c[(c[r>>2]|0)+1176+8>>2]|0,c[p>>2]|0,(c[s>>2]|0)+(c[(c[t>>2]|0)+164
x3e;>2]|0)|0)|0}while(0);li(l);if(c[u>>2]|0)break}else c[(c[r>>2]|0)+1892>>2]=0;if(!(c[(c[t
x3e;>2]|0)+108>>2]|0)){c[u>>2]=2;break}c[(c[r>>2]|0)+12>>2]=c[(c[r>>2]|0)+
1176+8>>2];c[u>>2]=Vh((c[r>>2]|0)+84|0,(c[r>>2]|0)+1308|0,0)|0;if(c[u>>2]|0)break
;do if((c[(c[r>>2]|0)+12>>2]|0)>>>0>0){if((c[(c[t>>2]|0)+128>>2]|0)!=
65535)j=(d[k>>0]|0|0)!=0;else j=0;a[v>>0]=j&1;c[u>>2]=mi((c[r>>2]|0)+1152|0,c[(c[r
x3e;>2]|0)+12>>2]|0,c[p>>2]|0,c[s>>2]|0,c[(c[t>>2]|0)+100>>2]|0,a[v>
x3e;0]|0)|0;if(c[u>>2]|0)break a;if((c[(c[t>>2]|0)+128>>2]|0)!=65535)break;c[u>>2]=oi((c
[r>>2]|0)+116|0,(c[r>>2]|0)+1152|0,c[(c[r>>2]|0)+12>>2]|0,c[p>>2]|0,c[s>
x3e;2]|0,c[(c[t>>2]|0)+104>>2]|0)|0;if(c[u>>2]|0)break a}while(0);v=qi(c[r>>2]|0,c[q>
;>2]|0)|0;c[(c[r>>2]|0)+1304>>2]=v;break}c[u>>2]=2}while(0);li(w);i=x;return c[u>>2
]|0}function Th(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;r=i;i=i+32|0;n=r+16|0;j=r+12|0;o=r+23|0;p=r+8|0
;q=r+4|0;k=r+20|0;l=r+22|0;m=r;c[n>>2]=f;c[j>>2]=g;a[o>>0]=h;c[q>>2]=c[(c[j>>2
]|0)+28>>2];g=c[n>>2]|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=
0;c[g+16>>2]=0;c[g+20>>2]=0;c[g+24>>2]=0;c[g+28>>2]=0;c[c[n>>2]>>2]=
c[j>>2];g=Mc(c[j>>2]|0)|0;c[(c[n>>2]|0)+4>>2]=g;b[k>>1]=Pc(c[j>>2]|0
,p)|0;do if(((c[p>>2]|0)==0?(e[k>>1]|0)>0:0)?(a[l>>0]=ke(c[j>>2]|0,p)|0,(c[p>
x3e;2]|0)==0):0){if((d[l>>0]|0)>=1?(d[l>>0]|0)<=4:0){c[(c[n>>2]|0)+8>>2]=e[k
x3e;>1];a[(c[n>>2]|0)+12>>0]=a[l>>0]|0;c[m>>2]=_((e[k>>1]|0)+1|0,d[l>
;>0]|0)|0;c[(c[n>>2]|0)+16>>2]=(c[(c[n>>2]|0)+4>>2]|0)+3+(c[m>>2]|0);g=Qc
(c[j>>2]|0,(c[m>>2]|0)-(d[l>>0]|0)|0)|0;c[p>>2]=g;if(g|0)break;c[m>>2]=Uh(c[n
x3e;>2]|0,p)|0;if(c[p>>2]|0)break;if(!(c[m>>2]|0)){c[p>>2]=8;break}k=(c[m>>2]|0)+-1
|0;c[m>>2]=k;c[(c[n>>2]|0)+20>>2]=k;k=c[j>>2]|0;j=c[m>>2]|0;if(a[o>>
0]|0){c[p>>2]=de(k,j,(c[n>>2]|0)+28|0)|0;break}else{c[p>>2]=Qc(k,j)|0;break}}c[p>>2]=8}while
(0);if(!(c[p>>2]|0)){q=c[p>>2]|0;i=r;return q|0}Fb(c[q>>2]|0,c[(c[n>>2]|0)+24>>
;2]|0);c[(c[n>>2]|0)+24>>2]=0;q=c[p>>2]|0;i=r;return q|0}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,m=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;m=l+8|0;k=l+24|0;j=l+4|0;h=l;c[e>>2]=a;c[f>>
2]=b;c[m>>2]=c[c[e>>2]>>2];c[j>>2]=0;a=Rc(c[m>>2]|0,k,d[(c[e>>2]|0)+
12>>0]|0)|0;c[g>>2]=a;if(a|0){k=c[g>>2]|0;m=c[f>>2]|0;c[m>>2]=k;m=c[j>>
;2]|0;i=l;return m|0}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(d[(c[e>>2]|0)+12>>0]|0|0))
break;c[j>>2]=c[j>>2]<<8|(d[k+(c[h>>2]|0)>>0]|0);c[h>>2]=(c[h>
x3e;2]|0)+1}k=c[g>>2]|0;m=c[f>>2]|0;c[m>>2]=k;m=c[j>>2]|0;i=l;return m|0}function Vh(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;t=i;i=i+48|0;f=t+44|0;g=t+40|0;h=t+36|0;k=t+32
|0;m=t+28|0;r=t+24|0;o=t+20|0;n=t+16|0;j=t+12|0;l=t+8|0;q=t+4|0;p=t;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;
c[k>>2]=0;c[m>>2]=c[(c[c[f>>2]>>2]|0)+28>>2];c[o>>2]=0;c[c[g>
x3e;2]>>2]=0;if((c[(c[f>>2]|0)+24>>2]|0)==0?(c[k>>2]=Wh(c[f>>2]|0)|0,c[k>
x3e;2]|0):0){s=c[k>>2]|0;i=t;return s|0}if((c[(c[f>>2]|0)+8>>2]|0)>>>0<=0){s=c
[k>>2]|0;i=t;return s|0}c[r>>2]=hc(c[m>>2]|0,4,0,(c[(c[f>>2]|0)+8>>2]|0)+1|0,0
,k)|0;if(c[k>>2]|0){s=c[k>>2]|0;i=t;return s|0}if(c[h>>2]|0?(c[o>>2]=bc(c[m>>2
]|0,(c[(c[f>>2]|0)+20>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)|0,k)|0,c[k>>2]|0):0){s=c[
k>>2]|0;i=t;return s|0}c[l>>2]=0;c[q>>2]=c[(c[f>>2]|0)+28>>2];d=(c[c[(c[f>
;>2]|0)+24>>2]>>2]|0)-1|0;c[j>>2]=d;c[j>>2]=(c[j>>2]|0)>>>
0>=(c[(c[f>>2]|0)+20>>2]|0)>>>0?0:d;if(c[h>>2]|0)c[c[r>>2]>>
;2]=(c[o>>2]|0)+(c[j>>2]|0);else c[c[r>>2]>>2]=(c[q>>2]|0)+(c[j>>2]|
0);c[n>>2]=1;while(1){if((c[n>>2]|0)>>>0>(c[(c[f>>2]|0)+8>>2]|0)>
;>>0)break;c[p>>2]=(c[(c[(c[f>>2]|0)+24>>2]|0)+(c[n>>2]<<2)>>
;2]|0)-1;if((c[p>>2]|0)!=0?(c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0:0){
if((c[p>>2]|0)>>>0>=(c[(c[f>>2]|0)+20>>2]|0)>>>0?(c[n>>
;2]|0)>>>0<(c[(c[f>>2]|0)+8>>2]|0)>>>0:0)s=16}else s=16;if((s|0)==16){s=0
;c[p>>2]=c[j>>2]}if(c[h>>2]|0){c[(c[r>>2]|0)+(c[n>>2]<<2)>>
;2]=(c[o>>2]|0)+(c[p>>2]|0)+(c[l>>2]|0);if((c[p>>2]|0)!=(c[j>>2]|0)){Ss(c[(c[r
>>2]|0)+((c[n>>2]|0)-1<<2)>>2]|0,(c[q>>2]|0)+(c[j>>2]|0)|0,(c[(c[r
x3e;>2]|0)+(c[n>>2]<<2)>>2]|0)-(c[(c[r>>2]|0)+((c[n>>2]|0)-1<<2
)>>2]|0)|0)|0;a[c[(c[r>>2]|0)+(c[n>>2]<<2)>>2]>>0]=0;d=(c[r>>
;2]|0)+(c[n>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+1}}else
c[(c[r>>2]|0)+(c[n>>2]<<2)>>2]=(c[q>>2]|0)+(c[p>>2]|0);c[j>>
;2]=c[p>>2];c[n>>2]=(c[n>>2]|0)+1}c[c[g>>2]>>2]=c[r>>2];if(!(c[h>
;>2]|0)){s=c[k>>2]|0;i=t;return s|0}c[c[h>>2]>>2]=c[o>>2];s=c[k>>2]|0;i=t
;return s|0}function Wh(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;o=i;i=i+48|0;e=o+28|0;g=o+24|0;n=o+20|0;h=o+16|0;j=
o+32|0;f=o+12|0;k=o+8|0;l=o+4|0;m=o;c[e>>2]=b;c[g>>2]=0;c[n>>2]=c[c[e>>2]>>2];
c[h>>2]=c[(c[n>>2]|0)+28>>2];if(((((c[(c[e>>2]|0)+8>>2]|0)>>>0
x3e;0?(c[(c[e>>2]|0)+24>>2]|0)==0:0)?(a[j>>0]=a[(c[e>>2]|0)+12>>0]|0,c[f>
x3e;2]=_((c[(c[e>>2]|0)+8>>2]|0)+1|0,d[j>>0]|0)|0,b=hc(c[h>>2]|0,4,0,(c[(c[e>>
2]|0)+8>>2]|0)+1|0,0,g)|0,c[(c[e>>2]|0)+24>>2]=b,(c[g>>2]|0)==0):0)?(b=Kc(c[n>>
;2]|0,(c[(c[e>>2]|0)+4>>2]|0)+3|0)|0,c[g>>2]=b,(b|0)==0):0)?(b=ee(c[n>>2]|0,c[f>>
;2]|0)|0,c[g>>2]=b,(b|0)==0):0){c[m>>2]=c[(c[e>>2]|0)+24>>2];c[k>>2]=c[(c[n>
;>2]|0)+32>>2];c[l>>2]=(c[k>>2]|0)+(c[f>>2]|0);a:do switch(d[j>>0]|0){case
1:while(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>
2]>>2]=d[c[k>>2]>>0];c[k>>2]=(c[k>>2]|0)+1;c[m>>2]=(c[m>>2
]|0)+4}case 2:while(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m
x3e;>2]>>2]=((d[c[k>>2]>>0]&65535)<<8|(d[(c[k>>2]|0)+1>>0]
x26;65535)<<0)&65535;c[k>>2]=(c[k>>2]|0)+2;c[m>>2]=(c[m>>2]|0)+4}case 3:while
(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>2]>
x3e;2]=a[c[k>>2]>>0]<<16|d[(c[k>>2]|0)+1>>0]<<8|d[(c[k>>2]|
0)+2>>0]<<0;c[k>>2]=(c[k>>2]|0)+3;c[m>>2]=(c[m>>2]|0)+4}default:while
(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>2]>
x3e;2]=d[c[k>>2]>>0]<<24|d[(c[k>>2]|0)+1>>0]<<16|d[(c[k>>2
]|0)+2>>0]<<8|d[(c[k>>2]|0)+3>>0]<<0;c[k>>2]=(c[k>>2]|0)+4
;c[m>>2]=(c[m>>2]|0)+4}}while(0);ge(c[n>>2]|0)}if(!(c[g>>2]|0)){n=c[g>>2]|0;i=
o;return n|0}Fb(c[h>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;n=c[g
>>2]|0;i=o;return n|0}function Xh(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;v=i;i=i+464|0;k=v+456|0;l=v+452|0;w=v+448|0;m=v+444|0;n=v+440|0;o=v+436|0;r=v+432|0;s=v+16|0;p=v+12|0;q=v+8
|0;u=v+4|0;t=v;c[k>>2]=b;c[l>>2]=e;c[w>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>
;2]=j;c[p>>2]=0;c[u>>2]=c[k>>2];c[t>>2]=(c[k>>2]|0)+172;Yh(s,4096,c[k>>
;2]|0,c[o>>2]|0);Ns(c[u>>2]|0,0,172)|0;c[(c[u>>2]|0)+32>>2]=-6553600;c[(c[u>>2
]|0)+36>>2]=3276800;c[(c[u>>2]|0)+44>>2]=2;c[(c[u>>2]|0)+48>>2]=65536;c[(c[u
x3e;>2]|0)+48+12>>2]=65536;c[(c[u>>2]|0)+152>>2]=8720;c[c[u>>2]>>2]=65535
;c[(c[u>>2]|0)+4>>2]=65535;c[(c[u>>2]|0)+8>>2]=65535;c[(c[u>>2]|0)+12>>
;2]=65535;c[(c[u>>2]|0)+16>>2]=65535;c[(c[u>>2]|0)+20>>2]=65535;c[(c[u>>2]|0)+
124>>2]=65535;c[(c[u>>2]|0)+128>>2]=65535;c[(c[u>>2]|0)+132>>2]=65535;c[(c[u
x3e;>2]|0)+168>>2]=65535;c[r>>2]=Zh(c[l>>2]|0,c[w>>2]|0,p,q)|0;if(!(c[r>>
2]|0))c[r>>2]=_h(s,c[p>>2]|0,(c[p>>2]|0)+(c[q>>2]|0)|0)|0;ji(c[l>>2]|0,p);if(c
[r>>2]|0){w=c[r>>2]|0;i=v;return w|0}if((c[(c[u>>2]|0)+128>>2]|0)!=65535){w=c[r>>
;2]|0;i=v;return w|0}do if(c[(c[u>>2]|0)+112>>2]|0?c[(c[u>>2]|0)+116>>2]|0:0){Ns(c[t>
;>2]|0,0,360)|0;c[(c[t>>2]|0)+200>>2]=7;c[(c[t>>2]|0)+204>>2]=1;c[(c[t>>2
]|0)+332>>2]=-1;c[(c[t>>2]|0)+340>>2]=3932;c[(c[t>>2]|0)+196>>2]=2596864;Yh(s,
8192,c[t>>2]|0,c[o>>2]|0);w=Kc(c[m>>2]|0,(c[n>>2]|0)+(c[(c[k>>2]|0)+112>
x3e;2]|0)|0)|0;c[r>>2]=w;if(w|0){w=c[r>>2]|0;i=v;return w|0}w=ee(c[m>>2]|0,c[(c[k>>2]|0)+
116>>2]|0)|0;c[r>>2]=w;if(w|0){w=c[r>>2]|0;i=v;return w|0}c[r>>2]=_h(s,c[(c[m>>
;2]|0)+32>>2]|0,c[(c[m>>2]|0)+36>>2]|0)|0;ge(c[m>>2]|0);if(c[r>>2]|0){w=c[r>
;>2]|0;i=v;return w|0}else{w=c[t>>2]|0;a[w>>0]=(d[w>>0]|0)&-2;break}}while(0);if(!(c[(c[
t>>2]|0)+348>>2]|0)){w=c[r>>2]|0;i=v;return w|0}w=Kc(c[m>>2]|0,(c[n>>2]|0)+(c[(
c[u>>2]|0)+112>>2]|0)+(c[(c[t>>2]|0)+348>>2]|0)|0)|0;c[r>>2]=w;if(w|0){w=c[r
x3e;>2]|0;i=v;return w|0}c[r>>2]=Th((c[k>>2]|0)+532|0,c[m>>2]|0,1)|0;if(c[r>>2]|0){
w=c[r>>2]|0;i=v;return w|0}c[r>>2]=Vh((c[k>>2]|0)+532|0,(c[k>>2]|0)+564|0,0)|0;w=c[r>
;>2]|0;i=v;return w|0}function Yh(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;Ns(c[g>>2]|0,0,416)|0;c[(c[g
>>2]|0)+404>>2]=(c[g>>2]|0)+16;c[(c[g>>2]|0)+408>>2]=c[k>>2];c[(c[g
x3e;>2]|0)+412>>2]=c[j>>2];c[c[g>>2]>>2]=c[h>>2];i=f;return}function Zh(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;q=i;i=i+48|0;g=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;l=q
+16|0;p=q+12|0;m=q+8|0;n=q+4|0;o=q;c[g>>2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>
;2]=0;if(c[g>>2]|0?(c[(c[g>>2]|0)+8>>2]|0)>>>0>(c[h>>2]|0)>>
;>0:0){c[p>>2]=c[c[g>>2]>>2];c[n>>2]=0;b=c[h>>2]|0;a=c[g>>2]|0;
a:do if(c[(c[g>>2]|0)+24>>2]|0){c[m>>2]=c[(c[a+24>>2]|0)+(b<<2)>>2];
if(c[m>>2]|0)do{c[h>>2]=(c[h>>2]|0)+1;c[n>>2]=c[(c[(c[g>>2]|0)+24>>2
]|0)+(c[h>>2]<<2)>>2];if(c[n>>2]|0)break a}while((c[h>>2]|0)>>>
0<(c[(c[g>>2]|0)+8>>2]|0)>>>0)}else{c[o>>2]=_(b,d[a+12>>0]|0)|0;o=Kc
(c[p>>2]|0,(c[(c[g>>2]|0)+4>>2]|0)+3+(c[o>>2]|0)|0)|0;c[l>>2]=o;if(o|0){p=c[l
x3e;>2]|0;i=q;return p|0}c[m>>2]=Uh(c[g>>2]|0,l)|0;if(c[l>>2]|0){p=c[l>>2]|0;i=q;return
p|0}if(c[m>>2]|0)do{c[h>>2]=(c[h>>2]|0)+1;c[n>>2]=Uh(c[g>>2]|0,l)|0;if(c[n>
;>2]|0)break a}while((c[h>>2]|0)>>>0<(c[(c[g>>2]|0)+8>>2]|0)>>
x3e;0)}while(0);if(!((c[n>>2]|0)>>>0<=((c[(c[p>>2]|0)+4>>2]|0)+1|0)>>
;>0?(c[(c[g>>2]|0)+16>>2]|0)>>>0<=((c[(c[p>>2]|0)+4>>2]|0)-(c[n
>>2]|0)+1|0)>>>0:0))c[n>>2]=(c[(c[p>>2]|0)+4>>2]|0)-(c[(c[g>>2]|
0)+16>>2]|0)+1;if(c[m>>2]|0?(c[n>>2]|0)>>>0>(c[m>>2]|0)>>
x3e;0:0){c[c[k>>2]>>2]=(c[n>>2]|0)-(c[m>>2]|0);if(c[(c[g>>2]|0)+28>>
2]|0){c[c[j>>2]>>2]=(c[(c[g>>2]|0)+28>>2]|0)+(c[m>>2]|0)+-1;p=c[l>>2
]|0;i=q;return p|0}o=Kc(c[p>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[m>>2]|0)-1|0)|0;c[l>
x3e;2]=o;if(o|0){p=c[l>>2]|0;i=q;return p|0}c[l>>2]=de(c[p>>2]|0,(c[n>>2]|0)-(c[m>
x3e;2]|0)|0,c[j>>2]|0)|0;p=c[l>>2]|0;i=q;return p|0}c[c[j>>2]>>2]=0;c[c[k>>2]
x3e;>2]=0;p=c[l>>2]|0;i=q;return p|0}c[l>>2]=6;p=c[l>>2]|0;i=q;return p|0}function _h(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;v=i;i=i+64|0;h=v+52|0;w=v+48|0;j=v+44|0;p=
v+40|0;m=v+36|0;x=v+32|0;s=v+28|0;k=v+24|0;o=v+20|0;n=v+16|0;t=v+12|0;q=v+8|0;r=v+4|0;l=v;c[h>>2]=e;c[w>>2]=
f;c[j>>2]=g;c[p>>2]=c[w>>2];c[m>>2]=0;c[x>>2]=c[c[h>>2]>>2
];c[x>>2]=c[x>>2];c[(c[h>>2]|0)+404>>2]=(c[h>>2]|0)+16;c[(c[h>>2]|0)+
4>>2]=c[w>>2];c[(c[h>>2]|0)+8>>2]=c[j>>2];c[(c[h>>2]|0)+12>>
;2]=c[w>>2];a:while(1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0){u=47
;break}c[s>>2]=d[c[p>>2]>>0];g=((c[(c[h>>2]|0)+404>>2]|0)-((c[h>>2]|
0)+16)|0)/4|0;b:do if((c[s>>2]|0)>>>0>=27&(c[s>>2]|0)!=31){if((g|0)>=96){u=48;
break a}w=c[p>>2]|0;f=(c[h>>2]|0)+404|0;x=c[f>>2]|0;c[f>>2]=x+4;c[x>>2]=w;if((
c[s>>2]|0)==30){c[p>>2]=(c[p>>2]|0)+1;while(1){if((c[p>>2]|0)>>>0>=(
c[j>>2]|0)>>>0){u=47;break a}c[s>>2]=(d[c[p>>2]>>0]|0)>>4;if((c
[s>>2]|0)==15)break b;c[s>>2]=(d[c[p>>2]>>0]|0)&15;if((c[s>>2]|0)==15)break
b;c[p>>2]=(c[p>>2]|0)+1}}if((c[s>>2]|0)==28){c[p>>2]=(c[p>>2]|0)+2;break}if((
c[s>>2]|0)==29){c[p>>2]=(c[p>>2]|0)+4;break}if((c[s>>2]|0)>>>0>246)c
[p>>2]=(c[p>>2]|0)+1}else{c[o>>2]=g;c[c[(c[h>>2]|0)+404>>2]>>2]=c[p
x3e;>2];c[k>>2]=c[s>>2];if((c[s>>2]|0)==12){c[p>>2]=(c[p>>2]|0)+1;if((c[p
>>2]|0)>>>0>=(c[j>>2]|0)>>>0){u=50;break a}c[k>>2]=256|(d[c[p
x3e;>2]>>0]|0)}c[k>>2]=c[k>>2]|c[(c[h>>2]|0)+408>>2];c[n>>2]=920
;while(1){if(!(c[c[n>>2]>>2]|0))break;if((c[(c[n>>2]|0)+4>>2]|0)==(c[k>>2]|0)){
u=23;break}c[n>>2]=(c[n>>2]|0)+28}c:do if((u|0)==23){u=0;c[q>>2]=(c[(c[h>>2]|0)+412>
;>2]|0)+(c[(c[n>>2]|0)+8>>2]|0);if((c[o>>2]|0)>>>0<1?(c[c[n>>2]
x3e;>2]|0)!=6:0){u=49;break a}switch(c[c[n>>2]>>2]|0){case 1:case 4:case 5:{c[t>>2]=hi((c[h
x3e;>2]|0)+16|0)|0;break}case 2:{c[t>>2]=fi((c[h>>2]|0)+16|0)|0;break}case 3:{c[t>>2]=di((c[h
>>2]|0)+16|0,3)|0;break}case 6:{c[r>>2]=(c[(c[h>>2]|0)+412>>2]|0)+(c[(c[n>>2]|
0)+24>>2]|0);c[l>>2]=(c[h>>2]|0)+16;if((c[o>>2]|0)>>>0>(c[(c[n>
x3e;2]|0)+20>>2]|0)>>>0)c[o>>2]=c[(c[n>>2]|0)+20>>2];a[c[r>>2]
x3e;>0]=c[o>>2];c[t>>2]=0;while(1){if((c[o>>2]|0)>>>0<=0)break c;x=c[l>
;>2]|0;c[l>>2]=x+4;x=hi(x)|0;c[t>>2]=(c[t>>2]|0)+x;switch(d[(c[n>>2]|0)+12>>
;0]|0|0){case 1:{a[c[q>>2]>>0]=c[t>>2];break}case 2:{b[c[q>>2]>>1]=c[t>
x3e;2];break}case 4:{c[c[q>>2]>>2]=c[t>>2];break}default:c[c[q>>2]>>2]=c[t>
;>2]}c[q>>2]=(c[q>>2]|0)+(d[(c[n>>2]|0)+12>>0]|0);c[o>>2]=(c[o>>
;2]|0)+-1}}default:{c[m>>2]=Ta[c[(c[n>>2]|0)+16>>2]&63](c[h>>2]|0)|0;if(c[m>
x3e;2]|0){u=47;break a}else break c}}switch(d[(c[n>>2]|0)+12>>0]|0|0){case 1:{a[c[q>>2]>>
;0]=c[t>>2];break c}case 2:{b[c[q>>2]>>1]=c[t>>2];break c}case 4:{c[c[q>>2]>
;>2]=c[t>>2];break c}default:{c[c[q>>2]>>2]=c[t>>2];break c}}}while(0);c[(c[h>
x3e;2]|0)+404>>2]=(c[h>>2]|0)+16}while(0);c[p>>2]=(c[p>>2]|0)+1}if((u|0)==47){x=c[m>
;>2]|0;i=v;return x|0}else if((u|0)==48){c[m>>2]=6;x=c[m>>2]|0;i=v;return x|0}else if((u|0)==49){c[m>
;>2]=6;x=c[m>>2]|0;i=v;return x|0}else if((u|0)==50){c[m>>2]=6;x=c[m>>2]|0;i=v;return x|0}return
0}function $h(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;k=j+28|0;l=j+24|0;e=j+20|0;f=j+16|0;h=j+12|0;b=j+8|
0;d=j+4|0;g=j;c[k>>2]=a;c[l>>2]=c[(c[k>>2]|0)+412>>2];c[e>>2]=(c[l>>
2]|0)+48;c[f>>2]=(c[l>>2]|0)+68;c[h>>2]=(c[l>>2]|0)+64;c[b>>2]=(c[k>>
;2]|0)+16;c[d>>2]=161;if((c[(c[k>>2]|0)+404>>2]|0)>>>0<((c[k>>2]|0)+
16+24|0)>>>0){l=c[d>>2]|0;i=j;return l|0}c[d>>2]=0;l=c[b>>2]|0;c[b>>2]=l+
4;l=ai(l,g)|0;c[c[e>>2]>>2]=l;c[g>>2]=0-(c[g>>2]|0);if((c[g>>2]|0)<0|(c[g
>>2]|0)>9){c[c[e>>2]>>2]=65536;c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|
0)+8>>2]=0;c[(c[e>>2]|0)+12>>2]=65536;c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+
4>>2]=0;c[c[h>>2]>>2]=1;l=c[d>>2]|0;i=j;return l|0}else{l=c[b>>2]|0;c[b>
x3e;2]=l+4;l=di(l,c[g>>2]|0)|0;c[(c[e>>2]|0)+8>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l
=di(l,c[g>>2]|0)|0;c[(c[e>>2]|0)+4>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l=di(l,c[g>
;>2]|0)|0;c[(c[e>>2]|0)+12>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l=di(l,c[g>>2]|0
)|0;c[c[f>>2]>>2]=l;l=di(c[b>>2]|0,c[g>>2]|0)|0;c[(c[f>>2]|0)+4>>2]=
l;c[c[h>>2]>>2]=c[2376+(c[g>>2]<<2)>>2];l=c[d>>2]|0;i=j;return l|0}return
0}function ai(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;e=j+16|0;k=j+12|0;f=j+8|0;h=j+4|0;g=j;c[k>>2]=
a;c[f>>2]=b;b=c[c[k>>2]>>2]|0;a=c[(c[k>>2]|0)+4>>2]|0;if((d[c[c[k>>2
]>>2]>>0]|0|0)==30){c[e>>2]=bi(b,a,0,c[f>>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}c
[h>>2]=ci(b,a)|0;if((c[h>>2]|0)<=32767){c[c[f>>2]>>2]=0;c[e>>2]=c[h>
x3e;2]<<16;k=c[e>>2]|0;i=j;return k|0}c[g>>2]=5;while(1){if((c[g>>2]|0)>=10)break;if
((c[h>>2]|0)<(c[2376+(c[g>>2]<<2)>>2]|0))break;c[g>>2]=(c[g>>2]|
0)+1}a=c[g>>2]|0;if(((c[h>>2]|0)/(c[2376+((c[g>>2]|0)-5<<2)>>2]|0)|0|0)>32767
){c[c[f>>2]>>2]=a-4;c[e>>2]=Vb(c[h>>2]|0,c[2376+((c[g>>2]|0)-4<<2)
x3e;>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}else{c[c[f>>2]>>2]=a-5;c[e>>2]=Vb(c[h>
x3e;2]|0,c[2376+((c[g>>2]|0)-5<<2)>>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}return 0}function
bi(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,v=0,w=0,x=0,y=0,z=0;y=i;i=i+80|
0;z=y+64|0;g=y+60|0;h=y+56|0;t=y+52|0;n=y+48|0;m=y+44|0;o=y+40|0;w=y+36|0;r=y+32|0;u=y+28|0;x=y+24|0;k=y+20|0;j=y+16|0;l=y+12|0;
v=y+8|0;q=y+4|0;s=y;c[z>>2]=a;c[g>>2]=b;c[h>>2]=e;c[t>>2]=f;c[n>>2]=c[z>
x3e;2];c[x>>2]=0;c[k>>2]=0;if(c[t>>2]|0)c[c[t>>2]>>2]=0;c[w>>2]=0;c[
r>>2]=0;c[u>>2]=0;c[j>>2]=0;c[l>>2]=0;c[v>>2]=0;c[o>>2]=4;while(1){if
(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n>>2]|0)>>>0>=(c[g>>2
]|0)>>>0):0){p=54;break}c[m>>2]=(d[c[n>>2]>>0]|0)>>c[o>>2]&
;15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|0)==14){c[x>>2]=1;continue}if((c[m>>2]|0
)>>>0>9)break;if((c[r>>2]|0)>=214748364){c[j>>2]=(c[j>>2]|0)+1;continue}if
(!((c[m>>2]|0)!=0|(c[r>>2]|0)!=0))continue;c[l>>2]=(c[l>>2]|0)+1;c[r>>2]=((c[r
>>2]|0)*10|0)+(c[m>>2]|0)}if((p|0)==54){z=c[w>>2]|0;i=y;return z|0}a:do if((c[m>>2]|0)==
10){while(1){if(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n>>2]|0)>>>0>=(c
[g>>2]|0)>>>0):0)break;c[m>>2]=(d[c[n>>2]>>0]|0)>>c[o>>
;2]&15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|0)>>>0>=10)break a;if(!((c[m>
;>2]|0)!=0|(c[r>>2]|0)!=0)){c[j>>2]=(c[j>>2]|0)+-1;continue}if(!((c[r>>2]|0)<214748364
&(c[v>>2]|0)<9))continue;c[v>>2]=(c[v>>2]|0)+1;c[r>>2]=((c[r>>2]|0)*
10|0)+(c[m>>2]|0)}z=c[w>>2]|0;i=y;return z|0}while(0);if((c[m>>2]|0)==12){c[k>>2]=1;c[m
x3e;>2]=11}do if((c[m>>2]|0)==11){while(1){if(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n
>>2]|0)>>>0>=(c[g>>2]|0)>>>0):0){p=54;break}c[m>>2]=(d[c[n>
;>2]>>0]|0)>>c[o>>2]&15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|
0)>>>0>=10){p=28;break}c[u>>2]=((c[u>>2]|0)*10|0)+(c[m>>2]|0);if((c[u>>
;2]|0)>1e3){p=54;break}}if((p|0)==28){if(!(c[k>>2]|0))break;c[u>>2]=0-(c[u>>2]|0);break}else
if((p|0)==54){z=c[w>>2]|0;i=y;return z|0}}while(0);c[u>>2]=(c[u>>2]|0)+((c[h>>2]|0)+(c[j
>>2]|0));do if(!(c[t>>2]|0)){c[l>>2]=(c[l>>2]|0)+(c[u>>2]|0);c[v>>2]=(
c[v>>2]|0)-(c[u>>2]|0);z=c[l>>2]|0;if((((c[l>>2]|0)<0?0-z|0:z)|0)>5){z=c[w>
;>2]|0;i=y;return z|0}if((c[l>>2]|0)<0){c[r>>2]=(c[r>>2]|0)/(c[2376+(0-(c[l>>2
]|0)<<2)>>2]|0)|0;c[v>>2]=(c[v>>2]|0)+(c[l>>2]|0)}if((c[v>>2]|0)==10
){c[r>>2]=(c[r>>2]|0)/10|0;c[v>>2]=(c[v>>2]|0)-1}if((c[v>>2]|0)>0)if(((c[
r>>2]|0)/(c[2376+(c[v>>2]<<2)>>2]|0)|0|0)>32767){z=c[w>>2]|0;i=y;return z
|0}else{c[w>>2]=Vb(c[r>>2]|0,c[2376+(c[v>>2]<<2)>>2]|0)|0;break}else{c[r>
x3e;2]=_(c[r>>2]|0,c[2376+(0-(c[v>>2]|0)<<2)>>2]|0)|0;if((c[r>>2]|0)>32767
){z=c[w>>2]|0;i=y;return z|0}else{c[w>>2]=c[r>>2]<<16;break}}}else{c[v>>2]=(c[
v>>2]|0)+(c[l>>2]|0);c[u>>2]=(c[u>>2]|0)+(c[l>>2]|0);j=c[r>>2]|0;if((
c[v>>2]|0)>5){g=c[r>>2]|0;h=c[v>>2]|0;if(((j|0)/(c[2376+((c[v>>2]|0)-5<<2
)>>2]|0)|0|0)>32767){c[w>>2]=Vb(g,c[2376+(h-4<<2)>>2]|0)|0;c[c[t>>2]>
;>2]=(c[u>>2]|0)-4;break}else{c[w>>2]=Vb(g,c[2376+(h-5<<2)>>2]|0)|0;c[c[t>>
;2]>>2]=(c[u>>2]|0)-5;break}}if((j|0)>32767){c[w>>2]=Vb(c[r>>2]|0,10)|0;c[c[t>
x3e;2]>>2]=(c[u>>2]|0)-(c[v>>2]|0)+1;break}if((c[u>>2]|0)>0){c[q>>2]=(c[u
>>2]|0)<5?c[u>>2]|0:5;c[u>>2]=(c[u>>2]|0)-(c[q>>2]|0);c[s>>2]=(
c[q>>2]|0)-(c[v>>2]|0);c[r>>2]=_(c[r>>2]|0,c[2376+(c[s>>2]<<2)>
x3e;2]|0)|0;if((c[r>>2]|0)>32767){c[r>>2]=(c[r>>2]|0)/10|0;c[u>>2]=(c[u>>
2]|0)+1}}else c[u>>2]=(c[u>>2]|0)-(c[v>>2]|0);c[w>>2]=c[r>>2]<<16;c[
c[t>>2]>>2]=c[u>>2]}while(0);if(!(c[x>>2]|0)){z=c[w>>2]|0;i=y;return z|0}c[w
x3e;>2]=0-(c[w>>2]|0);z=c[w>>2]|0;i=y;return z|0}function ci(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k
=0;j=i;i=i+32|0;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>>2]=a;c[e>>2]=b;c[f>>2]=c[k>>2
];a=c[f>>2]|0;c[f>>2]=a+1;c[g>>2]=d[a>>0];c[h>>2]=0;do if((c[g>>2]|0
)==28){if(((c[f>>2]|0)+2|0)>>>0<=(c[e>>2]|0)>>>0){c[h>>2]=(((d[
c[f>>2]>>0]|0)<<8|(d[(c[f>>2]|0)+1>>0]|0))&65535)<<16>>
;16;c[f>>2]=(c[f>>2]|0)+2;k=c[h>>2]|0;i=j;return k|0}}else{if((c[g>>2]|0)==29){if(((c[f
x3e;>2]|0)+4|0)>>>0>(c[e>>2]|0)>>>0)break;c[h>>2]=(d[c[f>>
2]>>0]|0)<<24|(d[(c[f>>2]|0)+1>>0]|0)<<16|(d[(c[f>>2]|0)+2>>
;0]|0)<<8|(d[(c[f>>2]|0)+3>>0]|0);c[f>>2]=(c[f>>2]|0)+4;k=c[h>>2]|0;
i=j;return k|0}a=c[g>>2]|0;if((c[g>>2]|0)<247){c[h>>2]=a-139;k=c[h>>2]|0;i=j;return
k|0}b=((c[f>>2]|0)+1|0)>>>0>(c[e>>2]|0)>>>0;if((a|0)<251){if(b)break
;c[h>>2]=((c[g>>2]|0)-247<<8)+(d[c[f>>2]>>0]|0)+108;c[f>>2]=(c[f>
;>2]|0)+1;k=c[h>>2]|0;i=j;return k|0}else{if(b)break;c[h>>2]=(0-((c[g>>2]|0)-251)<<
8)-(d[c[f>>2]>>0]|0)-108;c[f>>2]=(c[f>>2]|0)+1;k=c[h>>2]|0;i=j;return k|0}}while
(0);c[h>>2]=0;k=c[h>>2]|0;i=j;return k|0}function di(a,b){a=a|0;b=b|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]=b;b=c[c[g>>2]>>2]|0;a=c[(c[g>>2]|0)+4>>2]|0;if((
d[c[c[g>>2]>>2]>>0]|0|0)==30){g=bi(b,a,c[e>>2]|0,0)|0;i=f;return g|0}else{g=ci(b,a)|0;g=(
_(g,c[2376+(c[e>>2]<<2)>>2]|0)|0)<<16;i=f;return g|0}return 0}function ei(a){a=a|0;var b
=0,d=0,e=0,f=0,g=0,h=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;b=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[h>>2]=c[(c[g>>
;2]|0)+412>>2];c[b>>2]=(c[h>>2]|0)+80;c[d>>2]=(c[g>>2]|0)+16;c[e>>2]=
161;if((c[(c[g>>2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+16|0)>>>0){
h=c[e>>2]|0;i=f;return h|0}h=c[d>>2]|0;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[c[b>>2]>>
2]=h;h=c[d>>2]|0;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[(c[b>>2]|0)+4>>2]=h;h=c[d>>2]|0
;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[(c[b>>2]|0)+8>>2]=h;h=Tb(fi(c[d>>2]|0)|0)|0;c[(c[b>
x3e;2]|0)+12>>2]=h;c[e>>2]=0;h=c[e>>2]|0;i=f;return h|0}function fi(a){a=a|0;var b=0,e=0,f=0;e=i;i
=i+16|0;f=e;c[f>>2]=a;b=c[c[f>>2]>>2]|0;a=c[(c[f>>2]|0)+4>>2]|0;if((d[c[c[f>
;>2]>>2]>>0]|0|0)==30){f=bi(b,a,0,0)|0;i=e;return f|0}else{f=(ci(b,a)|0)<<16;i=e;return f|0}return
0}function gi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+12|0;d=f+8|0;b=f+4|0;e=f;c[g>>2]=a;c[d>>2]=
c[(c[g>>2]|0)+412>>2];c[b>>2]=(c[g>>2]|0)+16;c[e>>2]=161;if((c[(c[g>>
;2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+8|0)>>>0){g=c[e>>2]|0;i=f
;return g|0}g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+116>>2]=g;g=hi(c[b>>
;2]|0)|0;c[(c[d>>2]|0)+112>>2]=g;c[e>>2]=0;g=c[e>>2]|0;i=f;return g|0}function hi(a){a=a
|0;var b=0,e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=a;b=c[c[f>>2]>>2]|0;a=c[(c[f>>2]|0)+4>
x3e;2]|0;if((d[c[c[f>>2]>>2]>>0]|0|0)==30){f=(bi(b,a,0,0)|0)>>16;i=e;return f|0}else{f=ci
(b,a)|0;i=e;return f|0}return 0}function ii(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+12|0;d=f+8|0;b=f+4|0;e=f;c[g>
x3e;2]=a;c[d>>2]=c[(c[g>>2]|0)+412>>2];c[b>>2]=(c[g>>2]|0)+16;c[e>>2
]=161;if((c[(c[g>>2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+12|0)>>>
0){g=c[e>>2]|0;i=f;return g|0}g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+128>
x3e;2]=g;g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+132>>2]=g;g=hi(c[b>>2
]|0)|0;c[(c[d>>2]|0)+136>>2]=g;c[e>>2]=0;g=c[e>>2]|0;i=f;return g|0}function ji(a,b){a=a
|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;if(c[(c[d>>2]|0)+
28>>2]|0){i=g;return}c[f>>2]=c[c[d>>2]>>2];fe(c[f>>2]|0,c[e>>2]|0);i
=g;return}function ki(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;o=i;i=i+32|0;h=o+20|0;j=o+16|0;k=o+12
|0;p=o+8|0;l=o+4|0;m=o+24|0;n=o;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[p>>2]=g;f=Kc(c[k>
x3e;2]|0,c[p>>2]|0)|0;c[l>>2]=f;if(f|0){p=c[l>>2]|0;i=o;return p|0}a[m>>0]=ke(c[k>
x3e;2]|0,l)|0;if(c[l>>2]|0){p=c[l>>2]|0;i=o;return p|0}a[c[h>>2]>>0]=a[m>>0]|0
;c[(c[h>>2]|0)+20>>2]=0;a:do switch(d[m>>0]|0|0){case 0:{c[(c[h>>2]|0)+12>>2]=
c[j>>2];break}case 3:{c[n>>2]=(Pc(c[k>>2]|0,l)|0)&65535;if(c[l>>2]|0){p=c[l>
x3e;2]|0;i=o;return p|0}else{c[(c[h>>2]|0)+12>>2]=((c[n>>2]|0)*3|0)+2;break a}}default:{c[l>
x3e;2]=3;p=c[l>>2]|0;i=o;return p|0}}while(0);c[l>>2]=de(c[k>>2]|0,c[(c[h>>2]|0)+12>
;>2]|0,(c[h>>2]|0)+8|0)|0;p=c[l>>2]|0;i=o;return p|0}function li(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16
|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;if(!(c[c[b>>2]>>2]|0)){i=f;return}c[e>>2]=c[c[b>
x3e;2]>>2];c[d>>2]=c[(c[e>>2]|0)+28>>2];if(c[(c[b>>2]|0)+28>>2]|0)fe
(c[e>>2]|0,(c[b>>2]|0)+28|0);Fb(c[d>>2]|0,c[(c[b>>2]|0)+24>>2]|0);c[(c[b>
x3e;2]|0)+24>>2]=0;e=c[b>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>
x3e;2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0;i=f;return}function mi(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,v=0,w=0,x=0,y=0;y=i;i=i+48|0;r=y+36|0;s
=y+32|0;t=y+28|0;l=y+24|0;m=y+20|0;u=y+42|0;x=y+16|0;v=y+12|0;n=y+40|0;w=y+8|0;p=y+4|0;o=y;c[r>>2]=d;c[s>>2]=
f;c[t>>2]=g;c[l>>2]=h;c[m>>2]=j;a[u>>0]=k;c[x>>2]=c[(c[t>>2]|0)+28
x3e;>2];c[v>>2]=0;a:do if((c[m>>2]|0)>>>0>2){c[(c[r>>2]|0)+4>>2
]=(c[l>>2]|0)+(c[m>>2]|0);g=Kc(c[t>>2]|0,c[(c[r>>2]|0)+4>>2]|0)|0;c[v>>
;2]=g;if(((g|0)==0?(g=(ke(c[t>>2]|0,v)|0)&255,c[c[r>>2]>>2]=g,(c[v>>2]|0)==0):0)?(g
=hc(c[x>>2]|0,2,0,c[s>>2]|0,0,v)|0,c[(c[r>>2]|0)+8>>2]=g,(c[v>>2]|0)==0):0){b[
c[(c[r>>2]|0)+8>>2]>>1]=0;switch(c[c[r>>2]>>2]|0){case 0:{if((c[s>>2
]|0)>>>0<=0){q=39;break a}p=ee(c[t>>2]|0,(c[s>>2]|0)-1<<1)|0;c[v>>2]=
p;if(p|0)break a;c[w>>2]=1;while(1){l=c[t>>2]|0;if((c[w>>2]|0)>>>0>=(c[s>
x3e;2]|0)>>>0)break;q=ie(l)|0;b[(c[(c[r>>2]|0)+8>>2]|0)+(c[w>>2]<<1)>
;>1]=q;c[w>>2]=(c[w>>2]|0)+1}ge(l);q=39;break a}case 2:case 1:{c[w>>2]=1;b:while(1){if((c[w
x3e;>2]|0)>>>0>=(c[s>>2]|0)>>>0){q=39;break a}b[n>>1]=Pc(c[t>
x3e;2]|0,v)|0;if(c[v>>2]|0)break a;l=c[t>>2]|0;if((c[c[r>>2]>>2]|0)==2){c[p>>2
]=(Pc(l,v)|0)&65535;if(c[v>>2]|0)break a}else{c[p>>2]=(ke(l,v)|0)&255;if(c[v>>2]|0)break
a}if((e[n>>1]|0)>>>0>(65535-(c[p>>2]|0)|0)>>>0)c[p>>2]=65535-(
e[n>>1]|0);c[o>>2]=0;while(1){if((c[w>>2]|0)>>>0>=(c[s>>2]|0)>
x3e;>0)continue b;if((c[o>>2]|0)>>>0>(c[p>>2]|0)>>>0)continue b;b[(c
[(c[r>>2]|0)+8>>2]|0)+(c[w>>2]<<1)>>1]=b[n>>1]|0;c[o>>2]=(
c[o>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1;b[n>>1]=(b[n>>1]|0)+1<<16>
x3e;16}}}default:{c[v>>2]=3;break a}}}}else{c[(c[r>>2]|0)+4>>2]=c[m>>2];switch(c[m>
x3e;2]|0){case 0:{if((c[s>>2]|0)>>>0>229){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0
,c[s>>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+
8>>2]|0,5556,c[s>>2]<<1|0)|0;q=39;break a}case 1:{if((c[s>>2]|0)>>>0>
;166){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0,c[s>>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2
]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+8>>2]|0,6014,c[s>>2]<<1|0)|0;q=39;break
a}case 2:{if((c[s>>2]|0)>>>0>87){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0,c[s>
;>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+8>
x3e;2]|0,6346,c[s>>2]<<1|0)|0;q=39;break a}default:{c[v>>2]=3;break a}}}while(0);if((q|0)==39?a[u
x3e;>0]|0:0)c[v>>2]=ni(c[r>>2]|0,c[s>>2]|0,c[x>>2]|0)|0;if(!(c[v>>2]|0)){
x=c[v>>2]|0;i=y;return x|0}Fb(c[x>>2]|0,c[(c[r>>2]|0)+8>>2]|0);c[(c[r>>2]|0)+8
>>2]=0;Fb(c[x>>2]|0,c[(c[r>>2]|0)+12>>2]|0);c[(c[r>>2]|0)+12>>2]=0;c
[c[r>>2]>>2]=0;c[(c[r>>2]|0)+4>>2]=0;c[(c[r>>2]|0)+8>>2]=0;x=c[v>
;>2]|0;i=y;return x|0}function ni(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;o=i;i=i+32|0;g=o+20|0;h=o+16
|0;j=o+12|0;k=o+8|0;l=o+4|0;m=o;n=o+24|0;c[g>>2]=a;c[h>>2]=d;c[j>>2]=f;c[k>>2]=0;b[n>
;>1]=0;if((c[(c[g>>2]|0)+16>>2]|0)>>>0>0){d=c[k>>2]|0;i=o;return d|0}c[l
x3e;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[h>>2]|0)>>>0)break;if((e[(
c[(c[g>>2]|0)+8>>2]|0)+(c[l>>2]<<1)>>1]|0|0)>(e[n>>1]|0|0))b[n
x3e;>1]=b[(c[(c[g>>2]|0)+8>>2]|0)+(c[l>>2]<<1)>>1]|0;c[l>>2]=(c
[l>>2]|0)+1}d=hc(c[j>>2]|0,2,0,(e[n>>1]|0)+1|0,0,k)|0;c[(c[g>>2]|0)+12>>2]=d;if
(c[k>>2]|0){d=c[k>>2]|0;i=o;return d|0}c[m>>2]=(c[h>>2]|0)-1;while(1){if((c[m>>
;2]|0)<0)break;b[(c[(c[g>>2]|0)+12>>2]|0)+((e[(c[(c[g>>2]|0)+8>>2]|0)+(c[m>>
;2]<<1)>>1]|0)<<1)>>1]=c[m>>2];c[m>>2]=(c[m>>2]|0)+-1}c[(c
[g>>2]|0)+16>>2]=e[n>>1];c[(c[g>>2]|0)+20>>2]=c[h>>2];d=c[k>>
;2]|0;i=o;return d|0}function oi(a,f,g,h,j,k){a=a|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;F=i;i=i+80|0;l=F+64|0;m=F+60|0;o=F+56|0;p=F+52|0;q=F+48|0;r=F+44|0;t=F+40|0;s=F+36|0;z
=F+32|0;x=F+68|0;w=F+28|0;C=F+24|0;B=F+20|0;y=F+16|0;A=F+12|0;v=F+8|0;D=F+4|0;u=F;c[l>>2]=a;c[m>>2]=f;c[o>
;>2]=g;c[p>>2]=h;c[q>>2]=j;c[r>>2]=k;c[t>>2]=0;if(!(c[(c[m>>2]|0)+8>
x3e;2]|0)){c[t>>2]=3;E=c[t>>2]|0;i=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>
x3e;>0>=256)break;b[(c[l>>2]|0)+12+(c[z>>2]<<1)>>1]=0;b[(c[l>>2]|0)+
524+(c[z>>2]<<1)>>1]=0;c[z>>2]=(c[z>>2]|0)+1}if((c[r>>2]|0)>>
;>0<=1){switch(c[r>>2]|0){case 0:{Ss((c[l>>2]|0)+12|0,6520,512)|0;break}case 1:{Ss((c[l>>
;2]|0)+12|0,7032,512)|0;break}default:{c[t>>2]=3;E=c[t>>2]|0;i=F;return E|0}}c[(c[l>>2]|0)+8>
x3e;2]=0;c[t>>2]=ni(c[m>>2]|0,c[o>>2]|0,c[(c[p>>2]|0)+28>>2]|0)|0;if(c[t>
x3e;2]|0){E=c[t>>2]|0;i=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=256
)break;c[D>>2]=e[(c[l>>2]|0)+12+(c[z>>2]<<1)>>1];c[u>>2]=0;if(c[D>
;>2]|0)c[u>>2]=pi(c[m>>2]|0,c[D>>2]|0)|0;if(c[u>>2]|0){b[(c[l>>2]|0)+524+(
c[z>>2]<<1)>>1]=c[u>>2];c[(c[l>>2]|0)+8>>2]=(c[z>>2]|0)+1}
else{b[(c[l>>2]|0)+524+(c[z>>2]<<1)>>1]=0;b[(c[l>>2]|0)+12+(c[z>>2]
x3c;<1)>>1]=0}c[z>>2]=(c[z>>2]|0)+1}E=c[t>>2]|0;i=F;return E|0}c[(c[l>>2]|
0)+4>>2]=(c[q>>2]|0)+(c[r>>2]|0);h=Kc(c[p>>2]|0,c[(c[l>>2]|0)+4>>2]|
0)|0;c[t>>2]=h;if(h|0){E=c[t>>2]|0;i=F;return E|0}h=(ke(c[p>>2]|0,t)|0)&255;c[c[l>>
2]>>2]=h;if(c[t>>2]|0){E=c[t>>2]|0;i=F;return E|0}c[s>>2]=(ke(c[p>>2]|0,t)|0)
x26;255;if(c[t>>2]|0){E=c[t>>2]|0;i=F;return E|0}a:do switch(c[c[l>>2]>>2]&127|0){case
0:{c[(c[l>>2]|0)+8>>2]=(c[s>>2]|0)+1;h=ee(c[p>>2]|0,c[s>>2]|0)|0;c[t>>
;2]=h;if(h|0){E=c[t>>2]|0;i=F;return E|0}c[C>>2]=c[(c[p>>2]|0)+32>>2];c[z>>2]=
1;while(1){if((c[z>>2]|0)>>>0>(c[s>>2]|0)>>>0)break;h=c[C>>2]|0
;c[C>>2]=h+1;c[w>>2]=d[h>>0];if((c[z>>2]|0)>>>0<(c[o>>2]|0
)>>>0){b[(c[l>>2]|0)+524+(c[w>>2]<<1)>>1]=c[z>>2];b[(c[l>
x3e;2]|0)+12+(c[w>>2]<<1)>>1]=b[(c[(c[m>>2]|0)+8>>2]|0)+(c[z>>2]<
;<1)>>1]|0}c[z>>2]=(c[z>>2]|0)+1}ge(c[p>>2]|0);break}case 1:{c[y>>2]=1;c[(
c[l>>2]|0)+8>>2]=0;c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[s>
x3e;2]|0)>>>0){E=30;break}c[w>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break
}c[B>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break}c[B>>2]=(c[B>>2
]|0)+1;if((c[B>>2]|0)>>>0>(c[(c[l>>2]|0)+8>>2]|0)>>>0)c[(c[l>
;>2]|0)+8>>2]=c[B>>2];c[A>>2]=c[y>>2];while(1){if((c[A>>2]|0)>>
x3e;0>=((c[B>>2]|0)+(c[y>>2]|0)|0)>>>0)break;if((c[w>>2]|0)>>>0
<256?(c[A>>2]|0)>>>0<(c[o>>2]|0)>>>0:0){b[(c[l>>2]|0)+524+(
c[w>>2]<<1)>>1]=c[A>>2];b[(c[l>>2]|0)+12+(c[w>>2]<<1)>
;>1]=b[(c[(c[m>>2]|0)+8>>2]|0)+(c[A>>2]<<1)>>1]|0}c[A>>2]=(c[A
x3e;>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1}c[z>>2]=(c[z>>2]|0)+1;c[y>>2]=(c[y>
;>2]|0)+(c[B>>2]|0)}if((E|0)==30){if((c[(c[l>>2]|0)+8>>2]|0)>>>0<=256)break
a;c[(c[l>>2]|0)+8>>2]=256;break a}else if((E|0)==58){E=c[t>>2]|0;i=F;return E|0}break}default:{c[
t>>2]=3;E=c[t>>2]|0;i=F;return E|0}}while(0);if(!(c[c[l>>2]>>2]&128)){E=c[t>
x3e;2]|0;i=F;return E|0}c[s>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=c[t>>2]|0;i
=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[s>>2]|0)>>
x3e;0){E=58;break}c[w>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break}b[x>>1]=
Pc(c[p>>2]|0,t)|0;if(c[t>>2]|0){E=58;break}b[(c[l>>2]|0)+12+(c[w>>2]<<1)>
x3e;1]=b[x>>1]|0;c[v>>2]=0;while(1){if((c[v>>2]|0)>>>0>=(c[o>>2]|0)
x3e;>>0)break;n=c[v>>2]|0;if((e[(c[(c[m>>2]|0)+8>>2]|0)+(c[v>>2]<<1)
x3e;>1]|0|0)==(e[x>>1]|0|0)){E=42;break}c[v>>2]=n+1}if((E|0)==42){E=0;b[(c[l>>2]|0)+524+(c[w
x3e;>2]<<1)>>1]=n}c[z>>2]=(c[z>>2]|0)+1}if((E|0)==58){E=c[t>>2]|0;i=F;return
E|0}return 0}function pi(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>
;2]=b;c[g>>2]=0;if((c[f>>2]|0)>>>0>(c[(c[d>>2]|0)+16>>2]|0)>>
;>0){g=c[g>>2]|0;i=h;return g|0}c[g>>2]=e[(c[(c[d>>2]|0)+12>>2]|0)+(c[f>>
2]<<1)>>1];g=c[g>>2]|0;i=h;return g|0}function qi(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+32|0;n=l+28|0;m=l+24|0;h=l+20|0;j=l+16|0;f=l+12|0;e=l+8|0;g=l+4|0;k=l;c[n>>2]=b;c[m>>2]=d;c
[h>>2]=(c[n>>2]|0)+20;c[j>>2]=c[(c[c[h>>2]>>2]|0)+28>>2];c[k>
x3e;2]=0;c[g>>2]=Zh(c[h>>2]|0,c[m>>2]|0,f,e)|0;if(c[g>>2]|0){n=c[k>>2]|0;i=l;return
n|0}c[k>>2]=bc(c[j>>2]|0,(c[e>>2]|0)+1|0,g)|0;if(!(c[g>>2]|0)){Ss(c[k>>2]|0,c
[f>>2]|0,c[e>>2]|0)|0;a[(c[k>>2]|0)+(c[e>>2]|0)>>0]=0}ji(c[h>>2]|0,f
);n=c[k>>2]|0;i=l;return n|0}function ri(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;e=h+12|0;c[
d>>2]=b;c[f>>2]=0;c[g>>2]=(cs(c[d>>2]|0)|0)+1;a[e>>0]=1;a:while(1){if(!(a[e>
;>0]|0))break;if((c[g>>2]|0)>=7?(a[(c[d>>2]|0)+6>>0]|0)==43:0){c[f>>2]=0;while
(1){if((c[f>>2]|0)>=6)break;if(!(65<=(a[(c[d>>2]|0)+(c[f>>2]|0)>>0]|0)?(a[(c[d
>>2]|0)+(c[f>>2]|0)>>0]|0)<=90:0))a[e>>0]=0;c[f>>2]=(c[f>>2]|0)+
1}if(!(a[e>>0]|0))continue;c[f>>2]=7;while(1){if((c[f>>2]|0)>=(c[g>>2]|0))continue
a;a[(c[d>>2]|0)+((c[f>>2]|0)-7)>>0]=a[(c[d>>2]|0)+(c[f>>2]|0)>>0]|0;
c[f>>2]=(c[f>>2]|0)+1}}a[e>>0]=0}i=h;return}function si(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;g=e+8|0;f=e+4|0;d=e;c[h>>2]=a;c[g>>2]=b;c[d>>2]=oe(c[h>>2]|0,c[g>
;>2]|0,f)|0;c[f>>2]=c[f>>2];i=e;return c[d>>2]|0}function ti(a){a=a|0;var b=0,d=0,e=0,f=0,g=0
,h=0;h=i;i=i+32|0;b=h+16|0;e=h+12|0;f=h+8|0;g=h+4|0;d=h;c[b>>2]=a;c[e>>2]=c[b>>2];if(!(c[e>
x3e;2]|0)){i=h;return}c[f>>2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[e>>2]|0)+532
x3e;>2];if(c[g>>2]|0)Va[c[(c[g>>2]|0)+12>>2]&63](c[e>>2]|0);c[d>>2]=
c[(c[e>>2]|0)+692>>2];if(!(c[d>>2]|0)){i=h;return}ui(c[d>>2]|0);Fb(c[f>>2]|0,c
[(c[e>>2]|0)+692>>2]|0);c[(c[e>>2]|0)+692>>2]=0;i=h;return}function ui(a){a=a|0;var b=0,
d=0,e=0,f=0;f=i;i=i+16|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;c[e>>2]=c[(c[b>>2]|0)+4>>2];li((c
[b>>2]|0)+84|0);li((c[b>>2]|0)+1208|0);li((c[b>>2]|0)+20|0);li((c[b>>2]|0)+1176|0);if((c
[(c[b>>2]|0)+1892>>2]|0)>>>0>0){c[d>>2]=0;while(1){a=c[e>>2]|0;if((c
[d>>2]|0)>>>0>=(c[(c[b>>2]|0)+1892>>2]|0)>>>0)break;vi(a,c[(c[b
>>2]|0)+1896+(c[d>>2]<<2)>>2]|0);c[d>>2]=(c[d>>2]|0)+1}Fb(a,c[(c[b
x3e;>2]|0)+1896>>2]|0);c[(c[b>>2]|0)+1896>>2]=0}wi((c[b>>2]|0)+116|0);xi((c[b>
x3e;2]|0)+1152|0,c[c[b>>2]>>2]|0);vi(c[e>>2]|0,(c[b>>2]|0)+1324|0);zi((c[b>>2]|
0)+2024|0,c[c[b>>2]>>2]|0);Fb(c[e>>2]|0,c[(c[b>>2]|0)+2060>>2]|0);c[(c[b>
x3e;2]|0)+2060>>2]=0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1304>>2]|0);c[(c[b>>2]|0)+1304
>>2]=0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1308>>2]|0);c[(c[b>>2]|0)+1308>>2]=
0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1316>>2]|0);c[(c[b>>2]|0)+1316>>2]=0;Fb(c[e>
x3e;2]|0,c[(c[b>>2]|0)+1320>>2]|0);c[(c[b>>2]|0)+1320>>2]=0;i=f;return}function vi(a,b){
a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=f;return
}li((c[e>>2]|0)+532|0);Fb(c[d>>2]|0,c[(c[e>>2]|0)+564>>2]|0);c[(c[e>>2]|0)+564
>>2]=0;i=f;return}function wi(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]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+8>>2]=0;i=b;return}function xi(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)+28>>2];yi(c[e>>2]|0,c[f>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>
2]|0);c[(c[e>>2]|0)+8>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;i=
d;return}function yi(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;Fb(c[f>
;>2]|0,c[(c[e>>2]|0)+12>>2]|0);c[(c[e>>2]|0)+12>>2]=0;c[(c[e>>2]|0)+16>
;>2]=0;i=d;return}function zi(b,d){b=b|0;d=d|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]=d;if(c[(c[e>>2]|0)+8>>2]|0)fe(c[f>>2]|0,(c[e>>2]|0)+8|0);c[(c[e>>2]|0)+12
x3e;>2]=0;a[c[e>>2]>>0]=0;c[(c[e>>2]|0)+4>>2]=0;i=g;return}function Ai(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;o=i;i=i+240|0;k=o+232|0;n=o+228|0;l=o+224|0;e=o+220|0;b=o+216|0;d=o+212|0;m=o+208
|0;h=o+12|0;g=o+8|0;f=o+4|0;j=o;c[k>>2]=a;c[n>>2]=c[k>>2];c[l>>2]=0;c[e>>2]=Bi
(c[n>>2]|0)|0;do if(c[e>>2]|0){c[b>>2]=c[c[k>>2]>>2];c[d>>2]=c[(c[b
x3e;>2]|0)+692>>2];c[g>>2]=c[(c[c[k>>2]>>2]|0)+100>>2];c[m>>2]=
bc(c[g>>2]|0,132,l)|0;if(c[l>>2]|0){n=c[l>>2]|0;i=o;return n|0}Ci((c[d>>2]|0)+1324|0,h);
c[l>>2]=Oa[c[c[e>>2]>>2]&63](c[(c[c[k>>2]>>2]|0)+100>>2]|0,h,c[
m>>2]|0)|0;if(c[l>>2]|0){n=c[l>>2]|0;i=o;return n|0}c[f>>2]=c[(c[d>>2]|0)+1892
>>2];while(1){if((c[f>>2]|0)>>>0<=0){a=8;break}c[j>>2]=c[(c[d>>2]|0)+
1896+((c[f>>2]|0)-1<<2)>>2];Ci(c[j>>2]|0,h);c[l>>2]=Oa[c[c[e>>2]>
;>2]&63](c[(c[c[k>>2]>>2]|0)+100>>2]|0,h,(c[m>>2]|0)+4+((c[f>>2]|0)-
1<<2)|0)|0;if(c[l>>2]|0){a=10;break}c[f>>2]=(c[f>>2]|0)+-1}if((a|0)==8){c[(c[k>>
;2]|0)+40>>2]=c[m>>2];break}else if((a|0)==10){n=c[l>>2]|0;i=o;return n|0}}while(0);c[(c[n>
x3e;2]|0)+44>>2]=-1;n=c[l>>2]|0;i=o;return n|0}function Bi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=i;i=i+32|0
;f=e+16|0;h=e+12|0;g=e+8|0;d=e+4|0;b=e;c[f>>2]=a;c[h>>2]=c[c[f>>2]>>2];c[g>>2]=
c[(c[h>>2]|0)+692>>2];c[d>>2]=c[(c[g>>2]|0)+2052>>2];c[b>>2]=Wc(c[(c
[(c[c[f>>2]>>2]|0)+96>>2]|0)+4>>2]|0,11524)|0;if(!((c[b>>2]|0)!=0&(c[d>
;>2]|0)!=0)){h=0;i=e;return h|0}if(!(c[c[d>>2]>>2]|0)){h=0;i=e;return h|0}h=Ta[c[c[d>>2]>
;>2]&63](c[b>>2]|0)|0;i=e;return h|0}function Ci(d,e){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;l
=k+16|0;f=k+12|0;h=k+8|0;j=k+4|0;g=k;c[l>>2]=d;c[f>>2]=e;c[h>>2]=(c[l>>2]|0)+172;Ns(c[f
x3e;>2]|0,0,196)|0;d=a[c[h>>2]>>0]|0;a[(c[f>>2]|0)+8>>0]=d;c[g>>2]=d&
;255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break
;b[(c[f>>2]|0)+12+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+4+(c[j>>2]<<
;2)>>2];c[j>>2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|0)+1>>0]|0;a[(c[f>>2]|0)+
9>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c
[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+40+(c[j>>2]<<1)>>1]=c[(c[h>
;>2]|0)+60+(c[j>>2]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|
0)+2>>0]|0;a[(c[f>>2]|0)+10>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if((c[
j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+60+(c[j>
x3e;2]<<1)>>1]=c[(c[h>>2]|0)+100+(c[j>>2]<<2)>>2];c[j>>2]=(
c[j>>2]|0)+1}l=a[(c[h>>2]|0)+3>>0]|0;a[(c[f>>2]|0)+11>>0]=l;c[g>>2]=
l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>
;0)break;b[(c[f>>2]|0)+88+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+156+(c[j>>2
]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}c[(c[f>>2]|0)+108>>2]=c[(c[h>
x3e;2]|0)+196>>2];c[(c[f>>2]|0)+112>>2]=c[(c[h>>2]|0)+200>>2];c[(c[f>>
;2]|0)+116>>2]=c[(c[h>>2]|0)+204>>2];b[(c[f>>2]|0)+120>>1]=c[(c[h>>2
]|0)+208>>2];b[(c[f>>2]|0)+122>>1]=c[(c[h>>2]|0)+212>>2];l=a[(c[h>>2
]|0)+216>>0]|0;a[(c[f>>2]|0)+124>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if
((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+128+(c[j
x3e;>2]<<1)>>1]=c[(c[h>>2]|0)+220+(c[j>>2]<<2)>>2];c[j>>
;2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|0)+217>>0]|0;a[(c[f>>2]|0)+125>>0]=l;c[g>
x3e;2]=l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>
;>0)break;b[(c[f>>2]|0)+154+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+272+(c[j>
x3e;2]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}a[(c[f>>2]|0)+126>>0]=a[(c[h>
;>2]|0)+324>>0]|0;c[(c[f>>2]|0)+184>>2]=c[(c[h>>2]|0)+336>>2];c[(c[f>
;>2]|0)+4>>2]=c[(c[h>>2]|0)+332>>2];i=k;return}function Di(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h
=0,j=0,k=0;h=i;i=i+32|0;j=h+24|0;g=h+20|0;k=h+16|0;b=h+12|0;f=h+8|0;d=h+4|0;e=h;c[j>>2]=a;c[g>>2]=c[j>
x3e;2];c[k>>2]=c[c[g>>2]>>2];c[b>>2]=c[(c[k>>2]|0)+692>>2];c[f>
x3e;2]=c[(c[j>>2]|0)+40>>2];if(!(c[f>>2]|0)){i=h;return}c[d>>2]=Bi(c[g>>2]|0)|
0;if(!(c[d>>2]|0)){i=h;return}Va[c[(c[d>>2]|0)+8>>2]&63](c[c[f>>2]>>2]|0);
c[e>>2]=c[(c[b>>2]|0)+1892>>2];while(1){if((c[e>>2]|0)>>>0<=0)break;
Va[c[(c[d>>2]|0)+8>>2]&63](c[(c[f>>2]|0)+4+((c[e>>2]|0)-1<<2)>>
2]|0);c[e>>2]=(c[e>>2]|0)+-1}i=h;return}function Ei(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;g=i;i=i+32|0;b=
g+20|0;j=g+16|0;h=g+12|0;f=g+8|0;e=g+4|0;d=g;c[b>>2]=a;c[j>>2]=c[(c[b>>2]|0)+4>>2];c[h
x3e;>2]=c[(c[j>>2]|0)+692>>2];c[f>>2]=c[(c[h>>2]|0)+2052>>2];if(!(c[f>
;>2]|0)){i=g;return 0}c[e>>2]=Wc(c[(c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2]|0)+4>>
;2]|0,11524)|0;if(!(c[e>>2]|0)){i=g;return 0}c[d>>2]=Ta[c[(c[f>>2]|0)+8>>2]&63](c[e
>>2]|0)|0;c[(c[(c[b>>2]|0)+156>>2]|0)+36>>2]=c[d>>2];i=g;return 0}function Fi(
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)+156>>2]|0)+36>>2]=0;i=b
;return}function Gi(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o+
20|0;j=o+16|0;k=o+12|0;l=o+8|0;n=o+4|0;m=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[n
x3e;>2]=c[g>>2];c[m>>2]=c[h>>2];if(!(c[n>>2]|0)){c[f>>2]=37;n=c[f>
x3e;2]|0;i=o;return n|0}if(!(c[m>>2]|0))c[k>>2]=c[k>>2]|3;if(c[k>>2]&1|0)c[m>
x3e;2]=0;if(c[m>>2]|0?(c[c[h>>2]>>2]|0)!=(c[(c[g>>2]|0)+4>>2]|0):0){c[f>
x3e;2]=35;n=c[f>>2]|0;i=o;return n|0}c[l>>2]=Hi(c[n>>2]|0,c[m>>2]|0,c[j>>2]|0,
c[k>>2]|0)|0;c[f>>2]=c[l>>2];n=c[f>>2]|0;i=o;return n|0}function Hi(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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;V=i;i=i+1120|0;A=V+1092|0;B=V+1088|0;C=V+1084|0;x=V+1080|0;D=V+1076|0;I=V+1072|0;H=V+144
|0;J=V+140|0;O=V+1113|0;M=V+1112|0;r=V+136|0;K=V+120|0;L=V+112|0;k=V+108|0;m=V+104|0;n=V+100|0;l=V+1104|0;q=V+96|0;p=V+92|0;o=V+
1101|0;s=V+88|0;t=V+84|0;u=V+80|0;v=V+64|0;w=V+56|0;F=V+40|0;P=V+32|0;E=V+24|0;N=V+1100|0;z=V+1098|0;y=V+1096|0;Q=V+16|0;G=V+12|
0;R=V+8|0;S=V+4|0;T=V;c[B>>2]=f;c[C>>2]=g;c[x>>2]=h;c[D>>2]=j;c[J>>2]=c[(c[B
x3e;>2]|0)+4>>2];c[r>>2]=c[(c[J>>2]|0)+692>>2];a[M>>0]=0;if((c[(c[r>
x3e;2]|0)+1324+128>>2]|0)!=65535?c[(c[r>>2]|0)+1152+12>>2]|0:0){if(c[x>>2]|0?(c[x>
x3e;2]=pi((c[r>>2]|0)+1152|0,c[x>>2]|0)|0,(c[x>>2]|0)==0):0){c[A>>2]=6;U=c[A>>
2]|0;i=V;return U|0}}else U=6;if((U|0)==6?(c[x>>2]|0)>>>0>=(c[(c[r>>2]|0)+12>>
2]|0)>>>0:0){c[A>>2]=6;U=c[A>>2]|0;i=V;return U|0}if(c[D>>2]&1024|0)c[D>
x3e;2]=c[D>>2]|3;c[(c[B>>2]|0)+164>>2]=65536;c[(c[B>>2]|0)+168>>2]=65536;if(c[
C>>2]|0){c[(c[B>>2]|0)+164>>2]=c[(c[C>>2]|0)+12+4>>2];c[(c[B>>2]|0)+
168>>2]=c[(c[C>>2]|0)+12+8>>2]}if((((c[C>>2]|0?(c[k>>2]=c[c[C>>2]>
;>2],c[m>>2]=c[(c[k>>2]|0)+532>>2],c[n>>2]=c[(c[k>>2]|0)+104>>2
],(c[(c[C>>2]|0)+44>>2]|0)!=-1):0)?c[(c[m>>2]|0)+140>>2]|0:0)?(c[D>>2]&8|
0)==0:0)?(c[I>>2]=Na[c[(c[m>>2]|0)+104>>2]&1](c[J>>2]|0,c[(c[C>>2]|0)+44
x3e;>2]|0,c[x>>2]|0,c[D>>2]|0,c[n>>2]|0,(c[B>>2]|0)+76|0,l)|0,(c[I>>2]|0)==
0):0){b[(c[B>>2]|0)+108+2>>1]=0;b[(c[B>>2]|0)+108>>1]=0;c[(c[B>>2]|0)+24>
x3e;2]=d[l+1>>0]<<6;c[(c[B>>2]|0)+24+4>>2]=d[l>>0]<<6;c[(c[B>
x3e;2]|0)+24+8>>2]=a[l+2>>0]<<6;c[(c[B>>2]|0)+24+12>>2]=a[l+3>>0]<
;<6;c[(c[B>>2]|0)+24+16>>2]=d[l+4>>0]<<6;c[(c[B>>2]|0)+24+20>>2
]=a[l+5>>0]<<6;c[(c[B>>2]|0)+24+24>>2]=a[l+6>>0]<<6;c[(c[B>>
;2]|0)+24+28>>2]=d[l+7>>0]<<6;c[(c[B>>2]|0)+72>>2]=1651078259;if(c[D>>
;2]&16|0){c[(c[B>>2]|0)+100>>2]=a[l+5>>0];c[(c[B>>2]|0)+104>>2]=a[l+6>
;>0]}else{c[(c[B>>2]|0)+100>>2]=a[l+2>>0];c[(c[B>>2]|0)+104>>2]=a[l+3>
;>0]}c[A>>2]=c[I>>2];U=c[A>>2]|0;i=V;return U|0}if(c[D>>2]&16384|0){c[A>
x3e;2]=6;U=c[A>>2]|0;i=V;return U|0}k=c[r>>2]|0;if(c[(c[r>>2]|0)+1892>>2]|0){a[o>
x3e;0]=Ii(k+2024|0,c[x>>2]|0)|0;if((d[o>>0]|0)>>>0>=(c[(c[r>>2]|0)+1892>
x3e;2]|0)>>>0)a[o>>0]=(c[(c[r>>2]|0)+1892>>2]|0)-1;c[q>>2]=c[(c[r>
x3e;2]|0)+1324+64>>2];c[p>>2]=c[(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|
0)+64>>2];n=(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|0)+48|0;c[K>>2]=c[n
>>2];c[K+4>>2]=c[n+4>>2];c[K+8>>2]=c[n+8>>2];c[K+12>>2]=c[n+12>
x3e;2];o=(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|0)+68|0;c[L>>2]=c[o>>2
];c[L+4>>2]=c[o+4>>2];if((c[q>>2]|0)!=(c[p>>2]|0)){o=xb(c[(c[B>>2]|0)+164>
;>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[(c[B>>2]|0)+164>>2]=o;q=xb(c[(c[B>>2]|0)+
168>>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[(c[B>>2]|0)+168>>2]=q;a[M>>0]=1}}
else{q=k+1324+48|0;c[K>>2]=c[q>>2];c[K+4>>2]=c[q+4>>2];c[K+8>>2]=c[q+8>
x3e;2];c[K+12>>2]=c[q+12>>2];q=(c[r>>2]|0)+1324+68|0;c[L>>2]=c[q>>2];c[L+4>
;>2]=c[q+4>>2]}b[(c[B>>2]|0)+108+2>>1]=0;b[(c[B>>2]|0)+108>>1]=0;if(!(c[D
>>2]&1))k=(c[D>>2]&2|0)==0;else k=0;a[O>>0]=k&1;c[(c[B>>2]|0)+72>>
;2]=1869968492;Ji(H,c[J>>2]|0,c[C>>2]|0,c[B>>2]|0,a[O>>0]|0,c[D>>2]>>
;16&15);if(c[D>>2]&256|0)a[H+753>>0]=1;a[H+66>>0]=c[D>>2]&0;c[I>>
;2]=Mi(c[J>>2]|0,c[x>>2]|0,s,t)|0;do if(((c[I>>2]|0)==0?(c[I>>2]=Ni(H,c[C>>2]|
0,c[x>>2]|0)|0,(c[I>>2]|0)==0):0)?(c[I>>2]=Oi(H,c[s>>2]|0,c[t>>2]|0)|0,Yi(c[J
x3e;>2]|0,s,c[t>>2]|0),(c[I>>2]|0)==0):0){if(c[(c[(c[J>>2]|0)+128>>2]|0)+52>
x3e;2]|0){c[(c[B>>2]|0)+136>>2]=0;c[(c[B>>2]|0)+140>>2]=0;break}c[u>>2]=(c[r
x3e;>2]|0)+1176;if(c[(c[u>>2]|0)+24>>2]|0){c[(c[B>>2]|0)+136>>2]=(c[(c[u>>
;2]|0)+28>>2]|0)+(c[(c[(c[u>>2]|0)+24>>2]|0)+(c[x>>2]<<2)>>2]|0)+-1;
c[(c[B>>2]|0)+140>>2]=c[t>>2]}}while(0);if(!(c[I>>2]|0))Zi(H);if(((c[I>>2]|0)==
0?c[(c[(c[J>>2]|0)+128>>2]|0)+52>>2]|0:0)?c[(c[c[(c[(c[J>>2]|0)+128>>2]|0)+52
x3e;>2]>>2]|0)+8>>2]|0:0){c[v>>2]=c[H+32>>2];c[v+4>>2]=0;c[v+8>>
;2]=c[H+40>>2];c[v+12>>2]=c[H+40+4>>2];c[I>>2]=Wa[c[(c[c[(c[(c[J>>2]|0)+128>
;>2]|0)+52>>2]>>2]|0)+8>>2]&31](c[(c[(c[(c[J>>2]|0)+128>>2]|0)+52>
;>2]|0)+4>>2]|0,c[x>>2]|0,0,v)|0;c[H+32>>2]=c[v>>2];c[H+40>>2]=c[v+8>
;>2];c[H+40+4>>2]=c[v+12>>2]}do if(!(c[I>>2]|0)){k=c[B>>2]|0;if(c[D>>2]
x26;1024|0){c[w>>2]=c[k+156>>2];c[(c[B>>2]|0)+24+8>>2]=c[H+32>>2];c[(c[B>
x3e;2]|0)+24+16>>2]=c[H+744>>2];U=(c[w>>2]|0)+12|0;c[U>>2]=c[K>>2];c[U+4>
x3e;2]=c[K+4>>2];c[U+8>>2]=c[K+8>>2];c[U+12>>2]=c[K+12>>2];U=(c[w>>2
]|0)+28|0;c[U>>2]=c[L>>2];c[U+4>>2]=c[L+4>>2];a[(c[w>>2]|0)+8>>0]=1;
break}c[P>>2]=k+24;c[(c[P>>2]|0)+16>>2]=c[H+744>>2];c[(c[B>>2]|0)+56>>
;2]=c[H+744>>2];a[(c[(c[B>>2]|0)+156>>2]|0)+8>>0]=0;if(d[(c[J>>2]|0)+296>
x3e;0]|0?(e[(c[J>>2]|0)+300+34>>1]|0)>0:0)k=(c[(c[J>>2]|0)+300+36>>2]|0)!=0;else k=
0;a[N>>0]=k&1;do if(!(a[N>>0]|0)){k=c[J>>2]|0;if((e[(c[J>>2]|0)+368>>1]|0
)!=65535){c[(c[P>>2]|0)+28>>2]=(b[k+368+70>>1]|0)-(b[(c[J>>2]|0)+368+72>>1]|0);
break}else{c[(c[P>>2]|0)+28>>2]=(b[k+216+4>>1]|0)-(b[(c[J>>2]|0)+216+6>>1]|0);
break}}else{b[z>>1]=0;b[y>>1]=0;Za[c[(c[(c[J>>2]|0)+532>>2]|0)+156>>2]&31
](c[J>>2]|0,1,c[x>>2]|0,z,y)|0;c[(c[P>>2]|0)+24>>2]=b[z>>1];c[(c[P>>
2]|0)+28>>2]=e[y>>1]}while(0);c[(c[B>>2]|0)+60>>2]=c[(c[P>>2]|0)+28>>
;2];c[(c[B>>2]|0)+72>>2]=1869968492;c[(c[B>>2]|0)+108+16>>2]=0;if(c[C>>2]|0?(e
[(c[C>>2]|0)+12+2>>1]|0)<24:0){J=(c[B>>2]|0)+108+16|0;c[J>>2]=c[J>>2]|256
}J=(c[B>>2]|0)+108+16|0;c[J>>2]=c[J>>2]|4;do if((c[K>>2]|0)==65536?(c[K+12>>2]|
0)==65536:0){if(c[K+4>>2]|0){U=64;break}if(c[K+8>>2]|0)U=64}else U=64;while(0);if((U|0)==64)Kb((c[B>>
;2]|0)+108|0,K);if(!((c[L>>2]|0)==0?!(c[L+4>>2]|0):0))Nb((c[B>>2]|0)+108|0,c[L>>2]|0,c[L
+4>>2]|0);c[E>>2]=c[(c[P>>2]|0)+16>>2];c[E+4>>2]=0;Lb(E,K);c[(c[P>>2
]|0)+16>>2]=(c[E>>2]|0)+(c[L>>2]|0);c[E>>2]=0;c[E+4>>2]=c[(c[P>>2]|0
)+28>>2];Lb(E,K);c[(c[P>>2]|0)+28>>2]=(c[E+4>>2]|0)+(c[L+4>>2]|0);if(!((c[D>
;>2]&1|0)!=0?!(d[M>>0]|0):0)){c[G>>2]=(c[B>>2]|0)+108;c[R>>2]=c[(c[G>>
;2]|0)+4>>2];c[S>>2]=c[(c[B>>2]|0)+164>>2];c[T>>2]=c[(c[B>>2]|0)+168
>>2];if(!(a[O>>0]|0?(c[H+68>>2]|0)!=0:0))U=72;a:do if((U|0)==72){c[Q>>2]=b[(c[G>>
;2]|0)+2>>1];while(1){if((c[Q>>2]|0)<=0)break a;U=Mb(c[c[R>>2]>>2]|0,c[S>>
;2]|0)|0;c[c[R>>2]>>2]=U;U=Mb(c[(c[R>>2]|0)+4>>2]|0,c[T>>2]|0)|0;c[(c[R>
x3e;2]|0)+4>>2]=U;c[Q>>2]=(c[Q>>2]|0)+-1;c[R>>2]=(c[R>>2]|0)+8}}while(0);U=Mb(
c[(c[P>>2]|0)+16>>2]|0,c[S>>2]|0)|0;c[(c[P>>2]|0)+16>>2]=U;U=Mb(c[(c[P>
x3e;2]|0)+28>>2]|0,c[T>>2]|0)|0;c[(c[P>>2]|0)+28>>2]=U}_d((c[B>>2]|0)+108|0,F);
c[c[P>>2]>>2]=(c[F+8>>2]|0)-(c[F>>2]|0);c[(c[P>>2]|0)+4>>2]=(c[F+12
x3e;>2]|0)-(c[F+4>>2]|0);c[(c[P>>2]|0)+8>>2]=c[F>>2];c[(c[P>>2]|0)+12>
;>2]=c[F+12>>2];if(a[N>>0]|0){c[(c[P>>2]|0)+20>>2]=(c[(c[P>>2]|0)+8>
x3e;2]|0)-((c[(c[P>>2]|0)+16>>2]|0)/2|0);break}if(!(c[D>>2]&16))break;Bd(c[P>>2]|0,
c[(c[P>>2]|0)+28>>2]|0)}while(0);c[A>>2]=c[I>>2];U=c[A>>2]|0;i=V;return U|0}function
Ii(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;o=i;i=i+32|0;j=o+20|0;f=o+16|0;k=o+25|0;g=o+12|0;h=o+8|0;l=o+24|0;m
=o+4|0;n=o;c[j>>2]=b;c[f>>2]=e;a[k>>0]=0;switch(d[c[j>>2]>>0]|0|0){case 0:{a[k
>>0]=a[(c[(c[j>>2]|0)+8>>2]|0)+(c[f>>2]|0)>>0]|0;n=a[k>>0]|0;i=o;return
n|0}case 3:{b=c[j>>2]|0;if(((c[f>>2]|0)-(c[(c[j>>2]|0)+16>>2]|0)|0)>>>0
x3c;(c[(c[j>>2]|0)+20>>2]|0)>>>0){a[k>>0]=a[b+24>>0]|0;n=a[k>>0
]|0;i=o;return n|0}c[g>>2]=c[b+8>>2];c[h>>2]=(c[g>>2]|0)+(c[(c[j>>2]|0)+12>
;>2]|0);c[g>>2]=(c[g>>2]|0)+2;c[m>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[g>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;while(1){if((c[f>>
2]|0)>>>0<(c[m>>2]|0)>>>0){b=10;break}e=c[g>>2]|0;c[g>>2]=e+1;a
[l>>0]=a[e>>0]|0;c[g>>2]=(c[g>>2]|0)+2;c[n>>2]=(((d[(c[g>>2]|0)+-2
x3e;>0]|0)&65535)<<8|((d[(c[g>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if
((c[f>>2]|0)>>>0<(c[n>>2]|0)>>>0){b=8;break}c[m>>2]=c[n>
x3e;2];if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>>0){b=10;break}}if((b|0)==8){a[k
x3e;>0]=a[l>>0]|0;c[(c[j>>2]|0)+16>>2]=c[m>>2];c[(c[j>>2]|0)+20>>
;2]=(c[n>>2]|0)-(c[m>>2]|0);a[(c[j>>2]|0)+24>>0]=a[l>>0]|0;n=a[k>>0]|
0;i=o;return n|0}else if((b|0)==10){n=a[k>>0]|0;i=o;return n|0}break}default:{n=a[k>>0]|0;i=o;return n|0}}return
0}function Ji(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;j=i;i=i+32|0;k=j+20|0;q=j+16
|0;p=j+12|0;o=j+8|0;n=j+24|0;l=j+4|0;m=j;c[k>>2]=b;c[q>>2]=d;c[p>>2]=e;c[o>>2]=f;a[n>
;>0]=g;c[l>>2]=h;c[m>>2]=c[(c[q>>2]|0)+692>>2];Ns(c[k>>2]|0,0,928)|0;Ki(c
[k>>2]|0,c[q>>2]|0,c[p>>2]|0,c[o>>2]|0,a[n>>0]|0);c[(c[k>>2]|0)+76
x3e;>2]=c[m>>2];c[(c[k>>2]|0)+892>>2]=c[(c[m>>2]|0)+84+8>>2];c[(c[k>
x3e;2]|0)+908>>2]=c[(c[m>>2]|0)+1308>>2];f=Li(c[(c[m>>2]|0)+1324+44>>2]|0,c[(c
[k>>2]|0)+892>>2]|0)|0;c[(c[k>>2]|0)+900>>2]=f;c[(c[k>>2]|0)+920>>2]=
c[l>>2];i=j;return}function Ki(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;p=i;i=i+32
|0;j=p+20|0;q=p+16|0;k=p+12|0;l=p+8|0;m=p+24|0;o=p+4|0;n=p;c[j>>2]=b;c[q>>2]=e;c[k>>2]=f;c[l>
x3e;2]=g;a[m>>0]=h;a[(c[j>>2]|0)+64>>0]=0;a[(c[j>>2]|0)+65>>0]=1;c[(c[j>
x3e;2]|0)+4>>2]=c[q>>2];c[(c[j>>2]|0)+8>>2]=c[l>>2];c[c[j>>2]>
x3e;2]=c[(c[q>>2]|0)+100>>2];if(c[l>>2]|0?(c[o>>2]=c[c[(c[l>>2]|0)+156>
x3e;2]>>2],c[(c[j>>2]|0)+12>>2]=c[o>>2],c[(c[j>>2]|0)+16>>2]=(c[o>
;>2]|0)+20,c[(c[j>>2]|0)+20>>2]=(c[o>>2]|0)+56,dc(c[o>>2]|0),c[(c[j>>2]|0
)+72>>2]=0,c[(c[j>>2]|0)+68>>2]=0,(d[m>>0]|0|0)!=0&(c[k>>2]|0)!=0):0){c[n
>>2]=c[(c[k>>2]|0)+40>>2];c[(c[j>>2]|0)+72>>2]=c[c[n>>2]>>
2];c[(c[j>>2]|0)+68>>2]=c[(c[(c[l>>2]|0)+156>>2]|0)+36>>2]}c[(c[j>>2
]|0)+24>>2]=0;c[(c[j>>2]|0)+28>>2]=0;c[(c[j>>2]|0)+32>>2]=0;c[(c[j>>
2]|0)+32+4>>2]=0;c[(c[j>>2]|0)+40>>2]=0;c[(c[j>>2]|0)+40+4>>2]=0;i=p;return}function
Li(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[d>>2]=b;do if((c[g>
;>2]|0)!=1){if((c[d>>2]|0)>>>0<1240){c[e>>2]=107;break}if((c[d>>2]|0)>
;>>0<33900){c[e>>2]=1131;break}else{c[e>>2]=32768;break}}else c[e>>2]=0;while(0);i=
f;return c[e>>2]|0}function Mi(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;o=i;i=i+48|0;f
=o+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;m=o+8|0;n=o+4|0;l=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k
x3e;>2]=e;a=c[g>>2]|0;if(c[(c[(c[g>>2]|0)+128>>2]|0)+52>>2]|0){c[n>>2]=Oa
[c[c[c[(c[a+128>>2]|0)+52>>2]>>2]>>2]&63](c[(c[(c[(c[g>>2]|0)+128>
x3e;2]|0)+52>>2]|0)+4>>2]|0,c[h>>2]|0,m)|0;c[c[j>>2]>>2]=c[m>>2];c[c
[k>>2]>>2]=c[m+4>>2];c[f>>2]=c[n>>2];n=c[f>>2]|0;i=o;return n|0}else
{c[l>>2]=c[a+692>>2];c[f>>2]=Zh((c[l>>2]|0)+1176|0,c[h>>2]|0,c[j>>2]|
0,c[k>>2]|0)|0;n=c[f>>2]|0;i=o;return n|0}return 0}function Ni(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;q=i;i=i+48|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;l=q+12|0;p=q+8|0;m=q+4|0;n=q+32|0;o=q;c[g>>2]=
b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=c[g>>2];c[l>>2]=c[(c[(c[k>>2]|0)+4>
;>2]|0)+692>>2];c[p>>2]=(c[l>>2]|0)+1324;c[m>>2]=0;do if(c[(c[l>>2]|0)+1892
>>2]|0){a[n>>0]=Ii((c[l>>2]|0)+2024|0,c[j>>2]|0)|0;if((d[n>>0]|0)>>
x3e;0>=(c[(c[l>>2]|0)+1892>>2]|0)>>>0){c[m>>2]=3;p=c[m>>2]|0;i=q;return
p|0}else{c[p>>2]=c[(c[l>>2]|0)+1896+((d[n>>0]|0)<<2)>>2];if(!(c[h>>
2]|0?(c[(c[k>>2]|0)+68>>2]|0)!=0:0))break;c[o>>2]=c[(c[h>>2]|0)+40>>2];c[(c[k
x3e;>2]|0)+72>>2]=c[(c[o>>2]|0)+4+((d[n>>0]|0)<<2)>>2];break}}while(0);c[(
c[g>>2]|0)+888>>2]=c[(c[p>>2]|0)+532+8>>2];c[(c[g>>2]|0)+904>>2]=c[(
c[p>>2]|0)+564>>2];e=Li(c[(c[(c[g>>2]|0)+76>>2]|0)+1324+44>>2]|0,c[(c[g>
x3e;2]|0)+888>>2]|0)|0;c[(c[g>>2]|0)+896>>2]=e;c[(c[g>>2]|0)+744>>2]=c[(c[p>
;>2]|0)+172+352>>2];c[(c[g>>2]|0)+748>>2]=c[(c[p>>2]|0)+172+356>>2];p=c[m
>>2]|0;i=q;return p|0}function Oi(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,$=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;ta=i;i=i+272|0;h=
ta+256|0;j=ta+252|0;va=ta+248|0;ua=ta+244|0;y=ta+240|0;ra=ta+236|0;K=ta+232|0;L=ta+228|0;m=ta+224|0;pa=ta+220|0;qa=ta+216|0;$=ta
+212|0;ca=ta+208|0;n=ta+204|0;A=ta+200|0;W=ta+196|0;la=ta+260|0;ba=ta+192|0;ma=ta+188|0;l=ta+184|0;T=ta+180|0;Z=ta+176|0;aa=ta+172
|0;X=ta+168|0;M=ta+164|0;N=ta+160|0;O=ta+156|0;Y=ta+152|0;P=ta+148|0;V=ta+144|0;Q=ta+140|0;U=ta+136|0;R=ta+132|0;ea=ta+128|0;fa=
ta+124|0;da=ta+120|0;ga=ta+116|0;w=ta+112|0;x=ta+108|0;B=ta+104|0;s=ta+100|0;ha=ta+96|0;v=ta+92|0;z=ta+88|0;k=ta+84|0;t=ta+80|0;
_=ta+76|0;S=ta+72|0;ia=ta+68|0;E=ta+64|0;u=ta+60|0;F=ta+56|0;ja=ta+52|0;C=ta+48|0;ka=ta+44|0;D=ta+40|0;na=ta+36|0;G=ta+32|0;H=ta
+28|0;oa=ta+24|0;o=ta+20|0;p=ta+16|0;q=ta+12|0;r=ta+8|0;I=ta+4|0;J=ta;c[j>>2]=e;c[va>>2]=f;c[ua>>2
]=g;c[m>>2]=c[j>>2];c[n>>2]=c[(c[(c[j>>2]|0)+76>>2]|0)+1324+44>>2];c
[(c[j>>2]|0)+756>>2]=0;a[(c[j>>2]|0)+752>>0]=1;c[$>>2]=$^j^va;e=(c[$>>
;2]^c[$>>2]>>10^c[$>>2]>>20)&65535;c[$>>2]=e;c[$>>2]=(c[$>
x3e;2]|0)==0?29572:e;c[(c[j>>2]|0)+276>>2]=(c[j>>2]|0)+80;c[(c[j>>2]|0)+676>>2
]=(c[j>>2]|0)+280;c[ra>>2]=(c[j>>2]|0)+280;c[ca>>2]=c[(c[j>>2]|0)+276>>
;2];c[A>>2]=c[(c[m>>2]|0)+68>>2];a[(c[m>>2]|0)+64>>0]=0;c[c[ra>>2]
x3e;>2]=c[va>>2];e=(c[va>>2]|0)+(c[ua>>2]|0)|0;c[(c[ra>>2]|0)+4>>2]=e;c[L
>>2]=e;e=c[c[ra>>2]>>2]|0;c[(c[ra>>2]|0)+8>>2]=e;c[K>>2]=e;c[y>
x3e;2]=0;c[pa>>2]=c[(c[m>>2]|0)+24>>2];c[qa>>2]=c[(c[m>>2]|0)+28>>2];
if(c[A>>2]|0)Va[c[(c[A>>2]|0)+4>>2]&63](c[c[A>>2]>>2]|0);a:while(1){if((c
[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0){sa=307;break}va=c[K>>2]|0;c[K
x3e;>2]=va+1;a[la>>0]=a[va>>0]|0;if((d[la>>0]|0)<32?(d[la>>0]|0)!=28:0){c[l>
;>2]=c[(c[j>>2]|0)+276>>2];c[T>>2]=((c[l>>2]|0)-((c[j>>2]|0)+80)|0)/4|0;c
[W>>2]=0;b:do switch(d[la>>0]|0){case 1:{c[W>>2]=19;break}case 3:{c[W>>2]=20;break}case
4:{c[W>>2]=3;break}case 5:{c[W>>2]=4;break}case 6:{c[W>>2]=5;break}case 7:{c[W>>2]=6;break
}case 8:{c[W>>2]=7;break}case 9:{c[W>>2]=53;break}case 10:{c[W>>2]=49;break}case 11:{c[W>>
;2]=51;break}case 12:{if((c[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0)break a;va=c[K
x3e;>2]|0;c[K>>2]=va+1;a[la>>0]=a[va>>0]|0;do switch(d[la>>0]|0){case 0:{c[W>
x3e;2]=25;break b}case 1:{c[W>>2]=20;break b}case 2:{c[W>>2]=19;break b}case 3:{c[W>>2]=44;break b
}case 4:{c[W>>2]=45;break b}case 5:{c[W>>2]=46;break b}case 6:{c[W>>2]=56;break b}case 7:{c[W>
;>2]=57;break b}case 8:{c[W>>2]=42;break b}case 9:{c[W>>2]=26;break b}case 10:{c[W>>2]=27;break
b}case 11:{c[W>>2]=28;break b}case 12:{c[W>>2]=29;break b}case 13:{c[W>>2]=43;break b}case 14:{c[
W>>2]=30;break b}case 15:{c[W>>2]=47;break b}case 16:{c[W>>2]=54;break b}case 17:{c[W>>2
]=55;break b}case 18:{c[W>>2]=35;break b}case 20:{c[W>>2]=40;break b}case 21:{c[W>>2]=41;break b}case
22:{c[W>>2]=48;break b}case 23:{c[W>>2]=31;break b}case 24:{c[W>>2]=32;break b}case 26:{c[W>
x3e;2]=33;break b}case 27:{c[W>>2]=39;break b}case 28:{c[W>>2]=36;break b}case 29:{c[W>>2]=37;break
b}case 30:{c[W>>2]=38;break b}case 33:{c[W>>2]=58;break b}case 34:{c[W>>2]=15;break b}case 35:{c[
W>>2]=14;break b}case 36:{c[W>>2]=16;break b}case 37:{c[W>>2]=17;break b}default:{c[K>>2
]=(c[K>>2]|0)+-1;break b}}while(0)}case 13:{c[W>>2]=52;break}case 14:{c[W>>2]=18;break}case 16:{c[
W>>2]=34;break}case 18:{c[W>>2]=21;break}case 19:{c[W>>2]=23;break}case 20:{c[W>>2]=24;break
}case 21:{c[W>>2]=1;break}case 22:{c[W>>2]=2;break}case 23:{c[W>>2]=22;break}case 24:{c[W>>
;2]=10;break}case 25:{c[W>>2]=11;break}case 26:{c[W>>2]=13;break}case 27:{c[W>>2]=8;break}case 29:{
c[W>>2]=50;break}case 30:{c[W>>2]=12;break}case 31:{c[W>>2]=9;break}default:{}}while(0);if(!(c[W
x3e;>2]|0))break;c[Z>>2]=d[11281+(c[W>>2]|0)>>0];if(c[Z>>2]&128|0){if((c[T>
;>2]|0)>0?d[(c[j>>2]|0)+752>>0]|0:0){switch(c[W>>2]|0){case 3:case 2:{c[aa>>2]=
c[T>>2]&2;break}case 24:case 23:case 1:case 22:case 21:case 20:case 19:{c[aa>>2]=c[T>>2]&
;1;break}case 18:{c[aa>>2]=((c[T>>2]|0)==5?1:(c[T>>2]|0)==1)&1;break}default:c[aa>>
2]=0}if(c[aa>>2]|0){c[(c[j>>2]|0)+744>>2]=(c[(c[j>>2]|0)+748>>2]|0)+(c[c[ca>
;>2]>>2]>>16);if(a[(c[j>>2]|0)+753>>0]|0){sa=307;break}c[T>>2]=(c[T>
x3e;2]|0)+-1}}a[(c[j>>2]|0)+752>>0]=0;c[Z>>2]=0}c[Z>>2]=c[Z>>2]&15;if((c[
T>>2]|0)<(c[Z>>2]|0)){sa=309;break}c[l>>2]=(c[l>>2]|0)+(0-(c[Z>>2]|0)<
;<2);c[T>>2]=(c[T>>2]|0)-(c[Z>>2]|0);do switch(c[W>>2]|0){case 56:{sa=220;break a}case
18:{sa=221;break a}case 22:case 21:case 20:case 19:{if(c[A>>2]|0)_a[c[(c[A>>2]|0)+12>>2]&15](
c[c[A>>2]>>2]|0,((c[W>>2]|0)==19?1:(c[W>>2]|0)==21)&1,(c[T>>2]|0)/2|0,(c[
l>>2]|0)+(0-(c[T>>2]&-2)<<2)|0);va=(c[j>>2]|0)+756|0;c[va>>2]=(c[va>
x3e;2]|0)+((c[T>>2]|0)/2|0);c[l>>2]=c[ca>>2];break}case 24:case 23:{if((c[T>>2]|0)>
0){if(c[A>>2]|0)_a[c[(c[A>>2]|0)+12>>2]&15](c[c[A>>2]>>2]|0,0,(c[T>
x3e;2]|0)/2|0,(c[l>>2]|0)+(0-(c[T>>2]&-2)<<2)|0);va=(c[j>>2]|0)+756|0;c[va>>
;2]=(c[va>>2]|0)+((c[T>>2]|0)/2|0)}if(((c[K>>2]|0)+((c[(c[j>>2]|0)+756>>2]|0)+
7>>3)|0)>>>0>=(c[L>>2]|0)>>>0)break a;do if(c[A>>2]|0){f=c[A>
;>2]|0;if((c[W>>2]|0)==23){_a[c[f+16>>2]&15](c[c[A>>2]>>2]|0,b[(c[(c[m>
x3e;2]|0)+20>>2]|0)+2>>1]|0,c[(c[j>>2]|0)+756>>2]|0,c[K>>2]|0);break}else{Ua[c
[f+20>>2]&31](c[c[A>>2]>>2]|0,c[(c[j>>2]|0)+756>>2]|0,c[K>>2]|0
);break}}while(0);c[K>>2]=(c[K>>2]|0)+((c[(c[j>>2]|0)+756>>2]|0)+7>>3);c[l>
;>2]=c[ca>>2];break}case 1:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64>>0]=0;c[pa>>2]=(
c[pa>>2]|0)+(c[(c[l>>2]|0)+-8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>
2]|0)+-4>>2]|0);c[l>>2]=c[ca>>2];break}case 3:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64
x3e;>0]=0;c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+-4>>2]|0);c[l>>2]=c[ca>
;>2];break}case 2:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64>>0]=0;c[pa>>2]=(c[pa>>2
]|0)+(c[(c[l>>2]|0)+-4>>2]|0);c[l>>2]=c[ca>>2];break}case 4:{if(Qi(c[m>>2]|0,c
[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[T>>2]|0)/2|0)|0){sa=307;break
a}if((c[T>>2]|0)<2){sa=309;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[T>>2]&-2)<
x3c;2);while(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>
;0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|
0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>
;2]=(c[l>>2]|0)+8}c[l>>2]=c[ca>>2];break}case 6:case 5:{c[X>>2]=(c[W>>2]|0)==5
&1;if((c[T>>2]|0)<1){sa=309;break a}if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){
sa=307;break a}if(Ti(c[m>>2]|0,c[T>>2]|0)|0){sa=307;break a}c[l>>2]=c[ca>>2];while(1){if
((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;f=c[c[l
x3e;>2]>>2]|0;if(c[X>>2]|0)c[pa>>2]=(c[pa>>2]|0)+f;else c[qa>>2]=(c[qa>
;>2]|0)+f;if(Si(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>
;>2]|0)+4;c[X>>2]=c[X>>2]^1}c[l>>2]=c[ca>>2];break}case 7:{if((c[T>>2]|0)
x3c;6){sa=309;break a}c[M>>2]=(c[T>>2]|0)-((c[T>>2]|0)%6|0);if(Qi(c[m>>2]|0,c[pa>
x3e;2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[M>>2]|0)/2|0)|0){sa=307;break a}c[l>
;>2]=(c[l>>2]|0)+(0-(c[M>>2]|0)<<2);while(1){if((c[l>>2]|0)>>>0>
;=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>
x3e;2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>
2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>
;2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>
x3e;2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>
;>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0,1);c[l>>2]=(c[l>>2]|0)+24}c[l>>2]=c[ca>>2];break}case 13:{if((c[T>
x3e;2]|0)<4){sa=309;break a}c[N>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0)-(
c[N>>2]|0)|0)>0)c[N>>2]=(c[N>>2]|0)+1;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[N>>2]|0)<<2);if(c[N>>
2]&1|0){c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2
]|0)+4;c[N>>2]=(c[N>>2]|0)+-1}if(Ti(c[m>>2]|0,((c[N>>2]|0)/4|0)*3|0)|0){sa=307;break a}while
(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;c[qa
>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>
;>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[qa
>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c
[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+16}c[l>>2]=c[ca>>2];break}case 8:{if((c[T>
;>2]|0)<4){sa=309;break a}c[O>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0
)-(c[O>>2]|0)|0)>0)c[O>>2]=(c[O>>2]|0)+1;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[O>>2]|0)<<2);if(c[O>>
;2]&1|0){c[qa>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>
2]|0)+4;c[O>>2]=(c[O>>2]|0)+-1}if(Ti(c[m>>2]|0,((c[O>>2]|0)/4|0)*3|0)|0){sa=307;break a}
while(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break
;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa
>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[
qa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0
,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+16}c[l>>2]=c[ca>>2];break}case 9:case
12:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if((c[T>>2]|0)<4){sa=309
;break a}c[P>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0)-(c[P>>2]|0)|0)
x3e;0)c[P>>2]=(c[P>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+(0-(c[P>>2]|0)<<2);if
(Ti(c[m>>2]|0,((c[P>>2]|0)/4|0)*3|0)|0){sa=309;break a}c[Y>>2]=(c[W>>2]|0)==9&1;while
(1){if((c[P>>2]|0)<4)break;c[P>>2]=(c[P>>2]|0)-4;f=c[c[l>>2]>>2]|0;if(c[Y
>>2]|0){c[pa>>2]=(c[pa>>2]|0)+f;Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0
);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0
)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[qa>>
;2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);if((c[P>>2]|0)==1)c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1)}else
{c[qa>>2]=(c[qa>>2]|0)+f;Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>
;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
x3e;2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
x3e;2]|0)+(c[(c[l>>2]|0)+12>>2]|0);if((c[P>>2]|0)==1)c[qa>>2]=(c[qa>>2]|0)+(c[(
c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1)}c[l>>2]=(
c[l>>2]|0)+16;c[Y>>2]=c[Y>>2]^1}c[l>>2]=c[ca>>2];break}case 11:{if((c[T>
x3e;2]|0)<8){sa=309;break a}c[Q>>2]=c[T>>2]&-2;c[V>>2]=((c[Q>>2]|0)-6|0)/2|0;if
(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[V>>2
]|0)+3|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[Q>>2]|0)<<2);while(1){va=(c[V>
;>2]|0)>0;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>
;>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);f=c[m>>2]|0;g=c[pa>>2]|0;e=c[qa>>2]|0;if(!
va)break;Ui(f,g,e,1);c[l>>2]=(c[l>>2]|0)+8;c[V>>2]=(c[V>>2]|0)+-1}Ui(f,g,e,0);c[pa>
x3e;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
;>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20
x3e;>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case
10:{if((c[T>>2]|0)<8){sa=309;break a}c[R>>2]=(c[T>>2]|0)-2;c[R>>2]=(c[R>>
;2]|0)-((c[R>>2]|0)%6|0)+2;c[U>>2]=((c[R>>2]|0)-2|0)/6|0;if(Qi(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,((c[U>>2]|0)*3|0)+2|0)|0){sa=307;break a}c[l
x3e;>2]=(c[l>>2]|0)+(0-(c[R>>2]|0)<<2);while(1){va=(c[U>>2]|0)>0;c[pa>>
;2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|
0)+4>>2]|0);f=c[m>>2]|0;g=c[pa>>2]|0;e=c[qa>>2]|0;if(!va)break;Ui(f,g,e,0);c[pa>>
;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
x3e;2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
x3e;2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20>
;>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+24;c[U
x3e;>2]=(c[U>>2]|0)+-1}Ui(f,g,e,1);c[l>>2]=c[ca>>2];break}case 16:{if(Qi(c[m>>2]|0,
c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;break a}c[ea>>2]=c
[qa>>2];c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>
x3e;2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa
x3e;>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[
l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c
[pa>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|
0,1);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);Ui(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0);c[qa>
x3e;2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+28>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+32>>2]|0);c[qa>>2]=c[ea>
;>2];Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 15
:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;
break a}c[fa>>2]=c[qa>>2];c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);Ui
(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2
]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>
2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+12>>
;2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>
;>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);c[qa>>2]=c[fa>>2];Ui(c[m>>2]|0,c[pa>
;>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0);Ui(c[
m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 17:{c[w>>
;2]=0;c[x>>2]=0;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>
x3e;2]|0,6)|0){sa=307;break a}c[da>>2]=c[pa>>2];c[ga>>2]=c[qa>>2];c[ha>>2]=c[l
>>2];c[s>>2]=5;while(1){if((c[s>>2]|0)<=0)break;c[w>>2]=(c[w>>2]|0)+(c[c[
ha>>2]>>2]|0);c[x>>2]=(c[x>>2]|0)+(c[(c[ha>>2]|0)+4>>2]|0);c[ha>
;>2]=(c[ha>>2]|0)+8;c[s>>2]=(c[s>>2]|0)+-1}if((c[w>>2]|0)<0)c[w>>2]=
0-(c[w>>2]|0);if((c[x>>2]|0)<0)c[x>>2]=0-(c[x>>2]|0);c[B>>2]=(c[w>
x3e;2]|0)>(c[x>>2]|0)&1;c[s>>2]=5;while(1){if((c[s>>2]|0)<=0)break;c[pa>>
2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|
0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,(c[s>>2]|0)==3&255);c[l>
;>2]=(c[l>>2]|0)+8;c[s>>2]=(c[s>>2]|0)+-1}if(c[B>>2]|0){c[pa>>2]=(c[pa>
;>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=c[ga>>2]}else{c[pa>>2]=c[da>>
;2];c[qa>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0)}Ui(c[m>>2]|0,c[pa>>2]|0,
c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 14:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;break a}c[v>>2]=6;while(1){if((c[v>>
;2]|0)>>>0<=0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>
;>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,((c[v>>2]|0)==4?1:(c[v>>2]|0)==1)&1);c[l>>2]=(c[l>>2]|0)+8;c[v>>
;2]=(c[v>>2]|0)+-1}c[l>>2]=c[ca>>2];break}case 26:{if((c[c[l>>2]>>2]|0)<0
)c[c[l>>2]>>2]=0-(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case
27:{va=c[l>>2]|0;c[va>>2]=(c[va>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>
2]=(c[l>>2]|0)+4;break}case 28:{va=c[l>>2]|0;c[va>>2]=(c[va>>2]|0)-(c[(c[l>>2]|
0)+4>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case 29:{va=Vb(c[c[l>>2]>>2]|0,c[(c[l
x3e;>2]|0)+4>>2]|0)|0;c[c[l>>2]>>2]=va;c[l>>2]=(c[l>>2]|0)+4;break}case 30
:{c[c[l>>2]>>2]=0-(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case
31:{c[k>>2]=c[$>>2];if((c[k>>2]|0)>=32768)c[k>>2]=(c[k>>2]|0)+1;c[c[l>
;>2]>>2]=c[k>>2];c[$>>2]=Mb(c[$>>2]|0,65536-(c[$>>2]|0)|0)|0;if(!(c[$>
;>2]|0))c[$>>2]=(c[$>>2]|0)+10355;c[l>>2]=(c[l>>2]|0)+4;break}case 32:{va=Mb(c[c[l
x3e;>2]>>2]|0,c[(c[l>>2]|0)+4>>2]|0)|0;c[c[l>>2]>>2]=va;c[l>>2]=(
c[l>>2]|0)+4;break}case 33:{if((c[c[l>>2]>>2]|0)>0){c[t>>2]=9;c[_>>2]=c[c
[l>>2]>>2];while(1){f=c[_>>2]|0;c[S>>2]=f+(Vb(c[c[l>>2]>>2]|0,c[_>
;>2]|0)|0)+1>>1;f=c[S>>2]|0;if((c[t>>2]|0)<=0?1:(c[S>>2]|0)==(c[_>>2
]|0))break;c[_>>2]=f}c[c[l>>2]>>2]=f}else c[c[l>>2]>>2]=0;c[l>>2]=(c
[l>>2]|0)+4;break}case 25:case 35:break;case 36:{c[ia>>2]=c[c[l>>2]>>2];c[c[l>>
;2]>>2]=c[(c[l>>2]|0)+4>>2];c[(c[l>>2]|0)+4>>2]=c[ia>>2];c[l>
x3e;2]=(c[l>>2]|0)+8;break}case 37:{c[E>>2]=c[c[l>>2]>>2]>>16;if((c[E>>
;2]|0)>=0){if((c[E>>2]|0)>((c[T>>2]|0)-2|0))c[E>>2]=(c[T>>2]|0)-2}else c[E>
;>2]=0;c[c[l>>2]>>2]=c[(c[l>>2]|0)+(0-((c[E>>2]|0)+1)<<2)>>2];c
[l>>2]=(c[l>>2]|0)+4;break}case 38:{c[u>>2]=c[c[l>>2]>>2]>>16;c[F>
;>2]=c[(c[l>>2]|0)+4>>2]>>16;if((c[u>>2]|0)<=0)c[u>>2]=1;c[l>
x3e;2]=(c[l>>2]|0)+(0-(c[u>>2]|0)<<2);if((c[l>>2]|0)>>>0<(c[ca>
x3e;2]|0)>>>0){sa=309;break a}c:do if((c[F>>2]|0)>=0)while(1){if((c[F>>2]|0)<=0)break
c;c[ja>>2]=c[(c[l>>2]|0)+((c[u>>2]|0)-1<<2)>>2];c[C>>2]=(c[u>
x3e;2]|0)-2;while(1){if((c[C>>2]|0)<0)break;c[(c[l>>2]|0)+((c[C>>2]|0)+1<<2)>
x3e;2]=c[(c[l>>2]|0)+(c[C>>2]<<2)>>2];c[C>>2]=(c[C>>2]|0)+-1}c[c[l
x3e;>2]>>2]=c[ja>>2];c[F>>2]=(c[F>>2]|0)+-1}else while(1){if((c[F>>2]|0)
x3e;=0)break c;c[ka>>2]=c[c[l>>2]>>2];c[D>>2]=0;while(1){if((c[D>>2]|0)>=((
c[u>>2]|0)-1|0))break;c[(c[l>>2]|0)+(c[D>>2]<<2)>>2]=c[(c[l>>2]|0)+((
c[D>>2]|0)+1<<2)>>2];c[D>>2]=(c[D>>2]|0)+1}c[(c[l>>2]|0)+((c[u>
x3e;2]|0)-1<<2)>>2]=c[ka>>2];c[F>>2]=(c[F>>2]|0)+1}while(0);c[l>>2]=(
c[l>>2]|0)+(c[u>>2]<<2);break}case 39:{c[(c[l>>2]|0)+4>>2]=c[c[l>>2]
x3e;>2];c[l>>2]=(c[l>>2]|0)+8;break}case 40:{c[na>>2]=c[c[l>>2]>>2];c[G
x3e;>2]=c[(c[l>>2]|0)+4>>2]>>16;if((c[G>>2]|0)>=0&(c[G>>2]|0)
x3c;32)c[(c[j>>2]|0)+760+(c[G>>2]<<2)>>2]=c[na>>2];break}case 41:{c[H>>
;2]=c[c[l>>2]>>2]>>16;c[oa>>2]=0;if((c[H>>2]|0)>=0&(c[H>>2
]|0)<32)c[oa>>2]=c[(c[j>>2]|0)+760+(c[H>>2]<<2)>>2];c[c[l>>2]
x3e;>2]=c[oa>>2];c[l>>2]=(c[l>>2]|0)+4;break}case 51:{if((c[(c[j>>2]|0)+676>
x3e;2]|0)>>>0<=((c[j>>2]|0)+280|0)>>>0)break a;va=(c[j>>2]|0)+676|0;c[va
x3e;>2]=(c[va>>2]|0)+-12;c[ra>>2]=c[(c[j>>2]|0)+676>>2];c[K>>2]=c[(c[ra
x3e;>2]|0)+8>>2];c[L>>2]=c[(c[ra>>2]|0)+4>>2];break}case 50:{c[J>>2]=(c[c
[l>>2]>>2]>>16)+(c[(c[j>>2]|0)+900>>2]|0);if((c[J>>2]|0)>>
x3e;0>=(c[(c[j>>2]|0)+892>>2]|0)>>>0)break a;if((((c[ra>>2]|0)-((c[j>>
;2]|0)+280)|0)/12|0|0)>=32)break a;c[(c[ra>>2]|0)+8>>2]=c[K>>2];c[ra>>2]=(c[ra>
;>2]|0)+12;c[c[ra>>2]>>2]=c[(c[(c[j>>2]|0)+908>>2]|0)+(c[J>>2]<<
;2)>>2];c[(c[ra>>2]|0)+4>>2]=c[(c[(c[j>>2]|0)+908>>2]|0)+((c[J>>2]|0
)+1<<2)>>2];c[(c[ra>>2]|0)+8>>2]=c[c[ra>>2]>>2];if(!(c[c[ra>>
;2]>>2]|0))break a;if((c[(c[ra>>2]|0)+4>>2]|0)==(c[c[ra>>2]>>2]|0))break a;c[(
c[j>>2]|0)+676>>2]=c[ra>>2];c[K>>2]=c[c[ra>>2]>>2];c[L>>2]=
c[(c[ra>>2]|0)+4>>2];break}case 53:{c[l>>2]=c[ca>>2];break}case 52:{c[(c[j>>2]|
0)+744>>2]=(c[(c[j>>2]|0)+748>>2]|0)+(c[(c[l>>2]|0)+4>>2]>>16);c[(c[
j>>2]|0)+32>>2]=c[c[l>>2]>>2];c[(c[j>>2]|0)+32+4>>2]=0;c[pa>>
;2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=c[(c[j>>2]|0
)+28>>2];c[l>>2]=c[ca>>2];break}case 57:{c[(c[j>>2]|0)+744>>2]=(c[(c[j>
x3e;2]|0)+748>>2]|0)+(c[(c[l>>2]|0)+8>>2]>>16);c[(c[j>>2]|0)+32>>2]=
c[c[l>>2]>>2];c[(c[j>>2]|0)+32+4>>2]=c[(c[l>>2]|0)+4>>2];c[pa>
x3e;2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[(c[j>>
2]|0)+28>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>2]=c[ca>>2];break}case 58:{c[pa
x3e;>2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[(c[j>
x3e;2]|0)+28>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>2]=c[ca>>2];break}case 54:{c[
l>>2]=(c[l>>2]|0)+(0-(2+(c[(c[l>>2]|0)+-8>>2]>>16))<<2);if((c[l>
;>2]|0)>>>0<(c[ca>>2]|0)>>>0){sa=309;break a}break}case 55:{c[l>>2]=(
c[l>>2]|0)+4;break}case 44:{if(c[c[l>>2]>>2]|0)f=(c[(c[l>>2]|0)+4>>2]|0)!=0;else
f=0;c[o>>2]=f&1;c[c[l>>2]>>2]=c[o>>2]|0?65536:0;c[l>>2]=(c[l>>
2]|0)+4;break}case 45:{if(c[c[l>>2]>>2]|0)f=1;else f=(c[(c[l>>2]|0)+4>>2]|0)!=0;c[p>
;>2]=f&1;c[c[l>>2]>>2]=c[p>>2]|0?65536:0;c[l>>2]=(c[l>>2]|0)+4;break
}case 47:{c[q>>2]=((c[c[l>>2]>>2]|0)!=0^1)&1;c[c[l>>2]>>2]=c[q>>
;2]|0?65536:0;c[l>>2]=(c[l>>2]|0)+4;break}case 48:{c[r>>2]=(c[(c[l>>2]|0)+8>>2
]|0)<=(c[(c[l>>2]|0)+12>>2]|0)&1;if(!(c[r>>2]|0))c[c[l>>2]>>2]=c[(c[
l>>2]|0)+4>>2];c[l>>2]=(c[l>>2]|0)+4;break}case 49:{c[I>>2]=(c[c[l>>
2]>>2]>>16)+(c[(c[j>>2]|0)+896>>2]|0);if((c[I>>2]|0)>>>0>=(
c[(c[j>>2]|0)+888>>2]|0)>>>0)break a;if((((c[ra>>2]|0)-((c[j>>2]|0)+280)|
0)/12|0|0)>=32)break a;c[(c[ra>>2]|0)+8>>2]=c[K>>2];c[ra>>2]=(c[ra>>2]|0)+
12;c[c[ra>>2]>>2]=c[(c[(c[j>>2]|0)+904>>2]|0)+(c[I>>2]<<2)>>
;2];c[(c[ra>>2]|0)+4>>2]=c[(c[(c[j>>2]|0)+904>>2]|0)+((c[I>>2]|0)+1<<
;2)>>2];c[(c[ra>>2]|0)+8>>2]=c[c[ra>>2]>>2];if(!(c[c[ra>>2]>>
;2]|0))break a;if((c[(c[ra>>2]|0)+4>>2]|0)==(c[c[ra>>2]>>2]|0))break a;c[(c[j>>
;2]|0)+676>>2]=c[ra>>2];c[K>>2]=c[c[ra>>2]>>2];c[L>>2]=c[(c[ra>
x3e;2]|0)+4>>2];break}default:{sa=305;break a}}while(0);c[(c[j>>2]|0)+276>>2]=c[l>>2];if
((((c[(c[j>>2]|0)+276>>2]|0)-(c[ca>>2]|0)|0)/4|0|0)>=48){sa=310;break}else continue}c[ba>
;>2]=16;do if((d[la>>0]|0)!=28){f=d[la>>0]|0;if((d[la>>0]|0)<247){c[ma>>2]=f-139
;break}if((f|0)<251){if((c[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0)break a;ua=(
d[la>>0]|0)-247<<8;va=c[K>>2]|0;c[K>>2]=va+1;c[ma>>2]=ua+(d[va>>0]|0
)+108;break}f=c[K>>2]|0;if((d[la>>0]|0)<255){if(f>>>0>=(c[L>>2]|0)>
x3e;>0)break a;ua=0-((d[la>>0]|0)-251)<<8;va=c[K>>2]|0;c[K>>2]=va+1;c[ma>>
;2]=ua-(d[va>>0]|0)-108;break}if((f+3|0)>>>0>=(c[L>>2]|0)>>>0)break a;c[ma
>>2]=d[c[K>>2]>>0]<<24|d[(c[K>>2]|0)+1>>0]<<16|d[(c[K>
;>2]|0)+2>>0]<<8|d[(c[K>>2]|0)+3>>0];c[K>>2]=(c[K>>2]|0)+4;if((
c[n>>2]|0)==2)c[ba>>2]=0}else{if(((c[K>>2]|0)+1|0)>>>0>=(c[L>>2]|0)
x3e;>>0)break a;c[ma>>2]=((d[c[K>>2]>>0]<<8|d[(c[K>>2]|0)+1>>
;0])&65535)<<16>>16;c[K>>2]=(c[K>>2]|0)+2}while(0);if((((c[(c[j>>2]|0)+276
>>2]|0)-(c[ca>>2]|0)|0)/4|0|0)>=48){sa=310;break}c[ma>>2]=c[ma>>2]<<c[ba
x3e;>2];ua=c[ma>>2]|0;e=(c[j>>2]|0)+276|0;va=c[e>>2]|0;c[e>>2]=va+4;c[va>>
;2]=ua}do if((sa|0)==220){c[y>>2]=Vi(c[j>>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[(c[l>>2]|0)+12>>2]>>16,c[(c[l>
x3e;2]|0)+16>>2]>>16)|0;oc(c[(c[m>>2]|0)+12>>2]|0);c[h>>2]=c[y>>2];va
=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==221){if((c[T>>2]|0)>=4){c[z>>2]=c[(c[j>>
;2]|0)+744>>2];c[y>>2]=Vi(c[j>>2]|0,0,c[(c[l>>2]|0)+-16>>2]|0,c[(c[l>>
;2]|0)+-12>>2]|0,c[(c[l>>2]|0)+-8>>2]>>16,c[(c[l>>2]|0)+-4>>2]>
x3e;16)|0;c[(c[j>>2]|0)+744>>2]=c[z>>2]}else{if(!(c[y>>2]|0))c[y>>2]=0;Pi(c[m
x3e;>2]|0);if(c[A>>2]|0){if(Ya[c[(c[A>>2]|0)+8>>2]&127](c[c[A>>2]>>2
]|0,b[(c[(c[m>>2]|0)+20>>2]|0)+2>>1]|0)|0)break;Wa[c[(c[A>>2]|0)+24>>2]&31
](c[c[A>>2]>>2]|0,c[(c[m>>2]|0)+20>>2]|0,c[(c[m>>2]|0)+72>>2]|0,c[(c
[j>>2]|0)+920>>2]|0)|0}oc(c[(c[m>>2]|0)+12>>2]|0)}c[h>>2]=c[y>>2];va
=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==305){c[h>>2]=7;va=c[h>>2]|0;i=ta;return va|0}else if((
sa|0)==307){c[h>>2]=c[y>>2];va=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==309){c[h>>2]=129
;va=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==310){c[h>>2]=130;va=c[h>>2]|0;i=ta;return va|0}while
(0);c[h>>2]=3;va=c[h>>2]|0;i=ta;return va|0}function Pi(a){a=a|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|
0;l=k+20|0;j=k+16|0;h=k+12|0;f=k+8|0;g=k+4|0;e=k;c[l>>2]=a;c[j>>2]=c[(c[l>>2]|0)+20>>2];
if(!(c[j>>2]|0)){i=k;return}if((b[c[j>>2]>>1]|0)<=1)a=0;else a=(b[(c[(c[j>>2]|0)+12
>>2]|0)+((b[c[j>>2]>>1]|0)-2<<1)>>1]|0)+1|0;c[h>>2]=a;if((((b[(c[j
x3e;>2]|0)+2>>1]|0)>1?(c[f>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[h>>2]<
;<3),c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(b[(c[j>>2]|0)+2>>1]<<3)+-
8,c[e>>2]=(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>>2]|0)+2>>1]|0)+-1,(c[c[f>>
;2]>>2]|0)==(c[c[g>>2]>>2]|0)):0)?(c[(c[f>>2]|0)+4>>2]|0)==(c[(c[g>>
2]|0)+4>>2]|0):0)?(d[c[e>>2]>>0]|0)==1:0){l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>
x3e;1]|0)+-1<<16>>16}if((b[c[j>>2]>>1]|0)<=0){i=k;return}a=c[j>>2]|0;if((
c[h>>2]|0)==((b[(c[j>>2]|0)+2>>1]|0)-1|0)){b[a>>1]=(b[a>>1]|0)+-1<<16
>>16;l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>>1]|0)+-1<<16>>16;i=k;return}else
{b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>1]|0)-1<<1)>>1]=(b[a+2>
;>1]|0)-1;i=k;return}}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;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=
k;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2]=0;if(a[(c[f>>2]|0)+64>>0]|0){
e=c[j>>2]|0;i=k;return e|0}a[(c[f>>2]|0)+64>>0]=1;c[j>>2]=Ri(c[f>>2]|0)|0;if(c
[j>>2]|0){e=c[j>>2]|0;i=k;return e|0}c[j>>2]=Si(c[f>>2]|0,c[g>>2]|0,c[h>
x3e;2]|0)|0;e=c[j>>2]|0;i=k;return e|0}function Ri(d){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[e>>2]=d;c[h>>2]=c[(c[e>>2]|0)+20>>2];if(!(a[(c[e>>2]|0)+65>>
;0]|0)){h=c[h>>2]|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16;c[f>>2]=0;h=c[f>
;>2]|0;i=j;return h|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20>>1]|0)+(b[(c[(c[e>>2]|0)+12
>>2]|0)+56>>1]|0)+1|0)>>>0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+8>>
;2]|0)>>>0)e=0;else e=kc(c[(c[e>>2]|0)+12>>2]|0,0,1)|0;c[g>>2]=e;if(!(c[g>>
;2]|0)){if((b[c[h>>2]>>1]|0)>0)b[(c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>
;>1]|0)-1<<1)>>1]=(b[(c[h>>2]|0)+2>>1]|0)-1;h=c[h>>2]|0;b[h>>1]=(
b[h>>1]|0)+1<<16>>16}c[f>>2]=c[g>>2];h=c[f>>2]|0;i=j;return h|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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>
;2]=b;c[g>>2]=d;c[h>>2]=Ti(c[e>>2]|0,1)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=j;return
d|0}Ui(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0,1);d=c[h>>2]|0;i=j;return d|0}function Ti(a,d){a=a
|0;d=d|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]=d;if(!(c[f>>2]|0)){d=0;i=g;return
d|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20+2>>1]|0)+(b[(c[(c[e>>2]|0)+12>>2]|0)+56
+2>>1]|0)+(c[f>>2]|0)|0)>>>0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+4>>
;2]|0)>>>0){d=0;i=g;return d|0}d=kc(c[(c[e>>2]|0)+12>>2]|0,c[f>>2]|0,0)|0;i=g;return
d|0}function Ui(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;p=i;i=i+32|0;q=p+20|0;j=p+16|0;k=p+12|0;l=
p+24|0;n=p+8|0;o=p+4|0;m=p;c[q>>2]=e;c[j>>2]=f;c[k>>2]=g;a[l>>0]=h;c[n>>2]=c[(
c[q>>2]|0)+20>>2];if(!(a[(c[q>>2]|0)+65>>0]|0)){q=c[n>>2]|0;q=q+2|0;g=b[q>
;>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}c[o>>2]=(c[(c[n>>2]|0)+4>
x3e;2]|0)+(b[(c[n>>2]|0)+2>>1]<<3);c[m>>2]=(c[(c[n>>2]|0)+8>>2]|0)+(
b[(c[n>>2]|0)+2>>1]|0);c[c[o>>2]>>2]=c[j>>2]>>16;c[(c[o>>2
]|0)+4>>2]=c[k>>2]>>16;a[c[m>>2]>>0]=d[l>>0]|0?1:2;q=c[n>>
2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}function Vi(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,D=0,E=0,F=0,G=0
;G=i;i=i+96|0;k=G+92|0;l=G+88|0;m=G+84|0;n=G+80|0;o=G+76|0;p=G+72|0;q=G+68|0;y=G+64|0;u=G+60|0;t=G+56|0;r=G+52|0;z=G+48|0;C=G+40
|0;s=G+32|0;w=G+24|0;x=G+20|0;B=G+16|0;v=G+12|0;A=G+8|0;D=G+4|0;E=G;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;
c[o>>2]=g;c[p>>2]=h;c[q>>2]=j;c[u>>2]=c[l>>2];c[z>>2]=c[(c[l>
x3e;2]|0)+4>>2];if(a[(c[l>>2]|0)+924>>0]|0){c[k>>2]=160;F=c[k>>2]|0;i=G;return
F|0}c[n>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+32>>2]|0);c[o>>2]=(c[o>>2]|0
)+(c[(c[l>>2]|0)+32+4>>2]|0);if(c[(c[(c[z>>2]|0)+128>>2]|0)+52>>2]|0){c[t>
;>2]=c[p>>2];c[r>>2]=c[q>>2]}else{c[v>>2]=c[(c[z>>2]|0)+692>>2];
c[t>>2]=Wi(c[v>>2]|0,c[p>>2]|0)|0;c[r>>2]=Wi(c[v>>2]|0,c[q>>2]|0)|0}
if((c[t>>2]|0)<0|(c[r>>2]|0)<0){c[k>>2]=160;F=c[k>>2]|0;i=G;return F|0}if(a[(c
[u>>2]|0)+66>>0]|0){c[A>>2]=c[(c[u>>2]|0)+8>>2];c[D>>2]=c[c[(c[A>
;>2]|0)+156>>2]>>2];c[y>>2]=lc(c[D>>2]|0,2)|0;if(!(c[y>>2]|0)){c[E>
x3e;2]=c[(c[D>>2]|0)+56+32>>2];c[c[E>>2]>>2]=c[t>>2];b[(c[E>>2]|0)+4
>>1]=514;c[(c[E>>2]|0)+8>>2]=0;c[(c[E>>2]|0)+12>>2]=0;c[E>>2]=(c[E
x3e;>2]|0)+32;c[c[E>>2]>>2]=c[r>>2];b[(c[E>>2]|0)+4>>1]=2;c[(c[E>>
;2]|0)+8>>2]=c[n>>2]>>16;c[(c[E>>2]|0)+12>>2]=c[o>>2]>>16;
c[(c[A>>2]|0)+128>>2]=2;c[(c[A>>2]|0)+132>>2]=c[(c[D>>2]|0)+20+32>>2
];c[(c[A>>2]|0)+72>>2]=1668246896;c[(c[D>>2]|0)+56+28>>2]=2;F=11}}else F=11;do if((F|0)==
11){nc(c[(c[u>>2]|0)+12>>2]|0);c[y>>2]=Mi(c[z>>2]|0,c[t>>2]|0,w,x)|0;if((c[y
x3e;>2]|0)==0?(a[(c[l>>2]|0)+924>>0]=1,c[y>>2]=Oi(c[l>>2]|0,c[w>>2]|0,c[x
>>2]|0)|0,a[(c[l>>2]|0)+924>>0]=0,Yi(c[z>>2]|0,w,c[x>>2]|0),c[y>>2]|
0):0)break;F=(c[u>>2]|0)+32|0;c[C>>2]=c[F>>2];c[C+4>>2]=c[F+4>>2];F=(c[u>
x3e;2]|0)+40|0;c[s>>2]=c[F>>2];c[s+4>>2]=c[F+4>>2];c[B>>2]=c[(c[l>>2
]|0)+744>>2];c[(c[u>>2]|0)+32>>2]=0;c[(c[u>>2]|0)+32+4>>2]=0;c[(c[u>>
;2]|0)+24>>2]=(c[n>>2]|0)-(c[m>>2]|0);c[(c[u>>2]|0)+28>>2]=c[o>>2];c
[y>>2]=Mi(c[z>>2]|0,c[r>>2]|0,w,x)|0;if((c[y>>2]|0)==0?(a[(c[l>>2]|0)+924>
;>0]=1,c[y>>2]=Oi(c[l>>2]|0,c[w>>2]|0,c[x>>2]|0)|0,a[(c[l>>2]|0)+924>
;>0]=0,Yi(c[z>>2]|0,w,c[x>>2]|0),c[y>>2]|0):0)break;F=(c[u>>2]|0)+32|0;c[F>>
;2]=c[C>>2];c[F+4>>2]=c[C+4>>2];F=(c[u>>2]|0)+40|0;c[F>>2]=c[s>>2];c
[F+4>>2]=c[s+4>>2];c[(c[l>>2]|0)+744>>2]=c[B>>2];c[(c[u>>2]|0)+24>
;>2]=0;c[(c[u>>2]|0)+28>>2]=0}while(0);c[k>>2]=c[y>>2];F=c[k>>2]|0;i=G;return
F|0}function Wi(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l+12|0;g=l+8|0;f=l+4|0;j=l;h=l+16|0;c[g>>
2]=a;c[f>>2]=d;if(!(c[(c[g>>2]|0)+1152+8>>2]|0)){c[k>>2]=-1;k=c[k>>2]|0;i=l;return
k|0}if((c[f>>2]|0)<0|(c[f>>2]|0)>255){c[k>>2]=-1;k=c[k>>2]|0;i=l;return k|0}b
[h>>1]=Xi(c[f>>2]|0)|0;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[
g>>2]|0)+12>>2]|0)>>>0){f=10;break}a=c[j>>2]|0;if((e[(c[(c[g>>2]|0)+1152+
8>>2]|0)+(c[j>>2]<<1)>>1]|0|0)==(e[h>>1]|0|0)){f=8;break}c[j>>2]=a+1
}if((f|0)==8){c[k>>2]=a;k=c[k>>2]|0;i=l;return k|0}else if((f|0)==10){c[k>>2]=-1;k=c[k>>
2]|0;i=l;return k|0}return 0}function Xi(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<256)b=e[6520+(c[b>>2]<<1)>>1]|0;else b=0;i=d;return b&65535|0}function Yi
(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;e=k+24|0;f=k+20|0;g=k+16|0;j=k+8|0;h=k;c[e>>2]=a;c[
f>>2]=b;c[g>>2]=d;if(c[(c[(c[e>>2]|0)+128>>2]|0)+52>>2]|0){c[j>>2]=c
[c[f>>2]>>2];c[j+4>>2]=c[g>>2];Ra[c[(c[c[(c[(c[e>>2]|0)+128>>2]|0)+52
>>2]>>2]|0)+4>>2]&7](c[(c[(c[(c[e>>2]|0)+128>>2]|0)+52>>2]|0)+4
>>2]|0,j);i=k;return}else{c[h>>2]=c[(c[e>>2]|0)+692>>2];ji((c[h>>2]|0)+1176|0,
c[f>>2]|0);i=k;return}}function Zi(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;c[d>>
;2]=c[(c[b>>2]|0)+8>>2];if(!(c[d>>2]|0)){i=e;return}d=(c[d>>2]|0)+108|0;a=c[(c[b>
x3e;2]|0)+16>>2]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a
+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];i=e;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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2]=c[m>>2];c[k>>2]=c[(
c[j>>2]|0)+532>>2];c[c[h>>2]>>2]=0;c[(c[h>>2]|0)+4>>2]=0;if(!(c[k>
;>2]|0)){i=l;return 0}m=Oa[c[(c[k>>2]|0)+128>>2]&63](c[j>>2]|0,c[f>>2]|0,c[g
x3e;>2]|0)|0;c[c[h>>2]>>2]=m;i=l;return 0}function $i(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;p=i;i=i+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;m=p+8|0;o=p+4|0;n=p;c[g>>2]=
a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[o>>2]=0;c[n>>2]=c[(c[g
x3e;>2]|0)+84>>2];c[k>>2]=c[k>>2]|256;c[m>>2]=0;while(1){if((c[m>>2]|0)
x3e;>>0>=(c[j>>2]|0)>>>0){f=8;break}c[o>>2]=Gi(c[n>>2]|0,c[(c[g>
;>2]|0)+88>>2]|0,(c[h>>2]|0)+(c[m>>2]|0)|0,c[k>>2]|0)|0;if(c[o>>2]|0){f=8
;break}f=c[n>>2]|0;if(c[k>>2]&16|0)f=c[f+60>>2]|0;else f=c[f+56>>2]|0;c[(c[l>
x3e;2]|0)+(c[m>>2]<<2)>>2]=f;c[m>>2]=(c[m>>2]|0)+1}if((f|0)==8){i=p;return c[o
>>2]|0}return 0}function aj(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;v=i;i=i+80|0;k=v+64|0;l=v+60|0;d=v+56|0;g=v+52|0;n=v+48|0;e=v+44|0;h=v+40|0;j=v+36|0;f=v+32|0;m=v+28|0;p=v+24|0;s=v+20|0;o=v+
16|0;q=v+12|0;r=v+8|0;t=v+4|0;u=v;c[l>>2]=a;c[d>>2]=b;c[g>>2]=c[l>>2];do if(c[(c[c[l>
;>2]>>2]|0)+8>>2]&2|0){c[e>>2]=c[c[l>>2]>>2];c[h>>2]=c[(c[
e>>2]|0)+532>>2];if(Oa[c[(c[h>>2]|0)+148>>2]&63](c[e>>2]|0,c[d>>
;2]|0,j)|0){c[(c[g>>2]|0)+44>>2]=-1;break}c[k>>2]=bj(c[l>>2]|0,c[j>>2]|0)|0;u=
c[k>>2]|0;i=v;return u|0}while(0);Ed(c[c[l>>2]>>2]|0,c[d>>2]|0);c[n>>2]=Bi(c[g
>>2]|0)|0;a:do if(c[n>>2]|0){c[f>>2]=c[c[l>>2]>>2];c[m>>2]=c[(c[f>
;>2]|0)+692>>2];c[p>>2]=c[(c[l>>2]|0)+40>>2];c[s>>2]=c[(c[m>>2]|
0)+1324+64>>2];Za[c[(c[n>>2]|0)+4>>2]&31](c[c[p>>2]>>2]|0,c[(c[l>>
;2]|0)+12+4>>2]|0,c[(c[l>>2]|0)+12+8>>2]|0,0,0)|0;c[o>>2]=c[(c[m>>2]|0)+1892
x3e;>2];while(1){if((c[o>>2]|0)>>>0<=0)break a;c[q>>2]=c[(c[m>>2]|0)+1896
+((c[o>>2]|0)-1<<2)>>2];c[r>>2]=c[(c[q>>2]|0)+64>>2];d=c[(c[l>
x3e;2]|0)+12+4>>2]|0;if((c[s>>2]|0)!=(c[r>>2]|0)){c[t>>2]=xb(d,c[s>>2]|0,c[r
x3e;>2]|0)|0;c[u>>2]=xb(c[(c[l>>2]|0)+12+8>>2]|0,c[s>>2]|0,c[r>>2]|0)|0}else
{c[t>>2]=d;c[u>>2]=c[(c[l>>2]|0)+12+8>>2]}Za[c[(c[n>>2]|0)+4>>2]&
;31](c[(c[p>>2]|0)+4+((c[o>>2]|0)-1<<2)>>2]|0,c[t>>2]|0,c[u>>2]|0,0,
0)|0;c[o>>2]=(c[o>>2]|0)+-1}}while(0);c[k>>2]=0;u=c[k>>2]|0;i=v;return u|0}function bj(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;p=i;i=i+64|0;e=p+48|0;r=p+44|0;q=p+40|0;g=p+36|0;d=p
+32|0;f=p+28|0;j=p+24|0;m=p+20|0;h=p+16|0;k=p+12|0;l=p+8|0;n=p+4|0;o=p;c[e>>2]=a;c[r>>2]=b;c[q>>2]=
c[e>>2];c[(c[q>>2]|0)+44>>2]=c[r>>2];Cd(c[c[e>>2]>>2]|0,c[r>>
;2]|0);c[g>>2]=Bi(c[q>>2]|0)|0;if(!(c[g>>2]|0)){i=p;return 0}c[d>>2]=c[c[e>>2]
x3e;>2];c[f>>2]=c[(c[d>>2]|0)+692>>2];c[j>>2]=c[(c[e>>2]|0)+40>>
;2];c[m>>2]=c[(c[f>>2]|0)+1324+64>>2];Za[c[(c[g>>2]|0)+4>>2]&31](c[c[j>
;>2]>>2]|0,c[(c[e>>2]|0)+12+4>>2]|0,c[(c[e>>2]|0)+12+8>>2]|0,0,0)|0;c[h
x3e;>2]=c[(c[f>>2]|0)+1892>>2];while(1){if((c[h>>2]|0)>>>0<=0)break;c[k
x3e;>2]=c[(c[f>>2]|0)+1896+((c[h>>2]|0)-1<<2)>>2];c[l>>2]=c[(c[k>>
;2]|0)+64>>2];d=c[(c[e>>2]|0)+12+4>>2]|0;if((c[m>>2]|0)!=(c[l>>2]|0)){c[n>
;>2]=xb(d,c[m>>2]|0,c[l>>2]|0)|0;c[o>>2]=xb(c[(c[e>>2]|0)+12+8>>2]|0,c[m
x3e;>2]|0,c[l>>2]|0)|0}else{c[n>>2]=d;c[o>>2]=c[(c[e>>2]|0)+12+8>>2]}Za[c
[(c[g>>2]|0)+4>>2]&31](c[(c[j>>2]|0)+4+((c[h>>2]|0)-1<<2)>>2]|0
,c[n>>2]|0,c[o>>2]|0,0,0)|0;c[h>>2]=(c[h>>2]|0)+-1}i=p;return 0}function cj(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];i=d;return 0}function dj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;h=g+8|0;e=g+4|0;f=g;c[h>>2
]=a;c[e>>2]=b;c[f>>2]=c[(c[h>>2]|0)+16>>2];if((c[e>>2]|0)>>>0
x3e;=256){h=0;i=g;return h|0}h=d[(c[f>>2]|0)+(6+(c[e>>2]|0))>>0]|0;i=g;return h|0}function ej(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;l=i;i=i+32|0;m=l+20|0;e=l+16|0;j=l+12|0;f=l+8|0;h=l+4|0;g=l;c[m>>2]=a;
c[e>>2]=b;c[j>>2]=c[(c[m>>2]|0)+16>>2];c[f>>2]=c[c[e>>2]>>
2];c[h>>2]=0;c[g>>2]=0;c[j>>2]=(c[j>>2]|0)+6;do{m=(c[f>>2]|0)+1|0;c[f>>
;2]=m;if(m>>>0>=256){k=5;break}c[g>>2]=d[(c[j>>2]|0)+(c[f>>2]|0)>>0]}
while(!(c[g>>2]|0));if((k|0)==5){k=c[h>>2]|0;m=c[e>>2]|0;c[m>>2]=k;m=c[g>>2]|0
;i=l;return m|0}c[h>>2]=c[f>>2];k=c[h>>2]|0;m=c[e>>2]|0;c[m>>2]=k;m=c[g>
x3e;2]|0;i=l;return m|0}function fj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;e=k+20|0;f=k+16|0;j=k+12|0;l=k
+8|0;h=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[j>>2]=(c[e>>2]|0)+2;c[j>>2]=(c[j>
x3e;2]|0)+2;c[l>>2]=(((d[(c[j>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[j>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535;if((c[l>>2]|0)>>>0<262?1:((c[e>>
;2]|0)+(c[l>>2]|0)|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>
;>2]|0,8);if((c[(c[f>>2]|0)+8>>2]|0)>>>0<1){i=k;return 0}c[j>>2]=(c[e>
;>2]|0)+6;c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>=256)break;l=c[j>>2]|0;c[
j>>2]=l+1;c[g>>2]=d[l>>0];if((c[g>>2]|0)>>>0>=(c[(c[f>>2]|
0)+172>>2]|0)>>>0)sc(c[f>>2]|0,16);c[h>>2]=(c[h>>2]|0)+1}i=k;return 0}function
gj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>
;2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=0;c[c[f>>2]>>2]=(((
d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&65535)<<
;0)&65535;i=e;return 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,o=0,p=0,q=0,r=0;p=i;i=i+48|0;r=p+40
|0;f=p+36|0;q=p+32|0;m=p+28|0;o=p+24|0;l=p+20|0;j=p+16|0;n=p+12|0;g=p+8|0;h=p+4|0;k=p;c[r>>2]=b;c[f>>2]=e;c[
q>>2]=c[(c[r>>2]|0)+16>>2];c[m>>2]=0;c[o>>2]=ij(c[q>>2]|0,c[f>
x3e;2]|0)|0;if(!(c[o>>2]|0)){r=c[m>>2]|0;i=p;return r|0}c[l>>2]=c[o>>2];c[j>>2
]=c[f>>2]&255;c[l>>2]=(c[l>>2]|0)+2;c[n>>2]=((d[(c[l>>2]|0)+-2>>
;0]&65535)<<8|(d[(c[l>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[l>>2]=(
c[l>>2]|0)+2;c[g>>2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>>
2]|0)+-2+1>>0]&65535)<<0)&65535;c[l>>2]=(c[l>>2]|0)+2;c[h>>2]=((a[(c
[l>>2]|0)+-2>>0]<<16>>16<<8|d[(c[l>>2]|0)+-2+1>>0]<
x3c;0)&65535)<<16>>16;c[k>>2]=((d[c[l>>2]>>0]&65535)<<8|(d
[(c[l>>2]|0)+1>>0]&65535)<<0)&65535;c[j>>2]=(c[j>>2]|0)-(c[n>
x3e;2]|0);if(!(c[k>>2]|0?(c[j>>2]|0)>>>0<(c[g>>2]|0)>>>0:0)){r=
c[m>>2]|0;i=p;return r|0}c[l>>2]=(c[l>>2]|0)+((c[k>>2]|0)+(c[j>>2]<<
1));c[j>>2]=((d[c[l>>2]>>0]&65535)<<8|(d[(c[l>>2]|0)+1>>0]&
;65535)<<0)&65535;if(!(c[j>>2]|0)){r=c[m>>2]|0;i=p;return r|0}c[m>>2]=(c[j>>
;2]|0)+(c[h>>2]|0)&65535;r=c[m>>2]|0;i=p;return r|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,m=0,n=0;n=i;i=i+32|0;e=n+28|0;f=n+24|0;k=n+20|0;h=n+16|0;g=n+12|0;j=n+8|0;m=n+4|0;l=n;c[e>>2]=a;c[f>>
;2]=b;c[k>>2]=0;if((c[f>>2]|0)>>>0>=65536){a=c[k>>2]|0;i=n;return a|0}c[h>
;>2]=c[f>>2]&255;c[g>>2]=(c[f>>2]|0)>>>8;c[j>>2]=(c[e>>
;2]|0)+6;c[m>>2]=(c[e>>2]|0)+518;if(!(c[g>>2]|0)){c[l>>2]=c[m>>2];c[j>>
;2]=(c[j>>2]|0)+(c[h>>2]<<1);if((((d[c[j>>2]>>0]|0)&65535)<<8|((
d[(c[j>>2]|0)+1>>0]|0)&65535)<<0)&65535|0){a=c[k>>2]|0;i=n;return a|0}}else{c[
j>>2]=(c[j>>2]|0)+(c[g>>2]<<1);c[l>>2]=(c[m>>2]|0)+((((d[c[j>
x3e;2]>>0]|0)&65535)<<8|((d[(c[j>>2]|0)+1>>0]|0)&65535)<<0)&65535
&-8);if((c[l>>2]|0)==(c[m>>2]|0)){a=c[k>>2]|0;i=n;return a|0}}c[k>>2]=c[l>>
;2];a=c[k>>2]|0;i=n;return a|0}function jj(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;v=i;i=i+64|0;w=v+56|0;f=v+52|0;t=v+48|0;l=v+44|0;q=v+40|0;h=v+36|0;s=v+32|0;o=v+28|0;r=v+24|0;j=v+20|0;k=v+16|0;n=
v+12|0;g=v+8|0;p=v+4|0;m=v;c[w>>2]=b;c[f>>2]=e;c[t>>2]=c[(c[w>>2]|0)+16>>2];c[
l>>2]=0;c[q>>2]=0;c[h>>2]=(c[c[f>>2]>>2]|0)+1;a:while(1){if((c[h>>2]|
0)>>>0>=65536){u=15;break}c[s>>2]=ij(c[t>>2]|0,c[h>>2]|0)|0;b:do if(c[s>
x3e;2]|0?(c[o>>2]=c[s>>2],c[o>>2]=(c[o>>2]|0)+2,c[r>>2]=((d[(c[o>>2]|
0)+-2>>0]&65535)<<8|(d[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535,c[
o>>2]=(c[o>>2]|0)+2,c[j>>2]=((d[(c[o>>2]|0)+-2>>0]&65535)<<8|(d
[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535,c[o>>2]=(c[o>>2]|0)+2,c[k>
;>2]=((a[(c[o>>2]|0)+-2>>0]<<16>>16<<8|d[(c[o>>2]|0)+-2+1>
x3e;0]<<0)&65535)<<16>>16,c[n>>2]=((d[c[o>>2]>>0]&65535)
x3c;<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535,c[g>>2]=c[h>>2]&
;255,c[n>>2]|0):0){if((c[g>>2]|0)>>>0<(c[r>>2]|0)>>>0){c[g>
;>2]=c[r>>2];c[p>>2]=0}else c[p>>2]=(c[g>>2]|0)-(c[r>>2]|0);c[o>>
;2]=(c[o>>2]|0)+((c[n>>2]|0)+(c[p>>2]<<1));c[h>>2]=(c[h>>2]&-256
)+(c[g>>2]|0);while(1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break
b;c[o>>2]=(c[o>>2]|0)+2;c[m>>2]=((d[(c[o>>2]|0)+-2>>0]&65535)<<
;8|(d[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535;if(c[m>>2]|0?(c[l>>2]=(c
[m>>2]|0)+(c[k>>2]|0)&65535,c[l>>2]|0):0)break a;c[p>>2]=(c[p>>2]|0)+1;c[
h>>2]=(c[h>>2]|0)+1}}while(0);c[h>>2]=(c[h>>2]&-256)+256}if((u|0)==15){u=c[q>
x3e;2]|0;w=c[f>>2]|0;c[w>>2]=u;w=c[l>>2]|0;i=v;return w|0}c[q>>2]=c[h>>2];u=c[
q>>2]|0;w=c[f>>2]|0;c[w>>2]=u;w=c[l>>2]|0;i=v;return w|0}function kj(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;x=i;i=i+80|0;g=x+64|0;h=x+60|0;v=x+56|0;q=x+52|0;t=x+48
|0;s=x+44|0;f=x+40|0;w=x+36|0;m=x+32|0;o=x+28|0;l=x+24|0;j=x+20|0;u=x+16|0;k=x+12|0;n=x+8|0;r=x+4|0;p=x;c[g>>2]=b;c[h
x3e;>2]=e;c[v>>2]=(c[g>>2]|0)+2;c[q>>2]=((d[c[v>>2]>>0]&65535)<
x3c;8|(d[(c[v>>2]|0)+1>>0]&65535)<<0)&65535;if((c[q>>2]|0)>>>0
x3c;518?1:((c[g>>2]|0)+(c[q>>2]|0)|0)>>>0>(c[(c[h>>2]|0)+4>>2]|0)>
;>>0)sc(c[h>>2]|0,8);c[f>>2]=(c[g>>2]|0)+6;c[v>>2]=c[f>>2];c[s>
x3e;2]=0;c[t>>2]=0;while(1){f=c[v>>2]|0;if((c[t>>2]|0)>>>0>=256)break;c[v>
;>2]=f+2;c[o>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+
1>>0]&65535)<<0)&65535;if((c[(c[h>>2]|0)+8>>2]|0)>>>0>=2?c
[o>>2]&7|0:0)sc(c[h>>2]|0,8);c[o>>2]=(c[o>>2]|0)>>>3;if((c[o>
x3e;2]|0)>>>0>(c[s>>2]|0)>>>0)c[s>>2]=c[o>>2];c[t>>2]=(
c[t>>2]|0)+1}c[w>>2]=f;c[m>>2]=(c[w>>2]|0)+((c[s>>2]|0)+1<<3);if((c[
m>>2]|0)>>>0>(c[(c[h>>2]|0)+4>>2]|0)>>>0)sc(c[h>>2]|0
,8);c[t>>2]=0;while(1){if((c[t>>2]|0)>>>0>(c[s>>2]|0)>>>0)break
;c[v>>2]=(c[v>>2]|0)+2;c[l>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8
|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[v>>2]=(c[v>>2]|0)+2;c[j
x3e;>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>>0]&
;65535)<<0)&65535;c[v>>2]=(c[v>>2]|0)+2;c[k>>2]=((a[(c[v>>2]|0)+-2>
x3e;0]<<16>>16<<8|d[(c[v>>2]|0)+-2+1>>0]<<0)&65535)<<
16>>16;c[v>>2]=(c[v>>2]|0)+2;c[u>>2]=((d[(c[v>>2]|0)+-2>>0]&65535
)<<8|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0)&65535;a:do if(c[j>>2]|0){do
if((c[(c[h>>2]|0)+8>>2]|0)>>>0>=2){if((c[l>>2]|0)>>>0<256?((
c[l>>2]|0)+(c[j>>2]|0)|0)>>>0<=256:0)break;sc(c[h>>2]|0,8)}while(0);if(c[u>
;>2]|0){c[n>>2]=(c[v>>2]|0)+-2+(c[u>>2]|0);if(!((c[n>>2]|0)>>>0>
;=(c[m>>2]|0)>>>0?((c[n>>2]|0)+(c[j>>2]<<1)|0)>>>0<=((
c[g>>2]|0)+(c[q>>2]|0)|0)>>>0:0))sc(c[h>>2]|0,9);if((c[(c[h>>2]|0)+8>
;>2]|0)>>>0>=1){c[r>>2]=(c[v>>2]|0)+(c[j>>2]<<1);while(1){if((c
[v>>2]|0)>>>0>=(c[r>>2]|0)>>>0)break a;c[v>>2]=(c[v>>
2]|0)+2;c[p>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>
;>0]&65535)<<0)&65535;if(!(c[p>>2]|0))continue;c[p>>2]=(c[p>>2]|0)+(c[k
x3e;>2]|0)&65535;if((c[p>>2]|0)>>>0<(c[(c[h>>2]|0)+172>>2]|0)>
x3e;>0)continue;sc(c[h>>2]|0,16)}}}}while(0);c[t>>2]=(c[t>>2]|0)+1}i=x;return 0}function lj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(
c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=2;c[c[f>>2]>>2]=(((d[c
[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&65535)<<0
)&65535;i=e;return 0}function mj(a,b){a=a|0;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[f>>2]=a;
c[h>>2]=b;c[(c[f>>2]|0)+16>>2]=c[h>>2];c[g>>2]=(c[h>>2]|0)+6;c[(c[f
x3e;>2]|0)+32>>2]=((((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1
x3e;>0]|0)&65535)<<0)&65535)>>1;c[(c[f>>2]|0)+24>>2]=-1;c[(c[f>>
;2]|0)+28>>2]=0;i=e;return 0}function nj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>
;>2]=a;c[f>>2]=b;do if((c[f>>2]|0)>>>0<65536){b=c[e>>2]|0;if(c[(c[e>
x3e;2]|0)+20>>2]&1|0){c[d>>2]=oj(b,f,0)|0;break}else{c[d>>2]=pj(b,f,0)|0;break}}else c[d>
;>2]=0;while(0);i=g;return c[d>>2]|0}function oj(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;z=i;i=i+80|0;g=z+60|0;h=z+56|0;j=z+52|0;k=z+64|0;t=z+48|0;x=z+44|0;n=z+40|0;u=z+36|0;m=
z+32|0;q=z+28|0;s=z+24|0;l=z+20|0;p=z+16|0;v=z+12|0;w=z+8|0;o=z+4|0;r=z;c[h>>2]=b;c[j>>2]=e;a[k>>0
]=f;c[l>>2]=c[c[j>>2]>>2];c[p>>2]=0;c[v>>2]=(c[(c[h>>2]|0)+16>
x3e;2]|0)+6;c[t>>2]=((d[c[v>>2]>>0]&65535)<<8|(d[(c[v>>2]|0)+1>>
;0]&65535)<<0)&65535&-2;c[s>>2]=(c[t>>2]|0)>>>1;if(!(c[s>>
2]|0)){c[g>>2]=0;y=c[g>>2]|0;i=z;return y|0}if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1
;while(1){if((c[l>>2]|0)>>>0>65535)break;c[v>>2]=(c[(c[h>>2]|0)+16>>
2]|0)+14;c[w>>2]=(c[(c[h>>2]|0)+16>>2]|0)+16+(c[t>>2]|0);c[q>>2]=0;while(1){if
((c[q>>2]|0)>>>0>=(c[s>>2]|0)>>>0)break;c[v>>2]=(c[v>>
;2]|0)+2;c[n>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>
;>0]&65535)<<0)&65535;c[w>>2]=(c[w>>2]|0)+2;c[x>>2]=((d[(c[w>>2
]|0)+-2>>0]&65535)<<8|(d[(c[w>>2]|0)+-2+1>>0]&65535)<<0)&65535;
if((c[l>>2]|0)>>>0>=(c[x>>2]|0)>>>0?(c[l>>2]|0)>>>
;0<=(c[n>>2]|0)>>>0:0){c[v>>2]=(c[w>>2]|0)+-2+(c[t>>2]|0);c[m>
x3e;2]=((a[c[v>>2]>>0]<<16>>16<<8|d[(c[v>>2]|0)+1>>0]<
;<0)&65535)<<16>>16;c[v>>2]=(c[v>>2]|0)+(c[t>>2]|0);c[u>>2
]=((d[c[v>>2]>>0]&65535)<<8|(d[(c[v>>2]|0)+1>>0]&65535)<<0
)&65535;if((((c[x>>2]|0)==65535?(c[q>>2]|0)>>>0>=((c[s>>2]|0)-1|0)>
x3e;>0:0)&(c[n>>2]|0)==65535?(c[o>>2]=c[c[h>>2]>>2],c[r>>2]=(c[(c[o
x3e;>2]|0)+500>>2]|0)+(c[(c[o>>2]|0)+504>>2]|0),c[u>>2]|0):0)?((c[v>>2]|0
)+(c[u>>2]|0)+2|0)>>>0>(c[r>>2]|0)>>>0:0){c[m>>2]=1;c[u>
x3e;2]=0}if((c[u>>2]|0)!=65535){y=15;break}}c[q>>2]=(c[q>>2]|0)+1}do if((y|0)==15){y=0;if(!(c[u>
;>2]|0)){c[p>>2]=(c[l>>2]|0)+(c[m>>2]|0)&65535;break}c[v>>2]=(c[v>>2
]|0)+((c[u>>2]|0)+((c[l>>2]|0)-(c[x>>2]|0)<<1));c[p>>2]=((d[c[v>>2]
x3e;>0]&65535)<<8|(d[(c[v>>2]|0)+1>>0]&65535)<<0)&65535;if(c[p>
x3e;2]|0)c[p>>2]=(c[p>>2]|0)+(c[m>>2]|0)&65535}while(0);if((a[k>>0]|0)==0|(c[p>
;>2]|0)!=0)break;c[l>>2]=(c[l>>2]|0)+1}if((d[k>>0]|0)!=0&(c[p>>2]|0)!=0)c[c[j
x3e;>2]>>2]=c[l>>2];c[g>>2]=c[p>>2];y=c[g>>2]|0;i=z;return y|0}function pj
(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,D=0,E=0,F=
0,G=0;G=i;i=i+96|0;g=G+88|0;h=G+84|0;j=G+80|0;k=G+92|0;z=G+76|0;E=G+72|0;o=G+68|0;A=G+64|0;n=G+60|0;t=G+56|0;v=G+52|0;u=G+48|0;y
=G+44|0;l=G+40|0;q=G+36|0;C=G+32|0;p=G+28|0;s=G+24|0;r=G+20|0;D=G+16|0;B=G+12|0;w=G+8|0;x=G+4|0;m=G;c[h>>2]=b;c[j>
;>2]=e;a[k>>0]=f;c[l>>2]=c[c[j>>2]>>2];c[q>>2]=0;c[C>>2]=(c[(c[
h>>2]|0)+16>>2]|0)+6;c[z>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C
x3e;>2]|0)+1>>0]&65535)<<0)&65535&-2;if(!(c[z>>2]|0)){c[g>>2]=0;F=c[
g>>2]|0;i=G;return F|0}c[y>>2]=(c[z>>2]|0)>>>1;c[u>>2]=c[y>>2];
c[o>>2]=65535;if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1;c[v>>2]=0;c[t>>2]=c
[y>>2];while(1){if((c[v>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[u
x3e;>2]=((c[v>>2]|0)+(c[t>>2]|0)|0)>>>1;c[C>>2]=(c[(c[h>>2]|0)+16>
;>2]|0)+14+(c[u>>2]<<1);c[o>>2]=((d[c[C>>2]>>0]&65535)<<8|(
d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(2+(c[z>
;>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>
;0]&65535)<<0)&65535;if((c[l>>2]|0)>>>0<(c[E>>2]|0)>>>
;0){c[t>>2]=c[u>>2];continue}if((c[l>>2]|0)>>>0<=(c[o>>2]|0)>
x3e;>0){F=11;break}c[v>>2]=(c[u>>2]|0)+1}do if((F|0)==11){c[C>>2]=(c[C>>2]|0)+(c[z
x3e;>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>>
;2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>
x3e;2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0
]&65535)<<0)&65535;if((((c[E>>2]|0)==65535?(c[u>>2]|0)>>>0>=((c[y>
;>2]|0)-1|0)>>>0:0)&(c[o>>2]|0)==65535?(c[p>>2]=c[c[h>>2]>>2],c
[s>>2]=(c[(c[p>>2]|0)+500>>2]|0)+(c[(c[p>>2]|0)+504>>2]|0),c[A>>2]|0
):0)?((c[C>>2]|0)+(c[A>>2]|0)+2|0)>>>0>(c[s>>2]|0)>>>0:0){c[n
x3e;>2]=1;c[A>>2]=0}if(c[(c[h>>2]|0)+20>>2]&2|0){c[t>>2]=c[u>>2];if((
c[A>>2]|0)==65535)c[u>>2]=(c[t>>2]|0)+1;c[r>>2]=c[t>>2];while(1){if((c[r>
x3e;2]|0)>>>0<=0)break;c[B>>2]=c[C>>2];c[C>>2]=(c[(c[h>>2]|0)+16>
;>2]|0)+14+((c[r>>2]|0)-1<<1);c[D>>2]=((d[c[C>>2]>>0]&65535)<
x3c;8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[l>>2]|0)>>>0
x3e;(c[D>>2]|0)>>>0){F=21;break}c[o>>2]=c[D>>2];c[C>>2]=(c[C>>2
]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>
;2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>
;>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>>2]|0)+1>>0]
x3c;<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>
;2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<
;0)&65535;if((c[A>>2]|0)!=65535)c[u>>2]=(c[r>>2]|0)-1;c[r>>2]=(c[r>>2]|0)+-
1}if((F|0)==21)c[C>>2]=c[B>>2];if((c[u>>2]|0)==((c[t>>2]|0)+1|0)){if((c[r>>2]|
0)!=(c[t>>2]|0)){c[C>>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[t>>2]<<1);c[
o>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535
)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>
;2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>
;>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>
x3e;16<<8|d[(c[C>>2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>
;2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(
d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535}c[u>>2]=c[t>>2];c[r>>
2]=(c[t>>2]|0)+1;while(1){if((c[r>>2]|0)>>>0>=(c[y>>2]|0)>>>0)break
;c[C>>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[r>>2]<<1);c[w>>2]=((d[c[C>
;>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c
[C>>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[x>>2]=((d[c[C>>2]>>0]&65535
)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[l>>2]|0)>>
;>0<(c[x>>2]|0)>>>0)break;c[o>>2]=c[w>>2];c[E>>2]=c[x>>
;2];c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<
;16>>16<<8|d[(c[C>>2]|0)+1>>0]<<0)&65535)<<16>>16;c[C
>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[A>>2]|0)!=65535)c[u>
x3e;2]=c[r>>2];c[r>>2]=(c[r>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+-1;if((c[u>>
;2]|0)==(c[t>>2]|0)){c[u>>2]=c[r>>2];break}}if((c[u>>2]|0)!=(c[r>>2]|0)){c[C
x3e;>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[u>>2]<<1);c[o>>2]=((d[c[C>>
;2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>
;>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(
c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>
x3e;2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>
;>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>
;0]&65535)<<0)&65535}}else if((c[A>>2]|0)==65535)break;if(!(c[A>>2]|0)){c[q>>2
]=(c[l>>2]|0)+(c[n>>2]|0)&65535;break}c[C>>2]=(c[C>>2]|0)+((c[A>>2]|0)+((
c[l>>2]|0)-(c[E>>2]|0)<<1));c[q>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if(c[q>>2]|0)c[q>>2]=(
c[q>>2]|0)+(c[n>>2]|0)&65535}while(0);do if(a[k>>0]|0){c[m>>2]=c[h>>2];if
((c[l>>2]|0)>>>0>(c[o>>2]|0)>>>0?(c[u>>2]=(c[u>>2]|0)+
1,(c[u>>2]|0)==(c[y>>2]|0)):0){c[g>>2]=0;F=c[g>>2]|0;i=G;return F|0}if(qj(c[m>>
;2]|0,c[u>>2]|0)|0){if(!(c[q>>2]|0))break;c[c[j>>2]>>2]=c[l>>2];break}c[(c[m
x3e;>2]|0)+24>>2]=c[l>>2];if(c[q>>2]|0)c[(c[m>>2]|0)+28>>2]=c[q>>
;2];else{c[(c[m>>2]|0)+24>>2]=c[l>>2];rj(c[m>>2]|0);c[q>>2]=c[(c[m>>
2]|0)+28>>2]}if(c[q>>2]|0)c[c[j>>2]>>2]=c[(c[m>>2]|0)+24>>2]}while(0
);c[g>>2]=c[q>>2];F=c[g>>2]|0;i=G;return F|0}function qj(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;p=i;i=i+48|0;k=p+32|0;l=p+28|0;m=p+24|0;j=p+20|0;o=p+16|0;h=p+12|0;n=p+8|0;f=p+4|0;g=p;c[l>>2]=b;c
[m>>2]=e;c[j>>2]=c[(c[l>>2]|0)+16>>2];c[h>>2]=c[(c[l>>2]|0)+32>
x3e;2];while(1){if((c[m>>2]|0)>>>0>=(c[h>>2]|0)>>>0){b=12;break}c[o>
x3e;2]=(c[j>>2]|0)+14+(c[m>>2]<<1);c[(c[l>>2]|0)+44>>2]=((d[c[o>>2]
x3e;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;c[o>>
;2]=(c[o>>2]|0)+(2+(c[h>>2]<<1));c[(c[l>>2]|0)+40>>2]=((d[c[o>>2]>
;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;c[o>>
2]=(c[o>>2]|0)+(c[h>>2]<<1);c[(c[l>>2]|0)+48>>2]=((a[c[o>>2]>
x3e;0]<<16>>16<<8|d[(c[o>>2]|0)+1>>0]<<0)&65535)<<16
x3e;>16;c[o>>2]=(c[o>>2]|0)+(c[h>>2]<<1);c[n>>2]=((d[c[o>>2]>
;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;if(((((c[m>
;>2]|0)>>>0>=((c[h>>2]|0)-1|0)>>>0?(c[(c[l>>2]|0)+40>>2]|0
)==65535:0)?(c[(c[l>>2]|0)+44>>2]|0)==65535:0)?(c[f>>2]=c[c[l>>2]>>2],c[g>
;>2]=(c[(c[f>>2]|0)+500>>2]|0)+(c[(c[f>>2]|0)+504>>2]|0),c[n>>2]|0):0)?((
c[o>>2]|0)+(c[n>>2]|0)+2|0)>>>0>(c[g>>2]|0)>>>0:0){c[(c[l>
x3e;2]|0)+48>>2]=1;c[n>>2]=0}if((c[n>>2]|0)!=65535){b=10;break}c[m>>2]=(c[m>>2
]|0)+1}if((b|0)==10){c[(c[l>>2]|0)+52>>2]=c[n>>2]|0?(c[o>>2]|0)+(c[n>>2]|0)|0:
0;c[(c[l>>2]|0)+36>>2]=c[m>>2];c[k>>2]=0;o=c[k>>2]|0;i=p;return o|0}else if((b
|0)==12){c[k>>2]=-1;o=c[k>>2]|0;i=p;return o|0}return 0}function rj(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;n=i;i=i+32|0;j=n+28|0;k=n+24|0;h=n+20|0;f=n+16|0;e=n+12|0;g=n+8|0;l=n+4|0;m=n;c[j>>2]=a;a:do if((c[(c[j
x3e;>2]|0)+24>>2]|0)>>>0<65535){c[k>>2]=(c[(c[j>>2]|0)+24>>2]|0
)+1;if((c[k>>2]|0)>>>0<(c[(c[j>>2]|0)+40>>2]|0)>>>0)c[k>
x3e;2]=c[(c[j>>2]|0)+40>>2];b:while(1){c[h>>2]=c[(c[j>>2]|0)+52>>2];c[f>
x3e;2]=c[(c[j>>2]|0)+44>>2];c[e>>2]=c[(c[j>>2]|0)+48>>2];c:do if((c[k>>
;2]|0)>>>0<=(c[f>>2]|0)>>>0){if(!(c[h>>2]|0))while(1){c[m>>2]=(
c[k>>2]|0)+(c[e>>2]|0)&65535;b=c[k>>2]|0;if(c[m>>2]|0){a=12;break b}b=b+1|0;c[k>
;>2]=b;if(b>>>0>(c[f>>2]|0)>>>0)break c}c[g>>2]=(c[h>>2]|0
)+((c[k>>2]|0)-(c[(c[j>>2]|0)+40>>2]|0)<<1);do{c[g>>2]=(c[g>>2]|0)+2
;c[l>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+-2+1>
x3e;0]|0)&65535)<<0)&65535;if(c[l>>2]|0?(c[l>>2]=(c[l>>2]|0)+(c[e>>2
]|0)&65535,c[l>>2]|0):0){a=9;break b}b=(c[k>>2]|0)+1|0;c[k>>2]=b}while(b>>>0
x3c;=(c[f>>2]|0)>>>0)}while(0);if((qj(c[j>>2]|0,(c[(c[j>>2]|0)+36>>2]|0)+
1|0)|0)<0)break a;if((c[k>>2]|0)>>>0>=(c[(c[j>>2]|0)+40>>2]|0)>>
;>0)continue;c[k>>2]=c[(c[j>>2]|0)+40>>2]}if((a|0)==9){c[(c[j>>2]|0)+24>>
2]=c[k>>2];c[(c[j>>2]|0)+28>>2]=c[l>>2];i=n;return}else if((a|0)==12){c[(c[j>>
2]|0)+24>>2]=b;c[(c[j>>2]|0)+28>>2]=c[m>>2];i=n;return}}while(0);c[(c[j>>2]|0)+
24>>2]=-1;c[(c[j>>2]|0)+28>>2]=0;i=n;return}function sj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=b;if((c[c[f>>2]>>
;2]|0)>>>0>=65535){c[d>>2]=0;h=c[d>>2]|0;i=j;return h|0}a=c[e>>2]|0;do if(!(c[(
c[e>>2]|0)+20>>2]&1|0)){c[g>>2]=a;if((c[c[f>>2]>>2]|0)!=(c[(c[g>>
;2]|0)+24>>2]|0)){c[h>>2]=pj(c[e>>2]|0,c[f>>2]|0,1)|0;break}rj(c[g>>2]|0);c[h
x3e;>2]=c[(c[g>>2]|0)+28>>2];if(c[h>>2]|0)c[c[f>>2]>>2]=c[(c[g>>
;2]|0)+24>>2]}else c[h>>2]=oj(a,c[f>>2]|0,1)|0;while(0);c[d>>2]=c[h>>2];h=c[d
x3e;>2]|0;i=j;return h|0}function tj(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,D=0,E=0,F=0,G=0,H=0;H=i;i=i+112|0;n=H+104|0;o=H+100|0;B=H+96|0;x=H+92|0;g=H+88|0;m=H+84|0;j=H+80|0;f=
H+76|0;s=H+72|0;z=H+68|0;r=H+64|0;l=H+60|0;h=H+56|0;k=H+52|0;G=H+48|0;q=H+44|0;A=H+40|0;y=H+36|0;w=H+32|0;v=H+28|0;p=H+24|0;F=H+
20|0;D=H+16|0;C=H+12|0;E=H+8|0;t=H+4|0;u=H;c[n>>2]=b;c[o>>2]=e;c[B>>2]=(c[n>>2]|0)+2;c[B
>>2]=(c[B>>2]|0)+2;c[x>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<<8|(d[(
c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[r>>2]=0;if((c[x>>2]|0)>
x3e;>0<16)sc(c[o>>2]|0,8);if(((c[n>>2]|0)+(c[x>>2]|0)|0)>>>0>(c[(c[o
>>2]|0)+4>>2]|0)>>>0){if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=
1)sc(c[o>>2]|0,8);c[x>>2]=(c[(c[o>>2]|0)+4>>2]|0)-(c[n>>2]|0)}c[B>>2
]=(c[n>>2]|0)+6;c[B>>2]=(c[B>>2]|0)+2;c[z>>2]=((d[(c[B>>2]|0)+-2>>0]
x26;65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if((c[(c[o>>2
]|0)+8>>2]|0)>>>0>=2?c[z>>2]&1|0:0)sc(c[o>>2]|0,8);c[z>>2]=((c[
z>>2]|0)>>>0)/2|0;if((c[x>>2]|0)>>>0<(16+(c[z>>2]<<1
x3c;<2)|0)>>>0)sc(c[o>>2]|0,8);do if((c[(c[o>>2]|0)+8>>2]|0)>>>
0>=2){c[B>>2]=(c[B>>2]|0)+2;c[l>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<
;<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[B>>2]=(c[B>>2]|0
)+2;c[h>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<<8|(d[(c[B>>2]|0)+-2+1>>
;0]&65535)<<0)&65535;c[B>>2]=(c[B>>2]|0)+2;c[k>>2]=((d[(c[B>>2]|0)+-
2>>0]&65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if((c[
l>>2]|c[k>>2])&1|0)sc(c[o>>2]|0,8);c[l>>2]=((c[l>>2]|0)>>>
0)/2|0;c[k>>2]=((c[k>>2]|0)>>>0)/2|0;if((((c[l>>2]|0)>>>0<=(c[z
>>2]|0)>>>0?c[l>>2]<<1>>>0>=(c[z>>2]|0)>>
x3e;0:0)?((c[l>>2]|0)+(c[k>>2]|0)|0)==(c[z>>2]|0):0)?(c[l>>2]|0)==(1<<c[h>
;>2]|0):0)break;sc(c[o>>2]|0,8)}while(0);c[g>>2]=(c[n>>2]|0)+14;c[m>>2]=(c[n>
x3e;2]|0)+16+(c[z>>2]<<1);c[f>>2]=(c[m>>2]|0)+(c[z>>2]<<1);c[j>
x3e;2]=(c[f>>2]|0)+(c[z>>2]<<1);c[s>>2]=(c[j>>2]|0)+(c[z>>2]<
x3c;1);if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=2?(c[B>>2]=(c[g>>2]|0)+((c[z
x3e;>2]|0)-1<<1),(((d[c[B>>2]>>0]&65535)<<8|(d[(c[B>>2]|0)+1>
x3e;0]&65535)<<0)&65535|0)!=65535):0)sc(c[o>>2]|0,8);c[w>>2]=0;c[v>>2]=0;c[F
x3e;>2]=c[m>>2];c[D>>2]=c[g>>2];c[C>>2]=c[f>>2];c[E>>2]=c[j>
;>2];c[y>>2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[z>>2]|0)>>>
0)break;c[B>>2]=c[E>>2];c[F>>2]=(c[F>>2]|0)+2;c[G>>2]=((d[(c[F>>2]|0
)+-2>>0]&65535)<<8|(d[(c[F>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[D
>>2]=(c[D>>2]|0)+2;c[q>>2]=((d[(c[D>>2]|0)+-2>>0]&65535)<<8|(d[(
c[D>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+2;c[p>
x3e;2]=((a[(c[C>>2]|0)+-2>>0]<<16>>16<<8|d[(c[C>>2]|0)+-2+1>>
;0]<<0)&65535)<<16>>16;c[E>>2]=(c[E>>2]|0)+2;c[A>>2]=((d[(c[E
x3e;>2]|0)+-2>>0]&65535)<<8|(d[(c[E>>2]|0)+-2+1>>0]&65535)<<0)
x26;65535;if((c[G>>2]|0)>>>0>(c[q>>2]|0)>>>0)sc(c[o>>2]|0,8);do
if((c[y>>2]|0)>>>0>0?(c[G>>2]|0)>>>0<=(c[v>>2]|0)>
x3e;>0:0){if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=1){sc(c[o>>2]|0,8);break}if((c[
w>>2]|0)>>>0<=(c[G>>2]|0)>>>0?(c[v>>2]|0)>>>0<
;=(c[q>>2]|0)>>>0:0){c[r>>2]=c[r>>2]|2;break}c[r>>2]=c[r>>2]|1}
while(0);f=c[A>>2]|0;a:do if((c[A>>2]|0)!=0&(c[A>>2]|0)!=65535){c[B>>2]=(c[B>
x3e;2]|0)+f;do if((c[(c[o>>2]|0)+8>>2]|0)>>>0<1){if(!(((c[G>>2]|0)==65535?(c[y
>>2]|0)==((c[z>>2]|0)-1|0):0)&(c[q>>2]|0)==65535)){if((c[B>>2]|0)>>>
0>=(c[s>>2]|0)>>>0?((c[B>>2]|0)+((c[q>>2]|0)-(c[G>>2]|0)+1<<
;1)|0)>>>0<=(c[(c[o>>2]|0)+4>>2]|0)>>>0:0)break;sc(c[o>>2]|0,8)}}
else{if((c[B>>2]|0)>>>0>=(c[s>>2]|0)>>>0?((c[B>>2]|0)+((c[q>
;>2]|0)-(c[G>>2]|0)+1<<1)|0)>>>0<=((c[n>>2]|0)+(c[x>>2]|0)|0)
x3e;>>0:0)break;sc(c[o>>2]|0,8)}while(0);if((c[(c[o>>2]|0)+8>>2]|0)>>>0
x3e;=1){c[t>>2]=c[G>>2];while(1){if((c[t>>2]|0)>>>0>=(c[q>>2]|0)>
;>>0)break a;c[B>>2]=(c[B>>2]|0)+2;c[u>>2]=((d[(c[B>>2]|0)+-2>>0]&
;65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if(c[u>>2]|0?(c[
u>>2]=(c[u>>2]|0)+(c[p>>2]|0)&65535,(c[u>>2]|0)>>>0>=(c[(c[o>
;>2]|0)+172>>2]|0)>>>0):0)sc(c[o>>2]|0,16);c[t>>2]=(c[t>>2]|0)+1}}}else
if((f|0)==65535){if((c[(c[o>>2]|0)+8>>2]|0)>>>0<2?((c[G>>2]|0)==65535?(c[y>
;>2]|0)==((c[z>>2]|0)-1|0):0)&(c[q>>2]|0)==65535:0)break;sc(c[o>>2]|0,8)}while(0);c[w>
;>2]=c[G>>2];c[v>>2]=c[q>>2];c[y>>2]=(c[y>>2]|0)+1}i=H;return c[r>
x3e;2]|0}function uj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=
b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=4;c[c[f>>2]
x3e;>2]=(((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&
65535)<<0)&65535;i=e;return 0}function vj(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;h=i;i=i+32|0;n
=h+28|0;l=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;k=h+8|0;j=h+4|0;e=h;c[n>>2]=a;c[l>>2]=b;c[m>>2]=c[(c[n
>>2]|0)+16>>2];c[g>>2]=0;c[f>>2]=(c[m>>2]|0)+6;c[f>>2]=(c[f>>
;2]|0)+2;c[k>>2]=(((d[(c[f>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+-2+
1>>0]|0)&65535)<<0)&65535;c[f>>2]=(c[f>>2]|0)+2;c[j>>2]=(((d[(c[f>
;>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+-2+1>>0]|0)&65535)<<
;0)&65535;c[e>>2]=(c[l>>2]|0)-(c[k>>2]|0);if((c[e>>2]|0)>>>0>=(
c[j>>2]|0)>>>0){n=c[g>>2]|0;i=h;return n|0}c[f>>2]=(c[f>>2]|0)+(c[e>
x3e;2]<<1);c[g>>2]=(((d[c[f>>2]>>0]|0)&65535)<<8|((d[(c[f>>2]|0
)+1>>0]|0)&65535)<<0)&65535;n=c[g>>2]|0;i=h;return n|0}function wj(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;o=i;i=i+48|0;q=o+36|0;f=o+32|0;p=o+28|0;m=o+24|0;g=o+20|0;j=o+16|0;l=o+12|0;e=o+
8|0;h=o+4|0;k=o;c[q>>2]=a;c[f>>2]=b;c[p>>2]=c[(c[q>>2]|0)+16>>2];c[m>>
;2]=0;c[g>>2]=(c[c[f>>2]>>2]|0)+1;c[j>>2]=0;c[l>>2]=(c[p>>2]|0)+6;c[
l>>2]=(c[l>>2]|0)+2;c[e>>2]=(((d[(c[l>>2]|0)+-2>>0]|0)&65535)<<
8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[l>>2]=(c[l>>2]|0)+2
;c[h>>2]=(((d[(c[l>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>
x3e;0]|0)&65535)<<0)&65535;if((c[g>>2]|0)>>>0>=65536){p=c[m>>2]|0;q=
c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}if((c[g>>2]|0)>>>0<(c
[e>>2]|0)>>>0)c[g>>2]=c[e>>2];c[k>>2]=(c[g>>2]|0)-(c[e>>
;2]|0);c[l>>2]=(c[l>>2]|0)+(c[k>>2]<<1);while(1){if((c[k>>2]|0)>>>
;0>=(c[h>>2]|0)>>>0){n=9;break}c[l>>2]=(c[l>>2]|0)+2;c[j>>2]=(((d[(c
[l>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<
;<0)&65535;a=c[g>>2]|0;if(c[j>>2]|0)break;c[g>>2]=a+1;c[k>>2]=(c[k>>
2]|0)+1}if((n|0)==9){p=c[m>>2]|0;q=c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}c[m>
;>2]=a;p=c[m>>2]|0;q=c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}function xj(a,b
){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;k=l+12|0;j=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[
f>>2]=b;if(((c[e>>2]|0)+10|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>
;>0)sc(c[f>>2]|0,8);c[k>>2]=(c[e>>2]|0)+2;c[k>>2]=(c[k>>2]|0)+2;c[j>
x3e;2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)
x26;65535)<<0)&65535;c[k>>2]=(c[e>>2]|0)+8;c[k>>2]=(c[k>>2]|0)+2;c[g>
;>2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0
)&65535)<<0)&65535;if(!(((c[e>>2]|0)+(c[j>>2]|0)|0)>>>0<=(c[(c[f>
;>2]|0)+4>>2]|0)>>>0?(c[j>>2]|0)>>>0>=(10+(c[g>>2]<
x3c;1)|0)>>>0:0))sc(c[f>>2]|0,8);if(!((c[g>>2]|0)>>>0>0?(c[(c[f>>
;2]|0)+8>>2]|0)>>>0>=1:0)){i=l;return 0}do{c[k>>2]=(c[k>>2]|0)+2;c[h>>
;2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)&
;65535)<<0)&65535;if((c[h>>2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)
x3e;>>0)sc(c[f>>2]|0,16);c[g>>2]=(c[g>>2]|0)+-1}while((c[g>>2]|0)>>
x3e;0>0);i=l;return 0}function yj(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;f=e+4|0;g=e;c[h>>2]=a
;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=6;
c[c[f>>2]>>2]=(((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1
x3e;>0]|0)&65535)<<0)&65535;i=e;return 0}function zj(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;m=i;i=i+48|0;o=m+32|0;h=m+28|0;n=m+24|0;j=m+20|0;g=m+16|0;f=m+12|0;k=m+8|0;e=m+4|0;l=m;c[o>>2]=a;c[h>
x3e;2]=b;c[n>>2]=c[(c[o>>2]|0)+16>>2];c[j>>2]=0;c[g>>2]=(c[n>>2]|0)+
8204;c[g>>2]=(c[g>>2]|0)+4;c[f>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(
c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>
;>2]|0)+-4+3>>0]|0)<<0;while(1){if((c[f>>2]|0)>>>0<=0){b=7;break}c[g>
;>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>
;2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-
4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[e>>2]=(d[(c[g>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[l>
x3e;2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if((c[h
x3e;>2]|0)>>>0<(c[k>>2]|0)>>>0){b=7;break}if((c[h>>2]|0)>>
x3e;0<=(c[e>>2]|0)>>>0){b=5;break}c[f>>2]=(c[f>>2]|0)+-1}if((b|0)==5){c[j>
;>2]=(c[l>>2]|0)+(c[h>>2]|0)-(c[k>>2]|0);o=c[j>>2]|0;i=m;return o|0}else if((b|0)==
7){o=c[j>>2]|0;i=m;return o|0}return 0}function Aj(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;p=i;i=i+48|0;r=p+40|0;e=p+36|0;l=p+32|0;f=p+28|0;h=p+24|0;q=p+20|0;k=p+16|0;j=p+12|0;m=p+8|0;g=p+4|0;n=p;c[r>>2]=
a;c[e>>2]=b;c[l>>2]=0;c[f>>2]=(c[c[e>>2]>>2]|0)+1;c[h>>2]=0;c[q>
;>2]=c[(c[r>>2]|0)+16>>2];c[k>>2]=(c[q>>2]|0)+8204;c[k>>2]=(c[k>>
;2]|0)+4;c[j>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<
;<0;c[k>>2]=(c[q>>2]|0)+8208;while(1){if((c[j>>2]|0)>>>0<=0){o=9;break}c[
k>>2]=(c[k>>2]|0)+4;c[m>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>
;>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>
2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>2]|0)+4;c[g>>2]=(d[(c[k>>2]|0)+-4
>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>
x3e;0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>2]|0)+4;c[n
>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<
x3c;16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;if
((c[f>>2]|0)>>>0<(c[m>>2]|0)>>>0)c[f>>2]=c[m>>2];if((
c[f>>2]|0)>>>0<=(c[g>>2]|0)>>>0?(c[h>>2]=(c[f>>2]|0)-(
c[m>>2]|0)+(c[n>>2]|0),c[h>>2]|0):0)break;c[j>>2]=(c[j>>2]|0)+-1}if((o|0)==9){
q=c[l>>2]|0;r=c[e>>2]|0;c[r>>2]=q;r=c[h>>2]|0;i=p;return r|0}c[l>>2]=c[f>
x3e;2];q=c[l>>2]|0;r=c[e>>2]|0;c[r>>2]=q;r=c[h>>2]|0;i=p;return r|0}function Bj(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;t=i;i=i+64|0;e=t+52|0;f=t+48|0;q=t+44|0;k=t+40|0;m=t+36
|0;p=t+32|0;o=t+28|0;r=t+24|0;h=t+20|0;s=t+16|0;g=t+12|0;l=t+8|0;j=t+4|0;n=t;c[e>>2]=a;c[f>>2]=b;c[q>
x3e;2]=(c[e>>2]|0)+4;if(((c[e>>2]|0)+16+8192|0)>>>0>(c[(c[f>>2]|0)+4>>
;2]|0)>>>0)sc(c[f>>2]|0,8);c[q>>2]=(c[q>>2]|0)+4;c[m>>2]=(d[(c[q>>
;2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-
4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;if((c[m>>2]|0)>>
;>0<8208?1:(c[m>>2]|0)>>>0>((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>
2]|0)|0)>>>0)sc(c[f>>2]|0,8);c[k>>2]=(c[e>>2]|0)+12;c[q>>2]=(c[k>>
;2]|0)+8192;c[q>>2]=(c[q>>2]|0)+4;c[p>>2]=(d[(c[q>>2]|0)+-4>>0]|0)<<
24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(
c[q>>2]|0)+-4+3>>0]|0)<<0;if(((c[q>>2]|0)+((c[p>>2]|0)*12|0)|0)>>>
;0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[l>>2]=0;c[o>
x3e;2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[q>>
;2]=(c[q>>2]|0)+4;c[r>>2]=(d[(c[q>>2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3
x3e;>0]|0)<<0;c[q>>2]=(c[q>>2]|0)+4;c[h>>2]=(d[(c[q>>2]|0)+-4>>
0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;c[q>>2]=(c[q>>2]|0)+4;c[s>>
;2]=(d[(c[q>>2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(
c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;if((c[r>
;>2]|0)>>>0>(c[h>>2]|0)>>>0)sc(c[f>>2]|0,8);if((c[o>>2]|0)
x3e;>>0>0?(c[r>>2]|0)>>>0<=(c[l>>2]|0)>>>0:0)sc(c[f>
x3e;2]|0,8);a:do if((c[(c[f>>2]|0)+8>>2]|0)>>>0>=1){if(((c[s>>2]|0)+(c[h>
x3e;2]|0)-(c[r>>2]|0)|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)>>>0)sc(
c[f>>2]|0,16);c[g>>2]=(c[h>>2]|0)-(c[r>>2]|0)+1;if(c[r>>2]&-65536|0)while
(1){if((c[g>>2]|0)>>>0<=0)break a;c[j>>2]=(c[r>>2]|0)>>>16;c[n
x3e;>2]=c[r>>2]&65535;if(!((d[(c[k>>2]|0)+((c[j>>2]|0)>>>3)>>0]|
0)&128>>(c[j>>2]&7)))sc(c[f>>2]|0,8);if(!((d[(c[k>>2]|0)+((c[n>>2]|0
)>>>3)>>0]|0)&128>>(c[n>>2]&7)))sc(c[f>>2]|0,8);c[g>>
2]=(c[g>>2]|0)+-1;c[r>>2]=(c[r>>2]|0)+1}else{if(c[h>>2]&-65536|0)sc(c[f>>
2]|0,8);while(1){if((c[g>>2]|0)>>>0<=0)break a;c[n>>2]=c[r>>2]&65535;if((
d[(c[k>>2]|0)+((c[n>>2]|0)>>>3)>>0]|0)&128>>(c[n>>2]&
7)|0)sc(c[f>>2]|0,8);c[g>>2]=(c[g>>2]|0)+-1;c[r>>2]=(c[r>>2]|0)+1}}}while(0);c
[l>>2]=c[h>>2];c[o>>2]=(c[o>>2]|0)+1}i=t;return 0}function Cj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16
>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=8;c[c[f>>2]>>2]=(d[c[g>>2]>>
0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>>0]|0)<
x3c;8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function Dj(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;h=i;i=i+32|0;n=h+28|0;l=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;k=h+8|0;j=h+4|0;e=h;c[n>>2]=a;c[l>>
;2]=b;c[m>>2]=c[(c[n>>2]|0)+16>>2];c[g>>2]=0;c[f>>2]=(c[m>>2]|0)+12;
c[f>>2]=(c[f>>2]|0)+4;c[k>>2]=(d[(c[f>>2]|0)+-4>>0]|0)<<24|(d[(c[f
x3e;>2]|0)+-4+1>>0]|0)<<16|(d[(c[f>>2]|0)+-4+2>>0]|0)<<8|(d[(c[f>>
;2]|0)+-4+3>>0]|0)<<0;c[f>>2]=(c[f>>2]|0)+4;c[j>>2]=(d[(c[f>>2]|0)+-
4>>0]|0)<<24|(d[(c[f>>2]|0)+-4+1>>0]|0)<<16|(d[(c[f>>2]|0)+-4+2>
;>0]|0)<<8|(d[(c[f>>2]|0)+-4+3>>0]|0)<<0;c[e>>2]=(c[l>>2]|0)-(c
[k>>2]|0);if((c[e>>2]|0)>>>0>=(c[j>>2]|0)>>>0){n=c[g>>
;2]|0;i=h;return n|0}c[f>>2]=(c[f>>2]|0)+(c[e>>2]<<1);c[g>>2]=(((d[c[f>
x3e;2]>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+1>>0]|0)&65535)<<0)&65535
;n=c[g>>2]|0;i=h;return n|0}function Ej(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;m=i;i=i+48|0;o=m+
32|0;j=m+28|0;n=m+24|0;k=m+20|0;l=m+16|0;g=m+12|0;h=m+8|0;e=m+4|0;f=m;c[o>>2]=a;c[j>>2]=b;c[n>>2]=
c[(c[o>>2]|0)+16>>2];c[k>>2]=(c[c[j>>2]>>2]|0)+1;c[l>>2]=0;c[g>
x3e;2]=(c[n>>2]|0)+12;c[g>>2]=(c[g>>2]|0)+4;c[h>>2]=(d[(c[g>>2]|0)+-4>>
;0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[e>>
;2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(
c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if((c[k>
;>2]|0)>>>0<(c[h>>2]|0)>>>0)c[k>>2]=c[h>>2];c[f>>
;2]=(c[k>>2]|0)-(c[h>>2]|0);c[g>>2]=(c[g>>2]|0)+(c[f>>2]<<1);while(1
){if((c[f>>2]|0)>>>0>=(c[e>>2]|0)>>>0){a=7;break}c[g>>2]=(c[g
x3e;>2]|0)+2;c[l>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[g>>
2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if(c[l>>2]|0){a=7;break}c[k>>2]=(c[k>
x3e;2]|0)+1;c[f>>2]=(c[f>>2]|0)+1}if((a|0)==7){c[c[j>>2]>>2]=c[k>>2];i=m;return
c[l>>2]|0}return 0}function Fj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;k=l+12
|0;j=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[f>>2]=b;c[k>>2]=(c[e>>2]|0)+4;if(((c[e>>2]|
0)+20|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[k>
;>2]=(c[k>>2]|0)+4;c[j>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>
;2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-
4+3>>0]|0)<<0;c[k>>2]=(c[e>>2]|0)+16;c[k>>2]=(c[k>>2]|0)+4;c[g>
x3e;2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;if(!((c[j
>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>2]|0)|0)>>>
;0?(c[j>>2]|0)>>>0>=(20+(c[g>>2]<<1)|0)>>>0:0))sc(c[f>>
;2]|0,8);if(!((c[g>>2]|0)>>>0>0?(c[(c[f>>2]|0)+8>>2]|0)>>>0>
;=1:0)){i=l;return 0}do{c[k>>2]=(c[k>>2]|0)+2;c[h>>2]=(((d[(c[k>>2]|0)+-2>>0]|
0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c[h>
x3e;2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)>>>0)sc(c[f>>2]|0,16);c
[g>>2]=(c[g>>2]|0)+-1}while((c[g>>2]|0)>>>0>0);i=l;return 0}function Gj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[
h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=10;c[c[f>>2]>>2]=(d[c[g>
;>2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>
;>0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function Hj(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;c[(c[g>>2]|0)+16>>2]=c[h>
x3e;2];c[h>>2]=(c[h>>2]|0)+12;c[(c[g>>2]|0)+40>>2]=(d[c[h>>2]>>0]|0)
x3c;<24|(d[(c[h>>2]|0)+1>>0]|0)<<16|(d[(c[h>>2]|0)+2>>0]|0)<<8|(
d[(c[h>>2]|0)+3>>0]|0)<<0;a[(c[g>>2]|0)+24>>0]=0;i=f;return 0}function Ij(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=Jj(c[f>>2]|0,e,0)|0;i=d
;return a|0}function Jj(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;x=i;i=i
+64|0;g=x+52|0;h=x+48|0;j=x+44|0;k=x+56|0;o=x+40|0;t=x+36|0;s=x+32|0;l=x+28|0;u=x+24|0;n=x+20|0;v=x+16|0;p=x+12|0;r=x+8|0;q=x+4|
0;m=x;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;c[o>>2]=0;c[t>>2]=(c[(c[h>>2]|0)+
16>>2]|0)+12;c[s>>2]=d[c[t>>2]>>0]<<24|d[(c[t>>2]|0)+1>>0]
x3c;<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t>>2]|0)+3>>0]<<0;c[l>
x3e;2]=c[c[j>>2]>>2];if(!(c[s>>2]|0)){c[g>>2]=0;w=c[g>>2]|0;i=x;return w|0}c[q
>>2]=c[s>>2];c[n>>2]=-1;if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1;c[r>
x3e;2]=0;c[p>>2]=c[s>>2];while(1){if((c[r>>2]|0)>>>0>=(c[p>>2]|0)>
;>>0)break;c[q>>2]=((c[r>>2]|0)+(c[p>>2]|0)|0)>>>1;c[t>>2]=(c[(
c[h>>2]|0)+16>>2]|0)+16+((c[q>>2]|0)*12|0);c[t>>2]=(c[t>>2]|0)+4;c[u>>
;2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>>2]|0)+-4+1>>0]<<16|d[(c[t>
x3e;2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4+3>>0]<<0;c[t>>2]=(c[t>
x3e;2]|0)+4;c[n>>2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>>2]|0)+-4+1>>0]
x3c;<16|d[(c[t>>2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4+3>>0]<<0;if((
c[l>>2]|0)>>>0<(c[u>>2]|0)>>>0){c[p>>2]=c[q>>2];continue
}if((c[l>>2]|0)>>>0<=(c[n>>2]|0)>>>0){w=11;break}c[r>>2]=(c[q
x3e;>2]|0)+1}if((w|0)==11){c[v>>2]=d[c[t>>2]>>0]<<24|d[(c[t>>2]|0)+1>
;>0]<<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t>>2]|0)+3>>0]<<
0;c[o>>2]=(c[v>>2]|0)+(c[l>>2]|0)-(c[u>>2]|0)}if(a[k>>0]|0){c[m>>2]=
c[h>>2];if((c[l>>2]|0)>>>0>(c[n>>2]|0)>>>0?(c[q>>2]=(
c[q>>2]|0)+1,(c[q>>2]|0)==(c[s>>2]|0)):0){c[g>>2]=0;w=c[g>>2]|0;i=x;return w|0
}a[(c[m>>2]|0)+24>>0]=1;c[(c[m>>2]|0)+28>>2]=c[l>>2];c[(c[m>>2]|0)+36
>>2]=c[q>>2];if(!(c[o>>2]|0)){Kj(c[m>>2]|0);if(a[(c[m>>2]|0)+24>>0]|
0)c[o>>2]=c[(c[m>>2]|0)+32>>2]}else c[(c[m>>2]|0)+32>>2]=c[o>>2];if(
c[o>>2]|0)c[c[j>>2]>>2]=c[(c[m>>2]|0)+28>>2]}c[g>>2]=c[o>>
2];w=c[g>>2]|0;i=x;return w|0}function Kj(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;e=n+28|0;k=n+24
|0;l=n+20|0;g=n+16|0;m=n+12|0;f=n+8|0;j=n+4|0;h=n;c[e>>2]=b;a:do if((c[(c[e>>2]|0)+28>>2]|0)>
x3e;>0<4294967295){c[f>>2]=(c[(c[e>>2]|0)+28>>2]|0)+1;c[j>>2]=c[(c[e>>
;2]|0)+36>>2];c[j>>2]=c[(c[e>>2]|0)+36>>2];b:while(1){if((c[j>>2]|0)>>
;>0>=(c[(c[e>>2]|0)+40>>2]|0)>>>0)break a;c[k>>2]=(c[(c[e>>2]|0
)+16>>2]|0)+16+((c[j>>2]|0)*12|0);c[k>>2]=(c[k>>2]|0)+4;c[l>>2]=(d[(c[k>
x3e;2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0
)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>
;2]|0)+4;c[g>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<
;<0;c[m>>2]=(d[c[k>>2]>>0]|0)<<24|(d[(c[k>>2]|0)+1>>0]|0)<
x3c;16|(d[(c[k>>2]|0)+2>>0]|0)<<8|(d[(c[k>>2]|0)+3>>0]|0)<<0;if((c[f
>>2]|0)>>>0<(c[l>>2]|0)>>>0)c[f>>2]=c[l>>2];while(1){
if((c[f>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[h>>2]=(c[m>>
;2]|0)+(c[f>>2]|0)-(c[l>>2]|0);b=c[f>>2]|0;if(c[h>>2]|0)break b;c[f>>2]=b+1}c[
j>>2]=(c[j>>2]|0)+1}c[(c[e>>2]|0)+28>>2]=b;c[(c[e>>2]|0)+32>>2]=c[h
x3e;>2];c[(c[e>>2]|0)+36>>2]=c[j>>2];i=n;return}while(0);a[(c[e>>2]|0)+24>>
;0]=0;i=n;return}function Lj(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m
;c[g>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];if((c[(c[j>>2]|0)+28>>2]|0)>
;>>0>=4294967295){c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}do if(d[(c[j>>2]|0)+24>
x3e;0]|0?(c[(c[j>>2]|0)+28>>2]|0)==(c[c[h>>2]>>2]|0):0){Kj(c[j>>2]|0);if(!(a[(
c[j>>2]|0)+24>>0]|0)){c[k>>2]=0;break}c[k>>2]=c[(c[j>>2]|0)+32>>2];if
(c[k>>2]|0)c[c[h>>2]>>2]=c[(c[j>>2]|0)+28>>2]}else l=9;while(0);if((l|0)==9)c[
k>>2]=Jj(c[g>>2]|0,c[h>>2]|0,1)|0;c[f>>2]=c[k>>2];l=c[f>>2]|0;i=m;return
l|0}function Mj(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0;m=p+28|0;j=p+24
|0;l=p+20|0;k=p+16|0;n=p+12|0;g=p+8|0;o=p+4|0;h=p;c[e>>2]=a;c[f>>2]=b;if(((c[e>>2]|0)+16|0)>
x3e;>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[m>>2]=(c[e
>>2]|0)+4;c[m>>2]=(c[m>>2]|0)+4;c[j>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<
;<24|(d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<
;8|(d[(c[m>>2]|0)+-4+3>>0]|0)<<0;c[m>>2]=(c[e>>2]|0)+12;c[m>>2]=(c[m
>>2]|0)+4;c[l>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1
x3e;>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>
;0]|0)<<0;if(!((c[j>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>
x3e;2]|0)|0)>>>0?(c[j>>2]|0)>>>0>=(16+((c[l>>2]|0)*12|0)|0)>>
x3e;0:0))sc(c[f>>2]|0,8);c[h>>2]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0
x3e;=(c[l>>2]|0)>>>0)break;c[m>>2]=(c[m>>2]|0)+4;c[n>>2]=(d[(c[m>>
;2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-
4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>0]|0)<<0;c[m>>2]=(c[m>>
2]|0)+4;c[g>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1>>0]|
0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>0]|0)<
;<0;c[m>>2]=(c[m>>2]|0)+4;c[o>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(
d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m
x3e;>2]|0)+-4+3>>0]|0)<<0;if((c[n>>2]|0)>>>0>(c[g>>2]|0)>
x3e;>0)sc(c[f>>2]|0,8);if((c[k>>2]|0)>>>0>0?(c[n>>2]|0)>>>
0<=(c[h>>2]|0)>>>0:0)sc(c[f>>2]|0,8);if((c[(c[f>>2]|0)+8>>2]|0)>
;>>0>=1?((c[o>>2]|0)+(c[g>>2]|0)-(c[n>>2]|0)|0)>>>0>=(c[(c[f>
;>2]|0)+172>>2]|0)>>>0:0)sc(c[f>>2]|0,16);c[h>>2]=c[g>>2];c[k>
x3e;2]=(c[k>>2]|0)+1}i=p;return 0}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;h=e+8|0;f=e+4|0;g=e;c[
h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4
>>2]=12;c[c[f>>2]>>2]=(d[c[g>>2]>>0]|0)<<24|(d[(c[g>>2]|0)+
1>>0]|0)<<16|(d[(c[g>>2]|0)+2>>0]|0)<<8|(d[(c[g>>2]|0)+3>>
0]|0)<<0;i=e;return 0}function Oj(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;c[(c[g>>2]|0)+16>>2]=c[h>>2];c[h>>2]=(c[h>>2]|0)+12;c[(c[g>
x3e;2]|0)+40>>2]=(d[c[h>>2]>>0]|0)<<24|(d[(c[h>>2]|0)+1>>0]|0)<
x3c;16|(d[(c[h>>2]|0)+2>>0]|0)<<8|(d[(c[h>>2]|0)+3>>0]|0)<<0;a[(c[g
x3e;>2]|0)+24>>0]=0;i=f;return 0}function Pj(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>
x3e;2]=a;c[e>>2]=b;a=Qj(c[f>>2]|0,e,0)|0;i=d;return a|0}function Qj(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;w=i;i=i+64|0;g=w+48|0;h=w+44|0;j=w+40|0;k=w+52|0;o=w+36|0;t=w+32|0;s=w+28|0
;l=w+24|0;u=w+20|0;n=w+16|0;p=w+12|0;r=w+8|0;q=w+4|0;m=w;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;c[o>
x3e;2]=0;c[t>>2]=(c[(c[h>>2]|0)+16>>2]|0)+12;c[s>>2]=d[c[t>>2]>>0]
x3c;<24|d[(c[t>>2]|0)+1>>0]<<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t
x3e;>2]|0)+3>>0]<<0;c[l>>2]=c[c[j>>2]>>2];if(!(c[s>>2]|0)){c[g
x3e;>2]=0;v=c[g>>2]|0;i=w;return v|0}c[q>>2]=c[s>>2];c[n>>2]=-1;if(a[k>>0
]|0)c[l>>2]=(c[l>>2]|0)+1;c[r>>2]=0;c[p>>2]=c[s>>2];while(1){if((c[r>>
;2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[q>>2]=((c[r>>2]|0)+(c[p>
;>2]|0)|0)>>>1;c[t>>2]=(c[(c[h>>2]|0)+16>>2]|0)+16+((c[q>>2]|0)*12|0
);c[t>>2]=(c[t>>2]|0)+4;c[u>>2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>
;>2]|0)+-4+1>>0]<<16|d[(c[t>>2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4
+3>>0]<<0;c[t>>2]=(c[t>>2]|0)+4;c[n>>2]=d[(c[t>>2]|0)+-4>>
0]<<24|d[(c[t>>2]|0)+-4+1>>0]<<16|d[(c[t>>2]|0)+-4+2>>0]<<
8|d[(c[t>>2]|0)+-4+3>>0]<<0;if((c[l>>2]|0)>>>0<(c[u>>2]|0)
x3e;>>0){c[p>>2]=c[q>>2];continue}if((c[l>>2]|0)>>>0<=(c[n>>
;2]|0)>>>0){v=11;break}c[r>>2]=(c[q>>2]|0)+1}if((v|0)==11)c[o>>2]=d[c[t>>
2]>>0]<<24|d[(c[t>>2]|0)+1>>0]<<16|d[(c[t>>2]|0)+2>>0]<
;<8|d[(c[t>>2]|0)+3>>0]<<0;if(a[k>>0]|0){c[m>>2]=c[h>>2];if((c[
l>>2]|0)>>>0>(c[n>>2]|0)>>>0?(c[q>>2]=(c[q>>2]|0)+1,(
c[q>>2]|0)==(c[s>>2]|0)):0){c[g>>2]=0;v=c[g>>2]|0;i=w;return v|0}a[(c[m>>2]|0)+
24>>0]=1;c[(c[m>>2]|0)+28>>2]=c[l>>2];c[(c[m>>2]|0)+36>>2]=c[q>
x3e;2];if(!(c[o>>2]|0)){Rj(c[m>>2]|0);if(a[(c[m>>2]|0)+24>>0]|0)c[o>>2]=c[(c[m
>>2]|0)+32>>2]}else c[(c[m>>2]|0)+32>>2]=c[o>>2];if(c[o>>2]|0)c[c[j
x3e;>2]>>2]=c[(c[m>>2]|0)+28>>2]}c[g>>2]=c[o>>2];v=c[g>>2]|0;i=
w;return v|0}function Rj(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;e=n+28|0;l=n+24|0;m=n+20|0;g=n+16|0;j=n+12
|0;f=n+8|0;k=n+4|0;h=n;c[e>>2]=b;a:do if((c[(c[e>>2]|0)+28>>2]|0)>>>0<4294967295
){c[f>>2]=(c[(c[e>>2]|0)+28>>2]|0)+1;c[k>>2]=c[(c[e>>2]|0)+36>>2];c[
k>>2]=c[(c[e>>2]|0)+36>>2];while(1){if((c[k>>2]|0)>>>0>=(c[(c[e>
;>2]|0)+40>>2]|0)>>>0)break a;c[l>>2]=(c[(c[e>>2]|0)+16>>2]|0)+16+((
c[k>>2]|0)*12|0);c[l>>2]=(c[l>>2]|0)+4;c[m>>2]=(d[(c[l>>2]|0)+-4>>0]|
0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)<
;<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;c[l>>2]=(c[l>>2]|0)+4;c[g>>2]=(
d[(c[l>>2]|0)+-4>>0]|0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l
x3e;>2]|0)+-4+2>>0]|0)<<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;c[j>>2]=(
d[c[l>>2]>>0]|0)<<24|(d[(c[l>>2]|0)+1>>0]|0)<<16|(d[(c[l>>
2]|0)+2>>0]|0)<<8|(d[(c[l>>2]|0)+3>>0]|0)<<0;if((c[f>>2]|0)>>
;>0<(c[m>>2]|0)>>>0)c[f>>2]=c[m>>2];if((c[f>>2]|0)>>
x3e;0<=(c[g>>2]|0)>>>0?(c[h>>2]=c[j>>2],c[h>>2]|0):0)break;c[k>
x3e;2]=(c[k>>2]|0)+1}c[(c[e>>2]|0)+28>>2]=c[f>>2];c[(c[e>>2]|0)+32>>
2]=c[h>>2];c[(c[e>>2]|0)+36>>2]=c[k>>2];i=n;return}while(0);a[(c[e>>2]|0)+24
x3e;>0]=0;i=n;return}function Sj(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;j=
m+4|0;k=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];if((c[(c[j>>2]|0)+28>>
2]|0)>>>0>=4294967295){c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}do if(d[(c[j>>2]|0
)+24>>0]|0?(c[(c[j>>2]|0)+28>>2]|0)==(c[c[h>>2]>>2]|0):0){Rj(c[j>>2]|
0);if(!(a[(c[j>>2]|0)+24>>0]|0)){c[k>>2]=0;break}c[k>>2]=c[(c[j>>2]|0)+32>
;>2];if(c[k>>2]|0)c[c[h>>2]>>2]=c[(c[j>>2]|0)+28>>2]}else l=9;while(0);if
((l|0)==9)c[k>>2]=Qj(c[g>>2]|0,c[h>>2]|0,1)|0;c[f>>2]=c[k>>2];l=c[f>>
;2]|0;i=m;return l|0}function Tj(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0
;n=p+28|0;k=p+24|0;m=p+20|0;l=p+16|0;o=p+12|0;g=p+8|0;h=p+4|0;j=p;c[e>>2]=a;c[f>>2]=b;if(((c[e>>2]|
0)+16|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[n>
;>2]=(c[e>>2]|0)+4;c[n>>2]=(c[n>>2]|0)+4;c[k>>2]=(d[(c[n>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;c[n>>2]=(c[e>>2]|0)+12;c[n>
x3e;2]=(c[n>>2]|0)+4;c[m>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4
+3>>0]|0)<<0;if(!((c[k>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0
)-(c[e>>2]|0)|0)>>>0?(c[k>>2]|0)>>>0>=(16+((c[m>>2]|0)*12|0)|0)
x3e;>>0:0))sc(c[f>>2]|0,8);c[j>>2]=0;c[l>>2]=0;while(1){if((c[l>>2]|0)>
x3e;>0>=(c[m>>2]|0)>>>0)break;c[n>>2]=(c[n>>2]|0)+4;c[o>>2]=(d[(
c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>
;>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;c[n>>2]=(c
[n>>2]|0)+4;c[g>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1
>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>
x3e;0]|0)<<0;c[n>>2]=(c[n>>2]|0)+4;c[h>>2]=(d[(c[n>>2]|0)+-4>>0]|0)
x3c;<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<
x3c;8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;if((c[o>>2]|0)>>>0>(c[g>>
;2]|0)>>>0)sc(c[f>>2]|0,8);if((c[l>>2]|0)>>>0>0?(c[o>>2]|0)>
;>>0<=(c[j>>2]|0)>>>0:0)sc(c[f>>2]|0,8);if((c[(c[f>>2]|0)+8>>
;2]|0)>>>0>=1?(c[h>>2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)
x3e;>>0:0)sc(c[f>>2]|0,16);c[j>>2]=c[g>>2];c[l>>2]=(c[l>>2]|0)+1}i=p
;return 0}function Uj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2
]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=13;c[c[f>>
;2]>>2]=(d[c[g>>2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(
d[(c[g>>2]|0)+2>>0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function
Vj(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;c[(c[f>>2]|0)+16
>>2]=c[g>>2];c[g>>2]=(c[g>>2]|0)+6;c[(c[f>>2]|0)+24>>2]=(d[c[g>
x3e;2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>
x3e;0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;c[(c[f>>2]|0)+28>>2]=0;c[(c[
f>>2]|0)+32>>2]=0;i=e;return 0}function Wj(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>
2]=a;c[d>>2]=c[(c[b>>2]|0)+36>>2];c[(c[b>>2]|0)+28>>2]=0;if(!(c[d>>2
]|0)){i=e;return}if(!(c[(c[b>>2]|0)+32>>2]|0)){i=e;return}Fb(c[d>>2]|0,c[(c[b>>2]|0)+32
x3e;>2]|0);c[(c[b>>2]|0)+32>>2]=0;i=e;return}function Xj(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[f>>2]=c[f>>2];c[e>>2]=c[e>>2];i=d;
return 0}function Yj(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[f>
x3e;2]=c[f>>2];c[c[e>>2]>>2]=0;i=d;return 0}function Zj(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;o=i;i=i+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;p=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a
;c[j>>2]=b;c[k>>2]=e;c[p>>2]=f;c[n>>2]=_j((c[(c[h>>2]|0)+16>>2]|0)+6
|0,c[p>>2]|0)|0;if(!(c[n>>2]|0)){c[g>>2]=0;p=c[g>>2]|0;i=o;return p|0}c[n>>2]=(
c[n>>2]|0)+4;c[l>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+
1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>
x3e;0]|0)<<0;c[m>>2]=(d[c[n>>2]>>0]|0)<<24|(d[(c[n>>2]|0)+1>>
;0]|0)<<16|(d[(c[n>>2]|0)+2>>0]|0)<<8|(d[(c[n>>2]|0)+3>>0]|0)<
x3c;0;if(c[l>>2]|0?$j((c[(c[h>>2]|0)+16>>2]|0)+(c[l>>2]|0)|0,c[k>>2]|0)|0:0){c
[g>>2]=Ya[c[(c[(c[j>>2]|0)+12>>2]|0)+12>>2]&127](c[j>>2]|0,c[k>>
;2]|0)|0;p=c[g>>2]|0;i=o;return p|0}if(c[m>>2]|0){c[g>>2]=ak((c[(c[h>>2]|0)+16>>
;2]|0)+(c[m>>2]|0)|0,c[k>>2]|0)|0;p=c[g>>2]|0;i=o;return p|0}else{c[g>>2]=0;p=c[g>
x3e;2]|0;i=o;return p|0}return 0}function _j(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;n=i;i=i+48|0;l=n+32|0;
e=n+28|0;f=n+24|0;o=n+20|0;g=n+16|0;j=n+12|0;h=n+8|0;m=n+4|0;k=n;c[e>>2]=a;c[f>>2]=b;c[o>>2]=(d[c[
e>>2]>>0]|0)<<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>>2]|0
)+2>>0]|0)<<8|(d[(c[e>>2]|0)+3>>0]|0)<<0;c[j>>2]=0;c[g>>2]=
c[o>>2];c[e>>2]=(c[e>>2]|0)+4;while(1){if((c[j>>2]|0)>>>0>=(c[g>
;>2]|0)>>>0){e=8;break}c[h>>2]=((c[j>>2]|0)+(c[g>>2]|0)|0)>>>1;
c[m>>2]=(c[e>>2]|0)+((c[h>>2]|0)*11|0);c[m>>2]=(c[m>>2]|0)+3;c[k>>2]=(
d[(c[m>>2]|0)+-3>>0]|0)<<16|(d[(c[m>>2]|0)+-3+1>>0]|0)<<8|(d[(c[m>
;>2]|0)+-3+2>>0]|0)<<0;if((c[f>>2]|0)>>>0<(c[k>>2]|0)>>
;>0){c[g>>2]=c[h>>2];continue}if((c[f>>2]|0)>>>0<=(c[k>>2]|0)
x3e;>>0){e=7;break}c[j>>2]=(c[h>>2]|0)+1}if((e|0)==7){c[l>>2]=c[m>>2];o=c[l>
;>2]|0;i=n;return o|0}else if((e|0)==8){c[l>>2]=0;o=c[l>>2]|0;i=n;return o|0}return 0}function $j(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;o=i;i=i+48|0;n=o+36|0;e=o+32|0;f=o+28|0;p=o+24|0;h=o+20|0;k=o+16|0;j
=o+12|0;l=o+8|0;m=o+4|0;g=o;c[e>>2]=a;c[f>>2]=b;c[p>>2]=(d[c[e>>2]>>0]|0)<
;<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>>2]|0)+2>>0]|0)<<8|(d[(
c[e>>2]|0)+3>>0]|0)<<0;c[k>>2]=0;c[h>>2]=c[p>>2];c[e>>2]=(
c[e>>2]|0)+4;while(1){if((c[k>>2]|0)>>>0>=(c[h>>2]|0)>>>0){e=8;
break}c[j>>2]=((c[k>>2]|0)+(c[h>>2]|0)|0)>>>1;c[l>>2]=(c[e>>2]|
0)+(c[j>>2]<<2);c[l>>2]=(c[l>>2]|0)+3;c[m>>2]=(d[(c[l>>2]|0)+-3>
;>0]|0)<<16|(d[(c[l>>2]|0)+-3+1>>0]|0)<<8|(d[(c[l>>2]|0)+-3+2>>
0]|0)<<0;p=c[l>>2]|0;c[l>>2]=p+1;c[g>>2]=d[p>>0];if((c[f>>2]|0)>
;>>0<(c[m>>2]|0)>>>0){c[h>>2]=c[j>>2];continue}if((c[f>>2]|
0)>>>0<=((c[m>>2]|0)+(c[g>>2]|0)|0)>>>0){e=7;break}c[k>>2]=(c[j
>>2]|0)+1}if((e|0)==7){c[n>>2]=1;p=c[n>>2]|0;i=o;return p|0}else if((e|0)==8){c[n>>2]=0;
p=c[n>>2]|0;i=o;return p|0}return 0}function ak(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;n=i;i=i+48
|0;l=n+32|0;e=n+28|0;f=n+24|0;o=n+20|0;g=n+16|0;j=n+12|0;h=n+8|0;m=n+4|0;k=n;c[e>>2]=a;c[f>>2]=b;c[o>
x3e;2]=(d[c[e>>2]>>0]|0)<<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>
;>2]|0)+2>>0]|0)<<8|(d[(c[e>>2]|0)+3>>0]|0)<<0;c[j>>2]=0;c[g>
;>2]=c[o>>2];c[e>>2]=(c[e>>2]|0)+4;while(1){if((c[j>>2]|0)>>>0>=(
c[g>>2]|0)>>>0){e=8;break}c[h>>2]=((c[j>>2]|0)+(c[g>>2]|0)|0)>>
x3e;1;c[m>>2]=(c[e>>2]|0)+((c[h>>2]|0)*5|0);c[m>>2]=(c[m>>2]|0)+3;c[k>>
;2]=(d[(c[m>>2]|0)+-3>>0]|0)<<16|(d[(c[m>>2]|0)+-3+1>>0]|0)<<8|(d[(c
[m>>2]|0)+-3+2>>0]|0)<<0;if((c[f>>2]|0)>>>0<(c[k>>2]|0)>
;>>0){c[g>>2]=c[h>>2];continue}if((c[f>>2]|0)>>>0<=(c[k>>2
]|0)>>>0){e=7;break}c[j>>2]=(c[h>>2]|0)+1}if((e|0)==7){c[l>>2]=(((d[c[m>>
2]>>0]|0)&65535)<<8|((d[(c[m>>2]|0)+1>>0]|0)&65535)<<0)&65535;o
=c[l>>2]|0;i=n;return o|0}else if((e|0)==8){c[l>>2]=0;o=c[l>>2]|0;i=n;return o|0}return 0}function
bk(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;m=i;i=i+32|0;f=m+24|0;g=m+20|0;h=m+16|0;n=m+12|0;l=m+8|0;j=m+4|
0;k=m;c[g>>2]=a;c[h>>2]=b;c[n>>2]=e;c[l>>2]=_j((c[(c[g>>2]|0)+16>>2]|
0)+6|0,c[n>>2]|0)|0;if(!(c[l>>2]|0)){c[f>>2]=-1;n=c[f>>2]|0;i=m;return n|0}c[l>>
;2]=(c[l>>2]|0)+4;c[j>>2]=(d[(c[l>>2]|0)+-4>>0]|0)<<24|(d[(c[l>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)<<8|(d[(c[l>>2]|0)+-4+3
x3e;>0]|0)<<0;c[l>>2]=(c[l>>2]|0)+4;c[k>>2]=(d[(c[l>>2]|0)+-4>>
0]|0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;if(c[j>>2]|0?$j((c[(c[g>>2]|0)+16>
;>2]|0)+(c[j>>2]|0)|0,c[h>>2]|0)|0:0){c[f>>2]=1;n=c[f>>2]|0;i=m;return n|0}if(c[k
x3e;>2]|0?ak((c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]|0)|0,c[h>>2]|0)|0:0){c[f>>
2]=0;n=c[f>>2]|0;i=m;return n|0}c[f>>2]=-1;n=c[f>>2]|0;i=m;return n|0}function ck(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;l=i;i=i+32|0;e=l+28|0;n=l+24|0;m=l+20|0;f=l+16|0;g=l+12|0;j=l+8|0;k=l+4|0;h=l;c[n>
x3e;2]=a;c[m>>2]=b;c[f>>2]=c[n>>2];c[g>>2]=c[(c[f>>2]|0)+24>>2];c[j
x3e;>2]=(c[(c[n>>2]|0)+16>>2]|0)+10;if(dk(c[f>>2]|0,(c[g>>2]|0)+1|0,c[m>>
2]|0)|0){c[e>>2]=0;n=c[e>>2]|0;i=l;return n|0}c[k>>2]=c[(c[f>>2]|0)+32>>2];c[h
>>2]=0;while(1){if((c[h>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[j
x3e;>2]=(c[j>>2]|0)+3;c[(c[k>>2]|0)+(c[h>>2]<<2)>>2]=(d[(c[j>>2
]|0)+-3>>0]|0)<<16|(d[(c[j>>2]|0)+-3+1>>0]|0)<<8|(d[(c[j>>2]|0)+-3+2
>>0]|0)<<0;c[j>>2]=(c[j>>2]|0)+8;c[h>>2]=(c[h>>2]|0)+1}c[(c[k>
x3e;2]|0)+(c[h>>2]<<2)>>2]=0;c[e>>2]=c[k>>2];n=c[e>>2]|0;i=l;return
n|0}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,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0
;j=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=c[(c[f>>2]|0)+28>>2];c[j
x3e;>2]=0;do if((c[g>>2]|0)>>>0>(c[(c[f>>2]|0)+28>>2]|0)>>>
;0){c[(c[f>>2]|0)+36>>2]=c[h>>2];k=hc(c[h>>2]|0,4,c[k>>2]|0,c[g>>2]|
0,c[(c[f>>2]|0)+32>>2]|0,j)|0;c[(c[f>>2]|0)+32>>2]=k;if(!(c[j>>2]|0)){c[(c[f
x3e;>2]|0)+28>>2]=c[g>>2];break}c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|
0}while(0);c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|0}function ek(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;q=i;i=i+48|0;f=q+40|0;g=q+36|0;r=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;n=q+16|0;o=q+12|
0;p=q+8|0;l=q+4|0;m=q;c[g>>2]=a;c[r>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];c[k>
x3e;2]=c[(c[j>>2]|0)+24>>2];c[n>>2]=(c[(c[g>>2]|0)+16>>2]|0)+10;if(dk(c[j>
;>2]|0,(c[k>>2]|0)+1|0,c[r>>2]|0)|0){c[f>>2]=0;r=c[f>>2]|0;i=q;return r|0}c[o>
x3e;2]=c[(c[j>>2]|0)+32>>2];while(1){if((c[k>>2]|0)>>>0<=0)break;c[n>>
;2]=(c[n>>2]|0)+3;c[p>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0
)+-3+1>>0]|0)<<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;c[n>>2]=(c[n>>
;2]|0)+4;c[l>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<
;<0;c[n>>2]=(c[n>>2]|0)+4;c[m>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(
d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n
x3e;>2]|0)+-4+3>>0]|0)<<0;if(c[l>>2]|0?$j((c[(c[g>>2]|0)+16>>2]|0)+(c[l
x3e;>2]|0)|0,c[h>>2]|0)|0:0)e=9;else e=7;if(((e|0)==7?(e=0,c[m>>2]|0):0)?ak((c[(c[g>>2]|0)+16
>>2]|0)+(c[m>>2]|0)|0,c[h>>2]|0)|0:0)e=9;if((e|0)==9){c[c[o>>2]>>2]=c[p>
x3e;2];c[o>>2]=(c[o>>2]|0)+4}c[k>>2]=(c[k>>2]|0)+-1}c[c[o>>2]>>2]=0;
c[f>>2]=c[(c[j>>2]|0)+32>>2];r=c[f>>2]|0;i=q;return r|0}function fk(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;y=i;i=i+80|0;f=y+72|0;g=y+68|0;h=y+64|0
;z=y+60|0;w=y+56|0;x=y+52|0;p=y+48|0;l=y+44|0;s=y+40|0;j=y+36|0;u=y+32|0;t=y+28|0;o=y+24|0;k=y+20|0;v=y+16|0;n=y+12|0;m=y+8|0;r=
y+4|0;q=y;c[g>>2]=a;c[h>>2]=b;c[z>>2]=e;c[w>>2]=_j((c[(c[g>>2]|0)+16>>
;2]|0)+6|0,c[z>>2]|0)|0;if(!(c[w>>2]|0)){c[f>>2]=0;z=c[f>>2]|0;i=y;return z|0}c[w>
x3e;2]=(c[w>>2]|0)+4;c[l>>2]=(d[(c[w>>2]|0)+-4>>0]|0)<<24|(d[(c[w>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|0)<<8|(d[(c[w>>2]|0)+-4
+3>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+4;c[s>>2]=(d[(c[w>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[w>>2]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[w>>2]|0)+-4+3>>0]|0)<<0;if((c[l>>2]|0)==0&(c[s>>2]|
0)==0){c[f>>2]=0;z=c[f>>2]|0;i=y;return z|0}if(!(c[l>>2]|0)){c[f>>2]=gk(c[g>>2
]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[s>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return
z|0}a=c[g>>2]|0;if(!(c[s>>2]|0)){c[f>>2]=hk(a,(c[(c[g>>2]|0)+16>>2]|0)+(c[l
x3e;>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return z|0}c[j>>2]=a;c[w>>2]=(c[(c[g>
;>2]|0)+16>>2]|0)+(c[s>>2]|0);c[n>>2]=(c[(c[g>>2]|0)+16>>2]|0)+(c[l>
x3e;2]|0);c[w>>2]=(c[w>>2]|0)+4;c[t>>2]=(d[(c[w>>2]|0)+-4>>0]|0)<<24
|(d[(c[w>>2]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|0)<<8|(d[(c[
w>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=ik(c[n>>2]|0)|0;c[n>>2]=(c[n>
x3e;2]|0)+4;c[u>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>
;0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)
x3c;<0;if(!(c[t>>2]|0)){c[f>>2]=hk(c[g>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[
l>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return z|0}if(!(c[k>>2]|0)){c[f>>2]=gk
(c[g>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[s>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>
;2]|0;i=y;return z|0}if(dk(c[j>>2]|0,(c[k>>2]|0)+(c[t>>2]|0)+1|0,c[h>>2]|0)|0){c[f>
x3e;2]=0;z=c[f>>2]|0;i=y;return z|0}c[x>>2]=c[(c[j>>2]|0)+32>>2];c[n>>2]=(c[n
x3e;>2]|0)+3;c[o>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>
;>0]|0)<<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+
1;c[k>>2]=d[z>>0];c[m>>2]=1;c[w>>2]=(c[w>>2]|0)+3;c[v>>2]=(d[(c[w>
;>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<<8|(d[(c[w>>2]|
0)+-3+2>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+2;c[r>>2]=1;c[p>>2]=0;while(1){
if((c[v>>2]|0)>>>0<=((c[o>>2]|0)+(c[k>>2]|0)|0)>>>0){if((c[v>
;>2]|0)>>>0<(c[o>>2]|0)>>>0){s=c[v>>2]|0;z=c[p>>2]|0;c[p
x3e;>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=s}c[r>>2]=(c[r>>2]|0)+1;if((c[r>
;>2]|0)>>>0>(c[t>>2]|0)>>>0)break;c[w>>2]=(c[w>>2]|0)+3;c[
v>>2]=(d[(c[w>>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<
x3c;8|(d[(c[w>>2]|0)+-3+2>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+2;continue}c[q>
x3e;2]=0;while(1){if((c[q>>2]|0)>>>0>(c[k>>2]|0)>>>0)break;s=(c[o>
x3e;2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>
;2]=s;c[q>>2]=(c[q>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1;if((c[m>>2]|0)>>
x3e;0>(c[u>>2]|0)>>>0)break;c[n>>2]=(c[n>>2]|0)+3;c[o>>2]=(d[(c[n>
;>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>>0]|0)<<8|(d[(c[n>>2]|
0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+1;c[k>>2]=d[z>>0]}a:do if((c
[r>>2]|0)>>>0>(c[t>>2]|0)>>>0){if((c[m>>2]|0)>>>
0<=(c[u>>2]|0)>>>0){c[q>>2]=0;while(1){if((c[q>>2]|0)>>>0>(
c[k>>2]|0)>>>0)break;w=(c[o>>2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>
;2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=w;c[q>>2]=(c[q>>2]|0)+1}while(1){if((c[m>
;>2]|0)>>>0>=(c[u>>2]|0)>>>0)break a;c[n>>2]=(c[n>>2]|0)+3
;c[o>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>>0]|0)<
;<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+1;c[k>>
2]=d[z>>0];c[q>>2]=0;while(1){if((c[q>>2]|0)>>>0>(c[k>>2]|0)>
x3e;>0)break;w=(c[o>>2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>
2]|0)+(z<<2)>>2]=w;c[q>>2]=(c[q>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1}}}else
{v=c[v>>2]|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=v;while
(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a;c[w>>2]=(c[w>
;>2]|0)+3;v=(d[(c[w>>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<
x3c;8|(d[(c[w>>2]|0)+-3+2>>0]|0)<<0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>
2]|0)+(z<<2)>>2]=v;c[w>>2]=(c[w>>2]|0)+2;c[r>>2]=(c[r>>2]|0)+1}}while
(0);c[(c[x>>2]|0)+(c[p>>2]<<2)>>2]=0;c[f>>2]=c[x>>2];z=c[f>>
;2]|0;i=y;return z|0}function gk(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;m=i;i=i+32|0;f=m+28|0;o=m+24|0
;g=m+20|0;n=m+16|0;h=m+12|0;k=m+8|0;j=m+4|0;l=m;c[o>>2]=a;c[g>>2]=b;c[n>>2]=e;c[h>>2]=c[
o>>2];c[g>>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<
x3c;24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(
d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if(dk(c[h>>2]|0,(c[k>>2]|0)+1|0,c[n>>2]|
0)|0){c[f>>2]=0;o=c[f>>2]|0;i=m;return o|0}c[l>>2]=c[(c[h>>2]|0)+32>>2];c[j>
;>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break;c[g>
x3e;2]=(c[g>>2]|0)+3;c[(c[l>>2]|0)+(c[j>>2]<<2)>>2]=(d[(c[g>>2]|0)+-
3>>0]|0)<<16|(d[(c[g>>2]|0)+-3+1>>0]|0)<<8|(d[(c[g>>2]|0)+-3+2>
x3e;0]|0)<<0;c[g>>2]=(c[g>>2]|0)+2;c[j>>2]=(c[j>>2]|0)+1}c[(c[l>>2]|
0)+(c[j>>2]<<2)>>2]=0;c[f>>2]=c[l>>2];o=c[f>>2]|0;i=m;return o|0}function
hk(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;n=i;i=i+48|0;f=n+32|0;p=n+28|0;g=n+24|0;o=n+20|0;h=n+16
|0;k=n+12|0;j=n+8|0;l=n+4|0;m=n;c[p>>2]=a;c[g>>2]=b;c[o>>2]=e;c[h>>2]=c[p>>2];
c[j>>2]=ik(c[g>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-
4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>
;>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if(dk(c[h>>2]|0,(c[j>>
2]|0)+1|0,c[o>>2]|0)|0){c[f>>2]=0;p=c[f>>2]|0;i=n;return p|0}c[l>>2]=c[(c[h>>2
]|0)+32>>2];while(1){if((c[k>>2]|0)>>>0<=0)break;c[g>>2]=(c[g>>2]|0)+
3;c[m>>2]=(d[(c[g>>2]|0)+-3>>0]|0)<<16|(d[(c[g>>2]|0)+-3+1>>0]|0)<
;<8|(d[(c[g>>2]|0)+-3+2>>0]|0)<<0;p=c[g>>2]|0;c[g>>2]=p+1;c[j>>
2]=(d[p>>0]|0)+1;do{c[c[l>>2]>>2]=c[m>>2];c[m>>2]=(c[m>>2]|0)+1;c[l
x3e;>2]=(c[l>>2]|0)+4;p=(c[j>>2]|0)+-1|0;c[j>>2]=p}while((p|0)!=0);c[k>>2]=(c[k>
;>2]|0)+-1}c[c[l>>2]>>2]=0;c[f>>2]=c[(c[h>>2]|0)+32>>2];p=c[f>>
2]|0;i=n;return p|0}function ik(a){a=a|0;var b=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+8|0;e=g+4|0;f=g;c[b>>2]=a;c[b>>
;2]=(c[b>>2]|0)+4;c[e>>2]=(d[(c[b>>2]|0)+-4>>0]|0)<<24|(d[(c[b>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[b>>2]|0)+-4+2>>0]|0)<<8|(d[(c[b>>2]|0)+-4+3
x3e;>0]|0)<<0;c[f>>2]=0;c[b>>2]=(c[b>>2]|0)+3;while(1){if((c[e>>2]|0)>
;>>0<=0)break;c[f>>2]=(c[f>>2]|0)+(1+(d[c[b>>2]>>0]|0));c[b>>2]=(
c[b>>2]|0)+4;c[e>>2]=(c[e>>2]|0)+-1}i=g;return c[f>>2]|0}function jk(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;B=i;i=i+96|0;e=B+84|0;f=B+80|0;y=B+
76|0;r=B+72|0;x=B+68|0;s=B+64|0;q=B+60|0;A=B+56|0;j=B+52|0;u=B+48|0;k=B+44|0;w=B+40|0;m=B+36|0;o=B+32|0;g=B+28|0;h=B+24|0;t=B+20
|0;v=B+16|0;n=B+12|0;p=B+8|0;z=B+4|0;l=B;c[e>>2]=a;c[f>>2]=b;c[y>>2]=(c[e>>2]|0)+2;c[y
x3e;>2]=(c[y>>2]|0)+4;c[r>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[y>
x3e;2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>>2]|
0)+-4+3>>0]|0)<<0;c[y>>2]=(c[y>>2]|0)+4;c[x>>2]=(d[(c[y>>2]|0)+-4>
;>0]|0)<<24|(d[(c[y>>2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>
;0]|0)<<8|(d[(c[y>>2]|0)+-4+3>>0]|0)<<0;if(!((c[r>>2]|0)>>>0<
;=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>2]|0)|0)>>>0?(c[r>>2]|0)>>>
;0>=(10+((c[x>>2]|0)*11|0)|0)>>>0:0))sc(c[f>>2]|0,8);c[q>>2]=1;c[s>>
2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[x>>2]|0)>>>0)break;c[y>>2]=(
c[y>>2]|0)+3;c[A>>2]=(d[(c[y>>2]|0)+-3>>0]|0)<<16|(d[(c[y>>2]|0)+-3+
1>>0]|0)<<8|(d[(c[y>>2]|0)+-3+2>>0]|0)<<0;c[y>>2]=(c[y>>2]|
0)+4;c[j>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[y>>2]|0)+-4+1>>0]|0)
x3c;<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>>2]|0)+-4+3>>0]|0)<<
;0;c[y>>2]=(c[y>>2]|0)+4;c[u>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[
y>>2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>
x3e;2]|0)+-4+3>>0]|0)<<0;if(!((c[j>>2]|0)>>>0<(c[r>>2]|0)>>
;>0?(c[u>>2]|0)>>>0<(c[r>>2]|0)>>>0:0))sc(c[f>>2]|0,8);if((
c[A>>2]|0)>>>0<(c[q>>2]|0)>>>0)sc(c[f>>2]|0,8);c[q>>2
]=(c[A>>2]|0)+1;a:do if(c[j>>2]|0){c[k>>2]=(c[e>>2]|0)+(c[j>>2]|0);c[k>
x3e;2]=(c[k>>2]|0)+4;c[w>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4
+3>>0]|0)<<0;c[o>>2]=0;if(((c[k>>2]|0)+(c[w>>2]<<2)|0)>>
x3e;0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[m>>2]=0;while(1){
if((c[m>>2]|0)>>>0>=(c[w>>2]|0)>>>0)break a;c[k>>2]=(c[k>
x3e;2]|0)+3;c[g>>2]=(d[(c[k>>2]|0)+-3>>0]|0)<<16|(d[(c[k>>2]|0)+-3+1>>
;0]|0)<<8|(d[(c[k>>2]|0)+-3+2>>0]|0)<<0;b=c[k>>2]|0;c[k>>2]=b+1;c[h
x3e;>2]=d[b>>0];if(((c[g>>2]|0)+(c[h>>2]|0)|0)>>>0>=1114112)sc(c[f>
x3e;2]|0,8);if((c[g>>2]|0)>>>0<(c[o>>2]|0)>>>0)sc(c[f>>2]|0,8);
c[o>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+1}}while(0);b:do if(c[u
x3e;>2]|0){c[t>>2]=(c[e>>2]|0)+(c[u>>2]|0);c[t>>2]=(c[t>>2]|0)+4;c[v>
;>2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16
|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-4+3>>0]|0)<<0;c[p>
;>2]=0;if(c[v>>2]<<2>>>0>((c[(c[f>>2]|0)+4>>2]|0)-(c[t>>
;2]|0)|0)>>>0)sc(c[f>>2]|0,8);c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0
x3e;=(c[v>>2]|0)>>>0)break b;c[t>>2]=(c[t>>2]|0)+3;c[z>>2]=(d[(c[t>
x3e;2]|0)+-3>>0]|0)<<16|(d[(c[t>>2]|0)+-3+1>>0]|0)<<8|(d[(c[t>>2]|0)+-
3+2>>0]|0)<<0;c[t>>2]=(c[t>>2]|0)+2;c[l>>2]=(((d[(c[t>>2]|0)+-2>
;>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c
[z>>2]|0)>>>0>=1114112)sc(c[f>>2]|0,8);if((c[z>>2]|0)>>>0<(
c[p>>2]|0)>>>0)sc(c[f>>2]|0,8);c[p>>2]=(c[z>>2]|0)+1;if((c[(c[f>>
;2]|0)+8>>2]|0)>>>0>=1?(c[l>>2]|0)>>>0>=(c[(c[f>>2]|0)+172
>>2]|0)>>>0:0)sc(c[f>>2]|0,16);c[n>>2]=(c[n>>2]|0)+1}}while(0);c[s>
x3e;2]=(c[s>>2]|0)+1}i=B;return 0}function kk(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[f>>2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=14;c[c[e>>2]>
;>2]=-1;i=d;return 0}function lk(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;m=k+20|0;l=k
+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[m>>2]=a;c[l>>2]=b;c[f>>2]=d;c[g>>2]=e;c[j>>
;2]=mk(c[m>>2]|0,c[l>>2]|0)|0;if(!(c[j>>2]|0)){c[h>>2]=142;m=c[h>>2]|0;i=k;return
m|0}if(c[g>>2]|0)c[c[g>>2]>>2]=c[(c[j>>2]|0)+12>>2];c[h>>2]=Kc(c[f
x3e;>2]|0,c[(c[j>>2]|0)+8>>2]|0)|0;m=c[h>>2]|0;i=k;return m|0}function mk(a,b){a=a|0;b=b|0;var
d=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;g=j+16|0;k=j+12|0;d=j+8|0;h=j+4|0;f=j;c[k>>2]=a;c[d>>2]=b;c[h>>
;2]=c[(c[k>>2]|0)+156>>2];c[f>>2]=(c[h>>2]|0)+((e[(c[k>>2]|0)+152>>1
]|0)<<4);while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>>0){d=7;break
}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)?c[(c[h>>2]|0)+12>>2]|0:0){d=5;break}c[h>
;>2]=(c[h>>2]|0)+16}if((d|0)==5){c[g>>2]=c[h>>2];k=c[g>>2]|0;i=j;return k|0}else if
((d|0)==7){c[g>>2]=0;k=c[g>>2]|0;i=j;return k|0}return 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,r=0,s=0;q=i;i=i+48|0;g=q+40|0;h=q+36|0;j=q+32|0;k=q+28|0;s=q+24|0;r=q+20|0;m=q+16|
0;n=q+12|0;p=q+8|0;o=q+4|0;l=q;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[s>>2]=e;c[r>>2]=
f;c[n>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+4>>2];c[s>>2]=c[s>>2];c[r>
x3e;2]=c[r>>2];c[p>>2]=c[(c[j>>2]|0)+532>>2];do if(!(c[p>>2]|0)){c[p>>
;2]=Ud(c[n>>2]|0,11340)|0;if(c[p>>2]|0){c[(c[j>>2]|0)+532>>2]=c[p>>2];c[(c[j
x3e;>2]|0)+508>>2]=c[c[p>>2]>>2];break}c[g>>2]=3;s=c[g>>2]|0;i=q;return s
|0}while(0);c[o>>2]=c[(c[j>>2]|0)+96>>2];c[l>>2]=Vd(c[o>>2]|0,71003)|0;c[(c[j
x3e;>2]|0)+536>>2]=c[l>>2];c[m>>2]=ok(c[h>>2]|0,c[j>>2]|0)|0;if(c[m>
x3e;2]|0){c[g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}if((c[k>>2]|0)<0)c[k>>
;2]=0;if((c[k>>2]|0)>=(c[(c[j>>2]|0)+132+8>>2]|0)){c[g>>2]=6;s=c[g>>2]|0;
i=q;return s|0}s=Kc(c[h>>2]|0,c[(c[(c[j>>2]|0)+132+12>>2]|0)+(c[k>>2]<<2)>
;>2]|0)|0;c[m>>2]=s;if(s|0){c[g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}c[m>>
;2]=Ya[c[(c[p>>2]|0)+132>>2]&127](c[j>>2]|0,c[h>>2]|0)|0;if(c[m>>2]|0){c[
g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}else{c[c[j>>2]>>2]=c[(c[j>>
2]|0)+132+8>>2];c[(c[j>>2]|0)+4>>2]=c[k>>2];c[g>>2]=c[m>>2];s=c[g>
;>2]|0;i=q;return s|0}return 0}function ok(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;m=i;i=i+32|0;g=m+28|0;h
=m+24|0;j=m+20|0;d=m+16|0;k=m+12|0;f=m+8|0;e=m+4|0;l=m;c[h>>2]=a;c[j>>2]=b;c[d>>2]=c[(c[h>>
;2]|0)+28>>2];c[(c[j>>2]|0)+132>>2]=0;c[(c[j>>2]|0)+132+4>>2]=0;c[(c[j>
x3e;2]|0)+132+8>>2]=0;c[e>>2]=Mc(c[h>>2]|0)|0;c[f>>2]=Oc(c[h>>2]|0,k)|0;if(c[k
>>2]|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}if((c[f>>2]|0)!=65536&(
c[f>>2]|0)!=1953784678&(c[f>>2]|0)!=1330926671&(c[f>>2]|0)!=1953658213&(c[f>
x3e;2]|0)!=1954115633&(c[f>>2]|0)!=131072){c[g>>2]=2;l=c[g>>2]|0;i=m;return l|0}c[(c[j>
x3e;2]|0)+132>>2]=1953784678;do if((c[f>>2]|0)==1953784678){f=le(c[h>>2]|0,7544,(c[j>>2]|
0)+132|0)|0;c[k>>2]=f;if(f|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}f=hc(c[d>
x3e;2]|0,4,0,c[(c[j>>2]|0)+132+8>>2]|0,0,k)|0;c[(c[j>>2]|0)+132+12>>2]=f;if(c[k>>
;2]|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}f=ee(c[h>>2]|0,c[(c[j>>2]|0)+
132+8>>2]<<2)|0;c[k>>2]=f;if(f|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return
l|0}c[l>>2]=0;while(1){b=c[h>>2]|0;if((c[l>>2]|0)>=(c[(c[j>>2]|0)+132+8>>
;2]|0))break;f=je(b)|0;c[(c[(c[j>>2]|0)+132+12>>2]|0)+(c[l>>2]<<2)>>2]=f;c[l
x3e;>2]=(c[l>>2]|0)+1}ge(b)}else{c[(c[j>>2]|0)+132+4>>2]=65536;c[(c[j>>2]|0)+132+8
x3e;>2]=1;l=bc(c[d>>2]|0,4,k)|0;c[(c[j>>2]|0)+132+12>>2]=l;if(!(c[k>>2]|0)){c[c[(c[
j>>2]|0)+132+12>>2]>>2]=c[e>>2];break}c[g>>2]=c[k>>2];l=c[g>>
;2]|0;i=m;return l|0}while(0);c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}function pk(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;I=i;i=i+112|0;o=I+92|0;F=I+88|0;J=I+84|0;l=I+80|0;m=I+76|0;G=I+72|0;x=I+68|0;r=I+103|0;u=I+102|0;s=I+101|0;t=I+100|0;D=I+64|
0;n=I+60|0;H=I+56|0;q=I+52|0;v=I+48|0;p=I+44|0;B=I+40|0;E=I+36|0;w=I+32|0;A=I+98|0;y=I+96|0;C=I+4|0;z=I;c[o>>2]=f;c[F
x3e;>2]=g;c[J>>2]=h;c[l>>2]=j;c[m>>2]=k;a[s>>0]=0;a[t>>0]=0;c[D>>
;2]=c[(c[F>>2]|0)+532>>2];c[J>>2]=c[J>>2];c[n>>2]=0;while(1){if((c[n>>
;2]|0)>=(c[l>>2]|0))break;if((c[(c[m>>2]|0)+(c[n>>2]<<3)>>2]|0)!=1768386662
){if((c[(c[m>>2]|0)+(c[n>>2]<<3)>>2]|0)==1768386675)a[t>>0]=1}else a[s>
x3e;0]=1;c[n>>2]=(c[n>>2]|0)+1}if(!(c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]|0)?!(mk
(c[F>>2]|0,1735162214)|0):0)l=(mk(c[F>>2]|0,1128678944)|0)!=0;else l=1;a[r>>0]=l&1;a[u>
x3e;0]=0;if((a[r>>0]|0)==0?c[(c[D>>2]|0)+84>>2]|0:0){c[G>>2]=Ya[c[(c[D>>2]|0)+
84>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;a[u>>0]=((c[G>>2]|0)!=0^1)&1}if((
a[u>>0]|0)==0?(c[G>>2]=Ya[c[(c[D>>2]|0)+32>>2]&127](c[F>>2]|0,c[o>
x3e;2]|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if(!(e[(c[F>>2]|0)+160+18>>1]|0)){c
[G>>2]=8;J=c[G>>2]|0;i=I;return J|0}c[G>>2]=Ya[c[(c[D>>2]|0)+44>>2]&127](
c[F>>2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+40>>2]&127](c[F>>
;2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+56>>2]&127](c[F>>2]|0,c[o>
;>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+52>>2]&127](c[F>>2]|0,c[o>>2]|0)|
0;c[x>>2]=c[G>>2];if(!(a[u>>0]|0)){c[G>>2]=Oa[c[(c[D>>2]|0)+36>>2]
x26;63](c[F>>2]|0,c[o>>2]|0,0)|0;do if(c[G>>2]|0){if((c[G>>2]|0)==142){if((c[(c[F>
x3e;2]|0)+148>>2]|0)==1953658213){a[r>>0]=0;c[G>>2]=0;break}c[G>>2]=143;if(c[(c[(c[F>
;>2]|0)+128>>2]|0)+52>>2]|0?c[(c[c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]>
x3e;2]|0)+8>>2]|0:0){b[(c[F>>2]|0)+216+34>>1]=0;c[G>>2]=0}}}else{c[G>>2]=Oa[c[(
c[D>>2]|0)+136>>2]&63](c[F>>2]|0,c[o>>2]|0,0)|0;if(((c[G>>2]|0)==142?(c[G
>>2]=147,c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]|0):0)?c[(c[c[(c[(c[F>>2]|0)+128>
;>2]|0)+52>>2]>>2]|0)+8>>2]|0:0){b[(c[F>>2]|0)+216+34>>1]=0;c[G>>
;2]=0}}while(0);if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}c[G>>2]=Oa[c[(c[D>>2]|0)+36>
;>2]&63](c[F>>2]|0,c[o>>2]|0,1)|0;if((c[G>>2]|0)==0?(c[G>>2]=Oa[c[(c[D>
x3e;2]|0)+136>>2]&63](c[F>>2]|0,c[o>>2]|0,1)|0,(c[G>>2]|0)==0):0)a[(c[F>>
2]|0)+296>>0]=1;if((c[G>>2]|0)!=0&(c[G>>2]|0)!=142){J=c[G>>2]|0;i=I;return J|0}c[G
x3e;>2]=Ya[c[(c[D>>2]|0)+48>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;if(c[G>>
2]|0)b[(c[F>>2]|0)+368>>1]=-1}do if(c[(c[D>>2]|0)+140>>2]|0?(c[G>>2]=Ya[c[(c[D
>>2]|0)+140>>2]&127](c[F>>2]|0,c[o>>2]|0)|0,c[G>>2]|0):0)if((c[G>>
;2]|0)==142){c[G>>2]=0;break}else{J=c[G>>2]|0;i=I;return J|0}while(0);c[G>>2]=Ya[c[(c[D>>
;2]|0)+80>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;do if(c[G>>2]|0)if((c[G>>2]|0)!=
142){J=c[G>>2]|0;i=I;return J|0}else{c[(c[F>>2]|0)+556>>2]=0;break}while(0);c[G>>2]=Ya[c
[(c[D>>2]|0)+76>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>
x3e;2]|0)+72>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;c[(c[F>>2]|0)+16>>2]=e[(c[F
x3e;>2]|0)+260+4>>1];c[(c[F>>2]|0)+20>>2]=0;c[(c[F>>2]|0)+24>>2]=0;if((e[(
c[F>>2]|0)+368>>1]|0)!=65535?e[(c[F>>2]|0)+368+64>>1]&256|0:0){if((a[s>>0
]|0)==0?(c[G>>2]=qk(c[F>>2]|0,16,(c[F>>2]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0
;i=I;return J|0}if((c[(c[F>>2]|0)+20>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,1,(c[F>>2
]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if((a[t>>0]|0)==0?(c[G>>2]=qk(c[F
x3e;>2]|0,17,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if((c[(c[F>>
;2]|0)+24>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,2,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){
J=c[G>>2]|0;i=I;return J|0}}else{c[G>>2]=qk(c[F>>2]|0,21,(c[F>>2]|0)+20|0)|0;if(c[G>
;>2]|0){J=c[G>>2]|0;i=I;return J|0}if(!(a[s>>0]|0?1:(c[(c[F>>2]|0)+20>>2]|0)!=0)?(c
[G>>2]=qk(c[F>>2]|0,16,(c[F>>2]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return
J|0}if((c[(c[F>>2]|0)+20>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,1,(c[F>>2]|0)+20|0)|
0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}c[G>>2]=qk(c[F>>2]|0,22,(c[F>>2]|0)+
24|0)|0;if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}if(!(a[t>>0]|0?1:(c[(c[F>>2]|0)+24>
;>2]|0)!=0)?(c[G>>2]=qk(c[F>>2]|0,17,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>
x3e;2]|0;i=I;return J|0}if((c[(c[F>>2]|0)+24>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,2,(c[F>
;>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}}c[H>>2]=c[F>>2];c[q>
x3e;2]=c[(c[H>>2]|0)+8>>2];if((d[r>>0]|0)==1)c[q>>2]=c[q>>2]|1;c[q>>
2]=c[q>>2]|24;if((c[x>>2]|0)==0?(c[(c[F>>2]|0)+468>>2]|0)!=196608:0)c[q>>2]=c[
q>>2]|512;if(c[(c[F>>2]|0)+468+12>>2]|0)c[q>>2]=c[q>>2]|4;if(a[(c[F>>
;2]|0)+296>>0]|0)c[q>>2]=c[q>>2]|32;if(c[(c[F>>2]|0)+784>>2]|0)c[q>>
2]=c[q>>2]|64;if((mk(c[F>>2]|0,1735162214)|0?mk(c[F>>2]|0,1719034226)|0:0)?mk(c[F>>2]|0,
1735811442)|0:0)c[q>>2]=c[q>>2]|256;c[(c[H>>2]|0)+8>>2]=c[q>>2];c[q>>
;2]=0;if((d[r>>0]|0)==1?(e[(c[F>>2]|0)+368>>1]|0)!=65535:0){if(!(!(e[(c[F>>2]|0)+368+64
x3e;>1]&512|0)?!(e[(c[F>>2]|0)+368+64>>1]&1|0):0))c[q>>2]=c[q>>2]|1;if(e[(
c[F>>2]|0)+368+64>>1]&32|0)c[q>>2]=c[q>>2]|2}else{if(e[(c[F>>2]|0)+160+44
>>1]&1|0)c[q>>2]=c[q>>2]|2;if(e[(c[F>>2]|0)+160+44>>1]&2|0)c[q>
x3e;2]=c[q>>2]|1}c[(c[H>>2]|0)+12>>2]=c[q>>2];tk(c[F>>2]|0)|0;c[v>>2
]=0;while(1){if((c[v>>2]|0)>=(c[(c[H>>2]|0)+36>>2]|0))break;c[p>>2]=c[(c[(c[H>
x3e;2]|0)+40>>2]|0)+(c[v>>2]<<2)>>2];J=uk(e[(c[p>>2]|0)+8>>1]|0,e[(c
[p>>2]|0)+10>>1]|0)|0;c[(c[p>>2]|0)+4>>2]=J;c[v>>2]=(c[v>>2]|0)+1}c[
E>>2]=c[(c[F>>2]|0)+612>>2];do if((c[E>>2]|0)>>>0>0){c[w>>
2]=c[(c[(c[F>>2]|0)+104>>2]|0)+28>>2];b[A>>1]=b[(c[F>>2]|0)+160+18>>
1]|0;b[y>>1]=b[(c[F>>2]|0)+368+2>>1]|0;if(!((e[A>>1]|0)!=0?(e[(c[F>>2]|0)+368
x3e;>1]|0)!=65535:0)){b[y>>1]=0;b[A>>1]=1}J=hc(c[w>>2]|0,16,0,c[E>>2]|0,0,G)|0;c[(c
[H>>2]|0)+32>>2]=J;if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}c[B>>2]=0;while(1){
m=c[H>>2]|0;if((c[B>>2]|0)>>>0>=(c[E>>2]|0)>>>0){l=103;break}c[
z>>2]=(c[m+32>>2]|0)+(c[B>>2]<<4);c[G>>2]=Oa[c[(c[D>>2]|0)+152>
x3e;2]&63](c[F>>2]|0,c[B>>2]|0,C)|0;if(c[G>>2]|0){l=112;break}b[c[z>>2]>>
1]=c[C+20>>2]>>6;J=_(b[y>>1]|0,e[C>>1]|0)|0;b[(c[z>>2]|0)+2>>1]=(J+((
e[A>>1]|0)/2|0)|0)/(e[A>>1]|0)|0;c[(c[z>>2]|0)+8>>2]=e[C>>1]<<6;c[(c
[z>>2]|0)+12>>2]=e[C+2>>1]<<6;c[(c[z>>2]|0)+4>>2]=e[C+2>>1
]<<6;c[B>>2]=(c[B>>2]|0)+1}if((l|0)==103){J=m+8|0;c[J>>2]=c[J>>2]|2;c[(c[H>
;>2]|0)+28>>2]=c[E>>2];break}else if((l|0)==112){J=c[G>>2]|0;i=I;return J|0}}while(0);if((c[(
c[H>>2]|0)+8>>2]&2|0)==0?(c[(c[H>>2]|0)+8>>2]&1|0)==0:0){J=(c[H>>2]|
0)+8|0;c[J>>2]=c[J>>2]|1}if(!(c[(c[H>>2]|0)+8>>2]&1)){J=c[G>>2]|0;i=I;return
J|0}c[(c[H>>2]|0)+52>>2]=b[(c[F>>2]|0)+160+36>>1];c[(c[H>>2]|0)+52+4>>
;2]=b[(c[F>>2]|0)+160+38>>1];c[(c[H>>2]|0)+52+8>>2]=b[(c[F>>2]|0)+160+40>
x3e;1];c[(c[H>>2]|0)+52+12>>2]=b[(c[F>>2]|0)+160+42>>1];b[(c[H>>2]|0)+68>
x3e;1]=b[(c[F>>2]|0)+160+18>>1]|0;b[(c[H>>2]|0)+70>>1]=b[(c[F>>2]|0)+216+4>
;>1]|0;b[(c[H>>2]|0)+72>>1]=b[(c[F>>2]|0)+216+6>>1]|0;b[(c[H>>2]|0)+74>
;>1]=(b[(c[H>>2]|0)+70>>1]|0)-(b[(c[H>>2]|0)+72>>1]|0)+(b[(c[F>>2]|0)+216
+8>>1]|0);b[(c[H>>2]|0)+76>>1]=b[(c[F>>2]|0)+216+10>>1]|0;if(d[(c[F>>
;2]|0)+296>>0]|0)l=e[(c[F>>2]|0)+300+10>>1]|0;else l=b[(c[H>>2]|0)+74>>1]|0;b[(
c[H>>2]|0)+78>>1]=l;b[(c[H>>2]|0)+80>>1]=(b[(c[F>>2]|0)+468+8>>1]|0)-((
b[(c[F>>2]|0)+468+10>>1]|0)/2|0);b[(c[H>>2]|0)+82>>1]=b[(c[F>>2]|0)+468+10>
;>1]|0;J=c[G>>2]|0;i=I;return J|0}function qk(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,r=
0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=i;i=i+64|0;h=z+48|0;j=z+54|0;k=z+44|0;t=z+40|0;m=z+36|0;w=z+32|0;u=z+52|0;v=z+28|0;n=z+24|0;
p=z+20|0;o=z+16|0;r=z+12|0;q=z+8|0;s=z+56|0;l=z+4|0;x=z;c[h>>2]=d;b[j>>1]=f;c[k>>2]=g;c[t>>
;2]=c[(c[h>>2]|0)+100>>2];c[m>>2]=0;c[w>>2]=0;c[n>>2]=-1;c[p>>2]=-1;
c[o>>2]=-1;c[r>>2]=-1;c[q>>2]=-1;a[s>>0]=0;c[v>>2]=c[(c[h>>2]|0)+348
+12>>2];b[u>>1]=0;while(1){if((e[u>>1]|0)>=(e[(c[h>>2]|0)+344>>1]|0))break
;a:do if((e[(c[v>>2]|0)+6>>1]|0)==(e[j>>1]|0)?(e[(c[v>>2]|0)+8>>1]|0)>0:0
)switch(e[c[v>>2]>>1]|0){case 2:case 0:{c[q>>2]=e[u>>1];break a}case 1:{if(!(e[(c[v>
;>2]|0)+4>>1]|0)){c[o>>2]=e[u>>1];break a}if(e[(c[v>>2]|0)+2>>1]|0)break
a;c[p>>2]=e[u>>1];break a}case 3:{if((c[r>>2]|0)!=-1?(e[(c[v>>2]|0)+4>>1]&
;1023|0)!=9:0)break a;switch(e[(c[v>>2]|0)+2>>1]|0){case 10:case 1:case 0:break;default:break a}a[s>>
;0]=(e[(c[v>>2]|0)+4>>1]&1023|0)==9;c[r>>2]=e[u>>1];break a}default:break a}while(0
);b[u>>1]=(b[u>>1]|0)+1<<16>>16;c[v>>2]=(c[v>>2]|0)+20}c[n>>
;2]=c[p>>2];if((c[o>>2]|0)>=0)c[n>>2]=c[o>>2];c[l>>2]=0;b:do if((c[r>
;>2]|0)>=0?(c[n>>2]|0)<0|(a[s>>0]|0)!=0:0){c[v>>2]=(c[(c[h>>2]|0)+348+12
x3e;>2]|0)+((c[r>>2]|0)*20|0);switch(e[(c[v>>2]|0)+2>>1]|0){case 0:case 1:{c[l>>2]=
106;break b}case 10:{c[l>>2]=106;break b}default:break b}}else y=23;while(0);do if((y|0)==23){if((c[n>>2]|0)
x3e;=0){c[v>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[n>>2]|0)*20|0);c[l>>2]=107;break
}if((c[q>>2]|0)>=0){c[v>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[q>>2]|0)*20|
0);c[l>>2]=106}}while(0);if(!((c[v>>2]|0)!=0&(c[l>>2]|0)!=0)){x=c[w>>2]|0;y=c[k>
;>2]|0;c[y>>2]=x;y=c[m>>2]|0;i=z;return y|0}do if(!(c[(c[v>>2]|0)+16>>2]|0)){c[x>
;>2]=c[(c[h>>2]|0)+348+16>>2];y=hc(c[t>>2]|0,1,0,e[(c[v>>2]|0)+8>>1]|0,0,
m)|0;c[(c[v>>2]|0)+16>>2]=y;if(((c[m>>2]|0)==0?(y=Kc(c[x>>2]|0,c[(c[v>>2]|0)+12
>>2]|0)|0,c[m>>2]=y,(y|0)==0):0)?(y=Rc(c[x>>2]|0,c[(c[v>>2]|0)+16>>2]|0,e[(c[v
>>2]|0)+8>>1]|0)|0,c[m>>2]=y,(y|0)==0):0)break;Fb(c[t>>2]|0,c[(c[v>>2]|0)+16
x3e;>2]|0);c[(c[v>>2]|0)+16>>2]=0;b[(c[v>>2]|0)+8>>1]=0;c[w>>2]=0;x=c[w
x3e;>2]|0;y=c[k>>2]|0;c[y>>2]=x;y=c[m>>2]|0;i=z;return y|0}while(0);c[w>>2]=Ya[c[l
x3e;>2]&127](c[v>>2]|0,c[t>>2]|0)|0;x=c[w>>2]|0;y=c[k>>2]|0;c[y>>2]=
x;y=c[m>>2]|0;i=z;return y|0}function rk(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,q=0;n=i;i=i+48|0;g=n
+32|0;q=n+28|0;p=n+24|0;m=n+20|0;j=n+16|0;h=n+12|0;k=n+8|0;l=n+4|0;o=n;c[q>>2]=b;c[p>>2]=f;c[m>>2]=
0;c[l>>2]=c[(c[q>>2]|0)+16>>2];c[j>>2]=((e[(c[q>>2]|0)+8>>1]|0)>
;>>0)/2|0;c[m>>2]=hc(c[p>>2]|0,1,0,(c[j>>2]|0)+1|0,0,o)|0;if(c[o>>2]|0){c[g>
;>2]=0;q=c[g>>2]|0;i=n;return q|0}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=(
c[j>>2]|0)>>>0)break;c[l>>2]=(c[l>>2]|0)+2;q=(((d[(c[l>>2]|0)+-2>>
;0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[h>
x3e;2]=q;c[h>>2]=(c[h>>2]|0)>>>0<32|(c[h>>2]|0)>>>0>127?63
:q;a[(c[m>>2]|0)+(c[k>>2]|0)>>0]=c[h>>2];c[k>>2]=(c[k>>2]|0)+1}a[(c[
m>>2]|0)+(c[j>>2]|0)>>0]=0;c[g>>2]=c[m>>2];q=c[g>>2]|0;i=n;return q|
0}function sk(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,q=0;n=i;i=i+48|0;g=n+32|0;q=n+28|0;p=n+24|0;m=n+20|0;j=n+
16|0;h=n+12|0;k=n+8|0;l=n+4|0;o=n;c[q>>2]=b;c[p>>2]=f;c[m>>2]=0;c[l>>2]=c[(c[q>>
;2]|0)+16>>2];c[j>>2]=e[(c[q>>2]|0)+8>>1];c[m>>2]=hc(c[p>>2]|0,1,0,(
c[j>>2]|0)+1|0,0,o)|0;if(c[o>>2]|0){c[g>>2]=0;q=c[g>>2]|0;i=n;return q|0}c[k>>
2]=0;while(1){if((c[k>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;q=c[l>>
2]|0;c[l>>2]=q+1;q=d[q>>0]|0;c[h>>2]=q;c[h>>2]=(c[h>>2]|0)>>>0
x3c;32|(c[h>>2]|0)>>>0>127?63:q;a[(c[m>>2]|0)+(c[k>>2]|0)>>0]=c[h>
;>2];c[k>>2]=(c[k>>2]|0)+1}a[(c[m>>2]|0)+(c[j>>2]|0)>>0]=0;c[g>>
;2]=c[m>>2];q=c[g>>2]|0;i=n;return q|0}function tk(a){a=a|0;var f=0,g=0,h=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,A=0;A=i;i=i+224|0;y=4;x=Fs(40)|0;c[x>>2]=0;s=A+216|0;t=A+212|0;l=A+200|0;p=A+196|0;r=A+192
|0;u=A+188|0;m=A+184|0;w=A+8|0;q=A+4|0;v=A;j=c[a+500>>2]|0;k=j+(c[a+504>>2]|0)|0;c[t>>2]=j;if(c[t
x3e;>2]|0?((c[t>>2]|0)+4|0)>>>0<=k>>>0:0){c[t>>2]=(c[t>>2]|
0)+2;f=c[t>>2]|0;if((((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535|0){c[t>>2]=f+-2;z=8;Gs(x|0);i=A;return z|0}c[t>>2]=
f+2;c[s>>2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>
;>0]|0)&65535)<<0)&65535;while(1){if((c[s>>2]|0)>>>0<=0)break;if(((c[t>
;>2]|0)+8|0)>>>0>k>>>0)break;c[t>>2]=(c[t>>2]|0)+2;b[l+8>>
1]=((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535
)<<0;c[t>>2]=(c[t>>2]|0)+2;b[l+10>>1]=((d[(c[t>>2]|0)+-2>>0]|0)&
;65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0;c[l>>2]=a;c[l+4>>
;2]=0;c[t>>2]=(c[t>>2]|0)+4;f=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>
2]|0)+-4+1>>0]|0)<<16|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-
4+3>>0]|0)<<0;if(f|0?f>>>0<=((c[a+504>>2]|0)-2|0)>>>0:0){c[p>
;>2]=j+f;c[r>>2]=(((d[c[p>>2]>>0]|0)&65535)<<8|((d[(c[p>>2]|0)+1>
;>0]|0)&65535)<<0)&65535;c[u>>2]=3080;while(1){if(!(c[c[u>>2]>>2]|0))break
;c[m>>2]=c[c[u>>2]>>2];if((c[(c[m>>2]|0)+40>>2]|0)==(c[r>>2]|0)){z=14
;break}c[u>>2]=(c[u>>2]|0)+4}a:do if((z|0)==14){z=0;c[q>>2]=0;n=0;qa(10,w|0,c[p>>2]|0,k|
0,0);f=n;n=0;if((f|0)!=0&(o|0)!=0){g=Rs(c[f>>2]|0,x|0,y|0)|0;if(!g)ta(f|0,o|0);C=o}else g=-1;if((g|0)!=1){c[w+172
>>2]=e[a+260+4>>1];x=Qs(w+16|0,1,x|0,y|0)|0;y=C;n=0;f=n;n=0;if((f|0)!=0&(o|0)!=0){g=Rs(c[f>>2
]|0,x|0,y|0)|0;if(!g)ta(f|0,o|0);C=o}else g=-1;if((g|0)!=1)f=0;else f=C}else f=C;while(1){if(!f){n=0;f=oa(c[(c[m>>2]|0
)+44>>2]|0,c[p>>2]|0,w|0)|0;g=n;n=0;if((g|0)!=0&(o|0)!=0){h=Rs(c[g>>2]|0,x|0,y|0)|0;if(!h)ta(
g|0,o|0);C=o}else h=-1;if((h|0)==1){f=C;continue}c[q>>2]=f}if(c[w+12>>2]|0)break a;n=0;f=ma(23,c[m>>
;2]|0,c[p>>2]|0,l|0,v|0)|0;g=n;n=0;if((g|0)!=0&(o|0)!=0){h=Rs(c[g>>2]|0,x|0,y|0)|0;if(!h)ta(g|0,o|0);C=
o}else h=-1;if((h|0)==1)f=C;else break}if(!f)c[(c[v>>2]|0)+20>>2]=c[q>>2]}while(0)}c[s>>
2]=(c[s>>2]|0)+-1}z=0;Gs(x|0);i=A;return z|0}z=8;Gs(x|0);i=A;return z|0}function uk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g
=0,h=0,j=0;j=i;i=i+32|0;g=j+16|0;d=j+12|0;e=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[h>>2]=3120;c[f
>>2]=(c[h>>2]|0)+132;while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>
x3e;>0){d=8;break}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)){if((c[(c[h>>2]|0)+4>>
;2]|0)==(c[e>>2]|0)){d=6;break}if((c[(c[h>>2]|0)+4>>2]|0)==-1){d=6;break}}c[h>>2]=(c[h
x3e;>2]|0)+12}if((d|0)==6){c[g>>2]=c[(c[h>>2]|0)+8>>2];h=c[g>>2]|0;i=j;return h|0}else
if((d|0)==8){c[g>>2]=0;h=c[g>>2]|0;i=j;return h|0}return 0}function vk(d){d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i
;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=d;if(!(c[e>>2]|0)){i=j;return}c[f>>2]=c[(c[e>
x3e;2]|0)+100>>2];c[g>>2]=c[(c[e>>2]|0)+532>>2];if(c[g>>2]|0){if(c[(c[g>
x3e;2]|0)+116>>2]|0)Va[c[(c[g>>2]|0)+116>>2]&63](c[e>>2]|0);if(c[(c[g>>2]|
0)+144>>2]|0)Va[c[(c[g>>2]|0)+144>>2]&63](c[e>>2]|0)}wk(c[e>>2]|0);xk(c[e
>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+132+12>>2]|0);c[(c[e>>2]|0)+132+12>>
;2]=0;c[(c[e>>2]|0)+132+8>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+156>>2]|0);c[(c[e
x3e;>2]|0)+156>>2]=0;b[(c[e>>2]|0)+152>>1]=0;c[h>>2]=c[(c[e>>2]|0)+104>
;>2];fe(c[h>>2]|0,(c[e>>2]|0)+500|0);c[(c[e>>2]|0)+504>>2]=0;Fb(c[f>>2]|0
,c[(c[e>>2]|0)+216+36>>2]|0);c[(c[e>>2]|0)+216+36>>2]=0;Fb(c[f>>2]|0,c[(c[e>
;>2]|0)+216+40>>2]|0);c[(c[e>>2]|0)+216+40>>2]=0;if(a[(c[e>>2]|0)+296>>0]|
0){Fb(c[f>>2]|0,c[(c[e>>2]|0)+300+36>>2]|0);c[(c[e>>2]|0)+300+36>>2]=0;Fb(c[f
x3e;>2]|0,c[(c[e>>2]|0)+300+40>>2]|0);c[(c[e>>2]|0)+300+40>>2]=0;a[(c[e>>
2]|0)+296>>0]=0}Fb(c[f>>2]|0,c[(c[e>>2]|0)+548+4>>2]|0);c[(c[e>>2]|0)+548+4>
;>2]=0;b[(c[e>>2]|0)+548+2>>1]=0;if(c[g>>2]|0)Va[c[(c[g>>2]|0)+60>>2]&
;63](c[e>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+20>>2]|0);c[(c[e>>2]|0)+20>>
;2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;Fb(c[f>
x3e;2]|0,c[(c[e>>2]|0)+32>>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[(c[e>>2]|0)+28>
x3e;2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+700>>2]|0);c[(c[e>>2]|0)+700>>2]=0;c[(c[e
x3e;>2]|0)+532>>2]=0;i=j;return}function wk(b){b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=b;c[e>>2]=(c[d>>2]|0)+792;if(!(a[(c[e>>2]|0)+20>>0]|0)){i=g;return}c[f>
x3e;2]=c[(c[d>>2]|0)+104>>2];if(c[c[e>>2]>>2]|0)fe(c[f>>2]|0,c[e>>2]|
0);c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|0)+12>>2]=
0;i=g;return}function xk(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]|0)+104>>2];fe(c[e>>2]|0,(c[d>>2]|0)+772|0);c[(c[d>>2]|0)+776>>2]=0;c[(c[d
x3e;>2]|0)+780>>2]=0;c[(c[d>>2]|0)+784>>2]=0;c[(c[d>>2]|0)+788>>2]=0;i=b;
return}function yk(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[f>
x3e;2]=c[f>>2];b=qc(3252,c[e>>2]|0)|0;i=d;return b|0}function zk(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;s=i;i=i+48|0;g=s+36|0;h=s+32|0;j=s+28|0;k=s+24|0;l=s+20|0;m=s+16|0;n=s+12|0;p=s
+8|0;q=s+4|0;o=s;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;e=c[h>
x3e;2]|0;do if(c[j>>2]|0){c[q>>2]=mk(e,c[j>>2]|0)|0;if(c[q>>2]|0){c[k>>2]=(c[k
>>2]|0)+(c[(c[q>>2]|0)+8>>2]|0);c[o>>2]=c[(c[q>>2]|0)+12>>2];r=6;break
}else{c[n>>2]=142;break}}else{c[o>>2]=c[(c[e+104>>2]|0)+4>>2];r=6}while(0);if((r|0)==6){
if(c[m>>2]|0?(c[c[m>>2]>>2]|0)==0:0){c[c[m>>2]>>2]=c[o>>2];c[g>
x3e;2]=0;r=c[g>>2]|0;i=s;return r|0}if(c[m>>2]|0)c[o>>2]=c[c[m>>2]>>2];c[p>
;>2]=c[(c[h>>2]|0)+104>>2];c[n>>2]=Sc(c[p>>2]|0,c[k>>2]|0,c[l>>
2]|0,c[o>>2]|0)|0}c[g>>2]=c[n>>2];r=c[g>>2]|0;i=s;return r|0}function Ak(a,b){a=a|0;b=b|
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]=a;c[j>>2]=b;switch(c[j>>2]|0){case
0:{c[g>>2]=(c[f>>2]|0)+160;break}case 3:{c[g>>2]=(c[f>>2]|0)+216;break}case 4:{c[g>
x3e;2]=d[(c[f>>2]|0)+296>>0]|0|0?(c[f>>2]|0)+300|0:0;break}case 2:{c[g>>2]=(e[(c[f>
x3e;2]|0)+368>>1]|0|0)==65535?0:(c[f>>2]|0)+368|0;break}case 5:{c[g>>2]=(c[f>>2]|0)+468;
break}case 1:{c[g>>2]=(c[f>>2]|0)+260;break}case 6:{c[g>>2]=c[(c[f>>2]|0)+556>>
;2]|0?(c[f>>2]|0)+556|0:0;break}default:c[g>>2]=0}i=h;return c[g>>2]|0}function Bk(a,b,d,f,g){a=a|
0;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;o=i;i=i+32|0;h=o+20|0;j=o+16|0;k=o+12|0;l=o+8|0;m=o+4|0;n=o;c[j>
x3e;2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=f;c[n>>2]=g;if(!((c[l>>2]|0)!=0&(c[m
>>2]|0)!=0&(c[n>>2]|0)!=0)){c[h>>2]=6;d=c[h>>2]|0;i=o;return d|0}if((c[k>>
;2]|0)>>>0>=(e[(c[j>>2]|0)+152>>1]|0)>>>0){c[h>>2]=142;d=c[h>
;>2]|0;i=o;return d|0}else{c[c[l>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>>
;2]<<4)>>2];c[c[m>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>>
;2]<<4)+8>>2];c[c[n>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>
x3e;2]<<4)+12>>2];c[h>>2]=0;d=c[h>>2]|0;i=o;return d|0}return 0}function Ck(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,z=0,A=0;A=i;i=i+80|0;g=A+72|0;h=A+68|0;r=A+64|0;m=A+60|
0;l=A+56|0;x=A+52|0;s=A+48|0;p=A+44|0;t=A+40|0;n=A+36|0;j=A+32|0;y=A+28|0;w=A+24|0;v=A+20|0;q=A+16|0;u=A+12|0;o=A+8|0;k=A+4|0;z=
A;c[h>>2]=f;c[x>>2]=0;if(c[(c[h>>2]|0)+700>>2]|0){c[g>>2]=c[(c[h>>2]|
0)+700>>2];z=c[g>>2]|0;i=A;return z|0}c[m>>2]=-1;c[l>>2]=-1;c[r>>2]=0;while(1){
if((c[r>>2]|0)>=(e[(c[h>>2]|0)+344>>1]|0|0))break;c[s>>2]=(c[(c[h>>2]|0)+
348+12>>2]|0)+((c[r>>2]|0)*20|0);if((e[(c[s>>2]|0)+6>>1]|0|0)==6?(e[(c[s>>2]|0
)+8>>1]|0|0)>0:0){if(((e[c[s>>2]>>1]|0|0)==3?(e[(c[s>>2]|0)+2>>1]|0|0)==1
:0)?(e[(c[s>>2]|0)+4>>1]|0|0)==1033:0)c[m>>2]=c[r>>2];if(((e[c[s>>2]>>
;1]|0|0)==1?(e[(c[s>>2]|0)+2>>1]|0|0)==0:0)?(e[(c[s>>2]|0)+4>>1]|0|0)==0:0)c[l>>
;2]=c[r>>2]}c[r>>2]=(c[r>>2]|0)+1}do if((c[m>>2]|0)!=-1){c[p>>2]=c[(c[h>
x3e;2]|0)+100>>2];c[t>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[m>>2]|0)*20|0);c[n
x3e;>2]=(e[(c[t>>2]|0)+8>>1]|0|0)/2|0;c[j>>2]=0;c[j>>2]=c[j>>2];c[x>
x3e;2]=bc(c[p>>2]|0,(e[(c[t>>2]|0)+8>>1]|0)+1|0,j)|0;if(!(c[j>>2]|0)){c[y>>2]=
c[(c[h>>2]|0)+348+16>>2];c[w>>2]=c[x>>2];c[v>>2]=c[(c[t>>2]|0)+16>
;>2];z=Kc(c[y>>2]|0,c[(c[t>>2]|0)+12>>2]|0)|0;c[j>>2]=z;if((z|0)==0?(z=ee(c[y>
x3e;2]|0,e[(c[t>>2]|0)+8>>1]|0)|0,c[j>>2]=z,(z|0)==0):0){c[v>>2]=c[(c[y>>2]|0)+
32>>2];while(1){if((c[n>>2]|0)>>>0<=0)break;if(((d[c[v>>2]>>0]|0|0)==
0?(d[(c[v>>2]|0)+1>>0]|0|0)>=32:0)?(d[(c[v>>2]|0)+1>>0]|0|0)<128:0){u=a[(c[v
x3e;>2]|0)+1>>0]|0;z=c[w>>2]|0;c[w>>2]=z+1;a[z>>0]=u}c[n>>2]=(c[n>
x3e;2]|0)+-1;c[v>>2]=(c[v>>2]|0)+2}a[c[w>>2]>>0]=0;ge(c[y>>2]|0);break}Fb(c[p
x3e;>2]|0,c[x>>2]|0);c[x>>2]=0;b[(c[t>>2]|0)+8>>1]=0;c[(c[t>>2]|0)+12>
;>2]=0;Fb(c[p>>2]|0,c[(c[t>>2]|0)+16>>2]|0);c[(c[t>>2]|0)+16>>2]=0}}else
if((c[l>>2]|0)!=-1?(c[q>>2]=c[(c[h>>2]|0)+100>>2],c[u>>2]=(c[(c[h>>2
]|0)+348+12>>2]|0)+((c[l>>2]|0)*20|0),c[o>>2]=e[(c[u>>2]|0)+8>>1],c[k>>
;2]=0,c[k>>2]=c[k>>2],c[x>>2]=bc(c[q>>2]|0,(c[o>>2]|0)+1|0,k)|0,(c[k>>
;2]|0)==0):0){c[z>>2]=c[(c[h>>2]|0)+348+16>>2];y=Kc(c[z>>2]|0,c[(c[u>>2]|0)+12
>>2]|0)|0;c[k>>2]=y;if((y|0)==0?(z=Rc(c[z>>2]|0,c[x>>2]|0,c[o>>2]|0)|0,c[k>
;>2]=z,(z|0)==0):0){a[(c[x>>2]|0)+(c[o>>2]|0)>>0]=0;break}c[(c[u>>2]|0)+12>>
;2]=0;b[(c[u>>2]|0)+8>>1]=0;Fb(c[q>>2]|0,c[(c[u>>2]|0)+16>>2]|0);c[(c[u>
x3e;2]|0)+16>>2]=0;Fb(c[q>>2]|0,c[x>>2]|0);c[x>>2]=0}while(0);c[(c[h>>2]|0)+700
>>2]=c[x>>2];c[g>>2]=c[x>>2];z=c[g>>2]|0;i=A;return z|0}function Dk(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;m=k+20|0;l=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[m>>
;2]=a;c[l>>2]=b;c[f>>2]=d;c[g>>2]=e;c[h>>2]=Ek(c[m>>2]|0,c[l>>2]|0,j
)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=k;return m|0}pe(c[f>>2]|0,c[j>>2]|0,c[g>>2]|0)|
0;m=c[h>>2]|0;i=k;return m|0}function Ek(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,r=0,s=0,t=0;
t=i;i=i+48|0;h=t+36|0;j=t+32|0;k=t+28|0;l=t+24|0;m=t+20|0;p=t+16|0;n=t+12|0;q=t+8|0;r=t+4|0;o=t+40|0;s=t;c[j>>2]=d;c[k
>>2]=f;c[l>>2]=g;if(!(c[j>>2]|0)){c[h>>2]=35;s=c[h>>2]|0;i=t;return s|0}if((c[
k>>2]|0)>>>0>=(e[(c[j>>2]|0)+260+4>>1]|0)>>>0){c[h>>2
]=16;s=c[h>>2]|0;i=t;return s|0}c[q>>2]=c[(c[j>>2]|0)+536>>2];if(!(c[q>>2]|0)){
c[h>>2]=7;s=c[h>>2]|0;i=t;return s|0}c[p>>2]=(c[j>>2]|0)+628;f=Ta[c[(c[q>>2]|0
)+16>>2]&63](0)|0;c[c[l>>2]>>2]=f;c[n>>2]=c[(c[j>>2]|0)+468>>2];
do if((c[n>>2]|0)==65536){if((c[k>>2]|0)>>>0<258){s=Ta[c[(c[q>>2]|0)+16>
x3e;2]&63](c[k>>2]|0)|0;c[c[l>>2]>>2]=s}}else{if((c[n>>2]|0)!=131072){if((c[n>
x3e;2]|0)!=163840)break;c[s>>2]=(c[p>>2]|0)+4;if((a[c[p>>2]>>0]|0)==0?(c[m>>2]=
Fk(c[j>>2]|0)|0,c[m>>2]|0):0)break;if((c[k>>2]|0)>>>0>=(e[c[s>>2]>
;>1]|0)>>>0)break;c[k>>2]=(c[k>>2]|0)+(a[(c[(c[s>>2]|0)+4>>2]|0)+(c[
k>>2]|0)>>0]|0);s=Ta[c[(c[q>>2]|0)+16>>2]&63](c[k>>2]|0)|0;c[c[l>>
;2]>>2]=s;break}c[r>>2]=(c[p>>2]|0)+4;if((a[c[p>>2]>>0]|0)==0?(c[m>>
2]=Fk(c[j>>2]|0)|0,c[m>>2]|0):0)break;if((c[k>>2]|0)>>>0<(e[c[r>>2]
x3e;>1]|0)>>>0){b[o>>1]=b[(c[(c[r>>2]|0)+4>>2]|0)+(c[k>>2]<<
;1)>>1]|0;if((e[o>>1]|0)<258){s=Ta[c[(c[q>>2]|0)+16>>2]&63](e[o>>1]|
0)|0;c[c[l>>2]>>2]=s;break}else{c[c[l>>2]>>2]=c[(c[(c[r>>2]|0)+8>>2]|
0)+((e[o>>1]|0)-258<<2)>>2];break}}}while(0);c[h>>2]=0;s=c[h>>2]|0;i=t;return
s|0}function Fk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;j=k+16|0;e=k+12|0;f=k+8|0;g=k+4|0;h=k;c[d>
x3e;2]=b;c[j>>2]=c[(c[d>>2]|0)+104>>2];c[e>>2]=Wa[c[(c[d>>2]|0)+508>>
;2]&31](c[d>>2]|0,1886352244,c[j>>2]|0,g)|0;if(c[e>>2]|0){j=c[e>>2]|0;i=k;return j|
0}b=Mc(c[j>>2]|0)|0;c[h>>2]=b+(c[g>>2]|0);c[f>>2]=c[(c[d>>2]|0)+468>>
;2];g=Qc(c[j>>2]|0,32)|0;c[e>>2]=g;if(g|0){j=c[e>>2]|0;i=k;return j|0}do if((c[f>>2]|0)!=
131072)if((c[f>>2]|0)==163840){c[e>>2]=Hk(c[d>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;break
}else{c[e>>2]=3;break}else c[e>>2]=Gk(c[d>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;while(0
);a[(c[d>>2]|0)+628>>0]=1;j=c[e>>2]|0;i=k;return j|0}function Gk(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,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=i;i=i+64|0;l=A+52|0;m=A+48|0;n=A+44|0;o=A+40|0;s=A+36|
0;p=A+32|0;w=A+28|0;x=A+60|0;q=A+24|0;v=A+20|0;j=A+16|0;k=A+12|0;h=A+8|0;t=A+58|0;r=A+4|0;y=A;u=A+56|0;c[m>>2]=d;c[n
x3e;>2]=f;c[o>>2]=g;c[s>>2]=c[(c[n>>2]|0)+28>>2];c[q>>2]=0;c[v>>
;2]=0;c[w>>2]=(Pc(c[n>>2]|0,p)|0)&65535;do if(!(c[p>>2]|0)){if((c[w>>2]|0)>(e[(
c[m>>2]|0)+260+4>>1]|0|0)){c[p>>2]=3;break}c[q>>2]=hc(c[s>>2]|0,2,0,c[w>
x3e;2]|0,0,p)|0;a:do if((c[p>>2]|0)==0?(f=ee(c[n>>2]|0,c[w>>2]<<1)|0,c[p>>2]=f
,(f|0)==0):0){c[j>>2]=0;while(1){d=c[n>>2]|0;if((c[j>>2]|0)>=(c[w>>2]|0))break;f=ie
(d)|0;b[(c[q>>2]|0)+(c[j>>2]<<1)>>1]=f;c[j>>2]=(c[j>>2]|0)+1}ge(d);b
[x>>1]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[w>>2]|0))break;c[h>>2]=e[(
c[q>>2]|0)+(c[k>>2]<<1)>>1];if((c[h>>2]|0)>=258?(c[h>>2]=(c[h
x3e;>2]|0)-257,(c[h>>2]|0)>(e[x>>1]|0|0)):0)b[x>>1]=c[h>>2];c[k>>2]=(
c[k>>2]|0)+1}c[v>>2]=hc(c[s>>2]|0,4,0,e[x>>1]|0,0,p)|0;if(!(c[p>>2]|0)){b[t>
;>1]=0;while(1){if((e[t>>1]|0|0)>=(e[x>>1]|0|0)){z=28;break}k=Mc(c[n>>2]|0)|0;if((k|0)
x3e;=(c[o>>2]|0)){z=28;break}c[r>>2]=(ke(c[n>>2]|0,p)|0)&255;if(c[p>>2]|0)break;if(!((
c[r>>2]|0)<=(c[o>>2]|0)?(k=Mc(c[n>>2]|0)|0,(k|0)<=((c[o>>2]|0)-(c[r>>
;2]|0)|0)):0)){k=c[o>>2]|0;if(0>(k-(Mc(c[n>>2]|0)|0)|0))d=0;else{d=c[o>>2]|0;d=d-(Mc(c[n>
;>2]|0)|0)|0}c[r>>2]=d}k=hc(c[s>>2]|0,1,0,(c[r>>2]|0)+1|0,0,p)|0;c[(c[v>>2]|0)+((e[
t>>1]|0)<<2)>>2]=k;if(c[p>>2]|0)break;k=Rc(c[n>>2]|0,c[(c[v>>2]|0)+((
e[t>>1]|0)<<2)>>2]|0,c[r>>2]|0)|0;c[p>>2]=k;if(k|0)break;a[(c[(c[v>>
2]|0)+((e[t>>1]|0)<<2)>>2]|0)+(c[r>>2]|0)>>0]=0;b[t>>1]=(b[t>
x3e;1]|0)+1<<16>>16}b:do if((z|0)==28){c:do if((e[t>>1]|0|0)<(e[x>>1]|0|0))while(1){
if((e[t>>1]|0|0)>=(e[x>>1]|0|0))break c;z=hc(c[s>>2]|0,1,0,1,0,p)|0;c[(c[v>>2]|0)+((
e[t>>1]|0)<<2)>>2]=z;if(c[p>>2]|0)break b;a[c[(c[v>>2]|0)+((e[t>>1]|
0)<<2)>>2]>>0]=0;b[t>>1]=(b[t>>1]|0)+1<<16>>16}while(0);c[
y>>2]=(c[m>>2]|0)+628+4;b[c[y>>2]>>1]=c[w>>2];b[(c[y>>2]|0)+2>
x3e;1]=b[x>>1]|0;c[(c[y>>2]|0)+4>>2]=c[q>>2];c[(c[y>>2]|0)+8>>2]=c[v
>>2];c[l>>2]=0;z=c[l>>2]|0;i=A;return z|0}while(0);b[u>>1]=0;while(1){if((e[u>>
;1]|0|0)>=(e[x>>1]|0|0))break a;Fb(c[s>>2]|0,c[(c[v>>2]|0)+((e[u>>1]|0)<<
2)>>2]|0);c[(c[v>>2]|0)+((e[u>>1]|0)<<2)>>2]=0;b[u>>1]=(b[u>>
;1]|0)+1<<16>>16}}}while(0);Fb(c[s>>2]|0,c[v>>2]|0);c[v>>2]=0;Fb(c[s>>
;2]|0,c[q>>2]|0);c[q>>2]=0}while(0);c[l>>2]=c[p>>2];z=c[l>>2]|0;i=A;return z|0
}function Hk(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,r=0,s=0,t=0,u=0;t=i;i=i+48|0;h=t+40|0;j=t+36|0;k=t
+32|0;u=t+28|0;n=t+24|0;l=t+20|0;p=t+16|0;q=t+12|0;o=t+8|0;m=t+4|0;r=t;c[j>>2]=d;c[k>>2]=f;c[u>>2]=
g;c[n>>2]=c[(c[k>>2]|0)+28>>2];c[q>>2]=0;c[u>>2]=c[u>>2];c[p>
x3e;2]=(Pc(c[k>>2]|0,l)|0)&65535;do if(!(c[l>>2]|0)){if((c[p>>2]|0)>258?1:(c[p>>
;2]|0)>(e[(c[j>>2]|0)+260+4>>1]|0)){c[l>>2]=3;break}c[q>>2]=hc(c[n>>2]|0,
1,0,c[p>>2]|0,0,l)|0;do if((c[l>>2]|0)==0?(u=Rc(c[k>>2]|0,c[q>>2]|0,c[p>>2]|0)|
0,c[l>>2]=u,(u|0)==0):0){c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[p>>2]|0))break;c[m
x3e;>2]=(c[o>>2]|0)+(a[(c[q>>2]|0)+(c[o>>2]|0)>>0]|0);if((c[m>>2]|0)<
;0){s=10;break}if((c[m>>2]|0)>(c[p>>2]|0)){s=10;break}c[o>>2]=(c[o>>2]|0)+1}if((s|0
)==10){c[l>>2]=3;break}c[r>>2]=(c[j>>2]|0)+628+4;b[c[r>>2]>>1]=c[p>>
2];c[(c[r>>2]|0)+4>>2]=c[q>>2];c[h>>2]=0;u=c[h>>2]|0;i=t;return u|0}while(0);Fb
(c[n>>2]|0,c[q>>2]|0);c[q>>2]=0}while(0);c[h>>2]=c[l>>2];u=c[h>>2]|0
;i=t;return u|0}function Ik(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;m=i;i=i+32|0;k=m+28|0;d=m+24|0;e=m+20|0;j=m
+16|0;l=m+12|0;h=m+8|0;g=m+4|0;f=m;c[d>>2]=a;c[e>>2]=b;c[j>>2]=c[d>>2];c[h>>2]=-
1;if((c[(c[j>>2]|0)+16>>2]|0)<0){c[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}if((c[(c[j>
;>2]|0)+16>>2]|0)>>>0<4294967295)c[h>>2]=c[(c[j>>2]|0)+16>>2];c
[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[h>>2]|0)>>>0){d=11;break
}c[f>>2]=Ek(c[d>>2]|0,c[l>>2]|0,g)|0;if((c[f>>2]|0)==0?(Kr(c[e>>2]|0,c[g>
x3e;2]|0)|0)==0:0){d=9;break}c[l>>2]=(c[l>>2]|0)+1}if((d|0)==9){c[k>>2]=c[l>>2];l=c[k>
;>2]|0;i=m;return l|0}else if((d|0)==11){c[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}return 0}function Jk(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;l=i;i=i+48|0;e=l+32|0;f=l+28|0;g=l+24|0;h=l+16|0;k=l+8|0;j=l;c[e>>
;2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=Kk(c[e>>2]|0,11392,k)|0;if(c[j>>2]|0){k=c[j
x3e;>2]|0;i=l;return k|0}c[j>>2]=Kk(c[e>>2]|0,11409,h)|0;if(c[j>>2]|0){k=c[j>>2]|0;
i=l;return k|0}if((c[k>>2]|0)==1?(c[h>>2]|0)==1:0){c[c[f>>2]>>2]=c[h+4>>2];c[c
[g>>2]>>2]=c[k+4>>2];k=c[j>>2]|0;i=l;return k|0}c[j>>2]=6;k=c[j>>2]|
0;i=l;return k|0}function Kk(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;x=
i;i=i+64|0;g=x+56|0;h=x+52|0;j=x+48|0;m=x+44|0;s=x+40|0;o=x+36|0;q=x+32|0;n=x+28|0;t=x+24|0;r=x+20|0;l=x+16|0;k=x+12|0;u=x+8|0;p
=x+4|0;v=x;c[g>>2]=a;c[h>>2]=b;c[j>>2]=f;c[m>>2]=(c[g>>2]|0)+792;c[s>>
;2]=c[(c[g>>2]|0)+88>>2];c[o>>2]=0;c[c[j>>2]>>2]=0;if((d[(c[m>>2]|0)+
20>>0]|0|0)==0?(c[o>>2]=Lk(c[g>>2]|0,c[(c[g>>2]|0)+104>>2]|0)|0,c[o>>
;2]|0):0){w=c[o>>2]|0;i=x;return w|0}c[n>>2]=c[(c[m>>2]|0)+16>>2];c[q>>2]=(c[c
[m>>2]>>2]|0)+8;c[t>>2]=(c[q>>2]|0)+(c[n>>2]<<2);c[o>>2]=6
;if((c[s>>2]|0)==0|(c[h>>2]|0)==0){w=c[o>>2]|0;i=x;return w|0}c[r>>2]=cs(c[h>>
2]|0)|0;if(!((c[r>>2]|0)!=0&(c[n>>2]|0)>>>0>0)){w=c[o>>2]|0;i=x;return w|
0}while(1){c[q>>2]=(c[q>>2]|0)+2;c[l>>2]=(((d[(c[q>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[q>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[q>>2]=(c[q>
x3e;2]|0)+2;c[k>>2]=(((d[(c[q>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[q>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535;g=c[k>>2]|0;if((c[l>>2]|0)==(e[(c[s>>2]|
0)+12+2>>1]|0|0))break;c[t>>2]=(c[t>>2]|0)+(g*10|0);c[n>>2]=(c[n>>2]|0)+-1;if((
c[n>>2]|0)>>>0<=0){w=20;break}}if((w|0)==20){w=c[o>>2]|0;i=x;return w|0}c[n>>2
]=g;c[q>>2]=c[t>>2];a:while(1){if((c[n>>2]|0)>>>0<=0){w=20;break}c[u>>
;2]=(((d[(c[q>>2]|0)+4>>0]|0)&65535)<<8|((d[(c[q>>2]|0)+4+1>>0]|0)&65535
)<<0)&65535;b:do if(((c[u>>2]&16|0?(c[p>>2]=(d[c[q>>2]>>0]|0)<
x3c;24|(d[(c[q>>2]|0)+1>>0]|0)<<16|(d[(c[q>>2]|0)+2>>0]|0)<<8|(d[(c[
q>>2]|0)+3>>0]|0)<<0,c[v>>2]=(d[(c[q>>2]|0)+6>>0]|0)<<24|(
d[(c[q>>2]|0)+6+1>>0]|0)<<16|(d[(c[q>>2]|0)+6+2>>0]|0)<<8|(d[(c[q>
;>2]|0)+6+3>>0]|0)<<0,(c[p>>2]|0)>>>0<(c[(c[m>>2]|0)+12>
x3e;2]|0)>>>0):0)?(c[r>>2]|0)>>>0<((c[(c[m>>2]|0)+12>>2]|0)-(c[
p>>2]|0)|0)>>>0:0)?(Lr(c[h>>2]|0,(c[(c[m>>2]|0)+8>>2]|0)+(c[p>>
2]|0)|0,(c[(c[m>>2]|0)+12>>2]|0)-(c[p>>2]|0)|0)|0)==0:0){switch(c[u>>2]&15|0){case
2:{w=17;break a}case 3:{w=18;break a}case 1:case 0:break;default:break b}if((c[v>>2]|0)>>>0<(c[(c[
m>>2]|0)+12>>2]|0)>>>0?Ur((c[(c[m>>2]|0)+8>>2]|0)+(c[v>>2]|0)|0
,0,c[(c[m>>2]|0)+12>>2]|0)|0:0){w=16;break a}}while(0);c[q>>2]=(c[q>>2]|0)+10;c[n>
x3e;2]=(c[n>>2]|0)+-1}if((w|0)==16){c[c[j>>2]>>2]=1;c[(c[j>>2]|0)+4>>2]=(c[(c[
m>>2]|0)+8>>2]|0)+(c[v>>2]|0);c[o>>2]=0;w=c[o>>2]|0;i=x;return w|0}else if((w|
0)==17){c[c[j>>2]>>2]=2;c[(c[j>>2]|0)+4>>2]=c[v>>2];c[o>>2]=0;w=c[o
x3e;>2]|0;i=x;return w|0}else if((w|0)==18){c[c[j>>2]>>2]=3;c[(c[j>>2]|0)+4>>2]=c[v
>>2];c[o>>2]=0;w=c[o>>2]|0;i=x;return w|0}else if((w|0)==20){w=c[o>>2]|0;i=x;return w|0}
return 0}function Lk(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;r=i;i=i+48|0;s=r+44|0;f=r+40|0;g=r
+36|0;k=r+32|0;j=r+28|0;n=r+24|0;q=r+20|0;m=r+16|0;p=r+12|0;h=r+8|0;o=r+4|0;l=r;c[s>>2]=b;c[f>>2]=e;c[g>
;>2]=(c[s>>2]|0)+792;e=c[g>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12
>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[j>>2]=lk(c[s>>2]|0,1111770656,c[f>>
;2]|0,k)|0;if(!((c[j>>2]|0)!=0|(c[k>>2]|0)>>>0<8)?(s=de(c[f>>2]|0,c[k>>
;2]|0,c[g>>2]|0)|0,c[j>>2]=s,(s|0)==0):0){c[(c[g>>2]|0)+4>>2]=(c[c[g>>2]>
x3e;2]|0)+(c[k>>2]|0);c[n>>2]=c[c[g>>2]>>2];c[n>>2]=(c[n>>2]|0)+2;c[
q>>2]=(((d[(c[n>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[n>>2]|0)+-2+1>>
;0]|0)&65535)<<0)&65535;c[n>>2]=(c[n>>2]|0)+2;c[m>>2]=(((d[(c[n>>2]|
0)+-2>>0]|0)&65535)<<8|((d[(c[n>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535
;c[n>>2]=(c[n>>2]|0)+4;c[p>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n
x3e;>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>
;2]|0)+-4+3>>0]|0)<<0;if((!((c[q>>2]|0)!=1|(c[p>>2]|0)>>>0<8)?((((c[
p>>2]|0)-8|0)>>>0)/4|0)>>>0>=(c[m>>2]|0)>>>0:0)?((c[p>
;>2]|0)+1|0)>>>0<=(c[k>>2]|0)>>>0:0){c[(c[g>>2]|0)+16>>2]=
c[m>>2];c[(c[g>>2]|0)+8>>2]=(c[c[g>>2]>>2]|0)+(c[p>>2]|0);c[(c[g>
;>2]|0)+12>>2]=(c[k>>2]|0)-(c[p>>2]|0);c[h>>2]=c[(c[g>>2]|0)+16>>
;2];c[n>>2]=(c[c[g>>2]>>2]|0)+8;c[o>>2]=(c[n>>2]|0)+(c[h>>2]<
x3c;2);while(1){if((c[h>>2]|0)>>>0<=0)break;c[l>>2]=(((d[(c[n>>2]|0)+2>
x3e;0]|0)&65535)<<8|((d[(c[n>>2]|0)+2+1>>0]|0)&65535)<<0)&65535;c[o>
x3e;2]=(c[o>>2]|0)+((c[l>>2]|0)*10|0);c[n>>2]=(c[n>>2]|0)+4;c[h>>2]=(c[h>
x3e;2]|0)+-1}if((c[o>>2]|0)>>>0<=(c[(c[g>>2]|0)+8>>2]|0)>>>0){a
[(c[g>>2]|0)+20>>0]=1;s=c[j>>2]|0;i=r;return s|0}}fe(c[f>>2]|0,c[g>>2]|0);s=c[
g>>2]|0;c[s>>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[j>>2]=8;s=c[j>>2]|0;i=r;return s|0}c[j>>2]=8;s=c[j>>2]|0;i=r;return
s|0}function Mk(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;h=d+4|0;g=d;c[f>>2]=a;c[e>
;>2]=b;c[h>>2]=c[f>>2];c[g>>2]=c[(c[h>>2]|0)+12>>2];b=Ya[c[(c[g>>
;2]|0)+48>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return b|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;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;c[k>>2]=c[k>>2];c[j>>2]=c[j>>2];c[h>>2]=c[h>>
;2];c[g>>2]=c[g>>2];i=f;return 7}function Ok(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;c[h>>2]=c[h>>2];c[g>>2]=
c[g>>2];c[f>>2]=c[f>>2];i=e;return 7}function Pk(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=Qk(c[f>>2]|0,c[e>>2]|0,1751474532)|0;i=d;return b|0}function
Qk(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+16|0;f=j+12|0;k=j+8|0;g=j+4|0;h=j;c[e>>2]=a;
c[f>>2]=b;c[k>>2]=d;c[g>>2]=Wa[c[(c[e>>2]|0)+508>>2]&31](c[e>>2
]|0,c[k>>2]|0,c[f>>2]|0,0)|0;if(c[g>>2]|0){k=c[g>>2]|0;i=j;return k|0}c[h>>2]=(
c[e>>2]|0)+160;c[g>>2]=le(c[f>>2]|0,7560,c[h>>2]|0)|0;k=c[g>>2]|0;i=j;return k
|0}function Rk(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;f=l+16|0;g=l+12|0;m=l+20|0;h=l+8|0;j=l+4|0;
k=l;c[f>>2]=b;c[g>>2]=d;a[m>>0]=e;b=c[f>>2]|0;do if(a[m>>0]|0){c[k>>
2]=b+300;c[h>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1986553185,c[g>>2
]|0,0)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=l;return m|0}else{c[j>>2]=c[k>>2];break}}else{c[h
x3e;>2]=Wa[c[b+508>>2]&31](c[f>>2]|0,1751672161,c[g>>2]|0,0)|0;if(c[h>>2]|0){m
=c[h>>2]|0;i=l;return m|0}else{c[j>>2]=(c[f>>2]|0)+216;break}}while(0);m=le(c[g>>2]|0,7644
,c[j>>2]|0)|0;c[h>>2]=m;if(m|0){m=c[h>>2]|0;i=l;return m|0}c[(c[j>>2]|0)+36>>2
]=0;c[(c[j>>2]|0)+40>>2]=0;m=c[h>>2]|0;i=l;return m|0}function Sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0
,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Wa[c[(c[d>>2]|0)+508
x3e;>2]&31](c[d>>2]|0,1668112752,c[e>>2]|0,(c[d>>2]|0)+504|0)|0;if(c[f>>2]|0){
b=c[f>>2]|0;i=g;return b|0}b=de(c[e>>2]|0,c[(c[d>>2]|0)+504>>2]|0,(c[d>>2]|0)+
500|0)|0;c[f>>2]=b;if(!b){b=c[f>>2]|0;i=g;return b|0}c[(c[d>>2]|0)+504>>2]=0;b=c[f>
x3e;2]|0;i=g;return b|0}function Tk(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;k=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>
x3e;2]=a;c[f>>2]=d;c[h>>2]=(c[k>>2]|0)+260;c[g>>2]=Wa[c[(c[k>>2]|0)+508>
x3e;2]&31](c[k>>2]|0,1835104368,c[f>>2]|0,0)|0;if(c[g>>2]|0){k=c[g>>2]|0;i=j;return
k|0}k=le(c[f>>2]|0,7720,c[h>>2]|0)|0;c[g>>2]=k;if(k|0){k=c[g>>2]|0;i=j;return k|0}b[(c[
h>>2]|0)+6>>1]=0;b[(c[h>>2]|0)+8>>1]=0;b[(c[h>>2]|0)+10>>1]=0;b[(c[h
>>2]|0)+12>>1]=0;b[(c[h>>2]|0)+14>>1]=0;b[(c[h>>2]|0)+16>>1]=0;b[(c[
h>>2]|0)+18>>1]=0;b[(c[h>>2]|0)+20>>1]=0;b[(c[h>>2]|0)+22>>1]=0;b[(c
[h>>2]|0)+24>>1]=0;b[(c[h>>2]|0)+26>>1]=0;b[(c[h>>2]|0)+28>>1]=0;b[(
c[h>>2]|0)+30>>1]=0;if((c[c[h>>2]>>2]|0)<65536){k=c[g>>2]|0;i=j;return k|
0}k=le(c[f>>2]|0,7736,c[h>>2]|0)|0;c[g>>2]=k;if(k|0){k=c[g>>2]|0;i=j;return k|0}if((e[(c
[h>>2]|0)+20>>1]|0|0)<64)b[(c[h>>2]|0)+20>>1]=64;if((e[(c[h>>2]|0)+16>
;>1]|0)>>>0>65531)b[(c[h>>2]|0)+16>>1]=-5;if((e[(c[h>>2]|0)+30>>
;1]|0|0)<=100){k=c[g>>2]|0;i=j;return k|0}b[(c[h>>2]|0)+30>>1]=100;k=c[g>>2]|0;i=j;
return k|0}function Uk(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[
g>>2]=d;c[h>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1330851634,c[g>
;>2]|0,0)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=k;return d|0}c[j>>2]=(c[f>>2]|0)+368;d=le(c
[g>>2]|0,7796,c[j>>2]|0)|0;c[h>>2]=d;if(d|0){d=c[h>>2]|0;i=k;return d|0}c[(c[j>>
;2]|0)+80>>2]=0;c[(c[j>>2]|0)+84>>2]=0;b[(c[j>>2]|0)+88>>1]=0;b[(c[j>>
;2]|0)+90>>1]=0;b[(c[j>>2]|0)+92>>1]=0;b[(c[j>>2]|0)+94>>1]=0;b[(c[j>>
;2]|0)+96>>1]=0;if((e[c[j>>2]>>1]|0|0)<1){d=c[h>>2]|0;i=k;return d|0}d=le(c[g>
x3e;2]|0,7972,c[j>>2]|0)|0;c[h>>2]=d;if(d|0){d=c[h>>2]|0;i=k;return d|0}if((e[c[j>>2]>
;>1]|0|0)<2){d=c[h>>2]|0;i=k;return d|0}c[h>>2]=le(c[g>>2]|0,7988,c[j>>2]|0)|0
;d=c[h>>2]|0;i=k;return d|0}function Vk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;j=h+12|0;e=
h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[g>>2]=(c[j>>2]|0)+468;c[f>>2]=Wa[c[(c[
j>>2]|0)+508>>2]&31](c[j>>2]|0,1886352244,c[e>>2]|0,0)|0;if(c[f>>2]|0){c[
d>>2]=c[f>>2];j=c[d>>2]|0;i=h;return j|0}j=le(c[e>>2]|0,8016,c[g>>2]|0)|0;c[f
x3e;>2]=j;if(j|0){c[d>>2]=c[f>>2];j=c[d>>2]|0;i=h;return j|0}else{c[d>>2]=0;j=c[d
x3e;>2]|0;i=h;return j|0}return 0}function Wk(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,q=0,r=0;r=i;i=i+
48|0;f=r+40|0;g=r+36|0;k=r+32|0;l=r+28|0;q=r+24|0;p=r+20|0;n=r+16|0;m=r+12|0;h=r+8|0;o=r+4|0;j=r;c[f>>2]=a;c[g>
x3e;2]=d;c[l>>2]=c[(c[g>>2]|0)+28>>2];c[o>>2]=(c[f>>2]|0)+348;c[(c[o>>
;2]|0)+16>>2]=c[g>>2];c[k>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>
;2]|0,1851878757,c[g>>2]|0,p)|0;if(c[k>>2]|0){q=c[k>>2]|0;i=r;return q|0}c[q>>2]=Mc(c[g
x3e;>2]|0)|0;d=le(c[g>>2]|0,8060,c[o>>2]|0)|0;c[k>>2]=d;if(d|0){q=c[k>>2]|0;i=r;return
q|0}c[n>>2]=(c[q>>2]|0)+6+((c[(c[o>>2]|0)+4>>2]|0)*12|0);c[m>>2]=(c[q>
x3e;2]|0)+(c[p>>2]|0);if((c[n>>2]|0)>>>0>(c[m>>2]|0)>>>0){c[k
x3e;>2]=145;q=c[k>>2]|0;i=r;return q|0}c[h>>2]=c[(c[o>>2]|0)+4>>2];c[(c[o>>
;2]|0)+4>>2]=0;p=hc(c[l>>2]|0,20,0,c[h>>2]|0,0,k)|0;c[(c[o>>2]|0)+12>>2]=p;if(
c[k>>2]|0){q=c[k>>2]|0;i=r;return q|0}p=ee(c[g>>2]|0,(c[h>>2]|0)*12|0)|0;c[k>>
2]=p;if(p|0){q=c[k>>2]|0;i=r;return q|0}c[j>>2]=c[(c[o>>2]|0)+12>>2];while(1){if((c[h>
;>2]|0)>>>0<=0)break;p=le(c[g>>2]|0,8080,c[j>>2]|0)|0;c[k>>2]=p;do if((p|
0)==0?e[(c[j>>2]|0)+8>>1]|0|0:0){p=(c[j>>2]|0)+12|0;c[p>>2]=(c[p>>2]|0)+((c[q
x3e;>2]|0)+(c[(c[o>>2]|0)+8>>2]|0));if((c[(c[j>>2]|0)+12>>2]|0)>>>0
x3e;=(c[n>>2]|0)>>>0?((c[(c[j>>2]|0)+12>>2]|0)+(e[(c[j>>2]|0)+8>>
;1]|0)|0)>>>0<=(c[m>>2]|0)>>>0:0){c[j>>2]=(c[j>>2]|0)+20;break}
c[(c[j>>2]|0)+12>>2]=0;b[(c[j>>2]|0)+8>>1]=0}while(0);c[h>>2]=(c[h>>
2]|0)+-1}c[(c[o>>2]|0)+4>>2]=((c[j>>2]|0)-(c[(c[o>>2]|0)+12>>2]|0)|0)/20|0;ge(
c[g>>2]|0);b[(c[f>>2]|0)+344>>1]=c[(c[o>>2]|0)+4>>2];q=c[k>>2]|0;i=r
;return q|0}function Xk(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;j=h+16|0;f=h+12|0;g=h+8|0;e=h+4|0;d=h;c[j>>2
]=a;c[f>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+8>>2];c[g>>2]=(c[j>>2]|0)+348
;c[e>>2]=c[(c[g>>2]|0)+12>>2];c[d>>2]=c[(c[g>>2]|0)+4>>2];if(!(c[(c[
g>>2]|0)+12>>2]|0)){j=c[g>>2]|0;j=j+4|0;c[j>>2]=0;j=c[g>>2]|0;b[j>>1
]=0;j=c[g>>2]|0;j=j+8|0;c[j>>2]=0;i=h;return}while(1){a=c[f>>2]|0;if((c[d>>2]|0)>
x3e;>0<=0)break;Fb(a,c[(c[e>>2]|0)+16>>2]|0);c[(c[e>>2]|0)+16>>2]=0;b[(c[e>
;>2]|0)+8>>1]=0;c[d>>2]=(c[d>>2]|0)+-1;c[e>>2]=(c[e>>2]|0)+20}Fb(a,c[(c[g
>>2]|0)+12>>2]|0);c[(c[g>>2]|0)+12>>2]=0;j=c[g>>2]|0;j=j+4|0;c[j>>2]=
0;j=c[g>>2]|0;b[j>>1]=0;j=c[g>>2]|0;j=j+8|0;c[j>>2]=0;i=h;return}function Yk(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[f>>2]=c[f>>2];c[e
x3e;>2]=c[e>>2];i=d;return 7}function Zk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>
;2]=c[d>>2];i=b;return}function _k(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;x=i;i=i+80|0;e=x+68|0;f=x+64|0;l=x+60|0;w=x+56|0;t=x+52|0;u=x+48|0;o=x+44|0;q=x+40|0;g=x+36|0;s=x+32|0;p=x+28|0;m=
x+24|0;j=x+20|0;v=x+16|0;n=x+12|0;h=x+8|0;r=x+4|0;k=x;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;c[s>>
;2]=0;c[l>>2]=Wa[c[(c[e>>2]|0)+508>>2]&31](c[e>>2]|0,1801810542,c[f>>2]|0
,w)|0;if(c[l>>2]|0){w=c[l>>2]|0;i=x;return w|0}if((c[w>>2]|0)>>>0<4){c[l>
x3e;2]=142;w=c[l>>2]|0;i=x;return w|0}b=de(c[f>>2]|0,c[w>>2]|0,(c[e>>2]|0)+772|0)|0;c[l
x3e;>2]=b;if(b|0){w=c[l>>2]|0;i=x;return w|0}c[(c[e>>2]|0)+776>>2]=c[w>>2];c[t>
;>2]=c[(c[e>>2]|0)+772>>2];c[u>>2]=(c[t>>2]|0)+(c[w>>2]|0);c[t>>
;2]=(c[t>>2]|0)+2;c[t>>2]=(c[t>>2]|0)+2;w=(((d[(c[t>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[q>>2]=w;c[q>
;>2]=(c[q>>2]|0)>>>0>32?32:w;c[o>>2]=0;while(1){if((c[o>>2]|0)>>
;>0>=(c[q>>2]|0)>>>0)break;c[n>>2]=1<<c[o>>2];if(((c[t>>
;2]|0)+6|0)>>>0>(c[u>>2]|0)>>>0)break;c[v>>2]=c[t>>2];c[t>
x3e;2]=(c[t>>2]|0)+2;c[t>>2]=(c[t>>2]|0)+2;c[m>>2]=(((d[(c[t>>2]|0)+-2>
x3e;0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[t>
;>2]=(c[t>>2]|0)+2;c[j>>2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(
c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c[m>>2]|0)>>>0<
;=6)break;c[v>>2]=(c[v>>2]|0)+(c[m>>2]|0);if((c[v>>2]|0)>>>0>(c[u>
;>2]|0)>>>0)c[v>>2]=c[u>>2];if((c[j>>2]&-9|0)==1?((c[t>>2]|0)+8
|0)>>>0<=(c[u>>2]|0)>>>0:0){c[t>>2]=(c[t>>2]|0)+2;c[p>>
;2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&
;65535)<<0)&65535;c[t>>2]=(c[t>>2]|0)+6;if(((c[v>>2]|0)-(c[t>>2]|0)|0)<
;((c[p>>2]|0)*6|0))c[p>>2]=((c[v>>2]|0)-(c[t>>2]|0)|0)/6|0;c[g>>2]=c[g>
x3e;2]|c[n>>2];if((c[p>>2]|0)>>>0>0){c[t>>2]=(c[t>>2]|0)+4;c[r>
x3e;2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-4+3>>0]|0)<<0;c[t>
x3e;2]=(c[t>>2]|0)+2;c[h>>2]=(c[p>>2]|0)-1;while(1){if((c[h>>2]|0)>>>0<
;=0)break;c[t>>2]=(c[t>>2]|0)+4;c[k>>2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24
|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[
t>>2]|0)+-4+3>>0]|0)<<0;if((c[k>>2]|0)>>>0<=(c[r>>2]|0)>
;>>0)break;c[t>>2]=(c[t>>2]|0)+2;c[r>>2]=c[k>>2];c[h>>2]=(c[h>
x3e;2]|0)+-1}if(!(c[h>>2]|0))c[s>>2]=c[s>>2]|c[n>>2]}}c[t>>2]=c[v>>2
];c[o>>2]=(c[o>>2]|0)+1}c[(c[e>>2]|0)+780>>2]=c[o>>2];c[(c[e>>2]|0)+
784>>2]=c[g>>2];c[(c[e>>2]|0)+788>>2]=c[s>>2];w=c[l>>2]|0;i=x;return
w|0}function $k(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;n=i;i=i+32|0;f=n+24|0;h=n+20|0;j=n+16|0;g=n+12|0;l=n+8|0;m
=n+4|0;k=n;c[f>>2]=a;c[h>>2]=d;c[g>>2]=c[(c[h>>2]|0)+28>>2];c[j>>2]=
Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1734439792,c[h>>2]|0,0)|0;if(c[j>>
2]|0){m=c[j>>2]|0;i=n;return m|0}d=ee(c[h>>2]|0,4)|0;c[j>>2]=d;if(d|0){m=c[j>>2]|0;i=n;return
m|0}a=ie(c[h>>2]|0)|0;b[(c[f>>2]|0)+548>>1]=a;a=ie(c[h>>2]|0)|0;b[(c[f>>2]|0)+
548+2>>1]=a;ge(c[h>>2]|0);a=(c[f>>2]|0)+548+2|0;if((e[(c[f>>2]|0)+548>>1]|0|0)
x3e;=2){b[a>>1]=0;c[j>>2]=8;m=c[j>>2]|0;i=n;return m|0}c[m>>2]=e[a>>1];c[k>
;>2]=hc(c[g>>2]|0,4,0,c[m>>2]|0,0,j)|0;if(c[j>>2]|0){m=c[j>>2]|0;i=n;return m|0}g=ee
(c[h>>2]|0,c[m>>2]<<2)|0;c[j>>2]=g;if(g|0){m=c[j>>2]|0;i=n;return m|0}c[(c[f
x3e;>2]|0)+548+4>>2]=c[k>>2];c[l>>2]=0;while(1){a=c[h>>2]|0;if((c[l>>2]|0
)>>>0>=(c[m>>2]|0)>>>0)break;g=ie(a)|0;b[(c[k>>2]|0)+(c[l>>2]
x3c;<2)>>1]=g;g=ie(c[h>>2]|0)|0;b[(c[k>>2]|0)+(c[l>>2]<<2)+2>>1
]=g;c[l>>2]=(c[l>>2]|0)+1}ge(a);m=c[j>>2]|0;i=n;return m|0}function al(a,b){a=a|0;b=b|0;var d=0,e=
0,f=0,g=0,h=0;g=i;i=i+16|0;h=g+12|0;d=g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[d>>2]=b;c[f>>2]=(c[h>>
;2]|0)+556;c[e>>2]=Wa[c[(c[h>>2]|0)+508>>2]&31](c[h>>2]|0,1346587732,c[d>>
;2]|0,0)|0;if(c[e>>2]|0){h=c[e>>2]|0;i=g;return h|0}c[e>>2]=le(c[d>>2]|0,8108,c[f>
x3e;2]|0)|0;h=c[e>>2]|0;i=g;return h|0}function bl(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>
x3e;2]=a;c[e>>2]=b;b=Qk(c[f>>2]|0,c[e>>2]|0,1651008868)|0;i=d;return b|0}function cl(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;j=f+32|0;l=f+28|0;k=f+24|0;g=f+20|0;h=f;c[j>>2]=a;c[l>
;>2]=b;c[k>>2]=d;c[g>>2]=e;c[h>>2]=0;c[h+4>>2]=c[l>>2];c[h+8>>2
]=c[k>>2];c[h+12>>2]=0;c[h+16>>2]=0;c[c[g>>2]>>2]=2147483647;d=dl(c[j>>
;2]|0,h,c[g>>2]|0)|0;i=f;return d|0}function dl(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;b=Ad(c[h>>2]|0,c[g>>2]|0,0,c[f>>
;2]|0)|0;i=e;return b|0}function el(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[f>>2]=c[f>>2];c[e>>2]=c[e>>2];i=d;return 7}function fl(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;r=i;i=i+48|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0;m=r+16|0;n=
r+12|0;o=r+8|0;p=r+4|0;q=r;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c
[o>>2]=g;if((c[(c[j>>2]|0)+616>>2]|0?(c[(c[j>>2]|0)+612>>2]|0)>>>
;0>(c[l>>2]|0)>>>0:0)?(c[q>>2]=(c[(c[j>>2]|0)+616>>2]|0)+((c[l>
x3e;2]|0)*48|0),c[p>>2]=gl(c[k>>2]|0,c[q>>2]|0,c[m>>2]|0,c[o>>2]|0)|0,(c[p>
;>2]|0)==0):0){c[c[n>>2]>>2]=c[q>>2];c[h>>2]=0;d=c[h>>2]|0;i=r;return d|0
}c[c[m>>2]>>2]=0;c[c[n>>2]>>2]=0;c[c[o>>2]>>2]=0;c[h>>2]=6
;d=c[h>>2]|0;i=r;return d|0}function gl(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;r
=i;i=i+48|0;h=r+28|0;j=r+24|0;k=r+20|0;l=r+16|0;m=r+12|0;p=r+8|0;q=r+4|0;n=r+32|0;o=r;c[j>>2]=a;c[k>>2]=d;c[
l>>2]=f;c[m>>2]=g;a:do if(((c[j>>2]|0)>>>0>=(e[(c[k>>2]|0)+40>
x3e;1]|0)>>>0?(c[j>>2]|0)>>>0<=(e[(c[k>>2]|0)+42>>1]|0)>
x3e;>0:0)?(c[p>>2]=c[(c[k>>2]|0)+4>>2],c[q>>2]=(c[p>>2]|0)+((c[c[k>
x3e;2]>>2]|0)*40|0),c[p>>2]|0):0){while(1){if((c[p>>2]|0)>>>0>=(c[q>>
;2]|0)>>>0)break a;if((c[j>>2]|0)>>>0>=(e[c[p>>2]>>1]|0)>
x3e;>0?(c[j>>2]|0)>>>0<=(e[(c[p>>2]|0)+2>>1]|0)>>>0:0)break
;c[p>>2]=(c[p>>2]|0)+40}b[n>>1]=(c[j>>2]|0)-(e[c[p>>2]>>1]|0);b:do switch
(e[(c[p>>2]|0)+4>>1]|0|0){case 3:case 1:{c[c[m>>2]>>2]=c[(c[(c[p>>2]|0)+28>
;>2]|0)+((e[n>>1]|0)<<2)>>2];break}case 2:{d=(c[(c[p>>2]|0)+8>>2]|0)+(_(c
[(c[p>>2]|0)+12>>2]|0,e[n>>1]|0)|0)|0;c[c[m>>2]>>2]=d;break}case 5:case 4:{c[o
>>2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[(c[p>>2]|0)+24>>2]|0)>
x3e;>0)break a;if((e[(c[(c[p>>2]|0)+32>>2]|0)+(c[o>>2]<<1)>>1]|0|0)==(c[j
>>2]|0))break;c[o>>2]=(c[o>>2]|0)+1}if((e[(c[p>>2]|0)+4>>1]|0|0)==4){c[c[m>
;>2]>>2]=c[(c[(c[p>>2]|0)+28>>2]|0)+(c[o>>2]<<2)>>2];break b}else
{d=(c[(c[p>>2]|0)+8>>2]|0)+(_(c[o>>2]|0,c[(c[p>>2]|0)+12>>2]|0)|0)|0;c[c[m>
;>2]>>2]=d;break b}}default:break a}while(0);c[c[l>>2]>>2]=c[p>>2];c[h>>2
]=0;d=c[h>>2]|0;i=r;return d|0}while(0);c[c[l>>2]>>2]=0;c[c[m>>2]>>2]=0;c[h>
;>2]=6;d=c[h>>2]|0;i=r;return d|0}function hl(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;n=i;i=i+32
|0;g=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;l=n;m=n+20|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=f;c[l>>2]=
0;switch(e[(c[j>>2]|0)+6>>1]|0|0){case 8:case 2:case 1:{b=le(c[h>>2]|0,8172,m)|0;c[l>>2]=
b;if(!b){a[c[k>>2]>>0]=a[m>>0]|0;a[(c[k>>2]|0)+1>>0]=a[m+1>>0]|0;a[(
c[k>>2]|0)+2>>0]=a[m+2>>0]|0;a[(c[k>>2]|0)+3>>0]=a[m+3>>0]|0;a[(c[k
x3e;>2]|0)+4>>0]=a[m+4>>0]|0;a[(c[k>>2]|0)+5>>0]=0;a[(c[k>>2]|0)+6>
x3e;0]=0;a[(c[k>>2]|0)+7>>0]=0}break}case 9:case 7:case 6:{c[l>>2]=le(c[h>>2]|0,8200,c[k
>>2]|0)|0;break}default:{if((e[(c[j>>2]|0)+4>>1]|0|0)!=2?(e[(c[j>>2]|0)+4>>1]|
0|0)!=5:0){c[g>>2]=3;b=c[g>>2]|0;i=n;return b|0}b=c[k>>2]|0;m=(c[j>>2]|0)+16|0;a[b>
x3e;0]=a[m>>0]|0;a[b+1>>0]=a[m+1>>0]|0;a[b+2>>0]=a[m+2>>0]|0;a[b+3>>
0]=a[m+3>>0]|0;a[b+4>>0]=a[m+4>>0]|0;a[b+5>>0]=a[m+5>>0]|0;a[b+6>>0]=
a[m+6>>0]|0;a[b+7>>0]=a[m+7>>0]|0}}c[g>>2]=c[l>>2];b=c[g>>2]|0;i=n;return
b|0}function il(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;w=i;i=i+64|0;l=w+48|0;x=w+44|0;y=w+40|0;m=w+36|0;n=w+32|0;o=w+28|0;p=w+24|0;s=w+20|0;r=w+16|0;t=w+12|0;v=w+8|0;u=w+4|0;q=w
;c[l>>2]=b;c[x>>2]=e;c[y>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[p>
;>2]=k;c[s>>2]=fl(c[l>>2]|0,c[y>>2]|0,c[x>>2]|0,u,v,t)|0;if(c[s>>2]|0){y=
c[s>>2]|0;i=w;return y|0}c[s>>2]=Wa[c[(c[l>>2]|0)+508>>2]&31](c[l>>2]|0,1161970772
,c[n>>2]|0,0)|0;if(c[s>>2]|0)c[s>>2]=Wa[c[(c[l>>2]|0)+508>>2]&31](c[l>
;>2]|0,1650745716,c[n>>2]|0,0)|0;if(c[s>>2]|0){y=c[s>>2]|0;i=w;return y|0}c[r>>2]=Mc
(c[n>>2]|0)|0;c[s>>2]=jl(c[v>>2]|0,c[u>>2]|0,c[r>>2]|0,c[t>>2]|0,c[(
c[l>>2]|0)+84>>2]|0,0,0,c[n>>2]|0,c[p>>2]|0,0)|0;if(c[s>>2]|0){y=c[s>>
;2]|0;i=w;return y|0}if(a[(c[v>>2]|0)+47>>0]&1|0){c[q>>2]=(a[(c[v>>2]|0)+16>
x3e;0]|0)-(a[(c[v>>2]|0)+16+1>>0]|0);a[(c[p>>2]|0)+5>>0]=(0-(d[(c[p>>2]|0)+1
x3e;>0]|0)|0)/2|0;a[(c[p>>2]|0)+6>>0]=((c[q>>2]|0)-(d[c[p>>2]>>0]|0)|0)/2
|0;a[(c[p>>2]|0)+7>>0]=((c[q>>2]|0)*12|0)/10|0}if(!(c[m>>2]&64)){y=c[s>>2
]|0;i=w;return y|0}ml(c[o>>2]|0,c[p>>2]|0);y=c[s>>2]|0;i=w;return y|0}function jl(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;L=i;i=i+96|0;u=L+72|0;v=L+68|0;q=L+64|0;x=L+60|0;M=L+56|0;y=L+52|0;z=L+48|0;A=L+44|0;B=L+40|0;r
=L+36|0;w=L+32|0;J=L+28|0;s=L+24|0;I=L+20|0;t=L+16|0;D=L+12|0;C=L+8|0;K=L+78|0;E=L+76|0;H=L+4|0;F=L+80|0;G=L;c[v>>2]=f
;c[q>>2]=g;c[x>>2]=h;c[M>>2]=j;c[y>>2]=k;c[z>>2]=l;c[A>>2]=m;c[B>
;>2]=n;c[r>>2]=o;c[w>>2]=p;c[J>>2]=c[(c[B>>2]|0)+28>>2];c[s>>2]=(
c[y>>2]|0)+76;m=Kc(c[B>>2]|0,(c[x>>2]|0)+(c[M>>2]|0)|0)|0;c[I>>2]=m;a:do if((m
|0)==0?(c[I>>2]=hl(c[B>>2]|0,c[q>>2]|0,c[r>>2]|0)|0,(c[I>>2]|0)==0):0){if(!(c[
w>>2]|0)){c[(c[s>>2]|0)+4>>2]=d[(c[r>>2]|0)+1>>0];c[c[s>>2]>>
;2]=d[c[r>>2]>>0];switch(d[(c[v>>2]|0)+46>>0]|0){case 1:{a[(c[s>>2]|0)+18>
;>0]=1;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|0)+4>>2]|0)+7>>3;break}case 2:{a[(
c[s>>2]|0)+18>>0]=3;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|0)+4>>2]|0)+3>
;>2;break}case 4:{a[(c[s>>2]|0)+18>>0]=4;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|
0)+4>>2]|0)+1>>1;break}case 8:{a[(c[s>>2]|0)+18>>0]=2;c[(c[s>>2]|0)+8>>
;2]=c[(c[s>>2]|0)+4>>2];break}default:{c[u>>2]=3;M=c[u>>2]|0;i=L;return M|0}}c[t>
x3e;2]=_(c[c[s>>2]>>2]|0,c[(c[s>>2]|0)+8>>2]|0)|0;if(!(c[t>>2]|0))break;c[I>
;>2]=xc(c[y>>2]|0,c[t>>2]|0)|0;if(c[I>>2]|0)break}switch(e[(c[q>>2]|0)+6>>
;1]|0){case 7:case 6:case 5:case 2:case 1:{c[u>>2]=kl(c[s>>2]|0,c[z>>2]|0,c[A>>2]|0,d[(c
[v>>2]|0)+46>>0]|0,b[(c[q>>2]|0)+6>>1]|0,c[r>>2]|0,c[B>>2]|0)|0;M=c[
u>>2]|0;i=L;return M|0}case 8:{M=Qc(c[B>>2]|0,1)|0;c[I>>2]=M;if(M|0){c[I>>2]=83;break a}
break}case 9:break;default:{c[u>>2]=3;M=c[u>>2]|0;i=L;return M|0}}b[K>>1]=Pc(c[B>>2]|0,I
)|0;if((c[I>>2]|0)==0?(c[D>>2]=hc(c[J>>2]|0,4,0,e[K>>1]|0,0,I)|0,(c[I>>2]|0)==
0):0){b[E>>1]=b[K>>1]|0;M=ee(c[B>>2]|0,e[K>>1]<<2)|0;c[I>>2]=M;b:do
if(!M){c[C>>2]=c[D>>2];while(1){q=c[B>>2]|0;if((e[E>>1]|0)<=0)break;M=ie(q)|0;b[c[C
>>2]>>1]=M;M=he(c[B>>2]|0)|0;a[(c[C>>2]|0)+2>>0]=M;M=he(c[B>>2]|0)|0
;a[(c[C>>2]|0)+3>>0]=M;b[E>>1]=(b[E>>1]|0)+-1<<16>>16;c[C>>
;2]=(c[C>>2]|0)+4}ge(q);b[E>>1]=b[K>>1]|0;c[C>>2]=c[D>>2];while(1){if((e[E>
;>1]|0)<=0)break b;c[I>>2]=gl(e[c[C>>2]>>1]|0,c[v>>2]|0,H,G)|0;if(c[I>>
;2]|0)break b;c[I>>2]=jl(c[v>>2]|0,c[H>>2]|0,c[x>>2]|0,c[G>>2]|0,c[y>>
;2]|0,(c[z>>2]|0)+(a[(c[C>>2]|0)+2>>0]|0)|0,(c[A>>2]|0)+(a[(c[C>>2]|0)+3>
x3e;0]|0)|0,c[B>>2]|0,F,(c[w>>2]|0)+1|0)|0;if(c[I>>2]|0)break b;b[E>>1]=(b[E>>
1]|0)+-1<<16>>16;c[C>>2]=(c[C>>2]|0)+4}}while(0);Fb(c[J>>2]|0,c[D>>2
]|0);c[D>>2]=0}}while(0);c[u>>2]=c[I>>2];M=c[u>>2]|0;i=L;return M|0}function kl(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;C=i;i=i+64|
0;n=C+48|0;o=C+44|0;p=C+40|0;q=C+36|0;r=C+32|0;s=C+52|0;t=C+28|0;u=C+24|0;v=C+20|0;y=C+16|0;w=C+12|0;x=C+8|0;z=C+4|0;B=C+54|0;A=
C;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;c[r>>2]=j;b[s>>1]=k;c[t>>2]=l;c[u>
;>2]=m;if(((c[p>>2]|0)>=0?!((c[q>>2]|0)<0?1:((c[p>>2]|0)+(d[(c[t>>2]|0)+1
>>0]|0)|0)>(c[(c[o>>2]|0)+4>>2]|0)):0)?((c[q>>2]|0)+(d[c[t>>2]>>
;0]|0)|0)<=(c[c[o>>2]>>2]|0):0){c[y>>2]=d[(c[t>>2]|0)+1>>0];c[w>>
;2]=d[c[t>>2]>>0];c[z>>2]=_(c[r>>2]|0,c[y>>2]|0)|0;a[B>>0]=0;switch(
e[s>>1]|0|0){case 6:case 1:{switch(c[r>>2]|0){case 1:{c[A>>2]=(c[y>>2]|0)+7>>3
;break}case 2:{c[A>>2]=(c[y>>2]|0)+3>>2;break}case 4:{c[A>>2]=(c[y>>2]|0)+1>
;>1;break}default:c[A>>2]=c[y>>2]}c[x>>2]=_(c[w>>2]|0,c[A>>2]|0)|0;a[B>
;>0]=1;break}case 7:case 5:case 2:{c[z>>2]=_(c[y>>2]|0,c[r>>2]|0)|0;c[x>>2]=(_(c[w
x3e;>2]|0,c[z>>2]|0)|0)+7>>3;break}default:{c[n>>2]=3;h=c[n>>2]|0;i=C;return h|0}}h
=ee(c[u>>2]|0,c[x>>2]|0)|0;c[v>>2]=h;if(!h){h=_(c[p>>2]|0,c[r>>2]|0)|0;ll(c[o
x3e;>2]|0,c[(c[u>>2]|0)+32>>2]|0,c[z>>2]|0,a[B>>0]|0,h,c[q>>2]|0,d[c[t>
;>2]>>0]|0);ge(c[u>>2]|0)}}else c[v>>2]=6;c[n>>2]=c[v>>2];h=c[n>>
;2]|0;i=C;return h|0}function ll(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,D=0,E=0,F=0;F=i;i=i+64|0;n=F+44|0;q=F+40|0;r=F+36|0;s=F+54|0;t=F+32|0;o=F+28|0;p=F+24|0;y=F+20|0;z
=F+16|0;x=F+12|0;u=F+48|0;A=F+8|0;w=F+4|0;v=F;B=F+53|0;C=F+52|0;D=F+51|0;E=F+50|0;c[n>>2]=f;c[q>>2]=g;c[r>
;>2]=h;a[s>>0]=j;c[t>>2]=k;c[o>>2]=l;c[p>>2]=m;c[z>>2]=c[(c[n>>
2]|0)+8>>2];c[y>>2]=c[(c[n>>2]|0)+12>>2];if((c[z>>2]|0)<0){l=_(c[z>
x3e;2]|0,(c[c[n>>2]>>2]|0)-1|0)|0;c[y>>2]=(c[y>>2]|0)+(0-l)}l=(c[t>>2]>
x3e;3)+(_(c[o>>2]|0,c[z>>2]|0)|0)|0;c[y>>2]=(c[y>>2]|0)+l;b[u>>1]=0;c[A>
x3e;2]=0;c[x>>2]=c[p>>2];while(1){if((c[x>>2]|0)<=0)break;c[w>>2]=c[y>>2];
c[v>>2]=c[r>>2];a[B>>0]=c[t>>2]&7;a[C>>0]=8-(d[B>>0]|0);if((c[v
>>2]|0)>=8){c[v>>2]=(c[v>>2]|0)-8;do{if((c[A>>2]|0)>>>0<8){l=c[
q>>2]|0;c[q>>2]=l+1;b[u>>1]=e[u>>1]|(d[l>>0]&65535)<<8-(c[A>
;>2]|0)&65535;c[A>>2]=(c[A>>2]|0)+8}a[D>>0]=e[u>>1]>>8;n=d[D>
x3e;0]|0;if(a[B>>0]|0){l=c[w>>2]|0;a[l>>0]=d[l>>0]|n>>d[B>>0]&255
;l=(c[w>>2]|0)+1|0;a[l>>0]=d[l>>0]|d[D>>0]<<d[C>>0]&255}else{l=
c[w>>2]|0;a[l>>0]=d[l>>0]|n}c[w>>2]=(c[w>>2]|0)+1;b[u>>1]=e[u>
x3e;1]<<8;c[A>>2]=(c[A>>2]|0)-8;c[v>>2]=(c[v>>2]|0)-8}while((c[v>>2]|
0)>=0);c[v>>2]=(c[v>>2]|0)+8}if((c[v>>2]|0)>0){if((c[A>>2]|0)<(c[v>
x3e;2]|0)){l=c[q>>2]|0;c[q>>2]=l+1;b[u>>1]=e[u>>1]|(d[l>>0]&65535)<
x3c;8-(c[A>>2]|0)&65535;c[A>>2]=(c[A>>2]|0)+8}a[E>>0]=e[u>>1]>>
8&255&~(255>>c[v>>2]);l=c[w>>2]|0;a[l>>0]=d[l>>0]|d[E>>0]
x3e;>d[B>>0]&255;if((c[v>>2]|0)>(d[C>>0]|0)){l=(c[w>>2]|0)+1|0;a[l>
x3e;0]=d[l>>0]|d[E>>0]<<d[C>>0]&255}b[u>>1]=e[u>>1]<<
c[v>>2];c[A>>2]=(c[A>>2]|0)-(c[v>>2]|0)}if(a[s>>0]|0){b[u>>1]=0;c[A
x3e;>2]=0}c[y>>2]=(c[y>>2]|0)+(c[z>>2]|0);c[x>>2]=(c[x>>2]|0)+-1}i=F;return
}function ml(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;z=i;i=i+80|0;l
=z+60|0;m=z+56|0;w=z+52|0;f=z+48|0;r=z+44|0;q=z+40|0;g=z+36|0;j=z+32|0;h=z+28|0;k=z+24|0;o=z+20|0;t=z+16|0;y=z+12|0;u=z+66|0;n=z
+8|0;x=z+65|0;v=z+4|0;p=z;s=z+64|0;c[l>>2]=b;c[m>>2]=e;c[q>>2]=c[(c[l>>2]|0)+12>>
;2];c[w>>2]=c[c[l>>2]>>2];c[r>>2]=c[(c[l>>2]|0)+8>>2];c[f>>
;2]=0;a:while(1){if((c[f>>2]|0)>=(c[w>>2]|0))break;c[g>>2]=c[q>>2];c[j>>2
]=(c[q>>2]|0)+(c[r>>2]|0);while(1){if((c[g>>2]|0)>>>0>=(c[j>>2]|0)
x3e;>>0)break;if(a[c[g>>2]>>0]|0)break a;c[g>>2]=(c[g>>2]|0)+1}c[q>>
2]=c[j>>2];c[f>>2]=(c[f>>2]|0)+1}if((c[f>>2]|0)>=(c[w>>2]|0)){c[(c[l>
;>2]|0)+4>>2]=0;c[c[l>>2]>>2]=0;c[(c[l>>2]|0)+8>>2]=0;a[(c[l>>2
]|0)+18>>0]=1;i=z;return}if((c[f>>2]|0)>0){c[q>>2]=c[(c[l>>2]|0)+12>>2];e
=(c[q>>2]|0)+(_(c[f>>2]|0,c[r>>2]|0)|0)|0;Ts(c[q>>2]|0,e|0,_((c[w>>2]|0)-(c[f
x3e;>2]|0)|0,c[r>>2]|0)|0)|0;a[c[m>>2]>>0]=(d[c[m>>2]>>0]|0)-(c[f>
x3e;2]|0);a[(c[m>>2]|0)+3>>0]=(a[(c[m>>2]|0)+3>>0]|0)-(c[f>>2]|0);a[(c[m>
x3e;2]|0)+6>>0]=(a[(c[m>>2]|0)+6>>0]|0)-(c[f>>2]|0);e=c[l>>2]|0;c[e>>
;2]=(c[e>>2]|0)-(c[f>>2]|0);c[w>>2]=(c[w>>2]|0)-(c[f>>2]|0)}c[q>>2]=(
c[(c[l>>2]|0)+12>>2]|0)+(_((c[w>>2]|0)-1|0,c[r>>2]|0)|0);c[f>>2]=0;b:while(1){
if((c[f>>2]|0)>=(c[w>>2]|0))break;c[h>>2]=c[q>>2];c[k>>2]=(c[q>>
;2]|0)+(c[r>>2]|0);while(1){if((c[h>>2]|0)>>>0>=(c[k>>2]|0)>>>0
)break;if(a[c[h>>2]>>0]|0)break b;c[h>>2]=(c[h>>2]|0)+1}c[q>>2]=(c[q>>
;2]|0)+(0-(c[r>>2]|0));c[f>>2]=(c[f>>2]|0)+1}if((c[f>>2]|0)>0){a[c[m>>2]
x3e;>0]=(d[c[m>>2]>>0]|0)-(c[f>>2]|0);c[w>>2]=(c[w>>2]|0)-(c[f>>
;2]|0);e=c[l>>2]|0;c[e>>2]=(c[e>>2]|0)-(c[f>>2]|0)}c:do{c[q>>2]=c[(c[l>
x3e;2]|0)+12>>2];c[o>>2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);while(1){if((c
[q>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(d[c[q>>2]>>0]
x26;128|0)break c;c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}c[q>>2]=c[(c[l>>2]|0)+12>
;>2];c[o>>2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);while(1){f=(c[l>>2]|0
)+4|0;g=c[f>>2]|0;if((c[q>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[y
>>2]=g;c[n>>2]=c[q>>2];a[u>>0]=d[c[n>>2]>>0]<<1;c[t>
x3e;2]=8;while(1){if((c[t>>2]|0)>=(c[y>>2]|0))break;a[x>>0]=a[(c[n>>2]|0)+1>
x3e;0]|0;a[c[n>>2]>>0]=d[u>>0]|d[x>>0]>>7;a[u>>0]=d[x>>0]
x3c;<1;c[n>>2]=(c[n>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+8}a[c[n>>2]>>0
]=a[u>>0]|0;c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}c[f>>2]=g+-1;e=(c[m>>2]|
0)+2|0;a[e>>0]=(a[e>>0]|0)+1<<24>>24;e=(c[m>>2]|0)+5|0;a[e>>0]=(a[e
x3e;>0]|0)+1<<24>>24;e=(c[m>>2]|0)+1|0;a[e>>0]=(a[e>>0]|0)+-1<<
24>>24}while((c[(c[l>>2]|0)+4>>2]|0)>0);d:while(1){c[v>>2]=(c[(c[l>>2]|0)+
4>>2]|0)-1;c[q>>2]=(c[(c[l>>2]|0)+12>>2]|0)+(c[v>>2]>>3);c[p>
x3e;2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);a[s>>0]=128>>(c[v>>2]
x26;7);while(1){if((c[q>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;if(d[c[q>
x3e;2]>>0]&d[s>>0]|0){f=37;break d}c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}y=(c[l
>>2]|0)+4|0;c[y>>2]=(c[y>>2]|0)+-1;y=(c[m>>2]|0)+1|0;a[y>>0]=(a[y>>0
]|0)+-1<<24>>24;if((c[(c[l>>2]|0)+4>>2]|0)<=0){f=37;break}}if((f|0)==37){i=z;return
}}function nl(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return}function
ol(d){d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;f=n+20|0;j=n+16|0;l=n+12|0;g=n+8|0;m=n+4|0;k=n+24|0;h=n;c[f>
x3e;2]=d;c[j>>2]=c[(c[f>>2]|0)+100>>2];c[l>>2]=(c[f>>2]|0)+628;if(!(a[c[l>
;>2]>>0]|0)){m=c[l>>2]|0;a[m>>0]=0;i=n;return}c[g>>2]=c[(c[f>>2]|0)+468
x3e;>2];if((c[g>>2]|0)!=131072){if((c[g>>2]|0)!=163840){m=c[l>>2]|0;a[m>>0]=0;i=n;return
}c[h>>2]=(c[l>>2]|0)+4;Fb(c[j>>2]|0,c[(c[h>>2]|0)+4>>2]|0);c[(c[h>>2
]|0)+4>>2]=0;b[c[h>>2]>>1]=0;m=c[l>>2]|0;a[m>>0]=0;i=n;return}c[m>>2
]=(c[l>>2]|0)+4;Fb(c[j>>2]|0,c[(c[m>>2]|0)+4>>2]|0);c[(c[m>>2]|0)+4>>
;2]=0;b[c[m>>2]>>1]=0;b[k>>1]=0;while(1){f=c[j>>2]|0;if((e[k>>1]|0)>=(e[(
c[m>>2]|0)+2>>1]|0))break;Fb(f,c[(c[(c[m>>2]|0)+8>>2]|0)+(e[k>>1]<<2
)>>2]|0);c[(c[(c[m>>2]|0)+8>>2]|0)+(e[k>>1]<<2)>>2]=0;b[k>>
;1]=(b[k>>1]|0)+1<<16>>16}Fb(f,c[(c[m>>2]|0)+8>>2]|0);c[(c[m>>2]|0)+
8>>2]=0;b[(c[m>>2]|0)+2>>1]=0;m=c[l>>2]|0;a[m>>0]=0;i=n;return}function pl(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;c[h>>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>>2];i=e;return 7}function
ql(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[f>>2]=c[f>
;>2];c[e>>2]=c[e>>2];i=d;return 0}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,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=i;i=i+96|0;g=E+88|0;h=E+84|0;j=E+80|0;D=E+76|0;l=E+72|0;s=
E+68|0;y=E+64|0;z=E+60|0;k=E+56|0;w=E+52|0;C=E+48|0;r=E+44|0;n=E+40|0;x=E+36|0;B=E+32|0;p=E+28|0;v=E+24|0;t=E+20|0;u=E+16|0;A=E+
12|0;o=E+8|0;m=E+4|0;q=E;c[g>>2]=b;c[h>>2]=e;c[j>>2]=f;c[D>>2]=0;c[s>>2]=1;c[y
>>2]=c[(c[g>>2]|0)+772>>2];c[z>>2]=(c[y>>2]|0)+(c[(c[g>>2]|0)+776>
;>2]|0);c[y>>2]=(c[y>>2]|0)+4;c[s>>2]=1;c[l>>2]=c[(c[g>>2]|0)+780>
x3e;2];while(1){if((c[l>>2]|0)>>>0<=0){b=28;break}if(((c[y>>2]|0)+6|0)>>>
0>(c[z>>2]|0)>>>0){b=28;break}c[k>>2]=c[y>>2];c[w>>2]=c[k>>
;2];c[y>>2]=(c[y>>2]|0)+2;c[C>>2]=((d[(c[y>>2]|0)+-2>>0]&65535)<<
;8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[y>>2]=(c[y>>2]|0)+2;c[
r>>2]=((d[(c[y>>2]|0)+-2>>0]&65535)<<8|(d[(c[y>>2]|0)+-2+1>>0]
x26;65535)<<0)&65535;c[y>>2]=(c[y>>2]|0)+2;c[n>>2]=((d[(c[y>>2]|0)+-2>
;>0]&65535)<<8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[B>>
;2]=0;c[C>>2]=c[C>>2];c[w>>2]=(c[k>>2]|0)+(c[r>>2]|0);if((c[w>>2]|0)
x3e;>>0>(c[z>>2]|0)>>>0)c[w>>2]=c[z>>2];a:do if(c[(c[g>>2]|
0)+784>>2]&c[s>>2]|0?((c[y>>2]|0)+8|0)>>>0<=(c[w>>2]|0)>
x3e;>0:0){c[y>>2]=(c[y>>2]|0)+2;c[x>>2]=((d[(c[y>>2]|0)+-2>>0]&65535
)<<8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[y>>2]=(c[y>>
;2]|0)+6;if(((c[w>>2]|0)-(c[y>>2]|0)|0)<((c[x>>2]|0)*6|0))c[x>>2]=((c[w>>
2]|0)-(c[y>>2]|0)|0)/6|0;if(!((c[n>>2]|0)>>>8)){c[p>>2]=c[h>>2]<<
;16|c[j>>2];if(c[(c[g>>2]|0)+788>>2]&c[s>>2]|0){c[v>>2]=0;c[t>>
2]=c[x>>2];while(1){if((c[v>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a
;c[u>>2]=((c[v>>2]|0)+(c[t>>2]|0)|0)>>>1;c[A>>2]=(c[y>>2]|0)+((
c[u>>2]|0)*6|0);c[A>>2]=(c[A>>2]|0)+4;c[o>>2]=d[(c[A>>2]|0)+-4>>0]
x3c;<24|d[(c[A>>2]|0)+-4+1>>0]<<16|d[(c[A>>2]|0)+-4+2>>0]<<8|d[(
c[A>>2]|0)+-4+3>>0]<<0;if((c[o>>2]|0)==(c[p>>2]|0))break;b=c[u>>2]|0
;if((c[o>>2]|0)>>>0<(c[p>>2]|0)>>>0){c[v>>2]=b+1;continue}else{
c[t>>2]=b;continue}}c[B>>2]=((a[c[A>>2]>>0]<<16>>16<<8|d[(
c[A>>2]|0)+1>>0]<<0)&65535)<<16>>16}else{c[m>>2]=c[x>>
;2];while(1){if((c[m>>2]|0)>>>0<=0)break a;c[y>>2]=(c[y>>2]|0)+4;c[q>>
;2]=d[(c[y>>2]|0)+-4>>0]<<24|d[(c[y>>2]|0)+-4+1>>0]<<16|d[(c[y>
x3e;2]|0)+-4+2>>0]<<8|d[(c[y>>2]|0)+-4+3>>0]<<0;b=c[y>>2]|0;if((c[q
x3e;>2]|0)==(c[p>>2]|0))break;c[y>>2]=b+2;c[m>>2]=(c[m>>2]|0)+-1}c[B>>2]=((
a[b>>0]<<16>>16<<8|d[(c[y>>2]|0)+1>>0]<<0)&65535)<
;<16>>16}b=c[B>>2]|0;if(c[n>>2]&8|0){c[D>>2]=b;break}else{c[D>>2]=(c
[D>>2]|0)+b;break}}}while(0);c[y>>2]=c[w>>2];c[l>>2]=(c[l>>2]|0)+-1;c[s>
x3e;2]=c[s>>2]<<1}if((b|0)==28){i=E;return c[D>>2]|0}return 0}function sl(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;n=i;i=i+48|0;f=n+36|0;h=n+32|0;m=n+16|0;k=n+12|0;g=n+8|0;j=n+4|0;l=n;c[f>>2]=a;c[h>
x3e;2]=d;c[g>>2]=c[(c[h>>2]|0)+28>>2];c[m+12>>2]=Mc(c[h>>2]|0)|0;c[m>>
;2]=Oc(c[h>>2]|0,k)|0;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}d=le(c[h>>2]|0,8240,m)|0;
c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}c[k>>2]=tl(m,c[h>>2]|0)|0;if(c[k>>
;2]|0){m=c[k>>2]|0;i=n;return m|0}b[(c[f>>2]|0)+152>>1]=b[m+4>>1]|0;c[(c[f>>2]|
0)+148>>2]=c[m>>2];d=hc(c[g>>2]|0,16,0,e[(c[f>>2]|0)+152>>1]|0,0,k)|0;c[(c[f
x3e;>2]|0)+156>>2]=d;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}d=Kc(c[h>>2]|0,(c[m+12
>>2]|0)+12|0)|0;c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}d=ee(c[h>>2]|0,(e[(c[f>
;>2]|0)+152>>1]|0)<<4)|0;c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}c[j>>
;2]=c[(c[f>>2]|0)+156>>2];c[l>>2]=0;while(1){f=c[h>>2]|0;if((c[l>>2]|0)>=(
e[m+4>>1]|0|0))break;d=je(f)|0;c[c[j>>2]>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>>2]|0)+
4>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>>2]|0)+8>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>
x3e;2]|0)+12>>2]=d;if(((c[(c[j>>2]|0)+8>>2]|0)+(c[(c[j>>2]|0)+12>>2]|0)|0)>
;>>0<=(c[(c[h>>2]|0)+4>>2]|0)>>>0)c[j>>2]=(c[j>>2]|0)+16;c
[l>>2]=(c[l>>2]|0)+1}ge(f);m=c[k>>2]|0;i=n;return m|0}function tl(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,q=0,r=0,s=0;s=i;i=i+64|0;f=s+48|0;g=s+44|0;h=s+40|0;n=s+54|0;q=s+52|0;j=s+36|0;l=s+32|0;k=s+28|0;o=
s+24|0;p=s+8|0;m=s;c[f>>2]=a;c[g>>2]=d;b[q>>1]=0;c[j>>2]=0;c[l>>2]=0;c[k>
x3e;2]=0;c[o>>2]=(c[(c[f>>2]|0)+12>>2]|0)+12;d=Kc(c[g>>2]|0,c[o>>2]|0)|0;c[h
x3e;>2]=d;if(d|0){r=c[h>>2]|0;i=s;return r|0}b[n>>1]=0;a:while(1){if((e[n>>1]|0|0)>=(e[(
c[f>>2]|0)+4>>1]|0|0))break;d=le(c[g>>2]|0,8264,p)|0;c[h>>2]=d;if(d|0){r=5;break}do if(((
c[p+8>>2]|0)+(c[p+12>>2]|0)|0)>>>0<=(c[(c[g>>2]|0)+4>>2]|0)>>
;>0){b[q>>1]=(b[q>>1]|0)+1<<16>>16;if((c[p>>2]|0)!=1751474532?(c[p>
x3e;2]|0)!=1651008868:0){if((c[p>>2]|0)==1397313095){c[l>>2]=1;break}if((c[p>>2]|0)!=1296389185)break
;c[k>>2]=1;break}c[j>>2]=1;if((c[p+12>>2]|0)>>>0<54){r=10;break a}d=Kc(c[g>
;>2]|0,(c[p+8>>2]|0)+12|0)|0;c[h>>2]=d;if(d|0){r=27;break a}c[m>>2]=Oc(c[g>>2]|0,h)|
0;if(c[h>>2]|0){r=27;break a}if((c[m>>2]|0)!=1594834165){r=14;break a}d=Kc(c[g>>2]|0,(c[o>>
;2]|0)+((e[n>>1]|0)+1<<4)|0)|0;c[h>>2]=d;if(d|0){r=27;break a}}while(0);b[n>>1]=(b[n>
;>1]|0)+1<<16>>16}if((r|0)==5){b[n>>1]=(b[n>>1]|0)+-1<<16>>16;b
[(c[f>>2]|0)+4>>1]=b[n>>1]|0}else if((r|0)==10){c[h>>2]=142;r=c[h>>2]|0;i=s;return
r|0}else if((r|0)==14){c[h>>2]=142;r=c[h>>2]|0;i=s;return r|0}else if((r|0)==27){r=c[h>>2]|0;i=s;
return r|0}b[(c[f>>2]|0)+4>>1]=b[q>>1]|0;if(!(e[(c[f>>2]|0)+4>>1]|0)){c[h>
;>2]=2;r=c[h>>2]|0;i=s;return r|0}if((c[j>>2]|0)==0?!((c[l>>2]|0)!=0&(c[k>>2]|
0)!=0):0){c[h>>2]=142;r=c[h>>2]|0;i=s;return r|0}c[h>>2]=0;r=c[h>>2]|0;i=s;return r|0}function
ul(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;E=i;i=i
+80|0;B=E+72|0;j=E+68|0;C=E+78|0;D=E+64|0;r=E+60|0;z=E+56|0;t=E+52|0;s=E+48|0;u=E+44|0;q=E+40|0;w=E+36|0;v=E+32|0;o=E+28|0;x=E+24
|0;p=E+20|0;y=E+16|0;k=E+12|0;m=E+8|0;l=E+4|0;n=E;A=E+76|0;c[B>>2]=f;c[j>>2]=g;a[C>>0]=h;c[r>
x3e;2]=c[(c[j>>2]|0)+28>>2];f=c[B>>2]|0;if(a[C>>0]|0){c[o>>2]=f+300+36;c[x>
;>2]=(c[B>>2]|0)+300+40;c[D>>2]=Wa[c[(c[B>>2]|0)+508>>2]&31](c[B>>2]|
0,1986884728,c[j>>2]|0,z)|0;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}c[s>>2]=e[(c[B>
;>2]|0)+300+34>>1];if((c[s>>2]|0)>>>0>(((c[z>>2]|0)>>>0)/4
|0)>>>0)c[s>>2]=((c[z>>2]|0)>>>0)/4|0;b[(c[B>>2]|0)+300+34>>
;1]=0;c[q>>2]=c[o>>2];c[w>>2]=c[x>>2]}else{c[p>>2]=f+216+36;c[y>>2]=(
c[B>>2]|0)+216+40;c[D>>2]=Wa[c[(c[B>>2]|0)+508>>2]&31](c[B>>2]|0,1752003704
,c[j>>2]|0,z)|0;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}c[s>>2]=e[(c[B>>2]|0)+
216+34>>1];if((c[s>>2]|0)>>>0>(((c[z>>2]|0)>>>0)/4|0)>>
;>0)c[s>>2]=((c[z>>2]|0)>>>0)/4|0;b[(c[B>>2]|0)+216+34>>1]=0;c[q>
;>2]=c[p>>2];c[w>>2]=c[y>>2]}c[t>>2]=(e[(c[B>>2]|0)+260+4>>1]|0
)-(c[s>>2]|0);c[u>>2]=(((c[z>>2]|0)-(c[s>>2]<<2)|0)>>>0)/2|0;if
((c[t>>2]|0)<0)c[t>>2]=0;y=hc(c[r>>2]|0,4,0,c[s>>2]|0,0,D)|0;c[c[q>>2]>
;>2]=y;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}y=hc(c[r>>2]|0,2,0,c[t>>2]|0,0,D)|0
;c[c[w>>2]>>2]=y;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}z=ee(c[j>>2]|0,c[z
x3e;>2]|0)|0;c[D>>2]=z;if(z|0){D=c[D>>2]|0;i=E;return D|0}c[v>>2]=c[(c[j>>2]|0)+32
x3e;>2];c[k>>2]=c[c[q>>2]>>2];c[m>>2]=(c[k>>2]|0)+(c[s>>2]<
;<2);while(1){if((c[k>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;c[v>>
;2]=(c[v>>2]|0)+2;b[c[k>>2]>>1]=(d[(c[v>>2]|0)+-2>>0]&65535)<<8
|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0;c[v>>2]=(c[v>>2]|0)+2;b[(c[k>>
;2]|0)+2>>1]=a[(c[v>>2]|0)+-2>>0]<<16>>16<<8|d[(c[v>>2]|0)+-
2+1>>0]<<0;c[k>>2]=(c[k>>2]|0)+4}c[l>>2]=c[c[w>>2]>>2];c[n
>>2]=(c[l>>2]|0)+(((c[t>>2]|0)<(c[u>>2]|0)?c[t>>2]|0:c[u>>2]|0)
x3c;<1);while(1){if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[v>
x3e;2]=(c[v>>2]|0)+2;b[c[l>>2]>>1]=a[(c[v>>2]|0)+-2>>0]<<16>>
;16<<8|d[(c[v>>2]|0)+-2+1>>0]<<0;c[l>>2]=(c[l>>2]|0)+2}a:do if((c[u
x3e;>2]|0)>0?(c[t>>2]|0)>(c[u>>2]|0):0){b[A>>1]=b[(c[c[w>>2]>>2
]|0)+((c[u>>2]|0)-1<<1)>>1]|0;c[n>>2]=(c[c[w>>2]>>2]|0)+(c[t>
x3e;2]<<1);while(1){if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a
;b[c[l>>2]>>1]=b[A>>1]|0;c[l>>2]=(c[l>>2]|0)+2}}while(0);ge(c[j>>2]|
0);g=c[s>>2]&65535;f=c[B>>2]|0;if(a[C>>0]|0){b[f+300+34>>1]=g;D=c[D>>2]|0
;i=E;return D|0}else{b[f+216+34>>1]=g;D=c[D>>2]|0;i=E;return D|0}return 0}function vl(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;s=i;i=i+64|0;e=s+48|0;k=s+44|0;r=s+40|0;n=s+36|0;j=s+32|0;g=s+28|0;q=s+24
|0;h=s+20|0;f=s+16|0;p=s+12|0;l=s+8|0;o=s+4|0;m=s;c[e>>2]=a;c[k>>2]=d;c[r>>2]=0;c[n>>2]=
c[(c[k>>2]|0)+28>>2];c[(c[e>>2]|0)+612>>2]=0;c[r>>2]=Wa[c[(c[e>>2]|0
)+508>>2]&31](c[e>>2]|0,1161972803,c[k>>2]|0,0)|0;if(c[r>>2]|0)c[r>>2]=Wa
[c[(c[e>>2]|0)+508>>2]&31](c[e>>2]|0,1651273571,c[k>>2]|0,0)|0;if(c[r>>2]|
0){r=c[r>>2]|0;i=s;return r|0}c[q>>2]=Mc(c[k>>2]|0)|0;d=ee(c[k>>2]|0,8)|0;c[r>>
;2]=d;if(d|0){r=c[r>>2]|0;i=s;return r|0}c[j>>2]=je(c[k>>2]|0)|0;c[g>>2]=je(c[k>>
;2]|0)|0;ge(c[k>>2]|0);if((c[j>>2]|0)!=131072|(c[g>>2]|0)>>>0>=65536){c[r>
;>2]=3;r=c[r>>2]|0;i=s;return r|0}j=hc(c[n>>2]|0,48,0,c[g>>2]|0,0,r)|0;c[(c[e>>2]|0
)+616>>2]=j;if(c[r>>2]|0){r=c[r>>2]|0;i=s;return r|0}c[(c[e>>2]|0)+612>>2]=c[g
>>2];c[h>>2]=c[(c[e>>2]|0)+616>>2];c[f>>2]=c[g>>2];j=ee(c[k>>
;2]|0,(c[g>>2]|0)*48|0)|0;c[r>>2]=j;if(j|0){r=c[r>>2]|0;i=s;return r|0}while(1){if((c[f>>
;2]|0)>>>0<=0)break;j=le(c[k>>2]|0,8288,c[h>>2]|0)|0;c[r>>2]=j;if(j|0)break;j=
le(c[k>>2]|0,8308,(c[h>>2]|0)+16|0)|0;c[r>>2]=j;if(j|0)break;j=le(c[k>>2]|0,8308,(c[h>
;>2]|0)+28|0)|0;c[r>>2]=j;if(j|0)break;j=le(c[k>>2]|0,8360,c[h>>2]|0)|0;c[r>>2]=j;if
(j|0)break;c[f>>2]=(c[f>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+48}ge(c[k>>2]|0);c[p>
;>2]=c[(c[e>>2]|0)+616>>2];c[l>>2]=c[g>>2];a:while(1){if((c[l>>2]|0)>
;>>0<=0){e=30;break}c[m>>2]=c[c[p>>2]>>2];j=Kc(c[k>>2]|0,(c[q>>
2]|0)+(c[(c[p>>2]|0)+8>>2]|0)|0)|0;c[r>>2]=j;if(j|0){e=30;break}j=ee(c[k>>2]|0,c[c[p>
;>2]>>2]<<3)|0;c[r>>2]=j;if(j|0){e=30;break}j=hc(c[n>>2]|0,40,0,c[c[p>>2]
x3e;>2]|0,0,r)|0;c[(c[p>>2]|0)+4>>2]=j;if(c[r>>2]|0){e=30;break}c[o>>2]=c[(c[p>
;>2]|0)+4>>2];while(1){e=c[k>>2]|0;if((c[m>>2]|0)>>>0<=0)break;j=ie(e)|0;
b[c[o>>2]>>1]=j;j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+2>>1]=j;j=(c[q>>2]|0
)+(c[(c[p>>2]|0)+8>>2]|0)|0;j=j+(je(c[k>>2]|0)|0)|0;c[(c[o>>2]|0)+36>>2]=j;c[m
>>2]=(c[m>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+40}ge(e);c[m>>2]=c[c[p>>2]
x3e;>2];c[o>>2]=c[(c[p>>2]|0)+4>>2];while(1){if((c[m>>2]|0)>>>0<
;=0)break;j=Kc(c[k>>2]|0,c[(c[o>>2]|0)+36>>2]|0)|0;c[r>>2]=j;if(j|0){e=30;break a}j=ee(c
[k>>2]|0,8)|0;c[r>>2]=j;if(j|0){e=30;break a}j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+4>>
;1]=j;j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+6>>1]=j;j=je(c[k>>2]|0)|0;c[(c[o>>2]|0)+
8>>2]=j;ge(c[k>>2]|0);c[r>>2]=wl(c[o>>2]|0,c[k>>2]|0)|0;if(c[r>>2]|0
){e=30;break a}c[m>>2]=(c[m>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+40}c[l>>2]=(c[l>
;>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+48}if((e|0)==30){r=c[r>>2]|0;i=s;return r|0}return 0}function
wl(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;p=i;i=i+32|0;j=p+24|0;k=p+20|0;l=p+16|0;g=p+12|0;o=p+8|0;n=p+4|0;h=p
;m=p+28|0;c[j>>2]=b;c[k>>2]=f;c[g>>2]=c[(c[k>>2]|0)+28>>2];switch(e[(c[j>
x3e;2]|0)+4>>1]|0|0){case 3:case 1:{a[m>>0]=(e[(c[j>>2]|0)+4>>1]|0|0)==1;if((e[(c[j>
;>2]|0)+2>>1]|0|0)<(e[c[j>>2]>>1]|0|0)){c[l>>2]=3;o=c[l>>2]|0;i=p;return
o|0}c[o>>2]=(e[(c[j>>2]|0)+2>>1]|0)-(e[c[j>>2]>>1]|0)+1;c[(c[j>>2]|
0)+24>>2]=c[o>>2];c[o>>2]=(c[o>>2]|0)+1;c[h>>2]=d[m>>0]|0|0?4:2;f=hc
(c[g>>2]|0,4,0,c[o>>2]|0,0,l)|0;c[(c[j>>2]|0)+28>>2]=f;if(c[l>>2]|0){o=c[l>
;>2]|0;i=p;return o|0}f=ee(c[k>>2]|0,_(c[o>>2]|0,c[h>>2]|0)|0)|0;c[l>>2]=f;if(f|0){
o=c[l>>2]|0;i=p;return o|0}c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0>=(c[o>
x3e;2]|0)>>>0)break;b=c[(c[j>>2]|0)+8>>2]|0;g=c[k>>2]|0;if(d[m>>0]|0|0)g=
je(g)|0;else g=(ie(g)|0)&65535;c[(c[(c[j>>2]|0)+28>>2]|0)+(c[n>>2]<<2)>>2
]=b+g;c[n>>2]=(c[n>>2]|0)+1}ge(c[k>>2]|0);o=c[l>>2]|0;i=p;return o|0}case 2:{c[l>
x3e;2]=xl(c[j>>2]|0,c[k>>2]|0)|0;o=c[l>>2]|0;i=p;return o|0}case 4:{c[l>>2]=yl(c[j>
x3e;2]|0,c[k>>2]|0,1)|0;o=c[l>>2]|0;i=p;return o|0}case 5:{c[l>>2]=xl(c[j>>2]|0,c[k>
;>2]|0)|0;if(c[l>>2]|0){o=c[l>>2]|0;i=p;return o|0}c[l>>2]=yl(c[j>>2]|0,c[k>
x3e;2]|0,0)|0;o=c[l>>2]|0;i=p;return o|0}default:{c[l>>2]=3;o=c[l>>2]|0;i=p;return o|0}}return 0}function
xl(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;b
=Oc(c[f>>2]|0,g)|0;c[(c[e>>2]|0)+12>>2]=b;if(c[g>>2]|0){c[d>>2]=c[g>>
;2];b=c[d>>2]|0;i=h;return b|0}else{b=le(c[f>>2]|0,8200,(c[e>>2]|0)+16|0)|0;c[g>>2]=b;c[
d>>2]=(b|0)!=0&1;b=c[d>>2]|0;i=h;return b|0}return 0}function yl(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;p=i;i=i+32|0;j=p+24|0;k=p+20|0;l=p+28|0;n=p+16|0;m=p+12|0;o=p+8|0;h=p+4|0;g=p;c[j>>2]=d;c[k
>>2]=e;a[l>>0]=f;c[g>>2]=c[(c[k>>2]|0)+28>>2];c[m>>2]=Oc(c[k>
x3e;2]|0,n)|0;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}c[(c[j>>2]|0)+24>>2]=c[m>>
;2];do if(a[l>>0]|0){e=hc(c[g>>2]|0,4,0,c[m>>2]|0,0,n)|0;c[(c[j>>2]|0)+28>>2]=
e;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}else{c[h>>2]=c[m>>2]<<2;break}}else
c[h>>2]=c[m>>2]<<1;while(0);e=hc(c[g>>2]|0,2,0,c[m>>2]|0,0,n)|0;c[(c[j>
x3e;2]|0)+32>>2]=e;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}e=ee(c[k>>2]|0,c[h>>
;2]|0)|0;c[n>>2]=e;if(e|0){o=c[n>>2]|0;i=p;return o|0}c[o>>2]=0;while(1){f=c[k>>2]|0;if((
c[o>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;e=ie(f)|0;b[(c[(c[j>>2]|0
)+32>>2]|0)+(c[o>>2]<<1)>>1]=e;if(a[l>>0]|0){e=c[(c[j>>2]|0)+8>
x3e;2]|0;e=e+((ie(c[k>>2]|0)|0)&65535)|0;c[(c[(c[j>>2]|0)+28>>2]|0)+(c[o>>2]<
x3c;2)>>2]=e}c[o>>2]=(c[o>>2]|0)+1}ge(f);o=c[n>>2]|0;i=p;return o|0}function zl(a){a=a|0
;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;b=j+20|0;d=j+16|0;g=j+12|0;h=j+8|0;e=j+4|0;f=j;c[b>>2]=a;c[d>>
2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[b>>2]|0)+616>>2];c[h>>2]=(c[g
x3e;>2]|0)+((c[(c[b>>2]|0)+612>>2]|0)*48|0);if(!(c[g>>2]|0)){h=c[b>>2]|0;h=h+612|0;
c[h>>2]=0;i=j;return}while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>>
;0)break;c[e>>2]=c[(c[g>>2]|0)+4>>2];c[f>>2]=(c[e>>2]|0)+((c[c[g>>2]
x3e;>2]|0)*40|0);a:do if(c[e>>2]|0)while(1){if((c[e>>2]|0)>>>0>=(c[f>>2]|
0)>>>0)break a;Fb(c[d>>2]|0,c[(c[e>>2]|0)+28>>2]|0);c[(c[e>>2]|0)+28>
;>2]=0;Fb(c[d>>2]|0,c[(c[e>>2]|0)+32>>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[e>
;>2]=(c[e>>2]|0)+40}while(0);Fb(c[d>>2]|0,c[(c[g>>2]|0)+4>>2]|0);c[(c[g>>
2]|0)+4>>2]=0;c[c[g>>2]>>2]=0;c[g>>2]=(c[g>>2]|0)+48}Fb(c[d>>2]|0,c[(
c[b>>2]|0)+616>>2]|0);c[(c[b>>2]|0)+616>>2]=0;h=c[b>>2]|0;h=h+612|0;c[h>
x3e;2]=0;i=j;return}function Al(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;n=i;i=i+32|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+
4|0;m=n;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;if((c[k>>2]|0)>>>0>=(c[(c[j>
;>2]|0)+612>>2]|0)>>>0){c[h>>2]=6;f=c[h>>2]|0;i=n;return f|0}else{c[m>>
;2]=(c[(c[j>>2]|0)+616>>2]|0)+((c[k>>2]|0)*48|0);b[c[l>>2]>>1]=d[(c[m>>
;2]|0)+44>>0]|0;b[(c[l>>2]|0)+2>>1]=d[(c[m>>2]|0)+45>>0]|0;c[(c[l>>2
]|0)+12>>2]=a[(c[m>>2]|0)+16>>0]<<6;c[(c[l>>2]|0)+16>>2]=a[(c[m>
;>2]|0)+16+1>>0]<<6;c[(c[l>>2]|0)+24>>2]=(a[(c[m>>2]|0)+16+6>>0
]|0)+(d[(c[m>>2]|0)+16+2>>0]|0)+(a[(c[m>>2]|0)+16+7>>0]|0)<<6;c[(c[l>>
;2]|0)+20>>2]=(c[(c[l>>2]|0)+12>>2]|0)-(c[(c[l>>2]|0)+16>>2]|0);c[h>>
;2]=0;f=c[h>>2]|0;i=n;return f|0}return 0}function Bl(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;s=i;i=i+48|0;l=s+32|0;t=s+28|0;w=s+38|0;m=s+24|0;n=s+20|0;o=s+16|0;v=s+12|0;u=s+8|0;p=s+4|0;r=s;q=s
+36|0;c[t>>2]=f;a[w>>0]=g;c[m>>2]=h;c[n>>2]=j;c[o>>2]=k;c[v>>2]=(c[t
>>2]|0)+300;c[u>>2]=(c[t>>2]|0)+216;c[p>>2]=d[w>>0]|0|0?c[v>>2]|0:c[
u>>2]|0;b[q>>1]=b[(c[p>>2]|0)+34>>1]|0;if((e[q>>1]|0|0?c[(c[p>>2]|0)+
36>>2]|0:0)?(c[m>>2]|0)>>>0<(e[(c[t>>2]|0)+260+4>>1]|0)>>
x3e;0:0){if((c[m>>2]|0)>>>0<(e[q>>1]|0)>>>0){c[r>>2]=(c[(c[p>
;>2]|0)+36>>2]|0)+(c[m>>2]<<2);b[c[n>>2]>>1]=b[(c[r>>2]|0)+2>
;>1]|0;b[c[o>>2]>>1]=b[c[r>>2]>>1]|0}else{b[c[n>>2]>>1]=b[(c[(c
[p>>2]|0)+40>>2]|0)+((c[m>>2]|0)-(e[q>>1]|0)<<1)>>1]|0;b[c[o>
x3e;2]>>1]=b[(c[(c[p>>2]|0)+36>>2]|0)+((e[q>>1]|0)-1<<2)>>1]|0}c[l
x3e;>2]=0;w=c[l>>2]|0;i=s;return w|0}b[c[o>>2]>>1]=0;b[c[n>>2]>>1]=0;c[l
x3e;>2]=0;w=c[l>>2]|0;i=s;return w|0}function Cl(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;Dl(c[f>>2]|0,c[e>>2]|0);i=d;return 0}function Dl(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)+112>>2]=c[f>>
2];c[(c[e>>2]|0)+104>>2]=c[(c[f>>2]|0)+4+24>>2];i=d;return}function El(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[f>>2]=c[f>>2];c[e>
x3e;2]=c[e>>2];i=d;return 0}function Fl(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+16|0;f=k+12|0;h=
k+8|0;j=k+4|0;g=k;c[d>>2]=a;c[f>>2]=b;c[h>>2]=0;c[j>>2]=c[(c[f>>2]|0)+92>
x3e;2];c[(c[d>>2]|0)+36>>2]=e[(c[f>>2]|0)+68>>1];c[g>>2]=0;while(1){if(!(c[3616
+(c[g>>2]<<2)>>2]|0))break;c[h>>2]=Id(c[f>>2]|0,c[3616+(c[g>>2]<
;<2)>>2]|0)|0;if(!(c[h>>2]|0))break;c[g>>2]=(c[g>>2]|0)+1}if(c[h>>2]|0){a
=c[f>>2]|0;j=c[j>>2]|0;Jd(a,j)|0;i=k;return 0}Gl(c[d>>2]|0,c[f>>2]|0,111);Pl(c[d>
x3e;2]|0,c[f>>2]|0);Rl(c[d>>2]|0,c[f>>2]|0);a=c[f>>2]|0;j=c[j>>2]|0;Jd(a,j)|0;
i=k;return 0}function Gl(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,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=
0;y=i;i=i+1024|0;t=y+1016|0;g=y+1012|0;z=y+1008|0;w=y+884|0;m=y+880|0;n=y+876|0;v=y+872|0;l=y+40|0;r=y+36|0;j=y+32|0;h=y+28|0;s=
y+24|0;o=y+20|0;p=y+16|0;q=y+12|0;k=y+8|0;u=y+4|0;x=y;c[t>>2]=d;c[g>>2]=e;c[z>>2]=f;Hl(w,c[(c[g>
;>2]|0)+100>>2]|0);c[(c[t>>2]|0)+40+8>>2]=0;c[(c[t>>2]|0)+40+396+8>>2]=0;
c[r>>2]=l+4;c[n>>2]=Dc(c[g>>2]|0,c[z>>2]|0)|0;a:do if(((c[n>>2]|0?(c[m>
x3e;2]=Cb(c[g>>2]|0,c[n>>2]|0,1)|0,(c[m>>2]|0)==0):0)?(b[(c[(c[g>>2]|0)+84>>2]|
0)+108+2>>1]|0)>0:0)?(Ns(l|0,0,832)|0,c[l+36>>2]=c[(c[t>>2]|0)+36>>2],c[(c[r>
x3e;2]|0)+8>>2]=65536,c[(c[r>>2]|0)+4>>2]=65536,c[(c[r>>2]|0)+16>>2]=0,c[(c[r
x3e;>2]|0)+12>>2]=0,c[c[r>>2]>>2]=c[g>>2],c[(c[r>>2]|0)+20>>2]=
0,c[(c[r>>2]|0)+24>>2]=0,Dl(w,l),c[m>>2]=Il(w,(c[(c[g>>2]|0)+84>>2]|0)+108|0)|
0,(c[m>>2]|0)==0):0){c[v>>2]=0;while(1){if((c[v>>2]|0)>=2)break a;c[j>>2]=(c[t>
;>2]|0)+40+((c[v>>2]|0)*396|0);c[h>>2]=w+48+((c[v>>2]|0)*28|0);c[q>>2]=0;c[m>
x3e;2]=Kl(w,c[v>>2]|0)|0;if(c[m>>2]|0)break a;Ml(w,c[v>>2]|0);c[s>>2]=c[(c[h>>
2]|0)+8>>2];c[o>>2]=(c[s>>2]|0)+((c[c[h>>2]>>2]|0)*52|0);while(1){if((c[s>
;>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[p>>2]=c[(c[s>>2]|0)+20
>>2];if((c[p>>2]|0?(c[(c[p>>2]|0)+20>>2]|0)==(c[s>>2]|0):0)?(c[p>>2]|
0)>>>0>(c[s>>2]|0)>>>0:0){c[k>>2]=(b[(c[s>>2]|0)+2>>1
]|0)-(b[(c[p>>2]|0)+2>>1]|0);if((c[k>>2]|0)<0)c[k>>2]=0-(c[k>>2]|0);if((c
[q>>2]|0)>>>0<16){r=c[k>>2]|0;z=c[q>>2]|0;c[q>>2]=z+1;c[(c[j>
x3e;2]|0)+12+(z*12|0)>>2]=r}}c[s>>2]=(c[s>>2]|0)+52}Nl(c[q>>2]|0,(c[j>>2]|0)+12
|0);c[(c[j>>2]|0)+8>>2]=c[q>>2];c[v>>2]=(c[v>>2]|0)+1}}while(0);c[v>>
;2]=0;while(1){if((c[v>>2]|0)>=2)break;c[u>>2]=(c[t>>2]|0)+40+((c[v>>2]|0)*396|0);if
((c[(c[u>>2]|0)+8>>2]|0)>>>0>0)g=c[(c[u>>2]|0)+12>>2]|0;else g=((c[(
c[t>>2]|0)+36>>2]|0)*50|0)/2048|0;c[x>>2]=g;c[(c[u>>2]|0)+204>>2]=(c[x>
x3e;2]|0)/5|0;c[(c[u>>2]|0)+208>>2]=c[x>>2];a[(c[u>>2]|0)+212>>0]=0;c[v>
x3e;2]=(c[v>>2]|0)+1}Ol(w);i=y;return}function Hl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>
x3e;2]=a;c[e>>2]=b;a=c[d>>2]|0;b=a+124|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[c[d>
x3e;2]>>2]=c[e>>2];i=f;return}function Il(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,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;M=i;i=i+128|0;g=M+112|0;h=M+108|0;A=M+104|0;z
=M+100|0;n=M+96|0;m=M+92|0;s=M+88|0;u=M+84|0;r=M+80|0;t=M+76|0;l=M+72|0;I=M+68|0;J=M+64|0;q=M+60|0;p=M+56|0;k=M+52|0;o=M+48|0;j=
M+44|0;v=M+40|0;w=M+36|0;x=M+32|0;y=M+116|0;B=M+28|0;K=M+24|0;D=M+20|0;E=M+16|0;C=M+12|0;F=M+8|0;G=M+4|0;H=M;c[g>>2]=d
;c[h>>2]=f;c[A>>2]=0;c[s>>2]=c[(c[g>>2]|0)+4>>2];c[u>>2]=c[(c[g>
;>2]|0)+12>>2];c[r>>2]=c[(c[g>>2]|0)+8>>2];c[t>>2]=c[(c[g>>2]|0
)+16>>2];c[l>>2]=c[c[g>>2]>>2];c[(c[g>>2]|0)+28>>2]=0;c[(c[g>
x3e;2]|0)+40>>2]=0;c[(c[g>>2]|0)+48>>2]=0;c[(c[g>>2]|0)+48+12>>2]=0;c[(c[g>
;>2]|0)+48+28>>2]=0;c[(c[g>>2]|0)+48+28+12>>2]=0;c[m>>2]=b[c[h>>2]>
x3e;1];c[n>>2]=c[(c[g>>2]|0)+36>>2];do if((c[m>>2]|0)>>>0>(c[n>
x3e;2]|0)>>>0){c[m>>2]=(c[m>>2]|0)+3&-4;f=hc(c[l>>2]|0,4,c[n>>2]|0,c
[m>>2]|0,c[(c[g>>2]|0)+44>>2]|0,A)|0;c[(c[g>>2]|0)+44>>2]=f;if(c[A>>
2]|0){L=c[A>>2]|0;i=M;return L|0}else{c[(c[g>>2]|0)+36>>2]=c[m>>2];break}}while(0);c[m
x3e;>2]=(b[(c[h>>2]|0)+2>>1]|0)+2;c[n>>2]=c[(c[g>>2]|0)+24>>2];do if((c[m
>>2]|0)>>>0>(c[n>>2]|0)>>>0){c[m>>2]=(c[m>>2]|0)+2+7
x26;-8;f=hc(c[l>>2]|0,40,c[n>>2]|0,c[m>>2]|0,c[(c[g>>2]|0)+32>>2]|0,A)|0;c[(c[
g>>2]|0)+32>>2]=f;if(c[A>>2]|0){L=c[A>>2]|0;i=M;return L|0}else{c[(c[g>>2]|0)+
24>>2]=c[m>>2];break}}while(0);c[(c[g>>2]|0)+28>>2]=b[(c[h>>2]|0)+2>>
;1];c[(c[g>>2]|0)+40>>2]=b[c[h>>2]>>1];c[(c[g>>2]|0)+48+24>>2]=2;c[(
c[g>>2]|0)+48+28+24>>2]=-1;if(($d(c[h>>2]|0)|0)==1){c[(c[g>>2]|0)+48+24>>2]=-2
;c[(c[g>>2]|0)+48+28+24>>2]=1}c[(c[g>>2]|0)+4>>2]=c[s>>2];c[(c[g>>2]|
0)+12>>2]=c[u>>2];c[(c[g>>2]|0)+8>>2]=c[r>>2];c[(c[g>>2]|0)+16>
x3e;2]=c[t>>2];c[(c[g>>2]|0)+116>>2]=0;c[(c[g>>2]|0)+120>>2]=0;c[z>>
2]=c[(c[g>>2]|0)+32>>2];if(!(c[(c[g>>2]|0)+28>>2]|0)){L=c[A>>2]|0;i=M;return L
|0}c[J>>2]=(c[z>>2]|0)+((c[(c[g>>2]|0)+28>>2]|0)*40|0);c[q>>2]=c[(c[h>>
;2]|0)+4>>2];c[p>>2]=c[(c[h>>2]|0)+8>>2];c[k>>2]=(c[z>>2]|0)+((b[c[(
c[h>>2]|0)+12>>2]>>1]|0)*40|0);c[o>>2]=c[k>>2];c[j>>2]=0;c[I>
x3e;2]=c[z>>2];while(1){if((c[I>>2]|0)>>>0>=(c[J>>2]|0)>>>0)break
;b[(c[I>>2]|0)+12>>1]=c[c[q>>2]>>2];b[(c[I>>2]|0)+14>>1]=c[(c[q>
;>2]|0)+4>>2];f=Mb(c[c[q>>2]>>2]|0,c[s>>2]|0)|0;f=f+(c[r>>2]|0)|0;c[(c[I
x3e;>2]|0)+16>>2]=f;c[(c[I>>2]|0)+4>>2]=f;f=Mb(c[(c[q>>2]|0)+4>>2]|0,c[u
x3e;>2]|0)|0;f=f+(c[t>>2]|0)|0;c[(c[I>>2]|0)+20>>2]=f;c[(c[I>>2]|0)+8>>2]=
f;switch(a[c[p>>2]>>0]&3|0){case 0:{b[c[I>>2]>>1]=1;break}case 2:{b[c[I>>
2]>>1]=2;break}default:b[c[I>>2]>>1]=0}c[(c[I>>2]|0)+36>>2]=c[o>>2];
c[(c[o>>2]|0)+32>>2]=c[I>>2];c[o>>2]=c[I>>2];if((c[I>>2]|0)==(c[k>
;>2]|0)?(f=(c[j>>2]|0)+1|0,c[j>>2]=f,(f|0)<(b[c[h>>2]>>1]|0)):0){c[k>>
;2]=(c[z>>2]|0)+((b[(c[(c[h>>2]|0)+12>>2]|0)+(c[j>>2]<<1)>>1]|0)*40|
0);c[o>>2]=c[k>>2]}c[I>>2]=(c[I>>2]|0)+40;c[q>>2]=(c[q>>2]|0)+8;c[p
x3e;>2]=(c[p>>2]|0)+1}c[v>>2]=c[(c[g>>2]|0)+44>>2];c[w>>2]=(c[v>>
;2]|0)+(c[(c[g>>2]|0)+40>>2]<<2);c[x>>2]=c[(c[h>>2]|0)+12>>2];b[y>
;>1]=0;while(1){g=c[z>>2]|0;if((c[v>>2]|0)>>>0>=(c[w>>2]|0)>>
x3e;0)break;c[c[v>>2]>>2]=g+((b[y>>1]|0)*40|0);b[y>>1]=(b[c[x>>2]>>1
]|0)+1;c[v>>2]=(c[v>>2]|0)+4;c[x>>2]=(c[x>>2]|0)+2}c[B>>2]=g;c[K>>2]=
0;c[D>>2]=0;c[E>>2]=0;c[C>>2]=4;c[I>>2]=c[z>>2];while(1){if((c[I>>2]|
0)>>>0>=(c[J>>2]|0)>>>0)break;if((c[I>>2]|0)==(c[B>>2]|0)){c[K
x3e;>2]=c[(c[B>>2]|0)+36>>2];c[D>>2]=(b[(c[B>>2]|0)+12>>1]|0)-(b[(c[K>
;>2]|0)+12>>1]|0);c[E>>2]=(b[(c[B>>2]|0)+14>>1]|0)-(b[(c[K>>2]|0)+14>
;>1]|0);c[C>>2]=Jl(c[D>>2]|0,c[E>>2]|0)|0;c[B>>2]=(c[K>>2]|0)+40}a[(c[I
x3e;>2]|0)+2>>0]=c[C>>2];c[F>>2]=c[(c[I>>2]|0)+32>>2];c[G>>2]=(
b[(c[F>>2]|0)+12>>1]|0)-(b[(c[I>>2]|0)+12>>1]|0);c[H>>2]=(b[(c[F>>2]|
0)+14>>1]|0)-(b[(c[I>>2]|0)+14>>1]|0);c[C>>2]=Jl(c[G>>2]|0,c[H>>2]|0
)|0;a[(c[I>>2]|0)+3>>0]=c[C>>2];do if(!(e[c[I>>2]>>1]&3|0)){g=c[I>
x3e;2]|0;if((a[(c[I>>2]|0)+3>>0]|0)!=(a[(c[I>>2]|0)+2>>0]|0))if((a[g+2>>0]|0)==(
0-(a[(c[I>>2]|0)+3>>0]|0)|0)){L=28;break}else break;if(!((a[g+3>>0]|0)==4?!($b(c[D>>2]|0
,c[E>>2]|0,c[G>>2]|0,c[H>>2]|0)|0):0))L=28}else L=28;while(0);if((L|0)==28){L=0;z=c[I>>2
]|0;b[z>>1]=e[z>>1]|256}c[D>>2]=c[G>>2];c[E>>2]=c[H>>2];c[K>>
;2]=c[I>>2];c[I>>2]=(c[I>>2]|0)+40}L=c[A>>2]|0;i=M;return L|0}function Jl(a,b){a=a|0;b=b
|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;g=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;a=(c[e
>>2]|0)>=(0-(c[d>>2]|0)|0);do if((c[e>>2]|0)>=(c[d>>2]|0))if(a){c[f>>
;2]=2;c[g>>2]=c[e>>2];c[h>>2]=c[d>>2];break}else{c[f>>2]=-1;c[g>>2]=
0-(c[d>>2]|0);c[h>>2]=c[e>>2];break}else if(a){c[f>>2]=1;c[g>>2]=c[d>>
;2];c[h>>2]=c[e>>2];break}else{c[f>>2]=-2;c[g>>2]=c[e>>2];c[h>>2]=c[
d>>2];break}while(0);c[h>>2]=(c[h>>2]|0)*14;d=c[g>>2]|0;e=c[h>>2]|0;if((((c[g
x3e;>2]|0)<0?0-d|0:d)|0)>(((c[h>>2]|0)<0?0-e|0:e)|0)){h=c[f>>2]|0;i=j;return h|0}c[f>
;>2]=4;h=c[f>>2]|0;i=j;return h|0}function Kl(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;P=i;i=i+176|0;j=P+164|0;k=P+160|0;p=P+
156|0;v=P+152|0;G=P+148|0;N=P+144|0;A=P+92|0;q=P+88|0;r=P+84|0;t=P+80|0;B=P+76|0;n=P+72|0;l=P+68|0;o=P+64|0;m=P+60|0;z=P+56|0;s=
P+52|0;x=P+48|0;w=P+44|0;u=P+40|0;y=P+168|0;D=P+36|0;E=P+32|0;C=P+28|0;O=P+24|0;H=P+20|0;J=P+16|0;I=P+12|0;K=P+8|0;L=P+4|0;M=P;c
[j>>2]=f;c[k>>2]=g;c[p>>2]=(c[j>>2]|0)+48+((c[k>>2]|0)*28|0);c[v>>2]=
c[c[j>>2]>>2];c[G>>2]=0;c[N>>2]=0;c[q>>2]=c[(c[j>>2]|0)+44>>
;2];c[r>>2]=(c[q>>2]|0)+(c[(c[j>>2]|0)+40>>2]<<2);f=A;h=f+52|0;do{c[f>>
;2]=0;f=f+4|0}while((f|0)<(h|0));c[A+32>>2]=32e3;a[A>>0]=0;g=c[(c[p>>2]|0)+24>>2]|0
;c[t>>2]=(c[(c[p>>2]|0)+24>>2]|0)<0?0-g|0:g;c[B>>2]=c[t>>2];c[c[p>
x3e;2]>>2]=0;g=c[(c[j>>2]|0)+32>>2]|0;a:do if(!(c[k>>2]|0)){c[n>>2]=g;c[l>
;>2]=(c[n>>2]|0)+((c[(c[j>>2]|0)+28>>2]|0)*40|0);while(1){if((c[n>>2]|0)>>
;>0>=(c[l>>2]|0)>>>0)break a;c[(c[n>>2]|0)+24>>2]=b[(c[n>>2]|0)+
12>>1];c[(c[n>>2]|0)+28>>2]=b[(c[n>>2]|0)+14>>1];c[n>>2]=(c[n>
x3e;2]|0)+40}}else{c[o>>2]=g;c[m>>2]=(c[o>>2]|0)+((c[(c[j>>2]|0)+28>>2]|0)*40|
0);while(1){if((c[o>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break a;c[(c[o>>
;2]|0)+24>>2]=b[(c[o>>2]|0)+14>>1];c[(c[o>>2]|0)+28>>2]=b[(c[o>>2]|0
)+12>>1];c[o>>2]=(c[o>>2]|0)+40}}while(0);b:while(1){if((c[q>>2]|0)>>>0
x3e;=(c[r>>2]|0)>>>0)break;c[z>>2]=c[c[q>>2]>>2];c[s>>2]=c[(c[z
>>2]|0)+36>>2];c[x>>2]=0;c[w>>2]=32e3;c[u>>2]=-32e3;c:do if((c[z>>2]|
0)!=(c[s>>2]|0)){o=a[(c[s>>2]|0)+3>>0]|0;d:do if((((a[(c[s>>2]|0)+3>>0]|0)<
;0?0-o|0:o)|0)==(c[t>>2]|0)?(o=a[(c[z>>2]|0)+3>>0]|0,(((a[(c[z>>2]|0)+3>>0]|0)
x3c;0?0-o|0:o)|0)==(c[t>>2]|0)):0){c[s>>2]=c[z>>2];while(1){c[z>>2]=c[(c[z>>2]|
0)+36>>2];o=a[(c[z>>2]|0)+3>>0]|0;g=c[z>>2]|0;if((((a[(c[z>>2]|0)+3>>
;0]|0)<0?0-o|0:o)|0)!=(c[t>>2]|0))break;if((g|0)==(c[s>>2]|0))break d}c[z>>2]=c[g+32>>
;2]}while(0);c[s>>2]=c[z>>2];a[y>>0]=0;while(1){do if(c[x>>2]|0){c[D>>2]=c[(c[
z>>2]|0)+24>>2];if((c[D>>2]|0)<(c[w>>2]|0))c[w>>2]=c[D>>2];if((
c[D>>2]|0)>(c[u>>2]|0))c[u>>2]=c[D>>2];if((a[(c[z>>2]|0)+3>>0]|
0)==(c[B>>2]|0)?(c[z>>2]|0)!=(c[s>>2]|0):0)break;c[(c[N>>2]|0)+44>>2]=c[z>
;>2];b[(c[N>>2]|0)+2>>1]=(c[w>>2]|0)+(c[u>>2]|0)>>1;if((e[c[(c[N>>
;2]|0)+40>>2]>>1]|e[c[z>>2]>>1])&3|0){o=c[N>>2]|0;a[o>>0]=d[o
x3e;>0]|1}o=c[(c[z>>2]|0)+28>>2]|0;c[u>>2]=o;c[w>>2]=o;c[E>>2]=c[(c[(c[N
x3e;>2]|0)+40>>2]|0)+28>>2];if((c[E>>2]|0)<(c[w>>2]|0))c[w>>2]=c[E
x3e;>2];if((c[E>>2]|0)>(c[u>>2]|0))c[u>>2]=c[E>>2];b[(c[N>>2]|0)+4
x3e;>1]=c[w>>2];b[(c[N>>2]|0)+6>>1]=c[u>>2];b[(c[N>>2]|0)+8>>1]=(
b[(c[N>>2]|0)+6>>1]|0)-(b[(c[N>>2]|0)+4>>1]|0);c[x>>2]=0;c[N>>2]=0}while
(0);if((c[z>>2]|0)==(c[s>>2]|0)){if(a[y>>0]|0)break c;a[y>>0]=1}if((c[x>>2]|0)==
0?(o=a[(c[z>>2]|0)+3>>0]|0,(((a[(c[z>>2]|0)+3>>0]|0)<0?0-o|0:o)|0)==(c[t>>
;2]|0)):0){c[B>>2]=a[(c[z>>2]|0)+3>>0];c[G>>2]=Ll(c[p>>2]|0,c[v>>2]|
0,N)|0;if(c[G>>2]|0){F=53;break b}f=c[N>>2]|0;g=A;h=f+52|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=
g+4|0}while((f|0)<(h|0));a[(c[N>>2]|0)+1>>0]=c[B>>2];o=c[(c[z>>2]|0)+24>>
2]|0;c[u>>2]=o;c[w>>2]=o;c[(c[N>>2]|0)+40>>2]=c[z>>2];c[(c[N>>2]|0)+
44>>2]=c[z>>2];c[(c[N>>2]|0)+48>>2]=c[q>>2];c[x>>2]=1}c[z>>
;2]=c[(c[z>>2]|0)+32>>2]}}while(0);c[q>>2]=(c[q>>2]|0)+4}if((F|0)==53){O=c[G>>
2]|0;i=P;return O|0}c[C>>2]=c[(c[p>>2]|0)+8>>2];c[O>>2]=(c[C>>2]|0)+((c[c[p>
;>2]>>2]|0)*52|0);c[N>>2]=c[C>>2];while(1){if((c[N>>2]|0)>>>0>=(
c[O>>2]|0)>>>0)break;c[H>>2]=c[(c[N>>2]|0)+40>>2];c[J>>2]=c[(c[
N>>2]|0)+44>>2];c[I>>2]=c[(c[H>>2]|0)+28>>2];c[K>>2]=c[(c[J>>
;2]|0)+28>>2];do if((c[H>>2]|0)!=(c[J>>2]|0)){g=c[(c[H>>2]|0)+36>>2]|0;if((c[I
>>2]|0)<(c[K>>2]|0)){c[L>>2]=g;if((c[(c[L>>2]|0)+28>>2]|0)<(c[I>
;>2]|0))b[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8>>1]|0)+((c[I>>2]|0)-(c[(c[L
x3e;>2]|0)+28>>2]|0)>>1);c[L>>2]=c[(c[J>>2]|0)+32>>2];if((c[(c[L>>
;2]|0)+28>>2]|0)<=(c[K>>2]|0))break;b[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8
x3e;>1]|0)+((c[(c[L>>2]|0)+28>>2]|0)-(c[K>>2]|0)>>1);break}else{c[M>>2]=g
;if((c[(c[M>>2]|0)+28>>2]|0)>(c[I>>2]|0))b[(c[N>>2]|0)+8>>1]=(b[(c[N>
;>2]|0)+8>>1]|0)+((c[(c[M>>2]|0)+28>>2]|0)-(c[I>>2]|0)>>1);c[M>>
;2]=c[(c[J>>2]|0)+32>>2];if((c[(c[M>>2]|0)+28>>2]|0)>=(c[K>>2]|0))break;b
[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8>>1]|0)+((c[K>>2]|0)-(c[(c[M>>2]|
0)+28>>2]|0)>>1);break}}while(0);c[N>>2]=(c[N>>2]|0)+52}O=c[G>>2]|0;i=P;return
O|0}function Ll(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;n=i;i=i+32|0;e=n+28|0;f=n+24|0;g=n+20|0;j=n+16
|0;m=n+12|0;l=n+8|0;k=n+4|0;h=n;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=0;c[m>>2
]=0;do if((c[c[e>>2]>>2]|0)>=(c[(c[e>>2]|0)+4>>2]|0)){c[l>>2]=c[(c[e>
;>2]|0)+4>>2];c[k>>2]=c[l>>2];c[h>>2]=41297762;if((c[l>>2]|0)>=(c[h
x3e;>2]|0)){c[j>>2]=64;l=c[m>>2]|0;m=c[g>>2]|0;c[m>>2]=l;m=c[j>>2]|0;i=n;
return m|0}c[k>>2]=(c[k>>2]|0)+((c[k>>2]>>2)+4);if(!((c[k>>2]|0)>=(c[l>
;>2]|0)?(c[k>>2]|0)<=(c[h>>2]|0):0))c[k>>2]=c[h>>2];l=hc(c[f>>2]|0,52
,c[l>>2]|0,c[k>>2]|0,c[(c[e>>2]|0)+8>>2]|0,j)|0;c[(c[e>>2]|0)+8>>2]=
l;if(c[j>>2]|0){l=c[m>>2]|0;m=c[g>>2]|0;c[m>>2]=l;m=c[j>>2]|0;i=n;return m|0}else
{c[(c[e>>2]|0)+4>>2]=c[k>>2];break}}while(0);k=c[(c[e>>2]|0)+8>>2]|0;b=c[e>
;>2]|0;l=c[b>>2]|0;c[b>>2]=l+1;c[m>>2]=k+(l*52|0);l=c[m>>2]|0;m=c[g>>2]|0
;c[m>>2]=l;m=c[j>>2]|0;i=n;return m|0}function Ml(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;u=i;i=i+64|0;v=u+60|0;w=u+56|0;f=u+52|0;t=u+48|0;s=u+44|0;k=u+40|0;j=u+36|0;q=u+32|0;r=u+28|0;n=u
+24|0;o=u+20|0;g=u+16|0;m=u+12|0;l=u+8|0;h=u+4|0;p=u;c[v>>2]=d;c[w>>2]=e;c[f>>2]=(c[v>>2
]|0)+48+((c[w>>2]|0)*28|0);c[t>>2]=c[(c[f>>2]|0)+8>>2];c[s>>2]=(c[t>>
;2]|0)+((c[c[f>>2]>>2]|0)*52|0);d=(c[(c[(c[v>>2]|0)+112>>2]|0)+36>>2]<<
;3|0)/2048|0;c[k>>2]=d;c[k>>2]=(c[k>>2]|0)==0?1:d;c[j>>2]=((c[(c[(c[v>>2]|0)+112
>>2]|0)+36>>2]|0)*6e3|0)/2048|0;c[q>>2]=c[t>>2];while(1){if((c[q>>2]|0)>
x3e;>0>=(c[s>>2]|0)>>>0)break;a:do if((a[(c[q>>2]|0)+1>>0]|0)==(c[(c[f>
;>2]|0)+24>>2]|0)?(c[(c[q>>2]|0)+40>>2]|0)!=(c[(c[q>>2]|0)+44>>2]|0):0){c
[r>>2]=c[t>>2];while(1){if((c[r>>2]|0)>>>0>=(c[s>>2]|0)>>
x3e;0)break a;if(((a[(c[q>>2]|0)+1>>0]|0)+(a[(c[r>>2]|0)+1>>0]|0)|0)==0?(b[(c[r>>
;2]|0)+2>>1]|0)>(b[(c[q>>2]|0)+2>>1]|0):0){c[n>>2]=b[(c[q>>2]|0)+2>
x3e;1];c[o>>2]=b[(c[r>>2]|0)+2>>1];c[g>>2]=(c[o>>2]|0)-(c[n>>2]|0);if
((c[g>>2]|0)<0)c[g>>2]=0-(c[g>>2]|0);c[m>>2]=b[(c[q>>2]|0)+4>>1
];c[l>>2]=b[(c[q>>2]|0)+6>>1];if((c[m>>2]|0)<(b[(c[r>>2]|0)+4>>
1]|0))c[m>>2]=b[(c[r>>2]|0)+4>>1];if((c[l>>2]|0)>(b[(c[r>>2]|0)+6>
x3e;1]|0))c[l>>2]=b[(c[r>>2]|0)+6>>1];c[h>>2]=(c[l>>2]|0)-(c[m>>2]|0
);if((c[h>>2]|0)>=(c[k>>2]|0)){c[p>>2]=(c[g>>2]|0)+((c[j>>2]|0)/(c[h>
;>2]|0)|0);if((c[p>>2]|0)<(c[(c[q>>2]|0)+32>>2]|0)){c[(c[q>>2]|0)+32>>
;2]=c[p>>2];c[(c[q>>2]|0)+20>>2]=c[r>>2]}if((c[p>>2]|0)<(c[(c[r>>
;2]|0)+32>>2]|0)){c[(c[r>>2]|0)+32>>2]=c[p>>2];c[(c[r>>2]|0)+20>>2]=
c[q>>2]}}}c[r>>2]=(c[r>>2]|0)+52}}while(0);c[q>>2]=(c[q>>2]|0)+52}c[q>>
;2]=c[t>>2];while(1){if((c[q>>2]|0)>>>0>=(c[s>>2]|0)>>>0)break;
c[r>>2]=c[(c[q>>2]|0)+20>>2];if(c[r>>2]|0?(c[(c[r>>2]|0)+20>>2]|0)!=(
c[q>>2]|0):0){c[(c[q>>2]|0)+20>>2]=0;c[(c[q>>2]|0)+24>>2]=c[(c[r>>2]|
0)+20>>2]}c[q>>2]=(c[q>>2]|0)+52}i=u;return}function Nl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;j=i;i=i+32|0;d=j+24|0;e=j+20|0;f=j+16|0;g=j+12|0;h=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=1;while(1){if((
c[f>>2]|0)>>>0>=(c[d>>2]|0)>>>0)break;c[g>>2]=c[f>>2];
while(1){if((c[g>>2]|0)>>>0<=0)break;if((c[(c[e>>2]|0)+((c[g>>2]|0)*12|0)>
;>2]|0)>(c[(c[e>>2]|0)+(((c[g>>2]|0)-1|0)*12|0)>>2]|0))break;b=(c[e>>2]|0)+((c
[g>>2]|0)*12|0)|0;c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+
8>>2];b=(c[e>>2]|0)+((c[g>>2]|0)*12|0)|0;a=(c[e>>2]|0)+(((c[g>>2]|0)-1|0)*12|0
)|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];b=(c[e
x3e;>2]|0)+(((c[g>>2]|0)-1|0)*12|0)|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];
c[b+8>>2]=c[h+8>>2];c[g>>2]=(c[g>>2]|0)+-1}c[f>>2]=(c[f>>2]|0)+1}i=j
;return}function Ol(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;f=g+8|0;e=g+4|0;d=g;c[b>>2]=a;if(!(c[b>
;>2]|0)){i=g;return}if(!(c[c[b>>2]>>2]|0)){i=g;return}c[f>>2]=c[c[b>>2]>>
2];c[e>>2]=0;while(1){if((c[e>>2]|0)>=2)break;c[d>>2]=(c[b>>2]|0)+48+((c[e>>
;2]|0)*28|0);c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;Fb(c[f>>2]|0,c[(c[d>
x3e;2]|0)+8>>2]|0);c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+12>>2]=0;c[(c[d>
x3e;2]|0)+16>>2]=0;Fb(c[f>>2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>
x3e;2]=0;c[e>>2]=(c[e>>2]|0)+1}Fb(c[f>>2]|0,c[(c[b>>2]|0)+44>>2]|0);c[(c[b>
;>2]|0)+44>>2]=0;c[(c[b>>2]|0)+36>>2]=0;c[(c[b>>2]|0)+40>>2]=0;Fb(c[f>
;>2]|0,c[(c[b>>2]|0)+32>>2]|0);c[(c[b>>2]|0)+32>>2]=0;c[(c[b>>2]|0)+28>
;>2]=0;c[(c[b>>2]|0)+24>>2]=0;c[c[b>>2]>>2]=0;i=g;return}function Pl(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;N=i;i=i+224|0;O=N+212|0;g=N+208|0;u=N+160|0;L=N+112|0;B=N+104|0;C=N+100|0;j=N+96|0;o=N+92|0;s=N+88|0;h=N+84|0;v=N
+80|0;F=N+76|0;y=N+72|0;p=N+68|0;q=N+64|0;w=N+60|0;n=N+56|0;m=N+52|0;k=N+48|0;l=N+44|0;G=N+40|0;K=N+217|0;A=N+36|0;t=N+32|0;x=N+
28|0;D=N+24|0;H=N+20|0;I=N+16|0;z=N+12|0;r=N+8|0;J=N+4|0;M=N;E=N+216|0;c[O>>2]=e;c[g>>2]=f;c[h>>2]=(
c[O>>2]|0)+40+396;c[v>>2]=c[(c[g>>2]|0)+84>>2];c[j>>2]=0;while(1){if((c[j>
;>2]|0)>=6)break;c[F>>2]=11435+((c[j>>2]|0)*13|0);c[y>>2]=(c[F>>2]|0)+12;c[B
x3e;>2]=0;c[C>>2]=0;while(1){if((c[F>>2]|0)>>>0>=(c[y>>2]|0)>>
x3e;0)break;if(!(a[c[F>>2]>>0]|0))break;a[K>>0]=0;c[w>>2]=Dc(c[g>>2]|0,a[c[F
x3e;>2]>>0]|0)|0;do if((c[w>>2]|0?(c[s>>2]=Cb(c[g>>2]|0,c[w>>2]|0,1)|0,(c
[s>>2]|0)==0):0)?(b[(c[v>>2]|0)+108+2>>1]|0)>0:0){c[G>>2]=c[(c[v>>2]|0)+108
+4>>2];c[m>>2]=-1;c[n>>2]=0;c[k>>2]=0;c[l>>2]=0;c[t>>2]=0;c[x>
x3e;2]=-1;c[A>>2]=0;while(1){f=c[m>>2]|0;if((c[A>>2]|0)>=(b[(c[v>>2]|0)+108>
x3e;1]|0))break;c[D>>2]=f;c[x>>2]=b[(c[(c[v>>2]|0)+108+12>>2]|0)+(c[A>>2]<
;<1)>>1];if((c[x>>2]|0)>(c[t>>2]|0)){O=(c[j>>2]|0)==0|(c[j>>2]|0)==2
|(c[j>>2]|0)==3;c[H>>2]=c[t>>2];a:do if(O)while(1){if((c[H>>2]|0)>(c[x>>2
]|0))break a;if(!((c[m>>2]|0)>=0?(c[(c[G>>2]|0)+(c[H>>2]<<3)+4>>2]|0)<
;=(c[n>>2]|0):0)){c[m>>2]=c[H>>2];c[n>>2]=c[(c[G>>2]|0)+(c[H>>2]<
;<3)+4>>2]}c[H>>2]=(c[H>>2]|0)+1}else while(1){if((c[H>>2]|0)>(c[x>>
2]|0))break a;if(!((c[m>>2]|0)>=0?(c[(c[G>>2]|0)+(c[H>>2]<<3)+4>>2]|0)>
;=(c[n>>2]|0):0)){c[m>>2]=c[H>>2];c[n>>2]=c[(c[G>>2]|0)+(c[H>>2]<
;<3)+4>>2]}c[H>>2]=(c[H>>2]|0)+1}while(0);if((c[m>>2]|0)!=(c[D>>2]|0)){c[
k>>2]=c[t>>2];c[l>>2]=c[x>>2]}}c[t>>2]=(c[x>>2]|0)+1;c[A>>
2]=(c[A>>2]|0)+1}if((f|0)>=0){c[I>>2]=c[m>>2];c[z>>2]=c[I>>2];do{if((c[I
x3e;>2]|0)>(c[k>>2]|0))c[I>>2]=(c[I>>2]|0)+-1;else c[I>>2]=c[l>>2];c
[r>>2]=(c[(c[G>>2]|0)+(c[I>>2]<<3)+4>>2]|0)-(c[n>>2]|0);if((c[r>
;>2]|0)<-5|(c[r>>2]|0)>5)break}while((c[I>>2]|0)!=(c[m>>2]|0));do{if((c[z>>
;2]|0)<(c[l>>2]|0))c[z>>2]=(c[z>>2]|0)+1;else c[z>>2]=c[k>>2];c[r>
x3e;2]=(c[(c[G>>2]|0)+(c[z>>2]<<3)+4>>2]|0)-(c[n>>2]|0);if((c[r>>2]|
0)<-5|(c[r>>2]|0)>5)break}while((c[z>>2]|0)!=(c[m>>2]|0));if((a[(c[(c[v>>2]|0)+
108+8>>2]|0)+(c[I>>2]|0)>>0]&3|0)!=1)f=1;else f=(a[(c[(c[v>>2]|0)+108+8>>
2]|0)+(c[z>>2]|0)>>0]&3|0)!=1;a[K>>0]=f&1}f=c[n>>2]|0;if(a[K>>0]|0){
O=c[C>>2]|0;c[C>>2]=O+1;c[L+(O<<2)>>2]=f;break}else{O=c[B>>2]|0;c[B>>
;2]=O+1;c[u+(O<<2)>>2]=f;break}}while(0);c[F>>2]=(c[F>>2]|0)+1}if(!((c[B>>2]|0
)==0&(c[C>>2]|0)==0)){Ql(c[C>>2]|0,L);Ql(c[B>>2]|0,u);c[o>>2]=(c[h>>2]|0)+
220+((c[(c[h>>2]|0)+216>>2]|0)*28|0);c[p>>2]=c[o>>2];c[q>>2]=(c[o>>2
]|0)+12;f=(c[h>>2]|0)+216|0;c[f>>2]=(c[f>>2]|0)+1;f=c[C>>2]|0;do if(c[B>>2]|0){
e=c[u+(((c[B>>2]|0)/2|0)<<2)>>2]|0;if(!f){c[c[q>>2]>>2]=e;c[c[p>>2]
x3e;>2]=e;break}else{c[c[p>>2]>>2]=e;c[c[q>>2]>>2]=c[L+(((c[C>>2]|0)/2|0)
x3c;<2)>>2];break}}else{O=c[L+(((f|0)/2|0)<<2)>>2]|0;c[c[q>>2]>>2]=O;c[c[
p>>2]>>2]=O}while(0);if((c[c[q>>2]>>2]|0)!=(c[c[p>>2]>>2]|0)){c[J>
;>2]=c[c[p>>2]>>2];c[M>>2]=c[c[q>>2]>>2];a[E>>0]=(c[M>>
;2]|0)>(c[J>>2]|0);if((c[j>>2]|0)==0|(c[j>>2]|0)==2)f=1;else f=(c[j>>2]|0)==3;if(f
x26;1^d[E>>0]|0){O=((c[M>>2]|0)+(c[J>>2]|0)|0)/2|0;c[c[p>>2]>>2]=O;c[c[q>
x3e;2]>>2]=O}}c[(c[o>>2]|0)+24>>2]=0;if((c[j>>2]|0)==0|(c[j>>2]|0)==2|(c[j>
;>2]|0)==3){O=(c[o>>2]|0)+24|0;c[O>>2]=c[O>>2]|2}if((c[j>>2]|0)==3){O=(c[o>>
;2]|0)+24|0;c[O>>2]=c[O>>2]|4}}c[j>>2]=(c[j>>2]|0)+1}i=N;return}function Ql(a,b){a=a|0;b
=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[d>>2]=a;c[e>>2]=b;c[f
x3e;>2]=1;while(1){if((c[f>>2]|0)>>>0>=(c[d>>2]|0)>>>0)break;c[g>
;>2]=c[f>>2];while(1){if((c[g>>2]|0)>>>0<=0)break;if((c[(c[e>>2]|0)+(c[g
x3e;>2]<<2)>>2]|0)>(c[(c[e>>2]|0)+((c[g>>2]|0)-1<<2)>>2]|0
))break;c[h>>2]=c[(c[e>>2]|0)+(c[g>>2]<<2)>>2];c[(c[e>>2]|0)+(c[g>
;>2]<<2)>>2]=c[(c[e>>2]|0)+((c[g>>2]|0)-1<<2)>>2];c[(c[e>
x3e;2]|0)+((c[g>>2]|0)-1<<2)>>2]=c[h>>2];c[g>>2]=(c[g>>2]|0)+-1}c[f
x3e;>2]=(c[f>>2]|0)+1}i=j;return}function Rl(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;o=i;i=i
+32|0;e=o+20|0;f=o+16|0;j=o+12|0;m=o+25|0;l=o+24|0;g=o+8|0;k=o+4|0;h=o;c[e>>2]=b;c[f>>2]=d;a[m>>0]=
0;a[l>>0]=1;c[k>>2]=0;c[j>>2]=48;a:while(1){if((c[j>>2]|0)>>>0>57){n
=10;break}c[h>>2]=Dc(c[f>>2]|0,c[j>>2]|0)|0;do if(c[h>>2]|0?(vb(c[f>>2]|0,c[h
x3e;>2]|0,2051,g)|0)==0:0){d=c[g>>2]|0;if(a[m>>0]|0)if((d|0)!=(c[k>>2]|0))break a;else break;
else{c[k>>2]=d;a[m>>0]=1;break}}while(0);c[j>>2]=(c[j>>2]|0)+1}if((n|0)==10){m=a[l>
x3e;0]|0;n=c[e>>2]|0;n=n+32|0;a[n>>0]=m;i=o;return}a[l>>0]=0;m=a[l>>0]|0;n=c[e>>
;2]|0;n=n+32|0;a[n>>0]=m;i=o;return}function Sl(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)+4+20>>2]=c[(c[e>>2]|0)+20>>2];c[(c[f>>
2]|0)+4>>2]=c[c[e>>2]>>2];Tl(c[f>>2]|0,c[e>>2]|0,0);Tl(c[f>>2]|0,c[e
>>2]|0,1);i=d;return}function Tl(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;x=i;i=i+64|0;m=x+60|0;f=x+56|0;n=x+52|0;w=x+48|0;r=x+44|0;p=x+40|0;v=x+36|0;g=x+32|0;h=x+28|0;k=x+24|0;j=x+20|0;
o=x+16|0;q=x+12|0;u=x+8|0;s=x+4|0;t=x;c[m>>2]=b;c[f>>2]=d;c[n>>2]=e;e=c[f>>2]|0;if(!(c[n
>>2]|0)){c[w>>2]=c[e+4>>2];c[r>>2]=c[(c[f>>2]|0)+12>>2]}else{c[w>
;>2]=c[e+8>>2];c[r>>2]=c[(c[f>>2]|0)+16>>2]}c[p>>2]=(c[m>>2]|0)+
40+((c[n>>2]|0)*396|0);if((c[(c[p>>2]|0)+388>>2]|0)==(c[w>>2]|0)?(c[(c[p>>2]|0
)+392>>2]|0)==(c[r>>2]|0):0){i=x;return}c[(c[p>>2]|0)+388>>2]=c[w>>2];c[(c[p
x3e;>2]|0)+392>>2]=c[r>>2];c[g>>2]=(c[m>>2]|0)+40+396;c[h>>2]=0;c[v>
x3e;2]=0;while(1){if((c[v>>2]|0)>>>0>=(c[(c[g>>2]|0)+216>>2]|0)>>>
;0)break;e=c[v>>2]|0;if(c[(c[g>>2]|0)+220+((c[v>>2]|0)*28|0)+24>>2]&4|0){l=9;break}
c[v>>2]=e+1}if((l|0)==9)c[h>>2]=(c[g>>2]|0)+220+(e*28|0);if(c[h>>2]|0?(c[k>>2]=
Mb(c[(c[h>>2]|0)+12>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0,c[j>>2]=(c[k>>2]|
0)+40&-64,(c[n>>2]|0)==1?(c[k>>2]|0)!=(c[j>>2]|0):0):0)c[w>>2]=xb(c[w>>2]|
0,c[j>>2]|0,c[k>>2]|0)|0;c[c[p>>2]>>2]=c[w>>2];c[(c[p>>2]|0)+4>
x3e;2]=c[r>>2];e=c[w>>2]|0;b=(c[m>>2]|0)+4|0;if(!(c[n>>2]|0)){c[b+4>>2]=e;c[(c
[m>>2]|0)+4+12>>2]=c[r>>2]}else{c[b+8>>2]=e;c[(c[m>>2]|0)+4+16>>2]=c
[r>>2]}c[v>>2]=0;while(1){e=c[p>>2]|0;if((c[v>>2]|0)>>>0>=(c[(c[p>
;>2]|0)+8>>2]|0)>>>0)break;c[o>>2]=e+12+((c[v>>2]|0)*12|0);m=Mb(c[c[o>>
;2]>>2]|0,c[w>>2]|0)|0;c[(c[o>>2]|0)+4>>2]=m;c[(c[o>>2]|0)+8>>2]=c[(
c[o>>2]|0)+4>>2];c[v>>2]=(c[v>>2]|0)+1}o=(Mb(c[e+208>>2]|0,c[w>>2]|0
)|0)<40&255;a[(c[p>>2]|0)+212>>0]=o;if((c[n>>2]|0)!=1){i=x;return}c[v>>2]=0;while
(1){if((c[v>>2]|0)>>>0>=(c[(c[p>>2]|0)+216>>2]|0)>>>0)break;c[q
>>2]=(c[p>>2]|0)+220+((c[v>>2]|0)*28|0);o=Mb(c[c[q>>2]>>2]|0,c[w>>2]|
0)|0;c[(c[q>>2]|0)+4>>2]=o+(c[r>>2]|0);c[(c[q>>2]|0)+8>>2]=c[(c[q>>2
]|0)+4>>2];o=Mb(c[(c[q>>2]|0)+12>>2]|0,c[w>>2]|0)|0;c[(c[q>>2]|0)+12+4>
x3e;2]=o+(c[r>>2]|0);c[(c[q>>2]|0)+12+8>>2]=c[(c[q>>2]|0)+12+4>>2];o=(c[q>
;>2]|0)+24|0;c[o>>2]=c[o>>2]&-2;c[u>>2]=Mb((c[c[q>>2]>>2]|0)-(c[(c[q
>>2]|0)+12>>2]|0)|0,c[w>>2]|0)|0;if((c[u>>2]|0)<=48&(c[u>>2]|0)>
;=-48){c[s>>2]=(c[(c[q>>2]|0)+12>>2]|0)-(c[c[q>>2]>>2]|0);c[t>>2]=c[
s>>2];if((c[s>>2]|0)<0)c[t>>2]=0-(c[t>>2]|0);c[t>>2]=Mb(c[t>>2]|
0,c[w>>2]|0)|0;do if((c[t>>2]|0)>=32){e=c[t>>2]|0;if((c[t>>2]|0)<64){c[t>
x3e;2]=32+(e-32+16&-32);break}else{c[t>>2]=e+32&-64;break}}else c[t>>2]=0;while(0);if((c[s>
x3e;2]|0)<0)c[t>>2]=0-(c[t>>2]|0);c[(c[q>>2]|0)+8>>2]=(c[(c[q>>2]|0)+4>
;>2]|0)+32&-64;c[(c[q>>2]|0)+12+8>>2]=(c[(c[q>>2]|0)+8>>2]|0)+(c[t>>
2]|0);o=(c[q>>2]|0)+24|0;c[o>>2]=c[o>>2]|1}c[v>>2]=(c[v>>2]|0)+1}i=x;return}function
Ul(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;d=j+20|0;k=j+16|0;f=j+12|0;h=j+8|0;g=j+4|0;e=j;c[d>>
2]=a;c[k>>2]=b;c[e>>2]=c[(c[k>>2]|0)+4>>2];Dl(c[d>>2]|0,c[k>>2]|0);c
[(c[d>>2]|0)+4>>2]=c[(c[k>>2]|0)+40>>2];c[(c[d>>2]|0)+8>>2]=c[(c[k
x3e;>2]|0)+40+4>>2];c[(c[d>>2]|0)+12>>2]=c[(c[k>>2]|0)+40+396>>2];c[(c[d
x3e;>2]|0)+16>>2]=c[(c[k>>2]|0)+40+396+4>>2];c[f>>2]=c[(c[k>>2]|0)+4+20
x3e;>2];c[h>>2]=c[(c[d>>2]|0)+104>>2];c[g>>2]=0;if((c[f>>2]|0)==2|(c[f>
;>2]|0)==3)c[g>>2]=c[g>>2]|1;if((c[f>>2]|0)==2|(c[f>>2]|0)==4)c[g>>2]=c[g
>>2]|2;if((c[f>>2]|0)!=1)c[g>>2]=c[g>>2]|4;if((c[f>>2]|0)==2)c[g>>2]=
c[g>>2]|8;if((c[f>>2]|0)!=1?(c[(c[e>>2]|0)+12>>2]&1|0)==0:0){k=c[h>>2]|0;
h=c[d>>2]|0;h=h+104|0;c[h>>2]=k;h=c[g>>2]|0;k=c[d>>2]|0;k=k+108|0;c[k>>2]=h;i=
j;return 0}c[h>>2]=c[h>>2]|1;k=c[h>>2]|0;h=c[d>>2]|0;h=h+104|0;c[h>>2]=k;h=c[g
>>2]|0;k=c[d>>2]|0;k=k+108|0;c[k>>2]=h;i=j;return 0}function Vl(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;f=k+16|0;g=k+12|0;e=k+8|0;j=k+4|0;h=k;c[f>>2]=a;c[g>>2]=b;c[e>>2]=
d;c[j>>2]=Il(c[f>>2]|0,c[g>>2]|0)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}if
((c[(c[f>>2]|0)+104>>2]&1|0)==0?(c[j>>2]=Wl(c[f>>2]|0,0)|0,c[j>>2]|0):0){
j=c[j>>2]|0;i=k;return j|0}do if(!(c[(c[f>>2]|0)+104>>2]&2)){c[j>>2]=Wl(c[f>
x3e;2]|0,1)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}else{Zl(c[f>>2]|0,c[e>>2]|0);break
}}while(0);c[h>>2]=0;while(1){if((c[h>>2]|0)>=2)break;if((c[h>>2]|0)==0?!(c[(c[f>>2
]|0)+104>>2]&1|0):0)e=13;else e=11;if(((e|0)==11?(e=0,(c[h>>2]|0)==1):0)?(c[(c[f>>2]|0)+104
x3e;>2]&2|0)==0:0)e=13;if((e|0)==13){_l(c[f>>2]|0,c[h>>2]|0);dm(c[f>>2]|0,c[h>>
;2]|0);em(c[f>>2]|0,c[h>>2]|0);fm(c[f>>2]|0,c[h>>2]|0)}c[h>>2]=(c[h>>
;2]|0)+1}im(c[f>>2]|0,c[g>>2]|0);j=c[j>>2]|0;i=k;return j|0}function Wl(a,b){a=a|0;b=b|0;var d=0,e
=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Kl(c[d>>2]|0,c[e
>>2]|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}Ml(c[d>>2]|0,c[e>>2]|0);c[f
>>2]=Xl(c[d>>2]|0,c[e>>2]|0)|0;a=c[f>>2]|0;i=g;return a|0}function Xl(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
;M=i;i=i+128|0;g=M+112|0;h=M+108|0;l=M+104|0;D=M+100|0;t=M+96|0;j=M+92|0;k=M+88|0;w=M+84|0;H=M+80|0;K=M+76|0;u=M+72|0;p=M+68|0;v
=M+64|0;s=M+60|0;r=M+56|0;n=M+52|0;m=M+48|0;o=M+44|0;q=M+40|0;C=M+36|0;z=M+32|0;E=M+28|0;G=M+24|0;L=M+20|0;y=M+16|0;F=M+116|0;A=
M+12|0;I=M+8|0;B=M+4|0;J=M;c[g>>2]=e;c[h>>2]=f;c[l>>2]=(c[g>>2]|0)+48+((c[h>>2
]|0)*28|0);c[D>>2]=0;c[t>>2]=c[c[g>>2]>>2];c[j>>2]=(c[(c[g>>2]|0)+112
>>2]|0)+40+((c[h>>2]|0)*396|0);c[k>>2]=c[(c[l>>2]|0)+8>>2];c[w>>2]=(
c[k>>2]|0)+((c[c[l>>2]>>2]|0)*52|0);c[(c[l>>2]|0)+12>>2]=0;f=c[g>>2]|
0;if(!(c[h>>2]|0))f=c[f+4>>2]|0;else f=c[f+12>>2]|0;c[u>>2]=f;c[K>>2]=(c[h>
;>2]|0)==0?2:1;if(!(c[h>>2]|0))c[v>>2]=Vb(64,c[(c[g>>2]|0)+12>>2]|0)|0;else c[v>
;>2]=0;j=Mb(c[(c[j>>2]|0)+204>>2]|0,c[u>>2]|0)|0;c[p>>2]=j;c[p>>2]=(c[p
x3e;>2]|0)>16?16:j;c[p>>2]=Vb(c[p>>2]|0,c[u>>2]|0)|0;c[H>>2]=c[k>>2];
a:while(1){if((c[H>>2]|0)>>>0>=(c[w>>2]|0)>>>0)break;c[s>>2]=0;
do if((b[(c[H>>2]|0)+8>>1]|0)>=(c[v>>2]|0)){if(c[(c[H>>2]|0)+24>>2]|0?(b[(
c[H>>2]|0)+8>>1]<<1|0)<((c[v>>2]|0)*3|0):0)break;c[r>>2]=0;while(1){if((c
[r>>2]|0)>=(c[(c[l>>2]|0)+12>>2]|0))break;c[n>>2]=(c[(c[l>>2]|0)+20>
x3e;2]|0)+((c[r>>2]|0)*48|0);c[m>>2]=(b[(c[H>>2]|0)+2>>1]|0)-(b[c[n>>2]>
x3e;1]|0);if((c[m>>2]|0)<0)c[m>>2]=0-(c[m>>2]|0);if((c[m>>2]|0)<(c[p>>
;2]|0)?(a[(c[n>>2]|0)+13>>0]|0)==(a[(c[H>>2]|0)+1>>0]|0):0){x=18;break}c[r>>2]=(
c[r>>2]|0)+1}if((x|0)==18){x=0;c[s>>2]=c[n>>2]}if(c[s>>2]|0){c[(c[H>>2]|0)+16
x3e;>2]=c[(c[s>>2]|0)+40>>2];c[(c[(c[s>>2]|0)+44>>2]|0)+16>>2]=c[H>
x3e;2];c[(c[s>>2]|0)+44>>2]=c[H>>2];break}c[D>>2]=Yl(c[l>>2]|0,b[(c[H>>
;2]|0)+2>>1]|0,a[(c[H>>2]|0)+1>>0]|0,c[t>>2]|0,o)|0;if(c[D>>2]|0){x=66;break a
}f=c[o>>2]|0;e=f+48|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(e|0));c[(c[o>>2]|0)+40>>2]=
c[H>>2];c[(c[o>>2]|0)+44>>2]=c[H>>2];b[c[o>>2]>>1]=b[(c[H>>
;2]|0)+2>>1]|0;a[(c[o>>2]|0)+13>>0]=a[(c[H>>2]|0)+1>>0]|0;k=Mb(b[(c[H>>
;2]|0)+2>>1]|0,c[u>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=k;c[(c[o>>2]|0)+4>>2
]=k;c[(c[H>>2]|0)+16>>2]=c[H>>2]}while(0);c[H>>2]=(c[H>>2]|0)+52}if((x|0)==66){
L=c[D>>2]|0;i=M;return L|0}c[q>>2]=c[(c[l>>2]|0)+20>>2];c[C>>2]=(c[q>>
;2]|0)+((c[(c[l>>2]|0)+12>>2]|0)*48|0);c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)
x3e;>>0>=(c[C>>2]|0)>>>0)break;c[H>>2]=c[(c[z>>2]|0)+40>>2
];if(c[H>>2]|0)do{c[(c[H>>2]|0)+12>>2]=c[z>>2];c[H>>2]=c[(c[H>>2]|0)+
16>>2]}while((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));c[z>>2]=(c[z>>2]|
0)+48}c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)>>>0>=(c[C>>2]|0)>
x3e;>0)break;c[E>>2]=0;c[G>>2]=0;c[L>>2]=0;c[y>>2]=0;c[H>>2]=c[(c[z>
x3e;2]|0)+40>>2];do{if(d[c[H>>2]>>0]&1|0)c[E>>2]=(c[E>>2]|0)+1;else c[G
x3e;>2]=(c[G>>2]|0)+1;f=(b[(c[H>>2]|0)+6>>1]|0)-(b[(c[H>>2]|0)+4>>1]|0)|0
;if((a[(c[H>>2]|0)+1>>0]|0)==(c[K>>2]|0))c[L>>2]=(c[L>>2]|0)+f;else c[y>
x3e;2]=(c[y>>2]|0)+f;if(c[(c[H>>2]|0)+24>>2]|0?c[(c[(c[H>>2]|0)+24>>2]|0)+12
x3e;>2]|0:0)f=(c[(c[(c[H>>2]|0)+24>>2]|0)+12>>2]|0)!=(c[z>>2]|0);else f=0;a[F>
x3e;0]=f&1;if(c[(c[H>>2]|0)+20>>2]|0?c[(c[(c[H>>2]|0)+20>>2]|0)+12>>2]|0:
0)x=45;else x=44;if((x|0)==44?(x=0,d[F>>0]|0):0)x=45;do if((x|0)==45){c[A>>2]=c[(c[z>>2]|0)+24>
;>2];c[I>>2]=c[(c[H>>2]|0)+20>>2];if(a[F>>0]|0){c[I>>2]=c[(c[H>>
;2]|0)+24>>2];c[A>>2]=c[(c[z>>2]|0)+28>>2]}if(c[A>>2]|0){c[B>>2]=(b[
c[z>>2]>>1]|0)-(b[c[A>>2]>>1]|0);if((c[B>>2]|0)<0)c[B>>2]=0-(c[
B>>2]|0);c[J>>2]=(b[(c[H>>2]|0)+2>>1]|0)-(b[(c[I>>2]|0)+2>>1]|0);if((
c[J>>2]|0)<0)c[J>>2]=0-(c[J>>2]|0);if((c[J>>2]|0)<(c[B>>2]|0))c[A>
;>2]=c[(c[I>>2]|0)+12>>2]}else c[A>>2]=c[(c[I>>2]|0)+12>>2];f=c[A>
x3e;2]|0;e=c[z>>2]|0;if(a[F>>0]|0){c[e+28>>2]=f;x=(c[A>>2]|0)+12|0;a[x>>0]=d[x
>>0]|2;break}else{c[e+24>>2]=f;break}}while(0);c[H>>2]=c[(c[H>>2]|0)+16>>2]}while
((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));a[(c[z>>2]|0)+12>>0]=0;if((c[E>
x3e;2]|0)>0?(c[E>>2]|0)>=(c[G>>2]|0):0){x=(c[z>>2]|0)+12|0;a[x>>0]=d[x>
x3e;0]|1}if(c[(c[z>>2]|0)+28>>2]|0?c[(c[z>>2]|0)+24>>2]|0:0)c[(c[z>>2]|0)+28
x3e;>2]=0;c[z>>2]=(c[z>>2]|0)+48}L=c[D>>2]|0;i=M;return L|0}function Yl(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,t=0,u=0;u=i;i=i+48|0;n=u+40|0;o=u+36|0;p=u+32|0;j=u+28|0;q=u+24|
0;t=u+20|0;r=u+16|0;s=u+12|0;m=u+8|0;l=u+4|0;k=u;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[j>>2]=g
;c[q>>2]=h;c[t>>2]=0;c[r>>2]=0;do if((c[(c[n>>2]|0)+12>>2]|0)>=(c[(c[n>
;>2]|0)+16>>2]|0)){c[m>>2]=c[(c[n>>2]|0)+16>>2];c[l>>2]=c[m>>2];
c[k>>2]=44739242;if((c[m>>2]|0)>=(c[k>>2]|0)){c[t>>2]=64;r=c[r>>2]|0;s=c[
q>>2]|0;c[s>>2]=r;t=c[t>>2]|0;i=u;return t|0}c[l>>2]=(c[l>>2]|0)+((c[l>
x3e;2]>>2)+4);if(!((c[l>>2]|0)>=(c[m>>2]|0)?(c[l>>2]|0)<=(c[k>>2]|0):
0))c[l>>2]=c[k>>2];m=hc(c[j>>2]|0,48,c[m>>2]|0,c[l>>2]|0,c[(c[n>>2]|
0)+20>>2]|0,t)|0;c[(c[n>>2]|0)+20>>2]=m;if(c[t>>2]|0){r=c[r>>2]|0;s=c[q>
x3e;2]|0;c[s>>2]=r;t=c[t>>2]|0;i=u;return t|0}else{c[(c[n>>2]|0)+16>>2]=c[l>>2
];break}}while(0);c[s>>2]=c[(c[n>>2]|0)+20>>2];c[r>>2]=(c[s>>2]|0)+((c[(c[n>
;>2]|0)+12>>2]|0)*48|0);while(1){if((c[r>>2]|0)>>>0<=(c[s>>2]|0)>>
;>0)break;if((b[(c[r>>2]|0)+-48>>1]|0)<(c[o>>2]|0))break;if((b[(c[r>>2]|0)+-48
>>1]|0)==(c[o>>2]|0)?(c[p>>2]|0)==(c[(c[n>>2]|0)+24>>2]|0):0)break;j=c[r>
x3e;2]|0;h=(c[r>>2]|0)+-48|0;d=j+48|0;do{c[j>>2]=c[h>>2];j=j+4|0;h=h+4|0}while((j|0)<(d|0));c
[r>>2]=(c[r>>2]|0)+-48}j=(c[n>>2]|0)+12|0;c[j>>2]=(c[j>>2]|0)+1;j=c[r>>
;2]|0;d=j+48|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(d|0));b[c[r>>2]>>1]=c[o>>2];a[(c[r
>>2]|0)+13>>0]=c[p>>2];r=c[r>>2]|0;s=c[q>>2]|0;c[s>>2]=r;t=c[t>
x3e;2]|0;i=u;return t|0}function Zl(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;v=i;i=i
+64|0;w=v+44|0;g=v+40|0;h=v+36|0;o=v+32|0;p=v+28|0;t=v+24|0;u=v+20|0;j=v+16|0;k=v+12|0;l=v+8|0;m=v+4|0;r=v+50|0;q=v+49|0;n=v;s=v
+48|0;c[w>>2]=e;c[g>>2]=f;c[h>>2]=(c[w>>2]|0)+48+28;c[o>>2]=c[(c[h>>
2]|0)+20>>2];c[p>>2]=(c[o>>2]|0)+((c[(c[h>>2]|0)+12>>2]|0)*48|0);c[t>>
;2]=(c[g>>2]|0)+40+396;c[u>>2]=c[c[t>>2]>>2];while(1){if((c[o>>2]|0)>>
;>0>=(c[p>>2]|0)>>>0)break;c[k>>2]=0;w=Mb(((c[(c[g>>2]|0)+36>>2
]|0)>>>0)/40|0,c[u>>2]|0)|0;c[l>>2]=w;c[l>>2]=(c[l>>2]|0)>32?32:w;c[
j>>2]=0;while(1){if((c[j>>2]|0)>=6)break;c[m>>2]=(c[t>>2]|0)+220+((c[j>>2
]|0)*28|0);if(c[(c[m>>2]|0)+24>>2]&1|0?(a[r>>0]=(c[(c[m>>2]|0)+24>>2]&
;2|0)!=0,a[q>>0]=(a[(c[o>>2]|0)+13>>0]|0)==(c[(c[h>>2]|0)+24>>2]|0),d[r>
x3e;0]^d[q>>0]|0):0){c[n>>2]=(b[c[o>>2]>>1]|0)-(c[c[m>>2]>>2]|0);if((
c[n>>2]|0)<0)c[n>>2]=0-(c[n>>2]|0);c[n>>2]=Mb(c[n>>2]|0,c[u>>2]|
0)|0;if((c[n>>2]|0)<(c[l>>2]|0)){c[l>>2]=c[n>>2];c[k>>2]=c[m>>2
]}if((c[n>>2]|0?(d[(c[o>>2]|0)+12>>0]&1|0)!=0:0)?(a[s>>0]=(b[c[o>>2]>
;>1]|0)<(c[c[m>>2]>>2]|0),d[r>>0]^d[s>>0]|0):0){c[m>>2]=(c[t>
x3e;2]|0)+220+((c[j>>2]|0)*28|0);c[n>>2]=(b[c[o>>2]>>1]|0)-(c[(c[m>>2]|0)+12
x3e;>2]|0);if((c[n>>2]|0)<0)c[n>>2]=0-(c[n>>2]|0);c[n>>2]=Mb(c[n>>2]|
0,c[u>>2]|0)|0;if((c[n>>2]|0)<(c[l>>2]|0)){c[l>>2]=c[n>>2];c[k>>
;2]=(c[m>>2]|0)+12}}}c[j>>2]=(c[j>>2]|0)+1}if(c[k>>2]|0)c[(c[o>>2]|0)+20>
x3e;2]=c[k>>2];c[o>>2]=(c[o>>2]|0)+48}i=v;return}function _l(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,D=0,E=0,F=0,G=0,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;U=i;i=i+176|0;M=U+160|0;j=U+156|0;V=U+152|0;T=U+148|0;S=U+144|0;K=U+140|0;R=U+136|0;O=U+132|0;J=U+128|0;
f=U+124|0;g=U+120|0;h=U+116|0;t=U+112|0;y=U+108|0;w=U+104|0;k=U+100|0;m=U+96|0;u=U+92|0;v=U+88|0;B=U+84|0;p=U+80|0;A=U+76|0;z=U+
72|0;x=U+68|0;l=U+64|0;n=U+60|0;o=U+56|0;r=U+52|0;s=U+48|0;C=U+44|0;q=U+40|0;G=U+36|0;H=U+32|0;I=U+28|0;E=U+24|0;F=U+20|0;L=U+16
|0;D=U+12|0;Q=U+8|0;P=U+4|0;N=U;c[M>>2]=b;c[j>>2]=e;c[V>>2]=(c[M>>2]|0)+48+((c[j>
x3e;2]|0)*28|0);c[T>>2]=c[(c[V>>2]|0)+20>>2];c[S>>2]=(c[T>>2]|0)+((c[(c[V>
;>2]|0)+12>>2]|0)*48|0);c[O>>2]=0;c[J>>2]=0;a:do if((c[j>>2]|0)==1){c[R>>
2]=c[T>>2];while(1){if((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break a
;if(!((d[(c[R>>2]|0)+12>>0]|0)&4)){c[f>>2]=c[(c[R>>2]|0)+20>>2];c[g>
x3e;2]=0;c[h>>2]=c[(c[R>>2]|0)+24>>2];if(!(c[f>>2]|0)){if(c[h>>2]|0?c[(c[h>
;>2]|0)+20>>2]|0:0){c[f>>2]=c[(c[h>>2]|0)+20>>2];c[g>>2]=c[h>>2
];c[h>>2]=c[R>>2]}}else c[g>>2]=c[R>>2];if(c[g>>2]|0){c[(c[g>>2]|0)+
8>>2]=c[(c[f>>2]|0)+8>>2];V=(c[g>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if(
c[h>>2]|0?(c[(c[h>>2]|0)+20>>2]|0)==0:0){$l(c[M>>2]|0,c[j>>2]|0,c[g>>
;2]|0,c[h>>2]|0);V=(c[h>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4}if(!(c[O>>2]|0))c[O>
;>2]=c[R>>2]}}c[R>>2]=(c[R>>2]|0)+48}}while(0);c[R>>2]=c[T>>2];while(1){if
((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;do if(!((d[(c[R>>2]|0)+
12>>0]|0)&4)){c[t>>2]=c[(c[R>>2]|0)+24>>2];if(!(c[t>>2]|0)){c[J>>
;2]=(c[J>>2]|0)+1;break}if(c[(c[t>>2]|0)+20>>2]|0){$l(c[M>>2]|0,c[j>>2]|0,c[t
x3e;>2]|0,c[R>>2]|0);V=(c[R>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;break}if(!(c[O>>
;2]|0)){c[y>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0);c[k>>
;2]=am(c[M>>2]|0,c[j>>2]|0,c[y>>2]|0,d[(c[R>>2]|0)+12>>0]|0,d[(c[t>>
2]|0)+12>>0]|0)|0;if((c[k>>2]|0)<=64){c[p>>2]=32;c[B>>2]=32}else{c[B>>2]=
38;c[p>>2]=26}f=c[(c[R>>2]|0)+4>>2]|0;if((c[k>>2]|0)<96){c[w>>2]=f+(c[y
x3e;>2]>>1);c[m>>2]=(c[w>>2]|0)+32&-64;c[u>>2]=(c[w>>2]|0)-((c[m>
;>2]|0)-(c[B>>2]|0));if((c[u>>2]|0)<0)c[u>>2]=0-(c[u>>2]|0);c[v>>2]=(
c[w>>2]|0)-((c[m>>2]|0)+(c[p>>2]|0));if((c[v>>2]|0)<0)c[v>>2]=0-(c[v>
;>2]|0);if((c[u>>2]|0)<(c[v>>2]|0))c[m>>2]=(c[m>>2]|0)-(c[B>>2]|0);else
c[m>>2]=(c[m>>2]|0)+(c[p>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[m>>2]|0)-((c
[k>>2]|0)/2|0);c[(c[t>>2]|0)+8>>2]=(c[(c[R>>2]|0)+8>>2]|0)+(c[k>>2]|
0)}else c[(c[R>>2]|0)+8>>2]=f+32&-64;c[O>>2]=c[R>>2];V=(c[R>>2]|0)+12|0;a
[V>>0]=d[V>>0]|0|4;$l(c[M>>2]|0,c[j>>2]|0,c[R>>2]|0,c[t>>2]|0);break
}c[A>>2]=(c[(c[O>>2]|0)+8>>2]|0)+((c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2
]|0)+4>>2]|0));c[z>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|
0);c[x>>2]=(c[A>>2]|0)+(c[z>>2]>>1);c[l>>2]=am(c[M>>2]|0,c[j>
x3e;2]|0,c[z>>2]|0,d[(c[R>>2]|0)+12>>0]|0,d[(c[t>>2]|0)+12>>0]|0)|0;do if((d[(
c[t>>2]|0)+12>>0]|0)&4|0)c[(c[R>>2]|0)+8>>2]=(c[(c[t>>2]|0)+8>>
2]|0)-(c[l>>2]|0);else{if((c[l>>2]|0)>=96){c[A>>2]=(c[(c[O>>2]|0)+8>>2]|0
)+((c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2]|0)+4>>2]|0));c[z>>2]=(c[(c[t>>
;2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0);c[x>>2]=(c[A>>2]|0)+(c[z>>2]
x3e;>1);c[l>>2]=am(c[M>>2]|0,c[j>>2]|0,c[z>>2]|0,d[(c[R>>2]|0)+12>
x3e;0]|0,d[(c[t>>2]|0)+12>>0]|0)|0;c[n>>2]=(c[A>>2]|0)+32&-64;c[r>>2]=(c[
n>>2]|0)+(c[l>>2]>>1)-(c[x>>2]|0);if((c[r>>2]|0)<0)c[r>>2]=0-(c
[r>>2]|0);c[o>>2]=((c[A>>2]|0)+(c[z>>2]|0)+32&-64)-(c[l>>2]|0);c[s>
x3e;2]=(c[o>>2]|0)+(c[l>>2]>>1)-(c[x>>2]|0);if((c[s>>2]|0)<0)c[s>>
;2]=0-(c[s>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[r>>2]|0)<(c[s>>2]|0)?c[n>
x3e;2]|0:c[o>>2]|0;c[(c[t>>2]|0)+8>>2]=(c[(c[R>>2]|0)+8>>2]|0)+(c[l>>
;2]|0);break}c[n>>2]=(c[x>>2]|0)+32&-64;if((c[l>>2]|0)<=64){c[q>>2]=32;c[C>
;>2]=32}else{c[C>>2]=38;c[q>>2]=26}c[r>>2]=(c[x>>2]|0)-((c[n>>2]|0)-(c[C
x3e;>2]|0));if((c[r>>2]|0)<0)c[r>>2]=0-(c[r>>2]|0);c[s>>2]=(c[x>>2]|
0)-((c[n>>2]|0)+(c[q>>2]|0));if((c[s>>2]|0)<0)c[s>>2]=0-(c[s>>2]|0);if((c
[r>>2]|0)<(c[s>>2]|0))c[n>>2]=(c[n>>2]|0)-(c[C>>2]|0);else c[n>>
;2]=(c[n>>2]|0)+(c[q>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[n>>2]|0)-((c[l>>2
]|0)/2|0);c[(c[t>>2]|0)+8>>2]=(c[n>>2]|0)+((c[l>>2]|0)/2|0)}while(0);V=(c[R>>2
]|0)+12|0;a[V>>0]=d[V>>0]|0|4;V=(c[t>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if((c[R
x3e;>2]|0)>>>0>(c[T>>2]|0)>>>0?(c[(c[R>>2]|0)+8>>2]|0)<
;(c[(c[R>>2]|0)+-48+8>>2]|0):0)c[(c[R>>2]|0)+8>>2]=c[(c[R>>2]|0)+-48+8>
x3e;2]}while(0);c[R>>2]=(c[R>>2]|0)+48}c[K>>2]=((c[S>>2]|0)-(c[T>>2]|0)|0)/48|
0;if((c[j>>2]|0)==0?(c[K>>2]|0)==6|(c[K>>2]|0)==12:0){f=c[T>>2]|0;if((c[K>>2]|
0)==6){c[G>>2]=f;c[H>>2]=(c[T>>2]|0)+96;c[I>>2]=(c[T>>2]|0)+192}else{c[G>
x3e;2]=f+48;c[H>>2]=(c[T>>2]|0)+240;c[I>>2]=(c[T>>2]|0)+432}c[E>>2]=(c[(c[H>
;>2]|0)+4>>2]|0)-(c[(c[G>>2]|0)+4>>2]|0);c[F>>2]=(c[(c[I>>2]|0)+4>
x3e;2]|0)-(c[(c[H>>2]|0)+4>>2]|0);c[L>>2]=(c[E>>2]|0)-(c[F>>2]|0);if((c[L>
;>2]|0)<0)c[L>>2]=0-(c[L>>2]|0);if((c[L>>2]|0)<8){c[D>>2]=(c[(c[I>
x3e;2]|0)+8>>2]|0)-((c[(c[H>>2]|0)+8>>2]<<1)-(c[(c[G>>2]|0)+8>>2]|0));
V=(c[I>>2]|0)+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0);if(c[(c[I>>2]|0)+24>>
;2]|0){V=(c[(c[I>>2]|0)+24>>2]|0)+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0)}if((c[K
x3e;>2]|0)==12){V=(c[T>>2]|0)+384+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0);V=(c[T>
x3e;2]|0)+528+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0)}V=(c[I>>2]|0)+12|0;a[V>>0]=d
[V>>0]|0|4;if(c[(c[I>>2]|0)+24>>2]|0){V=(c[(c[I>>2]|0)+24>>2]|0)+12|0;a[V>
;>0]=d[V>>0]|0|4}}}if((c[J>>2]|0)==0&(c[O>>2]|0)!=0){i=U;return}c[R>>2]=c[T>
;>2];while(1){if((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;if(!((d[(c[R
>>2]|0)+12>>0]|0)&4)){c[Q>>2]=1e3;if(c[(c[R>>2]|0)+28>>2]|0?(c[Q>>
;2]=(c[(c[(c[R>>2]|0)+28>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0),(c[Q>>
;2]|0)<0):0)c[Q>>2]=0-(c[Q>>2]|0);do if((c[Q>>2]|0)<80)cm(c[M>>2]|0,c[(c[R>
;>2]|0)+28>>2]|0,c[R>>2]|0);else{f=c[R>>2]|0;if(!(c[O>>2]|0)){c[(c[R>>2]|
0)+8>>2]=(c[f+4>>2]|0)+32&-64;c[O>>2]=c[R>>2];break}c[P>>2]=f+-48;while(1
){if((c[P>>2]|0)>>>0<(c[T>>2]|0)>>>0)break;if((d[(c[P>>2]|0)+12
>>0]|0)&4|0)break;c[P>>2]=(c[P>>2]|0)+-48}c[N>>2]=(c[R>>2]|0)+48;while(1){
if((c[N>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;if((d[(c[N>>2]|0)+12
x3e;>0]|0)&4|0)break;c[N>>2]=(c[N>>2]|0)+48}if((((c[P>>2]|0)>>>0>=(c
[T>>2]|0)>>>0?(c[P>>2]|0)>>>0<(c[R>>2]|0)>>>0:0)?(
c[N>>2]|0)>>>0<(c[S>>2]|0)>>>0:0)?(c[N>>2]|0)>>>
0>(c[R>>2]|0)>>>0:0){f=c[(c[P>>2]|0)+8>>2]|0;e=c[R>>2]|0;if((c[(c[N
x3e;>2]|0)+4>>2]|0)==(c[(c[P>>2]|0)+4>>2]|0)){c[e+8>>2]=f;break}else{V=f+(xb((c[e+4
>>2]|0)-(c[(c[P>>2]|0)+4>>2]|0)|0,(c[(c[N>>2]|0)+8>>2]|0)-(c[(c[P>>2
]|0)+8>>2]|0)|0,(c[(c[N>>2]|0)+4>>2]|0)-(c[(c[P>>2]|0)+4>>2]|0)|0)|0)|0;c[(c[R
>>2]|0)+8>>2]=V;break}}c[(c[R>>2]|0)+8>>2]=(c[(c[O>>2]|0)+8>>2]|0)+((
c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2]|0)+4>>2]|0)+16&-32)}while(0);V=(c[R>>2
]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if((c[R>>2]|0)>>>0>(c[T>>2]|0)>
x3e;>0?(c[(c[R>>2]|0)+8>>2]|0)<(c[(c[R>>2]|0)+-48+8>>2]|0):0)c[(c[R>>
;2]|0)+8>>2]=c[(c[R>>2]|0)+-48+8>>2];if((((c[R>>2]|0)+48|0)>>>0<(c[S
>>2]|0)>>>0?(d[(c[R>>2]|0)+48+12>>0]|0)&4|0:0)?(c[(c[R>>2]|0)+8>
;>2]|0)>(c[(c[R>>2]|0)+48+8>>2]|0):0)c[(c[R>>2]|0)+8>>2]=c[(c[R>>2]|
0)+48+8>>2]}c[R>>2]=(c[R>>2]|0)+48}i=U;return}function $l(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;g=i;i=i+32|0;n=g+20|0;m=g+16|0;k=g+12|0;h=g+8|0;l=g+4|0;j=g;c[n>>2]=a;c[m>>2]=b;c[k
>>2]=e;c[h>>2]=f;c[l>>2]=(c[(c[h>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+4>
;>2]|0);c[j>>2]=am(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,d[(c[k>>2]|0)+12>
x3e;0]|0,d[(c[h>>2]|0)+12>>0]|0)|0;c[(c[h>>2]|0)+8>>2]=(c[(c[k>>2]|0)+8>
x3e;2]|0)+(c[j>>2]|0);i=g;return}function am(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;u=i;i=i+64|0;q=u+52|0;j=u+48|0;v=u+44|0;h=u+40|0;o=u+36|0;k=u+32|0;w=u+28|0;p=u+24|0;s=u+20|0;t=
u+16|0;n=u+12|0;r=u+8|0;m=u+4|0;l=u;c[j>>2]=a;c[v>>2]=b;c[h>>2]=e;c[o>>2]=f;c[k>>
;2]=g;c[w>>2]=c[(c[j>>2]|0)+112>>2];c[p>>2]=(c[w>>2]|0)+40+((c[v>>2]|
0)*396|0);c[s>>2]=c[h>>2];c[t>>2]=0;c[n>>2]=(c[v>>2]|0)==1&1;if(c[(c[j>
;>2]|0)+108>>2]&4|0?(d[(c[p>>2]|0)+212>>0]|0|0)==0:0){if((c[s>>2]|0)<0){c
[s>>2]=0-(c[h>>2]|0);c[t>>2]=1}if(c[n>>2]|0?!(c[(c[j>>2]|0)+108>>2]
x26;2|0):0)b=10;else b=8;do if((b|0)==8){if((c[n>>2]|0)==0?(c[(c[j>>2]|0)+108>>2]&1|0)==0:0){
b=10;break}c[m>>2]=c[s>>2];c[s>>2]=bm((c[p>>2]|0)+12|0,c[(c[p>>2]|0)+8>
x3e;2]|0,c[s>>2]|0)|0;if(c[n>>2]|0)if((c[s>>2]|0)>=64){c[s>>2]=(c[s>>2]|0
)+16&-64;break}else{c[s>>2]=64;break}h=c[s>>2]|0;if(c[(c[j>>2]|0)+108>>2]&8|0)
if((h|0)<64){c[s>>2]=64;break}else{c[s>>2]=(c[s>>2]|0)+32&-64;break}f=c[s>>2]|
0;if((h|0)<48){c[s>>2]=f+64>>1;break}h=c[s>>2]|0;if((f|0)>=128){c[s>>2]=h+32
x26;-64;break}c[s>>2]=h+22&-64;c[l>>2]=(c[s>>2]|0)-(c[m>>2]|0);if((c[l>>2
]|0)<0)c[l>>2]=0-(c[l>>2]|0);if((c[l>>2]|0)>=16?(c[s>>2]=c[m>>2],(c[
s>>2]|0)<48):0)c[s>>2]=(c[s>>2]|0)+64>>1}while(0);do if((b|0)==10?!((c[k>>
;2]&2|0)!=0&(c[n>>2]|0)!=0&(c[s>>2]|0)<192):0){h=c[s>>2]|0;if(c[o>>2
]&1|0){if((h|0)<80)c[s>>2]=64}else if((h|0)<56)c[s>>2]=56;if((c[(c[p>>2]|0)+8>
x3e;2]|0)>>>0>0){c[r>>2]=(c[s>>2]|0)-(c[(c[p>>2]|0)+12+4>>2]|0);if((
c[r>>2]|0)<0)c[r>>2]=0-(c[r>>2]|0);if((c[r>>2]|0)<40){w=c[(c[p>>2]|0
)+12+4>>2]|0;c[s>>2]=w;c[s>>2]=(c[s>>2]|0)<48?48:w;break}h=c[s>>2]|0;if((
c[s>>2]|0)>=192){c[s>>2]=h+32&-64;break}c[r>>2]=h&63;c[s>>2]=c[s>>
;2]&-64;h=c[r>>2]|0;if((c[r>>2]|0)<10){c[s>>2]=(c[s>>2]|0)+h;break}if((h|0)<
;32){c[s>>2]=(c[s>>2]|0)+10;break}if((c[r>>2]|0)<54){c[s>>2]=(c[s>>2]|0)+
54;break}else{c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);break}}}while(0);if(c[t>>2]|0)c[s>>
;2]=0-(c[s>>2]|0);c[q>>2]=c[s>>2];w=c[q>>2]|0;i=u;return w|0}c[q>>2]=c[h>
x3e;2];w=c[q>>2]|0;i=u;return w|0}function bm(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;o=i
;i=i+48|0;e=o+32|0;f=o+28|0;m=o+24|0;j=o+20|0;g=o+16|0;n=o+12|0;l=o+8|0;k=o+4|0;h=o;c[e>>2]=a;c[f>>2]=b;c[m
x3e;>2]=d;c[g>>2]=98;c[n>>2]=c[m>>2];c[j>>2]=0;while(1){if((c[j>>2]|0)>
;=(c[f>>2]|0))break;c[k>>2]=c[(c[e>>2]|0)+((c[j>>2]|0)*12|0)+4>>2];c[h>
x3e;2]=(c[m>>2]|0)-(c[k>>2]|0);if((c[h>>2]|0)<0)c[h>>2]=0-(c[h>>2]|0);if((
c[h>>2]|0)<(c[g>>2]|0)){c[g>>2]=c[h>>2];c[n>>2]=c[k>>2]}c[j>
;>2]=(c[j>>2]|0)+1}c[l>>2]=(c[n>>2]|0)+32&-64;f=c[m>>2]|0;e=c[l>>2]|
0;if((c[m>>2]|0)>=(c[n>>2]|0)){if((f|0)>=(e+48|0)){n=c[m>>2]|0;i=o;return n|0}c[m>
x3e;2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}else{if((f|0)<=(e-48|0)){n=c[m>>2]|0;i=o;return n|0
}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}return 0}function cm(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;c[h>>2]=c[h
x3e;>2];c[(c[f>>2]|0)+8>>2]=(c[(c[g>>2]|0)+8>>2]|0)+((c[(c[f>>2]|0)+4>
;>2]|0)-(c[(c[g>>2]|0)+4>>2]|0));i=e;return}function dm(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,q=0,r=0,s=0,t=0,u=0;q=i;i=i+64|0;u=q+52|0;s=q+48|0;t=q+44|0;r=q+40|0;p=q+36|0;o=q+32|0;f=q+28|0;m=q+24|0;h=q+20|0;
k=q+16|0;g=q+12|0;n=q+8|0;j=q+4|0;l=q;c[u>>2]=a;c[s>>2]=d;c[t>>2]=(c[u>>2]|0)+48+((c[s
x3e;>2]|0)*28|0);c[r>>2]=c[(c[t>>2]|0)+8>>2];c[p>>2]=(c[r>>2]|0)+((c[c[t
x3e;>2]>>2]|0)*52|0);a=(c[s>>2]|0)==0;c[o>>2]=c[r>>2];if(a){while(1){if((c[o>
x3e;2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[f>>2]=c[(c[o>>2]|0)+12
x3e;>2];a:do if(c[f>>2]|0){c[h>>2]=c[(c[o>>2]|0)+40>>2];c[k>>2]=c[(c[o>
;>2]|0)+44>>2];c[m>>2]=c[h>>2];while(1){c[(c[m>>2]|0)+16>>2]=c[(c[f>
x3e;2]|0)+8>>2];u=c[m>>2]|0;b[u>>1]=e[u>>1]|0|64;if((c[m>>2]|0)==(c[k>>
;2]|0))break a;c[m>>2]=c[(c[m>>2]|0)+32>>2]}}while(0);c[o>>2]=(c[o>>2]|0)+52}i
=q;return}else{while(1){if((c[o>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[g>
;>2]=c[(c[o>>2]|0)+12>>2];b:do if(c[g>>2]|0){c[j>>2]=c[(c[o>>2]|0)+40>
;>2];c[l>>2]=c[(c[o>>2]|0)+44>>2];c[n>>2]=c[j>>2];while(1){c[(c[n>
x3e;2]|0)+20>>2]=c[(c[g>>2]|0)+8>>2];u=c[n>>2]|0;b[u>>1]=e[u>>1]|0|128
;if((c[n>>2]|0)==(c[l>>2]|0))break b;c[n>>2]=c[(c[n>>2]|0)+32>>2]}}while(0);c[
o>>2]=(c[o>>2]|0)+52}i=q;return}}function em(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,q=
0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;z=i;i=i+96|0;B=z+80|0;g=z+76|0;f=z+72|0;w=z+68|0;A=z+64|0;n=z+60|0;m=z+56|0;x=z+52
|0;v=z+48|0;l=z+44|0;y=z+40|0;u=z+36|0;p=z+32|0;k=z+28|0;s=z+24|0;q=z+20|0;r=z+16|0;o=z+12|0;t=z+8|0;j=z+4|0;h=z;c[B>>
2]=a;c[g>>2]=d;c[f>>2]=c[(c[B>>2]|0)+32>>2];c[w>>2]=(c[f>>2]|0)+((c[(
c[B>>2]|0)+28>>2]|0)*40|0);c[A>>2]=(c[B>>2]|0)+48+((c[g>>2]|0)*28|0);c[n>
x3e;2]=c[(c[A>>2]|0)+20>>2];c[m>>2]=(c[n>>2]|0)+((c[(c[A>>2]|0)+12>>
2]|0)*48|0);if(!(c[g>>2]|0))c[x>>2]=64;else c[x>>2]=128;if((c[n>>2]|0)>>>
0>=(c[m>>2]|0)>>>0){i=z;return}c[v>>2]=c[f>>2];while(1){if((c[v>>2]|
0)>>>0>=(c[w>>2]|0)>>>0)break;do if(!(e[c[v>>2]>>1]&c[x>
;>2])){if(e[c[v>>2]>>1]&256|0?(e[c[v>>2]>>1]&512|0)==0:0)break;d=c[v>
;>2]|0;if((c[g>>2]|0)==1){c[y>>2]=b[d+14>>1];c[u>>2]=c[(c[v>>2]|0)+8>
;>2]}else{c[y>>2]=b[d+12>>1];c[u>>2]=c[(c[v>>2]|0)+4>>2]}c[p>>2
]=c[y>>2];c[l>>2]=c[n>>2];c[k>>2]=(b[c[l>>2]>>1]|0)-(c[y>>
2]|0);a:do if((c[k>>2]|0)>=0)c[y>>2]=(c[(c[l>>2]|0)+8>>2]|0)-((c[(c[l>>2]|
0)+4>>2]|0)-(c[u>>2]|0));else{c[l>>2]=(c[m>>2]|0)+-48;c[k>>2]=(c[y>>
2]|0)-(b[c[l>>2]>>1]|0);if((c[k>>2]|0)>=0){c[y>>2]=(c[(c[l>>2]|0)+8>
x3e;2]|0)+((c[u>>2]|0)-(c[(c[l>>2]|0)+4>>2]|0));break}c[s>>2]=0;c[q>>2]=((c[m
x3e;>2]|0)-(c[n>>2]|0)|0)/48|0;b:do if((c[q>>2]|0)<=8){c[t>>2]=0;while(1){if((c[t>
x3e;2]|0)>=(c[q>>2]|0))break;if((b[(c[n>>2]|0)+((c[t>>2]|0)*48|0)>>1]|0)>=(c[y
>>2]|0))break;c[t>>2]=(c[t>>2]|0)+1}d=c[t>>2]|0;if((b[(c[n>>2]|0)+((c[t>
x3e;2]|0)*48|0)>>1]|0)==(c[y>>2]|0)){c[y>>2]=c[(c[n>>2]|0)+(d*48|0)+8>>2];break
a}else{c[s>>2]=d;break}}else{while(1){if((c[s>>2]|0)>=(c[q>>2]|0))break b;c[r>>2]=(
c[q>>2]|0)+(c[s>>2]|0)>>1;c[l>>2]=(c[n>>2]|0)+((c[r>>2]|0)*48|0);c[o
>>2]=b[c[l>>2]>>1];if((c[y>>2]|0)<(c[o>>2]|0)){c[q>>2]=c[r>
;>2];continue}if((c[y>>2]|0)<=(c[o>>2]|0))break;c[s>>2]=(c[r>>2]|0)+1}c[y>
;>2]=c[(c[l>>2]|0)+8>>2];break a}while(0);c[j>>2]=(c[n>>2]|0)+((c[s>>2]|0
)*48|0)+-48;c[h>>2]=(c[n>>2]|0)+((c[s>>2]|0)*48|0);if(!(c[(c[j>>2]|0)+16>>2]|0
)){B=Vb((c[(c[h>>2]|0)+8>>2]|0)-(c[(c[j>>2]|0)+8>>2]|0)|0,(b[c[h>>2]>>
;1]|0)-(b[c[j>>2]>>1]|0)|0)|0;c[(c[j>>2]|0)+16>>2]=B}B=c[(c[j>>2]|0)+8>
x3e;2]|0;c[y>>2]=B+(Mb((c[p>>2]|0)-(b[c[j>>2]>>1]|0)|0,c[(c[j>>2]|0)+16>
x3e;2]|0)|0)}while(0);d=c[y>>2]|0;a=c[v>>2]|0;if(!(c[g>>2]|0))c[a+16>>2]=d;else c[a+20
x3e;>2]=d;B=c[v>>2]|0;b[B>>1]=e[B>>1]|c[x>>2]}while(0);c[v>>2]=(c[v>
x3e;2]|0)+40}i=z;return}function fm(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,s=0;r=i;i=i+48|0;s=
r+44|0;d=r+40|0;o=r+36|0;n=r+32|0;f=r+28|0;g=r+24|0;p=r+20|0;m=r+16|0;h=r+12|0;j=r+8|0;k=r+4|0;l=r;c[s>>2]=a;c[d>
x3e;2]=b;c[o>>2]=c[(c[s>>2]|0)+32>>2];c[n>>2]=(c[o>>2]|0)+((c[(c[s>>
2]|0)+28>>2]|0)*40|0);c[f>>2]=c[(c[s>>2]|0)+44>>2];c[g>>2]=(c[f>>2]|
0)+(c[(c[s>>2]|0)+40>>2]<<2);a:do if(!(c[d>>2]|0)){c[p>>2]=64;c[m>>2
]=c[o>>2];while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a;
c[(c[m>>2]|0)+24>>2]=c[(c[m>>2]|0)+16>>2];c[(c[m>>2]|0)+28>>2]=c[(c[
m>>2]|0)+4>>2];c[m>>2]=(c[m>>2]|0)+40}}else{c[p>>2]=128;c[m>>2]=c[o
x3e;>2];while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a;c[(c[m
x3e;>2]|0)+24>>2]=c[(c[m>>2]|0)+20>>2];c[(c[m>>2]|0)+28>>2]=c[(c[m>
x3e;2]|0)+8>>2];c[m>>2]=(c[m>>2]|0)+40}}while(0);c[m>>2]=c[o>>2];while(1){if((
c[f>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[m>>2]=c[c[f>>
2]>>2];c[h>>2]=c[(c[m>>2]|0)+36>>2];c[j>>2]=c[m>>2];while(1){if((c[m
>>2]|0)>>>0>(c[h>>2]|0)>>>0)break;b=c[m>>2]|0;if((e[c[m>
x3e;2]>>1]|0)&c[p>>2]|0){q=14;break}c[m>>2]=b+40}do if((q|0)==14){q=0;c[k>>2]=b;c[l
>>2]=c[m>>2];b:while(1){if((c[m>>2]|0)>>>0<(c[h>>2]|0)>>
x3e;0)b=((e[(c[m>>2]|0)+40>>1]|0)&c[p>>2]|0)!=0;else b=0;a=c[m>>2]|0;if(b){c[m>
;>2]=a+40;continue}c[l>>2]=a;c[m>>2]=(c[m>>2]|0)+40;while(1){if((c[m>>2]|0)>
x3e;>0>(c[h>>2]|0)>>>0)break b;if((e[c[m>>2]>>1]|0)&c[p>>2
]|0)break;c[m>>2]=(c[m>>2]|0)+40}gm((c[l>>2]|0)+40|0,(c[m>>2]|0)+-40|0,c[l>>2]|
0,c[m>>2]|0)}if((c[l>>2]|0)==(c[k>>2]|0)){hm(c[j>>2]|0,c[h>>2]|0,c[k>>
;2]|0);break}if((c[l>>2]|0)>>>0<(c[h>>2]|0)>>>0)gm((c[l>>2]|0)+
40|0,c[h>>2]|0,c[l>>2]|0,c[k>>2]|0);if((c[k>>2]|0)>>>0>(c[o>>
;2]|0)>>>0)gm(c[j>>2]|0,(c[k>>2]|0)+-40|0,c[l>>2]|0,c[k>>2]|0)}while(0);c
[f>>2]=(c[f>>2]|0)+4}s=(c[d>>2]|0)==0;c[m>>2]=c[o>>2];if(s){while(1){if((c[m
x3e;>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[(c[m>>2]|0)+16>>2]=
c[(c[m>>2]|0)+24>>2];c[m>>2]=(c[m>>2]|0)+40}i=r;return}else{while(1){if((c[m>>
2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[(c[m>>2]|0)+20>>2]=c[(c[m>
;>2]|0)+24>>2];c[m>>2]=(c[m>>2]|0)+40}i=r;return}}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;q=i;i=i+48|0;f=q+36|0;g=q+32|0;h=q+28|0;j=q+24|0;m=q+20|0;n=q+16|0;o=q+12|0;p=
q+8|0;k=q+4|0;l=q;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[o>>2]=c[(c[h>
x3e;2]|0)+28>>2];c[p>>2]=c[(c[j>>2]|0)+28>>2];c[k>>2]=(c[(c[h>>2]|0)+
24>>2]|0)-(c[o>>2]|0);c[l>>2]=(c[(c[j>>2]|0)+24>>2]|0)-(c[p>>2]|0);if
((c[f>>2]|0)>>>0>(c[g>>2]|0)>>>0){i=q;return}if((c[o>>2]|0)==(c
[p>>2]|0)){c[m>>2]=c[f>>2];while(1){if((c[m>>2]|0)>>>0>(c[g>>
;2]|0)>>>0)break;c[n>>2]=c[(c[m>>2]|0)+28>>2];if((c[n>>2]|0)<=(c[o
x3e;>2]|0))c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);else c[n>>2]=(c[n>>2]|0)+(c[l
x3e;>2]|0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>2]|0)+40}i=q;return
}e=(c[o>>2]|0)<(c[p>>2]|0);c[m>>2]=c[f>>2];if(e){while(1){if((c[m>>2]|0)
x3e;>>0>(c[g>>2]|0)>>>0)break;c[n>>2]=c[(c[m>>2]|0)+28>>2];
do if((c[n>>2]|0)>(c[o>>2]|0))if((c[n>>2]|0)>=(c[p>>2]|0)){c[n>>2]=(
c[n>>2]|0)+(c[l>>2]|0);break}else{e=c[(c[h>>2]|0)+24>>2]|0;c[n>>2]=e+(xb((c[n
x3e;>2]|0)-(c[o>>2]|0)|0,(c[(c[j>>2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+24>>2]|0
)|0,(c[p>>2]|0)-(c[o>>2]|0)|0)|0);break}else c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);while
(0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>2]|0)+40}i=q;return}else{while(
1){if((c[m>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[n>>2]=c[(c[m>
;>2]|0)+28>>2];do if((c[n>>2]|0)>(c[p>>2]|0))if((c[n>>2]|0)>=(c[o>
x3e;2]|0)){c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);break}else{e=c[(c[h>>2]|0)+24>>2]|0
;c[n>>2]=e+(xb((c[n>>2]|0)-(c[o>>2]|0)|0,(c[(c[j>>2]|0)+24>>2]|0)-(c[(c[h>
;>2]|0)+24>>2]|0)|0,(c[p>>2]|0)-(c[o>>2]|0)|0)|0);break}else c[n>>2]=(c[n>>
;2]|0)+(c[l>>2]|0);while(0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>
;2]|0)+40}i=q;return}}function hm(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;e=k+16|0;f=k+12|0;g=k+8|0;j=
k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=(c[(c[g>>2]|0)+24>>2
]|0)-(c[(c[g>>2]|0)+28>>2]|0);if(!(c[h>>2]|0)){i=k;return}c[j>>2]=c[e>>2];while
(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[(c[j>>2]|0)+24
x3e;>2]=(c[(c[j>>2]|0)+28>>2]|0)+(c[h>>2]|0);c[j>>2]=(c[j>>2]|0)+40}c[j
x3e;>2]=(c[g>>2]|0)+40;while(1){if((c[j>>2]|0)>>>0>(c[f>>2]|0)>>
;>0)break;c[(c[j>>2]|0)+24>>2]=(c[(c[j>>2]|0)+28>>2]|0)+(c[h>>2]|0);c[j
x3e;>2]=(c[j>>2]|0)+40}i=k;return}function im(b,d){b=b|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;m=k+20
|0;l=k+16|0;g=k+12|0;f=k+8|0;j=k+4|0;h=k;c[m>>2]=b;c[l>>2]=d;c[g>>2]=c[(c[m>>2]|0)+32>
;>2];c[f>>2]=(c[g>>2]|0)+((c[(c[m>>2]|0)+28>>2]|0)*40|0);c[j>>2]=c[(c[l
x3e;>2]|0)+4>>2];c[h>>2]=c[(c[l>>2]|0)+8>>2];while(1){if((c[g>>2]|0)>
;>>0>=(c[f>>2]|0)>>>0)break;c[c[j>>2]>>2]=c[(c[g>>2]|0)+16
>>2];c[(c[j>>2]|0)+4>>2]=c[(c[g>>2]|0)+20>>2];do if(!((e[c[g>>2]>
;>1]|0)&1|0)){b=c[h>>2]|0;if((e[c[g>>2]>>1]|0)&2|0){a[b>>0]=2;break}else{
a[b>>0]=1;break}}else a[c[h>>2]>>0]=0;while(0);c[g>>2]=(c[g>>2]|0)+40;c[j>
;>2]=(c[j>>2]|0)+8;c[h>>2]=(c[h>>2]|0)+1}i=k;return}function jm(a,b){a=a|0;b=b|0;var d=0,f=0,
g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[f>>2]|0)+92>
;>2];c[(c[d>>2]|0)+36>>2]=e[(c[f>>2]|0)+68>>1];if(Id(c[f>>2]|0,1970170211
)|0){c[(c[f>>2]|0)+92>>2]=0;a=c[f>>2]|0;g=c[g>>2]|0;Jd(a,g)|0;i=h;return 0}else{Gl(c[d
x3e;>2]|0,c[f>>2]|0,3e4);Rl(c[d>>2]|0,c[f>>2]|0);a=c[f>>2]|0;g=c[g>>2]|0;
Jd(a,g)|0;i=h;return 0}return 0}function km(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)+4|0;a=c[e>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>
;>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2];c[b+16>>2]=c[a+16>>
;2];c[b+20>>2]=c[a+20>>2];c[b+24>>2]=c[a+24>>2];lm(c[f>>2]|0,c[e>>2]|
0,0);lm(c[f>>2]|0,c[e>>2]|0,1);i=d;return}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;g=i;i
=i+16|0;j=g+12|0;e=g+8|0;h=g+4|0;f=g;c[j>>2]=a;c[e>>2]=b;c[h>>2]=d;c[f>>2]=(c[j>>
;2]|0)+40+((c[h>>2]|0)*396|0);d=c[e>>2]|0;if(!(c[h>>2]|0)){c[c[f>>2]>>2]=c[d+4
>>2];c[(c[f>>2]|0)+4>>2]=c[(c[e>>2]|0)+12>>2];i=g;return}else{c[c[f>>
;2]>>2]=c[d+8>>2];c[(c[f>>2]|0)+4>>2]=c[(c[e>>2]|0)+16>>2];i=g;return
}}function mm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;j=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=
a;c[j>>2]=b;Dl(c[d>>2]|0,c[j>>2]|0);c[(c[d>>2]|0)+4>>2]=c[(c[j>>2]|0
)+40>>2];c[(c[d>>2]|0)+8>>2]=c[(c[j>>2]|0)+40+4>>2];c[(c[d>>2]|0)+12
>>2]=c[(c[j>>2]|0)+40+396>>2];c[(c[d>>2]|0)+16>>2]=c[(c[j>>2]|0)+40+
396+4>>2];c[e>>2]=c[(c[j>>2]|0)+4+20>>2];c[g>>2]=c[(c[d>>2]|0)+104
x3e;>2];c[f>>2]=0;if((c[e>>2]|0)==2|(c[e>>2]|0)==3)c[f>>2]=c[f>>2]|1;if((
c[e>>2]|0)==2|(c[e>>2]|0)==4)c[f>>2]=c[f>>2]|2;if((c[e>>2]|0)!=1)c[f>>
;2]=c[f>>2]|4;if((c[e>>2]|0)!=2){j=c[g>>2]|0;j=j|4;c[g>>2]=j;j=c[g>>2]|0;g=c[d
>>2]|0;g=g+104|0;c[g>>2]=j;g=c[f>>2]|0;j=c[d>>2]|0;j=j+108|0;c[j>>2]=g;i=h;return
0}c[f>>2]=c[f>>2]|8;j=c[g>>2]|0;j=j|4;c[g>>2]=j;j=c[g>>2]|0;g=c[d>>
2]|0;g=g+104|0;c[g>>2]=j;g=c[f>>2]|0;j=c[d>>2]|0;j=j+108|0;c[j>>2]=g;i=h;return 0}function
nm(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+16|0;f=j+12|0;k=j+8|0;h=j+4|0;g=j;c[e>>2]=a;
c[f>>2]=b;c[k>>2]=d;c[k>>2]=c[k>>2];c[h>>2]=Il(c[e>>2]|0,c[f>
x3e;2]|0)|0;if(c[h>>2]|0){k=c[h>>2]|0;i=j;return k|0}if((c[(c[e>>2]|0)+104>>2]&1|0)==
0?(c[h>>2]=om(c[e>>2]|0,0)|0,c[h>>2]|0):0){k=c[h>>2]|0;i=j;return k|0}if((c[(c[e>
x3e;2]|0)+104>>2]&2|0)==0?(c[h>>2]=om(c[e>>2]|0,1)|0,c[h>>2]|0):0){k=c[h>>
;2]|0;i=j;return k|0}c[g>>2]=0;while(1){if((c[g>>2]|0)>=2)break;if((c[g>>2]|0)==0?!(c[(c[e>
;>2]|0)+104>>2]&1|0):0)a=12;else a=10;if(((a|0)==10?(a=0,(c[g>>2]|0)==1):0)?(c[(c[e>>2]|
0)+104>>2]&2|0)==0:0)a=12;if((a|0)==12){sm(c[e>>2]|0,c[g>>2]|0);ym(c[e>>2]|0,c[g>
;>2]|0);em(c[e>>2]|0,c[g>>2]|0);fm(c[e>>2]|0,c[g>>2]|0)}c[g>>2]=(c[g>
;>2]|0)+1}im(c[e>>2]|0,c[f>>2]|0);k=c[h>>2]|0;i=j;return k|0}function om(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=pm(c[d>>2]|
0,c[e>>2]|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}qm(c[d>>2]|0,c[e>>2]|0
);c[f>>2]=rm(c[d>>2]|0,c[e>>2]|0)|0;a=c[f>>2]|0;i=g;return a|0}function pm(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,q=0,r=0,s=0,t=0;q=i;i=i+48|0;g=q+44|0;s=q+40|0;r=q+36|0;t=q+32|0;p=q+28|0;o=q+24|0;h
=q+20|0;n=q+16|0;m=q+12|0;l=q+8|0;j=q+4|0;k=q;c[s>>2]=b;c[r>>2]=f;c[t>>2]=(c[s>>2]|0)+48
+((c[r>>2]|0)*28|0);c[p>>2]=c[(c[t>>2]|0)+8>>2];c[o>>2]=(c[p>>2]|0)+((
c[c[t>>2]>>2]|0)*52|0);c[h>>2]=Kl(c[s>>2]|0,c[r>>2]|0)|0;if(c[h>>2]|
0){c[g>>2]=c[h>>2];t=c[g>>2]|0;i=q;return t|0}c[n>>2]=c[p>>2];while(1){if((c[n
>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[m>>2]=c[(c[n>>2]|
0)+40>>2];c[l>>2]=c[(c[n>>2]|0)+44>>2];c[j>>2]=(e[c[m>>2]>>
;1]|0)&3;t=c[n>>2]|0;a[t>>0]=(d[t>>0]|0)&-2;while(1){if((c[m>>2]|0)==(c[l>
;>2]|0))break;c[m>>2]=c[(c[m>>2]|0)+32>>2];c[k>>2]=(e[c[m>>2]>>
1]|0)&3;if(!((c[j>>2]|0)!=0|(c[k>>2]|0)!=0))break;if((c[m>>2]|0)==(c[l>>2]|0)){t=c[
n>>2]|0;a[t>>0]=d[t>>0]|0|1}c[j>>2]=c[k>>2]}c[n>>2]=(c[n>>
2]|0)+52}c[g>>2]=0;t=c[g>>2]|0;i=q;return t|0}function qm(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;v=i;i=i+80|0;x=v+68|0;w=v+64|0;y=v+60|0;u=v+56|0;t=v+52|0;n=v+48|0;r=v+44|0;s=v+40
|0;j=v+36|0;g=v+32|0;f=v+28|0;p=v+24|0;o=v+20|0;h=v+16|0;l=v+12|0;m=v+8|0;q=v+4|0;k=v;c[x>>2]=d;c[w>>2]=e;c[
y>>2]=(c[x>>2]|0)+48+((c[w>>2]|0)*28|0);c[u>>2]=c[(c[y>>2]|0)+8>>2];
c[t>>2]=(c[u>>2]|0)+((c[c[y>>2]>>2]|0)*52|0);c[n>>2]=c[(c[y>>2]|0)+24
>>2];c[j>>2]=(c[(c[(c[x>>2]|0)+112>>2]|0)+36>>2]<<3|0)/2048|0;e=c[x
x3e;>2]|0;if(!(c[w>>2]|0))e=c[e+4>>2]|0;else e=c[e+12>>2]|0;c[g>>2]=e;c[g>>
;2]=Vb(192,c[g>>2]|0)|0;c[r>>2]=c[u>>2];while(1){if((c[r>>2]|0)>>>0>=(
c[t>>2]|0)>>>0)break;a:do if((c[(c[r>>2]|0)+40>>2]|0)!=(c[(c[r>>2]|0)+44
x3e;>2]|0)?(a[(c[r>>2]|0)+1>>0]|0)==(c[n>>2]|0):0){c[s>>2]=c[u>>2];while(
1){if((c[s>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a;do if(((c[s>>2]|
0)!=(c[r>>2]|0)?((a[(c[r>>2]|0)+1>>0]|0)+(a[(c[s>>2]|0)+1>>0]|0)|0)==0:0)?(c[f
>>2]=(b[(c[s>>2]|0)+2>>1]|0)-(b[(c[r>>2]|0)+2>>1]|0),(c[f>>2]|0)>
;=0):0){c[p>>2]=b[(c[r>>2]|0)+4>>1];c[o>>2]=b[(c[r>>2]|0)+6>>1];if((
c[p>>2]|0)<(b[(c[s>>2]|0)+4>>1]|0))c[p>>2]=b[(c[s>>2]|0)+4>>1];
if((c[o>>2]|0)>(b[(c[s>>2]|0)+6>>1]|0))c[o>>2]=b[(c[s>>2]|0)+6>>
;1];c[h>>2]=(c[o>>2]|0)-(c[p>>2]|0);if((c[h>>2]|0)>=(c[j>>2]|0)){do if((c
[f>>2]<<3|0)<((c[(c[r>>2]|0)+32>>2]|0)*9|0)){if((c[f>>2]<<3|0)
x3e;=((c[(c[r>>2]|0)+32>>2]|0)*7|0)?(c[(c[r>>2]|0)+36>>2]|0)>=(c[h>>2]|0):
0)break;c[(c[r>>2]|0)+32>>2]=c[f>>2];c[(c[r>>2]|0)+36>>2]=c[h>>2];c[(
c[r>>2]|0)+20>>2]=c[s>>2]}while(0);if((c[f>>2]<<3|0)<((c[(c[s>>
2]|0)+32>>2]|0)*9|0)){if((c[f>>2]<<3|0)>=((c[(c[s>>2]|0)+32>>2]|0)*7|0)?(
c[(c[s>>2]|0)+36>>2]|0)>=(c[h>>2]|0):0)break;c[(c[s>>2]|0)+32>>2]=c[f>
;>2];c[(c[s>>2]|0)+36>>2]=c[h>>2];c[(c[s>>2]|0)+20>>2]=c[r>>2]}}}
while(0);c[s>>2]=(c[s>>2]|0)+52}}while(0);c[r>>2]=(c[r>>2]|0)+52}c[r>>2]=c[u
x3e;>2];while(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[l>
x3e;2]=c[(c[r>>2]|0)+20>>2];b:do if(((c[l>>2]|0?(c[(c[l>>2]|0)+20>>2]|0)==(c[r
>>2]|0):0)?(b[(c[l>>2]|0)+2>>1]|0)>(b[(c[r>>2]|0)+2>>1]|0):0)?(c[(c[r>
;>2]|0)+32>>2]|0)<(c[g>>2]|0):0){c[s>>2]=c[u>>2];c:while(1){if((c[s>>
;2]|0)>>>0>=(c[t>>2]|0)>>>0)break b;d:do if(((((b[(c[s>>2]|0)+2>>
;1]|0)<=(b[(c[r>>2]|0)+2>>1]|0)?(c[r>>2]|0)!=(c[s>>2]|0):0)?(c[m>>2]=c[(c
[s>>2]|0)+20>>2],c[m>>2]|0):0)?(c[(c[m>>2]|0)+20>>2]|0)==(c[s>>2]|0):
0)?(b[(c[m>>2]|0)+2>>1]|0)>=(b[(c[l>>2]|0)+2>>1]|0):0){if((b[(c[r>>2]|0)+
2>>1]|0)==(b[(c[s>>2]|0)+2>>1]|0)?(b[(c[l>>2]|0)+2>>1]|0)==(b[(c[m>>
2]|0)+2>>1]|0):0)break;if((c[(c[s>>2]|0)+32>>2]|0)>(c[(c[r>>2]|0)+32>>2]|
0)?(c[(c[r>>2]|0)+32>>2]<<2|0)>(c[(c[s>>2]|0)+32>>2]|0):0){if((c[(c[r>
;>2]|0)+36>>2]|0)<((c[(c[s>>2]|0)+36>>2]|0)*3|0))break c;c[q>>2]=c[u>>
;2];while(1){if((c[q>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break d;c[k>>2
]=c[(c[q>>2]|0)+20>>2];do if((c[k>>2]|0)==(c[s>>2]|0)){c[(c[q>>2]|0)+20>
x3e;2]=0;c[(c[q>>2]|0)+24>>2]=c[l>>2]}else{if((c[k>>2]|0)!=(c[m>>2]|0))break;c
[(c[q>>2]|0)+20>>2]=0;c[(c[q>>2]|0)+24>>2]=c[r>>2]}while(0);c[q>>2]=(
c[q>>2]|0)+52}}}while(0);c[s>>2]=(c[s>>2]|0)+52}c[(c[l>>2]|0)+20>>2]=0;c[(c[r
x3e;>2]|0)+20>>2]=0}while(0);c[r>>2]=(c[r>>2]|0)+52}c[r>>2]=c[u>>2];while
(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[s>>2]=c[(c[r>
;>2]|0)+20>>2];do if(c[s>>2]|0?(y=(c[s>>2]|0)+28|0,c[y>>2]=(c[y>>2]|0)+1,(
c[(c[s>>2]|0)+20>>2]|0)!=(c[r>>2]|0)):0){c[(c[r>>2]|0)+20>>2]=0;if((c[(c[s>
;>2]|0)+32>>2]|0)>=(c[g>>2]|0)?(c[(c[r>>2]|0)+32>>2]|0)>=(c[(c[s>>
;2]|0)+32>>2]<<2|0):0){y=(c[s>>2]|0)+28|0;c[y>>2]=(c[y>>2]|0)+-1;break}c[(c[r
x3e;>2]|0)+24>>2]=c[(c[s>>2]|0)+20>>2]}while(0);c[r>>2]=(c[r>>2]|0)+52}i=
v;return}
function Is(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=a+4|0;o=c[n>>2]|0;d=o&-8;k=a+d
|0;i=c[18404]|0;e=o&3;if(!((e|0)!=1&a>>>0>=i>>>0&a>>>0<k
x3e;>>0))ya();f=c[k+4>>2]|0;if(!(f&1))ya();if(!e){if(b>>>0<256){a=0;return a|0}if(d
>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[18520]<<1>>>0:0
)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a
|0;m=a+b|0;c[n>>2]=o&1|b|2;c[m+4>>2]=d|3;b=m+d+4|0;c[b>>2]=c[b>>2]|1;Js(m,d);return
a|0}if((k|0)==(c[18406]|0)){d=(c[18403]|0)+d|0;if(d>>>0<=b>>>0){a=0;return a|0}m=d-b|0;l=a+b
|0;c[n>>2]=o&1|b|2;c[l+4>>2]=m|1;c[18406]=l;c[18403]=m;return a|0}if((k|0)==(c[18405]|0)){e=(c[18402]|0
)+d|0;if(e>>>0<b>>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){e=a+b|0;m=e+d|0
;c[n>>2]=o&1|b|2;c[e+4>>2]=d|1;c[m>>2]=d;b=m+4|0;c[b>>2]=c[b>>2]&-2}
else{c[n>>2]=o&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[18402]=d;c[18405]=e;return a|0}if(
f&2|0){a=0;return a|0}l=(f&-8)+d|0;if(l>>>0<b>>>0){a=0;return a|0}m=l-b|0;g=f>
x3e;>3;do if(f>>>0>=256){h=c[k+24>>2]|0;f=c[k+12>>2]|0;do if((f|0)==(k|0)){e=k+16|0
;f=e+4|0;d=c[f>>2]|0;if(!d){d=c[e>>2]|0;if(!d){j=0;break}}else e=f;while(1){f=d+20|0;g=c[f>>2]|0;if
(g|0){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0<i>>>
0)ya();else{c[e>>2]=0;j=d;break}}else{g=c[k+8>>2]|0;if(g>>>0<i>>>0)ya();d
=g+12|0;if((c[d>>2]|0)!=(k|0))ya();e=f+8|0;if((c[e>>2]|0)==(k|0)){c[d>>2]=f;c[e>>2]=g;j=
f;break}else ya()}while(0);if(h|0){d=c[k+28>>2]|0;e=73904+(d<<2)|0;if((k|0)==(c[e>>2]|0)){c[e>
;>2]=j;if(!j){c[18401]=c[18401]&~(1<<d);break}}else{if(h>>>0<(c[18404]|0)>>>
;0)ya();d=h+16|0;if((c[d>>2]|0)==(k|0))c[d>>2]=j;else c[h+20>>2]=j;if(!j)break}f=c[18404]|0;if(j
x3e;>>0<f>>>0)ya();c[j+24>>2]=h;d=k+16|0;e=c[d>>2]|0;do if(e|0)if(e>>
;>0<f>>>0)ya();else{c[j+16>>2]=e;c[e+24>>2]=j;break}while(0);d=c[d+4>>2]|
0;if(d|0)if(d>>>0<(c[18404]|0)>>>0)ya();else{c[j+20>>2]=d;c[d+24>>2]=j;break
}}}else{e=c[k+8>>2]|0;f=c[k+12>>2]|0;d=73640+(g<<1<<2)|0;if((e|0)!=(d|0)){if(e>>
;>0<i>>>0)ya();if((c[e+12>>2]|0)!=(k|0))ya()}if((f|0)==(e|0)){c[18400]=c[18400]&~(1<
;<g);break}if((f|0)!=(d|0)){if(f>>>0<i>>>0)ya();d=f+8|0;if((c[d>>2]|0)==(k|0))
h=d;else ya()}else h=f+8|0;c[e+12>>2]=f;c[h>>2]=e}while(0);if(m>>>0<16){c[n>>2
]=l|o&1|2;b=a+l+4|0;c[b>>2]=c[b>>2]|1;return a|0}else{l=a+b|0;c[n>>2]=o&1|b|2;c[l+4>
;>2]=m|3;b=l+m+4|0;c[b>>2]=c[b>>2]|1;Js(l,m);return a|0}return 0}function Js(a,b){a=a|0;b=b|0;var d=0,e
=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;
if(!(d&3))return;l=a+(0-f)|0;k=f+b|0;i=c[18404]|0;if(l>>>0<i>>>0)ya();if((l|0)==(c[18405
]|0)){a=o+4|0;d=c[a>>2]|0;if((d&3|0)!=3){r=l;g=k;break}c[18402]=k;c[a>>2]=d&-2;c[l+4>>2]=
k|1;c[l+k>>2]=k;return}e=f>>>3;if(f>>>0<256){a=c[l+8>>2]|0;b=c[l+12>
x3e;2]|0;d=73640+(e<<1<<2)|0;if((a|0)!=(d|0)){if(a>>>0<i>>>0)ya();if((c[a
+12>>2]|0)!=(l|0))ya()}if((b|0)==(a|0)){c[18400]=c[18400]&~(1<<e);r=l;g=k;break}if((b|0)!=(d|0)){if(b
x3e;>>0<i>>>0)ya();d=b+8|0;if((c[d>>2]|0)==(l|0))h=d;else ya()}else h=b+8|0;c[a+12>
x3e;2]=b;c[h>>2]=a;r=l;g=k;break}f=c[l+24>>2]|0;b=c[l+12>>2]|0;do if((b|0)==(l|0)){a=l+16|0;b=a+4|
0;d=c[b>>2]|0;if(!d){d=c[a>>2]|0;if(!d){j=0;break}}else a=b;while(1){b=d+20|0;e=c[b>>2]|0;if(e|0){
d=e;a=b;continue}b=d+16|0;e=c[b>>2]|0;if(!e)break;else{d=e;a=b}}if(a>>>0<i>>>0)ya();
else{c[a>>2]=0;j=d;break}}else{e=c[l+8>>2]|0;if(e>>>0<i>>>0)ya();d=e+12|0
;if((c[d>>2]|0)!=(l|0))ya();a=b+8|0;if((c[a>>2]|0)==(l|0)){c[d>>2]=b;c[a>>2]=e;j=b;break
}else ya()}while(0);if(f){d=c[l+28>>2]|0;a=73904+(d<<2)|0;if((l|0)==(c[a>>2]|0)){c[a>>2]=
j;if(!j){c[18401]=c[18401]&~(1<<d);r=l;g=k;break}}else{if(f>>>0<(c[18404]|0)>>>
;0)ya();d=f+16|0;if((c[d>>2]|0)==(l|0))c[d>>2]=j;else c[f+20>>2]=j;if(!j){r=l;g=k;break}}b=c[18404
]|0;if(j>>>0<b>>>0)ya();c[j+24>>2]=f;d=l+16|0;a=c[d>>2]|0;do if(a|0)if(a
x3e;>>0<b>>>0)ya();else{c[j+16>>2]=a;c[a+24>>2]=j;break}while(0);d=c[d+4>
x3e;2]|0;if(d)if(d>>>0<(c[18404]|0)>>>0)ya();else{c[j+20>>2]=d;c[d+24>>2]=
j;r=l;g=k;break}else{r=l;g=k}}else{r=l;g=k}}else{r=a;g=b}while(0);h=c[18404]|0;if(o>>>0<h>>>0
)ya();d=o+4|0;a=c[d>>2]|0;if(!(a&2)){if((o|0)==(c[18406]|0)){q=(c[18403]|0)+g|0;c[18403]=q;c[18406]=r;c[r+4>
x3e;2]=q|1;if((r|0)!=(c[18405]|0))return;c[18405]=0;c[18402]=0;return}if((o|0)==(c[18405]|0)){q=(c[18402]|0)+g|0;c[18402]=q;c[18405
]=r;c[r+4>>2]=q|1;c[r+q>>2]=q;return}g=(a&-8)+g|0;e=a>>>3;do if(a>>>0>
;=256){f=c[o+24>>2]|0;b=c[o+12>>2]|0;do if((b|0)==(o|0)){a=o+16|0;b=a+4|0;d=c[b>>2]|0;if(!d){d=c[a
>>2]|0;if(!d){n=0;break}}else a=b;while(1){b=d+20|0;e=c[b>>2]|0;if(e|0){d=e;a=b;continue}b=d+16|0;e=c[b>
;>2]|0;if(!e)break;else{d=e;a=b}}if(a>>>0<h>>>0)ya();else{c[a>>2]=0;n=d;break}}
else{e=c[o+8>>2]|0;if(e>>>0<h>>>0)ya();d=e+12|0;if((c[d>>2]|0)!=(o|0))ya();
a=b+8|0;if((c[a>>2]|0)==(o|0)){c[d>>2]=b;c[a>>2]=e;n=b;break}else ya()}while(0);if(f|0){d=c[o+28
x3e;>2]|0;a=73904+(d<<2)|0;if((o|0)==(c[a>>2]|0)){c[a>>2]=n;if(!n){c[18401]=c[18401]&~(1
<<d);break}}else{if(f>>>0<(c[18404]|0)>>>0)ya();d=f+16|0;if((c[d>>2]|0)==(
o|0))c[d>>2]=n;else c[f+20>>2]=n;if(!n)break}b=c[18404]|0;if(n>>>0<b>>>0)
ya();c[n+24>>2]=f;d=o+16|0;a=c[d>>2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else
{c[n+16>>2]=a;c[a+24>>2]=n;break}while(0);d=c[d+4>>2]|0;if(d|0)if(d>>>0<(c[18404
]|0)>>>0)ya();else{c[n+20>>2]=d;c[d+24>>2]=n;break}}}else{a=c[o+8>>2]|0;b=c[o+12>
;>2]|0;d=73640+(e<<1<<2)|0;if((a|0)!=(d|0)){if(a>>>0<h>>>0)ya();if((
c[a+12>>2]|0)!=(o|0))ya()}if((b|0)==(a|0)){c[18400]=c[18400]&~(1<<e);break}if((b|0)!=(d|0)){if(b>
x3e;>0<h>>>0)ya();d=b+8|0;if((c[d>>2]|0)==(o|0))m=d;else ya()}else m=b+8|0;c[a+12>>
2]=b;c[m>>2]=a}while(0);c[r+4>>2]=g|1;c[r+g>>2]=g;if((r|0)==(c[18405]|0)){c[18402]=g;return}}else{
c[d>>2]=a&-2;c[r+4>>2]=g|1;c[r+g>>2]=g}d=g>>>3;if(g>>>0<256
){b=73640+(d<<1<<2)|0;a=c[18400]|0;d=1<<d;if(a&d){d=b+8|0;a=c[d>>2]|0;if(a>>
;>0<(c[18404]|0)>>>0)ya();else{p=d;q=a}}else{c[18400]=a|d;p=b+8|0;q=b}c[p>>2]=r;c[q+12>
x3e;2]=r;c[r+8>>2]=q;c[r+12>>2]=b;return}d=g>>>8;if(d)if(g>>>0>16777215)b
=31;else{p=(d+1048320|0)>>>16&8;q=d<<p;o=(q+520192|0)>>>16&4;q=q<<o;
b=(q+245760|0)>>>16&2;b=14-(o|p|b)+(q<<b>>>15)|0;b=g>>>(b+7|0)&
1|b<<1}else b=0;e=73904+(b<<2)|0;c[r+28>>2]=b;c[r+20>>2]=0;c[r+16>>2]=0;d=c[18401
]|0;a=1<<b;if(!(d&a)){c[18401]=d|a;c[e>>2]=r;c[r+24>>2]=e;c[r+12>>2]=r;c[r+8>
x3e;2]=r;return}f=g<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]
x26;-8|0)==(g|0)){b=d;e=127;break}a=d+16+(f>>>31<<2)|0;b=c[a>>2]|0;if(!b){e=124;break}else{f=
f<<1;d=b}}if((e|0)==124){if(a>>>0<(c[18404]|0)>>>0)ya();c[a>>2]=r;c[r+24
x3e;>2]=d;c[r+12>>2]=r;c[r+8>>2]=r;return}else if((e|0)==127){d=b+8|0;a=c[d>>2]|0;q=c[18404]|
0;if(!(a>>>0>=q>>>0&b>>>0>=q>>>0))ya();c[a+12>
x3e;2]=r;c[d>>2]=r;c[r+8>>2]=a;c[r+12>>2]=b;c[r+24>>2]=0;return}}function Ks(){}function
Ls(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (C=d,a-c
>>>0|0)|0}function Ms(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (C=b+d+(c>>>
;0<a>>>0|0)>>>0,c|0)|0}function Ns(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;h=b&3;i=d|d<<8|d<<16|d<<24;g=f&~3;if(h){h=b+4-h|0;while((b|0)
x3c;(h|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(g|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(f|0)){a[b>
x3e;0]=d;b=b+1|0}return b-e|0}function Os(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>>c;return a>>
x3e;c|(b&(1<<c)-1)<<32-c}C=0;return b>>>c-32|0}function Ps(a,b,c){a=a|0;b=b|0;c=c|0;if((
c|0)<32){C=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}C=a<
x3c;c-32;return 0}function Qs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;p=p+1|0;c[a>>2]=p;while((f|0)<(e|0)){if(!(
c[d+(f<<3)>>2]|0)){c[d+(f<<3)>>2]=p;c[d+((f<<3)+4)>>2]=b;c[d+((f<
;<3)+8)>>2]=0;C=e;return d|0}f=f+1|0}e=e*2|0;d=Hs(d|0,8*(e+1|0)|0)|0;d=Qs(a|0,b|0,d|0,e|0)|0;C=e;return d|0}function
Rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;while((f|0)<(d|0)){e=c[b+(f<<3)>>2]|0;if(!e)break;if((e|0)==(a
|0))return c[b+((f<<3)+4)>>2]|0;f=f+1|0}return 0}function Ss(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=
4096)return Ea(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if(!e)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 Ts(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 Ss(b,c,d)|0;return b|0}function Us(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>c;return a>
;>>c|(b&(1<<c)-1)<<32-c}C=(b|0)<0?-1:0;return b>>c-32|0}function Vs(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 Ws(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=_(e,f)|0;d=a>>
;>16;a=(c>>>16)+(_(e,d)|0)|0;e=b>>>16;b=_(e,f)|0;return (C=(a>>>16)+(_(e,d)|0)+(((
a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Xs(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)<
x3c;1;h=Ls(j^a|0,i^b|0,j|0,i|0)|0;g=C;a=f^j;b=e^i;return Ls((at(h,g,Ls(f^c|0,e^d|0,f|0,e|0)|0,C,0)|0)^a|0,C^b|0,a|0,b|0)|0}function
Ys(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+16|0;j=f|0;h=b>>31|((b|0)<0?-1:0)<
x3c;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;a=Ls(h^a|0,g^b|0,h|0,g|0)|0;b=C;at(a,b,Ls(l^d|0,k^e|0,l|0,k|0)|
0,C,j)|0;e=Ls(c[j>>2]^h|0,c[j+4>>2]^g|0,h|0,g|0)|0;d=C;i=f;return (C=d,e)|0}function Zs(a,b,c,d){a=a|0;b=b|0
;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Ws(e,f)|0;a=C;return (C=(_(b,f)|0)+(_(d,e)|0)+a|a&0,c|0|0)|0}function _s(a,b,c,d){a=a|0;
b=b|0;c=c|0;d=d|0;return at(a,b,c,d,0)|0}function $s(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+16|0;f=g|0;at(a,b,d,e,
f)|0;i=g;return (C=c[f+4>>2]|0,c[f>>2]|0)|0}function at(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0
,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(
h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (C=n,f
)|0}else{if(!g){n=0;f=0;return (C=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (C=n,f)|0}}g=(i|0)==0
;do if(h){if(!g){g=(aa(i|0)|0)-(aa(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>
;>>(m>>>0)&b|k<<i;b=k>>>(m>>>0)&b;g=0;i=l<<
i;break}if(!f){n=0;f=0;return (C=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (C=n,f)|0}g=h-1|0;if
(g&h|0){i=(aa(h|0)|0)+33-(aa(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>
31&k>>>(o>>>0)|(k<<m|l>>>(i>>>0))&b;b=b&k
x3e;>>(i>>>0);g=l<<p&j;i=(k<<p|l>>>(o>>>0))&
;j|l<<m&i-33>>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&
;0;p=a|0|0;return (C=o,p)|0}else{p=Vs(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>
;(p>>>0)|0;return (C=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c
[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (C=o,p)|0}if(!l){if(f|0){c[f
x3e;>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>
;0)>>>0;return (C=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&
;0}o=0;p=k>>>((Vs(i|0)|0)>>>0);return (C=o,p)|0}g=(aa(i|0)|0)-(aa(k|0)|0)|0;if(g>>>
0<=30){b=g+1|0;i=31-g|0;h=b;a=k<<i|l>>>(b>>>0);b=k>>>(b>>
x3e;0);g=0;i=l<<i;break}if(!f){o=0;p=0;return (C=o,p)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return
(C=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Ms(m|0,l|0,-1,-1)|0;d=C;j=i;i=0;do{e=j;j=g>>>31
|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Ls(k|0,d|0,
e|0,n|0)|0;p=C;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Ls(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>
x3e;31|((p|0)<0?-1:0)<<1)&l|0)|0;b=C;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4
x3e;>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|
0>>>31)&-2|i;return (C=o,p)|0}function bt(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return
Na[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ct(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Oa[a&63](b|0,c|0,d|0)|0}function
dt(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Pa[a&1](b|0,c|0,d|0,e|0,f|0)}function et(a,b,c,d,e,f,g,h,i,j){a=a|0;b=
b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;return Qa[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)|0}function ft(a,b,c
){a=a|0;b=b|0;c=c|0;Ra[a&7](b|0,c|0)}function gt(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 Sa[a&
3](b|0,c|0,d|0,e|0,f|0,g|0)|0}function ht(a,b){a=a|0;b=b|0;return Ta[a&63](b|0)|0}function it(a,b,c,d){a=a|0;b=b|0;c=c|0;d=
d|0;Ua[a&31](b|0,c|0,d|0)}function jt(a,b){a=a|0;b=b|0;Va[a&63](b|0)}function kt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=
e|0;return Wa[a&31](b|0,c|0,d|0,e|0)|0}function lt(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;Xa[a&7](b|
0,c|0,d|0,e|0,f|0,g|0)}function mt(a,b,c){a=a|0;b=b|0;c=c|0;return Ya[a&127](b|0,c|0)|0}function nt(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 Za[a&31](b|0,c|0,d|0,e|0,f|0)|0}function ot(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;_a[a
x26;15](b|0,c|0,d|0,e|0)}function pt(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;ba(0);return 0}function qt(a,b,c){
a=a|0;b=b|0;c=c|0;ba(1);return 0}function rt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(2)}function st(a,b,c,d,e,f,g,h,i){a=a|0
;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;ba(3);return 0}function tt(a,b){a=a|0;b=b|0;ba(4)}function ut(a,b,c,d,e,f){a=a|
0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ba(5);return 0}function vt(a){a=a|0;ba(6);return 0}function wt(a,b,c){a=a|0;b=b|0;c=c|0;ba(7)}function
xt(a){a=a|0;ba(8)}function yt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(9);return 0}function zt(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;
e=e|0;f=f|0;ba(10)}function At(a,b){a=a|0;b=b|0;ba(11);return 0}function Bt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(12);return
0}function Ct(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(13)}
...
function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret}
n/a
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()}}}
n/a
function Module_requestAnimationFrame(func){Browser.requestAnimationFrame(func)}
...
var Module;if(typeof Module==="undefined")Module={};if(!Module.expectedDataFileDownloads){Module.expectedDataFileDownloads
=0;Module.finishedDataFileDownloads=0}Module.expectedDataFileDownloads++;((function(){var loadPackage=(function(metadata){function
runWithFS(){var fileData0=[];fileData0.push.apply(fileData0,[79,84,84,79,0,13,0,128,0,3,0,80,67,70,70,32,137,224,82,238,0,0,7,132
,0,0,45,223,70,70,84,77,101,130,23,249,0,0,55,12,0,0,0,28,71,68,69,70,0,160,0,4,0,0,53,100,0,0,0,32,71,80,79,83,184,255,184,254,
0,0,54,220,0,0,0,48,71,83,85,66,234,147,151,221,0,0,53,132,0,0,1,88,79,83,47,50,131,156,137,79,0,0,1,64,0,0,0,96,99,109,97,112,146
,230,183,142,0,0,5,184,0,0,1,170,104,101,97,100,251,7,171,9,0,0,0,220,0,0,0,54,104,104,101,97,7,42,2,2,0,0,1,20,0,0,0,36,104,109
,116,120,33,252,29,155,0,0,55,40,0,0,0,234,109,97,120,112,0,115,80,0,0,0,1,56,0,0,0,6,110,97,109,101,152,108,186,46,0,0,1,160,0,
0,4,23,112,111,115,116,0,3,0,1,0,0,7,100,0,0,0,32,0,1,0,0,0,2,0,0,252,84,172,109,95,15,60,245,0,11,3,232,0,0,0,0,204,138,51,83,0
,0,0,0,204,138,51,83,0,87,255,44,2,124,4,82,0,0,0,8,0,2,0,0,0,0,0,0,0,1,0,0,4,82,255,44,0,90,2,211,0,0,0,0,2,124,0,1,0,0,0,0,0,0
,0,0,0,0,0,0,0,0,0,2,0,0,80,0,0,115,0,0,0,3,2,211,1,144,0,5,0,0,2,138,2,188,0,0,0,140,2,138,2,188,0,0,1,224,0,49,1,2,0,0,2,0,5,9
,0,0,0,0,0,0,0,0,0,35,0,0,42,0,0,0,0,0,0,0,0,0,80,102,69,100,0,64,0,32,37,160,3,32,255,56,0,90,4,82,0,212,0,0,0,1,0,0,0,0,2,56,3
,12,0,32,0,32,0,1,0,0,0,24,1,38,0,1,0,0,0,0,0,0,0,86,0,174,0,1,0,0,0,0,0,1,0,4,1,15,0,1,0,0,0,0,0,2,0,7,1,36,0,1,0,0,0,0,0,3,0,33
,1,112,0,1,0,0,0,0,0,4,0,5,1,158,0,1,0,0,0,0,0,5,0,10,1,186,0,1,0,0,0,0,0,6,0,4,1,207,0,1,0,0,0,0,1,0,0,16,2,224,0,1,0,0,0,0,1,1
,0,23,2,166,0,1,0,0,0,0,1,2,0,20,2,97,0,1,0,0,0,0,1,3,0,15,2,39,0,1,0,0,0,0,1,4,0,16,1,246,0,3,0,1,4,9,0,0,0,172,0,0,0,3,0,1,4,9
,0,1,0,8,1,5,0,3,0,1,4,9,0,2,0,14,1,20,0,3,0,1,4,9,0,3,0,66,1,44,0,3,0,1,4,9,0,4,0,10,1,146,0,3,0,1,4,9,0,5,0,20,1,164,0,3,0,1,4
,9,0,6,0,8,1,197,0,3,0,1,4,9,1,0,0,32,2,190,0,3,0,1,4,9,1,1,0,46,2,118,0,3,0,1,4,9,1,2,0,40,2,55,0,3,0,1,4,9,1,3,0,30,2,7,0,3,0,
1,4,9,1,4,0,32,1,212,0,77,0,97,0,116,0,116,0,104,0,101,0,119,0,32,0,83,0,107,0,97,0,108,0,97,0,32,0,40,0,50,0,48,0,49,0,49,0,45,
0,49,0,50,0,41,0,59,0,32,0,98,0,97,0,115,0,101,0,100,0,32,0,111,0,110,0,32,0,99,0,111,0,100,0,101,0,32,0,98,0,121,0,32,0,82,0,105
,0,99,0,104,0,97,0,114,0,100,0,32,0,66,0,46,0,32,0,87,0,97,0,108,0,101,0,115,0,32,0,40,0,49,0,57,0,56,0,56,0,45,0,56,0,57,0,41,0
,32,0,97,0,110,0,100,0,32,0,84,0,111,0,114,0,32,0,76,0,105,0,108,0,108,0,113,0,118,0,105,0,115,0,116,0,0,77,97,116,116,104,101,119
,32,83,107,97,108,97,32,40,50,48,49,49,45,49,50,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,82,105,99,104
,97,114,100,32,66,46,32,87,97,108,101,115,32,40,49,57,56,56,45,56,57,41,32,97,110,100,32,84,111,114,32,76,105,108,108,113,118,105
,115,116,0,0,79,0,67,0,82,0,65,0,0,79,67,82,65,0,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,0,82,101,103,117,108,97,114,0,0,70,0,
111,0,110,0,116,0,70,0,111,0,114,0,103,0,101,0,32,0,50,0,46,0,48,0,32,0,58,0,32,0,79,0,67,0,82,0,32,0,65,0,32,0,58,0,32,0,50,0,55
,0,45,0,57,0,45,0,50,0,48,0,49,0,50,0,0,70,111,110,116,70,111,114,103,101,32,50,46,48,32,58,32,79,67,82,32,65,32,58,32,50,55,45,
57,45,50,48,49,50,0,0,79,0,67,0,82,0,32,0,65,0,0,79,67,82,32,65,0,0,86,0,101,0,114,0,115,0,105,0,111,0,110,0,32,0,50,0,32,0,0,86
,101,114,115,105,111,110,32,50,32,0,0,79,0,67,0,82,0,65,0,0,79,67,82,65,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,
32,0,104,0,121,0,112,0,104,0,101,0,110,0,0,65,108,116,101,114,110,97,116,101,32,104,121,112,104,101,110,0,0,65,0,108,0,116,0,101
,0,114,0,110,0,97,0,116,0,101,0,32,0,99,0,111,0,109,0,109,0,97,0,0,65,108,116,101,114,110,97,116,101,32,99,111,109,109,97,0,0,65
,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,97,0,112,0,111,0,115,0,116,0,114,0,111,0,112,0,104,0,101,0,0,65,108,116,101
,114,110,97,116,101,32,97,112,111,115,116,114,111,112,104,101,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,113,0
,117,0,101,0,115,0,116,0,105,0,111,0,110,0,32,0,109,0,97,0,114,0,107,0,0,65,108,116,101,114,110,97,116,101,32,113,117,101,115,116
,105,111,110,32,109,97,114,107,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,112,0,101,0,114,0,105,0,111,0,100,0,
0,65,108,116,101,114,110,97,116,101,32,112,101,114,105,111,100,0,0,0,0,0,3,0,0,0,3,0,0,0,28,0,1,0,0,0,0,0,164,0,3,0,1,0,0,0,28,0
,4,0,136,0,0,0,30,0,16,0,3,0,14,0,93,0,125,0,163,0,165,0,198,0,209,0,214,0,216,0,220,2,198,2,220,36,66,37,2,37,160,255,255,0,0,0
,32,0,95,0,163,0,165,0,196,0,209,0,214,0,216,0,220,2,198,2,220,36,64,37,2,37,160,255,255,255,225,255,225,255,192,255,191,255,167
,255,157,255,153,255,152,255,149,253,121,253,131,220,40,219,112,218,192,0,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,1,6,0,0,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,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,0,64,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,91,92,93,94,0,0,107,108,0,0,110,111,113,0
,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,109,112,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,95,0,0,0,0,0,0,0,0,0,0,0,
3,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,0,0,0,0,0,1,0,4,4,0,1,1,1,5,79,67,82,65,0,1,2,0,1,0,52,248,37,0,248,38,1,248
,39,2,248,40,3,248,24,4,140,12,1,139,12,3,139,12,4,226,251,104,249,16,250,230,5,28,1,37,15,28,0,0,16,28,2,10,17,28,0,52,28,44,255
,18,0,14,2,0,1,0,8,0,18,0,30,0,45,0,54,0,64,0,71,0,78,0,85,0,92,0,93,0,179,0,184,0,188,117,110,105,50,53,65,48,112,101,114,105,111
,100,46,97,108,116,113,117,101,115,116,105,111,110,46,97,108,116,113,117,111,116,101,115,105,110,103,108,101,46,97,108,116,99,111
,109,109,97,46,97,108,116,104,121,112,104,101,110,46,97,108,116,117,110,105,50,52,52,48,117,110,105,50,52,52,49,117,110,105,50,52
,52,50,117,110,105,50,53,48,50,50,77,97,116,116,104,101,119,32,83,107,97,108,97,32,40,50,48,49,49,45,49,50,41,59,32,98,97,115,101
,100,32,111,110,32,99,111,100,101,32,98,121,32,82,105,99,104,97,114,100,32,66,46,32,87,97,108,101,115,32,40,49,57,56,56,45,56,57
,41,32,97,110,100,32,84,111,114,32,76,105,108,108,113,118,105,115,116,79,67,82,32,65,79,67,82,65,0,0,0,0,1,0,2,0,3,0,4,0,5,0,6,0
,7,0,104,0,9,0,10,0,11,0,12,0,13,0,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,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,54,0,55,0,56,0,57,0,58
,0,59,0,60,0,61,0,62,0,126,0,64,0,124,0,66,0,67,0,68,0,69,0,70,0,71,0,72,0,73,0,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,94,0,127,1,135,1,136,1,137,0,98,0,100,1,138,1,139,1,140,1,141,1,142,1,143,0,
173,0,175,0,138,0,186,0,189,0,141,0,195,1,144,0,115,2,0,1,0,2,0,3,0,83,0,176,1,63,1,187,2,61,2,234,3,34,3,139,3,246,4,140,4,211,
5,14,5,53,5,71,5,130,5,188,6,14,6,92,6,201,7,21,7,123,7,211,8,39,8,144,8,232,9,27,9,119,9,196,9,216,10,39,10,170,11,66,11,143,11
,243,12,105,12,231,13,39,13,99,13,228,14,46,14,118,14,188,15,28,15,68,15,149,15,210,16,117,16,190,17,91,17,192,18,53,18,125,18,197
,19,19,19,142,20,9,20,87,20,138,20,206,21,11,21,83,21,150,21,183,21,243,22,121,23,30,23,143,23,241,24,117,24,203,25,137,25,231,26
,82,26,217,27,62,27,121,27,254,28,88,28,228,29,153,29,252,30,80,30,236,31,77,31,171,32,7,32,141,33,8,33,124,33,201,34,51,34,94,34
,199,35,51,35,66,35,109,35,221,36,79,36,202,37,3,37,58,37,70,37,124,37,187,38,0,38,114,38,227,39,107,39,238,40,193,41,142,41,252
,42,11,14,14,139,247,35,249,17,119,1,247,178,247,43,3,247,178,190,21,111,162,116,167,30,188,6,167,162,162,167,31,181,7,167,116,161
,111,30,90,6,111,116,117,111,31,249,17,4,164,252,19,5,141,111,160,117,167,139,8,165,163,160,168,31,164,248,19,139,142,5,165,115,
160,112,30,90,6,111,116,116,112,31,14,249,59,240,1,247,55,238,3,247,3,249,110,21,191,251,157,5,144,116,159,121,164,139,163,139,160
,157,143,162,8,181,247,106,247,6,139,180,251,97,5,139,137,138,137,139,137,139,115,165,119,165,139,170,139,155,163,144,165,153,216
,154,221,159,212,8,153,7,140,144,140,145,139,144,139,143,138,143,143,12,37,171,252,134,102,7,138,134,138,135,139,135,8,14,247,189
,240,247,3,240,247,62,119,1,247,104,240,236,240,3,247,5,247,240,21,111,161,116,167,30,188,251,11,6,111,161,116,167,167,162,162,167
,30,247,11,236,251,11,7,111,162,116,167,167,161,162,167,30,247,11,188,7,167,162,162,167,166,116,162,111,31,90,247,3,188,6,167,162
,162,167,167,116,161,111,31,90,247,12,6,166,117,162,111,111,116,116,112,30,251,12,42,247,12,7,166,116,162,111,111,117,116,112,30
,251,12,90,7,111,117,117,111,111,161,116,167,31,188,251,3,90,6,111,117,116,112,31,247,92,189,21,247,3,236,251,3,7,14,160,118,247
,62,240,207,241,207,240,247,62,119,1,247,5,239,237,240,237,240,3,20,112,247,5,247,112,21,111,161,117,167,30,247,40,251,11,6,111,
162,116,167,166,162,162,167,30,247,11,247,40,7,167,162,161,167,31,247,62,7,167,116,162,111,30,251,239,207,247,239,6,167,162,162,
167,167,116,161,111,31,251,40,247,12,6,166,116,162,112,111,116,116,112,30,251,12,251,40,7,111,117,117,111,31,251,62,7,111,161,116
,167,30,247,239,71,251,239,6,111,117,116,111,31,14,139,247,78,248,44,247,78,1,247,5,247,92,236,247,93,3,247,5,247,27,21,111,161,
117,167,30,155,139,154,146,148,151,8,248,33,248,146,5,146,147,143,150,139,151,139,167,116,161,111,139,123,139,124,132,130,127,8,
252,33,252,146,5,132,131,136,128,139,127,8,248,146,4,111,161,116,167,30,238,6,167,162,162,167,31,224,7,166,116,162,111,30,40,6,111
,117,116,112,31,247,189,253,59,21,111,162,116,167,30,238,6,167,162,162,167,31,223,7,167,116,162,111,30,40,6,111,116,116,111,31,14
,139,240,248,129,240,1,247,5,240,247,88,240,3,247,5,247,43,21,57,207,70,222,30,237,6,151,139,150,144,148,146,8,213,202,194,80,5,
148,129,152,133,154,139,167,139,162,162,139,167,139,152,133,151,131,148,8,87,195,5,161,157,183,163,139,176,139,167,116,162,111,139
,126,139,128,134,130,132,8,88,95,32,247,6,247,17,246,5,150,148,145,154,139,154,8,208,7,221,71,208,56,30,43,6,56,71,70,57,31,70,7
,139,126,144,126,147,130,8,235,37,47,60,5,128,129,133,126,139,123,8,240,70,21,139,185,217,205,246,251,6,83,91,60,139,5,112,116,161
,167,31,247,236,4,188,7,167,162,161,166,30,235,6,165,163,115,113,31,139,93,251,3,45,5,14,249,160,119,18,247,153,247,93,251,93,239
,19,160,247,153,248,26,21,111,162,117,167,30,163,139,158,155,145,161,8,238,247,229,5,19,192,140,144,140,144,139,144,8,166,116,162
,111,30,40,6,111,116,116,112,31,14,160,118,249,160,119,1,247,153,240,3,247,153,247,186,21,139,87,158,97,163,108,8,247,9,251,42,5
,148,128,154,131,155,139,167,139,161,162,139,167,139,150,135,150,133,148,8,251,9,247,41,5,127,155,129,160,139,165,8,247,84,7,139
,165,149,160,151,155,8,247,9,247,41,5,145,148,143,150,139,151,139,166,117,162,111,139,123,139,124,131,130,128,8,251,9,251,42,5,115
,108,120,97,139,87,8,14,160,118,249,160,119,1,247,253,240,3,247,104,190,21,111,161,116,167,30,155,139,154,147,148,150,8,247,9,247
,42,5,163,170,158,181,139,191,8,247,84,7,139,191,120,181,115,170,8,251,9,247,42,5,130,150,124,147,123,139,111,139,117,116,139,112
,139,127,143,128,145,130,8,247,9,251,41,5,151,123,149,118,139,113,8,251,84,7,139,113,129,118,127,123,8,251,9,251,41,5,133,130,135
,128,139,128,8,14,247,203,240,3,247,5,247,112,21,111,161,117,167,30,152,139,150,143,148,147,8,247,7,237,139,251,37,5,111,162,117
,167,166,162,161,167,30,139,247,37,247,7,41,5,148,131,150,135,152,139,167,139,162,161,139,167,139,155,132,152,128,149,8,251,45,247
,23,247,45,247,23,5,150,149,146,152,139,155,139,167,116,161,111,139,126,139,128,135,130,131,8,251,7,41,139,247,37,5,167,116,161,
112,111,116,117,111,30,139,251,37,251,7,237,5,130,147,128,143,126,139,111,139,117,117,139,111,139,123,145,126,150,129,8,247,45,251
,23,251,45,251,23,5,128,129,133,126,139,123,8,14,247,232,240,1,247,203,240,3,247,5,248,26,21,111,161,117,167,30,247,40,251,40,6,
111,162,116,167,166,162,162,167,30,247,40,247,40,7,167,162,161,167,167,116,162,111,31,251,40,247,40,6,166,116,162,112,111,116,116
,112,30,251,40,251,40,7,111,117,116,111,31,14,160,118,247,147,240,18,247,104,247,191,38,240,19,224,247,104,247,197,21,111,161,117
,167,30,19,208,247,40,251,96,6,111,162,116,167,167,161,162,167,30,19,224,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31
,14,247,189,247,36,1,247,5,247,240,21,111,161,116,167,30,248,33,6,167,162,162,167,31,181,7,167,116,162,111,30,252,33,6,111,117,116
,111,31,14,247,19,247,78,1,247,153,247,93,3,247,153,247,70,21,32,10,14,160,118,249,160,119,1,247,5,190,21,111,161,116,167,30,158
,139,155,149,148,154,8,248,33,249,59,5,143,147,142,147,139,149,139,166,116,162,111,139,120,139,123,129,130,124,8,252,33,253,59,5
,135,131,137,131,139,130,8,14,139,240,248,214,240,1,247,5,240,247,188,240,3,247,5,240,21,84,185,93,194,30,247,188,6,193,186,186,
193,31,248,214,7,193,92,186,85,30,251,188,6,84,93,93,84,31,240,252,214,21,248,214,247,188,252,214,7,14,139,240,248,214,240,18,247
,5,247,191,38,240,237,240,19,232,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,247,146,7,167,116,162,111,111,117,116
,111,30,251,96,7,19,216,41,249,59,251,141,6,19,232,111,117,116,112,111,161,116,167,31,19,216,247,40,252,214,251,40,6,111,117,116
,112,31,14,139,240,247,131,239,247,131,240,1,247,5,240,247,188,240,3,20,224,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31
,251,238,247,131,247,188,6,193,186,185,193,31,247,131,7,193,92,186,85,30,251,239,6,111,117,116,112,111,161,116,167,31,247,239,251
,131,251,188,6,84,93,94,84,31,14,139,240,247,131,240,247,130,240,1,248,146,240,3,20,224,247,5,190,21,111,161,116,167,30,247,239,
6,193,186,186,193,31,247,80,7,139,177,124,175,114,166,164,166,154,174,139,178,8,247,80,7,193,92,186,85,30,251,239,6,111,117,116,
112,111,161,116,167,31,247,239,251,80,6,112,116,116,111,30,251,89,6,111,117,116,111,111,161,117,167,31,247,89,6,166,163,115,112,
31,251,80,251,239,7,111,117,116,112,31,14,160,118,247,147,240,248,60,119,1,247,29,240,247,89,240,3,247,29,247,147,21,247,190,251
,96,6,111,162,116,167,166,162,162,167,30,247,96,7,167,161,161,167,167,117,162,111,31,247,181,7,167,116,161,112,111,116,117,111,30
,251,181,251,89,248,10,7,166,117,162,111,111,116,116,112,30,14,139,240,84,236,247,89,240,247,130,240,18,247,104,240,247,89,240,20
,176,19,124,247,5,232,21,139,118,151,121,157,131,8,19,188,181,121,181,111,195,139,8,247,119,6,193,186,186,193,31,247,131,7,193,92
,186,85,30,251,89,247,130,247,139,6,167,162,162,167,166,116,162,111,31,251,240,252,76,247,190,251,131,251,129,6,49,177,5,19,124,
133,142,132,140,132,139,8,111,117,117,111,31,14,139,240,247,46,240,247,215,240,18,247,5,247,42,251,42,239,247,189,240,19,236,247
,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,247,146,7,167,116,162,111,30,251,239,247,215,6,19,244,167,161,162,167,31
,19,236,166,117,162,111,30,89,6,19,244,111,117,116,112,31,19,236,239,253,9,21,247,46,247,189,251,46,7,14,160,118,249,59,240,1,247
,203,240,237,240,3,247,5,249,67,21,111,161,117,167,30,164,139,160,157,143,163,8,247,189,251,73,6,251,73,251,46,5,128,129,132,125
,139,124,8,251,146,7,111,162,116,167,166,162,162,167,30,139,247,123,247,73,247,46,5,150,149,146,153,139,154,8,247,197,252,84,7,111
,117,116,112,31,14,139,240,247,131,240,247,130,240,18,247,5,239,139,239,236,239,139,240,19,240,247,5,240,21,19,234,84,185,93,193
,30,247,189,6,193,186,186,193,31,247,131,7,19,228,193,92,186,85,30,19,234,247,181,7,166,118,162,111,30,251,91,6,111,118,116,112,
31,251,181,7,19,240,84,94,92,85,31,239,251,131,21,247,131,7,19,242,247,189,251,131,6,19,236,251,89,247,232,21,247,130,236,251,130
,7,14,139,240,247,215,240,247,46,240,18,247,5,239,247,139,247,43,38,240,19,244,247,5,248,111,21,111,161,116,167,30,247,239,251,215
,6,19,248,111,117,116,112,31,19,244,111,161,116,167,30,189,6,19,248,167,162,162,167,31,19,244,249,59,7,166,116,162,111,30,252,33
,6,111,117,116,112,31,239,251,97,21,247,46,247,189,251,46,7,14,247,19,247,78,247,46,247,78,1,247,153,247,93,3,247,153,247,70,21,
32,10,247,146,4,111,162,117,167,30,238,6,167,162,161,167,31,224,7,167,116,162,111,30,40,6,111,116,116,111,31,14,160,118,247,147,
240,247,45,247,78,18,247,104,247,92,137,240,19,240,247,104,247,197,21,111,161,117,167,30,19,232,247,40,251,96,6,111,162,116,167,
167,161,162,167,30,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31,19,240,247,147,4,111,161,116,167,30,239,6,166,162,162
,167,31,224,7,167,116,161,112,30,39,6,111,117,117,111,31,14,247,5,248,4,21,139,120,149,124,153,130,8,248,33,251,125,5,147,134,148
,137,148,139,167,139,162,161,139,167,139,158,128,155,125,148,8,251,251,247,103,247,251,247,103,5,153,148,150,155,139,158,139,167
,116,161,111,139,130,139,130,137,131,134,8,252,33,251,125,5,125,130,129,123,139,120,8,14,247,147,240,247,3,240,1,247,5,247,197,21
,33,10,247,104,4,33,10,14,247,5,247,27,21,111,161,117,167,30,148,139,148,141,147,144,8,248,38,247,128,5,152,147,146,155,139,156,
8,181,7,139,158,128,155,125,148,8,252,33,247,125,5,131,144,130,141,130,139,111,139,117,117,139,111,139,120,149,123,153,130,8,247
,252,251,103,251,252,251,103,5,125,130,129,123,139,120,8,14,139,240,249,59,119,1,247,104,240,3,247,5,248,111,21,111,161,116,167,
30,152,139,150,144,148,146,8,247,157,247,119,188,97,139,101,251,173,251,131,5,128,130,133,124,139,124,8,54,7,111,161,117,167,167
,162,161,167,30,139,201,247,172,247,131,5,150,149,146,152,139,155,8,224,7,139,154,132,153,128,148,8,40,224,5,130,146,127,144,127
,139,126,139,128,134,130,12,37,251,190,251,147,5,128,130,133,125,139,124,8,238,252,60,21,111,161,116,167,167,162,162,167,166,116
,162,111,111,117,116,112,30,14,139,240,247,173,240,247,88,240,1,247,5,240,236,240,237,240,3,20,224,20,28,247,5,247,42,21,57,206,
71,221,30,177,139,174,154,166,163,165,115,174,124,177,139,8,220,208,207,221,31,248,88,7,235,58,221,42,30,251,35,6,93,139,96,120,
105,108,118,120,106,109,139,103,139,111,161,116,167,139,158,139,157,150,147,155,153,166,171,170,175,139,8,247,35,6,181,174,104,97
,31,252,88,7,113,117,116,112,112,117,161,166,30,247,174,7,167,116,162,112,30,39,6,57,72,71,57,31,240,251,75,21,247,75,7,166,160,
161,166,30,188,251,124,6,112,117,117,112,112,118,161,166,30,14,160,118,247,62,240,248,145,119,1,247,2,190,21,111,163,116,167,30,
162,139,159,154,145,160,8,178,247,26,247,115,139,178,251,26,5,145,118,158,124,162,139,8,167,163,162,167,31,251,94,249,73,5,133,160
,118,154,117,139,116,139,120,124,133,118,8,106,252,109,21,220,247,170,221,251,170,5,14,139,240,247,131,240,247,130,240,1,247,5,240
,247,188,240,3,247,5,22,247,188,6,247,2,231,232,247,1,31,176,7,139,198,111,194,97,176,181,176,167,194,139,198,8,176,7,247,1,47,232
,251,2,30,251,188,6,240,253,59,21,247,131,247,87,7,193,186,92,85,31,102,7,85,92,92,85,30,251,87,247,232,21,247,130,247,87,7,193,
186,92,85,31,102,7,85,92,93,85,30,14,139,240,248,214,240,1,247,5,240,3,247,5,248,26,21,139,98,149,107,153,109,171,69,174,73,174,
72,162,94,189,100,201,139,8,247,78,6,167,162,162,167,166,116,162,111,31,251,78,6,119,139,122,152,132,154,8,36,247,95,5,131,156,134
,157,139,162,139,162,144,157,156,12,37,242,247,95,5,146,154,156,152,159,139,8,247,78,6,167,162,162,167,166,116,162,111,31,251,78
,6,77,139,86,102,118,93,8,38,251,96,5,125,110,129,106,139,98,8,14,139,240,248,214,240,1,247,104,240,247,89,240,3,247,5,190,21,111
,161,116,167,30,247,78,6,201,139,192,176,160,185,8,240,247,96,5,153,168,150,173,139,179,139,179,128,173,125,168,8,37,247,95,5,116
,184,89,178,77,139,8,251,78,6,111,117,116,112,111,161,116,167,31,188,252,214,90,6,111,117,116,112,31,247,92,189,21,248,214,175,7
,159,139,156,126,146,124,8,242,251,95,5,147,123,145,119,139,117,139,117,132,120,122,12,37,36,251,95,5,132,124,122,126,119,139,8,
14,139,240,247,131,240,247,130,240,1,247,5,240,3,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31,251,238,247,131,247,40,6,166
,162,161,167,167,116,162,112,31,251,40,247,130,247,238,6,167,162,162,167,166,116,162,111,31,252,83,6,14,160,118,248,60,240,247,46
,240,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,248,9,247,139,7,167,161,162,167,167,117,161,111,31,251,139,247
,46,247,238,6,167,162,162,167,166,116,162,111,31,252,83,6,14,139,240,247,46,240,247,215,240,18,247,5,240,247,39,247,142,38,240,19
,244,247,5,247,44,21,56,206,70,223,30,247,87,6,222,208,208,222,31,247,96,251,92,7,19,248,111,117,116,111,111,161,117,167,31,19,244
,238,36,6,111,115,116,112,30,251,87,6,112,116,162,167,31,247,163,7,139,165,148,159,151,155,8,247,28,247,66,5,147,150,153,148,157
,139,8,247,41,6,167,162,162,167,166,116,162,111,31,251,41,6,86,139,97,113,114,107,8,251,28,251,68,5,115,108,121,99,139,87,8,14,160
,118,247,232,240,247,231,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,247,181,247,188,251,181,7
,111,161,116,167,167,162,162,167,30,249,59,7,166,116,162,111,111,117,116,112,30,251,181,251,188,247,181,7,166,116,162,111,111,117
,116,112,30,14,139,240,248,214,240,1,247,203,240,3,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251
,40,248,214,247,40,6,167,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,111,161,116,167,31,247,40,252,214,251,40,6,111,
117,116,112,31,14,139,240,249,59,119,1,247,54,240,247,89,240,3,247,54,247,43,21,56,208,71,222,30,234,6,222,208,208,221,31,248,215
,7,166,116,162,111,111,117,116,112,30,252,215,7,112,116,116,111,30,44,6,111,116,161,167,31,247,46,7,167,117,162,111,111,116,116,
111,30,14,160,118,249,160,119,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,121,247,205,251,160,5,148,132
,150,134,152,139,167,139,162,162,139,167,139,154,132,153,128,148,8,251,244,247,193,247,244,247,193,5,150,148,146,153,139,155,139
,166,116,162,111,139,126,139,128,134,130,132,8,251,205,251,160,139,247,122,5,166,116,162,111,111,117,116,112,30,14,139,240,249,59
,119,1,247,5,240,3,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31,251,238,249,9,6,166,116,162,111,111,117,116,112,30,14,160
,118,249,160,119,1,247,5,240,236,240,237,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,248,224,236,251,30,139,113,5,
111,162,116,167,166,162,162,167,30,139,165,237,247,32,139,252,226,5,111,161,116,167,167,162,162,167,30,249,109,251,19,7,251,14,251
,67,251,15,247,67,251,18,139,5,14,160,118,249,160,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,
139,248,185,247,155,252,236,247,26,139,139,249,110,5,166,116,162,111,111,117,116,112,30,139,252,188,251,156,248,238,251,25,139,5
,14,139,240,248,214,240,1,247,5,240,247,188,240,3,247,5,248,26,21,139,98,148,106,154,110,8,246,251,107,5,159,101,182,105,193,139
,194,139,182,173,159,177,8,246,247,107,5,153,168,150,173,139,179,139,179,128,173,125,168,8,32,247,107,5,119,177,96,173,84,139,85
,139,96,105,119,101,8,32,251,107,5,125,110,129,106,139,98,8,247,6,197,21,247,0,247,105,5,144,149,148,147,151,139,151,139,150,130
,143,12,37,247,0,251,105,5,147,123,145,119,139,117,139,117,132,120,122,12,37,32,251,107,5,134,129,130,133,125,139,127,139,129,147
,135,148,8,251,0,247,106,5,131,156,134,157,139,162,139,162,144,157,156,12,37,14,160,118,247,189,240,247,173,240,1,247,5,240,247,
188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,247,138,247,137,7,222,208,208,222,31,247,72,7,221,70,208,56,30,251,238
,6,240,252,18,21,247,173,247,137,7,165,164,116,112,31,251,72,7,111,115,116,112,30,14,139,240,249,59,119,1,247,5,240,236,247,13,217
,240,3,247,5,247,15,21,72,194,83,206,30,172,139,166,152,158,156,8,214,203,176,45,247,26,139,5,167,162,162,167,166,116,162,111,31
,74,139,115,200,5,201,191,217,189,139,247,3,8,247,174,7,206,82,195,72,30,107,139,110,126,121,122,8,251,117,251,82,5,100,105,108,
85,139,72,8,240,251,174,21,247,174,7,139,174,154,165,158,156,8,247,124,247,87,146,139,5,152,149,130,127,31,251,174,7,139,80,93,113
,107,111,126,173,127,199,94,139,111,139,116,116,139,111,139,133,140,132,141,134,8,176,45,251,0,47,131,139,5,126,131,148,152,31,14
,160,118,248,60,240,247,46,240,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,248,9,208,7,247,125,252
,35,5,148,124,155,129,158,139,167,139,162,162,139,167,139,148,136,147,135,147,8,251,95,247,240,197,139,5,221,209,209,221,31,191,
7,222,70,208,56,30,251,238,6,240,251,147,21,247,46,247,137,7,166,163,116,111,31,87,7,112,115,115,112,30,14,139,240,248,214,240,1
,247,5,240,247,188,240,3,247,5,247,27,21,65,201,78,212,30,247,141,6,203,139,187,192,141,200,139,167,128,164,125,156,8,252,8,248,
114,139,143,139,142,5,146,146,142,144,30,247,141,6,157,156,123,121,111,161,116,167,167,162,162,167,213,76,200,66,31,251,141,6,78
,87,88,79,31,136,7,139,111,149,115,152,121,8,248,10,252,118,5,131,132,134,133,30,251,141,6,120,124,154,158,167,116,162,111,111,117
,116,111,31,14,160,118,248,230,247,78,38,240,18,247,5,240,236,240,237,240,19,220,247,5,249,25,21,111,161,116,167,167,162,162,167
,30,19,188,173,236,253,8,7,111,162,116,167,166,162,162,167,30,249,8,237,105,7,19,220,111,161,116,167,167,162,162,167,30,19,188,247
,27,252,134,7,14,139,240,249,59,119,1,247,5,240,247,188,240,3,247,5,247,43,21,57,207,70,222,30,247,87,6,222,208,208,221,31,248,215
,7,166,116,162,111,111,117,116,112,30,252,215,7,112,114,116,113,30,251,87,6,112,116,161,167,31,248,215,7,166,116,162,111,111,117
,116,112,30,14,160,118,249,160,119,1,247,5,240,247,188,240,3,247,5,248,185,21,247,93,252,153,5,147,120,157,126,161,139,160,139,157
,152,147,158,8,247,94,248,154,139,247,72,5,166,116,162,111,111,117,116,112,30,139,251,53,251,40,252,14,251,40,248,14,139,247,53,
5,166,116,162,111,111,117,116,112,30,14,139,240,249,59,119,1,247,5,240,236,240,237,240,3,247,5,247,14,21,195,42,5,148,124,156,129
,158,139,8,236,6,164,139,154,156,150,157,149,120,155,123,163,139,8,237,6,158,139,155,149,148,154,8,196,236,139,248,244,5,166,116
,162,111,111,117,116,112,30,139,252,217,110,91,98,139,5,131,153,130,159,128,156,8,247,215,7,167,116,161,112,111,116,117,111,30,251
,215,7,128,122,130,119,131,125,8,98,139,111,187,139,248,217,5,166,116,162,111,111,117,116,112,30,14,160,118,249,160,119,1,247,5,
190,21,111,161,116,167,30,158,139,155,149,148,154,8,247,47,247,156,247,46,251,156,5,148,124,155,129,158,139,167,139,162,162,139,
167,139,148,136,147,135,147,8,251,76,247,206,247,76,247,206,5,143,147,142,147,139,149,139,166,116,162,111,139,120,139,123,129,130
,124,8,251,46,251,156,251,47,247,156,5,130,154,123,149,120,139,111,139,117,116,139,112,139,129,141,131,143,131,8,247,76,251,206,
251,76,251,206,5,135,131,137,131,139,130,8,14,160,118,249,160,119,1,247,5,240,236,240,236,241,3,247,5,249,7,21,247,90,251,146,139
,251,214,5,111,162,116,167,166,162,162,167,30,139,247,214,247,91,247,146,139,242,5,166,116,162,111,111,116,116,112,30,139,71,251
,39,251,82,251,40,247,82,139,207,5,166,116,162,111,111,117,116,112,30,14,139,240,248,214,240,1,247,4,203,21,140,75,248,83,139,5,
167,162,162,167,166,116,162,111,31,251,201,139,247,252,248,251,139,203,252,84,139,5,111,117,116,112,111,161,116,167,31,247,201,6
,14,139,240,248,214,240,1,247,5,239,187,240,3,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,90
,248,214,247,90,6,167,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,31,239,253,9,21,248,214,187,252,214,7,14,160,118,249
,160,119,1,247,5,249,110,21,139,129,141,131,143,131,8,248,33,253,59,5,148,124,155,129,158,139,167,139,162,162,139,167,139,148,136
,147,135,147,8,252,33,249,59,5,130,154,123,149,120,139,111,139,117,116,139,112,8,14,139,240,248,214,240,1,247,253,240,187,240,3,
247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,249,59,7,166,116,162,111,30,252,33,6,111,117,116,112,111,161,116,167
,31,247,90,252,214,251,90,6,111,117,116,112,31,247,241,189,21,248,214,187,252,214,7,14,247,4,247,82,21,140,127,5,111,161,116,167
,30,157,139,154,148,147,151,8,247,50,247,128,247,49,251,128,5,147,127,154,130,157,139,167,139,162,162,139,167,139,146,137,146,136
,146,8,251,92,248,20,5,131,155,122,150,120,139,119,139,122,128,131,123,8,14,38,240,1,247,5,89,21,111,161,116,167,30,248,33,6,167
,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,31,14,249,160,119,1,247,54,249,110,21,139,123,146,125,150,130,8,247,190
,251,147,5,147,133,149,133,153,139,167,139,162,162,139,167,139,148,137,147,135,146,8,251,95,247,154,5,130,151,124,146,123,139,8,
40,6,111,116,116,112,31,14,139,240,247,46,240,247,3,240,18,247,5,240,247,177,238,45,246,19,244,247,5,247,42,21,57,206,71,221,30,
247,41,6,148,139,148,141,146,144,8,213,182,5,112,161,116,166,167,163,161,167,30,19,248,126,248,9,5,136,218,74,205,57,139,8,251,78
,6,111,117,116,111,111,161,117,167,31,247,78,6,195,139,132,76,141,84,125,144,124,141,124,139,8,251,85,6,57,72,71,57,31,240,83,21
,195,7,165,161,162,165,30,247,85,6,19,244,163,164,116,115,31,139,95,32,76,251,27,139,5,112,118,161,166,31,14,139,240,248,2,240,247
,104,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,154,7,174,107,177,105,201,139,8,214,6,180,139
,172,155,162,159,180,175,188,173,139,214,8,247,98,7,139,189,115,178,110,164,104,169,104,176,75,139,8,64,6,80,139,98,108,104,106,
8,247,118,7,166,116,162,111,111,117,116,112,30,240,252,142,21,247,12,7,139,155,145,153,150,146,8,225,213,5,146,146,150,144,153,139
,8,214,6,157,139,151,130,150,129,155,123,168,124,139,109,8,251,98,7,139,123,131,126,129,131,121,124,120,111,108,139,8,64,6,125,139
,128,144,132,146,8,53,213,5,129,147,132,151,139,156,8,14,139,240,248,2,240,1,247,5,240,3,247,5,247,116,21,139,88,162,101,168,114
,8,225,65,5,163,118,171,124,181,139,8,247,103,6,167,162,162,167,166,116,162,111,31,251,103,6,125,139,128,144,132,146,8,53,212,5,
129,148,132,151,139,156,8,247,12,7,139,155,145,153,150,146,8,225,213,5,146,146,150,144,153,139,8,247,103,6,167,162,161,167,167,116
,162,111,31,251,103,6,51,139,93,70,89,98,110,114,116,101,139,88,8,14,139,240,248,2,240,247,104,119,1,247,5,240,247,188,240,3,247
,5,247,73,21,139,88,161,101,169,114,174,108,173,103,204,139,8,214,6,203,139,176,173,174,172,8,123,7,111,161,116,167,167,162,162,
167,30,249,59,7,166,116,162,111,111,117,116,112,30,251,123,7,103,170,105,177,73,139,8,64,6,98,139,106,123,116,119,97,104,92,105,
139,63,8,240,251,98,21,34,10,14,139,240,247,3,240,247,46,240,1,247,5,240,247,188,240,3,247,5,247,73,21,139,88,161,101,169,114,174
,108,173,103,204,139,8,247,153,6,167,162,162,167,166,116,162,111,31,251,153,6,125,139,130,144,130,146,120,156,105,155,139,174,8,
170,247,238,7,167,162,162,167,31,247,16,7,139,190,115,177,110,164,104,170,104,175,75,139,8,251,17,6,98,139,106,123,116,119,97,104
,92,104,139,64,8,240,65,21,213,7,139,156,146,151,149,147,157,154,158,167,170,139,8,247,17,6,173,191,95,103,31,65,7,14,160,118,248
,103,240,247,3,240,1,247,128,240,3,247,29,248,153,21,111,161,117,167,30,188,252,52,6,111,162,116,167,167,161,162,167,30,248,52,238
,7,166,162,161,167,167,116,162,112,31,40,173,6,181,173,174,182,30,247,13,6,167,161,162,167,166,117,162,111,31,251,13,6,41,59,60,
40,31,105,90,7,111,117,116,111,31,14,251,104,240,247,45,240,247,216,240,1,247,5,239,247,189,240,3,247,5,247,116,21,139,88,162,101
,168,114,174,109,174,101,203,139,8,214,6,201,139,178,174,174,172,8,251,33,7,139,124,131,125,129,131,121,125,120,110,108,139,8,251
,103,6,111,116,116,111,111,162,117,167,31,247,103,6,180,139,172,155,162,159,180,175,188,173,139,214,8,248,184,7,167,116,162,111,
111,117,116,111,30,121,7,103,170,105,177,73,139,8,64,6,98,139,106,123,116,119,97,104,92,106,139,62,8,239,251,55,21,247,55,7,139,
156,147,150,149,149,159,153,154,167,172,139,8,214,6,153,139,150,134,146,132,8,225,65,5,148,131,148,125,139,124,8,61,7,139,123,131
,126,129,131,8,53,65,5,132,132,128,134,125,139,8,64,6,104,88,184,175,31,14,160,118,248,103,240,247,104,119,1,247,5,240,247,188,239
,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,203,247,55,244,210,139,5,166,139,159,117,141,114,8,152,252,7,5,112,162
,117,166,167,161,162,167,30,127,248,8,5,136,218,74,205,57,139,8,82,6,106,139,113,129,117,125,8,43,78,139,247,139,5,166,116,162,111
,111,117,116,112,30,14,139,240,248,2,240,247,3,247,35,18,247,54,247,142,251,43,247,43,39,239,19,240,247,54,190,21,35,10,19,228,41
,6,19,240,248,52,7,167,116,162,112,30,251,41,6,111,116,116,111,111,162,117,167,31,19,228,238,252,2,40,6,111,116,116,112,31,19,232
,238,249,59,21,19,228,111,162,116,167,30,189,6,19,232,166,162,162,167,31,181,7,167,116,161,112,30,19,228,89,6,19,232,111,116,117
,111,31,14,251,104,240,248,214,240,247,3,247,35,18,247,153,247,192,251,43,247,43,39,239,19,232,247,54,62,21,131,7,150,70,202,81,
215,139,8,237,6,19,228,222,207,206,222,31,19,240,248,215,7,167,116,162,111,30,251,90,6,111,116,116,111,111,162,117,167,31,19,228
,247,41,252,165,6,19,232,112,115,117,112,30,41,6,77,139,162,224,79,139,8,111,116,116,111,31,247,140,249,187,21,19,228,111,162,116
,167,30,188,6,19,232,167,162,162,167,31,181,7,167,116,161,111,30,19,228,90,6,19,232,111,116,117,111,31,14,160,118,248,204,119,247
,124,119,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,38,187,181,247,157,251,119,5,148,132,151,134,152,
139,167,139,161,162,139,167,139,154,132,153,128,148,8,251,145,247,108,247,95,247,66,5,150,148,146,153,139,154,139,167,116,162,111
,139,127,139,127,134,131,132,8,251,156,251,117,139,248,35,5,166,116,162,111,111,117,116,112,30,14,139,240,248,214,240,18,247,54,
247,142,38,240,19,224,247,54,190,21,35,10,19,208,41,6,19,224,249,9,7,166,116,162,112,30,251,41,6,111,116,116,112,111,162,116,167
,31,19,208,237,252,214,41,6,111,116,116,112,31,14,160,118,248,103,240,18,244,240,244,240,230,239,53,240,19,248,244,190,21,111,161
,116,167,167,162,162,167,30,139,247,243,214,204,147,139,5,153,147,131,125,31,252,30,7,111,162,116,167,166,162,162,167,30,139,247
,250,207,197,145,139,5,149,139,145,128,140,131,8,19,244,153,252,35,5,140,112,162,117,166,139,8,167,161,162,167,31,19,248,124,248
,37,5,137,203,82,188,78,139,114,139,112,131,116,120,8,117,121,5,117,168,103,158,100,139,102,139,111,122,118,121,133,159,119,154,
117,139,8,111,117,116,111,31,14,160,118,248,103,240,1,247,5,240,247,188,239,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139
,247,203,247,55,244,210,139,5,166,139,159,117,141,114,8,152,252,7,5,112,162,117,166,167,161,162,167,30,127,248,8,5,136,218,74,205
,57,139,8,82,6,106,139,113,129,117,125,8,43,78,139,173,5,167,116,162,111,111,117,116,111,30,14,139,240,248,2,240,1,247,5,240,247
,188,240,3,247,5,247,73,21,139,89,161,100,169,114,175,109,172,102,204,139,8,247,17,6,180,139,172,155,162,159,180,175,188,173,139
,214,8,247,98,7,139,189,115,178,110,164,104,169,104,176,75,139,8,251,17,6,98,139,106,123,116,119,97,104,92,104,139,64,8,240,251,
98,21,247,98,7,139,156,146,151,149,147,157,154,158,167,170,139,8,247,17,6,173,191,95,103,31,251,98,7,139,123,131,126,129,131,121
,124,120,111,108,139,8,251,17,6,125,139,130,144,130,146,120,156,105,155,139,174,8,14,251,83,118,247,83,240,248,44,240,1,247,5,240
,247,188,240,3,247,5,251,54,21,111,161,117,167,167,162,161,167,30,247,108,7,173,102,178,101,205,139,8,160,6,181,139,171,154,163,
160,8,225,213,5,168,164,163,179,139,188,8,247,53,7,139,220,82,175,95,179,104,171,101,175,76,139,8,118,6,70,139,105,98,103,103,8,
166,7,166,116,162,111,111,117,116,112,30,240,251,212,21,247,22,7,139,154,144,151,148,146,8,229,230,5,147,147,152,145,153,139,8,160
,6,151,139,153,133,145,133,8,226,64,5,148,132,147,124,139,124,8,251,53,7,139,124,131,124,130,132,8,52,65,5,132,132,128,134,125,139
,8,118,6,122,139,130]);fileData0.push.apply(fileData0,[144,130,148,118,158,120,160,119,159,122,156,112,154,139,172,8,14,251,83,118
,247,104,240,248,2,240,1,247,5,240,247,188,240,3,247,5,247,73,21,139,88,161,101,169,114,174,108,173,103,204,139,8,214,6,203,139,
176,173,174,172,8,251,121,7,111,161,117,167,167,162,161,167,30,249,59,7,167,116,162,111,111,117,116,111,30,121,7,103,170,105,177
,73,139,8,64,6,98,139,106,123,116,119,97,104,92,105,139,63,8,240,251,98,21,34,10,14,160,118,248,103,240,1,247,5,240,247,188,240,
3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,165,247,58,247,35,220,139,5,166,161,116,113,31,111,7,111,161,117,167,167
,162,161,167,30,167,7,221,70,207,58,30,40,6,129,139,128,137,131,133,8,251,11,37,139,198,5,167,116,162,111,111,117,116,111,30,14,
139,240,248,2,240,1,247,17,239,247,174,242,3,247,5,232,21,139,123,146,125,151,129,172,111,181,114,199,139,8,247,81,6,223,139,208
,207,140,223,8,141,7,139,204,95,193,92,160,8,251,170,247,12,5,128,143,134,149,139,149,8,153,149,154,157,30,247,106,6,176,139,148
,96,175,139,167,139,162,162,139,167,139,150,135,150,133,147,114,172,94,169,86,139,8,251,106,6,105,139,106,125,115,115,113,114,128
,108,139,108,139,88,169,89,185,119,8,247,169,251,12,5,159,130,148,120,139,120,8,112,122,112,105,30,251,95,6,132,139,127,147,132,
141,114,146,131,164,107,139,111,139,118,117,139,111,8,14,139,240,248,2,240,1,247,104,240,3,247,5,248,153,21,111,161,117,167,30,188
,251,209,6,58,207,70,220,30,239,6,214,139,201,198,152,207,8,147,7,167,116,162,111,30,78,139,162,54,78,139,8,39,6,113,117,161,166
,31,247,209,247,89,7,167,161,161,167,167,117,162,111,31,251,89,247,11,6,167,116,162,111,111,117,116,111,30,251,11,90,7,111,117,116
,111,31,14,139,240,248,103,119,1,247,5,239,247,189,240,3,247,5,248,153,21,151,252,9,5,141,61,206,73,220,139,8,196,6,172,139,165,
149,161,153,8,236,201,139,104,5,111,161,116,167,167,162,162,167,30,248,102,7,167,116,162,111,111,117,116,111,30,139,251,204,251,
56,35,68,139,5,112,139,119,160,137,165,8,126,248,7,5,166,116,161,112,111,117,116,111,30,14,160,118,248,204,119,1,247,5,240,247,188
,240,3,247,5,248,68,21,139,132,140,132,142,133,8,247,59,252,18,5,147,121,156,127,160,139,8,202,6,160,139,156,151,147,157,8,247,59
,248,18,5,142,145,141,146,139,146,8,224,7,167,116,162,111,111,117,116,111,30,139,65,251,41,251,231,251,39,247,231,139,213,5,167,
116,162,111,111,117,116,111,30,14,160,118,248,204,119,1,241,240,247,0,240,247,0,240,3,20,56,241,248,152,21,149,251,190,191,251,74
,5,145,118,159,124,162,139,8,188,6,158,139,155,149,148,154,8,195,234,194,44,5,148,124,155,129,158,139,8,188,6,162,139,159,154,145
,160,8,190,247,62,150,247,202,139,141,5,166,115,162,112,30,112,139,117,117,138,112,8,129,251,183,107,251,0,73,247,6,139,247,6,5,
166,116,162,112,111,116,116,112,30,139,251,6,73,251,6,107,247,0,129,247,183,5,138,166,117,161,112,139,8,111,116,115,111,31,14,160
,118,248,204,119,1,247,5,190,21,111,161,116,167,30,155,139,153,146,148,150,8,247,52,247,85,247,51,251,85,5,148,128,153,132,155,139
,167,139,162,162,139,167,139,151,135,150,132,148,8,251,65,247,100,247,53,247,86,5,146,148,144,150,139,151,139,167,116,162,111,139
,124,139,125,132,129,127,8,251,40,251,71,251,41,247,71,5,129,151,125,146,124,139,111,139,116,116,139,111,139,127,144,128,146,130
,8,247,53,251,86,251,65,251,100,5,132,130,136,128,139,127,8,14,251,104,240,249,59,119,1,247,5,240,247,187,241,3,247,5,251,54,21,
111,161,117,167,30,247,28,6,160,139,157,151,147,157,8,247,152,248,230,5,142,145,141,146,139,146,8,224,7,167,116,162,111,111,116,
116,111,30,139,65,251,24,251,192,107,139,251,23,247,192,139,213,5,167,116,162,111,111,117,116,111,30,54,7,139,132,140,132,142,133
,8,247,41,251,231,5,146,121,157,126,160,139,8,160,139,72,251,45,36,139,5,111,117,116,111,31,14,139,240,248,2,240,1,247,5,190,21,
111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,208,139,247,243,247,229,5,149,149,145,152,139,153,8,181,7,167
,116,162,111,30,252,9,6,111,117,116,111,111,161,117,167,31,247,185,139,251,244,251,230,5,129,130,134,126,139,125,8,14,139,240,247
,131,240,247,130,240,1,247,203,240,3,247,5,248,26,21,111,161,117,167,30,236,6,167,162,115,112,31,251,80,7,85,186,92,193,30,247,40
,6,167,162,162,167,166,116,162,111,31,251,40,247,80,6,139,178,124,174,115,166,163,166,154,174,139,178,8,247,80,247,40,7,167,162,
162,167,166,116,162,111,31,251,40,6,85,92,92,85,31,251,80,7,112,117,116,110,30,42,6,111,117,116,111,31,14,160,118,249,160,119,1,
247,203,240,3,247,203,190,21,111,162,116,167,166,162,162,167,30,247,181,38,7,240,4,240,247,181,6,166,116,162,112,111,116,116,112
,30,14,139,240,247,131,240,247,130,240,1,247,203,240,3,247,5,190,21,111,161,116,167,30,247,40,6,193,186,186,193,31,247,80,7,165,
161,164,167,30,237,6,167,162,161,167,167,116,162,111,31,41,6,111,117,162,166,31,247,80,7,193,92,186,85,30,251,40,6,111,117,116,112
,111,161,116,167,31,247,40,251,80,6,139,100,154,104,163,112,115,112,124,104,139,100,8,251,80,251,40,7,111,117,116,112,31,14,248,
62,238,247,45,240,1,247,5,240,236,240,237,240,3,20,56,247,5,248,153,21,111,161,117,167,167,162,161,167,30,247,3,7,166,160,162,166
,166,161,116,112,30,87,7,139,99,155,101,167,110,169,109,176,126,175,139,8,217,214,200,228,31,247,3,7,167,116,162,111,111,117,116
,111,30,251,3,7,113,117,114,112,112,117,164,165,30,191,7,139,180,123,177,111,167,109,169,103,153,103,139,8,62,63,77,50,31,14,226
,248,185,3,226,114,21,248,185,249,210,252,185,6,14,139,247,142,1,247,129,247,141,3,247,129,190,21,111,161,116,167,30,247,41,6,167
,161,162,167,31,247,40,7,167,117,162,111,30,251,41,6,111,117,116,111,31,14,160,118,249,160,119,1,247,104,240,3,247,5,248,111,21,
111,161,116,167,30,152,139,150,144,148,146,8,247,157,247,119,188,97,139,101,251,173,251,131,5,128,130,133,124,139,124,8,251,146,
7,111,161,116,167,167,162,162,167,30,139,247,123,247,172,247,131,5,150,149,146,152,139,155,8,224,7,139,154,132,153,128,148,8,40,
224,5,130,146,127,144,127,139,126,139,128,134,130,12,37,251,190,251,147,5,128,130,133,125,139,124,8,14,139,240,247,131,240,247,130
,240,1,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,122,139,209,247,131,247,52,139,5,167,162,
161,167,167,116,162,111,31,251,23,139,198,247,94,5,145,158,158,156,162,139,8,163,6,167,162,162,167,166,116,162,111,31,115,6,67,139
,83,87,122,82,8,72,251,122,251,53,139,5,111,117,116,111,111,161,117,167,31,247,23,139,70,251,131,77,139,5,111,117,116,112,31,14,
160,118,247,147,240,248,60,119,1,247,203,240,3,247,5,247,197,21,111,161,117,167,30,247,40,251,96,6,111,162,116,167,166,162,162,167
,30,247,96,247,40,7,167,162,161,167,167,116,162,111,31,251,40,160,6,247,84,247,219,5,143,147,142,147,139,149,139,166,116,162,111
,139,120,139,123,129,130,124,8,251,46,251,157,251,47,247,157,5,130,154,123,149,120,139,111,139,117,116,139,112,139,129,141,131,143
,131,8,247,84,251,219,139,118,251,40,139,5,111,117,116,111,31,14,249,160,119,1,247,201,243,3,247,151,249,110,21,190,251,148,5,139
,137,138,137,139,137,8,115,166,119,165,165,164,162,166,30,190,247,148,5,139,141,140,141,139,141,8,163,111,159,113,30,40,6,111,114
,116,112,31,14,160,118,247,104,247,36,1,247,253,247,42,3,247,104,247,155,21,111,161,116,167,30,238,251,53,6,111,161,116,167,30,189
,6,167,161,162,167,31,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31,14,247,232,240,1,247,5,248,26,21,33,10,14,139,240
,248,214,240,1,247,5,240,236,240,237,240,3,247,5,22,247,191,249,59,237,251,96,6,111,161,116,167,167,162,162,167,30,247,197,251,192
,253,59,42,247,96,7,167,116,162,111,111,117,116,111,30,14,160,118,247,232,240,247,231,119,1,247,5,240,247,188,240,3,247,5,190,21
,111,161,116,167,167,162,162,167,30,247,181,247,188,251,181,7,111,161,116,167,167,162,162,167,30,249,59,7,166,116,162,111,111,117
,116,112,30,251,181,252,33,7,14,160,118,247,232,240,247,231,119,1,247,5,240,236,240,237,240,3,247,5,247,232,21,247,90,251,181,6,
111,162,116,167,166,162,162,167,30,247,181,247,91,248,26,7,166,116,162,111,111,117,116,112,30,251,181,251,188,247,181,7,166,116,
162,111,111,117,116,112,30,14,160,118,247,19,240,248,2,247,78,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,30,160,139,
158,152,146,158,8,176,234,247,121,139,176,44,5,146,120,158,126,160,139,167,139,162,162,139,167,139,145,137,145,137,145,8,251,90,
248,145,5,131,158,120,152,118,139,117,139,122,126,131,120,8,251,90,252,145,5,137,133,138,133,139,133,8,248,230,4,36,10,247,65,252
,138,21,214,247,85,214,251,85,5,213,248,53,21,36,10,14,160,118,247,62,240,248,44,240,1,247,54,240,247,89,240,3,247,1,191,21,111,
164,115,167,30,162,139,159,154,145,160,8,179,247,26,247,114,139,178,251,26,5,145,118,159,124,162,139,8,167,163,162,167,31,251,27
,248,96,5,185,148,176,181,139,187,8,208,7,193,92,186,85,30,251,89,6,85,92,92,85,31,70,7,139,91,176,97,185,130,8,157,238,21,208,247
,89,70,7,251,71,251,231,21,209,247,130,161,139,209,251,130,5,14,139,240,208,240,208,240,247,130,240,18,247,253,247,142,251,142,240
,19,244,247,5,190,21,111,161,116,167,30,161,139,157,153,146,158,8,189,247,29,240,139,5,19,248,251,11,7,111,161,116,167,30,247,41
,6,167,162,162,167,166,116,162,111,31,19,244,41,247,131,237,6,19,248,167,162,161,167,167,116,162,111,31,19,244,41,247,130,237,6,
19,248,167,162,162,167,166,116,162,111,31,251,41,6,121,139,122,129,130,125,8,251,143,253,68,5,137,133,138,134,139,133,8,247,76,247
,112,21,19,244,203,247,67,139,251,67,5,14,160,118,249,16,247,36,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162
,167,30,139,247,188,247,201,251,223,5,148,129,152,133,154,139,8,167,162,162,167,31,248,60,7,167,116,161,111,111,117,117,111,30,139
,251,189,251,202,247,223,5,130,149,126,145,124,139,8,111,117,117,111,31,247,104,4,111,161,116,167,30,162,139,159,155,145,160,8,247
,240,102,142,139,5,166,160,163,166,31,182,7,166,116,162,111,30,116,139,119,123,134,118,8,251,241,176,135,139,5,113,119,115,113,31
,14,139,240,248,44,240,123,247,78,18,247,5,239,247,188,241,19,216,247,5,247,172,21,139,113,147,120,150,123,8,220,251,5,139,134,5
,172,95,169,82,214,139,8,160,6,229,139,176,225,178,196,8,192,215,5,150,155,148,159,139,164,8,189,7,139,165,130,158,128,155,8,57,
247,5,5,105,185,114,199,61,139,8,118,6,92,139,103,116,119,109,101,82,100,85,100,84,128,122,131,122,139,112,8,247,207,4,19,184,111
,161,116,167,167,161,162,167,30,224,7,166,117,162,111,111,117,116,112,30,239,252,89,21,139,192,247,10,247,61,5,19,216,143,144,147
,144,147,139,8,160,6,147,139,147,134,143,134,8,247,10,251,61,139,88,251,10,251,59,5,135,133,132,134,130,139,8,118,6,130,139,131,
144,136,145,8,247,70,248,169,21,19,184,111,162,116,167,167,162,162,167,30,224,7,166,116,162,111,111,116,116,112,30,14,139,240,248
,214,240,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,30,182,139,156,192,156,167,158,96,183,101,197,139,194,139,182,173
,159,177,8,246,247,107,5,153,168,150,173,139,179,139,222,95,198,110,198,8,205,247,5,5,143,147,142,147,139,149,139,166,116,162,111
,139,96,139,122,86,122,111,120,182,95,177,80,139,85,139,96,105,119,101,8,32,251,107,5,125,110,129,106,139,98,139,54,182,83,168,79
,8,73,251,5,5,135,131,137,131,139,130,8,240,247,231,21,139,162,144,157,147,156,8,247,0,247,105,5,144,149,148,147,151,139,151,139
,150,130,143,12,37,173,72,251,68,251,192,5,125,167,121,166,139,180,8,226,251,96,21,247,68,247,192,5,153,112,158,109,139,100,139,
117,132,120,132,122,8,251,0,251,106,5,134,129,131,132,125,139,127,139,129,147,135,12,37,14,139,240,248,129,247,78,18,247,5,240,137
,240,236,239,139,240,19,228,247,5,247,44,21,56,206,70,223,30,247,87,6,222,208,208,222,31,248,44,7,167,116,161,111,111,117,117,111
,30,252,44,7,111,115,116,112,30,251,87,6,112,116,162,167,31,248,44,7,167,116,161,111,111,117,117,111,30,19,208,238,224,21,36,10,
19,200,247,90,54,21,111,162,116,167,167,160,162,167,30,224,7,166,118,162,111,111,116,116,112,30,14,247,203,240,3,247,203,38,21,240
,28,4,183,38,6,14,249,103,20,139,21,139,139,248,204,139,247,104,139,6,251,104,139,7,158,12,10,240,10,236,142,140,140,180,140,181
,203,12,12,240,11,236,143,189,189,188,188,247,142,12,13,139,12,14,28,0,52,19,0,5,1,1,28,54,125,143,164,111,162,116,167,30,238,6,
167,162,162,167,31,224,7,167,116,161,111,30,40,6,111,116,117,111,31,11,111,161,117,167,30,248,33,6,167,162,161,167,167,116,162,111
,31,252,33,6,111,117,116,111,31,11,247,98,7,139,157,147,150,149,148,158,154,155,166,171,139,8,214,6,153,139,150,134,146,132,8,225
,65,5,148,131,148,125,139,124,8,251,12,7,139,123,131,125,129,132,8,53,65,5,132,133,128,133,125,139,8,64,6,125,139,130,144,130,146
,120,156,105,155,139,174,8,11,111,162,116,167,30,247,189,6,167,162,162,167,166,116,162,111,31,11,111,161,116,167,167,162,162,167
,30,224,7,166,116,162,111,111,117,116,112,30,11,0,0,1,0,0,0,14,0,0,0,24,0,0,0,0,0,2,0,1,0,1,0,114,0,1,0,4,0,0,0,2,0,0,0,1,0,0,0,
10,0,68,0,162,0,2,68,70,76,84,0,14,108,97,116,110,0,36,0,4,0,0,0,0,255,255,0,6,0,0,0,1,0,2,0,3,0,4,0,5,0,4,0,0,0,0,255,255,0,6,0
,0,0,1,0,2,0,3,0,4,0,5,0,6,97,97,108,116,0,38,115,115,48,49,0,44,115,115,48,50,0,50,115,115,48,51,0,56,115,115,48,52,0,62,115,115
,48,53,0,68,0,0,0,1,0,0,0,30,0,1,0,1,0,28,0,1,0,2,0,26,0,1,0,3,0,24,0,1,0,4,0,22,0,1,0,5,0,0,1,0,0,0,1,1,0,0,1,2,0,0,1,3,0,0,1,4
,0,6,0,14,0,22,0,30,0,38,0,46,0,54,0,3,0,0,0,1,0,48,0,1,0,0,0,1,0,100,0,1,0,0,0,1,0,104,0,1,0,0,0,1,0,108,0,1,0,0,0,1,0,112,0,1,
0,0,0,1,0,116,0,1,0,46,0,5,0,16,0,22,0,28,0,34,0,40,0,2,0,8,0,101,0,2,0,13,0,102,0,2,0,14,0,103,0,2,0,15,0,97,0,2,0,32,0,98,0,1,
0,5,0,8,0,13,0,14,0,15,0,32,0,1,0,6,0,82,0,1,0,1,0,15,0,1,0,6,0,66,0,1,0,1,0,32,0,1,0,6,0,93,0,1,0,1,0,8,0,1,0,6,0,89,0,1,0,1,0,
13,0,1,0,6,0,89,0,1,0,1,0,14,0,1,0,0,0,10,0,44,0,46,0,2,68,70,76,84,0,14,108,97,116,110,0,24,0,4,0,0,0,0,255,255,0,0,0,4,0,0,0,0
,255,255,0,0,0,0,0,0,0,0,0,1,0,0,0,0,204,109,177,85,0,0,0,0,204,138,51,80,0,0,0,0,204,138,51,83,2,211,0,0,2,211,0,0,1,30,0,111,0
,113,0,113,0,113,0,113,1,5,1,5,0,212,0,113,0,113,0,212,0,113,1,5,0,113,0,113,0,113,0,113,0,113,0,137,0,113,0,113,0,113,0,113,0,113
,1,5,0,212,0,113,0,113,0,113,0,113,0,113,0,110,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,162,0,113,0,113,0,113,0,113,0,113
,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,112,0,113,0,113,0,113,0,112,0,113,0,162,0,113,0,113,0,113,0,113,0
,113,0,137,0,113,0,113,0,162,0,162,0,113,0,162,0,105,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,102,0,113,0,113,0,113
,0,113,1,55,0,113,0,113,0,87,0,237,0,113,0,113,0,113,1,3,0,212,0,113,0,113,0,113,0,113,0,113,0,109,0,113,0,113,0,113,0,113,0,113
,1,55,0,0]);Module["FS_createDataFile"]("/","OCRA.otf",fileData0,true,true);var fileData1=[];fileData1
.push.apply(fileData1,[79,84,84,79,0,13,0,128,0,3,0,80,67,70,70,32,129,193,239,92,0,0,6,176,0,0,60,213,70,70,84,77,108,79,91,201
,0,0,68,252,0,0,0,28,71,68,69,70,0,190,0,4,0,0,67,136,0,0,0,32,71,80,79,83,184,255,184,254,0,0,68,204,0,0,0,48,71,83,85,66,119,90
,101,154,0,0,67,168,0,0,1,36,79,83,47,50,90,188,142,61,0,0,1,64,0,0,0,96,99,109,97,112,83,222,211,245,0,0,4,28,0,0,2,114,104,101
,97,100,6,47,76,75,0,0,0,220,0,0,0,54,104,104,101,97,4,6,251,46,0,0,1,20,0,0,0,36,104,109,116,120,49,149,74,40,0,0,69,24,0,0,1,240
,109,97,120,112,0,145,80,0,0,0,1,56,0,0,0,6,110,97,109,101,174,145,152,55,0,0,1,160,0,0,2,121,112,111,115,116,0,3,0,0,0,0,6,144,
0,0,0,32,0,1,0,0,0,2,0,0,89,59,114,1,95,15,60,245,0,11,3,232,0,0,0,0,211,135,133,179,0,0,0,0,211,135,133,179,249,67,249,67,6,189
,6,189,0,0,0,8,0,2,0,0,0,0,0,0,0,1,0,0,3,170,254,176,0,90,2,211,249,67,249,67,6,189,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,103,0,0,80
,0,0,145,0,0,0,2,2,211,1,144,0,5,0,0,2,138,2,188,0,0,0,140,2,138,2,188,0,0,1,224,0,49,1,2,0,0,2,0,5,9,0,0,0,0,0,0,0,0,0,175,0,0,
0,104,0,0,0,0,0,0,0,0,80,102,69,100,0,64,0,32,43,88,3,32,255,56,0,90,3,170,1,80,0,0,0,1,0,0,0,0,2,22,2,189,0,32,0,32,0,1,0,0,0,14
,0,174,0,1,0,0,0,0,0,0,0,67,0,136,0,1,0,0,0,0,0,1,0,4,0,214,0,1,0,0,0,0,0,2,0,7,0,235,0,1,0,0,0,0,0,3,0,41,1,71,0,1,0,0,0,0,0,4,
0,13,1,141,0,1,0,0,0,0,0,5,0,10,1,177,0,1,0,0,0,0,0,6,0,4,1,198,0,3,0,1,4,9,0,0,0,134,0,0,0,3,0,1,4,9,0,1,0,8,0,204,0,3,0,1,4,9,
0,2,0,14,0,219,0,3,0,1,4,9,0,3,0,82,0,243,0,3,0,1,4,9,0,4,0,26,1,113,0,3,0,1,4,9,0,5,0,20,1,155,0,3,0,1,4,9,0,6,0,8,1,188,0,77,0
,97,0,116,0,116,0,104,0,101,0,119,0,32,0,83,0,107,0,97,0,108,0,97,0,32,0,40,0,50,0,48,0,49,0,49,0,41,0,59,0,32,0,98,0,97,0,115,0
,101,0,100,0,32,0,111,0,110,0,32,0,99,0,111,0,100,0,101,0,32,0,98,0,121,0,32,0,78,0,111,0,114,0,98,0,101,0,114,0,116,0,32,0,83,0
,99,0,104,0,119,0,97,0,114,0,122,0,32,0,40,0,49,0,57,0,56,0,54,0,44,0,32,0,50,0,48,0,49,0,49,0,41,0,0,77,97,116,116,104,101,119,
32,83,107,97,108,97,32,40,50,48,49,49,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,78,111,114,98,101,114
,116,32,83,99,104,119,97,114,122,32,40,49,57,56,54,44,32,50,48,49,49,41,0,0,79,0,67,0,82,0,66,0,0,79,67,82,66,0,0,82,0,101,0,103
,0,117,0,108,0,97,0,114,0,0,82,101,103,117,108,97,114,0,0,70,0,111,0,110,0,116,0,70,0,111,0,114,0,103,0,101,0,32,0,50,0,46,0,48,
0,32,0,58,0,32,0,79,0,67,0,82,0,32,0,66,0,32,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,32,0,58,0,32,0,50,0,55,0,45,0,57,0,45,0,50
,0,48,0,49,0,50,0,0,70,111,110,116,70,111,114,103,101,32,50,46,48,32,58,32,79,67,82,32,66,32,82,101,103,117,108,97,114,32,58,32,
50,55,45,57,45,50,48,49,50,0,0,79,0,67,0,82,0,32,0,66,0,32,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,0,79,67,82,32,66,32,82,101,
103,117,108,97,114,0,0,86,0,101,0,114,0,115,0,105,0,111,0,110,0,32,0,50,0,32,0,0,86,101,114,115,105,111,110,32,50,32,0,0,79,0,67
,0,82,0,66,0,0,79,67,82,66,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,28,0,1,0,0,0,0,1,108,0,3,0,1,0,0,0,28,0,4,1,80,0,0,0,80,0,64,0,5,0,16,0
,126,0,161,0,164,0,169,0,175,0,180,0,184,0,191,0,196,0,198,0,214,0,216,0,220,0,223,0,228,0,230,0,246,0,248,0,252,1,49,1,83,2,55,
2,199,2,217,2,220,3,147,3,152,3,155,3,158,3,160,3,163,3,166,3,168,33,38,33,145,33,147,34,6,43,34,43,88,255,255,0,0,0,32,0,161,0,
164,0,167,0,174,0,180,0,184,0,191,0,196,0,198,0,214,0,216,0,220,0,223,0,228,0,230,0,246,0,248,0,252,1,49,1,82,2,55,2,198,2,216,2
,220,3,147,3,152,3,155,3,158,3,160,3,163,3,165,3,168,33,38,33,145,33,147,34,6,43,34,43,88,255,255,255,225,255,191,255,189,255,187
,255,183,255,179,255,176,255,170,255,166,255,165,255,150,255,149,255,146,255,144,255,140,255,139,255,124,255,123,255,120,255,68,
255,36,254,65,253,179,253,163,253,161,252,235,252,231,252,229,252,227,252,226,252,224,252,223,252,222,223,97,222,247,222,246,222
,132,213,105,213,52,0,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,1,6,0,0,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,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,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,91,92,93,94,95,0,106,0,0,0,0,108,110,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,0,0,0,0,116,0,0,0,0,98,0,0,111,101,100,0
,103,99,0,107,109,0,0,0,0,0,0,0,0,0,0,0,0,0,0,113,115,105,96,0,0,0,0,138,0,0,0,0,0,0,0,118,119,0,0,0,0,0,0,0,0,0,0,0,0,0,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,121,125,102,123,124,0,104,0,0,122,0,0,0,3,0,0,0,0,0,0,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,4,4,0,1,1,1,5,79,67,82,66,0,1,2,0,1,0,54,248,47,0,248,48,1,248,49,2,248,50,3,248,51,4,139,12,3,139,12,4,28
,249,67,28,249,67,28,6,189,28,6,189,5,28,1,96,15,28,0,0,16,28,2,129,17,28,0,70,28,58,29,18,0,25,2,0,1,0,9,0,14,0,19,0,25,0,27,0,
29,0,34,0,41,0,44,0,47,0,50,0,57,0,66,0,71,0,78,0,85,0,100,0,109,0,121,0,128,0,133,0,200,0,213,0,217,0,223,100,111,116,108,101,115
,115,106,71,97,109,109,97,84,104,101,116,97,76,97,109,98,100,97,88,105,80,105,83,105,103,109,97,85,112,115,105,108,111,110,80,104
,105,80,115,105,79,104,109,97,114,114,111,119,117,112,97,114,114,111,119,100,111,119,110,68,101,108,116,97,117,110,105,50,66,50,
50,117,110,105,50,66,53,56,113,117,111,116,101,115,105,110,103,108,101,46,97,108,116,103,114,97,118,101,46,97,108,116,113,117,111
,116,101,100,98,108,46,97,108,116,98,97,114,46,97,108,116,50,46,48,48,48,77,97,116,116,104,101,119,32,83,107,97,108,97,32,40,50,
48,49,49,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,78,111,114,98,101,114,116,32,83,99,104,119,97,114,
122,32,40,49,57,56,54,44,32,50,48,49,49,41,79,67,82,32,66,32,82,101,103,117,108,97,114,79,67,82,66,78,111,114,109,97,108,0,0,0,0
,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,
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,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,94,0,95,0,96,0,103,0,102,0,131,0,170,0,165,0,128,0,125,0
,133,0,123,0,173,0,138,0,189,0,141,0,195,0,149,0,202,0,144,0,218,0,147,0,224,0,145,0,142,0,148,1,135,0,126,0,136,0,129,0,130,0,127
,1,136,1,137,1,138,1,139,1,140,1,141,1,142,1,143,1,144,1,145,1,146,1,147,1,148,1,149,1,150,1,151,1,152,1,153,1,154,0,145,2,0,1,0
,2,0,3,0,31,0,134,1,64,1,254,2,176,3,110,3,165,3,251,4,77,4,200,5,15,5,80,5,119,5,161,5,218,6,78,6,146,7,13,7,136,7,236,8,103,8,
208,9,37,9,176,10,36,10,87,10,169,10,245,11,55,11,131,12,3,12,205,13,33,13,167,14,30,14,116,14,191,14,254,15,163,15,235,16,47,16
,142,16,236,17,26,17,125,17,206,18,9,18,96,19,6,19,124,20,12,20,67,20,156,20,225,21,106,21,227,22,58,22,133,22,189,22,248,23,52,
23,60,23,101,23,162,24,29,24,164,25,33,25,166,26,21,26,116,27,26,27,118,27,165,28,14,28,114,28,183,29,47,29,127,29,152,30,22,30,
154,30,241,31,128,31,239,32,81,32,167,33,31,33,152,34,3,34,80,34,222,35,1,35,141,35,172,35,200,36,138,37,81,37,142,38,150,38,174
,38,209,39,13,39,94,39,222,40,102,40,217,41,86,42,19,42,173,43,64,43,208,44,172,44,233,45,146,46,7,46,38,46,203,47,89,47,163,47,
171,47,251,48,68,48,86,48,117,48,183,49,20,49,120,49,170,49,245,50,118,50,228,51,146,52,7,52,175,53,15,53,111,53,164,53,188,53,189
,53,224,54,29,54,90,54,118,14,14,66,247,38,18,247,182,247,38,251,15,239,19,192,247,182,116,21,32,10,19,160,162,247,198,21,33,10,
14,248,86,247,212,18,247,53,247,22,251,22,239,247,84,247,15,251,15,237,19,160,247,53,248,136,21,113,163,115,165,30,166,139,159,160
,142,161,8,168,247,119,5,19,192,139,141,140,140,139,141,8,162,115,161,112,30,110,6,112,116,116,112,31,19,136,247,184,251,112,21,
112,162,116,166,30,165,139,156,157,144,161,8,19,144,164,247,122,139,143,5,164,114,160,114,30,116,6,112,116,117,111,31,14,247,96,
239,247,49,239,247,104,119,1,247,242,238,195,238,3,247,5,247,146,21,139,113,159,118,164,136,8,102,251,59,5,112,163,116,165,30,163
,139,159,156,144,161,8,179,247,70,247,17,139,104,251,48,139,128,5,112,162,116,166,30,162,139,160,157,144,160,8,179,247,70,193,139
,5,166,162,162,166,166,117,162,111,31,108,139,174,247,49,155,139,5,166,162,162,166,31,139,164,120,160,115,143,8,173,247,43,139,150
,5,167,116,161,112,30,114,139,122,120,132,119,8,100,251,65,251,18,139,175,247,54,5,165,115,163,113,30,115,139,119,121,134,118,8,
100,251,65,84,139,5,111,117,117,111,111,162,117,166,31,172,139,103,251,49,122,139,5,111,117,117,111,31,247,61,189,21,175,247,49,
247,17,139,104,251,49,5,14,181,239,248,54,118,213,241,1,247,8,238,237,239,239,239,3,247,5,247,69,21,139,133,139,132,142,133,169,
64,211,106,234,131,8,137,7,111,162,117,166,166,162,162,166,30,141,7,247,1,155,230,205,139,247,2,139,247,14,41,178,37,170,8,247,79
,7,177,131,165,122,161,111,148,127,152,130,158,139,166,139,162,162,139,165,139,150,135,149,133,147,102,193,86,173,62,149,8,144,7
,166,116,162,112,112,116,117,111,30,134,7,33,127,48,85,139,251,2,139,251,13,238,102,237,111,8,251,103,7,113,141,114,143,120,149,
108,155,134,192,95,139,112,139,116,117,139,111,8,241,247,250,21,139,191,186,158,190,146,8,251,49,7,102,153,78,155,139,188,8,247,
90,252,26,21,247,72,7,188,122,190,113,139,91,139,86,92,113,86,129,8,14,126,239,228,239,247,100,239,228,239,18,247,7,237,199,236,
124,237,199,236,19,249,247,5,182,21,111,162,116,166,30,156,139,157,151,148,152,8,248,35,249,55,5,143,146,142,148,139,148,139,166
,116,162,112,139,126,139,125,135,129,129,8,252,42,253,65,5,134,132,137,130,139,130,8,141,248,218,21,68,180,69,226,30,19,253,224,
181,211,211,211,97,212,54,55,95,64,66,31,237,142,21,162,146,161,162,162,146,116,117,120,131,114,117,30,130,6,123,144,134,161,139
,156,8,19,251,247,34,252,136,21,68,180,69,226,224,181,212,211,211,97,211,54,30,55,95,64,66,31,237,142,21,162,145,161,163,162,146
,116,117,120,130,114,118,30,133,6,138,140,138,140,138,139,8,123,134,167,153,31,14,126,239,248,222,239,18,247,5,239,67,239,247,75
,239,127,240,19,228,247,5,247,97,21,139,251,26,227,56,247,24,138,8,145,6,197,139,187,154,179,164,152,122,150,119,167,139,166,139
,162,162,139,166,139,165,120,155,128,155,176,195,158,212,139,220,8,166,116,163,112,112,115,116,111,30,139,95,132,98,125,105,8,251
,35,247,91,5,19,216,206,191,247,1,204,139,247,9,8,236,51,193,43,251,10,58,70,251,8,30,139,61,172,85,175,90,8,85,91,96,79,139,45,
8,19,224,239,22,139,197,167,170,169,169,8,247,47,251,107,5,115,125,111,131,106,139,8,133,6,62,140,94,178,139,217,8,19,216,167,248
,19,21,199,178,164,199,175,187,127,100,30,139,115,121,114,126,123,111,105,101,111,100,111,8,115,173,116,176,139,189,8,14,247,168
,247,67,3,247,168,249,100,21,159,251,182,5,141,114,160,121,166,139,8,173,6,165,139,157,156,144,163,8,160,247,184,5,139,140,140,140
,139,140,139,162,118,160,116,142,8,58,6,112,116,117,111,31,14,249,153,119,1,247,148,239,3,247,148,248,7,21,139,251,76,237,251,9,
247,4,64,147,134,149,136,149,139,166,139,162,161,139,167,139,156,129,156,127,147,50,196,62,232,139,247,35,8,144,7,141,247,46,209
,228,233,201,152,148,148,155,139,155,139,167,116,161,112,139,129,139,129,136,131,133,251,6,60,45,251,9,137,251,83,8,14,249,153,119
,1,248,6,239,3,247,73,176,21,112,162,116,166,30,149,139,149,142,147,144,247,6,216,236,247,10,139,247,79,139,247,84,43,247,8,251,
7,218,131,145,130,142,128,139,112,139,116,116,139,112,139,126,148,115,152,135,8,230,77,215,47,139,251,43,139,251,41,64,50,47,79,
127,131,129,121,139,123,8,14,247,205,239,3,247,5,248,82,21,139,115,154,123,158,131,8,247,26,95,49,251,13,5,133,130,135,129,139,128
,139,112,161,116,167,139,153,139,151,143,149,148,8,246,247,36,223,251,36,5,148,130,153,135,152,139,167,139,161,161,139,167,139,148
,137,147,135,147,8,62,247,23,247,9,178,5,159,146,154,156,139,163,139,166,116,162,112,139,133,139,134,138,134,137,8,251,26,95,139
,247,43,5,166,116,162,112,112,116,117,111,30,139,251,43,251,41,188,5,112,115,114,112,31,14,247,222,239,1,247,205,239,3,247,5,248
,16,21,111,162,117,166,30,247,42,251,71,6,111,162,117,166,166,162,162,166,30,247,71,247,42,7,166,162,162,166,166,116,162,112,31,
251,42,247,70,6,166,117,162,111,111,117,117,111,30,251,70,251,42,7,112,116,117,111,31,14,251,55,118,1,247,51,251,26,21,111,161,117
,167,30,167,6,152,139,152,143,149,149,8,247,146,247,153,5,148,148,144,152,139,152,8,170,7,167,116,161,112,30,251,3,6,126,139,124
,135,130,129,8,251,70,251,194,5,135,131,137,131,139,130,8,14,247,208,247,20,1,247,5,248,2,21,111,161,117,167,30,248,36,6,167,161
,162,166,31,167,7,166,117,162,111,30,252,36,6,111,117,117,111,31,14,129,247,89,1,247,133,247,135,3,247,133,179,21,112,162,116,166
,30,247,35,6,166,162,161,167,31,236,7,167,116,161,112,30,251,35,6,112,116,116,112,31,14,249,153,119,1,247,65,176,21,111,162,117,
166,30,159,139,159,153,145,156,8,247,172,249,66,5,142,145,140,145,139,146,139,166,116,162,112,139,119,139,119,125,133,122,8,251,
172,253,66,5,136,133,138,133,139,132,8,14,125,239,248,222,239,1,247,5,239,247,192,239,3,247,5,247,235,21,251,87,189,251,53,247,92
,30,149,139,148,138,149,139,8,154,6,247,54,152,183,247,65,139,247,62,8,247,122,119,247,92,251,122,251,124,121,251,91,251,123,30,
239,22,139,215,139,227,154,201,156,208,172,174,224,139,155,139,161,139,148,137,237,120,144,251,32,139,251,15,8,93,7,251,0,126,251
,40,251,7,30,117,6,123,139,117,139,129,141,50,158,126,247,26,139,240,8,14,247,248,239,3,247,36,248,202,21,112,161,116,167,30,151
,139,151,143,148,147,8,247,21,247,2,139,252,234,5,111,162,117,166,166,162,162,166,30,249,60,7,166,116,162,112,30,107,6,127,139,128
,135,130,131,8,251,75,251,49,5,129,131,134,125,139,126,8,14,140,239,248,208,239,1,248,123,239,3,247,22,249,50,21,113,163,116,165
,30,149,139,150,142,147,145,183,170,183,151,205,139,207,139,195,96,139,69,139,112,128,114,123,118,112,103,87,106,94,110,59,88,60
,77,113,48,8,130,108,138,96,139,100,8,118,7,112,162,116,166,30,247,244,6,166,162,162,166,166,117,162,111,31,251,193,6,145,247,8,
202,177,218,189,224,193,247,4,208,139,247,24,139,247,20,42,224,251,19,139,47,139,81,119,77,98,127,131,130,120,139,124,8,14,126,239
,248,207,239,1,248,140,239,3,247,5,208,21,66,247,36,130,199,30,247,46,139,247,18,227,146,247,43,8,154,7,139,247,17,53,216,251,5,
168,8,247,51,247,60,5,148,148,145,150,139,152,8,174,7,166,116,162,112,30,251,255,6,111,117,117,111,112,162,116,166,31,247,171,139
,251,76,251,85,5,131,131,136,127,139,128,8,112,162,116,166,241,241,98,36,30,130,7,134,40,55,94,41,139,93,139,93,148,96,158,133,141
,133,141,132,139,8,112,116,117,111,31,14,247,56,239,1,248,46,239,3,247,5,247,106,21,111,162,117,166,30,247,139,251,16,6,112,162,
116,166,166,162,162,166,30,247,16,192,7,166,162,162,166,166,117,162,111,31,86,247,8,6,166,116,162,112,112,116,116,112,30,251,8,251
,81,7,247,96,248,71,5,142,145,141,146,139,147,139,166,116,162,112,139,120,139,119,126,133,123,8,251,109,252,99,5,136,132,137,133
,139,131,8,14,126,239,247,218,239,247,37,239,1,248,109,239,3,247,31,176,21,111,162,117,166,30,246,139,247,3,157,220,211,183,179,
180,203,139,215,8,247,65,251,13,222,251,67,30,124,139,147,247,37,247,139,139,5,166,162,163,165,166,117,162,111,31,251,186,6,112,
139,118,119,137,112,8,125,251,143,139,136,5,113,163,118,165,30,143,6,160,141,161,140,160,139,204,139,202,127,174,101,165,111,146
,100,139,100,139,117,132,118,129,120,91,54,251,6,116,34,139,8,112,116,117,111,31,14,126,239,247,192,239,1,247,5,239,247,192,239,
3,247,5,247,121,21,143,251,37,238,42,247,39,139,8,247,39,242,238,247,35,247,49,44,240,251,47,31,117,139,119,137,119,135,191,212,
200,206,199,204,147,148,144,151,139,152,139,166,116,162,112,139,126,139,125,134,130,129,61,54,60,53,78,38,8,101,76,107,58,139,41
,8,239,127,21,237,192,199,236,239,189,81,39,51,78,85,50,49,79,192,228,30,14,249,38,239,1,247,131,239,3,247,5,249,88,21,112,162,116
,166,30,247,232,6,131,118,126,120,127,121,91,69,78,79,97,65,78,32,120,251,17,139,251,16,8,111,162,117,166,166,162,162,166,30,139
,245,153,247,0,192,232,180,210,200,197,184,206,173,189,165,194,139,199,8,166,117,162,111,30,252,36,6,111,117,117,111,31,14,126,239
,248,222,239,18,247,5,238,74,239,247,124,239,73,239,19,228,247,5,247,92,21,251,19,245,53,247,36,30,183,6,247,10,148,227,237,139,
245,139,237,70,212,63,191,8,19,216,201,178,188,189,139,227,8,244,251,3,207,34,33,251,2,72,33,30,139,51,189,87,200,102,8,63,87,70
,67,139,40,8,19,228,238,22,139,222,229,193,202,171,204,105,222,83,139,60,8,77,80,88,69,30,118,6,57,70,178,213,31,19,216,174,248,
36,21,190,209,161,185,185,209,117,88,30,139,72,80,113,82,113,8,83,165,79,166,139,205,8,14,247,165,239,247,192,239,1,247,5,239,247
,192,239,3,247,5,248,150,21,251,26,236,32,247,45,30,159,139,160,140,159,142,92,65,82,72,74,80,129,129,133,127,139,124,139,111,162
,117,166,139,151,139,151,144,148,147,222,213,210,226,195,235,8,182,212,177,214,139,245,8,247,50,251,2,240,251,32,251,32,251,2,251
,10,251,33,30,239,22,225,204,212,224,228,200,79,40,30,139,114,136,115,132,116,123,83,76,126,78,139,8,46,82,197,222,31,14,129,247
,72,247,75,247,72,1,247,151,247,100,3,247,151,179,21,111,162,117,166,30,247,0,6,166,162,162,166,31,219,7,166,116,162,112,30,251,
0,6,112,116,117,111,31,247,175,4,34,10,14,247,245,247,72,1,247,171,247,100,3,247,48,251,21,21,111,162,117,166,30,182,6,152,139,152
,145,148,148,8,247,96,247,159,5,141,141,140,142,139,142,139,143,138,143,139,143,8,166,116,162,112,30,251,3,6,117,139,122,126,133
,124,8,251,16,251,145,5,136,133,138,131,139,132,8,247,15,248,168,21,34,10,14,247,18,247,236,21,248,45,251,163,5,147,133,149,136,
149,139,166,139,162,162,139,166,139,153,134,151,129,149,8,251,237,247,122,247,237,247,122,5,151,147,142,153,139,153,139,166,116,
162,112,139,129,139,129,136,131,133,8,252,45,251,163,5,130,130,135,125,139,126,139,126,143,125,139,130,8,14,247,108,239,247,20,239
,1,247,5,247,158,21,111,161,117,167,30,248,36,6,167,161,162,166,166,116,162,112,31,252,36,6,112,116,117,111,31,247,120,4,111,162
,117,166,30,248,36,6,166,162,162,166,166,117,162,111,31,252,36,6,111,117,117,111,31,14,247,5,247,6,21,111,162,117,166,30,149,139
,148,142,148,145,8,248,44,247,163,5,150,146,142,155,139,152,139,152,135,153,139,148,8,252,44,247,163,5,130,145,130,142,129,139,112
,139,116,117,139,111,139,125,144,127,148,129,8,247,237,251,122,251,237,251,122,5,130,129,134,127,139,125,8,14,72,247,38,248,173,
237,18,247,33,239,188,247,38,251,15,239,182,239,19,236,247,33,248,156,21,140,114,161,117,166,139,8,167,161,161,167,31,139,142,139
,144,5,139,197,193,160,191,145,8,142,6,148,139,148,136,148,139,179,130,178,119,139,92,139,105,109,91,119,118,103,99,82,109,139,66
,8,111,162,117,166,166,162,162,166,30,139,146,143,146,143,144,155,161,163,153,157,159,175,177,179,207,140,204,8,141,7,247,10,40,
196,38,33,251,1,76,251,13,30,19,244,247,41,252,183,21,32,10,14,120,239,247,132,239,247,89,239,1,247,5,239,247,15,239,216,239,3,247
,5,247,86,21,139,251,9,173,47,247,3,135,8,147,6,185,139,173,154,166,162,161,113,171,128,172,139,174,139,175,152,165,163,191,187,
143,202,139,238,8,247,6,7,247,95,90,247,64,251,96,30,130,6,251,17,136,45,81,123,32,8,132,7,111,161,117,167,30,164,139,160,158,142
,162,147,199,198,159,208,142,8,148,6,247,32,152,251,31,251,28,31,139,251,6,139,113,5,139,80,136,79,91,136,8,138,6,121,139,133,161
,138,162,8,247,135,7,165,116,163,112,30,122,139,122,129,130,124,117,154,103,151,108,139,251,7,138,113,251,2,139,251,8,8,239,133,
21,139,145,139,156,5,184,141,204,178,30,177,139,169,108,153,112,8,251,19,7,126,111,123,112,100,139,8,133,6,91,142,138,193,139,189
,8,14,247,91,239,248,44,119,1,247,11,179,21,111,162,117,166,30,162,139,159,156,144,159,8,183,247,64,247,95,139,184,251,64,5,144,
119,159,122,162,139,8,166,163,163,165,31,251,57,249,16,5,134,157,119,152,118,139,8,71,6,116,139,118,122,134,119,8,251,53,252,253
,5,247,60,247,138,21,215,247,184,215,251,184,5,14,140,239,247,107,239,247,77,239,18,247,5,239,247,178,238,54,239,19,244,247,5,190
,21,111,162,117,166,30,247,63,6,211,139,213,145,195,183,188,177,167,198,139,200,8,141,7,139,200,111,196,92,176,8,19,248,180,175,
158,189,139,189,139,207,104,206,78,174,88,167,80,140,81,139,8,251,63,6,111,117,117,111,31,239,252,186,21,247,107,247,42,7,19,244
,219,139,208,111,140,62,8,138,7,48,47,121,52,30,251,13,247,207,21,247,77,247,13,7,19,248,226,139,210,128,146,60,8,130,7,70,70,122
,72,30,14,126,239,248,97,118,228,239,1,247,53,239,247,99,237,3,247,53,247,234,21,141,251,71,188,251,68,247,77,139,227,139,207,193
,152,215,8,148,7,166,117,162,112,30,115,139,118,120,135,117,133,108,110,122,103,139,251,12,139,125,247,35,137,247,6,8,156,7,139,
247,8,160,247,25,247,2,145,8,144,6,157,139,156,134,154,128,167,118,132,87,188,139,8,166,161,162,166,31,149,7,122,214,72,193,52,139
,8,134,6,251,70,135,88,251,68,139,251,75,8,14,161,118,249,80,119,1,247,56,239,247,115,239,3,247,56,190,21,112,162,116,166,30,177
,139,176,139,176,146,247,41,166,247,4,247,13,139,247,67,139,227,109,215,99,193,74,226,51,204,251,42,139,8,111,117,116,112,31,239
,252,184,21,248,131,7,181,134,172,126,168,118,203,93,194,63,139,33,139,251,36,49,67,251,25,127,8,14,140,239,247,107,239,247,77,239
,1,247,51,239,3,247,51,190,21,111,162,117,166,30,247,234,6,166,162,161,167,167,117,161,111,31,251,184,247,107,247,136,6,167,161,
162,166,166,116,162,112,31,251,136,247,77,247,184,6,166,162,161,167,167,117,161,111,31,251,234,6,111,117,117,111,31,14,247,208,239
,247,77,239,1,247,102,239,3,247,102,179,21,112,162,116,166,166,162,162,166,30,247,168,247,71,7,166,162,162,166,166,115,162,113,31
,251,71,247,77,247,116,6,166,162,161,167,167,117,161,111,31,251,166,6,111,117,116,112,31,14,124,241,247,84,239,247,126,241,18,247
,13,240,247,3,247,155,39,239,19,244,247,13,247,245,21,139,251,9,170,251,9,199,77,183,93,205,113,214,139,169,139,171,143,171,148,
175,149,208,158,139,186,8,19,248,247,147,7,166,116,162,112,30,251,55,6,112,116,117,111,111,161,117,167,31,19,244,247,5,251,66,6,
105,127,106,133,109,139,69,139,84,172,115,207,121,189,129,202,139,200,139,222,158,220,182,183,168,168,177,153,177,139,181,139,180
,122,166,108,8,149,128,151,132,155,139,166,139,162,162,139,166,139,151,135,150,131,148,102,184,86,168,81,148,125,141,125,140,126
,139,66,139,79,106,98,98,8,78,78,109,251,5,139,251,6,8,14,247,202,239,247,195,119,1,247,33,239,247,135,239,3,247,33,179,21,112,162
,116,166,166,162,161,167,30,247,162,247,135,251,162,7,112,162,116,166,166,162,161,167,30,249,3,7,167,116,161,112,112,116,116,112
,30,251,145,251,135,247,145,7,167,116,161,112,112,116,116,112,30,14,140,239,248,136,239,1,247,205,239,3,247,62,190,21,112,162,116
,166,30,247,178,6,166,162,162,166,166,117,162,111,31,46,248,136,212,6,166,162,162,166,166,117,162,111,31,251,138,6,111,117,116,112
,112,162,116,166,31,212,252,136,46,6,111,117,116,112,31,14,123,241,249,7,119,1,247,22,239,247,52,239,3,247,22,247,57,21,139,66,184
,82,189,111,169,123,169,132,167,139,236,139,220,223,139,232,139,143,138,144,139,143,8,248,125,7,166,116,162,112,112,116,116,112,
30,252,133,7,83,103,115,102,97,94,169,189,30,139,144,140,144,140,145,8,148,7,167,118,161,111,30,113,139,121,122,134,116,136,126,
138,128,139,127,8,14,249,93,119,1,247,19,239,3,247,19,179,21,112,162,116,166,166,162,162,166,30,139,247,167,247,192,251,202,5,149
,129,152,134,152,139,166,139,162,162,139,166,139,152,133,151,130,149,8,251,172,247,182,247,149,247,155,5,148,148,145,152,139,152
,139,166,116,162,112,139,126,139,126,133,129,130,8,251,169,251,174,139,247,139,5,166,116,162,112,112,116,116,112,30,14,140,239,248
,248,119,1,247,33,239,3,247,33,190,21,112,162,116,166,30,248,8,6,166,162,162,166,166,117,162,111,31,251,214,248,198,6,167,116,161
,112,112,116,116,112,30,14,249,93,119,1,247,5,239,247,192,239,3,247,5,179,21,111,162,117,166,166,162,162,166,30,139,248,175,241,
251,228,5,145,119,159,123,161,139,163,139,156,156,146,158,8,241,247,228,139,252,175,5,111,162,117,166,166,162,162,166,30,249,3,7
,166,116,162,112,30,62,6,116,139,119,123,134,119,8,64,251,139,64,247,139,5,133,158,120,156,116,139,8,62,6,112,116,117,111,31,14,
249,93,119,1,247,19,239,247,164,239,3,247,19,179,21,112,162,116,166,166,162,162,166,30,139,248,116,247,131,252,138,5,147,123,156
,127,159,139,8,177,6,165,163,162,166,31,249,3,7,166,115,162,113,112,116,117,111,30,139,252,117,251,132,248,138,5,131,155,122,152
,119,139,8,102,6,112,116,116,112,31,14,126,239,248,170,239,1,247,8,239,247,186,239,3,247,8,247,246,21,35,10,239,135,21,144,7,139
,218,161,222,179,191,157,162,169,164,176,139,8,243,182,251,47,251,4,35,93,251,55,38,31,37,139,95,247,55,138,243,8,14,247,179,239
,247,106,239,1,247,33,239,247,164,239,3,247,33,179,21,112,162,116,166,166,162,161,167,30,247,139,247,14,7,219,139,222,158,187,203
,164,171,151,179,141,181,8,150,7,247,30,251,0,207,251,34,30,251,64,6,111,117,116,112,31,239,251,156,21,247,106,247,14,7,224,204,
117,55,31,132,7,135,58,66,119,66,139,8,14,171,239,248,120,239,1,247,7,242,247,164,235,3,247,7,248,13,21,139,66,149,66,159,89,172
,59,223,70,230,139,178,139,180,152,178,169,8,193,69,5,148,127,153,136,152,139,166,139,163,162,139,166,139,150,135,150,132,148,8,
74,223,5,171,199,156,219,139,220,8,247,61,65,247,63,251,51,30,130,6,40,139,69,61,109,69,119,91,129,68,139,67,8,242,163,21,192,7,
144,214,181,226,220,139,235,139,187,251,15,139,251,14,139,94,132,94,126,100,8,60,241,5,130,150,124,143,125,139,112,139,117,116,139
,112,139,127,143,129,146,130,8,236,251,17,5,121,126,119,131,115,139,129,139,129,140,128,142,45,164,132,247,6,139,247,18,8,14,247
,179,239,247,106,239,1,247,45,239,247,123,239,3,247,45,179,21,111,162,117,166,166,162,162,166,30,247,139,225,7,247,56,251,175,5,
148,129,154,135,152,139,166,139,162,162,139,166,139,148,138,147,134,147,8,251,28,247,126,5,237,175,177,236,139,247,3,139,237,251
,15,191,45,147,8,251,56,6,111,117,117,111,31,239,251,156,21,247,106,247,0,7,171,139,171,127,167,123,153,132,156,129,139,126,139,
90,137,86,102,108,117,120,108,135,110,139,8,14,124,239,248,167,239,1,247,45,239,247,118,239,3,247,39,247,45,21,152,41,229,69,245
,139,151,139,152,140,152,141,244,156,219,214,139,247,1,139,247,50,251,37,176,34,193,101,159,101,161,139,196,139,190,199,167,195,
139,8,168,139,167,132,158,123,166,116,139,85,187,139,167,139,161,162,139,166,139,143,138,144,138,143,116,222,66,193,35,139,8,133
,6,251,2,137,40,69,139,32,139,251,45,247,33,100,242,87,180,118,180,117,139,78,139,110,128,109,116,122,115,121,107,129,108,139,86
,139,89,166,131,194,8,136,162,118,159,113,139,8,112,116,116,112,31,14,248,237,239,1,247,205,239,3,247,5,249,31,21,111,162,117,166
,30,247,42,252,197,6,111,162,117,166,166,162,162,166,30,248,197,247,42,7,166,162,162,166,166,117,162,111,31,252,36,6,111,117,117
,111,31,14,126,239,249,6,119,1,247,19,239,247,164,239,3,247,19,247,103,21,139,65,171,67,201,98,181,111,189,130,189,139,189,139,189
,148,181,167,200,180,172,211,139,213,8,248,88,7,166,115,162,113,112,116,117,111,30,252,88,7,62,86,92,56,30,109,139,107,143,114,155
,105,162,124,179,139,180,8,248,88,7,166,116,162,112,112,116,116,112,30,14,249,93,119,1,247,4,249,43,21,247,59,253,16,5,144,120,160
,121,163,139,8,207,6,162,139,159,156,144,159,8,247,61,249,16,5,165,115,163,112,30,115,139,121,122,132,119,8,251,43,252,207,251,44
,248,207,5,134,159,119,156,116,139,8,112,115,116,112,31,14,249,93,119,1,247,5,239,247,191,240,3,247,5,249,43,21,147,251,120,151,
251,102,182,251,88,144,119,158,120,165,139,8,167,6,165,139,155,156,145,158,8,200,247,103,199,251,92,5,147,113,174,118,173,139,163
,139,160,158,143,159,181,247,87,153,247,103,147,247,120,8,141,7,164,115,162,113,113,114,116,112,30,133,251,55,130,251,43,119,251
,35,8,81,247,86,5,133,157,121,157,115,139,8,122,6,115,139,123,124,132,121,8,80,251,96,5,118,247,38,131,247,46,133,247,56,138,165
,118,163,111,139,8,113,115,118,112,31,14,249,93,119,1,247,25,179,21,111,162,117,166,30,159,139,153,151,149,153,8,247,28,247,142,
247,34,251,154,5,149,129,154,135,152,139,166,139,162,162,139,166,139,147,137,148,135,146,8,251,53,247,188,247,47,247,170,5,143,147
,141,147,139,148,139,166,116,162,112,139,119,139,125,126,129,126,8,251,22,251,127,251,30,247,139,5,130,148,125,144,126,139,112,139
,116,117,139,111,139,130,141,131,143,131,8,247,47,251,170,251,53,251,188,5,135,132,137,130,139,131,8,14,249,93,119,1,247,205,239
,3,247,28,249,43,21,139,130,141,131,143,132,8,247,63,251,212,139,251,171,5,111,162,117,166,166,162,162,166,30,139,247,171,247,63
,247,212,5,143,146,141,147,139,148,139,166,116,162,112,139,121,139,119,127,133,124,8,251,25,251,141,251,25,247,141,5,130,154,124
,151,119,139,112,139,116,117,139,111,8,14,140,239,248,136,239,1,247,33,190,21,112,162,116,166,30,247,235,6,166,162,161,167,167,117
,161,111,31,251,153,139,247,163,248,163,5,143,146,141,147,139,147,8,165,116,163,112,30,251,198,6,111,117,116,112,112,162,116,166
,31,247,116,139,251,163,252,163,5,135,132,137,131,139,131,8,14,126,239,248,222,239,1,247,102,239,3,247,102,176,21,112,162,116,166
,30,247,178,6,166,162,162,166,166,116,162,112,31,251,128,248,222,247,128,6,167,161,162,166,166,116,162,112,31,251,178,6,112,116,
116,112,31,14,249,153,119,1,247,65,249,103,21,139,132,140,133,142,133,8,247,172,253,66,5,146,122,158,125,159,139,166,139,162,162
,139,166,139,146,138,145,136,145,8,251,172,249,66,5,132,155,120,154,119,139,112,139,116,117,139,111,8,14,126,239,248,222,239,1,248
,52,239,3,247,22,176,21,112,162,116,166,30,247,178,6,166,162,162,166,31,249,66,7,166,116,162,112,30,251,178,6,112,116,116,112,112
,161,116,167,31,247,128,252,222,251,128,6,112,116,116,112,31,14,247,5,248,53,21,36,10,14,251,128,247,21,1,247,5,251,49,21,110,7,
111,162,117,166,30,248,36,6,166,162,162,166,31,168,7,166,116,162,112,30,252,36,6,112,116,117,111,31,14,248,220,247,78,1,247,151,
247,46,3,247,151,249,100,21,139,129,141,130,144,131,8,199,45,5,149,129,153,134,152,139,166,139,162,162,139,166,139,149,136,148,134
,147,8,79,234,5,132,150,123,142,126,139,112,139,116,117,139,111,8,14,122,240,247,50,236,244,239,1,247,19,239,247,141,239,3,247,19
,247,46,21,139,39,230,75,223,133,145,139,145,138,144,139,202,139,191,165,181,175,8,131,7,111,162,117,166,166,162,162,166,30,247,
202,7,139,194,117,193,99,177,99,176,83,152,84,139,77,139,80,116,89,103,128,131,131,122,139,125,139,111,161,117,167,139,150,139,150
,142,148,146,8,170,164,177,152,179,139,169,139,170,136,161,118,161,119,144,108,142,109,251,66,138,251,67,127,139,251,64,8,239,22
,37,10,14,123,238,247,250,237,247,126,119,1,247,16,239,247,181,239,3,247,16,176,21,112,162,116,166,166,162,161,167,30,143,7,177,
109,184,118,190,134,148,138,148,139,148,139,8,247,48,211,247,28,247,53,31,145,7,138,247,20,68,228,251,1,166,118,144,119,142,120,
139,81,139,89,116,99,107,8,247,131,7,167,116,161,112,112,116,116,112,30,239,252,159,21,247,17,7,161,183,175,178,183,159,159,148,
158,143,157,139,216,139,190,60,141,62,8,131,7,139,62,124,76,91,107,115,123,115,133,116,139,70,139,77,198,115,197,8,14,121,239,247
,248,239,1,247,59,239,247,93,237,3,247,59,247,166,21,139,251,19,170,44,223,94,172,121,172,132,172,139,227,139,217,195,158,215,8,
151,7,166,117,162,112,30,114,139,120,120,134,119,132,112,115,121,112,133,127,136,127,138,129,139,48,139,121,237,139,233,139,205,
153,203,185,161,156,147,162,143,163,139,8,172,139,170,130,147,116,146,118,156,121,163,139,8,167,160,161,167,31,151,7,124,200,84,
176,75,147,124,141,125,140,125,139,251,43,139,74,251,5,139,251,43,8,14,124,235,247,250,239,247,126,119,1,247,5,239,247,180,239,3
,247,5,247,161,21,139,251,36,197,32,247,14,112,159,135,158,137,158,139,197,139,190,158,180,170,140,113,162,117,165,139,8,166,162
,161,167,31,249,66,7,167,116,161,112,112,116,116,112,30,251,130,7,101,167,85,165,79,139,121,139,120,136,120,134,251,5,108,72,45,
139,251,29,8,239,22,139,205,157,189,183,169,164,156,165,146,163,139,207,139,197,83,164,84,8,251,20,7,123,89,99,101,94,121,118,130
,119,135,121,139,53,139,97,234,139,232,8,14,124,237,247,45,239,247,0,239,1,247,19,248,56,3,247,19,247,166,21,139,251,29,195,35,246
,104,164,131,173,134,175,139,8,217,223,162,205,167,116,161,111,31,126,139,127,134,130,130,126,126,123,131,118,136,127,137,127,138
,128,139,45,139,94,202,130,229,8,247,212,6,166,162,162,166,247,40,60,247,2,251,44,31,133,6,251,42,136,54,251,10,139,251,41,8,246
,201,21,156,201,181,185,210,139,226,139,165,99,153,71,8,14,248,69,239,247,29,239,1,247,199,239,3,247,39,248,119,21,112,161,116,167
,30,247,2,139,145,252,32,5,111,162,117,166,166,162,162,166,30,133,248,32,247,14,139,5,166,162,162,166,166,115,162,113,31,251,14,
148,6,139,161,139,171,143,152,151,182,189,157,192,139,8,166,162,162,166,166,116,162,112,251,41,69,61,251,42,31,130,251,2,7,112,116
,116,112,31,14,251,82,239,247,1,239,247,212,239,1,247,8,239,247,163,239,3,247,8,247,161,21,251,28,217,251,6,247,32,30,205,139,187
,161,178,172,8,139,114,139,117,5,139,117,138,117,130,119,121,98,99,127,82,139,110,139,97,139,117,149,113,151,138,177,100,139,112
,139,116,117,139,111,139,132,140,132,142,133,8,170,67,212,121,240,139,247,30,139,229,219,139,247,19,139,153,138,154,137,154,8,248
,61,7,166,116,162,112,30,114,139,116,118,137,114,107,165,99,157,91,143,131,140,131,139,131,139,8,251,42,62,251,10,251,44,31,239,
22,235,175,213,233,30,152,6,208,134,178,77,159,84,8,55,7,108,86,99,78,57,139,8,57,103,211,217,31,14,248,75,239,247,126,119,1,247
,48,239,247,106,239,3,247,48,176,21,111,162,117,166,166,162,162,166,30,247,184,7,166,191,178,197,214,139,8,210,141,70,67,31,139,
127,139,251,141,5,112,162,116,166,166,162,162,166,30,247,141,7,139,182,139,186,129,176,119,210,80,194,55,139,78,139,94,118,104,110
,8,247,126,7,166,116,162,112,112,116,117,111,30,14,248,60,239,242,247,38,18,247,73,247,172,251,34,247,37,36,239,19,224,247,73,248
,110,21,112,162,116,166,30,19,200,38,10,19,224,39,10,19,208,247,30,247,95,21,40,10,14,251,75,242,248,140,239,241,247,38,18,247,102
,247,138,251,29,247,37,251,0,239,19,228,247,45,251,21,21,95,182,129,185,30,163,139,163,142,160,141,195,144,187,188,161,184,157,176
,140,183,139,181,8,139,152,5,19,240,41,10,19,228,235,252,3,6,139,107,139,99,129,118,133,125,118,111,121,138,8,88,137,5,125,139,125
,140,125,139,8,134,6,111,117,117,111,31,19,232,247,58,249,186,21,40,10,14,248,172,119,247,149,119,1,247,65,239,3,247,65,176,21,111
,162,117,166,166,162,162,166,30,247,99,142,7,247,117,251,134,5,148,129,153,134,152,139,166,139,162,162,139,166,139,152,134,151,131
,148,8,251,98,247,113,247,64,247,50,5,149,148,145,152,139,153,139,166,116,162,112,139,126,139,127,133,130,130,8,251,88,251,69,136
,139,139,248,15,5,166,116,162,112,112,116,117,111,30,14,132,239,249,60,119,18,247,145,238,46,239,19,224,247,145,247,120,21,139,68
,147,88,173,94,183,81,204,129,241,139,8,166,162,162,166,166,116,162,112,31,113,139,101,139,125,141,74,148,128,192,139,210,8,19,208
,146,248,130,5,167,116,162,112,111,117,116,111,30,14,248,75,239,1,247,5,239,239,239,239,239,3,20,112,247,5,176,21,111,162,117,166
,166,162,162,166,30,247,170,7,178,165,224,183,30,161,139,146,114,140,121,8,251,251,7,111,162,117,166,166,162,162,166,30,247,170,
7,179,166,223,182,30,161,139,146,114,140,121,8,251,251,7,111,162,117,166,166,162,162,166,30,248,3,7,209,85,204,63,30,99,139,104,
120,113,111,116,167,104,158,98,139,108,139,113,129,117,123,130,153,124,148,122,139,8,112,116,117,111,31,14,248,75,239,1,247,19,239
,247,164,239,3,247,19,176,21,112,162,116,166,166,162,162,166,30,247,158,7,165,203,191,211,225,139,8,230,156,76,49,31,251,141,7,111
,162,117,166,165,163,162,166,30,247,141,7,247,41,81,243,251,42,30,71,139,85,114,97,102,8,148,7,166,116,161,112,112,116,117,112,30
,14,123,239,247,252,239,1,247,5,239,247,192,239,3,247,5,247,155,21,42,10,239,22,43,10,14,251,55,118,247,60,239,247,248,238,1,247
,16,239,247,181,239,3]);fileData1.push.apply(fileData1,[247,16,251,26,21,112,161,116,167,167,161,161,167,30,247,64,7,176,109,185
,118,192,136,8,156,6,247,46,221,247,13,247,44,31,139,247,37,79,238,251,14,169,117,144,119,142,119,139,82,139,90,118,100,107,8,167
,116,161,112,112,116,116,112,30,239,251,172,21,247,10,7,163,192,189,196,207,144,144,139,143,140,143,139,238,139,174,53,139,42,139
,54,107,75,66,120,126,136,127,137,127,139,62,139,96,208,112,192,8,14,251,55,118,247,60,237,247,249,239,1,247,5,239,247,180,239,3
,247,5,247,149,21,139,251,31,203,38,247,9,113,160,134,158,137,158,139,198,139,189,160,178,171,8,251,63,7,112,161,116,167,167,161
,161,167,30,249,0,7,167,116,161,112,112,116,116,112,30,100,171,90,160,82,139,119,139,119,136,117,134,251,15,109,81,40,139,251,37
,8,239,22,139,207,153,202,187,168,164,154,164,146,162,139,210,139,195,78,165,83,8,251,11,7,120,93,103,95,93,120,118,131,120,135,
121,139,55,139,94,225,139,228,8,14,248,75,239,1,247,96,239,247,84,239,3,247,96,176,21,112,162,116,166,166,162,161,167,30,247,116
,7,139,214,183,228,219,150,146,139,146,142,146,139,144,139,145,136,144,139,157,135,152,124,139,121,140,112,161,117,166,139,166,139
,162,162,139,167,8,138,214,81,202,51,139,79,139,91,119,102,106,8,167,117,160,111,112,116,117,112,30,14,123,236,247,255,239,1,247
,51,239,247,112,239,3,247,45,236,21,139,130,140,130,144,131,176,79,203,112,232,139,8,149,6,247,7,142,240,183,139,247,10,139,247,
31,251,40,152,251,3,168,109,147,108,152,139,177,8,190,197,143,185,30,165,6,169,137,173,135,146,111,144,118,159,123,163,139,166,139
,162,162,139,166,139,143,138,143,138,144,121,207,67,175,66,143,8,108,6,32,42,96,251,4,31,139,251,31,247,30,122,247,2,110,169,131
,181,129,139,102,139,91,77,119,79,139,106,139,108,145,118,149,114,151,131,177,103,139,112,139,116,117,139,111,8,14,126,239,247,232
,239,18,247,141,239,44,239,19,224,247,19,248,113,21,112,162,116,166,30,214,139,136,251,118,139,127,5,139,44,162,72,212,111,158,132
,169,134,169,139,8,201,206,158,190,166,116,162,112,31,110,139,114,119,108,139,8,137,6,72,139,185,205,31,142,247,120,247,43,139,5
,166,162,162,166,166,116,162,112,31,19,208,251,41,139,141,240,5,166,117,162,111,111,117,118,110,30,137,38,62,139,5,112,116,116,112
,31,14,123,239,248,88,119,1,247,19,239,247,164,239,3,247,19,247,134,21,139,100,140,100,148,105,163,53,205,81,245,137,8,143,6,207
,139,192,163,180,175,8,132,7,111,162,117,166,165,163,162,166,30,248,85,7,166,115,162,113,112,116,117,111,30,251,151,7,116,71,90,
64,52,139,8,134,6,42,142,128,204,139,244,8,247,121,7,166,115,162,112,113,116,115,113,30,251,121,7,14,248,172,119,1,247,8,248,122
,21,139,133,140,133,141,134,8,247,52,252,85,5,146,120,158,125,160,139,8,213,6,159,139,161,154,144,157,8,247,52,248,85,5,141,144,
140,145,139,145,139,166,116,162,112,139,118,139,118,123,134,121,8,251,40,252,51,135,139,251,40,248,51,5,132,158,122,154,116,139,
112,139,116,117,139,111,8,14,248,172,119,1,247,7,239,247,187,240,3,247,7,248,122,21,194,252,91,5,142,116,160,118,165,139,8,189,6
,162,139,156,155,146,158,8,185,247,51,185,251,51,5,145,120,157,123,163,139,8,188,6,164,139,161,159,141,163,8,195,248,91,139,143,
5,163,114,161,113,30,113,139,119,118,135,116,8,100,251,216,102,247,18,5,133,159,121,155,115,139,8,93,6,116,139,119,123,134,119,8
,102,251,18,99,247,216,5,137,163,117,159,114,139,8,112,115,116,112,31,14,248,172,119,1,247,39,176,21,112,162,116,166,30,152,139,
153,143,148,149,8,247,22,247,77,247,21,251,77,5,148,127,153,137,153,139,165,139,163,162,139,166,139,149,135,149,133,148,8,251,32
,247,92,247,22,247,84,5,144,147,142,149,139,149,139,166,116,162,112,139,126,139,125,134,130,130,8,251,10,251,67,251,10,247,67,5,
132,149,123,143,126,139,112,139,116,117,139,111,139,129,142,129,144,131,8,247,21,251,84,251,32,251,92,5,133,130,136,129,139,129,
8,14,251,75,241,248,253,119,1,247,5,251,23,21,139,114,156,120,161,134,148,137,149,138,148,139,189,139,183,170,157,176,8,247,207,
248,212,5,143,146,141,148,139,148,139,166,116,162,112,139,126,139,124,134,129,130,8,251,49,251,182,251,61,247,182,5,130,148,125,
144,126,139,112,139,116,117,139,111,139,130,141,130,144,132,8,247,84,251,223,251,0,251,90,5,133,127,130,138,129,139,8,123,6,112,
116,117,111,31,14,138,239,247,217,239,1,247,39,188,21,112,161,116,167,30,247,232,6,167,161,162,166,166,116,162,112,31,251,151,139
,247,164,247,194,5,148,148,144,151,139,151,8,179,7,167,117,161,111,30,251,200,6,111,117,117,111,111,162,117,166,31,247,124,139,251
,170,251,200,5,131,130,134,128,139,127,8,14,126,239,247,135,239,247,135,239,1,247,176,239,3,20,224,247,5,248,15,21,111,162,118,166
,30,175,139,181,139,161,117,159,118,140,109,139,111,139,41,161,62,204,100,184,112,220,138,205,139,8,166,162,162,166,166,116,162,
112,31,91,139,68,139,118,152,102,162,137,186,139,198,139,193,127,196,100,178,183,172,146,213,139,196,139,172,139,177,158,164,162
,171,185,141,196,139,8,173,6,167,161,162,166,166,116,162,112,31,251,8,139,64,131,90,72,107,95,132,83,139,84,8,129,7,139,110,138,
108,124,121,118,114,93,139,101,139,8,112,116,116,111,31,14,249,153,119,1,247,205,239,3,247,205,251,3,21,111,161,117,167,167,161,
162,166,30,249,214,7,166,116,162,112,112,116,117,111,30,14,126,239,247,135,239,247,135,239,1,247,233,239,3,20,224,247,5,176,21,111
,162,117,166,30,205,139,220,139,184,167,204,178,160,215,139,238,139,167,140,169,160,160,161,161,181,139,175,139,8,166,162,161,166
,166,116,163,112,31,135,6,102,139,96,139,118,164,122,159,139,176,139,170,139,194,133,195,107,183,90,206,63,147,251,7,139,8,112,116
,117,111,111,161,117,167,31,178,139,196,139,160,132,190,124,149,93,139,77,139,84,146,63,183,106,100,100,127,82,139,85,139,106,139
,101,129,115,120,95,90,136,72,139,8,106,6,112,116,117,111,31,14,248,171,239,125,240,107,159,18,139,238,247,166,238,19,88,247,19,
248,233,21,44,10,19,184,45,10,19,88,46,10,14,247,191,247,37,18,247,182,247,38,251,15,239,19,192,248,216,247,241,21,47,10,162,252
,201,21,33,10,14,247,56,239,247,124,239,1,247,39,239,247,124,239,3,247,118,247,72,21,111,162,117,166,30,152,139,152,144,148,149,
8,190,190,5,172,119,178,127,181,139,180,139,177,150,173,160,8,190,88,5,149,129,152,134,152,139,166,139,162,162,139,166,139,152,134
,152,129,148,8,87,191,5,160,172,151,178,139,180,139,180,126,178,119,172,8,191,191,5,149,148,144,152,139,152,139,166,116,162,112,
139,126,139,126,134,129,129,8,88,88,5,106,159,100,151,98,139,97,139,100,127,106,119,8,88,190,5,130,149,126,144,126,139,112,139,116
,117,139,111,139,126,144,126,148,130,8,191,87,5,119,106,127,100,139,98,139,97,151,101,159,106,8,87,87,5,130,130,134,126,139,126,
8,247,26,247,92,21,203,191,191,203,203,191,87,75,75,84,87,78,75,87,191,203,30,14,247,134,248,24,21,139,32,241,102,238,131,204,134
,247,6,147,139,65,139,75,73,126,78,138,8,133,6,69,139,88,156,119,190,131,157,121,153,118,139,111,139,117,116,139,111,139,133,140
,134,141,133,174,52,217,94,247,12,139,8,147,6,247,10,141,247,1,190,139,247,12,8,144,7,138,184,125,172,115,164,162,165,155,172,139
,179,8,143,7,136,241,50,181,44,148,76,145,35,130,139,212,139,202,204,155,201,139,168,139,166,134,158,126,169,119,139,88,186,139,
165,139,163,163,139,165,8,139,145,138,144,137,144,114,216,66,185,38,139,251,16,139,36,82,139,251,14,139,100,149,109,155,116,110,
110,116,100,139,93,8,239,22,139,163,160,161,158,152,181,126,189,134,189,134,178,136,198,133,139,95,139,112,123,126,122,128,120,144
,118,142,118,141,84,144,251,23,131,139,200,8,14,247,165,247,49,1,247,119,239,211,239,3,248,90,247,215,21,112,161,116,167,167,161
,162,166,30,196,7,166,116,162,112,112,116,116,112,30,247,64,82,21,111,161,117,167,166,162,162,166,30,196,7,166,115,162,113,112,116
,117,111,30,14,139,28,249,67,247,192,247,192,247,192,247,192,247,192,248,86,247,192,247,192,247,192,247,192,247,192,1,28,249,67,
247,192,247,192,247,192,247,192,247,192,248,86,247,192,247,192,247,192,247,192,247,192,3,247,117,4,247,16,240,38,251,16,251,16,38
,38,251,16,251,16,38,240,247,16,247,16,240,240,247,16,31,247,192,4,251,182,251,127,251,127,251,182,251,182,247,127,251,127,247,182
,247,182,247,127,247,127,247,182,247,182,251,127,247,127,251,182,31,135,247,192,21,248,89,248,12,252,4,252,89,252,89,252,12,252,
12,252,89,252,89,252,4,248,12,248,89,248,89,248,4,248,4,248,89,31,247,192,4,252,255,252,138,252,138,252,255,252,255,248,138,252,
146,248,255,248,255,248,146,248,146,248,255,248,255,252,146,248,138,252,255,31,247,192,4,249,165,249,24,253,16,253,165,253,165,253
,24,253,24,253,165,253,165,253,16,249,24,249,165,249,165,249,16,249,16,249,165,31,143,247,192,21,254,74,253,155,253,155,254,74,254
,74,249,155,253,155,250,74,250,74,249,155,249,155,250,74,250,74,253,155,249,155,254,74,31,14,248,159,251,92,251,16,21,247,92,39,
247,92,239,139,247,140,251,92,239,251,92,39,5,14,248,172,239,1,247,146,248,222,21,112,161,116,167,30,248,8,6,166,162,162,166,166
,115,162,113,31,252,8,6,112,116,116,112,31,14,248,137,247,78,1,247,205,247,46,3,249,6,248,187,21,111,162,117,166,30,152,139,153,
144,148,148,8,199,234,5,144,147,142,149,139,148,139,166,116,162,112,139,126,139,125,135,130,129,8,79,44,5,134,131,136,130,139,129
,8,14,251,228,239,239,247,89,1,247,193,239,145,239,3,248,238,150,21,42,7,112,162,116,166,30,142,139,143,139,5,166,161,117,111,112
,116,116,111,31,137,139,136,139,5,111,117,116,112,31,139,112,161,118,165,137,8,146,6,222,207,205,223,31,139,208,94,195,78,157,8,
193,7,167,117,161,111,111,117,116,112,30,14,251,113,239,248,173,247,37,18,247,62,239,159,247,38,251,15,239,210,239,19,236,247,232
,107,21,125,7,146,34,221,69,247,5,139,8,148,6,247,1,143,233,213,139,245,8,150,7,137,165,118,160,112,139,8,111,117,116,112,31,139
,137,139,135,5,83,83,109,84,30,87,139,89,165,138,194,8,143,7,139,186,158,162,165,161,184,177,192,177,139,210,8,222,7,166,116,162
,112,112,116,117,111,30,56,7,139,112,101,116,114,118,8,96,102,102,87,139,64,8,19,244,247,12,248,134,21,47,10,14,247,35,240,47,238
,248,1,247,49,79,119,18,247,5,239,247,192,239,19,44,247,118,249,46,21,48,10,142,253,63,21,111,162,117,166,30,163,139,155,155,146
,159,8,19,76,177,247,18,5,19,156,247,119,130,174,251,9,5,144,119,159,123,161,139,166,139,162,162,139,166,139,144,138,144,138,143
,8,251,78,249,3,5,133,157,121,157,115,139,8,116,6,115,139,123,124,132,121,8,251,78,253,6,5,137,135,139,134,139,134,8,19,76,247,56
,247,103,21,222,247,167,5,19,140,223,251,174,5,205,248,58,21,19,44,48,10,14,140,239,237,239,156,239,247,80,239,1,251,2,178,21,114
,165,115,165,30,163,139,157,157,146,158,8,183,247,64,247,95,139,180,251,52,5,145,118,157,122,164,139,8,247,215,6,166,162,162,166
,166,117,162,111,31,251,177,139,83,247,107,247,233,139,5,167,161,162,166,166,116,162,112,31,252,2,139,90,247,80,248,51,139,5,166
,162,162,166,166,117,162,111,31,252,186,6,115,139,120,122,134,119,8,147,252,4,21,214,247,183,215,251,183,5,14,126,239,248,68,238
,137,247,49,18,247,5,239,47,239,247,175,239,48,239,19,176,247,118,249,46,21,48,10,147,252,56,21,139,251,12,178,46,208,84,172,113
,181,117,198,139,188,139,187,156,176,170,208,195,177,229,139,247,14,139,247,56,63,247,43,251,57,139,116,139,116,136,117,131,8,251
,3,100,76,251,10,139,251,39,8,239,22,241,178,247,6,242,242,177,251,6,37,35,100,251,4,37,30,120,139,124,148,123,142,75,172,111,218
,139,231,8,19,162,247,184,247,255,21,48,10,14,126,239,248,170,239,1,247,10,237,247,186,239,3,247,66,119,21,112,162,116,166,30,157
,139,155,150,148,152,8,191,226,5,175,105,183,119,190,139,247,53,139,224,247,88,140,247,63,8,145,7,139,218,121,218,106,203,8,211,
247,13,5,144,146,141,148,139,148,139,167,117,161,112,139,125,139,126,134,129,130,8,81,44,5,103,172,96,158,87,139,99,139,90,121,109
,115,57,73,95,251,20,139,251,22,139,60,155,59,173,72,8,65,251,15,5,135,131,136,130,139,130,8,247,21,248,10,21,144,7,139,218,161,
222,179,191,157,162,169,164,176,139,171,139,165,124,160,115,8,251,102,251,238,5,128,179,134,181,139,175,8,207,251,119,21,247,102
,247,241,5,150,98,144,96,139,101,139,35,93,251,55,38,139,107,139,113,155,118,163,8,14,126,239,248,222,239,18,247,5,239,39,247,43
,247,89,247,44,39,239,19,228,247,118,247,178,21,251,77,207,251,6,247,74,247,74,207,247,7,247,76,30,247,143,7,166,116,162,112,112
,116,117,111,30,251,143,7,139,103,138,102,130,104,124,77,89,110,64,139,87,139,95,154,115,170,113,173,135,203,139,194,8,247,143,7
,166,116,162,112,112,116,117,111,30,247,78,4,111,161,117,167,30,19,224,189,6,19,208,168,161,161,167,31,19,224,167,116,161,111,30
,89,6,112,116,117,111,31,19,200,247,240,22,112,161,116,167,30,191,6,167,161,162,166,166,116,162,112,31,87,6,112,116,116,112,31,14
,132,239,247,140,247,8,247,105,239,18,247,28,239,247,146,239,62,237,19,248,247,164,176,21,111,162,117,166,166,162,162,166,30,248
,56,7,247,10,146,234,247,12,211,194,105,68,30,139,81,97,92,89,136,114,137,119,118,139,114,8,121,7,112,161,116,165,30,141,139,142
,139,141,139,5,19,244,210,139,172,81,140,72,8,135,7,139,83,118,77,82,138,114,138,116,116,139,113,139,113,164,115,165,139,247,9,142
,195,245,139,247,0,139,218,109,219,79,179,8,19,248,180,175,167,194,139,203,8,142,7,137,247,18,44,216,251,22,139,8,251,76,96,251,
24,251,73,31,14,122,240,247,50,236,244,239,154,247,49,18,247,19,239,139,239,211,239,116,239,19,249,247,146,247,46,21,139,39,230,
75,223,133,145,139,145,138,144,139,202,139,191,165,181,175,8,131,7,111,162,117,166,166,162,162,166,30,247,202,7,139,194,117,193,
99,177,99,176,83,152,84,139,77,139,80,116,89,103,128,131,131,122,139,125,139,111,161,117,167,139,150,139,150,142,148,146,8,170,164
,177,152,179,139,169,139,170,136,161,118,161,119,144,108,142,109,8,251,66,138,251,67,127,139,251,64,8,239,22,37,10,19,244,248,90
,4,49,10,247,64,81,21,50,10,14,124,237,247,45,239,247,0,239,1,103,239,3,67,247,46,21,139,39,230,75,223,133,145,139,145,138,144,139
,203,139,190,166,181,175,8,130,7,111,162,117,166,30,164,139,160,158,143,163,157,125,160,129,162,131,164,131,174,134,175,139,8,217
,224,162,205,166,116,162,111,31,126,139,125,134,129,130,8,137,7,129,125,118,134,122,136,127,137,127,138,128,139,45,139,94,202,130
,229,8,247,211,6,167,161,161,167,247,40,62,247,2,251,45,31,133,6,64,137,81,110,99,92,103,191,71,165,68,139,77,139,78,119,91,100,
127,130,132,125,139,123,139,112,161,116,167,139,150,139,150,142,148,146,8,170,164,177,152,179,139,169,139,170,136,161,118,161,119
,145,108,141,109,251,65,138,251,68,126,139,251,63,8,239,22,214,229,152,229,30,163,139,162,138,161,138,8,99,7,108,89,89,73,64,139
,8,129,6,104,141,91,164,139,182,8,247,248,247,74,21,51,10,14,123,239,247,252,239,154,247,49,1,247,5,239,153,239,210,240,153,239,
3,247,118,247,155,21,42,10,239,22,43,10,153,247,237,21,49,10,247,63,81,21,113,162,116,166,166,163,161,166,30,197,7,166,114,162,113
,113,115,116,112,30,14,123,239,247,252,239,1,247,5,239,247,192,239,3,247,32,116,21,112,162,116,166,30,152,139,152,144,148,149,8,
208,220,5,177,114,185,125,194,139,247,52,139,229,247,15,139,247,48,139,203,124,197,111,185,8,213,227,5,146,148,144,150,139,151,139
,166,117,162,111,139,125,139,127,134,129,130,8,68,57,5,102,164,94,153,85,139,251,55,139,52,251,15,139,251,50,139,76,153,81,167,93
,8,66,52,5,131,130,135,128,139,127,8,247,35,247,178,21,238,187,221,241,30,167,139,163,133,159,128,8,251,101,251,139,5,130,164,135
,167,139,169,8,216,251,54,21,247,101,247,139,5,148,114,144,110,139,108,139,40,92,59,36,139,111,139,114,145,119,150,8,14,123,239,
248,88,119,182,247,49,18,247,19,239,139,239,211,239,139,239,19,242,247,146,247,134,21,139,100,140,100,148,105,163,53,205,81,245,
137,8,143,6,207,139,192,163,180,176,8,131,7,111,162,117,166,165,163,162,166,30,248,85,7,166,115,162,113,112,116,117,111,30,251,151
,7,116,71,90,64,52,139,8,134,6,42,142,128,204,139,244,8,247,121,7,166,115,162,112,113,116,115,113,30,251,121,7,239,247,243,21,49
,10,247,64,81,21,50,10,14,248,60,239,18,247,73,247,172,39,239,19,192,247,254,248,110,21,112,162,116,166,30,19,160,38,10,19,192,39
,10,14,126,239,53,239,247,107,239,247,77,239,59,239,18,58,239,247,186,239,19,166,251,54,247,246,21,140,251,63,226,251,88,247,51,
139,198,139,189,166,177,182,8,133,7,19,118,111,162,117,166,30,247,235,6,166,162,162,166,166,117,162,111,31,251,185,247,107,247,136
,6,167,160,161,167,166,117,162,112,31,251,136,247,77,247,185,6,166,162,162,166,166,117,162,111,31,251,235,6,111,139,119,119,137,
112,8,19,174,100,180,90,165,80,139,8,251,60,60,251,83,251,63,31,239,134,21,145,7,139,217,157,223,181,189,162,166,165,161,177,139
,240,139,184,251,41,140,251,3,8,132,7,138,35,95,251,55,37,139,37,139,95,247,55,138,243,8,14,123,239,247,44,239,247,0,239,1,52,239
,3,251,66,247,155,21,251,50,228,251,13,247,53,30,229,139,206,177,182,201,165,98,177,110,187,123,163,131,174,134,175,139,8,218,224
,162,205,166,116,162,111,31,126,139,124,135,130,129,127,125,123,132,119,136,127,137,127,138,128,139,45,139,94,202,130,229,8,247,
211,6,167,161,161,167,247,40,62,247,2,251,45,31,133,6,54,137,76,102,99,80,97,199,72,177,51,139,8,251,55,52,251,15,251,50,31,239,
22,238,187,221,241,240,188,58,39,40,91,59,37,37,91,219,238,30,248,43,212,21,51,10,14,251,71,239,248,139,239,18,247,102,247,138,39
,239,19,208,247,198,251,21,21,111,162,117,166,30,177,139,209,139,145,141,239,162,178,229,139,247,13,8,19,224,41,10,19,208,235,252
,3,6,139,107,139,99,129,117,122,101,106,134,97,139,123,139,122,140,121,139,8,111,117,117,111,31,14,247,5,248,53,21,36,10,14,248,
196,118,1,247,118,250,12,21,139,130,142,129,144,131,8,247,97,251,201,5,149,130,153,135,152,139,152,139,152,143,148,139,8,247,94,
247,195,5,146,149,145,150,139,151,139,166,117,162,111,139,126,139,127,133,129,130,8,251,57,251,73,251,57,247,74,5,130,149,126,143
,126,139,8,111,117,117,111,31,14,249,33,239,1,247,5,239,247,192,239,3,247,118,250,9,21,149,251,23,247,1,38,247,23,139,247,23,139
,247,1,240,149,247,23,8,142,7,166,117,162,111,30,112,139,118,119,137,113,133,61,74,78,60,139,60,139,74,200,133,217,137,164,118,160
,112,139,8,111,117,117,111,31,14,248,112,247,37,1,247,182,247,38,3,248,216,248,162,21,47,10,14,248,171,239,125,240,127,119,18,139
,238,247,166,238,19,88,247,19,248,233,21,44,10,19,184,45,10,19,88,46,10,14,161,118,248,128,247,112,39,239,18,247,33,239,247,164,
239,19,184,247,174,190,21,112,162,116,166,166,162,161,167,30,248,198,247,164,69,7,19,216,111,161,117,167,167,161,162,166,30,247,
12,7,166,116,162,112,30,19,184,252,8,6,112,116,116,112,31,14,126,239,247,109,239,247,109,239,1,247,8,239,179,247,106,179,239,3,20
,252,247,124,247,246,21,35,10,239,135,21,144,7,139,236,170,236,198,186,154,151,160,148,160,139,8,243,182,251,47,251,4,35,93,251,
55,38,31,37,139,95,247,55,138,243,8,179,22,111,162,117,166,30,247,6,6,166,162,162,166,166,117,162,111,31,251,6,6,111,117,117,111
,31,14,249,87,119,1,247,33,247,50,247,20,247,49,3,247,174,179,21,112,162,116,166,30,197,6,166,162,162,166,31,139,154,132,153,127
,148,8,222,247,249,222,251,249,5,127,130,132,125,139,124,8,112,162,116,166,30,196,6,166,162,161,167,31,139,163,122,157,117,145,8
,251,25,248,216,5,134,160,120,157,114,139,116,139,118,122,134,117,8,251,28,252,216,5,118,133,123,119,139,117,8,14,140,239,247,107
,239,247,77,239,1,247,140,190,21,52,10,248,236,4,52,10,199,251,177,21,112,161,116,167,30,247,149,6,167,161,161,167,167,116,161,112
,31,251,149,6,112,116,116,112,31,14,248,249,239,1,247,33,239,247,135,239,3,247,118,249,43,21,139,119,150,122,156,131,8,252,214,7
,112,162,116,166,166,162,161,167,30,248,209,247,135,252,209,7,112,162,116,166,166,162,161,167,30,248,214,7,156,147,151,156,139,159
,8,166,116,162,112,30,252,36,6,112,116,117,111,31,14,140,239,39,247,21,248,79,247,20,39,239,18,19,128,247,210,190,21,111,162,117
,166,30,19,64,247,234,6,166,162,161,167,31,168,7,167,116,161,112,30,19,144,120,139,121,127,131,122,8,251,118,139,226,247,125,5,141
,144,140,145,139,145,139,145,138,145,139,145,8,52,247,124,247,118,139,5,19,32,147,123,156,127,159,139,8,167,161,161,167,31,167,7
,167,117,161,111,30,19,144,251,234,6,111,117,117,111,31,139,133,140,133,141,134,8,244,251,175,34,251,174,5,137,133,138,133,139,133
,8,14,248,216,237,1,247,205,239,3,247,204,248,207,21,111,162,117,166,30,152,139,152,145,148,148,152,152,139,170,161,139,8,144,6,
165,134,145,107,139,110,8,252,113,7,111,162,117,166,166,162,162,166,30,248,113,7,139,168,145,170,165,145,8,143,6,150,139,148,132
,141,128,143,117,159,120,164,139,8,166,161,162,166,31,148,7,128,202,86,174,84,139,108,139,108,128,114,116,114,162,108,150,108,139
,84,139,85,104,128,76,8,14,127,242,18,247,5,239,210,247,49,251,20,239,239,239,19,216,247,118,247,155,21,139,251,32,210,251,4,247
,21,116,8,110,7,19,232,122,131,127,122,139,119,8,112,162,116,166,30,196,6,166,162,161,167,31,19,216,139,159,128,156,122,147,8,168
,7,247,20,162,211,247,5,139,247,31,139,247,32,66,247,5,251,19,163,8,168,7,19,232,155,147,151,156,139,159,8,167,117,161,111,30,82
,6,111,117,116,112,31,19,216,139,120,151,121,156,131,8,110,7,251,19,112,66,36,139,251,39,8,239,22,139,204,161,199,181,169,149,146
,152,143,152,144,8,251,235,7,71,161,107,208,139,220,8,247,92,251,64,21,247,237,7,206,117,172,70,139,57,139,58,107,70,71,117,8,14
,247,205,239,196,239,3,247,204,248,207,21,147,251,38,5,152,251,52,142,251,121,247,25,95,8,90,7,111,162,117,166,166,162,162,166,30
,188,7,235,174,170,247,28,151,247,10,8,157,247,182,139,142,5,165,116,160,112,30,112,139,118,118,137,113,134,42,133,45,130,46,135
,91,133,58,112,94,8,248,106,7,166,116,162,112,112,116,117,111,30,252,106,7,112,183,133,220,135,188,131,232,132,233,134,236,137,165
,118,160,112,139,8,111,117,117,111,31,14,249,101,239,18,247,6,238,125,247,20,211,247,20,126,235,19,192,247,120,248,201,21,139,107
,143,106,146,104,165,251,24,169,251,23,173,251,22,8,19,160,129,130,133,125,139,124,8,111,162,117,166,30,167,6,166,162,162,166,31
,139,144,138,144,138,143,100,247,36,105,247,37,110,247,39,8,19,200,134,165,134,165,139,166,8,145,7,141,225,200,205,226,139,232,139
,197,66,139,48,139,117,135,115,132,116,8,19,144,35,252,78,139,127,5,111,162,117,166,30,167,6,166,162,162,166,31,139,154,132,152,
128,149,8,230,248,26,5,19,200,146,169,142,168,139,167,139,247,43,44,247,13,251,44,139,72,139,74,115,92,91,8,89,89,119,77,139,67,
8,14,249,81,119,1,247,205,239,3,247,232,248,145,21,112,161,116,167,30,152,139,152,144,148,148,8,197,196,139,252,126,5,111,162,117
,166,166,162,162,166,30,139,248,126,196,82,5,149,130,151,134,153,139,167,139,161,162,139,166,139,152,133,151,130,149,8,251,35,247
,35,5,130,148,126,144,126,139,124,139,127,134,130,139,8,251,34,251,35,5,129,129,134,127,139,126,8,14,249,81,119,1,247,205,239,3,
247,232,247,75,21,139,126,144,126,149,129,8,247,34,251,34,5,149,129,152,134,152,139,152,139,152,144,148,139,8,247,35,247,34,5,148
,149,145,152,139,152,139,166,116,162,112,139,125,139,127,134,129,129,8,82,82,139,248,126,5,166,117,162,111,111,117,117,111,30,139
,252,126,81,196,5,130,149,126,144,126,139,8,112,116,116,112,31,14,129,239,248,253,119,1,247,172,179,21,114,162,114,167,30,247,235
,6,166,163,162,166,31,251,66,249,10,5,133,159,119,156,117,139,117,139,117,123,134,118,8,83,252,216,21,244,248,16,244,252,16,5,14
,247,17,4,247,142,251,17,247,142,247,17,139,247,142,251,142,247,17,251,142,251,17,5,14,14,248,137,247,78,1,247,205,239,3,249,6,248
,187,21,111,162,117,166,166,162,162,166,30,225,7,166,116,162,112,112,116,117,111,30,14,248,137,247,78,1,247,151,247,46,3,248,154
,249,17,21,139,130,141,129,144,131,8,200,45,5,149,130,152,133,152,139,166,139,162,162,139,166,139,149,136,148,134,147,8,79,234,5
,132,150,123,142,126,139,112,139,116,117,139,111,8,14,248,232,247,66,1,247,111,239,227,239,3,248,74,249,26,21,111,161,117,167,167
,161,162,166,30,213,7,166,116,162,112,112,116,117,111,30,247,80,65,21,112,161,116,167,167,161,162,166,30,213,7,166,116,162,112,112
,116,116,112,30,14,146,239,3,153,68,21,112,161,116,167,167,161,162,166,30,249,94,7,166,116,162,112,112,116,116,112,30,14,249,103
,20,139,21,121,156,248,173,147,247,49,159,188,142,6,251,76,140,7,30,10,3,150,37,255,12,9,155,12,10,239,10,239,167,157,150,156,145
,145,150,162,239,12,12,239,11,239,167,157,147,143,155,173,145,168,247,3,12,13,30,10,6,255,12,18,28,0,70,19,0,21,2,0,1,0,28,0,50,
0,79,0,124,0,195,0,226,0,241,1,2,1,29,1,50,1,80,1,98,1,129,1,180,1,194,1,221,1,242,2,7,2,28,2,42,2,68,112,162,116,166,30,185,6,166
,162,162,166,31,185,7,166,116,162,112,30,93,6,112,116,116,112,31,11,111,161,117,167,167,161,162,166,30,248,27,7,166,116,162,112,
112,116,117,111,30,11,111,161,117,167,30,247,0,6,167,161,162,166,31,219,7,166,116,162,112,30,251,0,6,112,116,117,111,31,11,140,251
,63,226,251,88,247,51,139,247,53,139,224,247,88,140,247,63,8,142,7,247,70,51,247,78,251,51,30,99,139,90,122,109,114,59,74,91,251
,14,139,251,26,8,11,111,162,117,166,30,152,139,152,144,148,149,8,247,56,247,66,247,57,251,66,5,149,129,152,134,152,139,166,139,162
,162,139,166,139,149,136,149,133,147,8,251,97,247,200,5,131,150,123,142,126,139,126,139,126,135,129,139,8,251,97,251,200,5,134,131
,136,129,139,129,8,11,214,229,152,229,30,163,139,162,138,161,138,8,99,7,107,87,87,75,64,139,8,131,6,105,141,91,164,139,182,8,11,
247,22,252,23,6,112,162,116,166,166,162,161,167,30,11,248,73,7,167,117,161,111,30,251,72,6,111,117,116,112,31,11,111,162,117,166
,30,184,6,166,162,161,167,31,185,7,167,116,161,112,30,94,6,112,116,117,111,31,11,248,53,7,166,117,162,111,30,251,38,6,111,117,116
,112,112,162,116,166,31,11,251,50,228,251,13,247,53,247,52,229,247,15,247,48,247,50,47,247,15,251,50,251,55,52,251,15,251,50,30,
11,238,187,221,241,240,188,58,39,40,92,59,36,36,92,219,238,30,11,112,162,116,166,30,163,139,160,157,143,161,145,164,153,148,155,
139,163,139,168,121,157,125,172,114,175,115,181,135,8,11,144,139,143,138,144,139,206,139,198,187,152,206,140,142,140,143,139,142
,139,166,115,162,113,139,116,139,117,121,135,117,134,113,126,130,122,139,8,115,139,109,158,121,153,106,164,102,163,98,143,8,11,134
,139,135,140,134,139,72,139,79,91,125,72,8,11,112,161,116,167,30,185,6,167,161,162,166,31,184,7,166,117,162,111,30,93,6,111,117,
116,112,31,11,111,161,117,167,167,161,162,166,30,196,7,166,116,162,112,112,116,117,111,30,11,113,162,116,166,166,162,162,165,30,
197,7,166,116,162,112,112,116,116,112,30,11,112,161,117,167,166,162,162,165,30,197,7,166,115,162,113,112,116,117,111,30,11,155,201
,181,185,209,139,226,139,167,99,154,71,8,11,112,162,116,166,30,248,13,6,166,162,161,167,167,117,161,111,31,252,13,6,111,117,116,
112,31,11,0,0,0,0,1,0,0,0,14,0,0,0,24,0,0,0,0,0,2,0,1,0,1,0,144,0,1,0,4,0,0,0,2,0,0,0,1,0,0,0,10,0,64,0,142,0,2,68,70,76,84,0,14
,108,97,116,110,0,34,0,4,0,0,0,0,255,255,0,5,0,0,0,1,0,2,0,3,0,4,0,4,0,0,0,0,255,255,0,5,0,0,0,1,0,2,0,3,0,4,0,5,97,97,108,116,0
,32,115,115,48,49,0,38,115,115,48,50,0,44,115,115,48,51,0,50,115,115,48,52,0,56,0,0,0,1,0,0,0,24,0,1,0,1,0,22,0,1,0,2,0,20,0,1,0
,3,0,18,0,1,0,4,0,0,1,0,0,0,1,1,0,0,1,2,0,0,1,3,0,5,0,12,0,20,0,28,0,36,0,44,0,3,0,0,0,1,0,40,0,1,0,0,0,1,0,82,0,1,0,0,0,1,0,86,
0,1,0,0,0,1,0,90,0,1,0,0,0,1,0,94,0,1,0,38,0,4,0,14,0,20,0,26,0,32,0,2,0,3,0,143,0,2,0,8,0,141,0,2,0,65,0,142,0,2,0,93,0,144,0,1
,0,4,0,3,0,8,0,65,0,93,0,1,0,6,0,77,0,1,0,1,0,65,0,1,0,6,0,140,0,1,0,1,0,3,0,1,0,6,0,133,0,1,0,1,0,8,0,1,0,6,0,51,0,1,0,1,0,93,0
,1,0,0,0,10,0,44,0,46,0,2,68,70,76,84,0,14,108,97,116,110,0,24,0,4,0,0,0,0,255,255,0,0,0,4,0,0,0,0,255,255,0,0,0,0,0,0,0,0,0,1,0
,0,0,0,204,61,162,207,0,0,0,0,204,138,51,83,0,0,0,0,211,135,133,166,2,211,0,0,2,211,0,0,2,211,1,34,2,211,0,161,2,211,0,113,2,211
,0,113,2,211,0,113,2,211,0,113,2,211,1,20,2,211,1,0,2,211,0,181,2,211,0,113,2,211,0,113,2,211,0,159,2,211,0,113,2,211,0,241,2,211
,0,173,2,211,0,113,2,211,0,144,2,211,0,130,2,211,0,113,2,211,0,113,2,211,0,139,2,211,0,113,2,211,0,113,2,211,0,113,2,211,0,113,2
,211,1,3,2,211,0,156,2,211,0,113,2,211,0,113,2,211,0,113,2,211,0,141,2,211,0,113,2,211,0,119,2,211,0,113,2,211,0,161,2,211,0,164
,2,211,0,159,2,211,0,210,2,211,0,121,2,211,0,141,2,211,0,170,2,211,0,130,2,211,0,127,2,211,0,141,2,211,0,113,2,211,0,127,2,211,0
,116,2,211,0,141,2,211,0,115,2,211,0,153,2,211,0,147,2,211,0,113,2,211,0,127,2,211,0,112,2,211,0,113,2,211,0,133,2,211,0,136,2,211
,0,141,2,211,0,210,2,211,0,173,2,211,0,130,2,211,0,113,2,211,0,113,2,211,1,3,2,211,0,127,2,211,0,124,2,211,0,167,2,211,0,113,2,211
,0,127,2,211,0,147,2,211,0,116,2,211,0,156,2,211,0,181,2,211,0,153,2,211,0,173,2,211,0,253,2,211,0,113,2,211,0,127,2,211,0,113,2
,211,0,124,2,211,0,113,2,211,0,204,2,211,0,153,2,211,0,127,2,211,0,127,2,211,0,116,2,211,0,115,2,211,0,147,2,211,0,113,2,211,0,147
,2,211,0,113,2,211,1,57,2,211,0,113,2,211,0,127,2,211,2,68,2,211,0,226,2,211,0,242,2,211,1,198,0,0,249,67,2,11,255,56,2,211,0,254
,2,114,2,90,1,84,0,226,255,146,0,226,0,174,0,226,1,16,0,254,255,184,0,226,0,140,0,254,1,106,255,94,255,82,1,50,0,113,0,226,0,226
,2,68,0,127,1,26,0,232,1,26,0,248,0,226,1,62,1,56,0,226,1,56,0,228,1,84,1,84,1,24,0,0,0,0,2,114,2,6,1,182,0,14]);Module["FS_createDataFile
"]("/","OCRB.otf",fileData1,true,true)}if(Module["calledRun"]){runWithFS()}else{if(!Module[
x22;preRun"])Module["preRun"]=[];Module["preRun"].push(runWithFS)}});loadPackage({"files":[]})}))();
var Module;if(!Module)Module=(typeof Module!=="undefined"?Module:null)||{};var moduleOverrides={};for(var key in Module
){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;
var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"
;]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER
=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"
;]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("The provided Module['ENVIRONMENT'] value
is not valid. It must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER
=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require===
x22;function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&
;&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["
;print"]=console.log;if(!Module["printErr"])Module["printErr"]=console.warn;var nodeFS;var nodePath;Module
["read"]=function read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("
path");filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);if(!ret&
x26;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){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(
ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process
["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function read(){throw"no read() available (jsc?)"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}}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};Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response)}else{onerror()}};xhr.onerror=onerror;xhr.send(null)};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.warn(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&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"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var Runtime={setTempRet0:(function(value){tempRet0=value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),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}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)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),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}),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[sig]){Runtime.funcWrappers[sig]={}}var sigCache=Runtime.funcWrappers[sig];if(!sigCache[func]){sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func,arguments)}}return sigCache[func]}),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+15&-16;return ret}),staticAlloc:(function(size){var ret=STATICTOP;STATICTOP=STATICTOP+size|0;STATICTOP=STATICTOP+15&-16;return ret}),dynamicAlloc:(function(size){var ret=DYNAMICTOP;DYNAMICTOP=DYNAMICTOP+size|0;DYNAMICTOP=DYNAMICTOP+15&-16;if(DYNAMICTOP>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){DYNAMICTOP=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module["Runtime"]=Runtime;var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];if(!func){try{func=eval("_"+ident)}catch(e){}}assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)");return func}var cwrap,ccall;((function(){var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"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){ret=Runtime.stackAlloc((str.length<<2)+1);writeStringToMemory(str,ret)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;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){if(opts&&opts.async){EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(stack)}));return}Runtime.stackRestore(stack)}return ret};var sourceRegex=/^function\s*[a-zA-Z$_0-9]*\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/;function parseJSFunc(jsfunc){var parsed=jsfunc.toString().match(sourceRegex).slice(1);return{arguments:parsed[0],body:parsed[1],returnValue:parsed[2]}}var JSsource=null;function ensureJSsource(){if(!JSsource){JSsource={};for(var fun in JSfuncs){if(JSfuncs.hasOwnProperty(fun)){JSsource[fun]=parseJSFunc(JSfuncs[fun])}}}}cwrap=function cwrap(ident,returnType,argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident);var numericArgs=argTypes.every((function(type){return type==="number"}));var numericRet=returnType!=="string";if(numericRet&&numericArgs){return cfunc}var argNames=argTypes.map((function(x,i){return"$"+i}));var funcstr="(function("+argNames.join(",")+") {";var nargs=argTypes.length;if(!numericArgs){ensureJSsource();funcstr+="var stack = "+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"];funcstr+="var "+convertCode.arguments+" = "+arg+";";funcstr+=convertCode.body+";";funcstr+=arg+"=("+convertCode.returnValue+");"}}var cfuncname=parseJSFunc((function(){return cfunc})).returnValue;funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");";if(!numericRet){var strgfy=parseJSFunc((function(){return Pointer_stringify})).returnValue;funcstr+="ret = "+strgfy+"(ret);"}if(!numericArgs){ensureJSsource();funcstr+=JSsource["stackRestore"].body.replace("()","(stack)")+";"}funcstr+="return ret})";return eval(funcstr)}}))();Module["ccall"]=ccall;Module["cwrap"]=cwrap;function setValue(ptr,value,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";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?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}Module["setValue"]=setValue;function getValue(ptr,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";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;var ALLOC_STACK=1;var ALLOC_STATIC=2;var ALLOC_DYNAMIC=3;var ALLOC_NONE=4;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;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:Runtime.staticAlloc,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";setValue(ret+i,curr,type);if(previousType!==type){typeSize=Runtime.getNativeTypeSize(type);previousType=type}i+=typeSize}return ret}Module["allocate"]=allocate;function getMemory(size){if(!staticSealed)return Runtime.staticAlloc(size);if(typeof _sbrk!=="undefined"&&!_sbrk.called||!runtimeInitialized)return Runtime.dynamicAlloc(size);return _malloc(size)}Module["getMemory"]=getMemory;function Pointer_stringify(ptr,length){if(length===0||!ptr)return"";var hasUtf=0;var t;var i=0;while(1){t=HEAPU8[ptr+i>>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module["UTF8ToString"](ptr)}Module["Pointer_stringify"]=Pointer_stringify;function AsciiToString(ptr){var str="";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module["AsciiToString"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module["stringToAscii"]=stringToAscii;function UTF8ArrayToString(u8Array,idx){var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}Module["UTF8ArrayToString"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module["UTF8ToString"]=UTF8ToString;function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}Module["stringToUTF8Array"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}Module["stringToUTF8"]=stringToUTF8;function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}Module["lengthBytesUTF8"]=lengthBytesUTF8;function demangle(func){var hasLibcxxabi=!!Module["___cxa_demangle"];if(hasLibcxxabi){try{var buf=_malloc(func.length);writeStringToMemory(func.substr(1),buf);var status=_malloc(4);var ret=Module["___cxa_demangle"](buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){return func}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}}Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");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 jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module["stackTrace"]=stackTrace;var PAGE_SIZE=4096;function alignMemoryPage(x){if(x%4096>0){x+=4096-x%4096}return x}var HEAP;var buffer;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE=0,STATICTOP=0,staticSealed=false;var STACK_BASE=0,STACKTOP=0,STACK_MAX=0;var DYNAMIC_BASE=0,DYNAMICTOP=0;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;var totalMemory=64*1024;while(totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK){if(totalMemory<16*1024*1024){totalMemory*=2}else{totalMemory+=16*1024*1024}}if(totalMemory!==TOTAL_MEMORY){TOTAL_MEMORY=totalMemory}if(Module["buffer"]){buffer=Module["buffer"]}else{buffer=new ArrayBuffer(TOTAL_MEMORY)}updateGlobalBufferViews();HEAP32[0]=255;if(HEAPU8[0]!==255||HEAPU8[3]!==0)throw"Typed arrays 2 must be run on a little-endian system";Module["HEAP"]=HEAP;Module["buffer"]=buffer;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__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}Module["addOnPreRun"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}Module["intArrayToString"]=intArrayToString;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++>>0]=array[i]}}Module["writeArrayToMemory"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}Module["writeAsciiToMemory"]=writeAsciiToMemory;if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];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;var Math_clz32=Math.clz32;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}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()}}}Module["removeRunDependency"]=removeRunDependency;Module["preloadedImages"]={};Module["preloadedAudios"]={};var ASM_CONSTS=[];STATIC_BASE=8;STATICTOP=STATIC_BASE+75136;__ATINIT__.push();allocate([90,0,0,0,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,1,0,0,124,2,0,0,68,11,0,0,80,15,0,0,116,15,0,0,188,15,0,0,100,16,0,0,160,16,0,0,220,16,0,0,216,19,0,0,24,20,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,8,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,89,111,63,0,0,0,45,0,167,144,26,0,71,9,14,0,1,32,7,0,139,147,3,0,56,202,1,0,42,229,0,0,151,114,0,0,76,57,0,0,166,28,0,0,83,14,0,0,41,7,0,0,149,3,0,0,202,1,0,0,229,0,0,0,115,0,0,0,57,0,0,0,29,0,0,0,14,0,0,0,7,0,0,0,4,0,0,0,2,0,0,0,1,0,0,0,1,5,0,0,84,0,0,0,249,40,0,0,0,0,1,0,0,0,2,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,56,3,0,0,48,1,0,0,160,0,0,0,10,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,11,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,12,0,0,0,2,0,0,0,3,0,0,0,213,43,0,0,2,41,0,0,11,41,0,0,164,1,0,0,49,41,0,0,184,1,0,0,65,41,0,0,188,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,4,0,0,0,88,240,188,5,228,2,0,0,241,59,35,40,196,135,0,0,234,161,68,163,225,1,0,0,88,240,188,5,228,2,0,0,241,59,35,40,196,135,0,0,235,161,68,163,225,1,0,0,212,234,229,17,80,3,0,0,59,202,48,90,99,144,0,0,2,38,164,19,126,0,0,0,252,255,251,255,8,0,0,0,184,72,158,156,162,190,0,0,18,1,2,112,8,0,0,0,252,255,251,255,8,0,0,0,131,4,90,10,57,124,1,0,18,1,2,112,8,0,0,0,0,0,0,0,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,0,1,0,0,0,64,0,0,0,1,0,0,0,1,0,0,0,68,0,0,0,0,0,0,0,0,0,0,0,9,0,3,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,1,5,0,0,44,0,0,0,209,43,0,0,0,0,1,0,0,0,2,0,0,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,56,3,0,0,48,0,0,0,172,0,0,0,13,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,11,0,0,0,1,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,6,0,0,0,7,0,0,0,213,43,0,0,230,43,0,0,234,43,0,0,28,3,0,0,92,44,0,0,44,3,0,0,113,44,0,0,48,3,0,0,162,44,0,0,56,3,0,0,250,43,0,0,140,3,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,10,0,0,0,20,0,0,0,9,0,0,0,8,0,0,0,11,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,10,0,0,0,9,0,0,0,13,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,15,0,0,0,5,0,0,0,4,0,0,0,0,16,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,16,0,0,4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,17,0,0,8,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,2,16,0,0,12,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,16,0,0,16,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,16,0,0,20,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,1,17,0,0,24,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,17,0,0,28,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,17,0,0,32,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,17,0,0,36,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,17,0,0,40,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,6,17,0,0,44,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,7,17,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,13,16,0,0,76,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,5,16,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,17,0,0,96,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,15,16,0,0,100,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,16,16,0,0,104,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,17,16,0,0,108,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,18,16,0,0,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,20,17,0,0,120,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,21,17,0,0,124,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,30,17,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,31,17,0,0,140,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,17,0,0,144,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,33,17,0,0,148,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,34,17,0,0,152,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,35,17,0,0,156,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,36,17,0,0,160,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,37,17,0,0,164,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,38,17,0,0,168,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,6,32,0,0,4,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,6,0,0,0,7,32,0,0,60,0,0,0,4,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,6,0,0,0,8,32,0,0,100,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,2,0,0,0,6,0,0,0,9,32,0,0,156,0,0,0,4,0,0,0,0,0,0,0,10,0,0,0,3,0,0,0,3,0,0,0,9,33,0,0,196,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,33,0,0,200,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,33,0,0,204,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,32,0,0,208,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,32,0,0,212,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,12,33,0,0,220,0,0,0,4,0,0,0,0,0,0,0,13,0,0,0,216,0,0,0,6,0,0,0,13,33,0,0,16,1,0,0,4,0,0,0,0,0,0,0,13,0,0,0,217,0,0,0,5,0,0,0,14,33,0,0,68,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,15,33,0,0,72,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,16,33,0,0,76,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,17,33,0,0,80,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,18,33,0,0,84,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,19,33,0,0,88,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,19,32,0,0,92,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,20,32,0,0,96,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,21,32,0,0,100,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5,0,202,154,59,24,0,0,0,16,0,0,0,0,0,0,0,17,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,19,0,0,0,20,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,21,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,23,0,0,0,24,0,0,0,56,0,0,0,25,0,0,0,0,0,0,0,26,0,0,0,27,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,28,0,0,0,29,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,30,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,32,0,0,0,33,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,34,0,0,0,35,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,36,0,0,0,37,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,38,0,0,0,39,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,40,0,0,0,41,0,0,0,44,0,0,0,42,0,0,0,0,0,0,0,43,0,0,0,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,45,0,0,0,46,0,0,0,44,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,50,0,0,0,51,0,0,0,40,0,0,0,52,0,0,0,10,0,0,0,53,0,0,0,54,0,0,0,7,0,0,0,6,0,0,0,55,0,0,0,7,0,0,0,8,0,0,0,14,0,0,0,56,0,0,0,57,0,0,0,0,0,0,0,20,0,0,0,76,44,0,0,0,0,1,0,0,0,2,0,104,11,0,0,0,0,0,0,0,0,0,0,58,0,0,0,8,0,0,0,15,0,0,0,16,0,0,0,11,0,0,0,58,0,0,0,17,0,0,0,9,0,0,0,9,0,0,0,59,0,0,0,10,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,12,0,0,0,65,0,0,0,13,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,10,0,0,0,70,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,14,0,0,0,12,0,0,0,15,0,0,0,13,0,0,0,71,0,0,0,14,0,0,0,72,0,0,0,15,0,0,0,73,0,0,0,16,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,112,9,0,0,164,9,0,0,216,9,0,0,12,10,0,0,64,10,0,0,116,10,0,0,168,10,0,0,220,10,0,0,16,11,0,0,0,0,0,0,2,0,0,0,255,255,255,255,99,105,110,117,0,0,0,0,255,255,255,255,99,105,110,117,1,0,0,0,0,0,0,0,110,109,114,97,3,0,0,0,0,0,0,0,98,109,121,115,3,0,0,0,10,0,0,0,99,105,110,117,3,0,0,0,1,0,0,0,99,105,110,117,3,0,0,0,2,0,0,0,115,105,106,115,3,0,0,0,3,0,0,0,32,32,98,103,3,0,0,0,4,0,0,0,53,103,105,98,3,0,0,0,5,0,0,0,115,110,97,119,3,0,0,0,6,0,0,0,97,104,111,106,81,44,0,0,228,12,0,0,92,44,0,0,240,12,0,0,113,44,0,0,244,12,0,0,124,44,0,0,252,12,0,0,162,44,0,0,4,13,0,0,0,0,0,0,0,0,0,0,17,0,0,0,74,0,0,0,19,0,0,0,15,0,0,0,11,0,0,0,75,0,0,0,18,0,0,0,19,0,0,0,76,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,77,0,0,0,78,0,0,0,1,0,0,0,72,13,0,0,64,3,0,0,79,0,0,0,1,0,0,0,0,0,0,0,80,0,0,0,20,0,0,0,32,0,0,0,127,0,0,0,160,0,0,0,255,0,0,0,0,1,0,0,127,1,0,0,128,1,0,0,79,2,0,0,80,2,0,0,175,2,0,0,176,2,0,0,255,2,0,0,0,3,0,0,111,3,0,0,112,3,0,0,255,3,0,0,0,4,0,0,255,4,0,0,0,5,0,0,47,5,0,0,0,29,0,0,127,29,0,0,128,29,0,0,191,29,0,0,192,29,0,0,255,29,0,0,0,30,0,0,255,30,0,0,0,31,0,0,255,31,0,0,0,32,0,0,111,32,0,0,112,32,0,0,159,32,0,0,160,32,0,0,207,32,0,0,80,33,0,0,143,33,0,0,96,36,0,0,255,36,0,0,96,44,0,0,127,44,0,0,224,45,0,0,255,45,0,0,64,166,0,0,159,166,0,0,32,167,0,0,255,167,0,0,0,251,0,0,6,251,0,0,0,212,1,0,255,215,1,0,0,0,0,0,0,0,0,0,99,105,110,117,110,109,114,97,66,79,68,65,49,116,97,108,0,0,0,0,2,0,0,0,84,14,0,0,64,3,0,0,81,0,0,0,2,0,0,0,0,0,0,0,82,0,0,0,21,0,0,0,128,46,0,0,255,46,0,0,0,47,0,0,223,47,0,0,0,48,0,0,63,48,0,0,64,48,0,0,159,48,0,0,160,48,0,0,255,48,0,0,0,49,0,0,47,49,0,0,48,49,0,0,143,49,0,0,160,49,0,0,191,49,0,0,192,49,0,0,239,49,0,0,240,49,0,0,255,49,0,0,0,50,0,0,255,50,0,0,0,51,0,0,255,51,0,0,0,52,0,0,191,77,0,0,192,77,0,0,255,77,0,0,0,78,0,0,255,159,0,0,0,249,0,0,255,250,0,0,48,254,0,0,79,254,0,0,0,255,0,0,239,255,0,0,0,0,2,0,223,166,2,0,0,248,2,0,31,250,2,0,0,0,0,0,0,0,0,0,3,0,0,0,28,15,0,0,64,3,0,0,83,0,0,0,3,0,0,0,0,0,0,0,84,0,0,0,22,0,0,0,0,9,0,0,255,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,8,13,0,0,40,13,0,0,52,14,0,0,252,14,0,0,0,0,0,0,4,0,0,0,204,0,0,0,249,44,0,0,0,0,1,0,0,0,2,0,44,15,0,0,16,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,176,0,0,0,4,45,0,0,0,0,1,0,0,0,2,0,152,15,0,0,17,0,0,0,18,0,0,0,0,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,108,116,117,111,85,0,0,0,1,0,0,0,2,0,0,0,86,0,0,0,19,0,0,0,2,0,0,0,72,0,0,0,13,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,12,0,0,0,13,0,0,0,3,0,0,0,23,0,0,0,164,15,0,0,2,0,0,0,72,0,0,0,21,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,12,0,0,0,13,0,0,0,3,0,0,0,23,0,0,0,164,15,0,0,108,116,117,111,87,0,0,0,4,0,0,0,0,0,0,0,88,0,0,0,20,0,0,0,89,0,0,0,90,0,0,0,24,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,72,0,0,0,29,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,15,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,2,0,0,0,72,0,0,0,36,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,17,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,2,0,0,0,72,0,0,0,47,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,18,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,26,0,0,0,21,0,0,0,19,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,23,0,0,0,91,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,4,0,0,0,2,0,0,0,22,0,0,0,23,0,0,0,1,0,0,0,26,0,0,0,92,0,0,0,3,0,0,0,28,0,0,0,24,0,0,0,29,0,0,0,27,0,0,0,1,0,0,0,28,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,5,0,0,0,4,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,4,0,0,0,2,0,0,0,2,0,0,0,6,0,0,0,4,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,6,0,0,0,2,0,0,0,6,0,0,0,2,0,0,0,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,21,0,0,0,29,0,0,0,25,0,0,0,204,45,0,0,213,45,0,0,223,45,0,0,232,45,0,0,234,45,0,0,249,45,0,0,8,46,0,0,29,46,0,0,31,46,0,0,34,46,0,0,37,46,0,0,47,46,0,0,57,46,0,0,70,46,0,0,81,46,0,0,91,46,0,0,106,46,0,0,114,46,0,0,129,46,0,0,143,46,0,0,156,46,0,0,171,46,0,0,183,46,0,0,196,46,0,0,209,46,0,0,217,46,0,0,228,46,0,0,237,46,0,0,246,46,0,0,255,46,0,0,10,47,0,0,20,47,0,0,33,47,0,0,42,47,0,0,54,47,0,0,57,47,0,0,61,47,0,0,65,47,0,0,69,47,0,0,71,47,0,0,85,47,0,0,97,47,0,0,99,47,0,0,106,47,0,0,110,47,0,0,120,47,0,0,137,47,0,0,153,47,0,0,187,45,0,0,168,47,0,0,182,47,0,0,197,47,0,0,213,47,0,0,229,47,0,0,244,47,0,0,250,47,0,0,0,48,0,0,10,48,0,0,28,48,0,0,47,48,0,0,50,48,0,0,58,48,0,0,66,48,0,0,68,48,0,0,71,48,0,0,75,48,0,0,79,48,0,0,82,48,0,0,86,48,0,0,90,48,0,0,93,48,0,0,96,48,0,0,103,48,0,0,116,48,0,0,32,0,0,0,26,0,0,0,30,0,0,0,93,0,0,0,94,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,27,0,0,0,30,0,0,0,93,0,0,0,94,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,0,0,0,28,0,0,0,31,0,0,0,95,0,0,0,96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,29,0,0,0,32,0,0,0,97,0,0,0,98,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,19,0,0,80,19,0,0,120,19,0,0,160,19,0,0,0,0,0,0,20,0,0,0,129,48,0,0,0,0,2,0,0,0,2,0,252,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,0,0,40,17,0,0,92,17,0,0,124,17,0,0,6,0,0,0,200,19,0,0,244,17,0,0,0,0,0,0,20,0,0,0,135,48,0,0,0,0,1,0,0,0,2,0,60,20,0,0,0,0,0,0,0,0,0,0,99,0,0,0,30,0,0,0,2,0,0,0,100,0,0,0,101,0,0,0,31,0,0,0,32,0,0,0,120,25,0,0,214,37,0,0,0,0,0,0,6,0,0,0,12,0,0,0,21,0,0,0,28,0,0,0,35,0,0,0,38,0,0,0,53,0,0,0,59,0,0,0,72,0,0,0,148,3,0,0,169,3,0,0,21,34,0,0,173,0,0,0,201,2,0,0,188,3,0,0,25,34,0,0,160,0,0,0,26,2,0,0,27,2,0,0,91,21,1,0,60,20,0,0,0,0,0,0,0,0,0,0,192,20,0,0,5,0,0,0,0,0,0,0,0,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,32,0,0,0,120,33,1,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,20,0,0,4,0,16,0,17,4,0,0,12,2,4,0,12,2,6,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,0,0,0,0,4,0,20,0,16,4,0,0,16,4,4,0,16,4,8,0,16,4,12,0,12,2,16,0,12,2,18,0,0,0,0,0,4,0,20,0,17,4,0,0,12,2,4,0,12,2,6,0,16,4,8,0,12,2,12,0,12,2,14,0,16,4,16,0,0,0,0,0,4,0,4,0,8,1,16,0,8,1,17,0,8,1,18,0,8,1,19,0,0,0,0,0,0,0,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,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,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,94,0,95,0,96,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,111,0,112,0,113,0,114,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,123,0,124,0,125,0,126,0,127,0,128,0,129,0,130,0,131,0,132,0,133,0,134,0,135,0,136,0,137,0,138,0,139,0,140,0,141,0,142,0,143,0,144,0,145,0,146,0,147,0,148,0,149,0,150,0,151,0,152,0,153,0,154,0,155,0,156,0,157,0,158,0,159,0,160,0,161,0,162,0,163,0,164,0,165,0,166,0,167,0,168,0,169,0,170,0,171,0,172,0,173,0,174,0,175,0,176,0,177,0,178,0,179,0,180,0,181,0,182,0,183,0,184,0,185,0,186,0,187,0,188,0,189,0,190,0,191,0,192,0,193,0,194,0,195,0,196,0,197,0,198,0,199,0,200,0,201,0,202,0,203,0,204,0,205,0,206,0,207,0,208,0,209,0,210,0,211,0,212,0,213,0,214,0,215,0,216,0,217,0,218,0,219,0,220,0,221,0,222,0,223,0,224,0,225,0,226,0,227,0,228,0,0,0,1,0,229,0,230,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,253,0,254,0,255,0,0,1,1,1,2,1,3,1,4,1,5,1,6,1,7,1,8,1,9,1,10,1,109,0,110,0,11,1,12,1,13,1,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,1,48,1,49,1,50,1,51,1,52,1,53,1,54,1,55,1,56,1,57,1,58,1,59,1,60,1,61,1,62,1,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,0,0,1,0,231,0,232,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,253,0,254,0,255,0,0,1,1,1,2,1,3,1,4,1,5,1,6,1,7,1,8,1,9,1,10,1,109,0,110,0,11,1,12,1,13,1,14,1,16,1,44,1,45,1,46,1,49,1,58,1,59,1,158,0,155,0,163,0,64,1,65,1,66,1,67,1,68,1,69,1,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,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,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,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,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,94,0,95,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,0,0,111,0,112,0,113,0,114,0,0,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,0,0,123,0,0,0,124,0,125,0,126,0,127,0,128,0,129,0,130,0,131,0,0,0,132,0,133,0,0,0,134,0,135,0,136,0,137,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,138,0,0,0,139,0,0,0,0,0,0,0,0,0,140,0,141,0,142,0,143,0,0,0,0,0,0,0,0,0,0,0,144,0,0,0,0,0,0,0,145,0,0,0,0,0,146,0,147,0,148,0,149,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,229,0,230,0,0,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,0,0,253,0,254,0,255,0,0,1,1,1,0,0,0,0,0,0,2,1,0,0,0,0,3,1,4,1,5,1,6,1,0,0,0,0,7,1,8,1,9,1,0,0,10,1,109,0,110,0,11,1,12,1,13,1,0,0,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,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,48,1,49,1,50,1,0,0,0,0,51,1,52,1,53,1,54,1,55,1,0,0,56,1,0,0,0,0,56,1,0,0,0,0,58,1,59,1,0,0,0,0,60,1,61,1,62,1,0,0,0,0,0,0,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,0,0,0,0,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,4,0,8,0,17,4,4,0,17,4,8,0,0,0,0,0,4,0,54,0,16,4,0,0,16,4,4,0,17,4,8,0,17,4,12,0,12,2,16,0,12,2,18,0,17,4,20,0,17,4,24,0,17,4,28,0,17,4,32,0,13,2,36,0,13,2,38,0,13,2,40,0,13,2,42,0,12,2,44,0,12,2,46,0,13,2,48,0,13,2,50,0,13,2,52,0,0,0,0,0,4,0,36,0,16,4,0,0,13,2,4,0,13,2,6,0,13,2,8,0,12,2,10,0,13,2,12,0,13,2,14,0,13,2,16,0,13,2,18,0,13,2,20,0,13,2,22,0,13,2,24,0,13,2,26,0,13,2,28,0,13,2,30,0,13,2,32,0,12,2,34,0,0,0,0,0,4,0,6,0,17,4,0,0,12,2,4,0,0,0,0,0,4,0,26,0,12,2,6,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,12,2,16,0,12,2,18,0,12,2,20,0,12,2,22,0,12,2,24,0,12,2,26,0,12,2,28,0,12,2,30,0,0,0,0,0,4,0,78,0,12,2,0,0,13,2,2,0,12,2,4,0,12,2,6,0,13,2,8,0,13,2,10,0,13,2,12,0,13,2,14,0,13,2,16,0,13,2,18,0,13,2,20,0,13,2,22,0,13,2,24,0,13,2,26,0,13,2,28,0,13,2,30,0,8,1,32,0,8,1,33,0,8,1,34,0,8,1,35,0,8,1,36,0,8,1,37,0,8,1,38,0,8,1,39,0,8,1,40,0,8,1,41,0,16,4,44,0,16,4,48,0,16,4,52,0,16,4,56,0,8,1,60,0,8,1,61,0,8,1,62,0,8,1,63,0,12,2,64,0,12,2,66,0,12,2,68,0,13,2,70,0,13,2,72,0,13,2,74,0,12,2,76,0,12,2,78,0,0,0,0,0,4,0,8,0,16,4,80,0,16,4,84,0,0,0,0,0,4,0,10,0,13,2,88,0,13,2,90,0,12,2,92,0,12,2,94,0,12,2,96,0,0,0,0,0,4,0,32,0,16,4,0,0,16,4,4,0,13,2,8,0,13,2,10,0,16,4,12,0,16,4,16,0,16,4,20,0,16,4,24,0,16,4,28,0,0,0,0,0,4,0,6,0,12,2,0,0,12,4,4,0,12,4,8,0,0,0,0,0,12,2,0,0,12,2,2,0,12,2,4,0,12,2,6,0,12,2,8,0,12,4,12,0,0,0,0,0,4,0,54,0,16,4,0,0,16,4,4,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,12,2,16,0,24,16,20,0,24,8,36,0,24,6,44,0,9,1,50,0,9,1,51,0,8,1,52,0,8,1,53,0,0,0,0,0,4,0,5,0,8,1,0,0,8,1,1,0,9,1,2,0,9,1,3,0,8,1,4,0,0,0,0,0,4,0,8,0,8,1,0,0,8,1,1,0,9,1,2,0,9,1,3,0,8,1,4,0,9,1,5,0,9,1,6,0,8,1,7,0,0,0,0,0,4,0,8,0,12,2,4,0,12,2,6,0,12,2,8,0,12,2,10,0,0,0,0,0,4,0,16,0,16,4,0,0,16,4,4,0,16,4,8,0,16,4,12,0,0,0,0,0,16,4,8,0,17,0,0,0,16,4,0,0,16,4,12,0,0,0,0,0,9,1,0,0,9,1,1,0,8,1,2,0,9,1,3,0,9,1,4,0,9,1,5,0,9,1,6,0,9,1,7,0,9,1,8,0,9,1,9,0,9,1,10,0,9,1,11,0,0,0,0,0,12,2,40,0,12,2,42,0,8,1,44,0,8,1,45,0,8,1,46,0,9,1,47,0,0,0,0,0,253,0,0,0,6,0,5,1,11,1,18,1,27,1,38,1,45,1,53,1,246,2,74,1,84,1,95,1,104,1,109,1,115,1,122,1,129,1,135,1,140,1,144,1,148,1,154,1,159,1,164,1,168,1,174,1,180,1,185,1,191,1,201,1,206,1,212,1,220,1,229,1,232,1,234,1,236,1,238,1,240,1,242,1,244,1,246,1,248,1,250,1,252,1,254,1,0,2,2,2,4,2,6,2,8,2,10,2,12,2,14,2,16,2,18,2,20,2,22,2,24,2,26,2,28,2,40,2,50,2,63,2,75,2,211,3,96,2,98,2,100,2,102,2,104,2,106,2,108,2,110,2,112,2,114,2,116,2,118,2,120,2,122,2,124,2,126,2,128,2,130,2,132,2,134,2,136,2,138,2,140,2,142,2,144,2,146,2,148,2,158,2,162,2,173,2,95,5,112,5,125,5,134,5,206,5,232,5,26,6,67,6,96,6,74,6,86,6,109,6,103,6,116,6,125,6,154,6,132,6,144,6,161,6,190,6,168,6,180,6,197,6,204,6,233,6,211,6,223,6,240,6,254,6,27,7,5,7,17,7,71,3,239,4,195,2,200,2,229,2,113,3,103,3,136,4,22,5,66,5,173,4,217,3,7,4,23,0,62,4,84,4,32,0,195,4,41,0,51,0,218,2,170,4,64,0,76,0,86,0,94,0,97,0,65,4,94,4,106,0,107,4,126,4,198,3,184,2,159,4,112,0,222,2,120,0,132,0,15,3,162,3,177,3,138,0,105,5,118,5,249,5,91,4,133,4,64,3,55,4,2,3,148,3,86,2,63,1,222,4,155,0,41,7,50,6,209,2,237,2,29,3,43,3,58,3,61,3,78,3,88,3,120,3,135,3,186,3,83,5,141,5,76,5,153,5,163,5,170,5,177,5,189,5,199,5,213,5,220,5,163,0,242,5,7,6,14,6,36,6,110,4,223,3,234,3,240,3,247,3,253,3,16,4,21,4,29,4,42,4,49,4,77,4,119,4,0,6,247,6,60,6,51,7,229,4,183,4,39,5,43,6,34,7,205,4,246,4,33,5,43,5,147,4,10,5,52,5,187,4,211,4,252,4,169,0,175,0,182,0,189,0,200,0,209,0,218,0,225,0,232,0,239,0,246,0,253,0,5,1,11,1,18,1,27,1,38,1,45,1,53,1,63,1,74,1,84,1,95,1,104,1,109,1,115,1,122,1,129,1,135,1,140,1,144,1,148,1,154,1,159,1,164,1,168,1,174,1,180,1,185,1,191,1,201,1,206,1,212,1,220,1,229,1,232,1,234,1,236,1,238,1,240,1,242,1,244,1,246,1,248,1,250,1,252,1,254,1,0,2,2,2,4,2,6,2,8,2,10,2,12,2,14,2,16,2,18,2,20,2,22,2,24,2,26,2,28,2,40,2,50,2,63,2,75,2,86,2,96,2,98,2,100,2,102,2,104,2,106,2,108,2,110,2,112,2,114,2,116,2,118,2,120,2,122,2,124,2,126,2,128,2,130,2,132,2,134,2,136,2,138,2,140,2,142,2,144,2,146,2,148,2,158,2,162,2,173,2,184,2,195,2,200,2,209,2,218,2,222,2,229,2,237,2,246,2,2,3,15,3,29,3,43,3,58,3,61,3,64,3,71,3,78,3,88,3,103,3,113,3,120,3,135,3,148,3,162,3,177,3,186,3,198,3,211,3,217,3,223,3,234,3,240,3,247,3,253,3,7,4,16,4,21,4,29,4,42,4,49,4,55,4,62,4,65,4,77,4,84,4,91,4,94,4,107,4,110,4,119,4,126,4,133,4,136,4,147,4,159,4,170,4,173,4,183,4,187,4,195,4,205,4,211,4,222,4,229,4,239,4,246,4,252,4,10,5,22,5,33,5,39,5,43,5,52,5,66,5,76,5,83,5,95,5,105,5,112,5,118,5,125,5,134,5,141,5,153,5,163,5,170,5,177,5,189,5,199,5,206,5,213,5,220,5,232,5,242,5,249,5,0,6,7,6,14,6,26,6,36,6,43,6,50,6,60,6,67,6,74,6,86,6,96,6,103,6,109,6,116,6,125,6,132,6,144,6,154,6,161,6,168,6,180,6,190,6,197,6,204,6,211,6,223,6,233,6,240,6,247,6,254,6,5,7,17,7,27,7,34,7,41,7,51,7,58,7,70,7,88,7,103,7,118,7,133,7,144,7,162,7,181,7,196,7,211,7,224,7,236,7,248,7,6,8,19,8,32,8,44,8,58,8,72,8,85,8,99,8,119,8,134,8,148,8,158,8,168,8,181,8,191,8,201,8,211,8,221,8,231,8,241,8,251,8,5,9,15,9,25,9,28,9,32,9,36,9,54,9,73,9,89,9,104,9,115,9,122,9,129,9,136,9,143,9,150,9,157,9,164,9,171,9,178,9,185,9,192,9,199,9,206,9,213,9,220,9,227,9,234,9,241,9,248,9,255,9,6,10,13,10,20,10,27,10,34,10,41,10,55,10,65,10,72,10,83,10,99,10,112,10,124,10,136,10,148,10,162,10,173,10,184,10,199,10,211,10,222,10,237,10,249,10,3,11,16,11,34,11,44,11,57,11,69,11,82,11,91,11,101,11,114,11,127,11,140,11,152,11,166,11,180,11,193,11,206,11,218,11,230,11,244,11,1,12,14,12,26,12,40,12,54,12,67,12,80,12,95,12,110,12,124,12,136,12,148,12,165,12,177,12,192,12,203,12,211,12,225,12,237,12,249,12,10,13,25,13,37,13,49,13,66,13,81,13,90,13,102,13,114,13,126,13,143,13,155,13,170,13,178,13,190,13,202,13,214,13,231,13,246,13,2,14,13,14,28,14,36,14,44,14,52,14,60,14,66,14,71,14,76,14,82,14,89,14,97,14,103,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,229,0,230,0,0,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,0,0,253,0,254,0,255,0,0,1,1,1,0,0,0,0,0,0,2,1,0,0,0,0,3,1,4,1,5,1,6,1,0,0,0,0,7,1,8,1,9,1,0,0,10,1,109,0,110,0,11,1,12,1,13,1,0,0,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,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,48,1,49,1,50,1,0,0,0,0,51,1,52,1,53,1,54,1,55,1,0,0,56,1,0,0,0,0,57,1,0,0,0,0,58,1,59,1,0,0,0,0,60,1,61,1,62,1,0,0,0,0,0,0,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,0,0,0,0,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,108,111,97,100,95,102,111,110,116,40,37,115,44,37,115,41,58,32,116,111,111,32,109,97,110,121,32,102,111,110,116,115,33,10,0,78,101,119,95,70,97,99,101,40,37,115,44,37,115,41],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([32,69,114,114,111,114,33,32,37,100,10,0,83,101,116,95,67,104,97,114,95,83,105,122,101,32,69,114,114,111,114,33,32,37,100,10,0,76,111,97,100,95,67,104,97,114,32,69,114,114,111,114,33,32,37,100,10,0,73,110,105,116,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,65,46,111,116,102,0,78,101,119,95,70,97,99,101,40,79,67,82,45,65,41,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,66,46,111,116,102,0,78,101,119,95,70,97,99,101,40,79,67,82,45,66,41,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,45,65,0,79,67,82,45,66,0,99,105,100,0,116,121,112,101,49,0,79,84,84,79,0,46,95,0,47,46,46,110,97,109,101,100,102,111,114,107,47,114,115,114,99,0,47,114,115,114,99,0,114,101,115,111,117,114,99,101,46,102,114,107,47,0,46,114,101,115,111,117,114,99,101,47,0,37,0,46,65,112,112,108,101,68,111,117,98,108,101,47,0,116,114,117,101,116,121,112,101,0,84,114,117,101,84,121,112,101,0,109,117,108,116,105,45,109,97,115,116,101,114,115,0,87,105,100,116,104,0,79,112,116,105,99,97,108,83,105,122,101,0,83,108,97,110,116,0,116,114,117,101,116,121,112,101,45,101,110,103,105,110,101,0,116,116,45,103,108,121,102,0,68,70,75,97,105,83,104,111,45,83,66,0,0,0,0,0,0,68,70,75,97,105,83,104,117,0,0,0,0,0,0,0,0,0,68,70,75,97,105,45,83,66,0,0,0,0,0,0,0,0,0,72,117,97,84,105,97,110,75,97,105,84,105,63,0,0,0,0,72,117,97,84,105,97,110,83,111,110,103,84,105,63,0,0,0,77,105,110,103,76,105,85,0,0,0,0,0,0,0,0,0,0,80,77,105,110,103,76,105,85,0,0,0,0,0,0,0,0,0,77,105,110,103,76,105,52,51,0,0,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,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,255,254,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,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,2,3,4,5,6,7,8,9,3,5,7,9,11,13,15,17,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,32,32,32,32,32,32,2,2,0,80,16,16,16,16,16,16,16,16,0,0,16,0,16,16,16,16,18,16,0,34,1,17,16,32,0,16,32,16,16,0,16,16,0,0,0,0,16,16,16,16,16,0,32,32,0,0,32,32,0,0,32,17,32,17,17,17,32,33,33,1,1,0,0,16,33,33,33,33,33,33,17,17,16,0,33,33,17,16,16,16,33,33,33,33,17,17,17,17,17,17,17,17,17,17,17,17,32,16,16,16,16,16,16,16,32,32,0,0,0,0,16,16,0,32,32,0,0,16,32,32,17,16,51,33,33,16,32,0,0,0,0,0,0,0,0,0,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,1,2,3,4,5,6,7,8,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,99,102,102,0,120,102,56,54,45,100,114,105,118,101,114,45,110,97,109,101,0,67,70,70,0,112,111,115,116,115,99,114,105,112,116,45,105,110,102,111,0,67,73,68,0,82,101,103,117,108,97,114,0,66,111,108,100,0,66,108,97,99,107,0,0,194,193,193,32,32,32,32,32,32,32,32,32,32,13,7,9,11,128,130,130,130,130,128,128,0,1,2,2,2,1,0,2,1,1,1,2,1,2,1,2,1,4,3,2,2,1,2,4,1,1,0,2,0,0,0,5,4,2,115,102,110,116,0,115,102,110,116,45,116,97,98,108,101,0,112,111,115,116,115,99,114,105,112,116,45,102,111,110,116,45,110,97,109,101,0,103,108,121,112,104,45,100,105,99,116,0,98,100,102,0,67,72,65,82,83,69,84,95,82,69,71,73,83,84,82,89,0,67,72,65,82,83,69,84,95,69,78,67,79,68,73,78,71,0,116,116,45,99,109,97,112,115,0,84,72,69,90,79,67,81,83,0,0,0,0,0,72,69,90,76,79,67,85,83,0,0,0,0,0,102,105,106,107,100,98,104,0,0,0,0,0,0,120,122,114,111,101,115,99,0,0,0,0,0,0,120,122,114,111,101,115,99,0,0,0,0,0,0,112,113,103,106,121,0,0,0,0,0,0,0,0,97,117,116,111,102,105,116,116,101,114,0,112,115,104,105,110,116,101,114,0,114,97,115,116,101,114,49,0,114,97,115,116,101,114,53,0,115,109,111,111,116,104,0,115,109,111,111,116,104,45,108,99,100,0,115,109,111,111,116,104,45,108,99,100,118,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,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,255,255,255,255,255,255,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,255,255,255,255,255,83,116,97,114,116,70,111,110,116,77,101,116,114,105,99,115,0,65,115,99,101,110,100,101,114,0,65,120,105,115,76,97,98,101,108,0,65,120,105,115,84,121,112,101,0,66,0,66,108,101,110,100,65,120,105,115,84,121,112,101,115,0,66,108,101,110,100,68,101,115,105,103,110,77,97,112,0,66,108,101,110,100,68,101,115,105,103,110,80,111,115,105,116,105,111,110,115,0,67,0,67,67,0,67,72,0,67,97,112,72,101,105,103,104,116,0,67,104,97,114,87,105,100,116,104,0,67,104,97,114,97,99,116,101,114,83,101,116,0,67,104,97,114,97,99,116,101,114,115,0,68,101,115,99,101,110,100,101,114,0,69,110,99,111,100,105,110,103,83,99,104,101,109,101,0,69,110,100,65,120,105,115,0,69,110,100,67,104,97,114,77,101,116,114,105,99,115,0,69,110,100,67,111,109,112,111,115,105,116,101,115,0,69,110,100,68,105,114,101,99,116,105,111,110,0,69,110,100,70,111,110,116,77,101,116,114,105,99,115,0,69,110,100,75,101,114,110,68,97,116,97,0,69,110,100,75,101,114,110,80,97,105,114,115,0,69,110,100,84,114,97,99,107,75,101,114,110,0,69,115,99,67,104,97,114,0,70,97,109,105,108,121,78,97,109,101,0,70,111,110,116,66,66,111,120,0,70,111,110,116,78,97,109,101,0,70,117,108,108,78,97,109,101,0,73,115,66,97,115,101,70,111,110,116,0,73,115,67,73,68,70,111,110,116,0,73,115,70,105,120,101,100,80,105,116,99,104,0,73,115,70,105,120,101,100,86,0,73,116,97,108,105,99,65,110,103,108,101,0,75,80,0,75,80,72,0,75,80,88,0,75,80,89,0,76,0,77,97,112,112,105,110,103,83,99,104,101,109,101,0,77,101,116,114,105,99,115,83,101,116,115,0,78,0,78,111,116,105,99,101,0,80,67,67,0,83,116,97,114,116,65,120,105,115,0,83,116,97,114,116,67,104,97,114,77,101,116,114,105,99,115,0,83,116,97,114,116,67,111,109,112,111,115,105,116,101,115,0,83,116,97,114,116,68,105,114,101,99,116,105,111,110,0,83,116,97,114,116,75,101,114,110,68,97,116,97,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,48,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,49,0,83,116,97,114,116,84,114,97,99,107,75,101,114,110,0,83,116,100,72,87,0,83,116,100,86,87,0,84,114,97,99,107,75,101,114,110,0,85,110,100,101,114,108,105,110,101,80,111,115,105,116,105,111,110,0,85,110,100,101,114,108,105,110,101,84,104,105,99,107,110,101,115,115,0,86,86,0,86,86,101,99,116,111,114,0,86,101,114,115,105,111,110,0,87,0,87,48,0,87,48,88,0,87,48,89,0,87,49,0,87,49,88,0,87,49,89,0,87,88,0,87,89,0,87,101,105,103,104,116,0,87,101,105,103,104,116,86,101,99,116,111,114,0,88,72,101,105,103,104,116,0,116,114,117,101,0,112,115,97,117,120,0,112,115,110,97,109,101,115,0,0,52,0,106,2,167,3,63,4,220,6,125,9,143,10,23,11,137,12,199,14,246,15,87,16,233,17,219,18,104,19,88,22,110,23,32,23,71,24,77,27,156,29,73,31,247,32,107,32,222,33,55,34,154,35,218,53,84,59,196,68,6,75,183,83,178,88,135,93,242,101,165,109,185,111,55,117,254,123,73,130,238,138,206,145,31,153,182,156,189,163,249,178,221,193,17,197,99,199,240,204,27,204,155,210,100,65,143,0,65,0,140,0,175,0,193,1,15,1,147,1,233,1,251,2,7,2,40,2,57,2,82,2,91,2,128,2,136,2,154,69,131,0,198,0,150,0,158,0,167,225,227,245,244,101,128,1,252,237,225,227,242,239,110,128,1,226,243,237,225,236,108,128,247,230,225,227,245,244,101,129,0,193,0,185,243,237,225,236,108,128,247,225,226,242,229,246,101,134,1,2,0,213,0,221,0,232,0,243,0,251,1,7,225,227,245,244,101,128,30,174,227,249,242,233,236,236,233,99,128,4,208,228,239,244,226,229,236,239,119,128,30,182,231,242,225,246,101,128,30,176,232,239,239,235,225,226,239,246,101,128,30,178,244,233,236,228,101,128,30,180,99,4,1,25,1,32,1,121,1,137,225,242,239,110,128,1,205,233,242,99,2,1,40,1,45,236,101,128,36,182,245,237,230,236,229,120,134,0,194,1,66,1,74,1,85,1,93,1,105,1,113,225,227,245,244,101,128,30,164,228,239,244,226,229,236,239,119,128,30,172,231,242,225,246,101,128,30,166,232,239,239,235,225,226,239,246,101,128,30,168,243,237,225,236,108,128,247,226,244,233,236,228,101,128,30,170,245,244,101,129,246,201,1,129,243,237,225,236,108,128,247,180,249,242,233,236,236,233,99,128,4,16,100,3,1,155,1,165,1,209,226,236,231,242,225,246,101,128,2,0,233,229,242,229,243,233,115,131,0,196,1,181,1,192,1,201,227,249,242,233,236,236,233,99,128,4,210,237,225,227,242,239,110,128,1,222,243,237,225,236,108,128,247,228,239,116,2,1,216,1,224,226,229,236,239,119,128,30,160,237,225,227,242,239,110,128,1,224,231,242,225,246,101,129,0,192,1,243,243,237,225,236,108,128,247,224,232,239,239,235,225,226,239,246,101,128,30,162,105,2,2,13,2,25,229,227,249,242,233,236,236,233,99,128,4,212,238,246,229,242,244,229,228,226,242,229,246,101,128,2,2,236,240,232,97,129,3,145,2,49,244,239,238,239,115,128,3,134,109,2,2,63,2,71,225,227,242,239,110,128,1,0,239,238,239,243,240,225,227,101,128,255,33,239,231,239,238,229,107,128,1,4,242,233,238,103,131,0,197,2,104,2,112,2,120,225,227,245,244,101,128,1,250,226,229,236,239,119,128,30,0,243,237,225,236,108,128,247,229,243,237,225,236,108,128,247,97,244,233,236,228,101,129,0,195,2,146,243,237,225,236,108,128,247,227,249,226,225,242,237,229,238,233,225,110,128,5,49,66,137,0,66,2,189,2,198,2,223,3,3,3,10,3,22,3,34,3,46,3,54,227,233,242,227,236,101,128,36,183,228,239,116,2,2,206,2,215,225,227,227,229,238,116,128,30,2,226,229,236,239,119,128,30,4,101,3,2,231,2,242,2,254,227,249,242,233,236,236,233,99,128,4,17,238,225,242,237,229,238,233,225,110,128,5,50,244,97,128,3,146,232,239,239,107,128,1,129,236,233,238,229,226,229,236,239,119,128,30,6,237,239,238,239,243,240,225,227,101,128,255,34,242,229,246,229,243,237,225,236,108,128,246,244,243,237,225,236,108,128,247,98,244,239,240,226,225,114,128,1,130,67,137,0,67,3,85,3,127,3,193,3,210,3,224,4,171,4,188,4,200,4,212,97,3,3,93,3,104,3,111,225,242,237,229,238,233,225,110,128,5,62,227,245,244,101,128,1,6,242,239,110,129,246,202,3,119,243,237,225,236,108,128,246,245,99,3,3,135,3,142,3,171,225,242,239,110,128,1,12,229,228,233,236,236,97,130,0,199,3,155,3,163,225,227,245,244,101,128,30,8,243,237,225,236,108,128,247,231,233,242,99,2,3,179,3,184,236,101,128,36,184,245,237,230,236,229,120,128,1,8,228,239,116,129,1,10,3,201,225,227,227,229,238,116,128,1,10,229,228,233,236,236,225,243,237,225,236,108,128,247,184,104,4,3,234,3,246,4,161,4,165,225,225,242,237,229,238,233,225,110,128,5,73,101,6,4,4,4,24,4,35,4,103,4,115,4,136,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,188,227,249,242,233,236,236,233,99,128,4,39,100,2,4,41,4,85,229,243,227,229,238,228,229,114,2,4,54,4,74,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,190,227,249,242,233,236,236,233,99,128,4,182,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,244,232,225,242,237,229,238,233,225,110,128,5,67,235,232,225,235,225,243,243,233,225,238,227,249,242,233,236,236,233,99,128,4,203,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,184,105,128,3,167,239,239,107,128,1,135,233,242,227,245,237,230,236,229,248,243,237,225,236,108,128,246,246,237,239,238,239,243,240,225,227,101,128,255,35,239,225,242,237,229,238,233,225,110,128,5,81,243,237,225,236,108,128,247,99,68,142,0,68,4,252,5,10,5,36,5,96,5,121,5,166,5,173,5,231,5,244,6,0,6,12,6,28,6,48,6,57,90,129,1,241,5,2,227,225,242,239,110,128,1,196,97,2,5,16,5,27,225,242,237,229,238,233,225,110,128,5,52,230,242,233,227,225,110,128,1,137,99,4,5,46,5,53,5,62,5,89,225,242,239,110,128,1,14,229,228,233,236,236,97,128,30,16,233,242,99,2,5,70,5,75,236,101,128,36,185,245,237,230,236,229,248,226,229,236,239,119,128,30,18,242,239,225,116,128,1,16,228,239,116,2,5,104,5,113,225,227,227,229,238,116,128,30,10,226,229,236,239,119,128,30,12,101,3,5,129,5,140,5,150,227,249,242,233,236,236,233,99,128,4,20,233,227,239,240,244,233,99,128,3,238,236,244,97,129,34,6,5,158,231,242,229,229,107,128,3,148,232,239,239,107,128,1,138,105,2,5,179,5,218,229,242,229,243,233,115,131,246,203,5,194,5,202,5,210,193,227,245,244,101,128,246,204,199,242,225,246,101,128,246,205,243,237,225,236,108,128,247,168,231,225,237,237,225,231,242,229,229,107,128,3,220,234,229,227,249,242,233,236,236,233,99,128,4,2,236,233,238,229,226,229,236,239,119,128,30,14,237,239,238,239,243,240,225,227,101,128,255,36,239,244,225,227,227,229,238,244,243,237,225,236,108,128,246,247,115,2,6,34,6,41,236,225,243,104,128,1,16,237,225,236,108,128,247,100,244,239,240,226,225,114,128,1,139,122,131,1,242,6,67,6,75,6,112,227,225,242,239,110,128,1,197,101,2,6,81,6,101,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,224,227,249,242,233,236,236,233,99,128,4,5,232,229,227,249,242,233,236,236,233,99,128,4,15,69,146,0,69,6,165,6,183,6,191,7,89,7,153,7,165,7,183,7,211,8,7,8,36,8,94,8,169,8,189,8,208,8,248,9,44,9,109,9,115,225,227,245,244,101,129,0,201,6,175,243,237,225,236,108,128,247,233,226,242,229,246,101,128,1,20,99,5,6,203,6,210,6,224,6,236,7,79,225,242,239,110,128,1,26,229,228,233,236,236,225,226,242,229,246,101,128,30,28,232,225,242,237,229,238,233,225,110,128,5,53,233,242,99,2,6,244,6,249,236,101,128,36,186,245,237,230,236,229,120,135,0,202,7,16,7,24,7,32,7,43,7,51,7,63,7,71,225,227,245,244,101,128,30,190,226,229,236,239,119,128,30,24,228,239,244,226,229,236,239,119,128,30,198,231,242,225,246,101,128,30,192,232,239,239,235,225,226,239,246,101,128,30,194,243,237,225,236,108,128,247,234,244,233,236,228,101,128,30,196,249,242,233,236,236,233,99,128,4,4,100,3,7,97,7,107,7,127,226,236,231,242,225,246,101,128,2,4,233,229,242,229,243,233,115,129,0,203,7,119,243,237,225,236,108,128,247,235,239,116,130,1,22,7,136,7,145,225,227,227,229,238,116,128,1,22,226,229,236,239,119,128,30,184,230,227,249,242,233,236,236,233,99,128,4,36,231,242,225,246,101,129,0,200,7,175,243,237,225,236,108,128,247,232,104,2,7,189,7,200,225,242,237,229,238,233,225,110,128,5,55,239,239,235,225,226,239,246,101,128,30,186,105,3,7,219,7,230,7,245,231,232,244,242,239,237,225,110,128,33,103,238,246,229,242,244,229,228,226,242,229,246,101,128,2,6,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,100,108,2,8,13,8,24,227,249,242,233,236,236,233,99,128,4,27,229,246,229,238,242,239,237,225,110,128,33,106,109,3,8,44,8,72,8,83,225,227,242,239,110,130,1,18,8,56,8,64,225,227,245,244,101,128,30,22,231,242,225,246,101,128,30,20,227,249,242,233,236,236,233,99,128,4,28,239,238,239,243,240,225,227,101,128,255,37,110,4,8,104,8,115,8,135,8,154,227,249,242,233,236,236,233,99,128,4,29,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,162,103,129,1,74,8,141,232,229,227,249,242,233,236,236,233,99,128,4,164,232,239,239,235,227,249,242,233,236,236,233,99,128,4,199,111,2,8,175,8,183,231,239,238,229,107,128,1,24,240,229,110,128,1,144,240,243,233,236,239,110,129,3,149,8,200,244,239,238,239,115,128,3,136,114,2,8,214,8,225,227,249,242,233,236,236,233,99,128,4,32,229,246,229,242,243,229,100,129,1,142,8,237,227,249,242,233,236,236,233,99,128,4,45,115,4,9,2,9,13,9,33,9,37,227,249,242,233,236,236,233,99,128,4,33,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,170,104,128,1,169,237,225,236,108,128,247,101,116,3,9,52,9,78,9,92,97,130,3,151,9,60,9,70,242,237,229,238,233,225,110,128,5,56,244,239,238,239,115,128,3,137,104,129,0,208,9,84,243,237,225,236,108,128,247,240,233,236,228,101,129,30,188,9,101,226,229,236,239,119,128,30,26,245,242,111,128,32,172,250,104,130,1,183,9,124,9,132,227,225,242,239,110,128,1,238,242,229,246,229,242,243,229,100,128,1,184,70,136,0,70,9,163,9,172,9,184,9,212,9,219,9,248,10,4,10,15,227,233,242,227,236,101,128,36,187,228,239,244,225,227,227,229,238,116,128,30,30,101,2,9,190,9,202,232,225,242,237,229,238,233,225,110,128,5,86,233,227,239,240,244,233,99,128,3,228,232,239,239,107,128,1,145,105,2,9,225,9,238,244,225,227,249,242,233,236,236,233,99,128,4,114,246,229,242,239,237,225,110,128,33,100,237,239,238,239,243,240,225,227,101,128,255,38,239,245,242,242,239,237,225,110,128,33,99,243,237,225,236,108,128,247,102,71,140,0,71,10,51,10,61,10,107,10,115,10,176,10,193,10,205,11,39,11,52,11,65,11,90,11,107,194,243,241,245,225,242,101,128,51,135,97,3,10,69,10,76,10,94,227,245,244,101,128,1,244,237,237,97,129,3,147,10,84,225,230,242,233,227,225,110,128,1,148,238,231,233,225,227,239,240,244,233,99,128,3,234,226,242,229,246,101,128,1,30,99,4,10,125,10,132,10,141,10,163,225,242,239,110,128,1,230,229,228,233,236,236,97,128,1,34,233,242,99,2,10,149,10,154,236,101,128,36,188,245,237,230,236,229,120,128,1,28,239,237,237,225,225,227,227,229,238,116,128,1,34,228,239,116,129,1,32,10,184,225,227,227,229,238,116,128,1,32,229,227,249,242,233,236,236,233,99,128,4,19,104,3,10,213,10,226,11,33,225,228,225,242,237,229,238,233,225,110,128,5,66,101,3,10,234,10,255,11,16,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,148,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,146,245,240,244,245,242,238,227,249,242,233,236,236,233,99,128,4,144,239,239,107,128,1,147,233,237,225,242,237,229,238,233,225,110,128,5,51,234,229,227,249,242,233,236,236,233,99,128,4,3,109,2,11,71,11,79,225,227,242,239,110,128,30,32,239,238,239,243,240,225,227,101,128,255,39,242,225,246,101,129,246,206,11,99,243,237,225,236,108,128,247,96,115,2,11,113,11,129,237,225,236,108,129,247,103,11,122,232,239,239,107,128,2,155,244,242,239,235,101,128,1,228,72,140,0,72,11,165,11,190,11,198,11,208,12,17,12,40,12,77,12,117,12,129,12,157,12,165,12,189,177,184,53,3,11,175,11,180,11,185,179,51,128,37,207,180,51,128,37,170,181,49,128,37,171,178,178,176,183,51,128,37,161,208,243,241,245,225,242,101,128,51,203,97,3,11,216,11,236,12,0,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,168,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,178,242,228,243,233,231,238,227,249,242,233,236,236,233,99,128,4,42,98,2,12,23,12,28,225,114,128,1,38,242,229,246,229,226,229,236,239,119,128,30,42,99,2,12,46,12,55,229,228,233,236,236,97,128,30,40,233,242,99,2,12,63,12,68,236,101,128,36,189,245,237,230,236,229,120,128,1,36,100,2,12,83,12,93,233,229,242,229,243,233,115,128,30,38,239,116,2,12,100,12,109,225,227,227,229,238,116,128,30,34,226,229,236,239,119,128,30,36,237,239,238,239,243,240,225,227,101,128,255,40,111,2,12,135,12,146,225,242,237,229,238,233,225,110,128,5,64,242,233,227,239,240,244,233,99,128,3,232,243,237,225,236,108,128,247,104,245,238,231,225,242,245,237,236,225,245,116,129,246,207,12,181,243,237,225,236,108,128,246,248,250,243,241,245,225,242,101,128,51,144,73,146,0,73,12,239,12,251,12,255,13,11,13,29,13,37,13,94,13,181,13,214,13,224,13,242,13,254,14,48,14,86,14,99,14,166,14,187,14,205,193,227,249,242,233,236,236,233,99,128,4,47,74,128,1,50,213,227,249,242,233,236,236,233,99,128,4,46,225,227,245,244,101,129,0,205,13,21,243,237,225,236,108,128,247,237,226,242,229,246,101,128,1,44,99,3,13,45,13,52,13,84,225,242,239,110,128,1,207,233,242,99,2,13,60,13,65,236,101,128,36,190,245,237,230,236,229,120,129,0,206,13,76,243,237,225,236,108,128,247,238,249,242,233,236,236,233,99,128,4,6,100,3,13,102,13,112,13,155,226,236,231,242,225,246,101,128,2,8,233,229,242,229,243,233,115,131,0,207,13,128,13,136,13,147,225,227,245,244,101,128,30,46,227,249,242,233,236,236,233,99,128,4,228,243,237,225,236,108,128,247,239,239,116,130,1,48,13,164,13,173,225,227,227,229,238,116,128,1,48,226,229,236,239,119,128,30,202,101,2,13,187,13,203,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,214,227,249,242,233,236,236,233,99,128,4,21,230,242,225,235,244,245,114,128,33,17,231,242,225,246,101,129,0,204,13,234,243,237,225,236,108,128,247,236,232,239,239,235,225,226,239,246,101,128,30,200,105,3,14,6,14,17,14,32,227,249,242,233,236,236,233,99,128,4,24,238,246,229,242,244,229,228,226,242,229,246,101,128,2,10,243,232,239,242,244,227,249,242,233,236,236,233,99,128,4,25,109,2,14,54,14,75,225,227,242,239,110,129,1,42,14,64,227,249,242,233,236,236,233,99,128,4,226,239,238,239,243,240,225,227,101,128,255,41,238,233,225,242,237,229,238,233,225,110,128,5,59,111,3,14,107,14,118,14,126,227,249,242,233,236,236,233,99,128,4,1,231,239,238,229,107,128,1,46,244,97,131,3,153,14,137,14,147,14,158,225,230,242,233,227,225,110,128,1,150,228,233,229,242,229,243,233,115,128,3,170,244,239,238,239,115,128,3,138,115,2,14,172,14,179,237,225,236,108,128,247,105,244,242,239,235,101,128,1,151,244,233,236,228,101,129,1,40,14,197,226,229,236,239,119,128,30,44,250,232,233,244,243,97,2,14,216,14,227,227,249,242,233,236,236,233,99,128,4,116,228,226,236,231,242,225,246,229,227,249,242,233,236,236,233,99,128,4,118,74,134,0,74,15,6,15,18,15,41,15,53,15,67,15,79,225,225,242,237,229,238,233,225,110,128,5,65,227,233,242,99,2,15,27,15,32,236,101,128,36,191,245,237,230,236,229,120,128,1,52,229,227,249,242,233,236,236,233,99,128,4,8,232,229,232,225,242,237,229,238,233,225,110,128,5,75,237,239,238,239,243,240,225,227,101,128,255,42,243,237,225,236,108,128,247,106,75,140,0,75,15,115,15,125,15,135,16,18,16,65,16,76,16,106,16,143,16,156,16,168,16,180,16,208,194,243,241,245,225,242,101,128,51,133,203,243,241,245,225,242,101,128,51,205,97,7,15,151,15,169,15,191,15,211,15,226,15,232,15,249,226,225,243,232,235,233,242,227,249,242,233,236,236,233,99,128,4,160,99,2,15,175,15,181,245,244,101,128,30,48,249,242,233,236,236,233,99,128,4,26,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,154,232,239,239,235,227,249,242,233,236,236,233,99,128,4,195,240,240,97,128,3,154,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,158,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,156,99,4,16,28,16,35,16,44,16,52,225,242,239,110,128,1,232,229,228,233,236,236,97,128,1,54,233,242,227,236,101,128,36,192,239,237,237,225,225,227,227,229,238,116,128,1,54,228,239,244,226,229,236,239,119,128,30,50,101,2,16,82,16,94,232,225,242,237,229,238,233,225,110,128,5,84,238,225,242,237,229,238,233,225,110,128,5,63,104,3,16,114,16,126,16,137,225,227,249,242,233,236,236,233,99,128,4,37,229,233,227,239,240,244,233,99,128,3,230,239,239,107,128,1,152,234,229,227,249,242,233,236,236,233,99,128,4,12,236,233,238,229,226,229,236,239,119,128,30,52,237,239,238,239,243,240,225,227,101,128,255,43,239,240,240,97,2,16,189,16,200,227,249,242,233,236,236,233,99,128,4,128,231,242,229,229,107,128,3,222,115,2,16,214,16,226,233,227,249,242,233,236,236,233,99,128,4,110,237,225,236,108,128,247,107,76,138,0,76,17,1,17,5,17,9,17,29,17,95,17,133,17,147,17,165,17,177,17,189,74,128,1,199,76,128,246,191,97,2,17,15,17,22,227,245,244,101,128,1,57,237,226,228,97,128,3,155,99,4,17,39,17,46,17,55,17,82,225,242,239,110,128,1,61,229,228,233,236,236,97,128,1,59,233,242,99,2,17,63,17,68,236,101,128,36,193,245,237,230,236,229,248,226,229,236,239,119,128,30,60,239,237,237,225,225,227,227,229,238,116,128,1,59,228,239,116,130,1,63,17,105,17,114,225,227,227,229,238,116,128,1,63,226,229,236,239,119,129,30,54,17,124,237,225,227,242,239,110,128,30,56,233,247,238,225,242,237,229,238,233,225,110,128,5,60,106,129,1,200,17,153,229,227,249,242,233,236,236,233,99,128,4,9,236,233,238,229,226,229,236,239,119,128,30,58,237,239,238,239,243,240,225,227,101,128,255,44,115,2,17,195,17,212,236,225,243,104,129,1,65,17,204,243,237,225,236,108,128,246,249,237,225,236,108,128,247,108,77,137,0,77,17,241,17,251,18,24,18,33,18,58,18,71,18,83,18,91,18,100,194,243,241,245,225,242,101,128,51,134,225,99,2,18,2,18,18,242,239,110,129,246,208,18,10,243,237,225,236,108,128,247,175,245,244,101,128,30,62,227,233,242,227,236,101,128,36,194,228,239,116,2,18,41,18,50,225,227,227,229,238,116,128,30,64,226,229,236,239,119,128,30,66,229,238,225,242,237,229,238,233,225,110,128,5,68,237,239,238,239,243,240,225,227,101,128,255,45,243,237,225,236,108,128,247,109,244,245,242,238,229,100,128,1,156,117,128,3,156,78,141,0,78,18,134,18,138,18,146,18,212,18,237,18,248,19,3,19,21,19,33,19,45,19,58,19,66,19,84,74,128,1,202,225,227,245,244,101,128,1,67,99,4,18,156,18,163,18,172,18,199,225,242,239,110,128,1,71,229,228,233,236,236,97,128,1,69,233,242,99,2,18,180,18,185,236,101,128,36,195,245,237,230,236,229,248,226,229,236,239,119,128,30,74,239,237,237,225,225,227,227,229,238,116,128,1,69,228,239,116,2,18,220,18,229,225,227,227,229,238,116,128,30,68,226,229,236,239,119,128,30,70,232,239,239,235,236,229,230,116,128,1,157,233,238,229,242,239,237,225,110,128,33,104,106,129,1,203,19,9,229,227,249,242,233,236,236,233,99,128,4,10,236,233,238,229,226,229,236,239,119,128,30,72,237,239,238,239,243,240,225,227,101,128,255,46,239,247,225,242,237,229,238,233,225,110,128,5,70,243,237,225,236,108,128,247,110,244,233,236,228,101,129,0,209,19,76,243,237,225,236,108,128,247,241,117,128,3,157,79,141,0,79,19,118,19,132,19,150,19,203,20,78,20,152,20,187,21,48,21,69,21,213,21,223,21,254,22,53,69,129,1,82,19,124,243,237,225,236,108,128,246,250,225,227,245,244,101,129,0,211,19,142,243,237,225,236,108,128,247,243,98,2,19,156,19,196,225,242,242,229,100,2,19,166,19,177,227,249,242,233,236,236,233,99,128,4,232,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,234,242,229,246,101,128,1,78,99,4,19,213,19,220,19,235,20,68,225,242,239,110,128,1,209,229,238,244,229,242,229,228,244,233,236,228,101,128,1,159,233,242,99,2,19,243,19,248,236,101,128,36,196,245,237,230,236,229,120,134,0,212,20,13,20,21,20,32,20,40,20,52,20,60,225,227,245,244,101,128,30,208,228,239,244,226,229,236,239,119,128,30,216,231,242,225,246,101,128,30,210,232,239,239,235,225,226,239,246,101,128,30,212,243,237,225,236,108,128,247,244,244,233,236,228,101,128,30,214,249,242,233,236,236,233,99,128,4,30,100,3,20,86,20,109,20,142,226,108,2,20,93,20,101,225,227,245,244,101,128,1,80,231,242,225,246,101,128,2,12,233,229,242,229,243,233,115,130,0,214,20,123,20,134,227,249,242,233,236,236,233,99,128,4,230,243,237,225,236,108,128,247,246,239,244,226,229,236,239,119,128,30,204,103,2,20,158,20,170,239,238,229,235,243,237,225,236,108,128,246,251,242,225,246,101,129,0,210,20,179,243,237,225,236,108,128,247,242,104,4,20,197,20,208,20,212,21,34,225,242,237,229,238,233,225,110,128,5,85,109,128,33,38,111,2,20,218,20,228,239,235,225,226,239,246,101,128,30,206,242,110,133,1,160,20,243,20,251,21,6,21,14,21,26,225,227,245,244,101,128,30,218,228,239,244,226,229,236,239,119,128,30,226,231,242,225,246,101,128,30,220,232,239,239,235,225,226,239,246,101,128,30,222,244,233,236,228,101,128,30,224,245,238,231,225,242,245,237,236,225,245,116,128,1,80,105,129,1,162,21,54,238,246,229,242,244,229,228,226,242,229,246,101,128,2,14,109,4,21,79,21,107,21,184,21,202,225,227,242,239,110,130,1,76,21,91,21,99,225,227,245,244,101,128,30,82,231,242,225,246,101,128,30,80,229,231,97,132,33,38,21,121,21,132,21,140,21,156,227,249,242,233,236,236,233,99,128,4,96,231,242,229,229,107,128,3,169,242,239,245,238,228,227,249,242,233,236,236,233,99,128,4,122,116,2,21,162,21,177,233,244,236,239,227,249,242,233,236,236,233,99,128,4,124,239,238,239,115,128,3,143,233,227,242,239,110,129,3,159,21,194,244,239,238,239,115,128,3,140,239,238,239,243,240,225,227,101,128,255,47,238,229,242,239,237,225,110,128,33,96,111,2,21,229,21,248,231,239,238,229,107,129,1,234,21,239,237,225,227,242,239,110,128,1,236,240,229,110,128,1,134,115,3,22,6,22,33,22,40,236,225,243,104,130,0,216,22,17,22,25,225,227,245,244,101,128,1,254,243,237,225,236,108,128,247,248,237,225,236,108,128,247,111,244,242,239,235,229,225,227,245,244,101,128,1,254,116,2,22,59,22,70,227,249,242,233,236,236,233,99,128,4,126,233,236,228,101,131,0,213,22,83,22,91,22,102,225,227,245,244,101,128,30,76,228,233,229,242,229,243,233,115,128,30,78,243,237,225,236,108,128,247,245,80,136,0,80,22,130,22,138,22,147,22,159,22,211,22,227,22,246,23,2,225,227,245,244,101,128,30,84,227,233,242,227,236,101,128,36,197,228,239,244,225,227,227,229,238,116,128,30,86,101,3,22,167,22,178,22,190,227,249,242,233,236,236,233,99,128,4,31,232,225,242,237,229,238,233,225,110,128,5,74,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,166,104,2,22,217,22,221,105,128,3,166,239,239,107,128,1,164,105,129,3,160,22,233,247,242,225,242,237,229,238,233,225,110,128,5,83,237,239,238,239,243,240,225,227,101,128,255,48,115,2,23,8,23,25,105,129,3,168,23,14,227,249,242,233,236,236,233,99,128,4,112,237,225,236,108,128,247,112,81,131,0,81,23,42,23,51,23,63,227,233,242,227,236,101,128,36,198,237,239,238,239,243,240,225,227,101,128,255,49,243,237,225,236,108,128,247,113,82,138,0,82,23,95,23,119,23,166,23,217,23,230,23,240,23,245,24,19,24,31,24,43,97,2,23,101,23,112,225,242,237,229,238,233,225,110,128,5,76,227,245,244,101,128,1,84,99,4,23,129,23,136,23,145,23,153,225,242,239,110,128,1,88,229,228,233,236,236,97,128,1,86,233,242,227,236,101,128,36,199,239,237,237,225,225,227,227,229,238,116,128,1,86,100,2,23,172,23,182,226,236,231,242,225,246,101,128,2,16,239,116,2,23,189,23,198,225,227,227,229,238,116,128,30,88,226,229,236,239,119,129,30,90,23,208,237,225,227,242,239,110,128,30,92,229,232,225,242,237,229,238,233,225,110,128,5,80,230,242,225,235,244,245,114,128,33,28,232,111,128,3,161,233,110,2,23,252,24,5,231,243,237,225,236,108,128,246,252,246,229,242,244,229,228,226,242,229,246,101,128,2,18,236,233,238,229,226,229,236,239,119,128,30,94,237,239,238,239,243,240,225,227,101,128,255,50,243,237,225,236,108,129,247,114,24,53,233,238,246,229,242,244,229,100,129,2,129,24,66,243,245,240,229,242,233,239,114,128,2,182,83,139,0,83,24,103,26,17,26,55,26,182,26,221,26,250,27,84,27,105,27,117,27,135,27,143,70,6,24,117,24,209,24,241,25,77,25,119,25,221,48,9,24,137,24,145,24,153,24,161,24,169,24,177,24,185,24,193,24,201,177,176,176,176,48,128,37,12,178,176,176,176,48,128,37,20,179,176,176,176,48,128,37,16,180,176,176,176,48,128,37,24,181,176,176,176,48,128,37,60,182,176,176,176,48,128,37,44,183,176,176,176,48,128,37,52,184,176,176,176,48,128,37,28,185,176,176,176,48,128,37,36,49,3,24,217,24,225,24,233,176,176,176,176,48,128,37,0,177,176,176,176,48,128,37,2,185,176,176,176,48,128,37,97,50,9,25,5,25,13,25,21,25,29,25,37,25,45,25,53,25,61,25,69,176,176,176,176,48,128,37,98,177,176,176,176,48,128,37,86,178,176,176,176,48,128,37,85,179,176,176,176,48,128,37,99,180,176,176,176,48,128,37,81,181,176,176,176,48,128,37,87,182,176,176,176,48,128,37,93,183,176,176,176,48,128,37,92,184,176,176,176,48,128,37,91,51,4,25,87,25,95,25,103,25,111,182,176,176,176,48,128,37,94,183,176,176,176,48,128,37,95,184,176,176,176,48,128,37,90,185,176,176,176,48,128,37,84,52,10,25,141,25,149,25,157,25,165,25,173,25,181,25,189,25,197,25,205,25,213,176,176,176,176,48,128,37,105,177,176,176,176,48,128,37,102,178,176,176,176,48,128,37,96,179,176,176,176,48,128,37,80,180,176,176,176,48,128,37,108,181,176,176,176,48,128,37,103,182,176,176,176,48,128,37,104,183,176,176,176,48,128,37,100,184,176,176,176,48,128,37,101,185,176,176,176,48,128,37,89,53,5,25,233,25,241,25,249,26,1,26,9,176,176,176,176,48,128,37,88,177,176,176,176,48,128,37,82,178,176,176,176,48,128,37,83,179,176,176,176,48,128,37,107,180,176,176,176,48,128,37,106,97,2,26,23,26,44,227,245,244,101,129,1,90,26,32,228,239,244,225,227,227,229,238,116,128,30,100,237,240,233,231,242,229,229,107,128,3,224,99,5,26,67,26,98,26,107,26,147,26,169,225,242,239,110,130,1,96,26,78,26,90,228,239,244,225,227,227,229,238,116,128,30,102,243,237,225,236,108,128,246,253,229,228,233,236,236,97,128,1,94,232,247,97,130,1,143,26,117,26,128,227,249,242,233,236,236,233,99,128,4,216,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,218,233,242,99,2,26,155,26,160,236,101,128,36,200,245,237,230,236,229,120,128,1,92,239,237,237,225,225,227,227,229,238,116,128,2,24,228,239,116,2,26,190,26,199,225,227,227,229,238,116,128,30,96,226,229,236,239,119,129,30,98,26,209,228,239,244,225,227,227,229,238,116,128,30,104,101,2,26,227,26,239,232,225,242,237,229,238,233,225,110,128,5,77,246,229,238,242,239,237,225,110,128,33,102,104,5,27,6,27,34,27,48,27,59,27,72,97,2,27,12,27,23,225,242,237,229,238,233,225,110,128,5,71,227,249,242,233,236,236,233,99,128,4,40,227,232,225,227,249,242,233,236,236,233,99,128,4,41,229,233,227,239,240,244,233,99,128,3,226,232,225,227,249,242,233,236,236,233,99,128,4,186,233,237,225,227,239,240,244,233,99,128,3,236,105,2,27,90,27,96,231,237,97,128,3,163,248,242,239,237,225,110,128,33,101,237,239,238,239,243,240,225,227,101,128,255,51,239,230,244,243,233,231,238,227,249,242,233,236,236,233,99,128,4,44,243,237,225,236,108,128,247,115,244,233,231,237,225,231,242,229,229,107,128,3,218,84,141,0,84,27,186,27,191,27,197,28,7,28,32,28,96,28,147,28,177,28,189,28,201,28,246,29,6,29,46,225,117,128,3,164,226,225,114,128,1,102,99,4,27,207,27,214,27,223,27,250,225,242,239,110,128,1,100,229,228,233,236,236,97,128,1,98,233,242,99,2,27,231,27,236,236,101,128,36,201,245,237,230,236,229,248,226,229,236,239,119,128,30,112,239,237,237,225,225,227,227,229,238,116,128,1,98,228,239,116,2,28,15,28,24,225,227,227,229,238,116,128,30,106,226,229,236,239,119,128,30,108,101,4,28,42,28,53,28,73,28,82,227,249,242,233,236,236,233,99,128,4,34,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,172,238,242,239,237,225,110,128,33,105,244,243,229,227,249,242,233,236,236,233,99,128,4,180,104,3,28,104,28,110,28,136,229,244,97,128,3,152,111,2,28,116,28,121,239,107,128,1,172,242,110,129,0,222,28,128,243,237,225,236,108,128,247,254,242,229,229,242,239,237,225,110,128,33,98,105,2,28,153,28,164,236,228,229,243,237,225,236,108,128,246,254,247,238,225,242,237,229,238,233,225,110,128,5,79,236,233,238,229,226,229,236,239,119,128,30,110,237,239,238,239,243,240,225,227,101,128,255,52,111,2,28,207,28,218,225,242,237,229,238,233,225,110,128,5,57,238,101,3,28,227,28,234,28,240,230,233,246,101,128,1,188,243,233,120,128,1,132,244,247,111,128,1,167,242,229,244,242,239,230,236,229,248,232,239,239,107,128,1,174,115,3,29,14,29,26,29,39,229,227,249,242,233,236,236,233,99,128,4,38,232,229,227,249,242,233,236,236,233,99,128,4,11,237,225,236,108,128,247,116,119,2,29,52,29,64,229,236,246,229,242,239,237,225,110,128,33,107,239,242,239,237,225,110,128,33,97,85,142,0,85,29,105,29,123,29,131,29,198,30,69,30,87,30,198,30,214,30,226,31,21,31,30,31,142,31,149,31,219,225,227,245,244,101,129,0,218,29,115,243,237,225,236,108,128,247,250,226,242,229,246,101,128,1,108,99,3,29,139,29,146,29,188,225,242,239,110,128,1,211,233,242,99,2,29,154,29,159,236,101,128,36,202,245,237,230,236,229,120,130,0,219,29,172,29,180,226,229,236,239,119,128,30,118,243,237,225,236,108,128,247,251,249,242,233,236,236,233,99,128,4,35,100,3,29,206,29,229,30,59,226,108,2,29,213,29,221,225,227,245,244,101,128,1,112,231,242,225,246,101,128,2,20,233,229,242,229,243,233,115,134,0,220,29,251,30,3,30,11,30,34,30,42,30,51,225,227,245,244,101,128,1,215,226,229,236,239,119,128,30,114,99,2,30,17,30,24,225,242,239,110,128,1,217,249,242,233,236,236,233,99,128,4,240,231,242,225,246,101,128,1,219,237,225,227,242,239,110,128,1,213,243,237,225,236,108,128,247,252,239,244,226,229,236,239,119,128,30,228,231,242,225,246,101,129,0,217,30,79,243,237,225,236,108,128,247,249,104,2,30,93,30,171,111,2,30,99,30,109,239,235,225,226,239,246,101,128,30,230,242,110,133,1,175,30,124,30,132,30,143,30,151,30,163,225,227,245,244,101,128,30,232,228,239,244,226,229,236,239,119,128,30,240,231,242,225,246,101,128,30,234,232,239,239,235,225,226,239,246,101,128,30,236,244,233,236,228,101,128,30,238,245,238,231,225,242,245,237,236,225,245,116,129,1,112,30,187,227,249,242,233,236,236,233,99,128,4,242,233,238,246,229,242,244,229,228,226,242,229,246,101,128,2,22,235,227,249,242,233,236,236,233,99,128,4,120,109,2,30,232,31,10,225,227,242,239,110,130,1,106,30,244,30,255,227,249,242,233,236,236,233,99,128,4,238,228,233,229,242,229,243,233,115,128,30,122,239,238,239,243,240,225,227,101,128,255,53,239,231,239,238,229,107,128,1,114,240,243,233,236,239,110,133,3,165,31,49,31,53,31,90,31,121,31,134,49,128,3,210,97,2,31,59,31,81,227,245,244,229,232,239,239,235,243,249,237,226,239,236,231,242,229,229,107,128,3,211,230,242,233,227,225,110,128,1,177,228,233,229,242,229,243,233,115,129,3,171,31,103,232,239,239,235,243,249,237,226,239,236,231,242,229,229,107,128,3,212],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10240);allocate([232,239,239,235,243,249,237,226,239,108,128,3,210,244,239,238,239,115,128,3,142,242,233,238,103,128,1,110,115,3,31,157,31,172,31,179,232,239,242,244,227,249,242,233,236,236,233,99,128,4,14,237,225,236,108,128,247,117,244,242,225,233,231,232,116,2,31,191,31,202,227,249,242,233,236,236,233,99,128,4,174,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,176,244,233,236,228,101,130,1,104,31,231,31,239,225,227,245,244,101,128,30,120,226,229,236,239,119,128,30,116,86,136,0,86,32,11,32,20,32,31,32,60,32,67,32,79,32,91,32,99,227,233,242,227,236,101,128,36,203,228,239,244,226,229,236,239,119,128,30,126,101,2,32,37,32,48,227,249,242,233,236,236,233,99,128,4,18,247,225,242,237,229,238,233,225,110,128,5,78,232,239,239,107,128,1,178,237,239,238,239,243,240,225,227,101,128,255,54,239,225,242,237,229,238,233,225,110,128,5,72,243,237,225,236,108,128,247,118,244,233,236,228,101,128,30,124,87,134,0,87,32,123,32,131,32,154,32,194,32,202,32,214,225,227,245,244,101,128,30,130,227,233,242,99,2,32,140,32,145,236,101,128,36,204,245,237,230,236,229,120,128,1,116,100,2,32,160,32,170,233,229,242,229,243,233,115,128,30,132,239,116,2,32,177,32,186,225,227,227,229,238,116,128,30,134,226,229,236,239,119,128,30,136,231,242,225,246,101,128,30,128,237,239,238,239,243,240,225,227,101,128,255,55,243,237,225,236,108,128,247,119,88,134,0,88,32,238,32,247,33,18,33,31,33,35,33,47,227,233,242,227,236,101,128,36,205,100,2,32,253,33,7,233,229,242,229,243,233,115,128,30,140,239,244,225,227,227,229,238,116,128,30,138,229,232,225,242,237,229,238,233,225,110,128,5,61,105,128,3,158,237,239,238,239,243,240,225,227,101,128,255,56,243,237,225,236,108,128,247,120,89,139,0,89,33,81,33,116,33,139,33,189,33,228,33,236,33,253,34,40,34,52,34,60,34,68,97,2,33,87,33,104,227,245,244,101,129,0,221,33,96,243,237,225,236,108,128,247,253,244,227,249,242,233,236,236,233,99,128,4,98,227,233,242,99,2,33,125,33,130,236,101,128,36,206,245,237,230,236,229,120,128,1,118,100,2,33,145,33,165,233,229,242,229,243,233,115,129,1,120,33,157,243,237,225,236,108,128,247,255,239,116,2,33,172,33,181,225,227,227,229,238,116,128,30,142,226,229,236,239,119,128,30,244,229,114,2,33,196,33,208,233,227,249,242,233,236,236,233,99,128,4,43,245,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,248,231,242,225,246,101,128,30,242,232,239,239,107,129,1,179,33,245,225,226,239,246,101,128,30,246,105,3,34,5,34,16,34,27,225,242,237,229,238,233,225,110,128,5,69,227,249,242,233,236,236,233,99,128,4,7,247,238,225,242,237,229,238,233,225,110,128,5,82,237,239,238,239,243,240,225,227,101,128,255,57,243,237,225,236,108,128,247,121,244,233,236,228,101,128,30,248,245,115,2,34,75,34,113,226,233,103,2,34,83,34,94,227,249,242,233,236,236,233,99,128,4,106,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,108,236,233,244,244,236,101,2,34,124,34,135,227,249,242,233,236,236,233,99,128,4,102,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,104,90,136,0,90,34,174,34,198,34,243,35,14,35,81,35,173,35,185,35,197,97,2,34,180,34,191,225,242,237,229,238,233,225,110,128,5,54,227,245,244,101,128,1,121,99,2,34,204,34,221,225,242,239,110,129,1,125,34,213,243,237,225,236,108,128,246,255,233,242,99,2,34,229,34,234,236,101,128,36,207,245,237,230,236,229,120,128,30,144,228,239,116,130,1,123,34,253,35,6,225,227,227,229,238,116,128,1,123,226,229,236,239,119,128,30,146,101,3,35,22,35,33,35,76,227,249,242,233,236,236,233,99,128,4,23,100,2,35,39,35,58,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,152,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,222,244,97,128,3,150,232,101,4,35,92,35,103,35,119,35,130,225,242,237,229,238,233,225,110,128,5,58,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,193,227,249,242,233,236,236,233,99,128,4,22,100,2,35,136,35,155,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,150,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,220,236,233,238,229,226,229,236,239,119,128,30,148,237,239,238,239,243,240,225,227,101,128,255,58,115,2,35,203,35,210,237,225,236,108,128,247,122,244,242,239,235,101,128,1,181,97,149,0,97,36,8,36,144,37,35,37,211,38,55,38,91,45,10,45,47,45,74,46,43,46,81,47,170,47,242,48,197,48,206,49,79,51,87,52,77,52,124,53,19,53,33,97,7,36,24,36,34,36,41,36,48,36,73,36,89,36,100,226,229,238,231,225,236,105,128,9,134,227,245,244,101,128,0,225,228,229,246,97,128,9,6,231,117,2,36,55,36,64,234,225,242,225,244,105,128,10,134,242,237,245,235,232,105,128,10,6,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,62,242,245,243,241,245,225,242,101,128,51,3,246,239,247,229,236,243,233,231,110,3,36,116,36,126,36,133,226,229,238,231,225,236,105,128,9,190,228,229,246,97,128,9,62,231,245,234,225,242,225,244,105,128,10,190,98,4,36,154,36,195,36,204,36,214,226,242,229,246,233,225,244,233,239,110,2,36,169,36,184,237,225,242,235,225,242,237,229,238,233,225,110,128,5,95,243,233,231,238,228,229,246,97,128,9,112,229,238,231,225,236,105,128,9,133,239,240,239,237,239,230,111,128,49,26,242,229,246,101,134,1,3,36,233,36,241,36,252,37,7,37,15,37,27,225,227,245,244,101,128,30,175,227,249,242,233,236,236,233,99,128,4,209,228,239,244,226,229,236,239,119,128,30,183,231,242,225,246,101,128,30,177,232,239,239,235,225,226,239,246,101,128,30,179,244,233,236,228,101,128,30,181,99,4,37,45,37,52,37,131,37,201,225,242,239,110,128,1,206,233,242,99,2,37,60,37,65,236,101,128,36,208,245,237,230,236,229,120,133,0,226,37,84,37,92,37,103,37,111,37,123,225,227,245,244,101,128,30,165,228,239,244,226,229,236,239,119,128,30,173,231,242,225,246,101,128,30,167,232,239,239,235,225,226,239,246,101,128,30,169,244,233,236,228,101,128,30,171,245,244,101,133,0,180,37,147,37,158,37,175,37,182,37,191,226,229,236,239,247,227,237,98,128,3,23,99,2,37,164,37,169,237,98,128,3,1,239,237,98,128,3,1,228,229,246,97,128,9,84,236,239,247,237,239,100,128,2,207,244,239,238,229,227,237,98,128,3,65,249,242,233,236,236,233,99,128,4,48,100,5,37,223,37,233,37,247,37,253,38,31,226,236,231,242,225,246,101,128,2,1,228,225,235,231,245,242,237,245,235,232,105,128,10,113,229,246,97,128,9,5,233,229,242,229,243,233,115,130,0,228,38,11,38,22,227,249,242,233,236,236,233,99,128,4,211,237,225,227,242,239,110,128,1,223,239,116,2,38,38,38,46,226,229,236,239,119,128,30,161,237,225,227,242,239,110,128,1,225,101,131,0,230,38,65,38,73,38,82,225,227,245,244,101,128,1,253,235,239,242,229,225,110,128,49,80,237,225,227,242,239,110,128,1,227,230,233,105,6,38,107,38,127,41,64,41,70,41,85,44,185,48,2,38,113,38,120,176,178,176,56,128,32,21,184,185,180,49,128,32,164,177,48,3,38,136,40,160,41,39,48,9,38,156,38,176,38,238,39,44,39,106,39,168,39,230,40,36,40,98,49,3,38,164,38,168,38,172,55,128,4,16,56,128,4,17,57,128,4,18,50,10,38,198,38,202,38,206,38,210,38,214,38,218,38,222,38,226,38,230,38,234,48,128,4,19,49,128,4,20,50,128,4,21,51,128,4,1,52,128,4,22,53,128,4,23,54,128,4,24,55,128,4,25,56,128,4,26,57,128,4,27,51,10,39,4,39,8,39,12,39,16,39,20,39,24,39,28,39,32,39,36,39,40,48,128,4,28,49,128,4,29,50,128,4,30,51,128,4,31,52,128,4,32,53,128,4,33,54,128,4,34,55,128,4,35,56,128,4,36,57,128,4,37,52,10,39,66,39,70,39,74,39,78,39,82,39,86,39,90,39,94,39,98,39,102,48,128,4,38,49,128,4,39,50,128,4,40,51,128,4,41,52,128,4,42,53,128,4,43,54,128,4,44,55,128,4,45,56,128,4,46,57,128,4,47,53,10,39,128,39,132,39,136,39,140,39,144,39,148,39,152,39,156,39,160,39,164,48,128,4,144,49,128,4,2,50,128,4,3,51,128,4,4,52,128,4,5,53,128,4,6,54,128,4,7,55,128,4,8,56,128,4,9,57,128,4,10,54,10,39,190,39,194,39,198,39,202,39,206,39,210,39,214,39,218,39,222,39,226,48,128,4,11,49,128,4,12,50,128,4,14,51,128,246,196,52,128,246,197,53,128,4,48,54,128,4,49,55,128,4,50,56,128,4,51,57,128,4,52,55,10,39,252,40,0,40,4,40,8,40,12,40,16,40,20,40,24,40,28,40,32,48,128,4,53,49,128,4,81,50,128,4,54,51,128,4,55,52,128,4,56,53,128,4,57,54,128,4,58,55,128,4,59,56,128,4,60,57,128,4,61,56,10,40,58,40,62,40,66,40,70,40,74,40,78,40,82,40,86,40,90,40,94,48,128,4,62,49,128,4,63,50,128,4,64,51,128,4,65,52,128,4,66,53,128,4,67,54,128,4,68,55,128,4,69,56,128,4,70,57,128,4,71,57,10,40,120,40,124,40,128,40,132,40,136,40,140,40,144,40,148,40,152,40,156,48,128,4,72,49,128,4,73,50,128,4,74,51,128,4,75,52,128,4,76,53,128,4,77,54,128,4,78,55,128,4,79,56,128,4,145,57,128,4,82,49,4,40,170,40,232,40,237,41,7,48,10,40,192,40,196,40,200,40,204,40,208,40,212,40,216,40,220,40,224,40,228,48,128,4,83,49,128,4,84,50,128,4,85,51,128,4,86,52,128,4,87,53,128,4,88,54,128,4,89,55,128,4,90,56,128,4,91,57,128,4,92,177,48,128,4,94,52,4,40,247,40,251,40,255,41,3,53,128,4,15,54,128,4,98,55,128,4,114,56,128,4,116,57,5,41,19,41,23,41,27,41,31,41,35,50,128,246,198,51,128,4,95,52,128,4,99,53,128,4,115,54,128,4,117,56,2,41,45,41,59,51,2,41,51,41,55,49,128,246,199,50,128,246,200,180,54,128,4,217,178,185,57,128,32,14,179,48,2,41,77,41,81,48,128,32,15,49,128,32,13,181,55,7,41,102,41,172,42,237,43,58,44,15,44,108,44,179,51,2,41,108,41,122,56,2,41,114,41,118,49,128,6,106,56,128,6,12,57,8,41,140,41,144,41,148,41,152,41,156,41,160,41,164,41,168,50,128,6,96,51,128,6,97,52,128,6,98,53,128,6,99,54,128,6,100,55,128,6,101,56,128,6,102,57,128,6,103,52,7,41,188,41,220,42,26,42,88,42,120,42,176,42,232,48,5,41,200,41,204,41,208,41,212,41,216,48,128,6,104,49,128,6,105,51,128,6,27,55,128,6,31,57,128,6,33,49,10,41,242,41,246,41,250,41,254,42,2,42,6,42,10,42,14,42,18,42,22,48,128,6,34,49,128,6,35,50,128,6,36,51,128,6,37,52,128,6,38,53,128,6,39,54,128,6,40,55,128,6,41,56,128,6,42,57,128,6,43,50,10,42,48,42,52,42,56,42,60,42,64,42,68,42,72,42,76,42,80,42,84,48,128,6,44,49,128,6,45,50,128,6,46,51,128,6,47,52,128,6,48,53,128,6,49,54,128,6,50,55,128,6,51,56,128,6,52,57,128,6,53,51,5,42,100,42,104,42,108,42,112,42,116,48,128,6,54,49,128,6,55,50,128,6,56,51,128,6,57,52,128,6,58,52,9,42,140,42,144,42,148,42,152,42,156,42,160,42,164,42,168,42,172,48,128,6,64,49,128,6,65,50,128,6,66,51,128,6,67,52,128,6,68,53,128,6,69,54,128,6,70,56,128,6,72,57,128,6,73,53,9,42,196,42,200,42,204,42,208,42,212,42,216,42,220,42,224,42,228,48,128,6,74,49,128,6,75,50,128,6,76,51,128,6,77,52,128,6,78,53,128,6,79,54,128,6,80,55,128,6,81,56,128,6,82,183,48,128,6,71,53,3,42,245,43,21,43,53,48,5,43,1,43,5,43,9,43,13,43,17,53,128,6,164,54,128,6,126,55,128,6,134,56,128,6,152,57,128,6,175,49,5,43,33,43,37,43,41,43,45,43,49,49,128,6,121,50,128,6,136,51,128,6,145,52,128,6,186,57,128,6,210,179,52,128,6,213,54,7,43,74,43,79,43,84,43,89,43,127,43,189,43,251,179,54,128,32,170,180,53,128,5,190,181,56,128,5,195,54,6,43,103,43,107,43,111,43,115,43,119,43,123,52,128,5,208,53,128,5,209,54,128,5,210,55,128,5,211,56,128,5,212,57,128,5,213,55,10,43,149,43,153,43,157,43,161,43,165,43,169,43,173,43,177,43,181,43,185,48,128,5,214,49,128,5,215,50,128,5,216,51,128,5,217,52,128,5,218,53,128,5,219,54,128,5,220,55,128,5,221,56,128,5,222,57,128,5,223,56,10,43,211,43,215,43,219,43,223,43,227,43,231,43,235,43,239,43,243,43,247,48,128,5,224,49,128,5,225,50,128,5,226,51,128,5,227,52,128,5,228,53,128,5,229,54,128,5,230,55,128,5,231,56,128,5,232,57,128,5,233,57,3,44,3,44,7,44,11,48,128,5,234,52,128,251,42,53,128,251,43,55,4,44,25,44,39,44,59,44,64,48,2,44,31,44,35,48,128,251,75,53,128,251,31,49,3,44,47,44,51,44,55,54,128,5,240,55,128,5,241,56,128,5,242,178,51,128,251,53,57,7,44,80,44,84,44,88,44,92,44,96,44,100,44,104,51,128,5,180,52,128,5,181,53,128,5,182,54,128,5,187,55,128,5,184,56,128,5,183,57,128,5,176,56,3,44,116,44,160,44,165,48,7,44,132,44,136,44,140,44,144,44,148,44,152,44,156,48,128,5,178,49,128,5,177,50,128,5,179,51,128,5,194,52,128,5,193,54,128,5,185,55,128,5,188,179,57,128,5,189,52,2,44,171,44,175,49,128,5,191,50,128,5,192,185,178,57,128,2,188,54,3,44,193,44,252,45,3,49,4,44,203,44,219,44,225,44,246,50,2,44,209,44,214,180,56,128,33,5,184,57,128,33,19,179,181,50,128,33,22,181,55,3,44,234,44,238,44,242,51,128,32,44,52,128,32,45,53,128,32,46,182,182,52,128,32,12,179,177,182,55,128,6,109,180,185,179,55,128,2,189,103,2,45,16,45,23,242,225,246,101,128,0,224,117,2,45,29,45,38,234,225,242,225,244,105,128,10,133,242,237,245,235,232,105,128,10,5,104,2,45,53,45,63,233,242,225,231,225,238,97,128,48,66,239,239,235,225,226,239,246,101,128,30,163,105,7,45,90,45,115,45,122,45,134,45,159,45,175,45,255,98,2,45,96,45,105,229,238,231,225,236,105,128,9,144,239,240,239,237,239,230,111,128,49,30,228,229,246,97,128,9,16,229,227,249,242,233,236,236,233,99,128,4,213,231,117,2,45,141,45,150,234,225,242,225,244,105,128,10,144,242,237,245,235,232,105,128,10,16,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,72,110,5,45,187,45,196,45,210,45,226,45,241,225,242,225,226,233,99,128,6,57,230,233,238,225,236,225,242,225,226,233,99,128,254,202,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,203,237,229,228,233,225,236,225,242,225,226,233,99,128,254,204,246,229,242,244,229,228,226,242,229,246,101,128,2,3,246,239,247,229,236,243,233,231,110,3,46,15,46,25,46,32,226,229,238,231,225,236,105,128,9,200,228,229,246,97,128,9,72,231,245,234,225,242,225,244,105,128,10,200,107,2,46,49,46,73,225,244,225,235,225,238,97,129,48,162,46,61,232,225,236,230,247,233,228,244,104,128,255,113,239,242,229,225,110,128,49,79,108,3,46,89,47,145,47,154,101,2,46,95,47,140,102,136,5,208,46,115,46,124,46,139,46,153,46,242,47,0,47,111,47,125,225,242,225,226,233,99,128,6,39,228,225,231,229,243,232,232,229,226,242,229,119,128,251,48,230,233,238,225,236,225,242,225,226,233,99,128,254,142,104,2,46,159,46,234,225,237,250,97,2,46,168,46,201,225,226,239,246,101,2,46,178,46,187,225,242,225,226,233,99,128,6,35,230,233,238,225,236,225,242,225,226,233,99,128,254,132,226,229,236,239,119,2,46,211,46,220,225,242,225,226,233,99,128,6,37,230,233,238,225,236,225,242,225,226,233,99,128,254,136,229,226,242,229,119,128,5,208,236,225,237,229,228,232,229,226,242,229,119,128,251,79,237,97,2,47,7,47,43,228,228,225,225,226,239,246,101,2,47,20,47,29,225,242,225,226,233,99,128,6,34,230,233,238,225,236,225,242,225,226,233,99,128,254,130,235,243,245,242,97,4,47,57,47,66,47,80,47,96,225,242,225,226,233,99,128,6,73,230,233,238,225,236,225,242,225,226,233,99,128,254,240,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,243,237,229,228,233,225,236,225,242,225,226,233,99,128,254,244,240,225,244,225,232,232,229,226,242,229,119,128,251,46,241,225,237,225,244,243,232,229,226,242,229,119,128,251,47,240,104,128,33,53,236,229,241,245,225,108,128,34,76,240,232,97,129,3,177,47,162,244,239,238,239,115,128,3,172,109,4,47,180,47,188,47,199,47,233,225,227,242,239,110,128,1,1,239,238,239,243,240,225,227,101,128,255,65,240,229,242,243,225,238,100,130,0,38,47,213,47,225,237,239,238,239,243,240,225,227,101,128,255,6,243,237,225,236,108,128,247,38,243,241,245,225,242,101,128,51,194,110,4,47,252,48,7,48,129,48,139,226,239,240,239,237,239,230,111,128,49,34,103,4,48,17,48,28,48,42,48,121,226,239,240,239,237,239,230,111,128,49,36,235,232,225,238,235,232,245,244,232,225,105,128,14,90,236,101,131,34,32,48,53,48,106,48,113,226,242,225,227,235,229,116,2,48,65,48,85,236,229,230,116,129,48,8,48,74,246,229,242,244,233,227,225,108,128,254,63,242,233,231,232,116,129,48,9,48,95,246,229,242,244,233,227,225,108,128,254,64,236,229,230,116,128,35,41,242,233,231,232,116,128,35,42,243,244,242,239,109,128,33,43,239,244,229,236,229,233,97,128,3,135,117,2,48,145,48,157,228,225,244,244,225,228,229,246,97,128,9,82,243,246,225,242,97,3,48,169,48,179,48,186,226,229,238,231,225,236,105,128,9,130,228,229,246,97,128,9,2,231,245,234,225,242,225,244,105,128,10,130,239,231,239,238,229,107,128,1,5,112,3,48,214,48,238,49,12,97,2,48,220,48,232,225,244,239,243,241,245,225,242,101,128,51,0,242,229,110,128,36,156,239,243,244,242,239,240,232,101,2,48,251,49,6,225,242,237,229,238,233,225,110,128,5,90,237,239,100,128,2,188,112,2,49,18,49,23,236,101,128,248,255,242,111,2,49,30,49,38,225,227,232,229,115,128,34,80,120,2,49,44,49,64,229,241,245,225,108,129,34,72,49,54,239,242,233,237,225,231,101,128,34,82,233,237,225,244,229,236,249,229,241,245,225,108,128,34,69,114,4,49,89,49,116,49,120,49,165,225,229,97,2,49,97,49,107,229,235,239,242,229,225,110,128,49,142,235,239,242,229,225,110,128,49,141,99,128,35,18,105,2,49,126,49,140,231,232,244,232,225,236,230,242,233,238,103,128,30,154,238,103,130,0,229,49,149,49,157,225,227,245,244,101,128,1,251,226,229,236,239,119,128,30,1,242,239,119,8,49,185,49,192,50,65,50,131,50,181,50,236,51,3,51,78,226,239,244,104,128,33,148,100,3,49,200,49,239,50,30,225,243,104,4,49,212,49,219,49,226,49,234,228,239,247,110,128,33,227,236,229,230,116,128,33,224,242,233,231,232,116,128,33,226,245,112,128,33,225,226,108,5,49,252,50,3,50,10,50,17,50,25,226,239,244,104,128,33,212,228,239,247,110,128,33,211,236,229,230,116,128,33,208,242,233,231,232,116,128,33,210,245,112,128,33,209,239,247,110,131,33,147,50,42,50,49,50,57,236,229,230,116,128,33,153,242,233,231,232,116,128,33,152,247,232,233,244,101,128,33,233,104,2,50,71,50,122,229,225,100,4,50,83,50,93,50,103,50,114,228,239,247,238,237,239,100,128,2,197,236,229,230,244,237,239,100,128,2,194,242,233,231,232,244,237,239,100,128,2,195,245,240,237,239,100,128,2,196,239,242,233,250,229,120,128,248,231,236,229,230,116,131,33,144,50,144,50,161,50,173,228,226,108,129,33,208,50,152,243,244,242,239,235,101,128,33,205,239,246,229,242,242,233,231,232,116,128,33,198,247,232,233,244,101,128,33,230,242,233,231,232,116,132,33,146,50,197,50,209,50,217,50,228,228,226,236,243,244,242,239,235,101,128,33,207,232,229,225,246,121,128,39,158,239,246,229,242,236,229,230,116,128,33,196,247,232,233,244,101,128,33,232,244,225,98,2,50,244,50,251,236,229,230,116,128,33,228,242,233,231,232,116,128,33,229,245,112,132,33,145,51,16,51,44,51,62,51,70,100,2,51,22,51,34,110,129,33,149,51,28,226,243,101,128,33,168,239,247,238,226,225,243,101,128,33,168,236,229,230,116,129,33,150,51,53,239,230,228,239,247,110,128,33,197,242,233,231,232,116,128,33,151,247,232,233,244,101,128,33,231,246,229,242,244,229,120,128,248,230,115,5,51,99,51,175,51,220,52,47,52,57,99,2,51,105,51,157,233,105,2,51,112,51,135,227,233,242,227,245,109,129,0,94,51,123,237,239,238,239,243,240,225,227,101,128,255,62,244,233,236,228,101,129,0,126,51,145,237,239,238,239,243,240,225,227,101,128,255,94,242,233,240,116,129,2,81,51,166,244,245,242,238,229,100,128,2,82,237,225,236,108,2,51,184,51,195,232,233,242,225,231,225,238,97,128,48,65,235,225,244,225,235,225,238,97,129,48,161,51,208,232,225,236,230,247,233,228,244,104,128,255,103,244,229,242,233,115,2,51,230,52,43,107,131,0,42,51,240,52,12,52,35,97,2,51,246,52,4,236,244,239,238,229,225,242,225,226,233,99,128,6,109,242,225,226,233,99,128,6,109,109,2,52,18,52,24,225,244,104,128,34,23,239,238,239,243,240,225,227,101,128,255,10,243,237,225,236,108,128,254,97,109,128,32,66,245,240,229,242,233,239,114,128,246,233,249,237,240,244,239,244,233,227,225,236,236,249,229,241,245,225,108,128,34,67,116,132,0,64,52,89,52,96,52,108,52,116,233,236,228,101,128,0,227,237,239,238,239,243,240,225,227,101,128,255,32,243,237,225,236,108,128,254,107,245,242,238,229,100,128,2,80,117,6,52,138,52,163,52,170,52,195,52,215,52,231,98,2,52,144,52,153,229,238,231,225,236,105,128,9,148,239,240,239,237,239,230,111,128,49,32,228,229,246,97,128,9,20,231,117,2,52,177,52,186,234,225,242,225,244,105,128,10,148,242,237,245,235,232,105,128,10,20,236,229,238,231,244,232,237,225,242,235,226,229,238,231,225,236,105,128,9,215,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,76,246,239,247,229,236,243,233,231,110,3,52,247,53,1,53,8,226,229,238,231,225,236,105,128,9,204,228,229,246,97,128,9,76,231,245,234,225,242,225,244,105,128,10,204,246,225,231,242,225,232,225,228,229,246,97,128,9,61,121,2,53,39,53,51,226,225,242,237,229,238,233,225,110,128,5,97,233,110,130,5,226,53,60,53,75,225,236,244,239,238,229,232,229,226,242,229,119,128,251,32,232,229,226,242,229,119,128,5,226,98,144,0,98,53,120,53,255,54,10,54,19,54,44,55,85,55,147,55,220,57,146,57,158,57,201,57,209,57,219,59,89,59,113,59,122,97,7,53,136,53,146,53,170,53,177,53,202,53,226,53,237,226,229,238,231,225,236,105,128,9,172,227,235,243,236,225,243,104,129,0,92,53,158,237,239,238,239,243,240,225,227,101,128,255,60,228,229,246,97,128,9,44,231,117,2,53,184,53,193,234,225,242,225,244,105,128,10,172,242,237,245,235,232,105,128,10,44,104,2,53,208,53,218,233,242,225,231,225,238,97,128,48,112,244,244,232,225,105,128,14,63,235,225,244,225,235,225,238,97,128,48,208,114,129,0,124,53,243,237,239,238,239,243,240,225,227,101,128,255,92,226,239,240,239,237,239,230,111,128,49,5,227,233,242,227,236,101,128,36,209,228,239,116,2,54,27,54,36,225,227,227,229,238,116,128,30,3,226,229,236,239,119,128,30,5,101,6,54,58,54,79,54,102,54,244,54,255,55,11,225,237,229,228,243,233,248,244,229,229,238,244,232,238,239,244,229,115,128,38,108,99,2,54,85,54,92,225,245,243,101,128,34,53,249,242,233,236,236,233,99,128,4,49,104,5,54,114,54,123,54,137,54,167,54,226,225,242,225,226,233,99,128,6,40,230,233,238,225,236,225,242,225,226,233,99,128,254,144,105,2,54,143,54,158,238,233,244,233,225,236,225,242,225,226,233,99,128,254,145,242,225,231,225,238,97,128,48,121,237,101,2,54,174,54,187,228,233,225,236,225,242,225,226,233,99,128,254,146,229,237,105,2,54,195,54,210,238,233,244,233,225,236,225,242,225,226,233,99,128,252,159,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,8,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,109,235,225,244,225,235,225,238,97,128,48,217,238,225,242,237,229,238,233,225,110,128,5,98,116,132,5,209,55,23,55,43,55,63,55,72,97,129,3,178,55,29,243,249,237,226,239,236,231,242,229,229,107,128,3,208,228,225,231,229,243,104,129,251,49,55,54,232,229,226,242,229,119,128,251,49,232,229,226,242,229,119,128,5,209,242,225,230,229,232,229,226,242,229,119,128,251,76,104,2,55,91,55,141,97,3,55,99,55,109,55,116,226,229,238,231,225,236,105,128,9,173,228,229,246,97,128,9,45,231,117,2,55,123,55,132,234,225,242,225,244,105,128,10,173,242,237,245,235,232,105,128,10,45,239,239,107,128,2,83,105,5,55,159,55,170,55,181,55,195,55,209,232,233,242,225,231,225,238,97,128,48,115,235,225,244,225,235,225,238,97,128,48,211,236,225,226,233,225,236,227,236,233,227,107,128,2,152,238,228,233,231,245,242,237,245,235,232,105,128,10,2,242,245,243,241,245,225,242,101,128,51,49,108,3,55,228,57,129,57,140,97,2,55,234,57,124,227,107,6,55,249,56,2,56,39,56,188,56,243,57,39,227,233,242,227,236,101,128,37,207,100,2,56,8,56,17,233,225,237,239,238,100,128,37,198,239,247,238,240,239,233,238,244,233,238,231,244,242,233,225,238,231,236,101,128,37,188,108,2,56,45,56,148,101,2,56,51,56,87,230,244,240,239,233,238,244,233,238,103,2,56,66,56,76,240,239,233,238,244,229,114,128,37,196,244,242,233,225,238,231,236,101,128,37,192,238,244,233,227,245,236,225,242,226,242,225,227,235,229,116,2,56,107,56,127,236,229,230,116,129,48,16,56,116,246,229,242,244,233,227,225,108,128,254,59,242,233,231,232,116,129,48,17,56,137,246,229,242,244,233,227,225,108,128,254,60,239,247,229,114,2,56,157,56,172,236,229,230,244,244,242,233,225,238,231,236,101,128,37,227,242,233,231,232,244,244,242,233,225,238,231,236,101,128,37,226,114,2,56,194,56,205,229,227,244,225,238,231,236,101,128,37,172,233,231,232,244,240,239,233,238,244,233,238,103,2,56,222,56,232,240,239,233,238,244,229,114,128,37,186,244,242,233,225,238,231,236,101,128,37,182,115,3,56,251,57,25,57,33,109,2,57,1,57,13,225,236,236,243,241,245,225,242,101,128,37,170,233,236,233,238,231,230,225,227,101,128,38,59,241,245,225,242,101,128,37,160,244,225,114,128,38,5,245,240,112,2,57,47,57,85,229,114,2,57,54,57,69,236,229,230,244,244,242,233,225,238,231,236,101,128,37,228,242,233,231,232,244,244,242,233,225,238,231,236,101,128,37,229,239,233,238,244,233,238,103,2,57,97,57,113,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,180,244,242,233,225,238,231,236,101,128,37,178,238,107,128,36,35,233,238,229,226,229,236,239,119,128,30,7,239,227,107,128,37,136,237,239,238,239,243,240,225,227,101,128,255,66,111,3,57,166,57,179,57,190,226,225,233,237,225,233,244,232,225,105,128,14,26,232,233,242,225,231,225,238,97,128,48,124,235,225,244,225,235,225,238,97,128,48,220,240,225,242,229,110,128,36,157,241,243,241,245,225,242,101,128,51,195,114,4,57,229,58,223,59,40,59,79,225,99,2,57,236,58,130,101,3,57,244,57,249,58,61,229,120,128,248,244,236,229,230,116,133,0,123,58,10,58,15,58,37,58,45,58,50,226,116,128,248,243,109,2,58,21,58,26,233,100,128,248,242,239,238,239,243,240,225,227,101,128,255,91,243,237,225,236,108,128,254,91,244,112,128,248,241,246,229,242,244,233,227,225,108,128,254,55,242,233,231,232,116,133,0,125,58,79,58,84,58,106,58,114,58,119,226,116,128,248,254,109,2,58,90,58,95,233,100,128,248,253,239,238,239,243,240,225,227,101,128,255,93,243,237,225,236,108,128,254,92,244,112,128,248,252,246,229,242,244,233,227,225,108,128,254,56,235,229,116,2,58,138,58,180,236,229,230,116,132,0,91,58,153,58,158,58,163,58,175,226,116,128,248,240,229,120,128,248,239,237,239,238,239,243,240,225,227,101,128,255,59,244,112,128,248,238,242,233,231,232,116,132,0,93,58,196,58,201,58,206,58,218,226,116,128,248,251,229,120,128,248,250,237,239,238,239,243,240,225,227,101,128,255,61,244,112,128,248,249,229,246,101,131,2,216,58,235,58,246,58,252,226,229,236,239,247,227,237,98,128,3,46,227,237,98,128,3,6,233,238,246,229,242,244,229,100,3,59,11,59,22,59,28,226,229,236,239,247,227,237,98,128,3,47,227,237,98,128,3,17,228,239,245,226,236,229,227,237,98,128,3,97,233,228,231,101,2,59,49,59,60,226,229,236,239,247,227,237,98,128,3,42,233,238,246,229,242,244,229,228,226,229,236,239,247,227,237,98,128,3,58,239,235,229,238,226,225,114,128,0,166,115,2,59,95,59,103,244,242,239,235,101,128,1,128,245,240,229,242,233,239,114,128,246,234,244,239,240,226,225,114,128,1,131,117,3,59,130,59,141,59,152,232,233,242,225,231,225,238,97,128,48,118,235,225,244,225,235,225,238,97,128,48,214,236,108,2,59,159,59,189,229,116,130,32,34,59,168,59,178,233,238,246,229,242,243,101,128,37,216,239,240,229,242,225,244,239,114,128,34,25,243,229,249,101,128,37,206,99,143,0,99,59,230,60,179,60,190,60,254,61,29,61,122,63,33,64,17,64,117,64,166,67,158,67,166,67,176,67,188,67,221,97,9,59,250,60,5,60,15,60,22,60,29,60,54,60,64,60,116,60,125,225,242,237,229,238,233,225,110,128,5,110,226,229,238,231,225,236,105,128,9,154,227,245,244,101,128,1,7,228,229,246,97,128,9,26,231,117,2,60,36,60,45,234,225,242,225,244,105,128,10,154,242,237,245,235,232,105,128,10,26,236,243,241,245,225,242,101,128,51,136,238,228,242,225,226,233,238,228,117,4,60,82,60,92,60,98,60,105,226,229,238,231,225,236,105,128,9,129,227,237,98,128,3,16,228,229,246,97,128,9,1,231,245,234,225,242,225,244,105,128,10,129,240,243,236,239,227,107,128,33,234,114,3,60,133,60,139,60,165,229,239,102,128,33,5,239,110,130,2,199,60,148,60,159,226,229,236,239,247,227,237,98,128,3,44,227,237,98,128,3,12,242,233,225,231,229,242,229,244,245,242,110,128,33,181,226,239,240,239,237,239,230,111,128,49,24,99,4,60,200,60,207,60,226,60,248,225,242,239,110,128,1,13,229,228,233,236,236,97,129,0,231,60,218,225,227,245,244,101,128,30,9,233,242,99,2,60,234,60,239,236,101,128,36,210,245,237,230,236,229,120,128,1,9,245,242,108,128,2,85,100,2,61,4,61,20,239,116,129,1,11,61,11,225,227,227,229,238,116,128,1,11,243,241,245,225,242,101,128,51,197,101,2,61,35,61,51,228,233,236,236,97,129,0,184,61,45,227,237,98,128,3,39,238,116,132,0,162,61,64,61,88,61,100,61,111,105,2,61,70,61,78,231,242,225,228,101,128,33,3,238,230,229,242,233,239,114,128,246,223,237,239,238,239,243,240,225,227,101,128,255,224,239,236,228,243,244,249,236,101,128,247,162,243,245,240,229,242,233,239,114,128,246,224,104,5,61,134,61,197,61,208,62,136,62,228,97,4,61,144,61,155,61,165,61,172,225,242,237,229,238,233,225,110,128,5,121,226,229,238,231,225,236,105,128,9,155,228,229,246,97,128,9,27,231,117,2,61,179,61,188,234,225,242,225,244,105,128,10,155,242,237,245,235,232,105,128,10,27,226,239,240,239,237,239,230,111,128,49,20,101,6,61,222,61,242,62,10,62,78,62,90,62,111,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,189,99,2,61,248,62,0,235,237,225,242,107,128,39,19,249,242,233,236,236,233,99,128,4,71,100,2,62,16,62,60,229,243,227,229,238,228,229,114,2,62,29,62,49,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,191,227,249,242,233,236,236,233,99,128,4,183,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,245,232,225,242,237,229,238,233,225,110,128,5,115,235,232,225,235,225,243,243,233,225,238,227,249,242,233,236,236,233,99,128,4,204,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,185,105,129,3,199,62,142,229,245,227,104,4,62,155,62,190,62,205,62,214,97,2,62,161,62,176,227,233,242,227,236,229,235,239,242,229,225,110,128,50,119,240,225,242,229,238,235,239,242,229,225,110,128,50,23,227,233,242,227,236,229,235,239,242,229,225,110,128,50,105,235,239,242,229,225,110,128,49,74,240,225,242,229,238,235,239,242,229,225,110,128,50,9,111,2,62,234,63,28,227,104,3,62,243,63,9,63,19,225,110,2,62,250,63,2,231,244,232,225,105,128,14,10,244,232,225,105,128,14,8,233,238,231,244,232,225,105,128,14,9,239,229,244,232,225,105,128,14,12,239,107,128,1,136,105,2,63,39,63,141,229,245,99,5,63,53,63,88,63,103,63,112,63,126,97,2,63,59,63,74,227,233,242,227,236,229,235,239,242,229,225,110,128,50,118,240,225,242,229,238,235,239,242,229,225,110,128,50,22,227,233,242,227,236,229,235,239,242,229,225,110,128,50,104,235,239,242,229,225,110,128,49,72,240,225,242,229,238,235,239,242,229,225,110,128,50,8,245,240,225,242,229,238,235,239,242,229,225,110,128,50,28,242,99,2,63,148,63,243,236,101,132,37,203,63,161,63,172,63,177,63,201,237,245,236,244,233,240,236,121,128,34,151,239,116,128,34,153,112,2,63,183,63,189,236,245,115,128,34,149,239,243,244,225,236,237,225,242,107,128,48,54,247,233,244,104,2,63,210,63,226,236,229,230,244,232,225,236,230,226,236,225,227,107,128,37,208,242,233,231,232,244,232,225,236,230,226,236,225,227,107,128,37,209,245,237,230,236,229,120,130,2,198,64,0,64,11,226,229,236,239,247,227,237,98,128,3,45,227,237,98,128,3,2,108,3,64,25,64,31,64,85,229,225,114,128,35,39,233,227,107,4,64,43,64,54,64,63,64,73,225,236,246,229,239,236,225,114,128,1,194,228,229,238,244,225,108,128,1,192,236,225,244,229,242,225,108,128,1,193,242,229,244,242,239,230,236,229,120,128,1,195,245,98,129,38,99,64,92,243,245,233,116,2,64,101,64,109,226,236,225,227,107,128,38,99,247,232,233,244,101,128,38,103,109,3,64,125,64,139,64,150,227,245,226,229,228,243,241,245,225,242,101,128,51,164,239,238,239,243,240,225,227,101,128,255,67,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,160,111,8,64,184,64,195,65,26,65,224,66,253,67,28,67,135,67,144,225,242,237,229,238,233,225,110,128,5,129,236,239,110,131,0,58,64,207,64,232,64,251,237,239,110,2,64,215,64,223,229,244,225,242,121,128,32,161,239,243,240,225,227,101,128,255,26,115,2,64,238,64,244,233,231,110,128,32,161,237,225,236,108,128,254,85,244,242,233,225,238,231,245,236,225,114,2,65,10,65,20,232,225,236,230,237,239,100,128,2,209,237,239,100,128,2,208,109,2,65,32,65,217,237,97,134,0,44,65,49,65,113,65,124,65,136,65,166,65,189,97,3,65,57,65,83,65,91,226,239,246,101,2,65,66,65,72,227,237,98,128,3,19,242,233,231,232,244,227,237,98,128,3,21,227,227,229,238,116,128,246,195,114,2,65,97,65,104,225,226,233,99,128,6,12,237,229,238,233,225,110,128,5,93,233,238,230,229,242,233,239,114,128,246,225,237,239,238,239,243,240,225,227,101,128,255,12,242,229,246,229,242,243,229,100,2,65,149,65,160,225,226,239,246,229,227,237,98,128,3,20,237,239,100,128,2,189,115,2,65,172,65,179,237,225,236,108,128,254,80,245,240,229,242,233,239,114,128,246,226,244,245,242,238,229,100,2,65,200,65,211,225,226,239,246,229,227,237,98,128,3,18,237,239,100,128,2,187,240,225,243,115,128,38,60,110,2,65,230,65,239,231,242,245,229,238,116,128,34,69,116,2,65,245,66,3,239,245,242,233,238,244,229,231,242,225,108,128,34,46,242,239,108,142,35,3,66,37,66,43,66,58,66,73,66,117,66,162,66,176,66,181,66,186,66,191,66,197,66,202,66,243,66,248,193,195,75,128,0,6,66,2,66,49,66,54,197,76,128,0,7,83,128,0,8,67,2,66,64,66,69,193,78,128,0,24,82,128,0,13,68,3,66,81,66,107,66,112,67,4,66,91,66,95,66,99,66,103,49,128,0,17,50,128,0,18,51,128,0,19,52,128,0,20,197,76,128,0,127,204,69,128,0,16,69,5,66,129,66,133,66,138,66,143,66,148,77,128,0,25,206,81,128,0,5,207,84,128,0,4,211,67,128,0,27,84,2,66,154,66,158,66,128,0,23,88,128,0,3,70,2,66,168,66,172,70,128,0,12,83,128,0,28,199,83,128,0,29,200,84,128,0,9,204,70,128,0,10,206,193,75,128,0,21,210,83,128,0,30,83,5,66,214,66,218,66,228,66,233,66,238,73,128,0,15,79,129,0,14,66,224,84,128,0,2,212,88,128,0,1,213,66,128,0,26,217,78,128,0,22,213,83,128,0,31,214,84,128,0,11,240,249,242,233,231,232,116,129,0,169,67,9,115,2,67,15,67,21,225,238,115,128,248,233,229,242,233,102,128,246,217,114,2,67,34,67,118,238,229,242,226,242,225,227,235,229,116,2,67,49,67,83,236,229,230,116,130,48,12,67,60,67,72,232,225,236,230,247,233,228,244,104,128,255,98,246,229,242,244,233,227,225,108,128,254,65,242,233,231,232,116,130,48,13,67,95,67,107,232,225,236,230,247,233,228,244,104,128,255,99,246,229,242,244,233,227,225,108,128,254,66,240,239,242,225,244,233,239,238,243,241,245,225,242,101,128,51,127,243,241,245,225,242,101,128,51,199,246,229,242,235,231,243,241,245,225,242,101,128,51,198,240,225,242,229,110,128,36,158,242,245,250,229,233,242,111,128,32,162,243,244,242,229,244,227,232,229,100,128,2,151,245,114,2,67,195,67,213,236,121,2,67,202,67,208,225,238,100,128,34,207,239,114,128,34,206,242,229,238,227,121,128,0,164,249,114,4,67,232,67,240,67,247,67,255,194,242,229,246,101,128,246,209,198,236,229,120,128,246,210,226,242,229,246,101,128,246,212,230,236,229,120,128,246,213,100,146,0,100,68,46,69,184,70,208,71,12,71,188,72,142,72,204,73,133,73,146,73,155,73,181,73,206,73,215,75,26,75,34,75,45,75,65,75,93,97,11,68,70,68,81,68,91,68,163,68,226,68,237,68,248,69,61,69,123,69,129,69,159,225,242,237,229,238,233,225,110,128,5,100,226,229,238,231,225,236,105,128,9,166,100,5,68,103,68,112,68,118,68,132,68,148,225,242,225,226,233,99,128,6,54,229,246,97,128,9,38,230,233,238,225,236,225,242,225,226,233,99,128,254,190,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,191,237,229,228,233,225,236,225,242,225,226,233,99,128,254,192,103,3,68,171,68,188,68,202,229,243,104,129,5,188,68,179,232,229,226,242,229,119,128,5,188,231,229,114,129,32,32,68,196,228,226,108,128,32,33,117,2,68,208,68,217,234,225,242,225,244,105,128,10,166,242,237,245,235,232,105,128,10,38,232,233,242,225,231,225,238,97,128,48,96,235,225,244,225,235,225,238,97,128,48,192,108,3,69,0,69,9,69,47,225,242,225,226,233,99,128,6,47,229,116,130,5,211,69,18,69,38,228,225,231,229,243,104,129,251,51,69,29,232,229,226,242,229,119,128,251,51,232,229,226,242,229,119,128,5,211,230,233,238,225,236,225,242,225,226,233,99,128,254,170,237,237,97,3,69,71,69,80,69,92,225,242,225,226,233,99,128,6,79,236,239,247,225,242,225,226,233,99,128,6,79,244,225,238,97,2,69,101,69,115,236,244,239,238,229,225,242,225,226,233,99,128,6,76,242,225,226,233,99,128,6,76,238,228,97,128,9,100,242,231,97,2,69,137,69,146,232,229,226,242,229,119,128,5,167,236,229,230,244,232,229,226,242,229,119,128,5,167,243,233,225,240,238,229,245,237,225,244,225,227,249,242,233,236,236,233,227,227,237,98,128,4,133,98,3,69,192,70,189,70,199,108,9,69,212,69,220,70,77,70,85,70,101,70,112,70,130,70,144,70,155,199,242,225,246,101,128,246,211,97,2,69,226,70,27,238,231,236,229,226,242,225,227,235,229,116,2,69,242,70,6,236,229,230,116,129,48,10,69,251,246,229,242,244,233,227,225,108,128,254,61,242,233,231,232,116,129,48,11,70,16,246,229,242,244,233,227,225,108,128,254,62,114,2,70,33,70,54,227,232,233,238,246,229,242,244,229,228,226,229,236,239,247,227,237,98,128,3,43,242,239,119,2,70,62,70,69,236,229,230,116,128,33,212,242,233,231,232,116,128,33,210,228,225,238,228,97,128,9,101,231,242,225,246,101,129,246,214,70,95,227,237,98,128,3,15,233,238,244,229,231,242,225,108,128,34,44,236,239,247,236,233,238,101,129,32,23,70,124,227,237,98,128,3,51,239,246,229,242,236,233,238,229,227,237,98,128,3,63,240,242,233,237,229,237,239,100,128,2,186,246,229,242,244,233,227,225,108,2,70,168,70,174,226,225,114,128,32,22,236,233,238,229,225,226,239,246,229,227,237,98,128,3,14,239,240,239,237,239,230,111,128,49,9,243,241,245,225,242,101,128,51,200,99,4,70,218,70,225,70,234,71,5,225,242,239,110,128,1,15,229,228,233,236,236,97,128,30,17,233,242,99,2,70,242,70,247,236,101,128,36,211,245,237,230,236,229,248,226,229,236,239,119,128,30,19,242,239,225,116,128,1,17,100,4,71,22,71,103,71,113,71,164,97,4,71,32,71,42,71,49,71,74,226,229,238,231,225,236,105,128,9,161,228,229,246,97,128,9,33,231,117,2,71,56,71,65,234,225,242,225,244,105,128,10,161,242,237,245,235,232,105,128,10,33,108,2,71,80,71,89,225,242,225,226,233,99,128,6,136,230,233,238,225,236,225,242,225,226,233,99,128,251,137,228,232,225,228,229,246,97,128,9,92,232,97,3,71,122,71,132,71],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+20480);allocate([139,226,229,238,231,225,236,105,128,9,162,228,229,246,97,128,9,34,231,117,2,71,146,71,155,234,225,242,225,244,105,128,10,162,242,237,245,235,232,105,128,10,34,239,116,2,71,171,71,180,225,227,227,229,238,116,128,30,11,226,229,236,239,119,128,30,13,101,8,71,206,72,3,72,10,72,35,72,45,72,56,72,101,72,137,99,2,71,212,71,249,233,237,225,236,243,229,240,225,242,225,244,239,114,2,71,230,71,239,225,242,225,226,233,99,128,6,107,240,229,242,243,233,225,110,128,6,107,249,242,233,236,236,233,99,128,4,52,231,242,229,101,128,0,176,232,105,2,72,17,72,26,232,229,226,242,229,119,128,5,173,242,225,231,225,238,97,128,48,103,233,227,239,240,244,233,99,128,3,239,235,225,244,225,235,225,238,97,128,48,199,108,2,72,62,72,85,229,244,101,2,72,70,72,77,236,229,230,116,128,35,43,242,233,231,232,116,128,35,38,244,97,129,3,180,72,92,244,245,242,238,229,100,128,1,141,238,239,237,233,238,225,244,239,242,237,233,238,245,243,239,238,229,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,248,250,104,128,2,164,104,2,72,148,72,198,97,3,72,156,72,166,72,173,226,229,238,231,225,236,105,128,9,167,228,229,246,97,128,9,39,231,117,2,72,180,72,189,234,225,242,225,244,105,128,10,167,242,237,245,235,232,105,128,10,39,239,239,107,128,2,87,105,6,72,218,73,11,73,71,73,82,73,93,73,103,97,2,72,224,72,246,236,249,244,233,235,225,244,239,238,239,115,129,3,133,72,240,227,237,98,128,3,68,237,239,238,100,129,38,102,72,255,243,245,233,244,247,232,233,244,101,128,38,98,229,242,229,243,233,115,133,0,168,73,30,73,38,73,49,73,55,73,63,225,227,245,244,101,128,246,215,226,229,236,239,247,227,237,98,128,3,36,227,237,98,128,3,8,231,242,225,246,101,128,246,216,244,239,238,239,115,128,3,133,232,233,242,225,231,225,238,97,128,48,98,235,225,244,225,235,225,238,97,128,48,194,244,244,239,237,225,242,107,128,48,3,246,105,2,73,110,73,121,228,101,129,0,247,73,117,115,128,34,35,243,233,239,238,243,236,225,243,104,128,34,21,234,229,227,249,242,233,236,236,233,99,128,4,82,235,243,232,225,228,101,128,37,147,108,2,73,161,73,172,233,238,229,226,229,236,239,119,128,30,15,243,241,245,225,242,101,128,51,151,109,2,73,187,73,195,225,227,242,239,110,128,1,17,239,238,239,243,240,225,227,101,128,255,68,238,226,236,239,227,107,128,37,132,111,10,73,237,73,249,74,3,74,14,74,25,74,97,74,102,74,113,74,228,74,254,227,232,225,228,225,244,232,225,105,128,14,14,228,229,235,244,232,225,105,128,14,20,232,233,242,225,231,225,238,97,128,48,105,235,225,244,225,235,225,238,97,128,48,201,236,236,225,114,132,0,36,74,40,74,51,74,63,74,74,233,238,230,229,242,233,239,114,128,246,227,237,239,238,239,243,240,225,227,101,128,255,4,239,236,228,243,244,249,236,101,128,247,36,115,2,74,80,74,87,237,225,236,108,128,254,105,245,240,229,242,233,239,114,128,246,228,238,103,128,32,171,242,245,243,241,245,225,242,101,128,51,38,116,6,74,127,74,144,74,166,74,177,74,209,74,216,225,227,227,229,238,116,129,2,217,74,138,227,237,98,128,3,7,226,229,236,239,247,99,2,74,155,74,160,237,98,128,3,35,239,237,98,128,3,35,235,225,244,225,235,225,238,97,128,48,251,236,229,243,115,2,74,186,74,190,105,128,1,49,106,129,246,190,74,196,243,244,242,239,235,229,232,239,239,107,128,2,132,237,225,244,104,128,34,197,244,229,228,227,233,242,227,236,101,128,37,204,245,226,236,229,249,239,228,240,225,244,225,104,129,251,31,74,245,232,229,226,242,229,119,128,251,31,247,238,244,225,227,107,2,75,9,75,20,226,229,236,239,247,227,237,98,128,3,30,237,239,100,128,2,213,240,225,242,229,110,128,36,159,243,245,240,229,242,233,239,114,128,246,235,116,2,75,51,75,57,225,233,108,128,2,86,239,240,226,225,114,128,1,140,117,2,75,71,75,82,232,233,242,225,231,225,238,97,128,48,101,235,225,244,225,235,225,238,97,128,48,197,122,132,1,243,75,105,75,114,75,133,75,170,225,236,244,239,238,101,128,2,163,99,2,75,120,75,127,225,242,239,110,128,1,198,245,242,108,128,2,165,101,2,75,139,75,159,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,225,227,249,242,233,236,236,233,99,128,4,85,232,229,227,249,242,233,236,236,233,99,128,4,95,101,151,0,101,75,233,75,252,76,30,77,4,77,66,77,99,77,111,77,134,77,187,79,43,79,101,79,203,80,63,80,198,81,17,81,48,81,110,81,163,82,98,82,231,82,251,83,39,83,130,97,2,75,239,75,246,227,245,244,101,128,0,233,242,244,104,128,38,65,98,3,76,4,76,13,76,23,229,238,231,225,236,105,128,9,143,239,240,239,237,239,230,111,128,49,28,242,229,246,101,128,1,21,99,5,76,42,76,115,76,129,76,161,76,250,97,2,76,48,76,109,238,228,242,97,3,76,59,76,66,76,77,228,229,246,97,128,9,13,231,245,234,225,242,225,244,105,128,10,141,246,239,247,229,236,243,233,231,110,2,76,91,76,98,228,229,246,97,128,9,69,231,245,234,225,242,225,244,105,128,10,197,242,239,110,128,1,27,229,228,233,236,236,225,226,242,229,246,101,128,30,29,104,2,76,135,76,146,225,242,237,229,238,233,225,110,128,5,101,249,233,247,238,225,242,237,229,238,233,225,110,128,5,135,233,242,99,2,76,169,76,174,236,101,128,36,212,245,237,230,236,229,120,134,0,234,76,195,76,203,76,211,76,222,76,230,76,242,225,227,245,244,101,128,30,191,226,229,236,239,119,128,30,25,228,239,244,226,229,236,239,119,128,30,199,231,242,225,246,101,128,30,193,232,239,239,235,225,226,239,246,101,128,30,195,244,233,236,228,101,128,30,197,249,242,233,236,236,233,99,128,4,84,100,4,77,14,77,24,77,30,77,40,226,236,231,242,225,246,101,128,2,5,229,246,97,128,9,15,233,229,242,229,243,233,115,128,0,235,239,116,130,1,23,77,49,77,58,225,227,227,229,238,116,128,1,23,226,229,236,239,119,128,30,185,101,2,77,72,77,83,231,245,242,237,245,235,232,105,128,10,15,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,71,230,227,249,242,233,236,236,233,99,128,4,68,103,2,77,117,77,124,242,225,246,101,128,0,232,245,234,225,242,225,244,105,128,10,143,104,4,77,144,77,155,77,166,77,176,225,242,237,229,238,233,225,110,128,5,103,226,239,240,239,237,239,230,111,128,49,29,233,242,225,231,225,238,97,128,48,72,239,239,235,225,226,239,246,101,128,30,187,105,4,77,197,77,208,79,10,79,25,226,239,240,239,237,239,230,111,128,49,31,231,232,116,142,0,56,77,242,77,251,78,5,78,35,78,42,78,80,78,105,78,150,78,184,78,196,78,207,78,240,78,248,79,3,225,242,225,226,233,99,128,6,104,226,229,238,231,225,236,105,128,9,238,227,233,242,227,236,101,129,36,103,78,16,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,145,228,229,246,97,128,9,110,229,229,110,2,78,50,78,59,227,233,242,227,236,101,128,36,113,112,2,78,65,78,72,225,242,229,110,128,36,133,229,242,233,239,100,128,36,153,231,117,2,78,87,78,96,234,225,242,225,244,105,128,10,238,242,237,245,235,232,105,128,10,110,104,2,78,111,78,137,97,2,78,117,78,128,227,235,225,242,225,226,233,99,128,6,104,238,231,250,232,239,117,128,48,40,238,239,244,229,226,229,225,237,229,100,128,38,107,105,2,78,156,78,174,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,39,238,230,229,242,233,239,114,128,32,136,237,239,238,239,243,240,225,227,101,128,255,24,239,236,228,243,244,249,236,101,128,247,56,112,2,78,213,78,220,225,242,229,110,128,36,123,229,114,2,78,227,78,233,233,239,100,128,36,143,243,233,225,110,128,6,248,242,239,237,225,110,128,33,119,243,245,240,229,242,233,239,114,128,32,120,244,232,225,105,128,14,88,238,246,229,242,244,229,228,226,242,229,246,101,128,2,7,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,101,107,2,79,49,79,73,225,244,225,235,225,238,97,129,48,168,79,61,232,225,236,230,247,233,228,244,104,128,255,116,111,2,79,79,79,94,238,235,225,242,231,245,242,237,245,235,232,105,128,10,116,242,229,225,110,128,49,84,108,3,79,109,79,120,79,181,227,249,242,233,236,236,233,99,128,4,59,101,2,79,126,79,133,237,229,238,116,128,34,8,246,229,110,3,79,143,79,152,79,173,227,233,242,227,236,101,128,36,106,112,2,79,158,79,165,225,242,229,110,128,36,126,229,242,233,239,100,128,36,146,242,239,237,225,110,128,33,122,236,233,240,243,233,115,129,32,38,79,192,246,229,242,244,233,227,225,108,128,34,238,109,5,79,215,79,243,79,254,80,18,80,29,225,227,242,239,110,130,1,19,79,227,79,235,225,227,245,244,101,128,30,23,231,242,225,246,101,128,30,21,227,249,242,233,236,236,233,99,128,4,60,228,225,243,104,129,32,20,80,7,246,229,242,244,233,227,225,108,128,254,49,239,238,239,243,240,225,227,101,128,255,69,112,2,80,35,80,55,232,225,243,233,243,237,225,242,235,225,242,237,229,238,233,225,110,128,5,91,244,249,243,229,116,128,34,5,110,6,80,77,80,88,80,99,80,143,80,175,80,190,226,239,240,239,237,239,230,111,128,49,35,227,249,242,233,236,236,233,99,128,4,61,100,2,80,105,80,124,225,243,104,129,32,19,80,113,246,229,242,244,233,227,225,108,128,254,50,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,163,103,130,1,75,80,151,80,162,226,239,240,239,237,239,230,111,128,49,37,232,229,227,249,242,233,236,236,233,99,128,4,165,232,239,239,235,227,249,242,233,236,236,233,99,128,4,200,243,240,225,227,101,128,32,2,111,3,80,206,80,214,80,223,231,239,238,229,107,128,1,25,235,239,242,229,225,110,128,49,83,240,229,110,130,2,91,80,233,80,242,227,236,239,243,229,100,128,2,154,242,229,246,229,242,243,229,100,130,2,92,81,1,81,10,227,236,239,243,229,100,128,2,94,232,239,239,107,128,2,93,112,2,81,23,81,30,225,242,229,110,128,36,160,243,233,236,239,110,129,3,181,81,40,244,239,238,239,115,128,3,173,241,117,2,81,55,81,99,225,108,130,0,61,81,64,81,76,237,239,238,239,243,240,225,227,101,128,255,29,115,2,81,82,81,89,237,225,236,108,128,254,102,245,240,229,242,233,239,114,128,32,124,233,246,225,236,229,238,227,101,128,34,97,114,3,81,118,81,129,81,140,226,239,240,239,237,239,230,111,128,49,38,227,249,242,233,236,236,233,99,128,4,64,229,246,229,242,243,229,100,129,2,88,81,152,227,249,242,233,236,236,233,99,128,4,77,115,6,81,177,81,188,81,208,82,33,82,78,82,88,227,249,242,233,236,236,233,99,128,4,65,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,171,104,132,2,131,81,220,81,227,82,2,82,17,227,245,242,108,128,2,134,239,242,116,2,81,235,81,242,228,229,246,97,128,9,14,246,239,247,229,236,243,233,231,238,228,229,246,97,128,9,70,242,229,246,229,242,243,229,228,236,239,239,112,128,1,170,243,241,245,225,244,242,229,246,229,242,243,229,100,128,2,133,237,225,236,108,2,82,42,82,53,232,233,242,225,231,225,238,97,128,48,71,235,225,244,225,235,225,238,97,129,48,167,82,66,232,225,236,230,247,233,228,244,104,128,255,106,244,233,237,225,244,229,100,128,33,46,245,240,229,242,233,239,114,128,246,236,116,5,82,110,82,136,82,140,82,157,82,223,97,130,3,183,82,118,82,128,242,237,229,238,233,225,110,128,5,104,244,239,238,239,115,128,3,174,104,128,0,240,233,236,228,101,129,30,189,82,149,226,229,236,239,119,128,30,27,238,225,232,244,97,3,82,169,82,201,82,210,230,239,245,235,104,2,82,179,82,188,232,229,226,242,229,119,128,5,145,236,229,230,244,232,229,226,242,229,119,128,5,145,232,229,226,242,229,119,128,5,145,236,229,230,244,232,229,226,242,229,119,128,5,145,245,242,238,229,100,128,1,221,117,2,82,237,82,246,235,239,242,229,225,110,128,49,97,242,111,128,32,172,246,239,247,229,236,243,233,231,110,3,83,11,83,21,83,28,226,229,238,231,225,236,105,128,9,199,228,229,246,97,128,9,71,231,245,234,225,242,225,244,105,128,10,199,120,2,83,45,83,118,227,236,225,109,132,0,33,83,60,83,71,83,98,83,110,225,242,237,229,238,233,225,110,128,5,92,100,2,83,77,83,82,226,108,128,32,60,239,247,110,129,0,161,83,90,243,237,225,236,108,128,247,161,237,239,238,239,243,240,225,227,101,128,255,1,243,237,225,236,108,128,247,33,233,243,244,229,238,244,233,225,108,128,34,3,250,104,131,2,146,83,141,83,160,83,171,99,2,83,147,83,154,225,242,239,110,128,1,239,245,242,108,128,2,147,242,229,246,229,242,243,229,100,128,1,185,244,225,233,108,128,1,186,102,140,0,102,83,206,84,32,84,43,84,52,84,64,84,167,84,183,86,191,86,204,86,230,88,107,88,115,97,4,83,216,83,223,83,234,83,245,228,229,246,97,128,9,94,231,245,242,237,245,235,232,105,128,10,94,232,242,229,238,232,229,233,116,128,33,9,244,232,97,3,83,255,84,8,84,20,225,242,225,226,233,99,128,6,78,236,239,247,225,242,225,226,233,99,128,6,78,244,225,238,225,242,225,226,233,99,128,6,75,226,239,240,239,237,239,230,111,128,49,8,227,233,242,227,236,101,128,36,213,228,239,244,225,227,227,229,238,116,128,30,31,101,3,84,72,84,150,84,160,104,4,84,82,84,105,84,119,84,135,225,114,2,84,89,84,96,225,226,233,99,128,6,65,237,229,238,233,225,110,128,5,134,230,233,238,225,236,225,242,225,226,233,99,128,254,210,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,211,237,229,228,233,225,236,225,242,225,226,233,99,128,254,212,233,227,239,240,244,233,99,128,3,229,237,225,236,101,128,38,64,102,130,251,0,84,175,84,179,105,128,251,3,108,128,251,4,105,136,251,1,84,203,84,243,84,254,85,20,85,142,85,159,85,167,85,180,230,244,229,229,110,2,84,213,84,222,227,233,242,227,236,101,128,36,110,112,2,84,228,84,235,225,242,229,110,128,36,130,229,242,233,239,100,128,36,150,231,245,242,229,228,225,243,104,128,32,18,236,236,229,100,2,85,7,85,13,226,239,120,128,37,160,242,229,227,116,128,37,172,238,225,108,5,85,34,85,73,85,90,85,107,85,123,235,225,102,130,5,218,85,44,85,64,228,225,231,229,243,104,129,251,58,85,55,232,229,226,242,229,119,128,251,58,232,229,226,242,229,119,128,5,218,237,229,109,129,5,221,85,81,232,229,226,242,229,119,128,5,221,238,245,110,129,5,223,85,98,232,229,226,242,229,119,128,5,223,240,101,129,5,227,85,114,232,229,226,242,229,119,128,5,227,244,243,225,228,105,129,5,229,85,133,232,229,226,242,229,119,128,5,229,242,243,244,244,239,238,229,227,232,233,238,229,243,101,128,2,201,243,232,229,249,101,128,37,201,244,225,227,249,242,233,236,236,233,99,128,4,115,246,101,142,0,53,85,213,85,222,85,232,86,6,86,13,86,23,86,48,86,75,86,109,86,121,86,132,86,165,86,173,86,184,225,242,225,226,233,99,128,6,101,226,229,238,231,225,236,105,128,9,235,227,233,242,227,236,101,129,36,100,85,243,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,142,228,229,246,97,128,9,107,229,233,231,232,244,232,115,128,33,93,231,117,2,86,30,86,39,234,225,242,225,244,105,128,10,235,242,237,245,235,232,105,128,10,107,232,97,2,86,55,86,66,227,235,225,242,225,226,233,99,128,6,101,238,231,250,232,239,117,128,48,37,105,2,86,81,86,99,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,36,238,230,229,242,233,239,114,128,32,133,237,239,238,239,243,240,225,227,101,128,255,21,239,236,228,243,244,249,236,101,128,247,53,112,2,86,138,86,145,225,242,229,110,128,36,120,229,114,2,86,152,86,158,233,239,100,128,36,140,243,233,225,110,128,6,245,242,239,237,225,110,128,33,116,243,245,240,229,242,233,239,114,128,32,117,244,232,225,105,128,14,85,108,129,251,2,86,197,239,242,233,110,128,1,146,109,2,86,210,86,221,239,238,239,243,240,225,227,101,128,255,70,243,241,245,225,242,101,128,51,153,111,4,86,240,87,6,87,18,87,25,230,97,2,86,247,86,255,238,244,232,225,105,128,14,31,244,232,225,105,128,14,29,238,231,237,225,238,244,232,225,105,128,14,79,242,225,236,108,128,34,0,245,114,142,0,52,87,58,87,67,87,77,87,107,87,114,87,139,87,166,87,200,87,212,87,231,87,242,88,19,88,27,88,38,225,242,225,226,233,99,128,6,100,226,229,238,231,225,236,105,128,9,234,227,233,242,227,236,101,129,36,99,87,88,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,141,228,229,246,97,128,9,106,231,117,2,87,121,87,130,234,225,242,225,244,105,128,10,234,242,237,245,235,232,105,128,10,106,232,97,2,87,146,87,157,227,235,225,242,225,226,233,99,128,6,100,238,231,250,232,239,117,128,48,36,105,2,87,172,87,190,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,35,238,230,229,242,233,239,114,128,32,132,237,239,238,239,243,240,225,227,101,128,255,20,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,247,239,236,228,243,244,249,236,101,128,247,52,112,2,87,248,87,255,225,242,229,110,128,36,119,229,114,2,88,6,88,12,233,239,100,128,36,139,243,233,225,110,128,6,244,242,239,237,225,110,128,33,115,243,245,240,229,242,233,239,114,128,32,116,116,2,88,44,88,82,229,229,110,2,88,52,88,61,227,233,242,227,236,101,128,36,109,112,2,88,67,88,74,225,242,229,110,128,36,129,229,242,233,239,100,128,36,149,104,2,88,88,88,93,225,105,128,14,84,244,239,238,229,227,232,233,238,229,243,101,128,2,203,240,225,242,229,110,128,36,161,242,97,2,88,122,88,130,227,244,233,239,110,128,32,68,238,99,128,32,163,103,144,0,103,88,171,89,117,89,140,89,201,89,218,90,139,91,132,91,217,91,230,92,88,92,113,92,141,92,163,93,108,93,130,93,232,97,9,88,191,88,201,88,208,88,215,89,23,89,48,89,59,89,70,89,104,226,229,238,231,225,236,105,128,9,151,227,245,244,101,128,1,245,228,229,246,97,128,9,23,102,4,88,225,88,234,88,248,89,8,225,242,225,226,233,99,128,6,175,230,233,238,225,236,225,242,225,226,233,99,128,251,147,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,148,237,229,228,233,225,236,225,242,225,226,233,99,128,251,149,231,117,2,89,30,89,39,234,225,242,225,244,105,128,10,151,242,237,245,235,232,105,128,10,23,232,233,242,225,231,225,238,97,128,48,76,235,225,244,225,235,225,238,97,128,48,172,237,237,97,130,3,179,89,80,89,93,236,225,244,233,238,243,237,225,236,108,128,2,99,243,245,240,229,242,233,239,114,128,2,224,238,231,233,225,227,239,240,244,233,99,128,3,235,98,2,89,123,89,133,239,240,239,237,239,230,111,128,49,13,242,229,246,101,128,1,31,99,4,89,150,89,157,89,166,89,188,225,242,239,110,128,1,231,229,228,233,236,236,97,128,1,35,233,242,99,2,89,174,89,179,236,101,128,36,214,245,237,230,236,229,120,128,1,29,239,237,237,225,225,227,227,229,238,116,128,1,35,228,239,116,129,1,33,89,209,225,227,227,229,238,116,128,1,33,101,6,89,232,89,243,89,254,90,9,90,28,90,130,227,249,242,233,236,236,233,99,128,4,51,232,233,242,225,231,225,238,97,128,48,82,235,225,244,225,235,225,238,97,128,48,178,239,237,229,244,242,233,227,225,236,236,249,229,241,245,225,108,128,34,81,114,3,90,36,90,85,90,95,229,243,104,3,90,46,90,61,90,70,225,227,227,229,238,244,232,229,226,242,229,119,128,5,156,232,229,226,242,229,119,128,5,243,237,245,241,228,225,237,232,229,226,242,229,119,128,5,157,237,225,238,228,226,236,115,128,0,223,243,232,225,249,233,109,2,90,106,90,121,225,227,227,229,238,244,232,229,226,242,229,119,128,5,158,232,229,226,242,229,119,128,5,244,244,225,237,225,242,107,128,48,19,104,5,90,151,91,28,91,91,91,116,91,122,97,4,90,161,90,171,90,194,90,219,226,229,238,231,225,236,105,128,9,152,100,2,90,177,90,188,225,242,237,229,238,233,225,110,128,5,114,229,246,97,128,9,24,231,117,2,90,201,90,210,234,225,242,225,244,105,128,10,152,242,237,245,235,232,105,128,10,24,233,110,4,90,230,90,239,90,253,91,13,225,242,225,226,233,99,128,6,58,230,233,238,225,236,225,242,225,226,233,99,128,254,206,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,207,237,229,228,233,225,236,225,242,225,226,233,99,128,254,208,101,3,91,36,91,57,91,74,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,149,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,147,245,240,244,245,242,238,227,249,242,233,236,236,233,99,128,4,145,232,97,2,91,98,91,105,228,229,246,97,128,9,90,231,245,242,237,245,235,232,105,128,10,90,239,239,107,128,2,96,250,243,241,245,225,242,101,128,51,147,105,3,91,140,91,151,91,162,232,233,242,225,231,225,238,97,128,48,78,235,225,244,225,235,225,238,97,128,48,174,109,2,91,168,91,179,225,242,237,229,238,233,225,110,128,5,99,229,108,130,5,210,91,188,91,208,228,225,231,229,243,104,129,251,50,91,199,232,229,226,242,229,119,128,251,50,232,229,226,242,229,119,128,5,210,234,229,227,249,242,233,236,236,233,99,128,4,83,236,239,244,244,225,108,2,91,241,92,2,233,238,246,229,242,244,229,228,243,244,242,239,235,101,128,1,190,243,244,239,112,132,2,148,92,17,92,28,92,34,92,66,233,238,246,229,242,244,229,100,128,2,150,237,239,100,128,2,192,242,229,246,229,242,243,229,100,130,2,149,92,49,92,55,237,239,100,128,2,193,243,245,240,229,242,233,239,114,128,2,228,243,244,242,239,235,101,129,2,161,92,77,242,229,246,229,242,243,229,100,128,2,162,109,2,92,94,92,102,225,227,242,239,110,128,30,33,239,238,239,243,240,225,227,101,128,255,71,111,2,92,119,92,130,232,233,242,225,231,225,238,97,128,48,84,235,225,244,225,235,225,238,97,128,48,180,240,97,2,92,148,92,154,242,229,110,128,36,162,243,241,245,225,242,101,128,51,172,114,2,92,169,93,10,97,2,92,175,92,183,228,233,229,238,116,128,34,7,246,101,134,0,96,92,200,92,211,92,228,92,235,92,244,93,0,226,229,236,239,247,227,237,98,128,3,22,99,2,92,217,92,222,237,98,128,3,0,239,237,98,128,3,0,228,229,246,97,128,9,83,236,239,247,237,239,100,128,2,206,237,239,238,239,243,240,225,227,101,128,255,64,244,239,238,229,227,237,98,128,3,64,229,225,244,229,114,132,0,62,93,26,93,45,93,57,93,100,229,241,245,225,108,129,34,101,93,36,239,242,236,229,243,115,128,34,219,237,239,238,239,243,240,225,227,101,128,255,30,111,2,93,63,93,89,114,2,93,69,93,82,229,241,245,233,246,225,236,229,238,116,128,34,115,236,229,243,115,128,34,119,246,229,242,229,241,245,225,108,128,34,103,243,237,225,236,108,128,254,101,115,2,93,114,93,122,227,242,233,240,116,128,2,97,244,242,239,235,101,128,1,229,117,4,93,140,93,151,93,208,93,219,232,233,242,225,231,225,238,97,128,48,80,233,108,2,93,158,93,183,236,229,237,239,116,2,93,168,93,175,236,229,230,116,128,0,171,242,233,231,232,116,128,0,187,243,233,238,231,108,2,93,193,93,200,236,229,230,116,128,32,57,242,233,231,232,116,128,32,58,235,225,244,225,235,225,238,97,128,48,176,242,225,237,245,243,241,245,225,242,101,128,51,24,249,243,241,245,225,242,101,128,51,201,104,144,0,104,94,22,96,164,96,199,96,236,97,20,98,164,98,184,99,149,99,161,99,173,100,241,100,249,101,4,101,13,101,93,101,97,97,13,94,50,94,89,94,99,94,129,94,154,94,232,94,244,95,13,95,28,95,57,95,70,95,128,95,137,97,2,94,56,94,75,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,169,236,244,239,238,229,225,242,225,226,233,99,128,6,193,226,229,238,231,225,236,105,128,9,185,228,101,2,94,106,94,124,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,179,246,97,128,9,57,231,117,2,94,136,94,145,234,225,242,225,244,105,128,10,185,242,237,245,235,232,105,128,10,57,104,4,94,164,94,173,94,187,94,217,225,242,225,226,233,99,128,6,45,230,233,238,225,236,225,242,225,226,233,99,128,254,162,105,2,94,193,94,208,238,233,244,233,225,236,225,242,225,226,233,99,128,254,163,242,225,231,225,238,97,128,48,111,237,229,228,233,225,236,225,242,225,226,233,99,128,254,164,233,244,245,243,241,245,225,242,101,128,51,42,235,225,244,225,235,225,238,97,129,48,207,95,1,232,225,236,230,247,233,228,244,104,128,255,138,236,225,238,244,231,245,242,237,245,235,232,105,128,10,77,237,250,97,2,95,36,95,45,225,242,225,226,233,99,128,6,33,236,239,247,225,242,225,226,233,99,128,6,33,238,231,245,236,230,233,236,236,229,114,128,49,100,114,2,95,76,95,92,228,243,233,231,238,227,249,242,233,236,236,233,99,128,4,74,240,239,239,110,2,95,101,95,114,236,229,230,244,226,225,242,226,245,112,128,33,188,242,233,231,232,244,226,225,242,226,245,112,128,33,192,243,241,245,225,242,101,128,51,202,244,225,102,3,95,147,95,239,96,74,240,225,244,225,104,134,5,178,95,167,95,172,95,186,95,195,95,210,95,226,177,54,128,5,178,50,2,95,178,95,182,51,128,5,178,102,128,5,178,232,229,226,242,229,119,128,5,178,238,225,242,242,239,247,232,229,226,242,229,119,128,5,178,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,178,247,233,228,229,232,229,226,242,229,119,128,5,178,241,225,237,225,244,115,135,5,179,96,6,96,11,96,16,96,21,96,30,96,45,96,61,177,98,128,5,179,178,56,128,5,179,179,52,128,5,179,232,229,226,242,229,119,128,5,179,238,225,242,242,239,247,232,229,226,242,229,119,128,5,179,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,179,247,233,228,229,232,229,226,242,229,119,128,5,179,243,229,231,239,108,135,5,177,96,96,96,101,96,106,96,111,96,120,96,135,96,151,177,55,128,5,177,178,52,128,5,177,179,48,128,5,177,232,229,226,242,229,119,128,5,177,238,225,242,242,239,247,232,229,226,242,229,119,128,5,177,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,177,247,233,228,229,232,229,226,242,229,119,128,5,177,98,3,96,172,96,177,96,187,225,114,128,1,39,239,240,239,237,239,230,111,128,49,15,242,229,246,229,226,229,236,239,119,128,30,43,99,2,96,205,96,214,229,228,233,236,236,97,128,30,41,233,242,99,2,96,222,96,227,236,101,128,36,215,245,237,230,236,229,120,128,1,37,100,2,96,242,96,252,233,229,242,229,243,233,115,128,30,39,239,116,2,97,3,97,12,225,227,227,229,238,116,128,30,35,226,229,236,239,119,128,30,37,101,136,5,212,97,40,97,73,97,93,98,66,98,82,98,127,98,136,98,149,225,242,116,129,38,101,97,48,243,245,233,116,2,97,57,97,65,226,236,225,227,107,128,38,101,247,232,233,244,101,128,38,97,228,225,231,229,243,104,129,251,52,97,84,232,229,226,242,229,119,128,251,52,104,6,97,107,97,135,97,143,97,193,97,239,98,32,97,2,97,113,97,127,236,244,239,238,229,225,242,225,226,233,99,128,6,193,242,225,226,233,99,128,6,71,229,226,242,229,119,128,5,212,230,233,238,225,236,97,2,97,154,97,185,236,116,2,97,161,97,173,239,238,229,225,242,225,226,233,99,128,251,167,244,247,239,225,242,225,226,233,99,128,254,234,242,225,226,233,99,128,254,234,232,225,237,250,225,225,226,239,246,101,2,97,208,97,222,230,233,238,225,236,225,242,225,226,233,99,128,251,165,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,251,164,105,2,97,245,98,23,238,233,244,233,225,236,97,2,98,1,98,15,236,244,239,238,229,225,242,225,226,233,99,128,251,168,242,225,226,233,99,128,254,235,242,225,231,225,238,97,128,48,120,237,229,228,233,225,236,97,2,98,44,98,58,236,244,239,238,229,225,242,225,226,233,99,128,251,169,242,225,226,233,99,128,254,236,233,243,229,233,229,242,225,243,241,245,225,242,101,128,51,123,107,2,98,88,98,112,225,244,225,235,225,238,97,129,48,216,98,100,232,225,236,230,247,233,228,244,104,128,255,141,245,244,225,225,242,245,243,241,245,225,242,101,128,51,54,238,231,232,239,239,107,128,2,103,242,245,244,245,243,241,245,225,242,101,128,51,57,116,129,5,215,98,155,232,229,226,242,229,119,128,5,215,232,239,239,107,129,2,102,98,173,243,245,240,229,242,233,239,114,128,2,177,105,4,98,194,99,23,99,34,99,59,229,245,104,4,98,206,98,241,99,0,99,9,97,2,98,212,98,227,227,233,242,227,236,229,235,239,242,229,225,110,128,50,123,240,225,242,229,238,235,239,242,229,225,110,128,50,27,227,233,242,227,236,229,235,239,242,229,225,110,128,50,109,235,239,242,229,225,110,128,49,78,240,225,242,229,238,235,239,242,229,225,110,128,50,13,232,233,242,225,231,225,238,97,128,48,114,235,225,244,225,235,225,238,97,129,48,210,99,47,232,225,236,230,247,233,228,244,104,128,255,139,242,233,113,134,5,180,99,77,99,82,99,96,99,105,99,120,99,136,177,52,128,5,180,50,2,99,88,99,92,49,128,5,180,100,128,5,180,232,229,226,242,229,119,128,5,180,238,225,242,242,239,247,232,229,226,242,229,119,128,5,180,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,180,247,233,228,229,232,229,226,242,229,119,128,5,180,236,233,238,229,226,229,236,239,119,128,30,150,237,239,238,239,243,240,225,227,101,128,255,72,111,9,99,193,99,204,99,228,99,253,100,85,100,98,100,184,100,224,100,235,225,242,237,229,238,233,225,110,128,5,112,232,105,2,99,211,99,219,240,244,232,225,105,128,14,43,242,225,231,225,238,97,128,48,123,235,225,244,225,235,225,238,97,129,48,219,99,241,232,225,236,230,247,233,228,244,104,128,255,142,236,225,109,135,5,185,100,17,100,22,100,27,100,32,100,41,100,56,100,72,177,57,128,5,185,178,54,128,5,185,179,50,128,5,185,232,229,226,242,229,119,128,5,185,238,225,242,242,239,247,232,229,226,242,229,119,128,5,185,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,185,247,233,228,229,232,229,226,242,229,119,128,5,185,238,239,235,232,245,235,244,232,225,105,128,14,46,111,2,100,104,100,174,107,4,100,114,100,126,100,132,100,154,225,226,239,246,229,227,239,237,98,128,3,9,227,237,98,128,3,9,240,225,236,225,244,225,236,233,250,229,228,226,229,236,239,247,227,237,98,128,3,33,242,229,244,242,239,230,236,229,248,226,229,236,239,247,227,237,98,128,3,34,238,243,241,245,225,242,101,128,51,66,114,2,100,190,100,217,105,2,100,196,100,205,227,239,240,244,233,99,128,3,233,250,239,238,244,225,236,226,225,114,128,32,21,238,227,237,98,128,3,27,244,243,240,242,233,238,231,115,128,38,104,245,243,101,128,35,2,240,225,242,229,110,128,36,163,243,245,240,229,242,233,239,114,128,2,176,244,245,242,238,229,100,128,2,101,117,4,101,23,101,34,101,47,101,72,232,233,242,225,231,225,238,97,128,48,117,233,233,244,239,243,241,245,225,242,101,128,51,51,235,225,244,225,235,225,238,97,129,48,213,101,60,232,225,236,230,247,233,228,244,104,128,255,140,238,231,225,242,245,237,236,225,245,116,129,2,221,101,87,227,237,98,128,3,11,118,128,1,149,249,240,232,229,110,132,0,45,101,113,101,124,101,136,101,159,233,238,230,229,242,233,239,114,128,246,229,237,239,238,239,243,240,225,227,101,128,255,13,115,2,101,142,101,149,237,225,236,108,128,254,99,245,240,229,242,233,239,114,128,246,230,244,247,111,128,32,16,105,149,0,105,101,211,101,234,102,12,102,59,105,197,106,61,106,98,106,125,107,31,107,35,107,73,107,95,107,179,108,88,108,163,108,171,108,184,109,15,109,72,109,100,109,144,225,99,2,101,218,101,224,245,244,101,128,0,237,249,242,233,236,236,233,99,128,4,79,98,3,101,242,101,251,102,5,229,238,231,225,236,105,128,9,135,239,240,239,237,239,230,111,128,49,39,242,229,246,101,128,1,45,99,3,102,20,102,27,102,49,225,242,239,110,128,1,208,233,242,99,2,102,35,102,40,236,101,128,36,216,245,237,230,236,229,120,128,0,238,249,242,233,236,236,233,99,128,4,86,100,4,102,69,102,79,105,154,105,187,226,236,231,242,225,246,101,128,2,9,101,2,102,85,105,149,239,231,242,225,240,104,7,102,106,102,120,102,133,105,62,105,93,105,106,105,118,229,225,242,244,232,227,233,242,227,236,101,128,50,143,230,233,242,229,227,233,242,227,236,101,128,50,139,233,99,14,102,164,102,180,103,23,103,77,103,143,103,172,103,188,103,245,104,38,104,50,104,77,104,144,105,26,105,55,225,236,236,233,225,238,227,229,240,225,242,229,110,128,50,63,99,4,102,190,102,201,102,215,102,222,225,236,236,240,225,242,229,110,128,50,58,229,238,244,242,229,227,233,242,227,236,101,128,50,165,236,239,243,101,128,48,6,111,3,102,230,102,245,103,9,237,237,97,129,48,1,102,238,236,229,230,116,128,255,100,238,231,242,225,244,245,236,225,244,233,239,238,240,225,242,229,110,128,50,55,242,242,229,227,244,227,233,242,227,236,101,128,50,163,101,3,103,31,103,43,103,60,225,242,244,232,240,225,242,229,110,128,50,47,238,244,229,242,240,242,233,243,229,240,225,242,229,110,128,50,61,248,227,229,236,236,229,238,244,227,233,242,227,236,101,128,50,157,102,2,103,83,103,98,229,243,244,233,246,225,236,240,225,242,229,110,128,50,64,105,2,103,104,103,133,238,225,238,227,233,225,108,2,103,116,103,125,227,233,242,227,236,101,128,50,150,240,225,242,229,110,128,50,54,242,229,240,225,242,229,110,128,50,43,104,2,103,149,103,160,225,246,229,240,225,242,229,110,128,50,50,233,231,232,227,233,242,227,236,101,128,50,164,233,244,229,242,225,244,233,239,238,237,225,242,107,128,48,5,108,3,103,196,103,222,103,234,225,226,239,114,2,103,205,103,214,227,233,242,227,236,101,128,50,152,240,225,242,229,110,128,50,56,229,230,244,227,233,242,227,236,101,128,50,167,239,247,227,233,242,227,236,101,128,50,166,109,2,103,251,104,27,101,2,104,1,104,16,228,233,227,233,238,229,227,233,242,227,236,101,128,50,169,244,225,236,240,225,242,229,110,128,50,46,239,239,238,240,225,242,229,110,128,50,42,238,225,237,229,240,225,242,229,110,128,50,52,112,2,104,56,104,64,229,242,233,239,100,128,48,2,242,233,238,244,227,233,242,227,236,101,128,50,158,114,2,104,83,104,131,101,3,104,91,104,102,104,117,225,227,232,240,225,242,229,110,128,50,67,240,242,229,243,229,238,244,240,225,242,229,110,128,50,57,243,239,245,242,227,229,240,225,242,229,110,128,50,62,233,231,232,244,227,233,242,227,236,101,128,50,168,115,5,104,156,104,185,104,199,104,224,104,252,101,2,104,162,104,175,227,242,229,244,227,233,242,227,236,101,128,50,153,236,230,240,225,242,229,110,128,50,66,239,227,233,229,244,249,240,225,242,229,110,128,50,51,112,2,104,205,104,211,225,227,101,128,48,0,229,227,233,225,236,240,225,242,229,110,128,50,53,116,2,104,230,104,241,239,227,235,240,225,242,229,110,128,50,49,245,228,249,240,225,242,229,110,128,50,59,117,2,105,2,105,11,238,240,225,242,229,110,128,50,48,240,229,242,246,233,243,229,240,225,242,229,110,128,50,60,119,2,105,32,105,44,225,244,229,242,240,225,242,229,110,128,50,44,239,239,228,240,225,242,229,110,128,50,45,250,229,242,111,128,48,7,109,2,105,68,105,81,229,244,225,236,227,233,242,227,236,101,128,50,142,239,239,238,227,233,242,227,236,101,128,50,138,238,225,237,229,227,233,242,227,236,101,128,50,148,243,245,238,227,233,242,227,236,101,128,50,144,119,2,105,124,105,137,225,244,229,242,227,233,242,227,236,101,128,50,140,239,239,228,227,233,242,227,236,101,128,50,141,246,97,128,9,7,233,229,242,229,243,233,115,130,0,239,105,168,105,176,225,227,245,244,101,128,30,47,227,249,242,233,236,236,233,99,128,4,229,239,244,226,229,236,239,119,128,30,203,101,3,105,205,105,221,105,232,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,215,227,249,242,233,236,236,233,99,128,4,53,245,238,103,4,105,244,106,23,106,38,106,47,97,2,105,250,106,9,227,233,242,227,236,229,235,239,242,229,225,110,128,50,117,240,225,242,229,238,235,239,242,229,225,110,128,50,21,227,233,242,227,236,229,235,239,242,229,225,110,128,50,103,235,239,242,229,225,110,128,49,71,240,225,242,229,238,235,239,242,229,225,110,128,50,7,103,2,106,67,106,74,242,225,246,101,128,0,236,117,2,106,80,106,89,234,225,242,225,244,105,128,10,135,242,237,245,235,232,105,128,10,7,104,2,106,104,106,114,233,242,225,231,225,238,97,128,48,68,239,239,235,225,226,239,246,101,128,30,201,105,8,106,143,106,153,106,164,106,171,106,196,106,212,106,227,106,243,226,229,238,231,225,236,105,128,9,136,227,249,242,233,236,236,233,99,128,4,56,228,229,246,97,128,9,8,231,117,2,106,178,106,187,234,225,242,225,244,105,128,10,136,242,237,245,235,232,105,128,10,8,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,64,238,246,229,242,244,229,228,226,242,229,246,101,128,2,11,243,232,239,242,244,227,249,242,233,236,236,233,99,128,4,57,246,239,247,229,236,243,233,231,110,3,107,3,107,13,107,20,226,229,238,231,225,236,105,128,9,192,228,229,246,97,128,9,64,231,245,234,225,242,225,244,105,128,10,192,106,128,1,51,107,2,107,41,107,65,225,244,225,235,225,238,97,129,48,164,107,53,232,225,236,230,247,233,228,244,104,128,255,114,239,242,229,225,110,128,49,99,108,2,107,79,107,84,228,101,128,2,220,245,249,232,229,226,242,229,119,128,5,172,109,2,107,101,107,168,97,3,107,109,107,129,107,154,227,242,239,110,129,1,43,107,118,227,249,242,233,236,236,233,99,128,4,227,231,229,239,242,225,240,240,242,239,248,233,237,225,244,229,236,249,229,241,245,225,108,128,34,83,244,242,225,231,245,242,237,245,235,232,105,128,10,63,239,238,239,243,240,225,227,101,128,255,73,110,5,107,191,107,201,107,210,107,222,108,50,227,242,229,237,229,238,116,128,34,6,230,233,238,233,244,121,128,34,30,233,225,242,237,229,238,233,225,110,128,5,107,116,2,107,228,108,40,101,2,107,234,108,29,231,242,225,108,131,34,43,107,247,108,9,108,14,98,2,107,253,108,5,239,244,244,239,109,128,35,33,116,128,35,33,229,120,128,248,245,116,2,108,20,108,25,239,112,128,35,32,112,128,35,32,242,243,229,227,244,233,239,110,128,34,41,233,243,241,245,225,242,101,128,51,5,118,3,108,58,108,67,108,76,226,245,236,236,229,116,128,37,216,227,233,242,227,236,101,128,37,217,243,237,233,236,229,230,225,227,101,128,38,59,111,3,108,96,108,107,108,115,227,249,242,233,236,236,233,99,128,4,81,231,239,238,229,107,128,1,47,244,97,131,3,185,108,126,108,147,108,155,228,233,229,242,229,243,233,115,129,3,202,108,139,244,239,238,239,115,128,3,144,236,225,244,233,110,128,2,105,244,239,238,239,115,128,3,175,240,225,242,229,110,128,36,164,242,233,231,245,242,237,245,235,232,105,128,10,114,115,4,108,194,108,239,108,253,109,5,237,225,236,108,2,108,203,108,214,232,233,242,225,231,225,238,97,128,48,67,235,225,244,225,235,225,238,97,129,48,163,108,227,232,225,236,230,247,233,228,244,104,128,255,104,243,232,225,242,226,229,238,231,225,236,105,128,9,250,244,242,239,235,101,128,2,104,245,240,229,242,233,239,114,128,246,237,116,2,109,21,109,55,229,242,225,244,233,239,110,2,109,33,109,44,232,233,242,225,231,225,238,97,128,48,157,235,225,244,225,235,225,238,97,128,48,253,233,236,228,101,129,1,41,109,64,226,229,236,239,119,128,30,45,117,2,109,78,109,89,226,239,240,239,237,239,230,111,128,49,41,227,249,242,233,236,236,233,99,128,4,78,246,239,247,229,236,243,233,231,110,3,109,116,109,126,109,133,226,229,238,231,225,236,105,128,9,191,228,229,246,97,128,9,63,231,245,234,225,242,225,244,105,128,10,191,250,232,233,244,243,97,2,109,155,109,166,227,249,242,233,236,236,233,99,128,4,117,228,226,236,231,242,225,246,229,227,249,242,233,236,236,233,99,128,4,119,106,138,0,106,109,209,110,16,110,27,110,77,110,93,110,206,111,19,111,24,111,36,111,44,97,4,109,219,109,230,109,240,109,247,225,242,237,229,238,233,225,110,128,5,113,226,229,238,231,225,236,105,128,9,156,228,229,246,97,128,9,28,231,117,2,109,254,110,7,234,225,242,225,244,105,128,10,156,242,237,245,235,232,105,128,10,28,226,239,240,239,237,239,230,111,128,49,16,99,3,110,35,110,42,110,64,225,242,239,110,128,1,240,233,242,99,2,110,50,110,55,236,101,128,36,217,245,237,230,236,229,120,128,1,53,242,239,243,243,229,228,244,225,233,108,128,2,157,228,239,244,236,229,243,243,243,244,242,239,235,101,128,2,95,101,3,110,101,110,112,110,177,227,249,242,233,236,236,233,99,128,4,88,229,109,4,110,123,110,132,110,146,110,162,225,242,225,226,233,99,128,6,44,230,233,238,225,236,225,242,225,226,233,99,128,254,158,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,159,237,229,228,233,225,236,225,242,225,226,233,99,128,254,160,104,2,110,183,110,192,225,242,225,226,233,99,128,6,152,230,233,238,225,236,225,242,225,226,233,99,128,251,139,104,2,110,212,111,6,97,3,110,220,110,230,110,237,226,229,238,231,225,236,105,128,9,157,228,229,246,97,128,9,29,231,117,2,110,244,110,253,234,225,242,225,244,105,128,10,157,242,237,245,235,232,105,128,10,29,229,232,225,242,237,229,238,233,225,110,128,5,123,233,115,128,48,4,237,239,238,239,243,240,225,227,101,128,255,74,240,225,242,229,110,128,36,165,243,245,240,229,242,233,239,114,128,2,178,107,146,0,107,111,95,113,184,113,195,114,1,114,12,114,102,114,116,115,224,116,164,116,177,116,203,116,252,117,134,117,156,117,169,117,192,117,234,117,244,97,12,111,121,111,153,111,175,111,205,112,63,112,88,112,118,112,143,112,249,113,7,113,130,113,159],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+30720);allocate([98,2,111,127,111,144,225,243,232,235,233,242,227,249,242,233,236,236,233,99,128,4,161,229,238,231,225,236,105,128,9,149,99,2,111,159,111,165,245,244,101,128,30,49,249,242,233,236,236,233,99,128,4,58,228,101,2,111,182,111,200,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,155,246,97,128,9,21,102,135,5,219,111,223,111,232,111,252,112,10,112,19,112,35,112,50,225,242,225,226,233,99,128,6,67,228,225,231,229,243,104,129,251,59,111,243,232,229,226,242,229,119,128,251,59,230,233,238,225,236,225,242,225,226,233,99,128,254,218,232,229,226,242,229,119,128,5,219,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,219,237,229,228,233,225,236,225,242,225,226,233,99,128,254,220,242,225,230,229,232,229,226,242,229,119,128,251,77,231,117,2,112,70,112,79,234,225,242,225,244,105,128,10,149,242,237,245,235,232,105,128,10,21,104,2,112,94,112,104,233,242,225,231,225,238,97,128,48,75,239,239,235,227,249,242,233,236,236,233,99,128,4,196,235,225,244,225,235,225,238,97,129,48,171,112,131,232,225,236,230,247,233,228,244,104,128,255,118,112,2,112,149,112,170,240,97,129,3,186,112,156,243,249,237,226,239,236,231,242,229,229,107,128,3,240,249,229,239,245,110,3,112,182,112,196,112,230,237,233,229,245,237,235,239,242,229,225,110,128,49,113,112,2,112,202,112,217,232,233,229,245,240,232,235,239,242,229,225,110,128,49,132,233,229,245,240,235,239,242,229,225,110,128,49,120,243,243,225,238,231,240,233,229,245,240,235,239,242,229,225,110,128,49,121,242,239,242,233,233,243,241,245,225,242,101,128,51,13,115,5,113,19,113,63,113,78,113,86,113,114,232,233,228,225,225,245,244,111,2,113,32,113,41,225,242,225,226,233,99,128,6,64,238,239,243,233,228,229,226,229,225,242,233,238,231,225,242,225,226,233,99,128,6,64,237,225,236,236,235,225,244,225,235,225,238,97,128,48,245,241,245,225,242,101,128,51,132,242,97,2,113,93,113,102,225,242,225,226,233,99,128,6,80,244,225,238,225,242,225,226,233,99,128,6,77,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,159,244,225,232,233,242,225,240,242,239,236,239,238,231,237,225,242,235,232,225,236,230,247,233,228,244,104,128,255,112,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,157,226,239,240,239,237,239,230,111,128,49,14,99,4,113,205,113,227,113,236,113,244,97,2,113,211,113,221,236,243,241,245,225,242,101,128,51,137,242,239,110,128,1,233,229,228,233,236,236,97,128,1,55,233,242,227,236,101,128,36,218,239,237,237,225,225,227,227,229,238,116,128,1,55,228,239,244,226,229,236,239,119,128,30,51,101,4,114,22,114,49,114,74,114,86,104,2,114,28,114,39,225,242,237,229,238,233,225,110,128,5,132,233,242,225,231,225,238,97,128,48,81,235,225,244,225,235,225,238,97,129,48,177,114,62,232,225,236,230,247,233,228,244,104,128,255,121,238,225,242,237,229,238,233,225,110,128,5,111,243,237,225,236,236,235,225,244,225,235,225,238,97,128,48,246,231,242,229,229,238,236,225,238,228,233,99,128,1,56,104,6,114,130,115,3,115,14,115,39,115,126,115,214,97,5,114,142,114,152,114,163,114,170,114,195,226,229,238,231,225,236,105,128,9,150,227,249,242,233,236,236,233,99,128,4,69,228,229,246,97,128,9,22,231,117,2,114,177,114,186,234,225,242,225,244,105,128,10,150,242,237,245,235,232,105,128,10,22,104,4,114,205,114,214,114,228,114,244,225,242,225,226,233,99,128,6,46,230,233,238,225,236,225,242,225,226,233,99,128,254,166,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,167,237,229,228,233,225,236,225,242,225,226,233,99,128,254,168,229,233,227,239,240,244,233,99,128,3,231,232,97,2,115,21,115,28,228,229,246,97,128,9,89,231,245,242,237,245,235,232,105,128,10,89,233,229,245,235,104,4,115,53,115,88,115,103,115,112,97,2,115,59,115,74,227,233,242,227,236,229,235,239,242,229,225,110,128,50,120,240,225,242,229,238,235,239,242,229,225,110,128,50,24,227,233,242,227,236,229,235,239,242,229,225,110,128,50,106,235,239,242,229,225,110,128,49,75,240,225,242,229,238,235,239,242,229,225,110,128,50,10,111,4,115,136,115,185,115,195,115,200,235,104,4,115,147,115,156,115,165,115,175,225,233,244,232,225,105,128,14,2,239,238,244,232,225,105,128,14,5,245,225,244,244,232,225,105,128,14,3,247,225,233,244,232,225,105,128,14,4,237,245,244,244,232,225,105,128,14,91,239,107,128,1,153,242,225,235,232,225,238,231,244,232,225,105,128,14,6,250,243,241,245,225,242,101,128,51,145,105,4,115,234,115,245,116,14,116,63,232,233,242,225,231,225,238,97,128,48,77,235,225,244,225,235,225,238,97,129,48,173,116,2,232,225,236,230,247,233,228,244,104,128,255,119,242,111,3,116,23,116,38,116,54,231,245,242,225,237,245,243,241,245,225,242,101,128,51,21,237,229,229,244,239,242,245,243,241,245,225,242,101,128,51,22,243,241,245,225,242,101,128,51,20,249,229,239,107,5,116,78,116,113,116,128,116,137,116,151,97,2,116,84,116,99,227,233,242,227,236,229,235,239,242,229,225,110,128,50,110,240,225,242,229,238,235,239,242,229,225,110,128,50,14,227,233,242,227,236,229,235,239,242,229,225,110,128,50,96,235,239,242,229,225,110,128,49,49,240,225,242,229,238,235,239,242,229,225,110,128,50,0,243,233,239,243,235,239,242,229,225,110,128,49,51,234,229,227,249,242,233,236,236,233,99,128,4,92,108,2,116,183,116,194,233,238,229,226,229,236,239,119,128,30,53,243,241,245,225,242,101,128,51,152,109,3,116,211,116,225,116,236,227,245,226,229,228,243,241,245,225,242,101,128,51,166,239,238,239,243,240,225,227,101,128,255,75,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,162,111,5,117,8,117,34,117,72,117,84,117,98,104,2,117,14,117,24,233,242,225,231,225,238,97,128,48,83,237,243,241,245,225,242,101,128,51,192,235,97,2,117,41,117,49,233,244,232,225,105,128,14,1,244,225,235,225,238,97,129,48,179,117,60,232,225,236,230,247,233,228,244,104,128,255,122,239,240,239,243,241,245,225,242,101,128,51,30,240,240,225,227,249,242,233,236,236,233,99,128,4,129,114,2,117,104,117,124,229,225,238,243,244,225,238,228,225,242,228,243,249,237,226,239,108,128,50,127,239,238,233,243,227,237,98,128,3,67,240,97,2,117,141,117,147,242,229,110,128,36,166,243,241,245,225,242,101,128,51,170,243,233,227,249,242,233,236,236,233,99,128,4,111,116,2,117,175,117,184,243,241,245,225,242,101,128,51,207,245,242,238,229,100,128,2,158,117,2,117,198,117,209,232,233,242,225,231,225,238,97,128,48,79,235,225,244,225,235,225,238,97,129,48,175,117,222,232,225,236,230,247,233,228,244,104,128,255,120,246,243,241,245,225,242,101,128,51,184,247,243,241,245,225,242,101,128,51,190,108,146,0,108,118,38,120,65,120,94,120,160,120,198,121,94,121,103,121,119,121,143,121,161,122,23,122,64,122,199,122,207,122,240,122,249,123,1,123,63,97,7,118,54,118,64,118,71,118,78,118,103,118,119,120,53,226,229,238,231,225,236,105,128,9,178,227,245,244,101,128,1,58,228,229,246,97,128,9,50,231,117,2,118,85,118,94,234,225,242,225,244,105,128,10,178,242,237,245,235,232,105,128,10,50,235,235,232,225,238,231,249,225,239,244,232,225,105,128,14,69,109,10,118,141,119,80,119,97,119,135,119,149,119,168,119,184,119,204,119,224,119,247,97,2,118,147,119,72,236,229,102,4,118,159,118,173,119,9,119,26,230,233,238,225,236,225,242,225,226,233,99,128,254,252,232,225,237,250,97,2,118,183,118,224,225,226,239,246,101,2,118,193,118,207,230,233,238,225,236,225,242,225,226,233,99,128,254,248,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,247,226,229,236,239,119,2,118,234,118,248,230,233,238,225,236,225,242,225,226,233,99,128,254,250,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,249,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,251,237,225,228,228,225,225,226,239,246,101,2,119,41,119,55,230,233,238,225,236,225,242,225,226,233,99,128,254,246,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,245,242,225,226,233,99,128,6,68,226,228,97,129,3,187,119,88,243,244,242,239,235,101,128,1,155,229,100,130,5,220,119,106,119,126,228,225,231,229,243,104,129,251,60,119,117,232,229,226,242,229,119,128,251,60,232,229,226,242,229,119,128,5,220,230,233,238,225,236,225,242,225,226,233,99,128,254,222,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,202,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,223,234,229,229,237,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,201,235,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,203,236,225,237,232,229,232,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,253,242,237,101,2,119,254,120,11,228,233,225,236,225,242,225,226,233,99,128,254,224,229,109,2,120,18,120,37,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,253,136,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,204,242,231,229,227,233,242,227,236,101,128,37,239,98,3,120,73,120,78,120,84,225,114,128,1,154,229,236,116,128,2,108,239,240,239,237,239,230,111,128,49,12,99,4,120,104,120,111,120,120,120,147,225,242,239,110,128,1,62,229,228,233,236,236,97,128,1,60,233,242,99,2,120,128,120,133,236,101,128,36,219,245,237,230,236,229,248,226,229,236,239,119,128,30,61,239,237,237,225,225,227,227,229,238,116,128,1,60,228,239,116,130,1,64,120,170,120,179,225,227,227,229,238,116,128,1,64,226,229,236,239,119,129,30,55,120,189,237,225,227,242,239,110,128,30,57,101,3,120,206,120,244,121,89,230,116,2,120,213,120,229,225,238,231,236,229,225,226,239,246,229,227,237,98,128,3,26,244,225,227,235,226,229,236,239,247,227,237,98,128,3,24,243,115,132,0,60,121,1,121,23,121,35,121,81,229,241,245,225,108,129,34,100,121,11,239,242,231,242,229,225,244,229,114,128,34,218,237,239,238,239,243,240,225,227,101,128,255,28,111,2,121,41,121,70,114,2,121,47,121,60,229,241,245,233,246,225,236,229,238,116,128,34,114,231,242,229,225,244,229,114,128,34,118,246,229,242,229,241,245,225,108,128,34,102,243,237,225,236,108,128,254,100,250,104,128,2,110,230,226,236,239,227,107,128,37,140,232,239,239,235,242,229,244,242,239,230,236,229,120,128,2,109,105,2,121,125,121,130,242,97,128,32,164,247,238,225,242,237,229,238,233,225,110,128,5,108,106,129,1,201,121,149,229,227,249,242,233,236,236,233,99,128,4,89,108,132,246,192,121,173,121,197,121,208,121,217,97,2,121,179,121,186,228,229,246,97,128,9,51,231,245,234,225,242,225,244,105,128,10,179,233,238,229,226,229,236,239,119,128,30,59,236,225,228,229,246,97,128,9,52,246,239,227,225,236,233,99,3,121,231,121,241,121,248,226,229,238,231,225,236,105,128,9,225,228,229,246,97,128,9,97,246,239,247,229,236,243,233,231,110,2,122,6,122,16,226,229,238,231,225,236,105,128,9,227,228,229,246,97,128,9,99,109,3,122,31,122,44,122,55,233,228,228,236,229,244,233,236,228,101,128,2,107,239,238,239,243,240,225,227,101,128,255,76,243,241,245,225,242,101,128,51,208,111,6,122,78,122,90,122,132,122,143,122,149,122,191,227,232,245,236,225,244,232,225,105,128,14,44,231,233,227,225,108,3,122,102,122,108,122,127,225,238,100,128,34,39,238,239,116,129,0,172,122,116,242,229,246,229,242,243,229,100,128,35,16,239,114,128,34,40,236,233,238,231,244,232,225,105,128,14,37,238,231,115,128,1,127,247,236,233,238,101,2,122,159,122,182,99,2,122,165,122,177,229,238,244,229,242,236,233,238,101,128,254,78,237,98,128,3,50,228,225,243,232,229,100,128,254,77,250,229,238,231,101,128,37,202,240,225,242,229,110,128,36,167,115,3,122,215,122,222,122,230,236,225,243,104,128,1,66,241,245,225,242,101,128,33,19,245,240,229,242,233,239,114,128,246,238,244,243,232,225,228,101,128,37,145,245,244,232,225,105,128,14,38,246,239,227,225,236,233,99,3,123,15,123,25,123,32,226,229,238,231,225,236,105,128,9,140,228,229,246,97,128,9,12,246,239,247,229,236,243,233,231,110,2,123,46,123,56,226,229,238,231,225,236,105,128,9,226,228,229,246,97,128,9,98,248,243,241,245,225,242,101,128,51,211,109,144,0,109,123,109,125,218,125,243,126,14,126,39,127,92,127,114,128,169,128,199,128,248,129,99,129,121,129,146,129,155,130,182,130,210,97,12,123,135,123,145,123,209,123,216,123,241,124,33,125,125,125,150,125,155,125,169,125,181,125,186,226,229,238,231,225,236,105,128,9,174,99,2,123,151,123,203,242,239,110,132,0,175,123,165,123,176,123,182,123,191,226,229,236,239,247,227,237,98,128,3,49,227,237,98,128,3,4,236,239,247,237,239,100,128,2,205,237,239,238,239,243,240,225,227,101,128,255,227,245,244,101,128,30,63,228,229,246,97,128,9,46,231,117,2,123,223,123,232,234,225,242,225,244,105,128,10,174,242,237,245,235,232,105,128,10,46,104,2,123,247,124,23,225,240,225,235,104,2,124,1,124,10,232,229,226,242,229,119,128,5,164,236,229,230,244,232,229,226,242,229,119,128,5,164,233,242,225,231,225,238,97,128,48,126,105,5,124,45,124,114,124,177,124,207,125,113,227,232,225,244,244,225,247,97,3,124,60,124,91,124,98,236,239,119,2,124,68,124,79,236,229,230,244,244,232,225,105,128,248,149,242,233,231,232,244,244,232,225,105,128,248,148,244,232,225,105,128,14,75,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,147,229,107,3,124,123,124,154,124,161,236,239,119,2,124,131,124,142,236,229,230,244,244,232,225,105,128,248,140,242,233,231,232,244,244,232,225,105,128,248,139,244,232,225,105,128,14,72,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,138,232,225,238,225,235,225,116,2,124,189,124,200,236,229,230,244,244,232,225,105,128,248,132,244,232,225,105,128,14,49,116,3,124,215,124,243,125,50,225,233,235,232,117,2,124,225,124,236,236,229,230,244,244,232,225,105,128,248,137,244,232,225,105,128,14,71,232,111,3,124,252,125,27,125,34,236,239,119,2,125,4,125,15,236,229,230,244,244,232,225,105,128,248,143,242,233,231,232,244,244,232,225,105,128,248,142,244,232,225,105,128,14,73,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,141,242,105,3,125,59,125,90,125,97,236,239,119,2,125,67,125,78,236,229,230,244,244,232,225,105,128,248,146,242,233,231,232,244,244,232,225,105,128,248,145,244,232,225,105,128,14,74,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,144,249,225,237,239,235,244,232,225,105,128,14,70,235,225,244,225,235,225,238,97,129,48,222,125,138,232,225,236,230,247,233,228,244,104,128,255,143,236,101,128,38,66,238,243,249,239,238,243,241,245,225,242,101,128,51,71,241,225,230,232,229,226,242,229,119,128,5,190,242,115,128,38,66,115,2,125,192,125,210,239,242,225,227,233,242,227,236,229,232,229,226,242,229,119,128,5,175,241,245,225,242,101,128,51,131,98,2,125,224,125,234,239,240,239,237,239,230,111,128,49,7,243,241,245,225,242,101,128,51,212,99,2,125,249,126,1,233,242,227,236,101,128,36,220,245,226,229,228,243,241,245,225,242,101,128,51,165,228,239,116,2,126,22,126,31,225,227,227,229,238,116,128,30,65,226,229,236,239,119,128,30,67,101,7,126,55,126,182,126,193,126,208,126,233,127,14,127,26,101,2,126,61,126,169,109,4,126,71,126,80,126,94,126,110,225,242,225,226,233,99,128,6,69,230,233,238,225,236,225,242,225,226,233,99,128,254,226,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,227,237,101,2,126,117,126,130,228,233,225,236,225,242,225,226,233,99,128,254,228,229,237,105,2,126,138,126,153,238,233,244,233,225,236,225,242,225,226,233,99,128,252,209,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,72,244,239,242,245,243,241,245,225,242,101,128,51,77,232,233,242,225,231,225,238,97,128,48,129,233,250,233,229,242,225,243,241,245,225,242,101,128,51,126,235,225,244,225,235,225,238,97,129,48,225,126,221,232,225,236,230,247,233,228,244,104,128,255,146,109,130,5,222,126,241,127,5,228,225,231,229,243,104,129,251,62,126,252,232,229,226,242,229,119,128,251,62,232,229,226,242,229,119,128,5,222,238,225,242,237,229,238,233,225,110,128,5,116,242,235,232,97,3,127,37,127,46,127,79,232,229,226,242,229,119,128,5,165,235,229,230,245,236,97,2,127,57,127,66,232,229,226,242,229,119,128,5,166,236,229,230,244,232,229,226,242,229,119,128,5,166,236,229,230,244,232,229,226,242,229,119,128,5,165,104,2,127,98,127,104,239,239,107,128,2,113,250,243,241,245,225,242,101,128,51,146,105,6,127,128,127,165,128,46,128,57,128,82,128,139,228,100,2,127,135,127,160,236,229,228,239,244,235,225,244,225,235,225,238,225,232,225,236,230,247,233,228,244,104,128,255,101,239,116,128,0,183,229,245,109,5,127,179,127,214,127,229,127,238,128,33,97,2,127,185,127,200,227,233,242,227,236,229,235,239,242,229,225,110,128,50,114,240,225,242,229,238,235,239,242,229,225,110,128,50,18,227,233,242,227,236,229,235,239,242,229,225,110,128,50,100,235,239,242,229,225,110,128,49,65,112,2,127,244,128,20,97,2,127,250,128,8,238,243,233,239,243,235,239,242,229,225,110,128,49,112,242,229,238,235,239,242,229,225,110,128,50,4,233,229,245,240,235,239,242,229,225,110,128,49,110,243,233,239,243,235,239,242,229,225,110,128,49,111,232,233,242,225,231,225,238,97,128,48,127,235,225,244,225,235,225,238,97,129,48,223,128,70,232,225,236,230,247,233,228,244,104,128,255,144,238,117,2,128,89,128,134,115,132,34,18,128,101,128,112,128,121,128,127,226,229,236,239,247,227,237,98,128,3,32,227,233,242,227,236,101,128,34,150,237,239,100,128,2,215,240,236,245,115,128,34,19,244,101,128,32,50,242,105,2,128,146,128,160,226,225,225,242,245,243,241,245,225,242,101,128,51,74,243,241,245,225,242,101,128,51,73,108,2,128,175,128,190,239,238,231,236,229,231,244,245,242,238,229,100,128,2,112,243,241,245,225,242,101,128,51,150,109,3,128,207,128,221,128,232,227,245,226,229,228,243,241,245,225,242,101,128,51,163,239,238,239,243,240,225,227,101,128,255,77,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,159,111,5,129,4,129,30,129,55,129,65,129,74,104,2,129,10,129,20,233,242,225,231,225,238,97,128,48,130,237,243,241,245,225,242,101,128,51,193,235,225,244,225,235,225,238,97,129,48,226,129,43,232,225,236,230,247,233,228,244,104,128,255,147,236,243,241,245,225,242,101,128,51,214,237,225,244,232,225,105,128,14,33,246,229,242,243,243,241,245,225,242,101,129,51,167,129,89,228,243,241,245,225,242,101,128,51,168,240,97,2,129,106,129,112,242,229,110,128,36,168,243,241,245,225,242,101,128,51,171,115,2,129,127,129,136,243,241,245,225,242,101,128,51,179,245,240,229,242,233,239,114,128,246,239,244,245,242,238,229,100,128,2,111,117,141,0,181,129,185,129,189,129,199,129,223,129,233,129,255,130,10,130,35,130,58,130,68,130,98,130,162,130,172,49,128,0,181,225,243,241,245,225,242,101,128,51,130,227,104,2,129,206,129,216,231,242,229,225,244,229,114,128,34,107,236,229,243,115,128,34,106,230,243,241,245,225,242,101,128,51,140,103,2,129,239,129,246,242,229,229,107,128,3,188,243,241,245,225,242,101,128,51,141,232,233,242,225,231,225,238,97,128,48,128,235,225,244,225,235,225,238,97,129,48,224,130,23,232,225,236,230,247,233,228,244,104,128,255,145,108,2,130,41,130,50,243,241,245,225,242,101,128,51,149,244,233,240,236,121,128,0,215,237,243,241,245,225,242,101,128,51,155,238,225,104,2,130,76,130,85,232,229,226,242,229,119,128,5,163,236,229,230,244,232,229,226,242,229,119,128,5,163,115,2,130,104,130,153,233,99,3,130,113,130,130,130,141,225,236,238,239,244,101,129,38,106,130,124,228,226,108,128,38,107,230,236,225,244,243,233,231,110,128,38,109,243,232,225,242,240,243,233,231,110,128,38,111,243,241,245,225,242,101,128,51,178,246,243,241,245,225,242,101,128,51,182,247,243,241,245,225,242,101,128,51,188,118,2,130,188,130,201,237,229,231,225,243,241,245,225,242,101,128,51,185,243,241,245,225,242,101,128,51,183,119,2,130,216,130,229,237,229,231,225,243,241,245,225,242,101,128,51,191,243,241,245,225,242,101,128,51,189,110,150,0,110,131,30,131,164,131,188,131,254,132,23,132,81,132,91,132,158,132,201,134,235,134,253,135,22,135,53,135,79,135,144,137,126,137,134,137,159,137,167,138,135,138,145,138,155,97,8,131,48,131,68,131,75,131,82,131,107,131,118,131,143,131,155,98,2,131,54,131,63,229,238,231,225,236,105,128,9,168,236,97,128,34,7,227,245,244,101,128,1,68,228,229,246,97,128,9,40,231,117,2,131,89,131,98,234,225,242,225,244,105,128,10,168,242,237,245,235,232,105,128,10,40,232,233,242,225,231,225,238,97,128,48,106,235,225,244,225,235,225,238,97,129,48,202,131,131,232,225,236,230,247,233,228,244,104,128,255,133,240,239,243,244,242,239,240,232,101,128,1,73,243,241,245,225,242,101,128,51,129,98,2,131,170,131,180,239,240,239,237,239,230,111,128,49,11,243,240,225,227,101,128,0,160,99,4,131,198,131,205,131,214,131,241,225,242,239,110,128,1,72,229,228,233,236,236,97,128,1,70,233,242,99,2,131,222,131,227,236,101,128,36,221,245,237,230,236,229,248,226,229,236,239,119,128,30,75,239,237,237,225,225,227,227,229,238,116,128,1,70,228,239,116,2,132,6,132,15,225,227,227,229,238,116,128,30,69,226,229,236,239,119,128,30,71,101,3,132,31,132,42,132,67,232,233,242,225,231,225,238,97,128,48,109,235,225,244,225,235,225,238,97,129,48,205,132,55,232,225,236,230,247,233,228,244,104,128,255,136,247,243,232,229,241,229,236,243,233,231,110,128,32,170,230,243,241,245,225,242,101,128,51,139,103,2,132,97,132,147,97,3,132,105,132,115,132,122,226,229,238,231,225,236,105,128,9,153,228,229,246,97,128,9,25,231,117,2,132,129,132,138,234,225,242,225,244,105,128,10,153,242,237,245,235,232,105,128,10,25,239,238,231,245,244,232,225,105,128,14,7,104,2,132,164,132,174,233,242,225,231,225,238,97,128,48,147,239,239,107,2,132,182,132,189,236,229,230,116,128,2,114,242,229,244,242,239,230,236,229,120,128,2,115,105,4,132,211,133,124,133,135,133,193,229,245,110,7,132,229,133,8,133,40,133,54,133,63,133,96,133,109,97,2,132,235,132,250,227,233,242,227,236,229,235,239,242,229,225,110,128,50,111,240,225,242,229,238,235,239,242,229,225,110,128,50,15,227,105,2,133,15,133,27,229,245,227,235,239,242,229,225,110,128,49,53,242,227,236,229,235,239,242,229,225,110,128,50,97,232,233,229,245,232,235,239,242,229,225,110,128,49,54,235,239,242,229,225,110,128,49,52,240,97,2,133,70,133,84,238,243,233,239,243,235,239,242,229,225,110,128,49,104,242,229,238,235,239,242,229,225,110,128,50,1,243,233,239,243,235,239,242,229,225,110,128,49,103,244,233,235,229,245,244,235,239,242,229,225,110,128,49,102,232,233,242,225,231,225,238,97,128,48,107,107,2,133,141,133,165,225,244,225,235,225,238,97,129,48,203,133,153,232,225,236,230,247,233,228,244,104,128,255,134,232,225,232,233,116,2,133,175,133,186,236,229,230,244,244,232,225,105,128,248,153,244,232,225,105,128,14,77,238,101,141,0,57,133,224,133,233,133,243,134,17,134,24,134,49,134,76,134,110,134,122,134,133,134,166,134,174,134,185,225,242,225,226,233,99,128,6,105,226,229,238,231,225,236,105,128,9,239,227,233,242,227,236,101,129,36,104,133,254,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,146,228,229,246,97,128,9,111,231,117,2,134,31,134,40,234,225,242,225,244,105,128,10,239,242,237,245,235,232,105,128,10,111,232,97,2,134,56,134,67,227,235,225,242,225,226,233,99,128,6,105,238,231,250,232,239,117,128,48,41,105,2,134,82,134,100,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,40,238,230,229,242,233,239,114,128,32,137,237,239,238,239,243,240,225,227,101,128,255,25,239,236,228,243,244,249,236,101,128,247,57,112,2,134,139,134,146,225,242,229,110,128,36,124,229,114,2,134,153,134,159,233,239,100,128,36,144,243,233,225,110,128,6,249,242,239,237,225,110,128,33,120,243,245,240,229,242,233,239,114,128,32,121,116,2,134,191,134,229,229,229,110,2,134,199,134,208,227,233,242,227,236,101,128,36,114,112,2,134,214,134,221,225,242,229,110,128,36,134,229,242,233,239,100,128,36,154,232,225,105,128,14,89,106,129,1,204,134,241,229,227,249,242,233,236,236,233,99,128,4,90,235,225,244,225,235,225,238,97,129,48,243,135,10,232,225,236,230,247,233,228,244,104,128,255,157,108,2,135,28,135,42,229,231,242,233,231,232,244,236,239,238,103,128,1,158,233,238,229,226,229,236,239,119,128,30,73,109,2,135,59,135,70,239,238,239,243,240,225,227,101,128,255,78,243,241,245,225,242,101,128,51,154,110,2,135,85,135,135,97,3,135,93,135,103,135,110,226,229,238,231,225,236,105,128,9,163,228,229,246,97,128,9,35,231,117,2,135,117,135,126,234,225,242,225,244,105,128,10,163,242,237,245,235,232,105,128,10,35,238,225,228,229,246,97,128,9,41,111,6,135,158,135,169,135,194,135,235,136,187,137,114,232,233,242,225,231,225,238,97,128,48,110,235,225,244,225,235,225,238,97,129,48,206,135,182,232,225,236,230,247,233,228,244,104,128,255,137,110,3,135,202,135,218,135,227,226,242,229,225,235,233,238,231,243,240,225,227,101,128,0,160,229,238,244,232,225,105,128,14,19,245,244,232,225,105,128,14,25,239,110,7,135,252,136,5,136,19,136,53,136,69,136,110,136,169,225,242,225,226,233,99,128,6,70,230,233,238,225,236,225,242,225,226,233,99,128,254,230,231,232,245,238,238,97,2,136,30,136,39,225,242,225,226,233,99,128,6,186,230,233,238,225,236,225,242,225,226,233,99,128,251,159,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,231,234,229,229,237,105,2,136,79,136,94,238,233,244,233,225,236,225,242,225,226,233,99,128,252,210,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,75,237,101,2,136,117,136,130,228,233,225,236,225,242,225,226,233,99,128,254,232,229,237,105,2,136,138,136,153,238,233,244,233,225,236,225,242,225,226,233,99,128,252,213,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,78,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,141,116,7,136,203,136,214,136,243,137,22,137,34,137,54,137,80,227,239,238,244,225,233,238,115,128,34,12,101,2,136,220,136,236,236,229,237,229,238,116,129,34,9,136,231,239,102,128,34,9,241,245,225,108,128,34,96,231,242,229,225,244,229,114,129,34,111,136,255,238,239,114,2,137,7,137,15,229,241,245,225,108,128,34,113,236,229,243,115,128,34,121,233,228,229,238,244,233,227,225,108,128,34,98,236,229,243,115,129,34,110,137,43,238,239,242,229,241,245,225,108,128,34,112,112,2,137,60,137,70,225,242,225,236,236,229,108,128,34,38,242,229,227,229,228,229,115,128,34,128,243,117,3,137,89,137,96,137,105,226,243,229,116,128,34,132,227,227,229,229,228,115,128,34,129,240,229,242,243,229,116,128,34,133,247,225,242,237,229,238,233,225,110,128,5,118,240,225,242,229,110,128,36,169,115,2,137,140,137,149,243,241,245,225,242,101,128,51,177,245,240,229,242,233,239,114,128,32,127,244,233,236,228,101,128,0,241,117,132,3,189,137,179,137,190,138,15,138,98,232,233,242,225,231,225,238,97,128,48,108,107,2,137,196,137,220,225,244,225,235,225,238,97,129,48,204,137,208,232,225,236,230,247,233,228,244,104,128,255,135,244,97,3,137,229,137,239,137,246,226,229,238,231,225,236,105,128,9,188,228,229,246,97,128,9,60,231,117,2,137,253,138,6,234,225,242,225,244,105,128,10,188,242,237,245,235,232,105,128,10,60,109,2,138,21,138,55,226,229,242,243,233,231,110,130,0,35,138,35,138,47,237,239,238,239,243,240,225,227,101,128,255,3,243,237,225,236,108,128,254,95,229,114,2,138,62,138,94,225,236,243,233,231,110,2,138,73,138,81,231,242,229,229,107,128,3,116,236,239,247,229,242,231,242,229,229,107,128,3,117,111,128,33,22,110,130,5,224,138,106,138,126,228,225,231,229,243,104,129,251,64,138,117,232,229,226,242,229,119,128,251,64,232,229,226,242,229,119,128,5,224,246,243,241,245,225,242,101,128,51,181,247,243,241,245,225,242,101,128,51,187,249,97,3,138,164,138,174,138,181,226,229,238,231,225,236,105,128,9,158,228,229,246,97,128,9,30,231,117,2,138,188,138,197,234,225,242,225,244,105,128,10,158,242,237,245,235,232,105,128,10,30,111,147,0,111,138,248,139,14,139,92,140,6,140,78,140,93,140,133,141,0,141,21,141,59,141,70,141,248,143,82,143,146,143,179,143,225,144,98,144,145,144,157,97,2,138,254,139,5,227,245,244,101,128,0,243,238,231,244,232,225,105,128,14,45,98,4,139,24,139,66,139,75,139,85,225,242,242,229,100,130,2,117,139,36,139,47,227,249,242,233,236,236,233,99,128,4,233,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,235,229,238,231,225,236,105,128,9,147,239,240,239,237,239,230,111,128,49,27,242,229,246,101,128,1,79,99,3,139,100,139,173,139,252,97,2,139,106,139,167,238,228,242,97,3,139,117,139,124,139,135,228,229,246,97,128,9,17,231,245,234,225,242,225,244,105,128,10,145,246,239,247,229,236,243,233,231,110,2,139,149,139,156,228,229,246,97,128,9,73,231,245,234,225,242,225,244,105,128,10,201,242,239,110,128,1,210,233,242,99,2,139,181,139,186,236,101,128,36,222,245,237,230,236,229,120,133,0,244,139,205,139,213,139,224,139,232,139,244,225,227,245,244,101,128,30,209,228,239,244,226,229,236,239,119,128,30,217,231,242,225,246,101,128,30,211,232,239,239,235,225,226,239,246,101,128,30,213,244,233,236,228,101,128,30,215,249,242,233,236,236,233,99,128,4,62,100,4,140,16,140,39,140,45,140,68,226,108,2,140,23,140,31,225,227,245,244,101,128,1,81,231,242,225,246,101,128,2,13,229,246,97,128,9,19,233,229,242,229,243,233,115,129,0,246,140,57,227,249,242,233,236,236,233,99,128,4,231,239,244,226,229,236,239,119,128,30,205,101,129,1,83,140,84,235,239,242,229,225,110,128,49,90,103,3,140,101,140,116,140,123,239,238,229,107,129,2,219,140,110,227,237,98,128,3,40,242,225,246,101,128,0,242,245,234,225,242,225,244,105,128,10,147,104,4,140,143,140,154,140,164,140,242,225,242,237,229,238,233,225,110,128,5,133,233,242,225,231,225,238,97,128,48,74,111,2,140,170,140,180,239,235,225,226,239,246,101,128,30,207,242,110,133,1,161,140,195,140,203,140,214,140,222,140,234,225,227,245,244,101,128,30,219,228,239,244,226,229,236,239,119,128,30,227,231,242,225,246,101,128,30,221,232,239,239,235,225,226,239,246,101,128,30,223,244,233,236,228,101,128,30,225,245,238,231,225,242,245,237,236,225,245,116,128,1,81,105,129,1,163,141,6,238,246,229,242,244,229,228,226,242,229,246,101,128,2,15,107,2,141,27,141,51,225,244,225,235,225,238,97,129,48,170,141,39,232,225,236,230,247,233,228,244,104,128,255,117,239,242,229,225,110,128,49,87,236,229,232,229,226,242,229,119,128,5,171,109,6,141,84,141,112,141,119,141,208,141,219,141,237,225,227,242,239,110,130,1,77,141,96,141,104,225,227,245,244,101,128,30,83,231,242,225,246,101,128,30,81,228,229,246,97,128,9,80,229,231,97,133,3,201,141,135,141,139,141,150,141,164,141,180,49,128,3,214,227,249,242,233,236,236,233,99,128,4,97,236,225,244,233,238,227,236,239,243,229,100,128,2,119,242,239,245,238,228,227,249,242,233,236,236,233,99,128,4,123,116,2,141,186,141,201,233,244,236,239,227,249,242,233,236,236,233,99,128,4,125,239,238,239,115,128,3,206,231,245,234,225,242,225,244,105,128,10,208,233,227,242,239,110,129,3,191,141,229,244,239,238,239,115,128,3,204,239,238,239,243,240,225,227,101,128,255,79,238,101,145,0,49,142,31,142,40,142,50,142,80,142,105,142,114,142,123,142,148,142,182,142,216,142,228,142,247,143,2,143,35,143,45,143,53,143,64,225,242,225,226,233,99,128,6,97,226,229,238,231,225,236,105,128,9,231,227,233,242,227,236,101,129,36,96,142,61,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,138,100,2,142,86,142,92,229,246,97,128,9,103,239,244,229,238,236,229,225,228,229,114,128,32,36,229,233,231,232,244,104,128,33,91,230,233,244,244,229,100,128,246,220,231,117,2,142,130,142,139,234,225,242,225,244,105,128,10,231,242,237,245,235,232,105,128,10,103,232,97,3,142,157,142,168,142,173,227,235,225,242,225,226,233,99,128,6,97,236,102,128,0,189,238,231,250,232,239,117,128,48,33,105,2,142,188,142,206,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,32,238,230,229,242,233,239,114,128,32,129,237,239,238,239,243,240,225,227,101,128,255,17,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,244,239,236,228,243,244,249,236,101,128,247,49,112,2,143,8,143,15,225,242,229,110,128,36,116,229,114,2,143,22,143,28,233,239,100,128,36,136,243,233,225,110,128,6,241,241,245,225,242,244,229,114,128,0,188,242,239,237,225,110,128,33,112,243,245,240,229,242,233,239,114,128,0,185,244,104,2,143,71,143,76,225,105,128,14,81,233,242,100,128,33,83,111,3,143,90,143,124,143,140,103,2,143,96,143,114,239,238,229,107,129,1,235,143,105,237,225,227,242,239,110,128,1,237,245,242,237,245,235,232,105,128,10,19,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,75,240,229,110,128,2,84,112,3,143,154,143,161,143,172,225,242,229,110,128,36,170,229,238,226,245,236,236,229,116,128,37,230,244,233,239,110,128,35,37,114,2,143,185,143,214,100,2,143,191,143,202,230,229,237,233,238,233,238,101,128,0,170,237,225,243,227,245,236,233,238,101,128,0,186,244,232,239,231,239,238,225,108,128,34,31,115,5,143,237,144,13,144,30,144,75,144,88,232,239,242,116,2,143,246,143,253,228,229,246,97,128,9,18,246,239,247,229,236,243,233,231,238,228,229,246,97,128,9,74,236,225,243,104,129,0,248,144,22,225,227,245,244,101,128,1,255,237,225,236,108,2,144,39,144,50,232,233,242,225,231,225,238,97,128,48,73,235,225,244,225,235,225,238,97,129,48,169,144,63,232,225,236,230,247,233,228,244,104,128,255,107,244,242,239,235,229,225,227,245,244,101,128,1,255,245,240,229,242,233,239,114,128,246,240,116,2,144,104,144,115,227,249,242,233,236,236,233,99,128,4,127,233,236,228,101,130,0,245,144,126,144,134,225,227,245,244,101,128,30,77,228,233,229,242,229,243,233,115,128,30,79,245,226,239,240,239,237,239,230,111,128,49,33,118,2,144,163,144,244,229,114,2,144,170,144,236,236,233,238,101,131,32,62,144,183,144,206,144,229,99,2,144,189,144,201,229,238,244,229,242,236,233,238,101,128,254,74,237,98,128,3,5,100,2,144,212,144,220,225,243,232,229,100,128,254,73,226,236,247,225,246,121,128,254,76,247,225,246,121,128,254,75,243,227,239,242,101,128,0,175,239,247,229,236,243,233,231,110,3,145,3,145,13,145,20,226,229,238,231,225,236,105,128,9,203,228,229,246,97,128,9,75,231,245,234,225,242,225,244,105,128,10,203,112,145,0,112,145,69,147,197,147,208,147,217,147,229,149,154,149,164,150,156,151,175,152,9,152,35,152,166,152,174,153,76,153,134,153,162,153,172,97,14,145,99,145,131,145,141,145,148,145,155,145,203,145,214,145,228,145,239,146,30,146,44,147,56,147,95,147,185,97,2,145,105,145,117,237,240,243,243,241,245,225,242,101,128,51,128,243,229,238,244,239,243,241,245,225,242,101,128,51,43,226,229,238,231,225,236,105,128,9,170,227,245,244,101,128,30,85,228,229,246,97,128,9,42,103,2,145,161,145,179,101,2,145,167,145,174,228,239,247,110,128,33,223,245,112,128,33,222,117,2,145,185,145,194,234,225,242,225,244,105,128,10,170,242,237,245,235,232,105,128,10,42,232,233,242,225,231,225,238,97,128,48,113,233,249,225,238,238,239,233,244,232,225,105,128,14,47,235,225,244,225,235,225,238,97,128,48,209,108,2,145,245,146,14,225,244,225,236,233,250,225,244,233,239,238,227,249,242,233,236,236,233,227,227,237,98,128,4,132,239,227,232,235,225,227,249,242,233,236,236,233,99,128,4,192,238,243,233,239,243,235,239,242,229,225,110,128,49,127,114,3,146,52,146,73,147,45,97,2,146,58,146,66,231,242,225,240,104,128,0,182,236,236,229,108,128,34,37,229,110,2,146,80,146,190,236,229,230,116,136,0,40,146,103,146,118,146,123,146,128,146,139,146,151,146,174,146,179,225,236,244,239,238,229,225,242,225,226,233,99,128,253,62,226,116,128,248,237,229,120,128,248,236,233,238,230,229,242,233,239,114,128,32,141,237,239,238,239,243,240,225,227,101,128,255,8,115,2,146,157,146,164,237,225,236,108,128,254,89,245,240,229,242,233,239,114,128,32,125,244,112,128,248,235,246,229,242,244,233,227,225,108,128,254,53,242,233,231,232,116,136,0,41,146,214,146,229,146,234,146,239,146,250,147,6,147,29,147,34,225,236,244,239,238,229,225,242,225,226,233,99,128,253,63,226,116,128,248,248,229,120,128,248,247,233,238,230,229,242,233,239,114,128,32,142,237,239,238,239,243,240,225,227,101,128,255,9,115,2,147,12,147,19,237,225,236,108,128,254,90,245,240,229,242,233,239,114,128,32,126,244,112,128,248,246,246,229,242,244,233,227,225,108,128,254,54,244,233,225,236,228,233,230,102,128,34,2,115,3,147,64,147,75,147,87,229,241,232,229,226,242,229,119,128,5,192,232,244,225,232,229,226,242,229,119,128,5,153,241,245,225,242,101,128,51,169,244,225,104,134,5,183,147,113,147,127,147,132,147,141,147,156,147,172,49,2,147,119,147,123,49,128,5,183,100,128,5,183,178,97,128,5,183,232,229,226,242,229,119,128,5,183,238,225,242,242,239,247,232,229,226,242,229,119,128,5,183,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,183,247,233,228,229,232,229,226,242,229,119,128,5,183,250,229,242,232,229,226,242,229,119,128,5,161,226,239,240,239,237,239,230,111,128,49,6,227,233,242,227,236,101,128,36,223,228,239,244,225,227,227,229,238,116,128,30,87,101,137,5,228,147,251,148,6,148,26,148,38,148,58,148,160,148,171,148,192,149,147,227,249,242,233,236,236,233,99,128,4,63,228,225,231,229,243,104,129,251,68,148,17,232,229,226,242,229,119,128,251,68,229,250,233,243,241,245,225,242,101,128,51,59,230,233,238,225,236,228,225,231,229,243,232,232,229,226,242,229,119,128,251,67,104,5,148,70,148,93,148,101,148,115,148,145,225,114,2,148,77,148,84,225,226,233,99,128,6,126,237,229,238,233,225,110,128,5,122,229,226,242,229,119,128,5,228,230,233,238,225,236,225,242,225,226,233,99,128,251,87,105,2,148,121,148,136,238,233,244,233,225,236,225,242,225,226,233,99,128,251,88,242,225,231,225,238,97,128,48,122,237,229,228,233,225,236,225,242,225,226,233,99,128,251,89,235,225,244,225,235,225,238,97,128,48,218,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,167,114,5,148,204,148,216,149,2,149,123,149,136,225,230,229,232,229,226,242,229,119,128,251,78,227,229,238,116,131,0,37,148,229,148,238,148,250,225,242,225,226,233,99,128,6,106,237,239,238,239,243,240,225,227,101,128,255,5,243,237,225,236,108,128,254,106,105,2,149,8,149,105,239,100,134,0,46,149,25,149,36,149,47,149,59,149,70,149,82,225,242,237,229,238,233,225,110,128,5,137,227,229,238,244,229,242,229,100,128,0,183,232,225,236,230,247,233,228,244,104,128,255,97,233,238,230,229,242,233,239,114,128,246,231,237,239,238,239,243,240,225,227,101,128,255,14,115,2,149,88,149,95,237,225,236,108,128,254,82,245,240,229,242,233,239,114,128,246,232,243,240,239,237,229,238,233,231,242,229,229,235,227,237,98,128,3,66,240,229,238,228,233,227,245,236,225,114,128,34,165,244,232,239,245,243,225,238,100,128,32,48,243,229,244,97,128,32,167,230,243,241,245,225,242,101,128,51,138,104,3,149,172,149,222,150,103,97,3,149,180,149,190,149,197,226,229,238,231,225,236,105,128,9,171,228,229,246,97,128,9,43,231,117,2,149,204,149,213,234,225,242,225,244,105,128,10,171,242,237,245,235,232,105,128,10,43,105,133,3,198,149,236,149,240,150,70,150,78,150,89,49,128,3,213,229,245,240,104,4,149,253,150,32,150,47,150,56,97,2,150,3,150,18,227,233,242,227,236,229,235,239,242,229,225,110,128,50,122,240,225,242,229,238,235,239,242,229,225,110,128,50,26,227,233,242,227,236,229,235,239,242,229,225,110,128,50,108,235,239,242,229,225,110,128,49,77,240,225,242,229,238,235,239,242,229,225,110,128,50,12,236,225,244,233,110,128,2,120,238,244,232,245,244,232,225,105,128,14,58,243,249,237,226,239,236,231,242,229,229,107,128,3,213,111,3,150,111,150,116,150,142,239,107,128,1,165,240,104,2,150,123,150,132,225,238,244,232,225,105,128,14,30,245,238,231,244,232,225,105,128,14,28,243,225,237,240,232,225,239,244,232,225,105,128,14,32,105,133,3,192,150,170,151,126,151,137,151,148,151,162,229,245,112,6,150,186,150,221,150,253,151,25,151,39,151,91,97,2,150,192,150,207,227,233,242,227,236,229,235,239,242,229,225,110,128,50,115,240,225,242,229,238,235,239,242,229,225,110,128,50,19,227,105,2,150,228,150,240,229,245,227,235,239,242,229,225,110,128,49,118,242,227,236,229,235,239,242,229,225,110,128,50,101,107,2,151,3,151,17,233,249,229,239,235,235,239,242,229,225,110,128,49,114,239,242,229,225,110,128,49,66,240,225,242,229,238,235,239,242,229,225,110,128,50,5,243,233,239,115,2,151,48,151,76,107,2,151,54,151,68,233,249,229,239,235,235,239,242,229,225,110,128,49,116,239,242,229,225,110,128,49,68,244,233,235,229,245,244,235,239,242,229,225,110,128,49,117,116,2,151,97,151,112,232,233,229,245,244,232,235,239,242,229,225,110,128,49,119,233,235,229,245,244,235,239,242,229],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+40960);allocate([225,110,128,49,115,232,233,242,225,231,225,238,97,128,48,116,235,225,244,225,235,225,238,97,128,48,212,243,249,237,226,239,236,231,242,229,229,107,128,3,214,247,242,225,242,237,229,238,233,225,110,128,5,131,236,245,115,132,0,43,151,189,151,200,151,209,151,242,226,229,236,239,247,227,237,98,128,3,31,227,233,242,227,236,101,128,34,149,109,2,151,215,151,222,233,238,245,115,128,0,177,111,2,151,228,151,232,100,128,2,214,238,239,243,240,225,227,101,128,255,11,115,2,151,248,151,255,237,225,236,108,128,254,98,245,240,229,242,233,239,114,128,32,122,109,2,152,15,152,26,239,238,239,243,240,225,227,101,128,255,80,243,241,245,225,242,101,128,51,216,111,5,152,47,152,58,152,125,152,136,152,146,232,233,242,225,231,225,238,97,128,48,125,233,238,244,233,238,231,233,238,228,229,120,4,152,78,152,90,152,102,152,115,228,239,247,238,247,232,233,244,101,128,38,31,236,229,230,244,247,232,233,244,101,128,38,28,242,233,231,232,244,247,232,233,244,101,128,38,30,245,240,247,232,233,244,101,128,38,29,235,225,244,225,235,225,238,97,128,48,221,240,236,225,244,232,225,105,128,14,27,243,244,225,236,237,225,242,107,129,48,18,152,159,230,225,227,101,128,48,32,240,225,242,229,110,128,36,171,114,3,152,182,152,208,152,233,101,2,152,188,152,196,227,229,228,229,115,128,34,122,243,227,242,233,240,244,233,239,110,128,33,30,233,237,101,2,152,216,152,222,237,239,100,128,2,185,242,229,246,229,242,243,229,100,128,32,53,111,4,152,243,152,250,153,4,153,17,228,245,227,116,128,34,15,234,229,227,244,233,246,101,128,35,5,236,239,238,231,229,228,235,225,238,97,128,48,252,112,2,153,23,153,60,101,2,153,29,153,36,236,236,239,114,128,35,24,242,243,117,2,153,44,153,51,226,243,229,116,128,34,130,240,229,242,243,229,116,128,34,131,239,242,244,233,239,110,129,34,55,153,71,225,108,128,34,29,115,2,153,82,153,125,105,130,3,200,153,90,153,101,227,249,242,233,236,236,233,99,128,4,113,236,233,240,238,229,245,237,225,244,225,227,249,242,233,236,236,233,227,227,237,98,128,4,134,243,241,245,225,242,101,128,51,176,117,2,153,140,153,151,232,233,242,225,231,225,238,97,128,48,119,235,225,244,225,235,225,238,97,128,48,215,246,243,241,245,225,242,101,128,51,180,247,243,241,245,225,242,101,128,51,186,113,136,0,113,153,202,154,251,155,6,155,15,155,22,155,34,155,72,155,80,97,4,153,212,153,235,154,43,154,234,100,2,153,218,153,224,229,246,97,128,9,88,237,225,232,229,226,242,229,119,128,5,168,102,4,153,245,153,254,154,12,154,28,225,242,225,226,233,99,128,6,66,230,233,238,225,236,225,242,225,226,233,99,128,254,214,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,215,237,229,228,233,225,236,225,242,225,226,233,99,128,254,216,237,225,244,115,136,5,184,154,66,154,86,154,100,154,105,154,110,154,119,154,134,154,221,49,3,154,74,154,78,154,82,48,128,5,184,97,128,5,184,99,128,5,184,50,2,154,92,154,96,55,128,5,184,57,128,5,184,179,51,128,5,184,228,101,128,5,184,232,229,226,242,229,119,128,5,184,238,225,242,242,239,247,232,229,226,242,229,119,128,5,184,113,2,154,140,154,206,225,244,225,110,4,154,153,154,162,154,177,154,193,232,229,226,242,229,119,128,5,184,238,225,242,242,239,247,232,229,226,242,229,119,128,5,184,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,184,247,233,228,229,232,229,226,242,229,119,128,5,184,245,225,242,244,229,242,232,229,226,242,229,119,128,5,184,247,233,228,229,232,229,226,242,229,119,128,5,184,242,238,229,249,240,225,242,225,232,229,226,242,229,119,128,5,159,226,239,240,239,237,239,230,111,128,49,17,227,233,242,227,236,101,128,36,224,232,239,239,107,128,2,160,237,239,238,239,243,240,225,227,101,128,255,81,239,102,130,5,231,155,43,155,63,228,225,231,229,243,104,129,251,71,155,54,232,229,226,242,229,119,128,251,71,232,229,226,242,229,119,128,5,231,240,225,242,229,110,128,36,172,117,4,155,90,155,102,155,191,156,22,225,242,244,229,242,238,239,244,101,128,38,105,226,245,244,115,135,5,187,155,123,155,128,155,133,155,138,155,147,155,162,155,178,177,56,128,5,187,178,53,128,5,187,179,49,128,5,187,232,229,226,242,229,119,128,5,187,238,225,242,242,239,247,232,229,226,242,229,119,128,5,187,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,187,247,233,228,229,232,229,226,242,229,119,128,5,187,229,243,244,233,239,110,133,0,63,155,210,155,233,155,250,156,2,156,14,225,114,2,155,217,155,224,225,226,233,99,128,6,31,237,229,238,233,225,110,128,5,94,228,239,247,110,129,0,191,155,242,243,237,225,236,108,128,247,191,231,242,229,229,107,128,3,126,237,239,238,239,243,240,225,227,101,128,255,31,243,237,225,236,108,128,247,63,239,244,101,4,156,34,156,105,156,125,156,154,228,226,108,133,0,34,156,50,156,57,156,64,156,76,156,97,226,225,243,101,128,32,30,236,229,230,116,128,32,28,237,239,238,239,243,240,225,227,101,128,255,2,240,242,233,237,101,129,48,30,156,86,242,229,246,229,242,243,229,100,128,48,29,242,233,231,232,116,128,32,29,236,229,230,116,129,32,24,156,114,242,229,246,229,242,243,229,100,128,32,27,114,2,156,131,156,141,229,246,229,242,243,229,100,128,32,27,233,231,232,116,129,32,25,156,150,110,128,1,73,243,233,238,231,108,2,156,164,156,171,226,225,243,101,128,32,26,101,129,0,39,156,177,237,239,238,239,243,240,225,227,101,128,255,7,114,145,0,114,156,227,157,231,157,242,158,33,158,84,159,101,159,125,159,220,161,254,162,35,162,47,162,101,162,109,163,15,163,26,163,61,163,161,97,11,156,251,157,6,157,16,157,23,157,88,157,104,157,129,157,140,157,165,157,188,157,225,225,242,237,229,238,233,225,110,128,5,124,226,229,238,231,225,236,105,128,9,176,227,245,244,101,128,1,85,100,4,157,33,157,39,157,53,157,79,229,246,97,128,9,48,233,227,225,108,129,34,26,157,48,229,120,128,248,229,239,246,229,242,243,243,241,245,225,242,101,129,51,174,157,69,228,243,241,245,225,242,101,128,51,175,243,241,245,225,242,101,128,51,173,230,101,129,5,191,157,95,232,229,226,242,229,119,128,5,191,231,117,2,157,111,157,120,234,225,242,225,244,105,128,10,176,242,237,245,235,232,105,128,10,48,232,233,242,225,231,225,238,97,128,48,137,235,225,244,225,235,225,238,97,129,48,233,157,153,232,225,236,230,247,233,228,244,104,128,255,151,236,239,247,229,242,228,233,225,231,239,238,225,236,226,229,238,231,225,236,105,128,9,241,109,2,157,194,157,217,233,228,228,236,229,228,233,225,231,239,238,225,236,226,229,238,231,225,236,105,128,9,240,243,232,239,242,110,128,2,100,244,233,111,128,34,54,226,239,240,239,237,239,230,111,128,49,22,99,4,157,252,158,3,158,12,158,20,225,242,239,110,128,1,89,229,228,233,236,236,97,128,1,87,233,242,227,236,101,128,36,225,239,237,237,225,225,227,227,229,238,116,128,1,87,100,2,158,39,158,49,226,236,231,242,225,246,101,128,2,17,239,116,2,158,56,158,65,225,227,227,229,238,116,128,30,89,226,229,236,239,119,129,30,91,158,75,237,225,227,242,239,110,128,30,93,101,6,158,98,158,143,158,178,158,233,159,2,159,35,102,2,158,104,158,117,229,242,229,238,227,229,237,225,242,107,128,32,59,236,229,248,243,117,2,158,127,158,134,226,243,229,116,128,34,134,240,229,242,243,229,116,128,34,135,231,233,243,244,229,114,2,158,154,158,159,229,100,128,0,174,115,2,158,165,158,171,225,238,115,128,248,232,229,242,233,102,128,246,218,104,3,158,186,158,209,158,223,225,114,2,158,193,158,200,225,226,233,99,128,6,49,237,229,238,233,225,110,128,5,128,230,233,238,225,236,225,242,225,226,233,99,128,254,174,233,242,225,231,225,238,97,128,48,140,235,225,244,225,235,225,238,97,129,48,236,158,246,232,225,236,230,247,233,228,244,104,128,255,154,243,104,130,5,232,159,11,159,26,228,225,231,229,243,232,232,229,226,242,229,119,128,251,72,232,229,226,242,229,119,128,5,232,118,3,159,43,159,56,159,88,229,242,243,229,228,244,233,236,228,101,128,34,61,233,97,2,159,63,159,72,232,229,226,242,229,119,128,5,151,237,245,231,242,225,243,232,232,229,226,242,229,119,128,5,151,236,239,231,233,227,225,236,238,239,116,128,35,16,230,233,243,232,232,239,239,107,129,2,126,159,114,242,229,246,229,242,243,229,100,128,2,127,104,2,159,131,159,154,97,2,159,137,159,147,226,229,238,231,225,236,105,128,9,221,228,229,246,97,128,9,93,111,131,3,193,159,164,159,193,159,207,239,107,129,2,125,159,171,244,245,242,238,229,100,129,2,123,159,182,243,245,240,229,242,233,239,114,128,2,181,243,249,237,226,239,236,231,242,229,229,107,128,3,241,244,233,227,232,239,239,235,237,239,100,128,2,222,105,6,159,234,161,22,161,68,161,79,161,104,161,240,229,245,108,9,160,0,160,35,160,50,160,64,160,110,160,124,160,210,160,223,161,2,97,2,160,6,160,21,227,233,242,227,236,229,235,239,242,229,225,110,128,50,113,240,225,242,229,238,235,239,242,229,225,110,128,50,17,227,233,242,227,236,229,235,239,242,229,225,110,128,50,99,232,233,229,245,232,235,239,242,229,225,110,128,49,64,107,2,160,70,160,102,233,249,229,239,107,2,160,80,160,89,235,239,242,229,225,110,128,49,58,243,233,239,243,235,239,242,229,225,110,128,49,105,239,242,229,225,110,128,49,57,237,233,229,245,237,235,239,242,229,225,110,128,49,59,112,3,160,132,160,164,160,179,97,2,160,138,160,152,238,243,233,239,243,235,239,242,229,225,110,128,49,108,242,229,238,235,239,242,229,225,110,128,50,3,232,233,229,245,240,232,235,239,242,229,225,110,128,49,63,233,229,245,112,2,160,188,160,197,235,239,242,229,225,110,128,49,60,243,233,239,243,235,239,242,229,225,110,128,49,107,243,233,239,243,235,239,242,229,225,110,128,49,61,116,2,160,229,160,244,232,233,229,245,244,232,235,239,242,229,225,110,128,49,62,233,235,229,245,244,235,239,242,229,225,110,128,49,106,249,229,239,242,233,238,232,233,229,245,232,235,239,242,229,225,110,128,49,109,231,232,116,2,161,30,161,38,225,238,231,236,101,128,34,31,116,2,161,44,161,58,225,227,235,226,229,236,239,247,227,237,98,128,3,25,242,233,225,238,231,236,101,128,34,191,232,233,242,225,231,225,238,97,128,48,138,235,225,244,225,235,225,238,97,129,48,234,161,92,232,225,236,230,247,233,228,244,104,128,255,152,110,2,161,110,161,226,103,131,2,218,161,120,161,131,161,137,226,229,236,239,247,227,237,98,128,3,37,227,237,98,128,3,10,232,225,236,102,2,161,146,161,192,236,229,230,116,131,2,191,161,159,161,170,161,181,225,242,237,229,238,233,225,110,128,5,89,226,229,236,239,247,227,237,98,128,3,28,227,229,238,244,229,242,229,100,128,2,211,242,233,231,232,116,130,2,190,161,204,161,215,226,229,236,239,247,227,237,98,128,3,57,227,229,238,244,229,242,229,100,128,2,210,246,229,242,244,229,228,226,242,229,246,101,128,2,19,244,244,239,242,245,243,241,245,225,242,101,128,51,81,108,2,162,4,162,15,233,238,229,226,229,236,239,119,128,30,95,239,238,231,236,229,103,129,2,124,162,26,244,245,242,238,229,100,128,2,122,237,239,238,239,243,240,225,227,101,128,255,82,111,3,162,55,162,66,162,91,232,233,242,225,231,225,238,97,128,48,141,235,225,244,225,235,225,238,97,129,48,237,162,79,232,225,236,230,247,233,228,244,104,128,255,155,242,245,225,244,232,225,105,128,14,35,240,225,242,229,110,128,36,173,114,3,162,117,162,153,162,183,97,3,162,125,162,135,162,142,226,229,238,231,225,236,105,128,9,220,228,229,246,97,128,9,49,231,245,242,237,245,235,232,105,128,10,92,229,104,2,162,160,162,169,225,242,225,226,233,99,128,6,145,230,233,238,225,236,225,242,225,226,233,99,128,251,141,246,239,227,225,236,233,99,4,162,199,162,209,162,216,162,227,226,229,238,231,225,236,105,128,9,224,228,229,246,97,128,9,96,231,245,234,225,242,225,244,105,128,10,224,246,239,247,229,236,243,233,231,110,3,162,243,162,253,163,4,226,229,238,231,225,236,105,128,9,196,228,229,246,97,128,9,68,231,245,234,225,242,225,244,105,128,10,196,243,245,240,229,242,233,239,114,128,246,241,116,2,163,32,163,40,226,236,239,227,107,128,37,144,245,242,238,229,100,129,2,121,163,50,243,245,240,229,242,233,239,114,128,2,180,117,4,163,71,163,82,163,107,163,154,232,233,242,225,231,225,238,97,128,48,139,235,225,244,225,235,225,238,97,129,48,235,163,95,232,225,236,230,247,233,228,244,104,128,255,153,112,2,163,113,163,148,229,101,2,163,120,163,134,237,225,242,235,226,229,238,231,225,236,105,128,9,242,243,233,231,238,226,229,238,231,225,236,105,128,9,243,233,225,104,128,246,221,244,232,225,105,128,14,36,246,239,227,225,236,233,99,4,163,177,163,187,163,194,163,205,226,229,238,231,225,236,105,128,9,139,228,229,246,97,128,9,11,231,245,234,225,242,225,244,105,128,10,139,246,239,247,229,236,243,233,231,110,3,163,221,163,231,163,238,226,229,238,231,225,236,105,128,9,195,228,229,246,97,128,9,67,231,245,234,225,242,225,244,105,128,10,195,115,147,0,115,164,35,166,5,166,16,166,142,166,181,169,123,169,134,172,21,174,159,174,205,174,232,175,167,175,234,177,11,177,21,177,207,178,24,178,194,178,204,97,9,164,55,164,65,164,86,164,158,164,183,164,194,164,219,164,251,165,35,226,229,238,231,225,236,105,128,9,184,227,245,244,101,129,1,91,164,74,228,239,244,225,227,227,229,238,116,128,30,101,100,5,164,98,164,107,164,113,164,127,164,143,225,242,225,226,233,99,128,6,53,229,246,97,128,9,56,230,233,238,225,236,225,242,225,226,233,99,128,254,186,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,187,237,229,228,233,225,236,225,242,225,226,233,99,128,254,188,231,117,2,164,165,164,174,234,225,242,225,244,105,128,10,184,242,237,245,235,232,105,128,10,56,232,233,242,225,231,225,238,97,128,48,85,235,225,244,225,235,225,238,97,129,48,181,164,207,232,225,236,230,247,233,228,244,104,128,255,123,236,236,225,236,236,225,232,239,245,225,236,225,249,232,229,247,225,243,225,236,236,225,237,225,242,225,226,233,99,128,253,250,237,229,235,104,130,5,225,165,6,165,26,228,225,231,229,243,104,129,251,65,165,17,232,229,226,242,229,119,128,251,65,232,229,226,242,229,119,128,5,225,242,97,5,165,48,165,122,165,130,165,180,165,188,97,5,165,60,165,68,165,76,165,107,165,115,225,244,232,225,105,128,14,50,229,244,232,225,105,128,14,65,233,237,225,233,109,2,165,86,165,97,225,236,225,233,244,232,225,105,128,14,68,245,225,238,244,232,225,105,128,14,67,237,244,232,225,105,128,14,51,244,232,225,105,128,14,48,229,244,232,225,105,128,14,64,105,3,165,138,165,162,165,173,105,2,165,144,165,155,236,229,230,244,244,232,225,105,128,248,134,244,232,225,105,128,14,53,236,229,230,244,244,232,225,105,128,248,133,244,232,225,105,128,14,52,239,244,232,225,105,128,14,66,117,3,165,196,165,246,165,253,101,3,165,204,165,228,165,239,101,2,165,210,165,221,236,229,230,244,244,232,225,105,128,248,136,244,232,225,105,128,14,55,236,229,230,244,244,232,225,105,128,248,135,244,232,225,105,128,14,54,244,232,225,105,128,14,56,245,244,232,225,105,128,14,57,226,239,240,239,237,239,230,111,128,49,25,99,5,166,28,166,49,166,58,166,107,166,129,225,242,239,110,129,1,97,166,37,228,239,244,225,227,227,229,238,116,128,30,103,229,228,233,236,236,97,128,1,95,232,247,97,131,2,89,166,70,166,81,166,100,227,249,242,233,236,236,233,99,128,4,217,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,219,232,239,239,107,128,2,90,233,242,99,2,166,115,166,120,236,101,128,36,226,245,237,230,236,229,120,128,1,93,239,237,237,225,225,227,227,229,238,116,128,2,25,228,239,116,2,166,150,166,159,225,227,227,229,238,116,128,30,97,226,229,236,239,119,129,30,99,166,169,228,239,244,225,227,227,229,238,116,128,30,105,101,9,166,201,166,217,166,252,167,61,167,164,167,191,167,216,168,41,168,68,225,231,245,236,236,226,229,236,239,247,227,237,98,128,3,60,99,2,166,223,166,245,239,238,100,129,32,51,166,231,244,239,238,229,227,232,233,238,229,243,101,128,2,202,244,233,239,110,128,0,167,229,110,4,167,7,167,16,167,30,167,46,225,242,225,226,233,99,128,6,51,230,233,238,225,236,225,242,225,226,233,99,128,254,178,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,179,237,229,228,233,225,236,225,242,225,226,233,99,128,254,180,231,239,108,135,5,182,167,81,167,95,167,100,167,109,167,124,167,140,167,151,49,2,167,87,167,91,51,128,5,182,102,128,5,182,178,99,128,5,182,232,229,226,242,229,119,128,5,182,238,225,242,242,239,247,232,229,226,242,229,119,128,5,182,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,182,244,225,232,229,226,242,229,119,128,5,146,247,233,228,229,232,229,226,242,229,119,128,5,182,104,2,167,170,167,181,225,242,237,229,238,233,225,110,128,5,125,233,242,225,231,225,238,97,128,48,91,235,225,244,225,235,225,238,97,129,48,187,167,204,232,225,236,230,247,233,228,244,104,128,255,126,237,105,2,167,223,168,10,227,239,236,239,110,131,0,59,167,237,167,246,168,2,225,242,225,226,233,99,128,6,27,237,239,238,239,243,240,225,227,101,128,255,27,243,237,225,236,108,128,254,84,246,239,233,227,229,228,237,225,242,235,235,225,238,97,129,48,156,168,29,232,225,236,230,247,233,228,244,104,128,255,159,238,116,2,168,48,168,58,233,243,241,245,225,242,101,128,51,34,239,243,241,245,225,242,101,128,51,35,246,229,110,142,0,55,168,102,168,111,168,121,168,151,168,158,168,168,168,193,168,220,168,254,169,10,169,21,169,54,169,62,169,73,225,242,225,226,233,99,128,6,103,226,229,238,231,225,236,105,128,9,237,227,233,242,227,236,101,129,36,102,168,132,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,144,228,229,246,97,128,9,109,229,233,231,232,244,232,115,128,33,94,231,117,2,168,175,168,184,234,225,242,225,244,105,128,10,237,242,237,245,235,232,105,128,10,109,232,97,2,168,200,168,211,227,235,225,242,225,226,233,99,128,6,103,238,231,250,232,239,117,128,48,39,105,2,168,226,168,244,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,38,238,230,229,242,233,239,114,128,32,135,237,239,238,239,243,240,225,227,101,128,255,23,239,236,228,243,244,249,236,101,128,247,55,112,2,169,27,169,34,225,242,229,110,128,36,122,229,114,2,169,41,169,47,233,239,100,128,36,142,243,233,225,110,128,6,247,242,239,237,225,110,128,33,118,243,245,240,229,242,233,239,114,128,32,119,116,2,169,79,169,117,229,229,110,2,169,87,169,96,227,233,242,227,236,101,128,36,112,112,2,169,102,169,109,225,242,229,110,128,36,132,229,242,233,239,100,128,36,152,232,225,105,128,14,87,230,244,232,249,240,232,229,110,128,0,173,104,7,169,150,170,124,170,135,170,149,171,94,171,107,172,15,97,6,169,164,169,175,169,185,169,196,170,83,170,108,225,242,237,229,238,233,225,110,128,5,119,226,229,238,231,225,236,105,128,9,182,227,249,242,233,236,236,233,99,128,4,72,100,2,169,202,170,42,228,97,4,169,213,169,222,169,253,170,11,225,242,225,226,233,99,128,6,81,228,225,237,237,97,2,169,232,169,241,225,242,225,226,233,99,128,252,97,244,225,238,225,242,225,226,233,99,128,252,94,230,225,244,232,225,225,242,225,226,233,99,128,252,96,235,225,243,242,97,2,170,21,170,30,225,242,225,226,233,99,128,252,98,244,225,238,225,242,225,226,233,99,128,252,95,101,132,37,146,170,54,170,61,170,69,170,78,228,225,242,107,128,37,147,236,233,231,232,116,128,37,145,237,229,228,233,245,109,128,37,146,246,97,128,9,54,231,117,2,170,90,170,99,234,225,242,225,244,105,128,10,182,242,237,245,235,232,105,128,10,54,236,243,232,229,236,229,244,232,229,226,242,229,119,128,5,147,226,239,240,239,237,239,230,111,128,49,21,227,232,225,227,249,242,233,236,236,233,99,128,4,73,101,4,170,159,170,224,170,234,170,251,229,110,4,170,170,170,179,170,193,170,209,225,242,225,226,233,99,128,6,52,230,233,238,225,236,225,242,225,226,233,99,128,254,182,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,183,237,229,228,233,225,236,225,242,225,226,233,99,128,254,184,233,227,239,240,244,233,99,128,3,227,241,229,108,129,32,170,170,242,232,229,226,242,229,119,128,32,170,246,97,134,5,176,171,12,171,27,171,41,171,50,171,65,171,81,49,2,171,18,171,23,177,53,128,5,176,53,128,5,176,50,2,171,33,171,37,50,128,5,176,101,128,5,176,232,229,226,242,229,119,128,5,176,238,225,242,242,239,247,232,229,226,242,229,119,128,5,176,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,176,247,233,228,229,232,229,226,242,229,119,128,5,176,232,225,227,249,242,233,236,236,233,99,128,4,187,105,2,171,113,171,124,237,225,227,239,240,244,233,99,128,3,237,110,131,5,233,171,134,171,217,171,226,100,2,171,140,171,206,225,231,229,243,104,130,251,73,171,152,171,161,232,229,226,242,229,119,128,251,73,115,2,171,167,171,187,232,233,238,228,239,116,129,251,44,171,178,232,229,226,242,229,119,128,251,44,233,238,228,239,116,129,251,45,171,197,232,229,226,242,229,119,128,251,45,239,244,232,229,226,242,229,119,128,5,193,232,229,226,242,229,119,128,5,233,115,2,171,232,171,252,232,233,238,228,239,116,129,251,42,171,243,232,229,226,242,229,119,128,251,42,233,238,228,239,116,129,251,43,172,6,232,229,226,242,229,119,128,251,43,239,239,107,128,2,130,105,8,172,39,172,83,172,94,172,119,172,149,172,157,172,170,173,85,231,237,97,131,3,195,172,51,172,55,172,63,49,128,3,194,230,233,238,225,108,128,3,194,236,245,238,225,244,229,243,249,237,226,239,236,231,242,229,229,107,128,3,242,232,233,242,225,231,225,238,97,128,48,87,235,225,244,225,235,225,238,97,129,48,183,172,107,232,225,236,230,247,233,228,244,104,128,255,124,236,245,113,2,172,127,172,136,232,229,226,242,229,119,128,5,189,236,229,230,244,232,229,226,242,229,119,128,5,189,237,233,236,225,114,128,34,60,238,228,239,244,232,229,226,242,229,119,128,5,194,239,115,6,172,185,172,220,172,252,173,24,173,38,173,70,97,2,172,191,172,206,227,233,242,227,236,229,235,239,242,229,225,110,128,50,116,240,225,242,229,238,235,239,242,229,225,110,128,50,20,227,105,2,172,227,172,239,229,245,227,235,239,242,229,225,110,128,49,126,242,227,236,229,235,239,242,229,225,110,128,50,102,107,2,173,2,173,16,233,249,229,239,235,235,239,242,229,225,110,128,49,122,239,242,229,225,110,128,49,69,238,233,229,245,238,235,239,242,229,225,110,128,49,123,112,2,173,44,173,57,225,242,229,238,235,239,242,229,225,110,128,50,6,233,229,245,240,235,239,242,229,225,110,128,49,125,244,233,235,229,245,244,235,239,242,229,225,110,128,49,124,120,141,0,54,173,115,173,124,173,134,173,164,173,171,173,196,173,223,174,1,174,13,174,24,174,57,174,65,174,76,225,242,225,226,233,99,128,6,102,226,229,238,231,225,236,105,128,9,236,227,233,242,227,236,101,129,36,101,173,145,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,143,228,229,246,97,128,9,108,231,117,2,173,178,173,187,234,225,242,225,244,105,128,10,236,242,237,245,235,232,105,128,10,108,232,97,2,173,203,173,214,227,235,225,242,225,226,233,99,128,6,102,238,231,250,232,239,117,128,48,38,105,2,173,229,173,247,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,37,238,230,229,242,233,239,114,128,32,134,237,239,238,239,243,240,225,227,101,128,255,22,239,236,228,243,244,249,236,101,128,247,54,112,2,174,30,174,37,225,242,229,110,128,36,121,229,114,2,174,44,174,50,233,239,100,128,36,141,243,233,225,110,128,6,246,242,239,237,225,110,128,33,117,243,245,240,229,242,233,239,114,128,32,118,116,2,174,82,174,153,229,229,110,2,174,90,174,132,99,2,174,96,174,104,233,242,227,236,101,128,36,111,245,242,242,229,238,227,249,228,229,238,239,237,233,238,225,244,239,242,226,229,238,231,225,236,105,128,9,249,112,2,174,138,174,145,225,242,229,110,128,36,131,229,242,233,239,100,128,36,151,232,225,105,128,14,86,108,2,174,165,174,185,225,243,104,129,0,47,174,173,237,239,238,239,243,240,225,227,101,128,255,15,239,238,103,129,1,127,174,193,228,239,244,225,227,227,229,238,116,128,30,155,109,2,174,211,174,221,233,236,229,230,225,227,101,128,38,58,239,238,239,243,240,225,227,101,128,255,83,111,6,174,246,175,40,175,51,175,76,175,121,175,132,102,2,174,252,175,10,240,225,243,245,241,232,229,226,242,229,119,128,5,195,116,2,175,16,175,25,232,249,240,232,229,110,128,0,173,243,233,231,238,227,249,242,233,236,236,233,99,128,4,76,232,233,242,225,231,225,238,97,128,48,93,235,225,244,225,235,225,238,97,129,48,189,175,64,232,225,236,230,247,233,228,244,104,128,255,127,236,233,228,245,115,2,175,86,175,103,236,239,238,231,239,246,229,242,236,225,249,227,237,98,128,3,56,243,232,239,242,244,239,246,229,242,236,225,249,227,237,98,128,3,55,242,245,243,233,244,232,225,105,128,14,41,115,3,175,140,175,150,175,158,225,236,225,244,232,225,105,128,14,40,239,244,232,225,105,128,14,11,245,225,244,232,225,105,128,14,42,240,97,3,175,176,175,196,175,228,227,101,129,0,32,175,183,232,225,227,235,225,242,225,226,233,99,128,0,32,228,101,129,38,96,175,203,243,245,233,116,2,175,212,175,220,226,236,225,227,107,128,38,96,247,232,233,244,101,128,38,100,242,229,110,128,36,174,241,245,225,242,101,11,176,6,176,17,176,31,176,56,176,73,176,99,176,114,176,147,176,174,176,230,176,245,226,229,236,239,247,227,237,98,128,3,59,99,2,176,23,176,27,99,128,51,196,109,128,51,157,228,233,225,231,239,238,225,236,227,242,239,243,243,232,225,244,227,232,230,233,236,108,128,37,169,232,239,242,233,250,239,238,244,225,236,230,233,236,108,128,37,164,107,2,176,79,176,83,103,128,51,143,109,129,51,158,176,89,227,225,240,233,244,225,108,128,51,206,108,2,176,105,176,109,110,128,51,209,239,103,128,51,210,109,4,176,124,176,128,176,133,176,137,103,128,51,142,233,108,128,51,213,109,128,51,156,243,241,245,225,242,229,100,128,51,161,239,242,244,232,239,231,239,238,225,236,227,242,239,243,243,232,225,244,227,232,230,233,236,108,128,37,166,245,240,240,229,114,2,176,184,176,207,236,229,230,244,244,239,236,239,247,229,242,242,233,231,232,244,230,233,236,108,128,37,167,242,233,231,232,244,244,239,236,239,247,229,242,236,229,230,244,230,233,236,108,128,37,168,246,229,242,244,233,227,225,236,230,233,236,108,128,37,165,247,232,233,244,229,247,233,244,232,243,237,225,236,236,226,236,225,227,107,128,37,163,242,243,241,245,225,242,101,128,51,219,115,2,177,27,177,197,97,4,177,37,177,47,177,54,177,65,226,229,238,231,225,236,105,128,9,183,228,229,246,97,128,9,55,231,245,234,225,242,225,244,105,128,10,183,238,103,8,177,84,177,98,177,112,177,126,177,141,177,155,177,169,177,182,227,233,229,245,227,235,239,242,229,225,110,128,49,73,232,233,229,245,232,235,239,242,229,225,110,128,49,133,233,229,245,238,231,235,239,242,229,225,110,128,49,128,235,233,249,229,239,235,235,239,242,229,225,110,128,49,50,238,233,229,245,238,235,239,242,229,225,110,128,49,101,240,233,229,245,240,235,239,242,229,225,110,128,49,67,243,233,239,243,235,239,242,229,225,110,128,49,70,244,233,235,229,245,244,235,239,242,229,225,110,128,49,56,245,240,229,242,233,239,114,128,246,242,116,2,177,213,177,236,229,242,236,233,238,103,129,0,163,177,224,237,239,238,239,243,240,225,227,101,128,255,225,242,239,235,101,2,177,245,178,6,236,239,238,231,239,246,229,242,236,225,249,227,237,98,128,3,54,243,232,239,242,244,239,246,229,242,236,225,249,227,237,98,128,3,53,117,7,178,40,178,72,178,94,178,105,178,146,178,156,178,160,226,243,229,116,130,34,130,178,51,178,62,238,239,244,229,241,245,225,108,128,34,138,239,242,229,241,245,225,108,128,34,134,99,2,178,78,178,86,227,229,229,228,115,128,34,123,232,244,232,225,116,128,34,11,232,233,242,225,231,225,238,97,128,48,89,107,2,178,111,178,135,225,244,225,235,225,238,97,129,48,185,178,123,232,225,236,230,247,233,228,244,104,128,255,125,245,238,225,242,225,226,233,99,128,6,82,237,237,225,244,233,239,110,128,34,17,110,128,38,60,240,229,242,243,229,116,130,34,131,178,173,178,184,238,239,244,229,241,245,225,108,128,34,139,239,242,229,241,245,225,108,128,34,135,246,243,241,245,225,242,101,128,51,220,249,239,245,247,225,229,242,225,243,241,245,225,242,101,128,51,124,116,144,0,116,179,1,180,10,180,31,180,174,180,214,183,6,186,144,187,219,187,231,187,243,189,20,189,45,189,131,190,55,190,239,191,73,97,10,179,23,179,33,179,54,179,61,179,86,179,164,179,181,179,206,179,220,179,224,226,229,238,231,225,236,105,128,9,164,227,107,2,179,40,179,47,228,239,247,110,128,34,164,236,229,230,116,128,34,163,228,229,246,97,128,9,36,231,117,2,179,68,179,77,234,225,242,225,244,105,128,10,164,242,237,245,235,232,105,128,10,36,104,4,179,96,179,105,179,119,179,149,225,242,225,226,233,99,128,6,55,230,233,238,225,236,225,242,225,226,233,99,128,254,194,105,2,179,125,179,140,238,233,244,233,225,236,225,242,225,226,233,99,128,254,195,242,225,231,225,238,97,128,48,95,237,229,228,233,225,236,225,242,225,226,233,99,128,254,196,233,243,249,239,245,229,242,225,243,241,245,225,242,101,128,51,125,235,225,244,225,235,225,238,97,129,48,191,179,194,232,225,236,230,247,233,228,244,104,128,255,128,244,247,229,229,236,225,242,225,226,233,99,128,6,64,117,128,3,196,118,130,5,234,179,232,180,1,228,225,231,229,115,129,251,74,179,242,104,129,251,74,179,248,232,229,226,242,229,119,128,251,74,232,229,226,242,229,119,128,5,234,98,2,180,16,180,21,225,114,128,1,103,239,240,239,237,239,230,111,128,49,10,99,6,180,45,180,52,180,59,180,68,180,134,180,161,225,242,239,110,128,1,101,227,245,242,108,128,2,168,229,228,233,236,236,97,128,1,99,232,229,104,4,180,80,180,89,180,103,180,119,225,242,225,226,233,99,128,6,134,230,233,238,225,236,225,242,225,226,233,99,128,251,123,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,124,237,229,228,233,225,236,225,242,225,226,233,99,128,251,125,233,242,99,2,180,142,180,147,236,101,128,36,227,245,237,230,236,229,248,226,229,236,239,119,128,30,113,239,237,237,225,225,227,227,229,238,116,128,1,99,100,2,180,180,180,190,233,229,242,229,243,233,115,128,30,151,239,116,2,180,197,180,206,225,227,227,229,238,116,128,30,107,226,229,236,239,119,128,30,109,101,9,180,234,180,245,181,9,182,19,182,44,182,108,182,175,182,180,182,232,227,249,242,233,236,236,233,99,128,4,66,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,173,104,7,181,25,181,34,181,48,181,88,181,118,181,159,182,1,225,242,225,226,233,99,128,6,42,230,233,238,225,236,225,242,225,226,233,99,128,254,150,232,225,232,105,2,181,57,181,72,238,233,244,233,225,236,225,242,225,226,233,99,128,252,162,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,12,105,2,181,94,181,109,238,233,244,233,225,236,225,242,225,226,233,99,128,254,151,242,225,231,225,238,97,128,48,102,234,229,229,237,105,2,181,128,181,143,238,233,244,233,225,236,225,242,225,226,233,99,128,252,161,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,11,109,2,181,165,181,199,225,242,226,245,244,97,2,181,176,181,185,225,242,225,226,233,99,128,6,41,230,233,238,225,236,225,242,225,226,233,99,128,254,148,101,2,181,205,181,218,228,233,225,236,225,242,225,226,233,99,128,254,152,229,237,105,2,181,226,181,241,238,233,244,233,225,236,225,242,225,226,233,99,128,252,164,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,14,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,115,235,225,244,225,235,225,238,97,129,48,198,182,32,232,225,236,230,247,233,228,244,104,128,255,131,108,2,182,50,182,69,229,240,232,239,238,101,129,33,33,182,61,226,236,225,227,107,128,38,14,233,243,232,97,2,182,78,182,93,231,229,228,239,236,225,232,229,226,242,229,119,128,5,160,241,229,244,225,238,225,232,229,226,242,229,119,128,5,169,110,4,182,118,182,127,182,146,182,167,227,233,242,227,236,101,128,36,105,233,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,41,112,2,182,152,182,159,225,242,229,110,128,36,125,229,242,233,239,100,128,36,145,242,239,237,225,110,128,33,121,243,104,128,2,167,116,131,5,216,182,190,182,210,182,219,228,225,231,229,243,104,129,251,56,182,201,232,229,226,242,229,119,128,251,56,232,229,226,242,229,119,128,5,216,243,229,227,249,242,233,236,236,233,99,128,4,181,246,233,114,2,182,240,182,249,232,229,226,242,229,119,128,5,155,236,229,230,244,232,229,226,242,229,119,128,5,155,104,6,183,20,183,172,184,38,184,170,185,77,186,134,97,5,183,32,183,42,183,49,183,74,183,103,226,229,238,231,225,236,105,128,9,165,228,229,246,97,128,9,37,231,117,2,183,56,183,65,234,225,242,225,244,105,128,10,165,242,237,245,235,232,105,128,10,37,108,2,183,80,183,89,225,242,225,226,233,99,128,6,48,230,233,238,225,236,225,242,225,226,233,99,128,254,172,238,244,232,225,235,232,225,116,3,183,118,183,149,183,156,236,239,119,2,183,126,183,137,236,229,230,244,244,232,225,105,128,248,152,242,233,231,232,244,244,232,225,105,128,248,151,244,232,225,105,128,14,76,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,150,101,3,183,180,183,244,184,11,104,4,183,190,183,199,183,213,183,229,225,242,225,226,233,99,128,6,43,230,233,238,225,236,225,242,225,226,233,99,128,254,154,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,155,237,229,228,233,225,236,225,242,225,226,233,99,128,254,156,242,101,2,183,251,184,4,229,248,233,243,244,115,128,34,3,230,239,242,101,128,34,52,244,97,130,3,184,184,20,184,24,49,128,3,209,243,249,237,226,239,236,231,242,229,229,107,128,3,209,105,2,184,44,184,130,229,245,244,104,4,184,57,184,92,184,107,184,116,97,2,184,63,184,78,227,233,242,227,236,229,235,239,242,229,225,110,128,50,121,240,225,242,229,238,235,239,242,229,225,110,128,50,25,227,233,242,227,236,229,235,239,242,229,225,110,128,50,107,235,239,242,229,225,110,128,49,76,240,225,242,229,238,235,239,242,229,225,110,128,50,11,242,244,229,229,110,2,184,140,184,149,227,233,242,227,236,101,128,36,108,112,2,184,155,184,162,225,242,229,110,128,36,128,229,242,233,239,100,128,36,148,111,6,184,184,184,201,184,206,184,220,184,225,185,22,238,225,238,231,237,239,238,244,232,239,244,232,225,105,128,14,17,239,107,128,1,173,240,232,245,244,232,225,239,244,232,225,105,128,14,18,242,110,128,0,254,244,104,3,184,234,185,2,185,12,97,2,184,240,184,250,232,225,238,244,232,225,105,128,14,23,238,244,232,225,105,128,14,16,239,238,231,244,232,225,105,128,14,24,245,238,231,244,232,225,105,128,14,22,245,243,225,238,100,2,185,32,185,43,227,249,242,233,236,236,233,99,128,4,130,243,243,229,240,225,242,225,244,239,114,2,185,58,185,67,225,242,225,226,233,99,128,6,108,240,229,242,243,233,225,110,128,6,108,242,229,101,144,0,51,185,115,185,124,185,134,185,164,185,171,185,181,185,206,185,233,186,11,186,23,186,42,186,53,186,86,186,108,186,116,186,127,225,242,225,226,233,99,128,6,99,226,229,238,231,225,236,105,128,9,233,227,233,242,227,236,101,129,36,98,185,145,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,140,228,229,246,97,128,9,105,229,233,231,232,244,232,115,128,33,92,231,117,2,185,188,185,197,234,225,242,225,244,105,128,10,233,242,237,245,235,232,105,128,10,105,232,97,2,185,213,185,224,227,235,225,242,225,226,233,99,128,6,99,238,231,250,232,239,117,128,48,35,105,2,185,239,186,1,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,34,238,230,229,242,233,239,114,128,32,131,237,239,238,239,243,240,225,227,101,128,255,19,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,246,239,236,228,243,244,249,236,101,128,247,51,112,2,186,59,186,66,225,242,229,110,128,36,118,229,114,2,186,73,186,79,233,239,100,128,36,138,243,233,225,110,128,6,243,241,245,225,242,244,229,242,115,129,0,190,186,99,229,237,228,225,243,104,128,246,222,242,239,237,225,110,128,33,114,243,245,240,229,242,233,239,114,128,0,179,244,232,225,105,128,14,83,250,243,241,245,225,242,101,128,51,148,105,7,186,160,186,171,187,30,187,128,187,140,187,189,187,206,232,233,242,225,231,225,238,97,128,48,97,107,2,186,177,186,201,225,244,225,235,225,238,97,129,48,193,186,189,232,225,236,230,247,233,228,244,104,128,255,129,229,245,116,4,186,213,186,248,187,7,187,16,97,2,186,219,186,234,227,233,242,227,236,229,235,239,242,229,225,110,128,50,112,240,225,242,229,238,235,239,242,229,225,110,128,50,16,227,233,242,227,236,229,235,239,242,229,225,110,128,50,98,235,239,242,229,225,110,128,49,55,240,225,242,229,238,235,239,242,229,225,110,128,50,2,236,228,101,133,2,220,187,46,187,57,187,74,187,86,187,114,226,229,236,239,247,227,237,98,128,3,48,99,2,187,63,187,68,237,98,128,3,3,239,237,98,128,3,3,228,239,245,226,236,229,227,237,98,128,3,96,111,2,187,92,187,102,240,229,242,225,244,239,114,128,34,60,246,229,242,236,225,249,227,237,98,128,3,52,246,229,242,244,233,227,225,236,227,237,98,128,3,62,237,229,243,227,233,242,227,236,101,128,34,151,112,2,187,146,187,176,229,232,97,2,187,154,187,163,232,229,226,242,229,119,128,5,150,236,229,230,244,232,229,226,242,229,119,128,5,150,240,233,231,245,242,237,245,235,232,105,128,10,112,244,236,239,227,249,242,233,236,236,233,227,227,237,98,128,4,131,247,238,225,242,237,229,238,233,225,110,128,5,127,236,233,238,229,226,229,236,239,119,128,30,111,237,239,238,239,243,240,225,227,101,128,255,84,111,7,188,3,188,14,188,25,188,50,188,170,188,182,189,10,225,242,237,229,238,233,225,110,128,5,105,232,233,242,225,231,225,238,97,128,48,104,235,225,244,225,235,225,238,97,129,48,200,188,38,232,225,236,230,247,233,228,244,104,128,255,132,110,3,188,58,188,156,188,161,101,4,188,68,188,137,188,144,188,150,226,225,114,4,188,80,188,109,188,119,188,128,229,248,244,242,97,2,188,90,188,100,232,233,231,232,237,239,100,128,2,229,236,239,247,237,239,100,128,2,233,232,233,231,232,237,239,100,128,2,230,236,239,247,237,239,100,128,2,232,237,233,228,237,239,100,128,2,231,230,233,246,101,128,1,189,243,233,120,128,1,133,244,247,111,128,1,168,239,115,128,3,132,243,241,245,225,242,101,128,51,39,240,225,244,225,235,244,232,225,105,128,14,15,242,244,239,233,243,229,243,232,229,236,236,226,242,225,227,235,229,116,2,188,205,188,235,236,229,230,116,130,48,20,188,216,188,224,243,237,225,236,108,128,254,93,246,229,242,244,233,227,225,108,128,254,57,242,233,231,232,116,130,48,21,188,247,188,255,243,237,225,236,108,128,254,94,246,229,242,244,233,227,225,108,128,254,58,244,225,239,244,232,225,105,128,14,21,240,97,2,189,27,189,39,236,225,244,225,236,232,239,239,107,128,1,171,242,229,110,128,36,175,114,3,189,53,189,84,189,99,225,228,229,237,225,242,107,129,33,34,189,65,115,2,189,71,189,77,225,238,115,128,248,234,229,242,233,102,128,246,219,229,244,242,239,230,236,229,248,232,239,239,107,128,2,136,233,225,103,4,189,111,189,116,189,121,189,126,228,110,128,37,188,236,102,128,37,196,242,116,128,37,186,245,112,128,37,178,115,132,2,166,189,143,189,182,190,32,190,45,225,228,105,130,5,230,189,153,189,173,228,225,231,229,243,104,129,251,70,189,164,232,229,226,242,229,119,128,251,70,232,229,226,242,229,119,128,5,230,101,2,189,188,189,199,227,249,242,233,236,236,233,99,128,4,70,242,101,134,5,181,189,216,189,230,189,235,189,244,190,3,190,19,49,2,189,222,189,226,50,128,5,181,101,128,5,181,178,98,128,5,181,232,229,226,242,229,119,128,5,181,238,225,242,242,239,247,232,229,226,242,229,119,128,5,181,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,181,247,233,228,229,232,229,226,242,229,119,128,5,181,232,229,227,249,242,233,236,236,233,99,128,4,91,245,240,229,242,233,239,114,128,246,243,116,4,190,65,190,115,190,180,190,231,97,3,190,73,190,83,190,90,226,229,238,231,225,236,105,128,9,159,228,229,246,97,128,9,31,231,117,2,190,97,190,106,234,225,242,225,244,105,128,10,159,242,237,245,235,232,105,128,10,31,229,104,4,190,126,190,135,190,149,190,165,225,242,225,226,233,99,128,6,121,230,233,238,225,236,225,242,225,226,233,99,128,251,103,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,104,237,229,228,233,225,236,225,242,225,226,233,99,128,251,105,232,97,3,190,189,190,199,190,206,226,229,238,231,225,236,105,128,9,160,228,229,246,97,128,9,32,231,117,2,190,213,190,222,234,225,242,225,244,105,128,10,160,242,237,245,235,232,105,128,10,32,245,242,238,229,100,128,2,135,117,3,190,247,191,2,191,27,232,233,242,225,231,225,238,97,128,48,100,235,225,244,225,235,225,238,97,129,48,196,191,15,232,225,236,230,247,233,228,244,104,128,255,130,243,237,225,236,108,2,191,37,191,48,232,233,242,225,231,225,238,97,128,48,99,235,225,244,225,235,225,238,97,129,48,195,191,61,232,225,236,230,247,233,228,244,104,128,255,111,119,2,191,79,191,184,101,2,191,85,191,133,236,246,101,3,191,95,191,104,191,125,227,233,242,227,236,101,128,36,107,112,2,191,110,191,117,225,242,229,110,128,36,127,229,242,233,239],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+51200);allocate([100,128,36,147,242,239,237,225,110,128,33,123,238,244,121,3,191,143,191,152,191,163,227,233,242,227,236,101,128,36,115,232,225,238,231,250,232,239,117,128,83,68,112,2,191,169,191,176,225,242,229,110,128,36,135,229,242,233,239,100,128,36,155,111,142,0,50,191,216,191,225,191,235,192,9,192,61,192,86,192,113,192,147,192,159,192,178,192,189,192,222,192,230,192,254,225,242,225,226,233,99,128,6,98,226,229,238,231,225,236,105,128,9,232,227,233,242,227,236,101,129,36,97,191,246,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,139,100,2,192,15,192,21,229,246,97,128,9,104,239,116,2,192,28,192,39,229,238,236,229,225,228,229,114,128,32,37,236,229,225,228,229,114,129,32,37,192,50,246,229,242,244,233,227,225,108,128,254,48,231,117,2,192,68,192,77,234,225,242,225,244,105,128,10,232,242,237,245,235,232,105,128,10,104,232,97,2,192,93,192,104,227,235,225,242,225,226,233,99,128,6,98,238,231,250,232,239,117,128,48,34,105,2,192,119,192,137,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,33,238,230,229,242,233,239,114,128,32,130,237,239,238,239,243,240,225,227,101,128,255,18,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,245,239,236,228,243,244,249,236,101,128,247,50,112,2,192,195,192,202,225,242,229,110,128,36,117,229,114,2,192,209,192,215,233,239,100,128,36,137,243,233,225,110,128,6,242,242,239,237,225,110,128,33,113,115,2,192,236,192,244,244,242,239,235,101,128,1,187,245,240,229,242,233,239,114,128,0,178,244,104,2,193,5,193,10,225,105,128,14,82,233,242,228,115,128,33,84,117,145,0,117,193,55,193,63,193,104,193,161,194,43,194,80,194,203,194,219,195,14,195,84,195,165,195,174,196,37,196,61,196,169,196,197,197,55,225,227,245,244,101,128,0,250,98,4,193,73,193,78,193,87,193,97,225,114,128,2,137,229,238,231,225,236,105,128,9,137,239,240,239,237,239,230,111,128,49,40,242,229,246,101,128,1,109,99,3,193,112,193,119,193,151,225,242,239,110,128,1,212,233,242,99,2,193,127,193,132,236,101,128,36,228,245,237,230,236,229,120,129,0,251,193,143,226,229,236,239,119,128,30,119,249,242,233,236,236,233,99,128,4,67,100,5,193,173,193,184,193,207,193,213,194,33,225,244,244,225,228,229,246,97,128,9,81,226,108,2,193,191,193,199,225,227,245,244,101,128,1,113,231,242,225,246,101,128,2,21,229,246,97,128,9,9,233,229,242,229,243,233,115,133,0,252,193,233,193,241,193,249,194,16,194,24,225,227,245,244,101,128,1,216,226,229,236,239,119,128,30,115,99,2,193,255,194,6,225,242,239,110,128,1,218,249,242,233,236,236,233,99,128,4,241,231,242,225,246,101,128,1,220,237,225,227,242,239,110,128,1,214,239,244,226,229,236,239,119,128,30,229,103,2,194,49,194,56,242,225,246,101,128,0,249,117,2,194,62,194,71,234,225,242,225,244,105,128,10,137,242,237,245,235,232,105,128,10,9,104,3,194,88,194,98,194,176,233,242,225,231,225,238,97,128,48,70,111,2,194,104,194,114,239,235,225,226,239,246,101,128,30,231,242,110,133,1,176,194,129,194,137,194,148,194,156,194,168,225,227,245,244,101,128,30,233,228,239,244,226,229,236,239,119,128,30,241,231,242,225,246,101,128,30,235,232,239,239,235,225,226,239,246,101,128,30,237,244,233,236,228,101,128,30,239,245,238,231,225,242,245,237,236,225,245,116,129,1,113,194,192,227,249,242,233,236,236,233,99,128,4,243,233,238,246,229,242,244,229,228,226,242,229,246,101,128,2,23,107,3,194,227,194,251,195,6,225,244,225,235,225,238,97,129,48,166,194,239,232,225,236,230,247,233,228,244,104,128,255,115,227,249,242,233,236,236,233,99,128,4,121,239,242,229,225,110,128,49,92,109,2,195,20,195,73,97,2,195,26,195,59,227,242,239,110,130,1,107,195,37,195,48,227,249,242,233,236,236,233,99,128,4,239,228,233,229,242,229,243,233,115,128,30,123,244,242,225,231,245,242,237,245,235,232,105,128,10,65,239,238,239,243,240,225,227,101,128,255,85,110,2,195,90,195,145,228,229,242,243,227,239,242,101,132,0,95,195,109,195,115,195,127,195,138,228,226,108,128,32,23,237,239,238,239,243,240,225,227,101,128,255,63,246,229,242,244,233,227,225,108,128,254,51,247,225,246,121,128,254,79,105,2,195,151,195,156,239,110,128,34,42,246,229,242,243,225,108,128,34,0,239,231,239,238,229,107,128,1,115,112,5,195,186,195,193,195,201,195,216,196,11,225,242,229,110,128,36,176,226,236,239,227,107,128,37,128,240,229,242,228,239,244,232,229,226,242,229,119,128,5,196,243,233,236,239,110,131,3,197,195,230,195,251,196,3,228,233,229,242,229,243,233,115,129,3,203,195,243,244,239,238,239,115,128,3,176,236,225,244,233,110,128,2,138,244,239,238,239,115,128,3,205,244,225,227,107,2,196,20,196,31,226,229,236,239,247,227,237,98,128,3,29,237,239,100,128,2,212,114,2,196,43,196,55,225,231,245,242,237,245,235,232,105,128,10,115,233,238,103,128,1,111,115,3,196,69,196,84,196,129,232,239,242,244,227,249,242,233,236,236,233,99,128,4,94,237,225,236,108,2,196,93,196,104,232,233,242,225,231,225,238,97,128,48,69,235,225,244,225,235,225,238,97,129,48,165,196,117,232,225,236,230,247,233,228,244,104,128,255,105,244,242,225,233,231,232,116,2,196,141,196,152,227,249,242,233,236,236,233,99,128,4,175,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,177,244,233,236,228,101,130,1,105,196,181,196,189,225,227,245,244,101,128,30,121,226,229,236,239,119,128,30,117,117,5,196,209,196,219,196,226,196,251,197,11,226,229,238,231,225,236,105,128,9,138,228,229,246,97,128,9,10,231,117,2,196,233,196,242,234,225,242,225,244,105,128,10,138,242,237,245,235,232,105,128,10,10,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,66,246,239,247,229,236,243,233,231,110,3,197,27,197,37,197,44,226,229,238,231,225,236,105,128,9,194,228,229,246,97,128,9,66,231,245,234,225,242,225,244,105,128,10,194,246,239,247,229,236,243,233,231,110,3,197,71,197,81,197,88,226,229,238,231,225,236,105,128,9,193,228,229,246,97,128,9,65,231,245,234,225,242,225,244,105,128,10,193,118,139,0,118,197,125,198,17,198,26,198,37,198,222,198,229,199,71,199,83,199,183,199,191,199,212,97,4,197,135,197,142,197,167,197,178,228,229,246,97,128,9,53,231,117,2,197,149,197,158,234,225,242,225,244,105,128,10,181,242,237,245,235,232,105,128,10,53,235,225,244,225,235,225,238,97,128,48,247,118,132,5,213,197,190,197,217,197,249,198,5,228,225,231,229,243,104,130,251,53,197,203,197,208,182,53,128,251,53,232,229,226,242,229,119,128,251,53,104,2,197,223,197,231,229,226,242,229,119,128,5,213,239,236,225,109,129,251,75,197,240,232,229,226,242,229,119,128,251,75,246,225,246,232,229,226,242,229,119,128,5,240,249,239,228,232,229,226,242,229,119,128,5,241,227,233,242,227,236,101,128,36,229,228,239,244,226,229,236,239,119,128,30,127,101,6,198,51,198,62,198,126,198,137,198,143,198,210,227,249,242,233,236,236,233,99,128,4,50,104,4,198,72,198,81,198,95,198,111,225,242,225,226,233,99,128,6,164,230,233,238,225,236,225,242,225,226,233,99,128,251,107,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,108,237,229,228,233,225,236,225,242,225,226,233,99,128,251,109,235,225,244,225,235,225,238,97,128,48,249,238,245,115,128,38,64,242,244,233,227,225,108,2,198,154,198,160,226,225,114,128,0,124,236,233,238,101,4,198,173,198,184,198,195,198,204,225,226,239,246,229,227,237,98,128,3,13,226,229,236,239,247,227,237,98,128,3,41,236,239,247,237,239,100,128,2,204,237,239,100,128,2,200,247,225,242,237,229,238,233,225,110,128,5,126,232,239,239,107,128,2,139,105,3,198,237,198,248,199,31,235,225,244,225,235,225,238,97,128,48,248,242,225,237,97,3,199,3,199,13,199,20,226,229,238,231,225,236,105,128,9,205,228,229,246,97,128,9,77,231,245,234,225,242,225,244,105,128,10,205,243,225,242,231,97,3,199,43,199,53,199,60,226,229,238,231,225,236,105,128,9,131,228,229,246,97,128,9,3,231,245,234,225,242,225,244,105,128,10,131,237,239,238,239,243,240,225,227,101,128,255,86,111,3,199,91,199,102,199,172,225,242,237,229,238,233,225,110,128,5,120,233,227,229,100,2,199,111,199,147,233,244,229,242,225,244,233,239,110,2,199,125,199,136,232,233,242,225,231,225,238,97,128,48,158,235,225,244,225,235,225,238,97,128,48,254,237,225,242,235,235,225,238,97,129,48,155,199,160,232,225,236,230,247,233,228,244,104,128,255,158,235,225,244,225,235,225,238,97,128,48,250,240,225,242,229,110,128,36,177,116,2,199,197,199,204,233,236,228,101,128,30,125,245,242,238,229,100,128,2,140,117,2,199,218,199,229,232,233,242,225,231,225,238,97,128,48,148,235,225,244,225,235,225,238,97,128,48,244,119,143,0,119,200,18,200,251,201,5,201,28,201,68,201,135,201,143,203,114,203,155,203,167,203,242,203,250,204,1,204,12,204,21,97,8,200,36,200,43,200,53,200,64,200,102,200,134,200,146,200,182,227,245,244,101,128,30,131,229,235,239,242,229,225,110,128,49,89,232,233,242,225,231,225,238,97,128,48,143,107,2,200,70,200,94,225,244,225,235,225,238,97,129,48,239,200,82,232,225,236,230,247,233,228,244,104,128,255,156,239,242,229,225,110,128,49,88,243,237,225,236,108,2,200,112,200,123,232,233,242,225,231,225,238,97,128,48,142,235,225,244,225,235,225,238,97,128,48,238,244,244,239,243,241,245,225,242,101,128,51,87,118,2,200,152,200,160,229,228,225,243,104,128,48,28,249,245,238,228,229,242,243,227,239,242,229,246,229,242,244,233,227,225,108,128,254,52,119,3,200,190,200,199,200,213,225,242,225,226,233,99,128,6,72,230,233,238,225,236,225,242,225,226,233,99,128,254,238,232,225,237,250,225,225,226,239,246,101,2,200,228,200,237,225,242,225,226,233,99,128,6,36,230,233,238,225,236,225,242,225,226,233,99,128,254,134,226,243,241,245,225,242,101,128,51,221,227,233,242,99,2,201,14,201,19,236,101,128,36,230,245,237,230,236,229,120,128,1,117,100,2,201,34,201,44,233,229,242,229,243,233,115,128,30,133,239,116,2,201,51,201,60,225,227,227,229,238,116,128,30,135,226,229,236,239,119,128,30,137,101,4,201,78,201,89,201,101,201,125,232,233,242,225,231,225,238,97,128,48,145,233,229,242,243,244,242,225,243,115,128,33,24,107,2,201,107,201,117,225,244,225,235,225,238,97,128,48,241,239,242,229,225,110,128,49,94,239,235,239,242,229,225,110,128,49,93,231,242,225,246,101,128,30,129,232,233,244,101,8,201,164,201,173,202,1,202,91,202,175,202,220,203,16,203,72,226,245,236,236,229,116,128,37,230,99,2,201,179,201,199,233,242,227,236,101,129,37,203,201,189,233,238,246,229,242,243,101,128,37,217,239,242,238,229,242,226,242,225,227,235,229,116,2,201,216,201,236,236,229,230,116,129,48,14,201,225,246,229,242,244,233,227,225,108,128,254,67,242,233,231,232,116,129,48,15,201,246,246,229,242,244,233,227,225,108,128,254,68,100,2,202,7,202,48,233,225,237,239,238,100,129,37,199,202,18,227,239,238,244,225,233,238,233,238,231,226,236,225,227,235,243,237,225,236,236,228,233,225,237,239,238,100,128,37,200,239,247,238,240,239,233,238,244,233,238,103,2,202,64,202,80,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,191,244,242,233,225,238,231,236,101,128,37,189,236,101,2,202,98,202,140,230,244,240,239,233,238,244,233,238,103,2,202,113,202,129,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,195,244,242,233,225,238,231,236,101,128,37,193,238,244,233,227,245,236,225,242,226,242,225,227,235,229,116,2,202,160,202,167,236,229,230,116,128,48,22,242,233,231,232,116,128,48,23,242,233,231,232,244,240,239,233,238,244,233,238,103,2,202,193,202,209,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,185,244,242,233,225,238,231,236,101,128,37,183,115,3,202,228,203,2,203,10,109,2,202,234,202,246,225,236,236,243,241,245,225,242,101,128,37,171,233,236,233,238,231,230,225,227,101,128,38,58,241,245,225,242,101,128,37,161,244,225,114,128,38,6,116,2,203,22,203,33,229,236,229,240,232,239,238,101,128,38,15,239,242,244,239,233,243,229,243,232,229,236,236,226,242,225,227,235,229,116,2,203,57,203,64,236,229,230,116,128,48,24,242,233,231,232,116,128,48,25,245,240,240,239,233,238,244,233,238,103,2,203,87,203,103,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,181,244,242,233,225,238,231,236,101,128,37,179,105,2,203,120,203,131,232,233,242,225,231,225,238,97,128,48,144,107,2,203,137,203,147,225,244,225,235,225,238,97,128,48,240,239,242,229,225,110,128,49,95,237,239,238,239,243,240,225,227,101,128,255,87,111,4,203,177,203,188,203,213,203,231,232,233,242,225,231,225,238,97,128,48,146,235,225,244,225,235,225,238,97,129,48,242,203,201,232,225,236,230,247,233,228,244,104,128,255,102,110,129,32,169,203,219,237,239,238,239,243,240,225,227,101,128,255,230,247,225,229,238,244,232,225,105,128,14,39,240,225,242,229,110,128,36,178,242,233,238,103,128,30,152,243,245,240,229,242,233,239,114,128,2,183,244,245,242,238,229,100,128,2,141,249,238,110,128,1,191,120,137,0,120,204,49,204,60,204,71,204,80,204,107,204,120,204,124,204,136,204,144,225,226,239,246,229,227,237,98,128,3,61,226,239,240,239,237,239,230,111,128,49,18,227,233,242,227,236,101,128,36,231,100,2,204,86,204,96,233,229,242,229,243,233,115,128,30,141,239,244,225,227,227,229,238,116,128,30,139,229,232,225,242,237,229,238,233,225,110,128,5,109,105,128,3,190,237,239,238,239,243,240,225,227,101,128,255,88,240,225,242,229,110,128,36,179,243,245,240,229,242,233,239,114,128,2,227,121,143,0,121,204,189,205,148,205,171,205,211,207,177,207,185,207,202,208,10,208,22,209,19,209,59,209,71,209,82,209,103,210,76,97,11,204,213,204,225,204,235,204,242,204,249,205,3,205,28,205,39,205,77,205,90,205,136,225,228,239,243,241,245,225,242,101,128,51,78,226,229,238,231,225,236,105,128,9,175,227,245,244,101,128,0,253,228,229,246,97,128,9,47,229,235,239,242,229,225,110,128,49,82,231,117,2,205,10,205,19,234,225,242,225,244,105,128,10,175,242,237,245,235,232,105,128,10,47,232,233,242,225,231,225,238,97,128,48,132,107,2,205,45,205,69,225,244,225,235,225,238,97,129,48,228,205,57,232,225,236,230,247,233,228,244,104,128,255,148,239,242,229,225,110,128,49,81,237,225,235,235,225,238,244,232,225,105,128,14,78,243,237,225,236,108,2,205,100,205,111,232,233,242,225,231,225,238,97,128,48,131,235,225,244,225,235,225,238,97,129,48,227,205,124,232,225,236,230,247,233,228,244,104,128,255,108,244,227,249,242,233,236,236,233,99,128,4,99,227,233,242,99,2,205,157,205,162,236,101,128,36,232,245,237,230,236,229,120,128,1,119,100,2,205,177,205,187,233,229,242,229,243,233,115,128,0,255,239,116,2,205,194,205,203,225,227,227,229,238,116,128,30,143,226,229,236,239,119,128,30,245,101,7,205,227,206,235,206,244,207,6,207,38,207,114,207,165,104,8,205,245,205,254,206,32,206,46,206,119,206,135,206,194,206,212,225,242,225,226,233,99,128,6,74,226,225,242,242,229,101,2,206,9,206,18,225,242,225,226,233,99,128,6,210,230,233,238,225,236,225,242,225,226,233,99,128,251,175,230,233,238,225,236,225,242,225,226,233,99,128,254,242,232,225,237,250,225,225,226,239,246,101,4,206,65,206,74,206,88,206,104,225,242,225,226,233,99,128,6,38,230,233,238,225,236,225,242,225,226,233,99,128,254,138,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,139,237,229,228,233,225,236,225,242,225,226,233,99,128,254,140,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,243,237,101,2,206,142,206,155,228,233,225,236,225,242,225,226,233,99,128,254,244,229,237,105,2,206,163,206,178,238,233,244,233,225,236,225,242,225,226,233,99,128,252,221,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,88,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,148,244,232,242,229,229,228,239,244,243,226,229,236,239,247,225,242,225,226,233,99,128,6,209,235,239,242,229,225,110,128,49,86,110,129,0,165,206,250,237,239,238,239,243,240,225,227,101,128,255,229,111,2,207,12,207,21,235,239,242,229,225,110,128,49,85,242,233,238,232,233,229,245,232,235,239,242,229,225,110,128,49,134,114,3,207,46,207,82,207,94,225,232,226,229,238,249,239,237,111,2,207,60,207,69,232,229,226,242,229,119,128,5,170,236,229,230,244,232,229,226,242,229,119,128,5,170,233,227,249,242,233,236,236,233,99,128,4,75,245,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,249,243,233,229,245,238,103,3,207,127,207,136,207,152,235,239,242,229,225,110,128,49,129,240,225,238,243,233,239,243,235,239,242,229,225,110,128,49,131,243,233,239,243,235,239,242,229,225,110,128,49,130,244,233,246,232,229,226,242,229,119,128,5,154,231,242,225,246,101,128,30,243,232,239,239,107,129,1,180,207,194,225,226,239,246,101,128,30,247,105,5,207,214,207,225,207,236,207,245,207,253,225,242,237,229,238,233,225,110,128,5,117,227,249,242,233,236,236,233,99,128,4,87,235,239,242,229,225,110,128,49,98,238,249,225,238,103,128,38,47,247,238,225,242,237,229,238,233,225,110,128,5,130,237,239,238,239,243,240,225,227,101,128,255,89,111,7,208,38,208,108,208,119,208,129,208,167,208,213,208,222,100,131,5,217,208,48,208,68,208,77,228,225,231,229,243,104,129,251,57,208,59,232,229,226,242,229,119,128,251,57,232,229,226,242,229,119,128,5,217,249,239,100,2,208,85,208,94,232,229,226,242,229,119,128,5,242,240,225,244,225,232,232,229,226,242,229,119,128,251,31,232,233,242,225,231,225,238,97,128,48,136,233,235,239,242,229,225,110,128,49,137,107,2,208,135,208,159,225,244,225,235,225,238,97,129,48,232,208,147,232,225,236,230,247,233,228,244,104,128,255,150,239,242,229,225,110,128,49,91,243,237,225,236,108,2,208,177,208,188,232,233,242,225,231,225,238,97,128,48,135,235,225,244,225,235,225,238,97,129,48,231,208,201,232,225,236,230,247,233,228,244,104,128,255,110,244,231,242,229,229,107,128,3,243,121,2,208,228,209,9,97,2,208,234,208,244,229,235,239,242,229,225,110,128,49,136,107,2,208,250,209,2,239,242,229,225,110,128,49,135,244,232,225,105,128,14,34,233,238,231,244,232,225,105,128,14,13,112,2,209,25,209,32,225,242,229,110,128,36,180,239,231,229,231,242,225,237,237,229,238,105,129,3,122,209,48,231,242,229,229,235,227,237,98,128,3,69,114,129,1,166,209,65,233,238,103,128,30,153,243,245,240,229,242,233,239,114,128,2,184,116,2,209,88,209,95,233,236,228,101,128,30,249,245,242,238,229,100,128,2,142,117,5,209,115,209,126,209,136,209,174,210,50,232,233,242,225,231,225,238,97,128,48,134,233,235,239,242,229,225,110,128,49,140,107,2,209,142,209,166,225,244,225,235,225,238,97,129,48,230,209,154,232,225,236,230,247,233,228,244,104,128,255,149,239,242,229,225,110,128,49,96,115,3,209,182,209,220,210,5,226,233,103,2,209,190,209,201,227,249,242,233,236,236,233,99,128,4,107,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,109,236,233,244,244,236,101,2,209,231,209,242,227,249,242,233,236,236,233,99,128,4,103,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,105,237,225,236,108,2,210,14,210,25,232,233,242,225,231,225,238,97,128,48,133,235,225,244,225,235,225,238,97,129,48,229,210,38,232,225,236,230,247,233,228,244,104,128,255,109,249,101,2,210,57,210,66,235,239,242,229,225,110,128,49,139,239,235,239,242,229,225,110,128,49,138,249,97,2,210,83,210,93,226,229,238,231,225,236,105,128,9,223,228,229,246,97,128,9,95,122,142,0,122,210,132,211,140,211,151,211,194,211,221,213,0,213,108,213,150,213,162,213,174,213,202,213,210,213,226,213,235,97,10,210,154,210,165,210,172,210,179,210,190,211,12,211,42,211,53,211,89,211,101,225,242,237,229,238,233,225,110,128,5,102,227,245,244,101,128,1,122,228,229,246,97,128,9,91,231,245,242,237,245,235,232,105,128,10,91,104,4,210,200,210,209,210,223,210,253,225,242,225,226,233,99,128,6,56,230,233,238,225,236,225,242,225,226,233,99,128,254,198,105,2,210,229,210,244,238,233,244,233,225,236,225,242,225,226,233,99,128,254,199,242,225,231,225,238,97,128,48,86,237,229,228,233,225,236,225,242,225,226,233,99,128,254,200,233,110,2,211,19,211,28,225,242,225,226,233,99,128,6,50,230,233,238,225,236,225,242,225,226,233,99,128,254,176,235,225,244,225,235,225,238,97,128,48,182,241,229,102,2,211,61,211,75,231,225,228,239,236,232,229,226,242,229,119,128,5,149,241,225,244,225,238,232,229,226,242,229,119,128,5,148,242,241,225,232,229,226,242,229,119,128,5,152,249,233,110,130,5,214,211,111,211,131,228,225,231,229,243,104,129,251,54,211,122,232,229,226,242,229,119,128,251,54,232,229,226,242,229,119,128,5,214,226,239,240,239,237,239,230,111,128,49,23,99,3,211,159,211,166,211,188,225,242,239,110,128,1,126,233,242,99,2,211,174,211,179,236,101,128,36,233,245,237,230,236,229,120,128,30,145,245,242,108,128,2,145,228,239,116,130,1,124,211,204,211,213,225,227,227,229,238,116,128,1,124,226,229,236,239,119,128,30,147,101,6,211,235,211,246,212,33,212,44,212,55,212,251,227,249,242,233,236,236,233,99,128,4,55,100,2,211,252,212,15,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,153,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,223,232,233,242,225,231,225,238,97,128,48,92,235,225,244,225,235,225,238,97,128,48,188,242,111,140,0,48,212,84,212,93,212,103,212,110,212,135,212,148,212,159,212,171,212,182,212,192,212,203,212,210,225,242,225,226,233,99,128,6,96,226,229,238,231,225,236,105,128,9,230,228,229,246,97,128,9,102,231,117,2,212,117,212,126,234,225,242,225,244,105,128,10,230,242,237,245,235,232,105,128,10,102,232,225,227,235,225,242,225,226,233,99,128,6,96,233,238,230,229,242,233,239,114,128,32,128,237,239,238,239,243,240,225,227,101,128,255,16,239,236,228,243,244,249,236,101,128,247,48,240,229,242,243,233,225,110,128,6,240,243,245,240,229,242,233,239,114,128,32,112,244,232,225,105,128,14,80,247,233,228,244,104,3,212,222,212,231,212,243,234,239,233,238,229,114,128,254,255,238,239,238,234,239,233,238,229,114,128,32,12,243,240,225,227,101,128,32,11,244,97,128,3,182,104,2,213,6,213,17,226,239,240,239,237,239,230,111,128,49,19,101,4,213,27,213,38,213,54,213,65,225,242,237,229,238,233,225,110,128,5,106,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,194,227,249,242,233,236,236,233,99,128,4,54,100,2,213,71,213,90,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,151,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,221,105,3,213,116,213,127,213,138,232,233,242,225,231,225,238,97,128,48,88,235,225,244,225,235,225,238,97,128,48,184,238,239,242,232,229,226,242,229,119,128,5,174,236,233,238,229,226,229,236,239,119,128,30,149,237,239,238,239,243,240,225,227,101,128,255,90,111,2,213,180,213,191,232,233,242,225,231,225,238,97,128,48,94,235,225,244,225,235,225,238,97,128,48,190,240,225,242,229,110,128,36,181,242,229,244,242,239,230,236,229,248,232,239,239,107,128,2,144,243,244,242,239,235,101,128,1,182,117,2,213,241,213,252,232,233,242,225,231,225,238,97,128,48,90,235,225,244,225,235,225,238,97,128,48,186,68,101,108,116,97,0,79,109,101,103,97,0,102,114,97,99,116,105,111,110,0,104,121,112,104,101,110,0,109,97,99,114,111,110,0,109,117,0,112,101,114,105,111,100,99,101,110,116,101,114,101,100,0,115,112,97,99,101,0,84,99,111,109,109,97,97,99,99,101,110,116,0,116,99,111,109,109,97,97,99,99,101,110,116,0,46,110,117,108,108,0,110,111,110,109,97,114,107,105,110,103,114,101,116,117,114,110,0,110,111,116,101,113,117,97,108,0,105,110,102,105,110,105,116,121,0,108,101,115,115,101,113,117,97,108,0,103,114,101,97,116,101,114,101,113,117,97,108,0,112,97,114,116,105,97,108,100,105,102,102,0,115,117,109,109,97,116,105,111,110,0,112,114,111,100,117,99,116,0,112,105,0,105,110,116,101,103,114,97,108,0,79,109,101,103,97,0,114,97,100,105,99,97,108,0,97,112,112,114,111,120,101,113,117,97,108,0,68,101,108,116,97,0,110,111,110,98,114,101,97,107,105,110,103,115,112,97,99,101,0,108,111,122,101,110,103,101,0,97,112,112,108,101,0,102,114,97,110,99,0,71,98,114,101,118,101,0,103,98,114,101,118,101,0,73,100,111,116,97,99,99,101,110,116,0,83,99,101,100,105,108,108,97,0,115,99,101,100,105,108,108,97,0,67,97,99,117,116,101,0,99,97,99,117,116,101,0,67,99,97,114,111,110,0,99,99,97,114,111,110,0,100,99,114,111,97,116,0,46,110,111,116,100,101,102,0,115,112,97,99,101,0,101,120,99,108,97,109,0,113,117,111,116,101,100,98,108,0,110,117,109,98,101,114,115,105,103,110,0,100,111,108,108,97,114,0,112,101,114,99,101,110,116,0,97,109,112,101,114,115,97,110,100,0,113,117,111,116,101,114,105,103,104,116,0,112,97,114,101,110,108,101,102,116,0,112,97,114,101,110,114,105,103,104,116,0,97,115,116,101,114,105,115,107,0,112,108,117,115,0,99,111,109,109,97,0,104,121,112,104,101,110,0,112,101,114,105,111,100,0,115,108,97,115,104,0,122,101,114,111,0,111,110,101,0,116,119,111,0,116,104,114,101,101,0,102,111,117,114,0,102,105,118,101,0,115,105,120,0,115,101,118,101,110,0,101,105,103,104,116,0,110,105,110,101,0,99,111,108,111,110,0,115,101,109,105,99,111,108,111,110,0,108,101,115,115,0,101,113,117,97,108,0,103,114,101,97,116,101,114,0,113,117,101,115,116,105,111,110,0,97,116,0,65,0,66,0,67,0,68,0,69,0,70,0,71,0,72,0,73,0,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,98,114,97,99,107,101,116,108,101,102,116,0,98,97,99,107,115,108,97,115,104,0,98,114,97,99,107,101,116,114,105,103,104,116,0,97,115,99,105,105,99,105,114,99,117,109,0,117,110,100,101,114,115,99,111,114,101,0,113,117,111,116,101,108,101,102,116,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,111,0,112,0,113,0,114,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,98,114,97,99,101,108,101,102,116,0,98,97,114,0,98,114,97,99,101,114,105,103,104,116,0,97,115,99,105,105,116,105,108,100,101,0,101,120,99,108,97,109,100,111,119,110,0,99,101,110,116,0,115,116,101,114,108,105,110,103,0,102,114,97,99,116,105,111,110,0,121,101,110,0,102,108,111,114,105,110,0,115,101,99,116,105,111,110,0,99,117,114,114,101,110,99,121,0,113,117,111,116,101,115,105,110,103,108,101,0,113,117,111,116,101,100,98,108,108,101,102,116,0,103,117,105,108,108,101,109,111,116,108,101,102,116,0,103,117,105,108,115,105,110,103,108,108,101,102,116,0,103,117,105,108,115,105,110,103,108,114,105,103,104,116,0,102,105,0,102,108,0,101,110,100,97,115,104,0,100,97,103,103,101,114,0,100,97,103,103,101,114,100,98,108,0,112,101,114,105,111,100,99,101,110,116,101,114,101,100,0,112,97,114,97,103,114,97,112,104,0,98,117,108,108,101,116,0,113,117,111,116,101,115,105,110,103,108,98,97,115,101,0,113,117,111,116,101,100,98,108,98,97,115,101,0,113,117,111,116,101,100,98,108,114,105,103,104,116,0,103,117,105,108,108,101,109,111,116,114,105,103,104,116,0,101,108,108,105,112,115,105,115,0,112,101,114,116,104,111,117,115,97,110,100,0,113,117,101,115,116,105,111,110,100,111,119,110,0,103,114,97,118,101,0,97,99,117,116,101,0,99,105,114,99,117,109,102,108,101,120,0,116,105,108,100,101,0,109,97,99,114,111,110,0,98,114,101,118,101,0,100,111,116,97,99,99,101,110,116,0,100,105,101,114,101,115,105,115,0,114,105,110,103,0,99,101,100,105,108,108,97,0,104,117,110,103,97,114,117,109,108,97,117,116,0,111,103,111,110,101,107,0,99,97,114,111,110,0,101,109,100,97,115,104,0,65,69,0,111,114,100,102,101,109,105,110,105,110,101,0,76,115,108,97,115,104,0,79,115,108,97,115,104,0,79,69,0,111,114,100,109,97,115,99,117,108,105,110,101,0,97,101,0,100,111,116,108,101,115,115,105,0,108,115,108,97,115,104,0,111,115,108,97,115,104,0,111,101,0,103,101,114,109,97,110,100,98,108,115,0,111,110,101,115,117,112,101,114,105,111,114,0,108,111,103,105,99,97,108,110,111,116,0,109,117,0,116,114,97,100,101,109,97,114,107,0,69,116,104,0,111,110,101,104,97,108,102,0,112,108,117,115,109,105,110,117,115,0,84,104,111,114,110,0,111,110,101,113,117,97,114,116,101,114,0,100,105,118,105,100,101,0,98,114,111,107,101,110,98,97,114,0,100,101,103,114,101,101,0,116,104,111,114,110,0,116,104,114,101,101,113,117,97,114,116,101,114,115,0,116,119,111,115,117,112,101,114,105,111,114,0,114,101,103,105,115,116,101,114,101,100,0,109,105,110,117,115,0,101,116,104,0,109,117,108,116,105,112,108,121,0,116,104,114,101,101,115,117,112,101,114,105,111,114,0,99,111,112,121,114,105,103,104,116,0,65,97,99,117,116,101,0,65,99,105,114,99,117,109,102,108,101,120,0,65,100,105,101,114,101,115,105,115,0,65,103,114,97,118,101,0,65,114,105,110,103,0,65,116,105,108,100,101,0,67,99,101,100,105,108,108,97,0,69,97,99,117,116,101,0,69,99,105,114,99,117,109,102,108,101,120,0,69,100,105,101,114,101,115,105,115,0,69,103,114,97,118,101,0,73,97,99,117,116,101,0,73,99,105,114,99,117,109,102,108,101,120,0,73,100,105,101,114,101,115,105,115,0,73,103,114,97,118,101,0,78,116,105,108,100,101,0,79,97,99,117,116,101,0,79,99,105,114,99,117,109,102,108,101,120,0,79,100,105,101,114,101,115,105,115,0,79,103,114,97,118,101,0,79,116,105,108,100,101,0,83,99,97,114,111,110,0,85,97,99,117,116,101,0,85,99,105,114,99,117,109,102,108,101,120,0,85,100,105,101,114,101,115,105,115,0,85,103,114,97,118,101,0,89,97,99,117,116,101,0,89,100,105,101,114,101,115,105,115,0,90,99,97,114,111,110,0,97,97,99,117,116,101,0,97,99,105,114,99,117,109,102,108,101,120,0,97,100,105,101,114,101,115,105,115,0,97,103,114,97,118,101,0,97,114,105,110,103,0,97,116,105,108,100,101,0,99,99,101,100,105,108,108,97,0,101,97,99,117,116,101,0,101,99,105,114,99,117,109,102,108,101,120,0,101,100,105,101,114,101,115,105,115,0,101,103,114,97,118,101,0,105,97,99,117,116,101,0,105,99,105,114,99,117,109,102,108,101,120,0,105,100,105,101,114,101,115,105,115,0,105,103,114,97,118,101,0,110,116,105,108,100,101,0,111,97,99,117,116,101,0,111,99,105,114,99,117,109,102,108,101,120,0,111,100,105,101,114,101,115,105,115,0,111,103,114,97,118,101,0,111,116,105,108,100,101,0,115,99,97,114,111,110,0,117,97,99,117,116,101,0,117,99,105,114,99,117,109,102,108,101,120,0,117,100,105,101,114,101,115,105,115,0,117,103,114,97,118,101,0,121,97,99,117,116,101,0,121,100,105,101,114,101,115,105,115,0,122,99,97,114,111,110,0,101,120,99,108,97,109,115,109,97,108,108,0,72,117,110,103,97,114,117,109,108,97,117,116,115,109,97,108,108,0,100,111,108,108,97,114,111,108,100,115,116,121,108,101,0,100,111,108,108,97,114,115,117,112,101,114,105,111,114,0,97,109,112,101,114,115,97,110,100,115,109,97,108,108,0,65,99,117,116,101,115,109,97,108,108,0,112,97,114,101,110,108,101,102,116,115,117,112,101,114,105,111,114,0,112,97,114,101,110,114,105,103,104,116,115,117,112,101,114,105,111,114,0,116,119,111,100,111,116,101,110,108,101,97,100,101,114,0,111,110,101,100,111,116,101,110,108,101,97,100,101,114,0,122,101,114,111,111,108,100,115,116,121,108,101,0,111,110,101,111,108,100,115,116,121,108,101,0,116,119,111,111,108,100,115,116,121,108,101,0,116,104,114,101,101,111,108,100,115,116,121,108,101,0,102,111,117,114,111,108,100,115,116,121,108,101,0,102,105,118,101,111,108,100,115,116,121,108,101,0,115,105,120,111,108,100,115,116,121,108,101,0,115,101,118,101,110,111,108,100,115,116,121,108,101,0,101,105,103,104,116,111,108,100,115,116,121,108,101,0,110,105,110,101,111,108,100,115,116,121,108,101,0,99,111,109,109,97,115,117,112,101,114,105,111,114,0,116,104,114,101,101,113,117,97,114,116,101,114,115,101,109,100,97,115,104,0,112,101,114,105,111,100,115,117,112,101,114,105,111,114,0,113,117,101,115,116,105,111,110,115,109,97,108,108,0,97,115,117,112,101,114,105,111,114,0,98,115,117,112,101,114,105,111,114,0,99,101,110,116,115,117,112,101,114,105,111,114,0,100,115,117,112,101,114,105,111,114,0,101,115,117,112,101,114,105,111,114,0,105,115,117,112,101,114,105,111,114,0,108,115,117,112,101,114,105,111,114,0,109,115,117,112,101,114,105,111,114,0,110,115,117,112,101,114,105,111,114,0,111,115,117,112,101,114,105,111,114,0,114,115,117,112,101,114,105,111,114,0,115,115,117,112,101,114,105,111,114,0,116,115,117,112,101,114,105,111,114,0,102,102,0,102,102,105,0,102,102,108,0,112,97,114,101,110,108,101,102,116,105,110,102,101,114,105,111,114,0,112,97,114,101,110,114,105,103,104,116,105,110,102,101,114,105,111,114,0,67,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,104,121,112,104,101,110,115,117,112,101,114,105,111,114,0,71,114,97,118,101,115,109,97,108,108,0,65,115,109,97,108,108,0,66,115,109,97,108,108,0,67,115,109,97,108,108,0,68,115,109,97,108,108,0,69,115,109,97,108,108,0,70,115,109,97,108,108,0,71,115,109,97,108,108,0,72,115,109,97,108,108,0,73,115,109,97,108,108,0,74,115,109,97,108,108,0,75,115,109,97,108,108,0,76,115,109,97,108,108,0,77,115,109,97,108,108,0,78,115,109,97,108,108,0,79,115,109,97,108,108,0,80,115,109,97,108,108,0,81,115,109,97,108,108,0,82,115,109,97,108,108,0,83,115,109,97,108,108,0,84,115,109,97,108,108,0,85,115,109,97,108,108,0,86,115,109,97,108,108,0,87,115,109,97,108,108,0,88,115,109,97,108,108,0,89,115,109,97,108,108,0,90,115,109,97,108,108,0,99,111,108,111,110,109,111,110,101,116,97,114,121,0,111,110,101,102,105,116,116,101,100,0,114,117,112,105,97,104,0,84,105,108,100,101,115,109,97,108,108,0,101,120,99,108,97,109,100,111,119,110,115,109,97,108,108,0,99,101,110,116,111,108,100,115,116,121,108,101,0,76,115,108,97,115,104,115,109,97,108,108,0,83,99,97,114,111,110,115,109,97,108,108,0,90,99,97,114,111,110,115,109,97,108,108,0,68,105,101,114,101,115,105,115,115,109,97,108,108,0,66,114,101,118,101,115,109,97,108,108,0,67,97,114,111,110,115,109,97,108,108,0,68,111,116,97,99,99,101,110,116,115,109,97,108,108,0,77,97,99,114,111,110,115,109,97,108,108,0,102,105,103,117,114,101,100,97,115,104,0,104,121,112,104,101,110,105,110,102,101,114,105,111,114,0,79,103,111,110,101,107,115,109,97,108,108,0,82,105,110,103,115,109,97,108,108,0,67,101,100,105,108,108,97,115,109,97,108,108,0,113,117,101,115,116,105,111,110,100,111,119,110,115,109,97,108,108,0,111,110,101,101,105,103,104,116,104,0,116,104,114,101,101,101,105,103,104,116,104,115,0,102,105,118,101,101,105,103,104,116,104,115,0,115,101,118,101,110,101,105,103,104,116,104,115,0,111,110,101,116,104,105,114,100,0,116,119,111,116,104,105,114,100,115,0,122,101,114,111,115,117,112,101,114,105,111,114,0,102,111,117,114,115,117,112,101,114,105,111,114,0,102,105,118,101,115,117,112,101,114,105,111,114,0,115,105,120,115,117,112,101,114,105,111,114,0,115,101,118,101,110,115,117,112,101,114,105,111,114,0,101,105,103,104,116,115,117,112,101,114,105,111,114,0,110,105,110,101,115,117,112,101,114,105,111,114,0,122,101,114,111,105,110,102,101,114,105,111,114,0,111,110,101,105,110,102,101,114,105,111,114,0,116,119,111,105,110,102,101,114,105,111,114,0,116,104,114,101,101,105,110,102,101,114,105,111,114,0,102,111,117,114,105,110,102,101,114,105,111,114,0,102,105,118,101,105,110,102,101,114,105,111,114,0,115,105,120,105,110,102,101,114,105,111,114,0,115,101,118,101,110,105,110,102,101,114,105,111,114,0,101,105,103,104,116,105,110,102,101,114,105,111,114,0,110,105,110,101,105,110,102,101,114,105,111,114,0,99,101,110,116,105,110,102,101,114,105,111,114,0,100,111,108,108,97,114,105,110,102,101,114,105,111,114,0,112,101,114,105,111,100,105,110,102,101,114,105,111,114,0,99,111,109,109,97,105,110,102,101,114,105,111,114,0,65,103,114,97,118,101,115,109,97,108,108,0,65,97,99,117,116,101,115,109,97,108,108,0,65,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,65,116,105,108,100,101,115,109,97,108,108,0,65,100,105,101,114,101,115,105,115,115,109,97,108,108,0,65,114,105,110,103,115,109,97,108,108,0,65,69,115,109,97,108,108,0,67,99,101,100,105,108,108,97,115,109,97,108,108,0,69,103,114,97,118,101,115,109,97,108,108,0,69,97,99,117,116,101,115,109,97,108,108,0,69,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,69,100,105,101,114,101,115,105,115,115,109,97,108,108,0,73,103,114,97,118,101,115,109,97,108,108,0,73,97,99,117,116,101,115,109,97,108,108,0,73,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,73,100,105,101,114,101,115,105,115,115,109,97,108,108,0,69,116,104,115,109,97,108,108,0,78,116,105,108,100,101,115,109,97,108,108,0,79,103,114,97,118,101,115,109,97,108,108,0,79,97,99,117,116,101,115,109,97,108,108,0,79,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,79,116,105,108,100,101,115,109,97,108,108,0,79,100,105,101,114,101,115,105,115,115,109,97,108,108,0,79,69,115,109,97,108,108,0,79,115,108,97,115,104,115,109,97,108,108,0,85,103,114,97,118,101,115,109,97,108,108,0,85,97,99,117,116,101,115,109,97,108,108,0,85,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,85,100,105,101,114,101,115,105,115,115,109,97,108,108,0,89,97,99,117,116,101,115,109,97,108,108,0,84,104,111,114,110,115,109,97,108,108,0,89,100,105,101,114,101,115,105,115,115,109,97,108,108,0,48,48,49,46,48,48,48,0,48,48,49,46,48,48,49,0,48,48,49,46,48,48,50,0,48,48,49,46,48,48,51,0,66,108,97,99,107,0,66,111,108,100,0,66,111,111,107,0,76,105,103,104,116,0,77,101,100,105,117,109,0,82,101,103,117,108,97,114,0,82,111,109,97,110,0,83,101,109,105,98,111,108,100,0,112,111,115,116,115,99,114,105,112,116,45,99,109,97,112,115,0,114,98,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,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,18,0,0,0,18,18,18,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,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+61440);allocate([0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0,114,119,97,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+71680);var tempDoublePtr=STATICTOP;STATICTOP+=16;Module["_i64Subtract"]=_i64Subtract;Module["_i64Add"]=_i64Add;Module["_memset"]=_memset;function _pthread_cleanup_push(routine,arg){__ATEXIT__.push((function(){Runtime.dynCall("vi",routine,[arg])}));_pthread_cleanup_push.level=__ATEXIT__.length}Module["_bitshift64Lshr"]=_bitshift64Lshr;Module["_bitshift64Shl"]=_bitshift64Shl;function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!");__ATEXIT__.pop();_pthread_cleanup_push.level=__ATEXIT__.length}function _abort(){Module["abort"]()}function _realloc(){throw"bad"}Module["_realloc"]=_realloc;Module["_saveSetjmp"]=_saveSetjmp;Module["_testSetjmp"]=_testSetjmp;function _longjmp(env,value){asm["setThrew"](env,value||1);throw"longjmp"}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"};function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>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){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up--;up){parts.unshift("..")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))}),join2:(function(l,r){return PATH.normalize(l+"/"+r)}),resolve:(function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter((function(p){return!!p})),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start<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(){}),shutdown:(function(){}),register:(function(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)}),stream_ops:{open:(function(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}stream.tty=tty;stream.seekable=false}),close:(function(stream){stream.tty.ops.flush(stream.tty)}),flush:(function(stream){stream.tty.ops.flush(stream.tty)}),read:(function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(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){var BUFSIZE=256;var buf=new Buffer(BUFSIZE);var bytesRead=0;var fd=process.stdin.fd;var usingDevice=false;try{fd=fs.openSync("/dev/stdin","r");usingDevice=true}catch(e){}bytesRead=fs.readSync(fd,buf,0,BUFSIZE,null);if(usingDevice){fs.closeSync(fd)}if(bytesRead>0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;i<node.usedBytes;++i)arr.push(node.contents[i]);return arr}return node.contents}),getFileDataAsTypedArray:(function(node){if(!node.contents)return new Uint8Array;if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)}),expandFileStorage:(function(node,newCapacity){if(node.contents&&node.contents.subarray&&newCapacity>node.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.buffer.byteLength:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity<CAPACITY_DOUBLING_MAX?2:1.125)|0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}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;node.usedBytes=0;return}if(!node.contents||node.contents.subarray){var oldContents=node.contents;node.contents=new Uint8Array(new ArrayBuffer(newSize));if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize;return}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={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}}),lookup:(function(parent,name){throw FS.genericErrors[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(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)}}}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|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){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i<size;i++)buffer[offset+i]=contents[position+i]}return size}),write:(function(stream,buffer,offset,length,position,canOwn){if(!length)return 0;var node=stream.node;node.timestamp=Date.now();if(buffer.subarray&&(!node.contents||node.contents.subarray)){if(canOwn){node.contents=buffer.subarray(offset,offset+length);node.usedBytes=length;return length}else if(node.usedBytes===0&&position===0){node.contents=new Uint8Array(buffer.subarray(offset,offset+length));node.usedBytes=length;return length}else if(position+length<=node.usedBytes){node.contents.set(buffer.subarray(offset,offset+length),position);return length}}MEMFS.expandFileStorage(node,position+length);if(node.contents.subarray&&buffer.subarray)node.contents.set(buffer.subarray(offset,offset+length),position);else{for(var i=0;i<length;i++){node.contents[position+i]=buffer[offset+i]}}node.usedBytes=Math.max(node.usedBytes,position+length);return length}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.usedBytes}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}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;if(!(flags&2)&&(contents.buffer===buffer||contents.buffer===buffer.buffer)){allocated=false;ptr=contents.byteOffset}else{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}}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}if(mmapFlags&2){return 0}var bytesWritten=MEMFS.stream_ops.write(stream,buffer,0,length,offset,false);return 0})}};var IDBFS={dbs:{},indexedDB:(function(){if(typeof indexedDB!=="undefined")return indexedDB;var ret=null;if(typeof window==="object")ret=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;assert(ret,"IDBFS used, but indexedDB not supported");return ret}),DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",mount:(function(mount){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){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)}if(!fileStore.indexNames.contains("timestamp")){fileStore.createIndex("timestamp","timestamp",{unique:false})}});req.onsuccess=(function(){db=req.result;IDBFS.dbs[name]=db;callback(null,db)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),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(e){callback(this.error);e.preventDefault()});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)){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.chmod(path,entry.mode);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(e){callback(this.error);e.preventDefault()})}),storeRemoteEntry:(function(store,path,entry,callback){var req=store.put(entry,path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),removeRemoteEntry:(function(store,path,callback){var req=store.delete(path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),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 completed=0;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err){if(!done.errored){done.errored=true;return callback(err)}return}if(++completed>=total){return callback(null)}}transaction.onerror=(function(e){done(this.error);e.preventDefault()});create.sort().forEach((function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,(function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)}))}else{IDBFS.loadLocalEntry(path,(function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)}))}}));remove.sort().reverse().forEach((function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}}))})};var NODEFS={isWindows:false,staticInit:(function(){NODEFS.isWindows=!!process.platform.match(/^win/)}),mount:(function(mount){assert(ENVIRONMENT_IS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)}),createNode:(function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node}),getMode:(function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&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){flags&=~32768;flags&=~524288;if(flags in NODEFS.flagsToPermissionStringMap){return NODEFS.flagsToPermissionStringMap[flags]}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.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){if(length===0)return 0;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){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){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:(function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i<parts.length-1;i++){var curr=parts.slice(0,i+1).join("/");if(!createdParents[curr]){createdParents[curr]=WORKERFS.createNode(parent,curr,WORKERFS.DIR_MODE,0)}parent=createdParents[curr]}return parent}function base(path){var parts=path.split("/");return parts[parts.length-1]}Array.prototype.forEach.call(mount.opts["files"]||[],(function(file){WORKERFS.createNode(ensureParent(file.name),base(file.name),WORKERFS.FILE_MODE,0,file,file.lastModifiedDate)}));(mount.opts["blobs"]||[]).forEach((function(obj){WORKERFS.createNode(ensureParent(obj["name"]),base(obj["name"]),WORKERFS.FILE_MODE,0,obj["data"])}));(mount.opts["packages"]||[]).forEach((function(pack){pack["metadata"].files.forEach((function(file){var name=file.filename.substr(1);WORKERFS.createNode(ensureParent(name),base(name),WORKERFS.FILE_MODE,0,pack["blob"].slice(file.start,file.end))}))}));return root}),createNode:(function(parent,name,mode,dev,contents,mtime){var node=FS.createNode(parent,name,mode);node.mode=mode;node.node_ops=WORKERFS.node_ops;node.stream_ops=WORKERFS.stream_ops;node.timestamp=(mtime||new Date).getTime();assert(WORKERFS.FILE_MODE!==WORKERFS.DIR_MODE);if(mode===WORKERFS.FILE_MODE){node.size=contents.size;node.contents=contents}else{node.size=4096;node.contents={}}if(parent){parent.contents[name]=node}return node}),node_ops:{getattr:(function(node){return{dev:1,ino:undefined,mode:node.mode,nlink:1,uid:0,gid:0,rdev:undefined,size:node.size,atime:new Date(node.timestamp),mtime:new Date(node.timestamp),ctime:new Date(node.timestamp),blksize:4096,blocks:Math.ceil(node.size/4096)}}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}}),lookup:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}),mknod:(function(parent,name,mode,dev){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rename:(function(oldNode,newDir,newName){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),unlink:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rmdir:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readdir:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),symlink:(function(parent,newName,oldPath){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readlink:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)})},stream_ops:{read:(function(stream,buffer,offset,length,position){if(position>=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size}),write:(function(stream,buffer,offset,length,position){throw new FS.ErrnoError(ERRNO_CODES.EIO)}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};STATICTOP+=16;STATICTOP+=16;STATICTOP+=16;var FS={root:null,mounts:[],devices:[null],streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i<parts.length;i++){var islast=i===parts.length-1;if(islast&&opts.parent){break}current=FS.lookupNode(current,parts[i]);current_path=PATH.join2(current_path,parts[i]);if(FS.isMountpoint(current)){if(!islast||islast&&opts.follow_mount){current=current.mounted.root}}if(!islast||opts.follow){var count=0;while(FS.isLink(current.mode)){var link=FS.readlink(current_path);current_path=PATH.resolve(PATH.dirname(current_path),link);var lookup=FS.lookupPath(current_path,{recurse_count:opts.recurse_count});current=lookup.node;if(count++>40){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,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return ERRNO_CODES.EACCES}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return ERRNO_CODES.EACCES}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return ERRNO_CODES.EACCES}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return ERRNO_CODES.EACCES;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return ERRNO_CODES.EEXIST}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return ERRNO_CODES.ENOTDIR}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return ERRNO_CODES.EBUSY}}else{if(FS.isDir(node.mode)){return ERRNO_CODES.EISDIR}}return 0}),mayOpen:(function(node,flags){if(!node){return ERRNO_CODES.ENOENT}if(FS.isLink(node.mode)){return ERRNO_CODES.ELOOP}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return ERRNO_CODES.EISDIR}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(ERRNO_CODES.EMFILE)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdev:(function(path,mode,dev){if(typeof dev==="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)}),symlink:(function(oldpath,newpath){if(!PATH.resolve(oldpath)){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}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);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)}if(!old_dir||!new_dir)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(ERRNO_CODES.EXDEV)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}relative=PATH.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var err=FS.mayDelete(old_dir,old_name,isdir);if(err){throw new FS.ErrnoError(err)}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(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)}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}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){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){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!link.node_ops.readlink){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return PATH.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))}),stat:(function(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}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()})}),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:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path==="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(ERRNO_CODES.EEXIST)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}if(!created){var err=FS.mayOpen(node,flags);if(err){throw new FS.ErrnoError(err)}}if(flags&512){FS.truncate(node,0)}flags&=~(128|512);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false},fd_start,fd_end);if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1;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){if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}}),llseek:(function(stream,offset,whence){if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position}),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){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){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)}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!stream||!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)}),munmap:(function(stream){return 0}),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=UTF8ArrayToString(buf,0)}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 buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,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");FS.mkdir("/home");FS.mkdir("/home/web_user")}),createDefaultDevices:(function(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:(function(){return 0}),write:(function(stream,buffer,offset,length,pos){return length})});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var random_device;if(typeof crypto!=="undefined"){var randomBuffer=new Uint8Array(1);random_device=(function(){crypto.getRandomValues(randomBuffer);return randomBuffer[0]})}else if(ENVIRONMENT_IS_NODE){random_device=(function(){return require("crypto").randomBytes(1)[0]})}else{random_device=(function(){return Math.random()*256|0})}FS.createDevice("/dev","random",random_device);FS.createDevice("/dev","urandom",random_device);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")}),createSpecialDirectories:(function(){FS.mkdir("/proc");FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:(function(){var node=FS.createNode("/proc/self","fd",16384|511,73);node.node_ops={lookup:(function(parent,name){var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:(function(){return stream.path})}};ret.parent=ret;return ret})};return node})},{},"/proc/self/fd")}),createStandardStreams:(function(){if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin","r");assert(stdin.fd===0,"invalid handle for stdin ("+stdin.fd+")");var stdout=FS.open("/dev/stdout","w");assert(stdout.fd===1,"invalid handle for stdout ("+stdout.fd+")");var stderr=FS.open("/dev/stderr","w");assert(stderr.fd===2,"invalid handle for stderr ("+stderr.fd+")")}),ensureErrnoError:(function(){if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.node=node;this.setErrno=(function(errno){this.errno=errno;for(var key in ERRNO_CODES){if(ERRNO_CODES[key]===errno){this.code=key;break}}});this.setErrno(errno);this.message=ERRNO_MESSAGES[errno]};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[ERRNO_CODES.ENOENT].forEach((function(code){FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack="<generic error, no stack>"}))}),staticInit:(function(){FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS,"IDBFS":IDBFS,"NODEFS":NODEFS,"WORKERFS":WORKERFS}}),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();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()}),quit:(function(){FS.init.initialized=false;var fflush=Module["_fflush"];if(fflush)fflush(0);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){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){}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}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);FS.registerDevice(dev,{open:(function(stream){stream.seekable=false}),close:(function(stream){if(output&&output.buffer&&output.buffer.length){output(10)}}),read:(function(stream,buffer,offset,length,pos){var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=input()}catch(e){throw new FS.ErrnoError(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"]){try{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){function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype.get=function LazyUint8Array_get(idx){if(idx>this.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i<size;i++){buffer[offset+i]=contents[position+i]}}else{for(var i=0;i<size;i++){buffer[offset+i]=contents.get(position+i)}}return size};node.stream_ops=stream_ops;return node}),createPreloadedFile:(function(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish){Browser.init();var fullname=name?PATH.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency("cp "+fullname);function processData(byteArray){function finish(byteArray){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency(dep)}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(dep)}));handled=true}}));if(!handled)finish(byteArray)}addRunDependency(dep);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;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})};var SYSCALLS={DEFAULT_POLLMASK:5,mappings:{},umask:511,calculateAt:(function(dirfd,path){if(path[0]!=="/"){var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=FS.getStream(dirfd);if(!dirstream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);dir=dirstream.path}path=PATH.join2(dir,path)}return path}),doStat:(function(func,path,buf){try{var stat=func(path)}catch(e){if(e&&e.node&&PATH.normalize(path)!==PATH.normalize(FS.getPath(e.node))){return-ERRNO_CODES.ENOTDIR}throw e}HEAP32[buf>>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;HEAP32[buf+36>>2]=stat.size;HEAP32[buf+40>>2]=4096;HEAP32[buf+44>>2]=stat.blocks;HEAP32[buf+48>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+52>>2]=0;HEAP32[buf+56>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ino;return 0}),doMsync:(function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)}),doMkdir:(function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0}),doMknod:(function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-ERRNO_CODES.EINVAL}FS.mknod(path,mode,dev);return 0}),doReadlink:(function(path,buf,bufsize){if(bufsize<=0)return-ERRNO_CODES.EINVAL;var ret=FS.readlink(path);ret=ret.slice(0,Math.max(0,bufsize));writeStringToMemory(ret,buf,true);return ret.length}),doAccess:(function(path,amode){if(amode&~7){return-ERRNO_CODES.EINVAL}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-ERRNO_CODES.EACCES}return 0}),doDup:(function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd}),doReadv:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr<len)break}return ret}),doWritev:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret}),varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),getStreamFromFD:(function(){var stream=FS.getStream(SYSCALLS.get());if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return stream}),getSocketFromFD:(function(){var socket=SOCKFS.getSocket(SYSCALLS.get());if(!socket)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return socket}),getSocketAddress:(function(allowNull){var addrp=SYSCALLS.get(),addrlen=SYSCALLS.get();if(allowNull&&addrp===0)return null;var info=__read_sockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___lock(){}function ___unlock(){}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:return totalMemory/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 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 79:return 0;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:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}function _sbrk(bytes){var self=_sbrk;if(!self.called){DYNAMICTOP=alignMemoryPage(DYNAMICTOP);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){var success=self.alloc(bytes);if(!success)return-1>>>0}return ret}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;Module["_memmove"]=_memmove;function _emscripten_set_main_loop_timing(mode,value){Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){setTimeout(Browser.mainLoop.runner,value)};Browser.mainLoop.method="timeout"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method="rAF"}else if(mode==2){if(!window["setImmediate"]){var setImmediates=[];var emscriptenMainLoopMessageId="__emcc";function Browser_setImmediate_messageHandler(event){if(event.source===window&&event.data===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}}window.addEventListener("message",Browser_setImmediate_messageHandler,true);window["setImmediate"]=function Browser_emulated_setImmediate(func){setImmediates.push(func);window.postMessage(emscriptenMainLoopMessageId,"*")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){window["setImmediate"](Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop,arg,noSetTiming){Module["noExitRuntime"]=true;assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");Browser.mainLoop.func=func;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;Browser.mainLoop.runner=function Browser_mainLoop_runner(){if(ABORT)return;if(Browser.mainLoop.queue.length>0){var start=Date.now();var blocker=Browser.mainLoop.queue.shift();blocker.func(blocker.arg);if(Browser.mainLoop.remainingBlockers){var remaining=Browser.mainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){Browser.mainLoop.remainingBlockers=next}else{next=next+.5;Browser.mainLoop.remainingBlockers=(8*remaining+next)/9}}console.log('main loop blocker "'+blocker.name+'" took '+(Date.now()-start)+" ms");Browser.mainLoop.updateStatus();if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;setTimeout(Browser.mainLoop.runner,0);return}if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0;if(Browser.mainLoop.timingMode==1&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}if(Browser.mainLoop.method==="timeout"&&Module.ctx){Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!");Browser.mainLoop.method=""}Browser.mainLoop.runIter((function(){if(typeof arg!=="undefined"){Runtime.dynCall("vi",func,[arg])}else{Runtime.dynCall("v",func)}}));if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;if(typeof SDL==="object"&&SDL.audio&&SDL.audio.queueNewAudioData)SDL.audio.queueNewAudioData();Browser.mainLoop.scheduler()};if(!noSetTiming){if(fps&&fps>0)_emscripten_set_main_loop_timing(0,1e3/fps);else _emscripten_set_main_loop_timing(1,1);Browser.mainLoop.scheduler()}if(simulateInfiniteLoop){throw"SimulateInfiniteLoop"}}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:(function(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++}),resume:(function(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;_emscripten_set_main_loop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()}),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}}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"]=[];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}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){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);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;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);var audio=new Audio;audio.addEventListener("canplaythrough",(function(){finish(audio)}),false);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&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src="data:audio/x-"+name.substr(-3)+";base64,"+encode64(byteArray);finish(audio)};audio.src=url;Browser.safeSetTimeout((function(){finish(audio)}),1e4)}else{return fail()}};Module["preloadPlugins"].push(audioPlugin);var canvas=Module["canvas"];function pointerLockChange(){Browser.pointerLock=document["pointerLockElement"]===canvas||document["mozPointerLockElement"]===canvas||document["webkitPointerLockElement"]===canvas||document["msPointerLockElement"]===canvas}if(canvas){canvas.requestPointerLock=canvas["requestPointerLock"]||canvas["mozRequestPointerLock"]||canvas["webkitRequestPointerLock"]||canvas["msRequestPointerLock"]||(function(){});canvas.exitPointerLock=document["exitPointerLock"]||document["mozExitPointerLock"]||document["webkitExitPointerLock"]||document["msExitPointerLock"]||(function(){});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&&canvas==Module.canvas)return Module.ctx;var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}canvas.style.backgroundColor="black"}else{ctx=canvas.getContext("2d")}if(!ctx)return null;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)GL.makeContextCurrent(contextHandle);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,vrDevice){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;Browser.vrDevice=vrDevice;if(typeof Browser.lockPointer==="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas==="undefined")Browser.resizeCanvas=false;if(typeof Browser.vrDevice==="undefined")Browser.vrDevice=null;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{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)}var canvasContainer=document.createElement("div");canvas.parentNode.insertBefore(canvasContainer,canvas);canvasContainer.appendChild(canvas);canvasContainer.requestFullScreen=canvasContainer["requestFullScreen"]||canvasContainer["mozRequestFullScreen"]||canvasContainer["msRequestFullscreen"]||(canvasContainer["webkitRequestFullScreen"]?(function(){canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"])}):null);if(vrDevice){canvasContainer.requestFullScreen({vrDisplay:vrDevice})}else{canvasContainer.requestFullScreen()}}),nextRAF:0,fakeRequestAnimationFrame:(function(func){var now=Date.now();if(Browser.nextRAF===0){Browser.nextRAF=now+1e3/60}else{while(now+2>=Browser.nextRAF){Browser.nextRAF+=1e3/60}}var delay=Math.max(Browser.nextRAF-now,0);setTimeout(func,delay)}),requestAnimationFrame:function requestAnimationFrame(func){if(typeof window==="undefined"){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)})}),allowAsyncCallbacks:true,queuedAsyncCallbacks:[],pauseAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=false}),resumeAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=true;if(Browser.queuedAsyncCallbacks.length>0){var callbacks=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[];callbacks.forEach((function(func){func()}))}}),safeRequestAnimationFrame:(function(func){return Browser.requestAnimationFrame((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}))}),safeSetTimeout:(function(func,timeout){Module["noExitRuntime"]=true;return setTimeout((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}),timeout)}),safeSetInterval:(function(func,timeout){Module["noExitRuntime"]=true;return setInterval((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){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 delta}),mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:(function(event){if(Browser.pointerLock){if(event.type!="mousemove"&&"mozMovementX"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}if(typeof SDL!="undefined"){Browser.mouseX=SDL.mouseX+Browser.mouseMovementX;Browser.mouseY=SDL.mouseY+Browser.mouseMovementY}else{Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}}else{var rect=Module["canvas"].getBoundingClientRect();var cw=Module["canvas"].width;var ch=Module["canvas"].height;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}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"){var last=Browser.touches[touch.identifier];if(!last)last=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}var x=event.pageX-(scrollX+rect.left);var y=event.pageY-(scrollY+rect.top);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}}),asyncLoad:(function(url,onload,onerror,noRunDep){Module["readAsync"](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(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags|8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),setWindowedCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags&~8388608;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")}}}}),wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle:(function(){var handle=Browser.nextWgetRequestHandle;Browser.nextWgetRequestHandle++;return handle})};function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}function _pthread_self(){return 0}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;assert(offset_high===0);FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21506:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((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;Module["FS_unlink"]=FS.unlink;__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}Module["requestFullScreen"]=function Module_requestFullScreen(lockPointer,resizeCanvas,vrDevice){Browser.requestFullScreen(lockPointer,resizeCanvas,vrDevice)};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()};Module["createContext"]=function Module_createContext(canvas,useWebGL,setInModule,webGLContextAttributes){return Browser.createContext(canvas,useWebGL,setInModule,webGLContextAttributes)};STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);staticSealed=true;STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX);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);function invoke_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){try{return Module["dynCall_iiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}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_viiiii(index,a1,a2,a3,a4,a5){try{Module["dynCall_viiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){try{return Module["dynCall_iiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9)}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_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_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)}}Module.asmGlobalArg={"Math":Math,"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Uint32Array":Uint32Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,"Infinity":Infinity};Module.asmLibraryArg={"abort":abort,"assert":assert,"invoke_iiiiiiii":invoke_iiiiiiii,"invoke_iiii":invoke_iiii,"invoke_viiiii":invoke_viiiii,"invoke_iiiiiiiiii":invoke_iiiiiiiiii,"invoke_vii":invoke_vii,"invoke_iiiiiii":invoke_iiiiiii,"invoke_ii":invoke_ii,"invoke_viii":invoke_viii,"invoke_vi":invoke_vi,"invoke_iiiii":invoke_iiiii,"invoke_viiiiii":invoke_viiiiii,"invoke_iii":invoke_iii,"invoke_iiiiii":invoke_iiiiii,"invoke_viiii":invoke_viiii,"_pthread_cleanup_pop":_pthread_cleanup_pop,"___syscall221":___syscall221,"_longjmp":_longjmp,"___lock":___lock,"_time":_time,"_emscripten_set_main_loop":_emscripten_set_main_loop,"_pthread_self":_pthread_self,"_abort":_abort,"_emscripten_set_main_loop_timing":_emscripten_set_main_loop_timing,"___syscall6":___syscall6,"_sbrk":_sbrk,"___syscall5":___syscall5,"_pthread_cleanup_push":_pthread_cleanup_push,"_emscripten_memcpy_big":_emscripten_memcpy_big,"___syscall54":___syscall54,"___unlock":___unlock,"___syscall140":___syscall140,"_sysconf":_sysconf,"___syscall145":___syscall145,"___syscall146":___syscall146,"___setErrNo":___setErrNo,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"cttz_i8":cttz_i8};// EMSCRIPTEN_START_ASM
var asm=(function(global,env,buffer) {
"use asm";var a=new global.Int8Array(buffer);var b=new global.Int16Array(buffer);var c=new global.Int32Array(buffer);var
d=new global.Uint8Array(buffer);var e=new global.Uint16Array(buffer);var f=new global.Uint32Array(buffer);var g=new global.Float32Array
(buffer);var h=new global.Float64Array(buffer);var i=env.STACKTOP|0;var j=env.STACK_MAX|0;var k=env.tempDoublePtr|0;var l=env.ABORT
|0;var m=env.cttz_i8|0;var n=0;var o=0;var p=0;var q=0;var r=global.NaN,s=global.Infinity;var t=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,
B=0.0;var C=0;var D=0;var E=0;var F=0;var G=0;var H=0;var I=0;var J=0;var K=0;var L=0;var M=global.Math.floor;var N=global.Math.
abs;var O=global.Math.sqrt;var P=global.Math.pow;var Q=global.Math.cos;var R=global.Math.sin;var S=global.Math.tan;var T=global.
Math.acos;var U=global.Math.asin;var V=global.Math.atan;var W=global.Math.atan2;var X=global.Math.exp;var Y=global.Math.log;var
Z=global.Math.ceil;var _=global.Math.imul;var $=global.Math.min;var aa=global.Math.clz32;var ba=env.abort;var ca=env.assert;var
da=env.invoke_iiiiiiii;var ea=env.invoke_iiii;var fa=env.invoke_viiiii;var ga=env.invoke_iiiiiiiiii;var ha=env.invoke_vii;var ia
=env.invoke_iiiiiii;var ja=env.invoke_ii;var ka=env.invoke_viii;var la=env.invoke_vi;var ma=env.invoke_iiiii;var na=env.invoke_viiiiii
;var oa=env.invoke_iii;var pa=env.invoke_iiiiii;var qa=env.invoke_viiii;var ra=env._pthread_cleanup_pop;var sa=env.___syscall221
;var ta=env._longjmp;var ua=env.___lock;var va=env._time;var wa=env._emscripten_set_main_loop;var xa=env._pthread_self;var ya=env
._abort;var za=env._emscripten_set_main_loop_timing;var Aa=env.___syscall6;var Ba=env._sbrk;var Ca=env.___syscall5;var Da=env._pthread_cleanup_push
;var Ea=env._emscripten_memcpy_big;var Fa=env.___syscall54;var Ga=env.___unlock;var Ha=env.___syscall140;var Ia=env._sysconf;var
Ja=env.___syscall145;var Ka=env.___syscall146;var La=env.___setErrNo;var Ma=0.0;
// EMSCRIPTEN_START_FUNCS
function $a(a){a=a|0;var b=0;b=i;i=i+a|0;i=i+15&-16;return b|0}function ab(){return i|0}function bb(a){a=a|0;i=a}function cb
(a,b){a=a|0;b=b|0;i=a;j=b}function db(a,b){a=a|0;b=b|0;if(!n){n=a;o=b}}function eb(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]}function
fb(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 gb(a){a=a|0;C=a}function hb(){return C|0}function
ib(a){a=a|0;c[18364]=(a|0)!=0&1;return 0}function jb(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+32|0;h=j+8|0
;f=j;e=c[18367]|0;if((e|0)!=0?(As(e,b)|0)==0:0){e=73468;f=2;g=4}else g=3;do if((g|0)==3){e=c[18368]|0;if(e|0?(As(e,b)|0)==0:0){e
=73472;f=3;g=4;break}e=c[18369]|0;if(e|0?(As(e,b)|0)==0:0){e=73476;f=4;g=4;break}e=c[18370]|0;if(e|0?(As(e,b)|0)==0:0){e=73480;f
=5;g=4;break}e=c[18371]|0;if(e|0?(As(e,b)|0)==0:0){e=73484;f=6;g=4;break}e=c[18372]|0;if(e|0?(As(e,b)|0)==0:0){e=73488;f=7;g=4;break
}e=c[18373]|0;if(e|0?(As(e,b)|0)==0:0){e=73492;f=8;g=4;break}e=c[18374]|0;if(e|0?(As(e,b)|0)==0:0){e=73496;f=9;g=4;break}if(c[18367
]|0)if(c[18368]|0)if(c[18369]|0)if(c[18370]|0)if(c[18371]|0)if(c[18372]|0)if(c[18373]|0)if(!(c[18374]|0))f=9;else{c[f>>
;2]=a;c[f+4>>2]=b;ss(10198,f)|0;h=-1;i=j;return h|0}else f=8;else f=7;else f=6;else f=5;else f=4;else f=3;else f=2}while
(0);if((g|0)==4){g=73500+(f<<2)|0;vd(c[g>>2]|0)|0;Gs(c[e>>2]|0);c[e>>2]=0;c[g>>
;2]=0}e=Ec(c[18385]|0,a,0,73500+(f<<2)|0)|0;if(!e){c[73460+(f<<2)>>2]=ws(b)|0;c[8+(f<<2)
x3e;>2]=d;h=0;i=j;return h|0}else{c[h>>2]=a;c[h+4>>2]=b;c[h+8>>2]=e;ss(10233,h)|0;h=e;i=j;return
h|0}return 0}function kb(a){a=a|0;var b=0,d=0;b=c[18365]|0;if(b)if(As(a,b)|0){b=c[18366]|0;if(((b|0)!=0?(As(a,b)|0)!=0:0)?(d=c[
18367]|0,(d|0)!=0):0)if(As(a,d)|0){b=c[18368]|0;if(b)if(As(a,b)|0){b=c[18369]|0;if(b)if(As(a,b)|0){b=c[18370]|0;if(b)if(As(a,b)|
0){b=c[18371]|0;if(b)if(As(a,b)|0){b=c[18372]|0;if(b)if(As(a,b)|0){b=c[18373]|0;if(b)if(As(a,b)|0){b=c[18374]|0;if(!b)b=1;else{a
=(As(a,b)|0)==0;return (a?9:1)|0}}else b=8;else b=1}else b=7;else b=1}else b=6;else b=1}else b=5;else b=1}else b=4;else b=1}else
b=3;else b=1}else b=2;else b=1}else b=0;else b=1;return b|0}function lb(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;p=i;i=i+16|0;k=p+8|0;j=p;if(!(b>>>0<=9?(c[73460+(b<<2)>>2]|0)!=0:0))b=1;h=
c[73500+(b<<2)>>2]|0;b=c[8+(b<<2)>>2]|0;f=(_(f<<6,b)|0)/100|0;b=(_(g<<
;6,b)|0)/100|0;if((e+-65|0)>>>0<26&(h|0)==(c[18376]|0))b=(b*108|0)/100|0;b=Hd(h,f,b,72,0)|0;if(b|0){c[j
>>2]=b;ss(10260,j)|0;o=0;i=p;return o|0}c[18386]=c[h+84>>2];if((h|0)==(c[18375]|0)|(h|0)==(c[18376]|0))if((e
|0)==126)e=732;else e=(e|0)==94?710:e;if(!(c[18364]|0))e=Cc(h,e,4)|0;else e=Cc(h,e,131076)|0;if(e|0){c[k>>2]=e;ss(10285
,k)|0;o=0;i=p;return o|0}b=c[18386]|0;if(!(c[18364]|0)){o=c[b+88>>2]|0;i=p;return o|0}e=c[18387]|0;if(e|0)Gs(e);m=b+80
|0;f=c[m>>2]|0;n=b+76|0;g=c[n>>2]|0;e=Fs(_(g,f)|0)|0;c[18387]=e;if(!e){o=0;i=p;return o|0}if((g|0)<=0){
o=e;i=p;return o|0}o=b+84|0;l=b+88|0;b=e;k=0;do{j=_(c[o>>2]|0,k)|0;j=(c[l>>2]|0)+j|0;if((f|0)>0){h=0;while
(1){g=b+1|0;a[b>>0]=(((d[j+(h>>3)>>0]|0)&1<<(h&7^7)|0)!=0)<<31>
x3e;31;h=h+1|0;f=c[m>>2]|0;if((h|0)>=(f|0)){b=g;break}else b=g}g=c[n>>2]|0}k=k+1|0}while((k|0)<(g|
0));i=p;return e|0}function mb(){return c[(c[18386]|0)+100>>2]|0}function nb(){return c[(c[18386]|0)+104>>2]|
0}function ob(){return c[(c[18386]|0)+80>>2]|0}function pb(){return c[(c[18386]|0)+76>>2]|0}function qb(){return
c[(c[18386]|0)+84>>2]|0}function rb(){return c[(c[18386]|0)+64>>2]>>6|0}function sb(){var a=0,b=0
,d=0,e=0,f=0;f=i;i=i+32|0;e=f+16|0;d=f+8|0;b=f;a=ub(73540)|0;if(a|0){c[b>>2]=a;ss(10306,b)|0;e=1;i=f;return e|0}a=Ec(c
[18385]|0,10322,0,73500)|0;if(a|0){c[d>>2]=a;ss(10331,d)|0;e=1;i=f;return e|0}a=Ec(c[18385]|0,10358,0,73504)|0;if(!a){
c[18365]=ws(10394)|0;c[18366]=ws(10400)|0;e=0;i=f;return e|0}else{c[e>>2]=a;ss(10367,e)|0;e=1;i=f;return e|0}return 0}
function tb(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;c[d>>2]=48;while(1){if(!(
c[c[d>>2]>>2]|0))break;c[e>>2]=Nd(c[b>>2]|0,c[c[d>>2]>>2]|0)|0;c[d
x3e;>2]=(c[d>>2]|0)+4}i=f;return}function ub(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;d=g+8|0;e=g+4
|0;f=g;c[d>>2]=a;c[f>>2]=tr()|0;if(!(c[f>>2]|0)){c[b>>2]=7;f=c[b>>2]|0;i=g;return
f|0}c[e>>2]=Wd(c[f>>2]|0,c[d>>2]|0)|0;if(c[e>>2]|0)xr(c[f>>2]|0);else tb(c[c[
d>>2]>>2]|0);c[b>>2]=c[e>>2];f=c[b>>2]|0;i=g;return f|0}function vb(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;
c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(!(c[g>>2]|0)){c[f>>2]=35;
e=c[f>>2]|0;i=n;return e|0}if((c[h>>2]|0)>>>0>=(c[(c[g>>2]|0)+16>>2]|
0)>>>0){c[f>>2]=16;e=c[f>>2]|0;i=n;return e|0}c[m>>2]=c[(c[(c[(c[g>>2]|0)+
96>>2]|0)+20>>2]|0)+92>>2];do if(c[m>>2]|0){if((c[j>>2]&3|0)==0?(c[j>
;>2]>>16&15|0)!=1:0)break;c[l>>2]=Za[c[m>>2]&31](c[g>>2]|0,c[h>>
;2]|0,1,c[j>>2]|0,c[k>>2]|0)|0;if(!(c[l>>2]|0)){c[f>>2]=wb(c[g>>2]|0,c[k>
x3e;2]|0,1,c[j>>2]|0)|0;e=c[f>>2]|0;i=n;return e|0}if((c[l>>2]|0)!=7){c[f>>2]=c[l>
x3e;2];e=c[f>>2]|0;i=n;return e|0}}while(0);c[f>>2]=Bb(c[g>>2]|0,c[h>>2]|0,1,c[j>
x3e;2]|0,c[k>>2]|0)|0;e=c[f>>2]|0;i=n;return e|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,m=0,n=0;n=i;i=i+32|0;g=n+24|0;f=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;c[f>>2]=a;c[h>>2]=
b;c[j>>2]=d;c[k>>2]=e;if(c[k>>2]&1|0){c[g>>2]=0;m=c[g>>2]|0;i=n;return m|
0}if(!(c[(c[f>>2]|0)+88>>2]|0)){c[g>>2]=36;m=c[g>>2]|0;i=n;return m|0}f=(c[(c[f>>
;2]|0)+88>>2]|0)+12|0;if(c[k>>2]&16|0)c[m>>2]=c[f+8>>2];else c[m>>2]=c[f+
4>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[j>>2]|0)>>
x3e;0)break;k=xb(c[(c[h>>2]|0)+(c[l>>2]<<2)>>2]|0,c[m>>2]|0,64)|0;c[(c[h>
x3e;2]|0)+(c[l>>2]<<2)>>2]=k;c[l>>2]=(c[l>>2]|0)+1}c[g>>2]=0;m=c[g
x3e;>2]|0;i=n;return m|0}function xb(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;m=i;i=i+48|0;e=m+32|0;f=m
+28|0;g=m+24|0;h=m+20|0;j=m+16|0;k=m+8|0;l=m;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(c[f>>2]|0?(
c[g>>2]|0)!=(c[h>>2]|0):0){c[j>>2]=c[f>>2];d=c[f>>2]|0;c[f>>2]=(c[f
x3e;>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[g>>2];d=c[g>>2]|0;c[g>>2]=(c[
g>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[h>>2];d=c[h>>2]|0;c[h>>2]=(
c[h>>2]|0)<0?0-d|0:d;do if(!((c[f>>2]|0)<=46340&(c[g>>2]|0)<=46340&(c[h
x3e;>2]|0)<=176095&(c[h>>2]|0)>0))if((c[h>>2]|0)>0){yb(c[f>>2]|0,c[g>
;>2]|0,k);c[l+4>>2]=0;c[l>>2]=c[h>>2]>>1;zb(k,l,k);c[f>>2]=Ab(c[k+4>
x3e;2]|0,c[k>>2]|0,c[h>>2]|0)|0;break}else{c[f>>2]=2147483647;break}else{l=_(c[f>>2]|0,c
[g>>2]|0)|0;c[f>>2]=(l+(c[h>>2]>>1)|0)/(c[h>>2]|0)|0}while(0);l=c[f>>
;2]|0;c[e>>2]=(c[j>>2]|0)<0?0-l|0:l;l=c[e>>2]|0;i=m;return l|0}c[e>>2]=c[f>>
;2];l=c[e>>2]|0;i=m;return l|0}function yb(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;e=i;i=i+48|0;q=e+40|0;p=e+36|0;f=e+32|0;o=e+28|0;m=e+24|0;n=e+20|0;l=e+16|0;h=e+12|0;g=e+8|0;j=e+4|0;k=e;c[q>>2]=a;c
[p>>2]=b;c[f>>2]=d;c[o>>2]=c[q>>2]&65535;c[m>>2]=(c[q>>2]|0)>
;>>16;c[n>>2]=c[p>>2]&65535;c[l>>2]=(c[p>>2]|0)>>>16;c[h
x3e;>2]=_(c[o>>2]|0,c[n>>2]|0)|0;c[j>>2]=_(c[o>>2]|0,c[l>>2]|0)|0;c[k>
;>2]=_(c[n>>2]|0,c[m>>2]|0)|0;c[g>>2]=_(c[m>>2]|0,c[l>>2]|0)|0;c[j>
x3e;2]=(c[j>>2]|0)+(c[k>>2]|0);c[g>>2]=(c[g>>2]|0)+(((c[j>>2]|0)>>
x3e;0<(c[k>>2]|0)>>>0&1)<<16);c[g>>2]=(c[g>>2]|0)+((c[j>
x3e;2]|0)>>>16);c[j>>2]=c[j>>2]<<16;c[h>>2]=(c[h>>2]|0)+(c[j>
;>2]|0);c[g>>2]=(c[g>>2]|0)+((c[h>>2]|0)>>>0<(c[j>>2]|0)>
x3e;>0&1);c[c[f>>2]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2
];i=e;return}function zb(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+12|0;f=e+8|0;h=e+4|0;g=e
;c[j>>2]=a;c[k>>2]=b;c[f>>2]=d;c[h>>2]=(c[c[j>>2]>>2]|0)+(c[c[k>
;>2]>>2]|0);c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[k>>2]|0)+4>>2
]|0)+((c[h>>2]|0)>>>0<(c[c[j>>2]>>2]|0)>>>0&1);c[c[f>
x3e;2]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2];i=e;return}function Ab(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+32|0;e=l+24|0;m=l+20|0;f=l+16|0;g=l+12|0;k=l+8|0;j=l+4|0;h=l;c[m>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=0;c[k>>2]=c[m>>2];if((c[k>>2
]|0)>>>0>=(c[g>>2]|0)>>>0){c[e>>2]=2147483647;m=c[e>>2]|0;i=l;return
m|0}c[h>>2]=32;do{c[k>>2]=c[k>>2]<<1;c[j>>2]=c[j>>2]<<1;c
[k>>2]=c[k>>2]|(c[f>>2]|0)>>>31;if((c[k>>2]|0)>>>0>=(
c[g>>2]|0)>>>0){c[k>>2]=(c[k>>2]|0)-(c[g>>2]|0);c[j>>2]=c[j>
;>2]|1}c[f>>2]=c[f>>2]<<1;m=(c[h>>2]|0)+-1|0;c[h>>2]=m}while((m|0)!=0);c[
e>>2]=c[j>>2];m=c[e>>2]|0;i=l;return m|0}function Bb(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;t=i;i=i+48|0;l=t+40|0;m=t+36|0;n=t+32|0;o=t+28|0;p=t+24|0;q=t+20|0;h=t+16|0;
j=t+12|0;g=t+8|0;s=t+4|0;r=t;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f
;c[r>>2]=0;if(!(c[m>>2]|0)){c[l>>2]=35;s=c[l>>2]|0;i=t;return s|0}c[j>>2]=c[(c
[m>>2]|0)+16>>2];c[g>>2]=(c[n>>2]|0)+(c[o>>2]|0);if(((c[n>>2]|0)>
;>>0<(c[j>>2]|0)>>>0?(c[g>>2]|0)>>>0>=(c[n>>2]|0
)>>>0:0)?(c[g>>2]|0)>>>0<=(c[j>>2]|0)>>>0:0){if(!(c[o>
;>2]|0)){c[l>>2]=0;s=c[l>>2]|0;i=t;return s|0}c[h>>2]=c[(c[(c[(c[m>>2]|0)+96>
x3e;2]|0)+20>>2]|0)+92>>2];do if(c[h>>2]|0){if((c[p>>2]&3|0)==0?(c[p>>2]
x3e;>16&15|0)!=1:0){k=15;break}c[r>>2]=Za[c[h>>2]&31](c[m>>2]|0,c[n>>2]|0
,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;if(c[r>>2]|0)if((c[r>>2]|0)!=7){c[l>>
;2]=c[r>>2];s=c[l>>2]|0;i=t;return s|0}else k=15}else k=15;while(0);if((k|0)==15){c[r>>2]=0;if(c[p
>>2]&536870912|0){c[l>>2]=7;s=c[l>>2]|0;i=t;return s|0}c[p>>2]=c[p>>2]|256
;c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c
[r>>2]=Cb(c[m>>2]|0,(c[n>>2]|0)+(c[s>>2]|0)|0,c[p>>2]|0)|0;if(c[r>>2
]|0)break;d=(c[(c[m>>2]|0)+84>>2]|0)+64|0;if(c[p>>2]&16|0)d=c[d+4>>2]|0;else d=c[d
x3e;>2]|0;c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]=d;c[s>>2]=(c[s>>2]|0)+
1}if(c[r>>2]|0){c[l>>2]=c[r>>2];s=c[l>>2]|0;i=t;return s|0}}c[l>>2]=wb(c[m>
;>2]|0,c[q>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;s=c[l>>2]|0;i=t;return s|0}c[l>>2
]=16;s=c[l>>2]|0;i=t;return s|0}function Cb(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;A=i;i=i+80|0;r=A+64|0;s=A+60|0;g=A+56|0;t=A+52|0;u=A+48|0;j=A+44|0;z=A+40|0;n=A+36|0;h=A+68|0
;k=A+32|0;o=A+28|0;l=A+24|0;m=A+20|0;p=A+16|0;w=A+12|0;v=A+8|0;y=A+4|0;x=A;c[s>>2]=b;c[g>>2]=e;c[t>>
;2]=f;a[h>>0]=0;if((c[s>>2]|0?c[(c[s>>2]|0)+88>>2]|0:0)?c[(c[s>>2]|0)+84>
x3e;2]|0:0){c[z>>2]=c[(c[s>>2]|0)+84>>2];Db(c[z>>2]|0);c[j>>2]=c[(c[s>>
;2]|0)+96>>2];c[n>>2]=c[(c[j>>2]|0)+4>>2];c[k>>2]=c[(c[n>>2]|0)+168
x3e;>2];if(c[t>>2]&1024|0)c[t>>2]=c[t>>2]|2049;if(c[t>>2]&1|0){c[t>
x3e;2]=c[t>>2]|10;c[t>>2]=c[t>>2]&-5}do if(((((c[k>>2]|0?(c[t>>2]&2|
0)==0:0)?(c[t>>2]&32768|0)==0:0)?c[c[c[j>>2]>>2]>>2]&256|0:0)?(c[c[c[j>
x3e;2]>>2]>>2]&512|0)==0:0)?(c[(c[s>>2]|0)+8>>2]&8192|0)==0:0){if(!((c[(c[(c[s
>>2]|0)+128>>2]|0)+4+8>>2]|0)==0?(c[(c[(c[s>>2]|0)+128>>2]|0)+4>>2]|
0)!=0:0)){if(c[(c[(c[s>>2]|0)+128>>2]|0)+4>>2]|0)break;if(!(c[(c[(c[s>>2]|0)+128>
x3e;2]|0)+4+8>>2]|0))break}if((c[t>>2]&32|0)==0?c[c[c[j>>2]>>2]>>2]&
1024|0:0){c[o>>2]=c[t>>2]>>16&15;if((c[o>>2]|0)!=1?(d[(c[(c[s>>2]|0)+128
x3e;>2]|0)+56>>0]|0)==0:0)break;a[h>>0]=1;break}a[h>>0]=1}while(0);do if(!(a[h>>0]|
0)){c[u>>2]=Wa[c[(c[(c[j>>2]|0)+20>>2]|0)+80>>2]&31](c[z>>2]|0,c[(c[s>
;>2]|0)+88>>2]|0,c[g>>2]|0,c[t>>2]|0)|0;if(!(c[u>>2]|0))if((c[(c[z>>2]|0)+
72>>2]|0)==1869968492){c[u>>2]=Gb((c[z>>2]|0)+108|0)|0;if(!(c[u>>2]|0))if(c[t>>
;2]&2|0)q=36;else{Hb(c[z>>2]|0,c[t>>2]&16);q=36}}else q=36}else{if(((c[(c[s>>2]|0)+8>
;>2]&2|0?(c[t>>2]&8|0)==0:0)?(c[u>>2]=Wa[c[(c[(c[j>>2]|0)+20>>2]|0)+80>
;>2]&31](c[z>>2]|0,c[(c[s>>2]|0)+88>>2]|0,c[g>>2]|0,c[t>>2]|16384)|0
,(c[u>>2]|0)==0):0)?(c[(c[z>>2]|0)+72>>2]|0)==1651078259:0){q=36;break}c[m>>2]=c[(c[s>
;>2]|0)+128>>2];c[p>>2]=c[(c[m>>2]|0)+28>>2];c[(c[m>>2]|0)+28>>
2]=0;c[l>>2]=c[(c[c[k>>2]>>2]|0)+20>>2];c[u>>2]=Za[c[(c[l>>2]|0)+12
x3e;>2]&31](c[k>>2]|0,c[z>>2]|0,c[(c[s>>2]|0)+88>>2]|0,c[g>>2]|0,c[t
>>2]|0)|0;c[(c[m>>2]|0)+28>>2]=c[p>>2];q=36}while(0);if((q|0)==36){g=c[z>>2]|0
;if(c[t>>2]&16|0){c[g+64>>2]=0;c[(c[z>>2]|0)+64+4>>2]=c[(c[z>>2]|0)+24+28
>>2]}else{c[(c[z>>2]|0)+64>>2]=c[g+24+16>>2];c[(c[z>>2]|0)+64+4>>2]=
0}if((c[t>>2]&8192|0)==0?c[(c[s>>2]|0)+8>>2]&1|0:0){c[w>>2]=(c[(c[s>>
;2]|0)+88>>2]|0)+12;q=xb(c[(c[z>>2]|0)+56>>2]|0,c[(c[w>>2]|0)+4>>2]|0,64)|0;c[(
c[z>>2]|0)+56>>2]=q;w=xb(c[(c[z>>2]|0)+60>>2]|0,c[(c[w>>2]|0)+8>>2]|
0,64)|0;c[(c[z>>2]|0)+60>>2]=w}if((c[t>>2]&2048|0)==0?(c[v>>2]=c[(c[s>>2]|
0)+128>>2],c[(c[v>>2]|0)+28>>2]|0):0){c[y>>2]=Ib(c[z>>2]|0)|0;if(!(c[y>
x3e;2]|0)){if((c[(c[z>>2]|0)+72>>2]|0)==1869968492){if((c[v>>2]|0)+4|0)Kb((c[z>>2]|0)+108
|0,(c[v>>2]|0)+4|0);if((c[v>>2]|0)+20|0)Nb((c[z>>2]|0)+108|0,c[(c[v>>2]|0)+20>>
;2]|0,c[(c[v>>2]|0)+20+4>>2]|0)}}else c[u>>2]=Wa[c[(c[(c[y>>2]|0)+20>>2]|0)+44
>>2]&31](c[y>>2]|0,c[z>>2]|0,(c[v>>2]|0)+4|0,(c[v>>2]|0)+20|0)|0;Lb((c[z
x3e;>2]|0)+64|0,(c[v>>2]|0)+4|0)}if((((c[u>>2]|0)==0?(c[(c[z>>2]|0)+72>>2]|0)!=1651078259
:0)?(c[(c[z>>2]|0)+72>>2]|0)!=1668246896:0)?c[t>>2]&4|0:0){c[x>>2]=c[t>>2
]>>16&15;if((c[x>>2]|0)==0?c[t>>2]&4096|0:0)c[x>>2]=2;c[u>>2]=Ob(c[z
>>2]|0,c[x>>2]|0)|0}}c[r>>2]=c[u>>2];z=c[r>>2]|0;i=A;return z|0}c[r>>
;2]=35;z=c[r>>2]|0;i=A;return z|0}function Db(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;Eb(c[e>
x3e;2]|0);b=(c[e>>2]|0)+24|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[
b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;c[b+28>>2]=0;b=(c[e>>2]|0)+108|0;c[b>
;>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[(c[e>>2]|0)+76
+4>>2]=0;c[(c[e>>2]|0)+76>>2]=0;c[(c[e>>2]|0)+76+8>>2]=0;a[(c[e>>2]|
0)+76+18>>0]=0;c[(c[e>>2]|0)+100>>2]=0;c[(c[e>>2]|0)+104>>2]=0;c[(c[e>>
;2]|0)+128>>2]=0;c[(c[e>>2]|0)+132>>2]=0;c[(c[e>>2]|0)+136>>2]=0;c[(c[e>
x3e;2]|0)+140>>2]=0;c[(c[e>>2]|0)+152>>2]=0;c[(c[e>>2]|0)+72>>2]=0;c[(c[e>
;>2]|0)+56>>2]=0;c[(c[e>>2]|0)+60>>2]=0;c[(c[e>>2]|0)+144>>2]=0;c[(c[e>
;>2]|0)+148>>2]=0;i=d;return}function Eb(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if
(c[(c[b>>2]|0)+156>>2]|0?c[(c[(c[b>>2]|0)+156>>2]|0)+4>>2]&1|0:0){c[d>
;>2]=c[(c[(c[b>>2]|0)+4>>2]|0)+100>>2];Fb(c[d>>2]|0,c[(c[b>>2]|0)+76+12
x3e;>2]|0);c[(c[b>>2]|0)+76+12>>2]=0;a=(c[(c[b>>2]|0)+156>>2]|0)+4|0;c[a>>
;2]=c[a>>2]&-2;i=e;return}c[(c[b>>2]|0)+76+12>>2]=0;i=e;return}function Fb(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=f;return}Ra[c[(c[d>
;>2]|0)+8>>2]&7](c[d>>2]|0,c[e>>2]|0);i=f;return}function Gb(a){a=a|0;var d=0,e=0,f=0,g=
0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;d=l+24|0;e=l+20|0;k=l+16|0;j=l+12|0;g=l+8|0;f=l+4|0;h=l;c[e>>2]=a;a:do if(c[e>>
;2]|0){c[k>>2]=b[(c[e>>2]|0)+2>>1];c[j>>2]=b[c[e>>2]>>1];if((c[k>
;>2]|0)==0&(c[j>>2]|0)==0){c[d>>2]=0;a=c[d>>2]|0;i=l;return a|0}if(!((c[k>>2]|
0)<=0|(c[j>>2]|0)<=0)){c[f>>2]=-1;c[g>>2]=-1;c[h>>2]=0;while(1){if((c[h>
x3e;2]|0)>=(c[j>>2]|0))break;c[f>>2]=b[(c[(c[e>>2]|0)+12>>2]|0)+(c[h>>2]
x3c;<1)>>1];if((c[f>>2]|0)<=(c[g>>2]|0))break a;if((c[f>>2]|0)>=(c[k>
;>2]|0))break a;c[g>>2]=c[f>>2];c[h>>2]=(c[h>>2]|0)+1}if((c[f>>2]|0)==((c
[k>>2]|0)-1|0)){c[d>>2]=0;a=c[d>>2]|0;i=l;return a|0}}}while(0);c[d>>2]=6;a=c[d>>
;2]|0;i=l;return a|0}function Hb(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+32|0;k=h+12|0;j=h+16|0;f=h+8|0;g=h+4|0;e=h
;c[k>>2]=b;a[j>>0]=d;c[f>>2]=(c[k>>2]|0)+24;b=c[f>>2]|0;if(a[j>>0]|0
){c[(c[f>>2]|0)+8>>2]=c[b+8>>2]&-64;c[(c[f>>2]|0)+12>>2]=(c[(c[f>>
;2]|0)+12>>2]|0)+63&-64;c[g>>2]=(c[(c[f>>2]|0)+20>>2]|0)+(c[c[f>>2]>
x3e;2]|0)+63&-64;c[e>>2]=(c[(c[f>>2]|0)+24>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0)+
63&-64;c[(c[f>>2]|0)+20>>2]=c[(c[f>>2]|0)+20>>2]&-64;c[(c[f>>2]|0)+24
>>2]=c[(c[f>>2]|0)+24>>2]&-64;c[c[f>>2]>>2]=(c[g>>2]|0)-(c[(c[f
>>2]|0)+20>>2]|0);c[(c[f>>2]|0)+4>>2]=(c[e>>2]|0)-(c[(c[f>>2]|0)+24
x3e;>2]|0);k=c[f>>2]|0;k=k+16|0;k=c[k>>2]|0;k=k+32|0;k=k&-64;j=c[f>>2]|0;j=j+16|0;c[j>
;>2]=k;j=c[f>>2]|0;j=j+28|0;j=c[j>>2]|0;j=j+32|0;j=j&-64;k=c[f>>2]|0;k=k+28|0;c[k>
x3e;2]=j;i=h;return}else{c[(c[f>>2]|0)+20>>2]=c[b+20>>2]&-64;c[(c[f>>2]|0)+24>
x3e;2]=c[(c[f>>2]|0)+24>>2]&-64;c[g>>2]=(c[(c[f>>2]|0)+8>>2]|0)+(c[c[f>
;>2]>>2]|0)+63&-64;c[e>>2]=(c[(c[f>>2]|0)+12>>2]|0)-(c[(c[f>>2]|0)+4
>>2]|0)&-64;c[(c[f>>2]|0)+8>>2]=c[(c[f>>2]|0)+8>>2]&-64;c[(c[f>
x3e;2]|0)+12>>2]=(c[(c[f>>2]|0)+12>>2]|0)+63&-64;c[c[f>>2]>>2]=(c[g>
x3e;2]|0)-(c[(c[f>>2]|0)+8>>2]|0);c[(c[f>>2]|0)+4>>2]=(c[(c[f>>2]|0)+12>
x3e;2]|0)-(c[e>>2]|0);k=c[f>>2]|0;k=k+16|0;k=c[k>>2]|0;k=k+32|0;k=k&-64;j=c[f>>2]|0
;j=j+16|0;c[j>>2]=k;j=c[f>>2]|0;j=j+28|0;j=c[j>>2]|0;j=j+32|0;j=j&-64;k=c[f>>2]|0;k
=k+28|0;c[k>>2]=j;i=h;return}}function Ib(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;b=f+12|0;g=f+8|0;d=f+4|0;e=f;c
[b>>2]=a;c[g>>2]=c[(c[b>>2]|0)+4>>2];c[d>>2]=c[(c[(c[g>>2]|0)+96>
;>2]|0)+4>>2];c[e>>2]=c[(c[d>>2]|0)+164>>2];if(c[e>>2]|0?(c[(c[e>>
;2]|0)+24>>2]|0)==(c[(c[b>>2]|0)+72>>2]|0):0){g=c[e>>2]|0;i=f;return g|0}c[e>>
2]=Jb(c[d>>2]|0,c[(c[b>>2]|0)+72>>2]|0,0)|0;g=c[e>>2]|0;i=f;return g|0}function Jb(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;m=i;i=i+32|0;e=m+20|0;f=m+16|0;g=m+12|0;h=m+8|0;k=m+4|0;j=m;c[e>>
;2]=a;c[f>>2]=b;c[g>>2]=d;c[k>>2]=0;if(!(c[e>>2]|0)){l=c[k>>2]|0;i=m;return l|
0}c[h>>2]=c[(c[e>>2]|0)+156>>2];if(c[g>>2]|0){if(c[c[g>>2]>>2]|0)c[h
>>2]=c[(c[c[g>>2]>>2]|0)+4>>2];c[c[g>>2]>>2]=0}while(1){if(!(c[h>
;>2]|0)){l=12;break}c[j>>2]=c[(c[h>>2]|0)+8>>2];if((c[(c[j>>2]|0)+24>>2]|
0)==(c[f>>2]|0))break;c[h>>2]=c[(c[h>>2]|0)+4>>2]}if((l|0)==12){l=c[k>>2]|0;i=
m;return l|0}if(c[g>>2]|0)c[c[g>>2]>>2]=c[h>>2];c[k>>2]=c[j>>2];l=c[
k>>2]|0;i=m;return l|0}function Kb(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;
c[e>>2]=a;c[f>>2]=d;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=j;return}c[h>>
2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=(c[h>>2]|0)+(b[(c[e>>2]|0)+2>>1]<
;<3);while(1){if((c[h>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;Lb(c[h>
x3e;2]|0,c[f>>2]|0);c[h>>2]=(c[h>>2]|0)+8}i=j;return}function Lb(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;if(!((c[d>>2]|0)!=0&(c[
e>>2]|0)!=0)){i=h;return}a=Mb(c[c[d>>2]>>2]|0,c[c[e>>2]>>2]|0)|0;c[f>>
;2]=a+(Mb(c[(c[d>>2]|0)+4>>2]|0,c[(c[e>>2]|0)+4>>2]|0)|0);a=Mb(c[c[d>>2]>
x3e;2]|0,c[(c[e>>2]|0)+8>>2]|0)|0;c[g>>2]=a+(Mb(c[(c[d>>2]|0)+4>>2]|0,c[(c[e
x3e;>2]|0)+12>>2]|0)|0);c[c[d>>2]>>2]=c[f>>2];c[(c[d>>2]|0)+4>>
2]=c[g>>2];i=h;return}function Mb(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;l=i;i=i+32|0;f=l+24|0;d=l+20|0;
e=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;g=l;c[d>>2]=a;c[e>>2]=b;a=c[d>>2]|0;if((c[d>>2]|0)==0|(
c[e>>2]|0)==65536){c[f>>2]=a;k=c[f>>2]|0;i=l;return k|0}c[h>>2]=a;a=c[d>>2]|0;
c[d>>2]=(c[d>>2]|0)<0?0-a|0:a;c[h>>2]=c[h>>2]^c[e>>2];a=c[e>>2]|
0;c[e>>2]=(c[e>>2]|0)<0?0-a|0:a;c[j>>2]=c[d>>2];c[k>>2]=c[e>>2];
a=c[j>>2]|0;if((c[j>>2]|0)>>>0<=2048&(c[k>>2]|0)>>>0<=
1048576)c[j>>2]=((_(a,c[k>>2]|0)|0)+32768|0)>>>16;else{c[g>>2]=a&65535;e=_((c[
j>>2]|0)>>>16,c[k>>2]|0)|0;e=e+(_(c[g>>2]|0,(c[k>>2]|0)>>>
16)|0)|0;c[j>>2]=e+(((_(c[g>>2]|0,c[k>>2]&65535)|0)+32768|0)>>>16)}k=c[j>
x3e;2]|0;c[f>>2]=(c[h>>2]|0)<0?0-k|0:k;k=c[f>>2]|0;i=l;return k|0}function Nb(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;m=i;i=i+32|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m+16|0;l=m;c[g>>2]=a;c[h>>2]=d
;c[j>>2]=f;if(!(c[g>>2]|0)){i=m;return}c[l>>2]=c[(c[g>>2]|0)+4>>2];b[k>
x3e;1]=0;while(1){if((e[k>>1]|0)>=(b[(c[g>>2]|0)+2>>1]|0))break;f=c[l>>2]|0;c[f>
;>2]=(c[f>>2]|0)+(c[h>>2]|0);f=(c[l>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+(c[j
x3e;>2]|0);c[l>>2]=(c[l>>2]|0)+8;b[k>>1]=(b[k>>1]|0)+1<<16>>16}
i=m;return}function Ob(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[
f>>2]=b;if(c[e>>2]|0?c[(c[e>>2]|0)+4>>2]|0:0){c[g>>2]=c[(c[(c[(c[e>>
2]|0)+4>>2]|0)+96>>2]|0)+4>>2];c[d>>2]=Pb(c[g>>2]|0,c[e>>2]|0,c[f>
;>2]|0)|0;a=c[d>>2]|0;i=h;return a|0}c[d>>2]=6;a=c[d>>2]|0;i=h;return a|0}function Pb(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;o=i;i=i+32|0;g=o+20|0;h=o+16|0;j=o+12|0;k=o+8|0;m=o+4|0;l=o;n=o+24|0;c[g
x3e;>2]=b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=0;if((c[(c[h>>2]|0)+72>>2]|0)==1651078259
){n=c[k>>2]|0;i=o;return n|0}c[l>>2]=0;a[n>>0]=0;b=c[g>>2]|0;if((c[(c[h>>2]|0)+
72>>2]|0)==1869968492){c[m>>2]=c[b+164>>2];c[l>>2]=c[(c[g>>2]|0)+156>>
;2]}else c[m>>2]=Jb(b,c[(c[h>>2]|0)+72>>2]|0,l)|0;c[k>>2]=7;while(1){if(!(c[m>>
;2]|0))break;c[k>>2]=Wa[c[(c[m>>2]|0)+68>>2]&31](c[m>>2]|0,c[h>>2]|0,c[j
x3e;>2]|0,0)|0;if(!(c[k>>2]|0))break;if((c[k>>2]&255|0)!=19)break;c[m>>2]=Jb(c[g>
x3e;2]|0,c[(c[h>>2]|0)+72>>2]|0,l)|0;a[n>>0]=1}if(c[k>>2]|0){n=c[k>>2]|0;i=o;return
n|0}if(!((d[n>>0]|0|0)!=0&(c[m>>2]|0)!=0)){n=c[k>>2]|0;i=o;return n|0}Qb(c[g>>2]|0
,c[m>>2]|0,0,0)|0;n=c[k>>2]|0;i=o;return n|0}function Qb(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o+20|0;j=o+16|0;k=o+12|0;m=o+8|0;l=o+4|0;n=o;c[g>>2]=a;c[h>
;>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=0;if(!(c[g>>2]|0)){c[f>>2]=33;n=c[f>
;>2]|0;i=o;return n|0}if(!(c[h>>2]|0)){c[f>>2]=6;n=c[f>>2]|0;i=o;return n|0}c[m>>2]=
Rb((c[g>>2]|0)+156|0,c[h>>2]|0)|0;a:do if(c[m>>2]|0){Sb((c[g>>2]|0)+156|0,c[m>>
;2]|0);if((c[(c[h>>2]|0)+24>>2]|0)==1869968492)c[(c[g>>2]|0)+164>>2]=c[h>>2];if
((c[j>>2]|0)>>>0>0){c[n>>2]=c[(c[(c[h>>2]|0)+20>>2]|0)+52>>
;2];while(1){if((c[j>>2]|0)>>>0<=0)break a;c[l>>2]=Oa[c[n>>2]&63](c[h>
;>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0)|0;if(c[l>>2]|0)break a;c[j
x3e;>2]=(c[j>>2]|0)+-1}}}else c[l>>2]=6;while(0);c[f>>2]=c[l>>2];n=c[f>>2
]|0;i=o;return n|0}function Rb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;f=g+12|0;h=g+8|0;d=g+4|0;e=g;c[h>>
;2]=a;c[d>>2]=b;c[e>>2]=c[c[h>>2]>>2];while(1){if(!(c[e>>2]|0)){b=6;break}a=c[
e>>2]|0;if((c[(c[e>>2]|0)+8>>2]|0)==(c[d>>2]|0)){b=4;break}c[e>>2]=c[a+4>
x3e;2]}if((b|0)==4){c[f>>2]=a;h=c[f>>2]|0;i=g;return h|0}else if((b|0)==6){c[f>>2]=0;h=c[f>
x3e;2]|0;i=g;return h|0}return 0}function Sb(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;e=h+12|0;f=h+8|0;d=h+4|0;g=h;
c[e>>2]=a;c[f>>2]=b;c[d>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[f>>
2]|0)+4>>2];if(!(c[d>>2]|0)){i=h;return}c[(c[d>>2]|0)+4>>2]=c[g>>2];d=c[d>
;>2]|0;if(c[g>>2]|0)c[c[g>>2]>>2]=d;else c[(c[e>>2]|0)+4>>2]=d;c[c[f>
;>2]>>2]=0;c[(c[f>>2]|0)+4>>2]=c[c[e>>2]>>2];c[c[c[e>>2]>
x3e;2]>>2]=c[f>>2];c[c[e>>2]>>2]=c[f>>2];i=h;return}function Tb(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;if((c[d>>2]|0)>=0){d=a+32768&-65536;i=b;return
d|0}else{d=0-(0-a+32768&-65536)|0;i=b;return d|0}return 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;l=i;i=i+32|0;e=l+24|0;f=l+20|0;g=l+16|0;h=l+12|0;j=l+8|0;k=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if
(c[f>>2]|0?(c[g>>2]|0)!=(c[h>>2]|0):0){c[j>>2]=c[f>>2];d=c[f>>2]|0;c
[f>>2]=(c[f>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[g>>2];d=c[g>>2]|
0;c[g>>2]=(c[g>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[h>>2];d=c[h>>
2]|0;c[h>>2]=(c[h>>2]|0)<0?0-d|0:d;do if(!((c[f>>2]|0)<=46340&(c[g>>2]|0)
x3c;=46340&(c[h>>2]|0)>0))if((c[h>>2]|0)>0){yb(c[f>>2]|0,c[g>>2]|0,k);c[f
>>2]=Ab(c[k+4>>2]|0,c[k>>2]|0,c[h>>2]|0)|0;break}else{c[f>>2]=2147483647;break
}else{k=_(c[f>>2]|0,c[g>>2]|0)|0;c[f>>2]=(k|0)/(c[h>>2]|0)|0}while(0);k=c[f>>2
]|0;c[e>>2]=(c[j>>2]|0)<0?0-k|0:k;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=c[f>>
;2];k=c[e>>2]|0;i=l;return k|0}function Vb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+28|0;e=k+
24|0;g=k+20|0;f=k+16|0;h=k+8|0;j=k;c[d>>2]=a;c[e>>2]=b;c[g>>2]=c[d>>2];b=c[d>>
2]|0;c[d>>2]=(c[d>>2]|0)<0?0-b|0:b;c[g>>2]=c[g>>2]^c[e>>2];b=c[e>>
;2]|0;c[e>>2]=(c[e>>2]|0)<0?0-b|0:b;do if(c[e>>2]|0){a=c[d>>2]|0;if(!(c[d>>
;2]>>16)){c[f>>2]=(((a<<16)+(c[e>>2]>>1)|0)>>>0)/((c[e>>
;2]|0)>>>0)|0;break}else{c[h+4>>2]=a>>16;c[h>>2]=c[d>>2]<<16;c[
j+4>>2]=0;c[j>>2]=c[e>>2]>>1;zb(h,j,h);c[f>>2]=Ab(c[h+4>>2]|0,c[h>
;>2]|0,c[e>>2]|0)|0;break}}else c[f>>2]=2147483647;while(0);j=c[f>>2]|0;i=k;return ((c[g>
;>2]|0)<0?0-j|0:j)|0}function Wb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0;f=h+4|0;g
=h;c[d>>2]=a;if(!(c[d>>2]|0)){c[b>>2]=6;g=c[b>>2]|0;i=h;return g|0}a=Mb(c[c[d>>
;2]>>2]|0,c[(c[d>>2]|0)+12>>2]|0)|0;c[e>>2]=a-(Mb(c[(c[d>>2]|0)+4>>2
]|0,c[(c[d>>2]|0)+8>>2]|0)|0);if(c[e>>2]|0){a=0-(Vb(c[(c[d>>2]|0)+4>>2]|0,c[e
x3e;>2]|0)|0)|0;c[(c[d>>2]|0)+4>>2]=a;a=0-(Vb(c[(c[d>>2]|0)+8>>2]|0,c[e>>
2]|0)|0)|0;c[(c[d>>2]|0)+8>>2]=a;c[f>>2]=c[c[d>>2]>>2];c[g>>2]=c[(c[
d>>2]|0)+12>>2];g=Vb(c[g>>2]|0,c[e>>2]|0)|0;c[c[d>>2]>>2]=g;g=Vb(c[f
>>2]|0,c[e>>2]|0)|0;c[(c[d>>2]|0)+12>>2]=g;c[b>>2]=0;g=c[b>>2]|0;i=h
;return g|0}else{c[b>>2]=6;g=c[b>>2]|0;i=h;return g|0}return 0}function Xb(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;m=i;i=i+32|0;e=m+28|0;f=m+24|0;n=m+20|0;h=m+16|0;j=m+12|0;k=m+8|0;l=m+4|0;g=m;c[e>>2]=
a;c[f>>2]=b;c[n>>2]=d;c[g>>2]=c[n>>2]<<16;if(!((c[e>>2]|0)!=0&(
c[f>>2]|0)!=0)){i=m;return}n=xb(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0,c[g>>
;2]|0)|0;c[h>>2]=n+(xb(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>
x3e;2]|0)|0);n=xb(c[c[e>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0;c[j>
x3e;2]=n+(xb(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);n=xb(c
[(c[e>>2]|0)+8>>2]|0,c[c[f>>2]>>2]|0,c[g>>2]|0)|0;c[k>>2]=n+(xb(c[(c
[e>>2]|0)+12>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>>2]|0)|0);n=xb(c[(c[e>>
2]|0)+8>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0;c[l>>2]=n+(xb(c[(c[e>>
;2]|0)+12>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);c[c[f>>2]>>2]=c
[h>>2];c[(c[f>>2]|0)+4>>2]=c[j>>2];c[(c[f>>2]|0)+8>>2]=c[k>>
;2];c[(c[f>>2]|0)+12>>2]=c[l>>2];i=m;return}function Yb(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;k=i;i=i+32|0;e=k+20|0;f=k+16|0;l=k+12|0;h=k+8|0;j=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[l>>
;2]=d;c[g>>2]=c[l>>2]<<16;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=k;return
}l=xb(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0,c[g>>2]|0)|0;c[h>>2]=l+(xb(c[(
c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0);l=xb(c[c[e>>2
]>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>>2]|0)|0;c[j>>2]=l+(xb(c[(c[e>>2]|
0)+4>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);c[c[e>>2]>>2]=c[h>
;>2];c[(c[e>>2]|0)+4>>2]=c[j>>2];i=k;return}function Zb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,
j=0;j=i;i=i+32|0;b=j+20|0;g=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;d=j;c[b>>2]=a;c[g>>2]=0;if((c[b>>2]|0)
x3c;=0){a=c[g>>2]|0;i=j;return a|0}c[e>>2]=0;c[f>>2]=c[b>>2];c[d>>2]=24;do{c[e
>>2]=c[e>>2]<<2|(c[f>>2]|0)>>>30;c[f>>2]=c[f>>2]<
;<2;c[g>>2]=c[g>>2]<<1;c[h>>2]=(c[g>>2]<<1)+1;if((c[e>>
;2]|0)>>>0>=(c[h>>2]|0)>>>0){c[e>>2]=(c[e>>2]|0)-(c[h>>
;2]|0);c[g>>2]=(c[g>>2]|0)+1}a=(c[d>>2]|0)+-1|0;c[d>>2]=a}while((a|0)!=0);a=c[g>>
;2]|0;i=j;return a|0}function _b(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;n=i;i=i+48|0;f=n+32|0;k=n+
28|0;g=n+24|0;l=n+20|0;m=n+16|0;h=n+8|0;j=n;c[f>>2]=a;c[k>>2]=b;c[g>>2]=d;c[l>>2]=e;b=c[
f>>2]|0;do if(!(c[k>>2]|0)){a=c[l>>2]|0;if((b|0)>=0){c[m>>2]=a;break}else{c[m>
x3e;2]=0-a;break}}else{if(!b){a=c[g>>2]|0;if((c[k>>2]|0)>=0){c[m>>2]=0-a;break}else{c[m>
x3e;2]=a;break}}b=c[g>>2]|0;if(!(c[l>>2]|0)){a=c[k>>2]|0;if((b|0)>=0){c[m>>2]=a;break
}else{c[m>>2]=0-a;break}}if(!b){a=c[f>>2]|0;if((c[l>>2]|0)>=0){c[m>>2]=0-a;break}else
{c[m>>2]=a;break}}yb(c[f>>2]|0,c[l>>2]|0,h);yb(c[k>>2]|0,c[g>>2]|0,j);if((c[h+
4>>2]|0)>>>0>(c[j+4>>2]|0)>>>0){c[m>>2]=1;break}if((c[h+4>
x3e;2]|0)>>>0<(c[j+4>>2]|0)>>>0){c[m>>2]=-1;break}if((c[h>>2]|0
)>>>0>(c[j>>2]|0)>>>0){c[m>>2]=1;break}if((c[h>>2]|0)>>
;>0<(c[j>>2]|0)>>>0){c[m>>2]=-1;break}else{c[m>>2]=0;break}}while(0);i=n;
return c[m>>2]|0}function $b(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;p=i;i=i+48|0
;f=p+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;n=p+8|0;o=p+4|0;m=p;c[f>>2]=a;c[g>>2]=b;c[h>>
;2]=d;c[j>>2]=e;c[k>>2]=c[f>>2];c[l>>2]=c[g>>2];if((c[k>>2]|0)<
0)c[k>>2]=0-(c[k>>2]|0);if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>>2]|0);c[n>
x3e;2]=(c[k>>2]|0)+(c[l>>2]|0);c[k>>2]=c[h>>2];if((c[k>>2]|0)<0)c[k>
x3e;2]=0-(c[k>>2]|0);c[l>>2]=c[j>>2];if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>
;>2]|0);c[o>>2]=(c[k>>2]|0)+(c[l>>2]|0);c[k>>2]=(c[h>>2]|0)+(c[f>>
;2]|0);if((c[k>>2]|0)<0)c[k>>2]=0-(c[k>>2]|0);c[l>>2]=(c[j>>2]|0)+(c[g>
;>2]|0);if((c[l>>2]|0)>=0){e=c[k>>2]|0;d=c[l>>2]|0;d=e+d|0;c[m>>2]=d;d=c[n>
;>2]|0;e=c[o>>2]|0;e=d+e|0;d=c[m>>2]|0;d=e-d|0;e=c[m>>2]|0;e=e>>4;e=(d|0)<(e|0
);e=e&1;i=p;return e|0}c[l>>2]=0-(c[l>>2]|0);e=c[k>>2]|0;d=c[l>>2]|0;d=e+d|0;c[m>
;>2]=d;d=c[n>>2]|0;e=c[o>>2]|0;e=d+e|0;d=c[m>>2]|0;d=e-d|0;e=c[m>>2]|0;e=e>>
;4;e=(d|0)<(e|0);e=e&1;i=p;return e|0}function ac(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;d=h+12|0;e=h+8
|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[g>>2]=bc(c[d>>2]|0,96,f)|0;if(c
[f>>2]|0){a=c[f>>2]|0;i=h;return a|0}c[c[g>>2]>>2]=c[d>>2];c[c[e>>2]
x3e;>2]=c[g>>2];a=c[f>>2]|0;i=h;return a|0}function bc(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;k=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[k>>2]=a;c[e>>2]=b;c[f>>2]=d;c[g>>
;2]=cc(c[k>>2]|0,c[e>>2]|0,h)|0;if((c[h>>2]|0)==0&(c[e>>2]|0)>0)Ns(c[g>
x3e;2]|0,0,c[e>>2]|0)|0;c[c[f>>2]>>2]=c[h>>2];i=j;return c[g>>2]|0}function cc
(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;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f
>>2]=b;c[g>>2]=d;c[j>>2]=0;c[h>>2]=0;if((c[f>>2]|0)>0){c[h>>2]=
Ya[c[(c[e>>2]|0)+4>>2]&127](c[e>>2]|0,c[f>>2]|0)|0;if(!(c[h>>2]|0))c[j>
;>2]=64}else if((c[f>>2]|0)<0)c[j>>2]=6;c[c[g>>2]>>2]=c[j>>2];i=k;return
c[h>>2]|0}function dc(a){a=a|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[d>>
;2]=(c[g>>2]|0)+20;c[e>>2]=(c[g>>2]|0)+56;b[(c[d>>2]|0)+2>>1]=0;b[c[d>>
;2]>>1]=0;c[(c[d>>2]|0)+28>>2]=0;a=c[e>>2]|0;d=c[d>>2]|0;e=a+36|0;do{c[a>
x3e;2]=c[d>>2];a=a+4|0;d=d+4|0}while((a|0)<(e|0));i=f;return}function ec(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];Fb(c[e>>2]|0,c[(c[d>>2]|0)+
20+4>>2]|0);c[(c[d>>2]|0)+20+4>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+8>>
;2]|0);c[(c[d>>2]|0)+20+8>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+12>>2]|0);c[(c[d
>>2]|0)+20+12>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+20>>2]|0);c[(c[d>>
2]|0)+20+20>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+32>>2]|0);c[(c[d>>2]|0)+20+32
x3e;>2]=0;c[(c[d>>2]|0)+20+24>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+8
>>2]=0;c[(c[d>>2]|0)+12>>2]=0;dc(c[d>>2]|0);i=b;return}function fc(a){a=a|0;var b=0,d=0,
e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(!(c[b>>2]|0)){i=e;return}c[d>>2]=c[c[b>>2]>
;>2];ec(c[b>>2]|0);Fb(c[d>>2]|0,c[b>>2]|0);c[b>>2]=0;i=e;return}function gc(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[g>>2]=c[c[d>>2]>>2];b
=hc(c[g>>2]|0,8,0,c[(c[d>>2]|0)+4>>2]<<1,0,e)|0;c[(c[d>>2]|0)+20+20>>
;2]=b;if(c[e>>2]|0){g=c[e>>2]|0;i=f;return g|0}a[(c[d>>2]|0)+16>>0]=1;c[(c[d>>
2]|0)+20+24>>2]=(c[(c[d>>2]|0)+20+20>>2]|0)+(c[(c[d>>2]|0)+4>>2]<<3);
jc(c[d>>2]|0);g=c[e>>2]|0;i=f;return g|0}function hc(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;o=i;i=i+32|0;p=o+24|0;h=o+20|0;j=o+16|0;k=o+12|0;l=o+8|0;m=o+4|0;n=o;c[p>>2]=a;c[h>
x3e;2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=0;c[l>>2]=ic
(c[p>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,n)|0;if((c[n>>2]|
0)==0?(c[k>>2]|0)>(c[j>>2]|0):0){p=(c[l>>2]|0)+(_(c[j>>2]|0,c[h>>2]|0)|0)|
0;Ns(p|0,0,_((c[k>>2]|0)-(c[j>>2]|0)|0,c[h>>2]|0)|0)|0}c[c[m>>2]>>2]=c[n>
x3e;2];i=o;return c[l>>2]|0}function ic(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;s=i;i=i+48|0;h=s+36|0;j=s+32|0;k=s+28|0;l=s+24|0;m=s+20|0;n=s+16|0;q=s+12|0;o=s+8|0;p=s+4|0;r=s;c[h>>
;2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[q>>2]=0;do
if(!((c[k>>2]|0)<0|(c[l>>2]|0)<0|(c[j>>2]|0)<0)){if((c[l>>2]|0)==0|(c[j
x3e;>2]|0)==0){Fb(c[h>>2]|0,c[m>>2]|0);c[m>>2]=0;break}if((c[l>>2]|0)>(2147483647
/(c[j>>2]|0)|0|0)){c[q>>2]=10;break}if(!(c[k>>2]|0)){c[m>>2]=bc(c[h>>2]|0,_(c[
l>>2]|0,c[j>>2]|0)|0,q)|0;break}c[p>>2]=_(c[k>>2]|0,c[j>>2]|0)|0;c[r>>
;2]=_(c[l>>2]|0,c[j>>2]|0)|0;c[o>>2]=Wa[c[(c[h>>2]|0)+12>>2]&31](c[h>
;>2]|0,c[p>>2]|0,c[r>>2]|0,c[m>>2]|0)|0;if(!(c[o>>2]|0)){c[q>>2]=64;break
}else{c[m>>2]=c[o>>2];break}}else c[q>>2]=6;while(0);c[c[n>>2]>>2]=c[q>
x3e;2];i=s;return c[m>>2]|0}function jc(d){d=d|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
]=d;c[f>>2]=(c[e>>2]|0)+20;c[h>>2]=(c[e>>2]|0)+56;c[(c[h>>2]|0)+4>>2
]=(c[(c[f>>2]|0)+4>>2]|0)+(b[(c[f>>2]|0)+2>>1]<<3);c[(c[h>>2]|0)+8
x3e;>2]=(c[(c[f>>2]|0)+8>>2]|0)+(b[(c[f>>2]|0)+2>>1]|0);c[(c[h>>2]|0)+12
x3e;>2]=(c[(c[f>>2]|0)+12>>2]|0)+(b[c[f>>2]>>1]<<1);if(!(a[(c[e>>
;2]|0)+16>>0]|0)){i=g;return}c[(c[e>>2]|0)+56+20>>2]=(c[(c[e>>2]|0)+20+20>>2]|
0)+(b[(c[f>>2]|0)+2>>1]<<3);c[(c[e>>2]|0)+56+24>>2]=(c[(c[e>>2]|0)+20
+24>>2]|0)+(b[(c[f>>2]|0)+2>>1]<<3);i=g;return}function kc(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,s=0,t=0;s=i;i=i+48|0;g=s+36|0;h=s+32|0;t=s+28|0;j=s+24|0;o=s+20|0;n=s+16|0;l=s+12|0;
m=s+8|0;k=s+40|0;p=s+4|0;q=s;c[h>>2]=d;c[t>>2]=e;c[j>>2]=f;c[o>>2]=c[c[h>>2]
x3e;>2];c[n>>2]=0;c[l>>2]=(c[h>>2]|0)+20;c[m>>2]=(c[h>>2]|0)+56;a[k>
x3e;0]=0;c[p>>2]=(b[(c[l>>2]|0)+2>>1]|0)+(b[(c[m>>2]|0)+2>>1]|0)+(c[t>>
;2]|0);c[q>>2]=c[(c[h>>2]|0)+4>>2];do if((c[p>>2]|0)>>>0>(c[q>
x3e;2]|0)>>>0){c[p>>2]=(c[p>>2]|0)+7&-8;if((c[p>>2]|0)>>>0>
;32767){c[g>>2]=10;t=c[g>>2]|0;i=s;return t|0}t=hc(c[o>>2]|0,8,c[q>>2]|0,c[p>>
2]|0,c[(c[l>>2]|0)+4>>2]|0,n)|0;c[(c[l>>2]|0)+4>>2]=t;if((c[n>>2]|0)==0?(t=hc(
c[o>>2]|0,1,c[q>>2]|0,c[p>>2]|0,c[(c[l>>2]|0)+8>>2]|0,n)|0,c[(c[l>>2
]|0)+8>>2]=t,(c[n>>2]|0)==0):0){if(a[(c[h>>2]|0)+16>>0]|0){t=hc(c[o>>2]|0,8,c[
q>>2]<<1,c[p>>2]<<1,c[(c[h>>2]|0)+20+20>>2]|0,n)|0;c[(c[h>>
;2]|0)+20+20>>2]=t;if(c[n>>2]|0)break;Ts((c[(c[h>>2]|0)+20+20>>2]|0)+(c[p>>2]
x3c;<3)|0,(c[(c[h>>2]|0)+20+20>>2]|0)+(c[q>>2]<<3)|0,c[q>>2]<<3
|0)|0;c[(c[h>>2]|0)+20+24>>2]=(c[(c[h>>2]|0)+20+20>>2]|0)+(c[p>>2]<<
3)}a[k>>0]=1;c[(c[h>>2]|0)+4>>2]=c[p>>2];r=10}}else r=10;while(0);a:do if((r|0)==10){c[q
>>2]=c[(c[h>>2]|0)+8>>2];c[p>>2]=(b[c[l>>2]>>1]|0)+(b[c[m>>
;2]>>1]|0)+(c[j>>2]|0);do if((c[p>>2]|0)>>>0>(c[q>>2]|0)>>
x3e;0){c[p>>2]=(c[p>>2]|0)+3&-4;if((c[p>>2]|0)>>>0>32767){c[g>>
2]=10;t=c[g>>2]|0;i=s;return t|0}else{t=hc(c[o>>2]|0,2,c[q>>2]|0,c[p>>2]|0,c[(c[l>
x3e;2]|0)+12>>2]|0,n)|0;c[(c[l>>2]|0)+12>>2]=t;if(c[n>>2]|0)break a;a[k>>0]=1;
c[(c[h>>2]|0)+8>>2]=c[p>>2];break}}while(0);if(a[k>>0]|0)jc(c[h>>2]|0)}while(0
);c[g>>2]=c[n>>2];t=c[g>>2]|0;i=s;return t|0}function lc(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;d=k+28|0;l=k+24|0;g=k+20|0;f=k+16|0;h=k+12|0;j=k+8|0;e=k+4|0;m=k;c[d>>2]=a;c[l>>
;2]=b;c[g>>2]=c[c[d>>2]>>2];c[f>>2]=0;c[e>>2]=(c[d>>2]|0)+20;c[m>
;>2]=(c[d>>2]|0)+56;c[h>>2]=(c[(c[e>>2]|0)+28>>2]|0)+(c[(c[m>>2]|0)+28>
;>2]|0)+(c[l>>2]|0);c[j>>2]=c[(c[d>>2]|0)+12>>2];if((c[h>>2]|0)>>
;>0<=(c[j>>2]|0)>>>0){m=c[f>>2]|0;i=k;return m|0}c[h>>2]=(c[h>>
2]|0)+1&-2;m=hc(c[g>>2]|0,32,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+32>>2]|0,f
)|0;c[(c[e>>2]|0)+32>>2]=m;if(c[f>>2]|0){m=c[f>>2]|0;i=k;return m|0}c[(c[d>>2]|
0)+12>>2]=c[h>>2];mc(c[d>>2]|0);m=c[f>>2]|0;i=k;return m|0}function mc(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+4|0;d=b;c[f>>2]=a;c[e>>2]=(c[f>>2]|0)+20;c[d>>2]=(c
[f>>2]|0)+56;c[(c[d>>2]|0)+32>>2]=(c[(c[e>>2]|0)+32>>2]|0)+(c[(c[e>>
2]|0)+28>>2]<<5);i=b;return}function nc(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;c[f>>2]=(c[e>>2]|0)+56;b[(c[f>>2]|0)+2>>1]=0;b[c[f>>2]>>1]=0;c[(c[
f>>2]|0)+28>>2]=0;jc(c[e>>2]|0);mc(c[e>>2]|0);i=d;return}function oc(a){a=a|0;var d=0,e=
0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[d>>2]=a;if(!(c[d>>2]|0)){
i=k;return}c[e>>2]=(c[d>>2]|0)+20;c[f>>2]=(c[d>>2]|0)+56;c[j>>2]=b[c[f>
x3e;2]>>1];c[h>>2]=b[(c[e>>2]|0)+2>>1];b[(c[e>>2]|0)+2>>1]=(b[(c[e
x3e;>2]|0)+2>>1]|0)+(b[(c[f>>2]|0)+2>>1]|0);b[c[e>>2]>>1]=(b[c[e>>
;2]>>1]|0)+(b[c[f>>2]>>1]|0);a=(c[e>>2]|0)+28|0;c[a>>2]=(c[a>>2]|0)+(
c[(c[f>>2]|0)+28>>2]|0);c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[j
x3e;>2]|0)>>>0)break;b[(c[(c[f>>2]|0)+12>>2]|0)+(c[g>>2]<<1)>
x3e;1]=(b[(c[(c[f>>2]|0)+12>>2]|0)+(c[g>>2]<<1)>>1]|0)+(c[h>>2]|0);c
[g>>2]=(c[g>>2]|0)+1}nc(c[d>>2]|0);i=k;return}function pc(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,j=0,k=0
,l=0,m=0,n=0;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;l=n+12|0;k=n+8|0;m=n+4|0;j=n;c[f>>2]=a;c[g>>2]=e;c[l>
;>2]=b[(c[g>>2]|0)+20+2>>1];c[k>>2]=b[(c[g>>2]|0)+20>>1];c[h>>2
]=kc(c[f>>2]|0,c[l>>2]|0,c[k>>2]|0)|0;if(c[h>>2]|0){a=c[h>>2]|0;i=n;return a|0
}c[m>>2]=(c[f>>2]|0)+20;c[j>>2]=(c[g>>2]|0)+20;Ss(c[(c[m>>2]|0)+4>>2
]|0,c[(c[j>>2]|0)+4>>2]|0,c[l>>2]<<3|0)|0;Ss(c[(c[m>>2]|0)+8>>2]|0,c
[(c[j>>2]|0)+8>>2]|0,c[l>>2]|0)|0;Ss(c[(c[m>>2]|0)+12>>2]|0,c[(c[j>>
2]|0)+12>>2]|0,c[k>>2]<<1|0)|0;if(d[(c[f>>2]|0)+16>>0]|0?d[(c[g>>2]|
0)+16>>0]|0:0){Ss(c[(c[f>>2]|0)+20+20>>2]|0,c[(c[g>>2]|0)+20+20>>2]|0,c[l>
;>2]<<3|0)|0;Ss(c[(c[f>>2]|0)+20+24>>2]|0,c[(c[g>>2]|0)+20+24>>2]|0,c[l
x3e;>2]<<3|0)|0}b[(c[m>>2]|0)+2>>1]=c[l>>2];b[c[m>>2]>>1]=c[k
x3e;>2];jc(c[f>>2]|0);a=c[h>>2]|0;i=n;return a|0}function qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;h=i;i=i+16|0;j=h+12|0;d=h+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=0;c[e>>2]=c[j
x3e;>2];if(!((c[e>>2]|0)!=0&(c[d>>2]|0)!=0)){j=c[f>>2]|0;i=h;return j|0}while(1){if(!(c[
c[e>>2]>>2]|0)){g=6;break}j=(Kr(c[c[e>>2]>>2]|0,c[d>>2]|0)|0)==0;a=c[e>
x3e;2]|0;if(j)break;c[e>>2]=a+8}if((g|0)==6){j=c[f>>2]|0;i=h;return j|0}c[f>>2]=c[a+4>>2
];j=c[f>>2]|0;i=h;return j|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;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;c[c[g>>2]>
x3e;2]=c[k>>2];c[(c[g>>2]|0)+4>>2]=c[j>>2];c[(c[g>>2]|0)+8>>2]=c[h
x3e;>2];c[(c[g>>2]|0)+12>>2]=0;i=f;return}function sc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d
+8|0;f=d+4|0;c[e>>2]=a;c[f>>2]=b;c[d>>2]=(c[e>>2]|0)+16;c[(c[e>>2]|0)+12>
x3e;2]=c[f>>2];ta(c[d>>2]|0,1)}function tc(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;m=i;
i=i+32|0;h=m+24|0;e=m+20|0;f=m+16|0;j=m+12|0;k=m+8|0;g=m+4|0;l=m;c[e>>2]=a;c[f>>2]=b;c[j>>2]=d;c[c
[j>>2]>>2]=0;if(!(c[e>>2]|0)){c[h>>2]=33;l=c[h>>2]|0;i=m;return l|0}if(!(c[f
x3e;>2]|0)){c[h>>2]=6;l=c[h>>2]|0;i=m;return l|0}c[g>>2]=c[c[e>>2]>>2];c[
l>>2]=bc(c[g>>2]|0,40,k)|0;if(!(c[k>>2]|0)){c[(c[l>>2]|0)+28>>2]=c[g>>
;2];do if(c[c[f>>2]>>2]&1|0)uc(c[l>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[(c[f>
;>2]|0)+8>>2]|0);else{if(c[c[f>>2]>>2]&4|0){c[k>>2]=qr(c[l>>2]|0,c[(
c[f>>2]|0)+12>>2]|0)|0;c[(c[l>>2]|0)+16>>2]=c[(c[f>>2]|0)+12>>2];break
}if(c[c[f>>2]>>2]&2|0?c[(c[f>>2]|0)+16>>2]|0:0){Fb(c[g>>2]|0,c[l>>
;2]|0);c[l>>2]=0;c[l>>2]=c[(c[f>>2]|0)+16>>2];break}c[k>>2]=6}while(0);e=c[g
x3e;>2]|0;f=c[l>>2]|0;if(c[k>>2]|0){Fb(e,f);c[l>>2]=0}else c[f+28>>2]=e;c[c[j>
x3e;2]>>2]=c[l>>2]}c[h>>2]=c[k>>2];l=c[h>>2]|0;i=m;return l|0}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;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]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2];c[(c[f>
x3e;2]|0)+8>>2]=0;c[(c[f>>2]|0)+32>>2]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>
x3e;2]|0)+24>>2]=0;i=e;return}function vc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=a;c[e>>2]=b;if(!(c[d>>2]|0)){i=g;return}c[f>>2]=c[(c[d>>2]|0)+28>>2];
wc(c[d>>2]|0);if(c[e>>2]|0){i=g;return}Fb(c[f>>2]|0,c[d>>2]|0);c[d>>2]=0;i=g;return
}function wc(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)){i=d;return}if(!(c[(c[b>
x3e;2]|0)+24>>2]|0)){i=d;return}Va[c[(c[b>>2]|0)+24>>2]&63](c[b>>2]|0);i=d;return}function
xc(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c
[g>>2]=c[(c[(c[d>>2]|0)+4>>2]|0)+100>>2];if(c[(c[(c[d>>2]|0)+156>>2]|
0)+4>>2]&1|0){Fb(c[g>>2]|0,c[(c[d>>2]|0)+76+12>>2]|0);c[(c[d>>2]|0)+76+12
>>2]=0}else{a=(c[(c[d>>2]|0)+156>>2]|0)+4|0;c[a>>2]=c[a>>2]|1}a=bc(c[g>
x3e;2]|0,c[e>>2]|0,f)|0;c[(c[d>>2]|0)+76+12>>2]=a;i=h;return c[f>>2]|0}function yc(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;m=i;i=i+32|0;d=m+28|0;e=m+24|0;f=m+20|0;j=m+16|0;h=m+12|0;g=m+8|0;k=m+4|0;l=
m;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0?c[(c[e>>2]|0)+96>>2]|0:0){c[h>>2]=
c[(c[e>>2]|0)+96>>2];c[g>>2]=c[(c[h>>2]|0)+20>>2];c[k>>2]=c[(c[h>
;>2]|0)+8>>2];c[l>>2]=bc(c[k>>2]|0,c[(c[g>>2]|0)+44>>2]|0,j)|0;do if(c[j
x3e;>2]|0){if(c[f>>2]|0)c[c[f>>2]>>2]=0}else{c[(c[l>>2]|0)+4>>2]=c[e>
;>2];c[j>>2]=zc(c[l>>2]|0)|0;if(c[j>>2]|0){Ac(c[l>>2]|0);Fb(c[k>>2]|0,c[l
>>2]|0);c[l>>2]=0;break}c[(c[l>>2]|0)+8>>2]=c[(c[e>>2]|0)+84>>2];c[(
c[e>>2]|0)+84>>2]=c[l>>2];if(c[f>>2]|0)c[c[f>>2]>>2]=c[l>>
2]}while(0);c[d>>2]=c[j>>2];l=c[d>>2]|0;i=m;return l|0}c[d>>2]=6;l=c[d>>2]|0;i
=m;return l|0}function zc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;b=j+20|0;e=j+16|0;d=j+12|0;h=j+8|0;f=j+4|0;g=j;c
[b>>2]=a;c[e>>2]=c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2];c[d>>2]=c[(c[e>
;>2]|0)+20>>2];c[h>>2]=c[(c[e>>2]|0)+8>>2];c[f>>2]=0;c[g>>2]=0;
c[c[b>>2]>>2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=bc(c[h>>2]|0,40,f)|0;if(c[
f>>2]|0){a=c[f>>2]|0;i=j;return a|0}c[(c[b>>2]|0)+156>>2]=c[g>>2];if(!(c[c[c[e
>>2]>>2]>>2]&512))c[f>>2]=ac(c[h>>2]|0,c[g>>2]|0)|0;if(c[f>
;>2]|0){a=c[f>>2]|0;i=j;return a|0}if(!(c[(c[d>>2]|0)+64>>2]|0)){a=c[f>>2]|0;i=j;return
a|0}c[f>>2]=Ta[c[(c[d>>2]|0)+64>>2]&63](c[b>>2]|0)|0;a=c[f>>2]|0;i=j;return
a|0}function Ac(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;d=g+4|0;f=g;c[b>>2]=a;c[e>>2
]=c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2];c[d>>2]=c[(c[e>>2]|0)+20>>2];c[f
x3e;>2]=c[(c[e>>2]|0)+8>>2];if(c[(c[d>>2]|0)+68>>2]|0)Va[c[(c[d>>2]|0)+68
>>2]&63](c[b>>2]|0);Eb(c[b>>2]|0);if(!(c[(c[b>>2]|0)+156>>2]|0)){i=g;return
}if(!(c[c[c[e>>2]>>2]>>2]&512)){fc(c[c[(c[b>>2]|0)+156>>2]>>2]|
0);c[c[(c[b>>2]|0)+156>>2]>>2]=0}Fb(c[f>>2]|0,c[(c[b>>2]|0)+156>>2]|
0);c[(c[b>>2]|0)+156>>2]=0;i=g;return}function Bc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+
16|0;d=j+12|0;g=j+8|0;h=j+4|0;b=j;c[f>>2]=a;if(!(c[f>>2]|0)){i=j;return}c[d>>2]=c[(c[(c[f>>
;2]|0)+4>>2]|0)+96>>2];c[g>>2]=c[(c[d>>2]|0)+8>>2];c[h>>2]=0;c[b>
;>2]=c[(c[(c[f>>2]|0)+4>>2]|0)+84>>2];while(1){if(!(c[b>>2]|0)){e=10;break}if((c[b
x3e;>2]|0)==(c[f>>2]|0))break;c[h>>2]=c[b>>2];c[b>>2]=c[(c[b>>2]|0)+8>
;>2]}if((e|0)==10){i=j;return}b=c[(c[b>>2]|0)+8>>2]|0;if(c[h>>2]|0)c[(c[h>>2]|0)+8
x3e;>2]=b;else c[(c[(c[f>>2]|0)+4>>2]|0)+84>>2]=b;Ac(c[f>>2]|0);Fb(c[g>>2
]|0,c[f>>2]|0);c[f>>2]=0;i=j;return}function Cc(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;e=k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[f>>2]|0
)){c[e>>2]=35;d=c[e>>2]|0;i=k;return d|0}c[j>>2]=c[g>>2];if(c[(c[f>>2]|0)+92
x3e;>2]|0)c[j>>2]=Dc(c[f>>2]|0,c[g>>2]|0)|0;c[e>>2]=Cb(c[f>>2]|0,c[j>
;>2]|0,c[h>>2]|0)|0;d=c[e>>2]|0;i=k;return d|0}function Dc(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;if(!(c[d>>2]|0)){g=
c[g>>2]|0;i=h;return g|0}if(!(c[(c[d>>2]|0)+92>>2]|0)){g=c[g>>2]|0;i=h;return g|0}c[f>
;>2]=c[(c[d>>2]|0)+92>>2];c[g>>2]=Ya[c[(c[(c[f>>2]|0)+12>>2]|0)+12>
x3e;2]&127](c[f>>2]|0,c[e>>2]|0)|0;g=c[g>>2]|0;i=h;return g|0}function Ec(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;m=i;i=i+64|0;f=m+48|0;g=m+44|0;h=m+40|0;j=m+36|0;k=m+32|0;l=m;c[g>>2]=a;
c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(c[h>>2]|0){c[l>>2]=4;c[l+12>>2]=c[h
>>2];c[l+16>>2]=0;c[f>>2]=Fc(c[g>>2]|0,l,c[j>>2]|0,c[k>>2]|0)|0;b=c[
f>>2]|0;i=m;return b|0}else{c[f>>2]=6;b=c[f>>2]|0;i=m;return b|0}return 0}function Fc(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;G=i;i=i
+96|0;C=G+80|0;j=G+76|0;k=G+72|0;l=G+68|0;D=G+64|0;E=G+60|0;o=G+56|0;u=G+52|0;B=G+48|0;q=G+44|0;v=G+40|0;p=G+84|0;n=G+36|0;t=G+32
|0;w=G+28|0;y=G+24|0;x=G+20|0;z=G+16|0;A=G+12|0;r=G+8|0;m=G+4|0;s=G;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;
c[D>>2]=h;c[B>>2]=0;c[q>>2]=0;c[v>>2]=0;if(!(((c[D>>2]|0)==0&(c[l>
x3e;2]|0)>=0^1)&(c[k>>2]|0)!=0)){c[C>>2]=6;F=c[C>>2]|0;i=G;return F|0}if(c[c[k>>
;2]>>2]&2|0)h=(c[(c[k>>2]|0)+16>>2]|0)!=0;else h=0;a[p>>0]=h&1;c[E>>
2]=tc(c[j>>2]|0,c[k>>2]|0,B)|0;a:do if(!(c[E>>2]|0)){c[u>>2]=c[c[j>>2]>
x3e;2];do if(c[c[k>>2]>>2]&8|0?c[(c[k>>2]|0)+20>>2]|0:0){c[o>>2]=c[(c[k
x3e;>2]|0)+20>>2];if(c[c[c[o>>2]>>2]>>2]&1|0){c[w>>2]=0;c[y>>
;2]=0;if(c[c[k>>2]>>2]&16|0){c[w>>2]=c[(c[k>>2]|0)+24>>2];c[y>>
2]=c[(c[k>>2]|0)+28>>2]}c[E>>2]=Gc(c[o>>2]|0,c[B>>2]|0,c[l>>2]|0,c[w
>>2]|0,c[y>>2]|0,q)|0;if(!(c[E>>2]|0))break}else c[E>>2]=32;vc(c[B>>2]|0,d[p
x3e;>0]|0);F=60;break a}else F=14;while(0);b:do if((F|0)==14){c[n>>2]=(c[j>>2]|0)+28;c[t>>2]=(
c[n>>2]|0)+(c[(c[j>>2]|0)+24>>2]<<2);while(1){if((c[n>>2]|0)>>>
0>=(c[t>>2]|0)>>>0){F=27;break a}if(c[c[c[c[n>>2]>>2]>>2]>>
;2]&1|0){c[x>>2]=0;c[z>>2]=0;c[o>>2]=c[c[n>>2]>>2];if(c[c[k>>2]
x3e;>2]&16|0){c[x>>2]=c[(c[k>>2]|0)+24>>2];c[z>>2]=c[(c[k>>2]|0)+28
x3e;>2]}c[E>>2]=Gc(c[o>>2]|0,c[B>>2]|0,c[l>>2]|0,c[x>>2]|0,c[z>>
;2]|0,q)|0;if(!(c[E>>2]|0))break b;if((Kr(c[(c[c[c[n>>2]>>2]>>2]|0)+8>>2]|0,10489
)|0)==0?(c[E>>2]&255|0)==142:0){if(Kc(c[B>>2]|0,0)|0){F=27;break a}c[E>>2]=Lc(c[j>>
2]|0,c[B>>2]|0,c[l>>2]|0,c[x>>2]|0,c[z>>2]|0,c[D>>2]|0)|0;if(!(c[E>>
2]|0))break}if((c[E>>2]&255|0)!=2){F=27;break a}}c[n>>2]=(c[n>>2]|0)+4}vc(c[B>>2]|0
,d[p>>0]|0);c[C>>2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}while(0);if(a[p>>0]|0){
B=(c[q>>2]|0)+8|0;c[B>>2]=c[B>>2]|1024}c[v>>2]=bc(c[u>>2]|0,12,E)|0;if(!(c[E
x3e;>2]|0)){c[(c[v>>2]|0)+8>>2]=c[q>>2];td((c[(c[q>>2]|0)+96>>2]|0)+24|0,
c[v>>2]|0);if((c[l>>2]|0)>=0){c[E>>2]=yc(c[q>>2]|0,0)|0;if(c[E>>2]|0){F=60
;break}c[E>>2]=ud(c[q>>2]|0,A)|0;if(c[E>>2]|0){F=60;break}c[(c[q>>2]|0)+88>>2]=
c[A>>2]}if(c[(c[q>>2]|0)+8>>2]&1|0){if((b[(c[q>>2]|0)+74>>1]|0)<0)b[(
c[q>>2]|0)+74>>1]=0-(b[(c[q>>2]|0)+74>>1]|0);if(!(c[(c[q>>2]|0)+8>>2
]&32))b[(c[q>>2]|0)+78>>1]=b[(c[q>>2]|0)+74>>1]|0}c:do if(c[(c[q>>2]|0)+8
>>2]&2|0){c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[(c[q>>2]|0)+28>>2]|0
))break c;c[m>>2]=(c[(c[q>>2]|0)+32>>2]|0)+(c[r>>2]<<4);if((b[c[m>>2
]>>1]|0)<0)b[c[m>>2]>>1]=0-(b[c[m>>2]>>1]|0);if((c[(c[m>>2]|0)+
8>>2]|0)<0)c[(c[m>>2]|0)+8>>2]=(0-(c[(c[m>>2]|0)+8>>2]|0)&65535)<
;<16>>16;if((c[(c[m>>2]|0)+12>>2]|0)<0)c[(c[m>>2]|0)+12>>2]=0-(c[(c[
m>>2]|0)+12>>2]|0);c[r>>2]=(c[r>>2]|0)+1}}while(0);c[s>>2]=c[(c[q>>2
]|0)+128>>2];c[(c[s>>2]|0)+4>>2]=65536;c[(c[s>>2]|0)+4+4>>2]=0;c[(c[s>>
;2]|0)+4+8>>2]=0;c[(c[s>>2]|0)+4+12>>2]=65536;c[(c[s>>2]|0)+20>>2]=0;c[(c[s>
;>2]|0)+20+4>>2]=0;c[(c[s>>2]|0)+60>>2]=1;h=c[q>>2]|0;if(c[D>>2]|0){c[c[D
>>2]>>2]=h;break}else{vd(h)|0;break}}else F=60}else F=27;while(0);if((F|0)==27){if(!(((c[E>>2]&
;255|0)!=81?(c[E>>2]&255|0)!=2:0)?(c[E>>2]&255|0)!=85:0))F=30;do if((F|0)==30){c[E>>2]=Xc
(c[j>>2]|0,c[B>>2]|0,c[l>>2]|0,c[D>>2]|0,c[k>>2]|0)|0;if(c[E>>2]|0){
if((c[E>>2]&255|0)!=2)break;c[E>>2]=2;break}else{vc(c[B>>2]|0,d[p>>0]|0);c[C>
x3e;2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}}while(0);vc(c[B>>2]|0,d[p>>0]|0);F=60}if((F|0
)==60)vd(c[q>>2]|0)|0;c[C>>2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}function Gc(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;v=i;i=i+64|0;h=v+48|0;j=v+44|0
;k=v+40|0;l=v+36|0;m=v+32|0;n=v+28|0;u=v+24|0;o=v+20|0;r=v+16|0;p=v+12|0;q=v+8|0;t=v+4|0;s=v;c[h>>2]=a;c[j>>
2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[r>>2]=0;c[t>>2]=0;c[o
>>2]=c[(c[h>>2]|0)+20>>2];c[u>>2]=c[(c[h>>2]|0)+8>>2];c[r>>
;2]=bc(c[u>>2]|0,c[(c[o>>2]|0)+36>>2]|0,p)|0;do if((c[p>>2]|0)==0?(c[t>>2]=bc(
c[u>>2]|0,64,p)|0,(c[p>>2]|0)==0):0){c[(c[r>>2]|0)+128>>2]=c[t>>2];c[(c[r>
;>2]|0)+96>>2]=c[h>>2];c[(c[r>>2]|0)+100>>2]=c[u>>2];c[(c[r>>2]|
0)+104>>2]=c[j>>2];c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]=0;c[s>>2]=0;while
(1){if((c[s>>2]|0)>=(c[l>>2]|0))break;if(!((c[(c[(c[r>>2]|0)+128>>2]|0)+52>>
;2]|0)!=0^1))break;if((c[(c[m>>2]|0)+(c[s>>2]<<3)>>2]|0)==1768842098)c[(c[(c[r>>
;2]|0)+128>>2]|0)+52>>2]=c[(c[m>>2]|0)+(c[s>>2]<<3)+4>>2];c[s>
x3e;2]=(c[s>>2]|0)+1}if(c[(c[o>>2]|0)+48>>2]|0)c[p>>2]=Za[c[(c[o>>2]|0)+48>
;>2]&31](c[j>>2]|0,c[r>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(!(c
[p>>2]|0)){c[q>>2]=Hc(c[r>>2]|0)|0;if((c[q>>2]|0)!=0&(c[q>>2]|0)!=38){c[p
>>2]=c[q>>2];break}else{c[c[n>>2]>>2]=c[r>>2];break}}}while(0);if(!(c[p>
x3e;2]|0)){b=c[p>>2]|0;i=v;return b|0}Ic(c[r>>2]|0,c[u>>2]|0);if(c[(c[o>>2]|0)+52>
x3e;2]|0)Va[c[(c[o>>2]|0)+52>>2]&63](c[r>>2]|0);Fb(c[u>>2]|0,c[t>>2]|0);c
[t>>2]=0;Fb(c[u>>2]|0,c[r>>2]|0);c[r>>2]=0;c[c[n>>2]>>2]=0;b=c[p>
;>2]|0;i=v;return b|0}function Hc(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;b=j+12|0;d=j+8|0;g=j+4|0;f=j;c[d>
x3e;2]=a;c[g>>2]=c[(c[d>>2]|0)+40>>2];if(!(c[g>>2]|0)){c[b>>2]=38;h=c[b>
x3e;2]|0;i=j;return h|0}c[f>>2]=(c[g>>2]|0)+(c[(c[d>>2]|0)+36>>2]<<2);while(1){
a=(c[f>>2]|0)+-4|0;c[f>>2]=a;if(a>>>0<(c[g>>2]|0)>>>0)break;if((
c[(c[c[f>>2]>>2]|0)+4>>2]|0)!=1970170211)continue;if(!((e[(c[c[f>>2]>>2]|0)+8
x3e;>1]|0|0)==3?(e[(c[c[f>>2]>>2]|0)+10>>1]|0|0)==10:0)){if(e[(c[c[f>>2]>>
;2]|0)+8>>1]|0|0)continue;if((e[(c[c[f>>2]>>2]|0)+10>>1]|0|0)!=4)continue}if((((c[f>
;>2]|0)-(c[g>>2]|0)|0)/4|0|0)<=15){h=11;break}}if((h|0)==11){c[(c[d>>2]|0)+92>>2]=c[c[f
x3e;>2]>>2];c[b>>2]=0;h=c[b>>2]|0;i=j;return h|0}c[f>>2]=(c[g>>2]|0)+(c[(
c[d>>2]|0)+36>>2]<<2);while(1){h=(c[f>>2]|0)+-4|0;c[f>>2]=h;if(h>>
x3e;0<(c[g>>2]|0)>>>0){h=17;break}if((c[(c[c[f>>2]>>2]|0)+4>>2]|0)!=
1970170211)continue;if((((c[f>>2]|0)-(c[g>>2]|0)|0)/4|0|0)<=15){h=16;break}}if((h|0)==16){c[(c[d>
x3e;2]|0)+92>>2]=c[c[f>>2]>>2];c[b>>2]=0;h=c[b>>2]|0;i=j;return h|0}else if((h
|0)==17){c[b>>2]=38;h=c[b>>2]|0;i=j;return h|0}return 0}function Ic(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;if(!(c[d>>2]|0)){i=h;return}c[g>
;>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[d>>2]|0)+36>>2]|0))break;c[f>>2]=c[(c[(c
[d>>2]|0)+40>>2]|0)+(c[g>>2]<<2)>>2];Jc(c[f>>2]|0);c[(c[(c[d>
x3e;2]|0)+40>>2]|0)+(c[g>>2]<<2)>>2]=0;c[g>>2]=(c[g>>2]|0)+1}Fb(c[e
x3e;>2]|0,c[(c[d>>2]|0)+40>>2]|0);c[(c[d>>2]|0)+40>>2]=0;c[(c[d>>2]|0)+36
>>2]=0;i=h;return}function Jc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;b=f+12|0;d=f+8|0;g=f+4|0;e=f;c[b>>
;2]=a;c[d>>2]=c[(c[b>>2]|0)+12>>2];c[g>>2]=c[c[b>>2]>>2];c[e>
x3e;2]=c[(c[g>>2]|0)+100>>2];if(!(c[(c[d>>2]|0)+8>>2]|0)){e=c[e>>2]|0;g=c[b>
;>2]|0;Fb(e,g);c[b>>2]=0;i=f;return}Va[c[(c[d>>2]|0)+8>>2]&63](c[b>>2]|0);e=c[
e>>2]|0;g=c[b>>2]|0;Fb(e,g);c[b>>2]=0;i=f;return}function Kc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;
g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;if(c[(c[d>>2]|0)+20>
x3e;2]|0){if(Wa[c[(c[d>>2]|0)+20>>2]&31](c[d>>2]|0,c[e>>2]|0,0,0)|0)c[f>>
2]=85}else if((c[e>>2]|0)>>>0>(c[(c[d>>2]|0)+4>>2]|0)>>>0)c[f
x3e;>2]=85;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[(c[d>>2]|0)+8>>2]=c[e>
x3e;2];a=c[f>>2]|0;i=g;return a|0}function Lc(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0
,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;w=i;i=i+64|0;j=w+52|0;k=w+48|0;l=w+44|0;m=w+40|0;y=w+36|0;x=w+32|0;n=w+28|0;o=w+24|
0;s=w+20|0;t=w+16|0;r=w+12|0;u=w+8|0;q=w+56|0;v=w+4|0;p=w;c[k>>2]=a;c[l>>2]=b;c[m>>2]=e;c[y>
x3e;2]=f;c[x>>2]=g;c[n>>2]=h;c[s>>2]=c[c[k>>2]>>2];c[y>>2]=c[y>
x3e;2];c[x>>2]=c[x>>2];c[u>>2]=Mc(c[l>>2]|0)|0;c[o>>2]=Nc(c[l>>2]|0,
c[m>>2]|0,t,r,q)|0;if((((c[o>>2]|0)==0?(Kc(c[l>>2]|0,(c[u>>2]|0)+(c[t>>2]|0)|0
)|0)==0:0)?(c[v>>2]=bc(c[s>>2]|0,c[r>>2]|0,o)|0,(c[o>>2]|0)==0):0)?(c[o>>2]=Rc
(c[l>>2]|0,c[v>>2]|0,c[r>>2]|0)|0,(c[o>>2]|0)==0):0)c[o>>2]=Tc(c[k>>
2]|0,c[v>>2]|0,c[r>>2]|0,(c[m>>2]|0)<0?c[m>>2]|0:0,d[q>>0]|0|0?10406:10410
,c[n>>2]|0)|0;if((c[o>>2]|0)==2?(c[p>>2]=Kc(c[l>>2]|0,c[u>>2]|0)|0,c[p>
x3e;2]|0):0){c[j>>2]=c[p>>2];y=c[j>>2]|0;i=w;return y|0}c[j>>2]=c[o>>2];y=c[j
x3e;>2]|0;i=w;return y|0}function Mc(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 Nc(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;v=i;i=i+48|0;t=v+36|0;k=v+32|0;l=v+28|0;m=v+24|0;n=v+20|0;o=v+16|0;u=v+12|0;q=v+40|0;r=v+8|0;s=v+4|0;p=v;c[k>>2]=d;c
[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[c[m>>2]>>2]=0;c[c[n>
x3e;2]>>2]=0;a[c[o>>2]>>0]=0;c[s>>2]=Oc(c[k>>2]|0,u)|0;if(c[u>>2]|0){
c[t>>2]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}if((c[s>>2]|0)!=1954115633){c[t>>2]=
2;u=c[t>>2]|0;i=v;return u|0}b[q>>1]=Pc(c[k>>2]|0,u)|0;if(c[u>>2]|0){c[t>>2]=c
[u>>2];u=c[t>>2]|0;i=v;return u|0}d=Qc(c[k>>2]|0,6)|0;c[u>>2]=d;if(d|0){c[t>>2
]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}c[r>>2]=-1;a[c[o>>2]>>0]=0;c[p>>
;2]=0;while(1){if((c[p>>2]|0)>=(e[q>>1]|0|0)){k=26;break}c[s>>2]=Oc(c[k>>2]|0,u)|0;
if(c[u>>2]|0){k=15;break}d=Qc(c[k>>2]|0,4)|0;c[u>>2]=d;if(d|0){k=15;break}d=Oc(c[k>>2]|0
,u)|0;c[c[m>>2]>>2]=d;if(c[u>>2]|0){k=15;break}d=Oc(c[k>>2]|0,u)|0;c[c[n>>2]
x3e;>2]=d;if(c[u>>2]|0){k=15;break}if((c[s>>2]|0)==1128875040){c[r>>2]=(c[r>>2]|0)+
1;d=c[m>>2]|0;c[d>>2]=(c[d>>2]|0)+22;d=c[n>>2]|0;c[d>>2]=(c[d>>2]|0)-
22;a[c[o>>2]>>0]=1;if((c[l>>2]|0)<0){k=18;break}}else if((c[s>>2]|0)==1415139377?(c
[r>>2]=(c[r>>2]|0)+1,d=c[m>>2]|0,c[d>>2]=(c[d>>2]|0)+24,d=c[n>>2]|0,
c[d>>2]=(c[d>>2]|0)-24,a[c[o>>2]>>0]=0,(c[l>>2]|0)<0):0){k=21;break}if((c
[l>>2]|0)>=0?(c[r>>2]|0)==(c[l>>2]|0):0){k=24;break}c[p>>2]=(c[p>>2]|0)+1
}if((k|0)==15){c[t>>2]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}else if((k|0)==18){c[t>>2]=0;u
=c[t>>2]|0;i=v;return u|0}else if((k|0)==21){c[t>>2]=0;u=c[t>>2]|0;i=v;return u|0}else if((k|0)==24
){c[t>>2]=0;u=c[t>>2]|0;i=v;return u|0}else if((k|0)==26){c[t>>2]=142;u=c[t>>2]|0;i=v;return
u|0}return 0}function Oc(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;k=m+20|0;j=m+4
|0;l=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=0;c[l>>2]=0;c[c[h>>2]>>2]=0;do if
(((c[(c[g>>2]|0)+8>>2]|0)+3|0)>>>0<(c[(c[g>>2]|0)+4>>2]|0)>>
;>0){e=c[g>>2]|0;if(c[(c[g>>2]|0)+20>>2]|0){if((Wa[c[e+20>>2]&31](c[g>>
;2]|0,c[(c[g>>2]|0)+8>>2]|0,k,4)|0)!=4)break;c[j>>2]=k}else c[j>>2]=(c[e>>2]|0
)+(c[(c[g>>2]|0)+8>>2]|0);if(c[j>>2]|0){c[j>>2]=(c[j>>2]|0)+4;c[l>>2
]=a[(c[j>>2]|0)+-4>>0]<<24|d[(c[j>>2]|0)+-4+1>>0]<<16|d[(c[j>
x3e;2]|0)+-4+2>>0]<<8|d[(c[j>>2]|0)+-4+3>>0]<<0}k=(c[g>>2]|0)+8|0;c[
k>>2]=(c[k>>2]|0)+4;c[f>>2]=c[l>>2];l=c[f>>2]|0;i=m;return l|0}while(0);c[c[h
x3e;>2]>>2]=85;c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}function Pc(e,f){e=e|0;f=f|0;var g=0,h=0,
j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;g=n+14|0;h=n+8|0;j=n+4|0;l=n+16|0;k=n;m=n+12|0;c[h>>2]=e;c[j>>2]=f;c[k>
;>2]=0;b[m>>1]=0;c[c[j>>2]>>2]=0;do if(((c[(c[h>>2]|0)+8>>2]|0)+1|0)>
;>>0<(c[(c[h>>2]|0)+4>>2]|0)>>>0){f=c[h>>2]|0;if(c[(c[h>>2
]|0)+20>>2]|0){if((Wa[c[f+20>>2]&31](c[h>>2]|0,c[(c[h>>2]|0)+8>>2]|0,l,2)|
0)!=2)break;c[k>>2]=l}else c[k>>2]=(c[f>>2]|0)+(c[(c[h>>2]|0)+8>>2]|0);if(c[k
x3e;>2]|0){c[k>>2]=(c[k>>2]|0)+2;b[m>>1]=a[(c[k>>2]|0)+-2>>0]<<
16>>16<<8|d[(c[k>>2]|0)+-2+1>>0]<<0}l=(c[h>>2]|0)+8|0;c[l>>
;2]=(c[l>>2]|0)+2;b[g>>1]=b[m>>1]|0;m=b[g>>1]|0;i=n;return m|0}while(0);c[c[j>>
;2]>>2]=85;b[g>>1]=0;m=b[g>>1]|0;i=n;return m|0}function Qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g
=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)<0){c[d>>2]=85;a=
c[d>>2]|0;i=g;return a|0}else{c[d>>2]=Kc(c[e>>2]|0,(c[(c[e>>2]|0)+8>>2]|0)+(c[
f>>2]|0)|0)|0;a=c[d>>2]|0;i=g;return a|0}return 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+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=Sc(c[h>>2]|0,c[(c[h>
;>2]|0)+8>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function Sc(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g>>2]=
a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=0;if((c[h>>2]|0)>>>0>
;=(c[(c[g>>2]|0)+4>>2]|0)>>>0){c[f>>2]=85;m=c[f>>2]|0;i=n;return m|0}d=c[
g>>2]|0;if(c[(c[g>>2]|0)+20>>2]|0)c[m>>2]=Wa[c[d+20>>2]&31](c[g>>
;2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;else{c[m>>2]=(c[d+4>>2]|0)-(c[h>
x3e;2]|0);if((c[m>>2]|0)>>>0>(c[k>>2]|0)>>>0)c[m>>2]=c[k>
x3e;2];Ss(c[j>>2]|0,(c[c[g>>2]>>2]|0)+(c[h>>2]|0)|0,c[m>>2]|0)|0}c[(c[g>
x3e;2]|0)+8>>2]=(c[h>>2]|0)+(c[m>>2]|0);if((c[m>>2]|0)>>>0<(c[k>
;>2]|0)>>>0)c[l>>2]=85;c[f>>2]=c[l>>2];m=c[f>>2]|0;i=n;return m|0}function
Tc(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;s=i;i=i+80|0;h=s+72|0;j
=s+68|0;k=s+64|0;t=s+60|0;l=s+56|0;m=s+52|0;n=s+48|0;o=s+16|0;p=s+8|0;r=s+4|0;q=s;c[j>>2]=a;c[k>>2]=b;c[t>
;>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[r>>2]=0;c[q>>2]=c[c[j>>2
]>>2];c[p>>2]=Vc(c[j>>2]|0,c[k>>2]|0,c[t>>2]|0,33,r)|0;if(c[p>>2]|0){
Fb(c[q>>2]|0,c[k>>2]|0);c[k>>2]=0;c[h>>2]=c[p>>2];t=c[h>>2]|0;i=s;return
t|0}c[o>>2]=2;c[o+16>>2]=c[r>>2];if(c[m>>2]|0){c[o>>2]=c[o>>2]|8;c[
o+20>>2]=Wc(c[j>>2]|0,c[m>>2]|0)|0}c[p>>2]=Fc(c[j>>2]|0,o,c[l>>2]|0,
c[n>>2]|0)|0;if(!(c[p>>2]|0)){t=(c[c[n>>2]>>2]|0)+8|0;c[t>>2]=c[t>>2
]&-1025}else{wc(c[r>>2]|0);Fb(c[q>>2]|0,c[r>>2]|0);c[r>>2]=0}c[h>>2]=c[p
x3e;>2];t=c[h>>2]|0;i=s;return t|0}function Uc(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]|0)+28>>2];Fb(c[e>>2]|0,c[c[d>>2]>>2]|0);c[c[d
>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;c[(c[d>>2
]|0)+24>>2]=0;i=b;return}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,j=0,k=0,l=0,m=0,n=0,o=0,p=0,
q=0;q=i;i=i+48|0;g=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;l=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;p=q;c[h>>2]=a;c[j>>2]=
b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;if(!(c[h>>2]|0)){c[g>>2]=33;p=c[g>>2
]|0;i=q;return p|0}if(!(c[j>>2]|0)){c[g>>2]=6;p=c[g>>2]|0;i=q;return p|0}c[c[m>>2]>
x3e;2]=0;c[o>>2]=c[c[h>>2]>>2];c[p>>2]=bc(c[o>>2]|0,40,n)|0;if(!(c[n>>
;2]|0)){uc(c[p>>2]|0,c[j>>2]|0,c[k>>2]|0);c[(c[p>>2]|0)+24>>2]=c[l>>
2];c[c[m>>2]>>2]=c[p>>2]}c[g>>2]=c[n>>2];p=c[g>>2]|0;i=q;return p|0}
function Wc(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;l=i;i=i+32|0;e=l+20|0;d=l+16|0;f=l+12|0;j=l+8|0;g=l+4|0;h=l;c[d
>>2]=a;c[f>>2]=b;c[j>>2]=0;if(!((c[d>>2]|0)!=0&(c[f>>2]|0)!=0)){c[e>
x3e;2]=c[j>>2];k=c[e>>2]|0;i=l;return k|0}c[g>>2]=(c[d>>2]|0)+28;c[h>>2]=(c[g
x3e;>2]|0)+(c[(c[d>>2]|0)+24>>2]<<2);while(1){if((c[g>>2]|0)>>>0>
;=(c[h>>2]|0)>>>0)break;b=(Kr(c[(c[c[c[g>>2]>>2]>>2]|0)+8>>2]|0
,c[f>>2]|0)|0)==0;d=c[g>>2]|0;if(b){k=6;break}c[g>>2]=d+4}if((k|0)==6)c[j>>2]=c[d>
x3e;2];c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|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;n=i;i=i+32|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g>>2]=a;c[h>
x3e;2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[l>>2]=c[l>>2];c[m>>2]=Yc(c[
g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;if((c[m>>2]&255|0)==2)c[m>
x3e;2]=Zc(c[g>>2]|0,c[h>>2]|0,0,c[j>>2]|0,c[k>>2]|0)|0;if((c[m>>2]&255|0)!=
2?(c[m>>2]&255|0)!=85:0){b=c[m>>2]|0;i=n;return b|0}if(!(c[c[l>>2]>>2]&4)){b=c
[m>>2]|0;i=n;return b|0}c[m>>2]=dd(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>
;2]|0,c[l>>2]|0)|0;b=c[m>>2]|0;i=n;return b|0}function Yc(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;q=i;i=i+160|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;l=q+12|0;o=q+32|0;n=q+8|0;m=q+4|0;p=q;c[h>>
;2]=a;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;if(!(c[j>>2]|0)){c[g>>2]=85;b=c[g>>
;2]|0;i=q;return b|0}c[n>>2]=Kc(c[j>>2]|0,0)|0;if((c[n>>2]|0)==0?(c[n>>2]=Rc(c[j>
x3e;2]|0,o,128)|0,(c[n>>2]|0)==0):0){if(((((((d[o>>0]|0|0)==0?(d[o+74>>0]|0|0)==0:0)?(d[o+82>
x3e;0]|0|0)==0:0)?d[o+1>>0]|0|0:0)?(d[o+1>>0]|0|0)<=33:0)?(d[o+63>>0]|0|0)==0:0)?(d[o+(2+(d[o
+1>>0]|0))>>0]|0|0)==0:0){c[m>>2]=(d[o+83>>0]|0)<<24|(d[o+84>>0]|0)
x3c;<16|(d[o+85>>0]|0)<<8|(d[o+86>>0]|0);c[p>>2]=128+((c[m>>2]|0)+127&
;-128);c[g>>2]=Zc(c[h>>2]|0,c[j>>2]|0,c[p>>2]|0,c[k>>2]|0,c[l>>2]|0)|
0;b=c[g>>2]|0;i=q;return b|0}c[g>>2]=2;b=c[g>>2]|0;i=q;return b|0}c[g>>2]=c[n>>
;2];b=c[g>>2]|0;i=q;return b|0}function Zc(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;t=i;i=i+64|0;g=t+48|0;h=t+44|0;j=t+40|0;u=t+36|0;k=t+32|0;l=t+28|0;r=t+24|0;o=t+20|0;q=t+16|0;s=t+12|0
;n=t+8|0;m=t+4|0;p=t;c[h>>2]=a;c[j>>2]=b;c[u>>2]=d;c[k>>2]=e;c[l>>2]=f;c[r>
;>2]=c[c[h>>2]>>2];c[o>>2]=_c(c[h>>2]|0,c[j>>2]|0,c[u>>2]|0,q,s
)|0;if(c[o>>2]|0){c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return u|0}c[o>>2]=$c(c[h>
;>2]|0,c[j>>2]|0,c[q>>2]|0,c[s>>2]|0,1347375956,n,m)|0;f=c[h>>2]|0;e=c[j>>
;2]|0;if(!(c[o>>2]|0)){c[o>>2]=bd(f,e,c[n>>2]|0,c[m>>2]|0,c[k>>2]|0,c[l>
x3e;2]|0)|0;Fb(c[r>>2]|0,c[n>>2]|0);c[n>>2]=0;if(!(c[o>>2]|0))c[c[c[l>>2]>
;>2]>>2]=1;c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return u|0}c[o>>2]=$c(f,e,c[q
x3e;>2]|0,c[s>>2]|0,1936092788,n,m)|0;if((c[o>>2]|0)==0?(c[p>>2]=(c[k>>2]|0)%(c[m
x3e;>2]|0)|0,c[o>>2]=cd(c[h>>2]|0,c[j>>2]|0,c[n>>2]|0,c[m>>2]|0,c[p>
x3e;2]|0,c[l>>2]|0)|0,Fb(c[r>>2]|0,c[n>>2]|0),c[n>>2]=0,(c[o>>2]|0)==0):0)c[c[
c[l>>2]>>2]>>2]=c[m>>2];c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return
u|0}function _c(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;x=
i;i=i+96|0;j=x+48|0;y=x+44|0;k=x+40|0;l=x+36|0;m=x+32|0;n=x+28|0;q=x+24|0;r=x+72|0;s=x+56|0;u=x+20|0;v=x+16|0;p=x+12|0;o=x+8|0;t
=x+4|0;w=x;c[y>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[y>>2]=
c[y>>2];c[q>>2]=Kc(c[k>>2]|0,c[l>>2]|0)|0;if(c[q>>2]|0){c[j>>2]=c[q
x3e;>2];y=c[j>>2]|0;i=x;return y|0}c[q>>2]=Rc(c[k>>2]|0,r,16)|0;if(c[q>>2]|0){c[j
x3e;>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}c[c[n>>2]>>2]=(c[l>>2]|0)+((d[
r>>0]|0)<<24|(d[r+1>>0]|0)<<16|(d[r+2>>0]|0)<<8|(d[r+3>>0]|
0));c[u>>2]=(c[l>>2]|0)+((d[r+4>>0]|0)<<24|(d[r+5>>0]|0)<<16|(d[r+6
x3e;>0]|0)<<8|(d[r+7>>0]|0));c[v>>2]=(d[r+8>>0]|0)<<24|(d[r+9>>
0]|0)<<16|(d[r+10>>0]|0)<<8|(d[r+11>>0]|0);if(((c[c[n>>2]>>2]|0)+(c[
v>>2]|0)|0)==(c[u>>2]|0)?(c[u>>2]|0)!=(c[l>>2]|0):0){c[q>>2]=Kc(c[k>>
;2]|0,c[u>>2]|0)|0;if(c[q>>2]|0){c[j>>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}a[
s+15>>0]=(d[r+15>>0]|0)+1;c[q>>2]=Rc(c[k>>2]|0,s,16)|0;if(c[q>>2]|0){c[j>
x3e;2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}c[p>>2]=1;c[o>>2]=1;c[t>>2]=0;while(
1){if((c[t>>2]|0)>=16)break;if(d[s+(c[t>>2]|0)>>0]|0|0)c[p>>2]=0;if((d[s+(c[t>
x3e;2]|0)>>0]|0|0)!=(d[r+(c[t>>2]|0)>>0]|0|0))c[o>>2]=0;c[t>>2]=(c[t>>
;2]|0)+1}if(!((c[p>>2]|0)!=0|(c[o>>2]|0)!=0)){c[j>>2]=2;y=c[j>>2]|0;i=x;return y|0}c[q
x3e;>2]=Qc(c[k>>2]|0,8)|0;c[w>>2]=(Pc(c[k>>2]|0,q)|0)&65535;if(c[q>>2]|0){c[j
x3e;>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}if((c[w>>2]|0)==-1){c[j>>2]=2;y=c[j>
;>2]|0;i=x;return y|0}c[q>>2]=Kc(c[k>>2]|0,(c[u>>2]|0)+(c[w>>2]|0)|0)|0;if(c[q>
;>2]|0){c[j>>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}else{c[c[m>>2]>>2]=(c[
u>>2]|0)+(c[w>>2]|0);c[j>>2]=0;y=c[j>>2]|0;i=x;return y|0}}c[j>>2]=2;y=c[j>
;>2]|0;i=x;return y|0}function $c(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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=i;i=i+80|0;o=C+72|0;D=C+68|0;p=C+64|0;q=C+60|0;r=C+56|0;k=C+52|0;s=C+48|0;
t=C+44|0;u=C+40|0;m=C+36|0;v=C+32|0;l=C+28|0;A=C+24|0;n=C+20|0;z=C+16|0;w=C+12|0;B=C+8|0;x=C+4|0;y=C;c[D>>2]=a;c[p>
;>2]=d;c[q>>2]=e;c[r>>2]=f;c[k>>2]=g;c[s>>2]=h;c[t>>2]=j;c[w>>2
]=c[c[D>>2]>>2];c[u>>2]=Kc(c[p>>2]|0,c[q>>2]|0)|0;if(c[u>>2]|0){c[o
x3e;>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[l>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if
(c[u>>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[l>>2]=(c[l>>
;2]|0)+1;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[l>>2]|0)){k=30;break}c[n>>2]=Oc(c[p
x3e;>2]|0,u)|0;if(c[u>>2]|0){k=10;break}c[A>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if(c[u>
x3e;2]|0){k=10;break}c[z>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if(c[u>>2]|0){k=10;break}if((c[n>
x3e;2]|0)==(c[k>>2]|0)){k=12;break}c[m>>2]=(c[m>>2]|0)+1}if((k|0)==10){c[o>>2]=c[u>
x3e;2];D=c[o>>2]|0;i=C;return D|0}else if((k|0)==12){c[c[t>>2]>>2]=(c[A>>2]|0)+1;c[z>
;>2]=(c[z>>2]|0)+(c[q>>2]|0);c[u>>2]=Kc(c[p>>2]|0,c[z>>2]|0)|0;if(c[u>
;>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[y>>2]=hc(c[w>>2]|0,8
,0,c[c[t>>2]>>2]|0,0,u)|0;if(c[u>>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;
i=C;return D|0}c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[c[t>>2]>>2]|0)){k=23;break}D=Pc
(c[p>>2]|0,u)|0;b[(c[y>>2]|0)+(c[v>>2]<<3)>>1]=D;if(c[u>>2]|0)break;
D=Qc(c[p>>2]|0,2)|0;c[u>>2]=D;if(D|0)break;c[B>>2]=Oc(c[p>>2]|0,u)|0;if(c[u>>2
]|0)break;D=Qc(c[p>>2]|0,4)|0;c[u>>2]=D;if(D|0)break;c[(c[y>>2]|0)+(c[v>>2]<<3
)+4>>2]=c[B>>2]&16777215;c[v>>2]=(c[v>>2]|0)+1}if((k|0)==23?(Bs(c[y>>2]|0
,c[c[t>>2]>>2]|0,8,102),c[x>>2]=hc(c[w>>2]|0,4,0,c[c[t>>2]>>2]|0,0,u
)|0,(c[u>>2]|0)==0):0){c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[c[t>>2]>>2]|
0))break;c[(c[x>>2]|0)+(c[v>>2]<<2)>>2]=(c[r>>2]|0)+(c[(c[y>>2]|0)+(
c[v>>2]<<3)+4>>2]|0);c[v>>2]=(c[v>>2]|0)+1}c[c[s>>2]>>2]=c
[x>>2];c[u>>2]=0}Fb(c[w>>2]|0,c[y>>2]|0);c[y>>2]=0;c[o>>2]=c[u>
x3e;2];D=c[o>>2]|0;i=C;return D|0}else if((k|0)==30){c[o>>2]=1;D=c[o>>2]|0;i=C;return D|0}return 0
}function ad(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=b;do if
((e[c[f>>2]>>1]|0|0)>=(e[c[g>>2]>>1]|0|0))if((e[c[f>>2]>>1]|0|0
)>(e[c[g>>2]>>1]|0|0)){c[d>>2]=1;break}else{c[d>>2]=0;break}else c[d>>2]=-
1;while(0);i=h;return c[d>>2]|0}function bd(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,C=0,D=0;D=i;i=i+80|0;j=D+72|0;k=D+68|0;l=D+64|0;m=D+60|0;n=D+56|0;o=D+52|
0;p=D+48|0;q=D+44|0;u=D+40|0;v=D+36|0;s=D+32|0;B=D+28|0;r=D+24|0;t=D+20|0;w=D+16|0;y=D+12|0;x=D+8|0;z=D+4|0;A=D;c[k>>2
]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;c[q>>2]=1;c[u
x3e;>2]=c[c[k>>2]>>2];if((c[o>>2]|0)==-1)c[o>>2]=0;if(c[o>>2]|0){c[j>
;>2]=c[q>>2];C=c[j>>2]|0;i=D;return C|0}c[w>>2]=0;c[s>>2]=0;while(1){if((c[s>
x3e;2]|0)>=(c[n>>2]|0)){C=10;break}c[q>>2]=Kc(c[l>>2]|0,c[(c[m>>2]|0)+(c[s>>
;2]<<2)>>2]|0)|0;if(c[q>>2]|0)break;c[A>>2]=Oc(c[l>>2]|0,q)|0;if(c[q>>
;2]|0)break;c[w>>2]=(c[w>>2]|0)+((c[A>>2]|0)+6);c[s>>2]=(c[s>>2]|0)+1}a:do if((
C|0)==10?(c[v>>2]=bc(c[u>>2]|0,(c[w>>2]|0)+2|0,q)|0,(c[q>>2]|0)==0):0){a[c[v>>
2]>>0]=-128;a[(c[v>>2]|0)+1>>0]=1;a[(c[v>>2]|0)+2>>0]=0;a[(c[v>>2]|0
)+3>>0]=0;a[(c[v>>2]|0)+4>>0]=0;a[(c[v>>2]|0)+5>>0]=0;c[y>>2]=6;c[x
x3e;>2]=2;c[t>>2]=0;c[B>>2]=1;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[n>>
;2]|0)){C=31;break}c[q>>2]=Kc(c[l>>2]|0,c[(c[m>>2]|0)+(c[s>>2]<<2)>>
2]|0)|0;if(c[q>>2]|0)break;c[z>>2]=Oc(c[l>>2]|0,q)|0;if(c[q>>2]|0)break a;c[r>>
;2]=(Pc(c[l>>2]|0,q)|0)&65535;if(c[q>>2]|0)break a;if(c[r>>2]>>8|0){if((c[z>
x3e;2]|0)>2)c[z>>2]=(c[z>>2]|0)-2;else c[z>>2]=0;if((c[r>>2]>>8|0)==(c[B
x3e;>2]|0))c[t>>2]=(c[t>>2]|0)+(c[z>>2]|0);else{if(((c[x>>2]|0)+3|0)>((c[w>
;>2]|0)+2|0))break;a[(c[v>>2]|0)+(c[x>>2]|0)>>0]=c[t>>2];a[(c[v>>2]|0)+((
c[x>>2]|0)+1)>>0]=c[t>>2]>>8;a[(c[v>>2]|0)+((c[x>>2]|0)+2)>>
;0]=c[t>>2]>>16;a[(c[v>>2]|0)+((c[x>>2]|0)+3)>>0]=c[t>>2]>>
;24;if((c[r>>2]>>8|0)==5){C=31;break}if(((c[y>>2]|0)+6|0)>((c[w>>2]|0)+2|0))break;d
=c[y>>2]|0;c[y>>2]=d+1;a[(c[v>>2]|0)+d>>0]=-128;c[B>>2]=c[r>>2]>
;>8;c[t>>2]=c[z>>2];d=c[B>>2]&255;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>
;>2]|0)+A>>0]=d;c[x>>2]=c[y>>2];A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>
;2]|0)+A>>0]=0;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>2]|0)+A>>0]=0;A=c[y>>
2]|0;c[y>>2]=A+1;a[(c[v>>2]|0)+A>>0]=0;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>
;2]|0)+A>>0]=0}c[q>>2]=1;if((c[y>>2]|0)>(c[w>>2]|0))break;if(((c[y>>2]|0)+(
c[z>>2]|0)|0)>(c[w>>2]|0))break;c[q>>2]=Rc(c[l>>2]|0,(c[v>>2]|0)+(c[y>
;>2]|0)|0,c[z>>2]|0)|0;if(c[q>>2]|0)break;c[y>>2]=(c[y>>2]|0)+(c[z>>2]|0)}
c[s>>2]=(c[s>>2]|0)+1}if(((C|0)==31?((c[y>>2]|0)+2|0)<=((c[w>>2]|0)+2|0):0)?(C=c[y
x3e;>2]|0,c[y>>2]=C+1,a[(c[v>>2]|0)+C>>0]=-128,C=c[y>>2]|0,c[y>>2]=C+1,a[(
c[v>>2]|0)+C>>0]=3,((c[x>>2]|0)+3|0)<=((c[w>>2]|0)+2|0)):0){a[(c[v>>2]|0)+(
c[x>>2]|0)>>0]=c[t>>2];a[(c[v>>2]|0)+((c[x>>2]|0)+1)>>0]=c[t>
x3e;2]>>8;a[(c[v>>2]|0)+((c[x>>2]|0)+2)>>0]=c[t>>2]>>16;a[(c[v>
x3e;2]|0)+((c[x>>2]|0)+3)>>0]=c[t>>2]>>24;c[j>>2]=Tc(c[k>>2]|0,c[v
x3e;>2]|0,c[y>>2]|0,c[o>>2]|0,10410,c[p>>2]|0)|0;C=c[j>>2]|0;i=D;return C|0}Fb(c[u
x3e;>2]|0,c[v>>2]|0);c[v>>2]=0}while(0);c[j>>2]=c[q>>2];C=c[j>>2]|0;i=D;return
C|0}function cd(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;w=i;i=i+64|0;o=w+52|0;p=w+48|0;h=w+44|0;j=w+40|0;k=w+36|0;l=w+32|0;q=w+28|0;n=w+24|0;v=w+20|0;r=w+16|0;m=w+12|0;u=w+8|0;t=w+4|
0;s=w;c[p>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[q>>2]=g;c[
n>>2]=c[c[p>>2]>>2];c[s>>2]=0;if((c[l>>2]|0)==-1)c[l>>2]=0;if((c[l
x3e;>2]|0)>=(c[k>>2]|0)){c[o>>2]=1;v=c[o>>2]|0;i=w;return v|0}c[m>>2]=c[(c[j
x3e;>2]|0)+(c[l>>2]<<2)>>2];c[r>>2]=Kc(c[h>>2]|0,c[m>>2]|0)|0;if
((c[r>>2]|0)==0?(c[u>>2]=Oc(c[h>>2]|0,r)|0,(c[r>>2]|0)==0):0){if((c[u>>2]|0)==-
1){c[o>>2]=1;v=c[o>>2]|0;i=w;return v|0}c[r>>2]=Lc(c[p>>2]|0,c[h>>2]|0,c[l>
;>2]|0,0,0,c[q>>2]|0)|0;if(c[r>>2]|0?(Kc(c[h>>2]|0,(c[m>>2]|0)+4|0)|0)==0:0){c[v>
;>2]=bc(c[n>>2]|0,c[u>>2]|0,r)|0;if(c[r>>2]|0){c[o>>2]=c[r>>2];v=c[o>
;>2]|0;i=w;return v|0}c[r>>2]=Rc(c[h>>2]|0,c[v>>2]|0,c[u>>2]|0)|0;if(!(c[r>>
;2]|0)){if((c[u>>2]|0)>4)h=($r(c[v>>2]|0,10416,4)|0)!=0^1;else h=0;c[t>>2]=h&1;c[r>
x3e;2]=Tc(c[p>>2]|0,c[v>>2]|0,c[u>>2]|0,c[s>>2]|0,c[t>>2]|0?11217:10489,c[q>
;>2]|0)|0}}}c[o>>2]=c[r>>2];v=c[o>>2]|0;i=w;return v|0}function dd(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;y=i;i=i+192|0;j=y+176|0;z=y+172|0;k=y+168
|0;l=y+164|0;m=y+160|0;t=y+156|0;o=y+152|0;r=y+148|0;q=y+112|0;u=y+76|0;p=y+40|0;s=y+181|0;w=y+180|0;n=y+8|0;v=y;c[j>>
2]=b;c[z>>2]=e;c[k>>2]=f;c[l>>2]=g;c[m>>2]=h;c[t>>2]=c[c[j>>2]>
x3e;2];c[o>>2]=2;a[w>>0]=0;c[v>>2]=0;ed(c[j>>2]|0,c[z>>2]|0,c[(c[m>>
2]|0)+12>>2]|0,q,u,p);c[r>>2]=0;while(1){if((c[r>>2]|0)>=9)break;a[s>>0]=rd(c[r>
;>2]|0)|0;if(!(d[s>>0]|0?(d[w>>0]|0)!=0:0))x=5;if((x|0)==5?(x=0,(c[p+(c[r>>2]<<2)
x3e;>2]|0)==0):0){c[n>>2]=4;if(c[q+(c[r>>2]<<2)>>2]|0)g=c[q+(c[r>>2]<
;<2)>>2]|0;else g=c[(c[m>>2]|0)+12>>2]|0;c[n+12>>2]=g;c[o>>2]=tc(c[j>
;>2]|0,n,v)|0;if((d[s>>0]|0)!=0&(c[o>>2]|0)==81)a[w>>0]=1;if(!(c[o>>2]|0)){c[o
>>2]=Zc(c[j>>2]|0,c[v>>2]|0,c[u+(c[r>>2]<<2)>>2]|0,c[k>>2]|
0,c[l>>2]|0)|0;vc(c[v>>2]|0,0);if(!(c[o>>2]|0))break;if(a[s>>0]|0)a[w>>0]=1}}c
[r>>2]=(c[r>>2]|0)+1}c[r>>2]=0;while(1){if((c[r>>2]|0)>=9)break;if(c[q+(c[r>
x3e;2]<<2)>>2]|0){Fb(c[t>>2]|0,c[q+(c[r>>2]<<2)>>2]|0);c[q+(c[r>
;>2]<<2)>>2]=0}c[r>>2]=(c[r>>2]|0)+1}if(!(c[o>>2]|0)){z=c[o>>2]|
0;i=y;return z|0}c[o>>2]=2;z=c[o>>2]|0;i=y;return z|0}function ed(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;p=i;i=i+32|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;m=p+8|0;n=p+4|0;o=p;c[h>>2
]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=0;while
(1){if((c[o>>2]|0)>=9)break;c[(c[l>>2]|0)+(c[o>>2]<<2)>>2]=0;if(c[j>
x3e;2]|0){b=Kc(c[j>>2]|0,0)|0;c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]=b}else c[(c[n>
;>2]|0)+(c[o>>2]<<2)>>2]=0;if(!(c[(c[n>>2]|0)+(c[o>>2]<<2)>
;>2]|0)){b=Za[c[96+(c[o>>2]<<3)>>2]&31](c[h>>2]|0,c[j>>2]|0,c[k>
;>2]|0,(c[l>>2]|0)+(c[o>>2]<<2)|0,(c[m>>2]|0)+(c[o>>2]<<2)|0)|0
;c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]=b}c[o>>2]=(c[o>>2]|0)+1}i=p;return}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,m=0,n=0,o=0;n=i;i=i+32|0;g=n+24|0;h=n+20|0;j=n+16|0;k=n+12|
0;o=n+8|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[o>>2]=e;c[l>>2]=f;c[m>
;>2]=333319;c[c[o>>2]>>2]=0;if(!(c[j>>2]|0)){c[g>>2]=81;o=c[g>>2]|0;i=n;return
o|0}else{c[g>>2]=gd(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[m>>2]|0,c[l>>2]|
0)|0;o=c[g>>2]|0;i=n;return o|0}return 0}function gd(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,v=0,w=0,x=0;v=i;i=i+64|0;r=v+52|0;x=v+48|0;m=v+44|0;w=v+40|0;j=v+36|0;s=v+32|0;k=v+28|0;u=v+24|0;l=v
+20|0;q=v+56|0;p=v+16|0;n=v+12|0;t=v+8|0;o=v+4|0;c[x>>2]=a;c[m>>2]=d;c[w>>2]=f;c[j>>2]=g
;c[s>>2]=h;c[l>>2]=0;c[o>>2]=0;c[v>>2]=2;c[x>>2]=c[x>>2];c[w>
x3e;2]=c[w>>2];c[l>>2]=c[l>>2];c[o>>2]=c[o>>2];c[k>>2]=Oc(c[m>
x3e;2]|0,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}if((c[k>>
;2]|0)!=(c[j>>2]|0)){c[r>>2]=2;x=c[r>>2]|0;i=v;return x|0}c[l>>2]=Oc(c[m>>2]|0
,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}c[u>>2]=Qc(c[m
x3e;>2]|0,16)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}b[q>
x3e;1]=Pc(c[m>>2]|0,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return
x|0}if(!(e[q>>1]|0)){c[r>>2]=2;x=c[r>>2]|0;i=v;return x|0}c[p>>2]=0;while(1){if((c[p>
;>2]|0)>=(e[q>>1]|0|0)){j=24;break}c[n>>2]=Oc(c[m>>2]|0,u)|0;if(c[u>>2]|0){j=16
;break}j=c[m>>2]|0;if((c[n>>2]|0)==2){c[t>>2]=Oc(j,u)|0;if((c[u>>2]|0)==0?(c[o>>
;2]=Oc(c[m>>2]|0,u)|0,(c[u>>2]|0)==0):0){j=20;break}}else{c[u>>2]=Qc(j,8)|0;if(c[u>>2]|0
){j=22;break}}c[p>>2]=(c[p>>2]|0)+1}if((j|0)==16){c[r>>2]=c[u>>2];x=c[r>>2]|0;
i=v;return x|0}else if((j|0)==20){c[c[s>>2]>>2]=c[t>>2];c[r>>2]=0;x=c[r>>2]|0;
i=v;return x|0}else if((j|0)==22){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}else if((j|0)==24){c[
r>>2]=2;x=c[r>>2]|0;i=v;return x|0}return 0}function hd(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;n=i;i=i+32|0;g=n+24|0;h=n+20|0;j=n+16|0;k=n+12|0;o=n+8|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>
;2]=b;c[k>>2]=d;c[o>>2]=e;c[l>>2]=f;c[m>>2]=333312;c[c[o>>2]>>2]=0;if
(!(c[j>>2]|0)){c[g>>2]=81;o=c[g>>2]|0;i=n;return o|0}else{c[g>>2]=gd(c[h>>2]|0
,c[j>>2]|0,c[k>>2]|0,c[m>>2]|0,c[l>>2]|0)|0;o=c[g>>2]|0;i=n;return o|0}return
0}function id(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;o=i;i=i+48|0;g=o+32|0;h=o+28|
0;q=o+24|0;p=o+20|0;j=o+16|0;k=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;c[p>>2]=d;c[j>
x3e;2]=e;c[k>>2]=f;c[q>>2]=c[q>>2];c[m>>2]=c[c[h>>2]>>2];c[n>
x3e;2]=jd(c[m>>2]|0,c[p>>2]|0,10421)|0;if(!(c[n>>2]|0)){c[g>>2]=64;q=c[g>>2]|0
;i=o;return q|0}c[l>>2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;if(c[l>>2]|0){Fb(c
[m>>2]|0,c[n>>2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c[n>>2];c[g>
x3e;2]=c[l>>2];q=c[g>>2]|0;i=o;return q|0}function jd(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;f=m+32|0;p=m+28|0;g=m+24|0;h=m+20|0;j=m+16|0;l=m+12|0;k=m+8|0;o=m+4|0;n=m;c[p>>2]=b;c[g>
;>2]=d;c[h>>2]=e;c[j>>2]=0;c[n>>2]=0;c[n>>2]=c[n>>2];d=cs(c[g>>
2]|0)|0;c[o>>2]=d+(cs(c[h>>2]|0)|0);c[j>>2]=bc(c[p>>2]|0,(c[o>>2]|0)+1|0,n)|0;
if(c[n>>2]|0){c[f>>2]=0;p=c[f>>2]|0;i=m;return p|0}c[l>>2]=xs(c[g>>2]|0,47)|0;
if(c[l>>2]|0){as(c[j>>2]|0,c[g>>2]|0,(c[l>>2]|0)-(c[g>>2]|0)+1|0)|0;a[(c[j>
;>2]|0)+((c[l>>2]|0)-(c[g>>2]|0)+1)>>0]=0;c[k>>2]=(c[l>>2]|0)+1}else{c[k
x3e;>2]=c[g>>2];a[c[j>>2]>>0]=0}zs(c[j>>2]|0,c[h>>2]|0)|0;zs(c[j>>
;2]|0,c[k>>2]|0)|0;c[f>>2]=c[j>>2];p=c[f>>2]|0;i=m;return p|0}function kd(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;m=i;i=i+64|0;e=m+60|0;f=m+56|0;g=m+52|0;h=m+48|0;n=m+16|0;l=m+8|0;k=m+4|0;j=m
;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=0;c[n>>2]=4;c[n+12>>2]=c[g>
;>2];c[j>>2]=tc(c[f>>2]|0,n,l)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];n=c[e>
;>2]|0;i=m;return n|0}else{c[j>>2]=fd(c[f>>2]|0,c[l>>2]|0,c[g>>2]|0,k,c[h>>
;2]|0)|0;vc(c[l>>2]|0,0);c[e>>2]=c[j>>2];n=c[e>>2]|0;i=m;return n|0}return 0}function ld
(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;q=i;i=i+48|0;m=q+36|0;r=q+32|0;s=q+28|
0;h=q+24|0;n=q+20|0;o=q+16|0;k=q+12|0;p=q+8|0;l=q+4|0;j=q;c[r>>2]=b;c[s>>2]=d;c[h>>2]=e;c[n>
x3e;2]=f;c[o>>2]=g;c[j>>2]=cs(c[h>>2]|0)|0;c[s>>2]=c[s>>2];c[l>>2]=c
[c[r>>2]>>2];if(((c[j>>2]|0)+18|0)>2147483647){c[m>>2]=10;s=c[m>>2]|0;i=q
;return s|0}c[p>>2]=bc(c[l>>2]|0,(c[j>>2]|0)+18|0,k)|0;if(c[k>>2]|0){c[m>>2]=c
[k>>2];s=c[m>>2]|0;i=q;return s|0}else{Ss(c[p>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;h=(
c[p>>2]|0)+(c[j>>2]|0)|0;j=10424;e=h+18|0;do{a[h>>0]=a[j>>0]|0;h=h+1|0;j=j+1|0}while((h|
0)<(e|0));c[c[n>>2]>>2]=c[p>>2];c[c[o>>2]>>2]=0;c[m>>2]=0;s=c[m
>>2]|0;i=q;return s|0}return 0}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,o=0,p=
0,q=0,r=0,s=0;q=i;i=i+48|0;h=q+36|0;r=q+32|0;s=q+28|0;j=q+24|0;k=q+20|0;l=q+16|0;n=q+12|0;p=q+8|0;o=q+4|0;m=q;c[r>>2]=
b;c[s>>2]=d;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[m>>2]=cs(c[j>>2]|0)|0;c[
s>>2]=c[s>>2];c[o>>2]=c[c[r>>2]>>2];if(((c[m>>2]|0)+6|0)>2147483647
){c[h>>2]=10;s=c[h>>2]|0;i=q;return s|0}c[p>>2]=bc(c[o>>2]|0,(c[m>>2]|0)+6|0,n
)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];s=c[h>>2]|0;i=q;return s|0}else{Ss(c[p>>2]|0
,c[j>>2]|0,c[m>>2]|0)|0;s=(c[p>>2]|0)+(c[m>>2]|0)|0;a[s>>0]=a[10442]|0;a[s+1
x3e;>0]=a[10443]|0;a[s+2>>0]=a[10444]|0;a[s+3>>0]=a[10445]|0;a[s+4>>0]=a[10446]|0;a[s+5>
x3e;0]=a[10447]|0;c[c[k>>2]>>2]=c[p>>2];c[c[l>>2]>>2]=0;c[h>>2]=0;s=
c[h>>2]|0;i=q;return s|0}return 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,m=0,n=0
,o=0,p=0;l=i;i=i+32|0;g=l+28|0;o=l+24|0;p=l+20|0;m=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;n=l;c[o>>2]=a;c[p>>2]=b;c
[m>>2]=d;c[h>>2]=e;c[j>>2]=f;c[p>>2]=c[p>>2];c[n>>2]=c[c[o>>
;2]>>2];c[k>>2]=jd(c[n>>2]|0,c[m>>2]|0,10448)|0;if(c[k>>2]|0){c[c[h>>
;2]>>2]=c[k>>2];c[c[j>>2]>>2]=0;c[g>>2]=0;p=c[g>>2]|0;i=l;return p|0
}else{c[g>>2]=64;p=c[g>>2]|0;i=l;return p|0}return 0}function od(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+32|0;g=l+28|0;o=l+24|0;p=l+20|0;m=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;n=l;c[o>>
;2]=a;c[p>>2]=b;c[m>>2]=d;c[h>>2]=e;c[j>>2]=f;c[p>>2]=c[p>>2];c[n>
;>2]=c[c[o>>2]>>2];c[k>>2]=jd(c[n>>2]|0,c[m>>2]|0,10462)|0;if(c[k>
x3e;2]|0){c[c[h>>2]>>2]=c[k>>2];c[c[j>>2]>>2]=0;c[g>>2]=0;p=c[g>
;>2]|0;i=l;return p|0}else{c[g>>2]=64;p=c[g>>2]|0;i=l;return p|0}return 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;o=i;i=i+48|0;g=o+32|0;h=o+28|0;q=o+24|0;p=o+20|0;j=o+16|0;k=
o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;c[p>>2]=d;c[j>>2]=e;c[k>>2]=f;c
[q>>2]=c[q>>2];c[m>>2]=c[c[h>>2]>>2];c[n>>2]=jd(c[m>>2]|0,
c[p>>2]|0,10473)|0;if(!(c[n>>2]|0)){c[g>>2]=64;q=c[g>>2]|0;i=o;return q|0}c[l>>
;2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;if(c[l>>2]|0){Fb(c[m>>2]|0,c[n>
x3e;2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c[n>>2];c[g>>2]=c[l>>2];q=c[g
>>2]|0;i=o;return q|0}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,p=0,q=0
;o=i;i=i+48|0;g=o+32|0;h=o+28|0;q=o+24|0;p=o+20|0;j=o+16|0;k=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;
c[p>>2]=d;c[j>>2]=e;c[k>>2]=f;c[q>>2]=c[q>>2];c[m>>2]=c[c[h>>
;2]>>2];c[n>>2]=jd(c[m>>2]|0,c[p>>2]|0,10475)|0;if(!(c[n>>2]|0)){c[g>>
;2]=64;q=c[g>>2]|0;i=o;return q|0}c[l>>2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;
if(c[l>>2]|0){Fb(c[m>>2]|0,c[n>>2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c
[n>>2];c[g>>2]=c[l>>2];q=c[g>>2]|0;i=o;return q|0}function rd(b){b=b|0;var d=0,e=0,f=0;e
=i;i=i+16|0;d=e+4|0;f=e;c[f>>2]=b;if(((sd(c[f>>2]|0)|0)+-3|0)>>>0<2){a[d>>0]=1
;f=a[d>>0]|0;i=e;return f|0}else{a[d>>0]=0;f=a[d>>0]|0;i=e;return f|0}return 0}function sd(a){a=a|
0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[d>>2]=a;if((c[d>>2]|0)>>>0>=9){c[b>>
;2]=-2;a=c[b>>2]|0;i=e;return a|0}else{c[b>>2]=c[96+(c[d>>2]<<3)+4>>2];a=c[b
x3e;>2]|0;i=e;return a|0}return 0}function td(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|0)+4>>2];c[(c[e>>2]|0)+4>>2
]=0;c[c[e>>2]>>2]=c[f>>2];a=c[e>>2]|0;if(c[f>>2]|0){c[(c[f>>2]|0)+4
x3e;>2]=a;e=c[e>>2]|0;f=c[d>>2]|0;f=f+4|0;c[f>>2]=e;i=g;return}else{c[c[d>>2]>
x3e;2]=a;e=c[e>>2]|0;f=c[d>>2]|0;f=f+4|0;c[f>>2]=e;i=g;return}}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;n=i;i=i+48|0;d=n+32|0;e=n+28|0;f=n+24|0;j=n+20|0;k=n+16|0;h=n+12|0;g=n+8|0;m=n+4|0;l=n;c[e
>>2]=a;c[f>>2]=b;c[m>>2]=0;c[l>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=35;m=c
[d>>2]|0;i=n;return m|0}if(!(c[f>>2]|0)){c[d>>2]=36;m=c[d>>2]|0;i=n;return m|0}if(!(c[(c
[e>>2]|0)+96>>2]|0)){c[d>>2]=34;m=c[d>>2]|0;i=n;return m|0}c[c[f>>2]>>
;2]=0;c[h>>2]=c[(c[e>>2]|0)+96>>2];c[g>>2]=c[(c[h>>2]|0)+20>>2];c[k
x3e;>2]=c[(c[e>>2]|0)+100>>2];c[m>>2]=bc(c[k>>2]|0,c[(c[g>>2]|0)+40>
x3e;2]|0,j)|0;if((c[j>>2]|0)==0?(c[l>>2]=bc(c[k>>2]|0,12,j)|0,(c[j>>2]|0)==0):0){c[c[m
x3e;>2]>>2]=c[e>>2];c[(c[m>>2]|0)+40>>2]=0;if(c[(c[g>>2]|0)+56>>
;2]|0)c[j>>2]=Ta[c[(c[g>>2]|0)+56>>2]&63](c[m>>2]|0)|0;if(!(c[j>>2]|0)){c
[c[f>>2]>>2]=c[m>>2];c[(c[l>>2]|0)+8>>2]=c[m>>2];td((c[e>>
2]|0)+108|0,c[l>>2]|0)}}if(c[j>>2]|0){Fb(c[k>>2]|0,c[l>>2]|0);c[l>>2]=0;Fb(c[k
>>2]|0,c[m>>2]|0);c[m>>2]=0}c[d>>2]=c[j>>2];m=c[d>>2]|0;i=n;return m
|0}function vd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;e=h+12|0;d=h+8|0;f=h+4|0;g=h;c[b>>2]=a;c[e
x3e;>2]=35;if(!(c[b>>2]|0)){g=c[e>>2]|0;i=h;return g|0}if(!(c[(c[b>>2]|0)+96>>2]|0)){
g=c[e>>2]|0;i=h;return g|0}a=(c[(c[b>>2]|0)+128>>2]|0)+60|0;c[a>>2]=(c[a>>2]|0
)+-1;if((c[(c[(c[b>>2]|0)+128>>2]|0)+60>>2]|0)>>>0>0){c[e>>2]=0;g=c[
e>>2]|0;i=h;return g|0}c[d>>2]=c[(c[b>>2]|0)+96>>2];c[f>>2]=c[(c[d>>
2]|0)+8>>2];c[g>>2]=Rb((c[d>>2]|0)+24|0,c[b>>2]|0)|0;if(!(c[g>>2]|0)){g=c[e>
;>2]|0;i=h;return g|0}wd((c[d>>2]|0)+24|0,c[g>>2]|0);Fb(c[f>>2]|0,c[g>>2]|0);c[g>
;>2]=0;xd(c[f>>2]|0,c[b>>2]|0,c[d>>2]|0);c[e>>2]=0;g=c[e>>2]|0;i=h;return
g|0}function wd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+12|0;h=g+8|0;d=g+4|0;f=g;c[e>>2]=a;c[h>
;>2]=b;c[d>>2]=c[c[h>>2]>>2];c[f>>2]=c[(c[h>>2]|0)+4>>2];a=c[f
x3e;>2]|0;if(c[d>>2]|0)c[(c[d>>2]|0)+4>>2]=a;else c[c[e>>2]>>2]=a;a=c[d
x3e;>2]|0;if(c[f>>2]|0){c[c[f>>2]>>2]=a;i=g;return}else{c[(c[e>>2]|0)+4>>
2]=a;i=g;return}}function xd(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[(c[g>>2]|0)+20>>2];if(c[(c[f>
x3e;2]|0)+116+4>>2]|0)Va[c[(c[f>>2]|0)+116+4>>2]&63](c[(c[f>>2]|0)+116>>2
]|0);while(1){d=c[f>>2]|0;if(!(c[(c[f>>2]|0)+84>>2]|0))break;Bc(c[d+84>>2]|0)}zd(d+108|0
,7,c[e>>2]|0,c[g>>2]|0);c[(c[f>>2]|0)+88>>2]=0;if(c[(c[f>>2]|0)+44+4>>
;2]|0)Va[c[(c[f>>2]|0)+44+4>>2]&63](c[f>>2]|0);Ic(c[f>>2]|0,c[e>>2]|0);if
(c[(c[h>>2]|0)+52>>2]|0)Va[c[(c[h>>2]|0)+52>>2]&63](c[f>>2]|0);vc(c[(c[f
x3e;>2]|0)+104>>2]|0,(c[(c[f>>2]|0)+8>>2]&1024|0)!=0&1);c[(c[f>>2]|0)+104
>>2]=0;if(!(c[(c[f>>2]|0)+128>>2]|0)){g=c[e>>2]|0;h=c[f>>2]|0;Fb(g,h);c[f>
;>2]=0;i=j;return}Fb(c[e>>2]|0,c[(c[f>>2]|0)+128>>2]|0);c[(c[f>>2]|0)+128>>
;2]=0;g=c[e>>2]|0;h=c[f>>2]|0;Fb(g,h);c[f>>2]=0;i=j;return}function yd(a,b,d){a=a|0;b=b|0;d=d|0;var
e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[(c[f>>
;2]|0)+4+4>>2]|0)Va[c[(c[f>>2]|0)+4+4>>2]&63](c[f>>2]|0);if(c[(c[(c[g>>2]|
0)+20>>2]|0)+60>>2]|0)Va[c[(c[(c[g>>2]|0)+20>>2]|0)+60>>2]&63](c[f>
x3e;2]|0);Fb(c[e>>2]|0,c[(c[f>>2]|0)+40>>2]|0);c[(c[f>>2]|0)+40>>2]=0;Fb(c[e
x3e;>2]|0,c[f>>2]|0);c[f>>2]=0;i=h;return}function zd(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;c[f>>2]=a;c[g>>2]=b
;c[h>>2]=d;c[j>>2]=e;c[k>>2]=c[c[f>>2]>>2];while(1){if(!(c[k>>2]|0))
break;c[m>>2]=c[(c[k>>2]|0)+4>>2];c[l>>2]=c[(c[k>>2]|0)+8>>2];if(c[g
>>2]|0)Ua[c[g>>2]&31](c[h>>2]|0,c[l>>2]|0,c[j>>2]|0);Fb(c[h>>2]|
0,c[k>>2]|0);c[k>>2]=0;c[k>>2]=c[m>>2]}c[c[f>>2]>>2]=0;c[(c[f>
x3e;2]|0)+4>>2]=0;i=n;return}function Ad(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;s=i;i=i+48|0;h=s+28|0;j=s+24|0;k=s+20|0;l=s+32|0;m=s+16|0;p=s+12|0;q=s+8|0;o=s+4|0;n=s;c[j>>2]=b;c[k>>2]=
e;a[l>>0]=f;c[m>>2]=g;if(!(c[(c[j>>2]|0)+8>>2]&2)){c[h>>2]=35;r=c[h>
x3e;2]|0;i=s;return r|0}if(c[c[k>>2]>>2]|0){c[h>>2]=7;r=c[h>>2]|0;i=s;return r|0}b=c[(c[
k>>2]|0)+4>>2]|0;if(c[(c[k>>2]|0)+12>>2]|0)b=((_(b,c[(c[k>>2]|0)+12>>
;2]|0)|0)+36|0)/72|0;c[q>>2]=b;b=c[(c[k>>2]|0)+8>>2]|0;if(c[(c[k>>2]|0)+16>>2]|
0)b=((_(b,c[(c[k>>2]|0)+16>>2]|0)|0)+36|0)/72|0;c[o>>2]=b;if(c[(c[k>>2]|0)+4>>
2]|0?!(c[(c[k>>2]|0)+8>>2]|0):0)c[o>>2]=c[q>>2];else r=12;if(((r|0)==12?(c[(c[k>>
;2]|0)+4>>2]|0)==0:0)?c[(c[k>>2]|0)+8>>2]|0:0)c[q>>2]=c[o>>2];c[q>>2
]=(c[q>>2]|0)+32&-64;c[o>>2]=(c[o>>2]|0)+32&-64;c[p>>2]=0;while(1){if((c[p>
;>2]|0)>=(c[(c[j>>2]|0)+28>>2]|0)){r=24;break}c[n>>2]=(c[(c[j>>2]|0)+32>
x3e;2]|0)+(c[p>>2]<<4);if((c[o>>2]|0)==((c[(c[n>>2]|0)+12>>2]|0)+32&-64|0
)){if((c[q>>2]|0)==((c[(c[n>>2]|0)+8>>2]|0)+32&-64|0))break;if(d[l>>0]|0|0)break}c[
p>>2]=(c[p>>2]|0)+1}if((r|0)==24){c[h>>2]=23;r=c[h>>2]|0;i=s;return r|0}if(c[m>>
;2]|0)c[c[m>>2]>>2]=c[p>>2];c[h>>2]=0;r=c[h>>2]|0;i=s;return r|0}function Bd(a
,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c
[(c[d>>2]|0)+4>>2];if((c[(c[d>>2]|0)+12>>2]|0)<0){if((c[f>>2]|0)<(c[(
c[d>>2]|0)+12>>2]|0))c[f>>2]=c[(c[d>>2]|0)+12>>2]}else if((c[(c[d>>2
]|0)+12>>2]|0)>0)c[f>>2]=(c[f>>2]|0)-(c[(c[d>>2]|0)+12>>2]|0);if(!(c[e>
;>2]|0))c[e>>2]=((c[f>>2]|0)*12|0)/10|0;c[(c[d>>2]|0)+20>>2]=(c[(c[d>>2]|
0)+8>>2]|0)-((c[(c[d>>2]|0)+16>>2]|0)/2|0);c[(c[d>>2]|0)+24>>2]=((c[e>>
;2]|0)-(c[f>>2]|0)|0)/2|0;c[(c[d>>2]|0)+28>>2]=c[e>>2];i=g;return}function Cd(a,d){a=a|0
;d=d|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;f=j+12|0;k=j+8|0;h=j+4|0;g=j;c[f>>2]=a;c[k>>2]=d;c[h>>
2]=(c[(c[f>>2]|0)+88>>2]|0)+12;c[g>>2]=(c[(c[f>>2]|0)+32>>2]|0)+(c[k>>
;2]<<4);b[c[h>>2]>>1]=(c[(c[g>>2]|0)+8>>2]|0)+32>>6;b[(c[h>>
;2]|0)+2>>1]=(c[(c[g>>2]|0)+12>>2]|0)+32>>6;if(c[(c[f>>2]|0)+8>>2]
x26;1|0){k=Vb(c[(c[g>>2]|0)+8>>2]|0,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[h>>2]|0)+4
x3e;>2]=k;k=Vb(c[(c[g>>2]|0)+12>>2]|0,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[h>>2
]|0)+8>>2]=k;Dd(c[f>>2]|0,c[h>>2]|0);i=j;return}else{c[(c[h>>2]|0)+4>>2]=65536
;c[(c[h>>2]|0)+8>>2]=65536;c[(c[h>>2]|0)+12>>2]=c[(c[g>>2]|0)+12>>2];
c[(c[h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+20>>2]=b[c[g>>2]>>1]<<
;6;c[(c[h>>2]|0)+24>>2]=c[(c[g>>2]|0)+8>>2];i=j;return}}function Dd(a,d){a=a|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]=a;c[f>>2]=d;d=(Mb(b[(c[g>>2]|0)+70>>1]|0,c
[(c[f>>2]|0)+8>>2]|0)|0)+63&-64;c[(c[f>>2]|0)+12>>2]=d;d=(Mb(b[(c[g>>2]|0
)+72>>1]|0,c[(c[f>>2]|0)+8>>2]|0)|0)&-64;c[(c[f>>2]|0)+16>>2]=d;d=(Mb(b[(
c[g>>2]|0)+74>>1]|0,c[(c[f>>2]|0)+8>>2]|0)|0)+32&-64;c[(c[f>>2]|0)+20>
;>2]=d;d=(Mb(b[(c[g>>2]|0)+76>>1]|0,c[(c[f>>2]|0)+4>>2]|0)|0)+32&-64;c[(c[f>
;>2]|0)+24>>2]=d;i=e;return}function Ed(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;o=i;i=i+32|0;j=o
+24|0;k=o+20|0;l=o+16|0;h=o+12|0;g=o+8|0;n=o+4|0;m=o;c[j>>2]=a;c[k>>2]=d;c[l>>2]=(c[(c[j>>
;2]|0)+88>>2]|0)+12;if(!(c[(c[j>>2]|0)+8>>2]&1)){n=c[l>>2]|0;c[n>>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[(c[l>>2]|0)+4>>2]=65536;c[(c[l>>2]|0)+8>>2]=65536;i=o;return}c[h>>2]=0
;c[g>>2]=0;c[n>>2]=0;c[m>>2]=0;a:do switch(c[c[k>>2]>>2]|0){case 0:{f=e[(c[j
x3e;>2]|0)+68>>1]|0;c[g>>2]=f;c[h>>2]=f;f=11;break}case 1:{f=(b[(c[j>>2]|0)+70>
;>1]|0)-(b[(c[j>>2]|0)+72>>1]|0)|0;c[g>>2]=f;c[h>>2]=f;f=11;break}case 2:{c[h>
x3e;2]=(c[(c[j>>2]|0)+52+8>>2]|0)-(c[(c[j>>2]|0)+52>>2]|0);c[g>>2]=(c[(c[j>
;>2]|0)+52+12>>2]|0)-(c[(c[j>>2]|0)+52+4>>2]|0);f=11;break}case 3:{c[h>>2]=b[(c[j
x3e;>2]|0)+76>>1];c[g>>2]=(b[(c[j>>2]|0)+70>>1]|0)-(b[(c[j>>2]|0)+72>
;>1]|0);f=11;break}case 4:{c[(c[l>>2]|0)+4>>2]=c[(c[k>>2]|0)+4>>2];c[(c[l>>
;2]|0)+8>>2]=c[(c[k>>2]|0)+8>>2];a=c[(c[l>>2]|0)+8>>2]|0;if(!(c[(c[l>>
;2]|0)+4>>2]|0)){c[(c[l>>2]|0)+4>>2]=a;break a}if(!a)c[(c[l>>2]|0)+8>>2]=c[(c[
l>>2]|0)+4>>2];break}default:f=11}while(0);do if((f|0)==11){if((c[h>>2]|0)<0)c[h>>2
]=0-(c[h>>2]|0);if((c[g>>2]|0)<0)c[g>>2]=0-(c[g>>2]|0);a=c[(c[k>>2]|0)+4
x3e;>2]|0;if(c[(c[k>>2]|0)+12>>2]|0)a=((_(a,c[(c[k>>2]|0)+12>>2]|0)|0)+36|0)/72|0;c
[n>>2]=a;a=c[(c[k>>2]|0)+8>>2]|0;if(c[(c[k>>2]|0)+16>>2]|0)a=((_(a,c[(c[k>
;>2]|0)+16>>2]|0)|0)+36|0)/72|0;c[m>>2]=a;if(!(c[(c[k>>2]|0)+4>>2]|0)){f=Vb(c[m>
;>2]|0,c[g>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=f;c[(c[l>>2]|0)+4>>2]=f;c[n>
x3e;2]=xb(c[m>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;break}f=Vb(c[n>>2]|0,c[h>>2]|0)|0;c
[(c[l>>2]|0)+4>>2]=f;if(!(c[(c[k>>2]|0)+8>>2]|0)){c[(c[l>>2]|0)+8>>2
]=c[(c[l>>2]|0)+4>>2];c[m>>2]=xb(c[n>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;break
}h=Vb(c[m>>2]|0,c[g>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=h;if((c[c[k>>2]>>2]|
0)==3){a=c[l>>2]|0;if((c[(c[l>>2]|0)+8>>2]|0)>(c[(c[l>>2]|0)+4>>2]|0)){c[(
c[l>>2]|0)+8>>2]=c[a+4>>2];break}else{c[(c[l>>2]|0)+4>>2]=c[a+8>>2];
break}}}while(0);if(c[c[k>>2]>>2]|0){c[n>>2]=Mb(e[(c[j>>2]|0)+68>>1]|0,c[(c[l
x3e;>2]|0)+4>>2]|0)|0;c[m>>2]=Mb(e[(c[j>>2]|0)+68>>1]|0,c[(c[l>>2]|0)+8
x3e;>2]|0)|0}b[c[l>>2]>>1]=(c[n>>2]|0)+32>>6;b[(c[l>>2]|0)+2>>1
]=(c[m>>2]|0)+32>>6;Dd(c[j>>2]|0,c[l>>2]|0);i=o;return}function Fd(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0?c[(
c[e>>2]|0)+8>>2]&2|0:0){if((c[f>>2]|0)>=0?(c[f>>2]|0)<(c[(c[e>>
2]|0)+28>>2]|0):0){c[g>>2]=c[(c[(c[e>>2]|0)+96>>2]|0)+20>>2];if(c[(c[g>
x3e;2]|0)+100>>2]|0){c[d>>2]=Ya[c[(c[g>>2]|0)+100>>2]&127](c[(c[e>>2]|0)+
88>>2]|0,c[f>>2]|0)|0;b=c[d>>2]|0;i=h;return b|0}else{Cd(c[e>>2]|0,c[f>>2]|0);
c[d>>2]=0;b=c[d>>2]|0;i=h;return b|0}}c[d>>2]=6;b=c[d>>2]|0;i=h;return b|0}c[d>>
;2]=35;b=c[d>>2]|0;i=h;return b|0}function Gd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e
=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=35;j=c
[d>>2]|0;i=k;return j|0}if(((c[f>>2]|0?(c[(c[f>>2]|0)+4>>2]|0)>=0:0)?(c[(c[f>
x3e;2]|0)+8>>2]|0)>=0:0)?(c[c[f>>2]>>2]|0)>>>0<5:0){c[g>>2]=c[(
c[(c[e>>2]|0)+96>>2]|0)+20>>2];if(c[(c[g>>2]|0)+96>>2]|0){c[d>>2]=Ya
[c[(c[g>>2]|0)+96>>2]&127](c[(c[e>>2]|0)+88>>2]|0,c[f>>2]|0)|0;j=c[d>
;>2]|0;i=k;return j|0}if((c[(c[e>>2]|0)+8>>2]&1|0)==0?c[(c[e>>2]|0)+8>>2]&
;2|0:0){c[h>>2]=Ad(c[e>>2]|0,c[f>>2]|0,0,j)|0;if(c[h>>2]|0){c[d>>2]=c[h>
x3e;2];j=c[d>>2]|0;i=k;return j|0}else{c[d>>2]=Fd(c[e>>2]|0,c[j>>2]|0)|0;j=c[d>>
;2]|0;i=k;return j|0}}Ed(c[e>>2]|0,c[f>>2]|0);c[d>>2]=0;j=c[d>>2]|0;i=k;return j|0}c[d
x3e;>2]=6;j=c[d>>2]|0;i=k;return j|0}function Hd(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;n=i;i=i+48|0;g=n+36|0;h=n+32|0;j=n+28|0;k=n+24|0;l=n+20|0;m=n;c[g>>2]=a;c[h>>2]=b;c[j>>2]=
d;c[k>>2]=e;c[l>>2]=f;d=c[j>>2]|0;if(c[h>>2]|0){if(!d)c[j>>2]=c[h>>2
]}else c[h>>2]=d;d=c[l>>2]|0;if(c[k>>2]|0){if(!d)c[l>>2]=c[k>>2]}else c[k>
;>2]=d;if((c[h>>2]|0)<64)c[h>>2]=64;if((c[j>>2]|0)<64)c[j>>2]=64;if(!(c[k
>>2]|0)){c[l>>2]=72;c[k>>2]=72}c[m>>2]=0;c[m+4>>2]=c[h>>2];c[m+8>
;>2]=c[j>>2];c[m+12>>2]=c[k>>2];c[m+16>>2]=c[l>>2];m=Gd(c[g>>2]|
0,m)|0;i=n;return m|0}function Id(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+16|0;g=j+12|0;d=j+8|0;h=j+4|0;e=
j;c[g>>2]=a;c[d>>2]=b;if(!(c[g>>2]|0)){c[f>>2]=35;h=c[f>>2]|0;i=j;return h|0}if
(!(c[d>>2]|0)){c[f>>2]=6;h=c[f>>2]|0;i=j;return h|0}b=c[g>>2]|0;if((c[d>>2]|0)==
1970170211){c[f>>2]=Hc(b)|0;h=c[f>>2]|0;i=j;return h|0}c[h>>2]=c[b+40>>2];if(!(c[h>
x3e;2]|0)){c[f>>2]=38;h=c[f>>2]|0;i=j;return h|0}c[e>>2]=(c[h>>2]|0)+(c[(c[g>>
2]|0)+36>>2]<<2);while(1){if((c[h>>2]|0)>>>0>=(c[e>>2]|0)>>
;>0){b=15;break}if((c[(c[c[h>>2]>>2]|0)+4>>2]|0)==(c[d>>2]|0)?(((c[h>>2]|
0)-(c[(c[g>>2]|0)+40>>2]|0)|0)/4|0|0)<=15:0){b=13;break}c[h>>2]=(c[h>>2]|0)+4}if((b
|0)==13){c[(c[g>>2]|0)+92>>2]=c[c[h>>2]>>2];c[f>>2]=0;h=c[f>>2]|0;i=
j;return h|0}else if((b|0)==15){c[f>>2]=6;h=c[f>>2]|0;i=j;return h|0}return 0}function Jd(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+16|0;g=j+12|0;d=j+8|0;h=j+4|0;e=j;c[g>>2]=a;c[d>>2]=b;if(!(c[g>
;>2]|0)){c[f>>2]=35;h=c[f>>2]|0;i=j;return h|0}c[h>>2]=c[(c[g>>2]|0)+40>>
2];if(!(c[h>>2]|0)){c[f>>2]=38;h=c[f>>2]|0;i=j;return h|0}if((Kd(c[d>>2]|0)|0)==14){c[f
x3e;>2]=6;h=c[f>>2]|0;i=j;return h|0}c[e>>2]=(c[h>>2]|0)+(c[(c[g>>2]|0)+36>>
;2]<<2);while(1){if((c[h>>2]|0)>>>0>=(c[e>>2]|0)>>>0){d=13;break
}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)?(((c[h>>2]|0)-(c[(c[g>>2]|0)+40>>
2]|0)|0)/4|0|0)<=15:0){d=11;break}c[h>>2]=(c[h>>2]|0)+4}if((d|0)==11){c[(c[g>>2]|0)+92>
x3e;2]=c[c[h>>2]>>2];c[f>>2]=0;h=c[f>>2]|0;i=j;return h|0}else if((d|0)==13){c[f>
x3e;2]=6;h=c[f>>2]|0;i=j;return h|0}return 0}function Kd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;b=k
+28|0;d=k+24|0;j=k+20|0;g=k+16|0;f=k+8|0;h=k+4|0;e=k;c[d>>2]=a;if(c[d>>2]|0?c[c[d>>2]>>2
]|0:0){c[g>>2]=c[c[d>>2]>>2];c[h>>2]=c[(c[g>>2]|0)+96>>2];c[e>
x3e;2]=0;if(c[(c[c[h>>2]>>2]|0)+32>>2]|0)c[e>>2]=Ya[c[(c[c[h>>2]>>2]|
0)+32>>2]&127](c[h>>2]|0,11426)|0;c[j>>2]=c[e>>2];if(!(c[j>>2]|0)){c[b>
;>2]=-1;j=c[b>>2]|0;i=k;return j|0}if(Ya[c[c[j>>2]>>2]&127](c[d>>2]|0,f)|0){c[
b>>2]=-1;j=c[b>>2]|0;i=k;return j|0}else{c[b>>2]=c[f+4>>2];j=c[b>>2]|0;i=k;return
j|0}}c[b>>2]=-1;j=c[b>>2]|0;i=k;return j|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,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;f=q+32|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;l=q;c[g>>
;2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=0;if(!((c[g>>2]|0)==0|(c[j>
x3e;2]|0)==0)?c[c[j>>2]>>2]|0:0){c[n>>2]=c[c[j>>2]>>2];c[o>>2]=c[(c[
n>>2]|0)+100>>2];c[l>>2]=bc(c[o>>2]|0,c[c[g>>2]>>2]|0,m)|0;do if(!(c
[m>>2]|0)){b=c[l>>2]|0;a=c[j>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4
x3e;>2];c[b+8>>2]=c[a+8>>2];c[(c[l>>2]|0)+12>>2]=c[g>>2];if(!(c[(c[g>
;>2]|0)+4>>2]|0?(c[m>>2]=Ya[c[(c[g>>2]|0)+4>>2]&127](c[l>>2]|0,c[h
x3e;>2]|0)|0,(c[m>>2]|0)!=0):0))p=7;if((p|0)==7?(p=hc(c[o>>2]|0,4,c[(c[n>>2]|0)+36>>
;2]|0,(c[(c[n>>2]|0)+36>>2]|0)+1|0,c[(c[n>>2]|0)+40>>2]|0,m)|0,c[(c[n>>2]|0)+40
>>2]=p,(c[m>>2]|0)==0):0){o=c[l>>2]|0;b=(c[n>>2]|0)+36|0;p=c[b>>2]|0;c[b>
x3e;2]=p+1;c[(c[(c[n>>2]|0)+40>>2]|0)+(p<<2)>>2]=o;break}Jc(c[l>>2]|0);c[l>
;>2]=0}while(0);if(c[k>>2]|0)c[c[k>>2]>>2]=c[l>>2];c[f>>2]=c[m>>
;2];p=c[f>>2]|0;i=q;return p|0}c[f>>2]=6;p=c[f>>2]|0;i=q;return p|0}function Md(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;m=i;i=i+32|0;e=m+24|0;f=m+20|0;g=m+16|0;l=m+12|0;k=m+8|0;j=m+4|0;h=m;c[e>>2
]=a;c[f>>2]=b;c[g>>2]=d;c[l>>2]=0;c[k>>2]=0;if((c[e>>2]|0?c[(c[e>>2]|
0)+92>>2]|0:0)?c[(c[e>>2]|0)+16>>2]|0:0){c[j>>2]=c[f>>2];c[h>>2]=c[(
c[e>>2]|0)+92>>2];do c[k>>2]=Ya[c[(c[(c[h>>2]|0)+12>>2]|0)+16>>2]&
;127](c[h>>2]|0,j)|0;while((c[k>>2]|0)>>>0>=(c[(c[e>>2]|0)+16>>2]|0)
x3e;>>0);c[l>>2]=(c[k>>2]|0)==0?0:c[j>>2]|0}if(!(c[g>>2]|0)){l=c[l>>
2]|0;i=m;return l|0}c[c[g>>2]>>2]=c[k>>2];l=c[l>>2]|0;i=m;return l|0}function Nd(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;p=i;i=i+48|0;d=p+36|0;e=p+32|0;f=p+28|0;j=p+24|0;k=p+20|0;l=p+16|0
;m=p+12|0;g=p+8|0;h=p+4|0;n=p;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=33;o=c[d>
;>2]|0;i=p;return o|0}if(!(c[f>>2]|0)){c[d>>2]=6;o=c[d>>2]|0;i=p;return o|0}if((c[(c[f>
x3e;2]|0)+16>>2]|0)>131076){c[d>>2]=4;o=c[d>>2]|0;i=p;return o|0}c[m>>2]=0;while(1){
if((c[m>>2]|0)>>>0>=(c[(c[e>>2]|0)+24>>2]|0)>>>0)break;c[l>
;>2]=c[(c[e>>2]|0)+28+(c[m>>2]<<2)>>2];if(!(Kr(c[(c[c[l>>2]>>2]|
0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0)){o=10;break}c[m>>2]=(c[m>>2]|0)+1}do if((
o|0)==10){if((c[(c[f>>2]|0)+12>>2]|0)>(c[(c[c[l>>2]>>2]|0)+12>>2]|0)){Od(
c[e>>2]|0,c[l>>2]|0)|0;break}c[d>>2]=5;o=c[d>>2]|0;i=p;return o|0}while(0);c[k>>
;2]=c[c[e>>2]>>2];c[j>>2]=0;a:do if((c[(c[e>>2]|0)+24>>2]|0)>>>
0<32){c[l>>2]=bc(c[k>>2]|0,c[(c[f>>2]|0)+4>>2]|0,j)|0;if(!(c[j>>2]|0)){c[(
c[l>>2]|0)+4>>2]=c[e>>2];c[(c[l>>2]|0)+8>>2]=c[k>>2];c[c[l>>
;2]>>2]=c[f>>2];if(!(c[c[c[l>>2]>>2]>>2]&2|0?(c[j>>2]=Td(c[l>
;>2]|0)|0,(c[j>>2]|0)!=0):0))o=19;do if((o|0)==19){if(c[c[c[l>>2]>>2]>>2]&4|0)
c[(c[e>>2]|0)+168>>2]=c[l>>2];if((c[c[c[l>>2]>>2]>>2]&1|0?(c[g
x3e;>2]=c[l>>2],c[(c[g>>2]|0)+20>>2]=c[c[l>>2]>>2],(c[c[c[g>>2]
x3e;>2]>>2]&512|0)==0):0)?(c[j>>2]=ac(c[k>>2]|0,(c[g>>2]|0)+36|0)|0,c[j>
x3e;2]|0):0)break;if(c[(c[f>>2]|0)+24>>2]|0?(c[j>>2]=Ta[c[(c[f>>2]|0)+24>>2]
x26;63](c[l>>2]|0)|0,c[j>>2]|0):0)break;n=c[l>>2]|0;m=(c[e>>2]|0)+24|0;o=c[m>>
2]|0;c[m>>2]=o+1;c[(c[e>>2]|0)+28+(o<<2)>>2]=n;break a}while(0);if(c[c[c[l>>2]
x3e;>2]>>2]&1|0?(c[h>>2]=c[l>>2],(c[c[c[h>>2]>>2]>>2]&
;512|0)==0):0)fc(c[(c[h>>2]|0)+36>>2]|0);if((c[c[c[l>>2]>>2]>>2]&2|0?(c[n
>>2]=c[l>>2],(c[(c[(c[n>>2]|0)+20>>2]|0)+36>>2]|0)==1869968492):0)?c[(c[n>
;>2]|0)+60>>2]|0:0)Va[c[(c[(c[(c[n>>2]|0)+20>>2]|0)+56>>2]|0)+20>>2]&
;63](c[(c[n>>2]|0)+60>>2]|0);Fb(c[k>>2]|0,c[l>>2]|0);c[l>>2]=0}}else c[j>
x3e;2]=48;while(0);c[d>>2]=c[j>>2];o=c[d>>2]|0;i=p;return o|0}function Od(a,b){a=a|0;b=b|0;var d=0
,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;if(!(c[e>
x3e;2]|0)){c[d>>2]=33;b=c[d>>2]|0;i=j;return b|0}a:do if(c[f>>2]|0){c[g>>2]=(c[e>
x3e;2]|0)+28;c[h>>2]=(c[g>>2]|0)+(c[(c[e>>2]|0)+24>>2]<<2);while(1){if((c[g>
;>2]|0)>>>0>=(c[h>>2]|0)>>>0)break a;if((c[c[g>>2]>>2]|0)==(
c[f>>2]|0))break;c[g>>2]=(c[g>>2]|0)+4}b=(c[e>>2]|0)+24|0;c[b>>2]=(c[b>
x3e;2]|0)+-1;c[h>>2]=(c[h>>2]|0)+-4;while(1){if((c[g>>2]|0)>>>0>=(c[h>>
;2]|0)>>>0)break;c[c[g>>2]>>2]=c[(c[g>>2]|0)+4>>2];c[g>>2]=(c[g
>>2]|0)+4}c[c[h>>2]>>2]=0;Pd(c[f>>2]|0);c[d>>2]=0;b=c[d>>2]|0;i=j;return
b|0}while(0);c[d>>2]=34;b=c[d>>2]|0;i=j;return b|0}function Pd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|
0;b=g+12|0;f=g+8|0;d=g+4|0;e=g;c[b>>2]=a;c[f>>2]=c[(c[b>>2]|0)+8>>2];c[d>>2]=c
[c[b>>2]>>2];c[e>>2]=c[(c[b>>2]|0)+4>>2];if(c[(c[b>>2]|0)+12+4>
x3e;2]|0)Va[c[(c[b>>2]|0)+12+4>>2]&63](c[b>>2]|0);if(c[e>>2]|0?(c[(c[e>>2
]|0)+168>>2]|0)==(c[b>>2]|0):0)c[(c[e>>2]|0)+168>>2]=0;if(c[c[c[b>>2]>>
;2]>>2]&2|0)Qd(c[b>>2]|0);if(c[c[c[b>>2]>>2]>>2]&1|0)Sd(c[b>>
;2]|0);if(!(c[(c[d>>2]|0)+28>>2]|0)){f=c[f>>2]|0;a=c[b>>2]|0;Fb(f,a);c[b>>2]=0
;i=g;return}Va[c[(c[d>>2]|0)+28>>2]&63](c[b>>2]|0);f=c[f>>2]|0;a=c[b>>2]|
0;Fb(f,a);c[b>>2]=0;i=g;return}function Qd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0
;f=h+4|0;g=h;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+4>>2];c[e>>2]=c[c[d>>2]
x3e;>2];c[f>>2]=Rb((c[d>>2]|0)+156|0,c[b>>2]|0)|0;if(!(c[f>>2]|0)){i=h;return}c[g
x3e;>2]=c[b>>2];if((c[(c[(c[g>>2]|0)+20>>2]|0)+36>>2]|0)==1869968492?c[(c[g>
x3e;2]|0)+60>>2]|0:0)Va[c[(c[(c[(c[g>>2]|0)+20>>2]|0)+56>>2]|0)+20>>2]&63
](c[(c[g>>2]|0)+60>>2]|0);wd((c[d>>2]|0)+156|0,c[f>>2]|0);Fb(c[e>>2]|0,c[f>
;>2]|0);c[f>>2]=0;Rd(c[d>>2]|0);i=h;return}function Rd(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]=Jb(c[d>>2]|0,1869968492,0)|0;c[(c[d>>2]|0)+164>>2]=c[e>
;>2];i=b;return}function Sd(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;zd((c[b>>2]|0)+24|0,8,c[(c[
b>>2]|0)+8>>2]|0,c[b>>2]|0);if(c[c[c[b>>2]>>2]>>2]&512|0){i=d;return
}fc(c[(c[b>>2]|0)+36>>2]|0);i=d;return}function Td(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+
32|0;b=l+24|0;f=l+20|0;g=l+16|0;e=l+12|0;h=l+8|0;j=l+4|0;d=l;c[b>>2]=a;c[f>>2]=c[(c[b>>2]|0)+4>
;>2];c[g>>2]=c[c[f>>2]>>2];c[h>>2]=0;c[h>>2]=bc(c[g>>2]|0,12,e)|
0;if(c[e>>2]|0){k=c[e>>2]|0;i=l;return k|0}c[j>>2]=c[b>>2];c[d>>2]=c[c[b>
x3e;2]>>2];c[(c[j>>2]|0)+20>>2]=c[d>>2];c[(c[j>>2]|0)+24>>2]=c[(c[d
x3e;>2]|0)+36>>2];if((c[(c[d>>2]|0)+36>>2]|0)==1869968492?c[(c[(c[d>>2]|0)+56>
x3e;2]|0)+4>>2]|0:0){c[e>>2]=Ya[c[(c[(c[d>>2]|0)+56>>2]|0)+4>>2]&127](c[g
>>2]|0,(c[j>>2]|0)+60|0)|0;if(!(c[e>>2]|0)){c[(c[j>>2]|0)+64>>2]=c[(c[(c[d>
;>2]|0)+56>>2]|0)+16>>2];c[(c[j>>2]|0)+68>>2]=c[(c[d>>2]|0)+40>>
;2];k=6}}else k=6;if((k|0)==6){c[(c[h>>2]|0)+8>>2]=c[b>>2];td((c[f>>2]|0)+156|0,c[h>
;>2]|0);Rd(c[f>>2]|0)}if(!(c[e>>2]|0)){k=c[e>>2]|0;i=l;return k|0}Fb(c[g>>2]|0,c[h
x3e;>2]|0);c[h>>2]=0;k=c[e>>2]|0;i=l;return k|0}function Ud(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]=Wc(c[g>>2]|0,c[f>>2]|0)|
0;if(!(c[d>>2]|0)){g=0;i=e;return g|0}g=c[(c[c[d>>2]>>2]|0)+20>>2]|0;i=e;return g|0}function
Vd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;j=k+12|0;g=k+8|0;f=k+4|0;h=k;c[d>>
2]=a;c[e>>2]=b;c[j>>2]=0;if(!(c[d>>2]|0)){j=c[j>>2]|0;i=k;return j|0}if(c[(c[c[d>
x3e;2]>>2]|0)+32>>2]|0)c[j>>2]=Ya[c[(c[c[d>>2]>>2]|0)+32>>2]&127
](c[d>>2]|0,c[e>>2]|0)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}c[g>>2]=c[(c
[d>>2]|0)+4>>2];c[f>>2]=(c[g>>2]|0)+28;c[h>>2]=(c[f>>2]|0)+(c[(c[g
x3e;>2]|0)+24>>2]<<2);while(1){if((c[f>>2]|0)>>>0>=(c[h>>2]|0)
x3e;>>0){d=11;break}if(((c[c[f>>2]>>2]|0)!=(c[d>>2]|0)?c[(c[c[c[f>>2]>>
;2]>>2]|0)+32>>2]|0:0)?(c[j>>2]=Ya[c[(c[c[c[f>>2]>>2]>>2]|0)+32>
;>2]&127](c[c[f>>2]>>2]|0,c[e>>2]|0)|0,c[j>>2]|0):0){d=11;break}c[f>>
;2]=(c[f>>2]|0)+4}if((d|0)==11){j=c[j>>2]|0;i=k;return j|0}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;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=b;c[h>>2]=0;
if(!(c[e>>2]|0)){c[d>>2]=6;a=c[d>>2]|0;i=j;return a|0}c[h>>2]=bc(c[e>>2]|0,200
,g)|0;if(c[g>>2]|0){c[d>>2]=c[g>>2];a=c[d>>2]|0;i=j;return a|0}c[c[h>>2]>
x3e;2]=c[e>>2];c[(c[h>>2]|0)+176>>2]=16384;a=bc(c[e>>2]|0,16384,g)|0;c[(c[h>>2
]|0)+172>>2]=a;if(c[g>>2]|0){Fb(c[e>>2]|0,c[h>>2]|0);c[h>>2]=0;c[d>>
2]=c[g>>2];a=c[d>>2]|0;i=j;return a|0}else{c[(c[h>>2]|0)+12>>2]=2;c[(c[h>>2]|0
)+16>>2]=4;c[(c[h>>2]|0)+20>>2]=4;c[(c[h>>2]|0)+196>>2]=1;c[c[f>>2]
x3e;>2]=c[h>>2];c[d>>2]=0;a=c[d>>2]|0;i=j;return a|0}return 0}function Xd(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;p=i;i=i+48|0;g=p+44|0;h=p+40|0;j=p+36|0;k=p+32|0;l=p+28|0;m=p+24|0
;o=p+4|0;n=p;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>
2]=c[(c[c[h>>2]>>2]|0)+96>>2];if(!(c[(c[(c[n>>2]|0)+20>>2]|0)+96>>2]|
0)){c[g>>2]=0;b=c[g>>2]|0;i=p;return b|0}c[o>>2]=0;c[o+4>>2]=c[j>>2];c[o+8>
;>2]=c[k>>2];if(!(c[l>>2]|0))c[l>>2]=c[m>>2];if(!(c[m>>2]|0))c[m>>
;2]=c[l>>2];if(!(c[l>>2]|0)){c[m>>2]=72;c[l>>2]=72}c[o+12>>2]=c[l>>2
];c[o+16>>2]=c[m>>2];c[g>>2]=Ya[c[(c[(c[n>>2]|0)+20>>2]|0)+96>>2]&
;127](c[h>>2]|0,o)|0;b=c[g>>2]|0;i=p;return b|0}function Yd(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;l=i;i=i+48|0;e=l+36|0;f=l+32|0;g=l+28|0;h=l+24|0;k=l+4|0;j=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=
d;c[j>>2]=c[(c[c[f>>2]>>2]|0)+96>>2];if(c[(c[(c[j>>2]|0)+20>>2]|0)+96
>>2]|0){c[k>>2]=0;c[k+4>>2]=c[g>>2]<<6;c[k+8>>2]=c[h>>2]
x3c;<6;c[k+12>>2]=0;c[k+16>>2]=0;c[e>>2]=Ya[c[(c[(c[j>>2]|0)+20>>2]|0)+96
>>2]&127](c[f>>2]|0,k)|0;b=c[e>>2]|0;i=l;return b|0}else{c[e>>2]=0;b=c[e>>
;2]|0;i=l;return b|0}return 0}function Zd(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,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;E=i;i=i+128|0;g=E+124|0;h=E+120|0;j=E+116|0;k=E+112|0;w=E+104|0;v=E+96|0;y=E+88|0;r=E+84|
0;p=E+80|0;u=E+76|0;m=E+72|0;q=E+68|0;n=E+64|0;t=E+60|0;s=E+56|0;l=E+52|0;o=E+48|0;z=E+40|0;A=E+32|0;x=E+24|0;B=E+16|0;C=E+8|0;D
=E;c[h>>2]=d;c[j>>2]=e;c[k>>2]=f;if(!((c[h>>2]|0)!=0&(c[j>>2]|0)!=0)){c[g
>>2]=6;D=c[g>>2]|0;i=E;return D|0}c[s>>2]=c[(c[j>>2]|0)+16>>2];c[l>>
2]=c[(c[j>>2]|0)+20>>2];c[n>>2]=0;c[q>>2]=0;a:while(1){if((c[q>>2]|0)>=(b
[c[h>>2]>>1]|0)){e=32;break}c[o>>2]=b[(c[(c[h>>2]|0)+12>>2]|0)+(c[q>>
;2]<<1)>>1];if((c[o>>2]|0)<0){e=34;break}c[p>>2]=(c[(c[h>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<3);f=(c[(c[h>>2]|0)+4>>2]|0)+(c[n>>2]<<3)|0;c[y
x3e;>2]=c[f>>2];c[y+4>>2]=c[f+4>>2];c[y>>2]=(c[y>>2]<<c[s>
x3e;2])-(c[l>>2]|0);c[y+4>>2]=(c[y+4>>2]<<c[s>>2])-(c[l>>2]|0);f=(c[(
c[h>>2]|0)+4>>2]|0)+(c[o>>2]<<3)|0;c[w>>2]=c[f>>2];c[w+4>>
2]=c[f+4>>2];c[w>>2]=(c[w>>2]<<c[s>>2])-(c[l>>2]|0);c[w+4>>
;2]=(c[w+4>>2]<<c[s>>2])-(c[l>>2]|0);c[v>>2]=c[y>>2];c[v+4>>
;2]=c[y+4>>2];c[r>>2]=(c[(c[h>>2]|0)+4>>2]|0)+(c[n>>2]<<3);c[u>
x3e;2]=(c[(c[h>>2]|0)+8>>2]|0)+(c[n>>2]|0);c[t>>2]=a[c[u>>2]>>0]&
;3;if((c[t>>2]|0)==2){e=34;break}if(!(c[t>>2]|0)){if((a[(c[(c[h>>2]|0)+8>>2]|0)+(c[o>
;>2]|0)>>0]&3|0)==1){c[y>>2]=c[w>>2];c[y+4>>2]=c[w+4>>2];c[p>
x3e;2]=(c[p>>2]|0)+-8}else{c[y>>2]=((c[y>>2]|0)+(c[w>>2]|0)|0)/2|0;c[y+4>>2]=((
c[y+4>>2]|0)+(c[w+4>>2]|0)|0)/2|0;c[w>>2]=c[y>>2];c[w+4>>2]=c[y+4>>2
]}c[r>>2]=(c[r>>2]|0)+-8;c[u>>2]=(c[u>>2]|0)+-1}c[m>>2]=Ya[c[c[j>>2]
x3e;>2]&127](y,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break}b:while(1){if((c[r>>2]|0)>>
;>0>=(c[p>>2]|0)>>>0){e=29;break}c[r>>2]=(c[r>>2]|0)+8;c[u>>2]=(
c[u>>2]|0)+1;c[t>>2]=a[c[u>>2]>>0]&3;switch(c[t>>2]|0){case 1:{c[z>
x3e;2]=(c[c[r>>2]>>2]<<c[s>>2])-(c[l>>2]|0);c[z+4>>2]=(c[(c[r>
x3e;2]|0)+4>>2]<<c[s>>2])-(c[l>>2]|0);c[m>>2]=Ya[c[(c[j>>2]|0)+4>
;>2]&127](z,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else continue b}case 0:{c[v>>2]=(c[c
[r>>2]>>2]<<c[s>>2])-(c[l>>2]|0);c[v+4>>2]=(c[(c[r>>2]|0)+
4>>2]<<c[s>>2])-(c[l>>2]|0);while(1){if((c[r>>2]|0)>>>0>=(
c[p>>2]|0)>>>0){e=23;break b}c[r>>2]=(c[r>>2]|0)+8;c[u>>2]=(c[u>>
;2]|0)+1;c[t>>2]=a[c[u>>2]>>0]&3;c[A>>2]=(c[c[r>>2]>>2]<
x3c;c[s>>2])-(c[l>>2]|0);c[A+4>>2]=(c[(c[r>>2]|0)+4>>2]<<c[s>
x3e;2])-(c[l>>2]|0);if((c[t>>2]|0)==1)break;if(c[t>>2]|0){e=34;break a}c[x>>2]=((c[v>
;>2]|0)+(c[A>>2]|0)|0)/2|0;c[x+4>>2]=((c[v+4>>2]|0)+(c[A+4>>2]|0)|0)/2|0;c[m>
x3e;2]=Oa[c[(c[j>>2]|0)+8>>2]&63](v,x,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a};c[v
x3e;>2]=c[A>>2];c[v+4>>2]=c[A+4>>2]}c[m>>2]=Oa[c[(c[j>>2]|0)+8>>
;2]&63](v,A,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else continue b}default:{if(((c[r>>2]|0)+
8|0)>>>0>(c[p>>2]|0)>>>0){e=34;break a}if((a[(c[u>>2]|0)+1>>0]
x26;3|0)!=2){e=34;break a}c[r>>2]=(c[r>>2]|0)+16;c[u>>2]=(c[u>>2]|0)+2;c[B>>2]=(
c[(c[r>>2]|0)+-16>>2]<<c[s>>2])-(c[l>>2]|0);c[B+4>>2]=(c[(c[r>
x3e;2]|0)+-16+4>>2]<<c[s>>2])-(c[l>>2]|0);c[C>>2]=(c[(c[r>>2]|0)+-8
x3e;>2]<<c[s>>2])-(c[l>>2]|0);c[C+4>>2]=(c[(c[r>>2]|0)+-8+4>>2]
x3c;<c[s>>2])-(c[l>>2]|0);if((c[r>>2]|0)>>>0>(c[p>>2]|0)>
x3e;>0){e=28;break b}c[D>>2]=(c[c[r>>2]>>2]<<c[s>>2])-(c[l>>2]|
0);c[D+4>>2]=(c[(c[r>>2]|0)+4>>2]<<c[s>>2])-(c[l>>2]|0);c[m>>
;2]=Wa[c[(c[j>>2]|0)+12>>2]&31](B,C,D,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else
continue b}}}if((e|0)==23)c[m>>2]=Oa[c[(c[j>>2]|0)+8>>2]&63](v,y,c[k>>2]|0)|0;else
if((e|0)==28)c[m>>2]=Wa[c[(c[j>>2]|0)+12>>2]&31](B,C,y,c[k>>2]|0)|0;else if((e|0)==
29)c[m>>2]=Ya[c[(c[j>>2]|0)+4>>2]&127](y,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;
break}c[n>>2]=(c[o>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+1}if((e|0)==32){c[g>>2]=0;D=c[
g>>2]|0;i=E;return D|0}else if((e|0)==33){c[g>>2]=c[m>>2];D=c[g>>2]|0;i=E;return D|0}else
if((e|0)==34){c[g>>2]=20;D=c[g>>2]|0;i=E;return D|0}return 0}function _d(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0;l=p+28|0;o=p+24|0;k=p+20|0;n=p+16|0;h=p+12|0;g=p+8|0;j=p+4|0;m=p;c
[e>>2]=a;c[f>>2]=d;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=p;return}a:do if(!(b[(c[e
>>2]|0)+2>>1]|0)){c[l>>2]=0;c[o>>2]=0;c[k>>2]=0;c[n>>2]=0}else{c[h
x3e;>2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=(c[h>>2]|0)+(b[(c[e>>2]|0)+2>>
;1]<<3);a=c[c[h>>2]>>2]|0;c[k>>2]=a;c[l>>2]=a;a=c[(c[h>>2]|0)+4>
;>2]|0;c[n>>2]=a;c[o>>2]=a;c[h>>2]=(c[h>>2]|0)+8;while(1){if((c[h>>2]|0)
x3e;>>0>=(c[g>>2]|0)>>>0)break a;c[j>>2]=c[c[h>>2]>>2];if((
c[j>>2]|0)<(c[l>>2]|0))c[l>>2]=c[j>>2];if((c[j>>2]|0)>(c[k>>
;2]|0))c[k>>2]=c[j>>2];c[m>>2]=c[(c[h>>2]|0)+4>>2];if((c[m>>2]|0)<
;(c[o>>2]|0))c[o>>2]=c[m>>2];if((c[m>>2]|0)>(c[n>>2]|0))c[n>>2]=
c[m>>2];c[h>>2]=(c[h>>2]|0)+8}}while(0);c[c[f>>2]>>2]=c[l>>2];c[(c[f
>>2]|0)+8>>2]=c[k>>2];c[(c[f>>2]|0)+4>>2]=c[o>>2];c[(c[f>>
2]|0)+12>>2]=c[n>>2];i=p;return}function $d(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,o=0,p=0,q=0
,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+128|0;d=F+116|0;e=F+112|0;z=F+108|0;D=F+104|0;C=F+100|0;A=F
+96|0;B=F+92|0;f=F+88|0;l=F+84|0;n=F+80|0;s=F+76|0;r=F+72|0;m=F+68|0;t=F+56|0;u=F+44|0;h=F+40|0;g=F+36|0;k=F+32|0;j=F+28|0;q=F+24
|0;x=F+20|0;o=F+16|0;p=F+12|0;v=F+8|0;w=F+4|0;y=F;c[e>>2]=a;c[z>>2]=32768;c[D>>2]=32768;c[C>
x3e;2]=-32768;c[A>>2]=0;c[B>>2]=0;c[u>>2]=c[42];c[u+4>>2]=c[43];c[u+8>>2]=c[44
];if(c[e>>2]|0?(b[(c[e>>2]|0)+2>>1]|0)>0:0){c[l>>2]=c[(c[e>>2]|0)+4>
x3e;2];c[f>>2]=c[(c[e>>2]|0)+12>>2];while(1){if((c[f>>2]|0)>>>0>=((c
[(c[e>>2]|0)+12>>2]|0)+(b[c[e>>2]>>1]<<1)|0)>>>0)break;c[h>
;>2]=32768;c[g>>2]=-32768;c[k>>2]=32768;c[j>>2]=-32768;c[n>>2]=(c[(c[e>>2
]|0)+4>>2]|0)+(b[c[f>>2]>>1]<<3);if((c[n>>2]|0)>>>0>=((c[l
>>2]|0)+16|0)>>>0){c[r>>2]=c[l>>2];while(1){if((c[r>>2]|0)>>>
;0>(c[n>>2]|0)>>>0)break;if((c[c[r>>2]>>2]|0)<(c[h>>2]|0))c[h
x3e;>2]=c[c[r>>2]>>2];if((c[c[r>>2]>>2]|0)>(c[g>>2]|0))c[g>>
;2]=c[c[r>>2]>>2];if((c[(c[r>>2]|0)+4>>2]|0)<(c[k>>2]|0))c[k>>2
]=c[(c[r>>2]|0)+4>>2];if((c[(c[r>>2]|0)+4>>2]|0)>(c[j>>2]|0))c[j>>
;2]=c[(c[r>>2]|0)+4>>2];c[r>>2]=(c[r>>2]|0)+8}if(((c[h>>2]|0)<(c[z>
x3e;2]|0)?(c[h>>2]|0)!=(c[g>>2]|0):0)?(c[k>>2]|0)!=(c[j>>2]|0):0){c[z>>2]=c[h
x3e;>2];c[D>>2]=c[k>>2];c[C>>2]=c[j>>2];c[A>>2]=c[l>>2];c[B>
;>2]=c[n>>2]}}c[f>>2]=(c[f>>2]|0)+2;c[l>>2]=(c[n>>2]|0)+8}if((c[z>
x3e;2]|0)==32768){c[d>>2]=0;E=c[d>>2]|0;i=F;return E|0}c[t>>2]=((c[D>>2]|0)*3|0)+(c[C>
;>2]|0)>>2;c[t+4>>2]=(c[D>>2]|0)+(c[C>>2]|0)>>1;c[t+8>>2]=(c[D
x3e;>2]|0)+((c[C>>2]|0)*3|0)>>2;c[m>>2]=0;while(1){if((c[m>>2]|0)>=3)break;a:while
(1){c[q>>2]=32768;c[x>>2]=-32768;c[w>>2]=0;c[v>>2]=0;c[p>>2]=0;c[o>>
2]=0;c[s>>2]=c[B>>2];c[r>>2]=c[A>>2];while(1){if((c[r>>2]|0)>>>
0>(c[B>>2]|0)>>>0)break a;if((c[(c[r>>2]|0)+4>>2]|0)==(c[t+(c[m>>2]
x3c;<2)>>2]|0))break;if((c[(c[s>>2]|0)+4>>2]|0)==(c[t+(c[m>>2]<<2)>
x3e;2]|0))break;if(!((c[(c[r>>2]|0)+4>>2]|0)<(c[t+(c[m>>2]<<2)>>2]|0)?(c[(
c[s>>2]|0)+4>>2]|0)<(c[t+(c[m>>2]<<2)>>2]|0):0))E=34;do if((E|0)==34){E=0
;if((c[(c[r>>2]|0)+4>>2]|0)>(c[t+(c[m>>2]<<2)>>2]|0)?(c[(c[s>>2
]|0)+4>>2]|0)>(c[t+(c[m>>2]<<2)>>2]|0):0)break;D=xb((c[c[r>>2]>>
;2]|0)-(c[c[s>>2]>>2]|0)|0,(c[t+(c[m>>2]<<2)>>2]|0)-(c[(c[s>>2]|0)+4
>>2]|0)|0,(c[(c[r>>2]|0)+4>>2]|0)-(c[(c[s>>2]|0)+4>>2]|0)|0)|0;c[y>>
2]=D+(c[c[s>>2]>>2]|0);if((c[y>>2]|0)<(c[q>>2]|0)){c[q>>2]=c[y>>
;2];c[o>>2]=c[s>>2];c[p>>2]=c[r>>2]}if((c[y>>2]|0)>(c[x>>2]|0)){
c[x>>2]=c[y>>2];c[v>>2]=c[s>>2];c[w>>2]=c[r>>2]}}while(0);c[s>
x3e;2]=c[r>>2];c[r>>2]=(c[r>>2]|0)+8}D=t+(c[m>>2]<<2)|0;c[D>>2]=(c[D
>>2]|0)+1}do if((c[o>>2]|0)!=0&(c[v>>2]|0)!=0){if((c[(c[o>>2]|0)+4>>2]|0)
x3c;(c[(c[p>>2]|0)+4>>2]|0)?(c[(c[v>>2]|0)+4>>2]|0)>(c[(c[w>>2]|0)+4>
;>2]|0):0){c[u+(c[m>>2]<<2)>>2]=0;break}if((c[(c[o>>2]|0)+4>>2]|0)>(
c[(c[p>>2]|0)+4>>2]|0)?(c[(c[v>>2]|0)+4>>2]|0)<(c[(c[w>>2]|0)+4>>
;2]|0):0){c[u+(c[m>>2]<<2)>>2]=1;break}c[u+(c[m>>2]<<2)>>2]=2}while(
0);c[m>>2]=(c[m>>2]|0)+1}do if((c[u>>2]|0)!=2){if((c[u>>2]|0)!=(c[u+4>>2]|0)?(
c[u>>2]|0)!=(c[u+8>>2]|0):0)break;c[d>>2]=c[u>>2];E=c[d>>2]|0;i=F;return E|0}while
(0);if((c[u+4>>2]|0)!=2?(c[u+4>>2]|0)==(c[u+8>>2]|0):0){c[d>>2]=c[u+4>>2];E=c[
d>>2]|0;i=F;return E|0}c[d>>2]=0;E=c[d>>2]|0;i=F;return E|0}c[d>>2]=0;E=c[d>>2
]|0;i=F;return E|0}function ae(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;f=h+12|0;g=h+8|0;b=h+4|0;e=h;c[d
x3e;>2]=a;c[f>>2]=c[c[d>>2]>>2];c[g>>2]=c[(c[d>>2]|0)+4>>2];j=c
[f>>2]|0;a=c[g>>2]|0;c[b>>2]=((c[f>>2]|0)>=0?j:0-j|0)|((c[g>>2]|0)>=
0?a:0-a|0);c[e>>2]=0;if((c[b>>2]|0)>=65536){c[b>>2]=c[b>>2]>>16;c[e>
x3e;2]=(c[e>>2]|0)+16}if((c[b>>2]|0)>=256){c[b>>2]=c[b>>2]>>8;c[e>
x3e;2]=(c[e>>2]|0)+8}if((c[b>>2]|0)>=16){c[b>>2]=c[b>>2]>>4;c[e>>
;2]=(c[e>>2]|0)+4}if((c[b>>2]|0)>=4){c[b>>2]=c[b>>2]>>2;c[e>>2]=(
c[e>>2]|0)+2}if((c[b>>2]|0)>=2){c[b>>2]=c[b>>2]>>1;c[e>>2]=(c[e
>>2]|0)+1}a=c[e>>2]|0;if((c[e>>2]|0)<=27){c[e>>2]=27-a;c[c[d>>2]>>
;2]=c[f>>2]<<c[e>>2];c[(c[d>>2]|0)+4>>2]=c[g>>2]<<c[e>
;>2];j=c[e>>2]|0;i=h;return j|0}else{c[e>>2]=a-27;c[c[d>>2]>>2]=c[f>>2]
x3e;>c[e>>2];c[(c[d>>2]|0)+4>>2]=c[g>>2]>>c[e>>2];c[e>>
;2]=0-(c[e>>2]|0);j=c[e>>2]|0;i=h;return j|0}return 0}function be(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k
=0,l=0;l=i;i=i+32|0;h=l+24|0;j=l+20|0;g=l+16|0;e=l+12|0;k=l+8|0;f=l+4|0;d=l;c[h>>2]=a;c[k>>2]=c[c[h>>
;2]>>2];c[f>>2]=c[(c[h>>2]|0)+4>>2];c[j>>2]=0;if((c[k>>2]|0)<0){
c[k>>2]=0-(c[k>>2]|0);c[f>>2]=0-(c[f>>2]|0);c[j>>2]=11796480}if((c[f>>
;2]|0)>0)c[j>>2]=0-(c[j>>2]|0);c[d>>2]=180;a=c[f>>2]|0;b=c[k>>2]<<
;1;if((c[f>>2]|0)<0){c[g>>2]=a+b;c[k>>2]=(c[k>>2]|0)-(c[f>>2]<<
1);c[f>>2]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)-(c[b
x3e;>2]|0)}else{c[g>>2]=a-b;c[k>>2]=(c[k>>2]|0)+(c[f>>2]<<1);c[f>>
;2]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)+(c[b>>2]|0)}
c[e>>2]=0;do{a=c[f>>2]|0;b=c[k>>2]>>c[e>>2];if((c[f>>2]|0)<0){c
[g>>2]=a+b;c[k>>2]=(c[k>>2]|0)-(c[f>>2]>>c[e>>2]);c[f>>2]=
c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)-(c[b>>2]|0)}else
{c[g>>2]=a-b;c[k>>2]=(c[k>>2]|0)+(c[f>>2]>>c[e>>2]);c[f>>2
]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)+(c[b>>2]|0)}b=(
c[e>>2]|0)+1|0;c[e>>2]=b}while((b|0)<23);a=c[j>>2]|0;if((c[j>>2]|0)>=0){c[j>
;>2]=a+16&-32;g=c[k>>2]|0;k=c[h>>2]|0;c[k>>2]=g;j=c[j>>2]|0;k=c[h>>2
]|0;k=k+4|0;c[k>>2]=j;i=l;return}else{c[j>>2]=0-(0-a+16&-32);g=c[k>>2]|0;k=c[h>>2]|
0;c[k>>2]=g;j=c[j>>2]|0;k=c[h>>2]|0;k=k+4|0;c[k>>2]=j;i=l;return}}function ce(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;f=i;i=i+48|0;b=f+36|0;e=f+32|0;m=f+28|0;k=f+24|0;n=f+20|0;l=f+16|0;d=f+12|0;h=f+8|0
;j=f+4|0;g=f;c[b>>2]=a;c[e>>2]=c[b>>2];a=c[b>>2]|0;c[b>>2]=(c[b>>2]|
0)>=0?a:0-a|0;c[m>>2]=(c[b>>2]|0)>>>16;c[k>>2]=c[b>>2]&65535;c[
n>>2]=17797;c[l>>2]=47593;c[d>>2]=_(c[n>>2]|0,c[m>>2]|0)|0;a=_(c[n>>
2]|0,c[k>>2]|0)|0;c[h>>2]=a+(_(c[l>>2]|0,c[m>>2]|0)|0);c[j>>2]=(_(c[l>>
;2]|0,c[k>>2]|0)|0)>>>16;c[g>>2]=(c[h>>2]|0)>>>0>=(c[j>>
;2]|0)>>>0?c[h>>2]|0:c[j>>2]|0;c[h>>2]=(c[h>>2]|0)+(c[j>>2]|0);
c[d>>2]=(c[d>>2]|0)+((c[h>>2]|0)>>>16);if((c[h>>2]|0)>>>0
x3e;=(c[g>>2]|0)>>>0){l=c[d>>2]|0;c[b>>2]=l;l=c[e>>2]|0;l=(l|0)>=0;m
=c[b>>2]|0;n=0-m|0;n=l?m:n;i=f;return n|0}c[d>>2]=(c[d>>2]|0)+65536;l=c[d>>2]|0;c[b>
;>2]=l;l=c[e>>2]|0;l=(l|0)>=0;m=c[b>>2]|0;n=0-m|0;n=l?m:n;i=f;return n|0}function de(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;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[j>>2]=b;c[f>
x3e;2]=d;c[g>>2]=ee(c[e>>2]|0,c[j>>2]|0)|0;if(c[g>>2]|0){j=c[g>>2]|0;i=h;return
j|0}c[c[f>>2]>>2]=c[(c[e>>2]|0)+32>>2];c[(c[e>>2]|0)+32>>2]=0;c[(c[
e>>2]|0)+36>>2]=0;j=c[g>>2]|0;i=h;return j|0}function ee(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,
j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;b=c[d>
x3e;2]|0;if(!(c[(c[d>>2]|0)+20>>2]|0)){if((c[b+8>>2]|0)>>>0<(c[(c[d>>
;2]|0)+4>>2]|0)>>>0?((c[(c[d>>2]|0)+4>>2]|0)-(c[(c[d>>2]|0)+8>>
2]|0)|0)>>>0>=(c[e>>2]|0)>>>0:0){c[(c[d>>2]|0)+32>>2]=(c[c[d>
;>2]>>2]|0)+(c[(c[d>>2]|0)+8>>2]|0);c[(c[d>>2]|0)+36>>2]=(c[(c[d>>
;2]|0)+32>>2]|0)+(c[e>>2]|0);h=(c[d>>2]|0)+8|0;c[h>>2]=(c[h>>2]|0)+(c[e>
x3e;2]|0);h=c[f>>2]|0;i=j;return h|0}c[f>>2]=85;h=c[f>>2]|0;i=j;return h|0}c[g>>2]=c[b+28
>>2];if((c[e>>2]|0)>>>0>(c[(c[d>>2]|0)+4>>2]|0)>>>0){
c[f>>2]=85;h=c[f>>2]|0;i=j;return h|0}a=cc(c[g>>2]|0,c[e>>2]|0,f)|0;c[c[d>>2]
x3e;>2]=a;if(c[f>>2]|0){h=c[f>>2]|0;i=j;return h|0}c[h>>2]=Wa[c[(c[d>>2]|0)+20>
;>2]&31](c[d>>2]|0,c[(c[d>>2]|0)+8>>2]|0,c[c[d>>2]>>2]|0,c[e>
x3e;2]|0)|0;if((c[h>>2]|0)>>>0<(c[e>>2]|0)>>>0){Fb(c[g>>2]|0,c[
c[d>>2]>>2]|0);c[c[d>>2]>>2]=0;c[f>>2]=85}c[(c[d>>2]|0)+32>>
;2]=c[c[d>>2]>>2];c[(c[d>>2]|0)+36>>2]=(c[(c[d>>2]|0)+32>>2]|0)+(c[e
>>2]|0);g=(c[d>>2]|0)+8|0;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0);h=c[f>>2]|
0;i=j;return h|0}function fe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>
x3e;2]=b;if(c[d>>2]|0?c[(c[d>>2]|0)+20>>2]|0:0){c[f>>2]=c[(c[d>>2]|0)+28>
x3e;2];Fb(c[f>>2]|0,c[c[e>>2]>>2]|0);c[c[e>>2]>>2]=0}c[c[e>>2]>
x3e;2]=0;i=g;return}function ge(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(c[(c[b>>2]|0)+
20>>2]|0){c[d>>2]=c[(c[b>>2]|0)+28>>2];Fb(c[d>>2]|0,c[c[b>>2]>
x3e;2]|0);c[c[b>>2]>>2]=0}c[(c[b>>2]|0)+32>>2]=0;c[(c[b>>2]|0)+36>>2
]=0;i=e;return}function he(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f;e=f+4|0;c[d>>2]=b;a[e>>0]=0;if((c[(c[d
x3e;>2]|0)+32>>2]|0)>>>0>=(c[(c[d>>2]|0)+36>>2]|0)>>>0){b=
a[e>>0]|0;i=f;return b|0}d=(c[d>>2]|0)+32|0;b=c[d>>2]|0;c[d>>2]=b+1;a[e>>0]=a[
b>>0]|0;b=a[e>>0]|0;i=f;return b|0}function ie(e){e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;f=j+4|0;g=j;h=j+8|0
;c[f>>2]=e;b[h>>1]=0;c[g>>2]=c[(c[f>>2]|0)+32>>2];if(((c[g>>2]|0)+1|
0)>>>0>=(c[(c[f>>2]|0)+36>>2]|0)>>>0){g=c[g>>2]|0;e=c[f>
x3e;2]|0;e=e+32|0;c[e>>2]=g;e=b[h>>1]|0;i=j;return e|0}c[g>>2]=(c[g>>2]|0)+2;b[h>
x3e;1]=a[(c[g>>2]|0)+-2>>0]<<16>>16<<8|d[(c[g>>2]|0)+-2+1>>
;0]<<0;g=c[g>>2]|0;e=c[f>>2]|0;e=e+32|0;c[e>>2]=g;e=b[h>>1]|0;i=j;return e|0}function
je(b){b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=b;c[g>>2]=0;c[f>>2]=c[(c
[e>>2]|0)+32>>2];if(((c[f>>2]|0)+3|0)>>>0>=(c[(c[e>>2]|0)+36>
x3e;2]|0)>>>0){f=c[f>>2]|0;b=c[e>>2]|0;b=b+32|0;c[b>>2]=f;b=c[g>>2]|0;i=h
;return b|0}c[f>>2]=(c[f>>2]|0)+4;c[g>>2]=a[(c[f>>2]|0)+-4>>0]<<24|d
[(c[f>>2]|0)+-4+1>>0]<<16|d[(c[f>>2]|0)+-4+2>>0]<<8|d[(c[f>>
;2]|0)+-4+3>>0]<<0;f=c[f>>2]|0;b=c[e>>2]|0;b=b+32|0;c[b>>2]=f;b=c[g>>
;2]|0;i=h;return b|0}function ke(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+9|0;f=j+4|0;g=j;h=j+8|0;c[f>>
;2]=b;c[g>>2]=d;a[h>>0]=0;c[c[g>>2]>>2]=0;d=c[f>>2]|0;if(c[(c[f>>2]|
0)+20>>2]|0)if((Wa[c[d+20>>2]&31](c[f>>2]|0,c[(c[f>>2]|0)+8>>2]|0,h,1)|0)!=
1)d=6;else d=5;else if((c[d+8>>2]|0)>>>0<(c[(c[f>>2]|0)+4>>2]|0)>>
x3e;0){a[h>>0]=a[(c[c[f>>2]>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)>>0]|0;d=5
}else d=6;if((d|0)==5){g=(c[f>>2]|0)+8|0;c[g>>2]=(c[g>>2]|0)+1;a[e>>0]=a[h>>0]|
0;h=a[e>>0]|0;i=j;return h|0}else if((d|0)==6){c[c[g>>2]>>2]=85;a[e>>0]=0;h=a[e>>
;0]|0;i=j;return h|0}return 0}function le(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;v=i;i
=i+48|0;j=v+36|0;k=v+32|0;l=v+28|0;m=v+24|0;o=v+20|0;p=v+40|0;n=v+16|0;t=v+12|0;s=v+8|0;r=v+4|0;q=v;c[k>>2]=f;c[l>
;>2]=g;c[m>>2]=h;a[p>>0]=0;if(!((c[l>>2]|0)!=0&(c[k>>2]|0)!=0)){c[j>>
;2]=6;u=c[j>>2]|0;i=v;return u|0}c[n>>2]=c[(c[k>>2]|0)+32>>2];c[o>>2]=0;a:while
(1){switch(d[c[l>>2]>>0]|0){case 4:{c[o>>2]=ee(c[k>>2]|0,e[(c[l>>2]|0)+2>
x3e;1]|0)|0;if(c[o>>2]|0)break a;a[p>>0]=1;c[n>>2]=c[(c[k>>2]|0)+32>>2];c[l>
;>2]=(c[l>>2]|0)+4;continue a}case 25:case 24:{c[q>>2]=d[(c[l>>2]|0)+1>>0];if(((c[n
>>2]|0)+(c[q>>2]|0)|0)>>>0>(c[(c[k>>2]|0)+36>>2]|0)>>>
;0){u=8;break a}if((d[c[l>>2]>>0]|0)==24){c[r>>2]=(c[m>>2]|0)+(e[(c[l>>2]|0)+2
>>1]|0);Ss(c[r>>2]|0,c[n>>2]|0,c[q>>2]|0)|0}c[n>>2]=(c[n>>2]|0)+(c[q
>>2]|0);c[l>>2]=(c[l>>2]|0)+4;continue a}case 9:case 8:{h=c[n>>2]|0;c[n>>2]=h+
1;c[t>>2]=d[h>>0];c[s>>2]=24;break}case 12:case 13:{c[n>>2]=(c[n>>2]|0)+2;c[t
x3e;>2]=((d[(c[n>>2]|0)+-2>>0]&65535)<<8|(d[(c[n>>2]|0)+-2+1>>0]&
;65535)<<0)&65535;c[s>>2]=16;break}case 14:case 15:{c[n>>2]=(c[n>>2]|0)+2;c[t>
x3e;2]=((d[(c[n>>2]|0)+-2+1>>0]&65535)<<8|(d[(c[n>>2]|0)+-2>>0]&65535
)<<0)&65535;c[s>>2]=16;break}case 16:case 17:{c[n>>2]=(c[n>>2]|0)+4;c[t>>
2]=d[(c[n>>2]|0)+-4>>0]<<24|d[(c[n>>2]|0)+-4+1>>0]<<16|d[(c[n>
x3e;2]|0)+-4+2>>0]<<8|d[(c[n>>2]|0)+-4+3>>0]<<0;c[s>>2]=0;break}case
18:case 19:{c[n>>2]=(c[n>>2]|0)+4;c[t>>2]=d[(c[n>>2]|0)+-4+3>>0]<<24
|d[(c[n>>2]|0)+-4+2>>0]<<16|d[(c[n>>2]|0)+-4+1>>0]<<8|d[(c[n>
x3e;2]|0)+-4>>0]<<0;c[s>>2]=0;break}case 20:case 21:{c[n>>2]=(c[n>>2]|0)+3;c[t
>>2]=d[(c[n>>2]|0)+-3>>0]<<16|d[(c[n>>2]|0)+-3+1>>0]<<8|d[(
c[n>>2]|0)+-3+2>>0]<<0;c[s>>2]=8;break}case 22:case 23:{c[n>>2]=(c[n>>
;2]|0)+3;c[t>>2]=d[(c[n>>2]|0)+-3+2>>0]<<16|d[(c[n>>2]|0)+-3+1>>0]
x3c;<8|d[(c[n>>2]|0)+-3>>0]<<0;c[s>>2]=8;break}default:{u=19;break a}}if(d[c[l>
;>2]>>0]&1|0)c[t>>2]=c[t>>2]<<c[s>>2]>>c[s>>2];c
[r>>2]=(c[m>>2]|0)+(e[(c[l>>2]|0)+2>>1]|0);switch(d[(c[l>>2]|0)+1>>0
]|0){case 1:{a[c[r>>2]>>0]=c[t>>2];break}case 2:{b[c[r>>2]>>1]=c[t>>
2];break}case 4:{c[c[r>>2]>>2]=c[t>>2];break}default:c[c[r>>2]>>2]=c[t>
x3e;2]}c[l>>2]=(c[l>>2]|0)+4}if((u|0)==8)c[o>>2]=85;else if((u|0)==19)c[(c[k>>2]|0)+32
x3e;>2]=c[n>>2];if(a[p>>0]|0)ge(c[k>>2]|0);c[j>>2]=c[o>>2];u=c[j>>
;2]|0;i=v;return u|0}function me(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+32|0;d=f+16|0;g=f+12|0;e=f+8|0;b=f;c[g>>2]=a
;a=c[g>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];a=c[b+4>>2]|0;if(!(
c[b>>2]|0)){g=c[b+4>>2]|0;c[d>>2]=(a|0)>=0?g:0-g|0;g=c[d>>2]|0;i=f;return g|0}if(!a
){g=c[b>>2]|0;c[d>>2]=(c[b>>2]|0)>=0?g:0-g|0;g=c[d>>2]|0;i=f;return g|0}c[e>
x3e;2]=ae(b)|0;be(b);c[b>>2]=ce(c[b>>2]|0)|0;a=c[b>>2]|0;b=c[e>>2]|0;if((c[e>>
2]|0)>0){c[d>>2]=a+(1<<b-1)>>c[e>>2];g=c[d>>2]|0;i=f;return g|0}else{c[d
x3e;>2]=a<<0-b;g=c[d>>2]|0;i=f;return g|0}return 0}function ne(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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>>2]=a;c[f>>2]=b;c[g
>>2]=d;c[h>>2]=e;c[k>>2]=cc(c[m>>2]|0,c[g>>2]|0,j)|0;if(!((c[j>>2]|0
)==0&(c[f>>2]|0)!=0)){d=c[j>>2]|0;m=c[h>>2]|0;c[m>>2]=d;m=c[k>>2]|0;i=l;return
m|0}Ss(c[k>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;d=c[j>>2]|0;m=c[h>>2]|0;c[m>>
;2]=d;m=c[k>>2]|0;i=l;return m|0}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;j=i;i=i+16|0;e=j+12|0;f=
j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[f>>2]|0)a=(cs(c[f>>2]|0)|
0)+1|0;else a=0;c[h>>2]=a;h=ne(c[e>>2]|0,c[f>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=j;
return h|0}function pe(b,d,e){b=b|0;d=d|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]=b;c[g>
;>2]=d;c[h>>2]=e;while(1){if((c[h>>2]|0)>>>0<=1)break;if(!(a[c[g>>2]>
;>0]|0))break;e=c[g>>2]|0;c[g>>2]=e+1;e=a[e>>0]|0;d=c[f>>2]|0;c[f>>2]=d+1
;a[d>>0]=e;c[h>>2]=(c[h>>2]|0)+-1}a[c[f>>2]>>0]=0;i=j;return (a[c[g>>
;2]>>0]|0)!=0|0}function qe(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]=c[f>>2];if(re(c[e>>2]|0)|0){c[b>>2]=0;f=c[b>>2]|0;i=d;return f|0}else{c[b>
;>2]=153;f=c[b>>2]|0;i=d;return f|0}return 0}function re(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16
|0;d=h+12|0;f=h+8|0;g=h+4|0;e=h;c[d>>2]=a;c[g>>2]=c[(c[d>>2]|0)+8>>2];c[f>>2]=
c[(c[d>>2]|0)+40>>2];do if(!(c[(c[d>>2]|0)+40>>2]|0)){c[f>>2]=bc(c[g>>
;2]|0,608,e)|0;if((c[e>>2]|0)==0?(c[e>>2]=se(c[f>>2]|0,c[g>>2]|0)|0,(c[e>>2]|0
)==0):0){c[(c[d>>2]|0)+40>>2]=c[f>>2];break}c[b>>2]=0;g=c[b>>2]|0;i=h;return g
|0}while(0);c[b>>2]=c[(c[d>>2]|0)+40>>2];g=c[b>>2]|0;i=h;return g|0}function se(a,d){a=a
|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;f=h+8|0;j=h+4|0;g=h;c[f>>2]=a;c[j>>2]=d;c[(c[f>
x3e;2]|0)+8>>2]=c[j>>2];c[(c[f>>2]|0)+432>>2]=32;a=hc(c[j>>2]|0,16,0,c[(c[f>
;>2]|0)+432>>2]|0,0,g)|0;c[(c[f>>2]|0)+436>>2]=a;a=c[f>>2]|0;if(c[g>>2]|0
){te(a)|0;c[e>>2]=c[g>>2];j=c[e>>2]|0;i=h;return j|0}else{b[a+440>>1]=0;b[(c[f>>
;2]|0)+442>>1]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>>2]|0)+388>>2]=0;c[(c[f>
x3e;2]|0)+24>>2]=0;c[(c[f>>2]|0)+392>>2]=0;c[c[f>>2]>>2]=0;c[(c[f>>2
]|0)+4>>2]=0;c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}return 0}function te(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;c[f>>2]=c[(c[e>>2]|0)+8>>2];b[(c[e>>2]|0)+440
>>1]=0;b[(c[e>>2]|0)+442>>1]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);
c[(c[e>>2]|0)+24>>2]=0;c[(c[e>>2]|0)+20>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2
]|0)+436>>2]|0);c[(c[e>>2]|0)+436>>2]=0;c[(c[e>>2]|0)+432>>2]=0;c[(c[e>
x3e;2]|0)+428>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+392>>2]|0);c[(c[e>>2]|0)+392>
;>2]=0;c[(c[e>>2]|0)+388>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[c[e>>2]>>
;2]=0;Fb(c[f>>2]|0,c[e>>2]|0);c[e>>2]=0;i=d;return 0}function ue(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];if(!(c[(c[b>>2]|0)+40>>2]|0)){i=d;return
}te(c[(c[b>>2]|0)+40>>2]|0)|0;c[(c[b>>2]|0)+40>>2]=0;i=d;return}function ve(a,b){a=a|0;b
=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=qc(380,c[f>>2]|0)|0;if(c[g>>2]|0){c[d>>2]=c[g>>2];b=c[d>
x3e;2]|0;i=k;return b|0}if(!(c[e>>2]|0)){c[d>>2]=0;b=c[d>>2]|0;i=k;return b|0}c[j>>2]=Wc
(c[(c[e>>2]|0)+4>>2]|0,11340)|0;if(c[j>>2]|0?(c[h>>2]=c[(c[c[j>>2]>>
2]|0)+20>>2],c[h>>2]|0):0){c[d>>2]=Ya[c[(c[h>>2]|0)+16>>2]&127](c[e>
x3e;2]|0,c[f>>2]|0)|0;b=c[d>>2]|0;i=k;return b|0}c[d>>2]=0;b=c[d>>2]|0;i=k;return b|0}function
we(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;q=i;i=i+48|0;f=q+32|0;g=q+28|0;h=q+24|0;k=q+20|0;j=
q+16|0;o=q+12|0;l=q+8|0;n=q+4|0;m=q;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=0;c[n>>
;2]=c[(c[f>>2]|0)+100>>2];a[(c[f>>2]|0)+708>>0]=0;if((c[(c[f>>2]|0)+712>
x3e;2]|0)==0?(d=xe(c[f>>2]|0,0)|0,c[k>>2]=d,d|0):0){p=c[k>>2]|0;i=q;return p|0}c[j>>2]=c
[(c[f>>2]|0)+712>>2];c[o>>2]=c[(c[j>>2]|0)+8>>2];if((c[g>>2]|0)!=(c[
c[o>>2]>>2]|0)){c[k>>2]=6;p=c[k>>2]|0;i=q;return p|0}c[l>>2]=0;while(1){if((c[
l>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;if((c[(c[h>>2]|0)+(c[l>
;>2]<<2)>>2]|0)<-65536){p=9;break}if((c[(c[h>>2]|0)+(c[l>>2]<<2)>
;>2]|0)>65536){p=9;break}c[l>>2]=(c[l>>2]|0)+1}if((p|0)==9){c[k>>2]=6;p=c[k>>2
]|0;i=q;return p|0}if((c[(c[j>>2]|0)+36>>2]|0)==0?(p=ye(c[f>>2]|0)|0,c[k>>2]=p,p|0):0){p
=c[k>>2]|0;i=q;return p|0}a:do if(!(c[(c[j>>2]|0)+4>>2]|0)){p=hc(c[n>>2]|0,4,0,c[g>
x3e;2]|0,0,k)|0;c[(c[j>>2]|0)+4>>2]=p;if(c[k>>2]|0){p=c[k>>2]|0;i=q;return p|0}else{c[m
x3e;>2]=1;break}}else{c[m>>2]=0;c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c
[g>>2]|0)>>>0)break a;if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[l>>2]<<2
)>>2]|0)!=(c[(c[h>>2]|0)+(c[l>>2]<<2)>>2]|0))break;c[l>>2]=(c[l>
;>2]|0)+1}c[m>>2]=2}while(0);c[c[j>>2]>>2]=c[g>>2];Ss(c[(c[j>>2]|0)+4>
;>2]|0,c[h>>2]|0,c[g>>2]<<2|0)|0;a[(c[f>>2]|0)+708>>0]=1;if(!(c[(c[f>
;>2]|0)+672>>2]|0)){p=c[k>>2]|0;i=q;return p|0}switch(c[m>>2]|0){case 2:{Fb(c[n>>2]|
0,c[(c[f>>2]|0)+672>>2]|0);c[(c[f>>2]|0)+672>>2]=0;c[(c[f>>2]|0)+672>>
;2]=0;ze(c[f>>2]|0,c[(c[f>>2]|0)+104>>2]|0)|0;p=c[k>>2]|0;i=q;return p|0}case 1:{Ae(c[f
x3e;>2]|0,c[(c[f>>2]|0)+104>>2]|0)|0;p=c[k>>2]|0;i=q;return p|0}default:{p=c[k>>2]|
0;i=q;return p|0}}return 0}function xe(b,d){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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,
x=0,y=0;y=i;i=i+96|0;k=y+92|0;s=y+88|0;r=y+84|0;o=y+80|0;f=y+76|0;u=y+72|0;h=y+68|0;m=y+64|0;n=y+60|0;v=y+56|0;p=y+52|0;x=y+48|0
;t=y+44|0;q=y+40|0;l=y+24|0;g=y+4|0;w=y;c[k>>2]=b;c[s>>2]=d;c[r>>2]=c[(c[k>>2]|0)+104>
;>2];c[o>>2]=c[(c[k>>2]|0)+100>>2];c[u>>2]=0;a:do if(!(c[(c[k>>2]|0)+712
x3e;>2]|0)){d=Wa[c[(c[k>>2]|0)+508>>2]&31](c[k>>2]|0,1735811442,c[r>>2]|0,f)|0
;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0}d=Wa[c[(c[k>>2]|0)+508>>2]&31](c[k>
;>2]|0,1719034226,c[r>>2]|0,f)|0;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0}c[h>>
2]=Mc(c[r>>2]|0)|0;d=le(c[r>>2]|0,5428,l)|0;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0
}if(((((((c[l>>2]|0)==65536?(e[l+6>>1]|0|0)==2:0)?(e[l+10>>1]|0|0)==20:0)?(e[l+8>>1]|0|0
)<=16382:0)?(e[l+14>>1]|0|0)==(4+((e[l+8>>1]|0)<<2)|0):0)?(e[l+12>>1]|0|0)<=32511
:0)?(d=(e[l+4>>1]|0)+((e[l+8>>1]|0)*20|0)+(_(e[l+12>>1]|0,e[l+14>>1]|0)|0)|0,d>>
;>0<=(c[f>>2]|0)>>>0):0){f=bc(c[o>>2]|0,40,u)|0;c[(c[k>>2]|0)+712>
x3e;2]=f;if(c[u>>2]|0){x=c[u>>2]|0;i=y;return x|0}f=20+((e[l+8>>1]|0)*24|0)+((e[l+12>>1]|
0)<<3)+((_(e[l+12>>1]|0,e[l+8>>1]|0)|0)<<2)|0;c[(c[(c[k>>2]|0)+712>>
2]|0)+12>>2]=f+((e[l+8>>1]|0)*5|0);c[v>>2]=bc(c[o>>2]|0,c[(c[(c[k>>2]|0)+712
x3e;>2]|0)+12>>2]|0,u)|0;if(c[u>>2]|0){x=c[u>>2]|0;i=y;return x|0}c[(c[(c[k>>2]|0)+
712>>2]|0)+8>>2]=c[v>>2];c[c[v>>2]>>2]=e[l+8>>1];c[(c[v>>2
]|0)+4>>2]=-1;c[(c[v>>2]|0)+8>>2]=e[l+12>>1];c[(c[v>>2]|0)+12>>2]=(c
[v>>2]|0)+20;c[(c[v>>2]|0)+16>>2]=(c[(c[v>>2]|0)+12>>2]|0)+((e[l+8>>
1]|0)*24|0);c[p>>2]=(c[(c[v>>2]|0)+16>>2]|0)+((e[l+12>>1]|0)<<3);c[m>>
;2]=0;while(1){b=c[p>>2]|0;if((c[m>>2]|0)>=(e[l+12>>1]|0|0))break;c[(c[(c[v>>2]|0)+
16>>2]|0)+(c[m>>2]<<3)>>2]=b;c[p>>2]=(c[p>>2]|0)+((e[l+8>>
1]|0)<<2);c[m>>2]=(c[m>>2]|0)+1}c[x>>2]=b;c[m>>2]=0;while(1){if((c[m>>
;2]|0)>=(e[l+8>>1]|0|0))break;c[(c[(c[v>>2]|0)+12>>2]|0)+((c[m>>2]|0)*24|0)>
x3e;2]=c[x>>2];c[x>>2]=(c[x>>2]|0)+5;c[m>>2]=(c[m>>2]|0)+1}h=Kc(c[r>>
;2]|0,(c[h>>2]|0)+(e[l+4>>1]|0)|0)|0;c[u>>2]=h;if(h|0){x=c[u>>2]|0;i=y;return x|0}c[t>
;>2]=c[(c[v>>2]|0)+12>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(e[l+8>>
;1]|0|0))break;h=le(c[r>>2]|0,5464,g)|0;c[u>>2]=h;if(h|0){j=50;break}c[(c[t>>2]|0)+16>>2
]=c[g>>2];c[(c[t>>2]|0)+4>>2]=c[g+4>>2];c[(c[t>>2]|0)+8>>2]=c[g+8>
;>2];c[(c[t>>2]|0)+12>>2]=c[g+12>>2];c[(c[t>>2]|0)+20>>2]=e[g+18>>
;1];a[c[c[t>>2]>>2]>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>24;a[(c[c[t
x3e;>2]>>2]|0)+1>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>16;a[(c[c[t>>
;2]>>2]|0)+2>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>8;a[(c[c[t>>2]>
;>2]|0)+3>>0]=c[(c[t>>2]|0)+16>>2];a[(c[c[t>>2]>>2]|0)+4>>0]=0;
c[t>>2]=(c[t>>2]|0)+24;c[m>>2]=(c[m>>2]|0)+1}if((j|0)==50){x=c[u>>2]|0;i=y;return
x|0}c[q>>2]=c[(c[v>>2]|0)+16>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(e[l
+12>>1]|0|0))break a;j=ee(c[r>>2]|0,4+((e[l+8>>1]|0)<<2)|0)|0;c[u>>2]=j;if(j|0
)break;j=(ie(c[r>>2]|0)|0)&65535;c[(c[q>>2]|0)+4>>2]=j;ie(c[r>>2]|0)|0;c[n>>
;2]=0;while(1){b=c[r>>2]|0;if((c[n>>2]|0)>=(e[l+8>>1]|0|0))break;j=je(b)|0;c[(c[c[q>>
;2]>>2]|0)+(c[n>>2]<<2)>>2]=j;c[n>>2]=(c[n>>2]|0)+1}ge(b);c[m>
x3e;2]=(c[m>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+8}x=c[u>>2]|0;i=y;return x|0}c[u>>2]=
8;x=c[u>>2]|0;i=y;return x|0}while(0);if(!(c[s>>2]|0)){x=c[u>>2]|0;i=y;return x|0}c[v>>2
]=bc(c[o>>2]|0,c[(c[(c[k>>2]|0)+712>>2]|0)+12>>2]|0,u)|0;if(c[u>>2]|0){x=c[u
x3e;>2]|0;i=y;return x|0}Ss(c[v>>2]|0,c[(c[(c[k>>2]|0)+712>>2]|0)+8>>2]|0,c[(c[(c[k
>>2]|0)+712>>2]|0)+12>>2]|0)|0;c[(c[v>>2]|0)+12>>2]=(c[v>>2]|0)+20;c
[(c[v>>2]|0)+16>>2]=(c[(c[v>>2]|0)+12>>2]|0)+((c[c[v>>2]>>2]|0)*24|0
);c[p>>2]=(c[(c[v>>2]|0)+16>>2]|0)+(c[(c[v>>2]|0)+8>>2]<<3);c[w>
;>2]=0;while(1){if((c[w>>2]|0)>>>0>=(c[(c[v>>2]|0)+8>>2]|0)>>
x3e;0)break;c[(c[(c[v>>2]|0)+16>>2]|0)+(c[w>>2]<<3)>>2]=c[p>>2];c[p
x3e;>2]=(c[p>>2]|0)+(c[c[v>>2]>>2]<<2);c[w>>2]=(c[w>>2]|0)+1}c[
t>>2]=c[(c[v>>2]|0)+12>>2];c[x>>2]=c[p>>2];c[w>>2]=0;while(1){if((c[
w>>2]|0)>>>0>=(c[c[v>>2]>>2]|0)>>>0)break;c[c[t>>2]
x3e;>2]=c[x>>2];b=c[t>>2]|0;do if((c[(c[t>>2]|0)+16>>2]|0)!=2003265652){d=c[t>
x3e;2]|0;if((c[b+16>>2]|0)==2003072104){c[d>>2]=10521;break}b=c[t>>2]|0;if((c[d+16>>2]|0
)==1869640570){c[b>>2]=10527;break}if((c[b+16>>2]|0)==1936486004)c[c[t>>2]>>2]=10539}else
c[b>>2]=12384;while(0);c[x>>2]=(c[x>>2]|0)+5;c[t>>2]=(c[t>>2]|0)+24;c[w>
x3e;2]=(c[w>>2]|0)+1}c[c[s>>2]>>2]=c[v>>2];x=c[u>>2]|0;i=y;return x|0}function
ye(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+64|0;b=o+56|0;n=o+52|0;l=o+48|0;d=o+44|0;f=o+40|0;j=o+36|0;
k=o+32|0;h=o+24|0;m=o+20|0;g=o;c[b>>2]=a;c[n>>2]=c[(c[b>>2]|0)+104>>2];c[l>>2]=
c[(c[n>>2]|0)+28>>2];c[d>>2]=c[(c[b>>2]|0)+712>>2];b=Wa[c[(c[b>>2]|0
)+508>>2]&31](c[b>>2]|0,1735811442,c[n>>2]|0,o+28|0)|0;c[f>>2]=b;if(b|0){n=c[f>
;>2]|0;i=o;return n|0}c[h>>2]=Mc(c[n>>2]|0)|0;b=le(c[n>>2]|0,5496,g)|0;c[f>>2]=b;if
(b|0){n=c[f>>2]|0;i=o;return n|0}c[(c[d>>2]|0)+24>>2]=e[g+6>>1];c[(c[d>>2]|0)+
32>>2]=e[g+12>>1];c[m>>2]=(c[h>>2]|0)+(c[g+16>>2]|0);if((c[g>>2]|0)==
65536?(e[g+4>>1]|0|0)==(c[c[(c[d>>2]|0)+8>>2]>>2]&65535|0):0){b=hc(c[l>>2
]|0,4,0,(c[(c[d>>2]|0)+32>>2]|0)+1|0,0,f)|0;c[(c[d>>2]|0)+36>>2]=b;if(c[f>>2]|
0){n=c[f>>2]|0;i=o;return n|0}a=c[n>>2]|0;b=(c[(c[d>>2]|0)+32>>2]|0)+1|0;if((e[g+14>
;>1]|0)&1|0){b=ee(a,b<<2)|0;c[f>>2]=b;if(b|0){n=c[f>>2]|0;i=o;return n|0}c[j>>
2]=0;while(1){if((c[j>>2]|0)>>>0>(c[(c[d>>2]|0)+32>>2]|0)>>>0)break
;b=c[m>>2]|0;b=b+(je(c[n>>2]|0)|0)|0;c[(c[(c[d>>2]|0)+36>>2]|0)+(c[j>>2]<
x3c;2)>>2]=b;c[j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|0)}else{b=ee(a,b<<1)|0;c[f>
x3e;2]=b;if(b|0){n=c[f>>2]|0;i=o;return n|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0
x3e;(c[(c[d>>2]|0)+32>>2]|0)>>>0)break;b=c[m>>2]|0;b=b+(((ie(c[n>>2]|0)|0
)&65535)<<1)|0;c[(c[(c[d>>2]|0)+36>>2]|0)+(c[j>>2]<<2)>>2]=b;c[
j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|0)}if(!(c[(c[d>>2]|0)+24>>2]|0)){n=c[f>>
;2]|0;i=o;return n|0}m=hc(c[l>>2]|0,4,0,_(e[g+4>>1]|0,c[(c[d>>2]|0)+24>>2]|0)|0,0,f)|0;c
[(c[d>>2]|0)+28>>2]=m;if(c[f>>2]|0){n=c[f>>2]|0;i=o;return n|0}m=Kc(c[n>>2]|0,(
c[h>>2]|0)+(c[g+8>>2]|0)|0)|0;c[f>>2]=m;if(m|0){n=c[f>>2]|0;i=o;return n|0}m=ee(c[n>
;>2]|0,(_(c[(c[d>>2]|0)+24>>2]|0,e[g+4>>1]|0)|0)<<1)|0;c[f>>2]=m;if(m|0){
n=c[f>>2]|0;i=o;return n|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[d>
;>2]|0)+24>>2]|0)>>>0)break;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>
;0>=(e[g+4>>1]|0)>>>0)break;l=(ie(c[n>>2]|0)|0)<<16>>16<<2
;m=_(c[j>>2]|0,e[g+4>>1]|0)|0;c[(c[(c[d>>2]|0)+28>>2]|0)+(m+(c[k>>2]|0)<
x3c;2)>>2]=l;c[k>>2]=(c[k>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|
0);n=c[f>>2]|0;i=o;return n|0}c[f>>2]=8;n=c[f>>2]|0;i=o;return n|0}function ze(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;n=i;i=i+32|0;h=n+24|0;j=n+20|0;l=n+16|0;f=n+12|0;g=n+8|0;k=n+4|0;m=n;c[h>>2]=d;c[j>
;>2]=e;c[f>>2]=c[(c[j>>2]|0)+28>>2];c[l>>2]=Wa[c[(c[h>>2]|0)+508>>
;2]&31](c[h>>2]|0,1668707360,c[j>>2]|0,g)|0;if(c[l>>2]|0){c[(c[h>>2]|0)+668>
x3e;2]=0;c[(c[h>>2]|0)+672>>2]=0;c[l>>2]=0;m=c[l>>2]|0;i=n;return m|0}c[(c[h>>
2]|0)+668>>2]=((c[g>>2]|0)>>>0)/2|0;g=hc(c[f>>2]|0,2,0,c[(c[h>>2]|0)+668
x3e;>2]|0,0,l)|0;c[(c[h>>2]|0)+672>>2]=g;if(c[l>>2]|0){m=c[l>>2]|0;i=n;return m|0}g
=ee(c[j>>2]|0,c[(c[h>>2]|0)+668>>2]<<1)|0;c[l>>2]=g;if(g|0){m=c[l>>2
]|0;i=n;return m|0}c[k>>2]=c[(c[h>>2]|0)+672>>2];c[m>>2]=(c[k>>2]|0)+(c[(c[h
x3e;>2]|0)+668>>2]<<1);while(1){d=c[j>>2]|0;if((c[k>>2]|0)>>>0>=(
c[m>>2]|0)>>>0)break;g=ie(d)|0;b[c[k>>2]>>1]=g;c[k>>2]=(c[k>>2]|
0)+2}ge(d);if(!(a[(c[h>>2]|0)+708>>0]|0)){m=c[l>>2]|0;i=n;return m|0}c[l>>2]=Ae(c[h>
;>2]|0,c[j>>2]|0)|0;m=c[l>>2]|0;i=n;return m|0}function Ae(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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=i;i=i+96|0;h=C+84|0;j=C+80|0;n=C+76|0;u=C+72|0;g=C+68|0;f
=C+64|0;y=C+60|0;v=C+56|0;o=C+52|0;p=C+48|0;s=C+44|0;B=C+40|0;r=C+36|0;q=C+32|0;l=C+28|0;x=C+24|0;t=C+20|0;m=C+16|0;z=C+12|0;A=C
+8|0;k=C+4|0;w=C;c[h>>2]=a;c[j>>2]=d;c[u>>2]=c[(c[j>>2]|0)+28>>2];c[B>>
;2]=0;c[r>>2]=0;c[q>>2]=0;c[l>>2]=c[(c[h>>2]|0)+712>>2];if(!(c[l>>2]|
0)){c[n>>2]=0;z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>
;>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>
;2]|0;i=C;return B|0}if(!(c[(c[h>>2]|0)+672>>2]|0)){c[n>>2]=0;z=c[u>>2]|0;A=c[B>>
;2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;
B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}c[n>>2]=Wa[c[(c[h>>2]|
0)+508>>2]&31](c[h>>2]|0,1668702578,c[j>>2]|0,f)|0;if(c[n>>2]|0){c[n>>2]=
0;z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[
r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}f
=ee(c[j>>2]|0,c[f>>2]|0)|0;c[n>>2]=f;if(f|0){c[n>>2]=0;z=c[u>>2]|0;A=c[B>
x3e;2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|
0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}c[g>>2]=(c[(c[j>>2]|
0)+32>>2]|0)-(c[c[j>>2]>>2]|0);a:do if((je(c[j>>2]|0)|0)==65536){c[B>>2]=hc(c[
u>>2]|0,4,0,c[c[l>>2]>>2]|0,0,n)|0;if(((c[n>>2]|0)==0?(c[r>>2]=hc(c[u>>
;2]|0,4,0,c[c[l>>2]>>2]|0,0,n)|0,(c[n>>2]|0)==0):0)?(c[q>>2]=hc(c[u>>2]|0,4,0,
c[c[l>>2]>>2]|0,0,n)|0,(c[n>>2]|0)==0):0){c[y>>2]=(ie(c[j>>2]|0)|0)&65535
;g=c[g>>2]|0;c[v>>2]=g+((ie(c[j>>2]|0)|0)&65535);c[p>>2]=0;while(1){if((c[p>
x3e;2]|0)>>>0>=(c[y>>2]&4095)>>>0)break a;c[z>>2]=(ie(c[j>>
;2]|0)|0)&65535;c[A>>2]=(ie(c[j>>2]|0)|0)&65535;do if(c[A>>2]&32768|0){c[s>>
;2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[c[l>>2]>>2]|0)>>>0)break;
g=(ie(c[j>>2]|0)|0)<<16>>16<<2;c[(c[B>>2]|0)+(c[s>>2]<<2)
x3e;>2]=g;c[s>>2]=(c[s>>2]|0)+1}b:do if(c[A>>2]&16384|0){c[s>>2]=0;while(1){if
((c[s>>2]|0)>>>0>=(c[c[l>>2]>>2]|0)>>>0)break;g=(ie(c[j>
x3e;2]|0)|0)<<16>>16<<2;c[(c[r>>2]|0)+(c[s>>2]<<2)>>2]=g;c
[s>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[c[l
x3e;>2]>>2]|0)>>>0)break b;g=(ie(c[j>>2]|0)|0)<<16>>16<<2;
c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]=g;c[s>>2]=(c[s>>2]|0)+1}}while(0);c[k
>>2]=Be(c[l>>2]|0,c[A>>2]&65535,c[B>>2]|0,c[r>>2]|0,c[q>>2]|0)|
0;if(c[k>>2]|0?c[A>>2]&8192|0:0){c[o>>2]=(c[(c[j>>2]|0)+32>>2]|0)-(c[c[j
x3e;>2]>>2]|0);c[(c[j>>2]|0)+32>>2]=(c[c[j>>2]>>2]|0)+(c[v>>2]|
0);c[t>>2]=Ce(c[j>>2]|0,x)|0;if(!(c[x>>2]|0))a=c[(c[h>>2]|0)+668>>2]|0;else a=
c[x>>2]|0;c[m>>2]=De(c[j>>2]|0,a)|0;c:do if(!((c[t>>2]|0)==0|(c[m>>2]|0)==0)){
g=(c[t>>2]|0)==(-1|0);c[s>>2]=0;if(g)while(1){if((c[s>>2]|0)>>>0>=(c[(c[h>
;>2]|0)+668>>2]|0)>>>0)break c;g=b[(c[(c[h>>2]|0)+672>>2]|0)+(c[s>>2
]<<1)>>1]|0;g=g+(Mb(b[(c[m>>2]|0)+(c[s>>2]<<1)>>1]|0,c[k>>
2]|0)|0)&65535;b[(c[(c[h>>2]|0)+672>>2]|0)+(c[s>>2]<<1)>>1]=g;c[s>
x3e;2]=(c[s>>2]|0)+1}else while(1){if((c[s>>2]|0)>>>0>=(c[x>>2]|0)>>
x3e;0)break c;c[w>>2]=e[(c[t>>2]|0)+(c[s>>2]<<1)>>1];g=b[(c[(c[h>>2]|
0)+672>>2]|0)+(c[w>>2]<<1)>>1]|0;g=g+(Mb(b[(c[m>>2]|0)+(c[s>>2]<
;<1)>>1]|0,c[k>>2]|0)|0)&65535;b[(c[(c[h>>2]|0)+672>>2]|0)+(c[w>>2]
x3c;<1)>>1]=g;c[s>>2]=(c[s>>2]|0)+1}}while(0);if((c[t>>2]|0)!=(-1|0)){Fb(c[u>
x3e;2]|0,c[t>>2]|0);c[t>>2]=0}Fb(c[u>>2]|0,c[m>>2]|0);c[m>>2]=0;c[v>>
;2]=(c[v>>2]|0)+(c[z>>2]|0);c[(c[j>>2]|0)+32>>2]=(c[c[j>>2]>>2]|0)+(
c[o>>2]|0);break}c[v>>2]=(c[v>>2]|0)+(c[z>>2]|0)}else{d:do if(c[A>>2]&16384
|0){c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=c[c[l>>2]>>2]<<
1>>>0)break d;ie(c[j>>2]|0)|0;c[s>>2]=(c[s>>2]|0)+1}}while(0);c[v>>2]=(c[
v>>2]|0)+(c[z>>2]|0)}while(0);c[p>>2]=(c[p>>2]|0)+1}}}else c[n>>2]=0;while(0);
ge(c[j>>2]|0);z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>
;>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>
;2]|0;i=C;return B|0}function Be(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;r=i;i=i+32|0;j
=r+24|0;k=r+28|0;l=r+20|0;m=r+16|0;n=r+12|0;o=r+8|0;q=r+4|0;p=r;c[j>>2]=a;b[k>>1]=d;c[l>>2]=f;c[m
x3e;>2]=g;c[n>>2]=h;c[q>>2]=65536;c[o>>2]=0;a:while(1){if((c[o>>2]|0)>>
x3e;0>=(c[c[j>>2]>>2]|0)>>>0){a=19;break}do if(c[(c[l>>2]|0)+(c[o>>2
]<<2)>>2]|0){if(!(c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>
2]|0)){a=9;break a}if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)<0?(c
[(c[l>>2]|0)+(c[o>>2]<<2)>>2]|0)>0:0){a=9;break a}if((c[(c[(c[j>>2]|0)+4
x3e;>2]|0)+(c[o>>2]<<2)>>2]|0)>0?(c[(c[l>>2]|0)+(c[o>>2]<<
2)>>2]|0)<0:0){a=9;break a}if(!((e[k>>1]|0)&16384)){f=c[(c[(c[j>>2]|0)+4>>2]|0
)+(c[o>>2]<<2)>>2]|0;c[q>>2]=xb(c[q>>2]|0,(c[(c[(c[j>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<2)>>2]|0)>0?f:0-f|0,65536)|0;break}if((c[(c[(c[j>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<2)>>2]|0)<=(c[(c[m>>2]|0)+(c[o>>2]<<2)>
;>2]|0)){a=14;break a}if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)
x3e;=(c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]|0)){a=14;break a}a=c[o>>2]|0;if((c[(c[(c[
j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)<(c[(c[l>>2]|0)+(c[o>
x3e;2]<<2)>>2]|0)){c[p>>2]=xb((c[(c[(c[j>>2]|0)+4>>2]|0)+(a<<2)>
;>2]|0)-(c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]|0)|0,65536,(c[(c[l>>2]|0)+(c[o>
;>2]<<2)>>2]|0)-(c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]|0)|0)|0;c[q>
;>2]=xb(c[q>>2]|0,c[p>>2]|0,65536)|0;break}else{c[p>>2]=xb((c[(c[n>>2]|0)+(a<
x3c;2)>>2]|0)-(c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)|0,65536
,(c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[l>>2]|0)+(c[o>>2]<<
;2)>>2]|0)|0)|0;c[q>>2]=xb(c[q>>2]|0,c[p>>2]|0,65536)|0;break}}while(0);c[o>>2
]=(c[o>>2]|0)+1}if((a|0)==9){c[q>>2]=0;q=c[q>>2]|0;i=r;return q|0}else if((a|0)==14){c[q>>
;2]=0;q=c[q>>2]|0;i=r;return q|0}else if((a|0)==19){q=c[q>>2]|0;i=r;return q|0}return 0}function Ce(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;p=i;i=i+48|0;e=p+40|0;f=p+36|0;q=p+32|0;n=p+28|0;m=p+24|0;o=p+20|0;
j=p+16|0;k=p+12|0;h=p+8|0;l=p+4|0;g=p;c[f>>2]=a;c[q>>2]=d;c[l>>2]=c[(c[f>>2]|0)+28>
x3e;2];c[g>>2]=0;c[g>>2]=c[g>>2];a=(he(c[f>>2]|0)|0)&255;c[m>>2]=a;c[c[q
x3e;>2]>>2]=a;if(!(c[m>>2]|0)){c[e>>2]=-1;q=c[e>>2]|0;i=p;return q|0}if(c[m>
x3e;2]&128|0){q=(he(c[f>>2]|0)|0)&255;c[m>>2]=q|(c[m>>2]&127)<<8}c[n>
;>2]=hc(c[l>>2]|0,2,0,c[m>>2]|0,0,g)|0;if(c[g>>2]|0){c[e>>2]=0;q=c[e>>2]|
0;i=p;return q|0}c[j>>2]=0;a:while(1){if((c[j>>2]|0)>=(c[m>>2]|0))break;c[o>>2]=(he
(c[f>>2]|0)|0)&255;if(c[o>>2]&128|0){c[o>>2]=c[o>>2]&127;q=ie(c[f>
x3e;2]|0)|0;a=c[j>>2]|0;c[j>>2]=a+1;b[(c[n>>2]|0)+(a<<1)>>1]=q;c[h>>
2]=q&65535;if((c[o>>2]|0)<1)break;if(((c[j>>2]|0)+(c[o>>2]|0)|0)>=(c[m>>2
]|0))break;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[o>>2]|0))continue a;a=(ie(c[f>>2]|
0)|0)&65535;a=(c[h>>2]|0)+a|0;c[h>>2]=a;q=c[j>>2]|0;c[j>>2]=q+1;b[(c[n>>2
]|0)+(q<<1)>>1]=a;c[k>>2]=(c[k>>2]|0)+1}}else{q=(he(c[f>>2]|0)|0)&255;a=c
[j>>2]|0;c[j>>2]=a+1;b[(c[n>>2]|0)+(a<<1)>>1]=q;c[h>>2]=q&65535
;if((c[o>>2]|0)<1)break;if(((c[j>>2]|0)+(c[o>>2]|0)|0)>=(c[m>>2]|0))break;c[k
x3e;>2]=0;while(1){if((c[k>>2]|0)>=(c[o>>2]|0))continue a;a=(he(c[f>>2]|0)|0)&255;a
=(c[h>>2]|0)+a|0;c[h>>2]=a;q=c[j>>2]|0;c[j>>2]=q+1;b[(c[n>>2]|0)+(q<<
;1)>>1]=a;c[k>>2]=(c[k>>2]|0)+1}}}c[e>>2]=c[n>>2];q=c[e>>2]|0;i=p;return
q|0}function De(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;n=i;i=i+48|0;k=n+32|0;e=n+28|0;f=n+24|0;l=n+20|0;j
=n+16|0;g=n+12|0;h=n+8|0;m=n+4|0;o=n;c[e>>2]=a;c[f>>2]=d;c[l>>2]=0;c[m>>2]=c[(c[e>
x3e;2]|0)+28>>2];c[o>>2]=0;c[o>>2]=c[o>>2];c[l>>2]=hc(c[m>>2]|0,2,0,
c[f>>2]|0,0,o)|0;if(c[o>>2]|0){c[k>>2]=0;o=c[k>>2]|0;i=n;return o|0}c[g>>2]=0;
while(1){if((c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0){e=19;break}c[j>>2
]=(he(c[e>>2]|0)|0)&255;a:do if(!(c[j>>2]&128|0)){o=(c[j>>2]&64|0)!=0;c[h>>
;2]=0;if(o)while(1){if((c[h>>2]|0)>>>0>(c[j>>2]&63)>>>0)break a;if((
c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break a;a=ie(c[e>>2]|0)|0;o=c[g
>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=a;c[h>>2]=(c[h>>
;2]|0)+1}else while(1){if((c[h>>2]|0)>>>0>(c[j>>2]&63)>>>0)break a;if
((c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break a;a=(he(c[e>>2]|0)|0)
x3c;<24>>24;o=c[g>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=a;
c[h>>2]=(c[h>>2]|0)+1}}else{c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>(c
[j>>2]&63)>>>0)break a;if((c[g>>2]|0)>>>0>=(c[f>>2]|0)>
;>>0)break a;o=c[g>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=0;c[h
x3e;>2]=(c[h>>2]|0)+1}}while(0);if((c[h>>2]|0)>>>0<=(c[j>>2]&63)>
;>>0){e=18;break}}if((e|0)==18){Fb(c[m>>2]|0,c[l>>2]|0);c[l>>2]=0;c[k>>2]=0;o=
c[k>>2]|0;i=n;return o|0}else if((e|0)==19){c[k>>2]=c[l>>2];o=c[k>>2]|0;i=n;return o|0}return
0}function Ee(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,t=0,u=0;u=i;i=i+48|0;g=u+44|0;h=u+40
|0;j=u+36|0;n=u+32|0;s=u+28|0;m=u+24|0;r=u+20|0;o=u+16|0;p=u+12|0;k=u+8|0;l=u+4|0;q=u;c[g>>2]=b;c[h>>2]=d;c[
j>>2]=f;c[n>>2]=0;c[s>>2]=0;c[q>>2]=c[(c[g>>2]|0)+100>>2];if((c[(c[g
>>2]|0)+712>>2]|0)==0?(d=xe(c[g>>2]|0,0)|0,c[n>>2]=d,d|0):0){r=c[q>>2]|0;t=c[s
>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}c[m>>2]=c[(c[g>>2]|0)+712
x3e;>2];c[r>>2]=c[(c[m>>2]|0)+8>>2];if((c[h>>2]|0)!=(c[c[r>>2]>>
;2]|0)){c[n>>2]=6;r=c[q>>2]|0;t=c[s>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return
t|0}c[s>>2]=hc(c[q>>2]|0,4,0,c[c[r>>2]>>2]|0,0,n)|0;if(c[n>>2]|0){r=c[q>
x3e;2]|0;t=c[s>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}c[k>>2]=c[(c[r>
x3e;2]|0)+12>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[c[r>>2]
x3e;>2]|0)>>>0)break;if((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|0)>(c[(
c[k>>2]|0)+12>>2]|0)){t=10;break}if((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|
0)<(c[(c[k>>2]|0)+4>>2]|0)){t=10;break}do if((c[(c[j>>2]|0)+(c[o>>2]<<2)
x3e;>2]|0)>=(c[(c[k>>2]|0)+8>>2]|0)){f=c[o>>2]|0;if((c[(c[k>>2]|0)+12>>
;2]|0)==(c[(c[k>>2]|0)+8>>2]|0)){c[(c[s>>2]|0)+(f<<2)>>2]=0;break}else{d=xb((c
[(c[j>>2]|0)+(f<<2)>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0,65536,(c[(c[k>>
2]|0)+12>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0)|0;c[(c[s>>2]|0)+(c[o>>2]<<
;2)>>2]=d;break}}else{d=0-(xb((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[k>
x3e;2]|0)+8>>2]|0)|0,65536,(c[(c[k>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0)|
0)|0;c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]=d}while(0);c[o>>2]=(c[o>>2]|0)+1
;c[k>>2]=(c[k>>2]|0)+24}if((t|0)==10){c[n>>2]=6;r=c[q>>2]|0;t=c[s>>2]|0;Fb(r,t
);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}if(!(a[(c[m>>2]|0)+16>>0]|0))Fe(c[g>>2]|
0);a:do if(c[(c[m>>2]|0)+20>>2]|0){c[l>>2]=c[(c[m>>2]|0)+20>>2];c[o>>
;2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[c[r>>2]>>2]|0)>>>0)break
a;c[p>>2]=1;while(1){if((c[p>>2]|0)>>>0>=(e[c[l>>2]>>1]|0)>>
;>0)break;if((c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]|0)<(c[(c[(c[l>>2]|0)+4
x3e;>2]|0)+(c[p>>2]<<3)>>2]|0)){t=25;break}c[p>>2]=(c[p>>2]|0)+1}if((t|0)==
25){t=0;m=xb((c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[(c[l>>2]|0)+4>>
;2]|0)+((c[p>>2]|0)-1<<3)>>2]|0)|0,65536,(c[(c[(c[l>>2]|0)+4>>2]|0)+(c[p>
x3e;2]<<3)>>2]|0)-(c[(c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1<<3)>
;>2]|0)|0)|0;m=xb(m,(c[(c[(c[l>>2]|0)+4>>2]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(
c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1<<3)+4>>2]|0)|0,65536)|0;c[(c[s>>
;2]|0)+(c[o>>2]<<2)>>2]=m+(c[(c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1
x3c;<3)+4>>2]|0)}c[o>>2]=(c[o>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+8}}while(0);c[
n>>2]=we(c[g>>2]|0,c[h>>2]|0,c[s>>2]|0)|0;r=c[q>>2]|0;t=c[s>>2]|0;Fb
(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|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,p=0,
q=0,r=0;q=i;i=i+48|0;r=q+40|0;p=q+36|0;o=q+32|0;m=q+28|0;j=q+24|0;g=q+20|0;l=q+16|0;f=q+12|0;h=q+8|0;n=q+4|0;k=q;c[r>>
2]=d;c[p>>2]=c[(c[r>>2]|0)+104>>2];c[o>>2]=c[(c[p>>2]|0)+28>>2];c[m
x3e;>2]=c[(c[r>>2]|0)+712>>2];c[g>>2]=0;c[g>>2]=c[g>>2];a[(c[m>>
;2]|0)+16>>0]=1;d=Wa[c[(c[r>>2]|0)+508>>2]&31](c[r>>2]|0,1635148146,c[p>>
2]|0,k)|0;c[g>>2]=d;if(d|0){i=q;return}r=ee(c[p>>2]|0,c[k>>2]|0)|0;c[g>>2]=r;if(r|0){i=q
;return}c[l>>2]=je(c[p>>2]|0)|0;c[f>>2]=je(c[p>>2]|0)|0;a:do if(((c[l>>2]|0)==
65536?(c[f>>2]|0)==(c[c[(c[m>>2]|0)+8>>2]>>2]|0):0)?(r=hc(c[o>>2]|0,8,0,c[f>
;>2]|0,0,g)|0,c[(c[m>>2]|0)+20>>2]=r,(c[g>>2]|0)==0):0){c[j>>2]=c[(c[m>>2
]|0)+20>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[f>>2]|0))break a;r=ie(c[p>
x3e;2]|0)|0;b[c[j>>2]>>1]=r;r=hc(c[o>>2]|0,8,0,e[c[j>>2]>>1]|0,0,g)|0;c[(c[j
x3e;>2]|0)+4>>2]=r;if(c[g>>2]|0)break;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(e[c[
j>>2]>>1]|0|0))break;r=(ie(c[p>>2]|0)|0)<<16>>16<<2;c[(c[(c[j>
x3e;2]|0)+4>>2]|0)+(c[n>>2]<<3)>>2]=r;r=(ie(c[p>>2]|0)|0)<<16>
x3e;16<<2;c[(c[(c[j>>2]|0)+4>>2]|0)+(c[n>>2]<<3)+4>>2]=r;c[n>
x3e;2]=(c[n>>2]|0)+1}c[h>>2]=(c[h>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+8}c[n>>
;2]=(c[h>>2]|0)-1;while(1){f=c[o>>2]|0;if((c[n>>2]|0)<0)break;Fb(f,c[(c[(c[m>>2]|0)+
20>>2]|0)+(c[n>>2]<<3)+4>>2]|0);c[(c[(c[m>>2]|0)+20>>2]|0)+(c[n>
;>2]<<3)+4>>2]=0;c[n>>2]=(c[n>>2]|0)+-1}Fb(f,c[(c[m>>2]|0)+20>>
2]|0);c[(c[m>>2]|0)+20>>2]=0;c[(c[m>>2]|0)+20>>2]=0}while(0);ge(c[p>>2]|0);i=q
;return}function Ge(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;p=i;i=i+32|0;h=p+28|0;j=p+24|0;g=p+20|0;k=p
+16|0;n=p+12|0;o=p+8|0;l=p+4|0;m=p;c[j>>2]=a;c[g>>2]=e;c[k>>2]=f;c[o>>2]=0;c[n>>
;2]=0;do if((c[g>>2]|0)>>>0<(c[(c[j>>2]|0)+732>>2]|0)>>>0){a=c[(
c[j>>2]|0)+736>>2]|0;f=c[g>>2]|0;if(b[(c[j>>2]|0)+160+50>>1]|0){c[l>>
;2]=a+(f<<2);c[m>>2]=(c[(c[j>>2]|0)+736>>2]|0)+(c[(c[j>>2]|0)+732>>2
]<<2);c[l>>2]=(c[l>>2]|0)+4;c[n>>2]=d[(c[l>>2]|0)+-4>>0]<<
24|d[(c[l>>2]|0)+-4+1>>0]<<16|d[(c[l>>2]|0)+-4+2>>0]<<8|d[(c[l>
x3e;2]|0)+-4+3>>0]<<0;c[o>>2]=c[n>>2];if(((c[l>>2]|0)+4|0)>>>0
x3e;(c[m>>2]|0)>>>0)break;c[l>>2]=(c[l>>2]|0)+4;c[o>>2]=d[(c[l>>
;2]|0)+-4>>0]<<24|d[(c[l>>2]|0)+-4+1>>0]<<16|d[(c[l>>2]|0)+-4+2>
;>0]<<8|d[(c[l>>2]|0)+-4+3>>0]<<0;break}c[l>>2]=a+(f<<1);c[m>
;>2]=(c[(c[j>>2]|0)+736>>2]|0)+(c[(c[j>>2]|0)+732>>2]<<1);c[l>>
2]=(c[l>>2]|0)+2;c[n>>2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>
x3e;2]|0)+-2+1>>0]&65535)<<0)&65535;c[o>>2]=c[n>>2];if(((c[l>>2]|0)+
2|0)>>>0<=(c[m>>2]|0)>>>0){c[l>>2]=(c[l>>2]|0)+2;c[o>>
;2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>>2]|0)+-2+1>>0]&65535)
x3c;<0)&65535}c[n>>2]=c[n>>2]<<1;c[o>>2]=c[o>>2]<<1}while(
0);if((c[n>>2]|0)>>>0>=(c[(c[j>>2]|0)+704>>2]|0)>>>0){c[c[k>
;>2]>>2]=0;c[h>>2]=0;o=c[h>>2]|0;i=p;return o|0}if((c[o>>2]|0)>>>0
x3e;=(c[(c[j>>2]|0)+704>>2]|0)>>>0)c[o>>2]=c[(c[j>>2]|0)+704>>2
];if((c[o>>2]|0)>>>0>=(c[n>>2]|0)>>>0)c[c[k>>2]>>2]=(
c[o>>2]|0)-(c[n>>2]|0);else c[c[k>>2]>>2]=(c[(c[j>>2]|0)+704>>2]|0)-(
c[n>>2]|0);c[h>>2]=c[n>>2];o=c[h>>2]|0;i=p;return o|0}function He(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;r=i;i=i+48|0;g=r+36|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0
;m=r+16|0;n=r+12|0;s=r+8|0;p=r+4|0;o=r;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>
x3e;2]=f;c[o>>2]=c[j>>2];c[s>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+4>>2];c[
p>>2]=Ud(c[s>>2]|0,11340)|0;do if(c[p>>2]|0){s=Kc(c[h>>2]|0,0)|0;c[n>>2]=s;if((
s|0)==0?(c[n>>2]=Za[c[(c[p>>2]|0)+4>>2]&31](c[h>>2]|0,c[o>>2]|0,c[k>
x3e;2]|0,c[l>>2]|0,c[m>>2]|0)|0,(c[n>>2]|0)==0):0){if(((c[(c[o>>2]|0)+148>>2]|
0)!=65536?(c[(c[o>>2]|0)+148>>2]|0)!=131072:0)?(c[(c[o>>2]|0)+148>>2]|0)!=1953658213:0){
q=24;break}s=(c[j>>2]|0)+8|0;c[s>>2]=c[s>>2]|2048;if((c[k>>2]|0)<0){c[g>>
2]=0;s=c[g>>2]|0;i=r;return s|0}c[n>>2]=Za[c[(c[p>>2]|0)+8>>2]&31](c[h>>2
]|0,c[o>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(!(c[n>>2]|0)){if((Ie(c[j>
;>2]|0)|0)<<24>>24){s=(c[j>>2]|0)+8|0;c[s>>2]=c[s>>2]|8192}c[n>>
;2]=Ne(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0)){if(c[(c[j>>2]|0)+8>>2]&1|0
){if(!(c[(c[(c[j>>2]|0)+128>>2]|0)+52>>2]|0))c[n>>2]=Oe(c[o>>2]|0,c[h>>
;2]|0)|0;if(!(c[n>>2]|0))c[n>>2]=ze(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0))c[n
>>2]=Pe(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0))c[n>>2]=Qe(c[o>>2]|0,
c[h>>2]|0)|0}Re(c[o>>2]|0)}}}}else q=24;while(0);if((q|0)==24)c[n>>2]=2;c[g>>2]=c[n>
;>2];s=c[g>>2]|0;i=r;return s|0}function Ie(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[e>>2]=b
;do if(c[e>>2]|0){b=c[e>>2]|0;if(c[(c[e>>2]|0)+20>>2]|0)if((Je(c[b+20>>2]|0)|0
)<<24>>24){a[d>>0]=1;break}else{a[d>>0]=0;break}else if((Ke(b)|0)<<24>>
;24){a[d>>0]=1;break}else{a[d>>0]=0;break}}else a[d>>0]=0;while(0);i=f;return a[d>>0]|0}
function Je(b){b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;f=g+8|0;d=g+4|0;e=g;c[d>>2]=b;c[e>>2]=0;while(1){if((c
[e>>2]|0)>=8){d=6;break}if(vs(c[d>>2]|0,10569+((c[e>>2]|0)*17|0)|0)|0){d=4;break}c[e>>
;2]=(c[e>>2]|0)+1}if((d|0)==4){a[f>>0]=1;f=a[f>>0]|0;i=g;return f|0}else if((d|0)==6){a[f>>
;0]=0;f=a[f>>0]|0;i=g;return f|0}return 0}function Ke(b){b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+48|0;d=
n+40|0;f=n+36|0;g=n+32|0;l=n+12|0;h=n+8|0;j=n+4|0;k=n;c[f>>2]=b;c[l>>2]=0;c[l+4>>2]=0;c[l+8>
x3e;2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[h>>2]=0;a:while(1){if((c[h>>2]|0)>=(e[(c[f>
;>2]|0)+152>>1]|0|0)){m=18;break}c[g>>2]=0;b=c[(c[(c[f>>2]|0)+156>>2]|0)+(c[h>
x3e;2]<<4)>>2]|0;b:do if((b|0)>=1718642541)if((b|0)<1886545264){switch(b|0){case 1718642541:break;
default:break b}c[k>>2]=1;m=7;break}else{switch(b|0){case 1886545264:break;default:break b}c[k>>2]=2;m=7;break
}else{switch(b|0){case 1668707360:break;default:break b}c[k>>2]=0;m=7}while(0);c:do if((m|0)==7){m=0;c[j>>2]=
0;while(1){if((c[j>>2]|0)>=5)break c;if((c[(c[(c[f>>2]|0)+156>>2]|0)+(c[h>>2]<
x3c;4)+12>>2]|0)==(c[448+((c[j>>2]|0)*24|0)+(c[k>>2]<<3)+4>>2]|0)){if(!(c[g>
;>2]|0))c[g>>2]=Le(c[f>>2]|0,c[h>>2]&65535)|0;if((c[448+((c[j>>2]|0)*24|0)+(c[
k>>2]<<3)>>2]|0)==(c[g>>2]|0)){b=l+(c[j>>2]<<2)|0;c[b>>2]=(
c[b>>2]|0)+1}if((c[l+(c[j>>2]<<2)>>2]|0)==3){m=15;break a}}c[j>>2]=(c[j>
x3e;2]|0)+1}}while(0);c[h>>2]=(c[h>>2]|0)+1}if((m|0)==15){a[d>>0]=1;m=a[d>>0]|0;i=n;return
m|0}else if((m|0)==18){a[d>>0]=0;m=a[d>>0]|0;i=n;return m|0}return 0}function Le(a,d){a=a|0;d=d|0;var f=0,g
=0,h=0,j=0;j=i;i=i+16|0;f=j+4|0;g=j;h=j+8|0;c[g>>2]=a;b[h>>1]=d;if(c[(c[(c[g>>2]|0)+156>>
;2]|0)+((e[h>>1]|0)<<4)+4>>2]|0){c[f>>2]=c[(c[(c[g>>2]|0)+156>>2]|0)+((
e[h>>1]|0)<<4)+4>>2];d=c[f>>2]|0;i=j;return d|0}if(!(c[(c[g>>2]|0)+508>
x3e;2]|0)){c[f>>2]=0;d=c[f>>2]|0;i=j;return d|0}if(Wa[c[(c[g>>2]|0)+508>>2]&31](c[g
>>2]|0,c[(c[(c[g>>2]|0)+156>>2]|0)+((e[h>>1]|0)<<4)>>2]|0,c[(c[g>
;>2]|0)+104>>2]|0,0)|0){c[f>>2]=Me(c[(c[g>>2]|0)+104>>2]|0,c[(c[(c[g>>2]|
0)+156>>2]|0)+((e[h>>1]|0)<<4)+12>>2]|0)|0;d=c[f>>2]|0;i=j;return d|0}else{c[f
>>2]=0;d=c[f>>2]|0;i=j;return d|0}return 0}function Me(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+
32|0;d=j+20|0;e=j+16|0;f=j+12|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;a=ee(c[e>>2]|0
,c[f>>2]|0)|0;c[j+8>>2]=a;if(a|0){c[d>>2]=0;h=c[d>>2]|0;i=j;return h|0}while(1){if((c[f
x3e;>2]|0)>>>0<=3)break;a=je(c[e>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+a;c[f>
x3e;2]=(c[f>>2]|0)-4}c[h>>2]=3;while(1){b=c[e>>2]|0;if((c[f>>2]|0)>>>0<
;=0)break;a=(he(b)|0)&255;c[g>>2]=(c[g>>2]|0)+(a<<(c[h>>2]<<3));c[f>
x3e;2]=(c[f>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+-1}ge(b);c[d>>2]=c[g>>2];h=c[d>
x3e;2]|0;i=j;return h|0}function Ne(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;s=i;i=i+48|0;f=s+44
|0;g=s+40|0;h=s+36|0;j=s+32|0;l=s+28|0;r=s+24|0;m=s+20|0;n=s+16|0;q=s+12|0;p=s+8|0;o=s+4|0;k=s;c[g>>2]=b;c[h>>
;2]=e;c[l>>2]=c[(c[h>>2]|0)+28>>2];c[j>>2]=Wa[c[(c[g>>2]|0)+508>>2]
x26;31](c[g>>2]|0,1751412088,c[h>>2]|0,q)|0;if((c[j>>2]|0)!=0|(c[q>>2]|0)>>>
;0<8){c[f>>2]=0;r=c[f>>2]|0;i=s;return r|0}e=de(c[h>>2]|0,c[q>>2]|0,(c[g>>
;2]|0)+740|0)|0;c[j>>2]=e;do if(!e){c[o>>2]=c[(c[g>>2]|0)+740>>2];c[k>>2]=(c[o
>>2]|0)+(c[q>>2]|0);c[o>>2]=(c[o>>2]|0)+2;c[r>>2]=(((d[(c[o>>2]|0)+-
2>>0]|0)&65535)<<8|((d[(c[o>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535
;c[o>>2]=(c[o>>2]|0)+2;c[n>>2]=(((d[(c[o>>2]|0)+-2>>0]|0)&65535)<<
;8|((d[(c[o>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[o>>2]=(c[o>>2]|0)+
4;c[p>>2]=(d[(c[o>>2]|0)+-4>>0]|0)<<24|(d[(c[o>>2]|0)+-4+1>>0]|0)<
;<16|(d[(c[o>>2]|0)+-4+2>>0]|0)<<8|(d[(c[o>>2]|0)+-4+3>>0]|0)<<
0;if((c[p>>2]|0)>>>0>=4294901760)c[p>>2]=c[p>>2]&65535;if(!((c[r>>
;2]|0)!=0|(c[n>>2]|0)>>>0>255|(c[p>>2]|0)>>>0>65537)){r=hc(c[l>
x3e;2]|0,1,0,c[n>>2]|0,0,j)|0;c[(c[g>>2]|0)+756>>2]=r;if(!(c[j>>2]|0)){c[m>>2]=
0;while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;if(((c[o>>
2]|0)+(c[p>>2]|0)|0)>>>0>(c[k>>2]|0)>>>0)break;a[(c[(c[g>>2]|0)+
756>>2]|0)+(c[m>>2]|0)>>0]=a[c[o>>2]>>0]|0;c[o>>2]=(c[o>>2
]|0)+(c[p>>2]|0);c[m>>2]=(c[m>>2]|0)+1}c[(c[g>>2]|0)+748>>2]=c[m>>2];
c[(c[g>>2]|0)+744>>2]=c[q>>2];c[(c[g>>2]|0)+752>>2]=c[p>>2];break}}else
c[j>>2]=3;fe(c[h>>2]|0,(c[g>>2]|0)+740|0);c[(c[g>>2]|0)+744>>2]=0}while(0);c[
f>>2]=c[j>>2];r=c[f>>2]|0;i=s;return r|0}function Oe(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,q=0,r=0;r=i;i=i+48|0;g=r+40|0;h=r+36|0;m=r+32|0;q=r+28|0;f=r+24|0;o=r+20|0;l=r+16|0;n=r+12|0;p=r+8|0;k=r+4|0;j=r
;c[g>>2]=a;c[h>>2]=d;c[m>>2]=Wa[c[(c[g>>2]|0)+508>>2]&31](c[g>>
2]|0,1735162214,c[h>>2]|0,(c[g>>2]|0)+704|0)|0;if((c[m>>2]|0)!=142){if(c[m>>2]|0){q=c[m
x3e;>2]|0;i=r;return q|0}}else c[(c[g>>2]|0)+704>>2]=0;c[m>>2]=Wa[c[(c[g>>2]|0)+508
>>2]&31](c[g>>2]|0,1819239265,c[h>>2]|0,q)|0;if(c[m>>2]|0){c[m>>2]=144;q=
c[m>>2]|0;i=r;return q|0}do if(b[(c[g>>2]|0)+160+50>>1]|0){c[f>>2]=2;if((c[q>>
2]|0)>>>0<262144){c[(c[g>>2]|0)+732>>2]=(c[q>>2]|0)>>>(c[f>
;>2]|0);break}c[m>>2]=8;q=c[m>>2]|0;i=r;return q|0}else{c[f>>2]=1;if((c[q>>2]|0)>
;>>0<131072){c[(c[g>>2]|0)+732>>2]=(c[q>>2]|0)>>>(c[f>>2]|
0);break}c[m>>2]=8;q=c[m>>2]|0;i=r;return q|0}while(0);if((c[(c[g>>2]|0)+732>>2]|0)!=(c[(
c[g>>2]|0)+16>>2]|0)?(c[(c[g>>2]|0)+732>>2]|0)>>>0<(c[(c[g>>
;2]|0)+16>>2]|0)>>>0:0){c[o>>2]=c[(c[g>>2]|0)+16>>2]<<c[f>
x3e;2];c[l>>2]=c[(c[g>>2]|0)+156>>2];c[n>>2]=(c[l>>2]|0)+(e[(c[g>>2]|
0)+152>>1]<<4);c[p>>2]=Mc(c[h>>2]|0)|0;c[k>>2]=2147483647;while(1){a=c[l>
x3e;2]|0;if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[j>>2]=(c[a
+8>>2]|0)-(c[p>>2]|0);if((c[j>>2]|0)>0?(c[j>>2]|0)<(c[k>>2]|0):0)c[k
>>2]=c[j>>2];c[l>>2]=(c[l>>2]|0)+16}if((a|0)==(c[n>>2]|0))c[k>>2]=(c
[(c[h>>2]|0)+4>>2]|0)-(c[p>>2]|0);if((c[o>>2]|0)<=(c[k>>2]|0)){c[(c[g>
;>2]|0)+732>>2]=c[(c[g>>2]|0)+16>>2];c[q>>2]=c[o>>2]}}c[m>>2]=de
(c[h>>2]|0,c[q>>2]|0,(c[g>>2]|0)+736|0)|0;q=c[m>>2]|0;i=r;return q|0}function Pe(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>
;2]=Wa[c[(c[d>>2]|0)+508>>2]&31](c[d>>2]|0,1718642541,c[e>>2]|0,g)|0;if(c[f>
x3e;2]|0){c[(c[d>>2]|0)+656>>2]=0;c[(c[d>>2]|0)+652>>2]=0;c[f>>2]=0;g=c[f>
;>2]|0;i=h;return g|0}else{c[(c[d>>2]|0)+652>>2]=c[g>>2];c[f>>2]=de(c[e>>
2]|0,c[g>>2]|0,(c[d>>2]|0)+656|0)|0;g=c[f>>2]|0;i=h;return g|0}return 0}function Qe(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Wa
[c[(c[d>>2]|0)+508>>2]&31](c[d>>2]|0,1886545264,c[e>>2]|0,g)|0;if(c[f>>2]|
0){c[(c[d>>2]|0)+664>>2]=0;c[(c[d>>2]|0)+660>>2]=0;c[f>>2]=0;g=c[f>>
2]|0;i=h;return g|0}else{c[(c[d>>2]|0)+660>>2]=c[g>>2];c[f>>2]=de(c[e>>2]|0,c[
g>>2]|0,(c[d>>2]|0)+664|0)|0;g=c[f>>2]|0;i=h;return g|0}return 0}function Re(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)+512>>2]=22;c[(c[d>>2]|0)+520>>2]=34;c
[(c[d>>2]|0)+524>>2]=35;c[(c[d>>2]|0)+528>>2]=36;c[(c[d>>2]|0)+516>>
2]=34;i=b;return}function Se(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;g=l+20|0
;n=l+16|0;m=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=a;c[n>>2]=b;c[m>>2]=d;c[h>>2]=e;c[k>
x3e;2]=c[(c[g>>2]|0)+24>>2];c[n>>2]=c[n>>2];d=Kc(c[k>>2]|0,c[m>>2]|0
)|0;c[j>>2]=d;if((d|0)==0?(n=ee(c[k>>2]|0,c[h>>2]|0)|0,c[j>>2]=n,(n|0)==0):0){c[(c[g>
;>2]|0)+200>>2]=c[(c[k>>2]|0)+32>>2];c[(c[g>>2]|0)+204>>2]=c[(c[k>
x3e;2]|0)+36>>2];c[f>>2]=0;n=c[f>>2]|0;i=l;return n|0}c[f>>2]=c[j>>2];n=c[f>
;>2]|0;i=l;return n|0}function Te(e){e=e|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;f=j+12|0;g=j+8|0;h=j+4|0;k=j;c[g>>
;2]=e;c[h>>2]=c[(c[g>>2]|0)+200>>2];c[k>>2]=c[(c[g>>2]|0)+204>>2];if
(((c[h>>2]|0)+10|0)>>>0>(c[k>>2]|0)>>>0){c[f>>2]=20;k=c[f>
x3e;2]|0;i=j;return k|0}else{c[h>>2]=(c[h>>2]|0)+2;b[(c[g>>2]|0)+32>>1]=a[(c[h>>
;2]|0)+-2>>0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0;c[h>
;>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36>>2]=((a[(c[h>>2]|0)+-2>>0]<<
;16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<16>>16;
c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+4>>2]=((a[(c[h>>2]|0)+-2>>0]
x3c;<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<16>
x3e;16;c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+8>>2]=((a[(c[h>>2]|0)+-2>
x3e;0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<
16>>16;c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+12>>2]=((a[(c[h>>2]|0)+-
2>>0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<
;<16>>16;c[(c[g>>2]|0)+200>>2]=c[h>>2];c[f>>2]=0;k=c[f>>2]|0;i=
j;return k|0}return 0}function Ue(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,z=0,A=0,B
=0,C=0,D=0,E=0,F=0,G=0,H=0;H=i;i=i+96|0;j=H+72|0;o=H+68|0;A=H+64|0;v=H+60|0;u=H+56|0;w=H+52|0;z=H+48|0;r=H+44|0;x=H+78|0;y=H+40|
0;s=H+36|0;t=H+32|0;k=H+83|0;n=H+82|0;B=H+28|0;C=H+24|0;D=H+20|0;l=H+16|0;m=H+12|0;g=H+76|0;E=H+8|0;F=H+4|0;p=H+81|0;G=H;q=H+80|
0;c[j>>2]=f;c[A>>2]=c[(c[j>>2]|0)+200>>2];c[v>>2]=c[(c[j>>2]|0)+204
x3e;>2];c[u>>2]=c[(c[j>>2]|0)+12>>2];c[w>>2]=b[(c[j>>2]|0)+32>>
1];c[r>>2]=c[c[j>>2]>>2];c[E>>2]=0;if((c[w>>2]|0)!=0?((b[(c[u>>2]|0)+
20>>1]|0)+(b[(c[u>>2]|0)+56>>1]|0)+(c[w>>2]|0)|0)>>>0>(c[(c[u>
x3e;2]|0)+8>>2]|0)>>>0:0)f=kc(c[u>>2]|0,0,c[w>>2]|0)|0;else f=0;c[o>>2]=f
;if(c[o>>2]|0){G=c[o>>2]|0;i=H;return G|0}c[l>>2]=c[(c[u>>2]|0)+56+12>>2];c[m
x3e;>2]=(c[l>>2]|0)+(c[w>>2]<<1);a:do if((c[w>>2]|0)<4095?((c[A>>2]|
0)+((c[w>>2]|0)+1<<1)|0)>>>0<=(c[v>>2]|0)>>>0:0){c[A>>
;2]=(c[A>>2]|0)+2;b[g>>1]=(d[(c[A>>2]|0)+-2>>0]&65535)<<8|(d[(c[A>
x3e;2]|0)+-2+1>>0]&65535)<<0;if((c[w>>2]|0)>0)b[c[l>>2]>>1]=b[g>
;>1]|0;c[l>>2]=(c[l>>2]|0)+2;while(1){if((c[l>>2]|0)>>>0>=(c[m>>
;2]|0)>>>0)break;c[A>>2]=(c[A>>2]|0)+2;b[c[l>>2]>>1]=(d[(c[A>>2
]|0)+-2>>0]&65535)<<8|(d[(c[A>>2]|0)+-2+1>>0]&65535)<<0;if((b[c[l>
;>2]>>1]|0)<=(b[g>>1]|0)){h=12;break}b[g>>1]=b[c[l>>2]>>1]|0;c[l>
;>2]=(c[l>>2]|0)+2}if((h|0)==12){c[o>>2]=8;G=c[o>>2]|0;i=H;return G|0}c[y>>2]=0;if((
c[w>>2]|0)>0?(c[y>>2]=(b[(c[l>>2]|0)+-2>>1]|0)+1,(c[y>>2]|0)<0):0)break
;if(((c[y>>2]|0)+4|0)!=0?((b[(c[u>>2]|0)+20+2>>1]|0)+(b[(c[u>>2]|0)+56+2>>1]|0
)+((c[y>>2]|0)+4)|0)>>>0>(c[(c[u>>2]|0)+4>>2]|0)>>>0:0)f=kc(c[u
>>2]|0,(c[y>>2]|0)+4|0,0)|0;else f=0;c[o>>2]=f;if(c[o>>2]|0){G=c[o>>2]|0;i=H;return
G|0}c[z>>2]=(c[u>>2]|0)+56;c[l>>2]=(c[(c[z>>2]|0)+12>>2]|0)+2;while(1){if((c[
l>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;if((b[(c[l>>2]|0)+-2>
x3e;1]|0)>=(b[c[l>>2]>>1]|0))break a;c[l>>2]=(c[l>>2]|0)+2}c[(c[(c[j>>2]|
0)+8>>2]|0)+140>>2]=0;c[(c[(c[j>>2]|0)+8>>2]|0)+136>>2]=0;if(((c[A>>
2]|0)+2|0)>>>0<=(c[v>>2]|0)>>>0){c[A>>2]=(c[A>>2]|0)+2;b[x>
;>1]=(d[(c[A>>2]|0)+-2>>0]&65535)<<8|(d[(c[A>>2]|0)+-2+1>>0]&65535
)<<0;if((e[x>>1]|0)>(e[(c[r>>2]|0)+260+26>>1]|0)){c[o>>2]=22;G=c[o>
x3e;2]|0;i=H;return G|0}if(((c[v>>2]|0)-(c[A>>2]|0)|0)<(e[x>>1]|0)){c[o>>2]=22;G=c[
o>>2]|0;i=H;return G|0}if(!(c[(c[j>>2]|0)+16>>2]&2)){c[(c[(c[j>>2]|0)+8>>
2]|0)+140>>2]=e[x>>1];c[(c[(c[j>>2]|0)+8>>2]|0)+136>>2]=c[(c[(c[j>>2
]|0)+160>>2]|0)+392>>2];Ss(c[(c[(c[j>>2]|0)+160>>2]|0)+392>>2]|0,c[A>>
;2]|0,e[x>>1]|0)|0}c[A>>2]=(c[A>>2]|0)+(e[x>>1]|0);c[s>>2]=c[(c[z>>2
]|0)+8>>2];c[t>>2]=(c[s>>2]|0)+(c[y>>2]|0);b:while(1){if((c[s>>2]|0)>>
;>0>=(c[t>>2]|0)>>>0)break;if(((c[A>>2]|0)+1|0)>>>0>(c[v>
x3e;2]|0)>>>0)break a;r=c[A>>2]|0;c[A>>2]=r+1;r=a[r>>0]|0;a[k>>0]=r;x=c[s
>>2]|0;c[s>>2]=x+1;a[x>>0]=r;if(!(d[k>>0]&8))continue;if(((c[A>>2]|0)+1|0
)>>>0>(c[v>>2]|0)>>>0)break a;x=c[A>>2]|0;c[A>>2]=x+1;a[n>
x3e;0]=a[x>>0]|0;if(((c[s>>2]|0)+(d[n>>0]|0)|0)>>>0>(c[t>>2]|0)>
;>>0)break a;while(1){if((d[n>>0]|0)<=0)continue b;r=a[k>>0]|0;x=c[s>>2]|0;c[s>
;>2]=x+1;a[x>>0]=r;a[n>>0]=(a[n>>0]|0)+-1<<24>>24}}c[B>>2]=c[(c
[z>>2]|0)+4>>2];c[C>>2]=(c[B>>2]|0)+(c[y>>2]<<3);c[s>>2]=c
[(c[z>>2]|0)+8>>2];c[D>>2]=0;if(((c[A>>2]|0)+(c[E>>2]|0)|0)>>>0
<=(c[v>>2]|0)>>>0){while(1){if((c[B>>2]|0)>>>0>=(c[C>>2]|0
)>>>0)break;c[F>>2]=0;a[p>>0]=a[c[s>>2]>>0]|0;if(d[p>>0]&2
|0){if(((c[A>>2]|0)+1|0)>>>0>(c[v>>2]|0)>>>0)break a;E=c[A>>2]|
0;c[A>>2]=E+1;c[F>>2]=d[E>>0];if(!(d[p>>0]&16))c[F>>2]=0-(c[F>>
2]|0)}else if(!(d[p>>0]&16)){if(((c[A>>2]|0)+2|0)>>>0>(c[v>>2]|0)>
x3e;>0)break a;c[A>>2]=(c[A>>2]|0)+2;c[F>>2]=((a[(c[A>>2]|0)+-2>>0]<
x3c;16>>16<<8|d[(c[A>>2]|0)+-2+1>>0]<<0)&65535)<<16>>
16}c[D>>2]=(c[D>>2]|0)+(c[F>>2]|0);c[c[B>>2]>>2]=c[D>>2];a[c[s>
x3e;2]>>0]=d[p>>0]&-19;c[B>>2]=(c[B>>2]|0)+8;c[s>>2]=(c[s>>2]|0
)+1}c[B>>2]=c[(c[u>>2]|0)+56+4>>2];c[C>>2]=(c[B>>2]|0)+(c[y>>2]<
;<3);c[s>>2]=c[(c[z>>2]|0)+8>>2];c[D>>2]=0;while(1){if((c[B>>2]|0)>
x3e;>0>=(c[C>>2]|0)>>>0)break;c[G>>2]=0;a[q>>0]=a[c[s>>2]>
x3e;0]|0;if(d[q>>0]&4|0){if(((c[A>>2]|0)+1|0)>>>0>(c[v>>2]|0)>>
x3e;0)break a;F=c[A>>2]|0;c[A>>2]=F+1;c[G>>2]=d[F>>0];if(!(d[q>>0]&32))c[
G>>2]=0-(c[G>>2]|0)}else if(!(d[q>>0]&32)){if(((c[A>>2]|0)+2|0)>>>0
x3e;(c[v>>2]|0)>>>0)break a;c[A>>2]=(c[A>>2]|0)+2;c[G>>2]=((a[(c[A>
x3e;2]|0)+-2>>0]<<16>>16<<8|d[(c[A>>2]|0)+-2+1>>0]<<0)&
;65535)<<16>>16}c[D>>2]=(c[D>>2]|0)+(c[G>>2]|0);c[(c[B>>2]|0)+4>
;>2]=c[D>>2];a[c[s>>2]>>0]=d[q>>0]&1;c[B>>2]=(c[B>>2]|0)+8
;c[s>>2]=(c[s>>2]|0)+1}b[(c[z>>2]|0)+2>>1]=c[y>>2];b[c[z>>2]>
x3e;1]=c[w>>2];c[(c[j>>2]|0)+200>>2]=c[A>>2];G=c[o>>2]|0;i=H;return G|0}}}while
(0);c[o>>2]=20;G=c[o>>2]|0;i=H;return G|0}function Ve(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;u=i;i=i+64|0;n=u+48|0;o=u+44|0;s=u+40|0;q=u+36|0;p=u+32|0;h=u+28|0;r=u+24|0;j=u+20|0;k=u+16|0;m=u+12|0;l=u+8|0;g=
u+4|0;t=u;c[n>>2]=f;c[s>>2]=c[(c[n>>2]|0)+200>>2];c[q>>2]=c[(c[n>>2]|
0)+204>>2];c[p>>2]=c[(c[n>>2]|0)+12>>2];c[r>>2]=0;while(1){c[o>>2]=lc
(c[p>>2]|0,(c[r>>2]|0)+1|0)|0;if(c[o>>2]|0){f=24;break}if(((c[s>>2]|0)+4|0)>>
x3e;0>(c[q>>2]|0)>>>0){f=25;break}c[h>>2]=(c[(c[p>>2]|0)+56+32>>2]|0
)+(c[r>>2]<<5);c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+8>>2]=0;c[s>
;>2]=(c[s>>2]|0)+2;b[(c[h>>2]|0)+4>>1]=(d[(c[s>>2]|0)+-2>>0]&65535)
x3c;<8|(d[(c[s>>2]|0)+-2+1>>0]&65535)<<0;c[s>>2]=(c[s>>2]|0)+2;c[c[h
>>2]>>2]=((d[(c[s>>2]|0)+-2>>0]&65535)<<8|(d[(c[s>>2]|0)+-2+1
x3e;>0]&65535)<<0)&65535;c[g>>2]=2;if(e[(c[h>>2]|0)+4>>1]&1|0)c[g>
;>2]=(c[g>>2]|0)+2;do if(!(e[(c[h>>2]|0)+4>>1]&8|0)){if(e[(c[h>>2]|0)+4>
x3e;1]&64|0){c[g>>2]=(c[g>>2]|0)+4;break}if(e[(c[h>>2]|0)+4>>1]&128|0)c[g>
;>2]=(c[g>>2]|0)+8}else c[g>>2]=(c[g>>2]|0)+2;while(0);if(((c[s>>2]|0)+(c[g>
x3e;2]|0)|0)>>>0>(c[q>>2]|0)>>>0){f=25;break}f=c[s>>2]|0;if(e[(c[h>
x3e;2]|0)+4>>1]&1|0){c[s>>2]=f+2;c[(c[h>>2]|0)+8>>2]=((a[(c[s>>2]|0)+-2
x3e;>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<
x3c;16>>16;c[s>>2]=(c[s>>2]|0)+2;c[(c[h>>2]|0)+12>>2]=((a[(c[s>>2]|0
)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)
x3c;<16>>16}else{c[s>>2]=f+1;c[(c[h>>2]|0)+8>>2]=a[f>>0];f=c[s>>
;2]|0;c[s>>2]=f+1;c[(c[h>>2]|0)+12>>2]=a[f>>0]}c[m>>2]=65536;c[j>>2]=
65536;c[l>>2]=0;c[k>>2]=0;do if(!(e[(c[h>>2]|0)+4>>1]&8|0)){if(e[(c[h>>2]|
0)+4>>1]&64|0){c[s>>2]=(c[s>>2]|0)+2;c[j>>2]=((a[(c[s>>2]|0)+-2>>
;0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<<16
x3e;>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[m>>2]=((a[(c[s>>2]|0)+-2>>0]
x3c;<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<<16>
x3e;16<<2;break}if(e[(c[h>>2]|0)+4>>1]&128|0){c[s>>2]=(c[s>>2]|0)+2;c[j
x3e;>2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>
;>0]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[l>
x3e;2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>
;0]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[k>>
2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0
]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[m>>2]=((
a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<
;<0)&65535)<<16>>16<<2}}else{c[s>>2]=(c[s>>2]|0)+2;c[j>>2]=((
a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<
;<0)&65535)<<16>>16<<2;c[m>>2]=c[j>>2]}while(0);c[(c[h>>2]|
0)+16>>2]=c[j>>2];c[(c[h>>2]|0)+16+4>>2]=c[k>>2];c[(c[h>>2]|0)+16+8
x3e;>2]=c[l>>2];c[(c[h>>2]|0)+16+12>>2]=c[m>>2];c[r>>2]=(c[r>>2
]|0)+1;if(!(e[(c[h>>2]|0)+4>>1]&32)){f=23;break}}if((f|0)==23){c[(c[p>>2]|0)+56+28>>
;2]=c[r>>2];c[t>>2]=c[(c[n>>2]|0)+24>>2];t=Mc(c[t>>2]|0)|0;c[(c[n>>2
]|0)+168>>2]=(c[s>>2]|0)+t-(c[q>>2]|0);c[(c[n>>2]|0)+200>>2]=c[s>>2];
t=c[o>>2]|0;i=u;return t|0}else if((f|0)==24){t=c[o>>2]|0;i=u;return t|0}else if((f|0)==25){c[o>>2
]=21;t=c[o>>2]|0;i=u;return t|0}return 0}function We(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];ge(c[d>>2]|0);i=b;return}function Xe(a){a=a|0;var b=0,
d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[b>>2]=a;c[d>>2]=c[b>>2];if
(!(c[d>>2]|0)){i=h;return}c[e>>2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[b>
x3e;2]|0)+104>>2];c[f>>2]=c[(c[d>>2]|0)+532>>2];if(c[(c[d>>2]|0)+692+4>
x3e;2]|0)Va[c[(c[d>>2]|0)+692+4>>2]&63](c[(c[d>>2]|0)+692>>2]|0);if(c[f>>
2]|0)Va[c[(c[f>>2]|0)+12>>2]&63](c[d>>2]|0);Ye(c[d>>2]|0);Ze(c[d>>2]|0);Fb
(c[e>>2]|0,c[(c[d>>2]|0)+672>>2]|0);c[(c[d>>2]|0)+672>>2]=0;c[(c[d>>
2]|0)+668>>2]=0;fe(c[g>>2]|0,(c[d>>2]|0)+656|0);fe(c[g>>2]|0,(c[d>>2]|0)+664|0
);c[(c[d>>2]|0)+652>>2]=0;c[(c[d>>2]|0)+660>>2]=0;_e(c[e>>2]|0,c[(c[d>>
;2]|0)+712>>2]|0);c[(c[d>>2]|0)+712>>2]=0;i=h;return}function Ye(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]|0)+104>>2];fe(c[e>>2]|0,(c[d>
;>2]|0)+736|0);c[(c[d>>2]|0)+732>>2]=0;i=b;return}function Ze(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)+104>>2];c[f>>2]=c[(c[e>
;>2]|0)+28>>2];Fb(c[f>>2]|0,c[(c[d>>2]|0)+756>>2]|0);c[(c[d>>2]|0)+756>
;>2]=0;fe(c[e>>2]|0,(c[d>>2]|0)+740|0);i=b;return}function _e(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;
i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=g;return}Fb(c[d>>2]|
0,c[(c[e>>2]|0)+4>>2]|0);c[(c[e>>2]|0)+4>>2]=0;Fb(c[d>>2]|0,c[(c[e>>
2]|0)+8>>2]|0);c[(c[e>>2]|0)+8>>2]=0;if(c[(c[e>>2]|0)+20>>2]|0){c[f>>
;2]=0;while(1){b=c[d>>2]|0;if((c[f>>2]|0)>>>0>=(c[c[e>>2]>>2]|0)>
;>>0)break;Fb(b,c[(c[(c[e>>2]|0)+20>>2]|0)+(c[f>>2]<<3)+4>>2]|0);c[(
c[(c[e>>2]|0)+20>>2]|0)+(c[f>>2]<<3)+4>>2]=0;c[f>>2]=(c[f>>
;2]|0)+1}Fb(b,c[(c[e>>2]|0)+20>>2]|0);c[(c[e>>2]|0)+20>>2]=0}Fb(c[d>>2]|0,c[(c
[e>>2]|0)+28>>2]|0);c[(c[e>>2]|0)+28>>2]=0;Fb(c[d>>2]|0,c[(c[e>>2]|0
)+36>>2]|0);c[(c[e>>2]|0)+36>>2]=0;Fb(c[d>>2]|0,c[e>>2]|0);c[e>>2]=0
;i=g;return}function $e(b){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]=b;c[f>>2]=c[g
x3e;>2];c[d>>2]=0;a[(c[f>>2]|0)+300>>0]=0;a[(c[f>>2]|0)+301>>0]=0;a[(c[f
x3e;>2]|0)+72+36>>0]=0;c[(c[f>>2]|0)+112>>2]=-1;i=e;return c[d>>2]|0}function af(b){
b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=b;c[e>>2]=c[d>>2];if(a[(c[e>>2]|0
)+300>>0]|0)bf(c[d>>2]|0);a[(c[e>>2]|0)+72+36>>0]=0;i=f;return}function bf(d){d=d|0;var
e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;j=g+12|0;f=g+8|0;h=g+4|0;e=g;c[j>>2]=d;c[f>>2]=c[j>>2];c[h>
x3e;2]=c[c[j>>2]>>2];c[e>>2]=c[(c[h>>2]|0)+100>>2];if(a[(c[f>>2]|0)+
292>>0]|0){c[(c[f>>2]|0)+296>>2]=0;a[(c[f>>2]|0)+292>>0]=0}Fb(c[e>>2
]|0,c[(c[f>>2]|0)+244>>2]|0);c[(c[f>>2]|0)+244>>2]=0;c[(c[f>>2]|0)+240>
x3e;2]=0;Fb(c[e>>2]|0,c[(c[f>>2]|0)+252>>2]|0);c[(c[f>>2]|0)+252>>2]=0;b[(c[f
x3e;>2]|0)+248>>1]=0;cf((c[f>>2]|0)+256|0);Fb(c[e>>2]|0,c[(c[f>>2]|0)+124>>
;2]|0);c[(c[f>>2]|0)+124>>2]=0;Fb(c[e>>2]|0,c[(c[f>>2]|0)+136>>2]|0);c[(c[f>
;>2]|0)+136>>2]=0;c[(c[f>>2]|0)+116>>2]=0;c[(c[f>>2]|0)+120>>2]=0;c[(c[f
x3e;>2]|0)+128>>2]=0;c[(c[f>>2]|0)+132>>2]=0;c[(c[f>>2]|0)+140>>2]=0;c[(c
[f>>2]|0)+144>>2]=0;a[(c[f>>2]|0)+300>>0]=0;a[(c[f>>2]|0)+301>>0]=0;
i=g;return}function cf(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=c[c[d>>
2]>>2];if(!(c[e>>2]|0)){i=f;return}Fb(c[e>>2]|0,c[(c[d>>2]|0)+28>>2]|0);c[(c[d
>>2]|0)+28>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+24>>2]|0);c[(c[d>>2]|0)+
24>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+16>>2]=0
;Fb(c[e>>2]|0,c[(c[d>>2]|0)+12>>2]|0);c[(c[d>>2]|0)+12>>2]=0;Fb(c[e>>
;2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>>2]=0;b[(c[d>>2]|0)+8>>
;1]=0;b[(c[d>>2]|0)+4>>1]=0;b[(c[d>>2]|0)+10>>1]=0;b[(c[d>>2]|0)+6>>
1]=0;c[c[d>>2]>>2]=0;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;a=gc(c
[c[(c[d>>2]|0)+156>>2]>>2]|0)|0;i=b;return a|0}function ef(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+32|0;o=n+28|0;p=n+24|0;g=n+20|0;h=n+16|0;m=n+12|0;l=n+8|0;k=n+4|0;j=n;c[o
>>2]=a;c[p>>2]=b;c[g>>2]=d;c[h>>2]=e;c[m>>2]=c[o>>2];c[l>>
2]=c[p>>2];c[k>>2]=c[(c[o>>2]|0)+4>>2];if(!(c[m>>2]|0)){c[f>>2]=37;p
=c[f>>2]|0;i=n;return p|0}if(!(c[l>>2]|0)){c[f>>2]=36;p=c[f>>2]|0;i=n;return p|0}if(!(c[
k>>2]|0)){c[f>>2]=6;p=c[f>>2]|0;i=n;return p|0}if((c[g>>2]|0)>>>0>=(
c[(c[k>>2]|0)+16>>2]|0)>>>0?(c[(c[(c[k>>2]|0)+128>>2]|0)+52>>2]|
0)==0:0){c[f>>2]=6;p=c[f>>2]|0;i=n;return p|0}if(c[h>>2]&2|0){if(c[(c[k>>2]|0)+8>
;>2]&8192|0)c[h>>2]=c[h>>2]&-3;if(c[h>>2]&32768|0)c[h>>2]=c[h>
x3e;2]|2}if(c[h>>2]&1025|0?(c[h>>2]=c[h>>2]|9,(c[(c[k>>2]|0)+8>>2]&8192
|0)==0):0)c[h>>2]=c[h>>2]|2;c[j>>2]=ff(c[l>>2]|0,c[m>>2]|0,c[g>>2]|0
,c[h>>2]|0)|0;c[f>>2]=c[j>>2];p=c[f>>2]|0;i=n;return p|0}function ff(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;r=i;i=i+256|0;h=r+240|0;j=r+236|0;k=r+232|0;l=r+228|0;m=r+224|0;o=r+220
|0;n=r+216|0;p=r+8|0;q=r;c[j>>2]=b;c[k>>2]=d;c[l>>2]=f;c[m>>2]=g;c[o>>2]=c[(c[
k>>2]|0)+4>>2];c[n>>2]=0;if(((c[(c[j>>2]|0)+112>>2]|0)!=-1?(c[m>>2]
x26;8|0)==0:0)?(c[n>>2]=gf(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0,(c[n>
;>2]|0)==0):0){c[q>>2]=c[o>>2];if((c[(c[q>>2]|0)+8>>2]&1|0?(hf(p,c[j>>
;2]|0,c[k>>2]|0,c[m>>2]|0,1)|0,ah(p,c[l>>2]|0,0,1)|0,c[(c[k>>2]|0)+56>>2]=c[p+
60>>2],c[(c[k>>2]|0)+60>>2]=(c[p+176>>2]|0)+(c[p+36+12>>2]|0)-(c[p+180>
x3e;2]|0),c[(c[o>>2]|0)+468+12>>2]|0):0)?(c[m>>2]&512|0)==0:0)c[(c[k>>2]|0)+56>
;>2]=e[(c[o>>2]|0)+216+10>>1];c[h>>2]=0;b=c[h>>2]|0;i=r;return b|0}if((c[m>>
;2]&1|0)==0?(a[(c[j>>2]|0)+72+36>>0]|0)==0:0){c[h>>2]=36;b=c[h>>2]|0;i=r;return b|0
}if(c[m>>2]&16384|0){c[h>>2]=6;b=c[h>>2]|0;i=r;return b|0}c[n>>2]=hf(p,c[j>>
;2]|0,c[k>>2]|0,c[m>>2]|0,0)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];b=c[h>>
2]|0;i=r;return b|0}c[(c[k>>2]|0)+72>>2]=1869968492;c[(c[k>>2]|0)+128>>2]=0;c[(c[k>
x3e;2]|0)+108+16>>2]=0;c[n>>2]=ah(p,c[l>>2]|0,0,0)|0;if(!(c[n>>2]|0)){if((c[(c[k>
x3e;2]|0)+72>>2]|0)!=1668246896){b=(c[k>>2]|0)+108|0;q=(c[p+12>>2]|0)+20|0;c[b>>2]=c[q
x3e;>2];c[b+4>>2]=c[q+4>>2];c[b+8>>2]=c[q+8>>2];c[b+12>>2]=c[q+12>
x3e;2];c[b+16>>2]=c[q+16>>2];b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]&-513;
if(c[p+68>>2]|0)Nb((c[k>>2]|0)+108|0,0-(c[p+68>>2]|0)|0,0)}else{c[(c[k>>2]|0)+128>
x3e;2]=c[(c[p+12>>2]|0)+20+28>>2];c[(c[k>>2]|0)+132>>2]=c[(c[p+12>>2]|0)+20+32
>>2]}a:do if(!(c[m>>2]&2)){if(!(a[(c[p+160>>2]|0)+284+53>>0]|0)){b=(c[k>>
2]|0)+108+16|0;c[b>>2]=c[b>>2]|8;break}switch(c[(c[p+160>>2]|0)+284+56>>2]|0){case 1:break
a;case 0:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|32;break a}case 4:{b=(c[k>>2]|0)+108+16
|0;c[b>>2]=c[b>>2]|48;break a}case 5:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|16
;break a}default:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|8;break a}}}while(0);nh(p,c[l>>
2]|0)|0}if((c[m>>2]&1|0)==0?(e[(c[j>>2]|0)+12+2>>1]|0)<24:0){b=(c[k>>2]|0)+108
+16|0;c[b>>2]=c[b>>2]|256}c[h>>2]=c[n>>2];b=c[h>>2]|0;i=r;return b|0}function
gf(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;n=i;i=i+48|0;q=n+28|0;j=n+24|0;p=n+20|0;k=n+16|0
;r=n+12|0;s=n+8|0;o=n+4|0;l=n;m=n+32|0;c[q>>2]=e;c[j>>2]=f;c[p>>2]=g;c[k>>2]=h;c[r>
x3e;2]=c[(c[j>>2]|0)+4>>2];c[s>>2]=c[(c[r>>2]|0)+532>>2];c[o>>2]=c[(
c[r>>2]|0)+104>>2];c[l>>2]=Na[c[(c[s>>2]|0)+104>>2]&1](c[r>>2]|
0,c[(c[q>>2]|0)+112>>2]|0,c[p>>2]|0,c[k>>2]|0,c[o>>2]|0,(c[j>>2]|0)+
76|0,m)|0;if(c[l>>2]|0){s=c[l>>2]|0;i=n;return s|0}b[(c[j>>2]|0)+108+2>>1]=0;b[(c[j>
;>2]|0)+108>>1]=0;c[(c[j>>2]|0)+24>>2]=d[m+1>>0]<<6;c[(c[j>>2]|
0)+24+4>>2]=d[m>>0]<<6;c[(c[j>>2]|0)+24+8>>2]=a[m+2>>0]<<6
;c[(c[j>>2]|0)+24+12>>2]=a[m+3>>0]<<6;c[(c[j>>2]|0)+24+16>>2]=d[m+4
x3e;>0]<<6;c[(c[j>>2]|0)+24+20>>2]=a[m+5>>0]<<6;c[(c[j>>2]|0)+24
+24>>2]=a[m+6>>0]<<6;c[(c[j>>2]|0)+24+28>>2]=d[m+7>>0]<<6;
c[(c[j>>2]|0)+72>>2]=1651078259;if(c[k>>2]&16|0){c[(c[j>>2]|0)+100>>2]=a[
m+5>>0];c[(c[j>>2]|0)+104>>2]=a[m+6>>0];s=c[l>>2]|0;i=n;return s|0}else{c[(c[j
>>2]|0)+100>>2]=a[m+2>>0];c[(c[j>>2]|0)+104>>2]=a[m+3>>0];s=c[l>
;>2]|0;i=n;return s|0}return 0}function hf(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;y=i;i=i+64|0;n=y+44|0;o=y+40|0;p=y+36|0;q=y+32|0;r=y+28|0;s=y+49|0;v=y+24|0;x=y+20|0;u=y+16|0;l=y+48|0;
k=y+12|0;m=y+8|0;t=y+4|0;w=y;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;a[s>>0]=j
;c[v>>2]=c[(c[q>>2]|0)+4>>2];c[x>>2]=c[(c[v>>2]|0)+104>>2];Ns(c[o>
;>2]|0,0,208)|0;if(!((c[r>>2]&2|0)!=0|(a[s>>0]|0)!=0)){if((a[(c[p>>2]|0)+301>>
0]|0)==0?(c[k>>2]=jf(c[p>>2]|0)|0,c[k>>2]|0):0){c[n>>2]=c[k>>2];x=c[n>>
;2]|0;i=y;return x|0}if(d[(c[p>>2]|0)+292>>0]|0)k=c[(c[p>>2]|0)+296>>2]|0;else k=c[(c[(c
[v>>2]|0)+96>>2]|0)+40>>2]|0;c[u>>2]=k;if(!(c[u>>2]|0)){c[n>>2]=153;
x=c[n>>2]|0;i=y;return x|0}a[l>>0]=(c[r>>2]>>16&15|0)!=2;Vg(c[u>>2]|0,c[v
>>2]|0,c[p>>2]|0)|0;if((d[l>>0]|0)!=(d[(c[u>>2]|0)+604>>0]|0)){a[(c[u>>
;2]|0)+604>>0]=a[l>>0]|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[(
c[p>>2]|0)+240>>2]|0)>>>0)break;l=Mb(b[(c[(c[v>>2]|0)+672>>2]|0)+(c[m>
;>2]<<1)>>1]|0,c[(c[p>>2]|0)+72+16>>2]|0)|0;c[(c[(c[p>>2]|0)+244>>
;2]|0)+(c[m>>2]<<2)>>2]=l;c[m>>2]=(c[m>>2]|0)+1}$g(c[p>>2]|0)|0}if(d
[(c[u>>2]|0)+284+52>>0]&1|0)c[r>>2]=c[r>>2]|2;if(d[(c[u>>2]|0)+284+52>
;>0]&2|0){k=(c[u>>2]|0)+284|0;j=568;g=k+68|0;do{c[k>>2]=c[j>>2];k=k+4|0;j=j+4|0}while((k
|0)<(g|0))}a[(c[u>>2]|0)+561>>0]=c[r>>2]&128;c[(c[o>>2]|0)+160>>2]=c
[u>>2];c[(c[o>>2]|0)+164>>2]=c[(c[u>>2]|0)+392>>2]}do if(c[(c[(c[v>>
2]|0)+128>>2]|0)+52>>2]|0)c[(c[o>>2]|0)+84>>2]=0;else{c[t>>2]=Wa[c[(c[v>
x3e;2]|0)+508>>2]&31](c[v>>2]|0,1735162214,c[x>>2]|0,0)|0;if((c[t>>2]|0)==142){c[(c
[o>>2]|0)+84>>2]=0;break}if(!(c[t>>2]|0)){u=Mc(c[x>>2]|0)|0;c[(c[o>>2]|0)+84
x3e;>2]=u;break}c[n>>2]=c[t>>2];x=c[n>>2]|0;i=y;return x|0}while(0);if(!(a[s>>0]|0)){
c[w>>2]=c[c[(c[q>>2]|0)+156>>2]>>2];dc(c[w>>2]|0);c[(c[o>>2]|0)+12
x3e;>2]=c[w>>2]}c[(c[o>>2]|0)+16>>2]=c[r>>2];c[c[o>>2]>>2]=c[v
x3e;>2];c[(c[o>>2]|0)+4>>2]=c[p>>2];c[(c[o>>2]|0)+8>>2]=c[q>>2];
c[(c[o>>2]|0)+24>>2]=c[x>>2];c[n>>2]=0;x=c[n>>2]|0;i=y;return x|0}function jf(
d){d=d|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;h=k+12|0;j=k+8|0;g=k+4|0;f=k;c[h>>2]=d;c[j>>2]=0;if((a[(c[h>
;>2]|0)+300>>0]|0)==0?(c[j>>2]=kf(c[h>>2]|0)|0,c[j>>2]|0):0){j=c[j>>2]|0;
i=k;return j|0}if(a[(c[h>>2]|0)+301>>0]|0){j=c[j>>2]|0;i=k;return j|0}c[f>>2]=c[c[h>
;>2]>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[(c[h>>2]|0)+
240>>2]|0)>>>0)break;d=Mb(b[(c[(c[f>>2]|0)+672>>2]|0)+(c[g>>2]<<
;1)>>1]|0,c[(c[h>>2]|0)+72+16>>2]|0)|0;c[(c[(c[h>>2]|0)+244>>2]|0)+(c[g>
x3e;2]<<2)>>2]=d;c[g>>2]=(c[g>>2]|0)+1}c[g>>2]=0;while(1){if((c[g>>2
]|0)>>>0>=(e[(c[h>>2]|0)+256+8>>1]|0)>>>0)break;c[(c[(c[h>>2]|0
)+256+12>>2]|0)+(c[g>>2]<<3)>>2]=0;c[(c[(c[h>>2]|0)+256+12>>2]|0)+(c
[g>>2]<<3)+4>>2]=0;c[(c[(c[h>>2]|0)+256+16>>2]|0)+(c[g>>2]<<
;3)>>2]=0;c[(c[(c[h>>2]|0)+256+16>>2]|0)+(c[g>>2]<<3)+4>>2]=0;c[g>
;>2]=(c[g>>2]|0)+1}c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(e[(c[h>
x3e;2]|0)+248>>1]|0)>>>0)break;c[(c[(c[h>>2]|0)+252>>2]|0)+(c[g>>2]<
x3c;2)>>2]=0;c[g>>2]=(c[g>>2]|0)+1}f=(c[h>>2]|0)+172|0;g=568;d=f+68|0;do{c[f>>
2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(d|0));c[j>>2]=$g(c[h>>2]|0)|0;if(c[j>>2]|0){
j=c[j>>2]|0;i=k;return j|0}a[(c[h>>2]|0)+301>>0]=1;j=c[j>>2]|0;i=k;return j|0}function kf
(d){d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;l=q+32|0;m=q+28|0;p=q+24|0;n=q+20|0;h=q+16|0;f=q+12|0;k=q
+36|0;g=q+8|0;j=q+4|0;o=q;c[l>>2]=d;c[p>>2]=c[l>>2];c[n>>2]=c[c[l>>2]>>
;2];c[h>>2]=c[(c[n>>2]|0)+100>>2];c[g>>2]=(c[n>>2]|0)+260;a[(c[p>>2]|
0)+300>>0]=1;a[(c[p>>2]|0)+301>>0]=0;c[(c[p>>2]|0)+120>>2]=e[(c[g>>2
]|0)+20>>1];c[(c[p>>2]|0)+132>>2]=e[(c[g>>2]|0)+22>>1];c[(c[p>>2]|0)+
116>>2]=0;c[(c[p>>2]|0)+128>>2]=0;c[(c[p>>2]|0)+140>>2]=0;c[(c[p>>2]|
0)+144>>2]=0;c[(c[p>>2]|0)+240>>2]=c[(c[n>>2]|0)+668>>2];b[(c[p>>2]|
0)+248>>1]=b[(c[g>>2]|0)+18>>1]|0;c[j>>2]=(c[p>>2]|0)+72;a[(c[j>>2]|
0)+37>>0]=0;a[(c[j>>2]|0)+38>>0]=0;c[f>>2]=0;while(1){if((c[f>>2]|0)>=4)break
;c[(c[j>>2]|0)+20+(c[f>>2]<<2)>>2]=0;c[f>>2]=(c[f>>2]|0)+1}j=hc(c[h
x3e;>2]|0,16,0,c[(c[p>>2]|0)+120>>2]|0,0,m)|0;c[(c[p>>2]|0)+124>>2]=j;if(((((c[m>
;>2]|0)==0?(j=hc(c[h>>2]|0,16,0,c[(c[p>>2]|0)+132>>2]|0,0,m)|0,c[(c[p>>2]|0)+136>
;>2]=j,(c[m>>2]|0)==0):0)?(j=hc(c[h>>2]|0,4,0,c[(c[p>>2]|0)+240>>2]|0,0,m)|0,c[(c[p
>>2]|0)+244>>2]=j,(c[m>>2]|0)==0):0)?(j=hc(c[h>>2]|0,4,0,e[(c[p>>2]|0)+248>
;>1]|0,0,m)|0,c[(c[p>>2]|0)+252>>2]=j,(c[m>>2]|0)==0):0)?(b[k>>1]=b[(c[g>>
;2]|0)+16>>1]|0,b[k>>1]=(e[k>>1]|0)+4,c[m>>2]=lf(c[h>>2]|0,b[k>>1]|0
,0,(c[p>>2]|0)+256|0)|0,(c[m>>2]|0)==0):0){b[(c[p>>2]|0)+256+8>>1]=b[k>>1]|0;d
=(c[p>>2]|0)+172|0;f=568;g=d+68|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));c[o
x3e;>2]=c[(c[(c[n>>2]|0)+96>>2]|0)+4>>2];c[(c[n>>2]|0)+688>>2]=c[(c[o>
;>2]|0)+180>>2];if(!(c[(c[n>>2]|0)+688>>2]|0))c[(c[n>>2]|0)+688>>2]=37;c[
m>>2]=Ug(c[p>>2]|0)|0}if(!(c[m>>2]|0)){p=c[m>>2]|0;i=q;return p|0}bf(c[l>>2]|0
);p=c[m>>2]|0;i=q;return p|0}function lf(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;n=i;i=i+16|0;h=n
+8|0;j=n+14|0;k=n+12|0;l=n+4|0;m=n;c[h>>2]=a;b[j>>1]=d;b[k>>1]=f;c[l>>2]=g;f=c[l>
x3e;2]|0;d=f+36|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(d|0));c[c[l>>2]>>2]=c[h>>2];g=hc
(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0;c[(c[l>>2]|0)+12>>2]=g;if(((((c[m>>2]|0)==0?(g
=hc(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+16>>2]=g,(c[m>>2]|0)==0):0)?(
g=hc(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+20>>2]=g,(c[m>>2]|0)==0):0)?(
g=hc(c[h>>2]|0,1,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+24>>2]=g,(c[m>>2]|0)==0):0)?(
h=hc(c[h>>2]|0,2,0,b[k>>1]|0,0,m)|0,c[(c[l>>2]|0)+28>>2]=h,(c[m>>2]|0)==0):0){
b[(c[l>>2]|0)+4>>1]=b[j>>1]|0;b[(c[l>>2]|0)+6>>1]=b[k>>1]|0;m=c[m>
;>2]|0;i=n;return m|0}cf(c[l>>2]|0);m=c[m>>2]|0;i=n;return m|0}function mf(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,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=i;i=i+96|0;h=G+68|0;j=G+64|0;C=G+60|0
;z=G+56|0;E=G+80|0;k=G+78|0;l=G+76|0;t=G+74|0;v=G+52|0;x=G+48|0;u=G+72|0;w=G+44|0;y=G+40|0;r=G+36|0;s=G+32|0;m=G+28|0;n=G+24|0;o
=G+20|0;p=G+16|0;q=G+12|0;B=G+8|0;D=G+4|0;A=G;c[j>>2]=f;c[C>>2]=0;c[(c[j>>2]|0)+244+12>>
2]=0;f=(c[j>>2]|0)+592|0;if((e[(c[j>>2]|0)+216>>1]|0)!=(e[(c[j>>2]|0)+216+2>>1
]|0)){c[f>>2]=103;c[(c[j>>2]|0)+596>>2]=9;c[(c[j>>2]|0)+600>>2]=10}else{c[f>
;>2]=104;c[(c[j>>2]|0)+596>>2]=11;c[(c[j>>2]|0)+600>>2]=12}vf(c[j>>2]|0);
Hf(c[j>>2]|0,c[(c[j>>2]|0)+284+28>>2]&255);a:while(1){a[(c[j>>2]|0)+368>>
0]=a[(c[(c[j>>2]|0)+356>>2]|0)+(c[(c[j>>2]|0)+360>>2]|0)>>0]|0;g=a[10705+(d[(c
[j>>2]|0)+368>>0]|0)>>0]|0;c[(c[j>>2]|0)+372>>2]=g;if((g|0)<0){if(((c[(c[
j>>2]|0)+360>>2]|0)+1|0)>(c[(c[j>>2]|0)+364>>2]|0)){F=196;break}g=2-(_(c[(c[j>
x3e;2]|0)+372>>2]|0,d[(c[(c[j>>2]|0)+356>>2]|0)+((c[(c[j>>2]|0)+360>>2]|0)+1)
x3e;>0]|0)|0)|0;c[(c[j>>2]|0)+372>>2]=g}if(((c[(c[j>>2]|0)+360>>2]|0)+(c[(c[j>
x3e;2]|0)+372>>2]|0)|0)>(c[(c[j>>2]|0)+364>>2]|0)){F=196;break}c[(c[j>>2]|0)+28>
;>2]=(c[(c[j>>2]|0)+16>>2]|0)-(d[10961+(d[(c[j>>2]|0)+368>>0]|0)>>0]>
;>4);f=c[j>>2]|0;if((c[(c[j>>2]|0)+28>>2]|0)<0){F=10;break}c[(c[j>>2]|0)+32>
;>2]=(c[f+28>>2]|0)+(d[10961+(d[(c[j>>2]|0)+368>>0]|0)>>0]&15);f=c[j>>
;2]|0;if((c[(c[j>>2]|0)+32>>2]|0)>>>0>(c[(c[j>>2]|0)+20>>2]|0)>
x3e;>0){F=12;break}a[f+376>>0]=1;c[(c[j>>2]|0)+12>>2]=0;c[z>>2]=(c[(c[j>>
2]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<2);a[E>>0]=a[(c[j>>2]|0)+368
x3e;>0]|0;b:do switch(d[E>>0]|0){case 5:case 4:case 3:case 2:case 1:case 0:{b[k>>1]=(d[E>>0]
x26;1)<<14;b[l>>1]=b[k>>1]^16384;if((d[E>>0]|0)<4){b[(c[j>>2]|0)+284+10
x3e;>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+10+2>>1]=b[l>>1]|0;b[(c[j>>2]|0)+284+
6>>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+6+2>>1]=b[l>>1]|0}if(!(d[E>>0]&
;2)){b[(c[j>>2]|0)+284+14>>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+14+2>>1]=b[l>
x3e;1]|0}vf(c[j>>2]|0);break}case 7:case 6:{if(!((Qf(c[j>>2]|0,c[(c[z>>2]|0)+4>>2]&
65535,c[c[z>>2]>>2]&65535,d[(c[j>>2]|0)+368>>0]|0,(c[j>>2]|0)+284+10|0)|0
)&255)){g=(c[j>>2]|0)+284+6|0;f=(c[j>>2]|0)+284+10|0;b[g>>1]=b[f>>1]|0;b[g+2>
x3e;1]=b[f+2>>1]|0;vf(c[j>>2]|0)}break}case 9:case 8:{if(!((Qf(c[j>>2]|0,c[(c[z>>2]|0)+4
>>2]&65535,c[c[z>>2]>>2]&65535,d[(c[j>>2]|0)+368>>0]|0,(c[j>>
;2]|0)+284+14|0)|0)&255))vf(c[j>>2]|0);break}case 10:{b[t>>1]=c[(c[z>>2]|0)+4>>2];c
[x>>2]=b[t>>1];b[t>>1]=c[c[z>>2]>>2];c[v>>2]=b[t>>1];Rf(c[
j>>2]|0,c[v>>2]|0,c[x>>2]|0,(c[j>>2]|0)+284+10|0)|0;g=(c[j>>2]|0)+284+6|0;f=(c
[j>>2]|0)+284+10|0;b[g>>1]=b[f>>1]|0;b[g+2>>1]=b[f+2>>1]|0;vf(c[j>>2
]|0);break}case 11:{b[u>>1]=c[(c[z>>2]|0)+4>>2];c[y>>2]=b[u>>1];b[u>>
;1]=c[c[z>>2]>>2];c[w>>2]=b[u>>1];Rf(c[j>>2]|0,c[w>>2]|0,c[y>
x3e;2]|0,(c[j>>2]|0)+284+14|0)|0;vf(c[j>>2]|0);break}case 12:{c[c[z>>2]>>2]=b[(c[j>
x3e;2]|0)+284+10>>1];c[(c[z>>2]|0)+4>>2]=b[(c[j>>2]|0)+284+10+2>>1];break}case
13:{c[c[z>>2]>>2]=b[(c[j>>2]|0)+284+14>>1];c[(c[z>>2]|0)+4>>2]=b[(c
[j>>2]|0)+284+14+2>>1];break}case 14:{g=(c[j>>2]|0)+284+14|0;f=(c[j>>2]|0)+284+10|0;b[g
x3e;>1]=b[f>>1]|0;b[g+2>>1]=b[f+2>>1]|0;vf(c[j>>2]|0);break}case 15:{Sf(c[j>
x3e;2]|0,c[z>>2]|0);break}case 16:{b[(c[j>>2]|0)+284>>1]=c[c[z>>2]>>2];break}case
17:{b[(c[j>>2]|0)+284+2>>1]=c[c[z>>2]>>2];break}case 18:{b[(c[j>>2]|0)+284+4
x3e;>1]=c[c[z>>2]>>2];break}case 19:{Tf(c[j>>2]|0,c[z>>2]|0);break}case 20:{Uf(c[j
x3e;>2]|0,c[z>>2]|0);break}case 21:{Vf(c[j>>2]|0,c[z>>2]|0);break}case 22:{Wf(c[j>>
2]|0,c[z>>2]|0);break}case 23:if((c[c[z>>2]>>2]|0)<0){c[(c[j>>2]|0)+12>>2
]=132;break b}else{c[(c[j>>2]|0)+284+20>>2]=c[c[z>>2]>>2];break b}case 24:{c[(c[j>
x3e;2]|0)+284+28>>2]=1;c[(c[j>>2]|0)+568>>2]=33;break}case 25:{c[(c[j>>2]|0)+284+28>
;>2]=0;c[(c[j>>2]|0)+568>>2]=34;break}case 26:{c[(c[j>>2]|0)+284+24>>2]=c[c[z>
x3e;2]>>2];break}case 27:{Xf(c[j>>2]|0,c[z>>2]|0);break}case 28:{g=(c[j>>2]|0)+360|0;c[g
>>2]=(c[g>>2]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|0)+360>>2]|0)<
;0)c[(c[j>>2]|0)+12>>2]=132;a[(c[j>>2]|0)+376>>0]=0;break}case 29:{c[(c[j>>2]|
0)+284+36>>2]=c[c[z>>2]>>2];break}case 30:{c[(c[j>>2]|0)+284+40>>2]=c[c[z>
;>2]>>2];break}case 31:{c[(c[j>>2]|0)+284+44>>2]=c[c[z>>2]>>2]>>
;10;break}case 32:{c[(c[z>>2]|0)+4>>2]=c[c[z>>2]>>2];break}case 127:case 126:case 89:case
33:break;case 34:{c[(c[j>>2]|0)+32>>2]=0;break}case 35:{c[r>>2]=c[c[z>>2]>>2];
c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>>2];c[(c[z>>2]|0)+4>>2]=c[r>>
;2];break}case 36:{c[c[z>>2]>>2]=c[(c[j>>2]|0)+16>>2];break}case 37:{c[s>>2]=c
[c[z>>2]>>2];if((c[s>>2]|0)>0?(c[s>>2]|0)<=(c[(c[j>>2]|0)+28>
x3e;2]|0):0){c[c[z>>2]>>2]=c[(c[(c[j>>2]|0)+24>>2]|0)+((c[(c[j>>2]|0)+28>
x3e;2]|0)-(c[s>>2]|0)<<2)>>2];break b}c[(c[j>>2]|0)+12>>2]=134;break}case 38:{
Zf(c[j>>2]|0,c[z>>2]|0);break}case 39:{_f(c[j>>2]|0,c[z>>2]|0);break}case 40:{$f(c[j>
;>2]|0,c[z>>2]|0);break}case 41:{bg(c[j>>2]|0,c[z>>2]|0);break}case 42:{cg(c[j>>2]|
0,c[z>>2]|0);break}case 43:{dg(c[j>>2]|0,c[z>>2]|0);break}case 44:{eg(c[j>>2]|0,c[z>
;>2]|0);break}case 45:{fg(c[j>>2]|0,c[z>>2]|0);break}case 47:case 46:{gg(c[j>>2]|0,c[z>
x3e;2]|0);break}case 49:case 48:{hg(c[j>>2]|0,c[z>>2]|0);break}case 51:case 50:{kg(c[j>>2]|0,c[z
x3e;>2]|0);break}case 53:case 52:{ng(c[j>>2]|0,c[z>>2]|0);break}case 55:case 54:{og(c[j>>2]|0
,c[z>>2]|0);break}case 56:{pg(c[j>>2]|0,c[z>>2]|0);break}case 57:{rg(c[j>>2]|0,c[z>
x3e;2]|0);break}case 59:case 58:{sg(c[j>>2]|0,c[z>>2]|0);break}case 60:{tg(c[j>>2]|0,c[z>>
;2]|0);break}case 61:{c[(c[j>>2]|0)+284+28>>2]=2;c[(c[j>>2]|0)+568>>2]=35;break}case 63:
case 62:{ug(c[j>>2]|0,c[z>>2]|0);break}case 64:{vg(c[j>>2]|0,c[z>>2]|0);break}case 65:{wg
(c[j>>2]|0,c[z>>2]|0);break}case 66:{c[m>>2]=c[c[z>>2]>>2];if((c[m>>
2]|0)>>>0>=(e[(c[j>>2]|0)+468>>1]|0)>>>0)if(a[(c[j>>2]|0)+561
x3e;>0]|0){F=81;break b}else break b;else{c[(c[(c[j>>2]|0)+472>>2]|0)+(c[m>>2]<<2)
x3e;>2]=c[(c[z>>2]|0)+4>>2];break b}}case 67:{c[n>>2]=c[c[z>>2]>>2];if((c
[n>>2]|0)>>>0<(e[(c[j>>2]|0)+468>>1]|0)>>>0){c[c[z>>2
]>>2]=c[(c[(c[j>>2]|0)+472>>2]|0)+(c[n>>2]<<2)>>2];break b}if(a[(c[j
>>2]|0)+561>>0]|0)F=81;else c[c[z>>2]>>2]=0;break}case 68:{c[o>>2]=c[c[z>
x3e;2]>>2];f=c[j>>2]|0;if((c[o>>2]|0)>>>0>=(c[(c[j>>2]|0)+380>
x3e;2]|0)>>>0)if(a[f+561>>0]|0){F=81;break b}else break b;else{Ua[c[f+596>>2]&31](c[j>
;>2]|0,c[o>>2]|0,c[(c[z>>2]|0)+4>>2]|0);break b}}case 69:{c[p>>2]=c[c[z>>
2]>>2];f=c[j>>2]|0;if((c[p>>2]|0)>>>0<(c[(c[j>>2]|0)+380>>
2]|0)>>>0){g=Ya[c[f+592>>2]&127](c[j>>2]|0,c[p>>2]|0)|0;c[c[z>>2]>
;>2]=g;break b}if(a[f+561>>0]|0)F=81;else c[c[z>>2]>>2]=0;break}case 71:case 70:{yg(c[j>
x3e;2]|0,c[z>>2]|0);break}case 72:{zg(c[j>>2]|0,c[z>>2]|0);break}case 74:case 73:{Ag(c[j>>
;2]|0,c[z>>2]|0);break}case 75:{g=Bg(c[j>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 76:{g=Bg(c[
j>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 77:{a[(c[j>>2]|0)+284+32>>0]=1;break}case
78:{a[(c[j>>2]|0)+284+32>>0]=0;break}case 79:{c[(c[j>>2]|0)+12>>2]=135;break}case 80:{c
[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<(c[(c[z>>2]|0)+4>>2]|0)&1;break
}case 81:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<=(c[(c[z>>2]|0)+4>>2]|
0)&1;break}case 82:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)>(c[(c[z>>2]|0)+4
>>2]|0)&1;break}case 83:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)>=(c[(c[z>
;>2]|0)+4>>2]|0)&1;break}case 84:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)==(
c[(c[z>>2]|0)+4>>2]|0)&1;break}case 85:{c[c[z>>2]>>2]=(c[c[z>>2]>>
;2]|0)!=(c[(c[z>>2]|0)+4>>2]|0)&1;break}case 86:{g=((Oa[c[(c[j>>2]|0)+568>>2]&
63](c[j>>2]|0,c[c[z>>2]>>2]|0,0)|0)&127|0)==64&1;c[c[z>>2]>>2]=g;break
}case 87:{g=((Oa[c[(c[j>>2]|0)+568>>2]&63](c[j>>2]|0,c[c[z>>2]>>2]|0,0)|0
)&127|0)==0&1;c[c[z>>2]>>2]=g;break}case 88:{Cg(c[j>>2]|0,c[z>>2]|0);break}case
90:{if(c[c[z>>2]>>2]|0)f=(c[(c[z>>2]|0)+4>>2]|0)!=0;else f=0;c[c[z>>2]>
x3e;2]=f&1;break}case 91:{if(c[c[z>>2]>>2]|0)f=1;else f=(c[(c[z>>2]|0)+4>>2]|0)!=0;
c[c[z>>2]>>2]=f&1;break}case 92:{c[c[z>>2]>>2]=((c[c[z>>2]>>2]|
0)!=0^1)&1;break}case 93:{Dg(c[j>>2]|0,c[z>>2]|0);break}case 94:{b[(c[j>>2]|0)+284+48>
x3e;1]=c[c[z>>2]>>2];break}case 95:{b[(c[j>>2]|0)+284+50>>1]=c[c[z>>2]>
x3e;2];break}case 96:{g=c[z>>2]|0;c[g>>2]=(c[g>>2]|0)+(c[(c[z>>2]|0)+4>>2]|0);
break}case 97:{g=c[z>>2]|0;c[g>>2]=(c[g>>2]|0)-(c[(c[z>>2]|0)+4>>2]|0);break}case
98:if(!(c[(c[z>>2]|0)+4>>2]|0)){c[(c[j>>2]|0)+12>>2]=133;break b}else{g=Ub(c[c[z>
x3e;2]>>2]|0,64,c[(c[z>>2]|0)+4>>2]|0)|0;c[c[z>>2]>>2]=g;break b}case 99:{g=xb
(c[c[z>>2]>>2]|0,c[(c[z>>2]|0)+4>>2]|0,64)|0;c[c[z>>2]>>2]=g;break}case
100:{g=c[c[z>>2]>>2]|0;c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<0?0-g|0
:g;break}case 101:{c[c[z>>2]>>2]=0-(c[c[z>>2]>>2]|0);break}case 102:{c[c[z>>2]
x3e;>2]=c[c[z>>2]>>2]&-64;break}case 103:{c[c[z>>2]>>2]=(c[c[z>>2]
x3e;>2]|0)+63&-64;break}case 107:case 106:case 105:case 104:{g=Oa[c[(c[j>>2]|0)+568>>2]&63](c
[j>>2]|0,c[c[z>>2]>>2]|0,c[(c[j>>2]|0)+244+20+((d[(c[j>>2]|0)+368>>0
]|0)-104<<2)>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 111:case 110:case 109:case 108:{g=If(c[
j>>2]|0,c[c[z>>2]>>2]|0,c[(c[j>>2]|0)+244+20+((d[(c[j>>2]|0)+368>>0]|
0)-108<<2)>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 112:{c[q>>2]=c[c[z>>2
]>>2];if((c[q>>2]|0)>>>0>=(c[(c[j>>2]|0)+380>>2]|0)>>>
;0)if(a[(c[j>>2]|0)+561>>0]|0){F=81;break b}else break b;else{g=Mb(c[(c[z>>2]|0)+4>>2]|0
,c[(c[j>>2]|0)+244+16>>2]|0)|0;c[(c[(c[j>>2]|0)+384>>2]|0)+(c[q>>2]<<
;2)>>2]=g;break b}}case 114:case 113:{Dg(c[j>>2]|0,c[z>>2]|0);break}case 117:case 116:case 115:{Eg
(c[j>>2]|0,c[z>>2]|0);break}case 118:{Fg(c[j>>2]|0,16384,c[c[z>>2]>>2]|0);c[(c
[j>>2]|0)+284+28>>2]=6;c[(c[j>>2]|0)+568>>2]=36;break}case 119:{Fg(c[j>>2]|0,11585
,c[c[z>>2]>>2]|0);c[(c[j>>2]|0)+284+28>>2]=7;c[(c[j>>2]|0)+568>>2]=37
;break}case 120:{if(c[(c[z>>2]|0)+4>>2]|0){g=(c[j>>2]|0)+360|0;c[g>>2]=(c[g>>2
]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|0)+360>>2]|0)<0)c[(c[j>>2]|0)+12>
;>2]=132;a[(c[j>>2]|0)+376>>0]=0}break}case 121:{if(!(c[(c[z>>2]|0)+4>>2]|0)){g=(c[
j>>2]|0)+360|0;c[g>>2]=(c[g>>2]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|
0)+360>>2]|0)<0)c[(c[j>>2]|0)+12>>2]=132;a[(c[j>>2]|0)+376>>0]=0}break}case
122:{c[(c[j>>2]|0)+284+28>>2]=5;c[(c[j>>2]|0)+568>>2]=38;break}case 123:{$f(c[j>
x3e;2]|0,c[z>>2]|0);break}case 124:{c[(c[j>>2]|0)+284+28>>2]=4;c[(c[j>>2]|0)+568>
x3e;2]=39;break}case 125:{c[(c[j>>2]|0)+284+28>>2]=3;c[(c[j>>2]|0)+568>>2]=40;break}case
128:{Gg(c[j>>2]|0,c[z>>2]|0);break}case 129:{Hg(c[j>>2]|0,c[z>>2]|0);break}case 130:{Ig
(c[j>>2]|0,c[z>>2]|0);break}case 132:case 131:{$f(c[j>>2]|0,c[z>>2]|0);break}case 133:{Jg
(c[j>>2]|0,c[z>>2]|0);break}case 135:case 134:{Kg(c[j>>2]|0,c[z>>2]|0);break}case 136:{Lg
(c[j>>2]|0,c[z>>2]|0);break}case 137:{Mg(c[j>>2]|0,c[z>>2]|0);break}case 138:{Ng(c[j>
;>2]|0,c[z>>2]|0);break}case 139:{if((c[(c[z>>2]|0)+4>>2]|0)>(c[c[z>>2]>
x3e;2]|0))c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>>2];break}case 140:{if((c[(c[z>>2]|0)+
4>>2]|0)<(c[c[z>>2]>>2]|0))c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>
x3e;2];break}case 141:{Og(c[j>>2]|0,c[z>>2]|0);break}case 142:{Pg(c[j>>2]|0,c[z>>2]|0);break
}case 143:{$f(c[j>>2]|0,c[z>>2]|0);break}default:{if((d[E>>0]|0)>=224){Qg(c[j>>2]|0
,c[z>>2]|0);break b}if((d[E>>0]|0)>=192){Rg(c[j>>2]|0,c[z>>2]|0);break b}if((d[E>
;>0]|0)>=184){Sg(c[j>>2]|0,c[z>>2]|0);break b}f=c[j>>2]|0;g=c[z>>2]|0;if((d[E
x3e;>0]|0)>=176){Tg(f,g);break b}else{$f(f,g);break b}}}while(0);if((F|0)==81){F=0;c[(c[j>>2]|0)+12>>
;2]=134}f=c[j>>2]|0;if(c[(c[j>>2]|0)+12>>2]|0){if((c[f+12>>2]|0)!=128)break;c[B>>
;2]=c[(c[j>>2]|0)+416>>2];c[D>>2]=(c[B>>2]|0)+(c[(c[j>>2]|0)+408>>2]
x3c;<4);while(1){if((c[B>>2]|0)>>>0>=(c[D>>2]|0)>>>0){F=186;break a}
if(d[(c[B>>2]|0)+12>>0]|0?(d[(c[j>>2]|0)+368>>0]|0)==(c[(c[B>>2]|0)+8>>
;2]&255|0):0)break;c[B>>2]=(c[B>>2]|0)+16}f=c[j>>2]|0;if((c[(c[j>>2]|0)+428>
x3e;2]|0)>=(c[(c[j>>2]|0)+432>>2]|0)){F=183;break}c[A>>2]=(c[(c[j>>2]|0)+436>
x3e;2]|0)+(c[f+428>>2]<<4);c[c[A>>2]>>2]=c[(c[j>>2]|0)+352>>2];c[(c[
A>>2]|0)+4>>2]=(c[(c[j>>2]|0)+360>>2]|0)+1;c[(c[A>>2]|0)+8>>2]=1;c[(
c[A>>2]|0)+12>>2]=c[(c[B>>2]|0)+4>>2];if(((ag(c[j>>2]|0,c[c[B>>2]>
;>2]|0,c[(c[B>>2]|0)+4>>2]|0)|0)&255|0)==1)break}else{c[(c[j>>2]|0)+16>>2]=c[f
+32>>2];if(a[(c[j>>2]|0)+376>>0]|0){g=(c[j>>2]|0)+360|0;c[g>>2]=(c[g>>
;2]|0)+(c[(c[j>>2]|0)+372>>2]|0)}g=(c[C>>2]|0)+1|0;c[C>>2]=g;if((g|0)>1e6){F=190;break
}}f=c[j>>2]|0;if((c[(c[j>>2]|0)+360>>2]|0)>=(c[(c[j>>2]|0)+364>>2]|0)){F=
192;break}if(!((a[f+488>>0]|0)!=0^1)){F=195;break}}if((F|0)==10)c[f+12>>2]=129;else if((F|0)==12)c[f+12>
;>2]=130;else if((F|0)==183)c[f+12>>2]=134;else if((F|0)==186)c[(c[j>>2]|0)+12>>2]=128;else if
((F|0)==190){c[h>>2]=139;F=c[h>>2]|0;i=G;return F|0}else if((F|0)==192)if((c[f+428>>2]|0)>0)c
[(c[j>>2]|0)+12>>2]=131;else F=195;else if((F|0)==196)c[(c[j>>2]|0)+12>>2]=131;if((F|0)==
195){c[h>>2]=0;F=c[h>>2]|0;i=G;return F|0}if(c[(c[j>>2]|0)+12>>2]|0?(a[(c[j>>2
]|0)+488>>0]|0)==0:0)a[(c[(c[j>>2]|0)+4>>2]|0)+301>>0]=0;c[h>>2]=c[(c[j>
x3e;2]|0)+12>>2];F=c[h>>2]|0;i=G;return F|0}function nf(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[(c[(c[e>>2]|0)+384>>2]|0)+(c[f>>2]<<2)
x3e;>2]|0;b=Mb(b,of(c[e>>2]|0)|0)|0;i=d;return b|0}function of(a){a=a|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+
8|0;f=h+4|0;g=h;c[e>>2]=a;do if(!(c[(c[e>>2]|0)+244+12>>2]|0)){a=c[e>>2]|0;if(!(b[(c[e
x3e;>2]|0)+284+10+2>>1]|0)){c[(c[e>>2]|0)+244+12>>2]=c[a+244>>2];break}d=c[e>
x3e;2]|0;if(!(b[a+284+10>>1]|0)){c[(c[e>>2]|0)+244+12>>2]=c[d+244+4>>2];break}else{c[f
x3e;>2]=xb(b[d+284+10>>1]|0,c[(c[e>>2]|0)+244>>2]|0,16384)|0;c[g>>2]=xb(b[(c[e>
;>2]|0)+284+10+2>>1]|0,c[(c[e>>2]|0)+244+4>>2]|0,16384)|0;g=pf(c[f>>2]|0,c[g>
x3e;2]|0)|0;c[(c[e>>2]|0)+244+12>>2]=g;break}}while(0);i=h;return c[(c[e>>2]|0)+244+12>>
2]|0}function pf(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;f=d+8|0;e=d;c[g>>2]=a;c[f>>2]=b;
c[e>>2]=c[g>>2];c[e+4>>2]=c[f>>2];b=me(e)|0;i=d;return b|0}function qf(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;d=c[h
x3e;>2]|0;d=Vb(d,of(c[g>>2]|0)|0)|0;c[(c[(c[g>>2]|0)+384>>2]|0)+(c[f>>2]<<
;2)>>2]=d;i=e;return}function rf(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;b=c[h>>2]|0;b=Vb(b,of(c[g>>2]|0)|0)|0;d=(c[(c[g>>
;2]|0)+384>>2]|0)+(c[f>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+b;i=e;return}function sf(
a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f+4|0;d=f;c[e>>2]=a;c[d>>2]=b;i=f;return c[(c[(c[e>>
;2]|0)+384>>2]|0)+(c[d>>2]<<2)>>2]|0}function tf(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;c[(c[(c[g>>2]|0)+384
>>2]|0)+(c[f>>2]<<2)>>2]=c[h>>2];i=e;return}function uf(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[(c[h>
;>2]|0)+384>>2]|0)+(c[g>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+(c[f>>2]|
0);i=e;return}function vf(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=a;d=(c[e>>2]|0)+284|0;do if((b[(
c[e>>2]|0)+284+14>>1]|0)!=16384){a=(c[e>>2]|0)+284+10|0;if((b[d+14+2>>1]|0)==16384){c[(c
[e>>2]|0)+564>>2]=b[a+2>>1]<<16;break}else{d=(_(b[a>>1]|0,b[(c[e>>2]|
0)+284+14>>1]|0)|0)<<2;d=d+((_(b[(c[e>>2]|0)+284+10+2>>1]|0,b[(c[e>>2]|0)+284+
14+2>>1]|0)|0)<<2)|0;c[(c[e>>2]|0)+564>>2]=d;break}}else c[(c[e>>2]|0)+564>
;>2]=b[d+10>>1]<<16;while(0);a=c[e>>2]|0;do if((b[(c[e>>2]|0)+284+10>>1]|
0)!=16384){d=(c[e>>2]|0)+572|0;if((b[a+284+10+2>>1]|0)==16384){c[d>>2]=42;break}else{c[d>>
;2]=43;break}}else c[a+572>>2]=41;while(0);a=c[e>>2]|0;do if((b[(c[e>>2]|0)+284+6>>1]|0)!=
16384){d=(c[e>>2]|0)+576|0;if((b[a+284+6+2>>1]|0)==16384){c[d>>2]=42;break}else{c[d>>2]=
44;break}}else c[a+576>>2]=41;while(0);c[(c[e>>2]|0)+584>>2]=4;c[(c[e>>2]|0)+588>
x3e;2]=5;do if((c[(c[e>>2]|0)+564>>2]|0)==1073741824){a=c[e>>2]|0;if((b[(c[e>>2]|0)+284+
14>>1]|0)==16384){c[a+584>>2]=6;c[(c[e>>2]|0)+588>>2]=7;break}if((b[a+284+14+2>>
;1]|0)==16384){c[(c[e>>2]|0)+584>>2]=8;c[(c[e>>2]|0)+588>>2]=9}}while(0);d=c[(c[e>
x3e;2]|0)+564>>2]|0;if((((c[(c[e>>2]|0)+564>>2]|0)<0?0-d|0:d)|0)>=67108864){e=c[e>
x3e;2]|0;e=e+244|0;e=e+12|0;c[e>>2]=0;i=f;return}c[(c[e>>2]|0)+564>>2]=1073741824;e=c[e>>
;2]|0;e=e+244|0;e=e+12|0;c[e>>2]=0;i=f;return}function wf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=i;i=i+16|0;h=
f+8|0;e=f+4|0;g=f;c[h>>2]=a;c[e>>2]=b;c[g>>2]=d;c[h>>2]=c[h>>2];c[g>>
;2]=c[g>>2];i=f;return c[e>>2]|0}function xf(a,b,d){a=a|0;b=b|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]=b;c[e>>2]=d;c[h>>2]=c[h>>2];c[g>>2]=
c[g>>2];i=f;return c[e>>2]|0}function yf(a,d,e){a=a|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]=a;c[j>>2]=d;c[h>>2]=e;a=zf(c[j>>2]|0,c[h>>2]|0,b[(c[g>
x3e;2]|0)+284+10>>1]|0,b[(c[g>>2]|0)+284+10+2>>1]|0)|0;i=f;return a|0}function zf(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;h=i;i=i+64|0;t=h+48|0;r=h+44|0;s=h+40|0;q=h+36|0;p=
h+32|0;k=h+28|0;n=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;l=h+8|0;o=h+4|0;j=h;c[t>>2]=a;c[r>>2]=b;c[s>>2
]=d;c[q>>2]=e;c[f>>2]=_(c[t>>2]&65535,c[s>>2]|0)|0;c[p>>2]=_(c[t>>
;2]>>16,c[s>>2]|0)|0;c[l>>2]=(c[f>>2]|0)+(c[p>>2]<<16);c[n>>
;2]=(c[p>>2]>>16)+(c[f>>2]>>31)+((c[l>>2]|0)>>>0<(c[f>
;>2]|0)>>>0&1);c[f>>2]=_(c[r>>2]&65535,c[q>>2]|0)|0;c[p>>2
]=_(c[r>>2]>>16,c[q>>2]|0)|0;c[o>>2]=(c[f>>2]|0)+(c[p>>2]<<
;16);c[m>>2]=(c[p>>2]>>16)+(c[f>>2]>>31)+((c[o>>2]|0)>>>
;0<(c[f>>2]|0)>>>0&1);c[j>>2]=(c[l>>2]|0)+(c[o>>2]|0);c[g>
x3e;2]=(c[n>>2]|0)+(c[m>>2]|0)+((c[j>>2]|0)>>>0<(c[l>>2]|0)>>
;>0&1);c[k>>2]=c[g>>2]>>31;c[f>>2]=(c[j>>2]|0)+(c[k>>2]|0);
c[g>>2]=(c[g>>2]|0)+((c[k>>2]|0)+((c[f>>2]|0)>>>0<(c[j>>2]|
0)>>>0&1));c[j>>2]=c[f>>2];c[f>>2]=(c[j>>2]|0)+8192;c[g>>2
]=(c[g>>2]|0)+((c[f>>2]|0)>>>0<(c[j>>2]|0)>>>0&1);i=h;return
c[g>>2]<<18|(c[f>>2]|0)>>>14|0}function Af(a,d,e){a=a|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]=a;c[j>>2]=d;c[h>>2]=e;a=zf(c[j>>2]|0,c[h
x3e;>2]|0,b[(c[g>>2]|0)+284+6>>1]|0,b[(c[g>>2]|0)+284+6+2>>1]|0)|0;i=f;return a|0}function
Bf(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;p=i;i=i+32|0;k=p+12|0;l=p+8|0;m=p+16|0;n=p+4|0;o=p;c[k>>
;2]=f;c[l>>2]=g;b[m>>1]=h;c[n>>2]=j;c[o>>2]=b[(c[k>>2]|0)+284+14>>1];
if(c[o>>2]|0){h=xb(c[n>>2]|0,c[o>>2]<<16,c[(c[k>>2]|0)+564>>2]|0)|0;
g=(c[(c[l>>2]|0)+16>>2]|0)+(e[m>>1]<<3)|0;c[g>>2]=(c[g>>2]|0)+h;g=(c
[(c[l>>2]|0)+24>>2]|0)+(e[m>>1]|0)|0;a[g>>0]=d[g>>0]|8}c[o>>2]=b[(c[
k>>2]|0)+284+14+2>>1];if(!(c[o>>2]|0)){i=p;return}o=xb(c[n>>2]|0,c[o>>2]<
x3c;16,c[(c[k>>2]|0)+564>>2]|0)|0;g=(c[(c[l>>2]|0)+16>>2]|0)+(e[m>>1]<<
;3)+4|0;c[g>>2]=(c[g>>2]|0)+o;g=(c[(c[l>>2]|0)+24>>2]|0)+(e[m>>1]|0)|0;a[g>
;>0]=d[g>>0]|16;i=p;return}function Cf(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;n=i;i=i+32|0;
h=n+12|0;j=n+8|0;k=n+16|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>2]=d;b[k>>1]=f;c[l>>2]=g;c[m>
x3e;2]=b[(c[h>>2]|0)+284+14>>1];if(c[m>>2]|0){f=xb(c[l>>2]|0,c[m>>2]<<
;16,c[(c[h>>2]|0)+564>>2]|0)|0;d=(c[(c[j>>2]|0)+12>>2]|0)+(e[k>>1]<<
3)|0;c[d>>2]=(c[d>>2]|0)+f}c[m>>2]=b[(c[h>>2]|0)+284+14+2>>1];if(!(c[m>
x3e;2]|0)){i=n;return}m=xb(c[l>>2]|0,c[m>>2]<<16,c[(c[h>>2]|0)+564>>2]|0)|0;d=(
c[(c[j>>2]|0)+12>>2]|0)+(e[k>>1]<<3)+4|0;c[d>>2]=(c[d>>2]|0)+m;i=n;return
}function Df(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;k=i;i=i+16|0;o=k+8|0;m=k+4|0;l=k+12|0;n=k;c[o>>2
]=f;c[m>>2]=g;b[l>>1]=h;c[n>>2]=j;c[o>>2]=c[o>>2];g=(c[(c[m>>2]|0)+16
>>2]|0)+((e[l>>1]|0)<<3)|0;c[g>>2]=(c[g>>2]|0)+(c[n>>2]|0);g=(c[(c[m
>>2]|0)+24>>2]|0)+(e[l>>1]|0)|0;a[g>>0]=d[g>>0]|0|8;i=k;return}function Ef(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;h=i;i=i+16|0;m=h+8|0;l=h+4|0;k=h+12|0;j=h;c[m>>2]=a;c[l>>
;2]=d;b[k>>1]=f;c[j>>2]=g;c[m>>2]=c[m>>2];d=(c[(c[l>>2]|0)+12>>2]|0)+((
e[k>>1]|0)<<3)|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);i=h;return}function Ff(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;k=i;i=i+16|0;o=k+8|0;m=k+4|0;l=k+12|0;n=k;c[o>>2]=f;c[m>>
2]=g;b[l>>1]=h;c[n>>2]=j;c[o>>2]=c[o>>2];g=(c[(c[m>>2]|0)+16>>2]|0)+((
e[l>>1]|0)<<3)+4|0;c[g>>2]=(c[g>>2]|0)+(c[n>>2]|0);g=(c[(c[m>>2]|0)+
24>>2]|0)+(e[l>>1]|0)|0;a[g>>0]=d[g>>0]|0|16;i=k;return}function Gf(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;h=i;i=i+16|0;m=h+8|0;l=h+4|0;k=h+12|0;j=h;c[m>>2]=a;c[l>>2]=d;b[k>
x3e;1]=f;c[j>>2]=g;c[m>>2]=c[m>>2];d=(c[(c[l>>2]|0)+12>>2]|0)+((e[k>>
;1]|0)<<3)+4|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);i=h;return}function Hf(b,e){b=b|0;e=e|0;var
f=0,g=0,h=0;g=i;i=i+16|0;f=g;h=g+4|0;c[f>>2]=b;a[h>>0]=e;switch(d[h>>0]|0|0){case 5:{c[(c[f>
x3e;2]|0)+568>>2]=38;break}case 1:{c[(c[f>>2]|0)+568>>2]=33;break}case 4:{c[(c[f>>2]|0)+
568>>2]=39;break}case 3:{c[(c[f>>2]|0)+568>>2]=40;break}case 0:{c[(c[f>>2]|0)+568>
x3e;2]=34;break}case 2:{c[(c[f>>2]|0)+568>>2]=35;break}case 6:{c[(c[f>>2]|0)+568>>2]=36;
break}case 7:{c[(c[f>>2]|0)+568>>2]=37;break}default:{}}i=g;return}function If(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;j=g+12|0;e=g+8|0;h=g+4|0;f=g;c[j>>2]=a;c[e>>2]=b;c[h>>2]=d;c[j>
;>2]=c[j>>2];d=c[e>>2]|0;b=c[h>>2]|0;if((c[e>>2]|0)>=0){j=d+b|0;c[f>>
;2]=j;c[f>>2]=(c[e>>2]|0)!=0&(c[f>>2]|0)<0?0:j;j=c[f>>2]|0;i=g;return j|0}else
{j=d-b|0;c[f>>2]=j;c[f>>2]=(c[f>>2]|0)>0?0:j;j=c[f>>2]|0;i=g;return j|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,j=0;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>
;2]=b;c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e
x3e;>2]|0)+32&-64)|0;c[g>>2]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;
return j|0}c[g>>2]=(c[e>>2]|0)+(c[f>>2]|0)+32;if((c[e>>2]|0)!=0&(c[g>>2]|
0)>0){c[g>>2]=c[g>>2]&-64;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>
;>2]|0;i=h;return j|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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f
=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|
0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)+63&-64)|0;c[g>>2]=j;c[g>>2]=(c[g>>
;2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2]=(c[e>>2]|0)+(c[f>>2]|0)+63;if((c[e
x3e;>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2]=c[g>>2]&-64;j=c[g>>2]|0;i=h;return
j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c[j>>2]=
c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)&-64)|0;c[g>>2
]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2]=(c[e>>2]|
0)+(c[f>>2]|0);if((c[e>>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2]=c[g>>2]&
;-64;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|0}return 0}function Mf(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;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;
c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|0)>=0){j=((c[e>>2]|0)+(c[f>>
;2]|0)&-64)+32|0;c[g>>2]=j;c[g>>2]=(c[e>>2]|0)!=0&(c[g>>2]|0)<0?0:j;j=c[g
>>2]|0;i=h;return j|0}else{j=0-(((c[f>>2]|0)-(c[e>>2]|0)&-64)+32)|0;c[g>>2]=j;c[g
x3e;>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}return 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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c
[j>>2]=c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)+16&-32
)|0;c[g>>2]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2
]=(c[e>>2]|0)+(c[f>>2]|0)+16;if((c[e>>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2
]=c[g>>2]&-32;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|0}
return 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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2
]=a;c[f>>2]=b;c[g>>2]=d;if((c[f>>2]|0)>=0){a=(c[f>>2]|0)-(c[(c[e>>2]|0)+480
>>2]|0)+(c[(c[e>>2]|0)+484>>2]|0)+(c[g>>2]|0)&0-(c[(c[e>>2]|0)+476>
x3e;2]|0);c[h>>2]=a;c[h>>2]=(c[f>>2]|0)!=0&(c[h>>2]|0)<0?0:a;c[h>>2]=(
c[h>>2]|0)+(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}else{a=0-((c[(c[e>
x3e;2]|0)+484>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0)-(c[f>>2]|0)+(c[g>>2]|0)&0-(
c[(c[e>>2]|0)+476>>2]|0))|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>0?0:a;c[h>
x3e;2]=(c[h>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}return 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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>
;2]=b;c[g>>2]=d;if((c[f>>2]|0)>=0){a=_(((c[f>>2]|0)-(c[(c[e>>2]|0)+480>>2
]|0)+(c[(c[e>>2]|0)+484>>2]|0)+(c[g>>2]|0)|0)/(c[(c[e>>2]|0)+476>>2]|0)|0,c[(c
[e>>2]|0)+476>>2]|0)|0;c[h>>2]=a;c[h>>2]=(c[f>>2]|0)!=0&(c[h>>2
]|0)<0?0:a;c[h>>2]=(c[h>>2]|0)+(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;
return h|0}else{a=0-(_(((c[(c[e>>2]|0)+484>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0)-(c[f>
x3e;2]|0)+(c[g>>2]|0)|0)/(c[(c[e>>2]|0)+476>>2]|0)|0,c[(c[e>>2]|0)+476>>2]|0)|
0)|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>0?0:a;c[h>>2]=(c[h>>2]|0)-(c[(c[e>
;>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}return 0}function Qf(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;v=i;i=i+48|0;k=v+36|0;l=v+28|0;m=v+34|0;n=v+32|0;o=v+24|0;p=v+20|0;q=v+
16|0;r=v+12|0;s=v+8|0;t=v+4|0;u=v;c[l>>2]=d;b[m>>1]=f;b[n>>1]=g;c[o>>2]=h;c[p>>
;2]=j;if((e[m>>1]|0)>>>0<(e[(c[l>>2]|0)+108+8>>1]|0)>>>0?(e[n
x3e;>1]|0)>>>0<(e[(c[l>>2]|0)+72+8>>1]|0)>>>0:0){c[t>>2]=(
c[(c[l>>2]|0)+72+16>>2]|0)+(e[n>>1]<<3);c[u>>2]=(c[(c[l>>2]|0)+108+16
>>2]|0)+(e[m>>1]<<3);c[q>>2]=(c[c[t>>2]>>2]|0)-(c[c[u>>2]
x3e;>2]|0);c[r>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[u>>2]|0)+4>>2]|0);if(c[o
>>2]&1|0){c[s>>2]=c[r>>2];c[r>>2]=c[q>>2];c[q>>2]=0-(c[s>
x3e;2]|0)}Rf(c[l>>2]|0,c[q>>2]|0,c[r>>2]|0,c[p>>2]|0)|0;a[k>>0]=0;u=a[k>
x3e;0]|0;i=v;return u|0}if(a[(c[l>>2]|0)+561>>0]|0)c[(c[l>>2]|0)+12>>2]=134;a[k>>
;0]=1;u=a[k>>0]|0;i=v;return u|0}function Rf(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;
p=i;i=i+32|0;h=p+22|0;q=p+16|0;j=p+12|0;k=p+8|0;l=p+4|0;o=p;m=p+21|0;n=p+20|0;c[q>>2]=d;c[j>>2]=e;c[k>
x3e;2]=f;c[l>>2]=g;c[q>>2]=c[q>>2];d=c[j>>2]|0;if((((c[j>>2]|0)<0?0-d|0:d
)|0)<65536?(q=c[k>>2]|0,(((c[k>>2]|0)<0?0-q|0:q)|0)<65536):0){c[j>>2]=c[j>>
;2]<<8;c[k>>2]=c[k>>2]<<8;c[o>>2]=pf(c[j>>2]|0,c[k>>2]|0)|
0;if(!(c[o>>2]|0)){a[h>>0]=0;q=a[h>>0]|0;i=p;return q|0}else{q=(xb(c[j>>2]|0,16384,c[o
x3e;>2]|0)|0)&65535;b[c[l>>2]>>1]=q;q=(xb(c[k>>2]|0,16384,c[o>>2]|0)|0)&65535
;b[(c[l>>2]|0)+2>>1]=q;a[h>>0]=0;q=a[h>>0]|0;i=p;return q|0}}c[o>>2]=pf(c[j>
;>2]|0,c[k>>2]|0)|0;c[j>>2]=xb(c[j>>2]|0,16384,c[o>>2]|0)|0;c[k>>2]=xb(c[
k>>2]|0,16384,c[o>>2]|0)|0;q=_(c[j>>2]|0,c[j>>2]|0)|0;c[o>>2]=q+(_(c[k>
x3e;2]|0,c[k>>2]|0)|0);if((c[j>>2]|0)<0){c[j>>2]=0-(c[j>>2]|0);a[m>>0]=1}
else a[m>>0]=0;if((c[k>>2]|0)<0){c[k>>2]=0-(c[k>>2]|0);a[n>>0]=1}else a[n
>>0]=0;while(1){if((c[o>>2]|0)>=268435456)break;if((c[j>>2]|0)<(c[k>>2]|0))c[j
>>2]=(c[j>>2]|0)+1;else c[k>>2]=(c[k>>2]|0)+1;q=_(c[j>>2]|0,c[j>>2]|
0)|0;c[o>>2]=q+(_(c[k>>2]|0,c[k>>2]|0)|0)}while(1){if((c[o>>2]|0)<268451840)break;if
((c[j>>2]|0)<(c[k>>2]|0))c[j>>2]=(c[j>>2]|0)+-1;else c[k>>2]=(c[k>
x3e;2]|0)+-1;q=_(c[j>>2]|0,c[j>>2]|0)|0;c[o>>2]=q+(_(c[k>>2]|0,c[k>>2]|0)|0)}if
(a[m>>0]|0)c[j>>2]=0-(c[j>>2]|0);if(a[n>>0]|0)c[k>>2]=0-(c[k>>2]|0);
b[c[l>>2]>>1]=c[j>>2];b[(c[l>>2]|0)+2>>1]=c[k>>2];a[h>>0]=
0;q=a[h>>0]|0;i=p;return q|0}function Sf(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;x=i;i=i+64|0;h=x+44|0;y=x+40|0;v=x+56|0;k=x+54|0;l=x+52|0;m=x+50|0;n=x+48|0;s=x+36|0;t=x+32|0;u=x+28|0;o=x+24|0;p=x+
20|0;q=x+16|0;r=x+12|0;w=x+8|0;j=x;c[h>>2]=f;c[y>>2]=g;b[v>>1]=c[c[y>>2]>>2];b
[k>>1]=c[(c[y>>2]|0)+4>>2];b[l>>1]=c[(c[y>>2]|0)+8>>2];b[m>>
;1]=c[(c[y>>2]|0)+12>>2];b[n>>1]=c[(c[y>>2]|0)+16>>2];if(((((e[m>>1]|
0)>>>0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0?(e[n>>1]|0)>>
x3e;0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0:0)?(e[k>>1]|0)>>>0<(e
[(c[h>>2]|0)+72+8>>1]|0)>>>0:0)?(e[l>>1]|0)>>>0<(e[(c[h>
x3e;2]|0)+72+8>>1]|0)>>>0:0)?(e[v>>1]|0)>>>0<(e[(c[h>>2]|0)+108
+8>>1]|0)>>>0:0){c[q>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1
]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>>
2]|0);c[r>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)+4>>2]|0)-(
c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0);c[o>>2]=(c[(c[(c
[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+72+16
x3e;>2]|0)+(e[k>>1]<<3)>>2]|0);c[p>>2]=(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]
x3c;<3)+4>>2]|0);c[t>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<
;3)>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2]|0);c[u>
;>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)-(c[(c[(c[h>
;>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0);y=(c[(c[h>>2]|0)+108+24>
x3e;2]|0)+(e[v>>1]|0)|0;a[y>>0]=d[y>>0]|24;y=xb(c[o>>2]|0,0-(c[r>>2]|0)|0,64)|
0;c[s>>2]=y+(xb(c[p>>2]|0,c[q>>2]|0,64)|0);y=c[s>>2]|0;if((((c[s>>2]|0)<0
?0-y|0:y)|0)>=64){y=xb(c[t>>2]|0,0-(c[r>>2]|0)|0,64)|0;c[w>>2]=y+(xb(c[u>>2]|0,c[q
x3e;>2]|0,64)|0);c[j>>2]=xb(c[w>>2]|0,c[o>>2]|0,c[s>>2]|0)|0;c[j+4>>2]=xb
(c[w>>2]|0,c[p>>2]|0,c[s>>2]|0)|0;c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>
;1]<<3)>>2]=(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2
]|0)+(c[j>>2]|0);c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)+4>>2]=(
c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)+(c[j+4>>2]|0);i=
x;return}else{c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)>>2]=((c[(c[(c[h>
;>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2]|0)+(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]
x3c;<3)>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)>>2]|
0)|0)/4|0;c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)+4>>2]=((c[(c[(c[h>
x3e;2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]
x3c;<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)+4>>
;2]|0)|0)/4|0;i=x;return}}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=x;return}c[(c[h>>2]|0)+12>>2]=
134;i=x;return}function Tf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e
;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>2]|0)+36|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e
x3e;>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{e=(c[g>>2]|0)+36|0;d=(c[g>
x3e;2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c
[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>>2]=134;i=j;return}}b[(c[g>>
2]|0)+284+60>>1]=c[c[h>>2]>>2];i=j;return}function Uf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i
+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>
2]|0)+72|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));
break}case 1:{e=(c[g>>2]|0)+72|0;d=(c[g>>2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0
;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>
2]|0)+12>>2]=134;i=j;return}}b[(c[g>>2]|0)+284+62>>1]=c[c[h>>2]>>2];i=j;return
}function Vf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h
x3e;>2]>>2]|0){case 0:{e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=
c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+144
|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c[g>>
;2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>>2]=134;i=j;return}}b[(c[g>>2]|0)+284+64
x3e;>1]=c[c[h>>2]>>2];i=j;return}function Wf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;
h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>2]|0)+36|0;d=(
c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{
e=(c[g>>2]|0)+36|0;d=(c[g>>2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while
((e|0)<(f|0));break}default:{if(!(a[(c[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>
x3e;2]=134;i=j;return}}e=(c[g>>2]|0)+72|0;d=(c[g>>2]|0)+36|0;f=e+36|0;do{c[e>>2]=c[d>>2];
e=e+4|0;d=d+4|0}while((e|0)<(f|0));e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+36|0;f=e+36|0;do{c[e>>2]=
c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));b[(c[g>>2]|0)+284+60>>1]=c[c[h>>2]>
x3e;2];b[(c[g>>2]|0)+284+62>>1]=c[c[h>>2]>>2];b[(c[g>>2]|0)+284+64>>
1]=c[c[h>>2]>>2];i=j;return}function Xf(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+8|0;h=g+4|0;f=
g;c[e>>2]=a;c[h>>2]=b;c[e>>2]=c[e>>2];c[h>>2]=c[h>>2];c[f>>
;2]=1;while(1){if(((Yf(c[e>>2]|0)|0)&255|0)==1){e=7;break}switch(d[(c[e>>2]|0)+368>>0]|0|0){case
88:{c[f>>2]=(c[f>>2]|0)+1;break}case 89:{c[f>>2]=(c[f>>2]|0)+-1;break}default:{}}if(!(c
[f>>2]|0)){e=7;break}}if((e|0)==7){i=g;return}}function Yf(b){b=b|0;var e=0,f=0,g=0;g=i;i=i+16|0;e=g+4|0;f=g;c[f>
x3e;2]=b;b=(c[f>>2]|0)+360|0;c[b>>2]=(c[b>>2]|0)+(c[(c[f>>2]|0)+372>>2]|0);do
if((c[(c[f>>2]|0)+360>>2]|0)<(c[(c[f>>2]|0)+364>>2]|0)){a[(c[f>>2]|0)+368
>>0]=a[(c[(c[f>>2]|0)+356>>2]|0)+(c[(c[f>>2]|0)+360>>2]|0)>>0]|0;c[(
c[f>>2]|0)+372>>2]=a[10705+(d[(c[f>>2]|0)+368>>0]|0)>>0];if((c[(c[f>>
;2]|0)+372>>2]|0)<0){if(((c[(c[f>>2]|0)+360>>2]|0)+1|0)>(c[(c[f>>2]|0)+364>
;>2]|0))break;b=2-(_(c[(c[f>>2]|0)+372>>2]|0,d[(c[(c[f>>2]|0)+356>>2]|0)+((c[(c[f
x3e;>2]|0)+360>>2]|0)+1)>>0]|0)|0)|0;c[(c[f>>2]|0)+372>>2]=b}if(((c[(c[f>>
;2]|0)+360>>2]|0)+(c[(c[f>>2]|0)+372>>2]|0)|0)<=(c[(c[f>>2]|0)+364>>2]|0)){
a[e>>0]=0;b=a[e>>0]|0;i=g;return b|0}}while(0);c[(c[f>>2]|0)+12>>2]=131;a[e>>0
]=1;b=a[e>>0]|0;i=g;return b|0}function Zf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;d=g+12|0;h=g+8|0;f=g+
4|0;e=g;c[d>>2]=a;c[h>>2]=b;c[f>>2]=c[c[h>>2]>>2];if((c[f>>2]|0)>
;0?(c[f>>2]|0)<=(c[(c[d>>2]|0)+28>>2]|0):0){c[e>>2]=c[(c[(c[d>>2]|0)+24
x3e;>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)<<2)>>2];Ts((c[(c[d>
x3e;2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)<<2)|0,(c[(c[d>
x3e;2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)+1<<2)|0,(c[f>
x3e;2]|0)-1<<2|0)|0;c[(c[(c[d>>2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-1<
;<2)>>2]=c[e>>2];i=g;return}c[(c[d>>2]|0)+12>>2]=134;i=g;return}function _f(d,f){d=
d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;g=l+8|0;m=l+4|0;j=l+14|0;k=l+12|0;h=l;c[g>>2]=d;c[m>>2]=f
;b[j>>1]=c[c[m>>2]>>2];b[k>>1]=c[(c[m>>2]|0)+4>>2];if((e[j>>
;1]|0)>>>0<(e[(c[g>>2]|0)+72+8>>1]|0)>>>0?(e[k>>1]|0)>>
;>0<(e[(c[g>>2]|0)+36+8>>1]|0)>>>0:0){c[h>>2]=(Oa[c[(c[g>>2]|0)+
572>>2]&63](c[g>>2]|0,(c[(c[(c[g>>2]|0)+36+16>>2]|0)+(e[k>>1]<<
3)>>2]|0)-(c[(c[(c[g>>2]|0)+72+16>>2]|0)+(e[j>>1]<<3)>>2]|0)|0,(c[(c
[(c[g>>2]|0)+36+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)-(c[(c[(c[g>>2]|0)+72
+16>>2]|0)+(e[j>>1]<<3)+4>>2]|0)|0)|0)/2|0;_a[c[(c[g>>2]|0)+584>>2]
x26;15](c[g>>2]|0,(c[g>>2]|0)+72|0,b[j>>1]|0,c[h>>2]|0);_a[c[(c[g>>2]|0)+584
x3e;>2]&15](c[g>>2]|0,(c[g>>2]|0)+36|0,b[k>>1]|0,0-(c[h>>2]|0)|0);i=l;return}if
(!(a[(c[g>>2]|0)+561>>0]|0)){i=l;return}c[(c[g>>2]|0)+12>>2]=134;i=l;return}function $f(
b,e){b=b|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+16|0;m=l+12|0;k=l+8|0;f=l+4|0;j=l;c[h>>2]=b;c[m>
;>2]=e;c[k>>2]=c[(c[h>>2]|0)+416>>2];c[f>>2]=(c[k>>2]|0)+(c[(c[h>>
;2]|0)+408>>2]<<4);c[h>>2]=c[h>>2];c[m>>2]=c[m>>2];while(1){if((c[k
x3e;>2]|0)>>>0>=(c[f>>2]|0)>>>0){g=9;break}if((c[(c[k>>2]|0)+8>
x3e;2]&255|0)==(d[(c[h>>2]|0)+368>>0]|0|0)?d[(c[k>>2]|0)+12>>0]|0|0:0)break;c[k>
;>2]=(c[k>>2]|0)+16}if((g|0)==9){c[(c[h>>2]|0)+12>>2]=128;i=l;return}e=c[h>>2]|0;if
((c[(c[h>>2]|0)+428>>2]|0)>=(c[(c[h>>2]|0)+432>>2]|0)){c[e+12>>2]=130;i=l
;return}else{g=c[e+436>>2]|0;f=(c[h>>2]|0)+428|0;m=c[f>>2]|0;c[f>>2]=m+1;c[j>>
2]=g+(m<<4);c[c[j>>2]>>2]=c[(c[h>>2]|0)+352>>2];c[(c[j>>2]|0)+4>
;>2]=(c[(c[h>>2]|0)+360>>2]|0)+1;c[(c[j>>2]|0)+8>>2]=1;c[(c[j>>2]|0)+12
x3e;>2]=c[(c[k>>2]|0)+4>>2];ag(c[h>>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>
;2]|0)+4>>2]|0)|0;a[(c[h>>2]|0)+376>>0]=0;i=l;return}}function ag(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;l=i;i=i+32|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=b;c[h>>2]=d;c[j>>2
]=e;if((c[h>>2]|0)<1|(c[h>>2]|0)>3){c[(c[g>>2]|0)+12>>2]=132;a[f>>0]=
1;k=a[f>>0]|0;i=l;return k|0}c[k>>2]=(c[g>>2]|0)+444+((c[h>>2]|0)-1<<3);if(!(c
[c[k>>2]>>2]|0)){c[(c[g>>2]|0)+12>>2]=138;a[f>>0]=1;k=a[f>>0]|0;i=l;
return k|0}if((c[j>>2]|0)>>>0>(c[(c[k>>2]|0)+4>>2]|0)>>>0){c[(c
[g>>2]|0)+12>>2]=131;a[f>>0]=1;k=a[f>>0]|0;i=l;return k|0}else{c[(c[g>>2]|0)+356
>>2]=c[c[k>>2]>>2];c[(c[g>>2]|0)+364>>2]=c[(c[k>>2]|0)+4>>
2];c[(c[g>>2]|0)+360>>2]=c[j>>2];c[(c[g>>2]|0)+352>>2]=c[h>>2];a[f
x3e;>0]=0;k=a[f>>0]|0;i=l;return k|0}return 0}function bg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;h
=l+4|0;m=l;k=l+8|0;j=l+10|0;c[h>>2]=f;c[m>>2]=g;b[k>>1]=c[c[m>>2]>>2];if((e[k
x3e;>1]|0)>>>0>=(e[(c[h>>2]|0)+36+8>>1]|0)>>>0){if(!(a[(c[h>>
;2]|0)+561>>0]|0)){i=l;return}c[(c[h>>2]|0)+12>>2]=134;i=l;return}a[j>>0]=-1;if(b[(c[h
x3e;>2]|0)+284+14>>1]|0)a[j>>0]=d[j>>0]&-9;if(b[(c[h>>2]|0)+284+14+2>>
;1]|0)a[j>>0]=d[j>>0]&-17;m=(c[(c[h>>2]|0)+36+24>>2]|0)+(e[k>>1]|0)|0;a[m
>>0]=d[m>>0]&d[j>>0];i=l;return}function cg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;
l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;k=l+8|0;h=l+4|0;j=l;c[e>>2]=b;c[f>>2]=d;c[g>>2]=c[(c[f>
;>2]|0)+4>>2];do if((c[g>>2]|0)>>>0<((c[(c[e>>2]|0)+420>>2]|0)+
1|0)>>>0){c[h>>2]=(c[(c[e>>2]|0)+404>>2]|0)+(c[g>>2]<<4);if(!(((
c[(c[e>>2]|0)+420>>2]|0)+1|0)==(c[(c[e>>2]|0)+396>>2]|0)?(c[(c[h>>2]|0)+8>
;>2]|0)==(c[g>>2]|0):0)){c[h>>2]=c[(c[e>>2]|0)+404>>2];c[j>>2]=(c[h>
x3e;2]|0)+(c[(c[e>>2]|0)+396>>2]<<4);while(1){if((c[h>>2]|0)>>>0<(c[
j>>2]|0)>>>0)d=(c[(c[h>>2]|0)+8>>2]|0)!=(c[g>>2]|0);else d=0;b=c[h>
x3e;2]|0;if(!d)break;c[h>>2]=b+16}if((b|0)==(c[j>>2]|0))break}if(a[(c[h>>2]|0)+12>>0]|0){
if((c[(c[e>>2]|0)+428>>2]|0)>=(c[(c[e>>2]|0)+432>>2]|0)){c[(c[e>>2]|0)+12
>>2]=130;i=l;return}if((c[c[f>>2]>>2]|0)<=0){i=l;return}c[k>>2]=(c[(c[e>>
2]|0)+436>>2]|0)+(c[(c[e>>2]|0)+428>>2]<<4);c[c[k>>2]>>2]=c[(c[e>
;>2]|0)+352>>2];c[(c[k>>2]|0)+4>>2]=(c[(c[e>>2]|0)+360>>2]|0)+1;c[(c[k>
;>2]|0)+8>>2]=c[c[f>>2]>>2];c[(c[k>>2]|0)+12>>2]=c[(c[h>>2]|0)+
4>>2];k=(c[e>>2]|0)+428|0;c[k>>2]=(c[k>>2]|0)+1;ag(c[e>>2]|0,c[c[h>>
2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0)|0;a[(c[e>>2]|0)+376>>0]=0;i=l;return}}while(0);
c[(c[e>>2]|0)+12>>2]=134;i=l;return}function dg(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;g=k+20|0;l=k+16|0;e=k+12|0;j=k+8|0;h=k+4|0;f=k;c[g>>2]=b;c[l>>2]=d;c[e>>2]=c[c[l>>2]
x3e;>2];do if((c[e>>2]|0)>>>0<((c[(c[g>>2]|0)+420>>2]|0)+1|0)>>
x3e;0){c[h>>2]=(c[(c[g>>2]|0)+404>>2]|0)+(c[e>>2]<<4);if(!(((c[(c[g>>
;2]|0)+420>>2]|0)+1|0)==(c[(c[g>>2]|0)+396>>2]|0)?(c[(c[h>>2]|0)+8>>2]|0)==(c[
e>>2]|0):0)){c[h>>2]=c[(c[g>>2]|0)+404>>2];c[f>>2]=(c[h>>2]|0)+(c[(c
[g>>2]|0)+396>>2]<<4);while(1){if((c[h>>2]|0)>>>0<(c[f>>2]|
0)>>>0)b=(c[(c[h>>2]|0)+8>>2]|0)!=(c[e>>2]|0);else b=0;d=c[h>>2]|0;if(!b)
break;c[h>>2]=d+16}if((d|0)==(c[f>>2]|0))break}if(a[(c[h>>2]|0)+12>>0]|0){d=c[g>>
;2]|0;if((c[(c[g>>2]|0)+428>>2]|0)>=(c[(c[g>>2]|0)+432>>2]|0)){c[d+12>>2]=
130;i=k;return}else{c[j>>2]=(c[d+436>>2]|0)+(c[(c[g>>2]|0)+428>>2]<<4);c[c[j
x3e;>2]>>2]=c[(c[g>>2]|0)+352>>2];c[(c[j>>2]|0)+4>>2]=(c[(c[g>>
2]|0)+360>>2]|0)+1;c[(c[j>>2]|0)+8>>2]=1;c[(c[j>>2]|0)+12>>2]=c[(c[h>>
;2]|0)+4>>2];l=(c[g>>2]|0)+428|0;c[l>>2]=(c[l>>2]|0)+1;ag(c[g>>2]|0,c[c[h>
;>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0)|0;a[(c[g>>2]|0)+376>>0]=0;i=k;return}}}
while(0);c[(c[g>>2]|0)+12>>2]=134;i=k;return}function eg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=
i+32|0;j=k+16|0;l=k+12|0;g=k+8|0;h=k+4|0;f=k;c[j>>2]=b;c[l>>2]=e;c[h>>2]=c[(c[j>>2]|0)+404
>>2];c[f>>2]=(c[h>>2]|0)+(c[(c[j>>2]|0)+396>>2]<<4);c[g>>2
]=c[c[l>>2]>>2];while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>
x3e;0)break;if((c[(c[h>>2]|0)+8>>2]|0)==(c[g>>2]|0))break;c[h>>2]=(c[h>>2]|0)+
16}do if((c[h>>2]|0)==(c[f>>2]|0)){e=c[j>>2]|0;if((c[(c[j>>2]|0)+396>>2]|0)>
;>>0<(c[(c[j>>2]|0)+400>>2]|0)>>>0){l=e+396|0;c[l>>2]=(c[l>>
;2]|0)+1;break}c[e+12>>2]=140;i=k;return}while(0);e=c[j>>2]|0;if((c[g>>2]|0)>>>0>
;65535){c[e+12>>2]=140;i=k;return}c[c[h>>2]>>2]=c[e+352>>2];c[(c[h>>2]|0)+8>
;>2]=c[g>>2]&65535;c[(c[h>>2]|0)+4>>2]=(c[(c[j>>2]|0)+360>>2]|0)+1;a
[(c[h>>2]|0)+12>>0]=1;if((c[g>>2]|0)>>>0>(c[(c[j>>2]|0)+420>>
;2]|0)>>>0)c[(c[j>>2]|0)+420>>2]=c[g>>2]&65535;a:while(1){if((Yf(c[j>>
;2]|0)|0)&255|0){e=16;break}switch(d[(c[j>>2]|0)+368>>0]|0|0){case 44:case 137:{e=15;break a}case 45:{e
=16;break a}default:{}}}if((e|0)==15){c[(c[j>>2]|0)+12>>2]=137;i=k;return}else if((e|0)==16){i=k;return}}function
fg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+8|0;h=g+4|0;f=g;c[e>>2]=b;c[h>>2]=d;c[e>>
;2]=c[e>>2];c[h>>2]=c[h>>2];d=c[e>>2]|0;if((c[(c[e>>2]|0)+428>>2]|0)
x3c;=0){c[d+12>>2]=136;i=g;return}d=d+428|0;c[d>>2]=(c[d>>2]|0)+-1;c[f>>2]=(c[(c[e>
x3e;2]|0)+436>>2]|0)+(c[(c[e>>2]|0)+428>>2]<<4);d=(c[f>>2]|0)+8|0;c[d>>
;2]=(c[d>>2]|0)+-1;a[(c[e>>2]|0)+376>>0]=0;d=c[e>>2]|0;if((c[(c[f>>2]|0)+8>
;>2]|0)>0){h=d+428|0;c[h>>2]=(c[h>>2]|0)+1;c[(c[e>>2]|0)+360>>2]=c[(c[f>
x3e;2]|0)+12>>2];i=g;return}else{ag(d,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0
;i=g;return}}function gg(f,g){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;h=m+12|0;n=m+8|0;l=m+16|0;j=m+4|0;k=m;c[h>
;>2]=f;c[n>>2]=g;b[l>>1]=c[c[n>>2]>>2];g=c[h>>2]|0;if((e[l>>1]|
0)>>>0>=(e[(c[h>>2]|0)+36+8>>1]|0)>>>0){if(!(a[g+561>>0]|0)){i=
m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}if(d[g+368>>0]&1|0){c[j>>2]=Oa[c[(c[h
x3e;>2]|0)+572>>2]&63](c[h>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[l>>
;1]<<3)>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[l>>1]<<3)+4>>
;2]|0)|0;n=Oa[c[(c[h>>2]|0)+568>>2]&63](c[h>>2]|0,c[j>>2]|0,c[(c[h>>2]|0)+
244+20>>2]|0)|0;c[k>>2]=n-(c[j>>2]|0)}else c[k>>2]=0;_a[c[(c[h>>2]|0)+584>
;>2]&15](c[h>>2]|0,(c[h>>2]|0)+36|0,b[l>>1]|0,c[k>>2]|0);b[(c[h>>2]|
0)+284>>1]=b[l>>1]|0;b[(c[h>>2]|0)+284+2>>1]=b[l>>1]|0;i=m;return}function hg(
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;r=i;i=i+64|0;h=r+44|0;s=r+40|0;j=r+24|0;p=r+50|0;n=r+16|0;m=r+12
|0;o=r+8|0;l=r+4|0;q=r;k=r+48|0;c[h>>2]=f;c[s>>2]=g;c[h>>2]=c[h>>2];c[s>>2]=c[
s>>2];if(!(b[(c[h>>2]|0)+144+10>>1]|0)){i=r;return}if(d[(c[h>>2]|0)+368>>0]&
;1|0){a[p>>0]=8;c[j>>2]=c[(c[h>>2]|0)+144+12>>2];c[j+4>>2]=c[(c[h>>2
]|0)+144+16>>2];c[j+8>>2]=c[(c[h>>2]|0)+144+20>>2]}else{a[p>>0]=16;c[j>
x3e;2]=(c[(c[h>>2]|0)+144+12>>2]|0)+4;c[j+4>>2]=(c[(c[h>>2]|0)+144+16>>2]|0)+4
;c[j+8>>2]=(c[(c[h>>2]|0)+144+20>>2]|0)+4}c[j+12>>2]=e[(c[h>>2]|0)+144+8>
x3e;1];b[k>>1]=0;c[q>>2]=0;do{c[m>>2]=(e[(c[(c[h>>2]|0)+144+28>>2]|0)+(b[k>
;>1]<<1)>>1]|0)-(e[(c[h>>2]|0)+144+32>>1]|0);c[n>>2]=c[q>>2];if
((c[m>>2]|0)>>>0>=(e[(c[h>>2]|0)+144+8>>1]|0)>>>0)c[m>>
;2]=(e[(c[h>>2]|0)+144+8>>1]|0)-1;while(1){if((c[q>>2]|0)>>>0<=(c[m>>
;2]|0)>>>0)g=(d[(c[(c[h>>2]|0)+144+24>>2]|0)+(c[q>>2]|0)>>0]&d[p>
;>0]|0)==0;else g=0;f=c[q>>2]|0;if(!g)break;c[q>>2]=f+1}do if(f>>>0<=(c[m>>
;2]|0)>>>0){c[o>>2]=c[q>>2];c[l>>2]=c[q>>2];c[q>>2]=(c[q>
x3e;2]|0)+1;while(1){if((c[q>>2]|0)>>>0>(c[m>>2]|0)>>>0)break;if(d[(c[(c[
h>>2]|0)+144+24>>2]|0)+(c[q>>2]|0)>>0]&d[p>>0]|0){ig(j,(c[l>>2]|
0)+1|0,(c[q>>2]|0)-1|0,c[l>>2]|0,c[q>>2]|0);c[l>>2]=c[q>>2]}c[q>>2]=(
c[q>>2]|0)+1}if((c[l>>2]|0)==(c[o>>2]|0)){jg(j,c[n>>2]|0,c[m>>2]|0,c[l>
x3e;2]|0);break}ig(j,(c[l>>2]|0)+1&65535,c[m>>2]|0,c[l>>2]|0,c[o>>2]|0);if((c[o>
;>2]|0)>>>0>0)ig(j,c[n>>2]|0,(c[o>>2]|0)-1|0,c[l>>2]|0,c[o>>2]|
0)}while(0);b[k>>1]=(b[k>>1]|0)+1<<16>>16}while((b[k>>1]|0)<(b[(c[h>
x3e;2]|0)+144+10>>1]|0));i=r;return}function ig(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,x=0,y=0,z=0,A=0;A=i;i=i+80|0;h=A+64|0;j=A+60|0;k=A+56|0;l=A+52|0;m=A+48|0;p=A+44|0;s=A+40|0;t
=A+36|0;q=A+32|0;r=A+28|0;n=A+24|0;o=A+20|0;w=A+16|0;x=A+12|0;y=A+8|0;u=A+4|0;v=A+68|0;z=A;c[h>>2]=b;c[j>>2]=
d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;if((c[j>>2]|0)>>>0>(c[k>>2
]|0)>>>0){i=A;return}if((c[l>>2]|0)>>>0>=(c[(c[h>>2]|0)+12>>2]|
0)>>>0){i=A;return}if((c[m>>2]|0)>>>0>=(c[(c[h>>2]|0)+12>>2]|0)
x3e;>>0){i=A;return}c[s>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+(c[l>>2]<<3)
x3e;>2];c[t>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+(c[m>>2]<<3)>>2];if((
c[s>>2]|0)>(c[t>>2]|0)){c[w>>2]=c[s>>2];c[s>>2]=c[t>>2];c[t>
;>2]=c[w>>2];c[x>>2]=c[l>>2];c[l>>2]=c[m>>2];c[m>>2]=c[x>
x3e;2]}c[q>>2]=c[(c[c[h>>2]>>2]|0)+(c[l>>2]<<3)>>2];c[r>>2
]=c[(c[c[h>>2]>>2]|0)+(c[m>>2]<<3)>>2];c[n>>2]=(c[(c[(c[h>>
;2]|0)+4>>2]|0)+(c[l>>2]<<3)>>2]|0)-(c[q>>2]|0);c[o>>2]=(c[(c[(c[h
x3e;>2]|0)+4>>2]|0)+(c[m>>2]<<3)>>2]|0)-(c[r>>2]|0);if((c[s>>2]|
0)==(c[t>>2]|0)){c[p>>2]=c[j>>2];while(1){if((c[p>>2]|0)>>>0>(c[k>
;>2]|0)>>>0)break;c[y>>2]=c[(c[c[h>>2]>>2]|0)+(c[p>>2]<<3)
x3e;>2];if((c[y>>2]|0)<=(c[q>>2]|0))c[y>>2]=(c[y>>2]|0)+(c[n>>2]|0);
else c[y>>2]=(c[y>>2]|0)+(c[o>>2]|0);c[(c[(c[h>>2]|0)+4>>2]|0)+(c[p>>
;2]<<3)>>2]=c[y>>2];c[p>>2]=(c[p>>2]|0)+1}i=A;return}c[u>>2]=0;a[v
x3e;>0]=0;c[p>>2]=c[j>>2];while(1){if((c[p>>2]|0)>>>0>(c[k>>2]|
0)>>>0)break;c[z>>2]=c[(c[c[h>>2]>>2]|0)+(c[p>>2]<<3)>>
;2];do if((c[z>>2]|0)<=(c[q>>2]|0))c[z>>2]=(c[z>>2]|0)+(c[n>>2]|0);else{if
((c[z>>2]|0)>=(c[r>>2]|0)){c[z>>2]=(c[z>>2]|0)+(c[o>>2]|0);break}if(!(a[v
>>0]|0)){a[v>>0]=1;c[u>>2]=xb((c[r>>2]|0)+(c[o>>2]|0)-((c[q>>2]|0)+(
c[n>>2]|0))|0,65536,(c[t>>2]|0)-(c[s>>2]|0)|0)|0}y=(c[q>>2]|0)+(c[n>>2]|0)|0;c
[z>>2]=y+(Mb((c[(c[(c[h>>2]|0)+8>>2]|0)+(c[p>>2]<<3)>>2]|0)-(c[s>
;>2]|0)|0,c[u>>2]|0)|0)}while(0);c[(c[(c[h>>2]|0)+4>>2]|0)+(c[p>>2]<<3)
x3e;>2]=c[z>>2];c[p>>2]=(c[p>>2]|0)+1}i=A;return}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;m=i;i=i+32|0;f=m+20|0;g=m+16|0;h=m+12|0;j=m+8|0;l=m+4|0;k=m;c[f>>2]=a;c[g>>
2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=(c[(c[(c[f>>2]|0)+4>>2]|0)+(c[j>>2]
x3c;<3)>>2]|0)-(c[(c[c[f>>2]>>2]|0)+(c[j>>2]<<3)>>2]|0);if(!(c[
k>>2]|0)){i=m;return}c[l>>2]=c[g>>2];while(1){if((c[l>>2]|0)>>>0>=(c
[j>>2]|0)>>>0)break;a=(c[(c[f>>2]|0)+4>>2]|0)+(c[l>>2]<<3)|0;c[
a>>2]=(c[a>>2]|0)+(c[k>>2]|0);c[l>>2]=(c[l>>2]|0)+1}c[l>>2]=(c[j>
;>2]|0)+1;while(1){if((c[l>>2]|0)>>>0>(c[h>>2]|0)>>>0)break;a=(c[(c[
f>>2]|0)+4>>2]|0)+(c[l>>2]<<3)|0;c[a>>2]=(c[a>>2]|0)+(c[k>>
;2]|0);c[l>>2]=(c[l>>2]|0)+1}i=m;return}function kg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+64|
0;k=l+48|0;m=l+44|0;g=l+4|0;h=l;j=l+52|0;c[k>>2]=d;c[m>>2]=f;c[k>>2]=c[k>>2];c[m>
x3e;2]=c[m>>2];f=c[k>>2]|0;if((c[(c[k>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0)+284
+20>>2]|0)){c[f+12>>2]=134;i=l;return}if((lg(f,g,h,l+8|0,l+54|0)|0)<<24>>24){i=l;return}
while(1){d=c[k>>2]|0;if((c[(c[k>>2]|0)+284+20>>2]|0)<=0){f=10;break}f=d+28|0;c[f>>2
]=(c[f>>2]|0)+-1;b[j>>1]=c[(c[(c[k>>2]|0)+24>>2]|0)+(c[(c[k>>2]|0)+28>>
;2]<<2)>>2];f=c[k>>2]|0;if((e[j>>1]|0)>>>0>=(e[(c[k>>2]|0)+
108+8>>1]|0)>>>0){if(a[f+561>>0]|0){f=7;break}}else mg(f,b[j>>1]|0,c[g>>2
]|0,c[h>>2]|0,1);m=(c[k>>2]|0)+284+20|0;c[m>>2]=(c[m>>2]|0)+-1}if((f|0)==7){c[(c[k>
x3e;2]|0)+12>>2]=134;i=l;return}else if((f|0)==10){c[d+284+20>>2]=1;c[(c[k>>2]|0)+32>>2]=
c[(c[k>>2]|0)+28>>2];i=l;return}}function lg(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;u=i;i=i+64|0;l=u+62|0;m=u+56|0;n=u+52|0;o=u+48|0;p=u+44|0;q=u+40|0;t=u+4|0;s=u+60|0;r=u;c[m>>2]=
f;c[n>>2]=g;c[o>>2]=h;c[p>>2]=j;c[q>>2]=k;f=c[m>>2]|0;if(d[(c[m>>2]|
0)+368>>0]&1|0){g=t;f=f+36|0;k=g+36|0;do{c[g>>2]=c[f>>2];g=g+4|0;f=f+4|0}while((g|0)<(k|
0));b[s>>1]=b[(c[m>>2]|0)+284+2>>1]|0}else{g=t;f=f+72|0;k=g+36|0;do{c[g>>2]=c[f>>
;2];g=g+4|0;f=f+4|0}while((g|0)<(k|0));b[s>>1]=b[(c[m>>2]|0)+284+4>>1]|0}if((e[s>>1
]|0)>>>0<(e[t+8>>1]|0)>>>0){g=c[p>>2]|0;f=t;k=g+36|0;do{c[g>>2]=
c[f>>2];g=g+4|0;f=f+4|0}while((g|0)<(k|0));b[c[q>>2]>>1]=b[s>>1]|0;c[r>>2
]=Oa[c[(c[m>>2]|0)+572>>2]&63](c[m>>2]|0,(c[(c[t+16>>2]|0)+(e[s>>1]<
x3c;3)>>2]|0)-(c[(c[t+12>>2]|0)+(e[s>>1]<<3)>>2]|0)|0,(c[(c[t+16>>2]|
0)+(e[s>>1]<<3)+4>>2]|0)-(c[(c[t+12>>2]|0)+(e[s>>1]<<3)+4>>
;2]|0)|0)|0;t=xb(c[r>>2]|0,b[(c[m>>2]|0)+284+14>>1]<<16,c[(c[m>>2]|0)+564>
;>2]|0)|0;c[c[n>>2]>>2]=t;t=xb(c[r>>2]|0,b[(c[m>>2]|0)+284+14+2>>1]<
x3c;16,c[(c[m>>2]|0)+564>>2]|0)|0;c[c[o>>2]>>2]=t;a[l>>0]=0;t=a[l>>0
]|0;i=u;return t|0}if(a[(c[m>>2]|0)+561>>0]|0)c[(c[m>>2]|0)+12>>2]=134;b[c[q>>
2]>>1]=0;a[l>>0]=1;t=a[l>>0]|0;i=u;return t|0}function mg(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;q=i;i=i+16|0;l=q+8|0;m=q+12|0;n=q+4|0;o=q;p=q+14|0;c[l>>2]=f;b[m>>1]=g;c[n>
;>2]=h;c[o>>2]=j;a[p>>0]=k;if(b[(c[l>>2]|0)+284+14>>1]|0?(k=(c[(c[l>>2]|0
)+108+16>>2]|0)+(e[m>>1]<<3)|0,c[k>>2]=(c[k>>2]|0)+(c[n>>2]|0),a[p
x3e;>0]|0):0){k=(c[(c[l>>2]|0)+108+24>>2]|0)+(e[m>>1]|0)|0;a[k>>0]=d[k>>0
]|8}if(!(b[(c[l>>2]|0)+284+14+2>>1]|0)){i=q;return}k=(c[(c[l>>2]|0)+108+16>>2]|0)+(e[m
x3e;>1]<<3)+4|0;c[k>>2]=(c[k>>2]|0)+(c[o>>2]|0);if(!(a[p>>0]|0)){i=q;return
}k=(c[(c[l>>2]|0)+108+24>>2]|0)+(e[m>>1]|0)|0;a[k>>0]=d[k>>0]|16;i=q;return}function
ng(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;q=i;i=i+64|0;g=q+48|0;r=q+44|0;p=q+8|0;o=q+60|0;j=q+4|0;k=q
;h=q+58|0;l=q+56|0;n=q+54|0;m=q+52|0;c[g>>2]=d;c[r>>2]=f;b[h>>1]=c[c[r>>2]>>2];
f=c[g>>2]|0;if((b[h>>1]|0)>>>0>=(b[(c[g>>2]|0)+144+10>>1]|0)>
x3e;>0){if(!(a[f+561>>0]|0)){i=q;return}c[(c[g>>2]|0)+12>>2]=134;i=q;return}if((lg(f,j,k,p,o)|
0)<<24>>24){i=q;return}if(!(b[h>>1]|0))b[l>>1]=0;else b[l>>1]=(e[(c[(c[g>
x3e;2]|0)+144+28>>2]|0)+((b[h>>1]|0)-1<<1)>>1]|0)+1-(e[(c[g>>2]|0)+144+32>
;>1]|0);b[n>>1]=(e[(c[(c[g>>2]|0)+144+28>>2]|0)+(b[h>>1]<<1)>>1
]|0)-(e[(c[g>>2]|0)+144+32>>1]|0);do if((e[n>>1]|0)>>>0>=(e[(c[g>>2]|
0)+108+8>>1]|0)>>>0)if((e[(c[g>>2]|0)+108+8>>1]|0)>0){b[n>>1]=(e[(c[
g>>2]|0)+108+8>>1]|0)-1;break}else{b[n>>1]=0;break}while(0);b[m>>1]=b[l>>1]|0;
while(1){if((e[m>>1]|0)>(e[n>>1]|0))break;if(!((c[p+16>>2]|0)==(c[(c[g>>2]|0)+108+16
>>2]|0)?(e[o>>1]|0)==(e[m>>1]|0):0))mg(c[g>>2]|0,b[m>>1]|0,c[j>>2]|0
,c[k>>2]|0,1);b[m>>1]=(b[m>>1]|0)+1<<16>>16}i=q;return}function og(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;p=i;i=i+64|0;g=p+48|0;q=p+44|0;n=p+8|0;m=p+56|0;h=p+4|0;j=p;l=p+54|0;k=p+52|0;
c[g>>2]=d;c[q>>2]=f;f=c[g>>2]|0;if((c[c[q>>2]>>2]|0)>>>0>=
2){if(!(a[f+561>>0]|0)){i=p;return}c[(c[g>>2]|0)+12>>2]=134;i=p;return}if((lg(f,h,j,n,m)|0)<
x3c;24>>24){i=p;return}if((e[(c[g>>2]|0)+284+64>>1]|0)==0?(e[(c[g>>2]|0)+108+8>>
;1]|0)>0:0)b[l>>1]=(e[(c[g>>2]|0)+108+8>>1]|0)-1;else o=8;do if((o|0)==8){if((e[(c[g>>
;2]|0)+284+64>>1]|0)==1?(b[(c[g>>2]|0)+108+10>>1]|0)>0:0){b[l>>1]=b[(c[(c[g>
x3e;2]|0)+108+28>>2]|0)+((b[(c[g>>2]|0)+108+10>>1]|0)-1<<1)>>1]|0;if((e[l>
;>1]|0)>>>0<(e[(c[g>>2]|0)+108+8>>1]|0)>>>0)break;if(!(a[(c[g>
x3e;2]|0)+561>>0]|0)){i=p;return}c[(c[g>>2]|0)+12>>2]=134;i=p;return}b[l>>1]=0}while(0);
b[k>>1]=0;while(1){if((e[k>>1]|0)>(e[l>>1]|0))break;if(!((c[n+16>>2]|0)==(c[(c[g>
;>2]|0)+108+16>>2]|0)?(e[m>>1]|0)==(e[k>>1]|0):0))mg(c[g>>2]|0,b[k>>1]|0,
c[h>>2]|0,c[j>>2]|0,0);b[k>>1]=(b[k>>1]|0)+1<<16>>16}i=p;return}function
pg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;l=m+12|0;g=m+8|0;h=m+4|0;j=m;k=m+16|0;c[l>>2]=d;c[g>
;>2]=f;if((c[(c[l>>2]|0)+16>>2]|0)<((c[(c[l>>2]|0)+284+20>>2]|0)+1|0)){c[(c[l
x3e;>2]|0)+12>>2]=134;i=m;return}c[h>>2]=qg(c[c[g>>2]>>2]|0,b[(c[l>>2]|0)+
284+14>>1]|0)|0;c[j>>2]=qg(c[c[g>>2]>>2]|0,b[(c[l>>2]|0)+284+14+2>>1
]|0)|0;while(1){f=c[l>>2]|0;if((c[(c[l>>2]|0)+284+20>>2]|0)<=0){g=10;break}g=f+28|0;c[g>
x3e;2]=(c[g>>2]|0)+-1;b[k>>1]=c[(c[(c[l>>2]|0)+24>>2]|0)+(c[(c[l>>2]|0)+28>
;>2]<<2)>>2];g=c[l>>2]|0;if((e[k>>1]|0)>>>0>=(e[(c[l>>
;2]|0)+108+8>>1]|0)>>>0){if(a[g+561>>0]|0){g=7;break}}else mg(g,b[k>>1]|0,c[h>
x3e;2]|0,c[j>>2]|0,1);d=(c[l>>2]|0)+284+20|0;c[d>>2]=(c[d>>2]|0)+-1}if((g|0)==7){c[(c[l
x3e;>2]|0)+12>>2]=134;i=m;return}else if((g|0)==10){c[f+284+20>>2]=1;c[(c[l>>2]|0)+32>
x3e;2]=c[(c[l>>2]|0)+28>>2];i=m;return}}function qg(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
;m=i;i=i+32|0;d=m+28|0;e=m+24|0;l=m+20|0;f=m+16|0;g=m+12|0;k=m+8|0;j=m+4|0;h=m;c[d>>2]=a;c[e>>2]=b;c[l>
x3e;2]=c[d>>2]^c[e>>2];if((c[d>>2]|0)<0)c[d>>2]=0-(c[d>>2]|0);if((c[e>
;>2]|0)<0)c[e>>2]=0-(c[e>>2]|0);c[f>>2]=c[d>>2]>>16&65535;c[g
x3e;>2]=c[d>>2]&65535;c[j>>2]=_(c[g>>2]|0,c[e>>2]|0)|0;c[k>>2]=_(c[f
>>2]|0,c[e>>2]|0)|0;c[h>>2]=(c[k>>2]|0)>>>16;c[k>>2]=(c[k>
x3e;2]<<16)+8192;c[j>>2]=(c[j>>2]|0)+(c[k>>2]|0);if((c[j>>2]|0)>>>
;0>=(c[k>>2]|0)>>>0){b=c[j>>2]|0;b=b>>>14;j=c[h>>2]|0;j=j<
x3c;18;j=b|j;c[k>>2]=j;j=c[l>>2]|0;j=(j|0)>=0;k=c[k>>2]|0;l=0-k|0;l=j?k:l;i=m;return l|0}c[h
x3e;>2]=(c[h>>2]|0)+1;b=c[j>>2]|0;b=b>>>14;j=c[h>>2]|0;j=j<<18;j=b|j
;c[k>>2]=j;j=c[l>>2]|0;j=(j|0)>=0;k=c[k>>2]|0;l=0-k|0;l=j?k:l;i=m;return l|0}function rg(b,d){
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,q=0,r=0,s=0;s=i;i=i+48|0;r=s+40|0;g=s+36|0;m=s+32|0;k=s+28|0;o=s+24|0;h=
s+20|0;q=s+16|0;p=s+12|0;n=s+8|0;j=s+4|0;l=s;c[r>>2]=b;c[g>>2]=d;c[r>>2]=c[r>>2];c[g>
;>2]=c[g>>2];d=c[r>>2]|0;if((c[(c[r>>2]|0)+16>>2]|0)<(c[(c[r>>2]|0)+
284+20>>2]|0)){c[d+12>>2]=134;i=s;return}if((e[d+284+60>>1]|0)!=0?(e[(c[r>>2]|0)+284+62
x3e;>1]|0)!=0:0)d=(e[(c[r>>2]|0)+284+64>>1]|0)==0;else d=1;c[q>>2]=d&1;if((e[(c[r>
x3e;2]|0)+284+2>>1]|0)>>>0>=(e[(c[r>>2]|0)+36+8>>1]|0)>>>0){if(!(
a[(c[r>>2]|0)+561>>0]|0)){i=s;return}c[(c[r>>2]|0)+12>>2]=134;i=s;return}d=e[(c[r>
x3e;2]|0)+284+2>>1]|0;b=(c[r>>2]|0)+36|0;if(c[q>>2]|0)c[o>>2]=(c[b+12>>2]|0)+(
d<<3);else c[o>>2]=(c[b+20>>2]|0)+(d<<3);c[h>>2]=(c[(c[r>>2]|0)+36+16
>>2]|0)+(e[(c[r>>2]|0)+284+2>>1]<<3);if((e[(c[r>>2]|0)+284+2>>1]|0)
x3e;>>0<(e[(c[r>>2]|0)+36+8>>1]|0)>>>0?(e[(c[r>>2]|0)+284+4>>
;1]|0)>>>0<(e[(c[r>>2]|0)+72+8>>1]|0)>>>0:0){d=c[(c[r>>2]|0)+576
>>2]|0;b=c[r>>2]|0;f=e[(c[r>>2]|0)+284+4>>1]|0;g=(c[r>>2]|0)+72|0;if(c[q>
x3e;2]|0)c[m>>2]=Oa[d&63](b,(c[(c[g+12>>2]|0)+(f<<3)>>2]|0)-(c[c[o>>2]>
;>2]|0)|0,(c[(c[(c[r>>2]|0)+72+12>>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)+4
x3e;>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;else c[m>>2]=Oa[d&63](b,(c[(c[g+20>>2]|
0)+(f<<3)>>2]|0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+72+20>>2]|0)+(
e[(c[r>>2]|0)+284+4>>1]<<3)+4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;c[
k>>2]=Oa[c[(c[r>>2]|0)+572>>2]&63](c[r>>2]|0,(c[(c[(c[r>>2]|0)+72+16>
;>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)>>2]|0)-(c[c[h>>2]>>2]|0)|0
,(c[(c[(c[r>>2]|0)+72+16>>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)+4>>2]|0
)-(c[(c[h>>2]|0)+4>>2]|0)|0)|0}else{c[m>>2]=0;c[k>>2]=0}while(1){b=c[r>>2]|0;if
((c[(c[r>>2]|0)+284+20>>2]|0)<=0){d=34;break}f=b+28|0;g=(c[f>>2]|0)+-1|0;c[f>>2]=g;
c[p>>2]=c[(c[(c[r>>2]|0)+24>>2]|0)+(g<<2)>>2];if((c[p>>2]|0)>
x3e;>0>=(e[(c[r>>2]|0)+108+8>>1]|0)>>>0){if(a[(c[r>>2]|0)+561>>
0]|0){d=22;break}}else{d=c[(c[r>>2]|0)+576>>2]|0;b=c[r>>2]|0;f=c[p>>2]|0;g=(c[r>>
;2]|0)+108|0;if(c[q>>2]|0)c[n>>2]=Oa[d&63](b,(c[(c[g+12>>2]|0)+(f<<3)>>2]|
0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+12>>2]|0)+(c[p>>2]<<3)+
4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;else c[n>>2]=Oa[d&63](b,(c[(c[g+20>>
;2]|0)+(f<<3)>>2]|0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+20>>2
]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;c[j>>2]=Oa[c
[(c[r>>2]|0)+572>>2]&63](c[r>>2]|0,(c[(c[(c[r>>2]|0)+108+16>>2]|0)+(c[p
x3e;>2]<<3)>>2]|0)-(c[c[h>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+16>>
;2]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0)|0)|0;if(c[n>>2]|
0){if(c[m>>2]|0)d=xb(c[n>>2]|0,c[k>>2]|0,c[m>>2]|0)|0;else d=c[j>>2]|0;c[l>
;>2]=d}else c[l>>2]=0;_a[c[(c[r>>2]|0)+584>>2]&15](c[r>>2]|0,(c[r>>2
]|0)+108|0,c[p>>2]&65535,(c[l>>2]|0)-(c[j>>2]|0)|0)}g=(c[r>>2]|0)+284+20|0;c[g>
;>2]=(c[g>>2]|0)+-1}if((d|0)==22){c[(c[r>>2]|0)+12>>2]=134;i=s;return}else if((d|0)==34){c[b+
284+20>>2]=1;c[(c[r>>2]|0)+32>>2]=c[(c[r>>2]|0)+28>>2];i=s;return}}function sg
(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+8|0;j=m+4|0;l=m+12|0;k=m;c[h>>2]=f;c[j>>2]=g;b[l
x3e;>1]=c[c[j>>2]>>2];if((e[l>>1]|0)>>>0<(e[(c[h>>2]|0)+72+8>
;>1]|0)>>>0?(e[(c[h>>2]|0)+284>>1]|0)>>>0<(e[(c[h>>2]|0)+36
+8>>1]|0)>>>0:0){if(!(e[(c[h>>2]|0)+284+62>>1]|0)){f=(c[(c[h>>2]|0)+72+12
>>2]|0)+(e[l>>1]<<3)|0;g=(c[(c[h>>2]|0)+36+12>>2]|0)+(e[(c[h>>2]|0)+
284>>1]<<3)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];_a[c[(c[h>>
;2]|0)+588>>2]&15](c[h>>2]|0,(c[h>>2]|0)+72|0,b[l>>1]|0,c[(c[j>>2]|0)+4
x3e;>2]|0);f=(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)|0;g=(c[(c[h>>2]|0)+
72+12>>2]|0)+(e[l>>1]<<3)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>
;2]}c[k>>2]=Oa[c[(c[h>>2]|0)+572>>2]&63](c[h>>2]|0,(c[(c[(c[h>>2]|0)+72+16
>>2]|0)+(e[l>>1]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[(c[h
x3e;>2]|0)+284>>1]<<3)>>2]|0)|0,(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>
x3e;1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[(c[h>>2]|0)+284>>
;1]<<3)+4>>2]|0)|0)|0;_a[c[(c[h>>2]|0)+584>>2]&15](c[h>>2]|0,(c[h>
x3e;2]|0)+72|0,b[l>>1]|0,(c[(c[j>>2]|0)+4>>2]|0)-(c[k>>2]|0)|0);b[(c[h>>2]|0)+
284+2>>1]=b[(c[h>>2]|0)+284>>1]|0;b[(c[h>>2]|0)+284+4>>1]=b[l>>1]|0;
if(!(d[(c[h>>2]|0)+368>>0]&1)){i=m;return}b[(c[h>>2]|0)+284>>1]=b[l>>1]|0
;i=m;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return
}function tg(d,f){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+8|0;l=k+4|0;h=k+12|0;g=k;c[j>>2]=d;c[l>>
;2]=f;c[j>>2]=c[j>>2];c[l>>2]=c[l>>2];if((c[(c[j>>2]|0)+16>>2]|0)>
;=(c[(c[j>>2]|0)+284+20>>2]|0)?(e[(c[j>>2]|0)+284>>1]|0)>>>0<(e[(c[j
>>2]|0)+36+8>>1]|0)>>>0:0){while(1){d=c[j>>2]|0;if((c[(c[j>>2]|0)+284+20
x3e;>2]|0)<=0){f=11;break}f=d+28|0;c[f>>2]=(c[f>>2]|0)+-1;b[h>>1]=c[(c[(c[j>>2
]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<2)>>2];f=c[j>>2]|0;if((e[h>
;>1]|0)>>>0>=(e[(c[j>>2]|0)+72+8>>1]|0)>>>0){if(a[f+561>>0
]|0){f=8;break}}else{c[g>>2]=Oa[c[f+572>>2]&63](c[j>>2]|0,(c[(c[(c[j>>2]|0)+72+16
x3e;>2]|0)+(e[h>>1]<<3)>>2]|0)-(c[(c[(c[j>>2]|0)+36+16>>2]|0)+(e[(c[j>
;>2]|0)+284>>1]<<3)>>2]|0)|0,(c[(c[(c[j>>2]|0)+72+16>>2]|0)+(e[h>>
;1]<<3)+4>>2]|0)-(c[(c[(c[j>>2]|0)+36+16>>2]|0)+(e[(c[j>>2]|0)+284>>
1]<<3)+4>>2]|0)|0)|0;_a[c[(c[j>>2]|0)+584>>2]&15](c[j>>2]|0,(c[j>>
;2]|0)+72|0,b[h>>1]|0,0-(c[g>>2]|0)|0)}l=(c[j>>2]|0)+284+20|0;c[l>>2]=(c[l>>2]|
0)+-1}if((f|0)==8){c[(c[j>>2]|0)+12>>2]=134;i=k;return}else if((f|0)==11){c[d+284+20>>2]=1;c[(c[j
x3e;>2]|0)+32>>2]=c[(c[j>>2]|0)+28>>2];i=k;return}}if(!(a[(c[j>>2]|0)+561>>
;0]|0)){i=k;return}c[(c[j>>2]|0)+12>>2]=134;i=k;return}function ug(f,g){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;h=n+16|0;o=n+12|0;j=n+8|0;m=n+20|0;k=n+4|0;l=n;c[h>>2]=f;c[o>>2]=g;c[j>>2]=c[(
c[o>>2]|0)+4>>2];b[m>>1]=c[c[o>>2]>>2];if((e[m>>1]|0)>>>
;0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0?(c[j>>2]|0)>>>0<(c[(c[h
x3e;>2]|0)+380>>2]|0)>>>0:0){c[k>>2]=Ya[c[(c[h>>2]|0)+592>>2]&127
](c[h>>2]|0,c[j>>2]|0)|0;if(!(e[(c[h>>2]|0)+284+60>>1]|0)){o=qg(c[k>>2]|0,b[(c
[h>>2]|0)+284+14>>1]|0)|0;c[(c[(c[h>>2]|0)+36+12>>2]|0)+(e[m>>1]<<3)
x3e;>2]=o;o=qg(c[k>>2]|0,b[(c[h>>2]|0)+284+14+2>>1]|0)|0;c[(c[(c[h>>2]|0)+36+12>
;>2]|0)+(e[m>>1]<<3)+4>>2]=o;o=(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>
;1]<<3)|0;f=(c[(c[h>>2]|0)+36+12>>2]|0)+(e[m>>1]<<3)|0;c[o>>2]=c[f
x3e;>2];c[o+4>>2]=c[f+4>>2]}c[l>>2]=Oa[c[(c[h>>2]|0)+572>>2]&63](c[h
>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>>2]|0,c[(c[(c[h>
;>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)|0;if(d[(c[h>>2]|0)+368>
x3e;0]&1|0){o=(c[k>>2]|0)-(c[l>>2]|0)|0;if(((((c[k>>2]|0)-(c[l>>2]|0)|0)<0?0-o
|0:o)|0)>(c[(c[h>>2]|0)+284+36>>2]|0))c[k>>2]=c[l>>2];c[k>>2]=Oa[c[(c[h
x3e;>2]|0)+568>>2]&63](c[h>>2]|0,c[k>>2]|0,c[(c[h>>2]|0)+244+20>>2]|
0)|0}_a[c[(c[h>>2]|0)+584>>2]&15](c[h>>2]|0,(c[h>>2]|0)+36|0,b[m>>1]|0,(c
[k>>2]|0)-(c[l>>2]|0)|0);b[(c[h>>2]|0)+284>>1]=b[m>>1]|0;b[(c[h>>2]|
0)+284+2>>1]=b[m>>1]|0;i=n;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=n;return}c[(c[h>
x3e;2]|0)+12>>2]=134;i=n;return}function vg(a,f){a=a|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+4|0;h=l;k=l+10|0
;j=l+8|0;c[g>>2]=a;c[h>>2]=f;b[k>>1]=d[(c[(c[g>>2]|0)+356>>2]|0)+((c[(c[g>
;>2]|0)+360>>2]|0)+1)>>0]|0;if((e[k>>1]|0)>>>0>=((c[(c[g>>2]|0)+
20>>2]|0)+1-(c[(c[g>>2]|0)+16>>2]|0)|0)>>>0){c[(c[g>>2]|0)+12>>
2]=130;i=l;return}b[j>>1]=1;while(1){if((e[j>>1]|0|0)>(e[k>>1]|0|0))break;c[(c[h>>2
]|0)+((e[j>>1]|0)-1<<2)>>2]=d[(c[(c[g>>2]|0)+356>>2]|0)+((c[(c[g>>2]|
0)+360>>2]|0)+(e[j>>1]|0)+1)>>0];b[j>>1]=(b[j>>1]|0)+1<<16>>
;16}a=(c[g>>2]|0)+32|0;c[a>>2]=(c[a>>2]|0)+(e[k>>1]|0);i=l;return}function wg(f,g){f=f|0
;g=g|0;var h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+4|0;j=m;l=m+10|0;k=m+8|0;c[h>>2]=f;c[j>>2]=g;b[l>>
1]=d[(c[(c[h>>2]|0)+356>>2]|0)+((c[(c[h>>2]|0)+360>>2]|0)+1)>>0]|0;g=c[h>
x3e;2]|0;if((e[l>>1]|0)>>>0>=((c[(c[h>>2]|0)+20>>2]|0)+1-(c[(c[h>>2]|
0)+16>>2]|0)|0)>>>0){c[g+12>>2]=130;i=m;return}f=g+360|0;c[f>>2]=(c[f>>2]|
0)+2;b[k>>1]=0;while(1){g=c[h>>2]|0;if((e[k>>1]|0|0)>=(e[l>>1]|0|0))break;f=(xg(g)|
0)<<16>>16;c[(c[j>>2]|0)+((e[k>>1]|0)<<2)>>2]=f;b[k>>1]=(b
[k>>1]|0)+1<<16>>16}a[g+376>>0]=0;k=(c[h>>2]|0)+32|0;c[k>>2]=(c[k>
;>2]|0)+(e[l>>1]|0);i=m;return}function xg(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;a=(c[b>
x3e;2]|0)+360|0;c[a>>2]=(c[a>>2]|0)+2;i=e;return ((d[(c[(c[b>>2]|0)+356>>2]|0)+((c[(c[b
x3e;>2]|0)+360>>2]|0)-2)>>0]|0)<<8)+(d[(c[(c[b>>2]|0)+356>>2]|0)+((c[(c[b
>>2]|0)+360>>2]|0)-1)>>0]|0)&65535|0}function yg(b,f){b=b|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i
;i=i+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=b;c[h>>2]=f;c[j>>2]=c[c[h>>2]>>
2];f=c[g>>2]|0;do if((c[j>>2]|0)>>>0<(e[(c[g>>2]|0)+108+8>>1]|0)>
;>>0){b=c[g>>2]|0;if(d[f+368>>0]&1|0){c[k>>2]=Oa[c[b+576>>2]&63](c[g
>>2]|0,c[(c[(c[g>>2]|0)+108+12>>2]|0)+(c[j>>2]<<3)>>2]|0,c[(c[(c[g
x3e;>2]|0)+108+12>>2]|0)+(c[j>>2]<<3)+4>>2]|0)|0;break}else{c[k>>2]=Oa[c[
b+572>>2]&63](c[g>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(c[j>>2]<<
;3)>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(c[j>>2]<<3)+4>>2]|0)|0;break
}}else{if(!(a[f+561>>0]|0)){c[k>>2]=0;break}c[(c[g>>2]|0)+12>>2]=134;i=l;return}while(0);
c[c[h>>2]>>2]=c[k>>2];i=l;return}function zg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0
;g=l+8|0;h=l+4|0;j=l;k=l+12|0;c[g>>2]=d;c[h>>2]=f;b[k>>1]=c[c[h>>2]>>2];f=c[g
x3e;>2]|0;if((e[k>>1]|0)>>>0>=(e[(c[g>>2]|0)+108+8>>1]|0)>>>
;0){if(!(a[f+561>>0]|0)){i=l;return}c[(c[g>>2]|0)+12>>2]=134;i=l;return}else{c[j>>2]=Oa[
c[f+572>>2]&63](c[g>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(e[k>>1]<
x3c;3)>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)|0;
_a[c[(c[g>>2]|0)+584>>2]&15](c[g>>2]|0,(c[g>>2]|0)+108|0,b[k>>1]|0,(c[(c[
h>>2]|0)+4>>2]|0)-(c[j>>2]|0)|0);if(e[(c[g>>2]|0)+284+64>>1]|0){i=l;return}j=(
c[(c[g>>2]|0)+108+12>>2]|0)+(e[k>>1]<<3)|0;k=(c[(c[g>>2]|0)+108+16>>
2]|0)+(e[k>>1]<<3)|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];i=l;return}}
function Ag(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;r=i;i=i+32|0;h=r+24|0;j=r+20|0;l=r+30|0;m=r+28|0;k=r+16
|0;o=r+12|0;p=r+8|0;n=r;c[h>>2]=f;c[j>>2]=g;b[l>>1]=c[(c[j>>2]|0)+4>>2];b[m>
;>1]=c[c[j>>2]>>2];do if((e[m>>1]|0)>>>0<(e[(c[h>>2]|0)+36+8>
;>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h>>2]|0)+72+8>>1]|0)>
;>>0:0){g=c[h>>2]|0;if(d[(c[h>>2]|0)+368>>0]&1|0){c[k>>2]=Oa[c[g+572>
;>2]&63](c[h>>2]|0,(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>
x3e;2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)>>2]|0)|0,(c[(c[(c[h>
;>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>
x3e;2]|0)+(e[l>>1]<<3)+4>>2]|0)|0)|0;break}c[o>>2]=(c[g+36+20>>2]|0)+(e[m>
;>1]<<3);c[p>>2]=(c[(c[h>>2]|0)+72+20>>2]|0)+(e[l>>1]<<3);if((c
[(c[h>>2]|0)+216+4>>2]|0)==(c[(c[h>>2]|0)+216+8>>2]|0)){c[k>>2]=Oa[c[(c[h>
;>2]|0)+576>>2]&63](c[h>>2]|0,(c[c[o>>2]>>2]|0)-(c[c[p>>2]>>
;2]|0)|0,(c[(c[o>>2]|0)+4>>2]|0)-(c[(c[p>>2]|0)+4>>2]|0)|0)|0;c[k>>2]=Mb(c[k
x3e;>2]|0,c[(c[h>>2]|0)+216+4>>2]|0)|0;break}else{c[n>>2]=Mb((c[c[o>>2]>>
2]|0)-(c[c[p>>2]>>2]|0)|0,c[(c[h>>2]|0)+216+4>>2]|0)|0;c[n+4>>2]=Mb((c[(c[o>
;>2]|0)+4>>2]|0)-(c[(c[p>>2]|0)+4>>2]|0)|0,c[(c[h>>2]|0)+216+8>>2]|0)|0;c
[k>>2]=Oa[c[(c[h>>2]|0)+576>>2]&63](c[h>>2]|0,c[n>>2]|0,c[n+4>>
2]|0)|0;break}}else q=3;while(0);do if((q|0)==3){if(!(a[(c[h>>2]|0)+561>>0]|0)){c[k>>2]=0;break}c[(
c[h>>2]|0)+12>>2]=134;i=r;return}while(0);c[c[j>>2]>>2]=c[k>>2];i=r;return}function
Bg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=e[(c[d>>2]|0)+244+8>>1]|0;a=Mb(a,of(c[d>
;>2]|0)|0)|0;i=b;return a|0}function Cg(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+8|0;k=j+4|0;h=j;g=j+12|0;
c[f>>2]=b;c[k>>2]=e;if(c[c[k>>2]>>2]|0){i=j;return}c[h>>2]=1;a[g>>0]=
0;while(1){if(((Yf(c[f>>2]|0)|0)&255|0)==1){f=9;break}switch(d[(c[f>>2]|0)+368>>0]|0|0){case
88:{c[h>>2]=(c[h>>2]|0)+1;break}case 27:{a[g>>0]=(c[h>>2]|0)==1;break}case 89:{c[h>
x3e;2]=(c[h>>2]|0)+-1;a[g>>0]=(c[h>>2]|0)==0;break}default:{}}if(d[g>>0]|0|0){f=9;break}}
if((f|0)==9){i=j;return}}function Dg(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;p=i;i=i+32|0;o=p+20|0;h=p+16|0;m=p+12|
0;n=p+8|0;j=p+24|0;l=p+4|0;k=p;c[o>>2]=f;c[h>>2]=g;c[n>>2]=c[c[h>>2]>>2];c[m
x3e;>2]=1;while(1){h=c[(c[o>>2]|0)+28>>2]|0;if((c[m>>2]|0)>>>0>(c[n>
x3e;2]|0)>>>0){g=16;break}f=c[o>>2]|0;if((h|0)<2){g=4;break}h=f+28|0;c[h>>2]=(c[h>
x3e;2]|0)-2;b[j>>1]=c[(c[(c[o>>2]|0)+24>>2]|0)+((c[(c[o>>2]|0)+28>>2]|0)+1<
;<2)>>2];c[k>>2]=c[(c[(c[o>>2]|0)+24>>2]|0)+(c[(c[o>>2]|0)+28>>
2]<<2)>>2];if((e[j>>1]|0)>>>0>=(e[(c[o>>2]|0)+36+8>>1]|0)
x3e;>>0){if(a[(c[o>>2]|0)+561>>0]|0)c[(c[o>>2]|0)+12>>2]=134}else{c[l>>
;2]=(c[k>>2]&240)>>>4;switch(d[(c[o>>2]|0)+368>>0]|0){case 114:{c[l>>
;2]=(c[l>>2]|0)+32;break}case 113:{c[l>>2]=(c[l>>2]|0)+16;break}default:{}}c[l>>2]=(c[l
x3e;>2]|0)+(b[(c[o>>2]|0)+284+48>>1]|0);h=Bg(c[o>>2]|0)|0;if((h|0)==(c[l>>2]|0)){c[
k>>2]=(c[k>>2]&15)-8;if((c[k>>2]|0)>=0)c[k>>2]=(c[k>>2]|0)+1;c[k>
;>2]=(c[k>>2]<<6|0)/(1<<b[(c[o>>2]|0)+284+50>>1]|0)|0;_a[c[(c[o>>
;2]|0)+584>>2]&15](c[o>>2]|0,(c[o>>2]|0)+36|0,b[j>>1]|0,c[k>>2]|0)}}c[m
x3e;>2]=(c[m>>2]|0)+1}if((g|0)==4){c[f+12>>2]=129;i=p;return}else if((g|0)==16){c[(c[o>>2]|0)+
32>>2]=h;i=p;return}}function Eg(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;o=i;i=i+32|0;n=o+24|0;g=o+20|0;m
=o+16|0;l=o+12|0;h=o+8|0;k=o+4|0;j=o;c[n>>2]=e;c[g>>2]=f;c[m>>2]=c[c[g>>2]>>2];
c[l>>2]=1;while(1){g=c[(c[n>>2]|0)+28>>2]|0;if((c[l>>2]|0)>>>0>(c[m
x3e;>2]|0)>>>0){f=16;break}e=c[n>>2]|0;if((g|0)<2){f=4;break}g=e+28|0;c[g>>2]=(c[g
x3e;>2]|0)-2;c[h>>2]=c[(c[(c[n>>2]|0)+24>>2]|0)+((c[(c[n>>2]|0)+28>>2]|0)+
1<<2)>>2];c[j>>2]=c[(c[(c[n>>2]|0)+24>>2]|0)+(c[(c[n>>2]|0)+28>
x3e;2]<<2)>>2];if((c[h>>2]|0)>>>0>=(c[(c[n>>2]|0)+380>>2]|
0)>>>0){if(a[(c[n>>2]|0)+561>>0]|0){f=7;break}}else{c[k>>2]=(c[j>>2]&
;240)>>>4;switch(d[(c[n>>2]|0)+368>>0]|0){case 117:{c[k>>2]=(c[k>>2]|0)+32
;break}case 116:{c[k>>2]=(c[k>>2]|0)+16;break}default:{}}c[k>>2]=(c[k>>2]|0)+(b[(c[n>
;>2]|0)+284+48>>1]|0);g=Bg(c[n>>2]|0)|0;if((g|0)==(c[k>>2]|0)){c[j>>2]=(c[j>
x3e;2]&15)-8;if((c[j>>2]|0)>=0)c[j>>2]=(c[j>>2]|0)+1;c[j>>2]=(c[j>>2
]<<6|0)/(1<<b[(c[n>>2]|0)+284+50>>1]|0)|0;Ua[c[(c[n>>2]|0)+600>>2]
x26;31](c[n>>2]|0,c[h>>2]|0,c[j>>2]|0)}}c[l>>2]=(c[l>>2]|0)+1}if((f|0)==4){c[e
+12>>2]=129;i=o;return}else if((f|0)==7){c[(c[n>>2]|0)+12>>2]=134;i=o;return}else if((f|0)==16){c[(
c[n>>2]|0)+32>>2]=g;i=o;return}}function Fg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|
0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;switch(c[g>>2]&192|0){case 0:{c[(c[e>
;>2]|0)+476>>2]=(c[f>>2]|0)/2|0;break}case 64:{c[(c[e>>2]|0)+476>>2]=c[f>>
;2];break}case 128:{c[(c[e>>2]|0)+476>>2]=c[f>>2]<<1;break}case 192:{c[(c[e>>2
]|0)+476>>2]=c[f>>2];break}default:{}}switch(c[g>>2]&48|0){case 0:{c[(c[e>>2]|0)+480
>>2]=0;break}case 16:{c[(c[e>>2]|0)+480>>2]=(c[(c[e>>2]|0)+476>>2]|0)/4|0;break
}case 32:{c[(c[e>>2]|0)+480>>2]=(c[(c[e>>2]|0)+476>>2]|0)/2|0;break}case 48:{c[(c[e>
;>2]|0)+480>>2]=((c[(c[e>>2]|0)+476>>2]|0)*3|0)/4|0;break}default:{}}if(!(c[g>>2]
x26;15)){c[(c[e>>2]|0)+484>>2]=(c[(c[e>>2]|0)+476>>2]|0)-1;d=c[e>>2]|0;d=d+476
|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+480|0;a=c[d>>2]|0;a=(a|0)/256|0;c
[d>>2]=a;d=c[e>>2]|0;d=d+484|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;i=h;return}else{d=(_((
c[g>>2]&15)-4|0,c[(c[e>>2]|0)+476>>2]|0)|0)/8|0;c[(c[e>>2]|0)+484>>2]=d;d
=c[e>>2]|0;d=d+476|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+480|0;a=c[d>
;>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+484|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>
;2]=a;i=h;return}}function Gg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0;k=i;i=i+16|0;j=k+4|0;l=k;h=k+8|0;c[j>>2]=f;c[l>
;>2]=g;c[j>>2]=c[j>>2];c[l>>2]=c[l>>2];if((c[(c[j>>2]|0)+16>>2]|
0)<(c[(c[j>>2]|0)+284+20>>2]|0)){c[(c[j>>2]|0)+12>>2]=129;i=k;return}while(1){f=c[j
>>2]|0;if((c[(c[j>>2]|0)+284+20>>2]|0)<=0){g=9;break}l=f+28|0;c[l>>2]=(c[l>>
;2]|0)+-1;b[h>>1]=c[(c[(c[j>>2]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<
2)>>2];if((e[h>>1]|0)>>>0>=(e[(c[j>>2]|0)+144+8>>1]|0)>>
x3e;0){if(a[(c[j>>2]|0)+561>>0]|0){g=6;break}}else{l=(c[(c[j>>2]|0)+144+24>>2]|0)+(e[h
x3e;>1]|0)|0;a[l>>0]=d[l>>0]^1}l=(c[j>>2]|0)+284+20|0;c[l>>2]=(c[l>>2]|0)+-
1}if((g|0)==6){c[(c[j>>2]|0)+12>>2]=134;i=k;return}else if((g|0)==9){c[f+284+20>>2]=1;c[(c[j>
x3e;2]|0)+32>>2]=c[(c[j>>2]|0)+28>>2];i=k;return}}function Hg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0
,m=0,n=0;m=i;i=i+16|0;h=m+4|0;n=m;j=m+12|0;k=m+10|0;l=m+8|0;c[h>>2]=f;c[n>>2]=g;b[k>>1]=c[(c[n>
;>2]|0)+4>>2];b[l>>1]=c[c[n>>2]>>2];if((e[k>>1]|0)>>>0<
;(e[(c[h>>2]|0)+144+8>>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h>
x3e;2]|0)+144+8>>1]|0)>>>0:0){b[j>>1]=b[l>>1]|0;while(1){if((e[j>>1]|0)
x3e;(e[k>>1]|0))break;n=(c[(c[h>>2]|0)+144+24>>2]|0)+(e[j>>1]|0)|0;a[n>>0]=d[n
>>0]|1;b[j>>1]=(b[j>>1]|0)+1<<16>>16}i=m;return}if(!(a[(c[h>>2]|0)+561
>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}function Ig(f,g){f=f|0;g=g|0;var h=0,j=0,k
=0,l=0,m=0,n=0;m=i;i=i+16|0;h=m+4|0;n=m;j=m+12|0;k=m+10|0;l=m+8|0;c[h>>2]=f;c[n>>2]=g;b[k>>1]=c[(c
[n>>2]|0)+4>>2];b[l>>1]=c[c[n>>2]>>2];if((e[k>>1]|0)>>>
;0<(e[(c[h>>2]|0)+144+8>>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h
>>2]|0)+144+8>>1]|0)>>>0:0){b[j>>1]=b[l>>1]|0;while(1){if((e[j>>
;1]|0)>(e[k>>1]|0))break;n=(c[(c[h>>2]|0)+144+24>>2]|0)+(e[j>>1]|0)|0;a[n>>
;0]=d[n>>0]&-2;b[j>>1]=(b[j>>1]|0)+1<<16>>16}i=m;return}if(!(a[(c[h>
x3e;2]|0)+561>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}function Jg(b,f){b=b|0;f=f|0;
var g=0,h=0,j=0,k=0;k=i;i=i+16|0;g=k+8|0;h=k+4|0;j=k;c[g>>2]=b;c[h>>2]=f;c[j>>2]=c[c[h>>
2]>>2]&255;if((c[j>>2]|0)==255){a[(c[g>>2]|0)+284+53>>0]=1;i=k;return}if(!(c[j>
;>2]|0)){a[(c[g>>2]|0)+284+53>>0]=0;i=k;return}if(c[c[h>>2]>>2]&256|0?(e[(c[g
x3e;>2]|0)+244+8>>1]|0|0)<=(c[j>>2]|0):0)a[(c[g>>2]|0)+284+53>>0]=1;if(c[c[h
x3e;>2]>>2]&512|0?d[(c[g>>2]|0)+244+37>>0]|0|0:0)a[(c[g>>2]|0)+284+53>>
;0]=1;if(c[c[h>>2]>>2]&1024|0?d[(c[g>>2]|0)+244+38>>0]|0|0:0)a[(c[g>>2]|0
)+284+53>>0]=1;if(c[c[h>>2]>>2]&2048|0?(e[(c[g>>2]|0)+244+8>>1]|0|0)>
;(c[j>>2]|0):0)a[(c[g>>2]|0)+284+53>>0]=0;if(c[c[h>>2]>>2]&4096|0?d[(c[g
x3e;>2]|0)+244+37>>0]|0|0:0)a[(c[g>>2]|0)+284+53>>0]=0;if(!(c[c[h>>2]>>2]
x26;8192)){i=k;return}if(!(d[(c[g>>2]|0)+244+38>>0]|0)){i=k;return}a[(c[g>>2]|0)+284+53>>
;0]=0;i=k;return}function Kg(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;s=i;i=i+48|0;h=s+32|0;t=s+28|0
;j=s+24|0;k=s+20|0;l=s+16|0;m=s+38|0;n=s+36|0;o=s+12|0;q=s+8|0;p=s+4|0;r=s;c[h>>2]=f;c[t>>2]=g;b[m>>
;1]=c[(c[t>>2]|0)+4>>2];b[n>>1]=c[c[t>>2]>>2];if((e[n>>1]|0)>
x3e;>0<(e[(c[h>>2]|0)+72+8>>1]|0)>>>0?(e[m>>1]|0)>>>0<
;(e[(c[h>>2]|0)+108+8>>1]|0)>>>0:0){c[o>>2]=(c[(c[h>>2]|0)+72+12>>
;2]|0)+(e[n>>1]<<3);c[q>>2]=(c[(c[h>>2]|0)+108+12>>2]|0)+(e[m>>1]<
;<3);c[j>>2]=(c[c[o>>2]>>2]|0)-(c[c[q>>2]>>2]|0);c[k>>2]=(c[(c[
o>>2]|0)+4>>2]|0)-(c[(c[q>>2]|0)+4>>2]|0);if(d[(c[h>>2]|0)+368>>0]
x26;1|0){c[l>>2]=c[k>>2];c[k>>2]=c[j>>2];c[j>>2]=0-(c[l>>2]|0)}Rf(c[
h>>2]|0,c[j>>2]|0,c[k>>2]|0,(c[h>>2]|0)+284+6|0)|0;c[p>>2]=(c[(c[h>>
2]|0)+72+16>>2]|0)+(e[n>>1]<<3);c[r>>2]=(c[(c[h>>2]|0)+108+16>>2]|0)+(
e[m>>1]<<3);c[j>>2]=(c[c[p>>2]>>2]|0)-(c[c[r>>2]>>2]|0);c[
k>>2]=(c[(c[p>>2]|0)+4>>2]|0)-(c[(c[r>>2]|0)+4>>2]|0);if(d[(c[h>>2]|
0)+368>>0]&1|0){c[l>>2]=c[k>>2];c[k>>2]=c[j>>2];c[j>>2]=0-(c[l
x3e;>2]|0)}Rf(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,(c[h>>2]|0)+284+10|0)|0;vf(c[h>>
;2]|0);i=s;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=s;return}c[(c[h>>2]|0)+12>>2]=134;i=s
;return}function Lg(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=
b;c[g>>2]=0;c[g>>2]=c[c[f>>2]>>2]&1|0?35:0;if(c[c[f>>2]>>2]&
;2|0?d[(c[e>>2]|0)+244+37>>0]|0|0:0)c[g>>2]=c[g>>2]|128;if(c[c[f>>2]>>
;2]&4|0?d[(c[e>>2]|0)+244+38>>0]|0|0:0)c[g>>2]=c[g>>2]|256;if(!(c[c[f>>2]
x3e;>2]&32)){b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}if(!(d[(c[e>>2]|0)+604
>>0]|0)){b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}c[g>>2]=c[g>>2
]|4096;b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}function Mg(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;j=k+12|0;g=k+8|0;h=k+4|0;f=k;c[j>>2]=b;c[g>>2]=e;c[h>>2]=c[(c[j>>2]|
0)+416>>2];c[f>>2]=(c[h>>2]|0)+(c[(c[j>>2]|0)+408>>2]<<4);while(1){if
((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break;if((c[(c[h>>2]|0)+8>
;>2]|0)==(c[c[g>>2]>>2]|0))break;c[h>>2]=(c[h>>2]|0)+16}do if((c[h>>2]|0)==(
c[f>>2]|0)){e=c[j>>2]|0;if((c[(c[j>>2]|0)+408>>2]|0)>>>0<(c[(c[j>
;>2]|0)+412>>2]|0)>>>0){f=e+408|0;c[f>>2]=(c[f>>2]|0)+1;break}c[e+12>>
;2]=141;i=k;return}while(0);if(0<=(c[c[g>>2]>>2]|0)?(c[c[g>>2]>>2]|0)<=255:0){
c[(c[h>>2]|0)+8>>2]=c[c[g>>2]>>2]&255;c[(c[h>>2]|0)+4>>2]=(c[(c
[j>>2]|0)+360>>2]|0)+1;c[c[h>>2]>>2]=c[(c[j>>2]|0)+352>>2];a[(c[h>
;>2]|0)+12>>0]=1;if((c[c[g>>2]>>2]|0)>>>0>(c[(c[j>>2]|0)+424>
;>2]|0)>>>0)c[(c[j>>2]|0)+424>>2]=c[c[g>>2]>>2]&255;a:while(1){
if((Yf(c[j>>2]|0)|0)&255|0){e=17;break}switch(d[(c[j>>2]|0)+368>>0]|0|0){case 44:case 137:{e=
16;break a}case 45:{e=17;break a}default:{}}}if((e|0)==16){c[(c[j>>2]|0)+12>>2]=137;i=k;return}else if((e|0)==
17){i=k;return}}c[(c[j>>2]|0)+12>>2]=141;i=k;return}function Ng(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;g=d+8|0;f=d+4|0;h=d;c[j>>2]=a;c[e>>2]=b;c[j>>2]=c[j>>2];
c[g>>2]=c[(c[e>>2]|0)+8>>2];c[f>>2]=c[(c[e>>2]|0)+4>>2];c[h>>
;2]=c[c[e>>2]>>2];c[(c[e>>2]|0)+8>>2]=c[h>>2];c[(c[e>>2]|0)+4>
x3e;2]=c[g>>2];c[c[e>>2]>>2]=c[f>>2];i=d;return}function Og(a,b){a=a|0;b=b|0;var d=0,e=0
,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if((c[c[e>>2]>>2]|0)<0){i=f;return
}c[(c[d>>2]|0)+284+56>>2]=c[c[e>>2]>>2];i=f;return}function Pg(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;k=j+8|0;g=j+4|0;h=j;c[f>>2]=b;c[k>>2]=e;c[g>>2]=c[(c[k>
x3e;2]|0)+4>>2];c[h>>2]=c[c[k>>2]>>2];if((c[g>>2]|0)<1|(c[g>>2]|
0)>2){if(!(a[(c[f>>2]|0)+561>>0]|0)){i=j;return}c[(c[f>>2]|0)+12>>2]=134;i=j;return
}else{if(c[h>>2]|0)c[h>>2]=c[g>>2];a[(c[f>>2]|0)+284+52>>0]=d[(c[f>>
2]|0)+284+52>>0]&~(c[g>>2]&255)|c[h>>2]&255;i=j;return}}function Qg(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;p=i;i=i+32|0;k=p+24|0;q=p+20|0;o=p+28|0;h=p+16|0;j=p+12|0;m=p+8|0;l=p+4|0;n=p;c[k>
;>2]=f;c[q>>2]=g;b[o>>1]=c[c[q>>2]>>2];c[h>>2]=(c[(c[q>>2]|0)+4
>>2]|0)+1;if(((e[o>>1]|0)>>>0<(e[(c[k>>2]|0)+72+8>>1]|0)>>
x3e;0?(c[h>>2]|0)>>>0<((c[(c[k>>2]|0)+380>>2]|0)+1|0)>>>0:0)?(e
[(c[k>>2]|0)+284>>1]|0)>>>0<(e[(c[k>>2]|0)+36+8>>1]|0)>>
x3e;0:0){if(c[h>>2]|0)c[j>>2]=Ya[c[(c[k>>2]|0)+592>>2]&127](c[k>>2]|0,(c[
h>>2]|0)-1|0)|0;else c[j>>2]=0;q=(c[j>>2]|0)-(c[(c[k>>2]|0)+284+44>>2]|0)|0;do
if(((((c[j>>2]|0)-(c[(c[k>>2]|0)+284+44>>2]|0)|0)<0?0-q|0:q)|0)<(c[(c[k>>2]|0
)+284+40>>2]|0)){g=c[(c[k>>2]|0)+284+44>>2]|0;if((c[j>>2]|0)>=0){c[j>>2]=
g;break}else{c[j>>2]=0-g;break}}while(0);if(!(e[(c[k>>2]|0)+284+62>>1]|0)){q=c[(c[(c[k>>
2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)>>2]|0;q=q+(qg(c[j>>2]|
0,b[(c[k>>2]|0)+284+14>>1]|0)|0)|0;c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<
;<3)>>2]=q;q=c[(c[(c[k>>2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<
x3c;3)+4>>2]|0;q=q+(qg(c[j>>2]|0,b[(c[k>>2]|0)+284+14+2>>1]|0)|0)|0;c[(c[(c[k>>
;2]|0)+72+12>>2]|0)+(e[o>>1]<<3)+4>>2]=q;q=(c[(c[k>>2]|0)+72+16>>2]|
0)+(e[o>>1]<<3)|0;f=(c[(c[k>>2]|0)+36+16>>2]|0)+(e[o>>1]<<3)|0;c[q
x3e;>2]=c[f>>2];c[q+4>>2]=c[f+4>>2]}c[n>>2]=Oa[c[(c[k>>2]|0)+576>>
;2]&63](c[k>>2]|0,(c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<<3)>>
2]|0)-(c[(c[(c[k>>2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)>>2]|
0)|0,(c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<<3)+4>>2]|0)-(c[(c[(c[k>>
;2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)+4>>2]|0)|0)|0;c[l>>2]=
Oa[c[(c[k>>2]|0)+572>>2]&63](c[k>>2]|0,(c[(c[(c[k>>2]|0)+72+16>>2]|0)+(e[
o>>1]<<3)>>2]|0)-(c[(c[(c[k>>2]|0)+36+16>>2]|0)+(e[(c[k>>2]|0)+284
x3e;>1]<<3)>>2]|0)|0,(c[(c[(c[k>>2]|0)+72+16>>2]|0)+(e[o>>1]<<3
)+4>>2]|0)-(c[(c[(c[k>>2]|0)+36+16>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)+
4>>2]|0)|0)|0;if(a[(c[k>>2]|0)+284+32>>0]|0?(c[n>>2]^c[j>>2]|0)<0:0)c[j
x3e;>2]=0-(c[j>>2]|0);g=c[k>>2]|0;if(d[(c[k>>2]|0)+368>>0]&4|0){if((e[g+284+60
>>1]|0)==(e[(c[k>>2]|0)+284+62>>1]|0)?(q=(c[j>>2]|0)-(c[n>>2]|0)|0,((((c[j>
;>2]|0)-(c[n>>2]|0)|0)<0?0-q|0:q)|0)>=(c[(c[k>>2]|0)+284+36>>2]|0)):0)c[j>>
;2]=c[n>>2];c[m>>2]=Oa[c[(c[k>>2]|0)+568>>2]&63](c[k>>2]|0,c[j>>
;2]|0,c[(c[k>>2]|0)+244+20+((d[(c[k>>2]|0)+368>>0]&3)<<2)>>2]|0)|0}else c
[m>>2]=If(g,c[j>>2]|0,c[(c[k>>2]|0)+244+20+((d[(c[k>>2]|0)+368>>0]&3)<
;<2)>>2]|0)|0;do if(d[(c[k>>2]|0)+368>>0]&8|0){g=c[m>>2]|0;h=c[(c[k>>
;2]|0)+284+24>>2]|0;if((c[n>>2]|0)>=0){if((g|0)>=(h|0))break;c[m>>2]=c[(c[k>>2
]|0)+284+24>>2];break}else{if((g|0)<=(0-h|0))break;c[m>>2]=0-(c[(c[k>>2]|0)+284+24>>
;2]|0);break}}while(0);_a[c[(c[k>>2]|0)+584>>2]&15](c[k>>2]|0,(c[k>>2]|0)+72|0,b[o
x3e;>1]|0,(c[m>>2]|0)-(c[l>>2]|0)|0);b[(c[k>>2]|0)+284+2>>1]=b[(c[k>>2]|0
)+284>>1]|0;if(d[(c[k>>2]|0)+368>>0]&16|0)b[(c[k>>2]|0)+284>>1]=b[o>
x3e;1]|0;b[(c[k>>2]|0)+284+4>>1]=b[o>>1]|0;i=p;return}if(!(a[(c[k>>2]|0)+561>>
0]|0)){i=p;return}c[(c[k>>2]|0)+12>>2]=134;i=p;return}function Rg(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;s=i;i=i+48|0;o=s+36|0;t=s+32|0;r=s+40|0;q=s+28|0;p=s+24|0;j=s+20|0;l=s+16|0;k=s+12|0;m=s+8|0;h=s;c[o
x3e;>2]=f;c[t>>2]=g;b[r>>1]=c[c[t>>2]>>2];if((e[r>>1]|0)>>>
;0<(e[(c[o>>2]|0)+72+8>>1]|0)>>>0?(e[(c[o>>2]|0)+284>>1]|0)>>
;>0<(e[(c[o>>2]|0)+36+8>>1]|0)>>>0:0){do if((e[(c[o>>2]|0)+284+60>
x3e;1]|0)!=0?(e[(c[o>>2]|0)+284+62>>1]|0)!=0:0){c[k>>2]=(c[(c[o>>2]|0)+72+20>>
2]|0)+(e[r>>1]<<3);c[m>>2]=(c[(c[o>>2]|0)+36+20>>2]|0)+(e[(c[o>>2]|0
)+284>>1]<<3);if((c[(c[o>>2]|0)+216+4>>2]|0)==(c[(c[o>>2]|0)+216+8>>
2]|0)){c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o>>2]|0,(c[c[k>>2]>>
;2]|0)-(c[c[m>>2]>>2]|0)|0,(c[(c[k>>2]|0)+4>>2]|0)-(c[(c[m>>2]|0)+4>>
;2]|0)|0)|0;c[q>>2]=Mb(c[q>>2]|0,c[(c[o>>2]|0)+216+4>>2]|0)|0;break}else{c[h>>
2]=Mb((c[c[k>>2]>>2]|0)-(c[c[m>>2]>>2]|0)|0,c[(c[o>>2]|0)+216+4>>2]|
0)|0;c[h+4>>2]=Mb((c[(c[k>>2]|0)+4>>2]|0)-(c[(c[m>>2]|0)+4>>2]|0)|0,c[(c[o>
;>2]|0)+216+8>>2]|0)|0;c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o>>2]|
0,c[h>>2]|0,c[h+4>>2]|0)|0;break}}else n=7;while(0);if((n|0)==7){c[j>>2]=(c[(c[o>>2]|0)+
72+12>>2]|0)+(e[r>>1]<<3);c[l>>2]=(c[(c[o>>2]|0)+36+12>>2]|0)+(e[(c[
o>>2]|0)+284>>1]<<3);c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o
x3e;>2]|0,(c[c[j>>2]>>2]|0)-(c[c[l>>2]>>2]|0)|0,(c[(c[j>>2]|0)+4>>
;2]|0)-(c[(c[l>>2]|0)+4>>2]|0)|0)|0}t=(c[q>>2]|0)-(c[(c[o>>2]|0)+284+44>>2]|0)|
0;do if(((((c[q>>2]|0)-(c[(c[o>>2]|0)+284+44>>2]|0)|0)<0?0-t|0:t)|0)<(c[(c[o>>
2]|0)+284+40>>2]|0)){g=c[(c[o>>2]|0)+284+44>>2]|0;if((c[q>>2]|0)>=0){c[q>>
;2]=g;break}else{c[q>>2]=0-g;break}}while(0);g=c[o>>2]|0;if(d[(c[o>>2]|0)+368>>0]&4
|0)c[p>>2]=Oa[c[g+568>>2]&63](c[o>>2]|0,c[q>>2]|0,c[(c[o>>2]|0)+244+20+((
d[(c[o>>2]|0)+368>>0]&3)<<2)>>2]|0)|0;else c[p>>2]=If(g,c[q>>2]|
0,c[(c[o>>2]|0)+244+20+((d[(c[o>>2]|0)+368>>0]&3)<<2)>>2]|0)|0;do if(d[(c
[o>>2]|0)+368>>0]&8|0){g=c[p>>2]|0;f=c[(c[o>>2]|0)+284+24>>2]|0;if((c[q
x3e;>2]|0)>=0){if((g|0)>=(f|0))break;c[p>>2]=c[(c[o>>2]|0)+284+24>>2];break}else{if
((g|0)<=(0-f|0))break;c[p>>2]=0-(c[(c[o>>2]|0)+284+24>>2]|0);break}}while(0);c[q>>2
]=Oa[c[(c[o>>2]|0)+572>>2]&63](c[o>>2]|0,(c[(c[(c[o>>2]|0)+72+16>>2]|0)+(
e[r>>1]<<3)>>2]|0)-(c[(c[(c[o>>2]|0)+36+16>>2]|0)+(e[(c[o>>2]|0)+284
>>1]<<3)>>2]|0)|0,(c[(c[(c[o>>2]|0)+72+16>>2]|0)+(e[r>>1]<<
;3)+4>>2]|0)-(c[(c[(c[o>>2]|0)+36+16>>2]|0)+(e[(c[o>>2]|0)+284>>1]<<
3)+4>>2]|0)|0)|0;_a[c[(c[o>>2]|0)+584>>2]&15](c[o>>2]|0,(c[o>>2]|0)+72|0,
b[r>>1]|0,(c[p>>2]|0)-(c[q>>2]|0)|0);b[(c[o>>2]|0)+284+2>>1]=b[(c[o>>
;2]|0)+284>>1]|0;b[(c[o>>2]|0)+284+4>>1]=b[r>>1]|0;if(!(d[(c[o>>2]|0)+368>
;>0]&16)){i=s;return}b[(c[o>>2]|0)+284>>1]=b[r>>1]|0;i=s;return}if(!(a[(c[o>>2
]|0)+561>>0]|0)){i=s;return}c[(c[o>>2]|0)+12>>2]=134;i=s;return}function Sg(f,g){f=f|0;g=g|0;var h
=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+4|0;j=m;l=m+10|0;k=m+8|0;c[h>>2]=f;c[j>>2]=g;b[l>>1]=(d[(c[h
x3e;>2]|0)+368>>0]|0)-184+1;g=c[h>>2]|0;if((e[l>>1]|0)>>>0>=((c[(c[h>
;>2]|0)+20>>2]|0)+1-(c[(c[h>>2]|0)+16>>2]|0)|0)>>>0){c[g+12>>2]=130;
i=m;return}f=g+360|0;c[f>>2]=(c[f>>2]|0)+1;b[k>>1]=0;while(1){g=c[h>>2]|0;if((e[k>
x3e;1]|0|0)>=(e[l>>1]|0|0))break;f=(xg(g)|0)<<16>>16;c[(c[j>>2]|0)+((e[k>>
;1]|0)<<2)>>2]=f;b[k>>1]=(b[k>>1]|0)+1<<16>>16}a[g+376>>0]=
0;i=m;return}function Tg(a,f){a=a|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+4|0;h=l;k=l+10|0;j=l+8|0;c[g>>2]=a;
c[h>>2]=f;b[k>>1]=(d[(c[g>>2]|0)+368>>0]|0)-176+1;if((e[k>>1]|0)>>
x3e;0>=((c[(c[g>>2]|0)+20>>2]|0)+1-(c[(c[g>>2]|0)+16>>2]|0)|0)>>>0){
c[(c[g>>2]|0)+12>>2]=130;i=l;return}b[j>>1]=1;while(1){if((e[j>>1]|0|0)>(e[k>
x3e;1]|0|0))break;c[(c[h>>2]|0)+((e[j>>1]|0)-1<<2)>>2]=d[(c[(c[g>>2]|0)+356>
;>2]|0)+((c[(c[g>>2]|0)+360>>2]|0)+(e[j>>1]|0))>>0];b[j>>1]=(b[j>>
;1]|0)+1<<16>>16}i=l;return}function Ug(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;e=m+24|0;f
=m+20|0;j=m+16|0;h=m+12|0;g=m+8|0;k=m+4|0;l=m;c[f>>2]=d;c[j>>2]=c[c[f>>2]>>2];if(a[(c[f
x3e;>2]|0)+292>>0]|0)c[h>>2]=c[(c[f>>2]|0)+296>>2];else c[h>>2]=c[(c[(c[j
>>2]|0)+96>>2]|0)+40>>2];if(!(c[h>>2]|0)){c[e>>2]=153;l=c[e>>2]|0;i=
m;return l|0}Vg(c[h>>2]|0,c[j>>2]|0,c[f>>2]|0)|0;c[(c[h>>2]|0)+428>>2]=0;c[(c[
h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+476>>2]=64;c[(c[h>>2]|0)+480>>2]=0;c
[(c[h>>2]|0)+484>>2]=0;a[(c[h>>2]|0)+488>>0]=0;c[(c[h>>2]|0)+564>>2]=
65536;c[k>>2]=(c[h>>2]|0)+216;c[l>>2]=(c[h>>2]|0)+244;b[c[k>>2]>>1]=
0;b[(c[k>>2]|0)+2>>1]=0;c[(c[k>>2]|0)+4>>2]=0;c[(c[k>>2]|0)+8>>2]=0;
b[(c[l>>2]|0)+8>>1]=0;c[(c[l>>2]|0)+16>>2]=0;c[(c[l>>2]|0)+12>>2]=65536
;Xg(c[h>>2]|0,1,c[(c[j>>2]|0)+656>>2]|0,c[(c[j>>2]|0)+652>>2]|0)|0;Yg(c[h>
;>2]|0,2)|0;Yg(c[h>>2]|0,3)|0;if((c[(c[j>>2]|0)+652>>2]|0)>>>0>0){c[g>
;>2]=Zg(c[h>>2]|0,1,0)|0;if(!(c[g>>2]|0))c[g>>2]=Ta[c[(c[j>>2]|0)+688>>2]
x26;63](c[h>>2]|0)|0}else c[g>>2]=0;if(!(c[g>>2]|0))_g(c[h>>2]|0,c[f>>2]|0)|0;
c[e>>2]=c[g>>2];l=c[e>>2]|0;i=m;return l|0}function Vg(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;p=i;i=i+32|0;h=p+28|0;j=p+24|0;q=p+20|0;k=p+16|0;m=p+12|0;o=p+8|0;n=p+4|0;l=p;c[j>>2]=d;c[q>
;>2]=f;c[k>>2]=g;c[c[j>>2]>>2]=c[q>>2];c[n>>2]=(c[q>>2]|0)+260;
c[(c[j>>2]|0)+4>>2]=c[k>>2];if(c[k>>2]|0){c[(c[j>>2]|0)+396>>2]=c[(c
[k>>2]|0)+116>>2];c[(c[j>>2]|0)+400>>2]=c[(c[k>>2]|0)+120>>2];c[(c[j
>>2]|0)+408>>2]=c[(c[k>>2]|0)+128>>2];c[(c[j>>2]|0)+412>>2]=c[(c[k
x3e;>2]|0)+132>>2];c[(c[j>>2]|0)+404>>2]=c[(c[k>>2]|0)+124>>2];c[(c[j>
;>2]|0)+416>>2]=c[(c[k>>2]|0)+136>>2];d=(c[j>>2]|0)+244|0;f=(c[k>>2]|0)+72
|0;g=d+40|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));q=(c[j>>2]|0)+216|0;g=(c[k
x3e;>2]|0)+44|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[q+8>>2]=c[g+8>
x3e;2];c[q+12>>2]=c[g+12>>2];c[q+16>>2]=c[g+16>>2];c[q+20>>2]=c[g+20>>
;2];c[q+24>>2]=c[g+24>>2];c[(c[j>>2]|0)+420>>2]=c[(c[k>>2]|0)+140>>2
];c[(c[j>>2]|0)+424>>2]=c[(c[k>>2]|0)+144>>2];c[m>>2]=0;while(1){if((c[m>
x3e;2]|0)>=3)break;q=(c[j>>2]|0)+444+(c[m>>2]<<3)|0;g=(c[k>>2]|0)+148+(c[m>>
;2]<<3)|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[m>>2]=(c[m>>
;2]|0)+1}d=(c[j>>2]|0)+284|0;f=(c[k>>2]|0)+172|0;g=d+68|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f
+4|0}while((d|0)<(g|0));c[(c[j>>2]|0)+380>>2]=c[(c[k>>2]|0)+240>>2];c[(c[j>>
;2]|0)+384>>2]=c[(c[k>>2]|0)+244>>2];b[(c[j>>2]|0)+468>>1]=b[(c[k>>2
]|0)+248>>1]|0;c[(c[j>>2]|0)+472>>2]=c[(c[k>>2]|0)+252>>2];d=(c[j>>2
]|0)+180|0;f=(c[k>>2]|0)+256|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));
d=(c[j>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+72|0;f=(c[j
>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>
;2]|0)+108|0;f=(c[j>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0))}
c[o>>2]=c[(c[j>>2]|0)+20>>2];c[l>>2]=Wg(c[(c[j>>2]|0)+8>>2]|0,o,4,(c
[j>>2]|0)+24|0,(e[(c[n>>2]|0)+24>>1]|0)+32|0)|0;c[(c[j>>2]|0)+20>>2]=c[o>
x3e;2];if(c[l>>2]|0){c[h>>2]=c[l>>2];q=c[h>>2]|0;i=p;return q|0}c[o>>2]=c[(c[j
>>2]|0)+388>>2];c[l>>2]=Wg(c[(c[j>>2]|0)+8>>2]|0,o,1,(c[j>>2]|0)+392
|0,e[(c[n>>2]|0)+26>>1]|0)|0;c[(c[j>>2]|0)+388>>2]=c[o>>2]&65535;if(c[l
x3e;>2]|0){c[h>>2]=c[l>>2];q=c[h>>2]|0;i=p;return q|0}else{b[(c[j>>2]|0)+144+8>
;>1]=0;b[(c[j>>2]|0)+144+10>>1]=0;d=(c[j>>2]|0)+72|0;f=(c[j>>2]|0)+144|0;g=d+36|0;do
{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+108|0;f=(c[j>>2]|
0)+144|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+36|0;f=(
c[j>>2]|0)+144|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));a[(c[j>
x3e;2]|0)+488>>0]=0;c[h>>2]=0;q=c[h>>2]|0;i=p;return q|0}return 0}function Wg(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;o=i;i=i+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;p=o+12|0;l=o+8|0;m
=o+4|0;n=o;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[p>>2]=e;c[l>>2]=f;c[n>>2]=
c[p>>2];do if((c[c[j>>2]>>2]|0)>>>0<(c[l>>2]|0)>>>0){
b=_(c[c[j>>2]>>2]|0,c[k>>2]|0)|0;p=_(c[l>>2]|0,c[k>>2]|0)|0;p=hc(c[h>>
;2]|0,1,b,p,c[c[n>>2]>>2]|0,m)|0;c[c[n>>2]>>2]=p;if(!(c[m>>2]|0)){c[c[j>
x3e;2]>>2]=c[l>>2];break}c[g>>2]=c[m>>2];p=c[g>>2]|0;i=o;return p|0}while(0);c
[g>>2]=0;p=c[g>>2]|0;i=o;return p|0}function Xg(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;g=f+8|0;k=f+4|0;j=f;c[h>>2]=a;c[g>>2]=b;c[k>>2]=d;c[j>>2]=e;c[(c[h>
;>2]|0)+444+((c[g>>2]|0)-1<<3)>>2]=c[k>>2];c[(c[h>>2]|0)+444+((c[g>
x3e;2]|0)-1<<3)+4>>2]=c[j>>2];i=f;return 0}function Yg(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)+444+((c[e>>2]|0)-1<<3)>
x3e;2]=0;c[(c[f>>2]|0)+444+((c[e>>2]|0)-1<<3)+4>>2]=0;i=d;return 0}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;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>
;>2]=d;c[j>>2]=(c[f>>2]|0)+444+((c[g>>2]|0)-1<<3);c[(c[f>>2]|0)+356>
x3e;2]=c[c[j>>2]>>2];c[(c[f>>2]|0)+364>>2]=c[(c[j>>2]|0)+4>>2];c[(c[
f>>2]|0)+360>>2]=c[h>>2];c[(c[f>>2]|0)+352>>2]=c[g>>2];i=e;return 0}
function _g(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[(c[e
>>2]|0)+116>>2]=c[(c[d>>2]|0)+396>>2];c[(c[e>>2]|0)+128>>2]=c[(c[d
x3e;>2]|0)+408>>2];c[(c[e>>2]|0)+140>>2]=c[(c[d>>2]|0)+420>>2];c[(c[e>
;>2]|0)+144>>2]=c[(c[d>>2]|0)+424>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)
x3e;=3)break;b=(c[e>>2]|0)+148+(c[f>>2]<<3)|0;a=(c[d>>2]|0)+444+(c[f>>2]<
x3c;3)|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[f>>2]=(c[f>>2]|0)+1}i
=g;return 0}function $g(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;f=k+16|0;g=k+12|0;d=k+8|0;j=k+4|0;h=k;c[g>>
;2]=b;c[d>>2]=c[c[g>>2]>>2];if(a[(c[g>>2]|0)+292>>0]|0)c[j>>2]=c[(c[
g>>2]|0)+296>>2];else c[j>>2]=c[(c[(c[d>>2]|0)+96>>2]|0)+40>>2];if(!(
c[j>>2]|0)){c[f>>2]=153;j=c[f>>2]|0;i=k;return j|0}Vg(c[j>>2]|0,c[d>>2]|0,c[g
x3e;>2]|0)|0;c[(c[j>>2]|0)+428>>2]=0;c[(c[j>>2]|0)+16>>2]=0;a[(c[j>>2]|0)+
488>>0]=0;Xg(c[j>>2]|0,2,c[(c[d>>2]|0)+664>>2]|0,c[(c[d>>2]|0)+660>>
2]|0)|0;Yg(c[j>>2]|0,3)|0;if((c[(c[d>>2]|0)+660>>2]|0)>>>0>0){c[h>>2
]=Zg(c[j>>2]|0,2,0)|0;if((c[h>>2]|0)==0?(a[(c[g>>2]|0)+292>>0]|0)==0:0)c[h>>2]=
Ta[c[(c[d>>2]|0)+688>>2]&63](c[j>>2]|0)|0}else c[h>>2]=0;d=(c[g>>2]|0)+172
|0;b=(c[j>>2]|0)+284|0;e=d+68|0;do{c[d>>2]=c[b>>2];d=d+4|0;b=b+4|0}while((d|0)<(e|0));_g(c[j
x3e;>2]|0,c[g>>2]|0)|0;c[f>>2]=c[h>>2];j=c[f>>2]|0;i=k;return j|0}function ah(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,P=0,Q=0,R=0;R=i;i=i+192|0;l=R+180|0;m=R+176|0;n=R+172|0;o=R+186|0;q=R+168|0;P=R+164|0;Q=R+160|0;G=R+
156|0;r=R+152|0;s=R+148|0;J=R+185|0;p=R+144|0;w=R+104|0;t=R+96|0;u=R+184|0;z=R+92|0;M=R+88|0;L=R+84|0;x=R+80|0;v=R+76|0;y=R+72|0
;N=R+68|0;A=R+64|0;B=R+60|0;C=R+56|0;O=R+52|0;E=R+48|0;F=R+44|0;D=R+40|0;I=R+36|0;H=R+32|0;K=R;c[l>>2]=f;c[m>>
;2]=g;c[n>>2]=h;a[o>>0]=j;c[q>>2]=0;c[r>>2]=c[c[l>>2]>>2];c[s>
x3e;2]=c[(c[l>>2]|0)+12>>2];a[J>>0]=0;c[p>>2]=0;a[u>>0]=0;if((c[n>>2
]|0)>>>0>1?(c[n>>2]|0)>>>0>(e[(c[r>>2]|0)+260+30>>1]|0)>
;>>0:0)c[q>>2]=21;else k=4;a:do if((k|0)==4){if((c[m>>2]|0)>>>0>=(c[(c[r>
x3e;2]|0)+16>>2]|0)>>>0){c[q>>2]=16;break}c[(c[l>>2]|0)+20>>2]=c[m>
x3e;2];if(!(c[(c[l>>2]|0)+16>>2]&1)){c[P>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+44
+4>>2];c[Q>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+44+8>>2]}else{c[P>>2]=65536
;c[Q>>2]=65536}bh(c[l>>2]|0,c[m>>2]|0);g=c[r>>2]|0;if(c[(c[(c[r>>2]|0)+128>
;>2]|0)+52>>2]|0){c[q>>2]=Oa[c[c[c[(c[g+128>>2]|0)+52>>2]>>2]>>
2]&63](c[(c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,c[m>>2]|0,t)|0;if
(c[q>>2]|0)break;a[u>>0]=1;c[G>>2]=0;c[(c[l>>2]|0)+28>>2]=c[t+4>>2];
g=w;j=g+40|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(j|0));uc(w,c[t>>2]|0,c[t+4>>2]|0);c[(c[l>
x3e;2]|0)+24>>2]=w}else c[G>>2]=Ge(g,c[m>>2]|0,(c[l>>2]|0)+28|0)|0;if((c[(c[l>>
;2]|0)+28>>2]|0)>0){if((c[(c[l>>2]|0)+84>>2]|0)==0?(c[(c[(c[r>>2]|0)+128>>
;2]|0)+52>>2]|0)==0:0){c[q>>2]=8;break}c[q>>2]=Wa[c[(c[r>>2]|0)+512>>2]&31
](c[l>>2]|0,c[m>>2]|0,(c[(c[l>>2]|0)+84>>2]|0)+(c[G>>2]|0)|0,c[(c[l>>
;2]|0)+28>>2]|0)|0;if(c[q>>2]|0)break;a[J>>0]=1;c[q>>2]=Ta[c[(c[r>>2]|0)+520
x3e;>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;if(d[o>>0]|0)break}if(c[(c[l>>2]|0
)+28>>2]|0?b[(c[l>>2]|0)+32>>1]|0:0){c[(c[l>>2]|0)+68>>2]=(c[(c[l>>2
]|0)+36>>2]|0)-(c[(c[l>>2]|0)+52>>2]|0);c[(c[l>>2]|0)+68+4>>2]=0;c[(c[l>
x3e;2]|0)+76>>2]=(c[(c[l>>2]|0)+68>>2]|0)+(c[(c[l>>2]|0)+56>>2]|0);c[(c[l>
;>2]|0)+76+4>>2]=0;c[(c[l>>2]|0)+184>>2]=0;c[(c[l>>2]|0)+184+4>>2]=(c[(c[
l>>2]|0)+176>>2]|0)+(c[(c[l>>2]|0)+36+12>>2]|0);c[(c[l>>2]|0)+192>>2
]=0;c[(c[l>>2]|0)+192+4>>2]=(c[(c[l>>2]|0)+184+4>>2]|0)-(c[(c[l>>2]|0)+180>
;>2]|0);eh(c[l>>2]|0,c[m>>2]|0);if((b[(c[l>>2]|0)+32>>1]|0)>0){c[q>>
2]=Ta[c[(c[r>>2]|0)+524>>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;Va[c[(c[r>>
;2]|0)+516>>2]&63](c[l>>2]|0);a[J>>0]=0;c[q>>2]=gh(c[l>>2]|0)|0;if(c[q>
;>2]|0)break;oc(c[s>>2]|0);break}if((b[(c[l>>2]|0)+32>>1]|0)!=-1){c[q>>2]=20;break}
c[M>>2]=b[(c[s>>2]|0)+20+2>>1];c[L>>2]=b[(c[s>>2]|0)+20>>1];c[q>
;>2]=Ta[c[(c[r>>2]|0)+528>>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;c[x>>
;2]=c[(c[l>>2]|0)+168>>2];Va[c[(c[r>>2]|0)+516>>2]&63](c[l>>2]|0);a[J>
;>0]=0;if(a[(c[r>>2]|0)+708>>0]|0){c[A>>2]=c[(c[r>>2]|0)+100>>2];G=fh(c[r
>>2]|0,c[m>>2]|0,p,(c[(c[s>>2]|0)+56+28>>2]|0)+4|0)|0;c[q>>2]=G;if(G|0)break;c
[N>>2]=(c[(c[s>>2]|0)+56+32>>2]|0)+(c[(c[s>>2]|0)+20+28>>2]<<5);c[y
x3e;>2]=c[(c[s>>2]|0)+56+28>>2];c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[y>
x3e;2]|0))break;if(e[(c[N>>2]|0)+4>>1]&2|0){G=(c[N>>2]|0)+8|0;c[G>>2]=(c[G>>
;2]|0)+((c[(c[p>>2]|0)+(c[v>>2]<<3)>>2]&65535)<<16>>16);G=(c[N
x3e;>2]|0)+12|0;c[G>>2]=(c[G>>2]|0)+((c[(c[p>>2]|0)+(c[v>>2]<<3)+4>
x3e;2]&65535)<<16>>16)}c[v>>2]=(c[v>>2]|0)+1;c[N>>2]=(c[N>>2]|0
)+32}N=(c[l>>2]|0)+68|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+0<
;<3)>>2]|0);N=(c[l>>2]|0)+68+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v
>>2]|0)+0<<3)+4>>2]|0);N=(c[l>>2]|0)+76|0;c[N>>2]=(c[N>>2]|0)+(c[(c[
p>>2]|0)+((c[v>>2]|0)+1<<3)>>2]|0);N=(c[l>>2]|0)+76+4|0;c[N>>2]=(c[N
>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+1<<3)+4>>2]|0);N=(c[l>>2]|0)+184
|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+2<<3)>>2]|0);N=(c
[l>>2]|0)+184+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+2<<
;3)+4>>2]|0);N=(c[l>>2]|0)+192|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>
;>2]|0)+3<<3)>>2]|0);N=(c[l>>2]|0)+192+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>
;>2]|0)+((c[v>>2]|0)+3<<3)+4>>2]|0);Fb(c[A>>2]|0,c[p>>2]|0);c[p>>
;2]=0}if(!(c[(c[l>>2]|0)+16>>2]&1)){N=Mb(c[(c[l>>2]|0)+68>>2]|0,c[P>>2]|0
)|0;c[(c[l>>2]|0)+68>>2]=N;P=Mb(c[(c[l>>2]|0)+76>>2]|0,c[P>>2]|0)|0;c[(c[l>
;>2]|0)+76>>2]=P;P=Mb(c[(c[l>>2]|0)+184+4>>2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0
)+184+4>>2]=P;Q=Mb(c[(c[l>>2]|0)+192+4>>2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0)+192+4
x3e;>2]=Q}if(c[(c[l>>2]|0)+16>>2]&1024|0){oc(c[s>>2]|0);c[(c[(c[l>>2]|0)+8>
;>2]|0)+72>>2]=1668246896;break}c[O>>2]=0;c[E>>2]=c[M>>2];c[F>>2]=c[(c[s
x3e;>2]|0)+56+28>>2];c[D>>2]=c[(c[s>>2]|0)+20+28>>2];c[I>>2]=c[(c[l>
x3e;2]|0)+24>>2];c[H>>2]=c[(c[l>>2]|0)+28>>2];oc(c[s>>2]|0);c[B>>2]=
0;while(1){if((c[B>>2]|0)>>>0>=(c[F>>2]|0)>>>0)break;c[O>>2]=(c
[(c[s>>2]|0)+20+32>>2]|0)+(c[D>>2]<<5)+(c[B>>2]<<5);Q=(c[l>>
;2]|0)+68|0;c[K>>2]=c[Q>>2];c[K+4>>2]=c[Q+4>>2];Q=K+8|0;P=(c[l>>2]|0)+76|0;c[Q
>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=K+16|0;P=(c[l>>2]|0)+184|0;c[Q>>2
]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=K+24|0;P=(c[l>>2]|0)+192|0;c[Q>>2]=c[P>
x3e;2];c[Q+4>>2]=c[P+4>>2];c[C>>2]=b[(c[s>>2]|0)+20+2>>1];c[q>>2]=ah
(c[l>>2]|0,c[c[O>>2]>>2]|0,(c[n>>2]|0)+1|0,0)|0;if(c[q>>2]|0)break a;c[O>
x3e;2]=(c[(c[s>>2]|0)+20+32>>2]|0)+(c[D>>2]<<5)+(c[B>>2]<<5);if(!(e[(
c[O>>2]|0)+4>>1]&512)){Q=(c[l>>2]|0)+68|0;c[Q>>2]=c[K>>2];c[Q+4>>
;2]=c[K+4>>2];Q=(c[l>>2]|0)+76|0;P=K+8|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>
x3e;2];Q=(c[l>>2]|0)+184|0;P=K+16|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=(c[l
>>2]|0)+192|0;P=K+24|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2]}c[E>>2]=b
[(c[s>>2]|0)+20+2>>1];if((c[E>>2]|0)!=(c[C>>2]|0))lh(c[l>>2]|0,c[O>>
2]|0,c[M>>2]|0,c[C>>2]|0)|0;c[B>>2]=(c[B>>2]|0)+1}c[(c[l>>2]|0)+24>>
2]=c[I>>2];c[(c[l>>2]|0)+28>>2]=c[H>>2];c[(c[l>>2]|0)+168>>2]=c[x>
;>2];if(c[(c[l>>2]|0)+16>>2]&2|0)break;if(!(e[(c[O>>2]|0)+4>>1]&256))break
;if((c[E>>2]|0)>>>0<=(c[M>>2]|0)>>>0)break;mh(c[l>>2]|0,c[M>
;>2]|0,c[L>>2]|0)|0;break}c[(c[l>>2]|0)+36>>2]=0;c[(c[l>>2]|0)+36+8>>2]=0
;c[(c[l>>2]|0)+36+4>>2]=0;c[(c[l>>2]|0)+36+12>>2]=0;if(!(a[o>>0]|0)){c[(c[l>
;>2]|0)+68>>2]=(c[(c[l>>2]|0)+36>>2]|0)-(c[(c[l>>2]|0)+52>>2]|0);c[(c[l
x3e;>2]|0)+68+4>>2]=0;c[(c[l>>2]|0)+76>>2]=(c[(c[l>>2]|0)+68>>2]|0)+(c[(c
[l>>2]|0)+56>>2]|0);c[(c[l>>2]|0)+76+4>>2]=0;c[(c[l>>2]|0)+184>>2]=0
;c[(c[l>>2]|0)+184+4>>2]=(c[(c[l>>2]|0)+176>>2]|0)+(c[(c[l>>2]|0)+36+12>
x3e;2]|0);c[(c[l>>2]|0)+192>>2]=0;c[(c[l>>2]|0)+192+4>>2]=(c[(c[l>>2]|0)+184+4
>>2]|0)-(c[(c[l>>2]|0)+180>>2]|0);eh(c[l>>2]|0,c[m>>2]|0);if(a[(c[c[l>>
;2]>>2]|0)+708>>0]|0){c[z>>2]=c[(c[c[l>>2]>>2]|0)+100>>2];c[q>
x3e;2]=fh(c[c[l>>2]>>2]|0,c[m>>2]|0,p,4)|0;if(c[q>>2]|0)break;O=(c[l>>2]|0)+68
|0;c[O>>2]=(c[O>>2]|0)+(c[c[p>>2]>>2]|0);O=(c[l>>2]|0)+68+4|0;c[O>>2
]=(c[O>>2]|0)+(c[(c[p>>2]|0)+4>>2]|0);O=(c[l>>2]|0)+76|0;c[O>>2]=(c[O>>
;2]|0)+(c[(c[p>>2]|0)+8>>2]|0);O=(c[l>>2]|0)+76+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[
p>>2]|0)+8+4>>2]|0);O=(c[l>>2]|0)+184|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>
;2]|0)+16>>2]|0);O=(c[l>>2]|0)+184+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+16+4
>>2]|0);O=(c[l>>2]|0)+192|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+24>>2
]|0);O=(c[l>>2]|0)+192+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+24+4>>2]|0);Fb(c
[z>>2]|0,c[p>>2]|0);c[p>>2]=0}if(!(c[(c[l>>2]|0)+16>>2]&1)){O=Mb(c[(c[l
x3e;>2]|0)+68>>2]|0,c[P>>2]|0)|0;c[(c[l>>2]|0)+68>>2]=O;P=Mb(c[(c[l>>2]|0
)+76>>2]|0,c[P>>2]|0)|0;c[(c[l>>2]|0)+76>>2]=P;P=Mb(c[(c[l>>2]|0)+184+4>
x3e;2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0)+184+4>>2]=P;Q=Mb(c[(c[l>>2]|0)+192+4>>2]|0
,c[Q>>2]|0)|0;c[(c[l>>2]|0)+192+4>>2]=Q}c[q>>2]=0}}while(0);if(a[J>>0]|0)Va[c[(
c[r>>2]|0)+516>>2]&63](c[l>>2]|0);if(!(a[u>>0]|0)){Q=c[q>>2]|0;i=R;return
Q|0}Ra[c[(c[c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]>>2]|0)+4>>2]&7](c[(c[(c[(
c[r>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,t);Q=c[q>>2]|0;i=R;return Q|0}function
bh(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;j=i;i=i+32|0;g=j+8|0;n=j+4|0;o=j;m=j+18|0;l=j+16|0;h=j+14|0;k=j+12|0;c[
g>>2]=d;c[n>>2]=f;c[o>>2]=c[c[g>>2]>>2];b[m>>1]=0;b[l>>1]=
0;b[h>>1]=0;b[k>>1]=0;ch(c[o>>2]|0,c[n>>2]|0,((c[(c[g>>2]|0)+16>>2]
x26;512|0)!=0^1)&1,m,h);dh(c[o>>2]|0,c[n>>2]|0,((c[(c[g>>2]|0)+16>>2]&512|0)!=
0^1)&1,l,k);c[(c[g>>2]|0)+52>>2]=b[m>>1];c[(c[g>>2]|0)+56>>2]=e[h>
x3e;1];c[(c[g>>2]|0)+176>>2]=b[l>>1];c[(c[g>>2]|0)+180>>2]=e[k>>1];if
(a[(c[g>>2]|0)+64>>0]|0){i=j;return}a[(c[g>>2]|0)+64>>0]=1;c[(c[g>>2]|0)+60>
;>2]=e[h>>1];i=j;return}function ch(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;m=i;i=i+
32|0;k=m+12|0;p=m+8|0;n=m+16|0;o=m+4|0;l=m;c[k>>2]=e;c[p>>2]=f;a[n>>0]=g;c[o>>2]=h;c[l
x3e;>2]=j;Za[c[(c[(c[k>>2]|0)+532>>2]|0)+156>>2]&31](c[k>>2]|0,0,c[p>>
;2]|0,c[o>>2]|0,c[l>>2]|0)|0;if(!(d[n>>0]|0)){i=m;return}if(!(c[(c[k>>2]|0)+468+12>
x3e;2]|0)){i=m;return}b[c[l>>2]>>1]=b[(c[k>>2]|0)+216+10>>1]|0;i=m;return}function dh(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;n=i;i=i+32|0;j=n+12|0;k=n+8|0;o=n+16|0;l=n+4|0;m=n;c[j>
x3e;2]=d;c[k>>2]=e;a[o>>0]=f;c[l>>2]=g;c[m>>2]=h;a[o>>0]=a[o>>0]|0;if
(a[(c[j>>2]|0)+296>>0]|0){Za[c[(c[(c[j>>2]|0)+532>>2]|0)+156>>2]&31](c[j
x3e;>2]|0,1,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;i=n;return}else{b[c[l>>2]>>1
]=0;b[c[m>>2]>>1]=b[(c[j>>2]|0)+68>>1]|0;i=n;return}}function eh(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;q=i;i=i+48|0;g=q+32|0;h=q+28|0;m=q+24|0;n=q+42|0;p=q+40|0;k=q+38|0;j=q+36|0;o=q+8|0;l=q;c[
g>>2]=d;c[h>>2]=f;c[m>>2]=c[c[g>>2]>>2];b[n>>1]=0;b[p>>1]=
0;b[k>>1]=0;b[j>>1]=0;if(!(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)){i=q;return}if
(!(c[(c[c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]>>2]|0)+8>>2]|0)){i=q;return}c[o>
;>2]=c[(c[g>>2]|0)+52>>2];c[o+4>>2]=0;c[o+8>>2]=c[(c[g>>2]|0)+56>>
;2];c[o+12>>2]=0;c[l>>2]=Wa[c[(c[c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]>>
;2]|0)+8>>2]&31](c[(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,c[h>
;>2]|0,0,o)|0;if(c[l>>2]|0){i=q;return}b[n>>1]=c[o>>2];b[k>>1]=c[o+8>>2];
c[(c[g>>2]|0)+52>>2]=b[n>>1];c[(c[g>>2]|0)+56>>2]=e[k>>1];c[(c[g>
;>2]|0)+176>>2]=b[p>>1];c[(c[g>>2]|0)+180>>2]=e[j>>1];if(a[(c[g>>
;2]|0)+64>>0]|0){i=q;return}a[(c[g>>2]|0)+64>>0]=1;c[(c[g>>2]|0)+60>>2]=e[k>
;>1];i=q;return}function fh(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,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;M=i;i=i+128|0;j=M+112|0;N=M+108|0;k=M+104|0;l=M+100|0;m=M+96|0
;G=M+92|0;A=M+88|0;o=M+84|0;p=M+80|0;s=M+76|0;t=M+72|0;H=M+68|0;B=M+64|0;u=M+60|0;v=M+56|0;y=M+52|0;K=M+48|0;x=M+44|0;w=M+40|0;C
=M+36|0;F=M+32|0;E=M+28|0;z=M+24|0;D=M+20|0;q=M+16|0;r=M+12|0;I=M+8|0;J=M+4|0;n=M;c[N>>2]=d;c[k>>2]=f;c[l>
;>2]=g;c[m>>2]=h;c[G>>2]=c[(c[N>>2]|0)+104>>2];c[A>>2]=c[(c[G>>
2]|0)+28>>2];c[o>>2]=c[(c[N>>2]|0)+712>>2];c[K>>2]=0;c[x>>2]=0;c[w
x3e;>2]=0;c[F>>2]=0;c[E>>2]=0;c[z>>2]=0;if((c[o>>2]|0)==0?1:(a[(c[N>>2]|0
)+708>>0]|0)==0){c[j>>2]=6;N=c[j>>2]|0;i=M;return N|0}c[p>>2]=hc(c[A>>2]|0,8,0
,c[m>>2]|0,0,s)|0;do if(!(c[s>>2]|0)){c[c[l>>2]>>2]=c[p>>2];if((c[k>>
;2]|0)>>>0<(c[(c[o>>2]|0)+32>>2]|0)>>>0?(c[(c[(c[o>>2]|0)+36>
;>2]|0)+(c[k>>2]<<2)>>2]|0)!=(c[(c[(c[o>>2]|0)+36>>2]|0)+((c[k>>
;2]|0)+1<<2)>>2]|0):0){N=Kc(c[G>>2]|0,c[(c[(c[o>>2]|0)+36>>2]|0)+(c[k>>
;2]<<2)>>2]|0)|0;c[s>>2]=N;if((N|0)==0?(N=ee(c[G>>2]|0,(c[(c[(c[o>>2]|0)+36>
;>2]|0)+((c[k>>2]|0)+1<<2)>>2]|0)-(c[(c[(c[o>>2]|0)+36>>2]|0)+(c[k>
x3e;2]<<2)>>2]|0)|0)|0,c[s>>2]=N,(N|0)==0):0){c[t>>2]=(c[(c[G>>2]|0)+32>
x3e;2]|0)-(c[c[G>>2]>>2]|0);c[K>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0
,0,s)|0;if(((c[s>>2]|0)==0?(c[x>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0,0,s)|0,(c
[s>>2]|0)==0):0)?(c[w>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0,0,s)|0,(c[s>
x3e;2]|0)==0):0){c[H>>2]=(ie(c[G>>2]|0)|0)&65535;N=c[t>>2]|0;c[B>>2]=N+((ie(c[G>
;>2]|0)|0)&65535);if(c[H>>2]&32768|0){c[u>>2]=(c[(c[G>>2]|0)+32>>2]|0)-(c
[c[G>>2]>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[B>>
;2]|0);c[E>>2]=Ce(c[G>>2]|0,F)|0;c[B>>2]=(c[(c[G>>2]|0)+32>>2]|0)-(c[c[G>
x3e;2]>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[u>>2]|0)}c[v
>>2]=0;a:while(1){if((c[v>>2]|0)>>>0>=(c[H>>2]&4095)>>>0)break
;c[I>>2]=(ie(c[G>>2]|0)|0)&65535;c[J>>2]=(ie(c[G>>2]|0)|0)&65535;b:do if(c[J
x3e;>2]&32768|0){c[y>>2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[c[o>>2]
x3e;>2]|0)>>>0)break b;N=(ie(c[G>>2]|0)|0)<<16>>16<<2;c[(c[K>
x3e;2]|0)+(c[y>>2]<<2)>>2]=N;c[y>>2]=(c[y>>2]|0)+1}}else{if((c[J>>2]
x26;4095)>>>0>=(c[(c[o>>2]|0)+24>>2]|0)>>>0){L=21;break a}N=_(c[J>
x3e;2]&4095,c[c[o>>2]>>2]|0)|0;Ss(c[K>>2]|0,(c[(c[o>>2]|0)+28>>2]|0)+(N
x3c;<2)|0,c[c[o>>2]>>2]<<2|0)|0}while(0);c:do if(c[J>>2]&16384|0){c[y>>
;2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[c[o>>2]>>2]|0)>>>0)break;
N=(ie(c[G>>2]|0)|0)<<16>>16<<2;c[(c[x>>2]|0)+(c[y>>2]<<2)
x3e;>2]=N;c[y>>2]=(c[y>>2]|0)+1}c[y>>2]=0;while(1){if((c[y>>2]|0)>>>
0>=(c[c[o>>2]>>2]|0)>>>0)break c;N=(ie(c[G>>2]|0)|0)<<16>>
16<<2;c[(c[w>>2]|0)+(c[y>>2]<<2)>>2]=N;c[y>>2]=(c[y>>2]|0)+
1}}while(0);c[n>>2]=Be(c[o>>2]|0,c[J>>2]&65535,c[K>>2]|0,c[x>>2]|0,c[w>
;>2]|0)|0;if(!(c[n>>2]|0))c[B>>2]=(c[B>>2]|0)+(c[I>>2]|0);else{c[u>>2]=(c
[(c[G>>2]|0)+32>>2]|0)-(c[c[G>>2]>>2]|0);if(c[J>>2]&8192|0){c[(c[G>
x3e;2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[B>>2]|0);c[z>>2]=Ce(c[G>>2]|0,
C)|0;c[D>>2]=c[z>>2]}else{c[D>>2]=c[E>>2];c[C>>2]=c[F>>2]}c[q>
x3e;2]=De(c[G>>2]|0,(c[C>>2]|0)==0?c[m>>2]|0:c[C>>2]|0)|0;c[r>>2]=De(c[G>
x3e;2]|0,(c[C>>2]|0)==0?c[m>>2]|0:c[C>>2]|0)|0;d:do if(!((c[D>>2]|0)==0|(c[r>>
2]|0)==0|(c[q>>2]|0)==0)){N=(c[D>>2]|0)==(-1|0);c[y>>2]=0;if(N)while(1){if((c[y>>2]|0)
x3e;>>0>=(c[m>>2]|0)>>>0)break d;N=Mb(b[(c[q>>2]|0)+(c[y>>2]<
x3c;1)>>1]|0,c[n>>2]|0)|0;h=(c[p>>2]|0)+(c[y>>2]<<3)|0;c[h>>2]=(c[h
x3e;>2]|0)+N;h=Mb(b[(c[r>>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;N=(c[p>
;>2]|0)+(c[y>>2]<<3)+4|0;c[N>>2]=(c[N>>2]|0)+h;c[y>>2]=(c[y>>2]|
0)+1}else while(1){if((c[y>>2]|0)>>>0>=(c[C>>2]|0)>>>0)break d;N=Mb(b[(c[
q>>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;h=(c[p>>2]|0)+(e[(c[z>
x3e;2]|0)+(c[y>>2]<<1)>>1]<<3)|0;c[h>>2]=(c[h>>2]|0)+N;h=Mb(b[(c[r
x3e;>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;N=(c[p>>2]|0)+(e[(c[z>>
;2]|0)+(c[y>>2]<<1)>>1]<<3)+4|0;c[N>>2]=(c[N>>2]|0)+h;c[y>>
;2]=(c[y>>2]|0)+1}}while(0);if((c[z>>2]|0)!=(-1|0)){Fb(c[A>>2]|0,c[z>>2]|0);c[z>>
;2]=0}Fb(c[A>>2]|0,c[q>>2]|0);c[q>>2]=0;Fb(c[A>>2]|0,c[r>>2]|0);c[r>>
;2]=0;c[B>>2]=(c[B>>2]|0)+(c[I>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2
]>>2]|0)+(c[u>>2]|0)}c[v>>2]=(c[v>>2]|0)+1}if((L|0)==21)c[s>>2]=8;Fb(c[A>
x3e;2]|0,c[K>>2]|0);c[K>>2]=0;Fb(c[A>>2]|0,c[x>>2]|0);c[x>>2]=0;Fb(c[A>
x3e;2]|0,c[w>>2]|0);c[w>>2]=0}ge(c[G>>2]|0)}if(!(c[s>>2]|0))break;Fb(c[A>>2]|0
,c[p>>2]|0);c[p>>2]=0;c[c[l>>2]>>2]=0;break}c[j>>2]=0;N=c[j>>2]|0;i=
M;return N|0}while(0);c[j>>2]=c[s>>2];N=c[j>>2]|0;i=M;return N|0}function gh(d){d=d|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;t=i;i=i+64|0;f=t+48|0;g=t+44|0;k=t+40|0;j=t+36|0;p=t+32|0;o=t+28|0;h=t+24|0;
n=t+20|0;l=t+16|0;q=t+12|0;m=t+8|0;r=t+4|0;s=t;c[g>>2]=d;c[k>>2]=c[(c[g>>2]|0)+12>>2];c[
j>>2]=0;c[p>>2]=(c[k>>2]|0)+56;c[o>>2]=b[(c[p>>2]|0)+2>>1];d=(c[(c[p
>>2]|0)+4>>2]|0)+(c[o>>2]<<3)|0;u=(c[g>>2]|0)+68|0;c[d>>2]=c[u>
x3e;2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)+1<<
;3)|0;u=(c[g>>2]|0)+76|0;c[d>>2]=c[u>>2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>
x3e;2]|0)+4>>2]|0)+((c[o>>2]|0)+2<<3)|0;u=(c[g>>2]|0)+184|0;c[d>>2]=c[u>
x3e;2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)+3<<
;3)|0;u=(c[g>>2]|0)+192|0;c[d>>2]=c[u>>2];c[d+4>>2]=c[u+4>>2];a[(c[(c[p>
x3e;2]|0)+8>>2]|0)+(c[o>>2]|0)>>0]=0;a[(c[(c[p>>2]|0)+8>>2]|0)+((c[o>>
;2]|0)+1)>>0]=0;a[(c[(c[p>>2]|0)+8>>2]|0)+((c[o>>2]|0)+2)>>0]=0;a[(c[(c[p>
;>2]|0)+8>>2]|0)+((c[o>>2]|0)+3)>>0]=0;c[o>>2]=(c[o>>2]|0)+4;if(a[(c[c[g
x3e;>2]>>2]|0)+708>>0]|0){c[n>>2]=c[(c[c[g>>2]>>2]|0)+100>>2];c
[j>>2]=fh(c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+20>>2]|0,h,c[o>>2]|0)|0;if(c
[j>>2]|0){c[f>>2]=c[j>>2];u=c[f>>2]|0;i=t;return u|0}c[l>>2]=0;while(1){if((c[
l>>2]|0)>=(c[o>>2]|0))break;u=(c[(c[p>>2]|0)+4>>2]|0)+(c[l>>2]<<
;3)|0;c[u>>2]=(c[u>>2]|0)+(c[(c[h>>2]|0)+(c[l>>2]<<3)>>2]|0);u=(c[(c
[p>>2]|0)+4>>2]|0)+(c[l>>2]<<3)+4|0;c[u>>2]=(c[u>>2]|0)+(c[(c[h>
;>2]|0)+(c[l>>2]<<3)+4>>2]|0);c[l>>2]=(c[l>>2]|0)+1}Fb(c[n>>2]|
0,c[h>>2]|0);c[h>>2]=0}if(!(c[(c[g>>2]|0)+16>>2]&2)){hh((c[g>>2]|0)+124|0
,(c[k>>2]|0)+56|0,0,0);Ss(c[(c[g>>2]|0)+124+20>>2]|0,c[(c[g>>2]|0)+124+16>>2]|
0,(e[(c[g>>2]|0)+124+8>>1]|0)+4<<3|0)|0}if(!(c[(c[g>>2]|0)+16>>2]&1)){c[q
>>2]=c[(c[p>>2]|0)+4>>2];c[m>>2]=(c[(c[p>>2]|0)+4>>2]|0)+(c[o>
x3e;2]<<3);c[r>>2]=c[(c[(c[g>>2]|0)+4>>2]|0)+44+4>>2];c[s>>2]=c[(c[(
c[g>>2]|0)+4>>2]|0)+44+8>>2];while(1){if((c[q>>2]|0)>>>0>=(c[m>
x3e;2]|0)>>>0)break;u=Mb(c[c[q>>2]>>2]|0,c[r>>2]|0)|0;c[c[q>>2]>>
;2]=u;u=Mb(c[(c[q>>2]|0)+4>>2]|0,c[s>>2]|0)|0;c[(c[q>>2]|0)+4>>2]=u;c[q>
x3e;2]=(c[q>>2]|0)+8}u=(c[g>>2]|0)+68|0;s=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-
4<<3)|0;c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];u=(c[g>>2]|0)+76|0;s=(c[(
c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-3<<3)|0;c[u>>2]=c[s>>2];c[u+4>
x3e;2]=c[s+4>>2];u=(c[g>>2]|0)+184|0;s=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-2
x3c;<3)|0;c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];u=(c[g>>2]|0)+192|0;s=(c[(c
[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-1<<3)|0;c[u>>2]=c[s>>2];c[u+4>
x3e;2]=c[s+4>>2]}if(!(c[(c[g>>2]|0)+16>>2]&2)){u=(c[g>>2]|0)+124+8|0;b[u>>
;1]=(e[u>>1]|0)+4;c[j>>2]=ih(c[g>>2]|0,0)|0}c[f>>2]=c[j>>2];u=c[f>>2
]|0;i=t;return u|0}function hh(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;l=g+8|0;j=g+4|0;k=
g;c[h>>2]=a;c[l>>2]=d;c[j>>2]=e;c[k>>2]=f;b[(c[h>>2]|0)+8>>1]=(b[(c[
l>>2]|0)+2>>1]|0)-(c[j>>2]|0);b[(c[h>>2]|0)+10>>1]=(b[c[l>>2]>
x3e;1]|0)-(c[k>>2]|0);c[(c[h>>2]|0)+12>>2]=(c[(c[l>>2]|0)+20>>2]|0)+(c[j>
x3e;2]<<3);c[(c[h>>2]|0)+16>>2]=(c[(c[l>>2]|0)+4>>2]|0)+(c[j>>2]<
;<3);c[(c[h>>2]|0)+20>>2]=(c[(c[l>>2]|0)+24>>2]|0)+(c[j>>2]<<3);
c[(c[h>>2]|0)+24>>2]=(c[(c[l>>2]|0)+8>>2]|0)+(c[j>>2]|0);c[(c[h>>2]|
0)+28>>2]=(c[(c[l>>2]|0)+12>>2]|0)+(c[k>>2]<<1);b[(c[h>>2]|0)+32>
;>1]=c[j>>2];i=g;return}function ih(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,q=0,r=0;r=i;i=i+64|0
;l=r+44|0;m=r+40|0;h=r+49|0;q=r+36|0;g=r+32|0;k=r+28|0;o=r+48|0;p=r+24|0;j=r+20|0;n=r;c[m>>2]=b;a[h>>0]=f;c[
q>>2]=(c[m>>2]|0)+124;c[k>>2]=c[(c[(c[m>>2]|0)+8>>2]|0)+140>>2];c[g
x3e;>2]=c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-4<<3)>
x3e;2];c[g>>2]=((c[g>>2]|0)+32&-64)-(c[g>>2]|0);if(c[g>>2]|0)jh(e[(c[q>>2
]|0)+8>>1]|0,c[(c[q>>2]|0)+16>>2]|0,c[g>>2]|0,0);if((c[k>>2]|0)>>>
;0>0)Ss(c[(c[q>>2]|0)+12>>2]|0,c[(c[q>>2]|0)+16>>2]|0,e[(c[q>>2]|0)+8>
;>1]<<3|0)|0;f=(c[(c[m>>2]|0)+160>>2]|0)+284|0;b=(c[(c[m>>2]|0)+4>>2]|0)+
172|0;g=f+68|0;do{c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0}while((f|0)<(g|0));f=c[m>>2]|0;if(a[h>
x3e;0]|0){c[(c[f+160>>2]|0)+216+4>>2]=65536;c[(c[(c[m>>2]|0)+160>>2]|0)+216+8>>
;2]=65536;Ss(c[(c[q>>2]|0)+20>>2]|0,c[(c[q>>2]|0)+16>>2]|0,e[(c[q>>2]|0)+8>
;>1]<<3|0)|0}else{c[(c[(c[m>>2]|0)+160>>2]|0)+216+4>>2]=c[(c[f+4>>2]|0)+44
+4>>2];c[(c[(c[m>>2]|0)+160>>2]|0)+216+8>>2]=c[(c[(c[m>>2]|0)+4>>2]|
0)+44+8>>2]}c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-3<<3
)>>2]=(c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-3<<3)>
;>2]|0)+32&-64;c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<
;3)+4>>2]=(c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<3)+
4>>2]|0)+32&-64;if((c[k>>2]|0)>>>0>0){c[j>>2]=c[(c[m>>2]|0)+12
x3e;>2];j=(c[j>>2]|0)+56|0;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>
;>2]=c[j+8>>2];c[n+12>>2]=c[j+12>>2];c[n+16>>2]=c[j+16>>2];c[p>>
;2]=Xg(c[(c[m>>2]|0)+160>>2]|0,3,c[(c[(c[m>>2]|0)+160>>2]|0)+392>>2]|0,c[k>
;>2]|0)|0;if(c[p>>2]|0){c[l>>2]=c[p>>2];q=c[l>>2]|0;i=r;return q|0}a[(c[(c[m>
x3e;2]|0)+160>>2]|0)+560>>0]=a[h>>0]|0;f=(c[(c[m>>2]|0)+160>>2]|0)+144|0;b=c[q
>>2]|0;g=f+36|0;do{c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0}while((f|0)<(g|0));if(c[(c[m>>2]|
0)+16>>2]&1|0)f=0;else f=(d[(c[(c[m>>2]|0)+4>>2]|0)+292>>0]|0)!=0;a[o>>0]=
f&1;c[p>>2]=kh(c[(c[m>>2]|0)+160>>2]|0,a[o>>0]|0)|0;if(c[p>>2]|0?d[(c[(c[
m>>2]|0)+160>>2]|0)+561>>0]|0:0){c[l>>2]=c[p>>2];q=c[l>>2]|0;i=r;return
q|0}p=c[n+8>>2]|0;a[p>>0]=a[p>>0]|(c[(c[(c[m>>2]|0)+160>>2]|0)+284+56>
x3e;2]<<5|4)}if(!(a[(c[m>>2]|0)+65>>0]|0)){p=(c[m>>2]|0)+68|0;o=(c[(c[q>>2]|0)+
16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-4<<3)|0;c[p>>2]=c[o>>2];c[p+4>
;>2]=c[o+4>>2];p=(c[m>>2]|0)+76|0;o=(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|
0)+8>>1]|0)-3<<3)|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];p=(c[m>
x3e;2]|0)+184|0;o=(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-2<<3)|0;c[
p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];p=(c[m>>2]|0)+192|0;q=(c[(c[q>>2]|
0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<3)|0;c[p>>2]=c[q>>2];c[p+4
x3e;>2]=c[q+4>>2]}c[l>>2]=0;q=c[l>>2]|0;i=r;return q|0}function jh(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;l=i;i=i+32|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[f>>2]=a;c[g>>2]=b;c[
h>>2]=d;c[j>>2]=e;a:do if(c[h>>2]|0){c[k>>2]=0;while(1){if((c[k>>2]|0)>
x3e;>0>=(c[f>>2]|0)>>>0)break a;a=(c[g>>2]|0)+(c[k>>2]<<3)|0;c[
a>>2]=(c[a>>2]|0)+(c[h>>2]|0);c[k>>2]=(c[k>>2]|0)+1}}while(0);if(!(c[j>
x3e;2]|0)){i=l;return}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=(c[f>>2]|0)>
x3e;>0)break;a=(c[g>>2]|0)+(c[k>>2]<<3)+4|0;c[a>>2]=(c[a>>2]|0)+(c[j>
;>2]|0);c[k>>2]=(c[k>>2]|0)+1}i=l;return}function kh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16
|0;g=k+8|0;h=k+4|0;j=k+12|0;f=k;c[h>>2]=d;a[j>>0]=e;d=Zg(c[h>>2]|0,3,0)|0;c[f>>2]=d;if(d
|0){c[g>>2]=c[f>>2];j=c[g>>2]|0;i=k;return j|0}else{e=(c[h>>2]|0)+36|0;f=(c[h>>
;2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(d|0));e=(c[h>>2]|0)+72|
0;f=(c[h>>2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(d|0));e=(c[h
x3e;>2]|0)+108|0;f=(c[h>>2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)
x3c;(d|0));b[(c[h>>2]|0)+284+60>>1]=1;b[(c[h>>2]|0)+284+62>>1]=1;b[(c[h>>2]|0)+
284+64>>1]=1;b[(c[h>>2]|0)+284+10>>1]=16384;b[(c[h>>2]|0)+284+10+2>>1]=0;d=(c[
h>>2]|0)+284+14|0;f=(c[h>>2]|0)+284+10|0;b[d>>1]=b[f>>1]|0;b[d+2>>1]=b[f+2>
;>1]|0;d=(c[h>>2]|0)+284+6|0;f=(c[h>>2]|0)+284+10|0;b[d>>1]=b[f>>1]|0;b[d+2>
x3e;1]=b[f+2>>1]|0;c[(c[h>>2]|0)+284+28>>2]=1;c[(c[h>>2]|0)+284+20>>2]=1;c[(c[
h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+428>>2]=0;a[j>>0]=a[j>>0]|0;c[g>
;>2]=Ta[c[(c[c[h>>2]>>2]|0)+688>>2]&63](c[h>>2]|0)|0;j=c[g>>2]|0;i=k
;return j|0}return 0}function lh(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;E=i;i=i+80|0;l=E+72|0;m=E+68|0;n=E+64|0;o=E+60|0;p=E+56|0;r=E+52|0;q=E+48|0;x=E+44|0;s=E+76|0;A=E+40|0
;C=E+36|0;k=E+32|0;t=E+28|0;u=E+24|0;y=E+20|0;z=E+16|0;v=E+12|0;w=E+8|0;B=E+4|0;D=E;c[m>>2]=f;c[n>>2]=g;c[o
x3e;>2]=h;c[p>>2]=j;c[r>>2]=c[(c[m>>2]|0)+12>>2];c[q>>2]=c[(c[r>>
;2]|0)+20+4>>2];c[x>>2]=b[(c[r>>2]|0)+20+2>>1];a[s>>0]=e[(c[n>>2]|0)+
4>>1]&200;a:do if(a[s>>0]|0){c[k>>2]=c[p>>2];while(1){if((c[k>>2]|0)>
;>>0>=(c[x>>2]|0)>>>0)break a;Lb((c[q>>2]|0)+(c[k>>2]<<3)|
0,(c[n>>2]|0)+16|0);c[k>>2]=(c[k>>2]|0)+1}}while(0);k=c[(c[n>>2]|0)+8>>2]|0;do
if(e[(c[n>>2]|0)+4>>1]&2|0){c[A>>2]=k;c[C>>2]=c[(c[n>>2]|0)+12>>
;2];if(!((c[A>>2]|0)!=0|(c[C>>2]|0)!=0)){c[l>>2]=0;D=c[l>>2]|0;i=E;return D|0}if(d[s>
;>0]|0?e[(c[n>>2]|0)+4>>1]&2048|0:0){z=Mb(c[(c[n>>2]|0)+16>>2]|0,c[(c[n>
x3e;2]|0)+16>>2]|0)|0;c[v>>2]=Zb(z+(Mb(c[(c[n>>2]|0)+16+4>>2]|0,c[(c[n>>2]|0)+
16+4>>2]|0)|0)|0)|0;z=Mb(c[(c[n>>2]|0)+16+12>>2]|0,c[(c[n>>2]|0)+16+12>>2]|0)|
0;c[w>>2]=Zb(z+(Mb(c[(c[n>>2]|0)+16+8>>2]|0,c[(c[n>>2]|0)+16+8>>2]|0)|0)|0)|0;
c[A>>2]=Mb(c[A>>2]|0,c[v>>2]|0)|0;c[C>>2]=Mb(c[C>>2]|0,c[w>>2]|0)|0}
if((c[(c[m>>2]|0)+16>>2]&1|0)==0?(c[B>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+44+4
x3e;>2],c[D>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+44+8>>2],c[A>>2]=Mb(c[A>
x3e;2]|0,c[B>>2]|0)|0,c[C>>2]=Mb(c[C>>2]|0,c[D>>2]|0)|0,e[(c[n>>2]|0)+4>
x3e;1]&4|0):0){c[A>>2]=(c[A>>2]|0)+32&-64;c[C>>2]=(c[C>>2]|0)+32&-64}}else
{c[t>>2]=k;c[u>>2]=c[(c[n>>2]|0)+12>>2];c[t>>2]=(c[t>>2]|0)+(c[o>
;>2]|0);c[u>>2]=(c[u>>2]|0)+(c[p>>2]|0);if((c[t>>2]|0)>>>0<(c[p
>>2]|0)>>>0?(c[u>>2]|0)>>>0<(c[x>>2]|0)>>>0:0){c
[y>>2]=(c[(c[r>>2]|0)+20+4>>2]|0)+(c[t>>2]<<3);c[z>>2]=(c[(c[r>
x3e;2]|0)+20+4>>2]|0)+(c[u>>2]<<3);c[A>>2]=(c[c[y>>2]>>2]|0)-(c[c[z
x3e;>2]>>2]|0);c[C>>2]=(c[(c[y>>2]|0)+4>>2]|0)-(c[(c[z>>2]|0)+4>>
;2]|0);break}c[l>>2]=21;D=c[l>>2]|0;i=E;return D|0}while(0);if((c[A>>2]|0)!=0|(c[C>>2]|0
)!=0)jh((c[x>>2]|0)-(c[p>>2]|0)|0,(c[q>>2]|0)+(c[p>>2]<<3)|0,c[A>>2]|
0,c[C>>2]|0);c[l>>2]=0;D=c[l>>2]|0;i=E;return D|0}function mh(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;u=i;i=i+48|0;k=u+32|0;l=u+28|0;m=u+24|0;n=u+20|0;o=u+16|0;j=u+12|0;p=u+8|0;s=u+4|0;r=u+
38|0;q=u+36|0;t=u;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[j>>2]=(c[(c[l>>2]|0)+12>
;>2]|0)+20;if(((b[(c[j>>2]|0)+2>>1]|0)+4|0)!=0?((b[(c[(c[l>>2]|0)+12>>2]|0)+20+2>
;>1]|0)+(b[(c[(c[l>>2]|0)+12>>2]|0)+56+2>>1]|0)+((b[(c[j>>2]|0)+2>>1]|0)+
4)|0)>>>0>(c[(c[(c[l>>2]|0)+12>>2]|0)+4>>2]|0)>>>0:0)f=kc(c[(c[
l>>2]|0)+12>>2]|0,(b[(c[j>>2]|0)+2>>1]|0)+4|0,0)|0;else f=0;c[o>>2]=f;if(c[o
x3e;>2]|0){c[k>>2]=c[o>>2];t=c[k>>2]|0;i=u;return t|0}g=(c[(c[j>>2]|0)+4>>
;2]|0)+(b[(c[j>>2]|0)+2>>1]<<3)|0;h=(c[l>>2]|0)+68|0;c[g>>2]=c[h>>2];
c[g+4>>2]=c[h+4>>2];g=(c[(c[j>>2]|0)+4>>2]|0)+((b[(c[j>>2]|0)+2>>1]|
0)+1<<3)|0;h=(c[l>>2]|0)+76|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];g=(
c[(c[j>>2]|0)+4>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+2<<3)|0;h=(c[l>>2]|0
)+184|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];g=(c[(c[j>>2]|0)+4>>2]|0
)+((b[(c[j>>2]|0)+2>>1]|0)+3<<3)|0;h=(c[l>>2]|0)+192|0;c[g>>2]=c[h>>
2];c[g+4>>2]=c[h+4>>2];a[(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>>2]|0)+2>>1
]|0)>>0]=0;a[(c[(c[j>>2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+1)>>0]=
0;a[(c[(c[j>>2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+2)>>0]=0;a[(c[(c[j>
x3e;2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+3)>>0]=0;c[s>>2]=c[(c[l>>
;2]|0)+24>>2];j=Kc(c[s>>2]|0,c[(c[l>>2]|0)+168>>2]|0)|0;c[o>>2]=j;if((j|0)==0?(
b[r>>1]=Pc(c[s>>2]|0,o)|0,(c[o>>2]|0)==0):0){b[q>>1]=b[(c[c[l>>2]>>2
]|0)+260+26>>1]|0;f=e[r>>1]|0;if((e[r>>1]|0)>(e[q>>1]|0)){if((f|0)>(c[(c[l>
;>2]|0)+28>>2]|0)){c[k>>2]=22;t=c[k>>2]|0;i=u;return t|0}c[t>>2]=c[(c[(c[l>>
;2]|0)+160>>2]|0)+388>>2];c[o>>2]=Wg(c[(c[(c[l>>2]|0)+160>>2]|0)+8>>
2]|0,t,1,(c[(c[l>>2]|0)+160>>2]|0)+392|0,e[r>>1]|0)|0;c[(c[(c[l>>2]|0)+160>>2]|
0)+388>>2]=c[t>>2]&65535;if(c[o>>2]|0){c[k>>2]=c[o>>2];t=c[k>>2
]|0;i=u;return t|0}}else if(!f){c[k>>2]=0;t=c[k>>2]|0;i=u;return t|0}t=Rc(c[s>>2]|0,c[(c[(c[l>
;>2]|0)+160>>2]|0)+392>>2]|0,e[r>>1]|0)|0;c[o>>2]=t;if(t|0){c[k>>2]=c[o
x3e;>2];t=c[k>>2]|0;i=u;return t|0}c[(c[(c[l>>2]|0)+8>>2]|0)+136>>2]=c[(c[(c[l>
;>2]|0)+160>>2]|0)+392>>2];c[(c[(c[l>>2]|0)+8>>2]|0)+140>>2]=e[r>>
;1];hh((c[l>>2]|0)+124|0,(c[(c[l>>2]|0)+12>>2]|0)+20|0,c[m>>2]|0,c[n>>2]|0);c[
p>>2]=c[m>>2];while(1){if((c[p>>2]|0)>>>0>=(e[(c[l>>2]|0)+124+8>
;>1]|0)>>>0)break;t=(c[(c[l>>2]|0)+124+24>>2]|0)+(c[p>>2]|0)|0;a[t>>
0]=d[t>>0]&-25;c[p>>2]=(c[p>>2]|0)+1}t=(c[l>>2]|0)+124+8|0;b[t>>1]=(e[t
x3e;>1]|0)+4;c[k>>2]=ih(c[l>>2]|0,1)|0;t=c[k>>2]|0;i=u;return t|0}c[k>>2]=c[o>
x3e;2];t=c[k>>2]|0;i=u;return t|0}function nh(a,f){a=a|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;y=i;i=i+96|0;m=y+88|0;n=y+84|0;o=y+80|0;h=y+64|0;r=y+60|0;x=y+56|0;s=y+52|0;j=y+48|0;g=y+44|0;k=y+40|0;w=y+
36|0;p=y+32|0;t=y+28|0;u=y+24|0;v=y+8|0;q=y;c[n>>2]=a;c[o>>2]=f;c[r>>2]=c[c[n>>2]>
x3e;2];c[s>>2]=c[(c[n>>2]|0)+8>>2];c[j>>2]=c[(c[n>>2]|0)+4>>2];c[x
x3e;>2]=65536;if(!(c[(c[n>>2]|0)+16>>2]&1))c[x>>2]=c[(c[j>>2]|0)+12+8>>
;2];if((c[(c[s>>2]|0)+72>>2]|0)!=1668246896)_d((c[s>>2]|0)+108|0,h);else{a=(c[n>>2]|0)+36
|0;c[h>>2]=c[a>>2];c[h+4>>2]=c[a+4>>2];c[h+8>>2]=c[a+8>>2];c[h+12>
;>2]=c[a+12>>2]}c[g>>2]=c[(c[n>>2]|0)+60>>2];if(c[(c[r>>2]|0)+468+12>
;>2]|0?(c[(c[n>>2]|0)+16>>2]&512|0)==0:0)c[g>>2]=e[(c[r>>2]|0)+216+10>>
;1];c[(c[s>>2]|0)+56>>2]=c[g>>2];c[(c[s>>2]|0)+24+8>>2]=c[h>>2];c[(c
[s>>2]|0)+24+12>>2]=c[h+12>>2];c[(c[s>>2]|0)+24+16>>2]=(c[(c[n>>2]|0
)+76>>2]|0)-(c[(c[n>>2]|0)+68>>2]|0);if(((c[(c[r>>2]|0)+468+12>>2]|0)==0?(c[(c
[n>>2]|0)+16>>2]&2|0)==0:0)?(c[k>>2]=oh(c[r>>2]|0,e[(c[j>>2]|0)+12>
x3e;1]|0,c[o>>2]|0)|0,c[k>>2]|0):0)c[(c[s>>2]|0)+24+16>>2]=d[c[k>>2]>>
;0]<<6;c[(c[s>>2]|0)+24>>2]=(c[h+8>>2]|0)-(c[h>>2]|0);c[(c[s>>2]|0)+
24+4>>2]=(c[h+12>>2]|0)-(c[h+4>>2]|0);do if(d[(c[r>>2]|0)+296>>0]|0?(e[(c[r>
;>2]|0)+300+34>>1]|0)>0:0){c[w>>2]=((Vb((c[(c[n>>2]|0)+184+4>>2]|0)-(c[h+12>
;>2]|0)|0,c[x>>2]|0)|0)&65535)<<16>>16;if((c[(c[n>>2]|0)+184+4>>2]|0
)<=(c[(c[n>>2]|0)+192+4>>2]|0)){c[p>>2]=0;break}else{c[p>>2]=(Vb((c[(c[n>>
;2]|0)+184+4>>2]|0)-(c[(c[n>>2]|0)+192+4>>2]|0)|0,c[x>>2]|0)|0)&65535;break}}else l
=18;while(0);if((l|0)==18){c[t>>2]=((Vb((c[h+12>>2]|0)-(c[h+4>>2]|0)|0,c[x>>2]|0)|0)&
;65535)<<16>>16;g=c[r>>2]|0;if((e[(c[r>>2]|0)+368>>1]|0)!=65535)c[p>>
;2]=(b[g+368+70>>1]|0)-(b[(c[r>>2]|0)+368+72>>1]|0);else c[p>>2]=(b[g+216+4>>1
]|0)-(b[(c[r>>2]|0)+216+6>>1]|0);c[w>>2]=((c[p>>2]|0)-(c[t>>2]|0)|0)/2|0}c[u
x3e;>2]=c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2];do if(c[u>>2]|0?c[(c[c[u>>2]
x3e;>2]|0)+8>>2]|0:0){c[v>>2]=0;c[v+4>>2]=c[w>>2];c[v+8>>2]=c[p>>
;2];c[q>>2]=Wa[c[(c[c[u>>2]>>2]|0)+8>>2]&31](c[(c[u>>2]|0)+4>>2
]|0,c[o>>2]|0,1,v)|0;if(!(c[q>>2]|0)){c[w>>2]=c[v+4>>2];c[p>>2]=c[v+8>>
;2];break}c[m>>2]=c[q>>2];x=c[m>>2]|0;i=y;return x|0}while(0);c[(c[s>>2]|0)+60>>
;2]=c[p>>2];if(!(c[(c[n>>2]|0)+16>>2]&1)){c[w>>2]=Mb(c[w>>2]|0,c[x>
x3e;2]|0)|0;c[p>>2]=Mb(c[p>>2]|0,c[x>>2]|0)|0}c[(c[s>>2]|0)+24+20>>2]=(c[(c[s
x3e;>2]|0)+24+8>>2]|0)-((c[(c[s>>2]|0)+24+16>>2]|0)/2|0);c[(c[s>>2]|0)+24+24>
x3e;2]=c[w>>2];c[(c[s>>2]|0)+24+28>>2]=c[p>>2];c[m>>2]=0;x=c[m>>2]|0
;i=y;return x|0}function oh(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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;h=o+
16|0;j=o+12|0;m=o+8|0;l=o+4|0;k=o;c[f>>2]=a;c[g>>2]=b;c[h>>2]=e;c[m>>2]=0;c[l>>
;2]=c[(c[f>>2]|0)+752>>2];c[k>>2]=(c[(c[f>>2]|0)+740>>2]|0)+8;c[j>>2
]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[f>>2]|0)+748>>2]|0)>>>0){
n=7;break}if((d[(c[(c[f>>2]|0)+756>>2]|0)+(c[j>>2]|0)>>0]|0|0)==(c[g>>2]|0))break
;c[j>>2]=(c[j>>2]|0)+1}if((n|0)==7){n=c[m>>2]|0;i=o;return n|0}c[h>>2]=(c[h>>2
]|0)+2;if((c[h>>2]|0)>>>0>=(c[l>>2]|0)>>>0){n=c[m>>2]|0;i=o;return
n|0}n=(c[k>>2]|0)+(_(c[j>>2]|0,c[l>>2]|0)|0)|0;c[m>>2]=n+(c[h>>2]|0);n=c[m>
;>2]|0;i=o;return n|0}function ph(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;l=i;i=i+32|0;m=l+20|0;f=
l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>
;2]=c[m>>2];c[k>>2]=c[(c[j>>2]|0)+532>>2];c[c[h>>2]>>2]=0;c[(c[h>
;>2]|0)+4>>2]=0;if(!(c[k>>2]|0)){i=l;return 0}m=Oa[c[(c[k>>2]|0)+128>>2]&63](c
[j>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;c[c[h>>2]>>2]=m;i=l;return 0}function qh(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,s=0,t=0,u=0,v=0;t=i;i=i+48|0;v=t+24|0;j=t+20|0;k=t+16
|0;u=t+12|0;l=t+8|0;r=t+4|0;p=t;o=t+36|0;s=t+34|0;m=t+32|0;q=t+30|0;n=t+28|0;c[v>>2]=b;c[j>>2]=d;c[k>
x3e;2]=f;c[u>>2]=g;c[l>>2]=h;c[p>>2]=c[v>>2];a[o>>0]=((c[u>>2]&
512|0)!=0^1)&1;b=(c[u>>2]&16|0)!=0;c[r>>2]=0;if(b){while(1){if((c[r>>2]|0)>>
x3e;0>=(c[k>>2]|0)>>>0)break;dh(c[p>>2]|0,(c[j>>2]|0)+(c[r>>2]|0)|0,
a[o>>0]|0,s,m);c[(c[l>>2]|0)+(c[r>>2]<<2)>>2]=e[m>>1];c[r>>
;2]=(c[r>>2]|0)+1}i=t;return 0}else{while(1){if((c[r>>2]|0)>>>0>=(c[k>>2]|0)
x3e;>>0)break;ch(c[p>>2]|0,(c[j>>2]|0)+(c[r>>2]|0)|0,a[o>>0]|0,q,n);c[(c[l>
;>2]|0)+(c[r>>2]<<2)>>2]=e[n>>1];c[r>>2]=(c[r>>2]|0)+1}i=t;return
0}return 0}function rh(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;m=i;i=i+32|0;d=m+28|0;e=m+24|0;f=m+20|0;l=m+16|
0;g=m+12|0;k=m+8|0;h=m+4|0;j=m;c[e>>2]=a;c[f>>2]=b;c[l>>2]=c[e>>2];c[g>>2]=0;do
if(c[(c[c[e>>2]>>2]|0)+8>>2]&2|0){c[k>>2]=c[c[e>>2]>>2];c[h>
;>2]=c[(c[k>>2]|0)+532>>2];c[g>>2]=Oa[c[(c[h>>2]|0)+148>>2]&63](c[k
x3e;>2]|0,c[f>>2]|0,j)|0;if(c[g>>2]|0){c[(c[l>>2]|0)+112>>2]=-1;break}c[d>>
;2]=sh(c[e>>2]|0,c[j>>2]|0)|0;l=c[d>>2]|0;i=m;return l|0}while(0);Ed(c[c[e>>2]>>
;2]|0,c[f>>2]|0);if(c[(c[c[e>>2]>>2]|0)+8>>2]&1|0)c[g>>2]=th(c[l>>
;2]|0)|0;c[d>>2]=c[g>>2];l=c[d>>2]|0;i=m;return l|0}function sh(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;l=i;i=i+32|0;d=l+24|0;e=l+20|0;j=l+16|0;k=l+12|0;f=l+8|0;h=l+4|0;g=l;c[d>>2]=a;c[e>>2]=b;
c[j>>2]=c[c[d>>2]>>2];c[k>>2]=c[d>>2];c[f>>2]=0;c[(c[k>>2]|
0)+112>>2]=c[e>>2];if(c[(c[c[d>>2]>>2]|0)+8>>2]&1|0){Cd(c[c[d>>
2]>>2]|0,c[e>>2]|0);th(c[k>>2]|0)|0;k=c[f>>2]|0;i=l;return k|0}c[h>>2]=c[(c[j
x3e;>2]|0)+532>>2];c[g>>2]=(c[d>>2]|0)+12;c[f>>2]=Oa[c[(c[h>>2]|0)+152>
;>2]&63](c[j>>2]|0,c[e>>2]|0,c[g>>2]|0)|0;if(!(c[f>>2]|0)){k=c[f>>2]|
0;i=l;return k|0}c[(c[k>>2]|0)+112>>2]=-1;k=c[f>>2]|0;i=l;return k|0}function th(d){d=d|0;var f=0,
g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;g=l+16|0;h=l+12|0;f=l+8|0;j=l+4|0;k=l;c[h>>2]=d;c[j>>2]=0;a[(c[h>
x3e;2]|0)+72+36>>0]=0;c[f>>2]=c[c[h>>2]>>2];c[k>>2]=(c[h>>2]|0)+44;d
=c[k>>2]|0;m=(c[h>>2]|0)+12|0;c[d>>2]=c[m>>2];c[d+4>>2]=c[m+4>>2];c[
d+8>>2]=c[m+8>>2];c[d+12>>2]=c[m+12>>2];c[d+16>>2]=c[m+16>>2];c[d+20
>>2]=c[m+20>>2];c[d+24>>2]=c[m+24>>2];if((e[c[k>>2]>>1]|0)>=1?(
e[(c[k>>2]|0)+2>>1]|0)>=1:0){if(e[(c[f>>2]|0)+160+16>>1]&8|0){m=Vb(e[c[k>
x3e;2]>>1]<<6,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[k>>2]|0)+4>>2]=m;m=Vb(e
[(c[k>>2]|0)+2>>1]<<6,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[k>>2]|0)+8>
;>2]=m;m=(Mb(b[(c[f>>2]|0)+70>>1]|0,c[(c[k>>2]|0)+8>>2]|0)|0)+32&-64;c[(c[k>
;>2]|0)+12>>2]=m;m=(Mb(b[(c[f>>2]|0)+72>>1]|0,c[(c[k>>2]|0)+8>>2]|0)|0)+32
&-64;c[(c[k>>2]|0)+16>>2]=m;m=(Mb(b[(c[f>>2]|0)+74>>1]|0,c[(c[k>>2]|0)+8
x3e;>2]|0)|0)+32&-64;c[(c[k>>2]|0)+20>>2]=m;m=(Mb(b[(c[f>>2]|0)+76>>1]|0,c[(c[
k>>2]|0)+4>>2]|0)|0)+32&-64;c[(c[k>>2]|0)+24>>2]=m}f=c[k>>2]|0;if((e[c[k
x3e;>2]>>1]|0)>=(e[(c[k>>2]|0)+2>>1]|0)){c[(c[h>>2]|0)+72+16>>2]=c[f
+4>>2];b[(c[h>>2]|0)+72+8>>1]=b[c[k>>2]>>1]|0;c[(c[h>>2]|0)+72>
x3e;2]=65536;m=xb(e[(c[k>>2]|0)+2>>1]|0,65536,e[c[k>>2]>>1]|0)|0;c[(c[h>>2]|0)+
72+4>>2]=m}else{c[(c[h>>2]|0)+72+16>>2]=c[f+8>>2];b[(c[h>>2]|0)+72+8>>
;1]=b[(c[k>>2]|0)+2>>1]|0;m=xb(e[c[k>>2]>>1]|0,65536,e[(c[k>>2]|0)+2>>
;1]|0)|0;c[(c[h>>2]|0)+72>>2]=m;c[(c[h>>2]|0)+72+4>>2]=65536}a[(c[h>>2]|0)+301
>>0]=0;if(!(c[j>>2]|0))a[(c[h>>2]|0)+72+36>>0]=1;c[g>>2]=c[j>>2];m=c
[g>>2]|0;i=l;return m|0}c[g>>2]=151;m=c[g>>2]|0;i=l;return m|0}function uh(a){a=a|0;var b=0,d=0;b=
i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return 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[d>>2]=c[d>>2];i=b;return}function wh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=
0;j=i;i=i+32|0;h=j+16|0;d=j+12|0;e=j+8|0;g=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=qc(740,c[e>
x3e;2]|0)|0;if(c[f>>2]|0){c[h>>2]=c[f>>2];h=c[h>>2]|0;i=j;return h|0}if(!(c[d>>
;2]|0)){c[h>>2]=0;h=c[h>>2]|0;i=j;return h|0}c[g>>2]=Wc(c[(c[d>>2]|0)+4>>2]|0,
11340)|0;if(c[g>>2]|0)d=Ya[c[(c[c[g>>2]>>2]|0)+32>>2]&127](c[g>>2]|0,c[e
x3e;>2]|0)|0;else d=0;c[h>>2]=d;h=c[h>>2]|0;i=j;return h|0}function xh(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;k=n+12|0;j=n+8|0;l=n+4|0;m=n;c[f>>2]=d;c[g>>2]=
e;c[h>>2]=c[(c[f>>2]|0)+692>>2];c[k>>2]=0;do if(c[h>>2]|0?(c[(c[h>>2
]|0)+2060>>2]|0)==0:0){c[j>>2]=(c[h>>2]|0)+1324;c[m>>2]=c[(c[f>>2]|0)+100>
;>2];c[l>>2]=bc(c[m>>2]|0,32,k)|0;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}else{m=yh
(c[h>>2]|0,c[c[j>>2]>>2]|0)|0;c[c[l>>2]>>2]=m;m=yh(c[h>>2]|0,c[(c[j
x3e;>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+4>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+
12>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+16>>2
]|0)|0;c[(c[l>>2]|0)+12>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+20>>2]|0)|0;c[(c[l
x3e;>2]|0)+16>>2]=m;c[(c[l>>2]|0)+20>>2]=c[(c[j>>2]|0)+28>>2];a[(c[l>
;>2]|0)+24>>0]=a[(c[j>>2]|0)+24>>0]|0;b[(c[l>>2]|0)+26>>1]=c[(c[j>
x3e;2]|0)+32>>2];b[(c[l>>2]|0)+28>>1]=c[(c[j>>2]|0)+36>>2];c[(c[h>>2
]|0)+2060>>2]=c[l>>2];break}}while(0);if(!(c[h>>2]|0)){m=c[k>>2]|0;i=n;return m|0}m=c[g
x3e;>2]|0;l=c[(c[h>>2]|0)+2060>>2]|0;c[m>>2]=c[l>>2];c[m+4>>2]=c[l+4>
;>2];c[m+8>>2]=c[l+8>>2];c[m+12>>2]=c[l+12>>2];c[m+16>>2]=c[l+16>>
;2];c[m+20>>2]=c[l+20>>2];c[m+24>>2]=c[l+24>>2];c[m+28>>2]=c[l+28>>2
];m=c[k>>2]|0;i=n;return m|0}function yh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>
;>2]=a;c[f>>2]=b;do if((c[f>>2]|0)!=65535){a=c[e>>2]|0;if((c[f>>2]|0)>>
x3e;0>390){c[d>>2]=zh(a,(c[f>>2]|0)-391|0)|0;break}if(c[a+2056>>2]|0){c[d>>2]=Ta[c[(
c[(c[e>>2]|0)+2056>>2]|0)+20>>2]&63](c[f>>2]|0)|0;break}else{c[d>>2]=0;break
}}else c[d>>2]=0;while(0);i=g;return c[d>>2]|0}function zh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f
+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if((c[e>>2]|0)>>>0>=(c[(c[d>>2]|0)+1312
>>2]|0)>>>0){a=0;i=f;return a|0}a=c[(c[(c[d>>2]|0)+1316>>2]|0)+(c[e>>2]
x3c;<2)>>2]|0;i=f;return a|0}function Ah(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]&512|0)>0|0}function Bh(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[(c[e>>2]|0)+692>>2];i=d;return c[(c[b>>2]|0)+1304>>2]|0}
function Ch(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;p=i;i=i+32|0;q=p+24|0;h=p+20|0;j=p+16|0;k=p
+12|0;m=p+8|0;n=p+4|0;o=p+28|0;l=p;c[q>>2]=a;c[h>>2]=d;c[j>>2]=f;c[k>>2]=g;c[m>>
;2]=c[(c[q>>2]|0)+692>>2];if(!(c[(c[m>>2]|0)+2056>>2]|0)){c[l>>2]=2;q=c[l>
;>2]|0;i=p;return q|0}b[o>>1]=b[(c[(c[m>>2]|0)+1152+8>>2]|0)+(c[h>>2]<<1)
x3e;>1]|0;c[n>>2]=yh(c[m>>2]|0,e[o>>1]|0)|0;if(c[n>>2]|0)pe(c[j>>2]|0,c[n
>>2]|0,c[k>>2]|0)|0;c[l>>2]=0;q=c[l>>2]|0;i=p;return q|0}function Dh(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,q=0,r=0;o=i;i=i+48|0;m=o+36|0;r=o+32|0;f=o+28|0;g=o+24|0;h=o+20|0;k=o+16|0;j=o+12|0;l=o
+40|0;n=o+8|0;q=o+4|0;p=o;c[r>>2]=a;c[f>>2]=d;c[g>>2]=c[(c[r>>2]|0)+692>>2];c[
h>>2]=(c[g>>2]|0)+1152;c[q>>2]=c[(c[r>>2]|0)+96>>2];c[p>>2]=Vd(c[q
x3e;>2]|0,71003)|0;c[k>>2]=c[p>>2];if(!(c[k>>2]|0)){c[m>>2]=0;r=c[m>>2]|0
;i=o;return r|0}c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0>=(c[(c[g>>2]|0)+12>
x3e;2]|0)>>>0){f=12;break}b[l>>1]=b[(c[(c[h>>2]|0)+8>>2]|0)+(c[n>>2]<
;<1)>>1]|0;if((e[l>>1]|0|0)>390)c[j>>2]=zh(c[g>>2]|0,(e[l>>1]|0)-391
|0)|0;else c[j>>2]=Ta[c[(c[k>>2]|0)+20>>2]&63](e[l>>1]|0)|0;if(c[j>>2]|0?(
Kr(c[f>>2]|0,c[j>>2]|0)|0)==0:0){f=10;break}c[n>>2]=(c[n>>2]|0)+1}if((f|0)==10){c[m>
;>2]=c[n>>2];r=c[m>>2]|0;i=o;return r|0}else if((f|0)==12){c[m>>2]=0;r=c[m>>2]|0;i=
o;return r|0}return 0}function Eh(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;l=i;i=i+32|0;d=l+28|0;e=l+24|0;f=l+20
|0;g=l+16|0;m=l+12|0;h=l+8|0;k=l+4|0;j=l;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[d>>2];c[g>
x3e;2]=0;c[m>>2]=c[c[f>>2]>>2];c[h>>2]=c[(c[(c[m>>2]|0)+96>>2]|0)+4
x3e;>2];c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;if((c[(c[f>>2]|0)+12>
x3e;2]|0)==828){m=c[g>>2]|0;i=l;return m|0}if((c[(c[f>>2]|0)+12>>2]|0)==868){m=c[g>>2]|0
;i=l;return m|0}c[k>>2]=Wc(c[h>>2]|0,11340)|0;c[j>>2]=Vd(c[k>>2]|0,11426)|0;if(!(c[j>
;>2]|0)){m=c[g>>2]|0;i=l;return m|0}if(!(c[c[j>>2]>>2]|0)){m=c[g>>2]|0;i=l;return m
|0}c[g>>2]=Ya[c[c[j>>2]>>2]&127](c[d>>2]|0,c[e>>2]|0)|0;m=c[g>>
2]|0;i=l;return m|0}function Fh(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;f=b+4|0;e=b;c[d>>2]=a;c
[g>>2]=c[c[d>>2]>>2];c[f>>2]=c[(c[g>>2]|0)+692>>2];c[e>>2]=(
c[f>>2]|0)+116;c[(c[d>>2]|0)+16>>2]=(c[e>>2]|0)+524;i=b;return 0}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)+16>>2]=0;i=b;return}function Hh(a,b){a=a|0;b=b|0
;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=b;c[g>>2]=0;if((c[f>
x3e;2]|0)>>>0>=256){g=c[g>>2]|0;i=h;return g|0}c[g>>2]=e[(c[(c[d>>2]|0)+16>
;>2]|0)+(c[f>>2]<<1)>>1];g=c[g>>2]|0;i=h;return g|0}function Ih(a,b){a=a|0;b=b|0;var
d=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;f=l+16|0;g=l+12|0;j=l+8|0;d=l+4|0;h=l;c[f>>2]=a;c[g>>2]=b;c[j>
;>2]=0;c[d>>2]=c[c[g>>2]>>2];c[c[g>>2]>>2]=0;if((c[d>>2]|0)>
;>>0>=255){k=c[j>>2]|0;i=l;return k|0}c[h>>2]=(c[d>>2]|0)+1;while(1){if((c[h>
x3e;2]|0)>>>0>=256){k=7;break}c[j>>2]=e[(c[(c[f>>2]|0)+16>>2]|0)+(c[h>>
;2]<<1)>>1];d=c[h>>2]|0;if(c[j>>2]|0)break;c[h>>2]=d+1}if((k|0)==7){k=c[j>
;>2]|0;i=l;return k|0}c[c[g>>2]>>2]=d;k=c[j>>2]|0;i=l;return k|0}function Jh(a){a=a|0;var b=0
,d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;b=j+24|0;d=j+20|0;f=j+16|0;g=j+12|0;e=j+8|0;k=j+4|0;h=j;c[d>>2]=a;c[f>
x3e;2]=c[c[d>>2]>>2];c[g>>2]=c[(c[f>>2]|0)+100>>2];c[e>>2]=c[(c[f>
;>2]|0)+692>>2];c[k>>2]=(c[e>>2]|0)+1152;c[h>>2]=c[(c[e>>2]|0)+2056>
x3e;2];if(c[(c[k>>2]|0)+8>>2]|0){c[b>>2]=Sa[c[(c[h>>2]|0)+4>>2]&3](c[g>
;>2]|0,c[d>>2]|0,c[(c[e>>2]|0)+12>>2]|0,105,0,c[f>>2]|0)|0;k=c[b>>2]|0;i=
j;return k|0}else{c[b>>2]=163;k=c[b>>2]|0;i=j;return k|0}return 0}function Kh(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;k=d+16|0;h=d+12|0;g=d+8|0;j=d+4|0;f=d;c[k>>2]=a;c[h>>2]=b;c[g>>2]=c[(c
[k>>2]|0)+692>>2];c[j>>2]=(c[g>>2]|0)+1152;c[f>>2]=e[(c[(c[j>>2]|0)+
8>>2]|0)+(c[h>>2]<<1)>>1];b=yh(c[g>>2]|0,c[f>>2]|0)|0;i=d;return b|0
}function Lh(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]=c[c[d>>
;2]>>2];c[e>>2]=c[(c[f>>2]|0)+100>>2];Fb(c[e>>2]|0,c[(c[d>>2]|0)+20
x3e;>2]|0);c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>2]=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,j=0;d=i;i=i+32|0;f=d+16|0;e=d+12|0;j=d+8|0;h=d+4|0;g=d;c[f>>2]=a;c[e>>
2]=b;c[j>>2]=c[c[f>>2]>>2];c[h>>2]=c[(c[j>>2]|0)+692>>2];c[g>
x3e;2]=c[(c[h>>2]|0)+2056>>2];a=Ya[c[(c[g>>2]|0)+8>>2]&127](c[f>>2]|0,c[e
>>2]|0)|0;i=d;return a|0}function Nh(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;e=d+12|0;j=d+8
|0;h=d+4|0;g=d;c[f>>2]=a;c[e>>2]=b;c[j>>2]=c[c[f>>2]>>2];c[h>>2]=c[(
c[j>>2]|0)+692>>2];c[g>>2]=c[(c[h>>2]|0)+2056>>2];a=Ya[c[(c[g>>2]|0)+
12>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Oh(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;m=i;i=i+32|0;n=m+24|0;f=m+20|0;g=m+16|0;h=m+12|0;l=m+8|0;j=m+4|0;k=m;c[n>>2]=a;c
[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[l>>2]=0;c[j>>2]=c[(c[n>>2]|0)+692>
;>2];if(!(c[j>>2]|0)){n=c[l>>2]|0;i=m;return n|0}c[k>>2]=(c[j>>2]|0)+1324;if((c[(c[
k>>2]|0)+128>>2]|0)==65535){c[l>>2]=6;n=c[l>>2]|0;i=m;return n|0}if(c[f>>2]|0){
if(!(c[(c[j>>2]|0)+2064>>2]|0)){n=yh(c[j>>2]|0,c[(c[k>>2]|0)+128>>2]|0)|0;c[(c
[j>>2]|0)+2064>>2]=n}c[c[f>>2]>>2]=c[(c[j>>2]|0)+2064>>2]}if(c[g>
;>2]|0){if(!(c[(c[j>>2]|0)+2068>>2]|0)){n=yh(c[j>>2]|0,c[(c[k>>2]|0)+132>>
;2]|0)|0;c[(c[j>>2]|0)+2068>>2]=n}c[c[g>>2]>>2]=c[(c[j>>2]|0)+2068>>
2]}if(!(c[h>>2]|0)){n=c[l>>2]|0;i=m;return n|0}c[c[h>>2]>>2]=c[(c[k>>2]|0)+136
>>2];n=c[l>>2]|0;i=m;return n|0}function Ph(b,d){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;k=j+16
|0;e=j+12|0;h=j+8|0;f=j+4|0;g=j;c[k>>2]=b;c[e>>2]=d;c[h>>2]=0;c[f>>2]=c[(c[k>>
2]|0)+692>>2];a[c[e>>2]>>0]=0;if(!(c[f>>2]|0)){k=c[h>>2]|0;i=j;return k|0}c[g
x3e;>2]=(c[f>>2]|0)+1324;if((c[(c[g>>2]|0)+128>>2]|0)==65535){k=c[h>>2]|0;i=j;return
k|0}a[c[e>>2]>>0]=1;k=c[h>>2]|0;i=j;return k|0}function Qh(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;m=i;i=i+32|0;n=m+24|0;f=m+20|0;g=m+16|0;l=m+12|0;j=m+8|0;h=m+4|0;k=m;c[n>>2]=a;c[f>>2
]=b;c[g>>2]=d;c[l>>2]=0;c[j>>2]=c[(c[n>>2]|0)+692>>2];do if(c[j>>2]|
0){c[k>>2]=(c[j>>2]|0)+1324;if((c[(c[k>>2]|0)+128>>2]|0)==65535){c[l>>2]=6;break
}if((c[f>>2]|0)>>>0>(c[(c[j>>2]|0)+12>>2]|0)>>>0){c[l>>
;2]=6;break}c[h>>2]=e[(c[(c[j>>2]|0)+1152+8>>2]|0)+(c[f>>2]<<1)>>1];
if(c[g>>2]|0)c[c[g>>2]>>2]=c[h>>2]}while(0);i=m;return c[l>>2]|0}
function rm(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;L=i;i=i+128|0;N=L+116|0;M=L+112|0;j=L+108|0;D=L+104|0;v=L+100|0;g=L+96|0;h=L+92|0;y=L+88|0;
H=L+84|0;w=L+80|0;p=L+76|0;s=L+72|0;k=L+68|0;r=L+64|0;n=L+60|0;l=L+56|0;t=L+52|0;x=L+48|0;u=L+44|0;m=L+40|0;o=L+36|0;q=L+32|0;C=
L+28|0;z=L+24|0;E=L+20|0;G=L+16|0;F=L+120|0;A=L+12|0;I=L+8|0;B=L+4|0;J=L;c[N>>2]=e;c[M>>2]=f;c[j>>
2]=(c[N>>2]|0)+48+((c[M>>2]|0)*28|0);c[D>>2]=0;c[v>>2]=c[c[N>>2]>>2];
c[g>>2]=(c[(c[N>>2]|0)+112>>2]|0)+40+((c[M>>2]|0)*396|0);c[h>>2]=c[(c[j>
x3e;2]|0)+8>>2];c[y>>2]=(c[h>>2]|0)+((c[c[j>>2]>>2]|0)*52|0);c[(c[j>>
;2]|0)+12>>2]=0;f=c[N>>2]|0;if(!(c[M>>2]|0))f=c[f+4>>2]|0;else f=c[f+12>>2]|0;
c[w>>2]=f;c[p>>2]=Mb(c[(c[g>>2]|0)+204>>2]|0,c[w>>2]|0)|0;if((c[p>>2
]|0)>16)c[p>>2]=Vb(16,c[w>>2]|0)|0;else c[p>>2]=c[(c[g>>2]|0)+204>>2];c[H
>>2]=c[h>>2];while(1){if((c[H>>2]|0)>>>0>=(c[y>>2]|0)>>>
;0)break;c[s>>2]=0;c[k>>2]=65535;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[(c[j>
x3e;2]|0)+12>>2]|0))break;c[n>>2]=(c[(c[j>>2]|0)+20>>2]|0)+((c[r>>2]|0)*48|0);
do if((a[(c[n>>2]|0)+13>>0]|0)==(a[(c[H>>2]|0)+1>>0]|0)){c[l>>2]=(b[(c[H>
x3e;2]|0)+2>>1]|0)-(b[c[n>>2]>>1]|0);if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>
;>2]|0);if((c[l>>2]|0)<(c[p>>2]|0)?(c[l>>2]|0)<(c[k>>2]|0):0){c[t>
x3e;2]=c[(c[H>>2]|0)+20>>2];if(c[t>>2]|0){c[x>>2]=c[(c[n>>2]|0)+40>>
2];c[m>>2]=0;do{c[u>>2]=c[(c[x>>2]|0)+20>>2];if(c[u>>2]|0){if((b[(c[t>>
;2]|0)+2>>1]|0)>(b[(c[u>>2]|0)+2>>1]|0))f=(b[(c[t>>2]|0)+2>>1]|0)-(b[(c[u
>>2]|0)+2>>1]|0)|0;else f=(b[(c[u>>2]|0)+2>>1]|0)-(b[(c[t>>2]|0)+2>>
1]|0)|0;c[m>>2]=f;if((c[m>>2]|0)>=(c[p>>2]|0))break}N=c[(c[x>>2]|0)+16>>2
]|0;c[x>>2]=N}while((N|0)!=(c[(c[n>>2]|0)+40>>2]|0));if((c[m>>2]|0)>=(c[p>>
;2]|0))break}c[k>>2]=c[l>>2];c[s>>2]=c[n>>2]}}while(0);c[r>>2]=(c[r>>
;2]|0)+1}if(c[s>>2]|0){c[(c[H>>2]|0)+16>>2]=c[(c[s>>2]|0)+40>>2];c[(c[(c[s>
;>2]|0)+44>>2]|0)+16>>2]=c[H>>2];c[(c[s>>2]|0)+44>>2]=c[H>>2]}else
{c[D>>2]=Yl(c[j>>2]|0,b[(c[H>>2]|0)+2>>1]|0,a[(c[H>>2]|0)+1>>0]|0,c[
v>>2]|0,o)|0;if(c[D>>2]|0){K=69;break}f=c[o>>2]|0;e=f+48|0;do{c[f>>2]=0;f=f+4|0}while((f
|0)<(e|0));c[(c[o>>2]|0)+40>>2]=c[H>>2];c[(c[o>>2]|0)+44>>2]=c[H>>
;2];b[c[o>>2]>>1]=b[(c[H>>2]|0)+2>>1]|0;N=Mb(b[(c[H>>2]|0)+2>>1]|0,c
[w>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=N;c[(c[o>>2]|0)+4>>2]=N;c[(c[H>>2]|0
)+16>>2]=c[H>>2];a[(c[o>>2]|0)+13>>0]=a[(c[H>>2]|0)+1>>0]|0}c[H>
;>2]=(c[H>>2]|0)+52}if((K|0)==69){N=c[D>>2]|0;i=L;return N|0}c[q>>2]=c[(c[j>>2]|0)+
20>>2];c[C>>2]=(c[q>>2]|0)+((c[(c[j>>2]|0)+12>>2]|0)*48|0);c[z>>2]=c
[q>>2];while(1){if((c[z>>2]|0)>>>0>=(c[C>>2]|0)>>>0)break;c[H
x3e;>2]=c[(c[z>>2]|0)+40>>2];if(c[H>>2]|0)do{c[(c[H>>2]|0)+12>>2]=c[z>
;>2];c[H>>2]=c[(c[H>>2]|0)+16>>2]}while((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>
;>2]|0));c[z>>2]=(c[z>>2]|0)+48}c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)
x3e;>>0>=(c[C>>2]|0)>>>0)break;c[E>>2]=0;c[G>>2]=0;c[H>>2]=
c[(c[z>>2]|0)+40>>2];do{if(d[c[H>>2]>>0]&1|0)c[E>>2]=(c[E>>2]|0
)+1;else c[G>>2]=(c[G>>2]|0)+1;if(c[(c[H>>2]|0)+24>>2]|0)f=(c[(c[(c[H>>2]|0)+24
>>2]|0)+12>>2]|0)!=(c[z>>2]|0);else f=0;a[F>>0]=f&1;if(!(!(c[(c[H>>2]|0)+
20>>2]|0)?!(d[F>>0]|0):0))K=47;do if((K|0)==47){K=0;c[A>>2]=c[(c[z>>2]|0)+24>>
2];c[I>>2]=c[(c[H>>2]|0)+20>>2];if(a[F>>0]|0){c[I>>2]=c[(c[H>>2]|0)+
24>>2];c[A>>2]=c[(c[z>>2]|0)+28>>2]}if(c[A>>2]|0){c[B>>2]=(b[c[z>
;>2]>>1]|0)-(b[c[A>>2]>>1]|0);if((c[B>>2]|0)<0)c[B>>2]=0-(c[B>
x3e;2]|0);if((b[(c[H>>2]|0)+2>>1]|0)>(b[(c[I>>2]|0)+2>>1]|0))f=(b[(c[H>>2
]|0)+2>>1]|0)-(b[(c[I>>2]|0)+2>>1]|0)|0;else f=(b[(c[I>>2]|0)+2>>1]|0)-(b[(c[H
>>2]|0)+2>>1]|0)|0;c[J>>2]=f;if((c[J>>2]|0)<(c[B>>2]|0))c[A>>2]=
c[(c[I>>2]|0)+12>>2]}else c[A>>2]=c[(c[I>>2]|0)+12>>2];f=c[A>>2]|0;e
=c[z>>2]|0;if(a[F>>0]|0){c[e+28>>2]=f;N=(c[A>>2]|0)+12|0;a[N>>0]=d[N>>
;0]|2;break}else{c[e+24>>2]=f;break}}while(0);c[H>>2]=c[(c[H>>2]|0)+16>>2]}while((c[H>
;>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));a[(c[z>>2]|0)+12>>0]=0;if((c[E>>2]|0)
x3e;0?(c[E>>2]|0)>=(c[G>>2]|0):0){N=(c[z>>2]|0)+12|0;a[N>>0]=d[N>>0]|1}if
(c[(c[z>>2]|0)+28>>2]|0?c[(c[z>>2]|0)+24>>2]|0:0)c[(c[z>>2]|0)+28>>2
]=0;c[z>>2]=(c[z>>2]|0)+48}N=c[D>>2]|0;i=L;return N|0}function sm(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;A=i;i=i+80|0;u=A+72|0;h=A+68|0;g=A+64|0;z=A+60|0;y=A+56|0;r
=A+52|0;x=A+48|0;j=A+44|0;l=A+40|0;s=A+36|0;k=A+32|0;o=A+28|0;p=A+24|0;q=A+20|0;m=A+16|0;n=A+12|0;t=A+8|0;w=A+4|0;v=A;c[u>
x3e;2]=e;c[h>>2]=f;c[g>>2]=(c[u>>2]|0)+48+((c[h>>2]|0)*28|0);c[z>>2]=c[(c[g>
;>2]|0)+20>>2];c[y>>2]=(c[z>>2]|0)+((c[(c[g>>2]|0)+12>>2]|0)*48|0);c[j>
;>2]=0;c[l>>2]=0;c[s>>2]=0;c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>
x3e;>0>=(c[y>>2]|0)>>>0)break;do if(!(d[(c[x>>2]|0)+12>>0]&4)){c[k
x3e;>2]=c[(c[x>>2]|0)+24>>2];if(!(c[k>>2]|0)){c[s>>2]=(c[s>>2]|0)+1;break
}if((c[k>>2]|0)>>>0<(c[x>>2]|0)>>>0){tm(c[u>>2]|0,c[h>>
;2]|0,c[k>>2]|0,c[x>>2]|0);g=(c[x>>2]|0)+12|0;a[g>>0]=d[g>>0]|4;break}f=c[u>
;>2]|0;e=c[x>>2]|0;g=c[k>>2]|0;if((c[h>>2]|0)==1|(c[j>>2]|0)!=0)wm(f,e,g,c[l>
x3e;2]|0,c[h>>2]|0)|0;else c[l>>2]=wm(f,e,g,0,0)|0;c[j>>2]=c[x>>2];g=(c[x>>2]|
0)+12|0;a[g>>0]=d[g>>0]|4;g=(c[k>>2]|0)+12|0;a[g>>0]=d[g>>0]|4}while(0);c[x>
;>2]=(c[x>>2]|0)+48}c[r>>2]=((c[y>>2]|0)-(c[z>>2]|0)|0)/48|0;if((c[h>>2]|
0)==0?(c[r>>2]|0)==6|(c[r>>2]|0)==12:0){f=c[z>>2]|0;if((c[r>>2]|0)==6){c[o>>2]=
f;c[p>>2]=(c[z>>2]|0)+96;c[q>>2]=(c[z>>2]|0)+192}else{c[o>>2]=f+48;c[p>
x3e;2]=(c[z>>2]|0)+240;c[q>>2]=(c[z>>2]|0)+432}c[m>>2]=(c[(c[p>>2]|0)+4>
x3e;2]|0)-(c[(c[o>>2]|0)+4>>2]|0);c[n>>2]=(c[(c[q>>2]|0)+4>>2]|0)-(c[(c[p>
;>2]|0)+4>>2]|0);c[t>>2]=(c[m>>2]|0)-(c[n>>2]|0);if((c[t>>2]|0)<0)c[
t>>2]=0-(c[t>>2]|0);if(((c[(c[o>>2]|0)+24>>2]|0)==((c[o>>2]|0)+48|0)?(c[(c[p
x3e;>2]|0)+24>>2]|0)==((c[p>>2]|0)+48|0):0)?((c[t>>2]|0)<8?(c[(c[q>>2]|0)+24
x3e;>2]|0)==((c[q>>2]|0)+48|0):0):0){c[l>>2]=(c[(c[q>>2]|0)+8>>2]|0)-((c[(c[p>
x3e;2]|0)+8>>2]<<1)-(c[(c[o>>2]|0)+8>>2]|0));t=(c[q>>2]|0)+8|0;c[t>>
2]=(c[t>>2]|0)-(c[l>>2]|0);if(c[(c[q>>2]|0)+24>>2]|0){t=(c[(c[q>>2]|0)+24>
;>2]|0)+8|0;c[t>>2]=(c[t>>2]|0)-(c[l>>2]|0)}if((c[r>>2]|0)==12){t=(c[z>>2
]|0)+384+8|0;c[t>>2]=(c[t>>2]|0)-(c[l>>2]|0);t=(c[z>>2]|0)+528+8|0;c[t>>2]=(c[
t>>2]|0)-(c[l>>2]|0)}t=(c[q>>2]|0)+12|0;a[t>>0]=d[t>>0]|4;if(c[(c[q>>
;2]|0)+24>>2]|0){t=(c[(c[q>>2]|0)+24>>2]|0)+12|0;a[t>>0]=d[t>>0]|4}}}if(!(c[s
x3e;>2]|0)){i=A;return}c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>>>0>=(c[y
x3e;>2]|0)>>>0)break;if((d[(c[x>>2]|0)+12>>0]&4|0)==0?c[(c[x>>2]|0)+28>
;>2]|0:0){xm(c[u>>2]|0,c[(c[x>>2]|0)+28>>2]|0,c[x>>2]|0);t=(c[x>>2]|0)+12
|0;a[t>>0]=d[t>>0]|4;c[s>>2]=(c[s>>2]|0)+-1}c[x>>2]=(c[x>>2]|0)+48}if
(!(c[s>>2]|0)){i=A;return}c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>>>0>
;=(c[y>>2]|0)>>>0)break;do if(!(d[(c[x>>2]|0)+12>>0]&4)){t=c[x>>2]|0
;c[v>>2]=t;c[w>>2]=t;do{t=(c[w>>2]|0)+-48|0;c[w>>2]=t;if(t>>>0<(c[z
x3e;>2]|0)>>>0)break}while(!(d[(c[w>>2]|0)+12>>0]&4|0));do{t=(c[v>>2]|0)+
48|0;c[v>>2]=t;if(t>>>0>=(c[y>>2]|0)>>>0)break}while(!(d[(c[v>>
2]|0)+12>>0]&4|0));if((c[w>>2]|0)>>>0<(c[z>>2]|0)>>>0?(c[v
>>2]|0)>>>0>=(c[y>>2]|0)>>>0:0)break;if((c[w>>2]|0)>>
x3e;0<(c[z>>2]|0)>>>0){xm(c[u>>2]|0,c[v>>2]|0,c[x>>2]|0);break}if((c
[v>>2]|0)>>>0>=(c[y>>2]|0)>>>0){xm(c[u>>2]|0,c[w>>2]|
0,c[x>>2]|0);break}f=c[(c[w>>2]|0)+8>>2]|0;e=c[x>>2]|0;if((b[c[v>>2]>>
;1]|0)==(b[c[w>>2]>>1]|0)){c[e+8>>2]=f;break}else{t=f+(xb((b[e>>1]|0)-(b[c[w>>
2]>>1]|0)|0,(c[(c[v>>2]|0)+8>>2]|0)-(c[(c[w>>2]|0)+8>>2]|0)|0,(b[c[v>>
;2]>>1]|0)-(b[c[w>>2]>>1]|0)|0)|0)|0;c[(c[x>>2]|0)+8>>2]=t;break}}while(0);c[x
>>2]=(c[x>>2]|0)+48}i=A;return}function tm(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;
g=i;i=i+32|0;n=g+20|0;m=g+16|0;k=g+12|0;h=g+8|0;l=g+4|0;j=g;c[n>>2]=a;c[m>>2]=b;c[k>>2]=e;c[h>
;>2]=f;c[l>>2]=(c[(c[h>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+4>>2]|0);c[j>
x3e;2]=um(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,d[(c[k>>2]|0)+12>>0]|0,d[(c[h>>
;2]|0)+12>>0]|0)|0;c[(c[h>>2]|0)+8>>2]=(c[(c[k>>2]|0)+8>>2]|0)+(c[j>>
;2]|0);i=g;return}function um(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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+44|0;k=p+40|0;s=p+36|0;g=p+32|0;r=p+28|0;q=p+24|0;t=p+20|0;h=p+16|0;n=p+12|0;o=p+8|0;j=p+4|0;l=p;c[k>>
2]=a;c[s>>2]=b;c[g>>2]=d;c[r>>2]=e;c[q>>2]=f;c[t>>2]=c[(c[k>>2]|0)+112
>>2];c[h>>2]=(c[t>>2]|0)+40+((c[s>>2]|0)*396|0);c[n>>2]=c[g>>2];c[o
x3e;>2]=0;c[j>>2]=(c[s>>2]|0)==1&1;c[r>>2]=c[r>>2];c[q>>2]=c[q>
x3e;2];if(!(c[(c[k>>2]|0)+108>>2]&4)){c[m>>2]=c[g>>2];t=c[m>>2]|0;i=p;return
t|0}if((c[n>>2]|0)<0){c[n>>2]=0-(c[g>>2]|0);c[o>>2]=1}if(c[j>>2]|0?!(c[(
c[k>>2]|0)+108>>2]&2|0):0)b=9;else b=7;do if((b|0)==7){if((c[j>>2]|0)==0?(c[(c[k>>2
]|0)+108>>2]&1|0)==0:0){b=9;break}c[n>>2]=vm((c[h>>2]|0)+12|0,c[(c[h>>2]|0)+8>
x3e;2]|0,c[n>>2]|0)|0;if(c[j>>2]|0)if((c[n>>2]|0)>=64){c[n>>2]=(c[n>>2]|0
)+16&-64;break}else{c[n>>2]=64;break}g=c[n>>2]|0;if(c[(c[k>>2]|0)+108>>2]&8|0)
if((g|0)<64){c[n>>2]=64;break}else{c[n>>2]=(c[n>>2]|0)+32&-64;break}e=c[n>>2]|
0;if((g|0)<48){c[n>>2]=e+64>>1;break}g=c[n>>2]|0;if((e|0)<128){c[n>>2]=g+22&
;-64;break}else{c[n>>2]=g+32&-64;break}}while(0);do if((b|0)==9){if((c[(c[h>>2]|0)+8>>2]|0)
x3e;>>0>0?(t=(c[n>>2]|0)-(c[(c[h>>2]|0)+12+4>>2]|0)|0,((((c[n>>2]|0)-(c[(
c[h>>2]|0)+12+4>>2]|0)|0)<0?0-t|0:t)|0)<40):0){t=c[(c[h>>2]|0)+12+4>>2]|0;c[n
x3e;>2]=t;c[n>>2]=(c[n>>2]|0)<48?48:t;break}g=c[n>>2]|0;if((c[n>>2]|0)<54
){c[n>>2]=(c[n>>2]|0)+((54-g|0)/2|0);break}if((g|0)<192){c[l>>2]=c[n>>2]&63;c[
n>>2]=c[n>>2]&-64;g=c[l>>2]|0;if((c[l>>2]|0)<10){c[n>>2]=(c[n>
x3e;2]|0)+g;break}if((g|0)<22){c[n>>2]=(c[n>>2]|0)+10;break}g=c[l>>2]|0;if((c[l>>2]|
0)<42){c[n>>2]=(c[n>>2]|0)+g;break}if((g|0)<54){c[n>>2]=(c[n>>2]|0)+54;break}else
{c[n>>2]=(c[n>>2]|0)+(c[l>>2]|0);break}}}while(0);if(c[o>>2]|0)c[n>>2]=0-(c[n
x3e;>2]|0);c[m>>2]=c[n>>2];t=c[m>>2]|0;i=p;return t|0}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,l=0,m=0,n=0,o=0;o=i;i=i+48|0;e=o+32|0;f=o+28|0;m=o+24|0;j=o+20|0;g=o+16|0;n=o+12|0;l=o+8|0;k=o+4|0;h=o;
c[e>>2]=a;c[f>>2]=b;c[m>>2]=d;c[g>>2]=98;c[n>>2]=c[m>>2];c[j>
x3e;2]=0;while(1){if((c[j>>2]|0)>=(c[f>>2]|0))break;c[k>>2]=c[(c[e>>2]|0)+((c[j>
;>2]|0)*12|0)+4>>2];c[h>>2]=(c[m>>2]|0)-(c[k>>2]|0);if((c[h>>2]|0)<0
)c[h>>2]=0-(c[h>>2]|0);if((c[h>>2]|0)<(c[g>>2]|0)){c[g>>2]=c[h>>
;2];c[n>>2]=c[k>>2]}c[j>>2]=(c[j>>2]|0)+1}c[l>>2]=(c[n>>2]|0)+32&
;-64;f=c[m>>2]|0;e=c[l>>2]|0;if((c[m>>2]|0)>=(c[n>>2]|0)){if((f|0)>=(e+48|0)){
n=c[m>>2]|0;i=o;return n|0}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}else{if((f|0)<
;=(e-48|0)){n=c[m>>2]|0;i=o;return n|0}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}return
0}function wm(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,y=0,
z=0;z=i;i=i+80|0;h=z+64|0;u=z+60|0;v=z+56|0;j=z+52|0;k=z+48|0;q=z+44|0;w=z+40|0;p=z+36|0;x=z+32|0;l=z+28|0;m=z+24|0;s=z+20|0;n=z
+16|0;t=z+12|0;y=z+8|0;o=z+4|0;r=z;c[h>>2]=a;c[u>>2]=b;c[v>>2]=e;c[j>>2]=f;c[k>>
;2]=g;c[r>>2]=64;do if(!(c[(c[h>>2]|0)+108>>2]&4)){if((d[(c[u>>2]|0)+12>>
0]|0)&1|0?(d[(c[v>>2]|0)+12>>0]|0)&1|0:0)if((c[k>>2]|0)==1){c[r>>2]=55;break}else
{c[r>>2]=49;break}if((c[k>>2]|0)==1){c[r>>2]=61;break}else{c[r>>2]=59;break}}while(0);c[
q>>2]=(c[(c[v>>2]|0)+4>>2]|0)-(c[(c[u>>2]|0)+4>>2]|0);c[w>>2]=um(c[h
>>2]|0,c[k>>2]|0,c[q>>2]|0,d[(c[u>>2]|0)+12>>0]|0,d[(c[v>>2]|0)+12
x3e;>0]|0)|0;c[p>>2]=(((c[(c[u>>2]|0)+4>>2]|0)+(c[(c[v>>2]|0)+4>>2]|0)|0)/
2|0)+(c[j>>2]|0);c[x>>2]=(c[p>>2]|0)-((c[w>>2]|0)/2|0);c[l>>2]=(c[x>>
;2]|0)+(c[w>>2]|0);c[m>>2]=(c[x>>2]|0)-(c[x>>2]&-64);c[n>>2]=(c[l>
x3e;2]|0)-(c[l>>2]&-64);c[s>>2]=64-(c[m>>2]|0);c[t>>2]=64-(c[n>>2]|0);c[y
>>2]=0;do if(!((c[m>>2]|0)==0|(c[n>>2]|0)==0)){if((c[w>>2]|0)<=(c[r>>2]|0
)){if((c[n>>2]|0)>=(c[w>>2]|0))break;if((c[s>>2]|0)<=(c[n>>2]|0)){c[y>>
;2]=c[s>>2];break}else{c[y>>2]=0-(c[n>>2]|0);break}}if((c[r>>2]|0)<64){if((c[m>
;>2]|0)>=(c[r>>2]|0))break;if((c[s>>2]|0)>=(c[r>>2]|0))break;if((c[n>>2]|
0)>=(c[r>>2]|0))break;if((c[t>>2]|0)>=(c[r>>2]|0))break}c[o>>2]=(c[w>>
;2]|0)%64|0;if((c[o>>2]|0)<32){if((c[s>>2]|0)<=(c[o>>2]|0))break;if((c[n>>2]|0
)<=(c[o>>2]|0))break}else c[o>>2]=64-(c[r>>2]|0);c[m>>2]=(c[r>>2]|0)-(c[s
>>2]|0);c[s>>2]=(c[s>>2]|0)-(c[o>>2]|0);c[t>>2]=(c[r>>2]|0)-(c[n>
;>2]|0);c[n>>2]=(c[n>>2]|0)-(c[o>>2]|0);if((c[m>>2]|0)<=(c[s>>2]|0))
c[s>>2]=0-(c[m>>2]|0);if((c[n>>2]|0)<=(c[t>>2]|0))c[t>>2]=0-(c[n>>
;2]|0);q=c[s>>2]|0;r=c[t>>2]|0;if((((c[s>>2]|0)<0?0-q|0:q)|0)<=(((c[t>>2]|0)
x3c;0?0-r|0:r)|0)){c[y>>2]=c[s>>2];break}else{c[y>>2]=c[t>>2];break}}while(0);do if(!(c[(
c[h>>2]|0)+108>>2]&4)){if((c[y>>2]|0)>14){c[y>>2]=14;break}if((c[y>>
2]|0)<-14)c[y>>2]=-14}while(0);c[x>>2]=(c[x>>2]|0)+(c[y>>2]|0);h=c[x>>2]|
0;if((c[(c[u>>2]|0)+4>>2]|0)<(c[(c[v>>2]|0)+4>>2]|0)){c[(c[u>>2]|0)+8>
;>2]=h;c[(c[v>>2]|0)+8>>2]=(c[x>>2]|0)+(c[w>>2]|0);y=c[y>>2]|0;i=z;return
y|0}else{c[(c[u>>2]|0)+8>>2]=h+(c[w>>2]|0);c[(c[v>>2]|0)+8>>2]=c[x>>
;2];y=c[y>>2]|0;i=z;return y|0}return 0}function xm(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;c[h>>2]=c[h>>2];c[(c[f>>2]|
0)+8>>2]=(c[(c[g>>2]|0)+8>>2]|0)+((c[(c[f>>2]|0)+4>>2]|0)-(c[(c[g>>2
]|0)+4>>2]|0));i=e;return}function ym(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;r=i;i=i+48|
0;g=r+36|0;j=r+32|0;s=r+28|0;h=r+24|0;m=r+20|0;l=r+16|0;q=r+40|0;p=r+12|0;n=r+8|0;k=r+4|0;o=r;c[g>>2]=d;c[j>>
;2]=f;c[s>>2]=(c[g>>2]|0)+48+((c[j>>2]|0)*28|0);c[h>>2]=c[(c[s>>2]|0)+20>
x3e;2];c[m>>2]=(c[h>>2]|0)+((c[(c[s>>2]|0)+12>>2]|0)*48|0);if((c[j>>2]|0)==0?c
[(c[g>>2]|0)+108>>2]&1|0:0)g=1;else if((c[j>>2]|0)==1)g=(c[(c[g>>2]|0)+108>>
;2]&2|0)!=0;else g=0;a[q>>0]=g&1;c[l>>2]=c[h>>2];while(1){if((c[l>>2]|0)>
x3e;>0>=(c[m>>2]|0)>>>0)break;c[p>>2]=c[(c[l>>2]|0)+40>>2];if(a
[q>>0]|0)do{c[n>>2]=c[(c[p>>2]|0)+40>>2];while(1){g=c[(c[l>>2]|0)+8>>
;2]|0;f=c[n>>2]|0;if(!(c[j>>2]|0)){c[f+16>>2]=g;s=c[n>>2]|0;b[s>>1]=e[s>
x3e;1]|64}else{c[f+20>>2]=g;s=c[n>>2]|0;b[s>>1]=e[s>>1]|128}if((c[n>>2]|0)==(c
[(c[p>>2]|0)+44>>2]|0))break;c[n>>2]=c[(c[n>>2]|0)+32>>2]}c[p>>2]=c[(
c[p>>2]|0)+16>>2]}while((c[p>>2]|0)!=(c[(c[l>>2]|0)+40>>2]|0));else{c[k>
x3e;2]=(c[(c[l>>2]|0)+8>>2]|0)-(c[(c[l>>2]|0)+4>>2]|0);do{c[o>>2]=c[(c[p>
x3e;2]|0)+40>>2];while(1){g=c[k>>2]|0;f=c[o>>2]|0;if(!(c[j>>2]|0)){s=f+16|0;c[s>>
;2]=(c[s>>2]|0)+g;s=c[o>>2]|0;b[s>>1]=e[s>>1]|64}else{s=f+20|0;c[s>>2]=(c[s>
;>2]|0)+g;s=c[o>>2]|0;b[s>>1]=e[s>>1]|128}if((c[o>>2]|0)==(c[(c[p>>2]|0)+
44>>2]|0))break;c[o>>2]=c[(c[o>>2]|0)+32>>2]}c[p>>2]=c[(c[p>>2]|0)+16
>>2]}while((c[p>>2]|0)!=(c[(c[l>>2]|0)+40>>2]|0))}c[l>>2]=(c[l>>2]|0
)+48}i=r;return}function zm(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=
jm(c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Am(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;km(c[f>>2]|0,c[e>>2]|0);i=d;return}function Bm(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=mm(c[f>>2]|0,c[e>>2]|0)|0;i=
d;return b|0}function Cm(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
x3e;>2]=b;c[f>>2]=d;b=nm(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return b|0}function Dm
(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;l=g+16|0;k=g+12|0;m=g+8|0;j=g+4|0;h=g;c[l>
;>2]=a;c[k>>2]=b;c[m>>2]=d;c[j>>2]=e;c[h>>2]=f;c[m>>2]=c[m>>2];
b=Em((c[l>>2]|0)+20|0,c[(c[k>>2]|0)+4>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=g;return
b|0}function Em(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;q=i;i=i+64|0;j=q+60|0;k=q+56|0;
f=q+52|0;l=q+48|0;m=q+44|0;n=q+40|0;h=q+36|0;p=q+8|0;o=q+4|0;g=q;c[k>>2]=a;c[f>>2]=b;c[l>>2]=d;c[m
>>2]=e;c[h>>2]=c[(c[f>>2]|0)+88>>2];if(!(c[h>>2]|0)){c[j>>2]=6;p=c[j
>>2]|0;i=q;return p|0};c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[p+16
x3e;>2]=0;c[p+20>>2]=0;c[p+24>>2]=0;c[p>>2]=c[f>>2];c[p+4>>2]=c[(c[h>
;>2]|0)+12+4>>2];c[p+12>>2]=0;c[p+8>>2]=c[(c[h>>2]|0)+12+8>>2];c[p+16>
;>2]=0;c[p+20>>2]=(c[m>>2]|0)>>>16&15;c[p+24>>2]=0;c[n>>2]=Fm(c
[k>>2]|0,c[f>>2]|0)|0;do if((c[n>>2]|0)==0?(c[g>>2]=0,c[n>>2]=Jm(c[(c[k>
x3e;2]|0)+4>>2]|0,c[l>>2]|0,c[g>>2]|0,o)|0,(c[n>>2]|0)==0):0){c[(c[k>>2]|0)+136
>>2]=c[o>>2];f=c[o>>2]|0;if(c[(c[c[o>>2]>>2]|0)+16>>2]|0)Ra[c[(c[f
x3e;>2]|0)+16>>2]&7](c[o>>2]|0,p);else{h=f+4|0;c[h>>2]=c[p>>2];c[h+4>>
;2]=c[p+4>>2];c[h+8>>2]=c[p+8>>2];c[h+12>>2]=c[p+12>>2];c[h+16>>2]=c
[p+16>>2];c[h+20>>2]=c[p+20>>2];c[h+24>>2]=c[p+24>>2]}c[m>>2]=c[m>
;>2]|2049;c[m>>2]=c[m>>2]&-5;if(c[(c[c[o>>2]>>2]|0)+24>>2]|0?(c[n>
;>2]=Ya[c[(c[c[o>>2]>>2]|0)+24>>2]&127]((c[k>>2]|0)+12|0,c[o>>2]|0)|
0,c[n>>2]|0):0)break;c[n>>2]=Km(c[k>>2]|0,p,c[l>>2]|0,c[m>>2]|0,0)|0}while(0);
c[j>>2]=c[n>>2];p=c[j>>2]|0;i=q;return p|0}function Fm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=
i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;c[c[d>>2]>>2]=c[e>
;>2];c[(c[d>>2]|0)+4>>2]=c[(c[e>>2]|0)+116>>2];dc(c[(c[d>>2]|0)+8>
x3e;2]|0);if(c[(c[d>>2]|0)+4>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[f>>2]=Gm(c[e>>
;2]|0,(c[d>>2]|0)+4|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[(c[e>>2]|0)+116>
;>2]=c[(c[d>>2]|0)+4>>2];c[(c[e>>2]|0)+116+4>>2]=35;a=c[f>>2]|0;i=g;return
a|0}function Gm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;e=h+12|0;f=h+8|0;j=h+4|0;g=h;c[d>>
2]=a;c[e>>2]=b;c[g>>2]=0;c[j>>2]=c[(c[d>>2]|0)+100>>2];c[g>>2]=bc(c[
j>>2]|0,28+(c[(c[d>>2]|0)+16>>2]|0)|0,f)|0;if((c[f>>2]|0)==0?(c[c[g>>2]>
x3e;2]=c[d>>2],c[(c[g>>2]|0)+4>>2]=c[(c[d>>2]|0)+16>>2],c[(c[g>>2]|0
)+8>>2]=(c[g>>2]|0)+28,c[f>>2]=Hm(c[g>>2]|0)|0,c[f>>2]|0):0){Im(c[g>>
;2]|0);c[g>>2]=0}c[c[e>>2]>>2]=c[g>>2];i=h;return c[f>>2]|0}function Hm(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;s=i;i=i+64|0;e=s+48|0;h=s+44|0;j=s+40|0;p=s+36|0;m=s+32|0;r=s+28|
0;n=s+24|0;g=s+20|0;q=s+16|0;f=s+12|0;k=s+8|0;l=s+4|0;o=s;c[e>>2]=b;c[h>>2]=0;c[j>>2]=c[c[e>
x3e;2]>>2];c[p>>2]=c[(c[j>>2]|0)+92>>2];c[m>>2]=c[(c[e>>2]|0)+8>
;>2];Ns(c[(c[e>>2]|0)+8>>2]|0,127,c[(c[e>>2]|0)+4>>2]|0)|0;c[h>>2]=Id(c[j
>>2]|0,1970170211)|0;a:do if(c[h>>2]|0)c[h>>2]=0;else{c[r>>2]=0;while(1){if(!(c[3900+(c[
r>>2]<<2)>>2]|0))break;c[g>>2]=c[3900+(c[r>>2]<<2)>>2];b:do
if(c[(c[g>>2]|0)+4>>2]|0){c[q>>2]=c[(c[g>>2]|0)+4>>2];while(1){if(!(c[c[q>
;>2]>>2]|0))break b;c[f>>2]=c[c[q>>2]>>2];c[k>>2]=Dc(c[j>>2]|0,
c[f>>2]|0)|0;if((c[k>>2]|0?(c[k>>2]|0)>>>0<(c[(c[e>>2]|0)+4>>
;2]|0)>>>0:0)?(d[(c[m>>2]|0)+(c[k>>2]|0)>>0]|0|0)==127:0)a[(c[m>>2]|0)+(c
[k>>2]|0)>>0]=c[r>>2];while(1){c[f>>2]=Md(c[j>>2]|0,c[f>>2]|0,k)|0;if
(!(c[k>>2]|0))break;if((c[f>>2]|0)>>>0>(c[(c[q>>2]|0)+4>>2]|0)>
x3e;>0)break;if((c[k>>2]|0)>>>0>=(c[(c[e>>2]|0)+4>>2]|0)>>>
;0)continue;if((d[(c[m>>2]|0)+(c[k>>2]|0)>>0]|0|0)!=127)continue;a[(c[m>>2]|0)+(c[k>
;>2]|0)>>0]=c[r>>2]}c[q>>2]=(c[q>>2]|0)+8}}while(0);c[r>>2]=(c[r>>
;2]|0)+1}c[n>>2]=48;while(1){if((c[n>>2]|0)>>>0>57)break a;c[l>>2]=Dc(c[j>
;>2]|0,c[n>>2]|0)|0;if(c[l>>2]|0?(c[l>>2]|0)>>>0<(c[(c[e>>2]|0)+
4>>2]|0)>>>0:0){r=(c[m>>2]|0)+(c[l>>2]|0)|0;a[r>>0]=d[r>>0]|0|128
}c[n>>2]=(c[n>>2]|0)+1}}while(0);c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[e>
x3e;2]|0)+4>>2]|0))break;if(((d[(c[m>>2]|0)+(c[o>>2]|0)>>0]|0)&-129|0)==127){r=(c[m
>>2]|0)+(c[o>>2]|0)|0;a[r>>0]=(d[r>>0]|0)&-128;r=(c[m>>2]|0)+(c[o>
x3e;2]|0)|0;a[r>>0]=d[r>>0]|0|2}c[o>>2]=(c[o>>2]|0)+1}Jd(c[j>>2]|0,c[p>
x3e;2]|0)|0;i=s;return c[h>>2]|0}function Im(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;f=g+4|0;d=
g;c[b>>2]=a;if(!(c[b>>2]|0)){i=g;return}c[e>>2]=c[(c[c[b>>2]>>2]|0)+100>
x3e;2];c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=4)break;if(c[(c[b>>2]|0)+12+(c[f
>>2]<<2)>>2]|0){c[d>>2]=c[3900+(c[f>>2]<<2)>>2];if(c[(c[d
x3e;>2]|0)+20>>2]|0)Va[c[(c[d>>2]|0)+20>>2]&63](c[(c[b>>2]|0)+12+(c[f>>
;2]<<2)>>2]|0);Fb(c[e>>2]|0,c[(c[b>>2]|0)+12+(c[f>>2]<<2)>>
;2]|0);c[(c[b>>2]|0)+12+(c[f>>2]<<2)>>2]=0}c[f>>2]=(c[f>>2]|0)+1}c[(
c[b>>2]|0)+4>>2]=0;c[(c[b>>2]|0)+8>>2]=0;c[c[b>>2]>>2]=0;Fb(c[e>
;>2]|0,c[b>>2]|0);c[b>>2]=0;i=g;return}function Jm(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;q=i;i=i+48|0;g=q+40|0;h=q+36|0;r=q+32|0;j=q+28|0;o=q+24|0;m=q+20|0;k=q+16|0;p=q+12|0;l=q+4|0;n=q;c[
g>>2]=a;c[h>>2]=b;c[r>>2]=e;c[j>>2]=f;c[o>>2]=0;c[p>>2]=c[r>>
;2]&15;c[q+8>>2]=5;c[l>>2]=0;if((c[h>>2]|0)>>>0>=(c[(c[g>>2]|0)+
4>>2]|0)>>>0){c[l>>2]=6;p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l
>>2]|0;i=q;return r|0}c[m>>2]=c[p>>2];if(!((c[m>>2]|0)!=0?((c[m>>2]|0)+1|0)>
;>>0<5:0))c[m>>2]=(d[(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]|0)>>0]|0)
x26;127;c[k>>2]=c[3900+(c[m>>2]<<2)>>2];if(!(c[p>>2]|0))c[p>>2]=c[c[
k>>2]>>2];c[o>>2]=c[(c[g>>2]|0)+12+(c[c[k>>2]>>2]<<2)>
;>2];if(c[o>>2]|0){p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l>>2]|0;i=q;return
r|0}c[n>>2]=c[(c[c[g>>2]>>2]|0)+100>>2];c[o>>2]=bc(c[n>>2]|0,c[(c[k
>>2]|0)+8>>2]|0,l)|0;if(c[l>>2]|0){p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p
;r=c[l>>2]|0;i=q;return r|0}c[c[o>>2]>>2]=c[k>>2];if(c[(c[k>>2]|0)+12>>
;2]|0?(c[l>>2]=Ya[c[(c[k>>2]|0)+12>>2]&127](c[o>>2]|0,c[c[g>>2]>>
;2]|0)|0,c[l>>2]|0):0){if(c[(c[k>>2]|0)+20>>2]|0)Va[c[(c[k>>2]|0)+20>>2]&
63](c[o>>2]|0);Fb(c[n>>2]|0,c[o>>2]|0);c[o>>2]=0;p=c[o>>2]|0;r=c[j>>
2]|0;c[r>>2]=p;r=c[l>>2]|0;i=q;return r|0}c[(c[g>>2]|0)+12+(c[c[k>>2]>>2]<
;<2)>>2]=c[o>>2];p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l>>2]|0;
i=q;return r|0}function Km(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;da=i;i=i+240|0;S=da+236|0;T=da+232|0;U=da+228|0;y=da+224|0;V=da+220|0;X=da+216|0;ea=da+212|0;Y=da+208|0;$=da+204|0;
Z=da+200|0;aa=da+196|0;_=da+192|0;l=da+176|0;r=da+168|0;q=da+164|0;p=da+160|0;u=da+156|0;x=da+152|0;m=da+148|0;n=da+144|0;o=da+140
|0;s=da+136|0;v=da+132|0;t=da+128|0;w=da+124|0;E=da+120|0;J=da+116|0;G=da+112|0;O=da+108|0;P=da+104|0;M=da+96|0;N=da+88|0;Q=da+84
|0;R=da+80|0;I=da+76|0;H=da+72|0;F=da+68|0;z=da+64|0;D=da+60|0;B=da+56|0;C=da+52|0;K=da+48|0;L=da+44|0;A=da+24|0;W=da+8|0;ba=da;
c[S>>2]=f;c[T>>2]=g;c[U>>2]=h;c[y>>2]=j;c[V>>2]=k;c[ea>>2]=c[c[S>
;>2]>>2];c[Y>>2]=c[(c[S>>2]|0)+8>>2];c[$>>2]=c[(c[S>>2]|0)+136
x3e;>2];c[Z>>2]=(c[S>>2]|0)+12;c[aa>>2]=c[(c[ea>>2]|0)+84>>2];c[_>
x3e;2]=c[(c[aa>>2]|0)+156>>2];c[X>>2]=Cb(c[ea>>2]|0,c[U>>2]|0,c[y>>2
]|0)|0;if(c[X>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}a[(c[S>>2]|0)+140>>0]=a[(c[_>>
;2]|0)+8>>0]|0;if(a[(c[S>>2]|0)+140>>0]|0){ea=(c[S>>2]|0)+144|0;g=(c[_>>2]|0)+
12|0;c[ea>>2]=c[g>>2];c[ea+4>>2]=c[g+4>>2];c[ea+8>>2]=c[g+8>>2];c[ea
+12>>2]=c[g+12>>2];ea=(c[S>>2]|0)+160|0;g=(c[_>>2]|0)+28|0;c[ea>>2]=c[g>
x3e;2];c[ea+4>>2]=c[g+4>>2];ea=(c[S>>2]|0)+144|0;c[l>>2]=c[ea>>2];c[l+4>
x3e;2]=c[ea+4>>2];c[l+8>>2]=c[ea+8>>2];c[l+12>>2]=c[ea+12>>2];Wb(l)|0;Lb((c[S
x3e;>2]|0)+160|0,l)}c[(c[aa>>2]|0)+56>>2]=c[(c[aa>>2]|0)+24+16>>2];c[(c[aa>>
;2]|0)+60>>2]=c[(c[aa>>2]|0)+24+28>>2];k=c[(c[aa>>2]|0)+72>>2]|0;a:do if((k|0)
x3e;=1869968492){switch(k|0){case 1869968492:break;default:{ca=49;break a}}if(a[(c[S>>2]|0)+140>>0]|0)Nb((c[
aa>>2]|0)+108|0,c[(c[S>>2]|0)+160>>2]|0,c[(c[S>>2]|0)+160+4>>2]|0);if(((b[(c[aa
>>2]|0)+108+2>>1]|0)+4|0)!=0?((b[(c[Y>>2]|0)+20+2>>1]|0)+(b[(c[Y>>2]|0)+56+2
x3e;>1]|0)+((b[(c[aa>>2]|0)+108+2>>1]|0)+4)|0)>>>0>(c[(c[Y>>2]|0)+4>
x3e;2]|0)>>>0:0)ca=11;else if((b[(c[aa>>2]|0)+108>>1]|0)!=0?((b[(c[Y>>2]|0)+20>
;>1]|0)+(b[(c[Y>>2]|0)+56>>1]|0)+(b[(c[aa>>2]|0)+108>>1]|0)|0)>>>0
x3e;(c[(c[Y>>2]|0)+8>>2]|0)>>>0:0)ca=11;else k=0;if((ca|0)==11)k=kc(c[Y>>2]|0,(b[(c
[aa>>2]|0)+108+2>>1]|0)+4|0,b[(c[aa>>2]|0)+108>>1]|0)|0;c[X>>2]=k;if(c[X>
x3e;2]|0){ea=c[X>>2]|0;i=da;return ea|0}Ss(c[(c[Y>>2]|0)+56+4>>2]|0,c[(c[aa>>2]|0)+108+4
>>2]|0,b[(c[aa>>2]|0)+108+2>>1]<<3|0)|0;Ss(c[(c[Y>>2]|0)+56+12>>2]|0
,c[(c[aa>>2]|0)+108+12>>2]|0,b[(c[aa>>2]|0)+108>>1]<<1|0)|0;Ss(c[(c[Y>>
;2]|0)+56+8>>2]|0,c[(c[aa>>2]|0)+108+8>>2]|0,b[(c[aa>>2]|0)+108+2>>1]|0)|0;b[(
c[Y>>2]|0)+56+2>>1]=b[(c[aa>>2]|0)+108+2>>1]|0;b[(c[Y>>2]|0)+56>>1]=
b[(c[aa>>2]|0)+108>>1]|0;c[(c[S>>2]|0)+168>>2]=c[(c[Z>>2]|0)+8>>2];c
[(c[S>>2]|0)+168+4>>2]=c[(c[Z>>2]|0)+16>>2];ea=Mb(c[(c[aa>>2]|0)+24+16>
x3e;2]|0,c[(c[Z>>2]|0)+4>>2]|0)|0;c[(c[S>>2]|0)+176>>2]=ea+(c[(c[Z>>2]|0)+8>
;>2]|0);c[(c[S>>2]|0)+176+4>>2]=c[(c[Z>>2]|0)+16>>2];if(b[(c[aa>>2]|0)+108
+2>>1]|0){if(c[(c[c[$>>2]>>2]|0)+28>>2]|0)Oa[c[(c[c[$>>2]>>2]|0)+28
x3e;>2]&63](c[Z>>2]|0,(c[Y>>2]|0)+56|0,c[$>>2]|0)|0;do if((c[(c[T>>2]|0)+20>
;>2]|0)!=1){c[m>>2]=(c[Z>>2]|0)+48;c[n>>2]=c[(c[m>>2]|0)+20>>2];c[o>
x3e;2]=(c[n>>2]|0)+((c[(c[m>>2]|0)+12>>2]|0)*48|0)+-48;if((c[(c[m>>2]|0)+12>>2
]|0)>1?(c[(c[Z>>2]|0)+104>>2]&4|0)==0:0){c[r>>2]=(c[(c[S>>2]|0)+176>>
;2]|0)-(c[(c[o>>2]|0)+4>>2]|0);c[q>>2]=c[(c[n>>2]|0)+4>>2];c[p>>2]=c
[(c[n>>2]|0)+8>>2];c[u>>2]=(c[p>>2]|0)-(c[q>>2]|0);c[x>>2]=(c[(c[o
x3e;>2]|0)+8>>2]|0)+(c[r>>2]|0);if((c[q>>2]|0)<24)c[u>>2]=(c[u>>2]|0
)-8;if((c[r>>2]|0)<24)c[x>>2]=(c[x>>2]|0)+8;c[(c[S>>2]|0)+168>>2]=(c[u>
;>2]|0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[x>>2]|0)+32&-64;if((c[q>>2]|0)>
;0?(c[(c[S>>2]|0)+168>>2]|0)>=(c[p>>2]|0):0){ea=(c[S>>2]|0)+168|0;c[ea>>2
]=(c[ea>>2]|0)-64}if((c[r>>2]|0)>0?(c[(c[S>>2]|0)+176>>2]|0)<=(c[(c[o>>
;2]|0)+8>>2]|0):0){ea=(c[S>>2]|0)+176|0;c[ea>>2]=(c[ea>>2]|0)+64}c[(c[aa>>2]|0
)+144>>2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[u>>2]|0);c[(c[aa>>2]|0)+148>>
2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[x>>2]|0);break}c[s>>2]=c[(c[S>>2]|0)+168>
x3e;2];c[v>>2]=c[(c[S>>2]|0)+176>>2];c[(c[S>>2]|0)+168>>2]=(c[s>>2]|
0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[v>>2]|0)+32&-64;c[(c[aa>>2]|0)+144>>
;2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[s>>2]|0);c[(c[aa>>2]|0)+148>>2]=(c[(c[S>
x3e;2]|0)+176>>2]|0)-(c[v>>2]|0)}else{c[t>>2]=c[(c[S>>2]|0)+168>>2];c[w>
x3e;2]=c[(c[S>>2]|0)+176>>2];c[(c[S>>2]|0)+168>>2]=(c[t>>2]|0)+(c[(c[Z>
x3e;2]|0)+116>>2]|0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[w>>2]|0)+(c[(c[Z>>2]|
0)+120>>2]|0)+32&-64;c[(c[aa>>2]|0)+144>>2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[
t>>2]|0);c[(c[aa>>2]|0)+148>>2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[w>>2]|0
)}while(0);oc(c[Y>>2]|0)}}else{switch(k|0){case 1668246896:break;default:{ca=49;break a}}c[J>>2]=c[(c[aa>
;>2]|0)+128>>2];c[O>>2]=b[(c[Y>>2]|0)+20+2>>1];c[X>>2]=lc(c[Y>>
2]|0,c[J>>2]|0)|0;if(c[X>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}Ss(c[(c[Y>>2]|0)+56+32>
;>2]|0,c[(c[aa>>2]|0)+132>>2]|0,c[J>>2]<<5|0)|0;c[(c[Y>>2]|0)+56+28>
x3e;2]=c[J>>2];c[G>>2]=c[(c[Y>>2]|0)+20+28>>2];c[E>>2]=0;while(1){if((c[E>
;>2]|0)>>>0>=(c[J>>2]|0)>>>0)break a;c[P>>2]=(c[(c[Y>>2]|0
)+20+32>>2]|0)+(c[G>>2]<<5)+(c[E>>2]<<5);ea=(c[S>>2]|0)+168|0;c[M>
;>2]=c[ea>>2];c[M+4>>2]=c[ea+4>>2];ea=(c[S>>2]|0)+176|0;c[N>>2]=c[ea>
;>2];c[N+4>>2]=c[ea+4>>2];c[F>>2]=b[(c[Y>>2]|0)+20+2>>1];c[X>>2
]=Km(c[S>>2]|0,c[T>>2]|0,c[c[P>>2]>>2]|0,c[y>>2]|0,(c[V>>2]|0)+1|0)|
0;if(c[X>>2]|0){ca=63;break}c[P>>2]=(c[(c[Y>>2]|0)+20+32>>2]|0)+(c[G>>2]<
x3c;5)+(c[E>>2]<<5);k=(c[S>>2]|0)+168|0;if(e[(c[P>>2]|0)+4>>1]&512|0){c[M
>>2]=c[k>>2];c[M+4>>2]=c[k+4>>2];ea=(c[S>>2]|0)+176|0;c[N>>2]=c[ea
x3e;>2];c[N+4>>2]=c[ea+4>>2]}else{c[k>>2]=c[M>>2];c[k+4>>2]=c[M+4>
x3e;2];ea=(c[S>>2]|0)+176|0;c[ea>>2]=c[N>>2];c[ea+4>>2]=c[N+4>>2]}c[I>>
;2]=b[(c[Y>>2]|0)+20+2>>1];c[H>>2]=(c[I>>2]|0)-(c[F>>2]|0);b:do if(e[(c[P>
;>2]|0)+4>>1]&200|0){c[z>>2]=(c[(c[Y>>2]|0)+20+4>>2]|0)+(c[F>>2]<
;<3);c[D>>2]=(c[z>>2]|0)+(c[H>>2]<<3);while(1){if((c[z>>2]|0)>>
x3e;0>=(c[D>>2]|0)>>>0)break b;Lb(c[z>>2]|0,(c[P>>2]|0)+16|0);c[z>>2
]=(c[z>>2]|0)+8}}while(0);k=c[(c[P>>2]|0)+8>>2]|0;if(e[(c[P>>2]|0)+4>>1]&
2|0){ea=Mb(k,c[(c[Z>>2]|0)+4>>2]|0)|0;c[Q>>2]=ea+(c[(c[Z>>2]|0)+8>>2]|0);ea=Mb
(c[(c[P>>2]|0)+12>>2]|0,c[(c[Z>>2]|0)+12>>2]|0)|0;c[R>>2]=ea+(c[(c[Z>>
;2]|0)+16>>2]|0);c[Q>>2]=(c[Q>>2]|0)+32&-64;c[R>>2]=(c[R>>2]|0)+32&-
64}else{c[B>>2]=k;c[C>>2]=c[(c[P>>2]|0)+12>>2];if(((c[O>>2]|0)+(c[B>>
;2]|0)|0)>>>0>=(c[F>>2]|0)>>>0)break;if((c[C>>2]|0)>>>0>
;=(c[H>>2]|0)>>>0)break;c[C>>2]=(c[C>>2]|0)+(c[F>>2]|0);c[K>>2]=(
c[(c[Y>>2]|0)+20+4>>2]|0)+(c[O>>2]<<3)+(c[B>>2]<<3);c[L>>2
]=(c[(c[Y>>2]|0)+20+4>>2]|0)+(c[O>>2]<<3)+(c[C>>2]<<3);c[Q>>
;2]=(c[c[K>>2]>>2]|0)-(c[c[L>>2]>>2]|0);c[R>>2]=(c[(c[K>>2]|0)+4>
;>2]|0)-(c[(c[L>>2]|0)+4>>2]|0)}ea=(c[Y>>2]|0)+20|0;c[A>>2]=c[ea>>2];c[A+
4>>2]=c[ea+4>>2];c[A+8>>2]=c[ea+8>>2];c[A+12>>2]=c[ea+12>>2];c[A+16
x3e;>2]=c[ea+16>>2];ea=A+4|0;c[ea>>2]=(c[ea>>2]|0)+(c[F>>2]<<3);b[A+2>
;>1]=c[H>>2];Nb(A,c[Q>>2]|0,c[R>>2]|0);c[E>>2]=(c[E>>2]|0)+1}if((ca|0)==63
){ea=c[X>>2]|0;i=da;return ea|0}c[X>>2]=21;ea=c[X>>2]|0;i=da;return ea|0}while(0);if((ca|0)==49)c[
X>>2]=7;if(c[V>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}c[ba>>2]=(c[(c[aa>>2]|0)+24
+20>>2]|0)-(c[(c[aa>>2]|0)+24+8>>2]|0);c[ba+4>>2]=(c[(c[aa>>2]|0)+24+24>
x3e;2]|0)-(c[(c[aa>>2]|0)+24+12>>2]|0);c[ba>>2]=Mb(c[ba>>2]|0,c[(c[$>>2]|0)+4+
4>>2]|0)|0;c[ba+4>>2]=Mb(c[ba+4>>2]|0,c[(c[$>>2]|0)+4+8>>2]|0)|0;if(a[(c[S>
;>2]|0)+140>>0]|0){Kb((c[Y>>2]|0)+20|0,(c[S>>2]|0)+144|0);Lb(ba,(c[S>>2]|0)+144|0)}
if(c[(c[S>>2]|0)+168>>2]|0)Nb((c[Y>>2]|0)+20|0,0-(c[(c[S>>2]|0)+168>>2]|0)|0,0
);_d((c[Y>>2]|0)+20|0,W);c[W>>2]=c[W>>2]&-64;c[W+4>>2]=c[W+4>>2]&-64
;c[W+8>>2]=(c[W+8>>2]|0)+63&-64;c[W+12>>2]=(c[W+12>>2]|0)+63&-64;c[(c[aa>
x3e;2]|0)+24>>2]=(c[W+8>>2]|0)-(c[W>>2]|0);c[(c[aa>>2]|0)+24+4>>2]=(c[W+12>
;>2]|0)-(c[W+4>>2]|0);c[(c[aa>>2]|0)+24+8>>2]=c[W>>2];c[(c[aa>>2]|0)+24+12
>>2]=c[W+12>>2];c[(c[aa>>2]|0)+24+20>>2]=(c[W>>2]|0)+(c[ba>>2]|0)&
;-64;c[(c[aa>>2]|0)+24+24>>2]=(c[W+12>>2]|0)+(c[ba+4>>2]|0)&-64;do if(!(c[(c[(c[aa
x3e;>2]|0)+4>>2]|0)+8>>2]&4|0)){if((Lm(c[(c[S>>2]|0)+4>>2]|0,c[U>>2]|
0)|0)&255|0?d[(c[$>>2]|0)+32>>0]|0:0){ca=58;break}if(c[(c[aa>>2]|0)+24+16>>2]|0)c[(
c[aa>>2]|0)+24+16>>2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[(c[S>>2]|0)+168>>
2]|0)}else ca=58;while(0);if((ca|0)==58){ea=Mb(c[(c[aa>>2]|0)+24+16>>2]|0,c[(c[$>>2]|0)+4+4>
x3e;2]|0)|0;c[(c[aa>>2]|0)+24+16>>2]=ea;c[(c[aa>>2]|0)+144>>2]=0;c[(c[aa>>2]|0
)+148>>2]=0}ea=Mb(c[(c[aa>>2]|0)+24+28>>2]|0,c[(c[$>>2]|0)+4+8>>2]|0)|0;c[(c[aa
>>2]|0)+24+28>>2]=ea;c[(c[aa>>2]|0)+24+16>>2]=(c[(c[aa>>2]|0)+24+16>>
;2]|0)+32&-64;c[(c[aa>>2]|0)+24+28>>2]=(c[(c[aa>>2]|0)+24+28>>2]|0)+32&-64;dc(
c[c[_>>2]>>2]|0);c[X>>2]=pc(c[c[_>>2]>>2]|0,c[Y>>2]|0)|0;if(c[X>
;>2]|0){ea=c[X>>2]|0;i=da;return ea|0}ea=(c[aa>>2]|0)+108|0;ca=(c[c[_>>2]>>2]|0)+20
|0;c[ea>>2]=c[ca>>2];c[ea+4>>2]=c[ca+4>>2];c[ea+8>>2]=c[ca+8>>2];c[ea
+12>>2]=c[ca+12>>2];c[ea+16>>2]=c[ca+16>>2];c[(c[aa>>2]|0)+72>>2]=1869968492
;ea=c[X>>2]|0;i=da;return ea|0}function Lm(b,e){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[g
x3e;>2]=b;c[h>>2]=e;if((c[h>>2]|0)>>>0<(c[(c[g>>2]|0)+4>>2]|0)
x3e;>>0){a[f>>0]=(d[(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]|0)>>0]|0)&
128;b=a[f>>0]|0;i=j;return b|0}else{a[f>>0]=0;b=a[f>>0]|0;i=j;return b|0}return 0}function Mm(a){a
=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Nm((c[d>>2]|0)+20|0,c[c[(c[d>>2]|0)+4>>2]
x3e;>2]|0)|0;i=b;return a|0}function Nm(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
x3e;>2]=b;Ns(c[e>>2]|0,0,184)|0;Hl((c[e>>2]|0)+12|0,c[f>>2]|0);b=ac(c[f>>2]|0,(c[e
x3e;>2]|0)+8|0)|0;i=d;return b|0}function Om(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Pm((c[d>>2
]|0)+20|0);i=b;return}function Pm(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Ol((c[d>>2]|0)+12|0);c[c[d
>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;fc(c[(c[d>>2]|0)+8>>2]|0);c[(c[d>
;>2]|0)+8>>2]=0;i=b;return}function Qm(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
x3e;>2]|0)+108|0}function Rm(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)+120
|0}function Sm(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)+148|0}function Tm(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]=c[(c[d>>2]|0)+8>
x3e;2];c[e>>2]=(c[d>>2]|0)+20;Um((c[d>>2]|0)+20|0,c[f>>2]|0)|0;Vm((c[d>>2]|0)+
108|0);bn((c[d>>2]|0)+120|0);c[(c[d>>2]|0)+120>>2]=c[e>>2];ao((c[d>>2]|0)+148|
0);c[(c[d>>2]|0)+148>>2]=c[e>>2];i=b;return 0}function Um(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i
+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;a=c[d>>2]|0;b=a+88|0;do{c[a>>2]=0;a=a+4|0}while((a
|0)<(b|0));c[c[d>>2]>>2]=c[e>>2];i=f;return 0}function Vm(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]=45;c[(c[d>>2]|0)+4>>2]=24;c[(c[d>>2]|0)+8
>>2]=36;i=b;return}function Wm(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;t=i;i=i+48
|0;h=t+40|0;j=t+36|0;k=t+32|0;p=t+28|0;o=t+24|0;l=t+20|0;q=t+16|0;m=t+12|0;r=t+8|0;n=t+4|0;s=t;c[h>>2]=a;c[j>>
;2]=f;c[k>>2]=g;c[p>>2]=0;c[p>>2]=bc(c[h>>2]|0,2496,o)|0;if(c[o>>2]|0){r=c[p
x3e;>2]|0;s=c[k>>2]|0;c[s>>2]=r;s=c[o>>2]|0;i=t;return s|0}c[c[p>>2]>>2]=
c[h>>2];c[m>>2]=(c[p>>2]|0)+4+204;c[r>>2]=(c[m>>2]|0)+4;c[c[r>>2]>
;>2]=e[(c[j>>2]|0)+120>>1];c[r>>2]=(c[r>>2]|0)+12;c[q>>2]=(c[j>>
;2]|0)+128;c[l>>2]=d[(c[j>>2]|0)+124>>0];while(1){if((c[l>>2]|0)>>>0<
;=0)break;c[c[r>>2]>>2]=b[c[q>>2]>>1];c[r>>2]=(c[r>>2]|0)+12;c[q>
;>2]=(c[q>>2]|0)+2;c[l>>2]=(c[l>>2]|0)+-1}c[c[m>>2]>>2]=(d[(c[j>>
;2]|0)+124>>0]|0)+1;c[n>>2]=(c[p>>2]|0)+4;c[s>>2]=(c[n>>2]|0)+4;c[c[s>>
;2]>>2]=e[(c[j>>2]|0)+122>>1];c[s>>2]=(c[s>>2]|0)+12;c[q>>2]=(c[j>
;>2]|0)+154;c[l>>2]=d[(c[j>>2]|0)+125>>0];while(1){if((c[l>>2]|0)>>>
0<=0)break;c[c[s>>2]>>2]=b[c[q>>2]>>1];c[s>>2]=(c[s>>2]|0)+12;c
[q>>2]=(c[q>>2]|0)+2;c[l>>2]=(c[l>>2]|0)+-1}c[c[n>>2]>>2]=(d[(c[j>
;>2]|0)+125>>0]|0)+1;Xm((c[p>>2]|0)+412|0,d[(c[j>>2]|0)+8>>0]|0,(c[j>>2]|
0)+12|0,d[(c[j>>2]|0)+9>>0]|0,(c[j>>2]|0)+40|0,c[(c[j>>2]|0)+116>>2]|0,0);Xm((
c[p>>2]|0)+412|0,d[(c[j>>2]|0)+10>>0]|0,(c[j>>2]|0)+60|0,d[(c[j>>2]|0)+11>
;>0]|0,(c[j>>2]|0)+88|0,c[(c[j>>2]|0)+116>>2]|0,1);c[(c[p>>2]|0)+412+2064>>
;2]=c[(c[j>>2]|0)+108>>2];c[(c[p>>2]|0)+412+2068>>2]=c[(c[j>>2]|0)+112>
x3e;2];c[(c[p>>2]|0)+412+2076>>2]=c[(c[j>>2]|0)+116>>2];c[(c[p>>2]|0)+4+196>
;>2]=0;c[(c[p>>2]|0)+4+200>>2]=0;c[(c[p>>2]|0)+4+204+196>>2]=0;c[(c[p>>2]|
0)+4+204+200>>2]=0;r=c[p>>2]|0;s=c[k>>2]|0;c[s>>2]=r;s=c[o>>2]|0;i=t;return s|
0}function Xm(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;C=i;i=i+80|0;j=C+76|0;t=C+72|0;k=C+68|0;l=C+64|0;m=C+60|0;u=C+56|0;D=C+52|0;q=C+48|0;w=C+44|0;n=C
+40|0;x=C+36|0;r=C+32|0;o=C+28|0;s=C+24|0;p=C+20|0;z=C+16|0;A=C+12|0;v=C+8|0;y=C+4|0;B=C;c[j>>2]=a;c[t>>2]=b
;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[u>>2]=g;c[D>>2]=h;d=c[j>>2]|0;if(c[
D>>2]|0){c[q>>2]=d+1032;c[w>>2]=(c[j>>2]|0)+1548}else{c[q>>2]=d;c[w>>
;2]=(c[j>>2]|0)+516}c[c[q>>2]>>2]=0;c[c[w>>2]>>2]=0;Ym(c[j>>2]|0,0,c
[t>>2]|0,c[k>>2]|0,c[q>>2]|0,c[w>>2]|0);Ym(c[j>>2]|0,1,c[l>>2]|0,c[m
>>2]|0,c[q>>2]|0,c[w>>2]|0);c[n>>2]=c[c[q>>2]>>2];c[x>>2]=
c[c[w>>2]>>2];a:do if((c[n>>2]|0)>0){c[r>>2]=(c[q>>2]|0)+4;c[t>>
;2]=c[n>>2];while(1){if((c[t>>2]|0)>>>0<=0)break a;if((c[t>>2]|0)>>
x3e;0>1?(c[o>>2]=(c[(c[r>>2]|0)+32>>2]|0)-(c[c[r>>2]>>2]|0),(c[(c[r>
x3e;2]|0)+4>>2]|0)>(c[o>>2]|0)):0)c[(c[r>>2]|0)+4>>2]=c[o>>2];c[(c[r>
;>2]|0)+12>>2]=c[c[r>>2]>>2];c[(c[r>>2]|0)+8>>2]=(c[(c[r>>2]|0)+
4>>2]|0)+(c[c[r>>2]>>2]|0);c[t>>2]=(c[t>>2]|0)+-1;c[r>>2]=(c[r>
x3e;2]|0)+32}}while(0);b:do if((c[x>>2]|0)>0){c[s>>2]=(c[w>>2]|0)+4;c[t>>2]=c[x>
;>2];while(1){if((c[t>>2]|0)>>>0<=0)break b;if((c[t>>2]|0)>>>0>
1?(c[p>>2]=(c[c[s>>2]>>2]|0)-(c[(c[s>>2]|0)+32>>2]|0),(c[(c[s>>2]|0)+
4>>2]|0)<(c[p>>2]|0)):0)c[(c[s>>2]|0)+4>>2]=c[p>>2];c[(c[s>>2]|
0)+8>>2]=c[c[s>>2]>>2];c[(c[s>>2]|0)+12>>2]=(c[(c[s>>2]|0)+4>
x3e;2]|0)+(c[c[s>>2]>>2]|0);c[t>>2]=(c[t>>2]|0)+-1;c[s>>2]=(c[s>>2]|
0)+32}}while(0);c[B>>2]=(c[q>>2]|0)+4;c[t>>2]=c[n>>2];c[z>>2]=1;while(1){if((c
[z>>2]|0)<0)break;if((c[t>>2]|0)>>>0>0){D=(c[B>>2]|0)+12|0;c[D>>
;2]=(c[D>>2]|0)-(c[u>>2]|0);c[A>>2]=c[(c[B>>2]|0)+8>>2];c[t>>2]=(c[t
>>2]|0)+-1;while(1){if((c[t>>2]|0)>>>0<=0)break;c[v>>2]=c[(c[B>>2]|0
)+32+12>>2];c[y>>2]=(c[v>>2]|0)-(c[A>>2]|0);d=c[A>>2]|0;if((c[y>>2]|
0)<(c[u>>2]<<1|0)){D=d+((c[y>>2]|0)/2|0)|0;c[(c[B>>2]|0)+32+12>>2]=D;c[(c
[B>>2]|0)+8>>2]=D}else{c[(c[B>>2]|0)+8>>2]=d+(c[u>>2]|0);c[(c[B>>2]|
0)+32+12>>2]=(c[v>>2]|0)-(c[u>>2]|0)}c[B>>2]=(c[B>>2]|0)+32;c[A>>2]=
c[(c[B>>2]|0)+8>>2];c[t>>2]=(c[t>>2]|0)+-1}c[(c[B>>2]|0)+8>>2]=(c[A
x3e;>2]|0)+(c[u>>2]|0)}c[B>>2]=(c[w>>2]|0)+4;c[t>>2]=c[x>>2];c[z>>
;2]=(c[z>>2]|0)+-1}i=C;return}function Ym(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;A=i;i=i+64|0;B=A+48|0;l=A+54|0;m=A+44|0;n=A+40|0;o=A+36|0;p=A+32|0;s=A+28|0;r=A+24|
0;v=A+53|0;w=A+20|0;t=A+16|0;q=A+12|0;z=A+8|0;y=A+4|0;x=A+52|0;u=A;c[B>>2]=e;a[l>>0]=f;c[m>>2]=g;c
[n>>2]=h;c[o>>2]=j;c[p>>2]=k;c[s>>2]=c[c[o>>2]>>2];c[r>>2]=
c[c[p>>2]>>2];a[v>>0]=1;c[B>>2]=c[B>>2];while(1){if((c[m>>2]|0)>
;>>0<=1)break;a[x>>0]=0;if(!(d[v>>0]|0)?!(d[l>>0]|0):0){c[w>>2]=b[c[n>
;>2]>>1];c[t>>2]=(b[(c[n>>2]|0)+2>>1]|0)-(c[w>>2]|0);c[z>>2]=(c
[o>>2]|0)+4;c[q>>2]=c[s>>2];a[x>>0]=1}else{c[w>>2]=b[(c[n>>2]|0)+2
x3e;>1];c[t>>2]=(b[c[n>>2]>>1]|0)-(c[w>>2]|0);c[z>>2]=(c[p>>2]|
0)+4;c[q>>2]=c[r>>2];a[v>>0]=0}c[y>>2]=c[z>>2];while(1){if((c[q>>2]|
0)>>>0<=0){k=17;break}if((c[w>>2]|0)<(c[c[y>>2]>>2]|0)){k=17;break}if((c[
w>>2]|0)==(c[c[y>>2]>>2]|0)){k=11;break}c[q>>2]=(c[q>>2]|0)+-1;c[y>>
2]=(c[y>>2]|0)+32}do if((k|0)==11){c[u>>2]=c[(c[y>>2]|0)+4>>2];k=c[t>>2]|0;f=c
[u>>2]|0;if((c[t>>2]|0)<0){if((k|0)>=(f|0))break;c[(c[y>>2]|0)+4>>2]=c[t>
x3e;2];break}else{if((k|0)<=(f|0))break;c[(c[y>>2]|0)+4>>2]=c[t>>2];break}}else if((k|0)==17){
while(1){if((c[q>>2]|0)>>>0<=0)break;k=(c[y>>2]|0)+(c[q>>2]<<5)|0;B=(
c[y>>2]|0)+((c[q>>2]|0)-1<<5)|0;c[k>>2]=c[B>>2];c[k+4>>2]=c[B+4>
;>2];c[k+8>>2]=c[B+8>>2];c[k+12>>2]=c[B+12>>2];c[k+16>>2]=c[B+16>>
;2];c[k+20>>2]=c[B+20>>2];c[k+24>>2]=c[B+24>>2];c[k+28>>2]=c[B+28>>2
];c[q>>2]=(c[q>>2]|0)+-1;k=17}c[c[y>>2]>>2]=c[w>>2];c[(c[y>>2]|0)+4
x3e;>2]=c[t>>2];if(a[x>>0]|0){c[s>>2]=(c[s>>2]|0)+1;break}else{c[r>>2]=(c
[r>>2]|0)+1;break}}while(0);c[n>>2]=(c[n>>2]|0)+4;c[m>>2]=(c[m>>2]|0)-2}c[c[o
x3e;>2]>>2]=c[s>>2];c[c[p>>2]>>2]=c[r>>2];i=A;return}function Zm(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;n=i;i=i+32|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g
>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=(c[g>>
;2]|0)+4;c[m>>2]=(c[g>>2]|0)+4;if(!((c[h>>2]|0)==(c[(c[m>>2]|0)+196>>2]|0)?(c[
k>>2]|0)==(c[(c[m>>2]|0)+200>>2]|0):0)){c[(c[m>>2]|0)+196>>2]=c[h>>2
];c[(c[m>>2]|0)+200>>2]=c[k>>2];_m(c[g>>2]|0,0)}c[m>>2]=(c[g>>2]|0)+
4+204;if((c[j>>2]|0)==(c[(c[m>>2]|0)+196>>2]|0)?(c[l>>2]|0)==(c[(c[m>>2]|0)+200
>>2]|0):0){i=n;return 0}c[(c[m>>2]|0)+196>>2]=c[j>>2];c[(c[m>>2]|0)+200>
x3e;2]=c[l>>2];_m(c[g>>2]|0,1);$m((c[g>>2]|0)+412|0,c[j>>2]|0,c[l>>2]|0);i=n;return
0}function _m(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;k=i;i=i+48|0;o=k+36|0;n=k+32|0;l=k+28|0;m=k+24|0
;d=k+20|0;j=k+16|0;g=k+12|0;f=k+8|0;h=k+4|0;e=k;c[o>>2]=a;c[n>>2]=b;c[l>>2]=(c[o>>2]|0)+
4+((c[n>>2]|0)*204|0);c[m>>2]=c[l>>2];c[d>>2]=c[c[m>>2]>>2];c[j>
;>2]=(c[m>>2]|0)+4;c[g>>2]=c[j>>2];c[f>>2]=c[(c[l>>2]|0)+196>>2
];if((c[d>>2]|0)>>>0<=0){i=k;return}o=Mb(c[c[j>>2]>>2]|0,c[f>>2]|0)|
0;c[(c[j>>2]|0)+4>>2]=o;c[(c[j>>2]|0)+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+
32&-64;c[j>>2]=(c[j>>2]|0)+12;c[d>>2]=(c[d>>2]|0)+-1;while(1){if((c[d>>2]|
0)>>>0<=0)break;c[h>>2]=Mb(c[c[j>>2]>>2]|0,c[f>>2]|0)|0;c[e>>
;2]=(c[h>>2]|0)-(c[(c[g>>2]|0)+4>>2]|0);if((c[e>>2]|0)<0)c[e>>2]=0-(c[e
x3e;>2]|0);if((c[e>>2]|0)<128)c[h>>2]=c[(c[g>>2]|0)+4>>2];c[(c[j>>2]|
0)+4>>2]=c[h>>2];c[(c[j>>2]|0)+8>>2]=(c[h>>2]|0)+32&-64;c[d>>2]=(
c[d>>2]|0)+-1;c[j>>2]=(c[j>>2]|0)+12}i=k;return}function $m(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;w=i;i=i+64|0;l=w+56|0;m=w+52|0;f=w+48|0;g=w+44|0;s=w+40|0;h=w+36|0;j=
w+32|0;k=w+28|0;t=w+24|0;u=w+20|0;o=w+16|0;p=w+12|0;r=w+8|0;q=w+4|0;n=w;c[l>>2]=b;c[m>>2]=d;c[f>>2
]=e;c[h>>2]=0;b=c[m>>2]|0;if((c[m>>2]|0)>=34359738)a[(c[l>>2]|0)+2080>>0]=(
b|0)<((c[(c[l>>2]|0)+2064>>2]<<3|0)/125|0|0);else a[(c[l>>2]|0)+2080>>0]=(
b*125|0)<(c[(c[l>>2]|0)+2064>>2]<<3|0);c[j>>2]=c[(c[l>>2]|0)+2068>
x3e;2];while(1){if((c[j>>2]|0)>0)b=(Mb(c[j>>2]|0,c[m>>2]|0)|0)>32;else b=0;e=c[j>
x3e;2]|0;if(!b)break;c[j>>2]=e+-1}c[(c[l>>2]|0)+2072>>2]=e;c[s>>2]=0;while(1){if((c[s>
;>2]|0)>>>0>=4)break;switch(c[s>>2]|0){case 0:{c[h>>2]=c[l>>2];break}case
1:{c[h>>2]=(c[l>>2]|0)+516;break}case 2:{c[h>>2]=(c[l>>2]|0)+1032;break}default:c[h>
;>2]=(c[l>>2]|0)+1548}c[k>>2]=(c[h>>2]|0)+4;c[g>>2]=c[c[h>>2]>>
2];while(1){if((c[g>>2]|0)>>>0<=0)break;j=Mb(c[(c[k>>2]|0)+8>>2]|0,c[m>
x3e;2]|0)|0;c[(c[k>>2]|0)+28>>2]=j+(c[f>>2]|0);j=Mb(c[(c[k>>2]|0)+12>>2]|0,c[m
>>2]|0)|0;c[(c[k>>2]|0)+24>>2]=j+(c[f>>2]|0);j=Mb(c[c[k>>2]>>2]|0,c[
m>>2]|0)|0;c[(c[k>>2]|0)+16>>2]=j+(c[f>>2]|0);j=Mb(c[(c[k>>2]|0)+4>>
2]|0,c[m>>2]|0)|0;c[(c[k>>2]|0)+20>>2]=j;c[(c[k>>2]|0)+16>>2]=(c[(c[k>>
;2]|0)+16>>2]|0)+32&-64;c[g>>2]=(c[g>>2]|0)+-1;c[k>>2]=(c[k>>2]|0)+32}c[s
>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=2)break;b=
c[l>>2]|0;if(!(c[s>>2]|0)){c[r>>2]=b;c[q>>2]=(c[l>>2]|0)+1032}else{c[r>
x3e;2]=b+516;c[q>>2]=(c[l>>2]|0)+1548}c[t>>2]=(c[r>>2]|0)+4;c[o>>2]=c[c[r>
;>2]>>2];while(1){if((c[o>>2]|0)>>>0<=0)break;c[u>>2]=(c[q>>2]|
0)+4;c[p>>2]=c[c[q>>2]>>2];while(1){if((c[p>>2]|0)>>>0<=0)break;c[n
x3e;>2]=(c[c[t>>2]>>2]|0)-(c[c[u>>2]>>2]|0);if((c[n>>2]|0)<0)c[n>
;>2]=0-(c[n>>2]|0);if((Mb(c[n>>2]|0,c[m>>2]|0)|0)<64){v=32;break}c[p>>2]=(c[p
x3e;>2]|0)+-1;c[u>>2]=(c[u>>2]|0)+32}if((v|0)==32){v=0;c[(c[t>>2]|0)+28>>2]=c[(c[u
x3e;>2]|0)+28>>2];c[(c[t>>2]|0)+24>>2]=c[(c[u>>2]|0)+24>>2];c[(c[t>
x3e;2]|0)+16>>2]=c[(c[u>>2]|0)+16>>2];c[(c[t>>2]|0)+20>>2]=c[(c[u>>2
]|0)+20>>2]}c[o>>2]=(c[o>>2]|0)+-1;c[t>>2]=(c[t>>2]|0)+32}c[s>>2]=(c
[s>>2]|0)+1}i=w;return}function an(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(!(c[b>
;>2]|0)){i=e;return}c[d>>2]=c[c[b>>2]>>2];c[(c[b>>2]|0)+4>>2]=0;c[(c[b>
;>2]|0)+4+204>>2]=0;c[(c[b>>2]|0)+412>>2]=0;c[(c[b>>2]|0)+412+516>>2]=0;c
[(c[b>>2]|0)+412+1032>>2]=0;c[(c[b>>2]|0)+412+1548>>2]=0;Fb(c[d>>2]|0,c[b>
;>2]|0);c[b>>2]=0;i=e;return}function bn(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=b;b=c[e>
;>2]|0;d=b+28|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(d|0));c[(c[e>>2]|0)+4>>2]=37;c[(c[e>
;>2]|0)+8>>2]=108;c[(c[e>>2]|0)+12>>2]=13;c[(c[e>>2]|0)+16>>2]=14;c[(c[e
x3e;>2]|0)+20>>2]=5;c[(c[e>>2]|0)+24>>2]=24;i=f;return}function cn(a){a=a|0;var b=0,d=0;b=i;i
=i+16|0;d=b;c[d>>2]=a;dn(c[d>>2]|0,1);i=b;return}function dn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d
=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;b=(c[d>>2]|0)+4|0;if(((c[e>>2]|0)+-1|0)>>>
0<2){c[b>>2]=0;c[(c[d>>2]|0)+12>>2]=c[e>>2];en((c[d>>2]|0)+16|0);en((c[d
x3e;>2]|0)+16+36|0);i=f;return}else{c[b>>2]=6;c[(c[d>>2]|0)+12>>2]=c[e>>2];i=f;return
}}function en(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]=0;c[(c[d>>2]|
0)+12>>2]=0;c[(c[d>>2]|0)+24>>2]=0;i=b;return}function fn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0
,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;g=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[g>>2]=c[(c[d>
x3e;2]|0)+4>>2];if(c[g>>2]|0){h=c[g>>2]|0;i=j;return h|0}c[h>>2]=c[c[d>>2]>
;>2];c[f>>2]=(c[d>>2]|0)+16;c[g>>2]=gn(c[f>>2]|0,c[e>>2]|0,c[h>>
;2]|0)|0;if(c[g>>2]|0){h=c[g>>2]|0;i=j;return h|0}c[g>>2]=gn((c[f>>2]|0)+36|0,c[e>
x3e;2]|0,c[h>>2]|0)|0;h=c[g>>2]|0;i=j;return h|0}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+16|0;g=e+8|0;h=e+4|0;f=e;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;hn(c[g>>2]|0,c[h>>
;2]|0);d=jn((c[g>>2]|0)+24|0,c[f>>2]|0)|0;i=e;return d|0}function hn(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|0)+12
>>2];if((c[f>>2]|0)>>>0<=0){i=h;return}c[g>>2]=(c[(c[d>>2]|0)+12+8
x3e;>2]|0)+(c[f>>2]<<4)+-16;c[(c[g>>2]|0)+12>>2]=c[e>>2];i=h;return}function
jn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+16|0;e=k+12|0;g=k+8|0;h=k+4|0;f=k;c[d>>2]=a;c[e
x3e;>2]=b;c[f>>2]=0;c[g>>2]=(c[c[d>>2]>>2]|0)-1;while(1){if((c[g>>2]|0)
x3c;=0){j=9;break}c[h>>2]=(c[g>>2]|0)-1;while(1){if((c[h>>2]|0)<0)break;if(kn(c[d>>
2]|0,c[g>>2]|0,c[h>>2]|0)|0){j=6;break}c[h>>2]=(c[h>>2]|0)+-1}if((j|0)==6?(j=0,c[f>
x3e;2]=ln(c[d>>2]|0,c[h>>2]|0,c[g>>2]|0,c[e>>2]|0)|0,c[f>>2]|0):0){j=9;break}c
[g>>2]=(c[g>>2]|0)+-1}if((j|0)==9){i=k;return c[f>>2]|0}return 0}function kn(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;l=i;i=i+48|0;f=l+40|0;r=l+36|0;s=l+32|0;q=l+28|0;p=l+24|0;o=l+20|0;h
=l+16|0;j=l+12|0;n=l+8|0;m=l+4|0;g=l;c[r>>2]=a;c[s>>2]=b;c[q>>2]=e;c[p>>2]=(c[(c[r>
x3e;2]|0)+8>>2]|0)+(c[s>>2]<<4);c[o>>2]=(c[(c[r>>2]|0)+8>>2]|0)+(c[q
>>2]<<4);c[h>>2]=c[(c[p>>2]|0)+8>>2];c[j>>2]=c[(c[o>>2]|0)+
8>>2];c[n>>2]=c[c[p>>2]>>2];c[m>>2]=c[c[o>>2]>>2];c[g>
;>2]=(c[n>>2]|0)>>>0<=(c[m>>2]|0)>>>0?c[n>>2]|0:c[m>
x3e;2]|0;while(1){if((c[g>>2]|0)>>>0<8)break;if((d[c[h>>2]>>0]|0)&(d[c[j
x3e;>2]>>0]|0)|0){k=4;break}c[h>>2]=(c[h>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1;c
[g>>2]=(c[g>>2]|0)-8}if((k|0)==4){c[f>>2]=1;s=c[f>>2]|0;i=l;return s|0}if(!(c[g>>
;2]|0)){c[f>>2]=0;s=c[f>>2]|0;i=l;return s|0}else{c[f>>2]=(d[c[h>>2]>>0]|0)&
;(d[c[j>>2]>>0]|0)&~(255>>c[g>>2]);s=c[f>>2]|0;i=l;return s|0}return 0}function
ln(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;x=i;i=i+80|0;h=x+68|0;j
=x+64|0;k=x+60|0;l=x+56|0;v=x+52|0;q=x+48|0;r=x+44|0;s=x+40|0;m=x+36|0;n=x+32|0;o=x+28|0;t=x+24|0;u=x+20|0;w=x+16|0;p=x;c[h>
;>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[q>>2]=0;if((c[j>>2]|0)>(c[k
x3e;>2]|0)){c[v>>2]=c[j>>2];c[j>>2]=c[k>>2];c[k>>2]=c[v>>2]}if(!((
c[j>>2]|0)>=0?(c[j>>2]|0)<(c[k>>2]|0):0)){w=c[q>>2]|0;i=x;return w|0}if((c[k
x3e;>2]|0)>=(c[c[h>>2]>>2]|0)){w=c[q>>2]|0;i=x;return w|0}c[r>>2]=(c[(c[h>
;>2]|0)+8>>2]|0)+(c[j>>2]<<4);c[s>>2]=(c[(c[h>>2]|0)+8>>2]|0)+(
c[k>>2]<<4);c[m>>2]=c[c[r>>2]>>2];c[n>>2]=c[c[s>>2]>
x3e;2];a:do if((c[n>>2]|0)>>>0>0){b:do if((c[n>>2]|0)>>>0>(c[m>
x3e;2]|0)>>>0){c[q>>2]=mn(c[r>>2]|0,c[n>>2]|0,c[l>>2]|0)|0;if(c[q>
x3e;2]|0){w=c[q>>2]|0;i=x;return w|0}c[t>>2]=c[m>>2];while(1){if((c[t>>2]|0)>>
x3e;0>=(c[n>>2]|0)>>>0)break b;nn(c[r>>2]|0,c[t>>2]|0);c[t>>2]=(c[t
x3e;>2]|0)+1}}while(0);c[u>>2]=c[(c[s>>2]|0)+8>>2];c[w>>2]=c[(c[r>>2]|0)+
8>>2];c[t>>2]=((c[n>>2]|0)+7|0)>>>3;while(1){if((c[t>>2]|0)>>
x3e;0<=0)break a;a[c[w>>2]>>0]=d[c[w>>2]>>0]|0|(d[c[u>>2]>>0]|0
);c[w>>2]=(c[w>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+-1
}}while(0);c[c[s>>2]>>2]=0;c[(c[s>>2]|0)+12>>2]=0;c[o>>2]=(c[c[h>>2]
x3e;>2]|0)-1-(c[k>>2]|0);if((c[o>>2]|0)>0){w=c[s>>2]|0;c[p>>2]=c[w>>
2];c[p+4>>2]=c[w+4>>2];c[p+8>>2]=c[w+8>>2];c[p+12>>2]=c[w+12>>2];Ts(
c[s>>2]|0,(c[s>>2]|0)+16|0,c[o>>2]<<4|0)|0;w=(c[s>>2]|0)+(c[o>>2]<
;<4)|0;c[w>>2]=c[p>>2];c[w+4>>2]=c[p+4>>2];c[w+8>>2]=c[p+8>>2];
c[w+12>>2]=c[p+12>>2]}w=c[h>>2]|0;c[w>>2]=(c[w>>2]|0)+-1;w=c[q>>2]|0
;i=x;return w|0}function mn(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;k=i;i=i+32|0;e=k+20|0;l=k+16|0;f=k+12|0;j=k
+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=((c[(c[e>>2]|0)+4>
x3e;2]|0)+7|0)>>>3;c[h>>2]=((c[l>>2]|0)+7|0)>>>3;c[g>>2]=0;if((c[h
x3e;>2]|0)>>>0<=(c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>
;>2]=(c[h>>2]|0)+7&-8;l=hc(c[f>>2]|0,1,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2
]|0)+8>>2]|0,g)|0;c[(c[e>>2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l
|0}c[(c[e>>2]|0)+4>>2]=c[h>>2]<<3;l=c[g>>2]|0;i=k;return l|0}function nn(b,e){
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]=b;c[g>>2]=e;if((c[g>>2]|0
)>>>0>=(c[c[f>>2]>>2]|0)>>>0){i=j;return}c[h>>2]=(c[(c[f>
x3e;2]|0)+8>>2]|0)+(c[g>>2]>>3);a[c[h>>2]>>0]=(d[c[h>>2]>>
0]|0)&~(128>>(c[g>>2]&7));i=j;return}function on(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]=(Tb(c[c
[j>>2]>>2]|0)|0)>>16;c[f+4>>2]=(Tb(c[(c[j>>2]|0)+4>>2]|0)|0)>
x3e;16;pn(c[h>>2]|0,c[g>>2]|0,1,f);i=e;return}function pn(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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;h=o+16|0;j=o+12|0;k=o+8|0;l=o+4|0;m=o;c[f>>2]=a;c[g>>2
]=b;c[h>>2]=d;c[j>>2]=e;if(c[(c[f>>2]|0)+4>>2]|0){i=o;return}if((c[g>>2]|0)<
;0|(c[g>>2]|0)>1)c[g>>2]=(c[g>>2]|0)!=0&1;if(((c[(c[f>>2]|0)+12>>2]|
0)+-1|0)>>>0>=2){i=o;return}c[k>>2]=(c[f>>2]|0)+16+((c[g>>2]|0)*36|0);while(1){
if((c[h>>2]|0)>>>0<=0){n=10;break}c[m>>2]=c[c[f>>2]>>2];c[l>>
;2]=qn(c[k>>2]|0,c[c[j>>2]>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[m>>2]|0,0)|
0;if(c[l>>2]|0)break;c[h>>2]=(c[h>>2]|0)+-1;c[j>>2]=(c[j>>2]|0)+8}if((n|0)==10
){i=o;return}c[(c[f>>2]|0)+4>>2]=c[l>>2];i=o;return}function qn(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;s=i;i=i+48|0;g=s+40|0;h=s+36|0;j=s+32|0;k=s+28|0;l=s+24|0;m=s+20|0;n=
s+16|0;q=s+12|0;p=s+8|0;r=s+4|0;o=s;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>
;2]=f;c[m>>2]=0;c[n>>2]=0;if((c[j>>2]|0)<0){c[n>>2]=c[n>>2]|1;if((c[j>
;>2]|0)==-21){c[n>>2]=c[n>>2]|2;c[h>>2]=(c[h>>2]|0)+(c[j>>2]|0)}c[j>
x3e;2]=0}if(c[l>>2]|0)c[c[l>>2]>>2]=-1;c[r>>2]=c[c[g>>2]>>2];c[o>
;>2]=c[(c[g>>2]|0)+8>>2];c[p>>2]=0;while(1){if((c[p>>2]|0)>>>0>=(
c[r>>2]|0)>>>0)break;if((c[c[o>>2]>>2]|0)==(c[h>>2]|0)?(c[(c[o>>
;2]|0)+4>>2]|0)==(c[j>>2]|0):0)break;c[p>>2]=(c[p>>2]|0)+1;c[o>>2]=(c[o>
x3e;2]|0)+12}do if((c[p>>2]|0)>>>0>=(c[r>>2]|0)>>>0){c[m>>2]=rn
(c[g>>2]|0,c[k>>2]|0,o)|0;if(c[m>>2]|0){b=c[m>>2]|0;i=s;return b|0}else{c[c[o>>
;2]>>2]=c[h>>2];c[(c[o>>2]|0)+4>>2]=c[j>>2];c[(c[o>>2]|0)+8>>
;2]=c[n>>2];break}}while(0);c[m>>2]=tn((c[g>>2]|0)+12|0,c[k>>2]|0,q)|0;if(c[m>>
;2]|0){b=c[m>>2]|0;i=s;return b|0}c[m>>2]=wn(c[q>>2]|0,c[p>>2]|0,c[k>>2]|0)|0;
if(!((c[m>>2]|0)==0&(c[l>>2]|0)!=0)){b=c[m>>2]|0;i=s;return b|0}c[c[l>>2]>>
;2]=c[p>>2];b=c[m>>2]|0;i=s;return b|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;
l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;j=l+8|0;h=l+4|0;k=l;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>
;>2]=0;c[k>>2]=0;c[h>>2]=c[c[e>>2]>>2];c[h>>2]=(c[h>>2]|0)+1;if
((c[h>>2]|0)>>>0>=(c[(c[e>>2]|0)+4>>2]|0)>>>0?(c[j>>2
]=sn(c[e>>2]|0,c[h>>2]|0,c[f>>2]|0)|0,c[j>>2]|0):0){b=c[k>>2]|0;a=c[g>>
;2]|0;c[a>>2]=b;a=c[j>>2]|0;i=l;return a|0}c[k>>2]=(c[(c[e>>2]|0)+8>>2]|0)+((c
[h>>2]|0)*12|0)+-12;c[c[k>>2]>>2]=0;c[(c[k>>2]|0)+4>>2]=0;c[(c[k>>2]|
0)+8>>2]=0;c[c[e>>2]>>2]=c[h>>2];b=c[k>>2]|0;a=c[g>>2]|0;c[a>
x3e;2]=b;a=c[j>>2]|0;i=l;return a|0}function sn(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;k=i;i=i+32|0;
e=k+20|0;l=k+16|0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=c[(
c[e>>2]|0)+4>>2];c[h>>2]=c[l>>2];c[g>>2]=0;if((c[h>>2]|0)>>
;>0<=(c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>>2]=(c[h>>
2]|0)+7&-8;l=hc(c[f>>2]|0,12,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+8>>2]|0,g)|
0;c[(c[e>>2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l|0}c[(c[e>>2]|0)+
4>>2]=c[h>>2];l=c[g>>2]|0;i=k;return l|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;k=i;i=i+32|0;l=k+20|0;e=k+16|0;f=k+12|0;h=k+8|0;g=k+4|0;j=k;c[l>>2]=a;c[e>>2]=b;c[f>>2
]=d;c[h>>2]=0;c[g>>2]=c[c[l>>2]>>2];d=c[l>>2]|0;if(!(c[g>>2]|0)){c[h
>>2]=un(d,c[e>>2]|0,j)|0;j=c[j>>2]|0;l=c[f>>2]|0;c[l>>2]=j;l=c[h>>2]|
0;i=k;return l|0}else{c[j>>2]=(c[d+8>>2]|0)+(c[g>>2]<<4)+-16;j=c[j>>2]|0;l=c[f
>>2]|0;c[l>>2]=j;l=c[h>>2]|0;i=k;return l|0}return 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;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[e>>2]=a;c[f>>2]=b;c[g
x3e;>2]=d;c[j>>2]=0;c[k>>2]=0;c[h>>2]=c[c[e>>2]>>2];c[h>>2]=(c[
h>>2]|0)+1;if((c[h>>2]|0)>>>0>(c[(c[e>>2]|0)+4>>2]|0)>>>
;0?(c[j>>2]=vn(c[e>>2]|0,c[h>>2]|0,c[f>>2]|0)|0,c[j>>2]|0):0){b=c[k>>
;2]|0;a=c[g>>2]|0;c[a>>2]=b;a=c[j>>2]|0;i=l;return a|0}c[k>>2]=(c[(c[e>>2]|0)+
8>>2]|0)+(c[h>>2]<<4)+-16;c[c[k>>2]>>2]=0;c[(c[k>>2]|0)+12>>
;2]=0;c[c[e>>2]>>2]=c[h>>2];b=c[k>>2]|0;a=c[g>>2]|0;c[a>>2]=b;a=c[j
x3e;>2]|0;i=l;return a|0}function vn(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;k=i;i=i+32|0;e=k+20|0;l=k+16|
0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=c[(c[e>>2
]|0)+4>>2];c[h>>2]=c[l>>2];c[g>>2]=0;if((c[h>>2]|0)>>>0<=(
c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>>2]=(c[h>>2]|0)+7&-8;
l=hc(c[f>>2]|0,16,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+8>>2]|0,g)|0;c[(c[e>
x3e;2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l|0}c[(c[e>>2]|0)+4>>2]=
c[h>>2];l=c[g>>2]|0;i=k;return l|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;m=i;i=i+
32|0;g=m+16|0;h=m+12|0;j=m+8|0;k=m+4|0;l=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=0;if((c
[h>>2]|0)<0){l=c[k>>2]|0;i=m;return l|0}do if((c[h>>2]|0)>>>0>=(c[c[g>
;>2]>>2]|0)>>>0){c[k>>2]=mn(c[g>>2]|0,(c[h>>2]|0)+1|0,c[j>>
;2]|0)|0;if(c[k>>2]|0){l=c[k>>2]|0;i=m;return l|0}else{c[c[g>>2]>>2]=(c[h>>2]|
0)+1;break}}while(0);c[l>>2]=(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]>>3);a[c[l>
x3e;2]>>0]=d[c[l>>2]>>0]|0|128>>(c[h>>2]&7);l=c[k>>2]|0;i=m;return
l|0}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,l=0,m=0,n=0;n=i;i=i+48|0;f=n+36|0;e=n+32|0;g=n+28|0;k=n+24
|0;j=n+20|0;m=n+16|0;h=n+12|0;l=n;c[f>>2]=a;c[e>>2]=b;c[g>>2]=d;c[k>>2]=0;if(c[(c[f>
;>2]|0)+4>>2]|0){i=n;return}c[m>>2]=c[c[f>>2]>>2];if((c[e>>2]|0)<0|(
c[e>>2]|0)>1)c[e>>2]=(c[e>>2]|0)!=0&1;c[j>>2]=(c[f>>2]|0)+16+((c[e
x3e;>2]|0)*36|0);a:do if((c[(c[f>>2]|0)+12>>2]|0)==1){c[h>>2]=0;while(1){e=c[j>>2]|
0;if((c[h>>2]|0)>=3)break;a=(Tb(c[c[g>>2]>>2]|0)|0)>>16;d=(Tb(c[(c[g>>2]|
0)+4>>2]|0)|0)>>16;c[k>>2]=qn(e,a,d,c[m>>2]|0,l+(c[h>>2]<<2)|0)|0;if
(c[k>>2]|0)break a;c[h>>2]=(c[h>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+8}c[k>>
2]=yn(e,c[l>>2]|0,c[l+4>>2]|0,c[l+8>>2]|0,c[m>>2]|0)|0;if(!(c[k>>2]|0)){i=n;return
}}else c[k>>2]=6;while(0);c[(c[f>>2]|0)+4>>2]=c[k>>2];i=n;return}function yn(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;p=i;i=i+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;
o=p+8|0;m=p+4|0;n=p;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[o>
;>2]=0;c[m>>2]=c[(c[g>>2]|0)+24>>2];c[n>>2]=c[(c[g>>2]|0)+24+8>>
;2];while(1){if((c[m>>2]|0)>>>0<=0)break;if(zn(c[n>>2]|0,c[h>>2]|0)|0)break;if
(zn(c[n>>2]|0,c[j>>2]|0)|0)break;if(zn(c[n>>2]|0,c[k>>2]|0)|0)break;c[m>>2]=(c
[m>>2]|0)+-1;c[n>>2]=(c[n>>2]|0)+16}if((c[m>>2]|0)==0?(c[o>>2]=un((c[g>
x3e;2]|0)+24|0,c[l>>2]|0,n)|0,c[o>>2]|0):0){f=c[o>>2]|0;i=p;return f|0}c[o>>2]=wn(c[n>
;>2]|0,c[h>>2]|0,c[l>>2]|0)|0;if(c[o>>2]|0){f=c[o>>2]|0;i=p;return f|0}c[o>>
;2]=wn(c[n>>2]|0,c[j>>2]|0,c[l>>2]|0)|0;if(c[o>>2]|0){f=c[o>>2]|0;i=p;return f
|0}c[o>>2]=wn(c[n>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;f=c[o>>2]|0;i=p;return f|0}function
zn(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=b;if((c[g>
x3e;2]|0)>>>0>=(c[c[f>>2]>>2]|0)>>>0){c[e>>2]=0;a=c[e>>
;2]|0;i=h;return a|0}else{c[e>>2]=(d[(c[(c[f>>2]|0)+8>>2]|0)+(c[g>>2]>>3)>
;>0]|0)&128>>(c[g>>2]&7);a=c[e>>2]|0;i=h;return a|0}return 0}function An(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>
2]=0;if(c[(c[d>>2]|0)+4>>2]|0){i=h;return}c[g>>2]=c[c[d>>2]>>2];if((c[(c[d>
;>2]|0)+12>>2]|0)==1){c[f>>2]=Bn((c[d>>2]|0)+16|0,c[e>>2]|0,c[g>>2]|0)|0;
if((c[f>>2]|0)==0?(c[f>>2]=Bn((c[d>>2]|0)+16+36|0,c[e>>2]|0,c[g>>2]|0)|0,(c[f
x3e;>2]|0)==0):0){i=h;return}}else c[f>>2]=6;c[(c[d>>2]|0)+4>>2]=c[f>>2];i=h;return
}function Bn(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+8|0;f=e+4|0;c[g>>2]=a;c[h>>
;2]=b;c[f>>2]=d;hn(c[g>>2]|0,c[h>>2]|0);d=un((c[g>>2]|0)+12|0,c[f>>2]|0,e)|0;i
=e;return d|0}function Cn(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,x=0,y
=0,z=0;z=i;i=i+208|0;h=z+192|0;j=z+188|0;k=z+184|0;l=z+180|0;m=z+176|0;s=z+40|0;q=z+36|0;p=z+32|0;n=z+28|0;o=z+24|0;x=z+20|0;y=z
+16|0;t=z+12|0;u=z+8|0;w=z+4|0;r=z;v=z+196|0;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[s
>>2]=z+48;if(b[(c[k>>2]|0)+2>>1]|0?b[c[k>>2]>>1]|0:0){c[q>>2]=Dn(c[s
>>2]|0,c[k>>2]|0,c[j>>2]|0,c[l>>2]|0)|0;a:do if(!(c[q>>2]|0)){c[n>>2
]=(c[(c[s>>2]|0)+24>>2]|0)+4;c[o>>2]=(c[(c[s>>2]|0)+24>>2]|0)+4+204;c[x>
x3e;2]=c[(c[n>>2]|0)+196>>2];c[y>>2]=c[(c[o>>2]|0)+196>>2];c[t>>2]=c
[x>>2];c[u>>2]=c[y>>2];a[v>>0]=0;c[w>>2]=Mb(c[(c[l>>2]|0)+412+4>
;>2]|0,c[y>>2]|0)|0;c[r>>2]=(c[w>>2]|0)+32&-64;if(c[r>>2]|0?(c[w>>2]|
0)!=(c[r>>2]|0):0){a[v>>0]=1;c[y>>2]=xb(c[y>>2]|0,c[r>>2]|0,c[w>>2]|
0)|0;if((c[r>>2]|0)<(c[w>>2]|0))c[x>>2]=(c[x>>2]|0)-((c[x>>2]|0)/50|0);Zm
(c[(c[s>>2]|0)+24>>2]|0,c[x>>2]|0,c[y>>2]|0,0,0)|0}a[(c[s>>2]|0)+120>>
;0]=1;a[(c[s>>2]|0)+121>>0]=1;a[(c[s>>2]|0)+122>>0]=((c[m>>2]|0)==2?1:(c[m>
;>2]|0)==3)&1;a[(c[s>>2]|0)+123>>0]=((c[m>>2]|0)==2?1:(c[m>>2]|0)==4)&1;a
[(c[s>>2]|0)+124>>0]=(c[m>>2]|0)!=1;c[p>>2]=0;while(1){if((c[p>>2]|0)>=2)
break a;Fn(c[s>>2]|0,c[p>>2]|0);Ln(c[s>>2]|0);Mn((c[s>>2]|0)+28+((c[p>>2]|0)*40
|0)|0,c[(c[s>>2]|0)+24>>2]|0,c[p>>2]|0,c[s>>2]|0);Rn(c[s>>2]|0,c[p>>
2]|0);if((c[p>>2]|0)==1)Vn((c[l>>2]|0)+412|0,c[s>>2]|0);Wn(c[s>>2]|0,c[p>>2]|0
);Xn(c[s>>2]|0,c[p>>2]|0);Yn(c[s>>2]|0,c[p>>2]|0);Zn(c[s>>2]|0,c[p>>
2]|0);if(a[v>>0]|0)Zm(c[(c[s>>2]|0)+24>>2]|0,c[t>>2]|0,c[u>>2]|0,0,0)|0;c[p>
;>2]=(c[p>>2]|0)+1}}while(0);_n(c[s>>2]|0);c[h>>2]=c[q>>2];y=c[h>>2]|0;i=
z;return y|0}c[h>>2]=0;y=c[h>>2]|0;i=z;return y|0}function Dn(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,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+96|0;p=F+88|0;q=F+84|0;r=F+80|0;s
=F+76|0;x=F+72|0;y=F+68|0;k=F+64|0;m=F+60|0;l=F+56|0;o=F+52|0;h=F+48|0;j=F+44|0;n=F+40|0;D=F+36|0;C=F+32|0;E=F+28|0;z=F+24|0;B=F
+20|0;A=F+16|0;t=F+12|0;v=F+8|0;u=F+4|0;w=F;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;g=c[
p>>2]|0;d=g+128|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(d|0));f=c[c[s>>2]>>2]|0;c[(c[p
x3e;>2]|0)+16>>2]=f;c[y>>2]=f;f=hc(c[y>>2]|0,48,0,b[(c[q>>2]|0)+2>>1]|0,0
,x)|0;c[(c[p>>2]|0)+8>>2]=f;if(c[x>>2]|0){E=c[x>>2]|0;i=F;return E|0}f=hc(c[y>>
;2]|0,8,0,b[c[q>>2]>>1]|0,0,x)|0;c[(c[p>>2]|0)+12>>2]=f;if(c[x>>2]|0){E=c[x>
;>2]|0;i=F;return E|0}c[c[p>>2]>>2]=b[(c[q>>2]|0)+2>>1];c[(c[p>>2]|0)+4
x3e;>2]=b[c[q>>2]>>1];c[k>>2]=0;c[o>>2]=c[(c[p>>2]|0)+8>>2];c[h
>>2]=c[(c[p>>2]|0)+12>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0
>=(c[(c[p>>2]|0)+4>>2]|0)>>>0)break;c[m>>2]=(b[(c[(c[q>>2]|0)+12>
;>2]|0)+(c[l>>2]<<1)>>1]|0)+1;c[j>>2]=(c[m>>2]|0)-(c[k>>2]|0);c
[c[h>>2]>>2]=(c[o>>2]|0)+((c[k>>2]|0)*48|0);c[(c[h>>2]|0)+4>>2]=c[j
x3e;>2];if((c[j>>2]|0)>0){c[n>>2]=(c[o>>2]|0)+((c[k>>2]|0)*48|0);c[c[n>
x3e;2]>>2]=(c[o>>2]|0)+((c[m>>2]|0)*48|0)+-48;c[(c[n>>2]|0)+8>>2]=c[h>>
;2];while(1){if((c[j>>2]|0)<=1)break;c[(c[n>>2]|0)+4>>2]=(c[n>>2]|0)+48;c[(c[n>
;>2]|0)+48>>2]=c[n>>2];c[n>>2]=(c[n>>2]|0)+48;c[(c[n>>2]|0)+8>>
2]=c[h>>2];c[j>>2]=(c[j>>2]|0)+-1}c[(c[n>>2]|0)+4>>2]=(c[o>>2]|0)+((
c[k>>2]|0)*48|0)}c[h>>2]=(c[h>>2]|0)+8;c[k>>2]=c[m>>2];c[l>>2]=(c[l
x3e;>2]|0)+1}c[D>>2]=c[(c[p>>2]|0)+8>>2];c[C>>2]=c[D>>2];c[E>>2
]=c[(c[q>>2]|0)+4>>2];c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[c[p
x3e;>2]>>2]|0)>>>0)break;c[B>>2]=((c[c[C>>2]>>2]|0)-(c[D>>
2]|0)|0)/48|0;c[A>>2]=((c[(c[C>>2]|0)+4>>2]|0)-(c[D>>2]|0)|0)/48|0;if(!(a[(c[(c[q>
x3e;2]|0)+8>>2]|0)+(c[z>>2]|0)>>0]&1))c[(c[C>>2]|0)+12>>2]=1;c[t>>
;2]=(c[(c[E>>2]|0)+(c[z>>2]<<3)>>2]|0)-(c[(c[E>>2]|0)+(c[B>>2]<
x3c;3)>>2]|0);c[v>>2]=(c[(c[E>>2]|0)+(c[z>>2]<<3)+4>>2]|0)-(c[(c[E
x3e;>2]|0)+(c[B>>2]<<3)+4>>2]|0);g=(En(c[t>>2]|0,c[v>>2]|0)|0)&255;a
[(c[C>>2]|0)+20>>0]=g;c[u>>2]=(c[(c[E>>2]|0)+(c[A>>2]<<3)>>
;2]|0)-(c[(c[E>>2]|0)+(c[z>>2]<<3)>>2]|0);c[w>>2]=(c[(c[E>>2]|0)+(c[
A>>2]<<3)+4>>2]|0)-(c[(c[E>>2]|0)+(c[z>>2]<<3)+4>>2]|0);g=(
En(c[u>>2]|0,c[w>>2]|0)|0)&255;a[(c[C>>2]|0)+21>>0]=g;g=c[C>>2]|0;do if(!(
c[(c[C>>2]|0)+12>>2]&1|0)){if((a[g+20>>0]|0)==(a[(c[C>>2]|0)+21>>0]|0)){if
((a[(c[C>>2]|0)+21>>0]|0)==4?($b(c[t>>2]|0,c[v>>2]|0,c[u>>2]|0,c[w>>
2]|0)|0)==0:0)break;o=(c[C>>2]|0)+12|0;c[o>>2]=c[o>>2]|2}}else{o=g+12|0;c[o>>2]=c[o>
;>2]|2}while(0);c[z>>2]=(c[z>>2]|0)+1;c[C>>2]=(c[C>>2]|0)+48}c[(c[p>>2]|0
)+20>>2]=c[q>>2];c[(c[p>>2]|0)+24>>2]=c[s>>2];Fn(c[p>>2]|0,0);Gn(c[p
>>2]|0);c[x>>2]=Hn((c[p>>2]|0)+28|0,(c[r>>2]|0)+16|0,(c[r>>2]|0)+16+12|0,(c[r
x3e;>2]|0)+16+24|0,c[y>>2]|0)|0;if(c[x>>2]|0){E=c[x>>2]|0;i=F;return E|0}c[x>>2]=Hn
((c[p>>2]|0)+28+40|0,(c[r>>2]|0)+16+36|0,(c[r>>2]|0)+16+36+12|0,(c[r>>2]|0)+16+36+24|0,c
[y>>2]|0)|0;E=c[x>>2]|0;i=F;return E|0}function En(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0
;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[d>>2]=a;c[e>>2]=b;c[h>>2]=4;b=c[d>>2]|0;c[f>
;>2]=(c[d>>2]|0)>=0?b:0-b|0;b=c[e>>2]|0;c[g>>2]=(c[e>>2]|0)>=0?b:0-b|0;if
(((c[g>>2]|0)*12|0)<(c[f>>2]|0)){c[h>>2]=(c[d>>2]|0)>=0?2:-2;h=c[h>>
2]|0;i=j;return h|0}if(((c[f>>2]|0)*12|0)>=(c[g>>2]|0)){h=c[h>>2]|0;i=j;return h|0}c[h>
x3e;2]=(c[e>>2]|0)>=0?-1:1;h=c[h>>2]|0;i=j;return h|0}function Fn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,
h=0,j=0;h=i;i=i+32|0;j=h+16|0;d=h+12|0;g=h+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[g>>2]=c[(c[(c[j
x3e;>2]|0)+20>>2]|0)+4>>2];c[f>>2]=c[(c[j>>2]|0)+8>>2];c[e>>2]=
c[c[j>>2]>>2];while(1){if((c[e>>2]|0)>>>0<=0)break;c[(c[f>>2]|0)+16
x3e;>2]=0;c[(c[f>>2]|0)+32>>2]=0;b=c[g>>2]|0;if(!(c[d>>2]|0)){c[(c[f>>2]|
0)+36>>2]=c[b>>2];c[(c[f>>2]|0)+40>>2]=c[(c[g>>2]|0)+4>>2]}else{c[(c
[f>>2]|0)+36>>2]=c[b+4>>2];c[(c[f>>2]|0)+40>>2]=c[c[g>>2]>>
;2]}c[e>>2]=(c[e>>2]|0)+-1;c[f>>2]=(c[f>>2]|0)+48;c[g>>2]=(c[g>>2]|0
)+8}i=h;return}function Gn(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;r=i;i=i+64|0;b=r+52|0;l=r+48
|0;h=r+44|0;q=r+40|0;f=r+36|0;e=r+32|0;d=r+28|0;j=r+24|0;k=r+20|0;o=r+16|0;p=r+12|0;n=r+8|0;m=r+4|0;g=r;c[b>>2]=a;c[l
x3e;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[(c[b>>2]|0)+4>>2]|0)>>
;>0)break;c[g>>2]=0;a:do if((c[(c[(c[b>>2]|0)+12>>2]|0)+(c[l>>2]<<3)+4>
;>2]|0)>>>0>=4){c[h>>2]=c[(c[(c[b>>2]|0)+12>>2]|0)+(c[l>>2]<
;<3)>>2];a=c[h>>2]|0;c[f>>2]=a;c[q>>2]=a;do{c[f>>2]=c[(c[f>>2]|
0)+4>>2];if((c[f>>2]|0)==(c[h>>2]|0))break a;c[j>>2]=(c[(c[f>>2]|0)+36>
x3e;2]|0)-(c[(c[q>>2]|0)+36>>2]|0);c[k>>2]=(c[(c[f>>2]|0)+40>>2]|0)-(c[(c[q>
;>2]|0)+40>>2]|0)}while((c[j>>2]|0)==0?(c[k>>2]|0)==0:0);c[e>>2]=c[q>>2];
while(1){c[q>>2]=c[e>>2];c[e>>2]=c[c[e>>2]>>2];if((c[e>>2]|0)==(c[h
x3e;>2]|0))break a;c[o>>2]=(c[(c[q>>2]|0)+36>>2]|0)-(c[(c[e>>2]|0)+36>>2]|
0);c[p>>2]=(c[(c[q>>2]|0)+40>>2]|0)-(c[(c[e>>2]|0)+40>>2]|0);if((c[o>>
;2]|0)==0?(c[p>>2]|0)==0:0)continue;c[n>>2]=_b(c[j>>2]|0,c[k>>2]|0,c[o>>2]|0,c
[p>>2]|0)|0;if(c[n>>2]|0)break}c[h>>2]=c[q>>2];c[j>>2]=c[o>>2];c[k
x3e;>2]=c[p>>2];do{c[d>>2]=c[f>>2];while(1){c[f>>2]=c[d>>2];c[d>>
;2]=c[(c[d>>2]|0)+4>>2];if((c[d>>2]|0)==(c[h>>2]|0))c[g>>2]=1;c[o>>2
]=(c[(c[d>>2]|0)+36>>2]|0)-(c[(c[f>>2]|0)+36>>2]|0);c[p>>2]=(c[(c[d>>
;2]|0)+40>>2]|0)-(c[(c[f>>2]|0)+40>>2]|0);if((c[o>>2]|0)==0?(c[p>>2]|0)==0:0)continue
;c[m>>2]=_b(c[j>>2]|0,c[k>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;if(c[m>>2]|0)
break}if((c[m>>2]^c[n>>2]|0)<0){do{a=(c[q>>2]|0)+12|0;c[a>>2]=c[a>>2]|4;c
[q>>2]=c[(c[q>>2]|0)+4>>2]}while((c[q>>2]|0)!=(c[f>>2]|0));a=(c[q>>2
]|0)+12|0;c[a>>2]=c[a>>2]|4}c[q>>2]=c[f>>2];c[f>>2]=c[d>>2];c[n>
;>2]=c[m>>2];c[j>>2]=c[o>>2];c[k>>2]=c[p>>2]}while((c[g>>2]|0)!=
0^1)}while(0);c[l>>2]=(c[l>>2]|0)+1}i=r;return}function Hn(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;r=i;i=i+48|0;g=r+40|0;h=r+36|0;j=r+32|0;s=r+28|0;k=r+24|0;l=r+20|0;m=r+16|0;q=r+12|0
;p=r+8|0;o=r+4|0;n=r;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[s>>2]=e;c[k>>2]=f;c[s>
;>2]=c[s>>2];c[l>>2]=c[c[h>>2]>>2];a=hc(c[k>>2]|0,4,0,c[l>>2]
x3c;<1,0,m)|0;c[(c[g>>2]|0)+12>>2]=a;if(c[m>>2]|0){s=c[m>>2]|0;i=r;return s|0}s=hc(
c[k>>2]|0,28,0,c[l>>2]|0,0,m)|0;c[(c[g>>2]|0)+8>>2]=s;if(c[m>>2]|0){s=c[m>
;>2]|0;i=r;return s|0}s=hc(c[k>>2]|0,16,0,(c[l>>2]<<1)+1|0,0,m)|0;c[(c[g>>2]|0)+24
x3e;>2]=s;if(c[m>>2]|0){s=c[m>>2]|0;i=r;return s|0}c[c[g>>2]>>2]=c[l>>2];
c[(c[g>>2]|0)+16>>2]=(c[(c[g>>2]|0)+12>>2]|0)+(c[l>>2]<<2);c[(c[g>
;>2]|0)+4>>2]=0;c[(c[g>>2]|0)+20>>2]=0;c[(c[g>>2]|0)+28>>2]=0;c[q>
x3e;2]=c[(c[g>>2]|0)+8>>2];c[p>>2]=c[(c[h>>2]|0)+8>>2];while(1){if((c[l>
x3e;2]|0)>>>0<=0)break;c[c[q>>2]>>2]=c[c[p>>2]>>2];c[(c[q>>
;2]|0)+4>>2]=c[(c[p>>2]|0)+4>>2];c[(c[q>>2]|0)+16>>2]=c[(c[p>>2]|0)+
8>>2];c[l>>2]=(c[l>>2]|0)+-1;c[q>>2]=(c[q>>2]|0)+28;c[p>>2]=(c[p>
;>2]|0)+12}a:do if(c[j>>2]|0){c[o>>2]=c[(c[j>>2]|0)+8>>2];c[l>>2]=c[c[j
x3e;>2]>>2];c[(c[g>>2]|0)+32>>2]=c[j>>2];while(1){if((c[l>>2]|0)>>
;>0<=0)break a;In(c[g>>2]|0,c[o>>2]|0);c[l>>2]=(c[l>>2]|0)+-1;c[o>>2
]=(c[o>>2]|0)+16}}while(0);if((c[(c[g>>2]|0)+4>>2]|0)==(c[c[g>>2]>>2]|0)){s=c[
m>>2]|0;i=r;return s|0}c[l>>2]=c[c[g>>2]>>2];c[n>>2]=0;while(1){if((c[n>
x3e;2]|0)>>>0>=(c[l>>2]|0)>>>0)break;Jn(c[g>>2]|0,c[n>>2]|0);c[
n>>2]=(c[n>>2]|0)+1}s=c[m>>2]|0;i=r;return s|0}function In(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;l=i;i=i+32|0;e=l+24|0;m=l+20|0;j=l+16|0;k=l+12|0;f=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[m>>2]=b;c[j
x3e;>2]=0;c[k>>2]=0;c[f>>2]=c[(c[m>>2]|0)+8>>2];c[h>>2]=c[c[m>>
2]>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>
;>0)break;if(!(c[j>>2]|0)){m=c[f>>2]|0;c[f>>2]=m+1;c[k>>2]=d[m>>0];c[j>
;>2]=128}if(c[k>>2]&c[j>>2]|0)Jn(c[e>>2]|0,c[g>>2]|0);c[j>>2]=c[j>
;>2]>>1;c[g>>2]=(c[g>>2]|0)+1}i=l;return}function Jn(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;k=i;i=i+32|0;d=k+20|0;l=k+16|0;f=k+12|0;h=k+8|0;e=k+4|0;g=k;c[d>>2]=a;c[l>>2]=b;c[f>>
2]=(c[(c[d>>2]|0)+8>>2]|0)+((c[l>>2]|0)*28|0);if((c[l>>2]|0)>>>0>=(c
[c[d>>2]>>2]|0)>>>0){i=k;return}if(c[(c[f>>2]|0)+16>>2]&4|0){i=k;return
}l=(c[f>>2]|0)+16|0;c[l>>2]=c[l>>2]|4;c[h>>2]=c[(c[d>>2]|0)+16>>2];c
[e>>2]=c[(c[d>>2]|0)+4>>2];c[(c[f>>2]|0)+20>>2]=0;while(1){if((c[e>>
2]|0)>>>0<=0)break;c[g>>2]=c[c[h>>2]>>2];if(Kn(c[f>>2]|0,c[g>
x3e;2]|0)|0){j=6;break}c[e>>2]=(c[e>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+4}if((j|0)==6)c[(c[f
x3e;>2]|0)+20>>2]=c[g>>2];if((c[(c[d>>2]|0)+4>>2]|0)>>>0>=(c[c[
d>>2]>>2]|0)>>>0){i=k;return}j=c[f>>2]|0;a=(c[d>>2]|0)+4|0;l=c[a>>
;2]|0;c[a>>2]=l+1;c[(c[(c[d>>2]|0)+16>>2]|0)+(l<<2)>>2]=j;i=k;return}function
Kn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(((c[c[d>>2]>
;>2]|0)+(c[(c[d>>2]|0)+4>>2]|0)|0)<(c[c[e>>2]>>2]|0)){b=0;b=b&1;i=f;return
b|0}b=((c[c[e>>2]>>2]|0)+(c[(c[e>>2]|0)+4>>2]|0)|0)>=(c[c[d>>2]>>
;2]|0);b=b&1;i=f;return b|0}function Ln(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;o=i;i=i+48|0;d=o+32|0;
k=o+28|0;j=o+24|0;l=o+20|0;g=o+16|0;e=o+12|0;m=o+8|0;h=o+4|0;f=o;c[d>>2]=a;c[k>>2]=0;a:while(1){if((c[k>
;>2]|0)>>>0>=(c[(c[d>>2]|0)+4>>2]|0)>>>0){n=17;break}c[j>>
2]=c[(c[(c[d>>2]|0)+12>>2]|0)+(c[k>>2]<<3)>>2];b:do if(c[(c[(c[d>>2]|
0)+12>>2]|0)+(c[k>>2]<<3)+4>>2]|0){c[l>>2]=c[j>>2];c[g>>2]=
c[l>>2];c[e>>2]=c[l>>2];do{c[g>>2]=c[c[g>>2]>>2];if((c[g>>
2]|0)==(c[j>>2]|0)){n=30;break a}}while((c[(c[g>>2]|0)+36>>2]|0)==(c[(c[l>>2]|0)+36>
;>2]|0));b=c[(c[g>>2]|0)+4>>2]|0;c[l>>2]=b;c[j>>2]=b;while(1){c[e>>2]=c[l
>>2];do{c[e>>2]=c[(c[e>>2]|0)+4>>2];if((c[e>>2]|0)==(c[j>>2]|0))break
b}while((c[(c[e>>2]|0)+36>>2]|0)==(c[(c[l>>2]|0)+36>>2]|0));a=c[(c[e>>2]|0)+36
>>2]|0;b=c[(c[l>>2]|0)+36>>2]|0;if((c[(c[g>>2]|0)+36>>2]|0)<(c[(c[l>
x3e;2]|0)+36>>2]|0)){if((a|0)<(b|0))n=14}else if((a|0)>(b|0))n=14;if((n|0)==14)while(1){n=0;b=(c[l>>
;2]|0)+16|0;c[b>>2]=c[b>>2]|64;c[l>>2]=c[(c[l>>2]|0)+4>>2];if((c[l>>
2]|0)!=(c[e>>2]|0))n=14;else break}c[g>>2]=c[c[e>>2]>>2];c[l>>2]=c[e>>
;2]}}while(0);c[k>>2]=(c[k>>2]|0)+1}if((n|0)==17)c[k>>2]=0;c:while(1){if((n|0)==30)c[k>>
2]=(c[k>>2]|0)+1;if((c[k>>2]|0)>>>0>=(c[c[d>>2]>>2]|0)>>
x3e;0)break;c[m>>2]=(c[(c[d>>2]|0)+8>>2]|0)+((c[k>>2]|0)*48|0);c[h>>2]=c[m>
;>2];c[f>>2]=c[m>>2];if(c[(c[m>>2]|0)+16>>2]&64|0){while(1){c[h>>2]=
c[c[h>>2]>>2];if((c[h>>2]|0)==(c[m>>2]|0)){n=30;continue c}if((c[(c[h>>2]|0)+40
>>2]|0)!=(c[(c[m>>2]|0)+40>>2]|0))break}while(1){c[f>>2]=c[(c[f>>2]|0)+4>
x3e;2];if((c[f>>2]|0)==(c[m>>2]|0)){n=30;continue c}if((c[(c[f>>2]|0)+40>>2]|0)!=(c[(c[m
>>2]|0)+40>>2]|0))break}}if((c[(c[h>>2]|0)+40>>2]|0)<(c[(c[m>>2]|0)+40>
;>2]|0)?(c[(c[f>>2]|0)+40>>2]|0)>(c[(c[m>>2]|0)+40>>2]|0):0){n=(c[m>>
;2]|0)+16|0;c[n>>2]=c[n>>2]|128;n=30;continue}if((c[(c[h>>2]|0)+40>>2]|0)<=(c[(c[m
x3e;>2]|0)+40>>2]|0)){n=30;continue}if((c[(c[f>>2]|0)+40>>2]|0)>=(c[(c[m>>2]|0
)+40>>2]|0)){n=30;continue}n=(c[m>>2]|0)+16|0;c[n>>2]=c[n>>2]|256;n=30}i=o;return}function
Mn(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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0;j=l
;c[m>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=c[(c[m>>2]|0)+8>
;>2];c[j>>2]=c[c[m>>2]>>2];while(1){if((c[j>>2]|0)>>>0<=0)break
;Nn(c[k>>2]|0,c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);c[j>>2]=(c[j>>2]|0)+-1;
c[k>>2]=(c[k>>2]|0)+28}i=l;return}function Nn(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;E=i;i=i+96|0;B=E+88|0;k=E+84|0;l=E+80|0;m=E+76|0;p=E+72|0;u=E
+68|0;h=E+64|0;D=E+60|0;C=E+56|0;w=E+52|0;q=E+48|0;v=E+36|0;t=E+32|0;s=E+28|0;r=E+24|0;o=E+20|0;n=E+16|0;y=E+12|0;A=E+8|0;x=E+4|
0;z=E;c[B>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[p>>2]=(c[k>>2]|0)+4+((
c[l>>2]|0)*204|0);c[u>>2]=c[(c[p>>2]|0)+196>>2];c[h>>2]=c[(c[p>>2]|0
)+200>>2];if(c[(c[B>>2]|0)+16>>2]&8|0){i=E;return}b=Mb(c[c[B>>2]>>2]|0,c[
u>>2]|0)|0;c[D>>2]=b+(c[h>>2]|0);c[C>>2]=Mb(c[(c[B>>2]|0)+4>>2]|0,c[
u>>2]|0)|0;if(!((c[l>>2]|0)==0?!(a[(c[m>>2]|0)+120>>0]|0):0))j=4;do if((j|0)==4){if((c[l
>>2]|0)==1?(a[(c[m>>2]|0)+121>>0]|0)==0:0)break;if((c[l>>2]|0)==0?d[(c[m>>2]|0
)+122>>0]|0:0)h=1;else if((c[l>>2]|0)==1)h=(d[(c[m>>2]|0)+123>>0]|0)!=0;else h=0;c[w>
;>2]=h&1;j=c[C>>2]|0;c[q>>2]=j;c[(c[B>>2]|0)+12>>2]=j;c[v>>2]=0;c[v+
4>>2]=0;c[v+8>>2]=0;if((c[l>>2]|0)==1)On((c[k>>2]|0)+412|0,(c[c[B>>2]>>
;2]|0)+(c[(c[B>>2]|0)+4>>2]|0)|0,c[c[B>>2]>>2]|0,v);switch(c[v>>2]|0){case 1:{
c[(c[B>>2]|0)+8>>2]=(c[v+4>>2]|0)-(c[q>>2]|0);break}case 2:{c[(c[B>>2]|0)+8>
;>2]=c[v+8>>2];break}case 3:{c[(c[B>>2]|0)+8>>2]=c[v+8>>2];c[(c[B>>2]|0)+
12>>2]=(c[v+4>>2]|0)-(c[v+8>>2]|0);break}default:{c[t>>2]=c[(c[B>>2]|0)+20>
;>2];if(c[t>>2]|0){if(!(c[(c[t>>2]|0)+16>>2]&8))Nn(c[t>>2]|0,c[k>>2]|
0,c[l>>2]|0,c[m>>2]|0);c[s>>2]=(c[c[t>>2]>>2]|0)+(c[(c[t>>2]|0)+4>
;>2]>>1);c[r>>2]=(c[(c[t>>2]|0)+8>>2]|0)+(c[(c[t>>2]|0)+12>>2]
x3e;>1);c[o>>2]=(c[c[B>>2]>>2]|0)+(c[(c[B>>2]|0)+4>>2]>>1);c[n
x3e;>2]=Mb((c[o>>2]|0)-(c[s>>2]|0)|0,c[u>>2]|0)|0;c[D>>2]=(c[r>>2]|0)+(c[
n>>2]|0)-(c[C>>2]>>1)}c[(c[B>>2]|0)+8>>2]=c[D>>2];c[(c[B>>
2]|0)+12>>2]=c[q>>2];do if(a[(c[m>>2]|0)+124>>0]|0){if((c[C>>2]|0)>64){c[
C>>2]=Pn(c[p>>2]|0,c[C>>2]|0,0)|0;break}if((c[C>>2]|0)>=32){c[D>>2]=(c[D
x3e;>2]|0)+(c[C>>2]>>1)&-64;c[C>>2]=64;break}h=(c[D>>2]|0)+32&-64;if((c[C
>>2]|0)<=0){c[D>>2]=h;break}c[y>>2]=h;c[A>>2]=(c[D>>2]|0)+(c[C>>
;2]|0)+32&-64;c[x>>2]=(c[y>>2]|0)-(c[D>>2]|0);c[z>>2]=(c[A>>2]|0)-((c[D
x3e;>2]|0)+(c[C>>2]|0));if((c[x>>2]|0)<0)c[x>>2]=0-(c[x>>2]|0);if((c[z>
x3e;2]|0)<0)c[z>>2]=0-(c[z>>2]|0);if((c[x>>2]|0)<=(c[z>>2]|0)){c[D>>
2]=c[y>>2];break}else{c[D>>2]=c[A>>2];break}}while(0);A=(c[D>>2]|0)+(Qn(c[D>>2
]|0,c[C>>2]|0)|0)|0;c[(c[B>>2]|0)+8>>2]=A;c[(c[B>>2]|0)+12>>2]=c[C>>
2]}}a:do if(c[w>>2]|0){c[D>>2]=c[(c[B>>2]|0)+8>>2];c[C>>2]=c[(c[B>>2
]|0)+12>>2];if((c[C>>2]|0)<64)c[C>>2]=64;else c[C>>2]=(c[C>>2]|0)+32&
;-64;switch(c[v>>2]|0){case 3:break a;case 1:{c[(c[B>>2]|0)+8>>2]=(c[v+4>>2]|0)-(c[C>
;>2]|0);c[(c[B>>2]|0)+12>>2]=c[C>>2];break a}case 2:{c[(c[B>>2]|0)+12>>2]=
c[C>>2];break a}default:{c[(c[B>>2]|0)+12>>2]=c[C>>2];h=(c[D>>2]|0)+(c[C>
x3e;2]>>1)|0;if(c[C>>2]&64|0)c[D>>2]=(h&-64)+32;else c[D>>2]=h+32&-64;c[(
c[B>>2]|0)+8>>2]=(c[D>>2]|0)-(c[C>>2]>>1);c[(c[B>>2]|0)+12>>
;2]=c[C>>2];break a}}}while(0);D=(c[B>>2]|0)+16|0;c[D>>2]=c[D>>2]|8;i=E;return}while(0);
c[(c[B>>2]|0)+8>>2]=c[D>>2];c[(c[B>>2]|0)+12>>2]=c[C>>2];D=(c[B>
;>2]|0)+16|0;c[D>>2]=c[D>>2]|8;i=E;return}function On(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;r=i;i=i+48|0;g=r+32|0;h=r+28|0;j=r+24|0;k=r+20|0;o=r+16|0;l=r+12|0;m=r+8|0;p=r+4|0;n=r;c[g>
x3e;2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[c[k>>2]>>2]=0;c[n>>2]=d[(c[
g>>2]|0)+2080>>0];c[o>>2]=c[g>>2];c[l>>2]=c[c[o>>2]>>2];c[
p>>2]=(c[o>>2]|0)+4;while(1){if((c[l>>2]|0)>>>0<=0)break;c[m>>2]=(c[
h>>2]|0)-(c[(c[p>>2]|0)+12>>2]|0);if((c[m>>2]|0)<(0-(c[(c[g>>2]|0)+2076
x3e;>2]|0)|0))break;if((c[h>>2]|0)<=((c[(c[p>>2]|0)+8>>2]|0)+(c[(c[g>>2]|0)+2076
>>2]|0)|0)){q=5;break}c[l>>2]=(c[l>>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+32}do if((q|0
)==5){if((c[n>>2]|0)==0?(c[m>>2]|0)>(c[(c[g>>2]|0)+2072>>2]|0):0)break;q=c[k>
x3e;2]|0;c[q>>2]=c[q>>2]|1;c[(c[k>>2]|0)+4>>2]=c[(c[p>>2]|0)+16>>2]}
while(0);c[o>>2]=(c[g>>2]|0)+516;c[l>>2]=c[c[o>>2]>>2];c[p>>2]=(c[o
x3e;>2]|0)+4+(c[l>>2]<<5)+-32;while(1){if((c[l>>2]|0)>>>0<=0){q=17;break}
c[m>>2]=(c[(c[p>>2]|0)+8>>2]|0)-(c[j>>2]|0);if((c[m>>2]|0)<(0-(c[(c[g>
;>2]|0)+2076>>2]|0)|0)){q=17;break}if((c[j>>2]|0)>=((c[(c[p>>2]|0)+12>>2]|0)-(
c[(c[g>>2]|0)+2076>>2]|0)|0)){q=13;break}c[l>>2]=(c[l>>2]|0)+-1;c[p>>2]=(c[p
x3e;>2]|0)+-32}if((q|0)==13){if((c[n>>2]|0)==0?(c[m>>2]|0)>=(c[(c[g>>2]|0)+2072>>
;2]|0):0){i=r;return}q=c[k>>2]|0;c[q>>2]=c[q>>2]|2;c[(c[k>>2]|0)+8>>2]=c[(c[p
x3e;>2]|0)+16>>2];i=r;return}else if((q|0)==17){i=r;return}}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;k=i;i=i+16|0;f=k+8|0;g=k+4|0;h=k+12|0;j=k;c[f>>2]=b;c[g>>2]=d;a[h>>0]=e;do if((c[g>
x3e;2]|0)>64){c[j>>2]=(c[g>>2]|0)-(c[(c[f>>2]|0)+4+4>>2]|0);if((c[j>>2]|0
)<0)c[j>>2]=0-(c[j>>2]|0);if((c[j>>2]|0)<40){d=c[(c[f>>2]|0)+4+4>>2]|
0;c[g>>2]=d;c[g>>2]=(c[g>>2]|0)<48?48:d}f=c[g>>2]|0;if((c[g>>2]|0)>=
192){c[g>>2]=f+32&-64;break}c[j>>2]=f&63;c[g>>2]=c[g>>2]&-64;f=c[j>
x3e;2]|0;if((c[j>>2]|0)<10){c[g>>2]=(c[g>>2]|0)+f;break}if((f|0)<32){c[g>>2]=(
c[g>>2]|0)+10;break}if((c[j>>2]|0)<54){c[g>>2]=(c[g>>2]|0)+54;break}else{c[g>
x3e;2]=(c[g>>2]|0)+(c[j>>2]|0);break}}else c[g>>2]=64;while(0);if(!(a[h>>0]|0)){j=c[g>
;>2]|0;i=k;return j|0}c[g>>2]=(c[g>>2]|0)+32&-64;j=c[g>>2]|0;i=k;return j|0}function Qn(
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;d=g+16|0;j=g+12|0;h=g+8|0;e=g+4|0;f=g;c[j>>2]=a;c[h>>
;2]=b;c[e>>2]=((c[j>>2]|0)+32&-64)-(c[j>>2]|0);c[f>>2]=((c[j>>2]|0)+(c[h
x3e;>2]|0)+32&-64)-(c[j>>2]|0)-(c[h>>2]|0);b=c[e>>2]|0;a=c[f>>2]|0;if((((c[e
x3e;>2]|0)<0?0-b|0:b)|0)<=(((c[f>>2]|0)<0?0-a|0:a)|0)){c[d>>2]=c[e>>2];j=c[d
x3e;>2]|0;i=g;return j|0}else{c[d>>2]=c[f>>2];j=c[d>>2]|0;i=g;return j|0}return 0}function Rn
(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;s=i;i=i+80|0;d=s+64|0;v=s+60|0;q=s
+56|0;k=s+52|0;m=s+48|0;h=s+44|0;j=s+40|0;u=s+36|0;t=s+32|0;r=s+28|0;l=s+24|0;e=s+20|0;n=s+16|0;f=s+12|0;o=s+8|0;g=s+4|0;p=s;c[d
>>2]=a;c[v>>2]=b;c[q>>2]=(c[d>>2]|0)+28+((c[v>>2]|0)*40|0);c[k>>2]=c
[(c[(c[q>>2]|0)+32>>2]|0)+8>>2];c[m>>2]=c[c[(c[q>>2]|0)+32>>2]>
x3e;2];c[h>>2]=0;c[j>>2]=(c[v>>2]|0)==0?1:2;c[u>>2]=(c[(c[d>>2]|0)+24>>
;2]|0)+4+((c[v>>2]|0)*204|0);c[t>>2]=c[(c[u>>2]|0)+196>>2];a=Vb(32,c[t>>2]|0)|
0;c[r>>2]=a;c[r>>2]=(c[r>>2]|0)>30?30:a;a:do if((c[m>>2]|0)>>>0>
;1?(c[c[d>>2]>>2]|0)>>>0>0:0){if((c[(c[k>>2]|0)+12>>2]|0)>>
;>0>(c[c[d>>2]>>2]|0)>>>0)b=c[c[d>>2]>>2]|0;else b=c[(c[k>
x3e;2]|0)+12>>2]|0;c[h>>2]=b;c[k>>2]=(c[k>>2]|0)+16;while(1){if((c[m>>2]|0)>
;>>0<=1)break a;if((c[(c[k>>2]|0)+12>>2]|0)>>>0>(c[c[d>>2]>
;>2]|0)>>>0)b=c[c[d>>2]>>2]|0;else b=c[(c[k>>2]|0)+12>>2]|0;c[l>
;>2]=b;c[e>>2]=(c[l>>2]|0)-(c[h>>2]|0);if((c[e>>2]|0)>0){c[n>>2]=(c[(
c[d>>2]|0)+8>>2]|0)+((c[h>>2]|0)*48|0);Sn(c[q>>2]|0,c[k>>2]|0);Un(c[q>>
;2]|0,c[n>>2]|0,c[e>>2]|0,c[r>>2]|0,c[j>>2]|0)}c[h>>2]=c[l>>2];c[m
x3e;>2]=(c[m>>2]|0)+-1;c[k>>2]=(c[k>>2]|0)+16}}while(0);if((c[m>>2]|0)==1){c[f>
;>2]=c[c[d>>2]>>2];c[o>>2]=c[(c[d>>2]|0)+8>>2];Sn(c[q>>2]|0,c[(
c[(c[q>>2]|0)+32>>2]|0)+8>>2]|0);Un(c[q>>2]|0,c[o>>2]|0,c[f>>2]|0,c[
r>>2]|0,c[j>>2]|0)}c[g>>2]=c[c[d>>2]>>2];c[p>>2]=c[(c[d>>2
]|0)+8>>2];while(1){if((c[g>>2]|0)>>>0<=0)break;if(c[(c[p>>2]|0)+32>>
;2]|0?(c[(c[p>>2]|0)+16>>2]&16|0)==0:0){v=(c[p>>2]|0)+16|0;c[v>>2]=c[v>>2
]|16}c[g>>2]=(c[g>>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+48}i=s;return}function Sn(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;t=i;i=i+64|0;e=t+56|0;u=t+52|0;q=t+48|0;s=t+44|0;h=t+40|0
;o=t+36|0;p=t+32|0;f=t+28|0;j=t+24|0;g=t+20|0;m=t+16|0;n=t+12|0;k=t+8|0;l=t+4|0;r=t;c[e>>2]=a;c[u>>2]=b;c[q
x3e;>2]=0;c[s>>2]=0;c[h>>2]=c[(c[u>>2]|0)+8>>2];c[p>>2]=c[c[u>>
2]>>2];c[f>>2]=0;Tn(c[e>>2]|0);c[o>>2]=0;while(1){if((c[o>>2]|0)>>
x3e;0>=(c[p>>2]|0)>>>0)break;if(!(c[q>>2]|0)){u=c[h>>2]|0;c[h>>2]=u+
1;c[s>>2]=d[u>>0];c[q>>2]=128}if(((c[s>>2]&c[q>>2]|0?(c[j>>2]=(
c[(c[e>>2]|0)+8>>2]|0)+((c[o>>2]|0)*28|0),(c[(c[j>>2]|0)+16>>2]&4|0)==0):
0)?(c[g>>2]=0,(c[g>>2]|0)==0):0)?(u=(c[j>>2]|0)+16|0,c[u>>2]=c[u>>2]|4,(c[f>
;>2]|0)>>>0<(c[c[e>>2]>>2]|0)>>>0):0){a=c[j>>2]|0;u=c[f>
;>2]|0;c[f>>2]=u+1;c[(c[(c[e>>2]|0)+12>>2]|0)+(u<<2)>>2]=a}c[q>>
;2]=c[q>>2]>>1;c[o>>2]=(c[o>>2]|0)+1}c[(c[e>>2]|0)+4>>2]=c[f>
x3e;2];c[r>>2]=c[(c[e>>2]|0)+12>>2];c[m>>2]=1;while(1){if((c[m>>2]|0)>=(c
[f>>2]|0))break;c[k>>2]=c[(c[r>>2]|0)+(c[m>>2]<<2)>>2];c[n>>
;2]=(c[m>>2]|0)-1;while(1){if((c[n>>2]|0)<0)break;c[l>>2]=c[(c[r>>2]|0)+(c[n>
x3e;2]<<2)>>2];if((c[c[l>>2]>>2]|0)<(c[c[k>>2]>>2]|0))break;c[(
c[r>>2]|0)+((c[n>>2]|0)+1<<2)>>2]=c[l>>2];c[(c[r>>2]|0)+(c[n>
x3e;2]<<2)>>2]=c[k>>2];c[n>>2]=(c[n>>2]|0)+-1}c[m>>2]=(c[m>>
;2]|0)+1}i=t;return}function Tn(a){a=a|0;var b=0,d=0,e=0,f=0;e=i;i=i+16|0;f=e+8|0;b=e+4|0;d=e;c[f>>2]=a;c[b>>
;2]=c[c[f>>2]>>2];c[d>>2]=c[(c[f>>2]|0)+8>>2];while(1){if((c[b>>2]|0
)>>>0<=0)break;f=(c[d>>2]|0)+16|0;c[f>>2]=c[f>>2]&-5;c[(c[d>>2]|
0)+24>>2]=-1;c[b>>2]=(c[b>>2]|0)+-1;c[d>>2]=(c[d>>2]|0)+28}i=e;return}function
Un(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,x=0,y=0,z=0,A=0,B=0
,C=0,D=0,E=0,F=0,G=0;F=i;i=i+96|0;G=F+88|0;h=F+84|0;j=F+80|0;k=F+76|0;l=F+72|0;D=F+68|0;A=F+64|0;C=F+60|0;B=F+56|0;x=F+52|0;q=F+
48|0;m=F+44|0;y=F+40|0;r=F+36|0;n=F+32|0;z=F+28|0;w=F+24|0;v=F+20|0;s=F+16|0;o=F+12|0;t=F+8|0;p=F+4|0;u=F;c[G>>2]=b;c[
h>>2]=d;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[D>>2]=c[(c[G>>2]|0)+12>
x3e;2];c[A>>2]=c[(c[G>>2]|0)+4>>2];while(1){if((c[j>>2]|0)>>>0<=0)break
;c[C>>2]=0;c[B>>2]=c[(c[h>>2]|0)+36>>2];a:do if(!(c[(c[h>>2]|0)+16>>
2]&16)){do if((a[(c[h>>2]|0)+20>>0]|0)!=(c[l>>2]|0)?(a[(c[h>>2]|0)+20>>0]|
0)!=(0-(c[l>>2]|0)|0):0){if((a[(c[h>>2]|0)+21>>0]|0)!=(c[l>>2]|0)?(a[(c[h>>2]|
0)+21>>0]|0)!=(0-(c[l>>2]|0)|0):0)break;c[C>>2]=a[(c[h>>2]|0)+21>>0]}else E=6;
while(0);if((E|0)==6){E=0;c[C>>2]=a[(c[h>>2]|0)+20>>0]}if(c[C>>2]|0){if((c[C>>
2]|0)==(c[l>>2]|0)){c[x>>2]=0;while(1){if((c[x>>2]|0)>>>0>=(c[A>>2]|
0)>>>0)break a;c[q>>2]=c[(c[D>>2]|0)+(c[x>>2]<<2)>>2];c[m>
x3e;2]=(c[B>>2]|0)-(c[c[q>>2]>>2]|0);if((c[m>>2]|0)<(c[k>>2]|0)?(0-(c[m
x3e;>2]|0)|0)<(c[k>>2]|0):0)break;c[x>>2]=(c[x>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G
>>2]=c[G>>2]|16;G=(c[h>>2]|0)+16|0;c[G>>2]=c[G>>2]|512;c[(c[h>>2]|0)+
32>>2]=c[q>>2];break}if((c[C>>2]|0)!=(0-(c[l>>2]|0)|0))break;c[y>>2]=0;while(1
){if((c[y>>2]|0)>>>0>=(c[A>>2]|0)>>>0)break a;c[r>>2]=c[(c[D>
;>2]|0)+(c[y>>2]<<2)>>2];c[n>>2]=(c[B>>2]|0)-(c[c[r>>2]>
x3e;2]|0)-(c[(c[r>>2]|0)+4>>2]|0);if((c[n>>2]|0)<(c[k>>2]|0)?(0-(c[n>>2]|
0)|0)<(c[k>>2]|0):0)break;c[y>>2]=(c[y>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>2
]=c[G>>2]|16;G=(c[h>>2]|0)+16|0;c[G>>2]=c[G>>2]|1024;c[(c[h>>2]|0)+32>>
;2]=c[r>>2];break}if(c[(c[h>>2]|0)+16>>2]&64|0){if((c[l>>2]|0)==2){c[w>>2
]=128;c[v>>2]=256}else{c[w>>2]=256;c[v>>2]=128}b:do if(!(c[(c[h>>2]|0)+16>>2]
x26;c[w>>2]|0)){if(c[(c[h>>2]|0)+16>>2]&c[v>>2]|0){c[z>>2]=0;while(1){if((
c[z>>2]|0)>>>0>=(c[A>>2]|0)>>>0)break b;c[t>>2]=c[(c[D>>
;2]|0)+(c[z>>2]<<2)>>2];c[p>>2]=(c[B>>2]|0)-(c[c[t>>2]>>2]|
0)-(c[(c[t>>2]|0)+4>>2]|0);if((c[p>>2]|0)<(c[k>>2]|0)?(0-(c[p>>2]|0)|0)
x3c;(c[k>>2]|0):0)break;c[z>>2]=(c[z>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>2]=c[G
x3e;>2]|1024;c[(c[h>>2]|0)+32>>2]=c[t>>2];G=(c[h>>2]|0)+16|0;c[G>>2]=c[G
x3e;>2]|16}}else{c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[A>>2]|0)>
x3e;>0)break b;c[s>>2]=c[(c[D>>2]|0)+(c[z>>2]<<2)>>2];c[o>>2]=(
c[B>>2]|0)-(c[c[s>>2]>>2]|0);if((c[o>>2]|0)<(c[k>>2]|0)?(0-(c[o>>
;2]|0)|0)<(c[k>>2]|0):0)break;c[z>>2]=(c[z>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>
;2]=c[G>>2]|512;c[(c[h>>2]|0)+32>>2]=c[s>>2];G=(c[h>>2]|0)+16|0;c[G>>
;2]=c[G>>2]|16}while(0);if(!(c[(c[h>>2]|0)+32>>2]|0)){c[z>>2]=0;while(1){if((c[z>
x3e;2]|0)>>>0>=(c[A>>2]|0)>>>0)break a;c[u>>2]=c[(c[D>>2]|0)+(c
[z>>2]<<2)>>2];if((c[B>>2]|0)>=(c[c[u>>2]>>2]|0)?(c[B>>
;2]|0)<=((c[c[u>>2]>>2]|0)+(c[(c[u>>2]|0)+4>>2]|0)|0):0)break;c[z>>2]=(c[
z>>2]|0)+1}c[(c[h>>2]|0)+32>>2]=c[u>>2]}}}while(0);c[j>>2]=(c[j>>2]|
0)+-1;c[h>>2]=(c[h>>2]|0)+48}i=F;return}function Vn(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;q=i;i=i+48|0;f=q+36|0;r=q+32|0;m=q+28|0;o=q+24|0;k=q+20|0;g=q+16|0;l=q+12|0;n=q+8|0;h=q+4|0;j=q;c[f>>2]=b
;c[r>>2]=e;c[k>>2]=c[c[r>>2]>>2];c[l>>2]=c[(c[r>>2]|0)+8>>
2];while(1){if((c[k>>2]|0)>>>0<=0)break;if(!((((a[(c[l>>2]|0)+20>>0]|0)!=2?(a[(
c[l>>2]|0)+20>>0]|0)!=-2:0)?(a[(c[l>>2]|0)+21>>0]|0)!=2:0)?(a[(c[l>>2]|0)+21
x3e;>0]|0)!=-2:0))p=7;a:do if((p|0)==7?(p=0,(c[(c[l>>2]|0)+16>>2]&16|0)==0):0){c[n>>2]=c
[(c[l>>2]|0)+36>>2];c[m>>2]=c[f>>2];c[g>>2]=c[c[m>>2]>>2];
c[o>>2]=(c[m>>2]|0)+4;while(1){if((c[g>>2]|0)>>>0<=0)break;c[h>>2]=(
c[n>>2]|0)-(c[(c[o>>2]|0)+12>>2]|0);if((c[h>>2]|0)<(0-(c[(c[f>>2]|0)+2076
>>2]|0)|0))break;do if((c[n>>2]|0)<=((c[(c[o>>2]|0)+8>>2]|0)+(c[(c[f>>2]|
0)+2076>>2]|0)|0)){if((d[(c[f>>2]|0)+2080>>0]|0)==0?(c[h>>2]|0)>(c[(c[f>>
2]|0)+2072>>2]|0):0)break;c[(c[l>>2]|0)+44>>2]=c[(c[o>>2]|0)+24>>2];r=(c[l>
;>2]|0)+16|0;c[r>>2]=c[r>>2]|16;r=(c[l>>2]|0)+16|0;c[r>>2]=c[r>>2]|32}while
(0);c[g>>2]=(c[g>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+32}c[m>>2]=(c[f>>2]|0
)+516;c[g>>2]=c[c[m>>2]>>2];c[o>>2]=(c[m>>2]|0)+4+(c[g>>2]<<
;5)+-32;while(1){if((c[g>>2]|0)>>>0<=0)break a;c[j>>2]=(c[(c[o>>2]|0)+8>
x3e;2]|0)-(c[n>>2]|0);if((c[j>>2]|0)<(0-(c[(c[f>>2]|0)+2076>>2]|0)|0))break a;do if
((c[n>>2]|0)>=((c[(c[o>>2]|0)+12>>2]|0)-(c[(c[f>>2]|0)+2076>>2]|0)|0)){if
((d[(c[f>>2]|0)+2080>>0]|0)==0?(c[j>>2]|0)>=(c[(c[f>>2]|0)+2072>>2]|0):0)
break;c[(c[l>>2]|0)+44>>2]=c[(c[o>>2]|0)+28>>2];r=(c[l>>2]|0)+16|0;c[r>
x3e;2]=c[r>>2]|16;r=(c[l>>2]|0)+16|0;c[r>>2]=c[r>>2]|32}while(0);c[g>>2]=(c[g
x3e;>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+-32}}while(0);c[k>>2]=(c[k>>2]|0)+-1;c[l>>
;2]=(c[l>>2]|0)+48}i=q;return}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,l=0,m=0;j=i;i=i+32|0;k=j+28
|0;m=j+24|0;l=j+20|0;h=j+16|0;d=j+12|0;g=j+8|0;f=j+4|0;e=j;c[k>>2]=a;c[m>>2]=b;c[l>>2]=(c[(c[k>
;>2]|0)+24>>2]|0)+4+((c[m>>2]|0)*204|0);c[h>>2]=c[(c[l>>2]|0)+196>>2];c[d
>>2]=c[c[k>>2]>>2];c[g>>2]=c[(c[k>>2]|0)+8>>2];while(1){if((c[d>
;>2]|0)>>>0<=0)break;c[f>>2]=c[(c[g>>2]|0)+32>>2];if(c[f>>2]|0){
do if(!(c[(c[g>>2]|0)+16>>2]&512|0)){if(c[(c[g>>2]|0)+16>>2]&1024|0){c[(c[g>
;>2]|0)+44>>2]=(c[(c[f>>2]|0)+8>>2]|0)+(c[(c[f>>2]|0)+12>>2]|0);break}c[e
>>2]=(c[(c[g>>2]|0)+36>>2]|0)-(c[c[f>>2]>>2]|0);if((c[e>>2]|0)<=
0){m=c[(c[f>>2]|0)+8>>2]|0;m=m+(Mb(c[e>>2]|0,c[h>>2]|0)|0)|0;c[(c[g>>2]|0)+44
x3e;>2]=m;break}b=c[(c[f>>2]|0)+8>>2]|0;if((c[e>>2]|0)>=(c[(c[f>>2]|0)+4>
x3e;2]|0)){m=b+(c[(c[f>>2]|0)+12>>2]|0)|0;m=m+(Mb((c[e>>2]|0)-(c[(c[f>>2]|0)+4>>
;2]|0)|0,c[h>>2]|0)|0)|0;c[(c[g>>2]|0)+44>>2]=m;break}else{m=b+(xb(c[e>>2]|0,c[(c[f>
;>2]|0)+12>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0)|0;c[(c[g>>2]|0)+44>>2]=m;break
}}else c[(c[g>>2]|0)+44>>2]=c[(c[f>>2]|0)+8>>2];while(0);m=(c[g>>2]|0)+16|0;c[
m>>2]=c[m>>2]|32}c[d>>2]=(c[d>>2]|0)+-1;c[g>>2]=(c[g>>2]|0)+48}i=j;return
}function Xn(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;t=i;i=i+128|0;u=t+124|
0;w=t+120|0;v=t+116|0;p=t+112|0;k=t+108|0;q=t+104|0;r=t+40|0;m=t+36|0;g=t+32|0;o=t+28|0;n=t+24|0;e=t+20|0;f=t+16|0;j=t+12|0;h=t+
8|0;l=t+4|0;s=t;c[u>>2]=b;c[w>>2]=d;c[v>>2]=(c[(c[u>>2]|0)+24>>2]|0)+4+((c[w
x3e;>2]|0)*204|0);c[p>>2]=c[(c[v>>2]|0)+196>>2];c[k>>2]=c[(c[u>>2]|0)+16
x3e;>2];c[q>>2]=0;c[m>>2]=0;c[g>>2]=c[(c[u>>2]|0)+8>>2];c[o>>2]=(
c[g>>2]|0)+((c[c[u>>2]>>2]|0)*48|0);c[n>>2]=c[g>>2];while(1){if((c[n>>
;2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(c[(c[n>>2]|0)+16>>2]&
16|0)c[m>>2]=(c[m>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+48}if(!(c[m>>2]|0)){i=t;return}
if((c[m>>2]|0)>>>0>16){c[q>>2]=hc(c[k>>2]|0,4,0,c[m>>2]|0,0,e)|0;if(
c[e>>2]|0){i=t;return}}else c[q>>2]=r;c[m>>2]=0;c[n>>2]=c[g>>2];while(1){if((c
[n>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(c[(c[n>>2]|0)+16>
x3e;2]&16|0){c[f>>2]=(c[q>>2]|0)+(c[m>>2]<<2);while(1){if((c[f>>2]|0)>
;>>0<=(c[q>>2]|0)>>>0)break;if((c[(c[(c[f>>2]|0)+-4>>2]|0)+36>
x3e;2]|0)<=(c[(c[n>>2]|0)+36>>2]|0))break;c[c[f>>2]>>2]=c[(c[f>>2]|0)+-4
x3e;>2];c[f>>2]=(c[f>>2]|0)+-4}c[c[f>>2]>>2]=c[n>>2];c[m>>2]=(c
[m>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+48}c[n>>2]=c[g>>2];while(1){if((c[n>>
;2]|0)>>>0>=(c[o>>2]|0)>>>0)break;do if(!(c[(c[n>>2]|0)+16>>2]
x26;16)){if(c[(c[n>>2]|0)+12>>2]&2|0){if((a[(c[n>>2]|0)+20>>0]|0)==4)break;if((a[(c
[n>>2]|0)+20>>0]|0)!=(a[(c[n>>2]|0)+21>>0]|0))break;if((c[(c[n>>2]|0)+16>
x3e;2]&64|0)==0?(c[(c[n>>2]|0)+12>>2]&4|0)==0:0)break;w=(c[n>>2]|0)+12|0;c[w>>
2]=c[w>>2]&-3}c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[m>>2]|0
)>>>0)break;if((c[(c[(c[q>>2]|0)+(c[l>>2]<<2)>>2]|0)+36>>2]|0)
x3e;(c[(c[n>>2]|0)+36>>2]|0))break;c[l>>2]=(c[l>>2]|0)+1}do if(c[l>>2]|0){c[j
x3e;>2]=c[(c[q>>2]|0)+((c[l>>2]|0)-1<<2)>>2];c[l>>2]=c[m>>2];while
(1){if((c[l>>2]|0)>>>0<=0)break;if((c[(c[(c[q>>2]|0)+((c[l>>2]|0)-1<<
;2)>>2]|0)+36>>2]|0)<(c[(c[n>>2]|0)+36>>2]|0))break;c[l>>2]=(c[l>>
;2]|0)+-1}d=c[l>>2]|0;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=c[(c[q>>2]|0)+(d-1
x3c;<2)>>2];w=c[(c[j>>2]|0)+44>>2]|0;w=w+(Mb((c[(c[n>>2]|0)+36>>2]|0)-(c[(
c[j>>2]|0)+36>>2]|0)|0,c[p>>2]|0)|0)|0;c[(c[n>>2]|0)+44>>2]=w;break}c[h>
x3e;2]=c[(c[q>>2]|0)+(d<<2)>>2];c[s>>2]=c[(c[n>>2]|0)+36>>2];if((c[s
>>2]|0)==(c[(c[j>>2]|0)+36>>2]|0)){c[(c[n>>2]|0)+44>>2]=c[(c[j>>2]|0
)+44>>2];break}if((c[s>>2]|0)==(c[(c[h>>2]|0)+36>>2]|0)){c[(c[n>>2]|0)+44>
;>2]=c[(c[h>>2]|0)+44>>2];break}else{w=c[(c[j>>2]|0)+44>>2]|0;w=w+(xb((c[s>>
;2]|0)-(c[(c[j>>2]|0)+36>>2]|0)|0,(c[(c[h>>2]|0)+44>>2]|0)-(c[(c[j>>2]|0)+44
x3e;>2]|0)|0,(c[(c[h>>2]|0)+36>>2]|0)-(c[(c[j>>2]|0)+36>>2]|0)|0)|0)|0;c[(c[n>
x3e;2]|0)+44>>2]=w;break}}else{c[h>>2]=c[c[q>>2]>>2];w=c[(c[h>>2]|0)+44>
x3e;2]|0;w=w+(Mb((c[(c[n>>2]|0)+36>>2]|0)-(c[(c[h>>2]|0)+36>>2]|0)|0,c[p>>2]|0
)|0)|0;c[(c[n>>2]|0)+44>>2]=w}while(0);w=(c[n>>2]|0)+16|0;c[w>>2]=c[w>>2]|32}while
(0);c[n>>2]=(c[n>>2]|0)+48}if((c[q>>2]|0)==(r|0)){i=t;return}Fb(c[k>>2]|0,c[q>>
;2]|0);c[q>>2]=0;i=t;return}function Yn(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;v=i;i=i+80|0;w=v+76|0;y=v+72|0;x=v+68|0;s=v+64|0;h=v+60|0;d=v+56|0;m=v+52|0;u=v+48|0;j=v+44|0;l=v+40|
0;r=v+36|0;k=v+32|0;n=v+28|0;o=v+24|0;e=v+20|0;f=v+16|0;q=v+12|0;p=v+8|0;g=v+4|0;t=v;c[w>>2]=a;c[y>>2]=b;c[x
>>2]=(c[(c[w>>2]|0)+24>>2]|0)+4+((c[y>>2]|0)*204|0);c[s>>2]=c[(c[x>>
2]|0)+196>>2];c[h>>2]=c[(c[x>>2]|0)+200>>2];c[d>>2]=c[(c[w>>2]|0)+12
>>2];c[m>>2]=c[(c[w>>2]|0)+4>>2];while(1){if((c[m>>2]|0)>>>0<
;=0)break;c[u>>2]=c[c[d>>2]>>2];c[l>>2]=(c[u>>2]|0)+((c[(c[d>>2]|0)+
4>>2]|0)*48|0);c[k>>2]=0;c[j>>2]=0;c[r>>2]=c[u>>2];while(1){if((c[r>>
;2]|0)>>>0>=(c[l>>2]|0)>>>0)break;if(c[(c[r>>2]|0)+16>>2]&
32|0){if(!(c[j>>2]|0))c[j>>2]=c[r>>2];c[k>>2]=(c[k>>2]|0)+1}c[r>>2]=(
c[r>>2]|0)+48}a:do if((c[k>>2]|0)>>>0<2){if((c[k>>2]|0)==1){y=c[(c[j>>
;2]|0)+44>>2]|0;c[h>>2]=y-(Mb(c[(c[j>>2]|0)+36>>2]|0,c[s>>2]|0)|0)}c[r>
x3e;2]=c[u>>2];while(1){if((c[r>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break
a;if((c[r>>2]|0)!=(c[j>>2]|0)){y=Mb(c[(c[r>>2]|0)+36>>2]|0,c[s>>2]|0)|0;c[(c[
r>>2]|0)+44>>2]=y+(c[h>>2]|0)}c[r>>2]=(c[r>>2]|0)+48}}else{c[u>>2]=c
[j>>2];do{c[r>>2]=c[j>>2];while(1){c[l>>2]=c[(c[j>>2]|0)+4>>2];if((c
[l>>2]|0)==(c[u>>2]|0))break a;if(!(c[(c[l>>2]|0)+16>>2]&32))break;c[j>>2
]=c[l>>2]}do c[l>>2]=c[(c[l>>2]|0)+4>>2];while(!(c[(c[l>>2]|0)+16>>2
]&32|0));if((c[(c[j>>2]|0)+36>>2]|0)<=(c[(c[l>>2]|0)+36>>2]|0)){c[n>>
;2]=c[(c[j>>2]|0)+36>>2];c[e>>2]=c[(c[j>>2]|0)+44>>2];c[o>>2]=(c[(c[
l>>2]|0)+36>>2]|0)-(c[n>>2]|0);c[f>>2]=(c[(c[l>>2]|0)+44>>2]|0)-(c[e
>>2]|0)}else{c[n>>2]=c[(c[l>>2]|0)+36>>2];c[e>>2]=c[(c[l>>2]|0)+44
x3e;>2];c[o>>2]=(c[(c[j>>2]|0)+36>>2]|0)-(c[n>>2]|0);c[f>>2]=(c[(c[j>
;>2]|0)+44>>2]|0)-(c[e>>2]|0)}c[t>>2]=65536;if((c[o>>2]|0)>0)c[t>>2]=
Vb(c[f>>2]|0,c[o>>2]|0)|0;c[r>>2]=c[(c[j>>2]|0)+4>>2];do{c[q>>2]=c[(
c[r>>2]|0)+36>>2];c[p>>2]=(c[q>>2]|0)-(c[n>>2]|0);do if((c[p>>2]|0)
x3e;0){b=c[e>>2]|0;if((c[p>>2]|0)>=(c[o>>2]|0)){y=b+(c[f>>2]|0)|0;c[g>>2]=
y+(Mb((c[p>>2]|0)-(c[o>>2]|0)|0,c[s>>2]|0)|0);break}else{c[g>>2]=b+(Mb(c[p>>2]|
0,c[t>>2]|0)|0);break}}else{y=c[e>>2]|0;c[g>>2]=y+(Mb(c[p>>2]|0,c[s>>2]|0)|0)}
while(0);c[(c[r>>2]|0)+44>>2]=c[g>>2];c[r>>2]=c[(c[r>>2]|0)+4>>2]}while
((c[r>>2]|0)!=(c[l>>2]|0));c[j>>2]=c[l>>2]}while((c[j>>2]|0)!=(c[u>>
2]|0))}while(0);c[m>>2]=(c[m>>2]|0)+-1;c[d>>2]=(c[d>>2]|0)+8}i=v;return}function Zn(b,d){
b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0;j=l;c[e>>2]=b;c[f
x3e;>2]=d;c[h>>2]=c[(c[e>>2]|0)+8>>2];c[k>>2]=c[(c[(c[e>>2]|0)+20>
x3e;2]|0)+4>>2];c[j>>2]=c[(c[(c[e>>2]|0)+20>>2]|0)+8>>2];c[g>>2]=0;while
(1){if((c[g>>2]|0)>>>0>=(c[c[e>>2]>>2]|0)>>>0)break;d=c[(c[h>
;>2]|0)+44>>2]|0;b=(c[k>>2]|0)+(c[g>>2]<<3)|0;if(!(c[f>>2]|0))c[b>
x3e;2]=d;else c[b+4>>2]=d;if(c[(c[h>>2]|0)+16>>2]&16|0){b=(c[j>>2]|0)+(c[g>>
;2]|0)|0;a[b>>0]=a[b>>0]|(((c[f>>2]|0)==0?32:64)&255)<<24>>24}c[h>
x3e;2]=(c[h>>2]|0)+48;c[g>>2]=(c[g>>2]|0)+1}i=l;return}function _n(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]|0)+16>>2];$n((c[d>>2]|0)+28+40
|0,c[e>>2]|0);$n((c[d>>2]|0)+28|0,c[e>>2]|0);Fb(c[e>>2]|0,c[(c[d>>2]|0)+8>
;>2]|0);c[(c[d>>2]|0)+8>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+12>>2]|0);c[(c[d
>>2]|0)+12>>2]=0;c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>
x3e;2]|0)+16>>2]=0;i=b;return}function $n(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2
]=0;c[(c[e>>2]|0)+20>>2]=0;c[(c[e>>2]|0)+28>>2]=0;Fb(c[f>>2]|0,c[(c[e>>
;2]|0)+12>>2]|0);c[(c[e>>2]|0)+12>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>
;2]|0);c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[c[e>>2]>>2]=0;c
[(c[e>>2]|0)+16>>2]=0;i=d;return}function ao(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;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c
[a+20>>2]=0;c[a+24>>2]=0;c[(c[d>>2]|0)+4>>2]=38;c[(c[d>>2]|0)+8>>2]=
108;c[(c[d>>2]|0)+12>>2]=11;c[(c[d>>2]|0)+16>>2]=12;c[(c[d>>2]|0)+20>>
;2]=15;c[(c[d>>2]|0)+24>>2]=24;i=b;return}function bo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2
]=a;dn(c[d>>2]|0,2);i=b;return}function co(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;o=
i;i=i+160|0;f=o+156|0;g=o+152|0;h=o+148|0;j=o+144|0;l=o+16|0;n=o+8|0;k=o+4|0;m=o;c[f>>2]=a;c[g>>2]=b;c[h>
;>2]=d;c[j>>2]=e;c[m>>2]=c[h>>2];c[n>>2]=0;while(1){if((c[m>>2]|0)<=
0)break;a=c[m>>2]|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>16?16:a;c[k>>2]=0;while
(1){if((c[k>>2]|0)>=(c[h>>2]<<1|0))break;c[n>>2]=(c[n>>2]|0)+(c[(c[j>
;>2]|0)+(c[k>>2]<<2)>>2]|0);a=(Tb(c[n>>2]|0)|0)>>16;c[l+(c[k>>2
]<<2)>>2]=a;c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)
x3e;=(c[h>>2]<<1|0))break;c[l+((c[k>>2]|0)+1<<2)>>2]=(c[l+((c[k>>2]|
0)+1<<2)>>2]|0)-(c[l+(c[k>>2]<<2)>>2]|0);c[k>>2]=(c[k>>2]|
0)+2}pn(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,l);c[m>>2]=(c[m>>2]|0)-(c[h>>2
]|0)}i=o;return}function eo(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;p=i;i=i+48|0;f=p+32|0;g
=p+28|0;h=p+24|0;j=p+20|0;n=p+16|0;m=p+12|0;o=p+8|0;k=p+4|0;l=p;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j
x3e;>2]=e;if(c[(c[f>>2]|0)+4>>2]|0){i=p;return}c[m>>2]=(c[f>>2]|0)+16;c[o>>
;2]=c[c[f>>2]>>2];c[k>>2]=c[c[m>>2]>>2];c[l>>2]=c[(c[m>>2]|
0)+36>>2];if((c[h>>2]|0)!=((c[k>>2]|0)+(c[l>>2]|0)|0)){i=p;return}c[n>>2]=fo(c
[m>>2]|0,c[j>>2]|0,c[l>>2]|0,c[k>>2]|0,c[g>>2]|0,c[o>>2]|0)|0;if((c[
n>>2]|0)==0?(c[n>>2]=fo((c[m>>2]|0)+36|0,c[j>>2]|0,0,c[l>>2]|0,c[g>>
2]|0,c[o>>2]|0)|0,(c[n>>2]|0)==0):0){i=p;return}c[(c[f>>2]|0)+4>>2]=c[n>>2];i=
p;return}function fo(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;o=i;i=i+32|0;h=o+24|0;
j=o+20|0;k=o+16|0;l=o+12|0;p=o+8|0;m=o+4|0;n=o;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c
[p>>2]=f;c[m>>2]=g;c[n>>2]=0;c[n>>2]=Bn(c[h>>2]|0,c[p>>2]|0,c[m>
;>2]|0)|0;if(c[n>>2]|0){p=c[n>>2]|0;i=o;return p|0}c[n>>2]=go((c[h>>2]|0)+12|0,c[j
x3e;>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;p=c[n>>2]|0;i=o;return p|0}function go(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;u=i;i=i+48|0;v=u+44|0;j=u+40|0;k
=u+36|0;l=u+32|0;m=u+28|0;n=u+24|0;o=u+20|0;p=u+16|0;q=u+12|0;t=u+8|0;s=u+4|0;r=u;c[v>>2]=b;c[j>>2]=e;c[k>
;>2]=f;c[l>>2]=g;c[m>>2]=h;c[n>>2]=0;c[n>>2]=tn(c[v>>2]|0,c[m>>
2]|0,o)|0;if(c[n>>2]|0){v=c[n>>2]|0;i=u;return v|0}c[n>>2]=mn(c[o>>2]|0,c[l>>2
]|0,c[m>>2]|0)|0;if(c[n>>2]|0){v=c[n>>2]|0;i=u;return v|0}c[c[o>>2]>>2]=c[l>
;>2];c[p>>2]=(c[j>>2]|0)+((c[k>>2]|0)>>>3);c[q>>2]=128>>(c
[k>>2]&7);c[t>>2]=c[(c[o>>2]|0)+8>>2];c[s>>2]=128;while(1){if((c[l>
x3e;2]|0)>>>0<=0)break;c[r>>2]=(d[c[t>>2]>>0]|0)&~c[s>>2];if((d
[c[p>>2]>>0]|0)&c[q>>2]|0)c[r>>2]=c[r>>2]|c[s>>2];a[c[t>
x3e;2]>>0]=c[r>>2];c[q>>2]=c[q>>2]>>1;if(!(c[q>>2]|0)){c[p>>
;2]=(c[p>>2]|0)+1;c[q>>2]=128}c[s>>2]=c[s>>2]>>1;if(!(c[s>>2]|0)){c[
t>>2]=(c[t>>2]|0)+1;c[s>>2]=128}c[l>>2]=(c[l>>2]|0)+-1}v=c[n>>2]|0;i
=u;return v|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,m=0,n=0;n=i;i=i+32|0;e=n+28|0;f=n+24|0;g=n+20
|0;l=n+16|0;k=n+12|0;m=n+8|0;h=n+4|0;j=n;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[(c[e>>2]|0)+
4>>2]|0){i=n;return}c[k>>2]=(c[e>>2]|0)+16;c[m>>2]=c[c[e>>2]>>2];c[h
>>2]=c[c[k>>2]>>2];c[j>>2]=c[(c[k>>2]|0)+36>>2];if((c[f>>2
]|0)!=((c[h>>2]|0)+(c[j>>2]|0)|0)){i=n;return}c[l>>2]=fo(c[k>>2]|0,c[g>>2]|0,0
,c[h>>2]|0,0,c[m>>2]|0)|0;if((c[l>>2]|0)==0?(c[l>>2]=fo((c[k>>2]|0)+36|0,c[g
x3e;>2]|0,c[h>>2]|0,c[j>>2]|0,0,c[m>>2]|0)|0,(c[l>>2]|0)==0):0){i=n;return}c[(c[e
x3e;>2]|0)+4>>2]=c[l>>2];i=n;return}function io(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)+120>>2]=0;c[(c[d>>2]|0)+148>>2]=0;jo((c[d>>2]|0)+20|0);i=b;return
}function jo(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]>
x3e;2];ko((c[d>>2]|0)+16|0,c[e>>2]|0);ko((c[d>>2]|0)+16+36|0,c[e>>2]|0);c[(c[d>>
;2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;i=b;return}function ko(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;lo((c[f>>2]|0)+24|0,c[e>>2]|0);lo((c[f>>2]|0
)+12|0,c[e>>2]|0);no(c[f>>2]|0,c[e>>2]|0);i=d;return}function lo(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|
0)+4>>2];c[g>>2]=c[(c[d>>2]|0)+8>>2];while(1){if((c[f>>2]|0)>>>
0<=0)break;mo(c[g>>2]|0,c[e>>2]|0);c[f>>2]=(c[f>>2]|0)+-1;c[g>>2]=(c[g>
;>2]|0)+16}Fb(c[e>>2]|0,c[(c[d>>2]|0)+8>>2]|0);c[(c[d>>2]|0)+8>>2]=0;c[c[
d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;i=h;return}function mo(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>2
]|0);c[(c[e>>2]|0)+8>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[(
c[e>>2]|0)+12>>2]=0;i=d;return}function no(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>2]|0);c[(c[e>>2]|0)+8>
;>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;i=d;return}function oo(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;
c[c[e>>2]>>2]=0;c[g>>2]=bc(c[d>>2]|0,24,f)|0;if(c[f>>2]|0){g=c[f>>2]|
0;i=h;return g|0}c[(c[g>>2]|0)+8>>2]=c[d>>2];po(c[g>>2]|0);c[c[e>>2]>>
;2]=c[g>>2];g=c[f>>2]|0;i=h;return g|0}function po(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a
;c[d>>2]=c[d>>2];i=b;return}function qo(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;e=j+12
|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(!(c[e>>2]|0)){i=j;return}if((c[f
>>2]|0)!=0&(c[g>>2]|0)>=3076){c[h>>2]=c[f>>2];c[c[e>>2]>>2
]=(c[f>>2]|0)+1032;c[(c[e>>2]|0)+4>>2]=(c[f>>2]|0)+(c[g>>2]|0)-(c[c[e>>
;2]>>2]|0);c[(c[e>>2]|0)+12>>2]=c[h>>2];i=j;return}else{c[c[e>>2]>>2
]=0;c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+12>>2]=0;i=j;return}}function ro(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;c[h
x3e;>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>>2];i=e;return}function so(a,
d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l+20|0;e=l+16|0;j=l+12|0;f=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c
[j>>2]=d;c[f>>2]=c[(c[j>>2]|0)+4>>2];c[g>>2]=c[c[j>>2]>>2];
if((c[e>>2]|0?c[c[e>>2]>>2]|0:0)?c[(c[e>>2]|0)+4>>2]|0:0){if(!(c[f>>
2]|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}if(b[(c[f>>2]|0)+2>>1]|0?(b[c[f>>
2]>>1]|0)>0:0){if(c[(c[f>>2]|0)+12>>2]|0?c[(c[f>>2]|0)+4>>2]|0:0){if((b[(
c[f>>2]|0)+2>>1]|0)!=((b[(c[(c[f>>2]|0)+12>>2]|0)+((b[c[f>>2]>>1]|0)-
1<<1)>>1]|0)+1|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}c[h>>2]=c[(c[e>
x3e;2]|0)+12>>2];if(c[(c[j>>2]|0)+8>>2]&2|0){c[k>>2]=19;k=c[k>>2]|0;i=l;return
k|0}if(!(c[g>>2]|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}if(c[(c[g>>2]|0)+4>>
;2]|0?c[c[g>>2]>>2]|0:0){if(!(c[(c[g>>2]|0)+12>>2]|0)){c[k>>2]=20;k=c[k>
x3e;2]|0;i=l;return k|0}a=(c[h>>2]|0)+128|0;d=c[f>>2]|0;c[a>>2]=c[d>>2];c[a+4>>
;2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];c[a+16>>2]=c
[d+16>>2];a=(c[h>>2]|0)+104|0;g=c[g>>2]|0;c[a>>2]=c[g>>2];c[a+4>>2]=
c[g+4>>2];c[a+8>>2]=c[g+8>>2];c[a+12>>2]=c[g+12>>2];c[a+16>>2]=c[g+16
>>2];c[a+20>>2]=c[g+20>>2];c[(c[h>>2]|0)+28>>2]=c[c[e>>2]>>
;2];c[(c[h>>2]|0)+32>>2]=(c[(c[h>>2]|0)+28>>2]|0)+((((c[(c[e>>2]|0)+4>>
;2]|0)>>>0)/4|0)<<2);e=c[h>>2]|0;if(c[(c[j>>2]|0)+8>>2]&1|0)e=to(e)|
0;else e=uo(e)|0;c[k>>2]=e;k=c[k>>2]|0;i=l;return k|0}c[k>>2]=0;k=c[k>>2]|0;i=l;return k
|0}c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}c[k>>2]=0;k=c[k>>2]|0;i=l;return k|0}c[k>
x3e;2]=96;k=c[k>>2]|0;i=l;return k|0}function to(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>
x3e;2]=c[d>>2];i=b;return 19}function uo(e){e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;g=k+8|0;h=k+4|0;j=k;c[h>
x3e;2]=e;vo(c[h>>2]|0,c[(c[h>>2]|0)+128+16>>2]&256);c[(c[h>>2]|0)+24>>2]=
c[(c[h>>2]|0)+12>>2];e=c[h>>2]|0;if(!(c[(c[h>>2]|0)+128+16>>2]&8|0)){f=(c
[h>>2]|0)+180|0;if(c[e+128+16>>2]&16|0)a[f>>0]=4;else a[f>>0]=0;if(!(c[(c[h>
x3e;2]|0)+128+16>>2]&32)){f=(c[h>>2]|0)+180|0;a[f>>0]=(d[f>>0]|0)+1}}else a[e+180
x3e;>0]=2;a[(c[h>>2]|0)+181>>0]=((c[(c[h>>2]|0)+128+16>>2]&512|0)!=0^1)&1
;c[(c[h>>2]|0)+164>>2]=16;c[(c[h>>2]|0)+168>>2]=1;c[(c[h>>2]|0)+172>>
;2]=2;c[(c[h>>2]|0)+176>>2]=39;c[(c[h>>2]|0)+1024>>2]=0;b[(c[h>>2]|0)+960>
;>1]=0;b[(c[h>>2]|0)+960+2>>1]=(c[(c[h>>2]|0)+104>>2]|0)-1;b[(c[h>>2]|0)+
56>>1]=c[(c[h>>2]|0)+104+4>>2];c[(c[h>>2]|0)+60>>2]=c[(c[h>>2]|0)+104
+12>>2];f=Ao(c[h>>2]|0,0)|0;c[j>>2]=f;if(f|0){c[g>>2]=c[j>>2];j=c[g>>
;2]|0;i=k;return j|0}if((a[(c[h>>2]|0)+181>>0]|0?(d[(c[h>>2]|0)+180>>0]|0)!=2:0)?(c[(c[h
>>2]|0)+164>>2]=17,c[(c[h>>2]|0)+168>>2]=3,c[(c[h>>2]|0)+172>>2]=4,c
[(c[h>>2]|0)+176>>2]=40,c[(c[h>>2]|0)+1024>>2]=0,b[(c[h>>2]|0)+960>>
1]=0,b[(c[h>>2]|0)+960+2>>1]=(c[(c[h>>2]|0)+104+4>>2]|0)-1,h=Ao(c[h>>2]|0,1)|0
,c[j>>2]=h,h|0):0){c[g>>2]=c[j>>2];j=c[g>>2]|0;i=k;return j|0}c[g>>2]=0;j=c[g
x3e;>2]|0;i=k;return j|0}function vo(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;b=c[d>>2]|0;if(c[f>>2]|0){c[b>>2]=12;c[(c[d>>2]|0)+16>>2]=256;c[(c
[d>>2]|0)+20>>2]=50}else{c[b>>2]=6;c[(c[d>>2]|0)+16>>2]=32;c[(c[d>>2
]|0)+20>>2]=2}c[(c[d>>2]|0)+4>>2]=1<<c[c[d>>2]>>2];c[(c[d>>
;2]|0)+8>>2]=(c[(c[d>>2]|0)+4>>2]|0)/2|0;c[(c[d>>2]|0)+12>>2]=(c[c[d>>
;2]>>2]|0)-6;i=e;return}function wo(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;h=i;i=i+16|0;f=h+12|0;j=h+8|0;k=h
+4|0;g=h;c[f>>2]=a;c[j>>2]=d;c[k>>2]=e;c[g>>2]=c[(c[f>>2]|0)+104+8>>
2];c[k>>2]=c[k>>2];b[(c[f>>2]|0)+156>>1]=0-(c[g>>2]|0);a=_(0-(b[c[j>>
;2]>>1]|0)|0,c[g>>2]|0)|0;c[(c[f>>2]|0)+148>>2]=a;if((c[g>>2]|0)<=0){k=c[
f>>2]|0;k=k+158|0;b[k>>1]=0;k=c[f>>2]|0;k=k+160|0;b[k>>1]=0;i=h;return}j=_((c[(c[f>
x3e;2]|0)+104>>2]|0)-1|0,c[g>>2]|0)|0;k=(c[f>>2]|0)+148|0;c[k>>2]=(c[k>>2]|0)+
j;k=c[f>>2]|0;k=k+158|0;b[k>>1]=0;k=c[f>>2]|0;k=k+160|0;b[k>>1]=0;i=h;return}function xo
(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;v=i;i=i+48|0;m=v+36
|0;z=v+40|0;w=v+32|0;n=v+28|0;y=v+24|0;x=v+20|0;p=v+16|0;q=v+12|0;o=v+8|0;s=v+4|0;r=v+43|0;t=v+42|0;u=v;c[m>>2]=f;b[z
x3e;>1]=g;c[w>>2]=h;c[n>>2]=j;c[y>>2]=k;c[x>>2]=l;b[z>>1]=b[z>>
1]|0;c[y>>2]=c[y>>2];c[x>>2]=c[x>>2];c[p>>2]=((c[w>>2]|0)+(c[(c[m>
;>2]|0)+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>2]|0))>>c[c[m>>2]>>
2];if(((c[n>>2]|0)-(c[w>>2]|0)-(c[(c[m>>2]|0)+4>>2]|0)|0)<=(c[(c[m>>2]|0)+
20>>2]|0))c[q>>2]=c[p>>2];else c[q>>2]=(c[n>>2]&0-(c[(c[m>>2]|0
)+4>>2]|0))>>c[c[m>>2]>>2];if((c[q>>2]|0)<0){i=v;return}if((c[p>>
;2]|0)>=(e[(c[m>>2]|0)+56>>1]|0)){i=v;return}if((c[p>>2]|0)<0)c[p>>2]=0;if((c[
q>>2]|0)>=(e[(c[m>>2]|0)+56>>1]|0))c[q>>2]=(e[(c[m>>2]|0)+56>>1
]|0)-1;c[o>>2]=(c[p>>2]>>3&65535)<<16>>16;c[s>>2]=(c[q>>
;2]>>3&65535)<<16>>16;a[r>>0]=255>>(c[p>>2]&7);a[t>
x3e;0]=~(127>>(c[q>>2]&7));if((b[(c[m>>2]|0)+158>>1]|0)>(c[o>>2]|0))
b[(c[m>>2]|0)+158>>1]=c[o>>2];if((b[(c[m>>2]|0)+160>>1]|0)<(c[s>>
;2]|0))b[(c[m>>2]|0)+160>>1]=c[s>>2];c[u>>2]=(c[(c[m>>2]|0)+60>>2]|0
)+(c[(c[m>>2]|0)+148>>2]|0)+(c[o>>2]|0);c[s>>2]=(c[s>>2]|0)-(c[o>>2]|
0);m=d[r>>0]|0;if((c[s>>2]|0)<=0){z=c[u>>2]|0;a[z>>0]=d[z>>0]|m&d[t
x3e;>0];i=v;return}z=c[u>>2]|0;a[z>>0]=d[z>>0]|m;c[s>>2]=(c[s>>2]|0)+-1;while
(1){if((c[s>>2]|0)<=0)break;z=(c[u>>2]|0)+1|0;c[u>>2]=z;a[z>>0]=-1;c[s>>2
]=(c[s>>2]|0)+-1}z=(c[u>>2]|0)+1|0;a[z>>0]=d[z>>0]|d[t>>0];i=v;return}function
yo(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;y=i;i=i+48|0;m=y+32
|0;n=y+40|0;o=y+28|0;p=y+24|0;q=y+20|0;r=y+16|0;u=y+12|0;v=y+8|0;x=y+4|0;s=y+38|0;w=y+36|0;t=y;c[m>>2]=f;b[n>>
;1]=g;c[o>>2]=h;c[p>>2]=j;c[q>>2]=k;c[r>>2]=l;c[u>>2]=(c[o>>2]|0)+(c
[(c[m>>2]|0)+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>2]|0);c[v>>2]=c[p>>
2]&0-(c[(c[m>>2]|0)+4>>2]|0);c[x>>2]=c[u>>2];if((c[u>>2]|0)>(c[v>
;>2]|0)){c[t>>2]=c[(c[q>>2]|0)+12>>2]&7;if((c[u>>2]|0)!=((c[v>>2]|0)+(
c[(c[m>>2]|0)+4>>2]|0)|0)){i=y;return}a:do switch(c[t>>2]|0){case 0:{c[x>>2]=c[v>
x3e;2];break}case 4:{c[x>>2]=(((c[o>>2]|0)+(c[p>>2]|0)-1|0)/2|0)+(c[(c[m>>2]|0)+8>
x3e;2]|0)&0-(c[(c[m>>2]|0)+4>>2]|0);break}case 5:case 1:{if((c[(c[q>>2]|0)+28>>2]|0
)==(c[r>>2]|0)?(c[(c[q>>2]|0)+16>>2]|0)<=0:0){if(!(c[(c[q>>2]|0)+12>>2]
x26;16)){i=y;return}if(((c[p>>2]|0)-(c[o>>2]|0)|0)<(c[(c[m>>2]|0)+8>>2]|0)){i=y;return
}}if((c[(c[r>>2]|0)+28>>2]|0)==(c[q>>2]|0)?(c[(c[q>>2]|0)+20>>2]|0)==(b[n>
;>1]|0):0){if(!(c[(c[q>>2]|0)+12>>2]&32)){i=y;return}if(((c[p>>2]|0)-(c[o>>2]|
0)|0)<(c[(c[m>>2]|0)+8>>2]|0)){i=y;return}}if((c[t>>2]|0)==1){c[x>>2]=c[v>>
;2];break a}else{c[x>>2]=(((c[o>>2]|0)+(c[p>>2]|0)-1|0)/2|0)+(c[(c[m>>2]|0)+8>>
;2]|0)&0-(c[(c[m>>2]|0)+4>>2]|0);break a}}default:{i=y;return}}while(0);c[u>>2]=(c[x>>
;2]|0)==(c[u>>2]|0)?c[v>>2]|0:c[u>>2]|0;c[u>>2]=c[u>>2]>>c[c[m>
x3e;2]>>2];b[s>>1]=c[u>>2]>>3;b[w>>1]=c[u>>2]&7;if(((c[u>
x3e;2]|0)>=0?(c[u>>2]|0)<(e[(c[m>>2]|0)+56>>1]|0):0)?d[(c[(c[m>>2]|0)+60>
x3e;2]|0)+((c[(c[m>>2]|0)+148>>2]|0)+(b[s>>1]|0))>>0]&128>>b[w>>
;1]|0:0){i=y;return}}c[u>>2]=c[x>>2]>>c[c[m>>2]>>2];if((c[u>>2]|0)
x3c;0){i=y;return}if((c[u>>2]|0)>=(e[(c[m>>2]|0)+56>>1]|0)){i=y;return}b[s>>1]=c[u
x3e;>2]>>3;b[w>>1]=c[u>>2]&7;if((b[(c[m>>2]|0)+158>>1]|0)>(b[s
x3e;>1]|0))b[(c[m>>2]|0)+158>>1]=b[s>>1]|0;if((b[(c[m>>2]|0)+160>>1]|0)
x3c;(b[s>>1]|0))b[(c[m>>2]|0)+160>>1]=b[s>>1]|0;g=(c[(c[m>>2]|0)+60>>
;2]|0)+((c[(c[m>>2]|0)+148>>2]|0)+(b[s>>1]|0))|0;a[g>>0]=d[g>>0]|(128>>
;b[w>>1]&255)<<24>>24;i=y;return}function zo(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>
x3e;2]=a;a=(c[e>>2]|0)+148|0;c[a>>2]=(c[a>>2]|0)+(b[(c[e>>2]|0)+156>>1]|0);i=d
;return}function Ao(d,e){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+16|0;k=m+4|0;l=m;f=m+14|0;g=m+12|0;h=m+10|0;j=m+8|0
;c[l>>2]=d;a[f>>0]=e;while(1){if((c[(c[l>>2]|0)+1024>>2]|0)<0){e=14;break}d=_(b[(c[
l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>>1]|0,c[(c[l>>2]|0)+4>
;>2]|0)|0;c[(c[l>>2]|0)+80>>2]=d;d=_(b[(c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>
;2]<<2)>>1]|0,c[(c[l>>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+76>>2]=d;c[(c[l
>>2]|0)+40>>2]=c[(c[l>>2]|0)+28>>2];c[(c[l>>2]|0)+44>>2]=0;d=(Bo(c[l
>>2]|0,a[f>>0]|0)|0)<<24>>24!=0;e=c[l>>2]|0;if(!d){if(c[e+92>>2]|0?(
Qo(c[l>>2]|0)|0)<<24>>24:0){e=12;break}d=(c[l>>2]|0)+1024|0;c[d>>2]=(c[d>
x3e;2]|0)+-1;continue}if((c[e+44>>2]|0)!=98){e=5;break}c[(c[l>>2]|0)+44>>2]=0;b[g>>1]=b[(
c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)>>1]|0;b[h>>1]=b[(c[l>
;>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>>1]|0;b[j>>1]=((b[g>>
1]|0)+(b[h>>1]|0)|0)/2|0;if((c[(c[l>>2]|0)+1024>>2]|0)>=7){e=8;break}if((b[j>>1]|0)
x3c;(b[g>>1]|0)){e=8;break}b[(c[l>>2]|0)+960+((c[(c[l>>2]|0)+1024>>2]|0)+1<<2)
x3e;>1]=b[j>>1]|0;b[(c[l>>2]|0)+960+((c[(c[l>>2]|0)+1024>>2]|0)+1<<2)+2
x3e;>1]=b[h>>1]|0;b[(c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>
x3e;1]=(b[j>>1]|0)-1;d=(c[l>>2]|0)+1024|0;c[d>>2]=(c[d>>2]|0)+1}if((e|0)==5){c[k>
x3e;2]=1;l=c[k>>2]|0;i=m;return l|0}else if((e|0)==8){c[(c[l>>2]|0)+1024>>2]=0;c[(c[l>>2
]|0)+44>>2]=20;c[k>>2]=c[(c[l>>2]|0)+44>>2];l=c[k>>2]|0;i=m;return l|0}else if
((e|0)==12){c[k>>2]=c[(c[l>>2]|0)+44>>2];l=c[k>>2]|0;i=m;return l|0}else if((e|0)==14){c
[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}return 0}function Bo(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;n=i;i=i+32|0;l=n+21|0;m=n+16|0;f=n+12|0;g=n+8|0;k=n+4|0;h=n;j=n+20|0;c[m>>2]=d;c[f>>2]=e;c[(c[m>>
;2]|0)+92>>2]=0;a[(c[m>>2]|0)+87>>0]=0;a[(c[m>>2]|0)+86>>0]=0;c[(c[m>>
;2]|0)+36>>2]=(c[(c[m>>2]|0)+32>>2]|0)+-32;c[(c[m>>2]|0)+48>>2]=0;c[(c[m>
x3e;2]|0)+88>>2]=c[(c[m>>2]|0)+40>>2];c[(c[(c[m>>2]|0)+88>>2]|0)+8>>
2]=c[(c[m>>2]|0)+40>>2];b[(c[m>>2]|0)+84>>1]=0;c[k>>2]=0;c[g>>2]=0;while
(1){d=c[m>>2]|0;if((c[g>>2]|0)>=(b[(c[m>>2]|0)+128>>1]|0)){e=19;break}c[d+100>
x3e;2]=0;c[(c[m>>2]|0)+96>>2]=0;if((Co(c[m>>2]|0,c[k>>2]&65535,b[(c[(c[m>>
;2]|0)+128+12>>2]|0)+(c[g>>2]<<1)>>1]|0,c[f>>2]|0)|0)<<24>>
;24){e=4;break}c[k>>2]=(b[(c[(c[m>>2]|0)+128+12>>2]|0)+(c[g>>2]<<1)>>
;1]|0)+1;if(((((c[(c[m>>2]|0)+72>>2]&(c[(c[m>>2]|0)+4>>2]|0)-1|0)==0?(c[(c[m>
x3e;2]|0)+72>>2]|0)>=(c[(c[m>>2]|0)+76>>2]|0):0)?(c[(c[m>>2]|0)+72>>2]|0)
x3c;=(c[(c[m>>2]|0)+80>>2]|0):0)?c[(c[m>>2]|0)+96>>2]|0:0)?(c[(c[(c[m>>2]|0)+96
>>2]|0)+12>>2]&8|0)==(c[(c[(c[m>>2]|0)+88>>2]|0)+12>>2]&8|0):0){d=(c
[m>>2]|0)+40|0;c[d>>2]=(c[d>>2]|0)+-4}c[h>>2]=c[(c[m>>2]|0)+88>>2];e
=c[(c[m>>2]|0)+72>>2]|0;d=c[m>>2]|0;if(c[(c[(c[m>>2]|0)+88>>2]|0)+12>>
;2]&8|0)a[j>>0]=(e-(c[d+72>>2]&0-(c[(c[m>>2]|0)+4>>2]|0))|0)>=(c[(c[m>
;>2]|0)+8>>2]|0);else a[j>>0]=((e+(c[d+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>
;2]|0))-(c[(c[m>>2]|0)+72>>2]|0)|0)>=(c[(c[m>>2]|0)+8>>2]|0);if((Fo(c[m>>
2]|0,a[j>>0]|0)|0)<<24>>24){e=15;break}if(c[(c[m>>2]|0)+96>>2]|0)c[(c[h>
x3e;2]|0)+28>>2]=c[(c[m>>2]|0)+96>>2];c[g>>2]=(c[g>>2]|0)+1}if((e|0)==4){a[l
x3e;>0]=1;m=a[l>>0]|0;i=n;return m|0}else if((e|0)==15){a[l>>0]=1;m=a[l>>0]|0;i=n;return m|0}
else if((e|0)==19)if((Oo(d)|0)<<24>>24){a[l>>0]=1;m=a[l>>0]|0;i=n;return m|0}else{a[l>
;>0]=(c[(c[m>>2]|0)+40>>2]|0)>>>0<(c[(c[m>>2]|0)+36>>2]|0)>
;>>0?0:1;m=a[l>>0]|0;i=n;return m|0}return 0}function Co(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,P=0,Q=0,R=0;R=i;i=
i+144|0;k=R+140|0;l=R+132|0;m=R+138|0;n=R+136|0;o=R+128|0;D=R+120|0;C=R+112|0;F=R+104|0;r=R+96|0;q=R+92|0;p=R+88|0;B=R+84|0;A=R+
80|0;s=R+76|0;t=R+72|0;G=R+68|0;L=R+64|0;u=R+60|0;v=R+56|0;E=R+48|0;K=R+44|0;P=R+40|0;w=R+36|0;H=R+32|0;M=R+28|0;I=R+24|0;N=R+20
|0;J=R+16|0;O=R+12|0;x=R+8|0;y=R+4|0;z=R;c[l>>2]=f;b[m>>1]=g;b[n>>1]=h;c[o>>2]=j;c[r>
;>2]=c[(c[l>>2]|0)+128+4>>2];c[p>>2]=(c[r>>2]|0)+(e[n>>1]<<3);c
[F>>2]=(c[(c[r>>2]|0)+(e[m>>1]<<3)>>2]<<c[(c[l>>2]|0)+24
x3e;>2])-(c[(c[l>>2]|0)+8>>2]|0);c[F+4>>2]=(c[(c[r>>2]|0)+(e[m>>1]<
x3c;3)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[D>
;>2]=(c[(c[r>>2]|0)+(e[n>>1]<<3)>>2]<<c[(c[l>>2]|0)+24>>
;2])-(c[(c[l>>2]|0)+8>>2]|0);c[D+4>>2]=(c[(c[r>>2]|0)+(e[n>>1]<<3)+4
>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>>
;2]|0){c[s>>2]=c[F>>2];c[F>>2]=c[F+4>>2];c[F+4>>2]=c[s>>2];c[t>
x3e;2]=c[D>>2];c[D>>2]=c[D+4>>2];c[D+4>>2]=c[t>>2]};c[C>>2]=c[F>
;>2];c[C+4>>2]=c[F+4>>2];c[q>>2]=(c[r>>2]|0)+(e[m>>1]<<3);c[B
x3e;>2]=(c[(c[l>>2]|0)+128+8>>2]|0)+(e[m>>1]|0);if(a[c[B>>2]>>0]&4|0
)a[(c[l>>2]|0)+180>>0]=d[c[B>>2]>>0]>>5;c[A>>2]=a[c[B>>2]
x3e;>0]&3;a:do if((c[A>>2]|0)==2)Q=39;else{if(!(c[A>>2]|0)){if((a[(c[(c[l>>2]|0)+128+8
x3e;>2]|0)+(e[n>>1]|0)>>0]&3|0)==1){c[F>>2]=c[D>>2];c[F+4>>2]=c[D+4
x3e;>2];c[p>>2]=(c[p>>2]|0)+-8}else{c[F>>2]=((c[F>>2]|0)+(c[D>>2]|0)|0)/2
|0;c[F+4>>2]=((c[F+4>>2]|0)+(c[D+4>>2]|0)|0)/2|0;c[D>>2]=c[F>>2];c[D+4>
x3e;2]=c[F+4>>2]}c[q>>2]=(c[q>>2]|0)+-8;c[B>>2]=(c[B>>2]|0)+-1}c[(c[l>>
;2]|0)+68>>2]=c[F>>2];c[(c[l>>2]|0)+72>>2]=c[F+4>>2];b:while(1){if((c[q>
x3e;2]|0)>>>0>=(c[p>>2]|0)>>>0){Q=37;break}c[q>>2]=(c[q>>2]|0)+
8;c[B>>2]=(c[B>>2]|0)+1;c[A>>2]=a[c[B>>2]>>0]&3;switch(c[A>>2]|
0){case 1:{c[G>>2]=(c[c[q>>2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>
;>2]|0)+8>>2]|0);c[L>>2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24
>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>>2]|0){c[u>>2]=c[G>>2];c[G>
;>2]=c[L>>2];c[L>>2]=c[u>>2]}if((Do(c[l>>2]|0,c[G>>2]|0,c[L>>2]|
0)|0)<<24>>24)break a;else continue b}case 0:{c[C>>2]=(c[c[q>>2]>>2]<<
;c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[C+4>>2]=(c[(c[q>>2]|
0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>
x3e;2]|0){c[v>>2]=c[C>>2];c[C>>2]=c[C+4>>2];c[C+4>>2]=c[v>>2]}while(
1){if((c[q>>2]|0)>>>0>=(c[p>>2]|0)>>>0){Q=27;break b}c[q>>2]=(c
[q>>2]|0)+8;c[B>>2]=(c[B>>2]|0)+1;c[A>>2]=a[c[B>>2]>>0]&3;c[K
x3e;>2]=(c[c[q>>2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8
x3e;>2]|0);c[P>>2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(
c[(c[l>>2]|0)+8>>2]|0);if(c[o>>2]|0){c[w>>2]=c[K>>2];c[K>>2]=c[P>
;>2];c[P>>2]=c[w>>2]}if((c[A>>2]|0)==1)break;if(c[A>>2]|0){Q=39;break a}c[E>
x3e;2]=((c[C>>2]|0)+(c[K>>2]|0)|0)/2|0;c[E+4>>2]=((c[C+4>>2]|0)+(c[P>>2]|0)|0)/
2|0;if((Io(c[l>>2]|0,c[C>>2]|0,c[C+4>>2]|0,c[E>>2]|0,c[E+4>>2]|0)|0)<<
;24>>24)break a;c[C>>2]=c[K>>2];c[C+4>>2]=c[P>>2]}if((Io(c[l>>2]|0,c
[C>>2]|0,c[C+4>>2]|0,c[K>>2]|0,c[P>>2]|0)|0)<<24>>24)break a;else continue
b}default:{if(((c[q>>2]|0)+8|0)>>>0>(c[p>>2]|0)>>>0){Q=39;break a}if((a[(
c[B>>2]|0)+1>>0]&3|0)!=2){Q=39;break a}c[q>>2]=(c[q>>2]|0)+16;c[B>>2]=(c[
B>>2]|0)+2;c[H>>2]=(c[(c[q>>2]|0)+-16>>2]<<c[(c[l>>2]|0)+24>>
;2])-(c[(c[l>>2]|0)+8>>2]|0);c[M>>2]=(c[(c[q>>2]|0)+-16+4>>2]<<c[(c[
l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[I>>2]=(c[(c[q>>2]|0)+-8
x3e;>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[N>>2]=(
c[(c[q>>2]|0)+-8+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>
x3e;2]|0);if(c[o>>2]|0){c[x>>2]=c[H>>2];c[H>>2]=c[M>>2];c[M>>2]=c[x
x3e;>2];c[y>>2]=c[I>>2];c[I>>2]=c[N>>2];c[N>>2]=c[y>>2]}if((c[q
>>2]|0)>>>0>(c[p>>2]|0)>>>0){Q=36;break b}c[J>>2]=(c[c[q>
x3e;2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[O>
x3e;2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8
x3e;>2]|0);if(c[o>>2]|0){c[z>>2]=c[J>>2];c[J>>2]=c[O>>2];c[O>>2
]=c[z>>2]}if((Mo(c[l>>2]|0,c[H>>2]|0,c[M>>2]|0,c[I>>2]|0,c[N>>2]|0,c
[J>>2]|0,c[O>>2]|0)|0)<<24>>24)break a;else continue b}}}if((Q|0)==27){if((Io(c[l>
x3e;2]|0,c[C>>2]|0,c[C+4>>2]|0,c[F>>2]|0,c[F+4>>2]|0)|0)<<24>>24)break
}else if((Q|0)==36){if((Mo(c[l>>2]|0,c[H>>2]|0,c[M>>2]|0,c[I>>2]|0,c[N>>2]|0,c
[F>>2]|0,c[F+4>>2]|0)|0)<<24>>24)break}else if((Q|0)==37?(Do(c[l>>2]|0,c[F>
;>2]|0,c[F+4>>2]|0)|0)<<24>>24:0)break;a[k>>0]=0;Q=a[k>>0]|0;i=R;return Q
|0}while(0);if((Q|0)==39)c[(c[l>>2]|0)+44>>2]=20;a[k>>0]=1;Q=a[k>>0]|0;i=R;return Q|0}function
Do(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[g>>2]=b;c[h>>
;2]=d;c[j>>2]=e;a:do switch(c[(c[g>>2]|0)+100>>2]|0){case 0:{if((c[j>>2]|0)>(c[(c[g
>>2]|0)+72>>2]|0)){if(!((Eo(c[g>>2]|0,1,(((c[(c[g>>2]|0)+72>>2]|0)+(c[(c[g>
;>2]|0)+4>>2]|0)-1&0-(c[(c[g>>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72>>2]|
0)|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24))break a;a[f>>0]=1;e=
a[f>>0]|0;i=k;return e|0}if((c[j>>2]|0)<(c[(c[g>>2]|0)+72>>2]|0)?(Eo(c[g>>
;2]|0,2,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>2]&0-(c[(c[g>>2]|0)+
4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24:0){a[f>
x3e;0]=1;e=a[f>>0]|0;i=k;return e|0}break}case 1:{if((c[j>>2]|0)<(c[(c[g>>2]|0)+72>>
;2]|0)){if(((Fo(c[g>>2]|0,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>2]&
;0-(c[(c[g>>2]|0)+4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24
x3e;>24|0)==0?((Eo(c[g>>2]|0,2,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>
;2]&0-(c[(c[g>>2]|0)+4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<
x3c;24>>24|0)==0:0)break a;a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}case 2:{if((c[j>>2
]|0)>(c[(c[g>>2]|0)+72>>2]|0)){if(((Fo(c[g>>2]|0,(((c[(c[g>>2]|0)+72>>2]|
0)+(c[(c[g>>2]|0)+4>>2]|0)-1&0-(c[(c[g>>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72
>>2]|0)|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24|0)==0?((Eo(c[g
x3e;>2]|0,1,(((c[(c[g>>2]|0)+72>>2]|0)+(c[(c[g>>2]|0)+4>>2]|0)-1&0-(c[(c[g>
;>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72>>2]|0)|0)>=(c[(c[g>>2]|0)+8>>2]|
0)&255)|0)<<24>>24|0)==0:0)break a;a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}default
:{}}while(0);switch(c[(c[g>>2]|0)+100>>2]|0){case 1:{if((Go(c[g>>2]|0,c[(c[g>>2]|0)+68
x3e;>2]|0,c[(c[g>>2]|0)+72>>2]|0,c[h>>2]|0,c[j>>2]|0,c[(c[g>>2]|0)+76>
;>2]|0,c[(c[g>>2]|0)+80>>2]|0)|0)<<24>>24){a[f>>0]=1;e=a[f>>0]|
0;i=k;return e|0}break}case 2:{if((Ho(c[g>>2]|0,c[(c[g>>2]|0)+68>>2]|0,c[(c[g>>2]|0)+72
x3e;>2]|0,c[h>>2]|0,c[j>>2]|0,c[(c[g>>2]|0)+76>>2]|0,c[(c[g>>2]|0)+80>
;>2]|0)|0)<<24>>24){a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}default:{}}c[(c[g>
;>2]|0)+68>>2]=c[h>>2];c[(c[g>>2]|0)+72>>2]=c[j>>2];a[f>>0]=0;e
=a[f>>0]|0;i=k;return e|0}function Eo(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+9|0;h=l+4|0;j=
l;k=l+8|0;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;if(!(c[(c[h>>2]|0)+92>>2]|0)){c[(c[h
x3e;>2]|0)+88>>2]=c[(c[h>>2]|0)+40>>2];c[(c[h>>2]|0)+92>>2]=c[(c[h>
x3e;2]|0)+88>>2];b=(c[h>>2]|0)+40|0;c[b>>2]=(c[b>>2]|0)+32}e=c[h>>2]|0;if((c[(
c[h>>2]|0)+40>>2]|0)>>>0>=(c[(c[h>>2]|0)+36>>2]|0)>>>
0){c[e+44>>2]=98;a[g>>0]=1;k=a[g>>0]|0;i=l;return k|0}c[(c[e+88>>2]|0)+12>>2]=
0;c[(c[(c[h>>2]|0)+88>>2]|0)+20>>2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+16>>
;2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+8>>2]=c[(c[h>>2]|0)+40>>2];c[(c[(c[h>>
;2]|0)+88>>2]|0)+4>>2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+28>>2]=0;c[(c[(c[h>
x3e;2]|0)+88>>2]|0)+12>>2]=d[(c[h>>2]|0)+180>>0];switch(c[j>>2]|0){case 1:{b=(
c[(c[h>>2]|0)+88>>2]|0)+12|0;c[b>>2]=c[b>>2]|8;if(a[k>>0]|0){k=(c[(c[h>
x3e;2]|0)+88>>2]|0)+12|0;c[k>>2]=c[k>>2]|32}break}case 2:{if(a[k>>0]|0){k=(c[(c[h>
x3e;2]|0)+88>>2]|0)+12|0;c[k>>2]=c[k>>2]|16}break}default:{c[(c[h>>2]|0)+44>>2
]=20;a[g>>0]=1;k=a[g>>0]|0;i=l;return k|0}}if(!(c[(c[h>>2]|0)+96>>2]|0))c[(c[h>>
;2]|0)+96>>2]=c[(c[h>>2]|0)+88>>2];c[(c[h>>2]|0)+100>>2]=c[j>>2];a[(
c[h>>2]|0)+86>>0]=1;a[(c[h>>2]|0)+87>>0]=0;a[g>>0]=0;k=a[g>>0]|0;i=l
;return k|0}function Fo(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;j=l+13|0;k=l+8|0;f=l+12|0;g=l+4|0;h=l;c[k>
;>2]=d;a[f>>0]=e;c[g>>2]=((c[(c[k>>2]|0)+40>>2]|0)-(c[(c[(c[k>>2]|0)+88
x3e;>2]|0)+8>>2]|0)|0)/4|0;if((c[g>>2]|0)<0){c[(c[k>>2]|0)+44>>2]=99;a[j>
x3e;0]=1;k=a[j>>0]|0;i=l;return k|0}if((c[g>>2]|0)>0){c[(c[(c[k>>2]|0)+88>>2]|0)+16
>>2]=c[g>>2];do if(a[f>>0]|0){f=(c[(c[k>>2]|0)+88>>2]|0)+12|0;g=c[f>>
;2]|0;if(c[(c[(c[k>>2]|0)+88>>2]|0)+12>>2]&8|0){c[f>>2]=g|16;break}else{c[f>
x3e;2]=g|32;break}}while(0);c[h>>2]=c[(c[k>>2]|0)+88>>2];c[(c[k>>2]|0)+88>>2]=
c[(c[k>>2]|0)+40>>2];d=(c[k>>2]|0)+40|0;c[d>>2]=(c[d>>2]|0)+32;c[(c[(c[k>
x3e;2]|0)+88>>2]|0)+16>>2]=0;c[(c[(c[k>>2]|0)+88>>2]|0)+8>>2]=c[(c[k>>
;2]|0)+40>>2];c[(c[h>>2]|0)+28>>2]=c[(c[k>>2]|0)+88>>2];h=(c[k>>2]|0
)+84|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}f=c[k>>2]|0;if((c[(c[k>>2]|0)+40
>>2]|0)>>>0>=(c[(c[k>>2]|0)+36>>2]|0)>>>0){c[f+44>>2]=
98;a[j>>0]=1;k=a[j>>0]|0;i=l;return k|0}else{a[f+87>>0]=0;a[j>>0]=0;k=a[j>>0]|
0;i=l;return k|0}return 0}function Go(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;C=i;i=i+80|0;s=C+72|0;t=C+68|0;u=C+64|0;k=C+60|0;D=C+56|0;l=C+52|0;m=C+48|0;n
=C+44|0;w=C+40|0;x=C+36|0;o=C+32|0;p=C+28|0;q=C+24|0;r=C+20|0;A=C+16|0;y=C+12|0;z=C+8|0;v=C+4|0;B=C;c[t>>2]=b;c[u>
;>2]=d;c[k>>2]=e;c[D>>2]=f;c[l>>2]=g;c[m>>2]=h;c[n>>2]=j;c[w>>2
]=(c[D>>2]|0)-(c[u>>2]|0);c[x>>2]=(c[l>>2]|0)-(c[k>>2]|0);if(((c[x>>
2]|0)>0?(c[l>>2]|0)>=(c[m>>2]|0):0)?(c[k>>2]|0)<=(c[n>>2]|0):0){if((c[k
x3e;>2]|0)<(c[m>>2]|0)){D=xb(c[w>>2]|0,(c[m>>2]|0)-(c[k>>2]|0)|0,c[x>>
;2]|0)|0;c[u>>2]=(c[u>>2]|0)+D;c[o>>2]=c[m>>2]>>c[c[t>>2]>>
;2];c[q>>2]=0}else{c[o>>2]=c[k>>2]>>c[c[t>>2]>>2];c[q>>2]=
c[k>>2]&(c[(c[t>>2]|0)+4>>2]|0)-1}if((c[l>>2]|0)>(c[n>>2]|0)){c[p>
;>2]=c[n>>2]>>c[c[t>>2]>>2];c[r>>2]=0}else{c[p>>2]=c[l>>
;2]>>c[c[t>>2]>>2];c[r>>2]=c[l>>2]&(c[(c[t>>2]|0)+4>>
2]|0)-1}do if((c[q>>2]|0)<=0){if(a[(c[t>>2]|0)+87>>0]|0){D=(c[t>>2]|0)+40|0;c[D>
;>2]=(c[D>>2]|0)+-4;a[(c[t>>2]|0)+87>>0]=0}}else{if((c[o>>2]|0)!=(c[p>>2]|
0)){D=xb(c[w>>2]|0,(c[(c[t>>2]|0)+4>>2]|0)-(c[q>>2]|0)|0,c[x>>2]|0)|0;c[u>
;>2]=(c[u>>2]|0)+D;c[o>>2]=(c[o>>2]|0)+1;break}a[s>>0]=0;D=a[s>>0]|0;i=C;
return D|0}while(0);a[(c[t>>2]|0)+87>>0]=(c[r>>2]|0)==0;if(a[(c[t>>2]|0)+86>>0
]|0){c[(c[(c[t>>2]|0)+88>>2]|0)+20>>2]=c[o>>2];a[(c[t>>2]|0)+86>>0]=
0}c[A>>2]=(c[p>>2]|0)-(c[o>>2]|0)+1;if(((c[(c[t>>2]|0)+40>>2]|0)+(c[A>>
;2]<<2)|0)>>>0>=(c[(c[t>>2]|0)+36>>2]|0)>>>0){c[(c[t>>
;2]|0)+44>>2]=98;a[s>>0]=1;D=a[s>>0]|0;i=C;return D|0}k=c[(c[t>>2]|0)+4>>2]|0;
l=c[w>>2]|0;if((c[w>>2]|0)>0){c[y>>2]=xb(k,l,c[x>>2]|0)|0;D=_(c[(c[t>>2]|
0)+4>>2]|0,c[w>>2]|0)|0;c[z>>2]=(D|0)%(c[x>>2]|0)|0;c[w>>2]=1}else{c[y>
x3e;2]=_(xb(k,0-l|0,c[x>>2]|0)|0,-1)|0;D=_(c[(c[t>>2]|0)+4>>2]|0,0-(c[w>>2]|0)|0)|0;c[z
x3e;>2]=(D|0)%(c[x>>2]|0)|0;c[w>>2]=-1}c[v>>2]=0-(c[x>>2]|0);c[B>>2]=c[(c
[t>>2]|0)+40>>2];while(1){if((c[A>>2]|0)<=0)break;g=c[u>>2]|0;D=c[B>>2]|0
;c[B>>2]=D+4;c[D>>2]=g;c[u>>2]=(c[u>>2]|0)+(c[y>>2]|0);c[v>>2]=(c[v
x3e;>2]|0)+(c[z>>2]|0);if((c[v>>2]|0)>=0){c[v>>2]=(c[v>>2]|0)-(c[x>>
2]|0);c[u>>2]=(c[u>>2]|0)+(c[w>>2]|0)}c[A>>2]=(c[A>>2]|0)+-1}c[(c[t>>
;2]|0)+40>>2]=c[B>>2];a[s>>0]=0;D=a[s>>0]|0;i=C;return D|0}a[s>>0]=0;D=a[s>
;>0]|0;i=C;return D|0}function Ho(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;m=i;i=i+32|0;k=m+24|0;t=m+20|0;s=m+16|0;r=m+12|0;q=m+8|0;o=m+4|0;p=m;l=m+29|0;n=m+28|0;c[k>>2]=b;c[t>
x3e;2]=d;c[s>>2]=e;c[r>>2]=f;c[q>>2]=g;c[o>>2]=h;c[p>>2]=j;a[n>>0]=a
[(c[k>>2]|0)+86>>0]|0;a[l>>0]=Go(c[k>>2]|0,c[t>>2]|0,0-(c[s>>2]|0)|0
,c[r>>2]|0,0-(c[q>>2]|0)|0,0-(c[p>>2]|0)|0,0-(c[o>>2]|0)|0)|0;if(!(a[n>>0]|0)){
t=a[l>>0]|0;i=m;return t|0}if(a[(c[k>>2]|0)+86>>0]|0){t=a[l>>0]|0;i=m;return t|0}c[(c[(c
[k>>2]|0)+88>>2]|0)+20>>2]=0-(c[(c[(c[k>>2]|0)+88>>2]|0)+20>>2]|0);t
=a[l>>0]|0;i=m;return t|0}function Io(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,x=0;t=i;i=i+64|0;h=t+49|0;j=t+44|0;x=t+40|0;w=t+36|0;v=t+32|0;u=t+28|0;n=t+24|0;o=t+20|0;p=t+16|0;m=t+12
|0;r=t+8|0;q=t+4|0;l=t;k=t+48|0;c[j>>2]=b;c[x>>2]=d;c[w>>2]=e;c[v>>2]=f;c[u>>2
]=g;c[(c[j>>2]|0)+52>>2]=(c[j>>2]|0)+184;c[(c[(c[j>>2]|0)+52>>2]|0)+16>
x3e;2]=c[(c[j>>2]|0)+68>>2];c[(c[(c[j>>2]|0)+52>>2]|0)+16+4>>2]=c[(c[j>
x3e;2]|0)+72>>2];c[(c[(c[j>>2]|0)+52>>2]|0)+8>>2]=c[x>>2];c[(c[(c[j>>
;2]|0)+52>>2]|0)+8+4>>2]=c[w>>2];c[c[(c[j>>2]|0)+52>>2]>>2]=c[v>
;>2];c[(c[(c[j>>2]|0)+52>>2]|0)+4>>2]=c[u>>2];a:while(1){c[n>>2]=c[(c[(c[
j>>2]|0)+52>>2]|0)+16+4>>2];c[o>>2]=c[(c[(c[j>>2]|0)+52>>2]|0)+8+4
x3e;>2];c[p>>2]=c[(c[(c[j>>2]|0)+52>>2]|0)+4>>2];c[m>>2]=c[c[(c[j>
x3e;2]|0)+52>>2]>>2];if((c[n>>2]|0)<=(c[p>>2]|0)){c[r>>2]=c[n>>
2];c[q>>2]=c[p>>2]}else{c[r>>2]=c[p>>2];c[q>>2]=c[n>>2]}do if((c[o
x3e;>2]|0)>=(c[r>>2]|0)?(c[o>>2]|0)<=(c[q>>2]|0):0){if((c[n>>2]|0)==(c[p
x3e;>2]|0)){x=(c[j>>2]|0)+52|0;c[x>>2]=(c[x>>2]|0)+-16;break}c[l>>2]=(c[n>>
;2]|0)<(c[p>>2]|0)?1:2;if((c[(c[j>>2]|0)+100>>2]|0)!=(c[l>>2]|0)){d=c[n>>
2]|0;if((c[l>>2]|0)==1)d=((d+(c[(c[j>>2]|0)+4>>2]|0)-1&0-(c[(c[j>>2]|0)+4>>
;2]|0))-(c[n>>2]|0)|0)>=(c[(c[j>>2]|0)+8>>2]|0);else d=(d-(c[n>>2]&0-(c[(c[j
x3e;>2]|0)+4>>2]|0))|0)>=(c[(c[j>>2]|0)+8>>2]|0);a[k>>0]=d&1;if(c[(c[j>
;>2]|0)+100>>2]|0?(Fo(c[j>>2]|0,a[k>>0]|0)|0)<<24>>24|0:0){s=22;break a}if
((Eo(c[j>>2]|0,c[l>>2]|0,a[k>>0]|0)|0)<<24>>24){s=22;break a}}d=c[j>>
;2]|0;e=c[(c[j>>2]|0)+76>>2]|0;b=c[(c[j>>2]|0)+80>>2]|0;if((c[l>>2]|0)==1)if((
Ko(d,2,41,e,b)|0)<<24>>24){s=22;break a}else break;else if((Lo(d,2,41,e,b)|0)<<24>>24){s
=22;break a}else break}else s=7;while(0);if((s|0)==7){s=0;Jo(c[(c[j>>2]|0)+52>>2]|0);x=(c[j>>2]|0)+
52|0;c[x>>2]=(c[x>>2]|0)+16}if((c[(c[j>>2]|0)+52>>2]|0)>>>0<((c[j>
;>2]|0)+184|0)>>>0){s=21;break}}if((s|0)==21){c[(c[j>>2]|0)+68>>2]=c[m>>2];c[(
c[j>>2]|0)+72>>2]=c[p>>2];a[h>>0]=0;x=a[h>>0]|0;i=t;return x|0}else if((s|0)==
22){a[h>>0]=1;x=a[h>>0]|0;i=t;return x|0}return 0}function Jo(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[(c[d>>2]|0)+32>>2]=c[(c[d>>2]|0)+16>>2];c[e>
x3e;2]=c[(c[d>>2]|0)+8>>2];a=((c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c
[d>>2]|0)+24>>2]=a;c[f>>2]=a;a=((c[c[d>>2]>>2]|0)+(c[e>>2]|0)|0)/2|0
;c[(c[d>>2]|0)+8>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16>>2]=((c[f>>2]|0)+(
c[e>>2]|0)|0)/2|0;c[(c[d>>2]|0)+32+4>>2]=c[(c[d>>2]|0)+16+4>>2];c[e>>
;2]=c[(c[d>>2]|0)+8+4>>2];a=((c[(c[d>>2]|0)+16+4>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(
c[d>>2]|0)+24+4>>2]=a;c[f>>2]=a;a=((c[(c[d>>2]|0)+4>>2]|0)+(c[e>>2]|
0)|0)/2|0;c[(c[d>>2]|0)+8+4>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16+4>>2]=((c[f>
x3e;2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function Ko(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,t=0,u=0,v=0,w=0,x=0,y=0;y=i;i=i+64|0;j=y+54|0;k=y+48|0;l=y+44|0;m=y+40|0;n=y+36|0;o=y+32|0;w=y+28|0;x=y+24|0;
q=y+20|0;s=y+16|0;r=y+12|0;t=y+52|0;p=y+8|0;u=y+4|0;v=y;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>
;2]=g;c[o>>2]=h;c[p>>2]=c[(c[k>>2]|0)+52>>2];c[w>>2]=c[(c[p>>2]|0)+(
c[l>>2]<<3)+4>>2];c[x>>2]=c[(c[p>>2]|0)+4>>2];c[v>>2]=c[(c
[k>>2]|0)+40>>2];a:do if((c[x>>2]|0)>=(c[n>>2]|0)?(c[w>>2]|0)<=(c[o
x3e;>2]|0):0){c[s>>2]=c[x>>2]&0-(c[(c[k>>2]|0)+4>>2]|0);if((c[s>>2]|
0)>(c[o>>2]|0))c[s>>2]=c[o>>2];c[r>>2]=c[n>>2];if((c[w>>2]|0)
x3e;=(c[n>>2]|0)){c[q>>2]=(c[w>>2]|0)+(c[(c[k>>2]|0)+4>>2]|0)-1&0-(c[(c[k
>>2]|0)+4>>2]|0);b[t>>1]=c[w>>2]&(c[(c[k>>2]|0)+4>>2]|0)-1;c[r
x3e;>2]=c[q>>2];if(!(b[t>>1]|0)){if(a[(c[k>>2]|0)+87>>0]|0){c[v>>2]=(c[v
x3e;>2]|0)+-4;a[(c[k>>2]|0)+87>>0]=0}f=c[(c[p>>2]|0)+(c[l>>2]<<3)>
x3e;2]|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[q>>2]=(c[q>>2]|0)+(c[(c[k>
x3e;2]|0)+4>>2]|0)}}else c[q>>2]=c[n>>2];if(a[(c[k>>2]|0)+86>>0]|0){c[(c[(c[k
x3e;>2]|0)+88>>2]|0)+20>>2]=c[r>>2]>>c[c[k>>2]>>2];a[(c[k>
x3e;2]|0)+86>>0]=0}if((c[s>>2]|0)>=(c[q>>2]|0)){if(((c[v>>2]|0)+((c[s>>2]|
0)-(c[q>>2]|0)>>c[c[k>>2]>>2]<<2)+4|0)>>>0>=(c[(c[k>
x3e;2]|0)+36>>2]|0)>>>0){c[(c[k>>2]|0)+40>>2]=c[v>>2];c[(c[k>>2
]|0)+44>>2]=98;a[j>>0]=1;x=a[j>>0]|0;i=y;return x|0}c[u>>2]=c[p>>2];while(1){if
((c[p>>2]|0)>>>0<(c[u>>2]|0)>>>0)break a;if((c[q>>2]|0)>(c
[s>>2]|0))break a;a[(c[k>>2]|0)+87>>0]=0;c[x>>2]=c[(c[p>>2]|0)+4>>2];
if((c[x>>2]|0)>(c[q>>2]|0)){c[w>>2]=c[(c[p>>2]|0)+(c[l>>2]<<3)+
4>>2];if(((c[x>>2]|0)-(c[w>>2]|0)|0)>=(c[(c[k>>2]|0)+16>>2]|0)){Va[c[m>
;>2]&63](c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[l>>2]<<3);continue}else{f
=_((c[c[p>>2]>>2]|0)-(c[(c[p>>2]|0)+(c[l>>2]<<3)>>2]|0)|0,(c[q>
x3e;2]|0)-(c[w>>2]|0)|0)|0;f=(c[(c[p>>2]|0)+(c[l>>2]<<3)>>2]|0)+((f|0)/((c[x
x3e;>2]|0)-(c[w>>2]|0)|0)|0)|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[p>>2]=(
c[p>>2]|0)+(0-(c[l>>2]|0)<<3);c[q>>2]=(c[q>>2]|0)+(c[(c[k>>2]|0)+4
x3e;>2]|0);continue}}else{if((c[x>>2]|0)==(c[q>>2]|0)){a[(c[k>>2]|0)+87>>0]=1;f=c[c
[p>>2]>>2]|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[q>>2]=(c[q>>
;2]|0)+(c[(c[k>>2]|0)+4>>2]|0)}c[p>>2]=(c[p>>2]|0)+(0-(c[l>>2]|0)<<3
);continue}}}}while(0);c[(c[k>>2]|0)+40>>2]=c[v>>2];x=(c[k>>2]|0)+52|0;c[x>>2]=(
c[x>>2]|0)+(0-(c[l>>2]|0)<<3);a[j>>0]=0;x=a[j>>0]|0;i=y;return x|0}function Lo
(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;q=i;i=i+32|0;h=q+20|0;j=q+16|0;k=q+12|0;l=q+8|
0;m=q+4|0;n=q;p=q+25|0;o=q+24|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2
]=g;c[n>>2]=c[(c[h>>2]|0)+52>>2];c[(c[n>>2]|0)+4>>2]=0-(c[(c[n>>2]|0
)+4>>2]|0);c[(c[n>>2]|0)+8+4>>2]=0-(c[(c[n>>2]|0)+8+4>>2]|0);c[(c[n>>
;2]|0)+16+4>>2]=0-(c[(c[n>>2]|0)+16+4>>2]|0);if((c[j>>2]|0)>2)c[(c[n>>2]|
0)+24+4>>2]=0-(c[(c[n>>2]|0)+24+4>>2]|0);a[o>>0]=a[(c[h>>2]|0)+86>>0
]|0;a[p>>0]=Ko(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,0-(c[m>>2]|0)|0,0-(c[l>>
;2]|0)|0)|0;if(a[o>>0]|0?(a[(c[h>>2]|0)+86>>0]|0)==0:0)c[(c[(c[h>>2]|0)+88>>2]|
0)+20>>2]=0-(c[(c[(c[h>>2]|0)+88>>2]|0)+20>>2]|0);c[(c[n>>2]|0)+4>>2
]=0-(c[(c[n>>2]|0)+4>>2]|0);i=q;return a[p>>0]|0}function Mo(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;y=i;i=i+80|0;k=y+69|
0;l=y+64|0;E=y+60|0;D=y+56|0;C=y+52|0;B=y+48|0;A=y+44|0;z=y+40|0;p=y+36|0;q=y+32|0;r=y+28|0;s=y+24|0;o=y+20|0;v=y+16|0;t=y+12|0;
w=y+8|0;u=y+4|0;n=y;m=y+68|0;c[l>>2]=b;c[E>>2]=d;c[D>>2]=e;c[C>>2]=f;c[B>>2]=g
;c[A>>2]=h;c[z>>2]=j;c[(c[l>>2]|0)+52>>2]=(c[l>>2]|0)+184;c[(c[(c[l>>
;2]|0)+52>>2]|0)+24>>2]=c[(c[l>>2]|0)+68>>2];c[(c[(c[l>>2]|0)+52>>2]|
0)+24+4>>2]=c[(c[l>>2]|0)+72>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+16>>2]=c
[E>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+16+4>>2]=c[D>>2];c[(c[(c[l>>2]|0)+
52>>2]|0)+8>>2]=c[C>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+8+4>>2]=c[B>
x3e;2];c[c[(c[l>>2]|0)+52>>2]>>2]=c[A>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+
4>>2]=c[z>>2];a:while(1){c[p>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+24+4>>2];
c[q>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+16+4>>2];c[r>>2]=c[(c[(c[l>>2]|0)+
52>>2]|0)+8+4>>2];c[s>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+4>>2];c[o>
x3e;2]=c[c[(c[l>>2]|0)+52>>2]>>2];if((c[p>>2]|0)<=(c[s>>2]|0)){c[v>
x3e;2]=c[p>>2];c[t>>2]=c[s>>2]}else{c[v>>2]=c[s>>2];c[t>>2]=c[p>
;>2]}if((c[q>>2]|0)<=(c[r>>2]|0)){c[w>>2]=c[q>>2];c[u>>2]=c[r>
x3e;2]}else{c[w>>2]=c[r>>2];c[u>>2]=c[q>>2]}do if((c[w>>2]|0)>=(c[v>
x3e;2]|0)?(c[u>>2]|0)<=(c[t>>2]|0):0){if((c[p>>2]|0)==(c[s>>2]|0)){E=(c[l>>
;2]|0)+52|0;c[E>>2]=(c[E>>2]|0)+-24;break}c[n>>2]=(c[p>>2]|0)<=(c[s>>2]|0
)?1:2;if((c[(c[l>>2]|0)+100>>2]|0)!=(c[n>>2]|0)){d=c[p>>2]|0;if((c[n>>2]|0)==1
)d=((d+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[l>>2]|0)+4>>2]|0))-(c[p>>2]|0)|0
)>=(c[(c[l>>2]|0)+8>>2]|0);else d=(d-(c[p>>2]&0-(c[(c[l>>2]|0)+4>>2]|
0))|0)>=(c[(c[l>>2]|0)+8>>2]|0);a[m>>0]=d&1;if(c[(c[l>>2]|0)+100>>2]|
0?(Fo(c[l>>2]|0,a[m>>0]|0)|0)<<24>>24|0:0){x=25;break a}if((Eo(c[l>>2]|0,c[n
x3e;>2]|0,a[m>>0]|0)|0)<<24>>24){x=25;break a}}d=c[l>>2]|0;f=c[(c[l>>2]|0
)+76>>2]|0;e=c[(c[l>>2]|0)+80>>2]|0;if((c[n>>2]|0)==1)if((Ko(d,3,42,f,e)|0)<<24
>>24){x=25;break a}else break;else if((Lo(d,3,42,f,e)|0)<<24>>24){x=25;break a}else break}else x=10
;while(0);if((x|0)==10){x=0;No(c[(c[l>>2]|0)+52>>2]|0);E=(c[l>>2]|0)+52|0;c[E>>2]=(c[E
x3e;>2]|0)+24}if((c[(c[l>>2]|0)+52>>2]|0)>>>0<((c[l>>2]|0)+184|0)>
x3e;>0){x=24;break}}if((x|0)==24){c[(c[l>>2]|0)+68>>2]=c[o>>2];c[(c[l>>2]|0)+72>
;>2]=c[s>>2];a[k>>0]=0;E=a[k>>0]|0;i=y;return E|0}else if((x|0)==25){a[k>>0]=1;E=a[
k>>0]|0;i=y;return E|0}return 0}function No(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;f=b+12|0;e=b+8|
0;g=b+4|0;h=b;c[d>>2]=a;c[(c[d>>2]|0)+48>>2]=c[(c[d>>2]|0)+24>>2];c[g>>
;2]=c[(c[d>>2]|0)+8>>2];c[h>>2]=c[(c[d>>2]|0)+16>>2];a=(c[c[d>>2]>
;>2]|0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+8>>2]=a;a=(c[(c[d>
x3e;2]|0)+24>>2]|0)+(c[h>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>>2]|0)+40>>2]=
a;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1>>1;a=(c[f>>2]|0)+(c[g>>2]|0)+1
x3e;>1;c[f>>2]=a;c[(c[d>>2]|0)+16>>2]=a;a=(c[e>>2]|0)+(c[g>>2]|0)+1>
x3e;1;c[e>>2]=a;c[(c[d>>2]|0)+32>>2]=a;c[(c[d>>2]|0)+24>>2]=(c[f>>2]|
0)+(c[e>>2]|0)+1>>1;c[(c[d>>2]|0)+48+4>>2]=c[(c[d>>2]|0)+24+4>>2];c[
g>>2]=c[(c[d>>2]|0)+8+4>>2];c[h>>2]=c[(c[d>>2]|0)+16+4>>2];a=(c[(c[d
>>2]|0)+4>>2]|0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+8+4>
x3e;2]=a;a=(c[(c[d>>2]|0)+24+4>>2]|0)+(c[h>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>
x3e;2]|0)+40+4>>2]=a;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1>>1;a=(c[f>>2]|
0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+16+4>>2]=a;a=(c[e>>2]|0)+(
c[g>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>>2]|0)+32+4>>2]=a;c[(c[d>>2]|0)+24+
4>>2]=(c[f>>2]|0)+(c[e>>2]|0)+1>>1;i=b;return}function Oo(d){d=d|0;var f=0,g=0,h=0,j=0,k
=0,l=0,m=0;m=i;i=i+32|0;f=m+18|0;g=m+12|0;h=m+8|0;l=m+4|0;j=m+16|0;k=m;c[g>>2]=d;b[j>>1]=b[(c[g>>2
]|0)+84>>1]|0;c[k>>2]=c[(c[g>>2]|0)+92>>2];a:do if((e[j>>1]|0|0)>1&(
c[k>>2]|0)!=0){while(1){if((e[j>>1]|0|0)<=0)break a;d=c[k>>2]|0;if((e[j>>1]|0|0)>
;1)c[(c[k>>2]|0)+4>>2]=(c[d+8>>2]|0)+(c[(c[k>>2]|0)+16>>2]<<2);else
c[d+4>>2]=0;d=c[(c[k>>2]|0)+20>>2]|0;if(c[(c[k>>2]|0)+12>>2]&8|0){c[h>
;>2]=d;c[l>>2]=(c[(c[k>>2]|0)+20>>2]|0)+(c[(c[k>>2]|0)+16>>2]|0)-1}else{c
[h>>2]=d-(c[(c[k>>2]|0)+16>>2]|0)+1;c[l>>2]=c[(c[k>>2]|0)+20>>2];c[(
c[k>>2]|0)+20>>2]=c[h>>2];d=(c[k>>2]|0)+8|0;c[d>>2]=(c[d>>2]|0)+((c[(
c[k>>2]|0)+16>>2]|0)-1<<2)}if((Po(c[g>>2]|0,c[h>>2]|0)|0)<<24>
x3e;24|0)break;if((Po(c[g>>2]|0,(c[l>>2]|0)+1|0)|0)<<24>>24|0)break;c[k>>2]=c[(
c[k>>2]|0)+4>>2];b[j>>1]=(b[j>>1]|0)+-1<<16>>16}a[f>>0]=1;
l=a[f>>0]|0;i=m;return l|0}else c[(c[g>>2]|0)+92>>2]=0;while(0);a[f>>0]=0;l=a[f>>
;0]|0;i=m;return l|0}function Po(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;h=l+20|0;j=l+16|0;k=l+12|0;g=l+8|
0;f=l+4|0;e=l;c[j>>2]=b;c[k>>2]=d;c[e>>2]=(c[(c[j>>2]|0)+48>>2]|0)-1;c[g>
x3e;2]=(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j>>2]|0)+48>>2]|0)<<2);while(1){if((c
[e>>2]|0)>=0)d=(c[k>>2]|0)<(c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]|
0);else d=0;b=c[e>>2]|0;if(!d)break;c[e>>2]=b+-1}if((b|0)>=0?((c[e>>2]|0)>=0?(c[k>
x3e;2]|0)>(c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]|0):0):0)do{c[f>>2]=c[(c[g>
x3e;2]|0)+(c[e>>2]<<2)>>2];c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]=
c[k>>2];c[k>>2]=c[f>>2];c[e>>2]=(c[e>>2]|0)+-1}while((c[e>>2]|0)>
;=0);do if((c[e>>2]|0)<0){b=(c[j>>2]|0)+36|0;c[b>>2]=(c[b>>2]|0)+-4;b=c[j>>
;2]|0;if((c[(c[j>>2]|0)+36>>2]|0)>>>0>(c[(c[j>>2]|0)+40>>2]|0)>
x3e;>0){g=b+48|0;c[g>>2]=(c[g>>2]|0)+1;c[(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j>
x3e;2]|0)+48>>2]|0)<<2)>>2]=c[k>>2];break}c[b+44>>2]=98;a[h>>0]=1;k=
a[h>>0]|0;i=l;return k|0}while(0);a[h>>0]=0;k=a[h>>0]|0;i=l;return k|0}function Qo(d){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;D=i;i=i+80|0;h=D+72|0;j=D+52|0
;z=D+70|0;A=D+68|0;B=D+66|0;k=D+48|0;n=D+44|0;l=D+40|0;m=D+36|0;g=D+64|0;u=D+62|0;f=D+60|0;e=D+58|0;r=D+56|0;w=D+32|0;x=D+28|0;y
=D+24|0;s=D+20|0;t=D+16|0;v=D+12|0;o=D+8|0;p=D+4|0;q=D;c[j>>2]=d;Ro(v);Ro(o);Ro(p);c[k>>2]=c[(c[j>>
;2]|0)+92>>2];b[u>>1]=c[(c[j>>2]|0)+76>>2]>>c[c[j>>2]>>2];
b[g>>1]=c[(c[j>>2]|0)+80>>2]>>c[c[j>>2]>>2];while(1){if(!(c[k>
x3e;2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];b[e>>1]=c[(c[k>>2]|0)+20>>
;2];b[f>>1]=(c[(c[k>>2]|0)+20>>2]|0)+(c[(c[k>>2]|0)+16>>2]|0)-1;if((b[g>
x3e;1]|0)>(b[e>>1]|0))b[g>>1]=b[e>>1]|0;if((b[u>>1]|0)<(b[f>>1]|0))b
[u>>1]=b[f>>1]|0;c[c[k>>2]>>2]=0;So(v,c[k>>2]|0);c[k>>2]=c[n>
x3e;2]}e=c[j>>2]|0;if(!(c[(c[j>>2]|0)+48>>2]|0)){c[e+44>>2]=20;a[h>>0]=1;C=a[h
>>0]|0;i=D;return C|0}Ua[c[e+164>>2]&31](c[j>>2]|0,g,u);c[k>>2]=c[v>>2];while
(1){if(!(c[k>>2]|0))break;c[(c[k>>2]|0)+24>>2]=(c[(c[k>>2]|0)+20>>2]|0)-(b[g
x3e;>1]|0)&65535;c[k>>2]=c[(c[k>>2]|0)+4>>2]}b[z>>1]=b[g>>1]|0;b[B
x3e;>1]=0;if((c[(c[j>>2]|0)+48>>2]|0)>0?(c[(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j
>>2]|0)+48>>2]|0)<<2)>>2]|0)==(b[g>>1]|0):0){g=(c[j>>2]|0)+48|0;c[g
x3e;>2]=(c[g>>2]|0)+-1}a:while(1){if((c[(c[j>>2]|0)+48>>2]|0)<=0)break;c[k>>2]=
c[v>>2];while(1){if(!(c[k>>2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];g=(c[k>
;>2]|0)+24|0;c[g>>2]=(c[g>>2]|0)-(b[B>>1]|0);do if(!(c[(c[k>>2]|0)+24>>2]|
0)){To(v,c[k>>2]|0);e=c[k>>2]|0;if(c[(c[k>>2]|0)+12>>2]&8|0){So(o,e);break}else{So(
p,e);break}}while(0);c[k>>2]=c[n>>2]}Uo(o);Uo(p);d=(c[j>>2]|0)+48|0;g=c[d>>2]|0;c[d>
;>2]=g+-1;b[A>>1]=c[(c[(c[j>>2]|0)+32>>2]|0)+(0-g<<2)>>2];b[B>>
1]=(b[A>>1]|0)-(b[z>>1]|0);while(1){if((b[z>>1]|0)>=(b[A>>1]|0))break;b[r>>
;1]=0;c[l>>2]=c[o>>2];c[m>>2]=c[p>>2];while(1){if(!(c[l>>2]|0))break;c[w>
x3e;2]=c[c[l>>2]>>2];c[x>>2]=c[c[m>>2]>>2];if((c[w>>2]|0)>(c[x
x3e;>2]|0)){c[y>>2]=c[w>>2];c[w>>2]=c[x>>2];c[x>>2]=c[y>>2]}c[s
>>2]=c[w>>2]&0-(c[(c[j>>2]|0)+4>>2]|0);c[t>>2]=(c[x>>2]|0)+(c[(
c[j>>2]|0)+4>>2]|0)-1&0-(c[(c[j>>2]|0)+4>>2]|0);do if((((c[x>>2]|0)-(c[w
x3e;>2]|0)|0)<=(c[(c[j>>2]|0)+4>>2]|0)?(c[s>>2]|0)!=(c[w>>2]|0):0)?(c[t>
x3e;2]|0)!=(c[x>>2]|0):0){if((c[s>>2]|0)<=(c[t>>2]|0)?(c[t>>2]|0)!=((c[s>>
;2]|0)+(c[(c[j>>2]|0)+4>>2]|0)|0):0){C=37;break}c[q>>2]=c[(c[l>>2]|0)+12>>2]
x26;7;if((c[q>>2]|0)!=2){c[c[l>>2]>>2]=c[w>>2];c[c[m>>2]>>2]=c[x>
;>2];c[(c[l>>2]|0)+24>>2]=1;b[r>>1]=(b[r>>1]|0)+1<<16>>16}}else
C=37;while(0);if((C|0)==37){C=0;Xa[c[(c[j>>2]|0)+168>>2]&7](c[j>>2]|0,b[z>>1]|0,c[
w>>2]|0,c[x>>2]|0,c[l>>2]|0,c[m>>2]|0)}c[l>>2]=c[(c[l>>2]|0)+4>
x3e;2];c[m>>2]=c[(c[m>>2]|0)+4>>2]}b:do if((b[r>>1]|0)>0){c[l>>2]=c[o>
;>2];c[m>>2]=c[p>>2];while(1){if(!(c[l>>2]|0))break b;if(c[(c[l>>2]|0)+24>>
;2]|0){c[(c[l>>2]|0)+24>>2]=0;Xa[c[(c[j>>2]|0)+172>>2]&7](c[j>>2]|0,b[z
x3e;>1]|0,c[c[l>>2]>>2]|0,c[c[m>>2]>>2]|0,c[l>>2]|0,c[m>>2]|0)}
c[l>>2]=c[(c[l>>2]|0)+4>>2];c[m>>2]=c[(c[m>>2]|0)+4>>2]}}while(0);Va
[c[(c[j>>2]|0)+176>>2]&63](c[j>>2]|0);b[z>>1]=(b[z>>1]|0)+1<<16
>>16;if((b[z>>1]|0)>=(b[A>>1]|0))continue;Uo(o);Uo(p)}c[k>>2]=c[o>>2];while
(1){if(!(c[k>>2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];if(!(c[(c[k>>2]|0)+16>
;>2]|0))To(o,c[k>>2]|0);c[k>>2]=c[n>>2]}c[k>>2]=c[p>>2];while(1){if(!(c[k
>>2]|0))continue a;c[n>>2]=c[(c[k>>2]|0)+4>>2];if(!(c[(c[k>>2]|0)+16>>
;2]|0))To(p,c[k>>2]|0);c[k>>2]=c[n>>2]}}while(1){if((b[z>>1]|0)>(b[u>>1]|
0))break;Va[c[(c[j>>2]|0)+176>>2]&63](c[j>>2]|0);b[z>>1]=(b[z>>1]|0)+1<
;<16>>16}a[h>>0]=0;C=a[h>>0]|0;i=D;return C|0}function Ro(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]=0;i=b;return}function So(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h
=i;i=i+32|0;j=h+16|0;d=h+12|0;f=h+8|0;e=h+4|0;g=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=c[j>>2];c[
e>>2]=c[c[f>>2]>>2];c[g>>2]=c[c[d>>2]>>2];while(1){if(!(c[e>>
;2]|0))break;if((c[g>>2]|0)<(c[c[e>>2]>>2]|0))break;c[f>>2]=(c[e>>2]|0)+4
;c[e>>2]=c[c[f>>2]>>2]}c[(c[d>>2]|0)+4>>2]=c[e>>2];c[c[f>>
2]>>2]=c[d>>2];i=h;return}function To(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;j=h+12|0;d=h
+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=c[j>>2];c[e>>2]=c[c[f>>
2]>>2];while(1){if(!(c[e>>2]|0)){g=6;break}a=(c[e>>2]|0)+4|0;if((c[e>>2]|0)==(c[d>
x3e;2]|0))break;c[f>>2]=a;c[e>>2]=c[c[f>>2]>>2]}if((g|0)==6){i=h;return}c[c[f>>
;2]>>2]=c[a>>2];i=h;return}function Uo(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;f=g+8|0;d=g+4|
0;e=g;c[b>>2]=a;c[d>>2]=c[c[b>>2]>>2];while(1){if(!(c[d>>2]|0))break;c[c[d>
;>2]>>2]=c[c[(c[d>>2]|0)+8>>2]>>2];a=(c[d>>2]|0)+8|0;c[a>>2]=(c
[a>>2]|0)+((c[(c[d>>2]|0)+12>>2]&8|0?1:-1)<<2);a=(c[d>>2]|0)+16|0;c[a>
;>2]=(c[a>>2]|0)+-1;c[d>>2]=c[(c[d>>2]|0)+4>>2]}c[f>>2]=c[b>>2];
c[d>>2]=c[c[f>>2]>>2];if(!(c[d>>2]|0)){i=g;return}c[e>>2]=c[(c[d>>2]|
0)+4>>2];while(1){if(!(c[e>>2]|0)){b=11;break}if((c[c[d>>2]>>2]|0)<=(c[c[e>>
;2]>>2]|0)){c[f>>2]=(c[d>>2]|0)+4;c[d>>2]=c[c[f>>2]>>2];if(!(c[d>
;>2]|0)){b=11;break}}else{c[c[f>>2]>>2]=c[e>>2];c[(c[d>>2]|0)+4>>2]=c[(c[
e>>2]|0)+4>>2];c[(c[e>>2]|0)+4>>2]=c[d>>2];c[f>>2]=c[b>>2];
c[d>>2]=c[c[f>>2]>>2]}c[e>>2]=c[(c[d>>2]|0)+4>>2]}if((b|0)==11){i=g;
return}}function Vo(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>
x3e;2]=b;c[f>>2]=d;c[h>>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>
x3e;2];i=e;return}function Wo(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;u=i;i=i+48|0;l=u+32|0;m=u+36|0;n=u+28|0;o=u+24|0;w=u+20|0;v=u+16|0;q=u+12|0;r=u+8|0;p=u+4|0;s=u+38|0;t=u;c[l>>2]=e;
b[m>>1]=f;c[n>>2]=g;c[o>>2]=h;c[w>>2]=j;c[v>>2]=k;c[w>>2]=c[w>
x3e;2];c[v>>2]=c[v>>2];if(((c[o>>2]|0)-(c[n>>2]|0)|0)>=(c[(c[l>>2]|0)+4
x3e;>2]|0)){i=u;return}c[q>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[l
>>2]|0)+4>>2]|0);c[r>>2]=c[o>>2]&0-(c[(c[l>>2]|0)+4>>2]|0);if((
c[q>>2]|0)!=(c[r>>2]|0)){i=u;return}c[p>>2]=(c[(c[l>>2]|0)+60>>2]|0)+(b[m>
;>1]>>3);a[s>>0]=128>>(b[m>>1]&7);c[q>>2]=c[q>>2]>>
;c[c[l>>2]>>2];if((c[q>>2]|0)<0){i=u;return}if((c[q>>2]|0)>=(c[(c[l>>
;2]|0)+104>>2]|0)){i=u;return}c[t>>2]=(c[p>>2]|0)+(0-(_(c[q>>2]|0,c[(c[l>>2]|0
)+104+8>>2]|0)|0));if((c[(c[l>>2]|0)+104+8>>2]|0)>0){w=_((c[(c[l>>2]|0)+104>
x3e;2]|0)-1|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[t>>2]=(c[t>>2]|0)+w}w=c[t>>2]|0;a
[w>>0]=d[w>>0]|d[s>>0];i=u;return}function Xo(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;x=i;i=i+48|0;l=x+36|0;m=x+40|0;n=x+32|0;o=x+28|0;p=x+24|0;q=x+20|0;t=x+16|0
;u=x+12|0;w=x+8|0;r=x+4|0;v=x+42|0;s=x;c[l>>2]=e;b[m>>1]=f;c[n>>2]=g;c[o>>2]=h;c[p>
x3e;2]=j;c[q>>2]=k;c[t>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[
l>>2]|0)+4>>2]|0);c[u>>2]=c[o>>2]&0-(c[(c[l>>2]|0)+4>>2]|0);c[w
>>2]=c[t>>2];if((c[t>>2]|0)>(c[u>>2]|0)){c[s>>2]=c[(c[p>>2]|0)+
12>>2]&7;if((c[t>>2]|0)!=((c[u>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)|0)){i=x;return
}a:do switch(c[s>>2]|0){case 0:{c[w>>2]=c[u>>2];break}case 4:{c[w>>2]=(((c[n>>
2]|0)+(c[o>>2]|0)-1|0)/2|0)+(c[(c[l>>2]|0)+8>>2]|0)&0-(c[(c[l>>2]|0)+4>>2
]|0);break}case 5:case 1:{if((c[(c[p>>2]|0)+28>>2]|0)==(c[q>>2]|0)?(c[(c[p>>2]|0)+16>
;>2]|0)<=0:0){if(!(c[(c[p>>2]|0)+12>>2]&16)){i=x;return}if(((c[o>>2]|0)-(c[n>
x3e;2]|0)|0)<(c[(c[l>>2]|0)+8>>2]|0)){i=x;return}}if((c[(c[q>>2]|0)+28>>2]|0)==(c[p
>>2]|0)?(c[(c[p>>2]|0)+20>>2]|0)==(b[m>>1]|0):0){if(!(c[(c[p>>2]|0)+12>
x3e;2]&32)){i=x;return}if(((c[o>>2]|0)-(c[n>>2]|0)|0)<(c[(c[l>>2]|0)+8>>2]|0)){
i=x;return}}if((c[s>>2]|0)==1){c[w>>2]=c[u>>2];break a}else{c[w>>2]=(((c[n>>2]|
0)+(c[o>>2]|0)-1|0)/2|0)+(c[(c[l>>2]|0)+8>>2]|0)&0-(c[(c[l>>2]|0)+4>>2]|0
);break a}}default:{i=x;return}}while(0);c[t>>2]=(c[w>>2]|0)==(c[t>>2]|0)?c[u>>2]|0:c[t
x3e;>2]|0;c[t>>2]=c[t>>2]>>c[c[l>>2]>>2];c[r>>2]=(c[(c[l>
x3e;2]|0)+60>>2]|0)+(b[m>>1]>>3);a[v>>0]=128>>(b[m>>1]&7);f=_(c
[t>>2]|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[r>>2]=(c[r>>2]|0)+(0-f);if((c[(c[l>
;>2]|0)+104+8>>2]|0)>0){f=_((c[(c[l>>2]|0)+104>>2]|0)-1|0,c[(c[l>>2]|0)+104+8
x3e;>2]|0)|0;c[r>>2]=(c[r>>2]|0)+f}if(((c[t>>2]|0)>=0?(c[t>>2]|0)<(c[(c[l
>>2]|0)+104>>2]|0):0)?d[c[r>>2]>>0]&d[v>>0]|0:0){i=x;return}}c[r>>
;2]=(c[(c[l>>2]|0)+60>>2]|0)+(b[m>>1]>>3);a[v>>0]=128>>(b[m>>
;1]&7);c[t>>2]=c[w>>2]>>c[c[l>>2]>>2];if((c[t>>2]|0)<0){i=
x;return}if((c[t>>2]|0)>=(c[(c[l>>2]|0)+104>>2]|0)){i=x;return}f=_(c[t>>2]|0,c[(c[l
>>2]|0)+104+8>>2]|0)|0;c[r>>2]=(c[r>>2]|0)+(0-f);if((c[(c[l>>2]|0)+104+8>
x3e;2]|0)>0){f=_((c[(c[l>>2]|0)+104>>2]|0)-1|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[r>
;>2]=(c[r>>2]|0)+f}f=c[r>>2]|0;a[f>>0]=d[f>>0]|d[v>>0];i=x;return}function
Yo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return}function Zo(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]|0)+8>>2];Fb(c[e
x3e;>2]|0,c[d>>2]|0);c[d>>2]=0;i=b;return}function _o(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)+4>>2];Ua[c[(c[(c[(c[e>>2]|0)+20>>2]|
0)+56>>2]|0)+8>>2]&31](c[(c[e>>2]|0)+60>>2]|0,c[(c[d>>2]|0)+172>>
;2]|0,c[(c[d>>2]|0)+176>>2]|0);i=b;return 0}function $o(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;w=i;i=i+128|0;j=w+112|0;k=w+108|0;l=w+104|0;m=w+100|0;h=w+96|0;p=w+92|0;s=w+88|0;o=
w+72|0;v=w+64|0;q=w+60|0;u=w+56|0;n=w+52|0;r=w+48|0;t=w;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[h>>
;2]=g;if((c[(c[l>>2]|0)+72>>2]|0)==(c[(c[k>>2]|0)+24>>2]|0)){f=c[(c[k>>2]|0)+20
>>2]|0;if((c[m>>2]|0)!=2){if((f|0)==4028){c[j>>2]=19;v=c[j>>2]|0;i=w;return v|0}}else if
((f|0)==4088){c[j>>2]=19;v=c[j>>2]|0;i=w;return v|0}c[s>>2]=(c[l>>2]|0)+108;if(c[h>
x3e;2]|0)Nb(c[s>>2]|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0);_d(c[s>>
;2]|0,o);c[o>>2]=c[o>>2]&-64;c[o+4>>2]=c[o+4>>2]&-64;c[o+8>>2]=(c[o+
8>>2]|0)+63&-64;c[o+12>>2]=(c[o+12>>2]|0)+63&-64;c[v>>2]=(c[o+8>>2]|
0)-(c[o>>2]|0)>>6;c[q>>2]=(c[o+12>>2]|0)-(c[o+4>>2]|0)>>6;c[n>
x3e;2]=(c[l>>2]|0)+76;c[r>>2]=c[(c[k>>2]|0)+8>>2];if(c[(c[(c[l>>2]|0)+156>
;>2]|0)+4>>2]&1|0){Fb(c[r>>2]|0,c[(c[n>>2]|0)+12>>2]|0);c[(c[n>>2]|0
)+12>>2]=0;h=(c[(c[l>>2]|0)+156>>2]|0)+4|0;c[h>>2]=c[h>>2]&-2}f=c[v>
x3e;2]|0;if(c[m>>2]&2|0){c[u>>2]=(f+15|0)>>>4<<1;a[(c[n>>2]|0)+18>
;>0]=1}else{c[u>>2]=f+3&-4;a[(c[n>>2]|0)+18>>0]=2;b[(c[n>>2]|0)+16>>
1]=256}c[(c[n>>2]|0)+4>>2]=c[v>>2];c[c[n>>2]>>2]=c[q>>2];c[(c[n>
;>2]|0)+8>>2]=c[u>>2];v=hc(c[r>>2]|0,c[q>>2]|0,0,c[u>>2]|0,0,p)|0;c[(c[n
x3e;>2]|0)+12>>2]=v;if(!(c[p>>2]|0)){v=(c[(c[l>>2]|0)+156>>2]|0)+4|0;c[v>>
;2]=c[v>>2]|1;Nb(c[s>>2]|0,0-(c[o>>2]|0)|0,0-(c[o+4>>2]|0)|0);c[t>>2]=c[n>
;>2];c[t+4>>2]=c[s>>2];c[t+8>>2]=0;if((a[(c[n>>2]|0)+18>>0]|0)==2){v=t+8|
0;c[v>>2]=c[v>>2]|1}c[p>>2]=Ya[c[(c[k>>2]|0)+64>>2]&127](c[(c[k>>
;2]|0)+60>>2]|0,t)|0;Nb(c[s>>2]|0,c[o>>2]|0,c[o+4>>2]|0);if(!(c[p>>2]|0)){c[(c
[l>>2]|0)+72>>2]=1651078259;c[(c[l>>2]|0)+100>>2]=c[o>>2]>>6;c[(c[l
x3e;>2]|0)+104>>2]=c[o+12>>2]>>6}}}else c[p>>2]=6;c[j>>2]=c[p>>
2];v=c[j>>2]|0;i=w;return v|0}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,l=0;k=i;i=i+32|0;l=
k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[l>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>
;2]=0;if((c[(c[f>>2]|0)+72>>2]|0)!=(c[(c[l>>2]|0)+24>>2]|0)){c[j>>2]=6;l=c[j
x3e;>2]|0;i=k;return l|0}if(c[g>>2]|0)Kb((c[f>>2]|0)+108|0,c[g>>2]|0);if(!(c[h>>2]|
0)){l=c[j>>2]|0;i=k;return l|0}Nb((c[f>>2]|0)+108|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|
0)+4>>2]|0);l=c[j>>2]|0;i=k;return l|0}function bp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0
;h=g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[e>>2]=b;c[f>>2]=d;b=c[f>>2]|0;c[b>>2]=0;c[b+4
>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;if((c[(c[e>>2]|0)+72>>2]|0)!=(c[(c[h>>
;2]|0)+24>>2]|0)){i=g;return}_d((c[e>>2]|0)+108|0,c[f>>2]|0);i=g;return}function cp(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=Oa
[c[(c[(c[(c[h>>2]|0)+20>>2]|0)+56>>2]|0)+12>>2]&63](c[(c[h>>2]|0)+60>
;>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function dp(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[c[e>>2]>>
2]=0;c[g>>2]=bc(c[d>>2]|0,20,f)|0;if(c[f>>2]|0){g=c[f>>2]|0;i=h;return g|0}c[(c[g>
x3e;2]|0)+12>>2]=c[d>>2];c[c[e>>2]>>2]=c[g>>2];g=c[f>>2]|0;i=h;return
g|0}function ep(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;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>
;>2]=a;c[e>>2]=b;c[f>>2]=d;c[g>>2]=c[k>>2];if(!(c[k>>2]|0)){i=j;return}if
((c[e>>2]|0)!=0&(c[f>>2]|0)>=3476){c[h>>2]=c[e>>2];c[(c[g>>2]|0)+16
x3e;>2]=c[h>>2];c[c[g>>2]>>2]=(c[e>>2]|0)+1440;c[(c[g>>2]|0)+4>>
;2]=(c[e>>2]|0)+(c[f>>2]|0)-(c[c[g>>2]>>2]|0)&-16;c[(c[g>>2]|0)+8>
x3e;2]=((c[(c[g>>2]|0)+4>>2]|0)>>>0)/128|0;i=j;return}else{c[c[g>>2]>>2]=
0;c[(c[g>>2]|0)+4>>2]=0;c[(c[g>>2]|0)+16>>2]=0;i=j;return}}function fp(a,d){a=a|0;d=d|0;
var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[f>>2]=a;c[g>>2
]=d;c[h>>2]=c[(c[g>>2]|0)+4>>2];c[j>>2]=c[c[g>>2]>>2];if((c[f>
x3e;2]|0?c[c[f>>2]>>2]|0:0)?c[(c[f>>2]|0)+4>>2]|0:0){if(!(c[h>>2]|0)){c[e>
;>2]=20;k=c[e>>2]|0;i=l;return k|0}if(b[(c[h>>2]|0)+2>>1]|0?(b[c[h>>2]>>1
]|0)>0:0){if(c[(c[h>>2]|0)+12>>2]|0?c[(c[h>>2]|0)+4>>2]|0:0){if((b[(c[h>>
2]|0)+2>>1]|0)!=((b[(c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>>1]|0)-1<<1
)>>1]|0)+1|0)){c[e>>2]=20;k=c[e>>2]|0;i=l;return k|0}c[k>>2]=c[(c[f>>2]|0)+16
x3e;>2];do if(!(c[(c[g>>2]|0)+8>>2]&2)){if(!(c[j>>2]|0)){c[e>>2]=6;k=c[e>
x3e;2]|0;i=l;return k|0}if(c[(c[j>>2]|0)+4>>2]|0?c[c[j>>2]>>2]|0:0){if(c[(c[j>>
;2]|0)+12>>2]|0)break;c[e>>2]=6;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=0;k=c[e>>2]|
0;i=l;return k|0}while(0);if(!(c[(c[g>>2]|0)+8>>2]&1)){c[e>>2]=19;k=c[e>>2]|0;i=l;return
k|0}do if(c[(c[g>>2]|0)+8>>2]&2|0){d=(c[k>>2]|0)+1024|0;if(c[(c[g>>2]|0)+8>
x3e;2]&4|0){a=(c[g>>2]|0)+32|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8
x3e;>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];break}else{c[d>>2]=-32768;c[(c[k>>
;2]|0)+1024+4>>2]=-32768;c[(c[k>>2]|0)+1024+8>>2]=32767;c[(c[k>>2]|0)+1024+12>>
;2]=32767;break}}else{c[(c[k>>2]|0)+1024>>2]=0;c[(c[k>>2]|0)+1024+4>>2]=0;c[(c[k>
x3e;2]|0)+1024+8>>2]=c[(c[j>>2]|0)+4>>2];c[(c[k>>2]|0)+1024+12>>2]=c[c[j>
x3e;2]>>2]}while(0);gp(c[k>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|
0);a=(c[k>>2]|0)+980|0;h=c[h>>2]|0;c[a>>2]=c[h>>2];c[a+4>>2]=c[h+4>>
2];c[a+8>>2]=c[h+8>>2];c[a+12>>2]=c[h+12>>2];c[a+16>>2]=c[h+16>>2];c
[(c[k>>2]|0)+52>>2]=0;c[(c[k>>2]|0)+40>>2]=1;c[(c[k>>2]|0)+1248>>2]=
c[(c[f>>2]|0)+8>>2];c[(c[k>>2]|0)+1232>>2]=0;if(c[(c[g>>2]|0)+8>>2]
x26;2|0){c[(c[k>>2]|0)+1236>>2]=c[(c[g>>2]|0)+12>>2];c[(c[k>>2]|0)+1240>
x3e;2]=c[(c[g>>2]|0)+28>>2]}else{h=(c[k>>2]|0)+1e3|0;j=c[j>>2]|0;c[h>>2]=c[j
x3e;>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[h+12>>2]=c[j+12>
x3e;2];c[h+16>>2]=c[j+16>>2];c[h+20>>2]=c[j+20>>2];c[(c[k>>2]|0)+1236>>
;2]=13;c[(c[k>>2]|0)+1240>>2]=c[k>>2]}c[e>>2]=ip(c[k>>2]|0)|0;k=c[e>>
;2]|0;i=l;return k|0}c[e>>2]=20;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=0;k=c[e>>2]|0;i=l;return
k|0}c[e>>2]=6;k=c[e>>2]|0;i=l;return k|0}function gp(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[(c[f>>2]|0)+1412>>2]=c[
g>>2];c[(c[f>>2]|0)+1416>>2]=c[h>>2];c[(c[f>>2]|0)+1420>>2]=c[g>
;>2];c[(c[f>>2]|0)+44>>2]=0;c[(c[f>>2]|0)+48>>2]=0;c[(c[f>>2]|0)+52>
x3e;2]=0;c[(c[f>>2]|0)+32>>2]=0;c[(c[f>>2]|0)+36>>2]=0;c[(c[f>>2]|0)+40>
x3e;2]=1;i=e;return}function hp(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;r=i;i=i+32|0;s=r+24
|0;l=r+20|0;m=r+16|0;t=r+12|0;o=r+8|0;k=r+4|0;n=r+28|0;p=r;c[s>>2]=f;c[l>>2]=g;c[m>>2]=h;c[t>
x3e;2]=j;c[k>>2]=(c[t>>2]|0)+1e3;c[o>>2]=(c[(c[k>>2]|0)+12>>2]|0)+(0-(_(c[s>
;>2]|0,c[(c[k>>2]|0)+8>>2]|0)|0));if((c[(c[k>>2]|0)+8>>2]|0)>=0){t=_((c[c[k>
;>2]>>2]|0)-1|0,c[(c[k>>2]|0)+8>>2]|0)|0;c[o>>2]=(c[o>>2]|0)+t}while(1){if
((c[l>>2]|0)<=0)break;a[n>>0]=a[(c[m>>2]|0)+4>>0]|0;a:do if(a[n>>0]|0){g=(
c[o>>2]|0)+(b[c[m>>2]>>1]|0)|0;if((e[(c[m>>2]|0)+2>>1]|0)>=8){Ns(g|0,d[n
x3e;>0]&255|0,e[(c[m>>2]|0)+2>>1]|0)|0;break}c[p>>2]=g;switch(e[(c[m>>2]|0)+2
x3e;>1]|0){case 7:{t=a[n>>0]|0;q=c[p>>2]|0;c[p>>2]=q+1;a[q>>0]=t;q=9;break}case 6:{
q=9;break}case 5:{q=10;break}case 4:{q=11;break}case 3:{q=12;break}case 2:{q=13;break}case 1:break;default:break a}if((q|0)==9){
s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s;q=10}if((q|0)==10){s=a[n>>0]|0;t
=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s;q=11}if((q|0)==11){s=a[n>>0]|0;t=c[p>>2]|0;c[
p>>2]=t+1;a[t>>0]=s;q=12}if((q|0)==12){s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t
>>0]=s;q=13}if((q|0)==13){q=0;s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s}a[
c[p>>2]>>0]=a[n>>0]|0}while(0);c[l>>2]=(c[l>>2]|0)+-1;c[m>>2]=(c[m
x3e;>2]|0)+6}i=r;return}function ip(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;w=i;i=i+400|0;u=w+388|0;v=w+384|0;d=w+64|0;b=w+60|0;q=w+56|0;r=w+52|0;p=w+48|0;m=w+44|0;n=w+40|0;k=w+36|0;e=w+32|0;s=w+28|
0;o=w+24|0;l=w+20|0;j=w+16|0;t=w+12|0;h=w+8|0;f=w+4|0;g=w;c[v>>2]=a;jp(c[v>>2]|0);c[k>>2]=(c[v>
;>2]|0)+1024;if((((c[(c[v>>2]|0)+12>>2]|0)>(c[c[k>>2]>>2]|0)?(c[(c[v>>
;2]|0)+8>>2]|0)<(c[(c[k>>2]|0)+8>>2]|0):0)?(c[(c[v>>2]|0)+20>>2]|0)>(
c[(c[k>>2]|0)+4>>2]|0):0)?(c[(c[v>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0)+12>
;>2]|0):0){if((c[(c[v>>2]|0)+8>>2]|0)<(c[c[k>>2]>>2]|0))c[(c[v>>2]|0
)+8>>2]=c[c[k>>2]>>2];if((c[(c[v>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0
)+4>>2]|0))c[(c[v>>2]|0)+16>>2]=c[(c[k>>2]|0)+4>>2];if((c[(c[v>>2]|0
)+12>>2]|0)>(c[(c[k>>2]|0)+8>>2]|0))c[(c[v>>2]|0)+12>>2]=c[(c[k>>
;2]|0)+8>>2];if((c[(c[v>>2]|0)+20>>2]|0)>(c[(c[k>>2]|0)+12>>2]|0))c[(c[v
x3e;>2]|0)+20>>2]=c[(c[k>>2]|0)+12>>2];c[(c[v>>2]|0)+24>>2]=(c[(c[v>
x3e;2]|0)+12>>2]|0)-(c[(c[v>>2]|0)+8>>2]|0);c[(c[v>>2]|0)+28>>2]=(c[(c[v>
x3e;2]|0)+20>>2]|0)-(c[(c[v>>2]|0)+16>>2]|0);c[r>>2]=((c[(c[v>>2]|0)+20>
x3e;2]|0)-(c[(c[v>>2]|0)+16>>2]|0)|0)/(c[(c[v>>2]|0)+1248>>2]|0)|0;if(!(c[r>>2
]|0))c[r>>2]=1;if((c[r>>2]|0)>=39)c[r>>2]=39;c[(c[v>>2]|0)+1252>>2]=0;c[p
>>2]=c[(c[v>>2]|0)+16>>2];c[n>>2]=c[(c[v>>2]|0)+20>>2];c[q>>
;2]=0;a:while(1){if((c[q>>2]|0)>=(c[r>>2]|0)){b=42;break}c[m>>2]=(c[p>>2]|0)+(c[(c[
v>>2]|0)+1248>>2]|0);if(!((c[q>>2]|0)!=((c[r>>2]|0)-1|0)?(c[m>>2]|0)<=(c[
n>>2]|0):0))c[m>>2]=c[n>>2];c[d>>2]=c[p>>2];c[d+4>>2]=c[m>>
;2];c[b>>2]=d;b:while(1){if((c[b>>2]|0)>>>0<d>>>0)break;c[(c[v>>
;2]|0)+1420>>2]=c[(c[v>>2]|0)+1412>>2];c[(c[v>>2]|0)+1424>>2]=(c[(c[b>>
;2]|0)+4>>2]|0)-(c[c[b>>2]>>2]|0);c[h>>2]=c[(c[v>>2]|0)+1424>>2]<
;<2;c[g>>2]=((c[h>>2]|0)>>>0)%16|0;if((c[g>>2]|0)>0)c[h>>2]=(c[
h>>2]|0)+(16-(c[g>>2]|0));c[f>>2]=c[(c[v>>2]|0)+1416>>2];c[f>>2]=(c[
f>>2]|0)-(((c[f>>2]|0)>>>0)%16|0);c[j>>2]=(c[(c[v>>2]|0)+1412>>
2]|0)+(c[f>>2]|0);c[(c[v>>2]|0)+44>>2]=(c[(c[v>>2]|0)+1412>>2]|0)+(c[h>
x3e;2]|0);do if((c[(c[v>>2]|0)+44>>2]|0)>>>0<(c[j>>2]|0)>>>0?(c
[(c[v>>2]|0)+48>>2]=((c[j>>2]|0)-(c[(c[v>>2]|0)+44>>2]|0)|0)/16|0,(c[(c[v>
;>2]|0)+48>>2]|0)>=2):0){c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[(c[v>>2]|0
)+1424>>2]|0))break;c[(c[(c[v>>2]|0)+1420>>2]|0)+(c[t>>2]<<2)>>2]=0;
c[t>>2]=(c[t>>2]|0)+1}c[(c[v>>2]|0)+52>>2]=0;c[(c[v>>2]|0)+40>>2]=1;
c[(c[v>>2]|0)+16>>2]=c[c[b>>2]>>2];c[(c[v>>2]|0)+20>>2]=c[(c[b>
x3e;2]|0)+4>>2];c[(c[v>>2]|0)+28>>2]=(c[(c[b>>2]|0)+4>>2]|0)-(c[c[b>>
;2]>>2]|0);c[l>>2]=kp(c[v>>2]|0)|0;if(c[l>>2]|0)if((c[l>>2]|0)!=64){b=35;break
a}else break;else{zp(c[v>>2]|0,(c[v>>2]|0)+1e3|0);c[b>>2]=(c[b>>2]|0)+-8;continue b}}while
(0);c[e>>2]=c[c[b>>2]>>2];c[s>>2]=c[(c[b>>2]|0)+4>>2];c[o>>
;2]=(c[e>>2]|0)+((c[s>>2]|0)-(c[e>>2]|0)>>1);if((c[o>>2]|0)==(c[e>>2
]|0)){b=37;break a}if(((c[e>>2]|0)-(c[s>>2]|0)|0)>=(c[(c[v>>2]|0)+1248>>2]|0)){a=(c
[v>>2]|0)+1252|0;c[a>>2]=(c[a>>2]|0)+1}c[(c[b>>2]|0)+8>>2]=c[e>>2];c
[(c[b>>2]|0)+8+4>>2]=c[o>>2];c[c[b>>2]>>2]=c[o>>2];c[(c[b>>
;2]|0)+4>>2]=c[s>>2];c[b>>2]=(c[b>>2]|0)+8}c[q>>2]=(c[q>>2]|0)+1;c[p
>>2]=c[m>>2]}if((b|0)==35){c[u>>2]=1;v=c[u>>2]|0;i=w;return v|0}else if((b|0)==37){c[u
x3e;>2]=1;v=c[u>>2]|0;i=w;return v|0}else if((b|0)==42){if((c[(c[v>>2]|0)+1252>>2]|0)>8?(
c[(c[v>>2]|0)+1248>>2]|0)>16:0)c[(c[v>>2]|0)+1248>>2]=(c[(c[v>>2]|0)+1248
>>2]|0)/2|0;c[u>>2]=0;v=c[u>>2]|0;i=w;return v|0}}c[u>>2]=0;v=c[u>>2]|0;i=w;return
v|0}function jp(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;d=j+20|0;k=j+16|0;f=j+12|0;e=j+8|0;g=j+4|0;h=j;c[d>
x3e;2]=a;c[k>>2]=(c[d>>2]|0)+980;c[f>>2]=c[(c[k>>2]|0)+4>>2];c[e>>2]=(
c[f>>2]|0)+(b[(c[k>>2]|0)+2>>1]<<3);if((b[(c[k>>2]|0)+2>>1]|0)<=
0){c[(c[d>>2]|0)+12>>2]=0;c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+20>>2]=
0;c[(c[d>>2]|0)+16>>2]=0;i=j;return}k=c[c[f>>2]>>2]|0;c[(c[d>>2]|0)+12>
x3e;2]=k;c[(c[d>>2]|0)+8>>2]=k;k=c[(c[f>>2]|0)+4>>2]|0;c[(c[d>>2]|0)+20>
x3e;2]=k;c[(c[d>>2]|0)+16>>2]=k;c[f>>2]=(c[f>>2]|0)+8;while(1){if((c[f>>2]|0)
x3e;>>0>=(c[e>>2]|0)>>>0)break;c[g>>2]=c[c[f>>2]>>2];c[h
x3e;>2]=c[(c[f>>2]|0)+4>>2];if((c[g>>2]|0)<(c[(c[d>>2]|0)+8>>2]|0))c
[(c[d>>2]|0)+8>>2]=c[g>>2];if((c[g>>2]|0)>(c[(c[d>>2]|0)+12>>2]|
0))c[(c[d>>2]|0)+12>>2]=c[g>>2];if((c[h>>2]|0)<(c[(c[d>>2]|0)+16>>
;2]|0))c[(c[d>>2]|0)+16>>2]=c[h>>2];if((c[h>>2]|0)>(c[(c[d>>2]|0)+20>
;>2]|0))c[(c[d>>2]|0)+20>>2]=c[h>>2];c[f>>2]=(c[f>>2]|0)+8}c[(c[d>
x3e;2]|0)+8>>2]=c[(c[d>>2]|0)+8>>2]>>6;c[(c[d>>2]|0)+16>>2]=c[(c[d
x3e;>2]|0)+16>>2]>>6;c[(c[d>>2]|0)+12>>2]=(c[(c[d>>2]|0)+12>>2]|
0)+63>>6;c[(c[d>>2]|0)+20>>2]=(c[(c[d>>2]|0)+20>>2]|0)+63>>6;i=j;return
}function kp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;h=4;f=Fs(40)|0;c[f>>2]=0;g=j;c[g>>2]=0;h=
Qs(a+1256|0,1,f|0,h|0)|0;f=C;n=0;b=n;n=0;if((b|0)!=0&(o|0)!=0){d=Rs(c[b>>2]|0,h|0,f|0)|0;if(!d)ta(b|0,o|0);C=o}else
d=-1;if((d|0)==1)b=C;else b=0;while(1){if(b|0){b=7;break}n=0;b=ea(46,a+980|0,4172,a|0)|0;d=n;n=0;if((d|0)!=0&(o|0)!=0){e=Rs
(c[d>>2]|0,h|0,f|0)|0;if(!e)ta(d|0,o|0);C=o}else e=-1;if((e|0)==1){b=C;continue}c[g>>2]=b;n=0;la(43,a|0);b=n
;n=0;if((b|0)!=0&(o|0)!=0){d=Rs(c[b>>2]|0,h|0,f|0)|0;if(!d)ta(b|0,o|0);C=o}else d=-1;if((d|0)==1)b=C;else{b=6;break
}}if((b|0)==6){g=c[g>>2]|0;Gs(h|0);i=j;return g|0}else if((b|0)==7){c[g>>2]=64;g=c[g>>2]|0;Gs(h|0);
i=j;return g|0}return 0}function lp(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;e=d+8|0;g=d+4|0;f=d;c[h>
x3e;2]=a;c[e>>2]=b;mp(c[e>>2]|0);c[g>>2]=c[c[h>>2]>>2]<<2;c[f>
x3e;2]=c[(c[h>>2]|0)+4>>2]<<2;op(c[e>>2]|0,c[g>>2]>>8,c[f>>
;2]>>8);c[(c[e>>2]|0)+64>>2]=c[g>>2];c[(c[e>>2]|0)+68>>2]=c[f>
x3e;2];i=d;return 0}function mp(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(c[(c[b>>2]|0)+
40>>2]|0){i=e;return}if(!(c[(c[b>>2]|0)+32>>2]|c[(c[b>>2]|0)+36>>2])){i=e;return
}c[d>>2]=np(c[b>>2]|0)|0;a=(c[d>>2]|0)+8|0;c[a>>2]=(c[a>>2]|0)+(c[(c[b>
x3e;2]|0)+32>>2]|0);a=(c[d>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+(c[(c[b>>2]|0)+36>
;>2]|0);i=e;return}function np(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+12|0;f=h+8|0;e=h+4|0;g=h;c[d>>
;2]=a;c[g>>2]=c[c[d>>2]>>2];if((c[g>>2]|0)>(c[(c[d>>2]|0)+24>>2
]|0))c[g>>2]=c[(c[d>>2]|0)+24>>2];c[f>>2]=(c[(c[d>>2]|0)+1420>>2]|0)+(
c[(c[d>>2]|0)+4>>2]<<2);while(1){c[e>>2]=c[c[f>>2]>>2];if(!(c[e>
;>2]|0))break;if((c[c[e>>2]>>2]|0)>(c[g>>2]|0))break;if((c[c[e>>2]>>
2]|0)==(c[g>>2]|0)){b=11;break}c[f>>2]=(c[e>>2]|0)+12}if((b|0)==11){g=c[e>>2]|0;i=h;return
g|0}a=c[d>>2]|0;if((c[(c[d>>2]|0)+52>>2]|0)>=(c[(c[d>>2]|0)+48>>2]|0))ta
(a+1256|0,1);b=c[a+44>>2]|0;a=(c[d>>2]|0)+52|0;d=c[a>>2]|0;c[a>>2]=d+1;c[e>>2]=
b+(d<<4);c[c[e>>2]>>2]=c[g>>2];c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>
;2]|0)+4>>2]=0;c[(c[e>>2]|0)+12>>2]=c[c[f>>2]>>2];c[c[f>>2]>>
;2]=c[e>>2];g=c[e>>2]|0;i=h;return g|0}function op(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0
;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if((c[f>>2]|0)>(c[(c[e>>
;2]|0)+12>>2]|0))c[f>>2]=c[(c[e>>2]|0)+12>>2];if((c[f>>2]|0)<(c[(c[e>
;>2]|0)+8>>2]|0))c[f>>2]=(c[(c[e>>2]|0)+8>>2]|0)-1;c[(c[e>>2]|0)+32>
x3e;2]=0;c[(c[e>>2]|0)+36>>2]=0;c[c[e>>2]>>2]=(c[f>>2]|0)-(c[(c[e>>2
]|0)+8>>2]|0);c[(c[e>>2]|0)+4>>2]=(c[g>>2]|0)-(c[(c[e>>2]|0)+16>>2]|
0);c[(c[e>>2]|0)+72>>2]=c[g>>2]<<8;c[(c[e>>2]|0)+40>>2]=0;pp(c[e>
;>2]|0,c[f>>2]|0,c[g>>2]|0);i=h;return}function pp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i
+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[g>>2]=(c[g>>2]|0)-(c
[(c[e>>2]|0)+16>>2]|0);if((c[f>>2]|0)>(c[(c[e>>2]|0)+12>>2]|0))c[f>
x3e;2]=c[(c[e>>2]|0)+12>>2];a=(c[f>>2]|0)-(c[(c[e>>2]|0)+8>>2]|0)|0;c[f>
x3e;2]=a;c[f>>2]=(c[f>>2]|0)<0?-1:a;if(!((c[f>>2]|0)==(c[c[e>>2]>>2]|0)?(
c[g>>2]|0)==(c[(c[e>>2]|0)+4>>2]|0):0)){if(!(c[(c[e>>2]|0)+40>>2]|0))mp(c[e>
;>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[(c[e>>2]|0)+36>>2]=0}c[c[e>>2]>>
;2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=c[g>>2];if((c[g>>2]|0)>>>0>
;=(c[(c[e>>2]|0)+28>>2]|0)>>>0){d=1;d=d&1;a=c[e>>2]|0;a=a+40|0;c[a>>
2]=d;i=h;return}d=(c[f>>2]|0)>=(c[(c[e>>2]|0)+24>>2]|0);d=d&1;a=c[e>>2]|0;a=a+
40|0;c[a>>2]=d;i=h;return}function qp(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;rp(c[f>>2]|0,c[c[e>>2]>>2]<<2,c[(c[e>>2]|0)+4>>2]
x3c;<2);i=d;return 0}function rp(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,y=0,z=0,A=0,B=0,C=0;C=i;i=i+96|0;e=C+88|0;f=C+84|0;g=C+80|0;n=C+76|0;o=C+72|0;q=C+68|0;r=C+64|0;w=C+60|0;k=C+56|0
;l=C+52|0;A=C+48|0;B=C+44|0;x=C+40|0;p=C+36|0;j=C+32|0;y=C+28|0;t=C+24|0;s=C+20|0;v=C+16|0;u=C+12|0;m=C+8|0;z=C+4|0;h=C;c[e>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[n>>2]=c[(c[e>>2]|0)+72>>2]>>8;c[o
x3e;>2]=c[g>>2]>>8;c[q>>2]=(c[(c[e>>2]|0)+68>>2]|0)-(c[(c[e>>2]|
0)+72>>2]|0);c[r>>2]=(c[g>>2]|0)-(c[o>>2]<<8);c[k>>2]=(c[f>>
;2]|0)-(c[(c[e>>2]|0)+64>>2]|0);c[l>>2]=(c[g>>2]|0)-(c[(c[e>>2]|0)+68>>
;2]|0);c[v>>2]=c[n>>2];c[u>>2]=c[o>>2];if((c[n>>2]|0)>(c[o>>2]|
0)){c[v>>2]=c[o>>2];c[u>>2]=c[n>>2]}if((c[v>>2]|0)>=(c[(c[e>>2]|
0)+20>>2]|0)){A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>
;>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=
A;i=C;return}if((c[u>>2]|0)<(c[(c[e>>2]|0)+16>>2]|0)){A=c[f>>2]|0;B=c[e>>
2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0
;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C;return}if((c[n>>2]|0)==(c[o>>2]|0)){
sp(c[e>>2]|0,c[n>>2]|0,c[(c[e>>2]|0)+64>>2]|0,c[q>>2]|0,c[f>>2]|0,c[
r>>2]|0);A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>
;2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C
;return}c[s>>2]=1;if(!(c[k>>2]|0)){c[m>>2]=c[(c[e>>2]|0)+64>>2]>>8;c
[z>>2]=(c[(c[e>>2]|0)+64>>2]|0)-(c[m>>2]<<8)<<1;c[p>>2]=256
;if((c[l>>2]|0)<0){c[p>>2]=0;c[s>>2]=-1}c[j>>2]=(c[p>>2]|0)-(c[q>>
;2]|0);A=_(c[z>>2]|0,c[j>>2]|0)|0;B=(c[e>>2]|0)+32|0;c[B>>2]=(c[B>>2]|0)+A;B=(
c[e>>2]|0)+36|0;c[B>>2]=(c[B>>2]|0)+(c[j>>2]|0);c[n>>2]=(c[n>>2]|0)+(
c[s>>2]|0);pp(c[e>>2]|0,c[m>>2]|0,c[n>>2]|0);c[j>>2]=(c[p>>2]|0)+(c[
p>>2]|0)-256;c[h>>2]=_(c[z>>2]|0,c[j>>2]|0)|0;while(1){if((c[n>>2]|0)==(c[o>
;>2]|0))break;B=(c[e>>2]|0)+32|0;c[B>>2]=(c[B>>2]|0)+(c[h>>2]|0);B=(c[e>>
2]|0)+36|0;c[B>>2]=(c[B>>2]|0)+(c[j>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[s>>
;2]|0);pp(c[e>>2]|0,c[m>>2]|0,c[n>>2]|0)}c[j>>2]=(c[r>>2]|0)-256+(c[p>>
;2]|0);B=_(c[z>>2]|0,c[j>>2]|0)|0;A=(c[e>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+B;A=(
c[e>>2]|0)+36|0;c[A>>2]=(c[A>>2]|0)+(c[j>>2]|0);A=c[f>>2]|0;B=c[e>>2
]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;
A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C;return}c[x>>2]=_(256-(c[q>>2]|0)|0,c
[k>>2]|0)|0;c[p>>2]=256;c[s>>2]=1;if((c[l>>2]|0)<0){c[x>>2]=_(c[q>
x3e;2]|0,c[k>>2]|0)|0;c[p>>2]=0;c[s>>2]=-1;c[l>>2]=0-(c[l>>2]|0)}c[j>>
;2]=(c[x>>2]|0)/(c[l>>2]|0)|0;c[w>>2]=(c[x>>2]|0)%(c[l>>2]|0)|0;if((c[w>
x3e;2]|0)<0){c[j>>2]=(c[j>>2]|0)+-1;c[w>>2]=(c[w>>2]|0)+(c[l>>2]|0)}c[A
x3e;>2]=(c[(c[e>>2]|0)+64>>2]|0)+(c[j>>2]|0);sp(c[e>>2]|0,c[n>>2]|0,c[(c[
e>>2]|0)+64>>2]|0,c[q>>2]|0,c[A>>2]|0,c[p>>2]|0);c[n>>2]=(c[n>
x3e;2]|0)+(c[s>>2]|0);pp(c[e>>2]|0,c[A>>2]>>8,c[n>>2]|0);a:do if((c[n>>
;2]|0)!=(c[o>>2]|0)){c[x>>2]=c[k>>2]<<8;c[t>>2]=(c[x>>2]|0)/(c[l>
;>2]|0)|0;c[y>>2]=(c[x>>2]|0)%(c[l>>2]|0)|0;if((c[y>>2]|0)<0){c[t>>2
]=(c[t>>2]|0)+-1;c[y>>2]=(c[y>>2]|0)+(c[l>>2]|0)}c[w>>2]=(c[w>>2]|0)-(
c[l>>2]|0);while(1){if((c[n>>2]|0)==(c[o>>2]|0))break a;c[j>>2]=c[t>>2];c[w>
;>2]=(c[w>>2]|0)+(c[y>>2]|0);if((c[w>>2]|0)>=0){c[w>>2]=(c[w>>2]|0)-(
c[l>>2]|0);c[j>>2]=(c[j>>2]|0)+1}c[B>>2]=(c[A>>2]|0)+(c[j>>2]|0);sp(
c[e>>2]|0,c[n>>2]|0,c[A>>2]|0,256-(c[p>>2]|0)|0,c[B>>2]|0,c[p>>2]|0);
c[A>>2]=c[B>>2];c[n>>2]=(c[n>>2]|0)+(c[s>>2]|0);pp(c[e>>2]|0,c[A>
;>2]>>8,c[n>>2]|0)}}while(0);sp(c[e>>2]|0,c[n>>2]|0,c[A>>2]|0,256-(c[p>
;>2]|0)|0,c[f>>2]|0,c[r>>2]|0);A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A
;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>
;2]|0;B=B+72|0;c[B>>2]=A;i=C;return}function sp(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;y=i;i=i+80|0;h=y+68|0;j=y+64|0;A=y+60|0;k=y+56|0;z=y+52|0;l=y+48|0;o=
y+44|0;p=y+40|0;r=y+36|0;s=y+32|0;m=y+28|0;v=y+24|0;u=y+20|0;x=y+16|0;w=y+12|0;q=y+8|0;n=y+4|0;t=y;c[h>>2]=a;c[j>
x3e;2]=b;c[A>>2]=d;c[k>>2]=e;c[z>>2]=f;c[l>>2]=g;c[n>>2]=(c[z>>2]|0)-(
c[A>>2]|0);c[o>>2]=c[A>>2]>>8;c[p>>2]=c[z>>2]>>8;c[r>
x3e;2]=(c[A>>2]|0)-(c[o>>2]<<8);c[s>>2]=(c[z>>2]|0)-(c[p>>2]<
x3c;8);if((c[k>>2]|0)==(c[l>>2]|0)){pp(c[h>>2]|0,c[p>>2]|0,c[j>>2]|0);i=y;return
}if((c[o>>2]|0)==(c[p>>2]|0)){c[m>>2]=(c[l>>2]|0)-(c[k>>2]|0);z=_((c[r>
x3e;2]|0)+(c[s>>2]|0)|0,c[m>>2]|0)|0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;
A=(c[h>>2]|0)+36|0;c[A>>2]=(c[A>>2]|0)+(c[m>>2]|0);i=y;return}c[w>>2]=_(256-(c
[r>>2]|0)|0,(c[l>>2]|0)-(c[k>>2]|0)|0)|0;c[q>>2]=256;c[t>>2]=1;if((c[n>
x3e;2]|0)<0){c[w>>2]=_(c[r>>2]|0,(c[l>>2]|0)-(c[k>>2]|0)|0)|0;c[q>>2]=0;c
[t>>2]=-1;c[n>>2]=0-(c[n>>2]|0)}c[m>>2]=(c[w>>2]|0)/(c[n>>2]|0)|0;c[
v>>2]=(c[w>>2]|0)%(c[n>>2]|0)|0;if((c[v>>2]|0)<0){c[m>>2]=(c[m>>
;2]|0)+-1;c[v>>2]=(c[v>>2]|0)+(c[n>>2]|0)}z=_((c[r>>2]|0)+(c[q>>2]|0)|0,c[m>
;>2]|0)|0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;A=(c[h>>2]|0)+36|0;c[A>>
;2]=(c[A>>2]|0)+(c[m>>2]|0);c[o>>2]=(c[o>>2]|0)+(c[t>>2]|0);pp(c[h>>
2]|0,c[o>>2]|0,c[j>>2]|0);c[k>>2]=(c[k>>2]|0)+(c[m>>2]|0);a:do if((c[o>
x3e;2]|0)!=(c[p>>2]|0)){c[w>>2]=(c[l>>2]|0)-(c[k>>2]|0)+(c[m>>2]|0)<<
;8;c[u>>2]=(c[w>>2]|0)/(c[n>>2]|0)|0;c[x>>2]=(c[w>>2]|0)%(c[n>>2]|0)|
0;if((c[x>>2]|0)<0){c[u>>2]=(c[u>>2]|0)+-1;c[x>>2]=(c[x>>2]|0)+(c[n>
x3e;2]|0)}c[v>>2]=(c[v>>2]|0)-(c[n>>2]|0);while(1){if((c[o>>2]|0)==(c[p>>2]|0))
break a;c[m>>2]=c[u>>2];c[v>>2]=(c[v>>2]|0)+(c[x>>2]|0);if((c[v>>2]|
0)>=0){c[v>>2]=(c[v>>2]|0)-(c[n>>2]|0);c[m>>2]=(c[m>>2]|0)+1}A=(c[h>
x3e;2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+(c[m>>2]<<8);A=(c[h>>2]|0)+36|0;c[A>
x3e;2]=(c[A>>2]|0)+(c[m>>2]|0);c[k>>2]=(c[k>>2]|0)+(c[m>>2]|0);c[o>>
2]=(c[o>>2]|0)+(c[t>>2]|0);pp(c[h>>2]|0,c[o>>2]|0,c[j>>2]|0)}}while(0);c[m>
;>2]=(c[l>>2]|0)-(c[k>>2]|0);z=_((c[s>>2]|0)+256-(c[q>>2]|0)|0,c[m>>2]|0)|
0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;A=(c[h>>2]|0)+36|0;c[A>>2]=(c[A>
;>2]|0)+(c[m>>2]|0);i=y;return}function tp(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;up(c[h>>2]|0,c[g>>2]|0,c[f>>2]|
0);i=e;return 0}function up(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;p=i;i=i+48|0;e=p+44
|0;q=p+40|0;r=p+36|0;g=p+32|0;h=p+28|0;n=p+24|0;j=p+20|0;k=p+16|0;f=p+12|0;m=p+8|0;l=p+4|0;o=p;c[e>>2]=a;c[q>>
;2]=b;c[r>>2]=d;c[f>>2]=(c[e>>2]|0)+76;c[c[f>>2]>>2]=c[c[r>>2]>
x3e;2]<<2;c[(c[f>>2]|0)+4>>2]=c[(c[r>>2]|0)+4>>2]<<2;c[(c[f>>
;2]|0)+8>>2]=c[c[q>>2]>>2]<<2;c[(c[f>>2]|0)+8+4>>2]=c[(c[q>>
;2]|0)+4>>2]<<2;c[(c[f>>2]|0)+16>>2]=c[(c[e>>2]|0)+64>>2];c[(c[f>
;>2]|0)+16+4>>2]=c[(c[e>>2]|0)+68>>2];a=(c[(c[f>>2]|0)+16>>2]|0)+(c[c[f
x3e;>2]>>2]|0)-(c[(c[f>>2]|0)+8>>2]<<1)|0;c[g>>2]=((c[(c[f>>2]|
0)+16>>2]|0)+(c[c[f>>2]>>2]|0)-(c[(c[f>>2]|0)+8>>2]<<1)|0)<0?0-
a|0:a;a=(c[(c[f>>2]|0)+16+4>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0)-(c[(c[f>>2]|0)+8+4
x3e;>2]<<1)|0;c[h>>2]=((c[(c[f>>2]|0)+16+4>>2]|0)+(c[(c[f>>2]|0)+4>
x3e;2]|0)-(c[(c[f>>2]|0)+8+4>>2]<<1)|0)<0?0-a|0:a;if((c[g>>2]|0)<(c[h>>
;2]|0))c[g>>2]=c[h>>2];if((c[g>>2]|0)<=64){rp(c[e>>2]|0,c[c[f>>2]>
x3e;2]|0,c[(c[f>>2]|0)+4>>2]|0);i=p;return}c[j>>2]=0;while(1){if((c[g>>2]|0)<=64)break
;c[g>>2]=c[g>>2]>>2;c[j>>2]=(c[j>>2]|0)+1}c[k>>2]=(c[e>>2]|
0)+852;c[c[k>>2]>>2]=c[j>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)<0)break;c[
j>>2]=c[(c[k>>2]|0)+(c[n>>2]<<2)>>2];if((c[j>>2]|0)>1){r=c[(c[f
>>2]|0)+4>>2]|0;c[l>>2]=r;c[m>>2]=r;c[o>>2]=c[(c[f>>2]|0)+8+4>
x3e;2];if((c[o>>2]|0)<(c[m>>2]|0))c[m>>2]=c[o>>2];if((c[o>>2]|0)>(c[
l>>2]|0))c[l>>2]=c[o>>2];c[o>>2]=c[(c[f>>2]|0)+16+4>>2];if((c[o>
;>2]|0)<(c[m>>2]|0))c[m>>2]=c[o>>2];if((c[o>>2]|0)>(c[l>>2]|0))
c[l>>2]=c[o>>2];if((c[m>>2]>>8|0)<(c[(c[e>>2]|0)+20>>2]|0)?(c[l
>>2]>>8|0)>=(c[(c[e>>2]|0)+16>>2]|0):0){vp(c[f>>2]|0);c[f>>2]=(
c[f>>2]|0)+16;c[n>>2]=(c[n>>2]|0)+1;r=(c[j>>2]|0)-1|0;c[(c[k>>2]|0)+((c[n>
;>2]|0)-1<<2)>>2]=r;c[(c[k>>2]|0)+(c[n>>2]<<2)>>2]=r;continue}}
rp(c[e>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0);c[n>>2]=(c[n>
;>2]|0)+-1;c[f>>2]=(c[f>>2]|0)+-16}i=p;return}function vp(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[(c[d>>2]|0)+32>>2]=c[(c[d>>2]|0)+16>>2];c[e>
x3e;2]=c[(c[d>>2]|0)+8>>2];a=((c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c
[d>>2]|0)+24>>2]=a;c[f>>2]=a;a=((c[c[d>>2]>>2]|0)+(c[e>>2]|0)|0)/2|0
;c[(c[d>>2]|0)+8>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16>>2]=((c[f>>2]|0)+(
c[e>>2]|0)|0)/2|0;c[(c[d>>2]|0)+32+4>>2]=c[(c[d>>2]|0)+16+4>>2];c[e>>
;2]=c[(c[d>>2]|0)+8+4>>2];a=((c[(c[d>>2]|0)+16+4>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(
c[d>>2]|0)+24+4>>2]=a;c[f>>2]=a;a=((c[(c[d>>2]|0)+4>>2]|0)+(c[e>>2]|
0)|0)/2|0;c[(c[d>>2]|0)+8+4>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16+4>>2]=((c[f>
x3e;2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function wp(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;h=f+8|0;g=f+4|0;k=f;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;c[k>>2]=e;xp(c[k>>
;2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0);i=f;return 0}function xp(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;w=i;i=i+80|0;f=w+72|0;x=w+68|0;y=w+64|0;z=w+60|
0;h=w+56|0;s=w+52|0;r=w+48|0;v=w+44|0;j=w+40|0;n=w+36|0;m=w+32|0;q=w+28|0;k=w+24|0;o=w+20|0;l=w+16|0;p=w+12|0;g=w+8|0;t=w+4|0;u=
w;c[f>>2]=a;c[x>>2]=b;c[y>>2]=d;c[z>>2]=e;c[h>>2]=(c[f>>2]|0)+76;c[c
[h>>2]>>2]=c[c[z>>2]>>2]<<2;c[(c[h>>2]|0)+4>>2]=c[(c[z>
;>2]|0)+4>>2]<<2;c[(c[h>>2]|0)+8>>2]=c[c[y>>2]>>2]<<2
;c[(c[h>>2]|0)+8+4>>2]=c[(c[y>>2]|0)+4>>2]<<2;c[(c[h>>2]|0)+16>
x3e;2]=c[c[x>>2]>>2]<<2;c[(c[h>>2]|0)+16+4>>2]=c[(c[x>>2]|0)+4>
x3e;2]<<2;c[(c[h>>2]|0)+24>>2]=c[(c[f>>2]|0)+64>>2];c[(c[h>>2]|0)+24
+4>>2]=c[(c[f>>2]|0)+68>>2];a:while(1){z=c[(c[h>>2]|0)+4>>2]|0;c[r>>
2]=z;c[s>>2]=z;c[v>>2]=c[(c[h>>2]|0)+8+4>>2];if((c[v>>2]|0)<(c[s>>
;2]|0))c[s>>2]=c[v>>2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>
2];c[v>>2]=c[(c[h>>2]|0)+16+4>>2];if((c[v>>2]|0)<(c[s>>2]|0))c[s>>
;2]=c[v>>2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>2];c[v>>2]=
c[(c[h>>2]|0)+24+4>>2];if((c[v>>2]|0)<(c[s>>2]|0))c[s>>2]=c[v>>
2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>2];do if((c[s>>2]>>8
|0)<(c[(c[f>>2]|0)+20>>2]|0)?(c[r>>2]>>8|0)>=(c[(c[f>>2]|0)+16>
x3e;2]|0):0){c[j>>2]=(c[(c[h>>2]|0)+24>>2]|0)-(c[c[h>>2]>>2]|0);c[n>>
;2]=(c[(c[h>>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0);b=c[j>>2]|0;c[m>
x3e;2]=(c[j>>2]|0)<0?0-b|0:b;b=c[n>>2]|0;c[q>>2]=(c[n>>2]|0)<0?0-b|0:b;b=c[m
x3e;>2]|0;if((c[m>>2]|0)>(c[q>>2]|0))b=(b*236|0)+((c[q>>2]|0)*97|0)|0;else b=(b*97|0)+((
c[q>>2]|0)*236|0)|0;c[g>>2]=b>>8;if(((((((c[g>>2]|0)<=32767?(c[u>>2]=(c[g
>>2]|0)*42,c[k>>2]=(c[(c[h>>2]|0)+8>>2]|0)-(c[c[h>>2]>>2]|0),c[o>
;>2]=(c[(c[h>>2]|0)+8+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0),y=_(c[n>>2]|0,c[k
x3e;>2]|0)|0,y=(y-(_(c[j>>2]|0,c[o>>2]|0)|0)|0)<0,z=_(c[n>>2]|0,c[k>>2]|0)|0,z
=z-(_(c[j>>2]|0,c[o>>2]|0)|0)|0,c[t>>2]=y?0-z|0:z,(c[t>>2]|0)<=(c[u>>2]|0
)):0)?(c[l>>2]=(c[(c[h>>2]|0)+16>>2]|0)-(c[c[h>>2]>>2]|0),c[p>>2]=(c
[(c[h>>2]|0)+16+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0),y=_(c[n>>2]|0,c[l>>
2]|0)|0,y=(y-(_(c[j>>2]|0,c[p>>2]|0)|0)|0)<0,z=_(c[n>>2]|0,c[l>>2]|0)|0,z=z-(_(c[j
x3e;>2]|0,c[p>>2]|0)|0)|0,c[t>>2]=y?0-z|0:z,(c[t>>2]|0)<=(c[u>>2]|0)):0)?(z=_(
c[n>>2]|0,c[o>>2]|0)|0,(z+(_(c[j>>2]|0,c[k>>2]|0)|0)|0)>=0):0)?(z=_(c[n>>
2]|0,c[p>>2]|0)|0,(z+(_(c[j>>2]|0,c[l>>2]|0)|0)|0)>=0):0)?(z=_(c[n>>2]|0,(c[(c[h>
;>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+8+4>>2]|0)|0)|0,(z+(_(c[j>>2]|0,(c[(c[h>>
;2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+8>>2]|0)|0)|0)|0)>=0):0)?(z=_(c[n>>2]|0,(c[(c[h>
;>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+16+4>>2]|0)|0)|0,(z+(_(c[j>>2]|0,(c[(c[h>
x3e;2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+16>>2]|0)|0)|0)|0)>=0):0)break;yp(c[h>>2]|0);c[h
>>2]=(c[h>>2]|0)+24;continue a}while(0);rp(c[f>>2]|0,c[c[h>>2]>>2]|0,c[(c[h>
;>2]|0)+4>>2]|0);if((c[h>>2]|0)==((c[f>>2]|0)+76|0))break;c[h>>2]=(c[h>>2
]|0)+-24}i=w;return}function yp(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;f=b+12|0;e=b+8|0;g=b+4|0;h=b;c[d>
;>2]=a;c[(c[d>>2]|0)+48>>2]=c[(c[d>>2]|0)+24>>2];c[g>>2]=c[(c[d>>
;2]|0)+8>>2];c[h>>2]=c[(c[d>>2]|0)+16>>2];a=((c[c[d>>2]>>2]|0)+(c[g
x3e;>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+8>>2]=a;a=((c[(c[d>>2]|0)+24>>2
]|0)+(c[h>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+40>>2]=a;c[g>>2]=((c[g>
x3e;2]|0)+(c[h>>2]|0)|0)/2|0;a=((c[f>>2]|0)+(c[g>>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>
;2]|0)+16>>2]=a;a=((c[e>>2]|0)+(c[g>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+32
x3e;>2]=a;c[(c[d>>2]|0)+24>>2]=((c[f>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c[d>>2]|
0)+48+4>>2]=c[(c[d>>2]|0)+24+4>>2];c[g>>2]=c[(c[d>>2]|0)+8+4>>2];c[h
>>2]=c[(c[d>>2]|0)+16+4>>2];a=((c[(c[d>>2]|0)+4>>2]|0)+(c[g>>2]|0)|0
)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+8+4>>2]=a;a=((c[(c[d>>2]|0)+24+4>>2]|0)+(c[h>
;>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+40+4>>2]=a;c[g>>2]=((c[g>>2]|0)+(c
[h>>2]|0)|0)/2|0;a=((c[f>>2]|0)+(c[g>>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+16+
4>>2]=a;a=((c[e>>2]|0)+(c[g>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+32+4>
x3e;2]=a;c[(c[d>>2]|0)+24+4>>2]=((c[f>>2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function zp(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;k=i;i=i+32|0;d=k+24|0;l=k+20|0;j=k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;e=k;c[d>
;>2]=a;c[l>>2]=b;c[l>>2]=c[l>>2];if(!(c[(c[d>>2]|0)+52>>2]|0)){i=k;return
}c[(c[d>>2]|0)+1232>>2]=0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[d>>2]|
0)+1424>>2]|0))break;c[f>>2]=c[(c[(c[d>>2]|0)+1420>>2]|0)+(c[j>>2]<<
2)>>2];c[g>>2]=0;c[h>>2]=0;while(1){if(!(c[f>>2]|0))break;if(c[g>>2]|0?(c[c[f
x3e;>2]>>2]|0)>(c[h>>2]|0):0)Ap(c[d>>2]|0,c[h>>2]|0,c[j>>2]|0,c[g>
;>2]<<9,(c[c[f>>2]>>2]|0)-(c[h>>2]|0)|0);c[g>>2]=(c[g>>2]|0)+(c
[(c[f>>2]|0)+4>>2]|0);c[e>>2]=(c[g>>2]<<9)-(c[(c[f>>2]|0)+8>>
;2]|0);if(c[e>>2]|0?(c[c[f>>2]>>2]|0)>=0:0)Ap(c[d>>2]|0,c[c[f>>2]>
x3e;2]|0,c[j>>2]|0,c[e>>2]|0,1);c[h>>2]=(c[c[f>>2]>>2]|0)+1;c[f>>2]=
c[(c[f>>2]|0)+12>>2]}if(c[g>>2]|0)Ap(c[d>>2]|0,c[h>>2]|0,c[j>>2]|0,c
[g>>2]<<9,(c[(c[d>>2]|0)+24>>2]|0)-(c[h>>2]|0)|0);c[j>>2]=(c[j>
x3e;2]|0)+1}if(!(c[(c[d>>2]|0)+1236>>2]|0)){i=k;return}if((c[(c[d>>2]|0)+1232>>2]|0)<
;=0){i=k;return}_a[c[(c[d>>2]|0)+1236>>2]&15](c[(c[d>>2]|0)+1244>>2]|0,c[(c[d>
x3e;2]|0)+1232>>2]|0,(c[d>>2]|0)+1040|0,c[(c[d>>2]|0)+1240>>2]|0);i=k;return}function Ap
(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;s=i;i=i+32|0;l=s+28|0;m=s+24|0;n=s+20|0;t=s+16
|0;o=s+12|0;r=s+8|0;p=s+4|0;q=s;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[t>>2]=j;c[o>>2
]=k;c[q>>2]=c[t>>2]>>9;if((c[q>>2]|0)<0)c[q>>2]=0-(c[q>>2]|0);k
=c[q>>2]|0;do if(c[(c[l>>2]|0)+980+16>>2]&2|0){c[q>>2]=k&511;k=c[q>>
2]|0;if((c[q>>2]|0)>256){c[q>>2]=512-k;break}if((k|0)==256)c[q>>2]=255}else if((k|0)>=256
)c[q>>2]=255;while(0);c[n>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);t=(c[m>
;>2]|0)+(c[(c[l>>2]|0)+8>>2]|0)|0;c[m>>2]=t;c[m>>2]=(c[m>>2]|0)>=32767
?32767:t;if((c[n>>2]|0)>=2147483647)c[n>>2]=2147483647;if(!(c[q>>2]|0)){i=s;return}c[p>
x3e;2]=c[(c[l>>2]|0)+1232>>2];c[r>>2]=(c[l>>2]|0)+1040+((c[p>>2]|0)*6|0)+-6;if
((((c[p>>2]|0)>0?(c[(c[l>>2]|0)+1244>>2]|0)==(c[n>>2]|0):0)?((b[c[r>>2]
x3e;>1]|0)+(e[(c[r>>2]|0)+2>>1]|0)|0)==(c[m>>2]|0):0)?(d[(c[r>>2]|0)+4>>0
]|0)==(c[q>>2]|0):0){b[(c[r>>2]|0)+2>>1]=(e[(c[r>>2]|0)+2>>1]|0)+(c[o>>
;2]|0);i=s;return}if((c[p>>2]|0)>=32?1:(c[(c[l>>2]|0)+1244>>2]|0)!=(c[n>>2]|0)){if((
c[p>>2]|0)>0?(c[(c[l>>2]|0)+1236>>2]|0)!=0:0)_a[c[(c[l>>2]|0)+1236>>2]&
;15](c[(c[l>>2]|0)+1244>>2]|0,c[p>>2]|0,(c[l>>2]|0)+1040|0,c[(c[l>>2]|0)+1240
x3e;>2]|0);c[(c[l>>2]|0)+1232>>2]=0;c[(c[l>>2]|0)+1244>>2]=c[n>>2];c[p>
;>2]=0;c[r>>2]=(c[l>>2]|0)+1040}else c[r>>2]=(c[r>>2]|0)+6;b[c[r>>2]>
;>1]=c[m>>2];b[(c[r>>2]|0)+2>>1]=c[o>>2];a[(c[r>>2]|0)+4>>0]=c[
q>>2];t=(c[l>>2]|0)+1232|0;c[t>>2]=(c[t>>2]|0)+1;i=s;return}function Bp(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]|0)+12>>2];Fb(c[e>>
;2]|0,c[d>>2]|0);c[d>>2]=0;i=b;return}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]=c[(c[e>>2]|0)+4>>2];Ua[c[(c[(c[(c[e>>2]|0)+20>>2]|0)+56>
;>2]|0)+8>>2]&31](c[(c[e>>2]|0)+60>>2]|0,c[(c[d>>2]|0)+172>>2]|0,c[(
c[d>>2]|0)+176>>2]|0);i=b;return 0}function Dp(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;k=i;
i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;if((c[h>
;>2]|0)==1)c[h>>2]=0;b=Ep(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,0)|0;i=
k;return b|0}function Ep(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;P=i;i=i+192|0;k=P+180|0;l=P+176|0;m=P+172|0;n=P+168|0;o=P+
164|0;p=P+160|0;t=P+156|0;B=P+152|0;r=P+136|0;H=P+128|0;u=P+124|0;v=P+120|0;I=P+116|0;D=P+112|0;q=P+108|0;A=P+104|0;y=P+100|0;G=
P+96|0;L=P+92|0;N=P+88|0;K=P+84|0;O=P+80|0;C=P+32|0;z=P+28|0;w=P+24|0;M=P+20|0;s=P+16|0;E=P+12|0;F=P+8|0;J=P+4|0;x=P;c[l>
x3e;2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=h;c[p>>2]=j;c[B>>2]=0;c[y>>2]=(
c[n>>2]|0)==3&1;c[G>>2]=(c[n>>2]|0)==4&1;do if((c[(c[m>>2]|0)+72>>2]|
0)==(c[(c[l>>2]|0)+24>>2]|0)){if((c[n>>2]|0)!=(c[p>>2]|0)){c[k>>2]=19;O=c[k>
;>2]|0;i=P;return O|0}c[B>>2]=(c[m>>2]|0)+108;if(c[o>>2]|0)Nb(c[B>>2]|0,c[c[o>
x3e;2]>>2]|0,c[(c[o>>2]|0)+4>>2]|0);_d(c[B>>2]|0,r);c[r>>2]=c[r>>2]
x26;-64;c[r+4>>2]=c[r+4>>2]&-64;c[r+8>>2]=(c[r+8>>2]|0)+63&-64;c[r+12>>
;2]=(c[r+12>>2]|0)+63&-64;if((c[r>>2]|0)<0?(c[r+8>>2]|0)>(2147483647+(c[r>>
;2]|0)|0):0){c[k>>2]=98;O=c[k>>2]|0;i=P;return O|0}c[H>>2]=(c[r+8>>2]|0)-(c[r>>
;2]|0)>>6;if((c[r+4>>2]|0)<0?(c[r+12>>2]|0)>(2147483647+(c[r+4>>2]|0)|0):0){c[
k>>2]=98;O=c[k>>2]|0;i=P;return O|0}c[u>>2]=(c[r+12>>2]|0)-(c[r+4>>2]|0)>
x3e;6;c[q>>2]=(c[m>>2]|0)+76;c[A>>2]=c[(c[l>>2]|0)+8>>2];c[I>>2]=c[H
>>2];c[v>>2]=c[u>>2];if(c[(c[(c[m>>2]|0)+156>>2]|0)+4>>2]&1|0){
Fb(c[A>>2]|0,c[(c[q>>2]|0)+12>>2]|0);c[(c[q>>2]|0)+12>>2]=0;f=(c[(c[m>>
;2]|0)+156>>2]|0)+4|0;c[f>>2]=c[f>>2]&-2}c[D>>2]=c[H>>2];if(c[y>>
;2]|0){c[H>>2]=(c[H>>2]|0)*3;c[D>>2]=(c[H>>2]|0)+3&-4}if(c[G>>2]|0)c[u>
;>2]=(c[u>>2]|0)*3;c[L>>2]=c[r>>2];c[N>>2]=c[r+4>>2];c[K>>2]=c[
r>>2]>>6;c[O>>2]=c[r+12>>2]>>6;if((c[H>>2]|0)>>>0>
;32767|(c[u>>2]|0)>>>0>32767){c[k>>2]=98;O=c[k>>2]|0;i=P;return O|0}a[(c[q>
;>2]|0)+18>>0]=2;b[(c[q>>2]|0)+16>>1]=256;c[(c[q>>2]|0)+4>>2]=c[H>
x3e;2];c[c[q>>2]>>2]=c[u>>2];c[(c[q>>2]|0)+8>>2]=c[D>>2];Nb(c[B>
;>2]|0,0-(c[L>>2]|0)|0,0-(c[N>>2]|0)|0);f=bc(c[A>>2]|0,_(c[D>>2]|0,c[u>>2
]|0)|0,t)|0;c[(c[q>>2]|0)+12>>2]=f;if(!(c[t>>2]|0)){f=(c[(c[m>>2]|0)+156>>2]|0
)+4|0;c[f>>2]=c[f>>2]|1;c[C>>2]=c[q>>2];c[C+4>>2]=c[B>>2];c[C+8>
;>2]=1;c[t>>2]=Ya[c[(c[l>>2]|0)+64>>2]&127](c[(c[l>>2]|0)+60>>2]|0,C
)|0;a:do if(c[y>>2]|0){c[z>>2]=c[(c[q>>2]|0)+12>>2];c[w>>2]=c[v>>2];
while(1){if((c[w>>2]|0)>>>0<=0)break a;c[s>>2]=(c[z>>2]|0)+(c[H>>2]|
0);c[M>>2]=c[I>>2];while(1){if((c[M>>2]|0)>>>0<=0)break;c[E>>2]=d[(c
[z>>2]|0)+((c[M>>2]|0)-1)>>0];a[(c[s>>2]|0)+-3>>0]=c[E>>2];a[(c[s>
;>2]|0)+-2>>0]=c[E>>2];a[(c[s>>2]|0)+-1>>0]=c[E>>2];c[s>>2]=(c[
s>>2]|0)+-3;c[M>>2]=(c[M>>2]|0)+-1}c[w>>2]=(c[w>>2]|0)+-1;c[z>>2]=(c
[z>>2]|0)+(c[D>>2]|0)}}while(0);b:do if(c[G>>2]|0){c[F>>2]=(c[(c[q>>2]|0)+12
x3e;>2]|0)+(_((c[u>>2]|0)-(c[v>>2]|0)|0,c[D>>2]|0)|0);c[J>>2]=c[(c[q>>2]|
0)+12>>2];c[x>>2]=c[v>>2];while(1){if((c[x>>2]|0)>>>0<=0)break b;Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);c[F
>>2]=(c[F>>2]|0)+(c[D>>2]|0);c[x>>2]=(c[x>>2]|0)+-1}}while(0);Nb(c[B>>
;2]|0,c[L>>2]|0,c[N>>2]|0);if((c[K>>2]|0)>2147483647|(c[O>>2]|0)>2147483647){c
[k>>2]=23;O=c[k>>2]|0;i=P;return O|0}else{if(c[t>>2]|0)break;c[(c[m>>2]|0)+72>>
;2]=1651078259;c[(c[m>>2]|0)+100>>2]=c[K>>2];c[(c[m>>2]|0)+104>>2]=c[O>
x3e;2];break}}}else c[t>>2]=6;while(0);if((c[B>>2]|0)!=0&(c[o>>2]|0)!=0)Nb(c[B>>2]|
0,0-(c[c[o>>2]>>2]|0)|0,0-(c[(c[o>>2]|0)+4>>2]|0)|0);c[k>>2]=c[t>>2];
O=c[k>>2]|0;i=P;return O|0}function Fp(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;l=k+16
|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[l>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2
]=0;if((c[(c[f>>2]|0)+72>>2]|0)!=(c[(c[l>>2]|0)+24>>2]|0)){c[j>>2]=6;l=c[j>
;>2]|0;i=k;return l|0}if(c[g>>2]|0)Kb((c[f>>2]|0)+108|0,c[g>>2]|0);if(!(c[h>>2]|0)){
l=c[j>>2]|0;i=k;return l|0}Nb((c[f>>2]|0)+108|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+
4>>2]|0);l=c[j>>2]|0;i=k;return l|0}function Gp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;h=
g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[e>>2]=b;c[f>>2]=d;b=c[f>>2]|0;c[b>>2]=0;c[b+4>
;>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;if((c[(c[e>>2]|0)+72>>2]|0)!=(c[(c[h>>2]|
0)+24>>2]|0)){i=g;return}_d((c[e>>2]|0)+108|0,c[f>>2]|0);i=g;return}function Hp(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=Oa[c[(
c[(c[(c[h>>2]|0)+20>>2]|0)+56>>2]|0)+12>>2]&63](c[(c[h>>2]|0)+60>>
;2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function Ip(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;j=i;i=i+32|0;m=j+16|0;g=j+12|0;l=j+8|0;k=j+4|0;h=j;c[m>>2]=b;c[g>>2]=d;c[l>>2]=e;c[k>
;>2]=f;c[h>>2]=Ep(c[m>>2]|0,c[g>>2]|0,c[l>>2]|0,c[k>>2]|0,3)|0;if(c[h>
;>2]|0){m=c[h>>2]|0;i=j;return m|0}a[(c[g>>2]|0)+76+18>>0]=5;m=c[h>>2]|0;i=j;return
m|0}function Jp(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;j=i;i=i+32|0;m=j+16|0;g=j+12|0;l=j+8|0;k=j+4|0;h=j
;c[m>>2]=b;c[g>>2]=d;c[l>>2]=e;c[k>>2]=f;c[h>>2]=Ep(c[m>>2]|0,c[g>
;>2]|0,c[l>>2]|0,c[k>>2]|0,4)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=j;return m|0}a[(c[g>
;>2]|0)+76+18>>0]=6;m=c[h>>2]|0;i=j;return m|0}function Kp(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[(c[e>>2]|
0)+32>>2]=c[g>>2];a=hc(c[g>>2]|0,4,0,c[f>>2]|0,0,h)|0;c[(c[e>>2]|0)+24>
x3e;2]=a;if((c[h>>2]|0)==0?(a=hc(c[g>>2]|0,4,0,c[f>>2]|0,0,h)|0,c[(c[e>>2]|0)+28>
x3e;2]=a,(c[h>>2]|0)==0):0){c[(c[e>>2]|0)+16>>2]=c[f>>2];c[(c[e>>2]|0)+12>
;>2]=-559038737;c[(c[e>>2]|0)+20>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+8>
;>2]=0;c[(c[e>>2]|0)+4>>2]=0;a=(c[e>>2]|0)+36|0;c[a>>2]=c[1094];c[a+4>>2]=
c[1095];c[a+8>>2]=c[1096];c[a+12>>2]=c[1097]}if(!(c[h>>2]|0)){a=c[h>>2]|0;i=j;return a|0
}Fb(c[g>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;a=c[h>>
2]|0;i=j;return a|0}function Lp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;d=g+4|0;f=g;c[b>>2]=a;c
[e>>2]=c[(c[b>>2]|0)+32>>2];c[f>>2]=c[c[b>>2]>>2];if(!(c[f>>
;2]|0)){i=g;return}a=bc(c[e>>2]|0,c[(c[b>>2]|0)+4>>2]|0,d)|0;c[c[b>>2]>>2]=a;if
(c[d>>2]|0){i=g;return}Ss(c[c[b>>2]>>2]|0,c[f>>2]|0,c[(c[b>>2]|0)+4>>
;2]|0)|0;Mp(c[b>>2]|0,c[f>>2]|0);c[(c[b>>2]|0)+8>>2]=c[(c[b>>2]|0)+4>>
;2];Fb(c[e>>2]|0,c[f>>2]|0);c[f>>2]=0;c[d>>2]=c[d>>2];i=g;return}function Mp(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;h=g+16|0;j=g+12|0;d=g+8|0;f=g+4|0;e=g;c[h>>2]=a;c[j>>
;2]=b;c[d>>2]=(c[c[h>>2]>>2]|0)-(c[j>>2]|0);c[f>>2]=c[(c[h>>2]|0)+24
>>2];c[e>>2]=(c[f>>2]|0)+(c[(c[h>>2]|0)+16>>2]<<2);while(1){if((c[f
x3e;>2]|0)>>>0>=(c[e>>2]|0)>>>0)break;if(c[c[f>>2]>>2]|0){
j=c[f>>2]|0;c[j>>2]=(c[j>>2]|0)+(c[d>>2]|0)}c[f>>2]=(c[f>>2]|0)+4}i=
g;return}function Np(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o
+20|0;j=o+16|0;k=o+12|0;l=o+8|0;n=o+4|0;m=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if((
c[h>>2]|0)>=0?(c[h>>2]|0)<(c[(c[g>>2]|0)+16>>2]|0):0){if((c[k>>2]|0)
x3c;0){c[f>>2]=6;a=c[f>>2]|0;i=o;return a|0}do if(((c[(c[g>>2]|0)+4>>2]|0)+(c[k>>
;2]|0)|0)>>>0>(c[(c[g>>2]|0)+8>>2]|0)>>>0){c[n>>2]=c[(c[g>
x3e;2]|0)+8>>2];a=(c[j>>2]|0)-(c[c[g>>2]>>2]|0)|0;c[m>>2]=a;c[m>>2]=(
c[m>>2]|0)>>>0>=(c[(c[g>>2]|0)+8>>2]|0)>>>0?-1:a;while(1){if((c
[n>>2]|0)>>>0>=((c[(c[g>>2]|0)+4>>2]|0)+(c[k>>2]|0)|0)>>
x3e;0)break;c[n>>2]=(c[n>>2]|0)+(((c[n>>2]|0)>>>2)+1);c[n>>2]=(c[n>
x3e;2]|0)+1023&-1024}c[l>>2]=Op(c[g>>2]|0,c[n>>2]|0)|0;if(c[l>>2]|0){c[f>>
;2]=c[l>>2];a=c[f>>2]|0;i=o;return a|0}else{if((c[m>>2]|0)<0)break;c[j>>2]=(c[c[g
x3e;>2]>>2]|0)+(c[m>>2]|0);break}}while(0);c[(c[(c[g>>2]|0)+24>>2]|0)+(c[h>>
;2]<<2)>>2]=(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+4>>2]|0);c[(c[(c[g>
;>2]|0)+28>>2]|0)+(c[h>>2]<<2)>>2]=c[k>>2];Ss((c[c[g>>2]>
x3e;2]|0)+(c[(c[g>>2]|0)+4>>2]|0)|0,c[j>>2]|0,c[k>>2]|0)|0;a=(c[g>>2]|0)+4|0;c
[a>>2]=(c[a>>2]|0)+(c[k>>2]|0);c[f>>2]=0;a=c[f>>2]|0;i=o;return a|0}c[f>
x3e;2]=6;a=c[f>>2]|0;i=o;return a|0}function Op(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0
;e=k+16|0;f=k+12|0;h=k+8|0;j=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[h>>2]=c[(c[e>>2]|0)+32>
;>2];c[j>>2]=c[c[e>>2]>>2];b=bc(c[h>>2]|0,c[f>>2]|0,g)|0;c[c[e>>
;2]>>2]=b;b=c[j>>2]|0;if(c[g>>2]|0){c[c[e>>2]>>2]=b;c[d>>2]=c[g>
;>2];j=c[d>>2]|0;i=k;return j|0}if(b|0){Ss(c[c[e>>2]>>2]|0,c[j>>2]|0,c[(c[e>
x3e;2]|0)+8>>2]|0)|0;Mp(c[e>>2]|0,c[j>>2]|0);Fb(c[h>>2]|0,c[j>>2]|0);c[j>
x3e;2]=0}c[(c[e>>2]|0)+8>>2]=c[f>>2];c[d>>2]=0;j=c[d>>2]|0;i=k;return j|0}function
Pp(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+32>>
;2];if((c[(c[b>>2]|0)+12>>2]|0)!=-559038737){i=e;return}Fb(c[d>>2]|0,c[c[b>>2]>>
;2]|0);c[c[b>>2]>>2]=0;Fb(c[d>>2]|0,c[(c[b>>2]|0)+24>>2]|0);c[(c[b>>
2]|0)+24>>2]=0;Fb(c[d>>2]|0,c[(c[b>>2]|0)+28>>2]|0);c[(c[b>>2]|0)+28>>
;2]=0;c[(c[b>>2]|0)+12>>2]=0;i=e;return}function Qp(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;j=f+8|0;k=f+4|0;h=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[h>>2]=e;c[(c[
g>>2]|0)+12>>2]=0;c[(c[g>>2]|0)+4>>2]=c[j>>2];c[(c[g>>2]|0)+8>
x3e;2]=c[k>>2];c[c[g>>2]>>2]=c[j>>2];c[(c[g>>2]|0)+16>>2]=c[h>
x3e;2];b=(c[g>>2]|0)+20|0;d=4392;e=b+52|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0
));i=f;return}function Rp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return
}function Sp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Tp(c[d>>2]|0,c[(c[d>>2]|0)+8>>
;2]|0);i=b;return}function Tp(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+8|0;e=h+4|0;g=h;c[f>>2]=a;c[e>
;>2]=b;c[g>>2]=c[c[f>>2]>>2];while(1){if((c[g>>2]|0)>>>0>=(c[e
x3e;>2]|0)>>>0){e=12;break}if((((((d[c[g>>2]>>0]|0|0)!=32?(d[c[g>>2]>>
;0]|0|0)!=13:0)?(d[c[g>>2]>>0]|0|0)!=10:0)?(d[c[g>>2]>>0]|0|0)!=9:0)?(d[c[g>>2
]>>0]|0|0)!=12:0)?d[c[g>>2]>>0]|0|0:0){if((d[c[g>>2]>>0]|0|0)!=37){e=12;break}
Up(g,c[e>>2]|0)}c[g>>2]=(c[g>>2]|0)+1}if((e|0)==12){c[c[f>>2]>>2]=c[g>>
;2];i=h;return}}function Up(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=c[c[e>>2]>>2];while(1){if((c[g>>2]|0)>>>0>=(c[f>
;>2]|0)>>>0)break;if((d[c[g>>2]>>0]|0|0)==13)break;if((d[c[g>>2]>>0]|
0|0)==10)break;c[g>>2]=(c[g>>2]|0)+1}c[c[e>>2]>>2]=c[g>>2];i=h;return}function
Vp(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=c[c[e
x3e;>2]>>2];c[h>>2]=c[(c[e>>2]|0)+8>>2];c[g>>2]=0;Tp(f,c[h>>2]|
0);a:do if((c[f>>2]|0)>>>0<(c[h>>2]|0)>>>0){if((d[c[f>>2]>
x3e;0]|0|0)!=91?(d[c[f>>2]>>0]|0|0)!=93:0){if((d[c[f>>2]>>0]|0|0)==123){c[g>>2
]=Wp(f,c[h>>2]|0)|0;break}if((d[c[f>>2]>>0]|0|0)==40){c[g>>2]=Xp(f,c[h>>2]|0)|
0;break}a=c[f>>2]|0;if((d[c[f>>2]>>0]|0|0)==60){if((a+1|0)>>>0<(c[h>>
;2]|0)>>>0?(d[(c[f>>2]|0)+1>>0]|0|0)==60:0){c[f>>2]=(c[f>>2]|0)+1;c[f>
;>2]=(c[f>>2]|0)+1;break}c[g>>2]=Yp(f,c[h>>2]|0)|0;break}b=c[f>>2]|0;if((d[a>
x3e;0]|0|0)==62){c[f>>2]=b+1;if((c[f>>2]|0)>>>0<(c[h>>2]|0)>>>0
?(d[c[f>>2]>>0]|0|0)==62:0){c[f>>2]=(c[f>>2]|0)+1;break}c[g>>2]=3;break}if((d[
b>>0]|0|0)==47)c[f>>2]=(c[f>>2]|0)+1;while(1){if((c[f>>2]|0)>>>0>=(c
[h>>2]|0)>>>0)break a;if((d[c[f>>2]>>0]|0|0)==32)break a;if((d[c[f>>2]>
;>0]|0|0)==13)break a;if((d[c[f>>2]>>0]|0|0)==10)break a;if((d[c[f>>2]>>0]|0|0)==9)
break a;if((d[c[f>>2]>>0]|0|0)==12)break a;if(!(d[c[f>>2]>>0]|0))break a;if((d[c[f>
x3e;2]>>0]|0|0)==47)break a;if((d[c[f>>2]>>0]|0|0)==40)break a;if((d[c[f>>2]>>
0]|0|0)==41)break a;if((d[c[f>>2]>>0]|0|0)==60)break a;if((d[c[f>>2]>>0]|0|0)==62)break
a;if((d[c[f>>2]>>0]|0|0)==91)break a;if((d[c[f>>2]>>0]|0|0)==93)break a;if((d[c[f>
x3e;2]>>0]|0|0)==123)break a;if((d[c[f>>2]>>0]|0|0)==125)break a;if((d[c[f>>2]>>
;0]|0|0)==37)break a;c[f>>2]=(c[f>>2]|0)+1}}c[f>>2]=(c[f>>2]|0)+1}while(0);if((c[f>
x3e;2]|0)!=(c[c[e>>2]>>2]|0)){h=c[g>>2]|0;g=c[e>>2]|0;g=g+12|0;c[g>>2]=h;g=c[f
>>2]|0;h=c[e>>2]|0;c[h>>2]=g;i=j;return}c[g>>2]=3;h=c[g>>2]|0;g=c[e>>
;2]|0;g=g+12|0;c[g>>2]=h;g=c[f>>2]|0;h=c[e>>2]|0;c[h>>2]=g;i=j;return}function Wp(a,b){a
=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+16|0;f=l+12|0;g=l+8|0;h=l+4|0;j=l;c[e>>2]=a;c[f>>
;2]=b;c[h>>2]=0;c[j>>2]=0;c[g>>2]=c[c[e>>2]>>2];a:while(1){if(!((c[g>>
;2]|0)>>>0<(c[f>>2]|0)>>>0?(c[j>>2]|0)==0:0))break;switch(d[c[g>>
;2]>>0]|0|0){case 123:{c[h>>2]=(c[h>>2]|0)+1;break}case 125:{c[h>>2]=(c[h>>2]|
0)+-1;if(!(c[h>>2]|0)){k=6;break a}break}case 40:{c[j>>2]=Xp(g,c[f>>2]|0)|0;break}case 60:{c[j>
;>2]=Yp(g,c[f>>2]|0)|0;break}case 37:{Up(g,c[f>>2]|0);break}default:{}}c[g>>2]=(c[g>>
;2]|0)+1}if((k|0)==6)c[g>>2]=(c[g>>2]|0)+1;if(!(c[h>>2]|0)){b=c[g>>2]|0;k=c[e>>
;2]|0;c[k>>2]=b;k=c[j>>2]|0;i=l;return k|0}c[j>>2]=3;b=c[g>>2]|0;k=c[e>>2]|0;c
[k>>2]=b;k=c[j>>2]|0;i=l;return k|0}function Xp(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;n=i;i=i
+32|0;k=n+20|0;f=n+16|0;l=n+12|0;h=n+8|0;m=n+4|0;j=n;g=n+24|0;c[k>>2]=b;c[f>>2]=e;c[l>>2]=c[c[k>
;>2]>>2];c[h>>2]=0;c[m>>2]=3;a:while(1){if((c[l>>2]|0)>>>0>=(c[
f>>2]|0)>>>0){f=18;break}a[g>>0]=a[c[l>>2]>>0]|0;c[l>>2]=(c[l
x3e;>2]|0)+1;if((d[g>>0]|0|0)!=92){if((d[g>>0]|0|0)==40){c[h>>2]=(c[h>>2]|0)+1;continue
}if((d[g>>0]|0|0)!=41)continue;c[h>>2]=(c[h>>2]|0)+-1;if(!(c[h>>2]|0)){f=17;break}else continue
}if((c[l>>2]|0)==(c[f>>2]|0)){f=18;break}switch(d[c[l>>2]>>0]|0|0){case 41:case 40:case
92:case 102:case 98:case 116:case 114:case 110:{c[l>>2]=(c[l>>2]|0)+1;continue a}default:{}}c[j>>2
]=0;while(1){if((c[j>>2]|0)>>>0>=3)continue a;if((c[l>>2]|0)>>>0>=(c
[f>>2]|0)>>>0)continue a;if(48>(d[c[l>>2]>>0]|0|0))continue a;if((d[c[l>
x3e;2]>>0]|0|0)>55)continue a;c[l>>2]=(c[l>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1
}}if((f|0)==17){c[m>>2]=0;e=c[l>>2]|0;l=c[k>>2]|0;c[l>>2]=e;m=c[m>>2]|0;i=n;return
m|0}else if((f|0)==18){e=c[l>>2]|0;l=c[k>>2]|0;c[l>>2]=e;m=c[m>>2]|0;i=n;return m|0}return
0}function Yp(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=c[c[e>>2]>>2];c[h>>2]=0;while(1){b=(c[g>>2]|0)+1|0;c[g>
x3e;2]=b;if(b>>>0>=(c[f>>2]|0)>>>0)break;Tp(g,c[f>>2]|0);if((c[g>>
;2]|0)>>>0>=(c[f>>2]|0)>>>0)break;if((d[c[g>>2]>>0]|0|0)>=
48?(d[c[g>>2]>>0]|0|0)<=57:0)continue;if((d[c[g>>2]>>0]|0|0)>=65?(d[c[g>
x3e;2]>>0]|0|0)<=70:0)continue;if((d[c[g>>2]>>0]|0|0)<97)break;if((d[c[g>>2]
x3e;>0]|0|0)>102)break}if((c[g>>2]|0)>>>0<(c[f>>2]|0)>>>0?(d[c[
g>>2]>>0]|0|0)!=62:0){c[h>>2]=3;g=c[g>>2]|0;b=c[e>>2]|0;c[b>>2]=g;b=
c[h>>2]|0;i=j;return b|0}c[g>>2]=(c[g>>2]|0)+1;g=c[g>>2]|0;b=c[e>>2]|0;c[b>
;>2]=g;b=c[h>>2]|0;i=j;return b|0}function Zp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Sp(c[d>
;>2]|0);a=_p(c[d>>2]|0,c[(c[d>>2]|0)+8>>2]|0)|0;i=b;return a|0}function _p(a,b){a=a|0;b=b|0;var
e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[f>>2]=a;c[g>>2]=b;c[h>>
;2]=$p(c[f>>2]|0,c[g>>2]|0,10)|0;c[j>>2]=c[c[f>>2]>>2];if((c[j>>2]|0
)>>>0<(c[g>>2]|0)>>>0?(d[c[j>>2]>>0]|0|0)==35:0){c[c[f>>
;2]>>2]=(c[j>>2]|0)+1;c[e>>2]=$p(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;j=
c[e>>2]|0;i=k;return j|0}c[e>>2]=c[h>>2];j=c[e>>2]|0;i=k;return j|0}function $p(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;q=i;i=i+32|0;g=q+20|0;h=q+16|0;j=q+12|0;k=q+8|0;n=q+4|0;m=q;o=q+25|
0;l=q+24|0;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[n>>2]=c[c[h>>2]>>2];c[m
x3e;>2]=0;a[o>>0]=0;if(((c[k>>2]|0)<2?1:(c[n>>2]|0)==(c[j>>2]|0))|(c[k>
x3e;2]|0)>36){c[g>>2]=0;p=c[g>>2]|0;i=q;return p|0}if(!((d[c[n>>2]>>0]|0)!=45?(d[c[
n>>2]>>0]|0)!=43:0))p=5;if((p|0)==5?(a[o>>0]=(d[c[n>>2]>>0]|0)==45,c[n>
x3e;2]=(c[n>>2]|0)+1,(c[n>>2]|0)==(c[j>>2]|0)):0){c[g>>2]=0;p=c[g>>2]|0;i=q;return
p|0}while(1){if((c[n>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;if((d[c[n>
x3e;2]>>0]|0)==32)break;if((d[c[n>>2]>>0]|0)==13)break;if((d[c[n>>2]>>0]|0)==10
)break;if((d[c[n>>2]>>0]|0)==9)break;if((d[c[n>>2]>>0]|0)==12)break;if(!(d[c[n>>
;2]>>0]|0))break;if((d[c[n>>2]>>0]|0)>=128)break;a[l>>0]=a[11579+(d[c[n>>
2]>>0]&127)>>0]|0;if((a[l>>0]|0)<0)break;if((a[l>>0]|0)>=(c[k>>
2]|0))break;p=_(c[m>>2]|0,c[k>>2]|0)|0;c[m>>2]=p+(a[l>>0]|0);c[n>>2]=(c[n>
;>2]|0)+1}if(a[o>>0]|0)c[m>>2]=0-(c[m>>2]|0);c[c[h>>2]>>2]=c[n>>
;2];c[g>>2]=c[m>>2];p=c[g>>2]|0;i=q;return p|0}function aq(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;Sp(c[f>>2]|0);b=bq(c[f>>2]|0,c[(c[f>>2]|
0)+8>>2]|0,c[e>>2]|0)|0;i=d;return b|0}function bq(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;s=i;i=i+48|0;g=s+28|0;h=s+24|0;j=s+20|0;k=s+16|0;p=s+12|0;o=s+8|0;m=s+4|0;n=s;q=s+33|0;l=s+32|0;c[h>>
;2]=b;c[j>>2]=e;c[k>>2]=f;c[p>>2]=c[c[h>>2]>>2];c[m>>2]=0;c[n>
x3e;2]=1;a[q>>0]=0;if((c[p>>2]|0)==(c[j>>2]|0)){c[g>>2]=0;r=c[g>>2]|0;i=s;return
r|0}if(!((d[c[p>>2]>>0]|0)!=45?(d[c[p>>2]>>0]|0)!=43:0))r=5;if((r|0)==5?(a[q>>
;0]=(d[c[p>>2]>>0]|0)==45,c[p>>2]=(c[p>>2]|0)+1,(c[p>>2]|0)==(c[j>>2
]|0)):0){c[g>>2]=0;r=c[g>>2]|0;i=s;return r|0}if((d[c[p>>2]>>0]|0)!=46)c[o>>2]=(
_p(p,c[j>>2]|0)|0)<<16;else c[o>>2]=0;a:do if((c[p>>2]|0)>>>0<(c[j
x3e;>2]|0)>>>0?(d[c[p>>2]>>0]|0)==46:0){c[p>>2]=(c[p>>2]|0)+1;while(
1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break a;if((d[c[p>>2]>
;>0]|0)==32)break a;if((d[c[p>>2]>>0]|0)==13)break a;if((d[c[p>>2]>>0]|0)==10)break
a;if((d[c[p>>2]>>0]|0)==9)break a;if((d[c[p>>2]>>0]|0)==12)break a;if(!(d[c[p>>
;2]>>0]|0))break a;if((d[c[p>>2]>>0]|0)>=128)break a;a[l>>0]=a[11579+(d[c[p>
x3e;2]>>0]&127)>>0]|0;if((a[l>>0]|0)<0)break a;if((a[l>>0]|0)>=10)break a
;if(!((c[o>>2]|0)==0&(c[k>>2]|0)>0)){if((c[n>>2]|0)<1e7){c[m>>2]=((c[m>
;>2]|0)*10|0)+(a[l>>0]|0);c[n>>2]=(c[n>>2]|0)*10}}else{c[k>>2]=(c[k>>2]|0
)+-1;c[m>>2]=((c[m>>2]|0)*10|0)+(a[l>>0]|0)}c[p>>2]=(c[p>>2]|0)+1}}while(0);do
if(((c[p>>2]|0)+1|0)>>>0<(c[j>>2]|0)>>>0){if((d[c[p>>2]>
x3e;0]|0)!=101?(d[c[p>>2]>>0]|0)!=69:0)break;c[p>>2]=(c[p>>2]|0)+1;r=_p(p,c[j>>
;2]|0)|0;c[k>>2]=(c[k>>2]|0)+r}while(0);while(1){if((c[k>>2]|0)<=0)break;c[o>>2]=(c
[o>>2]|0)*10;c[m>>2]=(c[m>>2]|0)*10;c[k>>2]=(c[k>>2]|0)+-1}while(1){if((c[k>
;>2]|0)>=0)break;c[o>>2]=(c[o>>2]|0)/10|0;c[n>>2]=(c[n>>2]|0)*10;c[k>>
;2]=(c[k>>2]|0)+1}if(c[m>>2]|0){r=Vb(c[m>>2]|0,c[n>>2]|0)|0;c[o>>2]=(c[o>
x3e;2]|0)+r}if(a[q>>0]|0)c[o>>2]=0-(c[o>>2]|0);c[c[h>>2]>>2]=c[p>>2];
c[g>>2]=c[o>>2];r=c[g>>2]|0;i=s;return r|0}function cq(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;q=i;i=i+32|0;j=q+20|0;k=q+16|0;l=q+12|0;m=q+8|0;n=q+24|0;p=q+4|0;o=q;c[j>>2]=b;c[k>
;>2]=e;c[l>>2]=f;c[m>>2]=g;a[n>>0]=h;c[p>>2]=0;Sp(c[j>>2]|0);c[o>>
;2]=c[c[j>>2]>>2];if((c[o>>2]|0)>>>0>=(c[(c[j>>2]|0)+8>>2]|
0)>>>0){g=c[p>>2]|0;i=q;return g|0}do if(a[n>>0]|0){if((d[c[o>>2]>>0]|0)==
60){c[o>>2]=(c[o>>2]|0)+1;break}c[p>>2]=3;g=c[p>>2]|0;i=q;return g|0}while(0);g=dq(o,c[(
c[j>>2]|0)+8>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;c[c[m>>2]>>2]=g;if(a[n>
;>0]|0){if((c[o>>2]|0)>>>0<(c[(c[j>>2]|0)+8>>2]|0)>>>0?(d[
c[o>>2]>>0]|0)!=62:0){c[p>>2]=3;g=c[p>>2]|0;i=q;return g|0}c[o>>2]=(c[o>
x3e;2]|0)+1}c[c[j>>2]>>2]=c[o>>2];g=c[p>>2]|0;i=q;return g|0}function dq(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;r=i;i=i+48|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0;n=r+16|0;p=r+12|0
;q=r+8|0;o=r+4|0;m=r;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[p>>2]=0;c[q>
;>2]=0;c[o>>2]=1;c[l>>2]=c[l>>2]<<1;c[n>>2]=c[c[h>>2]>>
;2];if((c[l>>2]|0)>>>0>((c[j>>2]|0)-(c[n>>2]|0)|0)>>>0)c[l>
;>2]=(c[j>>2]|0)-(c[n>>2]|0);while(1){if((c[p>>2]|0)>>>0>=(c[l>>
;2]|0)>>>0)break;c[m>>2]=d[(c[n>>2]|0)+(c[p>>2]|0)>>0];if(!((c[m>>
;2]|0)==32|(c[m>>2]|0)==13|(c[m>>2]|0)==10|(c[m>>2]|0)==9|(c[m>>2]|0)==12|(c[m>>
;2]|0)==0)){if((c[m>>2]|0)>>>0>=128)break;c[m>>2]=a[11579+(c[m>>2]&127)
x3e;>0];if((c[m>>2]|0)>>>0>=16)break;c[o>>2]=c[o>>2]<<4|c[m>
;>2];if(c[o>>2]&256|0){e=c[o>>2]&255;g=c[q>>2]|0;c[q>>2]=g+1;a[(c[k>
x3e;2]|0)+g>>0]=e;c[o>>2]=1}}c[p>>2]=(c[p>>2]|0)+1}if((c[o>>2]|0)==1){n=c[n>
;>2]|0;o=c[p>>2]|0;o=n+o|0;p=c[h>>2]|0;c[p>>2]=o;q=c[q>>2]|0;i=r;return q|0}g=c[o
x3e;>2]<<4&255;o=c[q>>2]|0;c[q>>2]=o+1;a[(c[k>>2]|0)+o>>0]=g;n=c[n
x3e;>2]|0;o=c[p>>2]|0;o=n+o|0;p=c[h>>2]|0;c[p>>2]=o;q=c[q>>2]|0;i=r;return q|0}function
eq(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;Sp(c[h>>2]|0);a=fq(c[h>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[g>>2]|0,c[f
x3e;>2]|0)|0;i=e;return a|0}function fq(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;t=
i;i=i+32|0;q=t+24|0;k=t+20|0;l=t+16|0;m=t+12|0;s=t+8|0;r=t+4|0;j=t+31|0;o=t+30|0;n=t+28|0;p=t;c[q>>2]=e;c[k>>
;2]=f;c[l>>2]=g;c[m>>2]=h;c[s>>2]=c[c[q>>2]>>2];c[r>>2]=0;a:do if((c
[s>>2]|0)>>>0<(c[k>>2]|0)>>>0){a[j>>0]=a[c[s>>2]>
;>0]|0;a[o>>0]=0;if((d[j>>0]|0)!=91){if((d[j>>0]|0)==123)a[o>>0]=125}else a[o>
x3e;0]=93;if(a[o>>0]|0)c[s>>2]=(c[s>>2]|0)+1;while(1){if((c[s>>2]|0)>>>0
x3e;=(c[k>>2]|0)>>>0)break a;Tp(s,c[k>>2]|0);if((c[s>>2]|0)>>>0>
;=(c[k>>2]|0)>>>0)break a;j=c[s>>2]|0;if((d[c[s>>2]>>0]|0)==(d[o>>
;0]|0)){e=11;break}c[p>>2]=j;if(c[m>>2]|0?(c[r>>2]|0)>=(c[l>>2]|0):0)break a;e=(bq(
s,c[k>>2]|0,0)|0)>>16&65535;if(c[m>>2]|0)j=(c[m>>2]|0)+(c[r>>2]<<
;1)|0;else j=n;b[j>>1]=e;if((c[p>>2]|0)==(c[s>>2]|0)){e=17;break}c[r>>2]=(c[r>>
;2]|0)+1;if(!(a[o>>0]|0))break a}if((e|0)==11){c[s>>2]=j+1;break}else if((e|0)==17){c[r>>2]=-1;break
}}while(0);c[c[q>>2]>>2]=c[s>>2];i=t;return c[r>>2]|0}function gq(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>
x3e;2]=d;c[g>>2]=e;Sp(c[k>>2]|0);d=hq(c[k>>2]|0,c[(c[k>>2]|0)+8>>2]|0,c[j>
;>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=f;return d|0}function hq(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;u=i;i=i+48|0;r=u+32|0;k=u+28|0;l=u+24|0;m=u+20|0;n=u+16|0;t=u+12|0;s=u+8|0;j=u+37
|0;p=u+36|0;o=u+4|0;q=u;c[r>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[t
x3e;>2]=c[c[r>>2]>>2];c[s>>2]=0;a:do if((c[t>>2]|0)>>>0<(c[k>
;>2]|0)>>>0){a[j>>0]=a[c[t>>2]>>0]|0;a[p>>0]=0;if((d[j>>0]|
0)!=91){if((d[j>>0]|0)==123)a[p>>0]=125}else a[p>>0]=93;if(a[p>>0]|0)c[t>>2]=(
c[t>>2]|0)+1;while(1){if((c[t>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break
a;Tp(t,c[k>>2]|0);if((c[t>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break a;
j=c[t>>2]|0;if((d[c[t>>2]>>0]|0)==(d[p>>0]|0)){b=11;break}c[q>>2]=j;if(c[m>
;>2]|0?(c[s>>2]|0)>=(c[l>>2]|0):0)break a;b=bq(t,c[k>>2]|0,c[n>>2]|0)|0;if(c[m
>>2]|0)j=(c[m>>2]|0)+(c[s>>2]<<2)|0;else j=o;c[j>>2]=b;if((c[q>>2]|0
)==(c[t>>2]|0)){b=17;break}c[s>>2]=(c[s>>2]|0)+1;if(!(a[p>>0]|0))break a}if((b|0)==11){c
[t>>2]=j+1;break}else if((b|0)==17){c[s>>2]=-1;break}}while(0);c[c[r>>2]>>2]=c[t>
x3e;2];i=u;return c[s>>2]|0}function iq(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;e=k+16|0;f=k+12|0;g=
k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;c[(c[f>>2]|0)+8>>2]=0;c[c[f>>2]>>
;2]=0;c[(c[f>>2]|0)+4>>2]=0;Sp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];c[j
x3e;>2]=c[(c[e>>2]|0)+8>>2];if((c[g>>2]|0)>>>0>=(c[j>>2]|0)>
;>>0){i=k;return}a:do switch(d[c[g>>2]>>0]|0|0){case 40:{c[(c[f>>2]|0)+8>>2]=2
;c[c[f>>2]>>2]=c[g>>2];if(!(Xp(g,c[j>>2]|0)|0))c[(c[f>>2]|0)+4>>2]=c
[g>>2];break}case 123:{c[(c[f>>2]|0)+8>>2]=3;c[c[f>>2]>>2]=c[g>>2];if
(!(Wp(g,c[j>>2]|0)|0))c[(c[f>>2]|0)+4>>2]=c[g>>2];break}case 91:{c[(c[f>>2]|0)+
8>>2]=3;c[h>>2]=1;b=c[g>>2]|0;c[g>>2]=b+1;c[c[f>>2]>>2]=b;c[c[e>
;>2]>>2]=c[g>>2];Sp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];while(1){if
((c[g>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break a;if(!((c[(c[e>>2]|0)+12
>>2]|0)!=0^1))break a;if((d[c[g>>2]>>0]|0|0)!=91){if((d[c[g>>2]>>0]|0|0)==93?(
c[h>>2]=(c[h>>2]|0)+-1,(c[h>>2]|0)<=0):0)break}else c[h>>2]=(c[h>>2]|0)+1
;c[c[e>>2]>>2]=c[g>>2];Vp(c[e>>2]|0);Sp(c[e>>2]|0);c[g>>2]=c[c[e>
;>2]>>2]}b=(c[g>>2]|0)+1|0;c[g>>2]=b;c[(c[f>>2]|0)+4>>2]=b;break}default:{
c[c[f>>2]>>2]=c[g>>2];c[(c[f>>2]|0)+8>>2]=(d[c[g>>2]>>0]|0
|0)==47?4:1;Vp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];if(!(c[(c[e>>2]|0)+12>>
;2]|0))c[(c[f>>2]|0)+4>>2]=c[g>>2]}}while(0);if(!(c[(c[f>>2]|0)+4>>2]|0)){c[c[
f>>2]>>2]=0;c[(c[f>>2]|0)+8>>2]=0}c[c[e>>2]>>2]=c[g>>2];i=
k;return}function jq(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;q=i;i=i+64|0;f=q+52|0;g=q+
48|0;h=q+44|0;j=q+40|0;m=q+28|0;n=q+24|0;o=q+20|0;k=q+16|0;l=q+12|0;p=q;c[f>>2]=a;c[g>>2]=b;c[h>>2
]=d;c[j>>2]=e;c[c[j>>2]>>2]=-1;iq(c[f>>2]|0,m);if((c[m+8>>2]|0)!=3){i=q;return
}c[n>>2]=c[c[f>>2]>>2];c[o>>2]=c[(c[f>>2]|0)+8>>2];c[k>>2]=
c[g>>2];c[l>>2]=(c[k>>2]|0)+((c[h>>2]|0)*12|0);c[c[f>>2]>>2]=(c[m>
;>2]|0)+1;c[(c[f>>2]|0)+8>>2]=(c[m+4>>2]|0)+-1;while(1){if((c[c[f>>2]>>2]|
0)>>>0>=(c[(c[f>>2]|0)+8>>2]|0)>>>0)break;iq(c[f>>2]|0,p);if(!(
c[p+8>>2]|0))break;if(c[g>>2]|0?(c[k>>2]|0)>>>0<(c[l>>2]|0)>>
;>0:0){b=c[k>>2]|0;c[b>>2]=c[p>>2];c[b+4>>2]=c[p+4>>2];c[b+8>>2
]=c[p+8>>2]}c[k>>2]=(c[k>>2]|0)+12}c[c[j>>2]>>2]=((c[k>>2]|0)-(c[g
x3e;>2]|0)|0)/12|0;c[c[f>>2]>>2]=c[n>>2];c[(c[f>>2]|0)+8>>2]=c[o>>
;2];i=q;return}function kq(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;H=i;i=i+128|0;k=H+112|0;l=H+108|0;m=H+104|0;n=H+100|0;o=H+96|0;D=H+84|0;r=H+80|0;v=H+76|
0;q=H+72|0;t=H+68|0;s=H+64|0;E=H+52|0;x=H+48|0;y=H+44|0;z=H+40|0;F=H+36|0;B=H+32|0;w=H+28|0;u=H+24|0;C=H+8|0;p=H+4|0;A=H;c[k>
;>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;iq(c[k>>2]|0,D);a:do if(c[
D+8>>2]|0){c[q>>2]=1;c[t>>2]=0;c[r>>2]=c[D>>2];c[v>>2]=c[D+4>
x3e;2];if((c[(c[l>>2]|0)+8>>2]|0)==7){c[x>>2]=c[c[k>>2]>>2];c[y>>2]=
c[(c[k>>2]|0)+8>>2];c[c[k>>2]>>2]=(c[D>>2]|0)+1;c[(c[k>>2]|0)+8>
;>2]=(c[D+4>>2]|0)+-1;iq(c[k>>2]|0,E);c[c[k>>2]>>2]=c[x>>2];c[(c[k>
x3e;2]|0)+8>>2]=c[y>>2];if((c[E+8>>2]|0)==3)G=5}else if((c[D+8>>2]|0)==3)G=5;if((G|0)==5
){if(!(c[n>>2]|0))break;c[q>>2]=c[n>>2];c[t>>2]=1;c[r>>2]=(c[r>>2]|0
)+1;c[v>>2]=(c[v>>2]|0)+-1}b:while(1){if((c[q>>2]|0)>>>0<=0){G=32;break}c[z>
;>2]=(c[(c[m>>2]|0)+(c[t>>2]<<2)>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0
);Tp(r,c[v>>2]|0);switch(c[(c[l>>2]|0)+8>>2]|0){case 1:{c[F>>2]=lq(r,c[v>>2]|0
)|0;G=13;break}case 3:{c[F>>2]=bq(r,c[v>>2]|0,0)|0;G=13;break}case 4:{c[F>>2]=bq(r,c[v>>
2]|0,3)|0;G=13;break}case 2:{c[F>>2]=_p(r,c[v>>2]|0)|0;G=13;break}case 6:case 5:{c[w>>2]=c[(c[k>
;>2]|0)+16>>2];c[u>>2]=(c[v>>2]|0)-(c[r>>2]|0);if((c[r>>2]|0)>>
x3e;0<(c[v>>2]|0)>>>0){if((c[D+8>>2]|0)==4){c[u>>2]=(c[u>>2]|0)+-1;c
[r>>2]=(c[r>>2]|0)+1}else{if((c[D+8>>2]|0)!=2){G=23;break b}c[r>>2]=(c[r>>2]|0
)+1;c[u>>2]=(c[u>>2]|0)-2}if(c[c[z>>2]>>2]|0){Fb(c[w>>2]|0,c[c[z>>2]
x3e;>2]|0);c[c[z>>2]>>2]=0;c[c[z>>2]>>2]=0}c[B>>2]=bc(c[w>>2]|0
,(c[u>>2]|0)+1|0,s)|0;if(c[s>>2]|0){G=33;break b}Ss(c[B>>2]|0,c[r>>2]|0,c[u>>2
]|0)|0;a[(c[B>>2]|0)+(c[u>>2]|0)>>0]=0;c[c[z>>2]>>2]=c[B>>2]}break}case
7:{c[p>>2]=c[z>>2];c[A>>2]=hq(r,c[v>>2]|0,4,C,0)|0;if((c[A>>2]|0)<0){G=29
;break b}E=Tb(c[C>>2]|0)|0;c[c[p>>2]>>2]=E;E=Tb(c[C+4>>2]|0)|0;c[(c[p>>2]|0)+4
>>2]=E;E=Tb(c[C+8>>2]|0)|0;c[(c[p>>2]|0)+8>>2]=E;E=Tb(c[C+12>>2]|0)|0;c[(c[p
x3e;>2]|0)+12>>2]=E;break}default:break a}c:do if((G|0)==13){G=0;switch(d[(c[l>>2]|0)+20>>0]|
0|0){case 1:{a[c[z>>2]>>0]=c[F>>2];break c}case 2:{b[c[z>>2]>>1]=c[F>>
;2];break c}case 4:{c[c[z>>2]>>2]=c[F>>2];break c}default:{c[c[z>>2]>>2]=c[F
x3e;>2];break c}}}while(0);c[q>>2]=(c[q>>2]|0)+-1;c[t>>2]=(c[t>>2]|0)+1}if((G|0)==23
){c[s>>2]=3;G=c[s>>2]|0;i=H;return G|0}else if((G|0)==29){c[s>>2]=3;G=c[s>>2]|0;i=H;return
G|0}else if((G|0)==32){c[o>>2]=c[o>>2];c[s>>2]=0;G=c[s>>2]|0;i=H;return G|0}else if((G|
0)==33){G=c[s>>2]|0;i=H;return G|0}}while(0);c[s>>2]=3;G=c[s>>2]|0;i=H;return G|0}function lq(b,e){
b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;f=l+8|0;g=l+4|0;h=l;j=l+12|0;c[f>>2]=b;c[g>>2]=e;c[h>
;>2]=c[c[f>>2]>>2];a[j>>0]=0;if((((((c[h>>2]|0)+3|0)>>>0<(c[g
x3e;>2]|0)>>>0?(d[c[h>>2]>>0]|0|0)==116:0)?(d[(c[h>>2]|0)+1>>0]|0|0)==
114:0)?(d[(c[h>>2]|0)+2>>0]|0|0)==117:0)?(d[(c[h>>2]|0)+3>>0]|0|0)==101:0){a[j>>
;0]=1;c[h>>2]=(c[h>>2]|0)+5}else k=7;if(((((((k|0)==7?((c[h>>2]|0)+4|0)>>>0<(c
[g>>2]|0)>>>0:0)?(d[c[h>>2]>>0]|0|0)==102:0)?(d[(c[h>>2]|0)+1>>
0]|0|0)==97:0)?(d[(c[h>>2]|0)+2>>0]|0|0)==108:0)?(d[(c[h>>2]|0)+3>>0]|0|0)==115:0)?(d[(c
[h>>2]|0)+4>>0]|0|0)==101:0){a[j>>0]=0;c[h>>2]=(c[h>>2]|0)+6}c[c[f>>
2]>>2]=c[h>>2];i=l;return d[j>>0]|0|0}function mq(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;v=i;i=i+464|0;j=v+456|0;k=v+452|0;l=v+448|0;m=v+444|0;n=v+440|0;o=v+56|0;u=v+52
|0;r=v+48|0;p=v+44|0;s=v+40|0;t=v+36|0;q=v;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n
x3e;>2]=h;c[p>>2]=0;e=q;g=c[k>>2]|0;f=e+36|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while
((e|0)<(f|0));c[q+8>>2]=2;if(!((c[(c[k>>2]|0)+8>>2]|0)!=9?(c[(c[k>>2]|0)+8>>
;2]|0)!=7:0))c[q+8>>2]=3;jq(c[j>>2]|0,o,32,r);if((c[r>>2]|0)<0){c[p>>2]=162;u=c[p
x3e;>2]|0;i=v;return u|0}if((c[r>>2]|0)>>>0>(c[(c[k>>2]|0)+24>>2]|0)>
;>>0)c[r>>2]=c[(c[k>>2]|0)+24>>2];c[s>>2]=c[c[j>>2]>>2];c[
t>>2]=c[(c[j>>2]|0)+8>>2];if((c[(c[k>>2]|0)+8>>2]|0)!=7?c[(c[k>>2]|0
)+28>>2]|0:0)a[(c[c[l>>2]>>2]|0)+(c[(c[k>>2]|0)+28>>2]|0)>>0]=c[r>
;>2];c[u>>2]=o;while(1){if((c[r>>2]|0)<=0)break;c[c[j>>2]>>2]=c[c[u>>
;2]>>2];c[(c[j>>2]|0)+8>>2]=c[(c[u>>2]|0)+4>>2];kq(c[j>>2]|0,q,c[l
x3e;>2]|0,c[m>>2]|0,0)|0;o=q+16|0;c[o>>2]=(c[o>>2]|0)+(d[q+20>>0]|0);c[r>>
;2]=(c[r>>2]|0)+-1;c[u>>2]=(c[u>>2]|0)+12}c[n>>2]=c[n>>2];c[c[j>>2]
x3e;>2]=c[s>>2];c[(c[j>>2]|0)+8>>2]=c[t>>2];u=c[p>>2]|0;i=v;return u|0}function
nq(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;h=n+16|0;o=n+12|0;j=n+8|0;k=n+4|0;l=n+
20|0;m=n;c[h>>2]=b;c[o>>2]=d;c[j>>2]=e;c[k>>2]=f;a[l>>0]=g;c[(c[h>>2
]|0)+64>>2]=0;a[(c[h>>2]|0)+68>>0]=1;c[(c[h>>2]|0)+4>>2]=c[o>>2];c[(
c[h>>2]|0)+8>>2]=c[k>>2];c[c[h>>2]>>2]=c[(c[o>>2]|0)+100>>
2];if(c[k>>2]|0?(c[m>>2]=c[c[(c[k>>2]|0)+156>>2]>>2],c[(c[h>>2]|0)+12
>>2]=c[m>>2],c[(c[h>>2]|0)+16>>2]=(c[m>>2]|0)+20,c[(c[h>>2]|0)+20>
;>2]=(c[m>>2]|0)+56,dc(c[m>>2]|0),c[(c[h>>2]|0)+76>>2]=c[(c[j>>2]|0)+40
x3e;>2],c[(c[h>>2]|0)+72>>2]=0,a[l>>0]|0):0)c[(c[h>>2]|0)+72>>2]=c[(c[(c[
k>>2]|0)+156>>2]|0)+36>>2];c[(c[h>>2]|0)+24>>2]=0;c[(c[h>>2]|0)+28
x3e;>2]=0;c[(c[h>>2]|0)+32>>2]=0;c[(c[h>>2]|0)+32+4>>2]=0;c[(c[h>>2]|0)+40
>>2]=0;c[(c[h>>2]|0)+40+4>>2]=0;o=(c[h>>2]|0)+80|0;c[o>>2]=c[1111];c[o+4>
x3e;2]=c[1112];c[o+8>>2]=c[1113];c[o+12>>2]=c[1114];c[o+16>>2]=c[1115];c[o+20>>2]=c[1116
];c[o+24>>2]=c[1117];c[o+28>>2]=c[1118];i=n;return}function oq(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0
;d=e;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+8>>2];if(!(c[d>>2]|0)){i=e;return}d=(c[d
x3e;>2]|0)+108|0;a=c[(c[b>>2]|0)+16>>2]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4
>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>
;>2];i=e;return}function pq(a,d){a=a|0;d=d|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]=
d;if(!(c[f>>2]|0)){d=0;i=g;return d|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20+2>>1]|0)+(b[(c[(
c[e>>2]|0)+12>>2]|0)+56+2>>1]|0)+(c[f>>2]|0)|0)>>>0<=(c[(c[(c[e>
;>2]|0)+12>>2]|0)+4>>2]|0)>>>0){d=0;i=g;return d|0}d=kc(c[(c[e>>2]|0)+12>
x3e;2]|0,c[f>>2]|0,0)|0;i=g;return d|0}function qq(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;p=i;i=i+32|0;q=p+20|0;j=p+16|0;k=p+12|0;l=p+24|0;n=p+8|0;o=p+4|0;m=p;c[q>>2]=e;c[j>>2]=f;c[k>>2]=
g;a[l>>0]=h;c[n>>2]=c[(c[q>>2]|0)+20>>2];if(!(a[(c[q>>2]|0)+68>>0]|0
)){q=c[n>>2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}c[o>
;>2]=(c[(c[n>>2]|0)+4>>2]|0)+(b[(c[n>>2]|0)+2>>1]<<3);c[m>>2]=(
c[(c[n>>2]|0)+8>>2]|0)+(b[(c[n>>2]|0)+2>>1]|0);q=(Tb(c[j>>2]|0)|0)>>
16;c[c[o>>2]>>2]=q;q=(Tb(c[k>>2]|0)|0)>>16;c[(c[o>>2]|0)+4>>2]=q;a[c
[m>>2]>>0]=d[l>>0]|0?1:2;q=c[n>>2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16
x3e;>16;b[q>>1]=g;i=p;return}function rq(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;e=j+12|0;f
=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=pq(c[e>>2]|0,1)|0;if(
c[h>>2]|0){d=c[h>>2]|0;i=j;return d|0}qq(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0,1);d=c[
h>>2]|0;i=j;return d|0}function sq(d){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[e>
;>2]=d;c[h>>2]=c[(c[e>>2]|0)+20>>2];if(!(c[h>>2]|0)){c[f>>2]=3;h=c[f>
;>2]|0;i=j;return h|0}if(!(a[(c[e>>2]|0)+68>>0]|0)){h=c[h>>2]|0;b[h>>1]=(b[h>
x3e;1]|0)+1<<16>>16;c[f>>2]=0;h=c[f>>2]|0;i=j;return h|0}if(((b[(c[(c[e>>2]|0)+
12>>2]|0)+20>>1]|0)+(b[(c[(c[e>>2]|0)+12>>2]|0)+56>>1]|0)+1|0)>>>
;0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+8>>2]|0)>>>0)e=0;else e=kc(c[(c[e>>2
]|0)+12>>2]|0,0,1)|0;c[g>>2]=e;if(!(c[g>>2]|0)){if((b[c[h>>2]>>1]|0)>0)b[(
c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>>1]|0)-1<<1)>>1]=(b[(c[h>
x3e;2]|0)+2>>1]|0)-1;h=c[h>>2]|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}c[f
x3e;>2]=c[g>>2];h=c[f>>2]|0;i=j;return h|0}function tq(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=3;if((c
[(c[e>>2]|0)+64>>2]|0)==3){c[h>>2]=0;d=c[h>>2]|0;i=j;return d|0}c[(c[e>>2]|0)+
64>>2]=3;c[h>>2]=sq(c[e>>2]|0)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=j;return d|0}c[h
x3e;>2]=rq(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;d=c[h>>2]|0;i=j;return d|0}function uq(
a){a=a|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;l=k+20|0;j=k+16|0;h=k+12|0;f=k+8|0;g=k+4|0;e=k;c[l>>2]=a;c[j>
;>2]=c[(c[l>>2]|0)+20>>2];if(!(c[j>>2]|0)){i=k;return}if((b[c[j>>2]>>1]|0
)<=1)a=0;else a=(b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>1]|0)-2<<1)>
;>1]|0)+1|0;c[h>>2]=a;if((((b[(c[j>>2]|0)+2>>1]|0)>1?(c[f>>2]=(c[(c[j>>
;2]|0)+4>>2]|0)+(c[h>>2]<<3),c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(b[(c[j
>>2]|0)+2>>1]<<3)+-8,c[e>>2]=(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>
x3e;2]|0)+2>>1]|0)+-1,(c[c[f>>2]>>2]|0)==(c[c[g>>2]>>2]|0)):0)?(c[(c[f>
x3e;2]|0)+4>>2]|0)==(c[(c[g>>2]|0)+4>>2]|0):0)?(d[c[e>>2]>>0]|0)==1:0){l=(c[j
x3e;>2]|0)+2|0;b[l>>1]=(b[l>>1]|0)+-1<<16>>16}if((b[c[j>>2]>>1]|
0)<=0){i=k;return}a=c[j>>2]|0;if((c[h>>2]|0)==((b[(c[j>>2]|0)+2>>1]|0)-1|0)){b[a>
;>1]=(b[a>>1]|0)+-1<<16>>16;l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>>1]|
0)+-1<<16>>16;i=k;return}else{b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>
;1]|0)-1<<1)>>1]=(b[a+2>>1]|0)-1;i=k;return}}function vq(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;x=i;i=i+64|0;m=x+44|0;n=x+40|0;o=x+36
|0;p=x+32|0;q=x+28|0;r=x+24|0;s=x+20|0;t=x+48|0;u=x+16|0;v=x+12|0;w=x+8|0;z=x+4|0;y=x;c[n>>2]=b;c[o>>2]=d;c[
p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=h;a[t>>0]=j;c[u>>2]=k;c[v>
x3e;2]=l;Ns(c[n>>2]|0,0,1500)|0;c[w>>2]=0;c[z>>2]=c[(c[o>>2]|0)+96>>2];c[y>
;>2]=Vd(c[z>>2]|0,71003)|0;c[w>>2]=c[y>>2];if(c[w>>2]|0){c[(c[n>>2]|0)+1348
>>2]=c[w>>2];nq(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,a[t>>
;0]|0);c[(c[n>>2]|0)+1352>>2]=c[(c[o>>2]|0)+16>>2];c[(c[n>>2]|0)+1356>>
;2]=c[r>>2];c[(c[n>>2]|0)+1468>>2]=c[u>>2];c[(c[n>>2]|0)+1464>>2]=c[
s>>2];c[(c[n>>2]|0)+1472>>2]=c[v>>2];z=(c[n>>2]|0)+1476|0;c[z>>2]=c[
1119];c[z+4>>2]=c[1120];c[z+8>>2]=c[1121];c[m>>2]=0;z=c[m>>2]|0;i=x;return z|0}else{c[m
x3e;>2]=7;z=c[m>>2]|0;i=x;return z|0}return 0}function wq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=
a;oq(c[d>>2]|0);i=b;return}function xq(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;Y=i;i=
i+176|0;k=Y+156|0;l=Y+152|0;h=Y+148|0;j=Y+144|0;v=Y+140|0;W=Y+136|0;C=Y+132|0;F=Y+128|0;s=Y+124|0;U=Y+120|0;V=Y+116|0;L=Y+112|0;
M=Y+108|0;D=Y+104|0;R=Y+100|0;E=Y+160|0;N=Y+96|0;w=Y+92|0;Q=Y+88|0;K=Y+84|0;S=Y+80|0;O=Y+76|0;n=Y+72|0;x=Y+68|0;o=Y+64|0;J=Y+60|
0;H=Y+56|0;G=Y+52|0;t=Y+48|0;T=Y+44|0;P=Y+40|0;y=Y+36|0;p=Y+32|0;z=Y+28|0;q=Y+24|0;A=Y+20|0;r=Y+16|0;m=Y+12|0;I=Y+8|0;B=Y+4|0;u=
Y;c[l>>2]=e;c[h>>2]=f;c[j>>2]=g;c[s>>2]=c[l>>2];c[D>>2]=0;c[R>
x3e;2]=0;c[N>>2]=N^l^h;e=(c[N>>2]^c[N>>2]>>10^c[N>>2]>>20)&65535
;c[N>>2]=e;c[N>>2]=(c[N>>2]|0)==0?29572:e;c[(c[l>>2]|0)+1136>>2]=(c[l>>
;2]|0)+112;c[(c[l>>2]|0)+1344>>2]=(c[l>>2]|0)+1140;c[W>>2]=(c[l>>2]|0)+1140;c[(
c[s>>2]|0)+64>>2]=0;c[w>>2]=c[(c[s>>2]|0)+72>>2];if((c[(c[l>>2]|0)+1492
>>2]|0)>>>0>0)Ns(c[(c[l>>2]|0)+1488>>2]|0,0,c[(c[l>>2]|0)+1492>
x3e;2]<<2|0)|0;c[(c[W>>2]|0)+4>>2]=c[h>>2];e=(c[h>>2]|0)+(c[j>>2]|0)|
0;c[(c[W>>2]|0)+8>>2]=e;c[F>>2]=e;e=c[(c[W>>2]|0)+4>>2]|0;c[c[W>>2]
x3e;>2]=e;c[C>>2]=e;c[v>>2]=0;e=c[(c[s>>2]|0)+24>>2]|0;c[L>>2]=e;c[U>
;>2]=e;e=c[(c[s>>2]|0)+28>>2]|0;c[M>>2]=e;c[V>>2]=e;if(c[w>>2]|0)Va[c[(c[
w>>2]|0)+4>>2]&63](c[c[w>>2]>>2]|0);a[E>>0]=0;a:while(1){if((c[C>>
;2]|0)>>>0>=(c[F>>2]|0)>>>0){X=186;break}c[Q>>2]=c[(c[l>>2]|0)+
1136>>2];c[K>>2]=0;c[S>>2]=0;e=c[C>>2]|0;c[C>>2]=e+1;b:do switch(d[e>>
;0]|0){case 1:{c[K>>2]=16;break}case 3:{c[K>>2]=18;break}case 4:{c[K>>2]=14;break}case 5:{c[K>
;>2]=9;break}case 6:{c[K>>2]=6;break}case 7:{c[K>>2]=13;break}case 8:{c[K>>2]=11;break}case 9
:{c[K>>2]=5;break}case 10:{c[K>>2]=22;break}case 11:{c[K>>2]=24;break}case 13:{c[K>>2]=2
;break}case 14:{c[K>>2]=1;break}case 15:{c[K>>2]=26;break}case 21:{c[K>>2]=10;break}case 22:{c[K
x3e;>2]=7;break}case 30:{c[K>>2]=12;break}case 31:{c[K>>2]=8;break}case 12:{if((c[C>>2]|0)>
;>>0>(c[F>>2]|0)>>>0)break a;e=c[C>>2]|0;c[C>>2]=e+1;switch(d[e>
;>0]|0){case 0:{c[K>>2]=15;break b}case 1:{c[K>>2]=19;break b}case 2:{c[K>>2]=17;break b}case
6:{c[K>>2]=3;break b}case 7:{c[K>>2]=4;break b}case 12:{c[K>>2]=20;break b}case 16:{c[K>>
;2]=21;break b}case 17:{c[K>>2]=23;break b}case 33:{c[K>>2]=25;break b}default:break a}}case 255:{if(((c[C
x3e;>2]|0)+4|0)>>>0>(c[F>>2]|0)>>>0)break a;c[S>>2]=d[c[C>>
;2]>>0]<<24|d[(c[C>>2]|0)+1>>0]<<16|d[(c[C>>2]|0)+2>>0]<
;<8|d[(c[C>>2]|0)+3>>0];c[C>>2]=(c[C>>2]|0)+4;h=(a[E>>0]|0)!=0;if((c[S>
;>2]|0)>32e3|(c[S>>2]|0)<-32e3){if(h)break b;a[E>>0]=1;break b}else{if(h)break b;c[S>>
;2]=c[S>>2]<<16;break b}}default:{if((d[(c[C>>2]|0)+-1>>0]|0)<32)break a;h=c[C>
;>2]|0;do if((d[(c[C>>2]|0)+-1>>0]|0)>=247){e=h+1|0;c[C>>2]=e;if(e>>>0>
;(c[F>>2]|0)>>>0)break a;h=d[(c[C>>2]|0)+-2>>0]|0;if((d[(c[C>>2]|0)+-2>
;>0]|0)<251){c[S>>2]=(h-247<<8)+(d[(c[C>>2]|0)+-1>>0]|0)+108;break}else{c[S>
;>2]=0-((h-251<<8)+(d[(c[C>>2]|0)+-1>>0]|0)+108);break}}else c[S>>2]=(d[h+-1>
x3e;0]|0)-139;while(0);if(!(a[E>>0]|0))c[S>>2]=c[S>>2]<<16}}while(0);c:do if((c[R>
x3e;2]|0)>0){switch(c[K>>2]|0){case 23:case 0:case 24:case 22:break c;default:{}}c[R>>2]=0}while(0);if(!((
d[E>>0]|0)==0|(c[K>>2]|0)==0|(c[K>>2]|0)==20))a[E>>0]=0;if(!(c[K>>2]|0)){if((((
c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)>=256)break;g=c[S>>2]|0;e=c[Q>>2]|0;c[Q>
x3e;2]=e+4;c[e>>2]=g;c[(c[l>>2]|0)+1136>>2]=c[Q>>2];continue}if((c[K>>2]|0)==21
){if((((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)<2){X=188;break}c[Q>>2]=(c[Q>>2]|0)+-
8;c[O>>2]=c[(c[Q>>2]|0)+4>>2]>>16;c[n>>2]=c[c[Q>>2]>>2]>
;>16;if((c[n>>2]|0)>(((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)){X=188;break}c[Q>>
;2]=(c[Q>>2]|0)+(0-(c[n>>2]|0)<<2);c[D>>2]=0;c[R>>2]=0;do switch(c[O>>
;2]|0){case 1:{if(c[n>>2]|0)break a;c[(c[l>>2]|0)+1400>>2]=1;c[(c[l>>2]|0)+1404>>
;2]=0;e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}e=pq(c[s>
;>2]|0,6)|0;c[v>>2]=e;if(e|0){X=186;break a}break}case 2:{if(c[n>>2]|0)break a;g=(c[l>>2]|0)+
1404|0;e=c[g>>2]|0;c[g>>2]=e+1;c[x>>2]=e;if((c[x>>2]|0)>0&(c[x>>2]|0
)<7)qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,((c[x>>2]|0)==3?1:(c[x>>2]|0)==6)&
;1);break}case 0:{if((c[n>>2]|0)!=3)break a;if(!(c[(c[l>>2]|0)+1400>>2]|0))break a;if((c[(c[l>
;>2]|0)+1404>>2]|0)!=7)break a;c[c[Q>>2]>>2]=c[U>>2];c[(c[Q>>2]|0)+4>
;>2]=c[V>>2];c[D>>2]=2;break}case 3:{if((c[n>>2]|0)!=1)break a;c[D>>2]=1;if(c[w>
;>2]|0)Ra[c[(c[w>>2]|0)+20>>2]&7](c[c[w>>2]>>2]|0,b[(c[(c[s>>2]|0)+20
>>2]|0)+2>>1]|0);break}case 13:case 12:{c[Q>>2]=(c[l>>2]|0)+112;break}case 18:case 17:case
16:case 15:case 14:{c[o>>2]=c[(c[l>>2]|0)+1464>>2];if(!(c[o>>2]|0))break a;c[J>>
;2]=(c[O>>2]|0)-13+((c[O>>2]|0)==18&1);if((c[n>>2]|0)!=(_(c[J>>2]|0,c[c[o>>
;2]>>2]|0)|0))break a;c[t>>2]=(c[Q>>2]|0)+(c[J>>2]<<2);c[T>>2]=c[Q
x3e;>2];c[H>>2]=0;while(1){if((c[H>>2]|0)>>>0>=(c[J>>2]|0)>>>
;0)break;c[P>>2]=c[c[T>>2]>>2];c[G>>2]=1;while(1){if((c[G>>2]|0)>>
x3e;0>=(c[c[o>>2]>>2]|0)>>>0)break;e=c[t>>2]|0;c[t>>2]=e+4;e=Mb(c[e
x3e;>2]|0,c[(c[(c[o>>2]|0)+136>>2]|0)+(c[G>>2]<<2)>>2]|0)|0;c[P>>
;2]=(c[P>>2]|0)+e;c[G>>2]=(c[G>>2]|0)+1}g=c[P>>2]|0;e=c[T>>2]|0;c[T>>
;2]=e+4;c[e>>2]=g;c[H>>2]=(c[H>>2]|0)+1}c[D>>2]=c[J>>2];break}case 19:{c[p>
;>2]=c[(c[l>>2]|0)+1464>>2];if((c[n>>2]|0)!=1|(c[p>>2]|0)==0)break a;c[y>>
;2]=c[c[Q>>2]>>2]>>16;if((c[y>>2]|0)<0)break a;if(((c[y>>2]|0)+(c[c[p>
;>2]>>2]|0)|0)>>>0>(c[(c[l>>2]|0)+1492>>2]|0)>>>0)break a;
Ss((c[(c[l>>2]|0)+1488>>2]|0)+(c[y>>2]<<2)|0,c[(c[p>>2]|0)+136>>2]|0
,c[c[p>>2]>>2]<<2|0)|0;break}case 20:{if((c[n>>2]|0)!=2)break a;e=c[Q>>2]|0;c[
e>>2]=(c[e>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);c[D>>2]=1;break}case 21:{if((c[n>
;>2]|0)!=2)break a;e=c[Q>>2]|0;c[e>>2]=(c[e>>2]|0)-(c[(c[Q>>2]|0)+4>>2]|0
);c[D>>2]=1;break}case 22:{if((c[n>>2]|0)!=2)break a;e=Mb(c[c[Q>>2]>>2]|0,c[(c[Q>
x3e;2]|0)+4>>2]|0)|0;c[c[Q>>2]>>2]=e;c[D>>2]=1;break}case 23:{if((c[n>>2]|0)!=
2)break a;if(!(c[(c[Q>>2]|0)+4>>2]|0))break a;e=Vb(c[c[Q>>2]>>2]|0,c[(c[Q>>2]|
0)+4>>2]|0)|0;c[c[Q>>2]>>2]=e;c[D>>2]=1;break}case 24:{c[q>>2]=c[(c[l>>
;2]|0)+1464>>2];if((c[n>>2]|0)!=2|(c[q>>2]|0)==0)break a;c[z>>2]=c[(c[Q>>2]|0)+
4>>2]>>16;if((c[z>>2]|0)<0)break a;if((c[z>>2]|0)>>>0>=(c[(c[l
x3e;>2]|0)+1492>>2]|0)>>>0)break a;c[(c[(c[l>>2]|0)+1488>>2]|0)+(c[z>>
;2]<<2)>>2]=c[c[Q>>2]>>2];break}case 25:{c[r>>2]=c[(c[l>>2]|0)+1464
x3e;>2];if((c[n>>2]|0)!=1|(c[r>>2]|0)==0)break a;c[A>>2]=c[c[Q>>2]>>2]>
;>16;if((c[A>>2]|0)<0)break a;if((c[A>>2]|0)>>>0>=(c[(c[l>>2]|0)+1492
>>2]|0)>>>0)break a;c[c[Q>>2]>>2]=c[(c[(c[l>>2]|0)+1488>>2]|0)+(
c[A>>2]<<2)>>2];c[D>>2]=1;break}case 27:{if((c[n>>2]|0)!=4)break a;if((c[(c[Q
x3e;>2]|0)+8>>2]|0)>(c[(c[Q>>2]|0)+12>>2]|0))c[c[Q>>2]>>2]=c[(c[Q>
;>2]|0)+4>>2];c[D>>2]=1;break}case 28:{if(c[n>>2]|0)break a;c[m>>2]=c[N>>
2];if((c[m>>2]|0)>=32768)c[m>>2]=(c[m>>2]|0)+1;c[c[Q>>2]>>2]=c[m>>
;2];c[N>>2]=Mb(c[N>>2]|0,65536-(c[N>>2]|0)|0)|0;if(!(c[N>>2]|0))c[N>>2]=(c[N
x3e;>2]|0)+10355;c[D>>2]=1;break}default:c[R>>2]=c[n>>2]}while(0);c[Q>>2]=(c[Q>
;>2]|0)+(c[D>>2]<<2);c[(c[l>>2]|0)+1136>>2]=c[Q>>2];continue}c[I>>
;2]=c[4488+(c[K>>2]<<2)>>2];if((((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)<(
c[I>>2]|0)){X=188;break}c[Q>>2]=(c[Q>>2]|0)+(0-(c[I>>2]|0)<<2);d:do switch(c[K
>>2]|0){case 1:{X=121;break a}case 3:{X=127;break a}case 2:{c[(c[s>>2]|0)+64>>2]=1;e=(c[s>>
;2]|0)+32|0;c[e>>2]=(c[e>>2]|0)+(c[c[Q>>2]>>2]|0);c[(c[s>>2]|0)+40>>
2]=c[(c[Q>>2]|0)+4>>2];c[(c[s>>2]|0)+40+4>>2]=0;e=(c[(c[s>>2]|0)+24>>
;2]|0)+(c[c[Q>>2]>>2]|0)|0;c[U>>2]=e;c[L>>2]=e;e=c[(c[s>>2]|0)+28>>2
]|0;c[V>>2]=e;c[M>>2]=e;c[M>>2]=c[M>>2];if(a[(c[s>>2]|0)+70>>0]|0){X
=126;break a}break}case 4:{c[(c[s>>2]|0)+64>>2]=1;e=(c[s>>2]|0)+32|0;c[e>>2]=(c[e>
x3e;2]|0)+(c[c[Q>>2]>>2]|0);e=(c[s>>2]|0)+32+4|0;c[e>>2]=(c[e>>2]|0)+(c[(c[Q
x3e;>2]|0)+4>>2]|0);c[(c[s>>2]|0)+40>>2]=c[(c[Q>>2]|0)+8>>2];c[(c[s>
x3e;2]|0)+40+4>>2]=c[(c[Q>>2]|0)+12>>2];c[U>>2]=(c[(c[s>>2]|0)+24>>2
]|0)+(c[c[Q>>2]>>2]|0);c[V>>2]=(c[(c[s>>2]|0)+28>>2]|0)+(c[(c[Q>>2]|
0)+4>>2]|0);if(a[(c[s>>2]|0)+70>>0]|0){X=129;break a}break}case 5:{if(!((c[(c[s>>2]|0)+64
>>2]|0)!=3?(c[(c[s>>2]|0)+64>>2]|0)!=2:0))uq(c[s>>2]|0);c[(c[s>>2]|0)+64>
x3e;2]=1;break}case 6:{X=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=X;if(X|0){X=186;break
a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);X=144;break}case 7:{c[U>>2]=(c[U>
;>2]|0)+(c[c[Q>>2]>>2]|0);if(!(c[(c[l>>2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|
0)+64>>2]|0))break a;c[(c[s>>2]|0)+64>>2]=2}break}case 8:{e=tq(c[s>>2]|0,c[U>>
2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){
X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);qq(c[s>>2]|0,c[U>>
;2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);c[V>>
2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2
]|0,0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+12>>2]|0);qq(c[s>>2]|0,c[U>>
;2]|0,c[V>>2]|0,1);break}case 9:{X=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=
X;if(X|0){X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);c[V>>2]=(c[V>
;>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);X=144;break}case 10:{c[U>>2]=(c[U>>2]|0)+(c[c[Q>
;>2]>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);if(!(c[(c[l>
x3e;2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|0)+64>>2]|0))break a;c[(c[s>>2]|0)+64>>
2]=2}break}case 11:{e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break
a}e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>
x3e;2]>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);qq(c[s>>2]|
0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);
c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+12>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,
c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+16>>2]|0);c[V>>2]=(c
[V>>2]|0)+(c[(c[Q>>2]|0)+20>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,
1);break}case 12:{e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}
e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){X=186;break a}c[V>>2]=(c[V>>2]|0)+(c[c[Q>>
;2]>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(
c[(c[Q>>2]|0)+4>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);qq
(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+
12>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,1);break}case 13:{X=tq(c[s>>2]|0,c[
U>>2]|0,c[V>>2]|0)|0;c[v>>2]=X;if(X|0){X=186;break a}c[V>>2]=(c[V>>2]|0)+(c[c[
Q>>2]>>2]|0);X=144;break}case 14:{c[V>>2]=(c[V>>2]|0)+(c[c[Q>>2]>>2]|
0);if(!(c[(c[l>>2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|0)+64>>2]|0))break a;c[(c[s>>
;2]|0)+64>>2]=2}break}case 20:{e=Vb(c[c[Q>>2]>>2]|0,c[(c[Q>>2]|0)+4>>2]|0)|0;c
[c[Q>>2]>>2]=e;c[Q>>2]=(c[Q>>2]|0)+4;a[E>>0]=0;break}case 22:{c[B>>2
]=c[c[Q>>2]>>2]>>16;if((c[B>>2]|0)<0)break a;if((c[B>>2]|0)>=(c[(c[l
>>2]|0)+1364>>2]|0))break a;if((((c[W>>2]|0)-((c[l>>2]|0)+1140)|0)/12|0|0)>=16)break
a;c[c[W>>2]>>2]=c[C>>2];c[W>>2]=(c[W>>2]|0)+12;c[(c[W>>2]|0)+4>
;>2]=c[(c[(c[l>>2]|0)+1368>>2]|0)+(c[B>>2]<<2)>>2];if(c[(c[l>>2
]|0)+1372>>2]|0)c[(c[W>>2]|0)+8>>2]=(c[(c[W>>2]|0)+4>>2]|0)+(c[(c[(c[l>
x3e;2]|0)+1372>>2]|0)+(c[B>>2]<<2)>>2]|0);else{if((c[(c[l>>2]|0)+1360>>
;2]|0)>=0)h=c[(c[l>>2]|0)+1360>>2]|0;else h=0;e=(c[W>>2]|0)+4|0;c[e>>2]=(c[e>
x3e;2]|0)+h;c[(c[W>>2]|0)+8>>2]=c[(c[(c[l>>2]|0)+1368>>2]|0)+((c[B>>2]|0)+1<
;<2)>>2]}c[c[W>>2]>>2]=c[(c[W>>2]|0)+4>>2];if(!(c[(c[W>>2]|0)+4
>>2]|0))break a;c[(c[l>>2]|0)+1344>>2]=c[W>>2];c[C>>2]=c[(c[W>>2]|0)+
4>>2];c[F>>2]=c[(c[W>>2]|0)+8>>2];break}case 23:{if((c[D>>2]|0)>0){c[D>
;>2]=(c[D>>2]|0)+-1;break d}if(!(c[R>>2]|0))break a;c[R>>2]=(c[R>>2]|0)+-1;c[Q>
;>2]=(c[Q>>2]|0)+4;break}case 24:{if((c[W>>2]|0)>>>0<=((c[l>>2]|0)+1140|0
)>>>0)break a;c[W>>2]=(c[W>>2]|0)+-12;c[C>>2]=c[c[W>>2]>>2];c[F
>>2]=c[(c[W>>2]|0)+8>>2];c[(c[l>>2]|0)+1344>>2]=c[W>>2];break}case 26
:case 15:break;case 16:{if(c[w>>2]|0)Ua[c[(c[w>>2]|0)+12>>2]&31](c[c[w>>2]>>
;2]|0,1,c[Q>>2]|0);break}case 17:{if(c[w>>2]|0)Ua[c[(c[w>>2]|0)+16>>2]&31](c[c[w>
;>2]>>2]|0,1,c[Q>>2]|0);break}case 18:{if(c[w>>2]|0){e=c[Q>>2]|0;c[e>>2]=(
c[e>>2]|0)+(c[L>>2]|0);Ua[c[(c[w>>2]|0)+12>>2]&31](c[c[w>>2]>>2
]|0,0,c[Q>>2]|0)}break}case 19:{if(c[w>>2]|0){c[u>>2]=c[L>>2];e=c[Q>>2]|0;c[e
x3e;>2]=(c[e>>2]|0)+(c[u>>2]|0);e=(c[Q>>2]|0)+8|0;c[e>>2]=(c[e>>2]|0)+(c[
u>>2]|0);e=(c[Q>>2]|0)+16|0;c[e>>2]=(c[e>>2]|0)+(c[u>>2]|0);Ua[c[(c[w>>
;2]|0)+16>>2]&31](c[c[w>>2]>>2]|0,0,c[Q>>2]|0)}break}case 25:{c[U>>2]=c[c
[Q>>2]>>2];c[V>>2]=c[(c[Q>>2]|0)+4>>2];c[(c[l>>2]|0)+1400>>
;2]=0;break}default:break a}while(0);if((X|0)==144?(X=0,e=rq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0,c[v
x3e;>2]=e,e|0):0){X=186;break}c[(c[l>>2]|0)+1136>>2]=c[Q>>2]}do if((X|0)==121){uq(c[s>
x3e;2]|0);if(c[w>>2]|0){if(Ya[c[(c[w>>2]|0)+8>>2]&127](c[c[w>>2]>>2]|0,b[(
c[(c[s>>2]|0)+20>>2]|0)+2>>1]|0)|0)break;Wa[c[(c[w>>2]|0)+24>>2]&31](c[c[
w>>2]>>2]|0,c[(c[s>>2]|0)+20>>2]|0,c[(c[s>>2]|0)+76>>2]|0,c[(c[l>
;>2]|0)+1468>>2]|0)|0}oc(c[(c[s>>2]|0)+12>>2]|0);c[k>>2]=0;X=c[k>>2]|0;i=
Y;return X|0}else if((X|0)==126){c[k>>2]=0;X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==127){c[k>>2]=
yq(c[l>>2]|0,c[c[Q>>2]>>2]|0,c[(c[Q>>2]|0)+4>>2]|0,c[(c[Q>>2]|0)+8
x3e;>2]|0,c[(c[Q>>2]|0)+12>>2]>>16,c[(c[Q>>2]|0)+16>>2]>>16)|0;
X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==129){c[k>>2]=0;X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==
186){c[k>>2]=c[v>>2];X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==188){c[k>>2]=161;X=c[k>
;>2]|0;i=Y;return X|0}while(0);c[k>>2]=160;X=c[k>>2]|0;i=Y;return X|0}function yq(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;A=i;i=i+80|0;n=A+68|0;o=A+64
|0;p=A+60|0;q=A+56|0;r=A+52|0;k=A+48|0;l=A+44|0;v=A+40|0;u=A+36|0;s=A+32|0;x=A+24|0;t=A+16|0;m=A+12|0;w=A+8|0;y=A+4|0;z=A;c[o>
;>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[k>>2]=h;c[l>>2]=j;c[m>>2
]=c[(c[o>>2]|0)+4>>2];if(a[(c[o>>2]|0)+1496>>0]|0){c[n>>2]=160;z=c[n>>
;2]|0;i=A;return z|0}c[q>>2]=(c[q>>2]|0)+(c[(c[o>>2]|0)+32>>2]|0);if((c[(c[o>>
2]|0)+1356>>2]|0)==0?(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)==0:0){c[n>>2]=160;
z=c[n>>2]|0;i=A;return z|0}if(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0){c[u>>2]=c[
k>>2];c[s>>2]=c[l>>2]}else{c[u>>2]=zq(c[o>>2]|0,c[k>>2]|0)|0;c[s>
;>2]=zq(c[o>>2]|0,c[l>>2]|0)|0}if((c[u>>2]|0)<0|(c[s>>2]|0)<0){c[n>
x3e;2]=160;z=c[n>>2]|0;i=A;return z|0}k=c[o>>2]|0;if(a[(c[o>>2]|0)+69>>0]|0){c[w>
x3e;2]=c[k+8>>2];c[y>>2]=c[c[(c[w>>2]|0)+156>>2]>>2];c[v>>2]=lc(c[y
x3e;>2]|0,2)|0;if(!(c[v>>2]|0)){c[z>>2]=c[(c[y>>2]|0)+56+32>>2];c[c[z>>2]
x3e;>2]=c[u>>2];b[(c[z>>2]|0)+4>>1]=514;c[(c[z>>2]|0)+8>>2]=0;c[(c[z>
;>2]|0)+12>>2]=0;c[z>>2]=(c[z>>2]|0)+32;c[c[z>>2]>>2]=c[s>>2];b
[(c[z>>2]|0)+4>>1]=2;x=(Tb((c[q>>2]|0)-(c[p>>2]|0)|0)|0)>>16;c[(c[z>>
;2]|0)+8>>2]=x;x=(Tb(c[r>>2]|0)|0)>>16;c[(c[z>>2]|0)+12>>2]=x;c[(c[w>>
;2]|0)+128>>2]=2;c[(c[w>>2]|0)+132>>2]=c[(c[y>>2]|0)+20+32>>2];c[(c[w>>
;2]|0)+72>>2]=1668246896;c[(c[y>>2]|0)+56+28>>2]=2}}else{nc(c[k+12>>2]|0);a[(c[o>
x3e;2]|0)+1496>>0]=1;c[v>>2]=Aq(c[o>>2]|0,c[u>>2]|0)|0;a[(c[o>>2]|0)+1496>
;>0]=0;if((c[v>>2]|0)==0?(z=(c[o>>2]|0)+32|0,c[x>>2]=c[z>>2],c[x+4>>2]=c[
z+4>>2],z=(c[o>>2]|0)+40|0,c[t>>2]=c[z>>2],c[t+4>>2]=c[z+4>>2],c[(c[
o>>2]|0)+32>>2]=0,c[(c[o>>2]|0)+32+4>>2]=0,c[(c[o>>2]|0)+24>>2]=(c[q
>>2]|0)-(c[p>>2]|0),c[(c[o>>2]|0)+28>>2]=c[r>>2],a[(c[o>>2]|0)+1496
x3e;>0]=1,c[v>>2]=Aq(c[o>>2]|0,c[s>>2]|0)|0,a[(c[o>>2]|0)+1496>>0]=0,(c[v
>>2]|0)==0):0){z=(c[o>>2]|0)+32|0;c[z>>2]=c[x>>2];c[z+4>>2]=c[x+4>>2
];z=(c[o>>2]|0)+40|0;c[z>>2]=c[t>>2];c[z+4>>2]=c[t+4>>2];c[(c[o>>2]|
0)+24>>2]=0;c[(c[o>>2]|0)+28>>2]=0}}c[n>>2]=c[v>>2];z=c[n>>2]|0;i=A;
return z|0}function zq(b,d){b=b|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;l=n+24|0;f=n+20|0;g=n+16|0;m=n+12|0;h=n
+8|0;k=n+4|0;j=n;c[f>>2]=b;c[g>>2]=d;c[k>>2]=c[(c[f>>2]|0)+1348>>2];if((c[g>
;>2]|0)<0|(c[g>>2]|0)>255){c[l>>2]=-1;m=c[l>>2]|0;i=n;return m|0}c[h>>2]=
Ta[c[(c[k>>2]|0)+20>>2]&63](e[(c[(c[k>>2]|0)+24>>2]|0)+(c[g>>2]<<
;1)>>1]|0)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[(c[f>>2]|0)+1352
>>2]|0)>>>0){f=10;break}c[j>>2]=c[(c[(c[f>>2]|0)+1356>>2]|0)+(c[m>
x3e;2]<<2)>>2];if((c[j>>2]|0?(a[c[j>>2]>>0]|0)==(a[c[h>>2]>>
;0]|0):0)?(Kr(c[j>>2]|0,c[h>>2]|0)|0)==0:0){f=8;break}c[m>>2]=(c[m>>2]|0)+1}if((f|0)==8){
c[l>>2]=c[m>>2];m=c[l>>2]|0;i=n;return m|0}else if((f|0)==10){c[l>>2]=-1;m=c[l>>
;2]|0;i=n;return m|0}return 0}function Aq(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=Ya[c[(c[f>>2]|0)+1472>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return b|0}
function Bq(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|
0;k=n+8|0;m=n+4|0;l=n;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=0;c[m>
;>2]=bc(c[h>>2]|0,16,l)|0;if(c[l>>2]|0){c[f>>2]=c[l>>2];m=c[f>>2]|0;i=n;return
m|0}else{a=c[j>>2]|0;c[(c[m>>2]|0)+4>>2]=a;c[c[m>>2]>>2]=a;c[(c[m>>
2]|0)+8>>2]=c[k>>2];c[(c[m>>2]|0)+12>>2]=2;c[c[g>>2]>>2]=c[h>
x3e;2];c[(c[g>>2]|0)+4>>2]=c[m>>2];c[(c[g>>2]|0)+8>>2]=0;c[(c[g>>2]|
0)+12>>2]=0;c[f>>2]=0;m=c[f>>2]|0;i=n;return m|0}return 0}function Cq(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];Fb(c[e>>2]|0,c[(c[d>
;>2]|0)+4>>2]|0);c[(c[d>>2]|0)+4>>2]=0;i=b;return}function Dq(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;o=i;i=i+80|0;j=o+68|0;k=o+64|0;n=o+60|0;m=o+56|0;l=o+52|0;d=o+48|0;e=o+44|0;f=o+40|0;h=o+8|0;g=o;c[k
x3e;>2]=b;c[n>>2]=c[c[k>>2]>>2];c[m>>2]=c[(c[k>>2]|0)+8>>2];c[l
>>2]=160;c[f>>2]=0;if(!(c[m>>2]|0)){c[j>>2]=6;n=c[j>>2]|0;i=o;return n|0}c[d
x3e;>2]=Eq(c[k>>2]|0,1,e)|0;if(!((c[d>>2]|0)==0|(c[e>>2]|0)!=16)?(Lr(c[d>>2]|0,11707
,16)|0)==0:0){a:while(1){b=Eq(c[k>>2]|0,1,e)|0;c[d>>2]=b;if(!b){d=24;break}switch(Iq(c[d>>2]|0,c[e
>>2]|0)|0){case 49:{d=22;break a}case 20:{d=23;break a}case 40:{if(Jq(c[k>>2]|0,f)|0){d=24;break a}if((c[f
x3e;>2]|0)!=0&(c[f>>2]|0)!=2){d=10;break a}else continue a}case 30:{c[h>>2]=4;if((Kq(c[k>>
;2]|0,h,1)|0)!=1){d=24;break a}a[c[m>>2]>>0]=a[h+4>>0]|0;continue a}case 26:{c[h>>2]=2;c
[h+8>>2]=2;c[h+16>>2]=2;c[h+24>>2]=2;if((Kq(c[k>>2]|0,h,4)|0)!=4){d=24;break a}c[(c[m>
;>2]|0)+4>>2]=c[h+4>>2];c[(c[m>>2]|0)+4+4>>2]=c[h+8+4>>2];c[(c[m>>
;2]|0)+4+8>>2]=c[h+16+4>>2];c[(c[m>>2]|0)+4+12>>2]=c[h+24+4>>2];continue a}case
0:{c[h>>2]=2;if((Kq(c[k>>2]|0,h,1)|0)!=1){d=24;break a}c[(c[m>>2]|0)+20>>2]=c[h+4>
x3e;2];continue a}case 14:{c[h>>2]=2;if((Kq(c[k>>2]|0,h,1)|0)!=1){d=24;break a}c[(c[m>>2]|0)+24>
;>2]=c[h+4>>2];continue a}case 45:{c[g>>2]=0;if(Jq(c[k>>2]|0,g)|0){d=24;break a}c[l>>
;2]=Lq(c[k>>2]|0,c[g>>2]|0,17)|0;if(c[l>>2]|0){d=21;break a}else continue a}default:continue a}}if
((d|0)==10){c[l>>2]=7;d=24}else if((d|0)==21){c[j>>2]=c[l>>2];n=c[j>>2]|0;i=o;return n|0
}else if((d|0)==22){c[l>>2]=Mq(c[k>>2]|0)|0;if(c[l>>2]|0)d=24;else d=23}if((d|0)==23){c[j>>
;2]=0;n=c[j>>2]|0;i=o;return n|0}else if((d|0)==24){Fb(c[n>>2]|0,c[(c[m>>2]|0)+28>>2]|0);
c[(c[m>>2]|0)+28>>2]=0;c[(c[m>>2]|0)+32>>2]=0;Fb(c[n>>2]|0,c[(c[m>>2
]|0)+36>>2]|0);c[(c[m>>2]|0)+36>>2]=0;c[(c[m>>2]|0)+40>>2]=0;a[c[m>>
2]>>0]=0;c[j>>2]=c[l>>2];n=c[j>>2]|0;i=o;return n|0}}c[j>>2]=2;n=c[j>>
;2]|0;i=o;return n|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,l=0;j=i;i=i+32|0;l=j+12|0;k=j+16|0;g=j+8|0;f=j
+4|0;h=j;c[l>>2]=b;a[k>>0]=d;c[g>>2]=e;c[f>>2]=c[(c[l>>2]|0)+4>>2];c
[h>>2]=0;a:do if(a[k>>0]|0)do{if((c[(c[f>>2]|0)+12>>2]|0)<2)Fq(c[f>>2]|0)|
0;c[(c[f>>2]|0)+12>>2]=0;c[h>>2]=Hq(c[f>>2]|0)|0;if(c[h>>2]|0)break a;if((c[(c
[f>>2]|0)+12>>2]|0)>=3)break a}while((c[(c[f>>2]|0)+12>>2]|0)>=2);else while(1
){e=c[f>>2]|0;if((c[(c[f>>2]|0)+12>>2]|0)>=1^1){Hq(e)|0;continue}c[e+12>>2]=0;c[h
x3e;>2]=Hq(c[f>>2]|0)|0;if(c[h>>2]|0)break a;if((c[(c[f>>2]|0)+12>>2]|0)>=3)break
a;if((c[(c[f>>2]|0)+12>>2]|0)<1)break}while(0);if(!(c[g>>2]|0)){l=c[h>>2]|0;i=j;return
l|0}if(c[h>>2]|0)e=(c[c[f>>2]>>2]|0)-(c[h>>2]|0)-1|0;else e=0;c[c[g>>2]>
x3e;2]=e;l=c[h>>2]|0;i=j;return l|0}function Fq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;f=h+8|0;g=h
+4|0;b=h;c[f>>2]=a;Gq(c[f>>2]|0)|0;if((c[(c[f>>2]|0)+12>>2]|0)>=2){c[e>>2
]=0;g=c[e>>2]|0;i=h;return g|0}c[g>>2]=(c[c[f>>2]>>2]|0)+-1;while(1){if((c[c[f>>
;2]>>2]|0)>>>0<(c[(c[f>>2]|0)+8>>2]|0)>>>0){j=c[f>>2]|
0;a=c[j>>2]|0;c[j>>2]=a+1;a=d[a>>0]|0}else a=-1;c[b>>2]=a;if((c[b>>2]|0)==13|(
c[b>>2]|0)==10){a=7;break}if((c[b>>2]|0)==-1|(c[b>>2]|0)==26){a=9;break}}if((a|0)==7)c[(c[f>
x3e;2]|0)+12>>2]=2;else if((a|0)==9)c[(c[f>>2]|0)+12>>2]=3;c[e>>2]=c[g>>2];j=c
[e>>2]|0;i=h;return j|0}function Gq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;b=g+8|0;e=g+4|0;f=g;c[e>>2
]=a;c[f>>2]=0;if((c[(c[e>>2]|0)+12>>2]|0)>=1){c[b>>2]=59;f=c[b>>2]|0;i=g;
return f|0}do{if((c[c[e>>2]>>2]|0)>>>0<(c[(c[e>>2]|0)+8>>2]|0)>
x3e;>0){h=c[e>>2]|0;a=c[h>>2]|0;c[h>>2]=a+1;a=d[a>>0]|0}else a=-1;c[f>>2]=
a}while((c[f>>2]|0)==32|(c[f>>2]|0)==9);do if(!((c[f>>2]|0)==13|(c[f>>2]|0)==10)){if((c[
f>>2]|0)==59){c[(c[e>>2]|0)+12>>2]=1;break}if((c[f>>2]|0)==-1|(c[f>>2]|0)==26)
c[(c[e>>2]|0)+12>>2]=3}else c[(c[e>>2]|0)+12>>2]=2;while(0);c[b>>2]=c[f>
x3e;2];h=c[b>>2]|0;i=g;return h|0}function Hq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;b=j+12|0;e=j+8|0;g
=j+4|0;f=j;c[e>>2]=a;Gq(c[e>>2]|0)|0;if((c[(c[e>>2]|0)+12>>2]|0)>=1){c[b>>
;2]=0;h=c[b>>2]|0;i=j;return h|0}c[g>>2]=(c[c[e>>2]>>2]|0)+-1;while(1){if((c[c[e>
x3e;2]>>2]|0)>>>0<(c[(c[e>>2]|0)+8>>2]|0)>>>0){k=c[e>>
;2]|0;a=c[k>>2]|0;c[k>>2]=a+1;a=d[a>>0]|0}else a=-1;c[f>>2]=a;if((c[f>>2]|0)==
32|(c[f>>2]|0)==9)break;if((c[f>>2]|0)==13|(c[f>>2]|0)==10){h=8;break}if((c[f>>2]|0)==59
){h=10;break}if((c[f>>2]|0)==-1|(c[f>>2]|0)==26){h=12;break}}if((h|0)==8)c[(c[e>>2]|0)+12>>
;2]=2;else if((h|0)==10)c[(c[e>>2]|0)+12>>2]=1;else if((h|0)==12)c[(c[e>>2]|0)+12>>2]=3;
c[b>>2]=c[g>>2];k=c[b>>2]|0;i=j;return k|0}function Iq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=
i;i=i+16|0;h=j+12|0;e=j+8|0;f=j+4|0;g=j;c[e>>2]=b;c[f>>2]=d;c[g>>2]=0;a:while(1){if((c[g>>
;2]|0)>=74){b=10;break}if((c[g>>2]|0)<74?(a[c[4608+(c[g>>2]<<2)>>2]>>
;0]|0)==(a[c[e>>2]>>0]|0):0)do{if((a[c[4608+(c[g>>2]<<2)>>2]>>0]|0)!=(
a[c[e>>2]>>0]|0)){b=5;break a}b=(Lr(c[4608+(c[g>>2]<<2)>>2]|0,c[e>>2
]|0,c[f>>2]|0)|0)==0;d=c[g>>2]|0;if(b){b=7;break a}c[g>>2]=d+1}while((c[g>>2]|0)<74
);c[g>>2]=(c[g>>2]|0)+1}if((b|0)==5){c[h>>2]=75;h=c[h>>2]|0;i=j;return h|0}else if((b|0)==
7){c[h>>2]=d;h=c[h>>2]|0;i=j;return h|0}else if((b|0)==10){c[h>>2]=75;h=c[h>>2]|0;i=j;return
h|0}return 0}function Jq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+32|0;d=g+16|0;h=g+12|0;e=g+8|0;f=g;c[h>>2]=
a;c[e>>2]=b;c[f>>2]=3;if((Kq(c[h>>2]|0,f,1)|0)==1){c[c[e>>2]>>2]=c[f+4>
x3e;2];c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}else{c[d>>2]=160;h=c[d>>2]|0;i=g;return h|0}
return 0}function Kq(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;r=i;i=i+48|0;f=r+40|0;g=r+36|0
;h=r+32|0;j=r+28|0;p=r+24|0;o=r+20|0;l=r+16|0;m=r+12|0;q=r+8|0;n=r+4|0;k=r;c[g>>2]=b;c[h>>2]=d;c[j>>
;2]=e;c[p>>2]=c[(c[g>>2]|0)+4>>2];if((c[j>>2]|0)>>>0>5){c[f>>
;2]=0;q=c[f>>2]|0;i=r;return q|0}c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[j
x3e;>2]|0)>>>0)break;c[q>>2]=(c[h>>2]|0)+(c[l>>2]<<3);e=c[p>>
;2]|0;if(!(c[c[q>>2]>>2]|0))c[o>>2]=Fq(e)|0;else c[o>>2]=Hq(e)|0;if(!(c[o>>2]|
0))break;c[m>>2]=(c[c[p>>2]>>2]|0)-(c[o>>2]|0)-1;a:do switch(c[c[q>>2]>
x3e;2]|0){case 1:case 0:{c[n>>2]=c[c[g>>2]>>2];d=cc(c[n>>2]|0,(c[m>>2]|0)+1|0,
k)|0;c[(c[q>>2]|0)+4>>2]=d;if(!(c[k>>2]|0)){Ss(c[(c[q>>2]|0)+4>>2]|0,c[o>
x3e;2]|0,c[m>>2]|0)|0;a[(c[(c[q>>2]|0)+4>>2]|0)+(c[m>>2]|0)>>0]=0}break}case 2
:{d=bq(o,(c[o>>2]|0)+(c[m>>2]|0)|0,0)|0;c[(c[q>>2]|0)+4>>2]=d;break}case 3:{d=_p(o,(c[o
x3e;>2]|0)+(c[m>>2]|0)|0)|0;c[(c[q>>2]|0)+4>>2]=d;break}case 4:{if((c[m>>2]|0)==4)e
=(Lr(c[o>>2]|0,12412,4)|0)!=0^1;else e=0;a[(c[q>>2]|0)+4>>0]=e&1;break}case 5:if(c[(c[g>
x3e;2]|0)+12>>2]|0){d=Oa[c[(c[g>>2]|0)+12>>2]&63](c[o>>2]|0,c[m>>2]|0,c[(
c[g>>2]|0)+16>>2]|0)|0;c[(c[q>>2]|0)+4>>2]=d;break a}else{c[(c[q>>2]|0)+4>
;>2]=0;break a}default:{}}while(0);c[l>>2]=(c[l>>2]|0)+1}c[f>>2]=c[l>>2];q=c[f>
;>2]|0;i=r;return q|0}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,l=0,m=0,n=0;n=i;i=i+32|0;e=n+24|0;f=
n+20|0;g=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;l=n;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;do{a=c[g>>2]|
0;c[g>>2]=a+-1;if(a>>>0<=0){m=4;break}c[j>>2]=Eq(c[f>>2]|0,1,0)|0}while((c[j
x3e;>2]|0)!=0);a:do if((m|0)==4){while(1){m=Eq(c[f>>2]|0,1,k)|0;c[j>>2]=m;if(!m)break a;c[l>>
2]=Iq(c[j>>2]|0,c[k>>2]|0)|0;if((c[l>>2]|0)==20?1:(c[l>>2]|0)==(c[h>>2]|0))break
;else m=4}c[e>>2]=0;m=c[e>>2]|0;i=n;return m|0}while(0);c[e>>2]=160;m=c[e>>2]|0;i=n;return
m|0}function Mq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;f=h+16|0;b=h+12|0;g=h+8|0;d=h+4|0;e=h;c[b>>2]=a;a:while
(1){a=Eq(c[b>>2]|0,1,e)|0;c[d>>2]=a;if(!a){b=9;break}switch(Iq(c[d>>2]|0,c[e>>2]|0)|0){case
75:continue a;case 20:case 21:{b=8;break a}case 53:{c[g>>2]=Nq(c[b>>2]|0)|0;if(c[g>>2]|0){b=5;break
a}else continue a}case 51:case 50:{c[g>>2]=Oq(c[b>>2]|0)|0;if(c[g>>2]|0){b=7;break a}else continue
a}default:{b=9;break a}}}if((b|0)==5)c[f>>2]=c[g>>2];else if((b|0)==7)c[f>>2]=c[g>>2];else
if((b|0)==8)c[f>>2]=0;else if((b|0)==9)c[f>>2]=160;i=h;return c[f>>2]|0}function Nq(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;n=i;i=i+80|0;b=n+72|0;d=n+68|0;f=n+64|0;m=n+60|0;g=n+56|0;h=n+52|0;k=n+48|0;j=n+44|0
;e=n+40|0;l=n;c[d>>2]=a;c[f>>2]=c[(c[d>>2]|0)+8>>2];c[k>>2]=-1;a:do if(!(Jq(c[
d>>2]|0,(c[f>>2]|0)+32|0)|0)){if(c[(c[f>>2]|0)+32>>2]|0?(c[j>>2]=c[c[d>
x3e;2]>>2],a=hc(c[j>>2]|0,20,0,c[(c[f>>2]|0)+32>>2]|0,0,e)|0,c[(c[f>>2]|0)+28
x3e;>2]=a,c[e>>2]|0):0){c[b>>2]=c[e>>2];m=c[b>>2]|0;i=n;return m|0}b:while(1){a=Eq(
c[d>>2]|0,1,h)|0;c[g>>2]=a;if(!a)break a;switch(Iq(c[g>>2]|0,c[h>>2]|0)|0){case 75:continue
b;case 20:case 21:case 23:break b;case 56:break;default:break a}c[k>>2]=(c[k>>2]|0)+1;if((c[k>>2]|
0)>=(c[(c[f>>2]|0)+32>>2]|0))break a;c[m>>2]=(c[(c[f>>2]|0)+28>>2]|0)+((c
[k>>2]|0)*20|0);c[l>>2]=3;c[l+8>>2]=2;c[l+16>>2]=2;c[l+24>>2]=2;c[l+32>
x3e;2]=2;if((Kq(c[d>>2]|0,l,5)|0)!=5)break a;c[c[m>>2]>>2]=c[l+4>>2];c[(c[m>>2
]|0)+4>>2]=c[l+8+4>>2];c[(c[m>>2]|0)+8>>2]=c[l+16+4>>2];c[(c[m>>2]|0
)+12>>2]=c[l+24+4>>2];c[(c[m>>2]|0)+16>>2]=c[l+32+4>>2];if((c[c[m>>2
]>>2]|0)>=0)continue;if((c[(c[m>>2]|0)+8>>2]|0)<=0)continue;c[(c[m>>2]|0)+8>
;>2]=0-(c[(c[m>>2]|0)+8>>2]|0)}c[(c[f>>2]|0)+32>>2]=(c[k>>2]|0)+1;c[b>
;>2]=0;m=c[b>>2]|0;i=n;return m|0}while(0);c[b>>2]=160;m=c[b>>2]|0;i=n;return m|0}function Oq
(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;p=i;i=i+80|0;e=p+72|0;f=p+68|0;g=p+64|0;j=p+60|0;h=p+56|0;k=p+
52|0;l=p+48|0;d=p+44|0;b=p+40|0;o=p+36|0;m=p+32|0;n=p;c[f>>2]=a;c[g>>2]=c[(c[f>>2]|0)+8>>
;2];c[l>>2]=-1;a:do if(!(Jq(c[f>>2]|0,(c[g>>2]|0)+40|0)|0)){if(c[(c[g>>2]|0)+40>>
;2]|0?(c[d>>2]=c[c[f>>2]>>2],a=hc(c[d>>2]|0,16,0,c[(c[g>>2]|0)+40>>2
]|0,0,b)|0,c[(c[g>>2]|0)+36>>2]=a,c[b>>2]|0):0){c[e>>2]=c[b>>2];o=c[e>>
;2]|0;i=p;return o|0}b:while(1){a=Eq(c[f>>2]|0,1,k)|0;c[h>>2]=a;if(!a)break a;c[o>>2]=Iq(c[h>
x3e;2]|0,c[k>>2]|0)|0;switch(c[o>>2]|0){case 75:continue b;case 20:case 21:case 22:break b;case 37:case 36:case
34:break;default:break a}c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)>=(c[(c[g>>2]|0)+40
x3e;>2]|0))break a;c[j>>2]=(c[(c[g>>2]|0)+36>>2]|0)+(c[l>>2]<<4);c[n>
;>2]=5;c[n+8>>2]=5;c[n+16>>2]=3;c[n+24>>2]=3;c[m>>2]=Kq(c[f>>2]|0,n,4)|0;
if((c[m>>2]|0)<3)break a;c[c[j>>2]>>2]=c[n+4>>2];c[(c[j>>2]|0)+4>>
;2]=c[n+8+4>>2];if((c[o>>2]|0)==37){c[(c[j>>2]|0)+8>>2]=0;c[(c[j>>2]|0)+12>
;>2]=c[n+16+4>>2];continue}c[(c[j>>2]|0)+8>>2]=c[n+16+4>>2];if((c[o>>2]|0
)==34&(c[m>>2]|0)==4)b=c[n+24+4>>2]|0;else b=0;c[(c[j>>2]|0)+12>>2]=b}c[(c[g>
x3e;2]|0)+40>>2]=(c[l>>2]|0)+1;Bs(c[(c[g>>2]|0)+36>>2]|0,c[(c[g>>2]|0)+40>
;>2]|0,16,109);c[e>>2]=0;o=c[e>>2]|0;i=p;return o|0}while(0);c[e>>2]=160;o=c[e>>2]|
0;i=p;return o|0}function Pq(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;g=i;i=i+32|0;d=g+24|0;l=g+20|0;k=g+16|0;j=g+12
|0;h=g+8|0;e=g+4|0;f=g;c[l>>2]=a;c[k>>2]=b;c[j>>2]=c[l>>2];c[h>>2]=c[k>
x3e;2];c[e>>2]=c[c[j>>2]>>2]<<16|c[(c[j>>2]|0)+4>>2];c[f>>
2]=c[c[h>>2]>>2]<<16|c[(c[h>>2]|0)+4>>2];if((c[e>>2]|0)>>
x3e;0>(c[f>>2]|0)>>>0){c[d>>2]=1;l=c[d>>2]|0;i=g;return l|0}if((c[e>>
;2]|0)>>>0<(c[f>>2]|0)>>>0){c[d>>2]=-1;l=c[d>>2]|0;i=g;return l
|0}else{c[d>>2]=0;l=c[d>>2]|0;i=g;return l|0}return 0}function Qq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d
x3e;>2]=a;Rq(c[d>>2]|0,0);i=b;return 0}function Rq(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[d>>2]=a;c[f>>2]=b;c[h>>2]=c[c[d>>2]>>2];c[g>>
2]=c[(c[h>>2]|0)+484>>2];c[(c[d>>2]|0)+24>>2]=c[(c[h>>2]|0)+132+284>>
;2];c[(c[d>>2]|0)+28>>2]=c[(c[h>>2]|0)+132+288>>2];c[(c[d>>2]|0)+20>>
;2]=c[(c[g>>2]|0)+20>>2];a=c[g>>2]|0;if(c[f>>2]|0){g=c[a+28>>2]|0;h=c[d>
x3e;2]|0;h=h+16|0;c[h>>2]=g;i=e;return}else{g=c[a+24>>2]|0;h=c[d>>2]|0;h=h+16|0;c[h>>2]=
g;i=e;return}}function Sq(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)+24>>2]=0;c
[(c[d>>2]|0)+28>>2]=0;c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>2]=0;
i=b;return}function Tq(b,d){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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;m=o+16|0;h=o+12|0
;l=o+8|0;j=o+4|0;k=o;c[f>>2]=b;c[g>>2]=d;c[m>>2]=0;if((c[g>>2]|0)>>>0>
;=256){n=c[m>>2]|0;i=o;return n|0}c[h>>2]=e[(c[(c[f>>2]|0)+16>>2]|0)+(c[g>>2]
x3c;<1)>>1];c[j>>2]=Ta[c[(c[f>>2]|0)+20>>2]&63](c[h>>2]|0)|0;c[l>
;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[(c[f>>2]|0)+24>>2]|0)>>
x3e;0){n=9;break}c[k>>2]=c[(c[(c[f>>2]|0)+28>>2]|0)+(c[l>>2]<<2)>>2];
if((c[k>>2]|0?(a[c[k>>2]>>0]|0)==(a[c[j>>2]>>0]|0):0)?(Kr(c[k>>2]|0,
c[j>>2]|0)|0)==0:0)break;c[l>>2]=(c[l>>2]|0)+1}if((n|0)==9){n=c[m>>2]|0;i=o;return n|0}c
[m>>2]=c[l>>2];n=c[m>>2]|0;i=o;return n|0}function Uq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0
;j=i;i=i+16|0;d=j+12|0;e=j+8|0;g=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[f>>2]=(c[c[e
x3e;>2]>>2]|0)+1;while(1){if((c[f>>2]|0)>>>0>=256)break;c[g>>2]=Tq(c[d>
;>2]|0,c[f>>2]|0)|0;if(c[g>>2]|0){h=6;break}c[f>>2]=(c[f>>2]|0)+1}if((h|0)==6){b=c[
f>>2]|0;h=c[e>>2]|0;c[h>>2]=b;h=c[g>>2]|0;i=j;return h|0}c[f>>2]=0;b=c[f>
x3e;2]|0;h=c[e>>2]|0;c[h>>2]=b;h=c[g>>2]|0;i=j;return h|0}function Vq(a){a=a|0;var b=0,d=0;b=i;i=i
+16|0;d=b;c[d>>2]=a;Rq(c[d>>2]|0,1);i=b;return 0}function Wq(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]=c[c[d>>2]>>2];c[e>>2]=(c[f>>2]|0)+132
+240;c[(c[d>>2]|0)+16>>2]=c[(c[e>>2]|0)+4>>2];c[(c[d>>2]|0)+20>>2]=(
c[(c[e>>2]|0)+8>>2]|0)-(c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+24>>2]=
c[(c[e>>2]|0)+12>>2];i=b;return 0}function Xq(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)+24>>2]=0;c[(c[d>>2]|0)+16>>2]=0;c[(c[d>>2]|0)+20>>2]=0;i=b
;return}function Yq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=
b;c[g>>2]=0;if((c[f>>2]|0)>>>0<(c[(c[d>>2]|0)+16>>2]|0)>>
x3e;0){g=c[g>>2]|0;i=h;return g|0}if((c[f>>2]|0)>>>0>=((c[(c[d>>2]|0)+16>
x3e;2]|0)+(c[(c[d>>2]|0)+20>>2]|0)|0)>>>0){g=c[g>>2]|0;i=h;return g|0}c[g>>
;2]=e[(c[(c[d>>2]|0)+24>>2]|0)+(c[f>>2]<<1)>>1];g=c[g>>2]|0;i=h;return
g|0}function Zq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;d=k+12|0;f=k+8|0;h=k+4|0;g=k;c[d>>2]=a;c[f
x3e;>2]=b;c[h>>2]=0;c[g>>2]=c[c[f>>2]>>2];c[g>>2]=(c[g>>2]|0)+1
;if((c[g>>2]|0)>>>0<(c[(c[d>>2]|0)+16>>2]|0)>>>0)c[g>>
;2]=c[(c[d>>2]|0)+16>>2];while(1){if((c[g>>2]|0)>>>0>=((c[(c[d>>2]|0
)+16>>2]|0)+(c[(c[d>>2]|0)+20>>2]|0)|0)>>>0)break;c[h>>2]=e[(c[(c[d>
x3e;2]|0)+24>>2]|0)+(c[g>>2]<<1)>>1];if(c[h>>2]|0){j=7;break}c[g>>2]=(
c[g>>2]|0)+1}if((j|0)==7){b=c[g>>2]|0;j=c[f>>2]|0;c[j>>2]=b;j=c[h>>2]|0;i=k;return
j|0}c[g>>2]=0;b=c[g>>2]|0;j=c[f>>2]|0;c[j>>2]=b;j=c[h>>2]|0;i=k;return j|0}function
_q(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;d=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[d>>2]=c[c[e>
x3e;2]>>2];c[f>>2]=c[(c[d>>2]|0)+100>>2];c[g>>2]=c[(c[d>>2]|0)+484
x3e;>2];a=Sa[c[(c[g>>2]|0)+4>>2]&3](c[f>>2]|0,c[e>>2]|0,c[(c[d>>2]|0
)+132+284>>2]|0,110,0,c[d>>2]|0)|0;i=b;return a|0}function $q(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;
e=f+4|0;d=f;c[e>>2]=a;c[d>>2]=b;i=f;return c[(c[(c[e>>2]|0)+132+288>>2]|0)+(c[d>>
;2]<<2)>>2]|0}function ar(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]=c[c[d>>2]>>2];c[e>>2]=c[(c[f>>2]|0)+100>>2];Fb(c[e>>
;2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>
;2]=0;i=b;return}function br(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;h=d+4|0;g=d;c[f>>2
]=a;c[e>>2]=b;c[h>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[h>>2]|0)+484>
x3e;2];a=Ya[c[(c[g>>2]|0)+8>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function
cr(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;h=d+4|0;g=d;c[f>>2]=a;c[e>>2]=b;c
[h>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[h>>2]|0)+484>>2];a=Ya[c[(c[g>
x3e;2]|0)+12>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function dr(a,d,e){a=a|0;d=d|0;e=
e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+4|0;h=f;g=f+8|0;c[j>>2]=a;c[h>>2]=d;b[g>>1]=e;er(j,(c[j
x3e;>2]|0)+(c[h>>2]|0)|0,c[j>>2]|0,c[h>>2]|0,g)|0;i=f;return}function er(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;v=i;i=i+48|0;l=v+36|0;m=v+32|0;n=v+28|0;o=v+24|0;p=v+20|0;r
=v+16|0;s=v+12|0;t=v+8|0;u=v+4|0;q=v;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[p>
x3e;2]=k;c[t>>2]=e[c[p>>2]>>1];c[r>>2]=c[c[l>>2]>>2];if((c[o>
x3e;2]|0)>>>0>((c[m>>2]|0)-(c[r>>2]|0)|0)>>>0)c[o>>2]=(c[m>
;>2]|0)-(c[r>>2]|0);c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[o>>
;2]|0)>>>0)break;c[u>>2]=d[(c[r>>2]|0)+(c[s>>2]|0)>>0];c[q>>2]=
c[u>>2]^(c[t>>2]|0)>>>8;c[t>>2]=(((c[u>>2]|0)+(c[t>>2]|0)|0)*52845
|0)+22719&65535;a[(c[n>>2]|0)+(c[s>>2]|0)>>0]=c[q>>2];c[s>>2]=(c[s>
x3e;2]|0)+1}c[c[l>>2]>>2]=(c[r>>2]|0)+(c[o>>2]|0);b[c[p>>2]>>1]=c[t
x3e;>2];i=v;return c[s>>2]|0}function fr(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
,u=0;u=i;i=i+64|0;r=u+44|0;e=u+40|0;h=u+36|0;o=u+32|0;m=u+28|0;f=u+49|0;k=u+24|0;j=u+20|0;p=u+16|0;n=u+12|0;g=u+48|0;l=u+8|0;t=u
+4|0;s=u;c[e>>2]=b;if(((a[c[e>>2]>>0]|0)==117?(a[(c[e>>2]|0)+1>>0]|0)==110:0)?(
a[(c[e>>2]|0)+2>>0]|0)==105:0){c[o>>2]=0;c[m>>2]=(c[e>>2]|0)+3;c[h>>
2]=4;while(1){if((c[h>>2]|0)<=0)break;a[f>>0]=a[c[m>>2]>>0]|0;c[k>>2]=(d[
f>>0]|0)-48;do if((c[k>>2]|0)>>>0>=10){c[k>>2]=(d[f>>0]|0)-65;if((c[
k>>2]|0)>>>0>=6){c[k>>2]=16;break}else{c[k>>2]=(c[k>>2]|0)+10;break}}
while(0);if((c[k>>2]|0)>>>0>=16)break;c[o>>2]=(c[o>>2]<<4)+(c[k>
;>2]|0);c[h>>2]=(c[h>>2]|0)+-1;c[m>>2]=(c[m>>2]|0)+1}if(!(c[h>>2]|0)){if(!(
a[c[m>>2]>>0]|0)){c[r>>2]=c[o>>2];t=c[r>>2]|0;i=u;return t|0}if((a[c[m>
x3e;2]>>0]|0)==46){c[r>>2]=c[o>>2]|-2147483648;t=c[r>>2]|0;i=u;return t|0}}}if((a[c[e>
;>2]>>0]|0)==117){c[p>>2]=0;c[n>>2]=(c[e>>2]|0)+1;c[j>>2]=6;while(1){if((
c[j>>2]|0)<=0)break;a[g>>0]=a[c[n>>2]>>0]|0;c[l>>2]=(d[g>>0]|0)-
48;do if((c[l>>2]|0)>>>0>=10){c[l>>2]=(d[g>>0]|0)-65;if((c[l>>2]|0)
x3e;>>0>=6){c[l>>2]=16;break}else{c[l>>2]=(c[l>>2]|0)+10;break}}while(0);if((c[l>
;>2]|0)>>>0>=16)break;c[p>>2]=(c[p>>2]<<4)+(c[l>>2]|0);c[j>
;>2]=(c[j>>2]|0)+-1;c[n>>2]=(c[n>>2]|0)+1}if((c[j>>2]|0)<=2){if(!(a[c[n>
x3e;2]>>0]|0)){c[r>>2]=c[p>>2];t=c[r>>2]|0;i=u;return t|0}if((a[c[n>>2]>
x3e;0]|0)==46){c[r>>2]=c[p>>2]|-2147483648;t=c[r>>2]|0;i=u;return t|0}}}c[t>>2]=c[e>
;>2];c[s>>2]=0;while(1){if(!(a[c[t>>2]>>0]|0))break;if((a[c[t>>2]>>0]|0)==
46?(c[t>>2]|0)>>>0>(c[e>>2]|0)>>>0:0){q=35;break}c[t>>2]=(c[t
x3e;>2]|0)+1}if((q|0)==35)c[s>>2]=c[t>>2];e=c[e>>2]|0;if(c[s>>2]|0){c[r>>
2]=gr(e,c[s>>2]|0)|0|-2147483648;t=c[r>>2]|0;i=u;return t|0}else{c[r>>2]=gr(e,c[t>>2]|0)|
0;t=c[r>>2]|0;i=u;return t|0}return 0}function gr(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;t=i;i=i+64|0;f=t+48|0;g=t+44|0;h=t+40|0;j=t+36|0;l=t+32|0;o=t+28|0;m=t+24|0;q=t+20|0;n=t+16|0;r=t+12|0;k=t+8|0;p=t+4|0;
s=t;c[g>>2]=b;c[h>>2]=e;c[j>>2]=0;c[q>>2]=12431;a:do if(c[g>>2]|0?(c[g>
x3e;2]|0)>>>0<(c[h>>2]|0)>>>0:0){b=c[g>>2]|0;c[g>>2]=b+1;c[j>
;>2]=a[b>>0];c[l>>2]=d[(c[q>>2]|0)+1>>0];c[q>>2]=(c[q>>2]|0)+2;
c[o>>2]=0;c[m>>2]=c[l>>2];while(1){if((c[o>>2]|0)>=(c[m>>2]|0))break a;c[
n>>2]=(c[o>>2]|0)+(c[m>>2]|0)>>1;c[r>>2]=(c[q>>2]|0)+(c[n>>
;2]<<1);c[r>>2]=12431+(d[c[r>>2]>>0]<<8|d[(c[r>>2]|0)+1>>0
]);c[k>>2]=d[c[r>>2]>>0]&127;if((c[k>>2]|0)==(c[j>>2]|0))break;e=c[n>
;>2]|0;if((c[k>>2]|0)<(c[j>>2]|0)){c[o>>2]=e+1;continue}else{c[m>>2]=e;continue
}}c[q>>2]=c[r>>2];while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>
;>0)break;r=c[g>>2]|0;c[g>>2]=r+1;c[j>>2]=a[r>>0];r=(d[c[q>>2]>>
;0]&128|0)!=0;c[q>>2]=(c[q>>2]|0)+1;if(r)if((c[j>>2]|0)!=(d[c[q>>2]>>0]
x26;127|0))break a;else continue;c[l>>2]=d[c[q>>2]>>0]&127;if(d[c[q>>2]>>
0]&128|0)c[q>>2]=(c[q>>2]|0)+2;c[q>>2]=(c[q>>2]|0)+1;while(1){if((c[l>>2]|
0)<=0)break a;c[p>>2]=d[c[q>>2]>>0]<<8|d[(c[q>>2]|0)+1>>0];c[s
x3e;>2]=12431+(c[p>>2]|0);if((c[j>>2]|0)==(d[c[s>>2]>>0]&127|0))break;c[l>
;>2]=(c[l>>2]|0)+-1;c[q>>2]=(c[q>>2]|0)+2}c[q>>2]=c[s>>2]}if((d[c[q>
x3e;2]>>0]&128|0)==0?d[(c[q>>2]|0)+1>>0]&128|0:0){c[f>>2]=d[(c[q>>2]|
0)+2>>0]<<8|d[(c[q>>2]|0)+3>>0];s=c[f>>2]|0;i=t;return s|0}}while(0);c[f>
x3e;2]=0;s=c[f>>2]|0;i=t;return s|0}function hr(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;w=i;i=i+144|0;h=w+128|0;j=w+124|0;k=w+120|0;l=w+116|0;m=w+112|0;n=w+108|0;p=w+104|0;q
=w+64|0;r=w+24|0;u=w+16|0;o=w+12|0;t=w+8|0;v=w+4|0;s=w;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>
;2]=e;c[m>>2]=f;c[n>>2]=g;f=q;e=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(e|0));c[(c[j>
x3e;2]|0)+16>>2]=0;c[(c[j>>2]|0)+20>>2]=0;b=hc(c[h>>2]|0,8,0,(c[k>>2]|0)+10|0,
0,p)|0;c[(c[j>>2]|0)+20>>2]=b;if(c[p>>2]|0){v=c[p>>2]|0;i=w;return v|0}c[t>>2]=
c[(c[j>>2]|0)+20>>2];c[u>>2]=0;while(1){if((c[u>>2]|0)>>>0>=(c[k>
;>2]|0)>>>0)break;c[s>>2]=Ya[c[l>>2]&127](c[n>>2]|0,c[u>>2]|0)|
0;if(c[s>>2]|0){ir(c[s>>2]|0,c[u>>2]|0,r,q);c[v>>2]=fr(c[s>>2]|0)|0;if(c[v>
;>2]&2147483647|0){jr(c[v>>2]|0,q);c[c[t>>2]>>2]=c[v>>2];c[(c[t>>2]|
0)+4>>2]=c[u>>2];c[t>>2]=(c[t>>2]|0)+8}if(c[m>>2]|0)Ra[c[m>>2]&
7](c[n>>2]|0,c[s>>2]|0)}c[u>>2]=(c[u>>2]|0)+1}c[u>>2]=0;while(1){if((c[u>
x3e;2]|0)>>>0>=10)break;if((c[q+(c[u>>2]<<2)>>2]|0)==1){c[c[t>>2]>
;>2]=c[5252+(c[u>>2]<<2)>>2];c[(c[t>>2]|0)+4>>2]=c[r+(c[u>>2]
x3c;<2)>>2];c[t>>2]=(c[t>>2]|0)+8}c[u>>2]=(c[u>>2]|0)+1}c[o>>2]=((
c[t>>2]|0)-(c[(c[j>>2]|0)+20>>2]|0)|0)/8|0;if(!(c[o>>2]|0)){Fb(c[h>>2]|0,c[(c[
j>>2]|0)+20>>2]|0);c[(c[j>>2]|0)+20>>2]=0;if(!(c[p>>2]|0))c[p>>2]=163
}else{if((c[o>>2]|0)>>>0<(((c[k>>2]|0)>>>0)/2|0)>>>0){v=hc
(c[h>>2]|0,8,c[k>>2]|0,c[o>>2]|0,c[(c[j>>2]|0)+20>>2]|0,p)|0;c[(c[j>>
;2]|0)+20>>2]=v;c[p>>2]=0}Bs(c[(c[j>>2]|0)+20>>2]|0,c[o>>2]|0,8,111)}c[(c[j>
;>2]|0)+16>>2]=c[o>>2];v=c[p>>2]|0;i=w;return v|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,l=0,m=0;m=i;i=i+32|0;f=m+16|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m;c[f>>2]=a;c[g>>2]=b;c[h
>>2]=d;c[j>>2]=e;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=10){l=7;break
}e=(Kr(67222+(c[5212+(c[k>>2]<<2)>>2]|0)|0,c[f>>2]|0)|0)==0;d=c[k>>2]|0;if(e)break
;c[k>>2]=d+1}if((l|0)==7){i=m;return}if(c[(c[j>>2]|0)+(d<<2)>>2]|0){i=m;return}c[(c[j>
;>2]|0)+(c[k>>2]<<2)>>2]=1;c[(c[h>>2]|0)+(c[k>>2]<<2)>>
;2]=c[g>>2];i=m;return}function jr(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;d=h+8|0;e=h+4|0;f=h;c[d>
x3e;2]=a;c[e>>2]=b;c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=10){g=6;break}b=c[f
x3e;>2]|0;if((c[d>>2]|0)==(c[5252+(c[f>>2]<<2)>>2]|0))break;c[f>>2]=b+1}if
((g|0)==6){i=h;return}c[(c[e>>2]|0)+(b<<2)>>2]=2;i=h;return}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;j=i;i=i+32|0;d=j+24|0;l=j+20|0;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[l>>2]=a;c[k>>
;2]=b;c[e>>2]=c[l>>2];c[f>>2]=c[k>>2];c[g>>2]=c[c[e>>2]>>2
]&2147483647;c[h>>2]=c[c[f>>2]>>2]&2147483647;do if((c[g>>2]|0)==(c[h>>
;2]|0)){if((c[c[e>>2]>>2]|0)>>>0>(c[c[f>>2]>>2]|0)>>>
0){c[d>>2]=1;break}if((c[c[e>>2]>>2]|0)>>>0<(c[c[f>>2]>>2]|
0)>>>0){c[d>>2]=-1;break}else{c[d>>2]=0;break}}else{if((c[g>>2]|0)>>>
;0>(c[h>>2]|0)>>>0){c[d>>2]=1;break}if((c[g>>2]|0)>>>0<(c[
h>>2]|0)>>>0){c[d>>2]=-1;break}else{c[d>>2]=0;break}}while(0);i=j;return c[d>
x3e;2]|0}function lr(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;m=i;i=i+32|0;d=m+28|0;n=m+24|0;e=m+20|0;j=m+16
|0;g=m+12|0;h=m+8|0;k=m+4|0;f=m;c[n>>2]=a;c[e>>2]=b;c[k>>2]=0;c[j>>2]=c[(c[n>>
2]|0)+20>>2];c[g>>2]=(c[j>>2]|0)+(c[(c[n>>2]|0)+16>>2]<<3)+-8;while(
1){if((c[j>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[h>>2]=(c[j>
x3e;2]|0)+((((c[g>>2]|0)-(c[j>>2]|0)|0)/8|0)>>1<<3);a=c[h>>2]|0;if((c[c[h>
;>2]>>2]|0)==(c[e>>2]|0)){l=4;break}c[f>>2]=c[a>>2]&2147483647;if((c[f>
x3e;2]|0)==(c[e>>2]|0))c[k>>2]=c[h>>2];if((c[j>>2]|0)==(c[g>>2]|0))break;a=c[h
>>2]|0;if((c[f>>2]|0)>>>0<(c[e>>2]|0)>>>0){c[j>>2]=a+
8;continue}else{c[g>>2]=a+-8;continue}}if((l|0)==4)c[k>>2]=a;if(c[k>>2]|0){c[d>>2]=c[(c[
k>>2]|0)+4>>2];n=c[d>>2]|0;i=m;return n|0}else{c[d>>2]=0;n=c[d>>2]|0;i=m;return
n|0}return 0}function mr(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;o=i;i=i+48|0;d=o+32|0;e=o+28|0;m=o+24
|0;g=o+20|0;l=o+16|0;j=o+12|0;k=o+8|0;h=o+4|0;f=o;c[d>>2]=a;c[e>>2]=b;c[m>>2]=0;c[g>>2]=(
c[c[e>>2]>>2]|0)+1;c[l>>2]=0;c[j>>2]=c[(c[d>>2]|0)+16>>2];while(1){if
((c[l>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;c[k>>2]=(c[l>>
;2]|0)+(((c[j>>2]|0)-(c[l>>2]|0)|0)>>>1);c[h>>2]=(c[(c[d>>2]|0)+20>
x3e;2]|0)+(c[k>>2]<<3);a=c[h>>2]|0;if((c[c[h>>2]>>2]|0)==(c[g>>2]|0)){
n=4;break}c[f>>2]=c[a>>2]&2147483647;if((c[f>>2]|0)==(c[g>>2]|0))c[m>>2]=
c[(c[h>>2]|0)+4>>2];a=c[k>>2]|0;if((c[f>>2]|0)>>>0<(c[g>>2
]|0)>>>0){c[l>>2]=a+1;continue}else{c[j>>2]=a;continue}}if((n|0)==4){c[m>>2]=c[a+4
x3e;>2];l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}if(c[m>
x3e;2]|0){l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}c[g>>2]=
0;if((c[l>>2]|0)>>>0>=(c[(c[d>>2]|0)+16>>2]|0)>>>0){l=c[g>
x3e;2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}c[h>>2]=(c[(c[d>>2]|
0)+20>>2]|0)+(c[l>>2]<<3);c[m>>2]=c[(c[h>>2]|0)+4>>2];c[g>>
;2]=c[c[h>>2]>>2]&2147483647;l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>
;>2]|0;i=o;return n|0}function nr(a){a=a|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=a;c[d>>2]=(c[d>>
;2]|0)>>>0>=258?0:a;i=e;return 67307+(b[8388+(c[d>>2]<<1)>>1]|0)|0}function or
(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[e>>2]=a;if((c[e>>2]|0)>>>0>=391){c[
d>>2]=0;a=c[d>>2]|0;i=f;return a|0}else{c[d>>2]=67307+(b[8904+(c[e>>2]<<1)>
;>1]|0);a=c[d>>2]|0;i=f;return a|0}return 0}function pr(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[f>>2]=c[f>>2];b=qc(5292,c[e>>2]|0)|0;i=d;return b|0}function
qr(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;e=h+12|0;f=h+8|0;d=h+4|0;g=h;c[f>>2]=a;c[d>>2]=b;if
(!(c[f>>2]|0)){c[e>>2]=40;g=c[e>>2]|0;i=h;return g|0}c[(c[f>>2]|0)+12>>2]=0;c[(
c[f>>2]|0)+16>>2]=c[d>>2];c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+8>>
;2]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>>2]|0)+24>>2]=0;c[g>>2]=fs(c[d>>
2]|0,71020)|0;if(!(c[g>>2]|0)){c[e>>2]=1;g=c[e>>2]|0;i=h;return g|0}us(c[g>>2]|0,0,2)|0;
d=ps(c[g>>2]|0)|0;c[(c[f>>2]|0)+4>>2]=d;d=c[g>>2]|0;if(c[(c[f>>2]|0)+4>
x3e;2]|0){us(d,0,0)|0;c[(c[f>>2]|0)+12>>2]=c[g>>2];c[(c[f>>2]|0)+20>>2]=25;c[(
c[f>>2]|0)+24>>2]=44;c[e>>2]=0;g=c[e>>2]|0;i=h;return g|0}else{ks(d)|0;c[e>>2]=
81;g=c[e>>2]|0;i=h;return g|0}return 0}function rr(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;m=
i;i=i+32|0;f=m+20|0;g=m+16|0;h=m+12|0;j=m+8|0;k=m+4|0;l=m;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>
x3e;2]=e;if((c[k>>2]|0)==0?(c[h>>2]|0)>>>0>(c[(c[g>>2]|0)+4>>2]|0)
x3e;>>0:0){c[f>>2]=1;a=c[f>>2]|0;i=m;return a|0}c[l>>2]=c[(c[g>>2]|0)+12>
x3e;2];if((c[(c[g>>2]|0)+8>>2]|0)!=(c[h>>2]|0))us(c[l>>2]|0,c[h>>2]|0,0)|0;c[f
>>2]=ts(c[j>>2]|0,1,c[k>>2]|0,c[l>>2]|0)|0;a=c[f>>2]|0;i=m;return a|0}function
sr(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;ks(c[(c[d>>2]|0)+12>>2]|0)|0;c[(c[d>>
;2]|0)+12>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;i=b;return}function tr(){
var a=0,b=0;b=i;i=i+16|0;a=b;c[a>>2]=Fs(16)|0;if(!(c[a>>2]|0)){a=c[a>>2]|0;i=b;return a|0}c[c[a>
;>2]>>2]=0;c[(c[a>>2]|0)+4>>2]=112;c[(c[a>>2]|0)+12>>2]=26;c[(c[a>
x3e;2]|0)+8>>2]=6;a=c[a>>2]|0;i=b;return a|0}function ur(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[f>>2]=c[f>>2];b=Fs(c[e>>2]|0)|0;i=d;return b|0}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;f=i;i=i+16|0;k=f+12|0;j=f+8|0;g=f+4|0;h=f;c[k>>2]=a;c[j
x3e;>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=c[k>>2];c[j>>2]=c[j>>2];d
=Hs(c[h>>2]|0,c[g>>2]|0)|0;i=f;return d|0}function wr(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[f>>2]=c[f>>2];Gs(c[e>>2]|0);i=d;return}function xr(a
){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Gs(c[d>>2]|0);i=b;return}function yr(a){a=a|0;var b=0,d=0;b=i
;i=i+16|0;d=b;c[d>>2]=c[a+60>>2];a=zr(Aa(6,d|0)|0)|0;i=b;return a|0}function zr(a){a=a|0;if(a>>>
;0>4294963200){c[(Ar()|0)>>2]=0-a;a=-1}return a|0}function Ar(){var a=0;if(!(c[18388]|0))a=73596;else a=c[(xa()|0
)+64>>2]|0;return a|0}function Br(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+80|0;f=g;c[b+36>>2]=47;if((c[
b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21505,c[f+8>>2]=g+12,Fa(54,f
|0)|0):0)a[b+75>>0]=-1;f=Cr(b,d,e)|0;i=g;return f|0}function Cr(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;q=i;i=i+48|0;n=q+16|0;m=q;e=q+32|0;o=a+28|0;f=c[o>>2]|0;c[e>>2]=f;p=a+20|0;f=(c[p>
;>2]|0)-f|0;c[e+4>>2]=f;c[e+8>>2]=b;c[e+12>>2]=d;k=a+60|0;l=a+44|0;b=2;f=f+d|0;while(1){if(!(
c[18388]|0)){c[n>>2]=c[k>>2];c[n+4>>2]=e;c[n+8>>2]=b;h=zr(Ka(146,n|0)|0)|0}else{Da(45,a|
0);c[m>>2]=c[k>>2];c[m+4>>2]=e;c[m+8>>2]=b;h=zr(Ka(146,m|0)|0)|0;ra(0)}if((f|0)==(h|0)){
f=6;break}if((h|0)<0){f=8;break}f=f-h|0;g=c[e+4>>2]|0;if(h>>>0<=g>>>0)if((b|0)==
2){c[o>>2]=(c[o>>2]|0)+h;j=g;b=2}else j=g;else{j=c[l>>2]|0;c[o>>2]=j;c[p>>2]=j
;j=c[e+12>>2]|0;h=h-g|0;e=e+8|0;b=b+-1|0}c[e>>2]=(c[e>>2]|0)+h;c[e+4>>2]=j-h}if((f|0)==6
){n=c[l>>2]|0;c[a+16>>2]=n+(c[a+48>>2]|0);a=n;c[o>>2]=a;c[p>>2]=a}else if((f|0
)==8){c[a+16>>2]=0;c[o>>2]=0;c[p>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else
d=d-(c[e+4>>2]|0)|0}i=q;return d|0}function Dr(a){a=a|0;if(!(c[a+68>>2]|0))Er(a);return}function Er(a){a=a|
0;return}function Fr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c
[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((zr(Ha(140,g|0)|0)|0)<0){c[e>
;>2]=-1;a=-1}else a=c[e>>2]|0;i=f;return a|0}function Gr(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;m=i;i=i+48|0;h=m+16|0;g=m;f=m+32|0;c[f>>2]=d;j=f+4|0;l=b+48|0;n=c[l>>2]|0;c[j>>2]=e-((n|0)!=0
&1);k=b+44|0;c[f+8>>2]=c[k>>2];c[f+12>>2]=n;if(!(c[18388]|0)){c[h>>2]=c[b+60>
x3e;2];c[h+4>>2]=f;c[h+8>>2]=2;f=zr(Ja(145,h|0)|0)|0}else{Da(46,b|0);c[g>>2]=c[b+60>>2];
c[g+4>>2]=f;c[g+8>>2]=2;f=zr(Ja(145,g|0)|0)|0;ra(0)}if((f|0)>=1){j=c[j>>2]|0;if(f>>
x3e;0>j>>>0){g=c[k>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-j);if(!(c[l>>
;2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else{c[b>>2]=c[b>>2
]|f&48^16;c[b+8>>2]=0;c[b+4>>2]=0}i=m;return f|0}function Hr(a){a=a|0;if(!(c[a+68>>2]|0))Er(a
);return}function Ir(a){a=a|0;var b=0;b=(Jr(a)|0)==0;return (b?a:a|32)|0}function Jr(a){a=a|0;return (a+-65|0)>>>
0<26|0}function Kr(b,c){b=b|0;c=c|0;var d=0,e=0;e=a[b>>0]|0;d=a[c>>0]|0;if(e<<24>>24
==0?1:e<<24>>24!=d<<24>>24)c=e;else{do{b=b+1|0;c=c+1|0;e=a[b>>0]|0;d=a[c>
x3e;0]|0}while(!(e<<24>>24==0?1:e<<24>>24!=d<<24>>24));c=e}return (c
&255)-(d&255)|0}function Lr(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;if(!e)c=0;else{f=a[b>>0]|0;a:do if(!(f<
;<24>>24))f=0;else while(1){e=e+-1|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>
;>24&((e|0)!=0&g<<24>>24!=0)))break a;b=b+1|0;c=c+1|0;f=a[b>>0]|0;if(!(f<<
;24>>24)){f=0;break}}while(0);c=(f&255)-(d[c>>0]|0)|0}return c|0}function Mr(b){b=b|0;var d=0,e=0;d=b+74
|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+44|0;if((c[d>>2]|0)>>>0>(c[e>
x3e;2]|0)>>>0)Oa[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[b+28>>2]=0;c[d>
x3e;2]=0;d=c[b>>2]|0;if(d&20)if(!(d&4))d=-1;else{c[b>>2]=d|32;d=-1}else{d=c[e>>2]|0;c[b+
8>>2]=d;c[b+4>>2]=d;d=0}return d|0}function Nr(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;s=i;i=i+224|0;o=s+120|0;r=s+80|0;q=s;p=s+136|0;f=r;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(
g|0));c[o>>2]=c[e>>2];if((Or(0,d,o,q,r)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)m=_r(b)|0;else
m=0;e=c[b>>2]|0;n=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;e=b+48|0;if(!(c[e>
x3e;2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=p;j=b+28|0;c[j>>2]=p;k=b+20|0;c[k>>2]=p;c[e>
;>2]=80;l=b+16|0;c[l>>2]=p+80;f=Or(b,d,o,q,r)|0;if(h){Oa[c[b+36>>2]&63](b,0,0)|0;f=(c[k>>
;2]|0)==0?-1:f;c[g>>2]=h;c[e>>2]=0;c[l>>2]=0;c[j>>2]=0;c[k>>2]=0}}else f=Or(b,
d,o,q,r)|0;e=c[b>>2]|0;c[b>>2]=e|n;if(m|0)Er(b);e=(e&32|0)==0?f:-1}i=s;return e|0}function Or(e,f,g,j,l
){e=e|0;f=f|0;g=g|0;j=j|0;l=l|0;var m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,
J=0,K=0,L=0,M=0,N=0,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;ia=i;i=i+624
|0;da=ia+24|0;fa=ia+16|0;ea=ia+588|0;aa=ia+576|0;ca=ia;W=ia+536|0;ha=ia+8|0;ga=ia+528|0;M=(e|0)!=0;N=W+40|0;V=N;W=W+39|0;X=ha+4|
0;Y=ea;Z=0-Y|0;$=aa+12|0;aa=aa+11|0;ba=$;O=ba-Y|0;P=-2-Y|0;Q=ba+2|0;R=da+288|0;S=ea+9|0;T=S;U=ea+8|0;m=0;o=0;n=0;y=f;a:while(1){
do if((m|0)>-1)if((o|0)>(2147483647-m|0)){c[(Ar()|0)>>2]=75;m=-1;break}else{m=o+m|0;break}while(0);f=a[y>
;>0]|0;if(!(f<<24>>24)){L=244;break}else o=y;b:while(1){switch(f<<24>>24){case 37:{
f=o;L=9;break b}case 0:{f=o;break b}default:{}}K=o+1|0;f=a[K>>0]|0;o=K}c:do if((L|0)==9)while(1){L=0;if((a[f+1>
x3e;0]|0)!=37)break c;o=o+1|0;f=f+2|0;if((a[f>>0]|0)==37)L=9;else break}while(0);w=o-y|0;if(M?(c[e>>2]&
32|0)==0:0)Pr(y,w,e)|0;if((o|0)!=(y|0)){o=w;y=f;continue}r=f+1|0;o=a[r>>0]|0;p=(o<<24>>24)+-48|0;if
(p>>>0<10){K=(a[f+2>>0]|0)==36;r=K?f+3|0:r;o=a[r>>0]|0;u=K?p:-1;n=K?1:n}else u=-1;f=o<
;<24>>24;d:do if((f&-32|0)==32){p=0;while(1){if(!(1<<f+-32&75913)){s=p;break d}p=1<<
;(o<<24>>24)+-32|p;r=r+1|0;o=a[r>>0]|0;f=o<<24>>24;if((f&-32|0)!=32){s=p;
break}}}else s=0;while(0);do if(o<<24>>24==42){o=r+1|0;f=(a[o>>0]|0)+-48|0;if(f>>>0
<10?(a[r+2>>0]|0)==36:0){c[l+(f<<2)>>2]=10;n=1;r=r+3|0;f=c[j+((a[o>>0]|0)+-48<
x3c;3)>>2]|0}else{if(n|0){m=-1;break a}if(!M){v=s;n=0;r=o;K=0;break}n=(c[g>>2]|0)+(4-1)&~(4-1);f=c[n>
;>2]|0;c[g>>2]=n+4;n=0;r=o}if((f|0)<0){v=s|8192;K=0-f|0}else{v=s;K=f}}else{p=(o<<24>>24)+-
48|0;if(p>>>0<10){f=r;o=0;do{o=(o*10|0)+p|0;f=f+1|0;p=(a[f>>0]|0)+-48|0}while(p>>>0
<10);if((o|0)<0){m=-1;break a}else{v=s;r=f;K=o}}else{v=s;K=0}}while(0);e:do if((a[r>>0]|0)==46){f=r+1|0;o=a[
f>>0]|0;if(o<<24>>24!=42){p=(o<<24>>24)+-48|0;if(p>>>0<10)
o=0;else{s=0;break}while(1){o=(o*10|0)+p|0;f=f+1|0;p=(a[f>>0]|0)+-48|0;if(p>>>0>=10){s=o;break e}}}
f=r+2|0;o=(a[f>>0]|0)+-48|0;if(o>>>0<10?(a[r+3>>0]|0)==36:0){c[l+(o<<2)>
x3e;2]=10;s=c[j+((a[f>>0]|0)+-48<<3)>>2]|0;f=r+4|0;break}if(n|0){m=-1;break a}if(M){J=(c[g>
x3e;2]|0)+(4-1)&~(4-1);s=c[J>>2]|0;c[g>>2]=J+4}else s=0}else{s=-1;f=r}while(0);t=0;while(1){o=(a[f>
;>0]|0)+-65|0;if(o>>>0>57){m=-1;break a}p=f+1|0;o=a[71023+(t*58|0)+o>>0]|0;r=o&255;if((r
+-1|0)>>>0<8){f=p;t=r}else{J=p;break}}if(!(o<<24>>24)){m=-1;break}p=(u|0)>-1;do if(
o<<24>>24==19)if(p){m=-1;break a}else L=52;else{if(p){c[l+(u<<2)>>2]=r;H=j+(u<<
;3)|0;I=c[H+4>>2]|0;L=ca;c[L>>2]=c[H>>2];c[L+4>>2]=I;L=52;break}if(!M){m=0;break a}Rr(ca
,r,g)}while(0);if((L|0)==52?(L=0,!M):0){o=w;y=J;continue}u=a[f>>0]|0;u=(t|0)!=0&(u&15|0)==3?u&-33:u;p=v
&-65537;I=(v&8192|0)==0?v:p;f:do switch(u|0){case 110:switch(t|0){case 0:{c[c[ca>>2]>>2]=m;o=w;y=J
;continue a}case 1:{c[c[ca>>2]>>2]=m;o=w;y=J;continue a}case 2:{o=c[ca>>2]|0;c[o>>2]=m;c
[o+4>>2]=((m|0)<0)<<31>>31;o=w;y=J;continue a}case 3:{b[c[ca>>2]>>1]=m;o=
w;y=J;continue a}case 4:{a[c[ca>>2]>>0]=m;o=w;y=J;continue a}case 6:{c[c[ca>>2]>>2]=m;o=
w;y=J;continue a}case 7:{o=c[ca>>2]|0;c[o>>2]=m;c[o+4>>2]=((m|0)<0)<<31>>
31;o=w;y=J;continue a}default:{o=w;y=J;continue a}}case 112:{t=I|8;s=s>>>0>8?s:8;u=120;L=64;break}case 88:case
120:{t=I;L=64;break}case 111:{p=ca;o=c[p>>2]|0;p=c[p+4>>2]|0;if((o|0)==0&(p|0)==0)f=N;else{f=N;do{f=f+-
1|0;a[f>>0]=o&7|48;o=Os(o|0,p|0,3)|0;p=C}while(!((o|0)==0&(p|0)==0))}if(!(I&8)){o=I;t=0;r=71503;L=77}else
{t=V-f|0;o=I;s=(s|0)>(t|0)?s:t+1|0;t=0;r=71503;L=77}break}case 105:case 100:{o=ca;f=c[o>>2]|0;o=c[o+4>>
2]|0;if((o|0)<0){f=Ls(0,0,f|0,o|0)|0;o=C;p=ca;c[p>>2]=f;c[p+4>>2]=o;p=1;r=71503;L=76;break f}if(!(I&
;2048)){r=I&1;p=r;r=(r|0)==0?71503:71505;L=76}else{p=1;r=71504;L=76}break}case 117:{o=ca;f=c[o>>2]|0;o=c[o+4>
;>2]|0;p=0;r=71503;L=76;break}case 99:{a[W>>0]=c[ca>>2];f=W;u=1;w=0;v=71503;o=N;break}case 109:{o=Tr(c[(
Ar()|0)>>2]|0)|0;L=82;break}case 115:{o=c[ca>>2]|0;o=o|0?o:73405;L=82;break}case 67:{c[ha>>2]=c[ca
>>2];c[X>>2]=0;c[ca>>2]=ha;f=ha;s=-1;L=86;break}case 83:{f=c[ca>>2]|0;if(!s){Vr(e,32,K,0
,I);f=0;L=97}else L=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{q=+h[ca>>3];c[fa>
;>2]=0;h[k>>3]=q;if((c[k+4>>2]|0)>=0)if(!(I&2048)){H=I&1;G=H;H=(H|0)==0?73413:73418}else
{G=1;H=73415}else{q=-q;G=1;H=73412}h[k>>3]=q;F=c[k+4>>2]&2146435072;do if(F>>>0<2146435072
|(F|0)==2146435072&0<0){x=+Yr(q,fa)*2.0;o=x!=0.0;if(o)c[fa>>2]=(c[fa>>2]|0)+-1;D=u|32;if((D|0)==97
){v=u&32;y=(v|0)==0?H:H+9|0;w=G|2;f=12-s|0;do if(!(s>>>0>11|(f|0)==0)){q=8.0;do{f=f+-1|0;q=q*16.0}while
((f|0)!=0);if((a[y>>0]|0)==45){q=-(q+(-x-q));break}else{q=x+q-q;break}}else q=x;while(0);o=c[fa>>2]|0;f=(o|0
)<0?0-o|0:o;f=Sr(f,((f|0)<0)<<31>>31,$)|0;if((f|0)==($|0)){a[aa>>0]=48;f=aa}a[f+-1>
x3e;0]=(o>>31&2)+43;t=f+-2|0;a[t>>0]=u+15;r=(s|0)<1;p=(I&8|0)==0;o=ea;while(1){H=~~q;f=o+1|0;
a[o>>0]=d[71487+H>>0]|v;q=(q-+(H|0))*16.0;do if((f-Y|0)==1){if(p&(r&q==0.0))break;a[f>>0
]=46;f=o+2|0}while(0);if(!(q!=0.0))break;else o=f}p=t;s=(s|0)!=0&(P+f|0)<(s|0)?Q+s-p|0:O-p+f|0;r=s+w|0;Vr(e,32,K,r,I);
if(!(c[e>>2]&32))Pr(y,w,e)|0;Vr(e,48,K,r,I^65536);o=f-Y|0;if(!(c[e>>2]&32))Pr(ea,o,e)|0;f=ba-p|0;Vr
(e,48,s-(o+f)|0,0,0);if(!(c[e>>2]&32))Pr(t,f,e)|0;Vr(e,32,K,r,I^8192);f=(r|0)<(K|0)?K:r;break}f=(s|0)<0
?6:s;if(o){o=(c[fa>>2]|0)+-28|0;c[fa>>2]=o;q=x*268435456.0}else{q=x;o=c[fa>>2]|0}F=(o|0)<0?da
:R;E=F;o=F;do{B=~~q>>>0;c[o>>2]=B;o=o+4|0;q=(q-+(B>>>0))*1.0e9}while(q!=0.0);p=o;o=c[fa
x3e;>2]|0;if((o|0)>0){s=F;while(1){t=(o|0)>29?29:o;r=p+-4|0;do if(r>>>0<s>>>0)
r=s;else{o=0;do{B=Ps(c[r>>2]|0,0,t|0)|0;B=Ms(B|0,C|0,o|0,0)|0;o=C;A=$s(B|0,o|0,1e9,0)|0;c[r>>2]=A;o=_s(B|0,o
|0,1e9,0)|0;r=r+-4|0}while(r>>>0>=s>>>0);if(!o){r=s;break}r=s+-4|0;c[r>>2]=o}while(
0);while(1){if(p>>>0<=r>>>0)break;o=p+-4|0;if(!(c[o>>2]|0))p=o;else break}o=(c[fa
x3e;>2]|0)-t|0;c[fa>>2]=o;if((o|0)>0)s=r;else break}}else r=F;if((o|0)<0){y=((f+25|0)/9|0)+1|0;z=(D|0)==
102;v=r;while(1){w=0-o|0;w=(w|0)>9?9:w;do if(v>>>0<p>>>0){o=(1<<w)+-1|0;s=1e9
x3e;>>w;r=0;t=v;do{B=c[t>>2]|0;c[t>>2]=(B>>>w)+r;r=_(B&o,s)|0;t=t+4|0}while(t
x3e;>>0<p>>>0);o=(c[v>>2]|0)==0?v+4|0:v;if(!r){r=o;break}c[p>>2]=r;r=o;p=p+4|0
}else r=(c[v>>2]|0)==0?v+4|0:v;while(0);o=z?F:r;p=(p-o>>2|0)>(y|0)?o+(y<<2)|0:p;o=(c[fa>
x3e;2]|0)+w|0;c[fa>>2]=o;if((o|0)>=0){z=r;break}else v=r}}else z=r;do if(z>>>0<p>>
x3e;0){o=(E-z>>2)*9|0;s=c[z>>2]|0;if(s>>>0<10)break;else r=10;do{r=r*10|0;o=o+1|0}while(
s>>>0>=r>>>0)}else o=0;while(0);A=(D|0)==103;B=(f|0)!=0;r=f-((D|0)!=102?o:0)+((B&A)<
;<31>>31)|0;if((r|0)<(((p-E>>2)*9|0)+-9|0)){t=r+9216|0;r=F+4+(((t|0)/9|0)+-1024<<2)|0;t=((
t|0)%9|0)+1|0;if((t|0)<9){s=10;do{s=s*10|0;t=t+1|0}while((t|0)!=9)}else s=10;w=c[r>>2]|0;y=(w>>>0)%(
s>>>0)|0;t=(r+4|0)==(p|0);do if(t&(y|0)==0)s=z;else{x=(((w>>>0)/(s>>>0)|0)&
;1|0)==0?9007199254740992.0:9007199254740994.0;v=(s|0)/2|0;if(y>>>0<v>>>0)q=.5;else q=t&(
y|0)==(v|0)?1.0:1.5;do if(G){if((a[H>>0]|0)!=45)break;x=-x;q=-q}while(0);t=w-y|0;c[r>>2]=t;if(!(x+q!=x)){s=z
;break}D=t+s|0;c[r>>2]=D;if(D>>>0>999999999){o=z;while(1){s=r+-4|0;c[r>>2]=0;if(s>
x3e;>0<o>>>0){o=o+-4|0;c[o>>2]=0}D=(c[s>>2]|0)+1|0;c[s>>2]=D;if(D>
x3e;>0>999999999)r=s;else{v=o;r=s;break}}}else v=z;o=(E-v>>2)*9|0;t=c[v>>2]|0;if(t>>>
;0<10){s=v;break}else s=10;do{s=s*10|0;o=o+1|0}while(t>>>0>=s>>>0);s=v}while(0);D=r+4|0;
z=s;p=p>>>0>D>>>0?D:p}w=0-o|0;while(1){if(p>>>0<=z>>>0){y=
0;D=p;break}r=p+-4|0;if(!(c[r>>2]|0))p=r;else{y=1;D=p;break}}do if(A){f=(B&1^1)+f|0;if((f|0)>(o|0)&(o|0
)>-5){u=u+-1|0;f=f+-1-o|0}else{u=u+-2|0;f=f+-1|0}p=I&8;if(p|0)break;do if(y){p=c[D+-4>>2]|0;if(!p){r=9;break
}if(!((p>>>0)%10|0)){s=10;r=0}else{r=0;break}do{s=s*10|0;r=r+1|0}while(!((p>>>0)%(s>>>
;0)|0|0))}else r=9;while(0);p=((D-E>>2)*9|0)+-9|0;if((u|32|0)==102){p=p-r|0;p=(p|0)<0?0:p;f=(f|0)<(p|0)?f:p;
p=0;break}else{p=p+o-r|0;p=(p|0)<0?0:p;f=(f|0)<(p|0)?f:p;p=0;break}}else p=I&8;while(0);v=f|p;s=(v|0)!=0&1;t
=(u|32|0)==102;if(t){o=(o|0)>0?o:0;u=0}else{r=(o|0)<0?w:o;r=Sr(r,((r|0)<0)<<31>>31,$)|0;if((ba
-r|0)<2)do{r=r+-1|0;a[r>>0]=48}while((ba-r|0)<2);a[r+-1>>0]=(o>>31&2)+43;E=r+-2|0;a
[E>>0]=u;o=ba-E|0;u=E}w=G+1+f+s+o|0;Vr(e,32,K,w,I);if(!(c[e>>2]&32))Pr(H,G,e)|0;Vr(e,48,K,w,I^65536);do
if(t){r=z>>>0>F>>>0?F:z;o=r;do{p=Sr(c[o>>2]|0,0,S)|0;do if((o|0)==(r|0)){if((p|0)!=(
S|0))break;a[U>>0]=48;p=U}else{if(p>>>0<=ea>>>0)break;Ns(ea|0,48,p-Y|0)|0;do p=p+-1
|0;while(p>>>0>ea>>>0)}while(0);if(!(c[e>>2]&32))Pr(p,T-p|0,e)|0;o=o+4|0}while
(o>>>0<=F>>>0);do if(v|0){if(c[e>>2]&32|0)break;Pr(73447,1,e)|0}while(0);if((f
|0)>0&o>>>0<D>>>0){p=o;while(1){o=Sr(c[p>>2]|0,0,S)|0;if(o>>>
;0>ea>>>0){Ns(ea|0,48,o-Y|0)|0;do o=o+-1|0;while(o>>>0>ea>>>0)}if(!(c[e
x3e;>2]&32))Pr(o,(f|0)>9?9:f,e)|0;p=p+4|0;o=f+-9|0;if(!((f|0)>9&p>>>0<D>>
x3e;0)){f=o;break}else f=o}}Vr(e,48,f+9|0,9,0)}else{t=y?D:z+4|0;if((f|0)>-1){s=(p|0)==0;r=z;do{o=Sr(c[r>>2]|0,0,S
)|0;if((o|0)==(S|0)){a[U>>0]=48;o=U}do if((r|0)==(z|0)){p=o+1|0;if(!(c[e>>2]&32))Pr(o,1,e)|0;if(s&(
f|0)<1){o=p;break}if(c[e>>2]&32|0){o=p;break}Pr(73447,1,e)|0;o=p}else{if(o>>>0<=ea>
x3e;>0)break;Ns(ea|0,48,o+Z|0)|0;do o=o+-1|0;while(o>>>0>ea>>>0)}while(0);p=T-o|0;if(!(c
[e>>2]&32))Pr(o,(f|0)>(p|0)?p:f,e)|0;f=f-p|0;r=r+4|0}while(r>>>0<t>>>0&
;(f|0)>-1)}Vr(e,48,f+18|0,18,0);if(c[e>>2]&32|0)break;Pr(u,ba-u|0,e)|0}while(0);Vr(e,32,K,w,I^8192);f=(w|0)
x3c;(K|0)?K:w}else{t=(u&32|0)!=0;s=q!=q|0.0!=0.0;o=s?0:G;r=o+3|0;Vr(e,32,K,r,p);f=c[e>>2]|0;if(!(f&32)){Pr(H
,o,e)|0;f=c[e>>2]|0}if(!(f&32))Pr(s?(t?73439:73443):t?73431:73435,3,e)|0;Vr(e,32,K,r,I^8192);f=(r|0)<(K|0)?K
:r}while(0);o=f;y=J;continue a}default:{f=y;p=I;u=s;w=0;v=71503;o=N}}while(0);g:do if((L|0)==64){p=ca;o=c[p>>2]|0;p=c[
p+4>>2]|0;r=u&32;if(!((o|0)==0&(p|0)==0)){f=N;do{f=f+-1|0;a[f>>0]=d[71487+(o&15)>>0
]|r;o=Os(o|0,p|0,4)|0;p=C}while(!((o|0)==0&(p|0)==0));L=ca;if((t&8|0)==0|(c[L>>2]|0)==0&(c[L+4>>
;2]|0)==0){o=t;t=0;r=71503;L=77}else{o=t;t=2;r=71503+(u>>4)|0;L=77}}else{f=N;o=t;t=0;r=71503;L=77}}else if((L|0)==76){
f=Sr(f,o,N)|0;o=I;t=p;L=77}else if((L|0)==82){L=0;I=Ur(o,0,s)|0;H=(I|0)==0;f=o;u=H?s:I-o|0;w=0;v=71503;o=H?o+s|0:I}else if((L|0)==
86){L=0;p=0;o=0;t=f;while(1){r=c[t>>2]|0;if(!r)break;o=Wr(ga,r)|0;if((o|0)<0|o>>>0>(s-p|0)>
;>>0)break;p=o+p|0;if(s>>>0>p>>>0)t=t+4|0;else break}if((o|0)<0){m=-1;break a}
Vr(e,32,K,p,I);if(!p){f=0;L=97}else{r=0;while(1){o=c[f>>2]|0;if(!o){f=p;L=97;break g}o=Wr(ga,o)|0;r=o+r|0;if((r|0)>
;(p|0)){f=p;L=97;break g}if(!(c[e>>2]&32))Pr(ga,o,e)|0;if(r>>>0>=p>>>0){f=p;L=
97;break}else f=f+4|0}}}while(0);if((L|0)==97){L=0;Vr(e,32,K,f,I^8192);o=(K|0)>(f|0)?K:f;y=J;continue}if((L|0)==77){L=0;p=(
s|0)>-1?o&-65537:o;o=ca;o=(c[o>>2]|0)!=0|(c[o+4>>2]|0)!=0;if((s|0)!=0|o){u=(o&1^1)+(V-f)|0;u=(
s|0)>(u|0)?s:u;w=t;v=r;o=N}else{f=N;u=0;w=t;v=r;o=N}}t=o-f|0;r=(u|0)<(t|0)?t:u;s=w+r|0;o=(K|0)<(s|0)?s:K;Vr(e,32,
o,s,p);if(!(c[e>>2]&32))Pr(v,w,e)|0;Vr(e,48,o,s,p^65536);Vr(e,48,r,t,0);if(!(c[e>>2]&32))Pr(f,t,e)|
0;Vr(e,32,o,s,p^8192);y=J}h:do if((L|0)==244)if(!e)if(n){m=1;while(1){n=c[l+(m<<2)>>2]|0;if(!n)break;Rr(j+(m
<<3)|0,n,g);m=m+1|0;if((m|0)>=10){m=1;break h}}if((m|0)<10)while(1){if(c[l+(m<<2)>>2]|0){
m=-1;break h}m=m+1|0;if((m|0)>=10){m=1;break}}else m=1}else m=0;while(0);i=ia;return m|0}function Pr(b,d,e){b=b|0;d=d|0;e=e
|0;var f=0,g=0,h=0,i=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(Qr(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((
h|0)==5){i=e+20|0;f=c[i>>2]|0;h=f;if((g-f|0)>>>0<d>>>0){f=Oa[c[e+36>>2]
x26;63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){f=d;while(1){if(!f){g=h;f=0;break b}g=f+-1|0;if((a[b+g>>
;0]|0)==10)break;else f=g}if((Oa[c[e+36>>2]&63](e,b,f)|0)>>>0<f>>>0)break a;d=
d-f|0;b=b+f|0;g=c[i>>2]|0}else{g=h;f=0}while(0);Ss(g|0,b|0,d|0)|0;c[i>>2]=(c[i>>2]|0)+d;f=f+d|0}while
(0);return f|0}function Qr(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if
(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;d=c[b+44>>2]|0;c[b+28>>2]=d;c[b+20>>2]=d
;c[b+16>>2]=d+(c[b+48>>2]|0);d=0}else{c[b>>2]=d|32;d=-1}return d|0}function Rr(a,b,d){a=a|0;b=b|0;
d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b
=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e
x3e;>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break
a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4
x3e;>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d
x3e;>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f
x3e;>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((
e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>
;>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1
);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>
;2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;
c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&
;~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1
);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function Sr(b,
c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295)while(1){e=$s(b
|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e|48;e=_s(b|0,c|0,10,0)|0;if(c>>>0>9|(c|0)==9&b>>
x3e;0>4294967295){b=e;c=C}else{b=e;break}}if(b)while(1){d=d+-1|0;a[d>>0]=(b>>>0)%10|0|48;if(b>
;>>0<10)break;else b=(b>>>0)/10|0}return d|0}function Tr(b){b=b|0;var c=0,e=0;c=0;while(1){if((d[71513
+c>>0]|0)==(b|0)){e=2;break}c=c+1|0;if((c|0)==87){c=87;b=71601;e=5;break}}if((e|0)==2)if(!c)b=71601;else{b=71601;e=5}if
((e|0)==5)while(1){e=b;while(1){b=e+1|0;if(!(a[e>>0]|0))break;else e=b}c=c+-1|0;if(!c)break;else e=5}return b|0}function
Ur(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if
((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5
;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24
>>24){f=_(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144
)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e
){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(
0);return (e|0?b:0)|0}function Vr(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;j=i;i=i+256|0;h=j;do if((d|0)>(e
|0)&(f&73728|0)==0){f=d-e|0;Ns(h|0,b|0,(f>>>0>256?256:f)|0)|0;b=c[a>>2]|0;g=(b&32|0
)==0;if(f>>>0>255){e=d-e|0;do{if(g){Pr(h,256,a)|0;b=c[a>>2]|0}f=f+-256|0;g=(b&32|0)==0}while(
f>>>0>255);if(g)f=e&255;else break}else if(!g)break;Pr(h,f,a)|0}while(0);i=j;return}function Wr(a,b){a=
a|0;b=b|0;if(!a)a=0;else a=Xr(a,b,0)|0;return a|0}function Xr(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128
){a[b>>0]=d;b=1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0
]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224
;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>
;0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>
x3e;0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(Ar()|0)>>2]=84;b=-1;break}}
else b=1;while(0);return b|0}function Yr(a,b){a=+a;b=b|0;return +(+Zr(a,b))}function Zr(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[k>
;>3]=a;d=c[k>>2]|0;e=c[k+4>>2]|0;f=Os(d|0,e|0,52)|0;f=f&2047;switch(f|0){case 0:{if(a!=0.0){a=+Zr(
a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>
x3e;2]=f+-1022;c[k>>2]=d;c[k+4>>2]=e&-2146435073|1071644672;a=+h[k>>3]}}return +a}function _r
(a){a=a|0;return 0}function $r(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)d=0;else{f=d;e=b;while(1){b=a[e>>0]|0;d
=a[c>>0]|0;if(b<<24>>24!=d<<24>>24)break;f=f+-1|0;if(!f){d=0;break a}else{e=e+
1|0;c=c+1|0}}d=(b&255)-(d&255)|0}while(0);return d|0}function as(a,b,c){a=a|0;b=b|0;c=c|0;bs(a,b,c)|0;return a|0}function
bs(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;do if(!((g^b)&3)){f=(e|0)!=0;a:do if(f&(g&3|0)!=0)while(1){g=a[d
>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0;if(!(f&
;(d&3|0)!=0)){h=5;break}}else h=5;while(0);if((h|0)==5)if(!f){e=0;break}if(a[d>>0]|0){b:do if(e>>>
0>3)do{f=c[d>>2]|0;if((f&-2139062144^-2139062144)&f+-16843009|0)break b;c[b>>2]=f;e=e+-4|0;d=
d+4|0;b=b+4|0}while(e>>>0>3);while(0);h=11}}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a
[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|
0}while(0);Ns(b|0,0,e|0)|0;return b|0}function cs(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=b;b=f;while(1){if(!(
a[d>>0]|0))break a;d=d+1|0;b=d;if(!(b&3)){b=d;e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if
(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;
while((a[b>>0]|0)!=0)}return b-f|0}function ds(a,b){a=a|0;b=b|0;es(a,b)|0;return a|0}function es(b,d){b=b|0;d=d|0;var
e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24
))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){
f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break
;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+
1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function fs(b,d){b=b|0;
d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+32|0;f=g+16|0;e=g;if(Ur(73449,a[d>>0]|0,4)|0){h=gs(d)|0|32768;c[e>>2]=b;c[
e+4>>2]=h;c[e+8>>2]=438;e=zr(Ca(5,e|0)|0)|0;if((e|0)>=0){b=js(e,d)|0;if(!b){c[f>>2]=e;Aa(6,f|
0)|0;b=0}}else b=0}else{c[(Ar()|0)>>2]=22;b=0}i=g;return b|0}function gs(b){b=b|0;var c=0,d=0,e=0;d=(hs(b,43)|0)==0;c=
a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(hs(b,120)|0)==0;d=e?d:d|128;b=(hs(b,101)|0)==0;b=b?d:d|524288
;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==
97?b|1024:b)|0}function hs(b,c){b=b|0;c=c|0;b=is(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?
b:0)|0}function is(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(cs(b)|0)|0;else{if(b&3){e=d&255;do{g=
a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b
=b+1|0}while((b&3|0)!=0)}f=_(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009
))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144
^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g
x3c;<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function js(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;o=i;i=i+112|0;n=o+40|0;l=o+24|0;k=o+16|0;g=o;m=o+52|0;f=a[d>>0]|0;if(Ur(73449
,f<<24>>24,4)|0){e=Fs(1144)|0;if(!e)e=0;else{h=e;j=h+112|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(
j|0));if(!(hs(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(hs(d,101)|0){c[g>>2]=b;c[g+4>
x3e;2]=2;c[g+8>>2]=1;sa(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[k>>2]=b;c[k
+4>>2]=3;f=sa(221,k|0)|0;if(!(f&1024)){c[l>>2]=b;c[l+4>>2]=4;c[l+8>>2]=f|1024;sa(221
,l|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+120
;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21505,c[n+8
>>2]=m,(Fa(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=48;c[e+36>>2]=47;c[e+40>>2]=
32;c[e+12>>2]=33;if(!(c[18389]|0))c[e+76>>2]=-1;ua(73580);f=c[18394]|0;c[e+56>>2]=f;if(f|0)c[f+52
x3e;>2]=e;c[18394]=e;Ga(73580)}}else{c[(Ar()|0)>>2]=22;e=0}i=o;return e|0}function ks(a){a=a|0;var b=0,d=0,e=0;e=(
c[a>>2]&1|0)!=0;if(!e){ua(73580);d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];
b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[18394]|0)==(a|0))c[18394]=b;Ga(73580)}b=ls(a)|0;b=Ta[c[a+12>>
;2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)Gs(d);if(!e)Gs(a);return b|0}function ls(a){a=a|0;var b=0,d=0;do if(a){if((c
[a+76>>2]|0)<=-1){b=ms(a)|0;break}d=(_r(a)|0)==0;b=ms(a)|0;if(!d)Er(a)}else{if(!(c[1356]|0))b=0;else b=ls(c[1356]|
0)|0;ua(73580);a=c[18394]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=_r(a)|0;else d=0;if((c[a+20>>2]|0)>>
;>0>(c[a+28>>2]|0)>>>0)b=ms(a)|0|b;if(d|0)Er(a);a=c[a+56>>2]|0}while((a|0)!=0);Ga(73580
)}while(0);return b|0}function ms(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;g=a+28|0;if((c[b>>2]|0)>>>
;0>(c[g>>2]|0)>>>0?(Oa[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)b=-1;else
{h=a+4|0;d=c[h>>2]|0;e=a+8|0;f=c[e>>2]|0;if(d>>>0<f>>>0)Oa[c[a+40>
x3e;2]&63](a,d-f|0,1)|0;c[a+16>>2]=0;c[g>>2]=0;c[b>>2]=0;c[e>>2]=0;c[h>>2
]=0;b=0}return b|0}function ns(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>
x3e;0>(c[a+28>>2]|0)>>>0?2:1;b=Oa[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a
+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function os(a){a=a|0;
var b=0;if((c[a+76>>2]|0)>-1){b=(_r(a)|0)==0;a=ns(a)|0}else a=ns(a)|0;return a|0}function ps(a){a=a|0;return os(a
)|0}function qs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(_r(a)|0)==0;b=rs(a,b,d)|0;if(!e)Er(a)}else
b=rs(a,b,d)|0;return b|0}function rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>
x3e;2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Oa[c[a+
36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>
;2]=0;if((Oa[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>
;2]=c[a>>2]&-17;b=0}}return b|0}function ss(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;b=Nr
(c[1327]|0,a,e)|0;i=d;return b|0}function ts(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;j=_(e,d)|0;if((c[f+76
x3e;>2]|0)>-1)k=_r(f)|0;else k=0;g=f+74|0;i=a[g>>0]|0;a[g>>0]=i+255|i;g=f+4|0;i=c[g>>2]|
0;h=(c[f+8>>2]|0)-i|0;if((h|0)>0){h=h>>>0<j>>>0?h:j;Ss(b|0,i|0,h|0)|0;c[g>
;>2]=i+h;b=b+h|0;g=j-h|0}else g=j;a:do if(!g)l=13;else{i=f+32|0;h=g;while(1){if(Mr(f)|0){e=h;break}g=Oa[c[i>>2]
x26;63](f,b,h)|0;if((g+1|0)>>>0<2){e=h;break}if((h|0)==(g|0)){l=13;break a}else{b=b+g|0;h=h-g|0}}if(k|0)Er(f
);e=((j-e|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(k)Er(f);return e|0}function us(a,b,c){a=a|0;b
=b|0;c=c|0;return qs(a,b,c)|0}function vs(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;w=i;i=i+1056|0;u=w+1024|0;v=w;k=a[e>>0]|0;do if(k<<24>>24){t=hs(b,k<<24>>24
)|0;if(t){j=a[e+1>>0]|0;if(j<<24>>24){f=t+1|0;m=a[f>>0]|0;if(m<<24>>
24){h=a[e+2>>0]|0;if(!(h<<24>>24)){j=j&255|(k&255)<<8;b=m;g=d[t>>0]
x3c;<8|m&255;while(1){g=g&65535;if((g|0)==(j|0))break;f=f+1|0;h=a[f>>0]|0;if(!(h<<24>>
;24)){b=0;break}else{b=h;g=h&255|g<<8}}b=b<<24>>24?f+-1|0:0;break}f=t+2|0;b=a[f>>0]|
0;if(b<<24>>24){g=a[e+3>>0]|0;if(!(g<<24>>24)){h=(j&255)<<16|(k
&255)<<24|(h&255)<<8;g=(b&255)<<8|(m&255)<<16|d[t>>0]<
;<24;if((g|0)!=(h|0))do{f=f+1|0;b=a[f>>0]|0;g=(b&255|g)<<8}while(!(b<<24>>24==
0|(g|0)==(h|0)));b=b<<24>>24?f+-2|0:0;break}f=t+3|0;l=a[f>>0]|0;if(l<<24>>24){
if(!(a[e+4>>0]|0)){h=(j&255)<<16|(k&255)<<24|(h&255)<<8|g&255;b=(b
x26;255)<<8|(m&255)<<16|l&255|d[t>>0]<<24;if((b|0)==(h|0))b=l;else{g=b;do{f=f+
1|0;b=a[f>>0]|0;g=b&255|g<<8}while(!(b<<24>>24==0|(g|0)==(h|0)))}b=b<<24
x3e;>24?f+-3|0:0;break};c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[u+12>>2]=0;c[u+16>
x3e;2]=0;c[u+20>>2]=0;c[u+24>>2]=0;c[u+28>>2]=0;b=k;g=0;while(1){if(!(a[t+g>>0]|0)){b=0;
break}f=u+(((b&255)>>>5&255)<<2)|0;c[f>>2]=c[f>>2]|1<<(b&31
);f=g+1|0;c[v+((b&255)<<2)>>2]=f;b=a[e+f>>0]|0;if(!(b<<24>>24)){n=23;break
}else g=f}a:do if((n|0)==23){b:do if(f>>>0>1){h=1;n=-1;b=0;c:while(1){m=1;while(1){d:while(1){j=1;while(1){k
=a[e+(j+n)>>0]|0;l=a[e+h>>0]|0;if(k<<24>>24!=l<<24>>24){m=h;j=k;h=l;
break d}if((j|0)==(m|0))break;j=j+1|0;h=j+b|0;if(h>>>0>=f>>>0){b=n;p=m;break c}}b=b+m|0;h=b+1
|0;if(h>>>0>=f>>>0){b=n;p=m;break c}}k=m-n|0;if((j&255)<=(h&255))break;b=m+1|0
;if(b>>>0<f>>>0){h=b;b=m;m=k}else{b=n;p=k;break c}}h=b+2|0;if(h>>>0>=f>
;>>0){p=1;break}else{n=b;b=b+1|0}}j=1;k=-1;h=0;while(1){l=h;h=1;while(1){o=l;e:while(1){l=1;while(1){n=a[e+(l+k)>
x3e;0]|0;m=a[e+j>>0]|0;if(n<<24>>24!=m<<24>>24){l=j;j=o;break e}if((l|0)==(h|0
))break;l=l+1|0;j=l+o|0;if(j>>>0>=f>>>0){j=p;break b}}o=o+h|0;j=o+1|0;if(j>>>0
>=f>>>0){j=p;break b}}h=l-k|0;if((n&255)>=(m&255)){h=j;break}j=l+1|0;if(j>>>0
x3e;=f>>>0){j=p;break b}}j=h+2|0;if(j>>>0>=f>>>0){k=h;j=p;h=1;break}else{k=h;h
=h+1|0}}}else{b=-1;k=-1;j=1;h=1}while(0);r=(k+1|0)>>>0>(b+1|0)>>>0;h=r?h:j;r=r?k:b;q=r+1|0;if
(!($r(e,e+h|0,q)|0))s=f-h|0;else{h=f-r+-1|0;s=0;h=(r>>>0>h>>>0?r:h)+1|0}n=f|63;o=(s|0)!=0;p=f
-h|0;b=t;m=0;l=t;f:while(1){j=b;do if((l-j|0)>>>0<f>>>0){k=Ur(l,0,n)|0;if(k)if((k-j|0)>
x3e;>0<f>>>0){b=0;break a}else break;else{k=l+n|0;break}}else k=l;while(0);j=a[b+g>>0]|0;if(!(
1<<(j&31)&c[u+(((j&255)>>>5&255)<<2)>>2])){b=b+f|0;m=0;l=k;continue
}t=c[v+((j&255)<<2)>>2]|0;j=f-t|0;if((f|0)!=(t|0)){b=b+(o&(m|0)!=0&j>>>0<
h>>>0?p:j)|0;m=0;l=k;continue}j=q>>>0>m>>>0?q:m;l=a[e+j>>0]|0;g:do if
(!(l<<24>>24))j=q;else{while(1){if(l<<24>>24!=(a[b+j>>0]|0))break;j=j+1|0;l=a[
e+j>>0]|0;if(!(l<<24>>24)){j=q;break g}}b=b+(j-r)|0;m=0;l=k;continue f}while(0);do{if(j>>
;>0<=m>>>0)break a;j=j+-1|0}while((a[e+j>>0]|0)==(a[b+j>>0]|0));b=b+h|0;m=s;l=k}}while
(0)}else b=0}else b=0}else b=0}else b=t}else b=0}while(0);i=w;return b|0}function ws(a){a=a|0;var b=0,c=0;c=(cs(a)|0)+1|0;b=Fs(c
)|0;if(!b)b=0;else Ss(b|0,a|0,c|0)|0;return b|0}function xs(a,b){a=a|0;b=b|0;return ys(a,b,(cs(a)|0)+1|0)|0}function ys(b,c,d){b
=b|0;c=c|0;d=d|0;var e=0;e=c&255;do{if(!d){c=0;break}d=d+-1|0;c=b+d|0}while((a[c>>0]|0)!=e<<24>>
;24);return c|0}function zs(a,b){a=a|0;b=b|0;ds(a+(cs(a)|0)|0,b)|0;return a|0}function As(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;e=a[b
>>0]|0;a:do if(!(e<<24>>24))b=0;else{g=e;f=e&255;while(1){e=a[c>>0]|0;if(!(e<
x3c;24>>24)){b=g;break a}if(g<<24>>24!=e<<24>>24?(g=Ir(f)|0,(g|0)!=(Ir(d[c>
;>0]|0)|0)):0)break;b=b+1|0;c=c+1|0;e=a[b>>0]|0;if(!(e<<24>>24)){b=0;break a}else{g=e;f=e&
;255}}b=a[b>>0]|0}while(0);g=Ir(b&255)|0;return g-(Ir(d[c>>0]|0)|0)|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,r=0;r=i;i=i+208|0;o=r+8|0;p=r;f=_(d,b)|0;n=p;c[n>>2]=1;c[n
+4>>2]=0;if(f|0){n=0-d|0;c[o+4>>2]=d;c[o>>2]=d;g=d;b=d;h=2;while(1){b=b+d+g|0;c[o+(h<<2)
x3e;>2]=b;if(b>>>0<f>>>0){m=g;g=b;h=h+1|0;b=m}else break}h=a+f+n|0;m=p+4|0;if(h>>
;>0>a>>>0){j=h;g=1;f=1;while(1){do if((g&3|0)==3){Cs(a,d,e,f,o);l=c[m>>2]|0;b=l<<
;30|(c[p>>2]|0)>>>2;c[p>>2]=b;c[m>>2]=l>>>2;f=f+2|0}else{b=f+-1|0;if
((c[o+(b<<2)>>2]|0)>>>0<(j-a|0)>>>0)Cs(a,d,e,f,o);else Es(a,d,e,p,f,0,o);
if((f|0)==1){b=c[p>>2]|0;c[m>>2]=b>>>31|c[m>>2]<<1;b=b<<1;c[p
x3e;>2]=b;f=0;break}if(b>>>0>31){g=c[p>>2]|0;c[m>>2]=g;c[p>>2]=0;b=f+-33|
0;f=g;g=0}else{f=c[m>>2]|0;g=c[p>>2]|0}c[m>>2]=g>>>(32-b|0)|f<<b;b=g<
;<b;c[p>>2]=b;f=1}while(0);g=b|1;c[p>>2]=g;b=a+d|0;if(b>>>0>=h>>>0){
a=f;break}else a=b}}else{b=a;a=1}Es(b,d,e,p,a,0,o);l=p+4|0;g=c[p>>2]|0;h=c[l>>2]|0;f=(h|0)==0;if(!((a|0)==1
x26;(g|0)==1&f)){k=h;while(1){if((a|0)<2){h=g+-1|0;do if(h){if(!(h&1)){f=0;do{f=f+1|0;h=h>>>1}while
(!(h&1|0))}else{if(f)f=32;else{if(!(k&1)){h=k;f=0}else{j=0;h=k;f=0;break}do{f=f+1|0;h=h>>>1}while(!(h
x26;1|0))}f=f+32|0}if(f>>>0>31)q=28;else{j=f;h=k}}else{f=32;q=28}while(0);if((q|0)==28){q=0;c[p>>2
]=k;c[m>>2]=0;j=f+-32|0;g=k;h=0}c[p>>2]=h<<32-j|g>>>j;c[m>>2]=h>>
;>j;b=b+n|0;h=f+a|0}else{j=g>>>30;h=a+-2|0;c[p>>2]=(g<<1&2147483646|j<<31
)^3;c[m>>2]=(j|k<<2)>>>1;Es(b+(0-(c[o+(h<<2)>>2]|0))+n|0,d,e,p,a+-1|0,1,o
);k=c[p>>2]|0;c[m>>2]=k>>>31|c[m>>2]<<1;c[p>>2]=k<<1|
1;b=b+n|0;Es(b,d,e,p,h,1,o)}g=c[p>>2]|0;k=c[l>>2]|0;f=(k|0)==0;if((h|0)==1&(g|0)==1&f)break;else a
=h}}}i=r;return}function Cs(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;p=i;i=i+240|0;o=p;c
[o>>2]=a;a:do if((e|0)>1){n=0-b|0;g=e;h=a;k=a;l=1;while(1){a=h+n|0;m=g+-2|0;j=a+(0-(c[f+(m<<2)>>
;2]|0))|0;if((Ya[d&127](k,j)|0)>-1?(Ya[d&127](k,a)|0)>-1:0){e=l;break a}e=l+1|0;h=o+(l<<2)|0;if((Ya
[d&127](j,a)|0)>-1){c[h>>2]=j;a=j;g=g+-1|0}else{c[h>>2]=a;g=m}if((g|0)<=1)break a;h=a;k=c[o
x3e;>2]|0;l=e}}else e=1;while(0);Ds(b,o,e);i=p;return}function Ds(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+
256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0>256?256:
a;Ss(e|0,c[b>>2]|0,f|0)|0;e=0;do{j=b+(e<<2)|0;e=e+1|0;Ss(c[j>>2]|0,c[b+(e<<2)>>
;2]|0,f|0)|0;c[j>>2]=(c[j>>2]|0)+f}while((e|0)!=(d|0));if((a|0)==(f|0))break a;a=a-f|0;e=c[g>>2]|0
}while(0);i=h;return}function Es(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;r=i;i=i+240|0;p=r;l=c[e>>2]|0;k=c[e+4>>2]|0;c[p>>2]=a;o=0-b|0;a:do if((k|0)!=0|(l|0)!=1?(j=a+(0-(
c[h+(f<<2)>>2]|0))|0,(Ya[d&127](j,a)|0)>=1):0){g=(g|0)==0;m=1;n=l;while(1){if(g&(f|0)>1){
e=a+o|0;g=c[h+(f+-2<<2)>>2]|0;if((Ya[d&127](e,j)|0)>-1){g=f;e=m;q=19;break a}if((Ya[d&127](e+(
0-g)|0,j)|0)>-1){g=f;e=m;q=19;break a}}e=m+1|0;c[p+(m<<2)>>2]=j;g=n+-1|0;do if(g){if(!(g&1)){a=0;do
{a=a+1|0;g=g>>>1}while(!(g&1|0))}else{if(!k)g=32;else{if(!(k&1)){a=k;g=0}else{l=0;g=n;a=0;break}do{g=g+
1|0;a=a>>>1}while(!(a&1|0))}a=g+32|0}if(a>>>0>31)q=15;else{l=a;g=n}}else{a=32;q=15}while
(0);if((q|0)==15){q=0;l=a+-32|0;g=k;k=0}n=k<<32-l|g>>>l;k=k>>>l;g=a+f|0;if(!((k|0)!=0|(n
|0)!=1)){a=j;q=19;break a}a=j+(0-(c[h+(g<<2)>>2]|0))|0;if((Ya[d&127](a,c[p>>2]|0)|0)<1){
a=j;f=g;g=0;q=18;break}else{l=j;f=g;g=1;j=a;m=e;a=l}}}else{e=1;q=18}while(0);if((q|0)==18?(g|0)==0:0){g=f;q=19}if((q|0)==19){Ds(
b,p,e);Cs(a,b,d,g,h)}i=r;return}function Fs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,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;do if(a>>>0<245){o=a>>>
;0<11?16:a+11&-8;a=o>>>3;j=c[18400]|0;b=j>>>a;if(b&3|0){b=(b&1^1)+a|0;d=73640+(
b<<1<<2)|0;e=d+8|0;f=c[e>>2]|0;g=f+8|0;h=c[g>>2]|0;do if((d|0)!=(h|0)){if(h>>
x3e;0<(c[18404]|0)>>>0)ya();a=h+12|0;if((c[a>>2]|0)==(f|0)){c[a>>2]=d;c[e>>2]=
h;break}else ya()}else c[18400]=j&~(1<<b);while(0);L=b<<3;c[f+4>>2]=L|3;L=f+L+4|0;c[L>
x3e;2]=c[L>>2]|1;L=g;return L|0}h=c[18402]|0;if(o>>>0>h>>>0){if(b|0){d=2<<
;a;d=b<<a&(d|0-d);d=(d&0-d)+-1|0;i=d>>>12&16;d=d>>>i;f=d>>>
;5&8;d=d>>>f;g=d>>>2&4;d=d>>>g;e=d>>>1&2;d=d>>
;>e;b=d>>>1&1;b=(f|i|g|e|b)+(d>>>b)|0;d=73640+(b<<1<<2)|0;e=d+8|0;g=
c[e>>2]|0;i=g+8|0;f=c[i>>2]|0;do if((d|0)!=(f|0)){if(f>>>0<(c[18404]|0)>>>
;0)ya();a=f+12|0;if((c[a>>2]|0)==(g|0)){c[a>>2]=d;c[e>>2]=f;k=c[18402]|0;break}else ya()}else{c[18400
]=j&~(1<<b);k=h}while(0);h=(b<<3)-o|0;c[g+4>>2]=o|3;e=g+o|0;c[e+4>>2]=h|1;c[e+h>
;>2]=h;if(k|0){f=c[18405]|0;b=k>>>3;d=73640+(b<<1<<2)|0;a=c[18400]|0;b=1<<b;if
(a&b){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{l=a;m=b}}else{c[
18400]=a|b;l=d+8|0;m=d}c[l>>2]=f;c[m+12>>2]=f;c[f+8>>2]=m;c[f+12>>2]=d}c[18402]=h;c[18405
]=e;L=i;return L|0}a=c[18401]|0;if(a){d=(a&0-a)+-1|0;K=d>>>12&16;d=d>>>K;J=d>>
x3e;5&8;d=d>>>J;L=d>>>2&4;d=d>>>L;b=d>>>1&2;d=d>
x3e;>b;e=d>>>1&1;e=c[73904+((J|K|L|b|e)+(d>>>e)<<2)>>2]|0;d=(c[e+4
x3e;>2]&-8)-o|0;b=e;while(1){a=c[b+16>>2]|0;if(!a){a=c[b+20>>2]|0;if(!a){j=e;break}}b=(c[a+4>
x3e;2]&-8)-o|0;L=b>>>0<d>>>0;d=L?b:d;b=a;e=L?a:e}g=c[18404]|0;if(j>>>0<
;g>>>0)ya();i=j+o|0;if(j>>>0>=i>>>0)ya();h=c[j+24>>2]|0;e=c[j+12>
;>2]|0;do if((e|0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if(!a){b=j+16|0;a=c[b>>2]|0;if(!a){n=0;break}}while(1){
e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;b=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;b=e}}if(b>>
;>0<g>>>0)ya();else{c[b>>2]=0;n=a;break}}else{f=c[j+8>>2]|0;if(f>>>0
<g>>>0)ya();a=f+12|0;if((c[a>>2]|0)!=(j|0))ya();b=e+8|0;if((c[b>>2]|0)==(j|0)){c[a>
x3e;2]=e;c[b>>2]=f;n=e;break}else ya()}while(0);do if(h|0){a=c[j+28>>2]|0;b=73904+(a<<2)|0;if((j|0
)==(c[b>>2]|0)){c[b>>2]=n;if(!n){c[18401]=c[18401]&~(1<<a);break}}else{if(h>>>
0<(c[18404]|0)>>>0)ya();a=h+16|0;if((c[a>>2]|0)==(j|0))c[a>>2]=n;else c[h+20>>
2]=n;if(!n)break}b=c[18404]|0;if(n>>>0<b>>>0)ya();c[n+24>>2]=h;a=c[j+16>>
2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else{c[n+16>>2]=a;c[a+24>>2]=n;break}while
(0);a=c[j+20>>2]|0;if(a|0)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[n+20>>2]=
a;c[a+24>>2]=n;break}}while(0);if(d>>>0<16){L=d+o|0;c[j+4>>2]=L|3;L=j+L+4|0;c[L>>
;2]=c[L>>2]|1}else{c[j+4>>2]=o|3;c[i+4>>2]=d|1;c[i+d>>2]=d;a=c[18402]|0;if(a|0){f=c[18405
]|0;b=a>>>3;e=73640+(b<<1<<2)|0;a=c[18400]|0;b=1<<b;if(a&b){a=e+8|0;b=c[a>
;>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{p=a;q=b}}else{c[18400]=a|b;p=e+8|0;q=e}c[p>
;>2]=f;c[q+12>>2]=f;c[f+8>>2]=q;c[f+12>>2]=e}c[18402]=d;c[18405]=i}L=j+8|0;return L|0}}}else
if(a>>>0<=4294967231){a=a+11|0;o=a&-8;j=c[18401]|0;if(j){d=0-o|0;a=a>>>8;if(a)if(o>
x3e;>0>16777215)i=31;else{q=(a+1048320|0)>>>16&8;E=a<<q;p=(E+520192|0)>>>
16&4;E=E<<p;i=(E+245760|0)>>>16&2;i=14-(p|q|i)+(E<<i>>>15)|0;i=o>
;>>(i+7|0)&1|i<<1}else i=0;b=c[73904+(i<<2)>>2]|0;a:do if(!b){a=0;b=0;E=86}else{f=d
;a=0;g=o<<((i|0)==31?0:25-(i>>>1)|0);h=b;b=0;while(1){e=c[h+4>>2]&-8;d=e-o|0;if(d>
x3e;>0<f>>>0)if((e|0)==(o|0)){a=h;b=h;E=90;break a}else b=h;else d=f;e=c[h+20>>2]|0;h=c[h+16+(
g>>>31<<2)>>2]|0;a=(e|0)==0|(e|0)==(h|0)?a:e;e=(h|0)==0;if(e){E=86;break}else{f=d;g=g<
x3c;(e&1^1)}}}while(0);if((E|0)==86){if((a|0)==0&(b|0)==0){a=2<<i;a=j&(a|0-a);if(!a)break;q=(a&0-a
)+-1|0;m=q>>>12&16;q=q>>>m;l=q>>>5&8;q=q>>>l;n=q>>
;>2&4;q=q>>>n;p=q>>>1&2;q=q>>>p;a=q>>>1&1;a=c[73904
+((l|m|n|p|a)+(q>>>a)<<2)>>2]|0}if(!a){i=d;j=b}else E=90}if((E|0)==90)while(1){E=0;q=(c[a+4
x3e;>2]&-8)-o|0;e=q>>>0<d>>>0;d=e?q:d;b=e?a:b;e=c[a+16>>2]|0;if(e|0){a=e;
E=90;continue}a=c[a+20>>2]|0;if(!a){i=d;j=b;break}else E=90}if((j|0)!=0?i>>>0<((c[18402]|0)-o|0)
x3e;>>0:0){f=c[18404]|0;if(j>>>0<f>>>0)ya();h=j+o|0;if(j>>>0>=h
>>>0)ya();g=c[j+24>>2]|0;d=c[j+12>>2]|0;do if((d|0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if
(!a){b=j+16|0;a=c[b>>2]|0;if(!a){s=0;break}}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;
e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<f>>>0)ya();else{c[b>>2]=0;
s=a;break}}else{e=c[j+8>>2]|0;if(e>>>0<f>>>0)ya();a=e+12|0;if((c[a>>2]|0)!=(
j|0))ya();b=d+8|0;if((c[b>>2]|0)==(j|0)){c[a>>2]=d;c[b>>2]=e;s=d;break}else ya()}while(0);do if(g|
0){a=c[j+28>>2]|0;b=73904+(a<<2)|0;if((j|0)==(c[b>>2]|0)){c[b>>2]=s;if(!s){c[18401]=c[18401
]&~(1<<a);break}}else{if(g>>>0<(c[18404]|0)>>>0)ya();a=g+16|0;if((c[a>>
;2]|0)==(j|0))c[a>>2]=s;else c[g+20>>2]=s;if(!s)break}b=c[18404]|0;if(s>>>0<b>>
;>0)ya();c[s+24>>2]=g;a=c[j+16>>2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else
{c[s+16>>2]=a;c[a+24>>2]=s;break}while(0);a=c[j+20>>2]|0;if(a|0)if(a>>>0<(c[18404
]|0)>>>0)ya();else{c[s+20>>2]=a;c[a+24>>2]=s;break}}while(0);do if(i>>>0>=
16){c[j+4>>2]=o|3;c[h+4>>2]=i|1;c[h+i>>2]=i;a=i>>>3;if(i>>>0<256
){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>
;>0<(c[18404]|0)>>>0)ya();else{u=a;v=b}}else{c[18400]=b|a;u=d+8|0;v=d}c[u>>2]=h;c[v+12>
x3e;2]=h;c[h+8>>2]=v;c[h+12>>2]=d;break}a=i>>>8;if(a)if(i>>>0>16777215)d=
31;else{K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|0)>>>16&4;L=L<<J;d
=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>>15)|0;d=i>>>(d+7|0)&1
|d<<1}else d=0;e=73904+(d<<2)|0;c[h+28>>2]=d;a=h+16|0;c[a+4>>2]=0;c[a>>2]=0;a=
c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[e>>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8
>>2]=h;break}f=i<<((d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>
x3e;2]&-8|0)==(i|0)){d=a;E=148;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d){E=145;break
}else{f=f<<1;a=d}}if((E|0)==145)if(b>>>0<(c[18404]|0)>>>0)ya();else{c[b>>
2]=h;c[h+24>>2]=a;c[h+12>>2]=h;c[h+8>>2]=h;break}else if((E|0)==148){a=d+8|0;b=c[a>>2]|0
;L=c[18404]|0;if(b>>>0>=L>>>0&d>>>0>=L>>>0){c[b+12>
;>2]=h;c[a>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;c[h+24>>2]=0;break}else ya()}}else{L=i+o|
0;c[j+4>>2]=L|3;L=j+L+4|0;c[L>>2]=c[L>>2]|1}while(0);L=j+8|0;return L|0}}}else o=-1;while(0);d=c[18402
]|0;if(d>>>0>=o>>>0){a=d-o|0;b=c[18405]|0;if(a>>>0>15){L=b+o|0;c[18405]=L
;c[18402]=a;c[L+4>>2]=a|1;c[L+a>>2]=a;c[b+4>>2]=o|3}else{c[18402]=0;c[18405]=0;c[b+4>>2]=
d|3;L=b+d+4|0;c[L>>2]=c[L>>2]|1}L=b+8|0;return L|0}a=c[18403]|0;if(a>>>0>o>>
x3e;0){J=a-o|0;c[18403]=J;L=c[18406]|0;K=L+o|0;c[18406]=K;c[K+4>>2]=J|1;c[L+4>>2]=o|3;L=L+8|0;return L|0}do
if(!(c[18518]|0)){a=Ia(30)|0;if(!(a+-1&a)){c[18520]=a;c[18519]=a;c[18521]=-1;c[18522]=-1;c[18523]=0;c[18511]=0;c[18518]=(va
(0)|0)&-16^1431655768;break}else ya()}while(0);h=o+48|0;g=c[18520]|0;i=o+47|0;f=g+i|0;g=0-g|0;j=f&g;if(j>>
x3e;0<=o>>>0){L=0;return L|0}a=c[18510]|0;if(a|0?(u=c[18508]|0,v=u+j|0,v>>>0<=u>>
;>0|v>>>0>a>>>0):0){L=0;return L|0}b:do if(!(c[18511]&4)){a=c[18406]|0;c:do if(a){d
=74048;while(1){b=c[d>>2]|0;if(b>>>0<=a>>>0?(r=d+4|0,(b+(c[r>>2]|0)|0)>
;>>0>a>>>0):0){e=d;d=r;break}d=c[d+8>>2]|0;if(!d){E=173;break c}}a=f-(c[18403]|0)&g
;if(a>>>0<2147483647){b=Ba(a|0)|0;if((b|0)==((c[e>>2]|0)+(c[d>>2]|0)|0)){if((b|0)!=(-1|0
)){h=b;f=a;E=193;break b}}else E=183}}else E=173;while(0);do if((E|0)==173?(t=Ba(0)|0,(t|0)!=(-1|0)):0){a=t;b=c[18519]|0;d=b+-1|
0;if(!(d&a))a=j;else a=j-a+(d+a&0-b)|0;b=c[18508]|0;d=b+a|0;if(a>>>0>o>>>0&a
x3e;>>0<2147483647){v=c[18510]|0;if(v|0?d>>>0<=b>>>0|d>>>0>
;v>>>0:0)break;b=Ba(a|0)|0;if((b|0)==(t|0)){h=t;f=a;E=193;break b}else E=183}}while(0);d:do if((E|0)==183){d=0-a|
0;do if(h>>>0>a>>>0&(a>>>0<2147483647&(b|0)!=(-1|0))?(w=c[18520
]|0,w=i-a+w&0-w,w>>>0<2147483647):0)if((Ba(w|0)|0)==(-1|0)){Ba(d|0)|0;break d}else{a=w+a|0;break}while(
0);if((b|0)!=(-1|0)){h=b;f=a;E=193;break b}}while(0);c[18511]=c[18511]|4;E=190}else E=190;while(0);if((((E|0)==190?j>>
x3e;0<2147483647:0)?(x=Ba(j|0)|0,y=Ba(0)|0,x>>>0<y>>>0&((x|0)!=(-1|0)&(y|0)!=(-
1|0))):0)?(z=y-x|0,z>>>0>(o+40|0)>>>0):0){h=x;f=z;E=193}if((E|0)==193){a=(c[18508]|0)+f|0;c[18508
]=a;if(a>>>0>(c[18509]|0)>>>0)c[18509]=a;i=c[18406]|0;do if(i){e=74048;do{a=c[e>>2]|
0;b=e+4|0;d=c[b>>2]|0;if((h|0)==(a+d|0)){A=a;B=b;C=d;D=e;E=203;break}e=c[e+8>>2]|0}while((e|0)!=0);if(((E|0)==
203?(c[D+12>>2]&8|0)==0:0)?i>>>0<h>>>0&i>>>0>=A>
x3e;>0:0){c[B>>2]=C+f;L=i+8|0;L=(L&7|0)==0?0:0-L&7;K=i+L|0;L=f-L+(c[18403]|0)|0;c[18406]=K;c[18403]=L;c
[K+4>>2]=L|1;c[K+L+4>>2]=40;c[18407]=c[18522];break}a=c[18404]|0;if(h>>>0<a>>
x3e;0){c[18404]=h;j=h}else j=a;d=h+f|0;a=74048;while(1){if((c[a>>2]|0)==(d|0)){b=a;E=211;break}a=c[a+8>>2]|0
;if(!a){b=74048;break}}if((E|0)==211)if(!(c[a+12>>2]&8)){c[b>>2]=h;l=a+4|0;c[l>>2]=(c[l>
x3e;2]|0)+f;l=h+8|0;l=h+((l&7|0)==0?0:0-l&7)|0;a=d+8|0;a=d+((a&7|0)==0?0:0-a&7)|0;k=l+o|0;g=a-l-o|0;c[l+4>
;>2]=o|3;do if((a|0)!=(i|0)){if((a|0)==(c[18405]|0)){L=(c[18402]|0)+g|0;c[18402]=L;c[18405]=k;c[k+4>>2]=L|1;c[k+L
>>2]=L;break}b=c[a+4>>2]|0;if((b&3|0)==1){i=b&-8;f=b>>>3;e:do if(b>>>
;0>=256){h=c[a+24>>2]|0;e=c[a+12>>2]|0;do if((e|0)==(a|0)){d=a+16|0;e=d+4|0;b=c[e>>2]|0;if(!b
){b=c[d>>2]|0;if(!b){J=0;break}}else d=e;while(1){e=b+20|0;f=c[e>>2]|0;if(f|0){b=f;d=e;continue}e=b+16|0;f=c
[e>>2]|0;if(!f)break;else{b=f;d=e}}if(d>>>0<j>>>0)ya();else{c[d>>2]=0;J=b
;break}}else{f=c[a+8>>2]|0;if(f>>>0<j>>>0)ya();b=f+12|0;if((c[b>>2]|0)!=(
a|0))ya();d=e+8|0;if((c[d>>2]|0)==(a|0)){c[b>>2]=e;c[d>>2]=f;J=e;break}else ya()}while(0);if(!h)break
;b=c[a+28>>2]|0;d=73904+(b<<2)|0;do if((a|0)!=(c[d>>2]|0)){if(h>>>0<(c[18404]|
0)>>>0)ya();b=h+16|0;if((c[b>>2]|0)==(a|0))c[b>>2]=J;else c[h+20>>2]=J;if(!J)break
e}else{c[d>>2]=J;if(J|0)break;c[18401]=c[18401]&~(1<<b);break e}while(0);e=c[18404]|0;if(J>>
x3e;0<e>>>0)ya();c[J+24>>2]=h;b=a+16|0;d=c[b>>2]|0;do if(d|0)if(d>>>0<
;e>>>0)ya();else{c[J+16>>2]=d;c[d+24>>2]=J;break}while(0);b=c[b+4>>2]|0;if(!b)break
;if(b>>>0<(c[18404]|0)>>>0)ya();else{c[J+20>>2]=b;c[b+24>>2]=J;break}}else
{d=c[a+8>>2]|0;e=c[a+12>>2]|0;b=73640+(f<<1<<2)|0;do if((d|0)!=(b|0)){if(d>>
x3e;0<j>>>0)ya();if((c[d+12>>2]|0)==(a|0))break;ya()}while(0);if((e|0)==(d|0)){c[18400]=c[18400]
x26;~(1<<f);break}do if((e|0)==(b|0))G=e+8|0;else{if(e>>>0<j>>>0)ya();b=e+8|0;if((c
[b>>2]|0)==(a|0)){G=b;break}ya()}while(0);c[d+12>>2]=e;c[G>>2]=d}while(0);a=a+i|0;g=i+g|0}a=a+4|0;
c[a>>2]=c[a>>2]&-2;c[k+4>>2]=g|1;c[k+g>>2]=g;a=g>>>3;if(g>>
;>0<256){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;do if(!(b&a)){c[18400]=b|a;K=d+8|0
;L=d}else{a=d+8|0;b=c[a>>2]|0;if(b>>>0>=(c[18404]|0)>>>0){K=a;L=b;break}ya()}while(
0);c[K>>2]=k;c[L+12>>2]=k;c[k+8>>2]=L;c[k+12>>2]=d;break}a=g>>>8;do if(!a
)d=0;else{if(g>>>0>16777215){d=31;break}K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192
|0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>
;>15)|0;d=g>>>(d+7|0)&1|d<<1}while(0);e=73904+(d<<2)|0;c[k+28>>2]=d;a=k+16
|0;c[a+4>>2]=0;c[a>>2]=0;a=c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[e>>2]=k;c[k+
24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}f=g<<((d|0)==31?0:25-(d>>>1)|0);a
=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0)==(g|0)){d=a;E=281;break}b=a+16+(f>>>31<<
;2)|0;d=c[b>>2]|0;if(!d){E=278;break}else{f=f<<1;a=d}}if((E|0)==278)if(b>>>0<(c[18404]|0
)>>>0)ya();else{c[b>>2]=k;c[k+24>>2]=a;c[k+12>>2]=k;c[k+8>>2]=k;break}else
if((E|0)==281){a=d+8|0;b=c[a>>2]|0;L=c[18404]|0;if(b>>>0>=L>>>0&d>>
x3e;0>=L>>>0){c[b+12>>2]=k;c[a>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;c[k+24
>>2]=0;break}else ya()}}else{L=(c[18403]|0)+g|0;c[18403]=L;c[18406]=k;c[k+4>>2]=L|1}while(0);L=l+8|0;return
L|0}else b=74048;while(1){a=c[b>>2]|0;if(a>>>0<=i>>>0?(F=a+(c[b+4>>2]|0)|
0,F>>>0>i>>>0):0){b=F;break}b=c[b+8>>2]|0}g=b+-47|0;d=g+8|0;d=g+((d&7|0)==0?0:
0-d&7)|0;g=i+16|0;d=d>>>0<g>>>0?i:d;a=d+8|0;e=h+8|0;e=(e&7|0)==0?0:0-e&7;L=h+e
|0;e=f+-40-e|0;c[18406]=L;c[18403]=e;c[L+4>>2]=e|1;c[L+e+4>>2]=40;c[18407]=c[18522];e=d+4|0;c[e>>2
]=27;c[a>>2]=c[18512];c[a+4>>2]=c[18513];c[a+8>>2]=c[18514];c[a+12>>2]=c[18515];c[18512]=
h;c[18513]=f;c[18515]=0;c[18514]=a;a=d+24|0;do{a=a+4|0;c[a>>2]=7}while((a+4|0)>>>0<b>>
x3e;0);if((d|0)!=(i|0)){h=d-i|0;c[e>>2]=c[e>>2]&-2;c[i+4>>2]=h|1;c[d>>2]=h;a=h>
;>>3;if(h>>>0<256){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;if(b&
;a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{H=a;I=b}}else{c[18400]=
b|a;H=d+8|0;I=d}c[H>>2]=i;c[I+12>>2]=i;c[i+8>>2]=I;c[i+12>>2]=d;break}a=h>>>
;8;if(a)if(h>>>0>16777215)d=31;else{K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|
0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>
;>15)|0;d=h>>>(d+7|0)&1|d<<1}else d=0;f=73904+(d<<2)|0;c[i+28>>2]=d;c[i+20
>>2]=0;c[g>>2]=0;a=c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[f>>2]=i;c[i+24>
x3e;2]=f;c[i+12>>2]=i;c[i+8>>2]=i;break}e=h<<((d|0)==31?0:25-(d>>>1)|0);a=c[f>
x3e;2]|0;while(1){if((c[a+4>>2]&-8|0)==(h|0)){d=a;E=307;break}b=a+16+(e>>>31<<2)|0;d=c[b
>>2]|0;if(!d){E=304;break}else{e=e<<1;a=d}}if((E|0)==304)if(b>>>0<(c[18404]|0)>>
;>0)ya();else{c[b>>2]=i;c[i+24>>2]=a;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((E|0)==
307){a=d+8|0;b=c[a>>2]|0;L=c[18404]|0;if(b>>>0>=L>>>0&d>>>0>
;=L>>>0){c[b+12>>2]=i;c[a>>2]=i;c[i+8>>2]=b;c[i+12>>2]=d;c[i+24>>
;2]=0;break}else ya()}}}else{L=c[18404]|0;if((L|0)==0|h>>>0<L>>>0)c[18404]=h;c[18512]=h;c[18513
]=f;c[18515]=0;c[18409]=c[18518];c[18408]=-1;a=0;do{L=73640+(a<<1<<2)|0;c[L+12>>2]=L;c[L+8>
x3e;2]=L;a=a+1|0}while((a|0)!=32);L=h+8|0;L=(L&7|0)==0?0:0-L&7;K=h+L|0;L=f+-40-L|0;c[18406]=K;c[18403]=L;c[K+4>
x3e;2]=L|1;c[K+L+4>>2]=40;c[18407]=c[18522]}while(0);a=c[18403]|0;if(a>>>0>o>>>0){J
=a-o|0;c[18403]=J;L=c[18406]|0;K=L+o|0;c[18406]=K;c[K+4>>2]=J|1;c[L+4>>2]=o|3;L=L+8|0;return L|0}}c[(Ar()|0)
x3e;>2]=12;L=0;return L|0}function Gs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;if(!a)return
;d=a+-8|0;h=c[18404]|0;if(d>>>0<h>>>0)ya();a=c[a+-4>>2]|0;b=a&3;if((b|0)==1)ya
();e=a&-8;m=d+e|0;do if(!(a&1)){a=c[d>>2]|0;if(!b)return;k=d+(0-a)|0;j=a+e|0;if(k>>>0<h
x3e;>>0)ya();if((k|0)==(c[18405]|0)){a=m+4|0;b=c[a>>2]|0;if((b&3|0)!=3){q=k;g=j;break}c[18402]=j;c[a>
;>2]=b&-2;c[k+4>>2]=j|1;c[k+j>>2]=j;return}e=a>>>3;if(a>>>0<256
){b=c[k+8>>2]|0;d=c[k+12>>2]|0;a=73640+(e<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>
;0<h>>>0)ya();if((c[b+12>>2]|0)!=(k|0))ya()}if((d|0)==(b|0)){c[18400]=c[18400]&~(1<<
;e);q=k;g=j;break}if((d|0)!=(a|0)){if(d>>>0<h>>>0)ya();a=d+8|0;if((c[a>>2]|0)==(k|0
))f=a;else ya()}else f=d+8|0;c[b+12>>2]=d;c[f>>2]=b;q=k;g=j;break}f=c[k+24>>2]|0;d=c[k+12>>
;2]|0;do if((d|0)==(k|0)){b=k+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){i=0;break}}else b=d;while(1
){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>
;>0<h>>>0)ya();else{c[b>>2]=0;i=a;break}}else{e=c[k+8>>2]|0;if(e>>>0
<h>>>0)ya();a=e+12|0;if((c[a>>2]|0)!=(k|0))ya();b=d+8|0;if((c[b>>2]|0)==(k|0)){c[a>
x3e;2]=d;c[b>>2]=e;i=d;break}else ya()}while(0);if(f){a=c[k+28>>2]|0;b=73904+(a<<2)|0;if((k|0)==(c
[b>>2]|0)){c[b>>2]=i;if(!i){c[18401]=c[18401]&~(1<<a);q=k;g=j;break}}else{if(f>>>
;0<(c[18404]|0)>>>0)ya();a=f+16|0;if((c[a>>2]|0)==(k|0))c[a>>2]=i;else c[f+20>>
;2]=i;if(!i){q=k;g=j;break}}d=c[18404]|0;if(i>>>0<d>>>0)ya();c[i+24>>2]=f;a=k+16|0;
b=c[a>>2]|0;do if(b|0)if(b>>>0<d>>>0)ya();else{c[i+16>>2]=b;c[b+24>
x3e;2]=i;break}while(0);a=c[a+4>>2]|0;if(a)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[i+
20>>2]=a;c[a+24>>2]=i;q=k;g=j;break}else{q=k;g=j}}else{q=k;g=j}}else{q=d;g=e}while(0);if(q>>>
0>=m>>>0)ya();a=m+4|0;b=c[a>>2]|0;if(!(b&1))ya();if(!(b&2)){if((m|0)==(c[18406]|0)){p=(c
[18403]|0)+g|0;c[18403]=p;c[18406]=q;c[q+4>>2]=p|1;if((q|0)!=(c[18405]|0))return;c[18405]=0;c[18402]=0;return}if((m|0)==(
c[18405]|0)){p=(c[18402]|0)+g|0;c[18402]=p;c[18405]=q;c[q+4>>2]=p|1;c[q+p>>2]=p;return}g=(b&-8)+g|0;e=b
>>>3;do if(b>>>0>=256){f=c[m+24>>2]|0;a=c[m+12>>2]|0;do if((a|0)==(m|0)){
b=m+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){n=0;break}}else b=d;while(1){d=a+20|0;e=c[d>>
;2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<(c[18404]|0
)>>>0)ya();else{c[b>>2]=0;n=a;break}}else{b=c[m+8>>2]|0;if(b>>>0<(c[18404
]|0)>>>0)ya();d=b+12|0;if((c[d>>2]|0)!=(m|0))ya();e=a+8|0;if((c[e>>2]|0)==(m|0)){c[d>>
;2]=a;c[e>>2]=b;n=a;break}else ya()}while(0);if(f|0){a=c[m+28>>2]|0;b=73904+(a<<2)|0;if((m|0)==(c[
b>>2]|0)){c[b>>2]=n;if(!n){c[18401]=c[18401]&~(1<<a);break}}else{if(f>>>0<
;(c[18404]|0)>>>0)ya();a=f+16|0;if((c[a>>2]|0)==(m|0))c[a>>2]=n;else c[f+20>>2]=n;if
(!n)break}d=c[18404]|0;if(n>>>0<d>>>0)ya();c[n+24>>2]=f;a=m+16|0;b=c[a>>2
]|0;do if(b|0)if(b>>>0<d>>>0)ya();else{c[n+16>>2]=b;c[b+24>>2]=n;break}while
(0);a=c[a+4>>2]|0;if(a|0)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[n+20>>2]=a
;c[a+24>>2]=n;break}}}else{b=c[m+8>>2]|0;d=c[m+12>>2]|0;a=73640+(e<<1<<2)|0;if
((b|0)!=(a|0)){if(b>>>0<(c[18404]|0)>>>0)ya();if((c[b+12>>2]|0)!=(m|0))ya()}if((d|0
)==(b|0)){c[18400]=c[18400]&~(1<<e);break}if((d|0)!=(a|0)){if(d>>>0<(c[18404]|0)>>
x3e;0)ya();a=d+8|0;if((c[a>>2]|0)==(m|0))l=a;else ya()}else l=d+8|0;c[b+12>>2]=d;c[l>>2]=b}while(0
);c[q+4>>2]=g|1;c[q+g>>2]=g;if((q|0)==(c[18405]|0)){c[18402]=g;return}}else{c[a>>2]=b&-2;c[q+
4>>2]=g|1;c[q+g>>2]=g}a=g>>>3;if(g>>>0<256){d=73640+(a<<1<
x3c;2)|0;b=c[18400]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>
;>>0)ya();else{o=a;p=b}}else{c[18400]=b|a;o=d+8|0;p=d}c[o>>2]=q;c[p+12>>2]=q;c[q+8>>2]=p
;c[q+12>>2]=d;return}a=g>>>8;if(a)if(g>>>0>16777215)d=31;else{o=(a+1048320|0)>
x3e;>16&8;p=a<<o;n=(p+520192|0)>>>16&4;p=p<<n;d=(p+245760|0)>>>
16&2;d=14-(n|o|d)+(p<<d>>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=73904
+(d<<2)|0;c[q+28>>2]=d;c[q+20>>2]=0;c[q+16>>2]=0;a=c[18401]|0;b=1<<d;do if(a
x26;b){f=g<<((d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0
)==(g|0)){d=a;e=130;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d){e=127;break}else{f=f<
x3c;1;a=d}}if((e|0)==127)if(b>>>0<(c[18404]|0)>>>0)ya();else{c[b>>2]=q;c[q+24>
x3e;2]=a;c[q+12>>2]=q;c[q+8>>2]=q;break}else if((e|0)==130){a=d+8|0;b=c[a>>2]|0;p=c[18404]|0;if(b
x3e;>>0>=p>>>0&d>>>0>=p>>>0){c[b+12>>2]=q;c[a>
;>2]=q;c[q+8>>2]=b;c[q+12>>2]=d;c[q+24>>2]=0;break}else ya()}}else{c[18401]=a|b;c[e>>
;2]=q;c[q+24>>2]=e;c[q+12>>2]=q;c[q+8>>2]=q}while(0);q=(c[18408]|0)+-1|0;c[18408]=q;if(!q)a=74056;
else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[18408]=-1;return}function Hs(a,b){a=a|0;b=b|0;var d=0,e=0;
if(!a){a=Fs(b)|0;return a|0}if(b>>>0>4294967231){c[(Ar()|0)>>2]=12;a=0;return a|0}d=Is(a+-8|0,b>
;>>0<11?16:b+11&-8)|0;if(d|0){a=d+8|0;return a|0}d=Fs(b)|0;if(!d){a=0;return a|0}e=c[a+-4>>2]|0;e=(
e&-8)-((e&3|0)==0?8:4)|0;Ss(d|0,a|0,(e>>>0<b>>>0?e:b)|0)|0;Gs(a);a=d;return a|0}
function Rh(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;ca=i;i=i+192
|0;Y=ca+172|0;l=ca+168|0;I=ca+164|0;H=ca+160|0;m=ca+156|0;n=ca+152|0;p=ca+148|0;aa=ca+144|0;u=ca+140|0;t=ca+136|0;s=ca+132|0;U=ca
+177|0;V=ca+176|0;q=ca+128|0;r=ca+124|0;o=ca+120|0;J=ca+116|0;M=ca+112|0;S=ca+108|0;P=ca+104|0;z=ca+100|0;v=ca+96|0;w=ca+92|0;y=
ca+88|0;x=ca+84|0;D=ca+80|0;F=ca+76|0;A=ca+72|0;B=ca+68|0;G=ca+64|0;E=ca+60|0;C=ca+56|0;W=ca+52|0;Q=ca+48|0;R=ca+44|0;N=ca+40|0;
O=ca+36|0;K=ca+32|0;X=ca+28|0;_=ca+16|0;L=ca+12|0;T=ca+8|0;$=ca+4|0;Z=ca;c[l>>2]=f;c[I>>2]=g;c[H>>
2]=h;c[m>>2]=j;c[n>>2]=k;c[p>>2]=c[I>>2];a[U>>0]=1;a[V>>0]=0;c[q>
;>2]=c[(c[(c[I>>2]|0)+96>>2]|0)+4>>2];c[u>>2]=Ud(c[q>>2]|0,11340)|0;do if
(c[u>>2]|0){c[r>>2]=c[(c[p>>2]|0)+96>>2];c[o>>2]=Vd(c[r>>2]|0,71003)|
0;c[t>>2]=c[o>>2];c[s>>2]=Ud(c[q>>2]|0,11524)|0;f=Kc(c[l>>2]|0,0)|0;c[aa>
x3e;2]=f;if(!f){c[aa>>2]=Za[c[(c[u>>2]|0)+4>>2]&31](c[l>>2]|0,c[p>>2]|0,c
[H>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;if(!(c[aa>>2]|0)){if((c[(c[p>>2]|0)+148>
x3e;2]|0)!=1330926671){ba=112;break}if((c[H>>2]|0)<0){c[Y>>2]=0;ba=c[Y>>2]|0;i=ca;return ba|0
}if((c[H>>2]|0)>0){c[aa>>2]=6;break}a[V>>0]=1;c[aa>>2]=Wa[c[(c[p>>2]|0)+508
>>2]&31](c[p>>2]|0,1751474532,c[l>>2]|0,0)|0;if(c[aa>>2]|0){c[aa>>2]=Ya[c
[(c[u>>2]|0)+40>>2]&127](c[p>>2]|0,c[l>>2]|0)|0;if(c[aa>>2]|0)break}else{
a[U>>0]=0;c[aa>>2]=Za[c[(c[u>>2]|0)+8>>2]&31](c[l>>2]|0,c[p>>2]|
0,0,c[m>>2]|0,c[n>>2]|0)|0;if(c[aa>>2]|0)break}c[aa>>2]=Wa[c[(c[p>>2]|0)+508
x3e;>2]&31](c[p>>2]|0,1128678944,c[l>>2]|0,0)|0;if(c[aa>>2]|0)break}else{f=Kc(c[l>
x3e;2]|0,0)|0;c[aa>>2]=f;if(f|0)break;c[aa>>2]=0}c[S>>2]=c[(c[I>>2]|0)+100>>2];
c[J>>2]=bc(c[S>>2]|0,2072,aa)|0;if((c[aa>>2]|0)==0?(c[(c[p>>2]|0)+692>>2]=c[J
x3e;>2],c[aa>>2]=Sh(c[q>>2]|0,c[l>>2]|0,c[H>>2]|0,c[J>>2]|0,a[U>>
;0]|0)|0,(c[aa>>2]|0)==0):0){c[(c[J>>2]|0)+2052>>2]=c[s>>2];c[(c[J>>2]|0)+2056
>>2]=c[t>>2];c[(c[I>>2]|0)+4>>2]=c[H>>2];c[(c[I>>2]|0)+16>>
;2]=c[(c[J>>2]|0)+12>>2];c[M>>2]=(c[J>>2]|0)+1324;if(c[t>>2]|0?1:(c[(c[M>
x3e;2]|0)+128>>2]|0)!=65535){if(!(c[(c[M>>2]|0)+64>>2]|0)){if(d[U>>0]|0)l=1e3;else l=e[(
c[p>>2]|0)+68>>1]|0;c[(c[M>>2]|0)+64>>2]=l}c[v>>2]=(c[M>>2]|0)+48;c[
w>>2]=(c[M>>2]|0)+68;c[y>>2]=(c[M>>2]|0)+64;f=c[(c[v>>2]|0)+12>>2]|0
;c[x>>2]=(c[(c[v>>2]|0)+12>>2]|0)<0?0-f|0:f;if((c[x>>2]|0)!=65536){f=Vb(c[c[y>
x3e;2]>>2]|0,c[x>>2]|0)|0;c[c[y>>2]>>2]=f;y=Vb(c[c[v>>2]>>2]|0,c[x
x3e;>2]|0)|0;c[c[v>>2]>>2]=y;y=Vb(c[(c[v>>2]|0)+8>>2]|0,c[x>>2]|0)|0;c[(c
[v>>2]|0)+8>>2]=y;y=Vb(c[(c[v>>2]|0)+4>>2]|0,c[x>>2]|0)|0;c[(c[v>>2]|
0)+4>>2]=y;y=Vb(c[(c[v>>2]|0)+12>>2]|0,c[x>>2]|0)|0;c[(c[v>>2]|0)+12>>
;2]=y;y=Vb(c[c[w>>2]>>2]|0,c[x>>2]|0)|0;c[c[w>>2]>>2]=y;y=Vb(c[(c[w>>
;2]|0)+4>>2]|0,c[x>>2]|0)|0;c[(c[w>>2]|0)+4>>2]=y}y=c[w>>2]|0;c[y>>2
]=c[y>>2]>>16;y=(c[w>>2]|0)+4|0;c[y>>2]=c[y>>2]>>16;c[z>>2
]=c[(c[J>>2]|0)+1892>>2];while(1){if((c[z>>2]|0)>>>0<=0)break;c[D>>2
]=c[(c[J>>2]|0)+1896+((c[z>>2]|0)-1<<2)>>2];c[F>>2]=(c[J>>2]|0)+1324
;if(c[(c[D>>2]|0)+64>>2]|0){if((c[(c[F>>2]|0)+64>>2]|0)>>>0>1?(c[(c[
D>>2]|0)+64>>2]|0)>>>0>1:0){if((c[(c[F>>2]|0)+64>>2]|0)>>
x3e;0<(c[(c[D>>2]|0)+64>>2]|0)>>>0)l=c[(c[F>>2]|0)+64>>2]|0;else l=c
[(c[D>>2]|0)+64>>2]|0;c[C>>2]=l}else c[C>>2]=1;Xb((c[F>>2]|0)+48|0,(c[D>
x3e;2]|0)+48|0,c[C>>2]|0);Yb((c[D>>2]|0)+68|0,(c[F>>2]|0)+48|0,c[C>>2]|0);y=xb(c[(c[D>
;>2]|0)+64>>2]|0,c[(c[F>>2]|0)+64>>2]|0,c[C>>2]|0)|0;c[(c[D>>2]|0)+64>
;>2]=y}else{y=(c[D>>2]|0)+48|0;x=(c[F>>2]|0)+48|0;c[y>>2]=c[x>>2];c[y+4>>
2]=c[x+4>>2];c[y+8>>2]=c[x+8>>2];c[y+12>>2]=c[x+12>>2];y=(c[D>>2]|0)+
68|0;x=(c[F>>2]|0)+68|0;c[y>>2]=c[x>>2];c[y+4>>2]=c[x+4>>2];c[(c[D>>
2]|0)+64>>2]=c[(c[F>>2]|0)+64>>2]}c[A>>2]=(c[D>>2]|0)+48;c[B>>2]=(c[
D>>2]|0)+68;c[G>>2]=(c[D>>2]|0)+64;y=c[(c[A>>2]|0)+12>>2]|0;c[E>>2]=(
c[(c[A>>2]|0)+12>>2]|0)<0?0-y|0:y;if((c[E>>2]|0)!=65536){y=Vb(c[c[G>>2]>>
2]|0,c[E>>2]|0)|0;c[c[G>>2]>>2]=y;if((c[c[G>>2]>>2]|0)>>>0>
;1e5)c[c[G>>2]>>2]=(((c[c[G>>2]>>2]|0)+500|0)>>>0)/1e3|0;y=Vb(c[c[A>
x3e;2]>>2]|0,c[E>>2]|0)|0;c[c[A>>2]>>2]=y;y=Vb(c[(c[A>>2]|0)+8>>2]|0
,c[E>>2]|0)|0;c[(c[A>>2]|0)+8>>2]=y;y=Vb(c[(c[A>>2]|0)+4>>2]|0,c[E>>
2]|0)|0;c[(c[A>>2]|0)+4>>2]=y;y=Vb(c[(c[A>>2]|0)+12>>2]|0,c[E>>2]|0)|0;c[(c[A
x3e;>2]|0)+12>>2]=y;y=Vb(c[c[B>>2]>>2]|0,c[E>>2]|0)|0;c[c[B>>2]>>
;2]=y;y=Vb(c[(c[B>>2]|0)+4>>2]|0,c[E>>2]|0)|0;c[(c[B>>2]|0)+4>>2]=y}y=c[B>
;>2]|0;c[y>>2]=c[y>>2]>>16;y=(c[B>>2]|0)+4|0;c[y>>2]=c[y>>2]>
;>16;c[z>>2]=(c[z>>2]|0)+-1}if(a[U>>0]|0){c[W>>2]=0;c[c[I>>2]>>
2]=c[(c[J>>2]|0)+8>>2];l=c[J>>2]|0;if((c[(c[M>>2]|0)+128>>2]|0)!=65535)c[(c[I
x3e;>2]|0)+16>>2]=(c[l+1152+16>>2]|0)+1;else c[(c[I>>2]|0)+16>>2]=c[l+1176+8>
x3e;2];c[(c[I>>2]|0)+52>>2]=c[(c[M>>2]|0)+80>>2]>>16;c[(c[I>>2]|0)+52
+4>>2]=c[(c[M>>2]|0)+80+4>>2]>>16;c[(c[I>>2]|0)+52+8>>2]=(c[(c[M>
;>2]|0)+80+8>>2]|0)+65535>>16;c[(c[I>>2]|0)+52+12>>2]=(c[(c[M>>2]|0)+80+12
>>2]|0)+65535>>16;b[(c[I>>2]|0)+68>>1]=c[(c[M>>2]|0)+64>>2];b[(c[I
x3e;>2]|0)+70>>1]=c[(c[I>>2]|0)+52+12>>2];b[(c[I>>2]|0)+72>>1]=c[(c[I>
;>2]|0)+52+4>>2];b[(c[I>>2]|0)+74>>1]=((e[(c[I>>2]|0)+68>>1]|0)*12|0)/10|
0;if((b[(c[I>>2]|0)+74>>1]|0)<((b[(c[I>>2]|0)+70>>1]|0)-(b[(c[I>>2]|0)+72
>>1]|0)|0))b[(c[I>>2]|0)+74>>1]=(b[(c[I>>2]|0)+70>>1]|0)-(b[(c[I>>2]|
0)+72>>1]|0);b[(c[I>>2]|0)+80>>1]=c[(c[M>>2]|0)+32>>2]>>16;b[(c[I>
;>2]|0)+82>>1]=c[(c[M>>2]|0)+36>>2]>>16;l=qi(c[J>>2]|0,c[H>>2]|
0)|0;c[(c[I>>2]|0)+20>>2]=l;l=c[J>>2]|0;m=c[M>>2]|0;a:do if(c[(c[I>>2]|0)+20
x3e;>2]|0){c[Q>>2]=yh(l,c[m+12>>2]|0)|0;c[R>>2]=c[Q>>2];c[N>>2]=c[(c[I>
;>2]|0)+20>>2];c[O>>2]=0;ri(c[(c[I>>2]|0)+20>>2]|0);if(c[(c[M>>2]|0)+16
x3e;>2]|0?(c[O>>2]=yh(c[J>>2]|0,c[(c[M>>2]|0)+16>>2]|0)|0,c[O>>2]|0):0)c[
N>>2]=c[O>>2];if((c[Q>>2]|0)!=0&(c[N>>2]|0)!=0){b:while(1){if(!(a[c[R>>2]
x3e;>0]|0))break a;if((a[c[R>>2]>>0]|0)==(a[c[N>>2]>>0]|0)){c[N>>2]=(c[N
x3e;>2]|0)+1;c[R>>2]=(c[R>>2]|0)+1;continue}do if((a[c[R>>2]>>0]|0)!=32){if((a[c[R
x3e;>2]>>0]|0)==45)break;if((a[c[N>>2]>>0]|0)!=32?(a[c[N>>2]>>0]|0)!=45:0
)break b;c[N>>2]=(c[N>>2]|0)+1;continue b}while(0);c[R>>2]=(c[R>>2]|0)+1}if((a[c[N>
x3e;2]>>0]|0)==0?a[c[R>>2]>>0]|0:0)c[W>>2]=si(c[S>>2]|0,c[R>>2]|0)|0
}}else{c[K>>2]=yh(l,c[m+168>>2]|0)|0;if(c[K>>2]|0){R=si(c[S>>2]|0,c[K>>2]|0)|0
;c[(c[I>>2]|0)+20>>2]=R}}while(0);if(c[W>>2]|0)c[(c[I>>2]|0)+24>>2]=c[W>
x3e;2];else{W=si(c[S>>2]|0,11262)|0;c[(c[I>>2]|0)+24>>2]=W}c[P>>2]=2065;if(a[V>>
;0]|0)c[P>>2]=c[P>>2]|8;if(a[(c[M>>2]|0)+24>>0]|0)c[P>>2]=c[P>>2]|4;
c[(c[I>>2]|0)+8>>2]=c[P>>2];c[P>>2]=0;if(c[(c[M>>2]|0)+28>>2]|0)c[P
x3e;>2]=c[P>>2]|1;c[X>>2]=yh(c[J>>2]|0,c[(c[M>>2]|0)+20>>2]|0)|0;do if(c[
X>>2]|0){if(Kr(c[X>>2]|0,11270)|0?Kr(c[X>>2]|0,11275)|0:0)break;c[P>>2]=c[P>>2
]|2}while(0);do if(!(c[P>>2]&2)){if(!(c[(c[I>>2]|0)+24>>2]|0))break;if(Lr(c[(c[I>>2
]|0)+24>>2]|0,11270,4)|0?Lr(c[(c[I>>2]|0)+24>>2]|0,11275,5)|0:0)break;c[P>>2]=c[P>
x3e;2]|2}while(0);c[(c[I>>2]|0)+12>>2]=c[P>>2]}if((c[(c[M>>2]|0)+128>>2]|0)==65535
){X=(c[I>>2]|0)+8|0;c[X>>2]=c[X>>2]|512}if((c[(c[M>>2]|0)+128>>2]|0)!=65535?d[
U>>0]|0:0){X=(c[I>>2]|0)+8|0;c[X>>2]=c[X>>2]|4096}c[$>>2]=(c[J>>2]|0
)+116;c[T>>2]=0;while(1){if((c[T>>2]|0)>>>0>=(c[(c[I>>2]|0)+36>>2]|0
)>>>0){ba=96;break}c[L>>2]=c[(c[(c[I>>2]|0)+40>>2]|0)+(c[T>>2]<<
;2)>>2];if((e[(c[L>>2]|0)+8>>1]|0)==3?(e[(c[L>>2]|0)+10>>1]|0)==1:0)break;if(!(
e[(c[L>>2]|0)+8>>1]|0))break;c[T>>2]=(c[T>>2]|0)+1}if((ba|0)==96){if(d[U>>0]|0
?(c[(c[J>>2]|0)+1324+128>>2]|0)!=65535:0)break;if(((c[T>>2]|0)+1|0)>>>0>15)break
;c[_>>2]=c[I>>2];b[_+8>>1]=3;b[_+10>>1]=1;c[_+4>>2]=1970170211;c[T>>
2]=c[(c[I>>2]|0)+36>>2];c[aa>>2]=Ld(868,0,_,0)|0;if((c[aa>>2]|0)!=0&163!=(c[aa>
;>2]|0))break;c[aa>>2]=0;if((c[(c[I>>2]|0)+92>>2]|0)==0?(c[T>>2]|0)!=(c[(c[I>
x3e;2]|0)+36>>2]|0):0)c[(c[I>>2]|0)+92>>2]=c[(c[(c[I>>2]|0)+40>>2]|0)+(c[T>
;>2]<<2)>>2]}if((c[T>>2]|0)>>>0<=15?(c[(c[$>>2]|0)+8>>
;2]|0)>>>0>0:0){c[_>>2]=c[I>>2];b[_+8>>1]=7;do if(c[(c[$>>2]|0)+4>
;>2]|0){l=_+10|0;if((c[(c[$>>2]|0)+4>>2]|0)==1){b[l>>1]=1;c[_+4>>2]=1094992453;c[Z
x3e;>2]=828;break}else{b[l>>1]=2;c[_+4>>2]=1094992451;c[Z>>2]=828;break}}else{b[_+10>>
;1]=0;c[_+4>>2]=1094995778;c[Z>>2]=828}while(0);c[aa>>2]=Ld(c[Z>>2]|0,0,_,0)|0}}else ba=
112}}}else ba=112;while(0);if((ba|0)==112)c[aa>>2]=2;c[Y>>2]=c[aa>>2];ba=c[Y>>2]|0;i=ca;
return ba|0}function Sh(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
;x=i;i=i+112|0;j=x+100|0;p=x+96|0;q=x+92|0;r=x+88|0;k=x+105|0;u=x+84|0;n=x+80|0;s=x+76|0;t=x+72|0;w=x+40|0;l=x+8|0;o=x+4|0;m=x;v
=x+104|0;c[j>>2]=b;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;a[k>>0]=h;c[n>>2]=c
[(c[p>>2]|0)+28>>2];Ns(c[r>>2]|0,0,2072)|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>
x3e;2]=0;c[w+12>>2]=0;c[w+16>>2]=0;c[w+20>>2]=0;c[w+24>>2]=0;c[w+28>>2]=0;c[c[
r>>2]>>2]=c[p>>2];c[(c[r>>2]|0)+4>>2]=c[n>>2];c[t>>2]=(c[r
>>2]|0)+1324;c[s>>2]=Mc(c[p>>2]|0)|0;e=le(c[p>>2]|0,5532,c[r>>2]|0)|0;c[u>
;>2]=e;a:do if(!e){if(((d[(c[r>>2]|0)+16>>0]|0|0)==1?(d[(c[r>>2]|0)+18>>0]|0|0)>
;=4:0)?(d[(c[r>>2]|0)+19>>0]|0|0)<=4:0){e=Qc(c[p>>2]|0,(d[(c[r>>2]|0)+18>>
;0]|0)-4|0)|0;c[u>>2]=e;if(e|0)break;e=Th((c[r>>2]|0)+20|0,c[p>>2]|0,0)|0;c[u>>2]=e;if(e
|0)break;e=Th((c[r>>2]|0)+1208|0,c[p>>2]|0,0)|0;c[u>>2]=e;if(e|0)break;e=Th(w,c[p>>2]|0,
1)|0;c[u>>2]=e;if(e|0)break;e=Th((c[r>>2]|0)+84|0,c[p>>2]|0,1)|0;c[u>>2]=e;if(e|0)break;
e=Vh(w,(c[r>>2]|0)+1316|0,(c[r>>2]|0)+1320|0)|0;c[u>>2]=e;if(e|0)break;c[(c[r>>2]|0)+1312
>>2]=c[w+8>>2];c[(c[r>>2]|0)+8>>2]=c[(c[r>>2]|0)+20+8>>2];if((c[q>
;>2]|0)>=(c[(c[r>>2]|0)+8>>2]|0))c[u>>2]=6;if((c[q>>2]|0)<0)break;c[u>
;>2]=Xh((c[r>>2]|0)+1324|0,(c[r>>2]|0)+1208|0,c[q>>2]|0,c[p>>2]|0,c[s>>2]|
0,c[j>>2]|0)|0;if(c[u>>2]|0)break;e=Kc(c[p>>2]|0,(c[s>>2]|0)+(c[(c[t>>2]|0)+108
>>2]|0)|0)|0;c[u>>2]=e;if(e|0)break;c[u>>2]=Th((c[r>>2]|0)+1176|0,c[p>>2]|0,0)|
0;if(c[u>>2]|0)break;if((c[(c[t>>2]|0)+128>>2]|0)!=65535){e=Kc(c[p>>2]|0,(c[s>>
;2]|0)+(c[(c[t>>2]|0)+160>>2]|0)|0)|0;c[u>>2]=e;if(e|0)break;c[u>>2]=Th(l,c[p>>
;2]|0,0)|0;if(c[u>>2]|0)break;b:do if((c[l+8>>2]|0)>>>0<=32){c[(c[r>>2]|0)+1892
>>2]=c[l+8>>2];c[o>>2]=hc(c[n>>2]|0,568,0,c[l+8>>2]|0,0,u)|0;if(c[u>>
;2]|0)break;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[l+8>>2]|0)>>
x3e;0)break;c[(c[r>>2]|0)+1896+(c[m>>2]<<2)>>2]=(c[o>>2]|0)+((c[m>>2
]|0)*568|0);c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0
x3e;=(c[l+8>>2]|0)>>>0)break;c[o>>2]=c[(c[r>>2]|0)+1896+(c[m>>2]<<
;2)>>2];c[u>>2]=Xh(c[o>>2]|0,l,c[m>>2]|0,c[p>>2]|0,c[s>>2]|0,c[j>
;>2]|0)|0;if(c[u>>2]|0)break b;c[m>>2]=(c[m>>2]|0)+1}c[u>>2]=ki((c[r>>2]|
0)+2024|0,c[(c[r>>2]|0)+1176+8>>2]|0,c[p>>2]|0,(c[s>>2]|0)+(c[(c[t>>2]|0)+164
x3e;>2]|0)|0)|0}while(0);li(l);if(c[u>>2]|0)break}else c[(c[r>>2]|0)+1892>>2]=0;if(!(c[(c[t
x3e;>2]|0)+108>>2]|0)){c[u>>2]=2;break}c[(c[r>>2]|0)+12>>2]=c[(c[r>>2]|0)+
1176+8>>2];c[u>>2]=Vh((c[r>>2]|0)+84|0,(c[r>>2]|0)+1308|0,0)|0;if(c[u>>2]|0)break
;do if((c[(c[r>>2]|0)+12>>2]|0)>>>0>0){if((c[(c[t>>2]|0)+128>>2]|0)!=
65535)j=(d[k>>0]|0|0)!=0;else j=0;a[v>>0]=j&1;c[u>>2]=mi((c[r>>2]|0)+1152|0,c[(c[r
x3e;>2]|0)+12>>2]|0,c[p>>2]|0,c[s>>2]|0,c[(c[t>>2]|0)+100>>2]|0,a[v>
x3e;0]|0)|0;if(c[u>>2]|0)break a;if((c[(c[t>>2]|0)+128>>2]|0)!=65535)break;c[u>>2]=oi((c
[r>>2]|0)+116|0,(c[r>>2]|0)+1152|0,c[(c[r>>2]|0)+12>>2]|0,c[p>>2]|0,c[s>
x3e;2]|0,c[(c[t>>2]|0)+104>>2]|0)|0;if(c[u>>2]|0)break a}while(0);v=qi(c[r>>2]|0,c[q>
;>2]|0)|0;c[(c[r>>2]|0)+1304>>2]=v;break}c[u>>2]=2}while(0);li(w);i=x;return c[u>>2
]|0}function Th(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;r=i;i=i+32|0;n=r+16|0;j=r+12|0;o=r+23|0;p=r+8|0
;q=r+4|0;k=r+20|0;l=r+22|0;m=r;c[n>>2]=f;c[j>>2]=g;a[o>>0]=h;c[q>>2]=c[(c[j>>2
]|0)+28>>2];g=c[n>>2]|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=
0;c[g+16>>2]=0;c[g+20>>2]=0;c[g+24>>2]=0;c[g+28>>2]=0;c[c[n>>2]>>2]=
c[j>>2];g=Mc(c[j>>2]|0)|0;c[(c[n>>2]|0)+4>>2]=g;b[k>>1]=Pc(c[j>>2]|0
,p)|0;do if(((c[p>>2]|0)==0?(e[k>>1]|0)>0:0)?(a[l>>0]=ke(c[j>>2]|0,p)|0,(c[p>
x3e;2]|0)==0):0){if((d[l>>0]|0)>=1?(d[l>>0]|0)<=4:0){c[(c[n>>2]|0)+8>>2]=e[k
x3e;>1];a[(c[n>>2]|0)+12>>0]=a[l>>0]|0;c[m>>2]=_((e[k>>1]|0)+1|0,d[l>
;>0]|0)|0;c[(c[n>>2]|0)+16>>2]=(c[(c[n>>2]|0)+4>>2]|0)+3+(c[m>>2]|0);g=Qc
(c[j>>2]|0,(c[m>>2]|0)-(d[l>>0]|0)|0)|0;c[p>>2]=g;if(g|0)break;c[m>>2]=Uh(c[n
x3e;>2]|0,p)|0;if(c[p>>2]|0)break;if(!(c[m>>2]|0)){c[p>>2]=8;break}k=(c[m>>2]|0)+-1
|0;c[m>>2]=k;c[(c[n>>2]|0)+20>>2]=k;k=c[j>>2]|0;j=c[m>>2]|0;if(a[o>>
0]|0){c[p>>2]=de(k,j,(c[n>>2]|0)+28|0)|0;break}else{c[p>>2]=Qc(k,j)|0;break}}c[p>>2]=8}while
(0);if(!(c[p>>2]|0)){q=c[p>>2]|0;i=r;return q|0}Fb(c[q>>2]|0,c[(c[n>>2]|0)+24>>
;2]|0);c[(c[n>>2]|0)+24>>2]=0;q=c[p>>2]|0;i=r;return q|0}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,m=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;m=l+8|0;k=l+24|0;j=l+4|0;h=l;c[e>>2]=a;c[f>>
2]=b;c[m>>2]=c[c[e>>2]>>2];c[j>>2]=0;a=Rc(c[m>>2]|0,k,d[(c[e>>2]|0)+
12>>0]|0)|0;c[g>>2]=a;if(a|0){k=c[g>>2]|0;m=c[f>>2]|0;c[m>>2]=k;m=c[j>>
;2]|0;i=l;return m|0}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(d[(c[e>>2]|0)+12>>0]|0|0))
break;c[j>>2]=c[j>>2]<<8|(d[k+(c[h>>2]|0)>>0]|0);c[h>>2]=(c[h>
x3e;2]|0)+1}k=c[g>>2]|0;m=c[f>>2]|0;c[m>>2]=k;m=c[j>>2]|0;i=l;return m|0}function Vh(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;t=i;i=i+48|0;f=t+44|0;g=t+40|0;h=t+36|0;k=t+32
|0;m=t+28|0;r=t+24|0;o=t+20|0;n=t+16|0;j=t+12|0;l=t+8|0;q=t+4|0;p=t;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;
c[k>>2]=0;c[m>>2]=c[(c[c[f>>2]>>2]|0)+28>>2];c[o>>2]=0;c[c[g>
x3e;2]>>2]=0;if((c[(c[f>>2]|0)+24>>2]|0)==0?(c[k>>2]=Wh(c[f>>2]|0)|0,c[k>
x3e;2]|0):0){s=c[k>>2]|0;i=t;return s|0}if((c[(c[f>>2]|0)+8>>2]|0)>>>0<=0){s=c
[k>>2]|0;i=t;return s|0}c[r>>2]=hc(c[m>>2]|0,4,0,(c[(c[f>>2]|0)+8>>2]|0)+1|0,0
,k)|0;if(c[k>>2]|0){s=c[k>>2]|0;i=t;return s|0}if(c[h>>2]|0?(c[o>>2]=bc(c[m>>2
]|0,(c[(c[f>>2]|0)+20>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)|0,k)|0,c[k>>2]|0):0){s=c[
k>>2]|0;i=t;return s|0}c[l>>2]=0;c[q>>2]=c[(c[f>>2]|0)+28>>2];d=(c[c[(c[f>
;>2]|0)+24>>2]>>2]|0)-1|0;c[j>>2]=d;c[j>>2]=(c[j>>2]|0)>>>
0>=(c[(c[f>>2]|0)+20>>2]|0)>>>0?0:d;if(c[h>>2]|0)c[c[r>>2]>>
;2]=(c[o>>2]|0)+(c[j>>2]|0);else c[c[r>>2]>>2]=(c[q>>2]|0)+(c[j>>2]|
0);c[n>>2]=1;while(1){if((c[n>>2]|0)>>>0>(c[(c[f>>2]|0)+8>>2]|0)>
;>>0)break;c[p>>2]=(c[(c[(c[f>>2]|0)+24>>2]|0)+(c[n>>2]<<2)>>
;2]|0)-1;if((c[p>>2]|0)!=0?(c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0:0){
if((c[p>>2]|0)>>>0>=(c[(c[f>>2]|0)+20>>2]|0)>>>0?(c[n>>
;2]|0)>>>0<(c[(c[f>>2]|0)+8>>2]|0)>>>0:0)s=16}else s=16;if((s|0)==16){s=0
;c[p>>2]=c[j>>2]}if(c[h>>2]|0){c[(c[r>>2]|0)+(c[n>>2]<<2)>>
;2]=(c[o>>2]|0)+(c[p>>2]|0)+(c[l>>2]|0);if((c[p>>2]|0)!=(c[j>>2]|0)){Ss(c[(c[r
>>2]|0)+((c[n>>2]|0)-1<<2)>>2]|0,(c[q>>2]|0)+(c[j>>2]|0)|0,(c[(c[r
x3e;>2]|0)+(c[n>>2]<<2)>>2]|0)-(c[(c[r>>2]|0)+((c[n>>2]|0)-1<<2
)>>2]|0)|0)|0;a[c[(c[r>>2]|0)+(c[n>>2]<<2)>>2]>>0]=0;d=(c[r>>
;2]|0)+(c[n>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+1}}else
c[(c[r>>2]|0)+(c[n>>2]<<2)>>2]=(c[q>>2]|0)+(c[p>>2]|0);c[j>>
;2]=c[p>>2];c[n>>2]=(c[n>>2]|0)+1}c[c[g>>2]>>2]=c[r>>2];if(!(c[h>
;>2]|0)){s=c[k>>2]|0;i=t;return s|0}c[c[h>>2]>>2]=c[o>>2];s=c[k>>2]|0;i=t
;return s|0}function Wh(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;o=i;i=i+48|0;e=o+28|0;g=o+24|0;n=o+20|0;h=o+16|0;j=
o+32|0;f=o+12|0;k=o+8|0;l=o+4|0;m=o;c[e>>2]=b;c[g>>2]=0;c[n>>2]=c[c[e>>2]>>2];
c[h>>2]=c[(c[n>>2]|0)+28>>2];if(((((c[(c[e>>2]|0)+8>>2]|0)>>>0
x3e;0?(c[(c[e>>2]|0)+24>>2]|0)==0:0)?(a[j>>0]=a[(c[e>>2]|0)+12>>0]|0,c[f>
x3e;2]=_((c[(c[e>>2]|0)+8>>2]|0)+1|0,d[j>>0]|0)|0,b=hc(c[h>>2]|0,4,0,(c[(c[e>>
2]|0)+8>>2]|0)+1|0,0,g)|0,c[(c[e>>2]|0)+24>>2]=b,(c[g>>2]|0)==0):0)?(b=Kc(c[n>>
;2]|0,(c[(c[e>>2]|0)+4>>2]|0)+3|0)|0,c[g>>2]=b,(b|0)==0):0)?(b=ee(c[n>>2]|0,c[f>>
;2]|0)|0,c[g>>2]=b,(b|0)==0):0){c[m>>2]=c[(c[e>>2]|0)+24>>2];c[k>>2]=c[(c[n>
;>2]|0)+32>>2];c[l>>2]=(c[k>>2]|0)+(c[f>>2]|0);a:do switch(d[j>>0]|0){case
1:while(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>
2]>>2]=d[c[k>>2]>>0];c[k>>2]=(c[k>>2]|0)+1;c[m>>2]=(c[m>>2
]|0)+4}case 2:while(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m
x3e;>2]>>2]=((d[c[k>>2]>>0]&65535)<<8|(d[(c[k>>2]|0)+1>>0]
x26;65535)<<0)&65535;c[k>>2]=(c[k>>2]|0)+2;c[m>>2]=(c[m>>2]|0)+4}case 3:while
(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>2]>
x3e;2]=a[c[k>>2]>>0]<<16|d[(c[k>>2]|0)+1>>0]<<8|d[(c[k>>2]|
0)+2>>0]<<0;c[k>>2]=(c[k>>2]|0)+3;c[m>>2]=(c[m>>2]|0)+4}default:while
(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>2]>
x3e;2]=d[c[k>>2]>>0]<<24|d[(c[k>>2]|0)+1>>0]<<16|d[(c[k>>2
]|0)+2>>0]<<8|d[(c[k>>2]|0)+3>>0]<<0;c[k>>2]=(c[k>>2]|0)+4
;c[m>>2]=(c[m>>2]|0)+4}}while(0);ge(c[n>>2]|0)}if(!(c[g>>2]|0)){n=c[g>>2]|0;i=
o;return n|0}Fb(c[h>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;n=c[g
>>2]|0;i=o;return n|0}function Xh(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;v=i;i=i+464|0;k=v+456|0;l=v+452|0;w=v+448|0;m=v+444|0;n=v+440|0;o=v+436|0;r=v+432|0;s=v+16|0;p=v+12|0;q=v+8
|0;u=v+4|0;t=v;c[k>>2]=b;c[l>>2]=e;c[w>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>
;2]=j;c[p>>2]=0;c[u>>2]=c[k>>2];c[t>>2]=(c[k>>2]|0)+172;Yh(s,4096,c[k>>
;2]|0,c[o>>2]|0);Ns(c[u>>2]|0,0,172)|0;c[(c[u>>2]|0)+32>>2]=-6553600;c[(c[u>>2
]|0)+36>>2]=3276800;c[(c[u>>2]|0)+44>>2]=2;c[(c[u>>2]|0)+48>>2]=65536;c[(c[u
x3e;>2]|0)+48+12>>2]=65536;c[(c[u>>2]|0)+152>>2]=8720;c[c[u>>2]>>2]=65535
;c[(c[u>>2]|0)+4>>2]=65535;c[(c[u>>2]|0)+8>>2]=65535;c[(c[u>>2]|0)+12>>
;2]=65535;c[(c[u>>2]|0)+16>>2]=65535;c[(c[u>>2]|0)+20>>2]=65535;c[(c[u>>2]|0)+
124>>2]=65535;c[(c[u>>2]|0)+128>>2]=65535;c[(c[u>>2]|0)+132>>2]=65535;c[(c[u
x3e;>2]|0)+168>>2]=65535;c[r>>2]=Zh(c[l>>2]|0,c[w>>2]|0,p,q)|0;if(!(c[r>>
2]|0))c[r>>2]=_h(s,c[p>>2]|0,(c[p>>2]|0)+(c[q>>2]|0)|0)|0;ji(c[l>>2]|0,p);if(c
[r>>2]|0){w=c[r>>2]|0;i=v;return w|0}if((c[(c[u>>2]|0)+128>>2]|0)!=65535){w=c[r>>
;2]|0;i=v;return w|0}do if(c[(c[u>>2]|0)+112>>2]|0?c[(c[u>>2]|0)+116>>2]|0:0){Ns(c[t>
;>2]|0,0,360)|0;c[(c[t>>2]|0)+200>>2]=7;c[(c[t>>2]|0)+204>>2]=1;c[(c[t>>2
]|0)+332>>2]=-1;c[(c[t>>2]|0)+340>>2]=3932;c[(c[t>>2]|0)+196>>2]=2596864;Yh(s,
8192,c[t>>2]|0,c[o>>2]|0);w=Kc(c[m>>2]|0,(c[n>>2]|0)+(c[(c[k>>2]|0)+112>
x3e;2]|0)|0)|0;c[r>>2]=w;if(w|0){w=c[r>>2]|0;i=v;return w|0}w=ee(c[m>>2]|0,c[(c[k>>2]|0)+
116>>2]|0)|0;c[r>>2]=w;if(w|0){w=c[r>>2]|0;i=v;return w|0}c[r>>2]=_h(s,c[(c[m>>
;2]|0)+32>>2]|0,c[(c[m>>2]|0)+36>>2]|0)|0;ge(c[m>>2]|0);if(c[r>>2]|0){w=c[r>
;>2]|0;i=v;return w|0}else{w=c[t>>2]|0;a[w>>0]=(d[w>>0]|0)&-2;break}}while(0);if(!(c[(c[
t>>2]|0)+348>>2]|0)){w=c[r>>2]|0;i=v;return w|0}w=Kc(c[m>>2]|0,(c[n>>2]|0)+(c[(
c[u>>2]|0)+112>>2]|0)+(c[(c[t>>2]|0)+348>>2]|0)|0)|0;c[r>>2]=w;if(w|0){w=c[r
x3e;>2]|0;i=v;return w|0}c[r>>2]=Th((c[k>>2]|0)+532|0,c[m>>2]|0,1)|0;if(c[r>>2]|0){
w=c[r>>2]|0;i=v;return w|0}c[r>>2]=Vh((c[k>>2]|0)+532|0,(c[k>>2]|0)+564|0,0)|0;w=c[r>
;>2]|0;i=v;return w|0}function Yh(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;Ns(c[g>>2]|0,0,416)|0;c[(c[g
>>2]|0)+404>>2]=(c[g>>2]|0)+16;c[(c[g>>2]|0)+408>>2]=c[k>>2];c[(c[g
x3e;>2]|0)+412>>2]=c[j>>2];c[c[g>>2]>>2]=c[h>>2];i=f;return}function Zh(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;q=i;i=i+48|0;g=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;l=q
+16|0;p=q+12|0;m=q+8|0;n=q+4|0;o=q;c[g>>2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>
;2]=0;if(c[g>>2]|0?(c[(c[g>>2]|0)+8>>2]|0)>>>0>(c[h>>2]|0)>>
;>0:0){c[p>>2]=c[c[g>>2]>>2];c[n>>2]=0;b=c[h>>2]|0;a=c[g>>2]|0;
a:do if(c[(c[g>>2]|0)+24>>2]|0){c[m>>2]=c[(c[a+24>>2]|0)+(b<<2)>>2];
if(c[m>>2]|0)do{c[h>>2]=(c[h>>2]|0)+1;c[n>>2]=c[(c[(c[g>>2]|0)+24>>2
]|0)+(c[h>>2]<<2)>>2];if(c[n>>2]|0)break a}while((c[h>>2]|0)>>>
0<(c[(c[g>>2]|0)+8>>2]|0)>>>0)}else{c[o>>2]=_(b,d[a+12>>0]|0)|0;o=Kc
(c[p>>2]|0,(c[(c[g>>2]|0)+4>>2]|0)+3+(c[o>>2]|0)|0)|0;c[l>>2]=o;if(o|0){p=c[l
x3e;>2]|0;i=q;return p|0}c[m>>2]=Uh(c[g>>2]|0,l)|0;if(c[l>>2]|0){p=c[l>>2]|0;i=q;return
p|0}if(c[m>>2]|0)do{c[h>>2]=(c[h>>2]|0)+1;c[n>>2]=Uh(c[g>>2]|0,l)|0;if(c[n>
;>2]|0)break a}while((c[h>>2]|0)>>>0<(c[(c[g>>2]|0)+8>>2]|0)>>
x3e;0)}while(0);if(!((c[n>>2]|0)>>>0<=((c[(c[p>>2]|0)+4>>2]|0)+1|0)>>
;>0?(c[(c[g>>2]|0)+16>>2]|0)>>>0<=((c[(c[p>>2]|0)+4>>2]|0)-(c[n
>>2]|0)+1|0)>>>0:0))c[n>>2]=(c[(c[p>>2]|0)+4>>2]|0)-(c[(c[g>>2]|
0)+16>>2]|0)+1;if(c[m>>2]|0?(c[n>>2]|0)>>>0>(c[m>>2]|0)>>
x3e;0:0){c[c[k>>2]>>2]=(c[n>>2]|0)-(c[m>>2]|0);if(c[(c[g>>2]|0)+28>>
2]|0){c[c[j>>2]>>2]=(c[(c[g>>2]|0)+28>>2]|0)+(c[m>>2]|0)+-1;p=c[l>>2
]|0;i=q;return p|0}o=Kc(c[p>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[m>>2]|0)-1|0)|0;c[l>
x3e;2]=o;if(o|0){p=c[l>>2]|0;i=q;return p|0}c[l>>2]=de(c[p>>2]|0,(c[n>>2]|0)-(c[m>
x3e;2]|0)|0,c[j>>2]|0)|0;p=c[l>>2]|0;i=q;return p|0}c[c[j>>2]>>2]=0;c[c[k>>2]
x3e;>2]=0;p=c[l>>2]|0;i=q;return p|0}c[l>>2]=6;p=c[l>>2]|0;i=q;return p|0}function _h(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;v=i;i=i+64|0;h=v+52|0;w=v+48|0;j=v+44|0;p=
v+40|0;m=v+36|0;x=v+32|0;s=v+28|0;k=v+24|0;o=v+20|0;n=v+16|0;t=v+12|0;q=v+8|0;r=v+4|0;l=v;c[h>>2]=e;c[w>>2]=
f;c[j>>2]=g;c[p>>2]=c[w>>2];c[m>>2]=0;c[x>>2]=c[c[h>>2]>>2
];c[x>>2]=c[x>>2];c[(c[h>>2]|0)+404>>2]=(c[h>>2]|0)+16;c[(c[h>>2]|0)+
4>>2]=c[w>>2];c[(c[h>>2]|0)+8>>2]=c[j>>2];c[(c[h>>2]|0)+12>>
;2]=c[w>>2];a:while(1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0){u=47
;break}c[s>>2]=d[c[p>>2]>>0];g=((c[(c[h>>2]|0)+404>>2]|0)-((c[h>>2]|
0)+16)|0)/4|0;b:do if((c[s>>2]|0)>>>0>=27&(c[s>>2]|0)!=31){if((g|0)>=96){u=48;
break a}w=c[p>>2]|0;f=(c[h>>2]|0)+404|0;x=c[f>>2]|0;c[f>>2]=x+4;c[x>>2]=w;if((
c[s>>2]|0)==30){c[p>>2]=(c[p>>2]|0)+1;while(1){if((c[p>>2]|0)>>>0>=(
c[j>>2]|0)>>>0){u=47;break a}c[s>>2]=(d[c[p>>2]>>0]|0)>>4;if((c
[s>>2]|0)==15)break b;c[s>>2]=(d[c[p>>2]>>0]|0)&15;if((c[s>>2]|0)==15)break
b;c[p>>2]=(c[p>>2]|0)+1}}if((c[s>>2]|0)==28){c[p>>2]=(c[p>>2]|0)+2;break}if((
c[s>>2]|0)==29){c[p>>2]=(c[p>>2]|0)+4;break}if((c[s>>2]|0)>>>0>246)c
[p>>2]=(c[p>>2]|0)+1}else{c[o>>2]=g;c[c[(c[h>>2]|0)+404>>2]>>2]=c[p
x3e;>2];c[k>>2]=c[s>>2];if((c[s>>2]|0)==12){c[p>>2]=(c[p>>2]|0)+1;if((c[p
>>2]|0)>>>0>=(c[j>>2]|0)>>>0){u=50;break a}c[k>>2]=256|(d[c[p
x3e;>2]>>0]|0)}c[k>>2]=c[k>>2]|c[(c[h>>2]|0)+408>>2];c[n>>2]=920
;while(1){if(!(c[c[n>>2]>>2]|0))break;if((c[(c[n>>2]|0)+4>>2]|0)==(c[k>>2]|0)){
u=23;break}c[n>>2]=(c[n>>2]|0)+28}c:do if((u|0)==23){u=0;c[q>>2]=(c[(c[h>>2]|0)+412>
;>2]|0)+(c[(c[n>>2]|0)+8>>2]|0);if((c[o>>2]|0)>>>0<1?(c[c[n>>2]
x3e;>2]|0)!=6:0){u=49;break a}switch(c[c[n>>2]>>2]|0){case 1:case 4:case 5:{c[t>>2]=hi((c[h
x3e;>2]|0)+16|0)|0;break}case 2:{c[t>>2]=fi((c[h>>2]|0)+16|0)|0;break}case 3:{c[t>>2]=di((c[h
>>2]|0)+16|0,3)|0;break}case 6:{c[r>>2]=(c[(c[h>>2]|0)+412>>2]|0)+(c[(c[n>>2]|
0)+24>>2]|0);c[l>>2]=(c[h>>2]|0)+16;if((c[o>>2]|0)>>>0>(c[(c[n>
x3e;2]|0)+20>>2]|0)>>>0)c[o>>2]=c[(c[n>>2]|0)+20>>2];a[c[r>>2]
x3e;>0]=c[o>>2];c[t>>2]=0;while(1){if((c[o>>2]|0)>>>0<=0)break c;x=c[l>
;>2]|0;c[l>>2]=x+4;x=hi(x)|0;c[t>>2]=(c[t>>2]|0)+x;switch(d[(c[n>>2]|0)+12>>
;0]|0|0){case 1:{a[c[q>>2]>>0]=c[t>>2];break}case 2:{b[c[q>>2]>>1]=c[t>
x3e;2];break}case 4:{c[c[q>>2]>>2]=c[t>>2];break}default:c[c[q>>2]>>2]=c[t>
;>2]}c[q>>2]=(c[q>>2]|0)+(d[(c[n>>2]|0)+12>>0]|0);c[o>>2]=(c[o>>
;2]|0)+-1}}default:{c[m>>2]=Ta[c[(c[n>>2]|0)+16>>2]&63](c[h>>2]|0)|0;if(c[m>
x3e;2]|0){u=47;break a}else break c}}switch(d[(c[n>>2]|0)+12>>0]|0|0){case 1:{a[c[q>>2]>>
;0]=c[t>>2];break c}case 2:{b[c[q>>2]>>1]=c[t>>2];break c}case 4:{c[c[q>>2]>
;>2]=c[t>>2];break c}default:{c[c[q>>2]>>2]=c[t>>2];break c}}}while(0);c[(c[h>
x3e;2]|0)+404>>2]=(c[h>>2]|0)+16}while(0);c[p>>2]=(c[p>>2]|0)+1}if((u|0)==47){x=c[m>
;>2]|0;i=v;return x|0}else if((u|0)==48){c[m>>2]=6;x=c[m>>2]|0;i=v;return x|0}else if((u|0)==49){c[m>
;>2]=6;x=c[m>>2]|0;i=v;return x|0}else if((u|0)==50){c[m>>2]=6;x=c[m>>2]|0;i=v;return x|0}return
0}function $h(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;k=j+28|0;l=j+24|0;e=j+20|0;f=j+16|0;h=j+12|0;b=j+8|
0;d=j+4|0;g=j;c[k>>2]=a;c[l>>2]=c[(c[k>>2]|0)+412>>2];c[e>>2]=(c[l>>
2]|0)+48;c[f>>2]=(c[l>>2]|0)+68;c[h>>2]=(c[l>>2]|0)+64;c[b>>2]=(c[k>>
;2]|0)+16;c[d>>2]=161;if((c[(c[k>>2]|0)+404>>2]|0)>>>0<((c[k>>2]|0)+
16+24|0)>>>0){l=c[d>>2]|0;i=j;return l|0}c[d>>2]=0;l=c[b>>2]|0;c[b>>2]=l+
4;l=ai(l,g)|0;c[c[e>>2]>>2]=l;c[g>>2]=0-(c[g>>2]|0);if((c[g>>2]|0)<0|(c[g
>>2]|0)>9){c[c[e>>2]>>2]=65536;c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|
0)+8>>2]=0;c[(c[e>>2]|0)+12>>2]=65536;c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+
4>>2]=0;c[c[h>>2]>>2]=1;l=c[d>>2]|0;i=j;return l|0}else{l=c[b>>2]|0;c[b>
x3e;2]=l+4;l=di(l,c[g>>2]|0)|0;c[(c[e>>2]|0)+8>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l
=di(l,c[g>>2]|0)|0;c[(c[e>>2]|0)+4>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l=di(l,c[g>
;>2]|0)|0;c[(c[e>>2]|0)+12>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l=di(l,c[g>>2]|0
)|0;c[c[f>>2]>>2]=l;l=di(c[b>>2]|0,c[g>>2]|0)|0;c[(c[f>>2]|0)+4>>2]=
l;c[c[h>>2]>>2]=c[2376+(c[g>>2]<<2)>>2];l=c[d>>2]|0;i=j;return l|0}return
0}function ai(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;e=j+16|0;k=j+12|0;f=j+8|0;h=j+4|0;g=j;c[k>>2]=
a;c[f>>2]=b;b=c[c[k>>2]>>2]|0;a=c[(c[k>>2]|0)+4>>2]|0;if((d[c[c[k>>2
]>>2]>>0]|0|0)==30){c[e>>2]=bi(b,a,0,c[f>>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}c
[h>>2]=ci(b,a)|0;if((c[h>>2]|0)<=32767){c[c[f>>2]>>2]=0;c[e>>2]=c[h>
x3e;2]<<16;k=c[e>>2]|0;i=j;return k|0}c[g>>2]=5;while(1){if((c[g>>2]|0)>=10)break;if
((c[h>>2]|0)<(c[2376+(c[g>>2]<<2)>>2]|0))break;c[g>>2]=(c[g>>2]|
0)+1}a=c[g>>2]|0;if(((c[h>>2]|0)/(c[2376+((c[g>>2]|0)-5<<2)>>2]|0)|0|0)>32767
){c[c[f>>2]>>2]=a-4;c[e>>2]=Vb(c[h>>2]|0,c[2376+((c[g>>2]|0)-4<<2)
x3e;>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}else{c[c[f>>2]>>2]=a-5;c[e>>2]=Vb(c[h>
x3e;2]|0,c[2376+((c[g>>2]|0)-5<<2)>>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}return 0}function
bi(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,v=0,w=0,x=0,y=0,z=0;y=i;i=i+80|
0;z=y+64|0;g=y+60|0;h=y+56|0;t=y+52|0;n=y+48|0;m=y+44|0;o=y+40|0;w=y+36|0;r=y+32|0;u=y+28|0;x=y+24|0;k=y+20|0;j=y+16|0;l=y+12|0;
v=y+8|0;q=y+4|0;s=y;c[z>>2]=a;c[g>>2]=b;c[h>>2]=e;c[t>>2]=f;c[n>>2]=c[z>
x3e;2];c[x>>2]=0;c[k>>2]=0;if(c[t>>2]|0)c[c[t>>2]>>2]=0;c[w>>2]=0;c[
r>>2]=0;c[u>>2]=0;c[j>>2]=0;c[l>>2]=0;c[v>>2]=0;c[o>>2]=4;while(1){if
(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n>>2]|0)>>>0>=(c[g>>2
]|0)>>>0):0){p=54;break}c[m>>2]=(d[c[n>>2]>>0]|0)>>c[o>>2]&
;15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|0)==14){c[x>>2]=1;continue}if((c[m>>2]|0
)>>>0>9)break;if((c[r>>2]|0)>=214748364){c[j>>2]=(c[j>>2]|0)+1;continue}if
(!((c[m>>2]|0)!=0|(c[r>>2]|0)!=0))continue;c[l>>2]=(c[l>>2]|0)+1;c[r>>2]=((c[r
>>2]|0)*10|0)+(c[m>>2]|0)}if((p|0)==54){z=c[w>>2]|0;i=y;return z|0}a:do if((c[m>>2]|0)==
10){while(1){if(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n>>2]|0)>>>0>=(c
[g>>2]|0)>>>0):0)break;c[m>>2]=(d[c[n>>2]>>0]|0)>>c[o>>
;2]&15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|0)>>>0>=10)break a;if(!((c[m>
;>2]|0)!=0|(c[r>>2]|0)!=0)){c[j>>2]=(c[j>>2]|0)+-1;continue}if(!((c[r>>2]|0)<214748364
&(c[v>>2]|0)<9))continue;c[v>>2]=(c[v>>2]|0)+1;c[r>>2]=((c[r>>2]|0)*
10|0)+(c[m>>2]|0)}z=c[w>>2]|0;i=y;return z|0}while(0);if((c[m>>2]|0)==12){c[k>>2]=1;c[m
x3e;>2]=11}do if((c[m>>2]|0)==11){while(1){if(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n
>>2]|0)>>>0>=(c[g>>2]|0)>>>0):0){p=54;break}c[m>>2]=(d[c[n>
;>2]>>0]|0)>>c[o>>2]&15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|
0)>>>0>=10){p=28;break}c[u>>2]=((c[u>>2]|0)*10|0)+(c[m>>2]|0);if((c[u>>
;2]|0)>1e3){p=54;break}}if((p|0)==28){if(!(c[k>>2]|0))break;c[u>>2]=0-(c[u>>2]|0);break}else
if((p|0)==54){z=c[w>>2]|0;i=y;return z|0}}while(0);c[u>>2]=(c[u>>2]|0)+((c[h>>2]|0)+(c[j
>>2]|0));do if(!(c[t>>2]|0)){c[l>>2]=(c[l>>2]|0)+(c[u>>2]|0);c[v>>2]=(
c[v>>2]|0)-(c[u>>2]|0);z=c[l>>2]|0;if((((c[l>>2]|0)<0?0-z|0:z)|0)>5){z=c[w>
;>2]|0;i=y;return z|0}if((c[l>>2]|0)<0){c[r>>2]=(c[r>>2]|0)/(c[2376+(0-(c[l>>2
]|0)<<2)>>2]|0)|0;c[v>>2]=(c[v>>2]|0)+(c[l>>2]|0)}if((c[v>>2]|0)==10
){c[r>>2]=(c[r>>2]|0)/10|0;c[v>>2]=(c[v>>2]|0)-1}if((c[v>>2]|0)>0)if(((c[
r>>2]|0)/(c[2376+(c[v>>2]<<2)>>2]|0)|0|0)>32767){z=c[w>>2]|0;i=y;return z
|0}else{c[w>>2]=Vb(c[r>>2]|0,c[2376+(c[v>>2]<<2)>>2]|0)|0;break}else{c[r>
x3e;2]=_(c[r>>2]|0,c[2376+(0-(c[v>>2]|0)<<2)>>2]|0)|0;if((c[r>>2]|0)>32767
){z=c[w>>2]|0;i=y;return z|0}else{c[w>>2]=c[r>>2]<<16;break}}}else{c[v>>2]=(c[
v>>2]|0)+(c[l>>2]|0);c[u>>2]=(c[u>>2]|0)+(c[l>>2]|0);j=c[r>>2]|0;if((
c[v>>2]|0)>5){g=c[r>>2]|0;h=c[v>>2]|0;if(((j|0)/(c[2376+((c[v>>2]|0)-5<<2
)>>2]|0)|0|0)>32767){c[w>>2]=Vb(g,c[2376+(h-4<<2)>>2]|0)|0;c[c[t>>2]>
;>2]=(c[u>>2]|0)-4;break}else{c[w>>2]=Vb(g,c[2376+(h-5<<2)>>2]|0)|0;c[c[t>>
;2]>>2]=(c[u>>2]|0)-5;break}}if((j|0)>32767){c[w>>2]=Vb(c[r>>2]|0,10)|0;c[c[t>
x3e;2]>>2]=(c[u>>2]|0)-(c[v>>2]|0)+1;break}if((c[u>>2]|0)>0){c[q>>2]=(c[u
>>2]|0)<5?c[u>>2]|0:5;c[u>>2]=(c[u>>2]|0)-(c[q>>2]|0);c[s>>2]=(
c[q>>2]|0)-(c[v>>2]|0);c[r>>2]=_(c[r>>2]|0,c[2376+(c[s>>2]<<2)>
x3e;2]|0)|0;if((c[r>>2]|0)>32767){c[r>>2]=(c[r>>2]|0)/10|0;c[u>>2]=(c[u>>
2]|0)+1}}else c[u>>2]=(c[u>>2]|0)-(c[v>>2]|0);c[w>>2]=c[r>>2]<<16;c[
c[t>>2]>>2]=c[u>>2]}while(0);if(!(c[x>>2]|0)){z=c[w>>2]|0;i=y;return z|0}c[w
x3e;>2]=0-(c[w>>2]|0);z=c[w>>2]|0;i=y;return z|0}function ci(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k
=0;j=i;i=i+32|0;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>>2]=a;c[e>>2]=b;c[f>>2]=c[k>>2
];a=c[f>>2]|0;c[f>>2]=a+1;c[g>>2]=d[a>>0];c[h>>2]=0;do if((c[g>>2]|0
)==28){if(((c[f>>2]|0)+2|0)>>>0<=(c[e>>2]|0)>>>0){c[h>>2]=(((d[
c[f>>2]>>0]|0)<<8|(d[(c[f>>2]|0)+1>>0]|0))&65535)<<16>>
;16;c[f>>2]=(c[f>>2]|0)+2;k=c[h>>2]|0;i=j;return k|0}}else{if((c[g>>2]|0)==29){if(((c[f
x3e;>2]|0)+4|0)>>>0>(c[e>>2]|0)>>>0)break;c[h>>2]=(d[c[f>>
2]>>0]|0)<<24|(d[(c[f>>2]|0)+1>>0]|0)<<16|(d[(c[f>>2]|0)+2>>
;0]|0)<<8|(d[(c[f>>2]|0)+3>>0]|0);c[f>>2]=(c[f>>2]|0)+4;k=c[h>>2]|0;
i=j;return k|0}a=c[g>>2]|0;if((c[g>>2]|0)<247){c[h>>2]=a-139;k=c[h>>2]|0;i=j;return
k|0}b=((c[f>>2]|0)+1|0)>>>0>(c[e>>2]|0)>>>0;if((a|0)<251){if(b)break
;c[h>>2]=((c[g>>2]|0)-247<<8)+(d[c[f>>2]>>0]|0)+108;c[f>>2]=(c[f>
;>2]|0)+1;k=c[h>>2]|0;i=j;return k|0}else{if(b)break;c[h>>2]=(0-((c[g>>2]|0)-251)<<
8)-(d[c[f>>2]>>0]|0)-108;c[f>>2]=(c[f>>2]|0)+1;k=c[h>>2]|0;i=j;return k|0}}while
(0);c[h>>2]=0;k=c[h>>2]|0;i=j;return k|0}function di(a,b){a=a|0;b=b|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]=b;b=c[c[g>>2]>>2]|0;a=c[(c[g>>2]|0)+4>>2]|0;if((
d[c[c[g>>2]>>2]>>0]|0|0)==30){g=bi(b,a,c[e>>2]|0,0)|0;i=f;return g|0}else{g=ci(b,a)|0;g=(
_(g,c[2376+(c[e>>2]<<2)>>2]|0)|0)<<16;i=f;return g|0}return 0}function ei(a){a=a|0;var b
=0,d=0,e=0,f=0,g=0,h=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;b=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[h>>2]=c[(c[g>>
;2]|0)+412>>2];c[b>>2]=(c[h>>2]|0)+80;c[d>>2]=(c[g>>2]|0)+16;c[e>>2]=
161;if((c[(c[g>>2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+16|0)>>>0){
h=c[e>>2]|0;i=f;return h|0}h=c[d>>2]|0;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[c[b>>2]>>
2]=h;h=c[d>>2]|0;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[(c[b>>2]|0)+4>>2]=h;h=c[d>>2]|0
;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[(c[b>>2]|0)+8>>2]=h;h=Tb(fi(c[d>>2]|0)|0)|0;c[(c[b>
x3e;2]|0)+12>>2]=h;c[e>>2]=0;h=c[e>>2]|0;i=f;return h|0}function fi(a){a=a|0;var b=0,e=0,f=0;e=i;i
=i+16|0;f=e;c[f>>2]=a;b=c[c[f>>2]>>2]|0;a=c[(c[f>>2]|0)+4>>2]|0;if((d[c[c[f>
;>2]>>2]>>0]|0|0)==30){f=bi(b,a,0,0)|0;i=e;return f|0}else{f=(ci(b,a)|0)<<16;i=e;return f|0}return
0}function gi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+12|0;d=f+8|0;b=f+4|0;e=f;c[g>>2]=a;c[d>>2]=
c[(c[g>>2]|0)+412>>2];c[b>>2]=(c[g>>2]|0)+16;c[e>>2]=161;if((c[(c[g>>
;2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+8|0)>>>0){g=c[e>>2]|0;i=f
;return g|0}g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+116>>2]=g;g=hi(c[b>>
;2]|0)|0;c[(c[d>>2]|0)+112>>2]=g;c[e>>2]=0;g=c[e>>2]|0;i=f;return g|0}function hi(a){a=a
|0;var b=0,e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=a;b=c[c[f>>2]>>2]|0;a=c[(c[f>>2]|0)+4>
x3e;2]|0;if((d[c[c[f>>2]>>2]>>0]|0|0)==30){f=(bi(b,a,0,0)|0)>>16;i=e;return f|0}else{f=ci
(b,a)|0;i=e;return f|0}return 0}function ii(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+12|0;d=f+8|0;b=f+4|0;e=f;c[g>
x3e;2]=a;c[d>>2]=c[(c[g>>2]|0)+412>>2];c[b>>2]=(c[g>>2]|0)+16;c[e>>2
]=161;if((c[(c[g>>2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+12|0)>>>
0){g=c[e>>2]|0;i=f;return g|0}g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+128>
x3e;2]=g;g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+132>>2]=g;g=hi(c[b>>2
]|0)|0;c[(c[d>>2]|0)+136>>2]=g;c[e>>2]=0;g=c[e>>2]|0;i=f;return g|0}function ji(a,b){a=a
|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;if(c[(c[d>>2]|0)+
28>>2]|0){i=g;return}c[f>>2]=c[c[d>>2]>>2];fe(c[f>>2]|0,c[e>>2]|0);i
=g;return}function ki(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;o=i;i=i+32|0;h=o+20|0;j=o+16|0;k=o+12
|0;p=o+8|0;l=o+4|0;m=o+24|0;n=o;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[p>>2]=g;f=Kc(c[k>
x3e;2]|0,c[p>>2]|0)|0;c[l>>2]=f;if(f|0){p=c[l>>2]|0;i=o;return p|0}a[m>>0]=ke(c[k>
x3e;2]|0,l)|0;if(c[l>>2]|0){p=c[l>>2]|0;i=o;return p|0}a[c[h>>2]>>0]=a[m>>0]|0
;c[(c[h>>2]|0)+20>>2]=0;a:do switch(d[m>>0]|0|0){case 0:{c[(c[h>>2]|0)+12>>2]=
c[j>>2];break}case 3:{c[n>>2]=(Pc(c[k>>2]|0,l)|0)&65535;if(c[l>>2]|0){p=c[l>
x3e;2]|0;i=o;return p|0}else{c[(c[h>>2]|0)+12>>2]=((c[n>>2]|0)*3|0)+2;break a}}default:{c[l>
x3e;2]=3;p=c[l>>2]|0;i=o;return p|0}}while(0);c[l>>2]=de(c[k>>2]|0,c[(c[h>>2]|0)+12>
;>2]|0,(c[h>>2]|0)+8|0)|0;p=c[l>>2]|0;i=o;return p|0}function li(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16
|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;if(!(c[c[b>>2]>>2]|0)){i=f;return}c[e>>2]=c[c[b>
x3e;2]>>2];c[d>>2]=c[(c[e>>2]|0)+28>>2];if(c[(c[b>>2]|0)+28>>2]|0)fe
(c[e>>2]|0,(c[b>>2]|0)+28|0);Fb(c[d>>2]|0,c[(c[b>>2]|0)+24>>2]|0);c[(c[b>
x3e;2]|0)+24>>2]=0;e=c[b>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>
x3e;2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0;i=f;return}function mi(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,v=0,w=0,x=0,y=0;y=i;i=i+48|0;r=y+36|0;s
=y+32|0;t=y+28|0;l=y+24|0;m=y+20|0;u=y+42|0;x=y+16|0;v=y+12|0;n=y+40|0;w=y+8|0;p=y+4|0;o=y;c[r>>2]=d;c[s>>2]=
f;c[t>>2]=g;c[l>>2]=h;c[m>>2]=j;a[u>>0]=k;c[x>>2]=c[(c[t>>2]|0)+28
x3e;>2];c[v>>2]=0;a:do if((c[m>>2]|0)>>>0>2){c[(c[r>>2]|0)+4>>2
]=(c[l>>2]|0)+(c[m>>2]|0);g=Kc(c[t>>2]|0,c[(c[r>>2]|0)+4>>2]|0)|0;c[v>>
;2]=g;if(((g|0)==0?(g=(ke(c[t>>2]|0,v)|0)&255,c[c[r>>2]>>2]=g,(c[v>>2]|0)==0):0)?(g
=hc(c[x>>2]|0,2,0,c[s>>2]|0,0,v)|0,c[(c[r>>2]|0)+8>>2]=g,(c[v>>2]|0)==0):0){b[
c[(c[r>>2]|0)+8>>2]>>1]=0;switch(c[c[r>>2]>>2]|0){case 0:{if((c[s>>2
]|0)>>>0<=0){q=39;break a}p=ee(c[t>>2]|0,(c[s>>2]|0)-1<<1)|0;c[v>>2]=
p;if(p|0)break a;c[w>>2]=1;while(1){l=c[t>>2]|0;if((c[w>>2]|0)>>>0>=(c[s>
x3e;2]|0)>>>0)break;q=ie(l)|0;b[(c[(c[r>>2]|0)+8>>2]|0)+(c[w>>2]<<1)>
;>1]=q;c[w>>2]=(c[w>>2]|0)+1}ge(l);q=39;break a}case 2:case 1:{c[w>>2]=1;b:while(1){if((c[w
x3e;>2]|0)>>>0>=(c[s>>2]|0)>>>0){q=39;break a}b[n>>1]=Pc(c[t>
x3e;2]|0,v)|0;if(c[v>>2]|0)break a;l=c[t>>2]|0;if((c[c[r>>2]>>2]|0)==2){c[p>>2
]=(Pc(l,v)|0)&65535;if(c[v>>2]|0)break a}else{c[p>>2]=(ke(l,v)|0)&255;if(c[v>>2]|0)break
a}if((e[n>>1]|0)>>>0>(65535-(c[p>>2]|0)|0)>>>0)c[p>>2]=65535-(
e[n>>1]|0);c[o>>2]=0;while(1){if((c[w>>2]|0)>>>0>=(c[s>>2]|0)>
x3e;>0)continue b;if((c[o>>2]|0)>>>0>(c[p>>2]|0)>>>0)continue b;b[(c
[(c[r>>2]|0)+8>>2]|0)+(c[w>>2]<<1)>>1]=b[n>>1]|0;c[o>>2]=(
c[o>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1;b[n>>1]=(b[n>>1]|0)+1<<16>
x3e;16}}}default:{c[v>>2]=3;break a}}}}else{c[(c[r>>2]|0)+4>>2]=c[m>>2];switch(c[m>
x3e;2]|0){case 0:{if((c[s>>2]|0)>>>0>229){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0
,c[s>>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+
8>>2]|0,5556,c[s>>2]<<1|0)|0;q=39;break a}case 1:{if((c[s>>2]|0)>>>0>
;166){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0,c[s>>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2
]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+8>>2]|0,6014,c[s>>2]<<1|0)|0;q=39;break
a}case 2:{if((c[s>>2]|0)>>>0>87){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0,c[s>
;>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+8>
x3e;2]|0,6346,c[s>>2]<<1|0)|0;q=39;break a}default:{c[v>>2]=3;break a}}}while(0);if((q|0)==39?a[u
x3e;>0]|0:0)c[v>>2]=ni(c[r>>2]|0,c[s>>2]|0,c[x>>2]|0)|0;if(!(c[v>>2]|0)){
x=c[v>>2]|0;i=y;return x|0}Fb(c[x>>2]|0,c[(c[r>>2]|0)+8>>2]|0);c[(c[r>>2]|0)+8
>>2]=0;Fb(c[x>>2]|0,c[(c[r>>2]|0)+12>>2]|0);c[(c[r>>2]|0)+12>>2]=0;c
[c[r>>2]>>2]=0;c[(c[r>>2]|0)+4>>2]=0;c[(c[r>>2]|0)+8>>2]=0;x=c[v>
;>2]|0;i=y;return x|0}function ni(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;o=i;i=i+32|0;g=o+20|0;h=o+16
|0;j=o+12|0;k=o+8|0;l=o+4|0;m=o;n=o+24|0;c[g>>2]=a;c[h>>2]=d;c[j>>2]=f;c[k>>2]=0;b[n>
;>1]=0;if((c[(c[g>>2]|0)+16>>2]|0)>>>0>0){d=c[k>>2]|0;i=o;return d|0}c[l
x3e;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[h>>2]|0)>>>0)break;if((e[(
c[(c[g>>2]|0)+8>>2]|0)+(c[l>>2]<<1)>>1]|0|0)>(e[n>>1]|0|0))b[n
x3e;>1]=b[(c[(c[g>>2]|0)+8>>2]|0)+(c[l>>2]<<1)>>1]|0;c[l>>2]=(c
[l>>2]|0)+1}d=hc(c[j>>2]|0,2,0,(e[n>>1]|0)+1|0,0,k)|0;c[(c[g>>2]|0)+12>>2]=d;if
(c[k>>2]|0){d=c[k>>2]|0;i=o;return d|0}c[m>>2]=(c[h>>2]|0)-1;while(1){if((c[m>>
;2]|0)<0)break;b[(c[(c[g>>2]|0)+12>>2]|0)+((e[(c[(c[g>>2]|0)+8>>2]|0)+(c[m>>
;2]<<1)>>1]|0)<<1)>>1]=c[m>>2];c[m>>2]=(c[m>>2]|0)+-1}c[(c
[g>>2]|0)+16>>2]=e[n>>1];c[(c[g>>2]|0)+20>>2]=c[h>>2];d=c[k>>
;2]|0;i=o;return d|0}function oi(a,f,g,h,j,k){a=a|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;F=i;i=i+80|0;l=F+64|0;m=F+60|0;o=F+56|0;p=F+52|0;q=F+48|0;r=F+44|0;t=F+40|0;s=F+36|0;z
=F+32|0;x=F+68|0;w=F+28|0;C=F+24|0;B=F+20|0;y=F+16|0;A=F+12|0;v=F+8|0;D=F+4|0;u=F;c[l>>2]=a;c[m>>2]=f;c[o>
;>2]=g;c[p>>2]=h;c[q>>2]=j;c[r>>2]=k;c[t>>2]=0;if(!(c[(c[m>>2]|0)+8>
x3e;2]|0)){c[t>>2]=3;E=c[t>>2]|0;i=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>
x3e;>0>=256)break;b[(c[l>>2]|0)+12+(c[z>>2]<<1)>>1]=0;b[(c[l>>2]|0)+
524+(c[z>>2]<<1)>>1]=0;c[z>>2]=(c[z>>2]|0)+1}if((c[r>>2]|0)>>
;>0<=1){switch(c[r>>2]|0){case 0:{Ss((c[l>>2]|0)+12|0,6520,512)|0;break}case 1:{Ss((c[l>>
;2]|0)+12|0,7032,512)|0;break}default:{c[t>>2]=3;E=c[t>>2]|0;i=F;return E|0}}c[(c[l>>2]|0)+8>
x3e;2]=0;c[t>>2]=ni(c[m>>2]|0,c[o>>2]|0,c[(c[p>>2]|0)+28>>2]|0)|0;if(c[t>
x3e;2]|0){E=c[t>>2]|0;i=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=256
)break;c[D>>2]=e[(c[l>>2]|0)+12+(c[z>>2]<<1)>>1];c[u>>2]=0;if(c[D>
;>2]|0)c[u>>2]=pi(c[m>>2]|0,c[D>>2]|0)|0;if(c[u>>2]|0){b[(c[l>>2]|0)+524+(
c[z>>2]<<1)>>1]=c[u>>2];c[(c[l>>2]|0)+8>>2]=(c[z>>2]|0)+1}
else{b[(c[l>>2]|0)+524+(c[z>>2]<<1)>>1]=0;b[(c[l>>2]|0)+12+(c[z>>2]
x3c;<1)>>1]=0}c[z>>2]=(c[z>>2]|0)+1}E=c[t>>2]|0;i=F;return E|0}c[(c[l>>2]|
0)+4>>2]=(c[q>>2]|0)+(c[r>>2]|0);h=Kc(c[p>>2]|0,c[(c[l>>2]|0)+4>>2]|
0)|0;c[t>>2]=h;if(h|0){E=c[t>>2]|0;i=F;return E|0}h=(ke(c[p>>2]|0,t)|0)&255;c[c[l>>
2]>>2]=h;if(c[t>>2]|0){E=c[t>>2]|0;i=F;return E|0}c[s>>2]=(ke(c[p>>2]|0,t)|0)
x26;255;if(c[t>>2]|0){E=c[t>>2]|0;i=F;return E|0}a:do switch(c[c[l>>2]>>2]&127|0){case
0:{c[(c[l>>2]|0)+8>>2]=(c[s>>2]|0)+1;h=ee(c[p>>2]|0,c[s>>2]|0)|0;c[t>>
;2]=h;if(h|0){E=c[t>>2]|0;i=F;return E|0}c[C>>2]=c[(c[p>>2]|0)+32>>2];c[z>>2]=
1;while(1){if((c[z>>2]|0)>>>0>(c[s>>2]|0)>>>0)break;h=c[C>>2]|0
;c[C>>2]=h+1;c[w>>2]=d[h>>0];if((c[z>>2]|0)>>>0<(c[o>>2]|0
)>>>0){b[(c[l>>2]|0)+524+(c[w>>2]<<1)>>1]=c[z>>2];b[(c[l>
x3e;2]|0)+12+(c[w>>2]<<1)>>1]=b[(c[(c[m>>2]|0)+8>>2]|0)+(c[z>>2]<
;<1)>>1]|0}c[z>>2]=(c[z>>2]|0)+1}ge(c[p>>2]|0);break}case 1:{c[y>>2]=1;c[(
c[l>>2]|0)+8>>2]=0;c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[s>
x3e;2]|0)>>>0){E=30;break}c[w>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break
}c[B>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break}c[B>>2]=(c[B>>2
]|0)+1;if((c[B>>2]|0)>>>0>(c[(c[l>>2]|0)+8>>2]|0)>>>0)c[(c[l>
;>2]|0)+8>>2]=c[B>>2];c[A>>2]=c[y>>2];while(1){if((c[A>>2]|0)>>
x3e;0>=((c[B>>2]|0)+(c[y>>2]|0)|0)>>>0)break;if((c[w>>2]|0)>>>0
<256?(c[A>>2]|0)>>>0<(c[o>>2]|0)>>>0:0){b[(c[l>>2]|0)+524+(
c[w>>2]<<1)>>1]=c[A>>2];b[(c[l>>2]|0)+12+(c[w>>2]<<1)>
;>1]=b[(c[(c[m>>2]|0)+8>>2]|0)+(c[A>>2]<<1)>>1]|0}c[A>>2]=(c[A
x3e;>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1}c[z>>2]=(c[z>>2]|0)+1;c[y>>2]=(c[y>
;>2]|0)+(c[B>>2]|0)}if((E|0)==30){if((c[(c[l>>2]|0)+8>>2]|0)>>>0<=256)break
a;c[(c[l>>2]|0)+8>>2]=256;break a}else if((E|0)==58){E=c[t>>2]|0;i=F;return E|0}break}default:{c[
t>>2]=3;E=c[t>>2]|0;i=F;return E|0}}while(0);if(!(c[c[l>>2]>>2]&128)){E=c[t>
x3e;2]|0;i=F;return E|0}c[s>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=c[t>>2]|0;i
=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[s>>2]|0)>>
x3e;0){E=58;break}c[w>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break}b[x>>1]=
Pc(c[p>>2]|0,t)|0;if(c[t>>2]|0){E=58;break}b[(c[l>>2]|0)+12+(c[w>>2]<<1)>
x3e;1]=b[x>>1]|0;c[v>>2]=0;while(1){if((c[v>>2]|0)>>>0>=(c[o>>2]|0)
x3e;>>0)break;n=c[v>>2]|0;if((e[(c[(c[m>>2]|0)+8>>2]|0)+(c[v>>2]<<1)
x3e;>1]|0|0)==(e[x>>1]|0|0)){E=42;break}c[v>>2]=n+1}if((E|0)==42){E=0;b[(c[l>>2]|0)+524+(c[w
x3e;>2]<<1)>>1]=n}c[z>>2]=(c[z>>2]|0)+1}if((E|0)==58){E=c[t>>2]|0;i=F;return
E|0}return 0}function pi(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>
;2]=b;c[g>>2]=0;if((c[f>>2]|0)>>>0>(c[(c[d>>2]|0)+16>>2]|0)>>
;>0){g=c[g>>2]|0;i=h;return g|0}c[g>>2]=e[(c[(c[d>>2]|0)+12>>2]|0)+(c[f>>
2]<<1)>>1];g=c[g>>2]|0;i=h;return g|0}function qi(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+32|0;n=l+28|0;m=l+24|0;h=l+20|0;j=l+16|0;f=l+12|0;e=l+8|0;g=l+4|0;k=l;c[n>>2]=b;c[m>>2]=d;c
[h>>2]=(c[n>>2]|0)+20;c[j>>2]=c[(c[c[h>>2]>>2]|0)+28>>2];c[k>
x3e;2]=0;c[g>>2]=Zh(c[h>>2]|0,c[m>>2]|0,f,e)|0;if(c[g>>2]|0){n=c[k>>2]|0;i=l;return
n|0}c[k>>2]=bc(c[j>>2]|0,(c[e>>2]|0)+1|0,g)|0;if(!(c[g>>2]|0)){Ss(c[k>>2]|0,c
[f>>2]|0,c[e>>2]|0)|0;a[(c[k>>2]|0)+(c[e>>2]|0)>>0]=0}ji(c[h>>2]|0,f
);n=c[k>>2]|0;i=l;return n|0}function ri(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;e=h+12|0;c[
d>>2]=b;c[f>>2]=0;c[g>>2]=(cs(c[d>>2]|0)|0)+1;a[e>>0]=1;a:while(1){if(!(a[e>
;>0]|0))break;if((c[g>>2]|0)>=7?(a[(c[d>>2]|0)+6>>0]|0)==43:0){c[f>>2]=0;while
(1){if((c[f>>2]|0)>=6)break;if(!(65<=(a[(c[d>>2]|0)+(c[f>>2]|0)>>0]|0)?(a[(c[d
>>2]|0)+(c[f>>2]|0)>>0]|0)<=90:0))a[e>>0]=0;c[f>>2]=(c[f>>2]|0)+
1}if(!(a[e>>0]|0))continue;c[f>>2]=7;while(1){if((c[f>>2]|0)>=(c[g>>2]|0))continue
a;a[(c[d>>2]|0)+((c[f>>2]|0)-7)>>0]=a[(c[d>>2]|0)+(c[f>>2]|0)>>0]|0;
c[f>>2]=(c[f>>2]|0)+1}}a[e>>0]=0}i=h;return}function si(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;g=e+8|0;f=e+4|0;d=e;c[h>>2]=a;c[g>>2]=b;c[d>>2]=oe(c[h>>2]|0,c[g>
;>2]|0,f)|0;c[f>>2]=c[f>>2];i=e;return c[d>>2]|0}function ti(a){a=a|0;var b=0,d=0,e=0,f=0,g=0
,h=0;h=i;i=i+32|0;b=h+16|0;e=h+12|0;f=h+8|0;g=h+4|0;d=h;c[b>>2]=a;c[e>>2]=c[b>>2];if(!(c[e>
x3e;2]|0)){i=h;return}c[f>>2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[e>>2]|0)+532
x3e;>2];if(c[g>>2]|0)Va[c[(c[g>>2]|0)+12>>2]&63](c[e>>2]|0);c[d>>2]=
c[(c[e>>2]|0)+692>>2];if(!(c[d>>2]|0)){i=h;return}ui(c[d>>2]|0);Fb(c[f>>2]|0,c
[(c[e>>2]|0)+692>>2]|0);c[(c[e>>2]|0)+692>>2]=0;i=h;return}function ui(a){a=a|0;var b=0,
d=0,e=0,f=0;f=i;i=i+16|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;c[e>>2]=c[(c[b>>2]|0)+4>>2];li((c
[b>>2]|0)+84|0);li((c[b>>2]|0)+1208|0);li((c[b>>2]|0)+20|0);li((c[b>>2]|0)+1176|0);if((c
[(c[b>>2]|0)+1892>>2]|0)>>>0>0){c[d>>2]=0;while(1){a=c[e>>2]|0;if((c
[d>>2]|0)>>>0>=(c[(c[b>>2]|0)+1892>>2]|0)>>>0)break;vi(a,c[(c[b
>>2]|0)+1896+(c[d>>2]<<2)>>2]|0);c[d>>2]=(c[d>>2]|0)+1}Fb(a,c[(c[b
x3e;>2]|0)+1896>>2]|0);c[(c[b>>2]|0)+1896>>2]=0}wi((c[b>>2]|0)+116|0);xi((c[b>
x3e;2]|0)+1152|0,c[c[b>>2]>>2]|0);vi(c[e>>2]|0,(c[b>>2]|0)+1324|0);zi((c[b>>2]|
0)+2024|0,c[c[b>>2]>>2]|0);Fb(c[e>>2]|0,c[(c[b>>2]|0)+2060>>2]|0);c[(c[b>
x3e;2]|0)+2060>>2]=0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1304>>2]|0);c[(c[b>>2]|0)+1304
>>2]=0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1308>>2]|0);c[(c[b>>2]|0)+1308>>2]=
0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1316>>2]|0);c[(c[b>>2]|0)+1316>>2]=0;Fb(c[e>
x3e;2]|0,c[(c[b>>2]|0)+1320>>2]|0);c[(c[b>>2]|0)+1320>>2]=0;i=f;return}function vi(a,b){
a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=f;return
}li((c[e>>2]|0)+532|0);Fb(c[d>>2]|0,c[(c[e>>2]|0)+564>>2]|0);c[(c[e>>2]|0)+564
>>2]=0;i=f;return}function wi(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]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+8>>2]=0;i=b;return}function xi(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)+28>>2];yi(c[e>>2]|0,c[f>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>
2]|0);c[(c[e>>2]|0)+8>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;i=
d;return}function yi(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;Fb(c[f>
;>2]|0,c[(c[e>>2]|0)+12>>2]|0);c[(c[e>>2]|0)+12>>2]=0;c[(c[e>>2]|0)+16>
;>2]=0;i=d;return}function zi(b,d){b=b|0;d=d|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]=d;if(c[(c[e>>2]|0)+8>>2]|0)fe(c[f>>2]|0,(c[e>>2]|0)+8|0);c[(c[e>>2]|0)+12
x3e;>2]=0;a[c[e>>2]>>0]=0;c[(c[e>>2]|0)+4>>2]=0;i=g;return}function Ai(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;o=i;i=i+240|0;k=o+232|0;n=o+228|0;l=o+224|0;e=o+220|0;b=o+216|0;d=o+212|0;m=o+208
|0;h=o+12|0;g=o+8|0;f=o+4|0;j=o;c[k>>2]=a;c[n>>2]=c[k>>2];c[l>>2]=0;c[e>>2]=Bi
(c[n>>2]|0)|0;do if(c[e>>2]|0){c[b>>2]=c[c[k>>2]>>2];c[d>>2]=c[(c[b
x3e;>2]|0)+692>>2];c[g>>2]=c[(c[c[k>>2]>>2]|0)+100>>2];c[m>>2]=
bc(c[g>>2]|0,132,l)|0;if(c[l>>2]|0){n=c[l>>2]|0;i=o;return n|0}Ci((c[d>>2]|0)+1324|0,h);
c[l>>2]=Oa[c[c[e>>2]>>2]&63](c[(c[c[k>>2]>>2]|0)+100>>2]|0,h,c[
m>>2]|0)|0;if(c[l>>2]|0){n=c[l>>2]|0;i=o;return n|0}c[f>>2]=c[(c[d>>2]|0)+1892
>>2];while(1){if((c[f>>2]|0)>>>0<=0){a=8;break}c[j>>2]=c[(c[d>>2]|0)+
1896+((c[f>>2]|0)-1<<2)>>2];Ci(c[j>>2]|0,h);c[l>>2]=Oa[c[c[e>>2]>
;>2]&63](c[(c[c[k>>2]>>2]|0)+100>>2]|0,h,(c[m>>2]|0)+4+((c[f>>2]|0)-
1<<2)|0)|0;if(c[l>>2]|0){a=10;break}c[f>>2]=(c[f>>2]|0)+-1}if((a|0)==8){c[(c[k>>
;2]|0)+40>>2]=c[m>>2];break}else if((a|0)==10){n=c[l>>2]|0;i=o;return n|0}}while(0);c[(c[n>
x3e;2]|0)+44>>2]=-1;n=c[l>>2]|0;i=o;return n|0}function Bi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=i;i=i+32|0
;f=e+16|0;h=e+12|0;g=e+8|0;d=e+4|0;b=e;c[f>>2]=a;c[h>>2]=c[c[f>>2]>>2];c[g>>2]=
c[(c[h>>2]|0)+692>>2];c[d>>2]=c[(c[g>>2]|0)+2052>>2];c[b>>2]=Wc(c[(c
[(c[c[f>>2]>>2]|0)+96>>2]|0)+4>>2]|0,11524)|0;if(!((c[b>>2]|0)!=0&(c[d>
;>2]|0)!=0)){h=0;i=e;return h|0}if(!(c[c[d>>2]>>2]|0)){h=0;i=e;return h|0}h=Ta[c[c[d>>2]>
;>2]&63](c[b>>2]|0)|0;i=e;return h|0}function Ci(d,e){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;l
=k+16|0;f=k+12|0;h=k+8|0;j=k+4|0;g=k;c[l>>2]=d;c[f>>2]=e;c[h>>2]=(c[l>>2]|0)+172;Ns(c[f
x3e;>2]|0,0,196)|0;d=a[c[h>>2]>>0]|0;a[(c[f>>2]|0)+8>>0]=d;c[g>>2]=d&
;255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break
;b[(c[f>>2]|0)+12+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+4+(c[j>>2]<<
;2)>>2];c[j>>2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|0)+1>>0]|0;a[(c[f>>2]|0)+
9>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c
[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+40+(c[j>>2]<<1)>>1]=c[(c[h>
;>2]|0)+60+(c[j>>2]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|
0)+2>>0]|0;a[(c[f>>2]|0)+10>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if((c[
j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+60+(c[j>
x3e;2]<<1)>>1]=c[(c[h>>2]|0)+100+(c[j>>2]<<2)>>2];c[j>>2]=(
c[j>>2]|0)+1}l=a[(c[h>>2]|0)+3>>0]|0;a[(c[f>>2]|0)+11>>0]=l;c[g>>2]=
l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>
;0)break;b[(c[f>>2]|0)+88+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+156+(c[j>>2
]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}c[(c[f>>2]|0)+108>>2]=c[(c[h>
x3e;2]|0)+196>>2];c[(c[f>>2]|0)+112>>2]=c[(c[h>>2]|0)+200>>2];c[(c[f>>
;2]|0)+116>>2]=c[(c[h>>2]|0)+204>>2];b[(c[f>>2]|0)+120>>1]=c[(c[h>>2
]|0)+208>>2];b[(c[f>>2]|0)+122>>1]=c[(c[h>>2]|0)+212>>2];l=a[(c[h>>2
]|0)+216>>0]|0;a[(c[f>>2]|0)+124>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if
((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+128+(c[j
x3e;>2]<<1)>>1]=c[(c[h>>2]|0)+220+(c[j>>2]<<2)>>2];c[j>>
;2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|0)+217>>0]|0;a[(c[f>>2]|0)+125>>0]=l;c[g>
x3e;2]=l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>
;>0)break;b[(c[f>>2]|0)+154+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+272+(c[j>
x3e;2]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}a[(c[f>>2]|0)+126>>0]=a[(c[h>
;>2]|0)+324>>0]|0;c[(c[f>>2]|0)+184>>2]=c[(c[h>>2]|0)+336>>2];c[(c[f>
;>2]|0)+4>>2]=c[(c[h>>2]|0)+332>>2];i=k;return}function Di(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h
=0,j=0,k=0;h=i;i=i+32|0;j=h+24|0;g=h+20|0;k=h+16|0;b=h+12|0;f=h+8|0;d=h+4|0;e=h;c[j>>2]=a;c[g>>2]=c[j>
x3e;2];c[k>>2]=c[c[g>>2]>>2];c[b>>2]=c[(c[k>>2]|0)+692>>2];c[f>
x3e;2]=c[(c[j>>2]|0)+40>>2];if(!(c[f>>2]|0)){i=h;return}c[d>>2]=Bi(c[g>>2]|0)|
0;if(!(c[d>>2]|0)){i=h;return}Va[c[(c[d>>2]|0)+8>>2]&63](c[c[f>>2]>>2]|0);
c[e>>2]=c[(c[b>>2]|0)+1892>>2];while(1){if((c[e>>2]|0)>>>0<=0)break;
Va[c[(c[d>>2]|0)+8>>2]&63](c[(c[f>>2]|0)+4+((c[e>>2]|0)-1<<2)>>
2]|0);c[e>>2]=(c[e>>2]|0)+-1}i=h;return}function Ei(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;g=i;i=i+32|0;b=
g+20|0;j=g+16|0;h=g+12|0;f=g+8|0;e=g+4|0;d=g;c[b>>2]=a;c[j>>2]=c[(c[b>>2]|0)+4>>2];c[h
x3e;>2]=c[(c[j>>2]|0)+692>>2];c[f>>2]=c[(c[h>>2]|0)+2052>>2];if(!(c[f>
;>2]|0)){i=g;return 0}c[e>>2]=Wc(c[(c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2]|0)+4>>
;2]|0,11524)|0;if(!(c[e>>2]|0)){i=g;return 0}c[d>>2]=Ta[c[(c[f>>2]|0)+8>>2]&63](c[e
>>2]|0)|0;c[(c[(c[b>>2]|0)+156>>2]|0)+36>>2]=c[d>>2];i=g;return 0}function Fi(
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)+156>>2]|0)+36>>2]=0;i=b
;return}function Gi(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o+
20|0;j=o+16|0;k=o+12|0;l=o+8|0;n=o+4|0;m=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[n
x3e;>2]=c[g>>2];c[m>>2]=c[h>>2];if(!(c[n>>2]|0)){c[f>>2]=37;n=c[f>
x3e;2]|0;i=o;return n|0}if(!(c[m>>2]|0))c[k>>2]=c[k>>2]|3;if(c[k>>2]&1|0)c[m>
x3e;2]=0;if(c[m>>2]|0?(c[c[h>>2]>>2]|0)!=(c[(c[g>>2]|0)+4>>2]|0):0){c[f>
x3e;2]=35;n=c[f>>2]|0;i=o;return n|0}c[l>>2]=Hi(c[n>>2]|0,c[m>>2]|0,c[j>>2]|0,
c[k>>2]|0)|0;c[f>>2]=c[l>>2];n=c[f>>2]|0;i=o;return n|0}function Hi(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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;V=i;i=i+1120|0;A=V+1092|0;B=V+1088|0;C=V+1084|0;x=V+1080|0;D=V+1076|0;I=V+1072|0;H=V+144
|0;J=V+140|0;O=V+1113|0;M=V+1112|0;r=V+136|0;K=V+120|0;L=V+112|0;k=V+108|0;m=V+104|0;n=V+100|0;l=V+1104|0;q=V+96|0;p=V+92|0;o=V+
1101|0;s=V+88|0;t=V+84|0;u=V+80|0;v=V+64|0;w=V+56|0;F=V+40|0;P=V+32|0;E=V+24|0;N=V+1100|0;z=V+1098|0;y=V+1096|0;Q=V+16|0;G=V+12|
0;R=V+8|0;S=V+4|0;T=V;c[B>>2]=f;c[C>>2]=g;c[x>>2]=h;c[D>>2]=j;c[J>>2]=c[(c[B
x3e;>2]|0)+4>>2];c[r>>2]=c[(c[J>>2]|0)+692>>2];a[M>>0]=0;if((c[(c[r>
x3e;2]|0)+1324+128>>2]|0)!=65535?c[(c[r>>2]|0)+1152+12>>2]|0:0){if(c[x>>2]|0?(c[x>
x3e;2]=pi((c[r>>2]|0)+1152|0,c[x>>2]|0)|0,(c[x>>2]|0)==0):0){c[A>>2]=6;U=c[A>>
2]|0;i=V;return U|0}}else U=6;if((U|0)==6?(c[x>>2]|0)>>>0>=(c[(c[r>>2]|0)+12>>
2]|0)>>>0:0){c[A>>2]=6;U=c[A>>2]|0;i=V;return U|0}if(c[D>>2]&1024|0)c[D>
x3e;2]=c[D>>2]|3;c[(c[B>>2]|0)+164>>2]=65536;c[(c[B>>2]|0)+168>>2]=65536;if(c[
C>>2]|0){c[(c[B>>2]|0)+164>>2]=c[(c[C>>2]|0)+12+4>>2];c[(c[B>>2]|0)+
168>>2]=c[(c[C>>2]|0)+12+8>>2]}if((((c[C>>2]|0?(c[k>>2]=c[c[C>>2]>
;>2],c[m>>2]=c[(c[k>>2]|0)+532>>2],c[n>>2]=c[(c[k>>2]|0)+104>>2
],(c[(c[C>>2]|0)+44>>2]|0)!=-1):0)?c[(c[m>>2]|0)+140>>2]|0:0)?(c[D>>2]&8|
0)==0:0)?(c[I>>2]=Na[c[(c[m>>2]|0)+104>>2]&1](c[J>>2]|0,c[(c[C>>2]|0)+44
x3e;>2]|0,c[x>>2]|0,c[D>>2]|0,c[n>>2]|0,(c[B>>2]|0)+76|0,l)|0,(c[I>>2]|0)==
0):0){b[(c[B>>2]|0)+108+2>>1]=0;b[(c[B>>2]|0)+108>>1]=0;c[(c[B>>2]|0)+24>
x3e;2]=d[l+1>>0]<<6;c[(c[B>>2]|0)+24+4>>2]=d[l>>0]<<6;c[(c[B>
x3e;2]|0)+24+8>>2]=a[l+2>>0]<<6;c[(c[B>>2]|0)+24+12>>2]=a[l+3>>0]<
;<6;c[(c[B>>2]|0)+24+16>>2]=d[l+4>>0]<<6;c[(c[B>>2]|0)+24+20>>2
]=a[l+5>>0]<<6;c[(c[B>>2]|0)+24+24>>2]=a[l+6>>0]<<6;c[(c[B>>
;2]|0)+24+28>>2]=d[l+7>>0]<<6;c[(c[B>>2]|0)+72>>2]=1651078259;if(c[D>>
;2]&16|0){c[(c[B>>2]|0)+100>>2]=a[l+5>>0];c[(c[B>>2]|0)+104>>2]=a[l+6>
;>0]}else{c[(c[B>>2]|0)+100>>2]=a[l+2>>0];c[(c[B>>2]|0)+104>>2]=a[l+3>
;>0]}c[A>>2]=c[I>>2];U=c[A>>2]|0;i=V;return U|0}if(c[D>>2]&16384|0){c[A>
x3e;2]=6;U=c[A>>2]|0;i=V;return U|0}k=c[r>>2]|0;if(c[(c[r>>2]|0)+1892>>2]|0){a[o>
x3e;0]=Ii(k+2024|0,c[x>>2]|0)|0;if((d[o>>0]|0)>>>0>=(c[(c[r>>2]|0)+1892>
x3e;2]|0)>>>0)a[o>>0]=(c[(c[r>>2]|0)+1892>>2]|0)-1;c[q>>2]=c[(c[r>
x3e;2]|0)+1324+64>>2];c[p>>2]=c[(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|
0)+64>>2];n=(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|0)+48|0;c[K>>2]=c[n
>>2];c[K+4>>2]=c[n+4>>2];c[K+8>>2]=c[n+8>>2];c[K+12>>2]=c[n+12>
x3e;2];o=(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|0)+68|0;c[L>>2]=c[o>>2
];c[L+4>>2]=c[o+4>>2];if((c[q>>2]|0)!=(c[p>>2]|0)){o=xb(c[(c[B>>2]|0)+164>
;>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[(c[B>>2]|0)+164>>2]=o;q=xb(c[(c[B>>2]|0)+
168>>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[(c[B>>2]|0)+168>>2]=q;a[M>>0]=1}}
else{q=k+1324+48|0;c[K>>2]=c[q>>2];c[K+4>>2]=c[q+4>>2];c[K+8>>2]=c[q+8>
x3e;2];c[K+12>>2]=c[q+12>>2];q=(c[r>>2]|0)+1324+68|0;c[L>>2]=c[q>>2];c[L+4>
;>2]=c[q+4>>2]}b[(c[B>>2]|0)+108+2>>1]=0;b[(c[B>>2]|0)+108>>1]=0;if(!(c[D
>>2]&1))k=(c[D>>2]&2|0)==0;else k=0;a[O>>0]=k&1;c[(c[B>>2]|0)+72>>
;2]=1869968492;Ji(H,c[J>>2]|0,c[C>>2]|0,c[B>>2]|0,a[O>>0]|0,c[D>>2]>>
;16&15);if(c[D>>2]&256|0)a[H+753>>0]=1;a[H+66>>0]=c[D>>2]&0;c[I>>
;2]=Mi(c[J>>2]|0,c[x>>2]|0,s,t)|0;do if(((c[I>>2]|0)==0?(c[I>>2]=Ni(H,c[C>>2]|
0,c[x>>2]|0)|0,(c[I>>2]|0)==0):0)?(c[I>>2]=Oi(H,c[s>>2]|0,c[t>>2]|0)|0,Yi(c[J
x3e;>2]|0,s,c[t>>2]|0),(c[I>>2]|0)==0):0){if(c[(c[(c[J>>2]|0)+128>>2]|0)+52>
x3e;2]|0){c[(c[B>>2]|0)+136>>2]=0;c[(c[B>>2]|0)+140>>2]=0;break}c[u>>2]=(c[r
x3e;>2]|0)+1176;if(c[(c[u>>2]|0)+24>>2]|0){c[(c[B>>2]|0)+136>>2]=(c[(c[u>>
;2]|0)+28>>2]|0)+(c[(c[(c[u>>2]|0)+24>>2]|0)+(c[x>>2]<<2)>>2]|0)+-1;
c[(c[B>>2]|0)+140>>2]=c[t>>2]}}while(0);if(!(c[I>>2]|0))Zi(H);if(((c[I>>2]|0)==
0?c[(c[(c[J>>2]|0)+128>>2]|0)+52>>2]|0:0)?c[(c[c[(c[(c[J>>2]|0)+128>>2]|0)+52
x3e;>2]>>2]|0)+8>>2]|0:0){c[v>>2]=c[H+32>>2];c[v+4>>2]=0;c[v+8>>
;2]=c[H+40>>2];c[v+12>>2]=c[H+40+4>>2];c[I>>2]=Wa[c[(c[c[(c[(c[J>>2]|0)+128>
;>2]|0)+52>>2]>>2]|0)+8>>2]&31](c[(c[(c[(c[J>>2]|0)+128>>2]|0)+52>
;>2]|0)+4>>2]|0,c[x>>2]|0,0,v)|0;c[H+32>>2]=c[v>>2];c[H+40>>2]=c[v+8>
;>2];c[H+40+4>>2]=c[v+12>>2]}do if(!(c[I>>2]|0)){k=c[B>>2]|0;if(c[D>>2]
x26;1024|0){c[w>>2]=c[k+156>>2];c[(c[B>>2]|0)+24+8>>2]=c[H+32>>2];c[(c[B>
x3e;2]|0)+24+16>>2]=c[H+744>>2];U=(c[w>>2]|0)+12|0;c[U>>2]=c[K>>2];c[U+4>
x3e;2]=c[K+4>>2];c[U+8>>2]=c[K+8>>2];c[U+12>>2]=c[K+12>>2];U=(c[w>>2
]|0)+28|0;c[U>>2]=c[L>>2];c[U+4>>2]=c[L+4>>2];a[(c[w>>2]|0)+8>>0]=1;
break}c[P>>2]=k+24;c[(c[P>>2]|0)+16>>2]=c[H+744>>2];c[(c[B>>2]|0)+56>>
;2]=c[H+744>>2];a[(c[(c[B>>2]|0)+156>>2]|0)+8>>0]=0;if(d[(c[J>>2]|0)+296>
x3e;0]|0?(e[(c[J>>2]|0)+300+34>>1]|0)>0:0)k=(c[(c[J>>2]|0)+300+36>>2]|0)!=0;else k=
0;a[N>>0]=k&1;do if(!(a[N>>0]|0)){k=c[J>>2]|0;if((e[(c[J>>2]|0)+368>>1]|0
)!=65535){c[(c[P>>2]|0)+28>>2]=(b[k+368+70>>1]|0)-(b[(c[J>>2]|0)+368+72>>1]|0);
break}else{c[(c[P>>2]|0)+28>>2]=(b[k+216+4>>1]|0)-(b[(c[J>>2]|0)+216+6>>1]|0);
break}}else{b[z>>1]=0;b[y>>1]=0;Za[c[(c[(c[J>>2]|0)+532>>2]|0)+156>>2]&31
](c[J>>2]|0,1,c[x>>2]|0,z,y)|0;c[(c[P>>2]|0)+24>>2]=b[z>>1];c[(c[P>>
2]|0)+28>>2]=e[y>>1]}while(0);c[(c[B>>2]|0)+60>>2]=c[(c[P>>2]|0)+28>>
;2];c[(c[B>>2]|0)+72>>2]=1869968492;c[(c[B>>2]|0)+108+16>>2]=0;if(c[C>>2]|0?(e
[(c[C>>2]|0)+12+2>>1]|0)<24:0){J=(c[B>>2]|0)+108+16|0;c[J>>2]=c[J>>2]|256
}J=(c[B>>2]|0)+108+16|0;c[J>>2]=c[J>>2]|4;do if((c[K>>2]|0)==65536?(c[K+12>>2]|
0)==65536:0){if(c[K+4>>2]|0){U=64;break}if(c[K+8>>2]|0)U=64}else U=64;while(0);if((U|0)==64)Kb((c[B>>
;2]|0)+108|0,K);if(!((c[L>>2]|0)==0?!(c[L+4>>2]|0):0))Nb((c[B>>2]|0)+108|0,c[L>>2]|0,c[L
+4>>2]|0);c[E>>2]=c[(c[P>>2]|0)+16>>2];c[E+4>>2]=0;Lb(E,K);c[(c[P>>2
]|0)+16>>2]=(c[E>>2]|0)+(c[L>>2]|0);c[E>>2]=0;c[E+4>>2]=c[(c[P>>2]|0
)+28>>2];Lb(E,K);c[(c[P>>2]|0)+28>>2]=(c[E+4>>2]|0)+(c[L+4>>2]|0);if(!((c[D>
;>2]&1|0)!=0?!(d[M>>0]|0):0)){c[G>>2]=(c[B>>2]|0)+108;c[R>>2]=c[(c[G>>
;2]|0)+4>>2];c[S>>2]=c[(c[B>>2]|0)+164>>2];c[T>>2]=c[(c[B>>2]|0)+168
>>2];if(!(a[O>>0]|0?(c[H+68>>2]|0)!=0:0))U=72;a:do if((U|0)==72){c[Q>>2]=b[(c[G>>
;2]|0)+2>>1];while(1){if((c[Q>>2]|0)<=0)break a;U=Mb(c[c[R>>2]>>2]|0,c[S>>
;2]|0)|0;c[c[R>>2]>>2]=U;U=Mb(c[(c[R>>2]|0)+4>>2]|0,c[T>>2]|0)|0;c[(c[R>
x3e;2]|0)+4>>2]=U;c[Q>>2]=(c[Q>>2]|0)+-1;c[R>>2]=(c[R>>2]|0)+8}}while(0);U=Mb(
c[(c[P>>2]|0)+16>>2]|0,c[S>>2]|0)|0;c[(c[P>>2]|0)+16>>2]=U;U=Mb(c[(c[P>
x3e;2]|0)+28>>2]|0,c[T>>2]|0)|0;c[(c[P>>2]|0)+28>>2]=U}_d((c[B>>2]|0)+108|0,F);
c[c[P>>2]>>2]=(c[F+8>>2]|0)-(c[F>>2]|0);c[(c[P>>2]|0)+4>>2]=(c[F+12
x3e;>2]|0)-(c[F+4>>2]|0);c[(c[P>>2]|0)+8>>2]=c[F>>2];c[(c[P>>2]|0)+12>
;>2]=c[F+12>>2];if(a[N>>0]|0){c[(c[P>>2]|0)+20>>2]=(c[(c[P>>2]|0)+8>
x3e;2]|0)-((c[(c[P>>2]|0)+16>>2]|0)/2|0);break}if(!(c[D>>2]&16))break;Bd(c[P>>2]|0,
c[(c[P>>2]|0)+28>>2]|0)}while(0);c[A>>2]=c[I>>2];U=c[A>>2]|0;i=V;return U|0}function
Ii(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;o=i;i=i+32|0;j=o+20|0;f=o+16|0;k=o+25|0;g=o+12|0;h=o+8|0;l=o+24|0;m
=o+4|0;n=o;c[j>>2]=b;c[f>>2]=e;a[k>>0]=0;switch(d[c[j>>2]>>0]|0|0){case 0:{a[k
>>0]=a[(c[(c[j>>2]|0)+8>>2]|0)+(c[f>>2]|0)>>0]|0;n=a[k>>0]|0;i=o;return
n|0}case 3:{b=c[j>>2]|0;if(((c[f>>2]|0)-(c[(c[j>>2]|0)+16>>2]|0)|0)>>>0
x3c;(c[(c[j>>2]|0)+20>>2]|0)>>>0){a[k>>0]=a[b+24>>0]|0;n=a[k>>0
]|0;i=o;return n|0}c[g>>2]=c[b+8>>2];c[h>>2]=(c[g>>2]|0)+(c[(c[j>>2]|0)+12>
;>2]|0);c[g>>2]=(c[g>>2]|0)+2;c[m>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[g>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;while(1){if((c[f>>
2]|0)>>>0<(c[m>>2]|0)>>>0){b=10;break}e=c[g>>2]|0;c[g>>2]=e+1;a
[l>>0]=a[e>>0]|0;c[g>>2]=(c[g>>2]|0)+2;c[n>>2]=(((d[(c[g>>2]|0)+-2
x3e;>0]|0)&65535)<<8|((d[(c[g>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if
((c[f>>2]|0)>>>0<(c[n>>2]|0)>>>0){b=8;break}c[m>>2]=c[n>
x3e;2];if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>>0){b=10;break}}if((b|0)==8){a[k
x3e;>0]=a[l>>0]|0;c[(c[j>>2]|0)+16>>2]=c[m>>2];c[(c[j>>2]|0)+20>>
;2]=(c[n>>2]|0)-(c[m>>2]|0);a[(c[j>>2]|0)+24>>0]=a[l>>0]|0;n=a[k>>0]|
0;i=o;return n|0}else if((b|0)==10){n=a[k>>0]|0;i=o;return n|0}break}default:{n=a[k>>0]|0;i=o;return n|0}}return
0}function Ji(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;j=i;i=i+32|0;k=j+20|0;q=j+16
|0;p=j+12|0;o=j+8|0;n=j+24|0;l=j+4|0;m=j;c[k>>2]=b;c[q>>2]=d;c[p>>2]=e;c[o>>2]=f;a[n>
;>0]=g;c[l>>2]=h;c[m>>2]=c[(c[q>>2]|0)+692>>2];Ns(c[k>>2]|0,0,928)|0;Ki(c
[k>>2]|0,c[q>>2]|0,c[p>>2]|0,c[o>>2]|0,a[n>>0]|0);c[(c[k>>2]|0)+76
x3e;>2]=c[m>>2];c[(c[k>>2]|0)+892>>2]=c[(c[m>>2]|0)+84+8>>2];c[(c[k>
x3e;2]|0)+908>>2]=c[(c[m>>2]|0)+1308>>2];f=Li(c[(c[m>>2]|0)+1324+44>>2]|0,c[(c
[k>>2]|0)+892>>2]|0)|0;c[(c[k>>2]|0)+900>>2]=f;c[(c[k>>2]|0)+920>>2]=
c[l>>2];i=j;return}function Ki(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;p=i;i=i+32
|0;j=p+20|0;q=p+16|0;k=p+12|0;l=p+8|0;m=p+24|0;o=p+4|0;n=p;c[j>>2]=b;c[q>>2]=e;c[k>>2]=f;c[l>
x3e;2]=g;a[m>>0]=h;a[(c[j>>2]|0)+64>>0]=0;a[(c[j>>2]|0)+65>>0]=1;c[(c[j>
x3e;2]|0)+4>>2]=c[q>>2];c[(c[j>>2]|0)+8>>2]=c[l>>2];c[c[j>>2]>
x3e;2]=c[(c[q>>2]|0)+100>>2];if(c[l>>2]|0?(c[o>>2]=c[c[(c[l>>2]|0)+156>
x3e;2]>>2],c[(c[j>>2]|0)+12>>2]=c[o>>2],c[(c[j>>2]|0)+16>>2]=(c[o>
;>2]|0)+20,c[(c[j>>2]|0)+20>>2]=(c[o>>2]|0)+56,dc(c[o>>2]|0),c[(c[j>>2]|0
)+72>>2]=0,c[(c[j>>2]|0)+68>>2]=0,(d[m>>0]|0|0)!=0&(c[k>>2]|0)!=0):0){c[n
>>2]=c[(c[k>>2]|0)+40>>2];c[(c[j>>2]|0)+72>>2]=c[c[n>>2]>>
2];c[(c[j>>2]|0)+68>>2]=c[(c[(c[l>>2]|0)+156>>2]|0)+36>>2]}c[(c[j>>2
]|0)+24>>2]=0;c[(c[j>>2]|0)+28>>2]=0;c[(c[j>>2]|0)+32>>2]=0;c[(c[j>>
2]|0)+32+4>>2]=0;c[(c[j>>2]|0)+40>>2]=0;c[(c[j>>2]|0)+40+4>>2]=0;i=p;return}function
Li(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[d>>2]=b;do if((c[g>
;>2]|0)!=1){if((c[d>>2]|0)>>>0<1240){c[e>>2]=107;break}if((c[d>>2]|0)>
;>>0<33900){c[e>>2]=1131;break}else{c[e>>2]=32768;break}}else c[e>>2]=0;while(0);i=
f;return c[e>>2]|0}function Mi(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;o=i;i=i+48|0;f
=o+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;m=o+8|0;n=o+4|0;l=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k
x3e;>2]=e;a=c[g>>2]|0;if(c[(c[(c[g>>2]|0)+128>>2]|0)+52>>2]|0){c[n>>2]=Oa
[c[c[c[(c[a+128>>2]|0)+52>>2]>>2]>>2]&63](c[(c[(c[(c[g>>2]|0)+128>
x3e;2]|0)+52>>2]|0)+4>>2]|0,c[h>>2]|0,m)|0;c[c[j>>2]>>2]=c[m>>2];c[c
[k>>2]>>2]=c[m+4>>2];c[f>>2]=c[n>>2];n=c[f>>2]|0;i=o;return n|0}else
{c[l>>2]=c[a+692>>2];c[f>>2]=Zh((c[l>>2]|0)+1176|0,c[h>>2]|0,c[j>>2]|
0,c[k>>2]|0)|0;n=c[f>>2]|0;i=o;return n|0}return 0}function Ni(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;q=i;i=i+48|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;l=q+12|0;p=q+8|0;m=q+4|0;n=q+32|0;o=q;c[g>>2]=
b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=c[g>>2];c[l>>2]=c[(c[(c[k>>2]|0)+4>
;>2]|0)+692>>2];c[p>>2]=(c[l>>2]|0)+1324;c[m>>2]=0;do if(c[(c[l>>2]|0)+1892
>>2]|0){a[n>>0]=Ii((c[l>>2]|0)+2024|0,c[j>>2]|0)|0;if((d[n>>0]|0)>>
x3e;0>=(c[(c[l>>2]|0)+1892>>2]|0)>>>0){c[m>>2]=3;p=c[m>>2]|0;i=q;return
p|0}else{c[p>>2]=c[(c[l>>2]|0)+1896+((d[n>>0]|0)<<2)>>2];if(!(c[h>>
2]|0?(c[(c[k>>2]|0)+68>>2]|0)!=0:0))break;c[o>>2]=c[(c[h>>2]|0)+40>>2];c[(c[k
x3e;>2]|0)+72>>2]=c[(c[o>>2]|0)+4+((d[n>>0]|0)<<2)>>2];break}}while(0);c[(
c[g>>2]|0)+888>>2]=c[(c[p>>2]|0)+532+8>>2];c[(c[g>>2]|0)+904>>2]=c[(
c[p>>2]|0)+564>>2];e=Li(c[(c[(c[g>>2]|0)+76>>2]|0)+1324+44>>2]|0,c[(c[g>
x3e;2]|0)+888>>2]|0)|0;c[(c[g>>2]|0)+896>>2]=e;c[(c[g>>2]|0)+744>>2]=c[(c[p>
;>2]|0)+172+352>>2];c[(c[g>>2]|0)+748>>2]=c[(c[p>>2]|0)+172+356>>2];p=c[m
>>2]|0;i=q;return p|0}function Oi(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,$=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;ta=i;i=i+272|0;h=
ta+256|0;j=ta+252|0;va=ta+248|0;ua=ta+244|0;y=ta+240|0;ra=ta+236|0;K=ta+232|0;L=ta+228|0;m=ta+224|0;pa=ta+220|0;qa=ta+216|0;$=ta
+212|0;ca=ta+208|0;n=ta+204|0;A=ta+200|0;W=ta+196|0;la=ta+260|0;ba=ta+192|0;ma=ta+188|0;l=ta+184|0;T=ta+180|0;Z=ta+176|0;aa=ta+172
|0;X=ta+168|0;M=ta+164|0;N=ta+160|0;O=ta+156|0;Y=ta+152|0;P=ta+148|0;V=ta+144|0;Q=ta+140|0;U=ta+136|0;R=ta+132|0;ea=ta+128|0;fa=
ta+124|0;da=ta+120|0;ga=ta+116|0;w=ta+112|0;x=ta+108|0;B=ta+104|0;s=ta+100|0;ha=ta+96|0;v=ta+92|0;z=ta+88|0;k=ta+84|0;t=ta+80|0;
_=ta+76|0;S=ta+72|0;ia=ta+68|0;E=ta+64|0;u=ta+60|0;F=ta+56|0;ja=ta+52|0;C=ta+48|0;ka=ta+44|0;D=ta+40|0;na=ta+36|0;G=ta+32|0;H=ta
+28|0;oa=ta+24|0;o=ta+20|0;p=ta+16|0;q=ta+12|0;r=ta+8|0;I=ta+4|0;J=ta;c[j>>2]=e;c[va>>2]=f;c[ua>>2
]=g;c[m>>2]=c[j>>2];c[n>>2]=c[(c[(c[j>>2]|0)+76>>2]|0)+1324+44>>2];c
[(c[j>>2]|0)+756>>2]=0;a[(c[j>>2]|0)+752>>0]=1;c[$>>2]=$^j^va;e=(c[$>>
;2]^c[$>>2]>>10^c[$>>2]>>20)&65535;c[$>>2]=e;c[$>>2]=(c[$>
x3e;2]|0)==0?29572:e;c[(c[j>>2]|0)+276>>2]=(c[j>>2]|0)+80;c[(c[j>>2]|0)+676>>2
]=(c[j>>2]|0)+280;c[ra>>2]=(c[j>>2]|0)+280;c[ca>>2]=c[(c[j>>2]|0)+276>>
;2];c[A>>2]=c[(c[m>>2]|0)+68>>2];a[(c[m>>2]|0)+64>>0]=0;c[c[ra>>2]
x3e;>2]=c[va>>2];e=(c[va>>2]|0)+(c[ua>>2]|0)|0;c[(c[ra>>2]|0)+4>>2]=e;c[L
>>2]=e;e=c[c[ra>>2]>>2]|0;c[(c[ra>>2]|0)+8>>2]=e;c[K>>2]=e;c[y>
x3e;2]=0;c[pa>>2]=c[(c[m>>2]|0)+24>>2];c[qa>>2]=c[(c[m>>2]|0)+28>>2];
if(c[A>>2]|0)Va[c[(c[A>>2]|0)+4>>2]&63](c[c[A>>2]>>2]|0);a:while(1){if((c
[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0){sa=307;break}va=c[K>>2]|0;c[K
x3e;>2]=va+1;a[la>>0]=a[va>>0]|0;if((d[la>>0]|0)<32?(d[la>>0]|0)!=28:0){c[l>
;>2]=c[(c[j>>2]|0)+276>>2];c[T>>2]=((c[l>>2]|0)-((c[j>>2]|0)+80)|0)/4|0;c
[W>>2]=0;b:do switch(d[la>>0]|0){case 1:{c[W>>2]=19;break}case 3:{c[W>>2]=20;break}case
4:{c[W>>2]=3;break}case 5:{c[W>>2]=4;break}case 6:{c[W>>2]=5;break}case 7:{c[W>>2]=6;break
}case 8:{c[W>>2]=7;break}case 9:{c[W>>2]=53;break}case 10:{c[W>>2]=49;break}case 11:{c[W>>
;2]=51;break}case 12:{if((c[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0)break a;va=c[K
x3e;>2]|0;c[K>>2]=va+1;a[la>>0]=a[va>>0]|0;do switch(d[la>>0]|0){case 0:{c[W>
x3e;2]=25;break b}case 1:{c[W>>2]=20;break b}case 2:{c[W>>2]=19;break b}case 3:{c[W>>2]=44;break b
}case 4:{c[W>>2]=45;break b}case 5:{c[W>>2]=46;break b}case 6:{c[W>>2]=56;break b}case 7:{c[W>
;>2]=57;break b}case 8:{c[W>>2]=42;break b}case 9:{c[W>>2]=26;break b}case 10:{c[W>>2]=27;break
b}case 11:{c[W>>2]=28;break b}case 12:{c[W>>2]=29;break b}case 13:{c[W>>2]=43;break b}case 14:{c[
W>>2]=30;break b}case 15:{c[W>>2]=47;break b}case 16:{c[W>>2]=54;break b}case 17:{c[W>>2
]=55;break b}case 18:{c[W>>2]=35;break b}case 20:{c[W>>2]=40;break b}case 21:{c[W>>2]=41;break b}case
22:{c[W>>2]=48;break b}case 23:{c[W>>2]=31;break b}case 24:{c[W>>2]=32;break b}case 26:{c[W>
x3e;2]=33;break b}case 27:{c[W>>2]=39;break b}case 28:{c[W>>2]=36;break b}case 29:{c[W>>2]=37;break
b}case 30:{c[W>>2]=38;break b}case 33:{c[W>>2]=58;break b}case 34:{c[W>>2]=15;break b}case 35:{c[
W>>2]=14;break b}case 36:{c[W>>2]=16;break b}case 37:{c[W>>2]=17;break b}default:{c[K>>2
]=(c[K>>2]|0)+-1;break b}}while(0)}case 13:{c[W>>2]=52;break}case 14:{c[W>>2]=18;break}case 16:{c[
W>>2]=34;break}case 18:{c[W>>2]=21;break}case 19:{c[W>>2]=23;break}case 20:{c[W>>2]=24;break
}case 21:{c[W>>2]=1;break}case 22:{c[W>>2]=2;break}case 23:{c[W>>2]=22;break}case 24:{c[W>>
;2]=10;break}case 25:{c[W>>2]=11;break}case 26:{c[W>>2]=13;break}case 27:{c[W>>2]=8;break}case 29:{
c[W>>2]=50;break}case 30:{c[W>>2]=12;break}case 31:{c[W>>2]=9;break}default:{}}while(0);if(!(c[W
x3e;>2]|0))break;c[Z>>2]=d[11281+(c[W>>2]|0)>>0];if(c[Z>>2]&128|0){if((c[T>
;>2]|0)>0?d[(c[j>>2]|0)+752>>0]|0:0){switch(c[W>>2]|0){case 3:case 2:{c[aa>>2]=
c[T>>2]&2;break}case 24:case 23:case 1:case 22:case 21:case 20:case 19:{c[aa>>2]=c[T>>2]&
;1;break}case 18:{c[aa>>2]=((c[T>>2]|0)==5?1:(c[T>>2]|0)==1)&1;break}default:c[aa>>
2]=0}if(c[aa>>2]|0){c[(c[j>>2]|0)+744>>2]=(c[(c[j>>2]|0)+748>>2]|0)+(c[c[ca>
;>2]>>2]>>16);if(a[(c[j>>2]|0)+753>>0]|0){sa=307;break}c[T>>2]=(c[T>
x3e;2]|0)+-1}}a[(c[j>>2]|0)+752>>0]=0;c[Z>>2]=0}c[Z>>2]=c[Z>>2]&15;if((c[
T>>2]|0)<(c[Z>>2]|0)){sa=309;break}c[l>>2]=(c[l>>2]|0)+(0-(c[Z>>2]|0)<
;<2);c[T>>2]=(c[T>>2]|0)-(c[Z>>2]|0);do switch(c[W>>2]|0){case 56:{sa=220;break a}case
18:{sa=221;break a}case 22:case 21:case 20:case 19:{if(c[A>>2]|0)_a[c[(c[A>>2]|0)+12>>2]&15](
c[c[A>>2]>>2]|0,((c[W>>2]|0)==19?1:(c[W>>2]|0)==21)&1,(c[T>>2]|0)/2|0,(c[
l>>2]|0)+(0-(c[T>>2]&-2)<<2)|0);va=(c[j>>2]|0)+756|0;c[va>>2]=(c[va>
x3e;2]|0)+((c[T>>2]|0)/2|0);c[l>>2]=c[ca>>2];break}case 24:case 23:{if((c[T>>2]|0)>
0){if(c[A>>2]|0)_a[c[(c[A>>2]|0)+12>>2]&15](c[c[A>>2]>>2]|0,0,(c[T>
x3e;2]|0)/2|0,(c[l>>2]|0)+(0-(c[T>>2]&-2)<<2)|0);va=(c[j>>2]|0)+756|0;c[va>>
;2]=(c[va>>2]|0)+((c[T>>2]|0)/2|0)}if(((c[K>>2]|0)+((c[(c[j>>2]|0)+756>>2]|0)+
7>>3)|0)>>>0>=(c[L>>2]|0)>>>0)break a;do if(c[A>>2]|0){f=c[A>
;>2]|0;if((c[W>>2]|0)==23){_a[c[f+16>>2]&15](c[c[A>>2]>>2]|0,b[(c[(c[m>
x3e;2]|0)+20>>2]|0)+2>>1]|0,c[(c[j>>2]|0)+756>>2]|0,c[K>>2]|0);break}else{Ua[c
[f+20>>2]&31](c[c[A>>2]>>2]|0,c[(c[j>>2]|0)+756>>2]|0,c[K>>2]|0
);break}}while(0);c[K>>2]=(c[K>>2]|0)+((c[(c[j>>2]|0)+756>>2]|0)+7>>3);c[l>
;>2]=c[ca>>2];break}case 1:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64>>0]=0;c[pa>>2]=(
c[pa>>2]|0)+(c[(c[l>>2]|0)+-8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>
2]|0)+-4>>2]|0);c[l>>2]=c[ca>>2];break}case 3:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64
x3e;>0]=0;c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+-4>>2]|0);c[l>>2]=c[ca>
;>2];break}case 2:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64>>0]=0;c[pa>>2]=(c[pa>>2
]|0)+(c[(c[l>>2]|0)+-4>>2]|0);c[l>>2]=c[ca>>2];break}case 4:{if(Qi(c[m>>2]|0,c
[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[T>>2]|0)/2|0)|0){sa=307;break
a}if((c[T>>2]|0)<2){sa=309;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[T>>2]&-2)<
x3c;2);while(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>
;0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|
0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>
;2]=(c[l>>2]|0)+8}c[l>>2]=c[ca>>2];break}case 6:case 5:{c[X>>2]=(c[W>>2]|0)==5
&1;if((c[T>>2]|0)<1){sa=309;break a}if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){
sa=307;break a}if(Ti(c[m>>2]|0,c[T>>2]|0)|0){sa=307;break a}c[l>>2]=c[ca>>2];while(1){if
((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;f=c[c[l
x3e;>2]>>2]|0;if(c[X>>2]|0)c[pa>>2]=(c[pa>>2]|0)+f;else c[qa>>2]=(c[qa>
;>2]|0)+f;if(Si(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>
;>2]|0)+4;c[X>>2]=c[X>>2]^1}c[l>>2]=c[ca>>2];break}case 7:{if((c[T>>2]|0)
x3c;6){sa=309;break a}c[M>>2]=(c[T>>2]|0)-((c[T>>2]|0)%6|0);if(Qi(c[m>>2]|0,c[pa>
x3e;2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[M>>2]|0)/2|0)|0){sa=307;break a}c[l>
;>2]=(c[l>>2]|0)+(0-(c[M>>2]|0)<<2);while(1){if((c[l>>2]|0)>>>0>
;=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>
x3e;2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>
2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>
;2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>
x3e;2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>
;>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0,1);c[l>>2]=(c[l>>2]|0)+24}c[l>>2]=c[ca>>2];break}case 13:{if((c[T>
x3e;2]|0)<4){sa=309;break a}c[N>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0)-(
c[N>>2]|0)|0)>0)c[N>>2]=(c[N>>2]|0)+1;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[N>>2]|0)<<2);if(c[N>>
2]&1|0){c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2
]|0)+4;c[N>>2]=(c[N>>2]|0)+-1}if(Ti(c[m>>2]|0,((c[N>>2]|0)/4|0)*3|0)|0){sa=307;break a}while
(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;c[qa
>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>
;>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[qa
>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c
[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+16}c[l>>2]=c[ca>>2];break}case 8:{if((c[T>
;>2]|0)<4){sa=309;break a}c[O>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0
)-(c[O>>2]|0)|0)>0)c[O>>2]=(c[O>>2]|0)+1;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[O>>2]|0)<<2);if(c[O>>
;2]&1|0){c[qa>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>
2]|0)+4;c[O>>2]=(c[O>>2]|0)+-1}if(Ti(c[m>>2]|0,((c[O>>2]|0)/4|0)*3|0)|0){sa=307;break a}
while(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break
;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa
>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[
qa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0
,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+16}c[l>>2]=c[ca>>2];break}case 9:case
12:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if((c[T>>2]|0)<4){sa=309
;break a}c[P>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0)-(c[P>>2]|0)|0)
x3e;0)c[P>>2]=(c[P>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+(0-(c[P>>2]|0)<<2);if
(Ti(c[m>>2]|0,((c[P>>2]|0)/4|0)*3|0)|0){sa=309;break a}c[Y>>2]=(c[W>>2]|0)==9&1;while
(1){if((c[P>>2]|0)<4)break;c[P>>2]=(c[P>>2]|0)-4;f=c[c[l>>2]>>2]|0;if(c[Y
>>2]|0){c[pa>>2]=(c[pa>>2]|0)+f;Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0
);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0
)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[qa>>
;2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);if((c[P>>2]|0)==1)c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1)}else
{c[qa>>2]=(c[qa>>2]|0)+f;Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>
;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
x3e;2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
x3e;2]|0)+(c[(c[l>>2]|0)+12>>2]|0);if((c[P>>2]|0)==1)c[qa>>2]=(c[qa>>2]|0)+(c[(
c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1)}c[l>>2]=(
c[l>>2]|0)+16;c[Y>>2]=c[Y>>2]^1}c[l>>2]=c[ca>>2];break}case 11:{if((c[T>
x3e;2]|0)<8){sa=309;break a}c[Q>>2]=c[T>>2]&-2;c[V>>2]=((c[Q>>2]|0)-6|0)/2|0;if
(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[V>>2
]|0)+3|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[Q>>2]|0)<<2);while(1){va=(c[V>
;>2]|0)>0;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>
;>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);f=c[m>>2]|0;g=c[pa>>2]|0;e=c[qa>>2]|0;if(!
va)break;Ui(f,g,e,1);c[l>>2]=(c[l>>2]|0)+8;c[V>>2]=(c[V>>2]|0)+-1}Ui(f,g,e,0);c[pa>
x3e;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
;>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20
x3e;>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case
10:{if((c[T>>2]|0)<8){sa=309;break a}c[R>>2]=(c[T>>2]|0)-2;c[R>>2]=(c[R>>
;2]|0)-((c[R>>2]|0)%6|0)+2;c[U>>2]=((c[R>>2]|0)-2|0)/6|0;if(Qi(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,((c[U>>2]|0)*3|0)+2|0)|0){sa=307;break a}c[l
x3e;>2]=(c[l>>2]|0)+(0-(c[R>>2]|0)<<2);while(1){va=(c[U>>2]|0)>0;c[pa>>
;2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|
0)+4>>2]|0);f=c[m>>2]|0;g=c[pa>>2]|0;e=c[qa>>2]|0;if(!va)break;Ui(f,g,e,0);c[pa>>
;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
x3e;2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
x3e;2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20>
;>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+24;c[U
x3e;>2]=(c[U>>2]|0)+-1}Ui(f,g,e,1);c[l>>2]=c[ca>>2];break}case 16:{if(Qi(c[m>>2]|0,
c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;break a}c[ea>>2]=c
[qa>>2];c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>
x3e;2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa
x3e;>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[
l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c
[pa>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|
0,1);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);Ui(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0);c[qa>
x3e;2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+28>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+32>>2]|0);c[qa>>2]=c[ea>
;>2];Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 15
:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;
break a}c[fa>>2]=c[qa>>2];c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);Ui
(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2
]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>
2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+12>>
;2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>
;>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);c[qa>>2]=c[fa>>2];Ui(c[m>>2]|0,c[pa>
;>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0);Ui(c[
m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 17:{c[w>>
;2]=0;c[x>>2]=0;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>
x3e;2]|0,6)|0){sa=307;break a}c[da>>2]=c[pa>>2];c[ga>>2]=c[qa>>2];c[ha>>2]=c[l
>>2];c[s>>2]=5;while(1){if((c[s>>2]|0)<=0)break;c[w>>2]=(c[w>>2]|0)+(c[c[
ha>>2]>>2]|0);c[x>>2]=(c[x>>2]|0)+(c[(c[ha>>2]|0)+4>>2]|0);c[ha>
;>2]=(c[ha>>2]|0)+8;c[s>>2]=(c[s>>2]|0)+-1}if((c[w>>2]|0)<0)c[w>>2]=
0-(c[w>>2]|0);if((c[x>>2]|0)<0)c[x>>2]=0-(c[x>>2]|0);c[B>>2]=(c[w>
x3e;2]|0)>(c[x>>2]|0)&1;c[s>>2]=5;while(1){if((c[s>>2]|0)<=0)break;c[pa>>
2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|
0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,(c[s>>2]|0)==3&255);c[l>
;>2]=(c[l>>2]|0)+8;c[s>>2]=(c[s>>2]|0)+-1}if(c[B>>2]|0){c[pa>>2]=(c[pa>
;>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=c[ga>>2]}else{c[pa>>2]=c[da>>
;2];c[qa>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0)}Ui(c[m>>2]|0,c[pa>>2]|0,
c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 14:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;break a}c[v>>2]=6;while(1){if((c[v>>
;2]|0)>>>0<=0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>
;>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,((c[v>>2]|0)==4?1:(c[v>>2]|0)==1)&1);c[l>>2]=(c[l>>2]|0)+8;c[v>>
;2]=(c[v>>2]|0)+-1}c[l>>2]=c[ca>>2];break}case 26:{if((c[c[l>>2]>>2]|0)<0
)c[c[l>>2]>>2]=0-(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case
27:{va=c[l>>2]|0;c[va>>2]=(c[va>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>
2]=(c[l>>2]|0)+4;break}case 28:{va=c[l>>2]|0;c[va>>2]=(c[va>>2]|0)-(c[(c[l>>2]|
0)+4>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case 29:{va=Vb(c[c[l>>2]>>2]|0,c[(c[l
x3e;>2]|0)+4>>2]|0)|0;c[c[l>>2]>>2]=va;c[l>>2]=(c[l>>2]|0)+4;break}case 30
:{c[c[l>>2]>>2]=0-(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case
31:{c[k>>2]=c[$>>2];if((c[k>>2]|0)>=32768)c[k>>2]=(c[k>>2]|0)+1;c[c[l>
;>2]>>2]=c[k>>2];c[$>>2]=Mb(c[$>>2]|0,65536-(c[$>>2]|0)|0)|0;if(!(c[$>
;>2]|0))c[$>>2]=(c[$>>2]|0)+10355;c[l>>2]=(c[l>>2]|0)+4;break}case 32:{va=Mb(c[c[l
x3e;>2]>>2]|0,c[(c[l>>2]|0)+4>>2]|0)|0;c[c[l>>2]>>2]=va;c[l>>2]=(
c[l>>2]|0)+4;break}case 33:{if((c[c[l>>2]>>2]|0)>0){c[t>>2]=9;c[_>>2]=c[c
[l>>2]>>2];while(1){f=c[_>>2]|0;c[S>>2]=f+(Vb(c[c[l>>2]>>2]|0,c[_>
;>2]|0)|0)+1>>1;f=c[S>>2]|0;if((c[t>>2]|0)<=0?1:(c[S>>2]|0)==(c[_>>2
]|0))break;c[_>>2]=f}c[c[l>>2]>>2]=f}else c[c[l>>2]>>2]=0;c[l>>2]=(c
[l>>2]|0)+4;break}case 25:case 35:break;case 36:{c[ia>>2]=c[c[l>>2]>>2];c[c[l>>
;2]>>2]=c[(c[l>>2]|0)+4>>2];c[(c[l>>2]|0)+4>>2]=c[ia>>2];c[l>
x3e;2]=(c[l>>2]|0)+8;break}case 37:{c[E>>2]=c[c[l>>2]>>2]>>16;if((c[E>>
;2]|0)>=0){if((c[E>>2]|0)>((c[T>>2]|0)-2|0))c[E>>2]=(c[T>>2]|0)-2}else c[E>
;>2]=0;c[c[l>>2]>>2]=c[(c[l>>2]|0)+(0-((c[E>>2]|0)+1)<<2)>>2];c
[l>>2]=(c[l>>2]|0)+4;break}case 38:{c[u>>2]=c[c[l>>2]>>2]>>16;c[F>
;>2]=c[(c[l>>2]|0)+4>>2]>>16;if((c[u>>2]|0)<=0)c[u>>2]=1;c[l>
x3e;2]=(c[l>>2]|0)+(0-(c[u>>2]|0)<<2);if((c[l>>2]|0)>>>0<(c[ca>
x3e;2]|0)>>>0){sa=309;break a}c:do if((c[F>>2]|0)>=0)while(1){if((c[F>>2]|0)<=0)break
c;c[ja>>2]=c[(c[l>>2]|0)+((c[u>>2]|0)-1<<2)>>2];c[C>>2]=(c[u>
x3e;2]|0)-2;while(1){if((c[C>>2]|0)<0)break;c[(c[l>>2]|0)+((c[C>>2]|0)+1<<2)>
x3e;2]=c[(c[l>>2]|0)+(c[C>>2]<<2)>>2];c[C>>2]=(c[C>>2]|0)+-1}c[c[l
x3e;>2]>>2]=c[ja>>2];c[F>>2]=(c[F>>2]|0)+-1}else while(1){if((c[F>>2]|0)
x3e;=0)break c;c[ka>>2]=c[c[l>>2]>>2];c[D>>2]=0;while(1){if((c[D>>2]|0)>=((
c[u>>2]|0)-1|0))break;c[(c[l>>2]|0)+(c[D>>2]<<2)>>2]=c[(c[l>>2]|0)+((
c[D>>2]|0)+1<<2)>>2];c[D>>2]=(c[D>>2]|0)+1}c[(c[l>>2]|0)+((c[u>
x3e;2]|0)-1<<2)>>2]=c[ka>>2];c[F>>2]=(c[F>>2]|0)+1}while(0);c[l>>2]=(
c[l>>2]|0)+(c[u>>2]<<2);break}case 39:{c[(c[l>>2]|0)+4>>2]=c[c[l>>2]
x3e;>2];c[l>>2]=(c[l>>2]|0)+8;break}case 40:{c[na>>2]=c[c[l>>2]>>2];c[G
x3e;>2]=c[(c[l>>2]|0)+4>>2]>>16;if((c[G>>2]|0)>=0&(c[G>>2]|0)
x3c;32)c[(c[j>>2]|0)+760+(c[G>>2]<<2)>>2]=c[na>>2];break}case 41:{c[H>>
;2]=c[c[l>>2]>>2]>>16;c[oa>>2]=0;if((c[H>>2]|0)>=0&(c[H>>2
]|0)<32)c[oa>>2]=c[(c[j>>2]|0)+760+(c[H>>2]<<2)>>2];c[c[l>>2]
x3e;>2]=c[oa>>2];c[l>>2]=(c[l>>2]|0)+4;break}case 51:{if((c[(c[j>>2]|0)+676>
x3e;2]|0)>>>0<=((c[j>>2]|0)+280|0)>>>0)break a;va=(c[j>>2]|0)+676|0;c[va
x3e;>2]=(c[va>>2]|0)+-12;c[ra>>2]=c[(c[j>>2]|0)+676>>2];c[K>>2]=c[(c[ra
x3e;>2]|0)+8>>2];c[L>>2]=c[(c[ra>>2]|0)+4>>2];break}case 50:{c[J>>2]=(c[c
[l>>2]>>2]>>16)+(c[(c[j>>2]|0)+900>>2]|0);if((c[J>>2]|0)>>
x3e;0>=(c[(c[j>>2]|0)+892>>2]|0)>>>0)break a;if((((c[ra>>2]|0)-((c[j>>
;2]|0)+280)|0)/12|0|0)>=32)break a;c[(c[ra>>2]|0)+8>>2]=c[K>>2];c[ra>>2]=(c[ra>
;>2]|0)+12;c[c[ra>>2]>>2]=c[(c[(c[j>>2]|0)+908>>2]|0)+(c[J>>2]<<
;2)>>2];c[(c[ra>>2]|0)+4>>2]=c[(c[(c[j>>2]|0)+908>>2]|0)+((c[J>>2]|0
)+1<<2)>>2];c[(c[ra>>2]|0)+8>>2]=c[c[ra>>2]>>2];if(!(c[c[ra>>
;2]>>2]|0))break a;if((c[(c[ra>>2]|0)+4>>2]|0)==(c[c[ra>>2]>>2]|0))break a;c[(
c[j>>2]|0)+676>>2]=c[ra>>2];c[K>>2]=c[c[ra>>2]>>2];c[L>>2]=
c[(c[ra>>2]|0)+4>>2];break}case 53:{c[l>>2]=c[ca>>2];break}case 52:{c[(c[j>>2]|
0)+744>>2]=(c[(c[j>>2]|0)+748>>2]|0)+(c[(c[l>>2]|0)+4>>2]>>16);c[(c[
j>>2]|0)+32>>2]=c[c[l>>2]>>2];c[(c[j>>2]|0)+32+4>>2]=0;c[pa>>
;2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=c[(c[j>>2]|0
)+28>>2];c[l>>2]=c[ca>>2];break}case 57:{c[(c[j>>2]|0)+744>>2]=(c[(c[j>
x3e;2]|0)+748>>2]|0)+(c[(c[l>>2]|0)+8>>2]>>16);c[(c[j>>2]|0)+32>>2]=
c[c[l>>2]>>2];c[(c[j>>2]|0)+32+4>>2]=c[(c[l>>2]|0)+4>>2];c[pa>
x3e;2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[(c[j>>
2]|0)+28>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>2]=c[ca>>2];break}case 58:{c[pa
x3e;>2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[(c[j>
x3e;2]|0)+28>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>2]=c[ca>>2];break}case 54:{c[
l>>2]=(c[l>>2]|0)+(0-(2+(c[(c[l>>2]|0)+-8>>2]>>16))<<2);if((c[l>
;>2]|0)>>>0<(c[ca>>2]|0)>>>0){sa=309;break a}break}case 55:{c[l>>2]=(
c[l>>2]|0)+4;break}case 44:{if(c[c[l>>2]>>2]|0)f=(c[(c[l>>2]|0)+4>>2]|0)!=0;else
f=0;c[o>>2]=f&1;c[c[l>>2]>>2]=c[o>>2]|0?65536:0;c[l>>2]=(c[l>>
2]|0)+4;break}case 45:{if(c[c[l>>2]>>2]|0)f=1;else f=(c[(c[l>>2]|0)+4>>2]|0)!=0;c[p>
;>2]=f&1;c[c[l>>2]>>2]=c[p>>2]|0?65536:0;c[l>>2]=(c[l>>2]|0)+4;break
}case 47:{c[q>>2]=((c[c[l>>2]>>2]|0)!=0^1)&1;c[c[l>>2]>>2]=c[q>>
;2]|0?65536:0;c[l>>2]=(c[l>>2]|0)+4;break}case 48:{c[r>>2]=(c[(c[l>>2]|0)+8>>2
]|0)<=(c[(c[l>>2]|0)+12>>2]|0)&1;if(!(c[r>>2]|0))c[c[l>>2]>>2]=c[(c[
l>>2]|0)+4>>2];c[l>>2]=(c[l>>2]|0)+4;break}case 49:{c[I>>2]=(c[c[l>>
2]>>2]>>16)+(c[(c[j>>2]|0)+896>>2]|0);if((c[I>>2]|0)>>>0>=(
c[(c[j>>2]|0)+888>>2]|0)>>>0)break a;if((((c[ra>>2]|0)-((c[j>>2]|0)+280)|
0)/12|0|0)>=32)break a;c[(c[ra>>2]|0)+8>>2]=c[K>>2];c[ra>>2]=(c[ra>>2]|0)+
12;c[c[ra>>2]>>2]=c[(c[(c[j>>2]|0)+904>>2]|0)+(c[I>>2]<<2)>>
;2];c[(c[ra>>2]|0)+4>>2]=c[(c[(c[j>>2]|0)+904>>2]|0)+((c[I>>2]|0)+1<<
;2)>>2];c[(c[ra>>2]|0)+8>>2]=c[c[ra>>2]>>2];if(!(c[c[ra>>2]>>
;2]|0))break a;if((c[(c[ra>>2]|0)+4>>2]|0)==(c[c[ra>>2]>>2]|0))break a;c[(c[j>>
;2]|0)+676>>2]=c[ra>>2];c[K>>2]=c[c[ra>>2]>>2];c[L>>2]=c[(c[ra>
x3e;2]|0)+4>>2];break}default:{sa=305;break a}}while(0);c[(c[j>>2]|0)+276>>2]=c[l>>2];if
((((c[(c[j>>2]|0)+276>>2]|0)-(c[ca>>2]|0)|0)/4|0|0)>=48){sa=310;break}else continue}c[ba>
;>2]=16;do if((d[la>>0]|0)!=28){f=d[la>>0]|0;if((d[la>>0]|0)<247){c[ma>>2]=f-139
;break}if((f|0)<251){if((c[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0)break a;ua=(
d[la>>0]|0)-247<<8;va=c[K>>2]|0;c[K>>2]=va+1;c[ma>>2]=ua+(d[va>>0]|0
)+108;break}f=c[K>>2]|0;if((d[la>>0]|0)<255){if(f>>>0>=(c[L>>2]|0)>
x3e;>0)break a;ua=0-((d[la>>0]|0)-251)<<8;va=c[K>>2]|0;c[K>>2]=va+1;c[ma>>
;2]=ua-(d[va>>0]|0)-108;break}if((f+3|0)>>>0>=(c[L>>2]|0)>>>0)break a;c[ma
>>2]=d[c[K>>2]>>0]<<24|d[(c[K>>2]|0)+1>>0]<<16|d[(c[K>
;>2]|0)+2>>0]<<8|d[(c[K>>2]|0)+3>>0];c[K>>2]=(c[K>>2]|0)+4;if((
c[n>>2]|0)==2)c[ba>>2]=0}else{if(((c[K>>2]|0)+1|0)>>>0>=(c[L>>2]|0)
x3e;>>0)break a;c[ma>>2]=((d[c[K>>2]>>0]<<8|d[(c[K>>2]|0)+1>>
;0])&65535)<<16>>16;c[K>>2]=(c[K>>2]|0)+2}while(0);if((((c[(c[j>>2]|0)+276
>>2]|0)-(c[ca>>2]|0)|0)/4|0|0)>=48){sa=310;break}c[ma>>2]=c[ma>>2]<<c[ba
x3e;>2];ua=c[ma>>2]|0;e=(c[j>>2]|0)+276|0;va=c[e>>2]|0;c[e>>2]=va+4;c[va>>
;2]=ua}do if((sa|0)==220){c[y>>2]=Vi(c[j>>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[(c[l>>2]|0)+12>>2]>>16,c[(c[l>
x3e;2]|0)+16>>2]>>16)|0;oc(c[(c[m>>2]|0)+12>>2]|0);c[h>>2]=c[y>>2];va
=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==221){if((c[T>>2]|0)>=4){c[z>>2]=c[(c[j>>
;2]|0)+744>>2];c[y>>2]=Vi(c[j>>2]|0,0,c[(c[l>>2]|0)+-16>>2]|0,c[(c[l>>
;2]|0)+-12>>2]|0,c[(c[l>>2]|0)+-8>>2]>>16,c[(c[l>>2]|0)+-4>>2]>
x3e;16)|0;c[(c[j>>2]|0)+744>>2]=c[z>>2]}else{if(!(c[y>>2]|0))c[y>>2]=0;Pi(c[m
x3e;>2]|0);if(c[A>>2]|0){if(Ya[c[(c[A>>2]|0)+8>>2]&127](c[c[A>>2]>>2
]|0,b[(c[(c[m>>2]|0)+20>>2]|0)+2>>1]|0)|0)break;Wa[c[(c[A>>2]|0)+24>>2]&31
](c[c[A>>2]>>2]|0,c[(c[m>>2]|0)+20>>2]|0,c[(c[m>>2]|0)+72>>2]|0,c[(c
[j>>2]|0)+920>>2]|0)|0}oc(c[(c[m>>2]|0)+12>>2]|0)}c[h>>2]=c[y>>2];va
=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==305){c[h>>2]=7;va=c[h>>2]|0;i=ta;return va|0}else if((
sa|0)==307){c[h>>2]=c[y>>2];va=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==309){c[h>>2]=129
;va=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==310){c[h>>2]=130;va=c[h>>2]|0;i=ta;return va|0}while
(0);c[h>>2]=3;va=c[h>>2]|0;i=ta;return va|0}function Pi(a){a=a|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|
0;l=k+20|0;j=k+16|0;h=k+12|0;f=k+8|0;g=k+4|0;e=k;c[l>>2]=a;c[j>>2]=c[(c[l>>2]|0)+20>>2];
if(!(c[j>>2]|0)){i=k;return}if((b[c[j>>2]>>1]|0)<=1)a=0;else a=(b[(c[(c[j>>2]|0)+12
>>2]|0)+((b[c[j>>2]>>1]|0)-2<<1)>>1]|0)+1|0;c[h>>2]=a;if((((b[(c[j
x3e;>2]|0)+2>>1]|0)>1?(c[f>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[h>>2]<
;<3),c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(b[(c[j>>2]|0)+2>>1]<<3)+-
8,c[e>>2]=(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>>2]|0)+2>>1]|0)+-1,(c[c[f>>
;2]>>2]|0)==(c[c[g>>2]>>2]|0)):0)?(c[(c[f>>2]|0)+4>>2]|0)==(c[(c[g>>
2]|0)+4>>2]|0):0)?(d[c[e>>2]>>0]|0)==1:0){l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>
x3e;1]|0)+-1<<16>>16}if((b[c[j>>2]>>1]|0)<=0){i=k;return}a=c[j>>2]|0;if((
c[h>>2]|0)==((b[(c[j>>2]|0)+2>>1]|0)-1|0)){b[a>>1]=(b[a>>1]|0)+-1<<16
>>16;l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>>1]|0)+-1<<16>>16;i=k;return}else
{b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>1]|0)-1<<1)>>1]=(b[a+2>
;>1]|0)-1;i=k;return}}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;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=
k;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2]=0;if(a[(c[f>>2]|0)+64>>0]|0){
e=c[j>>2]|0;i=k;return e|0}a[(c[f>>2]|0)+64>>0]=1;c[j>>2]=Ri(c[f>>2]|0)|0;if(c
[j>>2]|0){e=c[j>>2]|0;i=k;return e|0}c[j>>2]=Si(c[f>>2]|0,c[g>>2]|0,c[h>
x3e;2]|0)|0;e=c[j>>2]|0;i=k;return e|0}function Ri(d){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[e>>2]=d;c[h>>2]=c[(c[e>>2]|0)+20>>2];if(!(a[(c[e>>2]|0)+65>>
;0]|0)){h=c[h>>2]|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16;c[f>>2]=0;h=c[f>
;>2]|0;i=j;return h|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20>>1]|0)+(b[(c[(c[e>>2]|0)+12
>>2]|0)+56>>1]|0)+1|0)>>>0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+8>>
;2]|0)>>>0)e=0;else e=kc(c[(c[e>>2]|0)+12>>2]|0,0,1)|0;c[g>>2]=e;if(!(c[g>>
;2]|0)){if((b[c[h>>2]>>1]|0)>0)b[(c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>
;>1]|0)-1<<1)>>1]=(b[(c[h>>2]|0)+2>>1]|0)-1;h=c[h>>2]|0;b[h>>1]=(
b[h>>1]|0)+1<<16>>16}c[f>>2]=c[g>>2];h=c[f>>2]|0;i=j;return h|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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>
;2]=b;c[g>>2]=d;c[h>>2]=Ti(c[e>>2]|0,1)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=j;return
d|0}Ui(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0,1);d=c[h>>2]|0;i=j;return d|0}function Ti(a,d){a=a
|0;d=d|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]=d;if(!(c[f>>2]|0)){d=0;i=g;return
d|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20+2>>1]|0)+(b[(c[(c[e>>2]|0)+12>>2]|0)+56
+2>>1]|0)+(c[f>>2]|0)|0)>>>0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+4>>
;2]|0)>>>0){d=0;i=g;return d|0}d=kc(c[(c[e>>2]|0)+12>>2]|0,c[f>>2]|0,0)|0;i=g;return
d|0}function Ui(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;p=i;i=i+32|0;q=p+20|0;j=p+16|0;k=p+12|0;l=
p+24|0;n=p+8|0;o=p+4|0;m=p;c[q>>2]=e;c[j>>2]=f;c[k>>2]=g;a[l>>0]=h;c[n>>2]=c[(
c[q>>2]|0)+20>>2];if(!(a[(c[q>>2]|0)+65>>0]|0)){q=c[n>>2]|0;q=q+2|0;g=b[q>
;>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}c[o>>2]=(c[(c[n>>2]|0)+4>
x3e;2]|0)+(b[(c[n>>2]|0)+2>>1]<<3);c[m>>2]=(c[(c[n>>2]|0)+8>>2]|0)+(
b[(c[n>>2]|0)+2>>1]|0);c[c[o>>2]>>2]=c[j>>2]>>16;c[(c[o>>2
]|0)+4>>2]=c[k>>2]>>16;a[c[m>>2]>>0]=d[l>>0]|0?1:2;q=c[n>>
2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}function Vi(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,D=0,E=0,F=0,G=0
;G=i;i=i+96|0;k=G+92|0;l=G+88|0;m=G+84|0;n=G+80|0;o=G+76|0;p=G+72|0;q=G+68|0;y=G+64|0;u=G+60|0;t=G+56|0;r=G+52|0;z=G+48|0;C=G+40
|0;s=G+32|0;w=G+24|0;x=G+20|0;B=G+16|0;v=G+12|0;A=G+8|0;D=G+4|0;E=G;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;
c[o>>2]=g;c[p>>2]=h;c[q>>2]=j;c[u>>2]=c[l>>2];c[z>>2]=c[(c[l>
x3e;2]|0)+4>>2];if(a[(c[l>>2]|0)+924>>0]|0){c[k>>2]=160;F=c[k>>2]|0;i=G;return
F|0}c[n>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+32>>2]|0);c[o>>2]=(c[o>>2]|0
)+(c[(c[l>>2]|0)+32+4>>2]|0);if(c[(c[(c[z>>2]|0)+128>>2]|0)+52>>2]|0){c[t>
;>2]=c[p>>2];c[r>>2]=c[q>>2]}else{c[v>>2]=c[(c[z>>2]|0)+692>>2];
c[t>>2]=Wi(c[v>>2]|0,c[p>>2]|0)|0;c[r>>2]=Wi(c[v>>2]|0,c[q>>2]|0)|0}
if((c[t>>2]|0)<0|(c[r>>2]|0)<0){c[k>>2]=160;F=c[k>>2]|0;i=G;return F|0}if(a[(c
[u>>2]|0)+66>>0]|0){c[A>>2]=c[(c[u>>2]|0)+8>>2];c[D>>2]=c[c[(c[A>
;>2]|0)+156>>2]>>2];c[y>>2]=lc(c[D>>2]|0,2)|0;if(!(c[y>>2]|0)){c[E>
x3e;2]=c[(c[D>>2]|0)+56+32>>2];c[c[E>>2]>>2]=c[t>>2];b[(c[E>>2]|0)+4
>>1]=514;c[(c[E>>2]|0)+8>>2]=0;c[(c[E>>2]|0)+12>>2]=0;c[E>>2]=(c[E
x3e;>2]|0)+32;c[c[E>>2]>>2]=c[r>>2];b[(c[E>>2]|0)+4>>1]=2;c[(c[E>>
;2]|0)+8>>2]=c[n>>2]>>16;c[(c[E>>2]|0)+12>>2]=c[o>>2]>>16;
c[(c[A>>2]|0)+128>>2]=2;c[(c[A>>2]|0)+132>>2]=c[(c[D>>2]|0)+20+32>>2
];c[(c[A>>2]|0)+72>>2]=1668246896;c[(c[D>>2]|0)+56+28>>2]=2;F=11}}else F=11;do if((F|0)==
11){nc(c[(c[u>>2]|0)+12>>2]|0);c[y>>2]=Mi(c[z>>2]|0,c[t>>2]|0,w,x)|0;if((c[y
x3e;>2]|0)==0?(a[(c[l>>2]|0)+924>>0]=1,c[y>>2]=Oi(c[l>>2]|0,c[w>>2]|0,c[x
>>2]|0)|0,a[(c[l>>2]|0)+924>>0]=0,Yi(c[z>>2]|0,w,c[x>>2]|0),c[y>>2]|
0):0)break;F=(c[u>>2]|0)+32|0;c[C>>2]=c[F>>2];c[C+4>>2]=c[F+4>>2];F=(c[u>
x3e;2]|0)+40|0;c[s>>2]=c[F>>2];c[s+4>>2]=c[F+4>>2];c[B>>2]=c[(c[l>>2
]|0)+744>>2];c[(c[u>>2]|0)+32>>2]=0;c[(c[u>>2]|0)+32+4>>2]=0;c[(c[u>>
;2]|0)+24>>2]=(c[n>>2]|0)-(c[m>>2]|0);c[(c[u>>2]|0)+28>>2]=c[o>>2];c
[y>>2]=Mi(c[z>>2]|0,c[r>>2]|0,w,x)|0;if((c[y>>2]|0)==0?(a[(c[l>>2]|0)+924>
;>0]=1,c[y>>2]=Oi(c[l>>2]|0,c[w>>2]|0,c[x>>2]|0)|0,a[(c[l>>2]|0)+924>
;>0]=0,Yi(c[z>>2]|0,w,c[x>>2]|0),c[y>>2]|0):0)break;F=(c[u>>2]|0)+32|0;c[F>>
;2]=c[C>>2];c[F+4>>2]=c[C+4>>2];F=(c[u>>2]|0)+40|0;c[F>>2]=c[s>>2];c
[F+4>>2]=c[s+4>>2];c[(c[l>>2]|0)+744>>2]=c[B>>2];c[(c[u>>2]|0)+24>
;>2]=0;c[(c[u>>2]|0)+28>>2]=0}while(0);c[k>>2]=c[y>>2];F=c[k>>2]|0;i=G;return
F|0}function Wi(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l+12|0;g=l+8|0;f=l+4|0;j=l;h=l+16|0;c[g>>
2]=a;c[f>>2]=d;if(!(c[(c[g>>2]|0)+1152+8>>2]|0)){c[k>>2]=-1;k=c[k>>2]|0;i=l;return
k|0}if((c[f>>2]|0)<0|(c[f>>2]|0)>255){c[k>>2]=-1;k=c[k>>2]|0;i=l;return k|0}b
[h>>1]=Xi(c[f>>2]|0)|0;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[
g>>2]|0)+12>>2]|0)>>>0){f=10;break}a=c[j>>2]|0;if((e[(c[(c[g>>2]|0)+1152+
8>>2]|0)+(c[j>>2]<<1)>>1]|0|0)==(e[h>>1]|0|0)){f=8;break}c[j>>2]=a+1
}if((f|0)==8){c[k>>2]=a;k=c[k>>2]|0;i=l;return k|0}else if((f|0)==10){c[k>>2]=-1;k=c[k>>
2]|0;i=l;return k|0}return 0}function Xi(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<256)b=e[6520+(c[b>>2]<<1)>>1]|0;else b=0;i=d;return b&65535|0}function Yi
(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;e=k+24|0;f=k+20|0;g=k+16|0;j=k+8|0;h=k;c[e>>2]=a;c[
f>>2]=b;c[g>>2]=d;if(c[(c[(c[e>>2]|0)+128>>2]|0)+52>>2]|0){c[j>>2]=c
[c[f>>2]>>2];c[j+4>>2]=c[g>>2];Ra[c[(c[c[(c[(c[e>>2]|0)+128>>2]|0)+52
>>2]>>2]|0)+4>>2]&7](c[(c[(c[(c[e>>2]|0)+128>>2]|0)+52>>2]|0)+4
>>2]|0,j);i=k;return}else{c[h>>2]=c[(c[e>>2]|0)+692>>2];ji((c[h>>2]|0)+1176|0,
c[f>>2]|0);i=k;return}}function Zi(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;c[d>>
;2]=c[(c[b>>2]|0)+8>>2];if(!(c[d>>2]|0)){i=e;return}d=(c[d>>2]|0)+108|0;a=c[(c[b>
x3e;2]|0)+16>>2]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a
+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];i=e;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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2]=c[m>>2];c[k>>2]=c[(
c[j>>2]|0)+532>>2];c[c[h>>2]>>2]=0;c[(c[h>>2]|0)+4>>2]=0;if(!(c[k>
;>2]|0)){i=l;return 0}m=Oa[c[(c[k>>2]|0)+128>>2]&63](c[j>>2]|0,c[f>>2]|0,c[g
x3e;>2]|0)|0;c[c[h>>2]>>2]=m;i=l;return 0}function $i(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;p=i;i=i+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;m=p+8|0;o=p+4|0;n=p;c[g>>2]=
a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[o>>2]=0;c[n>>2]=c[(c[g
x3e;>2]|0)+84>>2];c[k>>2]=c[k>>2]|256;c[m>>2]=0;while(1){if((c[m>>2]|0)
x3e;>>0>=(c[j>>2]|0)>>>0){f=8;break}c[o>>2]=Gi(c[n>>2]|0,c[(c[g>
;>2]|0)+88>>2]|0,(c[h>>2]|0)+(c[m>>2]|0)|0,c[k>>2]|0)|0;if(c[o>>2]|0){f=8
;break}f=c[n>>2]|0;if(c[k>>2]&16|0)f=c[f+60>>2]|0;else f=c[f+56>>2]|0;c[(c[l>
x3e;2]|0)+(c[m>>2]<<2)>>2]=f;c[m>>2]=(c[m>>2]|0)+1}if((f|0)==8){i=p;return c[o
>>2]|0}return 0}function aj(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;v=i;i=i+80|0;k=v+64|0;l=v+60|0;d=v+56|0;g=v+52|0;n=v+48|0;e=v+44|0;h=v+40|0;j=v+36|0;f=v+32|0;m=v+28|0;p=v+24|0;s=v+20|0;o=v+
16|0;q=v+12|0;r=v+8|0;t=v+4|0;u=v;c[l>>2]=a;c[d>>2]=b;c[g>>2]=c[l>>2];do if(c[(c[c[l>
;>2]>>2]|0)+8>>2]&2|0){c[e>>2]=c[c[l>>2]>>2];c[h>>2]=c[(c[
e>>2]|0)+532>>2];if(Oa[c[(c[h>>2]|0)+148>>2]&63](c[e>>2]|0,c[d>>
;2]|0,j)|0){c[(c[g>>2]|0)+44>>2]=-1;break}c[k>>2]=bj(c[l>>2]|0,c[j>>2]|0)|0;u=
c[k>>2]|0;i=v;return u|0}while(0);Ed(c[c[l>>2]>>2]|0,c[d>>2]|0);c[n>>2]=Bi(c[g
>>2]|0)|0;a:do if(c[n>>2]|0){c[f>>2]=c[c[l>>2]>>2];c[m>>2]=c[(c[f>
;>2]|0)+692>>2];c[p>>2]=c[(c[l>>2]|0)+40>>2];c[s>>2]=c[(c[m>>2]|
0)+1324+64>>2];Za[c[(c[n>>2]|0)+4>>2]&31](c[c[p>>2]>>2]|0,c[(c[l>>
;2]|0)+12+4>>2]|0,c[(c[l>>2]|0)+12+8>>2]|0,0,0)|0;c[o>>2]=c[(c[m>>2]|0)+1892
x3e;>2];while(1){if((c[o>>2]|0)>>>0<=0)break a;c[q>>2]=c[(c[m>>2]|0)+1896
+((c[o>>2]|0)-1<<2)>>2];c[r>>2]=c[(c[q>>2]|0)+64>>2];d=c[(c[l>
x3e;2]|0)+12+4>>2]|0;if((c[s>>2]|0)!=(c[r>>2]|0)){c[t>>2]=xb(d,c[s>>2]|0,c[r
x3e;>2]|0)|0;c[u>>2]=xb(c[(c[l>>2]|0)+12+8>>2]|0,c[s>>2]|0,c[r>>2]|0)|0}else
{c[t>>2]=d;c[u>>2]=c[(c[l>>2]|0)+12+8>>2]}Za[c[(c[n>>2]|0)+4>>2]&
;31](c[(c[p>>2]|0)+4+((c[o>>2]|0)-1<<2)>>2]|0,c[t>>2]|0,c[u>>2]|0,0,
0)|0;c[o>>2]=(c[o>>2]|0)+-1}}while(0);c[k>>2]=0;u=c[k>>2]|0;i=v;return u|0}function bj(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;p=i;i=i+64|0;e=p+48|0;r=p+44|0;q=p+40|0;g=p+36|0;d=p
+32|0;f=p+28|0;j=p+24|0;m=p+20|0;h=p+16|0;k=p+12|0;l=p+8|0;n=p+4|0;o=p;c[e>>2]=a;c[r>>2]=b;c[q>>2]=
c[e>>2];c[(c[q>>2]|0)+44>>2]=c[r>>2];Cd(c[c[e>>2]>>2]|0,c[r>>
;2]|0);c[g>>2]=Bi(c[q>>2]|0)|0;if(!(c[g>>2]|0)){i=p;return 0}c[d>>2]=c[c[e>>2]
x3e;>2];c[f>>2]=c[(c[d>>2]|0)+692>>2];c[j>>2]=c[(c[e>>2]|0)+40>>
;2];c[m>>2]=c[(c[f>>2]|0)+1324+64>>2];Za[c[(c[g>>2]|0)+4>>2]&31](c[c[j>
;>2]>>2]|0,c[(c[e>>2]|0)+12+4>>2]|0,c[(c[e>>2]|0)+12+8>>2]|0,0,0)|0;c[h
x3e;>2]=c[(c[f>>2]|0)+1892>>2];while(1){if((c[h>>2]|0)>>>0<=0)break;c[k
x3e;>2]=c[(c[f>>2]|0)+1896+((c[h>>2]|0)-1<<2)>>2];c[l>>2]=c[(c[k>>
;2]|0)+64>>2];d=c[(c[e>>2]|0)+12+4>>2]|0;if((c[m>>2]|0)!=(c[l>>2]|0)){c[n>
;>2]=xb(d,c[m>>2]|0,c[l>>2]|0)|0;c[o>>2]=xb(c[(c[e>>2]|0)+12+8>>2]|0,c[m
x3e;>2]|0,c[l>>2]|0)|0}else{c[n>>2]=d;c[o>>2]=c[(c[e>>2]|0)+12+8>>2]}Za[c
[(c[g>>2]|0)+4>>2]&31](c[(c[j>>2]|0)+4+((c[h>>2]|0)-1<<2)>>2]|0
,c[n>>2]|0,c[o>>2]|0,0,0)|0;c[h>>2]=(c[h>>2]|0)+-1}i=p;return 0}function cj(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];i=d;return 0}function dj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;h=g+8|0;e=g+4|0;f=g;c[h>>2
]=a;c[e>>2]=b;c[f>>2]=c[(c[h>>2]|0)+16>>2];if((c[e>>2]|0)>>>0
x3e;=256){h=0;i=g;return h|0}h=d[(c[f>>2]|0)+(6+(c[e>>2]|0))>>0]|0;i=g;return h|0}function ej(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;l=i;i=i+32|0;m=l+20|0;e=l+16|0;j=l+12|0;f=l+8|0;h=l+4|0;g=l;c[m>>2]=a;
c[e>>2]=b;c[j>>2]=c[(c[m>>2]|0)+16>>2];c[f>>2]=c[c[e>>2]>>
2];c[h>>2]=0;c[g>>2]=0;c[j>>2]=(c[j>>2]|0)+6;do{m=(c[f>>2]|0)+1|0;c[f>>
;2]=m;if(m>>>0>=256){k=5;break}c[g>>2]=d[(c[j>>2]|0)+(c[f>>2]|0)>>0]}
while(!(c[g>>2]|0));if((k|0)==5){k=c[h>>2]|0;m=c[e>>2]|0;c[m>>2]=k;m=c[g>>2]|0
;i=l;return m|0}c[h>>2]=c[f>>2];k=c[h>>2]|0;m=c[e>>2]|0;c[m>>2]=k;m=c[g>
x3e;2]|0;i=l;return m|0}function fj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;e=k+20|0;f=k+16|0;j=k+12|0;l=k
+8|0;h=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[j>>2]=(c[e>>2]|0)+2;c[j>>2]=(c[j>
x3e;2]|0)+2;c[l>>2]=(((d[(c[j>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[j>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535;if((c[l>>2]|0)>>>0<262?1:((c[e>>
;2]|0)+(c[l>>2]|0)|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>
;>2]|0,8);if((c[(c[f>>2]|0)+8>>2]|0)>>>0<1){i=k;return 0}c[j>>2]=(c[e>
;>2]|0)+6;c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>=256)break;l=c[j>>2]|0;c[
j>>2]=l+1;c[g>>2]=d[l>>0];if((c[g>>2]|0)>>>0>=(c[(c[f>>2]|
0)+172>>2]|0)>>>0)sc(c[f>>2]|0,16);c[h>>2]=(c[h>>2]|0)+1}i=k;return 0}function
gj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>
;2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=0;c[c[f>>2]>>2]=(((
d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&65535)<<
;0)&65535;i=e;return 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,o=0,p=0,q=0,r=0;p=i;i=i+48|0;r=p+40
|0;f=p+36|0;q=p+32|0;m=p+28|0;o=p+24|0;l=p+20|0;j=p+16|0;n=p+12|0;g=p+8|0;h=p+4|0;k=p;c[r>>2]=b;c[f>>2]=e;c[
q>>2]=c[(c[r>>2]|0)+16>>2];c[m>>2]=0;c[o>>2]=ij(c[q>>2]|0,c[f>
x3e;2]|0)|0;if(!(c[o>>2]|0)){r=c[m>>2]|0;i=p;return r|0}c[l>>2]=c[o>>2];c[j>>2
]=c[f>>2]&255;c[l>>2]=(c[l>>2]|0)+2;c[n>>2]=((d[(c[l>>2]|0)+-2>>
;0]&65535)<<8|(d[(c[l>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[l>>2]=(
c[l>>2]|0)+2;c[g>>2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>>
2]|0)+-2+1>>0]&65535)<<0)&65535;c[l>>2]=(c[l>>2]|0)+2;c[h>>2]=((a[(c
[l>>2]|0)+-2>>0]<<16>>16<<8|d[(c[l>>2]|0)+-2+1>>0]<
x3c;0)&65535)<<16>>16;c[k>>2]=((d[c[l>>2]>>0]&65535)<<8|(d
[(c[l>>2]|0)+1>>0]&65535)<<0)&65535;c[j>>2]=(c[j>>2]|0)-(c[n>
x3e;2]|0);if(!(c[k>>2]|0?(c[j>>2]|0)>>>0<(c[g>>2]|0)>>>0:0)){r=
c[m>>2]|0;i=p;return r|0}c[l>>2]=(c[l>>2]|0)+((c[k>>2]|0)+(c[j>>2]<<
1));c[j>>2]=((d[c[l>>2]>>0]&65535)<<8|(d[(c[l>>2]|0)+1>>0]&
;65535)<<0)&65535;if(!(c[j>>2]|0)){r=c[m>>2]|0;i=p;return r|0}c[m>>2]=(c[j>>
;2]|0)+(c[h>>2]|0)&65535;r=c[m>>2]|0;i=p;return r|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,m=0,n=0;n=i;i=i+32|0;e=n+28|0;f=n+24|0;k=n+20|0;h=n+16|0;g=n+12|0;j=n+8|0;m=n+4|0;l=n;c[e>>2]=a;c[f>>
;2]=b;c[k>>2]=0;if((c[f>>2]|0)>>>0>=65536){a=c[k>>2]|0;i=n;return a|0}c[h>
;>2]=c[f>>2]&255;c[g>>2]=(c[f>>2]|0)>>>8;c[j>>2]=(c[e>>
;2]|0)+6;c[m>>2]=(c[e>>2]|0)+518;if(!(c[g>>2]|0)){c[l>>2]=c[m>>2];c[j>>
;2]=(c[j>>2]|0)+(c[h>>2]<<1);if((((d[c[j>>2]>>0]|0)&65535)<<8|((
d[(c[j>>2]|0)+1>>0]|0)&65535)<<0)&65535|0){a=c[k>>2]|0;i=n;return a|0}}else{c[
j>>2]=(c[j>>2]|0)+(c[g>>2]<<1);c[l>>2]=(c[m>>2]|0)+((((d[c[j>
x3e;2]>>0]|0)&65535)<<8|((d[(c[j>>2]|0)+1>>0]|0)&65535)<<0)&65535
&-8);if((c[l>>2]|0)==(c[m>>2]|0)){a=c[k>>2]|0;i=n;return a|0}}c[k>>2]=c[l>>
;2];a=c[k>>2]|0;i=n;return a|0}function jj(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;v=i;i=i+64|0;w=v+56|0;f=v+52|0;t=v+48|0;l=v+44|0;q=v+40|0;h=v+36|0;s=v+32|0;o=v+28|0;r=v+24|0;j=v+20|0;k=v+16|0;n=
v+12|0;g=v+8|0;p=v+4|0;m=v;c[w>>2]=b;c[f>>2]=e;c[t>>2]=c[(c[w>>2]|0)+16>>2];c[
l>>2]=0;c[q>>2]=0;c[h>>2]=(c[c[f>>2]>>2]|0)+1;a:while(1){if((c[h>>2]|
0)>>>0>=65536){u=15;break}c[s>>2]=ij(c[t>>2]|0,c[h>>2]|0)|0;b:do if(c[s>
x3e;2]|0?(c[o>>2]=c[s>>2],c[o>>2]=(c[o>>2]|0)+2,c[r>>2]=((d[(c[o>>2]|
0)+-2>>0]&65535)<<8|(d[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535,c[
o>>2]=(c[o>>2]|0)+2,c[j>>2]=((d[(c[o>>2]|0)+-2>>0]&65535)<<8|(d
[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535,c[o>>2]=(c[o>>2]|0)+2,c[k>
;>2]=((a[(c[o>>2]|0)+-2>>0]<<16>>16<<8|d[(c[o>>2]|0)+-2+1>
x3e;0]<<0)&65535)<<16>>16,c[n>>2]=((d[c[o>>2]>>0]&65535)
x3c;<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535,c[g>>2]=c[h>>2]&
;255,c[n>>2]|0):0){if((c[g>>2]|0)>>>0<(c[r>>2]|0)>>>0){c[g>
;>2]=c[r>>2];c[p>>2]=0}else c[p>>2]=(c[g>>2]|0)-(c[r>>2]|0);c[o>>
;2]=(c[o>>2]|0)+((c[n>>2]|0)+(c[p>>2]<<1));c[h>>2]=(c[h>>2]&-256
)+(c[g>>2]|0);while(1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break
b;c[o>>2]=(c[o>>2]|0)+2;c[m>>2]=((d[(c[o>>2]|0)+-2>>0]&65535)<<
;8|(d[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535;if(c[m>>2]|0?(c[l>>2]=(c
[m>>2]|0)+(c[k>>2]|0)&65535,c[l>>2]|0):0)break a;c[p>>2]=(c[p>>2]|0)+1;c[
h>>2]=(c[h>>2]|0)+1}}while(0);c[h>>2]=(c[h>>2]&-256)+256}if((u|0)==15){u=c[q>
x3e;2]|0;w=c[f>>2]|0;c[w>>2]=u;w=c[l>>2]|0;i=v;return w|0}c[q>>2]=c[h>>2];u=c[
q>>2]|0;w=c[f>>2]|0;c[w>>2]=u;w=c[l>>2]|0;i=v;return w|0}function kj(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;x=i;i=i+80|0;g=x+64|0;h=x+60|0;v=x+56|0;q=x+52|0;t=x+48
|0;s=x+44|0;f=x+40|0;w=x+36|0;m=x+32|0;o=x+28|0;l=x+24|0;j=x+20|0;u=x+16|0;k=x+12|0;n=x+8|0;r=x+4|0;p=x;c[g>>2]=b;c[h
x3e;>2]=e;c[v>>2]=(c[g>>2]|0)+2;c[q>>2]=((d[c[v>>2]>>0]&65535)<
x3c;8|(d[(c[v>>2]|0)+1>>0]&65535)<<0)&65535;if((c[q>>2]|0)>>>0
x3c;518?1:((c[g>>2]|0)+(c[q>>2]|0)|0)>>>0>(c[(c[h>>2]|0)+4>>2]|0)>
;>>0)sc(c[h>>2]|0,8);c[f>>2]=(c[g>>2]|0)+6;c[v>>2]=c[f>>2];c[s>
x3e;2]=0;c[t>>2]=0;while(1){f=c[v>>2]|0;if((c[t>>2]|0)>>>0>=256)break;c[v>
;>2]=f+2;c[o>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+
1>>0]&65535)<<0)&65535;if((c[(c[h>>2]|0)+8>>2]|0)>>>0>=2?c
[o>>2]&7|0:0)sc(c[h>>2]|0,8);c[o>>2]=(c[o>>2]|0)>>>3;if((c[o>
x3e;2]|0)>>>0>(c[s>>2]|0)>>>0)c[s>>2]=c[o>>2];c[t>>2]=(
c[t>>2]|0)+1}c[w>>2]=f;c[m>>2]=(c[w>>2]|0)+((c[s>>2]|0)+1<<3);if((c[
m>>2]|0)>>>0>(c[(c[h>>2]|0)+4>>2]|0)>>>0)sc(c[h>>2]|0
,8);c[t>>2]=0;while(1){if((c[t>>2]|0)>>>0>(c[s>>2]|0)>>>0)break
;c[v>>2]=(c[v>>2]|0)+2;c[l>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8
|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[v>>2]=(c[v>>2]|0)+2;c[j
x3e;>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>>0]&
;65535)<<0)&65535;c[v>>2]=(c[v>>2]|0)+2;c[k>>2]=((a[(c[v>>2]|0)+-2>
x3e;0]<<16>>16<<8|d[(c[v>>2]|0)+-2+1>>0]<<0)&65535)<<
16>>16;c[v>>2]=(c[v>>2]|0)+2;c[u>>2]=((d[(c[v>>2]|0)+-2>>0]&65535
)<<8|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0)&65535;a:do if(c[j>>2]|0){do
if((c[(c[h>>2]|0)+8>>2]|0)>>>0>=2){if((c[l>>2]|0)>>>0<256?((
c[l>>2]|0)+(c[j>>2]|0)|0)>>>0<=256:0)break;sc(c[h>>2]|0,8)}while(0);if(c[u>
;>2]|0){c[n>>2]=(c[v>>2]|0)+-2+(c[u>>2]|0);if(!((c[n>>2]|0)>>>0>
;=(c[m>>2]|0)>>>0?((c[n>>2]|0)+(c[j>>2]<<1)|0)>>>0<=((
c[g>>2]|0)+(c[q>>2]|0)|0)>>>0:0))sc(c[h>>2]|0,9);if((c[(c[h>>2]|0)+8>
;>2]|0)>>>0>=1){c[r>>2]=(c[v>>2]|0)+(c[j>>2]<<1);while(1){if((c
[v>>2]|0)>>>0>=(c[r>>2]|0)>>>0)break a;c[v>>2]=(c[v>>
2]|0)+2;c[p>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>
;>0]&65535)<<0)&65535;if(!(c[p>>2]|0))continue;c[p>>2]=(c[p>>2]|0)+(c[k
x3e;>2]|0)&65535;if((c[p>>2]|0)>>>0<(c[(c[h>>2]|0)+172>>2]|0)>
x3e;>0)continue;sc(c[h>>2]|0,16)}}}}while(0);c[t>>2]=(c[t>>2]|0)+1}i=x;return 0}function lj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(
c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=2;c[c[f>>2]>>2]=(((d[c
[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&65535)<<0
)&65535;i=e;return 0}function mj(a,b){a=a|0;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[f>>2]=a;
c[h>>2]=b;c[(c[f>>2]|0)+16>>2]=c[h>>2];c[g>>2]=(c[h>>2]|0)+6;c[(c[f
x3e;>2]|0)+32>>2]=((((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1
x3e;>0]|0)&65535)<<0)&65535)>>1;c[(c[f>>2]|0)+24>>2]=-1;c[(c[f>>
;2]|0)+28>>2]=0;i=e;return 0}function nj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>
;>2]=a;c[f>>2]=b;do if((c[f>>2]|0)>>>0<65536){b=c[e>>2]|0;if(c[(c[e>
x3e;2]|0)+20>>2]&1|0){c[d>>2]=oj(b,f,0)|0;break}else{c[d>>2]=pj(b,f,0)|0;break}}else c[d>
;>2]=0;while(0);i=g;return c[d>>2]|0}function oj(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;z=i;i=i+80|0;g=z+60|0;h=z+56|0;j=z+52|0;k=z+64|0;t=z+48|0;x=z+44|0;n=z+40|0;u=z+36|0;m=
z+32|0;q=z+28|0;s=z+24|0;l=z+20|0;p=z+16|0;v=z+12|0;w=z+8|0;o=z+4|0;r=z;c[h>>2]=b;c[j>>2]=e;a[k>>0
]=f;c[l>>2]=c[c[j>>2]>>2];c[p>>2]=0;c[v>>2]=(c[(c[h>>2]|0)+16>
x3e;2]|0)+6;c[t>>2]=((d[c[v>>2]>>0]&65535)<<8|(d[(c[v>>2]|0)+1>>
;0]&65535)<<0)&65535&-2;c[s>>2]=(c[t>>2]|0)>>>1;if(!(c[s>>
2]|0)){c[g>>2]=0;y=c[g>>2]|0;i=z;return y|0}if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1
;while(1){if((c[l>>2]|0)>>>0>65535)break;c[v>>2]=(c[(c[h>>2]|0)+16>>
2]|0)+14;c[w>>2]=(c[(c[h>>2]|0)+16>>2]|0)+16+(c[t>>2]|0);c[q>>2]=0;while(1){if
((c[q>>2]|0)>>>0>=(c[s>>2]|0)>>>0)break;c[v>>2]=(c[v>>
;2]|0)+2;c[n>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>
;>0]&65535)<<0)&65535;c[w>>2]=(c[w>>2]|0)+2;c[x>>2]=((d[(c[w>>2
]|0)+-2>>0]&65535)<<8|(d[(c[w>>2]|0)+-2+1>>0]&65535)<<0)&65535;
if((c[l>>2]|0)>>>0>=(c[x>>2]|0)>>>0?(c[l>>2]|0)>>>
;0<=(c[n>>2]|0)>>>0:0){c[v>>2]=(c[w>>2]|0)+-2+(c[t>>2]|0);c[m>
x3e;2]=((a[c[v>>2]>>0]<<16>>16<<8|d[(c[v>>2]|0)+1>>0]<
;<0)&65535)<<16>>16;c[v>>2]=(c[v>>2]|0)+(c[t>>2]|0);c[u>>2
]=((d[c[v>>2]>>0]&65535)<<8|(d[(c[v>>2]|0)+1>>0]&65535)<<0
)&65535;if((((c[x>>2]|0)==65535?(c[q>>2]|0)>>>0>=((c[s>>2]|0)-1|0)>
x3e;>0:0)&(c[n>>2]|0)==65535?(c[o>>2]=c[c[h>>2]>>2],c[r>>2]=(c[(c[o
x3e;>2]|0)+500>>2]|0)+(c[(c[o>>2]|0)+504>>2]|0),c[u>>2]|0):0)?((c[v>>2]|0
)+(c[u>>2]|0)+2|0)>>>0>(c[r>>2]|0)>>>0:0){c[m>>2]=1;c[u>
x3e;2]=0}if((c[u>>2]|0)!=65535){y=15;break}}c[q>>2]=(c[q>>2]|0)+1}do if((y|0)==15){y=0;if(!(c[u>
;>2]|0)){c[p>>2]=(c[l>>2]|0)+(c[m>>2]|0)&65535;break}c[v>>2]=(c[v>>2
]|0)+((c[u>>2]|0)+((c[l>>2]|0)-(c[x>>2]|0)<<1));c[p>>2]=((d[c[v>>2]
x3e;>0]&65535)<<8|(d[(c[v>>2]|0)+1>>0]&65535)<<0)&65535;if(c[p>
x3e;2]|0)c[p>>2]=(c[p>>2]|0)+(c[m>>2]|0)&65535}while(0);if((a[k>>0]|0)==0|(c[p>
;>2]|0)!=0)break;c[l>>2]=(c[l>>2]|0)+1}if((d[k>>0]|0)!=0&(c[p>>2]|0)!=0)c[c[j
x3e;>2]>>2]=c[l>>2];c[g>>2]=c[p>>2];y=c[g>>2]|0;i=z;return y|0}function pj
(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,D=0,E=0,F=
0,G=0;G=i;i=i+96|0;g=G+88|0;h=G+84|0;j=G+80|0;k=G+92|0;z=G+76|0;E=G+72|0;o=G+68|0;A=G+64|0;n=G+60|0;t=G+56|0;v=G+52|0;u=G+48|0;y
=G+44|0;l=G+40|0;q=G+36|0;C=G+32|0;p=G+28|0;s=G+24|0;r=G+20|0;D=G+16|0;B=G+12|0;w=G+8|0;x=G+4|0;m=G;c[h>>2]=b;c[j>
;>2]=e;a[k>>0]=f;c[l>>2]=c[c[j>>2]>>2];c[q>>2]=0;c[C>>2]=(c[(c[
h>>2]|0)+16>>2]|0)+6;c[z>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C
x3e;>2]|0)+1>>0]&65535)<<0)&65535&-2;if(!(c[z>>2]|0)){c[g>>2]=0;F=c[
g>>2]|0;i=G;return F|0}c[y>>2]=(c[z>>2]|0)>>>1;c[u>>2]=c[y>>2];
c[o>>2]=65535;if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1;c[v>>2]=0;c[t>>2]=c
[y>>2];while(1){if((c[v>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[u
x3e;>2]=((c[v>>2]|0)+(c[t>>2]|0)|0)>>>1;c[C>>2]=(c[(c[h>>2]|0)+16>
;>2]|0)+14+(c[u>>2]<<1);c[o>>2]=((d[c[C>>2]>>0]&65535)<<8|(
d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(2+(c[z>
;>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>
;0]&65535)<<0)&65535;if((c[l>>2]|0)>>>0<(c[E>>2]|0)>>>
;0){c[t>>2]=c[u>>2];continue}if((c[l>>2]|0)>>>0<=(c[o>>2]|0)>
x3e;>0){F=11;break}c[v>>2]=(c[u>>2]|0)+1}do if((F|0)==11){c[C>>2]=(c[C>>2]|0)+(c[z
x3e;>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>>
;2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>
x3e;2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0
]&65535)<<0)&65535;if((((c[E>>2]|0)==65535?(c[u>>2]|0)>>>0>=((c[y>
;>2]|0)-1|0)>>>0:0)&(c[o>>2]|0)==65535?(c[p>>2]=c[c[h>>2]>>2],c
[s>>2]=(c[(c[p>>2]|0)+500>>2]|0)+(c[(c[p>>2]|0)+504>>2]|0),c[A>>2]|0
):0)?((c[C>>2]|0)+(c[A>>2]|0)+2|0)>>>0>(c[s>>2]|0)>>>0:0){c[n
x3e;>2]=1;c[A>>2]=0}if(c[(c[h>>2]|0)+20>>2]&2|0){c[t>>2]=c[u>>2];if((
c[A>>2]|0)==65535)c[u>>2]=(c[t>>2]|0)+1;c[r>>2]=c[t>>2];while(1){if((c[r>
x3e;2]|0)>>>0<=0)break;c[B>>2]=c[C>>2];c[C>>2]=(c[(c[h>>2]|0)+16>
;>2]|0)+14+((c[r>>2]|0)-1<<1);c[D>>2]=((d[c[C>>2]>>0]&65535)<
x3c;8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[l>>2]|0)>>>0
x3e;(c[D>>2]|0)>>>0){F=21;break}c[o>>2]=c[D>>2];c[C>>2]=(c[C>>2
]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>
;2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>
;>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>>2]|0)+1>>0]
x3c;<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>
;2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<
;0)&65535;if((c[A>>2]|0)!=65535)c[u>>2]=(c[r>>2]|0)-1;c[r>>2]=(c[r>>2]|0)+-
1}if((F|0)==21)c[C>>2]=c[B>>2];if((c[u>>2]|0)==((c[t>>2]|0)+1|0)){if((c[r>>2]|
0)!=(c[t>>2]|0)){c[C>>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[t>>2]<<1);c[
o>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535
)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>
;2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>
;>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>
x3e;16<<8|d[(c[C>>2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>
;2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(
d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535}c[u>>2]=c[t>>2];c[r>>
2]=(c[t>>2]|0)+1;while(1){if((c[r>>2]|0)>>>0>=(c[y>>2]|0)>>>0)break
;c[C>>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[r>>2]<<1);c[w>>2]=((d[c[C>
;>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c
[C>>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[x>>2]=((d[c[C>>2]>>0]&65535
)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[l>>2]|0)>>
;>0<(c[x>>2]|0)>>>0)break;c[o>>2]=c[w>>2];c[E>>2]=c[x>>
;2];c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<
;16>>16<<8|d[(c[C>>2]|0)+1>>0]<<0)&65535)<<16>>16;c[C
>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[A>>2]|0)!=65535)c[u>
x3e;2]=c[r>>2];c[r>>2]=(c[r>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+-1;if((c[u>>
;2]|0)==(c[t>>2]|0)){c[u>>2]=c[r>>2];break}}if((c[u>>2]|0)!=(c[r>>2]|0)){c[C
x3e;>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[u>>2]<<1);c[o>>2]=((d[c[C>>
;2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>
;>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(
c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>
x3e;2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>
;>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>
;0]&65535)<<0)&65535}}else if((c[A>>2]|0)==65535)break;if(!(c[A>>2]|0)){c[q>>2
]=(c[l>>2]|0)+(c[n>>2]|0)&65535;break}c[C>>2]=(c[C>>2]|0)+((c[A>>2]|0)+((
c[l>>2]|0)-(c[E>>2]|0)<<1));c[q>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if(c[q>>2]|0)c[q>>2]=(
c[q>>2]|0)+(c[n>>2]|0)&65535}while(0);do if(a[k>>0]|0){c[m>>2]=c[h>>2];if
((c[l>>2]|0)>>>0>(c[o>>2]|0)>>>0?(c[u>>2]=(c[u>>2]|0)+
1,(c[u>>2]|0)==(c[y>>2]|0)):0){c[g>>2]=0;F=c[g>>2]|0;i=G;return F|0}if(qj(c[m>>
;2]|0,c[u>>2]|0)|0){if(!(c[q>>2]|0))break;c[c[j>>2]>>2]=c[l>>2];break}c[(c[m
x3e;>2]|0)+24>>2]=c[l>>2];if(c[q>>2]|0)c[(c[m>>2]|0)+28>>2]=c[q>>
;2];else{c[(c[m>>2]|0)+24>>2]=c[l>>2];rj(c[m>>2]|0);c[q>>2]=c[(c[m>>
2]|0)+28>>2]}if(c[q>>2]|0)c[c[j>>2]>>2]=c[(c[m>>2]|0)+24>>2]}while(0
);c[g>>2]=c[q>>2];F=c[g>>2]|0;i=G;return F|0}function qj(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;p=i;i=i+48|0;k=p+32|0;l=p+28|0;m=p+24|0;j=p+20|0;o=p+16|0;h=p+12|0;n=p+8|0;f=p+4|0;g=p;c[l>>2]=b;c
[m>>2]=e;c[j>>2]=c[(c[l>>2]|0)+16>>2];c[h>>2]=c[(c[l>>2]|0)+32>
x3e;2];while(1){if((c[m>>2]|0)>>>0>=(c[h>>2]|0)>>>0){b=12;break}c[o>
x3e;2]=(c[j>>2]|0)+14+(c[m>>2]<<1);c[(c[l>>2]|0)+44>>2]=((d[c[o>>2]
x3e;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;c[o>>
;2]=(c[o>>2]|0)+(2+(c[h>>2]<<1));c[(c[l>>2]|0)+40>>2]=((d[c[o>>2]>
;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;c[o>>
2]=(c[o>>2]|0)+(c[h>>2]<<1);c[(c[l>>2]|0)+48>>2]=((a[c[o>>2]>
x3e;0]<<16>>16<<8|d[(c[o>>2]|0)+1>>0]<<0)&65535)<<16
x3e;>16;c[o>>2]=(c[o>>2]|0)+(c[h>>2]<<1);c[n>>2]=((d[c[o>>2]>
;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;if(((((c[m>
;>2]|0)>>>0>=((c[h>>2]|0)-1|0)>>>0?(c[(c[l>>2]|0)+40>>2]|0
)==65535:0)?(c[(c[l>>2]|0)+44>>2]|0)==65535:0)?(c[f>>2]=c[c[l>>2]>>2],c[g>
;>2]=(c[(c[f>>2]|0)+500>>2]|0)+(c[(c[f>>2]|0)+504>>2]|0),c[n>>2]|0):0)?((
c[o>>2]|0)+(c[n>>2]|0)+2|0)>>>0>(c[g>>2]|0)>>>0:0){c[(c[l>
x3e;2]|0)+48>>2]=1;c[n>>2]=0}if((c[n>>2]|0)!=65535){b=10;break}c[m>>2]=(c[m>>2
]|0)+1}if((b|0)==10){c[(c[l>>2]|0)+52>>2]=c[n>>2]|0?(c[o>>2]|0)+(c[n>>2]|0)|0:
0;c[(c[l>>2]|0)+36>>2]=c[m>>2];c[k>>2]=0;o=c[k>>2]|0;i=p;return o|0}else if((b
|0)==12){c[k>>2]=-1;o=c[k>>2]|0;i=p;return o|0}return 0}function rj(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;n=i;i=i+32|0;j=n+28|0;k=n+24|0;h=n+20|0;f=n+16|0;e=n+12|0;g=n+8|0;l=n+4|0;m=n;c[j>>2]=a;a:do if((c[(c[j
x3e;>2]|0)+24>>2]|0)>>>0<65535){c[k>>2]=(c[(c[j>>2]|0)+24>>2]|0
)+1;if((c[k>>2]|0)>>>0<(c[(c[j>>2]|0)+40>>2]|0)>>>0)c[k>
x3e;2]=c[(c[j>>2]|0)+40>>2];b:while(1){c[h>>2]=c[(c[j>>2]|0)+52>>2];c[f>
x3e;2]=c[(c[j>>2]|0)+44>>2];c[e>>2]=c[(c[j>>2]|0)+48>>2];c:do if((c[k>>
;2]|0)>>>0<=(c[f>>2]|0)>>>0){if(!(c[h>>2]|0))while(1){c[m>>2]=(
c[k>>2]|0)+(c[e>>2]|0)&65535;b=c[k>>2]|0;if(c[m>>2]|0){a=12;break b}b=b+1|0;c[k>
;>2]=b;if(b>>>0>(c[f>>2]|0)>>>0)break c}c[g>>2]=(c[h>>2]|0
)+((c[k>>2]|0)-(c[(c[j>>2]|0)+40>>2]|0)<<1);do{c[g>>2]=(c[g>>2]|0)+2
;c[l>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+-2+1>
x3e;0]|0)&65535)<<0)&65535;if(c[l>>2]|0?(c[l>>2]=(c[l>>2]|0)+(c[e>>2
]|0)&65535,c[l>>2]|0):0){a=9;break b}b=(c[k>>2]|0)+1|0;c[k>>2]=b}while(b>>>0
x3c;=(c[f>>2]|0)>>>0)}while(0);if((qj(c[j>>2]|0,(c[(c[j>>2]|0)+36>>2]|0)+
1|0)|0)<0)break a;if((c[k>>2]|0)>>>0>=(c[(c[j>>2]|0)+40>>2]|0)>>
;>0)continue;c[k>>2]=c[(c[j>>2]|0)+40>>2]}if((a|0)==9){c[(c[j>>2]|0)+24>>
2]=c[k>>2];c[(c[j>>2]|0)+28>>2]=c[l>>2];i=n;return}else if((a|0)==12){c[(c[j>>
2]|0)+24>>2]=b;c[(c[j>>2]|0)+28>>2]=c[m>>2];i=n;return}}while(0);c[(c[j>>2]|0)+
24>>2]=-1;c[(c[j>>2]|0)+28>>2]=0;i=n;return}function sj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=b;if((c[c[f>>2]>>
;2]|0)>>>0>=65535){c[d>>2]=0;h=c[d>>2]|0;i=j;return h|0}a=c[e>>2]|0;do if(!(c[(
c[e>>2]|0)+20>>2]&1|0)){c[g>>2]=a;if((c[c[f>>2]>>2]|0)!=(c[(c[g>>
;2]|0)+24>>2]|0)){c[h>>2]=pj(c[e>>2]|0,c[f>>2]|0,1)|0;break}rj(c[g>>2]|0);c[h
x3e;>2]=c[(c[g>>2]|0)+28>>2];if(c[h>>2]|0)c[c[f>>2]>>2]=c[(c[g>>
;2]|0)+24>>2]}else c[h>>2]=oj(a,c[f>>2]|0,1)|0;while(0);c[d>>2]=c[h>>2];h=c[d
x3e;>2]|0;i=j;return h|0}function tj(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,D=0,E=0,F=0,G=0,H=0;H=i;i=i+112|0;n=H+104|0;o=H+100|0;B=H+96|0;x=H+92|0;g=H+88|0;m=H+84|0;j=H+80|0;f=
H+76|0;s=H+72|0;z=H+68|0;r=H+64|0;l=H+60|0;h=H+56|0;k=H+52|0;G=H+48|0;q=H+44|0;A=H+40|0;y=H+36|0;w=H+32|0;v=H+28|0;p=H+24|0;F=H+
20|0;D=H+16|0;C=H+12|0;E=H+8|0;t=H+4|0;u=H;c[n>>2]=b;c[o>>2]=e;c[B>>2]=(c[n>>2]|0)+2;c[B
>>2]=(c[B>>2]|0)+2;c[x>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<<8|(d[(
c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[r>>2]=0;if((c[x>>2]|0)>
x3e;>0<16)sc(c[o>>2]|0,8);if(((c[n>>2]|0)+(c[x>>2]|0)|0)>>>0>(c[(c[o
>>2]|0)+4>>2]|0)>>>0){if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=
1)sc(c[o>>2]|0,8);c[x>>2]=(c[(c[o>>2]|0)+4>>2]|0)-(c[n>>2]|0)}c[B>>2
]=(c[n>>2]|0)+6;c[B>>2]=(c[B>>2]|0)+2;c[z>>2]=((d[(c[B>>2]|0)+-2>>0]
x26;65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if((c[(c[o>>2
]|0)+8>>2]|0)>>>0>=2?c[z>>2]&1|0:0)sc(c[o>>2]|0,8);c[z>>2]=((c[
z>>2]|0)>>>0)/2|0;if((c[x>>2]|0)>>>0<(16+(c[z>>2]<<1
x3c;<2)|0)>>>0)sc(c[o>>2]|0,8);do if((c[(c[o>>2]|0)+8>>2]|0)>>>
0>=2){c[B>>2]=(c[B>>2]|0)+2;c[l>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<
;<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[B>>2]=(c[B>>2]|0
)+2;c[h>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<<8|(d[(c[B>>2]|0)+-2+1>>
;0]&65535)<<0)&65535;c[B>>2]=(c[B>>2]|0)+2;c[k>>2]=((d[(c[B>>2]|0)+-
2>>0]&65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if((c[
l>>2]|c[k>>2])&1|0)sc(c[o>>2]|0,8);c[l>>2]=((c[l>>2]|0)>>>
0)/2|0;c[k>>2]=((c[k>>2]|0)>>>0)/2|0;if((((c[l>>2]|0)>>>0<=(c[z
>>2]|0)>>>0?c[l>>2]<<1>>>0>=(c[z>>2]|0)>>
x3e;0:0)?((c[l>>2]|0)+(c[k>>2]|0)|0)==(c[z>>2]|0):0)?(c[l>>2]|0)==(1<<c[h>
;>2]|0):0)break;sc(c[o>>2]|0,8)}while(0);c[g>>2]=(c[n>>2]|0)+14;c[m>>2]=(c[n>
x3e;2]|0)+16+(c[z>>2]<<1);c[f>>2]=(c[m>>2]|0)+(c[z>>2]<<1);c[j>
x3e;2]=(c[f>>2]|0)+(c[z>>2]<<1);c[s>>2]=(c[j>>2]|0)+(c[z>>2]<
x3c;1);if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=2?(c[B>>2]=(c[g>>2]|0)+((c[z
x3e;>2]|0)-1<<1),(((d[c[B>>2]>>0]&65535)<<8|(d[(c[B>>2]|0)+1>
x3e;0]&65535)<<0)&65535|0)!=65535):0)sc(c[o>>2]|0,8);c[w>>2]=0;c[v>>2]=0;c[F
x3e;>2]=c[m>>2];c[D>>2]=c[g>>2];c[C>>2]=c[f>>2];c[E>>2]=c[j>
;>2];c[y>>2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[z>>2]|0)>>>
0)break;c[B>>2]=c[E>>2];c[F>>2]=(c[F>>2]|0)+2;c[G>>2]=((d[(c[F>>2]|0
)+-2>>0]&65535)<<8|(d[(c[F>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[D
>>2]=(c[D>>2]|0)+2;c[q>>2]=((d[(c[D>>2]|0)+-2>>0]&65535)<<8|(d[(
c[D>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+2;c[p>
x3e;2]=((a[(c[C>>2]|0)+-2>>0]<<16>>16<<8|d[(c[C>>2]|0)+-2+1>>
;0]<<0)&65535)<<16>>16;c[E>>2]=(c[E>>2]|0)+2;c[A>>2]=((d[(c[E
x3e;>2]|0)+-2>>0]&65535)<<8|(d[(c[E>>2]|0)+-2+1>>0]&65535)<<0)
x26;65535;if((c[G>>2]|0)>>>0>(c[q>>2]|0)>>>0)sc(c[o>>2]|0,8);do
if((c[y>>2]|0)>>>0>0?(c[G>>2]|0)>>>0<=(c[v>>2]|0)>
x3e;>0:0){if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=1){sc(c[o>>2]|0,8);break}if((c[
w>>2]|0)>>>0<=(c[G>>2]|0)>>>0?(c[v>>2]|0)>>>0<
;=(c[q>>2]|0)>>>0:0){c[r>>2]=c[r>>2]|2;break}c[r>>2]=c[r>>2]|1}
while(0);f=c[A>>2]|0;a:do if((c[A>>2]|0)!=0&(c[A>>2]|0)!=65535){c[B>>2]=(c[B>
x3e;2]|0)+f;do if((c[(c[o>>2]|0)+8>>2]|0)>>>0<1){if(!(((c[G>>2]|0)==65535?(c[y
>>2]|0)==((c[z>>2]|0)-1|0):0)&(c[q>>2]|0)==65535)){if((c[B>>2]|0)>>>
0>=(c[s>>2]|0)>>>0?((c[B>>2]|0)+((c[q>>2]|0)-(c[G>>2]|0)+1<<
;1)|0)>>>0<=(c[(c[o>>2]|0)+4>>2]|0)>>>0:0)break;sc(c[o>>2]|0,8)}}
else{if((c[B>>2]|0)>>>0>=(c[s>>2]|0)>>>0?((c[B>>2]|0)+((c[q>
;>2]|0)-(c[G>>2]|0)+1<<1)|0)>>>0<=((c[n>>2]|0)+(c[x>>2]|0)|0)
x3e;>>0:0)break;sc(c[o>>2]|0,8)}while(0);if((c[(c[o>>2]|0)+8>>2]|0)>>>0
x3e;=1){c[t>>2]=c[G>>2];while(1){if((c[t>>2]|0)>>>0>=(c[q>>2]|0)>
;>>0)break a;c[B>>2]=(c[B>>2]|0)+2;c[u>>2]=((d[(c[B>>2]|0)+-2>>0]&
;65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if(c[u>>2]|0?(c[
u>>2]=(c[u>>2]|0)+(c[p>>2]|0)&65535,(c[u>>2]|0)>>>0>=(c[(c[o>
;>2]|0)+172>>2]|0)>>>0):0)sc(c[o>>2]|0,16);c[t>>2]=(c[t>>2]|0)+1}}}else
if((f|0)==65535){if((c[(c[o>>2]|0)+8>>2]|0)>>>0<2?((c[G>>2]|0)==65535?(c[y>
;>2]|0)==((c[z>>2]|0)-1|0):0)&(c[q>>2]|0)==65535:0)break;sc(c[o>>2]|0,8)}while(0);c[w>
;>2]=c[G>>2];c[v>>2]=c[q>>2];c[y>>2]=(c[y>>2]|0)+1}i=H;return c[r>
x3e;2]|0}function uj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=
b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=4;c[c[f>>2]
x3e;>2]=(((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&
65535)<<0)&65535;i=e;return 0}function vj(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;h=i;i=i+32|0;n
=h+28|0;l=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;k=h+8|0;j=h+4|0;e=h;c[n>>2]=a;c[l>>2]=b;c[m>>2]=c[(c[n
>>2]|0)+16>>2];c[g>>2]=0;c[f>>2]=(c[m>>2]|0)+6;c[f>>2]=(c[f>>
;2]|0)+2;c[k>>2]=(((d[(c[f>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+-2+
1>>0]|0)&65535)<<0)&65535;c[f>>2]=(c[f>>2]|0)+2;c[j>>2]=(((d[(c[f>
;>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+-2+1>>0]|0)&65535)<<
;0)&65535;c[e>>2]=(c[l>>2]|0)-(c[k>>2]|0);if((c[e>>2]|0)>>>0>=(
c[j>>2]|0)>>>0){n=c[g>>2]|0;i=h;return n|0}c[f>>2]=(c[f>>2]|0)+(c[e>
x3e;2]<<1);c[g>>2]=(((d[c[f>>2]>>0]|0)&65535)<<8|((d[(c[f>>2]|0
)+1>>0]|0)&65535)<<0)&65535;n=c[g>>2]|0;i=h;return n|0}function wj(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;o=i;i=i+48|0;q=o+36|0;f=o+32|0;p=o+28|0;m=o+24|0;g=o+20|0;j=o+16|0;l=o+12|0;e=o+
8|0;h=o+4|0;k=o;c[q>>2]=a;c[f>>2]=b;c[p>>2]=c[(c[q>>2]|0)+16>>2];c[m>>
;2]=0;c[g>>2]=(c[c[f>>2]>>2]|0)+1;c[j>>2]=0;c[l>>2]=(c[p>>2]|0)+6;c[
l>>2]=(c[l>>2]|0)+2;c[e>>2]=(((d[(c[l>>2]|0)+-2>>0]|0)&65535)<<
8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[l>>2]=(c[l>>2]|0)+2
;c[h>>2]=(((d[(c[l>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>
x3e;0]|0)&65535)<<0)&65535;if((c[g>>2]|0)>>>0>=65536){p=c[m>>2]|0;q=
c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}if((c[g>>2]|0)>>>0<(c
[e>>2]|0)>>>0)c[g>>2]=c[e>>2];c[k>>2]=(c[g>>2]|0)-(c[e>>
;2]|0);c[l>>2]=(c[l>>2]|0)+(c[k>>2]<<1);while(1){if((c[k>>2]|0)>>>
;0>=(c[h>>2]|0)>>>0){n=9;break}c[l>>2]=(c[l>>2]|0)+2;c[j>>2]=(((d[(c
[l>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<
;<0)&65535;a=c[g>>2]|0;if(c[j>>2]|0)break;c[g>>2]=a+1;c[k>>2]=(c[k>>
2]|0)+1}if((n|0)==9){p=c[m>>2]|0;q=c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}c[m>
;>2]=a;p=c[m>>2]|0;q=c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}function xj(a,b
){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;k=l+12|0;j=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[
f>>2]=b;if(((c[e>>2]|0)+10|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>
;>0)sc(c[f>>2]|0,8);c[k>>2]=(c[e>>2]|0)+2;c[k>>2]=(c[k>>2]|0)+2;c[j>
x3e;2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)
x26;65535)<<0)&65535;c[k>>2]=(c[e>>2]|0)+8;c[k>>2]=(c[k>>2]|0)+2;c[g>
;>2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0
)&65535)<<0)&65535;if(!(((c[e>>2]|0)+(c[j>>2]|0)|0)>>>0<=(c[(c[f>
;>2]|0)+4>>2]|0)>>>0?(c[j>>2]|0)>>>0>=(10+(c[g>>2]<
x3c;1)|0)>>>0:0))sc(c[f>>2]|0,8);if(!((c[g>>2]|0)>>>0>0?(c[(c[f>>
;2]|0)+8>>2]|0)>>>0>=1:0)){i=l;return 0}do{c[k>>2]=(c[k>>2]|0)+2;c[h>>
;2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)&
;65535)<<0)&65535;if((c[h>>2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)
x3e;>>0)sc(c[f>>2]|0,16);c[g>>2]=(c[g>>2]|0)+-1}while((c[g>>2]|0)>>
x3e;0>0);i=l;return 0}function yj(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;f=e+4|0;g=e;c[h>>2]=a
;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=6;
c[c[f>>2]>>2]=(((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1
x3e;>0]|0)&65535)<<0)&65535;i=e;return 0}function zj(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;m=i;i=i+48|0;o=m+32|0;h=m+28|0;n=m+24|0;j=m+20|0;g=m+16|0;f=m+12|0;k=m+8|0;e=m+4|0;l=m;c[o>>2]=a;c[h>
x3e;2]=b;c[n>>2]=c[(c[o>>2]|0)+16>>2];c[j>>2]=0;c[g>>2]=(c[n>>2]|0)+
8204;c[g>>2]=(c[g>>2]|0)+4;c[f>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(
c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>
;>2]|0)+-4+3>>0]|0)<<0;while(1){if((c[f>>2]|0)>>>0<=0){b=7;break}c[g>
;>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>
;2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-
4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[e>>2]=(d[(c[g>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[l>
x3e;2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if((c[h
x3e;>2]|0)>>>0<(c[k>>2]|0)>>>0){b=7;break}if((c[h>>2]|0)>>
x3e;0<=(c[e>>2]|0)>>>0){b=5;break}c[f>>2]=(c[f>>2]|0)+-1}if((b|0)==5){c[j>
;>2]=(c[l>>2]|0)+(c[h>>2]|0)-(c[k>>2]|0);o=c[j>>2]|0;i=m;return o|0}else if((b|0)==
7){o=c[j>>2]|0;i=m;return o|0}return 0}function Aj(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;p=i;i=i+48|0;r=p+40|0;e=p+36|0;l=p+32|0;f=p+28|0;h=p+24|0;q=p+20|0;k=p+16|0;j=p+12|0;m=p+8|0;g=p+4|0;n=p;c[r>>2]=
a;c[e>>2]=b;c[l>>2]=0;c[f>>2]=(c[c[e>>2]>>2]|0)+1;c[h>>2]=0;c[q>
;>2]=c[(c[r>>2]|0)+16>>2];c[k>>2]=(c[q>>2]|0)+8204;c[k>>2]=(c[k>>
;2]|0)+4;c[j>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<
;<0;c[k>>2]=(c[q>>2]|0)+8208;while(1){if((c[j>>2]|0)>>>0<=0){o=9;break}c[
k>>2]=(c[k>>2]|0)+4;c[m>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>
;>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>
2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>2]|0)+4;c[g>>2]=(d[(c[k>>2]|0)+-4
>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>
x3e;0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>2]|0)+4;c[n
>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<
x3c;16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;if
((c[f>>2]|0)>>>0<(c[m>>2]|0)>>>0)c[f>>2]=c[m>>2];if((
c[f>>2]|0)>>>0<=(c[g>>2]|0)>>>0?(c[h>>2]=(c[f>>2]|0)-(
c[m>>2]|0)+(c[n>>2]|0),c[h>>2]|0):0)break;c[j>>2]=(c[j>>2]|0)+-1}if((o|0)==9){
q=c[l>>2]|0;r=c[e>>2]|0;c[r>>2]=q;r=c[h>>2]|0;i=p;return r|0}c[l>>2]=c[f>
x3e;2];q=c[l>>2]|0;r=c[e>>2]|0;c[r>>2]=q;r=c[h>>2]|0;i=p;return r|0}function Bj(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;t=i;i=i+64|0;e=t+52|0;f=t+48|0;q=t+44|0;k=t+40|0;m=t+36
|0;p=t+32|0;o=t+28|0;r=t+24|0;h=t+20|0;s=t+16|0;g=t+12|0;l=t+8|0;j=t+4|0;n=t;c[e>>2]=a;c[f>>2]=b;c[q>
x3e;2]=(c[e>>2]|0)+4;if(((c[e>>2]|0)+16+8192|0)>>>0>(c[(c[f>>2]|0)+4>>
;2]|0)>>>0)sc(c[f>>2]|0,8);c[q>>2]=(c[q>>2]|0)+4;c[m>>2]=(d[(c[q>>
;2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-
4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;if((c[m>>2]|0)>>
;>0<8208?1:(c[m>>2]|0)>>>0>((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>
2]|0)|0)>>>0)sc(c[f>>2]|0,8);c[k>>2]=(c[e>>2]|0)+12;c[q>>2]=(c[k>>
;2]|0)+8192;c[q>>2]=(c[q>>2]|0)+4;c[p>>2]=(d[(c[q>>2]|0)+-4>>0]|0)<<
24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(
c[q>>2]|0)+-4+3>>0]|0)<<0;if(((c[q>>2]|0)+((c[p>>2]|0)*12|0)|0)>>>
;0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[l>>2]=0;c[o>
x3e;2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[q>>
;2]=(c[q>>2]|0)+4;c[r>>2]=(d[(c[q>>2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3
x3e;>0]|0)<<0;c[q>>2]=(c[q>>2]|0)+4;c[h>>2]=(d[(c[q>>2]|0)+-4>>
0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;c[q>>2]=(c[q>>2]|0)+4;c[s>>
;2]=(d[(c[q>>2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(
c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;if((c[r>
;>2]|0)>>>0>(c[h>>2]|0)>>>0)sc(c[f>>2]|0,8);if((c[o>>2]|0)
x3e;>>0>0?(c[r>>2]|0)>>>0<=(c[l>>2]|0)>>>0:0)sc(c[f>
x3e;2]|0,8);a:do if((c[(c[f>>2]|0)+8>>2]|0)>>>0>=1){if(((c[s>>2]|0)+(c[h>
x3e;2]|0)-(c[r>>2]|0)|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)>>>0)sc(
c[f>>2]|0,16);c[g>>2]=(c[h>>2]|0)-(c[r>>2]|0)+1;if(c[r>>2]&-65536|0)while
(1){if((c[g>>2]|0)>>>0<=0)break a;c[j>>2]=(c[r>>2]|0)>>>16;c[n
x3e;>2]=c[r>>2]&65535;if(!((d[(c[k>>2]|0)+((c[j>>2]|0)>>>3)>>0]|
0)&128>>(c[j>>2]&7)))sc(c[f>>2]|0,8);if(!((d[(c[k>>2]|0)+((c[n>>2]|0
)>>>3)>>0]|0)&128>>(c[n>>2]&7)))sc(c[f>>2]|0,8);c[g>>
2]=(c[g>>2]|0)+-1;c[r>>2]=(c[r>>2]|0)+1}else{if(c[h>>2]&-65536|0)sc(c[f>>
2]|0,8);while(1){if((c[g>>2]|0)>>>0<=0)break a;c[n>>2]=c[r>>2]&65535;if((
d[(c[k>>2]|0)+((c[n>>2]|0)>>>3)>>0]|0)&128>>(c[n>>2]&
7)|0)sc(c[f>>2]|0,8);c[g>>2]=(c[g>>2]|0)+-1;c[r>>2]=(c[r>>2]|0)+1}}}while(0);c
[l>>2]=c[h>>2];c[o>>2]=(c[o>>2]|0)+1}i=t;return 0}function Cj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16
>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=8;c[c[f>>2]>>2]=(d[c[g>>2]>>
0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>>0]|0)<
x3c;8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function Dj(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;h=i;i=i+32|0;n=h+28|0;l=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;k=h+8|0;j=h+4|0;e=h;c[n>>2]=a;c[l>>
;2]=b;c[m>>2]=c[(c[n>>2]|0)+16>>2];c[g>>2]=0;c[f>>2]=(c[m>>2]|0)+12;
c[f>>2]=(c[f>>2]|0)+4;c[k>>2]=(d[(c[f>>2]|0)+-4>>0]|0)<<24|(d[(c[f
x3e;>2]|0)+-4+1>>0]|0)<<16|(d[(c[f>>2]|0)+-4+2>>0]|0)<<8|(d[(c[f>>
;2]|0)+-4+3>>0]|0)<<0;c[f>>2]=(c[f>>2]|0)+4;c[j>>2]=(d[(c[f>>2]|0)+-
4>>0]|0)<<24|(d[(c[f>>2]|0)+-4+1>>0]|0)<<16|(d[(c[f>>2]|0)+-4+2>
;>0]|0)<<8|(d[(c[f>>2]|0)+-4+3>>0]|0)<<0;c[e>>2]=(c[l>>2]|0)-(c
[k>>2]|0);if((c[e>>2]|0)>>>0>=(c[j>>2]|0)>>>0){n=c[g>>
;2]|0;i=h;return n|0}c[f>>2]=(c[f>>2]|0)+(c[e>>2]<<1);c[g>>2]=(((d[c[f>
x3e;2]>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+1>>0]|0)&65535)<<0)&65535
;n=c[g>>2]|0;i=h;return n|0}function Ej(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;m=i;i=i+48|0;o=m+
32|0;j=m+28|0;n=m+24|0;k=m+20|0;l=m+16|0;g=m+12|0;h=m+8|0;e=m+4|0;f=m;c[o>>2]=a;c[j>>2]=b;c[n>>2]=
c[(c[o>>2]|0)+16>>2];c[k>>2]=(c[c[j>>2]>>2]|0)+1;c[l>>2]=0;c[g>
x3e;2]=(c[n>>2]|0)+12;c[g>>2]=(c[g>>2]|0)+4;c[h>>2]=(d[(c[g>>2]|0)+-4>>
;0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[e>>
;2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(
c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if((c[k>
;>2]|0)>>>0<(c[h>>2]|0)>>>0)c[k>>2]=c[h>>2];c[f>>
;2]=(c[k>>2]|0)-(c[h>>2]|0);c[g>>2]=(c[g>>2]|0)+(c[f>>2]<<1);while(1
){if((c[f>>2]|0)>>>0>=(c[e>>2]|0)>>>0){a=7;break}c[g>>2]=(c[g
x3e;>2]|0)+2;c[l>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[g>>
2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if(c[l>>2]|0){a=7;break}c[k>>2]=(c[k>
x3e;2]|0)+1;c[f>>2]=(c[f>>2]|0)+1}if((a|0)==7){c[c[j>>2]>>2]=c[k>>2];i=m;return
c[l>>2]|0}return 0}function Fj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;k=l+12
|0;j=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[f>>2]=b;c[k>>2]=(c[e>>2]|0)+4;if(((c[e>>2]|
0)+20|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[k>
;>2]=(c[k>>2]|0)+4;c[j>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>
;2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-
4+3>>0]|0)<<0;c[k>>2]=(c[e>>2]|0)+16;c[k>>2]=(c[k>>2]|0)+4;c[g>
x3e;2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;if(!((c[j
>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>2]|0)|0)>>>
;0?(c[j>>2]|0)>>>0>=(20+(c[g>>2]<<1)|0)>>>0:0))sc(c[f>>
;2]|0,8);if(!((c[g>>2]|0)>>>0>0?(c[(c[f>>2]|0)+8>>2]|0)>>>0>
;=1:0)){i=l;return 0}do{c[k>>2]=(c[k>>2]|0)+2;c[h>>2]=(((d[(c[k>>2]|0)+-2>>0]|
0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c[h>
x3e;2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)>>>0)sc(c[f>>2]|0,16);c
[g>>2]=(c[g>>2]|0)+-1}while((c[g>>2]|0)>>>0>0);i=l;return 0}function Gj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[
h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=10;c[c[f>>2]>>2]=(d[c[g>
;>2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>
;>0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function Hj(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;c[(c[g>>2]|0)+16>>2]=c[h>
x3e;2];c[h>>2]=(c[h>>2]|0)+12;c[(c[g>>2]|0)+40>>2]=(d[c[h>>2]>>0]|0)
x3c;<24|(d[(c[h>>2]|0)+1>>0]|0)<<16|(d[(c[h>>2]|0)+2>>0]|0)<<8|(
d[(c[h>>2]|0)+3>>0]|0)<<0;a[(c[g>>2]|0)+24>>0]=0;i=f;return 0}function Ij(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=Jj(c[f>>2]|0,e,0)|0;i=d
;return a|0}function Jj(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;x=i;i=i
+64|0;g=x+52|0;h=x+48|0;j=x+44|0;k=x+56|0;o=x+40|0;t=x+36|0;s=x+32|0;l=x+28|0;u=x+24|0;n=x+20|0;v=x+16|0;p=x+12|0;r=x+8|0;q=x+4|
0;m=x;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;c[o>>2]=0;c[t>>2]=(c[(c[h>>2]|0)+
16>>2]|0)+12;c[s>>2]=d[c[t>>2]>>0]<<24|d[(c[t>>2]|0)+1>>0]
x3c;<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t>>2]|0)+3>>0]<<0;c[l>
x3e;2]=c[c[j>>2]>>2];if(!(c[s>>2]|0)){c[g>>2]=0;w=c[g>>2]|0;i=x;return w|0}c[q
>>2]=c[s>>2];c[n>>2]=-1;if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1;c[r>
x3e;2]=0;c[p>>2]=c[s>>2];while(1){if((c[r>>2]|0)>>>0>=(c[p>>2]|0)>
;>>0)break;c[q>>2]=((c[r>>2]|0)+(c[p>>2]|0)|0)>>>1;c[t>>2]=(c[(
c[h>>2]|0)+16>>2]|0)+16+((c[q>>2]|0)*12|0);c[t>>2]=(c[t>>2]|0)+4;c[u>>
;2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>>2]|0)+-4+1>>0]<<16|d[(c[t>
x3e;2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4+3>>0]<<0;c[t>>2]=(c[t>
x3e;2]|0)+4;c[n>>2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>>2]|0)+-4+1>>0]
x3c;<16|d[(c[t>>2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4+3>>0]<<0;if((
c[l>>2]|0)>>>0<(c[u>>2]|0)>>>0){c[p>>2]=c[q>>2];continue
}if((c[l>>2]|0)>>>0<=(c[n>>2]|0)>>>0){w=11;break}c[r>>2]=(c[q
x3e;>2]|0)+1}if((w|0)==11){c[v>>2]=d[c[t>>2]>>0]<<24|d[(c[t>>2]|0)+1>
;>0]<<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t>>2]|0)+3>>0]<<
0;c[o>>2]=(c[v>>2]|0)+(c[l>>2]|0)-(c[u>>2]|0)}if(a[k>>0]|0){c[m>>2]=
c[h>>2];if((c[l>>2]|0)>>>0>(c[n>>2]|0)>>>0?(c[q>>2]=(
c[q>>2]|0)+1,(c[q>>2]|0)==(c[s>>2]|0)):0){c[g>>2]=0;w=c[g>>2]|0;i=x;return w|0
}a[(c[m>>2]|0)+24>>0]=1;c[(c[m>>2]|0)+28>>2]=c[l>>2];c[(c[m>>2]|0)+36
>>2]=c[q>>2];if(!(c[o>>2]|0)){Kj(c[m>>2]|0);if(a[(c[m>>2]|0)+24>>0]|
0)c[o>>2]=c[(c[m>>2]|0)+32>>2]}else c[(c[m>>2]|0)+32>>2]=c[o>>2];if(
c[o>>2]|0)c[c[j>>2]>>2]=c[(c[m>>2]|0)+28>>2]}c[g>>2]=c[o>>
2];w=c[g>>2]|0;i=x;return w|0}function Kj(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;e=n+28|0;k=n+24
|0;l=n+20|0;g=n+16|0;m=n+12|0;f=n+8|0;j=n+4|0;h=n;c[e>>2]=b;a:do if((c[(c[e>>2]|0)+28>>2]|0)>
x3e;>0<4294967295){c[f>>2]=(c[(c[e>>2]|0)+28>>2]|0)+1;c[j>>2]=c[(c[e>>
;2]|0)+36>>2];c[j>>2]=c[(c[e>>2]|0)+36>>2];b:while(1){if((c[j>>2]|0)>>
;>0>=(c[(c[e>>2]|0)+40>>2]|0)>>>0)break a;c[k>>2]=(c[(c[e>>2]|0
)+16>>2]|0)+16+((c[j>>2]|0)*12|0);c[k>>2]=(c[k>>2]|0)+4;c[l>>2]=(d[(c[k>
x3e;2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0
)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>
;2]|0)+4;c[g>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<
;<0;c[m>>2]=(d[c[k>>2]>>0]|0)<<24|(d[(c[k>>2]|0)+1>>0]|0)<
x3c;16|(d[(c[k>>2]|0)+2>>0]|0)<<8|(d[(c[k>>2]|0)+3>>0]|0)<<0;if((c[f
>>2]|0)>>>0<(c[l>>2]|0)>>>0)c[f>>2]=c[l>>2];while(1){
if((c[f>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[h>>2]=(c[m>>
;2]|0)+(c[f>>2]|0)-(c[l>>2]|0);b=c[f>>2]|0;if(c[h>>2]|0)break b;c[f>>2]=b+1}c[
j>>2]=(c[j>>2]|0)+1}c[(c[e>>2]|0)+28>>2]=b;c[(c[e>>2]|0)+32>>2]=c[h
x3e;>2];c[(c[e>>2]|0)+36>>2]=c[j>>2];i=n;return}while(0);a[(c[e>>2]|0)+24>>
;0]=0;i=n;return}function Lj(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m
;c[g>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];if((c[(c[j>>2]|0)+28>>2]|0)>
;>>0>=4294967295){c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}do if(d[(c[j>>2]|0)+24>
x3e;0]|0?(c[(c[j>>2]|0)+28>>2]|0)==(c[c[h>>2]>>2]|0):0){Kj(c[j>>2]|0);if(!(a[(
c[j>>2]|0)+24>>0]|0)){c[k>>2]=0;break}c[k>>2]=c[(c[j>>2]|0)+32>>2];if
(c[k>>2]|0)c[c[h>>2]>>2]=c[(c[j>>2]|0)+28>>2]}else l=9;while(0);if((l|0)==9)c[
k>>2]=Jj(c[g>>2]|0,c[h>>2]|0,1)|0;c[f>>2]=c[k>>2];l=c[f>>2]|0;i=m;return
l|0}function Mj(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0;m=p+28|0;j=p+24
|0;l=p+20|0;k=p+16|0;n=p+12|0;g=p+8|0;o=p+4|0;h=p;c[e>>2]=a;c[f>>2]=b;if(((c[e>>2]|0)+16|0)>
x3e;>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[m>>2]=(c[e
>>2]|0)+4;c[m>>2]=(c[m>>2]|0)+4;c[j>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<
;<24|(d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<
;8|(d[(c[m>>2]|0)+-4+3>>0]|0)<<0;c[m>>2]=(c[e>>2]|0)+12;c[m>>2]=(c[m
>>2]|0)+4;c[l>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1
x3e;>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>
;0]|0)<<0;if(!((c[j>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>
x3e;2]|0)|0)>>>0?(c[j>>2]|0)>>>0>=(16+((c[l>>2]|0)*12|0)|0)>>
x3e;0:0))sc(c[f>>2]|0,8);c[h>>2]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0
x3e;=(c[l>>2]|0)>>>0)break;c[m>>2]=(c[m>>2]|0)+4;c[n>>2]=(d[(c[m>>
;2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-
4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>0]|0)<<0;c[m>>2]=(c[m>>
2]|0)+4;c[g>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1>>0]|
0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>0]|0)<
;<0;c[m>>2]=(c[m>>2]|0)+4;c[o>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(
d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m
x3e;>2]|0)+-4+3>>0]|0)<<0;if((c[n>>2]|0)>>>0>(c[g>>2]|0)>
x3e;>0)sc(c[f>>2]|0,8);if((c[k>>2]|0)>>>0>0?(c[n>>2]|0)>>>
0<=(c[h>>2]|0)>>>0:0)sc(c[f>>2]|0,8);if((c[(c[f>>2]|0)+8>>2]|0)>
;>>0>=1?((c[o>>2]|0)+(c[g>>2]|0)-(c[n>>2]|0)|0)>>>0>=(c[(c[f>
;>2]|0)+172>>2]|0)>>>0:0)sc(c[f>>2]|0,16);c[h>>2]=c[g>>2];c[k>
x3e;2]=(c[k>>2]|0)+1}i=p;return 0}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;h=e+8|0;f=e+4|0;g=e;c[
h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4
>>2]=12;c[c[f>>2]>>2]=(d[c[g>>2]>>0]|0)<<24|(d[(c[g>>2]|0)+
1>>0]|0)<<16|(d[(c[g>>2]|0)+2>>0]|0)<<8|(d[(c[g>>2]|0)+3>>
0]|0)<<0;i=e;return 0}function Oj(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;c[(c[g>>2]|0)+16>>2]=c[h>>2];c[h>>2]=(c[h>>2]|0)+12;c[(c[g>
x3e;2]|0)+40>>2]=(d[c[h>>2]>>0]|0)<<24|(d[(c[h>>2]|0)+1>>0]|0)<
x3c;16|(d[(c[h>>2]|0)+2>>0]|0)<<8|(d[(c[h>>2]|0)+3>>0]|0)<<0;a[(c[g
x3e;>2]|0)+24>>0]=0;i=f;return 0}function Pj(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>
x3e;2]=a;c[e>>2]=b;a=Qj(c[f>>2]|0,e,0)|0;i=d;return a|0}function Qj(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;w=i;i=i+64|0;g=w+48|0;h=w+44|0;j=w+40|0;k=w+52|0;o=w+36|0;t=w+32|0;s=w+28|0
;l=w+24|0;u=w+20|0;n=w+16|0;p=w+12|0;r=w+8|0;q=w+4|0;m=w;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;c[o>
x3e;2]=0;c[t>>2]=(c[(c[h>>2]|0)+16>>2]|0)+12;c[s>>2]=d[c[t>>2]>>0]
x3c;<24|d[(c[t>>2]|0)+1>>0]<<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t
x3e;>2]|0)+3>>0]<<0;c[l>>2]=c[c[j>>2]>>2];if(!(c[s>>2]|0)){c[g
x3e;>2]=0;v=c[g>>2]|0;i=w;return v|0}c[q>>2]=c[s>>2];c[n>>2]=-1;if(a[k>>0
]|0)c[l>>2]=(c[l>>2]|0)+1;c[r>>2]=0;c[p>>2]=c[s>>2];while(1){if((c[r>>
;2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[q>>2]=((c[r>>2]|0)+(c[p>
;>2]|0)|0)>>>1;c[t>>2]=(c[(c[h>>2]|0)+16>>2]|0)+16+((c[q>>2]|0)*12|0
);c[t>>2]=(c[t>>2]|0)+4;c[u>>2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>
;>2]|0)+-4+1>>0]<<16|d[(c[t>>2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4
+3>>0]<<0;c[t>>2]=(c[t>>2]|0)+4;c[n>>2]=d[(c[t>>2]|0)+-4>>
0]<<24|d[(c[t>>2]|0)+-4+1>>0]<<16|d[(c[t>>2]|0)+-4+2>>0]<<
8|d[(c[t>>2]|0)+-4+3>>0]<<0;if((c[l>>2]|0)>>>0<(c[u>>2]|0)
x3e;>>0){c[p>>2]=c[q>>2];continue}if((c[l>>2]|0)>>>0<=(c[n>>
;2]|0)>>>0){v=11;break}c[r>>2]=(c[q>>2]|0)+1}if((v|0)==11)c[o>>2]=d[c[t>>
2]>>0]<<24|d[(c[t>>2]|0)+1>>0]<<16|d[(c[t>>2]|0)+2>>0]<
;<8|d[(c[t>>2]|0)+3>>0]<<0;if(a[k>>0]|0){c[m>>2]=c[h>>2];if((c[
l>>2]|0)>>>0>(c[n>>2]|0)>>>0?(c[q>>2]=(c[q>>2]|0)+1,(
c[q>>2]|0)==(c[s>>2]|0)):0){c[g>>2]=0;v=c[g>>2]|0;i=w;return v|0}a[(c[m>>2]|0)+
24>>0]=1;c[(c[m>>2]|0)+28>>2]=c[l>>2];c[(c[m>>2]|0)+36>>2]=c[q>
x3e;2];if(!(c[o>>2]|0)){Rj(c[m>>2]|0);if(a[(c[m>>2]|0)+24>>0]|0)c[o>>2]=c[(c[m
>>2]|0)+32>>2]}else c[(c[m>>2]|0)+32>>2]=c[o>>2];if(c[o>>2]|0)c[c[j
x3e;>2]>>2]=c[(c[m>>2]|0)+28>>2]}c[g>>2]=c[o>>2];v=c[g>>2]|0;i=
w;return v|0}function Rj(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;e=n+28|0;l=n+24|0;m=n+20|0;g=n+16|0;j=n+12
|0;f=n+8|0;k=n+4|0;h=n;c[e>>2]=b;a:do if((c[(c[e>>2]|0)+28>>2]|0)>>>0<4294967295
){c[f>>2]=(c[(c[e>>2]|0)+28>>2]|0)+1;c[k>>2]=c[(c[e>>2]|0)+36>>2];c[
k>>2]=c[(c[e>>2]|0)+36>>2];while(1){if((c[k>>2]|0)>>>0>=(c[(c[e>
;>2]|0)+40>>2]|0)>>>0)break a;c[l>>2]=(c[(c[e>>2]|0)+16>>2]|0)+16+((
c[k>>2]|0)*12|0);c[l>>2]=(c[l>>2]|0)+4;c[m>>2]=(d[(c[l>>2]|0)+-4>>0]|
0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)<
;<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;c[l>>2]=(c[l>>2]|0)+4;c[g>>2]=(
d[(c[l>>2]|0)+-4>>0]|0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l
x3e;>2]|0)+-4+2>>0]|0)<<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;c[j>>2]=(
d[c[l>>2]>>0]|0)<<24|(d[(c[l>>2]|0)+1>>0]|0)<<16|(d[(c[l>>
2]|0)+2>>0]|0)<<8|(d[(c[l>>2]|0)+3>>0]|0)<<0;if((c[f>>2]|0)>>
;>0<(c[m>>2]|0)>>>0)c[f>>2]=c[m>>2];if((c[f>>2]|0)>>
x3e;0<=(c[g>>2]|0)>>>0?(c[h>>2]=c[j>>2],c[h>>2]|0):0)break;c[k>
x3e;2]=(c[k>>2]|0)+1}c[(c[e>>2]|0)+28>>2]=c[f>>2];c[(c[e>>2]|0)+32>>
2]=c[h>>2];c[(c[e>>2]|0)+36>>2]=c[k>>2];i=n;return}while(0);a[(c[e>>2]|0)+24
x3e;>0]=0;i=n;return}function Sj(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;j=
m+4|0;k=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];if((c[(c[j>>2]|0)+28>>
2]|0)>>>0>=4294967295){c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}do if(d[(c[j>>2]|0
)+24>>0]|0?(c[(c[j>>2]|0)+28>>2]|0)==(c[c[h>>2]>>2]|0):0){Rj(c[j>>2]|
0);if(!(a[(c[j>>2]|0)+24>>0]|0)){c[k>>2]=0;break}c[k>>2]=c[(c[j>>2]|0)+32>
;>2];if(c[k>>2]|0)c[c[h>>2]>>2]=c[(c[j>>2]|0)+28>>2]}else l=9;while(0);if
((l|0)==9)c[k>>2]=Qj(c[g>>2]|0,c[h>>2]|0,1)|0;c[f>>2]=c[k>>2];l=c[f>>
;2]|0;i=m;return l|0}function Tj(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0
;n=p+28|0;k=p+24|0;m=p+20|0;l=p+16|0;o=p+12|0;g=p+8|0;h=p+4|0;j=p;c[e>>2]=a;c[f>>2]=b;if(((c[e>>2]|
0)+16|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[n>
;>2]=(c[e>>2]|0)+4;c[n>>2]=(c[n>>2]|0)+4;c[k>>2]=(d[(c[n>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;c[n>>2]=(c[e>>2]|0)+12;c[n>
x3e;2]=(c[n>>2]|0)+4;c[m>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4
+3>>0]|0)<<0;if(!((c[k>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0
)-(c[e>>2]|0)|0)>>>0?(c[k>>2]|0)>>>0>=(16+((c[m>>2]|0)*12|0)|0)
x3e;>>0:0))sc(c[f>>2]|0,8);c[j>>2]=0;c[l>>2]=0;while(1){if((c[l>>2]|0)>
x3e;>0>=(c[m>>2]|0)>>>0)break;c[n>>2]=(c[n>>2]|0)+4;c[o>>2]=(d[(
c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>
;>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;c[n>>2]=(c
[n>>2]|0)+4;c[g>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1
>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>
x3e;0]|0)<<0;c[n>>2]=(c[n>>2]|0)+4;c[h>>2]=(d[(c[n>>2]|0)+-4>>0]|0)
x3c;<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<
x3c;8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;if((c[o>>2]|0)>>>0>(c[g>>
;2]|0)>>>0)sc(c[f>>2]|0,8);if((c[l>>2]|0)>>>0>0?(c[o>>2]|0)>
;>>0<=(c[j>>2]|0)>>>0:0)sc(c[f>>2]|0,8);if((c[(c[f>>2]|0)+8>>
;2]|0)>>>0>=1?(c[h>>2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)
x3e;>>0:0)sc(c[f>>2]|0,16);c[j>>2]=c[g>>2];c[l>>2]=(c[l>>2]|0)+1}i=p
;return 0}function Uj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2
]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=13;c[c[f>>
;2]>>2]=(d[c[g>>2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(
d[(c[g>>2]|0)+2>>0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function
Vj(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;c[(c[f>>2]|0)+16
>>2]=c[g>>2];c[g>>2]=(c[g>>2]|0)+6;c[(c[f>>2]|0)+24>>2]=(d[c[g>
x3e;2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>
x3e;0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;c[(c[f>>2]|0)+28>>2]=0;c[(c[
f>>2]|0)+32>>2]=0;i=e;return 0}function Wj(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>
2]=a;c[d>>2]=c[(c[b>>2]|0)+36>>2];c[(c[b>>2]|0)+28>>2]=0;if(!(c[d>>2
]|0)){i=e;return}if(!(c[(c[b>>2]|0)+32>>2]|0)){i=e;return}Fb(c[d>>2]|0,c[(c[b>>2]|0)+32
x3e;>2]|0);c[(c[b>>2]|0)+32>>2]=0;i=e;return}function Xj(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[f>>2]=c[f>>2];c[e>>2]=c[e>>2];i=d;
return 0}function Yj(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[f>
x3e;2]=c[f>>2];c[c[e>>2]>>2]=0;i=d;return 0}function Zj(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;o=i;i=i+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;p=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a
;c[j>>2]=b;c[k>>2]=e;c[p>>2]=f;c[n>>2]=_j((c[(c[h>>2]|0)+16>>2]|0)+6
|0,c[p>>2]|0)|0;if(!(c[n>>2]|0)){c[g>>2]=0;p=c[g>>2]|0;i=o;return p|0}c[n>>2]=(
c[n>>2]|0)+4;c[l>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+
1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>
x3e;0]|0)<<0;c[m>>2]=(d[c[n>>2]>>0]|0)<<24|(d[(c[n>>2]|0)+1>>
;0]|0)<<16|(d[(c[n>>2]|0)+2>>0]|0)<<8|(d[(c[n>>2]|0)+3>>0]|0)<
x3c;0;if(c[l>>2]|0?$j((c[(c[h>>2]|0)+16>>2]|0)+(c[l>>2]|0)|0,c[k>>2]|0)|0:0){c
[g>>2]=Ya[c[(c[(c[j>>2]|0)+12>>2]|0)+12>>2]&127](c[j>>2]|0,c[k>>
;2]|0)|0;p=c[g>>2]|0;i=o;return p|0}if(c[m>>2]|0){c[g>>2]=ak((c[(c[h>>2]|0)+16>>
;2]|0)+(c[m>>2]|0)|0,c[k>>2]|0)|0;p=c[g>>2]|0;i=o;return p|0}else{c[g>>2]=0;p=c[g>
x3e;2]|0;i=o;return p|0}return 0}function _j(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;n=i;i=i+48|0;l=n+32|0;
e=n+28|0;f=n+24|0;o=n+20|0;g=n+16|0;j=n+12|0;h=n+8|0;m=n+4|0;k=n;c[e>>2]=a;c[f>>2]=b;c[o>>2]=(d[c[
e>>2]>>0]|0)<<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>>2]|0
)+2>>0]|0)<<8|(d[(c[e>>2]|0)+3>>0]|0)<<0;c[j>>2]=0;c[g>>2]=
c[o>>2];c[e>>2]=(c[e>>2]|0)+4;while(1){if((c[j>>2]|0)>>>0>=(c[g>
;>2]|0)>>>0){e=8;break}c[h>>2]=((c[j>>2]|0)+(c[g>>2]|0)|0)>>>1;
c[m>>2]=(c[e>>2]|0)+((c[h>>2]|0)*11|0);c[m>>2]=(c[m>>2]|0)+3;c[k>>2]=(
d[(c[m>>2]|0)+-3>>0]|0)<<16|(d[(c[m>>2]|0)+-3+1>>0]|0)<<8|(d[(c[m>
;>2]|0)+-3+2>>0]|0)<<0;if((c[f>>2]|0)>>>0<(c[k>>2]|0)>>
;>0){c[g>>2]=c[h>>2];continue}if((c[f>>2]|0)>>>0<=(c[k>>2]|0)
x3e;>>0){e=7;break}c[j>>2]=(c[h>>2]|0)+1}if((e|0)==7){c[l>>2]=c[m>>2];o=c[l>
;>2]|0;i=n;return o|0}else if((e|0)==8){c[l>>2]=0;o=c[l>>2]|0;i=n;return o|0}return 0}function $j(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;o=i;i=i+48|0;n=o+36|0;e=o+32|0;f=o+28|0;p=o+24|0;h=o+20|0;k=o+16|0;j
=o+12|0;l=o+8|0;m=o+4|0;g=o;c[e>>2]=a;c[f>>2]=b;c[p>>2]=(d[c[e>>2]>>0]|0)<
;<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>>2]|0)+2>>0]|0)<<8|(d[(
c[e>>2]|0)+3>>0]|0)<<0;c[k>>2]=0;c[h>>2]=c[p>>2];c[e>>2]=(
c[e>>2]|0)+4;while(1){if((c[k>>2]|0)>>>0>=(c[h>>2]|0)>>>0){e=8;
break}c[j>>2]=((c[k>>2]|0)+(c[h>>2]|0)|0)>>>1;c[l>>2]=(c[e>>2]|
0)+(c[j>>2]<<2);c[l>>2]=(c[l>>2]|0)+3;c[m>>2]=(d[(c[l>>2]|0)+-3>
;>0]|0)<<16|(d[(c[l>>2]|0)+-3+1>>0]|0)<<8|(d[(c[l>>2]|0)+-3+2>>
0]|0)<<0;p=c[l>>2]|0;c[l>>2]=p+1;c[g>>2]=d[p>>0];if((c[f>>2]|0)>
;>>0<(c[m>>2]|0)>>>0){c[h>>2]=c[j>>2];continue}if((c[f>>2]|
0)>>>0<=((c[m>>2]|0)+(c[g>>2]|0)|0)>>>0){e=7;break}c[k>>2]=(c[j
>>2]|0)+1}if((e|0)==7){c[n>>2]=1;p=c[n>>2]|0;i=o;return p|0}else if((e|0)==8){c[n>>2]=0;
p=c[n>>2]|0;i=o;return p|0}return 0}function ak(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;n=i;i=i+48
|0;l=n+32|0;e=n+28|0;f=n+24|0;o=n+20|0;g=n+16|0;j=n+12|0;h=n+8|0;m=n+4|0;k=n;c[e>>2]=a;c[f>>2]=b;c[o>
x3e;2]=(d[c[e>>2]>>0]|0)<<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>
;>2]|0)+2>>0]|0)<<8|(d[(c[e>>2]|0)+3>>0]|0)<<0;c[j>>2]=0;c[g>
;>2]=c[o>>2];c[e>>2]=(c[e>>2]|0)+4;while(1){if((c[j>>2]|0)>>>0>=(
c[g>>2]|0)>>>0){e=8;break}c[h>>2]=((c[j>>2]|0)+(c[g>>2]|0)|0)>>
x3e;1;c[m>>2]=(c[e>>2]|0)+((c[h>>2]|0)*5|0);c[m>>2]=(c[m>>2]|0)+3;c[k>>
;2]=(d[(c[m>>2]|0)+-3>>0]|0)<<16|(d[(c[m>>2]|0)+-3+1>>0]|0)<<8|(d[(c
[m>>2]|0)+-3+2>>0]|0)<<0;if((c[f>>2]|0)>>>0<(c[k>>2]|0)>
;>>0){c[g>>2]=c[h>>2];continue}if((c[f>>2]|0)>>>0<=(c[k>>2
]|0)>>>0){e=7;break}c[j>>2]=(c[h>>2]|0)+1}if((e|0)==7){c[l>>2]=(((d[c[m>>
2]>>0]|0)&65535)<<8|((d[(c[m>>2]|0)+1>>0]|0)&65535)<<0)&65535;o
=c[l>>2]|0;i=n;return o|0}else if((e|0)==8){c[l>>2]=0;o=c[l>>2]|0;i=n;return o|0}return 0}function
bk(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;m=i;i=i+32|0;f=m+24|0;g=m+20|0;h=m+16|0;n=m+12|0;l=m+8|0;j=m+4|
0;k=m;c[g>>2]=a;c[h>>2]=b;c[n>>2]=e;c[l>>2]=_j((c[(c[g>>2]|0)+16>>2]|
0)+6|0,c[n>>2]|0)|0;if(!(c[l>>2]|0)){c[f>>2]=-1;n=c[f>>2]|0;i=m;return n|0}c[l>>
;2]=(c[l>>2]|0)+4;c[j>>2]=(d[(c[l>>2]|0)+-4>>0]|0)<<24|(d[(c[l>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)<<8|(d[(c[l>>2]|0)+-4+3
x3e;>0]|0)<<0;c[l>>2]=(c[l>>2]|0)+4;c[k>>2]=(d[(c[l>>2]|0)+-4>>
0]|0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;if(c[j>>2]|0?$j((c[(c[g>>2]|0)+16>
;>2]|0)+(c[j>>2]|0)|0,c[h>>2]|0)|0:0){c[f>>2]=1;n=c[f>>2]|0;i=m;return n|0}if(c[k
x3e;>2]|0?ak((c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]|0)|0,c[h>>2]|0)|0:0){c[f>>
2]=0;n=c[f>>2]|0;i=m;return n|0}c[f>>2]=-1;n=c[f>>2]|0;i=m;return n|0}function ck(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;l=i;i=i+32|0;e=l+28|0;n=l+24|0;m=l+20|0;f=l+16|0;g=l+12|0;j=l+8|0;k=l+4|0;h=l;c[n>
x3e;2]=a;c[m>>2]=b;c[f>>2]=c[n>>2];c[g>>2]=c[(c[f>>2]|0)+24>>2];c[j
x3e;>2]=(c[(c[n>>2]|0)+16>>2]|0)+10;if(dk(c[f>>2]|0,(c[g>>2]|0)+1|0,c[m>>
2]|0)|0){c[e>>2]=0;n=c[e>>2]|0;i=l;return n|0}c[k>>2]=c[(c[f>>2]|0)+32>>2];c[h
>>2]=0;while(1){if((c[h>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[j
x3e;>2]=(c[j>>2]|0)+3;c[(c[k>>2]|0)+(c[h>>2]<<2)>>2]=(d[(c[j>>2
]|0)+-3>>0]|0)<<16|(d[(c[j>>2]|0)+-3+1>>0]|0)<<8|(d[(c[j>>2]|0)+-3+2
>>0]|0)<<0;c[j>>2]=(c[j>>2]|0)+8;c[h>>2]=(c[h>>2]|0)+1}c[(c[k>
x3e;2]|0)+(c[h>>2]<<2)>>2]=0;c[e>>2]=c[k>>2];n=c[e>>2]|0;i=l;return
n|0}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,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0
;j=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=c[(c[f>>2]|0)+28>>2];c[j
x3e;>2]=0;do if((c[g>>2]|0)>>>0>(c[(c[f>>2]|0)+28>>2]|0)>>>
;0){c[(c[f>>2]|0)+36>>2]=c[h>>2];k=hc(c[h>>2]|0,4,c[k>>2]|0,c[g>>2]|
0,c[(c[f>>2]|0)+32>>2]|0,j)|0;c[(c[f>>2]|0)+32>>2]=k;if(!(c[j>>2]|0)){c[(c[f
x3e;>2]|0)+28>>2]=c[g>>2];break}c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|
0}while(0);c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|0}function ek(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;q=i;i=i+48|0;f=q+40|0;g=q+36|0;r=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;n=q+16|0;o=q+12|
0;p=q+8|0;l=q+4|0;m=q;c[g>>2]=a;c[r>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];c[k>
x3e;2]=c[(c[j>>2]|0)+24>>2];c[n>>2]=(c[(c[g>>2]|0)+16>>2]|0)+10;if(dk(c[j>
;>2]|0,(c[k>>2]|0)+1|0,c[r>>2]|0)|0){c[f>>2]=0;r=c[f>>2]|0;i=q;return r|0}c[o>
x3e;2]=c[(c[j>>2]|0)+32>>2];while(1){if((c[k>>2]|0)>>>0<=0)break;c[n>>
;2]=(c[n>>2]|0)+3;c[p>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0
)+-3+1>>0]|0)<<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;c[n>>2]=(c[n>>
;2]|0)+4;c[l>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<
;<0;c[n>>2]=(c[n>>2]|0)+4;c[m>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(
d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n
x3e;>2]|0)+-4+3>>0]|0)<<0;if(c[l>>2]|0?$j((c[(c[g>>2]|0)+16>>2]|0)+(c[l
x3e;>2]|0)|0,c[h>>2]|0)|0:0)e=9;else e=7;if(((e|0)==7?(e=0,c[m>>2]|0):0)?ak((c[(c[g>>2]|0)+16
>>2]|0)+(c[m>>2]|0)|0,c[h>>2]|0)|0:0)e=9;if((e|0)==9){c[c[o>>2]>>2]=c[p>
x3e;2];c[o>>2]=(c[o>>2]|0)+4}c[k>>2]=(c[k>>2]|0)+-1}c[c[o>>2]>>2]=0;
c[f>>2]=c[(c[j>>2]|0)+32>>2];r=c[f>>2]|0;i=q;return r|0}function fk(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;y=i;i=i+80|0;f=y+72|0;g=y+68|0;h=y+64|0
;z=y+60|0;w=y+56|0;x=y+52|0;p=y+48|0;l=y+44|0;s=y+40|0;j=y+36|0;u=y+32|0;t=y+28|0;o=y+24|0;k=y+20|0;v=y+16|0;n=y+12|0;m=y+8|0;r=
y+4|0;q=y;c[g>>2]=a;c[h>>2]=b;c[z>>2]=e;c[w>>2]=_j((c[(c[g>>2]|0)+16>>
;2]|0)+6|0,c[z>>2]|0)|0;if(!(c[w>>2]|0)){c[f>>2]=0;z=c[f>>2]|0;i=y;return z|0}c[w>
x3e;2]=(c[w>>2]|0)+4;c[l>>2]=(d[(c[w>>2]|0)+-4>>0]|0)<<24|(d[(c[w>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|0)<<8|(d[(c[w>>2]|0)+-4
+3>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+4;c[s>>2]=(d[(c[w>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[w>>2]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[w>>2]|0)+-4+3>>0]|0)<<0;if((c[l>>2]|0)==0&(c[s>>2]|
0)==0){c[f>>2]=0;z=c[f>>2]|0;i=y;return z|0}if(!(c[l>>2]|0)){c[f>>2]=gk(c[g>>2
]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[s>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return
z|0}a=c[g>>2]|0;if(!(c[s>>2]|0)){c[f>>2]=hk(a,(c[(c[g>>2]|0)+16>>2]|0)+(c[l
x3e;>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return z|0}c[j>>2]=a;c[w>>2]=(c[(c[g>
;>2]|0)+16>>2]|0)+(c[s>>2]|0);c[n>>2]=(c[(c[g>>2]|0)+16>>2]|0)+(c[l>
x3e;2]|0);c[w>>2]=(c[w>>2]|0)+4;c[t>>2]=(d[(c[w>>2]|0)+-4>>0]|0)<<24
|(d[(c[w>>2]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|0)<<8|(d[(c[
w>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=ik(c[n>>2]|0)|0;c[n>>2]=(c[n>
x3e;2]|0)+4;c[u>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>
;0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)
x3c;<0;if(!(c[t>>2]|0)){c[f>>2]=hk(c[g>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[
l>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return z|0}if(!(c[k>>2]|0)){c[f>>2]=gk
(c[g>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[s>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>
;2]|0;i=y;return z|0}if(dk(c[j>>2]|0,(c[k>>2]|0)+(c[t>>2]|0)+1|0,c[h>>2]|0)|0){c[f>
x3e;2]=0;z=c[f>>2]|0;i=y;return z|0}c[x>>2]=c[(c[j>>2]|0)+32>>2];c[n>>2]=(c[n
x3e;>2]|0)+3;c[o>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>
;>0]|0)<<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+
1;c[k>>2]=d[z>>0];c[m>>2]=1;c[w>>2]=(c[w>>2]|0)+3;c[v>>2]=(d[(c[w>
;>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<<8|(d[(c[w>>2]|
0)+-3+2>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+2;c[r>>2]=1;c[p>>2]=0;while(1){
if((c[v>>2]|0)>>>0<=((c[o>>2]|0)+(c[k>>2]|0)|0)>>>0){if((c[v>
;>2]|0)>>>0<(c[o>>2]|0)>>>0){s=c[v>>2]|0;z=c[p>>2]|0;c[p
x3e;>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=s}c[r>>2]=(c[r>>2]|0)+1;if((c[r>
;>2]|0)>>>0>(c[t>>2]|0)>>>0)break;c[w>>2]=(c[w>>2]|0)+3;c[
v>>2]=(d[(c[w>>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<
x3c;8|(d[(c[w>>2]|0)+-3+2>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+2;continue}c[q>
x3e;2]=0;while(1){if((c[q>>2]|0)>>>0>(c[k>>2]|0)>>>0)break;s=(c[o>
x3e;2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>
;2]=s;c[q>>2]=(c[q>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1;if((c[m>>2]|0)>>
x3e;0>(c[u>>2]|0)>>>0)break;c[n>>2]=(c[n>>2]|0)+3;c[o>>2]=(d[(c[n>
;>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>>0]|0)<<8|(d[(c[n>>2]|
0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+1;c[k>>2]=d[z>>0]}a:do if((c
[r>>2]|0)>>>0>(c[t>>2]|0)>>>0){if((c[m>>2]|0)>>>
0<=(c[u>>2]|0)>>>0){c[q>>2]=0;while(1){if((c[q>>2]|0)>>>0>(
c[k>>2]|0)>>>0)break;w=(c[o>>2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>
;2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=w;c[q>>2]=(c[q>>2]|0)+1}while(1){if((c[m>
;>2]|0)>>>0>=(c[u>>2]|0)>>>0)break a;c[n>>2]=(c[n>>2]|0)+3
;c[o>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>>0]|0)<
;<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+1;c[k>>
2]=d[z>>0];c[q>>2]=0;while(1){if((c[q>>2]|0)>>>0>(c[k>>2]|0)>
x3e;>0)break;w=(c[o>>2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>
2]|0)+(z<<2)>>2]=w;c[q>>2]=(c[q>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1}}}else
{v=c[v>>2]|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=v;while
(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a;c[w>>2]=(c[w>
;>2]|0)+3;v=(d[(c[w>>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<
x3c;8|(d[(c[w>>2]|0)+-3+2>>0]|0)<<0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>
2]|0)+(z<<2)>>2]=v;c[w>>2]=(c[w>>2]|0)+2;c[r>>2]=(c[r>>2]|0)+1}}while
(0);c[(c[x>>2]|0)+(c[p>>2]<<2)>>2]=0;c[f>>2]=c[x>>2];z=c[f>>
;2]|0;i=y;return z|0}function gk(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;m=i;i=i+32|0;f=m+28|0;o=m+24|0
;g=m+20|0;n=m+16|0;h=m+12|0;k=m+8|0;j=m+4|0;l=m;c[o>>2]=a;c[g>>2]=b;c[n>>2]=e;c[h>>2]=c[
o>>2];c[g>>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<
x3c;24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(
d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if(dk(c[h>>2]|0,(c[k>>2]|0)+1|0,c[n>>2]|
0)|0){c[f>>2]=0;o=c[f>>2]|0;i=m;return o|0}c[l>>2]=c[(c[h>>2]|0)+32>>2];c[j>
;>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break;c[g>
x3e;2]=(c[g>>2]|0)+3;c[(c[l>>2]|0)+(c[j>>2]<<2)>>2]=(d[(c[g>>2]|0)+-
3>>0]|0)<<16|(d[(c[g>>2]|0)+-3+1>>0]|0)<<8|(d[(c[g>>2]|0)+-3+2>
x3e;0]|0)<<0;c[g>>2]=(c[g>>2]|0)+2;c[j>>2]=(c[j>>2]|0)+1}c[(c[l>>2]|
0)+(c[j>>2]<<2)>>2]=0;c[f>>2]=c[l>>2];o=c[f>>2]|0;i=m;return o|0}function
hk(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;n=i;i=i+48|0;f=n+32|0;p=n+28|0;g=n+24|0;o=n+20|0;h=n+16
|0;k=n+12|0;j=n+8|0;l=n+4|0;m=n;c[p>>2]=a;c[g>>2]=b;c[o>>2]=e;c[h>>2]=c[p>>2];
c[j>>2]=ik(c[g>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-
4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>
;>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if(dk(c[h>>2]|0,(c[j>>
2]|0)+1|0,c[o>>2]|0)|0){c[f>>2]=0;p=c[f>>2]|0;i=n;return p|0}c[l>>2]=c[(c[h>>2
]|0)+32>>2];while(1){if((c[k>>2]|0)>>>0<=0)break;c[g>>2]=(c[g>>2]|0)+
3;c[m>>2]=(d[(c[g>>2]|0)+-3>>0]|0)<<16|(d[(c[g>>2]|0)+-3+1>>0]|0)<
;<8|(d[(c[g>>2]|0)+-3+2>>0]|0)<<0;p=c[g>>2]|0;c[g>>2]=p+1;c[j>>
2]=(d[p>>0]|0)+1;do{c[c[l>>2]>>2]=c[m>>2];c[m>>2]=(c[m>>2]|0)+1;c[l
x3e;>2]=(c[l>>2]|0)+4;p=(c[j>>2]|0)+-1|0;c[j>>2]=p}while((p|0)!=0);c[k>>2]=(c[k>
;>2]|0)+-1}c[c[l>>2]>>2]=0;c[f>>2]=c[(c[h>>2]|0)+32>>2];p=c[f>>
2]|0;i=n;return p|0}function ik(a){a=a|0;var b=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+8|0;e=g+4|0;f=g;c[b>>2]=a;c[b>>
;2]=(c[b>>2]|0)+4;c[e>>2]=(d[(c[b>>2]|0)+-4>>0]|0)<<24|(d[(c[b>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[b>>2]|0)+-4+2>>0]|0)<<8|(d[(c[b>>2]|0)+-4+3
x3e;>0]|0)<<0;c[f>>2]=0;c[b>>2]=(c[b>>2]|0)+3;while(1){if((c[e>>2]|0)>
;>>0<=0)break;c[f>>2]=(c[f>>2]|0)+(1+(d[c[b>>2]>>0]|0));c[b>>2]=(
c[b>>2]|0)+4;c[e>>2]=(c[e>>2]|0)+-1}i=g;return c[f>>2]|0}function jk(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;B=i;i=i+96|0;e=B+84|0;f=B+80|0;y=B+
76|0;r=B+72|0;x=B+68|0;s=B+64|0;q=B+60|0;A=B+56|0;j=B+52|0;u=B+48|0;k=B+44|0;w=B+40|0;m=B+36|0;o=B+32|0;g=B+28|0;h=B+24|0;t=B+20
|0;v=B+16|0;n=B+12|0;p=B+8|0;z=B+4|0;l=B;c[e>>2]=a;c[f>>2]=b;c[y>>2]=(c[e>>2]|0)+2;c[y
x3e;>2]=(c[y>>2]|0)+4;c[r>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[y>
x3e;2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>>2]|
0)+-4+3>>0]|0)<<0;c[y>>2]=(c[y>>2]|0)+4;c[x>>2]=(d[(c[y>>2]|0)+-4>
;>0]|0)<<24|(d[(c[y>>2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>
;0]|0)<<8|(d[(c[y>>2]|0)+-4+3>>0]|0)<<0;if(!((c[r>>2]|0)>>>0<
;=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>2]|0)|0)>>>0?(c[r>>2]|0)>>>
;0>=(10+((c[x>>2]|0)*11|0)|0)>>>0:0))sc(c[f>>2]|0,8);c[q>>2]=1;c[s>>
2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[x>>2]|0)>>>0)break;c[y>>2]=(
c[y>>2]|0)+3;c[A>>2]=(d[(c[y>>2]|0)+-3>>0]|0)<<16|(d[(c[y>>2]|0)+-3+
1>>0]|0)<<8|(d[(c[y>>2]|0)+-3+2>>0]|0)<<0;c[y>>2]=(c[y>>2]|
0)+4;c[j>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[y>>2]|0)+-4+1>>0]|0)
x3c;<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>>2]|0)+-4+3>>0]|0)<<
;0;c[y>>2]=(c[y>>2]|0)+4;c[u>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[
y>>2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>
x3e;2]|0)+-4+3>>0]|0)<<0;if(!((c[j>>2]|0)>>>0<(c[r>>2]|0)>>
;>0?(c[u>>2]|0)>>>0<(c[r>>2]|0)>>>0:0))sc(c[f>>2]|0,8);if((
c[A>>2]|0)>>>0<(c[q>>2]|0)>>>0)sc(c[f>>2]|0,8);c[q>>2
]=(c[A>>2]|0)+1;a:do if(c[j>>2]|0){c[k>>2]=(c[e>>2]|0)+(c[j>>2]|0);c[k>
x3e;2]=(c[k>>2]|0)+4;c[w>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4
+3>>0]|0)<<0;c[o>>2]=0;if(((c[k>>2]|0)+(c[w>>2]<<2)|0)>>
x3e;0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[m>>2]=0;while(1){
if((c[m>>2]|0)>>>0>=(c[w>>2]|0)>>>0)break a;c[k>>2]=(c[k>
x3e;2]|0)+3;c[g>>2]=(d[(c[k>>2]|0)+-3>>0]|0)<<16|(d[(c[k>>2]|0)+-3+1>>
;0]|0)<<8|(d[(c[k>>2]|0)+-3+2>>0]|0)<<0;b=c[k>>2]|0;c[k>>2]=b+1;c[h
x3e;>2]=d[b>>0];if(((c[g>>2]|0)+(c[h>>2]|0)|0)>>>0>=1114112)sc(c[f>
x3e;2]|0,8);if((c[g>>2]|0)>>>0<(c[o>>2]|0)>>>0)sc(c[f>>2]|0,8);
c[o>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+1}}while(0);b:do if(c[u
x3e;>2]|0){c[t>>2]=(c[e>>2]|0)+(c[u>>2]|0);c[t>>2]=(c[t>>2]|0)+4;c[v>
;>2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16
|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-4+3>>0]|0)<<0;c[p>
;>2]=0;if(c[v>>2]<<2>>>0>((c[(c[f>>2]|0)+4>>2]|0)-(c[t>>
;2]|0)|0)>>>0)sc(c[f>>2]|0,8);c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0
x3e;=(c[v>>2]|0)>>>0)break b;c[t>>2]=(c[t>>2]|0)+3;c[z>>2]=(d[(c[t>
x3e;2]|0)+-3>>0]|0)<<16|(d[(c[t>>2]|0)+-3+1>>0]|0)<<8|(d[(c[t>>2]|0)+-
3+2>>0]|0)<<0;c[t>>2]=(c[t>>2]|0)+2;c[l>>2]=(((d[(c[t>>2]|0)+-2>
;>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c
[z>>2]|0)>>>0>=1114112)sc(c[f>>2]|0,8);if((c[z>>2]|0)>>>0<(
c[p>>2]|0)>>>0)sc(c[f>>2]|0,8);c[p>>2]=(c[z>>2]|0)+1;if((c[(c[f>>
;2]|0)+8>>2]|0)>>>0>=1?(c[l>>2]|0)>>>0>=(c[(c[f>>2]|0)+172
>>2]|0)>>>0:0)sc(c[f>>2]|0,16);c[n>>2]=(c[n>>2]|0)+1}}while(0);c[s>
x3e;2]=(c[s>>2]|0)+1}i=B;return 0}function kk(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[f>>2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=14;c[c[e>>2]>
;>2]=-1;i=d;return 0}function lk(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;m=k+20|0;l=k
+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[m>>2]=a;c[l>>2]=b;c[f>>2]=d;c[g>>2]=e;c[j>>
;2]=mk(c[m>>2]|0,c[l>>2]|0)|0;if(!(c[j>>2]|0)){c[h>>2]=142;m=c[h>>2]|0;i=k;return
m|0}if(c[g>>2]|0)c[c[g>>2]>>2]=c[(c[j>>2]|0)+12>>2];c[h>>2]=Kc(c[f
x3e;>2]|0,c[(c[j>>2]|0)+8>>2]|0)|0;m=c[h>>2]|0;i=k;return m|0}function mk(a,b){a=a|0;b=b|0;var
d=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;g=j+16|0;k=j+12|0;d=j+8|0;h=j+4|0;f=j;c[k>>2]=a;c[d>>2]=b;c[h>>
;2]=c[(c[k>>2]|0)+156>>2];c[f>>2]=(c[h>>2]|0)+((e[(c[k>>2]|0)+152>>1
]|0)<<4);while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>>0){d=7;break
}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)?c[(c[h>>2]|0)+12>>2]|0:0){d=5;break}c[h>
;>2]=(c[h>>2]|0)+16}if((d|0)==5){c[g>>2]=c[h>>2];k=c[g>>2]|0;i=j;return k|0}else if
((d|0)==7){c[g>>2]=0;k=c[g>>2]|0;i=j;return k|0}return 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,r=0,s=0;q=i;i=i+48|0;g=q+40|0;h=q+36|0;j=q+32|0;k=q+28|0;s=q+24|0;r=q+20|0;m=q+16|
0;n=q+12|0;p=q+8|0;o=q+4|0;l=q;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[s>>2]=e;c[r>>2]=
f;c[n>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+4>>2];c[s>>2]=c[s>>2];c[r>
x3e;2]=c[r>>2];c[p>>2]=c[(c[j>>2]|0)+532>>2];do if(!(c[p>>2]|0)){c[p>>
;2]=Ud(c[n>>2]|0,11340)|0;if(c[p>>2]|0){c[(c[j>>2]|0)+532>>2]=c[p>>2];c[(c[j
x3e;>2]|0)+508>>2]=c[c[p>>2]>>2];break}c[g>>2]=3;s=c[g>>2]|0;i=q;return s
|0}while(0);c[o>>2]=c[(c[j>>2]|0)+96>>2];c[l>>2]=Vd(c[o>>2]|0,71003)|0;c[(c[j
x3e;>2]|0)+536>>2]=c[l>>2];c[m>>2]=ok(c[h>>2]|0,c[j>>2]|0)|0;if(c[m>
x3e;2]|0){c[g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}if((c[k>>2]|0)<0)c[k>>
;2]=0;if((c[k>>2]|0)>=(c[(c[j>>2]|0)+132+8>>2]|0)){c[g>>2]=6;s=c[g>>2]|0;
i=q;return s|0}s=Kc(c[h>>2]|0,c[(c[(c[j>>2]|0)+132+12>>2]|0)+(c[k>>2]<<2)>
;>2]|0)|0;c[m>>2]=s;if(s|0){c[g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}c[m>>
;2]=Ya[c[(c[p>>2]|0)+132>>2]&127](c[j>>2]|0,c[h>>2]|0)|0;if(c[m>>2]|0){c[
g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}else{c[c[j>>2]>>2]=c[(c[j>>
2]|0)+132+8>>2];c[(c[j>>2]|0)+4>>2]=c[k>>2];c[g>>2]=c[m>>2];s=c[g>
;>2]|0;i=q;return s|0}return 0}function ok(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;m=i;i=i+32|0;g=m+28|0;h
=m+24|0;j=m+20|0;d=m+16|0;k=m+12|0;f=m+8|0;e=m+4|0;l=m;c[h>>2]=a;c[j>>2]=b;c[d>>2]=c[(c[h>>
;2]|0)+28>>2];c[(c[j>>2]|0)+132>>2]=0;c[(c[j>>2]|0)+132+4>>2]=0;c[(c[j>
x3e;2]|0)+132+8>>2]=0;c[e>>2]=Mc(c[h>>2]|0)|0;c[f>>2]=Oc(c[h>>2]|0,k)|0;if(c[k
>>2]|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}if((c[f>>2]|0)!=65536&(
c[f>>2]|0)!=1953784678&(c[f>>2]|0)!=1330926671&(c[f>>2]|0)!=1953658213&(c[f>
x3e;2]|0)!=1954115633&(c[f>>2]|0)!=131072){c[g>>2]=2;l=c[g>>2]|0;i=m;return l|0}c[(c[j>
x3e;2]|0)+132>>2]=1953784678;do if((c[f>>2]|0)==1953784678){f=le(c[h>>2]|0,7544,(c[j>>2]|
0)+132|0)|0;c[k>>2]=f;if(f|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}f=hc(c[d>
x3e;2]|0,4,0,c[(c[j>>2]|0)+132+8>>2]|0,0,k)|0;c[(c[j>>2]|0)+132+12>>2]=f;if(c[k>>
;2]|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}f=ee(c[h>>2]|0,c[(c[j>>2]|0)+
132+8>>2]<<2)|0;c[k>>2]=f;if(f|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return
l|0}c[l>>2]=0;while(1){b=c[h>>2]|0;if((c[l>>2]|0)>=(c[(c[j>>2]|0)+132+8>>
;2]|0))break;f=je(b)|0;c[(c[(c[j>>2]|0)+132+12>>2]|0)+(c[l>>2]<<2)>>2]=f;c[l
x3e;>2]=(c[l>>2]|0)+1}ge(b)}else{c[(c[j>>2]|0)+132+4>>2]=65536;c[(c[j>>2]|0)+132+8
x3e;>2]=1;l=bc(c[d>>2]|0,4,k)|0;c[(c[j>>2]|0)+132+12>>2]=l;if(!(c[k>>2]|0)){c[c[(c[
j>>2]|0)+132+12>>2]>>2]=c[e>>2];break}c[g>>2]=c[k>>2];l=c[g>>
;2]|0;i=m;return l|0}while(0);c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}function pk(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;I=i;i=i+112|0;o=I+92|0;F=I+88|0;J=I+84|0;l=I+80|0;m=I+76|0;G=I+72|0;x=I+68|0;r=I+103|0;u=I+102|0;s=I+101|0;t=I+100|0;D=I+64|
0;n=I+60|0;H=I+56|0;q=I+52|0;v=I+48|0;p=I+44|0;B=I+40|0;E=I+36|0;w=I+32|0;A=I+98|0;y=I+96|0;C=I+4|0;z=I;c[o>>2]=f;c[F
x3e;>2]=g;c[J>>2]=h;c[l>>2]=j;c[m>>2]=k;a[s>>0]=0;a[t>>0]=0;c[D>>
;2]=c[(c[F>>2]|0)+532>>2];c[J>>2]=c[J>>2];c[n>>2]=0;while(1){if((c[n>>
;2]|0)>=(c[l>>2]|0))break;if((c[(c[m>>2]|0)+(c[n>>2]<<3)>>2]|0)!=1768386662
){if((c[(c[m>>2]|0)+(c[n>>2]<<3)>>2]|0)==1768386675)a[t>>0]=1}else a[s>
x3e;0]=1;c[n>>2]=(c[n>>2]|0)+1}if(!(c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]|0)?!(mk
(c[F>>2]|0,1735162214)|0):0)l=(mk(c[F>>2]|0,1128678944)|0)!=0;else l=1;a[r>>0]=l&1;a[u>
x3e;0]=0;if((a[r>>0]|0)==0?c[(c[D>>2]|0)+84>>2]|0:0){c[G>>2]=Ya[c[(c[D>>2]|0)+
84>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;a[u>>0]=((c[G>>2]|0)!=0^1)&1}if((
a[u>>0]|0)==0?(c[G>>2]=Ya[c[(c[D>>2]|0)+32>>2]&127](c[F>>2]|0,c[o>
x3e;2]|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if(!(e[(c[F>>2]|0)+160+18>>1]|0)){c
[G>>2]=8;J=c[G>>2]|0;i=I;return J|0}c[G>>2]=Ya[c[(c[D>>2]|0)+44>>2]&127](
c[F>>2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+40>>2]&127](c[F>>
;2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+56>>2]&127](c[F>>2]|0,c[o>
;>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+52>>2]&127](c[F>>2]|0,c[o>>2]|0)|
0;c[x>>2]=c[G>>2];if(!(a[u>>0]|0)){c[G>>2]=Oa[c[(c[D>>2]|0)+36>>2]
x26;63](c[F>>2]|0,c[o>>2]|0,0)|0;do if(c[G>>2]|0){if((c[G>>2]|0)==142){if((c[(c[F>
x3e;2]|0)+148>>2]|0)==1953658213){a[r>>0]=0;c[G>>2]=0;break}c[G>>2]=143;if(c[(c[(c[F>
;>2]|0)+128>>2]|0)+52>>2]|0?c[(c[c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]>
x3e;2]|0)+8>>2]|0:0){b[(c[F>>2]|0)+216+34>>1]=0;c[G>>2]=0}}}else{c[G>>2]=Oa[c[(
c[D>>2]|0)+136>>2]&63](c[F>>2]|0,c[o>>2]|0,0)|0;if(((c[G>>2]|0)==142?(c[G
>>2]=147,c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]|0):0)?c[(c[c[(c[(c[F>>2]|0)+128>
;>2]|0)+52>>2]>>2]|0)+8>>2]|0:0){b[(c[F>>2]|0)+216+34>>1]=0;c[G>>
;2]=0}}while(0);if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}c[G>>2]=Oa[c[(c[D>>2]|0)+36>
;>2]&63](c[F>>2]|0,c[o>>2]|0,1)|0;if((c[G>>2]|0)==0?(c[G>>2]=Oa[c[(c[D>
x3e;2]|0)+136>>2]&63](c[F>>2]|0,c[o>>2]|0,1)|0,(c[G>>2]|0)==0):0)a[(c[F>>
2]|0)+296>>0]=1;if((c[G>>2]|0)!=0&(c[G>>2]|0)!=142){J=c[G>>2]|0;i=I;return J|0}c[G
x3e;>2]=Ya[c[(c[D>>2]|0)+48>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;if(c[G>>
2]|0)b[(c[F>>2]|0)+368>>1]=-1}do if(c[(c[D>>2]|0)+140>>2]|0?(c[G>>2]=Ya[c[(c[D
>>2]|0)+140>>2]&127](c[F>>2]|0,c[o>>2]|0)|0,c[G>>2]|0):0)if((c[G>>
;2]|0)==142){c[G>>2]=0;break}else{J=c[G>>2]|0;i=I;return J|0}while(0);c[G>>2]=Ya[c[(c[D>>
;2]|0)+80>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;do if(c[G>>2]|0)if((c[G>>2]|0)!=
142){J=c[G>>2]|0;i=I;return J|0}else{c[(c[F>>2]|0)+556>>2]=0;break}while(0);c[G>>2]=Ya[c
[(c[D>>2]|0)+76>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>
x3e;2]|0)+72>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;c[(c[F>>2]|0)+16>>2]=e[(c[F
x3e;>2]|0)+260+4>>1];c[(c[F>>2]|0)+20>>2]=0;c[(c[F>>2]|0)+24>>2]=0;if((e[(
c[F>>2]|0)+368>>1]|0)!=65535?e[(c[F>>2]|0)+368+64>>1]&256|0:0){if((a[s>>0
]|0)==0?(c[G>>2]=qk(c[F>>2]|0,16,(c[F>>2]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0
;i=I;return J|0}if((c[(c[F>>2]|0)+20>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,1,(c[F>>2
]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if((a[t>>0]|0)==0?(c[G>>2]=qk(c[F
x3e;>2]|0,17,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if((c[(c[F>>
;2]|0)+24>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,2,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){
J=c[G>>2]|0;i=I;return J|0}}else{c[G>>2]=qk(c[F>>2]|0,21,(c[F>>2]|0)+20|0)|0;if(c[G>
;>2]|0){J=c[G>>2]|0;i=I;return J|0}if(!(a[s>>0]|0?1:(c[(c[F>>2]|0)+20>>2]|0)!=0)?(c
[G>>2]=qk(c[F>>2]|0,16,(c[F>>2]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return
J|0}if((c[(c[F>>2]|0)+20>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,1,(c[F>>2]|0)+20|0)|
0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}c[G>>2]=qk(c[F>>2]|0,22,(c[F>>2]|0)+
24|0)|0;if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}if(!(a[t>>0]|0?1:(c[(c[F>>2]|0)+24>
;>2]|0)!=0)?(c[G>>2]=qk(c[F>>2]|0,17,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>
x3e;2]|0;i=I;return J|0}if((c[(c[F>>2]|0)+24>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,2,(c[F>
;>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}}c[H>>2]=c[F>>2];c[q>
x3e;2]=c[(c[H>>2]|0)+8>>2];if((d[r>>0]|0)==1)c[q>>2]=c[q>>2]|1;c[q>>
2]=c[q>>2]|24;if((c[x>>2]|0)==0?(c[(c[F>>2]|0)+468>>2]|0)!=196608:0)c[q>>2]=c[
q>>2]|512;if(c[(c[F>>2]|0)+468+12>>2]|0)c[q>>2]=c[q>>2]|4;if(a[(c[F>>
;2]|0)+296>>0]|0)c[q>>2]=c[q>>2]|32;if(c[(c[F>>2]|0)+784>>2]|0)c[q>>
2]=c[q>>2]|64;if((mk(c[F>>2]|0,1735162214)|0?mk(c[F>>2]|0,1719034226)|0:0)?mk(c[F>>2]|0,
1735811442)|0:0)c[q>>2]=c[q>>2]|256;c[(c[H>>2]|0)+8>>2]=c[q>>2];c[q>>
;2]=0;if((d[r>>0]|0)==1?(e[(c[F>>2]|0)+368>>1]|0)!=65535:0){if(!(!(e[(c[F>>2]|0)+368+64
x3e;>1]&512|0)?!(e[(c[F>>2]|0)+368+64>>1]&1|0):0))c[q>>2]=c[q>>2]|1;if(e[(
c[F>>2]|0)+368+64>>1]&32|0)c[q>>2]=c[q>>2]|2}else{if(e[(c[F>>2]|0)+160+44
>>1]&1|0)c[q>>2]=c[q>>2]|2;if(e[(c[F>>2]|0)+160+44>>1]&2|0)c[q>
x3e;2]=c[q>>2]|1}c[(c[H>>2]|0)+12>>2]=c[q>>2];tk(c[F>>2]|0)|0;c[v>>2
]=0;while(1){if((c[v>>2]|0)>=(c[(c[H>>2]|0)+36>>2]|0))break;c[p>>2]=c[(c[(c[H>
x3e;2]|0)+40>>2]|0)+(c[v>>2]<<2)>>2];J=uk(e[(c[p>>2]|0)+8>>1]|0,e[(c
[p>>2]|0)+10>>1]|0)|0;c[(c[p>>2]|0)+4>>2]=J;c[v>>2]=(c[v>>2]|0)+1}c[
E>>2]=c[(c[F>>2]|0)+612>>2];do if((c[E>>2]|0)>>>0>0){c[w>>
2]=c[(c[(c[F>>2]|0)+104>>2]|0)+28>>2];b[A>>1]=b[(c[F>>2]|0)+160+18>>
1]|0;b[y>>1]=b[(c[F>>2]|0)+368+2>>1]|0;if(!((e[A>>1]|0)!=0?(e[(c[F>>2]|0)+368
x3e;>1]|0)!=65535:0)){b[y>>1]=0;b[A>>1]=1}J=hc(c[w>>2]|0,16,0,c[E>>2]|0,0,G)|0;c[(c
[H>>2]|0)+32>>2]=J;if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}c[B>>2]=0;while(1){
m=c[H>>2]|0;if((c[B>>2]|0)>>>0>=(c[E>>2]|0)>>>0){l=103;break}c[
z>>2]=(c[m+32>>2]|0)+(c[B>>2]<<4);c[G>>2]=Oa[c[(c[D>>2]|0)+152>
x3e;2]&63](c[F>>2]|0,c[B>>2]|0,C)|0;if(c[G>>2]|0){l=112;break}b[c[z>>2]>>
1]=c[C+20>>2]>>6;J=_(b[y>>1]|0,e[C>>1]|0)|0;b[(c[z>>2]|0)+2>>1]=(J+((
e[A>>1]|0)/2|0)|0)/(e[A>>1]|0)|0;c[(c[z>>2]|0)+8>>2]=e[C>>1]<<6;c[(c
[z>>2]|0)+12>>2]=e[C+2>>1]<<6;c[(c[z>>2]|0)+4>>2]=e[C+2>>1
]<<6;c[B>>2]=(c[B>>2]|0)+1}if((l|0)==103){J=m+8|0;c[J>>2]=c[J>>2]|2;c[(c[H>
;>2]|0)+28>>2]=c[E>>2];break}else if((l|0)==112){J=c[G>>2]|0;i=I;return J|0}}while(0);if((c[(
c[H>>2]|0)+8>>2]&2|0)==0?(c[(c[H>>2]|0)+8>>2]&1|0)==0:0){J=(c[H>>2]|
0)+8|0;c[J>>2]=c[J>>2]|1}if(!(c[(c[H>>2]|0)+8>>2]&1)){J=c[G>>2]|0;i=I;return
J|0}c[(c[H>>2]|0)+52>>2]=b[(c[F>>2]|0)+160+36>>1];c[(c[H>>2]|0)+52+4>>
;2]=b[(c[F>>2]|0)+160+38>>1];c[(c[H>>2]|0)+52+8>>2]=b[(c[F>>2]|0)+160+40>
x3e;1];c[(c[H>>2]|0)+52+12>>2]=b[(c[F>>2]|0)+160+42>>1];b[(c[H>>2]|0)+68>
x3e;1]=b[(c[F>>2]|0)+160+18>>1]|0;b[(c[H>>2]|0)+70>>1]=b[(c[F>>2]|0)+216+4>
;>1]|0;b[(c[H>>2]|0)+72>>1]=b[(c[F>>2]|0)+216+6>>1]|0;b[(c[H>>2]|0)+74>
;>1]=(b[(c[H>>2]|0)+70>>1]|0)-(b[(c[H>>2]|0)+72>>1]|0)+(b[(c[F>>2]|0)+216
+8>>1]|0);b[(c[H>>2]|0)+76>>1]=b[(c[F>>2]|0)+216+10>>1]|0;if(d[(c[F>>
;2]|0)+296>>0]|0)l=e[(c[F>>2]|0)+300+10>>1]|0;else l=b[(c[H>>2]|0)+74>>1]|0;b[(
c[H>>2]|0)+78>>1]=l;b[(c[H>>2]|0)+80>>1]=(b[(c[F>>2]|0)+468+8>>1]|0)-((
b[(c[F>>2]|0)+468+10>>1]|0)/2|0);b[(c[H>>2]|0)+82>>1]=b[(c[F>>2]|0)+468+10>
;>1]|0;J=c[G>>2]|0;i=I;return J|0}function qk(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,r=
0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=i;i=i+64|0;h=z+48|0;j=z+54|0;k=z+44|0;t=z+40|0;m=z+36|0;w=z+32|0;u=z+52|0;v=z+28|0;n=z+24|0;
p=z+20|0;o=z+16|0;r=z+12|0;q=z+8|0;s=z+56|0;l=z+4|0;x=z;c[h>>2]=d;b[j>>1]=f;c[k>>2]=g;c[t>>
;2]=c[(c[h>>2]|0)+100>>2];c[m>>2]=0;c[w>>2]=0;c[n>>2]=-1;c[p>>2]=-1;
c[o>>2]=-1;c[r>>2]=-1;c[q>>2]=-1;a[s>>0]=0;c[v>>2]=c[(c[h>>2]|0)+348
+12>>2];b[u>>1]=0;while(1){if((e[u>>1]|0)>=(e[(c[h>>2]|0)+344>>1]|0))break
;a:do if((e[(c[v>>2]|0)+6>>1]|0)==(e[j>>1]|0)?(e[(c[v>>2]|0)+8>>1]|0)>0:0
)switch(e[c[v>>2]>>1]|0){case 2:case 0:{c[q>>2]=e[u>>1];break a}case 1:{if(!(e[(c[v>
;>2]|0)+4>>1]|0)){c[o>>2]=e[u>>1];break a}if(e[(c[v>>2]|0)+2>>1]|0)break
a;c[p>>2]=e[u>>1];break a}case 3:{if((c[r>>2]|0)!=-1?(e[(c[v>>2]|0)+4>>1]&
;1023|0)!=9:0)break a;switch(e[(c[v>>2]|0)+2>>1]|0){case 10:case 1:case 0:break;default:break a}a[s>>
;0]=(e[(c[v>>2]|0)+4>>1]&1023|0)==9;c[r>>2]=e[u>>1];break a}default:break a}while(0
);b[u>>1]=(b[u>>1]|0)+1<<16>>16;c[v>>2]=(c[v>>2]|0)+20}c[n>>
;2]=c[p>>2];if((c[o>>2]|0)>=0)c[n>>2]=c[o>>2];c[l>>2]=0;b:do if((c[r>
;>2]|0)>=0?(c[n>>2]|0)<0|(a[s>>0]|0)!=0:0){c[v>>2]=(c[(c[h>>2]|0)+348+12
x3e;>2]|0)+((c[r>>2]|0)*20|0);switch(e[(c[v>>2]|0)+2>>1]|0){case 0:case 1:{c[l>>2]=
106;break b}case 10:{c[l>>2]=106;break b}default:break b}}else y=23;while(0);do if((y|0)==23){if((c[n>>2]|0)
x3e;=0){c[v>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[n>>2]|0)*20|0);c[l>>2]=107;break
}if((c[q>>2]|0)>=0){c[v>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[q>>2]|0)*20|
0);c[l>>2]=106}}while(0);if(!((c[v>>2]|0)!=0&(c[l>>2]|0)!=0)){x=c[w>>2]|0;y=c[k>
;>2]|0;c[y>>2]=x;y=c[m>>2]|0;i=z;return y|0}do if(!(c[(c[v>>2]|0)+16>>2]|0)){c[x>
;>2]=c[(c[h>>2]|0)+348+16>>2];y=hc(c[t>>2]|0,1,0,e[(c[v>>2]|0)+8>>1]|0,0,
m)|0;c[(c[v>>2]|0)+16>>2]=y;if(((c[m>>2]|0)==0?(y=Kc(c[x>>2]|0,c[(c[v>>2]|0)+12
>>2]|0)|0,c[m>>2]=y,(y|0)==0):0)?(y=Rc(c[x>>2]|0,c[(c[v>>2]|0)+16>>2]|0,e[(c[v
>>2]|0)+8>>1]|0)|0,c[m>>2]=y,(y|0)==0):0)break;Fb(c[t>>2]|0,c[(c[v>>2]|0)+16
x3e;>2]|0);c[(c[v>>2]|0)+16>>2]=0;b[(c[v>>2]|0)+8>>1]=0;c[w>>2]=0;x=c[w
x3e;>2]|0;y=c[k>>2]|0;c[y>>2]=x;y=c[m>>2]|0;i=z;return y|0}while(0);c[w>>2]=Ya[c[l
x3e;>2]&127](c[v>>2]|0,c[t>>2]|0)|0;x=c[w>>2]|0;y=c[k>>2]|0;c[y>>2]=
x;y=c[m>>2]|0;i=z;return y|0}function rk(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,q=0;n=i;i=i+48|0;g=n
+32|0;q=n+28|0;p=n+24|0;m=n+20|0;j=n+16|0;h=n+12|0;k=n+8|0;l=n+4|0;o=n;c[q>>2]=b;c[p>>2]=f;c[m>>2]=
0;c[l>>2]=c[(c[q>>2]|0)+16>>2];c[j>>2]=((e[(c[q>>2]|0)+8>>1]|0)>
;>>0)/2|0;c[m>>2]=hc(c[p>>2]|0,1,0,(c[j>>2]|0)+1|0,0,o)|0;if(c[o>>2]|0){c[g>
;>2]=0;q=c[g>>2]|0;i=n;return q|0}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=(
c[j>>2]|0)>>>0)break;c[l>>2]=(c[l>>2]|0)+2;q=(((d[(c[l>>2]|0)+-2>>
;0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[h>
x3e;2]=q;c[h>>2]=(c[h>>2]|0)>>>0<32|(c[h>>2]|0)>>>0>127?63
:q;a[(c[m>>2]|0)+(c[k>>2]|0)>>0]=c[h>>2];c[k>>2]=(c[k>>2]|0)+1}a[(c[
m>>2]|0)+(c[j>>2]|0)>>0]=0;c[g>>2]=c[m>>2];q=c[g>>2]|0;i=n;return q|
0}function sk(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,q=0;n=i;i=i+48|0;g=n+32|0;q=n+28|0;p=n+24|0;m=n+20|0;j=n+
16|0;h=n+12|0;k=n+8|0;l=n+4|0;o=n;c[q>>2]=b;c[p>>2]=f;c[m>>2]=0;c[l>>2]=c[(c[q>>
;2]|0)+16>>2];c[j>>2]=e[(c[q>>2]|0)+8>>1];c[m>>2]=hc(c[p>>2]|0,1,0,(
c[j>>2]|0)+1|0,0,o)|0;if(c[o>>2]|0){c[g>>2]=0;q=c[g>>2]|0;i=n;return q|0}c[k>>
2]=0;while(1){if((c[k>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;q=c[l>>
2]|0;c[l>>2]=q+1;q=d[q>>0]|0;c[h>>2]=q;c[h>>2]=(c[h>>2]|0)>>>0
x3c;32|(c[h>>2]|0)>>>0>127?63:q;a[(c[m>>2]|0)+(c[k>>2]|0)>>0]=c[h>
;>2];c[k>>2]=(c[k>>2]|0)+1}a[(c[m>>2]|0)+(c[j>>2]|0)>>0]=0;c[g>>
;2]=c[m>>2];q=c[g>>2]|0;i=n;return q|0}function tk(a){a=a|0;var f=0,g=0,h=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,A=0;A=i;i=i+224|0;y=4;x=Fs(40)|0;c[x>>2]=0;s=A+216|0;t=A+212|0;l=A+200|0;p=A+196|0;r=A+192
|0;u=A+188|0;m=A+184|0;w=A+8|0;q=A+4|0;v=A;j=c[a+500>>2]|0;k=j+(c[a+504>>2]|0)|0;c[t>>2]=j;if(c[t
x3e;>2]|0?((c[t>>2]|0)+4|0)>>>0<=k>>>0:0){c[t>>2]=(c[t>>2]|
0)+2;f=c[t>>2]|0;if((((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535|0){c[t>>2]=f+-2;z=8;Gs(x|0);i=A;return z|0}c[t>>2]=
f+2;c[s>>2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>
;>0]|0)&65535)<<0)&65535;while(1){if((c[s>>2]|0)>>>0<=0)break;if(((c[t>
;>2]|0)+8|0)>>>0>k>>>0)break;c[t>>2]=(c[t>>2]|0)+2;b[l+8>>
1]=((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535
)<<0;c[t>>2]=(c[t>>2]|0)+2;b[l+10>>1]=((d[(c[t>>2]|0)+-2>>0]|0)&
;65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0;c[l>>2]=a;c[l+4>>
;2]=0;c[t>>2]=(c[t>>2]|0)+4;f=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>
2]|0)+-4+1>>0]|0)<<16|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-
4+3>>0]|0)<<0;if(f|0?f>>>0<=((c[a+504>>2]|0)-2|0)>>>0:0){c[p>
;>2]=j+f;c[r>>2]=(((d[c[p>>2]>>0]|0)&65535)<<8|((d[(c[p>>2]|0)+1>
;>0]|0)&65535)<<0)&65535;c[u>>2]=3080;while(1){if(!(c[c[u>>2]>>2]|0))break
;c[m>>2]=c[c[u>>2]>>2];if((c[(c[m>>2]|0)+40>>2]|0)==(c[r>>2]|0)){z=14
;break}c[u>>2]=(c[u>>2]|0)+4}a:do if((z|0)==14){z=0;c[q>>2]=0;n=0;qa(10,w|0,c[p>>2]|0,k|
0,0);f=n;n=0;if((f|0)!=0&(o|0)!=0){g=Rs(c[f>>2]|0,x|0,y|0)|0;if(!g)ta(f|0,o|0);C=o}else g=-1;if((g|0)!=1){c[w+172
>>2]=e[a+260+4>>1];x=Qs(w+16|0,1,x|0,y|0)|0;y=C;n=0;f=n;n=0;if((f|0)!=0&(o|0)!=0){g=Rs(c[f>>2
]|0,x|0,y|0)|0;if(!g)ta(f|0,o|0);C=o}else g=-1;if((g|0)!=1)f=0;else f=C}else f=C;while(1){if(!f){n=0;f=oa(c[(c[m>>2]|0
)+44>>2]|0,c[p>>2]|0,w|0)|0;g=n;n=0;if((g|0)!=0&(o|0)!=0){h=Rs(c[g>>2]|0,x|0,y|0)|0;if(!h)ta(
g|0,o|0);C=o}else h=-1;if((h|0)==1){f=C;continue}c[q>>2]=f}if(c[w+12>>2]|0)break a;n=0;f=ma(23,c[m>>
;2]|0,c[p>>2]|0,l|0,v|0)|0;g=n;n=0;if((g|0)!=0&(o|0)!=0){h=Rs(c[g>>2]|0,x|0,y|0)|0;if(!h)ta(g|0,o|0);C=
o}else h=-1;if((h|0)==1)f=C;else break}if(!f)c[(c[v>>2]|0)+20>>2]=c[q>>2]}while(0)}c[s>>
2]=(c[s>>2]|0)+-1}z=0;Gs(x|0);i=A;return z|0}z=8;Gs(x|0);i=A;return z|0}function uk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g
=0,h=0,j=0;j=i;i=i+32|0;g=j+16|0;d=j+12|0;e=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[h>>2]=3120;c[f
>>2]=(c[h>>2]|0)+132;while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>
x3e;>0){d=8;break}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)){if((c[(c[h>>2]|0)+4>>
;2]|0)==(c[e>>2]|0)){d=6;break}if((c[(c[h>>2]|0)+4>>2]|0)==-1){d=6;break}}c[h>>2]=(c[h
x3e;>2]|0)+12}if((d|0)==6){c[g>>2]=c[(c[h>>2]|0)+8>>2];h=c[g>>2]|0;i=j;return h|0}else
if((d|0)==8){c[g>>2]=0;h=c[g>>2]|0;i=j;return h|0}return 0}function vk(d){d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i
;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=d;if(!(c[e>>2]|0)){i=j;return}c[f>>2]=c[(c[e>
x3e;2]|0)+100>>2];c[g>>2]=c[(c[e>>2]|0)+532>>2];if(c[g>>2]|0){if(c[(c[g>
x3e;2]|0)+116>>2]|0)Va[c[(c[g>>2]|0)+116>>2]&63](c[e>>2]|0);if(c[(c[g>>2]|
0)+144>>2]|0)Va[c[(c[g>>2]|0)+144>>2]&63](c[e>>2]|0)}wk(c[e>>2]|0);xk(c[e
>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+132+12>>2]|0);c[(c[e>>2]|0)+132+12>>
;2]=0;c[(c[e>>2]|0)+132+8>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+156>>2]|0);c[(c[e
x3e;>2]|0)+156>>2]=0;b[(c[e>>2]|0)+152>>1]=0;c[h>>2]=c[(c[e>>2]|0)+104>
;>2];fe(c[h>>2]|0,(c[e>>2]|0)+500|0);c[(c[e>>2]|0)+504>>2]=0;Fb(c[f>>2]|0
,c[(c[e>>2]|0)+216+36>>2]|0);c[(c[e>>2]|0)+216+36>>2]=0;Fb(c[f>>2]|0,c[(c[e>
;>2]|0)+216+40>>2]|0);c[(c[e>>2]|0)+216+40>>2]=0;if(a[(c[e>>2]|0)+296>>0]|
0){Fb(c[f>>2]|0,c[(c[e>>2]|0)+300+36>>2]|0);c[(c[e>>2]|0)+300+36>>2]=0;Fb(c[f
x3e;>2]|0,c[(c[e>>2]|0)+300+40>>2]|0);c[(c[e>>2]|0)+300+40>>2]=0;a[(c[e>>
2]|0)+296>>0]=0}Fb(c[f>>2]|0,c[(c[e>>2]|0)+548+4>>2]|0);c[(c[e>>2]|0)+548+4>
;>2]=0;b[(c[e>>2]|0)+548+2>>1]=0;if(c[g>>2]|0)Va[c[(c[g>>2]|0)+60>>2]&
;63](c[e>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+20>>2]|0);c[(c[e>>2]|0)+20>>
;2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;Fb(c[f>
x3e;2]|0,c[(c[e>>2]|0)+32>>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[(c[e>>2]|0)+28>
x3e;2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+700>>2]|0);c[(c[e>>2]|0)+700>>2]=0;c[(c[e
x3e;>2]|0)+532>>2]=0;i=j;return}function wk(b){b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=b;c[e>>2]=(c[d>>2]|0)+792;if(!(a[(c[e>>2]|0)+20>>0]|0)){i=g;return}c[f>
x3e;2]=c[(c[d>>2]|0)+104>>2];if(c[c[e>>2]>>2]|0)fe(c[f>>2]|0,c[e>>2]|
0);c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|0)+12>>2]=
0;i=g;return}function xk(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]|0)+104>>2];fe(c[e>>2]|0,(c[d>>2]|0)+772|0);c[(c[d>>2]|0)+776>>2]=0;c[(c[d
x3e;>2]|0)+780>>2]=0;c[(c[d>>2]|0)+784>>2]=0;c[(c[d>>2]|0)+788>>2]=0;i=b;
return}function yk(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[f>
x3e;2]=c[f>>2];b=qc(3252,c[e>>2]|0)|0;i=d;return b|0}function zk(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;s=i;i=i+48|0;g=s+36|0;h=s+32|0;j=s+28|0;k=s+24|0;l=s+20|0;m=s+16|0;n=s+12|0;p=s
+8|0;q=s+4|0;o=s;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;e=c[h>
x3e;2]|0;do if(c[j>>2]|0){c[q>>2]=mk(e,c[j>>2]|0)|0;if(c[q>>2]|0){c[k>>2]=(c[k
>>2]|0)+(c[(c[q>>2]|0)+8>>2]|0);c[o>>2]=c[(c[q>>2]|0)+12>>2];r=6;break
}else{c[n>>2]=142;break}}else{c[o>>2]=c[(c[e+104>>2]|0)+4>>2];r=6}while(0);if((r|0)==6){
if(c[m>>2]|0?(c[c[m>>2]>>2]|0)==0:0){c[c[m>>2]>>2]=c[o>>2];c[g>
x3e;2]=0;r=c[g>>2]|0;i=s;return r|0}if(c[m>>2]|0)c[o>>2]=c[c[m>>2]>>2];c[p>
;>2]=c[(c[h>>2]|0)+104>>2];c[n>>2]=Sc(c[p>>2]|0,c[k>>2]|0,c[l>>
2]|0,c[o>>2]|0)|0}c[g>>2]=c[n>>2];r=c[g>>2]|0;i=s;return r|0}function Ak(a,b){a=a|0;b=b|
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]=a;c[j>>2]=b;switch(c[j>>2]|0){case
0:{c[g>>2]=(c[f>>2]|0)+160;break}case 3:{c[g>>2]=(c[f>>2]|0)+216;break}case 4:{c[g>
x3e;2]=d[(c[f>>2]|0)+296>>0]|0|0?(c[f>>2]|0)+300|0:0;break}case 2:{c[g>>2]=(e[(c[f>
x3e;2]|0)+368>>1]|0|0)==65535?0:(c[f>>2]|0)+368|0;break}case 5:{c[g>>2]=(c[f>>2]|0)+468;
break}case 1:{c[g>>2]=(c[f>>2]|0)+260;break}case 6:{c[g>>2]=c[(c[f>>2]|0)+556>>
;2]|0?(c[f>>2]|0)+556|0:0;break}default:c[g>>2]=0}i=h;return c[g>>2]|0}function Bk(a,b,d,f,g){a=a|
0;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;o=i;i=i+32|0;h=o+20|0;j=o+16|0;k=o+12|0;l=o+8|0;m=o+4|0;n=o;c[j>
x3e;2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=f;c[n>>2]=g;if(!((c[l>>2]|0)!=0&(c[m
>>2]|0)!=0&(c[n>>2]|0)!=0)){c[h>>2]=6;d=c[h>>2]|0;i=o;return d|0}if((c[k>>
;2]|0)>>>0>=(e[(c[j>>2]|0)+152>>1]|0)>>>0){c[h>>2]=142;d=c[h>
;>2]|0;i=o;return d|0}else{c[c[l>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>>
;2]<<4)>>2];c[c[m>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>>
;2]<<4)+8>>2];c[c[n>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>
x3e;2]<<4)+12>>2];c[h>>2]=0;d=c[h>>2]|0;i=o;return d|0}return 0}function Ck(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,z=0,A=0;A=i;i=i+80|0;g=A+72|0;h=A+68|0;r=A+64|0;m=A+60|
0;l=A+56|0;x=A+52|0;s=A+48|0;p=A+44|0;t=A+40|0;n=A+36|0;j=A+32|0;y=A+28|0;w=A+24|0;v=A+20|0;q=A+16|0;u=A+12|0;o=A+8|0;k=A+4|0;z=
A;c[h>>2]=f;c[x>>2]=0;if(c[(c[h>>2]|0)+700>>2]|0){c[g>>2]=c[(c[h>>2]|
0)+700>>2];z=c[g>>2]|0;i=A;return z|0}c[m>>2]=-1;c[l>>2]=-1;c[r>>2]=0;while(1){
if((c[r>>2]|0)>=(e[(c[h>>2]|0)+344>>1]|0|0))break;c[s>>2]=(c[(c[h>>2]|0)+
348+12>>2]|0)+((c[r>>2]|0)*20|0);if((e[(c[s>>2]|0)+6>>1]|0|0)==6?(e[(c[s>>2]|0
)+8>>1]|0|0)>0:0){if(((e[c[s>>2]>>1]|0|0)==3?(e[(c[s>>2]|0)+2>>1]|0|0)==1
:0)?(e[(c[s>>2]|0)+4>>1]|0|0)==1033:0)c[m>>2]=c[r>>2];if(((e[c[s>>2]>>
;1]|0|0)==1?(e[(c[s>>2]|0)+2>>1]|0|0)==0:0)?(e[(c[s>>2]|0)+4>>1]|0|0)==0:0)c[l>>
;2]=c[r>>2]}c[r>>2]=(c[r>>2]|0)+1}do if((c[m>>2]|0)!=-1){c[p>>2]=c[(c[h>
x3e;2]|0)+100>>2];c[t>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[m>>2]|0)*20|0);c[n
x3e;>2]=(e[(c[t>>2]|0)+8>>1]|0|0)/2|0;c[j>>2]=0;c[j>>2]=c[j>>2];c[x>
x3e;2]=bc(c[p>>2]|0,(e[(c[t>>2]|0)+8>>1]|0)+1|0,j)|0;if(!(c[j>>2]|0)){c[y>>2]=
c[(c[h>>2]|0)+348+16>>2];c[w>>2]=c[x>>2];c[v>>2]=c[(c[t>>2]|0)+16>
;>2];z=Kc(c[y>>2]|0,c[(c[t>>2]|0)+12>>2]|0)|0;c[j>>2]=z;if((z|0)==0?(z=ee(c[y>
x3e;2]|0,e[(c[t>>2]|0)+8>>1]|0)|0,c[j>>2]=z,(z|0)==0):0){c[v>>2]=c[(c[y>>2]|0)+
32>>2];while(1){if((c[n>>2]|0)>>>0<=0)break;if(((d[c[v>>2]>>0]|0|0)==
0?(d[(c[v>>2]|0)+1>>0]|0|0)>=32:0)?(d[(c[v>>2]|0)+1>>0]|0|0)<128:0){u=a[(c[v
x3e;>2]|0)+1>>0]|0;z=c[w>>2]|0;c[w>>2]=z+1;a[z>>0]=u}c[n>>2]=(c[n>
x3e;2]|0)+-1;c[v>>2]=(c[v>>2]|0)+2}a[c[w>>2]>>0]=0;ge(c[y>>2]|0);break}Fb(c[p
x3e;>2]|0,c[x>>2]|0);c[x>>2]=0;b[(c[t>>2]|0)+8>>1]=0;c[(c[t>>2]|0)+12>
;>2]=0;Fb(c[p>>2]|0,c[(c[t>>2]|0)+16>>2]|0);c[(c[t>>2]|0)+16>>2]=0}}else
if((c[l>>2]|0)!=-1?(c[q>>2]=c[(c[h>>2]|0)+100>>2],c[u>>2]=(c[(c[h>>2
]|0)+348+12>>2]|0)+((c[l>>2]|0)*20|0),c[o>>2]=e[(c[u>>2]|0)+8>>1],c[k>>
;2]=0,c[k>>2]=c[k>>2],c[x>>2]=bc(c[q>>2]|0,(c[o>>2]|0)+1|0,k)|0,(c[k>>
;2]|0)==0):0){c[z>>2]=c[(c[h>>2]|0)+348+16>>2];y=Kc(c[z>>2]|0,c[(c[u>>2]|0)+12
>>2]|0)|0;c[k>>2]=y;if((y|0)==0?(z=Rc(c[z>>2]|0,c[x>>2]|0,c[o>>2]|0)|0,c[k>
;>2]=z,(z|0)==0):0){a[(c[x>>2]|0)+(c[o>>2]|0)>>0]=0;break}c[(c[u>>2]|0)+12>>
;2]=0;b[(c[u>>2]|0)+8>>1]=0;Fb(c[q>>2]|0,c[(c[u>>2]|0)+16>>2]|0);c[(c[u>
x3e;2]|0)+16>>2]=0;Fb(c[q>>2]|0,c[x>>2]|0);c[x>>2]=0}while(0);c[(c[h>>2]|0)+700
>>2]=c[x>>2];c[g>>2]=c[x>>2];z=c[g>>2]|0;i=A;return z|0}function Dk(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;m=k+20|0;l=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[m>>
;2]=a;c[l>>2]=b;c[f>>2]=d;c[g>>2]=e;c[h>>2]=Ek(c[m>>2]|0,c[l>>2]|0,j
)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=k;return m|0}pe(c[f>>2]|0,c[j>>2]|0,c[g>>2]|0)|
0;m=c[h>>2]|0;i=k;return m|0}function Ek(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,r=0,s=0,t=0;
t=i;i=i+48|0;h=t+36|0;j=t+32|0;k=t+28|0;l=t+24|0;m=t+20|0;p=t+16|0;n=t+12|0;q=t+8|0;r=t+4|0;o=t+40|0;s=t;c[j>>2]=d;c[k
>>2]=f;c[l>>2]=g;if(!(c[j>>2]|0)){c[h>>2]=35;s=c[h>>2]|0;i=t;return s|0}if((c[
k>>2]|0)>>>0>=(e[(c[j>>2]|0)+260+4>>1]|0)>>>0){c[h>>2
]=16;s=c[h>>2]|0;i=t;return s|0}c[q>>2]=c[(c[j>>2]|0)+536>>2];if(!(c[q>>2]|0)){
c[h>>2]=7;s=c[h>>2]|0;i=t;return s|0}c[p>>2]=(c[j>>2]|0)+628;f=Ta[c[(c[q>>2]|0
)+16>>2]&63](0)|0;c[c[l>>2]>>2]=f;c[n>>2]=c[(c[j>>2]|0)+468>>2];
do if((c[n>>2]|0)==65536){if((c[k>>2]|0)>>>0<258){s=Ta[c[(c[q>>2]|0)+16>
x3e;2]&63](c[k>>2]|0)|0;c[c[l>>2]>>2]=s}}else{if((c[n>>2]|0)!=131072){if((c[n>
x3e;2]|0)!=163840)break;c[s>>2]=(c[p>>2]|0)+4;if((a[c[p>>2]>>0]|0)==0?(c[m>>2]=
Fk(c[j>>2]|0)|0,c[m>>2]|0):0)break;if((c[k>>2]|0)>>>0>=(e[c[s>>2]>
;>1]|0)>>>0)break;c[k>>2]=(c[k>>2]|0)+(a[(c[(c[s>>2]|0)+4>>2]|0)+(c[
k>>2]|0)>>0]|0);s=Ta[c[(c[q>>2]|0)+16>>2]&63](c[k>>2]|0)|0;c[c[l>>
;2]>>2]=s;break}c[r>>2]=(c[p>>2]|0)+4;if((a[c[p>>2]>>0]|0)==0?(c[m>>
2]=Fk(c[j>>2]|0)|0,c[m>>2]|0):0)break;if((c[k>>2]|0)>>>0<(e[c[r>>2]
x3e;>1]|0)>>>0){b[o>>1]=b[(c[(c[r>>2]|0)+4>>2]|0)+(c[k>>2]<<
;1)>>1]|0;if((e[o>>1]|0)<258){s=Ta[c[(c[q>>2]|0)+16>>2]&63](e[o>>1]|
0)|0;c[c[l>>2]>>2]=s;break}else{c[c[l>>2]>>2]=c[(c[(c[r>>2]|0)+8>>2]|
0)+((e[o>>1]|0)-258<<2)>>2];break}}}while(0);c[h>>2]=0;s=c[h>>2]|0;i=t;return
s|0}function Fk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;j=k+16|0;e=k+12|0;f=k+8|0;g=k+4|0;h=k;c[d>
x3e;2]=b;c[j>>2]=c[(c[d>>2]|0)+104>>2];c[e>>2]=Wa[c[(c[d>>2]|0)+508>>
;2]&31](c[d>>2]|0,1886352244,c[j>>2]|0,g)|0;if(c[e>>2]|0){j=c[e>>2]|0;i=k;return j|
0}b=Mc(c[j>>2]|0)|0;c[h>>2]=b+(c[g>>2]|0);c[f>>2]=c[(c[d>>2]|0)+468>>
;2];g=Qc(c[j>>2]|0,32)|0;c[e>>2]=g;if(g|0){j=c[e>>2]|0;i=k;return j|0}do if((c[f>>2]|0)!=
131072)if((c[f>>2]|0)==163840){c[e>>2]=Hk(c[d>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;break
}else{c[e>>2]=3;break}else c[e>>2]=Gk(c[d>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;while(0
);a[(c[d>>2]|0)+628>>0]=1;j=c[e>>2]|0;i=k;return j|0}function Gk(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,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=i;i=i+64|0;l=A+52|0;m=A+48|0;n=A+44|0;o=A+40|0;s=A+36|
0;p=A+32|0;w=A+28|0;x=A+60|0;q=A+24|0;v=A+20|0;j=A+16|0;k=A+12|0;h=A+8|0;t=A+58|0;r=A+4|0;y=A;u=A+56|0;c[m>>2]=d;c[n
x3e;>2]=f;c[o>>2]=g;c[s>>2]=c[(c[n>>2]|0)+28>>2];c[q>>2]=0;c[v>>
;2]=0;c[w>>2]=(Pc(c[n>>2]|0,p)|0)&65535;do if(!(c[p>>2]|0)){if((c[w>>2]|0)>(e[(
c[m>>2]|0)+260+4>>1]|0|0)){c[p>>2]=3;break}c[q>>2]=hc(c[s>>2]|0,2,0,c[w>
x3e;2]|0,0,p)|0;a:do if((c[p>>2]|0)==0?(f=ee(c[n>>2]|0,c[w>>2]<<1)|0,c[p>>2]=f
,(f|0)==0):0){c[j>>2]=0;while(1){d=c[n>>2]|0;if((c[j>>2]|0)>=(c[w>>2]|0))break;f=ie
(d)|0;b[(c[q>>2]|0)+(c[j>>2]<<1)>>1]=f;c[j>>2]=(c[j>>2]|0)+1}ge(d);b
[x>>1]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[w>>2]|0))break;c[h>>2]=e[(
c[q>>2]|0)+(c[k>>2]<<1)>>1];if((c[h>>2]|0)>=258?(c[h>>2]=(c[h
x3e;>2]|0)-257,(c[h>>2]|0)>(e[x>>1]|0|0)):0)b[x>>1]=c[h>>2];c[k>>2]=(
c[k>>2]|0)+1}c[v>>2]=hc(c[s>>2]|0,4,0,e[x>>1]|0,0,p)|0;if(!(c[p>>2]|0)){b[t>
;>1]=0;while(1){if((e[t>>1]|0|0)>=(e[x>>1]|0|0)){z=28;break}k=Mc(c[n>>2]|0)|0;if((k|0)
x3e;=(c[o>>2]|0)){z=28;break}c[r>>2]=(ke(c[n>>2]|0,p)|0)&255;if(c[p>>2]|0)break;if(!((
c[r>>2]|0)<=(c[o>>2]|0)?(k=Mc(c[n>>2]|0)|0,(k|0)<=((c[o>>2]|0)-(c[r>>
;2]|0)|0)):0)){k=c[o>>2]|0;if(0>(k-(Mc(c[n>>2]|0)|0)|0))d=0;else{d=c[o>>2]|0;d=d-(Mc(c[n>
;>2]|0)|0)|0}c[r>>2]=d}k=hc(c[s>>2]|0,1,0,(c[r>>2]|0)+1|0,0,p)|0;c[(c[v>>2]|0)+((e[
t>>1]|0)<<2)>>2]=k;if(c[p>>2]|0)break;k=Rc(c[n>>2]|0,c[(c[v>>2]|0)+((
e[t>>1]|0)<<2)>>2]|0,c[r>>2]|0)|0;c[p>>2]=k;if(k|0)break;a[(c[(c[v>>
2]|0)+((e[t>>1]|0)<<2)>>2]|0)+(c[r>>2]|0)>>0]=0;b[t>>1]=(b[t>
x3e;1]|0)+1<<16>>16}b:do if((z|0)==28){c:do if((e[t>>1]|0|0)<(e[x>>1]|0|0))while(1){
if((e[t>>1]|0|0)>=(e[x>>1]|0|0))break c;z=hc(c[s>>2]|0,1,0,1,0,p)|0;c[(c[v>>2]|0)+((
e[t>>1]|0)<<2)>>2]=z;if(c[p>>2]|0)break b;a[c[(c[v>>2]|0)+((e[t>>1]|
0)<<2)>>2]>>0]=0;b[t>>1]=(b[t>>1]|0)+1<<16>>16}while(0);c[
y>>2]=(c[m>>2]|0)+628+4;b[c[y>>2]>>1]=c[w>>2];b[(c[y>>2]|0)+2>
x3e;1]=b[x>>1]|0;c[(c[y>>2]|0)+4>>2]=c[q>>2];c[(c[y>>2]|0)+8>>2]=c[v
>>2];c[l>>2]=0;z=c[l>>2]|0;i=A;return z|0}while(0);b[u>>1]=0;while(1){if((e[u>>
;1]|0|0)>=(e[x>>1]|0|0))break a;Fb(c[s>>2]|0,c[(c[v>>2]|0)+((e[u>>1]|0)<<
2)>>2]|0);c[(c[v>>2]|0)+((e[u>>1]|0)<<2)>>2]=0;b[u>>1]=(b[u>>
;1]|0)+1<<16>>16}}}while(0);Fb(c[s>>2]|0,c[v>>2]|0);c[v>>2]=0;Fb(c[s>>
;2]|0,c[q>>2]|0);c[q>>2]=0}while(0);c[l>>2]=c[p>>2];z=c[l>>2]|0;i=A;return z|0
}function Hk(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,r=0,s=0,t=0,u=0;t=i;i=i+48|0;h=t+40|0;j=t+36|0;k=t
+32|0;u=t+28|0;n=t+24|0;l=t+20|0;p=t+16|0;q=t+12|0;o=t+8|0;m=t+4|0;r=t;c[j>>2]=d;c[k>>2]=f;c[u>>2]=
g;c[n>>2]=c[(c[k>>2]|0)+28>>2];c[q>>2]=0;c[u>>2]=c[u>>2];c[p>
x3e;2]=(Pc(c[k>>2]|0,l)|0)&65535;do if(!(c[l>>2]|0)){if((c[p>>2]|0)>258?1:(c[p>>
;2]|0)>(e[(c[j>>2]|0)+260+4>>1]|0)){c[l>>2]=3;break}c[q>>2]=hc(c[n>>2]|0,
1,0,c[p>>2]|0,0,l)|0;do if((c[l>>2]|0)==0?(u=Rc(c[k>>2]|0,c[q>>2]|0,c[p>>2]|0)|
0,c[l>>2]=u,(u|0)==0):0){c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[p>>2]|0))break;c[m
x3e;>2]=(c[o>>2]|0)+(a[(c[q>>2]|0)+(c[o>>2]|0)>>0]|0);if((c[m>>2]|0)<
;0){s=10;break}if((c[m>>2]|0)>(c[p>>2]|0)){s=10;break}c[o>>2]=(c[o>>2]|0)+1}if((s|0
)==10){c[l>>2]=3;break}c[r>>2]=(c[j>>2]|0)+628+4;b[c[r>>2]>>1]=c[p>>
2];c[(c[r>>2]|0)+4>>2]=c[q>>2];c[h>>2]=0;u=c[h>>2]|0;i=t;return u|0}while(0);Fb
(c[n>>2]|0,c[q>>2]|0);c[q>>2]=0}while(0);c[h>>2]=c[l>>2];u=c[h>>2]|0
;i=t;return u|0}function Ik(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;m=i;i=i+32|0;k=m+28|0;d=m+24|0;e=m+20|0;j=m
+16|0;l=m+12|0;h=m+8|0;g=m+4|0;f=m;c[d>>2]=a;c[e>>2]=b;c[j>>2]=c[d>>2];c[h>>2]=-
1;if((c[(c[j>>2]|0)+16>>2]|0)<0){c[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}if((c[(c[j>
;>2]|0)+16>>2]|0)>>>0<4294967295)c[h>>2]=c[(c[j>>2]|0)+16>>2];c
[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[h>>2]|0)>>>0){d=11;break
}c[f>>2]=Ek(c[d>>2]|0,c[l>>2]|0,g)|0;if((c[f>>2]|0)==0?(Kr(c[e>>2]|0,c[g>
x3e;2]|0)|0)==0:0){d=9;break}c[l>>2]=(c[l>>2]|0)+1}if((d|0)==9){c[k>>2]=c[l>>2];l=c[k>
;>2]|0;i=m;return l|0}else if((d|0)==11){c[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}return 0}function Jk(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;l=i;i=i+48|0;e=l+32|0;f=l+28|0;g=l+24|0;h=l+16|0;k=l+8|0;j=l;c[e>>
;2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=Kk(c[e>>2]|0,11392,k)|0;if(c[j>>2]|0){k=c[j
x3e;>2]|0;i=l;return k|0}c[j>>2]=Kk(c[e>>2]|0,11409,h)|0;if(c[j>>2]|0){k=c[j>>2]|0;
i=l;return k|0}if((c[k>>2]|0)==1?(c[h>>2]|0)==1:0){c[c[f>>2]>>2]=c[h+4>>2];c[c
[g>>2]>>2]=c[k+4>>2];k=c[j>>2]|0;i=l;return k|0}c[j>>2]=6;k=c[j>>2]|
0;i=l;return k|0}function Kk(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;x=
i;i=i+64|0;g=x+56|0;h=x+52|0;j=x+48|0;m=x+44|0;s=x+40|0;o=x+36|0;q=x+32|0;n=x+28|0;t=x+24|0;r=x+20|0;l=x+16|0;k=x+12|0;u=x+8|0;p
=x+4|0;v=x;c[g>>2]=a;c[h>>2]=b;c[j>>2]=f;c[m>>2]=(c[g>>2]|0)+792;c[s>>
;2]=c[(c[g>>2]|0)+88>>2];c[o>>2]=0;c[c[j>>2]>>2]=0;if((d[(c[m>>2]|0)+
20>>0]|0|0)==0?(c[o>>2]=Lk(c[g>>2]|0,c[(c[g>>2]|0)+104>>2]|0)|0,c[o>>
;2]|0):0){w=c[o>>2]|0;i=x;return w|0}c[n>>2]=c[(c[m>>2]|0)+16>>2];c[q>>2]=(c[c
[m>>2]>>2]|0)+8;c[t>>2]=(c[q>>2]|0)+(c[n>>2]<<2);c[o>>2]=6
;if((c[s>>2]|0)==0|(c[h>>2]|0)==0){w=c[o>>2]|0;i=x;return w|0}c[r>>2]=cs(c[h>>
2]|0)|0;if(!((c[r>>2]|0)!=0&(c[n>>2]|0)>>>0>0)){w=c[o>>2]|0;i=x;return w|
0}while(1){c[q>>2]=(c[q>>2]|0)+2;c[l>>2]=(((d[(c[q>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[q>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[q>>2]=(c[q>
x3e;2]|0)+2;c[k>>2]=(((d[(c[q>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[q>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535;g=c[k>>2]|0;if((c[l>>2]|0)==(e[(c[s>>2]|
0)+12+2>>1]|0|0))break;c[t>>2]=(c[t>>2]|0)+(g*10|0);c[n>>2]=(c[n>>2]|0)+-1;if((
c[n>>2]|0)>>>0<=0){w=20;break}}if((w|0)==20){w=c[o>>2]|0;i=x;return w|0}c[n>>2
]=g;c[q>>2]=c[t>>2];a:while(1){if((c[n>>2]|0)>>>0<=0){w=20;break}c[u>>
;2]=(((d[(c[q>>2]|0)+4>>0]|0)&65535)<<8|((d[(c[q>>2]|0)+4+1>>0]|0)&65535
)<<0)&65535;b:do if(((c[u>>2]&16|0?(c[p>>2]=(d[c[q>>2]>>0]|0)<
x3c;24|(d[(c[q>>2]|0)+1>>0]|0)<<16|(d[(c[q>>2]|0)+2>>0]|0)<<8|(d[(c[
q>>2]|0)+3>>0]|0)<<0,c[v>>2]=(d[(c[q>>2]|0)+6>>0]|0)<<24|(
d[(c[q>>2]|0)+6+1>>0]|0)<<16|(d[(c[q>>2]|0)+6+2>>0]|0)<<8|(d[(c[q>
;>2]|0)+6+3>>0]|0)<<0,(c[p>>2]|0)>>>0<(c[(c[m>>2]|0)+12>
x3e;2]|0)>>>0):0)?(c[r>>2]|0)>>>0<((c[(c[m>>2]|0)+12>>2]|0)-(c[
p>>2]|0)|0)>>>0:0)?(Lr(c[h>>2]|0,(c[(c[m>>2]|0)+8>>2]|0)+(c[p>>
2]|0)|0,(c[(c[m>>2]|0)+12>>2]|0)-(c[p>>2]|0)|0)|0)==0:0){switch(c[u>>2]&15|0){case
2:{w=17;break a}case 3:{w=18;break a}case 1:case 0:break;default:break b}if((c[v>>2]|0)>>>0<(c[(c[
m>>2]|0)+12>>2]|0)>>>0?Ur((c[(c[m>>2]|0)+8>>2]|0)+(c[v>>2]|0)|0
,0,c[(c[m>>2]|0)+12>>2]|0)|0:0){w=16;break a}}while(0);c[q>>2]=(c[q>>2]|0)+10;c[n>
x3e;2]=(c[n>>2]|0)+-1}if((w|0)==16){c[c[j>>2]>>2]=1;c[(c[j>>2]|0)+4>>2]=(c[(c[
m>>2]|0)+8>>2]|0)+(c[v>>2]|0);c[o>>2]=0;w=c[o>>2]|0;i=x;return w|0}else if((w|
0)==17){c[c[j>>2]>>2]=2;c[(c[j>>2]|0)+4>>2]=c[v>>2];c[o>>2]=0;w=c[o
x3e;>2]|0;i=x;return w|0}else if((w|0)==18){c[c[j>>2]>>2]=3;c[(c[j>>2]|0)+4>>2]=c[v
>>2];c[o>>2]=0;w=c[o>>2]|0;i=x;return w|0}else if((w|0)==20){w=c[o>>2]|0;i=x;return w|0}
return 0}function Lk(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;r=i;i=i+48|0;s=r+44|0;f=r+40|0;g=r
+36|0;k=r+32|0;j=r+28|0;n=r+24|0;q=r+20|0;m=r+16|0;p=r+12|0;h=r+8|0;o=r+4|0;l=r;c[s>>2]=b;c[f>>2]=e;c[g>
;>2]=(c[s>>2]|0)+792;e=c[g>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12
>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[j>>2]=lk(c[s>>2]|0,1111770656,c[f>>
;2]|0,k)|0;if(!((c[j>>2]|0)!=0|(c[k>>2]|0)>>>0<8)?(s=de(c[f>>2]|0,c[k>>
;2]|0,c[g>>2]|0)|0,c[j>>2]=s,(s|0)==0):0){c[(c[g>>2]|0)+4>>2]=(c[c[g>>2]>
x3e;2]|0)+(c[k>>2]|0);c[n>>2]=c[c[g>>2]>>2];c[n>>2]=(c[n>>2]|0)+2;c[
q>>2]=(((d[(c[n>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[n>>2]|0)+-2+1>>
;0]|0)&65535)<<0)&65535;c[n>>2]=(c[n>>2]|0)+2;c[m>>2]=(((d[(c[n>>2]|
0)+-2>>0]|0)&65535)<<8|((d[(c[n>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535
;c[n>>2]=(c[n>>2]|0)+4;c[p>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n
x3e;>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>
;2]|0)+-4+3>>0]|0)<<0;if((!((c[q>>2]|0)!=1|(c[p>>2]|0)>>>0<8)?((((c[
p>>2]|0)-8|0)>>>0)/4|0)>>>0>=(c[m>>2]|0)>>>0:0)?((c[p>
;>2]|0)+1|0)>>>0<=(c[k>>2]|0)>>>0:0){c[(c[g>>2]|0)+16>>2]=
c[m>>2];c[(c[g>>2]|0)+8>>2]=(c[c[g>>2]>>2]|0)+(c[p>>2]|0);c[(c[g>
;>2]|0)+12>>2]=(c[k>>2]|0)-(c[p>>2]|0);c[h>>2]=c[(c[g>>2]|0)+16>>
;2];c[n>>2]=(c[c[g>>2]>>2]|0)+8;c[o>>2]=(c[n>>2]|0)+(c[h>>2]<
x3c;2);while(1){if((c[h>>2]|0)>>>0<=0)break;c[l>>2]=(((d[(c[n>>2]|0)+2>
x3e;0]|0)&65535)<<8|((d[(c[n>>2]|0)+2+1>>0]|0)&65535)<<0)&65535;c[o>
x3e;2]=(c[o>>2]|0)+((c[l>>2]|0)*10|0);c[n>>2]=(c[n>>2]|0)+4;c[h>>2]=(c[h>
x3e;2]|0)+-1}if((c[o>>2]|0)>>>0<=(c[(c[g>>2]|0)+8>>2]|0)>>>0){a
[(c[g>>2]|0)+20>>0]=1;s=c[j>>2]|0;i=r;return s|0}}fe(c[f>>2]|0,c[g>>2]|0);s=c[
g>>2]|0;c[s>>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[j>>2]=8;s=c[j>>2]|0;i=r;return s|0}c[j>>2]=8;s=c[j>>2]|0;i=r;return
s|0}function Mk(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;h=d+4|0;g=d;c[f>>2]=a;c[e>
;>2]=b;c[h>>2]=c[f>>2];c[g>>2]=c[(c[h>>2]|0)+12>>2];b=Ya[c[(c[g>>
;2]|0)+48>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return b|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;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;c[k>>2]=c[k>>2];c[j>>2]=c[j>>2];c[h>>2]=c[h>>
;2];c[g>>2]=c[g>>2];i=f;return 7}function Ok(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;c[h>>2]=c[h>>2];c[g>>2]=
c[g>>2];c[f>>2]=c[f>>2];i=e;return 7}function Pk(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=Qk(c[f>>2]|0,c[e>>2]|0,1751474532)|0;i=d;return b|0}function
Qk(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+16|0;f=j+12|0;k=j+8|0;g=j+4|0;h=j;c[e>>2]=a;
c[f>>2]=b;c[k>>2]=d;c[g>>2]=Wa[c[(c[e>>2]|0)+508>>2]&31](c[e>>2
]|0,c[k>>2]|0,c[f>>2]|0,0)|0;if(c[g>>2]|0){k=c[g>>2]|0;i=j;return k|0}c[h>>2]=(
c[e>>2]|0)+160;c[g>>2]=le(c[f>>2]|0,7560,c[h>>2]|0)|0;k=c[g>>2]|0;i=j;return k
|0}function Rk(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;f=l+16|0;g=l+12|0;m=l+20|0;h=l+8|0;j=l+4|0;
k=l;c[f>>2]=b;c[g>>2]=d;a[m>>0]=e;b=c[f>>2]|0;do if(a[m>>0]|0){c[k>>
2]=b+300;c[h>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1986553185,c[g>>2
]|0,0)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=l;return m|0}else{c[j>>2]=c[k>>2];break}}else{c[h
x3e;>2]=Wa[c[b+508>>2]&31](c[f>>2]|0,1751672161,c[g>>2]|0,0)|0;if(c[h>>2]|0){m
=c[h>>2]|0;i=l;return m|0}else{c[j>>2]=(c[f>>2]|0)+216;break}}while(0);m=le(c[g>>2]|0,7644
,c[j>>2]|0)|0;c[h>>2]=m;if(m|0){m=c[h>>2]|0;i=l;return m|0}c[(c[j>>2]|0)+36>>2
]=0;c[(c[j>>2]|0)+40>>2]=0;m=c[h>>2]|0;i=l;return m|0}function Sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0
,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Wa[c[(c[d>>2]|0)+508
x3e;>2]&31](c[d>>2]|0,1668112752,c[e>>2]|0,(c[d>>2]|0)+504|0)|0;if(c[f>>2]|0){
b=c[f>>2]|0;i=g;return b|0}b=de(c[e>>2]|0,c[(c[d>>2]|0)+504>>2]|0,(c[d>>2]|0)+
500|0)|0;c[f>>2]=b;if(!b){b=c[f>>2]|0;i=g;return b|0}c[(c[d>>2]|0)+504>>2]=0;b=c[f>
x3e;2]|0;i=g;return b|0}function Tk(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;k=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>
x3e;2]=a;c[f>>2]=d;c[h>>2]=(c[k>>2]|0)+260;c[g>>2]=Wa[c[(c[k>>2]|0)+508>
x3e;2]&31](c[k>>2]|0,1835104368,c[f>>2]|0,0)|0;if(c[g>>2]|0){k=c[g>>2]|0;i=j;return
k|0}k=le(c[f>>2]|0,7720,c[h>>2]|0)|0;c[g>>2]=k;if(k|0){k=c[g>>2]|0;i=j;return k|0}b[(c[
h>>2]|0)+6>>1]=0;b[(c[h>>2]|0)+8>>1]=0;b[(c[h>>2]|0)+10>>1]=0;b[(c[h
>>2]|0)+12>>1]=0;b[(c[h>>2]|0)+14>>1]=0;b[(c[h>>2]|0)+16>>1]=0;b[(c[
h>>2]|0)+18>>1]=0;b[(c[h>>2]|0)+20>>1]=0;b[(c[h>>2]|0)+22>>1]=0;b[(c
[h>>2]|0)+24>>1]=0;b[(c[h>>2]|0)+26>>1]=0;b[(c[h>>2]|0)+28>>1]=0;b[(
c[h>>2]|0)+30>>1]=0;if((c[c[h>>2]>>2]|0)<65536){k=c[g>>2]|0;i=j;return k|
0}k=le(c[f>>2]|0,7736,c[h>>2]|0)|0;c[g>>2]=k;if(k|0){k=c[g>>2]|0;i=j;return k|0}if((e[(c
[h>>2]|0)+20>>1]|0|0)<64)b[(c[h>>2]|0)+20>>1]=64;if((e[(c[h>>2]|0)+16>
;>1]|0)>>>0>65531)b[(c[h>>2]|0)+16>>1]=-5;if((e[(c[h>>2]|0)+30>>
;1]|0|0)<=100){k=c[g>>2]|0;i=j;return k|0}b[(c[h>>2]|0)+30>>1]=100;k=c[g>>2]|0;i=j;
return k|0}function Uk(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[
g>>2]=d;c[h>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1330851634,c[g>
;>2]|0,0)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=k;return d|0}c[j>>2]=(c[f>>2]|0)+368;d=le(c
[g>>2]|0,7796,c[j>>2]|0)|0;c[h>>2]=d;if(d|0){d=c[h>>2]|0;i=k;return d|0}c[(c[j>>
;2]|0)+80>>2]=0;c[(c[j>>2]|0)+84>>2]=0;b[(c[j>>2]|0)+88>>1]=0;b[(c[j>>
;2]|0)+90>>1]=0;b[(c[j>>2]|0)+92>>1]=0;b[(c[j>>2]|0)+94>>1]=0;b[(c[j>>
;2]|0)+96>>1]=0;if((e[c[j>>2]>>1]|0|0)<1){d=c[h>>2]|0;i=k;return d|0}d=le(c[g>
x3e;2]|0,7972,c[j>>2]|0)|0;c[h>>2]=d;if(d|0){d=c[h>>2]|0;i=k;return d|0}if((e[c[j>>2]>
;>1]|0|0)<2){d=c[h>>2]|0;i=k;return d|0}c[h>>2]=le(c[g>>2]|0,7988,c[j>>2]|0)|0
;d=c[h>>2]|0;i=k;return d|0}function Vk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;j=h+12|0;e=
h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[g>>2]=(c[j>>2]|0)+468;c[f>>2]=Wa[c[(c[
j>>2]|0)+508>>2]&31](c[j>>2]|0,1886352244,c[e>>2]|0,0)|0;if(c[f>>2]|0){c[
d>>2]=c[f>>2];j=c[d>>2]|0;i=h;return j|0}j=le(c[e>>2]|0,8016,c[g>>2]|0)|0;c[f
x3e;>2]=j;if(j|0){c[d>>2]=c[f>>2];j=c[d>>2]|0;i=h;return j|0}else{c[d>>2]=0;j=c[d
x3e;>2]|0;i=h;return j|0}return 0}function Wk(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,q=0,r=0;r=i;i=i+
48|0;f=r+40|0;g=r+36|0;k=r+32|0;l=r+28|0;q=r+24|0;p=r+20|0;n=r+16|0;m=r+12|0;h=r+8|0;o=r+4|0;j=r;c[f>>2]=a;c[g>
x3e;2]=d;c[l>>2]=c[(c[g>>2]|0)+28>>2];c[o>>2]=(c[f>>2]|0)+348;c[(c[o>>
;2]|0)+16>>2]=c[g>>2];c[k>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>
;2]|0,1851878757,c[g>>2]|0,p)|0;if(c[k>>2]|0){q=c[k>>2]|0;i=r;return q|0}c[q>>2]=Mc(c[g
x3e;>2]|0)|0;d=le(c[g>>2]|0,8060,c[o>>2]|0)|0;c[k>>2]=d;if(d|0){q=c[k>>2]|0;i=r;return
q|0}c[n>>2]=(c[q>>2]|0)+6+((c[(c[o>>2]|0)+4>>2]|0)*12|0);c[m>>2]=(c[q>
x3e;2]|0)+(c[p>>2]|0);if((c[n>>2]|0)>>>0>(c[m>>2]|0)>>>0){c[k
x3e;>2]=145;q=c[k>>2]|0;i=r;return q|0}c[h>>2]=c[(c[o>>2]|0)+4>>2];c[(c[o>>
;2]|0)+4>>2]=0;p=hc(c[l>>2]|0,20,0,c[h>>2]|0,0,k)|0;c[(c[o>>2]|0)+12>>2]=p;if(
c[k>>2]|0){q=c[k>>2]|0;i=r;return q|0}p=ee(c[g>>2]|0,(c[h>>2]|0)*12|0)|0;c[k>>
2]=p;if(p|0){q=c[k>>2]|0;i=r;return q|0}c[j>>2]=c[(c[o>>2]|0)+12>>2];while(1){if((c[h>
;>2]|0)>>>0<=0)break;p=le(c[g>>2]|0,8080,c[j>>2]|0)|0;c[k>>2]=p;do if((p|
0)==0?e[(c[j>>2]|0)+8>>1]|0|0:0){p=(c[j>>2]|0)+12|0;c[p>>2]=(c[p>>2]|0)+((c[q
x3e;>2]|0)+(c[(c[o>>2]|0)+8>>2]|0));if((c[(c[j>>2]|0)+12>>2]|0)>>>0
x3e;=(c[n>>2]|0)>>>0?((c[(c[j>>2]|0)+12>>2]|0)+(e[(c[j>>2]|0)+8>>
;1]|0)|0)>>>0<=(c[m>>2]|0)>>>0:0){c[j>>2]=(c[j>>2]|0)+20;break}
c[(c[j>>2]|0)+12>>2]=0;b[(c[j>>2]|0)+8>>1]=0}while(0);c[h>>2]=(c[h>>
2]|0)+-1}c[(c[o>>2]|0)+4>>2]=((c[j>>2]|0)-(c[(c[o>>2]|0)+12>>2]|0)|0)/20|0;ge(
c[g>>2]|0);b[(c[f>>2]|0)+344>>1]=c[(c[o>>2]|0)+4>>2];q=c[k>>2]|0;i=r
;return q|0}function Xk(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;j=h+16|0;f=h+12|0;g=h+8|0;e=h+4|0;d=h;c[j>>2
]=a;c[f>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+8>>2];c[g>>2]=(c[j>>2]|0)+348
;c[e>>2]=c[(c[g>>2]|0)+12>>2];c[d>>2]=c[(c[g>>2]|0)+4>>2];if(!(c[(c[
g>>2]|0)+12>>2]|0)){j=c[g>>2]|0;j=j+4|0;c[j>>2]=0;j=c[g>>2]|0;b[j>>1
]=0;j=c[g>>2]|0;j=j+8|0;c[j>>2]=0;i=h;return}while(1){a=c[f>>2]|0;if((c[d>>2]|0)>
x3e;>0<=0)break;Fb(a,c[(c[e>>2]|0)+16>>2]|0);c[(c[e>>2]|0)+16>>2]=0;b[(c[e>
;>2]|0)+8>>1]=0;c[d>>2]=(c[d>>2]|0)+-1;c[e>>2]=(c[e>>2]|0)+20}Fb(a,c[(c[g
>>2]|0)+12>>2]|0);c[(c[g>>2]|0)+12>>2]=0;j=c[g>>2]|0;j=j+4|0;c[j>>2]=
0;j=c[g>>2]|0;b[j>>1]=0;j=c[g>>2]|0;j=j+8|0;c[j>>2]=0;i=h;return}function Yk(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[f>>2]=c[f>>2];c[e
x3e;>2]=c[e>>2];i=d;return 7}function Zk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>
;2]=c[d>>2];i=b;return}function _k(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;x=i;i=i+80|0;e=x+68|0;f=x+64|0;l=x+60|0;w=x+56|0;t=x+52|0;u=x+48|0;o=x+44|0;q=x+40|0;g=x+36|0;s=x+32|0;p=x+28|0;m=
x+24|0;j=x+20|0;v=x+16|0;n=x+12|0;h=x+8|0;r=x+4|0;k=x;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;c[s>>
;2]=0;c[l>>2]=Wa[c[(c[e>>2]|0)+508>>2]&31](c[e>>2]|0,1801810542,c[f>>2]|0
,w)|0;if(c[l>>2]|0){w=c[l>>2]|0;i=x;return w|0}if((c[w>>2]|0)>>>0<4){c[l>
x3e;2]=142;w=c[l>>2]|0;i=x;return w|0}b=de(c[f>>2]|0,c[w>>2]|0,(c[e>>2]|0)+772|0)|0;c[l
x3e;>2]=b;if(b|0){w=c[l>>2]|0;i=x;return w|0}c[(c[e>>2]|0)+776>>2]=c[w>>2];c[t>
;>2]=c[(c[e>>2]|0)+772>>2];c[u>>2]=(c[t>>2]|0)+(c[w>>2]|0);c[t>>
;2]=(c[t>>2]|0)+2;c[t>>2]=(c[t>>2]|0)+2;w=(((d[(c[t>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[q>>2]=w;c[q>
;>2]=(c[q>>2]|0)>>>0>32?32:w;c[o>>2]=0;while(1){if((c[o>>2]|0)>>
;>0>=(c[q>>2]|0)>>>0)break;c[n>>2]=1<<c[o>>2];if(((c[t>>
;2]|0)+6|0)>>>0>(c[u>>2]|0)>>>0)break;c[v>>2]=c[t>>2];c[t>
x3e;2]=(c[t>>2]|0)+2;c[t>>2]=(c[t>>2]|0)+2;c[m>>2]=(((d[(c[t>>2]|0)+-2>
x3e;0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[t>
;>2]=(c[t>>2]|0)+2;c[j>>2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(
c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c[m>>2]|0)>>>0<
;=6)break;c[v>>2]=(c[v>>2]|0)+(c[m>>2]|0);if((c[v>>2]|0)>>>0>(c[u>
;>2]|0)>>>0)c[v>>2]=c[u>>2];if((c[j>>2]&-9|0)==1?((c[t>>2]|0)+8
|0)>>>0<=(c[u>>2]|0)>>>0:0){c[t>>2]=(c[t>>2]|0)+2;c[p>>
;2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&
;65535)<<0)&65535;c[t>>2]=(c[t>>2]|0)+6;if(((c[v>>2]|0)-(c[t>>2]|0)|0)<
;((c[p>>2]|0)*6|0))c[p>>2]=((c[v>>2]|0)-(c[t>>2]|0)|0)/6|0;c[g>>2]=c[g>
x3e;2]|c[n>>2];if((c[p>>2]|0)>>>0>0){c[t>>2]=(c[t>>2]|0)+4;c[r>
x3e;2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-4+3>>0]|0)<<0;c[t>
x3e;2]=(c[t>>2]|0)+2;c[h>>2]=(c[p>>2]|0)-1;while(1){if((c[h>>2]|0)>>>0<
;=0)break;c[t>>2]=(c[t>>2]|0)+4;c[k>>2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24
|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[
t>>2]|0)+-4+3>>0]|0)<<0;if((c[k>>2]|0)>>>0<=(c[r>>2]|0)>
;>>0)break;c[t>>2]=(c[t>>2]|0)+2;c[r>>2]=c[k>>2];c[h>>2]=(c[h>
x3e;2]|0)+-1}if(!(c[h>>2]|0))c[s>>2]=c[s>>2]|c[n>>2]}}c[t>>2]=c[v>>2
];c[o>>2]=(c[o>>2]|0)+1}c[(c[e>>2]|0)+780>>2]=c[o>>2];c[(c[e>>2]|0)+
784>>2]=c[g>>2];c[(c[e>>2]|0)+788>>2]=c[s>>2];w=c[l>>2]|0;i=x;return
w|0}function $k(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;n=i;i=i+32|0;f=n+24|0;h=n+20|0;j=n+16|0;g=n+12|0;l=n+8|0;m
=n+4|0;k=n;c[f>>2]=a;c[h>>2]=d;c[g>>2]=c[(c[h>>2]|0)+28>>2];c[j>>2]=
Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1734439792,c[h>>2]|0,0)|0;if(c[j>>
2]|0){m=c[j>>2]|0;i=n;return m|0}d=ee(c[h>>2]|0,4)|0;c[j>>2]=d;if(d|0){m=c[j>>2]|0;i=n;return
m|0}a=ie(c[h>>2]|0)|0;b[(c[f>>2]|0)+548>>1]=a;a=ie(c[h>>2]|0)|0;b[(c[f>>2]|0)+
548+2>>1]=a;ge(c[h>>2]|0);a=(c[f>>2]|0)+548+2|0;if((e[(c[f>>2]|0)+548>>1]|0|0)
x3e;=2){b[a>>1]=0;c[j>>2]=8;m=c[j>>2]|0;i=n;return m|0}c[m>>2]=e[a>>1];c[k>
;>2]=hc(c[g>>2]|0,4,0,c[m>>2]|0,0,j)|0;if(c[j>>2]|0){m=c[j>>2]|0;i=n;return m|0}g=ee
(c[h>>2]|0,c[m>>2]<<2)|0;c[j>>2]=g;if(g|0){m=c[j>>2]|0;i=n;return m|0}c[(c[f
x3e;>2]|0)+548+4>>2]=c[k>>2];c[l>>2]=0;while(1){a=c[h>>2]|0;if((c[l>>2]|0
)>>>0>=(c[m>>2]|0)>>>0)break;g=ie(a)|0;b[(c[k>>2]|0)+(c[l>>2]
x3c;<2)>>1]=g;g=ie(c[h>>2]|0)|0;b[(c[k>>2]|0)+(c[l>>2]<<2)+2>>1
]=g;c[l>>2]=(c[l>>2]|0)+1}ge(a);m=c[j>>2]|0;i=n;return m|0}function al(a,b){a=a|0;b=b|0;var d=0,e=
0,f=0,g=0,h=0;g=i;i=i+16|0;h=g+12|0;d=g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[d>>2]=b;c[f>>2]=(c[h>>
;2]|0)+556;c[e>>2]=Wa[c[(c[h>>2]|0)+508>>2]&31](c[h>>2]|0,1346587732,c[d>>
;2]|0,0)|0;if(c[e>>2]|0){h=c[e>>2]|0;i=g;return h|0}c[e>>2]=le(c[d>>2]|0,8108,c[f>
x3e;2]|0)|0;h=c[e>>2]|0;i=g;return h|0}function bl(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>
x3e;2]=a;c[e>>2]=b;b=Qk(c[f>>2]|0,c[e>>2]|0,1651008868)|0;i=d;return b|0}function cl(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;j=f+32|0;l=f+28|0;k=f+24|0;g=f+20|0;h=f;c[j>>2]=a;c[l>
;>2]=b;c[k>>2]=d;c[g>>2]=e;c[h>>2]=0;c[h+4>>2]=c[l>>2];c[h+8>>2
]=c[k>>2];c[h+12>>2]=0;c[h+16>>2]=0;c[c[g>>2]>>2]=2147483647;d=dl(c[j>>
;2]|0,h,c[g>>2]|0)|0;i=f;return d|0}function dl(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;b=Ad(c[h>>2]|0,c[g>>2]|0,0,c[f>>
;2]|0)|0;i=e;return b|0}function el(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[f>>2]=c[f>>2];c[e>>2]=c[e>>2];i=d;return 7}function fl(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;r=i;i=i+48|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0;m=r+16|0;n=
r+12|0;o=r+8|0;p=r+4|0;q=r;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c
[o>>2]=g;if((c[(c[j>>2]|0)+616>>2]|0?(c[(c[j>>2]|0)+612>>2]|0)>>>
;0>(c[l>>2]|0)>>>0:0)?(c[q>>2]=(c[(c[j>>2]|0)+616>>2]|0)+((c[l>
x3e;2]|0)*48|0),c[p>>2]=gl(c[k>>2]|0,c[q>>2]|0,c[m>>2]|0,c[o>>2]|0)|0,(c[p>
;>2]|0)==0):0){c[c[n>>2]>>2]=c[q>>2];c[h>>2]=0;d=c[h>>2]|0;i=r;return d|0
}c[c[m>>2]>>2]=0;c[c[n>>2]>>2]=0;c[c[o>>2]>>2]=0;c[h>>2]=6
;d=c[h>>2]|0;i=r;return d|0}function gl(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;r
=i;i=i+48|0;h=r+28|0;j=r+24|0;k=r+20|0;l=r+16|0;m=r+12|0;p=r+8|0;q=r+4|0;n=r+32|0;o=r;c[j>>2]=a;c[k>>2]=d;c[
l>>2]=f;c[m>>2]=g;a:do if(((c[j>>2]|0)>>>0>=(e[(c[k>>2]|0)+40>
x3e;1]|0)>>>0?(c[j>>2]|0)>>>0<=(e[(c[k>>2]|0)+42>>1]|0)>
x3e;>0:0)?(c[p>>2]=c[(c[k>>2]|0)+4>>2],c[q>>2]=(c[p>>2]|0)+((c[c[k>
x3e;2]>>2]|0)*40|0),c[p>>2]|0):0){while(1){if((c[p>>2]|0)>>>0>=(c[q>>
;2]|0)>>>0)break a;if((c[j>>2]|0)>>>0>=(e[c[p>>2]>>1]|0)>
x3e;>0?(c[j>>2]|0)>>>0<=(e[(c[p>>2]|0)+2>>1]|0)>>>0:0)break
;c[p>>2]=(c[p>>2]|0)+40}b[n>>1]=(c[j>>2]|0)-(e[c[p>>2]>>1]|0);b:do switch
(e[(c[p>>2]|0)+4>>1]|0|0){case 3:case 1:{c[c[m>>2]>>2]=c[(c[(c[p>>2]|0)+28>
;>2]|0)+((e[n>>1]|0)<<2)>>2];break}case 2:{d=(c[(c[p>>2]|0)+8>>2]|0)+(_(c
[(c[p>>2]|0)+12>>2]|0,e[n>>1]|0)|0)|0;c[c[m>>2]>>2]=d;break}case 5:case 4:{c[o
>>2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[(c[p>>2]|0)+24>>2]|0)>
x3e;>0)break a;if((e[(c[(c[p>>2]|0)+32>>2]|0)+(c[o>>2]<<1)>>1]|0|0)==(c[j
>>2]|0))break;c[o>>2]=(c[o>>2]|0)+1}if((e[(c[p>>2]|0)+4>>1]|0|0)==4){c[c[m>
;>2]>>2]=c[(c[(c[p>>2]|0)+28>>2]|0)+(c[o>>2]<<2)>>2];break b}else
{d=(c[(c[p>>2]|0)+8>>2]|0)+(_(c[o>>2]|0,c[(c[p>>2]|0)+12>>2]|0)|0)|0;c[c[m>
;>2]>>2]=d;break b}}default:break a}while(0);c[c[l>>2]>>2]=c[p>>2];c[h>>2
]=0;d=c[h>>2]|0;i=r;return d|0}while(0);c[c[l>>2]>>2]=0;c[c[m>>2]>>2]=0;c[h>
;>2]=6;d=c[h>>2]|0;i=r;return d|0}function hl(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;n=i;i=i+32
|0;g=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;l=n;m=n+20|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=f;c[l>>2]=
0;switch(e[(c[j>>2]|0)+6>>1]|0|0){case 8:case 2:case 1:{b=le(c[h>>2]|0,8172,m)|0;c[l>>2]=
b;if(!b){a[c[k>>2]>>0]=a[m>>0]|0;a[(c[k>>2]|0)+1>>0]=a[m+1>>0]|0;a[(
c[k>>2]|0)+2>>0]=a[m+2>>0]|0;a[(c[k>>2]|0)+3>>0]=a[m+3>>0]|0;a[(c[k
x3e;>2]|0)+4>>0]=a[m+4>>0]|0;a[(c[k>>2]|0)+5>>0]=0;a[(c[k>>2]|0)+6>
x3e;0]=0;a[(c[k>>2]|0)+7>>0]=0}break}case 9:case 7:case 6:{c[l>>2]=le(c[h>>2]|0,8200,c[k
>>2]|0)|0;break}default:{if((e[(c[j>>2]|0)+4>>1]|0|0)!=2?(e[(c[j>>2]|0)+4>>1]|
0|0)!=5:0){c[g>>2]=3;b=c[g>>2]|0;i=n;return b|0}b=c[k>>2]|0;m=(c[j>>2]|0)+16|0;a[b>
x3e;0]=a[m>>0]|0;a[b+1>>0]=a[m+1>>0]|0;a[b+2>>0]=a[m+2>>0]|0;a[b+3>>
0]=a[m+3>>0]|0;a[b+4>>0]=a[m+4>>0]|0;a[b+5>>0]=a[m+5>>0]|0;a[b+6>>0]=
a[m+6>>0]|0;a[b+7>>0]=a[m+7>>0]|0}}c[g>>2]=c[l>>2];b=c[g>>2]|0;i=n;return
b|0}function il(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;w=i;i=i+64|0;l=w+48|0;x=w+44|0;y=w+40|0;m=w+36|0;n=w+32|0;o=w+28|0;p=w+24|0;s=w+20|0;r=w+16|0;t=w+12|0;v=w+8|0;u=w+4|0;q=w
;c[l>>2]=b;c[x>>2]=e;c[y>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[p>
;>2]=k;c[s>>2]=fl(c[l>>2]|0,c[y>>2]|0,c[x>>2]|0,u,v,t)|0;if(c[s>>2]|0){y=
c[s>>2]|0;i=w;return y|0}c[s>>2]=Wa[c[(c[l>>2]|0)+508>>2]&31](c[l>>2]|0,1161970772
,c[n>>2]|0,0)|0;if(c[s>>2]|0)c[s>>2]=Wa[c[(c[l>>2]|0)+508>>2]&31](c[l>
;>2]|0,1650745716,c[n>>2]|0,0)|0;if(c[s>>2]|0){y=c[s>>2]|0;i=w;return y|0}c[r>>2]=Mc
(c[n>>2]|0)|0;c[s>>2]=jl(c[v>>2]|0,c[u>>2]|0,c[r>>2]|0,c[t>>2]|0,c[(
c[l>>2]|0)+84>>2]|0,0,0,c[n>>2]|0,c[p>>2]|0,0)|0;if(c[s>>2]|0){y=c[s>>
;2]|0;i=w;return y|0}if(a[(c[v>>2]|0)+47>>0]&1|0){c[q>>2]=(a[(c[v>>2]|0)+16>
x3e;0]|0)-(a[(c[v>>2]|0)+16+1>>0]|0);a[(c[p>>2]|0)+5>>0]=(0-(d[(c[p>>2]|0)+1
x3e;>0]|0)|0)/2|0;a[(c[p>>2]|0)+6>>0]=((c[q>>2]|0)-(d[c[p>>2]>>0]|0)|0)/2
|0;a[(c[p>>2]|0)+7>>0]=((c[q>>2]|0)*12|0)/10|0}if(!(c[m>>2]&64)){y=c[s>>2
]|0;i=w;return y|0}ml(c[o>>2]|0,c[p>>2]|0);y=c[s>>2]|0;i=w;return y|0}function jl(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;L=i;i=i+96|0;u=L+72|0;v=L+68|0;q=L+64|0;x=L+60|0;M=L+56|0;y=L+52|0;z=L+48|0;A=L+44|0;B=L+40|0;r
=L+36|0;w=L+32|0;J=L+28|0;s=L+24|0;I=L+20|0;t=L+16|0;D=L+12|0;C=L+8|0;K=L+78|0;E=L+76|0;H=L+4|0;F=L+80|0;G=L;c[v>>2]=f
;c[q>>2]=g;c[x>>2]=h;c[M>>2]=j;c[y>>2]=k;c[z>>2]=l;c[A>>2]=m;c[B>
;>2]=n;c[r>>2]=o;c[w>>2]=p;c[J>>2]=c[(c[B>>2]|0)+28>>2];c[s>>2]=(
c[y>>2]|0)+76;m=Kc(c[B>>2]|0,(c[x>>2]|0)+(c[M>>2]|0)|0)|0;c[I>>2]=m;a:do if((m
|0)==0?(c[I>>2]=hl(c[B>>2]|0,c[q>>2]|0,c[r>>2]|0)|0,(c[I>>2]|0)==0):0){if(!(c[
w>>2]|0)){c[(c[s>>2]|0)+4>>2]=d[(c[r>>2]|0)+1>>0];c[c[s>>2]>>
;2]=d[c[r>>2]>>0];switch(d[(c[v>>2]|0)+46>>0]|0){case 1:{a[(c[s>>2]|0)+18>
;>0]=1;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|0)+4>>2]|0)+7>>3;break}case 2:{a[(
c[s>>2]|0)+18>>0]=3;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|0)+4>>2]|0)+3>
;>2;break}case 4:{a[(c[s>>2]|0)+18>>0]=4;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|
0)+4>>2]|0)+1>>1;break}case 8:{a[(c[s>>2]|0)+18>>0]=2;c[(c[s>>2]|0)+8>>
;2]=c[(c[s>>2]|0)+4>>2];break}default:{c[u>>2]=3;M=c[u>>2]|0;i=L;return M|0}}c[t>
x3e;2]=_(c[c[s>>2]>>2]|0,c[(c[s>>2]|0)+8>>2]|0)|0;if(!(c[t>>2]|0))break;c[I>
;>2]=xc(c[y>>2]|0,c[t>>2]|0)|0;if(c[I>>2]|0)break}switch(e[(c[q>>2]|0)+6>>
;1]|0){case 7:case 6:case 5:case 2:case 1:{c[u>>2]=kl(c[s>>2]|0,c[z>>2]|0,c[A>>2]|0,d[(c
[v>>2]|0)+46>>0]|0,b[(c[q>>2]|0)+6>>1]|0,c[r>>2]|0,c[B>>2]|0)|0;M=c[
u>>2]|0;i=L;return M|0}case 8:{M=Qc(c[B>>2]|0,1)|0;c[I>>2]=M;if(M|0){c[I>>2]=83;break a}
break}case 9:break;default:{c[u>>2]=3;M=c[u>>2]|0;i=L;return M|0}}b[K>>1]=Pc(c[B>>2]|0,I
)|0;if((c[I>>2]|0)==0?(c[D>>2]=hc(c[J>>2]|0,4,0,e[K>>1]|0,0,I)|0,(c[I>>2]|0)==
0):0){b[E>>1]=b[K>>1]|0;M=ee(c[B>>2]|0,e[K>>1]<<2)|0;c[I>>2]=M;b:do
if(!M){c[C>>2]=c[D>>2];while(1){q=c[B>>2]|0;if((e[E>>1]|0)<=0)break;M=ie(q)|0;b[c[C
>>2]>>1]=M;M=he(c[B>>2]|0)|0;a[(c[C>>2]|0)+2>>0]=M;M=he(c[B>>2]|0)|0
;a[(c[C>>2]|0)+3>>0]=M;b[E>>1]=(b[E>>1]|0)+-1<<16>>16;c[C>>
;2]=(c[C>>2]|0)+4}ge(q);b[E>>1]=b[K>>1]|0;c[C>>2]=c[D>>2];while(1){if((e[E>
;>1]|0)<=0)break b;c[I>>2]=gl(e[c[C>>2]>>1]|0,c[v>>2]|0,H,G)|0;if(c[I>>
;2]|0)break b;c[I>>2]=jl(c[v>>2]|0,c[H>>2]|0,c[x>>2]|0,c[G>>2]|0,c[y>>
;2]|0,(c[z>>2]|0)+(a[(c[C>>2]|0)+2>>0]|0)|0,(c[A>>2]|0)+(a[(c[C>>2]|0)+3>
x3e;0]|0)|0,c[B>>2]|0,F,(c[w>>2]|0)+1|0)|0;if(c[I>>2]|0)break b;b[E>>1]=(b[E>>
1]|0)+-1<<16>>16;c[C>>2]=(c[C>>2]|0)+4}}while(0);Fb(c[J>>2]|0,c[D>>2
]|0);c[D>>2]=0}}while(0);c[u>>2]=c[I>>2];M=c[u>>2]|0;i=L;return M|0}function kl(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;C=i;i=i+64|
0;n=C+48|0;o=C+44|0;p=C+40|0;q=C+36|0;r=C+32|0;s=C+52|0;t=C+28|0;u=C+24|0;v=C+20|0;y=C+16|0;w=C+12|0;x=C+8|0;z=C+4|0;B=C+54|0;A=
C;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;c[r>>2]=j;b[s>>1]=k;c[t>>2]=l;c[u>
;>2]=m;if(((c[p>>2]|0)>=0?!((c[q>>2]|0)<0?1:((c[p>>2]|0)+(d[(c[t>>2]|0)+1
>>0]|0)|0)>(c[(c[o>>2]|0)+4>>2]|0)):0)?((c[q>>2]|0)+(d[c[t>>2]>>
;0]|0)|0)<=(c[c[o>>2]>>2]|0):0){c[y>>2]=d[(c[t>>2]|0)+1>>0];c[w>>
;2]=d[c[t>>2]>>0];c[z>>2]=_(c[r>>2]|0,c[y>>2]|0)|0;a[B>>0]=0;switch(
e[s>>1]|0|0){case 6:case 1:{switch(c[r>>2]|0){case 1:{c[A>>2]=(c[y>>2]|0)+7>>3
;break}case 2:{c[A>>2]=(c[y>>2]|0)+3>>2;break}case 4:{c[A>>2]=(c[y>>2]|0)+1>
;>1;break}default:c[A>>2]=c[y>>2]}c[x>>2]=_(c[w>>2]|0,c[A>>2]|0)|0;a[B>
;>0]=1;break}case 7:case 5:case 2:{c[z>>2]=_(c[y>>2]|0,c[r>>2]|0)|0;c[x>>2]=(_(c[w
x3e;>2]|0,c[z>>2]|0)|0)+7>>3;break}default:{c[n>>2]=3;h=c[n>>2]|0;i=C;return h|0}}h
=ee(c[u>>2]|0,c[x>>2]|0)|0;c[v>>2]=h;if(!h){h=_(c[p>>2]|0,c[r>>2]|0)|0;ll(c[o
x3e;>2]|0,c[(c[u>>2]|0)+32>>2]|0,c[z>>2]|0,a[B>>0]|0,h,c[q>>2]|0,d[c[t>
;>2]>>0]|0);ge(c[u>>2]|0)}}else c[v>>2]=6;c[n>>2]=c[v>>2];h=c[n>>
;2]|0;i=C;return h|0}function ll(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,D=0,E=0,F=0;F=i;i=i+64|0;n=F+44|0;q=F+40|0;r=F+36|0;s=F+54|0;t=F+32|0;o=F+28|0;p=F+24|0;y=F+20|0;z
=F+16|0;x=F+12|0;u=F+48|0;A=F+8|0;w=F+4|0;v=F;B=F+53|0;C=F+52|0;D=F+51|0;E=F+50|0;c[n>>2]=f;c[q>>2]=g;c[r>
;>2]=h;a[s>>0]=j;c[t>>2]=k;c[o>>2]=l;c[p>>2]=m;c[z>>2]=c[(c[n>>
2]|0)+8>>2];c[y>>2]=c[(c[n>>2]|0)+12>>2];if((c[z>>2]|0)<0){l=_(c[z>
x3e;2]|0,(c[c[n>>2]>>2]|0)-1|0)|0;c[y>>2]=(c[y>>2]|0)+(0-l)}l=(c[t>>2]>
x3e;3)+(_(c[o>>2]|0,c[z>>2]|0)|0)|0;c[y>>2]=(c[y>>2]|0)+l;b[u>>1]=0;c[A>
x3e;2]=0;c[x>>2]=c[p>>2];while(1){if((c[x>>2]|0)<=0)break;c[w>>2]=c[y>>2];
c[v>>2]=c[r>>2];a[B>>0]=c[t>>2]&7;a[C>>0]=8-(d[B>>0]|0);if((c[v
>>2]|0)>=8){c[v>>2]=(c[v>>2]|0)-8;do{if((c[A>>2]|0)>>>0<8){l=c[
q>>2]|0;c[q>>2]=l+1;b[u>>1]=e[u>>1]|(d[l>>0]&65535)<<8-(c[A>
;>2]|0)&65535;c[A>>2]=(c[A>>2]|0)+8}a[D>>0]=e[u>>1]>>8;n=d[D>
x3e;0]|0;if(a[B>>0]|0){l=c[w>>2]|0;a[l>>0]=d[l>>0]|n>>d[B>>0]&255
;l=(c[w>>2]|0)+1|0;a[l>>0]=d[l>>0]|d[D>>0]<<d[C>>0]&255}else{l=
c[w>>2]|0;a[l>>0]=d[l>>0]|n}c[w>>2]=(c[w>>2]|0)+1;b[u>>1]=e[u>
x3e;1]<<8;c[A>>2]=(c[A>>2]|0)-8;c[v>>2]=(c[v>>2]|0)-8}while((c[v>>2]|
0)>=0);c[v>>2]=(c[v>>2]|0)+8}if((c[v>>2]|0)>0){if((c[A>>2]|0)<(c[v>
x3e;2]|0)){l=c[q>>2]|0;c[q>>2]=l+1;b[u>>1]=e[u>>1]|(d[l>>0]&65535)<
x3c;8-(c[A>>2]|0)&65535;c[A>>2]=(c[A>>2]|0)+8}a[E>>0]=e[u>>1]>>
8&255&~(255>>c[v>>2]);l=c[w>>2]|0;a[l>>0]=d[l>>0]|d[E>>0]
x3e;>d[B>>0]&255;if((c[v>>2]|0)>(d[C>>0]|0)){l=(c[w>>2]|0)+1|0;a[l>
x3e;0]=d[l>>0]|d[E>>0]<<d[C>>0]&255}b[u>>1]=e[u>>1]<<
c[v>>2];c[A>>2]=(c[A>>2]|0)-(c[v>>2]|0)}if(a[s>>0]|0){b[u>>1]=0;c[A
x3e;>2]=0}c[y>>2]=(c[y>>2]|0)+(c[z>>2]|0);c[x>>2]=(c[x>>2]|0)+-1}i=F;return
}function ml(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;z=i;i=i+80|0;l
=z+60|0;m=z+56|0;w=z+52|0;f=z+48|0;r=z+44|0;q=z+40|0;g=z+36|0;j=z+32|0;h=z+28|0;k=z+24|0;o=z+20|0;t=z+16|0;y=z+12|0;u=z+66|0;n=z
+8|0;x=z+65|0;v=z+4|0;p=z;s=z+64|0;c[l>>2]=b;c[m>>2]=e;c[q>>2]=c[(c[l>>2]|0)+12>>
;2];c[w>>2]=c[c[l>>2]>>2];c[r>>2]=c[(c[l>>2]|0)+8>>2];c[f>>
;2]=0;a:while(1){if((c[f>>2]|0)>=(c[w>>2]|0))break;c[g>>2]=c[q>>2];c[j>>2
]=(c[q>>2]|0)+(c[r>>2]|0);while(1){if((c[g>>2]|0)>>>0>=(c[j>>2]|0)
x3e;>>0)break;if(a[c[g>>2]>>0]|0)break a;c[g>>2]=(c[g>>2]|0)+1}c[q>>
2]=c[j>>2];c[f>>2]=(c[f>>2]|0)+1}if((c[f>>2]|0)>=(c[w>>2]|0)){c[(c[l>
;>2]|0)+4>>2]=0;c[c[l>>2]>>2]=0;c[(c[l>>2]|0)+8>>2]=0;a[(c[l>>2
]|0)+18>>0]=1;i=z;return}if((c[f>>2]|0)>0){c[q>>2]=c[(c[l>>2]|0)+12>>2];e
=(c[q>>2]|0)+(_(c[f>>2]|0,c[r>>2]|0)|0)|0;Ts(c[q>>2]|0,e|0,_((c[w>>2]|0)-(c[f
x3e;>2]|0)|0,c[r>>2]|0)|0)|0;a[c[m>>2]>>0]=(d[c[m>>2]>>0]|0)-(c[f>
x3e;2]|0);a[(c[m>>2]|0)+3>>0]=(a[(c[m>>2]|0)+3>>0]|0)-(c[f>>2]|0);a[(c[m>
x3e;2]|0)+6>>0]=(a[(c[m>>2]|0)+6>>0]|0)-(c[f>>2]|0);e=c[l>>2]|0;c[e>>
;2]=(c[e>>2]|0)-(c[f>>2]|0);c[w>>2]=(c[w>>2]|0)-(c[f>>2]|0)}c[q>>2]=(
c[(c[l>>2]|0)+12>>2]|0)+(_((c[w>>2]|0)-1|0,c[r>>2]|0)|0);c[f>>2]=0;b:while(1){
if((c[f>>2]|0)>=(c[w>>2]|0))break;c[h>>2]=c[q>>2];c[k>>2]=(c[q>>
;2]|0)+(c[r>>2]|0);while(1){if((c[h>>2]|0)>>>0>=(c[k>>2]|0)>>>0
)break;if(a[c[h>>2]>>0]|0)break b;c[h>>2]=(c[h>>2]|0)+1}c[q>>2]=(c[q>>
;2]|0)+(0-(c[r>>2]|0));c[f>>2]=(c[f>>2]|0)+1}if((c[f>>2]|0)>0){a[c[m>>2]
x3e;>0]=(d[c[m>>2]>>0]|0)-(c[f>>2]|0);c[w>>2]=(c[w>>2]|0)-(c[f>>
;2]|0);e=c[l>>2]|0;c[e>>2]=(c[e>>2]|0)-(c[f>>2]|0)}c:do{c[q>>2]=c[(c[l>
x3e;2]|0)+12>>2];c[o>>2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);while(1){if((c
[q>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(d[c[q>>2]>>0]
x26;128|0)break c;c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}c[q>>2]=c[(c[l>>2]|0)+12>
;>2];c[o>>2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);while(1){f=(c[l>>2]|0
)+4|0;g=c[f>>2]|0;if((c[q>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[y
>>2]=g;c[n>>2]=c[q>>2];a[u>>0]=d[c[n>>2]>>0]<<1;c[t>
x3e;2]=8;while(1){if((c[t>>2]|0)>=(c[y>>2]|0))break;a[x>>0]=a[(c[n>>2]|0)+1>
x3e;0]|0;a[c[n>>2]>>0]=d[u>>0]|d[x>>0]>>7;a[u>>0]=d[x>>0]
x3c;<1;c[n>>2]=(c[n>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+8}a[c[n>>2]>>0
]=a[u>>0]|0;c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}c[f>>2]=g+-1;e=(c[m>>2]|
0)+2|0;a[e>>0]=(a[e>>0]|0)+1<<24>>24;e=(c[m>>2]|0)+5|0;a[e>>0]=(a[e
x3e;>0]|0)+1<<24>>24;e=(c[m>>2]|0)+1|0;a[e>>0]=(a[e>>0]|0)+-1<<
24>>24}while((c[(c[l>>2]|0)+4>>2]|0)>0);d:while(1){c[v>>2]=(c[(c[l>>2]|0)+
4>>2]|0)-1;c[q>>2]=(c[(c[l>>2]|0)+12>>2]|0)+(c[v>>2]>>3);c[p>
x3e;2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);a[s>>0]=128>>(c[v>>2]
x26;7);while(1){if((c[q>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;if(d[c[q>
x3e;2]>>0]&d[s>>0]|0){f=37;break d}c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}y=(c[l
>>2]|0)+4|0;c[y>>2]=(c[y>>2]|0)+-1;y=(c[m>>2]|0)+1|0;a[y>>0]=(a[y>>0
]|0)+-1<<24>>24;if((c[(c[l>>2]|0)+4>>2]|0)<=0){f=37;break}}if((f|0)==37){i=z;return
}}function nl(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return}function
ol(d){d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;f=n+20|0;j=n+16|0;l=n+12|0;g=n+8|0;m=n+4|0;k=n+24|0;h=n;c[f>
x3e;2]=d;c[j>>2]=c[(c[f>>2]|0)+100>>2];c[l>>2]=(c[f>>2]|0)+628;if(!(a[c[l>
;>2]>>0]|0)){m=c[l>>2]|0;a[m>>0]=0;i=n;return}c[g>>2]=c[(c[f>>2]|0)+468
x3e;>2];if((c[g>>2]|0)!=131072){if((c[g>>2]|0)!=163840){m=c[l>>2]|0;a[m>>0]=0;i=n;return
}c[h>>2]=(c[l>>2]|0)+4;Fb(c[j>>2]|0,c[(c[h>>2]|0)+4>>2]|0);c[(c[h>>2
]|0)+4>>2]=0;b[c[h>>2]>>1]=0;m=c[l>>2]|0;a[m>>0]=0;i=n;return}c[m>>2
]=(c[l>>2]|0)+4;Fb(c[j>>2]|0,c[(c[m>>2]|0)+4>>2]|0);c[(c[m>>2]|0)+4>>
;2]=0;b[c[m>>2]>>1]=0;b[k>>1]=0;while(1){f=c[j>>2]|0;if((e[k>>1]|0)>=(e[(
c[m>>2]|0)+2>>1]|0))break;Fb(f,c[(c[(c[m>>2]|0)+8>>2]|0)+(e[k>>1]<<2
)>>2]|0);c[(c[(c[m>>2]|0)+8>>2]|0)+(e[k>>1]<<2)>>2]=0;b[k>>
;1]=(b[k>>1]|0)+1<<16>>16}Fb(f,c[(c[m>>2]|0)+8>>2]|0);c[(c[m>>2]|0)+
8>>2]=0;b[(c[m>>2]|0)+2>>1]=0;m=c[l>>2]|0;a[m>>0]=0;i=n;return}function pl(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;c[h>>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>>2];i=e;return 7}function
ql(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[f>>2]=c[f>
;>2];c[e>>2]=c[e>>2];i=d;return 0}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,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=i;i=i+96|0;g=E+88|0;h=E+84|0;j=E+80|0;D=E+76|0;l=E+72|0;s=
E+68|0;y=E+64|0;z=E+60|0;k=E+56|0;w=E+52|0;C=E+48|0;r=E+44|0;n=E+40|0;x=E+36|0;B=E+32|0;p=E+28|0;v=E+24|0;t=E+20|0;u=E+16|0;A=E+
12|0;o=E+8|0;m=E+4|0;q=E;c[g>>2]=b;c[h>>2]=e;c[j>>2]=f;c[D>>2]=0;c[s>>2]=1;c[y
>>2]=c[(c[g>>2]|0)+772>>2];c[z>>2]=(c[y>>2]|0)+(c[(c[g>>2]|0)+776>
;>2]|0);c[y>>2]=(c[y>>2]|0)+4;c[s>>2]=1;c[l>>2]=c[(c[g>>2]|0)+780>
x3e;2];while(1){if((c[l>>2]|0)>>>0<=0){b=28;break}if(((c[y>>2]|0)+6|0)>>>
0>(c[z>>2]|0)>>>0){b=28;break}c[k>>2]=c[y>>2];c[w>>2]=c[k>>
;2];c[y>>2]=(c[y>>2]|0)+2;c[C>>2]=((d[(c[y>>2]|0)+-2>>0]&65535)<<
;8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[y>>2]=(c[y>>2]|0)+2;c[
r>>2]=((d[(c[y>>2]|0)+-2>>0]&65535)<<8|(d[(c[y>>2]|0)+-2+1>>0]
x26;65535)<<0)&65535;c[y>>2]=(c[y>>2]|0)+2;c[n>>2]=((d[(c[y>>2]|0)+-2>
;>0]&65535)<<8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[B>>
;2]=0;c[C>>2]=c[C>>2];c[w>>2]=(c[k>>2]|0)+(c[r>>2]|0);if((c[w>>2]|0)
x3e;>>0>(c[z>>2]|0)>>>0)c[w>>2]=c[z>>2];a:do if(c[(c[g>>2]|
0)+784>>2]&c[s>>2]|0?((c[y>>2]|0)+8|0)>>>0<=(c[w>>2]|0)>
x3e;>0:0){c[y>>2]=(c[y>>2]|0)+2;c[x>>2]=((d[(c[y>>2]|0)+-2>>0]&65535
)<<8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[y>>2]=(c[y>>
;2]|0)+6;if(((c[w>>2]|0)-(c[y>>2]|0)|0)<((c[x>>2]|0)*6|0))c[x>>2]=((c[w>>
2]|0)-(c[y>>2]|0)|0)/6|0;if(!((c[n>>2]|0)>>>8)){c[p>>2]=c[h>>2]<<
;16|c[j>>2];if(c[(c[g>>2]|0)+788>>2]&c[s>>2]|0){c[v>>2]=0;c[t>>
2]=c[x>>2];while(1){if((c[v>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a
;c[u>>2]=((c[v>>2]|0)+(c[t>>2]|0)|0)>>>1;c[A>>2]=(c[y>>2]|0)+((
c[u>>2]|0)*6|0);c[A>>2]=(c[A>>2]|0)+4;c[o>>2]=d[(c[A>>2]|0)+-4>>0]
x3c;<24|d[(c[A>>2]|0)+-4+1>>0]<<16|d[(c[A>>2]|0)+-4+2>>0]<<8|d[(
c[A>>2]|0)+-4+3>>0]<<0;if((c[o>>2]|0)==(c[p>>2]|0))break;b=c[u>>2]|0
;if((c[o>>2]|0)>>>0<(c[p>>2]|0)>>>0){c[v>>2]=b+1;continue}else{
c[t>>2]=b;continue}}c[B>>2]=((a[c[A>>2]>>0]<<16>>16<<8|d[(
c[A>>2]|0)+1>>0]<<0)&65535)<<16>>16}else{c[m>>2]=c[x>>
;2];while(1){if((c[m>>2]|0)>>>0<=0)break a;c[y>>2]=(c[y>>2]|0)+4;c[q>>
;2]=d[(c[y>>2]|0)+-4>>0]<<24|d[(c[y>>2]|0)+-4+1>>0]<<16|d[(c[y>
x3e;2]|0)+-4+2>>0]<<8|d[(c[y>>2]|0)+-4+3>>0]<<0;b=c[y>>2]|0;if((c[q
x3e;>2]|0)==(c[p>>2]|0))break;c[y>>2]=b+2;c[m>>2]=(c[m>>2]|0)+-1}c[B>>2]=((
a[b>>0]<<16>>16<<8|d[(c[y>>2]|0)+1>>0]<<0)&65535)<
;<16>>16}b=c[B>>2]|0;if(c[n>>2]&8|0){c[D>>2]=b;break}else{c[D>>2]=(c
[D>>2]|0)+b;break}}}while(0);c[y>>2]=c[w>>2];c[l>>2]=(c[l>>2]|0)+-1;c[s>
x3e;2]=c[s>>2]<<1}if((b|0)==28){i=E;return c[D>>2]|0}return 0}function sl(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;n=i;i=i+48|0;f=n+36|0;h=n+32|0;m=n+16|0;k=n+12|0;g=n+8|0;j=n+4|0;l=n;c[f>>2]=a;c[h>
x3e;2]=d;c[g>>2]=c[(c[h>>2]|0)+28>>2];c[m+12>>2]=Mc(c[h>>2]|0)|0;c[m>>
;2]=Oc(c[h>>2]|0,k)|0;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}d=le(c[h>>2]|0,8240,m)|0;
c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}c[k>>2]=tl(m,c[h>>2]|0)|0;if(c[k>>
;2]|0){m=c[k>>2]|0;i=n;return m|0}b[(c[f>>2]|0)+152>>1]=b[m+4>>1]|0;c[(c[f>>2]|
0)+148>>2]=c[m>>2];d=hc(c[g>>2]|0,16,0,e[(c[f>>2]|0)+152>>1]|0,0,k)|0;c[(c[f
x3e;>2]|0)+156>>2]=d;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}d=Kc(c[h>>2]|0,(c[m+12
>>2]|0)+12|0)|0;c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}d=ee(c[h>>2]|0,(e[(c[f>
;>2]|0)+152>>1]|0)<<4)|0;c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}c[j>>
;2]=c[(c[f>>2]|0)+156>>2];c[l>>2]=0;while(1){f=c[h>>2]|0;if((c[l>>2]|0)>=(
e[m+4>>1]|0|0))break;d=je(f)|0;c[c[j>>2]>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>>2]|0)+
4>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>>2]|0)+8>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>
x3e;2]|0)+12>>2]=d;if(((c[(c[j>>2]|0)+8>>2]|0)+(c[(c[j>>2]|0)+12>>2]|0)|0)>
;>>0<=(c[(c[h>>2]|0)+4>>2]|0)>>>0)c[j>>2]=(c[j>>2]|0)+16;c
[l>>2]=(c[l>>2]|0)+1}ge(f);m=c[k>>2]|0;i=n;return m|0}function tl(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,q=0,r=0,s=0;s=i;i=i+64|0;f=s+48|0;g=s+44|0;h=s+40|0;n=s+54|0;q=s+52|0;j=s+36|0;l=s+32|0;k=s+28|0;o=
s+24|0;p=s+8|0;m=s;c[f>>2]=a;c[g>>2]=d;b[q>>1]=0;c[j>>2]=0;c[l>>2]=0;c[k>
x3e;2]=0;c[o>>2]=(c[(c[f>>2]|0)+12>>2]|0)+12;d=Kc(c[g>>2]|0,c[o>>2]|0)|0;c[h
x3e;>2]=d;if(d|0){r=c[h>>2]|0;i=s;return r|0}b[n>>1]=0;a:while(1){if((e[n>>1]|0|0)>=(e[(
c[f>>2]|0)+4>>1]|0|0))break;d=le(c[g>>2]|0,8264,p)|0;c[h>>2]=d;if(d|0){r=5;break}do if(((
c[p+8>>2]|0)+(c[p+12>>2]|0)|0)>>>0<=(c[(c[g>>2]|0)+4>>2]|0)>>
;>0){b[q>>1]=(b[q>>1]|0)+1<<16>>16;if((c[p>>2]|0)!=1751474532?(c[p>
x3e;2]|0)!=1651008868:0){if((c[p>>2]|0)==1397313095){c[l>>2]=1;break}if((c[p>>2]|0)!=1296389185)break
;c[k>>2]=1;break}c[j>>2]=1;if((c[p+12>>2]|0)>>>0<54){r=10;break a}d=Kc(c[g>
;>2]|0,(c[p+8>>2]|0)+12|0)|0;c[h>>2]=d;if(d|0){r=27;break a}c[m>>2]=Oc(c[g>>2]|0,h)|
0;if(c[h>>2]|0){r=27;break a}if((c[m>>2]|0)!=1594834165){r=14;break a}d=Kc(c[g>>2]|0,(c[o>>
;2]|0)+((e[n>>1]|0)+1<<4)|0)|0;c[h>>2]=d;if(d|0){r=27;break a}}while(0);b[n>>1]=(b[n>
;>1]|0)+1<<16>>16}if((r|0)==5){b[n>>1]=(b[n>>1]|0)+-1<<16>>16;b
[(c[f>>2]|0)+4>>1]=b[n>>1]|0}else if((r|0)==10){c[h>>2]=142;r=c[h>>2]|0;i=s;return
r|0}else if((r|0)==14){c[h>>2]=142;r=c[h>>2]|0;i=s;return r|0}else if((r|0)==27){r=c[h>>2]|0;i=s;
return r|0}b[(c[f>>2]|0)+4>>1]=b[q>>1]|0;if(!(e[(c[f>>2]|0)+4>>1]|0)){c[h>
;>2]=2;r=c[h>>2]|0;i=s;return r|0}if((c[j>>2]|0)==0?!((c[l>>2]|0)!=0&(c[k>>2]|
0)!=0):0){c[h>>2]=142;r=c[h>>2]|0;i=s;return r|0}c[h>>2]=0;r=c[h>>2]|0;i=s;return r|0}function
ul(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;E=i;i=i
+80|0;B=E+72|0;j=E+68|0;C=E+78|0;D=E+64|0;r=E+60|0;z=E+56|0;t=E+52|0;s=E+48|0;u=E+44|0;q=E+40|0;w=E+36|0;v=E+32|0;o=E+28|0;x=E+24
|0;p=E+20|0;y=E+16|0;k=E+12|0;m=E+8|0;l=E+4|0;n=E;A=E+76|0;c[B>>2]=f;c[j>>2]=g;a[C>>0]=h;c[r>
x3e;2]=c[(c[j>>2]|0)+28>>2];f=c[B>>2]|0;if(a[C>>0]|0){c[o>>2]=f+300+36;c[x>
;>2]=(c[B>>2]|0)+300+40;c[D>>2]=Wa[c[(c[B>>2]|0)+508>>2]&31](c[B>>2]|
0,1986884728,c[j>>2]|0,z)|0;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}c[s>>2]=e[(c[B>
;>2]|0)+300+34>>1];if((c[s>>2]|0)>>>0>(((c[z>>2]|0)>>>0)/4
|0)>>>0)c[s>>2]=((c[z>>2]|0)>>>0)/4|0;b[(c[B>>2]|0)+300+34>>
;1]=0;c[q>>2]=c[o>>2];c[w>>2]=c[x>>2]}else{c[p>>2]=f+216+36;c[y>>2]=(
c[B>>2]|0)+216+40;c[D>>2]=Wa[c[(c[B>>2]|0)+508>>2]&31](c[B>>2]|0,1752003704
,c[j>>2]|0,z)|0;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}c[s>>2]=e[(c[B>>2]|0)+
216+34>>1];if((c[s>>2]|0)>>>0>(((c[z>>2]|0)>>>0)/4|0)>>
;>0)c[s>>2]=((c[z>>2]|0)>>>0)/4|0;b[(c[B>>2]|0)+216+34>>1]=0;c[q>
;>2]=c[p>>2];c[w>>2]=c[y>>2]}c[t>>2]=(e[(c[B>>2]|0)+260+4>>1]|0
)-(c[s>>2]|0);c[u>>2]=(((c[z>>2]|0)-(c[s>>2]<<2)|0)>>>0)/2|0;if
((c[t>>2]|0)<0)c[t>>2]=0;y=hc(c[r>>2]|0,4,0,c[s>>2]|0,0,D)|0;c[c[q>>2]>
;>2]=y;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}y=hc(c[r>>2]|0,2,0,c[t>>2]|0,0,D)|0
;c[c[w>>2]>>2]=y;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}z=ee(c[j>>2]|0,c[z
x3e;>2]|0)|0;c[D>>2]=z;if(z|0){D=c[D>>2]|0;i=E;return D|0}c[v>>2]=c[(c[j>>2]|0)+32
x3e;>2];c[k>>2]=c[c[q>>2]>>2];c[m>>2]=(c[k>>2]|0)+(c[s>>2]<
;<2);while(1){if((c[k>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;c[v>>
;2]=(c[v>>2]|0)+2;b[c[k>>2]>>1]=(d[(c[v>>2]|0)+-2>>0]&65535)<<8
|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0;c[v>>2]=(c[v>>2]|0)+2;b[(c[k>>
;2]|0)+2>>1]=a[(c[v>>2]|0)+-2>>0]<<16>>16<<8|d[(c[v>>2]|0)+-
2+1>>0]<<0;c[k>>2]=(c[k>>2]|0)+4}c[l>>2]=c[c[w>>2]>>2];c[n
>>2]=(c[l>>2]|0)+(((c[t>>2]|0)<(c[u>>2]|0)?c[t>>2]|0:c[u>>2]|0)
x3c;<1);while(1){if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[v>
x3e;2]=(c[v>>2]|0)+2;b[c[l>>2]>>1]=a[(c[v>>2]|0)+-2>>0]<<16>>
;16<<8|d[(c[v>>2]|0)+-2+1>>0]<<0;c[l>>2]=(c[l>>2]|0)+2}a:do if((c[u
x3e;>2]|0)>0?(c[t>>2]|0)>(c[u>>2]|0):0){b[A>>1]=b[(c[c[w>>2]>>2
]|0)+((c[u>>2]|0)-1<<1)>>1]|0;c[n>>2]=(c[c[w>>2]>>2]|0)+(c[t>
x3e;2]<<1);while(1){if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a
;b[c[l>>2]>>1]=b[A>>1]|0;c[l>>2]=(c[l>>2]|0)+2}}while(0);ge(c[j>>2]|
0);g=c[s>>2]&65535;f=c[B>>2]|0;if(a[C>>0]|0){b[f+300+34>>1]=g;D=c[D>>2]|0
;i=E;return D|0}else{b[f+216+34>>1]=g;D=c[D>>2]|0;i=E;return D|0}return 0}function vl(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;s=i;i=i+64|0;e=s+48|0;k=s+44|0;r=s+40|0;n=s+36|0;j=s+32|0;g=s+28|0;q=s+24
|0;h=s+20|0;f=s+16|0;p=s+12|0;l=s+8|0;o=s+4|0;m=s;c[e>>2]=a;c[k>>2]=d;c[r>>2]=0;c[n>>2]=
c[(c[k>>2]|0)+28>>2];c[(c[e>>2]|0)+612>>2]=0;c[r>>2]=Wa[c[(c[e>>2]|0
)+508>>2]&31](c[e>>2]|0,1161972803,c[k>>2]|0,0)|0;if(c[r>>2]|0)c[r>>2]=Wa
[c[(c[e>>2]|0)+508>>2]&31](c[e>>2]|0,1651273571,c[k>>2]|0,0)|0;if(c[r>>2]|
0){r=c[r>>2]|0;i=s;return r|0}c[q>>2]=Mc(c[k>>2]|0)|0;d=ee(c[k>>2]|0,8)|0;c[r>>
;2]=d;if(d|0){r=c[r>>2]|0;i=s;return r|0}c[j>>2]=je(c[k>>2]|0)|0;c[g>>2]=je(c[k>>
;2]|0)|0;ge(c[k>>2]|0);if((c[j>>2]|0)!=131072|(c[g>>2]|0)>>>0>=65536){c[r>
;>2]=3;r=c[r>>2]|0;i=s;return r|0}j=hc(c[n>>2]|0,48,0,c[g>>2]|0,0,r)|0;c[(c[e>>2]|0
)+616>>2]=j;if(c[r>>2]|0){r=c[r>>2]|0;i=s;return r|0}c[(c[e>>2]|0)+612>>2]=c[g
>>2];c[h>>2]=c[(c[e>>2]|0)+616>>2];c[f>>2]=c[g>>2];j=ee(c[k>>
;2]|0,(c[g>>2]|0)*48|0)|0;c[r>>2]=j;if(j|0){r=c[r>>2]|0;i=s;return r|0}while(1){if((c[f>>
;2]|0)>>>0<=0)break;j=le(c[k>>2]|0,8288,c[h>>2]|0)|0;c[r>>2]=j;if(j|0)break;j=
le(c[k>>2]|0,8308,(c[h>>2]|0)+16|0)|0;c[r>>2]=j;if(j|0)break;j=le(c[k>>2]|0,8308,(c[h>
;>2]|0)+28|0)|0;c[r>>2]=j;if(j|0)break;j=le(c[k>>2]|0,8360,c[h>>2]|0)|0;c[r>>2]=j;if
(j|0)break;c[f>>2]=(c[f>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+48}ge(c[k>>2]|0);c[p>
;>2]=c[(c[e>>2]|0)+616>>2];c[l>>2]=c[g>>2];a:while(1){if((c[l>>2]|0)>
;>>0<=0){e=30;break}c[m>>2]=c[c[p>>2]>>2];j=Kc(c[k>>2]|0,(c[q>>
2]|0)+(c[(c[p>>2]|0)+8>>2]|0)|0)|0;c[r>>2]=j;if(j|0){e=30;break}j=ee(c[k>>2]|0,c[c[p>
;>2]>>2]<<3)|0;c[r>>2]=j;if(j|0){e=30;break}j=hc(c[n>>2]|0,40,0,c[c[p>>2]
x3e;>2]|0,0,r)|0;c[(c[p>>2]|0)+4>>2]=j;if(c[r>>2]|0){e=30;break}c[o>>2]=c[(c[p>
;>2]|0)+4>>2];while(1){e=c[k>>2]|0;if((c[m>>2]|0)>>>0<=0)break;j=ie(e)|0;
b[c[o>>2]>>1]=j;j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+2>>1]=j;j=(c[q>>2]|0
)+(c[(c[p>>2]|0)+8>>2]|0)|0;j=j+(je(c[k>>2]|0)|0)|0;c[(c[o>>2]|0)+36>>2]=j;c[m
>>2]=(c[m>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+40}ge(e);c[m>>2]=c[c[p>>2]
x3e;>2];c[o>>2]=c[(c[p>>2]|0)+4>>2];while(1){if((c[m>>2]|0)>>>0<
;=0)break;j=Kc(c[k>>2]|0,c[(c[o>>2]|0)+36>>2]|0)|0;c[r>>2]=j;if(j|0){e=30;break a}j=ee(c
[k>>2]|0,8)|0;c[r>>2]=j;if(j|0){e=30;break a}j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+4>>
;1]=j;j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+6>>1]=j;j=je(c[k>>2]|0)|0;c[(c[o>>2]|0)+
8>>2]=j;ge(c[k>>2]|0);c[r>>2]=wl(c[o>>2]|0,c[k>>2]|0)|0;if(c[r>>2]|0
){e=30;break a}c[m>>2]=(c[m>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+40}c[l>>2]=(c[l>
;>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+48}if((e|0)==30){r=c[r>>2]|0;i=s;return r|0}return 0}function
wl(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;p=i;i=i+32|0;j=p+24|0;k=p+20|0;l=p+16|0;g=p+12|0;o=p+8|0;n=p+4|0;h=p
;m=p+28|0;c[j>>2]=b;c[k>>2]=f;c[g>>2]=c[(c[k>>2]|0)+28>>2];switch(e[(c[j>
x3e;2]|0)+4>>1]|0|0){case 3:case 1:{a[m>>0]=(e[(c[j>>2]|0)+4>>1]|0|0)==1;if((e[(c[j>
;>2]|0)+2>>1]|0|0)<(e[c[j>>2]>>1]|0|0)){c[l>>2]=3;o=c[l>>2]|0;i=p;return
o|0}c[o>>2]=(e[(c[j>>2]|0)+2>>1]|0)-(e[c[j>>2]>>1]|0)+1;c[(c[j>>2]|
0)+24>>2]=c[o>>2];c[o>>2]=(c[o>>2]|0)+1;c[h>>2]=d[m>>0]|0|0?4:2;f=hc
(c[g>>2]|0,4,0,c[o>>2]|0,0,l)|0;c[(c[j>>2]|0)+28>>2]=f;if(c[l>>2]|0){o=c[l>
;>2]|0;i=p;return o|0}f=ee(c[k>>2]|0,_(c[o>>2]|0,c[h>>2]|0)|0)|0;c[l>>2]=f;if(f|0){
o=c[l>>2]|0;i=p;return o|0}c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0>=(c[o>
x3e;2]|0)>>>0)break;b=c[(c[j>>2]|0)+8>>2]|0;g=c[k>>2]|0;if(d[m>>0]|0|0)g=
je(g)|0;else g=(ie(g)|0)&65535;c[(c[(c[j>>2]|0)+28>>2]|0)+(c[n>>2]<<2)>>2
]=b+g;c[n>>2]=(c[n>>2]|0)+1}ge(c[k>>2]|0);o=c[l>>2]|0;i=p;return o|0}case 2:{c[l>
x3e;2]=xl(c[j>>2]|0,c[k>>2]|0)|0;o=c[l>>2]|0;i=p;return o|0}case 4:{c[l>>2]=yl(c[j>
x3e;2]|0,c[k>>2]|0,1)|0;o=c[l>>2]|0;i=p;return o|0}case 5:{c[l>>2]=xl(c[j>>2]|0,c[k>
;>2]|0)|0;if(c[l>>2]|0){o=c[l>>2]|0;i=p;return o|0}c[l>>2]=yl(c[j>>2]|0,c[k>
x3e;2]|0,0)|0;o=c[l>>2]|0;i=p;return o|0}default:{c[l>>2]=3;o=c[l>>2]|0;i=p;return o|0}}return 0}function
xl(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;b
=Oc(c[f>>2]|0,g)|0;c[(c[e>>2]|0)+12>>2]=b;if(c[g>>2]|0){c[d>>2]=c[g>>
;2];b=c[d>>2]|0;i=h;return b|0}else{b=le(c[f>>2]|0,8200,(c[e>>2]|0)+16|0)|0;c[g>>2]=b;c[
d>>2]=(b|0)!=0&1;b=c[d>>2]|0;i=h;return b|0}return 0}function yl(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;p=i;i=i+32|0;j=p+24|0;k=p+20|0;l=p+28|0;n=p+16|0;m=p+12|0;o=p+8|0;h=p+4|0;g=p;c[j>>2]=d;c[k
>>2]=e;a[l>>0]=f;c[g>>2]=c[(c[k>>2]|0)+28>>2];c[m>>2]=Oc(c[k>
x3e;2]|0,n)|0;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}c[(c[j>>2]|0)+24>>2]=c[m>>
;2];do if(a[l>>0]|0){e=hc(c[g>>2]|0,4,0,c[m>>2]|0,0,n)|0;c[(c[j>>2]|0)+28>>2]=
e;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}else{c[h>>2]=c[m>>2]<<2;break}}else
c[h>>2]=c[m>>2]<<1;while(0);e=hc(c[g>>2]|0,2,0,c[m>>2]|0,0,n)|0;c[(c[j>
x3e;2]|0)+32>>2]=e;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}e=ee(c[k>>2]|0,c[h>>
;2]|0)|0;c[n>>2]=e;if(e|0){o=c[n>>2]|0;i=p;return o|0}c[o>>2]=0;while(1){f=c[k>>2]|0;if((
c[o>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;e=ie(f)|0;b[(c[(c[j>>2]|0
)+32>>2]|0)+(c[o>>2]<<1)>>1]=e;if(a[l>>0]|0){e=c[(c[j>>2]|0)+8>
x3e;2]|0;e=e+((ie(c[k>>2]|0)|0)&65535)|0;c[(c[(c[j>>2]|0)+28>>2]|0)+(c[o>>2]<
x3c;2)>>2]=e}c[o>>2]=(c[o>>2]|0)+1}ge(f);o=c[n>>2]|0;i=p;return o|0}function zl(a){a=a|0
;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;b=j+20|0;d=j+16|0;g=j+12|0;h=j+8|0;e=j+4|0;f=j;c[b>>2]=a;c[d>>
2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[b>>2]|0)+616>>2];c[h>>2]=(c[g
x3e;>2]|0)+((c[(c[b>>2]|0)+612>>2]|0)*48|0);if(!(c[g>>2]|0)){h=c[b>>2]|0;h=h+612|0;
c[h>>2]=0;i=j;return}while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>>
;0)break;c[e>>2]=c[(c[g>>2]|0)+4>>2];c[f>>2]=(c[e>>2]|0)+((c[c[g>>2]
x3e;>2]|0)*40|0);a:do if(c[e>>2]|0)while(1){if((c[e>>2]|0)>>>0>=(c[f>>2]|
0)>>>0)break a;Fb(c[d>>2]|0,c[(c[e>>2]|0)+28>>2]|0);c[(c[e>>2]|0)+28>
;>2]=0;Fb(c[d>>2]|0,c[(c[e>>2]|0)+32>>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[e>
;>2]=(c[e>>2]|0)+40}while(0);Fb(c[d>>2]|0,c[(c[g>>2]|0)+4>>2]|0);c[(c[g>>
2]|0)+4>>2]=0;c[c[g>>2]>>2]=0;c[g>>2]=(c[g>>2]|0)+48}Fb(c[d>>2]|0,c[(
c[b>>2]|0)+616>>2]|0);c[(c[b>>2]|0)+616>>2]=0;h=c[b>>2]|0;h=h+612|0;c[h>
x3e;2]=0;i=j;return}function Al(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;n=i;i=i+32|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+
4|0;m=n;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;if((c[k>>2]|0)>>>0>=(c[(c[j>
;>2]|0)+612>>2]|0)>>>0){c[h>>2]=6;f=c[h>>2]|0;i=n;return f|0}else{c[m>>
;2]=(c[(c[j>>2]|0)+616>>2]|0)+((c[k>>2]|0)*48|0);b[c[l>>2]>>1]=d[(c[m>>
;2]|0)+44>>0]|0;b[(c[l>>2]|0)+2>>1]=d[(c[m>>2]|0)+45>>0]|0;c[(c[l>>2
]|0)+12>>2]=a[(c[m>>2]|0)+16>>0]<<6;c[(c[l>>2]|0)+16>>2]=a[(c[m>
;>2]|0)+16+1>>0]<<6;c[(c[l>>2]|0)+24>>2]=(a[(c[m>>2]|0)+16+6>>0
]|0)+(d[(c[m>>2]|0)+16+2>>0]|0)+(a[(c[m>>2]|0)+16+7>>0]|0)<<6;c[(c[l>>
;2]|0)+20>>2]=(c[(c[l>>2]|0)+12>>2]|0)-(c[(c[l>>2]|0)+16>>2]|0);c[h>>
;2]=0;f=c[h>>2]|0;i=n;return f|0}return 0}function Bl(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;s=i;i=i+48|0;l=s+32|0;t=s+28|0;w=s+38|0;m=s+24|0;n=s+20|0;o=s+16|0;v=s+12|0;u=s+8|0;p=s+4|0;r=s;q=s
+36|0;c[t>>2]=f;a[w>>0]=g;c[m>>2]=h;c[n>>2]=j;c[o>>2]=k;c[v>>2]=(c[t
>>2]|0)+300;c[u>>2]=(c[t>>2]|0)+216;c[p>>2]=d[w>>0]|0|0?c[v>>2]|0:c[
u>>2]|0;b[q>>1]=b[(c[p>>2]|0)+34>>1]|0;if((e[q>>1]|0|0?c[(c[p>>2]|0)+
36>>2]|0:0)?(c[m>>2]|0)>>>0<(e[(c[t>>2]|0)+260+4>>1]|0)>>
x3e;0:0){if((c[m>>2]|0)>>>0<(e[q>>1]|0)>>>0){c[r>>2]=(c[(c[p>
;>2]|0)+36>>2]|0)+(c[m>>2]<<2);b[c[n>>2]>>1]=b[(c[r>>2]|0)+2>
;>1]|0;b[c[o>>2]>>1]=b[c[r>>2]>>1]|0}else{b[c[n>>2]>>1]=b[(c[(c
[p>>2]|0)+40>>2]|0)+((c[m>>2]|0)-(e[q>>1]|0)<<1)>>1]|0;b[c[o>
x3e;2]>>1]=b[(c[(c[p>>2]|0)+36>>2]|0)+((e[q>>1]|0)-1<<2)>>1]|0}c[l
x3e;>2]=0;w=c[l>>2]|0;i=s;return w|0}b[c[o>>2]>>1]=0;b[c[n>>2]>>1]=0;c[l
x3e;>2]=0;w=c[l>>2]|0;i=s;return w|0}function Cl(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;Dl(c[f>>2]|0,c[e>>2]|0);i=d;return 0}function Dl(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)+112>>2]=c[f>>
2];c[(c[e>>2]|0)+104>>2]=c[(c[f>>2]|0)+4+24>>2];i=d;return}function El(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[f>>2]=c[f>>2];c[e>
x3e;2]=c[e>>2];i=d;return 0}function Fl(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+16|0;f=k+12|0;h=
k+8|0;j=k+4|0;g=k;c[d>>2]=a;c[f>>2]=b;c[h>>2]=0;c[j>>2]=c[(c[f>>2]|0)+92>
x3e;2];c[(c[d>>2]|0)+36>>2]=e[(c[f>>2]|0)+68>>1];c[g>>2]=0;while(1){if(!(c[3616
+(c[g>>2]<<2)>>2]|0))break;c[h>>2]=Id(c[f>>2]|0,c[3616+(c[g>>2]<
;<2)>>2]|0)|0;if(!(c[h>>2]|0))break;c[g>>2]=(c[g>>2]|0)+1}if(c[h>>2]|0){a
=c[f>>2]|0;j=c[j>>2]|0;Jd(a,j)|0;i=k;return 0}Gl(c[d>>2]|0,c[f>>2]|0,111);Pl(c[d>
x3e;2]|0,c[f>>2]|0);Rl(c[d>>2]|0,c[f>>2]|0);a=c[f>>2]|0;j=c[j>>2]|0;Jd(a,j)|0;
i=k;return 0}function Gl(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,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=
0;y=i;i=i+1024|0;t=y+1016|0;g=y+1012|0;z=y+1008|0;w=y+884|0;m=y+880|0;n=y+876|0;v=y+872|0;l=y+40|0;r=y+36|0;j=y+32|0;h=y+28|0;s=
y+24|0;o=y+20|0;p=y+16|0;q=y+12|0;k=y+8|0;u=y+4|0;x=y;c[t>>2]=d;c[g>>2]=e;c[z>>2]=f;Hl(w,c[(c[g>
;>2]|0)+100>>2]|0);c[(c[t>>2]|0)+40+8>>2]=0;c[(c[t>>2]|0)+40+396+8>>2]=0;
c[r>>2]=l+4;c[n>>2]=Dc(c[g>>2]|0,c[z>>2]|0)|0;a:do if(((c[n>>2]|0?(c[m>
x3e;2]=Cb(c[g>>2]|0,c[n>>2]|0,1)|0,(c[m>>2]|0)==0):0)?(b[(c[(c[g>>2]|0)+84>>2]|
0)+108+2>>1]|0)>0:0)?(Ns(l|0,0,832)|0,c[l+36>>2]=c[(c[t>>2]|0)+36>>2],c[(c[r>
x3e;2]|0)+8>>2]=65536,c[(c[r>>2]|0)+4>>2]=65536,c[(c[r>>2]|0)+16>>2]=0,c[(c[r
x3e;>2]|0)+12>>2]=0,c[c[r>>2]>>2]=c[g>>2],c[(c[r>>2]|0)+20>>2]=
0,c[(c[r>>2]|0)+24>>2]=0,Dl(w,l),c[m>>2]=Il(w,(c[(c[g>>2]|0)+84>>2]|0)+108|0)|
0,(c[m>>2]|0)==0):0){c[v>>2]=0;while(1){if((c[v>>2]|0)>=2)break a;c[j>>2]=(c[t>
;>2]|0)+40+((c[v>>2]|0)*396|0);c[h>>2]=w+48+((c[v>>2]|0)*28|0);c[q>>2]=0;c[m>
x3e;2]=Kl(w,c[v>>2]|0)|0;if(c[m>>2]|0)break a;Ml(w,c[v>>2]|0);c[s>>2]=c[(c[h>>
2]|0)+8>>2];c[o>>2]=(c[s>>2]|0)+((c[c[h>>2]>>2]|0)*52|0);while(1){if((c[s>
;>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[p>>2]=c[(c[s>>2]|0)+20
>>2];if((c[p>>2]|0?(c[(c[p>>2]|0)+20>>2]|0)==(c[s>>2]|0):0)?(c[p>>2]|
0)>>>0>(c[s>>2]|0)>>>0:0){c[k>>2]=(b[(c[s>>2]|0)+2>>1
]|0)-(b[(c[p>>2]|0)+2>>1]|0);if((c[k>>2]|0)<0)c[k>>2]=0-(c[k>>2]|0);if((c
[q>>2]|0)>>>0<16){r=c[k>>2]|0;z=c[q>>2]|0;c[q>>2]=z+1;c[(c[j>
x3e;2]|0)+12+(z*12|0)>>2]=r}}c[s>>2]=(c[s>>2]|0)+52}Nl(c[q>>2]|0,(c[j>>2]|0)+12
|0);c[(c[j>>2]|0)+8>>2]=c[q>>2];c[v>>2]=(c[v>>2]|0)+1}}while(0);c[v>>
;2]=0;while(1){if((c[v>>2]|0)>=2)break;c[u>>2]=(c[t>>2]|0)+40+((c[v>>2]|0)*396|0);if
((c[(c[u>>2]|0)+8>>2]|0)>>>0>0)g=c[(c[u>>2]|0)+12>>2]|0;else g=((c[(
c[t>>2]|0)+36>>2]|0)*50|0)/2048|0;c[x>>2]=g;c[(c[u>>2]|0)+204>>2]=(c[x>
x3e;2]|0)/5|0;c[(c[u>>2]|0)+208>>2]=c[x>>2];a[(c[u>>2]|0)+212>>0]=0;c[v>
x3e;2]=(c[v>>2]|0)+1}Ol(w);i=y;return}function Hl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>
x3e;2]=a;c[e>>2]=b;a=c[d>>2]|0;b=a+124|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[c[d>
x3e;2]>>2]=c[e>>2];i=f;return}function Il(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,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;M=i;i=i+128|0;g=M+112|0;h=M+108|0;A=M+104|0;z
=M+100|0;n=M+96|0;m=M+92|0;s=M+88|0;u=M+84|0;r=M+80|0;t=M+76|0;l=M+72|0;I=M+68|0;J=M+64|0;q=M+60|0;p=M+56|0;k=M+52|0;o=M+48|0;j=
M+44|0;v=M+40|0;w=M+36|0;x=M+32|0;y=M+116|0;B=M+28|0;K=M+24|0;D=M+20|0;E=M+16|0;C=M+12|0;F=M+8|0;G=M+4|0;H=M;c[g>>2]=d
;c[h>>2]=f;c[A>>2]=0;c[s>>2]=c[(c[g>>2]|0)+4>>2];c[u>>2]=c[(c[g>
;>2]|0)+12>>2];c[r>>2]=c[(c[g>>2]|0)+8>>2];c[t>>2]=c[(c[g>>2]|0
)+16>>2];c[l>>2]=c[c[g>>2]>>2];c[(c[g>>2]|0)+28>>2]=0;c[(c[g>
x3e;2]|0)+40>>2]=0;c[(c[g>>2]|0)+48>>2]=0;c[(c[g>>2]|0)+48+12>>2]=0;c[(c[g>
;>2]|0)+48+28>>2]=0;c[(c[g>>2]|0)+48+28+12>>2]=0;c[m>>2]=b[c[h>>2]>
x3e;1];c[n>>2]=c[(c[g>>2]|0)+36>>2];do if((c[m>>2]|0)>>>0>(c[n>
x3e;2]|0)>>>0){c[m>>2]=(c[m>>2]|0)+3&-4;f=hc(c[l>>2]|0,4,c[n>>2]|0,c
[m>>2]|0,c[(c[g>>2]|0)+44>>2]|0,A)|0;c[(c[g>>2]|0)+44>>2]=f;if(c[A>>
2]|0){L=c[A>>2]|0;i=M;return L|0}else{c[(c[g>>2]|0)+36>>2]=c[m>>2];break}}while(0);c[m
x3e;>2]=(b[(c[h>>2]|0)+2>>1]|0)+2;c[n>>2]=c[(c[g>>2]|0)+24>>2];do if((c[m
>>2]|0)>>>0>(c[n>>2]|0)>>>0){c[m>>2]=(c[m>>2]|0)+2+7
x26;-8;f=hc(c[l>>2]|0,40,c[n>>2]|0,c[m>>2]|0,c[(c[g>>2]|0)+32>>2]|0,A)|0;c[(c[
g>>2]|0)+32>>2]=f;if(c[A>>2]|0){L=c[A>>2]|0;i=M;return L|0}else{c[(c[g>>2]|0)+
24>>2]=c[m>>2];break}}while(0);c[(c[g>>2]|0)+28>>2]=b[(c[h>>2]|0)+2>>
;1];c[(c[g>>2]|0)+40>>2]=b[c[h>>2]>>1];c[(c[g>>2]|0)+48+24>>2]=2;c[(
c[g>>2]|0)+48+28+24>>2]=-1;if(($d(c[h>>2]|0)|0)==1){c[(c[g>>2]|0)+48+24>>2]=-2
;c[(c[g>>2]|0)+48+28+24>>2]=1}c[(c[g>>2]|0)+4>>2]=c[s>>2];c[(c[g>>2]|
0)+12>>2]=c[u>>2];c[(c[g>>2]|0)+8>>2]=c[r>>2];c[(c[g>>2]|0)+16>
x3e;2]=c[t>>2];c[(c[g>>2]|0)+116>>2]=0;c[(c[g>>2]|0)+120>>2]=0;c[z>>
2]=c[(c[g>>2]|0)+32>>2];if(!(c[(c[g>>2]|0)+28>>2]|0)){L=c[A>>2]|0;i=M;return L
|0}c[J>>2]=(c[z>>2]|0)+((c[(c[g>>2]|0)+28>>2]|0)*40|0);c[q>>2]=c[(c[h>>
;2]|0)+4>>2];c[p>>2]=c[(c[h>>2]|0)+8>>2];c[k>>2]=(c[z>>2]|0)+((b[c[(
c[h>>2]|0)+12>>2]>>1]|0)*40|0);c[o>>2]=c[k>>2];c[j>>2]=0;c[I>
x3e;2]=c[z>>2];while(1){if((c[I>>2]|0)>>>0>=(c[J>>2]|0)>>>0)break
;b[(c[I>>2]|0)+12>>1]=c[c[q>>2]>>2];b[(c[I>>2]|0)+14>>1]=c[(c[q>
;>2]|0)+4>>2];f=Mb(c[c[q>>2]>>2]|0,c[s>>2]|0)|0;f=f+(c[r>>2]|0)|0;c[(c[I
x3e;>2]|0)+16>>2]=f;c[(c[I>>2]|0)+4>>2]=f;f=Mb(c[(c[q>>2]|0)+4>>2]|0,c[u
x3e;>2]|0)|0;f=f+(c[t>>2]|0)|0;c[(c[I>>2]|0)+20>>2]=f;c[(c[I>>2]|0)+8>>2]=
f;switch(a[c[p>>2]>>0]&3|0){case 0:{b[c[I>>2]>>1]=1;break}case 2:{b[c[I>>
2]>>1]=2;break}default:b[c[I>>2]>>1]=0}c[(c[I>>2]|0)+36>>2]=c[o>>2];
c[(c[o>>2]|0)+32>>2]=c[I>>2];c[o>>2]=c[I>>2];if((c[I>>2]|0)==(c[k>
;>2]|0)?(f=(c[j>>2]|0)+1|0,c[j>>2]=f,(f|0)<(b[c[h>>2]>>1]|0)):0){c[k>>
;2]=(c[z>>2]|0)+((b[(c[(c[h>>2]|0)+12>>2]|0)+(c[j>>2]<<1)>>1]|0)*40|
0);c[o>>2]=c[k>>2]}c[I>>2]=(c[I>>2]|0)+40;c[q>>2]=(c[q>>2]|0)+8;c[p
x3e;>2]=(c[p>>2]|0)+1}c[v>>2]=c[(c[g>>2]|0)+44>>2];c[w>>2]=(c[v>>
;2]|0)+(c[(c[g>>2]|0)+40>>2]<<2);c[x>>2]=c[(c[h>>2]|0)+12>>2];b[y>
;>1]=0;while(1){g=c[z>>2]|0;if((c[v>>2]|0)>>>0>=(c[w>>2]|0)>>
x3e;0)break;c[c[v>>2]>>2]=g+((b[y>>1]|0)*40|0);b[y>>1]=(b[c[x>>2]>>1
]|0)+1;c[v>>2]=(c[v>>2]|0)+4;c[x>>2]=(c[x>>2]|0)+2}c[B>>2]=g;c[K>>2]=
0;c[D>>2]=0;c[E>>2]=0;c[C>>2]=4;c[I>>2]=c[z>>2];while(1){if((c[I>>2]|
0)>>>0>=(c[J>>2]|0)>>>0)break;if((c[I>>2]|0)==(c[B>>2]|0)){c[K
x3e;>2]=c[(c[B>>2]|0)+36>>2];c[D>>2]=(b[(c[B>>2]|0)+12>>1]|0)-(b[(c[K>
;>2]|0)+12>>1]|0);c[E>>2]=(b[(c[B>>2]|0)+14>>1]|0)-(b[(c[K>>2]|0)+14>
;>1]|0);c[C>>2]=Jl(c[D>>2]|0,c[E>>2]|0)|0;c[B>>2]=(c[K>>2]|0)+40}a[(c[I
x3e;>2]|0)+2>>0]=c[C>>2];c[F>>2]=c[(c[I>>2]|0)+32>>2];c[G>>2]=(
b[(c[F>>2]|0)+12>>1]|0)-(b[(c[I>>2]|0)+12>>1]|0);c[H>>2]=(b[(c[F>>2]|
0)+14>>1]|0)-(b[(c[I>>2]|0)+14>>1]|0);c[C>>2]=Jl(c[G>>2]|0,c[H>>2]|0
)|0;a[(c[I>>2]|0)+3>>0]=c[C>>2];do if(!(e[c[I>>2]>>1]&3|0)){g=c[I>
x3e;2]|0;if((a[(c[I>>2]|0)+3>>0]|0)!=(a[(c[I>>2]|0)+2>>0]|0))if((a[g+2>>0]|0)==(
0-(a[(c[I>>2]|0)+3>>0]|0)|0)){L=28;break}else break;if(!((a[g+3>>0]|0)==4?!($b(c[D>>2]|0
,c[E>>2]|0,c[G>>2]|0,c[H>>2]|0)|0):0))L=28}else L=28;while(0);if((L|0)==28){L=0;z=c[I>>2
]|0;b[z>>1]=e[z>>1]|256}c[D>>2]=c[G>>2];c[E>>2]=c[H>>2];c[K>>
;2]=c[I>>2];c[I>>2]=(c[I>>2]|0)+40}L=c[A>>2]|0;i=M;return L|0}function Jl(a,b){a=a|0;b=b
|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;g=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;a=(c[e
>>2]|0)>=(0-(c[d>>2]|0)|0);do if((c[e>>2]|0)>=(c[d>>2]|0))if(a){c[f>>
;2]=2;c[g>>2]=c[e>>2];c[h>>2]=c[d>>2];break}else{c[f>>2]=-1;c[g>>2]=
0-(c[d>>2]|0);c[h>>2]=c[e>>2];break}else if(a){c[f>>2]=1;c[g>>2]=c[d>>
;2];c[h>>2]=c[e>>2];break}else{c[f>>2]=-2;c[g>>2]=c[e>>2];c[h>>2]=c[
d>>2];break}while(0);c[h>>2]=(c[h>>2]|0)*14;d=c[g>>2]|0;e=c[h>>2]|0;if((((c[g
x3e;>2]|0)<0?0-d|0:d)|0)>(((c[h>>2]|0)<0?0-e|0:e)|0)){h=c[f>>2]|0;i=j;return h|0}c[f>
;>2]=4;h=c[f>>2]|0;i=j;return h|0}function Kl(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;P=i;i=i+176|0;j=P+164|0;k=P+160|0;p=P+
156|0;v=P+152|0;G=P+148|0;N=P+144|0;A=P+92|0;q=P+88|0;r=P+84|0;t=P+80|0;B=P+76|0;n=P+72|0;l=P+68|0;o=P+64|0;m=P+60|0;z=P+56|0;s=
P+52|0;x=P+48|0;w=P+44|0;u=P+40|0;y=P+168|0;D=P+36|0;E=P+32|0;C=P+28|0;O=P+24|0;H=P+20|0;J=P+16|0;I=P+12|0;K=P+8|0;L=P+4|0;M=P;c
[j>>2]=f;c[k>>2]=g;c[p>>2]=(c[j>>2]|0)+48+((c[k>>2]|0)*28|0);c[v>>2]=
c[c[j>>2]>>2];c[G>>2]=0;c[N>>2]=0;c[q>>2]=c[(c[j>>2]|0)+44>>
;2];c[r>>2]=(c[q>>2]|0)+(c[(c[j>>2]|0)+40>>2]<<2);f=A;h=f+52|0;do{c[f>>
;2]=0;f=f+4|0}while((f|0)<(h|0));c[A+32>>2]=32e3;a[A>>0]=0;g=c[(c[p>>2]|0)+24>>2]|0
;c[t>>2]=(c[(c[p>>2]|0)+24>>2]|0)<0?0-g|0:g;c[B>>2]=c[t>>2];c[c[p>
x3e;2]>>2]=0;g=c[(c[j>>2]|0)+32>>2]|0;a:do if(!(c[k>>2]|0)){c[n>>2]=g;c[l>
;>2]=(c[n>>2]|0)+((c[(c[j>>2]|0)+28>>2]|0)*40|0);while(1){if((c[n>>2]|0)>>
;>0>=(c[l>>2]|0)>>>0)break a;c[(c[n>>2]|0)+24>>2]=b[(c[n>>2]|0)+
12>>1];c[(c[n>>2]|0)+28>>2]=b[(c[n>>2]|0)+14>>1];c[n>>2]=(c[n>
x3e;2]|0)+40}}else{c[o>>2]=g;c[m>>2]=(c[o>>2]|0)+((c[(c[j>>2]|0)+28>>2]|0)*40|
0);while(1){if((c[o>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break a;c[(c[o>>
;2]|0)+24>>2]=b[(c[o>>2]|0)+14>>1];c[(c[o>>2]|0)+28>>2]=b[(c[o>>2]|0
)+12>>1];c[o>>2]=(c[o>>2]|0)+40}}while(0);b:while(1){if((c[q>>2]|0)>>>0
x3e;=(c[r>>2]|0)>>>0)break;c[z>>2]=c[c[q>>2]>>2];c[s>>2]=c[(c[z
>>2]|0)+36>>2];c[x>>2]=0;c[w>>2]=32e3;c[u>>2]=-32e3;c:do if((c[z>>2]|
0)!=(c[s>>2]|0)){o=a[(c[s>>2]|0)+3>>0]|0;d:do if((((a[(c[s>>2]|0)+3>>0]|0)<
;0?0-o|0:o)|0)==(c[t>>2]|0)?(o=a[(c[z>>2]|0)+3>>0]|0,(((a[(c[z>>2]|0)+3>>0]|0)
x3c;0?0-o|0:o)|0)==(c[t>>2]|0)):0){c[s>>2]=c[z>>2];while(1){c[z>>2]=c[(c[z>>2]|
0)+36>>2];o=a[(c[z>>2]|0)+3>>0]|0;g=c[z>>2]|0;if((((a[(c[z>>2]|0)+3>>
;0]|0)<0?0-o|0:o)|0)!=(c[t>>2]|0))break;if((g|0)==(c[s>>2]|0))break d}c[z>>2]=c[g+32>>
;2]}while(0);c[s>>2]=c[z>>2];a[y>>0]=0;while(1){do if(c[x>>2]|0){c[D>>2]=c[(c[
z>>2]|0)+24>>2];if((c[D>>2]|0)<(c[w>>2]|0))c[w>>2]=c[D>>2];if((
c[D>>2]|0)>(c[u>>2]|0))c[u>>2]=c[D>>2];if((a[(c[z>>2]|0)+3>>0]|
0)==(c[B>>2]|0)?(c[z>>2]|0)!=(c[s>>2]|0):0)break;c[(c[N>>2]|0)+44>>2]=c[z>
;>2];b[(c[N>>2]|0)+2>>1]=(c[w>>2]|0)+(c[u>>2]|0)>>1;if((e[c[(c[N>>
;2]|0)+40>>2]>>1]|e[c[z>>2]>>1])&3|0){o=c[N>>2]|0;a[o>>0]=d[o
x3e;>0]|1}o=c[(c[z>>2]|0)+28>>2]|0;c[u>>2]=o;c[w>>2]=o;c[E>>2]=c[(c[(c[N
x3e;>2]|0)+40>>2]|0)+28>>2];if((c[E>>2]|0)<(c[w>>2]|0))c[w>>2]=c[E
x3e;>2];if((c[E>>2]|0)>(c[u>>2]|0))c[u>>2]=c[E>>2];b[(c[N>>2]|0)+4
x3e;>1]=c[w>>2];b[(c[N>>2]|0)+6>>1]=c[u>>2];b[(c[N>>2]|0)+8>>1]=(
b[(c[N>>2]|0)+6>>1]|0)-(b[(c[N>>2]|0)+4>>1]|0);c[x>>2]=0;c[N>>2]=0}while
(0);if((c[z>>2]|0)==(c[s>>2]|0)){if(a[y>>0]|0)break c;a[y>>0]=1}if((c[x>>2]|0)==
0?(o=a[(c[z>>2]|0)+3>>0]|0,(((a[(c[z>>2]|0)+3>>0]|0)<0?0-o|0:o)|0)==(c[t>>
;2]|0)):0){c[B>>2]=a[(c[z>>2]|0)+3>>0];c[G>>2]=Ll(c[p>>2]|0,c[v>>2]|
0,N)|0;if(c[G>>2]|0){F=53;break b}f=c[N>>2]|0;g=A;h=f+52|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=
g+4|0}while((f|0)<(h|0));a[(c[N>>2]|0)+1>>0]=c[B>>2];o=c[(c[z>>2]|0)+24>>
2]|0;c[u>>2]=o;c[w>>2]=o;c[(c[N>>2]|0)+40>>2]=c[z>>2];c[(c[N>>2]|0)+
44>>2]=c[z>>2];c[(c[N>>2]|0)+48>>2]=c[q>>2];c[x>>2]=1}c[z>>
;2]=c[(c[z>>2]|0)+32>>2]}}while(0);c[q>>2]=(c[q>>2]|0)+4}if((F|0)==53){O=c[G>>
2]|0;i=P;return O|0}c[C>>2]=c[(c[p>>2]|0)+8>>2];c[O>>2]=(c[C>>2]|0)+((c[c[p>
;>2]>>2]|0)*52|0);c[N>>2]=c[C>>2];while(1){if((c[N>>2]|0)>>>0>=(
c[O>>2]|0)>>>0)break;c[H>>2]=c[(c[N>>2]|0)+40>>2];c[J>>2]=c[(c[
N>>2]|0)+44>>2];c[I>>2]=c[(c[H>>2]|0)+28>>2];c[K>>2]=c[(c[J>>
;2]|0)+28>>2];do if((c[H>>2]|0)!=(c[J>>2]|0)){g=c[(c[H>>2]|0)+36>>2]|0;if((c[I
>>2]|0)<(c[K>>2]|0)){c[L>>2]=g;if((c[(c[L>>2]|0)+28>>2]|0)<(c[I>
;>2]|0))b[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8>>1]|0)+((c[I>>2]|0)-(c[(c[L
x3e;>2]|0)+28>>2]|0)>>1);c[L>>2]=c[(c[J>>2]|0)+32>>2];if((c[(c[L>>
;2]|0)+28>>2]|0)<=(c[K>>2]|0))break;b[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8
x3e;>1]|0)+((c[(c[L>>2]|0)+28>>2]|0)-(c[K>>2]|0)>>1);break}else{c[M>>2]=g
;if((c[(c[M>>2]|0)+28>>2]|0)>(c[I>>2]|0))b[(c[N>>2]|0)+8>>1]=(b[(c[N>
;>2]|0)+8>>1]|0)+((c[(c[M>>2]|0)+28>>2]|0)-(c[I>>2]|0)>>1);c[M>>
;2]=c[(c[J>>2]|0)+32>>2];if((c[(c[M>>2]|0)+28>>2]|0)>=(c[K>>2]|0))break;b
[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8>>1]|0)+((c[K>>2]|0)-(c[(c[M>>2]|
0)+28>>2]|0)>>1);break}}while(0);c[N>>2]=(c[N>>2]|0)+52}O=c[G>>2]|0;i=P;return
O|0}function Ll(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;n=i;i=i+32|0;e=n+28|0;f=n+24|0;g=n+20|0;j=n+16
|0;m=n+12|0;l=n+8|0;k=n+4|0;h=n;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=0;c[m>>2
]=0;do if((c[c[e>>2]>>2]|0)>=(c[(c[e>>2]|0)+4>>2]|0)){c[l>>2]=c[(c[e>
;>2]|0)+4>>2];c[k>>2]=c[l>>2];c[h>>2]=41297762;if((c[l>>2]|0)>=(c[h
x3e;>2]|0)){c[j>>2]=64;l=c[m>>2]|0;m=c[g>>2]|0;c[m>>2]=l;m=c[j>>2]|0;i=n;
return m|0}c[k>>2]=(c[k>>2]|0)+((c[k>>2]>>2)+4);if(!((c[k>>2]|0)>=(c[l>
;>2]|0)?(c[k>>2]|0)<=(c[h>>2]|0):0))c[k>>2]=c[h>>2];l=hc(c[f>>2]|0,52
,c[l>>2]|0,c[k>>2]|0,c[(c[e>>2]|0)+8>>2]|0,j)|0;c[(c[e>>2]|0)+8>>2]=
l;if(c[j>>2]|0){l=c[m>>2]|0;m=c[g>>2]|0;c[m>>2]=l;m=c[j>>2]|0;i=n;return m|0}else
{c[(c[e>>2]|0)+4>>2]=c[k>>2];break}}while(0);k=c[(c[e>>2]|0)+8>>2]|0;b=c[e>
;>2]|0;l=c[b>>2]|0;c[b>>2]=l+1;c[m>>2]=k+(l*52|0);l=c[m>>2]|0;m=c[g>>2]|0
;c[m>>2]=l;m=c[j>>2]|0;i=n;return m|0}function Ml(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;u=i;i=i+64|0;v=u+60|0;w=u+56|0;f=u+52|0;t=u+48|0;s=u+44|0;k=u+40|0;j=u+36|0;q=u+32|0;r=u+28|0;n=u
+24|0;o=u+20|0;g=u+16|0;m=u+12|0;l=u+8|0;h=u+4|0;p=u;c[v>>2]=d;c[w>>2]=e;c[f>>2]=(c[v>>2
]|0)+48+((c[w>>2]|0)*28|0);c[t>>2]=c[(c[f>>2]|0)+8>>2];c[s>>2]=(c[t>>
;2]|0)+((c[c[f>>2]>>2]|0)*52|0);d=(c[(c[(c[v>>2]|0)+112>>2]|0)+36>>2]<<
;3|0)/2048|0;c[k>>2]=d;c[k>>2]=(c[k>>2]|0)==0?1:d;c[j>>2]=((c[(c[(c[v>>2]|0)+112
>>2]|0)+36>>2]|0)*6e3|0)/2048|0;c[q>>2]=c[t>>2];while(1){if((c[q>>2]|0)>
x3e;>0>=(c[s>>2]|0)>>>0)break;a:do if((a[(c[q>>2]|0)+1>>0]|0)==(c[(c[f>
;>2]|0)+24>>2]|0)?(c[(c[q>>2]|0)+40>>2]|0)!=(c[(c[q>>2]|0)+44>>2]|0):0){c
[r>>2]=c[t>>2];while(1){if((c[r>>2]|0)>>>0>=(c[s>>2]|0)>>
x3e;0)break a;if(((a[(c[q>>2]|0)+1>>0]|0)+(a[(c[r>>2]|0)+1>>0]|0)|0)==0?(b[(c[r>>
;2]|0)+2>>1]|0)>(b[(c[q>>2]|0)+2>>1]|0):0){c[n>>2]=b[(c[q>>2]|0)+2>
x3e;1];c[o>>2]=b[(c[r>>2]|0)+2>>1];c[g>>2]=(c[o>>2]|0)-(c[n>>2]|0);if
((c[g>>2]|0)<0)c[g>>2]=0-(c[g>>2]|0);c[m>>2]=b[(c[q>>2]|0)+4>>1
];c[l>>2]=b[(c[q>>2]|0)+6>>1];if((c[m>>2]|0)<(b[(c[r>>2]|0)+4>>
1]|0))c[m>>2]=b[(c[r>>2]|0)+4>>1];if((c[l>>2]|0)>(b[(c[r>>2]|0)+6>
x3e;1]|0))c[l>>2]=b[(c[r>>2]|0)+6>>1];c[h>>2]=(c[l>>2]|0)-(c[m>>2]|0
);if((c[h>>2]|0)>=(c[k>>2]|0)){c[p>>2]=(c[g>>2]|0)+((c[j>>2]|0)/(c[h>
;>2]|0)|0);if((c[p>>2]|0)<(c[(c[q>>2]|0)+32>>2]|0)){c[(c[q>>2]|0)+32>>
;2]=c[p>>2];c[(c[q>>2]|0)+20>>2]=c[r>>2]}if((c[p>>2]|0)<(c[(c[r>>
;2]|0)+32>>2]|0)){c[(c[r>>2]|0)+32>>2]=c[p>>2];c[(c[r>>2]|0)+20>>2]=
c[q>>2]}}}c[r>>2]=(c[r>>2]|0)+52}}while(0);c[q>>2]=(c[q>>2]|0)+52}c[q>>
;2]=c[t>>2];while(1){if((c[q>>2]|0)>>>0>=(c[s>>2]|0)>>>0)break;
c[r>>2]=c[(c[q>>2]|0)+20>>2];if(c[r>>2]|0?(c[(c[r>>2]|0)+20>>2]|0)!=(
c[q>>2]|0):0){c[(c[q>>2]|0)+20>>2]=0;c[(c[q>>2]|0)+24>>2]=c[(c[r>>2]|
0)+20>>2]}c[q>>2]=(c[q>>2]|0)+52}i=u;return}function Nl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;j=i;i=i+32|0;d=j+24|0;e=j+20|0;f=j+16|0;g=j+12|0;h=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=1;while(1){if((
c[f>>2]|0)>>>0>=(c[d>>2]|0)>>>0)break;c[g>>2]=c[f>>2];
while(1){if((c[g>>2]|0)>>>0<=0)break;if((c[(c[e>>2]|0)+((c[g>>2]|0)*12|0)>
;>2]|0)>(c[(c[e>>2]|0)+(((c[g>>2]|0)-1|0)*12|0)>>2]|0))break;b=(c[e>>2]|0)+((c
[g>>2]|0)*12|0)|0;c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+
8>>2];b=(c[e>>2]|0)+((c[g>>2]|0)*12|0)|0;a=(c[e>>2]|0)+(((c[g>>2]|0)-1|0)*12|0
)|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];b=(c[e
x3e;>2]|0)+(((c[g>>2]|0)-1|0)*12|0)|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];
c[b+8>>2]=c[h+8>>2];c[g>>2]=(c[g>>2]|0)+-1}c[f>>2]=(c[f>>2]|0)+1}i=j
;return}function Ol(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;f=g+8|0;e=g+4|0;d=g;c[b>>2]=a;if(!(c[b>
;>2]|0)){i=g;return}if(!(c[c[b>>2]>>2]|0)){i=g;return}c[f>>2]=c[c[b>>2]>>
2];c[e>>2]=0;while(1){if((c[e>>2]|0)>=2)break;c[d>>2]=(c[b>>2]|0)+48+((c[e>>
;2]|0)*28|0);c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;Fb(c[f>>2]|0,c[(c[d>
x3e;2]|0)+8>>2]|0);c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+12>>2]=0;c[(c[d>
x3e;2]|0)+16>>2]=0;Fb(c[f>>2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>
x3e;2]=0;c[e>>2]=(c[e>>2]|0)+1}Fb(c[f>>2]|0,c[(c[b>>2]|0)+44>>2]|0);c[(c[b>
;>2]|0)+44>>2]=0;c[(c[b>>2]|0)+36>>2]=0;c[(c[b>>2]|0)+40>>2]=0;Fb(c[f>
;>2]|0,c[(c[b>>2]|0)+32>>2]|0);c[(c[b>>2]|0)+32>>2]=0;c[(c[b>>2]|0)+28>
;>2]=0;c[(c[b>>2]|0)+24>>2]=0;c[c[b>>2]>>2]=0;i=g;return}function Pl(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;N=i;i=i+224|0;O=N+212|0;g=N+208|0;u=N+160|0;L=N+112|0;B=N+104|0;C=N+100|0;j=N+96|0;o=N+92|0;s=N+88|0;h=N+84|0;v=N
+80|0;F=N+76|0;y=N+72|0;p=N+68|0;q=N+64|0;w=N+60|0;n=N+56|0;m=N+52|0;k=N+48|0;l=N+44|0;G=N+40|0;K=N+217|0;A=N+36|0;t=N+32|0;x=N+
28|0;D=N+24|0;H=N+20|0;I=N+16|0;z=N+12|0;r=N+8|0;J=N+4|0;M=N;E=N+216|0;c[O>>2]=e;c[g>>2]=f;c[h>>2]=(
c[O>>2]|0)+40+396;c[v>>2]=c[(c[g>>2]|0)+84>>2];c[j>>2]=0;while(1){if((c[j>
;>2]|0)>=6)break;c[F>>2]=11435+((c[j>>2]|0)*13|0);c[y>>2]=(c[F>>2]|0)+12;c[B
x3e;>2]=0;c[C>>2]=0;while(1){if((c[F>>2]|0)>>>0>=(c[y>>2]|0)>>
x3e;0)break;if(!(a[c[F>>2]>>0]|0))break;a[K>>0]=0;c[w>>2]=Dc(c[g>>2]|0,a[c[F
x3e;>2]>>0]|0)|0;do if((c[w>>2]|0?(c[s>>2]=Cb(c[g>>2]|0,c[w>>2]|0,1)|0,(c
[s>>2]|0)==0):0)?(b[(c[v>>2]|0)+108+2>>1]|0)>0:0){c[G>>2]=c[(c[v>>2]|0)+108
+4>>2];c[m>>2]=-1;c[n>>2]=0;c[k>>2]=0;c[l>>2]=0;c[t>>2]=0;c[x>
x3e;2]=-1;c[A>>2]=0;while(1){f=c[m>>2]|0;if((c[A>>2]|0)>=(b[(c[v>>2]|0)+108>
x3e;1]|0))break;c[D>>2]=f;c[x>>2]=b[(c[(c[v>>2]|0)+108+12>>2]|0)+(c[A>>2]<
;<1)>>1];if((c[x>>2]|0)>(c[t>>2]|0)){O=(c[j>>2]|0)==0|(c[j>>2]|0)==2
|(c[j>>2]|0)==3;c[H>>2]=c[t>>2];a:do if(O)while(1){if((c[H>>2]|0)>(c[x>>2
]|0))break a;if(!((c[m>>2]|0)>=0?(c[(c[G>>2]|0)+(c[H>>2]<<3)+4>>2]|0)<
;=(c[n>>2]|0):0)){c[m>>2]=c[H>>2];c[n>>2]=c[(c[G>>2]|0)+(c[H>>2]<
;<3)+4>>2]}c[H>>2]=(c[H>>2]|0)+1}else while(1){if((c[H>>2]|0)>(c[x>>
2]|0))break a;if(!((c[m>>2]|0)>=0?(c[(c[G>>2]|0)+(c[H>>2]<<3)+4>>2]|0)>
;=(c[n>>2]|0):0)){c[m>>2]=c[H>>2];c[n>>2]=c[(c[G>>2]|0)+(c[H>>2]<
;<3)+4>>2]}c[H>>2]=(c[H>>2]|0)+1}while(0);if((c[m>>2]|0)!=(c[D>>2]|0)){c[
k>>2]=c[t>>2];c[l>>2]=c[x>>2]}}c[t>>2]=(c[x>>2]|0)+1;c[A>>
2]=(c[A>>2]|0)+1}if((f|0)>=0){c[I>>2]=c[m>>2];c[z>>2]=c[I>>2];do{if((c[I
x3e;>2]|0)>(c[k>>2]|0))c[I>>2]=(c[I>>2]|0)+-1;else c[I>>2]=c[l>>2];c
[r>>2]=(c[(c[G>>2]|0)+(c[I>>2]<<3)+4>>2]|0)-(c[n>>2]|0);if((c[r>
;>2]|0)<-5|(c[r>>2]|0)>5)break}while((c[I>>2]|0)!=(c[m>>2]|0));do{if((c[z>>
;2]|0)<(c[l>>2]|0))c[z>>2]=(c[z>>2]|0)+1;else c[z>>2]=c[k>>2];c[r>
x3e;2]=(c[(c[G>>2]|0)+(c[z>>2]<<3)+4>>2]|0)-(c[n>>2]|0);if((c[r>>2]|
0)<-5|(c[r>>2]|0)>5)break}while((c[z>>2]|0)!=(c[m>>2]|0));if((a[(c[(c[v>>2]|0)+
108+8>>2]|0)+(c[I>>2]|0)>>0]&3|0)!=1)f=1;else f=(a[(c[(c[v>>2]|0)+108+8>>
2]|0)+(c[z>>2]|0)>>0]&3|0)!=1;a[K>>0]=f&1}f=c[n>>2]|0;if(a[K>>0]|0){
O=c[C>>2]|0;c[C>>2]=O+1;c[L+(O<<2)>>2]=f;break}else{O=c[B>>2]|0;c[B>>
;2]=O+1;c[u+(O<<2)>>2]=f;break}}while(0);c[F>>2]=(c[F>>2]|0)+1}if(!((c[B>>2]|0
)==0&(c[C>>2]|0)==0)){Ql(c[C>>2]|0,L);Ql(c[B>>2]|0,u);c[o>>2]=(c[h>>2]|0)+
220+((c[(c[h>>2]|0)+216>>2]|0)*28|0);c[p>>2]=c[o>>2];c[q>>2]=(c[o>>2
]|0)+12;f=(c[h>>2]|0)+216|0;c[f>>2]=(c[f>>2]|0)+1;f=c[C>>2]|0;do if(c[B>>2]|0){
e=c[u+(((c[B>>2]|0)/2|0)<<2)>>2]|0;if(!f){c[c[q>>2]>>2]=e;c[c[p>>2]
x3e;>2]=e;break}else{c[c[p>>2]>>2]=e;c[c[q>>2]>>2]=c[L+(((c[C>>2]|0)/2|0)
x3c;<2)>>2];break}}else{O=c[L+(((f|0)/2|0)<<2)>>2]|0;c[c[q>>2]>>2]=O;c[c[
p>>2]>>2]=O}while(0);if((c[c[q>>2]>>2]|0)!=(c[c[p>>2]>>2]|0)){c[J>
;>2]=c[c[p>>2]>>2];c[M>>2]=c[c[q>>2]>>2];a[E>>0]=(c[M>>
;2]|0)>(c[J>>2]|0);if((c[j>>2]|0)==0|(c[j>>2]|0)==2)f=1;else f=(c[j>>2]|0)==3;if(f
x26;1^d[E>>0]|0){O=((c[M>>2]|0)+(c[J>>2]|0)|0)/2|0;c[c[p>>2]>>2]=O;c[c[q>
x3e;2]>>2]=O}}c[(c[o>>2]|0)+24>>2]=0;if((c[j>>2]|0)==0|(c[j>>2]|0)==2|(c[j>
;>2]|0)==3){O=(c[o>>2]|0)+24|0;c[O>>2]=c[O>>2]|2}if((c[j>>2]|0)==3){O=(c[o>>
;2]|0)+24|0;c[O>>2]=c[O>>2]|4}}c[j>>2]=(c[j>>2]|0)+1}i=N;return}function Ql(a,b){a=a|0;b
=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[d>>2]=a;c[e>>2]=b;c[f
x3e;>2]=1;while(1){if((c[f>>2]|0)>>>0>=(c[d>>2]|0)>>>0)break;c[g>
;>2]=c[f>>2];while(1){if((c[g>>2]|0)>>>0<=0)break;if((c[(c[e>>2]|0)+(c[g
x3e;>2]<<2)>>2]|0)>(c[(c[e>>2]|0)+((c[g>>2]|0)-1<<2)>>2]|0
))break;c[h>>2]=c[(c[e>>2]|0)+(c[g>>2]<<2)>>2];c[(c[e>>2]|0)+(c[g>
;>2]<<2)>>2]=c[(c[e>>2]|0)+((c[g>>2]|0)-1<<2)>>2];c[(c[e>
x3e;2]|0)+((c[g>>2]|0)-1<<2)>>2]=c[h>>2];c[g>>2]=(c[g>>2]|0)+-1}c[f
x3e;>2]=(c[f>>2]|0)+1}i=j;return}function Rl(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;o=i;i=i
+32|0;e=o+20|0;f=o+16|0;j=o+12|0;m=o+25|0;l=o+24|0;g=o+8|0;k=o+4|0;h=o;c[e>>2]=b;c[f>>2]=d;a[m>>0]=
0;a[l>>0]=1;c[k>>2]=0;c[j>>2]=48;a:while(1){if((c[j>>2]|0)>>>0>57){n
=10;break}c[h>>2]=Dc(c[f>>2]|0,c[j>>2]|0)|0;do if(c[h>>2]|0?(vb(c[f>>2]|0,c[h
x3e;>2]|0,2051,g)|0)==0:0){d=c[g>>2]|0;if(a[m>>0]|0)if((d|0)!=(c[k>>2]|0))break a;else break;
else{c[k>>2]=d;a[m>>0]=1;break}}while(0);c[j>>2]=(c[j>>2]|0)+1}if((n|0)==10){m=a[l>
x3e;0]|0;n=c[e>>2]|0;n=n+32|0;a[n>>0]=m;i=o;return}a[l>>0]=0;m=a[l>>0]|0;n=c[e>>
;2]|0;n=n+32|0;a[n>>0]=m;i=o;return}function Sl(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)+4+20>>2]=c[(c[e>>2]|0)+20>>2];c[(c[f>>
2]|0)+4>>2]=c[c[e>>2]>>2];Tl(c[f>>2]|0,c[e>>2]|0,0);Tl(c[f>>2]|0,c[e
>>2]|0,1);i=d;return}function Tl(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;x=i;i=i+64|0;m=x+60|0;f=x+56|0;n=x+52|0;w=x+48|0;r=x+44|0;p=x+40|0;v=x+36|0;g=x+32|0;h=x+28|0;k=x+24|0;j=x+20|0;
o=x+16|0;q=x+12|0;u=x+8|0;s=x+4|0;t=x;c[m>>2]=b;c[f>>2]=d;c[n>>2]=e;e=c[f>>2]|0;if(!(c[n
>>2]|0)){c[w>>2]=c[e+4>>2];c[r>>2]=c[(c[f>>2]|0)+12>>2]}else{c[w>
;>2]=c[e+8>>2];c[r>>2]=c[(c[f>>2]|0)+16>>2]}c[p>>2]=(c[m>>2]|0)+
40+((c[n>>2]|0)*396|0);if((c[(c[p>>2]|0)+388>>2]|0)==(c[w>>2]|0)?(c[(c[p>>2]|0
)+392>>2]|0)==(c[r>>2]|0):0){i=x;return}c[(c[p>>2]|0)+388>>2]=c[w>>2];c[(c[p
x3e;>2]|0)+392>>2]=c[r>>2];c[g>>2]=(c[m>>2]|0)+40+396;c[h>>2]=0;c[v>
x3e;2]=0;while(1){if((c[v>>2]|0)>>>0>=(c[(c[g>>2]|0)+216>>2]|0)>>>
;0)break;e=c[v>>2]|0;if(c[(c[g>>2]|0)+220+((c[v>>2]|0)*28|0)+24>>2]&4|0){l=9;break}
c[v>>2]=e+1}if((l|0)==9)c[h>>2]=(c[g>>2]|0)+220+(e*28|0);if(c[h>>2]|0?(c[k>>2]=
Mb(c[(c[h>>2]|0)+12>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0,c[j>>2]=(c[k>>2]|
0)+40&-64,(c[n>>2]|0)==1?(c[k>>2]|0)!=(c[j>>2]|0):0):0)c[w>>2]=xb(c[w>>2]|
0,c[j>>2]|0,c[k>>2]|0)|0;c[c[p>>2]>>2]=c[w>>2];c[(c[p>>2]|0)+4>
x3e;2]=c[r>>2];e=c[w>>2]|0;b=(c[m>>2]|0)+4|0;if(!(c[n>>2]|0)){c[b+4>>2]=e;c[(c
[m>>2]|0)+4+12>>2]=c[r>>2]}else{c[b+8>>2]=e;c[(c[m>>2]|0)+4+16>>2]=c
[r>>2]}c[v>>2]=0;while(1){e=c[p>>2]|0;if((c[v>>2]|0)>>>0>=(c[(c[p>
;>2]|0)+8>>2]|0)>>>0)break;c[o>>2]=e+12+((c[v>>2]|0)*12|0);m=Mb(c[c[o>>
;2]>>2]|0,c[w>>2]|0)|0;c[(c[o>>2]|0)+4>>2]=m;c[(c[o>>2]|0)+8>>2]=c[(
c[o>>2]|0)+4>>2];c[v>>2]=(c[v>>2]|0)+1}o=(Mb(c[e+208>>2]|0,c[w>>2]|0
)|0)<40&255;a[(c[p>>2]|0)+212>>0]=o;if((c[n>>2]|0)!=1){i=x;return}c[v>>2]=0;while
(1){if((c[v>>2]|0)>>>0>=(c[(c[p>>2]|0)+216>>2]|0)>>>0)break;c[q
>>2]=(c[p>>2]|0)+220+((c[v>>2]|0)*28|0);o=Mb(c[c[q>>2]>>2]|0,c[w>>2]|
0)|0;c[(c[q>>2]|0)+4>>2]=o+(c[r>>2]|0);c[(c[q>>2]|0)+8>>2]=c[(c[q>>2
]|0)+4>>2];o=Mb(c[(c[q>>2]|0)+12>>2]|0,c[w>>2]|0)|0;c[(c[q>>2]|0)+12+4>
x3e;2]=o+(c[r>>2]|0);c[(c[q>>2]|0)+12+8>>2]=c[(c[q>>2]|0)+12+4>>2];o=(c[q>
;>2]|0)+24|0;c[o>>2]=c[o>>2]&-2;c[u>>2]=Mb((c[c[q>>2]>>2]|0)-(c[(c[q
>>2]|0)+12>>2]|0)|0,c[w>>2]|0)|0;if((c[u>>2]|0)<=48&(c[u>>2]|0)>
;=-48){c[s>>2]=(c[(c[q>>2]|0)+12>>2]|0)-(c[c[q>>2]>>2]|0);c[t>>2]=c[
s>>2];if((c[s>>2]|0)<0)c[t>>2]=0-(c[t>>2]|0);c[t>>2]=Mb(c[t>>2]|
0,c[w>>2]|0)|0;do if((c[t>>2]|0)>=32){e=c[t>>2]|0;if((c[t>>2]|0)<64){c[t>
x3e;2]=32+(e-32+16&-32);break}else{c[t>>2]=e+32&-64;break}}else c[t>>2]=0;while(0);if((c[s>
x3e;2]|0)<0)c[t>>2]=0-(c[t>>2]|0);c[(c[q>>2]|0)+8>>2]=(c[(c[q>>2]|0)+4>
;>2]|0)+32&-64;c[(c[q>>2]|0)+12+8>>2]=(c[(c[q>>2]|0)+8>>2]|0)+(c[t>>
2]|0);o=(c[q>>2]|0)+24|0;c[o>>2]=c[o>>2]|1}c[v>>2]=(c[v>>2]|0)+1}i=x;return}function
Ul(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;d=j+20|0;k=j+16|0;f=j+12|0;h=j+8|0;g=j+4|0;e=j;c[d>>
2]=a;c[k>>2]=b;c[e>>2]=c[(c[k>>2]|0)+4>>2];Dl(c[d>>2]|0,c[k>>2]|0);c
[(c[d>>2]|0)+4>>2]=c[(c[k>>2]|0)+40>>2];c[(c[d>>2]|0)+8>>2]=c[(c[k
x3e;>2]|0)+40+4>>2];c[(c[d>>2]|0)+12>>2]=c[(c[k>>2]|0)+40+396>>2];c[(c[d
x3e;>2]|0)+16>>2]=c[(c[k>>2]|0)+40+396+4>>2];c[f>>2]=c[(c[k>>2]|0)+4+20
x3e;>2];c[h>>2]=c[(c[d>>2]|0)+104>>2];c[g>>2]=0;if((c[f>>2]|0)==2|(c[f>
;>2]|0)==3)c[g>>2]=c[g>>2]|1;if((c[f>>2]|0)==2|(c[f>>2]|0)==4)c[g>>2]=c[g
>>2]|2;if((c[f>>2]|0)!=1)c[g>>2]=c[g>>2]|4;if((c[f>>2]|0)==2)c[g>>2]=
c[g>>2]|8;if((c[f>>2]|0)!=1?(c[(c[e>>2]|0)+12>>2]&1|0)==0:0){k=c[h>>2]|0;
h=c[d>>2]|0;h=h+104|0;c[h>>2]=k;h=c[g>>2]|0;k=c[d>>2]|0;k=k+108|0;c[k>>2]=h;i=
j;return 0}c[h>>2]=c[h>>2]|1;k=c[h>>2]|0;h=c[d>>2]|0;h=h+104|0;c[h>>2]=k;h=c[g
>>2]|0;k=c[d>>2]|0;k=k+108|0;c[k>>2]=h;i=j;return 0}function Vl(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;f=k+16|0;g=k+12|0;e=k+8|0;j=k+4|0;h=k;c[f>>2]=a;c[g>>2]=b;c[e>>2]=
d;c[j>>2]=Il(c[f>>2]|0,c[g>>2]|0)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}if
((c[(c[f>>2]|0)+104>>2]&1|0)==0?(c[j>>2]=Wl(c[f>>2]|0,0)|0,c[j>>2]|0):0){
j=c[j>>2]|0;i=k;return j|0}do if(!(c[(c[f>>2]|0)+104>>2]&2)){c[j>>2]=Wl(c[f>
x3e;2]|0,1)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}else{Zl(c[f>>2]|0,c[e>>2]|0);break
}}while(0);c[h>>2]=0;while(1){if((c[h>>2]|0)>=2)break;if((c[h>>2]|0)==0?!(c[(c[f>>2
]|0)+104>>2]&1|0):0)e=13;else e=11;if(((e|0)==11?(e=0,(c[h>>2]|0)==1):0)?(c[(c[f>>2]|0)+104
x3e;>2]&2|0)==0:0)e=13;if((e|0)==13){_l(c[f>>2]|0,c[h>>2]|0);dm(c[f>>2]|0,c[h>>
;2]|0);em(c[f>>2]|0,c[h>>2]|0);fm(c[f>>2]|0,c[h>>2]|0)}c[h>>2]=(c[h>>
;2]|0)+1}im(c[f>>2]|0,c[g>>2]|0);j=c[j>>2]|0;i=k;return j|0}function Wl(a,b){a=a|0;b=b|0;var d=0,e
=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Kl(c[d>>2]|0,c[e
>>2]|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}Ml(c[d>>2]|0,c[e>>2]|0);c[f
>>2]=Xl(c[d>>2]|0,c[e>>2]|0)|0;a=c[f>>2]|0;i=g;return a|0}function Xl(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
;M=i;i=i+128|0;g=M+112|0;h=M+108|0;l=M+104|0;D=M+100|0;t=M+96|0;j=M+92|0;k=M+88|0;w=M+84|0;H=M+80|0;K=M+76|0;u=M+72|0;p=M+68|0;v
=M+64|0;s=M+60|0;r=M+56|0;n=M+52|0;m=M+48|0;o=M+44|0;q=M+40|0;C=M+36|0;z=M+32|0;E=M+28|0;G=M+24|0;L=M+20|0;y=M+16|0;F=M+116|0;A=
M+12|0;I=M+8|0;B=M+4|0;J=M;c[g>>2]=e;c[h>>2]=f;c[l>>2]=(c[g>>2]|0)+48+((c[h>>2
]|0)*28|0);c[D>>2]=0;c[t>>2]=c[c[g>>2]>>2];c[j>>2]=(c[(c[g>>2]|0)+112
>>2]|0)+40+((c[h>>2]|0)*396|0);c[k>>2]=c[(c[l>>2]|0)+8>>2];c[w>>2]=(
c[k>>2]|0)+((c[c[l>>2]>>2]|0)*52|0);c[(c[l>>2]|0)+12>>2]=0;f=c[g>>2]|
0;if(!(c[h>>2]|0))f=c[f+4>>2]|0;else f=c[f+12>>2]|0;c[u>>2]=f;c[K>>2]=(c[h>
;>2]|0)==0?2:1;if(!(c[h>>2]|0))c[v>>2]=Vb(64,c[(c[g>>2]|0)+12>>2]|0)|0;else c[v>
;>2]=0;j=Mb(c[(c[j>>2]|0)+204>>2]|0,c[u>>2]|0)|0;c[p>>2]=j;c[p>>2]=(c[p
x3e;>2]|0)>16?16:j;c[p>>2]=Vb(c[p>>2]|0,c[u>>2]|0)|0;c[H>>2]=c[k>>2];
a:while(1){if((c[H>>2]|0)>>>0>=(c[w>>2]|0)>>>0)break;c[s>>2]=0;
do if((b[(c[H>>2]|0)+8>>1]|0)>=(c[v>>2]|0)){if(c[(c[H>>2]|0)+24>>2]|0?(b[(
c[H>>2]|0)+8>>1]<<1|0)<((c[v>>2]|0)*3|0):0)break;c[r>>2]=0;while(1){if((c
[r>>2]|0)>=(c[(c[l>>2]|0)+12>>2]|0))break;c[n>>2]=(c[(c[l>>2]|0)+20>
x3e;2]|0)+((c[r>>2]|0)*48|0);c[m>>2]=(b[(c[H>>2]|0)+2>>1]|0)-(b[c[n>>2]>
x3e;1]|0);if((c[m>>2]|0)<0)c[m>>2]=0-(c[m>>2]|0);if((c[m>>2]|0)<(c[p>>
;2]|0)?(a[(c[n>>2]|0)+13>>0]|0)==(a[(c[H>>2]|0)+1>>0]|0):0){x=18;break}c[r>>2]=(
c[r>>2]|0)+1}if((x|0)==18){x=0;c[s>>2]=c[n>>2]}if(c[s>>2]|0){c[(c[H>>2]|0)+16
x3e;>2]=c[(c[s>>2]|0)+40>>2];c[(c[(c[s>>2]|0)+44>>2]|0)+16>>2]=c[H>
x3e;2];c[(c[s>>2]|0)+44>>2]=c[H>>2];break}c[D>>2]=Yl(c[l>>2]|0,b[(c[H>>
;2]|0)+2>>1]|0,a[(c[H>>2]|0)+1>>0]|0,c[t>>2]|0,o)|0;if(c[D>>2]|0){x=66;break a
}f=c[o>>2]|0;e=f+48|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(e|0));c[(c[o>>2]|0)+40>>2]=
c[H>>2];c[(c[o>>2]|0)+44>>2]=c[H>>2];b[c[o>>2]>>1]=b[(c[H>>
;2]|0)+2>>1]|0;a[(c[o>>2]|0)+13>>0]=a[(c[H>>2]|0)+1>>0]|0;k=Mb(b[(c[H>>
;2]|0)+2>>1]|0,c[u>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=k;c[(c[o>>2]|0)+4>>2
]=k;c[(c[H>>2]|0)+16>>2]=c[H>>2]}while(0);c[H>>2]=(c[H>>2]|0)+52}if((x|0)==66){
L=c[D>>2]|0;i=M;return L|0}c[q>>2]=c[(c[l>>2]|0)+20>>2];c[C>>2]=(c[q>>
;2]|0)+((c[(c[l>>2]|0)+12>>2]|0)*48|0);c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)
x3e;>>0>=(c[C>>2]|0)>>>0)break;c[H>>2]=c[(c[z>>2]|0)+40>>2
];if(c[H>>2]|0)do{c[(c[H>>2]|0)+12>>2]=c[z>>2];c[H>>2]=c[(c[H>>2]|0)+
16>>2]}while((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));c[z>>2]=(c[z>>2]|
0)+48}c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)>>>0>=(c[C>>2]|0)>
x3e;>0)break;c[E>>2]=0;c[G>>2]=0;c[L>>2]=0;c[y>>2]=0;c[H>>2]=c[(c[z>
x3e;2]|0)+40>>2];do{if(d[c[H>>2]>>0]&1|0)c[E>>2]=(c[E>>2]|0)+1;else c[G
x3e;>2]=(c[G>>2]|0)+1;f=(b[(c[H>>2]|0)+6>>1]|0)-(b[(c[H>>2]|0)+4>>1]|0)|0
;if((a[(c[H>>2]|0)+1>>0]|0)==(c[K>>2]|0))c[L>>2]=(c[L>>2]|0)+f;else c[y>
x3e;2]=(c[y>>2]|0)+f;if(c[(c[H>>2]|0)+24>>2]|0?c[(c[(c[H>>2]|0)+24>>2]|0)+12
x3e;>2]|0:0)f=(c[(c[(c[H>>2]|0)+24>>2]|0)+12>>2]|0)!=(c[z>>2]|0);else f=0;a[F>
x3e;0]=f&1;if(c[(c[H>>2]|0)+20>>2]|0?c[(c[(c[H>>2]|0)+20>>2]|0)+12>>2]|0:
0)x=45;else x=44;if((x|0)==44?(x=0,d[F>>0]|0):0)x=45;do if((x|0)==45){c[A>>2]=c[(c[z>>2]|0)+24>
;>2];c[I>>2]=c[(c[H>>2]|0)+20>>2];if(a[F>>0]|0){c[I>>2]=c[(c[H>>
;2]|0)+24>>2];c[A>>2]=c[(c[z>>2]|0)+28>>2]}if(c[A>>2]|0){c[B>>2]=(b[
c[z>>2]>>1]|0)-(b[c[A>>2]>>1]|0);if((c[B>>2]|0)<0)c[B>>2]=0-(c[
B>>2]|0);c[J>>2]=(b[(c[H>>2]|0)+2>>1]|0)-(b[(c[I>>2]|0)+2>>1]|0);if((
c[J>>2]|0)<0)c[J>>2]=0-(c[J>>2]|0);if((c[J>>2]|0)<(c[B>>2]|0))c[A>
;>2]=c[(c[I>>2]|0)+12>>2]}else c[A>>2]=c[(c[I>>2]|0)+12>>2];f=c[A>
x3e;2]|0;e=c[z>>2]|0;if(a[F>>0]|0){c[e+28>>2]=f;x=(c[A>>2]|0)+12|0;a[x>>0]=d[x
>>0]|2;break}else{c[e+24>>2]=f;break}}while(0);c[H>>2]=c[(c[H>>2]|0)+16>>2]}while
((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));a[(c[z>>2]|0)+12>>0]=0;if((c[E>
x3e;2]|0)>0?(c[E>>2]|0)>=(c[G>>2]|0):0){x=(c[z>>2]|0)+12|0;a[x>>0]=d[x>
x3e;0]|1}if(c[(c[z>>2]|0)+28>>2]|0?c[(c[z>>2]|0)+24>>2]|0:0)c[(c[z>>2]|0)+28
x3e;>2]=0;c[z>>2]=(c[z>>2]|0)+48}L=c[D>>2]|0;i=M;return L|0}function Yl(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,t=0,u=0;u=i;i=i+48|0;n=u+40|0;o=u+36|0;p=u+32|0;j=u+28|0;q=u+24|
0;t=u+20|0;r=u+16|0;s=u+12|0;m=u+8|0;l=u+4|0;k=u;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[j>>2]=g
;c[q>>2]=h;c[t>>2]=0;c[r>>2]=0;do if((c[(c[n>>2]|0)+12>>2]|0)>=(c[(c[n>
;>2]|0)+16>>2]|0)){c[m>>2]=c[(c[n>>2]|0)+16>>2];c[l>>2]=c[m>>2];
c[k>>2]=44739242;if((c[m>>2]|0)>=(c[k>>2]|0)){c[t>>2]=64;r=c[r>>2]|0;s=c[
q>>2]|0;c[s>>2]=r;t=c[t>>2]|0;i=u;return t|0}c[l>>2]=(c[l>>2]|0)+((c[l>
x3e;2]>>2)+4);if(!((c[l>>2]|0)>=(c[m>>2]|0)?(c[l>>2]|0)<=(c[k>>2]|0):
0))c[l>>2]=c[k>>2];m=hc(c[j>>2]|0,48,c[m>>2]|0,c[l>>2]|0,c[(c[n>>2]|
0)+20>>2]|0,t)|0;c[(c[n>>2]|0)+20>>2]=m;if(c[t>>2]|0){r=c[r>>2]|0;s=c[q>
x3e;2]|0;c[s>>2]=r;t=c[t>>2]|0;i=u;return t|0}else{c[(c[n>>2]|0)+16>>2]=c[l>>2
];break}}while(0);c[s>>2]=c[(c[n>>2]|0)+20>>2];c[r>>2]=(c[s>>2]|0)+((c[(c[n>
;>2]|0)+12>>2]|0)*48|0);while(1){if((c[r>>2]|0)>>>0<=(c[s>>2]|0)>>
;>0)break;if((b[(c[r>>2]|0)+-48>>1]|0)<(c[o>>2]|0))break;if((b[(c[r>>2]|0)+-48
>>1]|0)==(c[o>>2]|0)?(c[p>>2]|0)==(c[(c[n>>2]|0)+24>>2]|0):0)break;j=c[r>
x3e;2]|0;h=(c[r>>2]|0)+-48|0;d=j+48|0;do{c[j>>2]=c[h>>2];j=j+4|0;h=h+4|0}while((j|0)<(d|0));c
[r>>2]=(c[r>>2]|0)+-48}j=(c[n>>2]|0)+12|0;c[j>>2]=(c[j>>2]|0)+1;j=c[r>>
;2]|0;d=j+48|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(d|0));b[c[r>>2]>>1]=c[o>>2];a[(c[r
>>2]|0)+13>>0]=c[p>>2];r=c[r>>2]|0;s=c[q>>2]|0;c[s>>2]=r;t=c[t>
x3e;2]|0;i=u;return t|0}function Zl(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;v=i;i=i
+64|0;w=v+44|0;g=v+40|0;h=v+36|0;o=v+32|0;p=v+28|0;t=v+24|0;u=v+20|0;j=v+16|0;k=v+12|0;l=v+8|0;m=v+4|0;r=v+50|0;q=v+49|0;n=v;s=v
+48|0;c[w>>2]=e;c[g>>2]=f;c[h>>2]=(c[w>>2]|0)+48+28;c[o>>2]=c[(c[h>>
2]|0)+20>>2];c[p>>2]=(c[o>>2]|0)+((c[(c[h>>2]|0)+12>>2]|0)*48|0);c[t>>
;2]=(c[g>>2]|0)+40+396;c[u>>2]=c[c[t>>2]>>2];while(1){if((c[o>>2]|0)>>
;>0>=(c[p>>2]|0)>>>0)break;c[k>>2]=0;w=Mb(((c[(c[g>>2]|0)+36>>2
]|0)>>>0)/40|0,c[u>>2]|0)|0;c[l>>2]=w;c[l>>2]=(c[l>>2]|0)>32?32:w;c[
j>>2]=0;while(1){if((c[j>>2]|0)>=6)break;c[m>>2]=(c[t>>2]|0)+220+((c[j>>2
]|0)*28|0);if(c[(c[m>>2]|0)+24>>2]&1|0?(a[r>>0]=(c[(c[m>>2]|0)+24>>2]&
;2|0)!=0,a[q>>0]=(a[(c[o>>2]|0)+13>>0]|0)==(c[(c[h>>2]|0)+24>>2]|0),d[r>
x3e;0]^d[q>>0]|0):0){c[n>>2]=(b[c[o>>2]>>1]|0)-(c[c[m>>2]>>2]|0);if((
c[n>>2]|0)<0)c[n>>2]=0-(c[n>>2]|0);c[n>>2]=Mb(c[n>>2]|0,c[u>>2]|
0)|0;if((c[n>>2]|0)<(c[l>>2]|0)){c[l>>2]=c[n>>2];c[k>>2]=c[m>>2
]}if((c[n>>2]|0?(d[(c[o>>2]|0)+12>>0]&1|0)!=0:0)?(a[s>>0]=(b[c[o>>2]>
;>1]|0)<(c[c[m>>2]>>2]|0),d[r>>0]^d[s>>0]|0):0){c[m>>2]=(c[t>
x3e;2]|0)+220+((c[j>>2]|0)*28|0);c[n>>2]=(b[c[o>>2]>>1]|0)-(c[(c[m>>2]|0)+12
x3e;>2]|0);if((c[n>>2]|0)<0)c[n>>2]=0-(c[n>>2]|0);c[n>>2]=Mb(c[n>>2]|
0,c[u>>2]|0)|0;if((c[n>>2]|0)<(c[l>>2]|0)){c[l>>2]=c[n>>2];c[k>>
;2]=(c[m>>2]|0)+12}}}c[j>>2]=(c[j>>2]|0)+1}if(c[k>>2]|0)c[(c[o>>2]|0)+20>
x3e;2]=c[k>>2];c[o>>2]=(c[o>>2]|0)+48}i=v;return}function _l(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,D=0,E=0,F=0,G=0,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;U=i;i=i+176|0;M=U+160|0;j=U+156|0;V=U+152|0;T=U+148|0;S=U+144|0;K=U+140|0;R=U+136|0;O=U+132|0;J=U+128|0;
f=U+124|0;g=U+120|0;h=U+116|0;t=U+112|0;y=U+108|0;w=U+104|0;k=U+100|0;m=U+96|0;u=U+92|0;v=U+88|0;B=U+84|0;p=U+80|0;A=U+76|0;z=U+
72|0;x=U+68|0;l=U+64|0;n=U+60|0;o=U+56|0;r=U+52|0;s=U+48|0;C=U+44|0;q=U+40|0;G=U+36|0;H=U+32|0;I=U+28|0;E=U+24|0;F=U+20|0;L=U+16
|0;D=U+12|0;Q=U+8|0;P=U+4|0;N=U;c[M>>2]=b;c[j>>2]=e;c[V>>2]=(c[M>>2]|0)+48+((c[j>
x3e;2]|0)*28|0);c[T>>2]=c[(c[V>>2]|0)+20>>2];c[S>>2]=(c[T>>2]|0)+((c[(c[V>
;>2]|0)+12>>2]|0)*48|0);c[O>>2]=0;c[J>>2]=0;a:do if((c[j>>2]|0)==1){c[R>>
2]=c[T>>2];while(1){if((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break a
;if(!((d[(c[R>>2]|0)+12>>0]|0)&4)){c[f>>2]=c[(c[R>>2]|0)+20>>2];c[g>
x3e;2]=0;c[h>>2]=c[(c[R>>2]|0)+24>>2];if(!(c[f>>2]|0)){if(c[h>>2]|0?c[(c[h>
;>2]|0)+20>>2]|0:0){c[f>>2]=c[(c[h>>2]|0)+20>>2];c[g>>2]=c[h>>2
];c[h>>2]=c[R>>2]}}else c[g>>2]=c[R>>2];if(c[g>>2]|0){c[(c[g>>2]|0)+
8>>2]=c[(c[f>>2]|0)+8>>2];V=(c[g>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if(
c[h>>2]|0?(c[(c[h>>2]|0)+20>>2]|0)==0:0){$l(c[M>>2]|0,c[j>>2]|0,c[g>>
;2]|0,c[h>>2]|0);V=(c[h>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4}if(!(c[O>>2]|0))c[O>
;>2]=c[R>>2]}}c[R>>2]=(c[R>>2]|0)+48}}while(0);c[R>>2]=c[T>>2];while(1){if
((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;do if(!((d[(c[R>>2]|0)+
12>>0]|0)&4)){c[t>>2]=c[(c[R>>2]|0)+24>>2];if(!(c[t>>2]|0)){c[J>>
;2]=(c[J>>2]|0)+1;break}if(c[(c[t>>2]|0)+20>>2]|0){$l(c[M>>2]|0,c[j>>2]|0,c[t
x3e;>2]|0,c[R>>2]|0);V=(c[R>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;break}if(!(c[O>>
;2]|0)){c[y>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0);c[k>>
;2]=am(c[M>>2]|0,c[j>>2]|0,c[y>>2]|0,d[(c[R>>2]|0)+12>>0]|0,d[(c[t>>
2]|0)+12>>0]|0)|0;if((c[k>>2]|0)<=64){c[p>>2]=32;c[B>>2]=32}else{c[B>>2]=
38;c[p>>2]=26}f=c[(c[R>>2]|0)+4>>2]|0;if((c[k>>2]|0)<96){c[w>>2]=f+(c[y
x3e;>2]>>1);c[m>>2]=(c[w>>2]|0)+32&-64;c[u>>2]=(c[w>>2]|0)-((c[m>
;>2]|0)-(c[B>>2]|0));if((c[u>>2]|0)<0)c[u>>2]=0-(c[u>>2]|0);c[v>>2]=(
c[w>>2]|0)-((c[m>>2]|0)+(c[p>>2]|0));if((c[v>>2]|0)<0)c[v>>2]=0-(c[v>
;>2]|0);if((c[u>>2]|0)<(c[v>>2]|0))c[m>>2]=(c[m>>2]|0)-(c[B>>2]|0);else
c[m>>2]=(c[m>>2]|0)+(c[p>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[m>>2]|0)-((c
[k>>2]|0)/2|0);c[(c[t>>2]|0)+8>>2]=(c[(c[R>>2]|0)+8>>2]|0)+(c[k>>2]|
0)}else c[(c[R>>2]|0)+8>>2]=f+32&-64;c[O>>2]=c[R>>2];V=(c[R>>2]|0)+12|0;a
[V>>0]=d[V>>0]|0|4;$l(c[M>>2]|0,c[j>>2]|0,c[R>>2]|0,c[t>>2]|0);break
}c[A>>2]=(c[(c[O>>2]|0)+8>>2]|0)+((c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2
]|0)+4>>2]|0));c[z>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|
0);c[x>>2]=(c[A>>2]|0)+(c[z>>2]>>1);c[l>>2]=am(c[M>>2]|0,c[j>
x3e;2]|0,c[z>>2]|0,d[(c[R>>2]|0)+12>>0]|0,d[(c[t>>2]|0)+12>>0]|0)|0;do if((d[(
c[t>>2]|0)+12>>0]|0)&4|0)c[(c[R>>2]|0)+8>>2]=(c[(c[t>>2]|0)+8>>
2]|0)-(c[l>>2]|0);else{if((c[l>>2]|0)>=96){c[A>>2]=(c[(c[O>>2]|0)+8>>2]|0
)+((c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2]|0)+4>>2]|0));c[z>>2]=(c[(c[t>>
;2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0);c[x>>2]=(c[A>>2]|0)+(c[z>>2]
x3e;>1);c[l>>2]=am(c[M>>2]|0,c[j>>2]|0,c[z>>2]|0,d[(c[R>>2]|0)+12>
x3e;0]|0,d[(c[t>>2]|0)+12>>0]|0)|0;c[n>>2]=(c[A>>2]|0)+32&-64;c[r>>2]=(c[
n>>2]|0)+(c[l>>2]>>1)-(c[x>>2]|0);if((c[r>>2]|0)<0)c[r>>2]=0-(c
[r>>2]|0);c[o>>2]=((c[A>>2]|0)+(c[z>>2]|0)+32&-64)-(c[l>>2]|0);c[s>
x3e;2]=(c[o>>2]|0)+(c[l>>2]>>1)-(c[x>>2]|0);if((c[s>>2]|0)<0)c[s>>
;2]=0-(c[s>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[r>>2]|0)<(c[s>>2]|0)?c[n>
x3e;2]|0:c[o>>2]|0;c[(c[t>>2]|0)+8>>2]=(c[(c[R>>2]|0)+8>>2]|0)+(c[l>>
;2]|0);break}c[n>>2]=(c[x>>2]|0)+32&-64;if((c[l>>2]|0)<=64){c[q>>2]=32;c[C>
;>2]=32}else{c[C>>2]=38;c[q>>2]=26}c[r>>2]=(c[x>>2]|0)-((c[n>>2]|0)-(c[C
x3e;>2]|0));if((c[r>>2]|0)<0)c[r>>2]=0-(c[r>>2]|0);c[s>>2]=(c[x>>2]|
0)-((c[n>>2]|0)+(c[q>>2]|0));if((c[s>>2]|0)<0)c[s>>2]=0-(c[s>>2]|0);if((c
[r>>2]|0)<(c[s>>2]|0))c[n>>2]=(c[n>>2]|0)-(c[C>>2]|0);else c[n>>
;2]=(c[n>>2]|0)+(c[q>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[n>>2]|0)-((c[l>>2
]|0)/2|0);c[(c[t>>2]|0)+8>>2]=(c[n>>2]|0)+((c[l>>2]|0)/2|0)}while(0);V=(c[R>>2
]|0)+12|0;a[V>>0]=d[V>>0]|0|4;V=(c[t>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if((c[R
x3e;>2]|0)>>>0>(c[T>>2]|0)>>>0?(c[(c[R>>2]|0)+8>>2]|0)<
;(c[(c[R>>2]|0)+-48+8>>2]|0):0)c[(c[R>>2]|0)+8>>2]=c[(c[R>>2]|0)+-48+8>
x3e;2]}while(0);c[R>>2]=(c[R>>2]|0)+48}c[K>>2]=((c[S>>2]|0)-(c[T>>2]|0)|0)/48|
0;if((c[j>>2]|0)==0?(c[K>>2]|0)==6|(c[K>>2]|0)==12:0){f=c[T>>2]|0;if((c[K>>2]|
0)==6){c[G>>2]=f;c[H>>2]=(c[T>>2]|0)+96;c[I>>2]=(c[T>>2]|0)+192}else{c[G>
x3e;2]=f+48;c[H>>2]=(c[T>>2]|0)+240;c[I>>2]=(c[T>>2]|0)+432}c[E>>2]=(c[(c[H>
;>2]|0)+4>>2]|0)-(c[(c[G>>2]|0)+4>>2]|0);c[F>>2]=(c[(c[I>>2]|0)+4>
x3e;2]|0)-(c[(c[H>>2]|0)+4>>2]|0);c[L>>2]=(c[E>>2]|0)-(c[F>>2]|0);if((c[L>
;>2]|0)<0)c[L>>2]=0-(c[L>>2]|0);if((c[L>>2]|0)<8){c[D>>2]=(c[(c[I>
x3e;2]|0)+8>>2]|0)-((c[(c[H>>2]|0)+8>>2]<<1)-(c[(c[G>>2]|0)+8>>2]|0));
V=(c[I>>2]|0)+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0);if(c[(c[I>>2]|0)+24>>
;2]|0){V=(c[(c[I>>2]|0)+24>>2]|0)+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0)}if((c[K
x3e;>2]|0)==12){V=(c[T>>2]|0)+384+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0);V=(c[T>
x3e;2]|0)+528+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0)}V=(c[I>>2]|0)+12|0;a[V>>0]=d
[V>>0]|0|4;if(c[(c[I>>2]|0)+24>>2]|0){V=(c[(c[I>>2]|0)+24>>2]|0)+12|0;a[V>
;>0]=d[V>>0]|0|4}}}if((c[J>>2]|0)==0&(c[O>>2]|0)!=0){i=U;return}c[R>>2]=c[T>
;>2];while(1){if((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;if(!((d[(c[R
>>2]|0)+12>>0]|0)&4)){c[Q>>2]=1e3;if(c[(c[R>>2]|0)+28>>2]|0?(c[Q>>
;2]=(c[(c[(c[R>>2]|0)+28>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0),(c[Q>>
;2]|0)<0):0)c[Q>>2]=0-(c[Q>>2]|0);do if((c[Q>>2]|0)<80)cm(c[M>>2]|0,c[(c[R>
;>2]|0)+28>>2]|0,c[R>>2]|0);else{f=c[R>>2]|0;if(!(c[O>>2]|0)){c[(c[R>>2]|
0)+8>>2]=(c[f+4>>2]|0)+32&-64;c[O>>2]=c[R>>2];break}c[P>>2]=f+-48;while(1
){if((c[P>>2]|0)>>>0<(c[T>>2]|0)>>>0)break;if((d[(c[P>>2]|0)+12
>>0]|0)&4|0)break;c[P>>2]=(c[P>>2]|0)+-48}c[N>>2]=(c[R>>2]|0)+48;while(1){
if((c[N>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;if((d[(c[N>>2]|0)+12
x3e;>0]|0)&4|0)break;c[N>>2]=(c[N>>2]|0)+48}if((((c[P>>2]|0)>>>0>=(c
[T>>2]|0)>>>0?(c[P>>2]|0)>>>0<(c[R>>2]|0)>>>0:0)?(
c[N>>2]|0)>>>0<(c[S>>2]|0)>>>0:0)?(c[N>>2]|0)>>>
0>(c[R>>2]|0)>>>0:0){f=c[(c[P>>2]|0)+8>>2]|0;e=c[R>>2]|0;if((c[(c[N
x3e;>2]|0)+4>>2]|0)==(c[(c[P>>2]|0)+4>>2]|0)){c[e+8>>2]=f;break}else{V=f+(xb((c[e+4
>>2]|0)-(c[(c[P>>2]|0)+4>>2]|0)|0,(c[(c[N>>2]|0)+8>>2]|0)-(c[(c[P>>2
]|0)+8>>2]|0)|0,(c[(c[N>>2]|0)+4>>2]|0)-(c[(c[P>>2]|0)+4>>2]|0)|0)|0)|0;c[(c[R
>>2]|0)+8>>2]=V;break}}c[(c[R>>2]|0)+8>>2]=(c[(c[O>>2]|0)+8>>2]|0)+((
c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2]|0)+4>>2]|0)+16&-32)}while(0);V=(c[R>>2
]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if((c[R>>2]|0)>>>0>(c[T>>2]|0)>
x3e;>0?(c[(c[R>>2]|0)+8>>2]|0)<(c[(c[R>>2]|0)+-48+8>>2]|0):0)c[(c[R>>
;2]|0)+8>>2]=c[(c[R>>2]|0)+-48+8>>2];if((((c[R>>2]|0)+48|0)>>>0<(c[S
>>2]|0)>>>0?(d[(c[R>>2]|0)+48+12>>0]|0)&4|0:0)?(c[(c[R>>2]|0)+8>
;>2]|0)>(c[(c[R>>2]|0)+48+8>>2]|0):0)c[(c[R>>2]|0)+8>>2]=c[(c[R>>2]|
0)+48+8>>2]}c[R>>2]=(c[R>>2]|0)+48}i=U;return}function $l(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;g=i;i=i+32|0;n=g+20|0;m=g+16|0;k=g+12|0;h=g+8|0;l=g+4|0;j=g;c[n>>2]=a;c[m>>2]=b;c[k
>>2]=e;c[h>>2]=f;c[l>>2]=(c[(c[h>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+4>
;>2]|0);c[j>>2]=am(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,d[(c[k>>2]|0)+12>
x3e;0]|0,d[(c[h>>2]|0)+12>>0]|0)|0;c[(c[h>>2]|0)+8>>2]=(c[(c[k>>2]|0)+8>
x3e;2]|0)+(c[j>>2]|0);i=g;return}function am(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;u=i;i=i+64|0;q=u+52|0;j=u+48|0;v=u+44|0;h=u+40|0;o=u+36|0;k=u+32|0;w=u+28|0;p=u+24|0;s=u+20|0;t=
u+16|0;n=u+12|0;r=u+8|0;m=u+4|0;l=u;c[j>>2]=a;c[v>>2]=b;c[h>>2]=e;c[o>>2]=f;c[k>>
;2]=g;c[w>>2]=c[(c[j>>2]|0)+112>>2];c[p>>2]=(c[w>>2]|0)+40+((c[v>>2]|
0)*396|0);c[s>>2]=c[h>>2];c[t>>2]=0;c[n>>2]=(c[v>>2]|0)==1&1;if(c[(c[j>
;>2]|0)+108>>2]&4|0?(d[(c[p>>2]|0)+212>>0]|0|0)==0:0){if((c[s>>2]|0)<0){c
[s>>2]=0-(c[h>>2]|0);c[t>>2]=1}if(c[n>>2]|0?!(c[(c[j>>2]|0)+108>>2]
x26;2|0):0)b=10;else b=8;do if((b|0)==8){if((c[n>>2]|0)==0?(c[(c[j>>2]|0)+108>>2]&1|0)==0:0){
b=10;break}c[m>>2]=c[s>>2];c[s>>2]=bm((c[p>>2]|0)+12|0,c[(c[p>>2]|0)+8>
x3e;2]|0,c[s>>2]|0)|0;if(c[n>>2]|0)if((c[s>>2]|0)>=64){c[s>>2]=(c[s>>2]|0
)+16&-64;break}else{c[s>>2]=64;break}h=c[s>>2]|0;if(c[(c[j>>2]|0)+108>>2]&8|0)
if((h|0)<64){c[s>>2]=64;break}else{c[s>>2]=(c[s>>2]|0)+32&-64;break}f=c[s>>2]|
0;if((h|0)<48){c[s>>2]=f+64>>1;break}h=c[s>>2]|0;if((f|0)>=128){c[s>>2]=h+32
x26;-64;break}c[s>>2]=h+22&-64;c[l>>2]=(c[s>>2]|0)-(c[m>>2]|0);if((c[l>>2
]|0)<0)c[l>>2]=0-(c[l>>2]|0);if((c[l>>2]|0)>=16?(c[s>>2]=c[m>>2],(c[
s>>2]|0)<48):0)c[s>>2]=(c[s>>2]|0)+64>>1}while(0);do if((b|0)==10?!((c[k>>
;2]&2|0)!=0&(c[n>>2]|0)!=0&(c[s>>2]|0)<192):0){h=c[s>>2]|0;if(c[o>>2
]&1|0){if((h|0)<80)c[s>>2]=64}else if((h|0)<56)c[s>>2]=56;if((c[(c[p>>2]|0)+8>
x3e;2]|0)>>>0>0){c[r>>2]=(c[s>>2]|0)-(c[(c[p>>2]|0)+12+4>>2]|0);if((
c[r>>2]|0)<0)c[r>>2]=0-(c[r>>2]|0);if((c[r>>2]|0)<40){w=c[(c[p>>2]|0
)+12+4>>2]|0;c[s>>2]=w;c[s>>2]=(c[s>>2]|0)<48?48:w;break}h=c[s>>2]|0;if((
c[s>>2]|0)>=192){c[s>>2]=h+32&-64;break}c[r>>2]=h&63;c[s>>2]=c[s>>
;2]&-64;h=c[r>>2]|0;if((c[r>>2]|0)<10){c[s>>2]=(c[s>>2]|0)+h;break}if((h|0)<
;32){c[s>>2]=(c[s>>2]|0)+10;break}if((c[r>>2]|0)<54){c[s>>2]=(c[s>>2]|0)+
54;break}else{c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);break}}}while(0);if(c[t>>2]|0)c[s>>
;2]=0-(c[s>>2]|0);c[q>>2]=c[s>>2];w=c[q>>2]|0;i=u;return w|0}c[q>>2]=c[h>
x3e;2];w=c[q>>2]|0;i=u;return w|0}function bm(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;o=i
;i=i+48|0;e=o+32|0;f=o+28|0;m=o+24|0;j=o+20|0;g=o+16|0;n=o+12|0;l=o+8|0;k=o+4|0;h=o;c[e>>2]=a;c[f>>2]=b;c[m
x3e;>2]=d;c[g>>2]=98;c[n>>2]=c[m>>2];c[j>>2]=0;while(1){if((c[j>>2]|0)>
;=(c[f>>2]|0))break;c[k>>2]=c[(c[e>>2]|0)+((c[j>>2]|0)*12|0)+4>>2];c[h>
x3e;2]=(c[m>>2]|0)-(c[k>>2]|0);if((c[h>>2]|0)<0)c[h>>2]=0-(c[h>>2]|0);if((
c[h>>2]|0)<(c[g>>2]|0)){c[g>>2]=c[h>>2];c[n>>2]=c[k>>2]}c[j>
;>2]=(c[j>>2]|0)+1}c[l>>2]=(c[n>>2]|0)+32&-64;f=c[m>>2]|0;e=c[l>>2]|
0;if((c[m>>2]|0)>=(c[n>>2]|0)){if((f|0)>=(e+48|0)){n=c[m>>2]|0;i=o;return n|0}c[m>
x3e;2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}else{if((f|0)<=(e-48|0)){n=c[m>>2]|0;i=o;return n|0
}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}return 0}function cm(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;c[h>>2]=c[h
x3e;>2];c[(c[f>>2]|0)+8>>2]=(c[(c[g>>2]|0)+8>>2]|0)+((c[(c[f>>2]|0)+4>
;>2]|0)-(c[(c[g>>2]|0)+4>>2]|0));i=e;return}function dm(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,q=0,r=0,s=0,t=0,u=0;q=i;i=i+64|0;u=q+52|0;s=q+48|0;t=q+44|0;r=q+40|0;p=q+36|0;o=q+32|0;f=q+28|0;m=q+24|0;h=q+20|0;
k=q+16|0;g=q+12|0;n=q+8|0;j=q+4|0;l=q;c[u>>2]=a;c[s>>2]=d;c[t>>2]=(c[u>>2]|0)+48+((c[s
x3e;>2]|0)*28|0);c[r>>2]=c[(c[t>>2]|0)+8>>2];c[p>>2]=(c[r>>2]|0)+((c[c[t
x3e;>2]>>2]|0)*52|0);a=(c[s>>2]|0)==0;c[o>>2]=c[r>>2];if(a){while(1){if((c[o>
x3e;2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[f>>2]=c[(c[o>>2]|0)+12
x3e;>2];a:do if(c[f>>2]|0){c[h>>2]=c[(c[o>>2]|0)+40>>2];c[k>>2]=c[(c[o>
;>2]|0)+44>>2];c[m>>2]=c[h>>2];while(1){c[(c[m>>2]|0)+16>>2]=c[(c[f>
x3e;2]|0)+8>>2];u=c[m>>2]|0;b[u>>1]=e[u>>1]|0|64;if((c[m>>2]|0)==(c[k>>
;2]|0))break a;c[m>>2]=c[(c[m>>2]|0)+32>>2]}}while(0);c[o>>2]=(c[o>>2]|0)+52}i
=q;return}else{while(1){if((c[o>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[g>
;>2]=c[(c[o>>2]|0)+12>>2];b:do if(c[g>>2]|0){c[j>>2]=c[(c[o>>2]|0)+40>
;>2];c[l>>2]=c[(c[o>>2]|0)+44>>2];c[n>>2]=c[j>>2];while(1){c[(c[n>
x3e;2]|0)+20>>2]=c[(c[g>>2]|0)+8>>2];u=c[n>>2]|0;b[u>>1]=e[u>>1]|0|128
;if((c[n>>2]|0)==(c[l>>2]|0))break b;c[n>>2]=c[(c[n>>2]|0)+32>>2]}}while(0);c[
o>>2]=(c[o>>2]|0)+52}i=q;return}}function em(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,q=
0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;z=i;i=i+96|0;B=z+80|0;g=z+76|0;f=z+72|0;w=z+68|0;A=z+64|0;n=z+60|0;m=z+56|0;x=z+52
|0;v=z+48|0;l=z+44|0;y=z+40|0;u=z+36|0;p=z+32|0;k=z+28|0;s=z+24|0;q=z+20|0;r=z+16|0;o=z+12|0;t=z+8|0;j=z+4|0;h=z;c[B>>
2]=a;c[g>>2]=d;c[f>>2]=c[(c[B>>2]|0)+32>>2];c[w>>2]=(c[f>>2]|0)+((c[(
c[B>>2]|0)+28>>2]|0)*40|0);c[A>>2]=(c[B>>2]|0)+48+((c[g>>2]|0)*28|0);c[n>
x3e;2]=c[(c[A>>2]|0)+20>>2];c[m>>2]=(c[n>>2]|0)+((c[(c[A>>2]|0)+12>>
2]|0)*48|0);if(!(c[g>>2]|0))c[x>>2]=64;else c[x>>2]=128;if((c[n>>2]|0)>>>
0>=(c[m>>2]|0)>>>0){i=z;return}c[v>>2]=c[f>>2];while(1){if((c[v>>2]|
0)>>>0>=(c[w>>2]|0)>>>0)break;do if(!(e[c[v>>2]>>1]&c[x>
;>2])){if(e[c[v>>2]>>1]&256|0?(e[c[v>>2]>>1]&512|0)==0:0)break;d=c[v>
;>2]|0;if((c[g>>2]|0)==1){c[y>>2]=b[d+14>>1];c[u>>2]=c[(c[v>>2]|0)+8>
;>2]}else{c[y>>2]=b[d+12>>1];c[u>>2]=c[(c[v>>2]|0)+4>>2]}c[p>>2
]=c[y>>2];c[l>>2]=c[n>>2];c[k>>2]=(b[c[l>>2]>>1]|0)-(c[y>>
2]|0);a:do if((c[k>>2]|0)>=0)c[y>>2]=(c[(c[l>>2]|0)+8>>2]|0)-((c[(c[l>>2]|
0)+4>>2]|0)-(c[u>>2]|0));else{c[l>>2]=(c[m>>2]|0)+-48;c[k>>2]=(c[y>>
2]|0)-(b[c[l>>2]>>1]|0);if((c[k>>2]|0)>=0){c[y>>2]=(c[(c[l>>2]|0)+8>
x3e;2]|0)+((c[u>>2]|0)-(c[(c[l>>2]|0)+4>>2]|0));break}c[s>>2]=0;c[q>>2]=((c[m
x3e;>2]|0)-(c[n>>2]|0)|0)/48|0;b:do if((c[q>>2]|0)<=8){c[t>>2]=0;while(1){if((c[t>
x3e;2]|0)>=(c[q>>2]|0))break;if((b[(c[n>>2]|0)+((c[t>>2]|0)*48|0)>>1]|0)>=(c[y
>>2]|0))break;c[t>>2]=(c[t>>2]|0)+1}d=c[t>>2]|0;if((b[(c[n>>2]|0)+((c[t>
x3e;2]|0)*48|0)>>1]|0)==(c[y>>2]|0)){c[y>>2]=c[(c[n>>2]|0)+(d*48|0)+8>>2];break
a}else{c[s>>2]=d;break}}else{while(1){if((c[s>>2]|0)>=(c[q>>2]|0))break b;c[r>>2]=(
c[q>>2]|0)+(c[s>>2]|0)>>1;c[l>>2]=(c[n>>2]|0)+((c[r>>2]|0)*48|0);c[o
>>2]=b[c[l>>2]>>1];if((c[y>>2]|0)<(c[o>>2]|0)){c[q>>2]=c[r>
;>2];continue}if((c[y>>2]|0)<=(c[o>>2]|0))break;c[s>>2]=(c[r>>2]|0)+1}c[y>
;>2]=c[(c[l>>2]|0)+8>>2];break a}while(0);c[j>>2]=(c[n>>2]|0)+((c[s>>2]|0
)*48|0)+-48;c[h>>2]=(c[n>>2]|0)+((c[s>>2]|0)*48|0);if(!(c[(c[j>>2]|0)+16>>2]|0
)){B=Vb((c[(c[h>>2]|0)+8>>2]|0)-(c[(c[j>>2]|0)+8>>2]|0)|0,(b[c[h>>2]>>
;1]|0)-(b[c[j>>2]>>1]|0)|0)|0;c[(c[j>>2]|0)+16>>2]=B}B=c[(c[j>>2]|0)+8>
x3e;2]|0;c[y>>2]=B+(Mb((c[p>>2]|0)-(b[c[j>>2]>>1]|0)|0,c[(c[j>>2]|0)+16>
x3e;2]|0)|0)}while(0);d=c[y>>2]|0;a=c[v>>2]|0;if(!(c[g>>2]|0))c[a+16>>2]=d;else c[a+20
x3e;>2]=d;B=c[v>>2]|0;b[B>>1]=e[B>>1]|c[x>>2]}while(0);c[v>>2]=(c[v>
x3e;2]|0)+40}i=z;return}function fm(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,s=0;r=i;i=i+48|0;s=
r+44|0;d=r+40|0;o=r+36|0;n=r+32|0;f=r+28|0;g=r+24|0;p=r+20|0;m=r+16|0;h=r+12|0;j=r+8|0;k=r+4|0;l=r;c[s>>2]=a;c[d>
x3e;2]=b;c[o>>2]=c[(c[s>>2]|0)+32>>2];c[n>>2]=(c[o>>2]|0)+((c[(c[s>>
2]|0)+28>>2]|0)*40|0);c[f>>2]=c[(c[s>>2]|0)+44>>2];c[g>>2]=(c[f>>2]|
0)+(c[(c[s>>2]|0)+40>>2]<<2);a:do if(!(c[d>>2]|0)){c[p>>2]=64;c[m>>2
]=c[o>>2];while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a;
c[(c[m>>2]|0)+24>>2]=c[(c[m>>2]|0)+16>>2];c[(c[m>>2]|0)+28>>2]=c[(c[
m>>2]|0)+4>>2];c[m>>2]=(c[m>>2]|0)+40}}else{c[p>>2]=128;c[m>>2]=c[o
x3e;>2];while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a;c[(c[m
x3e;>2]|0)+24>>2]=c[(c[m>>2]|0)+20>>2];c[(c[m>>2]|0)+28>>2]=c[(c[m>
x3e;2]|0)+8>>2];c[m>>2]=(c[m>>2]|0)+40}}while(0);c[m>>2]=c[o>>2];while(1){if((
c[f>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[m>>2]=c[c[f>>
2]>>2];c[h>>2]=c[(c[m>>2]|0)+36>>2];c[j>>2]=c[m>>2];while(1){if((c[m
>>2]|0)>>>0>(c[h>>2]|0)>>>0)break;b=c[m>>2]|0;if((e[c[m>
x3e;2]>>1]|0)&c[p>>2]|0){q=14;break}c[m>>2]=b+40}do if((q|0)==14){q=0;c[k>>2]=b;c[l
>>2]=c[m>>2];b:while(1){if((c[m>>2]|0)>>>0<(c[h>>2]|0)>>
x3e;0)b=((e[(c[m>>2]|0)+40>>1]|0)&c[p>>2]|0)!=0;else b=0;a=c[m>>2]|0;if(b){c[m>
;>2]=a+40;continue}c[l>>2]=a;c[m>>2]=(c[m>>2]|0)+40;while(1){if((c[m>>2]|0)>
x3e;>0>(c[h>>2]|0)>>>0)break b;if((e[c[m>>2]>>1]|0)&c[p>>2
]|0)break;c[m>>2]=(c[m>>2]|0)+40}gm((c[l>>2]|0)+40|0,(c[m>>2]|0)+-40|0,c[l>>2]|
0,c[m>>2]|0)}if((c[l>>2]|0)==(c[k>>2]|0)){hm(c[j>>2]|0,c[h>>2]|0,c[k>>
;2]|0);break}if((c[l>>2]|0)>>>0<(c[h>>2]|0)>>>0)gm((c[l>>2]|0)+
40|0,c[h>>2]|0,c[l>>2]|0,c[k>>2]|0);if((c[k>>2]|0)>>>0>(c[o>>
;2]|0)>>>0)gm(c[j>>2]|0,(c[k>>2]|0)+-40|0,c[l>>2]|0,c[k>>2]|0)}while(0);c
[f>>2]=(c[f>>2]|0)+4}s=(c[d>>2]|0)==0;c[m>>2]=c[o>>2];if(s){while(1){if((c[m
x3e;>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[(c[m>>2]|0)+16>>2]=
c[(c[m>>2]|0)+24>>2];c[m>>2]=(c[m>>2]|0)+40}i=r;return}else{while(1){if((c[m>>
2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[(c[m>>2]|0)+20>>2]=c[(c[m>
;>2]|0)+24>>2];c[m>>2]=(c[m>>2]|0)+40}i=r;return}}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;q=i;i=i+48|0;f=q+36|0;g=q+32|0;h=q+28|0;j=q+24|0;m=q+20|0;n=q+16|0;o=q+12|0;p=
q+8|0;k=q+4|0;l=q;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[o>>2]=c[(c[h>
x3e;2]|0)+28>>2];c[p>>2]=c[(c[j>>2]|0)+28>>2];c[k>>2]=(c[(c[h>>2]|0)+
24>>2]|0)-(c[o>>2]|0);c[l>>2]=(c[(c[j>>2]|0)+24>>2]|0)-(c[p>>2]|0);if
((c[f>>2]|0)>>>0>(c[g>>2]|0)>>>0){i=q;return}if((c[o>>2]|0)==(c
[p>>2]|0)){c[m>>2]=c[f>>2];while(1){if((c[m>>2]|0)>>>0>(c[g>>
;2]|0)>>>0)break;c[n>>2]=c[(c[m>>2]|0)+28>>2];if((c[n>>2]|0)<=(c[o
x3e;>2]|0))c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);else c[n>>2]=(c[n>>2]|0)+(c[l
x3e;>2]|0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>2]|0)+40}i=q;return
}e=(c[o>>2]|0)<(c[p>>2]|0);c[m>>2]=c[f>>2];if(e){while(1){if((c[m>>2]|0)
x3e;>>0>(c[g>>2]|0)>>>0)break;c[n>>2]=c[(c[m>>2]|0)+28>>2];
do if((c[n>>2]|0)>(c[o>>2]|0))if((c[n>>2]|0)>=(c[p>>2]|0)){c[n>>2]=(
c[n>>2]|0)+(c[l>>2]|0);break}else{e=c[(c[h>>2]|0)+24>>2]|0;c[n>>2]=e+(xb((c[n
x3e;>2]|0)-(c[o>>2]|0)|0,(c[(c[j>>2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+24>>2]|0
)|0,(c[p>>2]|0)-(c[o>>2]|0)|0)|0);break}else c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);while
(0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>2]|0)+40}i=q;return}else{while(
1){if((c[m>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[n>>2]=c[(c[m>
;>2]|0)+28>>2];do if((c[n>>2]|0)>(c[p>>2]|0))if((c[n>>2]|0)>=(c[o>
x3e;2]|0)){c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);break}else{e=c[(c[h>>2]|0)+24>>2]|0
;c[n>>2]=e+(xb((c[n>>2]|0)-(c[o>>2]|0)|0,(c[(c[j>>2]|0)+24>>2]|0)-(c[(c[h>
;>2]|0)+24>>2]|0)|0,(c[p>>2]|0)-(c[o>>2]|0)|0)|0);break}else c[n>>2]=(c[n>>
;2]|0)+(c[l>>2]|0);while(0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>
;2]|0)+40}i=q;return}}function hm(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;e=k+16|0;f=k+12|0;g=k+8|0;j=
k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=(c[(c[g>>2]|0)+24>>2
]|0)-(c[(c[g>>2]|0)+28>>2]|0);if(!(c[h>>2]|0)){i=k;return}c[j>>2]=c[e>>2];while
(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[(c[j>>2]|0)+24
x3e;>2]=(c[(c[j>>2]|0)+28>>2]|0)+(c[h>>2]|0);c[j>>2]=(c[j>>2]|0)+40}c[j
x3e;>2]=(c[g>>2]|0)+40;while(1){if((c[j>>2]|0)>>>0>(c[f>>2]|0)>>
;>0)break;c[(c[j>>2]|0)+24>>2]=(c[(c[j>>2]|0)+28>>2]|0)+(c[h>>2]|0);c[j
x3e;>2]=(c[j>>2]|0)+40}i=k;return}function im(b,d){b=b|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;m=k+20
|0;l=k+16|0;g=k+12|0;f=k+8|0;j=k+4|0;h=k;c[m>>2]=b;c[l>>2]=d;c[g>>2]=c[(c[m>>2]|0)+32>
;>2];c[f>>2]=(c[g>>2]|0)+((c[(c[m>>2]|0)+28>>2]|0)*40|0);c[j>>2]=c[(c[l
x3e;>2]|0)+4>>2];c[h>>2]=c[(c[l>>2]|0)+8>>2];while(1){if((c[g>>2]|0)>
;>>0>=(c[f>>2]|0)>>>0)break;c[c[j>>2]>>2]=c[(c[g>>2]|0)+16
>>2];c[(c[j>>2]|0)+4>>2]=c[(c[g>>2]|0)+20>>2];do if(!((e[c[g>>2]>
;>1]|0)&1|0)){b=c[h>>2]|0;if((e[c[g>>2]>>1]|0)&2|0){a[b>>0]=2;break}else{
a[b>>0]=1;break}}else a[c[h>>2]>>0]=0;while(0);c[g>>2]=(c[g>>2]|0)+40;c[j>
;>2]=(c[j>>2]|0)+8;c[h>>2]=(c[h>>2]|0)+1}i=k;return}function jm(a,b){a=a|0;b=b|0;var d=0,f=0,
g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[f>>2]|0)+92>
;>2];c[(c[d>>2]|0)+36>>2]=e[(c[f>>2]|0)+68>>1];if(Id(c[f>>2]|0,1970170211
)|0){c[(c[f>>2]|0)+92>>2]=0;a=c[f>>2]|0;g=c[g>>2]|0;Jd(a,g)|0;i=h;return 0}else{Gl(c[d
x3e;>2]|0,c[f>>2]|0,3e4);Rl(c[d>>2]|0,c[f>>2]|0);a=c[f>>2]|0;g=c[g>>2]|0;
Jd(a,g)|0;i=h;return 0}return 0}function km(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)+4|0;a=c[e>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>
;>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2];c[b+16>>2]=c[a+16>>
;2];c[b+20>>2]=c[a+20>>2];c[b+24>>2]=c[a+24>>2];lm(c[f>>2]|0,c[e>>2]|
0,0);lm(c[f>>2]|0,c[e>>2]|0,1);i=d;return}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;g=i;i
=i+16|0;j=g+12|0;e=g+8|0;h=g+4|0;f=g;c[j>>2]=a;c[e>>2]=b;c[h>>2]=d;c[f>>2]=(c[j>>
;2]|0)+40+((c[h>>2]|0)*396|0);d=c[e>>2]|0;if(!(c[h>>2]|0)){c[c[f>>2]>>2]=c[d+4
>>2];c[(c[f>>2]|0)+4>>2]=c[(c[e>>2]|0)+12>>2];i=g;return}else{c[c[f>>
;2]>>2]=c[d+8>>2];c[(c[f>>2]|0)+4>>2]=c[(c[e>>2]|0)+16>>2];i=g;return
}}function mm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;j=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=
a;c[j>>2]=b;Dl(c[d>>2]|0,c[j>>2]|0);c[(c[d>>2]|0)+4>>2]=c[(c[j>>2]|0
)+40>>2];c[(c[d>>2]|0)+8>>2]=c[(c[j>>2]|0)+40+4>>2];c[(c[d>>2]|0)+12
>>2]=c[(c[j>>2]|0)+40+396>>2];c[(c[d>>2]|0)+16>>2]=c[(c[j>>2]|0)+40+
396+4>>2];c[e>>2]=c[(c[j>>2]|0)+4+20>>2];c[g>>2]=c[(c[d>>2]|0)+104
x3e;>2];c[f>>2]=0;if((c[e>>2]|0)==2|(c[e>>2]|0)==3)c[f>>2]=c[f>>2]|1;if((
c[e>>2]|0)==2|(c[e>>2]|0)==4)c[f>>2]=c[f>>2]|2;if((c[e>>2]|0)!=1)c[f>>
;2]=c[f>>2]|4;if((c[e>>2]|0)!=2){j=c[g>>2]|0;j=j|4;c[g>>2]=j;j=c[g>>2]|0;g=c[d
>>2]|0;g=g+104|0;c[g>>2]=j;g=c[f>>2]|0;j=c[d>>2]|0;j=j+108|0;c[j>>2]=g;i=h;return
0}c[f>>2]=c[f>>2]|8;j=c[g>>2]|0;j=j|4;c[g>>2]=j;j=c[g>>2]|0;g=c[d>>
2]|0;g=g+104|0;c[g>>2]=j;g=c[f>>2]|0;j=c[d>>2]|0;j=j+108|0;c[j>>2]=g;i=h;return 0}function
nm(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+16|0;f=j+12|0;k=j+8|0;h=j+4|0;g=j;c[e>>2]=a;
c[f>>2]=b;c[k>>2]=d;c[k>>2]=c[k>>2];c[h>>2]=Il(c[e>>2]|0,c[f>
x3e;2]|0)|0;if(c[h>>2]|0){k=c[h>>2]|0;i=j;return k|0}if((c[(c[e>>2]|0)+104>>2]&1|0)==
0?(c[h>>2]=om(c[e>>2]|0,0)|0,c[h>>2]|0):0){k=c[h>>2]|0;i=j;return k|0}if((c[(c[e>
x3e;2]|0)+104>>2]&2|0)==0?(c[h>>2]=om(c[e>>2]|0,1)|0,c[h>>2]|0):0){k=c[h>>
;2]|0;i=j;return k|0}c[g>>2]=0;while(1){if((c[g>>2]|0)>=2)break;if((c[g>>2]|0)==0?!(c[(c[e>
;>2]|0)+104>>2]&1|0):0)a=12;else a=10;if(((a|0)==10?(a=0,(c[g>>2]|0)==1):0)?(c[(c[e>>2]|
0)+104>>2]&2|0)==0:0)a=12;if((a|0)==12){sm(c[e>>2]|0,c[g>>2]|0);ym(c[e>>2]|0,c[g>
;>2]|0);em(c[e>>2]|0,c[g>>2]|0);fm(c[e>>2]|0,c[g>>2]|0)}c[g>>2]=(c[g>
;>2]|0)+1}im(c[e>>2]|0,c[f>>2]|0);k=c[h>>2]|0;i=j;return k|0}function om(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=pm(c[d>>2]|
0,c[e>>2]|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}qm(c[d>>2]|0,c[e>>2]|0
);c[f>>2]=rm(c[d>>2]|0,c[e>>2]|0)|0;a=c[f>>2]|0;i=g;return a|0}function pm(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,q=0,r=0,s=0,t=0;q=i;i=i+48|0;g=q+44|0;s=q+40|0;r=q+36|0;t=q+32|0;p=q+28|0;o=q+24|0;h
=q+20|0;n=q+16|0;m=q+12|0;l=q+8|0;j=q+4|0;k=q;c[s>>2]=b;c[r>>2]=f;c[t>>2]=(c[s>>2]|0)+48
+((c[r>>2]|0)*28|0);c[p>>2]=c[(c[t>>2]|0)+8>>2];c[o>>2]=(c[p>>2]|0)+((
c[c[t>>2]>>2]|0)*52|0);c[h>>2]=Kl(c[s>>2]|0,c[r>>2]|0)|0;if(c[h>>2]|
0){c[g>>2]=c[h>>2];t=c[g>>2]|0;i=q;return t|0}c[n>>2]=c[p>>2];while(1){if((c[n
>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[m>>2]=c[(c[n>>2]|
0)+40>>2];c[l>>2]=c[(c[n>>2]|0)+44>>2];c[j>>2]=(e[c[m>>2]>>
;1]|0)&3;t=c[n>>2]|0;a[t>>0]=(d[t>>0]|0)&-2;while(1){if((c[m>>2]|0)==(c[l>
;>2]|0))break;c[m>>2]=c[(c[m>>2]|0)+32>>2];c[k>>2]=(e[c[m>>2]>>
1]|0)&3;if(!((c[j>>2]|0)!=0|(c[k>>2]|0)!=0))break;if((c[m>>2]|0)==(c[l>>2]|0)){t=c[
n>>2]|0;a[t>>0]=d[t>>0]|0|1}c[j>>2]=c[k>>2]}c[n>>2]=(c[n>>
2]|0)+52}c[g>>2]=0;t=c[g>>2]|0;i=q;return t|0}function qm(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;v=i;i=i+80|0;x=v+68|0;w=v+64|0;y=v+60|0;u=v+56|0;t=v+52|0;n=v+48|0;r=v+44|0;s=v+40
|0;j=v+36|0;g=v+32|0;f=v+28|0;p=v+24|0;o=v+20|0;h=v+16|0;l=v+12|0;m=v+8|0;q=v+4|0;k=v;c[x>>2]=d;c[w>>2]=e;c[
y>>2]=(c[x>>2]|0)+48+((c[w>>2]|0)*28|0);c[u>>2]=c[(c[y>>2]|0)+8>>2];
c[t>>2]=(c[u>>2]|0)+((c[c[y>>2]>>2]|0)*52|0);c[n>>2]=c[(c[y>>2]|0)+24
>>2];c[j>>2]=(c[(c[(c[x>>2]|0)+112>>2]|0)+36>>2]<<3|0)/2048|0;e=c[x
x3e;>2]|0;if(!(c[w>>2]|0))e=c[e+4>>2]|0;else e=c[e+12>>2]|0;c[g>>2]=e;c[g>>
;2]=Vb(192,c[g>>2]|0)|0;c[r>>2]=c[u>>2];while(1){if((c[r>>2]|0)>>>0>=(
c[t>>2]|0)>>>0)break;a:do if((c[(c[r>>2]|0)+40>>2]|0)!=(c[(c[r>>2]|0)+44
x3e;>2]|0)?(a[(c[r>>2]|0)+1>>0]|0)==(c[n>>2]|0):0){c[s>>2]=c[u>>2];while(
1){if((c[s>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a;do if(((c[s>>2]|
0)!=(c[r>>2]|0)?((a[(c[r>>2]|0)+1>>0]|0)+(a[(c[s>>2]|0)+1>>0]|0)|0)==0:0)?(c[f
>>2]=(b[(c[s>>2]|0)+2>>1]|0)-(b[(c[r>>2]|0)+2>>1]|0),(c[f>>2]|0)>
;=0):0){c[p>>2]=b[(c[r>>2]|0)+4>>1];c[o>>2]=b[(c[r>>2]|0)+6>>1];if((
c[p>>2]|0)<(b[(c[s>>2]|0)+4>>1]|0))c[p>>2]=b[(c[s>>2]|0)+4>>1];
if((c[o>>2]|0)>(b[(c[s>>2]|0)+6>>1]|0))c[o>>2]=b[(c[s>>2]|0)+6>>
;1];c[h>>2]=(c[o>>2]|0)-(c[p>>2]|0);if((c[h>>2]|0)>=(c[j>>2]|0)){do if((c
[f>>2]<<3|0)<((c[(c[r>>2]|0)+32>>2]|0)*9|0)){if((c[f>>2]<<3|0)
x3e;=((c[(c[r>>2]|0)+32>>2]|0)*7|0)?(c[(c[r>>2]|0)+36>>2]|0)>=(c[h>>2]|0):
0)break;c[(c[r>>2]|0)+32>>2]=c[f>>2];c[(c[r>>2]|0)+36>>2]=c[h>>2];c[(
c[r>>2]|0)+20>>2]=c[s>>2]}while(0);if((c[f>>2]<<3|0)<((c[(c[s>>
2]|0)+32>>2]|0)*9|0)){if((c[f>>2]<<3|0)>=((c[(c[s>>2]|0)+32>>2]|0)*7|0)?(
c[(c[s>>2]|0)+36>>2]|0)>=(c[h>>2]|0):0)break;c[(c[s>>2]|0)+32>>2]=c[f>
;>2];c[(c[s>>2]|0)+36>>2]=c[h>>2];c[(c[s>>2]|0)+20>>2]=c[r>>2]}}}
while(0);c[s>>2]=(c[s>>2]|0)+52}}while(0);c[r>>2]=(c[r>>2]|0)+52}c[r>>2]=c[u
x3e;>2];while(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[l>
x3e;2]=c[(c[r>>2]|0)+20>>2];b:do if(((c[l>>2]|0?(c[(c[l>>2]|0)+20>>2]|0)==(c[r
>>2]|0):0)?(b[(c[l>>2]|0)+2>>1]|0)>(b[(c[r>>2]|0)+2>>1]|0):0)?(c[(c[r>
;>2]|0)+32>>2]|0)<(c[g>>2]|0):0){c[s>>2]=c[u>>2];c:while(1){if((c[s>>
;2]|0)>>>0>=(c[t>>2]|0)>>>0)break b;d:do if(((((b[(c[s>>2]|0)+2>>
;1]|0)<=(b[(c[r>>2]|0)+2>>1]|0)?(c[r>>2]|0)!=(c[s>>2]|0):0)?(c[m>>2]=c[(c
[s>>2]|0)+20>>2],c[m>>2]|0):0)?(c[(c[m>>2]|0)+20>>2]|0)==(c[s>>2]|0):
0)?(b[(c[m>>2]|0)+2>>1]|0)>=(b[(c[l>>2]|0)+2>>1]|0):0){if((b[(c[r>>2]|0)+
2>>1]|0)==(b[(c[s>>2]|0)+2>>1]|0)?(b[(c[l>>2]|0)+2>>1]|0)==(b[(c[m>>
2]|0)+2>>1]|0):0)break;if((c[(c[s>>2]|0)+32>>2]|0)>(c[(c[r>>2]|0)+32>>2]|
0)?(c[(c[r>>2]|0)+32>>2]<<2|0)>(c[(c[s>>2]|0)+32>>2]|0):0){if((c[(c[r>
;>2]|0)+36>>2]|0)<((c[(c[s>>2]|0)+36>>2]|0)*3|0))break c;c[q>>2]=c[u>>
;2];while(1){if((c[q>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break d;c[k>>2
]=c[(c[q>>2]|0)+20>>2];do if((c[k>>2]|0)==(c[s>>2]|0)){c[(c[q>>2]|0)+20>
x3e;2]=0;c[(c[q>>2]|0)+24>>2]=c[l>>2]}else{if((c[k>>2]|0)!=(c[m>>2]|0))break;c
[(c[q>>2]|0)+20>>2]=0;c[(c[q>>2]|0)+24>>2]=c[r>>2]}while(0);c[q>>2]=(
c[q>>2]|0)+52}}}while(0);c[s>>2]=(c[s>>2]|0)+52}c[(c[l>>2]|0)+20>>2]=0;c[(c[r
x3e;>2]|0)+20>>2]=0}while(0);c[r>>2]=(c[r>>2]|0)+52}c[r>>2]=c[u>>2];while
(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[s>>2]=c[(c[r>
;>2]|0)+20>>2];do if(c[s>>2]|0?(y=(c[s>>2]|0)+28|0,c[y>>2]=(c[y>>2]|0)+1,(
c[(c[s>>2]|0)+20>>2]|0)!=(c[r>>2]|0)):0){c[(c[r>>2]|0)+20>>2]=0;if((c[(c[s>
;>2]|0)+32>>2]|0)>=(c[g>>2]|0)?(c[(c[r>>2]|0)+32>>2]|0)>=(c[(c[s>>
;2]|0)+32>>2]<<2|0):0){y=(c[s>>2]|0)+28|0;c[y>>2]=(c[y>>2]|0)+-1;break}c[(c[r
x3e;>2]|0)+24>>2]=c[(c[s>>2]|0)+20>>2]}while(0);c[r>>2]=(c[r>>2]|0)+52}i=
v;return}
function Is(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=a+4|0;o=c[n>>2]|0;d=o&-8;k=a+d
|0;i=c[18404]|0;e=o&3;if(!((e|0)!=1&a>>>0>=i>>>0&a>>>0<k
x3e;>>0))ya();f=c[k+4>>2]|0;if(!(f&1))ya();if(!e){if(b>>>0<256){a=0;return a|0}if(d
>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[18520]<<1>>>0:0
)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a
|0;m=a+b|0;c[n>>2]=o&1|b|2;c[m+4>>2]=d|3;b=m+d+4|0;c[b>>2]=c[b>>2]|1;Js(m,d);return
a|0}if((k|0)==(c[18406]|0)){d=(c[18403]|0)+d|0;if(d>>>0<=b>>>0){a=0;return a|0}m=d-b|0;l=a+b
|0;c[n>>2]=o&1|b|2;c[l+4>>2]=m|1;c[18406]=l;c[18403]=m;return a|0}if((k|0)==(c[18405]|0)){e=(c[18402]|0
)+d|0;if(e>>>0<b>>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){e=a+b|0;m=e+d|0
;c[n>>2]=o&1|b|2;c[e+4>>2]=d|1;c[m>>2]=d;b=m+4|0;c[b>>2]=c[b>>2]&-2}
else{c[n>>2]=o&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[18402]=d;c[18405]=e;return a|0}if(
f&2|0){a=0;return a|0}l=(f&-8)+d|0;if(l>>>0<b>>>0){a=0;return a|0}m=l-b|0;g=f>
x3e;>3;do if(f>>>0>=256){h=c[k+24>>2]|0;f=c[k+12>>2]|0;do if((f|0)==(k|0)){e=k+16|0
;f=e+4|0;d=c[f>>2]|0;if(!d){d=c[e>>2]|0;if(!d){j=0;break}}else e=f;while(1){f=d+20|0;g=c[f>>2]|0;if
(g|0){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0<i>>>
0)ya();else{c[e>>2]=0;j=d;break}}else{g=c[k+8>>2]|0;if(g>>>0<i>>>0)ya();d
=g+12|0;if((c[d>>2]|0)!=(k|0))ya();e=f+8|0;if((c[e>>2]|0)==(k|0)){c[d>>2]=f;c[e>>2]=g;j=
f;break}else ya()}while(0);if(h|0){d=c[k+28>>2]|0;e=73904+(d<<2)|0;if((k|0)==(c[e>>2]|0)){c[e>
;>2]=j;if(!j){c[18401]=c[18401]&~(1<<d);break}}else{if(h>>>0<(c[18404]|0)>>>
;0)ya();d=h+16|0;if((c[d>>2]|0)==(k|0))c[d>>2]=j;else c[h+20>>2]=j;if(!j)break}f=c[18404]|0;if(j
x3e;>>0<f>>>0)ya();c[j+24>>2]=h;d=k+16|0;e=c[d>>2]|0;do if(e|0)if(e>>
;>0<f>>>0)ya();else{c[j+16>>2]=e;c[e+24>>2]=j;break}while(0);d=c[d+4>>2]|
0;if(d|0)if(d>>>0<(c[18404]|0)>>>0)ya();else{c[j+20>>2]=d;c[d+24>>2]=j;break
}}}else{e=c[k+8>>2]|0;f=c[k+12>>2]|0;d=73640+(g<<1<<2)|0;if((e|0)!=(d|0)){if(e>>
;>0<i>>>0)ya();if((c[e+12>>2]|0)!=(k|0))ya()}if((f|0)==(e|0)){c[18400]=c[18400]&~(1<
;<g);break}if((f|0)!=(d|0)){if(f>>>0<i>>>0)ya();d=f+8|0;if((c[d>>2]|0)==(k|0))
h=d;else ya()}else h=f+8|0;c[e+12>>2]=f;c[h>>2]=e}while(0);if(m>>>0<16){c[n>>2
]=l|o&1|2;b=a+l+4|0;c[b>>2]=c[b>>2]|1;return a|0}else{l=a+b|0;c[n>>2]=o&1|b|2;c[l+4>
;>2]=m|3;b=l+m+4|0;c[b>>2]=c[b>>2]|1;Js(l,m);return a|0}return 0}function Js(a,b){a=a|0;b=b|0;var d=0,e
=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;
if(!(d&3))return;l=a+(0-f)|0;k=f+b|0;i=c[18404]|0;if(l>>>0<i>>>0)ya();if((l|0)==(c[18405
]|0)){a=o+4|0;d=c[a>>2]|0;if((d&3|0)!=3){r=l;g=k;break}c[18402]=k;c[a>>2]=d&-2;c[l+4>>2]=
k|1;c[l+k>>2]=k;return}e=f>>>3;if(f>>>0<256){a=c[l+8>>2]|0;b=c[l+12>
x3e;2]|0;d=73640+(e<<1<<2)|0;if((a|0)!=(d|0)){if(a>>>0<i>>>0)ya();if((c[a
+12>>2]|0)!=(l|0))ya()}if((b|0)==(a|0)){c[18400]=c[18400]&~(1<<e);r=l;g=k;break}if((b|0)!=(d|0)){if(b
x3e;>>0<i>>>0)ya();d=b+8|0;if((c[d>>2]|0)==(l|0))h=d;else ya()}else h=b+8|0;c[a+12>
x3e;2]=b;c[h>>2]=a;r=l;g=k;break}f=c[l+24>>2]|0;b=c[l+12>>2]|0;do if((b|0)==(l|0)){a=l+16|0;b=a+4|
0;d=c[b>>2]|0;if(!d){d=c[a>>2]|0;if(!d){j=0;break}}else a=b;while(1){b=d+20|0;e=c[b>>2]|0;if(e|0){
d=e;a=b;continue}b=d+16|0;e=c[b>>2]|0;if(!e)break;else{d=e;a=b}}if(a>>>0<i>>>0)ya();
else{c[a>>2]=0;j=d;break}}else{e=c[l+8>>2]|0;if(e>>>0<i>>>0)ya();d=e+12|0
;if((c[d>>2]|0)!=(l|0))ya();a=b+8|0;if((c[a>>2]|0)==(l|0)){c[d>>2]=b;c[a>>2]=e;j=b;break
}else ya()}while(0);if(f){d=c[l+28>>2]|0;a=73904+(d<<2)|0;if((l|0)==(c[a>>2]|0)){c[a>>2]=
j;if(!j){c[18401]=c[18401]&~(1<<d);r=l;g=k;break}}else{if(f>>>0<(c[18404]|0)>>>
;0)ya();d=f+16|0;if((c[d>>2]|0)==(l|0))c[d>>2]=j;else c[f+20>>2]=j;if(!j){r=l;g=k;break}}b=c[18404
]|0;if(j>>>0<b>>>0)ya();c[j+24>>2]=f;d=l+16|0;a=c[d>>2]|0;do if(a|0)if(a
x3e;>>0<b>>>0)ya();else{c[j+16>>2]=a;c[a+24>>2]=j;break}while(0);d=c[d+4>
x3e;2]|0;if(d)if(d>>>0<(c[18404]|0)>>>0)ya();else{c[j+20>>2]=d;c[d+24>>2]=
j;r=l;g=k;break}else{r=l;g=k}}else{r=l;g=k}}else{r=a;g=b}while(0);h=c[18404]|0;if(o>>>0<h>>>0
)ya();d=o+4|0;a=c[d>>2]|0;if(!(a&2)){if((o|0)==(c[18406]|0)){q=(c[18403]|0)+g|0;c[18403]=q;c[18406]=r;c[r+4>
x3e;2]=q|1;if((r|0)!=(c[18405]|0))return;c[18405]=0;c[18402]=0;return}if((o|0)==(c[18405]|0)){q=(c[18402]|0)+g|0;c[18402]=q;c[18405
]=r;c[r+4>>2]=q|1;c[r+q>>2]=q;return}g=(a&-8)+g|0;e=a>>>3;do if(a>>>0>
;=256){f=c[o+24>>2]|0;b=c[o+12>>2]|0;do if((b|0)==(o|0)){a=o+16|0;b=a+4|0;d=c[b>>2]|0;if(!d){d=c[a
>>2]|0;if(!d){n=0;break}}else a=b;while(1){b=d+20|0;e=c[b>>2]|0;if(e|0){d=e;a=b;continue}b=d+16|0;e=c[b>
;>2]|0;if(!e)break;else{d=e;a=b}}if(a>>>0<h>>>0)ya();else{c[a>>2]=0;n=d;break}}
else{e=c[o+8>>2]|0;if(e>>>0<h>>>0)ya();d=e+12|0;if((c[d>>2]|0)!=(o|0))ya();
a=b+8|0;if((c[a>>2]|0)==(o|0)){c[d>>2]=b;c[a>>2]=e;n=b;break}else ya()}while(0);if(f|0){d=c[o+28
x3e;>2]|0;a=73904+(d<<2)|0;if((o|0)==(c[a>>2]|0)){c[a>>2]=n;if(!n){c[18401]=c[18401]&~(1
<<d);break}}else{if(f>>>0<(c[18404]|0)>>>0)ya();d=f+16|0;if((c[d>>2]|0)==(
o|0))c[d>>2]=n;else c[f+20>>2]=n;if(!n)break}b=c[18404]|0;if(n>>>0<b>>>0)
ya();c[n+24>>2]=f;d=o+16|0;a=c[d>>2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else
{c[n+16>>2]=a;c[a+24>>2]=n;break}while(0);d=c[d+4>>2]|0;if(d|0)if(d>>>0<(c[18404
]|0)>>>0)ya();else{c[n+20>>2]=d;c[d+24>>2]=n;break}}}else{a=c[o+8>>2]|0;b=c[o+12>
;>2]|0;d=73640+(e<<1<<2)|0;if((a|0)!=(d|0)){if(a>>>0<h>>>0)ya();if((
c[a+12>>2]|0)!=(o|0))ya()}if((b|0)==(a|0)){c[18400]=c[18400]&~(1<<e);break}if((b|0)!=(d|0)){if(b>
x3e;>0<h>>>0)ya();d=b+8|0;if((c[d>>2]|0)==(o|0))m=d;else ya()}else m=b+8|0;c[a+12>>
2]=b;c[m>>2]=a}while(0);c[r+4>>2]=g|1;c[r+g>>2]=g;if((r|0)==(c[18405]|0)){c[18402]=g;return}}else{
c[d>>2]=a&-2;c[r+4>>2]=g|1;c[r+g>>2]=g}d=g>>>3;if(g>>>0<256
){b=73640+(d<<1<<2)|0;a=c[18400]|0;d=1<<d;if(a&d){d=b+8|0;a=c[d>>2]|0;if(a>>
;>0<(c[18404]|0)>>>0)ya();else{p=d;q=a}}else{c[18400]=a|d;p=b+8|0;q=b}c[p>>2]=r;c[q+12>
x3e;2]=r;c[r+8>>2]=q;c[r+12>>2]=b;return}d=g>>>8;if(d)if(g>>>0>16777215)b
=31;else{p=(d+1048320|0)>>>16&8;q=d<<p;o=(q+520192|0)>>>16&4;q=q<<o;
b=(q+245760|0)>>>16&2;b=14-(o|p|b)+(q<<b>>>15)|0;b=g>>>(b+7|0)&
1|b<<1}else b=0;e=73904+(b<<2)|0;c[r+28>>2]=b;c[r+20>>2]=0;c[r+16>>2]=0;d=c[18401
]|0;a=1<<b;if(!(d&a)){c[18401]=d|a;c[e>>2]=r;c[r+24>>2]=e;c[r+12>>2]=r;c[r+8>
x3e;2]=r;return}f=g<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]
x26;-8|0)==(g|0)){b=d;e=127;break}a=d+16+(f>>>31<<2)|0;b=c[a>>2]|0;if(!b){e=124;break}else{f=
f<<1;d=b}}if((e|0)==124){if(a>>>0<(c[18404]|0)>>>0)ya();c[a>>2]=r;c[r+24
x3e;>2]=d;c[r+12>>2]=r;c[r+8>>2]=r;return}else if((e|0)==127){d=b+8|0;a=c[d>>2]|0;q=c[18404]|
0;if(!(a>>>0>=q>>>0&b>>>0>=q>>>0))ya();c[a+12>
x3e;2]=r;c[d>>2]=r;c[r+8>>2]=a;c[r+12>>2]=b;c[r+24>>2]=0;return}}function Ks(){}function
Ls(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (C=d,a-c
>>>0|0)|0}function Ms(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (C=b+d+(c>>>
;0<a>>>0|0)>>>0,c|0)|0}function Ns(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;h=b&3;i=d|d<<8|d<<16|d<<24;g=f&~3;if(h){h=b+4-h|0;while((b|0)
x3c;(h|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(g|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(f|0)){a[b>
x3e;0]=d;b=b+1|0}return b-e|0}function Os(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>>c;return a>>
x3e;c|(b&(1<<c)-1)<<32-c}C=0;return b>>>c-32|0}function Ps(a,b,c){a=a|0;b=b|0;c=c|0;if((
c|0)<32){C=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}C=a<
x3c;c-32;return 0}function Qs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;p=p+1|0;c[a>>2]=p;while((f|0)<(e|0)){if(!(
c[d+(f<<3)>>2]|0)){c[d+(f<<3)>>2]=p;c[d+((f<<3)+4)>>2]=b;c[d+((f<
;<3)+8)>>2]=0;C=e;return d|0}f=f+1|0}e=e*2|0;d=Hs(d|0,8*(e+1|0)|0)|0;d=Qs(a|0,b|0,d|0,e|0)|0;C=e;return d|0}function
Rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;while((f|0)<(d|0)){e=c[b+(f<<3)>>2]|0;if(!e)break;if((e|0)==(a
|0))return c[b+((f<<3)+4)>>2]|0;f=f+1|0}return 0}function Ss(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=
4096)return Ea(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if(!e)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 Ts(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 Ss(b,c,d)|0;return b|0}function Us(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>c;return a>
;>>c|(b&(1<<c)-1)<<32-c}C=(b|0)<0?-1:0;return b>>c-32|0}function Vs(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 Ws(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=_(e,f)|0;d=a>>
;>16;a=(c>>>16)+(_(e,d)|0)|0;e=b>>>16;b=_(e,f)|0;return (C=(a>>>16)+(_(e,d)|0)+(((
a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Xs(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)<
x3c;1;h=Ls(j^a|0,i^b|0,j|0,i|0)|0;g=C;a=f^j;b=e^i;return Ls((at(h,g,Ls(f^c|0,e^d|0,f|0,e|0)|0,C,0)|0)^a|0,C^b|0,a|0,b|0)|0}function
Ys(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+16|0;j=f|0;h=b>>31|((b|0)<0?-1:0)<
x3c;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;a=Ls(h^a|0,g^b|0,h|0,g|0)|0;b=C;at(a,b,Ls(l^d|0,k^e|0,l|0,k|0)|
0,C,j)|0;e=Ls(c[j>>2]^h|0,c[j+4>>2]^g|0,h|0,g|0)|0;d=C;i=f;return (C=d,e)|0}function Zs(a,b,c,d){a=a|0;b=b|0
;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Ws(e,f)|0;a=C;return (C=(_(b,f)|0)+(_(d,e)|0)+a|a&0,c|0|0)|0}function _s(a,b,c,d){a=a|0;
b=b|0;c=c|0;d=d|0;return at(a,b,c,d,0)|0}function $s(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+16|0;f=g|0;at(a,b,d,e,
f)|0;i=g;return (C=c[f+4>>2]|0,c[f>>2]|0)|0}function at(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0
,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(
h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (C=n,f
)|0}else{if(!g){n=0;f=0;return (C=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (C=n,f)|0}}g=(i|0)==0
;do if(h){if(!g){g=(aa(i|0)|0)-(aa(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>
;>>(m>>>0)&b|k<<i;b=k>>>(m>>>0)&b;g=0;i=l<<
i;break}if(!f){n=0;f=0;return (C=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (C=n,f)|0}g=h-1|0;if
(g&h|0){i=(aa(h|0)|0)+33-(aa(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>
31&k>>>(o>>>0)|(k<<m|l>>>(i>>>0))&b;b=b&k
x3e;>>(i>>>0);g=l<<p&j;i=(k<<p|l>>>(o>>>0))&
;j|l<<m&i-33>>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&
;0;p=a|0|0;return (C=o,p)|0}else{p=Vs(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>
;(p>>>0)|0;return (C=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c
[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (C=o,p)|0}if(!l){if(f|0){c[f
x3e;>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>
;0)>>>0;return (C=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&
;0}o=0;p=k>>>((Vs(i|0)|0)>>>0);return (C=o,p)|0}g=(aa(i|0)|0)-(aa(k|0)|0)|0;if(g>>>
0<=30){b=g+1|0;i=31-g|0;h=b;a=k<<i|l>>>(b>>>0);b=k>>>(b>>
x3e;0);g=0;i=l<<i;break}if(!f){o=0;p=0;return (C=o,p)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return
(C=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Ms(m|0,l|0,-1,-1)|0;d=C;j=i;i=0;do{e=j;j=g>>>31
|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Ls(k|0,d|0,
e|0,n|0)|0;p=C;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Ls(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>
x3e;31|((p|0)<0?-1:0)<<1)&l|0)|0;b=C;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4
x3e;>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|
0>>>31)&-2|i;return (C=o,p)|0}function bt(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return
Na[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ct(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Oa[a&63](b|0,c|0,d|0)|0}function
dt(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Pa[a&1](b|0,c|0,d|0,e|0,f|0)}function et(a,b,c,d,e,f,g,h,i,j){a=a|0;b=
b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;return Qa[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)|0}function ft(a,b,c
){a=a|0;b=b|0;c=c|0;Ra[a&7](b|0,c|0)}function gt(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 Sa[a&
3](b|0,c|0,d|0,e|0,f|0,g|0)|0}function ht(a,b){a=a|0;b=b|0;return Ta[a&63](b|0)|0}function it(a,b,c,d){a=a|0;b=b|0;c=c|0;d=
d|0;Ua[a&31](b|0,c|0,d|0)}function jt(a,b){a=a|0;b=b|0;Va[a&63](b|0)}function kt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=
e|0;return Wa[a&31](b|0,c|0,d|0,e|0)|0}function lt(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;Xa[a&7](b|
0,c|0,d|0,e|0,f|0,g|0)}function mt(a,b,c){a=a|0;b=b|0;c=c|0;return Ya[a&127](b|0,c|0)|0}function nt(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 Za[a&31](b|0,c|0,d|0,e|0,f|0)|0}function ot(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;_a[a
x26;15](b|0,c|0,d|0,e|0)}function pt(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;ba(0);return 0}function qt(a,b,c){
a=a|0;b=b|0;c=c|0;ba(1);return 0}function rt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(2)}function st(a,b,c,d,e,f,g,h,i){a=a|0
;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;ba(3);return 0}function tt(a,b){a=a|0;b=b|0;ba(4)}function ut(a,b,c,d,e,f){a=a|
0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ba(5);return 0}function vt(a){a=a|0;ba(6);return 0}function wt(a,b,c){a=a|0;b=b|0;c=c|0;ba(7)}function
xt(a){a=a|0;ba(8)}function yt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(9);return 0}function zt(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;
e=e|0;f=f|0;ba(10)}function At(a,b){a=a|0;b=b|0;ba(11);return 0}function Bt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(12);return
0}function Ct(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(13)}
...
function Module_requestFullScreen(lockPointer, resizeCanvas, vrDevice){Browser.requestFullScreen(lockPointer,resizeCanvas,vrDevice )}
...
var Module;if(typeof Module==="undefined")Module={};if(!Module.expectedDataFileDownloads){Module.expectedDataFileDownloads
=0;Module.finishedDataFileDownloads=0}Module.expectedDataFileDownloads++;((function(){var loadPackage=(function(metadata){function
runWithFS(){var fileData0=[];fileData0.push.apply(fileData0,[79,84,84,79,0,13,0,128,0,3,0,80,67,70,70,32,137,224,82,238,0,0,7,132
,0,0,45,223,70,70,84,77,101,130,23,249,0,0,55,12,0,0,0,28,71,68,69,70,0,160,0,4,0,0,53,100,0,0,0,32,71,80,79,83,184,255,184,254,
0,0,54,220,0,0,0,48,71,83,85,66,234,147,151,221,0,0,53,132,0,0,1,88,79,83,47,50,131,156,137,79,0,0,1,64,0,0,0,96,99,109,97,112,146
,230,183,142,0,0,5,184,0,0,1,170,104,101,97,100,251,7,171,9,0,0,0,220,0,0,0,54,104,104,101,97,7,42,2,2,0,0,1,20,0,0,0,36,104,109
,116,120,33,252,29,155,0,0,55,40,0,0,0,234,109,97,120,112,0,115,80,0,0,0,1,56,0,0,0,6,110,97,109,101,152,108,186,46,0,0,1,160,0,
0,4,23,112,111,115,116,0,3,0,1,0,0,7,100,0,0,0,32,0,1,0,0,0,2,0,0,252,84,172,109,95,15,60,245,0,11,3,232,0,0,0,0,204,138,51,83,0
,0,0,0,204,138,51,83,0,87,255,44,2,124,4,82,0,0,0,8,0,2,0,0,0,0,0,0,0,1,0,0,4,82,255,44,0,90,2,211,0,0,0,0,2,124,0,1,0,0,0,0,0,0
,0,0,0,0,0,0,0,0,0,2,0,0,80,0,0,115,0,0,0,3,2,211,1,144,0,5,0,0,2,138,2,188,0,0,0,140,2,138,2,188,0,0,1,224,0,49,1,2,0,0,2,0,5,9
,0,0,0,0,0,0,0,0,0,35,0,0,42,0,0,0,0,0,0,0,0,0,80,102,69,100,0,64,0,32,37,160,3,32,255,56,0,90,4,82,0,212,0,0,0,1,0,0,0,0,2,56,3
,12,0,32,0,32,0,1,0,0,0,24,1,38,0,1,0,0,0,0,0,0,0,86,0,174,0,1,0,0,0,0,0,1,0,4,1,15,0,1,0,0,0,0,0,2,0,7,1,36,0,1,0,0,0,0,0,3,0,33
,1,112,0,1,0,0,0,0,0,4,0,5,1,158,0,1,0,0,0,0,0,5,0,10,1,186,0,1,0,0,0,0,0,6,0,4,1,207,0,1,0,0,0,0,1,0,0,16,2,224,0,1,0,0,0,0,1,1
,0,23,2,166,0,1,0,0,0,0,1,2,0,20,2,97,0,1,0,0,0,0,1,3,0,15,2,39,0,1,0,0,0,0,1,4,0,16,1,246,0,3,0,1,4,9,0,0,0,172,0,0,0,3,0,1,4,9
,0,1,0,8,1,5,0,3,0,1,4,9,0,2,0,14,1,20,0,3,0,1,4,9,0,3,0,66,1,44,0,3,0,1,4,9,0,4,0,10,1,146,0,3,0,1,4,9,0,5,0,20,1,164,0,3,0,1,4
,9,0,6,0,8,1,197,0,3,0,1,4,9,1,0,0,32,2,190,0,3,0,1,4,9,1,1,0,46,2,118,0,3,0,1,4,9,1,2,0,40,2,55,0,3,0,1,4,9,1,3,0,30,2,7,0,3,0,
1,4,9,1,4,0,32,1,212,0,77,0,97,0,116,0,116,0,104,0,101,0,119,0,32,0,83,0,107,0,97,0,108,0,97,0,32,0,40,0,50,0,48,0,49,0,49,0,45,
0,49,0,50,0,41,0,59,0,32,0,98,0,97,0,115,0,101,0,100,0,32,0,111,0,110,0,32,0,99,0,111,0,100,0,101,0,32,0,98,0,121,0,32,0,82,0,105
,0,99,0,104,0,97,0,114,0,100,0,32,0,66,0,46,0,32,0,87,0,97,0,108,0,101,0,115,0,32,0,40,0,49,0,57,0,56,0,56,0,45,0,56,0,57,0,41,0
,32,0,97,0,110,0,100,0,32,0,84,0,111,0,114,0,32,0,76,0,105,0,108,0,108,0,113,0,118,0,105,0,115,0,116,0,0,77,97,116,116,104,101,119
,32,83,107,97,108,97,32,40,50,48,49,49,45,49,50,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,82,105,99,104
,97,114,100,32,66,46,32,87,97,108,101,115,32,40,49,57,56,56,45,56,57,41,32,97,110,100,32,84,111,114,32,76,105,108,108,113,118,105
,115,116,0,0,79,0,67,0,82,0,65,0,0,79,67,82,65,0,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,0,82,101,103,117,108,97,114,0,0,70,0,
111,0,110,0,116,0,70,0,111,0,114,0,103,0,101,0,32,0,50,0,46,0,48,0,32,0,58,0,32,0,79,0,67,0,82,0,32,0,65,0,32,0,58,0,32,0,50,0,55
,0,45,0,57,0,45,0,50,0,48,0,49,0,50,0,0,70,111,110,116,70,111,114,103,101,32,50,46,48,32,58,32,79,67,82,32,65,32,58,32,50,55,45,
57,45,50,48,49,50,0,0,79,0,67,0,82,0,32,0,65,0,0,79,67,82,32,65,0,0,86,0,101,0,114,0,115,0,105,0,111,0,110,0,32,0,50,0,32,0,0,86
,101,114,115,105,111,110,32,50,32,0,0,79,0,67,0,82,0,65,0,0,79,67,82,65,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,
32,0,104,0,121,0,112,0,104,0,101,0,110,0,0,65,108,116,101,114,110,97,116,101,32,104,121,112,104,101,110,0,0,65,0,108,0,116,0,101
,0,114,0,110,0,97,0,116,0,101,0,32,0,99,0,111,0,109,0,109,0,97,0,0,65,108,116,101,114,110,97,116,101,32,99,111,109,109,97,0,0,65
,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,97,0,112,0,111,0,115,0,116,0,114,0,111,0,112,0,104,0,101,0,0,65,108,116,101
,114,110,97,116,101,32,97,112,111,115,116,114,111,112,104,101,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,113,0
,117,0,101,0,115,0,116,0,105,0,111,0,110,0,32,0,109,0,97,0,114,0,107,0,0,65,108,116,101,114,110,97,116,101,32,113,117,101,115,116
,105,111,110,32,109,97,114,107,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,112,0,101,0,114,0,105,0,111,0,100,0,
0,65,108,116,101,114,110,97,116,101,32,112,101,114,105,111,100,0,0,0,0,0,3,0,0,0,3,0,0,0,28,0,1,0,0,0,0,0,164,0,3,0,1,0,0,0,28,0
,4,0,136,0,0,0,30,0,16,0,3,0,14,0,93,0,125,0,163,0,165,0,198,0,209,0,214,0,216,0,220,2,198,2,220,36,66,37,2,37,160,255,255,0,0,0
,32,0,95,0,163,0,165,0,196,0,209,0,214,0,216,0,220,2,198,2,220,36,64,37,2,37,160,255,255,255,225,255,225,255,192,255,191,255,167
,255,157,255,153,255,152,255,149,253,121,253,131,220,40,219,112,218,192,0,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,1,6,0,0,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,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,0,64,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,91,92,93,94,0,0,107,108,0,0,110,111,113,0
,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,109,112,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,95,0,0,0,0,0,0,0,0,0,0,0,
3,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,0,0,0,0,0,1,0,4,4,0,1,1,1,5,79,67,82,65,0,1,2,0,1,0,52,248,37,0,248,38,1,248
,39,2,248,40,3,248,24,4,140,12,1,139,12,3,139,12,4,226,251,104,249,16,250,230,5,28,1,37,15,28,0,0,16,28,2,10,17,28,0,52,28,44,255
,18,0,14,2,0,1,0,8,0,18,0,30,0,45,0,54,0,64,0,71,0,78,0,85,0,92,0,93,0,179,0,184,0,188,117,110,105,50,53,65,48,112,101,114,105,111
,100,46,97,108,116,113,117,101,115,116,105,111,110,46,97,108,116,113,117,111,116,101,115,105,110,103,108,101,46,97,108,116,99,111
,109,109,97,46,97,108,116,104,121,112,104,101,110,46,97,108,116,117,110,105,50,52,52,48,117,110,105,50,52,52,49,117,110,105,50,52
,52,50,117,110,105,50,53,48,50,50,77,97,116,116,104,101,119,32,83,107,97,108,97,32,40,50,48,49,49,45,49,50,41,59,32,98,97,115,101
,100,32,111,110,32,99,111,100,101,32,98,121,32,82,105,99,104,97,114,100,32,66,46,32,87,97,108,101,115,32,40,49,57,56,56,45,56,57
,41,32,97,110,100,32,84,111,114,32,76,105,108,108,113,118,105,115,116,79,67,82,32,65,79,67,82,65,0,0,0,0,1,0,2,0,3,0,4,0,5,0,6,0
,7,0,104,0,9,0,10,0,11,0,12,0,13,0,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,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,54,0,55,0,56,0,57,0,58
,0,59,0,60,0,61,0,62,0,126,0,64,0,124,0,66,0,67,0,68,0,69,0,70,0,71,0,72,0,73,0,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,94,0,127,1,135,1,136,1,137,0,98,0,100,1,138,1,139,1,140,1,141,1,142,1,143,0,
173,0,175,0,138,0,186,0,189,0,141,0,195,1,144,0,115,2,0,1,0,2,0,3,0,83,0,176,1,63,1,187,2,61,2,234,3,34,3,139,3,246,4,140,4,211,
5,14,5,53,5,71,5,130,5,188,6,14,6,92,6,201,7,21,7,123,7,211,8,39,8,144,8,232,9,27,9,119,9,196,9,216,10,39,10,170,11,66,11,143,11
,243,12,105,12,231,13,39,13,99,13,228,14,46,14,118,14,188,15,28,15,68,15,149,15,210,16,117,16,190,17,91,17,192,18,53,18,125,18,197
,19,19,19,142,20,9,20,87,20,138,20,206,21,11,21,83,21,150,21,183,21,243,22,121,23,30,23,143,23,241,24,117,24,203,25,137,25,231,26
,82,26,217,27,62,27,121,27,254,28,88,28,228,29,153,29,252,30,80,30,236,31,77,31,171,32,7,32,141,33,8,33,124,33,201,34,51,34,94,34
,199,35,51,35,66,35,109,35,221,36,79,36,202,37,3,37,58,37,70,37,124,37,187,38,0,38,114,38,227,39,107,39,238,40,193,41,142,41,252
,42,11,14,14,139,247,35,249,17,119,1,247,178,247,43,3,247,178,190,21,111,162,116,167,30,188,6,167,162,162,167,31,181,7,167,116,161
,111,30,90,6,111,116,117,111,31,249,17,4,164,252,19,5,141,111,160,117,167,139,8,165,163,160,168,31,164,248,19,139,142,5,165,115,
160,112,30,90,6,111,116,116,112,31,14,249,59,240,1,247,55,238,3,247,3,249,110,21,191,251,157,5,144,116,159,121,164,139,163,139,160
,157,143,162,8,181,247,106,247,6,139,180,251,97,5,139,137,138,137,139,137,139,115,165,119,165,139,170,139,155,163,144,165,153,216
,154,221,159,212,8,153,7,140,144,140,145,139,144,139,143,138,143,143,12,37,171,252,134,102,7,138,134,138,135,139,135,8,14,247,189
,240,247,3,240,247,62,119,1,247,104,240,236,240,3,247,5,247,240,21,111,161,116,167,30,188,251,11,6,111,161,116,167,167,162,162,167
,30,247,11,236,251,11,7,111,162,116,167,167,161,162,167,30,247,11,188,7,167,162,162,167,166,116,162,111,31,90,247,3,188,6,167,162
,162,167,167,116,161,111,31,90,247,12,6,166,117,162,111,111,116,116,112,30,251,12,42,247,12,7,166,116,162,111,111,117,116,112,30
,251,12,90,7,111,117,117,111,111,161,116,167,31,188,251,3,90,6,111,117,116,112,31,247,92,189,21,247,3,236,251,3,7,14,160,118,247
,62,240,207,241,207,240,247,62,119,1,247,5,239,237,240,237,240,3,20,112,247,5,247,112,21,111,161,117,167,30,247,40,251,11,6,111,
162,116,167,166,162,162,167,30,247,11,247,40,7,167,162,161,167,31,247,62,7,167,116,162,111,30,251,239,207,247,239,6,167,162,162,
167,167,116,161,111,31,251,40,247,12,6,166,116,162,112,111,116,116,112,30,251,12,251,40,7,111,117,117,111,31,251,62,7,111,161,116
,167,30,247,239,71,251,239,6,111,117,116,111,31,14,139,247,78,248,44,247,78,1,247,5,247,92,236,247,93,3,247,5,247,27,21,111,161,
117,167,30,155,139,154,146,148,151,8,248,33,248,146,5,146,147,143,150,139,151,139,167,116,161,111,139,123,139,124,132,130,127,8,
252,33,252,146,5,132,131,136,128,139,127,8,248,146,4,111,161,116,167,30,238,6,167,162,162,167,31,224,7,166,116,162,111,30,40,6,111
,117,116,112,31,247,189,253,59,21,111,162,116,167,30,238,6,167,162,162,167,31,223,7,167,116,162,111,30,40,6,111,116,116,111,31,14
,139,240,248,129,240,1,247,5,240,247,88,240,3,247,5,247,43,21,57,207,70,222,30,237,6,151,139,150,144,148,146,8,213,202,194,80,5,
148,129,152,133,154,139,167,139,162,162,139,167,139,152,133,151,131,148,8,87,195,5,161,157,183,163,139,176,139,167,116,162,111,139
,126,139,128,134,130,132,8,88,95,32,247,6,247,17,246,5,150,148,145,154,139,154,8,208,7,221,71,208,56,30,43,6,56,71,70,57,31,70,7
,139,126,144,126,147,130,8,235,37,47,60,5,128,129,133,126,139,123,8,240,70,21,139,185,217,205,246,251,6,83,91,60,139,5,112,116,161
,167,31,247,236,4,188,7,167,162,161,166,30,235,6,165,163,115,113,31,139,93,251,3,45,5,14,249,160,119,18,247,153,247,93,251,93,239
,19,160,247,153,248,26,21,111,162,117,167,30,163,139,158,155,145,161,8,238,247,229,5,19,192,140,144,140,144,139,144,8,166,116,162
,111,30,40,6,111,116,116,112,31,14,160,118,249,160,119,1,247,153,240,3,247,153,247,186,21,139,87,158,97,163,108,8,247,9,251,42,5
,148,128,154,131,155,139,167,139,161,162,139,167,139,150,135,150,133,148,8,251,9,247,41,5,127,155,129,160,139,165,8,247,84,7,139
,165,149,160,151,155,8,247,9,247,41,5,145,148,143,150,139,151,139,166,117,162,111,139,123,139,124,131,130,128,8,251,9,251,42,5,115
,108,120,97,139,87,8,14,160,118,249,160,119,1,247,253,240,3,247,104,190,21,111,161,116,167,30,155,139,154,147,148,150,8,247,9,247
,42,5,163,170,158,181,139,191,8,247,84,7,139,191,120,181,115,170,8,251,9,247,42,5,130,150,124,147,123,139,111,139,117,116,139,112
,139,127,143,128,145,130,8,247,9,251,41,5,151,123,149,118,139,113,8,251,84,7,139,113,129,118,127,123,8,251,9,251,41,5,133,130,135
,128,139,128,8,14,247,203,240,3,247,5,247,112,21,111,161,117,167,30,152,139,150,143,148,147,8,247,7,237,139,251,37,5,111,162,117
,167,166,162,161,167,30,139,247,37,247,7,41,5,148,131,150,135,152,139,167,139,162,161,139,167,139,155,132,152,128,149,8,251,45,247
,23,247,45,247,23,5,150,149,146,152,139,155,139,167,116,161,111,139,126,139,128,135,130,131,8,251,7,41,139,247,37,5,167,116,161,
112,111,116,117,111,30,139,251,37,251,7,237,5,130,147,128,143,126,139,111,139,117,117,139,111,139,123,145,126,150,129,8,247,45,251
,23,251,45,251,23,5,128,129,133,126,139,123,8,14,247,232,240,1,247,203,240,3,247,5,248,26,21,111,161,117,167,30,247,40,251,40,6,
111,162,116,167,166,162,162,167,30,247,40,247,40,7,167,162,161,167,167,116,162,111,31,251,40,247,40,6,166,116,162,112,111,116,116
,112,30,251,40,251,40,7,111,117,116,111,31,14,160,118,247,147,240,18,247,104,247,191,38,240,19,224,247,104,247,197,21,111,161,117
,167,30,19,208,247,40,251,96,6,111,162,116,167,167,161,162,167,30,19,224,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31
,14,247,189,247,36,1,247,5,247,240,21,111,161,116,167,30,248,33,6,167,162,162,167,31,181,7,167,116,162,111,30,252,33,6,111,117,116
,111,31,14,247,19,247,78,1,247,153,247,93,3,247,153,247,70,21,32,10,14,160,118,249,160,119,1,247,5,190,21,111,161,116,167,30,158
,139,155,149,148,154,8,248,33,249,59,5,143,147,142,147,139,149,139,166,116,162,111,139,120,139,123,129,130,124,8,252,33,253,59,5
,135,131,137,131,139,130,8,14,139,240,248,214,240,1,247,5,240,247,188,240,3,247,5,240,21,84,185,93,194,30,247,188,6,193,186,186,
193,31,248,214,7,193,92,186,85,30,251,188,6,84,93,93,84,31,240,252,214,21,248,214,247,188,252,214,7,14,139,240,248,214,240,18,247
,5,247,191,38,240,237,240,19,232,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,247,146,7,167,116,162,111,111,117,116
,111,30,251,96,7,19,216,41,249,59,251,141,6,19,232,111,117,116,112,111,161,116,167,31,19,216,247,40,252,214,251,40,6,111,117,116
,112,31,14,139,240,247,131,239,247,131,240,1,247,5,240,247,188,240,3,20,224,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31
,251,238,247,131,247,188,6,193,186,185,193,31,247,131,7,193,92,186,85,30,251,239,6,111,117,116,112,111,161,116,167,31,247,239,251
,131,251,188,6,84,93,94,84,31,14,139,240,247,131,240,247,130,240,1,248,146,240,3,20,224,247,5,190,21,111,161,116,167,30,247,239,
6,193,186,186,193,31,247,80,7,139,177,124,175,114,166,164,166,154,174,139,178,8,247,80,7,193,92,186,85,30,251,239,6,111,117,116,
112,111,161,116,167,31,247,239,251,80,6,112,116,116,111,30,251,89,6,111,117,116,111,111,161,117,167,31,247,89,6,166,163,115,112,
31,251,80,251,239,7,111,117,116,112,31,14,160,118,247,147,240,248,60,119,1,247,29,240,247,89,240,3,247,29,247,147,21,247,190,251
,96,6,111,162,116,167,166,162,162,167,30,247,96,7,167,161,161,167,167,117,162,111,31,247,181,7,167,116,161,112,111,116,117,111,30
,251,181,251,89,248,10,7,166,117,162,111,111,116,116,112,30,14,139,240,84,236,247,89,240,247,130,240,18,247,104,240,247,89,240,20
,176,19,124,247,5,232,21,139,118,151,121,157,131,8,19,188,181,121,181,111,195,139,8,247,119,6,193,186,186,193,31,247,131,7,193,92
,186,85,30,251,89,247,130,247,139,6,167,162,162,167,166,116,162,111,31,251,240,252,76,247,190,251,131,251,129,6,49,177,5,19,124,
133,142,132,140,132,139,8,111,117,117,111,31,14,139,240,247,46,240,247,215,240,18,247,5,247,42,251,42,239,247,189,240,19,236,247
,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,247,146,7,167,116,162,111,30,251,239,247,215,6,19,244,167,161,162,167,31
,19,236,166,117,162,111,30,89,6,19,244,111,117,116,112,31,19,236,239,253,9,21,247,46,247,189,251,46,7,14,160,118,249,59,240,1,247
,203,240,237,240,3,247,5,249,67,21,111,161,117,167,30,164,139,160,157,143,163,8,247,189,251,73,6,251,73,251,46,5,128,129,132,125
,139,124,8,251,146,7,111,162,116,167,166,162,162,167,30,139,247,123,247,73,247,46,5,150,149,146,153,139,154,8,247,197,252,84,7,111
,117,116,112,31,14,139,240,247,131,240,247,130,240,18,247,5,239,139,239,236,239,139,240,19,240,247,5,240,21,19,234,84,185,93,193
,30,247,189,6,193,186,186,193,31,247,131,7,19,228,193,92,186,85,30,19,234,247,181,7,166,118,162,111,30,251,91,6,111,118,116,112,
31,251,181,7,19,240,84,94,92,85,31,239,251,131,21,247,131,7,19,242,247,189,251,131,6,19,236,251,89,247,232,21,247,130,236,251,130
,7,14,139,240,247,215,240,247,46,240,18,247,5,239,247,139,247,43,38,240,19,244,247,5,248,111,21,111,161,116,167,30,247,239,251,215
,6,19,248,111,117,116,112,31,19,244,111,161,116,167,30,189,6,19,248,167,162,162,167,31,19,244,249,59,7,166,116,162,111,30,252,33
,6,111,117,116,112,31,239,251,97,21,247,46,247,189,251,46,7,14,247,19,247,78,247,46,247,78,1,247,153,247,93,3,247,153,247,70,21,
32,10,247,146,4,111,162,117,167,30,238,6,167,162,161,167,31,224,7,167,116,162,111,30,40,6,111,116,116,111,31,14,160,118,247,147,
240,247,45,247,78,18,247,104,247,92,137,240,19,240,247,104,247,197,21,111,161,117,167,30,19,232,247,40,251,96,6,111,162,116,167,
167,161,162,167,30,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31,19,240,247,147,4,111,161,116,167,30,239,6,166,162,162
,167,31,224,7,167,116,161,112,30,39,6,111,117,117,111,31,14,247,5,248,4,21,139,120,149,124,153,130,8,248,33,251,125,5,147,134,148
,137,148,139,167,139,162,161,139,167,139,158,128,155,125,148,8,251,251,247,103,247,251,247,103,5,153,148,150,155,139,158,139,167
,116,161,111,139,130,139,130,137,131,134,8,252,33,251,125,5,125,130,129,123,139,120,8,14,247,147,240,247,3,240,1,247,5,247,197,21
,33,10,247,104,4,33,10,14,247,5,247,27,21,111,161,117,167,30,148,139,148,141,147,144,8,248,38,247,128,5,152,147,146,155,139,156,
8,181,7,139,158,128,155,125,148,8,252,33,247,125,5,131,144,130,141,130,139,111,139,117,117,139,111,139,120,149,123,153,130,8,247
,252,251,103,251,252,251,103,5,125,130,129,123,139,120,8,14,139,240,249,59,119,1,247,104,240,3,247,5,248,111,21,111,161,116,167,
30,152,139,150,144,148,146,8,247,157,247,119,188,97,139,101,251,173,251,131,5,128,130,133,124,139,124,8,54,7,111,161,117,167,167
,162,161,167,30,139,201,247,172,247,131,5,150,149,146,152,139,155,8,224,7,139,154,132,153,128,148,8,40,224,5,130,146,127,144,127
,139,126,139,128,134,130,12,37,251,190,251,147,5,128,130,133,125,139,124,8,238,252,60,21,111,161,116,167,167,162,162,167,166,116
,162,111,111,117,116,112,30,14,139,240,247,173,240,247,88,240,1,247,5,240,236,240,237,240,3,20,224,20,28,247,5,247,42,21,57,206,
71,221,30,177,139,174,154,166,163,165,115,174,124,177,139,8,220,208,207,221,31,248,88,7,235,58,221,42,30,251,35,6,93,139,96,120,
105,108,118,120,106,109,139,103,139,111,161,116,167,139,158,139,157,150,147,155,153,166,171,170,175,139,8,247,35,6,181,174,104,97
,31,252,88,7,113,117,116,112,112,117,161,166,30,247,174,7,167,116,162,112,30,39,6,57,72,71,57,31,240,251,75,21,247,75,7,166,160,
161,166,30,188,251,124,6,112,117,117,112,112,118,161,166,30,14,160,118,247,62,240,248,145,119,1,247,2,190,21,111,163,116,167,30,
162,139,159,154,145,160,8,178,247,26,247,115,139,178,251,26,5,145,118,158,124,162,139,8,167,163,162,167,31,251,94,249,73,5,133,160
,118,154,117,139,116,139,120,124,133,118,8,106,252,109,21,220,247,170,221,251,170,5,14,139,240,247,131,240,247,130,240,1,247,5,240
,247,188,240,3,247,5,22,247,188,6,247,2,231,232,247,1,31,176,7,139,198,111,194,97,176,181,176,167,194,139,198,8,176,7,247,1,47,232
,251,2,30,251,188,6,240,253,59,21,247,131,247,87,7,193,186,92,85,31,102,7,85,92,92,85,30,251,87,247,232,21,247,130,247,87,7,193,
186,92,85,31,102,7,85,92,93,85,30,14,139,240,248,214,240,1,247,5,240,3,247,5,248,26,21,139,98,149,107,153,109,171,69,174,73,174,
72,162,94,189,100,201,139,8,247,78,6,167,162,162,167,166,116,162,111,31,251,78,6,119,139,122,152,132,154,8,36,247,95,5,131,156,134
,157,139,162,139,162,144,157,156,12,37,242,247,95,5,146,154,156,152,159,139,8,247,78,6,167,162,162,167,166,116,162,111,31,251,78
,6,77,139,86,102,118,93,8,38,251,96,5,125,110,129,106,139,98,8,14,139,240,248,214,240,1,247,104,240,247,89,240,3,247,5,190,21,111
,161,116,167,30,247,78,6,201,139,192,176,160,185,8,240,247,96,5,153,168,150,173,139,179,139,179,128,173,125,168,8,37,247,95,5,116
,184,89,178,77,139,8,251,78,6,111,117,116,112,111,161,116,167,31,188,252,214,90,6,111,117,116,112,31,247,92,189,21,248,214,175,7
,159,139,156,126,146,124,8,242,251,95,5,147,123,145,119,139,117,139,117,132,120,122,12,37,36,251,95,5,132,124,122,126,119,139,8,
14,139,240,247,131,240,247,130,240,1,247,5,240,3,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31,251,238,247,131,247,40,6,166
,162,161,167,167,116,162,112,31,251,40,247,130,247,238,6,167,162,162,167,166,116,162,111,31,252,83,6,14,160,118,248,60,240,247,46
,240,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,248,9,247,139,7,167,161,162,167,167,117,161,111,31,251,139,247
,46,247,238,6,167,162,162,167,166,116,162,111,31,252,83,6,14,139,240,247,46,240,247,215,240,18,247,5,240,247,39,247,142,38,240,19
,244,247,5,247,44,21,56,206,70,223,30,247,87,6,222,208,208,222,31,247,96,251,92,7,19,248,111,117,116,111,111,161,117,167,31,19,244
,238,36,6,111,115,116,112,30,251,87,6,112,116,162,167,31,247,163,7,139,165,148,159,151,155,8,247,28,247,66,5,147,150,153,148,157
,139,8,247,41,6,167,162,162,167,166,116,162,111,31,251,41,6,86,139,97,113,114,107,8,251,28,251,68,5,115,108,121,99,139,87,8,14,160
,118,247,232,240,247,231,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,247,181,247,188,251,181,7
,111,161,116,167,167,162,162,167,30,249,59,7,166,116,162,111,111,117,116,112,30,251,181,251,188,247,181,7,166,116,162,111,111,117
,116,112,30,14,139,240,248,214,240,1,247,203,240,3,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251
,40,248,214,247,40,6,167,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,111,161,116,167,31,247,40,252,214,251,40,6,111,
117,116,112,31,14,139,240,249,59,119,1,247,54,240,247,89,240,3,247,54,247,43,21,56,208,71,222,30,234,6,222,208,208,221,31,248,215
,7,166,116,162,111,111,117,116,112,30,252,215,7,112,116,116,111,30,44,6,111,116,161,167,31,247,46,7,167,117,162,111,111,116,116,
111,30,14,160,118,249,160,119,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,121,247,205,251,160,5,148,132
,150,134,152,139,167,139,162,162,139,167,139,154,132,153,128,148,8,251,244,247,193,247,244,247,193,5,150,148,146,153,139,155,139
,166,116,162,111,139,126,139,128,134,130,132,8,251,205,251,160,139,247,122,5,166,116,162,111,111,117,116,112,30,14,139,240,249,59
,119,1,247,5,240,3,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31,251,238,249,9,6,166,116,162,111,111,117,116,112,30,14,160
,118,249,160,119,1,247,5,240,236,240,237,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,248,224,236,251,30,139,113,5,
111,162,116,167,166,162,162,167,30,139,165,237,247,32,139,252,226,5,111,161,116,167,167,162,162,167,30,249,109,251,19,7,251,14,251
,67,251,15,247,67,251,18,139,5,14,160,118,249,160,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,
139,248,185,247,155,252,236,247,26,139,139,249,110,5,166,116,162,111,111,117,116,112,30,139,252,188,251,156,248,238,251,25,139,5
,14,139,240,248,214,240,1,247,5,240,247,188,240,3,247,5,248,26,21,139,98,148,106,154,110,8,246,251,107,5,159,101,182,105,193,139
,194,139,182,173,159,177,8,246,247,107,5,153,168,150,173,139,179,139,179,128,173,125,168,8,32,247,107,5,119,177,96,173,84,139,85
,139,96,105,119,101,8,32,251,107,5,125,110,129,106,139,98,8,247,6,197,21,247,0,247,105,5,144,149,148,147,151,139,151,139,150,130
,143,12,37,247,0,251,105,5,147,123,145,119,139,117,139,117,132,120,122,12,37,32,251,107,5,134,129,130,133,125,139,127,139,129,147
,135,148,8,251,0,247,106,5,131,156,134,157,139,162,139,162,144,157,156,12,37,14,160,118,247,189,240,247,173,240,1,247,5,240,247,
188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,247,138,247,137,7,222,208,208,222,31,247,72,7,221,70,208,56,30,251,238
,6,240,252,18,21,247,173,247,137,7,165,164,116,112,31,251,72,7,111,115,116,112,30,14,139,240,249,59,119,1,247,5,240,236,247,13,217
,240,3,247,5,247,15,21,72,194,83,206,30,172,139,166,152,158,156,8,214,203,176,45,247,26,139,5,167,162,162,167,166,116,162,111,31
,74,139,115,200,5,201,191,217,189,139,247,3,8,247,174,7,206,82,195,72,30,107,139,110,126,121,122,8,251,117,251,82,5,100,105,108,
85,139,72,8,240,251,174,21,247,174,7,139,174,154,165,158,156,8,247,124,247,87,146,139,5,152,149,130,127,31,251,174,7,139,80,93,113
,107,111,126,173,127,199,94,139,111,139,116,116,139,111,139,133,140,132,141,134,8,176,45,251,0,47,131,139,5,126,131,148,152,31,14
,160,118,248,60,240,247,46,240,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,248,9,208,7,247,125,252
,35,5,148,124,155,129,158,139,167,139,162,162,139,167,139,148,136,147,135,147,8,251,95,247,240,197,139,5,221,209,209,221,31,191,
7,222,70,208,56,30,251,238,6,240,251,147,21,247,46,247,137,7,166,163,116,111,31,87,7,112,115,115,112,30,14,139,240,248,214,240,1
,247,5,240,247,188,240,3,247,5,247,27,21,65,201,78,212,30,247,141,6,203,139,187,192,141,200,139,167,128,164,125,156,8,252,8,248,
114,139,143,139,142,5,146,146,142,144,30,247,141,6,157,156,123,121,111,161,116,167,167,162,162,167,213,76,200,66,31,251,141,6,78
,87,88,79,31,136,7,139,111,149,115,152,121,8,248,10,252,118,5,131,132,134,133,30,251,141,6,120,124,154,158,167,116,162,111,111,117
,116,111,31,14,160,118,248,230,247,78,38,240,18,247,5,240,236,240,237,240,19,220,247,5,249,25,21,111,161,116,167,167,162,162,167
,30,19,188,173,236,253,8,7,111,162,116,167,166,162,162,167,30,249,8,237,105,7,19,220,111,161,116,167,167,162,162,167,30,19,188,247
,27,252,134,7,14,139,240,249,59,119,1,247,5,240,247,188,240,3,247,5,247,43,21,57,207,70,222,30,247,87,6,222,208,208,221,31,248,215
,7,166,116,162,111,111,117,116,112,30,252,215,7,112,114,116,113,30,251,87,6,112,116,161,167,31,248,215,7,166,116,162,111,111,117
,116,112,30,14,160,118,249,160,119,1,247,5,240,247,188,240,3,247,5,248,185,21,247,93,252,153,5,147,120,157,126,161,139,160,139,157
,152,147,158,8,247,94,248,154,139,247,72,5,166,116,162,111,111,117,116,112,30,139,251,53,251,40,252,14,251,40,248,14,139,247,53,
5,166,116,162,111,111,117,116,112,30,14,139,240,249,59,119,1,247,5,240,236,240,237,240,3,247,5,247,14,21,195,42,5,148,124,156,129
,158,139,8,236,6,164,139,154,156,150,157,149,120,155,123,163,139,8,237,6,158,139,155,149,148,154,8,196,236,139,248,244,5,166,116
,162,111,111,117,116,112,30,139,252,217,110,91,98,139,5,131,153,130,159,128,156,8,247,215,7,167,116,161,112,111,116,117,111,30,251
,215,7,128,122,130,119,131,125,8,98,139,111,187,139,248,217,5,166,116,162,111,111,117,116,112,30,14,160,118,249,160,119,1,247,5,
190,21,111,161,116,167,30,158,139,155,149,148,154,8,247,47,247,156,247,46,251,156,5,148,124,155,129,158,139,167,139,162,162,139,
167,139,148,136,147,135,147,8,251,76,247,206,247,76,247,206,5,143,147,142,147,139,149,139,166,116,162,111,139,120,139,123,129,130
,124,8,251,46,251,156,251,47,247,156,5,130,154,123,149,120,139,111,139,117,116,139,112,139,129,141,131,143,131,8,247,76,251,206,
251,76,251,206,5,135,131,137,131,139,130,8,14,160,118,249,160,119,1,247,5,240,236,240,236,241,3,247,5,249,7,21,247,90,251,146,139
,251,214,5,111,162,116,167,166,162,162,167,30,139,247,214,247,91,247,146,139,242,5,166,116,162,111,111,116,116,112,30,139,71,251
,39,251,82,251,40,247,82,139,207,5,166,116,162,111,111,117,116,112,30,14,139,240,248,214,240,1,247,4,203,21,140,75,248,83,139,5,
167,162,162,167,166,116,162,111,31,251,201,139,247,252,248,251,139,203,252,84,139,5,111,117,116,112,111,161,116,167,31,247,201,6
,14,139,240,248,214,240,1,247,5,239,187,240,3,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,90
,248,214,247,90,6,167,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,31,239,253,9,21,248,214,187,252,214,7,14,160,118,249
,160,119,1,247,5,249,110,21,139,129,141,131,143,131,8,248,33,253,59,5,148,124,155,129,158,139,167,139,162,162,139,167,139,148,136
,147,135,147,8,252,33,249,59,5,130,154,123,149,120,139,111,139,117,116,139,112,8,14,139,240,248,214,240,1,247,253,240,187,240,3,
247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,249,59,7,166,116,162,111,30,252,33,6,111,117,116,112,111,161,116,167
,31,247,90,252,214,251,90,6,111,117,116,112,31,247,241,189,21,248,214,187,252,214,7,14,247,4,247,82,21,140,127,5,111,161,116,167
,30,157,139,154,148,147,151,8,247,50,247,128,247,49,251,128,5,147,127,154,130,157,139,167,139,162,162,139,167,139,146,137,146,136
,146,8,251,92,248,20,5,131,155,122,150,120,139,119,139,122,128,131,123,8,14,38,240,1,247,5,89,21,111,161,116,167,30,248,33,6,167
,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,31,14,249,160,119,1,247,54,249,110,21,139,123,146,125,150,130,8,247,190
,251,147,5,147,133,149,133,153,139,167,139,162,162,139,167,139,148,137,147,135,146,8,251,95,247,154,5,130,151,124,146,123,139,8,
40,6,111,116,116,112,31,14,139,240,247,46,240,247,3,240,18,247,5,240,247,177,238,45,246,19,244,247,5,247,42,21,57,206,71,221,30,
247,41,6,148,139,148,141,146,144,8,213,182,5,112,161,116,166,167,163,161,167,30,19,248,126,248,9,5,136,218,74,205,57,139,8,251,78
,6,111,117,116,111,111,161,117,167,31,247,78,6,195,139,132,76,141,84,125,144,124,141,124,139,8,251,85,6,57,72,71,57,31,240,83,21
,195,7,165,161,162,165,30,247,85,6,19,244,163,164,116,115,31,139,95,32,76,251,27,139,5,112,118,161,166,31,14,139,240,248,2,240,247
,104,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,154,7,174,107,177,105,201,139,8,214,6,180,139
,172,155,162,159,180,175,188,173,139,214,8,247,98,7,139,189,115,178,110,164,104,169,104,176,75,139,8,64,6,80,139,98,108,104,106,
8,247,118,7,166,116,162,111,111,117,116,112,30,240,252,142,21,247,12,7,139,155,145,153,150,146,8,225,213,5,146,146,150,144,153,139
,8,214,6,157,139,151,130,150,129,155,123,168,124,139,109,8,251,98,7,139,123,131,126,129,131,121,124,120,111,108,139,8,64,6,125,139
,128,144,132,146,8,53,213,5,129,147,132,151,139,156,8,14,139,240,248,2,240,1,247,5,240,3,247,5,247,116,21,139,88,162,101,168,114
,8,225,65,5,163,118,171,124,181,139,8,247,103,6,167,162,162,167,166,116,162,111,31,251,103,6,125,139,128,144,132,146,8,53,212,5,
129,148,132,151,139,156,8,247,12,7,139,155,145,153,150,146,8,225,213,5,146,146,150,144,153,139,8,247,103,6,167,162,161,167,167,116
,162,111,31,251,103,6,51,139,93,70,89,98,110,114,116,101,139,88,8,14,139,240,248,2,240,247,104,119,1,247,5,240,247,188,240,3,247
,5,247,73,21,139,88,161,101,169,114,174,108,173,103,204,139,8,214,6,203,139,176,173,174,172,8,123,7,111,161,116,167,167,162,162,
167,30,249,59,7,166,116,162,111,111,117,116,112,30,251,123,7,103,170,105,177,73,139,8,64,6,98,139,106,123,116,119,97,104,92,105,
139,63,8,240,251,98,21,34,10,14,139,240,247,3,240,247,46,240,1,247,5,240,247,188,240,3,247,5,247,73,21,139,88,161,101,169,114,174
,108,173,103,204,139,8,247,153,6,167,162,162,167,166,116,162,111,31,251,153,6,125,139,130,144,130,146,120,156,105,155,139,174,8,
170,247,238,7,167,162,162,167,31,247,16,7,139,190,115,177,110,164,104,170,104,175,75,139,8,251,17,6,98,139,106,123,116,119,97,104
,92,104,139,64,8,240,65,21,213,7,139,156,146,151,149,147,157,154,158,167,170,139,8,247,17,6,173,191,95,103,31,65,7,14,160,118,248
,103,240,247,3,240,1,247,128,240,3,247,29,248,153,21,111,161,117,167,30,188,252,52,6,111,162,116,167,167,161,162,167,30,248,52,238
,7,166,162,161,167,167,116,162,112,31,40,173,6,181,173,174,182,30,247,13,6,167,161,162,167,166,117,162,111,31,251,13,6,41,59,60,
40,31,105,90,7,111,117,116,111,31,14,251,104,240,247,45,240,247,216,240,1,247,5,239,247,189,240,3,247,5,247,116,21,139,88,162,101
,168,114,174,109,174,101,203,139,8,214,6,201,139,178,174,174,172,8,251,33,7,139,124,131,125,129,131,121,125,120,110,108,139,8,251
,103,6,111,116,116,111,111,162,117,167,31,247,103,6,180,139,172,155,162,159,180,175,188,173,139,214,8,248,184,7,167,116,162,111,
111,117,116,111,30,121,7,103,170,105,177,73,139,8,64,6,98,139,106,123,116,119,97,104,92,106,139,62,8,239,251,55,21,247,55,7,139,
156,147,150,149,149,159,153,154,167,172,139,8,214,6,153,139,150,134,146,132,8,225,65,5,148,131,148,125,139,124,8,61,7,139,123,131
,126,129,131,8,53,65,5,132,132,128,134,125,139,8,64,6,104,88,184,175,31,14,160,118,248,103,240,247,104,119,1,247,5,240,247,188,239
,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,203,247,55,244,210,139,5,166,139,159,117,141,114,8,152,252,7,5,112,162
,117,166,167,161,162,167,30,127,248,8,5,136,218,74,205,57,139,8,82,6,106,139,113,129,117,125,8,43,78,139,247,139,5,166,116,162,111
,111,117,116,112,30,14,139,240,248,2,240,247,3,247,35,18,247,54,247,142,251,43,247,43,39,239,19,240,247,54,190,21,35,10,19,228,41
,6,19,240,248,52,7,167,116,162,112,30,251,41,6,111,116,116,111,111,162,117,167,31,19,228,238,252,2,40,6,111,116,116,112,31,19,232
,238,249,59,21,19,228,111,162,116,167,30,189,6,19,232,166,162,162,167,31,181,7,167,116,161,112,30,19,228,89,6,19,232,111,116,117
,111,31,14,251,104,240,248,214,240,247,3,247,35,18,247,153,247,192,251,43,247,43,39,239,19,232,247,54,62,21,131,7,150,70,202,81,
215,139,8,237,6,19,228,222,207,206,222,31,19,240,248,215,7,167,116,162,111,30,251,90,6,111,116,116,111,111,162,117,167,31,19,228
,247,41,252,165,6,19,232,112,115,117,112,30,41,6,77,139,162,224,79,139,8,111,116,116,111,31,247,140,249,187,21,19,228,111,162,116
,167,30,188,6,19,232,167,162,162,167,31,181,7,167,116,161,111,30,19,228,90,6,19,232,111,116,117,111,31,14,160,118,248,204,119,247
,124,119,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,38,187,181,247,157,251,119,5,148,132,151,134,152,
139,167,139,161,162,139,167,139,154,132,153,128,148,8,251,145,247,108,247,95,247,66,5,150,148,146,153,139,154,139,167,116,162,111
,139,127,139,127,134,131,132,8,251,156,251,117,139,248,35,5,166,116,162,111,111,117,116,112,30,14,139,240,248,214,240,18,247,54,
247,142,38,240,19,224,247,54,190,21,35,10,19,208,41,6,19,224,249,9,7,166,116,162,112,30,251,41,6,111,116,116,112,111,162,116,167
,31,19,208,237,252,214,41,6,111,116,116,112,31,14,160,118,248,103,240,18,244,240,244,240,230,239,53,240,19,248,244,190,21,111,161
,116,167,167,162,162,167,30,139,247,243,214,204,147,139,5,153,147,131,125,31,252,30,7,111,162,116,167,166,162,162,167,30,139,247
,250,207,197,145,139,5,149,139,145,128,140,131,8,19,244,153,252,35,5,140,112,162,117,166,139,8,167,161,162,167,31,19,248,124,248
,37,5,137,203,82,188,78,139,114,139,112,131,116,120,8,117,121,5,117,168,103,158,100,139,102,139,111,122,118,121,133,159,119,154,
117,139,8,111,117,116,111,31,14,160,118,248,103,240,1,247,5,240,247,188,239,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139
,247,203,247,55,244,210,139,5,166,139,159,117,141,114,8,152,252,7,5,112,162,117,166,167,161,162,167,30,127,248,8,5,136,218,74,205
,57,139,8,82,6,106,139,113,129,117,125,8,43,78,139,173,5,167,116,162,111,111,117,116,111,30,14,139,240,248,2,240,1,247,5,240,247
,188,240,3,247,5,247,73,21,139,89,161,100,169,114,175,109,172,102,204,139,8,247,17,6,180,139,172,155,162,159,180,175,188,173,139
,214,8,247,98,7,139,189,115,178,110,164,104,169,104,176,75,139,8,251,17,6,98,139,106,123,116,119,97,104,92,104,139,64,8,240,251,
98,21,247,98,7,139,156,146,151,149,147,157,154,158,167,170,139,8,247,17,6,173,191,95,103,31,251,98,7,139,123,131,126,129,131,121
,124,120,111,108,139,8,251,17,6,125,139,130,144,130,146,120,156,105,155,139,174,8,14,251,83,118,247,83,240,248,44,240,1,247,5,240
,247,188,240,3,247,5,251,54,21,111,161,117,167,167,162,161,167,30,247,108,7,173,102,178,101,205,139,8,160,6,181,139,171,154,163,
160,8,225,213,5,168,164,163,179,139,188,8,247,53,7,139,220,82,175,95,179,104,171,101,175,76,139,8,118,6,70,139,105,98,103,103,8,
166,7,166,116,162,111,111,117,116,112,30,240,251,212,21,247,22,7,139,154,144,151,148,146,8,229,230,5,147,147,152,145,153,139,8,160
,6,151,139,153,133,145,133,8,226,64,5,148,132,147,124,139,124,8,251,53,7,139,124,131,124,130,132,8,52,65,5,132,132,128,134,125,139
,8,118,6,122,139,130]);fileData0.push.apply(fileData0,[144,130,148,118,158,120,160,119,159,122,156,112,154,139,172,8,14,251,83,118
,247,104,240,248,2,240,1,247,5,240,247,188,240,3,247,5,247,73,21,139,88,161,101,169,114,174,108,173,103,204,139,8,214,6,203,139,
176,173,174,172,8,251,121,7,111,161,117,167,167,162,161,167,30,249,59,7,167,116,162,111,111,117,116,111,30,121,7,103,170,105,177
,73,139,8,64,6,98,139,106,123,116,119,97,104,92,105,139,63,8,240,251,98,21,34,10,14,160,118,248,103,240,1,247,5,240,247,188,240,
3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,165,247,58,247,35,220,139,5,166,161,116,113,31,111,7,111,161,117,167,167
,162,161,167,30,167,7,221,70,207,58,30,40,6,129,139,128,137,131,133,8,251,11,37,139,198,5,167,116,162,111,111,117,116,111,30,14,
139,240,248,2,240,1,247,17,239,247,174,242,3,247,5,232,21,139,123,146,125,151,129,172,111,181,114,199,139,8,247,81,6,223,139,208
,207,140,223,8,141,7,139,204,95,193,92,160,8,251,170,247,12,5,128,143,134,149,139,149,8,153,149,154,157,30,247,106,6,176,139,148
,96,175,139,167,139,162,162,139,167,139,150,135,150,133,147,114,172,94,169,86,139,8,251,106,6,105,139,106,125,115,115,113,114,128
,108,139,108,139,88,169,89,185,119,8,247,169,251,12,5,159,130,148,120,139,120,8,112,122,112,105,30,251,95,6,132,139,127,147,132,
141,114,146,131,164,107,139,111,139,118,117,139,111,8,14,139,240,248,2,240,1,247,104,240,3,247,5,248,153,21,111,161,117,167,30,188
,251,209,6,58,207,70,220,30,239,6,214,139,201,198,152,207,8,147,7,167,116,162,111,30,78,139,162,54,78,139,8,39,6,113,117,161,166
,31,247,209,247,89,7,167,161,161,167,167,117,162,111,31,251,89,247,11,6,167,116,162,111,111,117,116,111,30,251,11,90,7,111,117,116
,111,31,14,139,240,248,103,119,1,247,5,239,247,189,240,3,247,5,248,153,21,151,252,9,5,141,61,206,73,220,139,8,196,6,172,139,165,
149,161,153,8,236,201,139,104,5,111,161,116,167,167,162,162,167,30,248,102,7,167,116,162,111,111,117,116,111,30,139,251,204,251,
56,35,68,139,5,112,139,119,160,137,165,8,126,248,7,5,166,116,161,112,111,117,116,111,30,14,160,118,248,204,119,1,247,5,240,247,188
,240,3,247,5,248,68,21,139,132,140,132,142,133,8,247,59,252,18,5,147,121,156,127,160,139,8,202,6,160,139,156,151,147,157,8,247,59
,248,18,5,142,145,141,146,139,146,8,224,7,167,116,162,111,111,117,116,111,30,139,65,251,41,251,231,251,39,247,231,139,213,5,167,
116,162,111,111,117,116,111,30,14,160,118,248,204,119,1,241,240,247,0,240,247,0,240,3,20,56,241,248,152,21,149,251,190,191,251,74
,5,145,118,159,124,162,139,8,188,6,158,139,155,149,148,154,8,195,234,194,44,5,148,124,155,129,158,139,8,188,6,162,139,159,154,145
,160,8,190,247,62,150,247,202,139,141,5,166,115,162,112,30,112,139,117,117,138,112,8,129,251,183,107,251,0,73,247,6,139,247,6,5,
166,116,162,112,111,116,116,112,30,139,251,6,73,251,6,107,247,0,129,247,183,5,138,166,117,161,112,139,8,111,116,115,111,31,14,160
,118,248,204,119,1,247,5,190,21,111,161,116,167,30,155,139,153,146,148,150,8,247,52,247,85,247,51,251,85,5,148,128,153,132,155,139
,167,139,162,162,139,167,139,151,135,150,132,148,8,251,65,247,100,247,53,247,86,5,146,148,144,150,139,151,139,167,116,162,111,139
,124,139,125,132,129,127,8,251,40,251,71,251,41,247,71,5,129,151,125,146,124,139,111,139,116,116,139,111,139,127,144,128,146,130
,8,247,53,251,86,251,65,251,100,5,132,130,136,128,139,127,8,14,251,104,240,249,59,119,1,247,5,240,247,187,241,3,247,5,251,54,21,
111,161,117,167,30,247,28,6,160,139,157,151,147,157,8,247,152,248,230,5,142,145,141,146,139,146,8,224,7,167,116,162,111,111,116,
116,111,30,139,65,251,24,251,192,107,139,251,23,247,192,139,213,5,167,116,162,111,111,117,116,111,30,54,7,139,132,140,132,142,133
,8,247,41,251,231,5,146,121,157,126,160,139,8,160,139,72,251,45,36,139,5,111,117,116,111,31,14,139,240,248,2,240,1,247,5,190,21,
111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,208,139,247,243,247,229,5,149,149,145,152,139,153,8,181,7,167
,116,162,111,30,252,9,6,111,117,116,111,111,161,117,167,31,247,185,139,251,244,251,230,5,129,130,134,126,139,125,8,14,139,240,247
,131,240,247,130,240,1,247,203,240,3,247,5,248,26,21,111,161,117,167,30,236,6,167,162,115,112,31,251,80,7,85,186,92,193,30,247,40
,6,167,162,162,167,166,116,162,111,31,251,40,247,80,6,139,178,124,174,115,166,163,166,154,174,139,178,8,247,80,247,40,7,167,162,
162,167,166,116,162,111,31,251,40,6,85,92,92,85,31,251,80,7,112,117,116,110,30,42,6,111,117,116,111,31,14,160,118,249,160,119,1,
247,203,240,3,247,203,190,21,111,162,116,167,166,162,162,167,30,247,181,38,7,240,4,240,247,181,6,166,116,162,112,111,116,116,112
,30,14,139,240,247,131,240,247,130,240,1,247,203,240,3,247,5,190,21,111,161,116,167,30,247,40,6,193,186,186,193,31,247,80,7,165,
161,164,167,30,237,6,167,162,161,167,167,116,162,111,31,41,6,111,117,162,166,31,247,80,7,193,92,186,85,30,251,40,6,111,117,116,112
,111,161,116,167,31,247,40,251,80,6,139,100,154,104,163,112,115,112,124,104,139,100,8,251,80,251,40,7,111,117,116,112,31,14,248,
62,238,247,45,240,1,247,5,240,236,240,237,240,3,20,56,247,5,248,153,21,111,161,117,167,167,162,161,167,30,247,3,7,166,160,162,166
,166,161,116,112,30,87,7,139,99,155,101,167,110,169,109,176,126,175,139,8,217,214,200,228,31,247,3,7,167,116,162,111,111,117,116
,111,30,251,3,7,113,117,114,112,112,117,164,165,30,191,7,139,180,123,177,111,167,109,169,103,153,103,139,8,62,63,77,50,31,14,226
,248,185,3,226,114,21,248,185,249,210,252,185,6,14,139,247,142,1,247,129,247,141,3,247,129,190,21,111,161,116,167,30,247,41,6,167
,161,162,167,31,247,40,7,167,117,162,111,30,251,41,6,111,117,116,111,31,14,160,118,249,160,119,1,247,104,240,3,247,5,248,111,21,
111,161,116,167,30,152,139,150,144,148,146,8,247,157,247,119,188,97,139,101,251,173,251,131,5,128,130,133,124,139,124,8,251,146,
7,111,161,116,167,167,162,162,167,30,139,247,123,247,172,247,131,5,150,149,146,152,139,155,8,224,7,139,154,132,153,128,148,8,40,
224,5,130,146,127,144,127,139,126,139,128,134,130,12,37,251,190,251,147,5,128,130,133,125,139,124,8,14,139,240,247,131,240,247,130
,240,1,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,122,139,209,247,131,247,52,139,5,167,162,
161,167,167,116,162,111,31,251,23,139,198,247,94,5,145,158,158,156,162,139,8,163,6,167,162,162,167,166,116,162,111,31,115,6,67,139
,83,87,122,82,8,72,251,122,251,53,139,5,111,117,116,111,111,161,117,167,31,247,23,139,70,251,131,77,139,5,111,117,116,112,31,14,
160,118,247,147,240,248,60,119,1,247,203,240,3,247,5,247,197,21,111,161,117,167,30,247,40,251,96,6,111,162,116,167,166,162,162,167
,30,247,96,247,40,7,167,162,161,167,167,116,162,111,31,251,40,160,6,247,84,247,219,5,143,147,142,147,139,149,139,166,116,162,111
,139,120,139,123,129,130,124,8,251,46,251,157,251,47,247,157,5,130,154,123,149,120,139,111,139,117,116,139,112,139,129,141,131,143
,131,8,247,84,251,219,139,118,251,40,139,5,111,117,116,111,31,14,249,160,119,1,247,201,243,3,247,151,249,110,21,190,251,148,5,139
,137,138,137,139,137,8,115,166,119,165,165,164,162,166,30,190,247,148,5,139,141,140,141,139,141,8,163,111,159,113,30,40,6,111,114
,116,112,31,14,160,118,247,104,247,36,1,247,253,247,42,3,247,104,247,155,21,111,161,116,167,30,238,251,53,6,111,161,116,167,30,189
,6,167,161,162,167,31,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31,14,247,232,240,1,247,5,248,26,21,33,10,14,139,240
,248,214,240,1,247,5,240,236,240,237,240,3,247,5,22,247,191,249,59,237,251,96,6,111,161,116,167,167,162,162,167,30,247,197,251,192
,253,59,42,247,96,7,167,116,162,111,111,117,116,111,30,14,160,118,247,232,240,247,231,119,1,247,5,240,247,188,240,3,247,5,190,21
,111,161,116,167,167,162,162,167,30,247,181,247,188,251,181,7,111,161,116,167,167,162,162,167,30,249,59,7,166,116,162,111,111,117
,116,112,30,251,181,252,33,7,14,160,118,247,232,240,247,231,119,1,247,5,240,236,240,237,240,3,247,5,247,232,21,247,90,251,181,6,
111,162,116,167,166,162,162,167,30,247,181,247,91,248,26,7,166,116,162,111,111,117,116,112,30,251,181,251,188,247,181,7,166,116,
162,111,111,117,116,112,30,14,160,118,247,19,240,248,2,247,78,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,30,160,139,
158,152,146,158,8,176,234,247,121,139,176,44,5,146,120,158,126,160,139,167,139,162,162,139,167,139,145,137,145,137,145,8,251,90,
248,145,5,131,158,120,152,118,139,117,139,122,126,131,120,8,251,90,252,145,5,137,133,138,133,139,133,8,248,230,4,36,10,247,65,252
,138,21,214,247,85,214,251,85,5,213,248,53,21,36,10,14,160,118,247,62,240,248,44,240,1,247,54,240,247,89,240,3,247,1,191,21,111,
164,115,167,30,162,139,159,154,145,160,8,179,247,26,247,114,139,178,251,26,5,145,118,159,124,162,139,8,167,163,162,167,31,251,27
,248,96,5,185,148,176,181,139,187,8,208,7,193,92,186,85,30,251,89,6,85,92,92,85,31,70,7,139,91,176,97,185,130,8,157,238,21,208,247
,89,70,7,251,71,251,231,21,209,247,130,161,139,209,251,130,5,14,139,240,208,240,208,240,247,130,240,18,247,253,247,142,251,142,240
,19,244,247,5,190,21,111,161,116,167,30,161,139,157,153,146,158,8,189,247,29,240,139,5,19,248,251,11,7,111,161,116,167,30,247,41
,6,167,162,162,167,166,116,162,111,31,19,244,41,247,131,237,6,19,248,167,162,161,167,167,116,162,111,31,19,244,41,247,130,237,6,
19,248,167,162,162,167,166,116,162,111,31,251,41,6,121,139,122,129,130,125,8,251,143,253,68,5,137,133,138,134,139,133,8,247,76,247
,112,21,19,244,203,247,67,139,251,67,5,14,160,118,249,16,247,36,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162
,167,30,139,247,188,247,201,251,223,5,148,129,152,133,154,139,8,167,162,162,167,31,248,60,7,167,116,161,111,111,117,117,111,30,139
,251,189,251,202,247,223,5,130,149,126,145,124,139,8,111,117,117,111,31,247,104,4,111,161,116,167,30,162,139,159,155,145,160,8,247
,240,102,142,139,5,166,160,163,166,31,182,7,166,116,162,111,30,116,139,119,123,134,118,8,251,241,176,135,139,5,113,119,115,113,31
,14,139,240,248,44,240,123,247,78,18,247,5,239,247,188,241,19,216,247,5,247,172,21,139,113,147,120,150,123,8,220,251,5,139,134,5
,172,95,169,82,214,139,8,160,6,229,139,176,225,178,196,8,192,215,5,150,155,148,159,139,164,8,189,7,139,165,130,158,128,155,8,57,
247,5,5,105,185,114,199,61,139,8,118,6,92,139,103,116,119,109,101,82,100,85,100,84,128,122,131,122,139,112,8,247,207,4,19,184,111
,161,116,167,167,161,162,167,30,224,7,166,117,162,111,111,117,116,112,30,239,252,89,21,139,192,247,10,247,61,5,19,216,143,144,147
,144,147,139,8,160,6,147,139,147,134,143,134,8,247,10,251,61,139,88,251,10,251,59,5,135,133,132,134,130,139,8,118,6,130,139,131,
144,136,145,8,247,70,248,169,21,19,184,111,162,116,167,167,162,162,167,30,224,7,166,116,162,111,111,116,116,112,30,14,139,240,248
,214,240,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,30,182,139,156,192,156,167,158,96,183,101,197,139,194,139,182,173
,159,177,8,246,247,107,5,153,168,150,173,139,179,139,222,95,198,110,198,8,205,247,5,5,143,147,142,147,139,149,139,166,116,162,111
,139,96,139,122,86,122,111,120,182,95,177,80,139,85,139,96,105,119,101,8,32,251,107,5,125,110,129,106,139,98,139,54,182,83,168,79
,8,73,251,5,5,135,131,137,131,139,130,8,240,247,231,21,139,162,144,157,147,156,8,247,0,247,105,5,144,149,148,147,151,139,151,139
,150,130,143,12,37,173,72,251,68,251,192,5,125,167,121,166,139,180,8,226,251,96,21,247,68,247,192,5,153,112,158,109,139,100,139,
117,132,120,132,122,8,251,0,251,106,5,134,129,131,132,125,139,127,139,129,147,135,12,37,14,139,240,248,129,247,78,18,247,5,240,137
,240,236,239,139,240,19,228,247,5,247,44,21,56,206,70,223,30,247,87,6,222,208,208,222,31,248,44,7,167,116,161,111,111,117,117,111
,30,252,44,7,111,115,116,112,30,251,87,6,112,116,162,167,31,248,44,7,167,116,161,111,111,117,117,111,30,19,208,238,224,21,36,10,
19,200,247,90,54,21,111,162,116,167,167,160,162,167,30,224,7,166,118,162,111,111,116,116,112,30,14,247,203,240,3,247,203,38,21,240
,28,4,183,38,6,14,249,103,20,139,21,139,139,248,204,139,247,104,139,6,251,104,139,7,158,12,10,240,10,236,142,140,140,180,140,181
,203,12,12,240,11,236,143,189,189,188,188,247,142,12,13,139,12,14,28,0,52,19,0,5,1,1,28,54,125,143,164,111,162,116,167,30,238,6,
167,162,162,167,31,224,7,167,116,161,111,30,40,6,111,116,117,111,31,11,111,161,117,167,30,248,33,6,167,162,161,167,167,116,162,111
,31,252,33,6,111,117,116,111,31,11,247,98,7,139,157,147,150,149,148,158,154,155,166,171,139,8,214,6,153,139,150,134,146,132,8,225
,65,5,148,131,148,125,139,124,8,251,12,7,139,123,131,125,129,132,8,53,65,5,132,133,128,133,125,139,8,64,6,125,139,130,144,130,146
,120,156,105,155,139,174,8,11,111,162,116,167,30,247,189,6,167,162,162,167,166,116,162,111,31,11,111,161,116,167,167,162,162,167
,30,224,7,166,116,162,111,111,117,116,112,30,11,0,0,1,0,0,0,14,0,0,0,24,0,0,0,0,0,2,0,1,0,1,0,114,0,1,0,4,0,0,0,2,0,0,0,1,0,0,0,
10,0,68,0,162,0,2,68,70,76,84,0,14,108,97,116,110,0,36,0,4,0,0,0,0,255,255,0,6,0,0,0,1,0,2,0,3,0,4,0,5,0,4,0,0,0,0,255,255,0,6,0
,0,0,1,0,2,0,3,0,4,0,5,0,6,97,97,108,116,0,38,115,115,48,49,0,44,115,115,48,50,0,50,115,115,48,51,0,56,115,115,48,52,0,62,115,115
,48,53,0,68,0,0,0,1,0,0,0,30,0,1,0,1,0,28,0,1,0,2,0,26,0,1,0,3,0,24,0,1,0,4,0,22,0,1,0,5,0,0,1,0,0,0,1,1,0,0,1,2,0,0,1,3,0,0,1,4
,0,6,0,14,0,22,0,30,0,38,0,46,0,54,0,3,0,0,0,1,0,48,0,1,0,0,0,1,0,100,0,1,0,0,0,1,0,104,0,1,0,0,0,1,0,108,0,1,0,0,0,1,0,112,0,1,
0,0,0,1,0,116,0,1,0,46,0,5,0,16,0,22,0,28,0,34,0,40,0,2,0,8,0,101,0,2,0,13,0,102,0,2,0,14,0,103,0,2,0,15,0,97,0,2,0,32,0,98,0,1,
0,5,0,8,0,13,0,14,0,15,0,32,0,1,0,6,0,82,0,1,0,1,0,15,0,1,0,6,0,66,0,1,0,1,0,32,0,1,0,6,0,93,0,1,0,1,0,8,0,1,0,6,0,89,0,1,0,1,0,
13,0,1,0,6,0,89,0,1,0,1,0,14,0,1,0,0,0,10,0,44,0,46,0,2,68,70,76,84,0,14,108,97,116,110,0,24,0,4,0,0,0,0,255,255,0,0,0,4,0,0,0,0
,255,255,0,0,0,0,0,0,0,0,0,1,0,0,0,0,204,109,177,85,0,0,0,0,204,138,51,80,0,0,0,0,204,138,51,83,2,211,0,0,2,211,0,0,1,30,0,111,0
,113,0,113,0,113,0,113,1,5,1,5,0,212,0,113,0,113,0,212,0,113,1,5,0,113,0,113,0,113,0,113,0,113,0,137,0,113,0,113,0,113,0,113,0,113
,1,5,0,212,0,113,0,113,0,113,0,113,0,113,0,110,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,162,0,113,0,113,0,113,0,113,0,113
,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,112,0,113,0,113,0,113,0,112,0,113,0,162,0,113,0,113,0,113,0,113,0
,113,0,137,0,113,0,113,0,162,0,162,0,113,0,162,0,105,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,102,0,113,0,113,0,113
,0,113,1,55,0,113,0,113,0,87,0,237,0,113,0,113,0,113,1,3,0,212,0,113,0,113,0,113,0,113,0,113,0,109,0,113,0,113,0,113,0,113,0,113
,1,55,0,0]);Module["FS_createDataFile"]("/","OCRA.otf",fileData0,true,true);var fileData1=[];fileData1
.push.apply(fileData1,[79,84,84,79,0,13,0,128,0,3,0,80,67,70,70,32,129,193,239,92,0,0,6,176,0,0,60,213,70,70,84,77,108,79,91,201
,0,0,68,252,0,0,0,28,71,68,69,70,0,190,0,4,0,0,67,136,0,0,0,32,71,80,79,83,184,255,184,254,0,0,68,204,0,0,0,48,71,83,85,66,119,90
,101,154,0,0,67,168,0,0,1,36,79,83,47,50,90,188,142,61,0,0,1,64,0,0,0,96,99,109,97,112,83,222,211,245,0,0,4,28,0,0,2,114,104,101
,97,100,6,47,76,75,0,0,0,220,0,0,0,54,104,104,101,97,4,6,251,46,0,0,1,20,0,0,0,36,104,109,116,120,49,149,74,40,0,0,69,24,0,0,1,240
,109,97,120,112,0,145,80,0,0,0,1,56,0,0,0,6,110,97,109,101,174,145,152,55,0,0,1,160,0,0,2,121,112,111,115,116,0,3,0,0,0,0,6,144,
0,0,0,32,0,1,0,0,0,2,0,0,89,59,114,1,95,15,60,245,0,11,3,232,0,0,0,0,211,135,133,179,0,0,0,0,211,135,133,179,249,67,249,67,6,189
,6,189,0,0,0,8,0,2,0,0,0,0,0,0,0,1,0,0,3,170,254,176,0,90,2,211,249,67,249,67,6,189,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,103,0,0,80
,0,0,145,0,0,0,2,2,211,1,144,0,5,0,0,2,138,2,188,0,0,0,140,2,138,2,188,0,0,1,224,0,49,1,2,0,0,2,0,5,9,0,0,0,0,0,0,0,0,0,175,0,0,
0,104,0,0,0,0,0,0,0,0,80,102,69,100,0,64,0,32,43,88,3,32,255,56,0,90,3,170,1,80,0,0,0,1,0,0,0,0,2,22,2,189,0,32,0,32,0,1,0,0,0,14
,0,174,0,1,0,0,0,0,0,0,0,67,0,136,0,1,0,0,0,0,0,1,0,4,0,214,0,1,0,0,0,0,0,2,0,7,0,235,0,1,0,0,0,0,0,3,0,41,1,71,0,1,0,0,0,0,0,4,
0,13,1,141,0,1,0,0,0,0,0,5,0,10,1,177,0,1,0,0,0,0,0,6,0,4,1,198,0,3,0,1,4,9,0,0,0,134,0,0,0,3,0,1,4,9,0,1,0,8,0,204,0,3,0,1,4,9,
0,2,0,14,0,219,0,3,0,1,4,9,0,3,0,82,0,243,0,3,0,1,4,9,0,4,0,26,1,113,0,3,0,1,4,9,0,5,0,20,1,155,0,3,0,1,4,9,0,6,0,8,1,188,0,77,0
,97,0,116,0,116,0,104,0,101,0,119,0,32,0,83,0,107,0,97,0,108,0,97,0,32,0,40,0,50,0,48,0,49,0,49,0,41,0,59,0,32,0,98,0,97,0,115,0
,101,0,100,0,32,0,111,0,110,0,32,0,99,0,111,0,100,0,101,0,32,0,98,0,121,0,32,0,78,0,111,0,114,0,98,0,101,0,114,0,116,0,32,0,83,0
,99,0,104,0,119,0,97,0,114,0,122,0,32,0,40,0,49,0,57,0,56,0,54,0,44,0,32,0,50,0,48,0,49,0,49,0,41,0,0,77,97,116,116,104,101,119,
32,83,107,97,108,97,32,40,50,48,49,49,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,78,111,114,98,101,114
,116,32,83,99,104,119,97,114,122,32,40,49,57,56,54,44,32,50,48,49,49,41,0,0,79,0,67,0,82,0,66,0,0,79,67,82,66,0,0,82,0,101,0,103
,0,117,0,108,0,97,0,114,0,0,82,101,103,117,108,97,114,0,0,70,0,111,0,110,0,116,0,70,0,111,0,114,0,103,0,101,0,32,0,50,0,46,0,48,
0,32,0,58,0,32,0,79,0,67,0,82,0,32,0,66,0,32,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,32,0,58,0,32,0,50,0,55,0,45,0,57,0,45,0,50
,0,48,0,49,0,50,0,0,70,111,110,116,70,111,114,103,101,32,50,46,48,32,58,32,79,67,82,32,66,32,82,101,103,117,108,97,114,32,58,32,
50,55,45,57,45,50,48,49,50,0,0,79,0,67,0,82,0,32,0,66,0,32,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,0,79,67,82,32,66,32,82,101,
103,117,108,97,114,0,0,86,0,101,0,114,0,115,0,105,0,111,0,110,0,32,0,50,0,32,0,0,86,101,114,115,105,111,110,32,50,32,0,0,79,0,67
,0,82,0,66,0,0,79,67,82,66,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,28,0,1,0,0,0,0,1,108,0,3,0,1,0,0,0,28,0,4,1,80,0,0,0,80,0,64,0,5,0,16,0
,126,0,161,0,164,0,169,0,175,0,180,0,184,0,191,0,196,0,198,0,214,0,216,0,220,0,223,0,228,0,230,0,246,0,248,0,252,1,49,1,83,2,55,
2,199,2,217,2,220,3,147,3,152,3,155,3,158,3,160,3,163,3,166,3,168,33,38,33,145,33,147,34,6,43,34,43,88,255,255,0,0,0,32,0,161,0,
164,0,167,0,174,0,180,0,184,0,191,0,196,0,198,0,214,0,216,0,220,0,223,0,228,0,230,0,246,0,248,0,252,1,49,1,82,2,55,2,198,2,216,2
,220,3,147,3,152,3,155,3,158,3,160,3,163,3,165,3,168,33,38,33,145,33,147,34,6,43,34,43,88,255,255,255,225,255,191,255,189,255,187
,255,183,255,179,255,176,255,170,255,166,255,165,255,150,255,149,255,146,255,144,255,140,255,139,255,124,255,123,255,120,255,68,
255,36,254,65,253,179,253,163,253,161,252,235,252,231,252,229,252,227,252,226,252,224,252,223,252,222,223,97,222,247,222,246,222
,132,213,105,213,52,0,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,1,6,0,0,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,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,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,91,92,93,94,95,0,106,0,0,0,0,108,110,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,0,0,0,0,116,0,0,0,0,98,0,0,111,101,100,0
,103,99,0,107,109,0,0,0,0,0,0,0,0,0,0,0,0,0,0,113,115,105,96,0,0,0,0,138,0,0,0,0,0,0,0,118,119,0,0,0,0,0,0,0,0,0,0,0,0,0,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,121,125,102,123,124,0,104,0,0,122,0,0,0,3,0,0,0,0,0,0,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,4,4,0,1,1,1,5,79,67,82,66,0,1,2,0,1,0,54,248,47,0,248,48,1,248,49,2,248,50,3,248,51,4,139,12,3,139,12,4,28
,249,67,28,249,67,28,6,189,28,6,189,5,28,1,96,15,28,0,0,16,28,2,129,17,28,0,70,28,58,29,18,0,25,2,0,1,0,9,0,14,0,19,0,25,0,27,0,
29,0,34,0,41,0,44,0,47,0,50,0,57,0,66,0,71,0,78,0,85,0,100,0,109,0,121,0,128,0,133,0,200,0,213,0,217,0,223,100,111,116,108,101,115
,115,106,71,97,109,109,97,84,104,101,116,97,76,97,109,98,100,97,88,105,80,105,83,105,103,109,97,85,112,115,105,108,111,110,80,104
,105,80,115,105,79,104,109,97,114,114,111,119,117,112,97,114,114,111,119,100,111,119,110,68,101,108,116,97,117,110,105,50,66,50,
50,117,110,105,50,66,53,56,113,117,111,116,101,115,105,110,103,108,101,46,97,108,116,103,114,97,118,101,46,97,108,116,113,117,111
,116,101,100,98,108,46,97,108,116,98,97,114,46,97,108,116,50,46,48,48,48,77,97,116,116,104,101,119,32,83,107,97,108,97,32,40,50,
48,49,49,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,78,111,114,98,101,114,116,32,83,99,104,119,97,114,
122,32,40,49,57,56,54,44,32,50,48,49,49,41,79,67,82,32,66,32,82,101,103,117,108,97,114,79,67,82,66,78,111,114,109,97,108,0,0,0,0
,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,
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,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,94,0,95,0,96,0,103,0,102,0,131,0,170,0,165,0,128,0,125,0
,133,0,123,0,173,0,138,0,189,0,141,0,195,0,149,0,202,0,144,0,218,0,147,0,224,0,145,0,142,0,148,1,135,0,126,0,136,0,129,0,130,0,127
,1,136,1,137,1,138,1,139,1,140,1,141,1,142,1,143,1,144,1,145,1,146,1,147,1,148,1,149,1,150,1,151,1,152,1,153,1,154,0,145,2,0,1,0
,2,0,3,0,31,0,134,1,64,1,254,2,176,3,110,3,165,3,251,4,77,4,200,5,15,5,80,5,119,5,161,5,218,6,78,6,146,7,13,7,136,7,236,8,103,8,
208,9,37,9,176,10,36,10,87,10,169,10,245,11,55,11,131,12,3,12,205,13,33,13,167,14,30,14,116,14,191,14,254,15,163,15,235,16,47,16
,142,16,236,17,26,17,125,17,206,18,9,18,96,19,6,19,124,20,12,20,67,20,156,20,225,21,106,21,227,22,58,22,133,22,189,22,248,23,52,
23,60,23,101,23,162,24,29,24,164,25,33,25,166,26,21,26,116,27,26,27,118,27,165,28,14,28,114,28,183,29,47,29,127,29,152,30,22,30,
154,30,241,31,128,31,239,32,81,32,167,33,31,33,152,34,3,34,80,34,222,35,1,35,141,35,172,35,200,36,138,37,81,37,142,38,150,38,174
,38,209,39,13,39,94,39,222,40,102,40,217,41,86,42,19,42,173,43,64,43,208,44,172,44,233,45,146,46,7,46,38,46,203,47,89,47,163,47,
171,47,251,48,68,48,86,48,117,48,183,49,20,49,120,49,170,49,245,50,118,50,228,51,146,52,7,52,175,53,15,53,111,53,164,53,188,53,189
,53,224,54,29,54,90,54,118,14,14,66,247,38,18,247,182,247,38,251,15,239,19,192,247,182,116,21,32,10,19,160,162,247,198,21,33,10,
14,248,86,247,212,18,247,53,247,22,251,22,239,247,84,247,15,251,15,237,19,160,247,53,248,136,21,113,163,115,165,30,166,139,159,160
,142,161,8,168,247,119,5,19,192,139,141,140,140,139,141,8,162,115,161,112,30,110,6,112,116,116,112,31,19,136,247,184,251,112,21,
112,162,116,166,30,165,139,156,157,144,161,8,19,144,164,247,122,139,143,5,164,114,160,114,30,116,6,112,116,117,111,31,14,247,96,
239,247,49,239,247,104,119,1,247,242,238,195,238,3,247,5,247,146,21,139,113,159,118,164,136,8,102,251,59,5,112,163,116,165,30,163
,139,159,156,144,161,8,179,247,70,247,17,139,104,251,48,139,128,5,112,162,116,166,30,162,139,160,157,144,160,8,179,247,70,193,139
,5,166,162,162,166,166,117,162,111,31,108,139,174,247,49,155,139,5,166,162,162,166,31,139,164,120,160,115,143,8,173,247,43,139,150
,5,167,116,161,112,30,114,139,122,120,132,119,8,100,251,65,251,18,139,175,247,54,5,165,115,163,113,30,115,139,119,121,134,118,8,
100,251,65,84,139,5,111,117,117,111,111,162,117,166,31,172,139,103,251,49,122,139,5,111,117,117,111,31,247,61,189,21,175,247,49,
247,17,139,104,251,49,5,14,181,239,248,54,118,213,241,1,247,8,238,237,239,239,239,3,247,5,247,69,21,139,133,139,132,142,133,169,
64,211,106,234,131,8,137,7,111,162,117,166,166,162,162,166,30,141,7,247,1,155,230,205,139,247,2,139,247,14,41,178,37,170,8,247,79
,7,177,131,165,122,161,111,148,127,152,130,158,139,166,139,162,162,139,165,139,150,135,149,133,147,102,193,86,173,62,149,8,144,7
,166,116,162,112,112,116,117,111,30,134,7,33,127,48,85,139,251,2,139,251,13,238,102,237,111,8,251,103,7,113,141,114,143,120,149,
108,155,134,192,95,139,112,139,116,117,139,111,8,241,247,250,21,139,191,186,158,190,146,8,251,49,7,102,153,78,155,139,188,8,247,
90,252,26,21,247,72,7,188,122,190,113,139,91,139,86,92,113,86,129,8,14,126,239,228,239,247,100,239,228,239,18,247,7,237,199,236,
124,237,199,236,19,249,247,5,182,21,111,162,116,166,30,156,139,157,151,148,152,8,248,35,249,55,5,143,146,142,148,139,148,139,166
,116,162,112,139,126,139,125,135,129,129,8,252,42,253,65,5,134,132,137,130,139,130,8,141,248,218,21,68,180,69,226,30,19,253,224,
181,211,211,211,97,212,54,55,95,64,66,31,237,142,21,162,146,161,162,162,146,116,117,120,131,114,117,30,130,6,123,144,134,161,139
,156,8,19,251,247,34,252,136,21,68,180,69,226,224,181,212,211,211,97,211,54,30,55,95,64,66,31,237,142,21,162,145,161,163,162,146
,116,117,120,130,114,118,30,133,6,138,140,138,140,138,139,8,123,134,167,153,31,14,126,239,248,222,239,18,247,5,239,67,239,247,75
,239,127,240,19,228,247,5,247,97,21,139,251,26,227,56,247,24,138,8,145,6,197,139,187,154,179,164,152,122,150,119,167,139,166,139
,162,162,139,166,139,165,120,155,128,155,176,195,158,212,139,220,8,166,116,163,112,112,115,116,111,30,139,95,132,98,125,105,8,251
,35,247,91,5,19,216,206,191,247,1,204,139,247,9,8,236,51,193,43,251,10,58,70,251,8,30,139,61,172,85,175,90,8,85,91,96,79,139,45,
8,19,224,239,22,139,197,167,170,169,169,8,247,47,251,107,5,115,125,111,131,106,139,8,133,6,62,140,94,178,139,217,8,19,216,167,248
,19,21,199,178,164,199,175,187,127,100,30,139,115,121,114,126,123,111,105,101,111,100,111,8,115,173,116,176,139,189,8,14,247,168
,247,67,3,247,168,249,100,21,159,251,182,5,141,114,160,121,166,139,8,173,6,165,139,157,156,144,163,8,160,247,184,5,139,140,140,140
,139,140,139,162,118,160,116,142,8,58,6,112,116,117,111,31,14,249,153,119,1,247,148,239,3,247,148,248,7,21,139,251,76,237,251,9,
247,4,64,147,134,149,136,149,139,166,139,162,161,139,167,139,156,129,156,127,147,50,196,62,232,139,247,35,8,144,7,141,247,46,209
,228,233,201,152,148,148,155,139,155,139,167,116,161,112,139,129,139,129,136,131,133,251,6,60,45,251,9,137,251,83,8,14,249,153,119
,1,248,6,239,3,247,73,176,21,112,162,116,166,30,149,139,149,142,147,144,247,6,216,236,247,10,139,247,79,139,247,84,43,247,8,251,
7,218,131,145,130,142,128,139,112,139,116,116,139,112,139,126,148,115,152,135,8,230,77,215,47,139,251,43,139,251,41,64,50,47,79,
127,131,129,121,139,123,8,14,247,205,239,3,247,5,248,82,21,139,115,154,123,158,131,8,247,26,95,49,251,13,5,133,130,135,129,139,128
,139,112,161,116,167,139,153,139,151,143,149,148,8,246,247,36,223,251,36,5,148,130,153,135,152,139,167,139,161,161,139,167,139,148
,137,147,135,147,8,62,247,23,247,9,178,5,159,146,154,156,139,163,139,166,116,162,112,139,133,139,134,138,134,137,8,251,26,95,139
,247,43,5,166,116,162,112,112,116,117,111,30,139,251,43,251,41,188,5,112,115,114,112,31,14,247,222,239,1,247,205,239,3,247,5,248
,16,21,111,162,117,166,30,247,42,251,71,6,111,162,117,166,166,162,162,166,30,247,71,247,42,7,166,162,162,166,166,116,162,112,31,
251,42,247,70,6,166,117,162,111,111,117,117,111,30,251,70,251,42,7,112,116,117,111,31,14,251,55,118,1,247,51,251,26,21,111,161,117
,167,30,167,6,152,139,152,143,149,149,8,247,146,247,153,5,148,148,144,152,139,152,8,170,7,167,116,161,112,30,251,3,6,126,139,124
,135,130,129,8,251,70,251,194,5,135,131,137,131,139,130,8,14,247,208,247,20,1,247,5,248,2,21,111,161,117,167,30,248,36,6,167,161
,162,166,31,167,7,166,117,162,111,30,252,36,6,111,117,117,111,31,14,129,247,89,1,247,133,247,135,3,247,133,179,21,112,162,116,166
,30,247,35,6,166,162,161,167,31,236,7,167,116,161,112,30,251,35,6,112,116,116,112,31,14,249,153,119,1,247,65,176,21,111,162,117,
166,30,159,139,159,153,145,156,8,247,172,249,66,5,142,145,140,145,139,146,139,166,116,162,112,139,119,139,119,125,133,122,8,251,
172,253,66,5,136,133,138,133,139,132,8,14,125,239,248,222,239,1,247,5,239,247,192,239,3,247,5,247,235,21,251,87,189,251,53,247,92
,30,149,139,148,138,149,139,8,154,6,247,54,152,183,247,65,139,247,62,8,247,122,119,247,92,251,122,251,124,121,251,91,251,123,30,
239,22,139,215,139,227,154,201,156,208,172,174,224,139,155,139,161,139,148,137,237,120,144,251,32,139,251,15,8,93,7,251,0,126,251
,40,251,7,30,117,6,123,139,117,139,129,141,50,158,126,247,26,139,240,8,14,247,248,239,3,247,36,248,202,21,112,161,116,167,30,151
,139,151,143,148,147,8,247,21,247,2,139,252,234,5,111,162,117,166,166,162,162,166,30,249,60,7,166,116,162,112,30,107,6,127,139,128
,135,130,131,8,251,75,251,49,5,129,131,134,125,139,126,8,14,140,239,248,208,239,1,248,123,239,3,247,22,249,50,21,113,163,116,165
,30,149,139,150,142,147,145,183,170,183,151,205,139,207,139,195,96,139,69,139,112,128,114,123,118,112,103,87,106,94,110,59,88,60
,77,113,48,8,130,108,138,96,139,100,8,118,7,112,162,116,166,30,247,244,6,166,162,162,166,166,117,162,111,31,251,193,6,145,247,8,
202,177,218,189,224,193,247,4,208,139,247,24,139,247,20,42,224,251,19,139,47,139,81,119,77,98,127,131,130,120,139,124,8,14,126,239
,248,207,239,1,248,140,239,3,247,5,208,21,66,247,36,130,199,30,247,46,139,247,18,227,146,247,43,8,154,7,139,247,17,53,216,251,5,
168,8,247,51,247,60,5,148,148,145,150,139,152,8,174,7,166,116,162,112,30,251,255,6,111,117,117,111,112,162,116,166,31,247,171,139
,251,76,251,85,5,131,131,136,127,139,128,8,112,162,116,166,241,241,98,36,30,130,7,134,40,55,94,41,139,93,139,93,148,96,158,133,141
,133,141,132,139,8,112,116,117,111,31,14,247,56,239,1,248,46,239,3,247,5,247,106,21,111,162,117,166,30,247,139,251,16,6,112,162,
116,166,166,162,162,166,30,247,16,192,7,166,162,162,166,166,117,162,111,31,86,247,8,6,166,116,162,112,112,116,116,112,30,251,8,251
,81,7,247,96,248,71,5,142,145,141,146,139,147,139,166,116,162,112,139,120,139,119,126,133,123,8,251,109,252,99,5,136,132,137,133
,139,131,8,14,126,239,247,218,239,247,37,239,1,248,109,239,3,247,31,176,21,111,162,117,166,30,246,139,247,3,157,220,211,183,179,
180,203,139,215,8,247,65,251,13,222,251,67,30,124,139,147,247,37,247,139,139,5,166,162,163,165,166,117,162,111,31,251,186,6,112,
139,118,119,137,112,8,125,251,143,139,136,5,113,163,118,165,30,143,6,160,141,161,140,160,139,204,139,202,127,174,101,165,111,146
,100,139,100,139,117,132,118,129,120,91,54,251,6,116,34,139,8,112,116,117,111,31,14,126,239,247,192,239,1,247,5,239,247,192,239,
3,247,5,247,121,21,143,251,37,238,42,247,39,139,8,247,39,242,238,247,35,247,49,44,240,251,47,31,117,139,119,137,119,135,191,212,
200,206,199,204,147,148,144,151,139,152,139,166,116,162,112,139,126,139,125,134,130,129,61,54,60,53,78,38,8,101,76,107,58,139,41
,8,239,127,21,237,192,199,236,239,189,81,39,51,78,85,50,49,79,192,228,30,14,249,38,239,1,247,131,239,3,247,5,249,88,21,112,162,116
,166,30,247,232,6,131,118,126,120,127,121,91,69,78,79,97,65,78,32,120,251,17,139,251,16,8,111,162,117,166,166,162,162,166,30,139
,245,153,247,0,192,232,180,210,200,197,184,206,173,189,165,194,139,199,8,166,117,162,111,30,252,36,6,111,117,117,111,31,14,126,239
,248,222,239,18,247,5,238,74,239,247,124,239,73,239,19,228,247,5,247,92,21,251,19,245,53,247,36,30,183,6,247,10,148,227,237,139,
245,139,237,70,212,63,191,8,19,216,201,178,188,189,139,227,8,244,251,3,207,34,33,251,2,72,33,30,139,51,189,87,200,102,8,63,87,70
,67,139,40,8,19,228,238,22,139,222,229,193,202,171,204,105,222,83,139,60,8,77,80,88,69,30,118,6,57,70,178,213,31,19,216,174,248,
36,21,190,209,161,185,185,209,117,88,30,139,72,80,113,82,113,8,83,165,79,166,139,205,8,14,247,165,239,247,192,239,1,247,5,239,247
,192,239,3,247,5,248,150,21,251,26,236,32,247,45,30,159,139,160,140,159,142,92,65,82,72,74,80,129,129,133,127,139,124,139,111,162
,117,166,139,151,139,151,144,148,147,222,213,210,226,195,235,8,182,212,177,214,139,245,8,247,50,251,2,240,251,32,251,32,251,2,251
,10,251,33,30,239,22,225,204,212,224,228,200,79,40,30,139,114,136,115,132,116,123,83,76,126,78,139,8,46,82,197,222,31,14,129,247
,72,247,75,247,72,1,247,151,247,100,3,247,151,179,21,111,162,117,166,30,247,0,6,166,162,162,166,31,219,7,166,116,162,112,30,251,
0,6,112,116,117,111,31,247,175,4,34,10,14,247,245,247,72,1,247,171,247,100,3,247,48,251,21,21,111,162,117,166,30,182,6,152,139,152
,145,148,148,8,247,96,247,159,5,141,141,140,142,139,142,139,143,138,143,139,143,8,166,116,162,112,30,251,3,6,117,139,122,126,133
,124,8,251,16,251,145,5,136,133,138,131,139,132,8,247,15,248,168,21,34,10,14,247,18,247,236,21,248,45,251,163,5,147,133,149,136,
149,139,166,139,162,162,139,166,139,153,134,151,129,149,8,251,237,247,122,247,237,247,122,5,151,147,142,153,139,153,139,166,116,
162,112,139,129,139,129,136,131,133,8,252,45,251,163,5,130,130,135,125,139,126,139,126,143,125,139,130,8,14,247,108,239,247,20,239
,1,247,5,247,158,21,111,161,117,167,30,248,36,6,167,161,162,166,166,116,162,112,31,252,36,6,112,116,117,111,31,247,120,4,111,162
,117,166,30,248,36,6,166,162,162,166,166,117,162,111,31,252,36,6,111,117,117,111,31,14,247,5,247,6,21,111,162,117,166,30,149,139
,148,142,148,145,8,248,44,247,163,5,150,146,142,155,139,152,139,152,135,153,139,148,8,252,44,247,163,5,130,145,130,142,129,139,112
,139,116,117,139,111,139,125,144,127,148,129,8,247,237,251,122,251,237,251,122,5,130,129,134,127,139,125,8,14,72,247,38,248,173,
237,18,247,33,239,188,247,38,251,15,239,182,239,19,236,247,33,248,156,21,140,114,161,117,166,139,8,167,161,161,167,31,139,142,139
,144,5,139,197,193,160,191,145,8,142,6,148,139,148,136,148,139,179,130,178,119,139,92,139,105,109,91,119,118,103,99,82,109,139,66
,8,111,162,117,166,166,162,162,166,30,139,146,143,146,143,144,155,161,163,153,157,159,175,177,179,207,140,204,8,141,7,247,10,40,
196,38,33,251,1,76,251,13,30,19,244,247,41,252,183,21,32,10,14,120,239,247,132,239,247,89,239,1,247,5,239,247,15,239,216,239,3,247
,5,247,86,21,139,251,9,173,47,247,3,135,8,147,6,185,139,173,154,166,162,161,113,171,128,172,139,174,139,175,152,165,163,191,187,
143,202,139,238,8,247,6,7,247,95,90,247,64,251,96,30,130,6,251,17,136,45,81,123,32,8,132,7,111,161,117,167,30,164,139,160,158,142
,162,147,199,198,159,208,142,8,148,6,247,32,152,251,31,251,28,31,139,251,6,139,113,5,139,80,136,79,91,136,8,138,6,121,139,133,161
,138,162,8,247,135,7,165,116,163,112,30,122,139,122,129,130,124,117,154,103,151,108,139,251,7,138,113,251,2,139,251,8,8,239,133,
21,139,145,139,156,5,184,141,204,178,30,177,139,169,108,153,112,8,251,19,7,126,111,123,112,100,139,8,133,6,91,142,138,193,139,189
,8,14,247,91,239,248,44,119,1,247,11,179,21,111,162,117,166,30,162,139,159,156,144,159,8,183,247,64,247,95,139,184,251,64,5,144,
119,159,122,162,139,8,166,163,163,165,31,251,57,249,16,5,134,157,119,152,118,139,8,71,6,116,139,118,122,134,119,8,251,53,252,253
,5,247,60,247,138,21,215,247,184,215,251,184,5,14,140,239,247,107,239,247,77,239,18,247,5,239,247,178,238,54,239,19,244,247,5,190
,21,111,162,117,166,30,247,63,6,211,139,213,145,195,183,188,177,167,198,139,200,8,141,7,139,200,111,196,92,176,8,19,248,180,175,
158,189,139,189,139,207,104,206,78,174,88,167,80,140,81,139,8,251,63,6,111,117,117,111,31,239,252,186,21,247,107,247,42,7,19,244
,219,139,208,111,140,62,8,138,7,48,47,121,52,30,251,13,247,207,21,247,77,247,13,7,19,248,226,139,210,128,146,60,8,130,7,70,70,122
,72,30,14,126,239,248,97,118,228,239,1,247,53,239,247,99,237,3,247,53,247,234,21,141,251,71,188,251,68,247,77,139,227,139,207,193
,152,215,8,148,7,166,117,162,112,30,115,139,118,120,135,117,133,108,110,122,103,139,251,12,139,125,247,35,137,247,6,8,156,7,139,
247,8,160,247,25,247,2,145,8,144,6,157,139,156,134,154,128,167,118,132,87,188,139,8,166,161,162,166,31,149,7,122,214,72,193,52,139
,8,134,6,251,70,135,88,251,68,139,251,75,8,14,161,118,249,80,119,1,247,56,239,247,115,239,3,247,56,190,21,112,162,116,166,30,177
,139,176,139,176,146,247,41,166,247,4,247,13,139,247,67,139,227,109,215,99,193,74,226,51,204,251,42,139,8,111,117,116,112,31,239
,252,184,21,248,131,7,181,134,172,126,168,118,203,93,194,63,139,33,139,251,36,49,67,251,25,127,8,14,140,239,247,107,239,247,77,239
,1,247,51,239,3,247,51,190,21,111,162,117,166,30,247,234,6,166,162,161,167,167,117,161,111,31,251,184,247,107,247,136,6,167,161,
162,166,166,116,162,112,31,251,136,247,77,247,184,6,166,162,161,167,167,117,161,111,31,251,234,6,111,117,117,111,31,14,247,208,239
,247,77,239,1,247,102,239,3,247,102,179,21,112,162,116,166,166,162,162,166,30,247,168,247,71,7,166,162,162,166,166,115,162,113,31
,251,71,247,77,247,116,6,166,162,161,167,167,117,161,111,31,251,166,6,111,117,116,112,31,14,124,241,247,84,239,247,126,241,18,247
,13,240,247,3,247,155,39,239,19,244,247,13,247,245,21,139,251,9,170,251,9,199,77,183,93,205,113,214,139,169,139,171,143,171,148,
175,149,208,158,139,186,8,19,248,247,147,7,166,116,162,112,30,251,55,6,112,116,117,111,111,161,117,167,31,19,244,247,5,251,66,6,
105,127,106,133,109,139,69,139,84,172,115,207,121,189,129,202,139,200,139,222,158,220,182,183,168,168,177,153,177,139,181,139,180
,122,166,108,8,149,128,151,132,155,139,166,139,162,162,139,166,139,151,135,150,131,148,102,184,86,168,81,148,125,141,125,140,126
,139,66,139,79,106,98,98,8,78,78,109,251,5,139,251,6,8,14,247,202,239,247,195,119,1,247,33,239,247,135,239,3,247,33,179,21,112,162
,116,166,166,162,161,167,30,247,162,247,135,251,162,7,112,162,116,166,166,162,161,167,30,249,3,7,167,116,161,112,112,116,116,112
,30,251,145,251,135,247,145,7,167,116,161,112,112,116,116,112,30,14,140,239,248,136,239,1,247,205,239,3,247,62,190,21,112,162,116
,166,30,247,178,6,166,162,162,166,166,117,162,111,31,46,248,136,212,6,166,162,162,166,166,117,162,111,31,251,138,6,111,117,116,112
,112,162,116,166,31,212,252,136,46,6,111,117,116,112,31,14,123,241,249,7,119,1,247,22,239,247,52,239,3,247,22,247,57,21,139,66,184
,82,189,111,169,123,169,132,167,139,236,139,220,223,139,232,139,143,138,144,139,143,8,248,125,7,166,116,162,112,112,116,116,112,
30,252,133,7,83,103,115,102,97,94,169,189,30,139,144,140,144,140,145,8,148,7,167,118,161,111,30,113,139,121,122,134,116,136,126,
138,128,139,127,8,14,249,93,119,1,247,19,239,3,247,19,179,21,112,162,116,166,166,162,162,166,30,139,247,167,247,192,251,202,5,149
,129,152,134,152,139,166,139,162,162,139,166,139,152,133,151,130,149,8,251,172,247,182,247,149,247,155,5,148,148,145,152,139,152
,139,166,116,162,112,139,126,139,126,133,129,130,8,251,169,251,174,139,247,139,5,166,116,162,112,112,116,116,112,30,14,140,239,248
,248,119,1,247,33,239,3,247,33,190,21,112,162,116,166,30,248,8,6,166,162,162,166,166,117,162,111,31,251,214,248,198,6,167,116,161
,112,112,116,116,112,30,14,249,93,119,1,247,5,239,247,192,239,3,247,5,179,21,111,162,117,166,166,162,162,166,30,139,248,175,241,
251,228,5,145,119,159,123,161,139,163,139,156,156,146,158,8,241,247,228,139,252,175,5,111,162,117,166,166,162,162,166,30,249,3,7
,166,116,162,112,30,62,6,116,139,119,123,134,119,8,64,251,139,64,247,139,5,133,158,120,156,116,139,8,62,6,112,116,117,111,31,14,
249,93,119,1,247,19,239,247,164,239,3,247,19,179,21,112,162,116,166,166,162,162,166,30,139,248,116,247,131,252,138,5,147,123,156
,127,159,139,8,177,6,165,163,162,166,31,249,3,7,166,115,162,113,112,116,117,111,30,139,252,117,251,132,248,138,5,131,155,122,152
,119,139,8,102,6,112,116,116,112,31,14,126,239,248,170,239,1,247,8,239,247,186,239,3,247,8,247,246,21,35,10,239,135,21,144,7,139
,218,161,222,179,191,157,162,169,164,176,139,8,243,182,251,47,251,4,35,93,251,55,38,31,37,139,95,247,55,138,243,8,14,247,179,239
,247,106,239,1,247,33,239,247,164,239,3,247,33,179,21,112,162,116,166,166,162,161,167,30,247,139,247,14,7,219,139,222,158,187,203
,164,171,151,179,141,181,8,150,7,247,30,251,0,207,251,34,30,251,64,6,111,117,116,112,31,239,251,156,21,247,106,247,14,7,224,204,
117,55,31,132,7,135,58,66,119,66,139,8,14,171,239,248,120,239,1,247,7,242,247,164,235,3,247,7,248,13,21,139,66,149,66,159,89,172
,59,223,70,230,139,178,139,180,152,178,169,8,193,69,5,148,127,153,136,152,139,166,139,163,162,139,166,139,150,135,150,132,148,8,
74,223,5,171,199,156,219,139,220,8,247,61,65,247,63,251,51,30,130,6,40,139,69,61,109,69,119,91,129,68,139,67,8,242,163,21,192,7,
144,214,181,226,220,139,235,139,187,251,15,139,251,14,139,94,132,94,126,100,8,60,241,5,130,150,124,143,125,139,112,139,117,116,139
,112,139,127,143,129,146,130,8,236,251,17,5,121,126,119,131,115,139,129,139,129,140,128,142,45,164,132,247,6,139,247,18,8,14,247
,179,239,247,106,239,1,247,45,239,247,123,239,3,247,45,179,21,111,162,117,166,166,162,162,166,30,247,139,225,7,247,56,251,175,5,
148,129,154,135,152,139,166,139,162,162,139,166,139,148,138,147,134,147,8,251,28,247,126,5,237,175,177,236,139,247,3,139,237,251
,15,191,45,147,8,251,56,6,111,117,117,111,31,239,251,156,21,247,106,247,0,7,171,139,171,127,167,123,153,132,156,129,139,126,139,
90,137,86,102,108,117,120,108,135,110,139,8,14,124,239,248,167,239,1,247,45,239,247,118,239,3,247,39,247,45,21,152,41,229,69,245
,139,151,139,152,140,152,141,244,156,219,214,139,247,1,139,247,50,251,37,176,34,193,101,159,101,161,139,196,139,190,199,167,195,
139,8,168,139,167,132,158,123,166,116,139,85,187,139,167,139,161,162,139,166,139,143,138,144,138,143,116,222,66,193,35,139,8,133
,6,251,2,137,40,69,139,32,139,251,45,247,33,100,242,87,180,118,180,117,139,78,139,110,128,109,116,122,115,121,107,129,108,139,86
,139,89,166,131,194,8,136,162,118,159,113,139,8,112,116,116,112,31,14,248,237,239,1,247,205,239,3,247,5,249,31,21,111,162,117,166
,30,247,42,252,197,6,111,162,117,166,166,162,162,166,30,248,197,247,42,7,166,162,162,166,166,117,162,111,31,252,36,6,111,117,117
,111,31,14,126,239,249,6,119,1,247,19,239,247,164,239,3,247,19,247,103,21,139,65,171,67,201,98,181,111,189,130,189,139,189,139,189
,148,181,167,200,180,172,211,139,213,8,248,88,7,166,115,162,113,112,116,117,111,30,252,88,7,62,86,92,56,30,109,139,107,143,114,155
,105,162,124,179,139,180,8,248,88,7,166,116,162,112,112,116,116,112,30,14,249,93,119,1,247,4,249,43,21,247,59,253,16,5,144,120,160
,121,163,139,8,207,6,162,139,159,156,144,159,8,247,61,249,16,5,165,115,163,112,30,115,139,121,122,132,119,8,251,43,252,207,251,44
,248,207,5,134,159,119,156,116,139,8,112,115,116,112,31,14,249,93,119,1,247,5,239,247,191,240,3,247,5,249,43,21,147,251,120,151,
251,102,182,251,88,144,119,158,120,165,139,8,167,6,165,139,155,156,145,158,8,200,247,103,199,251,92,5,147,113,174,118,173,139,163
,139,160,158,143,159,181,247,87,153,247,103,147,247,120,8,141,7,164,115,162,113,113,114,116,112,30,133,251,55,130,251,43,119,251
,35,8,81,247,86,5,133,157,121,157,115,139,8,122,6,115,139,123,124,132,121,8,80,251,96,5,118,247,38,131,247,46,133,247,56,138,165
,118,163,111,139,8,113,115,118,112,31,14,249,93,119,1,247,25,179,21,111,162,117,166,30,159,139,153,151,149,153,8,247,28,247,142,
247,34,251,154,5,149,129,154,135,152,139,166,139,162,162,139,166,139,147,137,148,135,146,8,251,53,247,188,247,47,247,170,5,143,147
,141,147,139,148,139,166,116,162,112,139,119,139,125,126,129,126,8,251,22,251,127,251,30,247,139,5,130,148,125,144,126,139,112,139
,116,117,139,111,139,130,141,131,143,131,8,247,47,251,170,251,53,251,188,5,135,132,137,130,139,131,8,14,249,93,119,1,247,205,239
,3,247,28,249,43,21,139,130,141,131,143,132,8,247,63,251,212,139,251,171,5,111,162,117,166,166,162,162,166,30,139,247,171,247,63
,247,212,5,143,146,141,147,139,148,139,166,116,162,112,139,121,139,119,127,133,124,8,251,25,251,141,251,25,247,141,5,130,154,124
,151,119,139,112,139,116,117,139,111,8,14,140,239,248,136,239,1,247,33,190,21,112,162,116,166,30,247,235,6,166,162,161,167,167,117
,161,111,31,251,153,139,247,163,248,163,5,143,146,141,147,139,147,8,165,116,163,112,30,251,198,6,111,117,116,112,112,162,116,166
,31,247,116,139,251,163,252,163,5,135,132,137,131,139,131,8,14,126,239,248,222,239,1,247,102,239,3,247,102,176,21,112,162,116,166
,30,247,178,6,166,162,162,166,166,116,162,112,31,251,128,248,222,247,128,6,167,161,162,166,166,116,162,112,31,251,178,6,112,116,
116,112,31,14,249,153,119,1,247,65,249,103,21,139,132,140,133,142,133,8,247,172,253,66,5,146,122,158,125,159,139,166,139,162,162
,139,166,139,146,138,145,136,145,8,251,172,249,66,5,132,155,120,154,119,139,112,139,116,117,139,111,8,14,126,239,248,222,239,1,248
,52,239,3,247,22,176,21,112,162,116,166,30,247,178,6,166,162,162,166,31,249,66,7,166,116,162,112,30,251,178,6,112,116,116,112,112
,161,116,167,31,247,128,252,222,251,128,6,112,116,116,112,31,14,247,5,248,53,21,36,10,14,251,128,247,21,1,247,5,251,49,21,110,7,
111,162,117,166,30,248,36,6,166,162,162,166,31,168,7,166,116,162,112,30,252,36,6,112,116,117,111,31,14,248,220,247,78,1,247,151,
247,46,3,247,151,249,100,21,139,129,141,130,144,131,8,199,45,5,149,129,153,134,152,139,166,139,162,162,139,166,139,149,136,148,134
,147,8,79,234,5,132,150,123,142,126,139,112,139,116,117,139,111,8,14,122,240,247,50,236,244,239,1,247,19,239,247,141,239,3,247,19
,247,46,21,139,39,230,75,223,133,145,139,145,138,144,139,202,139,191,165,181,175,8,131,7,111,162,117,166,166,162,162,166,30,247,
202,7,139,194,117,193,99,177,99,176,83,152,84,139,77,139,80,116,89,103,128,131,131,122,139,125,139,111,161,117,167,139,150,139,150
,142,148,146,8,170,164,177,152,179,139,169,139,170,136,161,118,161,119,144,108,142,109,251,66,138,251,67,127,139,251,64,8,239,22
,37,10,14,123,238,247,250,237,247,126,119,1,247,16,239,247,181,239,3,247,16,176,21,112,162,116,166,166,162,161,167,30,143,7,177,
109,184,118,190,134,148,138,148,139,148,139,8,247,48,211,247,28,247,53,31,145,7,138,247,20,68,228,251,1,166,118,144,119,142,120,
139,81,139,89,116,99,107,8,247,131,7,167,116,161,112,112,116,116,112,30,239,252,159,21,247,17,7,161,183,175,178,183,159,159,148,
158,143,157,139,216,139,190,60,141,62,8,131,7,139,62,124,76,91,107,115,123,115,133,116,139,70,139,77,198,115,197,8,14,121,239,247
,248,239,1,247,59,239,247,93,237,3,247,59,247,166,21,139,251,19,170,44,223,94,172,121,172,132,172,139,227,139,217,195,158,215,8,
151,7,166,117,162,112,30,114,139,120,120,134,119,132,112,115,121,112,133,127,136,127,138,129,139,48,139,121,237,139,233,139,205,
153,203,185,161,156,147,162,143,163,139,8,172,139,170,130,147,116,146,118,156,121,163,139,8,167,160,161,167,31,151,7,124,200,84,
176,75,147,124,141,125,140,125,139,251,43,139,74,251,5,139,251,43,8,14,124,235,247,250,239,247,126,119,1,247,5,239,247,180,239,3
,247,5,247,161,21,139,251,36,197,32,247,14,112,159,135,158,137,158,139,197,139,190,158,180,170,140,113,162,117,165,139,8,166,162
,161,167,31,249,66,7,167,116,161,112,112,116,116,112,30,251,130,7,101,167,85,165,79,139,121,139,120,136,120,134,251,5,108,72,45,
139,251,29,8,239,22,139,205,157,189,183,169,164,156,165,146,163,139,207,139,197,83,164,84,8,251,20,7,123,89,99,101,94,121,118,130
,119,135,121,139,53,139,97,234,139,232,8,14,124,237,247,45,239,247,0,239,1,247,19,248,56,3,247,19,247,166,21,139,251,29,195,35,246
,104,164,131,173,134,175,139,8,217,223,162,205,167,116,161,111,31,126,139,127,134,130,130,126,126,123,131,118,136,127,137,127,138
,128,139,45,139,94,202,130,229,8,247,212,6,166,162,162,166,247,40,60,247,2,251,44,31,133,6,251,42,136,54,251,10,139,251,41,8,246
,201,21,156,201,181,185,210,139,226,139,165,99,153,71,8,14,248,69,239,247,29,239,1,247,199,239,3,247,39,248,119,21,112,161,116,167
,30,247,2,139,145,252,32,5,111,162,117,166,166,162,162,166,30,133,248,32,247,14,139,5,166,162,162,166,166,115,162,113,31,251,14,
148,6,139,161,139,171,143,152,151,182,189,157,192,139,8,166,162,162,166,166,116,162,112,251,41,69,61,251,42,31,130,251,2,7,112,116
,116,112,31,14,251,82,239,247,1,239,247,212,239,1,247,8,239,247,163,239,3,247,8,247,161,21,251,28,217,251,6,247,32,30,205,139,187
,161,178,172,8,139,114,139,117,5,139,117,138,117,130,119,121,98,99,127,82,139,110,139,97,139,117,149,113,151,138,177,100,139,112
,139,116,117,139,111,139,132,140,132,142,133,8,170,67,212,121,240,139,247,30,139,229,219,139,247,19,139,153,138,154,137,154,8,248
,61,7,166,116,162,112,30,114,139,116,118,137,114,107,165,99,157,91,143,131,140,131,139,131,139,8,251,42,62,251,10,251,44,31,239,
22,235,175,213,233,30,152,6,208,134,178,77,159,84,8,55,7,108,86,99,78,57,139,8,57,103,211,217,31,14,248,75,239,247,126,119,1,247
,48,239,247,106,239,3,247,48,176,21,111,162,117,166,166,162,162,166,30,247,184,7,166,191,178,197,214,139,8,210,141,70,67,31,139,
127,139,251,141,5,112,162,116,166,166,162,162,166,30,247,141,7,139,182,139,186,129,176,119,210,80,194,55,139,78,139,94,118,104,110
,8,247,126,7,166,116,162,112,112,116,117,111,30,14,248,60,239,242,247,38,18,247,73,247,172,251,34,247,37,36,239,19,224,247,73,248
,110,21,112,162,116,166,30,19,200,38,10,19,224,39,10,19,208,247,30,247,95,21,40,10,14,251,75,242,248,140,239,241,247,38,18,247,102
,247,138,251,29,247,37,251,0,239,19,228,247,45,251,21,21,95,182,129,185,30,163,139,163,142,160,141,195,144,187,188,161,184,157,176
,140,183,139,181,8,139,152,5,19,240,41,10,19,228,235,252,3,6,139,107,139,99,129,118,133,125,118,111,121,138,8,88,137,5,125,139,125
,140,125,139,8,134,6,111,117,117,111,31,19,232,247,58,249,186,21,40,10,14,248,172,119,247,149,119,1,247,65,239,3,247,65,176,21,111
,162,117,166,166,162,162,166,30,247,99,142,7,247,117,251,134,5,148,129,153,134,152,139,166,139,162,162,139,166,139,152,134,151,131
,148,8,251,98,247,113,247,64,247,50,5,149,148,145,152,139,153,139,166,116,162,112,139,126,139,127,133,130,130,8,251,88,251,69,136
,139,139,248,15,5,166,116,162,112,112,116,117,111,30,14,132,239,249,60,119,18,247,145,238,46,239,19,224,247,145,247,120,21,139,68
,147,88,173,94,183,81,204,129,241,139,8,166,162,162,166,166,116,162,112,31,113,139,101,139,125,141,74,148,128,192,139,210,8,19,208
,146,248,130,5,167,116,162,112,111,117,116,111,30,14,248,75,239,1,247,5,239,239,239,239,239,3,20,112,247,5,176,21,111,162,117,166
,166,162,162,166,30,247,170,7,178,165,224,183,30,161,139,146,114,140,121,8,251,251,7,111,162,117,166,166,162,162,166,30,247,170,
7,179,166,223,182,30,161,139,146,114,140,121,8,251,251,7,111,162,117,166,166,162,162,166,30,248,3,7,209,85,204,63,30,99,139,104,
120,113,111,116,167,104,158,98,139,108,139,113,129,117,123,130,153,124,148,122,139,8,112,116,117,111,31,14,248,75,239,1,247,19,239
,247,164,239,3,247,19,176,21,112,162,116,166,166,162,162,166,30,247,158,7,165,203,191,211,225,139,8,230,156,76,49,31,251,141,7,111
,162,117,166,165,163,162,166,30,247,141,7,247,41,81,243,251,42,30,71,139,85,114,97,102,8,148,7,166,116,161,112,112,116,117,112,30
,14,123,239,247,252,239,1,247,5,239,247,192,239,3,247,5,247,155,21,42,10,239,22,43,10,14,251,55,118,247,60,239,247,248,238,1,247
,16,239,247,181,239,3]);fileData1.push.apply(fileData1,[247,16,251,26,21,112,161,116,167,167,161,161,167,30,247,64,7,176,109,185
,118,192,136,8,156,6,247,46,221,247,13,247,44,31,139,247,37,79,238,251,14,169,117,144,119,142,119,139,82,139,90,118,100,107,8,167
,116,161,112,112,116,116,112,30,239,251,172,21,247,10,7,163,192,189,196,207,144,144,139,143,140,143,139,238,139,174,53,139,42,139
,54,107,75,66,120,126,136,127,137,127,139,62,139,96,208,112,192,8,14,251,55,118,247,60,237,247,249,239,1,247,5,239,247,180,239,3
,247,5,247,149,21,139,251,31,203,38,247,9,113,160,134,158,137,158,139,198,139,189,160,178,171,8,251,63,7,112,161,116,167,167,161
,161,167,30,249,0,7,167,116,161,112,112,116,116,112,30,100,171,90,160,82,139,119,139,119,136,117,134,251,15,109,81,40,139,251,37
,8,239,22,139,207,153,202,187,168,164,154,164,146,162,139,210,139,195,78,165,83,8,251,11,7,120,93,103,95,93,120,118,131,120,135,
121,139,55,139,94,225,139,228,8,14,248,75,239,1,247,96,239,247,84,239,3,247,96,176,21,112,162,116,166,166,162,161,167,30,247,116
,7,139,214,183,228,219,150,146,139,146,142,146,139,144,139,145,136,144,139,157,135,152,124,139,121,140,112,161,117,166,139,166,139
,162,162,139,167,8,138,214,81,202,51,139,79,139,91,119,102,106,8,167,117,160,111,112,116,117,112,30,14,123,236,247,255,239,1,247
,51,239,247,112,239,3,247,45,236,21,139,130,140,130,144,131,176,79,203,112,232,139,8,149,6,247,7,142,240,183,139,247,10,139,247,
31,251,40,152,251,3,168,109,147,108,152,139,177,8,190,197,143,185,30,165,6,169,137,173,135,146,111,144,118,159,123,163,139,166,139
,162,162,139,166,139,143,138,143,138,144,121,207,67,175,66,143,8,108,6,32,42,96,251,4,31,139,251,31,247,30,122,247,2,110,169,131
,181,129,139,102,139,91,77,119,79,139,106,139,108,145,118,149,114,151,131,177,103,139,112,139,116,117,139,111,8,14,126,239,247,232
,239,18,247,141,239,44,239,19,224,247,19,248,113,21,112,162,116,166,30,214,139,136,251,118,139,127,5,139,44,162,72,212,111,158,132
,169,134,169,139,8,201,206,158,190,166,116,162,112,31,110,139,114,119,108,139,8,137,6,72,139,185,205,31,142,247,120,247,43,139,5
,166,162,162,166,166,116,162,112,31,19,208,251,41,139,141,240,5,166,117,162,111,111,117,118,110,30,137,38,62,139,5,112,116,116,112
,31,14,123,239,248,88,119,1,247,19,239,247,164,239,3,247,19,247,134,21,139,100,140,100,148,105,163,53,205,81,245,137,8,143,6,207
,139,192,163,180,175,8,132,7,111,162,117,166,165,163,162,166,30,248,85,7,166,115,162,113,112,116,117,111,30,251,151,7,116,71,90,
64,52,139,8,134,6,42,142,128,204,139,244,8,247,121,7,166,115,162,112,113,116,115,113,30,251,121,7,14,248,172,119,1,247,8,248,122
,21,139,133,140,133,141,134,8,247,52,252,85,5,146,120,158,125,160,139,8,213,6,159,139,161,154,144,157,8,247,52,248,85,5,141,144,
140,145,139,145,139,166,116,162,112,139,118,139,118,123,134,121,8,251,40,252,51,135,139,251,40,248,51,5,132,158,122,154,116,139,
112,139,116,117,139,111,8,14,248,172,119,1,247,7,239,247,187,240,3,247,7,248,122,21,194,252,91,5,142,116,160,118,165,139,8,189,6
,162,139,156,155,146,158,8,185,247,51,185,251,51,5,145,120,157,123,163,139,8,188,6,164,139,161,159,141,163,8,195,248,91,139,143,
5,163,114,161,113,30,113,139,119,118,135,116,8,100,251,216,102,247,18,5,133,159,121,155,115,139,8,93,6,116,139,119,123,134,119,8
,102,251,18,99,247,216,5,137,163,117,159,114,139,8,112,115,116,112,31,14,248,172,119,1,247,39,176,21,112,162,116,166,30,152,139,
153,143,148,149,8,247,22,247,77,247,21,251,77,5,148,127,153,137,153,139,165,139,163,162,139,166,139,149,135,149,133,148,8,251,32
,247,92,247,22,247,84,5,144,147,142,149,139,149,139,166,116,162,112,139,126,139,125,134,130,130,8,251,10,251,67,251,10,247,67,5,
132,149,123,143,126,139,112,139,116,117,139,111,139,129,142,129,144,131,8,247,21,251,84,251,32,251,92,5,133,130,136,129,139,129,
8,14,251,75,241,248,253,119,1,247,5,251,23,21,139,114,156,120,161,134,148,137,149,138,148,139,189,139,183,170,157,176,8,247,207,
248,212,5,143,146,141,148,139,148,139,166,116,162,112,139,126,139,124,134,129,130,8,251,49,251,182,251,61,247,182,5,130,148,125,
144,126,139,112,139,116,117,139,111,139,130,141,130,144,132,8,247,84,251,223,251,0,251,90,5,133,127,130,138,129,139,8,123,6,112,
116,117,111,31,14,138,239,247,217,239,1,247,39,188,21,112,161,116,167,30,247,232,6,167,161,162,166,166,116,162,112,31,251,151,139
,247,164,247,194,5,148,148,144,151,139,151,8,179,7,167,117,161,111,30,251,200,6,111,117,117,111,111,162,117,166,31,247,124,139,251
,170,251,200,5,131,130,134,128,139,127,8,14,126,239,247,135,239,247,135,239,1,247,176,239,3,20,224,247,5,248,15,21,111,162,118,166
,30,175,139,181,139,161,117,159,118,140,109,139,111,139,41,161,62,204,100,184,112,220,138,205,139,8,166,162,162,166,166,116,162,
112,31,91,139,68,139,118,152,102,162,137,186,139,198,139,193,127,196,100,178,183,172,146,213,139,196,139,172,139,177,158,164,162
,171,185,141,196,139,8,173,6,167,161,162,166,166,116,162,112,31,251,8,139,64,131,90,72,107,95,132,83,139,84,8,129,7,139,110,138,
108,124,121,118,114,93,139,101,139,8,112,116,116,111,31,14,249,153,119,1,247,205,239,3,247,205,251,3,21,111,161,117,167,167,161,
162,166,30,249,214,7,166,116,162,112,112,116,117,111,30,14,126,239,247,135,239,247,135,239,1,247,233,239,3,20,224,247,5,176,21,111
,162,117,166,30,205,139,220,139,184,167,204,178,160,215,139,238,139,167,140,169,160,160,161,161,181,139,175,139,8,166,162,161,166
,166,116,163,112,31,135,6,102,139,96,139,118,164,122,159,139,176,139,170,139,194,133,195,107,183,90,206,63,147,251,7,139,8,112,116
,117,111,111,161,117,167,31,178,139,196,139,160,132,190,124,149,93,139,77,139,84,146,63,183,106,100,100,127,82,139,85,139,106,139
,101,129,115,120,95,90,136,72,139,8,106,6,112,116,117,111,31,14,248,171,239,125,240,107,159,18,139,238,247,166,238,19,88,247,19,
248,233,21,44,10,19,184,45,10,19,88,46,10,14,247,191,247,37,18,247,182,247,38,251,15,239,19,192,248,216,247,241,21,47,10,162,252
,201,21,33,10,14,247,56,239,247,124,239,1,247,39,239,247,124,239,3,247,118,247,72,21,111,162,117,166,30,152,139,152,144,148,149,
8,190,190,5,172,119,178,127,181,139,180,139,177,150,173,160,8,190,88,5,149,129,152,134,152,139,166,139,162,162,139,166,139,152,134
,152,129,148,8,87,191,5,160,172,151,178,139,180,139,180,126,178,119,172,8,191,191,5,149,148,144,152,139,152,139,166,116,162,112,
139,126,139,126,134,129,129,8,88,88,5,106,159,100,151,98,139,97,139,100,127,106,119,8,88,190,5,130,149,126,144,126,139,112,139,116
,117,139,111,139,126,144,126,148,130,8,191,87,5,119,106,127,100,139,98,139,97,151,101,159,106,8,87,87,5,130,130,134,126,139,126,
8,247,26,247,92,21,203,191,191,203,203,191,87,75,75,84,87,78,75,87,191,203,30,14,247,134,248,24,21,139,32,241,102,238,131,204,134
,247,6,147,139,65,139,75,73,126,78,138,8,133,6,69,139,88,156,119,190,131,157,121,153,118,139,111,139,117,116,139,111,139,133,140
,134,141,133,174,52,217,94,247,12,139,8,147,6,247,10,141,247,1,190,139,247,12,8,144,7,138,184,125,172,115,164,162,165,155,172,139
,179,8,143,7,136,241,50,181,44,148,76,145,35,130,139,212,139,202,204,155,201,139,168,139,166,134,158,126,169,119,139,88,186,139,
165,139,163,163,139,165,8,139,145,138,144,137,144,114,216,66,185,38,139,251,16,139,36,82,139,251,14,139,100,149,109,155,116,110,
110,116,100,139,93,8,239,22,139,163,160,161,158,152,181,126,189,134,189,134,178,136,198,133,139,95,139,112,123,126,122,128,120,144
,118,142,118,141,84,144,251,23,131,139,200,8,14,247,165,247,49,1,247,119,239,211,239,3,248,90,247,215,21,112,161,116,167,167,161
,162,166,30,196,7,166,116,162,112,112,116,116,112,30,247,64,82,21,111,161,117,167,166,162,162,166,30,196,7,166,115,162,113,112,116
,117,111,30,14,139,28,249,67,247,192,247,192,247,192,247,192,247,192,248,86,247,192,247,192,247,192,247,192,247,192,1,28,249,67,
247,192,247,192,247,192,247,192,247,192,248,86,247,192,247,192,247,192,247,192,247,192,3,247,117,4,247,16,240,38,251,16,251,16,38
,38,251,16,251,16,38,240,247,16,247,16,240,240,247,16,31,247,192,4,251,182,251,127,251,127,251,182,251,182,247,127,251,127,247,182
,247,182,247,127,247,127,247,182,247,182,251,127,247,127,251,182,31,135,247,192,21,248,89,248,12,252,4,252,89,252,89,252,12,252,
12,252,89,252,89,252,4,248,12,248,89,248,89,248,4,248,4,248,89,31,247,192,4,252,255,252,138,252,138,252,255,252,255,248,138,252,
146,248,255,248,255,248,146,248,146,248,255,248,255,252,146,248,138,252,255,31,247,192,4,249,165,249,24,253,16,253,165,253,165,253
,24,253,24,253,165,253,165,253,16,249,24,249,165,249,165,249,16,249,16,249,165,31,143,247,192,21,254,74,253,155,253,155,254,74,254
,74,249,155,253,155,250,74,250,74,249,155,249,155,250,74,250,74,253,155,249,155,254,74,31,14,248,159,251,92,251,16,21,247,92,39,
247,92,239,139,247,140,251,92,239,251,92,39,5,14,248,172,239,1,247,146,248,222,21,112,161,116,167,30,248,8,6,166,162,162,166,166
,115,162,113,31,252,8,6,112,116,116,112,31,14,248,137,247,78,1,247,205,247,46,3,249,6,248,187,21,111,162,117,166,30,152,139,153,
144,148,148,8,199,234,5,144,147,142,149,139,148,139,166,116,162,112,139,126,139,125,135,130,129,8,79,44,5,134,131,136,130,139,129
,8,14,251,228,239,239,247,89,1,247,193,239,145,239,3,248,238,150,21,42,7,112,162,116,166,30,142,139,143,139,5,166,161,117,111,112
,116,116,111,31,137,139,136,139,5,111,117,116,112,31,139,112,161,118,165,137,8,146,6,222,207,205,223,31,139,208,94,195,78,157,8,
193,7,167,117,161,111,111,117,116,112,30,14,251,113,239,248,173,247,37,18,247,62,239,159,247,38,251,15,239,210,239,19,236,247,232
,107,21,125,7,146,34,221,69,247,5,139,8,148,6,247,1,143,233,213,139,245,8,150,7,137,165,118,160,112,139,8,111,117,116,112,31,139
,137,139,135,5,83,83,109,84,30,87,139,89,165,138,194,8,143,7,139,186,158,162,165,161,184,177,192,177,139,210,8,222,7,166,116,162
,112,112,116,117,111,30,56,7,139,112,101,116,114,118,8,96,102,102,87,139,64,8,19,244,247,12,248,134,21,47,10,14,247,35,240,47,238
,248,1,247,49,79,119,18,247,5,239,247,192,239,19,44,247,118,249,46,21,48,10,142,253,63,21,111,162,117,166,30,163,139,155,155,146
,159,8,19,76,177,247,18,5,19,156,247,119,130,174,251,9,5,144,119,159,123,161,139,166,139,162,162,139,166,139,144,138,144,138,143
,8,251,78,249,3,5,133,157,121,157,115,139,8,116,6,115,139,123,124,132,121,8,251,78,253,6,5,137,135,139,134,139,134,8,19,76,247,56
,247,103,21,222,247,167,5,19,140,223,251,174,5,205,248,58,21,19,44,48,10,14,140,239,237,239,156,239,247,80,239,1,251,2,178,21,114
,165,115,165,30,163,139,157,157,146,158,8,183,247,64,247,95,139,180,251,52,5,145,118,157,122,164,139,8,247,215,6,166,162,162,166
,166,117,162,111,31,251,177,139,83,247,107,247,233,139,5,167,161,162,166,166,116,162,112,31,252,2,139,90,247,80,248,51,139,5,166
,162,162,166,166,117,162,111,31,252,186,6,115,139,120,122,134,119,8,147,252,4,21,214,247,183,215,251,183,5,14,126,239,248,68,238
,137,247,49,18,247,5,239,47,239,247,175,239,48,239,19,176,247,118,249,46,21,48,10,147,252,56,21,139,251,12,178,46,208,84,172,113
,181,117,198,139,188,139,187,156,176,170,208,195,177,229,139,247,14,139,247,56,63,247,43,251,57,139,116,139,116,136,117,131,8,251
,3,100,76,251,10,139,251,39,8,239,22,241,178,247,6,242,242,177,251,6,37,35,100,251,4,37,30,120,139,124,148,123,142,75,172,111,218
,139,231,8,19,162,247,184,247,255,21,48,10,14,126,239,248,170,239,1,247,10,237,247,186,239,3,247,66,119,21,112,162,116,166,30,157
,139,155,150,148,152,8,191,226,5,175,105,183,119,190,139,247,53,139,224,247,88,140,247,63,8,145,7,139,218,121,218,106,203,8,211,
247,13,5,144,146,141,148,139,148,139,167,117,161,112,139,125,139,126,134,129,130,8,81,44,5,103,172,96,158,87,139,99,139,90,121,109
,115,57,73,95,251,20,139,251,22,139,60,155,59,173,72,8,65,251,15,5,135,131,136,130,139,130,8,247,21,248,10,21,144,7,139,218,161,
222,179,191,157,162,169,164,176,139,171,139,165,124,160,115,8,251,102,251,238,5,128,179,134,181,139,175,8,207,251,119,21,247,102
,247,241,5,150,98,144,96,139,101,139,35,93,251,55,38,139,107,139,113,155,118,163,8,14,126,239,248,222,239,18,247,5,239,39,247,43
,247,89,247,44,39,239,19,228,247,118,247,178,21,251,77,207,251,6,247,74,247,74,207,247,7,247,76,30,247,143,7,166,116,162,112,112
,116,117,111,30,251,143,7,139,103,138,102,130,104,124,77,89,110,64,139,87,139,95,154,115,170,113,173,135,203,139,194,8,247,143,7
,166,116,162,112,112,116,117,111,30,247,78,4,111,161,117,167,30,19,224,189,6,19,208,168,161,161,167,31,19,224,167,116,161,111,30
,89,6,112,116,117,111,31,19,200,247,240,22,112,161,116,167,30,191,6,167,161,162,166,166,116,162,112,31,87,6,112,116,116,112,31,14
,132,239,247,140,247,8,247,105,239,18,247,28,239,247,146,239,62,237,19,248,247,164,176,21,111,162,117,166,166,162,162,166,30,248
,56,7,247,10,146,234,247,12,211,194,105,68,30,139,81,97,92,89,136,114,137,119,118,139,114,8,121,7,112,161,116,165,30,141,139,142
,139,141,139,5,19,244,210,139,172,81,140,72,8,135,7,139,83,118,77,82,138,114,138,116,116,139,113,139,113,164,115,165,139,247,9,142
,195,245,139,247,0,139,218,109,219,79,179,8,19,248,180,175,167,194,139,203,8,142,7,137,247,18,44,216,251,22,139,8,251,76,96,251,
24,251,73,31,14,122,240,247,50,236,244,239,154,247,49,18,247,19,239,139,239,211,239,116,239,19,249,247,146,247,46,21,139,39,230,
75,223,133,145,139,145,138,144,139,202,139,191,165,181,175,8,131,7,111,162,117,166,166,162,162,166,30,247,202,7,139,194,117,193,
99,177,99,176,83,152,84,139,77,139,80,116,89,103,128,131,131,122,139,125,139,111,161,117,167,139,150,139,150,142,148,146,8,170,164
,177,152,179,139,169,139,170,136,161,118,161,119,144,108,142,109,8,251,66,138,251,67,127,139,251,64,8,239,22,37,10,19,244,248,90
,4,49,10,247,64,81,21,50,10,14,124,237,247,45,239,247,0,239,1,103,239,3,67,247,46,21,139,39,230,75,223,133,145,139,145,138,144,139
,203,139,190,166,181,175,8,130,7,111,162,117,166,30,164,139,160,158,143,163,157,125,160,129,162,131,164,131,174,134,175,139,8,217
,224,162,205,166,116,162,111,31,126,139,125,134,129,130,8,137,7,129,125,118,134,122,136,127,137,127,138,128,139,45,139,94,202,130
,229,8,247,211,6,167,161,161,167,247,40,62,247,2,251,45,31,133,6,64,137,81,110,99,92,103,191,71,165,68,139,77,139,78,119,91,100,
127,130,132,125,139,123,139,112,161,116,167,139,150,139,150,142,148,146,8,170,164,177,152,179,139,169,139,170,136,161,118,161,119
,145,108,141,109,251,65,138,251,68,126,139,251,63,8,239,22,214,229,152,229,30,163,139,162,138,161,138,8,99,7,108,89,89,73,64,139
,8,129,6,104,141,91,164,139,182,8,247,248,247,74,21,51,10,14,123,239,247,252,239,154,247,49,1,247,5,239,153,239,210,240,153,239,
3,247,118,247,155,21,42,10,239,22,43,10,153,247,237,21,49,10,247,63,81,21,113,162,116,166,166,163,161,166,30,197,7,166,114,162,113
,113,115,116,112,30,14,123,239,247,252,239,1,247,5,239,247,192,239,3,247,32,116,21,112,162,116,166,30,152,139,152,144,148,149,8,
208,220,5,177,114,185,125,194,139,247,52,139,229,247,15,139,247,48,139,203,124,197,111,185,8,213,227,5,146,148,144,150,139,151,139
,166,117,162,111,139,125,139,127,134,129,130,8,68,57,5,102,164,94,153,85,139,251,55,139,52,251,15,139,251,50,139,76,153,81,167,93
,8,66,52,5,131,130,135,128,139,127,8,247,35,247,178,21,238,187,221,241,30,167,139,163,133,159,128,8,251,101,251,139,5,130,164,135
,167,139,169,8,216,251,54,21,247,101,247,139,5,148,114,144,110,139,108,139,40,92,59,36,139,111,139,114,145,119,150,8,14,123,239,
248,88,119,182,247,49,18,247,19,239,139,239,211,239,139,239,19,242,247,146,247,134,21,139,100,140,100,148,105,163,53,205,81,245,
137,8,143,6,207,139,192,163,180,176,8,131,7,111,162,117,166,165,163,162,166,30,248,85,7,166,115,162,113,112,116,117,111,30,251,151
,7,116,71,90,64,52,139,8,134,6,42,142,128,204,139,244,8,247,121,7,166,115,162,112,113,116,115,113,30,251,121,7,239,247,243,21,49
,10,247,64,81,21,50,10,14,248,60,239,18,247,73,247,172,39,239,19,192,247,254,248,110,21,112,162,116,166,30,19,160,38,10,19,192,39
,10,14,126,239,53,239,247,107,239,247,77,239,59,239,18,58,239,247,186,239,19,166,251,54,247,246,21,140,251,63,226,251,88,247,51,
139,198,139,189,166,177,182,8,133,7,19,118,111,162,117,166,30,247,235,6,166,162,162,166,166,117,162,111,31,251,185,247,107,247,136
,6,167,160,161,167,166,117,162,112,31,251,136,247,77,247,185,6,166,162,162,166,166,117,162,111,31,251,235,6,111,139,119,119,137,
112,8,19,174,100,180,90,165,80,139,8,251,60,60,251,83,251,63,31,239,134,21,145,7,139,217,157,223,181,189,162,166,165,161,177,139
,240,139,184,251,41,140,251,3,8,132,7,138,35,95,251,55,37,139,37,139,95,247,55,138,243,8,14,123,239,247,44,239,247,0,239,1,52,239
,3,251,66,247,155,21,251,50,228,251,13,247,53,30,229,139,206,177,182,201,165,98,177,110,187,123,163,131,174,134,175,139,8,218,224
,162,205,166,116,162,111,31,126,139,124,135,130,129,127,125,123,132,119,136,127,137,127,138,128,139,45,139,94,202,130,229,8,247,
211,6,167,161,161,167,247,40,62,247,2,251,45,31,133,6,54,137,76,102,99,80,97,199,72,177,51,139,8,251,55,52,251,15,251,50,31,239,
22,238,187,221,241,240,188,58,39,40,91,59,37,37,91,219,238,30,248,43,212,21,51,10,14,251,71,239,248,139,239,18,247,102,247,138,39
,239,19,208,247,198,251,21,21,111,162,117,166,30,177,139,209,139,145,141,239,162,178,229,139,247,13,8,19,224,41,10,19,208,235,252
,3,6,139,107,139,99,129,117,122,101,106,134,97,139,123,139,122,140,121,139,8,111,117,117,111,31,14,247,5,248,53,21,36,10,14,248,
196,118,1,247,118,250,12,21,139,130,142,129,144,131,8,247,97,251,201,5,149,130,153,135,152,139,152,139,152,143,148,139,8,247,94,
247,195,5,146,149,145,150,139,151,139,166,117,162,111,139,126,139,127,133,129,130,8,251,57,251,73,251,57,247,74,5,130,149,126,143
,126,139,8,111,117,117,111,31,14,249,33,239,1,247,5,239,247,192,239,3,247,118,250,9,21,149,251,23,247,1,38,247,23,139,247,23,139
,247,1,240,149,247,23,8,142,7,166,117,162,111,30,112,139,118,119,137,113,133,61,74,78,60,139,60,139,74,200,133,217,137,164,118,160
,112,139,8,111,117,117,111,31,14,248,112,247,37,1,247,182,247,38,3,248,216,248,162,21,47,10,14,248,171,239,125,240,127,119,18,139
,238,247,166,238,19,88,247,19,248,233,21,44,10,19,184,45,10,19,88,46,10,14,161,118,248,128,247,112,39,239,18,247,33,239,247,164,
239,19,184,247,174,190,21,112,162,116,166,166,162,161,167,30,248,198,247,164,69,7,19,216,111,161,117,167,167,161,162,166,30,247,
12,7,166,116,162,112,30,19,184,252,8,6,112,116,116,112,31,14,126,239,247,109,239,247,109,239,1,247,8,239,179,247,106,179,239,3,20
,252,247,124,247,246,21,35,10,239,135,21,144,7,139,236,170,236,198,186,154,151,160,148,160,139,8,243,182,251,47,251,4,35,93,251,
55,38,31,37,139,95,247,55,138,243,8,179,22,111,162,117,166,30,247,6,6,166,162,162,166,166,117,162,111,31,251,6,6,111,117,117,111
,31,14,249,87,119,1,247,33,247,50,247,20,247,49,3,247,174,179,21,112,162,116,166,30,197,6,166,162,162,166,31,139,154,132,153,127
,148,8,222,247,249,222,251,249,5,127,130,132,125,139,124,8,112,162,116,166,30,196,6,166,162,161,167,31,139,163,122,157,117,145,8
,251,25,248,216,5,134,160,120,157,114,139,116,139,118,122,134,117,8,251,28,252,216,5,118,133,123,119,139,117,8,14,140,239,247,107
,239,247,77,239,1,247,140,190,21,52,10,248,236,4,52,10,199,251,177,21,112,161,116,167,30,247,149,6,167,161,161,167,167,116,161,112
,31,251,149,6,112,116,116,112,31,14,248,249,239,1,247,33,239,247,135,239,3,247,118,249,43,21,139,119,150,122,156,131,8,252,214,7
,112,162,116,166,166,162,161,167,30,248,209,247,135,252,209,7,112,162,116,166,166,162,161,167,30,248,214,7,156,147,151,156,139,159
,8,166,116,162,112,30,252,36,6,112,116,117,111,31,14,140,239,39,247,21,248,79,247,20,39,239,18,19,128,247,210,190,21,111,162,117
,166,30,19,64,247,234,6,166,162,161,167,31,168,7,167,116,161,112,30,19,144,120,139,121,127,131,122,8,251,118,139,226,247,125,5,141
,144,140,145,139,145,139,145,138,145,139,145,8,52,247,124,247,118,139,5,19,32,147,123,156,127,159,139,8,167,161,161,167,31,167,7
,167,117,161,111,30,19,144,251,234,6,111,117,117,111,31,139,133,140,133,141,134,8,244,251,175,34,251,174,5,137,133,138,133,139,133
,8,14,248,216,237,1,247,205,239,3,247,204,248,207,21,111,162,117,166,30,152,139,152,145,148,148,152,152,139,170,161,139,8,144,6,
165,134,145,107,139,110,8,252,113,7,111,162,117,166,166,162,162,166,30,248,113,7,139,168,145,170,165,145,8,143,6,150,139,148,132
,141,128,143,117,159,120,164,139,8,166,161,162,166,31,148,7,128,202,86,174,84,139,108,139,108,128,114,116,114,162,108,150,108,139
,84,139,85,104,128,76,8,14,127,242,18,247,5,239,210,247,49,251,20,239,239,239,19,216,247,118,247,155,21,139,251,32,210,251,4,247
,21,116,8,110,7,19,232,122,131,127,122,139,119,8,112,162,116,166,30,196,6,166,162,161,167,31,19,216,139,159,128,156,122,147,8,168
,7,247,20,162,211,247,5,139,247,31,139,247,32,66,247,5,251,19,163,8,168,7,19,232,155,147,151,156,139,159,8,167,117,161,111,30,82
,6,111,117,116,112,31,19,216,139,120,151,121,156,131,8,110,7,251,19,112,66,36,139,251,39,8,239,22,139,204,161,199,181,169,149,146
,152,143,152,144,8,251,235,7,71,161,107,208,139,220,8,247,92,251,64,21,247,237,7,206,117,172,70,139,57,139,58,107,70,71,117,8,14
,247,205,239,196,239,3,247,204,248,207,21,147,251,38,5,152,251,52,142,251,121,247,25,95,8,90,7,111,162,117,166,166,162,162,166,30
,188,7,235,174,170,247,28,151,247,10,8,157,247,182,139,142,5,165,116,160,112,30,112,139,118,118,137,113,134,42,133,45,130,46,135
,91,133,58,112,94,8,248,106,7,166,116,162,112,112,116,117,111,30,252,106,7,112,183,133,220,135,188,131,232,132,233,134,236,137,165
,118,160,112,139,8,111,117,117,111,31,14,249,101,239,18,247,6,238,125,247,20,211,247,20,126,235,19,192,247,120,248,201,21,139,107
,143,106,146,104,165,251,24,169,251,23,173,251,22,8,19,160,129,130,133,125,139,124,8,111,162,117,166,30,167,6,166,162,162,166,31
,139,144,138,144,138,143,100,247,36,105,247,37,110,247,39,8,19,200,134,165,134,165,139,166,8,145,7,141,225,200,205,226,139,232,139
,197,66,139,48,139,117,135,115,132,116,8,19,144,35,252,78,139,127,5,111,162,117,166,30,167,6,166,162,162,166,31,139,154,132,152,
128,149,8,230,248,26,5,19,200,146,169,142,168,139,167,139,247,43,44,247,13,251,44,139,72,139,74,115,92,91,8,89,89,119,77,139,67,
8,14,249,81,119,1,247,205,239,3,247,232,248,145,21,112,161,116,167,30,152,139,152,144,148,148,8,197,196,139,252,126,5,111,162,117
,166,166,162,162,166,30,139,248,126,196,82,5,149,130,151,134,153,139,167,139,161,162,139,166,139,152,133,151,130,149,8,251,35,247
,35,5,130,148,126,144,126,139,124,139,127,134,130,139,8,251,34,251,35,5,129,129,134,127,139,126,8,14,249,81,119,1,247,205,239,3,
247,232,247,75,21,139,126,144,126,149,129,8,247,34,251,34,5,149,129,152,134,152,139,152,139,152,144,148,139,8,247,35,247,34,5,148
,149,145,152,139,152,139,166,116,162,112,139,125,139,127,134,129,129,8,82,82,139,248,126,5,166,117,162,111,111,117,117,111,30,139
,252,126,81,196,5,130,149,126,144,126,139,8,112,116,116,112,31,14,129,239,248,253,119,1,247,172,179,21,114,162,114,167,30,247,235
,6,166,163,162,166,31,251,66,249,10,5,133,159,119,156,117,139,117,139,117,123,134,118,8,83,252,216,21,244,248,16,244,252,16,5,14
,247,17,4,247,142,251,17,247,142,247,17,139,247,142,251,142,247,17,251,142,251,17,5,14,14,248,137,247,78,1,247,205,239,3,249,6,248
,187,21,111,162,117,166,166,162,162,166,30,225,7,166,116,162,112,112,116,117,111,30,14,248,137,247,78,1,247,151,247,46,3,248,154
,249,17,21,139,130,141,129,144,131,8,200,45,5,149,130,152,133,152,139,166,139,162,162,139,166,139,149,136,148,134,147,8,79,234,5
,132,150,123,142,126,139,112,139,116,117,139,111,8,14,248,232,247,66,1,247,111,239,227,239,3,248,74,249,26,21,111,161,117,167,167
,161,162,166,30,213,7,166,116,162,112,112,116,117,111,30,247,80,65,21,112,161,116,167,167,161,162,166,30,213,7,166,116,162,112,112
,116,116,112,30,14,146,239,3,153,68,21,112,161,116,167,167,161,162,166,30,249,94,7,166,116,162,112,112,116,116,112,30,14,249,103
,20,139,21,121,156,248,173,147,247,49,159,188,142,6,251,76,140,7,30,10,3,150,37,255,12,9,155,12,10,239,10,239,167,157,150,156,145
,145,150,162,239,12,12,239,11,239,167,157,147,143,155,173,145,168,247,3,12,13,30,10,6,255,12,18,28,0,70,19,0,21,2,0,1,0,28,0,50,
0,79,0,124,0,195,0,226,0,241,1,2,1,29,1,50,1,80,1,98,1,129,1,180,1,194,1,221,1,242,2,7,2,28,2,42,2,68,112,162,116,166,30,185,6,166
,162,162,166,31,185,7,166,116,162,112,30,93,6,112,116,116,112,31,11,111,161,117,167,167,161,162,166,30,248,27,7,166,116,162,112,
112,116,117,111,30,11,111,161,117,167,30,247,0,6,167,161,162,166,31,219,7,166,116,162,112,30,251,0,6,112,116,117,111,31,11,140,251
,63,226,251,88,247,51,139,247,53,139,224,247,88,140,247,63,8,142,7,247,70,51,247,78,251,51,30,99,139,90,122,109,114,59,74,91,251
,14,139,251,26,8,11,111,162,117,166,30,152,139,152,144,148,149,8,247,56,247,66,247,57,251,66,5,149,129,152,134,152,139,166,139,162
,162,139,166,139,149,136,149,133,147,8,251,97,247,200,5,131,150,123,142,126,139,126,139,126,135,129,139,8,251,97,251,200,5,134,131
,136,129,139,129,8,11,214,229,152,229,30,163,139,162,138,161,138,8,99,7,107,87,87,75,64,139,8,131,6,105,141,91,164,139,182,8,11,
247,22,252,23,6,112,162,116,166,166,162,161,167,30,11,248,73,7,167,117,161,111,30,251,72,6,111,117,116,112,31,11,111,162,117,166
,30,184,6,166,162,161,167,31,185,7,167,116,161,112,30,94,6,112,116,117,111,31,11,248,53,7,166,117,162,111,30,251,38,6,111,117,116
,112,112,162,116,166,31,11,251,50,228,251,13,247,53,247,52,229,247,15,247,48,247,50,47,247,15,251,50,251,55,52,251,15,251,50,30,
11,238,187,221,241,240,188,58,39,40,92,59,36,36,92,219,238,30,11,112,162,116,166,30,163,139,160,157,143,161,145,164,153,148,155,
139,163,139,168,121,157,125,172,114,175,115,181,135,8,11,144,139,143,138,144,139,206,139,198,187,152,206,140,142,140,143,139,142
,139,166,115,162,113,139,116,139,117,121,135,117,134,113,126,130,122,139,8,115,139,109,158,121,153,106,164,102,163,98,143,8,11,134
,139,135,140,134,139,72,139,79,91,125,72,8,11,112,161,116,167,30,185,6,167,161,162,166,31,184,7,166,117,162,111,30,93,6,111,117,
116,112,31,11,111,161,117,167,167,161,162,166,30,196,7,166,116,162,112,112,116,117,111,30,11,113,162,116,166,166,162,162,165,30,
197,7,166,116,162,112,112,116,116,112,30,11,112,161,117,167,166,162,162,165,30,197,7,166,115,162,113,112,116,117,111,30,11,155,201
,181,185,209,139,226,139,167,99,154,71,8,11,112,162,116,166,30,248,13,6,166,162,161,167,167,117,161,111,31,252,13,6,111,117,116,
112,31,11,0,0,0,0,1,0,0,0,14,0,0,0,24,0,0,0,0,0,2,0,1,0,1,0,144,0,1,0,4,0,0,0,2,0,0,0,1,0,0,0,10,0,64,0,142,0,2,68,70,76,84,0,14
,108,97,116,110,0,34,0,4,0,0,0,0,255,255,0,5,0,0,0,1,0,2,0,3,0,4,0,4,0,0,0,0,255,255,0,5,0,0,0,1,0,2,0,3,0,4,0,5,97,97,108,116,0
,32,115,115,48,49,0,38,115,115,48,50,0,44,115,115,48,51,0,50,115,115,48,52,0,56,0,0,0,1,0,0,0,24,0,1,0,1,0,22,0,1,0,2,0,20,0,1,0
,3,0,18,0,1,0,4,0,0,1,0,0,0,1,1,0,0,1,2,0,0,1,3,0,5,0,12,0,20,0,28,0,36,0,44,0,3,0,0,0,1,0,40,0,1,0,0,0,1,0,82,0,1,0,0,0,1,0,86,
0,1,0,0,0,1,0,90,0,1,0,0,0,1,0,94,0,1,0,38,0,4,0,14,0,20,0,26,0,32,0,2,0,3,0,143,0,2,0,8,0,141,0,2,0,65,0,142,0,2,0,93,0,144,0,1
,0,4,0,3,0,8,0,65,0,93,0,1,0,6,0,77,0,1,0,1,0,65,0,1,0,6,0,140,0,1,0,1,0,3,0,1,0,6,0,133,0,1,0,1,0,8,0,1,0,6,0,51,0,1,0,1,0,93,0
,1,0,0,0,10,0,44,0,46,0,2,68,70,76,84,0,14,108,97,116,110,0,24,0,4,0,0,0,0,255,255,0,0,0,4,0,0,0,0,255,255,0,0,0,0,0,0,0,0,0,1,0
,0,0,0,204,61,162,207,0,0,0,0,204,138,51,83,0,0,0,0,211,135,133,166,2,211,0,0,2,211,0,0,2,211,1,34,2,211,0,161,2,211,0,113,2,211
,0,113,2,211,0,113,2,211,0,113,2,211,1,20,2,211,1,0,2,211,0,181,2,211,0,113,2,211,0,113,2,211,0,159,2,211,0,113,2,211,0,241,2,211
,0,173,2,211,0,113,2,211,0,144,2,211,0,130,2,211,0,113,2,211,0,113,2,211,0,139,2,211,0,113,2,211,0,113,2,211,0,113,2,211,0,113,2
,211,1,3,2,211,0,156,2,211,0,113,2,211,0,113,2,211,0,113,2,211,0,141,2,211,0,113,2,211,0,119,2,211,0,113,2,211,0,161,2,211,0,164
,2,211,0,159,2,211,0,210,2,211,0,121,2,211,0,141,2,211,0,170,2,211,0,130,2,211,0,127,2,211,0,141,2,211,0,113,2,211,0,127,2,211,0
,116,2,211,0,141,2,211,0,115,2,211,0,153,2,211,0,147,2,211,0,113,2,211,0,127,2,211,0,112,2,211,0,113,2,211,0,133,2,211,0,136,2,211
,0,141,2,211,0,210,2,211,0,173,2,211,0,130,2,211,0,113,2,211,0,113,2,211,1,3,2,211,0,127,2,211,0,124,2,211,0,167,2,211,0,113,2,211
,0,127,2,211,0,147,2,211,0,116,2,211,0,156,2,211,0,181,2,211,0,153,2,211,0,173,2,211,0,253,2,211,0,113,2,211,0,127,2,211,0,113,2
,211,0,124,2,211,0,113,2,211,0,204,2,211,0,153,2,211,0,127,2,211,0,127,2,211,0,116,2,211,0,115,2,211,0,147,2,211,0,113,2,211,0,147
,2,211,0,113,2,211,1,57,2,211,0,113,2,211,0,127,2,211,2,68,2,211,0,226,2,211,0,242,2,211,1,198,0,0,249,67,2,11,255,56,2,211,0,254
,2,114,2,90,1,84,0,226,255,146,0,226,0,174,0,226,1,16,0,254,255,184,0,226,0,140,0,254,1,106,255,94,255,82,1,50,0,113,0,226,0,226
,2,68,0,127,1,26,0,232,1,26,0,248,0,226,1,62,1,56,0,226,1,56,0,228,1,84,1,84,1,24,0,0,0,0,2,114,2,6,1,182,0,14]);Module["FS_createDataFile
"]("/","OCRB.otf",fileData1,true,true)}if(Module["calledRun"]){runWithFS()}else{if(!Module[
x22;preRun"])Module["preRun"]=[];Module["preRun"].push(runWithFS)}});loadPackage({"files":[]})}))();
var Module;if(!Module)Module=(typeof Module!=="undefined"?Module:null)||{};var moduleOverrides={};for(var key in Module
){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;
var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"
;]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER
=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"
;]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("The provided Module['ENVIRONMENT'] value
is not valid. It must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER
=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require===
x22;function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&
;&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["
;print"]=console.log;if(!Module["printErr"])Module["printErr"]=console.warn;var nodeFS;var nodePath;Module
["read"]=function read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("
path");filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);if(!ret&
x26;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){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(
ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process
["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function read(){throw"no read() available (jsc?)"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}}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};Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response)}else{onerror()}};xhr.onerror=onerror;xhr.send(null)};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.warn(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&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"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var Runtime={setTempRet0:(function(value){tempRet0=value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),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}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)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),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}),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[sig]){Runtime.funcWrappers[sig]={}}var sigCache=Runtime.funcWrappers[sig];if(!sigCache[func]){sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func,arguments)}}return sigCache[func]}),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+15&-16;return ret}),staticAlloc:(function(size){var ret=STATICTOP;STATICTOP=STATICTOP+size|0;STATICTOP=STATICTOP+15&-16;return ret}),dynamicAlloc:(function(size){var ret=DYNAMICTOP;DYNAMICTOP=DYNAMICTOP+size|0;DYNAMICTOP=DYNAMICTOP+15&-16;if(DYNAMICTOP>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){DYNAMICTOP=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module["Runtime"]=Runtime;var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];if(!func){try{func=eval("_"+ident)}catch(e){}}assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)");return func}var cwrap,ccall;((function(){var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"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){ret=Runtime.stackAlloc((str.length<<2)+1);writeStringToMemory(str,ret)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;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){if(opts&&opts.async){EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(stack)}));return}Runtime.stackRestore(stack)}return ret};var sourceRegex=/^function\s*[a-zA-Z$_0-9]*\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/;function parseJSFunc(jsfunc){var parsed=jsfunc.toString().match(sourceRegex).slice(1);return{arguments:parsed[0],body:parsed[1],returnValue:parsed[2]}}var JSsource=null;function ensureJSsource(){if(!JSsource){JSsource={};for(var fun in JSfuncs){if(JSfuncs.hasOwnProperty(fun)){JSsource[fun]=parseJSFunc(JSfuncs[fun])}}}}cwrap=function cwrap(ident,returnType,argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident);var numericArgs=argTypes.every((function(type){return type==="number"}));var numericRet=returnType!=="string";if(numericRet&&numericArgs){return cfunc}var argNames=argTypes.map((function(x,i){return"$"+i}));var funcstr="(function("+argNames.join(",")+") {";var nargs=argTypes.length;if(!numericArgs){ensureJSsource();funcstr+="var stack = "+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"];funcstr+="var "+convertCode.arguments+" = "+arg+";";funcstr+=convertCode.body+";";funcstr+=arg+"=("+convertCode.returnValue+");"}}var cfuncname=parseJSFunc((function(){return cfunc})).returnValue;funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");";if(!numericRet){var strgfy=parseJSFunc((function(){return Pointer_stringify})).returnValue;funcstr+="ret = "+strgfy+"(ret);"}if(!numericArgs){ensureJSsource();funcstr+=JSsource["stackRestore"].body.replace("()","(stack)")+";"}funcstr+="return ret})";return eval(funcstr)}}))();Module["ccall"]=ccall;Module["cwrap"]=cwrap;function setValue(ptr,value,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";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?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}Module["setValue"]=setValue;function getValue(ptr,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";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;var ALLOC_STACK=1;var ALLOC_STATIC=2;var ALLOC_DYNAMIC=3;var ALLOC_NONE=4;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;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:Runtime.staticAlloc,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";setValue(ret+i,curr,type);if(previousType!==type){typeSize=Runtime.getNativeTypeSize(type);previousType=type}i+=typeSize}return ret}Module["allocate"]=allocate;function getMemory(size){if(!staticSealed)return Runtime.staticAlloc(size);if(typeof _sbrk!=="undefined"&&!_sbrk.called||!runtimeInitialized)return Runtime.dynamicAlloc(size);return _malloc(size)}Module["getMemory"]=getMemory;function Pointer_stringify(ptr,length){if(length===0||!ptr)return"";var hasUtf=0;var t;var i=0;while(1){t=HEAPU8[ptr+i>>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module["UTF8ToString"](ptr)}Module["Pointer_stringify"]=Pointer_stringify;function AsciiToString(ptr){var str="";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module["AsciiToString"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module["stringToAscii"]=stringToAscii;function UTF8ArrayToString(u8Array,idx){var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}Module["UTF8ArrayToString"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module["UTF8ToString"]=UTF8ToString;function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}Module["stringToUTF8Array"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}Module["stringToUTF8"]=stringToUTF8;function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}Module["lengthBytesUTF8"]=lengthBytesUTF8;function demangle(func){var hasLibcxxabi=!!Module["___cxa_demangle"];if(hasLibcxxabi){try{var buf=_malloc(func.length);writeStringToMemory(func.substr(1),buf);var status=_malloc(4);var ret=Module["___cxa_demangle"](buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){return func}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}}Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");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 jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module["stackTrace"]=stackTrace;var PAGE_SIZE=4096;function alignMemoryPage(x){if(x%4096>0){x+=4096-x%4096}return x}var HEAP;var buffer;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE=0,STATICTOP=0,staticSealed=false;var STACK_BASE=0,STACKTOP=0,STACK_MAX=0;var DYNAMIC_BASE=0,DYNAMICTOP=0;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;var totalMemory=64*1024;while(totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK){if(totalMemory<16*1024*1024){totalMemory*=2}else{totalMemory+=16*1024*1024}}if(totalMemory!==TOTAL_MEMORY){TOTAL_MEMORY=totalMemory}if(Module["buffer"]){buffer=Module["buffer"]}else{buffer=new ArrayBuffer(TOTAL_MEMORY)}updateGlobalBufferViews();HEAP32[0]=255;if(HEAPU8[0]!==255||HEAPU8[3]!==0)throw"Typed arrays 2 must be run on a little-endian system";Module["HEAP"]=HEAP;Module["buffer"]=buffer;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__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}Module["addOnPreRun"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}Module["intArrayToString"]=intArrayToString;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++>>0]=array[i]}}Module["writeArrayToMemory"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}Module["writeAsciiToMemory"]=writeAsciiToMemory;if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];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;var Math_clz32=Math.clz32;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}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()}}}Module["removeRunDependency"]=removeRunDependency;Module["preloadedImages"]={};Module["preloadedAudios"]={};var ASM_CONSTS=[];STATIC_BASE=8;STATICTOP=STATIC_BASE+75136;__ATINIT__.push();allocate([90,0,0,0,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,1,0,0,124,2,0,0,68,11,0,0,80,15,0,0,116,15,0,0,188,15,0,0,100,16,0,0,160,16,0,0,220,16,0,0,216,19,0,0,24,20,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,8,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,89,111,63,0,0,0,45,0,167,144,26,0,71,9,14,0,1,32,7,0,139,147,3,0,56,202,1,0,42,229,0,0,151,114,0,0,76,57,0,0,166,28,0,0,83,14,0,0,41,7,0,0,149,3,0,0,202,1,0,0,229,0,0,0,115,0,0,0,57,0,0,0,29,0,0,0,14,0,0,0,7,0,0,0,4,0,0,0,2,0,0,0,1,0,0,0,1,5,0,0,84,0,0,0,249,40,0,0,0,0,1,0,0,0,2,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,56,3,0,0,48,1,0,0,160,0,0,0,10,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,11,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,12,0,0,0,2,0,0,0,3,0,0,0,213,43,0,0,2,41,0,0,11,41,0,0,164,1,0,0,49,41,0,0,184,1,0,0,65,41,0,0,188,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,4,0,0,0,88,240,188,5,228,2,0,0,241,59,35,40,196,135,0,0,234,161,68,163,225,1,0,0,88,240,188,5,228,2,0,0,241,59,35,40,196,135,0,0,235,161,68,163,225,1,0,0,212,234,229,17,80,3,0,0,59,202,48,90,99,144,0,0,2,38,164,19,126,0,0,0,252,255,251,255,8,0,0,0,184,72,158,156,162,190,0,0,18,1,2,112,8,0,0,0,252,255,251,255,8,0,0,0,131,4,90,10,57,124,1,0,18,1,2,112,8,0,0,0,0,0,0,0,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,0,1,0,0,0,64,0,0,0,1,0,0,0,1,0,0,0,68,0,0,0,0,0,0,0,0,0,0,0,9,0,3,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,1,5,0,0,44,0,0,0,209,43,0,0,0,0,1,0,0,0,2,0,0,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,56,3,0,0,48,0,0,0,172,0,0,0,13,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,11,0,0,0,1,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,6,0,0,0,7,0,0,0,213,43,0,0,230,43,0,0,234,43,0,0,28,3,0,0,92,44,0,0,44,3,0,0,113,44,0,0,48,3,0,0,162,44,0,0,56,3,0,0,250,43,0,0,140,3,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,10,0,0,0,20,0,0,0,9,0,0,0,8,0,0,0,11,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,10,0,0,0,9,0,0,0,13,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,15,0,0,0,5,0,0,0,4,0,0,0,0,16,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,16,0,0,4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,17,0,0,8,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,2,16,0,0,12,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,16,0,0,16,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,16,0,0,20,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,1,17,0,0,24,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,17,0,0,28,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,17,0,0,32,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,17,0,0,36,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,17,0,0,40,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,6,17,0,0,44,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,7,17,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,13,16,0,0,76,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,5,16,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,17,0,0,96,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,15,16,0,0,100,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,16,16,0,0,104,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,17,16,0,0,108,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,18,16,0,0,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,20,17,0,0,120,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,21,17,0,0,124,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,30,17,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,31,17,0,0,140,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,17,0,0,144,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,33,17,0,0,148,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,34,17,0,0,152,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,35,17,0,0,156,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,36,17,0,0,160,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,37,17,0,0,164,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,38,17,0,0,168,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,6,32,0,0,4,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,6,0,0,0,7,32,0,0,60,0,0,0,4,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,6,0,0,0,8,32,0,0,100,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,2,0,0,0,6,0,0,0,9,32,0,0,156,0,0,0,4,0,0,0,0,0,0,0,10,0,0,0,3,0,0,0,3,0,0,0,9,33,0,0,196,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,33,0,0,200,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,33,0,0,204,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,32,0,0,208,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,32,0,0,212,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,12,33,0,0,220,0,0,0,4,0,0,0,0,0,0,0,13,0,0,0,216,0,0,0,6,0,0,0,13,33,0,0,16,1,0,0,4,0,0,0,0,0,0,0,13,0,0,0,217,0,0,0,5,0,0,0,14,33,0,0,68,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,15,33,0,0,72,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,16,33,0,0,76,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,17,33,0,0,80,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,18,33,0,0,84,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,19,33,0,0,88,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,19,32,0,0,92,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,20,32,0,0,96,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,21,32,0,0,100,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5,0,202,154,59,24,0,0,0,16,0,0,0,0,0,0,0,17,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,19,0,0,0,20,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,21,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,23,0,0,0,24,0,0,0,56,0,0,0,25,0,0,0,0,0,0,0,26,0,0,0,27,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,28,0,0,0,29,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,30,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,32,0,0,0,33,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,34,0,0,0,35,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,36,0,0,0,37,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,38,0,0,0,39,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,40,0,0,0,41,0,0,0,44,0,0,0,42,0,0,0,0,0,0,0,43,0,0,0,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,45,0,0,0,46,0,0,0,44,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,50,0,0,0,51,0,0,0,40,0,0,0,52,0,0,0,10,0,0,0,53,0,0,0,54,0,0,0,7,0,0,0,6,0,0,0,55,0,0,0,7,0,0,0,8,0,0,0,14,0,0,0,56,0,0,0,57,0,0,0,0,0,0,0,20,0,0,0,76,44,0,0,0,0,1,0,0,0,2,0,104,11,0,0,0,0,0,0,0,0,0,0,58,0,0,0,8,0,0,0,15,0,0,0,16,0,0,0,11,0,0,0,58,0,0,0,17,0,0,0,9,0,0,0,9,0,0,0,59,0,0,0,10,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,12,0,0,0,65,0,0,0,13,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,10,0,0,0,70,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,14,0,0,0,12,0,0,0,15,0,0,0,13,0,0,0,71,0,0,0,14,0,0,0,72,0,0,0,15,0,0,0,73,0,0,0,16,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,112,9,0,0,164,9,0,0,216,9,0,0,12,10,0,0,64,10,0,0,116,10,0,0,168,10,0,0,220,10,0,0,16,11,0,0,0,0,0,0,2,0,0,0,255,255,255,255,99,105,110,117,0,0,0,0,255,255,255,255,99,105,110,117,1,0,0,0,0,0,0,0,110,109,114,97,3,0,0,0,0,0,0,0,98,109,121,115,3,0,0,0,10,0,0,0,99,105,110,117,3,0,0,0,1,0,0,0,99,105,110,117,3,0,0,0,2,0,0,0,115,105,106,115,3,0,0,0,3,0,0,0,32,32,98,103,3,0,0,0,4,0,0,0,53,103,105,98,3,0,0,0,5,0,0,0,115,110,97,119,3,0,0,0,6,0,0,0,97,104,111,106,81,44,0,0,228,12,0,0,92,44,0,0,240,12,0,0,113,44,0,0,244,12,0,0,124,44,0,0,252,12,0,0,162,44,0,0,4,13,0,0,0,0,0,0,0,0,0,0,17,0,0,0,74,0,0,0,19,0,0,0,15,0,0,0,11,0,0,0,75,0,0,0,18,0,0,0,19,0,0,0,76,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,77,0,0,0,78,0,0,0,1,0,0,0,72,13,0,0,64,3,0,0,79,0,0,0,1,0,0,0,0,0,0,0,80,0,0,0,20,0,0,0,32,0,0,0,127,0,0,0,160,0,0,0,255,0,0,0,0,1,0,0,127,1,0,0,128,1,0,0,79,2,0,0,80,2,0,0,175,2,0,0,176,2,0,0,255,2,0,0,0,3,0,0,111,3,0,0,112,3,0,0,255,3,0,0,0,4,0,0,255,4,0,0,0,5,0,0,47,5,0,0,0,29,0,0,127,29,0,0,128,29,0,0,191,29,0,0,192,29,0,0,255,29,0,0,0,30,0,0,255,30,0,0,0,31,0,0,255,31,0,0,0,32,0,0,111,32,0,0,112,32,0,0,159,32,0,0,160,32,0,0,207,32,0,0,80,33,0,0,143,33,0,0,96,36,0,0,255,36,0,0,96,44,0,0,127,44,0,0,224,45,0,0,255,45,0,0,64,166,0,0,159,166,0,0,32,167,0,0,255,167,0,0,0,251,0,0,6,251,0,0,0,212,1,0,255,215,1,0,0,0,0,0,0,0,0,0,99,105,110,117,110,109,114,97,66,79,68,65,49,116,97,108,0,0,0,0,2,0,0,0,84,14,0,0,64,3,0,0,81,0,0,0,2,0,0,0,0,0,0,0,82,0,0,0,21,0,0,0,128,46,0,0,255,46,0,0,0,47,0,0,223,47,0,0,0,48,0,0,63,48,0,0,64,48,0,0,159,48,0,0,160,48,0,0,255,48,0,0,0,49,0,0,47,49,0,0,48,49,0,0,143,49,0,0,160,49,0,0,191,49,0,0,192,49,0,0,239,49,0,0,240,49,0,0,255,49,0,0,0,50,0,0,255,50,0,0,0,51,0,0,255,51,0,0,0,52,0,0,191,77,0,0,192,77,0,0,255,77,0,0,0,78,0,0,255,159,0,0,0,249,0,0,255,250,0,0,48,254,0,0,79,254,0,0,0,255,0,0,239,255,0,0,0,0,2,0,223,166,2,0,0,248,2,0,31,250,2,0,0,0,0,0,0,0,0,0,3,0,0,0,28,15,0,0,64,3,0,0,83,0,0,0,3,0,0,0,0,0,0,0,84,0,0,0,22,0,0,0,0,9,0,0,255,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,8,13,0,0,40,13,0,0,52,14,0,0,252,14,0,0,0,0,0,0,4,0,0,0,204,0,0,0,249,44,0,0,0,0,1,0,0,0,2,0,44,15,0,0,16,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,176,0,0,0,4,45,0,0,0,0,1,0,0,0,2,0,152,15,0,0,17,0,0,0,18,0,0,0,0,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,108,116,117,111,85,0,0,0,1,0,0,0,2,0,0,0,86,0,0,0,19,0,0,0,2,0,0,0,72,0,0,0,13,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,12,0,0,0,13,0,0,0,3,0,0,0,23,0,0,0,164,15,0,0,2,0,0,0,72,0,0,0,21,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,12,0,0,0,13,0,0,0,3,0,0,0,23,0,0,0,164,15,0,0,108,116,117,111,87,0,0,0,4,0,0,0,0,0,0,0,88,0,0,0,20,0,0,0,89,0,0,0,90,0,0,0,24,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,72,0,0,0,29,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,15,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,2,0,0,0,72,0,0,0,36,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,17,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,2,0,0,0,72,0,0,0,47,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,18,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,26,0,0,0,21,0,0,0,19,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,23,0,0,0,91,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,4,0,0,0,2,0,0,0,22,0,0,0,23,0,0,0,1,0,0,0,26,0,0,0,92,0,0,0,3,0,0,0,28,0,0,0,24,0,0,0,29,0,0,0,27,0,0,0,1,0,0,0,28,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,5,0,0,0,4,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,4,0,0,0,2,0,0,0,2,0,0,0,6,0,0,0,4,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,6,0,0,0,2,0,0,0,6,0,0,0,2,0,0,0,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,21,0,0,0,29,0,0,0,25,0,0,0,204,45,0,0,213,45,0,0,223,45,0,0,232,45,0,0,234,45,0,0,249,45,0,0,8,46,0,0,29,46,0,0,31,46,0,0,34,46,0,0,37,46,0,0,47,46,0,0,57,46,0,0,70,46,0,0,81,46,0,0,91,46,0,0,106,46,0,0,114,46,0,0,129,46,0,0,143,46,0,0,156,46,0,0,171,46,0,0,183,46,0,0,196,46,0,0,209,46,0,0,217,46,0,0,228,46,0,0,237,46,0,0,246,46,0,0,255,46,0,0,10,47,0,0,20,47,0,0,33,47,0,0,42,47,0,0,54,47,0,0,57,47,0,0,61,47,0,0,65,47,0,0,69,47,0,0,71,47,0,0,85,47,0,0,97,47,0,0,99,47,0,0,106,47,0,0,110,47,0,0,120,47,0,0,137,47,0,0,153,47,0,0,187,45,0,0,168,47,0,0,182,47,0,0,197,47,0,0,213,47,0,0,229,47,0,0,244,47,0,0,250,47,0,0,0,48,0,0,10,48,0,0,28,48,0,0,47,48,0,0,50,48,0,0,58,48,0,0,66,48,0,0,68,48,0,0,71,48,0,0,75,48,0,0,79,48,0,0,82,48,0,0,86,48,0,0,90,48,0,0,93,48,0,0,96,48,0,0,103,48,0,0,116,48,0,0,32,0,0,0,26,0,0,0,30,0,0,0,93,0,0,0,94,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,27,0,0,0,30,0,0,0,93,0,0,0,94,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,0,0,0,28,0,0,0,31,0,0,0,95,0,0,0,96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,29,0,0,0,32,0,0,0,97,0,0,0,98,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,19,0,0,80,19,0,0,120,19,0,0,160,19,0,0,0,0,0,0,20,0,0,0,129,48,0,0,0,0,2,0,0,0,2,0,252,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,0,0,40,17,0,0,92,17,0,0,124,17,0,0,6,0,0,0,200,19,0,0,244,17,0,0,0,0,0,0,20,0,0,0,135,48,0,0,0,0,1,0,0,0,2,0,60,20,0,0,0,0,0,0,0,0,0,0,99,0,0,0,30,0,0,0,2,0,0,0,100,0,0,0,101,0,0,0,31,0,0,0,32,0,0,0,120,25,0,0,214,37,0,0,0,0,0,0,6,0,0,0,12,0,0,0,21,0,0,0,28,0,0,0,35,0,0,0,38,0,0,0,53,0,0,0,59,0,0,0,72,0,0,0,148,3,0,0,169,3,0,0,21,34,0,0,173,0,0,0,201,2,0,0,188,3,0,0,25,34,0,0,160,0,0,0,26,2,0,0,27,2,0,0,91,21,1,0,60,20,0,0,0,0,0,0,0,0,0,0,192,20,0,0,5,0,0,0,0,0,0,0,0,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,32,0,0,0,120,33,1,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,20,0,0,4,0,16,0,17,4,0,0,12,2,4,0,12,2,6,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,0,0,0,0,4,0,20,0,16,4,0,0,16,4,4,0,16,4,8,0,16,4,12,0,12,2,16,0,12,2,18,0,0,0,0,0,4,0,20,0,17,4,0,0,12,2,4,0,12,2,6,0,16,4,8,0,12,2,12,0,12,2,14,0,16,4,16,0,0,0,0,0,4,0,4,0,8,1,16,0,8,1,17,0,8,1,18,0,8,1,19,0,0,0,0,0,0,0,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,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,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,94,0,95,0,96,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,111,0,112,0,113,0,114,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,123,0,124,0,125,0,126,0,127,0,128,0,129,0,130,0,131,0,132,0,133,0,134,0,135,0,136,0,137,0,138,0,139,0,140,0,141,0,142,0,143,0,144,0,145,0,146,0,147,0,148,0,149,0,150,0,151,0,152,0,153,0,154,0,155,0,156,0,157,0,158,0,159,0,160,0,161,0,162,0,163,0,164,0,165,0,166,0,167,0,168,0,169,0,170,0,171,0,172,0,173,0,174,0,175,0,176,0,177,0,178,0,179,0,180,0,181,0,182,0,183,0,184,0,185,0,186,0,187,0,188,0,189,0,190,0,191,0,192,0,193,0,194,0,195,0,196,0,197,0,198,0,199,0,200,0,201,0,202,0,203,0,204,0,205,0,206,0,207,0,208,0,209,0,210,0,211,0,212,0,213,0,214,0,215,0,216,0,217,0,218,0,219,0,220,0,221,0,222,0,223,0,224,0,225,0,226,0,227,0,228,0,0,0,1,0,229,0,230,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,253,0,254,0,255,0,0,1,1,1,2,1,3,1,4,1,5,1,6,1,7,1,8,1,9,1,10,1,109,0,110,0,11,1,12,1,13,1,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,1,48,1,49,1,50,1,51,1,52,1,53,1,54,1,55,1,56,1,57,1,58,1,59,1,60,1,61,1,62,1,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,0,0,1,0,231,0,232,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,253,0,254,0,255,0,0,1,1,1,2,1,3,1,4,1,5,1,6,1,7,1,8,1,9,1,10,1,109,0,110,0,11,1,12,1,13,1,14,1,16,1,44,1,45,1,46,1,49,1,58,1,59,1,158,0,155,0,163,0,64,1,65,1,66,1,67,1,68,1,69,1,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,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,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,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,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,94,0,95,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,0,0,111,0,112,0,113,0,114,0,0,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,0,0,123,0,0,0,124,0,125,0,126,0,127,0,128,0,129,0,130,0,131,0,0,0,132,0,133,0,0,0,134,0,135,0,136,0,137,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,138,0,0,0,139,0,0,0,0,0,0,0,0,0,140,0,141,0,142,0,143,0,0,0,0,0,0,0,0,0,0,0,144,0,0,0,0,0,0,0,145,0,0,0,0,0,146,0,147,0,148,0,149,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,229,0,230,0,0,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,0,0,253,0,254,0,255,0,0,1,1,1,0,0,0,0,0,0,2,1,0,0,0,0,3,1,4,1,5,1,6,1,0,0,0,0,7,1,8,1,9,1,0,0,10,1,109,0,110,0,11,1,12,1,13,1,0,0,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,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,48,1,49,1,50,1,0,0,0,0,51,1,52,1,53,1,54,1,55,1,0,0,56,1,0,0,0,0,56,1,0,0,0,0,58,1,59,1,0,0,0,0,60,1,61,1,62,1,0,0,0,0,0,0,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,0,0,0,0,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,4,0,8,0,17,4,4,0,17,4,8,0,0,0,0,0,4,0,54,0,16,4,0,0,16,4,4,0,17,4,8,0,17,4,12,0,12,2,16,0,12,2,18,0,17,4,20,0,17,4,24,0,17,4,28,0,17,4,32,0,13,2,36,0,13,2,38,0,13,2,40,0,13,2,42,0,12,2,44,0,12,2,46,0,13,2,48,0,13,2,50,0,13,2,52,0,0,0,0,0,4,0,36,0,16,4,0,0,13,2,4,0,13,2,6,0,13,2,8,0,12,2,10,0,13,2,12,0,13,2,14,0,13,2,16,0,13,2,18,0,13,2,20,0,13,2,22,0,13,2,24,0,13,2,26,0,13,2,28,0,13,2,30,0,13,2,32,0,12,2,34,0,0,0,0,0,4,0,6,0,17,4,0,0,12,2,4,0,0,0,0,0,4,0,26,0,12,2,6,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,12,2,16,0,12,2,18,0,12,2,20,0,12,2,22,0,12,2,24,0,12,2,26,0,12,2,28,0,12,2,30,0,0,0,0,0,4,0,78,0,12,2,0,0,13,2,2,0,12,2,4,0,12,2,6,0,13,2,8,0,13,2,10,0,13,2,12,0,13,2,14,0,13,2,16,0,13,2,18,0,13,2,20,0,13,2,22,0,13,2,24,0,13,2,26,0,13,2,28,0,13,2,30,0,8,1,32,0,8,1,33,0,8,1,34,0,8,1,35,0,8,1,36,0,8,1,37,0,8,1,38,0,8,1,39,0,8,1,40,0,8,1,41,0,16,4,44,0,16,4,48,0,16,4,52,0,16,4,56,0,8,1,60,0,8,1,61,0,8,1,62,0,8,1,63,0,12,2,64,0,12,2,66,0,12,2,68,0,13,2,70,0,13,2,72,0,13,2,74,0,12,2,76,0,12,2,78,0,0,0,0,0,4,0,8,0,16,4,80,0,16,4,84,0,0,0,0,0,4,0,10,0,13,2,88,0,13,2,90,0,12,2,92,0,12,2,94,0,12,2,96,0,0,0,0,0,4,0,32,0,16,4,0,0,16,4,4,0,13,2,8,0,13,2,10,0,16,4,12,0,16,4,16,0,16,4,20,0,16,4,24,0,16,4,28,0,0,0,0,0,4,0,6,0,12,2,0,0,12,4,4,0,12,4,8,0,0,0,0,0,12,2,0,0,12,2,2,0,12,2,4,0,12,2,6,0,12,2,8,0,12,4,12,0,0,0,0,0,4,0,54,0,16,4,0,0,16,4,4,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,12,2,16,0,24,16,20,0,24,8,36,0,24,6,44,0,9,1,50,0,9,1,51,0,8,1,52,0,8,1,53,0,0,0,0,0,4,0,5,0,8,1,0,0,8,1,1,0,9,1,2,0,9,1,3,0,8,1,4,0,0,0,0,0,4,0,8,0,8,1,0,0,8,1,1,0,9,1,2,0,9,1,3,0,8,1,4,0,9,1,5,0,9,1,6,0,8,1,7,0,0,0,0,0,4,0,8,0,12,2,4,0,12,2,6,0,12,2,8,0,12,2,10,0,0,0,0,0,4,0,16,0,16,4,0,0,16,4,4,0,16,4,8,0,16,4,12,0,0,0,0,0,16,4,8,0,17,0,0,0,16,4,0,0,16,4,12,0,0,0,0,0,9,1,0,0,9,1,1,0,8,1,2,0,9,1,3,0,9,1,4,0,9,1,5,0,9,1,6,0,9,1,7,0,9,1,8,0,9,1,9,0,9,1,10,0,9,1,11,0,0,0,0,0,12,2,40,0,12,2,42,0,8,1,44,0,8,1,45,0,8,1,46,0,9,1,47,0,0,0,0,0,253,0,0,0,6,0,5,1,11,1,18,1,27,1,38,1,45,1,53,1,246,2,74,1,84,1,95,1,104,1,109,1,115,1,122,1,129,1,135,1,140,1,144,1,148,1,154,1,159,1,164,1,168,1,174,1,180,1,185,1,191,1,201,1,206,1,212,1,220,1,229,1,232,1,234,1,236,1,238,1,240,1,242,1,244,1,246,1,248,1,250,1,252,1,254,1,0,2,2,2,4,2,6,2,8,2,10,2,12,2,14,2,16,2,18,2,20,2,22,2,24,2,26,2,28,2,40,2,50,2,63,2,75,2,211,3,96,2,98,2,100,2,102,2,104,2,106,2,108,2,110,2,112,2,114,2,116,2,118,2,120,2,122,2,124,2,126,2,128,2,130,2,132,2,134,2,136,2,138,2,140,2,142,2,144,2,146,2,148,2,158,2,162,2,173,2,95,5,112,5,125,5,134,5,206,5,232,5,26,6,67,6,96,6,74,6,86,6,109,6,103,6,116,6,125,6,154,6,132,6,144,6,161,6,190,6,168,6,180,6,197,6,204,6,233,6,211,6,223,6,240,6,254,6,27,7,5,7,17,7,71,3,239,4,195,2,200,2,229,2,113,3,103,3,136,4,22,5,66,5,173,4,217,3,7,4,23,0,62,4,84,4,32,0,195,4,41,0,51,0,218,2,170,4,64,0,76,0,86,0,94,0,97,0,65,4,94,4,106,0,107,4,126,4,198,3,184,2,159,4,112,0,222,2,120,0,132,0,15,3,162,3,177,3,138,0,105,5,118,5,249,5,91,4,133,4,64,3,55,4,2,3,148,3,86,2,63,1,222,4,155,0,41,7,50,6,209,2,237,2,29,3,43,3,58,3,61,3,78,3,88,3,120,3,135,3,186,3,83,5,141,5,76,5,153,5,163,5,170,5,177,5,189,5,199,5,213,5,220,5,163,0,242,5,7,6,14,6,36,6,110,4,223,3,234,3,240,3,247,3,253,3,16,4,21,4,29,4,42,4,49,4,77,4,119,4,0,6,247,6,60,6,51,7,229,4,183,4,39,5,43,6,34,7,205,4,246,4,33,5,43,5,147,4,10,5,52,5,187,4,211,4,252,4,169,0,175,0,182,0,189,0,200,0,209,0,218,0,225,0,232,0,239,0,246,0,253,0,5,1,11,1,18,1,27,1,38,1,45,1,53,1,63,1,74,1,84,1,95,1,104,1,109,1,115,1,122,1,129,1,135,1,140,1,144,1,148,1,154,1,159,1,164,1,168,1,174,1,180,1,185,1,191,1,201,1,206,1,212,1,220,1,229,1,232,1,234,1,236,1,238,1,240,1,242,1,244,1,246,1,248,1,250,1,252,1,254,1,0,2,2,2,4,2,6,2,8,2,10,2,12,2,14,2,16,2,18,2,20,2,22,2,24,2,26,2,28,2,40,2,50,2,63,2,75,2,86,2,96,2,98,2,100,2,102,2,104,2,106,2,108,2,110,2,112,2,114,2,116,2,118,2,120,2,122,2,124,2,126,2,128,2,130,2,132,2,134,2,136,2,138,2,140,2,142,2,144,2,146,2,148,2,158,2,162,2,173,2,184,2,195,2,200,2,209,2,218,2,222,2,229,2,237,2,246,2,2,3,15,3,29,3,43,3,58,3,61,3,64,3,71,3,78,3,88,3,103,3,113,3,120,3,135,3,148,3,162,3,177,3,186,3,198,3,211,3,217,3,223,3,234,3,240,3,247,3,253,3,7,4,16,4,21,4,29,4,42,4,49,4,55,4,62,4,65,4,77,4,84,4,91,4,94,4,107,4,110,4,119,4,126,4,133,4,136,4,147,4,159,4,170,4,173,4,183,4,187,4,195,4,205,4,211,4,222,4,229,4,239,4,246,4,252,4,10,5,22,5,33,5,39,5,43,5,52,5,66,5,76,5,83,5,95,5,105,5,112,5,118,5,125,5,134,5,141,5,153,5,163,5,170,5,177,5,189,5,199,5,206,5,213,5,220,5,232,5,242,5,249,5,0,6,7,6,14,6,26,6,36,6,43,6,50,6,60,6,67,6,74,6,86,6,96,6,103,6,109,6,116,6,125,6,132,6,144,6,154,6,161,6,168,6,180,6,190,6,197,6,204,6,211,6,223,6,233,6,240,6,247,6,254,6,5,7,17,7,27,7,34,7,41,7,51,7,58,7,70,7,88,7,103,7,118,7,133,7,144,7,162,7,181,7,196,7,211,7,224,7,236,7,248,7,6,8,19,8,32,8,44,8,58,8,72,8,85,8,99,8,119,8,134,8,148,8,158,8,168,8,181,8,191,8,201,8,211,8,221,8,231,8,241,8,251,8,5,9,15,9,25,9,28,9,32,9,36,9,54,9,73,9,89,9,104,9,115,9,122,9,129,9,136,9,143,9,150,9,157,9,164,9,171,9,178,9,185,9,192,9,199,9,206,9,213,9,220,9,227,9,234,9,241,9,248,9,255,9,6,10,13,10,20,10,27,10,34,10,41,10,55,10,65,10,72,10,83,10,99,10,112,10,124,10,136,10,148,10,162,10,173,10,184,10,199,10,211,10,222,10,237,10,249,10,3,11,16,11,34,11,44,11,57,11,69,11,82,11,91,11,101,11,114,11,127,11,140,11,152,11,166,11,180,11,193,11,206,11,218,11,230,11,244,11,1,12,14,12,26,12,40,12,54,12,67,12,80,12,95,12,110,12,124,12,136,12,148,12,165,12,177,12,192,12,203,12,211,12,225,12,237,12,249,12,10,13,25,13,37,13,49,13,66,13,81,13,90,13,102,13,114,13,126,13,143,13,155,13,170,13,178,13,190,13,202,13,214,13,231,13,246,13,2,14,13,14,28,14,36,14,44,14,52,14,60,14,66,14,71,14,76,14,82,14,89,14,97,14,103,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,229,0,230,0,0,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,0,0,253,0,254,0,255,0,0,1,1,1,0,0,0,0,0,0,2,1,0,0,0,0,3,1,4,1,5,1,6,1,0,0,0,0,7,1,8,1,9,1,0,0,10,1,109,0,110,0,11,1,12,1,13,1,0,0,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,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,48,1,49,1,50,1,0,0,0,0,51,1,52,1,53,1,54,1,55,1,0,0,56,1,0,0,0,0,57,1,0,0,0,0,58,1,59,1,0,0,0,0,60,1,61,1,62,1,0,0,0,0,0,0,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,0,0,0,0,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,108,111,97,100,95,102,111,110,116,40,37,115,44,37,115,41,58,32,116,111,111,32,109,97,110,121,32,102,111,110,116,115,33,10,0,78,101,119,95,70,97,99,101,40,37,115,44,37,115,41],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([32,69,114,114,111,114,33,32,37,100,10,0,83,101,116,95,67,104,97,114,95,83,105,122,101,32,69,114,114,111,114,33,32,37,100,10,0,76,111,97,100,95,67,104,97,114,32,69,114,114,111,114,33,32,37,100,10,0,73,110,105,116,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,65,46,111,116,102,0,78,101,119,95,70,97,99,101,40,79,67,82,45,65,41,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,66,46,111,116,102,0,78,101,119,95,70,97,99,101,40,79,67,82,45,66,41,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,45,65,0,79,67,82,45,66,0,99,105,100,0,116,121,112,101,49,0,79,84,84,79,0,46,95,0,47,46,46,110,97,109,101,100,102,111,114,107,47,114,115,114,99,0,47,114,115,114,99,0,114,101,115,111,117,114,99,101,46,102,114,107,47,0,46,114,101,115,111,117,114,99,101,47,0,37,0,46,65,112,112,108,101,68,111,117,98,108,101,47,0,116,114,117,101,116,121,112,101,0,84,114,117,101,84,121,112,101,0,109,117,108,116,105,45,109,97,115,116,101,114,115,0,87,105,100,116,104,0,79,112,116,105,99,97,108,83,105,122,101,0,83,108,97,110,116,0,116,114,117,101,116,121,112,101,45,101,110,103,105,110,101,0,116,116,45,103,108,121,102,0,68,70,75,97,105,83,104,111,45,83,66,0,0,0,0,0,0,68,70,75,97,105,83,104,117,0,0,0,0,0,0,0,0,0,68,70,75,97,105,45,83,66,0,0,0,0,0,0,0,0,0,72,117,97,84,105,97,110,75,97,105,84,105,63,0,0,0,0,72,117,97,84,105,97,110,83,111,110,103,84,105,63,0,0,0,77,105,110,103,76,105,85,0,0,0,0,0,0,0,0,0,0,80,77,105,110,103,76,105,85,0,0,0,0,0,0,0,0,0,77,105,110,103,76,105,52,51,0,0,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,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,255,254,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,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,2,3,4,5,6,7,8,9,3,5,7,9,11,13,15,17,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,32,32,32,32,32,32,2,2,0,80,16,16,16,16,16,16,16,16,0,0,16,0,16,16,16,16,18,16,0,34,1,17,16,32,0,16,32,16,16,0,16,16,0,0,0,0,16,16,16,16,16,0,32,32,0,0,32,32,0,0,32,17,32,17,17,17,32,33,33,1,1,0,0,16,33,33,33,33,33,33,17,17,16,0,33,33,17,16,16,16,33,33,33,33,17,17,17,17,17,17,17,17,17,17,17,17,32,16,16,16,16,16,16,16,32,32,0,0,0,0,16,16,0,32,32,0,0,16,32,32,17,16,51,33,33,16,32,0,0,0,0,0,0,0,0,0,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,1,2,3,4,5,6,7,8,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,99,102,102,0,120,102,56,54,45,100,114,105,118,101,114,45,110,97,109,101,0,67,70,70,0,112,111,115,116,115,99,114,105,112,116,45,105,110,102,111,0,67,73,68,0,82,101,103,117,108,97,114,0,66,111,108,100,0,66,108,97,99,107,0,0,194,193,193,32,32,32,32,32,32,32,32,32,32,13,7,9,11,128,130,130,130,130,128,128,0,1,2,2,2,1,0,2,1,1,1,2,1,2,1,2,1,4,3,2,2,1,2,4,1,1,0,2,0,0,0,5,4,2,115,102,110,116,0,115,102,110,116,45,116,97,98,108,101,0,112,111,115,116,115,99,114,105,112,116,45,102,111,110,116,45,110,97,109,101,0,103,108,121,112,104,45,100,105,99,116,0,98,100,102,0,67,72,65,82,83,69,84,95,82,69,71,73,83,84,82,89,0,67,72,65,82,83,69,84,95,69,78,67,79,68,73,78,71,0,116,116,45,99,109,97,112,115,0,84,72,69,90,79,67,81,83,0,0,0,0,0,72,69,90,76,79,67,85,83,0,0,0,0,0,102,105,106,107,100,98,104,0,0,0,0,0,0,120,122,114,111,101,115,99,0,0,0,0,0,0,120,122,114,111,101,115,99,0,0,0,0,0,0,112,113,103,106,121,0,0,0,0,0,0,0,0,97,117,116,111,102,105,116,116,101,114,0,112,115,104,105,110,116,101,114,0,114,97,115,116,101,114,49,0,114,97,115,116,101,114,53,0,115,109,111,111,116,104,0,115,109,111,111,116,104,45,108,99,100,0,115,109,111,111,116,104,45,108,99,100,118,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,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,255,255,255,255,255,255,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,255,255,255,255,255,83,116,97,114,116,70,111,110,116,77,101,116,114,105,99,115,0,65,115,99,101,110,100,101,114,0,65,120,105,115,76,97,98,101,108,0,65,120,105,115,84,121,112,101,0,66,0,66,108,101,110,100,65,120,105,115,84,121,112,101,115,0,66,108,101,110,100,68,101,115,105,103,110,77,97,112,0,66,108,101,110,100,68,101,115,105,103,110,80,111,115,105,116,105,111,110,115,0,67,0,67,67,0,67,72,0,67,97,112,72,101,105,103,104,116,0,67,104,97,114,87,105,100,116,104,0,67,104,97,114,97,99,116,101,114,83,101,116,0,67,104,97,114,97,99,116,101,114,115,0,68,101,115,99,101,110,100,101,114,0,69,110,99,111,100,105,110,103,83,99,104,101,109,101,0,69,110,100,65,120,105,115,0,69,110,100,67,104,97,114,77,101,116,114,105,99,115,0,69,110,100,67,111,109,112,111,115,105,116,101,115,0,69,110,100,68,105,114,101,99,116,105,111,110,0,69,110,100,70,111,110,116,77,101,116,114,105,99,115,0,69,110,100,75,101,114,110,68,97,116,97,0,69,110,100,75,101,114,110,80,97,105,114,115,0,69,110,100,84,114,97,99,107,75,101,114,110,0,69,115,99,67,104,97,114,0,70,97,109,105,108,121,78,97,109,101,0,70,111,110,116,66,66,111,120,0,70,111,110,116,78,97,109,101,0,70,117,108,108,78,97,109,101,0,73,115,66,97,115,101,70,111,110,116,0,73,115,67,73,68,70,111,110,116,0,73,115,70,105,120,101,100,80,105,116,99,104,0,73,115,70,105,120,101,100,86,0,73,116,97,108,105,99,65,110,103,108,101,0,75,80,0,75,80,72,0,75,80,88,0,75,80,89,0,76,0,77,97,112,112,105,110,103,83,99,104,101,109,101,0,77,101,116,114,105,99,115,83,101,116,115,0,78,0,78,111,116,105,99,101,0,80,67,67,0,83,116,97,114,116,65,120,105,115,0,83,116,97,114,116,67,104,97,114,77,101,116,114,105,99,115,0,83,116,97,114,116,67,111,109,112,111,115,105,116,101,115,0,83,116,97,114,116,68,105,114,101,99,116,105,111,110,0,83,116,97,114,116,75,101,114,110,68,97,116,97,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,48,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,49,0,83,116,97,114,116,84,114,97,99,107,75,101,114,110,0,83,116,100,72,87,0,83,116,100,86,87,0,84,114,97,99,107,75,101,114,110,0,85,110,100,101,114,108,105,110,101,80,111,115,105,116,105,111,110,0,85,110,100,101,114,108,105,110,101,84,104,105,99,107,110,101,115,115,0,86,86,0,86,86,101,99,116,111,114,0,86,101,114,115,105,111,110,0,87,0,87,48,0,87,48,88,0,87,48,89,0,87,49,0,87,49,88,0,87,49,89,0,87,88,0,87,89,0,87,101,105,103,104,116,0,87,101,105,103,104,116,86,101,99,116,111,114,0,88,72,101,105,103,104,116,0,116,114,117,101,0,112,115,97,117,120,0,112,115,110,97,109,101,115,0,0,52,0,106,2,167,3,63,4,220,6,125,9,143,10,23,11,137,12,199,14,246,15,87,16,233,17,219,18,104,19,88,22,110,23,32,23,71,24,77,27,156,29,73,31,247,32,107,32,222,33,55,34,154,35,218,53,84,59,196,68,6,75,183,83,178,88,135,93,242,101,165,109,185,111,55,117,254,123,73,130,238,138,206,145,31,153,182,156,189,163,249,178,221,193,17,197,99,199,240,204,27,204,155,210,100,65,143,0,65,0,140,0,175,0,193,1,15,1,147,1,233,1,251,2,7,2,40,2,57,2,82,2,91,2,128,2,136,2,154,69,131,0,198,0,150,0,158,0,167,225,227,245,244,101,128,1,252,237,225,227,242,239,110,128,1,226,243,237,225,236,108,128,247,230,225,227,245,244,101,129,0,193,0,185,243,237,225,236,108,128,247,225,226,242,229,246,101,134,1,2,0,213,0,221,0,232,0,243,0,251,1,7,225,227,245,244,101,128,30,174,227,249,242,233,236,236,233,99,128,4,208,228,239,244,226,229,236,239,119,128,30,182,231,242,225,246,101,128,30,176,232,239,239,235,225,226,239,246,101,128,30,178,244,233,236,228,101,128,30,180,99,4,1,25,1,32,1,121,1,137,225,242,239,110,128,1,205,233,242,99,2,1,40,1,45,236,101,128,36,182,245,237,230,236,229,120,134,0,194,1,66,1,74,1,85,1,93,1,105,1,113,225,227,245,244,101,128,30,164,228,239,244,226,229,236,239,119,128,30,172,231,242,225,246,101,128,30,166,232,239,239,235,225,226,239,246,101,128,30,168,243,237,225,236,108,128,247,226,244,233,236,228,101,128,30,170,245,244,101,129,246,201,1,129,243,237,225,236,108,128,247,180,249,242,233,236,236,233,99,128,4,16,100,3,1,155,1,165,1,209,226,236,231,242,225,246,101,128,2,0,233,229,242,229,243,233,115,131,0,196,1,181,1,192,1,201,227,249,242,233,236,236,233,99,128,4,210,237,225,227,242,239,110,128,1,222,243,237,225,236,108,128,247,228,239,116,2,1,216,1,224,226,229,236,239,119,128,30,160,237,225,227,242,239,110,128,1,224,231,242,225,246,101,129,0,192,1,243,243,237,225,236,108,128,247,224,232,239,239,235,225,226,239,246,101,128,30,162,105,2,2,13,2,25,229,227,249,242,233,236,236,233,99,128,4,212,238,246,229,242,244,229,228,226,242,229,246,101,128,2,2,236,240,232,97,129,3,145,2,49,244,239,238,239,115,128,3,134,109,2,2,63,2,71,225,227,242,239,110,128,1,0,239,238,239,243,240,225,227,101,128,255,33,239,231,239,238,229,107,128,1,4,242,233,238,103,131,0,197,2,104,2,112,2,120,225,227,245,244,101,128,1,250,226,229,236,239,119,128,30,0,243,237,225,236,108,128,247,229,243,237,225,236,108,128,247,97,244,233,236,228,101,129,0,195,2,146,243,237,225,236,108,128,247,227,249,226,225,242,237,229,238,233,225,110,128,5,49,66,137,0,66,2,189,2,198,2,223,3,3,3,10,3,22,3,34,3,46,3,54,227,233,242,227,236,101,128,36,183,228,239,116,2,2,206,2,215,225,227,227,229,238,116,128,30,2,226,229,236,239,119,128,30,4,101,3,2,231,2,242,2,254,227,249,242,233,236,236,233,99,128,4,17,238,225,242,237,229,238,233,225,110,128,5,50,244,97,128,3,146,232,239,239,107,128,1,129,236,233,238,229,226,229,236,239,119,128,30,6,237,239,238,239,243,240,225,227,101,128,255,34,242,229,246,229,243,237,225,236,108,128,246,244,243,237,225,236,108,128,247,98,244,239,240,226,225,114,128,1,130,67,137,0,67,3,85,3,127,3,193,3,210,3,224,4,171,4,188,4,200,4,212,97,3,3,93,3,104,3,111,225,242,237,229,238,233,225,110,128,5,62,227,245,244,101,128,1,6,242,239,110,129,246,202,3,119,243,237,225,236,108,128,246,245,99,3,3,135,3,142,3,171,225,242,239,110,128,1,12,229,228,233,236,236,97,130,0,199,3,155,3,163,225,227,245,244,101,128,30,8,243,237,225,236,108,128,247,231,233,242,99,2,3,179,3,184,236,101,128,36,184,245,237,230,236,229,120,128,1,8,228,239,116,129,1,10,3,201,225,227,227,229,238,116,128,1,10,229,228,233,236,236,225,243,237,225,236,108,128,247,184,104,4,3,234,3,246,4,161,4,165,225,225,242,237,229,238,233,225,110,128,5,73,101,6,4,4,4,24,4,35,4,103,4,115,4,136,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,188,227,249,242,233,236,236,233,99,128,4,39,100,2,4,41,4,85,229,243,227,229,238,228,229,114,2,4,54,4,74,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,190,227,249,242,233,236,236,233,99,128,4,182,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,244,232,225,242,237,229,238,233,225,110,128,5,67,235,232,225,235,225,243,243,233,225,238,227,249,242,233,236,236,233,99,128,4,203,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,184,105,128,3,167,239,239,107,128,1,135,233,242,227,245,237,230,236,229,248,243,237,225,236,108,128,246,246,237,239,238,239,243,240,225,227,101,128,255,35,239,225,242,237,229,238,233,225,110,128,5,81,243,237,225,236,108,128,247,99,68,142,0,68,4,252,5,10,5,36,5,96,5,121,5,166,5,173,5,231,5,244,6,0,6,12,6,28,6,48,6,57,90,129,1,241,5,2,227,225,242,239,110,128,1,196,97,2,5,16,5,27,225,242,237,229,238,233,225,110,128,5,52,230,242,233,227,225,110,128,1,137,99,4,5,46,5,53,5,62,5,89,225,242,239,110,128,1,14,229,228,233,236,236,97,128,30,16,233,242,99,2,5,70,5,75,236,101,128,36,185,245,237,230,236,229,248,226,229,236,239,119,128,30,18,242,239,225,116,128,1,16,228,239,116,2,5,104,5,113,225,227,227,229,238,116,128,30,10,226,229,236,239,119,128,30,12,101,3,5,129,5,140,5,150,227,249,242,233,236,236,233,99,128,4,20,233,227,239,240,244,233,99,128,3,238,236,244,97,129,34,6,5,158,231,242,229,229,107,128,3,148,232,239,239,107,128,1,138,105,2,5,179,5,218,229,242,229,243,233,115,131,246,203,5,194,5,202,5,210,193,227,245,244,101,128,246,204,199,242,225,246,101,128,246,205,243,237,225,236,108,128,247,168,231,225,237,237,225,231,242,229,229,107,128,3,220,234,229,227,249,242,233,236,236,233,99,128,4,2,236,233,238,229,226,229,236,239,119,128,30,14,237,239,238,239,243,240,225,227,101,128,255,36,239,244,225,227,227,229,238,244,243,237,225,236,108,128,246,247,115,2,6,34,6,41,236,225,243,104,128,1,16,237,225,236,108,128,247,100,244,239,240,226,225,114,128,1,139,122,131,1,242,6,67,6,75,6,112,227,225,242,239,110,128,1,197,101,2,6,81,6,101,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,224,227,249,242,233,236,236,233,99,128,4,5,232,229,227,249,242,233,236,236,233,99,128,4,15,69,146,0,69,6,165,6,183,6,191,7,89,7,153,7,165,7,183,7,211,8,7,8,36,8,94,8,169,8,189,8,208,8,248,9,44,9,109,9,115,225,227,245,244,101,129,0,201,6,175,243,237,225,236,108,128,247,233,226,242,229,246,101,128,1,20,99,5,6,203,6,210,6,224,6,236,7,79,225,242,239,110,128,1,26,229,228,233,236,236,225,226,242,229,246,101,128,30,28,232,225,242,237,229,238,233,225,110,128,5,53,233,242,99,2,6,244,6,249,236,101,128,36,186,245,237,230,236,229,120,135,0,202,7,16,7,24,7,32,7,43,7,51,7,63,7,71,225,227,245,244,101,128,30,190,226,229,236,239,119,128,30,24,228,239,244,226,229,236,239,119,128,30,198,231,242,225,246,101,128,30,192,232,239,239,235,225,226,239,246,101,128,30,194,243,237,225,236,108,128,247,234,244,233,236,228,101,128,30,196,249,242,233,236,236,233,99,128,4,4,100,3,7,97,7,107,7,127,226,236,231,242,225,246,101,128,2,4,233,229,242,229,243,233,115,129,0,203,7,119,243,237,225,236,108,128,247,235,239,116,130,1,22,7,136,7,145,225,227,227,229,238,116,128,1,22,226,229,236,239,119,128,30,184,230,227,249,242,233,236,236,233,99,128,4,36,231,242,225,246,101,129,0,200,7,175,243,237,225,236,108,128,247,232,104,2,7,189,7,200,225,242,237,229,238,233,225,110,128,5,55,239,239,235,225,226,239,246,101,128,30,186,105,3,7,219,7,230,7,245,231,232,244,242,239,237,225,110,128,33,103,238,246,229,242,244,229,228,226,242,229,246,101,128,2,6,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,100,108,2,8,13,8,24,227,249,242,233,236,236,233,99,128,4,27,229,246,229,238,242,239,237,225,110,128,33,106,109,3,8,44,8,72,8,83,225,227,242,239,110,130,1,18,8,56,8,64,225,227,245,244,101,128,30,22,231,242,225,246,101,128,30,20,227,249,242,233,236,236,233,99,128,4,28,239,238,239,243,240,225,227,101,128,255,37,110,4,8,104,8,115,8,135,8,154,227,249,242,233,236,236,233,99,128,4,29,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,162,103,129,1,74,8,141,232,229,227,249,242,233,236,236,233,99,128,4,164,232,239,239,235,227,249,242,233,236,236,233,99,128,4,199,111,2,8,175,8,183,231,239,238,229,107,128,1,24,240,229,110,128,1,144,240,243,233,236,239,110,129,3,149,8,200,244,239,238,239,115,128,3,136,114,2,8,214,8,225,227,249,242,233,236,236,233,99,128,4,32,229,246,229,242,243,229,100,129,1,142,8,237,227,249,242,233,236,236,233,99,128,4,45,115,4,9,2,9,13,9,33,9,37,227,249,242,233,236,236,233,99,128,4,33,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,170,104,128,1,169,237,225,236,108,128,247,101,116,3,9,52,9,78,9,92,97,130,3,151,9,60,9,70,242,237,229,238,233,225,110,128,5,56,244,239,238,239,115,128,3,137,104,129,0,208,9,84,243,237,225,236,108,128,247,240,233,236,228,101,129,30,188,9,101,226,229,236,239,119,128,30,26,245,242,111,128,32,172,250,104,130,1,183,9,124,9,132,227,225,242,239,110,128,1,238,242,229,246,229,242,243,229,100,128,1,184,70,136,0,70,9,163,9,172,9,184,9,212,9,219,9,248,10,4,10,15,227,233,242,227,236,101,128,36,187,228,239,244,225,227,227,229,238,116,128,30,30,101,2,9,190,9,202,232,225,242,237,229,238,233,225,110,128,5,86,233,227,239,240,244,233,99,128,3,228,232,239,239,107,128,1,145,105,2,9,225,9,238,244,225,227,249,242,233,236,236,233,99,128,4,114,246,229,242,239,237,225,110,128,33,100,237,239,238,239,243,240,225,227,101,128,255,38,239,245,242,242,239,237,225,110,128,33,99,243,237,225,236,108,128,247,102,71,140,0,71,10,51,10,61,10,107,10,115,10,176,10,193,10,205,11,39,11,52,11,65,11,90,11,107,194,243,241,245,225,242,101,128,51,135,97,3,10,69,10,76,10,94,227,245,244,101,128,1,244,237,237,97,129,3,147,10,84,225,230,242,233,227,225,110,128,1,148,238,231,233,225,227,239,240,244,233,99,128,3,234,226,242,229,246,101,128,1,30,99,4,10,125,10,132,10,141,10,163,225,242,239,110,128,1,230,229,228,233,236,236,97,128,1,34,233,242,99,2,10,149,10,154,236,101,128,36,188,245,237,230,236,229,120,128,1,28,239,237,237,225,225,227,227,229,238,116,128,1,34,228,239,116,129,1,32,10,184,225,227,227,229,238,116,128,1,32,229,227,249,242,233,236,236,233,99,128,4,19,104,3,10,213,10,226,11,33,225,228,225,242,237,229,238,233,225,110,128,5,66,101,3,10,234,10,255,11,16,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,148,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,146,245,240,244,245,242,238,227,249,242,233,236,236,233,99,128,4,144,239,239,107,128,1,147,233,237,225,242,237,229,238,233,225,110,128,5,51,234,229,227,249,242,233,236,236,233,99,128,4,3,109,2,11,71,11,79,225,227,242,239,110,128,30,32,239,238,239,243,240,225,227,101,128,255,39,242,225,246,101,129,246,206,11,99,243,237,225,236,108,128,247,96,115,2,11,113,11,129,237,225,236,108,129,247,103,11,122,232,239,239,107,128,2,155,244,242,239,235,101,128,1,228,72,140,0,72,11,165,11,190,11,198,11,208,12,17,12,40,12,77,12,117,12,129,12,157,12,165,12,189,177,184,53,3,11,175,11,180,11,185,179,51,128,37,207,180,51,128,37,170,181,49,128,37,171,178,178,176,183,51,128,37,161,208,243,241,245,225,242,101,128,51,203,97,3,11,216,11,236,12,0,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,168,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,178,242,228,243,233,231,238,227,249,242,233,236,236,233,99,128,4,42,98,2,12,23,12,28,225,114,128,1,38,242,229,246,229,226,229,236,239,119,128,30,42,99,2,12,46,12,55,229,228,233,236,236,97,128,30,40,233,242,99,2,12,63,12,68,236,101,128,36,189,245,237,230,236,229,120,128,1,36,100,2,12,83,12,93,233,229,242,229,243,233,115,128,30,38,239,116,2,12,100,12,109,225,227,227,229,238,116,128,30,34,226,229,236,239,119,128,30,36,237,239,238,239,243,240,225,227,101,128,255,40,111,2,12,135,12,146,225,242,237,229,238,233,225,110,128,5,64,242,233,227,239,240,244,233,99,128,3,232,243,237,225,236,108,128,247,104,245,238,231,225,242,245,237,236,225,245,116,129,246,207,12,181,243,237,225,236,108,128,246,248,250,243,241,245,225,242,101,128,51,144,73,146,0,73,12,239,12,251,12,255,13,11,13,29,13,37,13,94,13,181,13,214,13,224,13,242,13,254,14,48,14,86,14,99,14,166,14,187,14,205,193,227,249,242,233,236,236,233,99,128,4,47,74,128,1,50,213,227,249,242,233,236,236,233,99,128,4,46,225,227,245,244,101,129,0,205,13,21,243,237,225,236,108,128,247,237,226,242,229,246,101,128,1,44,99,3,13,45,13,52,13,84,225,242,239,110,128,1,207,233,242,99,2,13,60,13,65,236,101,128,36,190,245,237,230,236,229,120,129,0,206,13,76,243,237,225,236,108,128,247,238,249,242,233,236,236,233,99,128,4,6,100,3,13,102,13,112,13,155,226,236,231,242,225,246,101,128,2,8,233,229,242,229,243,233,115,131,0,207,13,128,13,136,13,147,225,227,245,244,101,128,30,46,227,249,242,233,236,236,233,99,128,4,228,243,237,225,236,108,128,247,239,239,116,130,1,48,13,164,13,173,225,227,227,229,238,116,128,1,48,226,229,236,239,119,128,30,202,101,2,13,187,13,203,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,214,227,249,242,233,236,236,233,99,128,4,21,230,242,225,235,244,245,114,128,33,17,231,242,225,246,101,129,0,204,13,234,243,237,225,236,108,128,247,236,232,239,239,235,225,226,239,246,101,128,30,200,105,3,14,6,14,17,14,32,227,249,242,233,236,236,233,99,128,4,24,238,246,229,242,244,229,228,226,242,229,246,101,128,2,10,243,232,239,242,244,227,249,242,233,236,236,233,99,128,4,25,109,2,14,54,14,75,225,227,242,239,110,129,1,42,14,64,227,249,242,233,236,236,233,99,128,4,226,239,238,239,243,240,225,227,101,128,255,41,238,233,225,242,237,229,238,233,225,110,128,5,59,111,3,14,107,14,118,14,126,227,249,242,233,236,236,233,99,128,4,1,231,239,238,229,107,128,1,46,244,97,131,3,153,14,137,14,147,14,158,225,230,242,233,227,225,110,128,1,150,228,233,229,242,229,243,233,115,128,3,170,244,239,238,239,115,128,3,138,115,2,14,172,14,179,237,225,236,108,128,247,105,244,242,239,235,101,128,1,151,244,233,236,228,101,129,1,40,14,197,226,229,236,239,119,128,30,44,250,232,233,244,243,97,2,14,216,14,227,227,249,242,233,236,236,233,99,128,4,116,228,226,236,231,242,225,246,229,227,249,242,233,236,236,233,99,128,4,118,74,134,0,74,15,6,15,18,15,41,15,53,15,67,15,79,225,225,242,237,229,238,233,225,110,128,5,65,227,233,242,99,2,15,27,15,32,236,101,128,36,191,245,237,230,236,229,120,128,1,52,229,227,249,242,233,236,236,233,99,128,4,8,232,229,232,225,242,237,229,238,233,225,110,128,5,75,237,239,238,239,243,240,225,227,101,128,255,42,243,237,225,236,108,128,247,106,75,140,0,75,15,115,15,125,15,135,16,18,16,65,16,76,16,106,16,143,16,156,16,168,16,180,16,208,194,243,241,245,225,242,101,128,51,133,203,243,241,245,225,242,101,128,51,205,97,7,15,151,15,169,15,191,15,211,15,226,15,232,15,249,226,225,243,232,235,233,242,227,249,242,233,236,236,233,99,128,4,160,99,2,15,175,15,181,245,244,101,128,30,48,249,242,233,236,236,233,99,128,4,26,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,154,232,239,239,235,227,249,242,233,236,236,233,99,128,4,195,240,240,97,128,3,154,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,158,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,156,99,4,16,28,16,35,16,44,16,52,225,242,239,110,128,1,232,229,228,233,236,236,97,128,1,54,233,242,227,236,101,128,36,192,239,237,237,225,225,227,227,229,238,116,128,1,54,228,239,244,226,229,236,239,119,128,30,50,101,2,16,82,16,94,232,225,242,237,229,238,233,225,110,128,5,84,238,225,242,237,229,238,233,225,110,128,5,63,104,3,16,114,16,126,16,137,225,227,249,242,233,236,236,233,99,128,4,37,229,233,227,239,240,244,233,99,128,3,230,239,239,107,128,1,152,234,229,227,249,242,233,236,236,233,99,128,4,12,236,233,238,229,226,229,236,239,119,128,30,52,237,239,238,239,243,240,225,227,101,128,255,43,239,240,240,97,2,16,189,16,200,227,249,242,233,236,236,233,99,128,4,128,231,242,229,229,107,128,3,222,115,2,16,214,16,226,233,227,249,242,233,236,236,233,99,128,4,110,237,225,236,108,128,247,107,76,138,0,76,17,1,17,5,17,9,17,29,17,95,17,133,17,147,17,165,17,177,17,189,74,128,1,199,76,128,246,191,97,2,17,15,17,22,227,245,244,101,128,1,57,237,226,228,97,128,3,155,99,4,17,39,17,46,17,55,17,82,225,242,239,110,128,1,61,229,228,233,236,236,97,128,1,59,233,242,99,2,17,63,17,68,236,101,128,36,193,245,237,230,236,229,248,226,229,236,239,119,128,30,60,239,237,237,225,225,227,227,229,238,116,128,1,59,228,239,116,130,1,63,17,105,17,114,225,227,227,229,238,116,128,1,63,226,229,236,239,119,129,30,54,17,124,237,225,227,242,239,110,128,30,56,233,247,238,225,242,237,229,238,233,225,110,128,5,60,106,129,1,200,17,153,229,227,249,242,233,236,236,233,99,128,4,9,236,233,238,229,226,229,236,239,119,128,30,58,237,239,238,239,243,240,225,227,101,128,255,44,115,2,17,195,17,212,236,225,243,104,129,1,65,17,204,243,237,225,236,108,128,246,249,237,225,236,108,128,247,108,77,137,0,77,17,241,17,251,18,24,18,33,18,58,18,71,18,83,18,91,18,100,194,243,241,245,225,242,101,128,51,134,225,99,2,18,2,18,18,242,239,110,129,246,208,18,10,243,237,225,236,108,128,247,175,245,244,101,128,30,62,227,233,242,227,236,101,128,36,194,228,239,116,2,18,41,18,50,225,227,227,229,238,116,128,30,64,226,229,236,239,119,128,30,66,229,238,225,242,237,229,238,233,225,110,128,5,68,237,239,238,239,243,240,225,227,101,128,255,45,243,237,225,236,108,128,247,109,244,245,242,238,229,100,128,1,156,117,128,3,156,78,141,0,78,18,134,18,138,18,146,18,212,18,237,18,248,19,3,19,21,19,33,19,45,19,58,19,66,19,84,74,128,1,202,225,227,245,244,101,128,1,67,99,4,18,156,18,163,18,172,18,199,225,242,239,110,128,1,71,229,228,233,236,236,97,128,1,69,233,242,99,2,18,180,18,185,236,101,128,36,195,245,237,230,236,229,248,226,229,236,239,119,128,30,74,239,237,237,225,225,227,227,229,238,116,128,1,69,228,239,116,2,18,220,18,229,225,227,227,229,238,116,128,30,68,226,229,236,239,119,128,30,70,232,239,239,235,236,229,230,116,128,1,157,233,238,229,242,239,237,225,110,128,33,104,106,129,1,203,19,9,229,227,249,242,233,236,236,233,99,128,4,10,236,233,238,229,226,229,236,239,119,128,30,72,237,239,238,239,243,240,225,227,101,128,255,46,239,247,225,242,237,229,238,233,225,110,128,5,70,243,237,225,236,108,128,247,110,244,233,236,228,101,129,0,209,19,76,243,237,225,236,108,128,247,241,117,128,3,157,79,141,0,79,19,118,19,132,19,150,19,203,20,78,20,152,20,187,21,48,21,69,21,213,21,223,21,254,22,53,69,129,1,82,19,124,243,237,225,236,108,128,246,250,225,227,245,244,101,129,0,211,19,142,243,237,225,236,108,128,247,243,98,2,19,156,19,196,225,242,242,229,100,2,19,166,19,177,227,249,242,233,236,236,233,99,128,4,232,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,234,242,229,246,101,128,1,78,99,4,19,213,19,220,19,235,20,68,225,242,239,110,128,1,209,229,238,244,229,242,229,228,244,233,236,228,101,128,1,159,233,242,99,2,19,243,19,248,236,101,128,36,196,245,237,230,236,229,120,134,0,212,20,13,20,21,20,32,20,40,20,52,20,60,225,227,245,244,101,128,30,208,228,239,244,226,229,236,239,119,128,30,216,231,242,225,246,101,128,30,210,232,239,239,235,225,226,239,246,101,128,30,212,243,237,225,236,108,128,247,244,244,233,236,228,101,128,30,214,249,242,233,236,236,233,99,128,4,30,100,3,20,86,20,109,20,142,226,108,2,20,93,20,101,225,227,245,244,101,128,1,80,231,242,225,246,101,128,2,12,233,229,242,229,243,233,115,130,0,214,20,123,20,134,227,249,242,233,236,236,233,99,128,4,230,243,237,225,236,108,128,247,246,239,244,226,229,236,239,119,128,30,204,103,2,20,158,20,170,239,238,229,235,243,237,225,236,108,128,246,251,242,225,246,101,129,0,210,20,179,243,237,225,236,108,128,247,242,104,4,20,197,20,208,20,212,21,34,225,242,237,229,238,233,225,110,128,5,85,109,128,33,38,111,2,20,218,20,228,239,235,225,226,239,246,101,128,30,206,242,110,133,1,160,20,243,20,251,21,6,21,14,21,26,225,227,245,244,101,128,30,218,228,239,244,226,229,236,239,119,128,30,226,231,242,225,246,101,128,30,220,232,239,239,235,225,226,239,246,101,128,30,222,244,233,236,228,101,128,30,224,245,238,231,225,242,245,237,236,225,245,116,128,1,80,105,129,1,162,21,54,238,246,229,242,244,229,228,226,242,229,246,101,128,2,14,109,4,21,79,21,107,21,184,21,202,225,227,242,239,110,130,1,76,21,91,21,99,225,227,245,244,101,128,30,82,231,242,225,246,101,128,30,80,229,231,97,132,33,38,21,121,21,132,21,140,21,156,227,249,242,233,236,236,233,99,128,4,96,231,242,229,229,107,128,3,169,242,239,245,238,228,227,249,242,233,236,236,233,99,128,4,122,116,2,21,162,21,177,233,244,236,239,227,249,242,233,236,236,233,99,128,4,124,239,238,239,115,128,3,143,233,227,242,239,110,129,3,159,21,194,244,239,238,239,115,128,3,140,239,238,239,243,240,225,227,101,128,255,47,238,229,242,239,237,225,110,128,33,96,111,2,21,229,21,248,231,239,238,229,107,129,1,234,21,239,237,225,227,242,239,110,128,1,236,240,229,110,128,1,134,115,3,22,6,22,33,22,40,236,225,243,104,130,0,216,22,17,22,25,225,227,245,244,101,128,1,254,243,237,225,236,108,128,247,248,237,225,236,108,128,247,111,244,242,239,235,229,225,227,245,244,101,128,1,254,116,2,22,59,22,70,227,249,242,233,236,236,233,99,128,4,126,233,236,228,101,131,0,213,22,83,22,91,22,102,225,227,245,244,101,128,30,76,228,233,229,242,229,243,233,115,128,30,78,243,237,225,236,108,128,247,245,80,136,0,80,22,130,22,138,22,147,22,159,22,211,22,227,22,246,23,2,225,227,245,244,101,128,30,84,227,233,242,227,236,101,128,36,197,228,239,244,225,227,227,229,238,116,128,30,86,101,3,22,167,22,178,22,190,227,249,242,233,236,236,233,99,128,4,31,232,225,242,237,229,238,233,225,110,128,5,74,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,166,104,2,22,217,22,221,105,128,3,166,239,239,107,128,1,164,105,129,3,160,22,233,247,242,225,242,237,229,238,233,225,110,128,5,83,237,239,238,239,243,240,225,227,101,128,255,48,115,2,23,8,23,25,105,129,3,168,23,14,227,249,242,233,236,236,233,99,128,4,112,237,225,236,108,128,247,112,81,131,0,81,23,42,23,51,23,63,227,233,242,227,236,101,128,36,198,237,239,238,239,243,240,225,227,101,128,255,49,243,237,225,236,108,128,247,113,82,138,0,82,23,95,23,119,23,166,23,217,23,230,23,240,23,245,24,19,24,31,24,43,97,2,23,101,23,112,225,242,237,229,238,233,225,110,128,5,76,227,245,244,101,128,1,84,99,4,23,129,23,136,23,145,23,153,225,242,239,110,128,1,88,229,228,233,236,236,97,128,1,86,233,242,227,236,101,128,36,199,239,237,237,225,225,227,227,229,238,116,128,1,86,100,2,23,172,23,182,226,236,231,242,225,246,101,128,2,16,239,116,2,23,189,23,198,225,227,227,229,238,116,128,30,88,226,229,236,239,119,129,30,90,23,208,237,225,227,242,239,110,128,30,92,229,232,225,242,237,229,238,233,225,110,128,5,80,230,242,225,235,244,245,114,128,33,28,232,111,128,3,161,233,110,2,23,252,24,5,231,243,237,225,236,108,128,246,252,246,229,242,244,229,228,226,242,229,246,101,128,2,18,236,233,238,229,226,229,236,239,119,128,30,94,237,239,238,239,243,240,225,227,101,128,255,50,243,237,225,236,108,129,247,114,24,53,233,238,246,229,242,244,229,100,129,2,129,24,66,243,245,240,229,242,233,239,114,128,2,182,83,139,0,83,24,103,26,17,26,55,26,182,26,221,26,250,27,84,27,105,27,117,27,135,27,143,70,6,24,117,24,209,24,241,25,77,25,119,25,221,48,9,24,137,24,145,24,153,24,161,24,169,24,177,24,185,24,193,24,201,177,176,176,176,48,128,37,12,178,176,176,176,48,128,37,20,179,176,176,176,48,128,37,16,180,176,176,176,48,128,37,24,181,176,176,176,48,128,37,60,182,176,176,176,48,128,37,44,183,176,176,176,48,128,37,52,184,176,176,176,48,128,37,28,185,176,176,176,48,128,37,36,49,3,24,217,24,225,24,233,176,176,176,176,48,128,37,0,177,176,176,176,48,128,37,2,185,176,176,176,48,128,37,97,50,9,25,5,25,13,25,21,25,29,25,37,25,45,25,53,25,61,25,69,176,176,176,176,48,128,37,98,177,176,176,176,48,128,37,86,178,176,176,176,48,128,37,85,179,176,176,176,48,128,37,99,180,176,176,176,48,128,37,81,181,176,176,176,48,128,37,87,182,176,176,176,48,128,37,93,183,176,176,176,48,128,37,92,184,176,176,176,48,128,37,91,51,4,25,87,25,95,25,103,25,111,182,176,176,176,48,128,37,94,183,176,176,176,48,128,37,95,184,176,176,176,48,128,37,90,185,176,176,176,48,128,37,84,52,10,25,141,25,149,25,157,25,165,25,173,25,181,25,189,25,197,25,205,25,213,176,176,176,176,48,128,37,105,177,176,176,176,48,128,37,102,178,176,176,176,48,128,37,96,179,176,176,176,48,128,37,80,180,176,176,176,48,128,37,108,181,176,176,176,48,128,37,103,182,176,176,176,48,128,37,104,183,176,176,176,48,128,37,100,184,176,176,176,48,128,37,101,185,176,176,176,48,128,37,89,53,5,25,233,25,241,25,249,26,1,26,9,176,176,176,176,48,128,37,88,177,176,176,176,48,128,37,82,178,176,176,176,48,128,37,83,179,176,176,176,48,128,37,107,180,176,176,176,48,128,37,106,97,2,26,23,26,44,227,245,244,101,129,1,90,26,32,228,239,244,225,227,227,229,238,116,128,30,100,237,240,233,231,242,229,229,107,128,3,224,99,5,26,67,26,98,26,107,26,147,26,169,225,242,239,110,130,1,96,26,78,26,90,228,239,244,225,227,227,229,238,116,128,30,102,243,237,225,236,108,128,246,253,229,228,233,236,236,97,128,1,94,232,247,97,130,1,143,26,117,26,128,227,249,242,233,236,236,233,99,128,4,216,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,218,233,242,99,2,26,155,26,160,236,101,128,36,200,245,237,230,236,229,120,128,1,92,239,237,237,225,225,227,227,229,238,116,128,2,24,228,239,116,2,26,190,26,199,225,227,227,229,238,116,128,30,96,226,229,236,239,119,129,30,98,26,209,228,239,244,225,227,227,229,238,116,128,30,104,101,2,26,227,26,239,232,225,242,237,229,238,233,225,110,128,5,77,246,229,238,242,239,237,225,110,128,33,102,104,5,27,6,27,34,27,48,27,59,27,72,97,2,27,12,27,23,225,242,237,229,238,233,225,110,128,5,71,227,249,242,233,236,236,233,99,128,4,40,227,232,225,227,249,242,233,236,236,233,99,128,4,41,229,233,227,239,240,244,233,99,128,3,226,232,225,227,249,242,233,236,236,233,99,128,4,186,233,237,225,227,239,240,244,233,99,128,3,236,105,2,27,90,27,96,231,237,97,128,3,163,248,242,239,237,225,110,128,33,101,237,239,238,239,243,240,225,227,101,128,255,51,239,230,244,243,233,231,238,227,249,242,233,236,236,233,99,128,4,44,243,237,225,236,108,128,247,115,244,233,231,237,225,231,242,229,229,107,128,3,218,84,141,0,84,27,186,27,191,27,197,28,7,28,32,28,96,28,147,28,177,28,189,28,201,28,246,29,6,29,46,225,117,128,3,164,226,225,114,128,1,102,99,4,27,207,27,214,27,223,27,250,225,242,239,110,128,1,100,229,228,233,236,236,97,128,1,98,233,242,99,2,27,231,27,236,236,101,128,36,201,245,237,230,236,229,248,226,229,236,239,119,128,30,112,239,237,237,225,225,227,227,229,238,116,128,1,98,228,239,116,2,28,15,28,24,225,227,227,229,238,116,128,30,106,226,229,236,239,119,128,30,108,101,4,28,42,28,53,28,73,28,82,227,249,242,233,236,236,233,99,128,4,34,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,172,238,242,239,237,225,110,128,33,105,244,243,229,227,249,242,233,236,236,233,99,128,4,180,104,3,28,104,28,110,28,136,229,244,97,128,3,152,111,2,28,116,28,121,239,107,128,1,172,242,110,129,0,222,28,128,243,237,225,236,108,128,247,254,242,229,229,242,239,237,225,110,128,33,98,105,2,28,153,28,164,236,228,229,243,237,225,236,108,128,246,254,247,238,225,242,237,229,238,233,225,110,128,5,79,236,233,238,229,226,229,236,239,119,128,30,110,237,239,238,239,243,240,225,227,101,128,255,52,111,2,28,207,28,218,225,242,237,229,238,233,225,110,128,5,57,238,101,3,28,227,28,234,28,240,230,233,246,101,128,1,188,243,233,120,128,1,132,244,247,111,128,1,167,242,229,244,242,239,230,236,229,248,232,239,239,107,128,1,174,115,3,29,14,29,26,29,39,229,227,249,242,233,236,236,233,99,128,4,38,232,229,227,249,242,233,236,236,233,99,128,4,11,237,225,236,108,128,247,116,119,2,29,52,29,64,229,236,246,229,242,239,237,225,110,128,33,107,239,242,239,237,225,110,128,33,97,85,142,0,85,29,105,29,123,29,131,29,198,30,69,30,87,30,198,30,214,30,226,31,21,31,30,31,142,31,149,31,219,225,227,245,244,101,129,0,218,29,115,243,237,225,236,108,128,247,250,226,242,229,246,101,128,1,108,99,3,29,139,29,146,29,188,225,242,239,110,128,1,211,233,242,99,2,29,154,29,159,236,101,128,36,202,245,237,230,236,229,120,130,0,219,29,172,29,180,226,229,236,239,119,128,30,118,243,237,225,236,108,128,247,251,249,242,233,236,236,233,99,128,4,35,100,3,29,206,29,229,30,59,226,108,2,29,213,29,221,225,227,245,244,101,128,1,112,231,242,225,246,101,128,2,20,233,229,242,229,243,233,115,134,0,220,29,251,30,3,30,11,30,34,30,42,30,51,225,227,245,244,101,128,1,215,226,229,236,239,119,128,30,114,99,2,30,17,30,24,225,242,239,110,128,1,217,249,242,233,236,236,233,99,128,4,240,231,242,225,246,101,128,1,219,237,225,227,242,239,110,128,1,213,243,237,225,236,108,128,247,252,239,244,226,229,236,239,119,128,30,228,231,242,225,246,101,129,0,217,30,79,243,237,225,236,108,128,247,249,104,2,30,93,30,171,111,2,30,99,30,109,239,235,225,226,239,246,101,128,30,230,242,110,133,1,175,30,124,30,132,30,143,30,151,30,163,225,227,245,244,101,128,30,232,228,239,244,226,229,236,239,119,128,30,240,231,242,225,246,101,128,30,234,232,239,239,235,225,226,239,246,101,128,30,236,244,233,236,228,101,128,30,238,245,238,231,225,242,245,237,236,225,245,116,129,1,112,30,187,227,249,242,233,236,236,233,99,128,4,242,233,238,246,229,242,244,229,228,226,242,229,246,101,128,2,22,235,227,249,242,233,236,236,233,99,128,4,120,109,2,30,232,31,10,225,227,242,239,110,130,1,106,30,244,30,255,227,249,242,233,236,236,233,99,128,4,238,228,233,229,242,229,243,233,115,128,30,122,239,238,239,243,240,225,227,101,128,255,53,239,231,239,238,229,107,128,1,114,240,243,233,236,239,110,133,3,165,31,49,31,53,31,90,31,121,31,134,49,128,3,210,97,2,31,59,31,81,227,245,244,229,232,239,239,235,243,249,237,226,239,236,231,242,229,229,107,128,3,211,230,242,233,227,225,110,128,1,177,228,233,229,242,229,243,233,115,129,3,171,31,103,232,239,239,235,243,249,237,226,239,236,231,242,229,229,107,128,3,212],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10240);allocate([232,239,239,235,243,249,237,226,239,108,128,3,210,244,239,238,239,115,128,3,142,242,233,238,103,128,1,110,115,3,31,157,31,172,31,179,232,239,242,244,227,249,242,233,236,236,233,99,128,4,14,237,225,236,108,128,247,117,244,242,225,233,231,232,116,2,31,191,31,202,227,249,242,233,236,236,233,99,128,4,174,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,176,244,233,236,228,101,130,1,104,31,231,31,239,225,227,245,244,101,128,30,120,226,229,236,239,119,128,30,116,86,136,0,86,32,11,32,20,32,31,32,60,32,67,32,79,32,91,32,99,227,233,242,227,236,101,128,36,203,228,239,244,226,229,236,239,119,128,30,126,101,2,32,37,32,48,227,249,242,233,236,236,233,99,128,4,18,247,225,242,237,229,238,233,225,110,128,5,78,232,239,239,107,128,1,178,237,239,238,239,243,240,225,227,101,128,255,54,239,225,242,237,229,238,233,225,110,128,5,72,243,237,225,236,108,128,247,118,244,233,236,228,101,128,30,124,87,134,0,87,32,123,32,131,32,154,32,194,32,202,32,214,225,227,245,244,101,128,30,130,227,233,242,99,2,32,140,32,145,236,101,128,36,204,245,237,230,236,229,120,128,1,116,100,2,32,160,32,170,233,229,242,229,243,233,115,128,30,132,239,116,2,32,177,32,186,225,227,227,229,238,116,128,30,134,226,229,236,239,119,128,30,136,231,242,225,246,101,128,30,128,237,239,238,239,243,240,225,227,101,128,255,55,243,237,225,236,108,128,247,119,88,134,0,88,32,238,32,247,33,18,33,31,33,35,33,47,227,233,242,227,236,101,128,36,205,100,2,32,253,33,7,233,229,242,229,243,233,115,128,30,140,239,244,225,227,227,229,238,116,128,30,138,229,232,225,242,237,229,238,233,225,110,128,5,61,105,128,3,158,237,239,238,239,243,240,225,227,101,128,255,56,243,237,225,236,108,128,247,120,89,139,0,89,33,81,33,116,33,139,33,189,33,228,33,236,33,253,34,40,34,52,34,60,34,68,97,2,33,87,33,104,227,245,244,101,129,0,221,33,96,243,237,225,236,108,128,247,253,244,227,249,242,233,236,236,233,99,128,4,98,227,233,242,99,2,33,125,33,130,236,101,128,36,206,245,237,230,236,229,120,128,1,118,100,2,33,145,33,165,233,229,242,229,243,233,115,129,1,120,33,157,243,237,225,236,108,128,247,255,239,116,2,33,172,33,181,225,227,227,229,238,116,128,30,142,226,229,236,239,119,128,30,244,229,114,2,33,196,33,208,233,227,249,242,233,236,236,233,99,128,4,43,245,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,248,231,242,225,246,101,128,30,242,232,239,239,107,129,1,179,33,245,225,226,239,246,101,128,30,246,105,3,34,5,34,16,34,27,225,242,237,229,238,233,225,110,128,5,69,227,249,242,233,236,236,233,99,128,4,7,247,238,225,242,237,229,238,233,225,110,128,5,82,237,239,238,239,243,240,225,227,101,128,255,57,243,237,225,236,108,128,247,121,244,233,236,228,101,128,30,248,245,115,2,34,75,34,113,226,233,103,2,34,83,34,94,227,249,242,233,236,236,233,99,128,4,106,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,108,236,233,244,244,236,101,2,34,124,34,135,227,249,242,233,236,236,233,99,128,4,102,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,104,90,136,0,90,34,174,34,198,34,243,35,14,35,81,35,173,35,185,35,197,97,2,34,180,34,191,225,242,237,229,238,233,225,110,128,5,54,227,245,244,101,128,1,121,99,2,34,204,34,221,225,242,239,110,129,1,125,34,213,243,237,225,236,108,128,246,255,233,242,99,2,34,229,34,234,236,101,128,36,207,245,237,230,236,229,120,128,30,144,228,239,116,130,1,123,34,253,35,6,225,227,227,229,238,116,128,1,123,226,229,236,239,119,128,30,146,101,3,35,22,35,33,35,76,227,249,242,233,236,236,233,99,128,4,23,100,2,35,39,35,58,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,152,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,222,244,97,128,3,150,232,101,4,35,92,35,103,35,119,35,130,225,242,237,229,238,233,225,110,128,5,58,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,193,227,249,242,233,236,236,233,99,128,4,22,100,2,35,136,35,155,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,150,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,220,236,233,238,229,226,229,236,239,119,128,30,148,237,239,238,239,243,240,225,227,101,128,255,58,115,2,35,203,35,210,237,225,236,108,128,247,122,244,242,239,235,101,128,1,181,97,149,0,97,36,8,36,144,37,35,37,211,38,55,38,91,45,10,45,47,45,74,46,43,46,81,47,170,47,242,48,197,48,206,49,79,51,87,52,77,52,124,53,19,53,33,97,7,36,24,36,34,36,41,36,48,36,73,36,89,36,100,226,229,238,231,225,236,105,128,9,134,227,245,244,101,128,0,225,228,229,246,97,128,9,6,231,117,2,36,55,36,64,234,225,242,225,244,105,128,10,134,242,237,245,235,232,105,128,10,6,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,62,242,245,243,241,245,225,242,101,128,51,3,246,239,247,229,236,243,233,231,110,3,36,116,36,126,36,133,226,229,238,231,225,236,105,128,9,190,228,229,246,97,128,9,62,231,245,234,225,242,225,244,105,128,10,190,98,4,36,154,36,195,36,204,36,214,226,242,229,246,233,225,244,233,239,110,2,36,169,36,184,237,225,242,235,225,242,237,229,238,233,225,110,128,5,95,243,233,231,238,228,229,246,97,128,9,112,229,238,231,225,236,105,128,9,133,239,240,239,237,239,230,111,128,49,26,242,229,246,101,134,1,3,36,233,36,241,36,252,37,7,37,15,37,27,225,227,245,244,101,128,30,175,227,249,242,233,236,236,233,99,128,4,209,228,239,244,226,229,236,239,119,128,30,183,231,242,225,246,101,128,30,177,232,239,239,235,225,226,239,246,101,128,30,179,244,233,236,228,101,128,30,181,99,4,37,45,37,52,37,131,37,201,225,242,239,110,128,1,206,233,242,99,2,37,60,37,65,236,101,128,36,208,245,237,230,236,229,120,133,0,226,37,84,37,92,37,103,37,111,37,123,225,227,245,244,101,128,30,165,228,239,244,226,229,236,239,119,128,30,173,231,242,225,246,101,128,30,167,232,239,239,235,225,226,239,246,101,128,30,169,244,233,236,228,101,128,30,171,245,244,101,133,0,180,37,147,37,158,37,175,37,182,37,191,226,229,236,239,247,227,237,98,128,3,23,99,2,37,164,37,169,237,98,128,3,1,239,237,98,128,3,1,228,229,246,97,128,9,84,236,239,247,237,239,100,128,2,207,244,239,238,229,227,237,98,128,3,65,249,242,233,236,236,233,99,128,4,48,100,5,37,223,37,233,37,247,37,253,38,31,226,236,231,242,225,246,101,128,2,1,228,225,235,231,245,242,237,245,235,232,105,128,10,113,229,246,97,128,9,5,233,229,242,229,243,233,115,130,0,228,38,11,38,22,227,249,242,233,236,236,233,99,128,4,211,237,225,227,242,239,110,128,1,223,239,116,2,38,38,38,46,226,229,236,239,119,128,30,161,237,225,227,242,239,110,128,1,225,101,131,0,230,38,65,38,73,38,82,225,227,245,244,101,128,1,253,235,239,242,229,225,110,128,49,80,237,225,227,242,239,110,128,1,227,230,233,105,6,38,107,38,127,41,64,41,70,41,85,44,185,48,2,38,113,38,120,176,178,176,56,128,32,21,184,185,180,49,128,32,164,177,48,3,38,136,40,160,41,39,48,9,38,156,38,176,38,238,39,44,39,106,39,168,39,230,40,36,40,98,49,3,38,164,38,168,38,172,55,128,4,16,56,128,4,17,57,128,4,18,50,10,38,198,38,202,38,206,38,210,38,214,38,218,38,222,38,226,38,230,38,234,48,128,4,19,49,128,4,20,50,128,4,21,51,128,4,1,52,128,4,22,53,128,4,23,54,128,4,24,55,128,4,25,56,128,4,26,57,128,4,27,51,10,39,4,39,8,39,12,39,16,39,20,39,24,39,28,39,32,39,36,39,40,48,128,4,28,49,128,4,29,50,128,4,30,51,128,4,31,52,128,4,32,53,128,4,33,54,128,4,34,55,128,4,35,56,128,4,36,57,128,4,37,52,10,39,66,39,70,39,74,39,78,39,82,39,86,39,90,39,94,39,98,39,102,48,128,4,38,49,128,4,39,50,128,4,40,51,128,4,41,52,128,4,42,53,128,4,43,54,128,4,44,55,128,4,45,56,128,4,46,57,128,4,47,53,10,39,128,39,132,39,136,39,140,39,144,39,148,39,152,39,156,39,160,39,164,48,128,4,144,49,128,4,2,50,128,4,3,51,128,4,4,52,128,4,5,53,128,4,6,54,128,4,7,55,128,4,8,56,128,4,9,57,128,4,10,54,10,39,190,39,194,39,198,39,202,39,206,39,210,39,214,39,218,39,222,39,226,48,128,4,11,49,128,4,12,50,128,4,14,51,128,246,196,52,128,246,197,53,128,4,48,54,128,4,49,55,128,4,50,56,128,4,51,57,128,4,52,55,10,39,252,40,0,40,4,40,8,40,12,40,16,40,20,40,24,40,28,40,32,48,128,4,53,49,128,4,81,50,128,4,54,51,128,4,55,52,128,4,56,53,128,4,57,54,128,4,58,55,128,4,59,56,128,4,60,57,128,4,61,56,10,40,58,40,62,40,66,40,70,40,74,40,78,40,82,40,86,40,90,40,94,48,128,4,62,49,128,4,63,50,128,4,64,51,128,4,65,52,128,4,66,53,128,4,67,54,128,4,68,55,128,4,69,56,128,4,70,57,128,4,71,57,10,40,120,40,124,40,128,40,132,40,136,40,140,40,144,40,148,40,152,40,156,48,128,4,72,49,128,4,73,50,128,4,74,51,128,4,75,52,128,4,76,53,128,4,77,54,128,4,78,55,128,4,79,56,128,4,145,57,128,4,82,49,4,40,170,40,232,40,237,41,7,48,10,40,192,40,196,40,200,40,204,40,208,40,212,40,216,40,220,40,224,40,228,48,128,4,83,49,128,4,84,50,128,4,85,51,128,4,86,52,128,4,87,53,128,4,88,54,128,4,89,55,128,4,90,56,128,4,91,57,128,4,92,177,48,128,4,94,52,4,40,247,40,251,40,255,41,3,53,128,4,15,54,128,4,98,55,128,4,114,56,128,4,116,57,5,41,19,41,23,41,27,41,31,41,35,50,128,246,198,51,128,4,95,52,128,4,99,53,128,4,115,54,128,4,117,56,2,41,45,41,59,51,2,41,51,41,55,49,128,246,199,50,128,246,200,180,54,128,4,217,178,185,57,128,32,14,179,48,2,41,77,41,81,48,128,32,15,49,128,32,13,181,55,7,41,102,41,172,42,237,43,58,44,15,44,108,44,179,51,2,41,108,41,122,56,2,41,114,41,118,49,128,6,106,56,128,6,12,57,8,41,140,41,144,41,148,41,152,41,156,41,160,41,164,41,168,50,128,6,96,51,128,6,97,52,128,6,98,53,128,6,99,54,128,6,100,55,128,6,101,56,128,6,102,57,128,6,103,52,7,41,188,41,220,42,26,42,88,42,120,42,176,42,232,48,5,41,200,41,204,41,208,41,212,41,216,48,128,6,104,49,128,6,105,51,128,6,27,55,128,6,31,57,128,6,33,49,10,41,242,41,246,41,250,41,254,42,2,42,6,42,10,42,14,42,18,42,22,48,128,6,34,49,128,6,35,50,128,6,36,51,128,6,37,52,128,6,38,53,128,6,39,54,128,6,40,55,128,6,41,56,128,6,42,57,128,6,43,50,10,42,48,42,52,42,56,42,60,42,64,42,68,42,72,42,76,42,80,42,84,48,128,6,44,49,128,6,45,50,128,6,46,51,128,6,47,52,128,6,48,53,128,6,49,54,128,6,50,55,128,6,51,56,128,6,52,57,128,6,53,51,5,42,100,42,104,42,108,42,112,42,116,48,128,6,54,49,128,6,55,50,128,6,56,51,128,6,57,52,128,6,58,52,9,42,140,42,144,42,148,42,152,42,156,42,160,42,164,42,168,42,172,48,128,6,64,49,128,6,65,50,128,6,66,51,128,6,67,52,128,6,68,53,128,6,69,54,128,6,70,56,128,6,72,57,128,6,73,53,9,42,196,42,200,42,204,42,208,42,212,42,216,42,220,42,224,42,228,48,128,6,74,49,128,6,75,50,128,6,76,51,128,6,77,52,128,6,78,53,128,6,79,54,128,6,80,55,128,6,81,56,128,6,82,183,48,128,6,71,53,3,42,245,43,21,43,53,48,5,43,1,43,5,43,9,43,13,43,17,53,128,6,164,54,128,6,126,55,128,6,134,56,128,6,152,57,128,6,175,49,5,43,33,43,37,43,41,43,45,43,49,49,128,6,121,50,128,6,136,51,128,6,145,52,128,6,186,57,128,6,210,179,52,128,6,213,54,7,43,74,43,79,43,84,43,89,43,127,43,189,43,251,179,54,128,32,170,180,53,128,5,190,181,56,128,5,195,54,6,43,103,43,107,43,111,43,115,43,119,43,123,52,128,5,208,53,128,5,209,54,128,5,210,55,128,5,211,56,128,5,212,57,128,5,213,55,10,43,149,43,153,43,157,43,161,43,165,43,169,43,173,43,177,43,181,43,185,48,128,5,214,49,128,5,215,50,128,5,216,51,128,5,217,52,128,5,218,53,128,5,219,54,128,5,220,55,128,5,221,56,128,5,222,57,128,5,223,56,10,43,211,43,215,43,219,43,223,43,227,43,231,43,235,43,239,43,243,43,247,48,128,5,224,49,128,5,225,50,128,5,226,51,128,5,227,52,128,5,228,53,128,5,229,54,128,5,230,55,128,5,231,56,128,5,232,57,128,5,233,57,3,44,3,44,7,44,11,48,128,5,234,52,128,251,42,53,128,251,43,55,4,44,25,44,39,44,59,44,64,48,2,44,31,44,35,48,128,251,75,53,128,251,31,49,3,44,47,44,51,44,55,54,128,5,240,55,128,5,241,56,128,5,242,178,51,128,251,53,57,7,44,80,44,84,44,88,44,92,44,96,44,100,44,104,51,128,5,180,52,128,5,181,53,128,5,182,54,128,5,187,55,128,5,184,56,128,5,183,57,128,5,176,56,3,44,116,44,160,44,165,48,7,44,132,44,136,44,140,44,144,44,148,44,152,44,156,48,128,5,178,49,128,5,177,50,128,5,179,51,128,5,194,52,128,5,193,54,128,5,185,55,128,5,188,179,57,128,5,189,52,2,44,171,44,175,49,128,5,191,50,128,5,192,185,178,57,128,2,188,54,3,44,193,44,252,45,3,49,4,44,203,44,219,44,225,44,246,50,2,44,209,44,214,180,56,128,33,5,184,57,128,33,19,179,181,50,128,33,22,181,55,3,44,234,44,238,44,242,51,128,32,44,52,128,32,45,53,128,32,46,182,182,52,128,32,12,179,177,182,55,128,6,109,180,185,179,55,128,2,189,103,2,45,16,45,23,242,225,246,101,128,0,224,117,2,45,29,45,38,234,225,242,225,244,105,128,10,133,242,237,245,235,232,105,128,10,5,104,2,45,53,45,63,233,242,225,231,225,238,97,128,48,66,239,239,235,225,226,239,246,101,128,30,163,105,7,45,90,45,115,45,122,45,134,45,159,45,175,45,255,98,2,45,96,45,105,229,238,231,225,236,105,128,9,144,239,240,239,237,239,230,111,128,49,30,228,229,246,97,128,9,16,229,227,249,242,233,236,236,233,99,128,4,213,231,117,2,45,141,45,150,234,225,242,225,244,105,128,10,144,242,237,245,235,232,105,128,10,16,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,72,110,5,45,187,45,196,45,210,45,226,45,241,225,242,225,226,233,99,128,6,57,230,233,238,225,236,225,242,225,226,233,99,128,254,202,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,203,237,229,228,233,225,236,225,242,225,226,233,99,128,254,204,246,229,242,244,229,228,226,242,229,246,101,128,2,3,246,239,247,229,236,243,233,231,110,3,46,15,46,25,46,32,226,229,238,231,225,236,105,128,9,200,228,229,246,97,128,9,72,231,245,234,225,242,225,244,105,128,10,200,107,2,46,49,46,73,225,244,225,235,225,238,97,129,48,162,46,61,232,225,236,230,247,233,228,244,104,128,255,113,239,242,229,225,110,128,49,79,108,3,46,89,47,145,47,154,101,2,46,95,47,140,102,136,5,208,46,115,46,124,46,139,46,153,46,242,47,0,47,111,47,125,225,242,225,226,233,99,128,6,39,228,225,231,229,243,232,232,229,226,242,229,119,128,251,48,230,233,238,225,236,225,242,225,226,233,99,128,254,142,104,2,46,159,46,234,225,237,250,97,2,46,168,46,201,225,226,239,246,101,2,46,178,46,187,225,242,225,226,233,99,128,6,35,230,233,238,225,236,225,242,225,226,233,99,128,254,132,226,229,236,239,119,2,46,211,46,220,225,242,225,226,233,99,128,6,37,230,233,238,225,236,225,242,225,226,233,99,128,254,136,229,226,242,229,119,128,5,208,236,225,237,229,228,232,229,226,242,229,119,128,251,79,237,97,2,47,7,47,43,228,228,225,225,226,239,246,101,2,47,20,47,29,225,242,225,226,233,99,128,6,34,230,233,238,225,236,225,242,225,226,233,99,128,254,130,235,243,245,242,97,4,47,57,47,66,47,80,47,96,225,242,225,226,233,99,128,6,73,230,233,238,225,236,225,242,225,226,233,99,128,254,240,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,243,237,229,228,233,225,236,225,242,225,226,233,99,128,254,244,240,225,244,225,232,232,229,226,242,229,119,128,251,46,241,225,237,225,244,243,232,229,226,242,229,119,128,251,47,240,104,128,33,53,236,229,241,245,225,108,128,34,76,240,232,97,129,3,177,47,162,244,239,238,239,115,128,3,172,109,4,47,180,47,188,47,199,47,233,225,227,242,239,110,128,1,1,239,238,239,243,240,225,227,101,128,255,65,240,229,242,243,225,238,100,130,0,38,47,213,47,225,237,239,238,239,243,240,225,227,101,128,255,6,243,237,225,236,108,128,247,38,243,241,245,225,242,101,128,51,194,110,4,47,252,48,7,48,129,48,139,226,239,240,239,237,239,230,111,128,49,34,103,4,48,17,48,28,48,42,48,121,226,239,240,239,237,239,230,111,128,49,36,235,232,225,238,235,232,245,244,232,225,105,128,14,90,236,101,131,34,32,48,53,48,106,48,113,226,242,225,227,235,229,116,2,48,65,48,85,236,229,230,116,129,48,8,48,74,246,229,242,244,233,227,225,108,128,254,63,242,233,231,232,116,129,48,9,48,95,246,229,242,244,233,227,225,108,128,254,64,236,229,230,116,128,35,41,242,233,231,232,116,128,35,42,243,244,242,239,109,128,33,43,239,244,229,236,229,233,97,128,3,135,117,2,48,145,48,157,228,225,244,244,225,228,229,246,97,128,9,82,243,246,225,242,97,3,48,169,48,179,48,186,226,229,238,231,225,236,105,128,9,130,228,229,246,97,128,9,2,231,245,234,225,242,225,244,105,128,10,130,239,231,239,238,229,107,128,1,5,112,3,48,214,48,238,49,12,97,2,48,220,48,232,225,244,239,243,241,245,225,242,101,128,51,0,242,229,110,128,36,156,239,243,244,242,239,240,232,101,2,48,251,49,6,225,242,237,229,238,233,225,110,128,5,90,237,239,100,128,2,188,112,2,49,18,49,23,236,101,128,248,255,242,111,2,49,30,49,38,225,227,232,229,115,128,34,80,120,2,49,44,49,64,229,241,245,225,108,129,34,72,49,54,239,242,233,237,225,231,101,128,34,82,233,237,225,244,229,236,249,229,241,245,225,108,128,34,69,114,4,49,89,49,116,49,120,49,165,225,229,97,2,49,97,49,107,229,235,239,242,229,225,110,128,49,142,235,239,242,229,225,110,128,49,141,99,128,35,18,105,2,49,126,49,140,231,232,244,232,225,236,230,242,233,238,103,128,30,154,238,103,130,0,229,49,149,49,157,225,227,245,244,101,128,1,251,226,229,236,239,119,128,30,1,242,239,119,8,49,185,49,192,50,65,50,131,50,181,50,236,51,3,51,78,226,239,244,104,128,33,148,100,3,49,200,49,239,50,30,225,243,104,4,49,212,49,219,49,226,49,234,228,239,247,110,128,33,227,236,229,230,116,128,33,224,242,233,231,232,116,128,33,226,245,112,128,33,225,226,108,5,49,252,50,3,50,10,50,17,50,25,226,239,244,104,128,33,212,228,239,247,110,128,33,211,236,229,230,116,128,33,208,242,233,231,232,116,128,33,210,245,112,128,33,209,239,247,110,131,33,147,50,42,50,49,50,57,236,229,230,116,128,33,153,242,233,231,232,116,128,33,152,247,232,233,244,101,128,33,233,104,2,50,71,50,122,229,225,100,4,50,83,50,93,50,103,50,114,228,239,247,238,237,239,100,128,2,197,236,229,230,244,237,239,100,128,2,194,242,233,231,232,244,237,239,100,128,2,195,245,240,237,239,100,128,2,196,239,242,233,250,229,120,128,248,231,236,229,230,116,131,33,144,50,144,50,161,50,173,228,226,108,129,33,208,50,152,243,244,242,239,235,101,128,33,205,239,246,229,242,242,233,231,232,116,128,33,198,247,232,233,244,101,128,33,230,242,233,231,232,116,132,33,146,50,197,50,209,50,217,50,228,228,226,236,243,244,242,239,235,101,128,33,207,232,229,225,246,121,128,39,158,239,246,229,242,236,229,230,116,128,33,196,247,232,233,244,101,128,33,232,244,225,98,2,50,244,50,251,236,229,230,116,128,33,228,242,233,231,232,116,128,33,229,245,112,132,33,145,51,16,51,44,51,62,51,70,100,2,51,22,51,34,110,129,33,149,51,28,226,243,101,128,33,168,239,247,238,226,225,243,101,128,33,168,236,229,230,116,129,33,150,51,53,239,230,228,239,247,110,128,33,197,242,233,231,232,116,128,33,151,247,232,233,244,101,128,33,231,246,229,242,244,229,120,128,248,230,115,5,51,99,51,175,51,220,52,47,52,57,99,2,51,105,51,157,233,105,2,51,112,51,135,227,233,242,227,245,109,129,0,94,51,123,237,239,238,239,243,240,225,227,101,128,255,62,244,233,236,228,101,129,0,126,51,145,237,239,238,239,243,240,225,227,101,128,255,94,242,233,240,116,129,2,81,51,166,244,245,242,238,229,100,128,2,82,237,225,236,108,2,51,184,51,195,232,233,242,225,231,225,238,97,128,48,65,235,225,244,225,235,225,238,97,129,48,161,51,208,232,225,236,230,247,233,228,244,104,128,255,103,244,229,242,233,115,2,51,230,52,43,107,131,0,42,51,240,52,12,52,35,97,2,51,246,52,4,236,244,239,238,229,225,242,225,226,233,99,128,6,109,242,225,226,233,99,128,6,109,109,2,52,18,52,24,225,244,104,128,34,23,239,238,239,243,240,225,227,101,128,255,10,243,237,225,236,108,128,254,97,109,128,32,66,245,240,229,242,233,239,114,128,246,233,249,237,240,244,239,244,233,227,225,236,236,249,229,241,245,225,108,128,34,67,116,132,0,64,52,89,52,96,52,108,52,116,233,236,228,101,128,0,227,237,239,238,239,243,240,225,227,101,128,255,32,243,237,225,236,108,128,254,107,245,242,238,229,100,128,2,80,117,6,52,138,52,163,52,170,52,195,52,215,52,231,98,2,52,144,52,153,229,238,231,225,236,105,128,9,148,239,240,239,237,239,230,111,128,49,32,228,229,246,97,128,9,20,231,117,2,52,177,52,186,234,225,242,225,244,105,128,10,148,242,237,245,235,232,105,128,10,20,236,229,238,231,244,232,237,225,242,235,226,229,238,231,225,236,105,128,9,215,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,76,246,239,247,229,236,243,233,231,110,3,52,247,53,1,53,8,226,229,238,231,225,236,105,128,9,204,228,229,246,97,128,9,76,231,245,234,225,242,225,244,105,128,10,204,246,225,231,242,225,232,225,228,229,246,97,128,9,61,121,2,53,39,53,51,226,225,242,237,229,238,233,225,110,128,5,97,233,110,130,5,226,53,60,53,75,225,236,244,239,238,229,232,229,226,242,229,119,128,251,32,232,229,226,242,229,119,128,5,226,98,144,0,98,53,120,53,255,54,10,54,19,54,44,55,85,55,147,55,220,57,146,57,158,57,201,57,209,57,219,59,89,59,113,59,122,97,7,53,136,53,146,53,170,53,177,53,202,53,226,53,237,226,229,238,231,225,236,105,128,9,172,227,235,243,236,225,243,104,129,0,92,53,158,237,239,238,239,243,240,225,227,101,128,255,60,228,229,246,97,128,9,44,231,117,2,53,184,53,193,234,225,242,225,244,105,128,10,172,242,237,245,235,232,105,128,10,44,104,2,53,208,53,218,233,242,225,231,225,238,97,128,48,112,244,244,232,225,105,128,14,63,235,225,244,225,235,225,238,97,128,48,208,114,129,0,124,53,243,237,239,238,239,243,240,225,227,101,128,255,92,226,239,240,239,237,239,230,111,128,49,5,227,233,242,227,236,101,128,36,209,228,239,116,2,54,27,54,36,225,227,227,229,238,116,128,30,3,226,229,236,239,119,128,30,5,101,6,54,58,54,79,54,102,54,244,54,255,55,11,225,237,229,228,243,233,248,244,229,229,238,244,232,238,239,244,229,115,128,38,108,99,2,54,85,54,92,225,245,243,101,128,34,53,249,242,233,236,236,233,99,128,4,49,104,5,54,114,54,123,54,137,54,167,54,226,225,242,225,226,233,99,128,6,40,230,233,238,225,236,225,242,225,226,233,99,128,254,144,105,2,54,143,54,158,238,233,244,233,225,236,225,242,225,226,233,99,128,254,145,242,225,231,225,238,97,128,48,121,237,101,2,54,174,54,187,228,233,225,236,225,242,225,226,233,99,128,254,146,229,237,105,2,54,195,54,210,238,233,244,233,225,236,225,242,225,226,233,99,128,252,159,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,8,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,109,235,225,244,225,235,225,238,97,128,48,217,238,225,242,237,229,238,233,225,110,128,5,98,116,132,5,209,55,23,55,43,55,63,55,72,97,129,3,178,55,29,243,249,237,226,239,236,231,242,229,229,107,128,3,208,228,225,231,229,243,104,129,251,49,55,54,232,229,226,242,229,119,128,251,49,232,229,226,242,229,119,128,5,209,242,225,230,229,232,229,226,242,229,119,128,251,76,104,2,55,91,55,141,97,3,55,99,55,109,55,116,226,229,238,231,225,236,105,128,9,173,228,229,246,97,128,9,45,231,117,2,55,123,55,132,234,225,242,225,244,105,128,10,173,242,237,245,235,232,105,128,10,45,239,239,107,128,2,83,105,5,55,159,55,170,55,181,55,195,55,209,232,233,242,225,231,225,238,97,128,48,115,235,225,244,225,235,225,238,97,128,48,211,236,225,226,233,225,236,227,236,233,227,107,128,2,152,238,228,233,231,245,242,237,245,235,232,105,128,10,2,242,245,243,241,245,225,242,101,128,51,49,108,3,55,228,57,129,57,140,97,2,55,234,57,124,227,107,6,55,249,56,2,56,39,56,188,56,243,57,39,227,233,242,227,236,101,128,37,207,100,2,56,8,56,17,233,225,237,239,238,100,128,37,198,239,247,238,240,239,233,238,244,233,238,231,244,242,233,225,238,231,236,101,128,37,188,108,2,56,45,56,148,101,2,56,51,56,87,230,244,240,239,233,238,244,233,238,103,2,56,66,56,76,240,239,233,238,244,229,114,128,37,196,244,242,233,225,238,231,236,101,128,37,192,238,244,233,227,245,236,225,242,226,242,225,227,235,229,116,2,56,107,56,127,236,229,230,116,129,48,16,56,116,246,229,242,244,233,227,225,108,128,254,59,242,233,231,232,116,129,48,17,56,137,246,229,242,244,233,227,225,108,128,254,60,239,247,229,114,2,56,157,56,172,236,229,230,244,244,242,233,225,238,231,236,101,128,37,227,242,233,231,232,244,244,242,233,225,238,231,236,101,128,37,226,114,2,56,194,56,205,229,227,244,225,238,231,236,101,128,37,172,233,231,232,244,240,239,233,238,244,233,238,103,2,56,222,56,232,240,239,233,238,244,229,114,128,37,186,244,242,233,225,238,231,236,101,128,37,182,115,3,56,251,57,25,57,33,109,2,57,1,57,13,225,236,236,243,241,245,225,242,101,128,37,170,233,236,233,238,231,230,225,227,101,128,38,59,241,245,225,242,101,128,37,160,244,225,114,128,38,5,245,240,112,2,57,47,57,85,229,114,2,57,54,57,69,236,229,230,244,244,242,233,225,238,231,236,101,128,37,228,242,233,231,232,244,244,242,233,225,238,231,236,101,128,37,229,239,233,238,244,233,238,103,2,57,97,57,113,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,180,244,242,233,225,238,231,236,101,128,37,178,238,107,128,36,35,233,238,229,226,229,236,239,119,128,30,7,239,227,107,128,37,136,237,239,238,239,243,240,225,227,101,128,255,66,111,3,57,166,57,179,57,190,226,225,233,237,225,233,244,232,225,105,128,14,26,232,233,242,225,231,225,238,97,128,48,124,235,225,244,225,235,225,238,97,128,48,220,240,225,242,229,110,128,36,157,241,243,241,245,225,242,101,128,51,195,114,4,57,229,58,223,59,40,59,79,225,99,2,57,236,58,130,101,3,57,244,57,249,58,61,229,120,128,248,244,236,229,230,116,133,0,123,58,10,58,15,58,37,58,45,58,50,226,116,128,248,243,109,2,58,21,58,26,233,100,128,248,242,239,238,239,243,240,225,227,101,128,255,91,243,237,225,236,108,128,254,91,244,112,128,248,241,246,229,242,244,233,227,225,108,128,254,55,242,233,231,232,116,133,0,125,58,79,58,84,58,106,58,114,58,119,226,116,128,248,254,109,2,58,90,58,95,233,100,128,248,253,239,238,239,243,240,225,227,101,128,255,93,243,237,225,236,108,128,254,92,244,112,128,248,252,246,229,242,244,233,227,225,108,128,254,56,235,229,116,2,58,138,58,180,236,229,230,116,132,0,91,58,153,58,158,58,163,58,175,226,116,128,248,240,229,120,128,248,239,237,239,238,239,243,240,225,227,101,128,255,59,244,112,128,248,238,242,233,231,232,116,132,0,93,58,196,58,201,58,206,58,218,226,116,128,248,251,229,120,128,248,250,237,239,238,239,243,240,225,227,101,128,255,61,244,112,128,248,249,229,246,101,131,2,216,58,235,58,246,58,252,226,229,236,239,247,227,237,98,128,3,46,227,237,98,128,3,6,233,238,246,229,242,244,229,100,3,59,11,59,22,59,28,226,229,236,239,247,227,237,98,128,3,47,227,237,98,128,3,17,228,239,245,226,236,229,227,237,98,128,3,97,233,228,231,101,2,59,49,59,60,226,229,236,239,247,227,237,98,128,3,42,233,238,246,229,242,244,229,228,226,229,236,239,247,227,237,98,128,3,58,239,235,229,238,226,225,114,128,0,166,115,2,59,95,59,103,244,242,239,235,101,128,1,128,245,240,229,242,233,239,114,128,246,234,244,239,240,226,225,114,128,1,131,117,3,59,130,59,141,59,152,232,233,242,225,231,225,238,97,128,48,118,235,225,244,225,235,225,238,97,128,48,214,236,108,2,59,159,59,189,229,116,130,32,34,59,168,59,178,233,238,246,229,242,243,101,128,37,216,239,240,229,242,225,244,239,114,128,34,25,243,229,249,101,128,37,206,99,143,0,99,59,230,60,179,60,190,60,254,61,29,61,122,63,33,64,17,64,117,64,166,67,158,67,166,67,176,67,188,67,221,97,9,59,250,60,5,60,15,60,22,60,29,60,54,60,64,60,116,60,125,225,242,237,229,238,233,225,110,128,5,110,226,229,238,231,225,236,105,128,9,154,227,245,244,101,128,1,7,228,229,246,97,128,9,26,231,117,2,60,36,60,45,234,225,242,225,244,105,128,10,154,242,237,245,235,232,105,128,10,26,236,243,241,245,225,242,101,128,51,136,238,228,242,225,226,233,238,228,117,4,60,82,60,92,60,98,60,105,226,229,238,231,225,236,105,128,9,129,227,237,98,128,3,16,228,229,246,97,128,9,1,231,245,234,225,242,225,244,105,128,10,129,240,243,236,239,227,107,128,33,234,114,3,60,133,60,139,60,165,229,239,102,128,33,5,239,110,130,2,199,60,148,60,159,226,229,236,239,247,227,237,98,128,3,44,227,237,98,128,3,12,242,233,225,231,229,242,229,244,245,242,110,128,33,181,226,239,240,239,237,239,230,111,128,49,24,99,4,60,200,60,207,60,226,60,248,225,242,239,110,128,1,13,229,228,233,236,236,97,129,0,231,60,218,225,227,245,244,101,128,30,9,233,242,99,2,60,234,60,239,236,101,128,36,210,245,237,230,236,229,120,128,1,9,245,242,108,128,2,85,100,2,61,4,61,20,239,116,129,1,11,61,11,225,227,227,229,238,116,128,1,11,243,241,245,225,242,101,128,51,197,101,2,61,35,61,51,228,233,236,236,97,129,0,184,61,45,227,237,98,128,3,39,238,116,132,0,162,61,64,61,88,61,100,61,111,105,2,61,70,61,78,231,242,225,228,101,128,33,3,238,230,229,242,233,239,114,128,246,223,237,239,238,239,243,240,225,227,101,128,255,224,239,236,228,243,244,249,236,101,128,247,162,243,245,240,229,242,233,239,114,128,246,224,104,5,61,134,61,197,61,208,62,136,62,228,97,4,61,144,61,155,61,165,61,172,225,242,237,229,238,233,225,110,128,5,121,226,229,238,231,225,236,105,128,9,155,228,229,246,97,128,9,27,231,117,2,61,179,61,188,234,225,242,225,244,105,128,10,155,242,237,245,235,232,105,128,10,27,226,239,240,239,237,239,230,111,128,49,20,101,6,61,222,61,242,62,10,62,78,62,90,62,111,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,189,99,2,61,248,62,0,235,237,225,242,107,128,39,19,249,242,233,236,236,233,99,128,4,71,100,2,62,16,62,60,229,243,227,229,238,228,229,114,2,62,29,62,49,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,191,227,249,242,233,236,236,233,99,128,4,183,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,245,232,225,242,237,229,238,233,225,110,128,5,115,235,232,225,235,225,243,243,233,225,238,227,249,242,233,236,236,233,99,128,4,204,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,185,105,129,3,199,62,142,229,245,227,104,4,62,155,62,190,62,205,62,214,97,2,62,161,62,176,227,233,242,227,236,229,235,239,242,229,225,110,128,50,119,240,225,242,229,238,235,239,242,229,225,110,128,50,23,227,233,242,227,236,229,235,239,242,229,225,110,128,50,105,235,239,242,229,225,110,128,49,74,240,225,242,229,238,235,239,242,229,225,110,128,50,9,111,2,62,234,63,28,227,104,3,62,243,63,9,63,19,225,110,2,62,250,63,2,231,244,232,225,105,128,14,10,244,232,225,105,128,14,8,233,238,231,244,232,225,105,128,14,9,239,229,244,232,225,105,128,14,12,239,107,128,1,136,105,2,63,39,63,141,229,245,99,5,63,53,63,88,63,103,63,112,63,126,97,2,63,59,63,74,227,233,242,227,236,229,235,239,242,229,225,110,128,50,118,240,225,242,229,238,235,239,242,229,225,110,128,50,22,227,233,242,227,236,229,235,239,242,229,225,110,128,50,104,235,239,242,229,225,110,128,49,72,240,225,242,229,238,235,239,242,229,225,110,128,50,8,245,240,225,242,229,238,235,239,242,229,225,110,128,50,28,242,99,2,63,148,63,243,236,101,132,37,203,63,161,63,172,63,177,63,201,237,245,236,244,233,240,236,121,128,34,151,239,116,128,34,153,112,2,63,183,63,189,236,245,115,128,34,149,239,243,244,225,236,237,225,242,107,128,48,54,247,233,244,104,2,63,210,63,226,236,229,230,244,232,225,236,230,226,236,225,227,107,128,37,208,242,233,231,232,244,232,225,236,230,226,236,225,227,107,128,37,209,245,237,230,236,229,120,130,2,198,64,0,64,11,226,229,236,239,247,227,237,98,128,3,45,227,237,98,128,3,2,108,3,64,25,64,31,64,85,229,225,114,128,35,39,233,227,107,4,64,43,64,54,64,63,64,73,225,236,246,229,239,236,225,114,128,1,194,228,229,238,244,225,108,128,1,192,236,225,244,229,242,225,108,128,1,193,242,229,244,242,239,230,236,229,120,128,1,195,245,98,129,38,99,64,92,243,245,233,116,2,64,101,64,109,226,236,225,227,107,128,38,99,247,232,233,244,101,128,38,103,109,3,64,125,64,139,64,150,227,245,226,229,228,243,241,245,225,242,101,128,51,164,239,238,239,243,240,225,227,101,128,255,67,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,160,111,8,64,184,64,195,65,26,65,224,66,253,67,28,67,135,67,144,225,242,237,229,238,233,225,110,128,5,129,236,239,110,131,0,58,64,207,64,232,64,251,237,239,110,2,64,215,64,223,229,244,225,242,121,128,32,161,239,243,240,225,227,101,128,255,26,115,2,64,238,64,244,233,231,110,128,32,161,237,225,236,108,128,254,85,244,242,233,225,238,231,245,236,225,114,2,65,10,65,20,232,225,236,230,237,239,100,128,2,209,237,239,100,128,2,208,109,2,65,32,65,217,237,97,134,0,44,65,49,65,113,65,124,65,136,65,166,65,189,97,3,65,57,65,83,65,91,226,239,246,101,2,65,66,65,72,227,237,98,128,3,19,242,233,231,232,244,227,237,98,128,3,21,227,227,229,238,116,128,246,195,114,2,65,97,65,104,225,226,233,99,128,6,12,237,229,238,233,225,110,128,5,93,233,238,230,229,242,233,239,114,128,246,225,237,239,238,239,243,240,225,227,101,128,255,12,242,229,246,229,242,243,229,100,2,65,149,65,160,225,226,239,246,229,227,237,98,128,3,20,237,239,100,128,2,189,115,2,65,172,65,179,237,225,236,108,128,254,80,245,240,229,242,233,239,114,128,246,226,244,245,242,238,229,100,2,65,200,65,211,225,226,239,246,229,227,237,98,128,3,18,237,239,100,128,2,187,240,225,243,115,128,38,60,110,2,65,230,65,239,231,242,245,229,238,116,128,34,69,116,2,65,245,66,3,239,245,242,233,238,244,229,231,242,225,108,128,34,46,242,239,108,142,35,3,66,37,66,43,66,58,66,73,66,117,66,162,66,176,66,181,66,186,66,191,66,197,66,202,66,243,66,248,193,195,75,128,0,6,66,2,66,49,66,54,197,76,128,0,7,83,128,0,8,67,2,66,64,66,69,193,78,128,0,24,82,128,0,13,68,3,66,81,66,107,66,112,67,4,66,91,66,95,66,99,66,103,49,128,0,17,50,128,0,18,51,128,0,19,52,128,0,20,197,76,128,0,127,204,69,128,0,16,69,5,66,129,66,133,66,138,66,143,66,148,77,128,0,25,206,81,128,0,5,207,84,128,0,4,211,67,128,0,27,84,2,66,154,66,158,66,128,0,23,88,128,0,3,70,2,66,168,66,172,70,128,0,12,83,128,0,28,199,83,128,0,29,200,84,128,0,9,204,70,128,0,10,206,193,75,128,0,21,210,83,128,0,30,83,5,66,214,66,218,66,228,66,233,66,238,73,128,0,15,79,129,0,14,66,224,84,128,0,2,212,88,128,0,1,213,66,128,0,26,217,78,128,0,22,213,83,128,0,31,214,84,128,0,11,240,249,242,233,231,232,116,129,0,169,67,9,115,2,67,15,67,21,225,238,115,128,248,233,229,242,233,102,128,246,217,114,2,67,34,67,118,238,229,242,226,242,225,227,235,229,116,2,67,49,67,83,236,229,230,116,130,48,12,67,60,67,72,232,225,236,230,247,233,228,244,104,128,255,98,246,229,242,244,233,227,225,108,128,254,65,242,233,231,232,116,130,48,13,67,95,67,107,232,225,236,230,247,233,228,244,104,128,255,99,246,229,242,244,233,227,225,108,128,254,66,240,239,242,225,244,233,239,238,243,241,245,225,242,101,128,51,127,243,241,245,225,242,101,128,51,199,246,229,242,235,231,243,241,245,225,242,101,128,51,198,240,225,242,229,110,128,36,158,242,245,250,229,233,242,111,128,32,162,243,244,242,229,244,227,232,229,100,128,2,151,245,114,2,67,195,67,213,236,121,2,67,202,67,208,225,238,100,128,34,207,239,114,128,34,206,242,229,238,227,121,128,0,164,249,114,4,67,232,67,240,67,247,67,255,194,242,229,246,101,128,246,209,198,236,229,120,128,246,210,226,242,229,246,101,128,246,212,230,236,229,120,128,246,213,100,146,0,100,68,46,69,184,70,208,71,12,71,188,72,142,72,204,73,133,73,146,73,155,73,181,73,206,73,215,75,26,75,34,75,45,75,65,75,93,97,11,68,70,68,81,68,91,68,163,68,226,68,237,68,248,69,61,69,123,69,129,69,159,225,242,237,229,238,233,225,110,128,5,100,226,229,238,231,225,236,105,128,9,166,100,5,68,103,68,112,68,118,68,132,68,148,225,242,225,226,233,99,128,6,54,229,246,97,128,9,38,230,233,238,225,236,225,242,225,226,233,99,128,254,190,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,191,237,229,228,233,225,236,225,242,225,226,233,99,128,254,192,103,3,68,171,68,188,68,202,229,243,104,129,5,188,68,179,232,229,226,242,229,119,128,5,188,231,229,114,129,32,32,68,196,228,226,108,128,32,33,117,2,68,208,68,217,234,225,242,225,244,105,128,10,166,242,237,245,235,232,105,128,10,38,232,233,242,225,231,225,238,97,128,48,96,235,225,244,225,235,225,238,97,128,48,192,108,3,69,0,69,9,69,47,225,242,225,226,233,99,128,6,47,229,116,130,5,211,69,18,69,38,228,225,231,229,243,104,129,251,51,69,29,232,229,226,242,229,119,128,251,51,232,229,226,242,229,119,128,5,211,230,233,238,225,236,225,242,225,226,233,99,128,254,170,237,237,97,3,69,71,69,80,69,92,225,242,225,226,233,99,128,6,79,236,239,247,225,242,225,226,233,99,128,6,79,244,225,238,97,2,69,101,69,115,236,244,239,238,229,225,242,225,226,233,99,128,6,76,242,225,226,233,99,128,6,76,238,228,97,128,9,100,242,231,97,2,69,137,69,146,232,229,226,242,229,119,128,5,167,236,229,230,244,232,229,226,242,229,119,128,5,167,243,233,225,240,238,229,245,237,225,244,225,227,249,242,233,236,236,233,227,227,237,98,128,4,133,98,3,69,192,70,189,70,199,108,9,69,212,69,220,70,77,70,85,70,101,70,112,70,130,70,144,70,155,199,242,225,246,101,128,246,211,97,2,69,226,70,27,238,231,236,229,226,242,225,227,235,229,116,2,69,242,70,6,236,229,230,116,129,48,10,69,251,246,229,242,244,233,227,225,108,128,254,61,242,233,231,232,116,129,48,11,70,16,246,229,242,244,233,227,225,108,128,254,62,114,2,70,33,70,54,227,232,233,238,246,229,242,244,229,228,226,229,236,239,247,227,237,98,128,3,43,242,239,119,2,70,62,70,69,236,229,230,116,128,33,212,242,233,231,232,116,128,33,210,228,225,238,228,97,128,9,101,231,242,225,246,101,129,246,214,70,95,227,237,98,128,3,15,233,238,244,229,231,242,225,108,128,34,44,236,239,247,236,233,238,101,129,32,23,70,124,227,237,98,128,3,51,239,246,229,242,236,233,238,229,227,237,98,128,3,63,240,242,233,237,229,237,239,100,128,2,186,246,229,242,244,233,227,225,108,2,70,168,70,174,226,225,114,128,32,22,236,233,238,229,225,226,239,246,229,227,237,98,128,3,14,239,240,239,237,239,230,111,128,49,9,243,241,245,225,242,101,128,51,200,99,4,70,218,70,225,70,234,71,5,225,242,239,110,128,1,15,229,228,233,236,236,97,128,30,17,233,242,99,2,70,242,70,247,236,101,128,36,211,245,237,230,236,229,248,226,229,236,239,119,128,30,19,242,239,225,116,128,1,17,100,4,71,22,71,103,71,113,71,164,97,4,71,32,71,42,71,49,71,74,226,229,238,231,225,236,105,128,9,161,228,229,246,97,128,9,33,231,117,2,71,56,71,65,234,225,242,225,244,105,128,10,161,242,237,245,235,232,105,128,10,33,108,2,71,80,71,89,225,242,225,226,233,99,128,6,136,230,233,238,225,236,225,242,225,226,233,99,128,251,137,228,232,225,228,229,246,97,128,9,92,232,97,3,71,122,71,132,71],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+20480);allocate([139,226,229,238,231,225,236,105,128,9,162,228,229,246,97,128,9,34,231,117,2,71,146,71,155,234,225,242,225,244,105,128,10,162,242,237,245,235,232,105,128,10,34,239,116,2,71,171,71,180,225,227,227,229,238,116,128,30,11,226,229,236,239,119,128,30,13,101,8,71,206,72,3,72,10,72,35,72,45,72,56,72,101,72,137,99,2,71,212,71,249,233,237,225,236,243,229,240,225,242,225,244,239,114,2,71,230,71,239,225,242,225,226,233,99,128,6,107,240,229,242,243,233,225,110,128,6,107,249,242,233,236,236,233,99,128,4,52,231,242,229,101,128,0,176,232,105,2,72,17,72,26,232,229,226,242,229,119,128,5,173,242,225,231,225,238,97,128,48,103,233,227,239,240,244,233,99,128,3,239,235,225,244,225,235,225,238,97,128,48,199,108,2,72,62,72,85,229,244,101,2,72,70,72,77,236,229,230,116,128,35,43,242,233,231,232,116,128,35,38,244,97,129,3,180,72,92,244,245,242,238,229,100,128,1,141,238,239,237,233,238,225,244,239,242,237,233,238,245,243,239,238,229,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,248,250,104,128,2,164,104,2,72,148,72,198,97,3,72,156,72,166,72,173,226,229,238,231,225,236,105,128,9,167,228,229,246,97,128,9,39,231,117,2,72,180,72,189,234,225,242,225,244,105,128,10,167,242,237,245,235,232,105,128,10,39,239,239,107,128,2,87,105,6,72,218,73,11,73,71,73,82,73,93,73,103,97,2,72,224,72,246,236,249,244,233,235,225,244,239,238,239,115,129,3,133,72,240,227,237,98,128,3,68,237,239,238,100,129,38,102,72,255,243,245,233,244,247,232,233,244,101,128,38,98,229,242,229,243,233,115,133,0,168,73,30,73,38,73,49,73,55,73,63,225,227,245,244,101,128,246,215,226,229,236,239,247,227,237,98,128,3,36,227,237,98,128,3,8,231,242,225,246,101,128,246,216,244,239,238,239,115,128,3,133,232,233,242,225,231,225,238,97,128,48,98,235,225,244,225,235,225,238,97,128,48,194,244,244,239,237,225,242,107,128,48,3,246,105,2,73,110,73,121,228,101,129,0,247,73,117,115,128,34,35,243,233,239,238,243,236,225,243,104,128,34,21,234,229,227,249,242,233,236,236,233,99,128,4,82,235,243,232,225,228,101,128,37,147,108,2,73,161,73,172,233,238,229,226,229,236,239,119,128,30,15,243,241,245,225,242,101,128,51,151,109,2,73,187,73,195,225,227,242,239,110,128,1,17,239,238,239,243,240,225,227,101,128,255,68,238,226,236,239,227,107,128,37,132,111,10,73,237,73,249,74,3,74,14,74,25,74,97,74,102,74,113,74,228,74,254,227,232,225,228,225,244,232,225,105,128,14,14,228,229,235,244,232,225,105,128,14,20,232,233,242,225,231,225,238,97,128,48,105,235,225,244,225,235,225,238,97,128,48,201,236,236,225,114,132,0,36,74,40,74,51,74,63,74,74,233,238,230,229,242,233,239,114,128,246,227,237,239,238,239,243,240,225,227,101,128,255,4,239,236,228,243,244,249,236,101,128,247,36,115,2,74,80,74,87,237,225,236,108,128,254,105,245,240,229,242,233,239,114,128,246,228,238,103,128,32,171,242,245,243,241,245,225,242,101,128,51,38,116,6,74,127,74,144,74,166,74,177,74,209,74,216,225,227,227,229,238,116,129,2,217,74,138,227,237,98,128,3,7,226,229,236,239,247,99,2,74,155,74,160,237,98,128,3,35,239,237,98,128,3,35,235,225,244,225,235,225,238,97,128,48,251,236,229,243,115,2,74,186,74,190,105,128,1,49,106,129,246,190,74,196,243,244,242,239,235,229,232,239,239,107,128,2,132,237,225,244,104,128,34,197,244,229,228,227,233,242,227,236,101,128,37,204,245,226,236,229,249,239,228,240,225,244,225,104,129,251,31,74,245,232,229,226,242,229,119,128,251,31,247,238,244,225,227,107,2,75,9,75,20,226,229,236,239,247,227,237,98,128,3,30,237,239,100,128,2,213,240,225,242,229,110,128,36,159,243,245,240,229,242,233,239,114,128,246,235,116,2,75,51,75,57,225,233,108,128,2,86,239,240,226,225,114,128,1,140,117,2,75,71,75,82,232,233,242,225,231,225,238,97,128,48,101,235,225,244,225,235,225,238,97,128,48,197,122,132,1,243,75,105,75,114,75,133,75,170,225,236,244,239,238,101,128,2,163,99,2,75,120,75,127,225,242,239,110,128,1,198,245,242,108,128,2,165,101,2,75,139,75,159,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,225,227,249,242,233,236,236,233,99,128,4,85,232,229,227,249,242,233,236,236,233,99,128,4,95,101,151,0,101,75,233,75,252,76,30,77,4,77,66,77,99,77,111,77,134,77,187,79,43,79,101,79,203,80,63,80,198,81,17,81,48,81,110,81,163,82,98,82,231,82,251,83,39,83,130,97,2,75,239,75,246,227,245,244,101,128,0,233,242,244,104,128,38,65,98,3,76,4,76,13,76,23,229,238,231,225,236,105,128,9,143,239,240,239,237,239,230,111,128,49,28,242,229,246,101,128,1,21,99,5,76,42,76,115,76,129,76,161,76,250,97,2,76,48,76,109,238,228,242,97,3,76,59,76,66,76,77,228,229,246,97,128,9,13,231,245,234,225,242,225,244,105,128,10,141,246,239,247,229,236,243,233,231,110,2,76,91,76,98,228,229,246,97,128,9,69,231,245,234,225,242,225,244,105,128,10,197,242,239,110,128,1,27,229,228,233,236,236,225,226,242,229,246,101,128,30,29,104,2,76,135,76,146,225,242,237,229,238,233,225,110,128,5,101,249,233,247,238,225,242,237,229,238,233,225,110,128,5,135,233,242,99,2,76,169,76,174,236,101,128,36,212,245,237,230,236,229,120,134,0,234,76,195,76,203,76,211,76,222,76,230,76,242,225,227,245,244,101,128,30,191,226,229,236,239,119,128,30,25,228,239,244,226,229,236,239,119,128,30,199,231,242,225,246,101,128,30,193,232,239,239,235,225,226,239,246,101,128,30,195,244,233,236,228,101,128,30,197,249,242,233,236,236,233,99,128,4,84,100,4,77,14,77,24,77,30,77,40,226,236,231,242,225,246,101,128,2,5,229,246,97,128,9,15,233,229,242,229,243,233,115,128,0,235,239,116,130,1,23,77,49,77,58,225,227,227,229,238,116,128,1,23,226,229,236,239,119,128,30,185,101,2,77,72,77,83,231,245,242,237,245,235,232,105,128,10,15,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,71,230,227,249,242,233,236,236,233,99,128,4,68,103,2,77,117,77,124,242,225,246,101,128,0,232,245,234,225,242,225,244,105,128,10,143,104,4,77,144,77,155,77,166,77,176,225,242,237,229,238,233,225,110,128,5,103,226,239,240,239,237,239,230,111,128,49,29,233,242,225,231,225,238,97,128,48,72,239,239,235,225,226,239,246,101,128,30,187,105,4,77,197,77,208,79,10,79,25,226,239,240,239,237,239,230,111,128,49,31,231,232,116,142,0,56,77,242,77,251,78,5,78,35,78,42,78,80,78,105,78,150,78,184,78,196,78,207,78,240,78,248,79,3,225,242,225,226,233,99,128,6,104,226,229,238,231,225,236,105,128,9,238,227,233,242,227,236,101,129,36,103,78,16,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,145,228,229,246,97,128,9,110,229,229,110,2,78,50,78,59,227,233,242,227,236,101,128,36,113,112,2,78,65,78,72,225,242,229,110,128,36,133,229,242,233,239,100,128,36,153,231,117,2,78,87,78,96,234,225,242,225,244,105,128,10,238,242,237,245,235,232,105,128,10,110,104,2,78,111,78,137,97,2,78,117,78,128,227,235,225,242,225,226,233,99,128,6,104,238,231,250,232,239,117,128,48,40,238,239,244,229,226,229,225,237,229,100,128,38,107,105,2,78,156,78,174,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,39,238,230,229,242,233,239,114,128,32,136,237,239,238,239,243,240,225,227,101,128,255,24,239,236,228,243,244,249,236,101,128,247,56,112,2,78,213,78,220,225,242,229,110,128,36,123,229,114,2,78,227,78,233,233,239,100,128,36,143,243,233,225,110,128,6,248,242,239,237,225,110,128,33,119,243,245,240,229,242,233,239,114,128,32,120,244,232,225,105,128,14,88,238,246,229,242,244,229,228,226,242,229,246,101,128,2,7,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,101,107,2,79,49,79,73,225,244,225,235,225,238,97,129,48,168,79,61,232,225,236,230,247,233,228,244,104,128,255,116,111,2,79,79,79,94,238,235,225,242,231,245,242,237,245,235,232,105,128,10,116,242,229,225,110,128,49,84,108,3,79,109,79,120,79,181,227,249,242,233,236,236,233,99,128,4,59,101,2,79,126,79,133,237,229,238,116,128,34,8,246,229,110,3,79,143,79,152,79,173,227,233,242,227,236,101,128,36,106,112,2,79,158,79,165,225,242,229,110,128,36,126,229,242,233,239,100,128,36,146,242,239,237,225,110,128,33,122,236,233,240,243,233,115,129,32,38,79,192,246,229,242,244,233,227,225,108,128,34,238,109,5,79,215,79,243,79,254,80,18,80,29,225,227,242,239,110,130,1,19,79,227,79,235,225,227,245,244,101,128,30,23,231,242,225,246,101,128,30,21,227,249,242,233,236,236,233,99,128,4,60,228,225,243,104,129,32,20,80,7,246,229,242,244,233,227,225,108,128,254,49,239,238,239,243,240,225,227,101,128,255,69,112,2,80,35,80,55,232,225,243,233,243,237,225,242,235,225,242,237,229,238,233,225,110,128,5,91,244,249,243,229,116,128,34,5,110,6,80,77,80,88,80,99,80,143,80,175,80,190,226,239,240,239,237,239,230,111,128,49,35,227,249,242,233,236,236,233,99,128,4,61,100,2,80,105,80,124,225,243,104,129,32,19,80,113,246,229,242,244,233,227,225,108,128,254,50,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,163,103,130,1,75,80,151,80,162,226,239,240,239,237,239,230,111,128,49,37,232,229,227,249,242,233,236,236,233,99,128,4,165,232,239,239,235,227,249,242,233,236,236,233,99,128,4,200,243,240,225,227,101,128,32,2,111,3,80,206,80,214,80,223,231,239,238,229,107,128,1,25,235,239,242,229,225,110,128,49,83,240,229,110,130,2,91,80,233,80,242,227,236,239,243,229,100,128,2,154,242,229,246,229,242,243,229,100,130,2,92,81,1,81,10,227,236,239,243,229,100,128,2,94,232,239,239,107,128,2,93,112,2,81,23,81,30,225,242,229,110,128,36,160,243,233,236,239,110,129,3,181,81,40,244,239,238,239,115,128,3,173,241,117,2,81,55,81,99,225,108,130,0,61,81,64,81,76,237,239,238,239,243,240,225,227,101,128,255,29,115,2,81,82,81,89,237,225,236,108,128,254,102,245,240,229,242,233,239,114,128,32,124,233,246,225,236,229,238,227,101,128,34,97,114,3,81,118,81,129,81,140,226,239,240,239,237,239,230,111,128,49,38,227,249,242,233,236,236,233,99,128,4,64,229,246,229,242,243,229,100,129,2,88,81,152,227,249,242,233,236,236,233,99,128,4,77,115,6,81,177,81,188,81,208,82,33,82,78,82,88,227,249,242,233,236,236,233,99,128,4,65,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,171,104,132,2,131,81,220,81,227,82,2,82,17,227,245,242,108,128,2,134,239,242,116,2,81,235,81,242,228,229,246,97,128,9,14,246,239,247,229,236,243,233,231,238,228,229,246,97,128,9,70,242,229,246,229,242,243,229,228,236,239,239,112,128,1,170,243,241,245,225,244,242,229,246,229,242,243,229,100,128,2,133,237,225,236,108,2,82,42,82,53,232,233,242,225,231,225,238,97,128,48,71,235,225,244,225,235,225,238,97,129,48,167,82,66,232,225,236,230,247,233,228,244,104,128,255,106,244,233,237,225,244,229,100,128,33,46,245,240,229,242,233,239,114,128,246,236,116,5,82,110,82,136,82,140,82,157,82,223,97,130,3,183,82,118,82,128,242,237,229,238,233,225,110,128,5,104,244,239,238,239,115,128,3,174,104,128,0,240,233,236,228,101,129,30,189,82,149,226,229,236,239,119,128,30,27,238,225,232,244,97,3,82,169,82,201,82,210,230,239,245,235,104,2,82,179,82,188,232,229,226,242,229,119,128,5,145,236,229,230,244,232,229,226,242,229,119,128,5,145,232,229,226,242,229,119,128,5,145,236,229,230,244,232,229,226,242,229,119,128,5,145,245,242,238,229,100,128,1,221,117,2,82,237,82,246,235,239,242,229,225,110,128,49,97,242,111,128,32,172,246,239,247,229,236,243,233,231,110,3,83,11,83,21,83,28,226,229,238,231,225,236,105,128,9,199,228,229,246,97,128,9,71,231,245,234,225,242,225,244,105,128,10,199,120,2,83,45,83,118,227,236,225,109,132,0,33,83,60,83,71,83,98,83,110,225,242,237,229,238,233,225,110,128,5,92,100,2,83,77,83,82,226,108,128,32,60,239,247,110,129,0,161,83,90,243,237,225,236,108,128,247,161,237,239,238,239,243,240,225,227,101,128,255,1,243,237,225,236,108,128,247,33,233,243,244,229,238,244,233,225,108,128,34,3,250,104,131,2,146,83,141,83,160,83,171,99,2,83,147,83,154,225,242,239,110,128,1,239,245,242,108,128,2,147,242,229,246,229,242,243,229,100,128,1,185,244,225,233,108,128,1,186,102,140,0,102,83,206,84,32,84,43,84,52,84,64,84,167,84,183,86,191,86,204,86,230,88,107,88,115,97,4,83,216,83,223,83,234,83,245,228,229,246,97,128,9,94,231,245,242,237,245,235,232,105,128,10,94,232,242,229,238,232,229,233,116,128,33,9,244,232,97,3,83,255,84,8,84,20,225,242,225,226,233,99,128,6,78,236,239,247,225,242,225,226,233,99,128,6,78,244,225,238,225,242,225,226,233,99,128,6,75,226,239,240,239,237,239,230,111,128,49,8,227,233,242,227,236,101,128,36,213,228,239,244,225,227,227,229,238,116,128,30,31,101,3,84,72,84,150,84,160,104,4,84,82,84,105,84,119,84,135,225,114,2,84,89,84,96,225,226,233,99,128,6,65,237,229,238,233,225,110,128,5,134,230,233,238,225,236,225,242,225,226,233,99,128,254,210,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,211,237,229,228,233,225,236,225,242,225,226,233,99,128,254,212,233,227,239,240,244,233,99,128,3,229,237,225,236,101,128,38,64,102,130,251,0,84,175,84,179,105,128,251,3,108,128,251,4,105,136,251,1,84,203,84,243,84,254,85,20,85,142,85,159,85,167,85,180,230,244,229,229,110,2,84,213,84,222,227,233,242,227,236,101,128,36,110,112,2,84,228,84,235,225,242,229,110,128,36,130,229,242,233,239,100,128,36,150,231,245,242,229,228,225,243,104,128,32,18,236,236,229,100,2,85,7,85,13,226,239,120,128,37,160,242,229,227,116,128,37,172,238,225,108,5,85,34,85,73,85,90,85,107,85,123,235,225,102,130,5,218,85,44,85,64,228,225,231,229,243,104,129,251,58,85,55,232,229,226,242,229,119,128,251,58,232,229,226,242,229,119,128,5,218,237,229,109,129,5,221,85,81,232,229,226,242,229,119,128,5,221,238,245,110,129,5,223,85,98,232,229,226,242,229,119,128,5,223,240,101,129,5,227,85,114,232,229,226,242,229,119,128,5,227,244,243,225,228,105,129,5,229,85,133,232,229,226,242,229,119,128,5,229,242,243,244,244,239,238,229,227,232,233,238,229,243,101,128,2,201,243,232,229,249,101,128,37,201,244,225,227,249,242,233,236,236,233,99,128,4,115,246,101,142,0,53,85,213,85,222,85,232,86,6,86,13,86,23,86,48,86,75,86,109,86,121,86,132,86,165,86,173,86,184,225,242,225,226,233,99,128,6,101,226,229,238,231,225,236,105,128,9,235,227,233,242,227,236,101,129,36,100,85,243,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,142,228,229,246,97,128,9,107,229,233,231,232,244,232,115,128,33,93,231,117,2,86,30,86,39,234,225,242,225,244,105,128,10,235,242,237,245,235,232,105,128,10,107,232,97,2,86,55,86,66,227,235,225,242,225,226,233,99,128,6,101,238,231,250,232,239,117,128,48,37,105,2,86,81,86,99,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,36,238,230,229,242,233,239,114,128,32,133,237,239,238,239,243,240,225,227,101,128,255,21,239,236,228,243,244,249,236,101,128,247,53,112,2,86,138,86,145,225,242,229,110,128,36,120,229,114,2,86,152,86,158,233,239,100,128,36,140,243,233,225,110,128,6,245,242,239,237,225,110,128,33,116,243,245,240,229,242,233,239,114,128,32,117,244,232,225,105,128,14,85,108,129,251,2,86,197,239,242,233,110,128,1,146,109,2,86,210,86,221,239,238,239,243,240,225,227,101,128,255,70,243,241,245,225,242,101,128,51,153,111,4,86,240,87,6,87,18,87,25,230,97,2,86,247,86,255,238,244,232,225,105,128,14,31,244,232,225,105,128,14,29,238,231,237,225,238,244,232,225,105,128,14,79,242,225,236,108,128,34,0,245,114,142,0,52,87,58,87,67,87,77,87,107,87,114,87,139,87,166,87,200,87,212,87,231,87,242,88,19,88,27,88,38,225,242,225,226,233,99,128,6,100,226,229,238,231,225,236,105,128,9,234,227,233,242,227,236,101,129,36,99,87,88,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,141,228,229,246,97,128,9,106,231,117,2,87,121,87,130,234,225,242,225,244,105,128,10,234,242,237,245,235,232,105,128,10,106,232,97,2,87,146,87,157,227,235,225,242,225,226,233,99,128,6,100,238,231,250,232,239,117,128,48,36,105,2,87,172,87,190,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,35,238,230,229,242,233,239,114,128,32,132,237,239,238,239,243,240,225,227,101,128,255,20,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,247,239,236,228,243,244,249,236,101,128,247,52,112,2,87,248,87,255,225,242,229,110,128,36,119,229,114,2,88,6,88,12,233,239,100,128,36,139,243,233,225,110,128,6,244,242,239,237,225,110,128,33,115,243,245,240,229,242,233,239,114,128,32,116,116,2,88,44,88,82,229,229,110,2,88,52,88,61,227,233,242,227,236,101,128,36,109,112,2,88,67,88,74,225,242,229,110,128,36,129,229,242,233,239,100,128,36,149,104,2,88,88,88,93,225,105,128,14,84,244,239,238,229,227,232,233,238,229,243,101,128,2,203,240,225,242,229,110,128,36,161,242,97,2,88,122,88,130,227,244,233,239,110,128,32,68,238,99,128,32,163,103,144,0,103,88,171,89,117,89,140,89,201,89,218,90,139,91,132,91,217,91,230,92,88,92,113,92,141,92,163,93,108,93,130,93,232,97,9,88,191,88,201,88,208,88,215,89,23,89,48,89,59,89,70,89,104,226,229,238,231,225,236,105,128,9,151,227,245,244,101,128,1,245,228,229,246,97,128,9,23,102,4,88,225,88,234,88,248,89,8,225,242,225,226,233,99,128,6,175,230,233,238,225,236,225,242,225,226,233,99,128,251,147,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,148,237,229,228,233,225,236,225,242,225,226,233,99,128,251,149,231,117,2,89,30,89,39,234,225,242,225,244,105,128,10,151,242,237,245,235,232,105,128,10,23,232,233,242,225,231,225,238,97,128,48,76,235,225,244,225,235,225,238,97,128,48,172,237,237,97,130,3,179,89,80,89,93,236,225,244,233,238,243,237,225,236,108,128,2,99,243,245,240,229,242,233,239,114,128,2,224,238,231,233,225,227,239,240,244,233,99,128,3,235,98,2,89,123,89,133,239,240,239,237,239,230,111,128,49,13,242,229,246,101,128,1,31,99,4,89,150,89,157,89,166,89,188,225,242,239,110,128,1,231,229,228,233,236,236,97,128,1,35,233,242,99,2,89,174,89,179,236,101,128,36,214,245,237,230,236,229,120,128,1,29,239,237,237,225,225,227,227,229,238,116,128,1,35,228,239,116,129,1,33,89,209,225,227,227,229,238,116,128,1,33,101,6,89,232,89,243,89,254,90,9,90,28,90,130,227,249,242,233,236,236,233,99,128,4,51,232,233,242,225,231,225,238,97,128,48,82,235,225,244,225,235,225,238,97,128,48,178,239,237,229,244,242,233,227,225,236,236,249,229,241,245,225,108,128,34,81,114,3,90,36,90,85,90,95,229,243,104,3,90,46,90,61,90,70,225,227,227,229,238,244,232,229,226,242,229,119,128,5,156,232,229,226,242,229,119,128,5,243,237,245,241,228,225,237,232,229,226,242,229,119,128,5,157,237,225,238,228,226,236,115,128,0,223,243,232,225,249,233,109,2,90,106,90,121,225,227,227,229,238,244,232,229,226,242,229,119,128,5,158,232,229,226,242,229,119,128,5,244,244,225,237,225,242,107,128,48,19,104,5,90,151,91,28,91,91,91,116,91,122,97,4,90,161,90,171,90,194,90,219,226,229,238,231,225,236,105,128,9,152,100,2,90,177,90,188,225,242,237,229,238,233,225,110,128,5,114,229,246,97,128,9,24,231,117,2,90,201,90,210,234,225,242,225,244,105,128,10,152,242,237,245,235,232,105,128,10,24,233,110,4,90,230,90,239,90,253,91,13,225,242,225,226,233,99,128,6,58,230,233,238,225,236,225,242,225,226,233,99,128,254,206,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,207,237,229,228,233,225,236,225,242,225,226,233,99,128,254,208,101,3,91,36,91,57,91,74,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,149,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,147,245,240,244,245,242,238,227,249,242,233,236,236,233,99,128,4,145,232,97,2,91,98,91,105,228,229,246,97,128,9,90,231,245,242,237,245,235,232,105,128,10,90,239,239,107,128,2,96,250,243,241,245,225,242,101,128,51,147,105,3,91,140,91,151,91,162,232,233,242,225,231,225,238,97,128,48,78,235,225,244,225,235,225,238,97,128,48,174,109,2,91,168,91,179,225,242,237,229,238,233,225,110,128,5,99,229,108,130,5,210,91,188,91,208,228,225,231,229,243,104,129,251,50,91,199,232,229,226,242,229,119,128,251,50,232,229,226,242,229,119,128,5,210,234,229,227,249,242,233,236,236,233,99,128,4,83,236,239,244,244,225,108,2,91,241,92,2,233,238,246,229,242,244,229,228,243,244,242,239,235,101,128,1,190,243,244,239,112,132,2,148,92,17,92,28,92,34,92,66,233,238,246,229,242,244,229,100,128,2,150,237,239,100,128,2,192,242,229,246,229,242,243,229,100,130,2,149,92,49,92,55,237,239,100,128,2,193,243,245,240,229,242,233,239,114,128,2,228,243,244,242,239,235,101,129,2,161,92,77,242,229,246,229,242,243,229,100,128,2,162,109,2,92,94,92,102,225,227,242,239,110,128,30,33,239,238,239,243,240,225,227,101,128,255,71,111,2,92,119,92,130,232,233,242,225,231,225,238,97,128,48,84,235,225,244,225,235,225,238,97,128,48,180,240,97,2,92,148,92,154,242,229,110,128,36,162,243,241,245,225,242,101,128,51,172,114,2,92,169,93,10,97,2,92,175,92,183,228,233,229,238,116,128,34,7,246,101,134,0,96,92,200,92,211,92,228,92,235,92,244,93,0,226,229,236,239,247,227,237,98,128,3,22,99,2,92,217,92,222,237,98,128,3,0,239,237,98,128,3,0,228,229,246,97,128,9,83,236,239,247,237,239,100,128,2,206,237,239,238,239,243,240,225,227,101,128,255,64,244,239,238,229,227,237,98,128,3,64,229,225,244,229,114,132,0,62,93,26,93,45,93,57,93,100,229,241,245,225,108,129,34,101,93,36,239,242,236,229,243,115,128,34,219,237,239,238,239,243,240,225,227,101,128,255,30,111,2,93,63,93,89,114,2,93,69,93,82,229,241,245,233,246,225,236,229,238,116,128,34,115,236,229,243,115,128,34,119,246,229,242,229,241,245,225,108,128,34,103,243,237,225,236,108,128,254,101,115,2,93,114,93,122,227,242,233,240,116,128,2,97,244,242,239,235,101,128,1,229,117,4,93,140,93,151,93,208,93,219,232,233,242,225,231,225,238,97,128,48,80,233,108,2,93,158,93,183,236,229,237,239,116,2,93,168,93,175,236,229,230,116,128,0,171,242,233,231,232,116,128,0,187,243,233,238,231,108,2,93,193,93,200,236,229,230,116,128,32,57,242,233,231,232,116,128,32,58,235,225,244,225,235,225,238,97,128,48,176,242,225,237,245,243,241,245,225,242,101,128,51,24,249,243,241,245,225,242,101,128,51,201,104,144,0,104,94,22,96,164,96,199,96,236,97,20,98,164,98,184,99,149,99,161,99,173,100,241,100,249,101,4,101,13,101,93,101,97,97,13,94,50,94,89,94,99,94,129,94,154,94,232,94,244,95,13,95,28,95,57,95,70,95,128,95,137,97,2,94,56,94,75,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,169,236,244,239,238,229,225,242,225,226,233,99,128,6,193,226,229,238,231,225,236,105,128,9,185,228,101,2,94,106,94,124,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,179,246,97,128,9,57,231,117,2,94,136,94,145,234,225,242,225,244,105,128,10,185,242,237,245,235,232,105,128,10,57,104,4,94,164,94,173,94,187,94,217,225,242,225,226,233,99,128,6,45,230,233,238,225,236,225,242,225,226,233,99,128,254,162,105,2,94,193,94,208,238,233,244,233,225,236,225,242,225,226,233,99,128,254,163,242,225,231,225,238,97,128,48,111,237,229,228,233,225,236,225,242,225,226,233,99,128,254,164,233,244,245,243,241,245,225,242,101,128,51,42,235,225,244,225,235,225,238,97,129,48,207,95,1,232,225,236,230,247,233,228,244,104,128,255,138,236,225,238,244,231,245,242,237,245,235,232,105,128,10,77,237,250,97,2,95,36,95,45,225,242,225,226,233,99,128,6,33,236,239,247,225,242,225,226,233,99,128,6,33,238,231,245,236,230,233,236,236,229,114,128,49,100,114,2,95,76,95,92,228,243,233,231,238,227,249,242,233,236,236,233,99,128,4,74,240,239,239,110,2,95,101,95,114,236,229,230,244,226,225,242,226,245,112,128,33,188,242,233,231,232,244,226,225,242,226,245,112,128,33,192,243,241,245,225,242,101,128,51,202,244,225,102,3,95,147,95,239,96,74,240,225,244,225,104,134,5,178,95,167,95,172,95,186,95,195,95,210,95,226,177,54,128,5,178,50,2,95,178,95,182,51,128,5,178,102,128,5,178,232,229,226,242,229,119,128,5,178,238,225,242,242,239,247,232,229,226,242,229,119,128,5,178,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,178,247,233,228,229,232,229,226,242,229,119,128,5,178,241,225,237,225,244,115,135,5,179,96,6,96,11,96,16,96,21,96,30,96,45,96,61,177,98,128,5,179,178,56,128,5,179,179,52,128,5,179,232,229,226,242,229,119,128,5,179,238,225,242,242,239,247,232,229,226,242,229,119,128,5,179,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,179,247,233,228,229,232,229,226,242,229,119,128,5,179,243,229,231,239,108,135,5,177,96,96,96,101,96,106,96,111,96,120,96,135,96,151,177,55,128,5,177,178,52,128,5,177,179,48,128,5,177,232,229,226,242,229,119,128,5,177,238,225,242,242,239,247,232,229,226,242,229,119,128,5,177,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,177,247,233,228,229,232,229,226,242,229,119,128,5,177,98,3,96,172,96,177,96,187,225,114,128,1,39,239,240,239,237,239,230,111,128,49,15,242,229,246,229,226,229,236,239,119,128,30,43,99,2,96,205,96,214,229,228,233,236,236,97,128,30,41,233,242,99,2,96,222,96,227,236,101,128,36,215,245,237,230,236,229,120,128,1,37,100,2,96,242,96,252,233,229,242,229,243,233,115,128,30,39,239,116,2,97,3,97,12,225,227,227,229,238,116,128,30,35,226,229,236,239,119,128,30,37,101,136,5,212,97,40,97,73,97,93,98,66,98,82,98,127,98,136,98,149,225,242,116,129,38,101,97,48,243,245,233,116,2,97,57,97,65,226,236,225,227,107,128,38,101,247,232,233,244,101,128,38,97,228,225,231,229,243,104,129,251,52,97,84,232,229,226,242,229,119,128,251,52,104,6,97,107,97,135,97,143,97,193,97,239,98,32,97,2,97,113,97,127,236,244,239,238,229,225,242,225,226,233,99,128,6,193,242,225,226,233,99,128,6,71,229,226,242,229,119,128,5,212,230,233,238,225,236,97,2,97,154,97,185,236,116,2,97,161,97,173,239,238,229,225,242,225,226,233,99,128,251,167,244,247,239,225,242,225,226,233,99,128,254,234,242,225,226,233,99,128,254,234,232,225,237,250,225,225,226,239,246,101,2,97,208,97,222,230,233,238,225,236,225,242,225,226,233,99,128,251,165,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,251,164,105,2,97,245,98,23,238,233,244,233,225,236,97,2,98,1,98,15,236,244,239,238,229,225,242,225,226,233,99,128,251,168,242,225,226,233,99,128,254,235,242,225,231,225,238,97,128,48,120,237,229,228,233,225,236,97,2,98,44,98,58,236,244,239,238,229,225,242,225,226,233,99,128,251,169,242,225,226,233,99,128,254,236,233,243,229,233,229,242,225,243,241,245,225,242,101,128,51,123,107,2,98,88,98,112,225,244,225,235,225,238,97,129,48,216,98,100,232,225,236,230,247,233,228,244,104,128,255,141,245,244,225,225,242,245,243,241,245,225,242,101,128,51,54,238,231,232,239,239,107,128,2,103,242,245,244,245,243,241,245,225,242,101,128,51,57,116,129,5,215,98,155,232,229,226,242,229,119,128,5,215,232,239,239,107,129,2,102,98,173,243,245,240,229,242,233,239,114,128,2,177,105,4,98,194,99,23,99,34,99,59,229,245,104,4,98,206,98,241,99,0,99,9,97,2,98,212,98,227,227,233,242,227,236,229,235,239,242,229,225,110,128,50,123,240,225,242,229,238,235,239,242,229,225,110,128,50,27,227,233,242,227,236,229,235,239,242,229,225,110,128,50,109,235,239,242,229,225,110,128,49,78,240,225,242,229,238,235,239,242,229,225,110,128,50,13,232,233,242,225,231,225,238,97,128,48,114,235,225,244,225,235,225,238,97,129,48,210,99,47,232,225,236,230,247,233,228,244,104,128,255,139,242,233,113,134,5,180,99,77,99,82,99,96,99,105,99,120,99,136,177,52,128,5,180,50,2,99,88,99,92,49,128,5,180,100,128,5,180,232,229,226,242,229,119,128,5,180,238,225,242,242,239,247,232,229,226,242,229,119,128,5,180,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,180,247,233,228,229,232,229,226,242,229,119,128,5,180,236,233,238,229,226,229,236,239,119,128,30,150,237,239,238,239,243,240,225,227,101,128,255,72,111,9,99,193,99,204,99,228,99,253,100,85,100,98,100,184,100,224,100,235,225,242,237,229,238,233,225,110,128,5,112,232,105,2,99,211,99,219,240,244,232,225,105,128,14,43,242,225,231,225,238,97,128,48,123,235,225,244,225,235,225,238,97,129,48,219,99,241,232,225,236,230,247,233,228,244,104,128,255,142,236,225,109,135,5,185,100,17,100,22,100,27,100,32,100,41,100,56,100,72,177,57,128,5,185,178,54,128,5,185,179,50,128,5,185,232,229,226,242,229,119,128,5,185,238,225,242,242,239,247,232,229,226,242,229,119,128,5,185,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,185,247,233,228,229,232,229,226,242,229,119,128,5,185,238,239,235,232,245,235,244,232,225,105,128,14,46,111,2,100,104,100,174,107,4,100,114,100,126,100,132,100,154,225,226,239,246,229,227,239,237,98,128,3,9,227,237,98,128,3,9,240,225,236,225,244,225,236,233,250,229,228,226,229,236,239,247,227,237,98,128,3,33,242,229,244,242,239,230,236,229,248,226,229,236,239,247,227,237,98,128,3,34,238,243,241,245,225,242,101,128,51,66,114,2,100,190,100,217,105,2,100,196,100,205,227,239,240,244,233,99,128,3,233,250,239,238,244,225,236,226,225,114,128,32,21,238,227,237,98,128,3,27,244,243,240,242,233,238,231,115,128,38,104,245,243,101,128,35,2,240,225,242,229,110,128,36,163,243,245,240,229,242,233,239,114,128,2,176,244,245,242,238,229,100,128,2,101,117,4,101,23,101,34,101,47,101,72,232,233,242,225,231,225,238,97,128,48,117,233,233,244,239,243,241,245,225,242,101,128,51,51,235,225,244,225,235,225,238,97,129,48,213,101,60,232,225,236,230,247,233,228,244,104,128,255,140,238,231,225,242,245,237,236,225,245,116,129,2,221,101,87,227,237,98,128,3,11,118,128,1,149,249,240,232,229,110,132,0,45,101,113,101,124,101,136,101,159,233,238,230,229,242,233,239,114,128,246,229,237,239,238,239,243,240,225,227,101,128,255,13,115,2,101,142,101,149,237,225,236,108,128,254,99,245,240,229,242,233,239,114,128,246,230,244,247,111,128,32,16,105,149,0,105,101,211,101,234,102,12,102,59,105,197,106,61,106,98,106,125,107,31,107,35,107,73,107,95,107,179,108,88,108,163,108,171,108,184,109,15,109,72,109,100,109,144,225,99,2,101,218,101,224,245,244,101,128,0,237,249,242,233,236,236,233,99,128,4,79,98,3,101,242,101,251,102,5,229,238,231,225,236,105,128,9,135,239,240,239,237,239,230,111,128,49,39,242,229,246,101,128,1,45,99,3,102,20,102,27,102,49,225,242,239,110,128,1,208,233,242,99,2,102,35,102,40,236,101,128,36,216,245,237,230,236,229,120,128,0,238,249,242,233,236,236,233,99,128,4,86,100,4,102,69,102,79,105,154,105,187,226,236,231,242,225,246,101,128,2,9,101,2,102,85,105,149,239,231,242,225,240,104,7,102,106,102,120,102,133,105,62,105,93,105,106,105,118,229,225,242,244,232,227,233,242,227,236,101,128,50,143,230,233,242,229,227,233,242,227,236,101,128,50,139,233,99,14,102,164,102,180,103,23,103,77,103,143,103,172,103,188,103,245,104,38,104,50,104,77,104,144,105,26,105,55,225,236,236,233,225,238,227,229,240,225,242,229,110,128,50,63,99,4,102,190,102,201,102,215,102,222,225,236,236,240,225,242,229,110,128,50,58,229,238,244,242,229,227,233,242,227,236,101,128,50,165,236,239,243,101,128,48,6,111,3,102,230,102,245,103,9,237,237,97,129,48,1,102,238,236,229,230,116,128,255,100,238,231,242,225,244,245,236,225,244,233,239,238,240,225,242,229,110,128,50,55,242,242,229,227,244,227,233,242,227,236,101,128,50,163,101,3,103,31,103,43,103,60,225,242,244,232,240,225,242,229,110,128,50,47,238,244,229,242,240,242,233,243,229,240,225,242,229,110,128,50,61,248,227,229,236,236,229,238,244,227,233,242,227,236,101,128,50,157,102,2,103,83,103,98,229,243,244,233,246,225,236,240,225,242,229,110,128,50,64,105,2,103,104,103,133,238,225,238,227,233,225,108,2,103,116,103,125,227,233,242,227,236,101,128,50,150,240,225,242,229,110,128,50,54,242,229,240,225,242,229,110,128,50,43,104,2,103,149,103,160,225,246,229,240,225,242,229,110,128,50,50,233,231,232,227,233,242,227,236,101,128,50,164,233,244,229,242,225,244,233,239,238,237,225,242,107,128,48,5,108,3,103,196,103,222,103,234,225,226,239,114,2,103,205,103,214,227,233,242,227,236,101,128,50,152,240,225,242,229,110,128,50,56,229,230,244,227,233,242,227,236,101,128,50,167,239,247,227,233,242,227,236,101,128,50,166,109,2,103,251,104,27,101,2,104,1,104,16,228,233,227,233,238,229,227,233,242,227,236,101,128,50,169,244,225,236,240,225,242,229,110,128,50,46,239,239,238,240,225,242,229,110,128,50,42,238,225,237,229,240,225,242,229,110,128,50,52,112,2,104,56,104,64,229,242,233,239,100,128,48,2,242,233,238,244,227,233,242,227,236,101,128,50,158,114,2,104,83,104,131,101,3,104,91,104,102,104,117,225,227,232,240,225,242,229,110,128,50,67,240,242,229,243,229,238,244,240,225,242,229,110,128,50,57,243,239,245,242,227,229,240,225,242,229,110,128,50,62,233,231,232,244,227,233,242,227,236,101,128,50,168,115,5,104,156,104,185,104,199,104,224,104,252,101,2,104,162,104,175,227,242,229,244,227,233,242,227,236,101,128,50,153,236,230,240,225,242,229,110,128,50,66,239,227,233,229,244,249,240,225,242,229,110,128,50,51,112,2,104,205,104,211,225,227,101,128,48,0,229,227,233,225,236,240,225,242,229,110,128,50,53,116,2,104,230,104,241,239,227,235,240,225,242,229,110,128,50,49,245,228,249,240,225,242,229,110,128,50,59,117,2,105,2,105,11,238,240,225,242,229,110,128,50,48,240,229,242,246,233,243,229,240,225,242,229,110,128,50,60,119,2,105,32,105,44,225,244,229,242,240,225,242,229,110,128,50,44,239,239,228,240,225,242,229,110,128,50,45,250,229,242,111,128,48,7,109,2,105,68,105,81,229,244,225,236,227,233,242,227,236,101,128,50,142,239,239,238,227,233,242,227,236,101,128,50,138,238,225,237,229,227,233,242,227,236,101,128,50,148,243,245,238,227,233,242,227,236,101,128,50,144,119,2,105,124,105,137,225,244,229,242,227,233,242,227,236,101,128,50,140,239,239,228,227,233,242,227,236,101,128,50,141,246,97,128,9,7,233,229,242,229,243,233,115,130,0,239,105,168,105,176,225,227,245,244,101,128,30,47,227,249,242,233,236,236,233,99,128,4,229,239,244,226,229,236,239,119,128,30,203,101,3,105,205,105,221,105,232,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,215,227,249,242,233,236,236,233,99,128,4,53,245,238,103,4,105,244,106,23,106,38,106,47,97,2,105,250,106,9,227,233,242,227,236,229,235,239,242,229,225,110,128,50,117,240,225,242,229,238,235,239,242,229,225,110,128,50,21,227,233,242,227,236,229,235,239,242,229,225,110,128,50,103,235,239,242,229,225,110,128,49,71,240,225,242,229,238,235,239,242,229,225,110,128,50,7,103,2,106,67,106,74,242,225,246,101,128,0,236,117,2,106,80,106,89,234,225,242,225,244,105,128,10,135,242,237,245,235,232,105,128,10,7,104,2,106,104,106,114,233,242,225,231,225,238,97,128,48,68,239,239,235,225,226,239,246,101,128,30,201,105,8,106,143,106,153,106,164,106,171,106,196,106,212,106,227,106,243,226,229,238,231,225,236,105,128,9,136,227,249,242,233,236,236,233,99,128,4,56,228,229,246,97,128,9,8,231,117,2,106,178,106,187,234,225,242,225,244,105,128,10,136,242,237,245,235,232,105,128,10,8,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,64,238,246,229,242,244,229,228,226,242,229,246,101,128,2,11,243,232,239,242,244,227,249,242,233,236,236,233,99,128,4,57,246,239,247,229,236,243,233,231,110,3,107,3,107,13,107,20,226,229,238,231,225,236,105,128,9,192,228,229,246,97,128,9,64,231,245,234,225,242,225,244,105,128,10,192,106,128,1,51,107,2,107,41,107,65,225,244,225,235,225,238,97,129,48,164,107,53,232,225,236,230,247,233,228,244,104,128,255,114,239,242,229,225,110,128,49,99,108,2,107,79,107,84,228,101,128,2,220,245,249,232,229,226,242,229,119,128,5,172,109,2,107,101,107,168,97,3,107,109,107,129,107,154,227,242,239,110,129,1,43,107,118,227,249,242,233,236,236,233,99,128,4,227,231,229,239,242,225,240,240,242,239,248,233,237,225,244,229,236,249,229,241,245,225,108,128,34,83,244,242,225,231,245,242,237,245,235,232,105,128,10,63,239,238,239,243,240,225,227,101,128,255,73,110,5,107,191,107,201,107,210,107,222,108,50,227,242,229,237,229,238,116,128,34,6,230,233,238,233,244,121,128,34,30,233,225,242,237,229,238,233,225,110,128,5,107,116,2,107,228,108,40,101,2,107,234,108,29,231,242,225,108,131,34,43,107,247,108,9,108,14,98,2,107,253,108,5,239,244,244,239,109,128,35,33,116,128,35,33,229,120,128,248,245,116,2,108,20,108,25,239,112,128,35,32,112,128,35,32,242,243,229,227,244,233,239,110,128,34,41,233,243,241,245,225,242,101,128,51,5,118,3,108,58,108,67,108,76,226,245,236,236,229,116,128,37,216,227,233,242,227,236,101,128,37,217,243,237,233,236,229,230,225,227,101,128,38,59,111,3,108,96,108,107,108,115,227,249,242,233,236,236,233,99,128,4,81,231,239,238,229,107,128,1,47,244,97,131,3,185,108,126,108,147,108,155,228,233,229,242,229,243,233,115,129,3,202,108,139,244,239,238,239,115,128,3,144,236,225,244,233,110,128,2,105,244,239,238,239,115,128,3,175,240,225,242,229,110,128,36,164,242,233,231,245,242,237,245,235,232,105,128,10,114,115,4,108,194,108,239,108,253,109,5,237,225,236,108,2,108,203,108,214,232,233,242,225,231,225,238,97,128,48,67,235,225,244,225,235,225,238,97,129,48,163,108,227,232,225,236,230,247,233,228,244,104,128,255,104,243,232,225,242,226,229,238,231,225,236,105,128,9,250,244,242,239,235,101,128,2,104,245,240,229,242,233,239,114,128,246,237,116,2,109,21,109,55,229,242,225,244,233,239,110,2,109,33,109,44,232,233,242,225,231,225,238,97,128,48,157,235,225,244,225,235,225,238,97,128,48,253,233,236,228,101,129,1,41,109,64,226,229,236,239,119,128,30,45,117,2,109,78,109,89,226,239,240,239,237,239,230,111,128,49,41,227,249,242,233,236,236,233,99,128,4,78,246,239,247,229,236,243,233,231,110,3,109,116,109,126,109,133,226,229,238,231,225,236,105,128,9,191,228,229,246,97,128,9,63,231,245,234,225,242,225,244,105,128,10,191,250,232,233,244,243,97,2,109,155,109,166,227,249,242,233,236,236,233,99,128,4,117,228,226,236,231,242,225,246,229,227,249,242,233,236,236,233,99,128,4,119,106,138,0,106,109,209,110,16,110,27,110,77,110,93,110,206,111,19,111,24,111,36,111,44,97,4,109,219,109,230,109,240,109,247,225,242,237,229,238,233,225,110,128,5,113,226,229,238,231,225,236,105,128,9,156,228,229,246,97,128,9,28,231,117,2,109,254,110,7,234,225,242,225,244,105,128,10,156,242,237,245,235,232,105,128,10,28,226,239,240,239,237,239,230,111,128,49,16,99,3,110,35,110,42,110,64,225,242,239,110,128,1,240,233,242,99,2,110,50,110,55,236,101,128,36,217,245,237,230,236,229,120,128,1,53,242,239,243,243,229,228,244,225,233,108,128,2,157,228,239,244,236,229,243,243,243,244,242,239,235,101,128,2,95,101,3,110,101,110,112,110,177,227,249,242,233,236,236,233,99,128,4,88,229,109,4,110,123,110,132,110,146,110,162,225,242,225,226,233,99,128,6,44,230,233,238,225,236,225,242,225,226,233,99,128,254,158,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,159,237,229,228,233,225,236,225,242,225,226,233,99,128,254,160,104,2,110,183,110,192,225,242,225,226,233,99,128,6,152,230,233,238,225,236,225,242,225,226,233,99,128,251,139,104,2,110,212,111,6,97,3,110,220,110,230,110,237,226,229,238,231,225,236,105,128,9,157,228,229,246,97,128,9,29,231,117,2,110,244,110,253,234,225,242,225,244,105,128,10,157,242,237,245,235,232,105,128,10,29,229,232,225,242,237,229,238,233,225,110,128,5,123,233,115,128,48,4,237,239,238,239,243,240,225,227,101,128,255,74,240,225,242,229,110,128,36,165,243,245,240,229,242,233,239,114,128,2,178,107,146,0,107,111,95,113,184,113,195,114,1,114,12,114,102,114,116,115,224,116,164,116,177,116,203,116,252,117,134,117,156,117,169,117,192,117,234,117,244,97,12,111,121,111,153,111,175,111,205,112,63,112,88,112,118,112,143,112,249,113,7,113,130,113,159],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+30720);allocate([98,2,111,127,111,144,225,243,232,235,233,242,227,249,242,233,236,236,233,99,128,4,161,229,238,231,225,236,105,128,9,149,99,2,111,159,111,165,245,244,101,128,30,49,249,242,233,236,236,233,99,128,4,58,228,101,2,111,182,111,200,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,155,246,97,128,9,21,102,135,5,219,111,223,111,232,111,252,112,10,112,19,112,35,112,50,225,242,225,226,233,99,128,6,67,228,225,231,229,243,104,129,251,59,111,243,232,229,226,242,229,119,128,251,59,230,233,238,225,236,225,242,225,226,233,99,128,254,218,232,229,226,242,229,119,128,5,219,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,219,237,229,228,233,225,236,225,242,225,226,233,99,128,254,220,242,225,230,229,232,229,226,242,229,119,128,251,77,231,117,2,112,70,112,79,234,225,242,225,244,105,128,10,149,242,237,245,235,232,105,128,10,21,104,2,112,94,112,104,233,242,225,231,225,238,97,128,48,75,239,239,235,227,249,242,233,236,236,233,99,128,4,196,235,225,244,225,235,225,238,97,129,48,171,112,131,232,225,236,230,247,233,228,244,104,128,255,118,112,2,112,149,112,170,240,97,129,3,186,112,156,243,249,237,226,239,236,231,242,229,229,107,128,3,240,249,229,239,245,110,3,112,182,112,196,112,230,237,233,229,245,237,235,239,242,229,225,110,128,49,113,112,2,112,202,112,217,232,233,229,245,240,232,235,239,242,229,225,110,128,49,132,233,229,245,240,235,239,242,229,225,110,128,49,120,243,243,225,238,231,240,233,229,245,240,235,239,242,229,225,110,128,49,121,242,239,242,233,233,243,241,245,225,242,101,128,51,13,115,5,113,19,113,63,113,78,113,86,113,114,232,233,228,225,225,245,244,111,2,113,32,113,41,225,242,225,226,233,99,128,6,64,238,239,243,233,228,229,226,229,225,242,233,238,231,225,242,225,226,233,99,128,6,64,237,225,236,236,235,225,244,225,235,225,238,97,128,48,245,241,245,225,242,101,128,51,132,242,97,2,113,93,113,102,225,242,225,226,233,99,128,6,80,244,225,238,225,242,225,226,233,99,128,6,77,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,159,244,225,232,233,242,225,240,242,239,236,239,238,231,237,225,242,235,232,225,236,230,247,233,228,244,104,128,255,112,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,157,226,239,240,239,237,239,230,111,128,49,14,99,4,113,205,113,227,113,236,113,244,97,2,113,211,113,221,236,243,241,245,225,242,101,128,51,137,242,239,110,128,1,233,229,228,233,236,236,97,128,1,55,233,242,227,236,101,128,36,218,239,237,237,225,225,227,227,229,238,116,128,1,55,228,239,244,226,229,236,239,119,128,30,51,101,4,114,22,114,49,114,74,114,86,104,2,114,28,114,39,225,242,237,229,238,233,225,110,128,5,132,233,242,225,231,225,238,97,128,48,81,235,225,244,225,235,225,238,97,129,48,177,114,62,232,225,236,230,247,233,228,244,104,128,255,121,238,225,242,237,229,238,233,225,110,128,5,111,243,237,225,236,236,235,225,244,225,235,225,238,97,128,48,246,231,242,229,229,238,236,225,238,228,233,99,128,1,56,104,6,114,130,115,3,115,14,115,39,115,126,115,214,97,5,114,142,114,152,114,163,114,170,114,195,226,229,238,231,225,236,105,128,9,150,227,249,242,233,236,236,233,99,128,4,69,228,229,246,97,128,9,22,231,117,2,114,177,114,186,234,225,242,225,244,105,128,10,150,242,237,245,235,232,105,128,10,22,104,4,114,205,114,214,114,228,114,244,225,242,225,226,233,99,128,6,46,230,233,238,225,236,225,242,225,226,233,99,128,254,166,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,167,237,229,228,233,225,236,225,242,225,226,233,99,128,254,168,229,233,227,239,240,244,233,99,128,3,231,232,97,2,115,21,115,28,228,229,246,97,128,9,89,231,245,242,237,245,235,232,105,128,10,89,233,229,245,235,104,4,115,53,115,88,115,103,115,112,97,2,115,59,115,74,227,233,242,227,236,229,235,239,242,229,225,110,128,50,120,240,225,242,229,238,235,239,242,229,225,110,128,50,24,227,233,242,227,236,229,235,239,242,229,225,110,128,50,106,235,239,242,229,225,110,128,49,75,240,225,242,229,238,235,239,242,229,225,110,128,50,10,111,4,115,136,115,185,115,195,115,200,235,104,4,115,147,115,156,115,165,115,175,225,233,244,232,225,105,128,14,2,239,238,244,232,225,105,128,14,5,245,225,244,244,232,225,105,128,14,3,247,225,233,244,232,225,105,128,14,4,237,245,244,244,232,225,105,128,14,91,239,107,128,1,153,242,225,235,232,225,238,231,244,232,225,105,128,14,6,250,243,241,245,225,242,101,128,51,145,105,4,115,234,115,245,116,14,116,63,232,233,242,225,231,225,238,97,128,48,77,235,225,244,225,235,225,238,97,129,48,173,116,2,232,225,236,230,247,233,228,244,104,128,255,119,242,111,3,116,23,116,38,116,54,231,245,242,225,237,245,243,241,245,225,242,101,128,51,21,237,229,229,244,239,242,245,243,241,245,225,242,101,128,51,22,243,241,245,225,242,101,128,51,20,249,229,239,107,5,116,78,116,113,116,128,116,137,116,151,97,2,116,84,116,99,227,233,242,227,236,229,235,239,242,229,225,110,128,50,110,240,225,242,229,238,235,239,242,229,225,110,128,50,14,227,233,242,227,236,229,235,239,242,229,225,110,128,50,96,235,239,242,229,225,110,128,49,49,240,225,242,229,238,235,239,242,229,225,110,128,50,0,243,233,239,243,235,239,242,229,225,110,128,49,51,234,229,227,249,242,233,236,236,233,99,128,4,92,108,2,116,183,116,194,233,238,229,226,229,236,239,119,128,30,53,243,241,245,225,242,101,128,51,152,109,3,116,211,116,225,116,236,227,245,226,229,228,243,241,245,225,242,101,128,51,166,239,238,239,243,240,225,227,101,128,255,75,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,162,111,5,117,8,117,34,117,72,117,84,117,98,104,2,117,14,117,24,233,242,225,231,225,238,97,128,48,83,237,243,241,245,225,242,101,128,51,192,235,97,2,117,41,117,49,233,244,232,225,105,128,14,1,244,225,235,225,238,97,129,48,179,117,60,232,225,236,230,247,233,228,244,104,128,255,122,239,240,239,243,241,245,225,242,101,128,51,30,240,240,225,227,249,242,233,236,236,233,99,128,4,129,114,2,117,104,117,124,229,225,238,243,244,225,238,228,225,242,228,243,249,237,226,239,108,128,50,127,239,238,233,243,227,237,98,128,3,67,240,97,2,117,141,117,147,242,229,110,128,36,166,243,241,245,225,242,101,128,51,170,243,233,227,249,242,233,236,236,233,99,128,4,111,116,2,117,175,117,184,243,241,245,225,242,101,128,51,207,245,242,238,229,100,128,2,158,117,2,117,198,117,209,232,233,242,225,231,225,238,97,128,48,79,235,225,244,225,235,225,238,97,129,48,175,117,222,232,225,236,230,247,233,228,244,104,128,255,120,246,243,241,245,225,242,101,128,51,184,247,243,241,245,225,242,101,128,51,190,108,146,0,108,118,38,120,65,120,94,120,160,120,198,121,94,121,103,121,119,121,143,121,161,122,23,122,64,122,199,122,207,122,240,122,249,123,1,123,63,97,7,118,54,118,64,118,71,118,78,118,103,118,119,120,53,226,229,238,231,225,236,105,128,9,178,227,245,244,101,128,1,58,228,229,246,97,128,9,50,231,117,2,118,85,118,94,234,225,242,225,244,105,128,10,178,242,237,245,235,232,105,128,10,50,235,235,232,225,238,231,249,225,239,244,232,225,105,128,14,69,109,10,118,141,119,80,119,97,119,135,119,149,119,168,119,184,119,204,119,224,119,247,97,2,118,147,119,72,236,229,102,4,118,159,118,173,119,9,119,26,230,233,238,225,236,225,242,225,226,233,99,128,254,252,232,225,237,250,97,2,118,183,118,224,225,226,239,246,101,2,118,193,118,207,230,233,238,225,236,225,242,225,226,233,99,128,254,248,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,247,226,229,236,239,119,2,118,234,118,248,230,233,238,225,236,225,242,225,226,233,99,128,254,250,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,249,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,251,237,225,228,228,225,225,226,239,246,101,2,119,41,119,55,230,233,238,225,236,225,242,225,226,233,99,128,254,246,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,245,242,225,226,233,99,128,6,68,226,228,97,129,3,187,119,88,243,244,242,239,235,101,128,1,155,229,100,130,5,220,119,106,119,126,228,225,231,229,243,104,129,251,60,119,117,232,229,226,242,229,119,128,251,60,232,229,226,242,229,119,128,5,220,230,233,238,225,236,225,242,225,226,233,99,128,254,222,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,202,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,223,234,229,229,237,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,201,235,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,203,236,225,237,232,229,232,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,253,242,237,101,2,119,254,120,11,228,233,225,236,225,242,225,226,233,99,128,254,224,229,109,2,120,18,120,37,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,253,136,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,204,242,231,229,227,233,242,227,236,101,128,37,239,98,3,120,73,120,78,120,84,225,114,128,1,154,229,236,116,128,2,108,239,240,239,237,239,230,111,128,49,12,99,4,120,104,120,111,120,120,120,147,225,242,239,110,128,1,62,229,228,233,236,236,97,128,1,60,233,242,99,2,120,128,120,133,236,101,128,36,219,245,237,230,236,229,248,226,229,236,239,119,128,30,61,239,237,237,225,225,227,227,229,238,116,128,1,60,228,239,116,130,1,64,120,170,120,179,225,227,227,229,238,116,128,1,64,226,229,236,239,119,129,30,55,120,189,237,225,227,242,239,110,128,30,57,101,3,120,206,120,244,121,89,230,116,2,120,213,120,229,225,238,231,236,229,225,226,239,246,229,227,237,98,128,3,26,244,225,227,235,226,229,236,239,247,227,237,98,128,3,24,243,115,132,0,60,121,1,121,23,121,35,121,81,229,241,245,225,108,129,34,100,121,11,239,242,231,242,229,225,244,229,114,128,34,218,237,239,238,239,243,240,225,227,101,128,255,28,111,2,121,41,121,70,114,2,121,47,121,60,229,241,245,233,246,225,236,229,238,116,128,34,114,231,242,229,225,244,229,114,128,34,118,246,229,242,229,241,245,225,108,128,34,102,243,237,225,236,108,128,254,100,250,104,128,2,110,230,226,236,239,227,107,128,37,140,232,239,239,235,242,229,244,242,239,230,236,229,120,128,2,109,105,2,121,125,121,130,242,97,128,32,164,247,238,225,242,237,229,238,233,225,110,128,5,108,106,129,1,201,121,149,229,227,249,242,233,236,236,233,99,128,4,89,108,132,246,192,121,173,121,197,121,208,121,217,97,2,121,179,121,186,228,229,246,97,128,9,51,231,245,234,225,242,225,244,105,128,10,179,233,238,229,226,229,236,239,119,128,30,59,236,225,228,229,246,97,128,9,52,246,239,227,225,236,233,99,3,121,231,121,241,121,248,226,229,238,231,225,236,105,128,9,225,228,229,246,97,128,9,97,246,239,247,229,236,243,233,231,110,2,122,6,122,16,226,229,238,231,225,236,105,128,9,227,228,229,246,97,128,9,99,109,3,122,31,122,44,122,55,233,228,228,236,229,244,233,236,228,101,128,2,107,239,238,239,243,240,225,227,101,128,255,76,243,241,245,225,242,101,128,51,208,111,6,122,78,122,90,122,132,122,143,122,149,122,191,227,232,245,236,225,244,232,225,105,128,14,44,231,233,227,225,108,3,122,102,122,108,122,127,225,238,100,128,34,39,238,239,116,129,0,172,122,116,242,229,246,229,242,243,229,100,128,35,16,239,114,128,34,40,236,233,238,231,244,232,225,105,128,14,37,238,231,115,128,1,127,247,236,233,238,101,2,122,159,122,182,99,2,122,165,122,177,229,238,244,229,242,236,233,238,101,128,254,78,237,98,128,3,50,228,225,243,232,229,100,128,254,77,250,229,238,231,101,128,37,202,240,225,242,229,110,128,36,167,115,3,122,215,122,222,122,230,236,225,243,104,128,1,66,241,245,225,242,101,128,33,19,245,240,229,242,233,239,114,128,246,238,244,243,232,225,228,101,128,37,145,245,244,232,225,105,128,14,38,246,239,227,225,236,233,99,3,123,15,123,25,123,32,226,229,238,231,225,236,105,128,9,140,228,229,246,97,128,9,12,246,239,247,229,236,243,233,231,110,2,123,46,123,56,226,229,238,231,225,236,105,128,9,226,228,229,246,97,128,9,98,248,243,241,245,225,242,101,128,51,211,109,144,0,109,123,109,125,218,125,243,126,14,126,39,127,92,127,114,128,169,128,199,128,248,129,99,129,121,129,146,129,155,130,182,130,210,97,12,123,135,123,145,123,209,123,216,123,241,124,33,125,125,125,150,125,155,125,169,125,181,125,186,226,229,238,231,225,236,105,128,9,174,99,2,123,151,123,203,242,239,110,132,0,175,123,165,123,176,123,182,123,191,226,229,236,239,247,227,237,98,128,3,49,227,237,98,128,3,4,236,239,247,237,239,100,128,2,205,237,239,238,239,243,240,225,227,101,128,255,227,245,244,101,128,30,63,228,229,246,97,128,9,46,231,117,2,123,223,123,232,234,225,242,225,244,105,128,10,174,242,237,245,235,232,105,128,10,46,104,2,123,247,124,23,225,240,225,235,104,2,124,1,124,10,232,229,226,242,229,119,128,5,164,236,229,230,244,232,229,226,242,229,119,128,5,164,233,242,225,231,225,238,97,128,48,126,105,5,124,45,124,114,124,177,124,207,125,113,227,232,225,244,244,225,247,97,3,124,60,124,91,124,98,236,239,119,2,124,68,124,79,236,229,230,244,244,232,225,105,128,248,149,242,233,231,232,244,244,232,225,105,128,248,148,244,232,225,105,128,14,75,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,147,229,107,3,124,123,124,154,124,161,236,239,119,2,124,131,124,142,236,229,230,244,244,232,225,105,128,248,140,242,233,231,232,244,244,232,225,105,128,248,139,244,232,225,105,128,14,72,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,138,232,225,238,225,235,225,116,2,124,189,124,200,236,229,230,244,244,232,225,105,128,248,132,244,232,225,105,128,14,49,116,3,124,215,124,243,125,50,225,233,235,232,117,2,124,225,124,236,236,229,230,244,244,232,225,105,128,248,137,244,232,225,105,128,14,71,232,111,3,124,252,125,27,125,34,236,239,119,2,125,4,125,15,236,229,230,244,244,232,225,105,128,248,143,242,233,231,232,244,244,232,225,105,128,248,142,244,232,225,105,128,14,73,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,141,242,105,3,125,59,125,90,125,97,236,239,119,2,125,67,125,78,236,229,230,244,244,232,225,105,128,248,146,242,233,231,232,244,244,232,225,105,128,248,145,244,232,225,105,128,14,74,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,144,249,225,237,239,235,244,232,225,105,128,14,70,235,225,244,225,235,225,238,97,129,48,222,125,138,232,225,236,230,247,233,228,244,104,128,255,143,236,101,128,38,66,238,243,249,239,238,243,241,245,225,242,101,128,51,71,241,225,230,232,229,226,242,229,119,128,5,190,242,115,128,38,66,115,2,125,192,125,210,239,242,225,227,233,242,227,236,229,232,229,226,242,229,119,128,5,175,241,245,225,242,101,128,51,131,98,2,125,224,125,234,239,240,239,237,239,230,111,128,49,7,243,241,245,225,242,101,128,51,212,99,2,125,249,126,1,233,242,227,236,101,128,36,220,245,226,229,228,243,241,245,225,242,101,128,51,165,228,239,116,2,126,22,126,31,225,227,227,229,238,116,128,30,65,226,229,236,239,119,128,30,67,101,7,126,55,126,182,126,193,126,208,126,233,127,14,127,26,101,2,126,61,126,169,109,4,126,71,126,80,126,94,126,110,225,242,225,226,233,99,128,6,69,230,233,238,225,236,225,242,225,226,233,99,128,254,226,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,227,237,101,2,126,117,126,130,228,233,225,236,225,242,225,226,233,99,128,254,228,229,237,105,2,126,138,126,153,238,233,244,233,225,236,225,242,225,226,233,99,128,252,209,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,72,244,239,242,245,243,241,245,225,242,101,128,51,77,232,233,242,225,231,225,238,97,128,48,129,233,250,233,229,242,225,243,241,245,225,242,101,128,51,126,235,225,244,225,235,225,238,97,129,48,225,126,221,232,225,236,230,247,233,228,244,104,128,255,146,109,130,5,222,126,241,127,5,228,225,231,229,243,104,129,251,62,126,252,232,229,226,242,229,119,128,251,62,232,229,226,242,229,119,128,5,222,238,225,242,237,229,238,233,225,110,128,5,116,242,235,232,97,3,127,37,127,46,127,79,232,229,226,242,229,119,128,5,165,235,229,230,245,236,97,2,127,57,127,66,232,229,226,242,229,119,128,5,166,236,229,230,244,232,229,226,242,229,119,128,5,166,236,229,230,244,232,229,226,242,229,119,128,5,165,104,2,127,98,127,104,239,239,107,128,2,113,250,243,241,245,225,242,101,128,51,146,105,6,127,128,127,165,128,46,128,57,128,82,128,139,228,100,2,127,135,127,160,236,229,228,239,244,235,225,244,225,235,225,238,225,232,225,236,230,247,233,228,244,104,128,255,101,239,116,128,0,183,229,245,109,5,127,179,127,214,127,229,127,238,128,33,97,2,127,185,127,200,227,233,242,227,236,229,235,239,242,229,225,110,128,50,114,240,225,242,229,238,235,239,242,229,225,110,128,50,18,227,233,242,227,236,229,235,239,242,229,225,110,128,50,100,235,239,242,229,225,110,128,49,65,112,2,127,244,128,20,97,2,127,250,128,8,238,243,233,239,243,235,239,242,229,225,110,128,49,112,242,229,238,235,239,242,229,225,110,128,50,4,233,229,245,240,235,239,242,229,225,110,128,49,110,243,233,239,243,235,239,242,229,225,110,128,49,111,232,233,242,225,231,225,238,97,128,48,127,235,225,244,225,235,225,238,97,129,48,223,128,70,232,225,236,230,247,233,228,244,104,128,255,144,238,117,2,128,89,128,134,115,132,34,18,128,101,128,112,128,121,128,127,226,229,236,239,247,227,237,98,128,3,32,227,233,242,227,236,101,128,34,150,237,239,100,128,2,215,240,236,245,115,128,34,19,244,101,128,32,50,242,105,2,128,146,128,160,226,225,225,242,245,243,241,245,225,242,101,128,51,74,243,241,245,225,242,101,128,51,73,108,2,128,175,128,190,239,238,231,236,229,231,244,245,242,238,229,100,128,2,112,243,241,245,225,242,101,128,51,150,109,3,128,207,128,221,128,232,227,245,226,229,228,243,241,245,225,242,101,128,51,163,239,238,239,243,240,225,227,101,128,255,77,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,159,111,5,129,4,129,30,129,55,129,65,129,74,104,2,129,10,129,20,233,242,225,231,225,238,97,128,48,130,237,243,241,245,225,242,101,128,51,193,235,225,244,225,235,225,238,97,129,48,226,129,43,232,225,236,230,247,233,228,244,104,128,255,147,236,243,241,245,225,242,101,128,51,214,237,225,244,232,225,105,128,14,33,246,229,242,243,243,241,245,225,242,101,129,51,167,129,89,228,243,241,245,225,242,101,128,51,168,240,97,2,129,106,129,112,242,229,110,128,36,168,243,241,245,225,242,101,128,51,171,115,2,129,127,129,136,243,241,245,225,242,101,128,51,179,245,240,229,242,233,239,114,128,246,239,244,245,242,238,229,100,128,2,111,117,141,0,181,129,185,129,189,129,199,129,223,129,233,129,255,130,10,130,35,130,58,130,68,130,98,130,162,130,172,49,128,0,181,225,243,241,245,225,242,101,128,51,130,227,104,2,129,206,129,216,231,242,229,225,244,229,114,128,34,107,236,229,243,115,128,34,106,230,243,241,245,225,242,101,128,51,140,103,2,129,239,129,246,242,229,229,107,128,3,188,243,241,245,225,242,101,128,51,141,232,233,242,225,231,225,238,97,128,48,128,235,225,244,225,235,225,238,97,129,48,224,130,23,232,225,236,230,247,233,228,244,104,128,255,145,108,2,130,41,130,50,243,241,245,225,242,101,128,51,149,244,233,240,236,121,128,0,215,237,243,241,245,225,242,101,128,51,155,238,225,104,2,130,76,130,85,232,229,226,242,229,119,128,5,163,236,229,230,244,232,229,226,242,229,119,128,5,163,115,2,130,104,130,153,233,99,3,130,113,130,130,130,141,225,236,238,239,244,101,129,38,106,130,124,228,226,108,128,38,107,230,236,225,244,243,233,231,110,128,38,109,243,232,225,242,240,243,233,231,110,128,38,111,243,241,245,225,242,101,128,51,178,246,243,241,245,225,242,101,128,51,182,247,243,241,245,225,242,101,128,51,188,118,2,130,188,130,201,237,229,231,225,243,241,245,225,242,101,128,51,185,243,241,245,225,242,101,128,51,183,119,2,130,216,130,229,237,229,231,225,243,241,245,225,242,101,128,51,191,243,241,245,225,242,101,128,51,189,110,150,0,110,131,30,131,164,131,188,131,254,132,23,132,81,132,91,132,158,132,201,134,235,134,253,135,22,135,53,135,79,135,144,137,126,137,134,137,159,137,167,138,135,138,145,138,155,97,8,131,48,131,68,131,75,131,82,131,107,131,118,131,143,131,155,98,2,131,54,131,63,229,238,231,225,236,105,128,9,168,236,97,128,34,7,227,245,244,101,128,1,68,228,229,246,97,128,9,40,231,117,2,131,89,131,98,234,225,242,225,244,105,128,10,168,242,237,245,235,232,105,128,10,40,232,233,242,225,231,225,238,97,128,48,106,235,225,244,225,235,225,238,97,129,48,202,131,131,232,225,236,230,247,233,228,244,104,128,255,133,240,239,243,244,242,239,240,232,101,128,1,73,243,241,245,225,242,101,128,51,129,98,2,131,170,131,180,239,240,239,237,239,230,111,128,49,11,243,240,225,227,101,128,0,160,99,4,131,198,131,205,131,214,131,241,225,242,239,110,128,1,72,229,228,233,236,236,97,128,1,70,233,242,99,2,131,222,131,227,236,101,128,36,221,245,237,230,236,229,248,226,229,236,239,119,128,30,75,239,237,237,225,225,227,227,229,238,116,128,1,70,228,239,116,2,132,6,132,15,225,227,227,229,238,116,128,30,69,226,229,236,239,119,128,30,71,101,3,132,31,132,42,132,67,232,233,242,225,231,225,238,97,128,48,109,235,225,244,225,235,225,238,97,129,48,205,132,55,232,225,236,230,247,233,228,244,104,128,255,136,247,243,232,229,241,229,236,243,233,231,110,128,32,170,230,243,241,245,225,242,101,128,51,139,103,2,132,97,132,147,97,3,132,105,132,115,132,122,226,229,238,231,225,236,105,128,9,153,228,229,246,97,128,9,25,231,117,2,132,129,132,138,234,225,242,225,244,105,128,10,153,242,237,245,235,232,105,128,10,25,239,238,231,245,244,232,225,105,128,14,7,104,2,132,164,132,174,233,242,225,231,225,238,97,128,48,147,239,239,107,2,132,182,132,189,236,229,230,116,128,2,114,242,229,244,242,239,230,236,229,120,128,2,115,105,4,132,211,133,124,133,135,133,193,229,245,110,7,132,229,133,8,133,40,133,54,133,63,133,96,133,109,97,2,132,235,132,250,227,233,242,227,236,229,235,239,242,229,225,110,128,50,111,240,225,242,229,238,235,239,242,229,225,110,128,50,15,227,105,2,133,15,133,27,229,245,227,235,239,242,229,225,110,128,49,53,242,227,236,229,235,239,242,229,225,110,128,50,97,232,233,229,245,232,235,239,242,229,225,110,128,49,54,235,239,242,229,225,110,128,49,52,240,97,2,133,70,133,84,238,243,233,239,243,235,239,242,229,225,110,128,49,104,242,229,238,235,239,242,229,225,110,128,50,1,243,233,239,243,235,239,242,229,225,110,128,49,103,244,233,235,229,245,244,235,239,242,229,225,110,128,49,102,232,233,242,225,231,225,238,97,128,48,107,107,2,133,141,133,165,225,244,225,235,225,238,97,129,48,203,133,153,232,225,236,230,247,233,228,244,104,128,255,134,232,225,232,233,116,2,133,175,133,186,236,229,230,244,244,232,225,105,128,248,153,244,232,225,105,128,14,77,238,101,141,0,57,133,224,133,233,133,243,134,17,134,24,134,49,134,76,134,110,134,122,134,133,134,166,134,174,134,185,225,242,225,226,233,99,128,6,105,226,229,238,231,225,236,105,128,9,239,227,233,242,227,236,101,129,36,104,133,254,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,146,228,229,246,97,128,9,111,231,117,2,134,31,134,40,234,225,242,225,244,105,128,10,239,242,237,245,235,232,105,128,10,111,232,97,2,134,56,134,67,227,235,225,242,225,226,233,99,128,6,105,238,231,250,232,239,117,128,48,41,105,2,134,82,134,100,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,40,238,230,229,242,233,239,114,128,32,137,237,239,238,239,243,240,225,227,101,128,255,25,239,236,228,243,244,249,236,101,128,247,57,112,2,134,139,134,146,225,242,229,110,128,36,124,229,114,2,134,153,134,159,233,239,100,128,36,144,243,233,225,110,128,6,249,242,239,237,225,110,128,33,120,243,245,240,229,242,233,239,114,128,32,121,116,2,134,191,134,229,229,229,110,2,134,199,134,208,227,233,242,227,236,101,128,36,114,112,2,134,214,134,221,225,242,229,110,128,36,134,229,242,233,239,100,128,36,154,232,225,105,128,14,89,106,129,1,204,134,241,229,227,249,242,233,236,236,233,99,128,4,90,235,225,244,225,235,225,238,97,129,48,243,135,10,232,225,236,230,247,233,228,244,104,128,255,157,108,2,135,28,135,42,229,231,242,233,231,232,244,236,239,238,103,128,1,158,233,238,229,226,229,236,239,119,128,30,73,109,2,135,59,135,70,239,238,239,243,240,225,227,101,128,255,78,243,241,245,225,242,101,128,51,154,110,2,135,85,135,135,97,3,135,93,135,103,135,110,226,229,238,231,225,236,105,128,9,163,228,229,246,97,128,9,35,231,117,2,135,117,135,126,234,225,242,225,244,105,128,10,163,242,237,245,235,232,105,128,10,35,238,225,228,229,246,97,128,9,41,111,6,135,158,135,169,135,194,135,235,136,187,137,114,232,233,242,225,231,225,238,97,128,48,110,235,225,244,225,235,225,238,97,129,48,206,135,182,232,225,236,230,247,233,228,244,104,128,255,137,110,3,135,202,135,218,135,227,226,242,229,225,235,233,238,231,243,240,225,227,101,128,0,160,229,238,244,232,225,105,128,14,19,245,244,232,225,105,128,14,25,239,110,7,135,252,136,5,136,19,136,53,136,69,136,110,136,169,225,242,225,226,233,99,128,6,70,230,233,238,225,236,225,242,225,226,233,99,128,254,230,231,232,245,238,238,97,2,136,30,136,39,225,242,225,226,233,99,128,6,186,230,233,238,225,236,225,242,225,226,233,99,128,251,159,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,231,234,229,229,237,105,2,136,79,136,94,238,233,244,233,225,236,225,242,225,226,233,99,128,252,210,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,75,237,101,2,136,117,136,130,228,233,225,236,225,242,225,226,233,99,128,254,232,229,237,105,2,136,138,136,153,238,233,244,233,225,236,225,242,225,226,233,99,128,252,213,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,78,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,141,116,7,136,203,136,214,136,243,137,22,137,34,137,54,137,80,227,239,238,244,225,233,238,115,128,34,12,101,2,136,220,136,236,236,229,237,229,238,116,129,34,9,136,231,239,102,128,34,9,241,245,225,108,128,34,96,231,242,229,225,244,229,114,129,34,111,136,255,238,239,114,2,137,7,137,15,229,241,245,225,108,128,34,113,236,229,243,115,128,34,121,233,228,229,238,244,233,227,225,108,128,34,98,236,229,243,115,129,34,110,137,43,238,239,242,229,241,245,225,108,128,34,112,112,2,137,60,137,70,225,242,225,236,236,229,108,128,34,38,242,229,227,229,228,229,115,128,34,128,243,117,3,137,89,137,96,137,105,226,243,229,116,128,34,132,227,227,229,229,228,115,128,34,129,240,229,242,243,229,116,128,34,133,247,225,242,237,229,238,233,225,110,128,5,118,240,225,242,229,110,128,36,169,115,2,137,140,137,149,243,241,245,225,242,101,128,51,177,245,240,229,242,233,239,114,128,32,127,244,233,236,228,101,128,0,241,117,132,3,189,137,179,137,190,138,15,138,98,232,233,242,225,231,225,238,97,128,48,108,107,2,137,196,137,220,225,244,225,235,225,238,97,129,48,204,137,208,232,225,236,230,247,233,228,244,104,128,255,135,244,97,3,137,229,137,239,137,246,226,229,238,231,225,236,105,128,9,188,228,229,246,97,128,9,60,231,117,2,137,253,138,6,234,225,242,225,244,105,128,10,188,242,237,245,235,232,105,128,10,60,109,2,138,21,138,55,226,229,242,243,233,231,110,130,0,35,138,35,138,47,237,239,238,239,243,240,225,227,101,128,255,3,243,237,225,236,108,128,254,95,229,114,2,138,62,138,94,225,236,243,233,231,110,2,138,73,138,81,231,242,229,229,107,128,3,116,236,239,247,229,242,231,242,229,229,107,128,3,117,111,128,33,22,110,130,5,224,138,106,138,126,228,225,231,229,243,104,129,251,64,138,117,232,229,226,242,229,119,128,251,64,232,229,226,242,229,119,128,5,224,246,243,241,245,225,242,101,128,51,181,247,243,241,245,225,242,101,128,51,187,249,97,3,138,164,138,174,138,181,226,229,238,231,225,236,105,128,9,158,228,229,246,97,128,9,30,231,117,2,138,188,138,197,234,225,242,225,244,105,128,10,158,242,237,245,235,232,105,128,10,30,111,147,0,111,138,248,139,14,139,92,140,6,140,78,140,93,140,133,141,0,141,21,141,59,141,70,141,248,143,82,143,146,143,179,143,225,144,98,144,145,144,157,97,2,138,254,139,5,227,245,244,101,128,0,243,238,231,244,232,225,105,128,14,45,98,4,139,24,139,66,139,75,139,85,225,242,242,229,100,130,2,117,139,36,139,47,227,249,242,233,236,236,233,99,128,4,233,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,235,229,238,231,225,236,105,128,9,147,239,240,239,237,239,230,111,128,49,27,242,229,246,101,128,1,79,99,3,139,100,139,173,139,252,97,2,139,106,139,167,238,228,242,97,3,139,117,139,124,139,135,228,229,246,97,128,9,17,231,245,234,225,242,225,244,105,128,10,145,246,239,247,229,236,243,233,231,110,2,139,149,139,156,228,229,246,97,128,9,73,231,245,234,225,242,225,244,105,128,10,201,242,239,110,128,1,210,233,242,99,2,139,181,139,186,236,101,128,36,222,245,237,230,236,229,120,133,0,244,139,205,139,213,139,224,139,232,139,244,225,227,245,244,101,128,30,209,228,239,244,226,229,236,239,119,128,30,217,231,242,225,246,101,128,30,211,232,239,239,235,225,226,239,246,101,128,30,213,244,233,236,228,101,128,30,215,249,242,233,236,236,233,99,128,4,62,100,4,140,16,140,39,140,45,140,68,226,108,2,140,23,140,31,225,227,245,244,101,128,1,81,231,242,225,246,101,128,2,13,229,246,97,128,9,19,233,229,242,229,243,233,115,129,0,246,140,57,227,249,242,233,236,236,233,99,128,4,231,239,244,226,229,236,239,119,128,30,205,101,129,1,83,140,84,235,239,242,229,225,110,128,49,90,103,3,140,101,140,116,140,123,239,238,229,107,129,2,219,140,110,227,237,98,128,3,40,242,225,246,101,128,0,242,245,234,225,242,225,244,105,128,10,147,104,4,140,143,140,154,140,164,140,242,225,242,237,229,238,233,225,110,128,5,133,233,242,225,231,225,238,97,128,48,74,111,2,140,170,140,180,239,235,225,226,239,246,101,128,30,207,242,110,133,1,161,140,195,140,203,140,214,140,222,140,234,225,227,245,244,101,128,30,219,228,239,244,226,229,236,239,119,128,30,227,231,242,225,246,101,128,30,221,232,239,239,235,225,226,239,246,101,128,30,223,244,233,236,228,101,128,30,225,245,238,231,225,242,245,237,236,225,245,116,128,1,81,105,129,1,163,141,6,238,246,229,242,244,229,228,226,242,229,246,101,128,2,15,107,2,141,27,141,51,225,244,225,235,225,238,97,129,48,170,141,39,232,225,236,230,247,233,228,244,104,128,255,117,239,242,229,225,110,128,49,87,236,229,232,229,226,242,229,119,128,5,171,109,6,141,84,141,112,141,119,141,208,141,219,141,237,225,227,242,239,110,130,1,77,141,96,141,104,225,227,245,244,101,128,30,83,231,242,225,246,101,128,30,81,228,229,246,97,128,9,80,229,231,97,133,3,201,141,135,141,139,141,150,141,164,141,180,49,128,3,214,227,249,242,233,236,236,233,99,128,4,97,236,225,244,233,238,227,236,239,243,229,100,128,2,119,242,239,245,238,228,227,249,242,233,236,236,233,99,128,4,123,116,2,141,186,141,201,233,244,236,239,227,249,242,233,236,236,233,99,128,4,125,239,238,239,115,128,3,206,231,245,234,225,242,225,244,105,128,10,208,233,227,242,239,110,129,3,191,141,229,244,239,238,239,115,128,3,204,239,238,239,243,240,225,227,101,128,255,79,238,101,145,0,49,142,31,142,40,142,50,142,80,142,105,142,114,142,123,142,148,142,182,142,216,142,228,142,247,143,2,143,35,143,45,143,53,143,64,225,242,225,226,233,99,128,6,97,226,229,238,231,225,236,105,128,9,231,227,233,242,227,236,101,129,36,96,142,61,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,138,100,2,142,86,142,92,229,246,97,128,9,103,239,244,229,238,236,229,225,228,229,114,128,32,36,229,233,231,232,244,104,128,33,91,230,233,244,244,229,100,128,246,220,231,117,2,142,130,142,139,234,225,242,225,244,105,128,10,231,242,237,245,235,232,105,128,10,103,232,97,3,142,157,142,168,142,173,227,235,225,242,225,226,233,99,128,6,97,236,102,128,0,189,238,231,250,232,239,117,128,48,33,105,2,142,188,142,206,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,32,238,230,229,242,233,239,114,128,32,129,237,239,238,239,243,240,225,227,101,128,255,17,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,244,239,236,228,243,244,249,236,101,128,247,49,112,2,143,8,143,15,225,242,229,110,128,36,116,229,114,2,143,22,143,28,233,239,100,128,36,136,243,233,225,110,128,6,241,241,245,225,242,244,229,114,128,0,188,242,239,237,225,110,128,33,112,243,245,240,229,242,233,239,114,128,0,185,244,104,2,143,71,143,76,225,105,128,14,81,233,242,100,128,33,83,111,3,143,90,143,124,143,140,103,2,143,96,143,114,239,238,229,107,129,1,235,143,105,237,225,227,242,239,110,128,1,237,245,242,237,245,235,232,105,128,10,19,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,75,240,229,110,128,2,84,112,3,143,154,143,161,143,172,225,242,229,110,128,36,170,229,238,226,245,236,236,229,116,128,37,230,244,233,239,110,128,35,37,114,2,143,185,143,214,100,2,143,191,143,202,230,229,237,233,238,233,238,101,128,0,170,237,225,243,227,245,236,233,238,101,128,0,186,244,232,239,231,239,238,225,108,128,34,31,115,5,143,237,144,13,144,30,144,75,144,88,232,239,242,116,2,143,246,143,253,228,229,246,97,128,9,18,246,239,247,229,236,243,233,231,238,228,229,246,97,128,9,74,236,225,243,104,129,0,248,144,22,225,227,245,244,101,128,1,255,237,225,236,108,2,144,39,144,50,232,233,242,225,231,225,238,97,128,48,73,235,225,244,225,235,225,238,97,129,48,169,144,63,232,225,236,230,247,233,228,244,104,128,255,107,244,242,239,235,229,225,227,245,244,101,128,1,255,245,240,229,242,233,239,114,128,246,240,116,2,144,104,144,115,227,249,242,233,236,236,233,99,128,4,127,233,236,228,101,130,0,245,144,126,144,134,225,227,245,244,101,128,30,77,228,233,229,242,229,243,233,115,128,30,79,245,226,239,240,239,237,239,230,111,128,49,33,118,2,144,163,144,244,229,114,2,144,170,144,236,236,233,238,101,131,32,62,144,183,144,206,144,229,99,2,144,189,144,201,229,238,244,229,242,236,233,238,101,128,254,74,237,98,128,3,5,100,2,144,212,144,220,225,243,232,229,100,128,254,73,226,236,247,225,246,121,128,254,76,247,225,246,121,128,254,75,243,227,239,242,101,128,0,175,239,247,229,236,243,233,231,110,3,145,3,145,13,145,20,226,229,238,231,225,236,105,128,9,203,228,229,246,97,128,9,75,231,245,234,225,242,225,244,105,128,10,203,112,145,0,112,145,69,147,197,147,208,147,217,147,229,149,154,149,164,150,156,151,175,152,9,152,35,152,166,152,174,153,76,153,134,153,162,153,172,97,14,145,99,145,131,145,141,145,148,145,155,145,203,145,214,145,228,145,239,146,30,146,44,147,56,147,95,147,185,97,2,145,105,145,117,237,240,243,243,241,245,225,242,101,128,51,128,243,229,238,244,239,243,241,245,225,242,101,128,51,43,226,229,238,231,225,236,105,128,9,170,227,245,244,101,128,30,85,228,229,246,97,128,9,42,103,2,145,161,145,179,101,2,145,167,145,174,228,239,247,110,128,33,223,245,112,128,33,222,117,2,145,185,145,194,234,225,242,225,244,105,128,10,170,242,237,245,235,232,105,128,10,42,232,233,242,225,231,225,238,97,128,48,113,233,249,225,238,238,239,233,244,232,225,105,128,14,47,235,225,244,225,235,225,238,97,128,48,209,108,2,145,245,146,14,225,244,225,236,233,250,225,244,233,239,238,227,249,242,233,236,236,233,227,227,237,98,128,4,132,239,227,232,235,225,227,249,242,233,236,236,233,99,128,4,192,238,243,233,239,243,235,239,242,229,225,110,128,49,127,114,3,146,52,146,73,147,45,97,2,146,58,146,66,231,242,225,240,104,128,0,182,236,236,229,108,128,34,37,229,110,2,146,80,146,190,236,229,230,116,136,0,40,146,103,146,118,146,123,146,128,146,139,146,151,146,174,146,179,225,236,244,239,238,229,225,242,225,226,233,99,128,253,62,226,116,128,248,237,229,120,128,248,236,233,238,230,229,242,233,239,114,128,32,141,237,239,238,239,243,240,225,227,101,128,255,8,115,2,146,157,146,164,237,225,236,108,128,254,89,245,240,229,242,233,239,114,128,32,125,244,112,128,248,235,246,229,242,244,233,227,225,108,128,254,53,242,233,231,232,116,136,0,41,146,214,146,229,146,234,146,239,146,250,147,6,147,29,147,34,225,236,244,239,238,229,225,242,225,226,233,99,128,253,63,226,116,128,248,248,229,120,128,248,247,233,238,230,229,242,233,239,114,128,32,142,237,239,238,239,243,240,225,227,101,128,255,9,115,2,147,12,147,19,237,225,236,108,128,254,90,245,240,229,242,233,239,114,128,32,126,244,112,128,248,246,246,229,242,244,233,227,225,108,128,254,54,244,233,225,236,228,233,230,102,128,34,2,115,3,147,64,147,75,147,87,229,241,232,229,226,242,229,119,128,5,192,232,244,225,232,229,226,242,229,119,128,5,153,241,245,225,242,101,128,51,169,244,225,104,134,5,183,147,113,147,127,147,132,147,141,147,156,147,172,49,2,147,119,147,123,49,128,5,183,100,128,5,183,178,97,128,5,183,232,229,226,242,229,119,128,5,183,238,225,242,242,239,247,232,229,226,242,229,119,128,5,183,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,183,247,233,228,229,232,229,226,242,229,119,128,5,183,250,229,242,232,229,226,242,229,119,128,5,161,226,239,240,239,237,239,230,111,128,49,6,227,233,242,227,236,101,128,36,223,228,239,244,225,227,227,229,238,116,128,30,87,101,137,5,228,147,251,148,6,148,26,148,38,148,58,148,160,148,171,148,192,149,147,227,249,242,233,236,236,233,99,128,4,63,228,225,231,229,243,104,129,251,68,148,17,232,229,226,242,229,119,128,251,68,229,250,233,243,241,245,225,242,101,128,51,59,230,233,238,225,236,228,225,231,229,243,232,232,229,226,242,229,119,128,251,67,104,5,148,70,148,93,148,101,148,115,148,145,225,114,2,148,77,148,84,225,226,233,99,128,6,126,237,229,238,233,225,110,128,5,122,229,226,242,229,119,128,5,228,230,233,238,225,236,225,242,225,226,233,99,128,251,87,105,2,148,121,148,136,238,233,244,233,225,236,225,242,225,226,233,99,128,251,88,242,225,231,225,238,97,128,48,122,237,229,228,233,225,236,225,242,225,226,233,99,128,251,89,235,225,244,225,235,225,238,97,128,48,218,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,167,114,5,148,204,148,216,149,2,149,123,149,136,225,230,229,232,229,226,242,229,119,128,251,78,227,229,238,116,131,0,37,148,229,148,238,148,250,225,242,225,226,233,99,128,6,106,237,239,238,239,243,240,225,227,101,128,255,5,243,237,225,236,108,128,254,106,105,2,149,8,149,105,239,100,134,0,46,149,25,149,36,149,47,149,59,149,70,149,82,225,242,237,229,238,233,225,110,128,5,137,227,229,238,244,229,242,229,100,128,0,183,232,225,236,230,247,233,228,244,104,128,255,97,233,238,230,229,242,233,239,114,128,246,231,237,239,238,239,243,240,225,227,101,128,255,14,115,2,149,88,149,95,237,225,236,108,128,254,82,245,240,229,242,233,239,114,128,246,232,243,240,239,237,229,238,233,231,242,229,229,235,227,237,98,128,3,66,240,229,238,228,233,227,245,236,225,114,128,34,165,244,232,239,245,243,225,238,100,128,32,48,243,229,244,97,128,32,167,230,243,241,245,225,242,101,128,51,138,104,3,149,172,149,222,150,103,97,3,149,180,149,190,149,197,226,229,238,231,225,236,105,128,9,171,228,229,246,97,128,9,43,231,117,2,149,204,149,213,234,225,242,225,244,105,128,10,171,242,237,245,235,232,105,128,10,43,105,133,3,198,149,236,149,240,150,70,150,78,150,89,49,128,3,213,229,245,240,104,4,149,253,150,32,150,47,150,56,97,2,150,3,150,18,227,233,242,227,236,229,235,239,242,229,225,110,128,50,122,240,225,242,229,238,235,239,242,229,225,110,128,50,26,227,233,242,227,236,229,235,239,242,229,225,110,128,50,108,235,239,242,229,225,110,128,49,77,240,225,242,229,238,235,239,242,229,225,110,128,50,12,236,225,244,233,110,128,2,120,238,244,232,245,244,232,225,105,128,14,58,243,249,237,226,239,236,231,242,229,229,107,128,3,213,111,3,150,111,150,116,150,142,239,107,128,1,165,240,104,2,150,123,150,132,225,238,244,232,225,105,128,14,30,245,238,231,244,232,225,105,128,14,28,243,225,237,240,232,225,239,244,232,225,105,128,14,32,105,133,3,192,150,170,151,126,151,137,151,148,151,162,229,245,112,6,150,186,150,221,150,253,151,25,151,39,151,91,97,2,150,192,150,207,227,233,242,227,236,229,235,239,242,229,225,110,128,50,115,240,225,242,229,238,235,239,242,229,225,110,128,50,19,227,105,2,150,228,150,240,229,245,227,235,239,242,229,225,110,128,49,118,242,227,236,229,235,239,242,229,225,110,128,50,101,107,2,151,3,151,17,233,249,229,239,235,235,239,242,229,225,110,128,49,114,239,242,229,225,110,128,49,66,240,225,242,229,238,235,239,242,229,225,110,128,50,5,243,233,239,115,2,151,48,151,76,107,2,151,54,151,68,233,249,229,239,235,235,239,242,229,225,110,128,49,116,239,242,229,225,110,128,49,68,244,233,235,229,245,244,235,239,242,229,225,110,128,49,117,116,2,151,97,151,112,232,233,229,245,244,232,235,239,242,229,225,110,128,49,119,233,235,229,245,244,235,239,242,229],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+40960);allocate([225,110,128,49,115,232,233,242,225,231,225,238,97,128,48,116,235,225,244,225,235,225,238,97,128,48,212,243,249,237,226,239,236,231,242,229,229,107,128,3,214,247,242,225,242,237,229,238,233,225,110,128,5,131,236,245,115,132,0,43,151,189,151,200,151,209,151,242,226,229,236,239,247,227,237,98,128,3,31,227,233,242,227,236,101,128,34,149,109,2,151,215,151,222,233,238,245,115,128,0,177,111,2,151,228,151,232,100,128,2,214,238,239,243,240,225,227,101,128,255,11,115,2,151,248,151,255,237,225,236,108,128,254,98,245,240,229,242,233,239,114,128,32,122,109,2,152,15,152,26,239,238,239,243,240,225,227,101,128,255,80,243,241,245,225,242,101,128,51,216,111,5,152,47,152,58,152,125,152,136,152,146,232,233,242,225,231,225,238,97,128,48,125,233,238,244,233,238,231,233,238,228,229,120,4,152,78,152,90,152,102,152,115,228,239,247,238,247,232,233,244,101,128,38,31,236,229,230,244,247,232,233,244,101,128,38,28,242,233,231,232,244,247,232,233,244,101,128,38,30,245,240,247,232,233,244,101,128,38,29,235,225,244,225,235,225,238,97,128,48,221,240,236,225,244,232,225,105,128,14,27,243,244,225,236,237,225,242,107,129,48,18,152,159,230,225,227,101,128,48,32,240,225,242,229,110,128,36,171,114,3,152,182,152,208,152,233,101,2,152,188,152,196,227,229,228,229,115,128,34,122,243,227,242,233,240,244,233,239,110,128,33,30,233,237,101,2,152,216,152,222,237,239,100,128,2,185,242,229,246,229,242,243,229,100,128,32,53,111,4,152,243,152,250,153,4,153,17,228,245,227,116,128,34,15,234,229,227,244,233,246,101,128,35,5,236,239,238,231,229,228,235,225,238,97,128,48,252,112,2,153,23,153,60,101,2,153,29,153,36,236,236,239,114,128,35,24,242,243,117,2,153,44,153,51,226,243,229,116,128,34,130,240,229,242,243,229,116,128,34,131,239,242,244,233,239,110,129,34,55,153,71,225,108,128,34,29,115,2,153,82,153,125,105,130,3,200,153,90,153,101,227,249,242,233,236,236,233,99,128,4,113,236,233,240,238,229,245,237,225,244,225,227,249,242,233,236,236,233,227,227,237,98,128,4,134,243,241,245,225,242,101,128,51,176,117,2,153,140,153,151,232,233,242,225,231,225,238,97,128,48,119,235,225,244,225,235,225,238,97,128,48,215,246,243,241,245,225,242,101,128,51,180,247,243,241,245,225,242,101,128,51,186,113,136,0,113,153,202,154,251,155,6,155,15,155,22,155,34,155,72,155,80,97,4,153,212,153,235,154,43,154,234,100,2,153,218,153,224,229,246,97,128,9,88,237,225,232,229,226,242,229,119,128,5,168,102,4,153,245,153,254,154,12,154,28,225,242,225,226,233,99,128,6,66,230,233,238,225,236,225,242,225,226,233,99,128,254,214,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,215,237,229,228,233,225,236,225,242,225,226,233,99,128,254,216,237,225,244,115,136,5,184,154,66,154,86,154,100,154,105,154,110,154,119,154,134,154,221,49,3,154,74,154,78,154,82,48,128,5,184,97,128,5,184,99,128,5,184,50,2,154,92,154,96,55,128,5,184,57,128,5,184,179,51,128,5,184,228,101,128,5,184,232,229,226,242,229,119,128,5,184,238,225,242,242,239,247,232,229,226,242,229,119,128,5,184,113,2,154,140,154,206,225,244,225,110,4,154,153,154,162,154,177,154,193,232,229,226,242,229,119,128,5,184,238,225,242,242,239,247,232,229,226,242,229,119,128,5,184,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,184,247,233,228,229,232,229,226,242,229,119,128,5,184,245,225,242,244,229,242,232,229,226,242,229,119,128,5,184,247,233,228,229,232,229,226,242,229,119,128,5,184,242,238,229,249,240,225,242,225,232,229,226,242,229,119,128,5,159,226,239,240,239,237,239,230,111,128,49,17,227,233,242,227,236,101,128,36,224,232,239,239,107,128,2,160,237,239,238,239,243,240,225,227,101,128,255,81,239,102,130,5,231,155,43,155,63,228,225,231,229,243,104,129,251,71,155,54,232,229,226,242,229,119,128,251,71,232,229,226,242,229,119,128,5,231,240,225,242,229,110,128,36,172,117,4,155,90,155,102,155,191,156,22,225,242,244,229,242,238,239,244,101,128,38,105,226,245,244,115,135,5,187,155,123,155,128,155,133,155,138,155,147,155,162,155,178,177,56,128,5,187,178,53,128,5,187,179,49,128,5,187,232,229,226,242,229,119,128,5,187,238,225,242,242,239,247,232,229,226,242,229,119,128,5,187,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,187,247,233,228,229,232,229,226,242,229,119,128,5,187,229,243,244,233,239,110,133,0,63,155,210,155,233,155,250,156,2,156,14,225,114,2,155,217,155,224,225,226,233,99,128,6,31,237,229,238,233,225,110,128,5,94,228,239,247,110,129,0,191,155,242,243,237,225,236,108,128,247,191,231,242,229,229,107,128,3,126,237,239,238,239,243,240,225,227,101,128,255,31,243,237,225,236,108,128,247,63,239,244,101,4,156,34,156,105,156,125,156,154,228,226,108,133,0,34,156,50,156,57,156,64,156,76,156,97,226,225,243,101,128,32,30,236,229,230,116,128,32,28,237,239,238,239,243,240,225,227,101,128,255,2,240,242,233,237,101,129,48,30,156,86,242,229,246,229,242,243,229,100,128,48,29,242,233,231,232,116,128,32,29,236,229,230,116,129,32,24,156,114,242,229,246,229,242,243,229,100,128,32,27,114,2,156,131,156,141,229,246,229,242,243,229,100,128,32,27,233,231,232,116,129,32,25,156,150,110,128,1,73,243,233,238,231,108,2,156,164,156,171,226,225,243,101,128,32,26,101,129,0,39,156,177,237,239,238,239,243,240,225,227,101,128,255,7,114,145,0,114,156,227,157,231,157,242,158,33,158,84,159,101,159,125,159,220,161,254,162,35,162,47,162,101,162,109,163,15,163,26,163,61,163,161,97,11,156,251,157,6,157,16,157,23,157,88,157,104,157,129,157,140,157,165,157,188,157,225,225,242,237,229,238,233,225,110,128,5,124,226,229,238,231,225,236,105,128,9,176,227,245,244,101,128,1,85,100,4,157,33,157,39,157,53,157,79,229,246,97,128,9,48,233,227,225,108,129,34,26,157,48,229,120,128,248,229,239,246,229,242,243,243,241,245,225,242,101,129,51,174,157,69,228,243,241,245,225,242,101,128,51,175,243,241,245,225,242,101,128,51,173,230,101,129,5,191,157,95,232,229,226,242,229,119,128,5,191,231,117,2,157,111,157,120,234,225,242,225,244,105,128,10,176,242,237,245,235,232,105,128,10,48,232,233,242,225,231,225,238,97,128,48,137,235,225,244,225,235,225,238,97,129,48,233,157,153,232,225,236,230,247,233,228,244,104,128,255,151,236,239,247,229,242,228,233,225,231,239,238,225,236,226,229,238,231,225,236,105,128,9,241,109,2,157,194,157,217,233,228,228,236,229,228,233,225,231,239,238,225,236,226,229,238,231,225,236,105,128,9,240,243,232,239,242,110,128,2,100,244,233,111,128,34,54,226,239,240,239,237,239,230,111,128,49,22,99,4,157,252,158,3,158,12,158,20,225,242,239,110,128,1,89,229,228,233,236,236,97,128,1,87,233,242,227,236,101,128,36,225,239,237,237,225,225,227,227,229,238,116,128,1,87,100,2,158,39,158,49,226,236,231,242,225,246,101,128,2,17,239,116,2,158,56,158,65,225,227,227,229,238,116,128,30,89,226,229,236,239,119,129,30,91,158,75,237,225,227,242,239,110,128,30,93,101,6,158,98,158,143,158,178,158,233,159,2,159,35,102,2,158,104,158,117,229,242,229,238,227,229,237,225,242,107,128,32,59,236,229,248,243,117,2,158,127,158,134,226,243,229,116,128,34,134,240,229,242,243,229,116,128,34,135,231,233,243,244,229,114,2,158,154,158,159,229,100,128,0,174,115,2,158,165,158,171,225,238,115,128,248,232,229,242,233,102,128,246,218,104,3,158,186,158,209,158,223,225,114,2,158,193,158,200,225,226,233,99,128,6,49,237,229,238,233,225,110,128,5,128,230,233,238,225,236,225,242,225,226,233,99,128,254,174,233,242,225,231,225,238,97,128,48,140,235,225,244,225,235,225,238,97,129,48,236,158,246,232,225,236,230,247,233,228,244,104,128,255,154,243,104,130,5,232,159,11,159,26,228,225,231,229,243,232,232,229,226,242,229,119,128,251,72,232,229,226,242,229,119,128,5,232,118,3,159,43,159,56,159,88,229,242,243,229,228,244,233,236,228,101,128,34,61,233,97,2,159,63,159,72,232,229,226,242,229,119,128,5,151,237,245,231,242,225,243,232,232,229,226,242,229,119,128,5,151,236,239,231,233,227,225,236,238,239,116,128,35,16,230,233,243,232,232,239,239,107,129,2,126,159,114,242,229,246,229,242,243,229,100,128,2,127,104,2,159,131,159,154,97,2,159,137,159,147,226,229,238,231,225,236,105,128,9,221,228,229,246,97,128,9,93,111,131,3,193,159,164,159,193,159,207,239,107,129,2,125,159,171,244,245,242,238,229,100,129,2,123,159,182,243,245,240,229,242,233,239,114,128,2,181,243,249,237,226,239,236,231,242,229,229,107,128,3,241,244,233,227,232,239,239,235,237,239,100,128,2,222,105,6,159,234,161,22,161,68,161,79,161,104,161,240,229,245,108,9,160,0,160,35,160,50,160,64,160,110,160,124,160,210,160,223,161,2,97,2,160,6,160,21,227,233,242,227,236,229,235,239,242,229,225,110,128,50,113,240,225,242,229,238,235,239,242,229,225,110,128,50,17,227,233,242,227,236,229,235,239,242,229,225,110,128,50,99,232,233,229,245,232,235,239,242,229,225,110,128,49,64,107,2,160,70,160,102,233,249,229,239,107,2,160,80,160,89,235,239,242,229,225,110,128,49,58,243,233,239,243,235,239,242,229,225,110,128,49,105,239,242,229,225,110,128,49,57,237,233,229,245,237,235,239,242,229,225,110,128,49,59,112,3,160,132,160,164,160,179,97,2,160,138,160,152,238,243,233,239,243,235,239,242,229,225,110,128,49,108,242,229,238,235,239,242,229,225,110,128,50,3,232,233,229,245,240,232,235,239,242,229,225,110,128,49,63,233,229,245,112,2,160,188,160,197,235,239,242,229,225,110,128,49,60,243,233,239,243,235,239,242,229,225,110,128,49,107,243,233,239,243,235,239,242,229,225,110,128,49,61,116,2,160,229,160,244,232,233,229,245,244,232,235,239,242,229,225,110,128,49,62,233,235,229,245,244,235,239,242,229,225,110,128,49,106,249,229,239,242,233,238,232,233,229,245,232,235,239,242,229,225,110,128,49,109,231,232,116,2,161,30,161,38,225,238,231,236,101,128,34,31,116,2,161,44,161,58,225,227,235,226,229,236,239,247,227,237,98,128,3,25,242,233,225,238,231,236,101,128,34,191,232,233,242,225,231,225,238,97,128,48,138,235,225,244,225,235,225,238,97,129,48,234,161,92,232,225,236,230,247,233,228,244,104,128,255,152,110,2,161,110,161,226,103,131,2,218,161,120,161,131,161,137,226,229,236,239,247,227,237,98,128,3,37,227,237,98,128,3,10,232,225,236,102,2,161,146,161,192,236,229,230,116,131,2,191,161,159,161,170,161,181,225,242,237,229,238,233,225,110,128,5,89,226,229,236,239,247,227,237,98,128,3,28,227,229,238,244,229,242,229,100,128,2,211,242,233,231,232,116,130,2,190,161,204,161,215,226,229,236,239,247,227,237,98,128,3,57,227,229,238,244,229,242,229,100,128,2,210,246,229,242,244,229,228,226,242,229,246,101,128,2,19,244,244,239,242,245,243,241,245,225,242,101,128,51,81,108,2,162,4,162,15,233,238,229,226,229,236,239,119,128,30,95,239,238,231,236,229,103,129,2,124,162,26,244,245,242,238,229,100,128,2,122,237,239,238,239,243,240,225,227,101,128,255,82,111,3,162,55,162,66,162,91,232,233,242,225,231,225,238,97,128,48,141,235,225,244,225,235,225,238,97,129,48,237,162,79,232,225,236,230,247,233,228,244,104,128,255,155,242,245,225,244,232,225,105,128,14,35,240,225,242,229,110,128,36,173,114,3,162,117,162,153,162,183,97,3,162,125,162,135,162,142,226,229,238,231,225,236,105,128,9,220,228,229,246,97,128,9,49,231,245,242,237,245,235,232,105,128,10,92,229,104,2,162,160,162,169,225,242,225,226,233,99,128,6,145,230,233,238,225,236,225,242,225,226,233,99,128,251,141,246,239,227,225,236,233,99,4,162,199,162,209,162,216,162,227,226,229,238,231,225,236,105,128,9,224,228,229,246,97,128,9,96,231,245,234,225,242,225,244,105,128,10,224,246,239,247,229,236,243,233,231,110,3,162,243,162,253,163,4,226,229,238,231,225,236,105,128,9,196,228,229,246,97,128,9,68,231,245,234,225,242,225,244,105,128,10,196,243,245,240,229,242,233,239,114,128,246,241,116,2,163,32,163,40,226,236,239,227,107,128,37,144,245,242,238,229,100,129,2,121,163,50,243,245,240,229,242,233,239,114,128,2,180,117,4,163,71,163,82,163,107,163,154,232,233,242,225,231,225,238,97,128,48,139,235,225,244,225,235,225,238,97,129,48,235,163,95,232,225,236,230,247,233,228,244,104,128,255,153,112,2,163,113,163,148,229,101,2,163,120,163,134,237,225,242,235,226,229,238,231,225,236,105,128,9,242,243,233,231,238,226,229,238,231,225,236,105,128,9,243,233,225,104,128,246,221,244,232,225,105,128,14,36,246,239,227,225,236,233,99,4,163,177,163,187,163,194,163,205,226,229,238,231,225,236,105,128,9,139,228,229,246,97,128,9,11,231,245,234,225,242,225,244,105,128,10,139,246,239,247,229,236,243,233,231,110,3,163,221,163,231,163,238,226,229,238,231,225,236,105,128,9,195,228,229,246,97,128,9,67,231,245,234,225,242,225,244,105,128,10,195,115,147,0,115,164,35,166,5,166,16,166,142,166,181,169,123,169,134,172,21,174,159,174,205,174,232,175,167,175,234,177,11,177,21,177,207,178,24,178,194,178,204,97,9,164,55,164,65,164,86,164,158,164,183,164,194,164,219,164,251,165,35,226,229,238,231,225,236,105,128,9,184,227,245,244,101,129,1,91,164,74,228,239,244,225,227,227,229,238,116,128,30,101,100,5,164,98,164,107,164,113,164,127,164,143,225,242,225,226,233,99,128,6,53,229,246,97,128,9,56,230,233,238,225,236,225,242,225,226,233,99,128,254,186,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,187,237,229,228,233,225,236,225,242,225,226,233,99,128,254,188,231,117,2,164,165,164,174,234,225,242,225,244,105,128,10,184,242,237,245,235,232,105,128,10,56,232,233,242,225,231,225,238,97,128,48,85,235,225,244,225,235,225,238,97,129,48,181,164,207,232,225,236,230,247,233,228,244,104,128,255,123,236,236,225,236,236,225,232,239,245,225,236,225,249,232,229,247,225,243,225,236,236,225,237,225,242,225,226,233,99,128,253,250,237,229,235,104,130,5,225,165,6,165,26,228,225,231,229,243,104,129,251,65,165,17,232,229,226,242,229,119,128,251,65,232,229,226,242,229,119,128,5,225,242,97,5,165,48,165,122,165,130,165,180,165,188,97,5,165,60,165,68,165,76,165,107,165,115,225,244,232,225,105,128,14,50,229,244,232,225,105,128,14,65,233,237,225,233,109,2,165,86,165,97,225,236,225,233,244,232,225,105,128,14,68,245,225,238,244,232,225,105,128,14,67,237,244,232,225,105,128,14,51,244,232,225,105,128,14,48,229,244,232,225,105,128,14,64,105,3,165,138,165,162,165,173,105,2,165,144,165,155,236,229,230,244,244,232,225,105,128,248,134,244,232,225,105,128,14,53,236,229,230,244,244,232,225,105,128,248,133,244,232,225,105,128,14,52,239,244,232,225,105,128,14,66,117,3,165,196,165,246,165,253,101,3,165,204,165,228,165,239,101,2,165,210,165,221,236,229,230,244,244,232,225,105,128,248,136,244,232,225,105,128,14,55,236,229,230,244,244,232,225,105,128,248,135,244,232,225,105,128,14,54,244,232,225,105,128,14,56,245,244,232,225,105,128,14,57,226,239,240,239,237,239,230,111,128,49,25,99,5,166,28,166,49,166,58,166,107,166,129,225,242,239,110,129,1,97,166,37,228,239,244,225,227,227,229,238,116,128,30,103,229,228,233,236,236,97,128,1,95,232,247,97,131,2,89,166,70,166,81,166,100,227,249,242,233,236,236,233,99,128,4,217,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,219,232,239,239,107,128,2,90,233,242,99,2,166,115,166,120,236,101,128,36,226,245,237,230,236,229,120,128,1,93,239,237,237,225,225,227,227,229,238,116,128,2,25,228,239,116,2,166,150,166,159,225,227,227,229,238,116,128,30,97,226,229,236,239,119,129,30,99,166,169,228,239,244,225,227,227,229,238,116,128,30,105,101,9,166,201,166,217,166,252,167,61,167,164,167,191,167,216,168,41,168,68,225,231,245,236,236,226,229,236,239,247,227,237,98,128,3,60,99,2,166,223,166,245,239,238,100,129,32,51,166,231,244,239,238,229,227,232,233,238,229,243,101,128,2,202,244,233,239,110,128,0,167,229,110,4,167,7,167,16,167,30,167,46,225,242,225,226,233,99,128,6,51,230,233,238,225,236,225,242,225,226,233,99,128,254,178,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,179,237,229,228,233,225,236,225,242,225,226,233,99,128,254,180,231,239,108,135,5,182,167,81,167,95,167,100,167,109,167,124,167,140,167,151,49,2,167,87,167,91,51,128,5,182,102,128,5,182,178,99,128,5,182,232,229,226,242,229,119,128,5,182,238,225,242,242,239,247,232,229,226,242,229,119,128,5,182,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,182,244,225,232,229,226,242,229,119,128,5,146,247,233,228,229,232,229,226,242,229,119,128,5,182,104,2,167,170,167,181,225,242,237,229,238,233,225,110,128,5,125,233,242,225,231,225,238,97,128,48,91,235,225,244,225,235,225,238,97,129,48,187,167,204,232,225,236,230,247,233,228,244,104,128,255,126,237,105,2,167,223,168,10,227,239,236,239,110,131,0,59,167,237,167,246,168,2,225,242,225,226,233,99,128,6,27,237,239,238,239,243,240,225,227,101,128,255,27,243,237,225,236,108,128,254,84,246,239,233,227,229,228,237,225,242,235,235,225,238,97,129,48,156,168,29,232,225,236,230,247,233,228,244,104,128,255,159,238,116,2,168,48,168,58,233,243,241,245,225,242,101,128,51,34,239,243,241,245,225,242,101,128,51,35,246,229,110,142,0,55,168,102,168,111,168,121,168,151,168,158,168,168,168,193,168,220,168,254,169,10,169,21,169,54,169,62,169,73,225,242,225,226,233,99,128,6,103,226,229,238,231,225,236,105,128,9,237,227,233,242,227,236,101,129,36,102,168,132,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,144,228,229,246,97,128,9,109,229,233,231,232,244,232,115,128,33,94,231,117,2,168,175,168,184,234,225,242,225,244,105,128,10,237,242,237,245,235,232,105,128,10,109,232,97,2,168,200,168,211,227,235,225,242,225,226,233,99,128,6,103,238,231,250,232,239,117,128,48,39,105,2,168,226,168,244,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,38,238,230,229,242,233,239,114,128,32,135,237,239,238,239,243,240,225,227,101,128,255,23,239,236,228,243,244,249,236,101,128,247,55,112,2,169,27,169,34,225,242,229,110,128,36,122,229,114,2,169,41,169,47,233,239,100,128,36,142,243,233,225,110,128,6,247,242,239,237,225,110,128,33,118,243,245,240,229,242,233,239,114,128,32,119,116,2,169,79,169,117,229,229,110,2,169,87,169,96,227,233,242,227,236,101,128,36,112,112,2,169,102,169,109,225,242,229,110,128,36,132,229,242,233,239,100,128,36,152,232,225,105,128,14,87,230,244,232,249,240,232,229,110,128,0,173,104,7,169,150,170,124,170,135,170,149,171,94,171,107,172,15,97,6,169,164,169,175,169,185,169,196,170,83,170,108,225,242,237,229,238,233,225,110,128,5,119,226,229,238,231,225,236,105,128,9,182,227,249,242,233,236,236,233,99,128,4,72,100,2,169,202,170,42,228,97,4,169,213,169,222,169,253,170,11,225,242,225,226,233,99,128,6,81,228,225,237,237,97,2,169,232,169,241,225,242,225,226,233,99,128,252,97,244,225,238,225,242,225,226,233,99,128,252,94,230,225,244,232,225,225,242,225,226,233,99,128,252,96,235,225,243,242,97,2,170,21,170,30,225,242,225,226,233,99,128,252,98,244,225,238,225,242,225,226,233,99,128,252,95,101,132,37,146,170,54,170,61,170,69,170,78,228,225,242,107,128,37,147,236,233,231,232,116,128,37,145,237,229,228,233,245,109,128,37,146,246,97,128,9,54,231,117,2,170,90,170,99,234,225,242,225,244,105,128,10,182,242,237,245,235,232,105,128,10,54,236,243,232,229,236,229,244,232,229,226,242,229,119,128,5,147,226,239,240,239,237,239,230,111,128,49,21,227,232,225,227,249,242,233,236,236,233,99,128,4,73,101,4,170,159,170,224,170,234,170,251,229,110,4,170,170,170,179,170,193,170,209,225,242,225,226,233,99,128,6,52,230,233,238,225,236,225,242,225,226,233,99,128,254,182,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,183,237,229,228,233,225,236,225,242,225,226,233,99,128,254,184,233,227,239,240,244,233,99,128,3,227,241,229,108,129,32,170,170,242,232,229,226,242,229,119,128,32,170,246,97,134,5,176,171,12,171,27,171,41,171,50,171,65,171,81,49,2,171,18,171,23,177,53,128,5,176,53,128,5,176,50,2,171,33,171,37,50,128,5,176,101,128,5,176,232,229,226,242,229,119,128,5,176,238,225,242,242,239,247,232,229,226,242,229,119,128,5,176,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,176,247,233,228,229,232,229,226,242,229,119,128,5,176,232,225,227,249,242,233,236,236,233,99,128,4,187,105,2,171,113,171,124,237,225,227,239,240,244,233,99,128,3,237,110,131,5,233,171,134,171,217,171,226,100,2,171,140,171,206,225,231,229,243,104,130,251,73,171,152,171,161,232,229,226,242,229,119,128,251,73,115,2,171,167,171,187,232,233,238,228,239,116,129,251,44,171,178,232,229,226,242,229,119,128,251,44,233,238,228,239,116,129,251,45,171,197,232,229,226,242,229,119,128,251,45,239,244,232,229,226,242,229,119,128,5,193,232,229,226,242,229,119,128,5,233,115,2,171,232,171,252,232,233,238,228,239,116,129,251,42,171,243,232,229,226,242,229,119,128,251,42,233,238,228,239,116,129,251,43,172,6,232,229,226,242,229,119,128,251,43,239,239,107,128,2,130,105,8,172,39,172,83,172,94,172,119,172,149,172,157,172,170,173,85,231,237,97,131,3,195,172,51,172,55,172,63,49,128,3,194,230,233,238,225,108,128,3,194,236,245,238,225,244,229,243,249,237,226,239,236,231,242,229,229,107,128,3,242,232,233,242,225,231,225,238,97,128,48,87,235,225,244,225,235,225,238,97,129,48,183,172,107,232,225,236,230,247,233,228,244,104,128,255,124,236,245,113,2,172,127,172,136,232,229,226,242,229,119,128,5,189,236,229,230,244,232,229,226,242,229,119,128,5,189,237,233,236,225,114,128,34,60,238,228,239,244,232,229,226,242,229,119,128,5,194,239,115,6,172,185,172,220,172,252,173,24,173,38,173,70,97,2,172,191,172,206,227,233,242,227,236,229,235,239,242,229,225,110,128,50,116,240,225,242,229,238,235,239,242,229,225,110,128,50,20,227,105,2,172,227,172,239,229,245,227,235,239,242,229,225,110,128,49,126,242,227,236,229,235,239,242,229,225,110,128,50,102,107,2,173,2,173,16,233,249,229,239,235,235,239,242,229,225,110,128,49,122,239,242,229,225,110,128,49,69,238,233,229,245,238,235,239,242,229,225,110,128,49,123,112,2,173,44,173,57,225,242,229,238,235,239,242,229,225,110,128,50,6,233,229,245,240,235,239,242,229,225,110,128,49,125,244,233,235,229,245,244,235,239,242,229,225,110,128,49,124,120,141,0,54,173,115,173,124,173,134,173,164,173,171,173,196,173,223,174,1,174,13,174,24,174,57,174,65,174,76,225,242,225,226,233,99,128,6,102,226,229,238,231,225,236,105,128,9,236,227,233,242,227,236,101,129,36,101,173,145,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,143,228,229,246,97,128,9,108,231,117,2,173,178,173,187,234,225,242,225,244,105,128,10,236,242,237,245,235,232,105,128,10,108,232,97,2,173,203,173,214,227,235,225,242,225,226,233,99,128,6,102,238,231,250,232,239,117,128,48,38,105,2,173,229,173,247,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,37,238,230,229,242,233,239,114,128,32,134,237,239,238,239,243,240,225,227,101,128,255,22,239,236,228,243,244,249,236,101,128,247,54,112,2,174,30,174,37,225,242,229,110,128,36,121,229,114,2,174,44,174,50,233,239,100,128,36,141,243,233,225,110,128,6,246,242,239,237,225,110,128,33,117,243,245,240,229,242,233,239,114,128,32,118,116,2,174,82,174,153,229,229,110,2,174,90,174,132,99,2,174,96,174,104,233,242,227,236,101,128,36,111,245,242,242,229,238,227,249,228,229,238,239,237,233,238,225,244,239,242,226,229,238,231,225,236,105,128,9,249,112,2,174,138,174,145,225,242,229,110,128,36,131,229,242,233,239,100,128,36,151,232,225,105,128,14,86,108,2,174,165,174,185,225,243,104,129,0,47,174,173,237,239,238,239,243,240,225,227,101,128,255,15,239,238,103,129,1,127,174,193,228,239,244,225,227,227,229,238,116,128,30,155,109,2,174,211,174,221,233,236,229,230,225,227,101,128,38,58,239,238,239,243,240,225,227,101,128,255,83,111,6,174,246,175,40,175,51,175,76,175,121,175,132,102,2,174,252,175,10,240,225,243,245,241,232,229,226,242,229,119,128,5,195,116,2,175,16,175,25,232,249,240,232,229,110,128,0,173,243,233,231,238,227,249,242,233,236,236,233,99,128,4,76,232,233,242,225,231,225,238,97,128,48,93,235,225,244,225,235,225,238,97,129,48,189,175,64,232,225,236,230,247,233,228,244,104,128,255,127,236,233,228,245,115,2,175,86,175,103,236,239,238,231,239,246,229,242,236,225,249,227,237,98,128,3,56,243,232,239,242,244,239,246,229,242,236,225,249,227,237,98,128,3,55,242,245,243,233,244,232,225,105,128,14,41,115,3,175,140,175,150,175,158,225,236,225,244,232,225,105,128,14,40,239,244,232,225,105,128,14,11,245,225,244,232,225,105,128,14,42,240,97,3,175,176,175,196,175,228,227,101,129,0,32,175,183,232,225,227,235,225,242,225,226,233,99,128,0,32,228,101,129,38,96,175,203,243,245,233,116,2,175,212,175,220,226,236,225,227,107,128,38,96,247,232,233,244,101,128,38,100,242,229,110,128,36,174,241,245,225,242,101,11,176,6,176,17,176,31,176,56,176,73,176,99,176,114,176,147,176,174,176,230,176,245,226,229,236,239,247,227,237,98,128,3,59,99,2,176,23,176,27,99,128,51,196,109,128,51,157,228,233,225,231,239,238,225,236,227,242,239,243,243,232,225,244,227,232,230,233,236,108,128,37,169,232,239,242,233,250,239,238,244,225,236,230,233,236,108,128,37,164,107,2,176,79,176,83,103,128,51,143,109,129,51,158,176,89,227,225,240,233,244,225,108,128,51,206,108,2,176,105,176,109,110,128,51,209,239,103,128,51,210,109,4,176,124,176,128,176,133,176,137,103,128,51,142,233,108,128,51,213,109,128,51,156,243,241,245,225,242,229,100,128,51,161,239,242,244,232,239,231,239,238,225,236,227,242,239,243,243,232,225,244,227,232,230,233,236,108,128,37,166,245,240,240,229,114,2,176,184,176,207,236,229,230,244,244,239,236,239,247,229,242,242,233,231,232,244,230,233,236,108,128,37,167,242,233,231,232,244,244,239,236,239,247,229,242,236,229,230,244,230,233,236,108,128,37,168,246,229,242,244,233,227,225,236,230,233,236,108,128,37,165,247,232,233,244,229,247,233,244,232,243,237,225,236,236,226,236,225,227,107,128,37,163,242,243,241,245,225,242,101,128,51,219,115,2,177,27,177,197,97,4,177,37,177,47,177,54,177,65,226,229,238,231,225,236,105,128,9,183,228,229,246,97,128,9,55,231,245,234,225,242,225,244,105,128,10,183,238,103,8,177,84,177,98,177,112,177,126,177,141,177,155,177,169,177,182,227,233,229,245,227,235,239,242,229,225,110,128,49,73,232,233,229,245,232,235,239,242,229,225,110,128,49,133,233,229,245,238,231,235,239,242,229,225,110,128,49,128,235,233,249,229,239,235,235,239,242,229,225,110,128,49,50,238,233,229,245,238,235,239,242,229,225,110,128,49,101,240,233,229,245,240,235,239,242,229,225,110,128,49,67,243,233,239,243,235,239,242,229,225,110,128,49,70,244,233,235,229,245,244,235,239,242,229,225,110,128,49,56,245,240,229,242,233,239,114,128,246,242,116,2,177,213,177,236,229,242,236,233,238,103,129,0,163,177,224,237,239,238,239,243,240,225,227,101,128,255,225,242,239,235,101,2,177,245,178,6,236,239,238,231,239,246,229,242,236,225,249,227,237,98,128,3,54,243,232,239,242,244,239,246,229,242,236,225,249,227,237,98,128,3,53,117,7,178,40,178,72,178,94,178,105,178,146,178,156,178,160,226,243,229,116,130,34,130,178,51,178,62,238,239,244,229,241,245,225,108,128,34,138,239,242,229,241,245,225,108,128,34,134,99,2,178,78,178,86,227,229,229,228,115,128,34,123,232,244,232,225,116,128,34,11,232,233,242,225,231,225,238,97,128,48,89,107,2,178,111,178,135,225,244,225,235,225,238,97,129,48,185,178,123,232,225,236,230,247,233,228,244,104,128,255,125,245,238,225,242,225,226,233,99,128,6,82,237,237,225,244,233,239,110,128,34,17,110,128,38,60,240,229,242,243,229,116,130,34,131,178,173,178,184,238,239,244,229,241,245,225,108,128,34,139,239,242,229,241,245,225,108,128,34,135,246,243,241,245,225,242,101,128,51,220,249,239,245,247,225,229,242,225,243,241,245,225,242,101,128,51,124,116,144,0,116,179,1,180,10,180,31,180,174,180,214,183,6,186,144,187,219,187,231,187,243,189,20,189,45,189,131,190,55,190,239,191,73,97,10,179,23,179,33,179,54,179,61,179,86,179,164,179,181,179,206,179,220,179,224,226,229,238,231,225,236,105,128,9,164,227,107,2,179,40,179,47,228,239,247,110,128,34,164,236,229,230,116,128,34,163,228,229,246,97,128,9,36,231,117,2,179,68,179,77,234,225,242,225,244,105,128,10,164,242,237,245,235,232,105,128,10,36,104,4,179,96,179,105,179,119,179,149,225,242,225,226,233,99,128,6,55,230,233,238,225,236,225,242,225,226,233,99,128,254,194,105,2,179,125,179,140,238,233,244,233,225,236,225,242,225,226,233,99,128,254,195,242,225,231,225,238,97,128,48,95,237,229,228,233,225,236,225,242,225,226,233,99,128,254,196,233,243,249,239,245,229,242,225,243,241,245,225,242,101,128,51,125,235,225,244,225,235,225,238,97,129,48,191,179,194,232,225,236,230,247,233,228,244,104,128,255,128,244,247,229,229,236,225,242,225,226,233,99,128,6,64,117,128,3,196,118,130,5,234,179,232,180,1,228,225,231,229,115,129,251,74,179,242,104,129,251,74,179,248,232,229,226,242,229,119,128,251,74,232,229,226,242,229,119,128,5,234,98,2,180,16,180,21,225,114,128,1,103,239,240,239,237,239,230,111,128,49,10,99,6,180,45,180,52,180,59,180,68,180,134,180,161,225,242,239,110,128,1,101,227,245,242,108,128,2,168,229,228,233,236,236,97,128,1,99,232,229,104,4,180,80,180,89,180,103,180,119,225,242,225,226,233,99,128,6,134,230,233,238,225,236,225,242,225,226,233,99,128,251,123,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,124,237,229,228,233,225,236,225,242,225,226,233,99,128,251,125,233,242,99,2,180,142,180,147,236,101,128,36,227,245,237,230,236,229,248,226,229,236,239,119,128,30,113,239,237,237,225,225,227,227,229,238,116,128,1,99,100,2,180,180,180,190,233,229,242,229,243,233,115,128,30,151,239,116,2,180,197,180,206,225,227,227,229,238,116,128,30,107,226,229,236,239,119,128,30,109,101,9,180,234,180,245,181,9,182,19,182,44,182,108,182,175,182,180,182,232,227,249,242,233,236,236,233,99,128,4,66,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,173,104,7,181,25,181,34,181,48,181,88,181,118,181,159,182,1,225,242,225,226,233,99,128,6,42,230,233,238,225,236,225,242,225,226,233,99,128,254,150,232,225,232,105,2,181,57,181,72,238,233,244,233,225,236,225,242,225,226,233,99,128,252,162,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,12,105,2,181,94,181,109,238,233,244,233,225,236,225,242,225,226,233,99,128,254,151,242,225,231,225,238,97,128,48,102,234,229,229,237,105,2,181,128,181,143,238,233,244,233,225,236,225,242,225,226,233,99,128,252,161,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,11,109,2,181,165,181,199,225,242,226,245,244,97,2,181,176,181,185,225,242,225,226,233,99,128,6,41,230,233,238,225,236,225,242,225,226,233,99,128,254,148,101,2,181,205,181,218,228,233,225,236,225,242,225,226,233,99,128,254,152,229,237,105,2,181,226,181,241,238,233,244,233,225,236,225,242,225,226,233,99,128,252,164,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,14,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,115,235,225,244,225,235,225,238,97,129,48,198,182,32,232,225,236,230,247,233,228,244,104,128,255,131,108,2,182,50,182,69,229,240,232,239,238,101,129,33,33,182,61,226,236,225,227,107,128,38,14,233,243,232,97,2,182,78,182,93,231,229,228,239,236,225,232,229,226,242,229,119,128,5,160,241,229,244,225,238,225,232,229,226,242,229,119,128,5,169,110,4,182,118,182,127,182,146,182,167,227,233,242,227,236,101,128,36,105,233,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,41,112,2,182,152,182,159,225,242,229,110,128,36,125,229,242,233,239,100,128,36,145,242,239,237,225,110,128,33,121,243,104,128,2,167,116,131,5,216,182,190,182,210,182,219,228,225,231,229,243,104,129,251,56,182,201,232,229,226,242,229,119,128,251,56,232,229,226,242,229,119,128,5,216,243,229,227,249,242,233,236,236,233,99,128,4,181,246,233,114,2,182,240,182,249,232,229,226,242,229,119,128,5,155,236,229,230,244,232,229,226,242,229,119,128,5,155,104,6,183,20,183,172,184,38,184,170,185,77,186,134,97,5,183,32,183,42,183,49,183,74,183,103,226,229,238,231,225,236,105,128,9,165,228,229,246,97,128,9,37,231,117,2,183,56,183,65,234,225,242,225,244,105,128,10,165,242,237,245,235,232,105,128,10,37,108,2,183,80,183,89,225,242,225,226,233,99,128,6,48,230,233,238,225,236,225,242,225,226,233,99,128,254,172,238,244,232,225,235,232,225,116,3,183,118,183,149,183,156,236,239,119,2,183,126,183,137,236,229,230,244,244,232,225,105,128,248,152,242,233,231,232,244,244,232,225,105,128,248,151,244,232,225,105,128,14,76,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,150,101,3,183,180,183,244,184,11,104,4,183,190,183,199,183,213,183,229,225,242,225,226,233,99,128,6,43,230,233,238,225,236,225,242,225,226,233,99,128,254,154,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,155,237,229,228,233,225,236,225,242,225,226,233,99,128,254,156,242,101,2,183,251,184,4,229,248,233,243,244,115,128,34,3,230,239,242,101,128,34,52,244,97,130,3,184,184,20,184,24,49,128,3,209,243,249,237,226,239,236,231,242,229,229,107,128,3,209,105,2,184,44,184,130,229,245,244,104,4,184,57,184,92,184,107,184,116,97,2,184,63,184,78,227,233,242,227,236,229,235,239,242,229,225,110,128,50,121,240,225,242,229,238,235,239,242,229,225,110,128,50,25,227,233,242,227,236,229,235,239,242,229,225,110,128,50,107,235,239,242,229,225,110,128,49,76,240,225,242,229,238,235,239,242,229,225,110,128,50,11,242,244,229,229,110,2,184,140,184,149,227,233,242,227,236,101,128,36,108,112,2,184,155,184,162,225,242,229,110,128,36,128,229,242,233,239,100,128,36,148,111,6,184,184,184,201,184,206,184,220,184,225,185,22,238,225,238,231,237,239,238,244,232,239,244,232,225,105,128,14,17,239,107,128,1,173,240,232,245,244,232,225,239,244,232,225,105,128,14,18,242,110,128,0,254,244,104,3,184,234,185,2,185,12,97,2,184,240,184,250,232,225,238,244,232,225,105,128,14,23,238,244,232,225,105,128,14,16,239,238,231,244,232,225,105,128,14,24,245,238,231,244,232,225,105,128,14,22,245,243,225,238,100,2,185,32,185,43,227,249,242,233,236,236,233,99,128,4,130,243,243,229,240,225,242,225,244,239,114,2,185,58,185,67,225,242,225,226,233,99,128,6,108,240,229,242,243,233,225,110,128,6,108,242,229,101,144,0,51,185,115,185,124,185,134,185,164,185,171,185,181,185,206,185,233,186,11,186,23,186,42,186,53,186,86,186,108,186,116,186,127,225,242,225,226,233,99,128,6,99,226,229,238,231,225,236,105,128,9,233,227,233,242,227,236,101,129,36,98,185,145,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,140,228,229,246,97,128,9,105,229,233,231,232,244,232,115,128,33,92,231,117,2,185,188,185,197,234,225,242,225,244,105,128,10,233,242,237,245,235,232,105,128,10,105,232,97,2,185,213,185,224,227,235,225,242,225,226,233,99,128,6,99,238,231,250,232,239,117,128,48,35,105,2,185,239,186,1,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,34,238,230,229,242,233,239,114,128,32,131,237,239,238,239,243,240,225,227,101,128,255,19,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,246,239,236,228,243,244,249,236,101,128,247,51,112,2,186,59,186,66,225,242,229,110,128,36,118,229,114,2,186,73,186,79,233,239,100,128,36,138,243,233,225,110,128,6,243,241,245,225,242,244,229,242,115,129,0,190,186,99,229,237,228,225,243,104,128,246,222,242,239,237,225,110,128,33,114,243,245,240,229,242,233,239,114,128,0,179,244,232,225,105,128,14,83,250,243,241,245,225,242,101,128,51,148,105,7,186,160,186,171,187,30,187,128,187,140,187,189,187,206,232,233,242,225,231,225,238,97,128,48,97,107,2,186,177,186,201,225,244,225,235,225,238,97,129,48,193,186,189,232,225,236,230,247,233,228,244,104,128,255,129,229,245,116,4,186,213,186,248,187,7,187,16,97,2,186,219,186,234,227,233,242,227,236,229,235,239,242,229,225,110,128,50,112,240,225,242,229,238,235,239,242,229,225,110,128,50,16,227,233,242,227,236,229,235,239,242,229,225,110,128,50,98,235,239,242,229,225,110,128,49,55,240,225,242,229,238,235,239,242,229,225,110,128,50,2,236,228,101,133,2,220,187,46,187,57,187,74,187,86,187,114,226,229,236,239,247,227,237,98,128,3,48,99,2,187,63,187,68,237,98,128,3,3,239,237,98,128,3,3,228,239,245,226,236,229,227,237,98,128,3,96,111,2,187,92,187,102,240,229,242,225,244,239,114,128,34,60,246,229,242,236,225,249,227,237,98,128,3,52,246,229,242,244,233,227,225,236,227,237,98,128,3,62,237,229,243,227,233,242,227,236,101,128,34,151,112,2,187,146,187,176,229,232,97,2,187,154,187,163,232,229,226,242,229,119,128,5,150,236,229,230,244,232,229,226,242,229,119,128,5,150,240,233,231,245,242,237,245,235,232,105,128,10,112,244,236,239,227,249,242,233,236,236,233,227,227,237,98,128,4,131,247,238,225,242,237,229,238,233,225,110,128,5,127,236,233,238,229,226,229,236,239,119,128,30,111,237,239,238,239,243,240,225,227,101,128,255,84,111,7,188,3,188,14,188,25,188,50,188,170,188,182,189,10,225,242,237,229,238,233,225,110,128,5,105,232,233,242,225,231,225,238,97,128,48,104,235,225,244,225,235,225,238,97,129,48,200,188,38,232,225,236,230,247,233,228,244,104,128,255,132,110,3,188,58,188,156,188,161,101,4,188,68,188,137,188,144,188,150,226,225,114,4,188,80,188,109,188,119,188,128,229,248,244,242,97,2,188,90,188,100,232,233,231,232,237,239,100,128,2,229,236,239,247,237,239,100,128,2,233,232,233,231,232,237,239,100,128,2,230,236,239,247,237,239,100,128,2,232,237,233,228,237,239,100,128,2,231,230,233,246,101,128,1,189,243,233,120,128,1,133,244,247,111,128,1,168,239,115,128,3,132,243,241,245,225,242,101,128,51,39,240,225,244,225,235,244,232,225,105,128,14,15,242,244,239,233,243,229,243,232,229,236,236,226,242,225,227,235,229,116,2,188,205,188,235,236,229,230,116,130,48,20,188,216,188,224,243,237,225,236,108,128,254,93,246,229,242,244,233,227,225,108,128,254,57,242,233,231,232,116,130,48,21,188,247,188,255,243,237,225,236,108,128,254,94,246,229,242,244,233,227,225,108,128,254,58,244,225,239,244,232,225,105,128,14,21,240,97,2,189,27,189,39,236,225,244,225,236,232,239,239,107,128,1,171,242,229,110,128,36,175,114,3,189,53,189,84,189,99,225,228,229,237,225,242,107,129,33,34,189,65,115,2,189,71,189,77,225,238,115,128,248,234,229,242,233,102,128,246,219,229,244,242,239,230,236,229,248,232,239,239,107,128,2,136,233,225,103,4,189,111,189,116,189,121,189,126,228,110,128,37,188,236,102,128,37,196,242,116,128,37,186,245,112,128,37,178,115,132,2,166,189,143,189,182,190,32,190,45,225,228,105,130,5,230,189,153,189,173,228,225,231,229,243,104,129,251,70,189,164,232,229,226,242,229,119,128,251,70,232,229,226,242,229,119,128,5,230,101,2,189,188,189,199,227,249,242,233,236,236,233,99,128,4,70,242,101,134,5,181,189,216,189,230,189,235,189,244,190,3,190,19,49,2,189,222,189,226,50,128,5,181,101,128,5,181,178,98,128,5,181,232,229,226,242,229,119,128,5,181,238,225,242,242,239,247,232,229,226,242,229,119,128,5,181,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,181,247,233,228,229,232,229,226,242,229,119,128,5,181,232,229,227,249,242,233,236,236,233,99,128,4,91,245,240,229,242,233,239,114,128,246,243,116,4,190,65,190,115,190,180,190,231,97,3,190,73,190,83,190,90,226,229,238,231,225,236,105,128,9,159,228,229,246,97,128,9,31,231,117,2,190,97,190,106,234,225,242,225,244,105,128,10,159,242,237,245,235,232,105,128,10,31,229,104,4,190,126,190,135,190,149,190,165,225,242,225,226,233,99,128,6,121,230,233,238,225,236,225,242,225,226,233,99,128,251,103,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,104,237,229,228,233,225,236,225,242,225,226,233,99,128,251,105,232,97,3,190,189,190,199,190,206,226,229,238,231,225,236,105,128,9,160,228,229,246,97,128,9,32,231,117,2,190,213,190,222,234,225,242,225,244,105,128,10,160,242,237,245,235,232,105,128,10,32,245,242,238,229,100,128,2,135,117,3,190,247,191,2,191,27,232,233,242,225,231,225,238,97,128,48,100,235,225,244,225,235,225,238,97,129,48,196,191,15,232,225,236,230,247,233,228,244,104,128,255,130,243,237,225,236,108,2,191,37,191,48,232,233,242,225,231,225,238,97,128,48,99,235,225,244,225,235,225,238,97,129,48,195,191,61,232,225,236,230,247,233,228,244,104,128,255,111,119,2,191,79,191,184,101,2,191,85,191,133,236,246,101,3,191,95,191,104,191,125,227,233,242,227,236,101,128,36,107,112,2,191,110,191,117,225,242,229,110,128,36,127,229,242,233,239],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+51200);allocate([100,128,36,147,242,239,237,225,110,128,33,123,238,244,121,3,191,143,191,152,191,163,227,233,242,227,236,101,128,36,115,232,225,238,231,250,232,239,117,128,83,68,112,2,191,169,191,176,225,242,229,110,128,36,135,229,242,233,239,100,128,36,155,111,142,0,50,191,216,191,225,191,235,192,9,192,61,192,86,192,113,192,147,192,159,192,178,192,189,192,222,192,230,192,254,225,242,225,226,233,99,128,6,98,226,229,238,231,225,236,105,128,9,232,227,233,242,227,236,101,129,36,97,191,246,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,139,100,2,192,15,192,21,229,246,97,128,9,104,239,116,2,192,28,192,39,229,238,236,229,225,228,229,114,128,32,37,236,229,225,228,229,114,129,32,37,192,50,246,229,242,244,233,227,225,108,128,254,48,231,117,2,192,68,192,77,234,225,242,225,244,105,128,10,232,242,237,245,235,232,105,128,10,104,232,97,2,192,93,192,104,227,235,225,242,225,226,233,99,128,6,98,238,231,250,232,239,117,128,48,34,105,2,192,119,192,137,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,33,238,230,229,242,233,239,114,128,32,130,237,239,238,239,243,240,225,227,101,128,255,18,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,245,239,236,228,243,244,249,236,101,128,247,50,112,2,192,195,192,202,225,242,229,110,128,36,117,229,114,2,192,209,192,215,233,239,100,128,36,137,243,233,225,110,128,6,242,242,239,237,225,110,128,33,113,115,2,192,236,192,244,244,242,239,235,101,128,1,187,245,240,229,242,233,239,114,128,0,178,244,104,2,193,5,193,10,225,105,128,14,82,233,242,228,115,128,33,84,117,145,0,117,193,55,193,63,193,104,193,161,194,43,194,80,194,203,194,219,195,14,195,84,195,165,195,174,196,37,196,61,196,169,196,197,197,55,225,227,245,244,101,128,0,250,98,4,193,73,193,78,193,87,193,97,225,114,128,2,137,229,238,231,225,236,105,128,9,137,239,240,239,237,239,230,111,128,49,40,242,229,246,101,128,1,109,99,3,193,112,193,119,193,151,225,242,239,110,128,1,212,233,242,99,2,193,127,193,132,236,101,128,36,228,245,237,230,236,229,120,129,0,251,193,143,226,229,236,239,119,128,30,119,249,242,233,236,236,233,99,128,4,67,100,5,193,173,193,184,193,207,193,213,194,33,225,244,244,225,228,229,246,97,128,9,81,226,108,2,193,191,193,199,225,227,245,244,101,128,1,113,231,242,225,246,101,128,2,21,229,246,97,128,9,9,233,229,242,229,243,233,115,133,0,252,193,233,193,241,193,249,194,16,194,24,225,227,245,244,101,128,1,216,226,229,236,239,119,128,30,115,99,2,193,255,194,6,225,242,239,110,128,1,218,249,242,233,236,236,233,99,128,4,241,231,242,225,246,101,128,1,220,237,225,227,242,239,110,128,1,214,239,244,226,229,236,239,119,128,30,229,103,2,194,49,194,56,242,225,246,101,128,0,249,117,2,194,62,194,71,234,225,242,225,244,105,128,10,137,242,237,245,235,232,105,128,10,9,104,3,194,88,194,98,194,176,233,242,225,231,225,238,97,128,48,70,111,2,194,104,194,114,239,235,225,226,239,246,101,128,30,231,242,110,133,1,176,194,129,194,137,194,148,194,156,194,168,225,227,245,244,101,128,30,233,228,239,244,226,229,236,239,119,128,30,241,231,242,225,246,101,128,30,235,232,239,239,235,225,226,239,246,101,128,30,237,244,233,236,228,101,128,30,239,245,238,231,225,242,245,237,236,225,245,116,129,1,113,194,192,227,249,242,233,236,236,233,99,128,4,243,233,238,246,229,242,244,229,228,226,242,229,246,101,128,2,23,107,3,194,227,194,251,195,6,225,244,225,235,225,238,97,129,48,166,194,239,232,225,236,230,247,233,228,244,104,128,255,115,227,249,242,233,236,236,233,99,128,4,121,239,242,229,225,110,128,49,92,109,2,195,20,195,73,97,2,195,26,195,59,227,242,239,110,130,1,107,195,37,195,48,227,249,242,233,236,236,233,99,128,4,239,228,233,229,242,229,243,233,115,128,30,123,244,242,225,231,245,242,237,245,235,232,105,128,10,65,239,238,239,243,240,225,227,101,128,255,85,110,2,195,90,195,145,228,229,242,243,227,239,242,101,132,0,95,195,109,195,115,195,127,195,138,228,226,108,128,32,23,237,239,238,239,243,240,225,227,101,128,255,63,246,229,242,244,233,227,225,108,128,254,51,247,225,246,121,128,254,79,105,2,195,151,195,156,239,110,128,34,42,246,229,242,243,225,108,128,34,0,239,231,239,238,229,107,128,1,115,112,5,195,186,195,193,195,201,195,216,196,11,225,242,229,110,128,36,176,226,236,239,227,107,128,37,128,240,229,242,228,239,244,232,229,226,242,229,119,128,5,196,243,233,236,239,110,131,3,197,195,230,195,251,196,3,228,233,229,242,229,243,233,115,129,3,203,195,243,244,239,238,239,115,128,3,176,236,225,244,233,110,128,2,138,244,239,238,239,115,128,3,205,244,225,227,107,2,196,20,196,31,226,229,236,239,247,227,237,98,128,3,29,237,239,100,128,2,212,114,2,196,43,196,55,225,231,245,242,237,245,235,232,105,128,10,115,233,238,103,128,1,111,115,3,196,69,196,84,196,129,232,239,242,244,227,249,242,233,236,236,233,99,128,4,94,237,225,236,108,2,196,93,196,104,232,233,242,225,231,225,238,97,128,48,69,235,225,244,225,235,225,238,97,129,48,165,196,117,232,225,236,230,247,233,228,244,104,128,255,105,244,242,225,233,231,232,116,2,196,141,196,152,227,249,242,233,236,236,233,99,128,4,175,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,177,244,233,236,228,101,130,1,105,196,181,196,189,225,227,245,244,101,128,30,121,226,229,236,239,119,128,30,117,117,5,196,209,196,219,196,226,196,251,197,11,226,229,238,231,225,236,105,128,9,138,228,229,246,97,128,9,10,231,117,2,196,233,196,242,234,225,242,225,244,105,128,10,138,242,237,245,235,232,105,128,10,10,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,66,246,239,247,229,236,243,233,231,110,3,197,27,197,37,197,44,226,229,238,231,225,236,105,128,9,194,228,229,246,97,128,9,66,231,245,234,225,242,225,244,105,128,10,194,246,239,247,229,236,243,233,231,110,3,197,71,197,81,197,88,226,229,238,231,225,236,105,128,9,193,228,229,246,97,128,9,65,231,245,234,225,242,225,244,105,128,10,193,118,139,0,118,197,125,198,17,198,26,198,37,198,222,198,229,199,71,199,83,199,183,199,191,199,212,97,4,197,135,197,142,197,167,197,178,228,229,246,97,128,9,53,231,117,2,197,149,197,158,234,225,242,225,244,105,128,10,181,242,237,245,235,232,105,128,10,53,235,225,244,225,235,225,238,97,128,48,247,118,132,5,213,197,190,197,217,197,249,198,5,228,225,231,229,243,104,130,251,53,197,203,197,208,182,53,128,251,53,232,229,226,242,229,119,128,251,53,104,2,197,223,197,231,229,226,242,229,119,128,5,213,239,236,225,109,129,251,75,197,240,232,229,226,242,229,119,128,251,75,246,225,246,232,229,226,242,229,119,128,5,240,249,239,228,232,229,226,242,229,119,128,5,241,227,233,242,227,236,101,128,36,229,228,239,244,226,229,236,239,119,128,30,127,101,6,198,51,198,62,198,126,198,137,198,143,198,210,227,249,242,233,236,236,233,99,128,4,50,104,4,198,72,198,81,198,95,198,111,225,242,225,226,233,99,128,6,164,230,233,238,225,236,225,242,225,226,233,99,128,251,107,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,108,237,229,228,233,225,236,225,242,225,226,233,99,128,251,109,235,225,244,225,235,225,238,97,128,48,249,238,245,115,128,38,64,242,244,233,227,225,108,2,198,154,198,160,226,225,114,128,0,124,236,233,238,101,4,198,173,198,184,198,195,198,204,225,226,239,246,229,227,237,98,128,3,13,226,229,236,239,247,227,237,98,128,3,41,236,239,247,237,239,100,128,2,204,237,239,100,128,2,200,247,225,242,237,229,238,233,225,110,128,5,126,232,239,239,107,128,2,139,105,3,198,237,198,248,199,31,235,225,244,225,235,225,238,97,128,48,248,242,225,237,97,3,199,3,199,13,199,20,226,229,238,231,225,236,105,128,9,205,228,229,246,97,128,9,77,231,245,234,225,242,225,244,105,128,10,205,243,225,242,231,97,3,199,43,199,53,199,60,226,229,238,231,225,236,105,128,9,131,228,229,246,97,128,9,3,231,245,234,225,242,225,244,105,128,10,131,237,239,238,239,243,240,225,227,101,128,255,86,111,3,199,91,199,102,199,172,225,242,237,229,238,233,225,110,128,5,120,233,227,229,100,2,199,111,199,147,233,244,229,242,225,244,233,239,110,2,199,125,199,136,232,233,242,225,231,225,238,97,128,48,158,235,225,244,225,235,225,238,97,128,48,254,237,225,242,235,235,225,238,97,129,48,155,199,160,232,225,236,230,247,233,228,244,104,128,255,158,235,225,244,225,235,225,238,97,128,48,250,240,225,242,229,110,128,36,177,116,2,199,197,199,204,233,236,228,101,128,30,125,245,242,238,229,100,128,2,140,117,2,199,218,199,229,232,233,242,225,231,225,238,97,128,48,148,235,225,244,225,235,225,238,97,128,48,244,119,143,0,119,200,18,200,251,201,5,201,28,201,68,201,135,201,143,203,114,203,155,203,167,203,242,203,250,204,1,204,12,204,21,97,8,200,36,200,43,200,53,200,64,200,102,200,134,200,146,200,182,227,245,244,101,128,30,131,229,235,239,242,229,225,110,128,49,89,232,233,242,225,231,225,238,97,128,48,143,107,2,200,70,200,94,225,244,225,235,225,238,97,129,48,239,200,82,232,225,236,230,247,233,228,244,104,128,255,156,239,242,229,225,110,128,49,88,243,237,225,236,108,2,200,112,200,123,232,233,242,225,231,225,238,97,128,48,142,235,225,244,225,235,225,238,97,128,48,238,244,244,239,243,241,245,225,242,101,128,51,87,118,2,200,152,200,160,229,228,225,243,104,128,48,28,249,245,238,228,229,242,243,227,239,242,229,246,229,242,244,233,227,225,108,128,254,52,119,3,200,190,200,199,200,213,225,242,225,226,233,99,128,6,72,230,233,238,225,236,225,242,225,226,233,99,128,254,238,232,225,237,250,225,225,226,239,246,101,2,200,228,200,237,225,242,225,226,233,99,128,6,36,230,233,238,225,236,225,242,225,226,233,99,128,254,134,226,243,241,245,225,242,101,128,51,221,227,233,242,99,2,201,14,201,19,236,101,128,36,230,245,237,230,236,229,120,128,1,117,100,2,201,34,201,44,233,229,242,229,243,233,115,128,30,133,239,116,2,201,51,201,60,225,227,227,229,238,116,128,30,135,226,229,236,239,119,128,30,137,101,4,201,78,201,89,201,101,201,125,232,233,242,225,231,225,238,97,128,48,145,233,229,242,243,244,242,225,243,115,128,33,24,107,2,201,107,201,117,225,244,225,235,225,238,97,128,48,241,239,242,229,225,110,128,49,94,239,235,239,242,229,225,110,128,49,93,231,242,225,246,101,128,30,129,232,233,244,101,8,201,164,201,173,202,1,202,91,202,175,202,220,203,16,203,72,226,245,236,236,229,116,128,37,230,99,2,201,179,201,199,233,242,227,236,101,129,37,203,201,189,233,238,246,229,242,243,101,128,37,217,239,242,238,229,242,226,242,225,227,235,229,116,2,201,216,201,236,236,229,230,116,129,48,14,201,225,246,229,242,244,233,227,225,108,128,254,67,242,233,231,232,116,129,48,15,201,246,246,229,242,244,233,227,225,108,128,254,68,100,2,202,7,202,48,233,225,237,239,238,100,129,37,199,202,18,227,239,238,244,225,233,238,233,238,231,226,236,225,227,235,243,237,225,236,236,228,233,225,237,239,238,100,128,37,200,239,247,238,240,239,233,238,244,233,238,103,2,202,64,202,80,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,191,244,242,233,225,238,231,236,101,128,37,189,236,101,2,202,98,202,140,230,244,240,239,233,238,244,233,238,103,2,202,113,202,129,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,195,244,242,233,225,238,231,236,101,128,37,193,238,244,233,227,245,236,225,242,226,242,225,227,235,229,116,2,202,160,202,167,236,229,230,116,128,48,22,242,233,231,232,116,128,48,23,242,233,231,232,244,240,239,233,238,244,233,238,103,2,202,193,202,209,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,185,244,242,233,225,238,231,236,101,128,37,183,115,3,202,228,203,2,203,10,109,2,202,234,202,246,225,236,236,243,241,245,225,242,101,128,37,171,233,236,233,238,231,230,225,227,101,128,38,58,241,245,225,242,101,128,37,161,244,225,114,128,38,6,116,2,203,22,203,33,229,236,229,240,232,239,238,101,128,38,15,239,242,244,239,233,243,229,243,232,229,236,236,226,242,225,227,235,229,116,2,203,57,203,64,236,229,230,116,128,48,24,242,233,231,232,116,128,48,25,245,240,240,239,233,238,244,233,238,103,2,203,87,203,103,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,181,244,242,233,225,238,231,236,101,128,37,179,105,2,203,120,203,131,232,233,242,225,231,225,238,97,128,48,144,107,2,203,137,203,147,225,244,225,235,225,238,97,128,48,240,239,242,229,225,110,128,49,95,237,239,238,239,243,240,225,227,101,128,255,87,111,4,203,177,203,188,203,213,203,231,232,233,242,225,231,225,238,97,128,48,146,235,225,244,225,235,225,238,97,129,48,242,203,201,232,225,236,230,247,233,228,244,104,128,255,102,110,129,32,169,203,219,237,239,238,239,243,240,225,227,101,128,255,230,247,225,229,238,244,232,225,105,128,14,39,240,225,242,229,110,128,36,178,242,233,238,103,128,30,152,243,245,240,229,242,233,239,114,128,2,183,244,245,242,238,229,100,128,2,141,249,238,110,128,1,191,120,137,0,120,204,49,204,60,204,71,204,80,204,107,204,120,204,124,204,136,204,144,225,226,239,246,229,227,237,98,128,3,61,226,239,240,239,237,239,230,111,128,49,18,227,233,242,227,236,101,128,36,231,100,2,204,86,204,96,233,229,242,229,243,233,115,128,30,141,239,244,225,227,227,229,238,116,128,30,139,229,232,225,242,237,229,238,233,225,110,128,5,109,105,128,3,190,237,239,238,239,243,240,225,227,101,128,255,88,240,225,242,229,110,128,36,179,243,245,240,229,242,233,239,114,128,2,227,121,143,0,121,204,189,205,148,205,171,205,211,207,177,207,185,207,202,208,10,208,22,209,19,209,59,209,71,209,82,209,103,210,76,97,11,204,213,204,225,204,235,204,242,204,249,205,3,205,28,205,39,205,77,205,90,205,136,225,228,239,243,241,245,225,242,101,128,51,78,226,229,238,231,225,236,105,128,9,175,227,245,244,101,128,0,253,228,229,246,97,128,9,47,229,235,239,242,229,225,110,128,49,82,231,117,2,205,10,205,19,234,225,242,225,244,105,128,10,175,242,237,245,235,232,105,128,10,47,232,233,242,225,231,225,238,97,128,48,132,107,2,205,45,205,69,225,244,225,235,225,238,97,129,48,228,205,57,232,225,236,230,247,233,228,244,104,128,255,148,239,242,229,225,110,128,49,81,237,225,235,235,225,238,244,232,225,105,128,14,78,243,237,225,236,108,2,205,100,205,111,232,233,242,225,231,225,238,97,128,48,131,235,225,244,225,235,225,238,97,129,48,227,205,124,232,225,236,230,247,233,228,244,104,128,255,108,244,227,249,242,233,236,236,233,99,128,4,99,227,233,242,99,2,205,157,205,162,236,101,128,36,232,245,237,230,236,229,120,128,1,119,100,2,205,177,205,187,233,229,242,229,243,233,115,128,0,255,239,116,2,205,194,205,203,225,227,227,229,238,116,128,30,143,226,229,236,239,119,128,30,245,101,7,205,227,206,235,206,244,207,6,207,38,207,114,207,165,104,8,205,245,205,254,206,32,206,46,206,119,206,135,206,194,206,212,225,242,225,226,233,99,128,6,74,226,225,242,242,229,101,2,206,9,206,18,225,242,225,226,233,99,128,6,210,230,233,238,225,236,225,242,225,226,233,99,128,251,175,230,233,238,225,236,225,242,225,226,233,99,128,254,242,232,225,237,250,225,225,226,239,246,101,4,206,65,206,74,206,88,206,104,225,242,225,226,233,99,128,6,38,230,233,238,225,236,225,242,225,226,233,99,128,254,138,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,139,237,229,228,233,225,236,225,242,225,226,233,99,128,254,140,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,243,237,101,2,206,142,206,155,228,233,225,236,225,242,225,226,233,99,128,254,244,229,237,105,2,206,163,206,178,238,233,244,233,225,236,225,242,225,226,233,99,128,252,221,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,88,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,148,244,232,242,229,229,228,239,244,243,226,229,236,239,247,225,242,225,226,233,99,128,6,209,235,239,242,229,225,110,128,49,86,110,129,0,165,206,250,237,239,238,239,243,240,225,227,101,128,255,229,111,2,207,12,207,21,235,239,242,229,225,110,128,49,85,242,233,238,232,233,229,245,232,235,239,242,229,225,110,128,49,134,114,3,207,46,207,82,207,94,225,232,226,229,238,249,239,237,111,2,207,60,207,69,232,229,226,242,229,119,128,5,170,236,229,230,244,232,229,226,242,229,119,128,5,170,233,227,249,242,233,236,236,233,99,128,4,75,245,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,249,243,233,229,245,238,103,3,207,127,207,136,207,152,235,239,242,229,225,110,128,49,129,240,225,238,243,233,239,243,235,239,242,229,225,110,128,49,131,243,233,239,243,235,239,242,229,225,110,128,49,130,244,233,246,232,229,226,242,229,119,128,5,154,231,242,225,246,101,128,30,243,232,239,239,107,129,1,180,207,194,225,226,239,246,101,128,30,247,105,5,207,214,207,225,207,236,207,245,207,253,225,242,237,229,238,233,225,110,128,5,117,227,249,242,233,236,236,233,99,128,4,87,235,239,242,229,225,110,128,49,98,238,249,225,238,103,128,38,47,247,238,225,242,237,229,238,233,225,110,128,5,130,237,239,238,239,243,240,225,227,101,128,255,89,111,7,208,38,208,108,208,119,208,129,208,167,208,213,208,222,100,131,5,217,208,48,208,68,208,77,228,225,231,229,243,104,129,251,57,208,59,232,229,226,242,229,119,128,251,57,232,229,226,242,229,119,128,5,217,249,239,100,2,208,85,208,94,232,229,226,242,229,119,128,5,242,240,225,244,225,232,232,229,226,242,229,119,128,251,31,232,233,242,225,231,225,238,97,128,48,136,233,235,239,242,229,225,110,128,49,137,107,2,208,135,208,159,225,244,225,235,225,238,97,129,48,232,208,147,232,225,236,230,247,233,228,244,104,128,255,150,239,242,229,225,110,128,49,91,243,237,225,236,108,2,208,177,208,188,232,233,242,225,231,225,238,97,128,48,135,235,225,244,225,235,225,238,97,129,48,231,208,201,232,225,236,230,247,233,228,244,104,128,255,110,244,231,242,229,229,107,128,3,243,121,2,208,228,209,9,97,2,208,234,208,244,229,235,239,242,229,225,110,128,49,136,107,2,208,250,209,2,239,242,229,225,110,128,49,135,244,232,225,105,128,14,34,233,238,231,244,232,225,105,128,14,13,112,2,209,25,209,32,225,242,229,110,128,36,180,239,231,229,231,242,225,237,237,229,238,105,129,3,122,209,48,231,242,229,229,235,227,237,98,128,3,69,114,129,1,166,209,65,233,238,103,128,30,153,243,245,240,229,242,233,239,114,128,2,184,116,2,209,88,209,95,233,236,228,101,128,30,249,245,242,238,229,100,128,2,142,117,5,209,115,209,126,209,136,209,174,210,50,232,233,242,225,231,225,238,97,128,48,134,233,235,239,242,229,225,110,128,49,140,107,2,209,142,209,166,225,244,225,235,225,238,97,129,48,230,209,154,232,225,236,230,247,233,228,244,104,128,255,149,239,242,229,225,110,128,49,96,115,3,209,182,209,220,210,5,226,233,103,2,209,190,209,201,227,249,242,233,236,236,233,99,128,4,107,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,109,236,233,244,244,236,101,2,209,231,209,242,227,249,242,233,236,236,233,99,128,4,103,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,105,237,225,236,108,2,210,14,210,25,232,233,242,225,231,225,238,97,128,48,133,235,225,244,225,235,225,238,97,129,48,229,210,38,232,225,236,230,247,233,228,244,104,128,255,109,249,101,2,210,57,210,66,235,239,242,229,225,110,128,49,139,239,235,239,242,229,225,110,128,49,138,249,97,2,210,83,210,93,226,229,238,231,225,236,105,128,9,223,228,229,246,97,128,9,95,122,142,0,122,210,132,211,140,211,151,211,194,211,221,213,0,213,108,213,150,213,162,213,174,213,202,213,210,213,226,213,235,97,10,210,154,210,165,210,172,210,179,210,190,211,12,211,42,211,53,211,89,211,101,225,242,237,229,238,233,225,110,128,5,102,227,245,244,101,128,1,122,228,229,246,97,128,9,91,231,245,242,237,245,235,232,105,128,10,91,104,4,210,200,210,209,210,223,210,253,225,242,225,226,233,99,128,6,56,230,233,238,225,236,225,242,225,226,233,99,128,254,198,105,2,210,229,210,244,238,233,244,233,225,236,225,242,225,226,233,99,128,254,199,242,225,231,225,238,97,128,48,86,237,229,228,233,225,236,225,242,225,226,233,99,128,254,200,233,110,2,211,19,211,28,225,242,225,226,233,99,128,6,50,230,233,238,225,236,225,242,225,226,233,99,128,254,176,235,225,244,225,235,225,238,97,128,48,182,241,229,102,2,211,61,211,75,231,225,228,239,236,232,229,226,242,229,119,128,5,149,241,225,244,225,238,232,229,226,242,229,119,128,5,148,242,241,225,232,229,226,242,229,119,128,5,152,249,233,110,130,5,214,211,111,211,131,228,225,231,229,243,104,129,251,54,211,122,232,229,226,242,229,119,128,251,54,232,229,226,242,229,119,128,5,214,226,239,240,239,237,239,230,111,128,49,23,99,3,211,159,211,166,211,188,225,242,239,110,128,1,126,233,242,99,2,211,174,211,179,236,101,128,36,233,245,237,230,236,229,120,128,30,145,245,242,108,128,2,145,228,239,116,130,1,124,211,204,211,213,225,227,227,229,238,116,128,1,124,226,229,236,239,119,128,30,147,101,6,211,235,211,246,212,33,212,44,212,55,212,251,227,249,242,233,236,236,233,99,128,4,55,100,2,211,252,212,15,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,153,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,223,232,233,242,225,231,225,238,97,128,48,92,235,225,244,225,235,225,238,97,128,48,188,242,111,140,0,48,212,84,212,93,212,103,212,110,212,135,212,148,212,159,212,171,212,182,212,192,212,203,212,210,225,242,225,226,233,99,128,6,96,226,229,238,231,225,236,105,128,9,230,228,229,246,97,128,9,102,231,117,2,212,117,212,126,234,225,242,225,244,105,128,10,230,242,237,245,235,232,105,128,10,102,232,225,227,235,225,242,225,226,233,99,128,6,96,233,238,230,229,242,233,239,114,128,32,128,237,239,238,239,243,240,225,227,101,128,255,16,239,236,228,243,244,249,236,101,128,247,48,240,229,242,243,233,225,110,128,6,240,243,245,240,229,242,233,239,114,128,32,112,244,232,225,105,128,14,80,247,233,228,244,104,3,212,222,212,231,212,243,234,239,233,238,229,114,128,254,255,238,239,238,234,239,233,238,229,114,128,32,12,243,240,225,227,101,128,32,11,244,97,128,3,182,104,2,213,6,213,17,226,239,240,239,237,239,230,111,128,49,19,101,4,213,27,213,38,213,54,213,65,225,242,237,229,238,233,225,110,128,5,106,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,194,227,249,242,233,236,236,233,99,128,4,54,100,2,213,71,213,90,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,151,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,221,105,3,213,116,213,127,213,138,232,233,242,225,231,225,238,97,128,48,88,235,225,244,225,235,225,238,97,128,48,184,238,239,242,232,229,226,242,229,119,128,5,174,236,233,238,229,226,229,236,239,119,128,30,149,237,239,238,239,243,240,225,227,101,128,255,90,111,2,213,180,213,191,232,233,242,225,231,225,238,97,128,48,94,235,225,244,225,235,225,238,97,128,48,190,240,225,242,229,110,128,36,181,242,229,244,242,239,230,236,229,248,232,239,239,107,128,2,144,243,244,242,239,235,101,128,1,182,117,2,213,241,213,252,232,233,242,225,231,225,238,97,128,48,90,235,225,244,225,235,225,238,97,128,48,186,68,101,108,116,97,0,79,109,101,103,97,0,102,114,97,99,116,105,111,110,0,104,121,112,104,101,110,0,109,97,99,114,111,110,0,109,117,0,112,101,114,105,111,100,99,101,110,116,101,114,101,100,0,115,112,97,99,101,0,84,99,111,109,109,97,97,99,99,101,110,116,0,116,99,111,109,109,97,97,99,99,101,110,116,0,46,110,117,108,108,0,110,111,110,109,97,114,107,105,110,103,114,101,116,117,114,110,0,110,111,116,101,113,117,97,108,0,105,110,102,105,110,105,116,121,0,108,101,115,115,101,113,117,97,108,0,103,114,101,97,116,101,114,101,113,117,97,108,0,112,97,114,116,105,97,108,100,105,102,102,0,115,117,109,109,97,116,105,111,110,0,112,114,111,100,117,99,116,0,112,105,0,105,110,116,101,103,114,97,108,0,79,109,101,103,97,0,114,97,100,105,99,97,108,0,97,112,112,114,111,120,101,113,117,97,108,0,68,101,108,116,97,0,110,111,110,98,114,101,97,107,105,110,103,115,112,97,99,101,0,108,111,122,101,110,103,101,0,97,112,112,108,101,0,102,114,97,110,99,0,71,98,114,101,118,101,0,103,98,114,101,118,101,0,73,100,111,116,97,99,99,101,110,116,0,83,99,101,100,105,108,108,97,0,115,99,101,100,105,108,108,97,0,67,97,99,117,116,101,0,99,97,99,117,116,101,0,67,99,97,114,111,110,0,99,99,97,114,111,110,0,100,99,114,111,97,116,0,46,110,111,116,100,101,102,0,115,112,97,99,101,0,101,120,99,108,97,109,0,113,117,111,116,101,100,98,108,0,110,117,109,98,101,114,115,105,103,110,0,100,111,108,108,97,114,0,112,101,114,99,101,110,116,0,97,109,112,101,114,115,97,110,100,0,113,117,111,116,101,114,105,103,104,116,0,112,97,114,101,110,108,101,102,116,0,112,97,114,101,110,114,105,103,104,116,0,97,115,116,101,114,105,115,107,0,112,108,117,115,0,99,111,109,109,97,0,104,121,112,104,101,110,0,112,101,114,105,111,100,0,115,108,97,115,104,0,122,101,114,111,0,111,110,101,0,116,119,111,0,116,104,114,101,101,0,102,111,117,114,0,102,105,118,101,0,115,105,120,0,115,101,118,101,110,0,101,105,103,104,116,0,110,105,110,101,0,99,111,108,111,110,0,115,101,109,105,99,111,108,111,110,0,108,101,115,115,0,101,113,117,97,108,0,103,114,101,97,116,101,114,0,113,117,101,115,116,105,111,110,0,97,116,0,65,0,66,0,67,0,68,0,69,0,70,0,71,0,72,0,73,0,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,98,114,97,99,107,101,116,108,101,102,116,0,98,97,99,107,115,108,97,115,104,0,98,114,97,99,107,101,116,114,105,103,104,116,0,97,115,99,105,105,99,105,114,99,117,109,0,117,110,100,101,114,115,99,111,114,101,0,113,117,111,116,101,108,101,102,116,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,111,0,112,0,113,0,114,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,98,114,97,99,101,108,101,102,116,0,98,97,114,0,98,114,97,99,101,114,105,103,104,116,0,97,115,99,105,105,116,105,108,100,101,0,101,120,99,108,97,109,100,111,119,110,0,99,101,110,116,0,115,116,101,114,108,105,110,103,0,102,114,97,99,116,105,111,110,0,121,101,110,0,102,108,111,114,105,110,0,115,101,99,116,105,111,110,0,99,117,114,114,101,110,99,121,0,113,117,111,116,101,115,105,110,103,108,101,0,113,117,111,116,101,100,98,108,108,101,102,116,0,103,117,105,108,108,101,109,111,116,108,101,102,116,0,103,117,105,108,115,105,110,103,108,108,101,102,116,0,103,117,105,108,115,105,110,103,108,114,105,103,104,116,0,102,105,0,102,108,0,101,110,100,97,115,104,0,100,97,103,103,101,114,0,100,97,103,103,101,114,100,98,108,0,112,101,114,105,111,100,99,101,110,116,101,114,101,100,0,112,97,114,97,103,114,97,112,104,0,98,117,108,108,101,116,0,113,117,111,116,101,115,105,110,103,108,98,97,115,101,0,113,117,111,116,101,100,98,108,98,97,115,101,0,113,117,111,116,101,100,98,108,114,105,103,104,116,0,103,117,105,108,108,101,109,111,116,114,105,103,104,116,0,101,108,108,105,112,115,105,115,0,112,101,114,116,104,111,117,115,97,110,100,0,113,117,101,115,116,105,111,110,100,111,119,110,0,103,114,97,118,101,0,97,99,117,116,101,0,99,105,114,99,117,109,102,108,101,120,0,116,105,108,100,101,0,109,97,99,114,111,110,0,98,114,101,118,101,0,100,111,116,97,99,99,101,110,116,0,100,105,101,114,101,115,105,115,0,114,105,110,103,0,99,101,100,105,108,108,97,0,104,117,110,103,97,114,117,109,108,97,117,116,0,111,103,111,110,101,107,0,99,97,114,111,110,0,101,109,100,97,115,104,0,65,69,0,111,114,100,102,101,109,105,110,105,110,101,0,76,115,108,97,115,104,0,79,115,108,97,115,104,0,79,69,0,111,114,100,109,97,115,99,117,108,105,110,101,0,97,101,0,100,111,116,108,101,115,115,105,0,108,115,108,97,115,104,0,111,115,108,97,115,104,0,111,101,0,103,101,114,109,97,110,100,98,108,115,0,111,110,101,115,117,112,101,114,105,111,114,0,108,111,103,105,99,97,108,110,111,116,0,109,117,0,116,114,97,100,101,109,97,114,107,0,69,116,104,0,111,110,101,104,97,108,102,0,112,108,117,115,109,105,110,117,115,0,84,104,111,114,110,0,111,110,101,113,117,97,114,116,101,114,0,100,105,118,105,100,101,0,98,114,111,107,101,110,98,97,114,0,100,101,103,114,101,101,0,116,104,111,114,110,0,116,104,114,101,101,113,117,97,114,116,101,114,115,0,116,119,111,115,117,112,101,114,105,111,114,0,114,101,103,105,115,116,101,114,101,100,0,109,105,110,117,115,0,101,116,104,0,109,117,108,116,105,112,108,121,0,116,104,114,101,101,115,117,112,101,114,105,111,114,0,99,111,112,121,114,105,103,104,116,0,65,97,99,117,116,101,0,65,99,105,114,99,117,109,102,108,101,120,0,65,100,105,101,114,101,115,105,115,0,65,103,114,97,118,101,0,65,114,105,110,103,0,65,116,105,108,100,101,0,67,99,101,100,105,108,108,97,0,69,97,99,117,116,101,0,69,99,105,114,99,117,109,102,108,101,120,0,69,100,105,101,114,101,115,105,115,0,69,103,114,97,118,101,0,73,97,99,117,116,101,0,73,99,105,114,99,117,109,102,108,101,120,0,73,100,105,101,114,101,115,105,115,0,73,103,114,97,118,101,0,78,116,105,108,100,101,0,79,97,99,117,116,101,0,79,99,105,114,99,117,109,102,108,101,120,0,79,100,105,101,114,101,115,105,115,0,79,103,114,97,118,101,0,79,116,105,108,100,101,0,83,99,97,114,111,110,0,85,97,99,117,116,101,0,85,99,105,114,99,117,109,102,108,101,120,0,85,100,105,101,114,101,115,105,115,0,85,103,114,97,118,101,0,89,97,99,117,116,101,0,89,100,105,101,114,101,115,105,115,0,90,99,97,114,111,110,0,97,97,99,117,116,101,0,97,99,105,114,99,117,109,102,108,101,120,0,97,100,105,101,114,101,115,105,115,0,97,103,114,97,118,101,0,97,114,105,110,103,0,97,116,105,108,100,101,0,99,99,101,100,105,108,108,97,0,101,97,99,117,116,101,0,101,99,105,114,99,117,109,102,108,101,120,0,101,100,105,101,114,101,115,105,115,0,101,103,114,97,118,101,0,105,97,99,117,116,101,0,105,99,105,114,99,117,109,102,108,101,120,0,105,100,105,101,114,101,115,105,115,0,105,103,114,97,118,101,0,110,116,105,108,100,101,0,111,97,99,117,116,101,0,111,99,105,114,99,117,109,102,108,101,120,0,111,100,105,101,114,101,115,105,115,0,111,103,114,97,118,101,0,111,116,105,108,100,101,0,115,99,97,114,111,110,0,117,97,99,117,116,101,0,117,99,105,114,99,117,109,102,108,101,120,0,117,100,105,101,114,101,115,105,115,0,117,103,114,97,118,101,0,121,97,99,117,116,101,0,121,100,105,101,114,101,115,105,115,0,122,99,97,114,111,110,0,101,120,99,108,97,109,115,109,97,108,108,0,72,117,110,103,97,114,117,109,108,97,117,116,115,109,97,108,108,0,100,111,108,108,97,114,111,108,100,115,116,121,108,101,0,100,111,108,108,97,114,115,117,112,101,114,105,111,114,0,97,109,112,101,114,115,97,110,100,115,109,97,108,108,0,65,99,117,116,101,115,109,97,108,108,0,112,97,114,101,110,108,101,102,116,115,117,112,101,114,105,111,114,0,112,97,114,101,110,114,105,103,104,116,115,117,112,101,114,105,111,114,0,116,119,111,100,111,116,101,110,108,101,97,100,101,114,0,111,110,101,100,111,116,101,110,108,101,97,100,101,114,0,122,101,114,111,111,108,100,115,116,121,108,101,0,111,110,101,111,108,100,115,116,121,108,101,0,116,119,111,111,108,100,115,116,121,108,101,0,116,104,114,101,101,111,108,100,115,116,121,108,101,0,102,111,117,114,111,108,100,115,116,121,108,101,0,102,105,118,101,111,108,100,115,116,121,108,101,0,115,105,120,111,108,100,115,116,121,108,101,0,115,101,118,101,110,111,108,100,115,116,121,108,101,0,101,105,103,104,116,111,108,100,115,116,121,108,101,0,110,105,110,101,111,108,100,115,116,121,108,101,0,99,111,109,109,97,115,117,112,101,114,105,111,114,0,116,104,114,101,101,113,117,97,114,116,101,114,115,101,109,100,97,115,104,0,112,101,114,105,111,100,115,117,112,101,114,105,111,114,0,113,117,101,115,116,105,111,110,115,109,97,108,108,0,97,115,117,112,101,114,105,111,114,0,98,115,117,112,101,114,105,111,114,0,99,101,110,116,115,117,112,101,114,105,111,114,0,100,115,117,112,101,114,105,111,114,0,101,115,117,112,101,114,105,111,114,0,105,115,117,112,101,114,105,111,114,0,108,115,117,112,101,114,105,111,114,0,109,115,117,112,101,114,105,111,114,0,110,115,117,112,101,114,105,111,114,0,111,115,117,112,101,114,105,111,114,0,114,115,117,112,101,114,105,111,114,0,115,115,117,112,101,114,105,111,114,0,116,115,117,112,101,114,105,111,114,0,102,102,0,102,102,105,0,102,102,108,0,112,97,114,101,110,108,101,102,116,105,110,102,101,114,105,111,114,0,112,97,114,101,110,114,105,103,104,116,105,110,102,101,114,105,111,114,0,67,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,104,121,112,104,101,110,115,117,112,101,114,105,111,114,0,71,114,97,118,101,115,109,97,108,108,0,65,115,109,97,108,108,0,66,115,109,97,108,108,0,67,115,109,97,108,108,0,68,115,109,97,108,108,0,69,115,109,97,108,108,0,70,115,109,97,108,108,0,71,115,109,97,108,108,0,72,115,109,97,108,108,0,73,115,109,97,108,108,0,74,115,109,97,108,108,0,75,115,109,97,108,108,0,76,115,109,97,108,108,0,77,115,109,97,108,108,0,78,115,109,97,108,108,0,79,115,109,97,108,108,0,80,115,109,97,108,108,0,81,115,109,97,108,108,0,82,115,109,97,108,108,0,83,115,109,97,108,108,0,84,115,109,97,108,108,0,85,115,109,97,108,108,0,86,115,109,97,108,108,0,87,115,109,97,108,108,0,88,115,109,97,108,108,0,89,115,109,97,108,108,0,90,115,109,97,108,108,0,99,111,108,111,110,109,111,110,101,116,97,114,121,0,111,110,101,102,105,116,116,101,100,0,114,117,112,105,97,104,0,84,105,108,100,101,115,109,97,108,108,0,101,120,99,108,97,109,100,111,119,110,115,109,97,108,108,0,99,101,110,116,111,108,100,115,116,121,108,101,0,76,115,108,97,115,104,115,109,97,108,108,0,83,99,97,114,111,110,115,109,97,108,108,0,90,99,97,114,111,110,115,109,97,108,108,0,68,105,101,114,101,115,105,115,115,109,97,108,108,0,66,114,101,118,101,115,109,97,108,108,0,67,97,114,111,110,115,109,97,108,108,0,68,111,116,97,99,99,101,110,116,115,109,97,108,108,0,77,97,99,114,111,110,115,109,97,108,108,0,102,105,103,117,114,101,100,97,115,104,0,104,121,112,104,101,110,105,110,102,101,114,105,111,114,0,79,103,111,110,101,107,115,109,97,108,108,0,82,105,110,103,115,109,97,108,108,0,67,101,100,105,108,108,97,115,109,97,108,108,0,113,117,101,115,116,105,111,110,100,111,119,110,115,109,97,108,108,0,111,110,101,101,105,103,104,116,104,0,116,104,114,101,101,101,105,103,104,116,104,115,0,102,105,118,101,101,105,103,104,116,104,115,0,115,101,118,101,110,101,105,103,104,116,104,115,0,111,110,101,116,104,105,114,100,0,116,119,111,116,104,105,114,100,115,0,122,101,114,111,115,117,112,101,114,105,111,114,0,102,111,117,114,115,117,112,101,114,105,111,114,0,102,105,118,101,115,117,112,101,114,105,111,114,0,115,105,120,115,117,112,101,114,105,111,114,0,115,101,118,101,110,115,117,112,101,114,105,111,114,0,101,105,103,104,116,115,117,112,101,114,105,111,114,0,110,105,110,101,115,117,112,101,114,105,111,114,0,122,101,114,111,105,110,102,101,114,105,111,114,0,111,110,101,105,110,102,101,114,105,111,114,0,116,119,111,105,110,102,101,114,105,111,114,0,116,104,114,101,101,105,110,102,101,114,105,111,114,0,102,111,117,114,105,110,102,101,114,105,111,114,0,102,105,118,101,105,110,102,101,114,105,111,114,0,115,105,120,105,110,102,101,114,105,111,114,0,115,101,118,101,110,105,110,102,101,114,105,111,114,0,101,105,103,104,116,105,110,102,101,114,105,111,114,0,110,105,110,101,105,110,102,101,114,105,111,114,0,99,101,110,116,105,110,102,101,114,105,111,114,0,100,111,108,108,97,114,105,110,102,101,114,105,111,114,0,112,101,114,105,111,100,105,110,102,101,114,105,111,114,0,99,111,109,109,97,105,110,102,101,114,105,111,114,0,65,103,114,97,118,101,115,109,97,108,108,0,65,97,99,117,116,101,115,109,97,108,108,0,65,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,65,116,105,108,100,101,115,109,97,108,108,0,65,100,105,101,114,101,115,105,115,115,109,97,108,108,0,65,114,105,110,103,115,109,97,108,108,0,65,69,115,109,97,108,108,0,67,99,101,100,105,108,108,97,115,109,97,108,108,0,69,103,114,97,118,101,115,109,97,108,108,0,69,97,99,117,116,101,115,109,97,108,108,0,69,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,69,100,105,101,114,101,115,105,115,115,109,97,108,108,0,73,103,114,97,118,101,115,109,97,108,108,0,73,97,99,117,116,101,115,109,97,108,108,0,73,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,73,100,105,101,114,101,115,105,115,115,109,97,108,108,0,69,116,104,115,109,97,108,108,0,78,116,105,108,100,101,115,109,97,108,108,0,79,103,114,97,118,101,115,109,97,108,108,0,79,97,99,117,116,101,115,109,97,108,108,0,79,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,79,116,105,108,100,101,115,109,97,108,108,0,79,100,105,101,114,101,115,105,115,115,109,97,108,108,0,79,69,115,109,97,108,108,0,79,115,108,97,115,104,115,109,97,108,108,0,85,103,114,97,118,101,115,109,97,108,108,0,85,97,99,117,116,101,115,109,97,108,108,0,85,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,85,100,105,101,114,101,115,105,115,115,109,97,108,108,0,89,97,99,117,116,101,115,109,97,108,108,0,84,104,111,114,110,115,109,97,108,108,0,89,100,105,101,114,101,115,105,115,115,109,97,108,108,0,48,48,49,46,48,48,48,0,48,48,49,46,48,48,49,0,48,48,49,46,48,48,50,0,48,48,49,46,48,48,51,0,66,108,97,99,107,0,66,111,108,100,0,66,111,111,107,0,76,105,103,104,116,0,77,101,100,105,117,109,0,82,101,103,117,108,97,114,0,82,111,109,97,110,0,83,101,109,105,98,111,108,100,0,112,111,115,116,115,99,114,105,112,116,45,99,109,97,112,115,0,114,98,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,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,18,0,0,0,18,18,18,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,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+61440);allocate([0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0,114,119,97,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+71680);var tempDoublePtr=STATICTOP;STATICTOP+=16;Module["_i64Subtract"]=_i64Subtract;Module["_i64Add"]=_i64Add;Module["_memset"]=_memset;function _pthread_cleanup_push(routine,arg){__ATEXIT__.push((function(){Runtime.dynCall("vi",routine,[arg])}));_pthread_cleanup_push.level=__ATEXIT__.length}Module["_bitshift64Lshr"]=_bitshift64Lshr;Module["_bitshift64Shl"]=_bitshift64Shl;function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!");__ATEXIT__.pop();_pthread_cleanup_push.level=__ATEXIT__.length}function _abort(){Module["abort"]()}function _realloc(){throw"bad"}Module["_realloc"]=_realloc;Module["_saveSetjmp"]=_saveSetjmp;Module["_testSetjmp"]=_testSetjmp;function _longjmp(env,value){asm["setThrew"](env,value||1);throw"longjmp"}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"};function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>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){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up--;up){parts.unshift("..")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))}),join2:(function(l,r){return PATH.normalize(l+"/"+r)}),resolve:(function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter((function(p){return!!p})),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start<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(){}),shutdown:(function(){}),register:(function(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)}),stream_ops:{open:(function(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}stream.tty=tty;stream.seekable=false}),close:(function(stream){stream.tty.ops.flush(stream.tty)}),flush:(function(stream){stream.tty.ops.flush(stream.tty)}),read:(function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(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){var BUFSIZE=256;var buf=new Buffer(BUFSIZE);var bytesRead=0;var fd=process.stdin.fd;var usingDevice=false;try{fd=fs.openSync("/dev/stdin","r");usingDevice=true}catch(e){}bytesRead=fs.readSync(fd,buf,0,BUFSIZE,null);if(usingDevice){fs.closeSync(fd)}if(bytesRead>0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;i<node.usedBytes;++i)arr.push(node.contents[i]);return arr}return node.contents}),getFileDataAsTypedArray:(function(node){if(!node.contents)return new Uint8Array;if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)}),expandFileStorage:(function(node,newCapacity){if(node.contents&&node.contents.subarray&&newCapacity>node.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.buffer.byteLength:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity<CAPACITY_DOUBLING_MAX?2:1.125)|0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}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;node.usedBytes=0;return}if(!node.contents||node.contents.subarray){var oldContents=node.contents;node.contents=new Uint8Array(new ArrayBuffer(newSize));if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize;return}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={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}}),lookup:(function(parent,name){throw FS.genericErrors[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(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)}}}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|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){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i<size;i++)buffer[offset+i]=contents[position+i]}return size}),write:(function(stream,buffer,offset,length,position,canOwn){if(!length)return 0;var node=stream.node;node.timestamp=Date.now();if(buffer.subarray&&(!node.contents||node.contents.subarray)){if(canOwn){node.contents=buffer.subarray(offset,offset+length);node.usedBytes=length;return length}else if(node.usedBytes===0&&position===0){node.contents=new Uint8Array(buffer.subarray(offset,offset+length));node.usedBytes=length;return length}else if(position+length<=node.usedBytes){node.contents.set(buffer.subarray(offset,offset+length),position);return length}}MEMFS.expandFileStorage(node,position+length);if(node.contents.subarray&&buffer.subarray)node.contents.set(buffer.subarray(offset,offset+length),position);else{for(var i=0;i<length;i++){node.contents[position+i]=buffer[offset+i]}}node.usedBytes=Math.max(node.usedBytes,position+length);return length}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.usedBytes}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}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;if(!(flags&2)&&(contents.buffer===buffer||contents.buffer===buffer.buffer)){allocated=false;ptr=contents.byteOffset}else{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}}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}if(mmapFlags&2){return 0}var bytesWritten=MEMFS.stream_ops.write(stream,buffer,0,length,offset,false);return 0})}};var IDBFS={dbs:{},indexedDB:(function(){if(typeof indexedDB!=="undefined")return indexedDB;var ret=null;if(typeof window==="object")ret=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;assert(ret,"IDBFS used, but indexedDB not supported");return ret}),DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",mount:(function(mount){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){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)}if(!fileStore.indexNames.contains("timestamp")){fileStore.createIndex("timestamp","timestamp",{unique:false})}});req.onsuccess=(function(){db=req.result;IDBFS.dbs[name]=db;callback(null,db)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),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(e){callback(this.error);e.preventDefault()});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)){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.chmod(path,entry.mode);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(e){callback(this.error);e.preventDefault()})}),storeRemoteEntry:(function(store,path,entry,callback){var req=store.put(entry,path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),removeRemoteEntry:(function(store,path,callback){var req=store.delete(path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),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 completed=0;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err){if(!done.errored){done.errored=true;return callback(err)}return}if(++completed>=total){return callback(null)}}transaction.onerror=(function(e){done(this.error);e.preventDefault()});create.sort().forEach((function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,(function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)}))}else{IDBFS.loadLocalEntry(path,(function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)}))}}));remove.sort().reverse().forEach((function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}}))})};var NODEFS={isWindows:false,staticInit:(function(){NODEFS.isWindows=!!process.platform.match(/^win/)}),mount:(function(mount){assert(ENVIRONMENT_IS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)}),createNode:(function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node}),getMode:(function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&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){flags&=~32768;flags&=~524288;if(flags in NODEFS.flagsToPermissionStringMap){return NODEFS.flagsToPermissionStringMap[flags]}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.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){if(length===0)return 0;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){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){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:(function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i<parts.length-1;i++){var curr=parts.slice(0,i+1).join("/");if(!createdParents[curr]){createdParents[curr]=WORKERFS.createNode(parent,curr,WORKERFS.DIR_MODE,0)}parent=createdParents[curr]}return parent}function base(path){var parts=path.split("/");return parts[parts.length-1]}Array.prototype.forEach.call(mount.opts["files"]||[],(function(file){WORKERFS.createNode(ensureParent(file.name),base(file.name),WORKERFS.FILE_MODE,0,file,file.lastModifiedDate)}));(mount.opts["blobs"]||[]).forEach((function(obj){WORKERFS.createNode(ensureParent(obj["name"]),base(obj["name"]),WORKERFS.FILE_MODE,0,obj["data"])}));(mount.opts["packages"]||[]).forEach((function(pack){pack["metadata"].files.forEach((function(file){var name=file.filename.substr(1);WORKERFS.createNode(ensureParent(name),base(name),WORKERFS.FILE_MODE,0,pack["blob"].slice(file.start,file.end))}))}));return root}),createNode:(function(parent,name,mode,dev,contents,mtime){var node=FS.createNode(parent,name,mode);node.mode=mode;node.node_ops=WORKERFS.node_ops;node.stream_ops=WORKERFS.stream_ops;node.timestamp=(mtime||new Date).getTime();assert(WORKERFS.FILE_MODE!==WORKERFS.DIR_MODE);if(mode===WORKERFS.FILE_MODE){node.size=contents.size;node.contents=contents}else{node.size=4096;node.contents={}}if(parent){parent.contents[name]=node}return node}),node_ops:{getattr:(function(node){return{dev:1,ino:undefined,mode:node.mode,nlink:1,uid:0,gid:0,rdev:undefined,size:node.size,atime:new Date(node.timestamp),mtime:new Date(node.timestamp),ctime:new Date(node.timestamp),blksize:4096,blocks:Math.ceil(node.size/4096)}}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}}),lookup:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}),mknod:(function(parent,name,mode,dev){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rename:(function(oldNode,newDir,newName){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),unlink:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rmdir:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readdir:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),symlink:(function(parent,newName,oldPath){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readlink:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)})},stream_ops:{read:(function(stream,buffer,offset,length,position){if(position>=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size}),write:(function(stream,buffer,offset,length,position){throw new FS.ErrnoError(ERRNO_CODES.EIO)}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};STATICTOP+=16;STATICTOP+=16;STATICTOP+=16;var FS={root:null,mounts:[],devices:[null],streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i<parts.length;i++){var islast=i===parts.length-1;if(islast&&opts.parent){break}current=FS.lookupNode(current,parts[i]);current_path=PATH.join2(current_path,parts[i]);if(FS.isMountpoint(current)){if(!islast||islast&&opts.follow_mount){current=current.mounted.root}}if(!islast||opts.follow){var count=0;while(FS.isLink(current.mode)){var link=FS.readlink(current_path);current_path=PATH.resolve(PATH.dirname(current_path),link);var lookup=FS.lookupPath(current_path,{recurse_count:opts.recurse_count});current=lookup.node;if(count++>40){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,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return ERRNO_CODES.EACCES}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return ERRNO_CODES.EACCES}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return ERRNO_CODES.EACCES}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return ERRNO_CODES.EACCES;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return ERRNO_CODES.EEXIST}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return ERRNO_CODES.ENOTDIR}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return ERRNO_CODES.EBUSY}}else{if(FS.isDir(node.mode)){return ERRNO_CODES.EISDIR}}return 0}),mayOpen:(function(node,flags){if(!node){return ERRNO_CODES.ENOENT}if(FS.isLink(node.mode)){return ERRNO_CODES.ELOOP}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return ERRNO_CODES.EISDIR}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(ERRNO_CODES.EMFILE)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdev:(function(path,mode,dev){if(typeof dev==="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)}),symlink:(function(oldpath,newpath){if(!PATH.resolve(oldpath)){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}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);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)}if(!old_dir||!new_dir)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(ERRNO_CODES.EXDEV)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}relative=PATH.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var err=FS.mayDelete(old_dir,old_name,isdir);if(err){throw new FS.ErrnoError(err)}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(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)}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}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){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){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!link.node_ops.readlink){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return PATH.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))}),stat:(function(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}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()})}),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:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path==="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(ERRNO_CODES.EEXIST)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}if(!created){var err=FS.mayOpen(node,flags);if(err){throw new FS.ErrnoError(err)}}if(flags&512){FS.truncate(node,0)}flags&=~(128|512);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false},fd_start,fd_end);if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1;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){if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}}),llseek:(function(stream,offset,whence){if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position}),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){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){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)}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!stream||!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)}),munmap:(function(stream){return 0}),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=UTF8ArrayToString(buf,0)}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 buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,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");FS.mkdir("/home");FS.mkdir("/home/web_user")}),createDefaultDevices:(function(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:(function(){return 0}),write:(function(stream,buffer,offset,length,pos){return length})});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var random_device;if(typeof crypto!=="undefined"){var randomBuffer=new Uint8Array(1);random_device=(function(){crypto.getRandomValues(randomBuffer);return randomBuffer[0]})}else if(ENVIRONMENT_IS_NODE){random_device=(function(){return require("crypto").randomBytes(1)[0]})}else{random_device=(function(){return Math.random()*256|0})}FS.createDevice("/dev","random",random_device);FS.createDevice("/dev","urandom",random_device);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")}),createSpecialDirectories:(function(){FS.mkdir("/proc");FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:(function(){var node=FS.createNode("/proc/self","fd",16384|511,73);node.node_ops={lookup:(function(parent,name){var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:(function(){return stream.path})}};ret.parent=ret;return ret})};return node})},{},"/proc/self/fd")}),createStandardStreams:(function(){if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin","r");assert(stdin.fd===0,"invalid handle for stdin ("+stdin.fd+")");var stdout=FS.open("/dev/stdout","w");assert(stdout.fd===1,"invalid handle for stdout ("+stdout.fd+")");var stderr=FS.open("/dev/stderr","w");assert(stderr.fd===2,"invalid handle for stderr ("+stderr.fd+")")}),ensureErrnoError:(function(){if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.node=node;this.setErrno=(function(errno){this.errno=errno;for(var key in ERRNO_CODES){if(ERRNO_CODES[key]===errno){this.code=key;break}}});this.setErrno(errno);this.message=ERRNO_MESSAGES[errno]};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[ERRNO_CODES.ENOENT].forEach((function(code){FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack="<generic error, no stack>"}))}),staticInit:(function(){FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS,"IDBFS":IDBFS,"NODEFS":NODEFS,"WORKERFS":WORKERFS}}),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();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()}),quit:(function(){FS.init.initialized=false;var fflush=Module["_fflush"];if(fflush)fflush(0);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){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){}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}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);FS.registerDevice(dev,{open:(function(stream){stream.seekable=false}),close:(function(stream){if(output&&output.buffer&&output.buffer.length){output(10)}}),read:(function(stream,buffer,offset,length,pos){var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=input()}catch(e){throw new FS.ErrnoError(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"]){try{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){function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype.get=function LazyUint8Array_get(idx){if(idx>this.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i<size;i++){buffer[offset+i]=contents[position+i]}}else{for(var i=0;i<size;i++){buffer[offset+i]=contents.get(position+i)}}return size};node.stream_ops=stream_ops;return node}),createPreloadedFile:(function(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish){Browser.init();var fullname=name?PATH.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency("cp "+fullname);function processData(byteArray){function finish(byteArray){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency(dep)}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(dep)}));handled=true}}));if(!handled)finish(byteArray)}addRunDependency(dep);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;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})};var SYSCALLS={DEFAULT_POLLMASK:5,mappings:{},umask:511,calculateAt:(function(dirfd,path){if(path[0]!=="/"){var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=FS.getStream(dirfd);if(!dirstream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);dir=dirstream.path}path=PATH.join2(dir,path)}return path}),doStat:(function(func,path,buf){try{var stat=func(path)}catch(e){if(e&&e.node&&PATH.normalize(path)!==PATH.normalize(FS.getPath(e.node))){return-ERRNO_CODES.ENOTDIR}throw e}HEAP32[buf>>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;HEAP32[buf+36>>2]=stat.size;HEAP32[buf+40>>2]=4096;HEAP32[buf+44>>2]=stat.blocks;HEAP32[buf+48>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+52>>2]=0;HEAP32[buf+56>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ino;return 0}),doMsync:(function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)}),doMkdir:(function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0}),doMknod:(function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-ERRNO_CODES.EINVAL}FS.mknod(path,mode,dev);return 0}),doReadlink:(function(path,buf,bufsize){if(bufsize<=0)return-ERRNO_CODES.EINVAL;var ret=FS.readlink(path);ret=ret.slice(0,Math.max(0,bufsize));writeStringToMemory(ret,buf,true);return ret.length}),doAccess:(function(path,amode){if(amode&~7){return-ERRNO_CODES.EINVAL}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-ERRNO_CODES.EACCES}return 0}),doDup:(function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd}),doReadv:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr<len)break}return ret}),doWritev:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret}),varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),getStreamFromFD:(function(){var stream=FS.getStream(SYSCALLS.get());if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return stream}),getSocketFromFD:(function(){var socket=SOCKFS.getSocket(SYSCALLS.get());if(!socket)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return socket}),getSocketAddress:(function(allowNull){var addrp=SYSCALLS.get(),addrlen=SYSCALLS.get();if(allowNull&&addrp===0)return null;var info=__read_sockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___lock(){}function ___unlock(){}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:return totalMemory/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 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 79:return 0;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:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}function _sbrk(bytes){var self=_sbrk;if(!self.called){DYNAMICTOP=alignMemoryPage(DYNAMICTOP);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){var success=self.alloc(bytes);if(!success)return-1>>>0}return ret}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;Module["_memmove"]=_memmove;function _emscripten_set_main_loop_timing(mode,value){Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){setTimeout(Browser.mainLoop.runner,value)};Browser.mainLoop.method="timeout"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method="rAF"}else if(mode==2){if(!window["setImmediate"]){var setImmediates=[];var emscriptenMainLoopMessageId="__emcc";function Browser_setImmediate_messageHandler(event){if(event.source===window&&event.data===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}}window.addEventListener("message",Browser_setImmediate_messageHandler,true);window["setImmediate"]=function Browser_emulated_setImmediate(func){setImmediates.push(func);window.postMessage(emscriptenMainLoopMessageId,"*")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){window["setImmediate"](Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop,arg,noSetTiming){Module["noExitRuntime"]=true;assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");Browser.mainLoop.func=func;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;Browser.mainLoop.runner=function Browser_mainLoop_runner(){if(ABORT)return;if(Browser.mainLoop.queue.length>0){var start=Date.now();var blocker=Browser.mainLoop.queue.shift();blocker.func(blocker.arg);if(Browser.mainLoop.remainingBlockers){var remaining=Browser.mainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){Browser.mainLoop.remainingBlockers=next}else{next=next+.5;Browser.mainLoop.remainingBlockers=(8*remaining+next)/9}}console.log('main loop blocker "'+blocker.name+'" took '+(Date.now()-start)+" ms");Browser.mainLoop.updateStatus();if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;setTimeout(Browser.mainLoop.runner,0);return}if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0;if(Browser.mainLoop.timingMode==1&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}if(Browser.mainLoop.method==="timeout"&&Module.ctx){Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!");Browser.mainLoop.method=""}Browser.mainLoop.runIter((function(){if(typeof arg!=="undefined"){Runtime.dynCall("vi",func,[arg])}else{Runtime.dynCall("v",func)}}));if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;if(typeof SDL==="object"&&SDL.audio&&SDL.audio.queueNewAudioData)SDL.audio.queueNewAudioData();Browser.mainLoop.scheduler()};if(!noSetTiming){if(fps&&fps>0)_emscripten_set_main_loop_timing(0,1e3/fps);else _emscripten_set_main_loop_timing(1,1);Browser.mainLoop.scheduler()}if(simulateInfiniteLoop){throw"SimulateInfiniteLoop"}}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:(function(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++}),resume:(function(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;_emscripten_set_main_loop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()}),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}}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"]=[];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}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){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);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;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);var audio=new Audio;audio.addEventListener("canplaythrough",(function(){finish(audio)}),false);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&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src="data:audio/x-"+name.substr(-3)+";base64,"+encode64(byteArray);finish(audio)};audio.src=url;Browser.safeSetTimeout((function(){finish(audio)}),1e4)}else{return fail()}};Module["preloadPlugins"].push(audioPlugin);var canvas=Module["canvas"];function pointerLockChange(){Browser.pointerLock=document["pointerLockElement"]===canvas||document["mozPointerLockElement"]===canvas||document["webkitPointerLockElement"]===canvas||document["msPointerLockElement"]===canvas}if(canvas){canvas.requestPointerLock=canvas["requestPointerLock"]||canvas["mozRequestPointerLock"]||canvas["webkitRequestPointerLock"]||canvas["msRequestPointerLock"]||(function(){});canvas.exitPointerLock=document["exitPointerLock"]||document["mozExitPointerLock"]||document["webkitExitPointerLock"]||document["msExitPointerLock"]||(function(){});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&&canvas==Module.canvas)return Module.ctx;var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}canvas.style.backgroundColor="black"}else{ctx=canvas.getContext("2d")}if(!ctx)return null;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)GL.makeContextCurrent(contextHandle);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,vrDevice){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;Browser.vrDevice=vrDevice;if(typeof Browser.lockPointer==="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas==="undefined")Browser.resizeCanvas=false;if(typeof Browser.vrDevice==="undefined")Browser.vrDevice=null;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{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)}var canvasContainer=document.createElement("div");canvas.parentNode.insertBefore(canvasContainer,canvas);canvasContainer.appendChild(canvas);canvasContainer.requestFullScreen=canvasContainer["requestFullScreen"]||canvasContainer["mozRequestFullScreen"]||canvasContainer["msRequestFullscreen"]||(canvasContainer["webkitRequestFullScreen"]?(function(){canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"])}):null);if(vrDevice){canvasContainer.requestFullScreen({vrDisplay:vrDevice})}else{canvasContainer.requestFullScreen()}}),nextRAF:0,fakeRequestAnimationFrame:(function(func){var now=Date.now();if(Browser.nextRAF===0){Browser.nextRAF=now+1e3/60}else{while(now+2>=Browser.nextRAF){Browser.nextRAF+=1e3/60}}var delay=Math.max(Browser.nextRAF-now,0);setTimeout(func,delay)}),requestAnimationFrame:function requestAnimationFrame(func){if(typeof window==="undefined"){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)})}),allowAsyncCallbacks:true,queuedAsyncCallbacks:[],pauseAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=false}),resumeAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=true;if(Browser.queuedAsyncCallbacks.length>0){var callbacks=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[];callbacks.forEach((function(func){func()}))}}),safeRequestAnimationFrame:(function(func){return Browser.requestAnimationFrame((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}))}),safeSetTimeout:(function(func,timeout){Module["noExitRuntime"]=true;return setTimeout((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}),timeout)}),safeSetInterval:(function(func,timeout){Module["noExitRuntime"]=true;return setInterval((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){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 delta}),mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:(function(event){if(Browser.pointerLock){if(event.type!="mousemove"&&"mozMovementX"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}if(typeof SDL!="undefined"){Browser.mouseX=SDL.mouseX+Browser.mouseMovementX;Browser.mouseY=SDL.mouseY+Browser.mouseMovementY}else{Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}}else{var rect=Module["canvas"].getBoundingClientRect();var cw=Module["canvas"].width;var ch=Module["canvas"].height;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}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"){var last=Browser.touches[touch.identifier];if(!last)last=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}var x=event.pageX-(scrollX+rect.left);var y=event.pageY-(scrollY+rect.top);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}}),asyncLoad:(function(url,onload,onerror,noRunDep){Module["readAsync"](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(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags|8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),setWindowedCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags&~8388608;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")}}}}),wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle:(function(){var handle=Browser.nextWgetRequestHandle;Browser.nextWgetRequestHandle++;return handle})};function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}function _pthread_self(){return 0}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;assert(offset_high===0);FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21506:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((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;Module["FS_unlink"]=FS.unlink;__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}Module["requestFullScreen"]=function Module_requestFullScreen(lockPointer,resizeCanvas,vrDevice){Browser.requestFullScreen(lockPointer,resizeCanvas,vrDevice)};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()};Module["createContext"]=function Module_createContext(canvas,useWebGL,setInModule,webGLContextAttributes){return Browser.createContext(canvas,useWebGL,setInModule,webGLContextAttributes)};STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);staticSealed=true;STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX);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);function invoke_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){try{return Module["dynCall_iiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}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_viiiii(index,a1,a2,a3,a4,a5){try{Module["dynCall_viiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){try{return Module["dynCall_iiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9)}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_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_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)}}Module.asmGlobalArg={"Math":Math,"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Uint32Array":Uint32Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,"Infinity":Infinity};Module.asmLibraryArg={"abort":abort,"assert":assert,"invoke_iiiiiiii":invoke_iiiiiiii,"invoke_iiii":invoke_iiii,"invoke_viiiii":invoke_viiiii,"invoke_iiiiiiiiii":invoke_iiiiiiiiii,"invoke_vii":invoke_vii,"invoke_iiiiiii":invoke_iiiiiii,"invoke_ii":invoke_ii,"invoke_viii":invoke_viii,"invoke_vi":invoke_vi,"invoke_iiiii":invoke_iiiii,"invoke_viiiiii":invoke_viiiiii,"invoke_iii":invoke_iii,"invoke_iiiiii":invoke_iiiiii,"invoke_viiii":invoke_viiii,"_pthread_cleanup_pop":_pthread_cleanup_pop,"___syscall221":___syscall221,"_longjmp":_longjmp,"___lock":___lock,"_time":_time,"_emscripten_set_main_loop":_emscripten_set_main_loop,"_pthread_self":_pthread_self,"_abort":_abort,"_emscripten_set_main_loop_timing":_emscripten_set_main_loop_timing,"___syscall6":___syscall6,"_sbrk":_sbrk,"___syscall5":___syscall5,"_pthread_cleanup_push":_pthread_cleanup_push,"_emscripten_memcpy_big":_emscripten_memcpy_big,"___syscall54":___syscall54,"___unlock":___unlock,"___syscall140":___syscall140,"_sysconf":_sysconf,"___syscall145":___syscall145,"___syscall146":___syscall146,"___setErrNo":___setErrNo,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"cttz_i8":cttz_i8};// EMSCRIPTEN_START_ASM
var asm=(function(global,env,buffer) {
"use asm";var a=new global.Int8Array(buffer);var b=new global.Int16Array(buffer);var c=new global.Int32Array(buffer);var
d=new global.Uint8Array(buffer);var e=new global.Uint16Array(buffer);var f=new global.Uint32Array(buffer);var g=new global.Float32Array
(buffer);var h=new global.Float64Array(buffer);var i=env.STACKTOP|0;var j=env.STACK_MAX|0;var k=env.tempDoublePtr|0;var l=env.ABORT
|0;var m=env.cttz_i8|0;var n=0;var o=0;var p=0;var q=0;var r=global.NaN,s=global.Infinity;var t=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,
B=0.0;var C=0;var D=0;var E=0;var F=0;var G=0;var H=0;var I=0;var J=0;var K=0;var L=0;var M=global.Math.floor;var N=global.Math.
abs;var O=global.Math.sqrt;var P=global.Math.pow;var Q=global.Math.cos;var R=global.Math.sin;var S=global.Math.tan;var T=global.
Math.acos;var U=global.Math.asin;var V=global.Math.atan;var W=global.Math.atan2;var X=global.Math.exp;var Y=global.Math.log;var
Z=global.Math.ceil;var _=global.Math.imul;var $=global.Math.min;var aa=global.Math.clz32;var ba=env.abort;var ca=env.assert;var
da=env.invoke_iiiiiiii;var ea=env.invoke_iiii;var fa=env.invoke_viiiii;var ga=env.invoke_iiiiiiiiii;var ha=env.invoke_vii;var ia
=env.invoke_iiiiiii;var ja=env.invoke_ii;var ka=env.invoke_viii;var la=env.invoke_vi;var ma=env.invoke_iiiii;var na=env.invoke_viiiiii
;var oa=env.invoke_iii;var pa=env.invoke_iiiiii;var qa=env.invoke_viiii;var ra=env._pthread_cleanup_pop;var sa=env.___syscall221
;var ta=env._longjmp;var ua=env.___lock;var va=env._time;var wa=env._emscripten_set_main_loop;var xa=env._pthread_self;var ya=env
._abort;var za=env._emscripten_set_main_loop_timing;var Aa=env.___syscall6;var Ba=env._sbrk;var Ca=env.___syscall5;var Da=env._pthread_cleanup_push
;var Ea=env._emscripten_memcpy_big;var Fa=env.___syscall54;var Ga=env.___unlock;var Ha=env.___syscall140;var Ia=env._sysconf;var
Ja=env.___syscall145;var Ka=env.___syscall146;var La=env.___setErrNo;var Ma=0.0;
// EMSCRIPTEN_START_FUNCS
function $a(a){a=a|0;var b=0;b=i;i=i+a|0;i=i+15&-16;return b|0}function ab(){return i|0}function bb(a){a=a|0;i=a}function cb
(a,b){a=a|0;b=b|0;i=a;j=b}function db(a,b){a=a|0;b=b|0;if(!n){n=a;o=b}}function eb(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]}function
fb(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 gb(a){a=a|0;C=a}function hb(){return C|0}function
ib(a){a=a|0;c[18364]=(a|0)!=0&1;return 0}function jb(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+32|0;h=j+8|0
;f=j;e=c[18367]|0;if((e|0)!=0?(As(e,b)|0)==0:0){e=73468;f=2;g=4}else g=3;do if((g|0)==3){e=c[18368]|0;if(e|0?(As(e,b)|0)==0:0){e
=73472;f=3;g=4;break}e=c[18369]|0;if(e|0?(As(e,b)|0)==0:0){e=73476;f=4;g=4;break}e=c[18370]|0;if(e|0?(As(e,b)|0)==0:0){e=73480;f
=5;g=4;break}e=c[18371]|0;if(e|0?(As(e,b)|0)==0:0){e=73484;f=6;g=4;break}e=c[18372]|0;if(e|0?(As(e,b)|0)==0:0){e=73488;f=7;g=4;break
}e=c[18373]|0;if(e|0?(As(e,b)|0)==0:0){e=73492;f=8;g=4;break}e=c[18374]|0;if(e|0?(As(e,b)|0)==0:0){e=73496;f=9;g=4;break}if(c[18367
]|0)if(c[18368]|0)if(c[18369]|0)if(c[18370]|0)if(c[18371]|0)if(c[18372]|0)if(c[18373]|0)if(!(c[18374]|0))f=9;else{c[f>>
;2]=a;c[f+4>>2]=b;ss(10198,f)|0;h=-1;i=j;return h|0}else f=8;else f=7;else f=6;else f=5;else f=4;else f=3;else f=2}while
(0);if((g|0)==4){g=73500+(f<<2)|0;vd(c[g>>2]|0)|0;Gs(c[e>>2]|0);c[e>>2]=0;c[g>>
;2]=0}e=Ec(c[18385]|0,a,0,73500+(f<<2)|0)|0;if(!e){c[73460+(f<<2)>>2]=ws(b)|0;c[8+(f<<2)
x3e;>2]=d;h=0;i=j;return h|0}else{c[h>>2]=a;c[h+4>>2]=b;c[h+8>>2]=e;ss(10233,h)|0;h=e;i=j;return
h|0}return 0}function kb(a){a=a|0;var b=0,d=0;b=c[18365]|0;if(b)if(As(a,b)|0){b=c[18366]|0;if(((b|0)!=0?(As(a,b)|0)!=0:0)?(d=c[
18367]|0,(d|0)!=0):0)if(As(a,d)|0){b=c[18368]|0;if(b)if(As(a,b)|0){b=c[18369]|0;if(b)if(As(a,b)|0){b=c[18370]|0;if(b)if(As(a,b)|
0){b=c[18371]|0;if(b)if(As(a,b)|0){b=c[18372]|0;if(b)if(As(a,b)|0){b=c[18373]|0;if(b)if(As(a,b)|0){b=c[18374]|0;if(!b)b=1;else{a
=(As(a,b)|0)==0;return (a?9:1)|0}}else b=8;else b=1}else b=7;else b=1}else b=6;else b=1}else b=5;else b=1}else b=4;else b=1}else
b=3;else b=1}else b=2;else b=1}else b=0;else b=1;return b|0}function lb(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;p=i;i=i+16|0;k=p+8|0;j=p;if(!(b>>>0<=9?(c[73460+(b<<2)>>2]|0)!=0:0))b=1;h=
c[73500+(b<<2)>>2]|0;b=c[8+(b<<2)>>2]|0;f=(_(f<<6,b)|0)/100|0;b=(_(g<<
;6,b)|0)/100|0;if((e+-65|0)>>>0<26&(h|0)==(c[18376]|0))b=(b*108|0)/100|0;b=Hd(h,f,b,72,0)|0;if(b|0){c[j
>>2]=b;ss(10260,j)|0;o=0;i=p;return o|0}c[18386]=c[h+84>>2];if((h|0)==(c[18375]|0)|(h|0)==(c[18376]|0))if((e
|0)==126)e=732;else e=(e|0)==94?710:e;if(!(c[18364]|0))e=Cc(h,e,4)|0;else e=Cc(h,e,131076)|0;if(e|0){c[k>>2]=e;ss(10285
,k)|0;o=0;i=p;return o|0}b=c[18386]|0;if(!(c[18364]|0)){o=c[b+88>>2]|0;i=p;return o|0}e=c[18387]|0;if(e|0)Gs(e);m=b+80
|0;f=c[m>>2]|0;n=b+76|0;g=c[n>>2]|0;e=Fs(_(g,f)|0)|0;c[18387]=e;if(!e){o=0;i=p;return o|0}if((g|0)<=0){
o=e;i=p;return o|0}o=b+84|0;l=b+88|0;b=e;k=0;do{j=_(c[o>>2]|0,k)|0;j=(c[l>>2]|0)+j|0;if((f|0)>0){h=0;while
(1){g=b+1|0;a[b>>0]=(((d[j+(h>>3)>>0]|0)&1<<(h&7^7)|0)!=0)<<31>
x3e;31;h=h+1|0;f=c[m>>2]|0;if((h|0)>=(f|0)){b=g;break}else b=g}g=c[n>>2]|0}k=k+1|0}while((k|0)<(g|
0));i=p;return e|0}function mb(){return c[(c[18386]|0)+100>>2]|0}function nb(){return c[(c[18386]|0)+104>>2]|
0}function ob(){return c[(c[18386]|0)+80>>2]|0}function pb(){return c[(c[18386]|0)+76>>2]|0}function qb(){return
c[(c[18386]|0)+84>>2]|0}function rb(){return c[(c[18386]|0)+64>>2]>>6|0}function sb(){var a=0,b=0
,d=0,e=0,f=0;f=i;i=i+32|0;e=f+16|0;d=f+8|0;b=f;a=ub(73540)|0;if(a|0){c[b>>2]=a;ss(10306,b)|0;e=1;i=f;return e|0}a=Ec(c
[18385]|0,10322,0,73500)|0;if(a|0){c[d>>2]=a;ss(10331,d)|0;e=1;i=f;return e|0}a=Ec(c[18385]|0,10358,0,73504)|0;if(!a){
c[18365]=ws(10394)|0;c[18366]=ws(10400)|0;e=0;i=f;return e|0}else{c[e>>2]=a;ss(10367,e)|0;e=1;i=f;return e|0}return 0}
function tb(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;c[d>>2]=48;while(1){if(!(
c[c[d>>2]>>2]|0))break;c[e>>2]=Nd(c[b>>2]|0,c[c[d>>2]>>2]|0)|0;c[d
x3e;>2]=(c[d>>2]|0)+4}i=f;return}function ub(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;d=g+8|0;e=g+4
|0;f=g;c[d>>2]=a;c[f>>2]=tr()|0;if(!(c[f>>2]|0)){c[b>>2]=7;f=c[b>>2]|0;i=g;return
f|0}c[e>>2]=Wd(c[f>>2]|0,c[d>>2]|0)|0;if(c[e>>2]|0)xr(c[f>>2]|0);else tb(c[c[
d>>2]>>2]|0);c[b>>2]=c[e>>2];f=c[b>>2]|0;i=g;return f|0}function vb(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;
c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(!(c[g>>2]|0)){c[f>>2]=35;
e=c[f>>2]|0;i=n;return e|0}if((c[h>>2]|0)>>>0>=(c[(c[g>>2]|0)+16>>2]|
0)>>>0){c[f>>2]=16;e=c[f>>2]|0;i=n;return e|0}c[m>>2]=c[(c[(c[(c[g>>2]|0)+
96>>2]|0)+20>>2]|0)+92>>2];do if(c[m>>2]|0){if((c[j>>2]&3|0)==0?(c[j>
;>2]>>16&15|0)!=1:0)break;c[l>>2]=Za[c[m>>2]&31](c[g>>2]|0,c[h>>
;2]|0,1,c[j>>2]|0,c[k>>2]|0)|0;if(!(c[l>>2]|0)){c[f>>2]=wb(c[g>>2]|0,c[k>
x3e;2]|0,1,c[j>>2]|0)|0;e=c[f>>2]|0;i=n;return e|0}if((c[l>>2]|0)!=7){c[f>>2]=c[l>
x3e;2];e=c[f>>2]|0;i=n;return e|0}}while(0);c[f>>2]=Bb(c[g>>2]|0,c[h>>2]|0,1,c[j>
x3e;2]|0,c[k>>2]|0)|0;e=c[f>>2]|0;i=n;return e|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,m=0,n=0;n=i;i=i+32|0;g=n+24|0;f=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;c[f>>2]=a;c[h>>2]=
b;c[j>>2]=d;c[k>>2]=e;if(c[k>>2]&1|0){c[g>>2]=0;m=c[g>>2]|0;i=n;return m|
0}if(!(c[(c[f>>2]|0)+88>>2]|0)){c[g>>2]=36;m=c[g>>2]|0;i=n;return m|0}f=(c[(c[f>>
;2]|0)+88>>2]|0)+12|0;if(c[k>>2]&16|0)c[m>>2]=c[f+8>>2];else c[m>>2]=c[f+
4>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[j>>2]|0)>>
x3e;0)break;k=xb(c[(c[h>>2]|0)+(c[l>>2]<<2)>>2]|0,c[m>>2]|0,64)|0;c[(c[h>
x3e;2]|0)+(c[l>>2]<<2)>>2]=k;c[l>>2]=(c[l>>2]|0)+1}c[g>>2]=0;m=c[g
x3e;>2]|0;i=n;return m|0}function xb(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;m=i;i=i+48|0;e=m+32|0;f=m
+28|0;g=m+24|0;h=m+20|0;j=m+16|0;k=m+8|0;l=m;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(c[f>>2]|0?(
c[g>>2]|0)!=(c[h>>2]|0):0){c[j>>2]=c[f>>2];d=c[f>>2]|0;c[f>>2]=(c[f
x3e;>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[g>>2];d=c[g>>2]|0;c[g>>2]=(c[
g>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[h>>2];d=c[h>>2]|0;c[h>>2]=(
c[h>>2]|0)<0?0-d|0:d;do if(!((c[f>>2]|0)<=46340&(c[g>>2]|0)<=46340&(c[h
x3e;>2]|0)<=176095&(c[h>>2]|0)>0))if((c[h>>2]|0)>0){yb(c[f>>2]|0,c[g>
;>2]|0,k);c[l+4>>2]=0;c[l>>2]=c[h>>2]>>1;zb(k,l,k);c[f>>2]=Ab(c[k+4>
x3e;2]|0,c[k>>2]|0,c[h>>2]|0)|0;break}else{c[f>>2]=2147483647;break}else{l=_(c[f>>2]|0,c
[g>>2]|0)|0;c[f>>2]=(l+(c[h>>2]>>1)|0)/(c[h>>2]|0)|0}while(0);l=c[f>>
;2]|0;c[e>>2]=(c[j>>2]|0)<0?0-l|0:l;l=c[e>>2]|0;i=m;return l|0}c[e>>2]=c[f>>
;2];l=c[e>>2]|0;i=m;return l|0}function yb(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;e=i;i=i+48|0;q=e+40|0;p=e+36|0;f=e+32|0;o=e+28|0;m=e+24|0;n=e+20|0;l=e+16|0;h=e+12|0;g=e+8|0;j=e+4|0;k=e;c[q>>2]=a;c
[p>>2]=b;c[f>>2]=d;c[o>>2]=c[q>>2]&65535;c[m>>2]=(c[q>>2]|0)>
;>>16;c[n>>2]=c[p>>2]&65535;c[l>>2]=(c[p>>2]|0)>>>16;c[h
x3e;>2]=_(c[o>>2]|0,c[n>>2]|0)|0;c[j>>2]=_(c[o>>2]|0,c[l>>2]|0)|0;c[k>
;>2]=_(c[n>>2]|0,c[m>>2]|0)|0;c[g>>2]=_(c[m>>2]|0,c[l>>2]|0)|0;c[j>
x3e;2]=(c[j>>2]|0)+(c[k>>2]|0);c[g>>2]=(c[g>>2]|0)+(((c[j>>2]|0)>>
x3e;0<(c[k>>2]|0)>>>0&1)<<16);c[g>>2]=(c[g>>2]|0)+((c[j>
x3e;2]|0)>>>16);c[j>>2]=c[j>>2]<<16;c[h>>2]=(c[h>>2]|0)+(c[j>
;>2]|0);c[g>>2]=(c[g>>2]|0)+((c[h>>2]|0)>>>0<(c[j>>2]|0)>
x3e;>0&1);c[c[f>>2]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2
];i=e;return}function zb(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+12|0;f=e+8|0;h=e+4|0;g=e
;c[j>>2]=a;c[k>>2]=b;c[f>>2]=d;c[h>>2]=(c[c[j>>2]>>2]|0)+(c[c[k>
;>2]>>2]|0);c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[k>>2]|0)+4>>2
]|0)+((c[h>>2]|0)>>>0<(c[c[j>>2]>>2]|0)>>>0&1);c[c[f>
x3e;2]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2];i=e;return}function Ab(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+32|0;e=l+24|0;m=l+20|0;f=l+16|0;g=l+12|0;k=l+8|0;j=l+4|0;h=l;c[m>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=0;c[k>>2]=c[m>>2];if((c[k>>2
]|0)>>>0>=(c[g>>2]|0)>>>0){c[e>>2]=2147483647;m=c[e>>2]|0;i=l;return
m|0}c[h>>2]=32;do{c[k>>2]=c[k>>2]<<1;c[j>>2]=c[j>>2]<<1;c
[k>>2]=c[k>>2]|(c[f>>2]|0)>>>31;if((c[k>>2]|0)>>>0>=(
c[g>>2]|0)>>>0){c[k>>2]=(c[k>>2]|0)-(c[g>>2]|0);c[j>>2]=c[j>
;>2]|1}c[f>>2]=c[f>>2]<<1;m=(c[h>>2]|0)+-1|0;c[h>>2]=m}while((m|0)!=0);c[
e>>2]=c[j>>2];m=c[e>>2]|0;i=l;return m|0}function Bb(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;t=i;i=i+48|0;l=t+40|0;m=t+36|0;n=t+32|0;o=t+28|0;p=t+24|0;q=t+20|0;h=t+16|0;
j=t+12|0;g=t+8|0;s=t+4|0;r=t;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f
;c[r>>2]=0;if(!(c[m>>2]|0)){c[l>>2]=35;s=c[l>>2]|0;i=t;return s|0}c[j>>2]=c[(c
[m>>2]|0)+16>>2];c[g>>2]=(c[n>>2]|0)+(c[o>>2]|0);if(((c[n>>2]|0)>
;>>0<(c[j>>2]|0)>>>0?(c[g>>2]|0)>>>0>=(c[n>>2]|0
)>>>0:0)?(c[g>>2]|0)>>>0<=(c[j>>2]|0)>>>0:0){if(!(c[o>
;>2]|0)){c[l>>2]=0;s=c[l>>2]|0;i=t;return s|0}c[h>>2]=c[(c[(c[(c[m>>2]|0)+96>
x3e;2]|0)+20>>2]|0)+92>>2];do if(c[h>>2]|0){if((c[p>>2]&3|0)==0?(c[p>>2]
x3e;>16&15|0)!=1:0){k=15;break}c[r>>2]=Za[c[h>>2]&31](c[m>>2]|0,c[n>>2]|0
,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;if(c[r>>2]|0)if((c[r>>2]|0)!=7){c[l>>
;2]=c[r>>2];s=c[l>>2]|0;i=t;return s|0}else k=15}else k=15;while(0);if((k|0)==15){c[r>>2]=0;if(c[p
>>2]&536870912|0){c[l>>2]=7;s=c[l>>2]|0;i=t;return s|0}c[p>>2]=c[p>>2]|256
;c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c
[r>>2]=Cb(c[m>>2]|0,(c[n>>2]|0)+(c[s>>2]|0)|0,c[p>>2]|0)|0;if(c[r>>2
]|0)break;d=(c[(c[m>>2]|0)+84>>2]|0)+64|0;if(c[p>>2]&16|0)d=c[d+4>>2]|0;else d=c[d
x3e;>2]|0;c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]=d;c[s>>2]=(c[s>>2]|0)+
1}if(c[r>>2]|0){c[l>>2]=c[r>>2];s=c[l>>2]|0;i=t;return s|0}}c[l>>2]=wb(c[m>
;>2]|0,c[q>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;s=c[l>>2]|0;i=t;return s|0}c[l>>2
]=16;s=c[l>>2]|0;i=t;return s|0}function Cb(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;A=i;i=i+80|0;r=A+64|0;s=A+60|0;g=A+56|0;t=A+52|0;u=A+48|0;j=A+44|0;z=A+40|0;n=A+36|0;h=A+68|0
;k=A+32|0;o=A+28|0;l=A+24|0;m=A+20|0;p=A+16|0;w=A+12|0;v=A+8|0;y=A+4|0;x=A;c[s>>2]=b;c[g>>2]=e;c[t>>
;2]=f;a[h>>0]=0;if((c[s>>2]|0?c[(c[s>>2]|0)+88>>2]|0:0)?c[(c[s>>2]|0)+84>
x3e;2]|0:0){c[z>>2]=c[(c[s>>2]|0)+84>>2];Db(c[z>>2]|0);c[j>>2]=c[(c[s>>
;2]|0)+96>>2];c[n>>2]=c[(c[j>>2]|0)+4>>2];c[k>>2]=c[(c[n>>2]|0)+168
x3e;>2];if(c[t>>2]&1024|0)c[t>>2]=c[t>>2]|2049;if(c[t>>2]&1|0){c[t>
x3e;2]=c[t>>2]|10;c[t>>2]=c[t>>2]&-5}do if(((((c[k>>2]|0?(c[t>>2]&2|
0)==0:0)?(c[t>>2]&32768|0)==0:0)?c[c[c[j>>2]>>2]>>2]&256|0:0)?(c[c[c[j>
x3e;2]>>2]>>2]&512|0)==0:0)?(c[(c[s>>2]|0)+8>>2]&8192|0)==0:0){if(!((c[(c[(c[s
>>2]|0)+128>>2]|0)+4+8>>2]|0)==0?(c[(c[(c[s>>2]|0)+128>>2]|0)+4>>2]|
0)!=0:0)){if(c[(c[(c[s>>2]|0)+128>>2]|0)+4>>2]|0)break;if(!(c[(c[(c[s>>2]|0)+128>
x3e;2]|0)+4+8>>2]|0))break}if((c[t>>2]&32|0)==0?c[c[c[j>>2]>>2]>>2]&
1024|0:0){c[o>>2]=c[t>>2]>>16&15;if((c[o>>2]|0)!=1?(d[(c[(c[s>>2]|0)+128
x3e;>2]|0)+56>>0]|0)==0:0)break;a[h>>0]=1;break}a[h>>0]=1}while(0);do if(!(a[h>>0]|
0)){c[u>>2]=Wa[c[(c[(c[j>>2]|0)+20>>2]|0)+80>>2]&31](c[z>>2]|0,c[(c[s>
;>2]|0)+88>>2]|0,c[g>>2]|0,c[t>>2]|0)|0;if(!(c[u>>2]|0))if((c[(c[z>>2]|0)+
72>>2]|0)==1869968492){c[u>>2]=Gb((c[z>>2]|0)+108|0)|0;if(!(c[u>>2]|0))if(c[t>>
;2]&2|0)q=36;else{Hb(c[z>>2]|0,c[t>>2]&16);q=36}}else q=36}else{if(((c[(c[s>>2]|0)+8>
;>2]&2|0?(c[t>>2]&8|0)==0:0)?(c[u>>2]=Wa[c[(c[(c[j>>2]|0)+20>>2]|0)+80>
;>2]&31](c[z>>2]|0,c[(c[s>>2]|0)+88>>2]|0,c[g>>2]|0,c[t>>2]|16384)|0
,(c[u>>2]|0)==0):0)?(c[(c[z>>2]|0)+72>>2]|0)==1651078259:0){q=36;break}c[m>>2]=c[(c[s>
;>2]|0)+128>>2];c[p>>2]=c[(c[m>>2]|0)+28>>2];c[(c[m>>2]|0)+28>>
2]=0;c[l>>2]=c[(c[c[k>>2]>>2]|0)+20>>2];c[u>>2]=Za[c[(c[l>>2]|0)+12
x3e;>2]&31](c[k>>2]|0,c[z>>2]|0,c[(c[s>>2]|0)+88>>2]|0,c[g>>2]|0,c[t
>>2]|0)|0;c[(c[m>>2]|0)+28>>2]=c[p>>2];q=36}while(0);if((q|0)==36){g=c[z>>2]|0
;if(c[t>>2]&16|0){c[g+64>>2]=0;c[(c[z>>2]|0)+64+4>>2]=c[(c[z>>2]|0)+24+28
>>2]}else{c[(c[z>>2]|0)+64>>2]=c[g+24+16>>2];c[(c[z>>2]|0)+64+4>>2]=
0}if((c[t>>2]&8192|0)==0?c[(c[s>>2]|0)+8>>2]&1|0:0){c[w>>2]=(c[(c[s>>
;2]|0)+88>>2]|0)+12;q=xb(c[(c[z>>2]|0)+56>>2]|0,c[(c[w>>2]|0)+4>>2]|0,64)|0;c[(
c[z>>2]|0)+56>>2]=q;w=xb(c[(c[z>>2]|0)+60>>2]|0,c[(c[w>>2]|0)+8>>2]|
0,64)|0;c[(c[z>>2]|0)+60>>2]=w}if((c[t>>2]&2048|0)==0?(c[v>>2]=c[(c[s>>2]|
0)+128>>2],c[(c[v>>2]|0)+28>>2]|0):0){c[y>>2]=Ib(c[z>>2]|0)|0;if(!(c[y>
x3e;2]|0)){if((c[(c[z>>2]|0)+72>>2]|0)==1869968492){if((c[v>>2]|0)+4|0)Kb((c[z>>2]|0)+108
|0,(c[v>>2]|0)+4|0);if((c[v>>2]|0)+20|0)Nb((c[z>>2]|0)+108|0,c[(c[v>>2]|0)+20>>
;2]|0,c[(c[v>>2]|0)+20+4>>2]|0)}}else c[u>>2]=Wa[c[(c[(c[y>>2]|0)+20>>2]|0)+44
>>2]&31](c[y>>2]|0,c[z>>2]|0,(c[v>>2]|0)+4|0,(c[v>>2]|0)+20|0)|0;Lb((c[z
x3e;>2]|0)+64|0,(c[v>>2]|0)+4|0)}if((((c[u>>2]|0)==0?(c[(c[z>>2]|0)+72>>2]|0)!=1651078259
:0)?(c[(c[z>>2]|0)+72>>2]|0)!=1668246896:0)?c[t>>2]&4|0:0){c[x>>2]=c[t>>2
]>>16&15;if((c[x>>2]|0)==0?c[t>>2]&4096|0:0)c[x>>2]=2;c[u>>2]=Ob(c[z
>>2]|0,c[x>>2]|0)|0}}c[r>>2]=c[u>>2];z=c[r>>2]|0;i=A;return z|0}c[r>>
;2]=35;z=c[r>>2]|0;i=A;return z|0}function Db(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;Eb(c[e>
x3e;2]|0);b=(c[e>>2]|0)+24|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[
b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;c[b+28>>2]=0;b=(c[e>>2]|0)+108|0;c[b>
;>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[(c[e>>2]|0)+76
+4>>2]=0;c[(c[e>>2]|0)+76>>2]=0;c[(c[e>>2]|0)+76+8>>2]=0;a[(c[e>>2]|
0)+76+18>>0]=0;c[(c[e>>2]|0)+100>>2]=0;c[(c[e>>2]|0)+104>>2]=0;c[(c[e>>
;2]|0)+128>>2]=0;c[(c[e>>2]|0)+132>>2]=0;c[(c[e>>2]|0)+136>>2]=0;c[(c[e>
x3e;2]|0)+140>>2]=0;c[(c[e>>2]|0)+152>>2]=0;c[(c[e>>2]|0)+72>>2]=0;c[(c[e>
;>2]|0)+56>>2]=0;c[(c[e>>2]|0)+60>>2]=0;c[(c[e>>2]|0)+144>>2]=0;c[(c[e>
;>2]|0)+148>>2]=0;i=d;return}function Eb(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if
(c[(c[b>>2]|0)+156>>2]|0?c[(c[(c[b>>2]|0)+156>>2]|0)+4>>2]&1|0:0){c[d>
;>2]=c[(c[(c[b>>2]|0)+4>>2]|0)+100>>2];Fb(c[d>>2]|0,c[(c[b>>2]|0)+76+12
x3e;>2]|0);c[(c[b>>2]|0)+76+12>>2]=0;a=(c[(c[b>>2]|0)+156>>2]|0)+4|0;c[a>>
;2]=c[a>>2]&-2;i=e;return}c[(c[b>>2]|0)+76+12>>2]=0;i=e;return}function Fb(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=f;return}Ra[c[(c[d>
;>2]|0)+8>>2]&7](c[d>>2]|0,c[e>>2]|0);i=f;return}function Gb(a){a=a|0;var d=0,e=0,f=0,g=
0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;d=l+24|0;e=l+20|0;k=l+16|0;j=l+12|0;g=l+8|0;f=l+4|0;h=l;c[e>>2]=a;a:do if(c[e>>
;2]|0){c[k>>2]=b[(c[e>>2]|0)+2>>1];c[j>>2]=b[c[e>>2]>>1];if((c[k>
;>2]|0)==0&(c[j>>2]|0)==0){c[d>>2]=0;a=c[d>>2]|0;i=l;return a|0}if(!((c[k>>2]|
0)<=0|(c[j>>2]|0)<=0)){c[f>>2]=-1;c[g>>2]=-1;c[h>>2]=0;while(1){if((c[h>
x3e;2]|0)>=(c[j>>2]|0))break;c[f>>2]=b[(c[(c[e>>2]|0)+12>>2]|0)+(c[h>>2]
x3c;<1)>>1];if((c[f>>2]|0)<=(c[g>>2]|0))break a;if((c[f>>2]|0)>=(c[k>
;>2]|0))break a;c[g>>2]=c[f>>2];c[h>>2]=(c[h>>2]|0)+1}if((c[f>>2]|0)==((c
[k>>2]|0)-1|0)){c[d>>2]=0;a=c[d>>2]|0;i=l;return a|0}}}while(0);c[d>>2]=6;a=c[d>>
;2]|0;i=l;return a|0}function Hb(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+32|0;k=h+12|0;j=h+16|0;f=h+8|0;g=h+4|0;e=h
;c[k>>2]=b;a[j>>0]=d;c[f>>2]=(c[k>>2]|0)+24;b=c[f>>2]|0;if(a[j>>0]|0
){c[(c[f>>2]|0)+8>>2]=c[b+8>>2]&-64;c[(c[f>>2]|0)+12>>2]=(c[(c[f>>
;2]|0)+12>>2]|0)+63&-64;c[g>>2]=(c[(c[f>>2]|0)+20>>2]|0)+(c[c[f>>2]>
x3e;2]|0)+63&-64;c[e>>2]=(c[(c[f>>2]|0)+24>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0)+
63&-64;c[(c[f>>2]|0)+20>>2]=c[(c[f>>2]|0)+20>>2]&-64;c[(c[f>>2]|0)+24
>>2]=c[(c[f>>2]|0)+24>>2]&-64;c[c[f>>2]>>2]=(c[g>>2]|0)-(c[(c[f
>>2]|0)+20>>2]|0);c[(c[f>>2]|0)+4>>2]=(c[e>>2]|0)-(c[(c[f>>2]|0)+24
x3e;>2]|0);k=c[f>>2]|0;k=k+16|0;k=c[k>>2]|0;k=k+32|0;k=k&-64;j=c[f>>2]|0;j=j+16|0;c[j>
;>2]=k;j=c[f>>2]|0;j=j+28|0;j=c[j>>2]|0;j=j+32|0;j=j&-64;k=c[f>>2]|0;k=k+28|0;c[k>
x3e;2]=j;i=h;return}else{c[(c[f>>2]|0)+20>>2]=c[b+20>>2]&-64;c[(c[f>>2]|0)+24>
x3e;2]=c[(c[f>>2]|0)+24>>2]&-64;c[g>>2]=(c[(c[f>>2]|0)+8>>2]|0)+(c[c[f>
;>2]>>2]|0)+63&-64;c[e>>2]=(c[(c[f>>2]|0)+12>>2]|0)-(c[(c[f>>2]|0)+4
>>2]|0)&-64;c[(c[f>>2]|0)+8>>2]=c[(c[f>>2]|0)+8>>2]&-64;c[(c[f>
x3e;2]|0)+12>>2]=(c[(c[f>>2]|0)+12>>2]|0)+63&-64;c[c[f>>2]>>2]=(c[g>
x3e;2]|0)-(c[(c[f>>2]|0)+8>>2]|0);c[(c[f>>2]|0)+4>>2]=(c[(c[f>>2]|0)+12>
x3e;2]|0)-(c[e>>2]|0);k=c[f>>2]|0;k=k+16|0;k=c[k>>2]|0;k=k+32|0;k=k&-64;j=c[f>>2]|0
;j=j+16|0;c[j>>2]=k;j=c[f>>2]|0;j=j+28|0;j=c[j>>2]|0;j=j+32|0;j=j&-64;k=c[f>>2]|0;k
=k+28|0;c[k>>2]=j;i=h;return}}function Ib(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;b=f+12|0;g=f+8|0;d=f+4|0;e=f;c
[b>>2]=a;c[g>>2]=c[(c[b>>2]|0)+4>>2];c[d>>2]=c[(c[(c[g>>2]|0)+96>
;>2]|0)+4>>2];c[e>>2]=c[(c[d>>2]|0)+164>>2];if(c[e>>2]|0?(c[(c[e>>
;2]|0)+24>>2]|0)==(c[(c[b>>2]|0)+72>>2]|0):0){g=c[e>>2]|0;i=f;return g|0}c[e>>
2]=Jb(c[d>>2]|0,c[(c[b>>2]|0)+72>>2]|0,0)|0;g=c[e>>2]|0;i=f;return g|0}function Jb(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;m=i;i=i+32|0;e=m+20|0;f=m+16|0;g=m+12|0;h=m+8|0;k=m+4|0;j=m;c[e>>
;2]=a;c[f>>2]=b;c[g>>2]=d;c[k>>2]=0;if(!(c[e>>2]|0)){l=c[k>>2]|0;i=m;return l|
0}c[h>>2]=c[(c[e>>2]|0)+156>>2];if(c[g>>2]|0){if(c[c[g>>2]>>2]|0)c[h
>>2]=c[(c[c[g>>2]>>2]|0)+4>>2];c[c[g>>2]>>2]=0}while(1){if(!(c[h>
;>2]|0)){l=12;break}c[j>>2]=c[(c[h>>2]|0)+8>>2];if((c[(c[j>>2]|0)+24>>2]|
0)==(c[f>>2]|0))break;c[h>>2]=c[(c[h>>2]|0)+4>>2]}if((l|0)==12){l=c[k>>2]|0;i=
m;return l|0}if(c[g>>2]|0)c[c[g>>2]>>2]=c[h>>2];c[k>>2]=c[j>>2];l=c[
k>>2]|0;i=m;return l|0}function Kb(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;
c[e>>2]=a;c[f>>2]=d;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=j;return}c[h>>
2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=(c[h>>2]|0)+(b[(c[e>>2]|0)+2>>1]<
;<3);while(1){if((c[h>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;Lb(c[h>
x3e;2]|0,c[f>>2]|0);c[h>>2]=(c[h>>2]|0)+8}i=j;return}function Lb(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;if(!((c[d>>2]|0)!=0&(c[
e>>2]|0)!=0)){i=h;return}a=Mb(c[c[d>>2]>>2]|0,c[c[e>>2]>>2]|0)|0;c[f>>
;2]=a+(Mb(c[(c[d>>2]|0)+4>>2]|0,c[(c[e>>2]|0)+4>>2]|0)|0);a=Mb(c[c[d>>2]>
x3e;2]|0,c[(c[e>>2]|0)+8>>2]|0)|0;c[g>>2]=a+(Mb(c[(c[d>>2]|0)+4>>2]|0,c[(c[e
x3e;>2]|0)+12>>2]|0)|0);c[c[d>>2]>>2]=c[f>>2];c[(c[d>>2]|0)+4>>
2]=c[g>>2];i=h;return}function Mb(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;l=i;i=i+32|0;f=l+24|0;d=l+20|0;
e=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;g=l;c[d>>2]=a;c[e>>2]=b;a=c[d>>2]|0;if((c[d>>2]|0)==0|(
c[e>>2]|0)==65536){c[f>>2]=a;k=c[f>>2]|0;i=l;return k|0}c[h>>2]=a;a=c[d>>2]|0;
c[d>>2]=(c[d>>2]|0)<0?0-a|0:a;c[h>>2]=c[h>>2]^c[e>>2];a=c[e>>2]|
0;c[e>>2]=(c[e>>2]|0)<0?0-a|0:a;c[j>>2]=c[d>>2];c[k>>2]=c[e>>2];
a=c[j>>2]|0;if((c[j>>2]|0)>>>0<=2048&(c[k>>2]|0)>>>0<=
1048576)c[j>>2]=((_(a,c[k>>2]|0)|0)+32768|0)>>>16;else{c[g>>2]=a&65535;e=_((c[
j>>2]|0)>>>16,c[k>>2]|0)|0;e=e+(_(c[g>>2]|0,(c[k>>2]|0)>>>
16)|0)|0;c[j>>2]=e+(((_(c[g>>2]|0,c[k>>2]&65535)|0)+32768|0)>>>16)}k=c[j>
x3e;2]|0;c[f>>2]=(c[h>>2]|0)<0?0-k|0:k;k=c[f>>2]|0;i=l;return k|0}function Nb(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;m=i;i=i+32|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m+16|0;l=m;c[g>>2]=a;c[h>>2]=d
;c[j>>2]=f;if(!(c[g>>2]|0)){i=m;return}c[l>>2]=c[(c[g>>2]|0)+4>>2];b[k>
x3e;1]=0;while(1){if((e[k>>1]|0)>=(b[(c[g>>2]|0)+2>>1]|0))break;f=c[l>>2]|0;c[f>
;>2]=(c[f>>2]|0)+(c[h>>2]|0);f=(c[l>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+(c[j
x3e;>2]|0);c[l>>2]=(c[l>>2]|0)+8;b[k>>1]=(b[k>>1]|0)+1<<16>>16}
i=m;return}function Ob(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[
f>>2]=b;if(c[e>>2]|0?c[(c[e>>2]|0)+4>>2]|0:0){c[g>>2]=c[(c[(c[(c[e>>
2]|0)+4>>2]|0)+96>>2]|0)+4>>2];c[d>>2]=Pb(c[g>>2]|0,c[e>>2]|0,c[f>
;>2]|0)|0;a=c[d>>2]|0;i=h;return a|0}c[d>>2]=6;a=c[d>>2]|0;i=h;return a|0}function Pb(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;o=i;i=i+32|0;g=o+20|0;h=o+16|0;j=o+12|0;k=o+8|0;m=o+4|0;l=o;n=o+24|0;c[g
x3e;>2]=b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=0;if((c[(c[h>>2]|0)+72>>2]|0)==1651078259
){n=c[k>>2]|0;i=o;return n|0}c[l>>2]=0;a[n>>0]=0;b=c[g>>2]|0;if((c[(c[h>>2]|0)+
72>>2]|0)==1869968492){c[m>>2]=c[b+164>>2];c[l>>2]=c[(c[g>>2]|0)+156>>
;2]}else c[m>>2]=Jb(b,c[(c[h>>2]|0)+72>>2]|0,l)|0;c[k>>2]=7;while(1){if(!(c[m>>
;2]|0))break;c[k>>2]=Wa[c[(c[m>>2]|0)+68>>2]&31](c[m>>2]|0,c[h>>2]|0,c[j
x3e;>2]|0,0)|0;if(!(c[k>>2]|0))break;if((c[k>>2]&255|0)!=19)break;c[m>>2]=Jb(c[g>
x3e;2]|0,c[(c[h>>2]|0)+72>>2]|0,l)|0;a[n>>0]=1}if(c[k>>2]|0){n=c[k>>2]|0;i=o;return
n|0}if(!((d[n>>0]|0|0)!=0&(c[m>>2]|0)!=0)){n=c[k>>2]|0;i=o;return n|0}Qb(c[g>>2]|0
,c[m>>2]|0,0,0)|0;n=c[k>>2]|0;i=o;return n|0}function Qb(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o+20|0;j=o+16|0;k=o+12|0;m=o+8|0;l=o+4|0;n=o;c[g>>2]=a;c[h>
;>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=0;if(!(c[g>>2]|0)){c[f>>2]=33;n=c[f>
;>2]|0;i=o;return n|0}if(!(c[h>>2]|0)){c[f>>2]=6;n=c[f>>2]|0;i=o;return n|0}c[m>>2]=
Rb((c[g>>2]|0)+156|0,c[h>>2]|0)|0;a:do if(c[m>>2]|0){Sb((c[g>>2]|0)+156|0,c[m>>
;2]|0);if((c[(c[h>>2]|0)+24>>2]|0)==1869968492)c[(c[g>>2]|0)+164>>2]=c[h>>2];if
((c[j>>2]|0)>>>0>0){c[n>>2]=c[(c[(c[h>>2]|0)+20>>2]|0)+52>>
;2];while(1){if((c[j>>2]|0)>>>0<=0)break a;c[l>>2]=Oa[c[n>>2]&63](c[h>
;>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0)|0;if(c[l>>2]|0)break a;c[j
x3e;>2]=(c[j>>2]|0)+-1}}}else c[l>>2]=6;while(0);c[f>>2]=c[l>>2];n=c[f>>2
]|0;i=o;return n|0}function Rb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;f=g+12|0;h=g+8|0;d=g+4|0;e=g;c[h>>
;2]=a;c[d>>2]=b;c[e>>2]=c[c[h>>2]>>2];while(1){if(!(c[e>>2]|0)){b=6;break}a=c[
e>>2]|0;if((c[(c[e>>2]|0)+8>>2]|0)==(c[d>>2]|0)){b=4;break}c[e>>2]=c[a+4>
x3e;2]}if((b|0)==4){c[f>>2]=a;h=c[f>>2]|0;i=g;return h|0}else if((b|0)==6){c[f>>2]=0;h=c[f>
x3e;2]|0;i=g;return h|0}return 0}function Sb(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;e=h+12|0;f=h+8|0;d=h+4|0;g=h;
c[e>>2]=a;c[f>>2]=b;c[d>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[f>>
2]|0)+4>>2];if(!(c[d>>2]|0)){i=h;return}c[(c[d>>2]|0)+4>>2]=c[g>>2];d=c[d>
;>2]|0;if(c[g>>2]|0)c[c[g>>2]>>2]=d;else c[(c[e>>2]|0)+4>>2]=d;c[c[f>
;>2]>>2]=0;c[(c[f>>2]|0)+4>>2]=c[c[e>>2]>>2];c[c[c[e>>2]>
x3e;2]>>2]=c[f>>2];c[c[e>>2]>>2]=c[f>>2];i=h;return}function Tb(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;if((c[d>>2]|0)>=0){d=a+32768&-65536;i=b;return
d|0}else{d=0-(0-a+32768&-65536)|0;i=b;return d|0}return 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;l=i;i=i+32|0;e=l+24|0;f=l+20|0;g=l+16|0;h=l+12|0;j=l+8|0;k=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if
(c[f>>2]|0?(c[g>>2]|0)!=(c[h>>2]|0):0){c[j>>2]=c[f>>2];d=c[f>>2]|0;c
[f>>2]=(c[f>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[g>>2];d=c[g>>2]|
0;c[g>>2]=(c[g>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[h>>2];d=c[h>>
2]|0;c[h>>2]=(c[h>>2]|0)<0?0-d|0:d;do if(!((c[f>>2]|0)<=46340&(c[g>>2]|0)
x3c;=46340&(c[h>>2]|0)>0))if((c[h>>2]|0)>0){yb(c[f>>2]|0,c[g>>2]|0,k);c[f
>>2]=Ab(c[k+4>>2]|0,c[k>>2]|0,c[h>>2]|0)|0;break}else{c[f>>2]=2147483647;break
}else{k=_(c[f>>2]|0,c[g>>2]|0)|0;c[f>>2]=(k|0)/(c[h>>2]|0)|0}while(0);k=c[f>>2
]|0;c[e>>2]=(c[j>>2]|0)<0?0-k|0:k;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=c[f>>
;2];k=c[e>>2]|0;i=l;return k|0}function Vb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+28|0;e=k+
24|0;g=k+20|0;f=k+16|0;h=k+8|0;j=k;c[d>>2]=a;c[e>>2]=b;c[g>>2]=c[d>>2];b=c[d>>
2]|0;c[d>>2]=(c[d>>2]|0)<0?0-b|0:b;c[g>>2]=c[g>>2]^c[e>>2];b=c[e>>
;2]|0;c[e>>2]=(c[e>>2]|0)<0?0-b|0:b;do if(c[e>>2]|0){a=c[d>>2]|0;if(!(c[d>>
;2]>>16)){c[f>>2]=(((a<<16)+(c[e>>2]>>1)|0)>>>0)/((c[e>>
;2]|0)>>>0)|0;break}else{c[h+4>>2]=a>>16;c[h>>2]=c[d>>2]<<16;c[
j+4>>2]=0;c[j>>2]=c[e>>2]>>1;zb(h,j,h);c[f>>2]=Ab(c[h+4>>2]|0,c[h>
;>2]|0,c[e>>2]|0)|0;break}}else c[f>>2]=2147483647;while(0);j=c[f>>2]|0;i=k;return ((c[g>
;>2]|0)<0?0-j|0:j)|0}function Wb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0;f=h+4|0;g
=h;c[d>>2]=a;if(!(c[d>>2]|0)){c[b>>2]=6;g=c[b>>2]|0;i=h;return g|0}a=Mb(c[c[d>>
;2]>>2]|0,c[(c[d>>2]|0)+12>>2]|0)|0;c[e>>2]=a-(Mb(c[(c[d>>2]|0)+4>>2
]|0,c[(c[d>>2]|0)+8>>2]|0)|0);if(c[e>>2]|0){a=0-(Vb(c[(c[d>>2]|0)+4>>2]|0,c[e
x3e;>2]|0)|0)|0;c[(c[d>>2]|0)+4>>2]=a;a=0-(Vb(c[(c[d>>2]|0)+8>>2]|0,c[e>>
2]|0)|0)|0;c[(c[d>>2]|0)+8>>2]=a;c[f>>2]=c[c[d>>2]>>2];c[g>>2]=c[(c[
d>>2]|0)+12>>2];g=Vb(c[g>>2]|0,c[e>>2]|0)|0;c[c[d>>2]>>2]=g;g=Vb(c[f
>>2]|0,c[e>>2]|0)|0;c[(c[d>>2]|0)+12>>2]=g;c[b>>2]=0;g=c[b>>2]|0;i=h
;return g|0}else{c[b>>2]=6;g=c[b>>2]|0;i=h;return g|0}return 0}function Xb(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;m=i;i=i+32|0;e=m+28|0;f=m+24|0;n=m+20|0;h=m+16|0;j=m+12|0;k=m+8|0;l=m+4|0;g=m;c[e>>2]=
a;c[f>>2]=b;c[n>>2]=d;c[g>>2]=c[n>>2]<<16;if(!((c[e>>2]|0)!=0&(
c[f>>2]|0)!=0)){i=m;return}n=xb(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0,c[g>>
;2]|0)|0;c[h>>2]=n+(xb(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>
x3e;2]|0)|0);n=xb(c[c[e>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0;c[j>
x3e;2]=n+(xb(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);n=xb(c
[(c[e>>2]|0)+8>>2]|0,c[c[f>>2]>>2]|0,c[g>>2]|0)|0;c[k>>2]=n+(xb(c[(c
[e>>2]|0)+12>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>>2]|0)|0);n=xb(c[(c[e>>
2]|0)+8>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0;c[l>>2]=n+(xb(c[(c[e>>
;2]|0)+12>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);c[c[f>>2]>>2]=c
[h>>2];c[(c[f>>2]|0)+4>>2]=c[j>>2];c[(c[f>>2]|0)+8>>2]=c[k>>
;2];c[(c[f>>2]|0)+12>>2]=c[l>>2];i=m;return}function Yb(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;k=i;i=i+32|0;e=k+20|0;f=k+16|0;l=k+12|0;h=k+8|0;j=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[l>>
;2]=d;c[g>>2]=c[l>>2]<<16;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=k;return
}l=xb(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0,c[g>>2]|0)|0;c[h>>2]=l+(xb(c[(
c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0);l=xb(c[c[e>>2
]>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>>2]|0)|0;c[j>>2]=l+(xb(c[(c[e>>2]|
0)+4>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);c[c[e>>2]>>2]=c[h>
;>2];c[(c[e>>2]|0)+4>>2]=c[j>>2];i=k;return}function Zb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,
j=0;j=i;i=i+32|0;b=j+20|0;g=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;d=j;c[b>>2]=a;c[g>>2]=0;if((c[b>>2]|0)
x3c;=0){a=c[g>>2]|0;i=j;return a|0}c[e>>2]=0;c[f>>2]=c[b>>2];c[d>>2]=24;do{c[e
>>2]=c[e>>2]<<2|(c[f>>2]|0)>>>30;c[f>>2]=c[f>>2]<
;<2;c[g>>2]=c[g>>2]<<1;c[h>>2]=(c[g>>2]<<1)+1;if((c[e>>
;2]|0)>>>0>=(c[h>>2]|0)>>>0){c[e>>2]=(c[e>>2]|0)-(c[h>>
;2]|0);c[g>>2]=(c[g>>2]|0)+1}a=(c[d>>2]|0)+-1|0;c[d>>2]=a}while((a|0)!=0);a=c[g>>
;2]|0;i=j;return a|0}function _b(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;n=i;i=i+48|0;f=n+32|0;k=n+
28|0;g=n+24|0;l=n+20|0;m=n+16|0;h=n+8|0;j=n;c[f>>2]=a;c[k>>2]=b;c[g>>2]=d;c[l>>2]=e;b=c[
f>>2]|0;do if(!(c[k>>2]|0)){a=c[l>>2]|0;if((b|0)>=0){c[m>>2]=a;break}else{c[m>
x3e;2]=0-a;break}}else{if(!b){a=c[g>>2]|0;if((c[k>>2]|0)>=0){c[m>>2]=0-a;break}else{c[m>
x3e;2]=a;break}}b=c[g>>2]|0;if(!(c[l>>2]|0)){a=c[k>>2]|0;if((b|0)>=0){c[m>>2]=a;break
}else{c[m>>2]=0-a;break}}if(!b){a=c[f>>2]|0;if((c[l>>2]|0)>=0){c[m>>2]=0-a;break}else
{c[m>>2]=a;break}}yb(c[f>>2]|0,c[l>>2]|0,h);yb(c[k>>2]|0,c[g>>2]|0,j);if((c[h+
4>>2]|0)>>>0>(c[j+4>>2]|0)>>>0){c[m>>2]=1;break}if((c[h+4>
x3e;2]|0)>>>0<(c[j+4>>2]|0)>>>0){c[m>>2]=-1;break}if((c[h>>2]|0
)>>>0>(c[j>>2]|0)>>>0){c[m>>2]=1;break}if((c[h>>2]|0)>>
;>0<(c[j>>2]|0)>>>0){c[m>>2]=-1;break}else{c[m>>2]=0;break}}while(0);i=n;
return c[m>>2]|0}function $b(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;p=i;i=i+48|0
;f=p+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;n=p+8|0;o=p+4|0;m=p;c[f>>2]=a;c[g>>2]=b;c[h>>
;2]=d;c[j>>2]=e;c[k>>2]=c[f>>2];c[l>>2]=c[g>>2];if((c[k>>2]|0)<
0)c[k>>2]=0-(c[k>>2]|0);if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>>2]|0);c[n>
x3e;2]=(c[k>>2]|0)+(c[l>>2]|0);c[k>>2]=c[h>>2];if((c[k>>2]|0)<0)c[k>
x3e;2]=0-(c[k>>2]|0);c[l>>2]=c[j>>2];if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>
;>2]|0);c[o>>2]=(c[k>>2]|0)+(c[l>>2]|0);c[k>>2]=(c[h>>2]|0)+(c[f>>
;2]|0);if((c[k>>2]|0)<0)c[k>>2]=0-(c[k>>2]|0);c[l>>2]=(c[j>>2]|0)+(c[g>
;>2]|0);if((c[l>>2]|0)>=0){e=c[k>>2]|0;d=c[l>>2]|0;d=e+d|0;c[m>>2]=d;d=c[n>
;>2]|0;e=c[o>>2]|0;e=d+e|0;d=c[m>>2]|0;d=e-d|0;e=c[m>>2]|0;e=e>>4;e=(d|0)<(e|0
);e=e&1;i=p;return e|0}c[l>>2]=0-(c[l>>2]|0);e=c[k>>2]|0;d=c[l>>2]|0;d=e+d|0;c[m>
;>2]=d;d=c[n>>2]|0;e=c[o>>2]|0;e=d+e|0;d=c[m>>2]|0;d=e-d|0;e=c[m>>2]|0;e=e>>
;4;e=(d|0)<(e|0);e=e&1;i=p;return e|0}function ac(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;d=h+12|0;e=h+8
|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[g>>2]=bc(c[d>>2]|0,96,f)|0;if(c
[f>>2]|0){a=c[f>>2]|0;i=h;return a|0}c[c[g>>2]>>2]=c[d>>2];c[c[e>>2]
x3e;>2]=c[g>>2];a=c[f>>2]|0;i=h;return a|0}function bc(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;k=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[k>>2]=a;c[e>>2]=b;c[f>>2]=d;c[g>>
;2]=cc(c[k>>2]|0,c[e>>2]|0,h)|0;if((c[h>>2]|0)==0&(c[e>>2]|0)>0)Ns(c[g>
x3e;2]|0,0,c[e>>2]|0)|0;c[c[f>>2]>>2]=c[h>>2];i=j;return c[g>>2]|0}function cc
(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;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f
>>2]=b;c[g>>2]=d;c[j>>2]=0;c[h>>2]=0;if((c[f>>2]|0)>0){c[h>>2]=
Ya[c[(c[e>>2]|0)+4>>2]&127](c[e>>2]|0,c[f>>2]|0)|0;if(!(c[h>>2]|0))c[j>
;>2]=64}else if((c[f>>2]|0)<0)c[j>>2]=6;c[c[g>>2]>>2]=c[j>>2];i=k;return
c[h>>2]|0}function dc(a){a=a|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[d>>
;2]=(c[g>>2]|0)+20;c[e>>2]=(c[g>>2]|0)+56;b[(c[d>>2]|0)+2>>1]=0;b[c[d>>
;2]>>1]=0;c[(c[d>>2]|0)+28>>2]=0;a=c[e>>2]|0;d=c[d>>2]|0;e=a+36|0;do{c[a>
x3e;2]=c[d>>2];a=a+4|0;d=d+4|0}while((a|0)<(e|0));i=f;return}function ec(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];Fb(c[e>>2]|0,c[(c[d>>2]|0)+
20+4>>2]|0);c[(c[d>>2]|0)+20+4>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+8>>
;2]|0);c[(c[d>>2]|0)+20+8>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+12>>2]|0);c[(c[d
>>2]|0)+20+12>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+20>>2]|0);c[(c[d>>
2]|0)+20+20>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+32>>2]|0);c[(c[d>>2]|0)+20+32
x3e;>2]=0;c[(c[d>>2]|0)+20+24>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+8
>>2]=0;c[(c[d>>2]|0)+12>>2]=0;dc(c[d>>2]|0);i=b;return}function fc(a){a=a|0;var b=0,d=0,
e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(!(c[b>>2]|0)){i=e;return}c[d>>2]=c[c[b>>2]>
;>2];ec(c[b>>2]|0);Fb(c[d>>2]|0,c[b>>2]|0);c[b>>2]=0;i=e;return}function gc(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[g>>2]=c[c[d>>2]>>2];b
=hc(c[g>>2]|0,8,0,c[(c[d>>2]|0)+4>>2]<<1,0,e)|0;c[(c[d>>2]|0)+20+20>>
;2]=b;if(c[e>>2]|0){g=c[e>>2]|0;i=f;return g|0}a[(c[d>>2]|0)+16>>0]=1;c[(c[d>>
2]|0)+20+24>>2]=(c[(c[d>>2]|0)+20+20>>2]|0)+(c[(c[d>>2]|0)+4>>2]<<3);
jc(c[d>>2]|0);g=c[e>>2]|0;i=f;return g|0}function hc(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;o=i;i=i+32|0;p=o+24|0;h=o+20|0;j=o+16|0;k=o+12|0;l=o+8|0;m=o+4|0;n=o;c[p>>2]=a;c[h>
x3e;2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=0;c[l>>2]=ic
(c[p>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,n)|0;if((c[n>>2]|
0)==0?(c[k>>2]|0)>(c[j>>2]|0):0){p=(c[l>>2]|0)+(_(c[j>>2]|0,c[h>>2]|0)|0)|
0;Ns(p|0,0,_((c[k>>2]|0)-(c[j>>2]|0)|0,c[h>>2]|0)|0)|0}c[c[m>>2]>>2]=c[n>
x3e;2];i=o;return c[l>>2]|0}function ic(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;s=i;i=i+48|0;h=s+36|0;j=s+32|0;k=s+28|0;l=s+24|0;m=s+20|0;n=s+16|0;q=s+12|0;o=s+8|0;p=s+4|0;r=s;c[h>>
;2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[q>>2]=0;do
if(!((c[k>>2]|0)<0|(c[l>>2]|0)<0|(c[j>>2]|0)<0)){if((c[l>>2]|0)==0|(c[j
x3e;>2]|0)==0){Fb(c[h>>2]|0,c[m>>2]|0);c[m>>2]=0;break}if((c[l>>2]|0)>(2147483647
/(c[j>>2]|0)|0|0)){c[q>>2]=10;break}if(!(c[k>>2]|0)){c[m>>2]=bc(c[h>>2]|0,_(c[
l>>2]|0,c[j>>2]|0)|0,q)|0;break}c[p>>2]=_(c[k>>2]|0,c[j>>2]|0)|0;c[r>>
;2]=_(c[l>>2]|0,c[j>>2]|0)|0;c[o>>2]=Wa[c[(c[h>>2]|0)+12>>2]&31](c[h>
;>2]|0,c[p>>2]|0,c[r>>2]|0,c[m>>2]|0)|0;if(!(c[o>>2]|0)){c[q>>2]=64;break
}else{c[m>>2]=c[o>>2];break}}else c[q>>2]=6;while(0);c[c[n>>2]>>2]=c[q>
x3e;2];i=s;return c[m>>2]|0}function jc(d){d=d|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
]=d;c[f>>2]=(c[e>>2]|0)+20;c[h>>2]=(c[e>>2]|0)+56;c[(c[h>>2]|0)+4>>2
]=(c[(c[f>>2]|0)+4>>2]|0)+(b[(c[f>>2]|0)+2>>1]<<3);c[(c[h>>2]|0)+8
x3e;>2]=(c[(c[f>>2]|0)+8>>2]|0)+(b[(c[f>>2]|0)+2>>1]|0);c[(c[h>>2]|0)+12
x3e;>2]=(c[(c[f>>2]|0)+12>>2]|0)+(b[c[f>>2]>>1]<<1);if(!(a[(c[e>>
;2]|0)+16>>0]|0)){i=g;return}c[(c[e>>2]|0)+56+20>>2]=(c[(c[e>>2]|0)+20+20>>2]|
0)+(b[(c[f>>2]|0)+2>>1]<<3);c[(c[e>>2]|0)+56+24>>2]=(c[(c[e>>2]|0)+20
+24>>2]|0)+(b[(c[f>>2]|0)+2>>1]<<3);i=g;return}function kc(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,s=0,t=0;s=i;i=i+48|0;g=s+36|0;h=s+32|0;t=s+28|0;j=s+24|0;o=s+20|0;n=s+16|0;l=s+12|0;
m=s+8|0;k=s+40|0;p=s+4|0;q=s;c[h>>2]=d;c[t>>2]=e;c[j>>2]=f;c[o>>2]=c[c[h>>2]
x3e;>2];c[n>>2]=0;c[l>>2]=(c[h>>2]|0)+20;c[m>>2]=(c[h>>2]|0)+56;a[k>
x3e;0]=0;c[p>>2]=(b[(c[l>>2]|0)+2>>1]|0)+(b[(c[m>>2]|0)+2>>1]|0)+(c[t>>
;2]|0);c[q>>2]=c[(c[h>>2]|0)+4>>2];do if((c[p>>2]|0)>>>0>(c[q>
x3e;2]|0)>>>0){c[p>>2]=(c[p>>2]|0)+7&-8;if((c[p>>2]|0)>>>0>
;32767){c[g>>2]=10;t=c[g>>2]|0;i=s;return t|0}t=hc(c[o>>2]|0,8,c[q>>2]|0,c[p>>
2]|0,c[(c[l>>2]|0)+4>>2]|0,n)|0;c[(c[l>>2]|0)+4>>2]=t;if((c[n>>2]|0)==0?(t=hc(
c[o>>2]|0,1,c[q>>2]|0,c[p>>2]|0,c[(c[l>>2]|0)+8>>2]|0,n)|0,c[(c[l>>2
]|0)+8>>2]=t,(c[n>>2]|0)==0):0){if(a[(c[h>>2]|0)+16>>0]|0){t=hc(c[o>>2]|0,8,c[
q>>2]<<1,c[p>>2]<<1,c[(c[h>>2]|0)+20+20>>2]|0,n)|0;c[(c[h>>
;2]|0)+20+20>>2]=t;if(c[n>>2]|0)break;Ts((c[(c[h>>2]|0)+20+20>>2]|0)+(c[p>>2]
x3c;<3)|0,(c[(c[h>>2]|0)+20+20>>2]|0)+(c[q>>2]<<3)|0,c[q>>2]<<3
|0)|0;c[(c[h>>2]|0)+20+24>>2]=(c[(c[h>>2]|0)+20+20>>2]|0)+(c[p>>2]<<
3)}a[k>>0]=1;c[(c[h>>2]|0)+4>>2]=c[p>>2];r=10}}else r=10;while(0);a:do if((r|0)==10){c[q
>>2]=c[(c[h>>2]|0)+8>>2];c[p>>2]=(b[c[l>>2]>>1]|0)+(b[c[m>>
;2]>>1]|0)+(c[j>>2]|0);do if((c[p>>2]|0)>>>0>(c[q>>2]|0)>>
x3e;0){c[p>>2]=(c[p>>2]|0)+3&-4;if((c[p>>2]|0)>>>0>32767){c[g>>
2]=10;t=c[g>>2]|0;i=s;return t|0}else{t=hc(c[o>>2]|0,2,c[q>>2]|0,c[p>>2]|0,c[(c[l>
x3e;2]|0)+12>>2]|0,n)|0;c[(c[l>>2]|0)+12>>2]=t;if(c[n>>2]|0)break a;a[k>>0]=1;
c[(c[h>>2]|0)+8>>2]=c[p>>2];break}}while(0);if(a[k>>0]|0)jc(c[h>>2]|0)}while(0
);c[g>>2]=c[n>>2];t=c[g>>2]|0;i=s;return t|0}function lc(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;d=k+28|0;l=k+24|0;g=k+20|0;f=k+16|0;h=k+12|0;j=k+8|0;e=k+4|0;m=k;c[d>>2]=a;c[l>>
;2]=b;c[g>>2]=c[c[d>>2]>>2];c[f>>2]=0;c[e>>2]=(c[d>>2]|0)+20;c[m>
;>2]=(c[d>>2]|0)+56;c[h>>2]=(c[(c[e>>2]|0)+28>>2]|0)+(c[(c[m>>2]|0)+28>
;>2]|0)+(c[l>>2]|0);c[j>>2]=c[(c[d>>2]|0)+12>>2];if((c[h>>2]|0)>>
;>0<=(c[j>>2]|0)>>>0){m=c[f>>2]|0;i=k;return m|0}c[h>>2]=(c[h>>
2]|0)+1&-2;m=hc(c[g>>2]|0,32,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+32>>2]|0,f
)|0;c[(c[e>>2]|0)+32>>2]=m;if(c[f>>2]|0){m=c[f>>2]|0;i=k;return m|0}c[(c[d>>2]|
0)+12>>2]=c[h>>2];mc(c[d>>2]|0);m=c[f>>2]|0;i=k;return m|0}function mc(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+4|0;d=b;c[f>>2]=a;c[e>>2]=(c[f>>2]|0)+20;c[d>>2]=(c
[f>>2]|0)+56;c[(c[d>>2]|0)+32>>2]=(c[(c[e>>2]|0)+32>>2]|0)+(c[(c[e>>
2]|0)+28>>2]<<5);i=b;return}function nc(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;c[f>>2]=(c[e>>2]|0)+56;b[(c[f>>2]|0)+2>>1]=0;b[c[f>>2]>>1]=0;c[(c[
f>>2]|0)+28>>2]=0;jc(c[e>>2]|0);mc(c[e>>2]|0);i=d;return}function oc(a){a=a|0;var d=0,e=
0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[d>>2]=a;if(!(c[d>>2]|0)){
i=k;return}c[e>>2]=(c[d>>2]|0)+20;c[f>>2]=(c[d>>2]|0)+56;c[j>>2]=b[c[f>
x3e;2]>>1];c[h>>2]=b[(c[e>>2]|0)+2>>1];b[(c[e>>2]|0)+2>>1]=(b[(c[e
x3e;>2]|0)+2>>1]|0)+(b[(c[f>>2]|0)+2>>1]|0);b[c[e>>2]>>1]=(b[c[e>>
;2]>>1]|0)+(b[c[f>>2]>>1]|0);a=(c[e>>2]|0)+28|0;c[a>>2]=(c[a>>2]|0)+(
c[(c[f>>2]|0)+28>>2]|0);c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[j
x3e;>2]|0)>>>0)break;b[(c[(c[f>>2]|0)+12>>2]|0)+(c[g>>2]<<1)>
x3e;1]=(b[(c[(c[f>>2]|0)+12>>2]|0)+(c[g>>2]<<1)>>1]|0)+(c[h>>2]|0);c
[g>>2]=(c[g>>2]|0)+1}nc(c[d>>2]|0);i=k;return}function pc(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,j=0,k=0
,l=0,m=0,n=0;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;l=n+12|0;k=n+8|0;m=n+4|0;j=n;c[f>>2]=a;c[g>>2]=e;c[l>
;>2]=b[(c[g>>2]|0)+20+2>>1];c[k>>2]=b[(c[g>>2]|0)+20>>1];c[h>>2
]=kc(c[f>>2]|0,c[l>>2]|0,c[k>>2]|0)|0;if(c[h>>2]|0){a=c[h>>2]|0;i=n;return a|0
}c[m>>2]=(c[f>>2]|0)+20;c[j>>2]=(c[g>>2]|0)+20;Ss(c[(c[m>>2]|0)+4>>2
]|0,c[(c[j>>2]|0)+4>>2]|0,c[l>>2]<<3|0)|0;Ss(c[(c[m>>2]|0)+8>>2]|0,c
[(c[j>>2]|0)+8>>2]|0,c[l>>2]|0)|0;Ss(c[(c[m>>2]|0)+12>>2]|0,c[(c[j>>
2]|0)+12>>2]|0,c[k>>2]<<1|0)|0;if(d[(c[f>>2]|0)+16>>0]|0?d[(c[g>>2]|
0)+16>>0]|0:0){Ss(c[(c[f>>2]|0)+20+20>>2]|0,c[(c[g>>2]|0)+20+20>>2]|0,c[l>
;>2]<<3|0)|0;Ss(c[(c[f>>2]|0)+20+24>>2]|0,c[(c[g>>2]|0)+20+24>>2]|0,c[l
x3e;>2]<<3|0)|0}b[(c[m>>2]|0)+2>>1]=c[l>>2];b[c[m>>2]>>1]=c[k
x3e;>2];jc(c[f>>2]|0);a=c[h>>2]|0;i=n;return a|0}function qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;h=i;i=i+16|0;j=h+12|0;d=h+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=0;c[e>>2]=c[j
x3e;>2];if(!((c[e>>2]|0)!=0&(c[d>>2]|0)!=0)){j=c[f>>2]|0;i=h;return j|0}while(1){if(!(c[
c[e>>2]>>2]|0)){g=6;break}j=(Kr(c[c[e>>2]>>2]|0,c[d>>2]|0)|0)==0;a=c[e>
x3e;2]|0;if(j)break;c[e>>2]=a+8}if((g|0)==6){j=c[f>>2]|0;i=h;return j|0}c[f>>2]=c[a+4>>2
];j=c[f>>2]|0;i=h;return j|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;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;c[c[g>>2]>
x3e;2]=c[k>>2];c[(c[g>>2]|0)+4>>2]=c[j>>2];c[(c[g>>2]|0)+8>>2]=c[h
x3e;>2];c[(c[g>>2]|0)+12>>2]=0;i=f;return}function sc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d
+8|0;f=d+4|0;c[e>>2]=a;c[f>>2]=b;c[d>>2]=(c[e>>2]|0)+16;c[(c[e>>2]|0)+12>
x3e;2]=c[f>>2];ta(c[d>>2]|0,1)}function tc(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;m=i;
i=i+32|0;h=m+24|0;e=m+20|0;f=m+16|0;j=m+12|0;k=m+8|0;g=m+4|0;l=m;c[e>>2]=a;c[f>>2]=b;c[j>>2]=d;c[c
[j>>2]>>2]=0;if(!(c[e>>2]|0)){c[h>>2]=33;l=c[h>>2]|0;i=m;return l|0}if(!(c[f
x3e;>2]|0)){c[h>>2]=6;l=c[h>>2]|0;i=m;return l|0}c[g>>2]=c[c[e>>2]>>2];c[
l>>2]=bc(c[g>>2]|0,40,k)|0;if(!(c[k>>2]|0)){c[(c[l>>2]|0)+28>>2]=c[g>>
;2];do if(c[c[f>>2]>>2]&1|0)uc(c[l>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[(c[f>
;>2]|0)+8>>2]|0);else{if(c[c[f>>2]>>2]&4|0){c[k>>2]=qr(c[l>>2]|0,c[(
c[f>>2]|0)+12>>2]|0)|0;c[(c[l>>2]|0)+16>>2]=c[(c[f>>2]|0)+12>>2];break
}if(c[c[f>>2]>>2]&2|0?c[(c[f>>2]|0)+16>>2]|0:0){Fb(c[g>>2]|0,c[l>>
;2]|0);c[l>>2]=0;c[l>>2]=c[(c[f>>2]|0)+16>>2];break}c[k>>2]=6}while(0);e=c[g
x3e;>2]|0;f=c[l>>2]|0;if(c[k>>2]|0){Fb(e,f);c[l>>2]=0}else c[f+28>>2]=e;c[c[j>
x3e;2]>>2]=c[l>>2]}c[h>>2]=c[k>>2];l=c[h>>2]|0;i=m;return l|0}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;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]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2];c[(c[f>
x3e;2]|0)+8>>2]=0;c[(c[f>>2]|0)+32>>2]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>
x3e;2]|0)+24>>2]=0;i=e;return}function vc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=a;c[e>>2]=b;if(!(c[d>>2]|0)){i=g;return}c[f>>2]=c[(c[d>>2]|0)+28>>2];
wc(c[d>>2]|0);if(c[e>>2]|0){i=g;return}Fb(c[f>>2]|0,c[d>>2]|0);c[d>>2]=0;i=g;return
}function wc(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)){i=d;return}if(!(c[(c[b>
x3e;2]|0)+24>>2]|0)){i=d;return}Va[c[(c[b>>2]|0)+24>>2]&63](c[b>>2]|0);i=d;return}function
xc(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c
[g>>2]=c[(c[(c[d>>2]|0)+4>>2]|0)+100>>2];if(c[(c[(c[d>>2]|0)+156>>2]|
0)+4>>2]&1|0){Fb(c[g>>2]|0,c[(c[d>>2]|0)+76+12>>2]|0);c[(c[d>>2]|0)+76+12
>>2]=0}else{a=(c[(c[d>>2]|0)+156>>2]|0)+4|0;c[a>>2]=c[a>>2]|1}a=bc(c[g>
x3e;2]|0,c[e>>2]|0,f)|0;c[(c[d>>2]|0)+76+12>>2]=a;i=h;return c[f>>2]|0}function yc(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;m=i;i=i+32|0;d=m+28|0;e=m+24|0;f=m+20|0;j=m+16|0;h=m+12|0;g=m+8|0;k=m+4|0;l=
m;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0?c[(c[e>>2]|0)+96>>2]|0:0){c[h>>2]=
c[(c[e>>2]|0)+96>>2];c[g>>2]=c[(c[h>>2]|0)+20>>2];c[k>>2]=c[(c[h>
;>2]|0)+8>>2];c[l>>2]=bc(c[k>>2]|0,c[(c[g>>2]|0)+44>>2]|0,j)|0;do if(c[j
x3e;>2]|0){if(c[f>>2]|0)c[c[f>>2]>>2]=0}else{c[(c[l>>2]|0)+4>>2]=c[e>
;>2];c[j>>2]=zc(c[l>>2]|0)|0;if(c[j>>2]|0){Ac(c[l>>2]|0);Fb(c[k>>2]|0,c[l
>>2]|0);c[l>>2]=0;break}c[(c[l>>2]|0)+8>>2]=c[(c[e>>2]|0)+84>>2];c[(
c[e>>2]|0)+84>>2]=c[l>>2];if(c[f>>2]|0)c[c[f>>2]>>2]=c[l>>
2]}while(0);c[d>>2]=c[j>>2];l=c[d>>2]|0;i=m;return l|0}c[d>>2]=6;l=c[d>>2]|0;i
=m;return l|0}function zc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;b=j+20|0;e=j+16|0;d=j+12|0;h=j+8|0;f=j+4|0;g=j;c
[b>>2]=a;c[e>>2]=c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2];c[d>>2]=c[(c[e>
;>2]|0)+20>>2];c[h>>2]=c[(c[e>>2]|0)+8>>2];c[f>>2]=0;c[g>>2]=0;
c[c[b>>2]>>2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=bc(c[h>>2]|0,40,f)|0;if(c[
f>>2]|0){a=c[f>>2]|0;i=j;return a|0}c[(c[b>>2]|0)+156>>2]=c[g>>2];if(!(c[c[c[e
>>2]>>2]>>2]&512))c[f>>2]=ac(c[h>>2]|0,c[g>>2]|0)|0;if(c[f>
;>2]|0){a=c[f>>2]|0;i=j;return a|0}if(!(c[(c[d>>2]|0)+64>>2]|0)){a=c[f>>2]|0;i=j;return
a|0}c[f>>2]=Ta[c[(c[d>>2]|0)+64>>2]&63](c[b>>2]|0)|0;a=c[f>>2]|0;i=j;return
a|0}function Ac(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;d=g+4|0;f=g;c[b>>2]=a;c[e>>2
]=c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2];c[d>>2]=c[(c[e>>2]|0)+20>>2];c[f
x3e;>2]=c[(c[e>>2]|0)+8>>2];if(c[(c[d>>2]|0)+68>>2]|0)Va[c[(c[d>>2]|0)+68
>>2]&63](c[b>>2]|0);Eb(c[b>>2]|0);if(!(c[(c[b>>2]|0)+156>>2]|0)){i=g;return
}if(!(c[c[c[e>>2]>>2]>>2]&512)){fc(c[c[(c[b>>2]|0)+156>>2]>>2]|
0);c[c[(c[b>>2]|0)+156>>2]>>2]=0}Fb(c[f>>2]|0,c[(c[b>>2]|0)+156>>2]|
0);c[(c[b>>2]|0)+156>>2]=0;i=g;return}function Bc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+
16|0;d=j+12|0;g=j+8|0;h=j+4|0;b=j;c[f>>2]=a;if(!(c[f>>2]|0)){i=j;return}c[d>>2]=c[(c[(c[f>>
;2]|0)+4>>2]|0)+96>>2];c[g>>2]=c[(c[d>>2]|0)+8>>2];c[h>>2]=0;c[b>
;>2]=c[(c[(c[f>>2]|0)+4>>2]|0)+84>>2];while(1){if(!(c[b>>2]|0)){e=10;break}if((c[b
x3e;>2]|0)==(c[f>>2]|0))break;c[h>>2]=c[b>>2];c[b>>2]=c[(c[b>>2]|0)+8>
;>2]}if((e|0)==10){i=j;return}b=c[(c[b>>2]|0)+8>>2]|0;if(c[h>>2]|0)c[(c[h>>2]|0)+8
x3e;>2]=b;else c[(c[(c[f>>2]|0)+4>>2]|0)+84>>2]=b;Ac(c[f>>2]|0);Fb(c[g>>2
]|0,c[f>>2]|0);c[f>>2]=0;i=j;return}function Cc(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;e=k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[f>>2]|0
)){c[e>>2]=35;d=c[e>>2]|0;i=k;return d|0}c[j>>2]=c[g>>2];if(c[(c[f>>2]|0)+92
x3e;>2]|0)c[j>>2]=Dc(c[f>>2]|0,c[g>>2]|0)|0;c[e>>2]=Cb(c[f>>2]|0,c[j>
;>2]|0,c[h>>2]|0)|0;d=c[e>>2]|0;i=k;return d|0}function Dc(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;if(!(c[d>>2]|0)){g=
c[g>>2]|0;i=h;return g|0}if(!(c[(c[d>>2]|0)+92>>2]|0)){g=c[g>>2]|0;i=h;return g|0}c[f>
;>2]=c[(c[d>>2]|0)+92>>2];c[g>>2]=Ya[c[(c[(c[f>>2]|0)+12>>2]|0)+12>
x3e;2]&127](c[f>>2]|0,c[e>>2]|0)|0;g=c[g>>2]|0;i=h;return g|0}function Ec(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;m=i;i=i+64|0;f=m+48|0;g=m+44|0;h=m+40|0;j=m+36|0;k=m+32|0;l=m;c[g>>2]=a;
c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(c[h>>2]|0){c[l>>2]=4;c[l+12>>2]=c[h
>>2];c[l+16>>2]=0;c[f>>2]=Fc(c[g>>2]|0,l,c[j>>2]|0,c[k>>2]|0)|0;b=c[
f>>2]|0;i=m;return b|0}else{c[f>>2]=6;b=c[f>>2]|0;i=m;return b|0}return 0}function Fc(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;G=i;i=i
+96|0;C=G+80|0;j=G+76|0;k=G+72|0;l=G+68|0;D=G+64|0;E=G+60|0;o=G+56|0;u=G+52|0;B=G+48|0;q=G+44|0;v=G+40|0;p=G+84|0;n=G+36|0;t=G+32
|0;w=G+28|0;y=G+24|0;x=G+20|0;z=G+16|0;A=G+12|0;r=G+8|0;m=G+4|0;s=G;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;
c[D>>2]=h;c[B>>2]=0;c[q>>2]=0;c[v>>2]=0;if(!(((c[D>>2]|0)==0&(c[l>
x3e;2]|0)>=0^1)&(c[k>>2]|0)!=0)){c[C>>2]=6;F=c[C>>2]|0;i=G;return F|0}if(c[c[k>>
;2]>>2]&2|0)h=(c[(c[k>>2]|0)+16>>2]|0)!=0;else h=0;a[p>>0]=h&1;c[E>>
2]=tc(c[j>>2]|0,c[k>>2]|0,B)|0;a:do if(!(c[E>>2]|0)){c[u>>2]=c[c[j>>2]>
x3e;2];do if(c[c[k>>2]>>2]&8|0?c[(c[k>>2]|0)+20>>2]|0:0){c[o>>2]=c[(c[k
x3e;>2]|0)+20>>2];if(c[c[c[o>>2]>>2]>>2]&1|0){c[w>>2]=0;c[y>>
;2]=0;if(c[c[k>>2]>>2]&16|0){c[w>>2]=c[(c[k>>2]|0)+24>>2];c[y>>
2]=c[(c[k>>2]|0)+28>>2]}c[E>>2]=Gc(c[o>>2]|0,c[B>>2]|0,c[l>>2]|0,c[w
>>2]|0,c[y>>2]|0,q)|0;if(!(c[E>>2]|0))break}else c[E>>2]=32;vc(c[B>>2]|0,d[p
x3e;>0]|0);F=60;break a}else F=14;while(0);b:do if((F|0)==14){c[n>>2]=(c[j>>2]|0)+28;c[t>>2]=(
c[n>>2]|0)+(c[(c[j>>2]|0)+24>>2]<<2);while(1){if((c[n>>2]|0)>>>
0>=(c[t>>2]|0)>>>0){F=27;break a}if(c[c[c[c[n>>2]>>2]>>2]>>
;2]&1|0){c[x>>2]=0;c[z>>2]=0;c[o>>2]=c[c[n>>2]>>2];if(c[c[k>>2]
x3e;>2]&16|0){c[x>>2]=c[(c[k>>2]|0)+24>>2];c[z>>2]=c[(c[k>>2]|0)+28
x3e;>2]}c[E>>2]=Gc(c[o>>2]|0,c[B>>2]|0,c[l>>2]|0,c[x>>2]|0,c[z>>
;2]|0,q)|0;if(!(c[E>>2]|0))break b;if((Kr(c[(c[c[c[n>>2]>>2]>>2]|0)+8>>2]|0,10489
)|0)==0?(c[E>>2]&255|0)==142:0){if(Kc(c[B>>2]|0,0)|0){F=27;break a}c[E>>2]=Lc(c[j>>
2]|0,c[B>>2]|0,c[l>>2]|0,c[x>>2]|0,c[z>>2]|0,c[D>>2]|0)|0;if(!(c[E>>
2]|0))break}if((c[E>>2]&255|0)!=2){F=27;break a}}c[n>>2]=(c[n>>2]|0)+4}vc(c[B>>2]|0
,d[p>>0]|0);c[C>>2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}while(0);if(a[p>>0]|0){
B=(c[q>>2]|0)+8|0;c[B>>2]=c[B>>2]|1024}c[v>>2]=bc(c[u>>2]|0,12,E)|0;if(!(c[E
x3e;>2]|0)){c[(c[v>>2]|0)+8>>2]=c[q>>2];td((c[(c[q>>2]|0)+96>>2]|0)+24|0,
c[v>>2]|0);if((c[l>>2]|0)>=0){c[E>>2]=yc(c[q>>2]|0,0)|0;if(c[E>>2]|0){F=60
;break}c[E>>2]=ud(c[q>>2]|0,A)|0;if(c[E>>2]|0){F=60;break}c[(c[q>>2]|0)+88>>2]=
c[A>>2]}if(c[(c[q>>2]|0)+8>>2]&1|0){if((b[(c[q>>2]|0)+74>>1]|0)<0)b[(
c[q>>2]|0)+74>>1]=0-(b[(c[q>>2]|0)+74>>1]|0);if(!(c[(c[q>>2]|0)+8>>2
]&32))b[(c[q>>2]|0)+78>>1]=b[(c[q>>2]|0)+74>>1]|0}c:do if(c[(c[q>>2]|0)+8
>>2]&2|0){c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[(c[q>>2]|0)+28>>2]|0
))break c;c[m>>2]=(c[(c[q>>2]|0)+32>>2]|0)+(c[r>>2]<<4);if((b[c[m>>2
]>>1]|0)<0)b[c[m>>2]>>1]=0-(b[c[m>>2]>>1]|0);if((c[(c[m>>2]|0)+
8>>2]|0)<0)c[(c[m>>2]|0)+8>>2]=(0-(c[(c[m>>2]|0)+8>>2]|0)&65535)<
;<16>>16;if((c[(c[m>>2]|0)+12>>2]|0)<0)c[(c[m>>2]|0)+12>>2]=0-(c[(c[
m>>2]|0)+12>>2]|0);c[r>>2]=(c[r>>2]|0)+1}}while(0);c[s>>2]=c[(c[q>>2
]|0)+128>>2];c[(c[s>>2]|0)+4>>2]=65536;c[(c[s>>2]|0)+4+4>>2]=0;c[(c[s>>
;2]|0)+4+8>>2]=0;c[(c[s>>2]|0)+4+12>>2]=65536;c[(c[s>>2]|0)+20>>2]=0;c[(c[s>
;>2]|0)+20+4>>2]=0;c[(c[s>>2]|0)+60>>2]=1;h=c[q>>2]|0;if(c[D>>2]|0){c[c[D
>>2]>>2]=h;break}else{vd(h)|0;break}}else F=60}else F=27;while(0);if((F|0)==27){if(!(((c[E>>2]&
;255|0)!=81?(c[E>>2]&255|0)!=2:0)?(c[E>>2]&255|0)!=85:0))F=30;do if((F|0)==30){c[E>>2]=Xc
(c[j>>2]|0,c[B>>2]|0,c[l>>2]|0,c[D>>2]|0,c[k>>2]|0)|0;if(c[E>>2]|0){
if((c[E>>2]&255|0)!=2)break;c[E>>2]=2;break}else{vc(c[B>>2]|0,d[p>>0]|0);c[C>
x3e;2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}}while(0);vc(c[B>>2]|0,d[p>>0]|0);F=60}if((F|0
)==60)vd(c[q>>2]|0)|0;c[C>>2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}function Gc(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;v=i;i=i+64|0;h=v+48|0;j=v+44|0
;k=v+40|0;l=v+36|0;m=v+32|0;n=v+28|0;u=v+24|0;o=v+20|0;r=v+16|0;p=v+12|0;q=v+8|0;t=v+4|0;s=v;c[h>>2]=a;c[j>>
2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[r>>2]=0;c[t>>2]=0;c[o
>>2]=c[(c[h>>2]|0)+20>>2];c[u>>2]=c[(c[h>>2]|0)+8>>2];c[r>>
;2]=bc(c[u>>2]|0,c[(c[o>>2]|0)+36>>2]|0,p)|0;do if((c[p>>2]|0)==0?(c[t>>2]=bc(
c[u>>2]|0,64,p)|0,(c[p>>2]|0)==0):0){c[(c[r>>2]|0)+128>>2]=c[t>>2];c[(c[r>
;>2]|0)+96>>2]=c[h>>2];c[(c[r>>2]|0)+100>>2]=c[u>>2];c[(c[r>>2]|
0)+104>>2]=c[j>>2];c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]=0;c[s>>2]=0;while
(1){if((c[s>>2]|0)>=(c[l>>2]|0))break;if(!((c[(c[(c[r>>2]|0)+128>>2]|0)+52>>
;2]|0)!=0^1))break;if((c[(c[m>>2]|0)+(c[s>>2]<<3)>>2]|0)==1768842098)c[(c[(c[r>>
;2]|0)+128>>2]|0)+52>>2]=c[(c[m>>2]|0)+(c[s>>2]<<3)+4>>2];c[s>
x3e;2]=(c[s>>2]|0)+1}if(c[(c[o>>2]|0)+48>>2]|0)c[p>>2]=Za[c[(c[o>>2]|0)+48>
;>2]&31](c[j>>2]|0,c[r>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(!(c
[p>>2]|0)){c[q>>2]=Hc(c[r>>2]|0)|0;if((c[q>>2]|0)!=0&(c[q>>2]|0)!=38){c[p
>>2]=c[q>>2];break}else{c[c[n>>2]>>2]=c[r>>2];break}}}while(0);if(!(c[p>
x3e;2]|0)){b=c[p>>2]|0;i=v;return b|0}Ic(c[r>>2]|0,c[u>>2]|0);if(c[(c[o>>2]|0)+52>
x3e;2]|0)Va[c[(c[o>>2]|0)+52>>2]&63](c[r>>2]|0);Fb(c[u>>2]|0,c[t>>2]|0);c
[t>>2]=0;Fb(c[u>>2]|0,c[r>>2]|0);c[r>>2]=0;c[c[n>>2]>>2]=0;b=c[p>
;>2]|0;i=v;return b|0}function Hc(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;b=j+12|0;d=j+8|0;g=j+4|0;f=j;c[d>
x3e;2]=a;c[g>>2]=c[(c[d>>2]|0)+40>>2];if(!(c[g>>2]|0)){c[b>>2]=38;h=c[b>
x3e;2]|0;i=j;return h|0}c[f>>2]=(c[g>>2]|0)+(c[(c[d>>2]|0)+36>>2]<<2);while(1){
a=(c[f>>2]|0)+-4|0;c[f>>2]=a;if(a>>>0<(c[g>>2]|0)>>>0)break;if((
c[(c[c[f>>2]>>2]|0)+4>>2]|0)!=1970170211)continue;if(!((e[(c[c[f>>2]>>2]|0)+8
x3e;>1]|0|0)==3?(e[(c[c[f>>2]>>2]|0)+10>>1]|0|0)==10:0)){if(e[(c[c[f>>2]>>
;2]|0)+8>>1]|0|0)continue;if((e[(c[c[f>>2]>>2]|0)+10>>1]|0|0)!=4)continue}if((((c[f>
;>2]|0)-(c[g>>2]|0)|0)/4|0|0)<=15){h=11;break}}if((h|0)==11){c[(c[d>>2]|0)+92>>2]=c[c[f
x3e;>2]>>2];c[b>>2]=0;h=c[b>>2]|0;i=j;return h|0}c[f>>2]=(c[g>>2]|0)+(c[(
c[d>>2]|0)+36>>2]<<2);while(1){h=(c[f>>2]|0)+-4|0;c[f>>2]=h;if(h>>
x3e;0<(c[g>>2]|0)>>>0){h=17;break}if((c[(c[c[f>>2]>>2]|0)+4>>2]|0)!=
1970170211)continue;if((((c[f>>2]|0)-(c[g>>2]|0)|0)/4|0|0)<=15){h=16;break}}if((h|0)==16){c[(c[d>
x3e;2]|0)+92>>2]=c[c[f>>2]>>2];c[b>>2]=0;h=c[b>>2]|0;i=j;return h|0}else if((h
|0)==17){c[b>>2]=38;h=c[b>>2]|0;i=j;return h|0}return 0}function Ic(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;if(!(c[d>>2]|0)){i=h;return}c[g>
;>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[d>>2]|0)+36>>2]|0))break;c[f>>2]=c[(c[(c
[d>>2]|0)+40>>2]|0)+(c[g>>2]<<2)>>2];Jc(c[f>>2]|0);c[(c[(c[d>
x3e;2]|0)+40>>2]|0)+(c[g>>2]<<2)>>2]=0;c[g>>2]=(c[g>>2]|0)+1}Fb(c[e
x3e;>2]|0,c[(c[d>>2]|0)+40>>2]|0);c[(c[d>>2]|0)+40>>2]=0;c[(c[d>>2]|0)+36
>>2]=0;i=h;return}function Jc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;b=f+12|0;d=f+8|0;g=f+4|0;e=f;c[b>>
;2]=a;c[d>>2]=c[(c[b>>2]|0)+12>>2];c[g>>2]=c[c[b>>2]>>2];c[e>
x3e;2]=c[(c[g>>2]|0)+100>>2];if(!(c[(c[d>>2]|0)+8>>2]|0)){e=c[e>>2]|0;g=c[b>
;>2]|0;Fb(e,g);c[b>>2]=0;i=f;return}Va[c[(c[d>>2]|0)+8>>2]&63](c[b>>2]|0);e=c[
e>>2]|0;g=c[b>>2]|0;Fb(e,g);c[b>>2]=0;i=f;return}function Kc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;
g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;if(c[(c[d>>2]|0)+20>
x3e;2]|0){if(Wa[c[(c[d>>2]|0)+20>>2]&31](c[d>>2]|0,c[e>>2]|0,0,0)|0)c[f>>
2]=85}else if((c[e>>2]|0)>>>0>(c[(c[d>>2]|0)+4>>2]|0)>>>0)c[f
x3e;>2]=85;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[(c[d>>2]|0)+8>>2]=c[e>
x3e;2];a=c[f>>2]|0;i=g;return a|0}function Lc(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0
,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;w=i;i=i+64|0;j=w+52|0;k=w+48|0;l=w+44|0;m=w+40|0;y=w+36|0;x=w+32|0;n=w+28|0;o=w+24|
0;s=w+20|0;t=w+16|0;r=w+12|0;u=w+8|0;q=w+56|0;v=w+4|0;p=w;c[k>>2]=a;c[l>>2]=b;c[m>>2]=e;c[y>
x3e;2]=f;c[x>>2]=g;c[n>>2]=h;c[s>>2]=c[c[k>>2]>>2];c[y>>2]=c[y>
x3e;2];c[x>>2]=c[x>>2];c[u>>2]=Mc(c[l>>2]|0)|0;c[o>>2]=Nc(c[l>>2]|0,
c[m>>2]|0,t,r,q)|0;if((((c[o>>2]|0)==0?(Kc(c[l>>2]|0,(c[u>>2]|0)+(c[t>>2]|0)|0
)|0)==0:0)?(c[v>>2]=bc(c[s>>2]|0,c[r>>2]|0,o)|0,(c[o>>2]|0)==0):0)?(c[o>>2]=Rc
(c[l>>2]|0,c[v>>2]|0,c[r>>2]|0)|0,(c[o>>2]|0)==0):0)c[o>>2]=Tc(c[k>>
2]|0,c[v>>2]|0,c[r>>2]|0,(c[m>>2]|0)<0?c[m>>2]|0:0,d[q>>0]|0|0?10406:10410
,c[n>>2]|0)|0;if((c[o>>2]|0)==2?(c[p>>2]=Kc(c[l>>2]|0,c[u>>2]|0)|0,c[p>
x3e;2]|0):0){c[j>>2]=c[p>>2];y=c[j>>2]|0;i=w;return y|0}c[j>>2]=c[o>>2];y=c[j
x3e;>2]|0;i=w;return y|0}function Mc(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 Nc(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;v=i;i=i+48|0;t=v+36|0;k=v+32|0;l=v+28|0;m=v+24|0;n=v+20|0;o=v+16|0;u=v+12|0;q=v+40|0;r=v+8|0;s=v+4|0;p=v;c[k>>2]=d;c
[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[c[m>>2]>>2]=0;c[c[n>
x3e;2]>>2]=0;a[c[o>>2]>>0]=0;c[s>>2]=Oc(c[k>>2]|0,u)|0;if(c[u>>2]|0){
c[t>>2]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}if((c[s>>2]|0)!=1954115633){c[t>>2]=
2;u=c[t>>2]|0;i=v;return u|0}b[q>>1]=Pc(c[k>>2]|0,u)|0;if(c[u>>2]|0){c[t>>2]=c
[u>>2];u=c[t>>2]|0;i=v;return u|0}d=Qc(c[k>>2]|0,6)|0;c[u>>2]=d;if(d|0){c[t>>2
]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}c[r>>2]=-1;a[c[o>>2]>>0]=0;c[p>>
;2]=0;while(1){if((c[p>>2]|0)>=(e[q>>1]|0|0)){k=26;break}c[s>>2]=Oc(c[k>>2]|0,u)|0;
if(c[u>>2]|0){k=15;break}d=Qc(c[k>>2]|0,4)|0;c[u>>2]=d;if(d|0){k=15;break}d=Oc(c[k>>2]|0
,u)|0;c[c[m>>2]>>2]=d;if(c[u>>2]|0){k=15;break}d=Oc(c[k>>2]|0,u)|0;c[c[n>>2]
x3e;>2]=d;if(c[u>>2]|0){k=15;break}if((c[s>>2]|0)==1128875040){c[r>>2]=(c[r>>2]|0)+
1;d=c[m>>2]|0;c[d>>2]=(c[d>>2]|0)+22;d=c[n>>2]|0;c[d>>2]=(c[d>>2]|0)-
22;a[c[o>>2]>>0]=1;if((c[l>>2]|0)<0){k=18;break}}else if((c[s>>2]|0)==1415139377?(c
[r>>2]=(c[r>>2]|0)+1,d=c[m>>2]|0,c[d>>2]=(c[d>>2]|0)+24,d=c[n>>2]|0,
c[d>>2]=(c[d>>2]|0)-24,a[c[o>>2]>>0]=0,(c[l>>2]|0)<0):0){k=21;break}if((c
[l>>2]|0)>=0?(c[r>>2]|0)==(c[l>>2]|0):0){k=24;break}c[p>>2]=(c[p>>2]|0)+1
}if((k|0)==15){c[t>>2]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}else if((k|0)==18){c[t>>2]=0;u
=c[t>>2]|0;i=v;return u|0}else if((k|0)==21){c[t>>2]=0;u=c[t>>2]|0;i=v;return u|0}else if((k|0)==24
){c[t>>2]=0;u=c[t>>2]|0;i=v;return u|0}else if((k|0)==26){c[t>>2]=142;u=c[t>>2]|0;i=v;return
u|0}return 0}function Oc(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;k=m+20|0;j=m+4
|0;l=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=0;c[l>>2]=0;c[c[h>>2]>>2]=0;do if
(((c[(c[g>>2]|0)+8>>2]|0)+3|0)>>>0<(c[(c[g>>2]|0)+4>>2]|0)>>
;>0){e=c[g>>2]|0;if(c[(c[g>>2]|0)+20>>2]|0){if((Wa[c[e+20>>2]&31](c[g>>
;2]|0,c[(c[g>>2]|0)+8>>2]|0,k,4)|0)!=4)break;c[j>>2]=k}else c[j>>2]=(c[e>>2]|0
)+(c[(c[g>>2]|0)+8>>2]|0);if(c[j>>2]|0){c[j>>2]=(c[j>>2]|0)+4;c[l>>2
]=a[(c[j>>2]|0)+-4>>0]<<24|d[(c[j>>2]|0)+-4+1>>0]<<16|d[(c[j>
x3e;2]|0)+-4+2>>0]<<8|d[(c[j>>2]|0)+-4+3>>0]<<0}k=(c[g>>2]|0)+8|0;c[
k>>2]=(c[k>>2]|0)+4;c[f>>2]=c[l>>2];l=c[f>>2]|0;i=m;return l|0}while(0);c[c[h
x3e;>2]>>2]=85;c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}function Pc(e,f){e=e|0;f=f|0;var g=0,h=0,
j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;g=n+14|0;h=n+8|0;j=n+4|0;l=n+16|0;k=n;m=n+12|0;c[h>>2]=e;c[j>>2]=f;c[k>
;>2]=0;b[m>>1]=0;c[c[j>>2]>>2]=0;do if(((c[(c[h>>2]|0)+8>>2]|0)+1|0)>
;>>0<(c[(c[h>>2]|0)+4>>2]|0)>>>0){f=c[h>>2]|0;if(c[(c[h>>2
]|0)+20>>2]|0){if((Wa[c[f+20>>2]&31](c[h>>2]|0,c[(c[h>>2]|0)+8>>2]|0,l,2)|
0)!=2)break;c[k>>2]=l}else c[k>>2]=(c[f>>2]|0)+(c[(c[h>>2]|0)+8>>2]|0);if(c[k
x3e;>2]|0){c[k>>2]=(c[k>>2]|0)+2;b[m>>1]=a[(c[k>>2]|0)+-2>>0]<<
16>>16<<8|d[(c[k>>2]|0)+-2+1>>0]<<0}l=(c[h>>2]|0)+8|0;c[l>>
;2]=(c[l>>2]|0)+2;b[g>>1]=b[m>>1]|0;m=b[g>>1]|0;i=n;return m|0}while(0);c[c[j>>
;2]>>2]=85;b[g>>1]=0;m=b[g>>1]|0;i=n;return m|0}function Qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g
=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)<0){c[d>>2]=85;a=
c[d>>2]|0;i=g;return a|0}else{c[d>>2]=Kc(c[e>>2]|0,(c[(c[e>>2]|0)+8>>2]|0)+(c[
f>>2]|0)|0)|0;a=c[d>>2]|0;i=g;return a|0}return 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+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=Sc(c[h>>2]|0,c[(c[h>
;>2]|0)+8>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function Sc(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g>>2]=
a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=0;if((c[h>>2]|0)>>>0>
;=(c[(c[g>>2]|0)+4>>2]|0)>>>0){c[f>>2]=85;m=c[f>>2]|0;i=n;return m|0}d=c[
g>>2]|0;if(c[(c[g>>2]|0)+20>>2]|0)c[m>>2]=Wa[c[d+20>>2]&31](c[g>>
;2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;else{c[m>>2]=(c[d+4>>2]|0)-(c[h>
x3e;2]|0);if((c[m>>2]|0)>>>0>(c[k>>2]|0)>>>0)c[m>>2]=c[k>
x3e;2];Ss(c[j>>2]|0,(c[c[g>>2]>>2]|0)+(c[h>>2]|0)|0,c[m>>2]|0)|0}c[(c[g>
x3e;2]|0)+8>>2]=(c[h>>2]|0)+(c[m>>2]|0);if((c[m>>2]|0)>>>0<(c[k>
;>2]|0)>>>0)c[l>>2]=85;c[f>>2]=c[l>>2];m=c[f>>2]|0;i=n;return m|0}function
Tc(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;s=i;i=i+80|0;h=s+72|0;j
=s+68|0;k=s+64|0;t=s+60|0;l=s+56|0;m=s+52|0;n=s+48|0;o=s+16|0;p=s+8|0;r=s+4|0;q=s;c[j>>2]=a;c[k>>2]=b;c[t>
;>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[r>>2]=0;c[q>>2]=c[c[j>>2
]>>2];c[p>>2]=Vc(c[j>>2]|0,c[k>>2]|0,c[t>>2]|0,33,r)|0;if(c[p>>2]|0){
Fb(c[q>>2]|0,c[k>>2]|0);c[k>>2]=0;c[h>>2]=c[p>>2];t=c[h>>2]|0;i=s;return
t|0}c[o>>2]=2;c[o+16>>2]=c[r>>2];if(c[m>>2]|0){c[o>>2]=c[o>>2]|8;c[
o+20>>2]=Wc(c[j>>2]|0,c[m>>2]|0)|0}c[p>>2]=Fc(c[j>>2]|0,o,c[l>>2]|0,
c[n>>2]|0)|0;if(!(c[p>>2]|0)){t=(c[c[n>>2]>>2]|0)+8|0;c[t>>2]=c[t>>2
]&-1025}else{wc(c[r>>2]|0);Fb(c[q>>2]|0,c[r>>2]|0);c[r>>2]=0}c[h>>2]=c[p
x3e;>2];t=c[h>>2]|0;i=s;return t|0}function Uc(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]|0)+28>>2];Fb(c[e>>2]|0,c[c[d>>2]>>2]|0);c[c[d
>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;c[(c[d>>2
]|0)+24>>2]=0;i=b;return}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,j=0,k=0,l=0,m=0,n=0,o=0,p=0,
q=0;q=i;i=i+48|0;g=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;l=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;p=q;c[h>>2]=a;c[j>>2]=
b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;if(!(c[h>>2]|0)){c[g>>2]=33;p=c[g>>2
]|0;i=q;return p|0}if(!(c[j>>2]|0)){c[g>>2]=6;p=c[g>>2]|0;i=q;return p|0}c[c[m>>2]>
x3e;2]=0;c[o>>2]=c[c[h>>2]>>2];c[p>>2]=bc(c[o>>2]|0,40,n)|0;if(!(c[n>>
;2]|0)){uc(c[p>>2]|0,c[j>>2]|0,c[k>>2]|0);c[(c[p>>2]|0)+24>>2]=c[l>>
2];c[c[m>>2]>>2]=c[p>>2]}c[g>>2]=c[n>>2];p=c[g>>2]|0;i=q;return p|0}
function Wc(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;l=i;i=i+32|0;e=l+20|0;d=l+16|0;f=l+12|0;j=l+8|0;g=l+4|0;h=l;c[d
>>2]=a;c[f>>2]=b;c[j>>2]=0;if(!((c[d>>2]|0)!=0&(c[f>>2]|0)!=0)){c[e>
x3e;2]=c[j>>2];k=c[e>>2]|0;i=l;return k|0}c[g>>2]=(c[d>>2]|0)+28;c[h>>2]=(c[g
x3e;>2]|0)+(c[(c[d>>2]|0)+24>>2]<<2);while(1){if((c[g>>2]|0)>>>0>
;=(c[h>>2]|0)>>>0)break;b=(Kr(c[(c[c[c[g>>2]>>2]>>2]|0)+8>>2]|0
,c[f>>2]|0)|0)==0;d=c[g>>2]|0;if(b){k=6;break}c[g>>2]=d+4}if((k|0)==6)c[j>>2]=c[d>
x3e;2];c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|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;n=i;i=i+32|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g>>2]=a;c[h>
x3e;2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[l>>2]=c[l>>2];c[m>>2]=Yc(c[
g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;if((c[m>>2]&255|0)==2)c[m>
x3e;2]=Zc(c[g>>2]|0,c[h>>2]|0,0,c[j>>2]|0,c[k>>2]|0)|0;if((c[m>>2]&255|0)!=
2?(c[m>>2]&255|0)!=85:0){b=c[m>>2]|0;i=n;return b|0}if(!(c[c[l>>2]>>2]&4)){b=c
[m>>2]|0;i=n;return b|0}c[m>>2]=dd(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>
;2]|0,c[l>>2]|0)|0;b=c[m>>2]|0;i=n;return b|0}function Yc(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;q=i;i=i+160|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;l=q+12|0;o=q+32|0;n=q+8|0;m=q+4|0;p=q;c[h>>
;2]=a;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;if(!(c[j>>2]|0)){c[g>>2]=85;b=c[g>>
;2]|0;i=q;return b|0}c[n>>2]=Kc(c[j>>2]|0,0)|0;if((c[n>>2]|0)==0?(c[n>>2]=Rc(c[j>
x3e;2]|0,o,128)|0,(c[n>>2]|0)==0):0){if(((((((d[o>>0]|0|0)==0?(d[o+74>>0]|0|0)==0:0)?(d[o+82>
x3e;0]|0|0)==0:0)?d[o+1>>0]|0|0:0)?(d[o+1>>0]|0|0)<=33:0)?(d[o+63>>0]|0|0)==0:0)?(d[o+(2+(d[o
+1>>0]|0))>>0]|0|0)==0:0){c[m>>2]=(d[o+83>>0]|0)<<24|(d[o+84>>0]|0)
x3c;<16|(d[o+85>>0]|0)<<8|(d[o+86>>0]|0);c[p>>2]=128+((c[m>>2]|0)+127&
;-128);c[g>>2]=Zc(c[h>>2]|0,c[j>>2]|0,c[p>>2]|0,c[k>>2]|0,c[l>>2]|0)|
0;b=c[g>>2]|0;i=q;return b|0}c[g>>2]=2;b=c[g>>2]|0;i=q;return b|0}c[g>>2]=c[n>>
;2];b=c[g>>2]|0;i=q;return b|0}function Zc(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;t=i;i=i+64|0;g=t+48|0;h=t+44|0;j=t+40|0;u=t+36|0;k=t+32|0;l=t+28|0;r=t+24|0;o=t+20|0;q=t+16|0;s=t+12|0
;n=t+8|0;m=t+4|0;p=t;c[h>>2]=a;c[j>>2]=b;c[u>>2]=d;c[k>>2]=e;c[l>>2]=f;c[r>
;>2]=c[c[h>>2]>>2];c[o>>2]=_c(c[h>>2]|0,c[j>>2]|0,c[u>>2]|0,q,s
)|0;if(c[o>>2]|0){c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return u|0}c[o>>2]=$c(c[h>
;>2]|0,c[j>>2]|0,c[q>>2]|0,c[s>>2]|0,1347375956,n,m)|0;f=c[h>>2]|0;e=c[j>>
;2]|0;if(!(c[o>>2]|0)){c[o>>2]=bd(f,e,c[n>>2]|0,c[m>>2]|0,c[k>>2]|0,c[l>
x3e;2]|0)|0;Fb(c[r>>2]|0,c[n>>2]|0);c[n>>2]=0;if(!(c[o>>2]|0))c[c[c[l>>2]>
;>2]>>2]=1;c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return u|0}c[o>>2]=$c(f,e,c[q
x3e;>2]|0,c[s>>2]|0,1936092788,n,m)|0;if((c[o>>2]|0)==0?(c[p>>2]=(c[k>>2]|0)%(c[m
x3e;>2]|0)|0,c[o>>2]=cd(c[h>>2]|0,c[j>>2]|0,c[n>>2]|0,c[m>>2]|0,c[p>
x3e;2]|0,c[l>>2]|0)|0,Fb(c[r>>2]|0,c[n>>2]|0),c[n>>2]=0,(c[o>>2]|0)==0):0)c[c[
c[l>>2]>>2]>>2]=c[m>>2];c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return
u|0}function _c(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;x=
i;i=i+96|0;j=x+48|0;y=x+44|0;k=x+40|0;l=x+36|0;m=x+32|0;n=x+28|0;q=x+24|0;r=x+72|0;s=x+56|0;u=x+20|0;v=x+16|0;p=x+12|0;o=x+8|0;t
=x+4|0;w=x;c[y>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[y>>2]=
c[y>>2];c[q>>2]=Kc(c[k>>2]|0,c[l>>2]|0)|0;if(c[q>>2]|0){c[j>>2]=c[q
x3e;>2];y=c[j>>2]|0;i=x;return y|0}c[q>>2]=Rc(c[k>>2]|0,r,16)|0;if(c[q>>2]|0){c[j
x3e;>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}c[c[n>>2]>>2]=(c[l>>2]|0)+((d[
r>>0]|0)<<24|(d[r+1>>0]|0)<<16|(d[r+2>>0]|0)<<8|(d[r+3>>0]|
0));c[u>>2]=(c[l>>2]|0)+((d[r+4>>0]|0)<<24|(d[r+5>>0]|0)<<16|(d[r+6
x3e;>0]|0)<<8|(d[r+7>>0]|0));c[v>>2]=(d[r+8>>0]|0)<<24|(d[r+9>>
0]|0)<<16|(d[r+10>>0]|0)<<8|(d[r+11>>0]|0);if(((c[c[n>>2]>>2]|0)+(c[
v>>2]|0)|0)==(c[u>>2]|0)?(c[u>>2]|0)!=(c[l>>2]|0):0){c[q>>2]=Kc(c[k>>
;2]|0,c[u>>2]|0)|0;if(c[q>>2]|0){c[j>>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}a[
s+15>>0]=(d[r+15>>0]|0)+1;c[q>>2]=Rc(c[k>>2]|0,s,16)|0;if(c[q>>2]|0){c[j>
x3e;2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}c[p>>2]=1;c[o>>2]=1;c[t>>2]=0;while(
1){if((c[t>>2]|0)>=16)break;if(d[s+(c[t>>2]|0)>>0]|0|0)c[p>>2]=0;if((d[s+(c[t>
x3e;2]|0)>>0]|0|0)!=(d[r+(c[t>>2]|0)>>0]|0|0))c[o>>2]=0;c[t>>2]=(c[t>>
;2]|0)+1}if(!((c[p>>2]|0)!=0|(c[o>>2]|0)!=0)){c[j>>2]=2;y=c[j>>2]|0;i=x;return y|0}c[q
x3e;>2]=Qc(c[k>>2]|0,8)|0;c[w>>2]=(Pc(c[k>>2]|0,q)|0)&65535;if(c[q>>2]|0){c[j
x3e;>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}if((c[w>>2]|0)==-1){c[j>>2]=2;y=c[j>
;>2]|0;i=x;return y|0}c[q>>2]=Kc(c[k>>2]|0,(c[u>>2]|0)+(c[w>>2]|0)|0)|0;if(c[q>
;>2]|0){c[j>>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}else{c[c[m>>2]>>2]=(c[
u>>2]|0)+(c[w>>2]|0);c[j>>2]=0;y=c[j>>2]|0;i=x;return y|0}}c[j>>2]=2;y=c[j>
;>2]|0;i=x;return y|0}function $c(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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=i;i=i+80|0;o=C+72|0;D=C+68|0;p=C+64|0;q=C+60|0;r=C+56|0;k=C+52|0;s=C+48|0;
t=C+44|0;u=C+40|0;m=C+36|0;v=C+32|0;l=C+28|0;A=C+24|0;n=C+20|0;z=C+16|0;w=C+12|0;B=C+8|0;x=C+4|0;y=C;c[D>>2]=a;c[p>
;>2]=d;c[q>>2]=e;c[r>>2]=f;c[k>>2]=g;c[s>>2]=h;c[t>>2]=j;c[w>>2
]=c[c[D>>2]>>2];c[u>>2]=Kc(c[p>>2]|0,c[q>>2]|0)|0;if(c[u>>2]|0){c[o
x3e;>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[l>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if
(c[u>>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[l>>2]=(c[l>>
;2]|0)+1;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[l>>2]|0)){k=30;break}c[n>>2]=Oc(c[p
x3e;>2]|0,u)|0;if(c[u>>2]|0){k=10;break}c[A>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if(c[u>
x3e;2]|0){k=10;break}c[z>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if(c[u>>2]|0){k=10;break}if((c[n>
x3e;2]|0)==(c[k>>2]|0)){k=12;break}c[m>>2]=(c[m>>2]|0)+1}if((k|0)==10){c[o>>2]=c[u>
x3e;2];D=c[o>>2]|0;i=C;return D|0}else if((k|0)==12){c[c[t>>2]>>2]=(c[A>>2]|0)+1;c[z>
;>2]=(c[z>>2]|0)+(c[q>>2]|0);c[u>>2]=Kc(c[p>>2]|0,c[z>>2]|0)|0;if(c[u>
;>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[y>>2]=hc(c[w>>2]|0,8
,0,c[c[t>>2]>>2]|0,0,u)|0;if(c[u>>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;
i=C;return D|0}c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[c[t>>2]>>2]|0)){k=23;break}D=Pc
(c[p>>2]|0,u)|0;b[(c[y>>2]|0)+(c[v>>2]<<3)>>1]=D;if(c[u>>2]|0)break;
D=Qc(c[p>>2]|0,2)|0;c[u>>2]=D;if(D|0)break;c[B>>2]=Oc(c[p>>2]|0,u)|0;if(c[u>>2
]|0)break;D=Qc(c[p>>2]|0,4)|0;c[u>>2]=D;if(D|0)break;c[(c[y>>2]|0)+(c[v>>2]<<3
)+4>>2]=c[B>>2]&16777215;c[v>>2]=(c[v>>2]|0)+1}if((k|0)==23?(Bs(c[y>>2]|0
,c[c[t>>2]>>2]|0,8,102),c[x>>2]=hc(c[w>>2]|0,4,0,c[c[t>>2]>>2]|0,0,u
)|0,(c[u>>2]|0)==0):0){c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[c[t>>2]>>2]|
0))break;c[(c[x>>2]|0)+(c[v>>2]<<2)>>2]=(c[r>>2]|0)+(c[(c[y>>2]|0)+(
c[v>>2]<<3)+4>>2]|0);c[v>>2]=(c[v>>2]|0)+1}c[c[s>>2]>>2]=c
[x>>2];c[u>>2]=0}Fb(c[w>>2]|0,c[y>>2]|0);c[y>>2]=0;c[o>>2]=c[u>
x3e;2];D=c[o>>2]|0;i=C;return D|0}else if((k|0)==30){c[o>>2]=1;D=c[o>>2]|0;i=C;return D|0}return 0
}function ad(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=b;do if
((e[c[f>>2]>>1]|0|0)>=(e[c[g>>2]>>1]|0|0))if((e[c[f>>2]>>1]|0|0
)>(e[c[g>>2]>>1]|0|0)){c[d>>2]=1;break}else{c[d>>2]=0;break}else c[d>>2]=-
1;while(0);i=h;return c[d>>2]|0}function bd(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,C=0,D=0;D=i;i=i+80|0;j=D+72|0;k=D+68|0;l=D+64|0;m=D+60|0;n=D+56|0;o=D+52|
0;p=D+48|0;q=D+44|0;u=D+40|0;v=D+36|0;s=D+32|0;B=D+28|0;r=D+24|0;t=D+20|0;w=D+16|0;y=D+12|0;x=D+8|0;z=D+4|0;A=D;c[k>>2
]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;c[q>>2]=1;c[u
x3e;>2]=c[c[k>>2]>>2];if((c[o>>2]|0)==-1)c[o>>2]=0;if(c[o>>2]|0){c[j>
;>2]=c[q>>2];C=c[j>>2]|0;i=D;return C|0}c[w>>2]=0;c[s>>2]=0;while(1){if((c[s>
x3e;2]|0)>=(c[n>>2]|0)){C=10;break}c[q>>2]=Kc(c[l>>2]|0,c[(c[m>>2]|0)+(c[s>>
;2]<<2)>>2]|0)|0;if(c[q>>2]|0)break;c[A>>2]=Oc(c[l>>2]|0,q)|0;if(c[q>>
;2]|0)break;c[w>>2]=(c[w>>2]|0)+((c[A>>2]|0)+6);c[s>>2]=(c[s>>2]|0)+1}a:do if((
C|0)==10?(c[v>>2]=bc(c[u>>2]|0,(c[w>>2]|0)+2|0,q)|0,(c[q>>2]|0)==0):0){a[c[v>>
2]>>0]=-128;a[(c[v>>2]|0)+1>>0]=1;a[(c[v>>2]|0)+2>>0]=0;a[(c[v>>2]|0
)+3>>0]=0;a[(c[v>>2]|0)+4>>0]=0;a[(c[v>>2]|0)+5>>0]=0;c[y>>2]=6;c[x
x3e;>2]=2;c[t>>2]=0;c[B>>2]=1;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[n>>
;2]|0)){C=31;break}c[q>>2]=Kc(c[l>>2]|0,c[(c[m>>2]|0)+(c[s>>2]<<2)>>
2]|0)|0;if(c[q>>2]|0)break;c[z>>2]=Oc(c[l>>2]|0,q)|0;if(c[q>>2]|0)break a;c[r>>
;2]=(Pc(c[l>>2]|0,q)|0)&65535;if(c[q>>2]|0)break a;if(c[r>>2]>>8|0){if((c[z>
x3e;2]|0)>2)c[z>>2]=(c[z>>2]|0)-2;else c[z>>2]=0;if((c[r>>2]>>8|0)==(c[B
x3e;>2]|0))c[t>>2]=(c[t>>2]|0)+(c[z>>2]|0);else{if(((c[x>>2]|0)+3|0)>((c[w>
;>2]|0)+2|0))break;a[(c[v>>2]|0)+(c[x>>2]|0)>>0]=c[t>>2];a[(c[v>>2]|0)+((
c[x>>2]|0)+1)>>0]=c[t>>2]>>8;a[(c[v>>2]|0)+((c[x>>2]|0)+2)>>
;0]=c[t>>2]>>16;a[(c[v>>2]|0)+((c[x>>2]|0)+3)>>0]=c[t>>2]>>
;24;if((c[r>>2]>>8|0)==5){C=31;break}if(((c[y>>2]|0)+6|0)>((c[w>>2]|0)+2|0))break;d
=c[y>>2]|0;c[y>>2]=d+1;a[(c[v>>2]|0)+d>>0]=-128;c[B>>2]=c[r>>2]>
;>8;c[t>>2]=c[z>>2];d=c[B>>2]&255;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>
;>2]|0)+A>>0]=d;c[x>>2]=c[y>>2];A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>
;2]|0)+A>>0]=0;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>2]|0)+A>>0]=0;A=c[y>>
2]|0;c[y>>2]=A+1;a[(c[v>>2]|0)+A>>0]=0;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>
;2]|0)+A>>0]=0}c[q>>2]=1;if((c[y>>2]|0)>(c[w>>2]|0))break;if(((c[y>>2]|0)+(
c[z>>2]|0)|0)>(c[w>>2]|0))break;c[q>>2]=Rc(c[l>>2]|0,(c[v>>2]|0)+(c[y>
;>2]|0)|0,c[z>>2]|0)|0;if(c[q>>2]|0)break;c[y>>2]=(c[y>>2]|0)+(c[z>>2]|0)}
c[s>>2]=(c[s>>2]|0)+1}if(((C|0)==31?((c[y>>2]|0)+2|0)<=((c[w>>2]|0)+2|0):0)?(C=c[y
x3e;>2]|0,c[y>>2]=C+1,a[(c[v>>2]|0)+C>>0]=-128,C=c[y>>2]|0,c[y>>2]=C+1,a[(
c[v>>2]|0)+C>>0]=3,((c[x>>2]|0)+3|0)<=((c[w>>2]|0)+2|0)):0){a[(c[v>>2]|0)+(
c[x>>2]|0)>>0]=c[t>>2];a[(c[v>>2]|0)+((c[x>>2]|0)+1)>>0]=c[t>
x3e;2]>>8;a[(c[v>>2]|0)+((c[x>>2]|0)+2)>>0]=c[t>>2]>>16;a[(c[v>
x3e;2]|0)+((c[x>>2]|0)+3)>>0]=c[t>>2]>>24;c[j>>2]=Tc(c[k>>2]|0,c[v
x3e;>2]|0,c[y>>2]|0,c[o>>2]|0,10410,c[p>>2]|0)|0;C=c[j>>2]|0;i=D;return C|0}Fb(c[u
x3e;>2]|0,c[v>>2]|0);c[v>>2]=0}while(0);c[j>>2]=c[q>>2];C=c[j>>2]|0;i=D;return
C|0}function cd(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;w=i;i=i+64|0;o=w+52|0;p=w+48|0;h=w+44|0;j=w+40|0;k=w+36|0;l=w+32|0;q=w+28|0;n=w+24|0;v=w+20|0;r=w+16|0;m=w+12|0;u=w+8|0;t=w+4|
0;s=w;c[p>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[q>>2]=g;c[
n>>2]=c[c[p>>2]>>2];c[s>>2]=0;if((c[l>>2]|0)==-1)c[l>>2]=0;if((c[l
x3e;>2]|0)>=(c[k>>2]|0)){c[o>>2]=1;v=c[o>>2]|0;i=w;return v|0}c[m>>2]=c[(c[j
x3e;>2]|0)+(c[l>>2]<<2)>>2];c[r>>2]=Kc(c[h>>2]|0,c[m>>2]|0)|0;if
((c[r>>2]|0)==0?(c[u>>2]=Oc(c[h>>2]|0,r)|0,(c[r>>2]|0)==0):0){if((c[u>>2]|0)==-
1){c[o>>2]=1;v=c[o>>2]|0;i=w;return v|0}c[r>>2]=Lc(c[p>>2]|0,c[h>>2]|0,c[l>
;>2]|0,0,0,c[q>>2]|0)|0;if(c[r>>2]|0?(Kc(c[h>>2]|0,(c[m>>2]|0)+4|0)|0)==0:0){c[v>
;>2]=bc(c[n>>2]|0,c[u>>2]|0,r)|0;if(c[r>>2]|0){c[o>>2]=c[r>>2];v=c[o>
;>2]|0;i=w;return v|0}c[r>>2]=Rc(c[h>>2]|0,c[v>>2]|0,c[u>>2]|0)|0;if(!(c[r>>
;2]|0)){if((c[u>>2]|0)>4)h=($r(c[v>>2]|0,10416,4)|0)!=0^1;else h=0;c[t>>2]=h&1;c[r>
x3e;2]=Tc(c[p>>2]|0,c[v>>2]|0,c[u>>2]|0,c[s>>2]|0,c[t>>2]|0?11217:10489,c[q>
;>2]|0)|0}}}c[o>>2]=c[r>>2];v=c[o>>2]|0;i=w;return v|0}function dd(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;y=i;i=i+192|0;j=y+176|0;z=y+172|0;k=y+168
|0;l=y+164|0;m=y+160|0;t=y+156|0;o=y+152|0;r=y+148|0;q=y+112|0;u=y+76|0;p=y+40|0;s=y+181|0;w=y+180|0;n=y+8|0;v=y;c[j>>
2]=b;c[z>>2]=e;c[k>>2]=f;c[l>>2]=g;c[m>>2]=h;c[t>>2]=c[c[j>>2]>
x3e;2];c[o>>2]=2;a[w>>0]=0;c[v>>2]=0;ed(c[j>>2]|0,c[z>>2]|0,c[(c[m>>
2]|0)+12>>2]|0,q,u,p);c[r>>2]=0;while(1){if((c[r>>2]|0)>=9)break;a[s>>0]=rd(c[r>
;>2]|0)|0;if(!(d[s>>0]|0?(d[w>>0]|0)!=0:0))x=5;if((x|0)==5?(x=0,(c[p+(c[r>>2]<<2)
x3e;>2]|0)==0):0){c[n>>2]=4;if(c[q+(c[r>>2]<<2)>>2]|0)g=c[q+(c[r>>2]<
;<2)>>2]|0;else g=c[(c[m>>2]|0)+12>>2]|0;c[n+12>>2]=g;c[o>>2]=tc(c[j>
;>2]|0,n,v)|0;if((d[s>>0]|0)!=0&(c[o>>2]|0)==81)a[w>>0]=1;if(!(c[o>>2]|0)){c[o
>>2]=Zc(c[j>>2]|0,c[v>>2]|0,c[u+(c[r>>2]<<2)>>2]|0,c[k>>2]|
0,c[l>>2]|0)|0;vc(c[v>>2]|0,0);if(!(c[o>>2]|0))break;if(a[s>>0]|0)a[w>>0]=1}}c
[r>>2]=(c[r>>2]|0)+1}c[r>>2]=0;while(1){if((c[r>>2]|0)>=9)break;if(c[q+(c[r>
x3e;2]<<2)>>2]|0){Fb(c[t>>2]|0,c[q+(c[r>>2]<<2)>>2]|0);c[q+(c[r>
;>2]<<2)>>2]=0}c[r>>2]=(c[r>>2]|0)+1}if(!(c[o>>2]|0)){z=c[o>>2]|
0;i=y;return z|0}c[o>>2]=2;z=c[o>>2]|0;i=y;return z|0}function ed(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;p=i;i=i+32|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;m=p+8|0;n=p+4|0;o=p;c[h>>2
]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=0;while
(1){if((c[o>>2]|0)>=9)break;c[(c[l>>2]|0)+(c[o>>2]<<2)>>2]=0;if(c[j>
x3e;2]|0){b=Kc(c[j>>2]|0,0)|0;c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]=b}else c[(c[n>
;>2]|0)+(c[o>>2]<<2)>>2]=0;if(!(c[(c[n>>2]|0)+(c[o>>2]<<2)>
;>2]|0)){b=Za[c[96+(c[o>>2]<<3)>>2]&31](c[h>>2]|0,c[j>>2]|0,c[k>
;>2]|0,(c[l>>2]|0)+(c[o>>2]<<2)|0,(c[m>>2]|0)+(c[o>>2]<<2)|0)|0
;c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]=b}c[o>>2]=(c[o>>2]|0)+1}i=p;return}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,m=0,n=0,o=0;n=i;i=i+32|0;g=n+24|0;h=n+20|0;j=n+16|0;k=n+12|
0;o=n+8|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[o>>2]=e;c[l>>2]=f;c[m>
;>2]=333319;c[c[o>>2]>>2]=0;if(!(c[j>>2]|0)){c[g>>2]=81;o=c[g>>2]|0;i=n;return
o|0}else{c[g>>2]=gd(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[m>>2]|0,c[l>>2]|
0)|0;o=c[g>>2]|0;i=n;return o|0}return 0}function gd(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,v=0,w=0,x=0;v=i;i=i+64|0;r=v+52|0;x=v+48|0;m=v+44|0;w=v+40|0;j=v+36|0;s=v+32|0;k=v+28|0;u=v+24|0;l=v
+20|0;q=v+56|0;p=v+16|0;n=v+12|0;t=v+8|0;o=v+4|0;c[x>>2]=a;c[m>>2]=d;c[w>>2]=f;c[j>>2]=g
;c[s>>2]=h;c[l>>2]=0;c[o>>2]=0;c[v>>2]=2;c[x>>2]=c[x>>2];c[w>
x3e;2]=c[w>>2];c[l>>2]=c[l>>2];c[o>>2]=c[o>>2];c[k>>2]=Oc(c[m>
x3e;2]|0,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}if((c[k>>
;2]|0)!=(c[j>>2]|0)){c[r>>2]=2;x=c[r>>2]|0;i=v;return x|0}c[l>>2]=Oc(c[m>>2]|0
,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}c[u>>2]=Qc(c[m
x3e;>2]|0,16)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}b[q>
x3e;1]=Pc(c[m>>2]|0,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return
x|0}if(!(e[q>>1]|0)){c[r>>2]=2;x=c[r>>2]|0;i=v;return x|0}c[p>>2]=0;while(1){if((c[p>
;>2]|0)>=(e[q>>1]|0|0)){j=24;break}c[n>>2]=Oc(c[m>>2]|0,u)|0;if(c[u>>2]|0){j=16
;break}j=c[m>>2]|0;if((c[n>>2]|0)==2){c[t>>2]=Oc(j,u)|0;if((c[u>>2]|0)==0?(c[o>>
;2]=Oc(c[m>>2]|0,u)|0,(c[u>>2]|0)==0):0){j=20;break}}else{c[u>>2]=Qc(j,8)|0;if(c[u>>2]|0
){j=22;break}}c[p>>2]=(c[p>>2]|0)+1}if((j|0)==16){c[r>>2]=c[u>>2];x=c[r>>2]|0;
i=v;return x|0}else if((j|0)==20){c[c[s>>2]>>2]=c[t>>2];c[r>>2]=0;x=c[r>>2]|0;
i=v;return x|0}else if((j|0)==22){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}else if((j|0)==24){c[
r>>2]=2;x=c[r>>2]|0;i=v;return x|0}return 0}function hd(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;n=i;i=i+32|0;g=n+24|0;h=n+20|0;j=n+16|0;k=n+12|0;o=n+8|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>
;2]=b;c[k>>2]=d;c[o>>2]=e;c[l>>2]=f;c[m>>2]=333312;c[c[o>>2]>>2]=0;if
(!(c[j>>2]|0)){c[g>>2]=81;o=c[g>>2]|0;i=n;return o|0}else{c[g>>2]=gd(c[h>>2]|0
,c[j>>2]|0,c[k>>2]|0,c[m>>2]|0,c[l>>2]|0)|0;o=c[g>>2]|0;i=n;return o|0}return
0}function id(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;o=i;i=i+48|0;g=o+32|0;h=o+28|
0;q=o+24|0;p=o+20|0;j=o+16|0;k=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;c[p>>2]=d;c[j>
x3e;2]=e;c[k>>2]=f;c[q>>2]=c[q>>2];c[m>>2]=c[c[h>>2]>>2];c[n>
x3e;2]=jd(c[m>>2]|0,c[p>>2]|0,10421)|0;if(!(c[n>>2]|0)){c[g>>2]=64;q=c[g>>2]|0
;i=o;return q|0}c[l>>2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;if(c[l>>2]|0){Fb(c
[m>>2]|0,c[n>>2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c[n>>2];c[g>
x3e;2]=c[l>>2];q=c[g>>2]|0;i=o;return q|0}function jd(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;f=m+32|0;p=m+28|0;g=m+24|0;h=m+20|0;j=m+16|0;l=m+12|0;k=m+8|0;o=m+4|0;n=m;c[p>>2]=b;c[g>
;>2]=d;c[h>>2]=e;c[j>>2]=0;c[n>>2]=0;c[n>>2]=c[n>>2];d=cs(c[g>>
2]|0)|0;c[o>>2]=d+(cs(c[h>>2]|0)|0);c[j>>2]=bc(c[p>>2]|0,(c[o>>2]|0)+1|0,n)|0;
if(c[n>>2]|0){c[f>>2]=0;p=c[f>>2]|0;i=m;return p|0}c[l>>2]=xs(c[g>>2]|0,47)|0;
if(c[l>>2]|0){as(c[j>>2]|0,c[g>>2]|0,(c[l>>2]|0)-(c[g>>2]|0)+1|0)|0;a[(c[j>
;>2]|0)+((c[l>>2]|0)-(c[g>>2]|0)+1)>>0]=0;c[k>>2]=(c[l>>2]|0)+1}else{c[k
x3e;>2]=c[g>>2];a[c[j>>2]>>0]=0}zs(c[j>>2]|0,c[h>>2]|0)|0;zs(c[j>>
;2]|0,c[k>>2]|0)|0;c[f>>2]=c[j>>2];p=c[f>>2]|0;i=m;return p|0}function kd(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;m=i;i=i+64|0;e=m+60|0;f=m+56|0;g=m+52|0;h=m+48|0;n=m+16|0;l=m+8|0;k=m+4|0;j=m
;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=0;c[n>>2]=4;c[n+12>>2]=c[g>
;>2];c[j>>2]=tc(c[f>>2]|0,n,l)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];n=c[e>
;>2]|0;i=m;return n|0}else{c[j>>2]=fd(c[f>>2]|0,c[l>>2]|0,c[g>>2]|0,k,c[h>>
;2]|0)|0;vc(c[l>>2]|0,0);c[e>>2]=c[j>>2];n=c[e>>2]|0;i=m;return n|0}return 0}function ld
(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;q=i;i=i+48|0;m=q+36|0;r=q+32|0;s=q+28|
0;h=q+24|0;n=q+20|0;o=q+16|0;k=q+12|0;p=q+8|0;l=q+4|0;j=q;c[r>>2]=b;c[s>>2]=d;c[h>>2]=e;c[n>
x3e;2]=f;c[o>>2]=g;c[j>>2]=cs(c[h>>2]|0)|0;c[s>>2]=c[s>>2];c[l>>2]=c
[c[r>>2]>>2];if(((c[j>>2]|0)+18|0)>2147483647){c[m>>2]=10;s=c[m>>2]|0;i=q
;return s|0}c[p>>2]=bc(c[l>>2]|0,(c[j>>2]|0)+18|0,k)|0;if(c[k>>2]|0){c[m>>2]=c
[k>>2];s=c[m>>2]|0;i=q;return s|0}else{Ss(c[p>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;h=(
c[p>>2]|0)+(c[j>>2]|0)|0;j=10424;e=h+18|0;do{a[h>>0]=a[j>>0]|0;h=h+1|0;j=j+1|0}while((h|
0)<(e|0));c[c[n>>2]>>2]=c[p>>2];c[c[o>>2]>>2]=0;c[m>>2]=0;s=c[m
>>2]|0;i=q;return s|0}return 0}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,o=0,p=
0,q=0,r=0,s=0;q=i;i=i+48|0;h=q+36|0;r=q+32|0;s=q+28|0;j=q+24|0;k=q+20|0;l=q+16|0;n=q+12|0;p=q+8|0;o=q+4|0;m=q;c[r>>2]=
b;c[s>>2]=d;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[m>>2]=cs(c[j>>2]|0)|0;c[
s>>2]=c[s>>2];c[o>>2]=c[c[r>>2]>>2];if(((c[m>>2]|0)+6|0)>2147483647
){c[h>>2]=10;s=c[h>>2]|0;i=q;return s|0}c[p>>2]=bc(c[o>>2]|0,(c[m>>2]|0)+6|0,n
)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];s=c[h>>2]|0;i=q;return s|0}else{Ss(c[p>>2]|0
,c[j>>2]|0,c[m>>2]|0)|0;s=(c[p>>2]|0)+(c[m>>2]|0)|0;a[s>>0]=a[10442]|0;a[s+1
x3e;>0]=a[10443]|0;a[s+2>>0]=a[10444]|0;a[s+3>>0]=a[10445]|0;a[s+4>>0]=a[10446]|0;a[s+5>
x3e;0]=a[10447]|0;c[c[k>>2]>>2]=c[p>>2];c[c[l>>2]>>2]=0;c[h>>2]=0;s=
c[h>>2]|0;i=q;return s|0}return 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,m=0,n=0
,o=0,p=0;l=i;i=i+32|0;g=l+28|0;o=l+24|0;p=l+20|0;m=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;n=l;c[o>>2]=a;c[p>>2]=b;c
[m>>2]=d;c[h>>2]=e;c[j>>2]=f;c[p>>2]=c[p>>2];c[n>>2]=c[c[o>>
;2]>>2];c[k>>2]=jd(c[n>>2]|0,c[m>>2]|0,10448)|0;if(c[k>>2]|0){c[c[h>>
;2]>>2]=c[k>>2];c[c[j>>2]>>2]=0;c[g>>2]=0;p=c[g>>2]|0;i=l;return p|0
}else{c[g>>2]=64;p=c[g>>2]|0;i=l;return p|0}return 0}function od(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+32|0;g=l+28|0;o=l+24|0;p=l+20|0;m=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;n=l;c[o>>
;2]=a;c[p>>2]=b;c[m>>2]=d;c[h>>2]=e;c[j>>2]=f;c[p>>2]=c[p>>2];c[n>
;>2]=c[c[o>>2]>>2];c[k>>2]=jd(c[n>>2]|0,c[m>>2]|0,10462)|0;if(c[k>
x3e;2]|0){c[c[h>>2]>>2]=c[k>>2];c[c[j>>2]>>2]=0;c[g>>2]=0;p=c[g>
;>2]|0;i=l;return p|0}else{c[g>>2]=64;p=c[g>>2]|0;i=l;return p|0}return 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;o=i;i=i+48|0;g=o+32|0;h=o+28|0;q=o+24|0;p=o+20|0;j=o+16|0;k=
o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;c[p>>2]=d;c[j>>2]=e;c[k>>2]=f;c
[q>>2]=c[q>>2];c[m>>2]=c[c[h>>2]>>2];c[n>>2]=jd(c[m>>2]|0,
c[p>>2]|0,10473)|0;if(!(c[n>>2]|0)){c[g>>2]=64;q=c[g>>2]|0;i=o;return q|0}c[l>>
;2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;if(c[l>>2]|0){Fb(c[m>>2]|0,c[n>
x3e;2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c[n>>2];c[g>>2]=c[l>>2];q=c[g
>>2]|0;i=o;return q|0}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,p=0,q=0
;o=i;i=i+48|0;g=o+32|0;h=o+28|0;q=o+24|0;p=o+20|0;j=o+16|0;k=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;
c[p>>2]=d;c[j>>2]=e;c[k>>2]=f;c[q>>2]=c[q>>2];c[m>>2]=c[c[h>>
;2]>>2];c[n>>2]=jd(c[m>>2]|0,c[p>>2]|0,10475)|0;if(!(c[n>>2]|0)){c[g>>
;2]=64;q=c[g>>2]|0;i=o;return q|0}c[l>>2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;
if(c[l>>2]|0){Fb(c[m>>2]|0,c[n>>2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c
[n>>2];c[g>>2]=c[l>>2];q=c[g>>2]|0;i=o;return q|0}function rd(b){b=b|0;var d=0,e=0,f=0;e
=i;i=i+16|0;d=e+4|0;f=e;c[f>>2]=b;if(((sd(c[f>>2]|0)|0)+-3|0)>>>0<2){a[d>>0]=1
;f=a[d>>0]|0;i=e;return f|0}else{a[d>>0]=0;f=a[d>>0]|0;i=e;return f|0}return 0}function sd(a){a=a|
0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[d>>2]=a;if((c[d>>2]|0)>>>0>=9){c[b>>
;2]=-2;a=c[b>>2]|0;i=e;return a|0}else{c[b>>2]=c[96+(c[d>>2]<<3)+4>>2];a=c[b
x3e;>2]|0;i=e;return a|0}return 0}function td(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|0)+4>>2];c[(c[e>>2]|0)+4>>2
]=0;c[c[e>>2]>>2]=c[f>>2];a=c[e>>2]|0;if(c[f>>2]|0){c[(c[f>>2]|0)+4
x3e;>2]=a;e=c[e>>2]|0;f=c[d>>2]|0;f=f+4|0;c[f>>2]=e;i=g;return}else{c[c[d>>2]>
x3e;2]=a;e=c[e>>2]|0;f=c[d>>2]|0;f=f+4|0;c[f>>2]=e;i=g;return}}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;n=i;i=i+48|0;d=n+32|0;e=n+28|0;f=n+24|0;j=n+20|0;k=n+16|0;h=n+12|0;g=n+8|0;m=n+4|0;l=n;c[e
>>2]=a;c[f>>2]=b;c[m>>2]=0;c[l>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=35;m=c
[d>>2]|0;i=n;return m|0}if(!(c[f>>2]|0)){c[d>>2]=36;m=c[d>>2]|0;i=n;return m|0}if(!(c[(c
[e>>2]|0)+96>>2]|0)){c[d>>2]=34;m=c[d>>2]|0;i=n;return m|0}c[c[f>>2]>>
;2]=0;c[h>>2]=c[(c[e>>2]|0)+96>>2];c[g>>2]=c[(c[h>>2]|0)+20>>2];c[k
x3e;>2]=c[(c[e>>2]|0)+100>>2];c[m>>2]=bc(c[k>>2]|0,c[(c[g>>2]|0)+40>
x3e;2]|0,j)|0;if((c[j>>2]|0)==0?(c[l>>2]=bc(c[k>>2]|0,12,j)|0,(c[j>>2]|0)==0):0){c[c[m
x3e;>2]>>2]=c[e>>2];c[(c[m>>2]|0)+40>>2]=0;if(c[(c[g>>2]|0)+56>>
;2]|0)c[j>>2]=Ta[c[(c[g>>2]|0)+56>>2]&63](c[m>>2]|0)|0;if(!(c[j>>2]|0)){c
[c[f>>2]>>2]=c[m>>2];c[(c[l>>2]|0)+8>>2]=c[m>>2];td((c[e>>
2]|0)+108|0,c[l>>2]|0)}}if(c[j>>2]|0){Fb(c[k>>2]|0,c[l>>2]|0);c[l>>2]=0;Fb(c[k
>>2]|0,c[m>>2]|0);c[m>>2]=0}c[d>>2]=c[j>>2];m=c[d>>2]|0;i=n;return m
|0}function vd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;e=h+12|0;d=h+8|0;f=h+4|0;g=h;c[b>>2]=a;c[e
x3e;>2]=35;if(!(c[b>>2]|0)){g=c[e>>2]|0;i=h;return g|0}if(!(c[(c[b>>2]|0)+96>>2]|0)){
g=c[e>>2]|0;i=h;return g|0}a=(c[(c[b>>2]|0)+128>>2]|0)+60|0;c[a>>2]=(c[a>>2]|0
)+-1;if((c[(c[(c[b>>2]|0)+128>>2]|0)+60>>2]|0)>>>0>0){c[e>>2]=0;g=c[
e>>2]|0;i=h;return g|0}c[d>>2]=c[(c[b>>2]|0)+96>>2];c[f>>2]=c[(c[d>>
2]|0)+8>>2];c[g>>2]=Rb((c[d>>2]|0)+24|0,c[b>>2]|0)|0;if(!(c[g>>2]|0)){g=c[e>
;>2]|0;i=h;return g|0}wd((c[d>>2]|0)+24|0,c[g>>2]|0);Fb(c[f>>2]|0,c[g>>2]|0);c[g>
;>2]=0;xd(c[f>>2]|0,c[b>>2]|0,c[d>>2]|0);c[e>>2]=0;g=c[e>>2]|0;i=h;return
g|0}function wd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+12|0;h=g+8|0;d=g+4|0;f=g;c[e>>2]=a;c[h>
;>2]=b;c[d>>2]=c[c[h>>2]>>2];c[f>>2]=c[(c[h>>2]|0)+4>>2];a=c[f
x3e;>2]|0;if(c[d>>2]|0)c[(c[d>>2]|0)+4>>2]=a;else c[c[e>>2]>>2]=a;a=c[d
x3e;>2]|0;if(c[f>>2]|0){c[c[f>>2]>>2]=a;i=g;return}else{c[(c[e>>2]|0)+4>>
2]=a;i=g;return}}function xd(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[(c[g>>2]|0)+20>>2];if(c[(c[f>
x3e;2]|0)+116+4>>2]|0)Va[c[(c[f>>2]|0)+116+4>>2]&63](c[(c[f>>2]|0)+116>>2
]|0);while(1){d=c[f>>2]|0;if(!(c[(c[f>>2]|0)+84>>2]|0))break;Bc(c[d+84>>2]|0)}zd(d+108|0
,7,c[e>>2]|0,c[g>>2]|0);c[(c[f>>2]|0)+88>>2]=0;if(c[(c[f>>2]|0)+44+4>>
;2]|0)Va[c[(c[f>>2]|0)+44+4>>2]&63](c[f>>2]|0);Ic(c[f>>2]|0,c[e>>2]|0);if
(c[(c[h>>2]|0)+52>>2]|0)Va[c[(c[h>>2]|0)+52>>2]&63](c[f>>2]|0);vc(c[(c[f
x3e;>2]|0)+104>>2]|0,(c[(c[f>>2]|0)+8>>2]&1024|0)!=0&1);c[(c[f>>2]|0)+104
>>2]=0;if(!(c[(c[f>>2]|0)+128>>2]|0)){g=c[e>>2]|0;h=c[f>>2]|0;Fb(g,h);c[f>
;>2]=0;i=j;return}Fb(c[e>>2]|0,c[(c[f>>2]|0)+128>>2]|0);c[(c[f>>2]|0)+128>>
;2]=0;g=c[e>>2]|0;h=c[f>>2]|0;Fb(g,h);c[f>>2]=0;i=j;return}function yd(a,b,d){a=a|0;b=b|0;d=d|0;var
e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[(c[f>>
;2]|0)+4+4>>2]|0)Va[c[(c[f>>2]|0)+4+4>>2]&63](c[f>>2]|0);if(c[(c[(c[g>>2]|
0)+20>>2]|0)+60>>2]|0)Va[c[(c[(c[g>>2]|0)+20>>2]|0)+60>>2]&63](c[f>
x3e;2]|0);Fb(c[e>>2]|0,c[(c[f>>2]|0)+40>>2]|0);c[(c[f>>2]|0)+40>>2]=0;Fb(c[e
x3e;>2]|0,c[f>>2]|0);c[f>>2]=0;i=h;return}function zd(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;c[f>>2]=a;c[g>>2]=b
;c[h>>2]=d;c[j>>2]=e;c[k>>2]=c[c[f>>2]>>2];while(1){if(!(c[k>>2]|0))
break;c[m>>2]=c[(c[k>>2]|0)+4>>2];c[l>>2]=c[(c[k>>2]|0)+8>>2];if(c[g
>>2]|0)Ua[c[g>>2]&31](c[h>>2]|0,c[l>>2]|0,c[j>>2]|0);Fb(c[h>>2]|
0,c[k>>2]|0);c[k>>2]=0;c[k>>2]=c[m>>2]}c[c[f>>2]>>2]=0;c[(c[f>
x3e;2]|0)+4>>2]=0;i=n;return}function Ad(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;s=i;i=i+48|0;h=s+28|0;j=s+24|0;k=s+20|0;l=s+32|0;m=s+16|0;p=s+12|0;q=s+8|0;o=s+4|0;n=s;c[j>>2]=b;c[k>>2]=
e;a[l>>0]=f;c[m>>2]=g;if(!(c[(c[j>>2]|0)+8>>2]&2)){c[h>>2]=35;r=c[h>
x3e;2]|0;i=s;return r|0}if(c[c[k>>2]>>2]|0){c[h>>2]=7;r=c[h>>2]|0;i=s;return r|0}b=c[(c[
k>>2]|0)+4>>2]|0;if(c[(c[k>>2]|0)+12>>2]|0)b=((_(b,c[(c[k>>2]|0)+12>>
;2]|0)|0)+36|0)/72|0;c[q>>2]=b;b=c[(c[k>>2]|0)+8>>2]|0;if(c[(c[k>>2]|0)+16>>2]|
0)b=((_(b,c[(c[k>>2]|0)+16>>2]|0)|0)+36|0)/72|0;c[o>>2]=b;if(c[(c[k>>2]|0)+4>>
2]|0?!(c[(c[k>>2]|0)+8>>2]|0):0)c[o>>2]=c[q>>2];else r=12;if(((r|0)==12?(c[(c[k>>
;2]|0)+4>>2]|0)==0:0)?c[(c[k>>2]|0)+8>>2]|0:0)c[q>>2]=c[o>>2];c[q>>2
]=(c[q>>2]|0)+32&-64;c[o>>2]=(c[o>>2]|0)+32&-64;c[p>>2]=0;while(1){if((c[p>
;>2]|0)>=(c[(c[j>>2]|0)+28>>2]|0)){r=24;break}c[n>>2]=(c[(c[j>>2]|0)+32>
x3e;2]|0)+(c[p>>2]<<4);if((c[o>>2]|0)==((c[(c[n>>2]|0)+12>>2]|0)+32&-64|0
)){if((c[q>>2]|0)==((c[(c[n>>2]|0)+8>>2]|0)+32&-64|0))break;if(d[l>>0]|0|0)break}c[
p>>2]=(c[p>>2]|0)+1}if((r|0)==24){c[h>>2]=23;r=c[h>>2]|0;i=s;return r|0}if(c[m>>
;2]|0)c[c[m>>2]>>2]=c[p>>2];c[h>>2]=0;r=c[h>>2]|0;i=s;return r|0}function Bd(a
,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c
[(c[d>>2]|0)+4>>2];if((c[(c[d>>2]|0)+12>>2]|0)<0){if((c[f>>2]|0)<(c[(
c[d>>2]|0)+12>>2]|0))c[f>>2]=c[(c[d>>2]|0)+12>>2]}else if((c[(c[d>>2
]|0)+12>>2]|0)>0)c[f>>2]=(c[f>>2]|0)-(c[(c[d>>2]|0)+12>>2]|0);if(!(c[e>
;>2]|0))c[e>>2]=((c[f>>2]|0)*12|0)/10|0;c[(c[d>>2]|0)+20>>2]=(c[(c[d>>2]|
0)+8>>2]|0)-((c[(c[d>>2]|0)+16>>2]|0)/2|0);c[(c[d>>2]|0)+24>>2]=((c[e>>
;2]|0)-(c[f>>2]|0)|0)/2|0;c[(c[d>>2]|0)+28>>2]=c[e>>2];i=g;return}function Cd(a,d){a=a|0
;d=d|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;f=j+12|0;k=j+8|0;h=j+4|0;g=j;c[f>>2]=a;c[k>>2]=d;c[h>>
2]=(c[(c[f>>2]|0)+88>>2]|0)+12;c[g>>2]=(c[(c[f>>2]|0)+32>>2]|0)+(c[k>>
;2]<<4);b[c[h>>2]>>1]=(c[(c[g>>2]|0)+8>>2]|0)+32>>6;b[(c[h>>
;2]|0)+2>>1]=(c[(c[g>>2]|0)+12>>2]|0)+32>>6;if(c[(c[f>>2]|0)+8>>2]
x26;1|0){k=Vb(c[(c[g>>2]|0)+8>>2]|0,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[h>>2]|0)+4
x3e;>2]=k;k=Vb(c[(c[g>>2]|0)+12>>2]|0,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[h>>2
]|0)+8>>2]=k;Dd(c[f>>2]|0,c[h>>2]|0);i=j;return}else{c[(c[h>>2]|0)+4>>2]=65536
;c[(c[h>>2]|0)+8>>2]=65536;c[(c[h>>2]|0)+12>>2]=c[(c[g>>2]|0)+12>>2];
c[(c[h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+20>>2]=b[c[g>>2]>>1]<<
;6;c[(c[h>>2]|0)+24>>2]=c[(c[g>>2]|0)+8>>2];i=j;return}}function Dd(a,d){a=a|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]=a;c[f>>2]=d;d=(Mb(b[(c[g>>2]|0)+70>>1]|0,c
[(c[f>>2]|0)+8>>2]|0)|0)+63&-64;c[(c[f>>2]|0)+12>>2]=d;d=(Mb(b[(c[g>>2]|0
)+72>>1]|0,c[(c[f>>2]|0)+8>>2]|0)|0)&-64;c[(c[f>>2]|0)+16>>2]=d;d=(Mb(b[(
c[g>>2]|0)+74>>1]|0,c[(c[f>>2]|0)+8>>2]|0)|0)+32&-64;c[(c[f>>2]|0)+20>
;>2]=d;d=(Mb(b[(c[g>>2]|0)+76>>1]|0,c[(c[f>>2]|0)+4>>2]|0)|0)+32&-64;c[(c[f>
;>2]|0)+24>>2]=d;i=e;return}function Ed(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;o=i;i=i+32|0;j=o
+24|0;k=o+20|0;l=o+16|0;h=o+12|0;g=o+8|0;n=o+4|0;m=o;c[j>>2]=a;c[k>>2]=d;c[l>>2]=(c[(c[j>>
;2]|0)+88>>2]|0)+12;if(!(c[(c[j>>2]|0)+8>>2]&1)){n=c[l>>2]|0;c[n>>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[(c[l>>2]|0)+4>>2]=65536;c[(c[l>>2]|0)+8>>2]=65536;i=o;return}c[h>>2]=0
;c[g>>2]=0;c[n>>2]=0;c[m>>2]=0;a:do switch(c[c[k>>2]>>2]|0){case 0:{f=e[(c[j
x3e;>2]|0)+68>>1]|0;c[g>>2]=f;c[h>>2]=f;f=11;break}case 1:{f=(b[(c[j>>2]|0)+70>
;>1]|0)-(b[(c[j>>2]|0)+72>>1]|0)|0;c[g>>2]=f;c[h>>2]=f;f=11;break}case 2:{c[h>
x3e;2]=(c[(c[j>>2]|0)+52+8>>2]|0)-(c[(c[j>>2]|0)+52>>2]|0);c[g>>2]=(c[(c[j>
;>2]|0)+52+12>>2]|0)-(c[(c[j>>2]|0)+52+4>>2]|0);f=11;break}case 3:{c[h>>2]=b[(c[j
x3e;>2]|0)+76>>1];c[g>>2]=(b[(c[j>>2]|0)+70>>1]|0)-(b[(c[j>>2]|0)+72>
;>1]|0);f=11;break}case 4:{c[(c[l>>2]|0)+4>>2]=c[(c[k>>2]|0)+4>>2];c[(c[l>>
;2]|0)+8>>2]=c[(c[k>>2]|0)+8>>2];a=c[(c[l>>2]|0)+8>>2]|0;if(!(c[(c[l>>
;2]|0)+4>>2]|0)){c[(c[l>>2]|0)+4>>2]=a;break a}if(!a)c[(c[l>>2]|0)+8>>2]=c[(c[
l>>2]|0)+4>>2];break}default:f=11}while(0);do if((f|0)==11){if((c[h>>2]|0)<0)c[h>>2
]=0-(c[h>>2]|0);if((c[g>>2]|0)<0)c[g>>2]=0-(c[g>>2]|0);a=c[(c[k>>2]|0)+4
x3e;>2]|0;if(c[(c[k>>2]|0)+12>>2]|0)a=((_(a,c[(c[k>>2]|0)+12>>2]|0)|0)+36|0)/72|0;c
[n>>2]=a;a=c[(c[k>>2]|0)+8>>2]|0;if(c[(c[k>>2]|0)+16>>2]|0)a=((_(a,c[(c[k>
;>2]|0)+16>>2]|0)|0)+36|0)/72|0;c[m>>2]=a;if(!(c[(c[k>>2]|0)+4>>2]|0)){f=Vb(c[m>
;>2]|0,c[g>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=f;c[(c[l>>2]|0)+4>>2]=f;c[n>
x3e;2]=xb(c[m>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;break}f=Vb(c[n>>2]|0,c[h>>2]|0)|0;c
[(c[l>>2]|0)+4>>2]=f;if(!(c[(c[k>>2]|0)+8>>2]|0)){c[(c[l>>2]|0)+8>>2
]=c[(c[l>>2]|0)+4>>2];c[m>>2]=xb(c[n>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;break
}h=Vb(c[m>>2]|0,c[g>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=h;if((c[c[k>>2]>>2]|
0)==3){a=c[l>>2]|0;if((c[(c[l>>2]|0)+8>>2]|0)>(c[(c[l>>2]|0)+4>>2]|0)){c[(
c[l>>2]|0)+8>>2]=c[a+4>>2];break}else{c[(c[l>>2]|0)+4>>2]=c[a+8>>2];
break}}}while(0);if(c[c[k>>2]>>2]|0){c[n>>2]=Mb(e[(c[j>>2]|0)+68>>1]|0,c[(c[l
x3e;>2]|0)+4>>2]|0)|0;c[m>>2]=Mb(e[(c[j>>2]|0)+68>>1]|0,c[(c[l>>2]|0)+8
x3e;>2]|0)|0}b[c[l>>2]>>1]=(c[n>>2]|0)+32>>6;b[(c[l>>2]|0)+2>>1
]=(c[m>>2]|0)+32>>6;Dd(c[j>>2]|0,c[l>>2]|0);i=o;return}function Fd(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0?c[(
c[e>>2]|0)+8>>2]&2|0:0){if((c[f>>2]|0)>=0?(c[f>>2]|0)<(c[(c[e>>
2]|0)+28>>2]|0):0){c[g>>2]=c[(c[(c[e>>2]|0)+96>>2]|0)+20>>2];if(c[(c[g>
x3e;2]|0)+100>>2]|0){c[d>>2]=Ya[c[(c[g>>2]|0)+100>>2]&127](c[(c[e>>2]|0)+
88>>2]|0,c[f>>2]|0)|0;b=c[d>>2]|0;i=h;return b|0}else{Cd(c[e>>2]|0,c[f>>2]|0);
c[d>>2]=0;b=c[d>>2]|0;i=h;return b|0}}c[d>>2]=6;b=c[d>>2]|0;i=h;return b|0}c[d>>
;2]=35;b=c[d>>2]|0;i=h;return b|0}function Gd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e
=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=35;j=c
[d>>2]|0;i=k;return j|0}if(((c[f>>2]|0?(c[(c[f>>2]|0)+4>>2]|0)>=0:0)?(c[(c[f>
x3e;2]|0)+8>>2]|0)>=0:0)?(c[c[f>>2]>>2]|0)>>>0<5:0){c[g>>2]=c[(
c[(c[e>>2]|0)+96>>2]|0)+20>>2];if(c[(c[g>>2]|0)+96>>2]|0){c[d>>2]=Ya
[c[(c[g>>2]|0)+96>>2]&127](c[(c[e>>2]|0)+88>>2]|0,c[f>>2]|0)|0;j=c[d>
;>2]|0;i=k;return j|0}if((c[(c[e>>2]|0)+8>>2]&1|0)==0?c[(c[e>>2]|0)+8>>2]&
;2|0:0){c[h>>2]=Ad(c[e>>2]|0,c[f>>2]|0,0,j)|0;if(c[h>>2]|0){c[d>>2]=c[h>
x3e;2];j=c[d>>2]|0;i=k;return j|0}else{c[d>>2]=Fd(c[e>>2]|0,c[j>>2]|0)|0;j=c[d>>
;2]|0;i=k;return j|0}}Ed(c[e>>2]|0,c[f>>2]|0);c[d>>2]=0;j=c[d>>2]|0;i=k;return j|0}c[d
x3e;>2]=6;j=c[d>>2]|0;i=k;return j|0}function Hd(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;n=i;i=i+48|0;g=n+36|0;h=n+32|0;j=n+28|0;k=n+24|0;l=n+20|0;m=n;c[g>>2]=a;c[h>>2]=b;c[j>>2]=
d;c[k>>2]=e;c[l>>2]=f;d=c[j>>2]|0;if(c[h>>2]|0){if(!d)c[j>>2]=c[h>>2
]}else c[h>>2]=d;d=c[l>>2]|0;if(c[k>>2]|0){if(!d)c[l>>2]=c[k>>2]}else c[k>
;>2]=d;if((c[h>>2]|0)<64)c[h>>2]=64;if((c[j>>2]|0)<64)c[j>>2]=64;if(!(c[k
>>2]|0)){c[l>>2]=72;c[k>>2]=72}c[m>>2]=0;c[m+4>>2]=c[h>>2];c[m+8>
;>2]=c[j>>2];c[m+12>>2]=c[k>>2];c[m+16>>2]=c[l>>2];m=Gd(c[g>>2]|
0,m)|0;i=n;return m|0}function Id(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+16|0;g=j+12|0;d=j+8|0;h=j+4|0;e=
j;c[g>>2]=a;c[d>>2]=b;if(!(c[g>>2]|0)){c[f>>2]=35;h=c[f>>2]|0;i=j;return h|0}if
(!(c[d>>2]|0)){c[f>>2]=6;h=c[f>>2]|0;i=j;return h|0}b=c[g>>2]|0;if((c[d>>2]|0)==
1970170211){c[f>>2]=Hc(b)|0;h=c[f>>2]|0;i=j;return h|0}c[h>>2]=c[b+40>>2];if(!(c[h>
x3e;2]|0)){c[f>>2]=38;h=c[f>>2]|0;i=j;return h|0}c[e>>2]=(c[h>>2]|0)+(c[(c[g>>
2]|0)+36>>2]<<2);while(1){if((c[h>>2]|0)>>>0>=(c[e>>2]|0)>>
;>0){b=15;break}if((c[(c[c[h>>2]>>2]|0)+4>>2]|0)==(c[d>>2]|0)?(((c[h>>2]|
0)-(c[(c[g>>2]|0)+40>>2]|0)|0)/4|0|0)<=15:0){b=13;break}c[h>>2]=(c[h>>2]|0)+4}if((b
|0)==13){c[(c[g>>2]|0)+92>>2]=c[c[h>>2]>>2];c[f>>2]=0;h=c[f>>2]|0;i=
j;return h|0}else if((b|0)==15){c[f>>2]=6;h=c[f>>2]|0;i=j;return h|0}return 0}function Jd(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+16|0;g=j+12|0;d=j+8|0;h=j+4|0;e=j;c[g>>2]=a;c[d>>2]=b;if(!(c[g>
;>2]|0)){c[f>>2]=35;h=c[f>>2]|0;i=j;return h|0}c[h>>2]=c[(c[g>>2]|0)+40>>
2];if(!(c[h>>2]|0)){c[f>>2]=38;h=c[f>>2]|0;i=j;return h|0}if((Kd(c[d>>2]|0)|0)==14){c[f
x3e;>2]=6;h=c[f>>2]|0;i=j;return h|0}c[e>>2]=(c[h>>2]|0)+(c[(c[g>>2]|0)+36>>
;2]<<2);while(1){if((c[h>>2]|0)>>>0>=(c[e>>2]|0)>>>0){d=13;break
}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)?(((c[h>>2]|0)-(c[(c[g>>2]|0)+40>>
2]|0)|0)/4|0|0)<=15:0){d=11;break}c[h>>2]=(c[h>>2]|0)+4}if((d|0)==11){c[(c[g>>2]|0)+92>
x3e;2]=c[c[h>>2]>>2];c[f>>2]=0;h=c[f>>2]|0;i=j;return h|0}else if((d|0)==13){c[f>
x3e;2]=6;h=c[f>>2]|0;i=j;return h|0}return 0}function Kd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;b=k
+28|0;d=k+24|0;j=k+20|0;g=k+16|0;f=k+8|0;h=k+4|0;e=k;c[d>>2]=a;if(c[d>>2]|0?c[c[d>>2]>>2
]|0:0){c[g>>2]=c[c[d>>2]>>2];c[h>>2]=c[(c[g>>2]|0)+96>>2];c[e>
x3e;2]=0;if(c[(c[c[h>>2]>>2]|0)+32>>2]|0)c[e>>2]=Ya[c[(c[c[h>>2]>>2]|
0)+32>>2]&127](c[h>>2]|0,11426)|0;c[j>>2]=c[e>>2];if(!(c[j>>2]|0)){c[b>
;>2]=-1;j=c[b>>2]|0;i=k;return j|0}if(Ya[c[c[j>>2]>>2]&127](c[d>>2]|0,f)|0){c[
b>>2]=-1;j=c[b>>2]|0;i=k;return j|0}else{c[b>>2]=c[f+4>>2];j=c[b>>2]|0;i=k;return
j|0}}c[b>>2]=-1;j=c[b>>2]|0;i=k;return j|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,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;f=q+32|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;l=q;c[g>>
;2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=0;if(!((c[g>>2]|0)==0|(c[j>
x3e;2]|0)==0)?c[c[j>>2]>>2]|0:0){c[n>>2]=c[c[j>>2]>>2];c[o>>2]=c[(c[
n>>2]|0)+100>>2];c[l>>2]=bc(c[o>>2]|0,c[c[g>>2]>>2]|0,m)|0;do if(!(c
[m>>2]|0)){b=c[l>>2]|0;a=c[j>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4
x3e;>2];c[b+8>>2]=c[a+8>>2];c[(c[l>>2]|0)+12>>2]=c[g>>2];if(!(c[(c[g>
;>2]|0)+4>>2]|0?(c[m>>2]=Ya[c[(c[g>>2]|0)+4>>2]&127](c[l>>2]|0,c[h
x3e;>2]|0)|0,(c[m>>2]|0)!=0):0))p=7;if((p|0)==7?(p=hc(c[o>>2]|0,4,c[(c[n>>2]|0)+36>>
;2]|0,(c[(c[n>>2]|0)+36>>2]|0)+1|0,c[(c[n>>2]|0)+40>>2]|0,m)|0,c[(c[n>>2]|0)+40
>>2]=p,(c[m>>2]|0)==0):0){o=c[l>>2]|0;b=(c[n>>2]|0)+36|0;p=c[b>>2]|0;c[b>
x3e;2]=p+1;c[(c[(c[n>>2]|0)+40>>2]|0)+(p<<2)>>2]=o;break}Jc(c[l>>2]|0);c[l>
;>2]=0}while(0);if(c[k>>2]|0)c[c[k>>2]>>2]=c[l>>2];c[f>>2]=c[m>>
;2];p=c[f>>2]|0;i=q;return p|0}c[f>>2]=6;p=c[f>>2]|0;i=q;return p|0}function Md(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;m=i;i=i+32|0;e=m+24|0;f=m+20|0;g=m+16|0;l=m+12|0;k=m+8|0;j=m+4|0;h=m;c[e>>2
]=a;c[f>>2]=b;c[g>>2]=d;c[l>>2]=0;c[k>>2]=0;if((c[e>>2]|0?c[(c[e>>2]|
0)+92>>2]|0:0)?c[(c[e>>2]|0)+16>>2]|0:0){c[j>>2]=c[f>>2];c[h>>2]=c[(
c[e>>2]|0)+92>>2];do c[k>>2]=Ya[c[(c[(c[h>>2]|0)+12>>2]|0)+16>>2]&
;127](c[h>>2]|0,j)|0;while((c[k>>2]|0)>>>0>=(c[(c[e>>2]|0)+16>>2]|0)
x3e;>>0);c[l>>2]=(c[k>>2]|0)==0?0:c[j>>2]|0}if(!(c[g>>2]|0)){l=c[l>>
2]|0;i=m;return l|0}c[c[g>>2]>>2]=c[k>>2];l=c[l>>2]|0;i=m;return l|0}function Nd(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;p=i;i=i+48|0;d=p+36|0;e=p+32|0;f=p+28|0;j=p+24|0;k=p+20|0;l=p+16|0
;m=p+12|0;g=p+8|0;h=p+4|0;n=p;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=33;o=c[d>
;>2]|0;i=p;return o|0}if(!(c[f>>2]|0)){c[d>>2]=6;o=c[d>>2]|0;i=p;return o|0}if((c[(c[f>
x3e;2]|0)+16>>2]|0)>131076){c[d>>2]=4;o=c[d>>2]|0;i=p;return o|0}c[m>>2]=0;while(1){
if((c[m>>2]|0)>>>0>=(c[(c[e>>2]|0)+24>>2]|0)>>>0)break;c[l>
;>2]=c[(c[e>>2]|0)+28+(c[m>>2]<<2)>>2];if(!(Kr(c[(c[c[l>>2]>>2]|
0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0)){o=10;break}c[m>>2]=(c[m>>2]|0)+1}do if((
o|0)==10){if((c[(c[f>>2]|0)+12>>2]|0)>(c[(c[c[l>>2]>>2]|0)+12>>2]|0)){Od(
c[e>>2]|0,c[l>>2]|0)|0;break}c[d>>2]=5;o=c[d>>2]|0;i=p;return o|0}while(0);c[k>>
;2]=c[c[e>>2]>>2];c[j>>2]=0;a:do if((c[(c[e>>2]|0)+24>>2]|0)>>>
0<32){c[l>>2]=bc(c[k>>2]|0,c[(c[f>>2]|0)+4>>2]|0,j)|0;if(!(c[j>>2]|0)){c[(
c[l>>2]|0)+4>>2]=c[e>>2];c[(c[l>>2]|0)+8>>2]=c[k>>2];c[c[l>>
;2]>>2]=c[f>>2];if(!(c[c[c[l>>2]>>2]>>2]&2|0?(c[j>>2]=Td(c[l>
;>2]|0)|0,(c[j>>2]|0)!=0):0))o=19;do if((o|0)==19){if(c[c[c[l>>2]>>2]>>2]&4|0)
c[(c[e>>2]|0)+168>>2]=c[l>>2];if((c[c[c[l>>2]>>2]>>2]&1|0?(c[g
x3e;>2]=c[l>>2],c[(c[g>>2]|0)+20>>2]=c[c[l>>2]>>2],(c[c[c[g>>2]
x3e;>2]>>2]&512|0)==0):0)?(c[j>>2]=ac(c[k>>2]|0,(c[g>>2]|0)+36|0)|0,c[j>
x3e;2]|0):0)break;if(c[(c[f>>2]|0)+24>>2]|0?(c[j>>2]=Ta[c[(c[f>>2]|0)+24>>2]
x26;63](c[l>>2]|0)|0,c[j>>2]|0):0)break;n=c[l>>2]|0;m=(c[e>>2]|0)+24|0;o=c[m>>
2]|0;c[m>>2]=o+1;c[(c[e>>2]|0)+28+(o<<2)>>2]=n;break a}while(0);if(c[c[c[l>>2]
x3e;>2]>>2]&1|0?(c[h>>2]=c[l>>2],(c[c[c[h>>2]>>2]>>2]&
;512|0)==0):0)fc(c[(c[h>>2]|0)+36>>2]|0);if((c[c[c[l>>2]>>2]>>2]&2|0?(c[n
>>2]=c[l>>2],(c[(c[(c[n>>2]|0)+20>>2]|0)+36>>2]|0)==1869968492):0)?c[(c[n>
;>2]|0)+60>>2]|0:0)Va[c[(c[(c[(c[n>>2]|0)+20>>2]|0)+56>>2]|0)+20>>2]&
;63](c[(c[n>>2]|0)+60>>2]|0);Fb(c[k>>2]|0,c[l>>2]|0);c[l>>2]=0}}else c[j>
x3e;2]=48;while(0);c[d>>2]=c[j>>2];o=c[d>>2]|0;i=p;return o|0}function Od(a,b){a=a|0;b=b|0;var d=0
,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;if(!(c[e>
x3e;2]|0)){c[d>>2]=33;b=c[d>>2]|0;i=j;return b|0}a:do if(c[f>>2]|0){c[g>>2]=(c[e>
x3e;2]|0)+28;c[h>>2]=(c[g>>2]|0)+(c[(c[e>>2]|0)+24>>2]<<2);while(1){if((c[g>
;>2]|0)>>>0>=(c[h>>2]|0)>>>0)break a;if((c[c[g>>2]>>2]|0)==(
c[f>>2]|0))break;c[g>>2]=(c[g>>2]|0)+4}b=(c[e>>2]|0)+24|0;c[b>>2]=(c[b>
x3e;2]|0)+-1;c[h>>2]=(c[h>>2]|0)+-4;while(1){if((c[g>>2]|0)>>>0>=(c[h>>
;2]|0)>>>0)break;c[c[g>>2]>>2]=c[(c[g>>2]|0)+4>>2];c[g>>2]=(c[g
>>2]|0)+4}c[c[h>>2]>>2]=0;Pd(c[f>>2]|0);c[d>>2]=0;b=c[d>>2]|0;i=j;return
b|0}while(0);c[d>>2]=34;b=c[d>>2]|0;i=j;return b|0}function Pd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|
0;b=g+12|0;f=g+8|0;d=g+4|0;e=g;c[b>>2]=a;c[f>>2]=c[(c[b>>2]|0)+8>>2];c[d>>2]=c
[c[b>>2]>>2];c[e>>2]=c[(c[b>>2]|0)+4>>2];if(c[(c[b>>2]|0)+12+4>
x3e;2]|0)Va[c[(c[b>>2]|0)+12+4>>2]&63](c[b>>2]|0);if(c[e>>2]|0?(c[(c[e>>2
]|0)+168>>2]|0)==(c[b>>2]|0):0)c[(c[e>>2]|0)+168>>2]=0;if(c[c[c[b>>2]>>
;2]>>2]&2|0)Qd(c[b>>2]|0);if(c[c[c[b>>2]>>2]>>2]&1|0)Sd(c[b>>
;2]|0);if(!(c[(c[d>>2]|0)+28>>2]|0)){f=c[f>>2]|0;a=c[b>>2]|0;Fb(f,a);c[b>>2]=0
;i=g;return}Va[c[(c[d>>2]|0)+28>>2]&63](c[b>>2]|0);f=c[f>>2]|0;a=c[b>>2]|
0;Fb(f,a);c[b>>2]=0;i=g;return}function Qd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0
;f=h+4|0;g=h;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+4>>2];c[e>>2]=c[c[d>>2]
x3e;>2];c[f>>2]=Rb((c[d>>2]|0)+156|0,c[b>>2]|0)|0;if(!(c[f>>2]|0)){i=h;return}c[g
x3e;>2]=c[b>>2];if((c[(c[(c[g>>2]|0)+20>>2]|0)+36>>2]|0)==1869968492?c[(c[g>
x3e;2]|0)+60>>2]|0:0)Va[c[(c[(c[(c[g>>2]|0)+20>>2]|0)+56>>2]|0)+20>>2]&63
](c[(c[g>>2]|0)+60>>2]|0);wd((c[d>>2]|0)+156|0,c[f>>2]|0);Fb(c[e>>2]|0,c[f>
;>2]|0);c[f>>2]=0;Rd(c[d>>2]|0);i=h;return}function Rd(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]=Jb(c[d>>2]|0,1869968492,0)|0;c[(c[d>>2]|0)+164>>2]=c[e>
;>2];i=b;return}function Sd(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;zd((c[b>>2]|0)+24|0,8,c[(c[
b>>2]|0)+8>>2]|0,c[b>>2]|0);if(c[c[c[b>>2]>>2]>>2]&512|0){i=d;return
}fc(c[(c[b>>2]|0)+36>>2]|0);i=d;return}function Td(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+
32|0;b=l+24|0;f=l+20|0;g=l+16|0;e=l+12|0;h=l+8|0;j=l+4|0;d=l;c[b>>2]=a;c[f>>2]=c[(c[b>>2]|0)+4>
;>2];c[g>>2]=c[c[f>>2]>>2];c[h>>2]=0;c[h>>2]=bc(c[g>>2]|0,12,e)|
0;if(c[e>>2]|0){k=c[e>>2]|0;i=l;return k|0}c[j>>2]=c[b>>2];c[d>>2]=c[c[b>
x3e;2]>>2];c[(c[j>>2]|0)+20>>2]=c[d>>2];c[(c[j>>2]|0)+24>>2]=c[(c[d
x3e;>2]|0)+36>>2];if((c[(c[d>>2]|0)+36>>2]|0)==1869968492?c[(c[(c[d>>2]|0)+56>
x3e;2]|0)+4>>2]|0:0){c[e>>2]=Ya[c[(c[(c[d>>2]|0)+56>>2]|0)+4>>2]&127](c[g
>>2]|0,(c[j>>2]|0)+60|0)|0;if(!(c[e>>2]|0)){c[(c[j>>2]|0)+64>>2]=c[(c[(c[d>
;>2]|0)+56>>2]|0)+16>>2];c[(c[j>>2]|0)+68>>2]=c[(c[d>>2]|0)+40>>
;2];k=6}}else k=6;if((k|0)==6){c[(c[h>>2]|0)+8>>2]=c[b>>2];td((c[f>>2]|0)+156|0,c[h>
;>2]|0);Rd(c[f>>2]|0)}if(!(c[e>>2]|0)){k=c[e>>2]|0;i=l;return k|0}Fb(c[g>>2]|0,c[h
x3e;>2]|0);c[h>>2]=0;k=c[e>>2]|0;i=l;return k|0}function Ud(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]=Wc(c[g>>2]|0,c[f>>2]|0)|
0;if(!(c[d>>2]|0)){g=0;i=e;return g|0}g=c[(c[c[d>>2]>>2]|0)+20>>2]|0;i=e;return g|0}function
Vd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;j=k+12|0;g=k+8|0;f=k+4|0;h=k;c[d>>
2]=a;c[e>>2]=b;c[j>>2]=0;if(!(c[d>>2]|0)){j=c[j>>2]|0;i=k;return j|0}if(c[(c[c[d>
x3e;2]>>2]|0)+32>>2]|0)c[j>>2]=Ya[c[(c[c[d>>2]>>2]|0)+32>>2]&127
](c[d>>2]|0,c[e>>2]|0)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}c[g>>2]=c[(c
[d>>2]|0)+4>>2];c[f>>2]=(c[g>>2]|0)+28;c[h>>2]=(c[f>>2]|0)+(c[(c[g
x3e;>2]|0)+24>>2]<<2);while(1){if((c[f>>2]|0)>>>0>=(c[h>>2]|0)
x3e;>>0){d=11;break}if(((c[c[f>>2]>>2]|0)!=(c[d>>2]|0)?c[(c[c[c[f>>2]>>
;2]>>2]|0)+32>>2]|0:0)?(c[j>>2]=Ya[c[(c[c[c[f>>2]>>2]>>2]|0)+32>
;>2]&127](c[c[f>>2]>>2]|0,c[e>>2]|0)|0,c[j>>2]|0):0){d=11;break}c[f>>
;2]=(c[f>>2]|0)+4}if((d|0)==11){j=c[j>>2]|0;i=k;return j|0}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;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=b;c[h>>2]=0;
if(!(c[e>>2]|0)){c[d>>2]=6;a=c[d>>2]|0;i=j;return a|0}c[h>>2]=bc(c[e>>2]|0,200
,g)|0;if(c[g>>2]|0){c[d>>2]=c[g>>2];a=c[d>>2]|0;i=j;return a|0}c[c[h>>2]>
x3e;2]=c[e>>2];c[(c[h>>2]|0)+176>>2]=16384;a=bc(c[e>>2]|0,16384,g)|0;c[(c[h>>2
]|0)+172>>2]=a;if(c[g>>2]|0){Fb(c[e>>2]|0,c[h>>2]|0);c[h>>2]=0;c[d>>
2]=c[g>>2];a=c[d>>2]|0;i=j;return a|0}else{c[(c[h>>2]|0)+12>>2]=2;c[(c[h>>2]|0
)+16>>2]=4;c[(c[h>>2]|0)+20>>2]=4;c[(c[h>>2]|0)+196>>2]=1;c[c[f>>2]
x3e;>2]=c[h>>2];c[d>>2]=0;a=c[d>>2]|0;i=j;return a|0}return 0}function Xd(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;p=i;i=i+48|0;g=p+44|0;h=p+40|0;j=p+36|0;k=p+32|0;l=p+28|0;m=p+24|0
;o=p+4|0;n=p;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>
2]=c[(c[c[h>>2]>>2]|0)+96>>2];if(!(c[(c[(c[n>>2]|0)+20>>2]|0)+96>>2]|
0)){c[g>>2]=0;b=c[g>>2]|0;i=p;return b|0}c[o>>2]=0;c[o+4>>2]=c[j>>2];c[o+8>
;>2]=c[k>>2];if(!(c[l>>2]|0))c[l>>2]=c[m>>2];if(!(c[m>>2]|0))c[m>>
;2]=c[l>>2];if(!(c[l>>2]|0)){c[m>>2]=72;c[l>>2]=72}c[o+12>>2]=c[l>>2
];c[o+16>>2]=c[m>>2];c[g>>2]=Ya[c[(c[(c[n>>2]|0)+20>>2]|0)+96>>2]&
;127](c[h>>2]|0,o)|0;b=c[g>>2]|0;i=p;return b|0}function Yd(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;l=i;i=i+48|0;e=l+36|0;f=l+32|0;g=l+28|0;h=l+24|0;k=l+4|0;j=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=
d;c[j>>2]=c[(c[c[f>>2]>>2]|0)+96>>2];if(c[(c[(c[j>>2]|0)+20>>2]|0)+96
>>2]|0){c[k>>2]=0;c[k+4>>2]=c[g>>2]<<6;c[k+8>>2]=c[h>>2]
x3c;<6;c[k+12>>2]=0;c[k+16>>2]=0;c[e>>2]=Ya[c[(c[(c[j>>2]|0)+20>>2]|0)+96
>>2]&127](c[f>>2]|0,k)|0;b=c[e>>2]|0;i=l;return b|0}else{c[e>>2]=0;b=c[e>>
;2]|0;i=l;return b|0}return 0}function Zd(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,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;E=i;i=i+128|0;g=E+124|0;h=E+120|0;j=E+116|0;k=E+112|0;w=E+104|0;v=E+96|0;y=E+88|0;r=E+84|
0;p=E+80|0;u=E+76|0;m=E+72|0;q=E+68|0;n=E+64|0;t=E+60|0;s=E+56|0;l=E+52|0;o=E+48|0;z=E+40|0;A=E+32|0;x=E+24|0;B=E+16|0;C=E+8|0;D
=E;c[h>>2]=d;c[j>>2]=e;c[k>>2]=f;if(!((c[h>>2]|0)!=0&(c[j>>2]|0)!=0)){c[g
>>2]=6;D=c[g>>2]|0;i=E;return D|0}c[s>>2]=c[(c[j>>2]|0)+16>>2];c[l>>
2]=c[(c[j>>2]|0)+20>>2];c[n>>2]=0;c[q>>2]=0;a:while(1){if((c[q>>2]|0)>=(b
[c[h>>2]>>1]|0)){e=32;break}c[o>>2]=b[(c[(c[h>>2]|0)+12>>2]|0)+(c[q>>
;2]<<1)>>1];if((c[o>>2]|0)<0){e=34;break}c[p>>2]=(c[(c[h>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<3);f=(c[(c[h>>2]|0)+4>>2]|0)+(c[n>>2]<<3)|0;c[y
x3e;>2]=c[f>>2];c[y+4>>2]=c[f+4>>2];c[y>>2]=(c[y>>2]<<c[s>
x3e;2])-(c[l>>2]|0);c[y+4>>2]=(c[y+4>>2]<<c[s>>2])-(c[l>>2]|0);f=(c[(
c[h>>2]|0)+4>>2]|0)+(c[o>>2]<<3)|0;c[w>>2]=c[f>>2];c[w+4>>
2]=c[f+4>>2];c[w>>2]=(c[w>>2]<<c[s>>2])-(c[l>>2]|0);c[w+4>>
;2]=(c[w+4>>2]<<c[s>>2])-(c[l>>2]|0);c[v>>2]=c[y>>2];c[v+4>>
;2]=c[y+4>>2];c[r>>2]=(c[(c[h>>2]|0)+4>>2]|0)+(c[n>>2]<<3);c[u>
x3e;2]=(c[(c[h>>2]|0)+8>>2]|0)+(c[n>>2]|0);c[t>>2]=a[c[u>>2]>>0]&
;3;if((c[t>>2]|0)==2){e=34;break}if(!(c[t>>2]|0)){if((a[(c[(c[h>>2]|0)+8>>2]|0)+(c[o>
;>2]|0)>>0]&3|0)==1){c[y>>2]=c[w>>2];c[y+4>>2]=c[w+4>>2];c[p>
x3e;2]=(c[p>>2]|0)+-8}else{c[y>>2]=((c[y>>2]|0)+(c[w>>2]|0)|0)/2|0;c[y+4>>2]=((
c[y+4>>2]|0)+(c[w+4>>2]|0)|0)/2|0;c[w>>2]=c[y>>2];c[w+4>>2]=c[y+4>>2
]}c[r>>2]=(c[r>>2]|0)+-8;c[u>>2]=(c[u>>2]|0)+-1}c[m>>2]=Ya[c[c[j>>2]
x3e;>2]&127](y,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break}b:while(1){if((c[r>>2]|0)>>
;>0>=(c[p>>2]|0)>>>0){e=29;break}c[r>>2]=(c[r>>2]|0)+8;c[u>>2]=(
c[u>>2]|0)+1;c[t>>2]=a[c[u>>2]>>0]&3;switch(c[t>>2]|0){case 1:{c[z>
x3e;2]=(c[c[r>>2]>>2]<<c[s>>2])-(c[l>>2]|0);c[z+4>>2]=(c[(c[r>
x3e;2]|0)+4>>2]<<c[s>>2])-(c[l>>2]|0);c[m>>2]=Ya[c[(c[j>>2]|0)+4>
;>2]&127](z,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else continue b}case 0:{c[v>>2]=(c[c
[r>>2]>>2]<<c[s>>2])-(c[l>>2]|0);c[v+4>>2]=(c[(c[r>>2]|0)+
4>>2]<<c[s>>2])-(c[l>>2]|0);while(1){if((c[r>>2]|0)>>>0>=(
c[p>>2]|0)>>>0){e=23;break b}c[r>>2]=(c[r>>2]|0)+8;c[u>>2]=(c[u>>
;2]|0)+1;c[t>>2]=a[c[u>>2]>>0]&3;c[A>>2]=(c[c[r>>2]>>2]<
x3c;c[s>>2])-(c[l>>2]|0);c[A+4>>2]=(c[(c[r>>2]|0)+4>>2]<<c[s>
x3e;2])-(c[l>>2]|0);if((c[t>>2]|0)==1)break;if(c[t>>2]|0){e=34;break a}c[x>>2]=((c[v>
;>2]|0)+(c[A>>2]|0)|0)/2|0;c[x+4>>2]=((c[v+4>>2]|0)+(c[A+4>>2]|0)|0)/2|0;c[m>
x3e;2]=Oa[c[(c[j>>2]|0)+8>>2]&63](v,x,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a};c[v
x3e;>2]=c[A>>2];c[v+4>>2]=c[A+4>>2]}c[m>>2]=Oa[c[(c[j>>2]|0)+8>>
;2]&63](v,A,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else continue b}default:{if(((c[r>>2]|0)+
8|0)>>>0>(c[p>>2]|0)>>>0){e=34;break a}if((a[(c[u>>2]|0)+1>>0]
x26;3|0)!=2){e=34;break a}c[r>>2]=(c[r>>2]|0)+16;c[u>>2]=(c[u>>2]|0)+2;c[B>>2]=(
c[(c[r>>2]|0)+-16>>2]<<c[s>>2])-(c[l>>2]|0);c[B+4>>2]=(c[(c[r>
x3e;2]|0)+-16+4>>2]<<c[s>>2])-(c[l>>2]|0);c[C>>2]=(c[(c[r>>2]|0)+-8
x3e;>2]<<c[s>>2])-(c[l>>2]|0);c[C+4>>2]=(c[(c[r>>2]|0)+-8+4>>2]
x3c;<c[s>>2])-(c[l>>2]|0);if((c[r>>2]|0)>>>0>(c[p>>2]|0)>
x3e;>0){e=28;break b}c[D>>2]=(c[c[r>>2]>>2]<<c[s>>2])-(c[l>>2]|
0);c[D+4>>2]=(c[(c[r>>2]|0)+4>>2]<<c[s>>2])-(c[l>>2]|0);c[m>>
;2]=Wa[c[(c[j>>2]|0)+12>>2]&31](B,C,D,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else
continue b}}}if((e|0)==23)c[m>>2]=Oa[c[(c[j>>2]|0)+8>>2]&63](v,y,c[k>>2]|0)|0;else
if((e|0)==28)c[m>>2]=Wa[c[(c[j>>2]|0)+12>>2]&31](B,C,y,c[k>>2]|0)|0;else if((e|0)==
29)c[m>>2]=Ya[c[(c[j>>2]|0)+4>>2]&127](y,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;
break}c[n>>2]=(c[o>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+1}if((e|0)==32){c[g>>2]=0;D=c[
g>>2]|0;i=E;return D|0}else if((e|0)==33){c[g>>2]=c[m>>2];D=c[g>>2]|0;i=E;return D|0}else
if((e|0)==34){c[g>>2]=20;D=c[g>>2]|0;i=E;return D|0}return 0}function _d(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0;l=p+28|0;o=p+24|0;k=p+20|0;n=p+16|0;h=p+12|0;g=p+8|0;j=p+4|0;m=p;c
[e>>2]=a;c[f>>2]=d;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=p;return}a:do if(!(b[(c[e
>>2]|0)+2>>1]|0)){c[l>>2]=0;c[o>>2]=0;c[k>>2]=0;c[n>>2]=0}else{c[h
x3e;>2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=(c[h>>2]|0)+(b[(c[e>>2]|0)+2>>
;1]<<3);a=c[c[h>>2]>>2]|0;c[k>>2]=a;c[l>>2]=a;a=c[(c[h>>2]|0)+4>
;>2]|0;c[n>>2]=a;c[o>>2]=a;c[h>>2]=(c[h>>2]|0)+8;while(1){if((c[h>>2]|0)
x3e;>>0>=(c[g>>2]|0)>>>0)break a;c[j>>2]=c[c[h>>2]>>2];if((
c[j>>2]|0)<(c[l>>2]|0))c[l>>2]=c[j>>2];if((c[j>>2]|0)>(c[k>>
;2]|0))c[k>>2]=c[j>>2];c[m>>2]=c[(c[h>>2]|0)+4>>2];if((c[m>>2]|0)<
;(c[o>>2]|0))c[o>>2]=c[m>>2];if((c[m>>2]|0)>(c[n>>2]|0))c[n>>2]=
c[m>>2];c[h>>2]=(c[h>>2]|0)+8}}while(0);c[c[f>>2]>>2]=c[l>>2];c[(c[f
>>2]|0)+8>>2]=c[k>>2];c[(c[f>>2]|0)+4>>2]=c[o>>2];c[(c[f>>
2]|0)+12>>2]=c[n>>2];i=p;return}function $d(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,o=0,p=0,q=0
,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+128|0;d=F+116|0;e=F+112|0;z=F+108|0;D=F+104|0;C=F+100|0;A=F
+96|0;B=F+92|0;f=F+88|0;l=F+84|0;n=F+80|0;s=F+76|0;r=F+72|0;m=F+68|0;t=F+56|0;u=F+44|0;h=F+40|0;g=F+36|0;k=F+32|0;j=F+28|0;q=F+24
|0;x=F+20|0;o=F+16|0;p=F+12|0;v=F+8|0;w=F+4|0;y=F;c[e>>2]=a;c[z>>2]=32768;c[D>>2]=32768;c[C>
x3e;2]=-32768;c[A>>2]=0;c[B>>2]=0;c[u>>2]=c[42];c[u+4>>2]=c[43];c[u+8>>2]=c[44
];if(c[e>>2]|0?(b[(c[e>>2]|0)+2>>1]|0)>0:0){c[l>>2]=c[(c[e>>2]|0)+4>
x3e;2];c[f>>2]=c[(c[e>>2]|0)+12>>2];while(1){if((c[f>>2]|0)>>>0>=((c
[(c[e>>2]|0)+12>>2]|0)+(b[c[e>>2]>>1]<<1)|0)>>>0)break;c[h>
;>2]=32768;c[g>>2]=-32768;c[k>>2]=32768;c[j>>2]=-32768;c[n>>2]=(c[(c[e>>2
]|0)+4>>2]|0)+(b[c[f>>2]>>1]<<3);if((c[n>>2]|0)>>>0>=((c[l
>>2]|0)+16|0)>>>0){c[r>>2]=c[l>>2];while(1){if((c[r>>2]|0)>>>
;0>(c[n>>2]|0)>>>0)break;if((c[c[r>>2]>>2]|0)<(c[h>>2]|0))c[h
x3e;>2]=c[c[r>>2]>>2];if((c[c[r>>2]>>2]|0)>(c[g>>2]|0))c[g>>
;2]=c[c[r>>2]>>2];if((c[(c[r>>2]|0)+4>>2]|0)<(c[k>>2]|0))c[k>>2
]=c[(c[r>>2]|0)+4>>2];if((c[(c[r>>2]|0)+4>>2]|0)>(c[j>>2]|0))c[j>>
;2]=c[(c[r>>2]|0)+4>>2];c[r>>2]=(c[r>>2]|0)+8}if(((c[h>>2]|0)<(c[z>
x3e;2]|0)?(c[h>>2]|0)!=(c[g>>2]|0):0)?(c[k>>2]|0)!=(c[j>>2]|0):0){c[z>>2]=c[h
x3e;>2];c[D>>2]=c[k>>2];c[C>>2]=c[j>>2];c[A>>2]=c[l>>2];c[B>
;>2]=c[n>>2]}}c[f>>2]=(c[f>>2]|0)+2;c[l>>2]=(c[n>>2]|0)+8}if((c[z>
x3e;2]|0)==32768){c[d>>2]=0;E=c[d>>2]|0;i=F;return E|0}c[t>>2]=((c[D>>2]|0)*3|0)+(c[C>
;>2]|0)>>2;c[t+4>>2]=(c[D>>2]|0)+(c[C>>2]|0)>>1;c[t+8>>2]=(c[D
x3e;>2]|0)+((c[C>>2]|0)*3|0)>>2;c[m>>2]=0;while(1){if((c[m>>2]|0)>=3)break;a:while
(1){c[q>>2]=32768;c[x>>2]=-32768;c[w>>2]=0;c[v>>2]=0;c[p>>2]=0;c[o>>
2]=0;c[s>>2]=c[B>>2];c[r>>2]=c[A>>2];while(1){if((c[r>>2]|0)>>>
0>(c[B>>2]|0)>>>0)break a;if((c[(c[r>>2]|0)+4>>2]|0)==(c[t+(c[m>>2]
x3c;<2)>>2]|0))break;if((c[(c[s>>2]|0)+4>>2]|0)==(c[t+(c[m>>2]<<2)>
x3e;2]|0))break;if(!((c[(c[r>>2]|0)+4>>2]|0)<(c[t+(c[m>>2]<<2)>>2]|0)?(c[(
c[s>>2]|0)+4>>2]|0)<(c[t+(c[m>>2]<<2)>>2]|0):0))E=34;do if((E|0)==34){E=0
;if((c[(c[r>>2]|0)+4>>2]|0)>(c[t+(c[m>>2]<<2)>>2]|0)?(c[(c[s>>2
]|0)+4>>2]|0)>(c[t+(c[m>>2]<<2)>>2]|0):0)break;D=xb((c[c[r>>2]>>
;2]|0)-(c[c[s>>2]>>2]|0)|0,(c[t+(c[m>>2]<<2)>>2]|0)-(c[(c[s>>2]|0)+4
>>2]|0)|0,(c[(c[r>>2]|0)+4>>2]|0)-(c[(c[s>>2]|0)+4>>2]|0)|0)|0;c[y>>
2]=D+(c[c[s>>2]>>2]|0);if((c[y>>2]|0)<(c[q>>2]|0)){c[q>>2]=c[y>>
;2];c[o>>2]=c[s>>2];c[p>>2]=c[r>>2]}if((c[y>>2]|0)>(c[x>>2]|0)){
c[x>>2]=c[y>>2];c[v>>2]=c[s>>2];c[w>>2]=c[r>>2]}}while(0);c[s>
x3e;2]=c[r>>2];c[r>>2]=(c[r>>2]|0)+8}D=t+(c[m>>2]<<2)|0;c[D>>2]=(c[D
>>2]|0)+1}do if((c[o>>2]|0)!=0&(c[v>>2]|0)!=0){if((c[(c[o>>2]|0)+4>>2]|0)
x3c;(c[(c[p>>2]|0)+4>>2]|0)?(c[(c[v>>2]|0)+4>>2]|0)>(c[(c[w>>2]|0)+4>
;>2]|0):0){c[u+(c[m>>2]<<2)>>2]=0;break}if((c[(c[o>>2]|0)+4>>2]|0)>(
c[(c[p>>2]|0)+4>>2]|0)?(c[(c[v>>2]|0)+4>>2]|0)<(c[(c[w>>2]|0)+4>>
;2]|0):0){c[u+(c[m>>2]<<2)>>2]=1;break}c[u+(c[m>>2]<<2)>>2]=2}while(
0);c[m>>2]=(c[m>>2]|0)+1}do if((c[u>>2]|0)!=2){if((c[u>>2]|0)!=(c[u+4>>2]|0)?(
c[u>>2]|0)!=(c[u+8>>2]|0):0)break;c[d>>2]=c[u>>2];E=c[d>>2]|0;i=F;return E|0}while
(0);if((c[u+4>>2]|0)!=2?(c[u+4>>2]|0)==(c[u+8>>2]|0):0){c[d>>2]=c[u+4>>2];E=c[
d>>2]|0;i=F;return E|0}c[d>>2]=0;E=c[d>>2]|0;i=F;return E|0}c[d>>2]=0;E=c[d>>2
]|0;i=F;return E|0}function ae(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;f=h+12|0;g=h+8|0;b=h+4|0;e=h;c[d
x3e;>2]=a;c[f>>2]=c[c[d>>2]>>2];c[g>>2]=c[(c[d>>2]|0)+4>>2];j=c
[f>>2]|0;a=c[g>>2]|0;c[b>>2]=((c[f>>2]|0)>=0?j:0-j|0)|((c[g>>2]|0)>=
0?a:0-a|0);c[e>>2]=0;if((c[b>>2]|0)>=65536){c[b>>2]=c[b>>2]>>16;c[e>
x3e;2]=(c[e>>2]|0)+16}if((c[b>>2]|0)>=256){c[b>>2]=c[b>>2]>>8;c[e>
x3e;2]=(c[e>>2]|0)+8}if((c[b>>2]|0)>=16){c[b>>2]=c[b>>2]>>4;c[e>>
;2]=(c[e>>2]|0)+4}if((c[b>>2]|0)>=4){c[b>>2]=c[b>>2]>>2;c[e>>2]=(
c[e>>2]|0)+2}if((c[b>>2]|0)>=2){c[b>>2]=c[b>>2]>>1;c[e>>2]=(c[e
>>2]|0)+1}a=c[e>>2]|0;if((c[e>>2]|0)<=27){c[e>>2]=27-a;c[c[d>>2]>>
;2]=c[f>>2]<<c[e>>2];c[(c[d>>2]|0)+4>>2]=c[g>>2]<<c[e>
;>2];j=c[e>>2]|0;i=h;return j|0}else{c[e>>2]=a-27;c[c[d>>2]>>2]=c[f>>2]
x3e;>c[e>>2];c[(c[d>>2]|0)+4>>2]=c[g>>2]>>c[e>>2];c[e>>
;2]=0-(c[e>>2]|0);j=c[e>>2]|0;i=h;return j|0}return 0}function be(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k
=0,l=0;l=i;i=i+32|0;h=l+24|0;j=l+20|0;g=l+16|0;e=l+12|0;k=l+8|0;f=l+4|0;d=l;c[h>>2]=a;c[k>>2]=c[c[h>>
;2]>>2];c[f>>2]=c[(c[h>>2]|0)+4>>2];c[j>>2]=0;if((c[k>>2]|0)<0){
c[k>>2]=0-(c[k>>2]|0);c[f>>2]=0-(c[f>>2]|0);c[j>>2]=11796480}if((c[f>>
;2]|0)>0)c[j>>2]=0-(c[j>>2]|0);c[d>>2]=180;a=c[f>>2]|0;b=c[k>>2]<<
;1;if((c[f>>2]|0)<0){c[g>>2]=a+b;c[k>>2]=(c[k>>2]|0)-(c[f>>2]<<
1);c[f>>2]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)-(c[b
x3e;>2]|0)}else{c[g>>2]=a-b;c[k>>2]=(c[k>>2]|0)+(c[f>>2]<<1);c[f>>
;2]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)+(c[b>>2]|0)}
c[e>>2]=0;do{a=c[f>>2]|0;b=c[k>>2]>>c[e>>2];if((c[f>>2]|0)<0){c
[g>>2]=a+b;c[k>>2]=(c[k>>2]|0)-(c[f>>2]>>c[e>>2]);c[f>>2]=
c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)-(c[b>>2]|0)}else
{c[g>>2]=a-b;c[k>>2]=(c[k>>2]|0)+(c[f>>2]>>c[e>>2]);c[f>>2
]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)+(c[b>>2]|0)}b=(
c[e>>2]|0)+1|0;c[e>>2]=b}while((b|0)<23);a=c[j>>2]|0;if((c[j>>2]|0)>=0){c[j>
;>2]=a+16&-32;g=c[k>>2]|0;k=c[h>>2]|0;c[k>>2]=g;j=c[j>>2]|0;k=c[h>>2
]|0;k=k+4|0;c[k>>2]=j;i=l;return}else{c[j>>2]=0-(0-a+16&-32);g=c[k>>2]|0;k=c[h>>2]|
0;c[k>>2]=g;j=c[j>>2]|0;k=c[h>>2]|0;k=k+4|0;c[k>>2]=j;i=l;return}}function ce(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;f=i;i=i+48|0;b=f+36|0;e=f+32|0;m=f+28|0;k=f+24|0;n=f+20|0;l=f+16|0;d=f+12|0;h=f+8|0
;j=f+4|0;g=f;c[b>>2]=a;c[e>>2]=c[b>>2];a=c[b>>2]|0;c[b>>2]=(c[b>>2]|
0)>=0?a:0-a|0;c[m>>2]=(c[b>>2]|0)>>>16;c[k>>2]=c[b>>2]&65535;c[
n>>2]=17797;c[l>>2]=47593;c[d>>2]=_(c[n>>2]|0,c[m>>2]|0)|0;a=_(c[n>>
2]|0,c[k>>2]|0)|0;c[h>>2]=a+(_(c[l>>2]|0,c[m>>2]|0)|0);c[j>>2]=(_(c[l>>
;2]|0,c[k>>2]|0)|0)>>>16;c[g>>2]=(c[h>>2]|0)>>>0>=(c[j>>
;2]|0)>>>0?c[h>>2]|0:c[j>>2]|0;c[h>>2]=(c[h>>2]|0)+(c[j>>2]|0);
c[d>>2]=(c[d>>2]|0)+((c[h>>2]|0)>>>16);if((c[h>>2]|0)>>>0
x3e;=(c[g>>2]|0)>>>0){l=c[d>>2]|0;c[b>>2]=l;l=c[e>>2]|0;l=(l|0)>=0;m
=c[b>>2]|0;n=0-m|0;n=l?m:n;i=f;return n|0}c[d>>2]=(c[d>>2]|0)+65536;l=c[d>>2]|0;c[b>
;>2]=l;l=c[e>>2]|0;l=(l|0)>=0;m=c[b>>2]|0;n=0-m|0;n=l?m:n;i=f;return n|0}function de(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;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[j>>2]=b;c[f>
x3e;2]=d;c[g>>2]=ee(c[e>>2]|0,c[j>>2]|0)|0;if(c[g>>2]|0){j=c[g>>2]|0;i=h;return
j|0}c[c[f>>2]>>2]=c[(c[e>>2]|0)+32>>2];c[(c[e>>2]|0)+32>>2]=0;c[(c[
e>>2]|0)+36>>2]=0;j=c[g>>2]|0;i=h;return j|0}function ee(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,
j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;b=c[d>
x3e;2]|0;if(!(c[(c[d>>2]|0)+20>>2]|0)){if((c[b+8>>2]|0)>>>0<(c[(c[d>>
;2]|0)+4>>2]|0)>>>0?((c[(c[d>>2]|0)+4>>2]|0)-(c[(c[d>>2]|0)+8>>
2]|0)|0)>>>0>=(c[e>>2]|0)>>>0:0){c[(c[d>>2]|0)+32>>2]=(c[c[d>
;>2]>>2]|0)+(c[(c[d>>2]|0)+8>>2]|0);c[(c[d>>2]|0)+36>>2]=(c[(c[d>>
;2]|0)+32>>2]|0)+(c[e>>2]|0);h=(c[d>>2]|0)+8|0;c[h>>2]=(c[h>>2]|0)+(c[e>
x3e;2]|0);h=c[f>>2]|0;i=j;return h|0}c[f>>2]=85;h=c[f>>2]|0;i=j;return h|0}c[g>>2]=c[b+28
>>2];if((c[e>>2]|0)>>>0>(c[(c[d>>2]|0)+4>>2]|0)>>>0){
c[f>>2]=85;h=c[f>>2]|0;i=j;return h|0}a=cc(c[g>>2]|0,c[e>>2]|0,f)|0;c[c[d>>2]
x3e;>2]=a;if(c[f>>2]|0){h=c[f>>2]|0;i=j;return h|0}c[h>>2]=Wa[c[(c[d>>2]|0)+20>
;>2]&31](c[d>>2]|0,c[(c[d>>2]|0)+8>>2]|0,c[c[d>>2]>>2]|0,c[e>
x3e;2]|0)|0;if((c[h>>2]|0)>>>0<(c[e>>2]|0)>>>0){Fb(c[g>>2]|0,c[
c[d>>2]>>2]|0);c[c[d>>2]>>2]=0;c[f>>2]=85}c[(c[d>>2]|0)+32>>
;2]=c[c[d>>2]>>2];c[(c[d>>2]|0)+36>>2]=(c[(c[d>>2]|0)+32>>2]|0)+(c[e
>>2]|0);g=(c[d>>2]|0)+8|0;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0);h=c[f>>2]|
0;i=j;return h|0}function fe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>
x3e;2]=b;if(c[d>>2]|0?c[(c[d>>2]|0)+20>>2]|0:0){c[f>>2]=c[(c[d>>2]|0)+28>
x3e;2];Fb(c[f>>2]|0,c[c[e>>2]>>2]|0);c[c[e>>2]>>2]=0}c[c[e>>2]>
x3e;2]=0;i=g;return}function ge(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(c[(c[b>>2]|0)+
20>>2]|0){c[d>>2]=c[(c[b>>2]|0)+28>>2];Fb(c[d>>2]|0,c[c[b>>2]>
x3e;2]|0);c[c[b>>2]>>2]=0}c[(c[b>>2]|0)+32>>2]=0;c[(c[b>>2]|0)+36>>2
]=0;i=e;return}function he(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f;e=f+4|0;c[d>>2]=b;a[e>>0]=0;if((c[(c[d
x3e;>2]|0)+32>>2]|0)>>>0>=(c[(c[d>>2]|0)+36>>2]|0)>>>0){b=
a[e>>0]|0;i=f;return b|0}d=(c[d>>2]|0)+32|0;b=c[d>>2]|0;c[d>>2]=b+1;a[e>>0]=a[
b>>0]|0;b=a[e>>0]|0;i=f;return b|0}function ie(e){e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;f=j+4|0;g=j;h=j+8|0
;c[f>>2]=e;b[h>>1]=0;c[g>>2]=c[(c[f>>2]|0)+32>>2];if(((c[g>>2]|0)+1|
0)>>>0>=(c[(c[f>>2]|0)+36>>2]|0)>>>0){g=c[g>>2]|0;e=c[f>
x3e;2]|0;e=e+32|0;c[e>>2]=g;e=b[h>>1]|0;i=j;return e|0}c[g>>2]=(c[g>>2]|0)+2;b[h>
x3e;1]=a[(c[g>>2]|0)+-2>>0]<<16>>16<<8|d[(c[g>>2]|0)+-2+1>>
;0]<<0;g=c[g>>2]|0;e=c[f>>2]|0;e=e+32|0;c[e>>2]=g;e=b[h>>1]|0;i=j;return e|0}function
je(b){b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=b;c[g>>2]=0;c[f>>2]=c[(c
[e>>2]|0)+32>>2];if(((c[f>>2]|0)+3|0)>>>0>=(c[(c[e>>2]|0)+36>
x3e;2]|0)>>>0){f=c[f>>2]|0;b=c[e>>2]|0;b=b+32|0;c[b>>2]=f;b=c[g>>2]|0;i=h
;return b|0}c[f>>2]=(c[f>>2]|0)+4;c[g>>2]=a[(c[f>>2]|0)+-4>>0]<<24|d
[(c[f>>2]|0)+-4+1>>0]<<16|d[(c[f>>2]|0)+-4+2>>0]<<8|d[(c[f>>
;2]|0)+-4+3>>0]<<0;f=c[f>>2]|0;b=c[e>>2]|0;b=b+32|0;c[b>>2]=f;b=c[g>>
;2]|0;i=h;return b|0}function ke(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+9|0;f=j+4|0;g=j;h=j+8|0;c[f>>
;2]=b;c[g>>2]=d;a[h>>0]=0;c[c[g>>2]>>2]=0;d=c[f>>2]|0;if(c[(c[f>>2]|
0)+20>>2]|0)if((Wa[c[d+20>>2]&31](c[f>>2]|0,c[(c[f>>2]|0)+8>>2]|0,h,1)|0)!=
1)d=6;else d=5;else if((c[d+8>>2]|0)>>>0<(c[(c[f>>2]|0)+4>>2]|0)>>
x3e;0){a[h>>0]=a[(c[c[f>>2]>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)>>0]|0;d=5
}else d=6;if((d|0)==5){g=(c[f>>2]|0)+8|0;c[g>>2]=(c[g>>2]|0)+1;a[e>>0]=a[h>>0]|
0;h=a[e>>0]|0;i=j;return h|0}else if((d|0)==6){c[c[g>>2]>>2]=85;a[e>>0]=0;h=a[e>>
;0]|0;i=j;return h|0}return 0}function le(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;v=i;i
=i+48|0;j=v+36|0;k=v+32|0;l=v+28|0;m=v+24|0;o=v+20|0;p=v+40|0;n=v+16|0;t=v+12|0;s=v+8|0;r=v+4|0;q=v;c[k>>2]=f;c[l>
;>2]=g;c[m>>2]=h;a[p>>0]=0;if(!((c[l>>2]|0)!=0&(c[k>>2]|0)!=0)){c[j>>
;2]=6;u=c[j>>2]|0;i=v;return u|0}c[n>>2]=c[(c[k>>2]|0)+32>>2];c[o>>2]=0;a:while
(1){switch(d[c[l>>2]>>0]|0){case 4:{c[o>>2]=ee(c[k>>2]|0,e[(c[l>>2]|0)+2>
x3e;1]|0)|0;if(c[o>>2]|0)break a;a[p>>0]=1;c[n>>2]=c[(c[k>>2]|0)+32>>2];c[l>
;>2]=(c[l>>2]|0)+4;continue a}case 25:case 24:{c[q>>2]=d[(c[l>>2]|0)+1>>0];if(((c[n
>>2]|0)+(c[q>>2]|0)|0)>>>0>(c[(c[k>>2]|0)+36>>2]|0)>>>
;0){u=8;break a}if((d[c[l>>2]>>0]|0)==24){c[r>>2]=(c[m>>2]|0)+(e[(c[l>>2]|0)+2
>>1]|0);Ss(c[r>>2]|0,c[n>>2]|0,c[q>>2]|0)|0}c[n>>2]=(c[n>>2]|0)+(c[q
>>2]|0);c[l>>2]=(c[l>>2]|0)+4;continue a}case 9:case 8:{h=c[n>>2]|0;c[n>>2]=h+
1;c[t>>2]=d[h>>0];c[s>>2]=24;break}case 12:case 13:{c[n>>2]=(c[n>>2]|0)+2;c[t
x3e;>2]=((d[(c[n>>2]|0)+-2>>0]&65535)<<8|(d[(c[n>>2]|0)+-2+1>>0]&
;65535)<<0)&65535;c[s>>2]=16;break}case 14:case 15:{c[n>>2]=(c[n>>2]|0)+2;c[t>
x3e;2]=((d[(c[n>>2]|0)+-2+1>>0]&65535)<<8|(d[(c[n>>2]|0)+-2>>0]&65535
)<<0)&65535;c[s>>2]=16;break}case 16:case 17:{c[n>>2]=(c[n>>2]|0)+4;c[t>>
2]=d[(c[n>>2]|0)+-4>>0]<<24|d[(c[n>>2]|0)+-4+1>>0]<<16|d[(c[n>
x3e;2]|0)+-4+2>>0]<<8|d[(c[n>>2]|0)+-4+3>>0]<<0;c[s>>2]=0;break}case
18:case 19:{c[n>>2]=(c[n>>2]|0)+4;c[t>>2]=d[(c[n>>2]|0)+-4+3>>0]<<24
|d[(c[n>>2]|0)+-4+2>>0]<<16|d[(c[n>>2]|0)+-4+1>>0]<<8|d[(c[n>
x3e;2]|0)+-4>>0]<<0;c[s>>2]=0;break}case 20:case 21:{c[n>>2]=(c[n>>2]|0)+3;c[t
>>2]=d[(c[n>>2]|0)+-3>>0]<<16|d[(c[n>>2]|0)+-3+1>>0]<<8|d[(
c[n>>2]|0)+-3+2>>0]<<0;c[s>>2]=8;break}case 22:case 23:{c[n>>2]=(c[n>>
;2]|0)+3;c[t>>2]=d[(c[n>>2]|0)+-3+2>>0]<<16|d[(c[n>>2]|0)+-3+1>>0]
x3c;<8|d[(c[n>>2]|0)+-3>>0]<<0;c[s>>2]=8;break}default:{u=19;break a}}if(d[c[l>
;>2]>>0]&1|0)c[t>>2]=c[t>>2]<<c[s>>2]>>c[s>>2];c
[r>>2]=(c[m>>2]|0)+(e[(c[l>>2]|0)+2>>1]|0);switch(d[(c[l>>2]|0)+1>>0
]|0){case 1:{a[c[r>>2]>>0]=c[t>>2];break}case 2:{b[c[r>>2]>>1]=c[t>>
2];break}case 4:{c[c[r>>2]>>2]=c[t>>2];break}default:c[c[r>>2]>>2]=c[t>
x3e;2]}c[l>>2]=(c[l>>2]|0)+4}if((u|0)==8)c[o>>2]=85;else if((u|0)==19)c[(c[k>>2]|0)+32
x3e;>2]=c[n>>2];if(a[p>>0]|0)ge(c[k>>2]|0);c[j>>2]=c[o>>2];u=c[j>>
;2]|0;i=v;return u|0}function me(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+32|0;d=f+16|0;g=f+12|0;e=f+8|0;b=f;c[g>>2]=a
;a=c[g>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];a=c[b+4>>2]|0;if(!(
c[b>>2]|0)){g=c[b+4>>2]|0;c[d>>2]=(a|0)>=0?g:0-g|0;g=c[d>>2]|0;i=f;return g|0}if(!a
){g=c[b>>2]|0;c[d>>2]=(c[b>>2]|0)>=0?g:0-g|0;g=c[d>>2]|0;i=f;return g|0}c[e>
x3e;2]=ae(b)|0;be(b);c[b>>2]=ce(c[b>>2]|0)|0;a=c[b>>2]|0;b=c[e>>2]|0;if((c[e>>
2]|0)>0){c[d>>2]=a+(1<<b-1)>>c[e>>2];g=c[d>>2]|0;i=f;return g|0}else{c[d
x3e;>2]=a<<0-b;g=c[d>>2]|0;i=f;return g|0}return 0}function ne(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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>>2]=a;c[f>>2]=b;c[g
>>2]=d;c[h>>2]=e;c[k>>2]=cc(c[m>>2]|0,c[g>>2]|0,j)|0;if(!((c[j>>2]|0
)==0&(c[f>>2]|0)!=0)){d=c[j>>2]|0;m=c[h>>2]|0;c[m>>2]=d;m=c[k>>2]|0;i=l;return
m|0}Ss(c[k>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;d=c[j>>2]|0;m=c[h>>2]|0;c[m>>
;2]=d;m=c[k>>2]|0;i=l;return m|0}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;j=i;i=i+16|0;e=j+12|0;f=
j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[f>>2]|0)a=(cs(c[f>>2]|0)|
0)+1|0;else a=0;c[h>>2]=a;h=ne(c[e>>2]|0,c[f>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=j;
return h|0}function pe(b,d,e){b=b|0;d=d|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]=b;c[g>
;>2]=d;c[h>>2]=e;while(1){if((c[h>>2]|0)>>>0<=1)break;if(!(a[c[g>>2]>
;>0]|0))break;e=c[g>>2]|0;c[g>>2]=e+1;e=a[e>>0]|0;d=c[f>>2]|0;c[f>>2]=d+1
;a[d>>0]=e;c[h>>2]=(c[h>>2]|0)+-1}a[c[f>>2]>>0]=0;i=j;return (a[c[g>>
;2]>>0]|0)!=0|0}function qe(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]=c[f>>2];if(re(c[e>>2]|0)|0){c[b>>2]=0;f=c[b>>2]|0;i=d;return f|0}else{c[b>
;>2]=153;f=c[b>>2]|0;i=d;return f|0}return 0}function re(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16
|0;d=h+12|0;f=h+8|0;g=h+4|0;e=h;c[d>>2]=a;c[g>>2]=c[(c[d>>2]|0)+8>>2];c[f>>2]=
c[(c[d>>2]|0)+40>>2];do if(!(c[(c[d>>2]|0)+40>>2]|0)){c[f>>2]=bc(c[g>>
;2]|0,608,e)|0;if((c[e>>2]|0)==0?(c[e>>2]=se(c[f>>2]|0,c[g>>2]|0)|0,(c[e>>2]|0
)==0):0){c[(c[d>>2]|0)+40>>2]=c[f>>2];break}c[b>>2]=0;g=c[b>>2]|0;i=h;return g
|0}while(0);c[b>>2]=c[(c[d>>2]|0)+40>>2];g=c[b>>2]|0;i=h;return g|0}function se(a,d){a=a
|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;f=h+8|0;j=h+4|0;g=h;c[f>>2]=a;c[j>>2]=d;c[(c[f>
x3e;2]|0)+8>>2]=c[j>>2];c[(c[f>>2]|0)+432>>2]=32;a=hc(c[j>>2]|0,16,0,c[(c[f>
;>2]|0)+432>>2]|0,0,g)|0;c[(c[f>>2]|0)+436>>2]=a;a=c[f>>2]|0;if(c[g>>2]|0
){te(a)|0;c[e>>2]=c[g>>2];j=c[e>>2]|0;i=h;return j|0}else{b[a+440>>1]=0;b[(c[f>>
;2]|0)+442>>1]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>>2]|0)+388>>2]=0;c[(c[f>
x3e;2]|0)+24>>2]=0;c[(c[f>>2]|0)+392>>2]=0;c[c[f>>2]>>2]=0;c[(c[f>>2
]|0)+4>>2]=0;c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}return 0}function te(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;c[f>>2]=c[(c[e>>2]|0)+8>>2];b[(c[e>>2]|0)+440
>>1]=0;b[(c[e>>2]|0)+442>>1]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);
c[(c[e>>2]|0)+24>>2]=0;c[(c[e>>2]|0)+20>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2
]|0)+436>>2]|0);c[(c[e>>2]|0)+436>>2]=0;c[(c[e>>2]|0)+432>>2]=0;c[(c[e>
x3e;2]|0)+428>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+392>>2]|0);c[(c[e>>2]|0)+392>
;>2]=0;c[(c[e>>2]|0)+388>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[c[e>>2]>>
;2]=0;Fb(c[f>>2]|0,c[e>>2]|0);c[e>>2]=0;i=d;return 0}function ue(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];if(!(c[(c[b>>2]|0)+40>>2]|0)){i=d;return
}te(c[(c[b>>2]|0)+40>>2]|0)|0;c[(c[b>>2]|0)+40>>2]=0;i=d;return}function ve(a,b){a=a|0;b
=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=qc(380,c[f>>2]|0)|0;if(c[g>>2]|0){c[d>>2]=c[g>>2];b=c[d>
x3e;2]|0;i=k;return b|0}if(!(c[e>>2]|0)){c[d>>2]=0;b=c[d>>2]|0;i=k;return b|0}c[j>>2]=Wc
(c[(c[e>>2]|0)+4>>2]|0,11340)|0;if(c[j>>2]|0?(c[h>>2]=c[(c[c[j>>2]>>
2]|0)+20>>2],c[h>>2]|0):0){c[d>>2]=Ya[c[(c[h>>2]|0)+16>>2]&127](c[e>
x3e;2]|0,c[f>>2]|0)|0;b=c[d>>2]|0;i=k;return b|0}c[d>>2]=0;b=c[d>>2]|0;i=k;return b|0}function
we(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;q=i;i=i+48|0;f=q+32|0;g=q+28|0;h=q+24|0;k=q+20|0;j=
q+16|0;o=q+12|0;l=q+8|0;n=q+4|0;m=q;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=0;c[n>>
;2]=c[(c[f>>2]|0)+100>>2];a[(c[f>>2]|0)+708>>0]=0;if((c[(c[f>>2]|0)+712>
x3e;2]|0)==0?(d=xe(c[f>>2]|0,0)|0,c[k>>2]=d,d|0):0){p=c[k>>2]|0;i=q;return p|0}c[j>>2]=c
[(c[f>>2]|0)+712>>2];c[o>>2]=c[(c[j>>2]|0)+8>>2];if((c[g>>2]|0)!=(c[
c[o>>2]>>2]|0)){c[k>>2]=6;p=c[k>>2]|0;i=q;return p|0}c[l>>2]=0;while(1){if((c[
l>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;if((c[(c[h>>2]|0)+(c[l>
;>2]<<2)>>2]|0)<-65536){p=9;break}if((c[(c[h>>2]|0)+(c[l>>2]<<2)>
;>2]|0)>65536){p=9;break}c[l>>2]=(c[l>>2]|0)+1}if((p|0)==9){c[k>>2]=6;p=c[k>>2
]|0;i=q;return p|0}if((c[(c[j>>2]|0)+36>>2]|0)==0?(p=ye(c[f>>2]|0)|0,c[k>>2]=p,p|0):0){p
=c[k>>2]|0;i=q;return p|0}a:do if(!(c[(c[j>>2]|0)+4>>2]|0)){p=hc(c[n>>2]|0,4,0,c[g>
x3e;2]|0,0,k)|0;c[(c[j>>2]|0)+4>>2]=p;if(c[k>>2]|0){p=c[k>>2]|0;i=q;return p|0}else{c[m
x3e;>2]=1;break}}else{c[m>>2]=0;c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c
[g>>2]|0)>>>0)break a;if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[l>>2]<<2
)>>2]|0)!=(c[(c[h>>2]|0)+(c[l>>2]<<2)>>2]|0))break;c[l>>2]=(c[l>
;>2]|0)+1}c[m>>2]=2}while(0);c[c[j>>2]>>2]=c[g>>2];Ss(c[(c[j>>2]|0)+4>
;>2]|0,c[h>>2]|0,c[g>>2]<<2|0)|0;a[(c[f>>2]|0)+708>>0]=1;if(!(c[(c[f>
;>2]|0)+672>>2]|0)){p=c[k>>2]|0;i=q;return p|0}switch(c[m>>2]|0){case 2:{Fb(c[n>>2]|
0,c[(c[f>>2]|0)+672>>2]|0);c[(c[f>>2]|0)+672>>2]=0;c[(c[f>>2]|0)+672>>
;2]=0;ze(c[f>>2]|0,c[(c[f>>2]|0)+104>>2]|0)|0;p=c[k>>2]|0;i=q;return p|0}case 1:{Ae(c[f
x3e;>2]|0,c[(c[f>>2]|0)+104>>2]|0)|0;p=c[k>>2]|0;i=q;return p|0}default:{p=c[k>>2]|
0;i=q;return p|0}}return 0}function xe(b,d){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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,
x=0,y=0;y=i;i=i+96|0;k=y+92|0;s=y+88|0;r=y+84|0;o=y+80|0;f=y+76|0;u=y+72|0;h=y+68|0;m=y+64|0;n=y+60|0;v=y+56|0;p=y+52|0;x=y+48|0
;t=y+44|0;q=y+40|0;l=y+24|0;g=y+4|0;w=y;c[k>>2]=b;c[s>>2]=d;c[r>>2]=c[(c[k>>2]|0)+104>
;>2];c[o>>2]=c[(c[k>>2]|0)+100>>2];c[u>>2]=0;a:do if(!(c[(c[k>>2]|0)+712
x3e;>2]|0)){d=Wa[c[(c[k>>2]|0)+508>>2]&31](c[k>>2]|0,1735811442,c[r>>2]|0,f)|0
;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0}d=Wa[c[(c[k>>2]|0)+508>>2]&31](c[k>
;>2]|0,1719034226,c[r>>2]|0,f)|0;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0}c[h>>
2]=Mc(c[r>>2]|0)|0;d=le(c[r>>2]|0,5428,l)|0;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0
}if(((((((c[l>>2]|0)==65536?(e[l+6>>1]|0|0)==2:0)?(e[l+10>>1]|0|0)==20:0)?(e[l+8>>1]|0|0
)<=16382:0)?(e[l+14>>1]|0|0)==(4+((e[l+8>>1]|0)<<2)|0):0)?(e[l+12>>1]|0|0)<=32511
:0)?(d=(e[l+4>>1]|0)+((e[l+8>>1]|0)*20|0)+(_(e[l+12>>1]|0,e[l+14>>1]|0)|0)|0,d>>
;>0<=(c[f>>2]|0)>>>0):0){f=bc(c[o>>2]|0,40,u)|0;c[(c[k>>2]|0)+712>
x3e;2]=f;if(c[u>>2]|0){x=c[u>>2]|0;i=y;return x|0}f=20+((e[l+8>>1]|0)*24|0)+((e[l+12>>1]|
0)<<3)+((_(e[l+12>>1]|0,e[l+8>>1]|0)|0)<<2)|0;c[(c[(c[k>>2]|0)+712>>
2]|0)+12>>2]=f+((e[l+8>>1]|0)*5|0);c[v>>2]=bc(c[o>>2]|0,c[(c[(c[k>>2]|0)+712
x3e;>2]|0)+12>>2]|0,u)|0;if(c[u>>2]|0){x=c[u>>2]|0;i=y;return x|0}c[(c[(c[k>>2]|0)+
712>>2]|0)+8>>2]=c[v>>2];c[c[v>>2]>>2]=e[l+8>>1];c[(c[v>>2
]|0)+4>>2]=-1;c[(c[v>>2]|0)+8>>2]=e[l+12>>1];c[(c[v>>2]|0)+12>>2]=(c
[v>>2]|0)+20;c[(c[v>>2]|0)+16>>2]=(c[(c[v>>2]|0)+12>>2]|0)+((e[l+8>>
1]|0)*24|0);c[p>>2]=(c[(c[v>>2]|0)+16>>2]|0)+((e[l+12>>1]|0)<<3);c[m>>
;2]=0;while(1){b=c[p>>2]|0;if((c[m>>2]|0)>=(e[l+12>>1]|0|0))break;c[(c[(c[v>>2]|0)+
16>>2]|0)+(c[m>>2]<<3)>>2]=b;c[p>>2]=(c[p>>2]|0)+((e[l+8>>
1]|0)<<2);c[m>>2]=(c[m>>2]|0)+1}c[x>>2]=b;c[m>>2]=0;while(1){if((c[m>>
;2]|0)>=(e[l+8>>1]|0|0))break;c[(c[(c[v>>2]|0)+12>>2]|0)+((c[m>>2]|0)*24|0)>
x3e;2]=c[x>>2];c[x>>2]=(c[x>>2]|0)+5;c[m>>2]=(c[m>>2]|0)+1}h=Kc(c[r>>
;2]|0,(c[h>>2]|0)+(e[l+4>>1]|0)|0)|0;c[u>>2]=h;if(h|0){x=c[u>>2]|0;i=y;return x|0}c[t>
;>2]=c[(c[v>>2]|0)+12>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(e[l+8>>
;1]|0|0))break;h=le(c[r>>2]|0,5464,g)|0;c[u>>2]=h;if(h|0){j=50;break}c[(c[t>>2]|0)+16>>2
]=c[g>>2];c[(c[t>>2]|0)+4>>2]=c[g+4>>2];c[(c[t>>2]|0)+8>>2]=c[g+8>
;>2];c[(c[t>>2]|0)+12>>2]=c[g+12>>2];c[(c[t>>2]|0)+20>>2]=e[g+18>>
;1];a[c[c[t>>2]>>2]>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>24;a[(c[c[t
x3e;>2]>>2]|0)+1>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>16;a[(c[c[t>>
;2]>>2]|0)+2>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>8;a[(c[c[t>>2]>
;>2]|0)+3>>0]=c[(c[t>>2]|0)+16>>2];a[(c[c[t>>2]>>2]|0)+4>>0]=0;
c[t>>2]=(c[t>>2]|0)+24;c[m>>2]=(c[m>>2]|0)+1}if((j|0)==50){x=c[u>>2]|0;i=y;return
x|0}c[q>>2]=c[(c[v>>2]|0)+16>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(e[l
+12>>1]|0|0))break a;j=ee(c[r>>2]|0,4+((e[l+8>>1]|0)<<2)|0)|0;c[u>>2]=j;if(j|0
)break;j=(ie(c[r>>2]|0)|0)&65535;c[(c[q>>2]|0)+4>>2]=j;ie(c[r>>2]|0)|0;c[n>>
;2]=0;while(1){b=c[r>>2]|0;if((c[n>>2]|0)>=(e[l+8>>1]|0|0))break;j=je(b)|0;c[(c[c[q>>
;2]>>2]|0)+(c[n>>2]<<2)>>2]=j;c[n>>2]=(c[n>>2]|0)+1}ge(b);c[m>
x3e;2]=(c[m>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+8}x=c[u>>2]|0;i=y;return x|0}c[u>>2]=
8;x=c[u>>2]|0;i=y;return x|0}while(0);if(!(c[s>>2]|0)){x=c[u>>2]|0;i=y;return x|0}c[v>>2
]=bc(c[o>>2]|0,c[(c[(c[k>>2]|0)+712>>2]|0)+12>>2]|0,u)|0;if(c[u>>2]|0){x=c[u
x3e;>2]|0;i=y;return x|0}Ss(c[v>>2]|0,c[(c[(c[k>>2]|0)+712>>2]|0)+8>>2]|0,c[(c[(c[k
>>2]|0)+712>>2]|0)+12>>2]|0)|0;c[(c[v>>2]|0)+12>>2]=(c[v>>2]|0)+20;c
[(c[v>>2]|0)+16>>2]=(c[(c[v>>2]|0)+12>>2]|0)+((c[c[v>>2]>>2]|0)*24|0
);c[p>>2]=(c[(c[v>>2]|0)+16>>2]|0)+(c[(c[v>>2]|0)+8>>2]<<3);c[w>
;>2]=0;while(1){if((c[w>>2]|0)>>>0>=(c[(c[v>>2]|0)+8>>2]|0)>>
x3e;0)break;c[(c[(c[v>>2]|0)+16>>2]|0)+(c[w>>2]<<3)>>2]=c[p>>2];c[p
x3e;>2]=(c[p>>2]|0)+(c[c[v>>2]>>2]<<2);c[w>>2]=(c[w>>2]|0)+1}c[
t>>2]=c[(c[v>>2]|0)+12>>2];c[x>>2]=c[p>>2];c[w>>2]=0;while(1){if((c[
w>>2]|0)>>>0>=(c[c[v>>2]>>2]|0)>>>0)break;c[c[t>>2]
x3e;>2]=c[x>>2];b=c[t>>2]|0;do if((c[(c[t>>2]|0)+16>>2]|0)!=2003265652){d=c[t>
x3e;2]|0;if((c[b+16>>2]|0)==2003072104){c[d>>2]=10521;break}b=c[t>>2]|0;if((c[d+16>>2]|0
)==1869640570){c[b>>2]=10527;break}if((c[b+16>>2]|0)==1936486004)c[c[t>>2]>>2]=10539}else
c[b>>2]=12384;while(0);c[x>>2]=(c[x>>2]|0)+5;c[t>>2]=(c[t>>2]|0)+24;c[w>
x3e;2]=(c[w>>2]|0)+1}c[c[s>>2]>>2]=c[v>>2];x=c[u>>2]|0;i=y;return x|0}function
ye(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+64|0;b=o+56|0;n=o+52|0;l=o+48|0;d=o+44|0;f=o+40|0;j=o+36|0;
k=o+32|0;h=o+24|0;m=o+20|0;g=o;c[b>>2]=a;c[n>>2]=c[(c[b>>2]|0)+104>>2];c[l>>2]=
c[(c[n>>2]|0)+28>>2];c[d>>2]=c[(c[b>>2]|0)+712>>2];b=Wa[c[(c[b>>2]|0
)+508>>2]&31](c[b>>2]|0,1735811442,c[n>>2]|0,o+28|0)|0;c[f>>2]=b;if(b|0){n=c[f>
;>2]|0;i=o;return n|0}c[h>>2]=Mc(c[n>>2]|0)|0;b=le(c[n>>2]|0,5496,g)|0;c[f>>2]=b;if
(b|0){n=c[f>>2]|0;i=o;return n|0}c[(c[d>>2]|0)+24>>2]=e[g+6>>1];c[(c[d>>2]|0)+
32>>2]=e[g+12>>1];c[m>>2]=(c[h>>2]|0)+(c[g+16>>2]|0);if((c[g>>2]|0)==
65536?(e[g+4>>1]|0|0)==(c[c[(c[d>>2]|0)+8>>2]>>2]&65535|0):0){b=hc(c[l>>2
]|0,4,0,(c[(c[d>>2]|0)+32>>2]|0)+1|0,0,f)|0;c[(c[d>>2]|0)+36>>2]=b;if(c[f>>2]|
0){n=c[f>>2]|0;i=o;return n|0}a=c[n>>2]|0;b=(c[(c[d>>2]|0)+32>>2]|0)+1|0;if((e[g+14>
;>1]|0)&1|0){b=ee(a,b<<2)|0;c[f>>2]=b;if(b|0){n=c[f>>2]|0;i=o;return n|0}c[j>>
2]=0;while(1){if((c[j>>2]|0)>>>0>(c[(c[d>>2]|0)+32>>2]|0)>>>0)break
;b=c[m>>2]|0;b=b+(je(c[n>>2]|0)|0)|0;c[(c[(c[d>>2]|0)+36>>2]|0)+(c[j>>2]<
x3c;2)>>2]=b;c[j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|0)}else{b=ee(a,b<<1)|0;c[f>
x3e;2]=b;if(b|0){n=c[f>>2]|0;i=o;return n|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0
x3e;(c[(c[d>>2]|0)+32>>2]|0)>>>0)break;b=c[m>>2]|0;b=b+(((ie(c[n>>2]|0)|0
)&65535)<<1)|0;c[(c[(c[d>>2]|0)+36>>2]|0)+(c[j>>2]<<2)>>2]=b;c[
j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|0)}if(!(c[(c[d>>2]|0)+24>>2]|0)){n=c[f>>
;2]|0;i=o;return n|0}m=hc(c[l>>2]|0,4,0,_(e[g+4>>1]|0,c[(c[d>>2]|0)+24>>2]|0)|0,0,f)|0;c
[(c[d>>2]|0)+28>>2]=m;if(c[f>>2]|0){n=c[f>>2]|0;i=o;return n|0}m=Kc(c[n>>2]|0,(
c[h>>2]|0)+(c[g+8>>2]|0)|0)|0;c[f>>2]=m;if(m|0){n=c[f>>2]|0;i=o;return n|0}m=ee(c[n>
;>2]|0,(_(c[(c[d>>2]|0)+24>>2]|0,e[g+4>>1]|0)|0)<<1)|0;c[f>>2]=m;if(m|0){
n=c[f>>2]|0;i=o;return n|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[d>
;>2]|0)+24>>2]|0)>>>0)break;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>
;0>=(e[g+4>>1]|0)>>>0)break;l=(ie(c[n>>2]|0)|0)<<16>>16<<2
;m=_(c[j>>2]|0,e[g+4>>1]|0)|0;c[(c[(c[d>>2]|0)+28>>2]|0)+(m+(c[k>>2]|0)<
x3c;2)>>2]=l;c[k>>2]=(c[k>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|
0);n=c[f>>2]|0;i=o;return n|0}c[f>>2]=8;n=c[f>>2]|0;i=o;return n|0}function ze(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;n=i;i=i+32|0;h=n+24|0;j=n+20|0;l=n+16|0;f=n+12|0;g=n+8|0;k=n+4|0;m=n;c[h>>2]=d;c[j>
;>2]=e;c[f>>2]=c[(c[j>>2]|0)+28>>2];c[l>>2]=Wa[c[(c[h>>2]|0)+508>>
;2]&31](c[h>>2]|0,1668707360,c[j>>2]|0,g)|0;if(c[l>>2]|0){c[(c[h>>2]|0)+668>
x3e;2]=0;c[(c[h>>2]|0)+672>>2]=0;c[l>>2]=0;m=c[l>>2]|0;i=n;return m|0}c[(c[h>>
2]|0)+668>>2]=((c[g>>2]|0)>>>0)/2|0;g=hc(c[f>>2]|0,2,0,c[(c[h>>2]|0)+668
x3e;>2]|0,0,l)|0;c[(c[h>>2]|0)+672>>2]=g;if(c[l>>2]|0){m=c[l>>2]|0;i=n;return m|0}g
=ee(c[j>>2]|0,c[(c[h>>2]|0)+668>>2]<<1)|0;c[l>>2]=g;if(g|0){m=c[l>>2
]|0;i=n;return m|0}c[k>>2]=c[(c[h>>2]|0)+672>>2];c[m>>2]=(c[k>>2]|0)+(c[(c[h
x3e;>2]|0)+668>>2]<<1);while(1){d=c[j>>2]|0;if((c[k>>2]|0)>>>0>=(
c[m>>2]|0)>>>0)break;g=ie(d)|0;b[c[k>>2]>>1]=g;c[k>>2]=(c[k>>2]|
0)+2}ge(d);if(!(a[(c[h>>2]|0)+708>>0]|0)){m=c[l>>2]|0;i=n;return m|0}c[l>>2]=Ae(c[h>
;>2]|0,c[j>>2]|0)|0;m=c[l>>2]|0;i=n;return m|0}function Ae(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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=i;i=i+96|0;h=C+84|0;j=C+80|0;n=C+76|0;u=C+72|0;g=C+68|0;f
=C+64|0;y=C+60|0;v=C+56|0;o=C+52|0;p=C+48|0;s=C+44|0;B=C+40|0;r=C+36|0;q=C+32|0;l=C+28|0;x=C+24|0;t=C+20|0;m=C+16|0;z=C+12|0;A=C
+8|0;k=C+4|0;w=C;c[h>>2]=a;c[j>>2]=d;c[u>>2]=c[(c[j>>2]|0)+28>>2];c[B>>
;2]=0;c[r>>2]=0;c[q>>2]=0;c[l>>2]=c[(c[h>>2]|0)+712>>2];if(!(c[l>>2]|
0)){c[n>>2]=0;z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>
;>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>
;2]|0;i=C;return B|0}if(!(c[(c[h>>2]|0)+672>>2]|0)){c[n>>2]=0;z=c[u>>2]|0;A=c[B>>
;2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;
B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}c[n>>2]=Wa[c[(c[h>>2]|
0)+508>>2]&31](c[h>>2]|0,1668702578,c[j>>2]|0,f)|0;if(c[n>>2]|0){c[n>>2]=
0;z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[
r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}f
=ee(c[j>>2]|0,c[f>>2]|0)|0;c[n>>2]=f;if(f|0){c[n>>2]=0;z=c[u>>2]|0;A=c[B>
x3e;2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|
0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}c[g>>2]=(c[(c[j>>2]|
0)+32>>2]|0)-(c[c[j>>2]>>2]|0);a:do if((je(c[j>>2]|0)|0)==65536){c[B>>2]=hc(c[
u>>2]|0,4,0,c[c[l>>2]>>2]|0,0,n)|0;if(((c[n>>2]|0)==0?(c[r>>2]=hc(c[u>>
;2]|0,4,0,c[c[l>>2]>>2]|0,0,n)|0,(c[n>>2]|0)==0):0)?(c[q>>2]=hc(c[u>>2]|0,4,0,
c[c[l>>2]>>2]|0,0,n)|0,(c[n>>2]|0)==0):0){c[y>>2]=(ie(c[j>>2]|0)|0)&65535
;g=c[g>>2]|0;c[v>>2]=g+((ie(c[j>>2]|0)|0)&65535);c[p>>2]=0;while(1){if((c[p>
x3e;2]|0)>>>0>=(c[y>>2]&4095)>>>0)break a;c[z>>2]=(ie(c[j>>
;2]|0)|0)&65535;c[A>>2]=(ie(c[j>>2]|0)|0)&65535;do if(c[A>>2]&32768|0){c[s>>
;2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[c[l>>2]>>2]|0)>>>0)break;
g=(ie(c[j>>2]|0)|0)<<16>>16<<2;c[(c[B>>2]|0)+(c[s>>2]<<2)
x3e;>2]=g;c[s>>2]=(c[s>>2]|0)+1}b:do if(c[A>>2]&16384|0){c[s>>2]=0;while(1){if
((c[s>>2]|0)>>>0>=(c[c[l>>2]>>2]|0)>>>0)break;g=(ie(c[j>
x3e;2]|0)|0)<<16>>16<<2;c[(c[r>>2]|0)+(c[s>>2]<<2)>>2]=g;c
[s>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[c[l
x3e;>2]>>2]|0)>>>0)break b;g=(ie(c[j>>2]|0)|0)<<16>>16<<2;
c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]=g;c[s>>2]=(c[s>>2]|0)+1}}while(0);c[k
>>2]=Be(c[l>>2]|0,c[A>>2]&65535,c[B>>2]|0,c[r>>2]|0,c[q>>2]|0)|
0;if(c[k>>2]|0?c[A>>2]&8192|0:0){c[o>>2]=(c[(c[j>>2]|0)+32>>2]|0)-(c[c[j
x3e;>2]>>2]|0);c[(c[j>>2]|0)+32>>2]=(c[c[j>>2]>>2]|0)+(c[v>>2]|
0);c[t>>2]=Ce(c[j>>2]|0,x)|0;if(!(c[x>>2]|0))a=c[(c[h>>2]|0)+668>>2]|0;else a=
c[x>>2]|0;c[m>>2]=De(c[j>>2]|0,a)|0;c:do if(!((c[t>>2]|0)==0|(c[m>>2]|0)==0)){
g=(c[t>>2]|0)==(-1|0);c[s>>2]=0;if(g)while(1){if((c[s>>2]|0)>>>0>=(c[(c[h>
;>2]|0)+668>>2]|0)>>>0)break c;g=b[(c[(c[h>>2]|0)+672>>2]|0)+(c[s>>2
]<<1)>>1]|0;g=g+(Mb(b[(c[m>>2]|0)+(c[s>>2]<<1)>>1]|0,c[k>>
2]|0)|0)&65535;b[(c[(c[h>>2]|0)+672>>2]|0)+(c[s>>2]<<1)>>1]=g;c[s>
x3e;2]=(c[s>>2]|0)+1}else while(1){if((c[s>>2]|0)>>>0>=(c[x>>2]|0)>>
x3e;0)break c;c[w>>2]=e[(c[t>>2]|0)+(c[s>>2]<<1)>>1];g=b[(c[(c[h>>2]|
0)+672>>2]|0)+(c[w>>2]<<1)>>1]|0;g=g+(Mb(b[(c[m>>2]|0)+(c[s>>2]<
;<1)>>1]|0,c[k>>2]|0)|0)&65535;b[(c[(c[h>>2]|0)+672>>2]|0)+(c[w>>2]
x3c;<1)>>1]=g;c[s>>2]=(c[s>>2]|0)+1}}while(0);if((c[t>>2]|0)!=(-1|0)){Fb(c[u>
x3e;2]|0,c[t>>2]|0);c[t>>2]=0}Fb(c[u>>2]|0,c[m>>2]|0);c[m>>2]=0;c[v>>
;2]=(c[v>>2]|0)+(c[z>>2]|0);c[(c[j>>2]|0)+32>>2]=(c[c[j>>2]>>2]|0)+(
c[o>>2]|0);break}c[v>>2]=(c[v>>2]|0)+(c[z>>2]|0)}else{d:do if(c[A>>2]&16384
|0){c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=c[c[l>>2]>>2]<<
1>>>0)break d;ie(c[j>>2]|0)|0;c[s>>2]=(c[s>>2]|0)+1}}while(0);c[v>>2]=(c[
v>>2]|0)+(c[z>>2]|0)}while(0);c[p>>2]=(c[p>>2]|0)+1}}}else c[n>>2]=0;while(0);
ge(c[j>>2]|0);z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>
;>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>
;2]|0;i=C;return B|0}function Be(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;r=i;i=i+32|0;j
=r+24|0;k=r+28|0;l=r+20|0;m=r+16|0;n=r+12|0;o=r+8|0;q=r+4|0;p=r;c[j>>2]=a;b[k>>1]=d;c[l>>2]=f;c[m
x3e;>2]=g;c[n>>2]=h;c[q>>2]=65536;c[o>>2]=0;a:while(1){if((c[o>>2]|0)>>
x3e;0>=(c[c[j>>2]>>2]|0)>>>0){a=19;break}do if(c[(c[l>>2]|0)+(c[o>>2
]<<2)>>2]|0){if(!(c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>
2]|0)){a=9;break a}if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)<0?(c
[(c[l>>2]|0)+(c[o>>2]<<2)>>2]|0)>0:0){a=9;break a}if((c[(c[(c[j>>2]|0)+4
x3e;>2]|0)+(c[o>>2]<<2)>>2]|0)>0?(c[(c[l>>2]|0)+(c[o>>2]<<
2)>>2]|0)<0:0){a=9;break a}if(!((e[k>>1]|0)&16384)){f=c[(c[(c[j>>2]|0)+4>>2]|0
)+(c[o>>2]<<2)>>2]|0;c[q>>2]=xb(c[q>>2]|0,(c[(c[(c[j>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<2)>>2]|0)>0?f:0-f|0,65536)|0;break}if((c[(c[(c[j>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<2)>>2]|0)<=(c[(c[m>>2]|0)+(c[o>>2]<<2)>
;>2]|0)){a=14;break a}if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)
x3e;=(c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]|0)){a=14;break a}a=c[o>>2]|0;if((c[(c[(c[
j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)<(c[(c[l>>2]|0)+(c[o>
x3e;2]<<2)>>2]|0)){c[p>>2]=xb((c[(c[(c[j>>2]|0)+4>>2]|0)+(a<<2)>
;>2]|0)-(c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]|0)|0,65536,(c[(c[l>>2]|0)+(c[o>
;>2]<<2)>>2]|0)-(c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]|0)|0)|0;c[q>
;>2]=xb(c[q>>2]|0,c[p>>2]|0,65536)|0;break}else{c[p>>2]=xb((c[(c[n>>2]|0)+(a<
x3c;2)>>2]|0)-(c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)|0,65536
,(c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[l>>2]|0)+(c[o>>2]<<
;2)>>2]|0)|0)|0;c[q>>2]=xb(c[q>>2]|0,c[p>>2]|0,65536)|0;break}}while(0);c[o>>2
]=(c[o>>2]|0)+1}if((a|0)==9){c[q>>2]=0;q=c[q>>2]|0;i=r;return q|0}else if((a|0)==14){c[q>>
;2]=0;q=c[q>>2]|0;i=r;return q|0}else if((a|0)==19){q=c[q>>2]|0;i=r;return q|0}return 0}function Ce(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;p=i;i=i+48|0;e=p+40|0;f=p+36|0;q=p+32|0;n=p+28|0;m=p+24|0;o=p+20|0;
j=p+16|0;k=p+12|0;h=p+8|0;l=p+4|0;g=p;c[f>>2]=a;c[q>>2]=d;c[l>>2]=c[(c[f>>2]|0)+28>
x3e;2];c[g>>2]=0;c[g>>2]=c[g>>2];a=(he(c[f>>2]|0)|0)&255;c[m>>2]=a;c[c[q
x3e;>2]>>2]=a;if(!(c[m>>2]|0)){c[e>>2]=-1;q=c[e>>2]|0;i=p;return q|0}if(c[m>
x3e;2]&128|0){q=(he(c[f>>2]|0)|0)&255;c[m>>2]=q|(c[m>>2]&127)<<8}c[n>
;>2]=hc(c[l>>2]|0,2,0,c[m>>2]|0,0,g)|0;if(c[g>>2]|0){c[e>>2]=0;q=c[e>>2]|
0;i=p;return q|0}c[j>>2]=0;a:while(1){if((c[j>>2]|0)>=(c[m>>2]|0))break;c[o>>2]=(he
(c[f>>2]|0)|0)&255;if(c[o>>2]&128|0){c[o>>2]=c[o>>2]&127;q=ie(c[f>
x3e;2]|0)|0;a=c[j>>2]|0;c[j>>2]=a+1;b[(c[n>>2]|0)+(a<<1)>>1]=q;c[h>>
2]=q&65535;if((c[o>>2]|0)<1)break;if(((c[j>>2]|0)+(c[o>>2]|0)|0)>=(c[m>>2
]|0))break;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[o>>2]|0))continue a;a=(ie(c[f>>2]|
0)|0)&65535;a=(c[h>>2]|0)+a|0;c[h>>2]=a;q=c[j>>2]|0;c[j>>2]=q+1;b[(c[n>>2
]|0)+(q<<1)>>1]=a;c[k>>2]=(c[k>>2]|0)+1}}else{q=(he(c[f>>2]|0)|0)&255;a=c
[j>>2]|0;c[j>>2]=a+1;b[(c[n>>2]|0)+(a<<1)>>1]=q;c[h>>2]=q&65535
;if((c[o>>2]|0)<1)break;if(((c[j>>2]|0)+(c[o>>2]|0)|0)>=(c[m>>2]|0))break;c[k
x3e;>2]=0;while(1){if((c[k>>2]|0)>=(c[o>>2]|0))continue a;a=(he(c[f>>2]|0)|0)&255;a
=(c[h>>2]|0)+a|0;c[h>>2]=a;q=c[j>>2]|0;c[j>>2]=q+1;b[(c[n>>2]|0)+(q<<
;1)>>1]=a;c[k>>2]=(c[k>>2]|0)+1}}}c[e>>2]=c[n>>2];q=c[e>>2]|0;i=p;return
q|0}function De(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;n=i;i=i+48|0;k=n+32|0;e=n+28|0;f=n+24|0;l=n+20|0;j
=n+16|0;g=n+12|0;h=n+8|0;m=n+4|0;o=n;c[e>>2]=a;c[f>>2]=d;c[l>>2]=0;c[m>>2]=c[(c[e>
x3e;2]|0)+28>>2];c[o>>2]=0;c[o>>2]=c[o>>2];c[l>>2]=hc(c[m>>2]|0,2,0,
c[f>>2]|0,0,o)|0;if(c[o>>2]|0){c[k>>2]=0;o=c[k>>2]|0;i=n;return o|0}c[g>>2]=0;
while(1){if((c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0){e=19;break}c[j>>2
]=(he(c[e>>2]|0)|0)&255;a:do if(!(c[j>>2]&128|0)){o=(c[j>>2]&64|0)!=0;c[h>>
;2]=0;if(o)while(1){if((c[h>>2]|0)>>>0>(c[j>>2]&63)>>>0)break a;if((
c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break a;a=ie(c[e>>2]|0)|0;o=c[g
>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=a;c[h>>2]=(c[h>>
;2]|0)+1}else while(1){if((c[h>>2]|0)>>>0>(c[j>>2]&63)>>>0)break a;if
((c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break a;a=(he(c[e>>2]|0)|0)
x3c;<24>>24;o=c[g>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=a;
c[h>>2]=(c[h>>2]|0)+1}}else{c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>(c
[j>>2]&63)>>>0)break a;if((c[g>>2]|0)>>>0>=(c[f>>2]|0)>
;>>0)break a;o=c[g>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=0;c[h
x3e;>2]=(c[h>>2]|0)+1}}while(0);if((c[h>>2]|0)>>>0<=(c[j>>2]&63)>
;>>0){e=18;break}}if((e|0)==18){Fb(c[m>>2]|0,c[l>>2]|0);c[l>>2]=0;c[k>>2]=0;o=
c[k>>2]|0;i=n;return o|0}else if((e|0)==19){c[k>>2]=c[l>>2];o=c[k>>2]|0;i=n;return o|0}return
0}function Ee(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,t=0,u=0;u=i;i=i+48|0;g=u+44|0;h=u+40
|0;j=u+36|0;n=u+32|0;s=u+28|0;m=u+24|0;r=u+20|0;o=u+16|0;p=u+12|0;k=u+8|0;l=u+4|0;q=u;c[g>>2]=b;c[h>>2]=d;c[
j>>2]=f;c[n>>2]=0;c[s>>2]=0;c[q>>2]=c[(c[g>>2]|0)+100>>2];if((c[(c[g
>>2]|0)+712>>2]|0)==0?(d=xe(c[g>>2]|0,0)|0,c[n>>2]=d,d|0):0){r=c[q>>2]|0;t=c[s
>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}c[m>>2]=c[(c[g>>2]|0)+712
x3e;>2];c[r>>2]=c[(c[m>>2]|0)+8>>2];if((c[h>>2]|0)!=(c[c[r>>2]>>
;2]|0)){c[n>>2]=6;r=c[q>>2]|0;t=c[s>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return
t|0}c[s>>2]=hc(c[q>>2]|0,4,0,c[c[r>>2]>>2]|0,0,n)|0;if(c[n>>2]|0){r=c[q>
x3e;2]|0;t=c[s>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}c[k>>2]=c[(c[r>
x3e;2]|0)+12>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[c[r>>2]
x3e;>2]|0)>>>0)break;if((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|0)>(c[(
c[k>>2]|0)+12>>2]|0)){t=10;break}if((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|
0)<(c[(c[k>>2]|0)+4>>2]|0)){t=10;break}do if((c[(c[j>>2]|0)+(c[o>>2]<<2)
x3e;>2]|0)>=(c[(c[k>>2]|0)+8>>2]|0)){f=c[o>>2]|0;if((c[(c[k>>2]|0)+12>>
;2]|0)==(c[(c[k>>2]|0)+8>>2]|0)){c[(c[s>>2]|0)+(f<<2)>>2]=0;break}else{d=xb((c
[(c[j>>2]|0)+(f<<2)>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0,65536,(c[(c[k>>
2]|0)+12>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0)|0;c[(c[s>>2]|0)+(c[o>>2]<<
;2)>>2]=d;break}}else{d=0-(xb((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[k>
x3e;2]|0)+8>>2]|0)|0,65536,(c[(c[k>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0)|
0)|0;c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]=d}while(0);c[o>>2]=(c[o>>2]|0)+1
;c[k>>2]=(c[k>>2]|0)+24}if((t|0)==10){c[n>>2]=6;r=c[q>>2]|0;t=c[s>>2]|0;Fb(r,t
);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}if(!(a[(c[m>>2]|0)+16>>0]|0))Fe(c[g>>2]|
0);a:do if(c[(c[m>>2]|0)+20>>2]|0){c[l>>2]=c[(c[m>>2]|0)+20>>2];c[o>>
;2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[c[r>>2]>>2]|0)>>>0)break
a;c[p>>2]=1;while(1){if((c[p>>2]|0)>>>0>=(e[c[l>>2]>>1]|0)>>
;>0)break;if((c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]|0)<(c[(c[(c[l>>2]|0)+4
x3e;>2]|0)+(c[p>>2]<<3)>>2]|0)){t=25;break}c[p>>2]=(c[p>>2]|0)+1}if((t|0)==
25){t=0;m=xb((c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[(c[l>>2]|0)+4>>
;2]|0)+((c[p>>2]|0)-1<<3)>>2]|0)|0,65536,(c[(c[(c[l>>2]|0)+4>>2]|0)+(c[p>
x3e;2]<<3)>>2]|0)-(c[(c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1<<3)>
;>2]|0)|0)|0;m=xb(m,(c[(c[(c[l>>2]|0)+4>>2]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(
c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1<<3)+4>>2]|0)|0,65536)|0;c[(c[s>>
;2]|0)+(c[o>>2]<<2)>>2]=m+(c[(c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1
x3c;<3)+4>>2]|0)}c[o>>2]=(c[o>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+8}}while(0);c[
n>>2]=we(c[g>>2]|0,c[h>>2]|0,c[s>>2]|0)|0;r=c[q>>2]|0;t=c[s>>2]|0;Fb
(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|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,p=0,
q=0,r=0;q=i;i=i+48|0;r=q+40|0;p=q+36|0;o=q+32|0;m=q+28|0;j=q+24|0;g=q+20|0;l=q+16|0;f=q+12|0;h=q+8|0;n=q+4|0;k=q;c[r>>
2]=d;c[p>>2]=c[(c[r>>2]|0)+104>>2];c[o>>2]=c[(c[p>>2]|0)+28>>2];c[m
x3e;>2]=c[(c[r>>2]|0)+712>>2];c[g>>2]=0;c[g>>2]=c[g>>2];a[(c[m>>
;2]|0)+16>>0]=1;d=Wa[c[(c[r>>2]|0)+508>>2]&31](c[r>>2]|0,1635148146,c[p>>
2]|0,k)|0;c[g>>2]=d;if(d|0){i=q;return}r=ee(c[p>>2]|0,c[k>>2]|0)|0;c[g>>2]=r;if(r|0){i=q
;return}c[l>>2]=je(c[p>>2]|0)|0;c[f>>2]=je(c[p>>2]|0)|0;a:do if(((c[l>>2]|0)==
65536?(c[f>>2]|0)==(c[c[(c[m>>2]|0)+8>>2]>>2]|0):0)?(r=hc(c[o>>2]|0,8,0,c[f>
;>2]|0,0,g)|0,c[(c[m>>2]|0)+20>>2]=r,(c[g>>2]|0)==0):0){c[j>>2]=c[(c[m>>2
]|0)+20>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[f>>2]|0))break a;r=ie(c[p>
x3e;2]|0)|0;b[c[j>>2]>>1]=r;r=hc(c[o>>2]|0,8,0,e[c[j>>2]>>1]|0,0,g)|0;c[(c[j
x3e;>2]|0)+4>>2]=r;if(c[g>>2]|0)break;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(e[c[
j>>2]>>1]|0|0))break;r=(ie(c[p>>2]|0)|0)<<16>>16<<2;c[(c[(c[j>
x3e;2]|0)+4>>2]|0)+(c[n>>2]<<3)>>2]=r;r=(ie(c[p>>2]|0)|0)<<16>
x3e;16<<2;c[(c[(c[j>>2]|0)+4>>2]|0)+(c[n>>2]<<3)+4>>2]=r;c[n>
x3e;2]=(c[n>>2]|0)+1}c[h>>2]=(c[h>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+8}c[n>>
;2]=(c[h>>2]|0)-1;while(1){f=c[o>>2]|0;if((c[n>>2]|0)<0)break;Fb(f,c[(c[(c[m>>2]|0)+
20>>2]|0)+(c[n>>2]<<3)+4>>2]|0);c[(c[(c[m>>2]|0)+20>>2]|0)+(c[n>
;>2]<<3)+4>>2]=0;c[n>>2]=(c[n>>2]|0)+-1}Fb(f,c[(c[m>>2]|0)+20>>
2]|0);c[(c[m>>2]|0)+20>>2]=0;c[(c[m>>2]|0)+20>>2]=0}while(0);ge(c[p>>2]|0);i=q
;return}function Ge(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;p=i;i=i+32|0;h=p+28|0;j=p+24|0;g=p+20|0;k=p
+16|0;n=p+12|0;o=p+8|0;l=p+4|0;m=p;c[j>>2]=a;c[g>>2]=e;c[k>>2]=f;c[o>>2]=0;c[n>>
;2]=0;do if((c[g>>2]|0)>>>0<(c[(c[j>>2]|0)+732>>2]|0)>>>0){a=c[(
c[j>>2]|0)+736>>2]|0;f=c[g>>2]|0;if(b[(c[j>>2]|0)+160+50>>1]|0){c[l>>
;2]=a+(f<<2);c[m>>2]=(c[(c[j>>2]|0)+736>>2]|0)+(c[(c[j>>2]|0)+732>>2
]<<2);c[l>>2]=(c[l>>2]|0)+4;c[n>>2]=d[(c[l>>2]|0)+-4>>0]<<
24|d[(c[l>>2]|0)+-4+1>>0]<<16|d[(c[l>>2]|0)+-4+2>>0]<<8|d[(c[l>
x3e;2]|0)+-4+3>>0]<<0;c[o>>2]=c[n>>2];if(((c[l>>2]|0)+4|0)>>>0
x3e;(c[m>>2]|0)>>>0)break;c[l>>2]=(c[l>>2]|0)+4;c[o>>2]=d[(c[l>>
;2]|0)+-4>>0]<<24|d[(c[l>>2]|0)+-4+1>>0]<<16|d[(c[l>>2]|0)+-4+2>
;>0]<<8|d[(c[l>>2]|0)+-4+3>>0]<<0;break}c[l>>2]=a+(f<<1);c[m>
;>2]=(c[(c[j>>2]|0)+736>>2]|0)+(c[(c[j>>2]|0)+732>>2]<<1);c[l>>
2]=(c[l>>2]|0)+2;c[n>>2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>
x3e;2]|0)+-2+1>>0]&65535)<<0)&65535;c[o>>2]=c[n>>2];if(((c[l>>2]|0)+
2|0)>>>0<=(c[m>>2]|0)>>>0){c[l>>2]=(c[l>>2]|0)+2;c[o>>
;2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>>2]|0)+-2+1>>0]&65535)
x3c;<0)&65535}c[n>>2]=c[n>>2]<<1;c[o>>2]=c[o>>2]<<1}while(
0);if((c[n>>2]|0)>>>0>=(c[(c[j>>2]|0)+704>>2]|0)>>>0){c[c[k>
;>2]>>2]=0;c[h>>2]=0;o=c[h>>2]|0;i=p;return o|0}if((c[o>>2]|0)>>>0
x3e;=(c[(c[j>>2]|0)+704>>2]|0)>>>0)c[o>>2]=c[(c[j>>2]|0)+704>>2
];if((c[o>>2]|0)>>>0>=(c[n>>2]|0)>>>0)c[c[k>>2]>>2]=(
c[o>>2]|0)-(c[n>>2]|0);else c[c[k>>2]>>2]=(c[(c[j>>2]|0)+704>>2]|0)-(
c[n>>2]|0);c[h>>2]=c[n>>2];o=c[h>>2]|0;i=p;return o|0}function He(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;r=i;i=i+48|0;g=r+36|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0
;m=r+16|0;n=r+12|0;s=r+8|0;p=r+4|0;o=r;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>
x3e;2]=f;c[o>>2]=c[j>>2];c[s>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+4>>2];c[
p>>2]=Ud(c[s>>2]|0,11340)|0;do if(c[p>>2]|0){s=Kc(c[h>>2]|0,0)|0;c[n>>2]=s;if((
s|0)==0?(c[n>>2]=Za[c[(c[p>>2]|0)+4>>2]&31](c[h>>2]|0,c[o>>2]|0,c[k>
x3e;2]|0,c[l>>2]|0,c[m>>2]|0)|0,(c[n>>2]|0)==0):0){if(((c[(c[o>>2]|0)+148>>2]|
0)!=65536?(c[(c[o>>2]|0)+148>>2]|0)!=131072:0)?(c[(c[o>>2]|0)+148>>2]|0)!=1953658213:0){
q=24;break}s=(c[j>>2]|0)+8|0;c[s>>2]=c[s>>2]|2048;if((c[k>>2]|0)<0){c[g>>
2]=0;s=c[g>>2]|0;i=r;return s|0}c[n>>2]=Za[c[(c[p>>2]|0)+8>>2]&31](c[h>>2
]|0,c[o>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(!(c[n>>2]|0)){if((Ie(c[j>
;>2]|0)|0)<<24>>24){s=(c[j>>2]|0)+8|0;c[s>>2]=c[s>>2]|8192}c[n>>
;2]=Ne(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0)){if(c[(c[j>>2]|0)+8>>2]&1|0
){if(!(c[(c[(c[j>>2]|0)+128>>2]|0)+52>>2]|0))c[n>>2]=Oe(c[o>>2]|0,c[h>>
;2]|0)|0;if(!(c[n>>2]|0))c[n>>2]=ze(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0))c[n
>>2]=Pe(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0))c[n>>2]=Qe(c[o>>2]|0,
c[h>>2]|0)|0}Re(c[o>>2]|0)}}}}else q=24;while(0);if((q|0)==24)c[n>>2]=2;c[g>>2]=c[n>
;>2];s=c[g>>2]|0;i=r;return s|0}function Ie(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[e>>2]=b
;do if(c[e>>2]|0){b=c[e>>2]|0;if(c[(c[e>>2]|0)+20>>2]|0)if((Je(c[b+20>>2]|0)|0
)<<24>>24){a[d>>0]=1;break}else{a[d>>0]=0;break}else if((Ke(b)|0)<<24>>
;24){a[d>>0]=1;break}else{a[d>>0]=0;break}}else a[d>>0]=0;while(0);i=f;return a[d>>0]|0}
function Je(b){b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;f=g+8|0;d=g+4|0;e=g;c[d>>2]=b;c[e>>2]=0;while(1){if((c
[e>>2]|0)>=8){d=6;break}if(vs(c[d>>2]|0,10569+((c[e>>2]|0)*17|0)|0)|0){d=4;break}c[e>>
;2]=(c[e>>2]|0)+1}if((d|0)==4){a[f>>0]=1;f=a[f>>0]|0;i=g;return f|0}else if((d|0)==6){a[f>>
;0]=0;f=a[f>>0]|0;i=g;return f|0}return 0}function Ke(b){b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+48|0;d=
n+40|0;f=n+36|0;g=n+32|0;l=n+12|0;h=n+8|0;j=n+4|0;k=n;c[f>>2]=b;c[l>>2]=0;c[l+4>>2]=0;c[l+8>
x3e;2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[h>>2]=0;a:while(1){if((c[h>>2]|0)>=(e[(c[f>
;>2]|0)+152>>1]|0|0)){m=18;break}c[g>>2]=0;b=c[(c[(c[f>>2]|0)+156>>2]|0)+(c[h>
x3e;2]<<4)>>2]|0;b:do if((b|0)>=1718642541)if((b|0)<1886545264){switch(b|0){case 1718642541:break;
default:break b}c[k>>2]=1;m=7;break}else{switch(b|0){case 1886545264:break;default:break b}c[k>>2]=2;m=7;break
}else{switch(b|0){case 1668707360:break;default:break b}c[k>>2]=0;m=7}while(0);c:do if((m|0)==7){m=0;c[j>>2]=
0;while(1){if((c[j>>2]|0)>=5)break c;if((c[(c[(c[f>>2]|0)+156>>2]|0)+(c[h>>2]<
x3c;4)+12>>2]|0)==(c[448+((c[j>>2]|0)*24|0)+(c[k>>2]<<3)+4>>2]|0)){if(!(c[g>
;>2]|0))c[g>>2]=Le(c[f>>2]|0,c[h>>2]&65535)|0;if((c[448+((c[j>>2]|0)*24|0)+(c[
k>>2]<<3)>>2]|0)==(c[g>>2]|0)){b=l+(c[j>>2]<<2)|0;c[b>>2]=(
c[b>>2]|0)+1}if((c[l+(c[j>>2]<<2)>>2]|0)==3){m=15;break a}}c[j>>2]=(c[j>
x3e;2]|0)+1}}while(0);c[h>>2]=(c[h>>2]|0)+1}if((m|0)==15){a[d>>0]=1;m=a[d>>0]|0;i=n;return
m|0}else if((m|0)==18){a[d>>0]=0;m=a[d>>0]|0;i=n;return m|0}return 0}function Le(a,d){a=a|0;d=d|0;var f=0,g
=0,h=0,j=0;j=i;i=i+16|0;f=j+4|0;g=j;h=j+8|0;c[g>>2]=a;b[h>>1]=d;if(c[(c[(c[g>>2]|0)+156>>
;2]|0)+((e[h>>1]|0)<<4)+4>>2]|0){c[f>>2]=c[(c[(c[g>>2]|0)+156>>2]|0)+((
e[h>>1]|0)<<4)+4>>2];d=c[f>>2]|0;i=j;return d|0}if(!(c[(c[g>>2]|0)+508>
x3e;2]|0)){c[f>>2]=0;d=c[f>>2]|0;i=j;return d|0}if(Wa[c[(c[g>>2]|0)+508>>2]&31](c[g
>>2]|0,c[(c[(c[g>>2]|0)+156>>2]|0)+((e[h>>1]|0)<<4)>>2]|0,c[(c[g>
;>2]|0)+104>>2]|0,0)|0){c[f>>2]=Me(c[(c[g>>2]|0)+104>>2]|0,c[(c[(c[g>>2]|
0)+156>>2]|0)+((e[h>>1]|0)<<4)+12>>2]|0)|0;d=c[f>>2]|0;i=j;return d|0}else{c[f
>>2]=0;d=c[f>>2]|0;i=j;return d|0}return 0}function Me(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+
32|0;d=j+20|0;e=j+16|0;f=j+12|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;a=ee(c[e>>2]|0
,c[f>>2]|0)|0;c[j+8>>2]=a;if(a|0){c[d>>2]=0;h=c[d>>2]|0;i=j;return h|0}while(1){if((c[f
x3e;>2]|0)>>>0<=3)break;a=je(c[e>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+a;c[f>
x3e;2]=(c[f>>2]|0)-4}c[h>>2]=3;while(1){b=c[e>>2]|0;if((c[f>>2]|0)>>>0<
;=0)break;a=(he(b)|0)&255;c[g>>2]=(c[g>>2]|0)+(a<<(c[h>>2]<<3));c[f>
x3e;2]=(c[f>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+-1}ge(b);c[d>>2]=c[g>>2];h=c[d>
x3e;2]|0;i=j;return h|0}function Ne(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;s=i;i=i+48|0;f=s+44
|0;g=s+40|0;h=s+36|0;j=s+32|0;l=s+28|0;r=s+24|0;m=s+20|0;n=s+16|0;q=s+12|0;p=s+8|0;o=s+4|0;k=s;c[g>>2]=b;c[h>>
;2]=e;c[l>>2]=c[(c[h>>2]|0)+28>>2];c[j>>2]=Wa[c[(c[g>>2]|0)+508>>2]
x26;31](c[g>>2]|0,1751412088,c[h>>2]|0,q)|0;if((c[j>>2]|0)!=0|(c[q>>2]|0)>>>
;0<8){c[f>>2]=0;r=c[f>>2]|0;i=s;return r|0}e=de(c[h>>2]|0,c[q>>2]|0,(c[g>>
;2]|0)+740|0)|0;c[j>>2]=e;do if(!e){c[o>>2]=c[(c[g>>2]|0)+740>>2];c[k>>2]=(c[o
>>2]|0)+(c[q>>2]|0);c[o>>2]=(c[o>>2]|0)+2;c[r>>2]=(((d[(c[o>>2]|0)+-
2>>0]|0)&65535)<<8|((d[(c[o>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535
;c[o>>2]=(c[o>>2]|0)+2;c[n>>2]=(((d[(c[o>>2]|0)+-2>>0]|0)&65535)<<
;8|((d[(c[o>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[o>>2]=(c[o>>2]|0)+
4;c[p>>2]=(d[(c[o>>2]|0)+-4>>0]|0)<<24|(d[(c[o>>2]|0)+-4+1>>0]|0)<
;<16|(d[(c[o>>2]|0)+-4+2>>0]|0)<<8|(d[(c[o>>2]|0)+-4+3>>0]|0)<<
0;if((c[p>>2]|0)>>>0>=4294901760)c[p>>2]=c[p>>2]&65535;if(!((c[r>>
;2]|0)!=0|(c[n>>2]|0)>>>0>255|(c[p>>2]|0)>>>0>65537)){r=hc(c[l>
x3e;2]|0,1,0,c[n>>2]|0,0,j)|0;c[(c[g>>2]|0)+756>>2]=r;if(!(c[j>>2]|0)){c[m>>2]=
0;while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;if(((c[o>>
2]|0)+(c[p>>2]|0)|0)>>>0>(c[k>>2]|0)>>>0)break;a[(c[(c[g>>2]|0)+
756>>2]|0)+(c[m>>2]|0)>>0]=a[c[o>>2]>>0]|0;c[o>>2]=(c[o>>2
]|0)+(c[p>>2]|0);c[m>>2]=(c[m>>2]|0)+1}c[(c[g>>2]|0)+748>>2]=c[m>>2];
c[(c[g>>2]|0)+744>>2]=c[q>>2];c[(c[g>>2]|0)+752>>2]=c[p>>2];break}}else
c[j>>2]=3;fe(c[h>>2]|0,(c[g>>2]|0)+740|0);c[(c[g>>2]|0)+744>>2]=0}while(0);c[
f>>2]=c[j>>2];r=c[f>>2]|0;i=s;return r|0}function Oe(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,q=0,r=0;r=i;i=i+48|0;g=r+40|0;h=r+36|0;m=r+32|0;q=r+28|0;f=r+24|0;o=r+20|0;l=r+16|0;n=r+12|0;p=r+8|0;k=r+4|0;j=r
;c[g>>2]=a;c[h>>2]=d;c[m>>2]=Wa[c[(c[g>>2]|0)+508>>2]&31](c[g>>
2]|0,1735162214,c[h>>2]|0,(c[g>>2]|0)+704|0)|0;if((c[m>>2]|0)!=142){if(c[m>>2]|0){q=c[m
x3e;>2]|0;i=r;return q|0}}else c[(c[g>>2]|0)+704>>2]=0;c[m>>2]=Wa[c[(c[g>>2]|0)+508
>>2]&31](c[g>>2]|0,1819239265,c[h>>2]|0,q)|0;if(c[m>>2]|0){c[m>>2]=144;q=
c[m>>2]|0;i=r;return q|0}do if(b[(c[g>>2]|0)+160+50>>1]|0){c[f>>2]=2;if((c[q>>
2]|0)>>>0<262144){c[(c[g>>2]|0)+732>>2]=(c[q>>2]|0)>>>(c[f>
;>2]|0);break}c[m>>2]=8;q=c[m>>2]|0;i=r;return q|0}else{c[f>>2]=1;if((c[q>>2]|0)>
;>>0<131072){c[(c[g>>2]|0)+732>>2]=(c[q>>2]|0)>>>(c[f>>2]|
0);break}c[m>>2]=8;q=c[m>>2]|0;i=r;return q|0}while(0);if((c[(c[g>>2]|0)+732>>2]|0)!=(c[(
c[g>>2]|0)+16>>2]|0)?(c[(c[g>>2]|0)+732>>2]|0)>>>0<(c[(c[g>>
;2]|0)+16>>2]|0)>>>0:0){c[o>>2]=c[(c[g>>2]|0)+16>>2]<<c[f>
x3e;2];c[l>>2]=c[(c[g>>2]|0)+156>>2];c[n>>2]=(c[l>>2]|0)+(e[(c[g>>2]|
0)+152>>1]<<4);c[p>>2]=Mc(c[h>>2]|0)|0;c[k>>2]=2147483647;while(1){a=c[l>
x3e;2]|0;if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[j>>2]=(c[a
+8>>2]|0)-(c[p>>2]|0);if((c[j>>2]|0)>0?(c[j>>2]|0)<(c[k>>2]|0):0)c[k
>>2]=c[j>>2];c[l>>2]=(c[l>>2]|0)+16}if((a|0)==(c[n>>2]|0))c[k>>2]=(c
[(c[h>>2]|0)+4>>2]|0)-(c[p>>2]|0);if((c[o>>2]|0)<=(c[k>>2]|0)){c[(c[g>
;>2]|0)+732>>2]=c[(c[g>>2]|0)+16>>2];c[q>>2]=c[o>>2]}}c[m>>2]=de
(c[h>>2]|0,c[q>>2]|0,(c[g>>2]|0)+736|0)|0;q=c[m>>2]|0;i=r;return q|0}function Pe(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>
;2]=Wa[c[(c[d>>2]|0)+508>>2]&31](c[d>>2]|0,1718642541,c[e>>2]|0,g)|0;if(c[f>
x3e;2]|0){c[(c[d>>2]|0)+656>>2]=0;c[(c[d>>2]|0)+652>>2]=0;c[f>>2]=0;g=c[f>
;>2]|0;i=h;return g|0}else{c[(c[d>>2]|0)+652>>2]=c[g>>2];c[f>>2]=de(c[e>>
2]|0,c[g>>2]|0,(c[d>>2]|0)+656|0)|0;g=c[f>>2]|0;i=h;return g|0}return 0}function Qe(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Wa
[c[(c[d>>2]|0)+508>>2]&31](c[d>>2]|0,1886545264,c[e>>2]|0,g)|0;if(c[f>>2]|
0){c[(c[d>>2]|0)+664>>2]=0;c[(c[d>>2]|0)+660>>2]=0;c[f>>2]=0;g=c[f>>
2]|0;i=h;return g|0}else{c[(c[d>>2]|0)+660>>2]=c[g>>2];c[f>>2]=de(c[e>>2]|0,c[
g>>2]|0,(c[d>>2]|0)+664|0)|0;g=c[f>>2]|0;i=h;return g|0}return 0}function Re(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)+512>>2]=22;c[(c[d>>2]|0)+520>>2]=34;c
[(c[d>>2]|0)+524>>2]=35;c[(c[d>>2]|0)+528>>2]=36;c[(c[d>>2]|0)+516>>
2]=34;i=b;return}function Se(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;g=l+20|0
;n=l+16|0;m=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=a;c[n>>2]=b;c[m>>2]=d;c[h>>2]=e;c[k>
x3e;2]=c[(c[g>>2]|0)+24>>2];c[n>>2]=c[n>>2];d=Kc(c[k>>2]|0,c[m>>2]|0
)|0;c[j>>2]=d;if((d|0)==0?(n=ee(c[k>>2]|0,c[h>>2]|0)|0,c[j>>2]=n,(n|0)==0):0){c[(c[g>
;>2]|0)+200>>2]=c[(c[k>>2]|0)+32>>2];c[(c[g>>2]|0)+204>>2]=c[(c[k>
x3e;2]|0)+36>>2];c[f>>2]=0;n=c[f>>2]|0;i=l;return n|0}c[f>>2]=c[j>>2];n=c[f>
;>2]|0;i=l;return n|0}function Te(e){e=e|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;f=j+12|0;g=j+8|0;h=j+4|0;k=j;c[g>>
;2]=e;c[h>>2]=c[(c[g>>2]|0)+200>>2];c[k>>2]=c[(c[g>>2]|0)+204>>2];if
(((c[h>>2]|0)+10|0)>>>0>(c[k>>2]|0)>>>0){c[f>>2]=20;k=c[f>
x3e;2]|0;i=j;return k|0}else{c[h>>2]=(c[h>>2]|0)+2;b[(c[g>>2]|0)+32>>1]=a[(c[h>>
;2]|0)+-2>>0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0;c[h>
;>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36>>2]=((a[(c[h>>2]|0)+-2>>0]<<
;16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<16>>16;
c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+4>>2]=((a[(c[h>>2]|0)+-2>>0]
x3c;<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<16>
x3e;16;c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+8>>2]=((a[(c[h>>2]|0)+-2>
x3e;0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<
16>>16;c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+12>>2]=((a[(c[h>>2]|0)+-
2>>0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<
;<16>>16;c[(c[g>>2]|0)+200>>2]=c[h>>2];c[f>>2]=0;k=c[f>>2]|0;i=
j;return k|0}return 0}function Ue(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,z=0,A=0,B
=0,C=0,D=0,E=0,F=0,G=0,H=0;H=i;i=i+96|0;j=H+72|0;o=H+68|0;A=H+64|0;v=H+60|0;u=H+56|0;w=H+52|0;z=H+48|0;r=H+44|0;x=H+78|0;y=H+40|
0;s=H+36|0;t=H+32|0;k=H+83|0;n=H+82|0;B=H+28|0;C=H+24|0;D=H+20|0;l=H+16|0;m=H+12|0;g=H+76|0;E=H+8|0;F=H+4|0;p=H+81|0;G=H;q=H+80|
0;c[j>>2]=f;c[A>>2]=c[(c[j>>2]|0)+200>>2];c[v>>2]=c[(c[j>>2]|0)+204
x3e;>2];c[u>>2]=c[(c[j>>2]|0)+12>>2];c[w>>2]=b[(c[j>>2]|0)+32>>
1];c[r>>2]=c[c[j>>2]>>2];c[E>>2]=0;if((c[w>>2]|0)!=0?((b[(c[u>>2]|0)+
20>>1]|0)+(b[(c[u>>2]|0)+56>>1]|0)+(c[w>>2]|0)|0)>>>0>(c[(c[u>
x3e;2]|0)+8>>2]|0)>>>0:0)f=kc(c[u>>2]|0,0,c[w>>2]|0)|0;else f=0;c[o>>2]=f
;if(c[o>>2]|0){G=c[o>>2]|0;i=H;return G|0}c[l>>2]=c[(c[u>>2]|0)+56+12>>2];c[m
x3e;>2]=(c[l>>2]|0)+(c[w>>2]<<1);a:do if((c[w>>2]|0)<4095?((c[A>>2]|
0)+((c[w>>2]|0)+1<<1)|0)>>>0<=(c[v>>2]|0)>>>0:0){c[A>>
;2]=(c[A>>2]|0)+2;b[g>>1]=(d[(c[A>>2]|0)+-2>>0]&65535)<<8|(d[(c[A>
x3e;2]|0)+-2+1>>0]&65535)<<0;if((c[w>>2]|0)>0)b[c[l>>2]>>1]=b[g>
;>1]|0;c[l>>2]=(c[l>>2]|0)+2;while(1){if((c[l>>2]|0)>>>0>=(c[m>>
;2]|0)>>>0)break;c[A>>2]=(c[A>>2]|0)+2;b[c[l>>2]>>1]=(d[(c[A>>2
]|0)+-2>>0]&65535)<<8|(d[(c[A>>2]|0)+-2+1>>0]&65535)<<0;if((b[c[l>
;>2]>>1]|0)<=(b[g>>1]|0)){h=12;break}b[g>>1]=b[c[l>>2]>>1]|0;c[l>
;>2]=(c[l>>2]|0)+2}if((h|0)==12){c[o>>2]=8;G=c[o>>2]|0;i=H;return G|0}c[y>>2]=0;if((
c[w>>2]|0)>0?(c[y>>2]=(b[(c[l>>2]|0)+-2>>1]|0)+1,(c[y>>2]|0)<0):0)break
;if(((c[y>>2]|0)+4|0)!=0?((b[(c[u>>2]|0)+20+2>>1]|0)+(b[(c[u>>2]|0)+56+2>>1]|0
)+((c[y>>2]|0)+4)|0)>>>0>(c[(c[u>>2]|0)+4>>2]|0)>>>0:0)f=kc(c[u
>>2]|0,(c[y>>2]|0)+4|0,0)|0;else f=0;c[o>>2]=f;if(c[o>>2]|0){G=c[o>>2]|0;i=H;return
G|0}c[z>>2]=(c[u>>2]|0)+56;c[l>>2]=(c[(c[z>>2]|0)+12>>2]|0)+2;while(1){if((c[
l>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;if((b[(c[l>>2]|0)+-2>
x3e;1]|0)>=(b[c[l>>2]>>1]|0))break a;c[l>>2]=(c[l>>2]|0)+2}c[(c[(c[j>>2]|
0)+8>>2]|0)+140>>2]=0;c[(c[(c[j>>2]|0)+8>>2]|0)+136>>2]=0;if(((c[A>>
2]|0)+2|0)>>>0<=(c[v>>2]|0)>>>0){c[A>>2]=(c[A>>2]|0)+2;b[x>
;>1]=(d[(c[A>>2]|0)+-2>>0]&65535)<<8|(d[(c[A>>2]|0)+-2+1>>0]&65535
)<<0;if((e[x>>1]|0)>(e[(c[r>>2]|0)+260+26>>1]|0)){c[o>>2]=22;G=c[o>
x3e;2]|0;i=H;return G|0}if(((c[v>>2]|0)-(c[A>>2]|0)|0)<(e[x>>1]|0)){c[o>>2]=22;G=c[
o>>2]|0;i=H;return G|0}if(!(c[(c[j>>2]|0)+16>>2]&2)){c[(c[(c[j>>2]|0)+8>>
2]|0)+140>>2]=e[x>>1];c[(c[(c[j>>2]|0)+8>>2]|0)+136>>2]=c[(c[(c[j>>2
]|0)+160>>2]|0)+392>>2];Ss(c[(c[(c[j>>2]|0)+160>>2]|0)+392>>2]|0,c[A>>
;2]|0,e[x>>1]|0)|0}c[A>>2]=(c[A>>2]|0)+(e[x>>1]|0);c[s>>2]=c[(c[z>>2
]|0)+8>>2];c[t>>2]=(c[s>>2]|0)+(c[y>>2]|0);b:while(1){if((c[s>>2]|0)>>
;>0>=(c[t>>2]|0)>>>0)break;if(((c[A>>2]|0)+1|0)>>>0>(c[v>
x3e;2]|0)>>>0)break a;r=c[A>>2]|0;c[A>>2]=r+1;r=a[r>>0]|0;a[k>>0]=r;x=c[s
>>2]|0;c[s>>2]=x+1;a[x>>0]=r;if(!(d[k>>0]&8))continue;if(((c[A>>2]|0)+1|0
)>>>0>(c[v>>2]|0)>>>0)break a;x=c[A>>2]|0;c[A>>2]=x+1;a[n>
x3e;0]=a[x>>0]|0;if(((c[s>>2]|0)+(d[n>>0]|0)|0)>>>0>(c[t>>2]|0)>
;>>0)break a;while(1){if((d[n>>0]|0)<=0)continue b;r=a[k>>0]|0;x=c[s>>2]|0;c[s>
;>2]=x+1;a[x>>0]=r;a[n>>0]=(a[n>>0]|0)+-1<<24>>24}}c[B>>2]=c[(c
[z>>2]|0)+4>>2];c[C>>2]=(c[B>>2]|0)+(c[y>>2]<<3);c[s>>2]=c
[(c[z>>2]|0)+8>>2];c[D>>2]=0;if(((c[A>>2]|0)+(c[E>>2]|0)|0)>>>0
<=(c[v>>2]|0)>>>0){while(1){if((c[B>>2]|0)>>>0>=(c[C>>2]|0
)>>>0)break;c[F>>2]=0;a[p>>0]=a[c[s>>2]>>0]|0;if(d[p>>0]&2
|0){if(((c[A>>2]|0)+1|0)>>>0>(c[v>>2]|0)>>>0)break a;E=c[A>>2]|
0;c[A>>2]=E+1;c[F>>2]=d[E>>0];if(!(d[p>>0]&16))c[F>>2]=0-(c[F>>
2]|0)}else if(!(d[p>>0]&16)){if(((c[A>>2]|0)+2|0)>>>0>(c[v>>2]|0)>
x3e;>0)break a;c[A>>2]=(c[A>>2]|0)+2;c[F>>2]=((a[(c[A>>2]|0)+-2>>0]<
x3c;16>>16<<8|d[(c[A>>2]|0)+-2+1>>0]<<0)&65535)<<16>>
16}c[D>>2]=(c[D>>2]|0)+(c[F>>2]|0);c[c[B>>2]>>2]=c[D>>2];a[c[s>
x3e;2]>>0]=d[p>>0]&-19;c[B>>2]=(c[B>>2]|0)+8;c[s>>2]=(c[s>>2]|0
)+1}c[B>>2]=c[(c[u>>2]|0)+56+4>>2];c[C>>2]=(c[B>>2]|0)+(c[y>>2]<
;<3);c[s>>2]=c[(c[z>>2]|0)+8>>2];c[D>>2]=0;while(1){if((c[B>>2]|0)>
x3e;>0>=(c[C>>2]|0)>>>0)break;c[G>>2]=0;a[q>>0]=a[c[s>>2]>
x3e;0]|0;if(d[q>>0]&4|0){if(((c[A>>2]|0)+1|0)>>>0>(c[v>>2]|0)>>
x3e;0)break a;F=c[A>>2]|0;c[A>>2]=F+1;c[G>>2]=d[F>>0];if(!(d[q>>0]&32))c[
G>>2]=0-(c[G>>2]|0)}else if(!(d[q>>0]&32)){if(((c[A>>2]|0)+2|0)>>>0
x3e;(c[v>>2]|0)>>>0)break a;c[A>>2]=(c[A>>2]|0)+2;c[G>>2]=((a[(c[A>
x3e;2]|0)+-2>>0]<<16>>16<<8|d[(c[A>>2]|0)+-2+1>>0]<<0)&
;65535)<<16>>16}c[D>>2]=(c[D>>2]|0)+(c[G>>2]|0);c[(c[B>>2]|0)+4>
;>2]=c[D>>2];a[c[s>>2]>>0]=d[q>>0]&1;c[B>>2]=(c[B>>2]|0)+8
;c[s>>2]=(c[s>>2]|0)+1}b[(c[z>>2]|0)+2>>1]=c[y>>2];b[c[z>>2]>
x3e;1]=c[w>>2];c[(c[j>>2]|0)+200>>2]=c[A>>2];G=c[o>>2]|0;i=H;return G|0}}}while
(0);c[o>>2]=20;G=c[o>>2]|0;i=H;return G|0}function Ve(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;u=i;i=i+64|0;n=u+48|0;o=u+44|0;s=u+40|0;q=u+36|0;p=u+32|0;h=u+28|0;r=u+24|0;j=u+20|0;k=u+16|0;m=u+12|0;l=u+8|0;g=
u+4|0;t=u;c[n>>2]=f;c[s>>2]=c[(c[n>>2]|0)+200>>2];c[q>>2]=c[(c[n>>2]|
0)+204>>2];c[p>>2]=c[(c[n>>2]|0)+12>>2];c[r>>2]=0;while(1){c[o>>2]=lc
(c[p>>2]|0,(c[r>>2]|0)+1|0)|0;if(c[o>>2]|0){f=24;break}if(((c[s>>2]|0)+4|0)>>
x3e;0>(c[q>>2]|0)>>>0){f=25;break}c[h>>2]=(c[(c[p>>2]|0)+56+32>>2]|0
)+(c[r>>2]<<5);c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+8>>2]=0;c[s>
;>2]=(c[s>>2]|0)+2;b[(c[h>>2]|0)+4>>1]=(d[(c[s>>2]|0)+-2>>0]&65535)
x3c;<8|(d[(c[s>>2]|0)+-2+1>>0]&65535)<<0;c[s>>2]=(c[s>>2]|0)+2;c[c[h
>>2]>>2]=((d[(c[s>>2]|0)+-2>>0]&65535)<<8|(d[(c[s>>2]|0)+-2+1
x3e;>0]&65535)<<0)&65535;c[g>>2]=2;if(e[(c[h>>2]|0)+4>>1]&1|0)c[g>
;>2]=(c[g>>2]|0)+2;do if(!(e[(c[h>>2]|0)+4>>1]&8|0)){if(e[(c[h>>2]|0)+4>
x3e;1]&64|0){c[g>>2]=(c[g>>2]|0)+4;break}if(e[(c[h>>2]|0)+4>>1]&128|0)c[g>
;>2]=(c[g>>2]|0)+8}else c[g>>2]=(c[g>>2]|0)+2;while(0);if(((c[s>>2]|0)+(c[g>
x3e;2]|0)|0)>>>0>(c[q>>2]|0)>>>0){f=25;break}f=c[s>>2]|0;if(e[(c[h>
x3e;2]|0)+4>>1]&1|0){c[s>>2]=f+2;c[(c[h>>2]|0)+8>>2]=((a[(c[s>>2]|0)+-2
x3e;>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<
x3c;16>>16;c[s>>2]=(c[s>>2]|0)+2;c[(c[h>>2]|0)+12>>2]=((a[(c[s>>2]|0
)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)
x3c;<16>>16}else{c[s>>2]=f+1;c[(c[h>>2]|0)+8>>2]=a[f>>0];f=c[s>>
;2]|0;c[s>>2]=f+1;c[(c[h>>2]|0)+12>>2]=a[f>>0]}c[m>>2]=65536;c[j>>2]=
65536;c[l>>2]=0;c[k>>2]=0;do if(!(e[(c[h>>2]|0)+4>>1]&8|0)){if(e[(c[h>>2]|
0)+4>>1]&64|0){c[s>>2]=(c[s>>2]|0)+2;c[j>>2]=((a[(c[s>>2]|0)+-2>>
;0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<<16
x3e;>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[m>>2]=((a[(c[s>>2]|0)+-2>>0]
x3c;<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<<16>
x3e;16<<2;break}if(e[(c[h>>2]|0)+4>>1]&128|0){c[s>>2]=(c[s>>2]|0)+2;c[j
x3e;>2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>
;>0]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[l>
x3e;2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>
;0]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[k>>
2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0
]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[m>>2]=((
a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<
;<0)&65535)<<16>>16<<2}}else{c[s>>2]=(c[s>>2]|0)+2;c[j>>2]=((
a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<
;<0)&65535)<<16>>16<<2;c[m>>2]=c[j>>2]}while(0);c[(c[h>>2]|
0)+16>>2]=c[j>>2];c[(c[h>>2]|0)+16+4>>2]=c[k>>2];c[(c[h>>2]|0)+16+8
x3e;>2]=c[l>>2];c[(c[h>>2]|0)+16+12>>2]=c[m>>2];c[r>>2]=(c[r>>2
]|0)+1;if(!(e[(c[h>>2]|0)+4>>1]&32)){f=23;break}}if((f|0)==23){c[(c[p>>2]|0)+56+28>>
;2]=c[r>>2];c[t>>2]=c[(c[n>>2]|0)+24>>2];t=Mc(c[t>>2]|0)|0;c[(c[n>>2
]|0)+168>>2]=(c[s>>2]|0)+t-(c[q>>2]|0);c[(c[n>>2]|0)+200>>2]=c[s>>2];
t=c[o>>2]|0;i=u;return t|0}else if((f|0)==24){t=c[o>>2]|0;i=u;return t|0}else if((f|0)==25){c[o>>2
]=21;t=c[o>>2]|0;i=u;return t|0}return 0}function We(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];ge(c[d>>2]|0);i=b;return}function Xe(a){a=a|0;var b=0,
d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[b>>2]=a;c[d>>2]=c[b>>2];if
(!(c[d>>2]|0)){i=h;return}c[e>>2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[b>
x3e;2]|0)+104>>2];c[f>>2]=c[(c[d>>2]|0)+532>>2];if(c[(c[d>>2]|0)+692+4>
x3e;2]|0)Va[c[(c[d>>2]|0)+692+4>>2]&63](c[(c[d>>2]|0)+692>>2]|0);if(c[f>>
2]|0)Va[c[(c[f>>2]|0)+12>>2]&63](c[d>>2]|0);Ye(c[d>>2]|0);Ze(c[d>>2]|0);Fb
(c[e>>2]|0,c[(c[d>>2]|0)+672>>2]|0);c[(c[d>>2]|0)+672>>2]=0;c[(c[d>>
2]|0)+668>>2]=0;fe(c[g>>2]|0,(c[d>>2]|0)+656|0);fe(c[g>>2]|0,(c[d>>2]|0)+664|0
);c[(c[d>>2]|0)+652>>2]=0;c[(c[d>>2]|0)+660>>2]=0;_e(c[e>>2]|0,c[(c[d>>
;2]|0)+712>>2]|0);c[(c[d>>2]|0)+712>>2]=0;i=h;return}function Ye(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]|0)+104>>2];fe(c[e>>2]|0,(c[d>
;>2]|0)+736|0);c[(c[d>>2]|0)+732>>2]=0;i=b;return}function Ze(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)+104>>2];c[f>>2]=c[(c[e>
;>2]|0)+28>>2];Fb(c[f>>2]|0,c[(c[d>>2]|0)+756>>2]|0);c[(c[d>>2]|0)+756>
;>2]=0;fe(c[e>>2]|0,(c[d>>2]|0)+740|0);i=b;return}function _e(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;
i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=g;return}Fb(c[d>>2]|
0,c[(c[e>>2]|0)+4>>2]|0);c[(c[e>>2]|0)+4>>2]=0;Fb(c[d>>2]|0,c[(c[e>>
2]|0)+8>>2]|0);c[(c[e>>2]|0)+8>>2]=0;if(c[(c[e>>2]|0)+20>>2]|0){c[f>>
;2]=0;while(1){b=c[d>>2]|0;if((c[f>>2]|0)>>>0>=(c[c[e>>2]>>2]|0)>
;>>0)break;Fb(b,c[(c[(c[e>>2]|0)+20>>2]|0)+(c[f>>2]<<3)+4>>2]|0);c[(
c[(c[e>>2]|0)+20>>2]|0)+(c[f>>2]<<3)+4>>2]=0;c[f>>2]=(c[f>>
;2]|0)+1}Fb(b,c[(c[e>>2]|0)+20>>2]|0);c[(c[e>>2]|0)+20>>2]=0}Fb(c[d>>2]|0,c[(c
[e>>2]|0)+28>>2]|0);c[(c[e>>2]|0)+28>>2]=0;Fb(c[d>>2]|0,c[(c[e>>2]|0
)+36>>2]|0);c[(c[e>>2]|0)+36>>2]=0;Fb(c[d>>2]|0,c[e>>2]|0);c[e>>2]=0
;i=g;return}function $e(b){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]=b;c[f>>2]=c[g
x3e;>2];c[d>>2]=0;a[(c[f>>2]|0)+300>>0]=0;a[(c[f>>2]|0)+301>>0]=0;a[(c[f
x3e;>2]|0)+72+36>>0]=0;c[(c[f>>2]|0)+112>>2]=-1;i=e;return c[d>>2]|0}function af(b){
b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=b;c[e>>2]=c[d>>2];if(a[(c[e>>2]|0
)+300>>0]|0)bf(c[d>>2]|0);a[(c[e>>2]|0)+72+36>>0]=0;i=f;return}function bf(d){d=d|0;var
e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;j=g+12|0;f=g+8|0;h=g+4|0;e=g;c[j>>2]=d;c[f>>2]=c[j>>2];c[h>
x3e;2]=c[c[j>>2]>>2];c[e>>2]=c[(c[h>>2]|0)+100>>2];if(a[(c[f>>2]|0)+
292>>0]|0){c[(c[f>>2]|0)+296>>2]=0;a[(c[f>>2]|0)+292>>0]=0}Fb(c[e>>2
]|0,c[(c[f>>2]|0)+244>>2]|0);c[(c[f>>2]|0)+244>>2]=0;c[(c[f>>2]|0)+240>
x3e;2]=0;Fb(c[e>>2]|0,c[(c[f>>2]|0)+252>>2]|0);c[(c[f>>2]|0)+252>>2]=0;b[(c[f
x3e;>2]|0)+248>>1]=0;cf((c[f>>2]|0)+256|0);Fb(c[e>>2]|0,c[(c[f>>2]|0)+124>>
;2]|0);c[(c[f>>2]|0)+124>>2]=0;Fb(c[e>>2]|0,c[(c[f>>2]|0)+136>>2]|0);c[(c[f>
;>2]|0)+136>>2]=0;c[(c[f>>2]|0)+116>>2]=0;c[(c[f>>2]|0)+120>>2]=0;c[(c[f
x3e;>2]|0)+128>>2]=0;c[(c[f>>2]|0)+132>>2]=0;c[(c[f>>2]|0)+140>>2]=0;c[(c
[f>>2]|0)+144>>2]=0;a[(c[f>>2]|0)+300>>0]=0;a[(c[f>>2]|0)+301>>0]=0;
i=g;return}function cf(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=c[c[d>>
2]>>2];if(!(c[e>>2]|0)){i=f;return}Fb(c[e>>2]|0,c[(c[d>>2]|0)+28>>2]|0);c[(c[d
>>2]|0)+28>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+24>>2]|0);c[(c[d>>2]|0)+
24>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+16>>2]=0
;Fb(c[e>>2]|0,c[(c[d>>2]|0)+12>>2]|0);c[(c[d>>2]|0)+12>>2]=0;Fb(c[e>>
;2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>>2]=0;b[(c[d>>2]|0)+8>>
;1]=0;b[(c[d>>2]|0)+4>>1]=0;b[(c[d>>2]|0)+10>>1]=0;b[(c[d>>2]|0)+6>>
1]=0;c[c[d>>2]>>2]=0;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;a=gc(c
[c[(c[d>>2]|0)+156>>2]>>2]|0)|0;i=b;return a|0}function ef(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+32|0;o=n+28|0;p=n+24|0;g=n+20|0;h=n+16|0;m=n+12|0;l=n+8|0;k=n+4|0;j=n;c[o
>>2]=a;c[p>>2]=b;c[g>>2]=d;c[h>>2]=e;c[m>>2]=c[o>>2];c[l>>
2]=c[p>>2];c[k>>2]=c[(c[o>>2]|0)+4>>2];if(!(c[m>>2]|0)){c[f>>2]=37;p
=c[f>>2]|0;i=n;return p|0}if(!(c[l>>2]|0)){c[f>>2]=36;p=c[f>>2]|0;i=n;return p|0}if(!(c[
k>>2]|0)){c[f>>2]=6;p=c[f>>2]|0;i=n;return p|0}if((c[g>>2]|0)>>>0>=(
c[(c[k>>2]|0)+16>>2]|0)>>>0?(c[(c[(c[k>>2]|0)+128>>2]|0)+52>>2]|
0)==0:0){c[f>>2]=6;p=c[f>>2]|0;i=n;return p|0}if(c[h>>2]&2|0){if(c[(c[k>>2]|0)+8>
;>2]&8192|0)c[h>>2]=c[h>>2]&-3;if(c[h>>2]&32768|0)c[h>>2]=c[h>
x3e;2]|2}if(c[h>>2]&1025|0?(c[h>>2]=c[h>>2]|9,(c[(c[k>>2]|0)+8>>2]&8192
|0)==0):0)c[h>>2]=c[h>>2]|2;c[j>>2]=ff(c[l>>2]|0,c[m>>2]|0,c[g>>2]|0
,c[h>>2]|0)|0;c[f>>2]=c[j>>2];p=c[f>>2]|0;i=n;return p|0}function ff(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;r=i;i=i+256|0;h=r+240|0;j=r+236|0;k=r+232|0;l=r+228|0;m=r+224|0;o=r+220
|0;n=r+216|0;p=r+8|0;q=r;c[j>>2]=b;c[k>>2]=d;c[l>>2]=f;c[m>>2]=g;c[o>>2]=c[(c[
k>>2]|0)+4>>2];c[n>>2]=0;if(((c[(c[j>>2]|0)+112>>2]|0)!=-1?(c[m>>2]
x26;8|0)==0:0)?(c[n>>2]=gf(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0,(c[n>
;>2]|0)==0):0){c[q>>2]=c[o>>2];if((c[(c[q>>2]|0)+8>>2]&1|0?(hf(p,c[j>>
;2]|0,c[k>>2]|0,c[m>>2]|0,1)|0,ah(p,c[l>>2]|0,0,1)|0,c[(c[k>>2]|0)+56>>2]=c[p+
60>>2],c[(c[k>>2]|0)+60>>2]=(c[p+176>>2]|0)+(c[p+36+12>>2]|0)-(c[p+180>
x3e;2]|0),c[(c[o>>2]|0)+468+12>>2]|0):0)?(c[m>>2]&512|0)==0:0)c[(c[k>>2]|0)+56>
;>2]=e[(c[o>>2]|0)+216+10>>1];c[h>>2]=0;b=c[h>>2]|0;i=r;return b|0}if((c[m>>
;2]&1|0)==0?(a[(c[j>>2]|0)+72+36>>0]|0)==0:0){c[h>>2]=36;b=c[h>>2]|0;i=r;return b|0
}if(c[m>>2]&16384|0){c[h>>2]=6;b=c[h>>2]|0;i=r;return b|0}c[n>>2]=hf(p,c[j>>
;2]|0,c[k>>2]|0,c[m>>2]|0,0)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];b=c[h>>
2]|0;i=r;return b|0}c[(c[k>>2]|0)+72>>2]=1869968492;c[(c[k>>2]|0)+128>>2]=0;c[(c[k>
x3e;2]|0)+108+16>>2]=0;c[n>>2]=ah(p,c[l>>2]|0,0,0)|0;if(!(c[n>>2]|0)){if((c[(c[k>
x3e;2]|0)+72>>2]|0)!=1668246896){b=(c[k>>2]|0)+108|0;q=(c[p+12>>2]|0)+20|0;c[b>>2]=c[q
x3e;>2];c[b+4>>2]=c[q+4>>2];c[b+8>>2]=c[q+8>>2];c[b+12>>2]=c[q+12>
x3e;2];c[b+16>>2]=c[q+16>>2];b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]&-513;
if(c[p+68>>2]|0)Nb((c[k>>2]|0)+108|0,0-(c[p+68>>2]|0)|0,0)}else{c[(c[k>>2]|0)+128>
x3e;2]=c[(c[p+12>>2]|0)+20+28>>2];c[(c[k>>2]|0)+132>>2]=c[(c[p+12>>2]|0)+20+32
>>2]}a:do if(!(c[m>>2]&2)){if(!(a[(c[p+160>>2]|0)+284+53>>0]|0)){b=(c[k>>
2]|0)+108+16|0;c[b>>2]=c[b>>2]|8;break}switch(c[(c[p+160>>2]|0)+284+56>>2]|0){case 1:break
a;case 0:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|32;break a}case 4:{b=(c[k>>2]|0)+108+16
|0;c[b>>2]=c[b>>2]|48;break a}case 5:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|16
;break a}default:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|8;break a}}}while(0);nh(p,c[l>>
2]|0)|0}if((c[m>>2]&1|0)==0?(e[(c[j>>2]|0)+12+2>>1]|0)<24:0){b=(c[k>>2]|0)+108
+16|0;c[b>>2]=c[b>>2]|256}c[h>>2]=c[n>>2];b=c[h>>2]|0;i=r;return b|0}function
gf(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;n=i;i=i+48|0;q=n+28|0;j=n+24|0;p=n+20|0;k=n+16|0
;r=n+12|0;s=n+8|0;o=n+4|0;l=n;m=n+32|0;c[q>>2]=e;c[j>>2]=f;c[p>>2]=g;c[k>>2]=h;c[r>
x3e;2]=c[(c[j>>2]|0)+4>>2];c[s>>2]=c[(c[r>>2]|0)+532>>2];c[o>>2]=c[(
c[r>>2]|0)+104>>2];c[l>>2]=Na[c[(c[s>>2]|0)+104>>2]&1](c[r>>2]|
0,c[(c[q>>2]|0)+112>>2]|0,c[p>>2]|0,c[k>>2]|0,c[o>>2]|0,(c[j>>2]|0)+
76|0,m)|0;if(c[l>>2]|0){s=c[l>>2]|0;i=n;return s|0}b[(c[j>>2]|0)+108+2>>1]=0;b[(c[j>
;>2]|0)+108>>1]=0;c[(c[j>>2]|0)+24>>2]=d[m+1>>0]<<6;c[(c[j>>2]|
0)+24+4>>2]=d[m>>0]<<6;c[(c[j>>2]|0)+24+8>>2]=a[m+2>>0]<<6
;c[(c[j>>2]|0)+24+12>>2]=a[m+3>>0]<<6;c[(c[j>>2]|0)+24+16>>2]=d[m+4
x3e;>0]<<6;c[(c[j>>2]|0)+24+20>>2]=a[m+5>>0]<<6;c[(c[j>>2]|0)+24
+24>>2]=a[m+6>>0]<<6;c[(c[j>>2]|0)+24+28>>2]=d[m+7>>0]<<6;
c[(c[j>>2]|0)+72>>2]=1651078259;if(c[k>>2]&16|0){c[(c[j>>2]|0)+100>>2]=a[
m+5>>0];c[(c[j>>2]|0)+104>>2]=a[m+6>>0];s=c[l>>2]|0;i=n;return s|0}else{c[(c[j
>>2]|0)+100>>2]=a[m+2>>0];c[(c[j>>2]|0)+104>>2]=a[m+3>>0];s=c[l>
;>2]|0;i=n;return s|0}return 0}function hf(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;y=i;i=i+64|0;n=y+44|0;o=y+40|0;p=y+36|0;q=y+32|0;r=y+28|0;s=y+49|0;v=y+24|0;x=y+20|0;u=y+16|0;l=y+48|0;
k=y+12|0;m=y+8|0;t=y+4|0;w=y;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;a[s>>0]=j
;c[v>>2]=c[(c[q>>2]|0)+4>>2];c[x>>2]=c[(c[v>>2]|0)+104>>2];Ns(c[o>
;>2]|0,0,208)|0;if(!((c[r>>2]&2|0)!=0|(a[s>>0]|0)!=0)){if((a[(c[p>>2]|0)+301>>
0]|0)==0?(c[k>>2]=jf(c[p>>2]|0)|0,c[k>>2]|0):0){c[n>>2]=c[k>>2];x=c[n>>
;2]|0;i=y;return x|0}if(d[(c[p>>2]|0)+292>>0]|0)k=c[(c[p>>2]|0)+296>>2]|0;else k=c[(c[(c
[v>>2]|0)+96>>2]|0)+40>>2]|0;c[u>>2]=k;if(!(c[u>>2]|0)){c[n>>2]=153;
x=c[n>>2]|0;i=y;return x|0}a[l>>0]=(c[r>>2]>>16&15|0)!=2;Vg(c[u>>2]|0,c[v
>>2]|0,c[p>>2]|0)|0;if((d[l>>0]|0)!=(d[(c[u>>2]|0)+604>>0]|0)){a[(c[u>>
;2]|0)+604>>0]=a[l>>0]|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[(
c[p>>2]|0)+240>>2]|0)>>>0)break;l=Mb(b[(c[(c[v>>2]|0)+672>>2]|0)+(c[m>
;>2]<<1)>>1]|0,c[(c[p>>2]|0)+72+16>>2]|0)|0;c[(c[(c[p>>2]|0)+244>>
;2]|0)+(c[m>>2]<<2)>>2]=l;c[m>>2]=(c[m>>2]|0)+1}$g(c[p>>2]|0)|0}if(d
[(c[u>>2]|0)+284+52>>0]&1|0)c[r>>2]=c[r>>2]|2;if(d[(c[u>>2]|0)+284+52>
;>0]&2|0){k=(c[u>>2]|0)+284|0;j=568;g=k+68|0;do{c[k>>2]=c[j>>2];k=k+4|0;j=j+4|0}while((k
|0)<(g|0))}a[(c[u>>2]|0)+561>>0]=c[r>>2]&128;c[(c[o>>2]|0)+160>>2]=c
[u>>2];c[(c[o>>2]|0)+164>>2]=c[(c[u>>2]|0)+392>>2]}do if(c[(c[(c[v>>
2]|0)+128>>2]|0)+52>>2]|0)c[(c[o>>2]|0)+84>>2]=0;else{c[t>>2]=Wa[c[(c[v>
x3e;2]|0)+508>>2]&31](c[v>>2]|0,1735162214,c[x>>2]|0,0)|0;if((c[t>>2]|0)==142){c[(c
[o>>2]|0)+84>>2]=0;break}if(!(c[t>>2]|0)){u=Mc(c[x>>2]|0)|0;c[(c[o>>2]|0)+84
x3e;>2]=u;break}c[n>>2]=c[t>>2];x=c[n>>2]|0;i=y;return x|0}while(0);if(!(a[s>>0]|0)){
c[w>>2]=c[c[(c[q>>2]|0)+156>>2]>>2];dc(c[w>>2]|0);c[(c[o>>2]|0)+12
x3e;>2]=c[w>>2]}c[(c[o>>2]|0)+16>>2]=c[r>>2];c[c[o>>2]>>2]=c[v
x3e;>2];c[(c[o>>2]|0)+4>>2]=c[p>>2];c[(c[o>>2]|0)+8>>2]=c[q>>2];
c[(c[o>>2]|0)+24>>2]=c[x>>2];c[n>>2]=0;x=c[n>>2]|0;i=y;return x|0}function jf(
d){d=d|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;h=k+12|0;j=k+8|0;g=k+4|0;f=k;c[h>>2]=d;c[j>>2]=0;if((a[(c[h>
;>2]|0)+300>>0]|0)==0?(c[j>>2]=kf(c[h>>2]|0)|0,c[j>>2]|0):0){j=c[j>>2]|0;
i=k;return j|0}if(a[(c[h>>2]|0)+301>>0]|0){j=c[j>>2]|0;i=k;return j|0}c[f>>2]=c[c[h>
;>2]>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[(c[h>>2]|0)+
240>>2]|0)>>>0)break;d=Mb(b[(c[(c[f>>2]|0)+672>>2]|0)+(c[g>>2]<<
;1)>>1]|0,c[(c[h>>2]|0)+72+16>>2]|0)|0;c[(c[(c[h>>2]|0)+244>>2]|0)+(c[g>
x3e;2]<<2)>>2]=d;c[g>>2]=(c[g>>2]|0)+1}c[g>>2]=0;while(1){if((c[g>>2
]|0)>>>0>=(e[(c[h>>2]|0)+256+8>>1]|0)>>>0)break;c[(c[(c[h>>2]|0
)+256+12>>2]|0)+(c[g>>2]<<3)>>2]=0;c[(c[(c[h>>2]|0)+256+12>>2]|0)+(c
[g>>2]<<3)+4>>2]=0;c[(c[(c[h>>2]|0)+256+16>>2]|0)+(c[g>>2]<<
;3)>>2]=0;c[(c[(c[h>>2]|0)+256+16>>2]|0)+(c[g>>2]<<3)+4>>2]=0;c[g>
;>2]=(c[g>>2]|0)+1}c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(e[(c[h>
x3e;2]|0)+248>>1]|0)>>>0)break;c[(c[(c[h>>2]|0)+252>>2]|0)+(c[g>>2]<
x3c;2)>>2]=0;c[g>>2]=(c[g>>2]|0)+1}f=(c[h>>2]|0)+172|0;g=568;d=f+68|0;do{c[f>>
2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(d|0));c[j>>2]=$g(c[h>>2]|0)|0;if(c[j>>2]|0){
j=c[j>>2]|0;i=k;return j|0}a[(c[h>>2]|0)+301>>0]=1;j=c[j>>2]|0;i=k;return j|0}function kf
(d){d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;l=q+32|0;m=q+28|0;p=q+24|0;n=q+20|0;h=q+16|0;f=q+12|0;k=q
+36|0;g=q+8|0;j=q+4|0;o=q;c[l>>2]=d;c[p>>2]=c[l>>2];c[n>>2]=c[c[l>>2]>>
;2];c[h>>2]=c[(c[n>>2]|0)+100>>2];c[g>>2]=(c[n>>2]|0)+260;a[(c[p>>2]|
0)+300>>0]=1;a[(c[p>>2]|0)+301>>0]=0;c[(c[p>>2]|0)+120>>2]=e[(c[g>>2
]|0)+20>>1];c[(c[p>>2]|0)+132>>2]=e[(c[g>>2]|0)+22>>1];c[(c[p>>2]|0)+
116>>2]=0;c[(c[p>>2]|0)+128>>2]=0;c[(c[p>>2]|0)+140>>2]=0;c[(c[p>>2]|
0)+144>>2]=0;c[(c[p>>2]|0)+240>>2]=c[(c[n>>2]|0)+668>>2];b[(c[p>>2]|
0)+248>>1]=b[(c[g>>2]|0)+18>>1]|0;c[j>>2]=(c[p>>2]|0)+72;a[(c[j>>2]|
0)+37>>0]=0;a[(c[j>>2]|0)+38>>0]=0;c[f>>2]=0;while(1){if((c[f>>2]|0)>=4)break
;c[(c[j>>2]|0)+20+(c[f>>2]<<2)>>2]=0;c[f>>2]=(c[f>>2]|0)+1}j=hc(c[h
x3e;>2]|0,16,0,c[(c[p>>2]|0)+120>>2]|0,0,m)|0;c[(c[p>>2]|0)+124>>2]=j;if(((((c[m>
;>2]|0)==0?(j=hc(c[h>>2]|0,16,0,c[(c[p>>2]|0)+132>>2]|0,0,m)|0,c[(c[p>>2]|0)+136>
;>2]=j,(c[m>>2]|0)==0):0)?(j=hc(c[h>>2]|0,4,0,c[(c[p>>2]|0)+240>>2]|0,0,m)|0,c[(c[p
>>2]|0)+244>>2]=j,(c[m>>2]|0)==0):0)?(j=hc(c[h>>2]|0,4,0,e[(c[p>>2]|0)+248>
;>1]|0,0,m)|0,c[(c[p>>2]|0)+252>>2]=j,(c[m>>2]|0)==0):0)?(b[k>>1]=b[(c[g>>
;2]|0)+16>>1]|0,b[k>>1]=(e[k>>1]|0)+4,c[m>>2]=lf(c[h>>2]|0,b[k>>1]|0
,0,(c[p>>2]|0)+256|0)|0,(c[m>>2]|0)==0):0){b[(c[p>>2]|0)+256+8>>1]=b[k>>1]|0;d
=(c[p>>2]|0)+172|0;f=568;g=d+68|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));c[o
x3e;>2]=c[(c[(c[n>>2]|0)+96>>2]|0)+4>>2];c[(c[n>>2]|0)+688>>2]=c[(c[o>
;>2]|0)+180>>2];if(!(c[(c[n>>2]|0)+688>>2]|0))c[(c[n>>2]|0)+688>>2]=37;c[
m>>2]=Ug(c[p>>2]|0)|0}if(!(c[m>>2]|0)){p=c[m>>2]|0;i=q;return p|0}bf(c[l>>2]|0
);p=c[m>>2]|0;i=q;return p|0}function lf(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;n=i;i=i+16|0;h=n
+8|0;j=n+14|0;k=n+12|0;l=n+4|0;m=n;c[h>>2]=a;b[j>>1]=d;b[k>>1]=f;c[l>>2]=g;f=c[l>
x3e;2]|0;d=f+36|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(d|0));c[c[l>>2]>>2]=c[h>>2];g=hc
(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0;c[(c[l>>2]|0)+12>>2]=g;if(((((c[m>>2]|0)==0?(g
=hc(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+16>>2]=g,(c[m>>2]|0)==0):0)?(
g=hc(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+20>>2]=g,(c[m>>2]|0)==0):0)?(
g=hc(c[h>>2]|0,1,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+24>>2]=g,(c[m>>2]|0)==0):0)?(
h=hc(c[h>>2]|0,2,0,b[k>>1]|0,0,m)|0,c[(c[l>>2]|0)+28>>2]=h,(c[m>>2]|0)==0):0){
b[(c[l>>2]|0)+4>>1]=b[j>>1]|0;b[(c[l>>2]|0)+6>>1]=b[k>>1]|0;m=c[m>
;>2]|0;i=n;return m|0}cf(c[l>>2]|0);m=c[m>>2]|0;i=n;return m|0}function mf(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,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=i;i=i+96|0;h=G+68|0;j=G+64|0;C=G+60|0
;z=G+56|0;E=G+80|0;k=G+78|0;l=G+76|0;t=G+74|0;v=G+52|0;x=G+48|0;u=G+72|0;w=G+44|0;y=G+40|0;r=G+36|0;s=G+32|0;m=G+28|0;n=G+24|0;o
=G+20|0;p=G+16|0;q=G+12|0;B=G+8|0;D=G+4|0;A=G;c[j>>2]=f;c[C>>2]=0;c[(c[j>>2]|0)+244+12>>
2]=0;f=(c[j>>2]|0)+592|0;if((e[(c[j>>2]|0)+216>>1]|0)!=(e[(c[j>>2]|0)+216+2>>1
]|0)){c[f>>2]=103;c[(c[j>>2]|0)+596>>2]=9;c[(c[j>>2]|0)+600>>2]=10}else{c[f>
;>2]=104;c[(c[j>>2]|0)+596>>2]=11;c[(c[j>>2]|0)+600>>2]=12}vf(c[j>>2]|0);
Hf(c[j>>2]|0,c[(c[j>>2]|0)+284+28>>2]&255);a:while(1){a[(c[j>>2]|0)+368>>
0]=a[(c[(c[j>>2]|0)+356>>2]|0)+(c[(c[j>>2]|0)+360>>2]|0)>>0]|0;g=a[10705+(d[(c
[j>>2]|0)+368>>0]|0)>>0]|0;c[(c[j>>2]|0)+372>>2]=g;if((g|0)<0){if(((c[(c[
j>>2]|0)+360>>2]|0)+1|0)>(c[(c[j>>2]|0)+364>>2]|0)){F=196;break}g=2-(_(c[(c[j>
x3e;2]|0)+372>>2]|0,d[(c[(c[j>>2]|0)+356>>2]|0)+((c[(c[j>>2]|0)+360>>2]|0)+1)
x3e;>0]|0)|0)|0;c[(c[j>>2]|0)+372>>2]=g}if(((c[(c[j>>2]|0)+360>>2]|0)+(c[(c[j>
x3e;2]|0)+372>>2]|0)|0)>(c[(c[j>>2]|0)+364>>2]|0)){F=196;break}c[(c[j>>2]|0)+28>
;>2]=(c[(c[j>>2]|0)+16>>2]|0)-(d[10961+(d[(c[j>>2]|0)+368>>0]|0)>>0]>
;>4);f=c[j>>2]|0;if((c[(c[j>>2]|0)+28>>2]|0)<0){F=10;break}c[(c[j>>2]|0)+32>
;>2]=(c[f+28>>2]|0)+(d[10961+(d[(c[j>>2]|0)+368>>0]|0)>>0]&15);f=c[j>>
;2]|0;if((c[(c[j>>2]|0)+32>>2]|0)>>>0>(c[(c[j>>2]|0)+20>>2]|0)>
x3e;>0){F=12;break}a[f+376>>0]=1;c[(c[j>>2]|0)+12>>2]=0;c[z>>2]=(c[(c[j>>
2]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<2);a[E>>0]=a[(c[j>>2]|0)+368
x3e;>0]|0;b:do switch(d[E>>0]|0){case 5:case 4:case 3:case 2:case 1:case 0:{b[k>>1]=(d[E>>0]
x26;1)<<14;b[l>>1]=b[k>>1]^16384;if((d[E>>0]|0)<4){b[(c[j>>2]|0)+284+10
x3e;>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+10+2>>1]=b[l>>1]|0;b[(c[j>>2]|0)+284+
6>>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+6+2>>1]=b[l>>1]|0}if(!(d[E>>0]&
;2)){b[(c[j>>2]|0)+284+14>>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+14+2>>1]=b[l>
x3e;1]|0}vf(c[j>>2]|0);break}case 7:case 6:{if(!((Qf(c[j>>2]|0,c[(c[z>>2]|0)+4>>2]&
65535,c[c[z>>2]>>2]&65535,d[(c[j>>2]|0)+368>>0]|0,(c[j>>2]|0)+284+10|0)|0
)&255)){g=(c[j>>2]|0)+284+6|0;f=(c[j>>2]|0)+284+10|0;b[g>>1]=b[f>>1]|0;b[g+2>
x3e;1]=b[f+2>>1]|0;vf(c[j>>2]|0)}break}case 9:case 8:{if(!((Qf(c[j>>2]|0,c[(c[z>>2]|0)+4
>>2]&65535,c[c[z>>2]>>2]&65535,d[(c[j>>2]|0)+368>>0]|0,(c[j>>
;2]|0)+284+14|0)|0)&255))vf(c[j>>2]|0);break}case 10:{b[t>>1]=c[(c[z>>2]|0)+4>>2];c
[x>>2]=b[t>>1];b[t>>1]=c[c[z>>2]>>2];c[v>>2]=b[t>>1];Rf(c[
j>>2]|0,c[v>>2]|0,c[x>>2]|0,(c[j>>2]|0)+284+10|0)|0;g=(c[j>>2]|0)+284+6|0;f=(c
[j>>2]|0)+284+10|0;b[g>>1]=b[f>>1]|0;b[g+2>>1]=b[f+2>>1]|0;vf(c[j>>2
]|0);break}case 11:{b[u>>1]=c[(c[z>>2]|0)+4>>2];c[y>>2]=b[u>>1];b[u>>
;1]=c[c[z>>2]>>2];c[w>>2]=b[u>>1];Rf(c[j>>2]|0,c[w>>2]|0,c[y>
x3e;2]|0,(c[j>>2]|0)+284+14|0)|0;vf(c[j>>2]|0);break}case 12:{c[c[z>>2]>>2]=b[(c[j>
x3e;2]|0)+284+10>>1];c[(c[z>>2]|0)+4>>2]=b[(c[j>>2]|0)+284+10+2>>1];break}case
13:{c[c[z>>2]>>2]=b[(c[j>>2]|0)+284+14>>1];c[(c[z>>2]|0)+4>>2]=b[(c
[j>>2]|0)+284+14+2>>1];break}case 14:{g=(c[j>>2]|0)+284+14|0;f=(c[j>>2]|0)+284+10|0;b[g
x3e;>1]=b[f>>1]|0;b[g+2>>1]=b[f+2>>1]|0;vf(c[j>>2]|0);break}case 15:{Sf(c[j>
x3e;2]|0,c[z>>2]|0);break}case 16:{b[(c[j>>2]|0)+284>>1]=c[c[z>>2]>>2];break}case
17:{b[(c[j>>2]|0)+284+2>>1]=c[c[z>>2]>>2];break}case 18:{b[(c[j>>2]|0)+284+4
x3e;>1]=c[c[z>>2]>>2];break}case 19:{Tf(c[j>>2]|0,c[z>>2]|0);break}case 20:{Uf(c[j
x3e;>2]|0,c[z>>2]|0);break}case 21:{Vf(c[j>>2]|0,c[z>>2]|0);break}case 22:{Wf(c[j>>
2]|0,c[z>>2]|0);break}case 23:if((c[c[z>>2]>>2]|0)<0){c[(c[j>>2]|0)+12>>2
]=132;break b}else{c[(c[j>>2]|0)+284+20>>2]=c[c[z>>2]>>2];break b}case 24:{c[(c[j>
x3e;2]|0)+284+28>>2]=1;c[(c[j>>2]|0)+568>>2]=33;break}case 25:{c[(c[j>>2]|0)+284+28>
;>2]=0;c[(c[j>>2]|0)+568>>2]=34;break}case 26:{c[(c[j>>2]|0)+284+24>>2]=c[c[z>
x3e;2]>>2];break}case 27:{Xf(c[j>>2]|0,c[z>>2]|0);break}case 28:{g=(c[j>>2]|0)+360|0;c[g
>>2]=(c[g>>2]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|0)+360>>2]|0)<
;0)c[(c[j>>2]|0)+12>>2]=132;a[(c[j>>2]|0)+376>>0]=0;break}case 29:{c[(c[j>>2]|
0)+284+36>>2]=c[c[z>>2]>>2];break}case 30:{c[(c[j>>2]|0)+284+40>>2]=c[c[z>
;>2]>>2];break}case 31:{c[(c[j>>2]|0)+284+44>>2]=c[c[z>>2]>>2]>>
;10;break}case 32:{c[(c[z>>2]|0)+4>>2]=c[c[z>>2]>>2];break}case 127:case 126:case 89:case
33:break;case 34:{c[(c[j>>2]|0)+32>>2]=0;break}case 35:{c[r>>2]=c[c[z>>2]>>2];
c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>>2];c[(c[z>>2]|0)+4>>2]=c[r>>
;2];break}case 36:{c[c[z>>2]>>2]=c[(c[j>>2]|0)+16>>2];break}case 37:{c[s>>2]=c
[c[z>>2]>>2];if((c[s>>2]|0)>0?(c[s>>2]|0)<=(c[(c[j>>2]|0)+28>
x3e;2]|0):0){c[c[z>>2]>>2]=c[(c[(c[j>>2]|0)+24>>2]|0)+((c[(c[j>>2]|0)+28>
x3e;2]|0)-(c[s>>2]|0)<<2)>>2];break b}c[(c[j>>2]|0)+12>>2]=134;break}case 38:{
Zf(c[j>>2]|0,c[z>>2]|0);break}case 39:{_f(c[j>>2]|0,c[z>>2]|0);break}case 40:{$f(c[j>
;>2]|0,c[z>>2]|0);break}case 41:{bg(c[j>>2]|0,c[z>>2]|0);break}case 42:{cg(c[j>>2]|
0,c[z>>2]|0);break}case 43:{dg(c[j>>2]|0,c[z>>2]|0);break}case 44:{eg(c[j>>2]|0,c[z>
;>2]|0);break}case 45:{fg(c[j>>2]|0,c[z>>2]|0);break}case 47:case 46:{gg(c[j>>2]|0,c[z>
x3e;2]|0);break}case 49:case 48:{hg(c[j>>2]|0,c[z>>2]|0);break}case 51:case 50:{kg(c[j>>2]|0,c[z
x3e;>2]|0);break}case 53:case 52:{ng(c[j>>2]|0,c[z>>2]|0);break}case 55:case 54:{og(c[j>>2]|0
,c[z>>2]|0);break}case 56:{pg(c[j>>2]|0,c[z>>2]|0);break}case 57:{rg(c[j>>2]|0,c[z>
x3e;2]|0);break}case 59:case 58:{sg(c[j>>2]|0,c[z>>2]|0);break}case 60:{tg(c[j>>2]|0,c[z>>
;2]|0);break}case 61:{c[(c[j>>2]|0)+284+28>>2]=2;c[(c[j>>2]|0)+568>>2]=35;break}case 63:
case 62:{ug(c[j>>2]|0,c[z>>2]|0);break}case 64:{vg(c[j>>2]|0,c[z>>2]|0);break}case 65:{wg
(c[j>>2]|0,c[z>>2]|0);break}case 66:{c[m>>2]=c[c[z>>2]>>2];if((c[m>>
2]|0)>>>0>=(e[(c[j>>2]|0)+468>>1]|0)>>>0)if(a[(c[j>>2]|0)+561
x3e;>0]|0){F=81;break b}else break b;else{c[(c[(c[j>>2]|0)+472>>2]|0)+(c[m>>2]<<2)
x3e;>2]=c[(c[z>>2]|0)+4>>2];break b}}case 67:{c[n>>2]=c[c[z>>2]>>2];if((c
[n>>2]|0)>>>0<(e[(c[j>>2]|0)+468>>1]|0)>>>0){c[c[z>>2
]>>2]=c[(c[(c[j>>2]|0)+472>>2]|0)+(c[n>>2]<<2)>>2];break b}if(a[(c[j
>>2]|0)+561>>0]|0)F=81;else c[c[z>>2]>>2]=0;break}case 68:{c[o>>2]=c[c[z>
x3e;2]>>2];f=c[j>>2]|0;if((c[o>>2]|0)>>>0>=(c[(c[j>>2]|0)+380>
x3e;2]|0)>>>0)if(a[f+561>>0]|0){F=81;break b}else break b;else{Ua[c[f+596>>2]&31](c[j>
;>2]|0,c[o>>2]|0,c[(c[z>>2]|0)+4>>2]|0);break b}}case 69:{c[p>>2]=c[c[z>>
2]>>2];f=c[j>>2]|0;if((c[p>>2]|0)>>>0<(c[(c[j>>2]|0)+380>>
2]|0)>>>0){g=Ya[c[f+592>>2]&127](c[j>>2]|0,c[p>>2]|0)|0;c[c[z>>2]>
;>2]=g;break b}if(a[f+561>>0]|0)F=81;else c[c[z>>2]>>2]=0;break}case 71:case 70:{yg(c[j>
x3e;2]|0,c[z>>2]|0);break}case 72:{zg(c[j>>2]|0,c[z>>2]|0);break}case 74:case 73:{Ag(c[j>>
;2]|0,c[z>>2]|0);break}case 75:{g=Bg(c[j>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 76:{g=Bg(c[
j>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 77:{a[(c[j>>2]|0)+284+32>>0]=1;break}case
78:{a[(c[j>>2]|0)+284+32>>0]=0;break}case 79:{c[(c[j>>2]|0)+12>>2]=135;break}case 80:{c
[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<(c[(c[z>>2]|0)+4>>2]|0)&1;break
}case 81:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<=(c[(c[z>>2]|0)+4>>2]|
0)&1;break}case 82:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)>(c[(c[z>>2]|0)+4
>>2]|0)&1;break}case 83:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)>=(c[(c[z>
;>2]|0)+4>>2]|0)&1;break}case 84:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)==(
c[(c[z>>2]|0)+4>>2]|0)&1;break}case 85:{c[c[z>>2]>>2]=(c[c[z>>2]>>
;2]|0)!=(c[(c[z>>2]|0)+4>>2]|0)&1;break}case 86:{g=((Oa[c[(c[j>>2]|0)+568>>2]&
63](c[j>>2]|0,c[c[z>>2]>>2]|0,0)|0)&127|0)==64&1;c[c[z>>2]>>2]=g;break
}case 87:{g=((Oa[c[(c[j>>2]|0)+568>>2]&63](c[j>>2]|0,c[c[z>>2]>>2]|0,0)|0
)&127|0)==0&1;c[c[z>>2]>>2]=g;break}case 88:{Cg(c[j>>2]|0,c[z>>2]|0);break}case
90:{if(c[c[z>>2]>>2]|0)f=(c[(c[z>>2]|0)+4>>2]|0)!=0;else f=0;c[c[z>>2]>
x3e;2]=f&1;break}case 91:{if(c[c[z>>2]>>2]|0)f=1;else f=(c[(c[z>>2]|0)+4>>2]|0)!=0;
c[c[z>>2]>>2]=f&1;break}case 92:{c[c[z>>2]>>2]=((c[c[z>>2]>>2]|
0)!=0^1)&1;break}case 93:{Dg(c[j>>2]|0,c[z>>2]|0);break}case 94:{b[(c[j>>2]|0)+284+48>
x3e;1]=c[c[z>>2]>>2];break}case 95:{b[(c[j>>2]|0)+284+50>>1]=c[c[z>>2]>
x3e;2];break}case 96:{g=c[z>>2]|0;c[g>>2]=(c[g>>2]|0)+(c[(c[z>>2]|0)+4>>2]|0);
break}case 97:{g=c[z>>2]|0;c[g>>2]=(c[g>>2]|0)-(c[(c[z>>2]|0)+4>>2]|0);break}case
98:if(!(c[(c[z>>2]|0)+4>>2]|0)){c[(c[j>>2]|0)+12>>2]=133;break b}else{g=Ub(c[c[z>
x3e;2]>>2]|0,64,c[(c[z>>2]|0)+4>>2]|0)|0;c[c[z>>2]>>2]=g;break b}case 99:{g=xb
(c[c[z>>2]>>2]|0,c[(c[z>>2]|0)+4>>2]|0,64)|0;c[c[z>>2]>>2]=g;break}case
100:{g=c[c[z>>2]>>2]|0;c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<0?0-g|0
:g;break}case 101:{c[c[z>>2]>>2]=0-(c[c[z>>2]>>2]|0);break}case 102:{c[c[z>>2]
x3e;>2]=c[c[z>>2]>>2]&-64;break}case 103:{c[c[z>>2]>>2]=(c[c[z>>2]
x3e;>2]|0)+63&-64;break}case 107:case 106:case 105:case 104:{g=Oa[c[(c[j>>2]|0)+568>>2]&63](c
[j>>2]|0,c[c[z>>2]>>2]|0,c[(c[j>>2]|0)+244+20+((d[(c[j>>2]|0)+368>>0
]|0)-104<<2)>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 111:case 110:case 109:case 108:{g=If(c[
j>>2]|0,c[c[z>>2]>>2]|0,c[(c[j>>2]|0)+244+20+((d[(c[j>>2]|0)+368>>0]|
0)-108<<2)>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 112:{c[q>>2]=c[c[z>>2
]>>2];if((c[q>>2]|0)>>>0>=(c[(c[j>>2]|0)+380>>2]|0)>>>
;0)if(a[(c[j>>2]|0)+561>>0]|0){F=81;break b}else break b;else{g=Mb(c[(c[z>>2]|0)+4>>2]|0
,c[(c[j>>2]|0)+244+16>>2]|0)|0;c[(c[(c[j>>2]|0)+384>>2]|0)+(c[q>>2]<<
;2)>>2]=g;break b}}case 114:case 113:{Dg(c[j>>2]|0,c[z>>2]|0);break}case 117:case 116:case 115:{Eg
(c[j>>2]|0,c[z>>2]|0);break}case 118:{Fg(c[j>>2]|0,16384,c[c[z>>2]>>2]|0);c[(c
[j>>2]|0)+284+28>>2]=6;c[(c[j>>2]|0)+568>>2]=36;break}case 119:{Fg(c[j>>2]|0,11585
,c[c[z>>2]>>2]|0);c[(c[j>>2]|0)+284+28>>2]=7;c[(c[j>>2]|0)+568>>2]=37
;break}case 120:{if(c[(c[z>>2]|0)+4>>2]|0){g=(c[j>>2]|0)+360|0;c[g>>2]=(c[g>>2
]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|0)+360>>2]|0)<0)c[(c[j>>2]|0)+12>
;>2]=132;a[(c[j>>2]|0)+376>>0]=0}break}case 121:{if(!(c[(c[z>>2]|0)+4>>2]|0)){g=(c[
j>>2]|0)+360|0;c[g>>2]=(c[g>>2]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|
0)+360>>2]|0)<0)c[(c[j>>2]|0)+12>>2]=132;a[(c[j>>2]|0)+376>>0]=0}break}case
122:{c[(c[j>>2]|0)+284+28>>2]=5;c[(c[j>>2]|0)+568>>2]=38;break}case 123:{$f(c[j>
x3e;2]|0,c[z>>2]|0);break}case 124:{c[(c[j>>2]|0)+284+28>>2]=4;c[(c[j>>2]|0)+568>
x3e;2]=39;break}case 125:{c[(c[j>>2]|0)+284+28>>2]=3;c[(c[j>>2]|0)+568>>2]=40;break}case
128:{Gg(c[j>>2]|0,c[z>>2]|0);break}case 129:{Hg(c[j>>2]|0,c[z>>2]|0);break}case 130:{Ig
(c[j>>2]|0,c[z>>2]|0);break}case 132:case 131:{$f(c[j>>2]|0,c[z>>2]|0);break}case 133:{Jg
(c[j>>2]|0,c[z>>2]|0);break}case 135:case 134:{Kg(c[j>>2]|0,c[z>>2]|0);break}case 136:{Lg
(c[j>>2]|0,c[z>>2]|0);break}case 137:{Mg(c[j>>2]|0,c[z>>2]|0);break}case 138:{Ng(c[j>
;>2]|0,c[z>>2]|0);break}case 139:{if((c[(c[z>>2]|0)+4>>2]|0)>(c[c[z>>2]>
x3e;2]|0))c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>>2];break}case 140:{if((c[(c[z>>2]|0)+
4>>2]|0)<(c[c[z>>2]>>2]|0))c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>
x3e;2];break}case 141:{Og(c[j>>2]|0,c[z>>2]|0);break}case 142:{Pg(c[j>>2]|0,c[z>>2]|0);break
}case 143:{$f(c[j>>2]|0,c[z>>2]|0);break}default:{if((d[E>>0]|0)>=224){Qg(c[j>>2]|0
,c[z>>2]|0);break b}if((d[E>>0]|0)>=192){Rg(c[j>>2]|0,c[z>>2]|0);break b}if((d[E>
;>0]|0)>=184){Sg(c[j>>2]|0,c[z>>2]|0);break b}f=c[j>>2]|0;g=c[z>>2]|0;if((d[E
x3e;>0]|0)>=176){Tg(f,g);break b}else{$f(f,g);break b}}}while(0);if((F|0)==81){F=0;c[(c[j>>2]|0)+12>>
;2]=134}f=c[j>>2]|0;if(c[(c[j>>2]|0)+12>>2]|0){if((c[f+12>>2]|0)!=128)break;c[B>>
;2]=c[(c[j>>2]|0)+416>>2];c[D>>2]=(c[B>>2]|0)+(c[(c[j>>2]|0)+408>>2]
x3c;<4);while(1){if((c[B>>2]|0)>>>0>=(c[D>>2]|0)>>>0){F=186;break a}
if(d[(c[B>>2]|0)+12>>0]|0?(d[(c[j>>2]|0)+368>>0]|0)==(c[(c[B>>2]|0)+8>>
;2]&255|0):0)break;c[B>>2]=(c[B>>2]|0)+16}f=c[j>>2]|0;if((c[(c[j>>2]|0)+428>
x3e;2]|0)>=(c[(c[j>>2]|0)+432>>2]|0)){F=183;break}c[A>>2]=(c[(c[j>>2]|0)+436>
x3e;2]|0)+(c[f+428>>2]<<4);c[c[A>>2]>>2]=c[(c[j>>2]|0)+352>>2];c[(c[
A>>2]|0)+4>>2]=(c[(c[j>>2]|0)+360>>2]|0)+1;c[(c[A>>2]|0)+8>>2]=1;c[(
c[A>>2]|0)+12>>2]=c[(c[B>>2]|0)+4>>2];if(((ag(c[j>>2]|0,c[c[B>>2]>
;>2]|0,c[(c[B>>2]|0)+4>>2]|0)|0)&255|0)==1)break}else{c[(c[j>>2]|0)+16>>2]=c[f
+32>>2];if(a[(c[j>>2]|0)+376>>0]|0){g=(c[j>>2]|0)+360|0;c[g>>2]=(c[g>>
;2]|0)+(c[(c[j>>2]|0)+372>>2]|0)}g=(c[C>>2]|0)+1|0;c[C>>2]=g;if((g|0)>1e6){F=190;break
}}f=c[j>>2]|0;if((c[(c[j>>2]|0)+360>>2]|0)>=(c[(c[j>>2]|0)+364>>2]|0)){F=
192;break}if(!((a[f+488>>0]|0)!=0^1)){F=195;break}}if((F|0)==10)c[f+12>>2]=129;else if((F|0)==12)c[f+12>
;>2]=130;else if((F|0)==183)c[f+12>>2]=134;else if((F|0)==186)c[(c[j>>2]|0)+12>>2]=128;else if
((F|0)==190){c[h>>2]=139;F=c[h>>2]|0;i=G;return F|0}else if((F|0)==192)if((c[f+428>>2]|0)>0)c
[(c[j>>2]|0)+12>>2]=131;else F=195;else if((F|0)==196)c[(c[j>>2]|0)+12>>2]=131;if((F|0)==
195){c[h>>2]=0;F=c[h>>2]|0;i=G;return F|0}if(c[(c[j>>2]|0)+12>>2]|0?(a[(c[j>>2
]|0)+488>>0]|0)==0:0)a[(c[(c[j>>2]|0)+4>>2]|0)+301>>0]=0;c[h>>2]=c[(c[j>
x3e;2]|0)+12>>2];F=c[h>>2]|0;i=G;return F|0}function nf(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[(c[(c[e>>2]|0)+384>>2]|0)+(c[f>>2]<<2)
x3e;>2]|0;b=Mb(b,of(c[e>>2]|0)|0)|0;i=d;return b|0}function of(a){a=a|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+
8|0;f=h+4|0;g=h;c[e>>2]=a;do if(!(c[(c[e>>2]|0)+244+12>>2]|0)){a=c[e>>2]|0;if(!(b[(c[e
x3e;>2]|0)+284+10+2>>1]|0)){c[(c[e>>2]|0)+244+12>>2]=c[a+244>>2];break}d=c[e>
x3e;2]|0;if(!(b[a+284+10>>1]|0)){c[(c[e>>2]|0)+244+12>>2]=c[d+244+4>>2];break}else{c[f
x3e;>2]=xb(b[d+284+10>>1]|0,c[(c[e>>2]|0)+244>>2]|0,16384)|0;c[g>>2]=xb(b[(c[e>
;>2]|0)+284+10+2>>1]|0,c[(c[e>>2]|0)+244+4>>2]|0,16384)|0;g=pf(c[f>>2]|0,c[g>
x3e;2]|0)|0;c[(c[e>>2]|0)+244+12>>2]=g;break}}while(0);i=h;return c[(c[e>>2]|0)+244+12>>
2]|0}function pf(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;f=d+8|0;e=d;c[g>>2]=a;c[f>>2]=b;
c[e>>2]=c[g>>2];c[e+4>>2]=c[f>>2];b=me(e)|0;i=d;return b|0}function qf(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;d=c[h
x3e;>2]|0;d=Vb(d,of(c[g>>2]|0)|0)|0;c[(c[(c[g>>2]|0)+384>>2]|0)+(c[f>>2]<<
;2)>>2]=d;i=e;return}function rf(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;b=c[h>>2]|0;b=Vb(b,of(c[g>>2]|0)|0)|0;d=(c[(c[g>>
;2]|0)+384>>2]|0)+(c[f>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+b;i=e;return}function sf(
a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f+4|0;d=f;c[e>>2]=a;c[d>>2]=b;i=f;return c[(c[(c[e>>
;2]|0)+384>>2]|0)+(c[d>>2]<<2)>>2]|0}function tf(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;c[(c[(c[g>>2]|0)+384
>>2]|0)+(c[f>>2]<<2)>>2]=c[h>>2];i=e;return}function uf(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[(c[h>
;>2]|0)+384>>2]|0)+(c[g>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+(c[f>>2]|
0);i=e;return}function vf(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=a;d=(c[e>>2]|0)+284|0;do if((b[(
c[e>>2]|0)+284+14>>1]|0)!=16384){a=(c[e>>2]|0)+284+10|0;if((b[d+14+2>>1]|0)==16384){c[(c
[e>>2]|0)+564>>2]=b[a+2>>1]<<16;break}else{d=(_(b[a>>1]|0,b[(c[e>>2]|
0)+284+14>>1]|0)|0)<<2;d=d+((_(b[(c[e>>2]|0)+284+10+2>>1]|0,b[(c[e>>2]|0)+284+
14+2>>1]|0)|0)<<2)|0;c[(c[e>>2]|0)+564>>2]=d;break}}else c[(c[e>>2]|0)+564>
;>2]=b[d+10>>1]<<16;while(0);a=c[e>>2]|0;do if((b[(c[e>>2]|0)+284+10>>1]|
0)!=16384){d=(c[e>>2]|0)+572|0;if((b[a+284+10+2>>1]|0)==16384){c[d>>2]=42;break}else{c[d>>
;2]=43;break}}else c[a+572>>2]=41;while(0);a=c[e>>2]|0;do if((b[(c[e>>2]|0)+284+6>>1]|0)!=
16384){d=(c[e>>2]|0)+576|0;if((b[a+284+6+2>>1]|0)==16384){c[d>>2]=42;break}else{c[d>>2]=
44;break}}else c[a+576>>2]=41;while(0);c[(c[e>>2]|0)+584>>2]=4;c[(c[e>>2]|0)+588>
x3e;2]=5;do if((c[(c[e>>2]|0)+564>>2]|0)==1073741824){a=c[e>>2]|0;if((b[(c[e>>2]|0)+284+
14>>1]|0)==16384){c[a+584>>2]=6;c[(c[e>>2]|0)+588>>2]=7;break}if((b[a+284+14+2>>
;1]|0)==16384){c[(c[e>>2]|0)+584>>2]=8;c[(c[e>>2]|0)+588>>2]=9}}while(0);d=c[(c[e>
x3e;2]|0)+564>>2]|0;if((((c[(c[e>>2]|0)+564>>2]|0)<0?0-d|0:d)|0)>=67108864){e=c[e>
x3e;2]|0;e=e+244|0;e=e+12|0;c[e>>2]=0;i=f;return}c[(c[e>>2]|0)+564>>2]=1073741824;e=c[e>>
;2]|0;e=e+244|0;e=e+12|0;c[e>>2]=0;i=f;return}function wf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=i;i=i+16|0;h=
f+8|0;e=f+4|0;g=f;c[h>>2]=a;c[e>>2]=b;c[g>>2]=d;c[h>>2]=c[h>>2];c[g>>
;2]=c[g>>2];i=f;return c[e>>2]|0}function xf(a,b,d){a=a|0;b=b|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]=b;c[e>>2]=d;c[h>>2]=c[h>>2];c[g>>2]=
c[g>>2];i=f;return c[e>>2]|0}function yf(a,d,e){a=a|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]=a;c[j>>2]=d;c[h>>2]=e;a=zf(c[j>>2]|0,c[h>>2]|0,b[(c[g>
x3e;2]|0)+284+10>>1]|0,b[(c[g>>2]|0)+284+10+2>>1]|0)|0;i=f;return a|0}function zf(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;h=i;i=i+64|0;t=h+48|0;r=h+44|0;s=h+40|0;q=h+36|0;p=
h+32|0;k=h+28|0;n=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;l=h+8|0;o=h+4|0;j=h;c[t>>2]=a;c[r>>2]=b;c[s>>2
]=d;c[q>>2]=e;c[f>>2]=_(c[t>>2]&65535,c[s>>2]|0)|0;c[p>>2]=_(c[t>>
;2]>>16,c[s>>2]|0)|0;c[l>>2]=(c[f>>2]|0)+(c[p>>2]<<16);c[n>>
;2]=(c[p>>2]>>16)+(c[f>>2]>>31)+((c[l>>2]|0)>>>0<(c[f>
;>2]|0)>>>0&1);c[f>>2]=_(c[r>>2]&65535,c[q>>2]|0)|0;c[p>>2
]=_(c[r>>2]>>16,c[q>>2]|0)|0;c[o>>2]=(c[f>>2]|0)+(c[p>>2]<<
;16);c[m>>2]=(c[p>>2]>>16)+(c[f>>2]>>31)+((c[o>>2]|0)>>>
;0<(c[f>>2]|0)>>>0&1);c[j>>2]=(c[l>>2]|0)+(c[o>>2]|0);c[g>
x3e;2]=(c[n>>2]|0)+(c[m>>2]|0)+((c[j>>2]|0)>>>0<(c[l>>2]|0)>>
;>0&1);c[k>>2]=c[g>>2]>>31;c[f>>2]=(c[j>>2]|0)+(c[k>>2]|0);
c[g>>2]=(c[g>>2]|0)+((c[k>>2]|0)+((c[f>>2]|0)>>>0<(c[j>>2]|
0)>>>0&1));c[j>>2]=c[f>>2];c[f>>2]=(c[j>>2]|0)+8192;c[g>>2
]=(c[g>>2]|0)+((c[f>>2]|0)>>>0<(c[j>>2]|0)>>>0&1);i=h;return
c[g>>2]<<18|(c[f>>2]|0)>>>14|0}function Af(a,d,e){a=a|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]=a;c[j>>2]=d;c[h>>2]=e;a=zf(c[j>>2]|0,c[h
x3e;>2]|0,b[(c[g>>2]|0)+284+6>>1]|0,b[(c[g>>2]|0)+284+6+2>>1]|0)|0;i=f;return a|0}function
Bf(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;p=i;i=i+32|0;k=p+12|0;l=p+8|0;m=p+16|0;n=p+4|0;o=p;c[k>>
;2]=f;c[l>>2]=g;b[m>>1]=h;c[n>>2]=j;c[o>>2]=b[(c[k>>2]|0)+284+14>>1];
if(c[o>>2]|0){h=xb(c[n>>2]|0,c[o>>2]<<16,c[(c[k>>2]|0)+564>>2]|0)|0;
g=(c[(c[l>>2]|0)+16>>2]|0)+(e[m>>1]<<3)|0;c[g>>2]=(c[g>>2]|0)+h;g=(c
[(c[l>>2]|0)+24>>2]|0)+(e[m>>1]|0)|0;a[g>>0]=d[g>>0]|8}c[o>>2]=b[(c[
k>>2]|0)+284+14+2>>1];if(!(c[o>>2]|0)){i=p;return}o=xb(c[n>>2]|0,c[o>>2]<
x3c;16,c[(c[k>>2]|0)+564>>2]|0)|0;g=(c[(c[l>>2]|0)+16>>2]|0)+(e[m>>1]<<
;3)+4|0;c[g>>2]=(c[g>>2]|0)+o;g=(c[(c[l>>2]|0)+24>>2]|0)+(e[m>>1]|0)|0;a[g>
;>0]=d[g>>0]|16;i=p;return}function Cf(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;n=i;i=i+32|0;
h=n+12|0;j=n+8|0;k=n+16|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>2]=d;b[k>>1]=f;c[l>>2]=g;c[m>
x3e;2]=b[(c[h>>2]|0)+284+14>>1];if(c[m>>2]|0){f=xb(c[l>>2]|0,c[m>>2]<<
;16,c[(c[h>>2]|0)+564>>2]|0)|0;d=(c[(c[j>>2]|0)+12>>2]|0)+(e[k>>1]<<
3)|0;c[d>>2]=(c[d>>2]|0)+f}c[m>>2]=b[(c[h>>2]|0)+284+14+2>>1];if(!(c[m>
x3e;2]|0)){i=n;return}m=xb(c[l>>2]|0,c[m>>2]<<16,c[(c[h>>2]|0)+564>>2]|0)|0;d=(
c[(c[j>>2]|0)+12>>2]|0)+(e[k>>1]<<3)+4|0;c[d>>2]=(c[d>>2]|0)+m;i=n;return
}function Df(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;k=i;i=i+16|0;o=k+8|0;m=k+4|0;l=k+12|0;n=k;c[o>>2
]=f;c[m>>2]=g;b[l>>1]=h;c[n>>2]=j;c[o>>2]=c[o>>2];g=(c[(c[m>>2]|0)+16
>>2]|0)+((e[l>>1]|0)<<3)|0;c[g>>2]=(c[g>>2]|0)+(c[n>>2]|0);g=(c[(c[m
>>2]|0)+24>>2]|0)+(e[l>>1]|0)|0;a[g>>0]=d[g>>0]|0|8;i=k;return}function Ef(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;h=i;i=i+16|0;m=h+8|0;l=h+4|0;k=h+12|0;j=h;c[m>>2]=a;c[l>>
;2]=d;b[k>>1]=f;c[j>>2]=g;c[m>>2]=c[m>>2];d=(c[(c[l>>2]|0)+12>>2]|0)+((
e[k>>1]|0)<<3)|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);i=h;return}function Ff(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;k=i;i=i+16|0;o=k+8|0;m=k+4|0;l=k+12|0;n=k;c[o>>2]=f;c[m>>
2]=g;b[l>>1]=h;c[n>>2]=j;c[o>>2]=c[o>>2];g=(c[(c[m>>2]|0)+16>>2]|0)+((
e[l>>1]|0)<<3)+4|0;c[g>>2]=(c[g>>2]|0)+(c[n>>2]|0);g=(c[(c[m>>2]|0)+
24>>2]|0)+(e[l>>1]|0)|0;a[g>>0]=d[g>>0]|0|16;i=k;return}function Gf(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;h=i;i=i+16|0;m=h+8|0;l=h+4|0;k=h+12|0;j=h;c[m>>2]=a;c[l>>2]=d;b[k>
x3e;1]=f;c[j>>2]=g;c[m>>2]=c[m>>2];d=(c[(c[l>>2]|0)+12>>2]|0)+((e[k>>
;1]|0)<<3)+4|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);i=h;return}function Hf(b,e){b=b|0;e=e|0;var
f=0,g=0,h=0;g=i;i=i+16|0;f=g;h=g+4|0;c[f>>2]=b;a[h>>0]=e;switch(d[h>>0]|0|0){case 5:{c[(c[f>
x3e;2]|0)+568>>2]=38;break}case 1:{c[(c[f>>2]|0)+568>>2]=33;break}case 4:{c[(c[f>>2]|0)+
568>>2]=39;break}case 3:{c[(c[f>>2]|0)+568>>2]=40;break}case 0:{c[(c[f>>2]|0)+568>
x3e;2]=34;break}case 2:{c[(c[f>>2]|0)+568>>2]=35;break}case 6:{c[(c[f>>2]|0)+568>>2]=36;
break}case 7:{c[(c[f>>2]|0)+568>>2]=37;break}default:{}}i=g;return}function If(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;j=g+12|0;e=g+8|0;h=g+4|0;f=g;c[j>>2]=a;c[e>>2]=b;c[h>>2]=d;c[j>
;>2]=c[j>>2];d=c[e>>2]|0;b=c[h>>2]|0;if((c[e>>2]|0)>=0){j=d+b|0;c[f>>
;2]=j;c[f>>2]=(c[e>>2]|0)!=0&(c[f>>2]|0)<0?0:j;j=c[f>>2]|0;i=g;return j|0}else
{j=d-b|0;c[f>>2]=j;c[f>>2]=(c[f>>2]|0)>0?0:j;j=c[f>>2]|0;i=g;return j|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,j=0;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>
;2]=b;c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e
x3e;>2]|0)+32&-64)|0;c[g>>2]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;
return j|0}c[g>>2]=(c[e>>2]|0)+(c[f>>2]|0)+32;if((c[e>>2]|0)!=0&(c[g>>2]|
0)>0){c[g>>2]=c[g>>2]&-64;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>
;>2]|0;i=h;return j|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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f
=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|
0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)+63&-64)|0;c[g>>2]=j;c[g>>2]=(c[g>>
;2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2]=(c[e>>2]|0)+(c[f>>2]|0)+63;if((c[e
x3e;>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2]=c[g>>2]&-64;j=c[g>>2]|0;i=h;return
j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c[j>>2]=
c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)&-64)|0;c[g>>2
]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2]=(c[e>>2]|
0)+(c[f>>2]|0);if((c[e>>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2]=c[g>>2]&
;-64;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|0}return 0}function Mf(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;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;
c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|0)>=0){j=((c[e>>2]|0)+(c[f>>
;2]|0)&-64)+32|0;c[g>>2]=j;c[g>>2]=(c[e>>2]|0)!=0&(c[g>>2]|0)<0?0:j;j=c[g
>>2]|0;i=h;return j|0}else{j=0-(((c[f>>2]|0)-(c[e>>2]|0)&-64)+32)|0;c[g>>2]=j;c[g
x3e;>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}return 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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c
[j>>2]=c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)+16&-32
)|0;c[g>>2]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2
]=(c[e>>2]|0)+(c[f>>2]|0)+16;if((c[e>>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2
]=c[g>>2]&-32;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|0}
return 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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2
]=a;c[f>>2]=b;c[g>>2]=d;if((c[f>>2]|0)>=0){a=(c[f>>2]|0)-(c[(c[e>>2]|0)+480
>>2]|0)+(c[(c[e>>2]|0)+484>>2]|0)+(c[g>>2]|0)&0-(c[(c[e>>2]|0)+476>
x3e;2]|0);c[h>>2]=a;c[h>>2]=(c[f>>2]|0)!=0&(c[h>>2]|0)<0?0:a;c[h>>2]=(
c[h>>2]|0)+(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}else{a=0-((c[(c[e>
x3e;2]|0)+484>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0)-(c[f>>2]|0)+(c[g>>2]|0)&0-(
c[(c[e>>2]|0)+476>>2]|0))|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>0?0:a;c[h>
x3e;2]=(c[h>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}return 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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>
;2]=b;c[g>>2]=d;if((c[f>>2]|0)>=0){a=_(((c[f>>2]|0)-(c[(c[e>>2]|0)+480>>2
]|0)+(c[(c[e>>2]|0)+484>>2]|0)+(c[g>>2]|0)|0)/(c[(c[e>>2]|0)+476>>2]|0)|0,c[(c
[e>>2]|0)+476>>2]|0)|0;c[h>>2]=a;c[h>>2]=(c[f>>2]|0)!=0&(c[h>>2
]|0)<0?0:a;c[h>>2]=(c[h>>2]|0)+(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;
return h|0}else{a=0-(_(((c[(c[e>>2]|0)+484>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0)-(c[f>
x3e;2]|0)+(c[g>>2]|0)|0)/(c[(c[e>>2]|0)+476>>2]|0)|0,c[(c[e>>2]|0)+476>>2]|0)|
0)|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>0?0:a;c[h>>2]=(c[h>>2]|0)-(c[(c[e>
;>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}return 0}function Qf(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;v=i;i=i+48|0;k=v+36|0;l=v+28|0;m=v+34|0;n=v+32|0;o=v+24|0;p=v+20|0;q=v+
16|0;r=v+12|0;s=v+8|0;t=v+4|0;u=v;c[l>>2]=d;b[m>>1]=f;b[n>>1]=g;c[o>>2]=h;c[p>>
;2]=j;if((e[m>>1]|0)>>>0<(e[(c[l>>2]|0)+108+8>>1]|0)>>>0?(e[n
x3e;>1]|0)>>>0<(e[(c[l>>2]|0)+72+8>>1]|0)>>>0:0){c[t>>2]=(
c[(c[l>>2]|0)+72+16>>2]|0)+(e[n>>1]<<3);c[u>>2]=(c[(c[l>>2]|0)+108+16
>>2]|0)+(e[m>>1]<<3);c[q>>2]=(c[c[t>>2]>>2]|0)-(c[c[u>>2]
x3e;>2]|0);c[r>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[u>>2]|0)+4>>2]|0);if(c[o
>>2]&1|0){c[s>>2]=c[r>>2];c[r>>2]=c[q>>2];c[q>>2]=0-(c[s>
x3e;2]|0)}Rf(c[l>>2]|0,c[q>>2]|0,c[r>>2]|0,c[p>>2]|0)|0;a[k>>0]=0;u=a[k>
x3e;0]|0;i=v;return u|0}if(a[(c[l>>2]|0)+561>>0]|0)c[(c[l>>2]|0)+12>>2]=134;a[k>>
;0]=1;u=a[k>>0]|0;i=v;return u|0}function Rf(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;
p=i;i=i+32|0;h=p+22|0;q=p+16|0;j=p+12|0;k=p+8|0;l=p+4|0;o=p;m=p+21|0;n=p+20|0;c[q>>2]=d;c[j>>2]=e;c[k>
x3e;2]=f;c[l>>2]=g;c[q>>2]=c[q>>2];d=c[j>>2]|0;if((((c[j>>2]|0)<0?0-d|0:d
)|0)<65536?(q=c[k>>2]|0,(((c[k>>2]|0)<0?0-q|0:q)|0)<65536):0){c[j>>2]=c[j>>
;2]<<8;c[k>>2]=c[k>>2]<<8;c[o>>2]=pf(c[j>>2]|0,c[k>>2]|0)|
0;if(!(c[o>>2]|0)){a[h>>0]=0;q=a[h>>0]|0;i=p;return q|0}else{q=(xb(c[j>>2]|0,16384,c[o
x3e;>2]|0)|0)&65535;b[c[l>>2]>>1]=q;q=(xb(c[k>>2]|0,16384,c[o>>2]|0)|0)&65535
;b[(c[l>>2]|0)+2>>1]=q;a[h>>0]=0;q=a[h>>0]|0;i=p;return q|0}}c[o>>2]=pf(c[j>
;>2]|0,c[k>>2]|0)|0;c[j>>2]=xb(c[j>>2]|0,16384,c[o>>2]|0)|0;c[k>>2]=xb(c[
k>>2]|0,16384,c[o>>2]|0)|0;q=_(c[j>>2]|0,c[j>>2]|0)|0;c[o>>2]=q+(_(c[k>
x3e;2]|0,c[k>>2]|0)|0);if((c[j>>2]|0)<0){c[j>>2]=0-(c[j>>2]|0);a[m>>0]=1}
else a[m>>0]=0;if((c[k>>2]|0)<0){c[k>>2]=0-(c[k>>2]|0);a[n>>0]=1}else a[n
>>0]=0;while(1){if((c[o>>2]|0)>=268435456)break;if((c[j>>2]|0)<(c[k>>2]|0))c[j
>>2]=(c[j>>2]|0)+1;else c[k>>2]=(c[k>>2]|0)+1;q=_(c[j>>2]|0,c[j>>2]|
0)|0;c[o>>2]=q+(_(c[k>>2]|0,c[k>>2]|0)|0)}while(1){if((c[o>>2]|0)<268451840)break;if
((c[j>>2]|0)<(c[k>>2]|0))c[j>>2]=(c[j>>2]|0)+-1;else c[k>>2]=(c[k>
x3e;2]|0)+-1;q=_(c[j>>2]|0,c[j>>2]|0)|0;c[o>>2]=q+(_(c[k>>2]|0,c[k>>2]|0)|0)}if
(a[m>>0]|0)c[j>>2]=0-(c[j>>2]|0);if(a[n>>0]|0)c[k>>2]=0-(c[k>>2]|0);
b[c[l>>2]>>1]=c[j>>2];b[(c[l>>2]|0)+2>>1]=c[k>>2];a[h>>0]=
0;q=a[h>>0]|0;i=p;return q|0}function Sf(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;x=i;i=i+64|0;h=x+44|0;y=x+40|0;v=x+56|0;k=x+54|0;l=x+52|0;m=x+50|0;n=x+48|0;s=x+36|0;t=x+32|0;u=x+28|0;o=x+24|0;p=x+
20|0;q=x+16|0;r=x+12|0;w=x+8|0;j=x;c[h>>2]=f;c[y>>2]=g;b[v>>1]=c[c[y>>2]>>2];b
[k>>1]=c[(c[y>>2]|0)+4>>2];b[l>>1]=c[(c[y>>2]|0)+8>>2];b[m>>
;1]=c[(c[y>>2]|0)+12>>2];b[n>>1]=c[(c[y>>2]|0)+16>>2];if(((((e[m>>1]|
0)>>>0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0?(e[n>>1]|0)>>
x3e;0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0:0)?(e[k>>1]|0)>>>0<(e
[(c[h>>2]|0)+72+8>>1]|0)>>>0:0)?(e[l>>1]|0)>>>0<(e[(c[h>
x3e;2]|0)+72+8>>1]|0)>>>0:0)?(e[v>>1]|0)>>>0<(e[(c[h>>2]|0)+108
+8>>1]|0)>>>0:0){c[q>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1
]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>>
2]|0);c[r>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)+4>>2]|0)-(
c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0);c[o>>2]=(c[(c[(c
[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+72+16
x3e;>2]|0)+(e[k>>1]<<3)>>2]|0);c[p>>2]=(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]
x3c;<3)+4>>2]|0);c[t>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<
;3)>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2]|0);c[u>
;>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)-(c[(c[(c[h>
;>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0);y=(c[(c[h>>2]|0)+108+24>
x3e;2]|0)+(e[v>>1]|0)|0;a[y>>0]=d[y>>0]|24;y=xb(c[o>>2]|0,0-(c[r>>2]|0)|0,64)|
0;c[s>>2]=y+(xb(c[p>>2]|0,c[q>>2]|0,64)|0);y=c[s>>2]|0;if((((c[s>>2]|0)<0
?0-y|0:y)|0)>=64){y=xb(c[t>>2]|0,0-(c[r>>2]|0)|0,64)|0;c[w>>2]=y+(xb(c[u>>2]|0,c[q
x3e;>2]|0,64)|0);c[j>>2]=xb(c[w>>2]|0,c[o>>2]|0,c[s>>2]|0)|0;c[j+4>>2]=xb
(c[w>>2]|0,c[p>>2]|0,c[s>>2]|0)|0;c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>
;1]<<3)>>2]=(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2
]|0)+(c[j>>2]|0);c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)+4>>2]=(
c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)+(c[j+4>>2]|0);i=
x;return}else{c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)>>2]=((c[(c[(c[h>
;>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2]|0)+(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]
x3c;<3)>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)>>2]|
0)|0)/4|0;c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)+4>>2]=((c[(c[(c[h>
x3e;2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]
x3c;<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)+4>>
;2]|0)|0)/4|0;i=x;return}}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=x;return}c[(c[h>>2]|0)+12>>2]=
134;i=x;return}function Tf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e
;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>2]|0)+36|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e
x3e;>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{e=(c[g>>2]|0)+36|0;d=(c[g>
x3e;2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c
[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>>2]=134;i=j;return}}b[(c[g>>
2]|0)+284+60>>1]=c[c[h>>2]>>2];i=j;return}function Uf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i
+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>
2]|0)+72|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));
break}case 1:{e=(c[g>>2]|0)+72|0;d=(c[g>>2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0
;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>
2]|0)+12>>2]=134;i=j;return}}b[(c[g>>2]|0)+284+62>>1]=c[c[h>>2]>>2];i=j;return
}function Vf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h
x3e;>2]>>2]|0){case 0:{e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=
c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+144
|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c[g>>
;2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>>2]=134;i=j;return}}b[(c[g>>2]|0)+284+64
x3e;>1]=c[c[h>>2]>>2];i=j;return}function Wf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;
h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>2]|0)+36|0;d=(
c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{
e=(c[g>>2]|0)+36|0;d=(c[g>>2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while
((e|0)<(f|0));break}default:{if(!(a[(c[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>
x3e;2]=134;i=j;return}}e=(c[g>>2]|0)+72|0;d=(c[g>>2]|0)+36|0;f=e+36|0;do{c[e>>2]=c[d>>2];
e=e+4|0;d=d+4|0}while((e|0)<(f|0));e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+36|0;f=e+36|0;do{c[e>>2]=
c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));b[(c[g>>2]|0)+284+60>>1]=c[c[h>>2]>
x3e;2];b[(c[g>>2]|0)+284+62>>1]=c[c[h>>2]>>2];b[(c[g>>2]|0)+284+64>>
1]=c[c[h>>2]>>2];i=j;return}function Xf(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+8|0;h=g+4|0;f=
g;c[e>>2]=a;c[h>>2]=b;c[e>>2]=c[e>>2];c[h>>2]=c[h>>2];c[f>>
;2]=1;while(1){if(((Yf(c[e>>2]|0)|0)&255|0)==1){e=7;break}switch(d[(c[e>>2]|0)+368>>0]|0|0){case
88:{c[f>>2]=(c[f>>2]|0)+1;break}case 89:{c[f>>2]=(c[f>>2]|0)+-1;break}default:{}}if(!(c
[f>>2]|0)){e=7;break}}if((e|0)==7){i=g;return}}function Yf(b){b=b|0;var e=0,f=0,g=0;g=i;i=i+16|0;e=g+4|0;f=g;c[f>
x3e;2]=b;b=(c[f>>2]|0)+360|0;c[b>>2]=(c[b>>2]|0)+(c[(c[f>>2]|0)+372>>2]|0);do
if((c[(c[f>>2]|0)+360>>2]|0)<(c[(c[f>>2]|0)+364>>2]|0)){a[(c[f>>2]|0)+368
>>0]=a[(c[(c[f>>2]|0)+356>>2]|0)+(c[(c[f>>2]|0)+360>>2]|0)>>0]|0;c[(
c[f>>2]|0)+372>>2]=a[10705+(d[(c[f>>2]|0)+368>>0]|0)>>0];if((c[(c[f>>
;2]|0)+372>>2]|0)<0){if(((c[(c[f>>2]|0)+360>>2]|0)+1|0)>(c[(c[f>>2]|0)+364>
;>2]|0))break;b=2-(_(c[(c[f>>2]|0)+372>>2]|0,d[(c[(c[f>>2]|0)+356>>2]|0)+((c[(c[f
x3e;>2]|0)+360>>2]|0)+1)>>0]|0)|0)|0;c[(c[f>>2]|0)+372>>2]=b}if(((c[(c[f>>
;2]|0)+360>>2]|0)+(c[(c[f>>2]|0)+372>>2]|0)|0)<=(c[(c[f>>2]|0)+364>>2]|0)){
a[e>>0]=0;b=a[e>>0]|0;i=g;return b|0}}while(0);c[(c[f>>2]|0)+12>>2]=131;a[e>>0
]=1;b=a[e>>0]|0;i=g;return b|0}function Zf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;d=g+12|0;h=g+8|0;f=g+
4|0;e=g;c[d>>2]=a;c[h>>2]=b;c[f>>2]=c[c[h>>2]>>2];if((c[f>>2]|0)>
;0?(c[f>>2]|0)<=(c[(c[d>>2]|0)+28>>2]|0):0){c[e>>2]=c[(c[(c[d>>2]|0)+24
x3e;>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)<<2)>>2];Ts((c[(c[d>
x3e;2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)<<2)|0,(c[(c[d>
x3e;2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)+1<<2)|0,(c[f>
x3e;2]|0)-1<<2|0)|0;c[(c[(c[d>>2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-1<
;<2)>>2]=c[e>>2];i=g;return}c[(c[d>>2]|0)+12>>2]=134;i=g;return}function _f(d,f){d=
d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;g=l+8|0;m=l+4|0;j=l+14|0;k=l+12|0;h=l;c[g>>2]=d;c[m>>2]=f
;b[j>>1]=c[c[m>>2]>>2];b[k>>1]=c[(c[m>>2]|0)+4>>2];if((e[j>>
;1]|0)>>>0<(e[(c[g>>2]|0)+72+8>>1]|0)>>>0?(e[k>>1]|0)>>
;>0<(e[(c[g>>2]|0)+36+8>>1]|0)>>>0:0){c[h>>2]=(Oa[c[(c[g>>2]|0)+
572>>2]&63](c[g>>2]|0,(c[(c[(c[g>>2]|0)+36+16>>2]|0)+(e[k>>1]<<
3)>>2]|0)-(c[(c[(c[g>>2]|0)+72+16>>2]|0)+(e[j>>1]<<3)>>2]|0)|0,(c[(c
[(c[g>>2]|0)+36+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)-(c[(c[(c[g>>2]|0)+72
+16>>2]|0)+(e[j>>1]<<3)+4>>2]|0)|0)|0)/2|0;_a[c[(c[g>>2]|0)+584>>2]
x26;15](c[g>>2]|0,(c[g>>2]|0)+72|0,b[j>>1]|0,c[h>>2]|0);_a[c[(c[g>>2]|0)+584
x3e;>2]&15](c[g>>2]|0,(c[g>>2]|0)+36|0,b[k>>1]|0,0-(c[h>>2]|0)|0);i=l;return}if
(!(a[(c[g>>2]|0)+561>>0]|0)){i=l;return}c[(c[g>>2]|0)+12>>2]=134;i=l;return}function $f(
b,e){b=b|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+16|0;m=l+12|0;k=l+8|0;f=l+4|0;j=l;c[h>>2]=b;c[m>
;>2]=e;c[k>>2]=c[(c[h>>2]|0)+416>>2];c[f>>2]=(c[k>>2]|0)+(c[(c[h>>
;2]|0)+408>>2]<<4);c[h>>2]=c[h>>2];c[m>>2]=c[m>>2];while(1){if((c[k
x3e;>2]|0)>>>0>=(c[f>>2]|0)>>>0){g=9;break}if((c[(c[k>>2]|0)+8>
x3e;2]&255|0)==(d[(c[h>>2]|0)+368>>0]|0|0)?d[(c[k>>2]|0)+12>>0]|0|0:0)break;c[k>
;>2]=(c[k>>2]|0)+16}if((g|0)==9){c[(c[h>>2]|0)+12>>2]=128;i=l;return}e=c[h>>2]|0;if
((c[(c[h>>2]|0)+428>>2]|0)>=(c[(c[h>>2]|0)+432>>2]|0)){c[e+12>>2]=130;i=l
;return}else{g=c[e+436>>2]|0;f=(c[h>>2]|0)+428|0;m=c[f>>2]|0;c[f>>2]=m+1;c[j>>
2]=g+(m<<4);c[c[j>>2]>>2]=c[(c[h>>2]|0)+352>>2];c[(c[j>>2]|0)+4>
;>2]=(c[(c[h>>2]|0)+360>>2]|0)+1;c[(c[j>>2]|0)+8>>2]=1;c[(c[j>>2]|0)+12
x3e;>2]=c[(c[k>>2]|0)+4>>2];ag(c[h>>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>
;2]|0)+4>>2]|0)|0;a[(c[h>>2]|0)+376>>0]=0;i=l;return}}function ag(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;l=i;i=i+32|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=b;c[h>>2]=d;c[j>>2
]=e;if((c[h>>2]|0)<1|(c[h>>2]|0)>3){c[(c[g>>2]|0)+12>>2]=132;a[f>>0]=
1;k=a[f>>0]|0;i=l;return k|0}c[k>>2]=(c[g>>2]|0)+444+((c[h>>2]|0)-1<<3);if(!(c
[c[k>>2]>>2]|0)){c[(c[g>>2]|0)+12>>2]=138;a[f>>0]=1;k=a[f>>0]|0;i=l;
return k|0}if((c[j>>2]|0)>>>0>(c[(c[k>>2]|0)+4>>2]|0)>>>0){c[(c
[g>>2]|0)+12>>2]=131;a[f>>0]=1;k=a[f>>0]|0;i=l;return k|0}else{c[(c[g>>2]|0)+356
>>2]=c[c[k>>2]>>2];c[(c[g>>2]|0)+364>>2]=c[(c[k>>2]|0)+4>>
2];c[(c[g>>2]|0)+360>>2]=c[j>>2];c[(c[g>>2]|0)+352>>2]=c[h>>2];a[f
x3e;>0]=0;k=a[f>>0]|0;i=l;return k|0}return 0}function bg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;h
=l+4|0;m=l;k=l+8|0;j=l+10|0;c[h>>2]=f;c[m>>2]=g;b[k>>1]=c[c[m>>2]>>2];if((e[k
x3e;>1]|0)>>>0>=(e[(c[h>>2]|0)+36+8>>1]|0)>>>0){if(!(a[(c[h>>
;2]|0)+561>>0]|0)){i=l;return}c[(c[h>>2]|0)+12>>2]=134;i=l;return}a[j>>0]=-1;if(b[(c[h
x3e;>2]|0)+284+14>>1]|0)a[j>>0]=d[j>>0]&-9;if(b[(c[h>>2]|0)+284+14+2>>
;1]|0)a[j>>0]=d[j>>0]&-17;m=(c[(c[h>>2]|0)+36+24>>2]|0)+(e[k>>1]|0)|0;a[m
>>0]=d[m>>0]&d[j>>0];i=l;return}function cg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;
l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;k=l+8|0;h=l+4|0;j=l;c[e>>2]=b;c[f>>2]=d;c[g>>2]=c[(c[f>
;>2]|0)+4>>2];do if((c[g>>2]|0)>>>0<((c[(c[e>>2]|0)+420>>2]|0)+
1|0)>>>0){c[h>>2]=(c[(c[e>>2]|0)+404>>2]|0)+(c[g>>2]<<4);if(!(((
c[(c[e>>2]|0)+420>>2]|0)+1|0)==(c[(c[e>>2]|0)+396>>2]|0)?(c[(c[h>>2]|0)+8>
;>2]|0)==(c[g>>2]|0):0)){c[h>>2]=c[(c[e>>2]|0)+404>>2];c[j>>2]=(c[h>
x3e;2]|0)+(c[(c[e>>2]|0)+396>>2]<<4);while(1){if((c[h>>2]|0)>>>0<(c[
j>>2]|0)>>>0)d=(c[(c[h>>2]|0)+8>>2]|0)!=(c[g>>2]|0);else d=0;b=c[h>
x3e;2]|0;if(!d)break;c[h>>2]=b+16}if((b|0)==(c[j>>2]|0))break}if(a[(c[h>>2]|0)+12>>0]|0){
if((c[(c[e>>2]|0)+428>>2]|0)>=(c[(c[e>>2]|0)+432>>2]|0)){c[(c[e>>2]|0)+12
>>2]=130;i=l;return}if((c[c[f>>2]>>2]|0)<=0){i=l;return}c[k>>2]=(c[(c[e>>
2]|0)+436>>2]|0)+(c[(c[e>>2]|0)+428>>2]<<4);c[c[k>>2]>>2]=c[(c[e>
;>2]|0)+352>>2];c[(c[k>>2]|0)+4>>2]=(c[(c[e>>2]|0)+360>>2]|0)+1;c[(c[k>
;>2]|0)+8>>2]=c[c[f>>2]>>2];c[(c[k>>2]|0)+12>>2]=c[(c[h>>2]|0)+
4>>2];k=(c[e>>2]|0)+428|0;c[k>>2]=(c[k>>2]|0)+1;ag(c[e>>2]|0,c[c[h>>
2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0)|0;a[(c[e>>2]|0)+376>>0]=0;i=l;return}}while(0);
c[(c[e>>2]|0)+12>>2]=134;i=l;return}function dg(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;g=k+20|0;l=k+16|0;e=k+12|0;j=k+8|0;h=k+4|0;f=k;c[g>>2]=b;c[l>>2]=d;c[e>>2]=c[c[l>>2]
x3e;>2];do if((c[e>>2]|0)>>>0<((c[(c[g>>2]|0)+420>>2]|0)+1|0)>>
x3e;0){c[h>>2]=(c[(c[g>>2]|0)+404>>2]|0)+(c[e>>2]<<4);if(!(((c[(c[g>>
;2]|0)+420>>2]|0)+1|0)==(c[(c[g>>2]|0)+396>>2]|0)?(c[(c[h>>2]|0)+8>>2]|0)==(c[
e>>2]|0):0)){c[h>>2]=c[(c[g>>2]|0)+404>>2];c[f>>2]=(c[h>>2]|0)+(c[(c
[g>>2]|0)+396>>2]<<4);while(1){if((c[h>>2]|0)>>>0<(c[f>>2]|
0)>>>0)b=(c[(c[h>>2]|0)+8>>2]|0)!=(c[e>>2]|0);else b=0;d=c[h>>2]|0;if(!b)
break;c[h>>2]=d+16}if((d|0)==(c[f>>2]|0))break}if(a[(c[h>>2]|0)+12>>0]|0){d=c[g>>
;2]|0;if((c[(c[g>>2]|0)+428>>2]|0)>=(c[(c[g>>2]|0)+432>>2]|0)){c[d+12>>2]=
130;i=k;return}else{c[j>>2]=(c[d+436>>2]|0)+(c[(c[g>>2]|0)+428>>2]<<4);c[c[j
x3e;>2]>>2]=c[(c[g>>2]|0)+352>>2];c[(c[j>>2]|0)+4>>2]=(c[(c[g>>
2]|0)+360>>2]|0)+1;c[(c[j>>2]|0)+8>>2]=1;c[(c[j>>2]|0)+12>>2]=c[(c[h>>
;2]|0)+4>>2];l=(c[g>>2]|0)+428|0;c[l>>2]=(c[l>>2]|0)+1;ag(c[g>>2]|0,c[c[h>
;>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0)|0;a[(c[g>>2]|0)+376>>0]=0;i=k;return}}}
while(0);c[(c[g>>2]|0)+12>>2]=134;i=k;return}function eg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=
i+32|0;j=k+16|0;l=k+12|0;g=k+8|0;h=k+4|0;f=k;c[j>>2]=b;c[l>>2]=e;c[h>>2]=c[(c[j>>2]|0)+404
>>2];c[f>>2]=(c[h>>2]|0)+(c[(c[j>>2]|0)+396>>2]<<4);c[g>>2
]=c[c[l>>2]>>2];while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>
x3e;0)break;if((c[(c[h>>2]|0)+8>>2]|0)==(c[g>>2]|0))break;c[h>>2]=(c[h>>2]|0)+
16}do if((c[h>>2]|0)==(c[f>>2]|0)){e=c[j>>2]|0;if((c[(c[j>>2]|0)+396>>2]|0)>
;>>0<(c[(c[j>>2]|0)+400>>2]|0)>>>0){l=e+396|0;c[l>>2]=(c[l>>
;2]|0)+1;break}c[e+12>>2]=140;i=k;return}while(0);e=c[j>>2]|0;if((c[g>>2]|0)>>>0>
;65535){c[e+12>>2]=140;i=k;return}c[c[h>>2]>>2]=c[e+352>>2];c[(c[h>>2]|0)+8>
;>2]=c[g>>2]&65535;c[(c[h>>2]|0)+4>>2]=(c[(c[j>>2]|0)+360>>2]|0)+1;a
[(c[h>>2]|0)+12>>0]=1;if((c[g>>2]|0)>>>0>(c[(c[j>>2]|0)+420>>
;2]|0)>>>0)c[(c[j>>2]|0)+420>>2]=c[g>>2]&65535;a:while(1){if((Yf(c[j>>
;2]|0)|0)&255|0){e=16;break}switch(d[(c[j>>2]|0)+368>>0]|0|0){case 44:case 137:{e=15;break a}case 45:{e
=16;break a}default:{}}}if((e|0)==15){c[(c[j>>2]|0)+12>>2]=137;i=k;return}else if((e|0)==16){i=k;return}}function
fg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+8|0;h=g+4|0;f=g;c[e>>2]=b;c[h>>2]=d;c[e>>
;2]=c[e>>2];c[h>>2]=c[h>>2];d=c[e>>2]|0;if((c[(c[e>>2]|0)+428>>2]|0)
x3c;=0){c[d+12>>2]=136;i=g;return}d=d+428|0;c[d>>2]=(c[d>>2]|0)+-1;c[f>>2]=(c[(c[e>
x3e;2]|0)+436>>2]|0)+(c[(c[e>>2]|0)+428>>2]<<4);d=(c[f>>2]|0)+8|0;c[d>>
;2]=(c[d>>2]|0)+-1;a[(c[e>>2]|0)+376>>0]=0;d=c[e>>2]|0;if((c[(c[f>>2]|0)+8>
;>2]|0)>0){h=d+428|0;c[h>>2]=(c[h>>2]|0)+1;c[(c[e>>2]|0)+360>>2]=c[(c[f>
x3e;2]|0)+12>>2];i=g;return}else{ag(d,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0
;i=g;return}}function gg(f,g){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;h=m+12|0;n=m+8|0;l=m+16|0;j=m+4|0;k=m;c[h>
;>2]=f;c[n>>2]=g;b[l>>1]=c[c[n>>2]>>2];g=c[h>>2]|0;if((e[l>>1]|
0)>>>0>=(e[(c[h>>2]|0)+36+8>>1]|0)>>>0){if(!(a[g+561>>0]|0)){i=
m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}if(d[g+368>>0]&1|0){c[j>>2]=Oa[c[(c[h
x3e;>2]|0)+572>>2]&63](c[h>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[l>>
;1]<<3)>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[l>>1]<<3)+4>>
;2]|0)|0;n=Oa[c[(c[h>>2]|0)+568>>2]&63](c[h>>2]|0,c[j>>2]|0,c[(c[h>>2]|0)+
244+20>>2]|0)|0;c[k>>2]=n-(c[j>>2]|0)}else c[k>>2]=0;_a[c[(c[h>>2]|0)+584>
;>2]&15](c[h>>2]|0,(c[h>>2]|0)+36|0,b[l>>1]|0,c[k>>2]|0);b[(c[h>>2]|
0)+284>>1]=b[l>>1]|0;b[(c[h>>2]|0)+284+2>>1]=b[l>>1]|0;i=m;return}function hg(
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;r=i;i=i+64|0;h=r+44|0;s=r+40|0;j=r+24|0;p=r+50|0;n=r+16|0;m=r+12
|0;o=r+8|0;l=r+4|0;q=r;k=r+48|0;c[h>>2]=f;c[s>>2]=g;c[h>>2]=c[h>>2];c[s>>2]=c[
s>>2];if(!(b[(c[h>>2]|0)+144+10>>1]|0)){i=r;return}if(d[(c[h>>2]|0)+368>>0]&
;1|0){a[p>>0]=8;c[j>>2]=c[(c[h>>2]|0)+144+12>>2];c[j+4>>2]=c[(c[h>>2
]|0)+144+16>>2];c[j+8>>2]=c[(c[h>>2]|0)+144+20>>2]}else{a[p>>0]=16;c[j>
x3e;2]=(c[(c[h>>2]|0)+144+12>>2]|0)+4;c[j+4>>2]=(c[(c[h>>2]|0)+144+16>>2]|0)+4
;c[j+8>>2]=(c[(c[h>>2]|0)+144+20>>2]|0)+4}c[j+12>>2]=e[(c[h>>2]|0)+144+8>
x3e;1];b[k>>1]=0;c[q>>2]=0;do{c[m>>2]=(e[(c[(c[h>>2]|0)+144+28>>2]|0)+(b[k>
;>1]<<1)>>1]|0)-(e[(c[h>>2]|0)+144+32>>1]|0);c[n>>2]=c[q>>2];if
((c[m>>2]|0)>>>0>=(e[(c[h>>2]|0)+144+8>>1]|0)>>>0)c[m>>
;2]=(e[(c[h>>2]|0)+144+8>>1]|0)-1;while(1){if((c[q>>2]|0)>>>0<=(c[m>>
;2]|0)>>>0)g=(d[(c[(c[h>>2]|0)+144+24>>2]|0)+(c[q>>2]|0)>>0]&d[p>
;>0]|0)==0;else g=0;f=c[q>>2]|0;if(!g)break;c[q>>2]=f+1}do if(f>>>0<=(c[m>>
;2]|0)>>>0){c[o>>2]=c[q>>2];c[l>>2]=c[q>>2];c[q>>2]=(c[q>
x3e;2]|0)+1;while(1){if((c[q>>2]|0)>>>0>(c[m>>2]|0)>>>0)break;if(d[(c[(c[
h>>2]|0)+144+24>>2]|0)+(c[q>>2]|0)>>0]&d[p>>0]|0){ig(j,(c[l>>2]|
0)+1|0,(c[q>>2]|0)-1|0,c[l>>2]|0,c[q>>2]|0);c[l>>2]=c[q>>2]}c[q>>2]=(
c[q>>2]|0)+1}if((c[l>>2]|0)==(c[o>>2]|0)){jg(j,c[n>>2]|0,c[m>>2]|0,c[l>
x3e;2]|0);break}ig(j,(c[l>>2]|0)+1&65535,c[m>>2]|0,c[l>>2]|0,c[o>>2]|0);if((c[o>
;>2]|0)>>>0>0)ig(j,c[n>>2]|0,(c[o>>2]|0)-1|0,c[l>>2]|0,c[o>>2]|
0)}while(0);b[k>>1]=(b[k>>1]|0)+1<<16>>16}while((b[k>>1]|0)<(b[(c[h>
x3e;2]|0)+144+10>>1]|0));i=r;return}function ig(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,x=0,y=0,z=0,A=0;A=i;i=i+80|0;h=A+64|0;j=A+60|0;k=A+56|0;l=A+52|0;m=A+48|0;p=A+44|0;s=A+40|0;t
=A+36|0;q=A+32|0;r=A+28|0;n=A+24|0;o=A+20|0;w=A+16|0;x=A+12|0;y=A+8|0;u=A+4|0;v=A+68|0;z=A;c[h>>2]=b;c[j>>2]=
d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;if((c[j>>2]|0)>>>0>(c[k>>2
]|0)>>>0){i=A;return}if((c[l>>2]|0)>>>0>=(c[(c[h>>2]|0)+12>>2]|
0)>>>0){i=A;return}if((c[m>>2]|0)>>>0>=(c[(c[h>>2]|0)+12>>2]|0)
x3e;>>0){i=A;return}c[s>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+(c[l>>2]<<3)
x3e;>2];c[t>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+(c[m>>2]<<3)>>2];if((
c[s>>2]|0)>(c[t>>2]|0)){c[w>>2]=c[s>>2];c[s>>2]=c[t>>2];c[t>
;>2]=c[w>>2];c[x>>2]=c[l>>2];c[l>>2]=c[m>>2];c[m>>2]=c[x>
x3e;2]}c[q>>2]=c[(c[c[h>>2]>>2]|0)+(c[l>>2]<<3)>>2];c[r>>2
]=c[(c[c[h>>2]>>2]|0)+(c[m>>2]<<3)>>2];c[n>>2]=(c[(c[(c[h>>
;2]|0)+4>>2]|0)+(c[l>>2]<<3)>>2]|0)-(c[q>>2]|0);c[o>>2]=(c[(c[(c[h
x3e;>2]|0)+4>>2]|0)+(c[m>>2]<<3)>>2]|0)-(c[r>>2]|0);if((c[s>>2]|
0)==(c[t>>2]|0)){c[p>>2]=c[j>>2];while(1){if((c[p>>2]|0)>>>0>(c[k>
;>2]|0)>>>0)break;c[y>>2]=c[(c[c[h>>2]>>2]|0)+(c[p>>2]<<3)
x3e;>2];if((c[y>>2]|0)<=(c[q>>2]|0))c[y>>2]=(c[y>>2]|0)+(c[n>>2]|0);
else c[y>>2]=(c[y>>2]|0)+(c[o>>2]|0);c[(c[(c[h>>2]|0)+4>>2]|0)+(c[p>>
;2]<<3)>>2]=c[y>>2];c[p>>2]=(c[p>>2]|0)+1}i=A;return}c[u>>2]=0;a[v
x3e;>0]=0;c[p>>2]=c[j>>2];while(1){if((c[p>>2]|0)>>>0>(c[k>>2]|
0)>>>0)break;c[z>>2]=c[(c[c[h>>2]>>2]|0)+(c[p>>2]<<3)>>
;2];do if((c[z>>2]|0)<=(c[q>>2]|0))c[z>>2]=(c[z>>2]|0)+(c[n>>2]|0);else{if
((c[z>>2]|0)>=(c[r>>2]|0)){c[z>>2]=(c[z>>2]|0)+(c[o>>2]|0);break}if(!(a[v
>>0]|0)){a[v>>0]=1;c[u>>2]=xb((c[r>>2]|0)+(c[o>>2]|0)-((c[q>>2]|0)+(
c[n>>2]|0))|0,65536,(c[t>>2]|0)-(c[s>>2]|0)|0)|0}y=(c[q>>2]|0)+(c[n>>2]|0)|0;c
[z>>2]=y+(Mb((c[(c[(c[h>>2]|0)+8>>2]|0)+(c[p>>2]<<3)>>2]|0)-(c[s>
;>2]|0)|0,c[u>>2]|0)|0)}while(0);c[(c[(c[h>>2]|0)+4>>2]|0)+(c[p>>2]<<3)
x3e;>2]=c[z>>2];c[p>>2]=(c[p>>2]|0)+1}i=A;return}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;m=i;i=i+32|0;f=m+20|0;g=m+16|0;h=m+12|0;j=m+8|0;l=m+4|0;k=m;c[f>>2]=a;c[g>>
2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=(c[(c[(c[f>>2]|0)+4>>2]|0)+(c[j>>2]
x3c;<3)>>2]|0)-(c[(c[c[f>>2]>>2]|0)+(c[j>>2]<<3)>>2]|0);if(!(c[
k>>2]|0)){i=m;return}c[l>>2]=c[g>>2];while(1){if((c[l>>2]|0)>>>0>=(c
[j>>2]|0)>>>0)break;a=(c[(c[f>>2]|0)+4>>2]|0)+(c[l>>2]<<3)|0;c[
a>>2]=(c[a>>2]|0)+(c[k>>2]|0);c[l>>2]=(c[l>>2]|0)+1}c[l>>2]=(c[j>
;>2]|0)+1;while(1){if((c[l>>2]|0)>>>0>(c[h>>2]|0)>>>0)break;a=(c[(c[
f>>2]|0)+4>>2]|0)+(c[l>>2]<<3)|0;c[a>>2]=(c[a>>2]|0)+(c[k>>
;2]|0);c[l>>2]=(c[l>>2]|0)+1}i=m;return}function kg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+64|
0;k=l+48|0;m=l+44|0;g=l+4|0;h=l;j=l+52|0;c[k>>2]=d;c[m>>2]=f;c[k>>2]=c[k>>2];c[m>
x3e;2]=c[m>>2];f=c[k>>2]|0;if((c[(c[k>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0)+284
+20>>2]|0)){c[f+12>>2]=134;i=l;return}if((lg(f,g,h,l+8|0,l+54|0)|0)<<24>>24){i=l;return}
while(1){d=c[k>>2]|0;if((c[(c[k>>2]|0)+284+20>>2]|0)<=0){f=10;break}f=d+28|0;c[f>>2
]=(c[f>>2]|0)+-1;b[j>>1]=c[(c[(c[k>>2]|0)+24>>2]|0)+(c[(c[k>>2]|0)+28>>
;2]<<2)>>2];f=c[k>>2]|0;if((e[j>>1]|0)>>>0>=(e[(c[k>>2]|0)+
108+8>>1]|0)>>>0){if(a[f+561>>0]|0){f=7;break}}else mg(f,b[j>>1]|0,c[g>>2
]|0,c[h>>2]|0,1);m=(c[k>>2]|0)+284+20|0;c[m>>2]=(c[m>>2]|0)+-1}if((f|0)==7){c[(c[k>
x3e;2]|0)+12>>2]=134;i=l;return}else if((f|0)==10){c[d+284+20>>2]=1;c[(c[k>>2]|0)+32>>2]=
c[(c[k>>2]|0)+28>>2];i=l;return}}function lg(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;u=i;i=i+64|0;l=u+62|0;m=u+56|0;n=u+52|0;o=u+48|0;p=u+44|0;q=u+40|0;t=u+4|0;s=u+60|0;r=u;c[m>>2]=
f;c[n>>2]=g;c[o>>2]=h;c[p>>2]=j;c[q>>2]=k;f=c[m>>2]|0;if(d[(c[m>>2]|
0)+368>>0]&1|0){g=t;f=f+36|0;k=g+36|0;do{c[g>>2]=c[f>>2];g=g+4|0;f=f+4|0}while((g|0)<(k|
0));b[s>>1]=b[(c[m>>2]|0)+284+2>>1]|0}else{g=t;f=f+72|0;k=g+36|0;do{c[g>>2]=c[f>>
;2];g=g+4|0;f=f+4|0}while((g|0)<(k|0));b[s>>1]=b[(c[m>>2]|0)+284+4>>1]|0}if((e[s>>1
]|0)>>>0<(e[t+8>>1]|0)>>>0){g=c[p>>2]|0;f=t;k=g+36|0;do{c[g>>2]=
c[f>>2];g=g+4|0;f=f+4|0}while((g|0)<(k|0));b[c[q>>2]>>1]=b[s>>1]|0;c[r>>2
]=Oa[c[(c[m>>2]|0)+572>>2]&63](c[m>>2]|0,(c[(c[t+16>>2]|0)+(e[s>>1]<
x3c;3)>>2]|0)-(c[(c[t+12>>2]|0)+(e[s>>1]<<3)>>2]|0)|0,(c[(c[t+16>>2]|
0)+(e[s>>1]<<3)+4>>2]|0)-(c[(c[t+12>>2]|0)+(e[s>>1]<<3)+4>>
;2]|0)|0)|0;t=xb(c[r>>2]|0,b[(c[m>>2]|0)+284+14>>1]<<16,c[(c[m>>2]|0)+564>
;>2]|0)|0;c[c[n>>2]>>2]=t;t=xb(c[r>>2]|0,b[(c[m>>2]|0)+284+14+2>>1]<
x3c;16,c[(c[m>>2]|0)+564>>2]|0)|0;c[c[o>>2]>>2]=t;a[l>>0]=0;t=a[l>>0
]|0;i=u;return t|0}if(a[(c[m>>2]|0)+561>>0]|0)c[(c[m>>2]|0)+12>>2]=134;b[c[q>>
2]>>1]=0;a[l>>0]=1;t=a[l>>0]|0;i=u;return t|0}function mg(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;q=i;i=i+16|0;l=q+8|0;m=q+12|0;n=q+4|0;o=q;p=q+14|0;c[l>>2]=f;b[m>>1]=g;c[n>
;>2]=h;c[o>>2]=j;a[p>>0]=k;if(b[(c[l>>2]|0)+284+14>>1]|0?(k=(c[(c[l>>2]|0
)+108+16>>2]|0)+(e[m>>1]<<3)|0,c[k>>2]=(c[k>>2]|0)+(c[n>>2]|0),a[p
x3e;>0]|0):0){k=(c[(c[l>>2]|0)+108+24>>2]|0)+(e[m>>1]|0)|0;a[k>>0]=d[k>>0
]|8}if(!(b[(c[l>>2]|0)+284+14+2>>1]|0)){i=q;return}k=(c[(c[l>>2]|0)+108+16>>2]|0)+(e[m
x3e;>1]<<3)+4|0;c[k>>2]=(c[k>>2]|0)+(c[o>>2]|0);if(!(a[p>>0]|0)){i=q;return
}k=(c[(c[l>>2]|0)+108+24>>2]|0)+(e[m>>1]|0)|0;a[k>>0]=d[k>>0]|16;i=q;return}function
ng(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;q=i;i=i+64|0;g=q+48|0;r=q+44|0;p=q+8|0;o=q+60|0;j=q+4|0;k=q
;h=q+58|0;l=q+56|0;n=q+54|0;m=q+52|0;c[g>>2]=d;c[r>>2]=f;b[h>>1]=c[c[r>>2]>>2];
f=c[g>>2]|0;if((b[h>>1]|0)>>>0>=(b[(c[g>>2]|0)+144+10>>1]|0)>
x3e;>0){if(!(a[f+561>>0]|0)){i=q;return}c[(c[g>>2]|0)+12>>2]=134;i=q;return}if((lg(f,j,k,p,o)|
0)<<24>>24){i=q;return}if(!(b[h>>1]|0))b[l>>1]=0;else b[l>>1]=(e[(c[(c[g>
x3e;2]|0)+144+28>>2]|0)+((b[h>>1]|0)-1<<1)>>1]|0)+1-(e[(c[g>>2]|0)+144+32>
;>1]|0);b[n>>1]=(e[(c[(c[g>>2]|0)+144+28>>2]|0)+(b[h>>1]<<1)>>1
]|0)-(e[(c[g>>2]|0)+144+32>>1]|0);do if((e[n>>1]|0)>>>0>=(e[(c[g>>2]|
0)+108+8>>1]|0)>>>0)if((e[(c[g>>2]|0)+108+8>>1]|0)>0){b[n>>1]=(e[(c[
g>>2]|0)+108+8>>1]|0)-1;break}else{b[n>>1]=0;break}while(0);b[m>>1]=b[l>>1]|0;
while(1){if((e[m>>1]|0)>(e[n>>1]|0))break;if(!((c[p+16>>2]|0)==(c[(c[g>>2]|0)+108+16
>>2]|0)?(e[o>>1]|0)==(e[m>>1]|0):0))mg(c[g>>2]|0,b[m>>1]|0,c[j>>2]|0
,c[k>>2]|0,1);b[m>>1]=(b[m>>1]|0)+1<<16>>16}i=q;return}function og(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;p=i;i=i+64|0;g=p+48|0;q=p+44|0;n=p+8|0;m=p+56|0;h=p+4|0;j=p;l=p+54|0;k=p+52|0;
c[g>>2]=d;c[q>>2]=f;f=c[g>>2]|0;if((c[c[q>>2]>>2]|0)>>>0>=
2){if(!(a[f+561>>0]|0)){i=p;return}c[(c[g>>2]|0)+12>>2]=134;i=p;return}if((lg(f,h,j,n,m)|0)<
x3c;24>>24){i=p;return}if((e[(c[g>>2]|0)+284+64>>1]|0)==0?(e[(c[g>>2]|0)+108+8>>
;1]|0)>0:0)b[l>>1]=(e[(c[g>>2]|0)+108+8>>1]|0)-1;else o=8;do if((o|0)==8){if((e[(c[g>>
;2]|0)+284+64>>1]|0)==1?(b[(c[g>>2]|0)+108+10>>1]|0)>0:0){b[l>>1]=b[(c[(c[g>
x3e;2]|0)+108+28>>2]|0)+((b[(c[g>>2]|0)+108+10>>1]|0)-1<<1)>>1]|0;if((e[l>
;>1]|0)>>>0<(e[(c[g>>2]|0)+108+8>>1]|0)>>>0)break;if(!(a[(c[g>
x3e;2]|0)+561>>0]|0)){i=p;return}c[(c[g>>2]|0)+12>>2]=134;i=p;return}b[l>>1]=0}while(0);
b[k>>1]=0;while(1){if((e[k>>1]|0)>(e[l>>1]|0))break;if(!((c[n+16>>2]|0)==(c[(c[g>
;>2]|0)+108+16>>2]|0)?(e[m>>1]|0)==(e[k>>1]|0):0))mg(c[g>>2]|0,b[k>>1]|0,
c[h>>2]|0,c[j>>2]|0,0);b[k>>1]=(b[k>>1]|0)+1<<16>>16}i=p;return}function
pg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;l=m+12|0;g=m+8|0;h=m+4|0;j=m;k=m+16|0;c[l>>2]=d;c[g>
;>2]=f;if((c[(c[l>>2]|0)+16>>2]|0)<((c[(c[l>>2]|0)+284+20>>2]|0)+1|0)){c[(c[l
x3e;>2]|0)+12>>2]=134;i=m;return}c[h>>2]=qg(c[c[g>>2]>>2]|0,b[(c[l>>2]|0)+
284+14>>1]|0)|0;c[j>>2]=qg(c[c[g>>2]>>2]|0,b[(c[l>>2]|0)+284+14+2>>1
]|0)|0;while(1){f=c[l>>2]|0;if((c[(c[l>>2]|0)+284+20>>2]|0)<=0){g=10;break}g=f+28|0;c[g>
x3e;2]=(c[g>>2]|0)+-1;b[k>>1]=c[(c[(c[l>>2]|0)+24>>2]|0)+(c[(c[l>>2]|0)+28>
;>2]<<2)>>2];g=c[l>>2]|0;if((e[k>>1]|0)>>>0>=(e[(c[l>>
;2]|0)+108+8>>1]|0)>>>0){if(a[g+561>>0]|0){g=7;break}}else mg(g,b[k>>1]|0,c[h>
x3e;2]|0,c[j>>2]|0,1);d=(c[l>>2]|0)+284+20|0;c[d>>2]=(c[d>>2]|0)+-1}if((g|0)==7){c[(c[l
x3e;>2]|0)+12>>2]=134;i=m;return}else if((g|0)==10){c[f+284+20>>2]=1;c[(c[l>>2]|0)+32>
x3e;2]=c[(c[l>>2]|0)+28>>2];i=m;return}}function qg(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
;m=i;i=i+32|0;d=m+28|0;e=m+24|0;l=m+20|0;f=m+16|0;g=m+12|0;k=m+8|0;j=m+4|0;h=m;c[d>>2]=a;c[e>>2]=b;c[l>
x3e;2]=c[d>>2]^c[e>>2];if((c[d>>2]|0)<0)c[d>>2]=0-(c[d>>2]|0);if((c[e>
;>2]|0)<0)c[e>>2]=0-(c[e>>2]|0);c[f>>2]=c[d>>2]>>16&65535;c[g
x3e;>2]=c[d>>2]&65535;c[j>>2]=_(c[g>>2]|0,c[e>>2]|0)|0;c[k>>2]=_(c[f
>>2]|0,c[e>>2]|0)|0;c[h>>2]=(c[k>>2]|0)>>>16;c[k>>2]=(c[k>
x3e;2]<<16)+8192;c[j>>2]=(c[j>>2]|0)+(c[k>>2]|0);if((c[j>>2]|0)>>>
;0>=(c[k>>2]|0)>>>0){b=c[j>>2]|0;b=b>>>14;j=c[h>>2]|0;j=j<
x3c;18;j=b|j;c[k>>2]=j;j=c[l>>2]|0;j=(j|0)>=0;k=c[k>>2]|0;l=0-k|0;l=j?k:l;i=m;return l|0}c[h
x3e;>2]=(c[h>>2]|0)+1;b=c[j>>2]|0;b=b>>>14;j=c[h>>2]|0;j=j<<18;j=b|j
;c[k>>2]=j;j=c[l>>2]|0;j=(j|0)>=0;k=c[k>>2]|0;l=0-k|0;l=j?k:l;i=m;return l|0}function rg(b,d){
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,q=0,r=0,s=0;s=i;i=i+48|0;r=s+40|0;g=s+36|0;m=s+32|0;k=s+28|0;o=s+24|0;h=
s+20|0;q=s+16|0;p=s+12|0;n=s+8|0;j=s+4|0;l=s;c[r>>2]=b;c[g>>2]=d;c[r>>2]=c[r>>2];c[g>
;>2]=c[g>>2];d=c[r>>2]|0;if((c[(c[r>>2]|0)+16>>2]|0)<(c[(c[r>>2]|0)+
284+20>>2]|0)){c[d+12>>2]=134;i=s;return}if((e[d+284+60>>1]|0)!=0?(e[(c[r>>2]|0)+284+62
x3e;>1]|0)!=0:0)d=(e[(c[r>>2]|0)+284+64>>1]|0)==0;else d=1;c[q>>2]=d&1;if((e[(c[r>
x3e;2]|0)+284+2>>1]|0)>>>0>=(e[(c[r>>2]|0)+36+8>>1]|0)>>>0){if(!(
a[(c[r>>2]|0)+561>>0]|0)){i=s;return}c[(c[r>>2]|0)+12>>2]=134;i=s;return}d=e[(c[r>
x3e;2]|0)+284+2>>1]|0;b=(c[r>>2]|0)+36|0;if(c[q>>2]|0)c[o>>2]=(c[b+12>>2]|0)+(
d<<3);else c[o>>2]=(c[b+20>>2]|0)+(d<<3);c[h>>2]=(c[(c[r>>2]|0)+36+16
>>2]|0)+(e[(c[r>>2]|0)+284+2>>1]<<3);if((e[(c[r>>2]|0)+284+2>>1]|0)
x3e;>>0<(e[(c[r>>2]|0)+36+8>>1]|0)>>>0?(e[(c[r>>2]|0)+284+4>>
;1]|0)>>>0<(e[(c[r>>2]|0)+72+8>>1]|0)>>>0:0){d=c[(c[r>>2]|0)+576
>>2]|0;b=c[r>>2]|0;f=e[(c[r>>2]|0)+284+4>>1]|0;g=(c[r>>2]|0)+72|0;if(c[q>
x3e;2]|0)c[m>>2]=Oa[d&63](b,(c[(c[g+12>>2]|0)+(f<<3)>>2]|0)-(c[c[o>>2]>
;>2]|0)|0,(c[(c[(c[r>>2]|0)+72+12>>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)+4
x3e;>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;else c[m>>2]=Oa[d&63](b,(c[(c[g+20>>2]|
0)+(f<<3)>>2]|0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+72+20>>2]|0)+(
e[(c[r>>2]|0)+284+4>>1]<<3)+4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;c[
k>>2]=Oa[c[(c[r>>2]|0)+572>>2]&63](c[r>>2]|0,(c[(c[(c[r>>2]|0)+72+16>
;>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)>>2]|0)-(c[c[h>>2]>>2]|0)|0
,(c[(c[(c[r>>2]|0)+72+16>>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)+4>>2]|0
)-(c[(c[h>>2]|0)+4>>2]|0)|0)|0}else{c[m>>2]=0;c[k>>2]=0}while(1){b=c[r>>2]|0;if
((c[(c[r>>2]|0)+284+20>>2]|0)<=0){d=34;break}f=b+28|0;g=(c[f>>2]|0)+-1|0;c[f>>2]=g;
c[p>>2]=c[(c[(c[r>>2]|0)+24>>2]|0)+(g<<2)>>2];if((c[p>>2]|0)>
x3e;>0>=(e[(c[r>>2]|0)+108+8>>1]|0)>>>0){if(a[(c[r>>2]|0)+561>>
0]|0){d=22;break}}else{d=c[(c[r>>2]|0)+576>>2]|0;b=c[r>>2]|0;f=c[p>>2]|0;g=(c[r>>
;2]|0)+108|0;if(c[q>>2]|0)c[n>>2]=Oa[d&63](b,(c[(c[g+12>>2]|0)+(f<<3)>>2]|
0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+12>>2]|0)+(c[p>>2]<<3)+
4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;else c[n>>2]=Oa[d&63](b,(c[(c[g+20>>
;2]|0)+(f<<3)>>2]|0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+20>>2
]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;c[j>>2]=Oa[c
[(c[r>>2]|0)+572>>2]&63](c[r>>2]|0,(c[(c[(c[r>>2]|0)+108+16>>2]|0)+(c[p
x3e;>2]<<3)>>2]|0)-(c[c[h>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+16>>
;2]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0)|0)|0;if(c[n>>2]|
0){if(c[m>>2]|0)d=xb(c[n>>2]|0,c[k>>2]|0,c[m>>2]|0)|0;else d=c[j>>2]|0;c[l>
;>2]=d}else c[l>>2]=0;_a[c[(c[r>>2]|0)+584>>2]&15](c[r>>2]|0,(c[r>>2
]|0)+108|0,c[p>>2]&65535,(c[l>>2]|0)-(c[j>>2]|0)|0)}g=(c[r>>2]|0)+284+20|0;c[g>
;>2]=(c[g>>2]|0)+-1}if((d|0)==22){c[(c[r>>2]|0)+12>>2]=134;i=s;return}else if((d|0)==34){c[b+
284+20>>2]=1;c[(c[r>>2]|0)+32>>2]=c[(c[r>>2]|0)+28>>2];i=s;return}}function sg
(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+8|0;j=m+4|0;l=m+12|0;k=m;c[h>>2]=f;c[j>>2]=g;b[l
x3e;>1]=c[c[j>>2]>>2];if((e[l>>1]|0)>>>0<(e[(c[h>>2]|0)+72+8>
;>1]|0)>>>0?(e[(c[h>>2]|0)+284>>1]|0)>>>0<(e[(c[h>>2]|0)+36
+8>>1]|0)>>>0:0){if(!(e[(c[h>>2]|0)+284+62>>1]|0)){f=(c[(c[h>>2]|0)+72+12
>>2]|0)+(e[l>>1]<<3)|0;g=(c[(c[h>>2]|0)+36+12>>2]|0)+(e[(c[h>>2]|0)+
284>>1]<<3)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];_a[c[(c[h>>
;2]|0)+588>>2]&15](c[h>>2]|0,(c[h>>2]|0)+72|0,b[l>>1]|0,c[(c[j>>2]|0)+4
x3e;>2]|0);f=(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)|0;g=(c[(c[h>>2]|0)+
72+12>>2]|0)+(e[l>>1]<<3)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>
;2]}c[k>>2]=Oa[c[(c[h>>2]|0)+572>>2]&63](c[h>>2]|0,(c[(c[(c[h>>2]|0)+72+16
>>2]|0)+(e[l>>1]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[(c[h
x3e;>2]|0)+284>>1]<<3)>>2]|0)|0,(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>
x3e;1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[(c[h>>2]|0)+284>>
;1]<<3)+4>>2]|0)|0)|0;_a[c[(c[h>>2]|0)+584>>2]&15](c[h>>2]|0,(c[h>
x3e;2]|0)+72|0,b[l>>1]|0,(c[(c[j>>2]|0)+4>>2]|0)-(c[k>>2]|0)|0);b[(c[h>>2]|0)+
284+2>>1]=b[(c[h>>2]|0)+284>>1]|0;b[(c[h>>2]|0)+284+4>>1]=b[l>>1]|0;
if(!(d[(c[h>>2]|0)+368>>0]&1)){i=m;return}b[(c[h>>2]|0)+284>>1]=b[l>>1]|0
;i=m;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return
}function tg(d,f){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+8|0;l=k+4|0;h=k+12|0;g=k;c[j>>2]=d;c[l>>
;2]=f;c[j>>2]=c[j>>2];c[l>>2]=c[l>>2];if((c[(c[j>>2]|0)+16>>2]|0)>
;=(c[(c[j>>2]|0)+284+20>>2]|0)?(e[(c[j>>2]|0)+284>>1]|0)>>>0<(e[(c[j
>>2]|0)+36+8>>1]|0)>>>0:0){while(1){d=c[j>>2]|0;if((c[(c[j>>2]|0)+284+20
x3e;>2]|0)<=0){f=11;break}f=d+28|0;c[f>>2]=(c[f>>2]|0)+-1;b[h>>1]=c[(c[(c[j>>2
]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<2)>>2];f=c[j>>2]|0;if((e[h>
;>1]|0)>>>0>=(e[(c[j>>2]|0)+72+8>>1]|0)>>>0){if(a[f+561>>0
]|0){f=8;break}}else{c[g>>2]=Oa[c[f+572>>2]&63](c[j>>2]|0,(c[(c[(c[j>>2]|0)+72+16
x3e;>2]|0)+(e[h>>1]<<3)>>2]|0)-(c[(c[(c[j>>2]|0)+36+16>>2]|0)+(e[(c[j>
;>2]|0)+284>>1]<<3)>>2]|0)|0,(c[(c[(c[j>>2]|0)+72+16>>2]|0)+(e[h>>
;1]<<3)+4>>2]|0)-(c[(c[(c[j>>2]|0)+36+16>>2]|0)+(e[(c[j>>2]|0)+284>>
1]<<3)+4>>2]|0)|0)|0;_a[c[(c[j>>2]|0)+584>>2]&15](c[j>>2]|0,(c[j>>
;2]|0)+72|0,b[h>>1]|0,0-(c[g>>2]|0)|0)}l=(c[j>>2]|0)+284+20|0;c[l>>2]=(c[l>>2]|
0)+-1}if((f|0)==8){c[(c[j>>2]|0)+12>>2]=134;i=k;return}else if((f|0)==11){c[d+284+20>>2]=1;c[(c[j
x3e;>2]|0)+32>>2]=c[(c[j>>2]|0)+28>>2];i=k;return}}if(!(a[(c[j>>2]|0)+561>>
;0]|0)){i=k;return}c[(c[j>>2]|0)+12>>2]=134;i=k;return}function ug(f,g){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;h=n+16|0;o=n+12|0;j=n+8|0;m=n+20|0;k=n+4|0;l=n;c[h>>2]=f;c[o>>2]=g;c[j>>2]=c[(
c[o>>2]|0)+4>>2];b[m>>1]=c[c[o>>2]>>2];if((e[m>>1]|0)>>>
;0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0?(c[j>>2]|0)>>>0<(c[(c[h
x3e;>2]|0)+380>>2]|0)>>>0:0){c[k>>2]=Ya[c[(c[h>>2]|0)+592>>2]&127
](c[h>>2]|0,c[j>>2]|0)|0;if(!(e[(c[h>>2]|0)+284+60>>1]|0)){o=qg(c[k>>2]|0,b[(c
[h>>2]|0)+284+14>>1]|0)|0;c[(c[(c[h>>2]|0)+36+12>>2]|0)+(e[m>>1]<<3)
x3e;>2]=o;o=qg(c[k>>2]|0,b[(c[h>>2]|0)+284+14+2>>1]|0)|0;c[(c[(c[h>>2]|0)+36+12>
;>2]|0)+(e[m>>1]<<3)+4>>2]=o;o=(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>
;1]<<3)|0;f=(c[(c[h>>2]|0)+36+12>>2]|0)+(e[m>>1]<<3)|0;c[o>>2]=c[f
x3e;>2];c[o+4>>2]=c[f+4>>2]}c[l>>2]=Oa[c[(c[h>>2]|0)+572>>2]&63](c[h
>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>>2]|0,c[(c[(c[h>
;>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)|0;if(d[(c[h>>2]|0)+368>
x3e;0]&1|0){o=(c[k>>2]|0)-(c[l>>2]|0)|0;if(((((c[k>>2]|0)-(c[l>>2]|0)|0)<0?0-o
|0:o)|0)>(c[(c[h>>2]|0)+284+36>>2]|0))c[k>>2]=c[l>>2];c[k>>2]=Oa[c[(c[h
x3e;>2]|0)+568>>2]&63](c[h>>2]|0,c[k>>2]|0,c[(c[h>>2]|0)+244+20>>2]|
0)|0}_a[c[(c[h>>2]|0)+584>>2]&15](c[h>>2]|0,(c[h>>2]|0)+36|0,b[m>>1]|0,(c
[k>>2]|0)-(c[l>>2]|0)|0);b[(c[h>>2]|0)+284>>1]=b[m>>1]|0;b[(c[h>>2]|
0)+284+2>>1]=b[m>>1]|0;i=n;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=n;return}c[(c[h>
x3e;2]|0)+12>>2]=134;i=n;return}function vg(a,f){a=a|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+4|0;h=l;k=l+10|0
;j=l+8|0;c[g>>2]=a;c[h>>2]=f;b[k>>1]=d[(c[(c[g>>2]|0)+356>>2]|0)+((c[(c[g>
;>2]|0)+360>>2]|0)+1)>>0]|0;if((e[k>>1]|0)>>>0>=((c[(c[g>>2]|0)+
20>>2]|0)+1-(c[(c[g>>2]|0)+16>>2]|0)|0)>>>0){c[(c[g>>2]|0)+12>>
2]=130;i=l;return}b[j>>1]=1;while(1){if((e[j>>1]|0|0)>(e[k>>1]|0|0))break;c[(c[h>>2
]|0)+((e[j>>1]|0)-1<<2)>>2]=d[(c[(c[g>>2]|0)+356>>2]|0)+((c[(c[g>>2]|
0)+360>>2]|0)+(e[j>>1]|0)+1)>>0];b[j>>1]=(b[j>>1]|0)+1<<16>>
;16}a=(c[g>>2]|0)+32|0;c[a>>2]=(c[a>>2]|0)+(e[k>>1]|0);i=l;return}function wg(f,g){f=f|0
;g=g|0;var h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+4|0;j=m;l=m+10|0;k=m+8|0;c[h>>2]=f;c[j>>2]=g;b[l>>
1]=d[(c[(c[h>>2]|0)+356>>2]|0)+((c[(c[h>>2]|0)+360>>2]|0)+1)>>0]|0;g=c[h>
x3e;2]|0;if((e[l>>1]|0)>>>0>=((c[(c[h>>2]|0)+20>>2]|0)+1-(c[(c[h>>2]|
0)+16>>2]|0)|0)>>>0){c[g+12>>2]=130;i=m;return}f=g+360|0;c[f>>2]=(c[f>>2]|
0)+2;b[k>>1]=0;while(1){g=c[h>>2]|0;if((e[k>>1]|0|0)>=(e[l>>1]|0|0))break;f=(xg(g)|
0)<<16>>16;c[(c[j>>2]|0)+((e[k>>1]|0)<<2)>>2]=f;b[k>>1]=(b
[k>>1]|0)+1<<16>>16}a[g+376>>0]=0;k=(c[h>>2]|0)+32|0;c[k>>2]=(c[k>
;>2]|0)+(e[l>>1]|0);i=m;return}function xg(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;a=(c[b>
x3e;2]|0)+360|0;c[a>>2]=(c[a>>2]|0)+2;i=e;return ((d[(c[(c[b>>2]|0)+356>>2]|0)+((c[(c[b
x3e;>2]|0)+360>>2]|0)-2)>>0]|0)<<8)+(d[(c[(c[b>>2]|0)+356>>2]|0)+((c[(c[b
>>2]|0)+360>>2]|0)-1)>>0]|0)&65535|0}function yg(b,f){b=b|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i
;i=i+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=b;c[h>>2]=f;c[j>>2]=c[c[h>>2]>>
2];f=c[g>>2]|0;do if((c[j>>2]|0)>>>0<(e[(c[g>>2]|0)+108+8>>1]|0)>
;>>0){b=c[g>>2]|0;if(d[f+368>>0]&1|0){c[k>>2]=Oa[c[b+576>>2]&63](c[g
>>2]|0,c[(c[(c[g>>2]|0)+108+12>>2]|0)+(c[j>>2]<<3)>>2]|0,c[(c[(c[g
x3e;>2]|0)+108+12>>2]|0)+(c[j>>2]<<3)+4>>2]|0)|0;break}else{c[k>>2]=Oa[c[
b+572>>2]&63](c[g>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(c[j>>2]<<
;3)>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(c[j>>2]<<3)+4>>2]|0)|0;break
}}else{if(!(a[f+561>>0]|0)){c[k>>2]=0;break}c[(c[g>>2]|0)+12>>2]=134;i=l;return}while(0);
c[c[h>>2]>>2]=c[k>>2];i=l;return}function zg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0
;g=l+8|0;h=l+4|0;j=l;k=l+12|0;c[g>>2]=d;c[h>>2]=f;b[k>>1]=c[c[h>>2]>>2];f=c[g
x3e;>2]|0;if((e[k>>1]|0)>>>0>=(e[(c[g>>2]|0)+108+8>>1]|0)>>>
;0){if(!(a[f+561>>0]|0)){i=l;return}c[(c[g>>2]|0)+12>>2]=134;i=l;return}else{c[j>>2]=Oa[
c[f+572>>2]&63](c[g>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(e[k>>1]<
x3c;3)>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)|0;
_a[c[(c[g>>2]|0)+584>>2]&15](c[g>>2]|0,(c[g>>2]|0)+108|0,b[k>>1]|0,(c[(c[
h>>2]|0)+4>>2]|0)-(c[j>>2]|0)|0);if(e[(c[g>>2]|0)+284+64>>1]|0){i=l;return}j=(
c[(c[g>>2]|0)+108+12>>2]|0)+(e[k>>1]<<3)|0;k=(c[(c[g>>2]|0)+108+16>>
2]|0)+(e[k>>1]<<3)|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];i=l;return}}
function Ag(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;r=i;i=i+32|0;h=r+24|0;j=r+20|0;l=r+30|0;m=r+28|0;k=r+16
|0;o=r+12|0;p=r+8|0;n=r;c[h>>2]=f;c[j>>2]=g;b[l>>1]=c[(c[j>>2]|0)+4>>2];b[m>
;>1]=c[c[j>>2]>>2];do if((e[m>>1]|0)>>>0<(e[(c[h>>2]|0)+36+8>
;>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h>>2]|0)+72+8>>1]|0)>
;>>0:0){g=c[h>>2]|0;if(d[(c[h>>2]|0)+368>>0]&1|0){c[k>>2]=Oa[c[g+572>
;>2]&63](c[h>>2]|0,(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>
x3e;2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)>>2]|0)|0,(c[(c[(c[h>
;>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>
x3e;2]|0)+(e[l>>1]<<3)+4>>2]|0)|0)|0;break}c[o>>2]=(c[g+36+20>>2]|0)+(e[m>
;>1]<<3);c[p>>2]=(c[(c[h>>2]|0)+72+20>>2]|0)+(e[l>>1]<<3);if((c
[(c[h>>2]|0)+216+4>>2]|0)==(c[(c[h>>2]|0)+216+8>>2]|0)){c[k>>2]=Oa[c[(c[h>
;>2]|0)+576>>2]&63](c[h>>2]|0,(c[c[o>>2]>>2]|0)-(c[c[p>>2]>>
;2]|0)|0,(c[(c[o>>2]|0)+4>>2]|0)-(c[(c[p>>2]|0)+4>>2]|0)|0)|0;c[k>>2]=Mb(c[k
x3e;>2]|0,c[(c[h>>2]|0)+216+4>>2]|0)|0;break}else{c[n>>2]=Mb((c[c[o>>2]>>
2]|0)-(c[c[p>>2]>>2]|0)|0,c[(c[h>>2]|0)+216+4>>2]|0)|0;c[n+4>>2]=Mb((c[(c[o>
;>2]|0)+4>>2]|0)-(c[(c[p>>2]|0)+4>>2]|0)|0,c[(c[h>>2]|0)+216+8>>2]|0)|0;c
[k>>2]=Oa[c[(c[h>>2]|0)+576>>2]&63](c[h>>2]|0,c[n>>2]|0,c[n+4>>
2]|0)|0;break}}else q=3;while(0);do if((q|0)==3){if(!(a[(c[h>>2]|0)+561>>0]|0)){c[k>>2]=0;break}c[(
c[h>>2]|0)+12>>2]=134;i=r;return}while(0);c[c[j>>2]>>2]=c[k>>2];i=r;return}function
Bg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=e[(c[d>>2]|0)+244+8>>1]|0;a=Mb(a,of(c[d>
;>2]|0)|0)|0;i=b;return a|0}function Cg(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+8|0;k=j+4|0;h=j;g=j+12|0;
c[f>>2]=b;c[k>>2]=e;if(c[c[k>>2]>>2]|0){i=j;return}c[h>>2]=1;a[g>>0]=
0;while(1){if(((Yf(c[f>>2]|0)|0)&255|0)==1){f=9;break}switch(d[(c[f>>2]|0)+368>>0]|0|0){case
88:{c[h>>2]=(c[h>>2]|0)+1;break}case 27:{a[g>>0]=(c[h>>2]|0)==1;break}case 89:{c[h>
x3e;2]=(c[h>>2]|0)+-1;a[g>>0]=(c[h>>2]|0)==0;break}default:{}}if(d[g>>0]|0|0){f=9;break}}
if((f|0)==9){i=j;return}}function Dg(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;p=i;i=i+32|0;o=p+20|0;h=p+16|0;m=p+12|
0;n=p+8|0;j=p+24|0;l=p+4|0;k=p;c[o>>2]=f;c[h>>2]=g;c[n>>2]=c[c[h>>2]>>2];c[m
x3e;>2]=1;while(1){h=c[(c[o>>2]|0)+28>>2]|0;if((c[m>>2]|0)>>>0>(c[n>
x3e;2]|0)>>>0){g=16;break}f=c[o>>2]|0;if((h|0)<2){g=4;break}h=f+28|0;c[h>>2]=(c[h>
x3e;2]|0)-2;b[j>>1]=c[(c[(c[o>>2]|0)+24>>2]|0)+((c[(c[o>>2]|0)+28>>2]|0)+1<
;<2)>>2];c[k>>2]=c[(c[(c[o>>2]|0)+24>>2]|0)+(c[(c[o>>2]|0)+28>>
2]<<2)>>2];if((e[j>>1]|0)>>>0>=(e[(c[o>>2]|0)+36+8>>1]|0)
x3e;>>0){if(a[(c[o>>2]|0)+561>>0]|0)c[(c[o>>2]|0)+12>>2]=134}else{c[l>>
;2]=(c[k>>2]&240)>>>4;switch(d[(c[o>>2]|0)+368>>0]|0){case 114:{c[l>>
;2]=(c[l>>2]|0)+32;break}case 113:{c[l>>2]=(c[l>>2]|0)+16;break}default:{}}c[l>>2]=(c[l
x3e;>2]|0)+(b[(c[o>>2]|0)+284+48>>1]|0);h=Bg(c[o>>2]|0)|0;if((h|0)==(c[l>>2]|0)){c[
k>>2]=(c[k>>2]&15)-8;if((c[k>>2]|0)>=0)c[k>>2]=(c[k>>2]|0)+1;c[k>
;>2]=(c[k>>2]<<6|0)/(1<<b[(c[o>>2]|0)+284+50>>1]|0)|0;_a[c[(c[o>>
;2]|0)+584>>2]&15](c[o>>2]|0,(c[o>>2]|0)+36|0,b[j>>1]|0,c[k>>2]|0)}}c[m
x3e;>2]=(c[m>>2]|0)+1}if((g|0)==4){c[f+12>>2]=129;i=p;return}else if((g|0)==16){c[(c[o>>2]|0)+
32>>2]=h;i=p;return}}function Eg(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;o=i;i=i+32|0;n=o+24|0;g=o+20|0;m
=o+16|0;l=o+12|0;h=o+8|0;k=o+4|0;j=o;c[n>>2]=e;c[g>>2]=f;c[m>>2]=c[c[g>>2]>>2];
c[l>>2]=1;while(1){g=c[(c[n>>2]|0)+28>>2]|0;if((c[l>>2]|0)>>>0>(c[m
x3e;>2]|0)>>>0){f=16;break}e=c[n>>2]|0;if((g|0)<2){f=4;break}g=e+28|0;c[g>>2]=(c[g
x3e;>2]|0)-2;c[h>>2]=c[(c[(c[n>>2]|0)+24>>2]|0)+((c[(c[n>>2]|0)+28>>2]|0)+
1<<2)>>2];c[j>>2]=c[(c[(c[n>>2]|0)+24>>2]|0)+(c[(c[n>>2]|0)+28>
x3e;2]<<2)>>2];if((c[h>>2]|0)>>>0>=(c[(c[n>>2]|0)+380>>2]|
0)>>>0){if(a[(c[n>>2]|0)+561>>0]|0){f=7;break}}else{c[k>>2]=(c[j>>2]&
;240)>>>4;switch(d[(c[n>>2]|0)+368>>0]|0){case 117:{c[k>>2]=(c[k>>2]|0)+32
;break}case 116:{c[k>>2]=(c[k>>2]|0)+16;break}default:{}}c[k>>2]=(c[k>>2]|0)+(b[(c[n>
;>2]|0)+284+48>>1]|0);g=Bg(c[n>>2]|0)|0;if((g|0)==(c[k>>2]|0)){c[j>>2]=(c[j>
x3e;2]&15)-8;if((c[j>>2]|0)>=0)c[j>>2]=(c[j>>2]|0)+1;c[j>>2]=(c[j>>2
]<<6|0)/(1<<b[(c[n>>2]|0)+284+50>>1]|0)|0;Ua[c[(c[n>>2]|0)+600>>2]
x26;31](c[n>>2]|0,c[h>>2]|0,c[j>>2]|0)}}c[l>>2]=(c[l>>2]|0)+1}if((f|0)==4){c[e
+12>>2]=129;i=o;return}else if((f|0)==7){c[(c[n>>2]|0)+12>>2]=134;i=o;return}else if((f|0)==16){c[(
c[n>>2]|0)+32>>2]=g;i=o;return}}function Fg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|
0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;switch(c[g>>2]&192|0){case 0:{c[(c[e>
;>2]|0)+476>>2]=(c[f>>2]|0)/2|0;break}case 64:{c[(c[e>>2]|0)+476>>2]=c[f>>
;2];break}case 128:{c[(c[e>>2]|0)+476>>2]=c[f>>2]<<1;break}case 192:{c[(c[e>>2
]|0)+476>>2]=c[f>>2];break}default:{}}switch(c[g>>2]&48|0){case 0:{c[(c[e>>2]|0)+480
>>2]=0;break}case 16:{c[(c[e>>2]|0)+480>>2]=(c[(c[e>>2]|0)+476>>2]|0)/4|0;break
}case 32:{c[(c[e>>2]|0)+480>>2]=(c[(c[e>>2]|0)+476>>2]|0)/2|0;break}case 48:{c[(c[e>
;>2]|0)+480>>2]=((c[(c[e>>2]|0)+476>>2]|0)*3|0)/4|0;break}default:{}}if(!(c[g>>2]
x26;15)){c[(c[e>>2]|0)+484>>2]=(c[(c[e>>2]|0)+476>>2]|0)-1;d=c[e>>2]|0;d=d+476
|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+480|0;a=c[d>>2]|0;a=(a|0)/256|0;c
[d>>2]=a;d=c[e>>2]|0;d=d+484|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;i=h;return}else{d=(_((
c[g>>2]&15)-4|0,c[(c[e>>2]|0)+476>>2]|0)|0)/8|0;c[(c[e>>2]|0)+484>>2]=d;d
=c[e>>2]|0;d=d+476|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+480|0;a=c[d>
;>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+484|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>
;2]=a;i=h;return}}function Gg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0;k=i;i=i+16|0;j=k+4|0;l=k;h=k+8|0;c[j>>2]=f;c[l>
;>2]=g;c[j>>2]=c[j>>2];c[l>>2]=c[l>>2];if((c[(c[j>>2]|0)+16>>2]|
0)<(c[(c[j>>2]|0)+284+20>>2]|0)){c[(c[j>>2]|0)+12>>2]=129;i=k;return}while(1){f=c[j
>>2]|0;if((c[(c[j>>2]|0)+284+20>>2]|0)<=0){g=9;break}l=f+28|0;c[l>>2]=(c[l>>
;2]|0)+-1;b[h>>1]=c[(c[(c[j>>2]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<
2)>>2];if((e[h>>1]|0)>>>0>=(e[(c[j>>2]|0)+144+8>>1]|0)>>
x3e;0){if(a[(c[j>>2]|0)+561>>0]|0){g=6;break}}else{l=(c[(c[j>>2]|0)+144+24>>2]|0)+(e[h
x3e;>1]|0)|0;a[l>>0]=d[l>>0]^1}l=(c[j>>2]|0)+284+20|0;c[l>>2]=(c[l>>2]|0)+-
1}if((g|0)==6){c[(c[j>>2]|0)+12>>2]=134;i=k;return}else if((g|0)==9){c[f+284+20>>2]=1;c[(c[j>
x3e;2]|0)+32>>2]=c[(c[j>>2]|0)+28>>2];i=k;return}}function Hg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0
,m=0,n=0;m=i;i=i+16|0;h=m+4|0;n=m;j=m+12|0;k=m+10|0;l=m+8|0;c[h>>2]=f;c[n>>2]=g;b[k>>1]=c[(c[n>
;>2]|0)+4>>2];b[l>>1]=c[c[n>>2]>>2];if((e[k>>1]|0)>>>0<
;(e[(c[h>>2]|0)+144+8>>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h>
x3e;2]|0)+144+8>>1]|0)>>>0:0){b[j>>1]=b[l>>1]|0;while(1){if((e[j>>1]|0)
x3e;(e[k>>1]|0))break;n=(c[(c[h>>2]|0)+144+24>>2]|0)+(e[j>>1]|0)|0;a[n>>0]=d[n
>>0]|1;b[j>>1]=(b[j>>1]|0)+1<<16>>16}i=m;return}if(!(a[(c[h>>2]|0)+561
>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}function Ig(f,g){f=f|0;g=g|0;var h=0,j=0,k
=0,l=0,m=0,n=0;m=i;i=i+16|0;h=m+4|0;n=m;j=m+12|0;k=m+10|0;l=m+8|0;c[h>>2]=f;c[n>>2]=g;b[k>>1]=c[(c
[n>>2]|0)+4>>2];b[l>>1]=c[c[n>>2]>>2];if((e[k>>1]|0)>>>
;0<(e[(c[h>>2]|0)+144+8>>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h
>>2]|0)+144+8>>1]|0)>>>0:0){b[j>>1]=b[l>>1]|0;while(1){if((e[j>>
;1]|0)>(e[k>>1]|0))break;n=(c[(c[h>>2]|0)+144+24>>2]|0)+(e[j>>1]|0)|0;a[n>>
;0]=d[n>>0]&-2;b[j>>1]=(b[j>>1]|0)+1<<16>>16}i=m;return}if(!(a[(c[h>
x3e;2]|0)+561>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}function Jg(b,f){b=b|0;f=f|0;
var g=0,h=0,j=0,k=0;k=i;i=i+16|0;g=k+8|0;h=k+4|0;j=k;c[g>>2]=b;c[h>>2]=f;c[j>>2]=c[c[h>>
2]>>2]&255;if((c[j>>2]|0)==255){a[(c[g>>2]|0)+284+53>>0]=1;i=k;return}if(!(c[j>
;>2]|0)){a[(c[g>>2]|0)+284+53>>0]=0;i=k;return}if(c[c[h>>2]>>2]&256|0?(e[(c[g
x3e;>2]|0)+244+8>>1]|0|0)<=(c[j>>2]|0):0)a[(c[g>>2]|0)+284+53>>0]=1;if(c[c[h
x3e;>2]>>2]&512|0?d[(c[g>>2]|0)+244+37>>0]|0|0:0)a[(c[g>>2]|0)+284+53>>
;0]=1;if(c[c[h>>2]>>2]&1024|0?d[(c[g>>2]|0)+244+38>>0]|0|0:0)a[(c[g>>2]|0
)+284+53>>0]=1;if(c[c[h>>2]>>2]&2048|0?(e[(c[g>>2]|0)+244+8>>1]|0|0)>
;(c[j>>2]|0):0)a[(c[g>>2]|0)+284+53>>0]=0;if(c[c[h>>2]>>2]&4096|0?d[(c[g
x3e;>2]|0)+244+37>>0]|0|0:0)a[(c[g>>2]|0)+284+53>>0]=0;if(!(c[c[h>>2]>>2]
x26;8192)){i=k;return}if(!(d[(c[g>>2]|0)+244+38>>0]|0)){i=k;return}a[(c[g>>2]|0)+284+53>>
;0]=0;i=k;return}function Kg(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;s=i;i=i+48|0;h=s+32|0;t=s+28|0
;j=s+24|0;k=s+20|0;l=s+16|0;m=s+38|0;n=s+36|0;o=s+12|0;q=s+8|0;p=s+4|0;r=s;c[h>>2]=f;c[t>>2]=g;b[m>>
;1]=c[(c[t>>2]|0)+4>>2];b[n>>1]=c[c[t>>2]>>2];if((e[n>>1]|0)>
x3e;>0<(e[(c[h>>2]|0)+72+8>>1]|0)>>>0?(e[m>>1]|0)>>>0<
;(e[(c[h>>2]|0)+108+8>>1]|0)>>>0:0){c[o>>2]=(c[(c[h>>2]|0)+72+12>>
;2]|0)+(e[n>>1]<<3);c[q>>2]=(c[(c[h>>2]|0)+108+12>>2]|0)+(e[m>>1]<
;<3);c[j>>2]=(c[c[o>>2]>>2]|0)-(c[c[q>>2]>>2]|0);c[k>>2]=(c[(c[
o>>2]|0)+4>>2]|0)-(c[(c[q>>2]|0)+4>>2]|0);if(d[(c[h>>2]|0)+368>>0]
x26;1|0){c[l>>2]=c[k>>2];c[k>>2]=c[j>>2];c[j>>2]=0-(c[l>>2]|0)}Rf(c[
h>>2]|0,c[j>>2]|0,c[k>>2]|0,(c[h>>2]|0)+284+6|0)|0;c[p>>2]=(c[(c[h>>
2]|0)+72+16>>2]|0)+(e[n>>1]<<3);c[r>>2]=(c[(c[h>>2]|0)+108+16>>2]|0)+(
e[m>>1]<<3);c[j>>2]=(c[c[p>>2]>>2]|0)-(c[c[r>>2]>>2]|0);c[
k>>2]=(c[(c[p>>2]|0)+4>>2]|0)-(c[(c[r>>2]|0)+4>>2]|0);if(d[(c[h>>2]|
0)+368>>0]&1|0){c[l>>2]=c[k>>2];c[k>>2]=c[j>>2];c[j>>2]=0-(c[l
x3e;>2]|0)}Rf(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,(c[h>>2]|0)+284+10|0)|0;vf(c[h>>
;2]|0);i=s;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=s;return}c[(c[h>>2]|0)+12>>2]=134;i=s
;return}function Lg(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=
b;c[g>>2]=0;c[g>>2]=c[c[f>>2]>>2]&1|0?35:0;if(c[c[f>>2]>>2]&
;2|0?d[(c[e>>2]|0)+244+37>>0]|0|0:0)c[g>>2]=c[g>>2]|128;if(c[c[f>>2]>>
;2]&4|0?d[(c[e>>2]|0)+244+38>>0]|0|0:0)c[g>>2]=c[g>>2]|256;if(!(c[c[f>>2]
x3e;>2]&32)){b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}if(!(d[(c[e>>2]|0)+604
>>0]|0)){b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}c[g>>2]=c[g>>2
]|4096;b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}function Mg(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;j=k+12|0;g=k+8|0;h=k+4|0;f=k;c[j>>2]=b;c[g>>2]=e;c[h>>2]=c[(c[j>>2]|
0)+416>>2];c[f>>2]=(c[h>>2]|0)+(c[(c[j>>2]|0)+408>>2]<<4);while(1){if
((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break;if((c[(c[h>>2]|0)+8>
;>2]|0)==(c[c[g>>2]>>2]|0))break;c[h>>2]=(c[h>>2]|0)+16}do if((c[h>>2]|0)==(
c[f>>2]|0)){e=c[j>>2]|0;if((c[(c[j>>2]|0)+408>>2]|0)>>>0<(c[(c[j>
;>2]|0)+412>>2]|0)>>>0){f=e+408|0;c[f>>2]=(c[f>>2]|0)+1;break}c[e+12>>
;2]=141;i=k;return}while(0);if(0<=(c[c[g>>2]>>2]|0)?(c[c[g>>2]>>2]|0)<=255:0){
c[(c[h>>2]|0)+8>>2]=c[c[g>>2]>>2]&255;c[(c[h>>2]|0)+4>>2]=(c[(c
[j>>2]|0)+360>>2]|0)+1;c[c[h>>2]>>2]=c[(c[j>>2]|0)+352>>2];a[(c[h>
;>2]|0)+12>>0]=1;if((c[c[g>>2]>>2]|0)>>>0>(c[(c[j>>2]|0)+424>
;>2]|0)>>>0)c[(c[j>>2]|0)+424>>2]=c[c[g>>2]>>2]&255;a:while(1){
if((Yf(c[j>>2]|0)|0)&255|0){e=17;break}switch(d[(c[j>>2]|0)+368>>0]|0|0){case 44:case 137:{e=
16;break a}case 45:{e=17;break a}default:{}}}if((e|0)==16){c[(c[j>>2]|0)+12>>2]=137;i=k;return}else if((e|0)==
17){i=k;return}}c[(c[j>>2]|0)+12>>2]=141;i=k;return}function Ng(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;g=d+8|0;f=d+4|0;h=d;c[j>>2]=a;c[e>>2]=b;c[j>>2]=c[j>>2];
c[g>>2]=c[(c[e>>2]|0)+8>>2];c[f>>2]=c[(c[e>>2]|0)+4>>2];c[h>>
;2]=c[c[e>>2]>>2];c[(c[e>>2]|0)+8>>2]=c[h>>2];c[(c[e>>2]|0)+4>
x3e;2]=c[g>>2];c[c[e>>2]>>2]=c[f>>2];i=d;return}function Og(a,b){a=a|0;b=b|0;var d=0,e=0
,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if((c[c[e>>2]>>2]|0)<0){i=f;return
}c[(c[d>>2]|0)+284+56>>2]=c[c[e>>2]>>2];i=f;return}function Pg(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;k=j+8|0;g=j+4|0;h=j;c[f>>2]=b;c[k>>2]=e;c[g>>2]=c[(c[k>
x3e;2]|0)+4>>2];c[h>>2]=c[c[k>>2]>>2];if((c[g>>2]|0)<1|(c[g>>2]|
0)>2){if(!(a[(c[f>>2]|0)+561>>0]|0)){i=j;return}c[(c[f>>2]|0)+12>>2]=134;i=j;return
}else{if(c[h>>2]|0)c[h>>2]=c[g>>2];a[(c[f>>2]|0)+284+52>>0]=d[(c[f>>
2]|0)+284+52>>0]&~(c[g>>2]&255)|c[h>>2]&255;i=j;return}}function Qg(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;p=i;i=i+32|0;k=p+24|0;q=p+20|0;o=p+28|0;h=p+16|0;j=p+12|0;m=p+8|0;l=p+4|0;n=p;c[k>
;>2]=f;c[q>>2]=g;b[o>>1]=c[c[q>>2]>>2];c[h>>2]=(c[(c[q>>2]|0)+4
>>2]|0)+1;if(((e[o>>1]|0)>>>0<(e[(c[k>>2]|0)+72+8>>1]|0)>>
x3e;0?(c[h>>2]|0)>>>0<((c[(c[k>>2]|0)+380>>2]|0)+1|0)>>>0:0)?(e
[(c[k>>2]|0)+284>>1]|0)>>>0<(e[(c[k>>2]|0)+36+8>>1]|0)>>
x3e;0:0){if(c[h>>2]|0)c[j>>2]=Ya[c[(c[k>>2]|0)+592>>2]&127](c[k>>2]|0,(c[
h>>2]|0)-1|0)|0;else c[j>>2]=0;q=(c[j>>2]|0)-(c[(c[k>>2]|0)+284+44>>2]|0)|0;do
if(((((c[j>>2]|0)-(c[(c[k>>2]|0)+284+44>>2]|0)|0)<0?0-q|0:q)|0)<(c[(c[k>>2]|0
)+284+40>>2]|0)){g=c[(c[k>>2]|0)+284+44>>2]|0;if((c[j>>2]|0)>=0){c[j>>2]=
g;break}else{c[j>>2]=0-g;break}}while(0);if(!(e[(c[k>>2]|0)+284+62>>1]|0)){q=c[(c[(c[k>>
2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)>>2]|0;q=q+(qg(c[j>>2]|
0,b[(c[k>>2]|0)+284+14>>1]|0)|0)|0;c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<
;<3)>>2]=q;q=c[(c[(c[k>>2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<
x3c;3)+4>>2]|0;q=q+(qg(c[j>>2]|0,b[(c[k>>2]|0)+284+14+2>>1]|0)|0)|0;c[(c[(c[k>>
;2]|0)+72+12>>2]|0)+(e[o>>1]<<3)+4>>2]=q;q=(c[(c[k>>2]|0)+72+16>>2]|
0)+(e[o>>1]<<3)|0;f=(c[(c[k>>2]|0)+36+16>>2]|0)+(e[o>>1]<<3)|0;c[q
x3e;>2]=c[f>>2];c[q+4>>2]=c[f+4>>2]}c[n>>2]=Oa[c[(c[k>>2]|0)+576>>
;2]&63](c[k>>2]|0,(c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<<3)>>
2]|0)-(c[(c[(c[k>>2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)>>2]|
0)|0,(c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<<3)+4>>2]|0)-(c[(c[(c[k>>
;2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)+4>>2]|0)|0)|0;c[l>>2]=
Oa[c[(c[k>>2]|0)+572>>2]&63](c[k>>2]|0,(c[(c[(c[k>>2]|0)+72+16>>2]|0)+(e[
o>>1]<<3)>>2]|0)-(c[(c[(c[k>>2]|0)+36+16>>2]|0)+(e[(c[k>>2]|0)+284
x3e;>1]<<3)>>2]|0)|0,(c[(c[(c[k>>2]|0)+72+16>>2]|0)+(e[o>>1]<<3
)+4>>2]|0)-(c[(c[(c[k>>2]|0)+36+16>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)+
4>>2]|0)|0)|0;if(a[(c[k>>2]|0)+284+32>>0]|0?(c[n>>2]^c[j>>2]|0)<0:0)c[j
x3e;>2]=0-(c[j>>2]|0);g=c[k>>2]|0;if(d[(c[k>>2]|0)+368>>0]&4|0){if((e[g+284+60
>>1]|0)==(e[(c[k>>2]|0)+284+62>>1]|0)?(q=(c[j>>2]|0)-(c[n>>2]|0)|0,((((c[j>
;>2]|0)-(c[n>>2]|0)|0)<0?0-q|0:q)|0)>=(c[(c[k>>2]|0)+284+36>>2]|0)):0)c[j>>
;2]=c[n>>2];c[m>>2]=Oa[c[(c[k>>2]|0)+568>>2]&63](c[k>>2]|0,c[j>>
;2]|0,c[(c[k>>2]|0)+244+20+((d[(c[k>>2]|0)+368>>0]&3)<<2)>>2]|0)|0}else c
[m>>2]=If(g,c[j>>2]|0,c[(c[k>>2]|0)+244+20+((d[(c[k>>2]|0)+368>>0]&3)<
;<2)>>2]|0)|0;do if(d[(c[k>>2]|0)+368>>0]&8|0){g=c[m>>2]|0;h=c[(c[k>>
;2]|0)+284+24>>2]|0;if((c[n>>2]|0)>=0){if((g|0)>=(h|0))break;c[m>>2]=c[(c[k>>2
]|0)+284+24>>2];break}else{if((g|0)<=(0-h|0))break;c[m>>2]=0-(c[(c[k>>2]|0)+284+24>>
;2]|0);break}}while(0);_a[c[(c[k>>2]|0)+584>>2]&15](c[k>>2]|0,(c[k>>2]|0)+72|0,b[o
x3e;>1]|0,(c[m>>2]|0)-(c[l>>2]|0)|0);b[(c[k>>2]|0)+284+2>>1]=b[(c[k>>2]|0
)+284>>1]|0;if(d[(c[k>>2]|0)+368>>0]&16|0)b[(c[k>>2]|0)+284>>1]=b[o>
x3e;1]|0;b[(c[k>>2]|0)+284+4>>1]=b[o>>1]|0;i=p;return}if(!(a[(c[k>>2]|0)+561>>
0]|0)){i=p;return}c[(c[k>>2]|0)+12>>2]=134;i=p;return}function Rg(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;s=i;i=i+48|0;o=s+36|0;t=s+32|0;r=s+40|0;q=s+28|0;p=s+24|0;j=s+20|0;l=s+16|0;k=s+12|0;m=s+8|0;h=s;c[o
x3e;>2]=f;c[t>>2]=g;b[r>>1]=c[c[t>>2]>>2];if((e[r>>1]|0)>>>
;0<(e[(c[o>>2]|0)+72+8>>1]|0)>>>0?(e[(c[o>>2]|0)+284>>1]|0)>>
;>0<(e[(c[o>>2]|0)+36+8>>1]|0)>>>0:0){do if((e[(c[o>>2]|0)+284+60>
x3e;1]|0)!=0?(e[(c[o>>2]|0)+284+62>>1]|0)!=0:0){c[k>>2]=(c[(c[o>>2]|0)+72+20>>
2]|0)+(e[r>>1]<<3);c[m>>2]=(c[(c[o>>2]|0)+36+20>>2]|0)+(e[(c[o>>2]|0
)+284>>1]<<3);if((c[(c[o>>2]|0)+216+4>>2]|0)==(c[(c[o>>2]|0)+216+8>>
2]|0)){c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o>>2]|0,(c[c[k>>2]>>
;2]|0)-(c[c[m>>2]>>2]|0)|0,(c[(c[k>>2]|0)+4>>2]|0)-(c[(c[m>>2]|0)+4>>
;2]|0)|0)|0;c[q>>2]=Mb(c[q>>2]|0,c[(c[o>>2]|0)+216+4>>2]|0)|0;break}else{c[h>>
2]=Mb((c[c[k>>2]>>2]|0)-(c[c[m>>2]>>2]|0)|0,c[(c[o>>2]|0)+216+4>>2]|
0)|0;c[h+4>>2]=Mb((c[(c[k>>2]|0)+4>>2]|0)-(c[(c[m>>2]|0)+4>>2]|0)|0,c[(c[o>
;>2]|0)+216+8>>2]|0)|0;c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o>>2]|
0,c[h>>2]|0,c[h+4>>2]|0)|0;break}}else n=7;while(0);if((n|0)==7){c[j>>2]=(c[(c[o>>2]|0)+
72+12>>2]|0)+(e[r>>1]<<3);c[l>>2]=(c[(c[o>>2]|0)+36+12>>2]|0)+(e[(c[
o>>2]|0)+284>>1]<<3);c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o
x3e;>2]|0,(c[c[j>>2]>>2]|0)-(c[c[l>>2]>>2]|0)|0,(c[(c[j>>2]|0)+4>>
;2]|0)-(c[(c[l>>2]|0)+4>>2]|0)|0)|0}t=(c[q>>2]|0)-(c[(c[o>>2]|0)+284+44>>2]|0)|
0;do if(((((c[q>>2]|0)-(c[(c[o>>2]|0)+284+44>>2]|0)|0)<0?0-t|0:t)|0)<(c[(c[o>>
2]|0)+284+40>>2]|0)){g=c[(c[o>>2]|0)+284+44>>2]|0;if((c[q>>2]|0)>=0){c[q>>
;2]=g;break}else{c[q>>2]=0-g;break}}while(0);g=c[o>>2]|0;if(d[(c[o>>2]|0)+368>>0]&4
|0)c[p>>2]=Oa[c[g+568>>2]&63](c[o>>2]|0,c[q>>2]|0,c[(c[o>>2]|0)+244+20+((
d[(c[o>>2]|0)+368>>0]&3)<<2)>>2]|0)|0;else c[p>>2]=If(g,c[q>>2]|
0,c[(c[o>>2]|0)+244+20+((d[(c[o>>2]|0)+368>>0]&3)<<2)>>2]|0)|0;do if(d[(c
[o>>2]|0)+368>>0]&8|0){g=c[p>>2]|0;f=c[(c[o>>2]|0)+284+24>>2]|0;if((c[q
x3e;>2]|0)>=0){if((g|0)>=(f|0))break;c[p>>2]=c[(c[o>>2]|0)+284+24>>2];break}else{if
((g|0)<=(0-f|0))break;c[p>>2]=0-(c[(c[o>>2]|0)+284+24>>2]|0);break}}while(0);c[q>>2
]=Oa[c[(c[o>>2]|0)+572>>2]&63](c[o>>2]|0,(c[(c[(c[o>>2]|0)+72+16>>2]|0)+(
e[r>>1]<<3)>>2]|0)-(c[(c[(c[o>>2]|0)+36+16>>2]|0)+(e[(c[o>>2]|0)+284
>>1]<<3)>>2]|0)|0,(c[(c[(c[o>>2]|0)+72+16>>2]|0)+(e[r>>1]<<
;3)+4>>2]|0)-(c[(c[(c[o>>2]|0)+36+16>>2]|0)+(e[(c[o>>2]|0)+284>>1]<<
3)+4>>2]|0)|0)|0;_a[c[(c[o>>2]|0)+584>>2]&15](c[o>>2]|0,(c[o>>2]|0)+72|0,
b[r>>1]|0,(c[p>>2]|0)-(c[q>>2]|0)|0);b[(c[o>>2]|0)+284+2>>1]=b[(c[o>>
;2]|0)+284>>1]|0;b[(c[o>>2]|0)+284+4>>1]=b[r>>1]|0;if(!(d[(c[o>>2]|0)+368>
;>0]&16)){i=s;return}b[(c[o>>2]|0)+284>>1]=b[r>>1]|0;i=s;return}if(!(a[(c[o>>2
]|0)+561>>0]|0)){i=s;return}c[(c[o>>2]|0)+12>>2]=134;i=s;return}function Sg(f,g){f=f|0;g=g|0;var h
=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+4|0;j=m;l=m+10|0;k=m+8|0;c[h>>2]=f;c[j>>2]=g;b[l>>1]=(d[(c[h
x3e;>2]|0)+368>>0]|0)-184+1;g=c[h>>2]|0;if((e[l>>1]|0)>>>0>=((c[(c[h>
;>2]|0)+20>>2]|0)+1-(c[(c[h>>2]|0)+16>>2]|0)|0)>>>0){c[g+12>>2]=130;
i=m;return}f=g+360|0;c[f>>2]=(c[f>>2]|0)+1;b[k>>1]=0;while(1){g=c[h>>2]|0;if((e[k>
x3e;1]|0|0)>=(e[l>>1]|0|0))break;f=(xg(g)|0)<<16>>16;c[(c[j>>2]|0)+((e[k>>
;1]|0)<<2)>>2]=f;b[k>>1]=(b[k>>1]|0)+1<<16>>16}a[g+376>>0]=
0;i=m;return}function Tg(a,f){a=a|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+4|0;h=l;k=l+10|0;j=l+8|0;c[g>>2]=a;
c[h>>2]=f;b[k>>1]=(d[(c[g>>2]|0)+368>>0]|0)-176+1;if((e[k>>1]|0)>>
x3e;0>=((c[(c[g>>2]|0)+20>>2]|0)+1-(c[(c[g>>2]|0)+16>>2]|0)|0)>>>0){
c[(c[g>>2]|0)+12>>2]=130;i=l;return}b[j>>1]=1;while(1){if((e[j>>1]|0|0)>(e[k>
x3e;1]|0|0))break;c[(c[h>>2]|0)+((e[j>>1]|0)-1<<2)>>2]=d[(c[(c[g>>2]|0)+356>
;>2]|0)+((c[(c[g>>2]|0)+360>>2]|0)+(e[j>>1]|0))>>0];b[j>>1]=(b[j>>
;1]|0)+1<<16>>16}i=l;return}function Ug(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;e=m+24|0;f
=m+20|0;j=m+16|0;h=m+12|0;g=m+8|0;k=m+4|0;l=m;c[f>>2]=d;c[j>>2]=c[c[f>>2]>>2];if(a[(c[f
x3e;>2]|0)+292>>0]|0)c[h>>2]=c[(c[f>>2]|0)+296>>2];else c[h>>2]=c[(c[(c[j
>>2]|0)+96>>2]|0)+40>>2];if(!(c[h>>2]|0)){c[e>>2]=153;l=c[e>>2]|0;i=
m;return l|0}Vg(c[h>>2]|0,c[j>>2]|0,c[f>>2]|0)|0;c[(c[h>>2]|0)+428>>2]=0;c[(c[
h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+476>>2]=64;c[(c[h>>2]|0)+480>>2]=0;c
[(c[h>>2]|0)+484>>2]=0;a[(c[h>>2]|0)+488>>0]=0;c[(c[h>>2]|0)+564>>2]=
65536;c[k>>2]=(c[h>>2]|0)+216;c[l>>2]=(c[h>>2]|0)+244;b[c[k>>2]>>1]=
0;b[(c[k>>2]|0)+2>>1]=0;c[(c[k>>2]|0)+4>>2]=0;c[(c[k>>2]|0)+8>>2]=0;
b[(c[l>>2]|0)+8>>1]=0;c[(c[l>>2]|0)+16>>2]=0;c[(c[l>>2]|0)+12>>2]=65536
;Xg(c[h>>2]|0,1,c[(c[j>>2]|0)+656>>2]|0,c[(c[j>>2]|0)+652>>2]|0)|0;Yg(c[h>
;>2]|0,2)|0;Yg(c[h>>2]|0,3)|0;if((c[(c[j>>2]|0)+652>>2]|0)>>>0>0){c[g>
;>2]=Zg(c[h>>2]|0,1,0)|0;if(!(c[g>>2]|0))c[g>>2]=Ta[c[(c[j>>2]|0)+688>>2]
x26;63](c[h>>2]|0)|0}else c[g>>2]=0;if(!(c[g>>2]|0))_g(c[h>>2]|0,c[f>>2]|0)|0;
c[e>>2]=c[g>>2];l=c[e>>2]|0;i=m;return l|0}function Vg(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;p=i;i=i+32|0;h=p+28|0;j=p+24|0;q=p+20|0;k=p+16|0;m=p+12|0;o=p+8|0;n=p+4|0;l=p;c[j>>2]=d;c[q>
;>2]=f;c[k>>2]=g;c[c[j>>2]>>2]=c[q>>2];c[n>>2]=(c[q>>2]|0)+260;
c[(c[j>>2]|0)+4>>2]=c[k>>2];if(c[k>>2]|0){c[(c[j>>2]|0)+396>>2]=c[(c
[k>>2]|0)+116>>2];c[(c[j>>2]|0)+400>>2]=c[(c[k>>2]|0)+120>>2];c[(c[j
>>2]|0)+408>>2]=c[(c[k>>2]|0)+128>>2];c[(c[j>>2]|0)+412>>2]=c[(c[k
x3e;>2]|0)+132>>2];c[(c[j>>2]|0)+404>>2]=c[(c[k>>2]|0)+124>>2];c[(c[j>
;>2]|0)+416>>2]=c[(c[k>>2]|0)+136>>2];d=(c[j>>2]|0)+244|0;f=(c[k>>2]|0)+72
|0;g=d+40|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));q=(c[j>>2]|0)+216|0;g=(c[k
x3e;>2]|0)+44|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[q+8>>2]=c[g+8>
x3e;2];c[q+12>>2]=c[g+12>>2];c[q+16>>2]=c[g+16>>2];c[q+20>>2]=c[g+20>>
;2];c[q+24>>2]=c[g+24>>2];c[(c[j>>2]|0)+420>>2]=c[(c[k>>2]|0)+140>>2
];c[(c[j>>2]|0)+424>>2]=c[(c[k>>2]|0)+144>>2];c[m>>2]=0;while(1){if((c[m>
x3e;2]|0)>=3)break;q=(c[j>>2]|0)+444+(c[m>>2]<<3)|0;g=(c[k>>2]|0)+148+(c[m>>
;2]<<3)|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[m>>2]=(c[m>>
;2]|0)+1}d=(c[j>>2]|0)+284|0;f=(c[k>>2]|0)+172|0;g=d+68|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f
+4|0}while((d|0)<(g|0));c[(c[j>>2]|0)+380>>2]=c[(c[k>>2]|0)+240>>2];c[(c[j>>
;2]|0)+384>>2]=c[(c[k>>2]|0)+244>>2];b[(c[j>>2]|0)+468>>1]=b[(c[k>>2
]|0)+248>>1]|0;c[(c[j>>2]|0)+472>>2]=c[(c[k>>2]|0)+252>>2];d=(c[j>>2
]|0)+180|0;f=(c[k>>2]|0)+256|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));
d=(c[j>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+72|0;f=(c[j
>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>
;2]|0)+108|0;f=(c[j>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0))}
c[o>>2]=c[(c[j>>2]|0)+20>>2];c[l>>2]=Wg(c[(c[j>>2]|0)+8>>2]|0,o,4,(c
[j>>2]|0)+24|0,(e[(c[n>>2]|0)+24>>1]|0)+32|0)|0;c[(c[j>>2]|0)+20>>2]=c[o>
x3e;2];if(c[l>>2]|0){c[h>>2]=c[l>>2];q=c[h>>2]|0;i=p;return q|0}c[o>>2]=c[(c[j
>>2]|0)+388>>2];c[l>>2]=Wg(c[(c[j>>2]|0)+8>>2]|0,o,1,(c[j>>2]|0)+392
|0,e[(c[n>>2]|0)+26>>1]|0)|0;c[(c[j>>2]|0)+388>>2]=c[o>>2]&65535;if(c[l
x3e;>2]|0){c[h>>2]=c[l>>2];q=c[h>>2]|0;i=p;return q|0}else{b[(c[j>>2]|0)+144+8>
;>1]=0;b[(c[j>>2]|0)+144+10>>1]=0;d=(c[j>>2]|0)+72|0;f=(c[j>>2]|0)+144|0;g=d+36|0;do
{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+108|0;f=(c[j>>2]|
0)+144|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+36|0;f=(
c[j>>2]|0)+144|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));a[(c[j>
x3e;2]|0)+488>>0]=0;c[h>>2]=0;q=c[h>>2]|0;i=p;return q|0}return 0}function Wg(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;o=i;i=i+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;p=o+12|0;l=o+8|0;m
=o+4|0;n=o;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[p>>2]=e;c[l>>2]=f;c[n>>2]=
c[p>>2];do if((c[c[j>>2]>>2]|0)>>>0<(c[l>>2]|0)>>>0){
b=_(c[c[j>>2]>>2]|0,c[k>>2]|0)|0;p=_(c[l>>2]|0,c[k>>2]|0)|0;p=hc(c[h>>
;2]|0,1,b,p,c[c[n>>2]>>2]|0,m)|0;c[c[n>>2]>>2]=p;if(!(c[m>>2]|0)){c[c[j>
x3e;2]>>2]=c[l>>2];break}c[g>>2]=c[m>>2];p=c[g>>2]|0;i=o;return p|0}while(0);c
[g>>2]=0;p=c[g>>2]|0;i=o;return p|0}function Xg(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;g=f+8|0;k=f+4|0;j=f;c[h>>2]=a;c[g>>2]=b;c[k>>2]=d;c[j>>2]=e;c[(c[h>
;>2]|0)+444+((c[g>>2]|0)-1<<3)>>2]=c[k>>2];c[(c[h>>2]|0)+444+((c[g>
x3e;2]|0)-1<<3)+4>>2]=c[j>>2];i=f;return 0}function Yg(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)+444+((c[e>>2]|0)-1<<3)>
x3e;2]=0;c[(c[f>>2]|0)+444+((c[e>>2]|0)-1<<3)+4>>2]=0;i=d;return 0}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;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>
;>2]=d;c[j>>2]=(c[f>>2]|0)+444+((c[g>>2]|0)-1<<3);c[(c[f>>2]|0)+356>
x3e;2]=c[c[j>>2]>>2];c[(c[f>>2]|0)+364>>2]=c[(c[j>>2]|0)+4>>2];c[(c[
f>>2]|0)+360>>2]=c[h>>2];c[(c[f>>2]|0)+352>>2]=c[g>>2];i=e;return 0}
function _g(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[(c[e
>>2]|0)+116>>2]=c[(c[d>>2]|0)+396>>2];c[(c[e>>2]|0)+128>>2]=c[(c[d
x3e;>2]|0)+408>>2];c[(c[e>>2]|0)+140>>2]=c[(c[d>>2]|0)+420>>2];c[(c[e>
;>2]|0)+144>>2]=c[(c[d>>2]|0)+424>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)
x3e;=3)break;b=(c[e>>2]|0)+148+(c[f>>2]<<3)|0;a=(c[d>>2]|0)+444+(c[f>>2]<
x3c;3)|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[f>>2]=(c[f>>2]|0)+1}i
=g;return 0}function $g(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;f=k+16|0;g=k+12|0;d=k+8|0;j=k+4|0;h=k;c[g>>
;2]=b;c[d>>2]=c[c[g>>2]>>2];if(a[(c[g>>2]|0)+292>>0]|0)c[j>>2]=c[(c[
g>>2]|0)+296>>2];else c[j>>2]=c[(c[(c[d>>2]|0)+96>>2]|0)+40>>2];if(!(
c[j>>2]|0)){c[f>>2]=153;j=c[f>>2]|0;i=k;return j|0}Vg(c[j>>2]|0,c[d>>2]|0,c[g
x3e;>2]|0)|0;c[(c[j>>2]|0)+428>>2]=0;c[(c[j>>2]|0)+16>>2]=0;a[(c[j>>2]|0)+
488>>0]=0;Xg(c[j>>2]|0,2,c[(c[d>>2]|0)+664>>2]|0,c[(c[d>>2]|0)+660>>
2]|0)|0;Yg(c[j>>2]|0,3)|0;if((c[(c[d>>2]|0)+660>>2]|0)>>>0>0){c[h>>2
]=Zg(c[j>>2]|0,2,0)|0;if((c[h>>2]|0)==0?(a[(c[g>>2]|0)+292>>0]|0)==0:0)c[h>>2]=
Ta[c[(c[d>>2]|0)+688>>2]&63](c[j>>2]|0)|0}else c[h>>2]=0;d=(c[g>>2]|0)+172
|0;b=(c[j>>2]|0)+284|0;e=d+68|0;do{c[d>>2]=c[b>>2];d=d+4|0;b=b+4|0}while((d|0)<(e|0));_g(c[j
x3e;>2]|0,c[g>>2]|0)|0;c[f>>2]=c[h>>2];j=c[f>>2]|0;i=k;return j|0}function ah(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,P=0,Q=0,R=0;R=i;i=i+192|0;l=R+180|0;m=R+176|0;n=R+172|0;o=R+186|0;q=R+168|0;P=R+164|0;Q=R+160|0;G=R+
156|0;r=R+152|0;s=R+148|0;J=R+185|0;p=R+144|0;w=R+104|0;t=R+96|0;u=R+184|0;z=R+92|0;M=R+88|0;L=R+84|0;x=R+80|0;v=R+76|0;y=R+72|0
;N=R+68|0;A=R+64|0;B=R+60|0;C=R+56|0;O=R+52|0;E=R+48|0;F=R+44|0;D=R+40|0;I=R+36|0;H=R+32|0;K=R;c[l>>2]=f;c[m>>
;2]=g;c[n>>2]=h;a[o>>0]=j;c[q>>2]=0;c[r>>2]=c[c[l>>2]>>2];c[s>
x3e;2]=c[(c[l>>2]|0)+12>>2];a[J>>0]=0;c[p>>2]=0;a[u>>0]=0;if((c[n>>2
]|0)>>>0>1?(c[n>>2]|0)>>>0>(e[(c[r>>2]|0)+260+30>>1]|0)>
;>>0:0)c[q>>2]=21;else k=4;a:do if((k|0)==4){if((c[m>>2]|0)>>>0>=(c[(c[r>
x3e;2]|0)+16>>2]|0)>>>0){c[q>>2]=16;break}c[(c[l>>2]|0)+20>>2]=c[m>
x3e;2];if(!(c[(c[l>>2]|0)+16>>2]&1)){c[P>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+44
+4>>2];c[Q>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+44+8>>2]}else{c[P>>2]=65536
;c[Q>>2]=65536}bh(c[l>>2]|0,c[m>>2]|0);g=c[r>>2]|0;if(c[(c[(c[r>>2]|0)+128>
;>2]|0)+52>>2]|0){c[q>>2]=Oa[c[c[c[(c[g+128>>2]|0)+52>>2]>>2]>>
2]&63](c[(c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,c[m>>2]|0,t)|0;if
(c[q>>2]|0)break;a[u>>0]=1;c[G>>2]=0;c[(c[l>>2]|0)+28>>2]=c[t+4>>2];
g=w;j=g+40|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(j|0));uc(w,c[t>>2]|0,c[t+4>>2]|0);c[(c[l>
x3e;2]|0)+24>>2]=w}else c[G>>2]=Ge(g,c[m>>2]|0,(c[l>>2]|0)+28|0)|0;if((c[(c[l>>
;2]|0)+28>>2]|0)>0){if((c[(c[l>>2]|0)+84>>2]|0)==0?(c[(c[(c[r>>2]|0)+128>>
;2]|0)+52>>2]|0)==0:0){c[q>>2]=8;break}c[q>>2]=Wa[c[(c[r>>2]|0)+512>>2]&31
](c[l>>2]|0,c[m>>2]|0,(c[(c[l>>2]|0)+84>>2]|0)+(c[G>>2]|0)|0,c[(c[l>>
;2]|0)+28>>2]|0)|0;if(c[q>>2]|0)break;a[J>>0]=1;c[q>>2]=Ta[c[(c[r>>2]|0)+520
x3e;>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;if(d[o>>0]|0)break}if(c[(c[l>>2]|0
)+28>>2]|0?b[(c[l>>2]|0)+32>>1]|0:0){c[(c[l>>2]|0)+68>>2]=(c[(c[l>>2
]|0)+36>>2]|0)-(c[(c[l>>2]|0)+52>>2]|0);c[(c[l>>2]|0)+68+4>>2]=0;c[(c[l>
x3e;2]|0)+76>>2]=(c[(c[l>>2]|0)+68>>2]|0)+(c[(c[l>>2]|0)+56>>2]|0);c[(c[l>
;>2]|0)+76+4>>2]=0;c[(c[l>>2]|0)+184>>2]=0;c[(c[l>>2]|0)+184+4>>2]=(c[(c[
l>>2]|0)+176>>2]|0)+(c[(c[l>>2]|0)+36+12>>2]|0);c[(c[l>>2]|0)+192>>2
]=0;c[(c[l>>2]|0)+192+4>>2]=(c[(c[l>>2]|0)+184+4>>2]|0)-(c[(c[l>>2]|0)+180>
;>2]|0);eh(c[l>>2]|0,c[m>>2]|0);if((b[(c[l>>2]|0)+32>>1]|0)>0){c[q>>
2]=Ta[c[(c[r>>2]|0)+524>>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;Va[c[(c[r>>
;2]|0)+516>>2]&63](c[l>>2]|0);a[J>>0]=0;c[q>>2]=gh(c[l>>2]|0)|0;if(c[q>
;>2]|0)break;oc(c[s>>2]|0);break}if((b[(c[l>>2]|0)+32>>1]|0)!=-1){c[q>>2]=20;break}
c[M>>2]=b[(c[s>>2]|0)+20+2>>1];c[L>>2]=b[(c[s>>2]|0)+20>>1];c[q>
;>2]=Ta[c[(c[r>>2]|0)+528>>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;c[x>>
;2]=c[(c[l>>2]|0)+168>>2];Va[c[(c[r>>2]|0)+516>>2]&63](c[l>>2]|0);a[J>
;>0]=0;if(a[(c[r>>2]|0)+708>>0]|0){c[A>>2]=c[(c[r>>2]|0)+100>>2];G=fh(c[r
>>2]|0,c[m>>2]|0,p,(c[(c[s>>2]|0)+56+28>>2]|0)+4|0)|0;c[q>>2]=G;if(G|0)break;c
[N>>2]=(c[(c[s>>2]|0)+56+32>>2]|0)+(c[(c[s>>2]|0)+20+28>>2]<<5);c[y
x3e;>2]=c[(c[s>>2]|0)+56+28>>2];c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[y>
x3e;2]|0))break;if(e[(c[N>>2]|0)+4>>1]&2|0){G=(c[N>>2]|0)+8|0;c[G>>2]=(c[G>>
;2]|0)+((c[(c[p>>2]|0)+(c[v>>2]<<3)>>2]&65535)<<16>>16);G=(c[N
x3e;>2]|0)+12|0;c[G>>2]=(c[G>>2]|0)+((c[(c[p>>2]|0)+(c[v>>2]<<3)+4>
x3e;2]&65535)<<16>>16)}c[v>>2]=(c[v>>2]|0)+1;c[N>>2]=(c[N>>2]|0
)+32}N=(c[l>>2]|0)+68|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+0<
;<3)>>2]|0);N=(c[l>>2]|0)+68+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v
>>2]|0)+0<<3)+4>>2]|0);N=(c[l>>2]|0)+76|0;c[N>>2]=(c[N>>2]|0)+(c[(c[
p>>2]|0)+((c[v>>2]|0)+1<<3)>>2]|0);N=(c[l>>2]|0)+76+4|0;c[N>>2]=(c[N
>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+1<<3)+4>>2]|0);N=(c[l>>2]|0)+184
|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+2<<3)>>2]|0);N=(c
[l>>2]|0)+184+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+2<<
;3)+4>>2]|0);N=(c[l>>2]|0)+192|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>
;>2]|0)+3<<3)>>2]|0);N=(c[l>>2]|0)+192+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>
;>2]|0)+((c[v>>2]|0)+3<<3)+4>>2]|0);Fb(c[A>>2]|0,c[p>>2]|0);c[p>>
;2]=0}if(!(c[(c[l>>2]|0)+16>>2]&1)){N=Mb(c[(c[l>>2]|0)+68>>2]|0,c[P>>2]|0
)|0;c[(c[l>>2]|0)+68>>2]=N;P=Mb(c[(c[l>>2]|0)+76>>2]|0,c[P>>2]|0)|0;c[(c[l>
;>2]|0)+76>>2]=P;P=Mb(c[(c[l>>2]|0)+184+4>>2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0
)+184+4>>2]=P;Q=Mb(c[(c[l>>2]|0)+192+4>>2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0)+192+4
x3e;>2]=Q}if(c[(c[l>>2]|0)+16>>2]&1024|0){oc(c[s>>2]|0);c[(c[(c[l>>2]|0)+8>
;>2]|0)+72>>2]=1668246896;break}c[O>>2]=0;c[E>>2]=c[M>>2];c[F>>2]=c[(c[s
x3e;>2]|0)+56+28>>2];c[D>>2]=c[(c[s>>2]|0)+20+28>>2];c[I>>2]=c[(c[l>
x3e;2]|0)+24>>2];c[H>>2]=c[(c[l>>2]|0)+28>>2];oc(c[s>>2]|0);c[B>>2]=
0;while(1){if((c[B>>2]|0)>>>0>=(c[F>>2]|0)>>>0)break;c[O>>2]=(c
[(c[s>>2]|0)+20+32>>2]|0)+(c[D>>2]<<5)+(c[B>>2]<<5);Q=(c[l>>
;2]|0)+68|0;c[K>>2]=c[Q>>2];c[K+4>>2]=c[Q+4>>2];Q=K+8|0;P=(c[l>>2]|0)+76|0;c[Q
>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=K+16|0;P=(c[l>>2]|0)+184|0;c[Q>>2
]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=K+24|0;P=(c[l>>2]|0)+192|0;c[Q>>2]=c[P>
x3e;2];c[Q+4>>2]=c[P+4>>2];c[C>>2]=b[(c[s>>2]|0)+20+2>>1];c[q>>2]=ah
(c[l>>2]|0,c[c[O>>2]>>2]|0,(c[n>>2]|0)+1|0,0)|0;if(c[q>>2]|0)break a;c[O>
x3e;2]=(c[(c[s>>2]|0)+20+32>>2]|0)+(c[D>>2]<<5)+(c[B>>2]<<5);if(!(e[(
c[O>>2]|0)+4>>1]&512)){Q=(c[l>>2]|0)+68|0;c[Q>>2]=c[K>>2];c[Q+4>>
;2]=c[K+4>>2];Q=(c[l>>2]|0)+76|0;P=K+8|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>
x3e;2];Q=(c[l>>2]|0)+184|0;P=K+16|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=(c[l
>>2]|0)+192|0;P=K+24|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2]}c[E>>2]=b
[(c[s>>2]|0)+20+2>>1];if((c[E>>2]|0)!=(c[C>>2]|0))lh(c[l>>2]|0,c[O>>
2]|0,c[M>>2]|0,c[C>>2]|0)|0;c[B>>2]=(c[B>>2]|0)+1}c[(c[l>>2]|0)+24>>
2]=c[I>>2];c[(c[l>>2]|0)+28>>2]=c[H>>2];c[(c[l>>2]|0)+168>>2]=c[x>
;>2];if(c[(c[l>>2]|0)+16>>2]&2|0)break;if(!(e[(c[O>>2]|0)+4>>1]&256))break
;if((c[E>>2]|0)>>>0<=(c[M>>2]|0)>>>0)break;mh(c[l>>2]|0,c[M>
;>2]|0,c[L>>2]|0)|0;break}c[(c[l>>2]|0)+36>>2]=0;c[(c[l>>2]|0)+36+8>>2]=0
;c[(c[l>>2]|0)+36+4>>2]=0;c[(c[l>>2]|0)+36+12>>2]=0;if(!(a[o>>0]|0)){c[(c[l>
;>2]|0)+68>>2]=(c[(c[l>>2]|0)+36>>2]|0)-(c[(c[l>>2]|0)+52>>2]|0);c[(c[l
x3e;>2]|0)+68+4>>2]=0;c[(c[l>>2]|0)+76>>2]=(c[(c[l>>2]|0)+68>>2]|0)+(c[(c
[l>>2]|0)+56>>2]|0);c[(c[l>>2]|0)+76+4>>2]=0;c[(c[l>>2]|0)+184>>2]=0
;c[(c[l>>2]|0)+184+4>>2]=(c[(c[l>>2]|0)+176>>2]|0)+(c[(c[l>>2]|0)+36+12>
x3e;2]|0);c[(c[l>>2]|0)+192>>2]=0;c[(c[l>>2]|0)+192+4>>2]=(c[(c[l>>2]|0)+184+4
>>2]|0)-(c[(c[l>>2]|0)+180>>2]|0);eh(c[l>>2]|0,c[m>>2]|0);if(a[(c[c[l>>
;2]>>2]|0)+708>>0]|0){c[z>>2]=c[(c[c[l>>2]>>2]|0)+100>>2];c[q>
x3e;2]=fh(c[c[l>>2]>>2]|0,c[m>>2]|0,p,4)|0;if(c[q>>2]|0)break;O=(c[l>>2]|0)+68
|0;c[O>>2]=(c[O>>2]|0)+(c[c[p>>2]>>2]|0);O=(c[l>>2]|0)+68+4|0;c[O>>2
]=(c[O>>2]|0)+(c[(c[p>>2]|0)+4>>2]|0);O=(c[l>>2]|0)+76|0;c[O>>2]=(c[O>>
;2]|0)+(c[(c[p>>2]|0)+8>>2]|0);O=(c[l>>2]|0)+76+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[
p>>2]|0)+8+4>>2]|0);O=(c[l>>2]|0)+184|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>
;2]|0)+16>>2]|0);O=(c[l>>2]|0)+184+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+16+4
>>2]|0);O=(c[l>>2]|0)+192|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+24>>2
]|0);O=(c[l>>2]|0)+192+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+24+4>>2]|0);Fb(c
[z>>2]|0,c[p>>2]|0);c[p>>2]=0}if(!(c[(c[l>>2]|0)+16>>2]&1)){O=Mb(c[(c[l
x3e;>2]|0)+68>>2]|0,c[P>>2]|0)|0;c[(c[l>>2]|0)+68>>2]=O;P=Mb(c[(c[l>>2]|0
)+76>>2]|0,c[P>>2]|0)|0;c[(c[l>>2]|0)+76>>2]=P;P=Mb(c[(c[l>>2]|0)+184+4>
x3e;2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0)+184+4>>2]=P;Q=Mb(c[(c[l>>2]|0)+192+4>>2]|0
,c[Q>>2]|0)|0;c[(c[l>>2]|0)+192+4>>2]=Q}c[q>>2]=0}}while(0);if(a[J>>0]|0)Va[c[(
c[r>>2]|0)+516>>2]&63](c[l>>2]|0);if(!(a[u>>0]|0)){Q=c[q>>2]|0;i=R;return
Q|0}Ra[c[(c[c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]>>2]|0)+4>>2]&7](c[(c[(c[(
c[r>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,t);Q=c[q>>2]|0;i=R;return Q|0}function
bh(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;j=i;i=i+32|0;g=j+8|0;n=j+4|0;o=j;m=j+18|0;l=j+16|0;h=j+14|0;k=j+12|0;c[
g>>2]=d;c[n>>2]=f;c[o>>2]=c[c[g>>2]>>2];b[m>>1]=0;b[l>>1]=
0;b[h>>1]=0;b[k>>1]=0;ch(c[o>>2]|0,c[n>>2]|0,((c[(c[g>>2]|0)+16>>2]
x26;512|0)!=0^1)&1,m,h);dh(c[o>>2]|0,c[n>>2]|0,((c[(c[g>>2]|0)+16>>2]&512|0)!=
0^1)&1,l,k);c[(c[g>>2]|0)+52>>2]=b[m>>1];c[(c[g>>2]|0)+56>>2]=e[h>
x3e;1];c[(c[g>>2]|0)+176>>2]=b[l>>1];c[(c[g>>2]|0)+180>>2]=e[k>>1];if
(a[(c[g>>2]|0)+64>>0]|0){i=j;return}a[(c[g>>2]|0)+64>>0]=1;c[(c[g>>2]|0)+60>
;>2]=e[h>>1];i=j;return}function ch(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;m=i;i=i+
32|0;k=m+12|0;p=m+8|0;n=m+16|0;o=m+4|0;l=m;c[k>>2]=e;c[p>>2]=f;a[n>>0]=g;c[o>>2]=h;c[l
x3e;>2]=j;Za[c[(c[(c[k>>2]|0)+532>>2]|0)+156>>2]&31](c[k>>2]|0,0,c[p>>
;2]|0,c[o>>2]|0,c[l>>2]|0)|0;if(!(d[n>>0]|0)){i=m;return}if(!(c[(c[k>>2]|0)+468+12>
x3e;2]|0)){i=m;return}b[c[l>>2]>>1]=b[(c[k>>2]|0)+216+10>>1]|0;i=m;return}function dh(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;n=i;i=i+32|0;j=n+12|0;k=n+8|0;o=n+16|0;l=n+4|0;m=n;c[j>
x3e;2]=d;c[k>>2]=e;a[o>>0]=f;c[l>>2]=g;c[m>>2]=h;a[o>>0]=a[o>>0]|0;if
(a[(c[j>>2]|0)+296>>0]|0){Za[c[(c[(c[j>>2]|0)+532>>2]|0)+156>>2]&31](c[j
x3e;>2]|0,1,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;i=n;return}else{b[c[l>>2]>>1
]=0;b[c[m>>2]>>1]=b[(c[j>>2]|0)+68>>1]|0;i=n;return}}function eh(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;q=i;i=i+48|0;g=q+32|0;h=q+28|0;m=q+24|0;n=q+42|0;p=q+40|0;k=q+38|0;j=q+36|0;o=q+8|0;l=q;c[
g>>2]=d;c[h>>2]=f;c[m>>2]=c[c[g>>2]>>2];b[n>>1]=0;b[p>>1]=
0;b[k>>1]=0;b[j>>1]=0;if(!(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)){i=q;return}if
(!(c[(c[c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]>>2]|0)+8>>2]|0)){i=q;return}c[o>
;>2]=c[(c[g>>2]|0)+52>>2];c[o+4>>2]=0;c[o+8>>2]=c[(c[g>>2]|0)+56>>
;2];c[o+12>>2]=0;c[l>>2]=Wa[c[(c[c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]>>
;2]|0)+8>>2]&31](c[(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,c[h>
;>2]|0,0,o)|0;if(c[l>>2]|0){i=q;return}b[n>>1]=c[o>>2];b[k>>1]=c[o+8>>2];
c[(c[g>>2]|0)+52>>2]=b[n>>1];c[(c[g>>2]|0)+56>>2]=e[k>>1];c[(c[g>
;>2]|0)+176>>2]=b[p>>1];c[(c[g>>2]|0)+180>>2]=e[j>>1];if(a[(c[g>>
;2]|0)+64>>0]|0){i=q;return}a[(c[g>>2]|0)+64>>0]=1;c[(c[g>>2]|0)+60>>2]=e[k>
;>1];i=q;return}function fh(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,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;M=i;i=i+128|0;j=M+112|0;N=M+108|0;k=M+104|0;l=M+100|0;m=M+96|0
;G=M+92|0;A=M+88|0;o=M+84|0;p=M+80|0;s=M+76|0;t=M+72|0;H=M+68|0;B=M+64|0;u=M+60|0;v=M+56|0;y=M+52|0;K=M+48|0;x=M+44|0;w=M+40|0;C
=M+36|0;F=M+32|0;E=M+28|0;z=M+24|0;D=M+20|0;q=M+16|0;r=M+12|0;I=M+8|0;J=M+4|0;n=M;c[N>>2]=d;c[k>>2]=f;c[l>
;>2]=g;c[m>>2]=h;c[G>>2]=c[(c[N>>2]|0)+104>>2];c[A>>2]=c[(c[G>>
2]|0)+28>>2];c[o>>2]=c[(c[N>>2]|0)+712>>2];c[K>>2]=0;c[x>>2]=0;c[w
x3e;>2]=0;c[F>>2]=0;c[E>>2]=0;c[z>>2]=0;if((c[o>>2]|0)==0?1:(a[(c[N>>2]|0
)+708>>0]|0)==0){c[j>>2]=6;N=c[j>>2]|0;i=M;return N|0}c[p>>2]=hc(c[A>>2]|0,8,0
,c[m>>2]|0,0,s)|0;do if(!(c[s>>2]|0)){c[c[l>>2]>>2]=c[p>>2];if((c[k>>
;2]|0)>>>0<(c[(c[o>>2]|0)+32>>2]|0)>>>0?(c[(c[(c[o>>2]|0)+36>
;>2]|0)+(c[k>>2]<<2)>>2]|0)!=(c[(c[(c[o>>2]|0)+36>>2]|0)+((c[k>>
;2]|0)+1<<2)>>2]|0):0){N=Kc(c[G>>2]|0,c[(c[(c[o>>2]|0)+36>>2]|0)+(c[k>>
;2]<<2)>>2]|0)|0;c[s>>2]=N;if((N|0)==0?(N=ee(c[G>>2]|0,(c[(c[(c[o>>2]|0)+36>
;>2]|0)+((c[k>>2]|0)+1<<2)>>2]|0)-(c[(c[(c[o>>2]|0)+36>>2]|0)+(c[k>
x3e;2]<<2)>>2]|0)|0)|0,c[s>>2]=N,(N|0)==0):0){c[t>>2]=(c[(c[G>>2]|0)+32>
x3e;2]|0)-(c[c[G>>2]>>2]|0);c[K>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0
,0,s)|0;if(((c[s>>2]|0)==0?(c[x>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0,0,s)|0,(c
[s>>2]|0)==0):0)?(c[w>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0,0,s)|0,(c[s>
x3e;2]|0)==0):0){c[H>>2]=(ie(c[G>>2]|0)|0)&65535;N=c[t>>2]|0;c[B>>2]=N+((ie(c[G>
;>2]|0)|0)&65535);if(c[H>>2]&32768|0){c[u>>2]=(c[(c[G>>2]|0)+32>>2]|0)-(c
[c[G>>2]>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[B>>
;2]|0);c[E>>2]=Ce(c[G>>2]|0,F)|0;c[B>>2]=(c[(c[G>>2]|0)+32>>2]|0)-(c[c[G>
x3e;2]>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[u>>2]|0)}c[v
>>2]=0;a:while(1){if((c[v>>2]|0)>>>0>=(c[H>>2]&4095)>>>0)break
;c[I>>2]=(ie(c[G>>2]|0)|0)&65535;c[J>>2]=(ie(c[G>>2]|0)|0)&65535;b:do if(c[J
x3e;>2]&32768|0){c[y>>2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[c[o>>2]
x3e;>2]|0)>>>0)break b;N=(ie(c[G>>2]|0)|0)<<16>>16<<2;c[(c[K>
x3e;2]|0)+(c[y>>2]<<2)>>2]=N;c[y>>2]=(c[y>>2]|0)+1}}else{if((c[J>>2]
x26;4095)>>>0>=(c[(c[o>>2]|0)+24>>2]|0)>>>0){L=21;break a}N=_(c[J>
x3e;2]&4095,c[c[o>>2]>>2]|0)|0;Ss(c[K>>2]|0,(c[(c[o>>2]|0)+28>>2]|0)+(N
x3c;<2)|0,c[c[o>>2]>>2]<<2|0)|0}while(0);c:do if(c[J>>2]&16384|0){c[y>>
;2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[c[o>>2]>>2]|0)>>>0)break;
N=(ie(c[G>>2]|0)|0)<<16>>16<<2;c[(c[x>>2]|0)+(c[y>>2]<<2)
x3e;>2]=N;c[y>>2]=(c[y>>2]|0)+1}c[y>>2]=0;while(1){if((c[y>>2]|0)>>>
0>=(c[c[o>>2]>>2]|0)>>>0)break c;N=(ie(c[G>>2]|0)|0)<<16>>
16<<2;c[(c[w>>2]|0)+(c[y>>2]<<2)>>2]=N;c[y>>2]=(c[y>>2]|0)+
1}}while(0);c[n>>2]=Be(c[o>>2]|0,c[J>>2]&65535,c[K>>2]|0,c[x>>2]|0,c[w>
;>2]|0)|0;if(!(c[n>>2]|0))c[B>>2]=(c[B>>2]|0)+(c[I>>2]|0);else{c[u>>2]=(c
[(c[G>>2]|0)+32>>2]|0)-(c[c[G>>2]>>2]|0);if(c[J>>2]&8192|0){c[(c[G>
x3e;2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[B>>2]|0);c[z>>2]=Ce(c[G>>2]|0,
C)|0;c[D>>2]=c[z>>2]}else{c[D>>2]=c[E>>2];c[C>>2]=c[F>>2]}c[q>
x3e;2]=De(c[G>>2]|0,(c[C>>2]|0)==0?c[m>>2]|0:c[C>>2]|0)|0;c[r>>2]=De(c[G>
x3e;2]|0,(c[C>>2]|0)==0?c[m>>2]|0:c[C>>2]|0)|0;d:do if(!((c[D>>2]|0)==0|(c[r>>
2]|0)==0|(c[q>>2]|0)==0)){N=(c[D>>2]|0)==(-1|0);c[y>>2]=0;if(N)while(1){if((c[y>>2]|0)
x3e;>>0>=(c[m>>2]|0)>>>0)break d;N=Mb(b[(c[q>>2]|0)+(c[y>>2]<
x3c;1)>>1]|0,c[n>>2]|0)|0;h=(c[p>>2]|0)+(c[y>>2]<<3)|0;c[h>>2]=(c[h
x3e;>2]|0)+N;h=Mb(b[(c[r>>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;N=(c[p>
;>2]|0)+(c[y>>2]<<3)+4|0;c[N>>2]=(c[N>>2]|0)+h;c[y>>2]=(c[y>>2]|
0)+1}else while(1){if((c[y>>2]|0)>>>0>=(c[C>>2]|0)>>>0)break d;N=Mb(b[(c[
q>>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;h=(c[p>>2]|0)+(e[(c[z>
x3e;2]|0)+(c[y>>2]<<1)>>1]<<3)|0;c[h>>2]=(c[h>>2]|0)+N;h=Mb(b[(c[r
x3e;>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;N=(c[p>>2]|0)+(e[(c[z>>
;2]|0)+(c[y>>2]<<1)>>1]<<3)+4|0;c[N>>2]=(c[N>>2]|0)+h;c[y>>
;2]=(c[y>>2]|0)+1}}while(0);if((c[z>>2]|0)!=(-1|0)){Fb(c[A>>2]|0,c[z>>2]|0);c[z>>
;2]=0}Fb(c[A>>2]|0,c[q>>2]|0);c[q>>2]=0;Fb(c[A>>2]|0,c[r>>2]|0);c[r>>
;2]=0;c[B>>2]=(c[B>>2]|0)+(c[I>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2
]>>2]|0)+(c[u>>2]|0)}c[v>>2]=(c[v>>2]|0)+1}if((L|0)==21)c[s>>2]=8;Fb(c[A>
x3e;2]|0,c[K>>2]|0);c[K>>2]=0;Fb(c[A>>2]|0,c[x>>2]|0);c[x>>2]=0;Fb(c[A>
x3e;2]|0,c[w>>2]|0);c[w>>2]=0}ge(c[G>>2]|0)}if(!(c[s>>2]|0))break;Fb(c[A>>2]|0
,c[p>>2]|0);c[p>>2]=0;c[c[l>>2]>>2]=0;break}c[j>>2]=0;N=c[j>>2]|0;i=
M;return N|0}while(0);c[j>>2]=c[s>>2];N=c[j>>2]|0;i=M;return N|0}function gh(d){d=d|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;t=i;i=i+64|0;f=t+48|0;g=t+44|0;k=t+40|0;j=t+36|0;p=t+32|0;o=t+28|0;h=t+24|0;
n=t+20|0;l=t+16|0;q=t+12|0;m=t+8|0;r=t+4|0;s=t;c[g>>2]=d;c[k>>2]=c[(c[g>>2]|0)+12>>2];c[
j>>2]=0;c[p>>2]=(c[k>>2]|0)+56;c[o>>2]=b[(c[p>>2]|0)+2>>1];d=(c[(c[p
>>2]|0)+4>>2]|0)+(c[o>>2]<<3)|0;u=(c[g>>2]|0)+68|0;c[d>>2]=c[u>
x3e;2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)+1<<
;3)|0;u=(c[g>>2]|0)+76|0;c[d>>2]=c[u>>2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>
x3e;2]|0)+4>>2]|0)+((c[o>>2]|0)+2<<3)|0;u=(c[g>>2]|0)+184|0;c[d>>2]=c[u>
x3e;2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)+3<<
;3)|0;u=(c[g>>2]|0)+192|0;c[d>>2]=c[u>>2];c[d+4>>2]=c[u+4>>2];a[(c[(c[p>
x3e;2]|0)+8>>2]|0)+(c[o>>2]|0)>>0]=0;a[(c[(c[p>>2]|0)+8>>2]|0)+((c[o>>
;2]|0)+1)>>0]=0;a[(c[(c[p>>2]|0)+8>>2]|0)+((c[o>>2]|0)+2)>>0]=0;a[(c[(c[p>
;>2]|0)+8>>2]|0)+((c[o>>2]|0)+3)>>0]=0;c[o>>2]=(c[o>>2]|0)+4;if(a[(c[c[g
x3e;>2]>>2]|0)+708>>0]|0){c[n>>2]=c[(c[c[g>>2]>>2]|0)+100>>2];c
[j>>2]=fh(c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+20>>2]|0,h,c[o>>2]|0)|0;if(c
[j>>2]|0){c[f>>2]=c[j>>2];u=c[f>>2]|0;i=t;return u|0}c[l>>2]=0;while(1){if((c[
l>>2]|0)>=(c[o>>2]|0))break;u=(c[(c[p>>2]|0)+4>>2]|0)+(c[l>>2]<<
;3)|0;c[u>>2]=(c[u>>2]|0)+(c[(c[h>>2]|0)+(c[l>>2]<<3)>>2]|0);u=(c[(c
[p>>2]|0)+4>>2]|0)+(c[l>>2]<<3)+4|0;c[u>>2]=(c[u>>2]|0)+(c[(c[h>
;>2]|0)+(c[l>>2]<<3)+4>>2]|0);c[l>>2]=(c[l>>2]|0)+1}Fb(c[n>>2]|
0,c[h>>2]|0);c[h>>2]=0}if(!(c[(c[g>>2]|0)+16>>2]&2)){hh((c[g>>2]|0)+124|0
,(c[k>>2]|0)+56|0,0,0);Ss(c[(c[g>>2]|0)+124+20>>2]|0,c[(c[g>>2]|0)+124+16>>2]|
0,(e[(c[g>>2]|0)+124+8>>1]|0)+4<<3|0)|0}if(!(c[(c[g>>2]|0)+16>>2]&1)){c[q
>>2]=c[(c[p>>2]|0)+4>>2];c[m>>2]=(c[(c[p>>2]|0)+4>>2]|0)+(c[o>
x3e;2]<<3);c[r>>2]=c[(c[(c[g>>2]|0)+4>>2]|0)+44+4>>2];c[s>>2]=c[(c[(
c[g>>2]|0)+4>>2]|0)+44+8>>2];while(1){if((c[q>>2]|0)>>>0>=(c[m>
x3e;2]|0)>>>0)break;u=Mb(c[c[q>>2]>>2]|0,c[r>>2]|0)|0;c[c[q>>2]>>
;2]=u;u=Mb(c[(c[q>>2]|0)+4>>2]|0,c[s>>2]|0)|0;c[(c[q>>2]|0)+4>>2]=u;c[q>
x3e;2]=(c[q>>2]|0)+8}u=(c[g>>2]|0)+68|0;s=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-
4<<3)|0;c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];u=(c[g>>2]|0)+76|0;s=(c[(
c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-3<<3)|0;c[u>>2]=c[s>>2];c[u+4>
x3e;2]=c[s+4>>2];u=(c[g>>2]|0)+184|0;s=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-2
x3c;<3)|0;c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];u=(c[g>>2]|0)+192|0;s=(c[(c
[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-1<<3)|0;c[u>>2]=c[s>>2];c[u+4>
x3e;2]=c[s+4>>2]}if(!(c[(c[g>>2]|0)+16>>2]&2)){u=(c[g>>2]|0)+124+8|0;b[u>>
;1]=(e[u>>1]|0)+4;c[j>>2]=ih(c[g>>2]|0,0)|0}c[f>>2]=c[j>>2];u=c[f>>2
]|0;i=t;return u|0}function hh(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;l=g+8|0;j=g+4|0;k=
g;c[h>>2]=a;c[l>>2]=d;c[j>>2]=e;c[k>>2]=f;b[(c[h>>2]|0)+8>>1]=(b[(c[
l>>2]|0)+2>>1]|0)-(c[j>>2]|0);b[(c[h>>2]|0)+10>>1]=(b[c[l>>2]>
x3e;1]|0)-(c[k>>2]|0);c[(c[h>>2]|0)+12>>2]=(c[(c[l>>2]|0)+20>>2]|0)+(c[j>
x3e;2]<<3);c[(c[h>>2]|0)+16>>2]=(c[(c[l>>2]|0)+4>>2]|0)+(c[j>>2]<
;<3);c[(c[h>>2]|0)+20>>2]=(c[(c[l>>2]|0)+24>>2]|0)+(c[j>>2]<<3);
c[(c[h>>2]|0)+24>>2]=(c[(c[l>>2]|0)+8>>2]|0)+(c[j>>2]|0);c[(c[h>>2]|
0)+28>>2]=(c[(c[l>>2]|0)+12>>2]|0)+(c[k>>2]<<1);b[(c[h>>2]|0)+32>
;>1]=c[j>>2];i=g;return}function ih(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,q=0,r=0;r=i;i=i+64|0
;l=r+44|0;m=r+40|0;h=r+49|0;q=r+36|0;g=r+32|0;k=r+28|0;o=r+48|0;p=r+24|0;j=r+20|0;n=r;c[m>>2]=b;a[h>>0]=f;c[
q>>2]=(c[m>>2]|0)+124;c[k>>2]=c[(c[(c[m>>2]|0)+8>>2]|0)+140>>2];c[g
x3e;>2]=c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-4<<3)>
x3e;2];c[g>>2]=((c[g>>2]|0)+32&-64)-(c[g>>2]|0);if(c[g>>2]|0)jh(e[(c[q>>2
]|0)+8>>1]|0,c[(c[q>>2]|0)+16>>2]|0,c[g>>2]|0,0);if((c[k>>2]|0)>>>
;0>0)Ss(c[(c[q>>2]|0)+12>>2]|0,c[(c[q>>2]|0)+16>>2]|0,e[(c[q>>2]|0)+8>
;>1]<<3|0)|0;f=(c[(c[m>>2]|0)+160>>2]|0)+284|0;b=(c[(c[m>>2]|0)+4>>2]|0)+
172|0;g=f+68|0;do{c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0}while((f|0)<(g|0));f=c[m>>2]|0;if(a[h>
x3e;0]|0){c[(c[f+160>>2]|0)+216+4>>2]=65536;c[(c[(c[m>>2]|0)+160>>2]|0)+216+8>>
;2]=65536;Ss(c[(c[q>>2]|0)+20>>2]|0,c[(c[q>>2]|0)+16>>2]|0,e[(c[q>>2]|0)+8>
;>1]<<3|0)|0}else{c[(c[(c[m>>2]|0)+160>>2]|0)+216+4>>2]=c[(c[f+4>>2]|0)+44
+4>>2];c[(c[(c[m>>2]|0)+160>>2]|0)+216+8>>2]=c[(c[(c[m>>2]|0)+4>>2]|
0)+44+8>>2]}c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-3<<3
)>>2]=(c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-3<<3)>
;>2]|0)+32&-64;c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<
;3)+4>>2]=(c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<3)+
4>>2]|0)+32&-64;if((c[k>>2]|0)>>>0>0){c[j>>2]=c[(c[m>>2]|0)+12
x3e;>2];j=(c[j>>2]|0)+56|0;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>
;>2]=c[j+8>>2];c[n+12>>2]=c[j+12>>2];c[n+16>>2]=c[j+16>>2];c[p>>
;2]=Xg(c[(c[m>>2]|0)+160>>2]|0,3,c[(c[(c[m>>2]|0)+160>>2]|0)+392>>2]|0,c[k>
;>2]|0)|0;if(c[p>>2]|0){c[l>>2]=c[p>>2];q=c[l>>2]|0;i=r;return q|0}a[(c[(c[m>
x3e;2]|0)+160>>2]|0)+560>>0]=a[h>>0]|0;f=(c[(c[m>>2]|0)+160>>2]|0)+144|0;b=c[q
>>2]|0;g=f+36|0;do{c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0}while((f|0)<(g|0));if(c[(c[m>>2]|
0)+16>>2]&1|0)f=0;else f=(d[(c[(c[m>>2]|0)+4>>2]|0)+292>>0]|0)!=0;a[o>>0]=
f&1;c[p>>2]=kh(c[(c[m>>2]|0)+160>>2]|0,a[o>>0]|0)|0;if(c[p>>2]|0?d[(c[(c[
m>>2]|0)+160>>2]|0)+561>>0]|0:0){c[l>>2]=c[p>>2];q=c[l>>2]|0;i=r;return
q|0}p=c[n+8>>2]|0;a[p>>0]=a[p>>0]|(c[(c[(c[m>>2]|0)+160>>2]|0)+284+56>
x3e;2]<<5|4)}if(!(a[(c[m>>2]|0)+65>>0]|0)){p=(c[m>>2]|0)+68|0;o=(c[(c[q>>2]|0)+
16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-4<<3)|0;c[p>>2]=c[o>>2];c[p+4>
;>2]=c[o+4>>2];p=(c[m>>2]|0)+76|0;o=(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|
0)+8>>1]|0)-3<<3)|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];p=(c[m>
x3e;2]|0)+184|0;o=(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-2<<3)|0;c[
p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];p=(c[m>>2]|0)+192|0;q=(c[(c[q>>2]|
0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<3)|0;c[p>>2]=c[q>>2];c[p+4
x3e;>2]=c[q+4>>2]}c[l>>2]=0;q=c[l>>2]|0;i=r;return q|0}function jh(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;l=i;i=i+32|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[f>>2]=a;c[g>>2]=b;c[
h>>2]=d;c[j>>2]=e;a:do if(c[h>>2]|0){c[k>>2]=0;while(1){if((c[k>>2]|0)>
x3e;>0>=(c[f>>2]|0)>>>0)break a;a=(c[g>>2]|0)+(c[k>>2]<<3)|0;c[
a>>2]=(c[a>>2]|0)+(c[h>>2]|0);c[k>>2]=(c[k>>2]|0)+1}}while(0);if(!(c[j>
x3e;2]|0)){i=l;return}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=(c[f>>2]|0)>
x3e;>0)break;a=(c[g>>2]|0)+(c[k>>2]<<3)+4|0;c[a>>2]=(c[a>>2]|0)+(c[j>
;>2]|0);c[k>>2]=(c[k>>2]|0)+1}i=l;return}function kh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16
|0;g=k+8|0;h=k+4|0;j=k+12|0;f=k;c[h>>2]=d;a[j>>0]=e;d=Zg(c[h>>2]|0,3,0)|0;c[f>>2]=d;if(d
|0){c[g>>2]=c[f>>2];j=c[g>>2]|0;i=k;return j|0}else{e=(c[h>>2]|0)+36|0;f=(c[h>>
;2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(d|0));e=(c[h>>2]|0)+72|
0;f=(c[h>>2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(d|0));e=(c[h
x3e;>2]|0)+108|0;f=(c[h>>2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)
x3c;(d|0));b[(c[h>>2]|0)+284+60>>1]=1;b[(c[h>>2]|0)+284+62>>1]=1;b[(c[h>>2]|0)+
284+64>>1]=1;b[(c[h>>2]|0)+284+10>>1]=16384;b[(c[h>>2]|0)+284+10+2>>1]=0;d=(c[
h>>2]|0)+284+14|0;f=(c[h>>2]|0)+284+10|0;b[d>>1]=b[f>>1]|0;b[d+2>>1]=b[f+2>
;>1]|0;d=(c[h>>2]|0)+284+6|0;f=(c[h>>2]|0)+284+10|0;b[d>>1]=b[f>>1]|0;b[d+2>
x3e;1]=b[f+2>>1]|0;c[(c[h>>2]|0)+284+28>>2]=1;c[(c[h>>2]|0)+284+20>>2]=1;c[(c[
h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+428>>2]=0;a[j>>0]=a[j>>0]|0;c[g>
;>2]=Ta[c[(c[c[h>>2]>>2]|0)+688>>2]&63](c[h>>2]|0)|0;j=c[g>>2]|0;i=k
;return j|0}return 0}function lh(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;E=i;i=i+80|0;l=E+72|0;m=E+68|0;n=E+64|0;o=E+60|0;p=E+56|0;r=E+52|0;q=E+48|0;x=E+44|0;s=E+76|0;A=E+40|0
;C=E+36|0;k=E+32|0;t=E+28|0;u=E+24|0;y=E+20|0;z=E+16|0;v=E+12|0;w=E+8|0;B=E+4|0;D=E;c[m>>2]=f;c[n>>2]=g;c[o
x3e;>2]=h;c[p>>2]=j;c[r>>2]=c[(c[m>>2]|0)+12>>2];c[q>>2]=c[(c[r>>
;2]|0)+20+4>>2];c[x>>2]=b[(c[r>>2]|0)+20+2>>1];a[s>>0]=e[(c[n>>2]|0)+
4>>1]&200;a:do if(a[s>>0]|0){c[k>>2]=c[p>>2];while(1){if((c[k>>2]|0)>
;>>0>=(c[x>>2]|0)>>>0)break a;Lb((c[q>>2]|0)+(c[k>>2]<<3)|
0,(c[n>>2]|0)+16|0);c[k>>2]=(c[k>>2]|0)+1}}while(0);k=c[(c[n>>2]|0)+8>>2]|0;do
if(e[(c[n>>2]|0)+4>>1]&2|0){c[A>>2]=k;c[C>>2]=c[(c[n>>2]|0)+12>>
;2];if(!((c[A>>2]|0)!=0|(c[C>>2]|0)!=0)){c[l>>2]=0;D=c[l>>2]|0;i=E;return D|0}if(d[s>
;>0]|0?e[(c[n>>2]|0)+4>>1]&2048|0:0){z=Mb(c[(c[n>>2]|0)+16>>2]|0,c[(c[n>
x3e;2]|0)+16>>2]|0)|0;c[v>>2]=Zb(z+(Mb(c[(c[n>>2]|0)+16+4>>2]|0,c[(c[n>>2]|0)+
16+4>>2]|0)|0)|0)|0;z=Mb(c[(c[n>>2]|0)+16+12>>2]|0,c[(c[n>>2]|0)+16+12>>2]|0)|
0;c[w>>2]=Zb(z+(Mb(c[(c[n>>2]|0)+16+8>>2]|0,c[(c[n>>2]|0)+16+8>>2]|0)|0)|0)|0;
c[A>>2]=Mb(c[A>>2]|0,c[v>>2]|0)|0;c[C>>2]=Mb(c[C>>2]|0,c[w>>2]|0)|0}
if((c[(c[m>>2]|0)+16>>2]&1|0)==0?(c[B>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+44+4
x3e;>2],c[D>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+44+8>>2],c[A>>2]=Mb(c[A>
x3e;2]|0,c[B>>2]|0)|0,c[C>>2]=Mb(c[C>>2]|0,c[D>>2]|0)|0,e[(c[n>>2]|0)+4>
x3e;1]&4|0):0){c[A>>2]=(c[A>>2]|0)+32&-64;c[C>>2]=(c[C>>2]|0)+32&-64}}else
{c[t>>2]=k;c[u>>2]=c[(c[n>>2]|0)+12>>2];c[t>>2]=(c[t>>2]|0)+(c[o>
;>2]|0);c[u>>2]=(c[u>>2]|0)+(c[p>>2]|0);if((c[t>>2]|0)>>>0<(c[p
>>2]|0)>>>0?(c[u>>2]|0)>>>0<(c[x>>2]|0)>>>0:0){c
[y>>2]=(c[(c[r>>2]|0)+20+4>>2]|0)+(c[t>>2]<<3);c[z>>2]=(c[(c[r>
x3e;2]|0)+20+4>>2]|0)+(c[u>>2]<<3);c[A>>2]=(c[c[y>>2]>>2]|0)-(c[c[z
x3e;>2]>>2]|0);c[C>>2]=(c[(c[y>>2]|0)+4>>2]|0)-(c[(c[z>>2]|0)+4>>
;2]|0);break}c[l>>2]=21;D=c[l>>2]|0;i=E;return D|0}while(0);if((c[A>>2]|0)!=0|(c[C>>2]|0
)!=0)jh((c[x>>2]|0)-(c[p>>2]|0)|0,(c[q>>2]|0)+(c[p>>2]<<3)|0,c[A>>2]|
0,c[C>>2]|0);c[l>>2]=0;D=c[l>>2]|0;i=E;return D|0}function mh(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;u=i;i=i+48|0;k=u+32|0;l=u+28|0;m=u+24|0;n=u+20|0;o=u+16|0;j=u+12|0;p=u+8|0;s=u+4|0;r=u+
38|0;q=u+36|0;t=u;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[j>>2]=(c[(c[l>>2]|0)+12>
;>2]|0)+20;if(((b[(c[j>>2]|0)+2>>1]|0)+4|0)!=0?((b[(c[(c[l>>2]|0)+12>>2]|0)+20+2>
;>1]|0)+(b[(c[(c[l>>2]|0)+12>>2]|0)+56+2>>1]|0)+((b[(c[j>>2]|0)+2>>1]|0)+
4)|0)>>>0>(c[(c[(c[l>>2]|0)+12>>2]|0)+4>>2]|0)>>>0:0)f=kc(c[(c[
l>>2]|0)+12>>2]|0,(b[(c[j>>2]|0)+2>>1]|0)+4|0,0)|0;else f=0;c[o>>2]=f;if(c[o
x3e;>2]|0){c[k>>2]=c[o>>2];t=c[k>>2]|0;i=u;return t|0}g=(c[(c[j>>2]|0)+4>>
;2]|0)+(b[(c[j>>2]|0)+2>>1]<<3)|0;h=(c[l>>2]|0)+68|0;c[g>>2]=c[h>>2];
c[g+4>>2]=c[h+4>>2];g=(c[(c[j>>2]|0)+4>>2]|0)+((b[(c[j>>2]|0)+2>>1]|
0)+1<<3)|0;h=(c[l>>2]|0)+76|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];g=(
c[(c[j>>2]|0)+4>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+2<<3)|0;h=(c[l>>2]|0
)+184|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];g=(c[(c[j>>2]|0)+4>>2]|0
)+((b[(c[j>>2]|0)+2>>1]|0)+3<<3)|0;h=(c[l>>2]|0)+192|0;c[g>>2]=c[h>>
2];c[g+4>>2]=c[h+4>>2];a[(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>>2]|0)+2>>1
]|0)>>0]=0;a[(c[(c[j>>2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+1)>>0]=
0;a[(c[(c[j>>2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+2)>>0]=0;a[(c[(c[j>
x3e;2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+3)>>0]=0;c[s>>2]=c[(c[l>>
;2]|0)+24>>2];j=Kc(c[s>>2]|0,c[(c[l>>2]|0)+168>>2]|0)|0;c[o>>2]=j;if((j|0)==0?(
b[r>>1]=Pc(c[s>>2]|0,o)|0,(c[o>>2]|0)==0):0){b[q>>1]=b[(c[c[l>>2]>>2
]|0)+260+26>>1]|0;f=e[r>>1]|0;if((e[r>>1]|0)>(e[q>>1]|0)){if((f|0)>(c[(c[l>
;>2]|0)+28>>2]|0)){c[k>>2]=22;t=c[k>>2]|0;i=u;return t|0}c[t>>2]=c[(c[(c[l>>
;2]|0)+160>>2]|0)+388>>2];c[o>>2]=Wg(c[(c[(c[l>>2]|0)+160>>2]|0)+8>>
2]|0,t,1,(c[(c[l>>2]|0)+160>>2]|0)+392|0,e[r>>1]|0)|0;c[(c[(c[l>>2]|0)+160>>2]|
0)+388>>2]=c[t>>2]&65535;if(c[o>>2]|0){c[k>>2]=c[o>>2];t=c[k>>2
]|0;i=u;return t|0}}else if(!f){c[k>>2]=0;t=c[k>>2]|0;i=u;return t|0}t=Rc(c[s>>2]|0,c[(c[(c[l>
;>2]|0)+160>>2]|0)+392>>2]|0,e[r>>1]|0)|0;c[o>>2]=t;if(t|0){c[k>>2]=c[o
x3e;>2];t=c[k>>2]|0;i=u;return t|0}c[(c[(c[l>>2]|0)+8>>2]|0)+136>>2]=c[(c[(c[l>
;>2]|0)+160>>2]|0)+392>>2];c[(c[(c[l>>2]|0)+8>>2]|0)+140>>2]=e[r>>
;1];hh((c[l>>2]|0)+124|0,(c[(c[l>>2]|0)+12>>2]|0)+20|0,c[m>>2]|0,c[n>>2]|0);c[
p>>2]=c[m>>2];while(1){if((c[p>>2]|0)>>>0>=(e[(c[l>>2]|0)+124+8>
;>1]|0)>>>0)break;t=(c[(c[l>>2]|0)+124+24>>2]|0)+(c[p>>2]|0)|0;a[t>>
0]=d[t>>0]&-25;c[p>>2]=(c[p>>2]|0)+1}t=(c[l>>2]|0)+124+8|0;b[t>>1]=(e[t
x3e;>1]|0)+4;c[k>>2]=ih(c[l>>2]|0,1)|0;t=c[k>>2]|0;i=u;return t|0}c[k>>2]=c[o>
x3e;2];t=c[k>>2]|0;i=u;return t|0}function nh(a,f){a=a|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;y=i;i=i+96|0;m=y+88|0;n=y+84|0;o=y+80|0;h=y+64|0;r=y+60|0;x=y+56|0;s=y+52|0;j=y+48|0;g=y+44|0;k=y+40|0;w=y+
36|0;p=y+32|0;t=y+28|0;u=y+24|0;v=y+8|0;q=y;c[n>>2]=a;c[o>>2]=f;c[r>>2]=c[c[n>>2]>
x3e;2];c[s>>2]=c[(c[n>>2]|0)+8>>2];c[j>>2]=c[(c[n>>2]|0)+4>>2];c[x
x3e;>2]=65536;if(!(c[(c[n>>2]|0)+16>>2]&1))c[x>>2]=c[(c[j>>2]|0)+12+8>>
;2];if((c[(c[s>>2]|0)+72>>2]|0)!=1668246896)_d((c[s>>2]|0)+108|0,h);else{a=(c[n>>2]|0)+36
|0;c[h>>2]=c[a>>2];c[h+4>>2]=c[a+4>>2];c[h+8>>2]=c[a+8>>2];c[h+12>
;>2]=c[a+12>>2]}c[g>>2]=c[(c[n>>2]|0)+60>>2];if(c[(c[r>>2]|0)+468+12>
;>2]|0?(c[(c[n>>2]|0)+16>>2]&512|0)==0:0)c[g>>2]=e[(c[r>>2]|0)+216+10>>
;1];c[(c[s>>2]|0)+56>>2]=c[g>>2];c[(c[s>>2]|0)+24+8>>2]=c[h>>2];c[(c
[s>>2]|0)+24+12>>2]=c[h+12>>2];c[(c[s>>2]|0)+24+16>>2]=(c[(c[n>>2]|0
)+76>>2]|0)-(c[(c[n>>2]|0)+68>>2]|0);if(((c[(c[r>>2]|0)+468+12>>2]|0)==0?(c[(c
[n>>2]|0)+16>>2]&2|0)==0:0)?(c[k>>2]=oh(c[r>>2]|0,e[(c[j>>2]|0)+12>
x3e;1]|0,c[o>>2]|0)|0,c[k>>2]|0):0)c[(c[s>>2]|0)+24+16>>2]=d[c[k>>2]>>
;0]<<6;c[(c[s>>2]|0)+24>>2]=(c[h+8>>2]|0)-(c[h>>2]|0);c[(c[s>>2]|0)+
24+4>>2]=(c[h+12>>2]|0)-(c[h+4>>2]|0);do if(d[(c[r>>2]|0)+296>>0]|0?(e[(c[r>
;>2]|0)+300+34>>1]|0)>0:0){c[w>>2]=((Vb((c[(c[n>>2]|0)+184+4>>2]|0)-(c[h+12>
;>2]|0)|0,c[x>>2]|0)|0)&65535)<<16>>16;if((c[(c[n>>2]|0)+184+4>>2]|0
)<=(c[(c[n>>2]|0)+192+4>>2]|0)){c[p>>2]=0;break}else{c[p>>2]=(Vb((c[(c[n>>
;2]|0)+184+4>>2]|0)-(c[(c[n>>2]|0)+192+4>>2]|0)|0,c[x>>2]|0)|0)&65535;break}}else l
=18;while(0);if((l|0)==18){c[t>>2]=((Vb((c[h+12>>2]|0)-(c[h+4>>2]|0)|0,c[x>>2]|0)|0)&
;65535)<<16>>16;g=c[r>>2]|0;if((e[(c[r>>2]|0)+368>>1]|0)!=65535)c[p>>
;2]=(b[g+368+70>>1]|0)-(b[(c[r>>2]|0)+368+72>>1]|0);else c[p>>2]=(b[g+216+4>>1
]|0)-(b[(c[r>>2]|0)+216+6>>1]|0);c[w>>2]=((c[p>>2]|0)-(c[t>>2]|0)|0)/2|0}c[u
x3e;>2]=c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2];do if(c[u>>2]|0?c[(c[c[u>>2]
x3e;>2]|0)+8>>2]|0:0){c[v>>2]=0;c[v+4>>2]=c[w>>2];c[v+8>>2]=c[p>>
;2];c[q>>2]=Wa[c[(c[c[u>>2]>>2]|0)+8>>2]&31](c[(c[u>>2]|0)+4>>2
]|0,c[o>>2]|0,1,v)|0;if(!(c[q>>2]|0)){c[w>>2]=c[v+4>>2];c[p>>2]=c[v+8>>
;2];break}c[m>>2]=c[q>>2];x=c[m>>2]|0;i=y;return x|0}while(0);c[(c[s>>2]|0)+60>>
;2]=c[p>>2];if(!(c[(c[n>>2]|0)+16>>2]&1)){c[w>>2]=Mb(c[w>>2]|0,c[x>
x3e;2]|0)|0;c[p>>2]=Mb(c[p>>2]|0,c[x>>2]|0)|0}c[(c[s>>2]|0)+24+20>>2]=(c[(c[s
x3e;>2]|0)+24+8>>2]|0)-((c[(c[s>>2]|0)+24+16>>2]|0)/2|0);c[(c[s>>2]|0)+24+24>
x3e;2]=c[w>>2];c[(c[s>>2]|0)+24+28>>2]=c[p>>2];c[m>>2]=0;x=c[m>>2]|0
;i=y;return x|0}function oh(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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;h=o+
16|0;j=o+12|0;m=o+8|0;l=o+4|0;k=o;c[f>>2]=a;c[g>>2]=b;c[h>>2]=e;c[m>>2]=0;c[l>>
;2]=c[(c[f>>2]|0)+752>>2];c[k>>2]=(c[(c[f>>2]|0)+740>>2]|0)+8;c[j>>2
]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[f>>2]|0)+748>>2]|0)>>>0){
n=7;break}if((d[(c[(c[f>>2]|0)+756>>2]|0)+(c[j>>2]|0)>>0]|0|0)==(c[g>>2]|0))break
;c[j>>2]=(c[j>>2]|0)+1}if((n|0)==7){n=c[m>>2]|0;i=o;return n|0}c[h>>2]=(c[h>>2
]|0)+2;if((c[h>>2]|0)>>>0>=(c[l>>2]|0)>>>0){n=c[m>>2]|0;i=o;return
n|0}n=(c[k>>2]|0)+(_(c[j>>2]|0,c[l>>2]|0)|0)|0;c[m>>2]=n+(c[h>>2]|0);n=c[m>
;>2]|0;i=o;return n|0}function ph(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;l=i;i=i+32|0;m=l+20|0;f=
l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>
;2]=c[m>>2];c[k>>2]=c[(c[j>>2]|0)+532>>2];c[c[h>>2]>>2]=0;c[(c[h>
;>2]|0)+4>>2]=0;if(!(c[k>>2]|0)){i=l;return 0}m=Oa[c[(c[k>>2]|0)+128>>2]&63](c
[j>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;c[c[h>>2]>>2]=m;i=l;return 0}function qh(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,s=0,t=0,u=0,v=0;t=i;i=i+48|0;v=t+24|0;j=t+20|0;k=t+16
|0;u=t+12|0;l=t+8|0;r=t+4|0;p=t;o=t+36|0;s=t+34|0;m=t+32|0;q=t+30|0;n=t+28|0;c[v>>2]=b;c[j>>2]=d;c[k>
x3e;2]=f;c[u>>2]=g;c[l>>2]=h;c[p>>2]=c[v>>2];a[o>>0]=((c[u>>2]&
512|0)!=0^1)&1;b=(c[u>>2]&16|0)!=0;c[r>>2]=0;if(b){while(1){if((c[r>>2]|0)>>
x3e;0>=(c[k>>2]|0)>>>0)break;dh(c[p>>2]|0,(c[j>>2]|0)+(c[r>>2]|0)|0,
a[o>>0]|0,s,m);c[(c[l>>2]|0)+(c[r>>2]<<2)>>2]=e[m>>1];c[r>>
;2]=(c[r>>2]|0)+1}i=t;return 0}else{while(1){if((c[r>>2]|0)>>>0>=(c[k>>2]|0)
x3e;>>0)break;ch(c[p>>2]|0,(c[j>>2]|0)+(c[r>>2]|0)|0,a[o>>0]|0,q,n);c[(c[l>
;>2]|0)+(c[r>>2]<<2)>>2]=e[n>>1];c[r>>2]=(c[r>>2]|0)+1}i=t;return
0}return 0}function rh(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;m=i;i=i+32|0;d=m+28|0;e=m+24|0;f=m+20|0;l=m+16|
0;g=m+12|0;k=m+8|0;h=m+4|0;j=m;c[e>>2]=a;c[f>>2]=b;c[l>>2]=c[e>>2];c[g>>2]=0;do
if(c[(c[c[e>>2]>>2]|0)+8>>2]&2|0){c[k>>2]=c[c[e>>2]>>2];c[h>
;>2]=c[(c[k>>2]|0)+532>>2];c[g>>2]=Oa[c[(c[h>>2]|0)+148>>2]&63](c[k
x3e;>2]|0,c[f>>2]|0,j)|0;if(c[g>>2]|0){c[(c[l>>2]|0)+112>>2]=-1;break}c[d>>
;2]=sh(c[e>>2]|0,c[j>>2]|0)|0;l=c[d>>2]|0;i=m;return l|0}while(0);Ed(c[c[e>>2]>>
;2]|0,c[f>>2]|0);if(c[(c[c[e>>2]>>2]|0)+8>>2]&1|0)c[g>>2]=th(c[l>>
;2]|0)|0;c[d>>2]=c[g>>2];l=c[d>>2]|0;i=m;return l|0}function sh(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;l=i;i=i+32|0;d=l+24|0;e=l+20|0;j=l+16|0;k=l+12|0;f=l+8|0;h=l+4|0;g=l;c[d>>2]=a;c[e>>2]=b;
c[j>>2]=c[c[d>>2]>>2];c[k>>2]=c[d>>2];c[f>>2]=0;c[(c[k>>2]|
0)+112>>2]=c[e>>2];if(c[(c[c[d>>2]>>2]|0)+8>>2]&1|0){Cd(c[c[d>>
2]>>2]|0,c[e>>2]|0);th(c[k>>2]|0)|0;k=c[f>>2]|0;i=l;return k|0}c[h>>2]=c[(c[j
x3e;>2]|0)+532>>2];c[g>>2]=(c[d>>2]|0)+12;c[f>>2]=Oa[c[(c[h>>2]|0)+152>
;>2]&63](c[j>>2]|0,c[e>>2]|0,c[g>>2]|0)|0;if(!(c[f>>2]|0)){k=c[f>>2]|
0;i=l;return k|0}c[(c[k>>2]|0)+112>>2]=-1;k=c[f>>2]|0;i=l;return k|0}function th(d){d=d|0;var f=0,
g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;g=l+16|0;h=l+12|0;f=l+8|0;j=l+4|0;k=l;c[h>>2]=d;c[j>>2]=0;a[(c[h>
x3e;2]|0)+72+36>>0]=0;c[f>>2]=c[c[h>>2]>>2];c[k>>2]=(c[h>>2]|0)+44;d
=c[k>>2]|0;m=(c[h>>2]|0)+12|0;c[d>>2]=c[m>>2];c[d+4>>2]=c[m+4>>2];c[
d+8>>2]=c[m+8>>2];c[d+12>>2]=c[m+12>>2];c[d+16>>2]=c[m+16>>2];c[d+20
>>2]=c[m+20>>2];c[d+24>>2]=c[m+24>>2];if((e[c[k>>2]>>1]|0)>=1?(
e[(c[k>>2]|0)+2>>1]|0)>=1:0){if(e[(c[f>>2]|0)+160+16>>1]&8|0){m=Vb(e[c[k>
x3e;2]>>1]<<6,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[k>>2]|0)+4>>2]=m;m=Vb(e
[(c[k>>2]|0)+2>>1]<<6,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[k>>2]|0)+8>
;>2]=m;m=(Mb(b[(c[f>>2]|0)+70>>1]|0,c[(c[k>>2]|0)+8>>2]|0)|0)+32&-64;c[(c[k>
;>2]|0)+12>>2]=m;m=(Mb(b[(c[f>>2]|0)+72>>1]|0,c[(c[k>>2]|0)+8>>2]|0)|0)+32
&-64;c[(c[k>>2]|0)+16>>2]=m;m=(Mb(b[(c[f>>2]|0)+74>>1]|0,c[(c[k>>2]|0)+8
x3e;>2]|0)|0)+32&-64;c[(c[k>>2]|0)+20>>2]=m;m=(Mb(b[(c[f>>2]|0)+76>>1]|0,c[(c[
k>>2]|0)+4>>2]|0)|0)+32&-64;c[(c[k>>2]|0)+24>>2]=m}f=c[k>>2]|0;if((e[c[k
x3e;>2]>>1]|0)>=(e[(c[k>>2]|0)+2>>1]|0)){c[(c[h>>2]|0)+72+16>>2]=c[f
+4>>2];b[(c[h>>2]|0)+72+8>>1]=b[c[k>>2]>>1]|0;c[(c[h>>2]|0)+72>
x3e;2]=65536;m=xb(e[(c[k>>2]|0)+2>>1]|0,65536,e[c[k>>2]>>1]|0)|0;c[(c[h>>2]|0)+
72+4>>2]=m}else{c[(c[h>>2]|0)+72+16>>2]=c[f+8>>2];b[(c[h>>2]|0)+72+8>>
;1]=b[(c[k>>2]|0)+2>>1]|0;m=xb(e[c[k>>2]>>1]|0,65536,e[(c[k>>2]|0)+2>>
;1]|0)|0;c[(c[h>>2]|0)+72>>2]=m;c[(c[h>>2]|0)+72+4>>2]=65536}a[(c[h>>2]|0)+301
>>0]=0;if(!(c[j>>2]|0))a[(c[h>>2]|0)+72+36>>0]=1;c[g>>2]=c[j>>2];m=c
[g>>2]|0;i=l;return m|0}c[g>>2]=151;m=c[g>>2]|0;i=l;return m|0}function uh(a){a=a|0;var b=0,d=0;b=
i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return 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[d>>2]=c[d>>2];i=b;return}function wh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=
0;j=i;i=i+32|0;h=j+16|0;d=j+12|0;e=j+8|0;g=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=qc(740,c[e>
x3e;2]|0)|0;if(c[f>>2]|0){c[h>>2]=c[f>>2];h=c[h>>2]|0;i=j;return h|0}if(!(c[d>>
;2]|0)){c[h>>2]=0;h=c[h>>2]|0;i=j;return h|0}c[g>>2]=Wc(c[(c[d>>2]|0)+4>>2]|0,
11340)|0;if(c[g>>2]|0)d=Ya[c[(c[c[g>>2]>>2]|0)+32>>2]&127](c[g>>2]|0,c[e
x3e;>2]|0)|0;else d=0;c[h>>2]=d;h=c[h>>2]|0;i=j;return h|0}function xh(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;k=n+12|0;j=n+8|0;l=n+4|0;m=n;c[f>>2]=d;c[g>>2]=
e;c[h>>2]=c[(c[f>>2]|0)+692>>2];c[k>>2]=0;do if(c[h>>2]|0?(c[(c[h>>2
]|0)+2060>>2]|0)==0:0){c[j>>2]=(c[h>>2]|0)+1324;c[m>>2]=c[(c[f>>2]|0)+100>
;>2];c[l>>2]=bc(c[m>>2]|0,32,k)|0;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}else{m=yh
(c[h>>2]|0,c[c[j>>2]>>2]|0)|0;c[c[l>>2]>>2]=m;m=yh(c[h>>2]|0,c[(c[j
x3e;>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+4>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+
12>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+16>>2
]|0)|0;c[(c[l>>2]|0)+12>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+20>>2]|0)|0;c[(c[l
x3e;>2]|0)+16>>2]=m;c[(c[l>>2]|0)+20>>2]=c[(c[j>>2]|0)+28>>2];a[(c[l>
;>2]|0)+24>>0]=a[(c[j>>2]|0)+24>>0]|0;b[(c[l>>2]|0)+26>>1]=c[(c[j>
x3e;2]|0)+32>>2];b[(c[l>>2]|0)+28>>1]=c[(c[j>>2]|0)+36>>2];c[(c[h>>2
]|0)+2060>>2]=c[l>>2];break}}while(0);if(!(c[h>>2]|0)){m=c[k>>2]|0;i=n;return m|0}m=c[g
x3e;>2]|0;l=c[(c[h>>2]|0)+2060>>2]|0;c[m>>2]=c[l>>2];c[m+4>>2]=c[l+4>
;>2];c[m+8>>2]=c[l+8>>2];c[m+12>>2]=c[l+12>>2];c[m+16>>2]=c[l+16>>
;2];c[m+20>>2]=c[l+20>>2];c[m+24>>2]=c[l+24>>2];c[m+28>>2]=c[l+28>>2
];m=c[k>>2]|0;i=n;return m|0}function yh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>
;>2]=a;c[f>>2]=b;do if((c[f>>2]|0)!=65535){a=c[e>>2]|0;if((c[f>>2]|0)>>
x3e;0>390){c[d>>2]=zh(a,(c[f>>2]|0)-391|0)|0;break}if(c[a+2056>>2]|0){c[d>>2]=Ta[c[(
c[(c[e>>2]|0)+2056>>2]|0)+20>>2]&63](c[f>>2]|0)|0;break}else{c[d>>2]=0;break
}}else c[d>>2]=0;while(0);i=g;return c[d>>2]|0}function zh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f
+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if((c[e>>2]|0)>>>0>=(c[(c[d>>2]|0)+1312
>>2]|0)>>>0){a=0;i=f;return a|0}a=c[(c[(c[d>>2]|0)+1316>>2]|0)+(c[e>>2]
x3c;<2)>>2]|0;i=f;return a|0}function Ah(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]&512|0)>0|0}function Bh(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[(c[e>>2]|0)+692>>2];i=d;return c[(c[b>>2]|0)+1304>>2]|0}
function Ch(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;p=i;i=i+32|0;q=p+24|0;h=p+20|0;j=p+16|0;k=p
+12|0;m=p+8|0;n=p+4|0;o=p+28|0;l=p;c[q>>2]=a;c[h>>2]=d;c[j>>2]=f;c[k>>2]=g;c[m>>
;2]=c[(c[q>>2]|0)+692>>2];if(!(c[(c[m>>2]|0)+2056>>2]|0)){c[l>>2]=2;q=c[l>
;>2]|0;i=p;return q|0}b[o>>1]=b[(c[(c[m>>2]|0)+1152+8>>2]|0)+(c[h>>2]<<1)
x3e;>1]|0;c[n>>2]=yh(c[m>>2]|0,e[o>>1]|0)|0;if(c[n>>2]|0)pe(c[j>>2]|0,c[n
>>2]|0,c[k>>2]|0)|0;c[l>>2]=0;q=c[l>>2]|0;i=p;return q|0}function Dh(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,q=0,r=0;o=i;i=i+48|0;m=o+36|0;r=o+32|0;f=o+28|0;g=o+24|0;h=o+20|0;k=o+16|0;j=o+12|0;l=o
+40|0;n=o+8|0;q=o+4|0;p=o;c[r>>2]=a;c[f>>2]=d;c[g>>2]=c[(c[r>>2]|0)+692>>2];c[
h>>2]=(c[g>>2]|0)+1152;c[q>>2]=c[(c[r>>2]|0)+96>>2];c[p>>2]=Vd(c[q
x3e;>2]|0,71003)|0;c[k>>2]=c[p>>2];if(!(c[k>>2]|0)){c[m>>2]=0;r=c[m>>2]|0
;i=o;return r|0}c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0>=(c[(c[g>>2]|0)+12>
x3e;2]|0)>>>0){f=12;break}b[l>>1]=b[(c[(c[h>>2]|0)+8>>2]|0)+(c[n>>2]<
;<1)>>1]|0;if((e[l>>1]|0|0)>390)c[j>>2]=zh(c[g>>2]|0,(e[l>>1]|0)-391
|0)|0;else c[j>>2]=Ta[c[(c[k>>2]|0)+20>>2]&63](e[l>>1]|0)|0;if(c[j>>2]|0?(
Kr(c[f>>2]|0,c[j>>2]|0)|0)==0:0){f=10;break}c[n>>2]=(c[n>>2]|0)+1}if((f|0)==10){c[m>
;>2]=c[n>>2];r=c[m>>2]|0;i=o;return r|0}else if((f|0)==12){c[m>>2]=0;r=c[m>>2]|0;i=
o;return r|0}return 0}function Eh(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;l=i;i=i+32|0;d=l+28|0;e=l+24|0;f=l+20
|0;g=l+16|0;m=l+12|0;h=l+8|0;k=l+4|0;j=l;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[d>>2];c[g>
x3e;2]=0;c[m>>2]=c[c[f>>2]>>2];c[h>>2]=c[(c[(c[m>>2]|0)+96>>2]|0)+4
x3e;>2];c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;if((c[(c[f>>2]|0)+12>
x3e;2]|0)==828){m=c[g>>2]|0;i=l;return m|0}if((c[(c[f>>2]|0)+12>>2]|0)==868){m=c[g>>2]|0
;i=l;return m|0}c[k>>2]=Wc(c[h>>2]|0,11340)|0;c[j>>2]=Vd(c[k>>2]|0,11426)|0;if(!(c[j>
;>2]|0)){m=c[g>>2]|0;i=l;return m|0}if(!(c[c[j>>2]>>2]|0)){m=c[g>>2]|0;i=l;return m
|0}c[g>>2]=Ya[c[c[j>>2]>>2]&127](c[d>>2]|0,c[e>>2]|0)|0;m=c[g>>
2]|0;i=l;return m|0}function Fh(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;f=b+4|0;e=b;c[d>>2]=a;c
[g>>2]=c[c[d>>2]>>2];c[f>>2]=c[(c[g>>2]|0)+692>>2];c[e>>2]=(
c[f>>2]|0)+116;c[(c[d>>2]|0)+16>>2]=(c[e>>2]|0)+524;i=b;return 0}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)+16>>2]=0;i=b;return}function Hh(a,b){a=a|0;b=b|0
;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=b;c[g>>2]=0;if((c[f>
x3e;2]|0)>>>0>=256){g=c[g>>2]|0;i=h;return g|0}c[g>>2]=e[(c[(c[d>>2]|0)+16>
;>2]|0)+(c[f>>2]<<1)>>1];g=c[g>>2]|0;i=h;return g|0}function Ih(a,b){a=a|0;b=b|0;var
d=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;f=l+16|0;g=l+12|0;j=l+8|0;d=l+4|0;h=l;c[f>>2]=a;c[g>>2]=b;c[j>
;>2]=0;c[d>>2]=c[c[g>>2]>>2];c[c[g>>2]>>2]=0;if((c[d>>2]|0)>
;>>0>=255){k=c[j>>2]|0;i=l;return k|0}c[h>>2]=(c[d>>2]|0)+1;while(1){if((c[h>
x3e;2]|0)>>>0>=256){k=7;break}c[j>>2]=e[(c[(c[f>>2]|0)+16>>2]|0)+(c[h>>
;2]<<1)>>1];d=c[h>>2]|0;if(c[j>>2]|0)break;c[h>>2]=d+1}if((k|0)==7){k=c[j>
;>2]|0;i=l;return k|0}c[c[g>>2]>>2]=d;k=c[j>>2]|0;i=l;return k|0}function Jh(a){a=a|0;var b=0
,d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;b=j+24|0;d=j+20|0;f=j+16|0;g=j+12|0;e=j+8|0;k=j+4|0;h=j;c[d>>2]=a;c[f>
x3e;2]=c[c[d>>2]>>2];c[g>>2]=c[(c[f>>2]|0)+100>>2];c[e>>2]=c[(c[f>
;>2]|0)+692>>2];c[k>>2]=(c[e>>2]|0)+1152;c[h>>2]=c[(c[e>>2]|0)+2056>
x3e;2];if(c[(c[k>>2]|0)+8>>2]|0){c[b>>2]=Sa[c[(c[h>>2]|0)+4>>2]&3](c[g>
;>2]|0,c[d>>2]|0,c[(c[e>>2]|0)+12>>2]|0,105,0,c[f>>2]|0)|0;k=c[b>>2]|0;i=
j;return k|0}else{c[b>>2]=163;k=c[b>>2]|0;i=j;return k|0}return 0}function Kh(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;k=d+16|0;h=d+12|0;g=d+8|0;j=d+4|0;f=d;c[k>>2]=a;c[h>>2]=b;c[g>>2]=c[(c
[k>>2]|0)+692>>2];c[j>>2]=(c[g>>2]|0)+1152;c[f>>2]=e[(c[(c[j>>2]|0)+
8>>2]|0)+(c[h>>2]<<1)>>1];b=yh(c[g>>2]|0,c[f>>2]|0)|0;i=d;return b|0
}function Lh(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]=c[c[d>>
;2]>>2];c[e>>2]=c[(c[f>>2]|0)+100>>2];Fb(c[e>>2]|0,c[(c[d>>2]|0)+20
x3e;>2]|0);c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>2]=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,j=0;d=i;i=i+32|0;f=d+16|0;e=d+12|0;j=d+8|0;h=d+4|0;g=d;c[f>>2]=a;c[e>>
2]=b;c[j>>2]=c[c[f>>2]>>2];c[h>>2]=c[(c[j>>2]|0)+692>>2];c[g>
x3e;2]=c[(c[h>>2]|0)+2056>>2];a=Ya[c[(c[g>>2]|0)+8>>2]&127](c[f>>2]|0,c[e
>>2]|0)|0;i=d;return a|0}function Nh(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;e=d+12|0;j=d+8
|0;h=d+4|0;g=d;c[f>>2]=a;c[e>>2]=b;c[j>>2]=c[c[f>>2]>>2];c[h>>2]=c[(
c[j>>2]|0)+692>>2];c[g>>2]=c[(c[h>>2]|0)+2056>>2];a=Ya[c[(c[g>>2]|0)+
12>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Oh(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;m=i;i=i+32|0;n=m+24|0;f=m+20|0;g=m+16|0;h=m+12|0;l=m+8|0;j=m+4|0;k=m;c[n>>2]=a;c
[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[l>>2]=0;c[j>>2]=c[(c[n>>2]|0)+692>
;>2];if(!(c[j>>2]|0)){n=c[l>>2]|0;i=m;return n|0}c[k>>2]=(c[j>>2]|0)+1324;if((c[(c[
k>>2]|0)+128>>2]|0)==65535){c[l>>2]=6;n=c[l>>2]|0;i=m;return n|0}if(c[f>>2]|0){
if(!(c[(c[j>>2]|0)+2064>>2]|0)){n=yh(c[j>>2]|0,c[(c[k>>2]|0)+128>>2]|0)|0;c[(c
[j>>2]|0)+2064>>2]=n}c[c[f>>2]>>2]=c[(c[j>>2]|0)+2064>>2]}if(c[g>
;>2]|0){if(!(c[(c[j>>2]|0)+2068>>2]|0)){n=yh(c[j>>2]|0,c[(c[k>>2]|0)+132>>
;2]|0)|0;c[(c[j>>2]|0)+2068>>2]=n}c[c[g>>2]>>2]=c[(c[j>>2]|0)+2068>>
2]}if(!(c[h>>2]|0)){n=c[l>>2]|0;i=m;return n|0}c[c[h>>2]>>2]=c[(c[k>>2]|0)+136
>>2];n=c[l>>2]|0;i=m;return n|0}function Ph(b,d){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;k=j+16
|0;e=j+12|0;h=j+8|0;f=j+4|0;g=j;c[k>>2]=b;c[e>>2]=d;c[h>>2]=0;c[f>>2]=c[(c[k>>
2]|0)+692>>2];a[c[e>>2]>>0]=0;if(!(c[f>>2]|0)){k=c[h>>2]|0;i=j;return k|0}c[g
x3e;>2]=(c[f>>2]|0)+1324;if((c[(c[g>>2]|0)+128>>2]|0)==65535){k=c[h>>2]|0;i=j;return
k|0}a[c[e>>2]>>0]=1;k=c[h>>2]|0;i=j;return k|0}function Qh(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;m=i;i=i+32|0;n=m+24|0;f=m+20|0;g=m+16|0;l=m+12|0;j=m+8|0;h=m+4|0;k=m;c[n>>2]=a;c[f>>2
]=b;c[g>>2]=d;c[l>>2]=0;c[j>>2]=c[(c[n>>2]|0)+692>>2];do if(c[j>>2]|
0){c[k>>2]=(c[j>>2]|0)+1324;if((c[(c[k>>2]|0)+128>>2]|0)==65535){c[l>>2]=6;break
}if((c[f>>2]|0)>>>0>(c[(c[j>>2]|0)+12>>2]|0)>>>0){c[l>>
;2]=6;break}c[h>>2]=e[(c[(c[j>>2]|0)+1152+8>>2]|0)+(c[f>>2]<<1)>>1];
if(c[g>>2]|0)c[c[g>>2]>>2]=c[h>>2]}while(0);i=m;return c[l>>2]|0}
function rm(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;L=i;i=i+128|0;N=L+116|0;M=L+112|0;j=L+108|0;D=L+104|0;v=L+100|0;g=L+96|0;h=L+92|0;y=L+88|0;
H=L+84|0;w=L+80|0;p=L+76|0;s=L+72|0;k=L+68|0;r=L+64|0;n=L+60|0;l=L+56|0;t=L+52|0;x=L+48|0;u=L+44|0;m=L+40|0;o=L+36|0;q=L+32|0;C=
L+28|0;z=L+24|0;E=L+20|0;G=L+16|0;F=L+120|0;A=L+12|0;I=L+8|0;B=L+4|0;J=L;c[N>>2]=e;c[M>>2]=f;c[j>>
2]=(c[N>>2]|0)+48+((c[M>>2]|0)*28|0);c[D>>2]=0;c[v>>2]=c[c[N>>2]>>2];
c[g>>2]=(c[(c[N>>2]|0)+112>>2]|0)+40+((c[M>>2]|0)*396|0);c[h>>2]=c[(c[j>
x3e;2]|0)+8>>2];c[y>>2]=(c[h>>2]|0)+((c[c[j>>2]>>2]|0)*52|0);c[(c[j>>
;2]|0)+12>>2]=0;f=c[N>>2]|0;if(!(c[M>>2]|0))f=c[f+4>>2]|0;else f=c[f+12>>2]|0;
c[w>>2]=f;c[p>>2]=Mb(c[(c[g>>2]|0)+204>>2]|0,c[w>>2]|0)|0;if((c[p>>2
]|0)>16)c[p>>2]=Vb(16,c[w>>2]|0)|0;else c[p>>2]=c[(c[g>>2]|0)+204>>2];c[H
>>2]=c[h>>2];while(1){if((c[H>>2]|0)>>>0>=(c[y>>2]|0)>>>
;0)break;c[s>>2]=0;c[k>>2]=65535;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[(c[j>
x3e;2]|0)+12>>2]|0))break;c[n>>2]=(c[(c[j>>2]|0)+20>>2]|0)+((c[r>>2]|0)*48|0);
do if((a[(c[n>>2]|0)+13>>0]|0)==(a[(c[H>>2]|0)+1>>0]|0)){c[l>>2]=(b[(c[H>
x3e;2]|0)+2>>1]|0)-(b[c[n>>2]>>1]|0);if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>
;>2]|0);if((c[l>>2]|0)<(c[p>>2]|0)?(c[l>>2]|0)<(c[k>>2]|0):0){c[t>
x3e;2]=c[(c[H>>2]|0)+20>>2];if(c[t>>2]|0){c[x>>2]=c[(c[n>>2]|0)+40>>
2];c[m>>2]=0;do{c[u>>2]=c[(c[x>>2]|0)+20>>2];if(c[u>>2]|0){if((b[(c[t>>
;2]|0)+2>>1]|0)>(b[(c[u>>2]|0)+2>>1]|0))f=(b[(c[t>>2]|0)+2>>1]|0)-(b[(c[u
>>2]|0)+2>>1]|0)|0;else f=(b[(c[u>>2]|0)+2>>1]|0)-(b[(c[t>>2]|0)+2>>
1]|0)|0;c[m>>2]=f;if((c[m>>2]|0)>=(c[p>>2]|0))break}N=c[(c[x>>2]|0)+16>>2
]|0;c[x>>2]=N}while((N|0)!=(c[(c[n>>2]|0)+40>>2]|0));if((c[m>>2]|0)>=(c[p>>
;2]|0))break}c[k>>2]=c[l>>2];c[s>>2]=c[n>>2]}}while(0);c[r>>2]=(c[r>>
;2]|0)+1}if(c[s>>2]|0){c[(c[H>>2]|0)+16>>2]=c[(c[s>>2]|0)+40>>2];c[(c[(c[s>
;>2]|0)+44>>2]|0)+16>>2]=c[H>>2];c[(c[s>>2]|0)+44>>2]=c[H>>2]}else
{c[D>>2]=Yl(c[j>>2]|0,b[(c[H>>2]|0)+2>>1]|0,a[(c[H>>2]|0)+1>>0]|0,c[
v>>2]|0,o)|0;if(c[D>>2]|0){K=69;break}f=c[o>>2]|0;e=f+48|0;do{c[f>>2]=0;f=f+4|0}while((f
|0)<(e|0));c[(c[o>>2]|0)+40>>2]=c[H>>2];c[(c[o>>2]|0)+44>>2]=c[H>>
;2];b[c[o>>2]>>1]=b[(c[H>>2]|0)+2>>1]|0;N=Mb(b[(c[H>>2]|0)+2>>1]|0,c
[w>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=N;c[(c[o>>2]|0)+4>>2]=N;c[(c[H>>2]|0
)+16>>2]=c[H>>2];a[(c[o>>2]|0)+13>>0]=a[(c[H>>2]|0)+1>>0]|0}c[H>
;>2]=(c[H>>2]|0)+52}if((K|0)==69){N=c[D>>2]|0;i=L;return N|0}c[q>>2]=c[(c[j>>2]|0)+
20>>2];c[C>>2]=(c[q>>2]|0)+((c[(c[j>>2]|0)+12>>2]|0)*48|0);c[z>>2]=c
[q>>2];while(1){if((c[z>>2]|0)>>>0>=(c[C>>2]|0)>>>0)break;c[H
x3e;>2]=c[(c[z>>2]|0)+40>>2];if(c[H>>2]|0)do{c[(c[H>>2]|0)+12>>2]=c[z>
;>2];c[H>>2]=c[(c[H>>2]|0)+16>>2]}while((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>
;>2]|0));c[z>>2]=(c[z>>2]|0)+48}c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)
x3e;>>0>=(c[C>>2]|0)>>>0)break;c[E>>2]=0;c[G>>2]=0;c[H>>2]=
c[(c[z>>2]|0)+40>>2];do{if(d[c[H>>2]>>0]&1|0)c[E>>2]=(c[E>>2]|0
)+1;else c[G>>2]=(c[G>>2]|0)+1;if(c[(c[H>>2]|0)+24>>2]|0)f=(c[(c[(c[H>>2]|0)+24
>>2]|0)+12>>2]|0)!=(c[z>>2]|0);else f=0;a[F>>0]=f&1;if(!(!(c[(c[H>>2]|0)+
20>>2]|0)?!(d[F>>0]|0):0))K=47;do if((K|0)==47){K=0;c[A>>2]=c[(c[z>>2]|0)+24>>
2];c[I>>2]=c[(c[H>>2]|0)+20>>2];if(a[F>>0]|0){c[I>>2]=c[(c[H>>2]|0)+
24>>2];c[A>>2]=c[(c[z>>2]|0)+28>>2]}if(c[A>>2]|0){c[B>>2]=(b[c[z>
;>2]>>1]|0)-(b[c[A>>2]>>1]|0);if((c[B>>2]|0)<0)c[B>>2]=0-(c[B>
x3e;2]|0);if((b[(c[H>>2]|0)+2>>1]|0)>(b[(c[I>>2]|0)+2>>1]|0))f=(b[(c[H>>2
]|0)+2>>1]|0)-(b[(c[I>>2]|0)+2>>1]|0)|0;else f=(b[(c[I>>2]|0)+2>>1]|0)-(b[(c[H
>>2]|0)+2>>1]|0)|0;c[J>>2]=f;if((c[J>>2]|0)<(c[B>>2]|0))c[A>>2]=
c[(c[I>>2]|0)+12>>2]}else c[A>>2]=c[(c[I>>2]|0)+12>>2];f=c[A>>2]|0;e
=c[z>>2]|0;if(a[F>>0]|0){c[e+28>>2]=f;N=(c[A>>2]|0)+12|0;a[N>>0]=d[N>>
;0]|2;break}else{c[e+24>>2]=f;break}}while(0);c[H>>2]=c[(c[H>>2]|0)+16>>2]}while((c[H>
;>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));a[(c[z>>2]|0)+12>>0]=0;if((c[E>>2]|0)
x3e;0?(c[E>>2]|0)>=(c[G>>2]|0):0){N=(c[z>>2]|0)+12|0;a[N>>0]=d[N>>0]|1}if
(c[(c[z>>2]|0)+28>>2]|0?c[(c[z>>2]|0)+24>>2]|0:0)c[(c[z>>2]|0)+28>>2
]=0;c[z>>2]=(c[z>>2]|0)+48}N=c[D>>2]|0;i=L;return N|0}function sm(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;A=i;i=i+80|0;u=A+72|0;h=A+68|0;g=A+64|0;z=A+60|0;y=A+56|0;r
=A+52|0;x=A+48|0;j=A+44|0;l=A+40|0;s=A+36|0;k=A+32|0;o=A+28|0;p=A+24|0;q=A+20|0;m=A+16|0;n=A+12|0;t=A+8|0;w=A+4|0;v=A;c[u>
x3e;2]=e;c[h>>2]=f;c[g>>2]=(c[u>>2]|0)+48+((c[h>>2]|0)*28|0);c[z>>2]=c[(c[g>
;>2]|0)+20>>2];c[y>>2]=(c[z>>2]|0)+((c[(c[g>>2]|0)+12>>2]|0)*48|0);c[j>
;>2]=0;c[l>>2]=0;c[s>>2]=0;c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>
x3e;>0>=(c[y>>2]|0)>>>0)break;do if(!(d[(c[x>>2]|0)+12>>0]&4)){c[k
x3e;>2]=c[(c[x>>2]|0)+24>>2];if(!(c[k>>2]|0)){c[s>>2]=(c[s>>2]|0)+1;break
}if((c[k>>2]|0)>>>0<(c[x>>2]|0)>>>0){tm(c[u>>2]|0,c[h>>
;2]|0,c[k>>2]|0,c[x>>2]|0);g=(c[x>>2]|0)+12|0;a[g>>0]=d[g>>0]|4;break}f=c[u>
;>2]|0;e=c[x>>2]|0;g=c[k>>2]|0;if((c[h>>2]|0)==1|(c[j>>2]|0)!=0)wm(f,e,g,c[l>
x3e;2]|0,c[h>>2]|0)|0;else c[l>>2]=wm(f,e,g,0,0)|0;c[j>>2]=c[x>>2];g=(c[x>>2]|
0)+12|0;a[g>>0]=d[g>>0]|4;g=(c[k>>2]|0)+12|0;a[g>>0]=d[g>>0]|4}while(0);c[x>
;>2]=(c[x>>2]|0)+48}c[r>>2]=((c[y>>2]|0)-(c[z>>2]|0)|0)/48|0;if((c[h>>2]|
0)==0?(c[r>>2]|0)==6|(c[r>>2]|0)==12:0){f=c[z>>2]|0;if((c[r>>2]|0)==6){c[o>>2]=
f;c[p>>2]=(c[z>>2]|0)+96;c[q>>2]=(c[z>>2]|0)+192}else{c[o>>2]=f+48;c[p>
x3e;2]=(c[z>>2]|0)+240;c[q>>2]=(c[z>>2]|0)+432}c[m>>2]=(c[(c[p>>2]|0)+4>
x3e;2]|0)-(c[(c[o>>2]|0)+4>>2]|0);c[n>>2]=(c[(c[q>>2]|0)+4>>2]|0)-(c[(c[p>
;>2]|0)+4>>2]|0);c[t>>2]=(c[m>>2]|0)-(c[n>>2]|0);if((c[t>>2]|0)<0)c[
t>>2]=0-(c[t>>2]|0);if(((c[(c[o>>2]|0)+24>>2]|0)==((c[o>>2]|0)+48|0)?(c[(c[p
x3e;>2]|0)+24>>2]|0)==((c[p>>2]|0)+48|0):0)?((c[t>>2]|0)<8?(c[(c[q>>2]|0)+24
x3e;>2]|0)==((c[q>>2]|0)+48|0):0):0){c[l>>2]=(c[(c[q>>2]|0)+8>>2]|0)-((c[(c[p>
x3e;2]|0)+8>>2]<<1)-(c[(c[o>>2]|0)+8>>2]|0));t=(c[q>>2]|0)+8|0;c[t>>
2]=(c[t>>2]|0)-(c[l>>2]|0);if(c[(c[q>>2]|0)+24>>2]|0){t=(c[(c[q>>2]|0)+24>
;>2]|0)+8|0;c[t>>2]=(c[t>>2]|0)-(c[l>>2]|0)}if((c[r>>2]|0)==12){t=(c[z>>2
]|0)+384+8|0;c[t>>2]=(c[t>>2]|0)-(c[l>>2]|0);t=(c[z>>2]|0)+528+8|0;c[t>>2]=(c[
t>>2]|0)-(c[l>>2]|0)}t=(c[q>>2]|0)+12|0;a[t>>0]=d[t>>0]|4;if(c[(c[q>>
;2]|0)+24>>2]|0){t=(c[(c[q>>2]|0)+24>>2]|0)+12|0;a[t>>0]=d[t>>0]|4}}}if(!(c[s
x3e;>2]|0)){i=A;return}c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>>>0>=(c[y
x3e;>2]|0)>>>0)break;if((d[(c[x>>2]|0)+12>>0]&4|0)==0?c[(c[x>>2]|0)+28>
;>2]|0:0){xm(c[u>>2]|0,c[(c[x>>2]|0)+28>>2]|0,c[x>>2]|0);t=(c[x>>2]|0)+12
|0;a[t>>0]=d[t>>0]|4;c[s>>2]=(c[s>>2]|0)+-1}c[x>>2]=(c[x>>2]|0)+48}if
(!(c[s>>2]|0)){i=A;return}c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>>>0>
;=(c[y>>2]|0)>>>0)break;do if(!(d[(c[x>>2]|0)+12>>0]&4)){t=c[x>>2]|0
;c[v>>2]=t;c[w>>2]=t;do{t=(c[w>>2]|0)+-48|0;c[w>>2]=t;if(t>>>0<(c[z
x3e;>2]|0)>>>0)break}while(!(d[(c[w>>2]|0)+12>>0]&4|0));do{t=(c[v>>2]|0)+
48|0;c[v>>2]=t;if(t>>>0>=(c[y>>2]|0)>>>0)break}while(!(d[(c[v>>
2]|0)+12>>0]&4|0));if((c[w>>2]|0)>>>0<(c[z>>2]|0)>>>0?(c[v
>>2]|0)>>>0>=(c[y>>2]|0)>>>0:0)break;if((c[w>>2]|0)>>
x3e;0<(c[z>>2]|0)>>>0){xm(c[u>>2]|0,c[v>>2]|0,c[x>>2]|0);break}if((c
[v>>2]|0)>>>0>=(c[y>>2]|0)>>>0){xm(c[u>>2]|0,c[w>>2]|
0,c[x>>2]|0);break}f=c[(c[w>>2]|0)+8>>2]|0;e=c[x>>2]|0;if((b[c[v>>2]>>
;1]|0)==(b[c[w>>2]>>1]|0)){c[e+8>>2]=f;break}else{t=f+(xb((b[e>>1]|0)-(b[c[w>>
2]>>1]|0)|0,(c[(c[v>>2]|0)+8>>2]|0)-(c[(c[w>>2]|0)+8>>2]|0)|0,(b[c[v>>
;2]>>1]|0)-(b[c[w>>2]>>1]|0)|0)|0)|0;c[(c[x>>2]|0)+8>>2]=t;break}}while(0);c[x
>>2]=(c[x>>2]|0)+48}i=A;return}function tm(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;
g=i;i=i+32|0;n=g+20|0;m=g+16|0;k=g+12|0;h=g+8|0;l=g+4|0;j=g;c[n>>2]=a;c[m>>2]=b;c[k>>2]=e;c[h>
;>2]=f;c[l>>2]=(c[(c[h>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+4>>2]|0);c[j>
x3e;2]=um(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,d[(c[k>>2]|0)+12>>0]|0,d[(c[h>>
;2]|0)+12>>0]|0)|0;c[(c[h>>2]|0)+8>>2]=(c[(c[k>>2]|0)+8>>2]|0)+(c[j>>
;2]|0);i=g;return}function um(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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+44|0;k=p+40|0;s=p+36|0;g=p+32|0;r=p+28|0;q=p+24|0;t=p+20|0;h=p+16|0;n=p+12|0;o=p+8|0;j=p+4|0;l=p;c[k>>
2]=a;c[s>>2]=b;c[g>>2]=d;c[r>>2]=e;c[q>>2]=f;c[t>>2]=c[(c[k>>2]|0)+112
>>2];c[h>>2]=(c[t>>2]|0)+40+((c[s>>2]|0)*396|0);c[n>>2]=c[g>>2];c[o
x3e;>2]=0;c[j>>2]=(c[s>>2]|0)==1&1;c[r>>2]=c[r>>2];c[q>>2]=c[q>
x3e;2];if(!(c[(c[k>>2]|0)+108>>2]&4)){c[m>>2]=c[g>>2];t=c[m>>2]|0;i=p;return
t|0}if((c[n>>2]|0)<0){c[n>>2]=0-(c[g>>2]|0);c[o>>2]=1}if(c[j>>2]|0?!(c[(
c[k>>2]|0)+108>>2]&2|0):0)b=9;else b=7;do if((b|0)==7){if((c[j>>2]|0)==0?(c[(c[k>>2
]|0)+108>>2]&1|0)==0:0){b=9;break}c[n>>2]=vm((c[h>>2]|0)+12|0,c[(c[h>>2]|0)+8>
x3e;2]|0,c[n>>2]|0)|0;if(c[j>>2]|0)if((c[n>>2]|0)>=64){c[n>>2]=(c[n>>2]|0
)+16&-64;break}else{c[n>>2]=64;break}g=c[n>>2]|0;if(c[(c[k>>2]|0)+108>>2]&8|0)
if((g|0)<64){c[n>>2]=64;break}else{c[n>>2]=(c[n>>2]|0)+32&-64;break}e=c[n>>2]|
0;if((g|0)<48){c[n>>2]=e+64>>1;break}g=c[n>>2]|0;if((e|0)<128){c[n>>2]=g+22&
;-64;break}else{c[n>>2]=g+32&-64;break}}while(0);do if((b|0)==9){if((c[(c[h>>2]|0)+8>>2]|0)
x3e;>>0>0?(t=(c[n>>2]|0)-(c[(c[h>>2]|0)+12+4>>2]|0)|0,((((c[n>>2]|0)-(c[(
c[h>>2]|0)+12+4>>2]|0)|0)<0?0-t|0:t)|0)<40):0){t=c[(c[h>>2]|0)+12+4>>2]|0;c[n
x3e;>2]=t;c[n>>2]=(c[n>>2]|0)<48?48:t;break}g=c[n>>2]|0;if((c[n>>2]|0)<54
){c[n>>2]=(c[n>>2]|0)+((54-g|0)/2|0);break}if((g|0)<192){c[l>>2]=c[n>>2]&63;c[
n>>2]=c[n>>2]&-64;g=c[l>>2]|0;if((c[l>>2]|0)<10){c[n>>2]=(c[n>
x3e;2]|0)+g;break}if((g|0)<22){c[n>>2]=(c[n>>2]|0)+10;break}g=c[l>>2]|0;if((c[l>>2]|
0)<42){c[n>>2]=(c[n>>2]|0)+g;break}if((g|0)<54){c[n>>2]=(c[n>>2]|0)+54;break}else
{c[n>>2]=(c[n>>2]|0)+(c[l>>2]|0);break}}}while(0);if(c[o>>2]|0)c[n>>2]=0-(c[n
x3e;>2]|0);c[m>>2]=c[n>>2];t=c[m>>2]|0;i=p;return t|0}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,l=0,m=0,n=0,o=0;o=i;i=i+48|0;e=o+32|0;f=o+28|0;m=o+24|0;j=o+20|0;g=o+16|0;n=o+12|0;l=o+8|0;k=o+4|0;h=o;
c[e>>2]=a;c[f>>2]=b;c[m>>2]=d;c[g>>2]=98;c[n>>2]=c[m>>2];c[j>
x3e;2]=0;while(1){if((c[j>>2]|0)>=(c[f>>2]|0))break;c[k>>2]=c[(c[e>>2]|0)+((c[j>
;>2]|0)*12|0)+4>>2];c[h>>2]=(c[m>>2]|0)-(c[k>>2]|0);if((c[h>>2]|0)<0
)c[h>>2]=0-(c[h>>2]|0);if((c[h>>2]|0)<(c[g>>2]|0)){c[g>>2]=c[h>>
;2];c[n>>2]=c[k>>2]}c[j>>2]=(c[j>>2]|0)+1}c[l>>2]=(c[n>>2]|0)+32&
;-64;f=c[m>>2]|0;e=c[l>>2]|0;if((c[m>>2]|0)>=(c[n>>2]|0)){if((f|0)>=(e+48|0)){
n=c[m>>2]|0;i=o;return n|0}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}else{if((f|0)<
;=(e-48|0)){n=c[m>>2]|0;i=o;return n|0}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}return
0}function wm(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,y=0,
z=0;z=i;i=i+80|0;h=z+64|0;u=z+60|0;v=z+56|0;j=z+52|0;k=z+48|0;q=z+44|0;w=z+40|0;p=z+36|0;x=z+32|0;l=z+28|0;m=z+24|0;s=z+20|0;n=z
+16|0;t=z+12|0;y=z+8|0;o=z+4|0;r=z;c[h>>2]=a;c[u>>2]=b;c[v>>2]=e;c[j>>2]=f;c[k>>
;2]=g;c[r>>2]=64;do if(!(c[(c[h>>2]|0)+108>>2]&4)){if((d[(c[u>>2]|0)+12>>
0]|0)&1|0?(d[(c[v>>2]|0)+12>>0]|0)&1|0:0)if((c[k>>2]|0)==1){c[r>>2]=55;break}else
{c[r>>2]=49;break}if((c[k>>2]|0)==1){c[r>>2]=61;break}else{c[r>>2]=59;break}}while(0);c[
q>>2]=(c[(c[v>>2]|0)+4>>2]|0)-(c[(c[u>>2]|0)+4>>2]|0);c[w>>2]=um(c[h
>>2]|0,c[k>>2]|0,c[q>>2]|0,d[(c[u>>2]|0)+12>>0]|0,d[(c[v>>2]|0)+12
x3e;>0]|0)|0;c[p>>2]=(((c[(c[u>>2]|0)+4>>2]|0)+(c[(c[v>>2]|0)+4>>2]|0)|0)/
2|0)+(c[j>>2]|0);c[x>>2]=(c[p>>2]|0)-((c[w>>2]|0)/2|0);c[l>>2]=(c[x>>
;2]|0)+(c[w>>2]|0);c[m>>2]=(c[x>>2]|0)-(c[x>>2]&-64);c[n>>2]=(c[l>
x3e;2]|0)-(c[l>>2]&-64);c[s>>2]=64-(c[m>>2]|0);c[t>>2]=64-(c[n>>2]|0);c[y
>>2]=0;do if(!((c[m>>2]|0)==0|(c[n>>2]|0)==0)){if((c[w>>2]|0)<=(c[r>>2]|0
)){if((c[n>>2]|0)>=(c[w>>2]|0))break;if((c[s>>2]|0)<=(c[n>>2]|0)){c[y>>
;2]=c[s>>2];break}else{c[y>>2]=0-(c[n>>2]|0);break}}if((c[r>>2]|0)<64){if((c[m>
;>2]|0)>=(c[r>>2]|0))break;if((c[s>>2]|0)>=(c[r>>2]|0))break;if((c[n>>2]|
0)>=(c[r>>2]|0))break;if((c[t>>2]|0)>=(c[r>>2]|0))break}c[o>>2]=(c[w>>
;2]|0)%64|0;if((c[o>>2]|0)<32){if((c[s>>2]|0)<=(c[o>>2]|0))break;if((c[n>>2]|0
)<=(c[o>>2]|0))break}else c[o>>2]=64-(c[r>>2]|0);c[m>>2]=(c[r>>2]|0)-(c[s
>>2]|0);c[s>>2]=(c[s>>2]|0)-(c[o>>2]|0);c[t>>2]=(c[r>>2]|0)-(c[n>
;>2]|0);c[n>>2]=(c[n>>2]|0)-(c[o>>2]|0);if((c[m>>2]|0)<=(c[s>>2]|0))
c[s>>2]=0-(c[m>>2]|0);if((c[n>>2]|0)<=(c[t>>2]|0))c[t>>2]=0-(c[n>>
;2]|0);q=c[s>>2]|0;r=c[t>>2]|0;if((((c[s>>2]|0)<0?0-q|0:q)|0)<=(((c[t>>2]|0)
x3c;0?0-r|0:r)|0)){c[y>>2]=c[s>>2];break}else{c[y>>2]=c[t>>2];break}}while(0);do if(!(c[(
c[h>>2]|0)+108>>2]&4)){if((c[y>>2]|0)>14){c[y>>2]=14;break}if((c[y>>
2]|0)<-14)c[y>>2]=-14}while(0);c[x>>2]=(c[x>>2]|0)+(c[y>>2]|0);h=c[x>>2]|
0;if((c[(c[u>>2]|0)+4>>2]|0)<(c[(c[v>>2]|0)+4>>2]|0)){c[(c[u>>2]|0)+8>
;>2]=h;c[(c[v>>2]|0)+8>>2]=(c[x>>2]|0)+(c[w>>2]|0);y=c[y>>2]|0;i=z;return
y|0}else{c[(c[u>>2]|0)+8>>2]=h+(c[w>>2]|0);c[(c[v>>2]|0)+8>>2]=c[x>>
;2];y=c[y>>2]|0;i=z;return y|0}return 0}function xm(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;c[h>>2]=c[h>>2];c[(c[f>>2]|
0)+8>>2]=(c[(c[g>>2]|0)+8>>2]|0)+((c[(c[f>>2]|0)+4>>2]|0)-(c[(c[g>>2
]|0)+4>>2]|0));i=e;return}function ym(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;r=i;i=i+48|
0;g=r+36|0;j=r+32|0;s=r+28|0;h=r+24|0;m=r+20|0;l=r+16|0;q=r+40|0;p=r+12|0;n=r+8|0;k=r+4|0;o=r;c[g>>2]=d;c[j>>
;2]=f;c[s>>2]=(c[g>>2]|0)+48+((c[j>>2]|0)*28|0);c[h>>2]=c[(c[s>>2]|0)+20>
x3e;2];c[m>>2]=(c[h>>2]|0)+((c[(c[s>>2]|0)+12>>2]|0)*48|0);if((c[j>>2]|0)==0?c
[(c[g>>2]|0)+108>>2]&1|0:0)g=1;else if((c[j>>2]|0)==1)g=(c[(c[g>>2]|0)+108>>
;2]&2|0)!=0;else g=0;a[q>>0]=g&1;c[l>>2]=c[h>>2];while(1){if((c[l>>2]|0)>
x3e;>0>=(c[m>>2]|0)>>>0)break;c[p>>2]=c[(c[l>>2]|0)+40>>2];if(a
[q>>0]|0)do{c[n>>2]=c[(c[p>>2]|0)+40>>2];while(1){g=c[(c[l>>2]|0)+8>>
;2]|0;f=c[n>>2]|0;if(!(c[j>>2]|0)){c[f+16>>2]=g;s=c[n>>2]|0;b[s>>1]=e[s>
x3e;1]|64}else{c[f+20>>2]=g;s=c[n>>2]|0;b[s>>1]=e[s>>1]|128}if((c[n>>2]|0)==(c
[(c[p>>2]|0)+44>>2]|0))break;c[n>>2]=c[(c[n>>2]|0)+32>>2]}c[p>>2]=c[(
c[p>>2]|0)+16>>2]}while((c[p>>2]|0)!=(c[(c[l>>2]|0)+40>>2]|0));else{c[k>
x3e;2]=(c[(c[l>>2]|0)+8>>2]|0)-(c[(c[l>>2]|0)+4>>2]|0);do{c[o>>2]=c[(c[p>
x3e;2]|0)+40>>2];while(1){g=c[k>>2]|0;f=c[o>>2]|0;if(!(c[j>>2]|0)){s=f+16|0;c[s>>
;2]=(c[s>>2]|0)+g;s=c[o>>2]|0;b[s>>1]=e[s>>1]|64}else{s=f+20|0;c[s>>2]=(c[s>
;>2]|0)+g;s=c[o>>2]|0;b[s>>1]=e[s>>1]|128}if((c[o>>2]|0)==(c[(c[p>>2]|0)+
44>>2]|0))break;c[o>>2]=c[(c[o>>2]|0)+32>>2]}c[p>>2]=c[(c[p>>2]|0)+16
>>2]}while((c[p>>2]|0)!=(c[(c[l>>2]|0)+40>>2]|0))}c[l>>2]=(c[l>>2]|0
)+48}i=r;return}function zm(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=
jm(c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Am(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;km(c[f>>2]|0,c[e>>2]|0);i=d;return}function Bm(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=mm(c[f>>2]|0,c[e>>2]|0)|0;i=
d;return b|0}function Cm(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
x3e;>2]=b;c[f>>2]=d;b=nm(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return b|0}function Dm
(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;l=g+16|0;k=g+12|0;m=g+8|0;j=g+4|0;h=g;c[l>
;>2]=a;c[k>>2]=b;c[m>>2]=d;c[j>>2]=e;c[h>>2]=f;c[m>>2]=c[m>>2];
b=Em((c[l>>2]|0)+20|0,c[(c[k>>2]|0)+4>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=g;return
b|0}function Em(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;q=i;i=i+64|0;j=q+60|0;k=q+56|0;
f=q+52|0;l=q+48|0;m=q+44|0;n=q+40|0;h=q+36|0;p=q+8|0;o=q+4|0;g=q;c[k>>2]=a;c[f>>2]=b;c[l>>2]=d;c[m
>>2]=e;c[h>>2]=c[(c[f>>2]|0)+88>>2];if(!(c[h>>2]|0)){c[j>>2]=6;p=c[j
>>2]|0;i=q;return p|0};c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[p+16
x3e;>2]=0;c[p+20>>2]=0;c[p+24>>2]=0;c[p>>2]=c[f>>2];c[p+4>>2]=c[(c[h>
;>2]|0)+12+4>>2];c[p+12>>2]=0;c[p+8>>2]=c[(c[h>>2]|0)+12+8>>2];c[p+16>
;>2]=0;c[p+20>>2]=(c[m>>2]|0)>>>16&15;c[p+24>>2]=0;c[n>>2]=Fm(c
[k>>2]|0,c[f>>2]|0)|0;do if((c[n>>2]|0)==0?(c[g>>2]=0,c[n>>2]=Jm(c[(c[k>
x3e;2]|0)+4>>2]|0,c[l>>2]|0,c[g>>2]|0,o)|0,(c[n>>2]|0)==0):0){c[(c[k>>2]|0)+136
>>2]=c[o>>2];f=c[o>>2]|0;if(c[(c[c[o>>2]>>2]|0)+16>>2]|0)Ra[c[(c[f
x3e;>2]|0)+16>>2]&7](c[o>>2]|0,p);else{h=f+4|0;c[h>>2]=c[p>>2];c[h+4>>
;2]=c[p+4>>2];c[h+8>>2]=c[p+8>>2];c[h+12>>2]=c[p+12>>2];c[h+16>>2]=c
[p+16>>2];c[h+20>>2]=c[p+20>>2];c[h+24>>2]=c[p+24>>2]}c[m>>2]=c[m>
;>2]|2049;c[m>>2]=c[m>>2]&-5;if(c[(c[c[o>>2]>>2]|0)+24>>2]|0?(c[n>
;>2]=Ya[c[(c[c[o>>2]>>2]|0)+24>>2]&127]((c[k>>2]|0)+12|0,c[o>>2]|0)|
0,c[n>>2]|0):0)break;c[n>>2]=Km(c[k>>2]|0,p,c[l>>2]|0,c[m>>2]|0,0)|0}while(0);
c[j>>2]=c[n>>2];p=c[j>>2]|0;i=q;return p|0}function Fm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=
i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;c[c[d>>2]>>2]=c[e>
;>2];c[(c[d>>2]|0)+4>>2]=c[(c[e>>2]|0)+116>>2];dc(c[(c[d>>2]|0)+8>
x3e;2]|0);if(c[(c[d>>2]|0)+4>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[f>>2]=Gm(c[e>>
;2]|0,(c[d>>2]|0)+4|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[(c[e>>2]|0)+116>
;>2]=c[(c[d>>2]|0)+4>>2];c[(c[e>>2]|0)+116+4>>2]=35;a=c[f>>2]|0;i=g;return
a|0}function Gm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;e=h+12|0;f=h+8|0;j=h+4|0;g=h;c[d>>
2]=a;c[e>>2]=b;c[g>>2]=0;c[j>>2]=c[(c[d>>2]|0)+100>>2];c[g>>2]=bc(c[
j>>2]|0,28+(c[(c[d>>2]|0)+16>>2]|0)|0,f)|0;if((c[f>>2]|0)==0?(c[c[g>>2]>
x3e;2]=c[d>>2],c[(c[g>>2]|0)+4>>2]=c[(c[d>>2]|0)+16>>2],c[(c[g>>2]|0
)+8>>2]=(c[g>>2]|0)+28,c[f>>2]=Hm(c[g>>2]|0)|0,c[f>>2]|0):0){Im(c[g>>
;2]|0);c[g>>2]=0}c[c[e>>2]>>2]=c[g>>2];i=h;return c[f>>2]|0}function Hm(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;s=i;i=i+64|0;e=s+48|0;h=s+44|0;j=s+40|0;p=s+36|0;m=s+32|0;r=s+28|
0;n=s+24|0;g=s+20|0;q=s+16|0;f=s+12|0;k=s+8|0;l=s+4|0;o=s;c[e>>2]=b;c[h>>2]=0;c[j>>2]=c[c[e>
x3e;2]>>2];c[p>>2]=c[(c[j>>2]|0)+92>>2];c[m>>2]=c[(c[e>>2]|0)+8>
;>2];Ns(c[(c[e>>2]|0)+8>>2]|0,127,c[(c[e>>2]|0)+4>>2]|0)|0;c[h>>2]=Id(c[j
>>2]|0,1970170211)|0;a:do if(c[h>>2]|0)c[h>>2]=0;else{c[r>>2]=0;while(1){if(!(c[3900+(c[
r>>2]<<2)>>2]|0))break;c[g>>2]=c[3900+(c[r>>2]<<2)>>2];b:do
if(c[(c[g>>2]|0)+4>>2]|0){c[q>>2]=c[(c[g>>2]|0)+4>>2];while(1){if(!(c[c[q>
;>2]>>2]|0))break b;c[f>>2]=c[c[q>>2]>>2];c[k>>2]=Dc(c[j>>2]|0,
c[f>>2]|0)|0;if((c[k>>2]|0?(c[k>>2]|0)>>>0<(c[(c[e>>2]|0)+4>>
;2]|0)>>>0:0)?(d[(c[m>>2]|0)+(c[k>>2]|0)>>0]|0|0)==127:0)a[(c[m>>2]|0)+(c
[k>>2]|0)>>0]=c[r>>2];while(1){c[f>>2]=Md(c[j>>2]|0,c[f>>2]|0,k)|0;if
(!(c[k>>2]|0))break;if((c[f>>2]|0)>>>0>(c[(c[q>>2]|0)+4>>2]|0)>
x3e;>0)break;if((c[k>>2]|0)>>>0>=(c[(c[e>>2]|0)+4>>2]|0)>>>
;0)continue;if((d[(c[m>>2]|0)+(c[k>>2]|0)>>0]|0|0)!=127)continue;a[(c[m>>2]|0)+(c[k>
;>2]|0)>>0]=c[r>>2]}c[q>>2]=(c[q>>2]|0)+8}}while(0);c[r>>2]=(c[r>>
;2]|0)+1}c[n>>2]=48;while(1){if((c[n>>2]|0)>>>0>57)break a;c[l>>2]=Dc(c[j>
;>2]|0,c[n>>2]|0)|0;if(c[l>>2]|0?(c[l>>2]|0)>>>0<(c[(c[e>>2]|0)+
4>>2]|0)>>>0:0){r=(c[m>>2]|0)+(c[l>>2]|0)|0;a[r>>0]=d[r>>0]|0|128
}c[n>>2]=(c[n>>2]|0)+1}}while(0);c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[e>
x3e;2]|0)+4>>2]|0))break;if(((d[(c[m>>2]|0)+(c[o>>2]|0)>>0]|0)&-129|0)==127){r=(c[m
>>2]|0)+(c[o>>2]|0)|0;a[r>>0]=(d[r>>0]|0)&-128;r=(c[m>>2]|0)+(c[o>
x3e;2]|0)|0;a[r>>0]=d[r>>0]|0|2}c[o>>2]=(c[o>>2]|0)+1}Jd(c[j>>2]|0,c[p>
x3e;2]|0)|0;i=s;return c[h>>2]|0}function Im(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;f=g+4|0;d=
g;c[b>>2]=a;if(!(c[b>>2]|0)){i=g;return}c[e>>2]=c[(c[c[b>>2]>>2]|0)+100>
x3e;2];c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=4)break;if(c[(c[b>>2]|0)+12+(c[f
>>2]<<2)>>2]|0){c[d>>2]=c[3900+(c[f>>2]<<2)>>2];if(c[(c[d
x3e;>2]|0)+20>>2]|0)Va[c[(c[d>>2]|0)+20>>2]&63](c[(c[b>>2]|0)+12+(c[f>>
;2]<<2)>>2]|0);Fb(c[e>>2]|0,c[(c[b>>2]|0)+12+(c[f>>2]<<2)>>
;2]|0);c[(c[b>>2]|0)+12+(c[f>>2]<<2)>>2]=0}c[f>>2]=(c[f>>2]|0)+1}c[(
c[b>>2]|0)+4>>2]=0;c[(c[b>>2]|0)+8>>2]=0;c[c[b>>2]>>2]=0;Fb(c[e>
;>2]|0,c[b>>2]|0);c[b>>2]=0;i=g;return}function Jm(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;q=i;i=i+48|0;g=q+40|0;h=q+36|0;r=q+32|0;j=q+28|0;o=q+24|0;m=q+20|0;k=q+16|0;p=q+12|0;l=q+4|0;n=q;c[
g>>2]=a;c[h>>2]=b;c[r>>2]=e;c[j>>2]=f;c[o>>2]=0;c[p>>2]=c[r>>
;2]&15;c[q+8>>2]=5;c[l>>2]=0;if((c[h>>2]|0)>>>0>=(c[(c[g>>2]|0)+
4>>2]|0)>>>0){c[l>>2]=6;p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l
>>2]|0;i=q;return r|0}c[m>>2]=c[p>>2];if(!((c[m>>2]|0)!=0?((c[m>>2]|0)+1|0)>
;>>0<5:0))c[m>>2]=(d[(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]|0)>>0]|0)
x26;127;c[k>>2]=c[3900+(c[m>>2]<<2)>>2];if(!(c[p>>2]|0))c[p>>2]=c[c[
k>>2]>>2];c[o>>2]=c[(c[g>>2]|0)+12+(c[c[k>>2]>>2]<<2)>
;>2];if(c[o>>2]|0){p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l>>2]|0;i=q;return
r|0}c[n>>2]=c[(c[c[g>>2]>>2]|0)+100>>2];c[o>>2]=bc(c[n>>2]|0,c[(c[k
>>2]|0)+8>>2]|0,l)|0;if(c[l>>2]|0){p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p
;r=c[l>>2]|0;i=q;return r|0}c[c[o>>2]>>2]=c[k>>2];if(c[(c[k>>2]|0)+12>>
;2]|0?(c[l>>2]=Ya[c[(c[k>>2]|0)+12>>2]&127](c[o>>2]|0,c[c[g>>2]>>
;2]|0)|0,c[l>>2]|0):0){if(c[(c[k>>2]|0)+20>>2]|0)Va[c[(c[k>>2]|0)+20>>2]&
63](c[o>>2]|0);Fb(c[n>>2]|0,c[o>>2]|0);c[o>>2]=0;p=c[o>>2]|0;r=c[j>>
2]|0;c[r>>2]=p;r=c[l>>2]|0;i=q;return r|0}c[(c[g>>2]|0)+12+(c[c[k>>2]>>2]<
;<2)>>2]=c[o>>2];p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l>>2]|0;
i=q;return r|0}function Km(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;da=i;i=i+240|0;S=da+236|0;T=da+232|0;U=da+228|0;y=da+224|0;V=da+220|0;X=da+216|0;ea=da+212|0;Y=da+208|0;$=da+204|0;
Z=da+200|0;aa=da+196|0;_=da+192|0;l=da+176|0;r=da+168|0;q=da+164|0;p=da+160|0;u=da+156|0;x=da+152|0;m=da+148|0;n=da+144|0;o=da+140
|0;s=da+136|0;v=da+132|0;t=da+128|0;w=da+124|0;E=da+120|0;J=da+116|0;G=da+112|0;O=da+108|0;P=da+104|0;M=da+96|0;N=da+88|0;Q=da+84
|0;R=da+80|0;I=da+76|0;H=da+72|0;F=da+68|0;z=da+64|0;D=da+60|0;B=da+56|0;C=da+52|0;K=da+48|0;L=da+44|0;A=da+24|0;W=da+8|0;ba=da;
c[S>>2]=f;c[T>>2]=g;c[U>>2]=h;c[y>>2]=j;c[V>>2]=k;c[ea>>2]=c[c[S>
;>2]>>2];c[Y>>2]=c[(c[S>>2]|0)+8>>2];c[$>>2]=c[(c[S>>2]|0)+136
x3e;>2];c[Z>>2]=(c[S>>2]|0)+12;c[aa>>2]=c[(c[ea>>2]|0)+84>>2];c[_>
x3e;2]=c[(c[aa>>2]|0)+156>>2];c[X>>2]=Cb(c[ea>>2]|0,c[U>>2]|0,c[y>>2
]|0)|0;if(c[X>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}a[(c[S>>2]|0)+140>>0]=a[(c[_>>
;2]|0)+8>>0]|0;if(a[(c[S>>2]|0)+140>>0]|0){ea=(c[S>>2]|0)+144|0;g=(c[_>>2]|0)+
12|0;c[ea>>2]=c[g>>2];c[ea+4>>2]=c[g+4>>2];c[ea+8>>2]=c[g+8>>2];c[ea
+12>>2]=c[g+12>>2];ea=(c[S>>2]|0)+160|0;g=(c[_>>2]|0)+28|0;c[ea>>2]=c[g>
x3e;2];c[ea+4>>2]=c[g+4>>2];ea=(c[S>>2]|0)+144|0;c[l>>2]=c[ea>>2];c[l+4>
x3e;2]=c[ea+4>>2];c[l+8>>2]=c[ea+8>>2];c[l+12>>2]=c[ea+12>>2];Wb(l)|0;Lb((c[S
x3e;>2]|0)+160|0,l)}c[(c[aa>>2]|0)+56>>2]=c[(c[aa>>2]|0)+24+16>>2];c[(c[aa>>
;2]|0)+60>>2]=c[(c[aa>>2]|0)+24+28>>2];k=c[(c[aa>>2]|0)+72>>2]|0;a:do if((k|0)
x3e;=1869968492){switch(k|0){case 1869968492:break;default:{ca=49;break a}}if(a[(c[S>>2]|0)+140>>0]|0)Nb((c[
aa>>2]|0)+108|0,c[(c[S>>2]|0)+160>>2]|0,c[(c[S>>2]|0)+160+4>>2]|0);if(((b[(c[aa
>>2]|0)+108+2>>1]|0)+4|0)!=0?((b[(c[Y>>2]|0)+20+2>>1]|0)+(b[(c[Y>>2]|0)+56+2
x3e;>1]|0)+((b[(c[aa>>2]|0)+108+2>>1]|0)+4)|0)>>>0>(c[(c[Y>>2]|0)+4>
x3e;2]|0)>>>0:0)ca=11;else if((b[(c[aa>>2]|0)+108>>1]|0)!=0?((b[(c[Y>>2]|0)+20>
;>1]|0)+(b[(c[Y>>2]|0)+56>>1]|0)+(b[(c[aa>>2]|0)+108>>1]|0)|0)>>>0
x3e;(c[(c[Y>>2]|0)+8>>2]|0)>>>0:0)ca=11;else k=0;if((ca|0)==11)k=kc(c[Y>>2]|0,(b[(c
[aa>>2]|0)+108+2>>1]|0)+4|0,b[(c[aa>>2]|0)+108>>1]|0)|0;c[X>>2]=k;if(c[X>
x3e;2]|0){ea=c[X>>2]|0;i=da;return ea|0}Ss(c[(c[Y>>2]|0)+56+4>>2]|0,c[(c[aa>>2]|0)+108+4
>>2]|0,b[(c[aa>>2]|0)+108+2>>1]<<3|0)|0;Ss(c[(c[Y>>2]|0)+56+12>>2]|0
,c[(c[aa>>2]|0)+108+12>>2]|0,b[(c[aa>>2]|0)+108>>1]<<1|0)|0;Ss(c[(c[Y>>
;2]|0)+56+8>>2]|0,c[(c[aa>>2]|0)+108+8>>2]|0,b[(c[aa>>2]|0)+108+2>>1]|0)|0;b[(
c[Y>>2]|0)+56+2>>1]=b[(c[aa>>2]|0)+108+2>>1]|0;b[(c[Y>>2]|0)+56>>1]=
b[(c[aa>>2]|0)+108>>1]|0;c[(c[S>>2]|0)+168>>2]=c[(c[Z>>2]|0)+8>>2];c
[(c[S>>2]|0)+168+4>>2]=c[(c[Z>>2]|0)+16>>2];ea=Mb(c[(c[aa>>2]|0)+24+16>
x3e;2]|0,c[(c[Z>>2]|0)+4>>2]|0)|0;c[(c[S>>2]|0)+176>>2]=ea+(c[(c[Z>>2]|0)+8>
;>2]|0);c[(c[S>>2]|0)+176+4>>2]=c[(c[Z>>2]|0)+16>>2];if(b[(c[aa>>2]|0)+108
+2>>1]|0){if(c[(c[c[$>>2]>>2]|0)+28>>2]|0)Oa[c[(c[c[$>>2]>>2]|0)+28
x3e;>2]&63](c[Z>>2]|0,(c[Y>>2]|0)+56|0,c[$>>2]|0)|0;do if((c[(c[T>>2]|0)+20>
;>2]|0)!=1){c[m>>2]=(c[Z>>2]|0)+48;c[n>>2]=c[(c[m>>2]|0)+20>>2];c[o>
x3e;2]=(c[n>>2]|0)+((c[(c[m>>2]|0)+12>>2]|0)*48|0)+-48;if((c[(c[m>>2]|0)+12>>2
]|0)>1?(c[(c[Z>>2]|0)+104>>2]&4|0)==0:0){c[r>>2]=(c[(c[S>>2]|0)+176>>
;2]|0)-(c[(c[o>>2]|0)+4>>2]|0);c[q>>2]=c[(c[n>>2]|0)+4>>2];c[p>>2]=c
[(c[n>>2]|0)+8>>2];c[u>>2]=(c[p>>2]|0)-(c[q>>2]|0);c[x>>2]=(c[(c[o
x3e;>2]|0)+8>>2]|0)+(c[r>>2]|0);if((c[q>>2]|0)<24)c[u>>2]=(c[u>>2]|0
)-8;if((c[r>>2]|0)<24)c[x>>2]=(c[x>>2]|0)+8;c[(c[S>>2]|0)+168>>2]=(c[u>
;>2]|0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[x>>2]|0)+32&-64;if((c[q>>2]|0)>
;0?(c[(c[S>>2]|0)+168>>2]|0)>=(c[p>>2]|0):0){ea=(c[S>>2]|0)+168|0;c[ea>>2
]=(c[ea>>2]|0)-64}if((c[r>>2]|0)>0?(c[(c[S>>2]|0)+176>>2]|0)<=(c[(c[o>>
;2]|0)+8>>2]|0):0){ea=(c[S>>2]|0)+176|0;c[ea>>2]=(c[ea>>2]|0)+64}c[(c[aa>>2]|0
)+144>>2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[u>>2]|0);c[(c[aa>>2]|0)+148>>
2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[x>>2]|0);break}c[s>>2]=c[(c[S>>2]|0)+168>
x3e;2];c[v>>2]=c[(c[S>>2]|0)+176>>2];c[(c[S>>2]|0)+168>>2]=(c[s>>2]|
0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[v>>2]|0)+32&-64;c[(c[aa>>2]|0)+144>>
;2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[s>>2]|0);c[(c[aa>>2]|0)+148>>2]=(c[(c[S>
x3e;2]|0)+176>>2]|0)-(c[v>>2]|0)}else{c[t>>2]=c[(c[S>>2]|0)+168>>2];c[w>
x3e;2]=c[(c[S>>2]|0)+176>>2];c[(c[S>>2]|0)+168>>2]=(c[t>>2]|0)+(c[(c[Z>
x3e;2]|0)+116>>2]|0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[w>>2]|0)+(c[(c[Z>>2]|
0)+120>>2]|0)+32&-64;c[(c[aa>>2]|0)+144>>2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[
t>>2]|0);c[(c[aa>>2]|0)+148>>2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[w>>2]|0
)}while(0);oc(c[Y>>2]|0)}}else{switch(k|0){case 1668246896:break;default:{ca=49;break a}}c[J>>2]=c[(c[aa>
;>2]|0)+128>>2];c[O>>2]=b[(c[Y>>2]|0)+20+2>>1];c[X>>2]=lc(c[Y>>
2]|0,c[J>>2]|0)|0;if(c[X>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}Ss(c[(c[Y>>2]|0)+56+32>
;>2]|0,c[(c[aa>>2]|0)+132>>2]|0,c[J>>2]<<5|0)|0;c[(c[Y>>2]|0)+56+28>
x3e;2]=c[J>>2];c[G>>2]=c[(c[Y>>2]|0)+20+28>>2];c[E>>2]=0;while(1){if((c[E>
;>2]|0)>>>0>=(c[J>>2]|0)>>>0)break a;c[P>>2]=(c[(c[Y>>2]|0
)+20+32>>2]|0)+(c[G>>2]<<5)+(c[E>>2]<<5);ea=(c[S>>2]|0)+168|0;c[M>
;>2]=c[ea>>2];c[M+4>>2]=c[ea+4>>2];ea=(c[S>>2]|0)+176|0;c[N>>2]=c[ea>
;>2];c[N+4>>2]=c[ea+4>>2];c[F>>2]=b[(c[Y>>2]|0)+20+2>>1];c[X>>2
]=Km(c[S>>2]|0,c[T>>2]|0,c[c[P>>2]>>2]|0,c[y>>2]|0,(c[V>>2]|0)+1|0)|
0;if(c[X>>2]|0){ca=63;break}c[P>>2]=(c[(c[Y>>2]|0)+20+32>>2]|0)+(c[G>>2]<
x3c;5)+(c[E>>2]<<5);k=(c[S>>2]|0)+168|0;if(e[(c[P>>2]|0)+4>>1]&512|0){c[M
>>2]=c[k>>2];c[M+4>>2]=c[k+4>>2];ea=(c[S>>2]|0)+176|0;c[N>>2]=c[ea
x3e;>2];c[N+4>>2]=c[ea+4>>2]}else{c[k>>2]=c[M>>2];c[k+4>>2]=c[M+4>
x3e;2];ea=(c[S>>2]|0)+176|0;c[ea>>2]=c[N>>2];c[ea+4>>2]=c[N+4>>2]}c[I>>
;2]=b[(c[Y>>2]|0)+20+2>>1];c[H>>2]=(c[I>>2]|0)-(c[F>>2]|0);b:do if(e[(c[P>
;>2]|0)+4>>1]&200|0){c[z>>2]=(c[(c[Y>>2]|0)+20+4>>2]|0)+(c[F>>2]<
;<3);c[D>>2]=(c[z>>2]|0)+(c[H>>2]<<3);while(1){if((c[z>>2]|0)>>
x3e;0>=(c[D>>2]|0)>>>0)break b;Lb(c[z>>2]|0,(c[P>>2]|0)+16|0);c[z>>2
]=(c[z>>2]|0)+8}}while(0);k=c[(c[P>>2]|0)+8>>2]|0;if(e[(c[P>>2]|0)+4>>1]&
2|0){ea=Mb(k,c[(c[Z>>2]|0)+4>>2]|0)|0;c[Q>>2]=ea+(c[(c[Z>>2]|0)+8>>2]|0);ea=Mb
(c[(c[P>>2]|0)+12>>2]|0,c[(c[Z>>2]|0)+12>>2]|0)|0;c[R>>2]=ea+(c[(c[Z>>
;2]|0)+16>>2]|0);c[Q>>2]=(c[Q>>2]|0)+32&-64;c[R>>2]=(c[R>>2]|0)+32&-
64}else{c[B>>2]=k;c[C>>2]=c[(c[P>>2]|0)+12>>2];if(((c[O>>2]|0)+(c[B>>
;2]|0)|0)>>>0>=(c[F>>2]|0)>>>0)break;if((c[C>>2]|0)>>>0>
;=(c[H>>2]|0)>>>0)break;c[C>>2]=(c[C>>2]|0)+(c[F>>2]|0);c[K>>2]=(
c[(c[Y>>2]|0)+20+4>>2]|0)+(c[O>>2]<<3)+(c[B>>2]<<3);c[L>>2
]=(c[(c[Y>>2]|0)+20+4>>2]|0)+(c[O>>2]<<3)+(c[C>>2]<<3);c[Q>>
;2]=(c[c[K>>2]>>2]|0)-(c[c[L>>2]>>2]|0);c[R>>2]=(c[(c[K>>2]|0)+4>
;>2]|0)-(c[(c[L>>2]|0)+4>>2]|0)}ea=(c[Y>>2]|0)+20|0;c[A>>2]=c[ea>>2];c[A+
4>>2]=c[ea+4>>2];c[A+8>>2]=c[ea+8>>2];c[A+12>>2]=c[ea+12>>2];c[A+16
x3e;>2]=c[ea+16>>2];ea=A+4|0;c[ea>>2]=(c[ea>>2]|0)+(c[F>>2]<<3);b[A+2>
;>1]=c[H>>2];Nb(A,c[Q>>2]|0,c[R>>2]|0);c[E>>2]=(c[E>>2]|0)+1}if((ca|0)==63
){ea=c[X>>2]|0;i=da;return ea|0}c[X>>2]=21;ea=c[X>>2]|0;i=da;return ea|0}while(0);if((ca|0)==49)c[
X>>2]=7;if(c[V>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}c[ba>>2]=(c[(c[aa>>2]|0)+24
+20>>2]|0)-(c[(c[aa>>2]|0)+24+8>>2]|0);c[ba+4>>2]=(c[(c[aa>>2]|0)+24+24>
x3e;2]|0)-(c[(c[aa>>2]|0)+24+12>>2]|0);c[ba>>2]=Mb(c[ba>>2]|0,c[(c[$>>2]|0)+4+
4>>2]|0)|0;c[ba+4>>2]=Mb(c[ba+4>>2]|0,c[(c[$>>2]|0)+4+8>>2]|0)|0;if(a[(c[S>
;>2]|0)+140>>0]|0){Kb((c[Y>>2]|0)+20|0,(c[S>>2]|0)+144|0);Lb(ba,(c[S>>2]|0)+144|0)}
if(c[(c[S>>2]|0)+168>>2]|0)Nb((c[Y>>2]|0)+20|0,0-(c[(c[S>>2]|0)+168>>2]|0)|0,0
);_d((c[Y>>2]|0)+20|0,W);c[W>>2]=c[W>>2]&-64;c[W+4>>2]=c[W+4>>2]&-64
;c[W+8>>2]=(c[W+8>>2]|0)+63&-64;c[W+12>>2]=(c[W+12>>2]|0)+63&-64;c[(c[aa>
x3e;2]|0)+24>>2]=(c[W+8>>2]|0)-(c[W>>2]|0);c[(c[aa>>2]|0)+24+4>>2]=(c[W+12>
;>2]|0)-(c[W+4>>2]|0);c[(c[aa>>2]|0)+24+8>>2]=c[W>>2];c[(c[aa>>2]|0)+24+12
>>2]=c[W+12>>2];c[(c[aa>>2]|0)+24+20>>2]=(c[W>>2]|0)+(c[ba>>2]|0)&
;-64;c[(c[aa>>2]|0)+24+24>>2]=(c[W+12>>2]|0)+(c[ba+4>>2]|0)&-64;do if(!(c[(c[(c[aa
x3e;>2]|0)+4>>2]|0)+8>>2]&4|0)){if((Lm(c[(c[S>>2]|0)+4>>2]|0,c[U>>2]|
0)|0)&255|0?d[(c[$>>2]|0)+32>>0]|0:0){ca=58;break}if(c[(c[aa>>2]|0)+24+16>>2]|0)c[(
c[aa>>2]|0)+24+16>>2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[(c[S>>2]|0)+168>>
2]|0)}else ca=58;while(0);if((ca|0)==58){ea=Mb(c[(c[aa>>2]|0)+24+16>>2]|0,c[(c[$>>2]|0)+4+4>
x3e;2]|0)|0;c[(c[aa>>2]|0)+24+16>>2]=ea;c[(c[aa>>2]|0)+144>>2]=0;c[(c[aa>>2]|0
)+148>>2]=0}ea=Mb(c[(c[aa>>2]|0)+24+28>>2]|0,c[(c[$>>2]|0)+4+8>>2]|0)|0;c[(c[aa
>>2]|0)+24+28>>2]=ea;c[(c[aa>>2]|0)+24+16>>2]=(c[(c[aa>>2]|0)+24+16>>
;2]|0)+32&-64;c[(c[aa>>2]|0)+24+28>>2]=(c[(c[aa>>2]|0)+24+28>>2]|0)+32&-64;dc(
c[c[_>>2]>>2]|0);c[X>>2]=pc(c[c[_>>2]>>2]|0,c[Y>>2]|0)|0;if(c[X>
;>2]|0){ea=c[X>>2]|0;i=da;return ea|0}ea=(c[aa>>2]|0)+108|0;ca=(c[c[_>>2]>>2]|0)+20
|0;c[ea>>2]=c[ca>>2];c[ea+4>>2]=c[ca+4>>2];c[ea+8>>2]=c[ca+8>>2];c[ea
+12>>2]=c[ca+12>>2];c[ea+16>>2]=c[ca+16>>2];c[(c[aa>>2]|0)+72>>2]=1869968492
;ea=c[X>>2]|0;i=da;return ea|0}function Lm(b,e){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[g
x3e;>2]=b;c[h>>2]=e;if((c[h>>2]|0)>>>0<(c[(c[g>>2]|0)+4>>2]|0)
x3e;>>0){a[f>>0]=(d[(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]|0)>>0]|0)&
128;b=a[f>>0]|0;i=j;return b|0}else{a[f>>0]=0;b=a[f>>0]|0;i=j;return b|0}return 0}function Mm(a){a
=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Nm((c[d>>2]|0)+20|0,c[c[(c[d>>2]|0)+4>>2]
x3e;>2]|0)|0;i=b;return a|0}function Nm(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
x3e;>2]=b;Ns(c[e>>2]|0,0,184)|0;Hl((c[e>>2]|0)+12|0,c[f>>2]|0);b=ac(c[f>>2]|0,(c[e
x3e;>2]|0)+8|0)|0;i=d;return b|0}function Om(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Pm((c[d>>2
]|0)+20|0);i=b;return}function Pm(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Ol((c[d>>2]|0)+12|0);c[c[d
>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;fc(c[(c[d>>2]|0)+8>>2]|0);c[(c[d>
;>2]|0)+8>>2]=0;i=b;return}function Qm(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
x3e;>2]|0)+108|0}function Rm(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)+120
|0}function Sm(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)+148|0}function Tm(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]=c[(c[d>>2]|0)+8>
x3e;2];c[e>>2]=(c[d>>2]|0)+20;Um((c[d>>2]|0)+20|0,c[f>>2]|0)|0;Vm((c[d>>2]|0)+
108|0);bn((c[d>>2]|0)+120|0);c[(c[d>>2]|0)+120>>2]=c[e>>2];ao((c[d>>2]|0)+148|
0);c[(c[d>>2]|0)+148>>2]=c[e>>2];i=b;return 0}function Um(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i
+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;a=c[d>>2]|0;b=a+88|0;do{c[a>>2]=0;a=a+4|0}while((a
|0)<(b|0));c[c[d>>2]>>2]=c[e>>2];i=f;return 0}function Vm(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]=45;c[(c[d>>2]|0)+4>>2]=24;c[(c[d>>2]|0)+8
>>2]=36;i=b;return}function Wm(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;t=i;i=i+48
|0;h=t+40|0;j=t+36|0;k=t+32|0;p=t+28|0;o=t+24|0;l=t+20|0;q=t+16|0;m=t+12|0;r=t+8|0;n=t+4|0;s=t;c[h>>2]=a;c[j>>
;2]=f;c[k>>2]=g;c[p>>2]=0;c[p>>2]=bc(c[h>>2]|0,2496,o)|0;if(c[o>>2]|0){r=c[p
x3e;>2]|0;s=c[k>>2]|0;c[s>>2]=r;s=c[o>>2]|0;i=t;return s|0}c[c[p>>2]>>2]=
c[h>>2];c[m>>2]=(c[p>>2]|0)+4+204;c[r>>2]=(c[m>>2]|0)+4;c[c[r>>2]>
;>2]=e[(c[j>>2]|0)+120>>1];c[r>>2]=(c[r>>2]|0)+12;c[q>>2]=(c[j>>
;2]|0)+128;c[l>>2]=d[(c[j>>2]|0)+124>>0];while(1){if((c[l>>2]|0)>>>0<
;=0)break;c[c[r>>2]>>2]=b[c[q>>2]>>1];c[r>>2]=(c[r>>2]|0)+12;c[q>
;>2]=(c[q>>2]|0)+2;c[l>>2]=(c[l>>2]|0)+-1}c[c[m>>2]>>2]=(d[(c[j>>
;2]|0)+124>>0]|0)+1;c[n>>2]=(c[p>>2]|0)+4;c[s>>2]=(c[n>>2]|0)+4;c[c[s>>
;2]>>2]=e[(c[j>>2]|0)+122>>1];c[s>>2]=(c[s>>2]|0)+12;c[q>>2]=(c[j>
;>2]|0)+154;c[l>>2]=d[(c[j>>2]|0)+125>>0];while(1){if((c[l>>2]|0)>>>
0<=0)break;c[c[s>>2]>>2]=b[c[q>>2]>>1];c[s>>2]=(c[s>>2]|0)+12;c
[q>>2]=(c[q>>2]|0)+2;c[l>>2]=(c[l>>2]|0)+-1}c[c[n>>2]>>2]=(d[(c[j>
;>2]|0)+125>>0]|0)+1;Xm((c[p>>2]|0)+412|0,d[(c[j>>2]|0)+8>>0]|0,(c[j>>2]|
0)+12|0,d[(c[j>>2]|0)+9>>0]|0,(c[j>>2]|0)+40|0,c[(c[j>>2]|0)+116>>2]|0,0);Xm((
c[p>>2]|0)+412|0,d[(c[j>>2]|0)+10>>0]|0,(c[j>>2]|0)+60|0,d[(c[j>>2]|0)+11>
;>0]|0,(c[j>>2]|0)+88|0,c[(c[j>>2]|0)+116>>2]|0,1);c[(c[p>>2]|0)+412+2064>>
;2]=c[(c[j>>2]|0)+108>>2];c[(c[p>>2]|0)+412+2068>>2]=c[(c[j>>2]|0)+112>
x3e;2];c[(c[p>>2]|0)+412+2076>>2]=c[(c[j>>2]|0)+116>>2];c[(c[p>>2]|0)+4+196>
;>2]=0;c[(c[p>>2]|0)+4+200>>2]=0;c[(c[p>>2]|0)+4+204+196>>2]=0;c[(c[p>>2]|
0)+4+204+200>>2]=0;r=c[p>>2]|0;s=c[k>>2]|0;c[s>>2]=r;s=c[o>>2]|0;i=t;return s|
0}function Xm(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;C=i;i=i+80|0;j=C+76|0;t=C+72|0;k=C+68|0;l=C+64|0;m=C+60|0;u=C+56|0;D=C+52|0;q=C+48|0;w=C+44|0;n=C
+40|0;x=C+36|0;r=C+32|0;o=C+28|0;s=C+24|0;p=C+20|0;z=C+16|0;A=C+12|0;v=C+8|0;y=C+4|0;B=C;c[j>>2]=a;c[t>>2]=b
;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[u>>2]=g;c[D>>2]=h;d=c[j>>2]|0;if(c[
D>>2]|0){c[q>>2]=d+1032;c[w>>2]=(c[j>>2]|0)+1548}else{c[q>>2]=d;c[w>>
;2]=(c[j>>2]|0)+516}c[c[q>>2]>>2]=0;c[c[w>>2]>>2]=0;Ym(c[j>>2]|0,0,c
[t>>2]|0,c[k>>2]|0,c[q>>2]|0,c[w>>2]|0);Ym(c[j>>2]|0,1,c[l>>2]|0,c[m
>>2]|0,c[q>>2]|0,c[w>>2]|0);c[n>>2]=c[c[q>>2]>>2];c[x>>2]=
c[c[w>>2]>>2];a:do if((c[n>>2]|0)>0){c[r>>2]=(c[q>>2]|0)+4;c[t>>
;2]=c[n>>2];while(1){if((c[t>>2]|0)>>>0<=0)break a;if((c[t>>2]|0)>>
x3e;0>1?(c[o>>2]=(c[(c[r>>2]|0)+32>>2]|0)-(c[c[r>>2]>>2]|0),(c[(c[r>
x3e;2]|0)+4>>2]|0)>(c[o>>2]|0)):0)c[(c[r>>2]|0)+4>>2]=c[o>>2];c[(c[r>
;>2]|0)+12>>2]=c[c[r>>2]>>2];c[(c[r>>2]|0)+8>>2]=(c[(c[r>>2]|0)+
4>>2]|0)+(c[c[r>>2]>>2]|0);c[t>>2]=(c[t>>2]|0)+-1;c[r>>2]=(c[r>
x3e;2]|0)+32}}while(0);b:do if((c[x>>2]|0)>0){c[s>>2]=(c[w>>2]|0)+4;c[t>>2]=c[x>
;>2];while(1){if((c[t>>2]|0)>>>0<=0)break b;if((c[t>>2]|0)>>>0>
1?(c[p>>2]=(c[c[s>>2]>>2]|0)-(c[(c[s>>2]|0)+32>>2]|0),(c[(c[s>>2]|0)+
4>>2]|0)<(c[p>>2]|0)):0)c[(c[s>>2]|0)+4>>2]=c[p>>2];c[(c[s>>2]|
0)+8>>2]=c[c[s>>2]>>2];c[(c[s>>2]|0)+12>>2]=(c[(c[s>>2]|0)+4>
x3e;2]|0)+(c[c[s>>2]>>2]|0);c[t>>2]=(c[t>>2]|0)+-1;c[s>>2]=(c[s>>2]|
0)+32}}while(0);c[B>>2]=(c[q>>2]|0)+4;c[t>>2]=c[n>>2];c[z>>2]=1;while(1){if((c
[z>>2]|0)<0)break;if((c[t>>2]|0)>>>0>0){D=(c[B>>2]|0)+12|0;c[D>>
;2]=(c[D>>2]|0)-(c[u>>2]|0);c[A>>2]=c[(c[B>>2]|0)+8>>2];c[t>>2]=(c[t
>>2]|0)+-1;while(1){if((c[t>>2]|0)>>>0<=0)break;c[v>>2]=c[(c[B>>2]|0
)+32+12>>2];c[y>>2]=(c[v>>2]|0)-(c[A>>2]|0);d=c[A>>2]|0;if((c[y>>2]|
0)<(c[u>>2]<<1|0)){D=d+((c[y>>2]|0)/2|0)|0;c[(c[B>>2]|0)+32+12>>2]=D;c[(c
[B>>2]|0)+8>>2]=D}else{c[(c[B>>2]|0)+8>>2]=d+(c[u>>2]|0);c[(c[B>>2]|
0)+32+12>>2]=(c[v>>2]|0)-(c[u>>2]|0)}c[B>>2]=(c[B>>2]|0)+32;c[A>>2]=
c[(c[B>>2]|0)+8>>2];c[t>>2]=(c[t>>2]|0)+-1}c[(c[B>>2]|0)+8>>2]=(c[A
x3e;>2]|0)+(c[u>>2]|0)}c[B>>2]=(c[w>>2]|0)+4;c[t>>2]=c[x>>2];c[z>>
;2]=(c[z>>2]|0)+-1}i=C;return}function Ym(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;A=i;i=i+64|0;B=A+48|0;l=A+54|0;m=A+44|0;n=A+40|0;o=A+36|0;p=A+32|0;s=A+28|0;r=A+24|
0;v=A+53|0;w=A+20|0;t=A+16|0;q=A+12|0;z=A+8|0;y=A+4|0;x=A+52|0;u=A;c[B>>2]=e;a[l>>0]=f;c[m>>2]=g;c
[n>>2]=h;c[o>>2]=j;c[p>>2]=k;c[s>>2]=c[c[o>>2]>>2];c[r>>2]=
c[c[p>>2]>>2];a[v>>0]=1;c[B>>2]=c[B>>2];while(1){if((c[m>>2]|0)>
;>>0<=1)break;a[x>>0]=0;if(!(d[v>>0]|0)?!(d[l>>0]|0):0){c[w>>2]=b[c[n>
;>2]>>1];c[t>>2]=(b[(c[n>>2]|0)+2>>1]|0)-(c[w>>2]|0);c[z>>2]=(c
[o>>2]|0)+4;c[q>>2]=c[s>>2];a[x>>0]=1}else{c[w>>2]=b[(c[n>>2]|0)+2
x3e;>1];c[t>>2]=(b[c[n>>2]>>1]|0)-(c[w>>2]|0);c[z>>2]=(c[p>>2]|
0)+4;c[q>>2]=c[r>>2];a[v>>0]=0}c[y>>2]=c[z>>2];while(1){if((c[q>>2]|
0)>>>0<=0){k=17;break}if((c[w>>2]|0)<(c[c[y>>2]>>2]|0)){k=17;break}if((c[
w>>2]|0)==(c[c[y>>2]>>2]|0)){k=11;break}c[q>>2]=(c[q>>2]|0)+-1;c[y>>
2]=(c[y>>2]|0)+32}do if((k|0)==11){c[u>>2]=c[(c[y>>2]|0)+4>>2];k=c[t>>2]|0;f=c
[u>>2]|0;if((c[t>>2]|0)<0){if((k|0)>=(f|0))break;c[(c[y>>2]|0)+4>>2]=c[t>
x3e;2];break}else{if((k|0)<=(f|0))break;c[(c[y>>2]|0)+4>>2]=c[t>>2];break}}else if((k|0)==17){
while(1){if((c[q>>2]|0)>>>0<=0)break;k=(c[y>>2]|0)+(c[q>>2]<<5)|0;B=(
c[y>>2]|0)+((c[q>>2]|0)-1<<5)|0;c[k>>2]=c[B>>2];c[k+4>>2]=c[B+4>
;>2];c[k+8>>2]=c[B+8>>2];c[k+12>>2]=c[B+12>>2];c[k+16>>2]=c[B+16>>
;2];c[k+20>>2]=c[B+20>>2];c[k+24>>2]=c[B+24>>2];c[k+28>>2]=c[B+28>>2
];c[q>>2]=(c[q>>2]|0)+-1;k=17}c[c[y>>2]>>2]=c[w>>2];c[(c[y>>2]|0)+4
x3e;>2]=c[t>>2];if(a[x>>0]|0){c[s>>2]=(c[s>>2]|0)+1;break}else{c[r>>2]=(c
[r>>2]|0)+1;break}}while(0);c[n>>2]=(c[n>>2]|0)+4;c[m>>2]=(c[m>>2]|0)-2}c[c[o
x3e;>2]>>2]=c[s>>2];c[c[p>>2]>>2]=c[r>>2];i=A;return}function Zm(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;n=i;i=i+32|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g
>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=(c[g>>
;2]|0)+4;c[m>>2]=(c[g>>2]|0)+4;if(!((c[h>>2]|0)==(c[(c[m>>2]|0)+196>>2]|0)?(c[
k>>2]|0)==(c[(c[m>>2]|0)+200>>2]|0):0)){c[(c[m>>2]|0)+196>>2]=c[h>>2
];c[(c[m>>2]|0)+200>>2]=c[k>>2];_m(c[g>>2]|0,0)}c[m>>2]=(c[g>>2]|0)+
4+204;if((c[j>>2]|0)==(c[(c[m>>2]|0)+196>>2]|0)?(c[l>>2]|0)==(c[(c[m>>2]|0)+200
>>2]|0):0){i=n;return 0}c[(c[m>>2]|0)+196>>2]=c[j>>2];c[(c[m>>2]|0)+200>
x3e;2]=c[l>>2];_m(c[g>>2]|0,1);$m((c[g>>2]|0)+412|0,c[j>>2]|0,c[l>>2]|0);i=n;return
0}function _m(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;k=i;i=i+48|0;o=k+36|0;n=k+32|0;l=k+28|0;m=k+24|0
;d=k+20|0;j=k+16|0;g=k+12|0;f=k+8|0;h=k+4|0;e=k;c[o>>2]=a;c[n>>2]=b;c[l>>2]=(c[o>>2]|0)+
4+((c[n>>2]|0)*204|0);c[m>>2]=c[l>>2];c[d>>2]=c[c[m>>2]>>2];c[j>
;>2]=(c[m>>2]|0)+4;c[g>>2]=c[j>>2];c[f>>2]=c[(c[l>>2]|0)+196>>2
];if((c[d>>2]|0)>>>0<=0){i=k;return}o=Mb(c[c[j>>2]>>2]|0,c[f>>2]|0)|
0;c[(c[j>>2]|0)+4>>2]=o;c[(c[j>>2]|0)+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+
32&-64;c[j>>2]=(c[j>>2]|0)+12;c[d>>2]=(c[d>>2]|0)+-1;while(1){if((c[d>>2]|
0)>>>0<=0)break;c[h>>2]=Mb(c[c[j>>2]>>2]|0,c[f>>2]|0)|0;c[e>>
;2]=(c[h>>2]|0)-(c[(c[g>>2]|0)+4>>2]|0);if((c[e>>2]|0)<0)c[e>>2]=0-(c[e
x3e;>2]|0);if((c[e>>2]|0)<128)c[h>>2]=c[(c[g>>2]|0)+4>>2];c[(c[j>>2]|
0)+4>>2]=c[h>>2];c[(c[j>>2]|0)+8>>2]=(c[h>>2]|0)+32&-64;c[d>>2]=(
c[d>>2]|0)+-1;c[j>>2]=(c[j>>2]|0)+12}i=k;return}function $m(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;w=i;i=i+64|0;l=w+56|0;m=w+52|0;f=w+48|0;g=w+44|0;s=w+40|0;h=w+36|0;j=
w+32|0;k=w+28|0;t=w+24|0;u=w+20|0;o=w+16|0;p=w+12|0;r=w+8|0;q=w+4|0;n=w;c[l>>2]=b;c[m>>2]=d;c[f>>2
]=e;c[h>>2]=0;b=c[m>>2]|0;if((c[m>>2]|0)>=34359738)a[(c[l>>2]|0)+2080>>0]=(
b|0)<((c[(c[l>>2]|0)+2064>>2]<<3|0)/125|0|0);else a[(c[l>>2]|0)+2080>>0]=(
b*125|0)<(c[(c[l>>2]|0)+2064>>2]<<3|0);c[j>>2]=c[(c[l>>2]|0)+2068>
x3e;2];while(1){if((c[j>>2]|0)>0)b=(Mb(c[j>>2]|0,c[m>>2]|0)|0)>32;else b=0;e=c[j>
x3e;2]|0;if(!b)break;c[j>>2]=e+-1}c[(c[l>>2]|0)+2072>>2]=e;c[s>>2]=0;while(1){if((c[s>
;>2]|0)>>>0>=4)break;switch(c[s>>2]|0){case 0:{c[h>>2]=c[l>>2];break}case
1:{c[h>>2]=(c[l>>2]|0)+516;break}case 2:{c[h>>2]=(c[l>>2]|0)+1032;break}default:c[h>
;>2]=(c[l>>2]|0)+1548}c[k>>2]=(c[h>>2]|0)+4;c[g>>2]=c[c[h>>2]>>
2];while(1){if((c[g>>2]|0)>>>0<=0)break;j=Mb(c[(c[k>>2]|0)+8>>2]|0,c[m>
x3e;2]|0)|0;c[(c[k>>2]|0)+28>>2]=j+(c[f>>2]|0);j=Mb(c[(c[k>>2]|0)+12>>2]|0,c[m
>>2]|0)|0;c[(c[k>>2]|0)+24>>2]=j+(c[f>>2]|0);j=Mb(c[c[k>>2]>>2]|0,c[
m>>2]|0)|0;c[(c[k>>2]|0)+16>>2]=j+(c[f>>2]|0);j=Mb(c[(c[k>>2]|0)+4>>
2]|0,c[m>>2]|0)|0;c[(c[k>>2]|0)+20>>2]=j;c[(c[k>>2]|0)+16>>2]=(c[(c[k>>
;2]|0)+16>>2]|0)+32&-64;c[g>>2]=(c[g>>2]|0)+-1;c[k>>2]=(c[k>>2]|0)+32}c[s
>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=2)break;b=
c[l>>2]|0;if(!(c[s>>2]|0)){c[r>>2]=b;c[q>>2]=(c[l>>2]|0)+1032}else{c[r>
x3e;2]=b+516;c[q>>2]=(c[l>>2]|0)+1548}c[t>>2]=(c[r>>2]|0)+4;c[o>>2]=c[c[r>
;>2]>>2];while(1){if((c[o>>2]|0)>>>0<=0)break;c[u>>2]=(c[q>>2]|
0)+4;c[p>>2]=c[c[q>>2]>>2];while(1){if((c[p>>2]|0)>>>0<=0)break;c[n
x3e;>2]=(c[c[t>>2]>>2]|0)-(c[c[u>>2]>>2]|0);if((c[n>>2]|0)<0)c[n>
;>2]=0-(c[n>>2]|0);if((Mb(c[n>>2]|0,c[m>>2]|0)|0)<64){v=32;break}c[p>>2]=(c[p
x3e;>2]|0)+-1;c[u>>2]=(c[u>>2]|0)+32}if((v|0)==32){v=0;c[(c[t>>2]|0)+28>>2]=c[(c[u
x3e;>2]|0)+28>>2];c[(c[t>>2]|0)+24>>2]=c[(c[u>>2]|0)+24>>2];c[(c[t>
x3e;2]|0)+16>>2]=c[(c[u>>2]|0)+16>>2];c[(c[t>>2]|0)+20>>2]=c[(c[u>>2
]|0)+20>>2]}c[o>>2]=(c[o>>2]|0)+-1;c[t>>2]=(c[t>>2]|0)+32}c[s>>2]=(c
[s>>2]|0)+1}i=w;return}function an(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(!(c[b>
;>2]|0)){i=e;return}c[d>>2]=c[c[b>>2]>>2];c[(c[b>>2]|0)+4>>2]=0;c[(c[b>
;>2]|0)+4+204>>2]=0;c[(c[b>>2]|0)+412>>2]=0;c[(c[b>>2]|0)+412+516>>2]=0;c
[(c[b>>2]|0)+412+1032>>2]=0;c[(c[b>>2]|0)+412+1548>>2]=0;Fb(c[d>>2]|0,c[b>
;>2]|0);c[b>>2]=0;i=e;return}function bn(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=b;b=c[e>
;>2]|0;d=b+28|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(d|0));c[(c[e>>2]|0)+4>>2]=37;c[(c[e>
;>2]|0)+8>>2]=108;c[(c[e>>2]|0)+12>>2]=13;c[(c[e>>2]|0)+16>>2]=14;c[(c[e
x3e;>2]|0)+20>>2]=5;c[(c[e>>2]|0)+24>>2]=24;i=f;return}function cn(a){a=a|0;var b=0,d=0;b=i;i
=i+16|0;d=b;c[d>>2]=a;dn(c[d>>2]|0,1);i=b;return}function dn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d
=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;b=(c[d>>2]|0)+4|0;if(((c[e>>2]|0)+-1|0)>>>
0<2){c[b>>2]=0;c[(c[d>>2]|0)+12>>2]=c[e>>2];en((c[d>>2]|0)+16|0);en((c[d
x3e;>2]|0)+16+36|0);i=f;return}else{c[b>>2]=6;c[(c[d>>2]|0)+12>>2]=c[e>>2];i=f;return
}}function en(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]=0;c[(c[d>>2]|
0)+12>>2]=0;c[(c[d>>2]|0)+24>>2]=0;i=b;return}function fn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0
,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;g=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[g>>2]=c[(c[d>
x3e;2]|0)+4>>2];if(c[g>>2]|0){h=c[g>>2]|0;i=j;return h|0}c[h>>2]=c[c[d>>2]>
;>2];c[f>>2]=(c[d>>2]|0)+16;c[g>>2]=gn(c[f>>2]|0,c[e>>2]|0,c[h>>
;2]|0)|0;if(c[g>>2]|0){h=c[g>>2]|0;i=j;return h|0}c[g>>2]=gn((c[f>>2]|0)+36|0,c[e>
x3e;2]|0,c[h>>2]|0)|0;h=c[g>>2]|0;i=j;return h|0}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+16|0;g=e+8|0;h=e+4|0;f=e;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;hn(c[g>>2]|0,c[h>>
;2]|0);d=jn((c[g>>2]|0)+24|0,c[f>>2]|0)|0;i=e;return d|0}function hn(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|0)+12
>>2];if((c[f>>2]|0)>>>0<=0){i=h;return}c[g>>2]=(c[(c[d>>2]|0)+12+8
x3e;>2]|0)+(c[f>>2]<<4)+-16;c[(c[g>>2]|0)+12>>2]=c[e>>2];i=h;return}function
jn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+16|0;e=k+12|0;g=k+8|0;h=k+4|0;f=k;c[d>>2]=a;c[e
x3e;>2]=b;c[f>>2]=0;c[g>>2]=(c[c[d>>2]>>2]|0)-1;while(1){if((c[g>>2]|0)
x3c;=0){j=9;break}c[h>>2]=(c[g>>2]|0)-1;while(1){if((c[h>>2]|0)<0)break;if(kn(c[d>>
2]|0,c[g>>2]|0,c[h>>2]|0)|0){j=6;break}c[h>>2]=(c[h>>2]|0)+-1}if((j|0)==6?(j=0,c[f>
x3e;2]=ln(c[d>>2]|0,c[h>>2]|0,c[g>>2]|0,c[e>>2]|0)|0,c[f>>2]|0):0){j=9;break}c
[g>>2]=(c[g>>2]|0)+-1}if((j|0)==9){i=k;return c[f>>2]|0}return 0}function kn(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;l=i;i=i+48|0;f=l+40|0;r=l+36|0;s=l+32|0;q=l+28|0;p=l+24|0;o=l+20|0;h
=l+16|0;j=l+12|0;n=l+8|0;m=l+4|0;g=l;c[r>>2]=a;c[s>>2]=b;c[q>>2]=e;c[p>>2]=(c[(c[r>
x3e;2]|0)+8>>2]|0)+(c[s>>2]<<4);c[o>>2]=(c[(c[r>>2]|0)+8>>2]|0)+(c[q
>>2]<<4);c[h>>2]=c[(c[p>>2]|0)+8>>2];c[j>>2]=c[(c[o>>2]|0)+
8>>2];c[n>>2]=c[c[p>>2]>>2];c[m>>2]=c[c[o>>2]>>2];c[g>
;>2]=(c[n>>2]|0)>>>0<=(c[m>>2]|0)>>>0?c[n>>2]|0:c[m>
x3e;2]|0;while(1){if((c[g>>2]|0)>>>0<8)break;if((d[c[h>>2]>>0]|0)&(d[c[j
x3e;>2]>>0]|0)|0){k=4;break}c[h>>2]=(c[h>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1;c
[g>>2]=(c[g>>2]|0)-8}if((k|0)==4){c[f>>2]=1;s=c[f>>2]|0;i=l;return s|0}if(!(c[g>>
;2]|0)){c[f>>2]=0;s=c[f>>2]|0;i=l;return s|0}else{c[f>>2]=(d[c[h>>2]>>0]|0)&
;(d[c[j>>2]>>0]|0)&~(255>>c[g>>2]);s=c[f>>2]|0;i=l;return s|0}return 0}function
ln(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;x=i;i=i+80|0;h=x+68|0;j
=x+64|0;k=x+60|0;l=x+56|0;v=x+52|0;q=x+48|0;r=x+44|0;s=x+40|0;m=x+36|0;n=x+32|0;o=x+28|0;t=x+24|0;u=x+20|0;w=x+16|0;p=x;c[h>
;>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[q>>2]=0;if((c[j>>2]|0)>(c[k
x3e;>2]|0)){c[v>>2]=c[j>>2];c[j>>2]=c[k>>2];c[k>>2]=c[v>>2]}if(!((
c[j>>2]|0)>=0?(c[j>>2]|0)<(c[k>>2]|0):0)){w=c[q>>2]|0;i=x;return w|0}if((c[k
x3e;>2]|0)>=(c[c[h>>2]>>2]|0)){w=c[q>>2]|0;i=x;return w|0}c[r>>2]=(c[(c[h>
;>2]|0)+8>>2]|0)+(c[j>>2]<<4);c[s>>2]=(c[(c[h>>2]|0)+8>>2]|0)+(
c[k>>2]<<4);c[m>>2]=c[c[r>>2]>>2];c[n>>2]=c[c[s>>2]>
x3e;2];a:do if((c[n>>2]|0)>>>0>0){b:do if((c[n>>2]|0)>>>0>(c[m>
x3e;2]|0)>>>0){c[q>>2]=mn(c[r>>2]|0,c[n>>2]|0,c[l>>2]|0)|0;if(c[q>
x3e;2]|0){w=c[q>>2]|0;i=x;return w|0}c[t>>2]=c[m>>2];while(1){if((c[t>>2]|0)>>
x3e;0>=(c[n>>2]|0)>>>0)break b;nn(c[r>>2]|0,c[t>>2]|0);c[t>>2]=(c[t
x3e;>2]|0)+1}}while(0);c[u>>2]=c[(c[s>>2]|0)+8>>2];c[w>>2]=c[(c[r>>2]|0)+
8>>2];c[t>>2]=((c[n>>2]|0)+7|0)>>>3;while(1){if((c[t>>2]|0)>>
x3e;0<=0)break a;a[c[w>>2]>>0]=d[c[w>>2]>>0]|0|(d[c[u>>2]>>0]|0
);c[w>>2]=(c[w>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+-1
}}while(0);c[c[s>>2]>>2]=0;c[(c[s>>2]|0)+12>>2]=0;c[o>>2]=(c[c[h>>2]
x3e;>2]|0)-1-(c[k>>2]|0);if((c[o>>2]|0)>0){w=c[s>>2]|0;c[p>>2]=c[w>>
2];c[p+4>>2]=c[w+4>>2];c[p+8>>2]=c[w+8>>2];c[p+12>>2]=c[w+12>>2];Ts(
c[s>>2]|0,(c[s>>2]|0)+16|0,c[o>>2]<<4|0)|0;w=(c[s>>2]|0)+(c[o>>2]<
;<4)|0;c[w>>2]=c[p>>2];c[w+4>>2]=c[p+4>>2];c[w+8>>2]=c[p+8>>2];
c[w+12>>2]=c[p+12>>2]}w=c[h>>2]|0;c[w>>2]=(c[w>>2]|0)+-1;w=c[q>>2]|0
;i=x;return w|0}function mn(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;k=i;i=i+32|0;e=k+20|0;l=k+16|0;f=k+12|0;j=k
+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=((c[(c[e>>2]|0)+4>
x3e;2]|0)+7|0)>>>3;c[h>>2]=((c[l>>2]|0)+7|0)>>>3;c[g>>2]=0;if((c[h
x3e;>2]|0)>>>0<=(c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>
;>2]=(c[h>>2]|0)+7&-8;l=hc(c[f>>2]|0,1,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2
]|0)+8>>2]|0,g)|0;c[(c[e>>2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l
|0}c[(c[e>>2]|0)+4>>2]=c[h>>2]<<3;l=c[g>>2]|0;i=k;return l|0}function nn(b,e){
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]=b;c[g>>2]=e;if((c[g>>2]|0
)>>>0>=(c[c[f>>2]>>2]|0)>>>0){i=j;return}c[h>>2]=(c[(c[f>
x3e;2]|0)+8>>2]|0)+(c[g>>2]>>3);a[c[h>>2]>>0]=(d[c[h>>2]>>
0]|0)&~(128>>(c[g>>2]&7));i=j;return}function on(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]=(Tb(c[c
[j>>2]>>2]|0)|0)>>16;c[f+4>>2]=(Tb(c[(c[j>>2]|0)+4>>2]|0)|0)>
x3e;16;pn(c[h>>2]|0,c[g>>2]|0,1,f);i=e;return}function pn(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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;h=o+16|0;j=o+12|0;k=o+8|0;l=o+4|0;m=o;c[f>>2]=a;c[g>>2
]=b;c[h>>2]=d;c[j>>2]=e;if(c[(c[f>>2]|0)+4>>2]|0){i=o;return}if((c[g>>2]|0)<
;0|(c[g>>2]|0)>1)c[g>>2]=(c[g>>2]|0)!=0&1;if(((c[(c[f>>2]|0)+12>>2]|
0)+-1|0)>>>0>=2){i=o;return}c[k>>2]=(c[f>>2]|0)+16+((c[g>>2]|0)*36|0);while(1){
if((c[h>>2]|0)>>>0<=0){n=10;break}c[m>>2]=c[c[f>>2]>>2];c[l>>
;2]=qn(c[k>>2]|0,c[c[j>>2]>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[m>>2]|0,0)|
0;if(c[l>>2]|0)break;c[h>>2]=(c[h>>2]|0)+-1;c[j>>2]=(c[j>>2]|0)+8}if((n|0)==10
){i=o;return}c[(c[f>>2]|0)+4>>2]=c[l>>2];i=o;return}function qn(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;s=i;i=i+48|0;g=s+40|0;h=s+36|0;j=s+32|0;k=s+28|0;l=s+24|0;m=s+20|0;n=
s+16|0;q=s+12|0;p=s+8|0;r=s+4|0;o=s;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>
;2]=f;c[m>>2]=0;c[n>>2]=0;if((c[j>>2]|0)<0){c[n>>2]=c[n>>2]|1;if((c[j>
;>2]|0)==-21){c[n>>2]=c[n>>2]|2;c[h>>2]=(c[h>>2]|0)+(c[j>>2]|0)}c[j>
x3e;2]=0}if(c[l>>2]|0)c[c[l>>2]>>2]=-1;c[r>>2]=c[c[g>>2]>>2];c[o>
;>2]=c[(c[g>>2]|0)+8>>2];c[p>>2]=0;while(1){if((c[p>>2]|0)>>>0>=(
c[r>>2]|0)>>>0)break;if((c[c[o>>2]>>2]|0)==(c[h>>2]|0)?(c[(c[o>>
;2]|0)+4>>2]|0)==(c[j>>2]|0):0)break;c[p>>2]=(c[p>>2]|0)+1;c[o>>2]=(c[o>
x3e;2]|0)+12}do if((c[p>>2]|0)>>>0>=(c[r>>2]|0)>>>0){c[m>>2]=rn
(c[g>>2]|0,c[k>>2]|0,o)|0;if(c[m>>2]|0){b=c[m>>2]|0;i=s;return b|0}else{c[c[o>>
;2]>>2]=c[h>>2];c[(c[o>>2]|0)+4>>2]=c[j>>2];c[(c[o>>2]|0)+8>>
;2]=c[n>>2];break}}while(0);c[m>>2]=tn((c[g>>2]|0)+12|0,c[k>>2]|0,q)|0;if(c[m>>
;2]|0){b=c[m>>2]|0;i=s;return b|0}c[m>>2]=wn(c[q>>2]|0,c[p>>2]|0,c[k>>2]|0)|0;
if(!((c[m>>2]|0)==0&(c[l>>2]|0)!=0)){b=c[m>>2]|0;i=s;return b|0}c[c[l>>2]>>
;2]=c[p>>2];b=c[m>>2]|0;i=s;return b|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;
l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;j=l+8|0;h=l+4|0;k=l;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>
;>2]=0;c[k>>2]=0;c[h>>2]=c[c[e>>2]>>2];c[h>>2]=(c[h>>2]|0)+1;if
((c[h>>2]|0)>>>0>=(c[(c[e>>2]|0)+4>>2]|0)>>>0?(c[j>>2
]=sn(c[e>>2]|0,c[h>>2]|0,c[f>>2]|0)|0,c[j>>2]|0):0){b=c[k>>2]|0;a=c[g>>
;2]|0;c[a>>2]=b;a=c[j>>2]|0;i=l;return a|0}c[k>>2]=(c[(c[e>>2]|0)+8>>2]|0)+((c
[h>>2]|0)*12|0)+-12;c[c[k>>2]>>2]=0;c[(c[k>>2]|0)+4>>2]=0;c[(c[k>>2]|
0)+8>>2]=0;c[c[e>>2]>>2]=c[h>>2];b=c[k>>2]|0;a=c[g>>2]|0;c[a>
x3e;2]=b;a=c[j>>2]|0;i=l;return a|0}function sn(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;k=i;i=i+32|0;
e=k+20|0;l=k+16|0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=c[(
c[e>>2]|0)+4>>2];c[h>>2]=c[l>>2];c[g>>2]=0;if((c[h>>2]|0)>>
;>0<=(c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>>2]=(c[h>>
2]|0)+7&-8;l=hc(c[f>>2]|0,12,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+8>>2]|0,g)|
0;c[(c[e>>2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l|0}c[(c[e>>2]|0)+
4>>2]=c[h>>2];l=c[g>>2]|0;i=k;return l|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;k=i;i=i+32|0;l=k+20|0;e=k+16|0;f=k+12|0;h=k+8|0;g=k+4|0;j=k;c[l>>2]=a;c[e>>2]=b;c[f>>2
]=d;c[h>>2]=0;c[g>>2]=c[c[l>>2]>>2];d=c[l>>2]|0;if(!(c[g>>2]|0)){c[h
>>2]=un(d,c[e>>2]|0,j)|0;j=c[j>>2]|0;l=c[f>>2]|0;c[l>>2]=j;l=c[h>>2]|
0;i=k;return l|0}else{c[j>>2]=(c[d+8>>2]|0)+(c[g>>2]<<4)+-16;j=c[j>>2]|0;l=c[f
>>2]|0;c[l>>2]=j;l=c[h>>2]|0;i=k;return l|0}return 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;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[e>>2]=a;c[f>>2]=b;c[g
x3e;>2]=d;c[j>>2]=0;c[k>>2]=0;c[h>>2]=c[c[e>>2]>>2];c[h>>2]=(c[
h>>2]|0)+1;if((c[h>>2]|0)>>>0>(c[(c[e>>2]|0)+4>>2]|0)>>>
;0?(c[j>>2]=vn(c[e>>2]|0,c[h>>2]|0,c[f>>2]|0)|0,c[j>>2]|0):0){b=c[k>>
;2]|0;a=c[g>>2]|0;c[a>>2]=b;a=c[j>>2]|0;i=l;return a|0}c[k>>2]=(c[(c[e>>2]|0)+
8>>2]|0)+(c[h>>2]<<4)+-16;c[c[k>>2]>>2]=0;c[(c[k>>2]|0)+12>>
;2]=0;c[c[e>>2]>>2]=c[h>>2];b=c[k>>2]|0;a=c[g>>2]|0;c[a>>2]=b;a=c[j
x3e;>2]|0;i=l;return a|0}function vn(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;k=i;i=i+32|0;e=k+20|0;l=k+16|
0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=c[(c[e>>2
]|0)+4>>2];c[h>>2]=c[l>>2];c[g>>2]=0;if((c[h>>2]|0)>>>0<=(
c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>>2]=(c[h>>2]|0)+7&-8;
l=hc(c[f>>2]|0,16,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+8>>2]|0,g)|0;c[(c[e>
x3e;2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l|0}c[(c[e>>2]|0)+4>>2]=
c[h>>2];l=c[g>>2]|0;i=k;return l|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;m=i;i=i+
32|0;g=m+16|0;h=m+12|0;j=m+8|0;k=m+4|0;l=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=0;if((c
[h>>2]|0)<0){l=c[k>>2]|0;i=m;return l|0}do if((c[h>>2]|0)>>>0>=(c[c[g>
;>2]>>2]|0)>>>0){c[k>>2]=mn(c[g>>2]|0,(c[h>>2]|0)+1|0,c[j>>
;2]|0)|0;if(c[k>>2]|0){l=c[k>>2]|0;i=m;return l|0}else{c[c[g>>2]>>2]=(c[h>>2]|
0)+1;break}}while(0);c[l>>2]=(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]>>3);a[c[l>
x3e;2]>>0]=d[c[l>>2]>>0]|0|128>>(c[h>>2]&7);l=c[k>>2]|0;i=m;return
l|0}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,l=0,m=0,n=0;n=i;i=i+48|0;f=n+36|0;e=n+32|0;g=n+28|0;k=n+24
|0;j=n+20|0;m=n+16|0;h=n+12|0;l=n;c[f>>2]=a;c[e>>2]=b;c[g>>2]=d;c[k>>2]=0;if(c[(c[f>
;>2]|0)+4>>2]|0){i=n;return}c[m>>2]=c[c[f>>2]>>2];if((c[e>>2]|0)<0|(
c[e>>2]|0)>1)c[e>>2]=(c[e>>2]|0)!=0&1;c[j>>2]=(c[f>>2]|0)+16+((c[e
x3e;>2]|0)*36|0);a:do if((c[(c[f>>2]|0)+12>>2]|0)==1){c[h>>2]=0;while(1){e=c[j>>2]|
0;if((c[h>>2]|0)>=3)break;a=(Tb(c[c[g>>2]>>2]|0)|0)>>16;d=(Tb(c[(c[g>>2]|
0)+4>>2]|0)|0)>>16;c[k>>2]=qn(e,a,d,c[m>>2]|0,l+(c[h>>2]<<2)|0)|0;if
(c[k>>2]|0)break a;c[h>>2]=(c[h>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+8}c[k>>
2]=yn(e,c[l>>2]|0,c[l+4>>2]|0,c[l+8>>2]|0,c[m>>2]|0)|0;if(!(c[k>>2]|0)){i=n;return
}}else c[k>>2]=6;while(0);c[(c[f>>2]|0)+4>>2]=c[k>>2];i=n;return}function yn(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;p=i;i=i+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;
o=p+8|0;m=p+4|0;n=p;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[o>
;>2]=0;c[m>>2]=c[(c[g>>2]|0)+24>>2];c[n>>2]=c[(c[g>>2]|0)+24+8>>
;2];while(1){if((c[m>>2]|0)>>>0<=0)break;if(zn(c[n>>2]|0,c[h>>2]|0)|0)break;if
(zn(c[n>>2]|0,c[j>>2]|0)|0)break;if(zn(c[n>>2]|0,c[k>>2]|0)|0)break;c[m>>2]=(c
[m>>2]|0)+-1;c[n>>2]=(c[n>>2]|0)+16}if((c[m>>2]|0)==0?(c[o>>2]=un((c[g>
x3e;2]|0)+24|0,c[l>>2]|0,n)|0,c[o>>2]|0):0){f=c[o>>2]|0;i=p;return f|0}c[o>>2]=wn(c[n>
;>2]|0,c[h>>2]|0,c[l>>2]|0)|0;if(c[o>>2]|0){f=c[o>>2]|0;i=p;return f|0}c[o>>
;2]=wn(c[n>>2]|0,c[j>>2]|0,c[l>>2]|0)|0;if(c[o>>2]|0){f=c[o>>2]|0;i=p;return f
|0}c[o>>2]=wn(c[n>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;f=c[o>>2]|0;i=p;return f|0}function
zn(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=b;if((c[g>
x3e;2]|0)>>>0>=(c[c[f>>2]>>2]|0)>>>0){c[e>>2]=0;a=c[e>>
;2]|0;i=h;return a|0}else{c[e>>2]=(d[(c[(c[f>>2]|0)+8>>2]|0)+(c[g>>2]>>3)>
;>0]|0)&128>>(c[g>>2]&7);a=c[e>>2]|0;i=h;return a|0}return 0}function An(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>
2]=0;if(c[(c[d>>2]|0)+4>>2]|0){i=h;return}c[g>>2]=c[c[d>>2]>>2];if((c[(c[d>
;>2]|0)+12>>2]|0)==1){c[f>>2]=Bn((c[d>>2]|0)+16|0,c[e>>2]|0,c[g>>2]|0)|0;
if((c[f>>2]|0)==0?(c[f>>2]=Bn((c[d>>2]|0)+16+36|0,c[e>>2]|0,c[g>>2]|0)|0,(c[f
x3e;>2]|0)==0):0){i=h;return}}else c[f>>2]=6;c[(c[d>>2]|0)+4>>2]=c[f>>2];i=h;return
}function Bn(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+8|0;f=e+4|0;c[g>>2]=a;c[h>>
;2]=b;c[f>>2]=d;hn(c[g>>2]|0,c[h>>2]|0);d=un((c[g>>2]|0)+12|0,c[f>>2]|0,e)|0;i
=e;return d|0}function Cn(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,x=0,y
=0,z=0;z=i;i=i+208|0;h=z+192|0;j=z+188|0;k=z+184|0;l=z+180|0;m=z+176|0;s=z+40|0;q=z+36|0;p=z+32|0;n=z+28|0;o=z+24|0;x=z+20|0;y=z
+16|0;t=z+12|0;u=z+8|0;w=z+4|0;r=z;v=z+196|0;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[s
>>2]=z+48;if(b[(c[k>>2]|0)+2>>1]|0?b[c[k>>2]>>1]|0:0){c[q>>2]=Dn(c[s
>>2]|0,c[k>>2]|0,c[j>>2]|0,c[l>>2]|0)|0;a:do if(!(c[q>>2]|0)){c[n>>2
]=(c[(c[s>>2]|0)+24>>2]|0)+4;c[o>>2]=(c[(c[s>>2]|0)+24>>2]|0)+4+204;c[x>
x3e;2]=c[(c[n>>2]|0)+196>>2];c[y>>2]=c[(c[o>>2]|0)+196>>2];c[t>>2]=c
[x>>2];c[u>>2]=c[y>>2];a[v>>0]=0;c[w>>2]=Mb(c[(c[l>>2]|0)+412+4>
;>2]|0,c[y>>2]|0)|0;c[r>>2]=(c[w>>2]|0)+32&-64;if(c[r>>2]|0?(c[w>>2]|
0)!=(c[r>>2]|0):0){a[v>>0]=1;c[y>>2]=xb(c[y>>2]|0,c[r>>2]|0,c[w>>2]|
0)|0;if((c[r>>2]|0)<(c[w>>2]|0))c[x>>2]=(c[x>>2]|0)-((c[x>>2]|0)/50|0);Zm
(c[(c[s>>2]|0)+24>>2]|0,c[x>>2]|0,c[y>>2]|0,0,0)|0}a[(c[s>>2]|0)+120>>
;0]=1;a[(c[s>>2]|0)+121>>0]=1;a[(c[s>>2]|0)+122>>0]=((c[m>>2]|0)==2?1:(c[m>
;>2]|0)==3)&1;a[(c[s>>2]|0)+123>>0]=((c[m>>2]|0)==2?1:(c[m>>2]|0)==4)&1;a
[(c[s>>2]|0)+124>>0]=(c[m>>2]|0)!=1;c[p>>2]=0;while(1){if((c[p>>2]|0)>=2)
break a;Fn(c[s>>2]|0,c[p>>2]|0);Ln(c[s>>2]|0);Mn((c[s>>2]|0)+28+((c[p>>2]|0)*40
|0)|0,c[(c[s>>2]|0)+24>>2]|0,c[p>>2]|0,c[s>>2]|0);Rn(c[s>>2]|0,c[p>>
2]|0);if((c[p>>2]|0)==1)Vn((c[l>>2]|0)+412|0,c[s>>2]|0);Wn(c[s>>2]|0,c[p>>2]|0
);Xn(c[s>>2]|0,c[p>>2]|0);Yn(c[s>>2]|0,c[p>>2]|0);Zn(c[s>>2]|0,c[p>>
2]|0);if(a[v>>0]|0)Zm(c[(c[s>>2]|0)+24>>2]|0,c[t>>2]|0,c[u>>2]|0,0,0)|0;c[p>
;>2]=(c[p>>2]|0)+1}}while(0);_n(c[s>>2]|0);c[h>>2]=c[q>>2];y=c[h>>2]|0;i=
z;return y|0}c[h>>2]=0;y=c[h>>2]|0;i=z;return y|0}function Dn(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,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+96|0;p=F+88|0;q=F+84|0;r=F+80|0;s
=F+76|0;x=F+72|0;y=F+68|0;k=F+64|0;m=F+60|0;l=F+56|0;o=F+52|0;h=F+48|0;j=F+44|0;n=F+40|0;D=F+36|0;C=F+32|0;E=F+28|0;z=F+24|0;B=F
+20|0;A=F+16|0;t=F+12|0;v=F+8|0;u=F+4|0;w=F;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;g=c[
p>>2]|0;d=g+128|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(d|0));f=c[c[s>>2]>>2]|0;c[(c[p
x3e;>2]|0)+16>>2]=f;c[y>>2]=f;f=hc(c[y>>2]|0,48,0,b[(c[q>>2]|0)+2>>1]|0,0
,x)|0;c[(c[p>>2]|0)+8>>2]=f;if(c[x>>2]|0){E=c[x>>2]|0;i=F;return E|0}f=hc(c[y>>
;2]|0,8,0,b[c[q>>2]>>1]|0,0,x)|0;c[(c[p>>2]|0)+12>>2]=f;if(c[x>>2]|0){E=c[x>
;>2]|0;i=F;return E|0}c[c[p>>2]>>2]=b[(c[q>>2]|0)+2>>1];c[(c[p>>2]|0)+4
x3e;>2]=b[c[q>>2]>>1];c[k>>2]=0;c[o>>2]=c[(c[p>>2]|0)+8>>2];c[h
>>2]=c[(c[p>>2]|0)+12>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0
>=(c[(c[p>>2]|0)+4>>2]|0)>>>0)break;c[m>>2]=(b[(c[(c[q>>2]|0)+12>
;>2]|0)+(c[l>>2]<<1)>>1]|0)+1;c[j>>2]=(c[m>>2]|0)-(c[k>>2]|0);c
[c[h>>2]>>2]=(c[o>>2]|0)+((c[k>>2]|0)*48|0);c[(c[h>>2]|0)+4>>2]=c[j
x3e;>2];if((c[j>>2]|0)>0){c[n>>2]=(c[o>>2]|0)+((c[k>>2]|0)*48|0);c[c[n>
x3e;2]>>2]=(c[o>>2]|0)+((c[m>>2]|0)*48|0)+-48;c[(c[n>>2]|0)+8>>2]=c[h>>
;2];while(1){if((c[j>>2]|0)<=1)break;c[(c[n>>2]|0)+4>>2]=(c[n>>2]|0)+48;c[(c[n>
;>2]|0)+48>>2]=c[n>>2];c[n>>2]=(c[n>>2]|0)+48;c[(c[n>>2]|0)+8>>
2]=c[h>>2];c[j>>2]=(c[j>>2]|0)+-1}c[(c[n>>2]|0)+4>>2]=(c[o>>2]|0)+((
c[k>>2]|0)*48|0)}c[h>>2]=(c[h>>2]|0)+8;c[k>>2]=c[m>>2];c[l>>2]=(c[l
x3e;>2]|0)+1}c[D>>2]=c[(c[p>>2]|0)+8>>2];c[C>>2]=c[D>>2];c[E>>2
]=c[(c[q>>2]|0)+4>>2];c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[c[p
x3e;>2]>>2]|0)>>>0)break;c[B>>2]=((c[c[C>>2]>>2]|0)-(c[D>>
2]|0)|0)/48|0;c[A>>2]=((c[(c[C>>2]|0)+4>>2]|0)-(c[D>>2]|0)|0)/48|0;if(!(a[(c[(c[q>
x3e;2]|0)+8>>2]|0)+(c[z>>2]|0)>>0]&1))c[(c[C>>2]|0)+12>>2]=1;c[t>>
;2]=(c[(c[E>>2]|0)+(c[z>>2]<<3)>>2]|0)-(c[(c[E>>2]|0)+(c[B>>2]<
x3c;3)>>2]|0);c[v>>2]=(c[(c[E>>2]|0)+(c[z>>2]<<3)+4>>2]|0)-(c[(c[E
x3e;>2]|0)+(c[B>>2]<<3)+4>>2]|0);g=(En(c[t>>2]|0,c[v>>2]|0)|0)&255;a
[(c[C>>2]|0)+20>>0]=g;c[u>>2]=(c[(c[E>>2]|0)+(c[A>>2]<<3)>>
;2]|0)-(c[(c[E>>2]|0)+(c[z>>2]<<3)>>2]|0);c[w>>2]=(c[(c[E>>2]|0)+(c[
A>>2]<<3)+4>>2]|0)-(c[(c[E>>2]|0)+(c[z>>2]<<3)+4>>2]|0);g=(
En(c[u>>2]|0,c[w>>2]|0)|0)&255;a[(c[C>>2]|0)+21>>0]=g;g=c[C>>2]|0;do if(!(
c[(c[C>>2]|0)+12>>2]&1|0)){if((a[g+20>>0]|0)==(a[(c[C>>2]|0)+21>>0]|0)){if
((a[(c[C>>2]|0)+21>>0]|0)==4?($b(c[t>>2]|0,c[v>>2]|0,c[u>>2]|0,c[w>>
2]|0)|0)==0:0)break;o=(c[C>>2]|0)+12|0;c[o>>2]=c[o>>2]|2}}else{o=g+12|0;c[o>>2]=c[o>
;>2]|2}while(0);c[z>>2]=(c[z>>2]|0)+1;c[C>>2]=(c[C>>2]|0)+48}c[(c[p>>2]|0
)+20>>2]=c[q>>2];c[(c[p>>2]|0)+24>>2]=c[s>>2];Fn(c[p>>2]|0,0);Gn(c[p
>>2]|0);c[x>>2]=Hn((c[p>>2]|0)+28|0,(c[r>>2]|0)+16|0,(c[r>>2]|0)+16+12|0,(c[r
x3e;>2]|0)+16+24|0,c[y>>2]|0)|0;if(c[x>>2]|0){E=c[x>>2]|0;i=F;return E|0}c[x>>2]=Hn
((c[p>>2]|0)+28+40|0,(c[r>>2]|0)+16+36|0,(c[r>>2]|0)+16+36+12|0,(c[r>>2]|0)+16+36+24|0,c
[y>>2]|0)|0;E=c[x>>2]|0;i=F;return E|0}function En(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0
;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[d>>2]=a;c[e>>2]=b;c[h>>2]=4;b=c[d>>2]|0;c[f>
;>2]=(c[d>>2]|0)>=0?b:0-b|0;b=c[e>>2]|0;c[g>>2]=(c[e>>2]|0)>=0?b:0-b|0;if
(((c[g>>2]|0)*12|0)<(c[f>>2]|0)){c[h>>2]=(c[d>>2]|0)>=0?2:-2;h=c[h>>
2]|0;i=j;return h|0}if(((c[f>>2]|0)*12|0)>=(c[g>>2]|0)){h=c[h>>2]|0;i=j;return h|0}c[h>
x3e;2]=(c[e>>2]|0)>=0?-1:1;h=c[h>>2]|0;i=j;return h|0}function Fn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,
h=0,j=0;h=i;i=i+32|0;j=h+16|0;d=h+12|0;g=h+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[g>>2]=c[(c[(c[j
x3e;>2]|0)+20>>2]|0)+4>>2];c[f>>2]=c[(c[j>>2]|0)+8>>2];c[e>>2]=
c[c[j>>2]>>2];while(1){if((c[e>>2]|0)>>>0<=0)break;c[(c[f>>2]|0)+16
x3e;>2]=0;c[(c[f>>2]|0)+32>>2]=0;b=c[g>>2]|0;if(!(c[d>>2]|0)){c[(c[f>>2]|
0)+36>>2]=c[b>>2];c[(c[f>>2]|0)+40>>2]=c[(c[g>>2]|0)+4>>2]}else{c[(c
[f>>2]|0)+36>>2]=c[b+4>>2];c[(c[f>>2]|0)+40>>2]=c[c[g>>2]>>
;2]}c[e>>2]=(c[e>>2]|0)+-1;c[f>>2]=(c[f>>2]|0)+48;c[g>>2]=(c[g>>2]|0
)+8}i=h;return}function Gn(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;r=i;i=i+64|0;b=r+52|0;l=r+48
|0;h=r+44|0;q=r+40|0;f=r+36|0;e=r+32|0;d=r+28|0;j=r+24|0;k=r+20|0;o=r+16|0;p=r+12|0;n=r+8|0;m=r+4|0;g=r;c[b>>2]=a;c[l
x3e;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[(c[b>>2]|0)+4>>2]|0)>>
;>0)break;c[g>>2]=0;a:do if((c[(c[(c[b>>2]|0)+12>>2]|0)+(c[l>>2]<<3)+4>
;>2]|0)>>>0>=4){c[h>>2]=c[(c[(c[b>>2]|0)+12>>2]|0)+(c[l>>2]<
;<3)>>2];a=c[h>>2]|0;c[f>>2]=a;c[q>>2]=a;do{c[f>>2]=c[(c[f>>2]|
0)+4>>2];if((c[f>>2]|0)==(c[h>>2]|0))break a;c[j>>2]=(c[(c[f>>2]|0)+36>
x3e;2]|0)-(c[(c[q>>2]|0)+36>>2]|0);c[k>>2]=(c[(c[f>>2]|0)+40>>2]|0)-(c[(c[q>
;>2]|0)+40>>2]|0)}while((c[j>>2]|0)==0?(c[k>>2]|0)==0:0);c[e>>2]=c[q>>2];
while(1){c[q>>2]=c[e>>2];c[e>>2]=c[c[e>>2]>>2];if((c[e>>2]|0)==(c[h
x3e;>2]|0))break a;c[o>>2]=(c[(c[q>>2]|0)+36>>2]|0)-(c[(c[e>>2]|0)+36>>2]|
0);c[p>>2]=(c[(c[q>>2]|0)+40>>2]|0)-(c[(c[e>>2]|0)+40>>2]|0);if((c[o>>
;2]|0)==0?(c[p>>2]|0)==0:0)continue;c[n>>2]=_b(c[j>>2]|0,c[k>>2]|0,c[o>>2]|0,c
[p>>2]|0)|0;if(c[n>>2]|0)break}c[h>>2]=c[q>>2];c[j>>2]=c[o>>2];c[k
x3e;>2]=c[p>>2];do{c[d>>2]=c[f>>2];while(1){c[f>>2]=c[d>>2];c[d>>
;2]=c[(c[d>>2]|0)+4>>2];if((c[d>>2]|0)==(c[h>>2]|0))c[g>>2]=1;c[o>>2
]=(c[(c[d>>2]|0)+36>>2]|0)-(c[(c[f>>2]|0)+36>>2]|0);c[p>>2]=(c[(c[d>>
;2]|0)+40>>2]|0)-(c[(c[f>>2]|0)+40>>2]|0);if((c[o>>2]|0)==0?(c[p>>2]|0)==0:0)continue
;c[m>>2]=_b(c[j>>2]|0,c[k>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;if(c[m>>2]|0)
break}if((c[m>>2]^c[n>>2]|0)<0){do{a=(c[q>>2]|0)+12|0;c[a>>2]=c[a>>2]|4;c
[q>>2]=c[(c[q>>2]|0)+4>>2]}while((c[q>>2]|0)!=(c[f>>2]|0));a=(c[q>>2
]|0)+12|0;c[a>>2]=c[a>>2]|4}c[q>>2]=c[f>>2];c[f>>2]=c[d>>2];c[n>
;>2]=c[m>>2];c[j>>2]=c[o>>2];c[k>>2]=c[p>>2]}while((c[g>>2]|0)!=
0^1)}while(0);c[l>>2]=(c[l>>2]|0)+1}i=r;return}function Hn(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;r=i;i=i+48|0;g=r+40|0;h=r+36|0;j=r+32|0;s=r+28|0;k=r+24|0;l=r+20|0;m=r+16|0;q=r+12|0
;p=r+8|0;o=r+4|0;n=r;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[s>>2]=e;c[k>>2]=f;c[s>
;>2]=c[s>>2];c[l>>2]=c[c[h>>2]>>2];a=hc(c[k>>2]|0,4,0,c[l>>2]
x3c;<1,0,m)|0;c[(c[g>>2]|0)+12>>2]=a;if(c[m>>2]|0){s=c[m>>2]|0;i=r;return s|0}s=hc(
c[k>>2]|0,28,0,c[l>>2]|0,0,m)|0;c[(c[g>>2]|0)+8>>2]=s;if(c[m>>2]|0){s=c[m>
;>2]|0;i=r;return s|0}s=hc(c[k>>2]|0,16,0,(c[l>>2]<<1)+1|0,0,m)|0;c[(c[g>>2]|0)+24
x3e;>2]=s;if(c[m>>2]|0){s=c[m>>2]|0;i=r;return s|0}c[c[g>>2]>>2]=c[l>>2];
c[(c[g>>2]|0)+16>>2]=(c[(c[g>>2]|0)+12>>2]|0)+(c[l>>2]<<2);c[(c[g>
;>2]|0)+4>>2]=0;c[(c[g>>2]|0)+20>>2]=0;c[(c[g>>2]|0)+28>>2]=0;c[q>
x3e;2]=c[(c[g>>2]|0)+8>>2];c[p>>2]=c[(c[h>>2]|0)+8>>2];while(1){if((c[l>
x3e;2]|0)>>>0<=0)break;c[c[q>>2]>>2]=c[c[p>>2]>>2];c[(c[q>>
;2]|0)+4>>2]=c[(c[p>>2]|0)+4>>2];c[(c[q>>2]|0)+16>>2]=c[(c[p>>2]|0)+
8>>2];c[l>>2]=(c[l>>2]|0)+-1;c[q>>2]=(c[q>>2]|0)+28;c[p>>2]=(c[p>
;>2]|0)+12}a:do if(c[j>>2]|0){c[o>>2]=c[(c[j>>2]|0)+8>>2];c[l>>2]=c[c[j
x3e;>2]>>2];c[(c[g>>2]|0)+32>>2]=c[j>>2];while(1){if((c[l>>2]|0)>>
;>0<=0)break a;In(c[g>>2]|0,c[o>>2]|0);c[l>>2]=(c[l>>2]|0)+-1;c[o>>2
]=(c[o>>2]|0)+16}}while(0);if((c[(c[g>>2]|0)+4>>2]|0)==(c[c[g>>2]>>2]|0)){s=c[
m>>2]|0;i=r;return s|0}c[l>>2]=c[c[g>>2]>>2];c[n>>2]=0;while(1){if((c[n>
x3e;2]|0)>>>0>=(c[l>>2]|0)>>>0)break;Jn(c[g>>2]|0,c[n>>2]|0);c[
n>>2]=(c[n>>2]|0)+1}s=c[m>>2]|0;i=r;return s|0}function In(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;l=i;i=i+32|0;e=l+24|0;m=l+20|0;j=l+16|0;k=l+12|0;f=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[m>>2]=b;c[j
x3e;>2]=0;c[k>>2]=0;c[f>>2]=c[(c[m>>2]|0)+8>>2];c[h>>2]=c[c[m>>
2]>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>
;>0)break;if(!(c[j>>2]|0)){m=c[f>>2]|0;c[f>>2]=m+1;c[k>>2]=d[m>>0];c[j>
;>2]=128}if(c[k>>2]&c[j>>2]|0)Jn(c[e>>2]|0,c[g>>2]|0);c[j>>2]=c[j>
;>2]>>1;c[g>>2]=(c[g>>2]|0)+1}i=l;return}function Jn(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;k=i;i=i+32|0;d=k+20|0;l=k+16|0;f=k+12|0;h=k+8|0;e=k+4|0;g=k;c[d>>2]=a;c[l>>2]=b;c[f>>
2]=(c[(c[d>>2]|0)+8>>2]|0)+((c[l>>2]|0)*28|0);if((c[l>>2]|0)>>>0>=(c
[c[d>>2]>>2]|0)>>>0){i=k;return}if(c[(c[f>>2]|0)+16>>2]&4|0){i=k;return
}l=(c[f>>2]|0)+16|0;c[l>>2]=c[l>>2]|4;c[h>>2]=c[(c[d>>2]|0)+16>>2];c
[e>>2]=c[(c[d>>2]|0)+4>>2];c[(c[f>>2]|0)+20>>2]=0;while(1){if((c[e>>
2]|0)>>>0<=0)break;c[g>>2]=c[c[h>>2]>>2];if(Kn(c[f>>2]|0,c[g>
x3e;2]|0)|0){j=6;break}c[e>>2]=(c[e>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+4}if((j|0)==6)c[(c[f
x3e;>2]|0)+20>>2]=c[g>>2];if((c[(c[d>>2]|0)+4>>2]|0)>>>0>=(c[c[
d>>2]>>2]|0)>>>0){i=k;return}j=c[f>>2]|0;a=(c[d>>2]|0)+4|0;l=c[a>>
;2]|0;c[a>>2]=l+1;c[(c[(c[d>>2]|0)+16>>2]|0)+(l<<2)>>2]=j;i=k;return}function
Kn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(((c[c[d>>2]>
;>2]|0)+(c[(c[d>>2]|0)+4>>2]|0)|0)<(c[c[e>>2]>>2]|0)){b=0;b=b&1;i=f;return
b|0}b=((c[c[e>>2]>>2]|0)+(c[(c[e>>2]|0)+4>>2]|0)|0)>=(c[c[d>>2]>>
;2]|0);b=b&1;i=f;return b|0}function Ln(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;o=i;i=i+48|0;d=o+32|0;
k=o+28|0;j=o+24|0;l=o+20|0;g=o+16|0;e=o+12|0;m=o+8|0;h=o+4|0;f=o;c[d>>2]=a;c[k>>2]=0;a:while(1){if((c[k>
;>2]|0)>>>0>=(c[(c[d>>2]|0)+4>>2]|0)>>>0){n=17;break}c[j>>
2]=c[(c[(c[d>>2]|0)+12>>2]|0)+(c[k>>2]<<3)>>2];b:do if(c[(c[(c[d>>2]|
0)+12>>2]|0)+(c[k>>2]<<3)+4>>2]|0){c[l>>2]=c[j>>2];c[g>>2]=
c[l>>2];c[e>>2]=c[l>>2];do{c[g>>2]=c[c[g>>2]>>2];if((c[g>>
2]|0)==(c[j>>2]|0)){n=30;break a}}while((c[(c[g>>2]|0)+36>>2]|0)==(c[(c[l>>2]|0)+36>
;>2]|0));b=c[(c[g>>2]|0)+4>>2]|0;c[l>>2]=b;c[j>>2]=b;while(1){c[e>>2]=c[l
>>2];do{c[e>>2]=c[(c[e>>2]|0)+4>>2];if((c[e>>2]|0)==(c[j>>2]|0))break
b}while((c[(c[e>>2]|0)+36>>2]|0)==(c[(c[l>>2]|0)+36>>2]|0));a=c[(c[e>>2]|0)+36
>>2]|0;b=c[(c[l>>2]|0)+36>>2]|0;if((c[(c[g>>2]|0)+36>>2]|0)<(c[(c[l>
x3e;2]|0)+36>>2]|0)){if((a|0)<(b|0))n=14}else if((a|0)>(b|0))n=14;if((n|0)==14)while(1){n=0;b=(c[l>>
;2]|0)+16|0;c[b>>2]=c[b>>2]|64;c[l>>2]=c[(c[l>>2]|0)+4>>2];if((c[l>>
2]|0)!=(c[e>>2]|0))n=14;else break}c[g>>2]=c[c[e>>2]>>2];c[l>>2]=c[e>>
;2]}}while(0);c[k>>2]=(c[k>>2]|0)+1}if((n|0)==17)c[k>>2]=0;c:while(1){if((n|0)==30)c[k>>
2]=(c[k>>2]|0)+1;if((c[k>>2]|0)>>>0>=(c[c[d>>2]>>2]|0)>>
x3e;0)break;c[m>>2]=(c[(c[d>>2]|0)+8>>2]|0)+((c[k>>2]|0)*48|0);c[h>>2]=c[m>
;>2];c[f>>2]=c[m>>2];if(c[(c[m>>2]|0)+16>>2]&64|0){while(1){c[h>>2]=
c[c[h>>2]>>2];if((c[h>>2]|0)==(c[m>>2]|0)){n=30;continue c}if((c[(c[h>>2]|0)+40
>>2]|0)!=(c[(c[m>>2]|0)+40>>2]|0))break}while(1){c[f>>2]=c[(c[f>>2]|0)+4>
x3e;2];if((c[f>>2]|0)==(c[m>>2]|0)){n=30;continue c}if((c[(c[f>>2]|0)+40>>2]|0)!=(c[(c[m
>>2]|0)+40>>2]|0))break}}if((c[(c[h>>2]|0)+40>>2]|0)<(c[(c[m>>2]|0)+40>
;>2]|0)?(c[(c[f>>2]|0)+40>>2]|0)>(c[(c[m>>2]|0)+40>>2]|0):0){n=(c[m>>
;2]|0)+16|0;c[n>>2]=c[n>>2]|128;n=30;continue}if((c[(c[h>>2]|0)+40>>2]|0)<=(c[(c[m
x3e;>2]|0)+40>>2]|0)){n=30;continue}if((c[(c[f>>2]|0)+40>>2]|0)>=(c[(c[m>>2]|0
)+40>>2]|0)){n=30;continue}n=(c[m>>2]|0)+16|0;c[n>>2]=c[n>>2]|256;n=30}i=o;return}function
Mn(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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0;j=l
;c[m>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=c[(c[m>>2]|0)+8>
;>2];c[j>>2]=c[c[m>>2]>>2];while(1){if((c[j>>2]|0)>>>0<=0)break
;Nn(c[k>>2]|0,c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);c[j>>2]=(c[j>>2]|0)+-1;
c[k>>2]=(c[k>>2]|0)+28}i=l;return}function Nn(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;E=i;i=i+96|0;B=E+88|0;k=E+84|0;l=E+80|0;m=E+76|0;p=E+72|0;u=E
+68|0;h=E+64|0;D=E+60|0;C=E+56|0;w=E+52|0;q=E+48|0;v=E+36|0;t=E+32|0;s=E+28|0;r=E+24|0;o=E+20|0;n=E+16|0;y=E+12|0;A=E+8|0;x=E+4|
0;z=E;c[B>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[p>>2]=(c[k>>2]|0)+4+((
c[l>>2]|0)*204|0);c[u>>2]=c[(c[p>>2]|0)+196>>2];c[h>>2]=c[(c[p>>2]|0
)+200>>2];if(c[(c[B>>2]|0)+16>>2]&8|0){i=E;return}b=Mb(c[c[B>>2]>>2]|0,c[
u>>2]|0)|0;c[D>>2]=b+(c[h>>2]|0);c[C>>2]=Mb(c[(c[B>>2]|0)+4>>2]|0,c[
u>>2]|0)|0;if(!((c[l>>2]|0)==0?!(a[(c[m>>2]|0)+120>>0]|0):0))j=4;do if((j|0)==4){if((c[l
>>2]|0)==1?(a[(c[m>>2]|0)+121>>0]|0)==0:0)break;if((c[l>>2]|0)==0?d[(c[m>>2]|0
)+122>>0]|0:0)h=1;else if((c[l>>2]|0)==1)h=(d[(c[m>>2]|0)+123>>0]|0)!=0;else h=0;c[w>
;>2]=h&1;j=c[C>>2]|0;c[q>>2]=j;c[(c[B>>2]|0)+12>>2]=j;c[v>>2]=0;c[v+
4>>2]=0;c[v+8>>2]=0;if((c[l>>2]|0)==1)On((c[k>>2]|0)+412|0,(c[c[B>>2]>>
;2]|0)+(c[(c[B>>2]|0)+4>>2]|0)|0,c[c[B>>2]>>2]|0,v);switch(c[v>>2]|0){case 1:{
c[(c[B>>2]|0)+8>>2]=(c[v+4>>2]|0)-(c[q>>2]|0);break}case 2:{c[(c[B>>2]|0)+8>
;>2]=c[v+8>>2];break}case 3:{c[(c[B>>2]|0)+8>>2]=c[v+8>>2];c[(c[B>>2]|0)+
12>>2]=(c[v+4>>2]|0)-(c[v+8>>2]|0);break}default:{c[t>>2]=c[(c[B>>2]|0)+20>
;>2];if(c[t>>2]|0){if(!(c[(c[t>>2]|0)+16>>2]&8))Nn(c[t>>2]|0,c[k>>2]|
0,c[l>>2]|0,c[m>>2]|0);c[s>>2]=(c[c[t>>2]>>2]|0)+(c[(c[t>>2]|0)+4>
;>2]>>1);c[r>>2]=(c[(c[t>>2]|0)+8>>2]|0)+(c[(c[t>>2]|0)+12>>2]
x3e;>1);c[o>>2]=(c[c[B>>2]>>2]|0)+(c[(c[B>>2]|0)+4>>2]>>1);c[n
x3e;>2]=Mb((c[o>>2]|0)-(c[s>>2]|0)|0,c[u>>2]|0)|0;c[D>>2]=(c[r>>2]|0)+(c[
n>>2]|0)-(c[C>>2]>>1)}c[(c[B>>2]|0)+8>>2]=c[D>>2];c[(c[B>>
2]|0)+12>>2]=c[q>>2];do if(a[(c[m>>2]|0)+124>>0]|0){if((c[C>>2]|0)>64){c[
C>>2]=Pn(c[p>>2]|0,c[C>>2]|0,0)|0;break}if((c[C>>2]|0)>=32){c[D>>2]=(c[D
x3e;>2]|0)+(c[C>>2]>>1)&-64;c[C>>2]=64;break}h=(c[D>>2]|0)+32&-64;if((c[C
>>2]|0)<=0){c[D>>2]=h;break}c[y>>2]=h;c[A>>2]=(c[D>>2]|0)+(c[C>>
;2]|0)+32&-64;c[x>>2]=(c[y>>2]|0)-(c[D>>2]|0);c[z>>2]=(c[A>>2]|0)-((c[D
x3e;>2]|0)+(c[C>>2]|0));if((c[x>>2]|0)<0)c[x>>2]=0-(c[x>>2]|0);if((c[z>
x3e;2]|0)<0)c[z>>2]=0-(c[z>>2]|0);if((c[x>>2]|0)<=(c[z>>2]|0)){c[D>>
2]=c[y>>2];break}else{c[D>>2]=c[A>>2];break}}while(0);A=(c[D>>2]|0)+(Qn(c[D>>2
]|0,c[C>>2]|0)|0)|0;c[(c[B>>2]|0)+8>>2]=A;c[(c[B>>2]|0)+12>>2]=c[C>>
2]}}a:do if(c[w>>2]|0){c[D>>2]=c[(c[B>>2]|0)+8>>2];c[C>>2]=c[(c[B>>2
]|0)+12>>2];if((c[C>>2]|0)<64)c[C>>2]=64;else c[C>>2]=(c[C>>2]|0)+32&
;-64;switch(c[v>>2]|0){case 3:break a;case 1:{c[(c[B>>2]|0)+8>>2]=(c[v+4>>2]|0)-(c[C>
;>2]|0);c[(c[B>>2]|0)+12>>2]=c[C>>2];break a}case 2:{c[(c[B>>2]|0)+12>>2]=
c[C>>2];break a}default:{c[(c[B>>2]|0)+12>>2]=c[C>>2];h=(c[D>>2]|0)+(c[C>
x3e;2]>>1)|0;if(c[C>>2]&64|0)c[D>>2]=(h&-64)+32;else c[D>>2]=h+32&-64;c[(
c[B>>2]|0)+8>>2]=(c[D>>2]|0)-(c[C>>2]>>1);c[(c[B>>2]|0)+12>>
;2]=c[C>>2];break a}}}while(0);D=(c[B>>2]|0)+16|0;c[D>>2]=c[D>>2]|8;i=E;return}while(0);
c[(c[B>>2]|0)+8>>2]=c[D>>2];c[(c[B>>2]|0)+12>>2]=c[C>>2];D=(c[B>
;>2]|0)+16|0;c[D>>2]=c[D>>2]|8;i=E;return}function On(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;r=i;i=i+48|0;g=r+32|0;h=r+28|0;j=r+24|0;k=r+20|0;o=r+16|0;l=r+12|0;m=r+8|0;p=r+4|0;n=r;c[g>
x3e;2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[c[k>>2]>>2]=0;c[n>>2]=d[(c[
g>>2]|0)+2080>>0];c[o>>2]=c[g>>2];c[l>>2]=c[c[o>>2]>>2];c[
p>>2]=(c[o>>2]|0)+4;while(1){if((c[l>>2]|0)>>>0<=0)break;c[m>>2]=(c[
h>>2]|0)-(c[(c[p>>2]|0)+12>>2]|0);if((c[m>>2]|0)<(0-(c[(c[g>>2]|0)+2076
x3e;>2]|0)|0))break;if((c[h>>2]|0)<=((c[(c[p>>2]|0)+8>>2]|0)+(c[(c[g>>2]|0)+2076
>>2]|0)|0)){q=5;break}c[l>>2]=(c[l>>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+32}do if((q|0
)==5){if((c[n>>2]|0)==0?(c[m>>2]|0)>(c[(c[g>>2]|0)+2072>>2]|0):0)break;q=c[k>
x3e;2]|0;c[q>>2]=c[q>>2]|1;c[(c[k>>2]|0)+4>>2]=c[(c[p>>2]|0)+16>>2]}
while(0);c[o>>2]=(c[g>>2]|0)+516;c[l>>2]=c[c[o>>2]>>2];c[p>>2]=(c[o
x3e;>2]|0)+4+(c[l>>2]<<5)+-32;while(1){if((c[l>>2]|0)>>>0<=0){q=17;break}
c[m>>2]=(c[(c[p>>2]|0)+8>>2]|0)-(c[j>>2]|0);if((c[m>>2]|0)<(0-(c[(c[g>
;>2]|0)+2076>>2]|0)|0)){q=17;break}if((c[j>>2]|0)>=((c[(c[p>>2]|0)+12>>2]|0)-(
c[(c[g>>2]|0)+2076>>2]|0)|0)){q=13;break}c[l>>2]=(c[l>>2]|0)+-1;c[p>>2]=(c[p
x3e;>2]|0)+-32}if((q|0)==13){if((c[n>>2]|0)==0?(c[m>>2]|0)>=(c[(c[g>>2]|0)+2072>>
;2]|0):0){i=r;return}q=c[k>>2]|0;c[q>>2]=c[q>>2]|2;c[(c[k>>2]|0)+8>>2]=c[(c[p
x3e;>2]|0)+16>>2];i=r;return}else if((q|0)==17){i=r;return}}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;k=i;i=i+16|0;f=k+8|0;g=k+4|0;h=k+12|0;j=k;c[f>>2]=b;c[g>>2]=d;a[h>>0]=e;do if((c[g>
x3e;2]|0)>64){c[j>>2]=(c[g>>2]|0)-(c[(c[f>>2]|0)+4+4>>2]|0);if((c[j>>2]|0
)<0)c[j>>2]=0-(c[j>>2]|0);if((c[j>>2]|0)<40){d=c[(c[f>>2]|0)+4+4>>2]|
0;c[g>>2]=d;c[g>>2]=(c[g>>2]|0)<48?48:d}f=c[g>>2]|0;if((c[g>>2]|0)>=
192){c[g>>2]=f+32&-64;break}c[j>>2]=f&63;c[g>>2]=c[g>>2]&-64;f=c[j>
x3e;2]|0;if((c[j>>2]|0)<10){c[g>>2]=(c[g>>2]|0)+f;break}if((f|0)<32){c[g>>2]=(
c[g>>2]|0)+10;break}if((c[j>>2]|0)<54){c[g>>2]=(c[g>>2]|0)+54;break}else{c[g>
x3e;2]=(c[g>>2]|0)+(c[j>>2]|0);break}}else c[g>>2]=64;while(0);if(!(a[h>>0]|0)){j=c[g>
;>2]|0;i=k;return j|0}c[g>>2]=(c[g>>2]|0)+32&-64;j=c[g>>2]|0;i=k;return j|0}function Qn(
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;d=g+16|0;j=g+12|0;h=g+8|0;e=g+4|0;f=g;c[j>>2]=a;c[h>>
;2]=b;c[e>>2]=((c[j>>2]|0)+32&-64)-(c[j>>2]|0);c[f>>2]=((c[j>>2]|0)+(c[h
x3e;>2]|0)+32&-64)-(c[j>>2]|0)-(c[h>>2]|0);b=c[e>>2]|0;a=c[f>>2]|0;if((((c[e
x3e;>2]|0)<0?0-b|0:b)|0)<=(((c[f>>2]|0)<0?0-a|0:a)|0)){c[d>>2]=c[e>>2];j=c[d
x3e;>2]|0;i=g;return j|0}else{c[d>>2]=c[f>>2];j=c[d>>2]|0;i=g;return j|0}return 0}function Rn
(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;s=i;i=i+80|0;d=s+64|0;v=s+60|0;q=s
+56|0;k=s+52|0;m=s+48|0;h=s+44|0;j=s+40|0;u=s+36|0;t=s+32|0;r=s+28|0;l=s+24|0;e=s+20|0;n=s+16|0;f=s+12|0;o=s+8|0;g=s+4|0;p=s;c[d
>>2]=a;c[v>>2]=b;c[q>>2]=(c[d>>2]|0)+28+((c[v>>2]|0)*40|0);c[k>>2]=c
[(c[(c[q>>2]|0)+32>>2]|0)+8>>2];c[m>>2]=c[c[(c[q>>2]|0)+32>>2]>
x3e;2];c[h>>2]=0;c[j>>2]=(c[v>>2]|0)==0?1:2;c[u>>2]=(c[(c[d>>2]|0)+24>>
;2]|0)+4+((c[v>>2]|0)*204|0);c[t>>2]=c[(c[u>>2]|0)+196>>2];a=Vb(32,c[t>>2]|0)|
0;c[r>>2]=a;c[r>>2]=(c[r>>2]|0)>30?30:a;a:do if((c[m>>2]|0)>>>0>
;1?(c[c[d>>2]>>2]|0)>>>0>0:0){if((c[(c[k>>2]|0)+12>>2]|0)>>
;>0>(c[c[d>>2]>>2]|0)>>>0)b=c[c[d>>2]>>2]|0;else b=c[(c[k>
x3e;2]|0)+12>>2]|0;c[h>>2]=b;c[k>>2]=(c[k>>2]|0)+16;while(1){if((c[m>>2]|0)>
;>>0<=1)break a;if((c[(c[k>>2]|0)+12>>2]|0)>>>0>(c[c[d>>2]>
;>2]|0)>>>0)b=c[c[d>>2]>>2]|0;else b=c[(c[k>>2]|0)+12>>2]|0;c[l>
;>2]=b;c[e>>2]=(c[l>>2]|0)-(c[h>>2]|0);if((c[e>>2]|0)>0){c[n>>2]=(c[(
c[d>>2]|0)+8>>2]|0)+((c[h>>2]|0)*48|0);Sn(c[q>>2]|0,c[k>>2]|0);Un(c[q>>
;2]|0,c[n>>2]|0,c[e>>2]|0,c[r>>2]|0,c[j>>2]|0)}c[h>>2]=c[l>>2];c[m
x3e;>2]=(c[m>>2]|0)+-1;c[k>>2]=(c[k>>2]|0)+16}}while(0);if((c[m>>2]|0)==1){c[f>
;>2]=c[c[d>>2]>>2];c[o>>2]=c[(c[d>>2]|0)+8>>2];Sn(c[q>>2]|0,c[(
c[(c[q>>2]|0)+32>>2]|0)+8>>2]|0);Un(c[q>>2]|0,c[o>>2]|0,c[f>>2]|0,c[
r>>2]|0,c[j>>2]|0)}c[g>>2]=c[c[d>>2]>>2];c[p>>2]=c[(c[d>>2
]|0)+8>>2];while(1){if((c[g>>2]|0)>>>0<=0)break;if(c[(c[p>>2]|0)+32>>
;2]|0?(c[(c[p>>2]|0)+16>>2]&16|0)==0:0){v=(c[p>>2]|0)+16|0;c[v>>2]=c[v>>2
]|16}c[g>>2]=(c[g>>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+48}i=s;return}function Sn(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;t=i;i=i+64|0;e=t+56|0;u=t+52|0;q=t+48|0;s=t+44|0;h=t+40|0
;o=t+36|0;p=t+32|0;f=t+28|0;j=t+24|0;g=t+20|0;m=t+16|0;n=t+12|0;k=t+8|0;l=t+4|0;r=t;c[e>>2]=a;c[u>>2]=b;c[q
x3e;>2]=0;c[s>>2]=0;c[h>>2]=c[(c[u>>2]|0)+8>>2];c[p>>2]=c[c[u>>
2]>>2];c[f>>2]=0;Tn(c[e>>2]|0);c[o>>2]=0;while(1){if((c[o>>2]|0)>>
x3e;0>=(c[p>>2]|0)>>>0)break;if(!(c[q>>2]|0)){u=c[h>>2]|0;c[h>>2]=u+
1;c[s>>2]=d[u>>0];c[q>>2]=128}if(((c[s>>2]&c[q>>2]|0?(c[j>>2]=(
c[(c[e>>2]|0)+8>>2]|0)+((c[o>>2]|0)*28|0),(c[(c[j>>2]|0)+16>>2]&4|0)==0):
0)?(c[g>>2]=0,(c[g>>2]|0)==0):0)?(u=(c[j>>2]|0)+16|0,c[u>>2]=c[u>>2]|4,(c[f>
;>2]|0)>>>0<(c[c[e>>2]>>2]|0)>>>0):0){a=c[j>>2]|0;u=c[f>
;>2]|0;c[f>>2]=u+1;c[(c[(c[e>>2]|0)+12>>2]|0)+(u<<2)>>2]=a}c[q>>
;2]=c[q>>2]>>1;c[o>>2]=(c[o>>2]|0)+1}c[(c[e>>2]|0)+4>>2]=c[f>
x3e;2];c[r>>2]=c[(c[e>>2]|0)+12>>2];c[m>>2]=1;while(1){if((c[m>>2]|0)>=(c
[f>>2]|0))break;c[k>>2]=c[(c[r>>2]|0)+(c[m>>2]<<2)>>2];c[n>>
;2]=(c[m>>2]|0)-1;while(1){if((c[n>>2]|0)<0)break;c[l>>2]=c[(c[r>>2]|0)+(c[n>
x3e;2]<<2)>>2];if((c[c[l>>2]>>2]|0)<(c[c[k>>2]>>2]|0))break;c[(
c[r>>2]|0)+((c[n>>2]|0)+1<<2)>>2]=c[l>>2];c[(c[r>>2]|0)+(c[n>
x3e;2]<<2)>>2]=c[k>>2];c[n>>2]=(c[n>>2]|0)+-1}c[m>>2]=(c[m>>
;2]|0)+1}i=t;return}function Tn(a){a=a|0;var b=0,d=0,e=0,f=0;e=i;i=i+16|0;f=e+8|0;b=e+4|0;d=e;c[f>>2]=a;c[b>>
;2]=c[c[f>>2]>>2];c[d>>2]=c[(c[f>>2]|0)+8>>2];while(1){if((c[b>>2]|0
)>>>0<=0)break;f=(c[d>>2]|0)+16|0;c[f>>2]=c[f>>2]&-5;c[(c[d>>2]|
0)+24>>2]=-1;c[b>>2]=(c[b>>2]|0)+-1;c[d>>2]=(c[d>>2]|0)+28}i=e;return}function
Un(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,x=0,y=0,z=0,A=0,B=0
,C=0,D=0,E=0,F=0,G=0;F=i;i=i+96|0;G=F+88|0;h=F+84|0;j=F+80|0;k=F+76|0;l=F+72|0;D=F+68|0;A=F+64|0;C=F+60|0;B=F+56|0;x=F+52|0;q=F+
48|0;m=F+44|0;y=F+40|0;r=F+36|0;n=F+32|0;z=F+28|0;w=F+24|0;v=F+20|0;s=F+16|0;o=F+12|0;t=F+8|0;p=F+4|0;u=F;c[G>>2]=b;c[
h>>2]=d;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[D>>2]=c[(c[G>>2]|0)+12>
x3e;2];c[A>>2]=c[(c[G>>2]|0)+4>>2];while(1){if((c[j>>2]|0)>>>0<=0)break
;c[C>>2]=0;c[B>>2]=c[(c[h>>2]|0)+36>>2];a:do if(!(c[(c[h>>2]|0)+16>>
2]&16)){do if((a[(c[h>>2]|0)+20>>0]|0)!=(c[l>>2]|0)?(a[(c[h>>2]|0)+20>>0]|
0)!=(0-(c[l>>2]|0)|0):0){if((a[(c[h>>2]|0)+21>>0]|0)!=(c[l>>2]|0)?(a[(c[h>>2]|
0)+21>>0]|0)!=(0-(c[l>>2]|0)|0):0)break;c[C>>2]=a[(c[h>>2]|0)+21>>0]}else E=6;
while(0);if((E|0)==6){E=0;c[C>>2]=a[(c[h>>2]|0)+20>>0]}if(c[C>>2]|0){if((c[C>>
2]|0)==(c[l>>2]|0)){c[x>>2]=0;while(1){if((c[x>>2]|0)>>>0>=(c[A>>2]|
0)>>>0)break a;c[q>>2]=c[(c[D>>2]|0)+(c[x>>2]<<2)>>2];c[m>
x3e;2]=(c[B>>2]|0)-(c[c[q>>2]>>2]|0);if((c[m>>2]|0)<(c[k>>2]|0)?(0-(c[m
x3e;>2]|0)|0)<(c[k>>2]|0):0)break;c[x>>2]=(c[x>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G
>>2]=c[G>>2]|16;G=(c[h>>2]|0)+16|0;c[G>>2]=c[G>>2]|512;c[(c[h>>2]|0)+
32>>2]=c[q>>2];break}if((c[C>>2]|0)!=(0-(c[l>>2]|0)|0))break;c[y>>2]=0;while(1
){if((c[y>>2]|0)>>>0>=(c[A>>2]|0)>>>0)break a;c[r>>2]=c[(c[D>
;>2]|0)+(c[y>>2]<<2)>>2];c[n>>2]=(c[B>>2]|0)-(c[c[r>>2]>
x3e;2]|0)-(c[(c[r>>2]|0)+4>>2]|0);if((c[n>>2]|0)<(c[k>>2]|0)?(0-(c[n>>2]|
0)|0)<(c[k>>2]|0):0)break;c[y>>2]=(c[y>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>2
]=c[G>>2]|16;G=(c[h>>2]|0)+16|0;c[G>>2]=c[G>>2]|1024;c[(c[h>>2]|0)+32>>
;2]=c[r>>2];break}if(c[(c[h>>2]|0)+16>>2]&64|0){if((c[l>>2]|0)==2){c[w>>2
]=128;c[v>>2]=256}else{c[w>>2]=256;c[v>>2]=128}b:do if(!(c[(c[h>>2]|0)+16>>2]
x26;c[w>>2]|0)){if(c[(c[h>>2]|0)+16>>2]&c[v>>2]|0){c[z>>2]=0;while(1){if((
c[z>>2]|0)>>>0>=(c[A>>2]|0)>>>0)break b;c[t>>2]=c[(c[D>>
;2]|0)+(c[z>>2]<<2)>>2];c[p>>2]=(c[B>>2]|0)-(c[c[t>>2]>>2]|
0)-(c[(c[t>>2]|0)+4>>2]|0);if((c[p>>2]|0)<(c[k>>2]|0)?(0-(c[p>>2]|0)|0)
x3c;(c[k>>2]|0):0)break;c[z>>2]=(c[z>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>2]=c[G
x3e;>2]|1024;c[(c[h>>2]|0)+32>>2]=c[t>>2];G=(c[h>>2]|0)+16|0;c[G>>2]=c[G
x3e;>2]|16}}else{c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[A>>2]|0)>
x3e;>0)break b;c[s>>2]=c[(c[D>>2]|0)+(c[z>>2]<<2)>>2];c[o>>2]=(
c[B>>2]|0)-(c[c[s>>2]>>2]|0);if((c[o>>2]|0)<(c[k>>2]|0)?(0-(c[o>>
;2]|0)|0)<(c[k>>2]|0):0)break;c[z>>2]=(c[z>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>
;2]=c[G>>2]|512;c[(c[h>>2]|0)+32>>2]=c[s>>2];G=(c[h>>2]|0)+16|0;c[G>>
;2]=c[G>>2]|16}while(0);if(!(c[(c[h>>2]|0)+32>>2]|0)){c[z>>2]=0;while(1){if((c[z>
x3e;2]|0)>>>0>=(c[A>>2]|0)>>>0)break a;c[u>>2]=c[(c[D>>2]|0)+(c
[z>>2]<<2)>>2];if((c[B>>2]|0)>=(c[c[u>>2]>>2]|0)?(c[B>>
;2]|0)<=((c[c[u>>2]>>2]|0)+(c[(c[u>>2]|0)+4>>2]|0)|0):0)break;c[z>>2]=(c[
z>>2]|0)+1}c[(c[h>>2]|0)+32>>2]=c[u>>2]}}}while(0);c[j>>2]=(c[j>>2]|
0)+-1;c[h>>2]=(c[h>>2]|0)+48}i=F;return}function Vn(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;q=i;i=i+48|0;f=q+36|0;r=q+32|0;m=q+28|0;o=q+24|0;k=q+20|0;g=q+16|0;l=q+12|0;n=q+8|0;h=q+4|0;j=q;c[f>>2]=b
;c[r>>2]=e;c[k>>2]=c[c[r>>2]>>2];c[l>>2]=c[(c[r>>2]|0)+8>>
2];while(1){if((c[k>>2]|0)>>>0<=0)break;if(!((((a[(c[l>>2]|0)+20>>0]|0)!=2?(a[(
c[l>>2]|0)+20>>0]|0)!=-2:0)?(a[(c[l>>2]|0)+21>>0]|0)!=2:0)?(a[(c[l>>2]|0)+21
x3e;>0]|0)!=-2:0))p=7;a:do if((p|0)==7?(p=0,(c[(c[l>>2]|0)+16>>2]&16|0)==0):0){c[n>>2]=c
[(c[l>>2]|0)+36>>2];c[m>>2]=c[f>>2];c[g>>2]=c[c[m>>2]>>2];
c[o>>2]=(c[m>>2]|0)+4;while(1){if((c[g>>2]|0)>>>0<=0)break;c[h>>2]=(
c[n>>2]|0)-(c[(c[o>>2]|0)+12>>2]|0);if((c[h>>2]|0)<(0-(c[(c[f>>2]|0)+2076
>>2]|0)|0))break;do if((c[n>>2]|0)<=((c[(c[o>>2]|0)+8>>2]|0)+(c[(c[f>>2]|
0)+2076>>2]|0)|0)){if((d[(c[f>>2]|0)+2080>>0]|0)==0?(c[h>>2]|0)>(c[(c[f>>
2]|0)+2072>>2]|0):0)break;c[(c[l>>2]|0)+44>>2]=c[(c[o>>2]|0)+24>>2];r=(c[l>
;>2]|0)+16|0;c[r>>2]=c[r>>2]|16;r=(c[l>>2]|0)+16|0;c[r>>2]=c[r>>2]|32}while
(0);c[g>>2]=(c[g>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+32}c[m>>2]=(c[f>>2]|0
)+516;c[g>>2]=c[c[m>>2]>>2];c[o>>2]=(c[m>>2]|0)+4+(c[g>>2]<<
;5)+-32;while(1){if((c[g>>2]|0)>>>0<=0)break a;c[j>>2]=(c[(c[o>>2]|0)+8>
x3e;2]|0)-(c[n>>2]|0);if((c[j>>2]|0)<(0-(c[(c[f>>2]|0)+2076>>2]|0)|0))break a;do if
((c[n>>2]|0)>=((c[(c[o>>2]|0)+12>>2]|0)-(c[(c[f>>2]|0)+2076>>2]|0)|0)){if
((d[(c[f>>2]|0)+2080>>0]|0)==0?(c[j>>2]|0)>=(c[(c[f>>2]|0)+2072>>2]|0):0)
break;c[(c[l>>2]|0)+44>>2]=c[(c[o>>2]|0)+28>>2];r=(c[l>>2]|0)+16|0;c[r>
x3e;2]=c[r>>2]|16;r=(c[l>>2]|0)+16|0;c[r>>2]=c[r>>2]|32}while(0);c[g>>2]=(c[g
x3e;>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+-32}}while(0);c[k>>2]=(c[k>>2]|0)+-1;c[l>>
;2]=(c[l>>2]|0)+48}i=q;return}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,l=0,m=0;j=i;i=i+32|0;k=j+28
|0;m=j+24|0;l=j+20|0;h=j+16|0;d=j+12|0;g=j+8|0;f=j+4|0;e=j;c[k>>2]=a;c[m>>2]=b;c[l>>2]=(c[(c[k>
;>2]|0)+24>>2]|0)+4+((c[m>>2]|0)*204|0);c[h>>2]=c[(c[l>>2]|0)+196>>2];c[d
>>2]=c[c[k>>2]>>2];c[g>>2]=c[(c[k>>2]|0)+8>>2];while(1){if((c[d>
;>2]|0)>>>0<=0)break;c[f>>2]=c[(c[g>>2]|0)+32>>2];if(c[f>>2]|0){
do if(!(c[(c[g>>2]|0)+16>>2]&512|0)){if(c[(c[g>>2]|0)+16>>2]&1024|0){c[(c[g>
;>2]|0)+44>>2]=(c[(c[f>>2]|0)+8>>2]|0)+(c[(c[f>>2]|0)+12>>2]|0);break}c[e
>>2]=(c[(c[g>>2]|0)+36>>2]|0)-(c[c[f>>2]>>2]|0);if((c[e>>2]|0)<=
0){m=c[(c[f>>2]|0)+8>>2]|0;m=m+(Mb(c[e>>2]|0,c[h>>2]|0)|0)|0;c[(c[g>>2]|0)+44
x3e;>2]=m;break}b=c[(c[f>>2]|0)+8>>2]|0;if((c[e>>2]|0)>=(c[(c[f>>2]|0)+4>
x3e;2]|0)){m=b+(c[(c[f>>2]|0)+12>>2]|0)|0;m=m+(Mb((c[e>>2]|0)-(c[(c[f>>2]|0)+4>>
;2]|0)|0,c[h>>2]|0)|0)|0;c[(c[g>>2]|0)+44>>2]=m;break}else{m=b+(xb(c[e>>2]|0,c[(c[f>
;>2]|0)+12>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0)|0;c[(c[g>>2]|0)+44>>2]=m;break
}}else c[(c[g>>2]|0)+44>>2]=c[(c[f>>2]|0)+8>>2];while(0);m=(c[g>>2]|0)+16|0;c[
m>>2]=c[m>>2]|32}c[d>>2]=(c[d>>2]|0)+-1;c[g>>2]=(c[g>>2]|0)+48}i=j;return
}function Xn(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;t=i;i=i+128|0;u=t+124|
0;w=t+120|0;v=t+116|0;p=t+112|0;k=t+108|0;q=t+104|0;r=t+40|0;m=t+36|0;g=t+32|0;o=t+28|0;n=t+24|0;e=t+20|0;f=t+16|0;j=t+12|0;h=t+
8|0;l=t+4|0;s=t;c[u>>2]=b;c[w>>2]=d;c[v>>2]=(c[(c[u>>2]|0)+24>>2]|0)+4+((c[w
x3e;>2]|0)*204|0);c[p>>2]=c[(c[v>>2]|0)+196>>2];c[k>>2]=c[(c[u>>2]|0)+16
x3e;>2];c[q>>2]=0;c[m>>2]=0;c[g>>2]=c[(c[u>>2]|0)+8>>2];c[o>>2]=(
c[g>>2]|0)+((c[c[u>>2]>>2]|0)*48|0);c[n>>2]=c[g>>2];while(1){if((c[n>>
;2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(c[(c[n>>2]|0)+16>>2]&
16|0)c[m>>2]=(c[m>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+48}if(!(c[m>>2]|0)){i=t;return}
if((c[m>>2]|0)>>>0>16){c[q>>2]=hc(c[k>>2]|0,4,0,c[m>>2]|0,0,e)|0;if(
c[e>>2]|0){i=t;return}}else c[q>>2]=r;c[m>>2]=0;c[n>>2]=c[g>>2];while(1){if((c
[n>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(c[(c[n>>2]|0)+16>
x3e;2]&16|0){c[f>>2]=(c[q>>2]|0)+(c[m>>2]<<2);while(1){if((c[f>>2]|0)>
;>>0<=(c[q>>2]|0)>>>0)break;if((c[(c[(c[f>>2]|0)+-4>>2]|0)+36>
x3e;2]|0)<=(c[(c[n>>2]|0)+36>>2]|0))break;c[c[f>>2]>>2]=c[(c[f>>2]|0)+-4
x3e;>2];c[f>>2]=(c[f>>2]|0)+-4}c[c[f>>2]>>2]=c[n>>2];c[m>>2]=(c
[m>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+48}c[n>>2]=c[g>>2];while(1){if((c[n>>
;2]|0)>>>0>=(c[o>>2]|0)>>>0)break;do if(!(c[(c[n>>2]|0)+16>>2]
x26;16)){if(c[(c[n>>2]|0)+12>>2]&2|0){if((a[(c[n>>2]|0)+20>>0]|0)==4)break;if((a[(c
[n>>2]|0)+20>>0]|0)!=(a[(c[n>>2]|0)+21>>0]|0))break;if((c[(c[n>>2]|0)+16>
x3e;2]&64|0)==0?(c[(c[n>>2]|0)+12>>2]&4|0)==0:0)break;w=(c[n>>2]|0)+12|0;c[w>>
2]=c[w>>2]&-3}c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[m>>2]|0
)>>>0)break;if((c[(c[(c[q>>2]|0)+(c[l>>2]<<2)>>2]|0)+36>>2]|0)
x3e;(c[(c[n>>2]|0)+36>>2]|0))break;c[l>>2]=(c[l>>2]|0)+1}do if(c[l>>2]|0){c[j
x3e;>2]=c[(c[q>>2]|0)+((c[l>>2]|0)-1<<2)>>2];c[l>>2]=c[m>>2];while
(1){if((c[l>>2]|0)>>>0<=0)break;if((c[(c[(c[q>>2]|0)+((c[l>>2]|0)-1<<
;2)>>2]|0)+36>>2]|0)<(c[(c[n>>2]|0)+36>>2]|0))break;c[l>>2]=(c[l>>
;2]|0)+-1}d=c[l>>2]|0;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=c[(c[q>>2]|0)+(d-1
x3c;<2)>>2];w=c[(c[j>>2]|0)+44>>2]|0;w=w+(Mb((c[(c[n>>2]|0)+36>>2]|0)-(c[(
c[j>>2]|0)+36>>2]|0)|0,c[p>>2]|0)|0)|0;c[(c[n>>2]|0)+44>>2]=w;break}c[h>
x3e;2]=c[(c[q>>2]|0)+(d<<2)>>2];c[s>>2]=c[(c[n>>2]|0)+36>>2];if((c[s
>>2]|0)==(c[(c[j>>2]|0)+36>>2]|0)){c[(c[n>>2]|0)+44>>2]=c[(c[j>>2]|0
)+44>>2];break}if((c[s>>2]|0)==(c[(c[h>>2]|0)+36>>2]|0)){c[(c[n>>2]|0)+44>
;>2]=c[(c[h>>2]|0)+44>>2];break}else{w=c[(c[j>>2]|0)+44>>2]|0;w=w+(xb((c[s>>
;2]|0)-(c[(c[j>>2]|0)+36>>2]|0)|0,(c[(c[h>>2]|0)+44>>2]|0)-(c[(c[j>>2]|0)+44
x3e;>2]|0)|0,(c[(c[h>>2]|0)+36>>2]|0)-(c[(c[j>>2]|0)+36>>2]|0)|0)|0)|0;c[(c[n>
x3e;2]|0)+44>>2]=w;break}}else{c[h>>2]=c[c[q>>2]>>2];w=c[(c[h>>2]|0)+44>
x3e;2]|0;w=w+(Mb((c[(c[n>>2]|0)+36>>2]|0)-(c[(c[h>>2]|0)+36>>2]|0)|0,c[p>>2]|0
)|0)|0;c[(c[n>>2]|0)+44>>2]=w}while(0);w=(c[n>>2]|0)+16|0;c[w>>2]=c[w>>2]|32}while
(0);c[n>>2]=(c[n>>2]|0)+48}if((c[q>>2]|0)==(r|0)){i=t;return}Fb(c[k>>2]|0,c[q>>
;2]|0);c[q>>2]=0;i=t;return}function Yn(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;v=i;i=i+80|0;w=v+76|0;y=v+72|0;x=v+68|0;s=v+64|0;h=v+60|0;d=v+56|0;m=v+52|0;u=v+48|0;j=v+44|0;l=v+40|
0;r=v+36|0;k=v+32|0;n=v+28|0;o=v+24|0;e=v+20|0;f=v+16|0;q=v+12|0;p=v+8|0;g=v+4|0;t=v;c[w>>2]=a;c[y>>2]=b;c[x
>>2]=(c[(c[w>>2]|0)+24>>2]|0)+4+((c[y>>2]|0)*204|0);c[s>>2]=c[(c[x>>
2]|0)+196>>2];c[h>>2]=c[(c[x>>2]|0)+200>>2];c[d>>2]=c[(c[w>>2]|0)+12
>>2];c[m>>2]=c[(c[w>>2]|0)+4>>2];while(1){if((c[m>>2]|0)>>>0<
;=0)break;c[u>>2]=c[c[d>>2]>>2];c[l>>2]=(c[u>>2]|0)+((c[(c[d>>2]|0)+
4>>2]|0)*48|0);c[k>>2]=0;c[j>>2]=0;c[r>>2]=c[u>>2];while(1){if((c[r>>
;2]|0)>>>0>=(c[l>>2]|0)>>>0)break;if(c[(c[r>>2]|0)+16>>2]&
32|0){if(!(c[j>>2]|0))c[j>>2]=c[r>>2];c[k>>2]=(c[k>>2]|0)+1}c[r>>2]=(
c[r>>2]|0)+48}a:do if((c[k>>2]|0)>>>0<2){if((c[k>>2]|0)==1){y=c[(c[j>>
;2]|0)+44>>2]|0;c[h>>2]=y-(Mb(c[(c[j>>2]|0)+36>>2]|0,c[s>>2]|0)|0)}c[r>
x3e;2]=c[u>>2];while(1){if((c[r>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break
a;if((c[r>>2]|0)!=(c[j>>2]|0)){y=Mb(c[(c[r>>2]|0)+36>>2]|0,c[s>>2]|0)|0;c[(c[
r>>2]|0)+44>>2]=y+(c[h>>2]|0)}c[r>>2]=(c[r>>2]|0)+48}}else{c[u>>2]=c
[j>>2];do{c[r>>2]=c[j>>2];while(1){c[l>>2]=c[(c[j>>2]|0)+4>>2];if((c
[l>>2]|0)==(c[u>>2]|0))break a;if(!(c[(c[l>>2]|0)+16>>2]&32))break;c[j>>2
]=c[l>>2]}do c[l>>2]=c[(c[l>>2]|0)+4>>2];while(!(c[(c[l>>2]|0)+16>>2
]&32|0));if((c[(c[j>>2]|0)+36>>2]|0)<=(c[(c[l>>2]|0)+36>>2]|0)){c[n>>
;2]=c[(c[j>>2]|0)+36>>2];c[e>>2]=c[(c[j>>2]|0)+44>>2];c[o>>2]=(c[(c[
l>>2]|0)+36>>2]|0)-(c[n>>2]|0);c[f>>2]=(c[(c[l>>2]|0)+44>>2]|0)-(c[e
>>2]|0)}else{c[n>>2]=c[(c[l>>2]|0)+36>>2];c[e>>2]=c[(c[l>>2]|0)+44
x3e;>2];c[o>>2]=(c[(c[j>>2]|0)+36>>2]|0)-(c[n>>2]|0);c[f>>2]=(c[(c[j>
;>2]|0)+44>>2]|0)-(c[e>>2]|0)}c[t>>2]=65536;if((c[o>>2]|0)>0)c[t>>2]=
Vb(c[f>>2]|0,c[o>>2]|0)|0;c[r>>2]=c[(c[j>>2]|0)+4>>2];do{c[q>>2]=c[(
c[r>>2]|0)+36>>2];c[p>>2]=(c[q>>2]|0)-(c[n>>2]|0);do if((c[p>>2]|0)
x3e;0){b=c[e>>2]|0;if((c[p>>2]|0)>=(c[o>>2]|0)){y=b+(c[f>>2]|0)|0;c[g>>2]=
y+(Mb((c[p>>2]|0)-(c[o>>2]|0)|0,c[s>>2]|0)|0);break}else{c[g>>2]=b+(Mb(c[p>>2]|
0,c[t>>2]|0)|0);break}}else{y=c[e>>2]|0;c[g>>2]=y+(Mb(c[p>>2]|0,c[s>>2]|0)|0)}
while(0);c[(c[r>>2]|0)+44>>2]=c[g>>2];c[r>>2]=c[(c[r>>2]|0)+4>>2]}while
((c[r>>2]|0)!=(c[l>>2]|0));c[j>>2]=c[l>>2]}while((c[j>>2]|0)!=(c[u>>
2]|0))}while(0);c[m>>2]=(c[m>>2]|0)+-1;c[d>>2]=(c[d>>2]|0)+8}i=v;return}function Zn(b,d){
b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0;j=l;c[e>>2]=b;c[f
x3e;>2]=d;c[h>>2]=c[(c[e>>2]|0)+8>>2];c[k>>2]=c[(c[(c[e>>2]|0)+20>
x3e;2]|0)+4>>2];c[j>>2]=c[(c[(c[e>>2]|0)+20>>2]|0)+8>>2];c[g>>2]=0;while
(1){if((c[g>>2]|0)>>>0>=(c[c[e>>2]>>2]|0)>>>0)break;d=c[(c[h>
;>2]|0)+44>>2]|0;b=(c[k>>2]|0)+(c[g>>2]<<3)|0;if(!(c[f>>2]|0))c[b>
x3e;2]=d;else c[b+4>>2]=d;if(c[(c[h>>2]|0)+16>>2]&16|0){b=(c[j>>2]|0)+(c[g>>
;2]|0)|0;a[b>>0]=a[b>>0]|(((c[f>>2]|0)==0?32:64)&255)<<24>>24}c[h>
x3e;2]=(c[h>>2]|0)+48;c[g>>2]=(c[g>>2]|0)+1}i=l;return}function _n(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]|0)+16>>2];$n((c[d>>2]|0)+28+40
|0,c[e>>2]|0);$n((c[d>>2]|0)+28|0,c[e>>2]|0);Fb(c[e>>2]|0,c[(c[d>>2]|0)+8>
;>2]|0);c[(c[d>>2]|0)+8>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+12>>2]|0);c[(c[d
>>2]|0)+12>>2]=0;c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>
x3e;2]|0)+16>>2]=0;i=b;return}function $n(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2
]=0;c[(c[e>>2]|0)+20>>2]=0;c[(c[e>>2]|0)+28>>2]=0;Fb(c[f>>2]|0,c[(c[e>>
;2]|0)+12>>2]|0);c[(c[e>>2]|0)+12>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>
;2]|0);c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[c[e>>2]>>2]=0;c
[(c[e>>2]|0)+16>>2]=0;i=d;return}function ao(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;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c
[a+20>>2]=0;c[a+24>>2]=0;c[(c[d>>2]|0)+4>>2]=38;c[(c[d>>2]|0)+8>>2]=
108;c[(c[d>>2]|0)+12>>2]=11;c[(c[d>>2]|0)+16>>2]=12;c[(c[d>>2]|0)+20>>
;2]=15;c[(c[d>>2]|0)+24>>2]=24;i=b;return}function bo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2
]=a;dn(c[d>>2]|0,2);i=b;return}function co(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;o=
i;i=i+160|0;f=o+156|0;g=o+152|0;h=o+148|0;j=o+144|0;l=o+16|0;n=o+8|0;k=o+4|0;m=o;c[f>>2]=a;c[g>>2]=b;c[h>
;>2]=d;c[j>>2]=e;c[m>>2]=c[h>>2];c[n>>2]=0;while(1){if((c[m>>2]|0)<=
0)break;a=c[m>>2]|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>16?16:a;c[k>>2]=0;while
(1){if((c[k>>2]|0)>=(c[h>>2]<<1|0))break;c[n>>2]=(c[n>>2]|0)+(c[(c[j>
;>2]|0)+(c[k>>2]<<2)>>2]|0);a=(Tb(c[n>>2]|0)|0)>>16;c[l+(c[k>>2
]<<2)>>2]=a;c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)
x3e;=(c[h>>2]<<1|0))break;c[l+((c[k>>2]|0)+1<<2)>>2]=(c[l+((c[k>>2]|
0)+1<<2)>>2]|0)-(c[l+(c[k>>2]<<2)>>2]|0);c[k>>2]=(c[k>>2]|
0)+2}pn(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,l);c[m>>2]=(c[m>>2]|0)-(c[h>>2
]|0)}i=o;return}function eo(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;p=i;i=i+48|0;f=p+32|0;g
=p+28|0;h=p+24|0;j=p+20|0;n=p+16|0;m=p+12|0;o=p+8|0;k=p+4|0;l=p;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j
x3e;>2]=e;if(c[(c[f>>2]|0)+4>>2]|0){i=p;return}c[m>>2]=(c[f>>2]|0)+16;c[o>>
;2]=c[c[f>>2]>>2];c[k>>2]=c[c[m>>2]>>2];c[l>>2]=c[(c[m>>2]|
0)+36>>2];if((c[h>>2]|0)!=((c[k>>2]|0)+(c[l>>2]|0)|0)){i=p;return}c[n>>2]=fo(c
[m>>2]|0,c[j>>2]|0,c[l>>2]|0,c[k>>2]|0,c[g>>2]|0,c[o>>2]|0)|0;if((c[
n>>2]|0)==0?(c[n>>2]=fo((c[m>>2]|0)+36|0,c[j>>2]|0,0,c[l>>2]|0,c[g>>
2]|0,c[o>>2]|0)|0,(c[n>>2]|0)==0):0){i=p;return}c[(c[f>>2]|0)+4>>2]=c[n>>2];i=
p;return}function fo(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;o=i;i=i+32|0;h=o+24|0;
j=o+20|0;k=o+16|0;l=o+12|0;p=o+8|0;m=o+4|0;n=o;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c
[p>>2]=f;c[m>>2]=g;c[n>>2]=0;c[n>>2]=Bn(c[h>>2]|0,c[p>>2]|0,c[m>
;>2]|0)|0;if(c[n>>2]|0){p=c[n>>2]|0;i=o;return p|0}c[n>>2]=go((c[h>>2]|0)+12|0,c[j
x3e;>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;p=c[n>>2]|0;i=o;return p|0}function go(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;u=i;i=i+48|0;v=u+44|0;j=u+40|0;k
=u+36|0;l=u+32|0;m=u+28|0;n=u+24|0;o=u+20|0;p=u+16|0;q=u+12|0;t=u+8|0;s=u+4|0;r=u;c[v>>2]=b;c[j>>2]=e;c[k>
;>2]=f;c[l>>2]=g;c[m>>2]=h;c[n>>2]=0;c[n>>2]=tn(c[v>>2]|0,c[m>>
2]|0,o)|0;if(c[n>>2]|0){v=c[n>>2]|0;i=u;return v|0}c[n>>2]=mn(c[o>>2]|0,c[l>>2
]|0,c[m>>2]|0)|0;if(c[n>>2]|0){v=c[n>>2]|0;i=u;return v|0}c[c[o>>2]>>2]=c[l>
;>2];c[p>>2]=(c[j>>2]|0)+((c[k>>2]|0)>>>3);c[q>>2]=128>>(c
[k>>2]&7);c[t>>2]=c[(c[o>>2]|0)+8>>2];c[s>>2]=128;while(1){if((c[l>
x3e;2]|0)>>>0<=0)break;c[r>>2]=(d[c[t>>2]>>0]|0)&~c[s>>2];if((d
[c[p>>2]>>0]|0)&c[q>>2]|0)c[r>>2]=c[r>>2]|c[s>>2];a[c[t>
x3e;2]>>0]=c[r>>2];c[q>>2]=c[q>>2]>>1;if(!(c[q>>2]|0)){c[p>>
;2]=(c[p>>2]|0)+1;c[q>>2]=128}c[s>>2]=c[s>>2]>>1;if(!(c[s>>2]|0)){c[
t>>2]=(c[t>>2]|0)+1;c[s>>2]=128}c[l>>2]=(c[l>>2]|0)+-1}v=c[n>>2]|0;i
=u;return v|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,m=0,n=0;n=i;i=i+32|0;e=n+28|0;f=n+24|0;g=n+20
|0;l=n+16|0;k=n+12|0;m=n+8|0;h=n+4|0;j=n;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[(c[e>>2]|0)+
4>>2]|0){i=n;return}c[k>>2]=(c[e>>2]|0)+16;c[m>>2]=c[c[e>>2]>>2];c[h
>>2]=c[c[k>>2]>>2];c[j>>2]=c[(c[k>>2]|0)+36>>2];if((c[f>>2
]|0)!=((c[h>>2]|0)+(c[j>>2]|0)|0)){i=n;return}c[l>>2]=fo(c[k>>2]|0,c[g>>2]|0,0
,c[h>>2]|0,0,c[m>>2]|0)|0;if((c[l>>2]|0)==0?(c[l>>2]=fo((c[k>>2]|0)+36|0,c[g
x3e;>2]|0,c[h>>2]|0,c[j>>2]|0,0,c[m>>2]|0)|0,(c[l>>2]|0)==0):0){i=n;return}c[(c[e
x3e;>2]|0)+4>>2]=c[l>>2];i=n;return}function io(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)+120>>2]=0;c[(c[d>>2]|0)+148>>2]=0;jo((c[d>>2]|0)+20|0);i=b;return
}function jo(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]>
x3e;2];ko((c[d>>2]|0)+16|0,c[e>>2]|0);ko((c[d>>2]|0)+16+36|0,c[e>>2]|0);c[(c[d>>
;2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;i=b;return}function ko(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;lo((c[f>>2]|0)+24|0,c[e>>2]|0);lo((c[f>>2]|0
)+12|0,c[e>>2]|0);no(c[f>>2]|0,c[e>>2]|0);i=d;return}function lo(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|
0)+4>>2];c[g>>2]=c[(c[d>>2]|0)+8>>2];while(1){if((c[f>>2]|0)>>>
0<=0)break;mo(c[g>>2]|0,c[e>>2]|0);c[f>>2]=(c[f>>2]|0)+-1;c[g>>2]=(c[g>
;>2]|0)+16}Fb(c[e>>2]|0,c[(c[d>>2]|0)+8>>2]|0);c[(c[d>>2]|0)+8>>2]=0;c[c[
d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;i=h;return}function mo(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>2
]|0);c[(c[e>>2]|0)+8>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[(
c[e>>2]|0)+12>>2]=0;i=d;return}function no(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>2]|0);c[(c[e>>2]|0)+8>
;>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;i=d;return}function oo(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;
c[c[e>>2]>>2]=0;c[g>>2]=bc(c[d>>2]|0,24,f)|0;if(c[f>>2]|0){g=c[f>>2]|
0;i=h;return g|0}c[(c[g>>2]|0)+8>>2]=c[d>>2];po(c[g>>2]|0);c[c[e>>2]>>
;2]=c[g>>2];g=c[f>>2]|0;i=h;return g|0}function po(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a
;c[d>>2]=c[d>>2];i=b;return}function qo(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;e=j+12
|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(!(c[e>>2]|0)){i=j;return}if((c[f
>>2]|0)!=0&(c[g>>2]|0)>=3076){c[h>>2]=c[f>>2];c[c[e>>2]>>2
]=(c[f>>2]|0)+1032;c[(c[e>>2]|0)+4>>2]=(c[f>>2]|0)+(c[g>>2]|0)-(c[c[e>>
;2]>>2]|0);c[(c[e>>2]|0)+12>>2]=c[h>>2];i=j;return}else{c[c[e>>2]>>2
]=0;c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+12>>2]=0;i=j;return}}function ro(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;c[h
x3e;>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>>2];i=e;return}function so(a,
d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l+20|0;e=l+16|0;j=l+12|0;f=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c
[j>>2]=d;c[f>>2]=c[(c[j>>2]|0)+4>>2];c[g>>2]=c[c[j>>2]>>2];
if((c[e>>2]|0?c[c[e>>2]>>2]|0:0)?c[(c[e>>2]|0)+4>>2]|0:0){if(!(c[f>>
2]|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}if(b[(c[f>>2]|0)+2>>1]|0?(b[c[f>>
2]>>1]|0)>0:0){if(c[(c[f>>2]|0)+12>>2]|0?c[(c[f>>2]|0)+4>>2]|0:0){if((b[(
c[f>>2]|0)+2>>1]|0)!=((b[(c[(c[f>>2]|0)+12>>2]|0)+((b[c[f>>2]>>1]|0)-
1<<1)>>1]|0)+1|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}c[h>>2]=c[(c[e>
x3e;2]|0)+12>>2];if(c[(c[j>>2]|0)+8>>2]&2|0){c[k>>2]=19;k=c[k>>2]|0;i=l;return
k|0}if(!(c[g>>2]|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}if(c[(c[g>>2]|0)+4>>
;2]|0?c[c[g>>2]>>2]|0:0){if(!(c[(c[g>>2]|0)+12>>2]|0)){c[k>>2]=20;k=c[k>
x3e;2]|0;i=l;return k|0}a=(c[h>>2]|0)+128|0;d=c[f>>2]|0;c[a>>2]=c[d>>2];c[a+4>>
;2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];c[a+16>>2]=c
[d+16>>2];a=(c[h>>2]|0)+104|0;g=c[g>>2]|0;c[a>>2]=c[g>>2];c[a+4>>2]=
c[g+4>>2];c[a+8>>2]=c[g+8>>2];c[a+12>>2]=c[g+12>>2];c[a+16>>2]=c[g+16
>>2];c[a+20>>2]=c[g+20>>2];c[(c[h>>2]|0)+28>>2]=c[c[e>>2]>>
;2];c[(c[h>>2]|0)+32>>2]=(c[(c[h>>2]|0)+28>>2]|0)+((((c[(c[e>>2]|0)+4>>
;2]|0)>>>0)/4|0)<<2);e=c[h>>2]|0;if(c[(c[j>>2]|0)+8>>2]&1|0)e=to(e)|
0;else e=uo(e)|0;c[k>>2]=e;k=c[k>>2]|0;i=l;return k|0}c[k>>2]=0;k=c[k>>2]|0;i=l;return k
|0}c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}c[k>>2]=0;k=c[k>>2]|0;i=l;return k|0}c[k>
x3e;2]=96;k=c[k>>2]|0;i=l;return k|0}function to(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>
x3e;2]=c[d>>2];i=b;return 19}function uo(e){e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;g=k+8|0;h=k+4|0;j=k;c[h>
x3e;2]=e;vo(c[h>>2]|0,c[(c[h>>2]|0)+128+16>>2]&256);c[(c[h>>2]|0)+24>>2]=
c[(c[h>>2]|0)+12>>2];e=c[h>>2]|0;if(!(c[(c[h>>2]|0)+128+16>>2]&8|0)){f=(c
[h>>2]|0)+180|0;if(c[e+128+16>>2]&16|0)a[f>>0]=4;else a[f>>0]=0;if(!(c[(c[h>
x3e;2]|0)+128+16>>2]&32)){f=(c[h>>2]|0)+180|0;a[f>>0]=(d[f>>0]|0)+1}}else a[e+180
x3e;>0]=2;a[(c[h>>2]|0)+181>>0]=((c[(c[h>>2]|0)+128+16>>2]&512|0)!=0^1)&1
;c[(c[h>>2]|0)+164>>2]=16;c[(c[h>>2]|0)+168>>2]=1;c[(c[h>>2]|0)+172>>
;2]=2;c[(c[h>>2]|0)+176>>2]=39;c[(c[h>>2]|0)+1024>>2]=0;b[(c[h>>2]|0)+960>
;>1]=0;b[(c[h>>2]|0)+960+2>>1]=(c[(c[h>>2]|0)+104>>2]|0)-1;b[(c[h>>2]|0)+
56>>1]=c[(c[h>>2]|0)+104+4>>2];c[(c[h>>2]|0)+60>>2]=c[(c[h>>2]|0)+104
+12>>2];f=Ao(c[h>>2]|0,0)|0;c[j>>2]=f;if(f|0){c[g>>2]=c[j>>2];j=c[g>>
;2]|0;i=k;return j|0}if((a[(c[h>>2]|0)+181>>0]|0?(d[(c[h>>2]|0)+180>>0]|0)!=2:0)?(c[(c[h
>>2]|0)+164>>2]=17,c[(c[h>>2]|0)+168>>2]=3,c[(c[h>>2]|0)+172>>2]=4,c
[(c[h>>2]|0)+176>>2]=40,c[(c[h>>2]|0)+1024>>2]=0,b[(c[h>>2]|0)+960>>
1]=0,b[(c[h>>2]|0)+960+2>>1]=(c[(c[h>>2]|0)+104+4>>2]|0)-1,h=Ao(c[h>>2]|0,1)|0
,c[j>>2]=h,h|0):0){c[g>>2]=c[j>>2];j=c[g>>2]|0;i=k;return j|0}c[g>>2]=0;j=c[g
x3e;>2]|0;i=k;return j|0}function vo(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;b=c[d>>2]|0;if(c[f>>2]|0){c[b>>2]=12;c[(c[d>>2]|0)+16>>2]=256;c[(c
[d>>2]|0)+20>>2]=50}else{c[b>>2]=6;c[(c[d>>2]|0)+16>>2]=32;c[(c[d>>2
]|0)+20>>2]=2}c[(c[d>>2]|0)+4>>2]=1<<c[c[d>>2]>>2];c[(c[d>>
;2]|0)+8>>2]=(c[(c[d>>2]|0)+4>>2]|0)/2|0;c[(c[d>>2]|0)+12>>2]=(c[c[d>>
;2]>>2]|0)-6;i=e;return}function wo(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;h=i;i=i+16|0;f=h+12|0;j=h+8|0;k=h
+4|0;g=h;c[f>>2]=a;c[j>>2]=d;c[k>>2]=e;c[g>>2]=c[(c[f>>2]|0)+104+8>>
2];c[k>>2]=c[k>>2];b[(c[f>>2]|0)+156>>1]=0-(c[g>>2]|0);a=_(0-(b[c[j>>
;2]>>1]|0)|0,c[g>>2]|0)|0;c[(c[f>>2]|0)+148>>2]=a;if((c[g>>2]|0)<=0){k=c[
f>>2]|0;k=k+158|0;b[k>>1]=0;k=c[f>>2]|0;k=k+160|0;b[k>>1]=0;i=h;return}j=_((c[(c[f>
x3e;2]|0)+104>>2]|0)-1|0,c[g>>2]|0)|0;k=(c[f>>2]|0)+148|0;c[k>>2]=(c[k>>2]|0)+
j;k=c[f>>2]|0;k=k+158|0;b[k>>1]=0;k=c[f>>2]|0;k=k+160|0;b[k>>1]=0;i=h;return}function xo
(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;v=i;i=i+48|0;m=v+36
|0;z=v+40|0;w=v+32|0;n=v+28|0;y=v+24|0;x=v+20|0;p=v+16|0;q=v+12|0;o=v+8|0;s=v+4|0;r=v+43|0;t=v+42|0;u=v;c[m>>2]=f;b[z
x3e;>1]=g;c[w>>2]=h;c[n>>2]=j;c[y>>2]=k;c[x>>2]=l;b[z>>1]=b[z>>
1]|0;c[y>>2]=c[y>>2];c[x>>2]=c[x>>2];c[p>>2]=((c[w>>2]|0)+(c[(c[m>
;>2]|0)+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>2]|0))>>c[c[m>>2]>>
2];if(((c[n>>2]|0)-(c[w>>2]|0)-(c[(c[m>>2]|0)+4>>2]|0)|0)<=(c[(c[m>>2]|0)+
20>>2]|0))c[q>>2]=c[p>>2];else c[q>>2]=(c[n>>2]&0-(c[(c[m>>2]|0
)+4>>2]|0))>>c[c[m>>2]>>2];if((c[q>>2]|0)<0){i=v;return}if((c[p>>
;2]|0)>=(e[(c[m>>2]|0)+56>>1]|0)){i=v;return}if((c[p>>2]|0)<0)c[p>>2]=0;if((c[
q>>2]|0)>=(e[(c[m>>2]|0)+56>>1]|0))c[q>>2]=(e[(c[m>>2]|0)+56>>1
]|0)-1;c[o>>2]=(c[p>>2]>>3&65535)<<16>>16;c[s>>2]=(c[q>>
;2]>>3&65535)<<16>>16;a[r>>0]=255>>(c[p>>2]&7);a[t>
x3e;0]=~(127>>(c[q>>2]&7));if((b[(c[m>>2]|0)+158>>1]|0)>(c[o>>2]|0))
b[(c[m>>2]|0)+158>>1]=c[o>>2];if((b[(c[m>>2]|0)+160>>1]|0)<(c[s>>
;2]|0))b[(c[m>>2]|0)+160>>1]=c[s>>2];c[u>>2]=(c[(c[m>>2]|0)+60>>2]|0
)+(c[(c[m>>2]|0)+148>>2]|0)+(c[o>>2]|0);c[s>>2]=(c[s>>2]|0)-(c[o>>2]|
0);m=d[r>>0]|0;if((c[s>>2]|0)<=0){z=c[u>>2]|0;a[z>>0]=d[z>>0]|m&d[t
x3e;>0];i=v;return}z=c[u>>2]|0;a[z>>0]=d[z>>0]|m;c[s>>2]=(c[s>>2]|0)+-1;while
(1){if((c[s>>2]|0)<=0)break;z=(c[u>>2]|0)+1|0;c[u>>2]=z;a[z>>0]=-1;c[s>>2
]=(c[s>>2]|0)+-1}z=(c[u>>2]|0)+1|0;a[z>>0]=d[z>>0]|d[t>>0];i=v;return}function
yo(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;y=i;i=i+48|0;m=y+32
|0;n=y+40|0;o=y+28|0;p=y+24|0;q=y+20|0;r=y+16|0;u=y+12|0;v=y+8|0;x=y+4|0;s=y+38|0;w=y+36|0;t=y;c[m>>2]=f;b[n>>
;1]=g;c[o>>2]=h;c[p>>2]=j;c[q>>2]=k;c[r>>2]=l;c[u>>2]=(c[o>>2]|0)+(c
[(c[m>>2]|0)+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>2]|0);c[v>>2]=c[p>>
2]&0-(c[(c[m>>2]|0)+4>>2]|0);c[x>>2]=c[u>>2];if((c[u>>2]|0)>(c[v>
;>2]|0)){c[t>>2]=c[(c[q>>2]|0)+12>>2]&7;if((c[u>>2]|0)!=((c[v>>2]|0)+(
c[(c[m>>2]|0)+4>>2]|0)|0)){i=y;return}a:do switch(c[t>>2]|0){case 0:{c[x>>2]=c[v>
x3e;2];break}case 4:{c[x>>2]=(((c[o>>2]|0)+(c[p>>2]|0)-1|0)/2|0)+(c[(c[m>>2]|0)+8>
x3e;2]|0)&0-(c[(c[m>>2]|0)+4>>2]|0);break}case 5:case 1:{if((c[(c[q>>2]|0)+28>>2]|0
)==(c[r>>2]|0)?(c[(c[q>>2]|0)+16>>2]|0)<=0:0){if(!(c[(c[q>>2]|0)+12>>2]
x26;16)){i=y;return}if(((c[p>>2]|0)-(c[o>>2]|0)|0)<(c[(c[m>>2]|0)+8>>2]|0)){i=y;return
}}if((c[(c[r>>2]|0)+28>>2]|0)==(c[q>>2]|0)?(c[(c[q>>2]|0)+20>>2]|0)==(b[n>
;>1]|0):0){if(!(c[(c[q>>2]|0)+12>>2]&32)){i=y;return}if(((c[p>>2]|0)-(c[o>>2]|
0)|0)<(c[(c[m>>2]|0)+8>>2]|0)){i=y;return}}if((c[t>>2]|0)==1){c[x>>2]=c[v>>
;2];break a}else{c[x>>2]=(((c[o>>2]|0)+(c[p>>2]|0)-1|0)/2|0)+(c[(c[m>>2]|0)+8>>
;2]|0)&0-(c[(c[m>>2]|0)+4>>2]|0);break a}}default:{i=y;return}}while(0);c[u>>2]=(c[x>>
;2]|0)==(c[u>>2]|0)?c[v>>2]|0:c[u>>2]|0;c[u>>2]=c[u>>2]>>c[c[m>
x3e;2]>>2];b[s>>1]=c[u>>2]>>3;b[w>>1]=c[u>>2]&7;if(((c[u>
x3e;2]|0)>=0?(c[u>>2]|0)<(e[(c[m>>2]|0)+56>>1]|0):0)?d[(c[(c[m>>2]|0)+60>
x3e;2]|0)+((c[(c[m>>2]|0)+148>>2]|0)+(b[s>>1]|0))>>0]&128>>b[w>>
;1]|0:0){i=y;return}}c[u>>2]=c[x>>2]>>c[c[m>>2]>>2];if((c[u>>2]|0)
x3c;0){i=y;return}if((c[u>>2]|0)>=(e[(c[m>>2]|0)+56>>1]|0)){i=y;return}b[s>>1]=c[u
x3e;>2]>>3;b[w>>1]=c[u>>2]&7;if((b[(c[m>>2]|0)+158>>1]|0)>(b[s
x3e;>1]|0))b[(c[m>>2]|0)+158>>1]=b[s>>1]|0;if((b[(c[m>>2]|0)+160>>1]|0)
x3c;(b[s>>1]|0))b[(c[m>>2]|0)+160>>1]=b[s>>1]|0;g=(c[(c[m>>2]|0)+60>>
;2]|0)+((c[(c[m>>2]|0)+148>>2]|0)+(b[s>>1]|0))|0;a[g>>0]=d[g>>0]|(128>>
;b[w>>1]&255)<<24>>24;i=y;return}function zo(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>
x3e;2]=a;a=(c[e>>2]|0)+148|0;c[a>>2]=(c[a>>2]|0)+(b[(c[e>>2]|0)+156>>1]|0);i=d
;return}function Ao(d,e){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+16|0;k=m+4|0;l=m;f=m+14|0;g=m+12|0;h=m+10|0;j=m+8|0
;c[l>>2]=d;a[f>>0]=e;while(1){if((c[(c[l>>2]|0)+1024>>2]|0)<0){e=14;break}d=_(b[(c[
l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>>1]|0,c[(c[l>>2]|0)+4>
;>2]|0)|0;c[(c[l>>2]|0)+80>>2]=d;d=_(b[(c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>
;2]<<2)>>1]|0,c[(c[l>>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+76>>2]=d;c[(c[l
>>2]|0)+40>>2]=c[(c[l>>2]|0)+28>>2];c[(c[l>>2]|0)+44>>2]=0;d=(Bo(c[l
>>2]|0,a[f>>0]|0)|0)<<24>>24!=0;e=c[l>>2]|0;if(!d){if(c[e+92>>2]|0?(
Qo(c[l>>2]|0)|0)<<24>>24:0){e=12;break}d=(c[l>>2]|0)+1024|0;c[d>>2]=(c[d>
x3e;2]|0)+-1;continue}if((c[e+44>>2]|0)!=98){e=5;break}c[(c[l>>2]|0)+44>>2]=0;b[g>>1]=b[(
c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)>>1]|0;b[h>>1]=b[(c[l>
;>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>>1]|0;b[j>>1]=((b[g>>
1]|0)+(b[h>>1]|0)|0)/2|0;if((c[(c[l>>2]|0)+1024>>2]|0)>=7){e=8;break}if((b[j>>1]|0)
x3c;(b[g>>1]|0)){e=8;break}b[(c[l>>2]|0)+960+((c[(c[l>>2]|0)+1024>>2]|0)+1<<2)
x3e;>1]=b[j>>1]|0;b[(c[l>>2]|0)+960+((c[(c[l>>2]|0)+1024>>2]|0)+1<<2)+2
x3e;>1]=b[h>>1]|0;b[(c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>
x3e;1]=(b[j>>1]|0)-1;d=(c[l>>2]|0)+1024|0;c[d>>2]=(c[d>>2]|0)+1}if((e|0)==5){c[k>
x3e;2]=1;l=c[k>>2]|0;i=m;return l|0}else if((e|0)==8){c[(c[l>>2]|0)+1024>>2]=0;c[(c[l>>2
]|0)+44>>2]=20;c[k>>2]=c[(c[l>>2]|0)+44>>2];l=c[k>>2]|0;i=m;return l|0}else if
((e|0)==12){c[k>>2]=c[(c[l>>2]|0)+44>>2];l=c[k>>2]|0;i=m;return l|0}else if((e|0)==14){c
[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}return 0}function Bo(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;n=i;i=i+32|0;l=n+21|0;m=n+16|0;f=n+12|0;g=n+8|0;k=n+4|0;h=n;j=n+20|0;c[m>>2]=d;c[f>>2]=e;c[(c[m>>
;2]|0)+92>>2]=0;a[(c[m>>2]|0)+87>>0]=0;a[(c[m>>2]|0)+86>>0]=0;c[(c[m>>
;2]|0)+36>>2]=(c[(c[m>>2]|0)+32>>2]|0)+-32;c[(c[m>>2]|0)+48>>2]=0;c[(c[m>
x3e;2]|0)+88>>2]=c[(c[m>>2]|0)+40>>2];c[(c[(c[m>>2]|0)+88>>2]|0)+8>>
2]=c[(c[m>>2]|0)+40>>2];b[(c[m>>2]|0)+84>>1]=0;c[k>>2]=0;c[g>>2]=0;while
(1){d=c[m>>2]|0;if((c[g>>2]|0)>=(b[(c[m>>2]|0)+128>>1]|0)){e=19;break}c[d+100>
x3e;2]=0;c[(c[m>>2]|0)+96>>2]=0;if((Co(c[m>>2]|0,c[k>>2]&65535,b[(c[(c[m>>
;2]|0)+128+12>>2]|0)+(c[g>>2]<<1)>>1]|0,c[f>>2]|0)|0)<<24>>
;24){e=4;break}c[k>>2]=(b[(c[(c[m>>2]|0)+128+12>>2]|0)+(c[g>>2]<<1)>>
;1]|0)+1;if(((((c[(c[m>>2]|0)+72>>2]&(c[(c[m>>2]|0)+4>>2]|0)-1|0)==0?(c[(c[m>
x3e;2]|0)+72>>2]|0)>=(c[(c[m>>2]|0)+76>>2]|0):0)?(c[(c[m>>2]|0)+72>>2]|0)
x3c;=(c[(c[m>>2]|0)+80>>2]|0):0)?c[(c[m>>2]|0)+96>>2]|0:0)?(c[(c[(c[m>>2]|0)+96
>>2]|0)+12>>2]&8|0)==(c[(c[(c[m>>2]|0)+88>>2]|0)+12>>2]&8|0):0){d=(c
[m>>2]|0)+40|0;c[d>>2]=(c[d>>2]|0)+-4}c[h>>2]=c[(c[m>>2]|0)+88>>2];e
=c[(c[m>>2]|0)+72>>2]|0;d=c[m>>2]|0;if(c[(c[(c[m>>2]|0)+88>>2]|0)+12>>
;2]&8|0)a[j>>0]=(e-(c[d+72>>2]&0-(c[(c[m>>2]|0)+4>>2]|0))|0)>=(c[(c[m>
;>2]|0)+8>>2]|0);else a[j>>0]=((e+(c[d+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>
;2]|0))-(c[(c[m>>2]|0)+72>>2]|0)|0)>=(c[(c[m>>2]|0)+8>>2]|0);if((Fo(c[m>>
2]|0,a[j>>0]|0)|0)<<24>>24){e=15;break}if(c[(c[m>>2]|0)+96>>2]|0)c[(c[h>
x3e;2]|0)+28>>2]=c[(c[m>>2]|0)+96>>2];c[g>>2]=(c[g>>2]|0)+1}if((e|0)==4){a[l
x3e;>0]=1;m=a[l>>0]|0;i=n;return m|0}else if((e|0)==15){a[l>>0]=1;m=a[l>>0]|0;i=n;return m|0}
else if((e|0)==19)if((Oo(d)|0)<<24>>24){a[l>>0]=1;m=a[l>>0]|0;i=n;return m|0}else{a[l>
;>0]=(c[(c[m>>2]|0)+40>>2]|0)>>>0<(c[(c[m>>2]|0)+36>>2]|0)>
;>>0?0:1;m=a[l>>0]|0;i=n;return m|0}return 0}function Co(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,P=0,Q=0,R=0;R=i;i=
i+144|0;k=R+140|0;l=R+132|0;m=R+138|0;n=R+136|0;o=R+128|0;D=R+120|0;C=R+112|0;F=R+104|0;r=R+96|0;q=R+92|0;p=R+88|0;B=R+84|0;A=R+
80|0;s=R+76|0;t=R+72|0;G=R+68|0;L=R+64|0;u=R+60|0;v=R+56|0;E=R+48|0;K=R+44|0;P=R+40|0;w=R+36|0;H=R+32|0;M=R+28|0;I=R+24|0;N=R+20
|0;J=R+16|0;O=R+12|0;x=R+8|0;y=R+4|0;z=R;c[l>>2]=f;b[m>>1]=g;b[n>>1]=h;c[o>>2]=j;c[r>
;>2]=c[(c[l>>2]|0)+128+4>>2];c[p>>2]=(c[r>>2]|0)+(e[n>>1]<<3);c
[F>>2]=(c[(c[r>>2]|0)+(e[m>>1]<<3)>>2]<<c[(c[l>>2]|0)+24
x3e;>2])-(c[(c[l>>2]|0)+8>>2]|0);c[F+4>>2]=(c[(c[r>>2]|0)+(e[m>>1]<
x3c;3)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[D>
;>2]=(c[(c[r>>2]|0)+(e[n>>1]<<3)>>2]<<c[(c[l>>2]|0)+24>>
;2])-(c[(c[l>>2]|0)+8>>2]|0);c[D+4>>2]=(c[(c[r>>2]|0)+(e[n>>1]<<3)+4
>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>>
;2]|0){c[s>>2]=c[F>>2];c[F>>2]=c[F+4>>2];c[F+4>>2]=c[s>>2];c[t>
x3e;2]=c[D>>2];c[D>>2]=c[D+4>>2];c[D+4>>2]=c[t>>2]};c[C>>2]=c[F>
;>2];c[C+4>>2]=c[F+4>>2];c[q>>2]=(c[r>>2]|0)+(e[m>>1]<<3);c[B
x3e;>2]=(c[(c[l>>2]|0)+128+8>>2]|0)+(e[m>>1]|0);if(a[c[B>>2]>>0]&4|0
)a[(c[l>>2]|0)+180>>0]=d[c[B>>2]>>0]>>5;c[A>>2]=a[c[B>>2]
x3e;>0]&3;a:do if((c[A>>2]|0)==2)Q=39;else{if(!(c[A>>2]|0)){if((a[(c[(c[l>>2]|0)+128+8
x3e;>2]|0)+(e[n>>1]|0)>>0]&3|0)==1){c[F>>2]=c[D>>2];c[F+4>>2]=c[D+4
x3e;>2];c[p>>2]=(c[p>>2]|0)+-8}else{c[F>>2]=((c[F>>2]|0)+(c[D>>2]|0)|0)/2
|0;c[F+4>>2]=((c[F+4>>2]|0)+(c[D+4>>2]|0)|0)/2|0;c[D>>2]=c[F>>2];c[D+4>
x3e;2]=c[F+4>>2]}c[q>>2]=(c[q>>2]|0)+-8;c[B>>2]=(c[B>>2]|0)+-1}c[(c[l>>
;2]|0)+68>>2]=c[F>>2];c[(c[l>>2]|0)+72>>2]=c[F+4>>2];b:while(1){if((c[q>
x3e;2]|0)>>>0>=(c[p>>2]|0)>>>0){Q=37;break}c[q>>2]=(c[q>>2]|0)+
8;c[B>>2]=(c[B>>2]|0)+1;c[A>>2]=a[c[B>>2]>>0]&3;switch(c[A>>2]|
0){case 1:{c[G>>2]=(c[c[q>>2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>
;>2]|0)+8>>2]|0);c[L>>2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24
>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>>2]|0){c[u>>2]=c[G>>2];c[G>
;>2]=c[L>>2];c[L>>2]=c[u>>2]}if((Do(c[l>>2]|0,c[G>>2]|0,c[L>>2]|
0)|0)<<24>>24)break a;else continue b}case 0:{c[C>>2]=(c[c[q>>2]>>2]<<
;c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[C+4>>2]=(c[(c[q>>2]|
0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>
x3e;2]|0){c[v>>2]=c[C>>2];c[C>>2]=c[C+4>>2];c[C+4>>2]=c[v>>2]}while(
1){if((c[q>>2]|0)>>>0>=(c[p>>2]|0)>>>0){Q=27;break b}c[q>>2]=(c
[q>>2]|0)+8;c[B>>2]=(c[B>>2]|0)+1;c[A>>2]=a[c[B>>2]>>0]&3;c[K
x3e;>2]=(c[c[q>>2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8
x3e;>2]|0);c[P>>2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(
c[(c[l>>2]|0)+8>>2]|0);if(c[o>>2]|0){c[w>>2]=c[K>>2];c[K>>2]=c[P>
;>2];c[P>>2]=c[w>>2]}if((c[A>>2]|0)==1)break;if(c[A>>2]|0){Q=39;break a}c[E>
x3e;2]=((c[C>>2]|0)+(c[K>>2]|0)|0)/2|0;c[E+4>>2]=((c[C+4>>2]|0)+(c[P>>2]|0)|0)/
2|0;if((Io(c[l>>2]|0,c[C>>2]|0,c[C+4>>2]|0,c[E>>2]|0,c[E+4>>2]|0)|0)<<
;24>>24)break a;c[C>>2]=c[K>>2];c[C+4>>2]=c[P>>2]}if((Io(c[l>>2]|0,c
[C>>2]|0,c[C+4>>2]|0,c[K>>2]|0,c[P>>2]|0)|0)<<24>>24)break a;else continue
b}default:{if(((c[q>>2]|0)+8|0)>>>0>(c[p>>2]|0)>>>0){Q=39;break a}if((a[(
c[B>>2]|0)+1>>0]&3|0)!=2){Q=39;break a}c[q>>2]=(c[q>>2]|0)+16;c[B>>2]=(c[
B>>2]|0)+2;c[H>>2]=(c[(c[q>>2]|0)+-16>>2]<<c[(c[l>>2]|0)+24>>
;2])-(c[(c[l>>2]|0)+8>>2]|0);c[M>>2]=(c[(c[q>>2]|0)+-16+4>>2]<<c[(c[
l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[I>>2]=(c[(c[q>>2]|0)+-8
x3e;>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[N>>2]=(
c[(c[q>>2]|0)+-8+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>
x3e;2]|0);if(c[o>>2]|0){c[x>>2]=c[H>>2];c[H>>2]=c[M>>2];c[M>>2]=c[x
x3e;>2];c[y>>2]=c[I>>2];c[I>>2]=c[N>>2];c[N>>2]=c[y>>2]}if((c[q
>>2]|0)>>>0>(c[p>>2]|0)>>>0){Q=36;break b}c[J>>2]=(c[c[q>
x3e;2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[O>
x3e;2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8
x3e;>2]|0);if(c[o>>2]|0){c[z>>2]=c[J>>2];c[J>>2]=c[O>>2];c[O>>2
]=c[z>>2]}if((Mo(c[l>>2]|0,c[H>>2]|0,c[M>>2]|0,c[I>>2]|0,c[N>>2]|0,c
[J>>2]|0,c[O>>2]|0)|0)<<24>>24)break a;else continue b}}}if((Q|0)==27){if((Io(c[l>
x3e;2]|0,c[C>>2]|0,c[C+4>>2]|0,c[F>>2]|0,c[F+4>>2]|0)|0)<<24>>24)break
}else if((Q|0)==36){if((Mo(c[l>>2]|0,c[H>>2]|0,c[M>>2]|0,c[I>>2]|0,c[N>>2]|0,c
[F>>2]|0,c[F+4>>2]|0)|0)<<24>>24)break}else if((Q|0)==37?(Do(c[l>>2]|0,c[F>
;>2]|0,c[F+4>>2]|0)|0)<<24>>24:0)break;a[k>>0]=0;Q=a[k>>0]|0;i=R;return Q
|0}while(0);if((Q|0)==39)c[(c[l>>2]|0)+44>>2]=20;a[k>>0]=1;Q=a[k>>0]|0;i=R;return Q|0}function
Do(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[g>>2]=b;c[h>>
;2]=d;c[j>>2]=e;a:do switch(c[(c[g>>2]|0)+100>>2]|0){case 0:{if((c[j>>2]|0)>(c[(c[g
>>2]|0)+72>>2]|0)){if(!((Eo(c[g>>2]|0,1,(((c[(c[g>>2]|0)+72>>2]|0)+(c[(c[g>
;>2]|0)+4>>2]|0)-1&0-(c[(c[g>>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72>>2]|
0)|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24))break a;a[f>>0]=1;e=
a[f>>0]|0;i=k;return e|0}if((c[j>>2]|0)<(c[(c[g>>2]|0)+72>>2]|0)?(Eo(c[g>>
;2]|0,2,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>2]&0-(c[(c[g>>2]|0)+
4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24:0){a[f>
x3e;0]=1;e=a[f>>0]|0;i=k;return e|0}break}case 1:{if((c[j>>2]|0)<(c[(c[g>>2]|0)+72>>
;2]|0)){if(((Fo(c[g>>2]|0,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>2]&
;0-(c[(c[g>>2]|0)+4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24
x3e;>24|0)==0?((Eo(c[g>>2]|0,2,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>
;2]&0-(c[(c[g>>2]|0)+4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<
x3c;24>>24|0)==0:0)break a;a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}case 2:{if((c[j>>2
]|0)>(c[(c[g>>2]|0)+72>>2]|0)){if(((Fo(c[g>>2]|0,(((c[(c[g>>2]|0)+72>>2]|
0)+(c[(c[g>>2]|0)+4>>2]|0)-1&0-(c[(c[g>>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72
>>2]|0)|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24|0)==0?((Eo(c[g
x3e;>2]|0,1,(((c[(c[g>>2]|0)+72>>2]|0)+(c[(c[g>>2]|0)+4>>2]|0)-1&0-(c[(c[g>
;>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72>>2]|0)|0)>=(c[(c[g>>2]|0)+8>>2]|
0)&255)|0)<<24>>24|0)==0:0)break a;a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}default
:{}}while(0);switch(c[(c[g>>2]|0)+100>>2]|0){case 1:{if((Go(c[g>>2]|0,c[(c[g>>2]|0)+68
x3e;>2]|0,c[(c[g>>2]|0)+72>>2]|0,c[h>>2]|0,c[j>>2]|0,c[(c[g>>2]|0)+76>
;>2]|0,c[(c[g>>2]|0)+80>>2]|0)|0)<<24>>24){a[f>>0]=1;e=a[f>>0]|
0;i=k;return e|0}break}case 2:{if((Ho(c[g>>2]|0,c[(c[g>>2]|0)+68>>2]|0,c[(c[g>>2]|0)+72
x3e;>2]|0,c[h>>2]|0,c[j>>2]|0,c[(c[g>>2]|0)+76>>2]|0,c[(c[g>>2]|0)+80>
;>2]|0)|0)<<24>>24){a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}default:{}}c[(c[g>
;>2]|0)+68>>2]=c[h>>2];c[(c[g>>2]|0)+72>>2]=c[j>>2];a[f>>0]=0;e
=a[f>>0]|0;i=k;return e|0}function Eo(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+9|0;h=l+4|0;j=
l;k=l+8|0;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;if(!(c[(c[h>>2]|0)+92>>2]|0)){c[(c[h
x3e;>2]|0)+88>>2]=c[(c[h>>2]|0)+40>>2];c[(c[h>>2]|0)+92>>2]=c[(c[h>
x3e;2]|0)+88>>2];b=(c[h>>2]|0)+40|0;c[b>>2]=(c[b>>2]|0)+32}e=c[h>>2]|0;if((c[(
c[h>>2]|0)+40>>2]|0)>>>0>=(c[(c[h>>2]|0)+36>>2]|0)>>>
0){c[e+44>>2]=98;a[g>>0]=1;k=a[g>>0]|0;i=l;return k|0}c[(c[e+88>>2]|0)+12>>2]=
0;c[(c[(c[h>>2]|0)+88>>2]|0)+20>>2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+16>>
;2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+8>>2]=c[(c[h>>2]|0)+40>>2];c[(c[(c[h>>
;2]|0)+88>>2]|0)+4>>2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+28>>2]=0;c[(c[(c[h>
x3e;2]|0)+88>>2]|0)+12>>2]=d[(c[h>>2]|0)+180>>0];switch(c[j>>2]|0){case 1:{b=(
c[(c[h>>2]|0)+88>>2]|0)+12|0;c[b>>2]=c[b>>2]|8;if(a[k>>0]|0){k=(c[(c[h>
x3e;2]|0)+88>>2]|0)+12|0;c[k>>2]=c[k>>2]|32}break}case 2:{if(a[k>>0]|0){k=(c[(c[h>
x3e;2]|0)+88>>2]|0)+12|0;c[k>>2]=c[k>>2]|16}break}default:{c[(c[h>>2]|0)+44>>2
]=20;a[g>>0]=1;k=a[g>>0]|0;i=l;return k|0}}if(!(c[(c[h>>2]|0)+96>>2]|0))c[(c[h>>
;2]|0)+96>>2]=c[(c[h>>2]|0)+88>>2];c[(c[h>>2]|0)+100>>2]=c[j>>2];a[(
c[h>>2]|0)+86>>0]=1;a[(c[h>>2]|0)+87>>0]=0;a[g>>0]=0;k=a[g>>0]|0;i=l
;return k|0}function Fo(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;j=l+13|0;k=l+8|0;f=l+12|0;g=l+4|0;h=l;c[k>
;>2]=d;a[f>>0]=e;c[g>>2]=((c[(c[k>>2]|0)+40>>2]|0)-(c[(c[(c[k>>2]|0)+88
x3e;>2]|0)+8>>2]|0)|0)/4|0;if((c[g>>2]|0)<0){c[(c[k>>2]|0)+44>>2]=99;a[j>
x3e;0]=1;k=a[j>>0]|0;i=l;return k|0}if((c[g>>2]|0)>0){c[(c[(c[k>>2]|0)+88>>2]|0)+16
>>2]=c[g>>2];do if(a[f>>0]|0){f=(c[(c[k>>2]|0)+88>>2]|0)+12|0;g=c[f>>
;2]|0;if(c[(c[(c[k>>2]|0)+88>>2]|0)+12>>2]&8|0){c[f>>2]=g|16;break}else{c[f>
x3e;2]=g|32;break}}while(0);c[h>>2]=c[(c[k>>2]|0)+88>>2];c[(c[k>>2]|0)+88>>2]=
c[(c[k>>2]|0)+40>>2];d=(c[k>>2]|0)+40|0;c[d>>2]=(c[d>>2]|0)+32;c[(c[(c[k>
x3e;2]|0)+88>>2]|0)+16>>2]=0;c[(c[(c[k>>2]|0)+88>>2]|0)+8>>2]=c[(c[k>>
;2]|0)+40>>2];c[(c[h>>2]|0)+28>>2]=c[(c[k>>2]|0)+88>>2];h=(c[k>>2]|0
)+84|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}f=c[k>>2]|0;if((c[(c[k>>2]|0)+40
>>2]|0)>>>0>=(c[(c[k>>2]|0)+36>>2]|0)>>>0){c[f+44>>2]=
98;a[j>>0]=1;k=a[j>>0]|0;i=l;return k|0}else{a[f+87>>0]=0;a[j>>0]=0;k=a[j>>0]|
0;i=l;return k|0}return 0}function Go(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;C=i;i=i+80|0;s=C+72|0;t=C+68|0;u=C+64|0;k=C+60|0;D=C+56|0;l=C+52|0;m=C+48|0;n
=C+44|0;w=C+40|0;x=C+36|0;o=C+32|0;p=C+28|0;q=C+24|0;r=C+20|0;A=C+16|0;y=C+12|0;z=C+8|0;v=C+4|0;B=C;c[t>>2]=b;c[u>
;>2]=d;c[k>>2]=e;c[D>>2]=f;c[l>>2]=g;c[m>>2]=h;c[n>>2]=j;c[w>>2
]=(c[D>>2]|0)-(c[u>>2]|0);c[x>>2]=(c[l>>2]|0)-(c[k>>2]|0);if(((c[x>>
2]|0)>0?(c[l>>2]|0)>=(c[m>>2]|0):0)?(c[k>>2]|0)<=(c[n>>2]|0):0){if((c[k
x3e;>2]|0)<(c[m>>2]|0)){D=xb(c[w>>2]|0,(c[m>>2]|0)-(c[k>>2]|0)|0,c[x>>
;2]|0)|0;c[u>>2]=(c[u>>2]|0)+D;c[o>>2]=c[m>>2]>>c[c[t>>2]>>
;2];c[q>>2]=0}else{c[o>>2]=c[k>>2]>>c[c[t>>2]>>2];c[q>>2]=
c[k>>2]&(c[(c[t>>2]|0)+4>>2]|0)-1}if((c[l>>2]|0)>(c[n>>2]|0)){c[p>
;>2]=c[n>>2]>>c[c[t>>2]>>2];c[r>>2]=0}else{c[p>>2]=c[l>>
;2]>>c[c[t>>2]>>2];c[r>>2]=c[l>>2]&(c[(c[t>>2]|0)+4>>
2]|0)-1}do if((c[q>>2]|0)<=0){if(a[(c[t>>2]|0)+87>>0]|0){D=(c[t>>2]|0)+40|0;c[D>
;>2]=(c[D>>2]|0)+-4;a[(c[t>>2]|0)+87>>0]=0}}else{if((c[o>>2]|0)!=(c[p>>2]|
0)){D=xb(c[w>>2]|0,(c[(c[t>>2]|0)+4>>2]|0)-(c[q>>2]|0)|0,c[x>>2]|0)|0;c[u>
;>2]=(c[u>>2]|0)+D;c[o>>2]=(c[o>>2]|0)+1;break}a[s>>0]=0;D=a[s>>0]|0;i=C;
return D|0}while(0);a[(c[t>>2]|0)+87>>0]=(c[r>>2]|0)==0;if(a[(c[t>>2]|0)+86>>0
]|0){c[(c[(c[t>>2]|0)+88>>2]|0)+20>>2]=c[o>>2];a[(c[t>>2]|0)+86>>0]=
0}c[A>>2]=(c[p>>2]|0)-(c[o>>2]|0)+1;if(((c[(c[t>>2]|0)+40>>2]|0)+(c[A>>
;2]<<2)|0)>>>0>=(c[(c[t>>2]|0)+36>>2]|0)>>>0){c[(c[t>>
;2]|0)+44>>2]=98;a[s>>0]=1;D=a[s>>0]|0;i=C;return D|0}k=c[(c[t>>2]|0)+4>>2]|0;
l=c[w>>2]|0;if((c[w>>2]|0)>0){c[y>>2]=xb(k,l,c[x>>2]|0)|0;D=_(c[(c[t>>2]|
0)+4>>2]|0,c[w>>2]|0)|0;c[z>>2]=(D|0)%(c[x>>2]|0)|0;c[w>>2]=1}else{c[y>
x3e;2]=_(xb(k,0-l|0,c[x>>2]|0)|0,-1)|0;D=_(c[(c[t>>2]|0)+4>>2]|0,0-(c[w>>2]|0)|0)|0;c[z
x3e;>2]=(D|0)%(c[x>>2]|0)|0;c[w>>2]=-1}c[v>>2]=0-(c[x>>2]|0);c[B>>2]=c[(c
[t>>2]|0)+40>>2];while(1){if((c[A>>2]|0)<=0)break;g=c[u>>2]|0;D=c[B>>2]|0
;c[B>>2]=D+4;c[D>>2]=g;c[u>>2]=(c[u>>2]|0)+(c[y>>2]|0);c[v>>2]=(c[v
x3e;>2]|0)+(c[z>>2]|0);if((c[v>>2]|0)>=0){c[v>>2]=(c[v>>2]|0)-(c[x>>
2]|0);c[u>>2]=(c[u>>2]|0)+(c[w>>2]|0)}c[A>>2]=(c[A>>2]|0)+-1}c[(c[t>>
;2]|0)+40>>2]=c[B>>2];a[s>>0]=0;D=a[s>>0]|0;i=C;return D|0}a[s>>0]=0;D=a[s>
;>0]|0;i=C;return D|0}function Ho(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;m=i;i=i+32|0;k=m+24|0;t=m+20|0;s=m+16|0;r=m+12|0;q=m+8|0;o=m+4|0;p=m;l=m+29|0;n=m+28|0;c[k>>2]=b;c[t>
x3e;2]=d;c[s>>2]=e;c[r>>2]=f;c[q>>2]=g;c[o>>2]=h;c[p>>2]=j;a[n>>0]=a
[(c[k>>2]|0)+86>>0]|0;a[l>>0]=Go(c[k>>2]|0,c[t>>2]|0,0-(c[s>>2]|0)|0
,c[r>>2]|0,0-(c[q>>2]|0)|0,0-(c[p>>2]|0)|0,0-(c[o>>2]|0)|0)|0;if(!(a[n>>0]|0)){
t=a[l>>0]|0;i=m;return t|0}if(a[(c[k>>2]|0)+86>>0]|0){t=a[l>>0]|0;i=m;return t|0}c[(c[(c
[k>>2]|0)+88>>2]|0)+20>>2]=0-(c[(c[(c[k>>2]|0)+88>>2]|0)+20>>2]|0);t
=a[l>>0]|0;i=m;return t|0}function Io(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,x=0;t=i;i=i+64|0;h=t+49|0;j=t+44|0;x=t+40|0;w=t+36|0;v=t+32|0;u=t+28|0;n=t+24|0;o=t+20|0;p=t+16|0;m=t+12
|0;r=t+8|0;q=t+4|0;l=t;k=t+48|0;c[j>>2]=b;c[x>>2]=d;c[w>>2]=e;c[v>>2]=f;c[u>>2
]=g;c[(c[j>>2]|0)+52>>2]=(c[j>>2]|0)+184;c[(c[(c[j>>2]|0)+52>>2]|0)+16>
x3e;2]=c[(c[j>>2]|0)+68>>2];c[(c[(c[j>>2]|0)+52>>2]|0)+16+4>>2]=c[(c[j>
x3e;2]|0)+72>>2];c[(c[(c[j>>2]|0)+52>>2]|0)+8>>2]=c[x>>2];c[(c[(c[j>>
;2]|0)+52>>2]|0)+8+4>>2]=c[w>>2];c[c[(c[j>>2]|0)+52>>2]>>2]=c[v>
;>2];c[(c[(c[j>>2]|0)+52>>2]|0)+4>>2]=c[u>>2];a:while(1){c[n>>2]=c[(c[(c[
j>>2]|0)+52>>2]|0)+16+4>>2];c[o>>2]=c[(c[(c[j>>2]|0)+52>>2]|0)+8+4
x3e;>2];c[p>>2]=c[(c[(c[j>>2]|0)+52>>2]|0)+4>>2];c[m>>2]=c[c[(c[j>
x3e;2]|0)+52>>2]>>2];if((c[n>>2]|0)<=(c[p>>2]|0)){c[r>>2]=c[n>>
2];c[q>>2]=c[p>>2]}else{c[r>>2]=c[p>>2];c[q>>2]=c[n>>2]}do if((c[o
x3e;>2]|0)>=(c[r>>2]|0)?(c[o>>2]|0)<=(c[q>>2]|0):0){if((c[n>>2]|0)==(c[p
x3e;>2]|0)){x=(c[j>>2]|0)+52|0;c[x>>2]=(c[x>>2]|0)+-16;break}c[l>>2]=(c[n>>
;2]|0)<(c[p>>2]|0)?1:2;if((c[(c[j>>2]|0)+100>>2]|0)!=(c[l>>2]|0)){d=c[n>>
2]|0;if((c[l>>2]|0)==1)d=((d+(c[(c[j>>2]|0)+4>>2]|0)-1&0-(c[(c[j>>2]|0)+4>>
;2]|0))-(c[n>>2]|0)|0)>=(c[(c[j>>2]|0)+8>>2]|0);else d=(d-(c[n>>2]&0-(c[(c[j
x3e;>2]|0)+4>>2]|0))|0)>=(c[(c[j>>2]|0)+8>>2]|0);a[k>>0]=d&1;if(c[(c[j>
;>2]|0)+100>>2]|0?(Fo(c[j>>2]|0,a[k>>0]|0)|0)<<24>>24|0:0){s=22;break a}if
((Eo(c[j>>2]|0,c[l>>2]|0,a[k>>0]|0)|0)<<24>>24){s=22;break a}}d=c[j>>
;2]|0;e=c[(c[j>>2]|0)+76>>2]|0;b=c[(c[j>>2]|0)+80>>2]|0;if((c[l>>2]|0)==1)if((
Ko(d,2,41,e,b)|0)<<24>>24){s=22;break a}else break;else if((Lo(d,2,41,e,b)|0)<<24>>24){s
=22;break a}else break}else s=7;while(0);if((s|0)==7){s=0;Jo(c[(c[j>>2]|0)+52>>2]|0);x=(c[j>>2]|0)+
52|0;c[x>>2]=(c[x>>2]|0)+16}if((c[(c[j>>2]|0)+52>>2]|0)>>>0<((c[j>
;>2]|0)+184|0)>>>0){s=21;break}}if((s|0)==21){c[(c[j>>2]|0)+68>>2]=c[m>>2];c[(
c[j>>2]|0)+72>>2]=c[p>>2];a[h>>0]=0;x=a[h>>0]|0;i=t;return x|0}else if((s|0)==
22){a[h>>0]=1;x=a[h>>0]|0;i=t;return x|0}return 0}function Jo(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[(c[d>>2]|0)+32>>2]=c[(c[d>>2]|0)+16>>2];c[e>
x3e;2]=c[(c[d>>2]|0)+8>>2];a=((c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c
[d>>2]|0)+24>>2]=a;c[f>>2]=a;a=((c[c[d>>2]>>2]|0)+(c[e>>2]|0)|0)/2|0
;c[(c[d>>2]|0)+8>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16>>2]=((c[f>>2]|0)+(
c[e>>2]|0)|0)/2|0;c[(c[d>>2]|0)+32+4>>2]=c[(c[d>>2]|0)+16+4>>2];c[e>>
;2]=c[(c[d>>2]|0)+8+4>>2];a=((c[(c[d>>2]|0)+16+4>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(
c[d>>2]|0)+24+4>>2]=a;c[f>>2]=a;a=((c[(c[d>>2]|0)+4>>2]|0)+(c[e>>2]|
0)|0)/2|0;c[(c[d>>2]|0)+8+4>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16+4>>2]=((c[f>
x3e;2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function Ko(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,t=0,u=0,v=0,w=0,x=0,y=0;y=i;i=i+64|0;j=y+54|0;k=y+48|0;l=y+44|0;m=y+40|0;n=y+36|0;o=y+32|0;w=y+28|0;x=y+24|0;
q=y+20|0;s=y+16|0;r=y+12|0;t=y+52|0;p=y+8|0;u=y+4|0;v=y;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>
;2]=g;c[o>>2]=h;c[p>>2]=c[(c[k>>2]|0)+52>>2];c[w>>2]=c[(c[p>>2]|0)+(
c[l>>2]<<3)+4>>2];c[x>>2]=c[(c[p>>2]|0)+4>>2];c[v>>2]=c[(c
[k>>2]|0)+40>>2];a:do if((c[x>>2]|0)>=(c[n>>2]|0)?(c[w>>2]|0)<=(c[o
x3e;>2]|0):0){c[s>>2]=c[x>>2]&0-(c[(c[k>>2]|0)+4>>2]|0);if((c[s>>2]|
0)>(c[o>>2]|0))c[s>>2]=c[o>>2];c[r>>2]=c[n>>2];if((c[w>>2]|0)
x3e;=(c[n>>2]|0)){c[q>>2]=(c[w>>2]|0)+(c[(c[k>>2]|0)+4>>2]|0)-1&0-(c[(c[k
>>2]|0)+4>>2]|0);b[t>>1]=c[w>>2]&(c[(c[k>>2]|0)+4>>2]|0)-1;c[r
x3e;>2]=c[q>>2];if(!(b[t>>1]|0)){if(a[(c[k>>2]|0)+87>>0]|0){c[v>>2]=(c[v
x3e;>2]|0)+-4;a[(c[k>>2]|0)+87>>0]=0}f=c[(c[p>>2]|0)+(c[l>>2]<<3)>
x3e;2]|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[q>>2]=(c[q>>2]|0)+(c[(c[k>
x3e;2]|0)+4>>2]|0)}}else c[q>>2]=c[n>>2];if(a[(c[k>>2]|0)+86>>0]|0){c[(c[(c[k
x3e;>2]|0)+88>>2]|0)+20>>2]=c[r>>2]>>c[c[k>>2]>>2];a[(c[k>
x3e;2]|0)+86>>0]=0}if((c[s>>2]|0)>=(c[q>>2]|0)){if(((c[v>>2]|0)+((c[s>>2]|
0)-(c[q>>2]|0)>>c[c[k>>2]>>2]<<2)+4|0)>>>0>=(c[(c[k>
x3e;2]|0)+36>>2]|0)>>>0){c[(c[k>>2]|0)+40>>2]=c[v>>2];c[(c[k>>2
]|0)+44>>2]=98;a[j>>0]=1;x=a[j>>0]|0;i=y;return x|0}c[u>>2]=c[p>>2];while(1){if
((c[p>>2]|0)>>>0<(c[u>>2]|0)>>>0)break a;if((c[q>>2]|0)>(c
[s>>2]|0))break a;a[(c[k>>2]|0)+87>>0]=0;c[x>>2]=c[(c[p>>2]|0)+4>>2];
if((c[x>>2]|0)>(c[q>>2]|0)){c[w>>2]=c[(c[p>>2]|0)+(c[l>>2]<<3)+
4>>2];if(((c[x>>2]|0)-(c[w>>2]|0)|0)>=(c[(c[k>>2]|0)+16>>2]|0)){Va[c[m>
;>2]&63](c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[l>>2]<<3);continue}else{f
=_((c[c[p>>2]>>2]|0)-(c[(c[p>>2]|0)+(c[l>>2]<<3)>>2]|0)|0,(c[q>
x3e;2]|0)-(c[w>>2]|0)|0)|0;f=(c[(c[p>>2]|0)+(c[l>>2]<<3)>>2]|0)+((f|0)/((c[x
x3e;>2]|0)-(c[w>>2]|0)|0)|0)|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[p>>2]=(
c[p>>2]|0)+(0-(c[l>>2]|0)<<3);c[q>>2]=(c[q>>2]|0)+(c[(c[k>>2]|0)+4
x3e;>2]|0);continue}}else{if((c[x>>2]|0)==(c[q>>2]|0)){a[(c[k>>2]|0)+87>>0]=1;f=c[c
[p>>2]>>2]|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[q>>2]=(c[q>>
;2]|0)+(c[(c[k>>2]|0)+4>>2]|0)}c[p>>2]=(c[p>>2]|0)+(0-(c[l>>2]|0)<<3
);continue}}}}while(0);c[(c[k>>2]|0)+40>>2]=c[v>>2];x=(c[k>>2]|0)+52|0;c[x>>2]=(
c[x>>2]|0)+(0-(c[l>>2]|0)<<3);a[j>>0]=0;x=a[j>>0]|0;i=y;return x|0}function Lo
(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;q=i;i=i+32|0;h=q+20|0;j=q+16|0;k=q+12|0;l=q+8|
0;m=q+4|0;n=q;p=q+25|0;o=q+24|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2
]=g;c[n>>2]=c[(c[h>>2]|0)+52>>2];c[(c[n>>2]|0)+4>>2]=0-(c[(c[n>>2]|0
)+4>>2]|0);c[(c[n>>2]|0)+8+4>>2]=0-(c[(c[n>>2]|0)+8+4>>2]|0);c[(c[n>>
;2]|0)+16+4>>2]=0-(c[(c[n>>2]|0)+16+4>>2]|0);if((c[j>>2]|0)>2)c[(c[n>>2]|
0)+24+4>>2]=0-(c[(c[n>>2]|0)+24+4>>2]|0);a[o>>0]=a[(c[h>>2]|0)+86>>0
]|0;a[p>>0]=Ko(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,0-(c[m>>2]|0)|0,0-(c[l>>
;2]|0)|0)|0;if(a[o>>0]|0?(a[(c[h>>2]|0)+86>>0]|0)==0:0)c[(c[(c[h>>2]|0)+88>>2]|
0)+20>>2]=0-(c[(c[(c[h>>2]|0)+88>>2]|0)+20>>2]|0);c[(c[n>>2]|0)+4>>2
]=0-(c[(c[n>>2]|0)+4>>2]|0);i=q;return a[p>>0]|0}function Mo(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;y=i;i=i+80|0;k=y+69|
0;l=y+64|0;E=y+60|0;D=y+56|0;C=y+52|0;B=y+48|0;A=y+44|0;z=y+40|0;p=y+36|0;q=y+32|0;r=y+28|0;s=y+24|0;o=y+20|0;v=y+16|0;t=y+12|0;
w=y+8|0;u=y+4|0;n=y;m=y+68|0;c[l>>2]=b;c[E>>2]=d;c[D>>2]=e;c[C>>2]=f;c[B>>2]=g
;c[A>>2]=h;c[z>>2]=j;c[(c[l>>2]|0)+52>>2]=(c[l>>2]|0)+184;c[(c[(c[l>>
;2]|0)+52>>2]|0)+24>>2]=c[(c[l>>2]|0)+68>>2];c[(c[(c[l>>2]|0)+52>>2]|
0)+24+4>>2]=c[(c[l>>2]|0)+72>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+16>>2]=c
[E>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+16+4>>2]=c[D>>2];c[(c[(c[l>>2]|0)+
52>>2]|0)+8>>2]=c[C>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+8+4>>2]=c[B>
x3e;2];c[c[(c[l>>2]|0)+52>>2]>>2]=c[A>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+
4>>2]=c[z>>2];a:while(1){c[p>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+24+4>>2];
c[q>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+16+4>>2];c[r>>2]=c[(c[(c[l>>2]|0)+
52>>2]|0)+8+4>>2];c[s>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+4>>2];c[o>
x3e;2]=c[c[(c[l>>2]|0)+52>>2]>>2];if((c[p>>2]|0)<=(c[s>>2]|0)){c[v>
x3e;2]=c[p>>2];c[t>>2]=c[s>>2]}else{c[v>>2]=c[s>>2];c[t>>2]=c[p>
;>2]}if((c[q>>2]|0)<=(c[r>>2]|0)){c[w>>2]=c[q>>2];c[u>>2]=c[r>
x3e;2]}else{c[w>>2]=c[r>>2];c[u>>2]=c[q>>2]}do if((c[w>>2]|0)>=(c[v>
x3e;2]|0)?(c[u>>2]|0)<=(c[t>>2]|0):0){if((c[p>>2]|0)==(c[s>>2]|0)){E=(c[l>>
;2]|0)+52|0;c[E>>2]=(c[E>>2]|0)+-24;break}c[n>>2]=(c[p>>2]|0)<=(c[s>>2]|0
)?1:2;if((c[(c[l>>2]|0)+100>>2]|0)!=(c[n>>2]|0)){d=c[p>>2]|0;if((c[n>>2]|0)==1
)d=((d+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[l>>2]|0)+4>>2]|0))-(c[p>>2]|0)|0
)>=(c[(c[l>>2]|0)+8>>2]|0);else d=(d-(c[p>>2]&0-(c[(c[l>>2]|0)+4>>2]|
0))|0)>=(c[(c[l>>2]|0)+8>>2]|0);a[m>>0]=d&1;if(c[(c[l>>2]|0)+100>>2]|
0?(Fo(c[l>>2]|0,a[m>>0]|0)|0)<<24>>24|0:0){x=25;break a}if((Eo(c[l>>2]|0,c[n
x3e;>2]|0,a[m>>0]|0)|0)<<24>>24){x=25;break a}}d=c[l>>2]|0;f=c[(c[l>>2]|0
)+76>>2]|0;e=c[(c[l>>2]|0)+80>>2]|0;if((c[n>>2]|0)==1)if((Ko(d,3,42,f,e)|0)<<24
>>24){x=25;break a}else break;else if((Lo(d,3,42,f,e)|0)<<24>>24){x=25;break a}else break}else x=10
;while(0);if((x|0)==10){x=0;No(c[(c[l>>2]|0)+52>>2]|0);E=(c[l>>2]|0)+52|0;c[E>>2]=(c[E
x3e;>2]|0)+24}if((c[(c[l>>2]|0)+52>>2]|0)>>>0<((c[l>>2]|0)+184|0)>
x3e;>0){x=24;break}}if((x|0)==24){c[(c[l>>2]|0)+68>>2]=c[o>>2];c[(c[l>>2]|0)+72>
;>2]=c[s>>2];a[k>>0]=0;E=a[k>>0]|0;i=y;return E|0}else if((x|0)==25){a[k>>0]=1;E=a[
k>>0]|0;i=y;return E|0}return 0}function No(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;f=b+12|0;e=b+8|
0;g=b+4|0;h=b;c[d>>2]=a;c[(c[d>>2]|0)+48>>2]=c[(c[d>>2]|0)+24>>2];c[g>>
;2]=c[(c[d>>2]|0)+8>>2];c[h>>2]=c[(c[d>>2]|0)+16>>2];a=(c[c[d>>2]>
;>2]|0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+8>>2]=a;a=(c[(c[d>
x3e;2]|0)+24>>2]|0)+(c[h>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>>2]|0)+40>>2]=
a;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1>>1;a=(c[f>>2]|0)+(c[g>>2]|0)+1
x3e;>1;c[f>>2]=a;c[(c[d>>2]|0)+16>>2]=a;a=(c[e>>2]|0)+(c[g>>2]|0)+1>
x3e;1;c[e>>2]=a;c[(c[d>>2]|0)+32>>2]=a;c[(c[d>>2]|0)+24>>2]=(c[f>>2]|
0)+(c[e>>2]|0)+1>>1;c[(c[d>>2]|0)+48+4>>2]=c[(c[d>>2]|0)+24+4>>2];c[
g>>2]=c[(c[d>>2]|0)+8+4>>2];c[h>>2]=c[(c[d>>2]|0)+16+4>>2];a=(c[(c[d
>>2]|0)+4>>2]|0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+8+4>
x3e;2]=a;a=(c[(c[d>>2]|0)+24+4>>2]|0)+(c[h>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>
x3e;2]|0)+40+4>>2]=a;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1>>1;a=(c[f>>2]|
0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+16+4>>2]=a;a=(c[e>>2]|0)+(
c[g>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>>2]|0)+32+4>>2]=a;c[(c[d>>2]|0)+24+
4>>2]=(c[f>>2]|0)+(c[e>>2]|0)+1>>1;i=b;return}function Oo(d){d=d|0;var f=0,g=0,h=0,j=0,k
=0,l=0,m=0;m=i;i=i+32|0;f=m+18|0;g=m+12|0;h=m+8|0;l=m+4|0;j=m+16|0;k=m;c[g>>2]=d;b[j>>1]=b[(c[g>>2
]|0)+84>>1]|0;c[k>>2]=c[(c[g>>2]|0)+92>>2];a:do if((e[j>>1]|0|0)>1&(
c[k>>2]|0)!=0){while(1){if((e[j>>1]|0|0)<=0)break a;d=c[k>>2]|0;if((e[j>>1]|0|0)>
;1)c[(c[k>>2]|0)+4>>2]=(c[d+8>>2]|0)+(c[(c[k>>2]|0)+16>>2]<<2);else
c[d+4>>2]=0;d=c[(c[k>>2]|0)+20>>2]|0;if(c[(c[k>>2]|0)+12>>2]&8|0){c[h>
;>2]=d;c[l>>2]=(c[(c[k>>2]|0)+20>>2]|0)+(c[(c[k>>2]|0)+16>>2]|0)-1}else{c
[h>>2]=d-(c[(c[k>>2]|0)+16>>2]|0)+1;c[l>>2]=c[(c[k>>2]|0)+20>>2];c[(
c[k>>2]|0)+20>>2]=c[h>>2];d=(c[k>>2]|0)+8|0;c[d>>2]=(c[d>>2]|0)+((c[(
c[k>>2]|0)+16>>2]|0)-1<<2)}if((Po(c[g>>2]|0,c[h>>2]|0)|0)<<24>
x3e;24|0)break;if((Po(c[g>>2]|0,(c[l>>2]|0)+1|0)|0)<<24>>24|0)break;c[k>>2]=c[(
c[k>>2]|0)+4>>2];b[j>>1]=(b[j>>1]|0)+-1<<16>>16}a[f>>0]=1;
l=a[f>>0]|0;i=m;return l|0}else c[(c[g>>2]|0)+92>>2]=0;while(0);a[f>>0]=0;l=a[f>>
;0]|0;i=m;return l|0}function Po(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;h=l+20|0;j=l+16|0;k=l+12|0;g=l+8|
0;f=l+4|0;e=l;c[j>>2]=b;c[k>>2]=d;c[e>>2]=(c[(c[j>>2]|0)+48>>2]|0)-1;c[g>
x3e;2]=(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j>>2]|0)+48>>2]|0)<<2);while(1){if((c
[e>>2]|0)>=0)d=(c[k>>2]|0)<(c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]|
0);else d=0;b=c[e>>2]|0;if(!d)break;c[e>>2]=b+-1}if((b|0)>=0?((c[e>>2]|0)>=0?(c[k>
x3e;2]|0)>(c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]|0):0):0)do{c[f>>2]=c[(c[g>
x3e;2]|0)+(c[e>>2]<<2)>>2];c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]=
c[k>>2];c[k>>2]=c[f>>2];c[e>>2]=(c[e>>2]|0)+-1}while((c[e>>2]|0)>
;=0);do if((c[e>>2]|0)<0){b=(c[j>>2]|0)+36|0;c[b>>2]=(c[b>>2]|0)+-4;b=c[j>>
;2]|0;if((c[(c[j>>2]|0)+36>>2]|0)>>>0>(c[(c[j>>2]|0)+40>>2]|0)>
x3e;>0){g=b+48|0;c[g>>2]=(c[g>>2]|0)+1;c[(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j>
x3e;2]|0)+48>>2]|0)<<2)>>2]=c[k>>2];break}c[b+44>>2]=98;a[h>>0]=1;k=
a[h>>0]|0;i=l;return k|0}while(0);a[h>>0]=0;k=a[h>>0]|0;i=l;return k|0}function Qo(d){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;D=i;i=i+80|0;h=D+72|0;j=D+52|0
;z=D+70|0;A=D+68|0;B=D+66|0;k=D+48|0;n=D+44|0;l=D+40|0;m=D+36|0;g=D+64|0;u=D+62|0;f=D+60|0;e=D+58|0;r=D+56|0;w=D+32|0;x=D+28|0;y
=D+24|0;s=D+20|0;t=D+16|0;v=D+12|0;o=D+8|0;p=D+4|0;q=D;c[j>>2]=d;Ro(v);Ro(o);Ro(p);c[k>>2]=c[(c[j>>
;2]|0)+92>>2];b[u>>1]=c[(c[j>>2]|0)+76>>2]>>c[c[j>>2]>>2];
b[g>>1]=c[(c[j>>2]|0)+80>>2]>>c[c[j>>2]>>2];while(1){if(!(c[k>
x3e;2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];b[e>>1]=c[(c[k>>2]|0)+20>>
;2];b[f>>1]=(c[(c[k>>2]|0)+20>>2]|0)+(c[(c[k>>2]|0)+16>>2]|0)-1;if((b[g>
x3e;1]|0)>(b[e>>1]|0))b[g>>1]=b[e>>1]|0;if((b[u>>1]|0)<(b[f>>1]|0))b
[u>>1]=b[f>>1]|0;c[c[k>>2]>>2]=0;So(v,c[k>>2]|0);c[k>>2]=c[n>
x3e;2]}e=c[j>>2]|0;if(!(c[(c[j>>2]|0)+48>>2]|0)){c[e+44>>2]=20;a[h>>0]=1;C=a[h
>>0]|0;i=D;return C|0}Ua[c[e+164>>2]&31](c[j>>2]|0,g,u);c[k>>2]=c[v>>2];while
(1){if(!(c[k>>2]|0))break;c[(c[k>>2]|0)+24>>2]=(c[(c[k>>2]|0)+20>>2]|0)-(b[g
x3e;>1]|0)&65535;c[k>>2]=c[(c[k>>2]|0)+4>>2]}b[z>>1]=b[g>>1]|0;b[B
x3e;>1]=0;if((c[(c[j>>2]|0)+48>>2]|0)>0?(c[(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j
>>2]|0)+48>>2]|0)<<2)>>2]|0)==(b[g>>1]|0):0){g=(c[j>>2]|0)+48|0;c[g
x3e;>2]=(c[g>>2]|0)+-1}a:while(1){if((c[(c[j>>2]|0)+48>>2]|0)<=0)break;c[k>>2]=
c[v>>2];while(1){if(!(c[k>>2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];g=(c[k>
;>2]|0)+24|0;c[g>>2]=(c[g>>2]|0)-(b[B>>1]|0);do if(!(c[(c[k>>2]|0)+24>>2]|
0)){To(v,c[k>>2]|0);e=c[k>>2]|0;if(c[(c[k>>2]|0)+12>>2]&8|0){So(o,e);break}else{So(
p,e);break}}while(0);c[k>>2]=c[n>>2]}Uo(o);Uo(p);d=(c[j>>2]|0)+48|0;g=c[d>>2]|0;c[d>
;>2]=g+-1;b[A>>1]=c[(c[(c[j>>2]|0)+32>>2]|0)+(0-g<<2)>>2];b[B>>
1]=(b[A>>1]|0)-(b[z>>1]|0);while(1){if((b[z>>1]|0)>=(b[A>>1]|0))break;b[r>>
;1]=0;c[l>>2]=c[o>>2];c[m>>2]=c[p>>2];while(1){if(!(c[l>>2]|0))break;c[w>
x3e;2]=c[c[l>>2]>>2];c[x>>2]=c[c[m>>2]>>2];if((c[w>>2]|0)>(c[x
x3e;>2]|0)){c[y>>2]=c[w>>2];c[w>>2]=c[x>>2];c[x>>2]=c[y>>2]}c[s
>>2]=c[w>>2]&0-(c[(c[j>>2]|0)+4>>2]|0);c[t>>2]=(c[x>>2]|0)+(c[(
c[j>>2]|0)+4>>2]|0)-1&0-(c[(c[j>>2]|0)+4>>2]|0);do if((((c[x>>2]|0)-(c[w
x3e;>2]|0)|0)<=(c[(c[j>>2]|0)+4>>2]|0)?(c[s>>2]|0)!=(c[w>>2]|0):0)?(c[t>
x3e;2]|0)!=(c[x>>2]|0):0){if((c[s>>2]|0)<=(c[t>>2]|0)?(c[t>>2]|0)!=((c[s>>
;2]|0)+(c[(c[j>>2]|0)+4>>2]|0)|0):0){C=37;break}c[q>>2]=c[(c[l>>2]|0)+12>>2]
x26;7;if((c[q>>2]|0)!=2){c[c[l>>2]>>2]=c[w>>2];c[c[m>>2]>>2]=c[x>
;>2];c[(c[l>>2]|0)+24>>2]=1;b[r>>1]=(b[r>>1]|0)+1<<16>>16}}else
C=37;while(0);if((C|0)==37){C=0;Xa[c[(c[j>>2]|0)+168>>2]&7](c[j>>2]|0,b[z>>1]|0,c[
w>>2]|0,c[x>>2]|0,c[l>>2]|0,c[m>>2]|0)}c[l>>2]=c[(c[l>>2]|0)+4>
x3e;2];c[m>>2]=c[(c[m>>2]|0)+4>>2]}b:do if((b[r>>1]|0)>0){c[l>>2]=c[o>
;>2];c[m>>2]=c[p>>2];while(1){if(!(c[l>>2]|0))break b;if(c[(c[l>>2]|0)+24>>
;2]|0){c[(c[l>>2]|0)+24>>2]=0;Xa[c[(c[j>>2]|0)+172>>2]&7](c[j>>2]|0,b[z
x3e;>1]|0,c[c[l>>2]>>2]|0,c[c[m>>2]>>2]|0,c[l>>2]|0,c[m>>2]|0)}
c[l>>2]=c[(c[l>>2]|0)+4>>2];c[m>>2]=c[(c[m>>2]|0)+4>>2]}}while(0);Va
[c[(c[j>>2]|0)+176>>2]&63](c[j>>2]|0);b[z>>1]=(b[z>>1]|0)+1<<16
>>16;if((b[z>>1]|0)>=(b[A>>1]|0))continue;Uo(o);Uo(p)}c[k>>2]=c[o>>2];while
(1){if(!(c[k>>2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];if(!(c[(c[k>>2]|0)+16>
;>2]|0))To(o,c[k>>2]|0);c[k>>2]=c[n>>2]}c[k>>2]=c[p>>2];while(1){if(!(c[k
>>2]|0))continue a;c[n>>2]=c[(c[k>>2]|0)+4>>2];if(!(c[(c[k>>2]|0)+16>>
;2]|0))To(p,c[k>>2]|0);c[k>>2]=c[n>>2]}}while(1){if((b[z>>1]|0)>(b[u>>1]|
0))break;Va[c[(c[j>>2]|0)+176>>2]&63](c[j>>2]|0);b[z>>1]=(b[z>>1]|0)+1<
;<16>>16}a[h>>0]=0;C=a[h>>0]|0;i=D;return C|0}function Ro(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]=0;i=b;return}function So(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h
=i;i=i+32|0;j=h+16|0;d=h+12|0;f=h+8|0;e=h+4|0;g=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=c[j>>2];c[
e>>2]=c[c[f>>2]>>2];c[g>>2]=c[c[d>>2]>>2];while(1){if(!(c[e>>
;2]|0))break;if((c[g>>2]|0)<(c[c[e>>2]>>2]|0))break;c[f>>2]=(c[e>>2]|0)+4
;c[e>>2]=c[c[f>>2]>>2]}c[(c[d>>2]|0)+4>>2]=c[e>>2];c[c[f>>
2]>>2]=c[d>>2];i=h;return}function To(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;j=h+12|0;d=h
+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=c[j>>2];c[e>>2]=c[c[f>>
2]>>2];while(1){if(!(c[e>>2]|0)){g=6;break}a=(c[e>>2]|0)+4|0;if((c[e>>2]|0)==(c[d>
x3e;2]|0))break;c[f>>2]=a;c[e>>2]=c[c[f>>2]>>2]}if((g|0)==6){i=h;return}c[c[f>>
;2]>>2]=c[a>>2];i=h;return}function Uo(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;f=g+8|0;d=g+4|
0;e=g;c[b>>2]=a;c[d>>2]=c[c[b>>2]>>2];while(1){if(!(c[d>>2]|0))break;c[c[d>
;>2]>>2]=c[c[(c[d>>2]|0)+8>>2]>>2];a=(c[d>>2]|0)+8|0;c[a>>2]=(c
[a>>2]|0)+((c[(c[d>>2]|0)+12>>2]&8|0?1:-1)<<2);a=(c[d>>2]|0)+16|0;c[a>
;>2]=(c[a>>2]|0)+-1;c[d>>2]=c[(c[d>>2]|0)+4>>2]}c[f>>2]=c[b>>2];
c[d>>2]=c[c[f>>2]>>2];if(!(c[d>>2]|0)){i=g;return}c[e>>2]=c[(c[d>>2]|
0)+4>>2];while(1){if(!(c[e>>2]|0)){b=11;break}if((c[c[d>>2]>>2]|0)<=(c[c[e>>
;2]>>2]|0)){c[f>>2]=(c[d>>2]|0)+4;c[d>>2]=c[c[f>>2]>>2];if(!(c[d>
;>2]|0)){b=11;break}}else{c[c[f>>2]>>2]=c[e>>2];c[(c[d>>2]|0)+4>>2]=c[(c[
e>>2]|0)+4>>2];c[(c[e>>2]|0)+4>>2]=c[d>>2];c[f>>2]=c[b>>2];
c[d>>2]=c[c[f>>2]>>2]}c[e>>2]=c[(c[d>>2]|0)+4>>2]}if((b|0)==11){i=g;
return}}function Vo(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>
x3e;2]=b;c[f>>2]=d;c[h>>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>
x3e;2];i=e;return}function Wo(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;u=i;i=i+48|0;l=u+32|0;m=u+36|0;n=u+28|0;o=u+24|0;w=u+20|0;v=u+16|0;q=u+12|0;r=u+8|0;p=u+4|0;s=u+38|0;t=u;c[l>>2]=e;
b[m>>1]=f;c[n>>2]=g;c[o>>2]=h;c[w>>2]=j;c[v>>2]=k;c[w>>2]=c[w>
x3e;2];c[v>>2]=c[v>>2];if(((c[o>>2]|0)-(c[n>>2]|0)|0)>=(c[(c[l>>2]|0)+4
x3e;>2]|0)){i=u;return}c[q>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[l
>>2]|0)+4>>2]|0);c[r>>2]=c[o>>2]&0-(c[(c[l>>2]|0)+4>>2]|0);if((
c[q>>2]|0)!=(c[r>>2]|0)){i=u;return}c[p>>2]=(c[(c[l>>2]|0)+60>>2]|0)+(b[m>
;>1]>>3);a[s>>0]=128>>(b[m>>1]&7);c[q>>2]=c[q>>2]>>
;c[c[l>>2]>>2];if((c[q>>2]|0)<0){i=u;return}if((c[q>>2]|0)>=(c[(c[l>>
;2]|0)+104>>2]|0)){i=u;return}c[t>>2]=(c[p>>2]|0)+(0-(_(c[q>>2]|0,c[(c[l>>2]|0
)+104+8>>2]|0)|0));if((c[(c[l>>2]|0)+104+8>>2]|0)>0){w=_((c[(c[l>>2]|0)+104>
x3e;2]|0)-1|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[t>>2]=(c[t>>2]|0)+w}w=c[t>>2]|0;a
[w>>0]=d[w>>0]|d[s>>0];i=u;return}function Xo(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;x=i;i=i+48|0;l=x+36|0;m=x+40|0;n=x+32|0;o=x+28|0;p=x+24|0;q=x+20|0;t=x+16|0
;u=x+12|0;w=x+8|0;r=x+4|0;v=x+42|0;s=x;c[l>>2]=e;b[m>>1]=f;c[n>>2]=g;c[o>>2]=h;c[p>
x3e;2]=j;c[q>>2]=k;c[t>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[
l>>2]|0)+4>>2]|0);c[u>>2]=c[o>>2]&0-(c[(c[l>>2]|0)+4>>2]|0);c[w
>>2]=c[t>>2];if((c[t>>2]|0)>(c[u>>2]|0)){c[s>>2]=c[(c[p>>2]|0)+
12>>2]&7;if((c[t>>2]|0)!=((c[u>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)|0)){i=x;return
}a:do switch(c[s>>2]|0){case 0:{c[w>>2]=c[u>>2];break}case 4:{c[w>>2]=(((c[n>>
2]|0)+(c[o>>2]|0)-1|0)/2|0)+(c[(c[l>>2]|0)+8>>2]|0)&0-(c[(c[l>>2]|0)+4>>2
]|0);break}case 5:case 1:{if((c[(c[p>>2]|0)+28>>2]|0)==(c[q>>2]|0)?(c[(c[p>>2]|0)+16>
;>2]|0)<=0:0){if(!(c[(c[p>>2]|0)+12>>2]&16)){i=x;return}if(((c[o>>2]|0)-(c[n>
x3e;2]|0)|0)<(c[(c[l>>2]|0)+8>>2]|0)){i=x;return}}if((c[(c[q>>2]|0)+28>>2]|0)==(c[p
>>2]|0)?(c[(c[p>>2]|0)+20>>2]|0)==(b[m>>1]|0):0){if(!(c[(c[p>>2]|0)+12>
x3e;2]&32)){i=x;return}if(((c[o>>2]|0)-(c[n>>2]|0)|0)<(c[(c[l>>2]|0)+8>>2]|0)){
i=x;return}}if((c[s>>2]|0)==1){c[w>>2]=c[u>>2];break a}else{c[w>>2]=(((c[n>>2]|
0)+(c[o>>2]|0)-1|0)/2|0)+(c[(c[l>>2]|0)+8>>2]|0)&0-(c[(c[l>>2]|0)+4>>2]|0
);break a}}default:{i=x;return}}while(0);c[t>>2]=(c[w>>2]|0)==(c[t>>2]|0)?c[u>>2]|0:c[t
x3e;>2]|0;c[t>>2]=c[t>>2]>>c[c[l>>2]>>2];c[r>>2]=(c[(c[l>
x3e;2]|0)+60>>2]|0)+(b[m>>1]>>3);a[v>>0]=128>>(b[m>>1]&7);f=_(c
[t>>2]|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[r>>2]=(c[r>>2]|0)+(0-f);if((c[(c[l>
;>2]|0)+104+8>>2]|0)>0){f=_((c[(c[l>>2]|0)+104>>2]|0)-1|0,c[(c[l>>2]|0)+104+8
x3e;>2]|0)|0;c[r>>2]=(c[r>>2]|0)+f}if(((c[t>>2]|0)>=0?(c[t>>2]|0)<(c[(c[l
>>2]|0)+104>>2]|0):0)?d[c[r>>2]>>0]&d[v>>0]|0:0){i=x;return}}c[r>>
;2]=(c[(c[l>>2]|0)+60>>2]|0)+(b[m>>1]>>3);a[v>>0]=128>>(b[m>>
;1]&7);c[t>>2]=c[w>>2]>>c[c[l>>2]>>2];if((c[t>>2]|0)<0){i=
x;return}if((c[t>>2]|0)>=(c[(c[l>>2]|0)+104>>2]|0)){i=x;return}f=_(c[t>>2]|0,c[(c[l
>>2]|0)+104+8>>2]|0)|0;c[r>>2]=(c[r>>2]|0)+(0-f);if((c[(c[l>>2]|0)+104+8>
x3e;2]|0)>0){f=_((c[(c[l>>2]|0)+104>>2]|0)-1|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[r>
;>2]=(c[r>>2]|0)+f}f=c[r>>2]|0;a[f>>0]=d[f>>0]|d[v>>0];i=x;return}function
Yo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return}function Zo(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]|0)+8>>2];Fb(c[e
x3e;>2]|0,c[d>>2]|0);c[d>>2]=0;i=b;return}function _o(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)+4>>2];Ua[c[(c[(c[(c[e>>2]|0)+20>>2]|
0)+56>>2]|0)+8>>2]&31](c[(c[e>>2]|0)+60>>2]|0,c[(c[d>>2]|0)+172>>
;2]|0,c[(c[d>>2]|0)+176>>2]|0);i=b;return 0}function $o(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;w=i;i=i+128|0;j=w+112|0;k=w+108|0;l=w+104|0;m=w+100|0;h=w+96|0;p=w+92|0;s=w+88|0;o=
w+72|0;v=w+64|0;q=w+60|0;u=w+56|0;n=w+52|0;r=w+48|0;t=w;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[h>>
;2]=g;if((c[(c[l>>2]|0)+72>>2]|0)==(c[(c[k>>2]|0)+24>>2]|0)){f=c[(c[k>>2]|0)+20
>>2]|0;if((c[m>>2]|0)!=2){if((f|0)==4028){c[j>>2]=19;v=c[j>>2]|0;i=w;return v|0}}else if
((f|0)==4088){c[j>>2]=19;v=c[j>>2]|0;i=w;return v|0}c[s>>2]=(c[l>>2]|0)+108;if(c[h>
x3e;2]|0)Nb(c[s>>2]|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0);_d(c[s>>
;2]|0,o);c[o>>2]=c[o>>2]&-64;c[o+4>>2]=c[o+4>>2]&-64;c[o+8>>2]=(c[o+
8>>2]|0)+63&-64;c[o+12>>2]=(c[o+12>>2]|0)+63&-64;c[v>>2]=(c[o+8>>2]|
0)-(c[o>>2]|0)>>6;c[q>>2]=(c[o+12>>2]|0)-(c[o+4>>2]|0)>>6;c[n>
x3e;2]=(c[l>>2]|0)+76;c[r>>2]=c[(c[k>>2]|0)+8>>2];if(c[(c[(c[l>>2]|0)+156>
;>2]|0)+4>>2]&1|0){Fb(c[r>>2]|0,c[(c[n>>2]|0)+12>>2]|0);c[(c[n>>2]|0
)+12>>2]=0;h=(c[(c[l>>2]|0)+156>>2]|0)+4|0;c[h>>2]=c[h>>2]&-2}f=c[v>
x3e;2]|0;if(c[m>>2]&2|0){c[u>>2]=(f+15|0)>>>4<<1;a[(c[n>>2]|0)+18>
;>0]=1}else{c[u>>2]=f+3&-4;a[(c[n>>2]|0)+18>>0]=2;b[(c[n>>2]|0)+16>>
1]=256}c[(c[n>>2]|0)+4>>2]=c[v>>2];c[c[n>>2]>>2]=c[q>>2];c[(c[n>
;>2]|0)+8>>2]=c[u>>2];v=hc(c[r>>2]|0,c[q>>2]|0,0,c[u>>2]|0,0,p)|0;c[(c[n
x3e;>2]|0)+12>>2]=v;if(!(c[p>>2]|0)){v=(c[(c[l>>2]|0)+156>>2]|0)+4|0;c[v>>
;2]=c[v>>2]|1;Nb(c[s>>2]|0,0-(c[o>>2]|0)|0,0-(c[o+4>>2]|0)|0);c[t>>2]=c[n>
;>2];c[t+4>>2]=c[s>>2];c[t+8>>2]=0;if((a[(c[n>>2]|0)+18>>0]|0)==2){v=t+8|
0;c[v>>2]=c[v>>2]|1}c[p>>2]=Ya[c[(c[k>>2]|0)+64>>2]&127](c[(c[k>>
;2]|0)+60>>2]|0,t)|0;Nb(c[s>>2]|0,c[o>>2]|0,c[o+4>>2]|0);if(!(c[p>>2]|0)){c[(c
[l>>2]|0)+72>>2]=1651078259;c[(c[l>>2]|0)+100>>2]=c[o>>2]>>6;c[(c[l
x3e;>2]|0)+104>>2]=c[o+12>>2]>>6}}}else c[p>>2]=6;c[j>>2]=c[p>>
2];v=c[j>>2]|0;i=w;return v|0}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,l=0;k=i;i=i+32|0;l=
k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[l>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>
;2]=0;if((c[(c[f>>2]|0)+72>>2]|0)!=(c[(c[l>>2]|0)+24>>2]|0)){c[j>>2]=6;l=c[j
x3e;>2]|0;i=k;return l|0}if(c[g>>2]|0)Kb((c[f>>2]|0)+108|0,c[g>>2]|0);if(!(c[h>>2]|
0)){l=c[j>>2]|0;i=k;return l|0}Nb((c[f>>2]|0)+108|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|
0)+4>>2]|0);l=c[j>>2]|0;i=k;return l|0}function bp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0
;h=g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[e>>2]=b;c[f>>2]=d;b=c[f>>2]|0;c[b>>2]=0;c[b+4
>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;if((c[(c[e>>2]|0)+72>>2]|0)!=(c[(c[h>>
;2]|0)+24>>2]|0)){i=g;return}_d((c[e>>2]|0)+108|0,c[f>>2]|0);i=g;return}function cp(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=Oa
[c[(c[(c[(c[h>>2]|0)+20>>2]|0)+56>>2]|0)+12>>2]&63](c[(c[h>>2]|0)+60>
;>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function dp(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[c[e>>2]>>
2]=0;c[g>>2]=bc(c[d>>2]|0,20,f)|0;if(c[f>>2]|0){g=c[f>>2]|0;i=h;return g|0}c[(c[g>
x3e;2]|0)+12>>2]=c[d>>2];c[c[e>>2]>>2]=c[g>>2];g=c[f>>2]|0;i=h;return
g|0}function ep(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;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>
;>2]=a;c[e>>2]=b;c[f>>2]=d;c[g>>2]=c[k>>2];if(!(c[k>>2]|0)){i=j;return}if
((c[e>>2]|0)!=0&(c[f>>2]|0)>=3476){c[h>>2]=c[e>>2];c[(c[g>>2]|0)+16
x3e;>2]=c[h>>2];c[c[g>>2]>>2]=(c[e>>2]|0)+1440;c[(c[g>>2]|0)+4>>
;2]=(c[e>>2]|0)+(c[f>>2]|0)-(c[c[g>>2]>>2]|0)&-16;c[(c[g>>2]|0)+8>
x3e;2]=((c[(c[g>>2]|0)+4>>2]|0)>>>0)/128|0;i=j;return}else{c[c[g>>2]>>2]=
0;c[(c[g>>2]|0)+4>>2]=0;c[(c[g>>2]|0)+16>>2]=0;i=j;return}}function fp(a,d){a=a|0;d=d|0;
var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[f>>2]=a;c[g>>2
]=d;c[h>>2]=c[(c[g>>2]|0)+4>>2];c[j>>2]=c[c[g>>2]>>2];if((c[f>
x3e;2]|0?c[c[f>>2]>>2]|0:0)?c[(c[f>>2]|0)+4>>2]|0:0){if(!(c[h>>2]|0)){c[e>
;>2]=20;k=c[e>>2]|0;i=l;return k|0}if(b[(c[h>>2]|0)+2>>1]|0?(b[c[h>>2]>>1
]|0)>0:0){if(c[(c[h>>2]|0)+12>>2]|0?c[(c[h>>2]|0)+4>>2]|0:0){if((b[(c[h>>
2]|0)+2>>1]|0)!=((b[(c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>>1]|0)-1<<1
)>>1]|0)+1|0)){c[e>>2]=20;k=c[e>>2]|0;i=l;return k|0}c[k>>2]=c[(c[f>>2]|0)+16
x3e;>2];do if(!(c[(c[g>>2]|0)+8>>2]&2)){if(!(c[j>>2]|0)){c[e>>2]=6;k=c[e>
x3e;2]|0;i=l;return k|0}if(c[(c[j>>2]|0)+4>>2]|0?c[c[j>>2]>>2]|0:0){if(c[(c[j>>
;2]|0)+12>>2]|0)break;c[e>>2]=6;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=0;k=c[e>>2]|
0;i=l;return k|0}while(0);if(!(c[(c[g>>2]|0)+8>>2]&1)){c[e>>2]=19;k=c[e>>2]|0;i=l;return
k|0}do if(c[(c[g>>2]|0)+8>>2]&2|0){d=(c[k>>2]|0)+1024|0;if(c[(c[g>>2]|0)+8>
x3e;2]&4|0){a=(c[g>>2]|0)+32|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8
x3e;>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];break}else{c[d>>2]=-32768;c[(c[k>>
;2]|0)+1024+4>>2]=-32768;c[(c[k>>2]|0)+1024+8>>2]=32767;c[(c[k>>2]|0)+1024+12>>
;2]=32767;break}}else{c[(c[k>>2]|0)+1024>>2]=0;c[(c[k>>2]|0)+1024+4>>2]=0;c[(c[k>
x3e;2]|0)+1024+8>>2]=c[(c[j>>2]|0)+4>>2];c[(c[k>>2]|0)+1024+12>>2]=c[c[j>
x3e;2]>>2]}while(0);gp(c[k>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|
0);a=(c[k>>2]|0)+980|0;h=c[h>>2]|0;c[a>>2]=c[h>>2];c[a+4>>2]=c[h+4>>
2];c[a+8>>2]=c[h+8>>2];c[a+12>>2]=c[h+12>>2];c[a+16>>2]=c[h+16>>2];c
[(c[k>>2]|0)+52>>2]=0;c[(c[k>>2]|0)+40>>2]=1;c[(c[k>>2]|0)+1248>>2]=
c[(c[f>>2]|0)+8>>2];c[(c[k>>2]|0)+1232>>2]=0;if(c[(c[g>>2]|0)+8>>2]
x26;2|0){c[(c[k>>2]|0)+1236>>2]=c[(c[g>>2]|0)+12>>2];c[(c[k>>2]|0)+1240>
x3e;2]=c[(c[g>>2]|0)+28>>2]}else{h=(c[k>>2]|0)+1e3|0;j=c[j>>2]|0;c[h>>2]=c[j
x3e;>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[h+12>>2]=c[j+12>
x3e;2];c[h+16>>2]=c[j+16>>2];c[h+20>>2]=c[j+20>>2];c[(c[k>>2]|0)+1236>>
;2]=13;c[(c[k>>2]|0)+1240>>2]=c[k>>2]}c[e>>2]=ip(c[k>>2]|0)|0;k=c[e>>
;2]|0;i=l;return k|0}c[e>>2]=20;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=0;k=c[e>>2]|0;i=l;return
k|0}c[e>>2]=6;k=c[e>>2]|0;i=l;return k|0}function gp(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[(c[f>>2]|0)+1412>>2]=c[
g>>2];c[(c[f>>2]|0)+1416>>2]=c[h>>2];c[(c[f>>2]|0)+1420>>2]=c[g>
;>2];c[(c[f>>2]|0)+44>>2]=0;c[(c[f>>2]|0)+48>>2]=0;c[(c[f>>2]|0)+52>
x3e;2]=0;c[(c[f>>2]|0)+32>>2]=0;c[(c[f>>2]|0)+36>>2]=0;c[(c[f>>2]|0)+40>
x3e;2]=1;i=e;return}function hp(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;r=i;i=i+32|0;s=r+24
|0;l=r+20|0;m=r+16|0;t=r+12|0;o=r+8|0;k=r+4|0;n=r+28|0;p=r;c[s>>2]=f;c[l>>2]=g;c[m>>2]=h;c[t>
x3e;2]=j;c[k>>2]=(c[t>>2]|0)+1e3;c[o>>2]=(c[(c[k>>2]|0)+12>>2]|0)+(0-(_(c[s>
;>2]|0,c[(c[k>>2]|0)+8>>2]|0)|0));if((c[(c[k>>2]|0)+8>>2]|0)>=0){t=_((c[c[k>
;>2]>>2]|0)-1|0,c[(c[k>>2]|0)+8>>2]|0)|0;c[o>>2]=(c[o>>2]|0)+t}while(1){if
((c[l>>2]|0)<=0)break;a[n>>0]=a[(c[m>>2]|0)+4>>0]|0;a:do if(a[n>>0]|0){g=(
c[o>>2]|0)+(b[c[m>>2]>>1]|0)|0;if((e[(c[m>>2]|0)+2>>1]|0)>=8){Ns(g|0,d[n
x3e;>0]&255|0,e[(c[m>>2]|0)+2>>1]|0)|0;break}c[p>>2]=g;switch(e[(c[m>>2]|0)+2
x3e;>1]|0){case 7:{t=a[n>>0]|0;q=c[p>>2]|0;c[p>>2]=q+1;a[q>>0]=t;q=9;break}case 6:{
q=9;break}case 5:{q=10;break}case 4:{q=11;break}case 3:{q=12;break}case 2:{q=13;break}case 1:break;default:break a}if((q|0)==9){
s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s;q=10}if((q|0)==10){s=a[n>>0]|0;t
=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s;q=11}if((q|0)==11){s=a[n>>0]|0;t=c[p>>2]|0;c[
p>>2]=t+1;a[t>>0]=s;q=12}if((q|0)==12){s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t
>>0]=s;q=13}if((q|0)==13){q=0;s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s}a[
c[p>>2]>>0]=a[n>>0]|0}while(0);c[l>>2]=(c[l>>2]|0)+-1;c[m>>2]=(c[m
x3e;>2]|0)+6}i=r;return}function ip(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;w=i;i=i+400|0;u=w+388|0;v=w+384|0;d=w+64|0;b=w+60|0;q=w+56|0;r=w+52|0;p=w+48|0;m=w+44|0;n=w+40|0;k=w+36|0;e=w+32|0;s=w+28|
0;o=w+24|0;l=w+20|0;j=w+16|0;t=w+12|0;h=w+8|0;f=w+4|0;g=w;c[v>>2]=a;jp(c[v>>2]|0);c[k>>2]=(c[v>
;>2]|0)+1024;if((((c[(c[v>>2]|0)+12>>2]|0)>(c[c[k>>2]>>2]|0)?(c[(c[v>>
;2]|0)+8>>2]|0)<(c[(c[k>>2]|0)+8>>2]|0):0)?(c[(c[v>>2]|0)+20>>2]|0)>(
c[(c[k>>2]|0)+4>>2]|0):0)?(c[(c[v>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0)+12>
;>2]|0):0){if((c[(c[v>>2]|0)+8>>2]|0)<(c[c[k>>2]>>2]|0))c[(c[v>>2]|0
)+8>>2]=c[c[k>>2]>>2];if((c[(c[v>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0
)+4>>2]|0))c[(c[v>>2]|0)+16>>2]=c[(c[k>>2]|0)+4>>2];if((c[(c[v>>2]|0
)+12>>2]|0)>(c[(c[k>>2]|0)+8>>2]|0))c[(c[v>>2]|0)+12>>2]=c[(c[k>>
;2]|0)+8>>2];if((c[(c[v>>2]|0)+20>>2]|0)>(c[(c[k>>2]|0)+12>>2]|0))c[(c[v
x3e;>2]|0)+20>>2]=c[(c[k>>2]|0)+12>>2];c[(c[v>>2]|0)+24>>2]=(c[(c[v>
x3e;2]|0)+12>>2]|0)-(c[(c[v>>2]|0)+8>>2]|0);c[(c[v>>2]|0)+28>>2]=(c[(c[v>
x3e;2]|0)+20>>2]|0)-(c[(c[v>>2]|0)+16>>2]|0);c[r>>2]=((c[(c[v>>2]|0)+20>
x3e;2]|0)-(c[(c[v>>2]|0)+16>>2]|0)|0)/(c[(c[v>>2]|0)+1248>>2]|0)|0;if(!(c[r>>2
]|0))c[r>>2]=1;if((c[r>>2]|0)>=39)c[r>>2]=39;c[(c[v>>2]|0)+1252>>2]=0;c[p
>>2]=c[(c[v>>2]|0)+16>>2];c[n>>2]=c[(c[v>>2]|0)+20>>2];c[q>>
;2]=0;a:while(1){if((c[q>>2]|0)>=(c[r>>2]|0)){b=42;break}c[m>>2]=(c[p>>2]|0)+(c[(c[
v>>2]|0)+1248>>2]|0);if(!((c[q>>2]|0)!=((c[r>>2]|0)-1|0)?(c[m>>2]|0)<=(c[
n>>2]|0):0))c[m>>2]=c[n>>2];c[d>>2]=c[p>>2];c[d+4>>2]=c[m>>
;2];c[b>>2]=d;b:while(1){if((c[b>>2]|0)>>>0<d>>>0)break;c[(c[v>>
;2]|0)+1420>>2]=c[(c[v>>2]|0)+1412>>2];c[(c[v>>2]|0)+1424>>2]=(c[(c[b>>
;2]|0)+4>>2]|0)-(c[c[b>>2]>>2]|0);c[h>>2]=c[(c[v>>2]|0)+1424>>2]<
;<2;c[g>>2]=((c[h>>2]|0)>>>0)%16|0;if((c[g>>2]|0)>0)c[h>>2]=(c[
h>>2]|0)+(16-(c[g>>2]|0));c[f>>2]=c[(c[v>>2]|0)+1416>>2];c[f>>2]=(c[
f>>2]|0)-(((c[f>>2]|0)>>>0)%16|0);c[j>>2]=(c[(c[v>>2]|0)+1412>>
2]|0)+(c[f>>2]|0);c[(c[v>>2]|0)+44>>2]=(c[(c[v>>2]|0)+1412>>2]|0)+(c[h>
x3e;2]|0);do if((c[(c[v>>2]|0)+44>>2]|0)>>>0<(c[j>>2]|0)>>>0?(c
[(c[v>>2]|0)+48>>2]=((c[j>>2]|0)-(c[(c[v>>2]|0)+44>>2]|0)|0)/16|0,(c[(c[v>
;>2]|0)+48>>2]|0)>=2):0){c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[(c[v>>2]|0
)+1424>>2]|0))break;c[(c[(c[v>>2]|0)+1420>>2]|0)+(c[t>>2]<<2)>>2]=0;
c[t>>2]=(c[t>>2]|0)+1}c[(c[v>>2]|0)+52>>2]=0;c[(c[v>>2]|0)+40>>2]=1;
c[(c[v>>2]|0)+16>>2]=c[c[b>>2]>>2];c[(c[v>>2]|0)+20>>2]=c[(c[b>
x3e;2]|0)+4>>2];c[(c[v>>2]|0)+28>>2]=(c[(c[b>>2]|0)+4>>2]|0)-(c[c[b>>
;2]>>2]|0);c[l>>2]=kp(c[v>>2]|0)|0;if(c[l>>2]|0)if((c[l>>2]|0)!=64){b=35;break
a}else break;else{zp(c[v>>2]|0,(c[v>>2]|0)+1e3|0);c[b>>2]=(c[b>>2]|0)+-8;continue b}}while
(0);c[e>>2]=c[c[b>>2]>>2];c[s>>2]=c[(c[b>>2]|0)+4>>2];c[o>>
;2]=(c[e>>2]|0)+((c[s>>2]|0)-(c[e>>2]|0)>>1);if((c[o>>2]|0)==(c[e>>2
]|0)){b=37;break a}if(((c[e>>2]|0)-(c[s>>2]|0)|0)>=(c[(c[v>>2]|0)+1248>>2]|0)){a=(c
[v>>2]|0)+1252|0;c[a>>2]=(c[a>>2]|0)+1}c[(c[b>>2]|0)+8>>2]=c[e>>2];c
[(c[b>>2]|0)+8+4>>2]=c[o>>2];c[c[b>>2]>>2]=c[o>>2];c[(c[b>>
;2]|0)+4>>2]=c[s>>2];c[b>>2]=(c[b>>2]|0)+8}c[q>>2]=(c[q>>2]|0)+1;c[p
>>2]=c[m>>2]}if((b|0)==35){c[u>>2]=1;v=c[u>>2]|0;i=w;return v|0}else if((b|0)==37){c[u
x3e;>2]=1;v=c[u>>2]|0;i=w;return v|0}else if((b|0)==42){if((c[(c[v>>2]|0)+1252>>2]|0)>8?(
c[(c[v>>2]|0)+1248>>2]|0)>16:0)c[(c[v>>2]|0)+1248>>2]=(c[(c[v>>2]|0)+1248
>>2]|0)/2|0;c[u>>2]=0;v=c[u>>2]|0;i=w;return v|0}}c[u>>2]=0;v=c[u>>2]|0;i=w;return
v|0}function jp(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;d=j+20|0;k=j+16|0;f=j+12|0;e=j+8|0;g=j+4|0;h=j;c[d>
x3e;2]=a;c[k>>2]=(c[d>>2]|0)+980;c[f>>2]=c[(c[k>>2]|0)+4>>2];c[e>>2]=(
c[f>>2]|0)+(b[(c[k>>2]|0)+2>>1]<<3);if((b[(c[k>>2]|0)+2>>1]|0)<=
0){c[(c[d>>2]|0)+12>>2]=0;c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+20>>2]=
0;c[(c[d>>2]|0)+16>>2]=0;i=j;return}k=c[c[f>>2]>>2]|0;c[(c[d>>2]|0)+12>
x3e;2]=k;c[(c[d>>2]|0)+8>>2]=k;k=c[(c[f>>2]|0)+4>>2]|0;c[(c[d>>2]|0)+20>
x3e;2]=k;c[(c[d>>2]|0)+16>>2]=k;c[f>>2]=(c[f>>2]|0)+8;while(1){if((c[f>>2]|0)
x3e;>>0>=(c[e>>2]|0)>>>0)break;c[g>>2]=c[c[f>>2]>>2];c[h
x3e;>2]=c[(c[f>>2]|0)+4>>2];if((c[g>>2]|0)<(c[(c[d>>2]|0)+8>>2]|0))c
[(c[d>>2]|0)+8>>2]=c[g>>2];if((c[g>>2]|0)>(c[(c[d>>2]|0)+12>>2]|
0))c[(c[d>>2]|0)+12>>2]=c[g>>2];if((c[h>>2]|0)<(c[(c[d>>2]|0)+16>>
;2]|0))c[(c[d>>2]|0)+16>>2]=c[h>>2];if((c[h>>2]|0)>(c[(c[d>>2]|0)+20>
;>2]|0))c[(c[d>>2]|0)+20>>2]=c[h>>2];c[f>>2]=(c[f>>2]|0)+8}c[(c[d>
x3e;2]|0)+8>>2]=c[(c[d>>2]|0)+8>>2]>>6;c[(c[d>>2]|0)+16>>2]=c[(c[d
x3e;>2]|0)+16>>2]>>6;c[(c[d>>2]|0)+12>>2]=(c[(c[d>>2]|0)+12>>2]|
0)+63>>6;c[(c[d>>2]|0)+20>>2]=(c[(c[d>>2]|0)+20>>2]|0)+63>>6;i=j;return
}function kp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;h=4;f=Fs(40)|0;c[f>>2]=0;g=j;c[g>>2]=0;h=
Qs(a+1256|0,1,f|0,h|0)|0;f=C;n=0;b=n;n=0;if((b|0)!=0&(o|0)!=0){d=Rs(c[b>>2]|0,h|0,f|0)|0;if(!d)ta(b|0,o|0);C=o}else
d=-1;if((d|0)==1)b=C;else b=0;while(1){if(b|0){b=7;break}n=0;b=ea(46,a+980|0,4172,a|0)|0;d=n;n=0;if((d|0)!=0&(o|0)!=0){e=Rs
(c[d>>2]|0,h|0,f|0)|0;if(!e)ta(d|0,o|0);C=o}else e=-1;if((e|0)==1){b=C;continue}c[g>>2]=b;n=0;la(43,a|0);b=n
;n=0;if((b|0)!=0&(o|0)!=0){d=Rs(c[b>>2]|0,h|0,f|0)|0;if(!d)ta(b|0,o|0);C=o}else d=-1;if((d|0)==1)b=C;else{b=6;break
}}if((b|0)==6){g=c[g>>2]|0;Gs(h|0);i=j;return g|0}else if((b|0)==7){c[g>>2]=64;g=c[g>>2]|0;Gs(h|0);
i=j;return g|0}return 0}function lp(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;e=d+8|0;g=d+4|0;f=d;c[h>
x3e;2]=a;c[e>>2]=b;mp(c[e>>2]|0);c[g>>2]=c[c[h>>2]>>2]<<2;c[f>
x3e;2]=c[(c[h>>2]|0)+4>>2]<<2;op(c[e>>2]|0,c[g>>2]>>8,c[f>>
;2]>>8);c[(c[e>>2]|0)+64>>2]=c[g>>2];c[(c[e>>2]|0)+68>>2]=c[f>
x3e;2];i=d;return 0}function mp(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(c[(c[b>>2]|0)+
40>>2]|0){i=e;return}if(!(c[(c[b>>2]|0)+32>>2]|c[(c[b>>2]|0)+36>>2])){i=e;return
}c[d>>2]=np(c[b>>2]|0)|0;a=(c[d>>2]|0)+8|0;c[a>>2]=(c[a>>2]|0)+(c[(c[b>
x3e;2]|0)+32>>2]|0);a=(c[d>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+(c[(c[b>>2]|0)+36>
;>2]|0);i=e;return}function np(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+12|0;f=h+8|0;e=h+4|0;g=h;c[d>>
;2]=a;c[g>>2]=c[c[d>>2]>>2];if((c[g>>2]|0)>(c[(c[d>>2]|0)+24>>2
]|0))c[g>>2]=c[(c[d>>2]|0)+24>>2];c[f>>2]=(c[(c[d>>2]|0)+1420>>2]|0)+(
c[(c[d>>2]|0)+4>>2]<<2);while(1){c[e>>2]=c[c[f>>2]>>2];if(!(c[e>
;>2]|0))break;if((c[c[e>>2]>>2]|0)>(c[g>>2]|0))break;if((c[c[e>>2]>>
2]|0)==(c[g>>2]|0)){b=11;break}c[f>>2]=(c[e>>2]|0)+12}if((b|0)==11){g=c[e>>2]|0;i=h;return
g|0}a=c[d>>2]|0;if((c[(c[d>>2]|0)+52>>2]|0)>=(c[(c[d>>2]|0)+48>>2]|0))ta
(a+1256|0,1);b=c[a+44>>2]|0;a=(c[d>>2]|0)+52|0;d=c[a>>2]|0;c[a>>2]=d+1;c[e>>2]=
b+(d<<4);c[c[e>>2]>>2]=c[g>>2];c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>
;2]|0)+4>>2]=0;c[(c[e>>2]|0)+12>>2]=c[c[f>>2]>>2];c[c[f>>2]>>
;2]=c[e>>2];g=c[e>>2]|0;i=h;return g|0}function op(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0
;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if((c[f>>2]|0)>(c[(c[e>>
;2]|0)+12>>2]|0))c[f>>2]=c[(c[e>>2]|0)+12>>2];if((c[f>>2]|0)<(c[(c[e>
;>2]|0)+8>>2]|0))c[f>>2]=(c[(c[e>>2]|0)+8>>2]|0)-1;c[(c[e>>2]|0)+32>
x3e;2]=0;c[(c[e>>2]|0)+36>>2]=0;c[c[e>>2]>>2]=(c[f>>2]|0)-(c[(c[e>>2
]|0)+8>>2]|0);c[(c[e>>2]|0)+4>>2]=(c[g>>2]|0)-(c[(c[e>>2]|0)+16>>2]|
0);c[(c[e>>2]|0)+72>>2]=c[g>>2]<<8;c[(c[e>>2]|0)+40>>2]=0;pp(c[e>
;>2]|0,c[f>>2]|0,c[g>>2]|0);i=h;return}function pp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i
+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[g>>2]=(c[g>>2]|0)-(c
[(c[e>>2]|0)+16>>2]|0);if((c[f>>2]|0)>(c[(c[e>>2]|0)+12>>2]|0))c[f>
x3e;2]=c[(c[e>>2]|0)+12>>2];a=(c[f>>2]|0)-(c[(c[e>>2]|0)+8>>2]|0)|0;c[f>
x3e;2]=a;c[f>>2]=(c[f>>2]|0)<0?-1:a;if(!((c[f>>2]|0)==(c[c[e>>2]>>2]|0)?(
c[g>>2]|0)==(c[(c[e>>2]|0)+4>>2]|0):0)){if(!(c[(c[e>>2]|0)+40>>2]|0))mp(c[e>
;>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[(c[e>>2]|0)+36>>2]=0}c[c[e>>2]>>
;2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=c[g>>2];if((c[g>>2]|0)>>>0>
;=(c[(c[e>>2]|0)+28>>2]|0)>>>0){d=1;d=d&1;a=c[e>>2]|0;a=a+40|0;c[a>>
2]=d;i=h;return}d=(c[f>>2]|0)>=(c[(c[e>>2]|0)+24>>2]|0);d=d&1;a=c[e>>2]|0;a=a+
40|0;c[a>>2]=d;i=h;return}function qp(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;rp(c[f>>2]|0,c[c[e>>2]>>2]<<2,c[(c[e>>2]|0)+4>>2]
x3c;<2);i=d;return 0}function rp(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,y=0,z=0,A=0,B=0,C=0;C=i;i=i+96|0;e=C+88|0;f=C+84|0;g=C+80|0;n=C+76|0;o=C+72|0;q=C+68|0;r=C+64|0;w=C+60|0;k=C+56|0
;l=C+52|0;A=C+48|0;B=C+44|0;x=C+40|0;p=C+36|0;j=C+32|0;y=C+28|0;t=C+24|0;s=C+20|0;v=C+16|0;u=C+12|0;m=C+8|0;z=C+4|0;h=C;c[e>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[n>>2]=c[(c[e>>2]|0)+72>>2]>>8;c[o
x3e;>2]=c[g>>2]>>8;c[q>>2]=(c[(c[e>>2]|0)+68>>2]|0)-(c[(c[e>>2]|
0)+72>>2]|0);c[r>>2]=(c[g>>2]|0)-(c[o>>2]<<8);c[k>>2]=(c[f>>
;2]|0)-(c[(c[e>>2]|0)+64>>2]|0);c[l>>2]=(c[g>>2]|0)-(c[(c[e>>2]|0)+68>>
;2]|0);c[v>>2]=c[n>>2];c[u>>2]=c[o>>2];if((c[n>>2]|0)>(c[o>>2]|
0)){c[v>>2]=c[o>>2];c[u>>2]=c[n>>2]}if((c[v>>2]|0)>=(c[(c[e>>2]|
0)+20>>2]|0)){A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>
;>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=
A;i=C;return}if((c[u>>2]|0)<(c[(c[e>>2]|0)+16>>2]|0)){A=c[f>>2]|0;B=c[e>>
2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0
;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C;return}if((c[n>>2]|0)==(c[o>>2]|0)){
sp(c[e>>2]|0,c[n>>2]|0,c[(c[e>>2]|0)+64>>2]|0,c[q>>2]|0,c[f>>2]|0,c[
r>>2]|0);A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>
;2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C
;return}c[s>>2]=1;if(!(c[k>>2]|0)){c[m>>2]=c[(c[e>>2]|0)+64>>2]>>8;c
[z>>2]=(c[(c[e>>2]|0)+64>>2]|0)-(c[m>>2]<<8)<<1;c[p>>2]=256
;if((c[l>>2]|0)<0){c[p>>2]=0;c[s>>2]=-1}c[j>>2]=(c[p>>2]|0)-(c[q>>
;2]|0);A=_(c[z>>2]|0,c[j>>2]|0)|0;B=(c[e>>2]|0)+32|0;c[B>>2]=(c[B>>2]|0)+A;B=(
c[e>>2]|0)+36|0;c[B>>2]=(c[B>>2]|0)+(c[j>>2]|0);c[n>>2]=(c[n>>2]|0)+(
c[s>>2]|0);pp(c[e>>2]|0,c[m>>2]|0,c[n>>2]|0);c[j>>2]=(c[p>>2]|0)+(c[
p>>2]|0)-256;c[h>>2]=_(c[z>>2]|0,c[j>>2]|0)|0;while(1){if((c[n>>2]|0)==(c[o>
;>2]|0))break;B=(c[e>>2]|0)+32|0;c[B>>2]=(c[B>>2]|0)+(c[h>>2]|0);B=(c[e>>
2]|0)+36|0;c[B>>2]=(c[B>>2]|0)+(c[j>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[s>>
;2]|0);pp(c[e>>2]|0,c[m>>2]|0,c[n>>2]|0)}c[j>>2]=(c[r>>2]|0)-256+(c[p>>
;2]|0);B=_(c[z>>2]|0,c[j>>2]|0)|0;A=(c[e>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+B;A=(
c[e>>2]|0)+36|0;c[A>>2]=(c[A>>2]|0)+(c[j>>2]|0);A=c[f>>2]|0;B=c[e>>2
]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;
A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C;return}c[x>>2]=_(256-(c[q>>2]|0)|0,c
[k>>2]|0)|0;c[p>>2]=256;c[s>>2]=1;if((c[l>>2]|0)<0){c[x>>2]=_(c[q>
x3e;2]|0,c[k>>2]|0)|0;c[p>>2]=0;c[s>>2]=-1;c[l>>2]=0-(c[l>>2]|0)}c[j>>
;2]=(c[x>>2]|0)/(c[l>>2]|0)|0;c[w>>2]=(c[x>>2]|0)%(c[l>>2]|0)|0;if((c[w>
x3e;2]|0)<0){c[j>>2]=(c[j>>2]|0)+-1;c[w>>2]=(c[w>>2]|0)+(c[l>>2]|0)}c[A
x3e;>2]=(c[(c[e>>2]|0)+64>>2]|0)+(c[j>>2]|0);sp(c[e>>2]|0,c[n>>2]|0,c[(c[
e>>2]|0)+64>>2]|0,c[q>>2]|0,c[A>>2]|0,c[p>>2]|0);c[n>>2]=(c[n>
x3e;2]|0)+(c[s>>2]|0);pp(c[e>>2]|0,c[A>>2]>>8,c[n>>2]|0);a:do if((c[n>>
;2]|0)!=(c[o>>2]|0)){c[x>>2]=c[k>>2]<<8;c[t>>2]=(c[x>>2]|0)/(c[l>
;>2]|0)|0;c[y>>2]=(c[x>>2]|0)%(c[l>>2]|0)|0;if((c[y>>2]|0)<0){c[t>>2
]=(c[t>>2]|0)+-1;c[y>>2]=(c[y>>2]|0)+(c[l>>2]|0)}c[w>>2]=(c[w>>2]|0)-(
c[l>>2]|0);while(1){if((c[n>>2]|0)==(c[o>>2]|0))break a;c[j>>2]=c[t>>2];c[w>
;>2]=(c[w>>2]|0)+(c[y>>2]|0);if((c[w>>2]|0)>=0){c[w>>2]=(c[w>>2]|0)-(
c[l>>2]|0);c[j>>2]=(c[j>>2]|0)+1}c[B>>2]=(c[A>>2]|0)+(c[j>>2]|0);sp(
c[e>>2]|0,c[n>>2]|0,c[A>>2]|0,256-(c[p>>2]|0)|0,c[B>>2]|0,c[p>>2]|0);
c[A>>2]=c[B>>2];c[n>>2]=(c[n>>2]|0)+(c[s>>2]|0);pp(c[e>>2]|0,c[A>
;>2]>>8,c[n>>2]|0)}}while(0);sp(c[e>>2]|0,c[n>>2]|0,c[A>>2]|0,256-(c[p>
;>2]|0)|0,c[f>>2]|0,c[r>>2]|0);A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A
;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>
;2]|0;B=B+72|0;c[B>>2]=A;i=C;return}function sp(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;y=i;i=i+80|0;h=y+68|0;j=y+64|0;A=y+60|0;k=y+56|0;z=y+52|0;l=y+48|0;o=
y+44|0;p=y+40|0;r=y+36|0;s=y+32|0;m=y+28|0;v=y+24|0;u=y+20|0;x=y+16|0;w=y+12|0;q=y+8|0;n=y+4|0;t=y;c[h>>2]=a;c[j>
x3e;2]=b;c[A>>2]=d;c[k>>2]=e;c[z>>2]=f;c[l>>2]=g;c[n>>2]=(c[z>>2]|0)-(
c[A>>2]|0);c[o>>2]=c[A>>2]>>8;c[p>>2]=c[z>>2]>>8;c[r>
x3e;2]=(c[A>>2]|0)-(c[o>>2]<<8);c[s>>2]=(c[z>>2]|0)-(c[p>>2]<
x3c;8);if((c[k>>2]|0)==(c[l>>2]|0)){pp(c[h>>2]|0,c[p>>2]|0,c[j>>2]|0);i=y;return
}if((c[o>>2]|0)==(c[p>>2]|0)){c[m>>2]=(c[l>>2]|0)-(c[k>>2]|0);z=_((c[r>
x3e;2]|0)+(c[s>>2]|0)|0,c[m>>2]|0)|0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;
A=(c[h>>2]|0)+36|0;c[A>>2]=(c[A>>2]|0)+(c[m>>2]|0);i=y;return}c[w>>2]=_(256-(c
[r>>2]|0)|0,(c[l>>2]|0)-(c[k>>2]|0)|0)|0;c[q>>2]=256;c[t>>2]=1;if((c[n>
x3e;2]|0)<0){c[w>>2]=_(c[r>>2]|0,(c[l>>2]|0)-(c[k>>2]|0)|0)|0;c[q>>2]=0;c
[t>>2]=-1;c[n>>2]=0-(c[n>>2]|0)}c[m>>2]=(c[w>>2]|0)/(c[n>>2]|0)|0;c[
v>>2]=(c[w>>2]|0)%(c[n>>2]|0)|0;if((c[v>>2]|0)<0){c[m>>2]=(c[m>>
;2]|0)+-1;c[v>>2]=(c[v>>2]|0)+(c[n>>2]|0)}z=_((c[r>>2]|0)+(c[q>>2]|0)|0,c[m>
;>2]|0)|0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;A=(c[h>>2]|0)+36|0;c[A>>
;2]=(c[A>>2]|0)+(c[m>>2]|0);c[o>>2]=(c[o>>2]|0)+(c[t>>2]|0);pp(c[h>>
2]|0,c[o>>2]|0,c[j>>2]|0);c[k>>2]=(c[k>>2]|0)+(c[m>>2]|0);a:do if((c[o>
x3e;2]|0)!=(c[p>>2]|0)){c[w>>2]=(c[l>>2]|0)-(c[k>>2]|0)+(c[m>>2]|0)<<
;8;c[u>>2]=(c[w>>2]|0)/(c[n>>2]|0)|0;c[x>>2]=(c[w>>2]|0)%(c[n>>2]|0)|
0;if((c[x>>2]|0)<0){c[u>>2]=(c[u>>2]|0)+-1;c[x>>2]=(c[x>>2]|0)+(c[n>
x3e;2]|0)}c[v>>2]=(c[v>>2]|0)-(c[n>>2]|0);while(1){if((c[o>>2]|0)==(c[p>>2]|0))
break a;c[m>>2]=c[u>>2];c[v>>2]=(c[v>>2]|0)+(c[x>>2]|0);if((c[v>>2]|
0)>=0){c[v>>2]=(c[v>>2]|0)-(c[n>>2]|0);c[m>>2]=(c[m>>2]|0)+1}A=(c[h>
x3e;2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+(c[m>>2]<<8);A=(c[h>>2]|0)+36|0;c[A>
x3e;2]=(c[A>>2]|0)+(c[m>>2]|0);c[k>>2]=(c[k>>2]|0)+(c[m>>2]|0);c[o>>
2]=(c[o>>2]|0)+(c[t>>2]|0);pp(c[h>>2]|0,c[o>>2]|0,c[j>>2]|0)}}while(0);c[m>
;>2]=(c[l>>2]|0)-(c[k>>2]|0);z=_((c[s>>2]|0)+256-(c[q>>2]|0)|0,c[m>>2]|0)|
0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;A=(c[h>>2]|0)+36|0;c[A>>2]=(c[A>
;>2]|0)+(c[m>>2]|0);i=y;return}function tp(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;up(c[h>>2]|0,c[g>>2]|0,c[f>>2]|
0);i=e;return 0}function up(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;p=i;i=i+48|0;e=p+44
|0;q=p+40|0;r=p+36|0;g=p+32|0;h=p+28|0;n=p+24|0;j=p+20|0;k=p+16|0;f=p+12|0;m=p+8|0;l=p+4|0;o=p;c[e>>2]=a;c[q>>
;2]=b;c[r>>2]=d;c[f>>2]=(c[e>>2]|0)+76;c[c[f>>2]>>2]=c[c[r>>2]>
x3e;2]<<2;c[(c[f>>2]|0)+4>>2]=c[(c[r>>2]|0)+4>>2]<<2;c[(c[f>>
;2]|0)+8>>2]=c[c[q>>2]>>2]<<2;c[(c[f>>2]|0)+8+4>>2]=c[(c[q>>
;2]|0)+4>>2]<<2;c[(c[f>>2]|0)+16>>2]=c[(c[e>>2]|0)+64>>2];c[(c[f>
;>2]|0)+16+4>>2]=c[(c[e>>2]|0)+68>>2];a=(c[(c[f>>2]|0)+16>>2]|0)+(c[c[f
x3e;>2]>>2]|0)-(c[(c[f>>2]|0)+8>>2]<<1)|0;c[g>>2]=((c[(c[f>>2]|
0)+16>>2]|0)+(c[c[f>>2]>>2]|0)-(c[(c[f>>2]|0)+8>>2]<<1)|0)<0?0-
a|0:a;a=(c[(c[f>>2]|0)+16+4>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0)-(c[(c[f>>2]|0)+8+4
x3e;>2]<<1)|0;c[h>>2]=((c[(c[f>>2]|0)+16+4>>2]|0)+(c[(c[f>>2]|0)+4>
x3e;2]|0)-(c[(c[f>>2]|0)+8+4>>2]<<1)|0)<0?0-a|0:a;if((c[g>>2]|0)<(c[h>>
;2]|0))c[g>>2]=c[h>>2];if((c[g>>2]|0)<=64){rp(c[e>>2]|0,c[c[f>>2]>
x3e;2]|0,c[(c[f>>2]|0)+4>>2]|0);i=p;return}c[j>>2]=0;while(1){if((c[g>>2]|0)<=64)break
;c[g>>2]=c[g>>2]>>2;c[j>>2]=(c[j>>2]|0)+1}c[k>>2]=(c[e>>2]|
0)+852;c[c[k>>2]>>2]=c[j>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)<0)break;c[
j>>2]=c[(c[k>>2]|0)+(c[n>>2]<<2)>>2];if((c[j>>2]|0)>1){r=c[(c[f
>>2]|0)+4>>2]|0;c[l>>2]=r;c[m>>2]=r;c[o>>2]=c[(c[f>>2]|0)+8+4>
x3e;2];if((c[o>>2]|0)<(c[m>>2]|0))c[m>>2]=c[o>>2];if((c[o>>2]|0)>(c[
l>>2]|0))c[l>>2]=c[o>>2];c[o>>2]=c[(c[f>>2]|0)+16+4>>2];if((c[o>
;>2]|0)<(c[m>>2]|0))c[m>>2]=c[o>>2];if((c[o>>2]|0)>(c[l>>2]|0))
c[l>>2]=c[o>>2];if((c[m>>2]>>8|0)<(c[(c[e>>2]|0)+20>>2]|0)?(c[l
>>2]>>8|0)>=(c[(c[e>>2]|0)+16>>2]|0):0){vp(c[f>>2]|0);c[f>>2]=(
c[f>>2]|0)+16;c[n>>2]=(c[n>>2]|0)+1;r=(c[j>>2]|0)-1|0;c[(c[k>>2]|0)+((c[n>
;>2]|0)-1<<2)>>2]=r;c[(c[k>>2]|0)+(c[n>>2]<<2)>>2]=r;continue}}
rp(c[e>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0);c[n>>2]=(c[n>
;>2]|0)+-1;c[f>>2]=(c[f>>2]|0)+-16}i=p;return}function vp(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[(c[d>>2]|0)+32>>2]=c[(c[d>>2]|0)+16>>2];c[e>
x3e;2]=c[(c[d>>2]|0)+8>>2];a=((c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c
[d>>2]|0)+24>>2]=a;c[f>>2]=a;a=((c[c[d>>2]>>2]|0)+(c[e>>2]|0)|0)/2|0
;c[(c[d>>2]|0)+8>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16>>2]=((c[f>>2]|0)+(
c[e>>2]|0)|0)/2|0;c[(c[d>>2]|0)+32+4>>2]=c[(c[d>>2]|0)+16+4>>2];c[e>>
;2]=c[(c[d>>2]|0)+8+4>>2];a=((c[(c[d>>2]|0)+16+4>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(
c[d>>2]|0)+24+4>>2]=a;c[f>>2]=a;a=((c[(c[d>>2]|0)+4>>2]|0)+(c[e>>2]|
0)|0)/2|0;c[(c[d>>2]|0)+8+4>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16+4>>2]=((c[f>
x3e;2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function wp(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;h=f+8|0;g=f+4|0;k=f;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;c[k>>2]=e;xp(c[k>>
;2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0);i=f;return 0}function xp(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;w=i;i=i+80|0;f=w+72|0;x=w+68|0;y=w+64|0;z=w+60|
0;h=w+56|0;s=w+52|0;r=w+48|0;v=w+44|0;j=w+40|0;n=w+36|0;m=w+32|0;q=w+28|0;k=w+24|0;o=w+20|0;l=w+16|0;p=w+12|0;g=w+8|0;t=w+4|0;u=
w;c[f>>2]=a;c[x>>2]=b;c[y>>2]=d;c[z>>2]=e;c[h>>2]=(c[f>>2]|0)+76;c[c
[h>>2]>>2]=c[c[z>>2]>>2]<<2;c[(c[h>>2]|0)+4>>2]=c[(c[z>
;>2]|0)+4>>2]<<2;c[(c[h>>2]|0)+8>>2]=c[c[y>>2]>>2]<<2
;c[(c[h>>2]|0)+8+4>>2]=c[(c[y>>2]|0)+4>>2]<<2;c[(c[h>>2]|0)+16>
x3e;2]=c[c[x>>2]>>2]<<2;c[(c[h>>2]|0)+16+4>>2]=c[(c[x>>2]|0)+4>
x3e;2]<<2;c[(c[h>>2]|0)+24>>2]=c[(c[f>>2]|0)+64>>2];c[(c[h>>2]|0)+24
+4>>2]=c[(c[f>>2]|0)+68>>2];a:while(1){z=c[(c[h>>2]|0)+4>>2]|0;c[r>>
2]=z;c[s>>2]=z;c[v>>2]=c[(c[h>>2]|0)+8+4>>2];if((c[v>>2]|0)<(c[s>>
;2]|0))c[s>>2]=c[v>>2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>
2];c[v>>2]=c[(c[h>>2]|0)+16+4>>2];if((c[v>>2]|0)<(c[s>>2]|0))c[s>>
;2]=c[v>>2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>2];c[v>>2]=
c[(c[h>>2]|0)+24+4>>2];if((c[v>>2]|0)<(c[s>>2]|0))c[s>>2]=c[v>>
2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>2];do if((c[s>>2]>>8
|0)<(c[(c[f>>2]|0)+20>>2]|0)?(c[r>>2]>>8|0)>=(c[(c[f>>2]|0)+16>
x3e;2]|0):0){c[j>>2]=(c[(c[h>>2]|0)+24>>2]|0)-(c[c[h>>2]>>2]|0);c[n>>
;2]=(c[(c[h>>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0);b=c[j>>2]|0;c[m>
x3e;2]=(c[j>>2]|0)<0?0-b|0:b;b=c[n>>2]|0;c[q>>2]=(c[n>>2]|0)<0?0-b|0:b;b=c[m
x3e;>2]|0;if((c[m>>2]|0)>(c[q>>2]|0))b=(b*236|0)+((c[q>>2]|0)*97|0)|0;else b=(b*97|0)+((
c[q>>2]|0)*236|0)|0;c[g>>2]=b>>8;if(((((((c[g>>2]|0)<=32767?(c[u>>2]=(c[g
>>2]|0)*42,c[k>>2]=(c[(c[h>>2]|0)+8>>2]|0)-(c[c[h>>2]>>2]|0),c[o>
;>2]=(c[(c[h>>2]|0)+8+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0),y=_(c[n>>2]|0,c[k
x3e;>2]|0)|0,y=(y-(_(c[j>>2]|0,c[o>>2]|0)|0)|0)<0,z=_(c[n>>2]|0,c[k>>2]|0)|0,z
=z-(_(c[j>>2]|0,c[o>>2]|0)|0)|0,c[t>>2]=y?0-z|0:z,(c[t>>2]|0)<=(c[u>>2]|0
)):0)?(c[l>>2]=(c[(c[h>>2]|0)+16>>2]|0)-(c[c[h>>2]>>2]|0),c[p>>2]=(c
[(c[h>>2]|0)+16+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0),y=_(c[n>>2]|0,c[l>>
2]|0)|0,y=(y-(_(c[j>>2]|0,c[p>>2]|0)|0)|0)<0,z=_(c[n>>2]|0,c[l>>2]|0)|0,z=z-(_(c[j
x3e;>2]|0,c[p>>2]|0)|0)|0,c[t>>2]=y?0-z|0:z,(c[t>>2]|0)<=(c[u>>2]|0)):0)?(z=_(
c[n>>2]|0,c[o>>2]|0)|0,(z+(_(c[j>>2]|0,c[k>>2]|0)|0)|0)>=0):0)?(z=_(c[n>>
2]|0,c[p>>2]|0)|0,(z+(_(c[j>>2]|0,c[l>>2]|0)|0)|0)>=0):0)?(z=_(c[n>>2]|0,(c[(c[h>
;>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+8+4>>2]|0)|0)|0,(z+(_(c[j>>2]|0,(c[(c[h>>
;2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+8>>2]|0)|0)|0)|0)>=0):0)?(z=_(c[n>>2]|0,(c[(c[h>
;>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+16+4>>2]|0)|0)|0,(z+(_(c[j>>2]|0,(c[(c[h>
x3e;2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+16>>2]|0)|0)|0)|0)>=0):0)break;yp(c[h>>2]|0);c[h
>>2]=(c[h>>2]|0)+24;continue a}while(0);rp(c[f>>2]|0,c[c[h>>2]>>2]|0,c[(c[h>
;>2]|0)+4>>2]|0);if((c[h>>2]|0)==((c[f>>2]|0)+76|0))break;c[h>>2]=(c[h>>2
]|0)+-24}i=w;return}function yp(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;f=b+12|0;e=b+8|0;g=b+4|0;h=b;c[d>
;>2]=a;c[(c[d>>2]|0)+48>>2]=c[(c[d>>2]|0)+24>>2];c[g>>2]=c[(c[d>>
;2]|0)+8>>2];c[h>>2]=c[(c[d>>2]|0)+16>>2];a=((c[c[d>>2]>>2]|0)+(c[g
x3e;>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+8>>2]=a;a=((c[(c[d>>2]|0)+24>>2
]|0)+(c[h>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+40>>2]=a;c[g>>2]=((c[g>
x3e;2]|0)+(c[h>>2]|0)|0)/2|0;a=((c[f>>2]|0)+(c[g>>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>
;2]|0)+16>>2]=a;a=((c[e>>2]|0)+(c[g>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+32
x3e;>2]=a;c[(c[d>>2]|0)+24>>2]=((c[f>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c[d>>2]|
0)+48+4>>2]=c[(c[d>>2]|0)+24+4>>2];c[g>>2]=c[(c[d>>2]|0)+8+4>>2];c[h
>>2]=c[(c[d>>2]|0)+16+4>>2];a=((c[(c[d>>2]|0)+4>>2]|0)+(c[g>>2]|0)|0
)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+8+4>>2]=a;a=((c[(c[d>>2]|0)+24+4>>2]|0)+(c[h>
;>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+40+4>>2]=a;c[g>>2]=((c[g>>2]|0)+(c
[h>>2]|0)|0)/2|0;a=((c[f>>2]|0)+(c[g>>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+16+
4>>2]=a;a=((c[e>>2]|0)+(c[g>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+32+4>
x3e;2]=a;c[(c[d>>2]|0)+24+4>>2]=((c[f>>2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function zp(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;k=i;i=i+32|0;d=k+24|0;l=k+20|0;j=k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;e=k;c[d>
;>2]=a;c[l>>2]=b;c[l>>2]=c[l>>2];if(!(c[(c[d>>2]|0)+52>>2]|0)){i=k;return
}c[(c[d>>2]|0)+1232>>2]=0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[d>>2]|
0)+1424>>2]|0))break;c[f>>2]=c[(c[(c[d>>2]|0)+1420>>2]|0)+(c[j>>2]<<
2)>>2];c[g>>2]=0;c[h>>2]=0;while(1){if(!(c[f>>2]|0))break;if(c[g>>2]|0?(c[c[f
x3e;>2]>>2]|0)>(c[h>>2]|0):0)Ap(c[d>>2]|0,c[h>>2]|0,c[j>>2]|0,c[g>
;>2]<<9,(c[c[f>>2]>>2]|0)-(c[h>>2]|0)|0);c[g>>2]=(c[g>>2]|0)+(c
[(c[f>>2]|0)+4>>2]|0);c[e>>2]=(c[g>>2]<<9)-(c[(c[f>>2]|0)+8>>
;2]|0);if(c[e>>2]|0?(c[c[f>>2]>>2]|0)>=0:0)Ap(c[d>>2]|0,c[c[f>>2]>
x3e;2]|0,c[j>>2]|0,c[e>>2]|0,1);c[h>>2]=(c[c[f>>2]>>2]|0)+1;c[f>>2]=
c[(c[f>>2]|0)+12>>2]}if(c[g>>2]|0)Ap(c[d>>2]|0,c[h>>2]|0,c[j>>2]|0,c
[g>>2]<<9,(c[(c[d>>2]|0)+24>>2]|0)-(c[h>>2]|0)|0);c[j>>2]=(c[j>
x3e;2]|0)+1}if(!(c[(c[d>>2]|0)+1236>>2]|0)){i=k;return}if((c[(c[d>>2]|0)+1232>>2]|0)<
;=0){i=k;return}_a[c[(c[d>>2]|0)+1236>>2]&15](c[(c[d>>2]|0)+1244>>2]|0,c[(c[d>
x3e;2]|0)+1232>>2]|0,(c[d>>2]|0)+1040|0,c[(c[d>>2]|0)+1240>>2]|0);i=k;return}function Ap
(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;s=i;i=i+32|0;l=s+28|0;m=s+24|0;n=s+20|0;t=s+16
|0;o=s+12|0;r=s+8|0;p=s+4|0;q=s;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[t>>2]=j;c[o>>2
]=k;c[q>>2]=c[t>>2]>>9;if((c[q>>2]|0)<0)c[q>>2]=0-(c[q>>2]|0);k
=c[q>>2]|0;do if(c[(c[l>>2]|0)+980+16>>2]&2|0){c[q>>2]=k&511;k=c[q>>
2]|0;if((c[q>>2]|0)>256){c[q>>2]=512-k;break}if((k|0)==256)c[q>>2]=255}else if((k|0)>=256
)c[q>>2]=255;while(0);c[n>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);t=(c[m>
;>2]|0)+(c[(c[l>>2]|0)+8>>2]|0)|0;c[m>>2]=t;c[m>>2]=(c[m>>2]|0)>=32767
?32767:t;if((c[n>>2]|0)>=2147483647)c[n>>2]=2147483647;if(!(c[q>>2]|0)){i=s;return}c[p>
x3e;2]=c[(c[l>>2]|0)+1232>>2];c[r>>2]=(c[l>>2]|0)+1040+((c[p>>2]|0)*6|0)+-6;if
((((c[p>>2]|0)>0?(c[(c[l>>2]|0)+1244>>2]|0)==(c[n>>2]|0):0)?((b[c[r>>2]
x3e;>1]|0)+(e[(c[r>>2]|0)+2>>1]|0)|0)==(c[m>>2]|0):0)?(d[(c[r>>2]|0)+4>>0
]|0)==(c[q>>2]|0):0){b[(c[r>>2]|0)+2>>1]=(e[(c[r>>2]|0)+2>>1]|0)+(c[o>>
;2]|0);i=s;return}if((c[p>>2]|0)>=32?1:(c[(c[l>>2]|0)+1244>>2]|0)!=(c[n>>2]|0)){if((
c[p>>2]|0)>0?(c[(c[l>>2]|0)+1236>>2]|0)!=0:0)_a[c[(c[l>>2]|0)+1236>>2]&
;15](c[(c[l>>2]|0)+1244>>2]|0,c[p>>2]|0,(c[l>>2]|0)+1040|0,c[(c[l>>2]|0)+1240
x3e;>2]|0);c[(c[l>>2]|0)+1232>>2]=0;c[(c[l>>2]|0)+1244>>2]=c[n>>2];c[p>
;>2]=0;c[r>>2]=(c[l>>2]|0)+1040}else c[r>>2]=(c[r>>2]|0)+6;b[c[r>>2]>
;>1]=c[m>>2];b[(c[r>>2]|0)+2>>1]=c[o>>2];a[(c[r>>2]|0)+4>>0]=c[
q>>2];t=(c[l>>2]|0)+1232|0;c[t>>2]=(c[t>>2]|0)+1;i=s;return}function Bp(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]|0)+12>>2];Fb(c[e>>
;2]|0,c[d>>2]|0);c[d>>2]=0;i=b;return}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]=c[(c[e>>2]|0)+4>>2];Ua[c[(c[(c[(c[e>>2]|0)+20>>2]|0)+56>
;>2]|0)+8>>2]&31](c[(c[e>>2]|0)+60>>2]|0,c[(c[d>>2]|0)+172>>2]|0,c[(
c[d>>2]|0)+176>>2]|0);i=b;return 0}function Dp(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;k=i;
i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;if((c[h>
;>2]|0)==1)c[h>>2]=0;b=Ep(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,0)|0;i=
k;return b|0}function Ep(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;P=i;i=i+192|0;k=P+180|0;l=P+176|0;m=P+172|0;n=P+168|0;o=P+
164|0;p=P+160|0;t=P+156|0;B=P+152|0;r=P+136|0;H=P+128|0;u=P+124|0;v=P+120|0;I=P+116|0;D=P+112|0;q=P+108|0;A=P+104|0;y=P+100|0;G=
P+96|0;L=P+92|0;N=P+88|0;K=P+84|0;O=P+80|0;C=P+32|0;z=P+28|0;w=P+24|0;M=P+20|0;s=P+16|0;E=P+12|0;F=P+8|0;J=P+4|0;x=P;c[l>
x3e;2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=h;c[p>>2]=j;c[B>>2]=0;c[y>>2]=(
c[n>>2]|0)==3&1;c[G>>2]=(c[n>>2]|0)==4&1;do if((c[(c[m>>2]|0)+72>>2]|
0)==(c[(c[l>>2]|0)+24>>2]|0)){if((c[n>>2]|0)!=(c[p>>2]|0)){c[k>>2]=19;O=c[k>
;>2]|0;i=P;return O|0}c[B>>2]=(c[m>>2]|0)+108;if(c[o>>2]|0)Nb(c[B>>2]|0,c[c[o>
x3e;2]>>2]|0,c[(c[o>>2]|0)+4>>2]|0);_d(c[B>>2]|0,r);c[r>>2]=c[r>>2]
x26;-64;c[r+4>>2]=c[r+4>>2]&-64;c[r+8>>2]=(c[r+8>>2]|0)+63&-64;c[r+12>>
;2]=(c[r+12>>2]|0)+63&-64;if((c[r>>2]|0)<0?(c[r+8>>2]|0)>(2147483647+(c[r>>
;2]|0)|0):0){c[k>>2]=98;O=c[k>>2]|0;i=P;return O|0}c[H>>2]=(c[r+8>>2]|0)-(c[r>>
;2]|0)>>6;if((c[r+4>>2]|0)<0?(c[r+12>>2]|0)>(2147483647+(c[r+4>>2]|0)|0):0){c[
k>>2]=98;O=c[k>>2]|0;i=P;return O|0}c[u>>2]=(c[r+12>>2]|0)-(c[r+4>>2]|0)>
x3e;6;c[q>>2]=(c[m>>2]|0)+76;c[A>>2]=c[(c[l>>2]|0)+8>>2];c[I>>2]=c[H
>>2];c[v>>2]=c[u>>2];if(c[(c[(c[m>>2]|0)+156>>2]|0)+4>>2]&1|0){
Fb(c[A>>2]|0,c[(c[q>>2]|0)+12>>2]|0);c[(c[q>>2]|0)+12>>2]=0;f=(c[(c[m>>
;2]|0)+156>>2]|0)+4|0;c[f>>2]=c[f>>2]&-2}c[D>>2]=c[H>>2];if(c[y>>
;2]|0){c[H>>2]=(c[H>>2]|0)*3;c[D>>2]=(c[H>>2]|0)+3&-4}if(c[G>>2]|0)c[u>
;>2]=(c[u>>2]|0)*3;c[L>>2]=c[r>>2];c[N>>2]=c[r+4>>2];c[K>>2]=c[
r>>2]>>6;c[O>>2]=c[r+12>>2]>>6;if((c[H>>2]|0)>>>0>
;32767|(c[u>>2]|0)>>>0>32767){c[k>>2]=98;O=c[k>>2]|0;i=P;return O|0}a[(c[q>
;>2]|0)+18>>0]=2;b[(c[q>>2]|0)+16>>1]=256;c[(c[q>>2]|0)+4>>2]=c[H>
x3e;2];c[c[q>>2]>>2]=c[u>>2];c[(c[q>>2]|0)+8>>2]=c[D>>2];Nb(c[B>
;>2]|0,0-(c[L>>2]|0)|0,0-(c[N>>2]|0)|0);f=bc(c[A>>2]|0,_(c[D>>2]|0,c[u>>2
]|0)|0,t)|0;c[(c[q>>2]|0)+12>>2]=f;if(!(c[t>>2]|0)){f=(c[(c[m>>2]|0)+156>>2]|0
)+4|0;c[f>>2]=c[f>>2]|1;c[C>>2]=c[q>>2];c[C+4>>2]=c[B>>2];c[C+8>
;>2]=1;c[t>>2]=Ya[c[(c[l>>2]|0)+64>>2]&127](c[(c[l>>2]|0)+60>>2]|0,C
)|0;a:do if(c[y>>2]|0){c[z>>2]=c[(c[q>>2]|0)+12>>2];c[w>>2]=c[v>>2];
while(1){if((c[w>>2]|0)>>>0<=0)break a;c[s>>2]=(c[z>>2]|0)+(c[H>>2]|
0);c[M>>2]=c[I>>2];while(1){if((c[M>>2]|0)>>>0<=0)break;c[E>>2]=d[(c
[z>>2]|0)+((c[M>>2]|0)-1)>>0];a[(c[s>>2]|0)+-3>>0]=c[E>>2];a[(c[s>
;>2]|0)+-2>>0]=c[E>>2];a[(c[s>>2]|0)+-1>>0]=c[E>>2];c[s>>2]=(c[
s>>2]|0)+-3;c[M>>2]=(c[M>>2]|0)+-1}c[w>>2]=(c[w>>2]|0)+-1;c[z>>2]=(c
[z>>2]|0)+(c[D>>2]|0)}}while(0);b:do if(c[G>>2]|0){c[F>>2]=(c[(c[q>>2]|0)+12
x3e;>2]|0)+(_((c[u>>2]|0)-(c[v>>2]|0)|0,c[D>>2]|0)|0);c[J>>2]=c[(c[q>>2]|
0)+12>>2];c[x>>2]=c[v>>2];while(1){if((c[x>>2]|0)>>>0<=0)break b;Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);c[F
>>2]=(c[F>>2]|0)+(c[D>>2]|0);c[x>>2]=(c[x>>2]|0)+-1}}while(0);Nb(c[B>>
;2]|0,c[L>>2]|0,c[N>>2]|0);if((c[K>>2]|0)>2147483647|(c[O>>2]|0)>2147483647){c
[k>>2]=23;O=c[k>>2]|0;i=P;return O|0}else{if(c[t>>2]|0)break;c[(c[m>>2]|0)+72>>
;2]=1651078259;c[(c[m>>2]|0)+100>>2]=c[K>>2];c[(c[m>>2]|0)+104>>2]=c[O>
x3e;2];break}}}else c[t>>2]=6;while(0);if((c[B>>2]|0)!=0&(c[o>>2]|0)!=0)Nb(c[B>>2]|
0,0-(c[c[o>>2]>>2]|0)|0,0-(c[(c[o>>2]|0)+4>>2]|0)|0);c[k>>2]=c[t>>2];
O=c[k>>2]|0;i=P;return O|0}function Fp(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;l=k+16
|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[l>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2
]=0;if((c[(c[f>>2]|0)+72>>2]|0)!=(c[(c[l>>2]|0)+24>>2]|0)){c[j>>2]=6;l=c[j>
;>2]|0;i=k;return l|0}if(c[g>>2]|0)Kb((c[f>>2]|0)+108|0,c[g>>2]|0);if(!(c[h>>2]|0)){
l=c[j>>2]|0;i=k;return l|0}Nb((c[f>>2]|0)+108|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+
4>>2]|0);l=c[j>>2]|0;i=k;return l|0}function Gp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;h=
g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[e>>2]=b;c[f>>2]=d;b=c[f>>2]|0;c[b>>2]=0;c[b+4>
;>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;if((c[(c[e>>2]|0)+72>>2]|0)!=(c[(c[h>>2]|
0)+24>>2]|0)){i=g;return}_d((c[e>>2]|0)+108|0,c[f>>2]|0);i=g;return}function Hp(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=Oa[c[(
c[(c[(c[h>>2]|0)+20>>2]|0)+56>>2]|0)+12>>2]&63](c[(c[h>>2]|0)+60>>
;2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function Ip(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;j=i;i=i+32|0;m=j+16|0;g=j+12|0;l=j+8|0;k=j+4|0;h=j;c[m>>2]=b;c[g>>2]=d;c[l>>2]=e;c[k>
;>2]=f;c[h>>2]=Ep(c[m>>2]|0,c[g>>2]|0,c[l>>2]|0,c[k>>2]|0,3)|0;if(c[h>
;>2]|0){m=c[h>>2]|0;i=j;return m|0}a[(c[g>>2]|0)+76+18>>0]=5;m=c[h>>2]|0;i=j;return
m|0}function Jp(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;j=i;i=i+32|0;m=j+16|0;g=j+12|0;l=j+8|0;k=j+4|0;h=j
;c[m>>2]=b;c[g>>2]=d;c[l>>2]=e;c[k>>2]=f;c[h>>2]=Ep(c[m>>2]|0,c[g>
;>2]|0,c[l>>2]|0,c[k>>2]|0,4)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=j;return m|0}a[(c[g>
;>2]|0)+76+18>>0]=6;m=c[h>>2]|0;i=j;return m|0}function Kp(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[(c[e>>2]|
0)+32>>2]=c[g>>2];a=hc(c[g>>2]|0,4,0,c[f>>2]|0,0,h)|0;c[(c[e>>2]|0)+24>
x3e;2]=a;if((c[h>>2]|0)==0?(a=hc(c[g>>2]|0,4,0,c[f>>2]|0,0,h)|0,c[(c[e>>2]|0)+28>
x3e;2]=a,(c[h>>2]|0)==0):0){c[(c[e>>2]|0)+16>>2]=c[f>>2];c[(c[e>>2]|0)+12>
;>2]=-559038737;c[(c[e>>2]|0)+20>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+8>
;>2]=0;c[(c[e>>2]|0)+4>>2]=0;a=(c[e>>2]|0)+36|0;c[a>>2]=c[1094];c[a+4>>2]=
c[1095];c[a+8>>2]=c[1096];c[a+12>>2]=c[1097]}if(!(c[h>>2]|0)){a=c[h>>2]|0;i=j;return a|0
}Fb(c[g>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;a=c[h>>
2]|0;i=j;return a|0}function Lp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;d=g+4|0;f=g;c[b>>2]=a;c
[e>>2]=c[(c[b>>2]|0)+32>>2];c[f>>2]=c[c[b>>2]>>2];if(!(c[f>>
;2]|0)){i=g;return}a=bc(c[e>>2]|0,c[(c[b>>2]|0)+4>>2]|0,d)|0;c[c[b>>2]>>2]=a;if
(c[d>>2]|0){i=g;return}Ss(c[c[b>>2]>>2]|0,c[f>>2]|0,c[(c[b>>2]|0)+4>>
;2]|0)|0;Mp(c[b>>2]|0,c[f>>2]|0);c[(c[b>>2]|0)+8>>2]=c[(c[b>>2]|0)+4>>
;2];Fb(c[e>>2]|0,c[f>>2]|0);c[f>>2]=0;c[d>>2]=c[d>>2];i=g;return}function Mp(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;h=g+16|0;j=g+12|0;d=g+8|0;f=g+4|0;e=g;c[h>>2]=a;c[j>>
;2]=b;c[d>>2]=(c[c[h>>2]>>2]|0)-(c[j>>2]|0);c[f>>2]=c[(c[h>>2]|0)+24
>>2];c[e>>2]=(c[f>>2]|0)+(c[(c[h>>2]|0)+16>>2]<<2);while(1){if((c[f
x3e;>2]|0)>>>0>=(c[e>>2]|0)>>>0)break;if(c[c[f>>2]>>2]|0){
j=c[f>>2]|0;c[j>>2]=(c[j>>2]|0)+(c[d>>2]|0)}c[f>>2]=(c[f>>2]|0)+4}i=
g;return}function Np(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o
+20|0;j=o+16|0;k=o+12|0;l=o+8|0;n=o+4|0;m=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if((
c[h>>2]|0)>=0?(c[h>>2]|0)<(c[(c[g>>2]|0)+16>>2]|0):0){if((c[k>>2]|0)
x3c;0){c[f>>2]=6;a=c[f>>2]|0;i=o;return a|0}do if(((c[(c[g>>2]|0)+4>>2]|0)+(c[k>>
;2]|0)|0)>>>0>(c[(c[g>>2]|0)+8>>2]|0)>>>0){c[n>>2]=c[(c[g>
x3e;2]|0)+8>>2];a=(c[j>>2]|0)-(c[c[g>>2]>>2]|0)|0;c[m>>2]=a;c[m>>2]=(
c[m>>2]|0)>>>0>=(c[(c[g>>2]|0)+8>>2]|0)>>>0?-1:a;while(1){if((c
[n>>2]|0)>>>0>=((c[(c[g>>2]|0)+4>>2]|0)+(c[k>>2]|0)|0)>>
x3e;0)break;c[n>>2]=(c[n>>2]|0)+(((c[n>>2]|0)>>>2)+1);c[n>>2]=(c[n>
x3e;2]|0)+1023&-1024}c[l>>2]=Op(c[g>>2]|0,c[n>>2]|0)|0;if(c[l>>2]|0){c[f>>
;2]=c[l>>2];a=c[f>>2]|0;i=o;return a|0}else{if((c[m>>2]|0)<0)break;c[j>>2]=(c[c[g
x3e;>2]>>2]|0)+(c[m>>2]|0);break}}while(0);c[(c[(c[g>>2]|0)+24>>2]|0)+(c[h>>
;2]<<2)>>2]=(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+4>>2]|0);c[(c[(c[g>
;>2]|0)+28>>2]|0)+(c[h>>2]<<2)>>2]=c[k>>2];Ss((c[c[g>>2]>
x3e;2]|0)+(c[(c[g>>2]|0)+4>>2]|0)|0,c[j>>2]|0,c[k>>2]|0)|0;a=(c[g>>2]|0)+4|0;c
[a>>2]=(c[a>>2]|0)+(c[k>>2]|0);c[f>>2]=0;a=c[f>>2]|0;i=o;return a|0}c[f>
x3e;2]=6;a=c[f>>2]|0;i=o;return a|0}function Op(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0
;e=k+16|0;f=k+12|0;h=k+8|0;j=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[h>>2]=c[(c[e>>2]|0)+32>
;>2];c[j>>2]=c[c[e>>2]>>2];b=bc(c[h>>2]|0,c[f>>2]|0,g)|0;c[c[e>>
;2]>>2]=b;b=c[j>>2]|0;if(c[g>>2]|0){c[c[e>>2]>>2]=b;c[d>>2]=c[g>
;>2];j=c[d>>2]|0;i=k;return j|0}if(b|0){Ss(c[c[e>>2]>>2]|0,c[j>>2]|0,c[(c[e>
x3e;2]|0)+8>>2]|0)|0;Mp(c[e>>2]|0,c[j>>2]|0);Fb(c[h>>2]|0,c[j>>2]|0);c[j>
x3e;2]=0}c[(c[e>>2]|0)+8>>2]=c[f>>2];c[d>>2]=0;j=c[d>>2]|0;i=k;return j|0}function
Pp(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+32>>
;2];if((c[(c[b>>2]|0)+12>>2]|0)!=-559038737){i=e;return}Fb(c[d>>2]|0,c[c[b>>2]>>
;2]|0);c[c[b>>2]>>2]=0;Fb(c[d>>2]|0,c[(c[b>>2]|0)+24>>2]|0);c[(c[b>>
2]|0)+24>>2]=0;Fb(c[d>>2]|0,c[(c[b>>2]|0)+28>>2]|0);c[(c[b>>2]|0)+28>>
;2]=0;c[(c[b>>2]|0)+12>>2]=0;i=e;return}function Qp(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;j=f+8|0;k=f+4|0;h=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[h>>2]=e;c[(c[
g>>2]|0)+12>>2]=0;c[(c[g>>2]|0)+4>>2]=c[j>>2];c[(c[g>>2]|0)+8>
x3e;2]=c[k>>2];c[c[g>>2]>>2]=c[j>>2];c[(c[g>>2]|0)+16>>2]=c[h>
x3e;2];b=(c[g>>2]|0)+20|0;d=4392;e=b+52|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0
));i=f;return}function Rp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return
}function Sp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Tp(c[d>>2]|0,c[(c[d>>2]|0)+8>>
;2]|0);i=b;return}function Tp(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+8|0;e=h+4|0;g=h;c[f>>2]=a;c[e>
;>2]=b;c[g>>2]=c[c[f>>2]>>2];while(1){if((c[g>>2]|0)>>>0>=(c[e
x3e;>2]|0)>>>0){e=12;break}if((((((d[c[g>>2]>>0]|0|0)!=32?(d[c[g>>2]>>
;0]|0|0)!=13:0)?(d[c[g>>2]>>0]|0|0)!=10:0)?(d[c[g>>2]>>0]|0|0)!=9:0)?(d[c[g>>2
]>>0]|0|0)!=12:0)?d[c[g>>2]>>0]|0|0:0){if((d[c[g>>2]>>0]|0|0)!=37){e=12;break}
Up(g,c[e>>2]|0)}c[g>>2]=(c[g>>2]|0)+1}if((e|0)==12){c[c[f>>2]>>2]=c[g>>
;2];i=h;return}}function Up(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=c[c[e>>2]>>2];while(1){if((c[g>>2]|0)>>>0>=(c[f>
;>2]|0)>>>0)break;if((d[c[g>>2]>>0]|0|0)==13)break;if((d[c[g>>2]>>0]|
0|0)==10)break;c[g>>2]=(c[g>>2]|0)+1}c[c[e>>2]>>2]=c[g>>2];i=h;return}function
Vp(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=c[c[e
x3e;>2]>>2];c[h>>2]=c[(c[e>>2]|0)+8>>2];c[g>>2]=0;Tp(f,c[h>>2]|
0);a:do if((c[f>>2]|0)>>>0<(c[h>>2]|0)>>>0){if((d[c[f>>2]>
x3e;0]|0|0)!=91?(d[c[f>>2]>>0]|0|0)!=93:0){if((d[c[f>>2]>>0]|0|0)==123){c[g>>2
]=Wp(f,c[h>>2]|0)|0;break}if((d[c[f>>2]>>0]|0|0)==40){c[g>>2]=Xp(f,c[h>>2]|0)|
0;break}a=c[f>>2]|0;if((d[c[f>>2]>>0]|0|0)==60){if((a+1|0)>>>0<(c[h>>
;2]|0)>>>0?(d[(c[f>>2]|0)+1>>0]|0|0)==60:0){c[f>>2]=(c[f>>2]|0)+1;c[f>
;>2]=(c[f>>2]|0)+1;break}c[g>>2]=Yp(f,c[h>>2]|0)|0;break}b=c[f>>2]|0;if((d[a>
x3e;0]|0|0)==62){c[f>>2]=b+1;if((c[f>>2]|0)>>>0<(c[h>>2]|0)>>>0
?(d[c[f>>2]>>0]|0|0)==62:0){c[f>>2]=(c[f>>2]|0)+1;break}c[g>>2]=3;break}if((d[
b>>0]|0|0)==47)c[f>>2]=(c[f>>2]|0)+1;while(1){if((c[f>>2]|0)>>>0>=(c
[h>>2]|0)>>>0)break a;if((d[c[f>>2]>>0]|0|0)==32)break a;if((d[c[f>>2]>
;>0]|0|0)==13)break a;if((d[c[f>>2]>>0]|0|0)==10)break a;if((d[c[f>>2]>>0]|0|0)==9)
break a;if((d[c[f>>2]>>0]|0|0)==12)break a;if(!(d[c[f>>2]>>0]|0))break a;if((d[c[f>
x3e;2]>>0]|0|0)==47)break a;if((d[c[f>>2]>>0]|0|0)==40)break a;if((d[c[f>>2]>>
0]|0|0)==41)break a;if((d[c[f>>2]>>0]|0|0)==60)break a;if((d[c[f>>2]>>0]|0|0)==62)break
a;if((d[c[f>>2]>>0]|0|0)==91)break a;if((d[c[f>>2]>>0]|0|0)==93)break a;if((d[c[f>
x3e;2]>>0]|0|0)==123)break a;if((d[c[f>>2]>>0]|0|0)==125)break a;if((d[c[f>>2]>>
;0]|0|0)==37)break a;c[f>>2]=(c[f>>2]|0)+1}}c[f>>2]=(c[f>>2]|0)+1}while(0);if((c[f>
x3e;2]|0)!=(c[c[e>>2]>>2]|0)){h=c[g>>2]|0;g=c[e>>2]|0;g=g+12|0;c[g>>2]=h;g=c[f
>>2]|0;h=c[e>>2]|0;c[h>>2]=g;i=j;return}c[g>>2]=3;h=c[g>>2]|0;g=c[e>>
;2]|0;g=g+12|0;c[g>>2]=h;g=c[f>>2]|0;h=c[e>>2]|0;c[h>>2]=g;i=j;return}function Wp(a,b){a
=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+16|0;f=l+12|0;g=l+8|0;h=l+4|0;j=l;c[e>>2]=a;c[f>>
;2]=b;c[h>>2]=0;c[j>>2]=0;c[g>>2]=c[c[e>>2]>>2];a:while(1){if(!((c[g>>
;2]|0)>>>0<(c[f>>2]|0)>>>0?(c[j>>2]|0)==0:0))break;switch(d[c[g>>
;2]>>0]|0|0){case 123:{c[h>>2]=(c[h>>2]|0)+1;break}case 125:{c[h>>2]=(c[h>>2]|
0)+-1;if(!(c[h>>2]|0)){k=6;break a}break}case 40:{c[j>>2]=Xp(g,c[f>>2]|0)|0;break}case 60:{c[j>
;>2]=Yp(g,c[f>>2]|0)|0;break}case 37:{Up(g,c[f>>2]|0);break}default:{}}c[g>>2]=(c[g>>
;2]|0)+1}if((k|0)==6)c[g>>2]=(c[g>>2]|0)+1;if(!(c[h>>2]|0)){b=c[g>>2]|0;k=c[e>>
;2]|0;c[k>>2]=b;k=c[j>>2]|0;i=l;return k|0}c[j>>2]=3;b=c[g>>2]|0;k=c[e>>2]|0;c
[k>>2]=b;k=c[j>>2]|0;i=l;return k|0}function Xp(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;n=i;i=i
+32|0;k=n+20|0;f=n+16|0;l=n+12|0;h=n+8|0;m=n+4|0;j=n;g=n+24|0;c[k>>2]=b;c[f>>2]=e;c[l>>2]=c[c[k>
;>2]>>2];c[h>>2]=0;c[m>>2]=3;a:while(1){if((c[l>>2]|0)>>>0>=(c[
f>>2]|0)>>>0){f=18;break}a[g>>0]=a[c[l>>2]>>0]|0;c[l>>2]=(c[l
x3e;>2]|0)+1;if((d[g>>0]|0|0)!=92){if((d[g>>0]|0|0)==40){c[h>>2]=(c[h>>2]|0)+1;continue
}if((d[g>>0]|0|0)!=41)continue;c[h>>2]=(c[h>>2]|0)+-1;if(!(c[h>>2]|0)){f=17;break}else continue
}if((c[l>>2]|0)==(c[f>>2]|0)){f=18;break}switch(d[c[l>>2]>>0]|0|0){case 41:case 40:case
92:case 102:case 98:case 116:case 114:case 110:{c[l>>2]=(c[l>>2]|0)+1;continue a}default:{}}c[j>>2
]=0;while(1){if((c[j>>2]|0)>>>0>=3)continue a;if((c[l>>2]|0)>>>0>=(c
[f>>2]|0)>>>0)continue a;if(48>(d[c[l>>2]>>0]|0|0))continue a;if((d[c[l>
x3e;2]>>0]|0|0)>55)continue a;c[l>>2]=(c[l>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1
}}if((f|0)==17){c[m>>2]=0;e=c[l>>2]|0;l=c[k>>2]|0;c[l>>2]=e;m=c[m>>2]|0;i=n;return
m|0}else if((f|0)==18){e=c[l>>2]|0;l=c[k>>2]|0;c[l>>2]=e;m=c[m>>2]|0;i=n;return m|0}return
0}function Yp(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=c[c[e>>2]>>2];c[h>>2]=0;while(1){b=(c[g>>2]|0)+1|0;c[g>
x3e;2]=b;if(b>>>0>=(c[f>>2]|0)>>>0)break;Tp(g,c[f>>2]|0);if((c[g>>
;2]|0)>>>0>=(c[f>>2]|0)>>>0)break;if((d[c[g>>2]>>0]|0|0)>=
48?(d[c[g>>2]>>0]|0|0)<=57:0)continue;if((d[c[g>>2]>>0]|0|0)>=65?(d[c[g>
x3e;2]>>0]|0|0)<=70:0)continue;if((d[c[g>>2]>>0]|0|0)<97)break;if((d[c[g>>2]
x3e;>0]|0|0)>102)break}if((c[g>>2]|0)>>>0<(c[f>>2]|0)>>>0?(d[c[
g>>2]>>0]|0|0)!=62:0){c[h>>2]=3;g=c[g>>2]|0;b=c[e>>2]|0;c[b>>2]=g;b=
c[h>>2]|0;i=j;return b|0}c[g>>2]=(c[g>>2]|0)+1;g=c[g>>2]|0;b=c[e>>2]|0;c[b>
;>2]=g;b=c[h>>2]|0;i=j;return b|0}function Zp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Sp(c[d>
;>2]|0);a=_p(c[d>>2]|0,c[(c[d>>2]|0)+8>>2]|0)|0;i=b;return a|0}function _p(a,b){a=a|0;b=b|0;var
e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[f>>2]=a;c[g>>2]=b;c[h>>
;2]=$p(c[f>>2]|0,c[g>>2]|0,10)|0;c[j>>2]=c[c[f>>2]>>2];if((c[j>>2]|0
)>>>0<(c[g>>2]|0)>>>0?(d[c[j>>2]>>0]|0|0)==35:0){c[c[f>>
;2]>>2]=(c[j>>2]|0)+1;c[e>>2]=$p(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;j=
c[e>>2]|0;i=k;return j|0}c[e>>2]=c[h>>2];j=c[e>>2]|0;i=k;return j|0}function $p(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;q=i;i=i+32|0;g=q+20|0;h=q+16|0;j=q+12|0;k=q+8|0;n=q+4|0;m=q;o=q+25|
0;l=q+24|0;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[n>>2]=c[c[h>>2]>>2];c[m
x3e;>2]=0;a[o>>0]=0;if(((c[k>>2]|0)<2?1:(c[n>>2]|0)==(c[j>>2]|0))|(c[k>
x3e;2]|0)>36){c[g>>2]=0;p=c[g>>2]|0;i=q;return p|0}if(!((d[c[n>>2]>>0]|0)!=45?(d[c[
n>>2]>>0]|0)!=43:0))p=5;if((p|0)==5?(a[o>>0]=(d[c[n>>2]>>0]|0)==45,c[n>
x3e;2]=(c[n>>2]|0)+1,(c[n>>2]|0)==(c[j>>2]|0)):0){c[g>>2]=0;p=c[g>>2]|0;i=q;return
p|0}while(1){if((c[n>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;if((d[c[n>
x3e;2]>>0]|0)==32)break;if((d[c[n>>2]>>0]|0)==13)break;if((d[c[n>>2]>>0]|0)==10
)break;if((d[c[n>>2]>>0]|0)==9)break;if((d[c[n>>2]>>0]|0)==12)break;if(!(d[c[n>>
;2]>>0]|0))break;if((d[c[n>>2]>>0]|0)>=128)break;a[l>>0]=a[11579+(d[c[n>>
2]>>0]&127)>>0]|0;if((a[l>>0]|0)<0)break;if((a[l>>0]|0)>=(c[k>>
2]|0))break;p=_(c[m>>2]|0,c[k>>2]|0)|0;c[m>>2]=p+(a[l>>0]|0);c[n>>2]=(c[n>
;>2]|0)+1}if(a[o>>0]|0)c[m>>2]=0-(c[m>>2]|0);c[c[h>>2]>>2]=c[n>>
;2];c[g>>2]=c[m>>2];p=c[g>>2]|0;i=q;return p|0}function aq(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;Sp(c[f>>2]|0);b=bq(c[f>>2]|0,c[(c[f>>2]|
0)+8>>2]|0,c[e>>2]|0)|0;i=d;return b|0}function bq(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;s=i;i=i+48|0;g=s+28|0;h=s+24|0;j=s+20|0;k=s+16|0;p=s+12|0;o=s+8|0;m=s+4|0;n=s;q=s+33|0;l=s+32|0;c[h>>
;2]=b;c[j>>2]=e;c[k>>2]=f;c[p>>2]=c[c[h>>2]>>2];c[m>>2]=0;c[n>
x3e;2]=1;a[q>>0]=0;if((c[p>>2]|0)==(c[j>>2]|0)){c[g>>2]=0;r=c[g>>2]|0;i=s;return
r|0}if(!((d[c[p>>2]>>0]|0)!=45?(d[c[p>>2]>>0]|0)!=43:0))r=5;if((r|0)==5?(a[q>>
;0]=(d[c[p>>2]>>0]|0)==45,c[p>>2]=(c[p>>2]|0)+1,(c[p>>2]|0)==(c[j>>2
]|0)):0){c[g>>2]=0;r=c[g>>2]|0;i=s;return r|0}if((d[c[p>>2]>>0]|0)!=46)c[o>>2]=(
_p(p,c[j>>2]|0)|0)<<16;else c[o>>2]=0;a:do if((c[p>>2]|0)>>>0<(c[j
x3e;>2]|0)>>>0?(d[c[p>>2]>>0]|0)==46:0){c[p>>2]=(c[p>>2]|0)+1;while(
1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break a;if((d[c[p>>2]>
;>0]|0)==32)break a;if((d[c[p>>2]>>0]|0)==13)break a;if((d[c[p>>2]>>0]|0)==10)break
a;if((d[c[p>>2]>>0]|0)==9)break a;if((d[c[p>>2]>>0]|0)==12)break a;if(!(d[c[p>>
;2]>>0]|0))break a;if((d[c[p>>2]>>0]|0)>=128)break a;a[l>>0]=a[11579+(d[c[p>
x3e;2]>>0]&127)>>0]|0;if((a[l>>0]|0)<0)break a;if((a[l>>0]|0)>=10)break a
;if(!((c[o>>2]|0)==0&(c[k>>2]|0)>0)){if((c[n>>2]|0)<1e7){c[m>>2]=((c[m>
;>2]|0)*10|0)+(a[l>>0]|0);c[n>>2]=(c[n>>2]|0)*10}}else{c[k>>2]=(c[k>>2]|0
)+-1;c[m>>2]=((c[m>>2]|0)*10|0)+(a[l>>0]|0)}c[p>>2]=(c[p>>2]|0)+1}}while(0);do
if(((c[p>>2]|0)+1|0)>>>0<(c[j>>2]|0)>>>0){if((d[c[p>>2]>
x3e;0]|0)!=101?(d[c[p>>2]>>0]|0)!=69:0)break;c[p>>2]=(c[p>>2]|0)+1;r=_p(p,c[j>>
;2]|0)|0;c[k>>2]=(c[k>>2]|0)+r}while(0);while(1){if((c[k>>2]|0)<=0)break;c[o>>2]=(c
[o>>2]|0)*10;c[m>>2]=(c[m>>2]|0)*10;c[k>>2]=(c[k>>2]|0)+-1}while(1){if((c[k>
;>2]|0)>=0)break;c[o>>2]=(c[o>>2]|0)/10|0;c[n>>2]=(c[n>>2]|0)*10;c[k>>
;2]=(c[k>>2]|0)+1}if(c[m>>2]|0){r=Vb(c[m>>2]|0,c[n>>2]|0)|0;c[o>>2]=(c[o>
x3e;2]|0)+r}if(a[q>>0]|0)c[o>>2]=0-(c[o>>2]|0);c[c[h>>2]>>2]=c[p>>2];
c[g>>2]=c[o>>2];r=c[g>>2]|0;i=s;return r|0}function cq(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;q=i;i=i+32|0;j=q+20|0;k=q+16|0;l=q+12|0;m=q+8|0;n=q+24|0;p=q+4|0;o=q;c[j>>2]=b;c[k>
;>2]=e;c[l>>2]=f;c[m>>2]=g;a[n>>0]=h;c[p>>2]=0;Sp(c[j>>2]|0);c[o>>
;2]=c[c[j>>2]>>2];if((c[o>>2]|0)>>>0>=(c[(c[j>>2]|0)+8>>2]|
0)>>>0){g=c[p>>2]|0;i=q;return g|0}do if(a[n>>0]|0){if((d[c[o>>2]>>0]|0)==
60){c[o>>2]=(c[o>>2]|0)+1;break}c[p>>2]=3;g=c[p>>2]|0;i=q;return g|0}while(0);g=dq(o,c[(
c[j>>2]|0)+8>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;c[c[m>>2]>>2]=g;if(a[n>
;>0]|0){if((c[o>>2]|0)>>>0<(c[(c[j>>2]|0)+8>>2]|0)>>>0?(d[
c[o>>2]>>0]|0)!=62:0){c[p>>2]=3;g=c[p>>2]|0;i=q;return g|0}c[o>>2]=(c[o>
x3e;2]|0)+1}c[c[j>>2]>>2]=c[o>>2];g=c[p>>2]|0;i=q;return g|0}function dq(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;r=i;i=i+48|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0;n=r+16|0;p=r+12|0
;q=r+8|0;o=r+4|0;m=r;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[p>>2]=0;c[q>
;>2]=0;c[o>>2]=1;c[l>>2]=c[l>>2]<<1;c[n>>2]=c[c[h>>2]>>
;2];if((c[l>>2]|0)>>>0>((c[j>>2]|0)-(c[n>>2]|0)|0)>>>0)c[l>
;>2]=(c[j>>2]|0)-(c[n>>2]|0);while(1){if((c[p>>2]|0)>>>0>=(c[l>>
;2]|0)>>>0)break;c[m>>2]=d[(c[n>>2]|0)+(c[p>>2]|0)>>0];if(!((c[m>>
;2]|0)==32|(c[m>>2]|0)==13|(c[m>>2]|0)==10|(c[m>>2]|0)==9|(c[m>>2]|0)==12|(c[m>>
;2]|0)==0)){if((c[m>>2]|0)>>>0>=128)break;c[m>>2]=a[11579+(c[m>>2]&127)
x3e;>0];if((c[m>>2]|0)>>>0>=16)break;c[o>>2]=c[o>>2]<<4|c[m>
;>2];if(c[o>>2]&256|0){e=c[o>>2]&255;g=c[q>>2]|0;c[q>>2]=g+1;a[(c[k>
x3e;2]|0)+g>>0]=e;c[o>>2]=1}}c[p>>2]=(c[p>>2]|0)+1}if((c[o>>2]|0)==1){n=c[n>
;>2]|0;o=c[p>>2]|0;o=n+o|0;p=c[h>>2]|0;c[p>>2]=o;q=c[q>>2]|0;i=r;return q|0}g=c[o
x3e;>2]<<4&255;o=c[q>>2]|0;c[q>>2]=o+1;a[(c[k>>2]|0)+o>>0]=g;n=c[n
x3e;>2]|0;o=c[p>>2]|0;o=n+o|0;p=c[h>>2]|0;c[p>>2]=o;q=c[q>>2]|0;i=r;return q|0}function
eq(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;Sp(c[h>>2]|0);a=fq(c[h>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[g>>2]|0,c[f
x3e;>2]|0)|0;i=e;return a|0}function fq(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;t=
i;i=i+32|0;q=t+24|0;k=t+20|0;l=t+16|0;m=t+12|0;s=t+8|0;r=t+4|0;j=t+31|0;o=t+30|0;n=t+28|0;p=t;c[q>>2]=e;c[k>>
;2]=f;c[l>>2]=g;c[m>>2]=h;c[s>>2]=c[c[q>>2]>>2];c[r>>2]=0;a:do if((c
[s>>2]|0)>>>0<(c[k>>2]|0)>>>0){a[j>>0]=a[c[s>>2]>
;>0]|0;a[o>>0]=0;if((d[j>>0]|0)!=91){if((d[j>>0]|0)==123)a[o>>0]=125}else a[o>
x3e;0]=93;if(a[o>>0]|0)c[s>>2]=(c[s>>2]|0)+1;while(1){if((c[s>>2]|0)>>>0
x3e;=(c[k>>2]|0)>>>0)break a;Tp(s,c[k>>2]|0);if((c[s>>2]|0)>>>0>
;=(c[k>>2]|0)>>>0)break a;j=c[s>>2]|0;if((d[c[s>>2]>>0]|0)==(d[o>>
;0]|0)){e=11;break}c[p>>2]=j;if(c[m>>2]|0?(c[r>>2]|0)>=(c[l>>2]|0):0)break a;e=(bq(
s,c[k>>2]|0,0)|0)>>16&65535;if(c[m>>2]|0)j=(c[m>>2]|0)+(c[r>>2]<<
;1)|0;else j=n;b[j>>1]=e;if((c[p>>2]|0)==(c[s>>2]|0)){e=17;break}c[r>>2]=(c[r>>
;2]|0)+1;if(!(a[o>>0]|0))break a}if((e|0)==11){c[s>>2]=j+1;break}else if((e|0)==17){c[r>>2]=-1;break
}}while(0);c[c[q>>2]>>2]=c[s>>2];i=t;return c[r>>2]|0}function gq(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>
x3e;2]=d;c[g>>2]=e;Sp(c[k>>2]|0);d=hq(c[k>>2]|0,c[(c[k>>2]|0)+8>>2]|0,c[j>
;>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=f;return d|0}function hq(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;u=i;i=i+48|0;r=u+32|0;k=u+28|0;l=u+24|0;m=u+20|0;n=u+16|0;t=u+12|0;s=u+8|0;j=u+37
|0;p=u+36|0;o=u+4|0;q=u;c[r>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[t
x3e;>2]=c[c[r>>2]>>2];c[s>>2]=0;a:do if((c[t>>2]|0)>>>0<(c[k>
;>2]|0)>>>0){a[j>>0]=a[c[t>>2]>>0]|0;a[p>>0]=0;if((d[j>>0]|
0)!=91){if((d[j>>0]|0)==123)a[p>>0]=125}else a[p>>0]=93;if(a[p>>0]|0)c[t>>2]=(
c[t>>2]|0)+1;while(1){if((c[t>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break
a;Tp(t,c[k>>2]|0);if((c[t>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break a;
j=c[t>>2]|0;if((d[c[t>>2]>>0]|0)==(d[p>>0]|0)){b=11;break}c[q>>2]=j;if(c[m>
;>2]|0?(c[s>>2]|0)>=(c[l>>2]|0):0)break a;b=bq(t,c[k>>2]|0,c[n>>2]|0)|0;if(c[m
>>2]|0)j=(c[m>>2]|0)+(c[s>>2]<<2)|0;else j=o;c[j>>2]=b;if((c[q>>2]|0
)==(c[t>>2]|0)){b=17;break}c[s>>2]=(c[s>>2]|0)+1;if(!(a[p>>0]|0))break a}if((b|0)==11){c
[t>>2]=j+1;break}else if((b|0)==17){c[s>>2]=-1;break}}while(0);c[c[r>>2]>>2]=c[t>
x3e;2];i=u;return c[s>>2]|0}function iq(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;e=k+16|0;f=k+12|0;g=
k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;c[(c[f>>2]|0)+8>>2]=0;c[c[f>>2]>>
;2]=0;c[(c[f>>2]|0)+4>>2]=0;Sp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];c[j
x3e;>2]=c[(c[e>>2]|0)+8>>2];if((c[g>>2]|0)>>>0>=(c[j>>2]|0)>
;>>0){i=k;return}a:do switch(d[c[g>>2]>>0]|0|0){case 40:{c[(c[f>>2]|0)+8>>2]=2
;c[c[f>>2]>>2]=c[g>>2];if(!(Xp(g,c[j>>2]|0)|0))c[(c[f>>2]|0)+4>>2]=c
[g>>2];break}case 123:{c[(c[f>>2]|0)+8>>2]=3;c[c[f>>2]>>2]=c[g>>2];if
(!(Wp(g,c[j>>2]|0)|0))c[(c[f>>2]|0)+4>>2]=c[g>>2];break}case 91:{c[(c[f>>2]|0)+
8>>2]=3;c[h>>2]=1;b=c[g>>2]|0;c[g>>2]=b+1;c[c[f>>2]>>2]=b;c[c[e>
;>2]>>2]=c[g>>2];Sp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];while(1){if
((c[g>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break a;if(!((c[(c[e>>2]|0)+12
>>2]|0)!=0^1))break a;if((d[c[g>>2]>>0]|0|0)!=91){if((d[c[g>>2]>>0]|0|0)==93?(
c[h>>2]=(c[h>>2]|0)+-1,(c[h>>2]|0)<=0):0)break}else c[h>>2]=(c[h>>2]|0)+1
;c[c[e>>2]>>2]=c[g>>2];Vp(c[e>>2]|0);Sp(c[e>>2]|0);c[g>>2]=c[c[e>
;>2]>>2]}b=(c[g>>2]|0)+1|0;c[g>>2]=b;c[(c[f>>2]|0)+4>>2]=b;break}default:{
c[c[f>>2]>>2]=c[g>>2];c[(c[f>>2]|0)+8>>2]=(d[c[g>>2]>>0]|0
|0)==47?4:1;Vp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];if(!(c[(c[e>>2]|0)+12>>
;2]|0))c[(c[f>>2]|0)+4>>2]=c[g>>2]}}while(0);if(!(c[(c[f>>2]|0)+4>>2]|0)){c[c[
f>>2]>>2]=0;c[(c[f>>2]|0)+8>>2]=0}c[c[e>>2]>>2]=c[g>>2];i=
k;return}function jq(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;q=i;i=i+64|0;f=q+52|0;g=q+
48|0;h=q+44|0;j=q+40|0;m=q+28|0;n=q+24|0;o=q+20|0;k=q+16|0;l=q+12|0;p=q;c[f>>2]=a;c[g>>2]=b;c[h>>2
]=d;c[j>>2]=e;c[c[j>>2]>>2]=-1;iq(c[f>>2]|0,m);if((c[m+8>>2]|0)!=3){i=q;return
}c[n>>2]=c[c[f>>2]>>2];c[o>>2]=c[(c[f>>2]|0)+8>>2];c[k>>2]=
c[g>>2];c[l>>2]=(c[k>>2]|0)+((c[h>>2]|0)*12|0);c[c[f>>2]>>2]=(c[m>
;>2]|0)+1;c[(c[f>>2]|0)+8>>2]=(c[m+4>>2]|0)+-1;while(1){if((c[c[f>>2]>>2]|
0)>>>0>=(c[(c[f>>2]|0)+8>>2]|0)>>>0)break;iq(c[f>>2]|0,p);if(!(
c[p+8>>2]|0))break;if(c[g>>2]|0?(c[k>>2]|0)>>>0<(c[l>>2]|0)>>
;>0:0){b=c[k>>2]|0;c[b>>2]=c[p>>2];c[b+4>>2]=c[p+4>>2];c[b+8>>2
]=c[p+8>>2]}c[k>>2]=(c[k>>2]|0)+12}c[c[j>>2]>>2]=((c[k>>2]|0)-(c[g
x3e;>2]|0)|0)/12|0;c[c[f>>2]>>2]=c[n>>2];c[(c[f>>2]|0)+8>>2]=c[o>>
;2];i=q;return}function kq(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;H=i;i=i+128|0;k=H+112|0;l=H+108|0;m=H+104|0;n=H+100|0;o=H+96|0;D=H+84|0;r=H+80|0;v=H+76|
0;q=H+72|0;t=H+68|0;s=H+64|0;E=H+52|0;x=H+48|0;y=H+44|0;z=H+40|0;F=H+36|0;B=H+32|0;w=H+28|0;u=H+24|0;C=H+8|0;p=H+4|0;A=H;c[k>
;>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;iq(c[k>>2]|0,D);a:do if(c[
D+8>>2]|0){c[q>>2]=1;c[t>>2]=0;c[r>>2]=c[D>>2];c[v>>2]=c[D+4>
x3e;2];if((c[(c[l>>2]|0)+8>>2]|0)==7){c[x>>2]=c[c[k>>2]>>2];c[y>>2]=
c[(c[k>>2]|0)+8>>2];c[c[k>>2]>>2]=(c[D>>2]|0)+1;c[(c[k>>2]|0)+8>
;>2]=(c[D+4>>2]|0)+-1;iq(c[k>>2]|0,E);c[c[k>>2]>>2]=c[x>>2];c[(c[k>
x3e;2]|0)+8>>2]=c[y>>2];if((c[E+8>>2]|0)==3)G=5}else if((c[D+8>>2]|0)==3)G=5;if((G|0)==5
){if(!(c[n>>2]|0))break;c[q>>2]=c[n>>2];c[t>>2]=1;c[r>>2]=(c[r>>2]|0
)+1;c[v>>2]=(c[v>>2]|0)+-1}b:while(1){if((c[q>>2]|0)>>>0<=0){G=32;break}c[z>
;>2]=(c[(c[m>>2]|0)+(c[t>>2]<<2)>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0
);Tp(r,c[v>>2]|0);switch(c[(c[l>>2]|0)+8>>2]|0){case 1:{c[F>>2]=lq(r,c[v>>2]|0
)|0;G=13;break}case 3:{c[F>>2]=bq(r,c[v>>2]|0,0)|0;G=13;break}case 4:{c[F>>2]=bq(r,c[v>>
2]|0,3)|0;G=13;break}case 2:{c[F>>2]=_p(r,c[v>>2]|0)|0;G=13;break}case 6:case 5:{c[w>>2]=c[(c[k>
;>2]|0)+16>>2];c[u>>2]=(c[v>>2]|0)-(c[r>>2]|0);if((c[r>>2]|0)>>
x3e;0<(c[v>>2]|0)>>>0){if((c[D+8>>2]|0)==4){c[u>>2]=(c[u>>2]|0)+-1;c
[r>>2]=(c[r>>2]|0)+1}else{if((c[D+8>>2]|0)!=2){G=23;break b}c[r>>2]=(c[r>>2]|0
)+1;c[u>>2]=(c[u>>2]|0)-2}if(c[c[z>>2]>>2]|0){Fb(c[w>>2]|0,c[c[z>>2]
x3e;>2]|0);c[c[z>>2]>>2]=0;c[c[z>>2]>>2]=0}c[B>>2]=bc(c[w>>2]|0
,(c[u>>2]|0)+1|0,s)|0;if(c[s>>2]|0){G=33;break b}Ss(c[B>>2]|0,c[r>>2]|0,c[u>>2
]|0)|0;a[(c[B>>2]|0)+(c[u>>2]|0)>>0]=0;c[c[z>>2]>>2]=c[B>>2]}break}case
7:{c[p>>2]=c[z>>2];c[A>>2]=hq(r,c[v>>2]|0,4,C,0)|0;if((c[A>>2]|0)<0){G=29
;break b}E=Tb(c[C>>2]|0)|0;c[c[p>>2]>>2]=E;E=Tb(c[C+4>>2]|0)|0;c[(c[p>>2]|0)+4
>>2]=E;E=Tb(c[C+8>>2]|0)|0;c[(c[p>>2]|0)+8>>2]=E;E=Tb(c[C+12>>2]|0)|0;c[(c[p
x3e;>2]|0)+12>>2]=E;break}default:break a}c:do if((G|0)==13){G=0;switch(d[(c[l>>2]|0)+20>>0]|
0|0){case 1:{a[c[z>>2]>>0]=c[F>>2];break c}case 2:{b[c[z>>2]>>1]=c[F>>
;2];break c}case 4:{c[c[z>>2]>>2]=c[F>>2];break c}default:{c[c[z>>2]>>2]=c[F
x3e;>2];break c}}}while(0);c[q>>2]=(c[q>>2]|0)+-1;c[t>>2]=(c[t>>2]|0)+1}if((G|0)==23
){c[s>>2]=3;G=c[s>>2]|0;i=H;return G|0}else if((G|0)==29){c[s>>2]=3;G=c[s>>2]|0;i=H;return
G|0}else if((G|0)==32){c[o>>2]=c[o>>2];c[s>>2]=0;G=c[s>>2]|0;i=H;return G|0}else if((G|
0)==33){G=c[s>>2]|0;i=H;return G|0}}while(0);c[s>>2]=3;G=c[s>>2]|0;i=H;return G|0}function lq(b,e){
b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;f=l+8|0;g=l+4|0;h=l;j=l+12|0;c[f>>2]=b;c[g>>2]=e;c[h>
;>2]=c[c[f>>2]>>2];a[j>>0]=0;if((((((c[h>>2]|0)+3|0)>>>0<(c[g
x3e;>2]|0)>>>0?(d[c[h>>2]>>0]|0|0)==116:0)?(d[(c[h>>2]|0)+1>>0]|0|0)==
114:0)?(d[(c[h>>2]|0)+2>>0]|0|0)==117:0)?(d[(c[h>>2]|0)+3>>0]|0|0)==101:0){a[j>>
;0]=1;c[h>>2]=(c[h>>2]|0)+5}else k=7;if(((((((k|0)==7?((c[h>>2]|0)+4|0)>>>0<(c
[g>>2]|0)>>>0:0)?(d[c[h>>2]>>0]|0|0)==102:0)?(d[(c[h>>2]|0)+1>>
0]|0|0)==97:0)?(d[(c[h>>2]|0)+2>>0]|0|0)==108:0)?(d[(c[h>>2]|0)+3>>0]|0|0)==115:0)?(d[(c
[h>>2]|0)+4>>0]|0|0)==101:0){a[j>>0]=0;c[h>>2]=(c[h>>2]|0)+6}c[c[f>>
2]>>2]=c[h>>2];i=l;return d[j>>0]|0|0}function mq(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;v=i;i=i+464|0;j=v+456|0;k=v+452|0;l=v+448|0;m=v+444|0;n=v+440|0;o=v+56|0;u=v+52
|0;r=v+48|0;p=v+44|0;s=v+40|0;t=v+36|0;q=v;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n
x3e;>2]=h;c[p>>2]=0;e=q;g=c[k>>2]|0;f=e+36|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while
((e|0)<(f|0));c[q+8>>2]=2;if(!((c[(c[k>>2]|0)+8>>2]|0)!=9?(c[(c[k>>2]|0)+8>>
;2]|0)!=7:0))c[q+8>>2]=3;jq(c[j>>2]|0,o,32,r);if((c[r>>2]|0)<0){c[p>>2]=162;u=c[p
x3e;>2]|0;i=v;return u|0}if((c[r>>2]|0)>>>0>(c[(c[k>>2]|0)+24>>2]|0)>
;>>0)c[r>>2]=c[(c[k>>2]|0)+24>>2];c[s>>2]=c[c[j>>2]>>2];c[
t>>2]=c[(c[j>>2]|0)+8>>2];if((c[(c[k>>2]|0)+8>>2]|0)!=7?c[(c[k>>2]|0
)+28>>2]|0:0)a[(c[c[l>>2]>>2]|0)+(c[(c[k>>2]|0)+28>>2]|0)>>0]=c[r>
;>2];c[u>>2]=o;while(1){if((c[r>>2]|0)<=0)break;c[c[j>>2]>>2]=c[c[u>>
;2]>>2];c[(c[j>>2]|0)+8>>2]=c[(c[u>>2]|0)+4>>2];kq(c[j>>2]|0,q,c[l
x3e;>2]|0,c[m>>2]|0,0)|0;o=q+16|0;c[o>>2]=(c[o>>2]|0)+(d[q+20>>0]|0);c[r>>
;2]=(c[r>>2]|0)+-1;c[u>>2]=(c[u>>2]|0)+12}c[n>>2]=c[n>>2];c[c[j>>2]
x3e;>2]=c[s>>2];c[(c[j>>2]|0)+8>>2]=c[t>>2];u=c[p>>2]|0;i=v;return u|0}function
nq(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;h=n+16|0;o=n+12|0;j=n+8|0;k=n+4|0;l=n+
20|0;m=n;c[h>>2]=b;c[o>>2]=d;c[j>>2]=e;c[k>>2]=f;a[l>>0]=g;c[(c[h>>2
]|0)+64>>2]=0;a[(c[h>>2]|0)+68>>0]=1;c[(c[h>>2]|0)+4>>2]=c[o>>2];c[(
c[h>>2]|0)+8>>2]=c[k>>2];c[c[h>>2]>>2]=c[(c[o>>2]|0)+100>>
2];if(c[k>>2]|0?(c[m>>2]=c[c[(c[k>>2]|0)+156>>2]>>2],c[(c[h>>2]|0)+12
>>2]=c[m>>2],c[(c[h>>2]|0)+16>>2]=(c[m>>2]|0)+20,c[(c[h>>2]|0)+20>
;>2]=(c[m>>2]|0)+56,dc(c[m>>2]|0),c[(c[h>>2]|0)+76>>2]=c[(c[j>>2]|0)+40
x3e;>2],c[(c[h>>2]|0)+72>>2]=0,a[l>>0]|0):0)c[(c[h>>2]|0)+72>>2]=c[(c[(c[
k>>2]|0)+156>>2]|0)+36>>2];c[(c[h>>2]|0)+24>>2]=0;c[(c[h>>2]|0)+28
x3e;>2]=0;c[(c[h>>2]|0)+32>>2]=0;c[(c[h>>2]|0)+32+4>>2]=0;c[(c[h>>2]|0)+40
>>2]=0;c[(c[h>>2]|0)+40+4>>2]=0;o=(c[h>>2]|0)+80|0;c[o>>2]=c[1111];c[o+4>
x3e;2]=c[1112];c[o+8>>2]=c[1113];c[o+12>>2]=c[1114];c[o+16>>2]=c[1115];c[o+20>>2]=c[1116
];c[o+24>>2]=c[1117];c[o+28>>2]=c[1118];i=n;return}function oq(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0
;d=e;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+8>>2];if(!(c[d>>2]|0)){i=e;return}d=(c[d
x3e;>2]|0)+108|0;a=c[(c[b>>2]|0)+16>>2]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4
>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>
;>2];i=e;return}function pq(a,d){a=a|0;d=d|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]=
d;if(!(c[f>>2]|0)){d=0;i=g;return d|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20+2>>1]|0)+(b[(c[(
c[e>>2]|0)+12>>2]|0)+56+2>>1]|0)+(c[f>>2]|0)|0)>>>0<=(c[(c[(c[e>
;>2]|0)+12>>2]|0)+4>>2]|0)>>>0){d=0;i=g;return d|0}d=kc(c[(c[e>>2]|0)+12>
x3e;2]|0,c[f>>2]|0,0)|0;i=g;return d|0}function qq(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;p=i;i=i+32|0;q=p+20|0;j=p+16|0;k=p+12|0;l=p+24|0;n=p+8|0;o=p+4|0;m=p;c[q>>2]=e;c[j>>2]=f;c[k>>2]=
g;a[l>>0]=h;c[n>>2]=c[(c[q>>2]|0)+20>>2];if(!(a[(c[q>>2]|0)+68>>0]|0
)){q=c[n>>2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}c[o>
;>2]=(c[(c[n>>2]|0)+4>>2]|0)+(b[(c[n>>2]|0)+2>>1]<<3);c[m>>2]=(
c[(c[n>>2]|0)+8>>2]|0)+(b[(c[n>>2]|0)+2>>1]|0);q=(Tb(c[j>>2]|0)|0)>>
16;c[c[o>>2]>>2]=q;q=(Tb(c[k>>2]|0)|0)>>16;c[(c[o>>2]|0)+4>>2]=q;a[c
[m>>2]>>0]=d[l>>0]|0?1:2;q=c[n>>2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16
x3e;>16;b[q>>1]=g;i=p;return}function rq(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;e=j+12|0;f
=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=pq(c[e>>2]|0,1)|0;if(
c[h>>2]|0){d=c[h>>2]|0;i=j;return d|0}qq(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0,1);d=c[
h>>2]|0;i=j;return d|0}function sq(d){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[e>
;>2]=d;c[h>>2]=c[(c[e>>2]|0)+20>>2];if(!(c[h>>2]|0)){c[f>>2]=3;h=c[f>
;>2]|0;i=j;return h|0}if(!(a[(c[e>>2]|0)+68>>0]|0)){h=c[h>>2]|0;b[h>>1]=(b[h>
x3e;1]|0)+1<<16>>16;c[f>>2]=0;h=c[f>>2]|0;i=j;return h|0}if(((b[(c[(c[e>>2]|0)+
12>>2]|0)+20>>1]|0)+(b[(c[(c[e>>2]|0)+12>>2]|0)+56>>1]|0)+1|0)>>>
;0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+8>>2]|0)>>>0)e=0;else e=kc(c[(c[e>>2
]|0)+12>>2]|0,0,1)|0;c[g>>2]=e;if(!(c[g>>2]|0)){if((b[c[h>>2]>>1]|0)>0)b[(
c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>>1]|0)-1<<1)>>1]=(b[(c[h>
x3e;2]|0)+2>>1]|0)-1;h=c[h>>2]|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}c[f
x3e;>2]=c[g>>2];h=c[f>>2]|0;i=j;return h|0}function tq(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=3;if((c
[(c[e>>2]|0)+64>>2]|0)==3){c[h>>2]=0;d=c[h>>2]|0;i=j;return d|0}c[(c[e>>2]|0)+
64>>2]=3;c[h>>2]=sq(c[e>>2]|0)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=j;return d|0}c[h
x3e;>2]=rq(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;d=c[h>>2]|0;i=j;return d|0}function uq(
a){a=a|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;l=k+20|0;j=k+16|0;h=k+12|0;f=k+8|0;g=k+4|0;e=k;c[l>>2]=a;c[j>
;>2]=c[(c[l>>2]|0)+20>>2];if(!(c[j>>2]|0)){i=k;return}if((b[c[j>>2]>>1]|0
)<=1)a=0;else a=(b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>1]|0)-2<<1)>
;>1]|0)+1|0;c[h>>2]=a;if((((b[(c[j>>2]|0)+2>>1]|0)>1?(c[f>>2]=(c[(c[j>>
;2]|0)+4>>2]|0)+(c[h>>2]<<3),c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(b[(c[j
>>2]|0)+2>>1]<<3)+-8,c[e>>2]=(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>
x3e;2]|0)+2>>1]|0)+-1,(c[c[f>>2]>>2]|0)==(c[c[g>>2]>>2]|0)):0)?(c[(c[f>
x3e;2]|0)+4>>2]|0)==(c[(c[g>>2]|0)+4>>2]|0):0)?(d[c[e>>2]>>0]|0)==1:0){l=(c[j
x3e;>2]|0)+2|0;b[l>>1]=(b[l>>1]|0)+-1<<16>>16}if((b[c[j>>2]>>1]|
0)<=0){i=k;return}a=c[j>>2]|0;if((c[h>>2]|0)==((b[(c[j>>2]|0)+2>>1]|0)-1|0)){b[a>
;>1]=(b[a>>1]|0)+-1<<16>>16;l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>>1]|
0)+-1<<16>>16;i=k;return}else{b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>
;1]|0)-1<<1)>>1]=(b[a+2>>1]|0)-1;i=k;return}}function vq(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;x=i;i=i+64|0;m=x+44|0;n=x+40|0;o=x+36
|0;p=x+32|0;q=x+28|0;r=x+24|0;s=x+20|0;t=x+48|0;u=x+16|0;v=x+12|0;w=x+8|0;z=x+4|0;y=x;c[n>>2]=b;c[o>>2]=d;c[
p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=h;a[t>>0]=j;c[u>>2]=k;c[v>
x3e;2]=l;Ns(c[n>>2]|0,0,1500)|0;c[w>>2]=0;c[z>>2]=c[(c[o>>2]|0)+96>>2];c[y>
;>2]=Vd(c[z>>2]|0,71003)|0;c[w>>2]=c[y>>2];if(c[w>>2]|0){c[(c[n>>2]|0)+1348
>>2]=c[w>>2];nq(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,a[t>>
;0]|0);c[(c[n>>2]|0)+1352>>2]=c[(c[o>>2]|0)+16>>2];c[(c[n>>2]|0)+1356>>
;2]=c[r>>2];c[(c[n>>2]|0)+1468>>2]=c[u>>2];c[(c[n>>2]|0)+1464>>2]=c[
s>>2];c[(c[n>>2]|0)+1472>>2]=c[v>>2];z=(c[n>>2]|0)+1476|0;c[z>>2]=c[
1119];c[z+4>>2]=c[1120];c[z+8>>2]=c[1121];c[m>>2]=0;z=c[m>>2]|0;i=x;return z|0}else{c[m
x3e;>2]=7;z=c[m>>2]|0;i=x;return z|0}return 0}function wq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=
a;oq(c[d>>2]|0);i=b;return}function xq(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;Y=i;i=
i+176|0;k=Y+156|0;l=Y+152|0;h=Y+148|0;j=Y+144|0;v=Y+140|0;W=Y+136|0;C=Y+132|0;F=Y+128|0;s=Y+124|0;U=Y+120|0;V=Y+116|0;L=Y+112|0;
M=Y+108|0;D=Y+104|0;R=Y+100|0;E=Y+160|0;N=Y+96|0;w=Y+92|0;Q=Y+88|0;K=Y+84|0;S=Y+80|0;O=Y+76|0;n=Y+72|0;x=Y+68|0;o=Y+64|0;J=Y+60|
0;H=Y+56|0;G=Y+52|0;t=Y+48|0;T=Y+44|0;P=Y+40|0;y=Y+36|0;p=Y+32|0;z=Y+28|0;q=Y+24|0;A=Y+20|0;r=Y+16|0;m=Y+12|0;I=Y+8|0;B=Y+4|0;u=
Y;c[l>>2]=e;c[h>>2]=f;c[j>>2]=g;c[s>>2]=c[l>>2];c[D>>2]=0;c[R>
x3e;2]=0;c[N>>2]=N^l^h;e=(c[N>>2]^c[N>>2]>>10^c[N>>2]>>20)&65535
;c[N>>2]=e;c[N>>2]=(c[N>>2]|0)==0?29572:e;c[(c[l>>2]|0)+1136>>2]=(c[l>>
;2]|0)+112;c[(c[l>>2]|0)+1344>>2]=(c[l>>2]|0)+1140;c[W>>2]=(c[l>>2]|0)+1140;c[(
c[s>>2]|0)+64>>2]=0;c[w>>2]=c[(c[s>>2]|0)+72>>2];if((c[(c[l>>2]|0)+1492
>>2]|0)>>>0>0)Ns(c[(c[l>>2]|0)+1488>>2]|0,0,c[(c[l>>2]|0)+1492>
x3e;2]<<2|0)|0;c[(c[W>>2]|0)+4>>2]=c[h>>2];e=(c[h>>2]|0)+(c[j>>2]|0)|
0;c[(c[W>>2]|0)+8>>2]=e;c[F>>2]=e;e=c[(c[W>>2]|0)+4>>2]|0;c[c[W>>2]
x3e;>2]=e;c[C>>2]=e;c[v>>2]=0;e=c[(c[s>>2]|0)+24>>2]|0;c[L>>2]=e;c[U>
;>2]=e;e=c[(c[s>>2]|0)+28>>2]|0;c[M>>2]=e;c[V>>2]=e;if(c[w>>2]|0)Va[c[(c[
w>>2]|0)+4>>2]&63](c[c[w>>2]>>2]|0);a[E>>0]=0;a:while(1){if((c[C>>
;2]|0)>>>0>=(c[F>>2]|0)>>>0){X=186;break}c[Q>>2]=c[(c[l>>2]|0)+
1136>>2];c[K>>2]=0;c[S>>2]=0;e=c[C>>2]|0;c[C>>2]=e+1;b:do switch(d[e>>
;0]|0){case 1:{c[K>>2]=16;break}case 3:{c[K>>2]=18;break}case 4:{c[K>>2]=14;break}case 5:{c[K>
;>2]=9;break}case 6:{c[K>>2]=6;break}case 7:{c[K>>2]=13;break}case 8:{c[K>>2]=11;break}case 9
:{c[K>>2]=5;break}case 10:{c[K>>2]=22;break}case 11:{c[K>>2]=24;break}case 13:{c[K>>2]=2
;break}case 14:{c[K>>2]=1;break}case 15:{c[K>>2]=26;break}case 21:{c[K>>2]=10;break}case 22:{c[K
x3e;>2]=7;break}case 30:{c[K>>2]=12;break}case 31:{c[K>>2]=8;break}case 12:{if((c[C>>2]|0)>
;>>0>(c[F>>2]|0)>>>0)break a;e=c[C>>2]|0;c[C>>2]=e+1;switch(d[e>
;>0]|0){case 0:{c[K>>2]=15;break b}case 1:{c[K>>2]=19;break b}case 2:{c[K>>2]=17;break b}case
6:{c[K>>2]=3;break b}case 7:{c[K>>2]=4;break b}case 12:{c[K>>2]=20;break b}case 16:{c[K>>
;2]=21;break b}case 17:{c[K>>2]=23;break b}case 33:{c[K>>2]=25;break b}default:break a}}case 255:{if(((c[C
x3e;>2]|0)+4|0)>>>0>(c[F>>2]|0)>>>0)break a;c[S>>2]=d[c[C>>
;2]>>0]<<24|d[(c[C>>2]|0)+1>>0]<<16|d[(c[C>>2]|0)+2>>0]<
;<8|d[(c[C>>2]|0)+3>>0];c[C>>2]=(c[C>>2]|0)+4;h=(a[E>>0]|0)!=0;if((c[S>
;>2]|0)>32e3|(c[S>>2]|0)<-32e3){if(h)break b;a[E>>0]=1;break b}else{if(h)break b;c[S>>
;2]=c[S>>2]<<16;break b}}default:{if((d[(c[C>>2]|0)+-1>>0]|0)<32)break a;h=c[C>
;>2]|0;do if((d[(c[C>>2]|0)+-1>>0]|0)>=247){e=h+1|0;c[C>>2]=e;if(e>>>0>
;(c[F>>2]|0)>>>0)break a;h=d[(c[C>>2]|0)+-2>>0]|0;if((d[(c[C>>2]|0)+-2>
;>0]|0)<251){c[S>>2]=(h-247<<8)+(d[(c[C>>2]|0)+-1>>0]|0)+108;break}else{c[S>
;>2]=0-((h-251<<8)+(d[(c[C>>2]|0)+-1>>0]|0)+108);break}}else c[S>>2]=(d[h+-1>
x3e;0]|0)-139;while(0);if(!(a[E>>0]|0))c[S>>2]=c[S>>2]<<16}}while(0);c:do if((c[R>
x3e;2]|0)>0){switch(c[K>>2]|0){case 23:case 0:case 24:case 22:break c;default:{}}c[R>>2]=0}while(0);if(!((
d[E>>0]|0)==0|(c[K>>2]|0)==0|(c[K>>2]|0)==20))a[E>>0]=0;if(!(c[K>>2]|0)){if((((
c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)>=256)break;g=c[S>>2]|0;e=c[Q>>2]|0;c[Q>
x3e;2]=e+4;c[e>>2]=g;c[(c[l>>2]|0)+1136>>2]=c[Q>>2];continue}if((c[K>>2]|0)==21
){if((((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)<2){X=188;break}c[Q>>2]=(c[Q>>2]|0)+-
8;c[O>>2]=c[(c[Q>>2]|0)+4>>2]>>16;c[n>>2]=c[c[Q>>2]>>2]>
;>16;if((c[n>>2]|0)>(((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)){X=188;break}c[Q>>
;2]=(c[Q>>2]|0)+(0-(c[n>>2]|0)<<2);c[D>>2]=0;c[R>>2]=0;do switch(c[O>>
;2]|0){case 1:{if(c[n>>2]|0)break a;c[(c[l>>2]|0)+1400>>2]=1;c[(c[l>>2]|0)+1404>>
;2]=0;e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}e=pq(c[s>
;>2]|0,6)|0;c[v>>2]=e;if(e|0){X=186;break a}break}case 2:{if(c[n>>2]|0)break a;g=(c[l>>2]|0)+
1404|0;e=c[g>>2]|0;c[g>>2]=e+1;c[x>>2]=e;if((c[x>>2]|0)>0&(c[x>>2]|0
)<7)qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,((c[x>>2]|0)==3?1:(c[x>>2]|0)==6)&
;1);break}case 0:{if((c[n>>2]|0)!=3)break a;if(!(c[(c[l>>2]|0)+1400>>2]|0))break a;if((c[(c[l>
;>2]|0)+1404>>2]|0)!=7)break a;c[c[Q>>2]>>2]=c[U>>2];c[(c[Q>>2]|0)+4>
;>2]=c[V>>2];c[D>>2]=2;break}case 3:{if((c[n>>2]|0)!=1)break a;c[D>>2]=1;if(c[w>
;>2]|0)Ra[c[(c[w>>2]|0)+20>>2]&7](c[c[w>>2]>>2]|0,b[(c[(c[s>>2]|0)+20
>>2]|0)+2>>1]|0);break}case 13:case 12:{c[Q>>2]=(c[l>>2]|0)+112;break}case 18:case 17:case
16:case 15:case 14:{c[o>>2]=c[(c[l>>2]|0)+1464>>2];if(!(c[o>>2]|0))break a;c[J>>
;2]=(c[O>>2]|0)-13+((c[O>>2]|0)==18&1);if((c[n>>2]|0)!=(_(c[J>>2]|0,c[c[o>>
;2]>>2]|0)|0))break a;c[t>>2]=(c[Q>>2]|0)+(c[J>>2]<<2);c[T>>2]=c[Q
x3e;>2];c[H>>2]=0;while(1){if((c[H>>2]|0)>>>0>=(c[J>>2]|0)>>>
;0)break;c[P>>2]=c[c[T>>2]>>2];c[G>>2]=1;while(1){if((c[G>>2]|0)>>
x3e;0>=(c[c[o>>2]>>2]|0)>>>0)break;e=c[t>>2]|0;c[t>>2]=e+4;e=Mb(c[e
x3e;>2]|0,c[(c[(c[o>>2]|0)+136>>2]|0)+(c[G>>2]<<2)>>2]|0)|0;c[P>>
;2]=(c[P>>2]|0)+e;c[G>>2]=(c[G>>2]|0)+1}g=c[P>>2]|0;e=c[T>>2]|0;c[T>>
;2]=e+4;c[e>>2]=g;c[H>>2]=(c[H>>2]|0)+1}c[D>>2]=c[J>>2];break}case 19:{c[p>
;>2]=c[(c[l>>2]|0)+1464>>2];if((c[n>>2]|0)!=1|(c[p>>2]|0)==0)break a;c[y>>
;2]=c[c[Q>>2]>>2]>>16;if((c[y>>2]|0)<0)break a;if(((c[y>>2]|0)+(c[c[p>
;>2]>>2]|0)|0)>>>0>(c[(c[l>>2]|0)+1492>>2]|0)>>>0)break a;
Ss((c[(c[l>>2]|0)+1488>>2]|0)+(c[y>>2]<<2)|0,c[(c[p>>2]|0)+136>>2]|0
,c[c[p>>2]>>2]<<2|0)|0;break}case 20:{if((c[n>>2]|0)!=2)break a;e=c[Q>>2]|0;c[
e>>2]=(c[e>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);c[D>>2]=1;break}case 21:{if((c[n>
;>2]|0)!=2)break a;e=c[Q>>2]|0;c[e>>2]=(c[e>>2]|0)-(c[(c[Q>>2]|0)+4>>2]|0
);c[D>>2]=1;break}case 22:{if((c[n>>2]|0)!=2)break a;e=Mb(c[c[Q>>2]>>2]|0,c[(c[Q>
x3e;2]|0)+4>>2]|0)|0;c[c[Q>>2]>>2]=e;c[D>>2]=1;break}case 23:{if((c[n>>2]|0)!=
2)break a;if(!(c[(c[Q>>2]|0)+4>>2]|0))break a;e=Vb(c[c[Q>>2]>>2]|0,c[(c[Q>>2]|
0)+4>>2]|0)|0;c[c[Q>>2]>>2]=e;c[D>>2]=1;break}case 24:{c[q>>2]=c[(c[l>>
;2]|0)+1464>>2];if((c[n>>2]|0)!=2|(c[q>>2]|0)==0)break a;c[z>>2]=c[(c[Q>>2]|0)+
4>>2]>>16;if((c[z>>2]|0)<0)break a;if((c[z>>2]|0)>>>0>=(c[(c[l
x3e;>2]|0)+1492>>2]|0)>>>0)break a;c[(c[(c[l>>2]|0)+1488>>2]|0)+(c[z>>
;2]<<2)>>2]=c[c[Q>>2]>>2];break}case 25:{c[r>>2]=c[(c[l>>2]|0)+1464
x3e;>2];if((c[n>>2]|0)!=1|(c[r>>2]|0)==0)break a;c[A>>2]=c[c[Q>>2]>>2]>
;>16;if((c[A>>2]|0)<0)break a;if((c[A>>2]|0)>>>0>=(c[(c[l>>2]|0)+1492
>>2]|0)>>>0)break a;c[c[Q>>2]>>2]=c[(c[(c[l>>2]|0)+1488>>2]|0)+(
c[A>>2]<<2)>>2];c[D>>2]=1;break}case 27:{if((c[n>>2]|0)!=4)break a;if((c[(c[Q
x3e;>2]|0)+8>>2]|0)>(c[(c[Q>>2]|0)+12>>2]|0))c[c[Q>>2]>>2]=c[(c[Q>
;>2]|0)+4>>2];c[D>>2]=1;break}case 28:{if(c[n>>2]|0)break a;c[m>>2]=c[N>>
2];if((c[m>>2]|0)>=32768)c[m>>2]=(c[m>>2]|0)+1;c[c[Q>>2]>>2]=c[m>>
;2];c[N>>2]=Mb(c[N>>2]|0,65536-(c[N>>2]|0)|0)|0;if(!(c[N>>2]|0))c[N>>2]=(c[N
x3e;>2]|0)+10355;c[D>>2]=1;break}default:c[R>>2]=c[n>>2]}while(0);c[Q>>2]=(c[Q>
;>2]|0)+(c[D>>2]<<2);c[(c[l>>2]|0)+1136>>2]=c[Q>>2];continue}c[I>>
;2]=c[4488+(c[K>>2]<<2)>>2];if((((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)<(
c[I>>2]|0)){X=188;break}c[Q>>2]=(c[Q>>2]|0)+(0-(c[I>>2]|0)<<2);d:do switch(c[K
>>2]|0){case 1:{X=121;break a}case 3:{X=127;break a}case 2:{c[(c[s>>2]|0)+64>>2]=1;e=(c[s>>
;2]|0)+32|0;c[e>>2]=(c[e>>2]|0)+(c[c[Q>>2]>>2]|0);c[(c[s>>2]|0)+40>>
2]=c[(c[Q>>2]|0)+4>>2];c[(c[s>>2]|0)+40+4>>2]=0;e=(c[(c[s>>2]|0)+24>>
;2]|0)+(c[c[Q>>2]>>2]|0)|0;c[U>>2]=e;c[L>>2]=e;e=c[(c[s>>2]|0)+28>>2
]|0;c[V>>2]=e;c[M>>2]=e;c[M>>2]=c[M>>2];if(a[(c[s>>2]|0)+70>>0]|0){X
=126;break a}break}case 4:{c[(c[s>>2]|0)+64>>2]=1;e=(c[s>>2]|0)+32|0;c[e>>2]=(c[e>
x3e;2]|0)+(c[c[Q>>2]>>2]|0);e=(c[s>>2]|0)+32+4|0;c[e>>2]=(c[e>>2]|0)+(c[(c[Q
x3e;>2]|0)+4>>2]|0);c[(c[s>>2]|0)+40>>2]=c[(c[Q>>2]|0)+8>>2];c[(c[s>
x3e;2]|0)+40+4>>2]=c[(c[Q>>2]|0)+12>>2];c[U>>2]=(c[(c[s>>2]|0)+24>>2
]|0)+(c[c[Q>>2]>>2]|0);c[V>>2]=(c[(c[s>>2]|0)+28>>2]|0)+(c[(c[Q>>2]|
0)+4>>2]|0);if(a[(c[s>>2]|0)+70>>0]|0){X=129;break a}break}case 5:{if(!((c[(c[s>>2]|0)+64
>>2]|0)!=3?(c[(c[s>>2]|0)+64>>2]|0)!=2:0))uq(c[s>>2]|0);c[(c[s>>2]|0)+64>
x3e;2]=1;break}case 6:{X=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=X;if(X|0){X=186;break
a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);X=144;break}case 7:{c[U>>2]=(c[U>
;>2]|0)+(c[c[Q>>2]>>2]|0);if(!(c[(c[l>>2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|
0)+64>>2]|0))break a;c[(c[s>>2]|0)+64>>2]=2}break}case 8:{e=tq(c[s>>2]|0,c[U>>
2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){
X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);qq(c[s>>2]|0,c[U>>
;2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);c[V>>
2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2
]|0,0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+12>>2]|0);qq(c[s>>2]|0,c[U>>
;2]|0,c[V>>2]|0,1);break}case 9:{X=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=
X;if(X|0){X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);c[V>>2]=(c[V>
;>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);X=144;break}case 10:{c[U>>2]=(c[U>>2]|0)+(c[c[Q>
;>2]>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);if(!(c[(c[l>
x3e;2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|0)+64>>2]|0))break a;c[(c[s>>2]|0)+64>>
2]=2}break}case 11:{e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break
a}e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>
x3e;2]>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);qq(c[s>>2]|
0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);
c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+12>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,
c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+16>>2]|0);c[V>>2]=(c
[V>>2]|0)+(c[(c[Q>>2]|0)+20>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,
1);break}case 12:{e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}
e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){X=186;break a}c[V>>2]=(c[V>>2]|0)+(c[c[Q>>
;2]>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(
c[(c[Q>>2]|0)+4>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);qq
(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+
12>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,1);break}case 13:{X=tq(c[s>>2]|0,c[
U>>2]|0,c[V>>2]|0)|0;c[v>>2]=X;if(X|0){X=186;break a}c[V>>2]=(c[V>>2]|0)+(c[c[
Q>>2]>>2]|0);X=144;break}case 14:{c[V>>2]=(c[V>>2]|0)+(c[c[Q>>2]>>2]|
0);if(!(c[(c[l>>2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|0)+64>>2]|0))break a;c[(c[s>>
;2]|0)+64>>2]=2}break}case 20:{e=Vb(c[c[Q>>2]>>2]|0,c[(c[Q>>2]|0)+4>>2]|0)|0;c
[c[Q>>2]>>2]=e;c[Q>>2]=(c[Q>>2]|0)+4;a[E>>0]=0;break}case 22:{c[B>>2
]=c[c[Q>>2]>>2]>>16;if((c[B>>2]|0)<0)break a;if((c[B>>2]|0)>=(c[(c[l
>>2]|0)+1364>>2]|0))break a;if((((c[W>>2]|0)-((c[l>>2]|0)+1140)|0)/12|0|0)>=16)break
a;c[c[W>>2]>>2]=c[C>>2];c[W>>2]=(c[W>>2]|0)+12;c[(c[W>>2]|0)+4>
;>2]=c[(c[(c[l>>2]|0)+1368>>2]|0)+(c[B>>2]<<2)>>2];if(c[(c[l>>2
]|0)+1372>>2]|0)c[(c[W>>2]|0)+8>>2]=(c[(c[W>>2]|0)+4>>2]|0)+(c[(c[(c[l>
x3e;2]|0)+1372>>2]|0)+(c[B>>2]<<2)>>2]|0);else{if((c[(c[l>>2]|0)+1360>>
;2]|0)>=0)h=c[(c[l>>2]|0)+1360>>2]|0;else h=0;e=(c[W>>2]|0)+4|0;c[e>>2]=(c[e>
x3e;2]|0)+h;c[(c[W>>2]|0)+8>>2]=c[(c[(c[l>>2]|0)+1368>>2]|0)+((c[B>>2]|0)+1<
;<2)>>2]}c[c[W>>2]>>2]=c[(c[W>>2]|0)+4>>2];if(!(c[(c[W>>2]|0)+4
>>2]|0))break a;c[(c[l>>2]|0)+1344>>2]=c[W>>2];c[C>>2]=c[(c[W>>2]|0)+
4>>2];c[F>>2]=c[(c[W>>2]|0)+8>>2];break}case 23:{if((c[D>>2]|0)>0){c[D>
;>2]=(c[D>>2]|0)+-1;break d}if(!(c[R>>2]|0))break a;c[R>>2]=(c[R>>2]|0)+-1;c[Q>
;>2]=(c[Q>>2]|0)+4;break}case 24:{if((c[W>>2]|0)>>>0<=((c[l>>2]|0)+1140|0
)>>>0)break a;c[W>>2]=(c[W>>2]|0)+-12;c[C>>2]=c[c[W>>2]>>2];c[F
>>2]=c[(c[W>>2]|0)+8>>2];c[(c[l>>2]|0)+1344>>2]=c[W>>2];break}case 26
:case 15:break;case 16:{if(c[w>>2]|0)Ua[c[(c[w>>2]|0)+12>>2]&31](c[c[w>>2]>>
;2]|0,1,c[Q>>2]|0);break}case 17:{if(c[w>>2]|0)Ua[c[(c[w>>2]|0)+16>>2]&31](c[c[w>
;>2]>>2]|0,1,c[Q>>2]|0);break}case 18:{if(c[w>>2]|0){e=c[Q>>2]|0;c[e>>2]=(
c[e>>2]|0)+(c[L>>2]|0);Ua[c[(c[w>>2]|0)+12>>2]&31](c[c[w>>2]>>2
]|0,0,c[Q>>2]|0)}break}case 19:{if(c[w>>2]|0){c[u>>2]=c[L>>2];e=c[Q>>2]|0;c[e
x3e;>2]=(c[e>>2]|0)+(c[u>>2]|0);e=(c[Q>>2]|0)+8|0;c[e>>2]=(c[e>>2]|0)+(c[
u>>2]|0);e=(c[Q>>2]|0)+16|0;c[e>>2]=(c[e>>2]|0)+(c[u>>2]|0);Ua[c[(c[w>>
;2]|0)+16>>2]&31](c[c[w>>2]>>2]|0,0,c[Q>>2]|0)}break}case 25:{c[U>>2]=c[c
[Q>>2]>>2];c[V>>2]=c[(c[Q>>2]|0)+4>>2];c[(c[l>>2]|0)+1400>>
;2]=0;break}default:break a}while(0);if((X|0)==144?(X=0,e=rq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0,c[v
x3e;>2]=e,e|0):0){X=186;break}c[(c[l>>2]|0)+1136>>2]=c[Q>>2]}do if((X|0)==121){uq(c[s>
x3e;2]|0);if(c[w>>2]|0){if(Ya[c[(c[w>>2]|0)+8>>2]&127](c[c[w>>2]>>2]|0,b[(
c[(c[s>>2]|0)+20>>2]|0)+2>>1]|0)|0)break;Wa[c[(c[w>>2]|0)+24>>2]&31](c[c[
w>>2]>>2]|0,c[(c[s>>2]|0)+20>>2]|0,c[(c[s>>2]|0)+76>>2]|0,c[(c[l>
;>2]|0)+1468>>2]|0)|0}oc(c[(c[s>>2]|0)+12>>2]|0);c[k>>2]=0;X=c[k>>2]|0;i=
Y;return X|0}else if((X|0)==126){c[k>>2]=0;X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==127){c[k>>2]=
yq(c[l>>2]|0,c[c[Q>>2]>>2]|0,c[(c[Q>>2]|0)+4>>2]|0,c[(c[Q>>2]|0)+8
x3e;>2]|0,c[(c[Q>>2]|0)+12>>2]>>16,c[(c[Q>>2]|0)+16>>2]>>16)|0;
X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==129){c[k>>2]=0;X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==
186){c[k>>2]=c[v>>2];X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==188){c[k>>2]=161;X=c[k>
;>2]|0;i=Y;return X|0}while(0);c[k>>2]=160;X=c[k>>2]|0;i=Y;return X|0}function yq(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;A=i;i=i+80|0;n=A+68|0;o=A+64
|0;p=A+60|0;q=A+56|0;r=A+52|0;k=A+48|0;l=A+44|0;v=A+40|0;u=A+36|0;s=A+32|0;x=A+24|0;t=A+16|0;m=A+12|0;w=A+8|0;y=A+4|0;z=A;c[o>
;>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[k>>2]=h;c[l>>2]=j;c[m>>2
]=c[(c[o>>2]|0)+4>>2];if(a[(c[o>>2]|0)+1496>>0]|0){c[n>>2]=160;z=c[n>>
;2]|0;i=A;return z|0}c[q>>2]=(c[q>>2]|0)+(c[(c[o>>2]|0)+32>>2]|0);if((c[(c[o>>
2]|0)+1356>>2]|0)==0?(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)==0:0){c[n>>2]=160;
z=c[n>>2]|0;i=A;return z|0}if(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0){c[u>>2]=c[
k>>2];c[s>>2]=c[l>>2]}else{c[u>>2]=zq(c[o>>2]|0,c[k>>2]|0)|0;c[s>
;>2]=zq(c[o>>2]|0,c[l>>2]|0)|0}if((c[u>>2]|0)<0|(c[s>>2]|0)<0){c[n>
x3e;2]=160;z=c[n>>2]|0;i=A;return z|0}k=c[o>>2]|0;if(a[(c[o>>2]|0)+69>>0]|0){c[w>
x3e;2]=c[k+8>>2];c[y>>2]=c[c[(c[w>>2]|0)+156>>2]>>2];c[v>>2]=lc(c[y
x3e;>2]|0,2)|0;if(!(c[v>>2]|0)){c[z>>2]=c[(c[y>>2]|0)+56+32>>2];c[c[z>>2]
x3e;>2]=c[u>>2];b[(c[z>>2]|0)+4>>1]=514;c[(c[z>>2]|0)+8>>2]=0;c[(c[z>
;>2]|0)+12>>2]=0;c[z>>2]=(c[z>>2]|0)+32;c[c[z>>2]>>2]=c[s>>2];b
[(c[z>>2]|0)+4>>1]=2;x=(Tb((c[q>>2]|0)-(c[p>>2]|0)|0)|0)>>16;c[(c[z>>
;2]|0)+8>>2]=x;x=(Tb(c[r>>2]|0)|0)>>16;c[(c[z>>2]|0)+12>>2]=x;c[(c[w>>
;2]|0)+128>>2]=2;c[(c[w>>2]|0)+132>>2]=c[(c[y>>2]|0)+20+32>>2];c[(c[w>>
;2]|0)+72>>2]=1668246896;c[(c[y>>2]|0)+56+28>>2]=2}}else{nc(c[k+12>>2]|0);a[(c[o>
x3e;2]|0)+1496>>0]=1;c[v>>2]=Aq(c[o>>2]|0,c[u>>2]|0)|0;a[(c[o>>2]|0)+1496>
;>0]=0;if((c[v>>2]|0)==0?(z=(c[o>>2]|0)+32|0,c[x>>2]=c[z>>2],c[x+4>>2]=c[
z+4>>2],z=(c[o>>2]|0)+40|0,c[t>>2]=c[z>>2],c[t+4>>2]=c[z+4>>2],c[(c[
o>>2]|0)+32>>2]=0,c[(c[o>>2]|0)+32+4>>2]=0,c[(c[o>>2]|0)+24>>2]=(c[q
>>2]|0)-(c[p>>2]|0),c[(c[o>>2]|0)+28>>2]=c[r>>2],a[(c[o>>2]|0)+1496
x3e;>0]=1,c[v>>2]=Aq(c[o>>2]|0,c[s>>2]|0)|0,a[(c[o>>2]|0)+1496>>0]=0,(c[v
>>2]|0)==0):0){z=(c[o>>2]|0)+32|0;c[z>>2]=c[x>>2];c[z+4>>2]=c[x+4>>2
];z=(c[o>>2]|0)+40|0;c[z>>2]=c[t>>2];c[z+4>>2]=c[t+4>>2];c[(c[o>>2]|
0)+24>>2]=0;c[(c[o>>2]|0)+28>>2]=0}}c[n>>2]=c[v>>2];z=c[n>>2]|0;i=A;
return z|0}function zq(b,d){b=b|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;l=n+24|0;f=n+20|0;g=n+16|0;m=n+12|0;h=n
+8|0;k=n+4|0;j=n;c[f>>2]=b;c[g>>2]=d;c[k>>2]=c[(c[f>>2]|0)+1348>>2];if((c[g>
;>2]|0)<0|(c[g>>2]|0)>255){c[l>>2]=-1;m=c[l>>2]|0;i=n;return m|0}c[h>>2]=
Ta[c[(c[k>>2]|0)+20>>2]&63](e[(c[(c[k>>2]|0)+24>>2]|0)+(c[g>>2]<<
;1)>>1]|0)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[(c[f>>2]|0)+1352
>>2]|0)>>>0){f=10;break}c[j>>2]=c[(c[(c[f>>2]|0)+1356>>2]|0)+(c[m>
x3e;2]<<2)>>2];if((c[j>>2]|0?(a[c[j>>2]>>0]|0)==(a[c[h>>2]>>
;0]|0):0)?(Kr(c[j>>2]|0,c[h>>2]|0)|0)==0:0){f=8;break}c[m>>2]=(c[m>>2]|0)+1}if((f|0)==8){
c[l>>2]=c[m>>2];m=c[l>>2]|0;i=n;return m|0}else if((f|0)==10){c[l>>2]=-1;m=c[l>>
;2]|0;i=n;return m|0}return 0}function Aq(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=Ya[c[(c[f>>2]|0)+1472>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return b|0}
function Bq(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|
0;k=n+8|0;m=n+4|0;l=n;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=0;c[m>
;>2]=bc(c[h>>2]|0,16,l)|0;if(c[l>>2]|0){c[f>>2]=c[l>>2];m=c[f>>2]|0;i=n;return
m|0}else{a=c[j>>2]|0;c[(c[m>>2]|0)+4>>2]=a;c[c[m>>2]>>2]=a;c[(c[m>>
2]|0)+8>>2]=c[k>>2];c[(c[m>>2]|0)+12>>2]=2;c[c[g>>2]>>2]=c[h>
x3e;2];c[(c[g>>2]|0)+4>>2]=c[m>>2];c[(c[g>>2]|0)+8>>2]=0;c[(c[g>>2]|
0)+12>>2]=0;c[f>>2]=0;m=c[f>>2]|0;i=n;return m|0}return 0}function Cq(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];Fb(c[e>>2]|0,c[(c[d>
;>2]|0)+4>>2]|0);c[(c[d>>2]|0)+4>>2]=0;i=b;return}function Dq(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;o=i;i=i+80|0;j=o+68|0;k=o+64|0;n=o+60|0;m=o+56|0;l=o+52|0;d=o+48|0;e=o+44|0;f=o+40|0;h=o+8|0;g=o;c[k
x3e;>2]=b;c[n>>2]=c[c[k>>2]>>2];c[m>>2]=c[(c[k>>2]|0)+8>>2];c[l
>>2]=160;c[f>>2]=0;if(!(c[m>>2]|0)){c[j>>2]=6;n=c[j>>2]|0;i=o;return n|0}c[d
x3e;>2]=Eq(c[k>>2]|0,1,e)|0;if(!((c[d>>2]|0)==0|(c[e>>2]|0)!=16)?(Lr(c[d>>2]|0,11707
,16)|0)==0:0){a:while(1){b=Eq(c[k>>2]|0,1,e)|0;c[d>>2]=b;if(!b){d=24;break}switch(Iq(c[d>>2]|0,c[e
>>2]|0)|0){case 49:{d=22;break a}case 20:{d=23;break a}case 40:{if(Jq(c[k>>2]|0,f)|0){d=24;break a}if((c[f
x3e;>2]|0)!=0&(c[f>>2]|0)!=2){d=10;break a}else continue a}case 30:{c[h>>2]=4;if((Kq(c[k>>
;2]|0,h,1)|0)!=1){d=24;break a}a[c[m>>2]>>0]=a[h+4>>0]|0;continue a}case 26:{c[h>>2]=2;c
[h+8>>2]=2;c[h+16>>2]=2;c[h+24>>2]=2;if((Kq(c[k>>2]|0,h,4)|0)!=4){d=24;break a}c[(c[m>
;>2]|0)+4>>2]=c[h+4>>2];c[(c[m>>2]|0)+4+4>>2]=c[h+8+4>>2];c[(c[m>>
;2]|0)+4+8>>2]=c[h+16+4>>2];c[(c[m>>2]|0)+4+12>>2]=c[h+24+4>>2];continue a}case
0:{c[h>>2]=2;if((Kq(c[k>>2]|0,h,1)|0)!=1){d=24;break a}c[(c[m>>2]|0)+20>>2]=c[h+4>
x3e;2];continue a}case 14:{c[h>>2]=2;if((Kq(c[k>>2]|0,h,1)|0)!=1){d=24;break a}c[(c[m>>2]|0)+24>
;>2]=c[h+4>>2];continue a}case 45:{c[g>>2]=0;if(Jq(c[k>>2]|0,g)|0){d=24;break a}c[l>>
;2]=Lq(c[k>>2]|0,c[g>>2]|0,17)|0;if(c[l>>2]|0){d=21;break a}else continue a}default:continue a}}if
((d|0)==10){c[l>>2]=7;d=24}else if((d|0)==21){c[j>>2]=c[l>>2];n=c[j>>2]|0;i=o;return n|0
}else if((d|0)==22){c[l>>2]=Mq(c[k>>2]|0)|0;if(c[l>>2]|0)d=24;else d=23}if((d|0)==23){c[j>>
;2]=0;n=c[j>>2]|0;i=o;return n|0}else if((d|0)==24){Fb(c[n>>2]|0,c[(c[m>>2]|0)+28>>2]|0);
c[(c[m>>2]|0)+28>>2]=0;c[(c[m>>2]|0)+32>>2]=0;Fb(c[n>>2]|0,c[(c[m>>2
]|0)+36>>2]|0);c[(c[m>>2]|0)+36>>2]=0;c[(c[m>>2]|0)+40>>2]=0;a[c[m>>
2]>>0]=0;c[j>>2]=c[l>>2];n=c[j>>2]|0;i=o;return n|0}}c[j>>2]=2;n=c[j>>
;2]|0;i=o;return n|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,l=0;j=i;i=i+32|0;l=j+12|0;k=j+16|0;g=j+8|0;f=j
+4|0;h=j;c[l>>2]=b;a[k>>0]=d;c[g>>2]=e;c[f>>2]=c[(c[l>>2]|0)+4>>2];c
[h>>2]=0;a:do if(a[k>>0]|0)do{if((c[(c[f>>2]|0)+12>>2]|0)<2)Fq(c[f>>2]|0)|
0;c[(c[f>>2]|0)+12>>2]=0;c[h>>2]=Hq(c[f>>2]|0)|0;if(c[h>>2]|0)break a;if((c[(c
[f>>2]|0)+12>>2]|0)>=3)break a}while((c[(c[f>>2]|0)+12>>2]|0)>=2);else while(1
){e=c[f>>2]|0;if((c[(c[f>>2]|0)+12>>2]|0)>=1^1){Hq(e)|0;continue}c[e+12>>2]=0;c[h
x3e;>2]=Hq(c[f>>2]|0)|0;if(c[h>>2]|0)break a;if((c[(c[f>>2]|0)+12>>2]|0)>=3)break
a;if((c[(c[f>>2]|0)+12>>2]|0)<1)break}while(0);if(!(c[g>>2]|0)){l=c[h>>2]|0;i=j;return
l|0}if(c[h>>2]|0)e=(c[c[f>>2]>>2]|0)-(c[h>>2]|0)-1|0;else e=0;c[c[g>>2]>
x3e;2]=e;l=c[h>>2]|0;i=j;return l|0}function Fq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;f=h+8|0;g=h
+4|0;b=h;c[f>>2]=a;Gq(c[f>>2]|0)|0;if((c[(c[f>>2]|0)+12>>2]|0)>=2){c[e>>2
]=0;g=c[e>>2]|0;i=h;return g|0}c[g>>2]=(c[c[f>>2]>>2]|0)+-1;while(1){if((c[c[f>>
;2]>>2]|0)>>>0<(c[(c[f>>2]|0)+8>>2]|0)>>>0){j=c[f>>2]|
0;a=c[j>>2]|0;c[j>>2]=a+1;a=d[a>>0]|0}else a=-1;c[b>>2]=a;if((c[b>>2]|0)==13|(
c[b>>2]|0)==10){a=7;break}if((c[b>>2]|0)==-1|(c[b>>2]|0)==26){a=9;break}}if((a|0)==7)c[(c[f>
x3e;2]|0)+12>>2]=2;else if((a|0)==9)c[(c[f>>2]|0)+12>>2]=3;c[e>>2]=c[g>>2];j=c
[e>>2]|0;i=h;return j|0}function Gq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;b=g+8|0;e=g+4|0;f=g;c[e>>2
]=a;c[f>>2]=0;if((c[(c[e>>2]|0)+12>>2]|0)>=1){c[b>>2]=59;f=c[b>>2]|0;i=g;
return f|0}do{if((c[c[e>>2]>>2]|0)>>>0<(c[(c[e>>2]|0)+8>>2]|0)>
x3e;>0){h=c[e>>2]|0;a=c[h>>2]|0;c[h>>2]=a+1;a=d[a>>0]|0}else a=-1;c[f>>2]=
a}while((c[f>>2]|0)==32|(c[f>>2]|0)==9);do if(!((c[f>>2]|0)==13|(c[f>>2]|0)==10)){if((c[
f>>2]|0)==59){c[(c[e>>2]|0)+12>>2]=1;break}if((c[f>>2]|0)==-1|(c[f>>2]|0)==26)
c[(c[e>>2]|0)+12>>2]=3}else c[(c[e>>2]|0)+12>>2]=2;while(0);c[b>>2]=c[f>
x3e;2];h=c[b>>2]|0;i=g;return h|0}function Hq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;b=j+12|0;e=j+8|0;g
=j+4|0;f=j;c[e>>2]=a;Gq(c[e>>2]|0)|0;if((c[(c[e>>2]|0)+12>>2]|0)>=1){c[b>>
;2]=0;h=c[b>>2]|0;i=j;return h|0}c[g>>2]=(c[c[e>>2]>>2]|0)+-1;while(1){if((c[c[e>
x3e;2]>>2]|0)>>>0<(c[(c[e>>2]|0)+8>>2]|0)>>>0){k=c[e>>
;2]|0;a=c[k>>2]|0;c[k>>2]=a+1;a=d[a>>0]|0}else a=-1;c[f>>2]=a;if((c[f>>2]|0)==
32|(c[f>>2]|0)==9)break;if((c[f>>2]|0)==13|(c[f>>2]|0)==10){h=8;break}if((c[f>>2]|0)==59
){h=10;break}if((c[f>>2]|0)==-1|(c[f>>2]|0)==26){h=12;break}}if((h|0)==8)c[(c[e>>2]|0)+12>>
;2]=2;else if((h|0)==10)c[(c[e>>2]|0)+12>>2]=1;else if((h|0)==12)c[(c[e>>2]|0)+12>>2]=3;
c[b>>2]=c[g>>2];k=c[b>>2]|0;i=j;return k|0}function Iq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=
i;i=i+16|0;h=j+12|0;e=j+8|0;f=j+4|0;g=j;c[e>>2]=b;c[f>>2]=d;c[g>>2]=0;a:while(1){if((c[g>>
;2]|0)>=74){b=10;break}if((c[g>>2]|0)<74?(a[c[4608+(c[g>>2]<<2)>>2]>>
;0]|0)==(a[c[e>>2]>>0]|0):0)do{if((a[c[4608+(c[g>>2]<<2)>>2]>>0]|0)!=(
a[c[e>>2]>>0]|0)){b=5;break a}b=(Lr(c[4608+(c[g>>2]<<2)>>2]|0,c[e>>2
]|0,c[f>>2]|0)|0)==0;d=c[g>>2]|0;if(b){b=7;break a}c[g>>2]=d+1}while((c[g>>2]|0)<74
);c[g>>2]=(c[g>>2]|0)+1}if((b|0)==5){c[h>>2]=75;h=c[h>>2]|0;i=j;return h|0}else if((b|0)==
7){c[h>>2]=d;h=c[h>>2]|0;i=j;return h|0}else if((b|0)==10){c[h>>2]=75;h=c[h>>2]|0;i=j;return
h|0}return 0}function Jq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+32|0;d=g+16|0;h=g+12|0;e=g+8|0;f=g;c[h>>2]=
a;c[e>>2]=b;c[f>>2]=3;if((Kq(c[h>>2]|0,f,1)|0)==1){c[c[e>>2]>>2]=c[f+4>
x3e;2];c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}else{c[d>>2]=160;h=c[d>>2]|0;i=g;return h|0}
return 0}function Kq(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;r=i;i=i+48|0;f=r+40|0;g=r+36|0
;h=r+32|0;j=r+28|0;p=r+24|0;o=r+20|0;l=r+16|0;m=r+12|0;q=r+8|0;n=r+4|0;k=r;c[g>>2]=b;c[h>>2]=d;c[j>>
;2]=e;c[p>>2]=c[(c[g>>2]|0)+4>>2];if((c[j>>2]|0)>>>0>5){c[f>>
;2]=0;q=c[f>>2]|0;i=r;return q|0}c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[j
x3e;>2]|0)>>>0)break;c[q>>2]=(c[h>>2]|0)+(c[l>>2]<<3);e=c[p>>
;2]|0;if(!(c[c[q>>2]>>2]|0))c[o>>2]=Fq(e)|0;else c[o>>2]=Hq(e)|0;if(!(c[o>>2]|
0))break;c[m>>2]=(c[c[p>>2]>>2]|0)-(c[o>>2]|0)-1;a:do switch(c[c[q>>2]>
x3e;2]|0){case 1:case 0:{c[n>>2]=c[c[g>>2]>>2];d=cc(c[n>>2]|0,(c[m>>2]|0)+1|0,
k)|0;c[(c[q>>2]|0)+4>>2]=d;if(!(c[k>>2]|0)){Ss(c[(c[q>>2]|0)+4>>2]|0,c[o>
x3e;2]|0,c[m>>2]|0)|0;a[(c[(c[q>>2]|0)+4>>2]|0)+(c[m>>2]|0)>>0]=0}break}case 2
:{d=bq(o,(c[o>>2]|0)+(c[m>>2]|0)|0,0)|0;c[(c[q>>2]|0)+4>>2]=d;break}case 3:{d=_p(o,(c[o
x3e;>2]|0)+(c[m>>2]|0)|0)|0;c[(c[q>>2]|0)+4>>2]=d;break}case 4:{if((c[m>>2]|0)==4)e
=(Lr(c[o>>2]|0,12412,4)|0)!=0^1;else e=0;a[(c[q>>2]|0)+4>>0]=e&1;break}case 5:if(c[(c[g>
x3e;2]|0)+12>>2]|0){d=Oa[c[(c[g>>2]|0)+12>>2]&63](c[o>>2]|0,c[m>>2]|0,c[(
c[g>>2]|0)+16>>2]|0)|0;c[(c[q>>2]|0)+4>>2]=d;break a}else{c[(c[q>>2]|0)+4>
;>2]=0;break a}default:{}}while(0);c[l>>2]=(c[l>>2]|0)+1}c[f>>2]=c[l>>2];q=c[f>
;>2]|0;i=r;return q|0}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,l=0,m=0,n=0;n=i;i=i+32|0;e=n+24|0;f=
n+20|0;g=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;l=n;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;do{a=c[g>>2]|
0;c[g>>2]=a+-1;if(a>>>0<=0){m=4;break}c[j>>2]=Eq(c[f>>2]|0,1,0)|0}while((c[j
x3e;>2]|0)!=0);a:do if((m|0)==4){while(1){m=Eq(c[f>>2]|0,1,k)|0;c[j>>2]=m;if(!m)break a;c[l>>
2]=Iq(c[j>>2]|0,c[k>>2]|0)|0;if((c[l>>2]|0)==20?1:(c[l>>2]|0)==(c[h>>2]|0))break
;else m=4}c[e>>2]=0;m=c[e>>2]|0;i=n;return m|0}while(0);c[e>>2]=160;m=c[e>>2]|0;i=n;return
m|0}function Mq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;f=h+16|0;b=h+12|0;g=h+8|0;d=h+4|0;e=h;c[b>>2]=a;a:while
(1){a=Eq(c[b>>2]|0,1,e)|0;c[d>>2]=a;if(!a){b=9;break}switch(Iq(c[d>>2]|0,c[e>>2]|0)|0){case
75:continue a;case 20:case 21:{b=8;break a}case 53:{c[g>>2]=Nq(c[b>>2]|0)|0;if(c[g>>2]|0){b=5;break
a}else continue a}case 51:case 50:{c[g>>2]=Oq(c[b>>2]|0)|0;if(c[g>>2]|0){b=7;break a}else continue
a}default:{b=9;break a}}}if((b|0)==5)c[f>>2]=c[g>>2];else if((b|0)==7)c[f>>2]=c[g>>2];else
if((b|0)==8)c[f>>2]=0;else if((b|0)==9)c[f>>2]=160;i=h;return c[f>>2]|0}function Nq(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;n=i;i=i+80|0;b=n+72|0;d=n+68|0;f=n+64|0;m=n+60|0;g=n+56|0;h=n+52|0;k=n+48|0;j=n+44|0
;e=n+40|0;l=n;c[d>>2]=a;c[f>>2]=c[(c[d>>2]|0)+8>>2];c[k>>2]=-1;a:do if(!(Jq(c[
d>>2]|0,(c[f>>2]|0)+32|0)|0)){if(c[(c[f>>2]|0)+32>>2]|0?(c[j>>2]=c[c[d>
x3e;2]>>2],a=hc(c[j>>2]|0,20,0,c[(c[f>>2]|0)+32>>2]|0,0,e)|0,c[(c[f>>2]|0)+28
x3e;>2]=a,c[e>>2]|0):0){c[b>>2]=c[e>>2];m=c[b>>2]|0;i=n;return m|0}b:while(1){a=Eq(
c[d>>2]|0,1,h)|0;c[g>>2]=a;if(!a)break a;switch(Iq(c[g>>2]|0,c[h>>2]|0)|0){case 75:continue
b;case 20:case 21:case 23:break b;case 56:break;default:break a}c[k>>2]=(c[k>>2]|0)+1;if((c[k>>2]|
0)>=(c[(c[f>>2]|0)+32>>2]|0))break a;c[m>>2]=(c[(c[f>>2]|0)+28>>2]|0)+((c
[k>>2]|0)*20|0);c[l>>2]=3;c[l+8>>2]=2;c[l+16>>2]=2;c[l+24>>2]=2;c[l+32>
x3e;2]=2;if((Kq(c[d>>2]|0,l,5)|0)!=5)break a;c[c[m>>2]>>2]=c[l+4>>2];c[(c[m>>2
]|0)+4>>2]=c[l+8+4>>2];c[(c[m>>2]|0)+8>>2]=c[l+16+4>>2];c[(c[m>>2]|0
)+12>>2]=c[l+24+4>>2];c[(c[m>>2]|0)+16>>2]=c[l+32+4>>2];if((c[c[m>>2
]>>2]|0)>=0)continue;if((c[(c[m>>2]|0)+8>>2]|0)<=0)continue;c[(c[m>>2]|0)+8>
;>2]=0-(c[(c[m>>2]|0)+8>>2]|0)}c[(c[f>>2]|0)+32>>2]=(c[k>>2]|0)+1;c[b>
;>2]=0;m=c[b>>2]|0;i=n;return m|0}while(0);c[b>>2]=160;m=c[b>>2]|0;i=n;return m|0}function Oq
(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;p=i;i=i+80|0;e=p+72|0;f=p+68|0;g=p+64|0;j=p+60|0;h=p+56|0;k=p+
52|0;l=p+48|0;d=p+44|0;b=p+40|0;o=p+36|0;m=p+32|0;n=p;c[f>>2]=a;c[g>>2]=c[(c[f>>2]|0)+8>>
;2];c[l>>2]=-1;a:do if(!(Jq(c[f>>2]|0,(c[g>>2]|0)+40|0)|0)){if(c[(c[g>>2]|0)+40>>
;2]|0?(c[d>>2]=c[c[f>>2]>>2],a=hc(c[d>>2]|0,16,0,c[(c[g>>2]|0)+40>>2
]|0,0,b)|0,c[(c[g>>2]|0)+36>>2]=a,c[b>>2]|0):0){c[e>>2]=c[b>>2];o=c[e>>
;2]|0;i=p;return o|0}b:while(1){a=Eq(c[f>>2]|0,1,k)|0;c[h>>2]=a;if(!a)break a;c[o>>2]=Iq(c[h>
x3e;2]|0,c[k>>2]|0)|0;switch(c[o>>2]|0){case 75:continue b;case 20:case 21:case 22:break b;case 37:case 36:case
34:break;default:break a}c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)>=(c[(c[g>>2]|0)+40
x3e;>2]|0))break a;c[j>>2]=(c[(c[g>>2]|0)+36>>2]|0)+(c[l>>2]<<4);c[n>
;>2]=5;c[n+8>>2]=5;c[n+16>>2]=3;c[n+24>>2]=3;c[m>>2]=Kq(c[f>>2]|0,n,4)|0;
if((c[m>>2]|0)<3)break a;c[c[j>>2]>>2]=c[n+4>>2];c[(c[j>>2]|0)+4>>
;2]=c[n+8+4>>2];if((c[o>>2]|0)==37){c[(c[j>>2]|0)+8>>2]=0;c[(c[j>>2]|0)+12>
;>2]=c[n+16+4>>2];continue}c[(c[j>>2]|0)+8>>2]=c[n+16+4>>2];if((c[o>>2]|0
)==34&(c[m>>2]|0)==4)b=c[n+24+4>>2]|0;else b=0;c[(c[j>>2]|0)+12>>2]=b}c[(c[g>
x3e;2]|0)+40>>2]=(c[l>>2]|0)+1;Bs(c[(c[g>>2]|0)+36>>2]|0,c[(c[g>>2]|0)+40>
;>2]|0,16,109);c[e>>2]=0;o=c[e>>2]|0;i=p;return o|0}while(0);c[e>>2]=160;o=c[e>>2]|
0;i=p;return o|0}function Pq(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;g=i;i=i+32|0;d=g+24|0;l=g+20|0;k=g+16|0;j=g+12
|0;h=g+8|0;e=g+4|0;f=g;c[l>>2]=a;c[k>>2]=b;c[j>>2]=c[l>>2];c[h>>2]=c[k>
x3e;2];c[e>>2]=c[c[j>>2]>>2]<<16|c[(c[j>>2]|0)+4>>2];c[f>>
2]=c[c[h>>2]>>2]<<16|c[(c[h>>2]|0)+4>>2];if((c[e>>2]|0)>>
x3e;0>(c[f>>2]|0)>>>0){c[d>>2]=1;l=c[d>>2]|0;i=g;return l|0}if((c[e>>
;2]|0)>>>0<(c[f>>2]|0)>>>0){c[d>>2]=-1;l=c[d>>2]|0;i=g;return l
|0}else{c[d>>2]=0;l=c[d>>2]|0;i=g;return l|0}return 0}function Qq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d
x3e;>2]=a;Rq(c[d>>2]|0,0);i=b;return 0}function Rq(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[d>>2]=a;c[f>>2]=b;c[h>>2]=c[c[d>>2]>>2];c[g>>
2]=c[(c[h>>2]|0)+484>>2];c[(c[d>>2]|0)+24>>2]=c[(c[h>>2]|0)+132+284>>
;2];c[(c[d>>2]|0)+28>>2]=c[(c[h>>2]|0)+132+288>>2];c[(c[d>>2]|0)+20>>
;2]=c[(c[g>>2]|0)+20>>2];a=c[g>>2]|0;if(c[f>>2]|0){g=c[a+28>>2]|0;h=c[d>
x3e;2]|0;h=h+16|0;c[h>>2]=g;i=e;return}else{g=c[a+24>>2]|0;h=c[d>>2]|0;h=h+16|0;c[h>>2]=
g;i=e;return}}function Sq(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)+24>>2]=0;c
[(c[d>>2]|0)+28>>2]=0;c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>2]=0;
i=b;return}function Tq(b,d){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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;m=o+16|0;h=o+12|0
;l=o+8|0;j=o+4|0;k=o;c[f>>2]=b;c[g>>2]=d;c[m>>2]=0;if((c[g>>2]|0)>>>0>
;=256){n=c[m>>2]|0;i=o;return n|0}c[h>>2]=e[(c[(c[f>>2]|0)+16>>2]|0)+(c[g>>2]
x3c;<1)>>1];c[j>>2]=Ta[c[(c[f>>2]|0)+20>>2]&63](c[h>>2]|0)|0;c[l>
;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[(c[f>>2]|0)+24>>2]|0)>>
x3e;0){n=9;break}c[k>>2]=c[(c[(c[f>>2]|0)+28>>2]|0)+(c[l>>2]<<2)>>2];
if((c[k>>2]|0?(a[c[k>>2]>>0]|0)==(a[c[j>>2]>>0]|0):0)?(Kr(c[k>>2]|0,
c[j>>2]|0)|0)==0:0)break;c[l>>2]=(c[l>>2]|0)+1}if((n|0)==9){n=c[m>>2]|0;i=o;return n|0}c
[m>>2]=c[l>>2];n=c[m>>2]|0;i=o;return n|0}function Uq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0
;j=i;i=i+16|0;d=j+12|0;e=j+8|0;g=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[f>>2]=(c[c[e
x3e;>2]>>2]|0)+1;while(1){if((c[f>>2]|0)>>>0>=256)break;c[g>>2]=Tq(c[d>
;>2]|0,c[f>>2]|0)|0;if(c[g>>2]|0){h=6;break}c[f>>2]=(c[f>>2]|0)+1}if((h|0)==6){b=c[
f>>2]|0;h=c[e>>2]|0;c[h>>2]=b;h=c[g>>2]|0;i=j;return h|0}c[f>>2]=0;b=c[f>
x3e;2]|0;h=c[e>>2]|0;c[h>>2]=b;h=c[g>>2]|0;i=j;return h|0}function Vq(a){a=a|0;var b=0,d=0;b=i;i=i
+16|0;d=b;c[d>>2]=a;Rq(c[d>>2]|0,1);i=b;return 0}function Wq(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]=c[c[d>>2]>>2];c[e>>2]=(c[f>>2]|0)+132
+240;c[(c[d>>2]|0)+16>>2]=c[(c[e>>2]|0)+4>>2];c[(c[d>>2]|0)+20>>2]=(
c[(c[e>>2]|0)+8>>2]|0)-(c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+24>>2]=
c[(c[e>>2]|0)+12>>2];i=b;return 0}function Xq(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)+24>>2]=0;c[(c[d>>2]|0)+16>>2]=0;c[(c[d>>2]|0)+20>>2]=0;i=b
;return}function Yq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=
b;c[g>>2]=0;if((c[f>>2]|0)>>>0<(c[(c[d>>2]|0)+16>>2]|0)>>
x3e;0){g=c[g>>2]|0;i=h;return g|0}if((c[f>>2]|0)>>>0>=((c[(c[d>>2]|0)+16>
x3e;2]|0)+(c[(c[d>>2]|0)+20>>2]|0)|0)>>>0){g=c[g>>2]|0;i=h;return g|0}c[g>>
;2]=e[(c[(c[d>>2]|0)+24>>2]|0)+(c[f>>2]<<1)>>1];g=c[g>>2]|0;i=h;return
g|0}function Zq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;d=k+12|0;f=k+8|0;h=k+4|0;g=k;c[d>>2]=a;c[f
x3e;>2]=b;c[h>>2]=0;c[g>>2]=c[c[f>>2]>>2];c[g>>2]=(c[g>>2]|0)+1
;if((c[g>>2]|0)>>>0<(c[(c[d>>2]|0)+16>>2]|0)>>>0)c[g>>
;2]=c[(c[d>>2]|0)+16>>2];while(1){if((c[g>>2]|0)>>>0>=((c[(c[d>>2]|0
)+16>>2]|0)+(c[(c[d>>2]|0)+20>>2]|0)|0)>>>0)break;c[h>>2]=e[(c[(c[d>
x3e;2]|0)+24>>2]|0)+(c[g>>2]<<1)>>1];if(c[h>>2]|0){j=7;break}c[g>>2]=(
c[g>>2]|0)+1}if((j|0)==7){b=c[g>>2]|0;j=c[f>>2]|0;c[j>>2]=b;j=c[h>>2]|0;i=k;return
j|0}c[g>>2]=0;b=c[g>>2]|0;j=c[f>>2]|0;c[j>>2]=b;j=c[h>>2]|0;i=k;return j|0}function
_q(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;d=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[d>>2]=c[c[e>
x3e;2]>>2];c[f>>2]=c[(c[d>>2]|0)+100>>2];c[g>>2]=c[(c[d>>2]|0)+484
x3e;>2];a=Sa[c[(c[g>>2]|0)+4>>2]&3](c[f>>2]|0,c[e>>2]|0,c[(c[d>>2]|0
)+132+284>>2]|0,110,0,c[d>>2]|0)|0;i=b;return a|0}function $q(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;
e=f+4|0;d=f;c[e>>2]=a;c[d>>2]=b;i=f;return c[(c[(c[e>>2]|0)+132+288>>2]|0)+(c[d>>
;2]<<2)>>2]|0}function ar(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]=c[c[d>>2]>>2];c[e>>2]=c[(c[f>>2]|0)+100>>2];Fb(c[e>>
;2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>
;2]=0;i=b;return}function br(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;h=d+4|0;g=d;c[f>>2
]=a;c[e>>2]=b;c[h>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[h>>2]|0)+484>
x3e;2];a=Ya[c[(c[g>>2]|0)+8>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function
cr(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;h=d+4|0;g=d;c[f>>2]=a;c[e>>2]=b;c
[h>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[h>>2]|0)+484>>2];a=Ya[c[(c[g>
x3e;2]|0)+12>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function dr(a,d,e){a=a|0;d=d|0;e=
e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+4|0;h=f;g=f+8|0;c[j>>2]=a;c[h>>2]=d;b[g>>1]=e;er(j,(c[j
x3e;>2]|0)+(c[h>>2]|0)|0,c[j>>2]|0,c[h>>2]|0,g)|0;i=f;return}function er(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;v=i;i=i+48|0;l=v+36|0;m=v+32|0;n=v+28|0;o=v+24|0;p=v+20|0;r
=v+16|0;s=v+12|0;t=v+8|0;u=v+4|0;q=v;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[p>
x3e;2]=k;c[t>>2]=e[c[p>>2]>>1];c[r>>2]=c[c[l>>2]>>2];if((c[o>
x3e;2]|0)>>>0>((c[m>>2]|0)-(c[r>>2]|0)|0)>>>0)c[o>>2]=(c[m>
;>2]|0)-(c[r>>2]|0);c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[o>>
;2]|0)>>>0)break;c[u>>2]=d[(c[r>>2]|0)+(c[s>>2]|0)>>0];c[q>>2]=
c[u>>2]^(c[t>>2]|0)>>>8;c[t>>2]=(((c[u>>2]|0)+(c[t>>2]|0)|0)*52845
|0)+22719&65535;a[(c[n>>2]|0)+(c[s>>2]|0)>>0]=c[q>>2];c[s>>2]=(c[s>
x3e;2]|0)+1}c[c[l>>2]>>2]=(c[r>>2]|0)+(c[o>>2]|0);b[c[p>>2]>>1]=c[t
x3e;>2];i=v;return c[s>>2]|0}function fr(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
,u=0;u=i;i=i+64|0;r=u+44|0;e=u+40|0;h=u+36|0;o=u+32|0;m=u+28|0;f=u+49|0;k=u+24|0;j=u+20|0;p=u+16|0;n=u+12|0;g=u+48|0;l=u+8|0;t=u
+4|0;s=u;c[e>>2]=b;if(((a[c[e>>2]>>0]|0)==117?(a[(c[e>>2]|0)+1>>0]|0)==110:0)?(
a[(c[e>>2]|0)+2>>0]|0)==105:0){c[o>>2]=0;c[m>>2]=(c[e>>2]|0)+3;c[h>>
2]=4;while(1){if((c[h>>2]|0)<=0)break;a[f>>0]=a[c[m>>2]>>0]|0;c[k>>2]=(d[
f>>0]|0)-48;do if((c[k>>2]|0)>>>0>=10){c[k>>2]=(d[f>>0]|0)-65;if((c[
k>>2]|0)>>>0>=6){c[k>>2]=16;break}else{c[k>>2]=(c[k>>2]|0)+10;break}}
while(0);if((c[k>>2]|0)>>>0>=16)break;c[o>>2]=(c[o>>2]<<4)+(c[k>
;>2]|0);c[h>>2]=(c[h>>2]|0)+-1;c[m>>2]=(c[m>>2]|0)+1}if(!(c[h>>2]|0)){if(!(
a[c[m>>2]>>0]|0)){c[r>>2]=c[o>>2];t=c[r>>2]|0;i=u;return t|0}if((a[c[m>
x3e;2]>>0]|0)==46){c[r>>2]=c[o>>2]|-2147483648;t=c[r>>2]|0;i=u;return t|0}}}if((a[c[e>
;>2]>>0]|0)==117){c[p>>2]=0;c[n>>2]=(c[e>>2]|0)+1;c[j>>2]=6;while(1){if((
c[j>>2]|0)<=0)break;a[g>>0]=a[c[n>>2]>>0]|0;c[l>>2]=(d[g>>0]|0)-
48;do if((c[l>>2]|0)>>>0>=10){c[l>>2]=(d[g>>0]|0)-65;if((c[l>>2]|0)
x3e;>>0>=6){c[l>>2]=16;break}else{c[l>>2]=(c[l>>2]|0)+10;break}}while(0);if((c[l>
;>2]|0)>>>0>=16)break;c[p>>2]=(c[p>>2]<<4)+(c[l>>2]|0);c[j>
;>2]=(c[j>>2]|0)+-1;c[n>>2]=(c[n>>2]|0)+1}if((c[j>>2]|0)<=2){if(!(a[c[n>
x3e;2]>>0]|0)){c[r>>2]=c[p>>2];t=c[r>>2]|0;i=u;return t|0}if((a[c[n>>2]>
x3e;0]|0)==46){c[r>>2]=c[p>>2]|-2147483648;t=c[r>>2]|0;i=u;return t|0}}}c[t>>2]=c[e>
;>2];c[s>>2]=0;while(1){if(!(a[c[t>>2]>>0]|0))break;if((a[c[t>>2]>>0]|0)==
46?(c[t>>2]|0)>>>0>(c[e>>2]|0)>>>0:0){q=35;break}c[t>>2]=(c[t
x3e;>2]|0)+1}if((q|0)==35)c[s>>2]=c[t>>2];e=c[e>>2]|0;if(c[s>>2]|0){c[r>>
2]=gr(e,c[s>>2]|0)|0|-2147483648;t=c[r>>2]|0;i=u;return t|0}else{c[r>>2]=gr(e,c[t>>2]|0)|
0;t=c[r>>2]|0;i=u;return t|0}return 0}function gr(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;t=i;i=i+64|0;f=t+48|0;g=t+44|0;h=t+40|0;j=t+36|0;l=t+32|0;o=t+28|0;m=t+24|0;q=t+20|0;n=t+16|0;r=t+12|0;k=t+8|0;p=t+4|0;
s=t;c[g>>2]=b;c[h>>2]=e;c[j>>2]=0;c[q>>2]=12431;a:do if(c[g>>2]|0?(c[g>
x3e;2]|0)>>>0<(c[h>>2]|0)>>>0:0){b=c[g>>2]|0;c[g>>2]=b+1;c[j>
;>2]=a[b>>0];c[l>>2]=d[(c[q>>2]|0)+1>>0];c[q>>2]=(c[q>>2]|0)+2;
c[o>>2]=0;c[m>>2]=c[l>>2];while(1){if((c[o>>2]|0)>=(c[m>>2]|0))break a;c[
n>>2]=(c[o>>2]|0)+(c[m>>2]|0)>>1;c[r>>2]=(c[q>>2]|0)+(c[n>>
;2]<<1);c[r>>2]=12431+(d[c[r>>2]>>0]<<8|d[(c[r>>2]|0)+1>>0
]);c[k>>2]=d[c[r>>2]>>0]&127;if((c[k>>2]|0)==(c[j>>2]|0))break;e=c[n>
;>2]|0;if((c[k>>2]|0)<(c[j>>2]|0)){c[o>>2]=e+1;continue}else{c[m>>2]=e;continue
}}c[q>>2]=c[r>>2];while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>
;>0)break;r=c[g>>2]|0;c[g>>2]=r+1;c[j>>2]=a[r>>0];r=(d[c[q>>2]>>
;0]&128|0)!=0;c[q>>2]=(c[q>>2]|0)+1;if(r)if((c[j>>2]|0)!=(d[c[q>>2]>>0]
x26;127|0))break a;else continue;c[l>>2]=d[c[q>>2]>>0]&127;if(d[c[q>>2]>>
0]&128|0)c[q>>2]=(c[q>>2]|0)+2;c[q>>2]=(c[q>>2]|0)+1;while(1){if((c[l>>2]|
0)<=0)break a;c[p>>2]=d[c[q>>2]>>0]<<8|d[(c[q>>2]|0)+1>>0];c[s
x3e;>2]=12431+(c[p>>2]|0);if((c[j>>2]|0)==(d[c[s>>2]>>0]&127|0))break;c[l>
;>2]=(c[l>>2]|0)+-1;c[q>>2]=(c[q>>2]|0)+2}c[q>>2]=c[s>>2]}if((d[c[q>
x3e;2]>>0]&128|0)==0?d[(c[q>>2]|0)+1>>0]&128|0:0){c[f>>2]=d[(c[q>>2]|
0)+2>>0]<<8|d[(c[q>>2]|0)+3>>0];s=c[f>>2]|0;i=t;return s|0}}while(0);c[f>
x3e;2]=0;s=c[f>>2]|0;i=t;return s|0}function hr(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;w=i;i=i+144|0;h=w+128|0;j=w+124|0;k=w+120|0;l=w+116|0;m=w+112|0;n=w+108|0;p=w+104|0;q
=w+64|0;r=w+24|0;u=w+16|0;o=w+12|0;t=w+8|0;v=w+4|0;s=w;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>
;2]=e;c[m>>2]=f;c[n>>2]=g;f=q;e=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(e|0));c[(c[j>
x3e;2]|0)+16>>2]=0;c[(c[j>>2]|0)+20>>2]=0;b=hc(c[h>>2]|0,8,0,(c[k>>2]|0)+10|0,
0,p)|0;c[(c[j>>2]|0)+20>>2]=b;if(c[p>>2]|0){v=c[p>>2]|0;i=w;return v|0}c[t>>2]=
c[(c[j>>2]|0)+20>>2];c[u>>2]=0;while(1){if((c[u>>2]|0)>>>0>=(c[k>
;>2]|0)>>>0)break;c[s>>2]=Ya[c[l>>2]&127](c[n>>2]|0,c[u>>2]|0)|
0;if(c[s>>2]|0){ir(c[s>>2]|0,c[u>>2]|0,r,q);c[v>>2]=fr(c[s>>2]|0)|0;if(c[v>
;>2]&2147483647|0){jr(c[v>>2]|0,q);c[c[t>>2]>>2]=c[v>>2];c[(c[t>>2]|
0)+4>>2]=c[u>>2];c[t>>2]=(c[t>>2]|0)+8}if(c[m>>2]|0)Ra[c[m>>2]&
7](c[n>>2]|0,c[s>>2]|0)}c[u>>2]=(c[u>>2]|0)+1}c[u>>2]=0;while(1){if((c[u>
x3e;2]|0)>>>0>=10)break;if((c[q+(c[u>>2]<<2)>>2]|0)==1){c[c[t>>2]>
;>2]=c[5252+(c[u>>2]<<2)>>2];c[(c[t>>2]|0)+4>>2]=c[r+(c[u>>2]
x3c;<2)>>2];c[t>>2]=(c[t>>2]|0)+8}c[u>>2]=(c[u>>2]|0)+1}c[o>>2]=((
c[t>>2]|0)-(c[(c[j>>2]|0)+20>>2]|0)|0)/8|0;if(!(c[o>>2]|0)){Fb(c[h>>2]|0,c[(c[
j>>2]|0)+20>>2]|0);c[(c[j>>2]|0)+20>>2]=0;if(!(c[p>>2]|0))c[p>>2]=163
}else{if((c[o>>2]|0)>>>0<(((c[k>>2]|0)>>>0)/2|0)>>>0){v=hc
(c[h>>2]|0,8,c[k>>2]|0,c[o>>2]|0,c[(c[j>>2]|0)+20>>2]|0,p)|0;c[(c[j>>
;2]|0)+20>>2]=v;c[p>>2]=0}Bs(c[(c[j>>2]|0)+20>>2]|0,c[o>>2]|0,8,111)}c[(c[j>
;>2]|0)+16>>2]=c[o>>2];v=c[p>>2]|0;i=w;return v|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,l=0,m=0;m=i;i=i+32|0;f=m+16|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m;c[f>>2]=a;c[g>>2]=b;c[h
>>2]=d;c[j>>2]=e;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=10){l=7;break
}e=(Kr(67222+(c[5212+(c[k>>2]<<2)>>2]|0)|0,c[f>>2]|0)|0)==0;d=c[k>>2]|0;if(e)break
;c[k>>2]=d+1}if((l|0)==7){i=m;return}if(c[(c[j>>2]|0)+(d<<2)>>2]|0){i=m;return}c[(c[j>
;>2]|0)+(c[k>>2]<<2)>>2]=1;c[(c[h>>2]|0)+(c[k>>2]<<2)>>
;2]=c[g>>2];i=m;return}function jr(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;d=h+8|0;e=h+4|0;f=h;c[d>
x3e;2]=a;c[e>>2]=b;c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=10){g=6;break}b=c[f
x3e;>2]|0;if((c[d>>2]|0)==(c[5252+(c[f>>2]<<2)>>2]|0))break;c[f>>2]=b+1}if
((g|0)==6){i=h;return}c[(c[e>>2]|0)+(b<<2)>>2]=2;i=h;return}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;j=i;i=i+32|0;d=j+24|0;l=j+20|0;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[l>>2]=a;c[k>>
;2]=b;c[e>>2]=c[l>>2];c[f>>2]=c[k>>2];c[g>>2]=c[c[e>>2]>>2
]&2147483647;c[h>>2]=c[c[f>>2]>>2]&2147483647;do if((c[g>>2]|0)==(c[h>>
;2]|0)){if((c[c[e>>2]>>2]|0)>>>0>(c[c[f>>2]>>2]|0)>>>
0){c[d>>2]=1;break}if((c[c[e>>2]>>2]|0)>>>0<(c[c[f>>2]>>2]|
0)>>>0){c[d>>2]=-1;break}else{c[d>>2]=0;break}}else{if((c[g>>2]|0)>>>
;0>(c[h>>2]|0)>>>0){c[d>>2]=1;break}if((c[g>>2]|0)>>>0<(c[
h>>2]|0)>>>0){c[d>>2]=-1;break}else{c[d>>2]=0;break}}while(0);i=j;return c[d>
x3e;2]|0}function lr(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;m=i;i=i+32|0;d=m+28|0;n=m+24|0;e=m+20|0;j=m+16
|0;g=m+12|0;h=m+8|0;k=m+4|0;f=m;c[n>>2]=a;c[e>>2]=b;c[k>>2]=0;c[j>>2]=c[(c[n>>
2]|0)+20>>2];c[g>>2]=(c[j>>2]|0)+(c[(c[n>>2]|0)+16>>2]<<3)+-8;while(
1){if((c[j>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[h>>2]=(c[j>
x3e;2]|0)+((((c[g>>2]|0)-(c[j>>2]|0)|0)/8|0)>>1<<3);a=c[h>>2]|0;if((c[c[h>
;>2]>>2]|0)==(c[e>>2]|0)){l=4;break}c[f>>2]=c[a>>2]&2147483647;if((c[f>
x3e;2]|0)==(c[e>>2]|0))c[k>>2]=c[h>>2];if((c[j>>2]|0)==(c[g>>2]|0))break;a=c[h
>>2]|0;if((c[f>>2]|0)>>>0<(c[e>>2]|0)>>>0){c[j>>2]=a+
8;continue}else{c[g>>2]=a+-8;continue}}if((l|0)==4)c[k>>2]=a;if(c[k>>2]|0){c[d>>2]=c[(c[
k>>2]|0)+4>>2];n=c[d>>2]|0;i=m;return n|0}else{c[d>>2]=0;n=c[d>>2]|0;i=m;return
n|0}return 0}function mr(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;o=i;i=i+48|0;d=o+32|0;e=o+28|0;m=o+24
|0;g=o+20|0;l=o+16|0;j=o+12|0;k=o+8|0;h=o+4|0;f=o;c[d>>2]=a;c[e>>2]=b;c[m>>2]=0;c[g>>2]=(
c[c[e>>2]>>2]|0)+1;c[l>>2]=0;c[j>>2]=c[(c[d>>2]|0)+16>>2];while(1){if
((c[l>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;c[k>>2]=(c[l>>
;2]|0)+(((c[j>>2]|0)-(c[l>>2]|0)|0)>>>1);c[h>>2]=(c[(c[d>>2]|0)+20>
x3e;2]|0)+(c[k>>2]<<3);a=c[h>>2]|0;if((c[c[h>>2]>>2]|0)==(c[g>>2]|0)){
n=4;break}c[f>>2]=c[a>>2]&2147483647;if((c[f>>2]|0)==(c[g>>2]|0))c[m>>2]=
c[(c[h>>2]|0)+4>>2];a=c[k>>2]|0;if((c[f>>2]|0)>>>0<(c[g>>2
]|0)>>>0){c[l>>2]=a+1;continue}else{c[j>>2]=a;continue}}if((n|0)==4){c[m>>2]=c[a+4
x3e;>2];l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}if(c[m>
x3e;2]|0){l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}c[g>>2]=
0;if((c[l>>2]|0)>>>0>=(c[(c[d>>2]|0)+16>>2]|0)>>>0){l=c[g>
x3e;2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}c[h>>2]=(c[(c[d>>2]|
0)+20>>2]|0)+(c[l>>2]<<3);c[m>>2]=c[(c[h>>2]|0)+4>>2];c[g>>
;2]=c[c[h>>2]>>2]&2147483647;l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>
;>2]|0;i=o;return n|0}function nr(a){a=a|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=a;c[d>>2]=(c[d>>
;2]|0)>>>0>=258?0:a;i=e;return 67307+(b[8388+(c[d>>2]<<1)>>1]|0)|0}function or
(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[e>>2]=a;if((c[e>>2]|0)>>>0>=391){c[
d>>2]=0;a=c[d>>2]|0;i=f;return a|0}else{c[d>>2]=67307+(b[8904+(c[e>>2]<<1)>
;>1]|0);a=c[d>>2]|0;i=f;return a|0}return 0}function pr(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[f>>2]=c[f>>2];b=qc(5292,c[e>>2]|0)|0;i=d;return b|0}function
qr(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;e=h+12|0;f=h+8|0;d=h+4|0;g=h;c[f>>2]=a;c[d>>2]=b;if
(!(c[f>>2]|0)){c[e>>2]=40;g=c[e>>2]|0;i=h;return g|0}c[(c[f>>2]|0)+12>>2]=0;c[(
c[f>>2]|0)+16>>2]=c[d>>2];c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+8>>
;2]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>>2]|0)+24>>2]=0;c[g>>2]=fs(c[d>>
2]|0,71020)|0;if(!(c[g>>2]|0)){c[e>>2]=1;g=c[e>>2]|0;i=h;return g|0}us(c[g>>2]|0,0,2)|0;
d=ps(c[g>>2]|0)|0;c[(c[f>>2]|0)+4>>2]=d;d=c[g>>2]|0;if(c[(c[f>>2]|0)+4>
x3e;2]|0){us(d,0,0)|0;c[(c[f>>2]|0)+12>>2]=c[g>>2];c[(c[f>>2]|0)+20>>2]=25;c[(
c[f>>2]|0)+24>>2]=44;c[e>>2]=0;g=c[e>>2]|0;i=h;return g|0}else{ks(d)|0;c[e>>2]=
81;g=c[e>>2]|0;i=h;return g|0}return 0}function rr(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;m=
i;i=i+32|0;f=m+20|0;g=m+16|0;h=m+12|0;j=m+8|0;k=m+4|0;l=m;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>
x3e;2]=e;if((c[k>>2]|0)==0?(c[h>>2]|0)>>>0>(c[(c[g>>2]|0)+4>>2]|0)
x3e;>>0:0){c[f>>2]=1;a=c[f>>2]|0;i=m;return a|0}c[l>>2]=c[(c[g>>2]|0)+12>
x3e;2];if((c[(c[g>>2]|0)+8>>2]|0)!=(c[h>>2]|0))us(c[l>>2]|0,c[h>>2]|0,0)|0;c[f
>>2]=ts(c[j>>2]|0,1,c[k>>2]|0,c[l>>2]|0)|0;a=c[f>>2]|0;i=m;return a|0}function
sr(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;ks(c[(c[d>>2]|0)+12>>2]|0)|0;c[(c[d>>
;2]|0)+12>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;i=b;return}function tr(){
var a=0,b=0;b=i;i=i+16|0;a=b;c[a>>2]=Fs(16)|0;if(!(c[a>>2]|0)){a=c[a>>2]|0;i=b;return a|0}c[c[a>
;>2]>>2]=0;c[(c[a>>2]|0)+4>>2]=112;c[(c[a>>2]|0)+12>>2]=26;c[(c[a>
x3e;2]|0)+8>>2]=6;a=c[a>>2]|0;i=b;return a|0}function ur(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[f>>2]=c[f>>2];b=Fs(c[e>>2]|0)|0;i=d;return b|0}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;f=i;i=i+16|0;k=f+12|0;j=f+8|0;g=f+4|0;h=f;c[k>>2]=a;c[j
x3e;>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=c[k>>2];c[j>>2]=c[j>>2];d
=Hs(c[h>>2]|0,c[g>>2]|0)|0;i=f;return d|0}function wr(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[f>>2]=c[f>>2];Gs(c[e>>2]|0);i=d;return}function xr(a
){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Gs(c[d>>2]|0);i=b;return}function yr(a){a=a|0;var b=0,d=0;b=i
;i=i+16|0;d=b;c[d>>2]=c[a+60>>2];a=zr(Aa(6,d|0)|0)|0;i=b;return a|0}function zr(a){a=a|0;if(a>>>
;0>4294963200){c[(Ar()|0)>>2]=0-a;a=-1}return a|0}function Ar(){var a=0;if(!(c[18388]|0))a=73596;else a=c[(xa()|0
)+64>>2]|0;return a|0}function Br(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+80|0;f=g;c[b+36>>2]=47;if((c[
b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21505,c[f+8>>2]=g+12,Fa(54,f
|0)|0):0)a[b+75>>0]=-1;f=Cr(b,d,e)|0;i=g;return f|0}function Cr(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;q=i;i=i+48|0;n=q+16|0;m=q;e=q+32|0;o=a+28|0;f=c[o>>2]|0;c[e>>2]=f;p=a+20|0;f=(c[p>
;>2]|0)-f|0;c[e+4>>2]=f;c[e+8>>2]=b;c[e+12>>2]=d;k=a+60|0;l=a+44|0;b=2;f=f+d|0;while(1){if(!(
c[18388]|0)){c[n>>2]=c[k>>2];c[n+4>>2]=e;c[n+8>>2]=b;h=zr(Ka(146,n|0)|0)|0}else{Da(45,a|
0);c[m>>2]=c[k>>2];c[m+4>>2]=e;c[m+8>>2]=b;h=zr(Ka(146,m|0)|0)|0;ra(0)}if((f|0)==(h|0)){
f=6;break}if((h|0)<0){f=8;break}f=f-h|0;g=c[e+4>>2]|0;if(h>>>0<=g>>>0)if((b|0)==
2){c[o>>2]=(c[o>>2]|0)+h;j=g;b=2}else j=g;else{j=c[l>>2]|0;c[o>>2]=j;c[p>>2]=j
;j=c[e+12>>2]|0;h=h-g|0;e=e+8|0;b=b+-1|0}c[e>>2]=(c[e>>2]|0)+h;c[e+4>>2]=j-h}if((f|0)==6
){n=c[l>>2]|0;c[a+16>>2]=n+(c[a+48>>2]|0);a=n;c[o>>2]=a;c[p>>2]=a}else if((f|0
)==8){c[a+16>>2]=0;c[o>>2]=0;c[p>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else
d=d-(c[e+4>>2]|0)|0}i=q;return d|0}function Dr(a){a=a|0;if(!(c[a+68>>2]|0))Er(a);return}function Er(a){a=a|
0;return}function Fr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c
[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((zr(Ha(140,g|0)|0)|0)<0){c[e>
;>2]=-1;a=-1}else a=c[e>>2]|0;i=f;return a|0}function Gr(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;m=i;i=i+48|0;h=m+16|0;g=m;f=m+32|0;c[f>>2]=d;j=f+4|0;l=b+48|0;n=c[l>>2]|0;c[j>>2]=e-((n|0)!=0
&1);k=b+44|0;c[f+8>>2]=c[k>>2];c[f+12>>2]=n;if(!(c[18388]|0)){c[h>>2]=c[b+60>
x3e;2];c[h+4>>2]=f;c[h+8>>2]=2;f=zr(Ja(145,h|0)|0)|0}else{Da(46,b|0);c[g>>2]=c[b+60>>2];
c[g+4>>2]=f;c[g+8>>2]=2;f=zr(Ja(145,g|0)|0)|0;ra(0)}if((f|0)>=1){j=c[j>>2]|0;if(f>>
x3e;0>j>>>0){g=c[k>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-j);if(!(c[l>>
;2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else{c[b>>2]=c[b>>2
]|f&48^16;c[b+8>>2]=0;c[b+4>>2]=0}i=m;return f|0}function Hr(a){a=a|0;if(!(c[a+68>>2]|0))Er(a
);return}function Ir(a){a=a|0;var b=0;b=(Jr(a)|0)==0;return (b?a:a|32)|0}function Jr(a){a=a|0;return (a+-65|0)>>>
0<26|0}function Kr(b,c){b=b|0;c=c|0;var d=0,e=0;e=a[b>>0]|0;d=a[c>>0]|0;if(e<<24>>24
==0?1:e<<24>>24!=d<<24>>24)c=e;else{do{b=b+1|0;c=c+1|0;e=a[b>>0]|0;d=a[c>
x3e;0]|0}while(!(e<<24>>24==0?1:e<<24>>24!=d<<24>>24));c=e}return (c
&255)-(d&255)|0}function Lr(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;if(!e)c=0;else{f=a[b>>0]|0;a:do if(!(f<
;<24>>24))f=0;else while(1){e=e+-1|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>
;>24&((e|0)!=0&g<<24>>24!=0)))break a;b=b+1|0;c=c+1|0;f=a[b>>0]|0;if(!(f<<
;24>>24)){f=0;break}}while(0);c=(f&255)-(d[c>>0]|0)|0}return c|0}function Mr(b){b=b|0;var d=0,e=0;d=b+74
|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+44|0;if((c[d>>2]|0)>>>0>(c[e>
x3e;2]|0)>>>0)Oa[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[b+28>>2]=0;c[d>
x3e;2]=0;d=c[b>>2]|0;if(d&20)if(!(d&4))d=-1;else{c[b>>2]=d|32;d=-1}else{d=c[e>>2]|0;c[b+
8>>2]=d;c[b+4>>2]=d;d=0}return d|0}function Nr(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;s=i;i=i+224|0;o=s+120|0;r=s+80|0;q=s;p=s+136|0;f=r;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(
g|0));c[o>>2]=c[e>>2];if((Or(0,d,o,q,r)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)m=_r(b)|0;else
m=0;e=c[b>>2]|0;n=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;e=b+48|0;if(!(c[e>
x3e;2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=p;j=b+28|0;c[j>>2]=p;k=b+20|0;c[k>>2]=p;c[e>
;>2]=80;l=b+16|0;c[l>>2]=p+80;f=Or(b,d,o,q,r)|0;if(h){Oa[c[b+36>>2]&63](b,0,0)|0;f=(c[k>>
;2]|0)==0?-1:f;c[g>>2]=h;c[e>>2]=0;c[l>>2]=0;c[j>>2]=0;c[k>>2]=0}}else f=Or(b,
d,o,q,r)|0;e=c[b>>2]|0;c[b>>2]=e|n;if(m|0)Er(b);e=(e&32|0)==0?f:-1}i=s;return e|0}function Or(e,f,g,j,l
){e=e|0;f=f|0;g=g|0;j=j|0;l=l|0;var m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,
J=0,K=0,L=0,M=0,N=0,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;ia=i;i=i+624
|0;da=ia+24|0;fa=ia+16|0;ea=ia+588|0;aa=ia+576|0;ca=ia;W=ia+536|0;ha=ia+8|0;ga=ia+528|0;M=(e|0)!=0;N=W+40|0;V=N;W=W+39|0;X=ha+4|
0;Y=ea;Z=0-Y|0;$=aa+12|0;aa=aa+11|0;ba=$;O=ba-Y|0;P=-2-Y|0;Q=ba+2|0;R=da+288|0;S=ea+9|0;T=S;U=ea+8|0;m=0;o=0;n=0;y=f;a:while(1){
do if((m|0)>-1)if((o|0)>(2147483647-m|0)){c[(Ar()|0)>>2]=75;m=-1;break}else{m=o+m|0;break}while(0);f=a[y>
;>0]|0;if(!(f<<24>>24)){L=244;break}else o=y;b:while(1){switch(f<<24>>24){case 37:{
f=o;L=9;break b}case 0:{f=o;break b}default:{}}K=o+1|0;f=a[K>>0]|0;o=K}c:do if((L|0)==9)while(1){L=0;if((a[f+1>
x3e;0]|0)!=37)break c;o=o+1|0;f=f+2|0;if((a[f>>0]|0)==37)L=9;else break}while(0);w=o-y|0;if(M?(c[e>>2]&
32|0)==0:0)Pr(y,w,e)|0;if((o|0)!=(y|0)){o=w;y=f;continue}r=f+1|0;o=a[r>>0]|0;p=(o<<24>>24)+-48|0;if
(p>>>0<10){K=(a[f+2>>0]|0)==36;r=K?f+3|0:r;o=a[r>>0]|0;u=K?p:-1;n=K?1:n}else u=-1;f=o<
;<24>>24;d:do if((f&-32|0)==32){p=0;while(1){if(!(1<<f+-32&75913)){s=p;break d}p=1<<
;(o<<24>>24)+-32|p;r=r+1|0;o=a[r>>0]|0;f=o<<24>>24;if((f&-32|0)!=32){s=p;
break}}}else s=0;while(0);do if(o<<24>>24==42){o=r+1|0;f=(a[o>>0]|0)+-48|0;if(f>>>0
<10?(a[r+2>>0]|0)==36:0){c[l+(f<<2)>>2]=10;n=1;r=r+3|0;f=c[j+((a[o>>0]|0)+-48<
x3c;3)>>2]|0}else{if(n|0){m=-1;break a}if(!M){v=s;n=0;r=o;K=0;break}n=(c[g>>2]|0)+(4-1)&~(4-1);f=c[n>
;>2]|0;c[g>>2]=n+4;n=0;r=o}if((f|0)<0){v=s|8192;K=0-f|0}else{v=s;K=f}}else{p=(o<<24>>24)+-
48|0;if(p>>>0<10){f=r;o=0;do{o=(o*10|0)+p|0;f=f+1|0;p=(a[f>>0]|0)+-48|0}while(p>>>0
<10);if((o|0)<0){m=-1;break a}else{v=s;r=f;K=o}}else{v=s;K=0}}while(0);e:do if((a[r>>0]|0)==46){f=r+1|0;o=a[
f>>0]|0;if(o<<24>>24!=42){p=(o<<24>>24)+-48|0;if(p>>>0<10)
o=0;else{s=0;break}while(1){o=(o*10|0)+p|0;f=f+1|0;p=(a[f>>0]|0)+-48|0;if(p>>>0>=10){s=o;break e}}}
f=r+2|0;o=(a[f>>0]|0)+-48|0;if(o>>>0<10?(a[r+3>>0]|0)==36:0){c[l+(o<<2)>
x3e;2]=10;s=c[j+((a[f>>0]|0)+-48<<3)>>2]|0;f=r+4|0;break}if(n|0){m=-1;break a}if(M){J=(c[g>
x3e;2]|0)+(4-1)&~(4-1);s=c[J>>2]|0;c[g>>2]=J+4}else s=0}else{s=-1;f=r}while(0);t=0;while(1){o=(a[f>
;>0]|0)+-65|0;if(o>>>0>57){m=-1;break a}p=f+1|0;o=a[71023+(t*58|0)+o>>0]|0;r=o&255;if((r
+-1|0)>>>0<8){f=p;t=r}else{J=p;break}}if(!(o<<24>>24)){m=-1;break}p=(u|0)>-1;do if(
o<<24>>24==19)if(p){m=-1;break a}else L=52;else{if(p){c[l+(u<<2)>>2]=r;H=j+(u<<
;3)|0;I=c[H+4>>2]|0;L=ca;c[L>>2]=c[H>>2];c[L+4>>2]=I;L=52;break}if(!M){m=0;break a}Rr(ca
,r,g)}while(0);if((L|0)==52?(L=0,!M):0){o=w;y=J;continue}u=a[f>>0]|0;u=(t|0)!=0&(u&15|0)==3?u&-33:u;p=v
&-65537;I=(v&8192|0)==0?v:p;f:do switch(u|0){case 110:switch(t|0){case 0:{c[c[ca>>2]>>2]=m;o=w;y=J
;continue a}case 1:{c[c[ca>>2]>>2]=m;o=w;y=J;continue a}case 2:{o=c[ca>>2]|0;c[o>>2]=m;c
[o+4>>2]=((m|0)<0)<<31>>31;o=w;y=J;continue a}case 3:{b[c[ca>>2]>>1]=m;o=
w;y=J;continue a}case 4:{a[c[ca>>2]>>0]=m;o=w;y=J;continue a}case 6:{c[c[ca>>2]>>2]=m;o=
w;y=J;continue a}case 7:{o=c[ca>>2]|0;c[o>>2]=m;c[o+4>>2]=((m|0)<0)<<31>>
31;o=w;y=J;continue a}default:{o=w;y=J;continue a}}case 112:{t=I|8;s=s>>>0>8?s:8;u=120;L=64;break}case 88:case
120:{t=I;L=64;break}case 111:{p=ca;o=c[p>>2]|0;p=c[p+4>>2]|0;if((o|0)==0&(p|0)==0)f=N;else{f=N;do{f=f+-
1|0;a[f>>0]=o&7|48;o=Os(o|0,p|0,3)|0;p=C}while(!((o|0)==0&(p|0)==0))}if(!(I&8)){o=I;t=0;r=71503;L=77}else
{t=V-f|0;o=I;s=(s|0)>(t|0)?s:t+1|0;t=0;r=71503;L=77}break}case 105:case 100:{o=ca;f=c[o>>2]|0;o=c[o+4>>
2]|0;if((o|0)<0){f=Ls(0,0,f|0,o|0)|0;o=C;p=ca;c[p>>2]=f;c[p+4>>2]=o;p=1;r=71503;L=76;break f}if(!(I&
;2048)){r=I&1;p=r;r=(r|0)==0?71503:71505;L=76}else{p=1;r=71504;L=76}break}case 117:{o=ca;f=c[o>>2]|0;o=c[o+4>
;>2]|0;p=0;r=71503;L=76;break}case 99:{a[W>>0]=c[ca>>2];f=W;u=1;w=0;v=71503;o=N;break}case 109:{o=Tr(c[(
Ar()|0)>>2]|0)|0;L=82;break}case 115:{o=c[ca>>2]|0;o=o|0?o:73405;L=82;break}case 67:{c[ha>>2]=c[ca
>>2];c[X>>2]=0;c[ca>>2]=ha;f=ha;s=-1;L=86;break}case 83:{f=c[ca>>2]|0;if(!s){Vr(e,32,K,0
,I);f=0;L=97}else L=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{q=+h[ca>>3];c[fa>
;>2]=0;h[k>>3]=q;if((c[k+4>>2]|0)>=0)if(!(I&2048)){H=I&1;G=H;H=(H|0)==0?73413:73418}else
{G=1;H=73415}else{q=-q;G=1;H=73412}h[k>>3]=q;F=c[k+4>>2]&2146435072;do if(F>>>0<2146435072
|(F|0)==2146435072&0<0){x=+Yr(q,fa)*2.0;o=x!=0.0;if(o)c[fa>>2]=(c[fa>>2]|0)+-1;D=u|32;if((D|0)==97
){v=u&32;y=(v|0)==0?H:H+9|0;w=G|2;f=12-s|0;do if(!(s>>>0>11|(f|0)==0)){q=8.0;do{f=f+-1|0;q=q*16.0}while
((f|0)!=0);if((a[y>>0]|0)==45){q=-(q+(-x-q));break}else{q=x+q-q;break}}else q=x;while(0);o=c[fa>>2]|0;f=(o|0
)<0?0-o|0:o;f=Sr(f,((f|0)<0)<<31>>31,$)|0;if((f|0)==($|0)){a[aa>>0]=48;f=aa}a[f+-1>
x3e;0]=(o>>31&2)+43;t=f+-2|0;a[t>>0]=u+15;r=(s|0)<1;p=(I&8|0)==0;o=ea;while(1){H=~~q;f=o+1|0;
a[o>>0]=d[71487+H>>0]|v;q=(q-+(H|0))*16.0;do if((f-Y|0)==1){if(p&(r&q==0.0))break;a[f>>0
]=46;f=o+2|0}while(0);if(!(q!=0.0))break;else o=f}p=t;s=(s|0)!=0&(P+f|0)<(s|0)?Q+s-p|0:O-p+f|0;r=s+w|0;Vr(e,32,K,r,I);
if(!(c[e>>2]&32))Pr(y,w,e)|0;Vr(e,48,K,r,I^65536);o=f-Y|0;if(!(c[e>>2]&32))Pr(ea,o,e)|0;f=ba-p|0;Vr
(e,48,s-(o+f)|0,0,0);if(!(c[e>>2]&32))Pr(t,f,e)|0;Vr(e,32,K,r,I^8192);f=(r|0)<(K|0)?K:r;break}f=(s|0)<0
?6:s;if(o){o=(c[fa>>2]|0)+-28|0;c[fa>>2]=o;q=x*268435456.0}else{q=x;o=c[fa>>2]|0}F=(o|0)<0?da
:R;E=F;o=F;do{B=~~q>>>0;c[o>>2]=B;o=o+4|0;q=(q-+(B>>>0))*1.0e9}while(q!=0.0);p=o;o=c[fa
x3e;>2]|0;if((o|0)>0){s=F;while(1){t=(o|0)>29?29:o;r=p+-4|0;do if(r>>>0<s>>>0)
r=s;else{o=0;do{B=Ps(c[r>>2]|0,0,t|0)|0;B=Ms(B|0,C|0,o|0,0)|0;o=C;A=$s(B|0,o|0,1e9,0)|0;c[r>>2]=A;o=_s(B|0,o
|0,1e9,0)|0;r=r+-4|0}while(r>>>0>=s>>>0);if(!o){r=s;break}r=s+-4|0;c[r>>2]=o}while(
0);while(1){if(p>>>0<=r>>>0)break;o=p+-4|0;if(!(c[o>>2]|0))p=o;else break}o=(c[fa
x3e;>2]|0)-t|0;c[fa>>2]=o;if((o|0)>0)s=r;else break}}else r=F;if((o|0)<0){y=((f+25|0)/9|0)+1|0;z=(D|0)==
102;v=r;while(1){w=0-o|0;w=(w|0)>9?9:w;do if(v>>>0<p>>>0){o=(1<<w)+-1|0;s=1e9
x3e;>>w;r=0;t=v;do{B=c[t>>2]|0;c[t>>2]=(B>>>w)+r;r=_(B&o,s)|0;t=t+4|0}while(t
x3e;>>0<p>>>0);o=(c[v>>2]|0)==0?v+4|0:v;if(!r){r=o;break}c[p>>2]=r;r=o;p=p+4|0
}else r=(c[v>>2]|0)==0?v+4|0:v;while(0);o=z?F:r;p=(p-o>>2|0)>(y|0)?o+(y<<2)|0:p;o=(c[fa>
x3e;2]|0)+w|0;c[fa>>2]=o;if((o|0)>=0){z=r;break}else v=r}}else z=r;do if(z>>>0<p>>
x3e;0){o=(E-z>>2)*9|0;s=c[z>>2]|0;if(s>>>0<10)break;else r=10;do{r=r*10|0;o=o+1|0}while(
s>>>0>=r>>>0)}else o=0;while(0);A=(D|0)==103;B=(f|0)!=0;r=f-((D|0)!=102?o:0)+((B&A)<
;<31>>31)|0;if((r|0)<(((p-E>>2)*9|0)+-9|0)){t=r+9216|0;r=F+4+(((t|0)/9|0)+-1024<<2)|0;t=((
t|0)%9|0)+1|0;if((t|0)<9){s=10;do{s=s*10|0;t=t+1|0}while((t|0)!=9)}else s=10;w=c[r>>2]|0;y=(w>>>0)%(
s>>>0)|0;t=(r+4|0)==(p|0);do if(t&(y|0)==0)s=z;else{x=(((w>>>0)/(s>>>0)|0)&
;1|0)==0?9007199254740992.0:9007199254740994.0;v=(s|0)/2|0;if(y>>>0<v>>>0)q=.5;else q=t&(
y|0)==(v|0)?1.0:1.5;do if(G){if((a[H>>0]|0)!=45)break;x=-x;q=-q}while(0);t=w-y|0;c[r>>2]=t;if(!(x+q!=x)){s=z
;break}D=t+s|0;c[r>>2]=D;if(D>>>0>999999999){o=z;while(1){s=r+-4|0;c[r>>2]=0;if(s>
x3e;>0<o>>>0){o=o+-4|0;c[o>>2]=0}D=(c[s>>2]|0)+1|0;c[s>>2]=D;if(D>
x3e;>0>999999999)r=s;else{v=o;r=s;break}}}else v=z;o=(E-v>>2)*9|0;t=c[v>>2]|0;if(t>>>
;0<10){s=v;break}else s=10;do{s=s*10|0;o=o+1|0}while(t>>>0>=s>>>0);s=v}while(0);D=r+4|0;
z=s;p=p>>>0>D>>>0?D:p}w=0-o|0;while(1){if(p>>>0<=z>>>0){y=
0;D=p;break}r=p+-4|0;if(!(c[r>>2]|0))p=r;else{y=1;D=p;break}}do if(A){f=(B&1^1)+f|0;if((f|0)>(o|0)&(o|0
)>-5){u=u+-1|0;f=f+-1-o|0}else{u=u+-2|0;f=f+-1|0}p=I&8;if(p|0)break;do if(y){p=c[D+-4>>2]|0;if(!p){r=9;break
}if(!((p>>>0)%10|0)){s=10;r=0}else{r=0;break}do{s=s*10|0;r=r+1|0}while(!((p>>>0)%(s>>>
;0)|0|0))}else r=9;while(0);p=((D-E>>2)*9|0)+-9|0;if((u|32|0)==102){p=p-r|0;p=(p|0)<0?0:p;f=(f|0)<(p|0)?f:p;
p=0;break}else{p=p+o-r|0;p=(p|0)<0?0:p;f=(f|0)<(p|0)?f:p;p=0;break}}else p=I&8;while(0);v=f|p;s=(v|0)!=0&1;t
=(u|32|0)==102;if(t){o=(o|0)>0?o:0;u=0}else{r=(o|0)<0?w:o;r=Sr(r,((r|0)<0)<<31>>31,$)|0;if((ba
-r|0)<2)do{r=r+-1|0;a[r>>0]=48}while((ba-r|0)<2);a[r+-1>>0]=(o>>31&2)+43;E=r+-2|0;a
[E>>0]=u;o=ba-E|0;u=E}w=G+1+f+s+o|0;Vr(e,32,K,w,I);if(!(c[e>>2]&32))Pr(H,G,e)|0;Vr(e,48,K,w,I^65536);do
if(t){r=z>>>0>F>>>0?F:z;o=r;do{p=Sr(c[o>>2]|0,0,S)|0;do if((o|0)==(r|0)){if((p|0)!=(
S|0))break;a[U>>0]=48;p=U}else{if(p>>>0<=ea>>>0)break;Ns(ea|0,48,p-Y|0)|0;do p=p+-1
|0;while(p>>>0>ea>>>0)}while(0);if(!(c[e>>2]&32))Pr(p,T-p|0,e)|0;o=o+4|0}while
(o>>>0<=F>>>0);do if(v|0){if(c[e>>2]&32|0)break;Pr(73447,1,e)|0}while(0);if((f
|0)>0&o>>>0<D>>>0){p=o;while(1){o=Sr(c[p>>2]|0,0,S)|0;if(o>>>
;0>ea>>>0){Ns(ea|0,48,o-Y|0)|0;do o=o+-1|0;while(o>>>0>ea>>>0)}if(!(c[e
x3e;>2]&32))Pr(o,(f|0)>9?9:f,e)|0;p=p+4|0;o=f+-9|0;if(!((f|0)>9&p>>>0<D>>
x3e;0)){f=o;break}else f=o}}Vr(e,48,f+9|0,9,0)}else{t=y?D:z+4|0;if((f|0)>-1){s=(p|0)==0;r=z;do{o=Sr(c[r>>2]|0,0,S
)|0;if((o|0)==(S|0)){a[U>>0]=48;o=U}do if((r|0)==(z|0)){p=o+1|0;if(!(c[e>>2]&32))Pr(o,1,e)|0;if(s&(
f|0)<1){o=p;break}if(c[e>>2]&32|0){o=p;break}Pr(73447,1,e)|0;o=p}else{if(o>>>0<=ea>
x3e;>0)break;Ns(ea|0,48,o+Z|0)|0;do o=o+-1|0;while(o>>>0>ea>>>0)}while(0);p=T-o|0;if(!(c
[e>>2]&32))Pr(o,(f|0)>(p|0)?p:f,e)|0;f=f-p|0;r=r+4|0}while(r>>>0<t>>>0&
;(f|0)>-1)}Vr(e,48,f+18|0,18,0);if(c[e>>2]&32|0)break;Pr(u,ba-u|0,e)|0}while(0);Vr(e,32,K,w,I^8192);f=(w|0)
x3c;(K|0)?K:w}else{t=(u&32|0)!=0;s=q!=q|0.0!=0.0;o=s?0:G;r=o+3|0;Vr(e,32,K,r,p);f=c[e>>2]|0;if(!(f&32)){Pr(H
,o,e)|0;f=c[e>>2]|0}if(!(f&32))Pr(s?(t?73439:73443):t?73431:73435,3,e)|0;Vr(e,32,K,r,I^8192);f=(r|0)<(K|0)?K
:r}while(0);o=f;y=J;continue a}default:{f=y;p=I;u=s;w=0;v=71503;o=N}}while(0);g:do if((L|0)==64){p=ca;o=c[p>>2]|0;p=c[
p+4>>2]|0;r=u&32;if(!((o|0)==0&(p|0)==0)){f=N;do{f=f+-1|0;a[f>>0]=d[71487+(o&15)>>0
]|r;o=Os(o|0,p|0,4)|0;p=C}while(!((o|0)==0&(p|0)==0));L=ca;if((t&8|0)==0|(c[L>>2]|0)==0&(c[L+4>>
;2]|0)==0){o=t;t=0;r=71503;L=77}else{o=t;t=2;r=71503+(u>>4)|0;L=77}}else{f=N;o=t;t=0;r=71503;L=77}}else if((L|0)==76){
f=Sr(f,o,N)|0;o=I;t=p;L=77}else if((L|0)==82){L=0;I=Ur(o,0,s)|0;H=(I|0)==0;f=o;u=H?s:I-o|0;w=0;v=71503;o=H?o+s|0:I}else if((L|0)==
86){L=0;p=0;o=0;t=f;while(1){r=c[t>>2]|0;if(!r)break;o=Wr(ga,r)|0;if((o|0)<0|o>>>0>(s-p|0)>
;>>0)break;p=o+p|0;if(s>>>0>p>>>0)t=t+4|0;else break}if((o|0)<0){m=-1;break a}
Vr(e,32,K,p,I);if(!p){f=0;L=97}else{r=0;while(1){o=c[f>>2]|0;if(!o){f=p;L=97;break g}o=Wr(ga,o)|0;r=o+r|0;if((r|0)>
;(p|0)){f=p;L=97;break g}if(!(c[e>>2]&32))Pr(ga,o,e)|0;if(r>>>0>=p>>>0){f=p;L=
97;break}else f=f+4|0}}}while(0);if((L|0)==97){L=0;Vr(e,32,K,f,I^8192);o=(K|0)>(f|0)?K:f;y=J;continue}if((L|0)==77){L=0;p=(
s|0)>-1?o&-65537:o;o=ca;o=(c[o>>2]|0)!=0|(c[o+4>>2]|0)!=0;if((s|0)!=0|o){u=(o&1^1)+(V-f)|0;u=(
s|0)>(u|0)?s:u;w=t;v=r;o=N}else{f=N;u=0;w=t;v=r;o=N}}t=o-f|0;r=(u|0)<(t|0)?t:u;s=w+r|0;o=(K|0)<(s|0)?s:K;Vr(e,32,
o,s,p);if(!(c[e>>2]&32))Pr(v,w,e)|0;Vr(e,48,o,s,p^65536);Vr(e,48,r,t,0);if(!(c[e>>2]&32))Pr(f,t,e)|
0;Vr(e,32,o,s,p^8192);y=J}h:do if((L|0)==244)if(!e)if(n){m=1;while(1){n=c[l+(m<<2)>>2]|0;if(!n)break;Rr(j+(m
<<3)|0,n,g);m=m+1|0;if((m|0)>=10){m=1;break h}}if((m|0)<10)while(1){if(c[l+(m<<2)>>2]|0){
m=-1;break h}m=m+1|0;if((m|0)>=10){m=1;break}}else m=1}else m=0;while(0);i=ia;return m|0}function Pr(b,d,e){b=b|0;d=d|0;e=e
|0;var f=0,g=0,h=0,i=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(Qr(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((
h|0)==5){i=e+20|0;f=c[i>>2]|0;h=f;if((g-f|0)>>>0<d>>>0){f=Oa[c[e+36>>2]
x26;63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){f=d;while(1){if(!f){g=h;f=0;break b}g=f+-1|0;if((a[b+g>>
;0]|0)==10)break;else f=g}if((Oa[c[e+36>>2]&63](e,b,f)|0)>>>0<f>>>0)break a;d=
d-f|0;b=b+f|0;g=c[i>>2]|0}else{g=h;f=0}while(0);Ss(g|0,b|0,d|0)|0;c[i>>2]=(c[i>>2]|0)+d;f=f+d|0}while
(0);return f|0}function Qr(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if
(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;d=c[b+44>>2]|0;c[b+28>>2]=d;c[b+20>>2]=d
;c[b+16>>2]=d+(c[b+48>>2]|0);d=0}else{c[b>>2]=d|32;d=-1}return d|0}function Rr(a,b,d){a=a|0;b=b|0;
d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b
=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e
x3e;>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break
a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4
x3e;>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d
x3e;>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f
x3e;>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((
e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>
;>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1
);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>
;2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;
c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&
;~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1
);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function Sr(b,
c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295)while(1){e=$s(b
|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e|48;e=_s(b|0,c|0,10,0)|0;if(c>>>0>9|(c|0)==9&b>>
x3e;0>4294967295){b=e;c=C}else{b=e;break}}if(b)while(1){d=d+-1|0;a[d>>0]=(b>>>0)%10|0|48;if(b>
;>>0<10)break;else b=(b>>>0)/10|0}return d|0}function Tr(b){b=b|0;var c=0,e=0;c=0;while(1){if((d[71513
+c>>0]|0)==(b|0)){e=2;break}c=c+1|0;if((c|0)==87){c=87;b=71601;e=5;break}}if((e|0)==2)if(!c)b=71601;else{b=71601;e=5}if
((e|0)==5)while(1){e=b;while(1){b=e+1|0;if(!(a[e>>0]|0))break;else e=b}c=c+-1|0;if(!c)break;else e=5}return b|0}function
Ur(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if
((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5
;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24
>>24){f=_(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144
)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e
){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(
0);return (e|0?b:0)|0}function Vr(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;j=i;i=i+256|0;h=j;do if((d|0)>(e
|0)&(f&73728|0)==0){f=d-e|0;Ns(h|0,b|0,(f>>>0>256?256:f)|0)|0;b=c[a>>2]|0;g=(b&32|0
)==0;if(f>>>0>255){e=d-e|0;do{if(g){Pr(h,256,a)|0;b=c[a>>2]|0}f=f+-256|0;g=(b&32|0)==0}while(
f>>>0>255);if(g)f=e&255;else break}else if(!g)break;Pr(h,f,a)|0}while(0);i=j;return}function Wr(a,b){a=
a|0;b=b|0;if(!a)a=0;else a=Xr(a,b,0)|0;return a|0}function Xr(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128
){a[b>>0]=d;b=1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0
]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224
;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>
;0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>
x3e;0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(Ar()|0)>>2]=84;b=-1;break}}
else b=1;while(0);return b|0}function Yr(a,b){a=+a;b=b|0;return +(+Zr(a,b))}function Zr(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[k>
;>3]=a;d=c[k>>2]|0;e=c[k+4>>2]|0;f=Os(d|0,e|0,52)|0;f=f&2047;switch(f|0){case 0:{if(a!=0.0){a=+Zr(
a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>
x3e;2]=f+-1022;c[k>>2]=d;c[k+4>>2]=e&-2146435073|1071644672;a=+h[k>>3]}}return +a}function _r
(a){a=a|0;return 0}function $r(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)d=0;else{f=d;e=b;while(1){b=a[e>>0]|0;d
=a[c>>0]|0;if(b<<24>>24!=d<<24>>24)break;f=f+-1|0;if(!f){d=0;break a}else{e=e+
1|0;c=c+1|0}}d=(b&255)-(d&255)|0}while(0);return d|0}function as(a,b,c){a=a|0;b=b|0;c=c|0;bs(a,b,c)|0;return a|0}function
bs(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;do if(!((g^b)&3)){f=(e|0)!=0;a:do if(f&(g&3|0)!=0)while(1){g=a[d
>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0;if(!(f&
;(d&3|0)!=0)){h=5;break}}else h=5;while(0);if((h|0)==5)if(!f){e=0;break}if(a[d>>0]|0){b:do if(e>>>
0>3)do{f=c[d>>2]|0;if((f&-2139062144^-2139062144)&f+-16843009|0)break b;c[b>>2]=f;e=e+-4|0;d=
d+4|0;b=b+4|0}while(e>>>0>3);while(0);h=11}}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a
[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|
0}while(0);Ns(b|0,0,e|0)|0;return b|0}function cs(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=b;b=f;while(1){if(!(
a[d>>0]|0))break a;d=d+1|0;b=d;if(!(b&3)){b=d;e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if
(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;
while((a[b>>0]|0)!=0)}return b-f|0}function ds(a,b){a=a|0;b=b|0;es(a,b)|0;return a|0}function es(b,d){b=b|0;d=d|0;var
e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24
))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){
f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break
;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+
1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function fs(b,d){b=b|0;
d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+32|0;f=g+16|0;e=g;if(Ur(73449,a[d>>0]|0,4)|0){h=gs(d)|0|32768;c[e>>2]=b;c[
e+4>>2]=h;c[e+8>>2]=438;e=zr(Ca(5,e|0)|0)|0;if((e|0)>=0){b=js(e,d)|0;if(!b){c[f>>2]=e;Aa(6,f|
0)|0;b=0}}else b=0}else{c[(Ar()|0)>>2]=22;b=0}i=g;return b|0}function gs(b){b=b|0;var c=0,d=0,e=0;d=(hs(b,43)|0)==0;c=
a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(hs(b,120)|0)==0;d=e?d:d|128;b=(hs(b,101)|0)==0;b=b?d:d|524288
;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==
97?b|1024:b)|0}function hs(b,c){b=b|0;c=c|0;b=is(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?
b:0)|0}function is(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(cs(b)|0)|0;else{if(b&3){e=d&255;do{g=
a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b
=b+1|0}while((b&3|0)!=0)}f=_(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009
))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144
^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g
x3c;<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function js(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;o=i;i=i+112|0;n=o+40|0;l=o+24|0;k=o+16|0;g=o;m=o+52|0;f=a[d>>0]|0;if(Ur(73449
,f<<24>>24,4)|0){e=Fs(1144)|0;if(!e)e=0;else{h=e;j=h+112|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(
j|0));if(!(hs(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(hs(d,101)|0){c[g>>2]=b;c[g+4>
x3e;2]=2;c[g+8>>2]=1;sa(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[k>>2]=b;c[k
+4>>2]=3;f=sa(221,k|0)|0;if(!(f&1024)){c[l>>2]=b;c[l+4>>2]=4;c[l+8>>2]=f|1024;sa(221
,l|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+120
;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21505,c[n+8
>>2]=m,(Fa(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=48;c[e+36>>2]=47;c[e+40>>2]=
32;c[e+12>>2]=33;if(!(c[18389]|0))c[e+76>>2]=-1;ua(73580);f=c[18394]|0;c[e+56>>2]=f;if(f|0)c[f+52
x3e;>2]=e;c[18394]=e;Ga(73580)}}else{c[(Ar()|0)>>2]=22;e=0}i=o;return e|0}function ks(a){a=a|0;var b=0,d=0,e=0;e=(
c[a>>2]&1|0)!=0;if(!e){ua(73580);d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];
b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[18394]|0)==(a|0))c[18394]=b;Ga(73580)}b=ls(a)|0;b=Ta[c[a+12>>
;2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)Gs(d);if(!e)Gs(a);return b|0}function ls(a){a=a|0;var b=0,d=0;do if(a){if((c
[a+76>>2]|0)<=-1){b=ms(a)|0;break}d=(_r(a)|0)==0;b=ms(a)|0;if(!d)Er(a)}else{if(!(c[1356]|0))b=0;else b=ls(c[1356]|
0)|0;ua(73580);a=c[18394]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=_r(a)|0;else d=0;if((c[a+20>>2]|0)>>
;>0>(c[a+28>>2]|0)>>>0)b=ms(a)|0|b;if(d|0)Er(a);a=c[a+56>>2]|0}while((a|0)!=0);Ga(73580
)}while(0);return b|0}function ms(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;g=a+28|0;if((c[b>>2]|0)>>>
;0>(c[g>>2]|0)>>>0?(Oa[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)b=-1;else
{h=a+4|0;d=c[h>>2]|0;e=a+8|0;f=c[e>>2]|0;if(d>>>0<f>>>0)Oa[c[a+40>
x3e;2]&63](a,d-f|0,1)|0;c[a+16>>2]=0;c[g>>2]=0;c[b>>2]=0;c[e>>2]=0;c[h>>2
]=0;b=0}return b|0}function ns(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>
x3e;0>(c[a+28>>2]|0)>>>0?2:1;b=Oa[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a
+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function os(a){a=a|0;
var b=0;if((c[a+76>>2]|0)>-1){b=(_r(a)|0)==0;a=ns(a)|0}else a=ns(a)|0;return a|0}function ps(a){a=a|0;return os(a
)|0}function qs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(_r(a)|0)==0;b=rs(a,b,d)|0;if(!e)Er(a)}else
b=rs(a,b,d)|0;return b|0}function rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>
x3e;2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Oa[c[a+
36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>
;2]=0;if((Oa[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>
;2]=c[a>>2]&-17;b=0}}return b|0}function ss(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;b=Nr
(c[1327]|0,a,e)|0;i=d;return b|0}function ts(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;j=_(e,d)|0;if((c[f+76
x3e;>2]|0)>-1)k=_r(f)|0;else k=0;g=f+74|0;i=a[g>>0]|0;a[g>>0]=i+255|i;g=f+4|0;i=c[g>>2]|
0;h=(c[f+8>>2]|0)-i|0;if((h|0)>0){h=h>>>0<j>>>0?h:j;Ss(b|0,i|0,h|0)|0;c[g>
;>2]=i+h;b=b+h|0;g=j-h|0}else g=j;a:do if(!g)l=13;else{i=f+32|0;h=g;while(1){if(Mr(f)|0){e=h;break}g=Oa[c[i>>2]
x26;63](f,b,h)|0;if((g+1|0)>>>0<2){e=h;break}if((h|0)==(g|0)){l=13;break a}else{b=b+g|0;h=h-g|0}}if(k|0)Er(f
);e=((j-e|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(k)Er(f);return e|0}function us(a,b,c){a=a|0;b
=b|0;c=c|0;return qs(a,b,c)|0}function vs(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;w=i;i=i+1056|0;u=w+1024|0;v=w;k=a[e>>0]|0;do if(k<<24>>24){t=hs(b,k<<24>>24
)|0;if(t){j=a[e+1>>0]|0;if(j<<24>>24){f=t+1|0;m=a[f>>0]|0;if(m<<24>>
24){h=a[e+2>>0]|0;if(!(h<<24>>24)){j=j&255|(k&255)<<8;b=m;g=d[t>>0]
x3c;<8|m&255;while(1){g=g&65535;if((g|0)==(j|0))break;f=f+1|0;h=a[f>>0]|0;if(!(h<<24>>
;24)){b=0;break}else{b=h;g=h&255|g<<8}}b=b<<24>>24?f+-1|0:0;break}f=t+2|0;b=a[f>>0]|
0;if(b<<24>>24){g=a[e+3>>0]|0;if(!(g<<24>>24)){h=(j&255)<<16|(k
&255)<<24|(h&255)<<8;g=(b&255)<<8|(m&255)<<16|d[t>>0]<
;<24;if((g|0)!=(h|0))do{f=f+1|0;b=a[f>>0]|0;g=(b&255|g)<<8}while(!(b<<24>>24==
0|(g|0)==(h|0)));b=b<<24>>24?f+-2|0:0;break}f=t+3|0;l=a[f>>0]|0;if(l<<24>>24){
if(!(a[e+4>>0]|0)){h=(j&255)<<16|(k&255)<<24|(h&255)<<8|g&255;b=(b
x26;255)<<8|(m&255)<<16|l&255|d[t>>0]<<24;if((b|0)==(h|0))b=l;else{g=b;do{f=f+
1|0;b=a[f>>0]|0;g=b&255|g<<8}while(!(b<<24>>24==0|(g|0)==(h|0)))}b=b<<24
x3e;>24?f+-3|0:0;break};c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[u+12>>2]=0;c[u+16>
x3e;2]=0;c[u+20>>2]=0;c[u+24>>2]=0;c[u+28>>2]=0;b=k;g=0;while(1){if(!(a[t+g>>0]|0)){b=0;
break}f=u+(((b&255)>>>5&255)<<2)|0;c[f>>2]=c[f>>2]|1<<(b&31
);f=g+1|0;c[v+((b&255)<<2)>>2]=f;b=a[e+f>>0]|0;if(!(b<<24>>24)){n=23;break
}else g=f}a:do if((n|0)==23){b:do if(f>>>0>1){h=1;n=-1;b=0;c:while(1){m=1;while(1){d:while(1){j=1;while(1){k
=a[e+(j+n)>>0]|0;l=a[e+h>>0]|0;if(k<<24>>24!=l<<24>>24){m=h;j=k;h=l;
break d}if((j|0)==(m|0))break;j=j+1|0;h=j+b|0;if(h>>>0>=f>>>0){b=n;p=m;break c}}b=b+m|0;h=b+1
|0;if(h>>>0>=f>>>0){b=n;p=m;break c}}k=m-n|0;if((j&255)<=(h&255))break;b=m+1|0
;if(b>>>0<f>>>0){h=b;b=m;m=k}else{b=n;p=k;break c}}h=b+2|0;if(h>>>0>=f>
;>>0){p=1;break}else{n=b;b=b+1|0}}j=1;k=-1;h=0;while(1){l=h;h=1;while(1){o=l;e:while(1){l=1;while(1){n=a[e+(l+k)>
x3e;0]|0;m=a[e+j>>0]|0;if(n<<24>>24!=m<<24>>24){l=j;j=o;break e}if((l|0)==(h|0
))break;l=l+1|0;j=l+o|0;if(j>>>0>=f>>>0){j=p;break b}}o=o+h|0;j=o+1|0;if(j>>>0
>=f>>>0){j=p;break b}}h=l-k|0;if((n&255)>=(m&255)){h=j;break}j=l+1|0;if(j>>>0
x3e;=f>>>0){j=p;break b}}j=h+2|0;if(j>>>0>=f>>>0){k=h;j=p;h=1;break}else{k=h;h
=h+1|0}}}else{b=-1;k=-1;j=1;h=1}while(0);r=(k+1|0)>>>0>(b+1|0)>>>0;h=r?h:j;r=r?k:b;q=r+1|0;if
(!($r(e,e+h|0,q)|0))s=f-h|0;else{h=f-r+-1|0;s=0;h=(r>>>0>h>>>0?r:h)+1|0}n=f|63;o=(s|0)!=0;p=f
-h|0;b=t;m=0;l=t;f:while(1){j=b;do if((l-j|0)>>>0<f>>>0){k=Ur(l,0,n)|0;if(k)if((k-j|0)>
x3e;>0<f>>>0){b=0;break a}else break;else{k=l+n|0;break}}else k=l;while(0);j=a[b+g>>0]|0;if(!(
1<<(j&31)&c[u+(((j&255)>>>5&255)<<2)>>2])){b=b+f|0;m=0;l=k;continue
}t=c[v+((j&255)<<2)>>2]|0;j=f-t|0;if((f|0)!=(t|0)){b=b+(o&(m|0)!=0&j>>>0<
h>>>0?p:j)|0;m=0;l=k;continue}j=q>>>0>m>>>0?q:m;l=a[e+j>>0]|0;g:do if
(!(l<<24>>24))j=q;else{while(1){if(l<<24>>24!=(a[b+j>>0]|0))break;j=j+1|0;l=a[
e+j>>0]|0;if(!(l<<24>>24)){j=q;break g}}b=b+(j-r)|0;m=0;l=k;continue f}while(0);do{if(j>>
;>0<=m>>>0)break a;j=j+-1|0}while((a[e+j>>0]|0)==(a[b+j>>0]|0));b=b+h|0;m=s;l=k}}while
(0)}else b=0}else b=0}else b=0}else b=t}else b=0}while(0);i=w;return b|0}function ws(a){a=a|0;var b=0,c=0;c=(cs(a)|0)+1|0;b=Fs(c
)|0;if(!b)b=0;else Ss(b|0,a|0,c|0)|0;return b|0}function xs(a,b){a=a|0;b=b|0;return ys(a,b,(cs(a)|0)+1|0)|0}function ys(b,c,d){b
=b|0;c=c|0;d=d|0;var e=0;e=c&255;do{if(!d){c=0;break}d=d+-1|0;c=b+d|0}while((a[c>>0]|0)!=e<<24>>
;24);return c|0}function zs(a,b){a=a|0;b=b|0;ds(a+(cs(a)|0)|0,b)|0;return a|0}function As(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;e=a[b
>>0]|0;a:do if(!(e<<24>>24))b=0;else{g=e;f=e&255;while(1){e=a[c>>0]|0;if(!(e<
x3c;24>>24)){b=g;break a}if(g<<24>>24!=e<<24>>24?(g=Ir(f)|0,(g|0)!=(Ir(d[c>
;>0]|0)|0)):0)break;b=b+1|0;c=c+1|0;e=a[b>>0]|0;if(!(e<<24>>24)){b=0;break a}else{g=e;f=e&
;255}}b=a[b>>0]|0}while(0);g=Ir(b&255)|0;return g-(Ir(d[c>>0]|0)|0)|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,r=0;r=i;i=i+208|0;o=r+8|0;p=r;f=_(d,b)|0;n=p;c[n>>2]=1;c[n
+4>>2]=0;if(f|0){n=0-d|0;c[o+4>>2]=d;c[o>>2]=d;g=d;b=d;h=2;while(1){b=b+d+g|0;c[o+(h<<2)
x3e;>2]=b;if(b>>>0<f>>>0){m=g;g=b;h=h+1|0;b=m}else break}h=a+f+n|0;m=p+4|0;if(h>>
;>0>a>>>0){j=h;g=1;f=1;while(1){do if((g&3|0)==3){Cs(a,d,e,f,o);l=c[m>>2]|0;b=l<<
;30|(c[p>>2]|0)>>>2;c[p>>2]=b;c[m>>2]=l>>>2;f=f+2|0}else{b=f+-1|0;if
((c[o+(b<<2)>>2]|0)>>>0<(j-a|0)>>>0)Cs(a,d,e,f,o);else Es(a,d,e,p,f,0,o);
if((f|0)==1){b=c[p>>2]|0;c[m>>2]=b>>>31|c[m>>2]<<1;b=b<<1;c[p
x3e;>2]=b;f=0;break}if(b>>>0>31){g=c[p>>2]|0;c[m>>2]=g;c[p>>2]=0;b=f+-33|
0;f=g;g=0}else{f=c[m>>2]|0;g=c[p>>2]|0}c[m>>2]=g>>>(32-b|0)|f<<b;b=g<
;<b;c[p>>2]=b;f=1}while(0);g=b|1;c[p>>2]=g;b=a+d|0;if(b>>>0>=h>>>0){
a=f;break}else a=b}}else{b=a;a=1}Es(b,d,e,p,a,0,o);l=p+4|0;g=c[p>>2]|0;h=c[l>>2]|0;f=(h|0)==0;if(!((a|0)==1
x26;(g|0)==1&f)){k=h;while(1){if((a|0)<2){h=g+-1|0;do if(h){if(!(h&1)){f=0;do{f=f+1|0;h=h>>>1}while
(!(h&1|0))}else{if(f)f=32;else{if(!(k&1)){h=k;f=0}else{j=0;h=k;f=0;break}do{f=f+1|0;h=h>>>1}while(!(h
x26;1|0))}f=f+32|0}if(f>>>0>31)q=28;else{j=f;h=k}}else{f=32;q=28}while(0);if((q|0)==28){q=0;c[p>>2
]=k;c[m>>2]=0;j=f+-32|0;g=k;h=0}c[p>>2]=h<<32-j|g>>>j;c[m>>2]=h>>
;>j;b=b+n|0;h=f+a|0}else{j=g>>>30;h=a+-2|0;c[p>>2]=(g<<1&2147483646|j<<31
)^3;c[m>>2]=(j|k<<2)>>>1;Es(b+(0-(c[o+(h<<2)>>2]|0))+n|0,d,e,p,a+-1|0,1,o
);k=c[p>>2]|0;c[m>>2]=k>>>31|c[m>>2]<<1;c[p>>2]=k<<1|
1;b=b+n|0;Es(b,d,e,p,h,1,o)}g=c[p>>2]|0;k=c[l>>2]|0;f=(k|0)==0;if((h|0)==1&(g|0)==1&f)break;else a
=h}}}i=r;return}function Cs(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;p=i;i=i+240|0;o=p;c
[o>>2]=a;a:do if((e|0)>1){n=0-b|0;g=e;h=a;k=a;l=1;while(1){a=h+n|0;m=g+-2|0;j=a+(0-(c[f+(m<<2)>>
;2]|0))|0;if((Ya[d&127](k,j)|0)>-1?(Ya[d&127](k,a)|0)>-1:0){e=l;break a}e=l+1|0;h=o+(l<<2)|0;if((Ya
[d&127](j,a)|0)>-1){c[h>>2]=j;a=j;g=g+-1|0}else{c[h>>2]=a;g=m}if((g|0)<=1)break a;h=a;k=c[o
x3e;>2]|0;l=e}}else e=1;while(0);Ds(b,o,e);i=p;return}function Ds(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+
256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0>256?256:
a;Ss(e|0,c[b>>2]|0,f|0)|0;e=0;do{j=b+(e<<2)|0;e=e+1|0;Ss(c[j>>2]|0,c[b+(e<<2)>>
;2]|0,f|0)|0;c[j>>2]=(c[j>>2]|0)+f}while((e|0)!=(d|0));if((a|0)==(f|0))break a;a=a-f|0;e=c[g>>2]|0
}while(0);i=h;return}function Es(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;r=i;i=i+240|0;p=r;l=c[e>>2]|0;k=c[e+4>>2]|0;c[p>>2]=a;o=0-b|0;a:do if((k|0)!=0|(l|0)!=1?(j=a+(0-(
c[h+(f<<2)>>2]|0))|0,(Ya[d&127](j,a)|0)>=1):0){g=(g|0)==0;m=1;n=l;while(1){if(g&(f|0)>1){
e=a+o|0;g=c[h+(f+-2<<2)>>2]|0;if((Ya[d&127](e,j)|0)>-1){g=f;e=m;q=19;break a}if((Ya[d&127](e+(
0-g)|0,j)|0)>-1){g=f;e=m;q=19;break a}}e=m+1|0;c[p+(m<<2)>>2]=j;g=n+-1|0;do if(g){if(!(g&1)){a=0;do
{a=a+1|0;g=g>>>1}while(!(g&1|0))}else{if(!k)g=32;else{if(!(k&1)){a=k;g=0}else{l=0;g=n;a=0;break}do{g=g+
1|0;a=a>>>1}while(!(a&1|0))}a=g+32|0}if(a>>>0>31)q=15;else{l=a;g=n}}else{a=32;q=15}while
(0);if((q|0)==15){q=0;l=a+-32|0;g=k;k=0}n=k<<32-l|g>>>l;k=k>>>l;g=a+f|0;if(!((k|0)!=0|(n
|0)!=1)){a=j;q=19;break a}a=j+(0-(c[h+(g<<2)>>2]|0))|0;if((Ya[d&127](a,c[p>>2]|0)|0)<1){
a=j;f=g;g=0;q=18;break}else{l=j;f=g;g=1;j=a;m=e;a=l}}}else{e=1;q=18}while(0);if((q|0)==18?(g|0)==0:0){g=f;q=19}if((q|0)==19){Ds(
b,p,e);Cs(a,b,d,g,h)}i=r;return}function Fs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,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;do if(a>>>0<245){o=a>>>
;0<11?16:a+11&-8;a=o>>>3;j=c[18400]|0;b=j>>>a;if(b&3|0){b=(b&1^1)+a|0;d=73640+(
b<<1<<2)|0;e=d+8|0;f=c[e>>2]|0;g=f+8|0;h=c[g>>2]|0;do if((d|0)!=(h|0)){if(h>>
x3e;0<(c[18404]|0)>>>0)ya();a=h+12|0;if((c[a>>2]|0)==(f|0)){c[a>>2]=d;c[e>>2]=
h;break}else ya()}else c[18400]=j&~(1<<b);while(0);L=b<<3;c[f+4>>2]=L|3;L=f+L+4|0;c[L>
x3e;2]=c[L>>2]|1;L=g;return L|0}h=c[18402]|0;if(o>>>0>h>>>0){if(b|0){d=2<<
;a;d=b<<a&(d|0-d);d=(d&0-d)+-1|0;i=d>>>12&16;d=d>>>i;f=d>>>
;5&8;d=d>>>f;g=d>>>2&4;d=d>>>g;e=d>>>1&2;d=d>>
;>e;b=d>>>1&1;b=(f|i|g|e|b)+(d>>>b)|0;d=73640+(b<<1<<2)|0;e=d+8|0;g=
c[e>>2]|0;i=g+8|0;f=c[i>>2]|0;do if((d|0)!=(f|0)){if(f>>>0<(c[18404]|0)>>>
;0)ya();a=f+12|0;if((c[a>>2]|0)==(g|0)){c[a>>2]=d;c[e>>2]=f;k=c[18402]|0;break}else ya()}else{c[18400
]=j&~(1<<b);k=h}while(0);h=(b<<3)-o|0;c[g+4>>2]=o|3;e=g+o|0;c[e+4>>2]=h|1;c[e+h>
;>2]=h;if(k|0){f=c[18405]|0;b=k>>>3;d=73640+(b<<1<<2)|0;a=c[18400]|0;b=1<<b;if
(a&b){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{l=a;m=b}}else{c[
18400]=a|b;l=d+8|0;m=d}c[l>>2]=f;c[m+12>>2]=f;c[f+8>>2]=m;c[f+12>>2]=d}c[18402]=h;c[18405
]=e;L=i;return L|0}a=c[18401]|0;if(a){d=(a&0-a)+-1|0;K=d>>>12&16;d=d>>>K;J=d>>
x3e;5&8;d=d>>>J;L=d>>>2&4;d=d>>>L;b=d>>>1&2;d=d>
x3e;>b;e=d>>>1&1;e=c[73904+((J|K|L|b|e)+(d>>>e)<<2)>>2]|0;d=(c[e+4
x3e;>2]&-8)-o|0;b=e;while(1){a=c[b+16>>2]|0;if(!a){a=c[b+20>>2]|0;if(!a){j=e;break}}b=(c[a+4>
x3e;2]&-8)-o|0;L=b>>>0<d>>>0;d=L?b:d;b=a;e=L?a:e}g=c[18404]|0;if(j>>>0<
;g>>>0)ya();i=j+o|0;if(j>>>0>=i>>>0)ya();h=c[j+24>>2]|0;e=c[j+12>
;>2]|0;do if((e|0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if(!a){b=j+16|0;a=c[b>>2]|0;if(!a){n=0;break}}while(1){
e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;b=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;b=e}}if(b>>
;>0<g>>>0)ya();else{c[b>>2]=0;n=a;break}}else{f=c[j+8>>2]|0;if(f>>>0
<g>>>0)ya();a=f+12|0;if((c[a>>2]|0)!=(j|0))ya();b=e+8|0;if((c[b>>2]|0)==(j|0)){c[a>
x3e;2]=e;c[b>>2]=f;n=e;break}else ya()}while(0);do if(h|0){a=c[j+28>>2]|0;b=73904+(a<<2)|0;if((j|0
)==(c[b>>2]|0)){c[b>>2]=n;if(!n){c[18401]=c[18401]&~(1<<a);break}}else{if(h>>>
0<(c[18404]|0)>>>0)ya();a=h+16|0;if((c[a>>2]|0)==(j|0))c[a>>2]=n;else c[h+20>>
2]=n;if(!n)break}b=c[18404]|0;if(n>>>0<b>>>0)ya();c[n+24>>2]=h;a=c[j+16>>
2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else{c[n+16>>2]=a;c[a+24>>2]=n;break}while
(0);a=c[j+20>>2]|0;if(a|0)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[n+20>>2]=
a;c[a+24>>2]=n;break}}while(0);if(d>>>0<16){L=d+o|0;c[j+4>>2]=L|3;L=j+L+4|0;c[L>>
;2]=c[L>>2]|1}else{c[j+4>>2]=o|3;c[i+4>>2]=d|1;c[i+d>>2]=d;a=c[18402]|0;if(a|0){f=c[18405
]|0;b=a>>>3;e=73640+(b<<1<<2)|0;a=c[18400]|0;b=1<<b;if(a&b){a=e+8|0;b=c[a>
;>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{p=a;q=b}}else{c[18400]=a|b;p=e+8|0;q=e}c[p>
;>2]=f;c[q+12>>2]=f;c[f+8>>2]=q;c[f+12>>2]=e}c[18402]=d;c[18405]=i}L=j+8|0;return L|0}}}else
if(a>>>0<=4294967231){a=a+11|0;o=a&-8;j=c[18401]|0;if(j){d=0-o|0;a=a>>>8;if(a)if(o>
x3e;>0>16777215)i=31;else{q=(a+1048320|0)>>>16&8;E=a<<q;p=(E+520192|0)>>>
16&4;E=E<<p;i=(E+245760|0)>>>16&2;i=14-(p|q|i)+(E<<i>>>15)|0;i=o>
;>>(i+7|0)&1|i<<1}else i=0;b=c[73904+(i<<2)>>2]|0;a:do if(!b){a=0;b=0;E=86}else{f=d
;a=0;g=o<<((i|0)==31?0:25-(i>>>1)|0);h=b;b=0;while(1){e=c[h+4>>2]&-8;d=e-o|0;if(d>
x3e;>0<f>>>0)if((e|0)==(o|0)){a=h;b=h;E=90;break a}else b=h;else d=f;e=c[h+20>>2]|0;h=c[h+16+(
g>>>31<<2)>>2]|0;a=(e|0)==0|(e|0)==(h|0)?a:e;e=(h|0)==0;if(e){E=86;break}else{f=d;g=g<
x3c;(e&1^1)}}}while(0);if((E|0)==86){if((a|0)==0&(b|0)==0){a=2<<i;a=j&(a|0-a);if(!a)break;q=(a&0-a
)+-1|0;m=q>>>12&16;q=q>>>m;l=q>>>5&8;q=q>>>l;n=q>>
;>2&4;q=q>>>n;p=q>>>1&2;q=q>>>p;a=q>>>1&1;a=c[73904
+((l|m|n|p|a)+(q>>>a)<<2)>>2]|0}if(!a){i=d;j=b}else E=90}if((E|0)==90)while(1){E=0;q=(c[a+4
x3e;>2]&-8)-o|0;e=q>>>0<d>>>0;d=e?q:d;b=e?a:b;e=c[a+16>>2]|0;if(e|0){a=e;
E=90;continue}a=c[a+20>>2]|0;if(!a){i=d;j=b;break}else E=90}if((j|0)!=0?i>>>0<((c[18402]|0)-o|0)
x3e;>>0:0){f=c[18404]|0;if(j>>>0<f>>>0)ya();h=j+o|0;if(j>>>0>=h
>>>0)ya();g=c[j+24>>2]|0;d=c[j+12>>2]|0;do if((d|0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if
(!a){b=j+16|0;a=c[b>>2]|0;if(!a){s=0;break}}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;
e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<f>>>0)ya();else{c[b>>2]=0;
s=a;break}}else{e=c[j+8>>2]|0;if(e>>>0<f>>>0)ya();a=e+12|0;if((c[a>>2]|0)!=(
j|0))ya();b=d+8|0;if((c[b>>2]|0)==(j|0)){c[a>>2]=d;c[b>>2]=e;s=d;break}else ya()}while(0);do if(g|
0){a=c[j+28>>2]|0;b=73904+(a<<2)|0;if((j|0)==(c[b>>2]|0)){c[b>>2]=s;if(!s){c[18401]=c[18401
]&~(1<<a);break}}else{if(g>>>0<(c[18404]|0)>>>0)ya();a=g+16|0;if((c[a>>
;2]|0)==(j|0))c[a>>2]=s;else c[g+20>>2]=s;if(!s)break}b=c[18404]|0;if(s>>>0<b>>
;>0)ya();c[s+24>>2]=g;a=c[j+16>>2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else
{c[s+16>>2]=a;c[a+24>>2]=s;break}while(0);a=c[j+20>>2]|0;if(a|0)if(a>>>0<(c[18404
]|0)>>>0)ya();else{c[s+20>>2]=a;c[a+24>>2]=s;break}}while(0);do if(i>>>0>=
16){c[j+4>>2]=o|3;c[h+4>>2]=i|1;c[h+i>>2]=i;a=i>>>3;if(i>>>0<256
){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>
;>0<(c[18404]|0)>>>0)ya();else{u=a;v=b}}else{c[18400]=b|a;u=d+8|0;v=d}c[u>>2]=h;c[v+12>
x3e;2]=h;c[h+8>>2]=v;c[h+12>>2]=d;break}a=i>>>8;if(a)if(i>>>0>16777215)d=
31;else{K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|0)>>>16&4;L=L<<J;d
=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>>15)|0;d=i>>>(d+7|0)&1
|d<<1}else d=0;e=73904+(d<<2)|0;c[h+28>>2]=d;a=h+16|0;c[a+4>>2]=0;c[a>>2]=0;a=
c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[e>>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8
>>2]=h;break}f=i<<((d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>
x3e;2]&-8|0)==(i|0)){d=a;E=148;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d){E=145;break
}else{f=f<<1;a=d}}if((E|0)==145)if(b>>>0<(c[18404]|0)>>>0)ya();else{c[b>>
2]=h;c[h+24>>2]=a;c[h+12>>2]=h;c[h+8>>2]=h;break}else if((E|0)==148){a=d+8|0;b=c[a>>2]|0
;L=c[18404]|0;if(b>>>0>=L>>>0&d>>>0>=L>>>0){c[b+12>
;>2]=h;c[a>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;c[h+24>>2]=0;break}else ya()}}else{L=i+o|
0;c[j+4>>2]=L|3;L=j+L+4|0;c[L>>2]=c[L>>2]|1}while(0);L=j+8|0;return L|0}}}else o=-1;while(0);d=c[18402
]|0;if(d>>>0>=o>>>0){a=d-o|0;b=c[18405]|0;if(a>>>0>15){L=b+o|0;c[18405]=L
;c[18402]=a;c[L+4>>2]=a|1;c[L+a>>2]=a;c[b+4>>2]=o|3}else{c[18402]=0;c[18405]=0;c[b+4>>2]=
d|3;L=b+d+4|0;c[L>>2]=c[L>>2]|1}L=b+8|0;return L|0}a=c[18403]|0;if(a>>>0>o>>
x3e;0){J=a-o|0;c[18403]=J;L=c[18406]|0;K=L+o|0;c[18406]=K;c[K+4>>2]=J|1;c[L+4>>2]=o|3;L=L+8|0;return L|0}do
if(!(c[18518]|0)){a=Ia(30)|0;if(!(a+-1&a)){c[18520]=a;c[18519]=a;c[18521]=-1;c[18522]=-1;c[18523]=0;c[18511]=0;c[18518]=(va
(0)|0)&-16^1431655768;break}else ya()}while(0);h=o+48|0;g=c[18520]|0;i=o+47|0;f=g+i|0;g=0-g|0;j=f&g;if(j>>
x3e;0<=o>>>0){L=0;return L|0}a=c[18510]|0;if(a|0?(u=c[18508]|0,v=u+j|0,v>>>0<=u>>
;>0|v>>>0>a>>>0):0){L=0;return L|0}b:do if(!(c[18511]&4)){a=c[18406]|0;c:do if(a){d
=74048;while(1){b=c[d>>2]|0;if(b>>>0<=a>>>0?(r=d+4|0,(b+(c[r>>2]|0)|0)>
;>>0>a>>>0):0){e=d;d=r;break}d=c[d+8>>2]|0;if(!d){E=173;break c}}a=f-(c[18403]|0)&g
;if(a>>>0<2147483647){b=Ba(a|0)|0;if((b|0)==((c[e>>2]|0)+(c[d>>2]|0)|0)){if((b|0)!=(-1|0
)){h=b;f=a;E=193;break b}}else E=183}}else E=173;while(0);do if((E|0)==173?(t=Ba(0)|0,(t|0)!=(-1|0)):0){a=t;b=c[18519]|0;d=b+-1|
0;if(!(d&a))a=j;else a=j-a+(d+a&0-b)|0;b=c[18508]|0;d=b+a|0;if(a>>>0>o>>>0&a
x3e;>>0<2147483647){v=c[18510]|0;if(v|0?d>>>0<=b>>>0|d>>>0>
;v>>>0:0)break;b=Ba(a|0)|0;if((b|0)==(t|0)){h=t;f=a;E=193;break b}else E=183}}while(0);d:do if((E|0)==183){d=0-a|
0;do if(h>>>0>a>>>0&(a>>>0<2147483647&(b|0)!=(-1|0))?(w=c[18520
]|0,w=i-a+w&0-w,w>>>0<2147483647):0)if((Ba(w|0)|0)==(-1|0)){Ba(d|0)|0;break d}else{a=w+a|0;break}while(
0);if((b|0)!=(-1|0)){h=b;f=a;E=193;break b}}while(0);c[18511]=c[18511]|4;E=190}else E=190;while(0);if((((E|0)==190?j>>
x3e;0<2147483647:0)?(x=Ba(j|0)|0,y=Ba(0)|0,x>>>0<y>>>0&((x|0)!=(-1|0)&(y|0)!=(-
1|0))):0)?(z=y-x|0,z>>>0>(o+40|0)>>>0):0){h=x;f=z;E=193}if((E|0)==193){a=(c[18508]|0)+f|0;c[18508
]=a;if(a>>>0>(c[18509]|0)>>>0)c[18509]=a;i=c[18406]|0;do if(i){e=74048;do{a=c[e>>2]|
0;b=e+4|0;d=c[b>>2]|0;if((h|0)==(a+d|0)){A=a;B=b;C=d;D=e;E=203;break}e=c[e+8>>2]|0}while((e|0)!=0);if(((E|0)==
203?(c[D+12>>2]&8|0)==0:0)?i>>>0<h>>>0&i>>>0>=A>
x3e;>0:0){c[B>>2]=C+f;L=i+8|0;L=(L&7|0)==0?0:0-L&7;K=i+L|0;L=f-L+(c[18403]|0)|0;c[18406]=K;c[18403]=L;c
[K+4>>2]=L|1;c[K+L+4>>2]=40;c[18407]=c[18522];break}a=c[18404]|0;if(h>>>0<a>>
x3e;0){c[18404]=h;j=h}else j=a;d=h+f|0;a=74048;while(1){if((c[a>>2]|0)==(d|0)){b=a;E=211;break}a=c[a+8>>2]|0
;if(!a){b=74048;break}}if((E|0)==211)if(!(c[a+12>>2]&8)){c[b>>2]=h;l=a+4|0;c[l>>2]=(c[l>
x3e;2]|0)+f;l=h+8|0;l=h+((l&7|0)==0?0:0-l&7)|0;a=d+8|0;a=d+((a&7|0)==0?0:0-a&7)|0;k=l+o|0;g=a-l-o|0;c[l+4>
;>2]=o|3;do if((a|0)!=(i|0)){if((a|0)==(c[18405]|0)){L=(c[18402]|0)+g|0;c[18402]=L;c[18405]=k;c[k+4>>2]=L|1;c[k+L
>>2]=L;break}b=c[a+4>>2]|0;if((b&3|0)==1){i=b&-8;f=b>>>3;e:do if(b>>>
;0>=256){h=c[a+24>>2]|0;e=c[a+12>>2]|0;do if((e|0)==(a|0)){d=a+16|0;e=d+4|0;b=c[e>>2]|0;if(!b
){b=c[d>>2]|0;if(!b){J=0;break}}else d=e;while(1){e=b+20|0;f=c[e>>2]|0;if(f|0){b=f;d=e;continue}e=b+16|0;f=c
[e>>2]|0;if(!f)break;else{b=f;d=e}}if(d>>>0<j>>>0)ya();else{c[d>>2]=0;J=b
;break}}else{f=c[a+8>>2]|0;if(f>>>0<j>>>0)ya();b=f+12|0;if((c[b>>2]|0)!=(
a|0))ya();d=e+8|0;if((c[d>>2]|0)==(a|0)){c[b>>2]=e;c[d>>2]=f;J=e;break}else ya()}while(0);if(!h)break
;b=c[a+28>>2]|0;d=73904+(b<<2)|0;do if((a|0)!=(c[d>>2]|0)){if(h>>>0<(c[18404]|
0)>>>0)ya();b=h+16|0;if((c[b>>2]|0)==(a|0))c[b>>2]=J;else c[h+20>>2]=J;if(!J)break
e}else{c[d>>2]=J;if(J|0)break;c[18401]=c[18401]&~(1<<b);break e}while(0);e=c[18404]|0;if(J>>
x3e;0<e>>>0)ya();c[J+24>>2]=h;b=a+16|0;d=c[b>>2]|0;do if(d|0)if(d>>>0<
;e>>>0)ya();else{c[J+16>>2]=d;c[d+24>>2]=J;break}while(0);b=c[b+4>>2]|0;if(!b)break
;if(b>>>0<(c[18404]|0)>>>0)ya();else{c[J+20>>2]=b;c[b+24>>2]=J;break}}else
{d=c[a+8>>2]|0;e=c[a+12>>2]|0;b=73640+(f<<1<<2)|0;do if((d|0)!=(b|0)){if(d>>
x3e;0<j>>>0)ya();if((c[d+12>>2]|0)==(a|0))break;ya()}while(0);if((e|0)==(d|0)){c[18400]=c[18400]
x26;~(1<<f);break}do if((e|0)==(b|0))G=e+8|0;else{if(e>>>0<j>>>0)ya();b=e+8|0;if((c
[b>>2]|0)==(a|0)){G=b;break}ya()}while(0);c[d+12>>2]=e;c[G>>2]=d}while(0);a=a+i|0;g=i+g|0}a=a+4|0;
c[a>>2]=c[a>>2]&-2;c[k+4>>2]=g|1;c[k+g>>2]=g;a=g>>>3;if(g>>
;>0<256){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;do if(!(b&a)){c[18400]=b|a;K=d+8|0
;L=d}else{a=d+8|0;b=c[a>>2]|0;if(b>>>0>=(c[18404]|0)>>>0){K=a;L=b;break}ya()}while(
0);c[K>>2]=k;c[L+12>>2]=k;c[k+8>>2]=L;c[k+12>>2]=d;break}a=g>>>8;do if(!a
)d=0;else{if(g>>>0>16777215){d=31;break}K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192
|0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>
;>15)|0;d=g>>>(d+7|0)&1|d<<1}while(0);e=73904+(d<<2)|0;c[k+28>>2]=d;a=k+16
|0;c[a+4>>2]=0;c[a>>2]=0;a=c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[e>>2]=k;c[k+
24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}f=g<<((d|0)==31?0:25-(d>>>1)|0);a
=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0)==(g|0)){d=a;E=281;break}b=a+16+(f>>>31<<
;2)|0;d=c[b>>2]|0;if(!d){E=278;break}else{f=f<<1;a=d}}if((E|0)==278)if(b>>>0<(c[18404]|0
)>>>0)ya();else{c[b>>2]=k;c[k+24>>2]=a;c[k+12>>2]=k;c[k+8>>2]=k;break}else
if((E|0)==281){a=d+8|0;b=c[a>>2]|0;L=c[18404]|0;if(b>>>0>=L>>>0&d>>
x3e;0>=L>>>0){c[b+12>>2]=k;c[a>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;c[k+24
>>2]=0;break}else ya()}}else{L=(c[18403]|0)+g|0;c[18403]=L;c[18406]=k;c[k+4>>2]=L|1}while(0);L=l+8|0;return
L|0}else b=74048;while(1){a=c[b>>2]|0;if(a>>>0<=i>>>0?(F=a+(c[b+4>>2]|0)|
0,F>>>0>i>>>0):0){b=F;break}b=c[b+8>>2]|0}g=b+-47|0;d=g+8|0;d=g+((d&7|0)==0?0:
0-d&7)|0;g=i+16|0;d=d>>>0<g>>>0?i:d;a=d+8|0;e=h+8|0;e=(e&7|0)==0?0:0-e&7;L=h+e
|0;e=f+-40-e|0;c[18406]=L;c[18403]=e;c[L+4>>2]=e|1;c[L+e+4>>2]=40;c[18407]=c[18522];e=d+4|0;c[e>>2
]=27;c[a>>2]=c[18512];c[a+4>>2]=c[18513];c[a+8>>2]=c[18514];c[a+12>>2]=c[18515];c[18512]=
h;c[18513]=f;c[18515]=0;c[18514]=a;a=d+24|0;do{a=a+4|0;c[a>>2]=7}while((a+4|0)>>>0<b>>
x3e;0);if((d|0)!=(i|0)){h=d-i|0;c[e>>2]=c[e>>2]&-2;c[i+4>>2]=h|1;c[d>>2]=h;a=h>
;>>3;if(h>>>0<256){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;if(b&
;a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{H=a;I=b}}else{c[18400]=
b|a;H=d+8|0;I=d}c[H>>2]=i;c[I+12>>2]=i;c[i+8>>2]=I;c[i+12>>2]=d;break}a=h>>>
;8;if(a)if(h>>>0>16777215)d=31;else{K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|
0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>
;>15)|0;d=h>>>(d+7|0)&1|d<<1}else d=0;f=73904+(d<<2)|0;c[i+28>>2]=d;c[i+20
>>2]=0;c[g>>2]=0;a=c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[f>>2]=i;c[i+24>
x3e;2]=f;c[i+12>>2]=i;c[i+8>>2]=i;break}e=h<<((d|0)==31?0:25-(d>>>1)|0);a=c[f>
x3e;2]|0;while(1){if((c[a+4>>2]&-8|0)==(h|0)){d=a;E=307;break}b=a+16+(e>>>31<<2)|0;d=c[b
>>2]|0;if(!d){E=304;break}else{e=e<<1;a=d}}if((E|0)==304)if(b>>>0<(c[18404]|0)>>
;>0)ya();else{c[b>>2]=i;c[i+24>>2]=a;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((E|0)==
307){a=d+8|0;b=c[a>>2]|0;L=c[18404]|0;if(b>>>0>=L>>>0&d>>>0>
;=L>>>0){c[b+12>>2]=i;c[a>>2]=i;c[i+8>>2]=b;c[i+12>>2]=d;c[i+24>>
;2]=0;break}else ya()}}}else{L=c[18404]|0;if((L|0)==0|h>>>0<L>>>0)c[18404]=h;c[18512]=h;c[18513
]=f;c[18515]=0;c[18409]=c[18518];c[18408]=-1;a=0;do{L=73640+(a<<1<<2)|0;c[L+12>>2]=L;c[L+8>
x3e;2]=L;a=a+1|0}while((a|0)!=32);L=h+8|0;L=(L&7|0)==0?0:0-L&7;K=h+L|0;L=f+-40-L|0;c[18406]=K;c[18403]=L;c[K+4>
x3e;2]=L|1;c[K+L+4>>2]=40;c[18407]=c[18522]}while(0);a=c[18403]|0;if(a>>>0>o>>>0){J
=a-o|0;c[18403]=J;L=c[18406]|0;K=L+o|0;c[18406]=K;c[K+4>>2]=J|1;c[L+4>>2]=o|3;L=L+8|0;return L|0}}c[(Ar()|0)
x3e;>2]=12;L=0;return L|0}function Gs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;if(!a)return
;d=a+-8|0;h=c[18404]|0;if(d>>>0<h>>>0)ya();a=c[a+-4>>2]|0;b=a&3;if((b|0)==1)ya
();e=a&-8;m=d+e|0;do if(!(a&1)){a=c[d>>2]|0;if(!b)return;k=d+(0-a)|0;j=a+e|0;if(k>>>0<h
x3e;>>0)ya();if((k|0)==(c[18405]|0)){a=m+4|0;b=c[a>>2]|0;if((b&3|0)!=3){q=k;g=j;break}c[18402]=j;c[a>
;>2]=b&-2;c[k+4>>2]=j|1;c[k+j>>2]=j;return}e=a>>>3;if(a>>>0<256
){b=c[k+8>>2]|0;d=c[k+12>>2]|0;a=73640+(e<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>
;0<h>>>0)ya();if((c[b+12>>2]|0)!=(k|0))ya()}if((d|0)==(b|0)){c[18400]=c[18400]&~(1<<
;e);q=k;g=j;break}if((d|0)!=(a|0)){if(d>>>0<h>>>0)ya();a=d+8|0;if((c[a>>2]|0)==(k|0
))f=a;else ya()}else f=d+8|0;c[b+12>>2]=d;c[f>>2]=b;q=k;g=j;break}f=c[k+24>>2]|0;d=c[k+12>>
;2]|0;do if((d|0)==(k|0)){b=k+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){i=0;break}}else b=d;while(1
){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>
;>0<h>>>0)ya();else{c[b>>2]=0;i=a;break}}else{e=c[k+8>>2]|0;if(e>>>0
<h>>>0)ya();a=e+12|0;if((c[a>>2]|0)!=(k|0))ya();b=d+8|0;if((c[b>>2]|0)==(k|0)){c[a>
x3e;2]=d;c[b>>2]=e;i=d;break}else ya()}while(0);if(f){a=c[k+28>>2]|0;b=73904+(a<<2)|0;if((k|0)==(c
[b>>2]|0)){c[b>>2]=i;if(!i){c[18401]=c[18401]&~(1<<a);q=k;g=j;break}}else{if(f>>>
;0<(c[18404]|0)>>>0)ya();a=f+16|0;if((c[a>>2]|0)==(k|0))c[a>>2]=i;else c[f+20>>
;2]=i;if(!i){q=k;g=j;break}}d=c[18404]|0;if(i>>>0<d>>>0)ya();c[i+24>>2]=f;a=k+16|0;
b=c[a>>2]|0;do if(b|0)if(b>>>0<d>>>0)ya();else{c[i+16>>2]=b;c[b+24>
x3e;2]=i;break}while(0);a=c[a+4>>2]|0;if(a)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[i+
20>>2]=a;c[a+24>>2]=i;q=k;g=j;break}else{q=k;g=j}}else{q=k;g=j}}else{q=d;g=e}while(0);if(q>>>
0>=m>>>0)ya();a=m+4|0;b=c[a>>2]|0;if(!(b&1))ya();if(!(b&2)){if((m|0)==(c[18406]|0)){p=(c
[18403]|0)+g|0;c[18403]=p;c[18406]=q;c[q+4>>2]=p|1;if((q|0)!=(c[18405]|0))return;c[18405]=0;c[18402]=0;return}if((m|0)==(
c[18405]|0)){p=(c[18402]|0)+g|0;c[18402]=p;c[18405]=q;c[q+4>>2]=p|1;c[q+p>>2]=p;return}g=(b&-8)+g|0;e=b
>>>3;do if(b>>>0>=256){f=c[m+24>>2]|0;a=c[m+12>>2]|0;do if((a|0)==(m|0)){
b=m+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){n=0;break}}else b=d;while(1){d=a+20|0;e=c[d>>
;2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<(c[18404]|0
)>>>0)ya();else{c[b>>2]=0;n=a;break}}else{b=c[m+8>>2]|0;if(b>>>0<(c[18404
]|0)>>>0)ya();d=b+12|0;if((c[d>>2]|0)!=(m|0))ya();e=a+8|0;if((c[e>>2]|0)==(m|0)){c[d>>
;2]=a;c[e>>2]=b;n=a;break}else ya()}while(0);if(f|0){a=c[m+28>>2]|0;b=73904+(a<<2)|0;if((m|0)==(c[
b>>2]|0)){c[b>>2]=n;if(!n){c[18401]=c[18401]&~(1<<a);break}}else{if(f>>>0<
;(c[18404]|0)>>>0)ya();a=f+16|0;if((c[a>>2]|0)==(m|0))c[a>>2]=n;else c[f+20>>2]=n;if
(!n)break}d=c[18404]|0;if(n>>>0<d>>>0)ya();c[n+24>>2]=f;a=m+16|0;b=c[a>>2
]|0;do if(b|0)if(b>>>0<d>>>0)ya();else{c[n+16>>2]=b;c[b+24>>2]=n;break}while
(0);a=c[a+4>>2]|0;if(a|0)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[n+20>>2]=a
;c[a+24>>2]=n;break}}}else{b=c[m+8>>2]|0;d=c[m+12>>2]|0;a=73640+(e<<1<<2)|0;if
((b|0)!=(a|0)){if(b>>>0<(c[18404]|0)>>>0)ya();if((c[b+12>>2]|0)!=(m|0))ya()}if((d|0
)==(b|0)){c[18400]=c[18400]&~(1<<e);break}if((d|0)!=(a|0)){if(d>>>0<(c[18404]|0)>>
x3e;0)ya();a=d+8|0;if((c[a>>2]|0)==(m|0))l=a;else ya()}else l=d+8|0;c[b+12>>2]=d;c[l>>2]=b}while(0
);c[q+4>>2]=g|1;c[q+g>>2]=g;if((q|0)==(c[18405]|0)){c[18402]=g;return}}else{c[a>>2]=b&-2;c[q+
4>>2]=g|1;c[q+g>>2]=g}a=g>>>3;if(g>>>0<256){d=73640+(a<<1<
x3c;2)|0;b=c[18400]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>
;>>0)ya();else{o=a;p=b}}else{c[18400]=b|a;o=d+8|0;p=d}c[o>>2]=q;c[p+12>>2]=q;c[q+8>>2]=p
;c[q+12>>2]=d;return}a=g>>>8;if(a)if(g>>>0>16777215)d=31;else{o=(a+1048320|0)>
x3e;>16&8;p=a<<o;n=(p+520192|0)>>>16&4;p=p<<n;d=(p+245760|0)>>>
16&2;d=14-(n|o|d)+(p<<d>>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=73904
+(d<<2)|0;c[q+28>>2]=d;c[q+20>>2]=0;c[q+16>>2]=0;a=c[18401]|0;b=1<<d;do if(a
x26;b){f=g<<((d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0
)==(g|0)){d=a;e=130;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d){e=127;break}else{f=f<
x3c;1;a=d}}if((e|0)==127)if(b>>>0<(c[18404]|0)>>>0)ya();else{c[b>>2]=q;c[q+24>
x3e;2]=a;c[q+12>>2]=q;c[q+8>>2]=q;break}else if((e|0)==130){a=d+8|0;b=c[a>>2]|0;p=c[18404]|0;if(b
x3e;>>0>=p>>>0&d>>>0>=p>>>0){c[b+12>>2]=q;c[a>
;>2]=q;c[q+8>>2]=b;c[q+12>>2]=d;c[q+24>>2]=0;break}else ya()}}else{c[18401]=a|b;c[e>>
;2]=q;c[q+24>>2]=e;c[q+12>>2]=q;c[q+8>>2]=q}while(0);q=(c[18408]|0)+-1|0;c[18408]=q;if(!q)a=74056;
else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[18408]=-1;return}function Hs(a,b){a=a|0;b=b|0;var d=0,e=0;
if(!a){a=Fs(b)|0;return a|0}if(b>>>0>4294967231){c[(Ar()|0)>>2]=12;a=0;return a|0}d=Is(a+-8|0,b>
;>>0<11?16:b+11&-8)|0;if(d|0){a=d+8|0;return a|0}d=Fs(b)|0;if(!d){a=0;return a|0}e=c[a+-4>>2]|0;e=(
e&-8)-((e&3|0)==0?8:4)|0;Ss(d|0,a|0,(e>>>0<b>>>0?e:b)|0)|0;Gs(a);a=d;return a|0}
function Rh(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;ca=i;i=i+192
|0;Y=ca+172|0;l=ca+168|0;I=ca+164|0;H=ca+160|0;m=ca+156|0;n=ca+152|0;p=ca+148|0;aa=ca+144|0;u=ca+140|0;t=ca+136|0;s=ca+132|0;U=ca
+177|0;V=ca+176|0;q=ca+128|0;r=ca+124|0;o=ca+120|0;J=ca+116|0;M=ca+112|0;S=ca+108|0;P=ca+104|0;z=ca+100|0;v=ca+96|0;w=ca+92|0;y=
ca+88|0;x=ca+84|0;D=ca+80|0;F=ca+76|0;A=ca+72|0;B=ca+68|0;G=ca+64|0;E=ca+60|0;C=ca+56|0;W=ca+52|0;Q=ca+48|0;R=ca+44|0;N=ca+40|0;
O=ca+36|0;K=ca+32|0;X=ca+28|0;_=ca+16|0;L=ca+12|0;T=ca+8|0;$=ca+4|0;Z=ca;c[l>>2]=f;c[I>>2]=g;c[H>>
2]=h;c[m>>2]=j;c[n>>2]=k;c[p>>2]=c[I>>2];a[U>>0]=1;a[V>>0]=0;c[q>
;>2]=c[(c[(c[I>>2]|0)+96>>2]|0)+4>>2];c[u>>2]=Ud(c[q>>2]|0,11340)|0;do if
(c[u>>2]|0){c[r>>2]=c[(c[p>>2]|0)+96>>2];c[o>>2]=Vd(c[r>>2]|0,71003)|
0;c[t>>2]=c[o>>2];c[s>>2]=Ud(c[q>>2]|0,11524)|0;f=Kc(c[l>>2]|0,0)|0;c[aa>
x3e;2]=f;if(!f){c[aa>>2]=Za[c[(c[u>>2]|0)+4>>2]&31](c[l>>2]|0,c[p>>2]|0,c
[H>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;if(!(c[aa>>2]|0)){if((c[(c[p>>2]|0)+148>
x3e;2]|0)!=1330926671){ba=112;break}if((c[H>>2]|0)<0){c[Y>>2]=0;ba=c[Y>>2]|0;i=ca;return ba|0
}if((c[H>>2]|0)>0){c[aa>>2]=6;break}a[V>>0]=1;c[aa>>2]=Wa[c[(c[p>>2]|0)+508
>>2]&31](c[p>>2]|0,1751474532,c[l>>2]|0,0)|0;if(c[aa>>2]|0){c[aa>>2]=Ya[c
[(c[u>>2]|0)+40>>2]&127](c[p>>2]|0,c[l>>2]|0)|0;if(c[aa>>2]|0)break}else{
a[U>>0]=0;c[aa>>2]=Za[c[(c[u>>2]|0)+8>>2]&31](c[l>>2]|0,c[p>>2]|
0,0,c[m>>2]|0,c[n>>2]|0)|0;if(c[aa>>2]|0)break}c[aa>>2]=Wa[c[(c[p>>2]|0)+508
x3e;>2]&31](c[p>>2]|0,1128678944,c[l>>2]|0,0)|0;if(c[aa>>2]|0)break}else{f=Kc(c[l>
x3e;2]|0,0)|0;c[aa>>2]=f;if(f|0)break;c[aa>>2]=0}c[S>>2]=c[(c[I>>2]|0)+100>>2];
c[J>>2]=bc(c[S>>2]|0,2072,aa)|0;if((c[aa>>2]|0)==0?(c[(c[p>>2]|0)+692>>2]=c[J
x3e;>2],c[aa>>2]=Sh(c[q>>2]|0,c[l>>2]|0,c[H>>2]|0,c[J>>2]|0,a[U>>
;0]|0)|0,(c[aa>>2]|0)==0):0){c[(c[J>>2]|0)+2052>>2]=c[s>>2];c[(c[J>>2]|0)+2056
>>2]=c[t>>2];c[(c[I>>2]|0)+4>>2]=c[H>>2];c[(c[I>>2]|0)+16>>
;2]=c[(c[J>>2]|0)+12>>2];c[M>>2]=(c[J>>2]|0)+1324;if(c[t>>2]|0?1:(c[(c[M>
x3e;2]|0)+128>>2]|0)!=65535){if(!(c[(c[M>>2]|0)+64>>2]|0)){if(d[U>>0]|0)l=1e3;else l=e[(
c[p>>2]|0)+68>>1]|0;c[(c[M>>2]|0)+64>>2]=l}c[v>>2]=(c[M>>2]|0)+48;c[
w>>2]=(c[M>>2]|0)+68;c[y>>2]=(c[M>>2]|0)+64;f=c[(c[v>>2]|0)+12>>2]|0
;c[x>>2]=(c[(c[v>>2]|0)+12>>2]|0)<0?0-f|0:f;if((c[x>>2]|0)!=65536){f=Vb(c[c[y>
x3e;2]>>2]|0,c[x>>2]|0)|0;c[c[y>>2]>>2]=f;y=Vb(c[c[v>>2]>>2]|0,c[x
x3e;>2]|0)|0;c[c[v>>2]>>2]=y;y=Vb(c[(c[v>>2]|0)+8>>2]|0,c[x>>2]|0)|0;c[(c
[v>>2]|0)+8>>2]=y;y=Vb(c[(c[v>>2]|0)+4>>2]|0,c[x>>2]|0)|0;c[(c[v>>2]|
0)+4>>2]=y;y=Vb(c[(c[v>>2]|0)+12>>2]|0,c[x>>2]|0)|0;c[(c[v>>2]|0)+12>>
;2]=y;y=Vb(c[c[w>>2]>>2]|0,c[x>>2]|0)|0;c[c[w>>2]>>2]=y;y=Vb(c[(c[w>>
;2]|0)+4>>2]|0,c[x>>2]|0)|0;c[(c[w>>2]|0)+4>>2]=y}y=c[w>>2]|0;c[y>>2
]=c[y>>2]>>16;y=(c[w>>2]|0)+4|0;c[y>>2]=c[y>>2]>>16;c[z>>2
]=c[(c[J>>2]|0)+1892>>2];while(1){if((c[z>>2]|0)>>>0<=0)break;c[D>>2
]=c[(c[J>>2]|0)+1896+((c[z>>2]|0)-1<<2)>>2];c[F>>2]=(c[J>>2]|0)+1324
;if(c[(c[D>>2]|0)+64>>2]|0){if((c[(c[F>>2]|0)+64>>2]|0)>>>0>1?(c[(c[
D>>2]|0)+64>>2]|0)>>>0>1:0){if((c[(c[F>>2]|0)+64>>2]|0)>>
x3e;0<(c[(c[D>>2]|0)+64>>2]|0)>>>0)l=c[(c[F>>2]|0)+64>>2]|0;else l=c
[(c[D>>2]|0)+64>>2]|0;c[C>>2]=l}else c[C>>2]=1;Xb((c[F>>2]|0)+48|0,(c[D>
x3e;2]|0)+48|0,c[C>>2]|0);Yb((c[D>>2]|0)+68|0,(c[F>>2]|0)+48|0,c[C>>2]|0);y=xb(c[(c[D>
;>2]|0)+64>>2]|0,c[(c[F>>2]|0)+64>>2]|0,c[C>>2]|0)|0;c[(c[D>>2]|0)+64>
;>2]=y}else{y=(c[D>>2]|0)+48|0;x=(c[F>>2]|0)+48|0;c[y>>2]=c[x>>2];c[y+4>>
2]=c[x+4>>2];c[y+8>>2]=c[x+8>>2];c[y+12>>2]=c[x+12>>2];y=(c[D>>2]|0)+
68|0;x=(c[F>>2]|0)+68|0;c[y>>2]=c[x>>2];c[y+4>>2]=c[x+4>>2];c[(c[D>>
2]|0)+64>>2]=c[(c[F>>2]|0)+64>>2]}c[A>>2]=(c[D>>2]|0)+48;c[B>>2]=(c[
D>>2]|0)+68;c[G>>2]=(c[D>>2]|0)+64;y=c[(c[A>>2]|0)+12>>2]|0;c[E>>2]=(
c[(c[A>>2]|0)+12>>2]|0)<0?0-y|0:y;if((c[E>>2]|0)!=65536){y=Vb(c[c[G>>2]>>
2]|0,c[E>>2]|0)|0;c[c[G>>2]>>2]=y;if((c[c[G>>2]>>2]|0)>>>0>
;1e5)c[c[G>>2]>>2]=(((c[c[G>>2]>>2]|0)+500|0)>>>0)/1e3|0;y=Vb(c[c[A>
x3e;2]>>2]|0,c[E>>2]|0)|0;c[c[A>>2]>>2]=y;y=Vb(c[(c[A>>2]|0)+8>>2]|0
,c[E>>2]|0)|0;c[(c[A>>2]|0)+8>>2]=y;y=Vb(c[(c[A>>2]|0)+4>>2]|0,c[E>>
2]|0)|0;c[(c[A>>2]|0)+4>>2]=y;y=Vb(c[(c[A>>2]|0)+12>>2]|0,c[E>>2]|0)|0;c[(c[A
x3e;>2]|0)+12>>2]=y;y=Vb(c[c[B>>2]>>2]|0,c[E>>2]|0)|0;c[c[B>>2]>>
;2]=y;y=Vb(c[(c[B>>2]|0)+4>>2]|0,c[E>>2]|0)|0;c[(c[B>>2]|0)+4>>2]=y}y=c[B>
;>2]|0;c[y>>2]=c[y>>2]>>16;y=(c[B>>2]|0)+4|0;c[y>>2]=c[y>>2]>
;>16;c[z>>2]=(c[z>>2]|0)+-1}if(a[U>>0]|0){c[W>>2]=0;c[c[I>>2]>>
2]=c[(c[J>>2]|0)+8>>2];l=c[J>>2]|0;if((c[(c[M>>2]|0)+128>>2]|0)!=65535)c[(c[I
x3e;>2]|0)+16>>2]=(c[l+1152+16>>2]|0)+1;else c[(c[I>>2]|0)+16>>2]=c[l+1176+8>
x3e;2];c[(c[I>>2]|0)+52>>2]=c[(c[M>>2]|0)+80>>2]>>16;c[(c[I>>2]|0)+52
+4>>2]=c[(c[M>>2]|0)+80+4>>2]>>16;c[(c[I>>2]|0)+52+8>>2]=(c[(c[M>
;>2]|0)+80+8>>2]|0)+65535>>16;c[(c[I>>2]|0)+52+12>>2]=(c[(c[M>>2]|0)+80+12
>>2]|0)+65535>>16;b[(c[I>>2]|0)+68>>1]=c[(c[M>>2]|0)+64>>2];b[(c[I
x3e;>2]|0)+70>>1]=c[(c[I>>2]|0)+52+12>>2];b[(c[I>>2]|0)+72>>1]=c[(c[I>
;>2]|0)+52+4>>2];b[(c[I>>2]|0)+74>>1]=((e[(c[I>>2]|0)+68>>1]|0)*12|0)/10|
0;if((b[(c[I>>2]|0)+74>>1]|0)<((b[(c[I>>2]|0)+70>>1]|0)-(b[(c[I>>2]|0)+72
>>1]|0)|0))b[(c[I>>2]|0)+74>>1]=(b[(c[I>>2]|0)+70>>1]|0)-(b[(c[I>>2]|
0)+72>>1]|0);b[(c[I>>2]|0)+80>>1]=c[(c[M>>2]|0)+32>>2]>>16;b[(c[I>
;>2]|0)+82>>1]=c[(c[M>>2]|0)+36>>2]>>16;l=qi(c[J>>2]|0,c[H>>2]|
0)|0;c[(c[I>>2]|0)+20>>2]=l;l=c[J>>2]|0;m=c[M>>2]|0;a:do if(c[(c[I>>2]|0)+20
x3e;>2]|0){c[Q>>2]=yh(l,c[m+12>>2]|0)|0;c[R>>2]=c[Q>>2];c[N>>2]=c[(c[I>
;>2]|0)+20>>2];c[O>>2]=0;ri(c[(c[I>>2]|0)+20>>2]|0);if(c[(c[M>>2]|0)+16
x3e;>2]|0?(c[O>>2]=yh(c[J>>2]|0,c[(c[M>>2]|0)+16>>2]|0)|0,c[O>>2]|0):0)c[
N>>2]=c[O>>2];if((c[Q>>2]|0)!=0&(c[N>>2]|0)!=0){b:while(1){if(!(a[c[R>>2]
x3e;>0]|0))break a;if((a[c[R>>2]>>0]|0)==(a[c[N>>2]>>0]|0)){c[N>>2]=(c[N
x3e;>2]|0)+1;c[R>>2]=(c[R>>2]|0)+1;continue}do if((a[c[R>>2]>>0]|0)!=32){if((a[c[R
x3e;>2]>>0]|0)==45)break;if((a[c[N>>2]>>0]|0)!=32?(a[c[N>>2]>>0]|0)!=45:0
)break b;c[N>>2]=(c[N>>2]|0)+1;continue b}while(0);c[R>>2]=(c[R>>2]|0)+1}if((a[c[N>
x3e;2]>>0]|0)==0?a[c[R>>2]>>0]|0:0)c[W>>2]=si(c[S>>2]|0,c[R>>2]|0)|0
}}else{c[K>>2]=yh(l,c[m+168>>2]|0)|0;if(c[K>>2]|0){R=si(c[S>>2]|0,c[K>>2]|0)|0
;c[(c[I>>2]|0)+20>>2]=R}}while(0);if(c[W>>2]|0)c[(c[I>>2]|0)+24>>2]=c[W>
x3e;2];else{W=si(c[S>>2]|0,11262)|0;c[(c[I>>2]|0)+24>>2]=W}c[P>>2]=2065;if(a[V>>
;0]|0)c[P>>2]=c[P>>2]|8;if(a[(c[M>>2]|0)+24>>0]|0)c[P>>2]=c[P>>2]|4;
c[(c[I>>2]|0)+8>>2]=c[P>>2];c[P>>2]=0;if(c[(c[M>>2]|0)+28>>2]|0)c[P
x3e;>2]=c[P>>2]|1;c[X>>2]=yh(c[J>>2]|0,c[(c[M>>2]|0)+20>>2]|0)|0;do if(c[
X>>2]|0){if(Kr(c[X>>2]|0,11270)|0?Kr(c[X>>2]|0,11275)|0:0)break;c[P>>2]=c[P>>2
]|2}while(0);do if(!(c[P>>2]&2)){if(!(c[(c[I>>2]|0)+24>>2]|0))break;if(Lr(c[(c[I>>2
]|0)+24>>2]|0,11270,4)|0?Lr(c[(c[I>>2]|0)+24>>2]|0,11275,5)|0:0)break;c[P>>2]=c[P>
x3e;2]|2}while(0);c[(c[I>>2]|0)+12>>2]=c[P>>2]}if((c[(c[M>>2]|0)+128>>2]|0)==65535
){X=(c[I>>2]|0)+8|0;c[X>>2]=c[X>>2]|512}if((c[(c[M>>2]|0)+128>>2]|0)!=65535?d[
U>>0]|0:0){X=(c[I>>2]|0)+8|0;c[X>>2]=c[X>>2]|4096}c[$>>2]=(c[J>>2]|0
)+116;c[T>>2]=0;while(1){if((c[T>>2]|0)>>>0>=(c[(c[I>>2]|0)+36>>2]|0
)>>>0){ba=96;break}c[L>>2]=c[(c[(c[I>>2]|0)+40>>2]|0)+(c[T>>2]<<
;2)>>2];if((e[(c[L>>2]|0)+8>>1]|0)==3?(e[(c[L>>2]|0)+10>>1]|0)==1:0)break;if(!(
e[(c[L>>2]|0)+8>>1]|0))break;c[T>>2]=(c[T>>2]|0)+1}if((ba|0)==96){if(d[U>>0]|0
?(c[(c[J>>2]|0)+1324+128>>2]|0)!=65535:0)break;if(((c[T>>2]|0)+1|0)>>>0>15)break
;c[_>>2]=c[I>>2];b[_+8>>1]=3;b[_+10>>1]=1;c[_+4>>2]=1970170211;c[T>>
2]=c[(c[I>>2]|0)+36>>2];c[aa>>2]=Ld(868,0,_,0)|0;if((c[aa>>2]|0)!=0&163!=(c[aa>
;>2]|0))break;c[aa>>2]=0;if((c[(c[I>>2]|0)+92>>2]|0)==0?(c[T>>2]|0)!=(c[(c[I>
x3e;2]|0)+36>>2]|0):0)c[(c[I>>2]|0)+92>>2]=c[(c[(c[I>>2]|0)+40>>2]|0)+(c[T>
;>2]<<2)>>2]}if((c[T>>2]|0)>>>0<=15?(c[(c[$>>2]|0)+8>>
;2]|0)>>>0>0:0){c[_>>2]=c[I>>2];b[_+8>>1]=7;do if(c[(c[$>>2]|0)+4>
;>2]|0){l=_+10|0;if((c[(c[$>>2]|0)+4>>2]|0)==1){b[l>>1]=1;c[_+4>>2]=1094992453;c[Z
x3e;>2]=828;break}else{b[l>>1]=2;c[_+4>>2]=1094992451;c[Z>>2]=828;break}}else{b[_+10>>
;1]=0;c[_+4>>2]=1094995778;c[Z>>2]=828}while(0);c[aa>>2]=Ld(c[Z>>2]|0,0,_,0)|0}}else ba=
112}}}else ba=112;while(0);if((ba|0)==112)c[aa>>2]=2;c[Y>>2]=c[aa>>2];ba=c[Y>>2]|0;i=ca;
return ba|0}function Sh(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
;x=i;i=i+112|0;j=x+100|0;p=x+96|0;q=x+92|0;r=x+88|0;k=x+105|0;u=x+84|0;n=x+80|0;s=x+76|0;t=x+72|0;w=x+40|0;l=x+8|0;o=x+4|0;m=x;v
=x+104|0;c[j>>2]=b;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;a[k>>0]=h;c[n>>2]=c
[(c[p>>2]|0)+28>>2];Ns(c[r>>2]|0,0,2072)|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>
x3e;2]=0;c[w+12>>2]=0;c[w+16>>2]=0;c[w+20>>2]=0;c[w+24>>2]=0;c[w+28>>2]=0;c[c[
r>>2]>>2]=c[p>>2];c[(c[r>>2]|0)+4>>2]=c[n>>2];c[t>>2]=(c[r
>>2]|0)+1324;c[s>>2]=Mc(c[p>>2]|0)|0;e=le(c[p>>2]|0,5532,c[r>>2]|0)|0;c[u>
;>2]=e;a:do if(!e){if(((d[(c[r>>2]|0)+16>>0]|0|0)==1?(d[(c[r>>2]|0)+18>>0]|0|0)>
;=4:0)?(d[(c[r>>2]|0)+19>>0]|0|0)<=4:0){e=Qc(c[p>>2]|0,(d[(c[r>>2]|0)+18>>
;0]|0)-4|0)|0;c[u>>2]=e;if(e|0)break;e=Th((c[r>>2]|0)+20|0,c[p>>2]|0,0)|0;c[u>>2]=e;if(e
|0)break;e=Th((c[r>>2]|0)+1208|0,c[p>>2]|0,0)|0;c[u>>2]=e;if(e|0)break;e=Th(w,c[p>>2]|0,
1)|0;c[u>>2]=e;if(e|0)break;e=Th((c[r>>2]|0)+84|0,c[p>>2]|0,1)|0;c[u>>2]=e;if(e|0)break;
e=Vh(w,(c[r>>2]|0)+1316|0,(c[r>>2]|0)+1320|0)|0;c[u>>2]=e;if(e|0)break;c[(c[r>>2]|0)+1312
>>2]=c[w+8>>2];c[(c[r>>2]|0)+8>>2]=c[(c[r>>2]|0)+20+8>>2];if((c[q>
;>2]|0)>=(c[(c[r>>2]|0)+8>>2]|0))c[u>>2]=6;if((c[q>>2]|0)<0)break;c[u>
;>2]=Xh((c[r>>2]|0)+1324|0,(c[r>>2]|0)+1208|0,c[q>>2]|0,c[p>>2]|0,c[s>>2]|
0,c[j>>2]|0)|0;if(c[u>>2]|0)break;e=Kc(c[p>>2]|0,(c[s>>2]|0)+(c[(c[t>>2]|0)+108
>>2]|0)|0)|0;c[u>>2]=e;if(e|0)break;c[u>>2]=Th((c[r>>2]|0)+1176|0,c[p>>2]|0,0)|
0;if(c[u>>2]|0)break;if((c[(c[t>>2]|0)+128>>2]|0)!=65535){e=Kc(c[p>>2]|0,(c[s>>
;2]|0)+(c[(c[t>>2]|0)+160>>2]|0)|0)|0;c[u>>2]=e;if(e|0)break;c[u>>2]=Th(l,c[p>>
;2]|0,0)|0;if(c[u>>2]|0)break;b:do if((c[l+8>>2]|0)>>>0<=32){c[(c[r>>2]|0)+1892
>>2]=c[l+8>>2];c[o>>2]=hc(c[n>>2]|0,568,0,c[l+8>>2]|0,0,u)|0;if(c[u>>
;2]|0)break;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[l+8>>2]|0)>>
x3e;0)break;c[(c[r>>2]|0)+1896+(c[m>>2]<<2)>>2]=(c[o>>2]|0)+((c[m>>2
]|0)*568|0);c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0
x3e;=(c[l+8>>2]|0)>>>0)break;c[o>>2]=c[(c[r>>2]|0)+1896+(c[m>>2]<<
;2)>>2];c[u>>2]=Xh(c[o>>2]|0,l,c[m>>2]|0,c[p>>2]|0,c[s>>2]|0,c[j>
;>2]|0)|0;if(c[u>>2]|0)break b;c[m>>2]=(c[m>>2]|0)+1}c[u>>2]=ki((c[r>>2]|
0)+2024|0,c[(c[r>>2]|0)+1176+8>>2]|0,c[p>>2]|0,(c[s>>2]|0)+(c[(c[t>>2]|0)+164
x3e;>2]|0)|0)|0}while(0);li(l);if(c[u>>2]|0)break}else c[(c[r>>2]|0)+1892>>2]=0;if(!(c[(c[t
x3e;>2]|0)+108>>2]|0)){c[u>>2]=2;break}c[(c[r>>2]|0)+12>>2]=c[(c[r>>2]|0)+
1176+8>>2];c[u>>2]=Vh((c[r>>2]|0)+84|0,(c[r>>2]|0)+1308|0,0)|0;if(c[u>>2]|0)break
;do if((c[(c[r>>2]|0)+12>>2]|0)>>>0>0){if((c[(c[t>>2]|0)+128>>2]|0)!=
65535)j=(d[k>>0]|0|0)!=0;else j=0;a[v>>0]=j&1;c[u>>2]=mi((c[r>>2]|0)+1152|0,c[(c[r
x3e;>2]|0)+12>>2]|0,c[p>>2]|0,c[s>>2]|0,c[(c[t>>2]|0)+100>>2]|0,a[v>
x3e;0]|0)|0;if(c[u>>2]|0)break a;if((c[(c[t>>2]|0)+128>>2]|0)!=65535)break;c[u>>2]=oi((c
[r>>2]|0)+116|0,(c[r>>2]|0)+1152|0,c[(c[r>>2]|0)+12>>2]|0,c[p>>2]|0,c[s>
x3e;2]|0,c[(c[t>>2]|0)+104>>2]|0)|0;if(c[u>>2]|0)break a}while(0);v=qi(c[r>>2]|0,c[q>
;>2]|0)|0;c[(c[r>>2]|0)+1304>>2]=v;break}c[u>>2]=2}while(0);li(w);i=x;return c[u>>2
]|0}function Th(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;r=i;i=i+32|0;n=r+16|0;j=r+12|0;o=r+23|0;p=r+8|0
;q=r+4|0;k=r+20|0;l=r+22|0;m=r;c[n>>2]=f;c[j>>2]=g;a[o>>0]=h;c[q>>2]=c[(c[j>>2
]|0)+28>>2];g=c[n>>2]|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=
0;c[g+16>>2]=0;c[g+20>>2]=0;c[g+24>>2]=0;c[g+28>>2]=0;c[c[n>>2]>>2]=
c[j>>2];g=Mc(c[j>>2]|0)|0;c[(c[n>>2]|0)+4>>2]=g;b[k>>1]=Pc(c[j>>2]|0
,p)|0;do if(((c[p>>2]|0)==0?(e[k>>1]|0)>0:0)?(a[l>>0]=ke(c[j>>2]|0,p)|0,(c[p>
x3e;2]|0)==0):0){if((d[l>>0]|0)>=1?(d[l>>0]|0)<=4:0){c[(c[n>>2]|0)+8>>2]=e[k
x3e;>1];a[(c[n>>2]|0)+12>>0]=a[l>>0]|0;c[m>>2]=_((e[k>>1]|0)+1|0,d[l>
;>0]|0)|0;c[(c[n>>2]|0)+16>>2]=(c[(c[n>>2]|0)+4>>2]|0)+3+(c[m>>2]|0);g=Qc
(c[j>>2]|0,(c[m>>2]|0)-(d[l>>0]|0)|0)|0;c[p>>2]=g;if(g|0)break;c[m>>2]=Uh(c[n
x3e;>2]|0,p)|0;if(c[p>>2]|0)break;if(!(c[m>>2]|0)){c[p>>2]=8;break}k=(c[m>>2]|0)+-1
|0;c[m>>2]=k;c[(c[n>>2]|0)+20>>2]=k;k=c[j>>2]|0;j=c[m>>2]|0;if(a[o>>
0]|0){c[p>>2]=de(k,j,(c[n>>2]|0)+28|0)|0;break}else{c[p>>2]=Qc(k,j)|0;break}}c[p>>2]=8}while
(0);if(!(c[p>>2]|0)){q=c[p>>2]|0;i=r;return q|0}Fb(c[q>>2]|0,c[(c[n>>2]|0)+24>>
;2]|0);c[(c[n>>2]|0)+24>>2]=0;q=c[p>>2]|0;i=r;return q|0}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,m=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;m=l+8|0;k=l+24|0;j=l+4|0;h=l;c[e>>2]=a;c[f>>
2]=b;c[m>>2]=c[c[e>>2]>>2];c[j>>2]=0;a=Rc(c[m>>2]|0,k,d[(c[e>>2]|0)+
12>>0]|0)|0;c[g>>2]=a;if(a|0){k=c[g>>2]|0;m=c[f>>2]|0;c[m>>2]=k;m=c[j>>
;2]|0;i=l;return m|0}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(d[(c[e>>2]|0)+12>>0]|0|0))
break;c[j>>2]=c[j>>2]<<8|(d[k+(c[h>>2]|0)>>0]|0);c[h>>2]=(c[h>
x3e;2]|0)+1}k=c[g>>2]|0;m=c[f>>2]|0;c[m>>2]=k;m=c[j>>2]|0;i=l;return m|0}function Vh(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;t=i;i=i+48|0;f=t+44|0;g=t+40|0;h=t+36|0;k=t+32
|0;m=t+28|0;r=t+24|0;o=t+20|0;n=t+16|0;j=t+12|0;l=t+8|0;q=t+4|0;p=t;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;
c[k>>2]=0;c[m>>2]=c[(c[c[f>>2]>>2]|0)+28>>2];c[o>>2]=0;c[c[g>
x3e;2]>>2]=0;if((c[(c[f>>2]|0)+24>>2]|0)==0?(c[k>>2]=Wh(c[f>>2]|0)|0,c[k>
x3e;2]|0):0){s=c[k>>2]|0;i=t;return s|0}if((c[(c[f>>2]|0)+8>>2]|0)>>>0<=0){s=c
[k>>2]|0;i=t;return s|0}c[r>>2]=hc(c[m>>2]|0,4,0,(c[(c[f>>2]|0)+8>>2]|0)+1|0,0
,k)|0;if(c[k>>2]|0){s=c[k>>2]|0;i=t;return s|0}if(c[h>>2]|0?(c[o>>2]=bc(c[m>>2
]|0,(c[(c[f>>2]|0)+20>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)|0,k)|0,c[k>>2]|0):0){s=c[
k>>2]|0;i=t;return s|0}c[l>>2]=0;c[q>>2]=c[(c[f>>2]|0)+28>>2];d=(c[c[(c[f>
;>2]|0)+24>>2]>>2]|0)-1|0;c[j>>2]=d;c[j>>2]=(c[j>>2]|0)>>>
0>=(c[(c[f>>2]|0)+20>>2]|0)>>>0?0:d;if(c[h>>2]|0)c[c[r>>2]>>
;2]=(c[o>>2]|0)+(c[j>>2]|0);else c[c[r>>2]>>2]=(c[q>>2]|0)+(c[j>>2]|
0);c[n>>2]=1;while(1){if((c[n>>2]|0)>>>0>(c[(c[f>>2]|0)+8>>2]|0)>
;>>0)break;c[p>>2]=(c[(c[(c[f>>2]|0)+24>>2]|0)+(c[n>>2]<<2)>>
;2]|0)-1;if((c[p>>2]|0)!=0?(c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0:0){
if((c[p>>2]|0)>>>0>=(c[(c[f>>2]|0)+20>>2]|0)>>>0?(c[n>>
;2]|0)>>>0<(c[(c[f>>2]|0)+8>>2]|0)>>>0:0)s=16}else s=16;if((s|0)==16){s=0
;c[p>>2]=c[j>>2]}if(c[h>>2]|0){c[(c[r>>2]|0)+(c[n>>2]<<2)>>
;2]=(c[o>>2]|0)+(c[p>>2]|0)+(c[l>>2]|0);if((c[p>>2]|0)!=(c[j>>2]|0)){Ss(c[(c[r
>>2]|0)+((c[n>>2]|0)-1<<2)>>2]|0,(c[q>>2]|0)+(c[j>>2]|0)|0,(c[(c[r
x3e;>2]|0)+(c[n>>2]<<2)>>2]|0)-(c[(c[r>>2]|0)+((c[n>>2]|0)-1<<2
)>>2]|0)|0)|0;a[c[(c[r>>2]|0)+(c[n>>2]<<2)>>2]>>0]=0;d=(c[r>>
;2]|0)+(c[n>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+1}}else
c[(c[r>>2]|0)+(c[n>>2]<<2)>>2]=(c[q>>2]|0)+(c[p>>2]|0);c[j>>
;2]=c[p>>2];c[n>>2]=(c[n>>2]|0)+1}c[c[g>>2]>>2]=c[r>>2];if(!(c[h>
;>2]|0)){s=c[k>>2]|0;i=t;return s|0}c[c[h>>2]>>2]=c[o>>2];s=c[k>>2]|0;i=t
;return s|0}function Wh(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;o=i;i=i+48|0;e=o+28|0;g=o+24|0;n=o+20|0;h=o+16|0;j=
o+32|0;f=o+12|0;k=o+8|0;l=o+4|0;m=o;c[e>>2]=b;c[g>>2]=0;c[n>>2]=c[c[e>>2]>>2];
c[h>>2]=c[(c[n>>2]|0)+28>>2];if(((((c[(c[e>>2]|0)+8>>2]|0)>>>0
x3e;0?(c[(c[e>>2]|0)+24>>2]|0)==0:0)?(a[j>>0]=a[(c[e>>2]|0)+12>>0]|0,c[f>
x3e;2]=_((c[(c[e>>2]|0)+8>>2]|0)+1|0,d[j>>0]|0)|0,b=hc(c[h>>2]|0,4,0,(c[(c[e>>
2]|0)+8>>2]|0)+1|0,0,g)|0,c[(c[e>>2]|0)+24>>2]=b,(c[g>>2]|0)==0):0)?(b=Kc(c[n>>
;2]|0,(c[(c[e>>2]|0)+4>>2]|0)+3|0)|0,c[g>>2]=b,(b|0)==0):0)?(b=ee(c[n>>2]|0,c[f>>
;2]|0)|0,c[g>>2]=b,(b|0)==0):0){c[m>>2]=c[(c[e>>2]|0)+24>>2];c[k>>2]=c[(c[n>
;>2]|0)+32>>2];c[l>>2]=(c[k>>2]|0)+(c[f>>2]|0);a:do switch(d[j>>0]|0){case
1:while(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>
2]>>2]=d[c[k>>2]>>0];c[k>>2]=(c[k>>2]|0)+1;c[m>>2]=(c[m>>2
]|0)+4}case 2:while(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m
x3e;>2]>>2]=((d[c[k>>2]>>0]&65535)<<8|(d[(c[k>>2]|0)+1>>0]
x26;65535)<<0)&65535;c[k>>2]=(c[k>>2]|0)+2;c[m>>2]=(c[m>>2]|0)+4}case 3:while
(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>2]>
x3e;2]=a[c[k>>2]>>0]<<16|d[(c[k>>2]|0)+1>>0]<<8|d[(c[k>>2]|
0)+2>>0]<<0;c[k>>2]=(c[k>>2]|0)+3;c[m>>2]=(c[m>>2]|0)+4}default:while
(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>2]>
x3e;2]=d[c[k>>2]>>0]<<24|d[(c[k>>2]|0)+1>>0]<<16|d[(c[k>>2
]|0)+2>>0]<<8|d[(c[k>>2]|0)+3>>0]<<0;c[k>>2]=(c[k>>2]|0)+4
;c[m>>2]=(c[m>>2]|0)+4}}while(0);ge(c[n>>2]|0)}if(!(c[g>>2]|0)){n=c[g>>2]|0;i=
o;return n|0}Fb(c[h>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;n=c[g
>>2]|0;i=o;return n|0}function Xh(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;v=i;i=i+464|0;k=v+456|0;l=v+452|0;w=v+448|0;m=v+444|0;n=v+440|0;o=v+436|0;r=v+432|0;s=v+16|0;p=v+12|0;q=v+8
|0;u=v+4|0;t=v;c[k>>2]=b;c[l>>2]=e;c[w>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>
;2]=j;c[p>>2]=0;c[u>>2]=c[k>>2];c[t>>2]=(c[k>>2]|0)+172;Yh(s,4096,c[k>>
;2]|0,c[o>>2]|0);Ns(c[u>>2]|0,0,172)|0;c[(c[u>>2]|0)+32>>2]=-6553600;c[(c[u>>2
]|0)+36>>2]=3276800;c[(c[u>>2]|0)+44>>2]=2;c[(c[u>>2]|0)+48>>2]=65536;c[(c[u
x3e;>2]|0)+48+12>>2]=65536;c[(c[u>>2]|0)+152>>2]=8720;c[c[u>>2]>>2]=65535
;c[(c[u>>2]|0)+4>>2]=65535;c[(c[u>>2]|0)+8>>2]=65535;c[(c[u>>2]|0)+12>>
;2]=65535;c[(c[u>>2]|0)+16>>2]=65535;c[(c[u>>2]|0)+20>>2]=65535;c[(c[u>>2]|0)+
124>>2]=65535;c[(c[u>>2]|0)+128>>2]=65535;c[(c[u>>2]|0)+132>>2]=65535;c[(c[u
x3e;>2]|0)+168>>2]=65535;c[r>>2]=Zh(c[l>>2]|0,c[w>>2]|0,p,q)|0;if(!(c[r>>
2]|0))c[r>>2]=_h(s,c[p>>2]|0,(c[p>>2]|0)+(c[q>>2]|0)|0)|0;ji(c[l>>2]|0,p);if(c
[r>>2]|0){w=c[r>>2]|0;i=v;return w|0}if((c[(c[u>>2]|0)+128>>2]|0)!=65535){w=c[r>>
;2]|0;i=v;return w|0}do if(c[(c[u>>2]|0)+112>>2]|0?c[(c[u>>2]|0)+116>>2]|0:0){Ns(c[t>
;>2]|0,0,360)|0;c[(c[t>>2]|0)+200>>2]=7;c[(c[t>>2]|0)+204>>2]=1;c[(c[t>>2
]|0)+332>>2]=-1;c[(c[t>>2]|0)+340>>2]=3932;c[(c[t>>2]|0)+196>>2]=2596864;Yh(s,
8192,c[t>>2]|0,c[o>>2]|0);w=Kc(c[m>>2]|0,(c[n>>2]|0)+(c[(c[k>>2]|0)+112>
x3e;2]|0)|0)|0;c[r>>2]=w;if(w|0){w=c[r>>2]|0;i=v;return w|0}w=ee(c[m>>2]|0,c[(c[k>>2]|0)+
116>>2]|0)|0;c[r>>2]=w;if(w|0){w=c[r>>2]|0;i=v;return w|0}c[r>>2]=_h(s,c[(c[m>>
;2]|0)+32>>2]|0,c[(c[m>>2]|0)+36>>2]|0)|0;ge(c[m>>2]|0);if(c[r>>2]|0){w=c[r>
;>2]|0;i=v;return w|0}else{w=c[t>>2]|0;a[w>>0]=(d[w>>0]|0)&-2;break}}while(0);if(!(c[(c[
t>>2]|0)+348>>2]|0)){w=c[r>>2]|0;i=v;return w|0}w=Kc(c[m>>2]|0,(c[n>>2]|0)+(c[(
c[u>>2]|0)+112>>2]|0)+(c[(c[t>>2]|0)+348>>2]|0)|0)|0;c[r>>2]=w;if(w|0){w=c[r
x3e;>2]|0;i=v;return w|0}c[r>>2]=Th((c[k>>2]|0)+532|0,c[m>>2]|0,1)|0;if(c[r>>2]|0){
w=c[r>>2]|0;i=v;return w|0}c[r>>2]=Vh((c[k>>2]|0)+532|0,(c[k>>2]|0)+564|0,0)|0;w=c[r>
;>2]|0;i=v;return w|0}function Yh(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;Ns(c[g>>2]|0,0,416)|0;c[(c[g
>>2]|0)+404>>2]=(c[g>>2]|0)+16;c[(c[g>>2]|0)+408>>2]=c[k>>2];c[(c[g
x3e;>2]|0)+412>>2]=c[j>>2];c[c[g>>2]>>2]=c[h>>2];i=f;return}function Zh(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;q=i;i=i+48|0;g=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;l=q
+16|0;p=q+12|0;m=q+8|0;n=q+4|0;o=q;c[g>>2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>
;2]=0;if(c[g>>2]|0?(c[(c[g>>2]|0)+8>>2]|0)>>>0>(c[h>>2]|0)>>
;>0:0){c[p>>2]=c[c[g>>2]>>2];c[n>>2]=0;b=c[h>>2]|0;a=c[g>>2]|0;
a:do if(c[(c[g>>2]|0)+24>>2]|0){c[m>>2]=c[(c[a+24>>2]|0)+(b<<2)>>2];
if(c[m>>2]|0)do{c[h>>2]=(c[h>>2]|0)+1;c[n>>2]=c[(c[(c[g>>2]|0)+24>>2
]|0)+(c[h>>2]<<2)>>2];if(c[n>>2]|0)break a}while((c[h>>2]|0)>>>
0<(c[(c[g>>2]|0)+8>>2]|0)>>>0)}else{c[o>>2]=_(b,d[a+12>>0]|0)|0;o=Kc
(c[p>>2]|0,(c[(c[g>>2]|0)+4>>2]|0)+3+(c[o>>2]|0)|0)|0;c[l>>2]=o;if(o|0){p=c[l
x3e;>2]|0;i=q;return p|0}c[m>>2]=Uh(c[g>>2]|0,l)|0;if(c[l>>2]|0){p=c[l>>2]|0;i=q;return
p|0}if(c[m>>2]|0)do{c[h>>2]=(c[h>>2]|0)+1;c[n>>2]=Uh(c[g>>2]|0,l)|0;if(c[n>
;>2]|0)break a}while((c[h>>2]|0)>>>0<(c[(c[g>>2]|0)+8>>2]|0)>>
x3e;0)}while(0);if(!((c[n>>2]|0)>>>0<=((c[(c[p>>2]|0)+4>>2]|0)+1|0)>>
;>0?(c[(c[g>>2]|0)+16>>2]|0)>>>0<=((c[(c[p>>2]|0)+4>>2]|0)-(c[n
>>2]|0)+1|0)>>>0:0))c[n>>2]=(c[(c[p>>2]|0)+4>>2]|0)-(c[(c[g>>2]|
0)+16>>2]|0)+1;if(c[m>>2]|0?(c[n>>2]|0)>>>0>(c[m>>2]|0)>>
x3e;0:0){c[c[k>>2]>>2]=(c[n>>2]|0)-(c[m>>2]|0);if(c[(c[g>>2]|0)+28>>
2]|0){c[c[j>>2]>>2]=(c[(c[g>>2]|0)+28>>2]|0)+(c[m>>2]|0)+-1;p=c[l>>2
]|0;i=q;return p|0}o=Kc(c[p>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[m>>2]|0)-1|0)|0;c[l>
x3e;2]=o;if(o|0){p=c[l>>2]|0;i=q;return p|0}c[l>>2]=de(c[p>>2]|0,(c[n>>2]|0)-(c[m>
x3e;2]|0)|0,c[j>>2]|0)|0;p=c[l>>2]|0;i=q;return p|0}c[c[j>>2]>>2]=0;c[c[k>>2]
x3e;>2]=0;p=c[l>>2]|0;i=q;return p|0}c[l>>2]=6;p=c[l>>2]|0;i=q;return p|0}function _h(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;v=i;i=i+64|0;h=v+52|0;w=v+48|0;j=v+44|0;p=
v+40|0;m=v+36|0;x=v+32|0;s=v+28|0;k=v+24|0;o=v+20|0;n=v+16|0;t=v+12|0;q=v+8|0;r=v+4|0;l=v;c[h>>2]=e;c[w>>2]=
f;c[j>>2]=g;c[p>>2]=c[w>>2];c[m>>2]=0;c[x>>2]=c[c[h>>2]>>2
];c[x>>2]=c[x>>2];c[(c[h>>2]|0)+404>>2]=(c[h>>2]|0)+16;c[(c[h>>2]|0)+
4>>2]=c[w>>2];c[(c[h>>2]|0)+8>>2]=c[j>>2];c[(c[h>>2]|0)+12>>
;2]=c[w>>2];a:while(1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0){u=47
;break}c[s>>2]=d[c[p>>2]>>0];g=((c[(c[h>>2]|0)+404>>2]|0)-((c[h>>2]|
0)+16)|0)/4|0;b:do if((c[s>>2]|0)>>>0>=27&(c[s>>2]|0)!=31){if((g|0)>=96){u=48;
break a}w=c[p>>2]|0;f=(c[h>>2]|0)+404|0;x=c[f>>2]|0;c[f>>2]=x+4;c[x>>2]=w;if((
c[s>>2]|0)==30){c[p>>2]=(c[p>>2]|0)+1;while(1){if((c[p>>2]|0)>>>0>=(
c[j>>2]|0)>>>0){u=47;break a}c[s>>2]=(d[c[p>>2]>>0]|0)>>4;if((c
[s>>2]|0)==15)break b;c[s>>2]=(d[c[p>>2]>>0]|0)&15;if((c[s>>2]|0)==15)break
b;c[p>>2]=(c[p>>2]|0)+1}}if((c[s>>2]|0)==28){c[p>>2]=(c[p>>2]|0)+2;break}if((
c[s>>2]|0)==29){c[p>>2]=(c[p>>2]|0)+4;break}if((c[s>>2]|0)>>>0>246)c
[p>>2]=(c[p>>2]|0)+1}else{c[o>>2]=g;c[c[(c[h>>2]|0)+404>>2]>>2]=c[p
x3e;>2];c[k>>2]=c[s>>2];if((c[s>>2]|0)==12){c[p>>2]=(c[p>>2]|0)+1;if((c[p
>>2]|0)>>>0>=(c[j>>2]|0)>>>0){u=50;break a}c[k>>2]=256|(d[c[p
x3e;>2]>>0]|0)}c[k>>2]=c[k>>2]|c[(c[h>>2]|0)+408>>2];c[n>>2]=920
;while(1){if(!(c[c[n>>2]>>2]|0))break;if((c[(c[n>>2]|0)+4>>2]|0)==(c[k>>2]|0)){
u=23;break}c[n>>2]=(c[n>>2]|0)+28}c:do if((u|0)==23){u=0;c[q>>2]=(c[(c[h>>2]|0)+412>
;>2]|0)+(c[(c[n>>2]|0)+8>>2]|0);if((c[o>>2]|0)>>>0<1?(c[c[n>>2]
x3e;>2]|0)!=6:0){u=49;break a}switch(c[c[n>>2]>>2]|0){case 1:case 4:case 5:{c[t>>2]=hi((c[h
x3e;>2]|0)+16|0)|0;break}case 2:{c[t>>2]=fi((c[h>>2]|0)+16|0)|0;break}case 3:{c[t>>2]=di((c[h
>>2]|0)+16|0,3)|0;break}case 6:{c[r>>2]=(c[(c[h>>2]|0)+412>>2]|0)+(c[(c[n>>2]|
0)+24>>2]|0);c[l>>2]=(c[h>>2]|0)+16;if((c[o>>2]|0)>>>0>(c[(c[n>
x3e;2]|0)+20>>2]|0)>>>0)c[o>>2]=c[(c[n>>2]|0)+20>>2];a[c[r>>2]
x3e;>0]=c[o>>2];c[t>>2]=0;while(1){if((c[o>>2]|0)>>>0<=0)break c;x=c[l>
;>2]|0;c[l>>2]=x+4;x=hi(x)|0;c[t>>2]=(c[t>>2]|0)+x;switch(d[(c[n>>2]|0)+12>>
;0]|0|0){case 1:{a[c[q>>2]>>0]=c[t>>2];break}case 2:{b[c[q>>2]>>1]=c[t>
x3e;2];break}case 4:{c[c[q>>2]>>2]=c[t>>2];break}default:c[c[q>>2]>>2]=c[t>
;>2]}c[q>>2]=(c[q>>2]|0)+(d[(c[n>>2]|0)+12>>0]|0);c[o>>2]=(c[o>>
;2]|0)+-1}}default:{c[m>>2]=Ta[c[(c[n>>2]|0)+16>>2]&63](c[h>>2]|0)|0;if(c[m>
x3e;2]|0){u=47;break a}else break c}}switch(d[(c[n>>2]|0)+12>>0]|0|0){case 1:{a[c[q>>2]>>
;0]=c[t>>2];break c}case 2:{b[c[q>>2]>>1]=c[t>>2];break c}case 4:{c[c[q>>2]>
;>2]=c[t>>2];break c}default:{c[c[q>>2]>>2]=c[t>>2];break c}}}while(0);c[(c[h>
x3e;2]|0)+404>>2]=(c[h>>2]|0)+16}while(0);c[p>>2]=(c[p>>2]|0)+1}if((u|0)==47){x=c[m>
;>2]|0;i=v;return x|0}else if((u|0)==48){c[m>>2]=6;x=c[m>>2]|0;i=v;return x|0}else if((u|0)==49){c[m>
;>2]=6;x=c[m>>2]|0;i=v;return x|0}else if((u|0)==50){c[m>>2]=6;x=c[m>>2]|0;i=v;return x|0}return
0}function $h(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;k=j+28|0;l=j+24|0;e=j+20|0;f=j+16|0;h=j+12|0;b=j+8|
0;d=j+4|0;g=j;c[k>>2]=a;c[l>>2]=c[(c[k>>2]|0)+412>>2];c[e>>2]=(c[l>>
2]|0)+48;c[f>>2]=(c[l>>2]|0)+68;c[h>>2]=(c[l>>2]|0)+64;c[b>>2]=(c[k>>
;2]|0)+16;c[d>>2]=161;if((c[(c[k>>2]|0)+404>>2]|0)>>>0<((c[k>>2]|0)+
16+24|0)>>>0){l=c[d>>2]|0;i=j;return l|0}c[d>>2]=0;l=c[b>>2]|0;c[b>>2]=l+
4;l=ai(l,g)|0;c[c[e>>2]>>2]=l;c[g>>2]=0-(c[g>>2]|0);if((c[g>>2]|0)<0|(c[g
>>2]|0)>9){c[c[e>>2]>>2]=65536;c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|
0)+8>>2]=0;c[(c[e>>2]|0)+12>>2]=65536;c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+
4>>2]=0;c[c[h>>2]>>2]=1;l=c[d>>2]|0;i=j;return l|0}else{l=c[b>>2]|0;c[b>
x3e;2]=l+4;l=di(l,c[g>>2]|0)|0;c[(c[e>>2]|0)+8>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l
=di(l,c[g>>2]|0)|0;c[(c[e>>2]|0)+4>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l=di(l,c[g>
;>2]|0)|0;c[(c[e>>2]|0)+12>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l=di(l,c[g>>2]|0
)|0;c[c[f>>2]>>2]=l;l=di(c[b>>2]|0,c[g>>2]|0)|0;c[(c[f>>2]|0)+4>>2]=
l;c[c[h>>2]>>2]=c[2376+(c[g>>2]<<2)>>2];l=c[d>>2]|0;i=j;return l|0}return
0}function ai(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;e=j+16|0;k=j+12|0;f=j+8|0;h=j+4|0;g=j;c[k>>2]=
a;c[f>>2]=b;b=c[c[k>>2]>>2]|0;a=c[(c[k>>2]|0)+4>>2]|0;if((d[c[c[k>>2
]>>2]>>0]|0|0)==30){c[e>>2]=bi(b,a,0,c[f>>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}c
[h>>2]=ci(b,a)|0;if((c[h>>2]|0)<=32767){c[c[f>>2]>>2]=0;c[e>>2]=c[h>
x3e;2]<<16;k=c[e>>2]|0;i=j;return k|0}c[g>>2]=5;while(1){if((c[g>>2]|0)>=10)break;if
((c[h>>2]|0)<(c[2376+(c[g>>2]<<2)>>2]|0))break;c[g>>2]=(c[g>>2]|
0)+1}a=c[g>>2]|0;if(((c[h>>2]|0)/(c[2376+((c[g>>2]|0)-5<<2)>>2]|0)|0|0)>32767
){c[c[f>>2]>>2]=a-4;c[e>>2]=Vb(c[h>>2]|0,c[2376+((c[g>>2]|0)-4<<2)
x3e;>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}else{c[c[f>>2]>>2]=a-5;c[e>>2]=Vb(c[h>
x3e;2]|0,c[2376+((c[g>>2]|0)-5<<2)>>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}return 0}function
bi(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,v=0,w=0,x=0,y=0,z=0;y=i;i=i+80|
0;z=y+64|0;g=y+60|0;h=y+56|0;t=y+52|0;n=y+48|0;m=y+44|0;o=y+40|0;w=y+36|0;r=y+32|0;u=y+28|0;x=y+24|0;k=y+20|0;j=y+16|0;l=y+12|0;
v=y+8|0;q=y+4|0;s=y;c[z>>2]=a;c[g>>2]=b;c[h>>2]=e;c[t>>2]=f;c[n>>2]=c[z>
x3e;2];c[x>>2]=0;c[k>>2]=0;if(c[t>>2]|0)c[c[t>>2]>>2]=0;c[w>>2]=0;c[
r>>2]=0;c[u>>2]=0;c[j>>2]=0;c[l>>2]=0;c[v>>2]=0;c[o>>2]=4;while(1){if
(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n>>2]|0)>>>0>=(c[g>>2
]|0)>>>0):0){p=54;break}c[m>>2]=(d[c[n>>2]>>0]|0)>>c[o>>2]&
;15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|0)==14){c[x>>2]=1;continue}if((c[m>>2]|0
)>>>0>9)break;if((c[r>>2]|0)>=214748364){c[j>>2]=(c[j>>2]|0)+1;continue}if
(!((c[m>>2]|0)!=0|(c[r>>2]|0)!=0))continue;c[l>>2]=(c[l>>2]|0)+1;c[r>>2]=((c[r
>>2]|0)*10|0)+(c[m>>2]|0)}if((p|0)==54){z=c[w>>2]|0;i=y;return z|0}a:do if((c[m>>2]|0)==
10){while(1){if(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n>>2]|0)>>>0>=(c
[g>>2]|0)>>>0):0)break;c[m>>2]=(d[c[n>>2]>>0]|0)>>c[o>>
;2]&15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|0)>>>0>=10)break a;if(!((c[m>
;>2]|0)!=0|(c[r>>2]|0)!=0)){c[j>>2]=(c[j>>2]|0)+-1;continue}if(!((c[r>>2]|0)<214748364
&(c[v>>2]|0)<9))continue;c[v>>2]=(c[v>>2]|0)+1;c[r>>2]=((c[r>>2]|0)*
10|0)+(c[m>>2]|0)}z=c[w>>2]|0;i=y;return z|0}while(0);if((c[m>>2]|0)==12){c[k>>2]=1;c[m
x3e;>2]=11}do if((c[m>>2]|0)==11){while(1){if(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n
>>2]|0)>>>0>=(c[g>>2]|0)>>>0):0){p=54;break}c[m>>2]=(d[c[n>
;>2]>>0]|0)>>c[o>>2]&15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|
0)>>>0>=10){p=28;break}c[u>>2]=((c[u>>2]|0)*10|0)+(c[m>>2]|0);if((c[u>>
;2]|0)>1e3){p=54;break}}if((p|0)==28){if(!(c[k>>2]|0))break;c[u>>2]=0-(c[u>>2]|0);break}else
if((p|0)==54){z=c[w>>2]|0;i=y;return z|0}}while(0);c[u>>2]=(c[u>>2]|0)+((c[h>>2]|0)+(c[j
>>2]|0));do if(!(c[t>>2]|0)){c[l>>2]=(c[l>>2]|0)+(c[u>>2]|0);c[v>>2]=(
c[v>>2]|0)-(c[u>>2]|0);z=c[l>>2]|0;if((((c[l>>2]|0)<0?0-z|0:z)|0)>5){z=c[w>
;>2]|0;i=y;return z|0}if((c[l>>2]|0)<0){c[r>>2]=(c[r>>2]|0)/(c[2376+(0-(c[l>>2
]|0)<<2)>>2]|0)|0;c[v>>2]=(c[v>>2]|0)+(c[l>>2]|0)}if((c[v>>2]|0)==10
){c[r>>2]=(c[r>>2]|0)/10|0;c[v>>2]=(c[v>>2]|0)-1}if((c[v>>2]|0)>0)if(((c[
r>>2]|0)/(c[2376+(c[v>>2]<<2)>>2]|0)|0|0)>32767){z=c[w>>2]|0;i=y;return z
|0}else{c[w>>2]=Vb(c[r>>2]|0,c[2376+(c[v>>2]<<2)>>2]|0)|0;break}else{c[r>
x3e;2]=_(c[r>>2]|0,c[2376+(0-(c[v>>2]|0)<<2)>>2]|0)|0;if((c[r>>2]|0)>32767
){z=c[w>>2]|0;i=y;return z|0}else{c[w>>2]=c[r>>2]<<16;break}}}else{c[v>>2]=(c[
v>>2]|0)+(c[l>>2]|0);c[u>>2]=(c[u>>2]|0)+(c[l>>2]|0);j=c[r>>2]|0;if((
c[v>>2]|0)>5){g=c[r>>2]|0;h=c[v>>2]|0;if(((j|0)/(c[2376+((c[v>>2]|0)-5<<2
)>>2]|0)|0|0)>32767){c[w>>2]=Vb(g,c[2376+(h-4<<2)>>2]|0)|0;c[c[t>>2]>
;>2]=(c[u>>2]|0)-4;break}else{c[w>>2]=Vb(g,c[2376+(h-5<<2)>>2]|0)|0;c[c[t>>
;2]>>2]=(c[u>>2]|0)-5;break}}if((j|0)>32767){c[w>>2]=Vb(c[r>>2]|0,10)|0;c[c[t>
x3e;2]>>2]=(c[u>>2]|0)-(c[v>>2]|0)+1;break}if((c[u>>2]|0)>0){c[q>>2]=(c[u
>>2]|0)<5?c[u>>2]|0:5;c[u>>2]=(c[u>>2]|0)-(c[q>>2]|0);c[s>>2]=(
c[q>>2]|0)-(c[v>>2]|0);c[r>>2]=_(c[r>>2]|0,c[2376+(c[s>>2]<<2)>
x3e;2]|0)|0;if((c[r>>2]|0)>32767){c[r>>2]=(c[r>>2]|0)/10|0;c[u>>2]=(c[u>>
2]|0)+1}}else c[u>>2]=(c[u>>2]|0)-(c[v>>2]|0);c[w>>2]=c[r>>2]<<16;c[
c[t>>2]>>2]=c[u>>2]}while(0);if(!(c[x>>2]|0)){z=c[w>>2]|0;i=y;return z|0}c[w
x3e;>2]=0-(c[w>>2]|0);z=c[w>>2]|0;i=y;return z|0}function ci(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k
=0;j=i;i=i+32|0;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>>2]=a;c[e>>2]=b;c[f>>2]=c[k>>2
];a=c[f>>2]|0;c[f>>2]=a+1;c[g>>2]=d[a>>0];c[h>>2]=0;do if((c[g>>2]|0
)==28){if(((c[f>>2]|0)+2|0)>>>0<=(c[e>>2]|0)>>>0){c[h>>2]=(((d[
c[f>>2]>>0]|0)<<8|(d[(c[f>>2]|0)+1>>0]|0))&65535)<<16>>
;16;c[f>>2]=(c[f>>2]|0)+2;k=c[h>>2]|0;i=j;return k|0}}else{if((c[g>>2]|0)==29){if(((c[f
x3e;>2]|0)+4|0)>>>0>(c[e>>2]|0)>>>0)break;c[h>>2]=(d[c[f>>
2]>>0]|0)<<24|(d[(c[f>>2]|0)+1>>0]|0)<<16|(d[(c[f>>2]|0)+2>>
;0]|0)<<8|(d[(c[f>>2]|0)+3>>0]|0);c[f>>2]=(c[f>>2]|0)+4;k=c[h>>2]|0;
i=j;return k|0}a=c[g>>2]|0;if((c[g>>2]|0)<247){c[h>>2]=a-139;k=c[h>>2]|0;i=j;return
k|0}b=((c[f>>2]|0)+1|0)>>>0>(c[e>>2]|0)>>>0;if((a|0)<251){if(b)break
;c[h>>2]=((c[g>>2]|0)-247<<8)+(d[c[f>>2]>>0]|0)+108;c[f>>2]=(c[f>
;>2]|0)+1;k=c[h>>2]|0;i=j;return k|0}else{if(b)break;c[h>>2]=(0-((c[g>>2]|0)-251)<<
8)-(d[c[f>>2]>>0]|0)-108;c[f>>2]=(c[f>>2]|0)+1;k=c[h>>2]|0;i=j;return k|0}}while
(0);c[h>>2]=0;k=c[h>>2]|0;i=j;return k|0}function di(a,b){a=a|0;b=b|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]=b;b=c[c[g>>2]>>2]|0;a=c[(c[g>>2]|0)+4>>2]|0;if((
d[c[c[g>>2]>>2]>>0]|0|0)==30){g=bi(b,a,c[e>>2]|0,0)|0;i=f;return g|0}else{g=ci(b,a)|0;g=(
_(g,c[2376+(c[e>>2]<<2)>>2]|0)|0)<<16;i=f;return g|0}return 0}function ei(a){a=a|0;var b
=0,d=0,e=0,f=0,g=0,h=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;b=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[h>>2]=c[(c[g>>
;2]|0)+412>>2];c[b>>2]=(c[h>>2]|0)+80;c[d>>2]=(c[g>>2]|0)+16;c[e>>2]=
161;if((c[(c[g>>2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+16|0)>>>0){
h=c[e>>2]|0;i=f;return h|0}h=c[d>>2]|0;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[c[b>>2]>>
2]=h;h=c[d>>2]|0;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[(c[b>>2]|0)+4>>2]=h;h=c[d>>2]|0
;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[(c[b>>2]|0)+8>>2]=h;h=Tb(fi(c[d>>2]|0)|0)|0;c[(c[b>
x3e;2]|0)+12>>2]=h;c[e>>2]=0;h=c[e>>2]|0;i=f;return h|0}function fi(a){a=a|0;var b=0,e=0,f=0;e=i;i
=i+16|0;f=e;c[f>>2]=a;b=c[c[f>>2]>>2]|0;a=c[(c[f>>2]|0)+4>>2]|0;if((d[c[c[f>
;>2]>>2]>>0]|0|0)==30){f=bi(b,a,0,0)|0;i=e;return f|0}else{f=(ci(b,a)|0)<<16;i=e;return f|0}return
0}function gi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+12|0;d=f+8|0;b=f+4|0;e=f;c[g>>2]=a;c[d>>2]=
c[(c[g>>2]|0)+412>>2];c[b>>2]=(c[g>>2]|0)+16;c[e>>2]=161;if((c[(c[g>>
;2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+8|0)>>>0){g=c[e>>2]|0;i=f
;return g|0}g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+116>>2]=g;g=hi(c[b>>
;2]|0)|0;c[(c[d>>2]|0)+112>>2]=g;c[e>>2]=0;g=c[e>>2]|0;i=f;return g|0}function hi(a){a=a
|0;var b=0,e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=a;b=c[c[f>>2]>>2]|0;a=c[(c[f>>2]|0)+4>
x3e;2]|0;if((d[c[c[f>>2]>>2]>>0]|0|0)==30){f=(bi(b,a,0,0)|0)>>16;i=e;return f|0}else{f=ci
(b,a)|0;i=e;return f|0}return 0}function ii(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+12|0;d=f+8|0;b=f+4|0;e=f;c[g>
x3e;2]=a;c[d>>2]=c[(c[g>>2]|0)+412>>2];c[b>>2]=(c[g>>2]|0)+16;c[e>>2
]=161;if((c[(c[g>>2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+12|0)>>>
0){g=c[e>>2]|0;i=f;return g|0}g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+128>
x3e;2]=g;g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+132>>2]=g;g=hi(c[b>>2
]|0)|0;c[(c[d>>2]|0)+136>>2]=g;c[e>>2]=0;g=c[e>>2]|0;i=f;return g|0}function ji(a,b){a=a
|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;if(c[(c[d>>2]|0)+
28>>2]|0){i=g;return}c[f>>2]=c[c[d>>2]>>2];fe(c[f>>2]|0,c[e>>2]|0);i
=g;return}function ki(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;o=i;i=i+32|0;h=o+20|0;j=o+16|0;k=o+12
|0;p=o+8|0;l=o+4|0;m=o+24|0;n=o;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[p>>2]=g;f=Kc(c[k>
x3e;2]|0,c[p>>2]|0)|0;c[l>>2]=f;if(f|0){p=c[l>>2]|0;i=o;return p|0}a[m>>0]=ke(c[k>
x3e;2]|0,l)|0;if(c[l>>2]|0){p=c[l>>2]|0;i=o;return p|0}a[c[h>>2]>>0]=a[m>>0]|0
;c[(c[h>>2]|0)+20>>2]=0;a:do switch(d[m>>0]|0|0){case 0:{c[(c[h>>2]|0)+12>>2]=
c[j>>2];break}case 3:{c[n>>2]=(Pc(c[k>>2]|0,l)|0)&65535;if(c[l>>2]|0){p=c[l>
x3e;2]|0;i=o;return p|0}else{c[(c[h>>2]|0)+12>>2]=((c[n>>2]|0)*3|0)+2;break a}}default:{c[l>
x3e;2]=3;p=c[l>>2]|0;i=o;return p|0}}while(0);c[l>>2]=de(c[k>>2]|0,c[(c[h>>2]|0)+12>
;>2]|0,(c[h>>2]|0)+8|0)|0;p=c[l>>2]|0;i=o;return p|0}function li(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16
|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;if(!(c[c[b>>2]>>2]|0)){i=f;return}c[e>>2]=c[c[b>
x3e;2]>>2];c[d>>2]=c[(c[e>>2]|0)+28>>2];if(c[(c[b>>2]|0)+28>>2]|0)fe
(c[e>>2]|0,(c[b>>2]|0)+28|0);Fb(c[d>>2]|0,c[(c[b>>2]|0)+24>>2]|0);c[(c[b>
x3e;2]|0)+24>>2]=0;e=c[b>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>
x3e;2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0;i=f;return}function mi(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,v=0,w=0,x=0,y=0;y=i;i=i+48|0;r=y+36|0;s
=y+32|0;t=y+28|0;l=y+24|0;m=y+20|0;u=y+42|0;x=y+16|0;v=y+12|0;n=y+40|0;w=y+8|0;p=y+4|0;o=y;c[r>>2]=d;c[s>>2]=
f;c[t>>2]=g;c[l>>2]=h;c[m>>2]=j;a[u>>0]=k;c[x>>2]=c[(c[t>>2]|0)+28
x3e;>2];c[v>>2]=0;a:do if((c[m>>2]|0)>>>0>2){c[(c[r>>2]|0)+4>>2
]=(c[l>>2]|0)+(c[m>>2]|0);g=Kc(c[t>>2]|0,c[(c[r>>2]|0)+4>>2]|0)|0;c[v>>
;2]=g;if(((g|0)==0?(g=(ke(c[t>>2]|0,v)|0)&255,c[c[r>>2]>>2]=g,(c[v>>2]|0)==0):0)?(g
=hc(c[x>>2]|0,2,0,c[s>>2]|0,0,v)|0,c[(c[r>>2]|0)+8>>2]=g,(c[v>>2]|0)==0):0){b[
c[(c[r>>2]|0)+8>>2]>>1]=0;switch(c[c[r>>2]>>2]|0){case 0:{if((c[s>>2
]|0)>>>0<=0){q=39;break a}p=ee(c[t>>2]|0,(c[s>>2]|0)-1<<1)|0;c[v>>2]=
p;if(p|0)break a;c[w>>2]=1;while(1){l=c[t>>2]|0;if((c[w>>2]|0)>>>0>=(c[s>
x3e;2]|0)>>>0)break;q=ie(l)|0;b[(c[(c[r>>2]|0)+8>>2]|0)+(c[w>>2]<<1)>
;>1]=q;c[w>>2]=(c[w>>2]|0)+1}ge(l);q=39;break a}case 2:case 1:{c[w>>2]=1;b:while(1){if((c[w
x3e;>2]|0)>>>0>=(c[s>>2]|0)>>>0){q=39;break a}b[n>>1]=Pc(c[t>
x3e;2]|0,v)|0;if(c[v>>2]|0)break a;l=c[t>>2]|0;if((c[c[r>>2]>>2]|0)==2){c[p>>2
]=(Pc(l,v)|0)&65535;if(c[v>>2]|0)break a}else{c[p>>2]=(ke(l,v)|0)&255;if(c[v>>2]|0)break
a}if((e[n>>1]|0)>>>0>(65535-(c[p>>2]|0)|0)>>>0)c[p>>2]=65535-(
e[n>>1]|0);c[o>>2]=0;while(1){if((c[w>>2]|0)>>>0>=(c[s>>2]|0)>
x3e;>0)continue b;if((c[o>>2]|0)>>>0>(c[p>>2]|0)>>>0)continue b;b[(c
[(c[r>>2]|0)+8>>2]|0)+(c[w>>2]<<1)>>1]=b[n>>1]|0;c[o>>2]=(
c[o>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1;b[n>>1]=(b[n>>1]|0)+1<<16>
x3e;16}}}default:{c[v>>2]=3;break a}}}}else{c[(c[r>>2]|0)+4>>2]=c[m>>2];switch(c[m>
x3e;2]|0){case 0:{if((c[s>>2]|0)>>>0>229){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0
,c[s>>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+
8>>2]|0,5556,c[s>>2]<<1|0)|0;q=39;break a}case 1:{if((c[s>>2]|0)>>>0>
;166){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0,c[s>>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2
]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+8>>2]|0,6014,c[s>>2]<<1|0)|0;q=39;break
a}case 2:{if((c[s>>2]|0)>>>0>87){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0,c[s>
;>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+8>
x3e;2]|0,6346,c[s>>2]<<1|0)|0;q=39;break a}default:{c[v>>2]=3;break a}}}while(0);if((q|0)==39?a[u
x3e;>0]|0:0)c[v>>2]=ni(c[r>>2]|0,c[s>>2]|0,c[x>>2]|0)|0;if(!(c[v>>2]|0)){
x=c[v>>2]|0;i=y;return x|0}Fb(c[x>>2]|0,c[(c[r>>2]|0)+8>>2]|0);c[(c[r>>2]|0)+8
>>2]=0;Fb(c[x>>2]|0,c[(c[r>>2]|0)+12>>2]|0);c[(c[r>>2]|0)+12>>2]=0;c
[c[r>>2]>>2]=0;c[(c[r>>2]|0)+4>>2]=0;c[(c[r>>2]|0)+8>>2]=0;x=c[v>
;>2]|0;i=y;return x|0}function ni(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;o=i;i=i+32|0;g=o+20|0;h=o+16
|0;j=o+12|0;k=o+8|0;l=o+4|0;m=o;n=o+24|0;c[g>>2]=a;c[h>>2]=d;c[j>>2]=f;c[k>>2]=0;b[n>
;>1]=0;if((c[(c[g>>2]|0)+16>>2]|0)>>>0>0){d=c[k>>2]|0;i=o;return d|0}c[l
x3e;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[h>>2]|0)>>>0)break;if((e[(
c[(c[g>>2]|0)+8>>2]|0)+(c[l>>2]<<1)>>1]|0|0)>(e[n>>1]|0|0))b[n
x3e;>1]=b[(c[(c[g>>2]|0)+8>>2]|0)+(c[l>>2]<<1)>>1]|0;c[l>>2]=(c
[l>>2]|0)+1}d=hc(c[j>>2]|0,2,0,(e[n>>1]|0)+1|0,0,k)|0;c[(c[g>>2]|0)+12>>2]=d;if
(c[k>>2]|0){d=c[k>>2]|0;i=o;return d|0}c[m>>2]=(c[h>>2]|0)-1;while(1){if((c[m>>
;2]|0)<0)break;b[(c[(c[g>>2]|0)+12>>2]|0)+((e[(c[(c[g>>2]|0)+8>>2]|0)+(c[m>>
;2]<<1)>>1]|0)<<1)>>1]=c[m>>2];c[m>>2]=(c[m>>2]|0)+-1}c[(c
[g>>2]|0)+16>>2]=e[n>>1];c[(c[g>>2]|0)+20>>2]=c[h>>2];d=c[k>>
;2]|0;i=o;return d|0}function oi(a,f,g,h,j,k){a=a|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;F=i;i=i+80|0;l=F+64|0;m=F+60|0;o=F+56|0;p=F+52|0;q=F+48|0;r=F+44|0;t=F+40|0;s=F+36|0;z
=F+32|0;x=F+68|0;w=F+28|0;C=F+24|0;B=F+20|0;y=F+16|0;A=F+12|0;v=F+8|0;D=F+4|0;u=F;c[l>>2]=a;c[m>>2]=f;c[o>
;>2]=g;c[p>>2]=h;c[q>>2]=j;c[r>>2]=k;c[t>>2]=0;if(!(c[(c[m>>2]|0)+8>
x3e;2]|0)){c[t>>2]=3;E=c[t>>2]|0;i=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>
x3e;>0>=256)break;b[(c[l>>2]|0)+12+(c[z>>2]<<1)>>1]=0;b[(c[l>>2]|0)+
524+(c[z>>2]<<1)>>1]=0;c[z>>2]=(c[z>>2]|0)+1}if((c[r>>2]|0)>>
;>0<=1){switch(c[r>>2]|0){case 0:{Ss((c[l>>2]|0)+12|0,6520,512)|0;break}case 1:{Ss((c[l>>
;2]|0)+12|0,7032,512)|0;break}default:{c[t>>2]=3;E=c[t>>2]|0;i=F;return E|0}}c[(c[l>>2]|0)+8>
x3e;2]=0;c[t>>2]=ni(c[m>>2]|0,c[o>>2]|0,c[(c[p>>2]|0)+28>>2]|0)|0;if(c[t>
x3e;2]|0){E=c[t>>2]|0;i=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=256
)break;c[D>>2]=e[(c[l>>2]|0)+12+(c[z>>2]<<1)>>1];c[u>>2]=0;if(c[D>
;>2]|0)c[u>>2]=pi(c[m>>2]|0,c[D>>2]|0)|0;if(c[u>>2]|0){b[(c[l>>2]|0)+524+(
c[z>>2]<<1)>>1]=c[u>>2];c[(c[l>>2]|0)+8>>2]=(c[z>>2]|0)+1}
else{b[(c[l>>2]|0)+524+(c[z>>2]<<1)>>1]=0;b[(c[l>>2]|0)+12+(c[z>>2]
x3c;<1)>>1]=0}c[z>>2]=(c[z>>2]|0)+1}E=c[t>>2]|0;i=F;return E|0}c[(c[l>>2]|
0)+4>>2]=(c[q>>2]|0)+(c[r>>2]|0);h=Kc(c[p>>2]|0,c[(c[l>>2]|0)+4>>2]|
0)|0;c[t>>2]=h;if(h|0){E=c[t>>2]|0;i=F;return E|0}h=(ke(c[p>>2]|0,t)|0)&255;c[c[l>>
2]>>2]=h;if(c[t>>2]|0){E=c[t>>2]|0;i=F;return E|0}c[s>>2]=(ke(c[p>>2]|0,t)|0)
x26;255;if(c[t>>2]|0){E=c[t>>2]|0;i=F;return E|0}a:do switch(c[c[l>>2]>>2]&127|0){case
0:{c[(c[l>>2]|0)+8>>2]=(c[s>>2]|0)+1;h=ee(c[p>>2]|0,c[s>>2]|0)|0;c[t>>
;2]=h;if(h|0){E=c[t>>2]|0;i=F;return E|0}c[C>>2]=c[(c[p>>2]|0)+32>>2];c[z>>2]=
1;while(1){if((c[z>>2]|0)>>>0>(c[s>>2]|0)>>>0)break;h=c[C>>2]|0
;c[C>>2]=h+1;c[w>>2]=d[h>>0];if((c[z>>2]|0)>>>0<(c[o>>2]|0
)>>>0){b[(c[l>>2]|0)+524+(c[w>>2]<<1)>>1]=c[z>>2];b[(c[l>
x3e;2]|0)+12+(c[w>>2]<<1)>>1]=b[(c[(c[m>>2]|0)+8>>2]|0)+(c[z>>2]<
;<1)>>1]|0}c[z>>2]=(c[z>>2]|0)+1}ge(c[p>>2]|0);break}case 1:{c[y>>2]=1;c[(
c[l>>2]|0)+8>>2]=0;c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[s>
x3e;2]|0)>>>0){E=30;break}c[w>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break
}c[B>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break}c[B>>2]=(c[B>>2
]|0)+1;if((c[B>>2]|0)>>>0>(c[(c[l>>2]|0)+8>>2]|0)>>>0)c[(c[l>
;>2]|0)+8>>2]=c[B>>2];c[A>>2]=c[y>>2];while(1){if((c[A>>2]|0)>>
x3e;0>=((c[B>>2]|0)+(c[y>>2]|0)|0)>>>0)break;if((c[w>>2]|0)>>>0
<256?(c[A>>2]|0)>>>0<(c[o>>2]|0)>>>0:0){b[(c[l>>2]|0)+524+(
c[w>>2]<<1)>>1]=c[A>>2];b[(c[l>>2]|0)+12+(c[w>>2]<<1)>
;>1]=b[(c[(c[m>>2]|0)+8>>2]|0)+(c[A>>2]<<1)>>1]|0}c[A>>2]=(c[A
x3e;>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1}c[z>>2]=(c[z>>2]|0)+1;c[y>>2]=(c[y>
;>2]|0)+(c[B>>2]|0)}if((E|0)==30){if((c[(c[l>>2]|0)+8>>2]|0)>>>0<=256)break
a;c[(c[l>>2]|0)+8>>2]=256;break a}else if((E|0)==58){E=c[t>>2]|0;i=F;return E|0}break}default:{c[
t>>2]=3;E=c[t>>2]|0;i=F;return E|0}}while(0);if(!(c[c[l>>2]>>2]&128)){E=c[t>
x3e;2]|0;i=F;return E|0}c[s>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=c[t>>2]|0;i
=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[s>>2]|0)>>
x3e;0){E=58;break}c[w>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break}b[x>>1]=
Pc(c[p>>2]|0,t)|0;if(c[t>>2]|0){E=58;break}b[(c[l>>2]|0)+12+(c[w>>2]<<1)>
x3e;1]=b[x>>1]|0;c[v>>2]=0;while(1){if((c[v>>2]|0)>>>0>=(c[o>>2]|0)
x3e;>>0)break;n=c[v>>2]|0;if((e[(c[(c[m>>2]|0)+8>>2]|0)+(c[v>>2]<<1)
x3e;>1]|0|0)==(e[x>>1]|0|0)){E=42;break}c[v>>2]=n+1}if((E|0)==42){E=0;b[(c[l>>2]|0)+524+(c[w
x3e;>2]<<1)>>1]=n}c[z>>2]=(c[z>>2]|0)+1}if((E|0)==58){E=c[t>>2]|0;i=F;return
E|0}return 0}function pi(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>
;2]=b;c[g>>2]=0;if((c[f>>2]|0)>>>0>(c[(c[d>>2]|0)+16>>2]|0)>>
;>0){g=c[g>>2]|0;i=h;return g|0}c[g>>2]=e[(c[(c[d>>2]|0)+12>>2]|0)+(c[f>>
2]<<1)>>1];g=c[g>>2]|0;i=h;return g|0}function qi(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+32|0;n=l+28|0;m=l+24|0;h=l+20|0;j=l+16|0;f=l+12|0;e=l+8|0;g=l+4|0;k=l;c[n>>2]=b;c[m>>2]=d;c
[h>>2]=(c[n>>2]|0)+20;c[j>>2]=c[(c[c[h>>2]>>2]|0)+28>>2];c[k>
x3e;2]=0;c[g>>2]=Zh(c[h>>2]|0,c[m>>2]|0,f,e)|0;if(c[g>>2]|0){n=c[k>>2]|0;i=l;return
n|0}c[k>>2]=bc(c[j>>2]|0,(c[e>>2]|0)+1|0,g)|0;if(!(c[g>>2]|0)){Ss(c[k>>2]|0,c
[f>>2]|0,c[e>>2]|0)|0;a[(c[k>>2]|0)+(c[e>>2]|0)>>0]=0}ji(c[h>>2]|0,f
);n=c[k>>2]|0;i=l;return n|0}function ri(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;e=h+12|0;c[
d>>2]=b;c[f>>2]=0;c[g>>2]=(cs(c[d>>2]|0)|0)+1;a[e>>0]=1;a:while(1){if(!(a[e>
;>0]|0))break;if((c[g>>2]|0)>=7?(a[(c[d>>2]|0)+6>>0]|0)==43:0){c[f>>2]=0;while
(1){if((c[f>>2]|0)>=6)break;if(!(65<=(a[(c[d>>2]|0)+(c[f>>2]|0)>>0]|0)?(a[(c[d
>>2]|0)+(c[f>>2]|0)>>0]|0)<=90:0))a[e>>0]=0;c[f>>2]=(c[f>>2]|0)+
1}if(!(a[e>>0]|0))continue;c[f>>2]=7;while(1){if((c[f>>2]|0)>=(c[g>>2]|0))continue
a;a[(c[d>>2]|0)+((c[f>>2]|0)-7)>>0]=a[(c[d>>2]|0)+(c[f>>2]|0)>>0]|0;
c[f>>2]=(c[f>>2]|0)+1}}a[e>>0]=0}i=h;return}function si(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;g=e+8|0;f=e+4|0;d=e;c[h>>2]=a;c[g>>2]=b;c[d>>2]=oe(c[h>>2]|0,c[g>
;>2]|0,f)|0;c[f>>2]=c[f>>2];i=e;return c[d>>2]|0}function ti(a){a=a|0;var b=0,d=0,e=0,f=0,g=0
,h=0;h=i;i=i+32|0;b=h+16|0;e=h+12|0;f=h+8|0;g=h+4|0;d=h;c[b>>2]=a;c[e>>2]=c[b>>2];if(!(c[e>
x3e;2]|0)){i=h;return}c[f>>2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[e>>2]|0)+532
x3e;>2];if(c[g>>2]|0)Va[c[(c[g>>2]|0)+12>>2]&63](c[e>>2]|0);c[d>>2]=
c[(c[e>>2]|0)+692>>2];if(!(c[d>>2]|0)){i=h;return}ui(c[d>>2]|0);Fb(c[f>>2]|0,c
[(c[e>>2]|0)+692>>2]|0);c[(c[e>>2]|0)+692>>2]=0;i=h;return}function ui(a){a=a|0;var b=0,
d=0,e=0,f=0;f=i;i=i+16|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;c[e>>2]=c[(c[b>>2]|0)+4>>2];li((c
[b>>2]|0)+84|0);li((c[b>>2]|0)+1208|0);li((c[b>>2]|0)+20|0);li((c[b>>2]|0)+1176|0);if((c
[(c[b>>2]|0)+1892>>2]|0)>>>0>0){c[d>>2]=0;while(1){a=c[e>>2]|0;if((c
[d>>2]|0)>>>0>=(c[(c[b>>2]|0)+1892>>2]|0)>>>0)break;vi(a,c[(c[b
>>2]|0)+1896+(c[d>>2]<<2)>>2]|0);c[d>>2]=(c[d>>2]|0)+1}Fb(a,c[(c[b
x3e;>2]|0)+1896>>2]|0);c[(c[b>>2]|0)+1896>>2]=0}wi((c[b>>2]|0)+116|0);xi((c[b>
x3e;2]|0)+1152|0,c[c[b>>2]>>2]|0);vi(c[e>>2]|0,(c[b>>2]|0)+1324|0);zi((c[b>>2]|
0)+2024|0,c[c[b>>2]>>2]|0);Fb(c[e>>2]|0,c[(c[b>>2]|0)+2060>>2]|0);c[(c[b>
x3e;2]|0)+2060>>2]=0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1304>>2]|0);c[(c[b>>2]|0)+1304
>>2]=0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1308>>2]|0);c[(c[b>>2]|0)+1308>>2]=
0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1316>>2]|0);c[(c[b>>2]|0)+1316>>2]=0;Fb(c[e>
x3e;2]|0,c[(c[b>>2]|0)+1320>>2]|0);c[(c[b>>2]|0)+1320>>2]=0;i=f;return}function vi(a,b){
a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=f;return
}li((c[e>>2]|0)+532|0);Fb(c[d>>2]|0,c[(c[e>>2]|0)+564>>2]|0);c[(c[e>>2]|0)+564
>>2]=0;i=f;return}function wi(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]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+8>>2]=0;i=b;return}function xi(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)+28>>2];yi(c[e>>2]|0,c[f>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>
2]|0);c[(c[e>>2]|0)+8>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;i=
d;return}function yi(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;Fb(c[f>
;>2]|0,c[(c[e>>2]|0)+12>>2]|0);c[(c[e>>2]|0)+12>>2]=0;c[(c[e>>2]|0)+16>
;>2]=0;i=d;return}function zi(b,d){b=b|0;d=d|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]=d;if(c[(c[e>>2]|0)+8>>2]|0)fe(c[f>>2]|0,(c[e>>2]|0)+8|0);c[(c[e>>2]|0)+12
x3e;>2]=0;a[c[e>>2]>>0]=0;c[(c[e>>2]|0)+4>>2]=0;i=g;return}function Ai(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;o=i;i=i+240|0;k=o+232|0;n=o+228|0;l=o+224|0;e=o+220|0;b=o+216|0;d=o+212|0;m=o+208
|0;h=o+12|0;g=o+8|0;f=o+4|0;j=o;c[k>>2]=a;c[n>>2]=c[k>>2];c[l>>2]=0;c[e>>2]=Bi
(c[n>>2]|0)|0;do if(c[e>>2]|0){c[b>>2]=c[c[k>>2]>>2];c[d>>2]=c[(c[b
x3e;>2]|0)+692>>2];c[g>>2]=c[(c[c[k>>2]>>2]|0)+100>>2];c[m>>2]=
bc(c[g>>2]|0,132,l)|0;if(c[l>>2]|0){n=c[l>>2]|0;i=o;return n|0}Ci((c[d>>2]|0)+1324|0,h);
c[l>>2]=Oa[c[c[e>>2]>>2]&63](c[(c[c[k>>2]>>2]|0)+100>>2]|0,h,c[
m>>2]|0)|0;if(c[l>>2]|0){n=c[l>>2]|0;i=o;return n|0}c[f>>2]=c[(c[d>>2]|0)+1892
>>2];while(1){if((c[f>>2]|0)>>>0<=0){a=8;break}c[j>>2]=c[(c[d>>2]|0)+
1896+((c[f>>2]|0)-1<<2)>>2];Ci(c[j>>2]|0,h);c[l>>2]=Oa[c[c[e>>2]>
;>2]&63](c[(c[c[k>>2]>>2]|0)+100>>2]|0,h,(c[m>>2]|0)+4+((c[f>>2]|0)-
1<<2)|0)|0;if(c[l>>2]|0){a=10;break}c[f>>2]=(c[f>>2]|0)+-1}if((a|0)==8){c[(c[k>>
;2]|0)+40>>2]=c[m>>2];break}else if((a|0)==10){n=c[l>>2]|0;i=o;return n|0}}while(0);c[(c[n>
x3e;2]|0)+44>>2]=-1;n=c[l>>2]|0;i=o;return n|0}function Bi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=i;i=i+32|0
;f=e+16|0;h=e+12|0;g=e+8|0;d=e+4|0;b=e;c[f>>2]=a;c[h>>2]=c[c[f>>2]>>2];c[g>>2]=
c[(c[h>>2]|0)+692>>2];c[d>>2]=c[(c[g>>2]|0)+2052>>2];c[b>>2]=Wc(c[(c
[(c[c[f>>2]>>2]|0)+96>>2]|0)+4>>2]|0,11524)|0;if(!((c[b>>2]|0)!=0&(c[d>
;>2]|0)!=0)){h=0;i=e;return h|0}if(!(c[c[d>>2]>>2]|0)){h=0;i=e;return h|0}h=Ta[c[c[d>>2]>
;>2]&63](c[b>>2]|0)|0;i=e;return h|0}function Ci(d,e){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;l
=k+16|0;f=k+12|0;h=k+8|0;j=k+4|0;g=k;c[l>>2]=d;c[f>>2]=e;c[h>>2]=(c[l>>2]|0)+172;Ns(c[f
x3e;>2]|0,0,196)|0;d=a[c[h>>2]>>0]|0;a[(c[f>>2]|0)+8>>0]=d;c[g>>2]=d&
;255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break
;b[(c[f>>2]|0)+12+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+4+(c[j>>2]<<
;2)>>2];c[j>>2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|0)+1>>0]|0;a[(c[f>>2]|0)+
9>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c
[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+40+(c[j>>2]<<1)>>1]=c[(c[h>
;>2]|0)+60+(c[j>>2]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|
0)+2>>0]|0;a[(c[f>>2]|0)+10>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if((c[
j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+60+(c[j>
x3e;2]<<1)>>1]=c[(c[h>>2]|0)+100+(c[j>>2]<<2)>>2];c[j>>2]=(
c[j>>2]|0)+1}l=a[(c[h>>2]|0)+3>>0]|0;a[(c[f>>2]|0)+11>>0]=l;c[g>>2]=
l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>
;0)break;b[(c[f>>2]|0)+88+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+156+(c[j>>2
]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}c[(c[f>>2]|0)+108>>2]=c[(c[h>
x3e;2]|0)+196>>2];c[(c[f>>2]|0)+112>>2]=c[(c[h>>2]|0)+200>>2];c[(c[f>>
;2]|0)+116>>2]=c[(c[h>>2]|0)+204>>2];b[(c[f>>2]|0)+120>>1]=c[(c[h>>2
]|0)+208>>2];b[(c[f>>2]|0)+122>>1]=c[(c[h>>2]|0)+212>>2];l=a[(c[h>>2
]|0)+216>>0]|0;a[(c[f>>2]|0)+124>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if
((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+128+(c[j
x3e;>2]<<1)>>1]=c[(c[h>>2]|0)+220+(c[j>>2]<<2)>>2];c[j>>
;2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|0)+217>>0]|0;a[(c[f>>2]|0)+125>>0]=l;c[g>
x3e;2]=l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>
;>0)break;b[(c[f>>2]|0)+154+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+272+(c[j>
x3e;2]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}a[(c[f>>2]|0)+126>>0]=a[(c[h>
;>2]|0)+324>>0]|0;c[(c[f>>2]|0)+184>>2]=c[(c[h>>2]|0)+336>>2];c[(c[f>
;>2]|0)+4>>2]=c[(c[h>>2]|0)+332>>2];i=k;return}function Di(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h
=0,j=0,k=0;h=i;i=i+32|0;j=h+24|0;g=h+20|0;k=h+16|0;b=h+12|0;f=h+8|0;d=h+4|0;e=h;c[j>>2]=a;c[g>>2]=c[j>
x3e;2];c[k>>2]=c[c[g>>2]>>2];c[b>>2]=c[(c[k>>2]|0)+692>>2];c[f>
x3e;2]=c[(c[j>>2]|0)+40>>2];if(!(c[f>>2]|0)){i=h;return}c[d>>2]=Bi(c[g>>2]|0)|
0;if(!(c[d>>2]|0)){i=h;return}Va[c[(c[d>>2]|0)+8>>2]&63](c[c[f>>2]>>2]|0);
c[e>>2]=c[(c[b>>2]|0)+1892>>2];while(1){if((c[e>>2]|0)>>>0<=0)break;
Va[c[(c[d>>2]|0)+8>>2]&63](c[(c[f>>2]|0)+4+((c[e>>2]|0)-1<<2)>>
2]|0);c[e>>2]=(c[e>>2]|0)+-1}i=h;return}function Ei(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;g=i;i=i+32|0;b=
g+20|0;j=g+16|0;h=g+12|0;f=g+8|0;e=g+4|0;d=g;c[b>>2]=a;c[j>>2]=c[(c[b>>2]|0)+4>>2];c[h
x3e;>2]=c[(c[j>>2]|0)+692>>2];c[f>>2]=c[(c[h>>2]|0)+2052>>2];if(!(c[f>
;>2]|0)){i=g;return 0}c[e>>2]=Wc(c[(c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2]|0)+4>>
;2]|0,11524)|0;if(!(c[e>>2]|0)){i=g;return 0}c[d>>2]=Ta[c[(c[f>>2]|0)+8>>2]&63](c[e
>>2]|0)|0;c[(c[(c[b>>2]|0)+156>>2]|0)+36>>2]=c[d>>2];i=g;return 0}function Fi(
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)+156>>2]|0)+36>>2]=0;i=b
;return}function Gi(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o+
20|0;j=o+16|0;k=o+12|0;l=o+8|0;n=o+4|0;m=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[n
x3e;>2]=c[g>>2];c[m>>2]=c[h>>2];if(!(c[n>>2]|0)){c[f>>2]=37;n=c[f>
x3e;2]|0;i=o;return n|0}if(!(c[m>>2]|0))c[k>>2]=c[k>>2]|3;if(c[k>>2]&1|0)c[m>
x3e;2]=0;if(c[m>>2]|0?(c[c[h>>2]>>2]|0)!=(c[(c[g>>2]|0)+4>>2]|0):0){c[f>
x3e;2]=35;n=c[f>>2]|0;i=o;return n|0}c[l>>2]=Hi(c[n>>2]|0,c[m>>2]|0,c[j>>2]|0,
c[k>>2]|0)|0;c[f>>2]=c[l>>2];n=c[f>>2]|0;i=o;return n|0}function Hi(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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;V=i;i=i+1120|0;A=V+1092|0;B=V+1088|0;C=V+1084|0;x=V+1080|0;D=V+1076|0;I=V+1072|0;H=V+144
|0;J=V+140|0;O=V+1113|0;M=V+1112|0;r=V+136|0;K=V+120|0;L=V+112|0;k=V+108|0;m=V+104|0;n=V+100|0;l=V+1104|0;q=V+96|0;p=V+92|0;o=V+
1101|0;s=V+88|0;t=V+84|0;u=V+80|0;v=V+64|0;w=V+56|0;F=V+40|0;P=V+32|0;E=V+24|0;N=V+1100|0;z=V+1098|0;y=V+1096|0;Q=V+16|0;G=V+12|
0;R=V+8|0;S=V+4|0;T=V;c[B>>2]=f;c[C>>2]=g;c[x>>2]=h;c[D>>2]=j;c[J>>2]=c[(c[B
x3e;>2]|0)+4>>2];c[r>>2]=c[(c[J>>2]|0)+692>>2];a[M>>0]=0;if((c[(c[r>
x3e;2]|0)+1324+128>>2]|0)!=65535?c[(c[r>>2]|0)+1152+12>>2]|0:0){if(c[x>>2]|0?(c[x>
x3e;2]=pi((c[r>>2]|0)+1152|0,c[x>>2]|0)|0,(c[x>>2]|0)==0):0){c[A>>2]=6;U=c[A>>
2]|0;i=V;return U|0}}else U=6;if((U|0)==6?(c[x>>2]|0)>>>0>=(c[(c[r>>2]|0)+12>>
2]|0)>>>0:0){c[A>>2]=6;U=c[A>>2]|0;i=V;return U|0}if(c[D>>2]&1024|0)c[D>
x3e;2]=c[D>>2]|3;c[(c[B>>2]|0)+164>>2]=65536;c[(c[B>>2]|0)+168>>2]=65536;if(c[
C>>2]|0){c[(c[B>>2]|0)+164>>2]=c[(c[C>>2]|0)+12+4>>2];c[(c[B>>2]|0)+
168>>2]=c[(c[C>>2]|0)+12+8>>2]}if((((c[C>>2]|0?(c[k>>2]=c[c[C>>2]>
;>2],c[m>>2]=c[(c[k>>2]|0)+532>>2],c[n>>2]=c[(c[k>>2]|0)+104>>2
],(c[(c[C>>2]|0)+44>>2]|0)!=-1):0)?c[(c[m>>2]|0)+140>>2]|0:0)?(c[D>>2]&8|
0)==0:0)?(c[I>>2]=Na[c[(c[m>>2]|0)+104>>2]&1](c[J>>2]|0,c[(c[C>>2]|0)+44
x3e;>2]|0,c[x>>2]|0,c[D>>2]|0,c[n>>2]|0,(c[B>>2]|0)+76|0,l)|0,(c[I>>2]|0)==
0):0){b[(c[B>>2]|0)+108+2>>1]=0;b[(c[B>>2]|0)+108>>1]=0;c[(c[B>>2]|0)+24>
x3e;2]=d[l+1>>0]<<6;c[(c[B>>2]|0)+24+4>>2]=d[l>>0]<<6;c[(c[B>
x3e;2]|0)+24+8>>2]=a[l+2>>0]<<6;c[(c[B>>2]|0)+24+12>>2]=a[l+3>>0]<
;<6;c[(c[B>>2]|0)+24+16>>2]=d[l+4>>0]<<6;c[(c[B>>2]|0)+24+20>>2
]=a[l+5>>0]<<6;c[(c[B>>2]|0)+24+24>>2]=a[l+6>>0]<<6;c[(c[B>>
;2]|0)+24+28>>2]=d[l+7>>0]<<6;c[(c[B>>2]|0)+72>>2]=1651078259;if(c[D>>
;2]&16|0){c[(c[B>>2]|0)+100>>2]=a[l+5>>0];c[(c[B>>2]|0)+104>>2]=a[l+6>
;>0]}else{c[(c[B>>2]|0)+100>>2]=a[l+2>>0];c[(c[B>>2]|0)+104>>2]=a[l+3>
;>0]}c[A>>2]=c[I>>2];U=c[A>>2]|0;i=V;return U|0}if(c[D>>2]&16384|0){c[A>
x3e;2]=6;U=c[A>>2]|0;i=V;return U|0}k=c[r>>2]|0;if(c[(c[r>>2]|0)+1892>>2]|0){a[o>
x3e;0]=Ii(k+2024|0,c[x>>2]|0)|0;if((d[o>>0]|0)>>>0>=(c[(c[r>>2]|0)+1892>
x3e;2]|0)>>>0)a[o>>0]=(c[(c[r>>2]|0)+1892>>2]|0)-1;c[q>>2]=c[(c[r>
x3e;2]|0)+1324+64>>2];c[p>>2]=c[(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|
0)+64>>2];n=(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|0)+48|0;c[K>>2]=c[n
>>2];c[K+4>>2]=c[n+4>>2];c[K+8>>2]=c[n+8>>2];c[K+12>>2]=c[n+12>
x3e;2];o=(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|0)+68|0;c[L>>2]=c[o>>2
];c[L+4>>2]=c[o+4>>2];if((c[q>>2]|0)!=(c[p>>2]|0)){o=xb(c[(c[B>>2]|0)+164>
;>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[(c[B>>2]|0)+164>>2]=o;q=xb(c[(c[B>>2]|0)+
168>>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[(c[B>>2]|0)+168>>2]=q;a[M>>0]=1}}
else{q=k+1324+48|0;c[K>>2]=c[q>>2];c[K+4>>2]=c[q+4>>2];c[K+8>>2]=c[q+8>
x3e;2];c[K+12>>2]=c[q+12>>2];q=(c[r>>2]|0)+1324+68|0;c[L>>2]=c[q>>2];c[L+4>
;>2]=c[q+4>>2]}b[(c[B>>2]|0)+108+2>>1]=0;b[(c[B>>2]|0)+108>>1]=0;if(!(c[D
>>2]&1))k=(c[D>>2]&2|0)==0;else k=0;a[O>>0]=k&1;c[(c[B>>2]|0)+72>>
;2]=1869968492;Ji(H,c[J>>2]|0,c[C>>2]|0,c[B>>2]|0,a[O>>0]|0,c[D>>2]>>
;16&15);if(c[D>>2]&256|0)a[H+753>>0]=1;a[H+66>>0]=c[D>>2]&0;c[I>>
;2]=Mi(c[J>>2]|0,c[x>>2]|0,s,t)|0;do if(((c[I>>2]|0)==0?(c[I>>2]=Ni(H,c[C>>2]|
0,c[x>>2]|0)|0,(c[I>>2]|0)==0):0)?(c[I>>2]=Oi(H,c[s>>2]|0,c[t>>2]|0)|0,Yi(c[J
x3e;>2]|0,s,c[t>>2]|0),(c[I>>2]|0)==0):0){if(c[(c[(c[J>>2]|0)+128>>2]|0)+52>
x3e;2]|0){c[(c[B>>2]|0)+136>>2]=0;c[(c[B>>2]|0)+140>>2]=0;break}c[u>>2]=(c[r
x3e;>2]|0)+1176;if(c[(c[u>>2]|0)+24>>2]|0){c[(c[B>>2]|0)+136>>2]=(c[(c[u>>
;2]|0)+28>>2]|0)+(c[(c[(c[u>>2]|0)+24>>2]|0)+(c[x>>2]<<2)>>2]|0)+-1;
c[(c[B>>2]|0)+140>>2]=c[t>>2]}}while(0);if(!(c[I>>2]|0))Zi(H);if(((c[I>>2]|0)==
0?c[(c[(c[J>>2]|0)+128>>2]|0)+52>>2]|0:0)?c[(c[c[(c[(c[J>>2]|0)+128>>2]|0)+52
x3e;>2]>>2]|0)+8>>2]|0:0){c[v>>2]=c[H+32>>2];c[v+4>>2]=0;c[v+8>>
;2]=c[H+40>>2];c[v+12>>2]=c[H+40+4>>2];c[I>>2]=Wa[c[(c[c[(c[(c[J>>2]|0)+128>
;>2]|0)+52>>2]>>2]|0)+8>>2]&31](c[(c[(c[(c[J>>2]|0)+128>>2]|0)+52>
;>2]|0)+4>>2]|0,c[x>>2]|0,0,v)|0;c[H+32>>2]=c[v>>2];c[H+40>>2]=c[v+8>
;>2];c[H+40+4>>2]=c[v+12>>2]}do if(!(c[I>>2]|0)){k=c[B>>2]|0;if(c[D>>2]
x26;1024|0){c[w>>2]=c[k+156>>2];c[(c[B>>2]|0)+24+8>>2]=c[H+32>>2];c[(c[B>
x3e;2]|0)+24+16>>2]=c[H+744>>2];U=(c[w>>2]|0)+12|0;c[U>>2]=c[K>>2];c[U+4>
x3e;2]=c[K+4>>2];c[U+8>>2]=c[K+8>>2];c[U+12>>2]=c[K+12>>2];U=(c[w>>2
]|0)+28|0;c[U>>2]=c[L>>2];c[U+4>>2]=c[L+4>>2];a[(c[w>>2]|0)+8>>0]=1;
break}c[P>>2]=k+24;c[(c[P>>2]|0)+16>>2]=c[H+744>>2];c[(c[B>>2]|0)+56>>
;2]=c[H+744>>2];a[(c[(c[B>>2]|0)+156>>2]|0)+8>>0]=0;if(d[(c[J>>2]|0)+296>
x3e;0]|0?(e[(c[J>>2]|0)+300+34>>1]|0)>0:0)k=(c[(c[J>>2]|0)+300+36>>2]|0)!=0;else k=
0;a[N>>0]=k&1;do if(!(a[N>>0]|0)){k=c[J>>2]|0;if((e[(c[J>>2]|0)+368>>1]|0
)!=65535){c[(c[P>>2]|0)+28>>2]=(b[k+368+70>>1]|0)-(b[(c[J>>2]|0)+368+72>>1]|0);
break}else{c[(c[P>>2]|0)+28>>2]=(b[k+216+4>>1]|0)-(b[(c[J>>2]|0)+216+6>>1]|0);
break}}else{b[z>>1]=0;b[y>>1]=0;Za[c[(c[(c[J>>2]|0)+532>>2]|0)+156>>2]&31
](c[J>>2]|0,1,c[x>>2]|0,z,y)|0;c[(c[P>>2]|0)+24>>2]=b[z>>1];c[(c[P>>
2]|0)+28>>2]=e[y>>1]}while(0);c[(c[B>>2]|0)+60>>2]=c[(c[P>>2]|0)+28>>
;2];c[(c[B>>2]|0)+72>>2]=1869968492;c[(c[B>>2]|0)+108+16>>2]=0;if(c[C>>2]|0?(e
[(c[C>>2]|0)+12+2>>1]|0)<24:0){J=(c[B>>2]|0)+108+16|0;c[J>>2]=c[J>>2]|256
}J=(c[B>>2]|0)+108+16|0;c[J>>2]=c[J>>2]|4;do if((c[K>>2]|0)==65536?(c[K+12>>2]|
0)==65536:0){if(c[K+4>>2]|0){U=64;break}if(c[K+8>>2]|0)U=64}else U=64;while(0);if((U|0)==64)Kb((c[B>>
;2]|0)+108|0,K);if(!((c[L>>2]|0)==0?!(c[L+4>>2]|0):0))Nb((c[B>>2]|0)+108|0,c[L>>2]|0,c[L
+4>>2]|0);c[E>>2]=c[(c[P>>2]|0)+16>>2];c[E+4>>2]=0;Lb(E,K);c[(c[P>>2
]|0)+16>>2]=(c[E>>2]|0)+(c[L>>2]|0);c[E>>2]=0;c[E+4>>2]=c[(c[P>>2]|0
)+28>>2];Lb(E,K);c[(c[P>>2]|0)+28>>2]=(c[E+4>>2]|0)+(c[L+4>>2]|0);if(!((c[D>
;>2]&1|0)!=0?!(d[M>>0]|0):0)){c[G>>2]=(c[B>>2]|0)+108;c[R>>2]=c[(c[G>>
;2]|0)+4>>2];c[S>>2]=c[(c[B>>2]|0)+164>>2];c[T>>2]=c[(c[B>>2]|0)+168
>>2];if(!(a[O>>0]|0?(c[H+68>>2]|0)!=0:0))U=72;a:do if((U|0)==72){c[Q>>2]=b[(c[G>>
;2]|0)+2>>1];while(1){if((c[Q>>2]|0)<=0)break a;U=Mb(c[c[R>>2]>>2]|0,c[S>>
;2]|0)|0;c[c[R>>2]>>2]=U;U=Mb(c[(c[R>>2]|0)+4>>2]|0,c[T>>2]|0)|0;c[(c[R>
x3e;2]|0)+4>>2]=U;c[Q>>2]=(c[Q>>2]|0)+-1;c[R>>2]=(c[R>>2]|0)+8}}while(0);U=Mb(
c[(c[P>>2]|0)+16>>2]|0,c[S>>2]|0)|0;c[(c[P>>2]|0)+16>>2]=U;U=Mb(c[(c[P>
x3e;2]|0)+28>>2]|0,c[T>>2]|0)|0;c[(c[P>>2]|0)+28>>2]=U}_d((c[B>>2]|0)+108|0,F);
c[c[P>>2]>>2]=(c[F+8>>2]|0)-(c[F>>2]|0);c[(c[P>>2]|0)+4>>2]=(c[F+12
x3e;>2]|0)-(c[F+4>>2]|0);c[(c[P>>2]|0)+8>>2]=c[F>>2];c[(c[P>>2]|0)+12>
;>2]=c[F+12>>2];if(a[N>>0]|0){c[(c[P>>2]|0)+20>>2]=(c[(c[P>>2]|0)+8>
x3e;2]|0)-((c[(c[P>>2]|0)+16>>2]|0)/2|0);break}if(!(c[D>>2]&16))break;Bd(c[P>>2]|0,
c[(c[P>>2]|0)+28>>2]|0)}while(0);c[A>>2]=c[I>>2];U=c[A>>2]|0;i=V;return U|0}function
Ii(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;o=i;i=i+32|0;j=o+20|0;f=o+16|0;k=o+25|0;g=o+12|0;h=o+8|0;l=o+24|0;m
=o+4|0;n=o;c[j>>2]=b;c[f>>2]=e;a[k>>0]=0;switch(d[c[j>>2]>>0]|0|0){case 0:{a[k
>>0]=a[(c[(c[j>>2]|0)+8>>2]|0)+(c[f>>2]|0)>>0]|0;n=a[k>>0]|0;i=o;return
n|0}case 3:{b=c[j>>2]|0;if(((c[f>>2]|0)-(c[(c[j>>2]|0)+16>>2]|0)|0)>>>0
x3c;(c[(c[j>>2]|0)+20>>2]|0)>>>0){a[k>>0]=a[b+24>>0]|0;n=a[k>>0
]|0;i=o;return n|0}c[g>>2]=c[b+8>>2];c[h>>2]=(c[g>>2]|0)+(c[(c[j>>2]|0)+12>
;>2]|0);c[g>>2]=(c[g>>2]|0)+2;c[m>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[g>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;while(1){if((c[f>>
2]|0)>>>0<(c[m>>2]|0)>>>0){b=10;break}e=c[g>>2]|0;c[g>>2]=e+1;a
[l>>0]=a[e>>0]|0;c[g>>2]=(c[g>>2]|0)+2;c[n>>2]=(((d[(c[g>>2]|0)+-2
x3e;>0]|0)&65535)<<8|((d[(c[g>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if
((c[f>>2]|0)>>>0<(c[n>>2]|0)>>>0){b=8;break}c[m>>2]=c[n>
x3e;2];if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>>0){b=10;break}}if((b|0)==8){a[k
x3e;>0]=a[l>>0]|0;c[(c[j>>2]|0)+16>>2]=c[m>>2];c[(c[j>>2]|0)+20>>
;2]=(c[n>>2]|0)-(c[m>>2]|0);a[(c[j>>2]|0)+24>>0]=a[l>>0]|0;n=a[k>>0]|
0;i=o;return n|0}else if((b|0)==10){n=a[k>>0]|0;i=o;return n|0}break}default:{n=a[k>>0]|0;i=o;return n|0}}return
0}function Ji(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;j=i;i=i+32|0;k=j+20|0;q=j+16
|0;p=j+12|0;o=j+8|0;n=j+24|0;l=j+4|0;m=j;c[k>>2]=b;c[q>>2]=d;c[p>>2]=e;c[o>>2]=f;a[n>
;>0]=g;c[l>>2]=h;c[m>>2]=c[(c[q>>2]|0)+692>>2];Ns(c[k>>2]|0,0,928)|0;Ki(c
[k>>2]|0,c[q>>2]|0,c[p>>2]|0,c[o>>2]|0,a[n>>0]|0);c[(c[k>>2]|0)+76
x3e;>2]=c[m>>2];c[(c[k>>2]|0)+892>>2]=c[(c[m>>2]|0)+84+8>>2];c[(c[k>
x3e;2]|0)+908>>2]=c[(c[m>>2]|0)+1308>>2];f=Li(c[(c[m>>2]|0)+1324+44>>2]|0,c[(c
[k>>2]|0)+892>>2]|0)|0;c[(c[k>>2]|0)+900>>2]=f;c[(c[k>>2]|0)+920>>2]=
c[l>>2];i=j;return}function Ki(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;p=i;i=i+32
|0;j=p+20|0;q=p+16|0;k=p+12|0;l=p+8|0;m=p+24|0;o=p+4|0;n=p;c[j>>2]=b;c[q>>2]=e;c[k>>2]=f;c[l>
x3e;2]=g;a[m>>0]=h;a[(c[j>>2]|0)+64>>0]=0;a[(c[j>>2]|0)+65>>0]=1;c[(c[j>
x3e;2]|0)+4>>2]=c[q>>2];c[(c[j>>2]|0)+8>>2]=c[l>>2];c[c[j>>2]>
x3e;2]=c[(c[q>>2]|0)+100>>2];if(c[l>>2]|0?(c[o>>2]=c[c[(c[l>>2]|0)+156>
x3e;2]>>2],c[(c[j>>2]|0)+12>>2]=c[o>>2],c[(c[j>>2]|0)+16>>2]=(c[o>
;>2]|0)+20,c[(c[j>>2]|0)+20>>2]=(c[o>>2]|0)+56,dc(c[o>>2]|0),c[(c[j>>2]|0
)+72>>2]=0,c[(c[j>>2]|0)+68>>2]=0,(d[m>>0]|0|0)!=0&(c[k>>2]|0)!=0):0){c[n
>>2]=c[(c[k>>2]|0)+40>>2];c[(c[j>>2]|0)+72>>2]=c[c[n>>2]>>
2];c[(c[j>>2]|0)+68>>2]=c[(c[(c[l>>2]|0)+156>>2]|0)+36>>2]}c[(c[j>>2
]|0)+24>>2]=0;c[(c[j>>2]|0)+28>>2]=0;c[(c[j>>2]|0)+32>>2]=0;c[(c[j>>
2]|0)+32+4>>2]=0;c[(c[j>>2]|0)+40>>2]=0;c[(c[j>>2]|0)+40+4>>2]=0;i=p;return}function
Li(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[d>>2]=b;do if((c[g>
;>2]|0)!=1){if((c[d>>2]|0)>>>0<1240){c[e>>2]=107;break}if((c[d>>2]|0)>
;>>0<33900){c[e>>2]=1131;break}else{c[e>>2]=32768;break}}else c[e>>2]=0;while(0);i=
f;return c[e>>2]|0}function Mi(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;o=i;i=i+48|0;f
=o+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;m=o+8|0;n=o+4|0;l=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k
x3e;>2]=e;a=c[g>>2]|0;if(c[(c[(c[g>>2]|0)+128>>2]|0)+52>>2]|0){c[n>>2]=Oa
[c[c[c[(c[a+128>>2]|0)+52>>2]>>2]>>2]&63](c[(c[(c[(c[g>>2]|0)+128>
x3e;2]|0)+52>>2]|0)+4>>2]|0,c[h>>2]|0,m)|0;c[c[j>>2]>>2]=c[m>>2];c[c
[k>>2]>>2]=c[m+4>>2];c[f>>2]=c[n>>2];n=c[f>>2]|0;i=o;return n|0}else
{c[l>>2]=c[a+692>>2];c[f>>2]=Zh((c[l>>2]|0)+1176|0,c[h>>2]|0,c[j>>2]|
0,c[k>>2]|0)|0;n=c[f>>2]|0;i=o;return n|0}return 0}function Ni(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;q=i;i=i+48|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;l=q+12|0;p=q+8|0;m=q+4|0;n=q+32|0;o=q;c[g>>2]=
b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=c[g>>2];c[l>>2]=c[(c[(c[k>>2]|0)+4>
;>2]|0)+692>>2];c[p>>2]=(c[l>>2]|0)+1324;c[m>>2]=0;do if(c[(c[l>>2]|0)+1892
>>2]|0){a[n>>0]=Ii((c[l>>2]|0)+2024|0,c[j>>2]|0)|0;if((d[n>>0]|0)>>
x3e;0>=(c[(c[l>>2]|0)+1892>>2]|0)>>>0){c[m>>2]=3;p=c[m>>2]|0;i=q;return
p|0}else{c[p>>2]=c[(c[l>>2]|0)+1896+((d[n>>0]|0)<<2)>>2];if(!(c[h>>
2]|0?(c[(c[k>>2]|0)+68>>2]|0)!=0:0))break;c[o>>2]=c[(c[h>>2]|0)+40>>2];c[(c[k
x3e;>2]|0)+72>>2]=c[(c[o>>2]|0)+4+((d[n>>0]|0)<<2)>>2];break}}while(0);c[(
c[g>>2]|0)+888>>2]=c[(c[p>>2]|0)+532+8>>2];c[(c[g>>2]|0)+904>>2]=c[(
c[p>>2]|0)+564>>2];e=Li(c[(c[(c[g>>2]|0)+76>>2]|0)+1324+44>>2]|0,c[(c[g>
x3e;2]|0)+888>>2]|0)|0;c[(c[g>>2]|0)+896>>2]=e;c[(c[g>>2]|0)+744>>2]=c[(c[p>
;>2]|0)+172+352>>2];c[(c[g>>2]|0)+748>>2]=c[(c[p>>2]|0)+172+356>>2];p=c[m
>>2]|0;i=q;return p|0}function Oi(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,$=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;ta=i;i=i+272|0;h=
ta+256|0;j=ta+252|0;va=ta+248|0;ua=ta+244|0;y=ta+240|0;ra=ta+236|0;K=ta+232|0;L=ta+228|0;m=ta+224|0;pa=ta+220|0;qa=ta+216|0;$=ta
+212|0;ca=ta+208|0;n=ta+204|0;A=ta+200|0;W=ta+196|0;la=ta+260|0;ba=ta+192|0;ma=ta+188|0;l=ta+184|0;T=ta+180|0;Z=ta+176|0;aa=ta+172
|0;X=ta+168|0;M=ta+164|0;N=ta+160|0;O=ta+156|0;Y=ta+152|0;P=ta+148|0;V=ta+144|0;Q=ta+140|0;U=ta+136|0;R=ta+132|0;ea=ta+128|0;fa=
ta+124|0;da=ta+120|0;ga=ta+116|0;w=ta+112|0;x=ta+108|0;B=ta+104|0;s=ta+100|0;ha=ta+96|0;v=ta+92|0;z=ta+88|0;k=ta+84|0;t=ta+80|0;
_=ta+76|0;S=ta+72|0;ia=ta+68|0;E=ta+64|0;u=ta+60|0;F=ta+56|0;ja=ta+52|0;C=ta+48|0;ka=ta+44|0;D=ta+40|0;na=ta+36|0;G=ta+32|0;H=ta
+28|0;oa=ta+24|0;o=ta+20|0;p=ta+16|0;q=ta+12|0;r=ta+8|0;I=ta+4|0;J=ta;c[j>>2]=e;c[va>>2]=f;c[ua>>2
]=g;c[m>>2]=c[j>>2];c[n>>2]=c[(c[(c[j>>2]|0)+76>>2]|0)+1324+44>>2];c
[(c[j>>2]|0)+756>>2]=0;a[(c[j>>2]|0)+752>>0]=1;c[$>>2]=$^j^va;e=(c[$>>
;2]^c[$>>2]>>10^c[$>>2]>>20)&65535;c[$>>2]=e;c[$>>2]=(c[$>
x3e;2]|0)==0?29572:e;c[(c[j>>2]|0)+276>>2]=(c[j>>2]|0)+80;c[(c[j>>2]|0)+676>>2
]=(c[j>>2]|0)+280;c[ra>>2]=(c[j>>2]|0)+280;c[ca>>2]=c[(c[j>>2]|0)+276>>
;2];c[A>>2]=c[(c[m>>2]|0)+68>>2];a[(c[m>>2]|0)+64>>0]=0;c[c[ra>>2]
x3e;>2]=c[va>>2];e=(c[va>>2]|0)+(c[ua>>2]|0)|0;c[(c[ra>>2]|0)+4>>2]=e;c[L
>>2]=e;e=c[c[ra>>2]>>2]|0;c[(c[ra>>2]|0)+8>>2]=e;c[K>>2]=e;c[y>
x3e;2]=0;c[pa>>2]=c[(c[m>>2]|0)+24>>2];c[qa>>2]=c[(c[m>>2]|0)+28>>2];
if(c[A>>2]|0)Va[c[(c[A>>2]|0)+4>>2]&63](c[c[A>>2]>>2]|0);a:while(1){if((c
[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0){sa=307;break}va=c[K>>2]|0;c[K
x3e;>2]=va+1;a[la>>0]=a[va>>0]|0;if((d[la>>0]|0)<32?(d[la>>0]|0)!=28:0){c[l>
;>2]=c[(c[j>>2]|0)+276>>2];c[T>>2]=((c[l>>2]|0)-((c[j>>2]|0)+80)|0)/4|0;c
[W>>2]=0;b:do switch(d[la>>0]|0){case 1:{c[W>>2]=19;break}case 3:{c[W>>2]=20;break}case
4:{c[W>>2]=3;break}case 5:{c[W>>2]=4;break}case 6:{c[W>>2]=5;break}case 7:{c[W>>2]=6;break
}case 8:{c[W>>2]=7;break}case 9:{c[W>>2]=53;break}case 10:{c[W>>2]=49;break}case 11:{c[W>>
;2]=51;break}case 12:{if((c[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0)break a;va=c[K
x3e;>2]|0;c[K>>2]=va+1;a[la>>0]=a[va>>0]|0;do switch(d[la>>0]|0){case 0:{c[W>
x3e;2]=25;break b}case 1:{c[W>>2]=20;break b}case 2:{c[W>>2]=19;break b}case 3:{c[W>>2]=44;break b
}case 4:{c[W>>2]=45;break b}case 5:{c[W>>2]=46;break b}case 6:{c[W>>2]=56;break b}case 7:{c[W>
;>2]=57;break b}case 8:{c[W>>2]=42;break b}case 9:{c[W>>2]=26;break b}case 10:{c[W>>2]=27;break
b}case 11:{c[W>>2]=28;break b}case 12:{c[W>>2]=29;break b}case 13:{c[W>>2]=43;break b}case 14:{c[
W>>2]=30;break b}case 15:{c[W>>2]=47;break b}case 16:{c[W>>2]=54;break b}case 17:{c[W>>2
]=55;break b}case 18:{c[W>>2]=35;break b}case 20:{c[W>>2]=40;break b}case 21:{c[W>>2]=41;break b}case
22:{c[W>>2]=48;break b}case 23:{c[W>>2]=31;break b}case 24:{c[W>>2]=32;break b}case 26:{c[W>
x3e;2]=33;break b}case 27:{c[W>>2]=39;break b}case 28:{c[W>>2]=36;break b}case 29:{c[W>>2]=37;break
b}case 30:{c[W>>2]=38;break b}case 33:{c[W>>2]=58;break b}case 34:{c[W>>2]=15;break b}case 35:{c[
W>>2]=14;break b}case 36:{c[W>>2]=16;break b}case 37:{c[W>>2]=17;break b}default:{c[K>>2
]=(c[K>>2]|0)+-1;break b}}while(0)}case 13:{c[W>>2]=52;break}case 14:{c[W>>2]=18;break}case 16:{c[
W>>2]=34;break}case 18:{c[W>>2]=21;break}case 19:{c[W>>2]=23;break}case 20:{c[W>>2]=24;break
}case 21:{c[W>>2]=1;break}case 22:{c[W>>2]=2;break}case 23:{c[W>>2]=22;break}case 24:{c[W>>
;2]=10;break}case 25:{c[W>>2]=11;break}case 26:{c[W>>2]=13;break}case 27:{c[W>>2]=8;break}case 29:{
c[W>>2]=50;break}case 30:{c[W>>2]=12;break}case 31:{c[W>>2]=9;break}default:{}}while(0);if(!(c[W
x3e;>2]|0))break;c[Z>>2]=d[11281+(c[W>>2]|0)>>0];if(c[Z>>2]&128|0){if((c[T>
;>2]|0)>0?d[(c[j>>2]|0)+752>>0]|0:0){switch(c[W>>2]|0){case 3:case 2:{c[aa>>2]=
c[T>>2]&2;break}case 24:case 23:case 1:case 22:case 21:case 20:case 19:{c[aa>>2]=c[T>>2]&
;1;break}case 18:{c[aa>>2]=((c[T>>2]|0)==5?1:(c[T>>2]|0)==1)&1;break}default:c[aa>>
2]=0}if(c[aa>>2]|0){c[(c[j>>2]|0)+744>>2]=(c[(c[j>>2]|0)+748>>2]|0)+(c[c[ca>
;>2]>>2]>>16);if(a[(c[j>>2]|0)+753>>0]|0){sa=307;break}c[T>>2]=(c[T>
x3e;2]|0)+-1}}a[(c[j>>2]|0)+752>>0]=0;c[Z>>2]=0}c[Z>>2]=c[Z>>2]&15;if((c[
T>>2]|0)<(c[Z>>2]|0)){sa=309;break}c[l>>2]=(c[l>>2]|0)+(0-(c[Z>>2]|0)<
;<2);c[T>>2]=(c[T>>2]|0)-(c[Z>>2]|0);do switch(c[W>>2]|0){case 56:{sa=220;break a}case
18:{sa=221;break a}case 22:case 21:case 20:case 19:{if(c[A>>2]|0)_a[c[(c[A>>2]|0)+12>>2]&15](
c[c[A>>2]>>2]|0,((c[W>>2]|0)==19?1:(c[W>>2]|0)==21)&1,(c[T>>2]|0)/2|0,(c[
l>>2]|0)+(0-(c[T>>2]&-2)<<2)|0);va=(c[j>>2]|0)+756|0;c[va>>2]=(c[va>
x3e;2]|0)+((c[T>>2]|0)/2|0);c[l>>2]=c[ca>>2];break}case 24:case 23:{if((c[T>>2]|0)>
0){if(c[A>>2]|0)_a[c[(c[A>>2]|0)+12>>2]&15](c[c[A>>2]>>2]|0,0,(c[T>
x3e;2]|0)/2|0,(c[l>>2]|0)+(0-(c[T>>2]&-2)<<2)|0);va=(c[j>>2]|0)+756|0;c[va>>
;2]=(c[va>>2]|0)+((c[T>>2]|0)/2|0)}if(((c[K>>2]|0)+((c[(c[j>>2]|0)+756>>2]|0)+
7>>3)|0)>>>0>=(c[L>>2]|0)>>>0)break a;do if(c[A>>2]|0){f=c[A>
;>2]|0;if((c[W>>2]|0)==23){_a[c[f+16>>2]&15](c[c[A>>2]>>2]|0,b[(c[(c[m>
x3e;2]|0)+20>>2]|0)+2>>1]|0,c[(c[j>>2]|0)+756>>2]|0,c[K>>2]|0);break}else{Ua[c
[f+20>>2]&31](c[c[A>>2]>>2]|0,c[(c[j>>2]|0)+756>>2]|0,c[K>>2]|0
);break}}while(0);c[K>>2]=(c[K>>2]|0)+((c[(c[j>>2]|0)+756>>2]|0)+7>>3);c[l>
;>2]=c[ca>>2];break}case 1:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64>>0]=0;c[pa>>2]=(
c[pa>>2]|0)+(c[(c[l>>2]|0)+-8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>
2]|0)+-4>>2]|0);c[l>>2]=c[ca>>2];break}case 3:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64
x3e;>0]=0;c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+-4>>2]|0);c[l>>2]=c[ca>
;>2];break}case 2:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64>>0]=0;c[pa>>2]=(c[pa>>2
]|0)+(c[(c[l>>2]|0)+-4>>2]|0);c[l>>2]=c[ca>>2];break}case 4:{if(Qi(c[m>>2]|0,c
[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[T>>2]|0)/2|0)|0){sa=307;break
a}if((c[T>>2]|0)<2){sa=309;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[T>>2]&-2)<
x3c;2);while(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>
;0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|
0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>
;2]=(c[l>>2]|0)+8}c[l>>2]=c[ca>>2];break}case 6:case 5:{c[X>>2]=(c[W>>2]|0)==5
&1;if((c[T>>2]|0)<1){sa=309;break a}if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){
sa=307;break a}if(Ti(c[m>>2]|0,c[T>>2]|0)|0){sa=307;break a}c[l>>2]=c[ca>>2];while(1){if
((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;f=c[c[l
x3e;>2]>>2]|0;if(c[X>>2]|0)c[pa>>2]=(c[pa>>2]|0)+f;else c[qa>>2]=(c[qa>
;>2]|0)+f;if(Si(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>
;>2]|0)+4;c[X>>2]=c[X>>2]^1}c[l>>2]=c[ca>>2];break}case 7:{if((c[T>>2]|0)
x3c;6){sa=309;break a}c[M>>2]=(c[T>>2]|0)-((c[T>>2]|0)%6|0);if(Qi(c[m>>2]|0,c[pa>
x3e;2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[M>>2]|0)/2|0)|0){sa=307;break a}c[l>
;>2]=(c[l>>2]|0)+(0-(c[M>>2]|0)<<2);while(1){if((c[l>>2]|0)>>>0>
;=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>
x3e;2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>
2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>
;2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>
x3e;2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>
;>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0,1);c[l>>2]=(c[l>>2]|0)+24}c[l>>2]=c[ca>>2];break}case 13:{if((c[T>
x3e;2]|0)<4){sa=309;break a}c[N>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0)-(
c[N>>2]|0)|0)>0)c[N>>2]=(c[N>>2]|0)+1;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[N>>2]|0)<<2);if(c[N>>
2]&1|0){c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2
]|0)+4;c[N>>2]=(c[N>>2]|0)+-1}if(Ti(c[m>>2]|0,((c[N>>2]|0)/4|0)*3|0)|0){sa=307;break a}while
(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;c[qa
>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>
;>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[qa
>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c
[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+16}c[l>>2]=c[ca>>2];break}case 8:{if((c[T>
;>2]|0)<4){sa=309;break a}c[O>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0
)-(c[O>>2]|0)|0)>0)c[O>>2]=(c[O>>2]|0)+1;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[O>>2]|0)<<2);if(c[O>>
;2]&1|0){c[qa>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>
2]|0)+4;c[O>>2]=(c[O>>2]|0)+-1}if(Ti(c[m>>2]|0,((c[O>>2]|0)/4|0)*3|0)|0){sa=307;break a}
while(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break
;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa
>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[
qa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0
,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+16}c[l>>2]=c[ca>>2];break}case 9:case
12:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if((c[T>>2]|0)<4){sa=309
;break a}c[P>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0)-(c[P>>2]|0)|0)
x3e;0)c[P>>2]=(c[P>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+(0-(c[P>>2]|0)<<2);if
(Ti(c[m>>2]|0,((c[P>>2]|0)/4|0)*3|0)|0){sa=309;break a}c[Y>>2]=(c[W>>2]|0)==9&1;while
(1){if((c[P>>2]|0)<4)break;c[P>>2]=(c[P>>2]|0)-4;f=c[c[l>>2]>>2]|0;if(c[Y
>>2]|0){c[pa>>2]=(c[pa>>2]|0)+f;Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0
);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0
)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[qa>>
;2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);if((c[P>>2]|0)==1)c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1)}else
{c[qa>>2]=(c[qa>>2]|0)+f;Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>
;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
x3e;2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
x3e;2]|0)+(c[(c[l>>2]|0)+12>>2]|0);if((c[P>>2]|0)==1)c[qa>>2]=(c[qa>>2]|0)+(c[(
c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1)}c[l>>2]=(
c[l>>2]|0)+16;c[Y>>2]=c[Y>>2]^1}c[l>>2]=c[ca>>2];break}case 11:{if((c[T>
x3e;2]|0)<8){sa=309;break a}c[Q>>2]=c[T>>2]&-2;c[V>>2]=((c[Q>>2]|0)-6|0)/2|0;if
(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[V>>2
]|0)+3|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[Q>>2]|0)<<2);while(1){va=(c[V>
;>2]|0)>0;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>
;>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);f=c[m>>2]|0;g=c[pa>>2]|0;e=c[qa>>2]|0;if(!
va)break;Ui(f,g,e,1);c[l>>2]=(c[l>>2]|0)+8;c[V>>2]=(c[V>>2]|0)+-1}Ui(f,g,e,0);c[pa>
x3e;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
;>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20
x3e;>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case
10:{if((c[T>>2]|0)<8){sa=309;break a}c[R>>2]=(c[T>>2]|0)-2;c[R>>2]=(c[R>>
;2]|0)-((c[R>>2]|0)%6|0)+2;c[U>>2]=((c[R>>2]|0)-2|0)/6|0;if(Qi(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,((c[U>>2]|0)*3|0)+2|0)|0){sa=307;break a}c[l
x3e;>2]=(c[l>>2]|0)+(0-(c[R>>2]|0)<<2);while(1){va=(c[U>>2]|0)>0;c[pa>>
;2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|
0)+4>>2]|0);f=c[m>>2]|0;g=c[pa>>2]|0;e=c[qa>>2]|0;if(!va)break;Ui(f,g,e,0);c[pa>>
;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
x3e;2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
x3e;2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20>
;>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+24;c[U
x3e;>2]=(c[U>>2]|0)+-1}Ui(f,g,e,1);c[l>>2]=c[ca>>2];break}case 16:{if(Qi(c[m>>2]|0,
c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;break a}c[ea>>2]=c
[qa>>2];c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>
x3e;2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa
x3e;>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[
l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c
[pa>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|
0,1);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);Ui(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0);c[qa>
x3e;2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+28>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+32>>2]|0);c[qa>>2]=c[ea>
;>2];Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 15
:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;
break a}c[fa>>2]=c[qa>>2];c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);Ui
(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2
]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>
2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+12>>
;2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>
;>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);c[qa>>2]=c[fa>>2];Ui(c[m>>2]|0,c[pa>
;>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0);Ui(c[
m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 17:{c[w>>
;2]=0;c[x>>2]=0;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>
x3e;2]|0,6)|0){sa=307;break a}c[da>>2]=c[pa>>2];c[ga>>2]=c[qa>>2];c[ha>>2]=c[l
>>2];c[s>>2]=5;while(1){if((c[s>>2]|0)<=0)break;c[w>>2]=(c[w>>2]|0)+(c[c[
ha>>2]>>2]|0);c[x>>2]=(c[x>>2]|0)+(c[(c[ha>>2]|0)+4>>2]|0);c[ha>
;>2]=(c[ha>>2]|0)+8;c[s>>2]=(c[s>>2]|0)+-1}if((c[w>>2]|0)<0)c[w>>2]=
0-(c[w>>2]|0);if((c[x>>2]|0)<0)c[x>>2]=0-(c[x>>2]|0);c[B>>2]=(c[w>
x3e;2]|0)>(c[x>>2]|0)&1;c[s>>2]=5;while(1){if((c[s>>2]|0)<=0)break;c[pa>>
2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|
0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,(c[s>>2]|0)==3&255);c[l>
;>2]=(c[l>>2]|0)+8;c[s>>2]=(c[s>>2]|0)+-1}if(c[B>>2]|0){c[pa>>2]=(c[pa>
;>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=c[ga>>2]}else{c[pa>>2]=c[da>>
;2];c[qa>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0)}Ui(c[m>>2]|0,c[pa>>2]|0,
c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 14:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;break a}c[v>>2]=6;while(1){if((c[v>>
;2]|0)>>>0<=0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>
;>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,((c[v>>2]|0)==4?1:(c[v>>2]|0)==1)&1);c[l>>2]=(c[l>>2]|0)+8;c[v>>
;2]=(c[v>>2]|0)+-1}c[l>>2]=c[ca>>2];break}case 26:{if((c[c[l>>2]>>2]|0)<0
)c[c[l>>2]>>2]=0-(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case
27:{va=c[l>>2]|0;c[va>>2]=(c[va>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>
2]=(c[l>>2]|0)+4;break}case 28:{va=c[l>>2]|0;c[va>>2]=(c[va>>2]|0)-(c[(c[l>>2]|
0)+4>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case 29:{va=Vb(c[c[l>>2]>>2]|0,c[(c[l
x3e;>2]|0)+4>>2]|0)|0;c[c[l>>2]>>2]=va;c[l>>2]=(c[l>>2]|0)+4;break}case 30
:{c[c[l>>2]>>2]=0-(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case
31:{c[k>>2]=c[$>>2];if((c[k>>2]|0)>=32768)c[k>>2]=(c[k>>2]|0)+1;c[c[l>
;>2]>>2]=c[k>>2];c[$>>2]=Mb(c[$>>2]|0,65536-(c[$>>2]|0)|0)|0;if(!(c[$>
;>2]|0))c[$>>2]=(c[$>>2]|0)+10355;c[l>>2]=(c[l>>2]|0)+4;break}case 32:{va=Mb(c[c[l
x3e;>2]>>2]|0,c[(c[l>>2]|0)+4>>2]|0)|0;c[c[l>>2]>>2]=va;c[l>>2]=(
c[l>>2]|0)+4;break}case 33:{if((c[c[l>>2]>>2]|0)>0){c[t>>2]=9;c[_>>2]=c[c
[l>>2]>>2];while(1){f=c[_>>2]|0;c[S>>2]=f+(Vb(c[c[l>>2]>>2]|0,c[_>
;>2]|0)|0)+1>>1;f=c[S>>2]|0;if((c[t>>2]|0)<=0?1:(c[S>>2]|0)==(c[_>>2
]|0))break;c[_>>2]=f}c[c[l>>2]>>2]=f}else c[c[l>>2]>>2]=0;c[l>>2]=(c
[l>>2]|0)+4;break}case 25:case 35:break;case 36:{c[ia>>2]=c[c[l>>2]>>2];c[c[l>>
;2]>>2]=c[(c[l>>2]|0)+4>>2];c[(c[l>>2]|0)+4>>2]=c[ia>>2];c[l>
x3e;2]=(c[l>>2]|0)+8;break}case 37:{c[E>>2]=c[c[l>>2]>>2]>>16;if((c[E>>
;2]|0)>=0){if((c[E>>2]|0)>((c[T>>2]|0)-2|0))c[E>>2]=(c[T>>2]|0)-2}else c[E>
;>2]=0;c[c[l>>2]>>2]=c[(c[l>>2]|0)+(0-((c[E>>2]|0)+1)<<2)>>2];c
[l>>2]=(c[l>>2]|0)+4;break}case 38:{c[u>>2]=c[c[l>>2]>>2]>>16;c[F>
;>2]=c[(c[l>>2]|0)+4>>2]>>16;if((c[u>>2]|0)<=0)c[u>>2]=1;c[l>
x3e;2]=(c[l>>2]|0)+(0-(c[u>>2]|0)<<2);if((c[l>>2]|0)>>>0<(c[ca>
x3e;2]|0)>>>0){sa=309;break a}c:do if((c[F>>2]|0)>=0)while(1){if((c[F>>2]|0)<=0)break
c;c[ja>>2]=c[(c[l>>2]|0)+((c[u>>2]|0)-1<<2)>>2];c[C>>2]=(c[u>
x3e;2]|0)-2;while(1){if((c[C>>2]|0)<0)break;c[(c[l>>2]|0)+((c[C>>2]|0)+1<<2)>
x3e;2]=c[(c[l>>2]|0)+(c[C>>2]<<2)>>2];c[C>>2]=(c[C>>2]|0)+-1}c[c[l
x3e;>2]>>2]=c[ja>>2];c[F>>2]=(c[F>>2]|0)+-1}else while(1){if((c[F>>2]|0)
x3e;=0)break c;c[ka>>2]=c[c[l>>2]>>2];c[D>>2]=0;while(1){if((c[D>>2]|0)>=((
c[u>>2]|0)-1|0))break;c[(c[l>>2]|0)+(c[D>>2]<<2)>>2]=c[(c[l>>2]|0)+((
c[D>>2]|0)+1<<2)>>2];c[D>>2]=(c[D>>2]|0)+1}c[(c[l>>2]|0)+((c[u>
x3e;2]|0)-1<<2)>>2]=c[ka>>2];c[F>>2]=(c[F>>2]|0)+1}while(0);c[l>>2]=(
c[l>>2]|0)+(c[u>>2]<<2);break}case 39:{c[(c[l>>2]|0)+4>>2]=c[c[l>>2]
x3e;>2];c[l>>2]=(c[l>>2]|0)+8;break}case 40:{c[na>>2]=c[c[l>>2]>>2];c[G
x3e;>2]=c[(c[l>>2]|0)+4>>2]>>16;if((c[G>>2]|0)>=0&(c[G>>2]|0)
x3c;32)c[(c[j>>2]|0)+760+(c[G>>2]<<2)>>2]=c[na>>2];break}case 41:{c[H>>
;2]=c[c[l>>2]>>2]>>16;c[oa>>2]=0;if((c[H>>2]|0)>=0&(c[H>>2
]|0)<32)c[oa>>2]=c[(c[j>>2]|0)+760+(c[H>>2]<<2)>>2];c[c[l>>2]
x3e;>2]=c[oa>>2];c[l>>2]=(c[l>>2]|0)+4;break}case 51:{if((c[(c[j>>2]|0)+676>
x3e;2]|0)>>>0<=((c[j>>2]|0)+280|0)>>>0)break a;va=(c[j>>2]|0)+676|0;c[va
x3e;>2]=(c[va>>2]|0)+-12;c[ra>>2]=c[(c[j>>2]|0)+676>>2];c[K>>2]=c[(c[ra
x3e;>2]|0)+8>>2];c[L>>2]=c[(c[ra>>2]|0)+4>>2];break}case 50:{c[J>>2]=(c[c
[l>>2]>>2]>>16)+(c[(c[j>>2]|0)+900>>2]|0);if((c[J>>2]|0)>>
x3e;0>=(c[(c[j>>2]|0)+892>>2]|0)>>>0)break a;if((((c[ra>>2]|0)-((c[j>>
;2]|0)+280)|0)/12|0|0)>=32)break a;c[(c[ra>>2]|0)+8>>2]=c[K>>2];c[ra>>2]=(c[ra>
;>2]|0)+12;c[c[ra>>2]>>2]=c[(c[(c[j>>2]|0)+908>>2]|0)+(c[J>>2]<<
;2)>>2];c[(c[ra>>2]|0)+4>>2]=c[(c[(c[j>>2]|0)+908>>2]|0)+((c[J>>2]|0
)+1<<2)>>2];c[(c[ra>>2]|0)+8>>2]=c[c[ra>>2]>>2];if(!(c[c[ra>>
;2]>>2]|0))break a;if((c[(c[ra>>2]|0)+4>>2]|0)==(c[c[ra>>2]>>2]|0))break a;c[(
c[j>>2]|0)+676>>2]=c[ra>>2];c[K>>2]=c[c[ra>>2]>>2];c[L>>2]=
c[(c[ra>>2]|0)+4>>2];break}case 53:{c[l>>2]=c[ca>>2];break}case 52:{c[(c[j>>2]|
0)+744>>2]=(c[(c[j>>2]|0)+748>>2]|0)+(c[(c[l>>2]|0)+4>>2]>>16);c[(c[
j>>2]|0)+32>>2]=c[c[l>>2]>>2];c[(c[j>>2]|0)+32+4>>2]=0;c[pa>>
;2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=c[(c[j>>2]|0
)+28>>2];c[l>>2]=c[ca>>2];break}case 57:{c[(c[j>>2]|0)+744>>2]=(c[(c[j>
x3e;2]|0)+748>>2]|0)+(c[(c[l>>2]|0)+8>>2]>>16);c[(c[j>>2]|0)+32>>2]=
c[c[l>>2]>>2];c[(c[j>>2]|0)+32+4>>2]=c[(c[l>>2]|0)+4>>2];c[pa>
x3e;2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[(c[j>>
2]|0)+28>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>2]=c[ca>>2];break}case 58:{c[pa
x3e;>2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[(c[j>
x3e;2]|0)+28>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>2]=c[ca>>2];break}case 54:{c[
l>>2]=(c[l>>2]|0)+(0-(2+(c[(c[l>>2]|0)+-8>>2]>>16))<<2);if((c[l>
;>2]|0)>>>0<(c[ca>>2]|0)>>>0){sa=309;break a}break}case 55:{c[l>>2]=(
c[l>>2]|0)+4;break}case 44:{if(c[c[l>>2]>>2]|0)f=(c[(c[l>>2]|0)+4>>2]|0)!=0;else
f=0;c[o>>2]=f&1;c[c[l>>2]>>2]=c[o>>2]|0?65536:0;c[l>>2]=(c[l>>
2]|0)+4;break}case 45:{if(c[c[l>>2]>>2]|0)f=1;else f=(c[(c[l>>2]|0)+4>>2]|0)!=0;c[p>
;>2]=f&1;c[c[l>>2]>>2]=c[p>>2]|0?65536:0;c[l>>2]=(c[l>>2]|0)+4;break
}case 47:{c[q>>2]=((c[c[l>>2]>>2]|0)!=0^1)&1;c[c[l>>2]>>2]=c[q>>
;2]|0?65536:0;c[l>>2]=(c[l>>2]|0)+4;break}case 48:{c[r>>2]=(c[(c[l>>2]|0)+8>>2
]|0)<=(c[(c[l>>2]|0)+12>>2]|0)&1;if(!(c[r>>2]|0))c[c[l>>2]>>2]=c[(c[
l>>2]|0)+4>>2];c[l>>2]=(c[l>>2]|0)+4;break}case 49:{c[I>>2]=(c[c[l>>
2]>>2]>>16)+(c[(c[j>>2]|0)+896>>2]|0);if((c[I>>2]|0)>>>0>=(
c[(c[j>>2]|0)+888>>2]|0)>>>0)break a;if((((c[ra>>2]|0)-((c[j>>2]|0)+280)|
0)/12|0|0)>=32)break a;c[(c[ra>>2]|0)+8>>2]=c[K>>2];c[ra>>2]=(c[ra>>2]|0)+
12;c[c[ra>>2]>>2]=c[(c[(c[j>>2]|0)+904>>2]|0)+(c[I>>2]<<2)>>
;2];c[(c[ra>>2]|0)+4>>2]=c[(c[(c[j>>2]|0)+904>>2]|0)+((c[I>>2]|0)+1<<
;2)>>2];c[(c[ra>>2]|0)+8>>2]=c[c[ra>>2]>>2];if(!(c[c[ra>>2]>>
;2]|0))break a;if((c[(c[ra>>2]|0)+4>>2]|0)==(c[c[ra>>2]>>2]|0))break a;c[(c[j>>
;2]|0)+676>>2]=c[ra>>2];c[K>>2]=c[c[ra>>2]>>2];c[L>>2]=c[(c[ra>
x3e;2]|0)+4>>2];break}default:{sa=305;break a}}while(0);c[(c[j>>2]|0)+276>>2]=c[l>>2];if
((((c[(c[j>>2]|0)+276>>2]|0)-(c[ca>>2]|0)|0)/4|0|0)>=48){sa=310;break}else continue}c[ba>
;>2]=16;do if((d[la>>0]|0)!=28){f=d[la>>0]|0;if((d[la>>0]|0)<247){c[ma>>2]=f-139
;break}if((f|0)<251){if((c[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0)break a;ua=(
d[la>>0]|0)-247<<8;va=c[K>>2]|0;c[K>>2]=va+1;c[ma>>2]=ua+(d[va>>0]|0
)+108;break}f=c[K>>2]|0;if((d[la>>0]|0)<255){if(f>>>0>=(c[L>>2]|0)>
x3e;>0)break a;ua=0-((d[la>>0]|0)-251)<<8;va=c[K>>2]|0;c[K>>2]=va+1;c[ma>>
;2]=ua-(d[va>>0]|0)-108;break}if((f+3|0)>>>0>=(c[L>>2]|0)>>>0)break a;c[ma
>>2]=d[c[K>>2]>>0]<<24|d[(c[K>>2]|0)+1>>0]<<16|d[(c[K>
;>2]|0)+2>>0]<<8|d[(c[K>>2]|0)+3>>0];c[K>>2]=(c[K>>2]|0)+4;if((
c[n>>2]|0)==2)c[ba>>2]=0}else{if(((c[K>>2]|0)+1|0)>>>0>=(c[L>>2]|0)
x3e;>>0)break a;c[ma>>2]=((d[c[K>>2]>>0]<<8|d[(c[K>>2]|0)+1>>
;0])&65535)<<16>>16;c[K>>2]=(c[K>>2]|0)+2}while(0);if((((c[(c[j>>2]|0)+276
>>2]|0)-(c[ca>>2]|0)|0)/4|0|0)>=48){sa=310;break}c[ma>>2]=c[ma>>2]<<c[ba
x3e;>2];ua=c[ma>>2]|0;e=(c[j>>2]|0)+276|0;va=c[e>>2]|0;c[e>>2]=va+4;c[va>>
;2]=ua}do if((sa|0)==220){c[y>>2]=Vi(c[j>>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[(c[l>>2]|0)+12>>2]>>16,c[(c[l>
x3e;2]|0)+16>>2]>>16)|0;oc(c[(c[m>>2]|0)+12>>2]|0);c[h>>2]=c[y>>2];va
=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==221){if((c[T>>2]|0)>=4){c[z>>2]=c[(c[j>>
;2]|0)+744>>2];c[y>>2]=Vi(c[j>>2]|0,0,c[(c[l>>2]|0)+-16>>2]|0,c[(c[l>>
;2]|0)+-12>>2]|0,c[(c[l>>2]|0)+-8>>2]>>16,c[(c[l>>2]|0)+-4>>2]>
x3e;16)|0;c[(c[j>>2]|0)+744>>2]=c[z>>2]}else{if(!(c[y>>2]|0))c[y>>2]=0;Pi(c[m
x3e;>2]|0);if(c[A>>2]|0){if(Ya[c[(c[A>>2]|0)+8>>2]&127](c[c[A>>2]>>2
]|0,b[(c[(c[m>>2]|0)+20>>2]|0)+2>>1]|0)|0)break;Wa[c[(c[A>>2]|0)+24>>2]&31
](c[c[A>>2]>>2]|0,c[(c[m>>2]|0)+20>>2]|0,c[(c[m>>2]|0)+72>>2]|0,c[(c
[j>>2]|0)+920>>2]|0)|0}oc(c[(c[m>>2]|0)+12>>2]|0)}c[h>>2]=c[y>>2];va
=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==305){c[h>>2]=7;va=c[h>>2]|0;i=ta;return va|0}else if((
sa|0)==307){c[h>>2]=c[y>>2];va=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==309){c[h>>2]=129
;va=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==310){c[h>>2]=130;va=c[h>>2]|0;i=ta;return va|0}while
(0);c[h>>2]=3;va=c[h>>2]|0;i=ta;return va|0}function Pi(a){a=a|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|
0;l=k+20|0;j=k+16|0;h=k+12|0;f=k+8|0;g=k+4|0;e=k;c[l>>2]=a;c[j>>2]=c[(c[l>>2]|0)+20>>2];
if(!(c[j>>2]|0)){i=k;return}if((b[c[j>>2]>>1]|0)<=1)a=0;else a=(b[(c[(c[j>>2]|0)+12
>>2]|0)+((b[c[j>>2]>>1]|0)-2<<1)>>1]|0)+1|0;c[h>>2]=a;if((((b[(c[j
x3e;>2]|0)+2>>1]|0)>1?(c[f>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[h>>2]<
;<3),c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(b[(c[j>>2]|0)+2>>1]<<3)+-
8,c[e>>2]=(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>>2]|0)+2>>1]|0)+-1,(c[c[f>>
;2]>>2]|0)==(c[c[g>>2]>>2]|0)):0)?(c[(c[f>>2]|0)+4>>2]|0)==(c[(c[g>>
2]|0)+4>>2]|0):0)?(d[c[e>>2]>>0]|0)==1:0){l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>
x3e;1]|0)+-1<<16>>16}if((b[c[j>>2]>>1]|0)<=0){i=k;return}a=c[j>>2]|0;if((
c[h>>2]|0)==((b[(c[j>>2]|0)+2>>1]|0)-1|0)){b[a>>1]=(b[a>>1]|0)+-1<<16
>>16;l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>>1]|0)+-1<<16>>16;i=k;return}else
{b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>1]|0)-1<<1)>>1]=(b[a+2>
;>1]|0)-1;i=k;return}}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;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=
k;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2]=0;if(a[(c[f>>2]|0)+64>>0]|0){
e=c[j>>2]|0;i=k;return e|0}a[(c[f>>2]|0)+64>>0]=1;c[j>>2]=Ri(c[f>>2]|0)|0;if(c
[j>>2]|0){e=c[j>>2]|0;i=k;return e|0}c[j>>2]=Si(c[f>>2]|0,c[g>>2]|0,c[h>
x3e;2]|0)|0;e=c[j>>2]|0;i=k;return e|0}function Ri(d){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[e>>2]=d;c[h>>2]=c[(c[e>>2]|0)+20>>2];if(!(a[(c[e>>2]|0)+65>>
;0]|0)){h=c[h>>2]|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16;c[f>>2]=0;h=c[f>
;>2]|0;i=j;return h|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20>>1]|0)+(b[(c[(c[e>>2]|0)+12
>>2]|0)+56>>1]|0)+1|0)>>>0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+8>>
;2]|0)>>>0)e=0;else e=kc(c[(c[e>>2]|0)+12>>2]|0,0,1)|0;c[g>>2]=e;if(!(c[g>>
;2]|0)){if((b[c[h>>2]>>1]|0)>0)b[(c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>
;>1]|0)-1<<1)>>1]=(b[(c[h>>2]|0)+2>>1]|0)-1;h=c[h>>2]|0;b[h>>1]=(
b[h>>1]|0)+1<<16>>16}c[f>>2]=c[g>>2];h=c[f>>2]|0;i=j;return h|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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>
;2]=b;c[g>>2]=d;c[h>>2]=Ti(c[e>>2]|0,1)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=j;return
d|0}Ui(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0,1);d=c[h>>2]|0;i=j;return d|0}function Ti(a,d){a=a
|0;d=d|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]=d;if(!(c[f>>2]|0)){d=0;i=g;return
d|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20+2>>1]|0)+(b[(c[(c[e>>2]|0)+12>>2]|0)+56
+2>>1]|0)+(c[f>>2]|0)|0)>>>0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+4>>
;2]|0)>>>0){d=0;i=g;return d|0}d=kc(c[(c[e>>2]|0)+12>>2]|0,c[f>>2]|0,0)|0;i=g;return
d|0}function Ui(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;p=i;i=i+32|0;q=p+20|0;j=p+16|0;k=p+12|0;l=
p+24|0;n=p+8|0;o=p+4|0;m=p;c[q>>2]=e;c[j>>2]=f;c[k>>2]=g;a[l>>0]=h;c[n>>2]=c[(
c[q>>2]|0)+20>>2];if(!(a[(c[q>>2]|0)+65>>0]|0)){q=c[n>>2]|0;q=q+2|0;g=b[q>
;>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}c[o>>2]=(c[(c[n>>2]|0)+4>
x3e;2]|0)+(b[(c[n>>2]|0)+2>>1]<<3);c[m>>2]=(c[(c[n>>2]|0)+8>>2]|0)+(
b[(c[n>>2]|0)+2>>1]|0);c[c[o>>2]>>2]=c[j>>2]>>16;c[(c[o>>2
]|0)+4>>2]=c[k>>2]>>16;a[c[m>>2]>>0]=d[l>>0]|0?1:2;q=c[n>>
2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}function Vi(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,D=0,E=0,F=0,G=0
;G=i;i=i+96|0;k=G+92|0;l=G+88|0;m=G+84|0;n=G+80|0;o=G+76|0;p=G+72|0;q=G+68|0;y=G+64|0;u=G+60|0;t=G+56|0;r=G+52|0;z=G+48|0;C=G+40
|0;s=G+32|0;w=G+24|0;x=G+20|0;B=G+16|0;v=G+12|0;A=G+8|0;D=G+4|0;E=G;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;
c[o>>2]=g;c[p>>2]=h;c[q>>2]=j;c[u>>2]=c[l>>2];c[z>>2]=c[(c[l>
x3e;2]|0)+4>>2];if(a[(c[l>>2]|0)+924>>0]|0){c[k>>2]=160;F=c[k>>2]|0;i=G;return
F|0}c[n>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+32>>2]|0);c[o>>2]=(c[o>>2]|0
)+(c[(c[l>>2]|0)+32+4>>2]|0);if(c[(c[(c[z>>2]|0)+128>>2]|0)+52>>2]|0){c[t>
;>2]=c[p>>2];c[r>>2]=c[q>>2]}else{c[v>>2]=c[(c[z>>2]|0)+692>>2];
c[t>>2]=Wi(c[v>>2]|0,c[p>>2]|0)|0;c[r>>2]=Wi(c[v>>2]|0,c[q>>2]|0)|0}
if((c[t>>2]|0)<0|(c[r>>2]|0)<0){c[k>>2]=160;F=c[k>>2]|0;i=G;return F|0}if(a[(c
[u>>2]|0)+66>>0]|0){c[A>>2]=c[(c[u>>2]|0)+8>>2];c[D>>2]=c[c[(c[A>
;>2]|0)+156>>2]>>2];c[y>>2]=lc(c[D>>2]|0,2)|0;if(!(c[y>>2]|0)){c[E>
x3e;2]=c[(c[D>>2]|0)+56+32>>2];c[c[E>>2]>>2]=c[t>>2];b[(c[E>>2]|0)+4
>>1]=514;c[(c[E>>2]|0)+8>>2]=0;c[(c[E>>2]|0)+12>>2]=0;c[E>>2]=(c[E
x3e;>2]|0)+32;c[c[E>>2]>>2]=c[r>>2];b[(c[E>>2]|0)+4>>1]=2;c[(c[E>>
;2]|0)+8>>2]=c[n>>2]>>16;c[(c[E>>2]|0)+12>>2]=c[o>>2]>>16;
c[(c[A>>2]|0)+128>>2]=2;c[(c[A>>2]|0)+132>>2]=c[(c[D>>2]|0)+20+32>>2
];c[(c[A>>2]|0)+72>>2]=1668246896;c[(c[D>>2]|0)+56+28>>2]=2;F=11}}else F=11;do if((F|0)==
11){nc(c[(c[u>>2]|0)+12>>2]|0);c[y>>2]=Mi(c[z>>2]|0,c[t>>2]|0,w,x)|0;if((c[y
x3e;>2]|0)==0?(a[(c[l>>2]|0)+924>>0]=1,c[y>>2]=Oi(c[l>>2]|0,c[w>>2]|0,c[x
>>2]|0)|0,a[(c[l>>2]|0)+924>>0]=0,Yi(c[z>>2]|0,w,c[x>>2]|0),c[y>>2]|
0):0)break;F=(c[u>>2]|0)+32|0;c[C>>2]=c[F>>2];c[C+4>>2]=c[F+4>>2];F=(c[u>
x3e;2]|0)+40|0;c[s>>2]=c[F>>2];c[s+4>>2]=c[F+4>>2];c[B>>2]=c[(c[l>>2
]|0)+744>>2];c[(c[u>>2]|0)+32>>2]=0;c[(c[u>>2]|0)+32+4>>2]=0;c[(c[u>>
;2]|0)+24>>2]=(c[n>>2]|0)-(c[m>>2]|0);c[(c[u>>2]|0)+28>>2]=c[o>>2];c
[y>>2]=Mi(c[z>>2]|0,c[r>>2]|0,w,x)|0;if((c[y>>2]|0)==0?(a[(c[l>>2]|0)+924>
;>0]=1,c[y>>2]=Oi(c[l>>2]|0,c[w>>2]|0,c[x>>2]|0)|0,a[(c[l>>2]|0)+924>
;>0]=0,Yi(c[z>>2]|0,w,c[x>>2]|0),c[y>>2]|0):0)break;F=(c[u>>2]|0)+32|0;c[F>>
;2]=c[C>>2];c[F+4>>2]=c[C+4>>2];F=(c[u>>2]|0)+40|0;c[F>>2]=c[s>>2];c
[F+4>>2]=c[s+4>>2];c[(c[l>>2]|0)+744>>2]=c[B>>2];c[(c[u>>2]|0)+24>
;>2]=0;c[(c[u>>2]|0)+28>>2]=0}while(0);c[k>>2]=c[y>>2];F=c[k>>2]|0;i=G;return
F|0}function Wi(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l+12|0;g=l+8|0;f=l+4|0;j=l;h=l+16|0;c[g>>
2]=a;c[f>>2]=d;if(!(c[(c[g>>2]|0)+1152+8>>2]|0)){c[k>>2]=-1;k=c[k>>2]|0;i=l;return
k|0}if((c[f>>2]|0)<0|(c[f>>2]|0)>255){c[k>>2]=-1;k=c[k>>2]|0;i=l;return k|0}b
[h>>1]=Xi(c[f>>2]|0)|0;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[
g>>2]|0)+12>>2]|0)>>>0){f=10;break}a=c[j>>2]|0;if((e[(c[(c[g>>2]|0)+1152+
8>>2]|0)+(c[j>>2]<<1)>>1]|0|0)==(e[h>>1]|0|0)){f=8;break}c[j>>2]=a+1
}if((f|0)==8){c[k>>2]=a;k=c[k>>2]|0;i=l;return k|0}else if((f|0)==10){c[k>>2]=-1;k=c[k>>
2]|0;i=l;return k|0}return 0}function Xi(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<256)b=e[6520+(c[b>>2]<<1)>>1]|0;else b=0;i=d;return b&65535|0}function Yi
(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;e=k+24|0;f=k+20|0;g=k+16|0;j=k+8|0;h=k;c[e>>2]=a;c[
f>>2]=b;c[g>>2]=d;if(c[(c[(c[e>>2]|0)+128>>2]|0)+52>>2]|0){c[j>>2]=c
[c[f>>2]>>2];c[j+4>>2]=c[g>>2];Ra[c[(c[c[(c[(c[e>>2]|0)+128>>2]|0)+52
>>2]>>2]|0)+4>>2]&7](c[(c[(c[(c[e>>2]|0)+128>>2]|0)+52>>2]|0)+4
>>2]|0,j);i=k;return}else{c[h>>2]=c[(c[e>>2]|0)+692>>2];ji((c[h>>2]|0)+1176|0,
c[f>>2]|0);i=k;return}}function Zi(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;c[d>>
;2]=c[(c[b>>2]|0)+8>>2];if(!(c[d>>2]|0)){i=e;return}d=(c[d>>2]|0)+108|0;a=c[(c[b>
x3e;2]|0)+16>>2]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a
+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];i=e;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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2]=c[m>>2];c[k>>2]=c[(
c[j>>2]|0)+532>>2];c[c[h>>2]>>2]=0;c[(c[h>>2]|0)+4>>2]=0;if(!(c[k>
;>2]|0)){i=l;return 0}m=Oa[c[(c[k>>2]|0)+128>>2]&63](c[j>>2]|0,c[f>>2]|0,c[g
x3e;>2]|0)|0;c[c[h>>2]>>2]=m;i=l;return 0}function $i(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;p=i;i=i+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;m=p+8|0;o=p+4|0;n=p;c[g>>2]=
a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[o>>2]=0;c[n>>2]=c[(c[g
x3e;>2]|0)+84>>2];c[k>>2]=c[k>>2]|256;c[m>>2]=0;while(1){if((c[m>>2]|0)
x3e;>>0>=(c[j>>2]|0)>>>0){f=8;break}c[o>>2]=Gi(c[n>>2]|0,c[(c[g>
;>2]|0)+88>>2]|0,(c[h>>2]|0)+(c[m>>2]|0)|0,c[k>>2]|0)|0;if(c[o>>2]|0){f=8
;break}f=c[n>>2]|0;if(c[k>>2]&16|0)f=c[f+60>>2]|0;else f=c[f+56>>2]|0;c[(c[l>
x3e;2]|0)+(c[m>>2]<<2)>>2]=f;c[m>>2]=(c[m>>2]|0)+1}if((f|0)==8){i=p;return c[o
>>2]|0}return 0}function aj(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;v=i;i=i+80|0;k=v+64|0;l=v+60|0;d=v+56|0;g=v+52|0;n=v+48|0;e=v+44|0;h=v+40|0;j=v+36|0;f=v+32|0;m=v+28|0;p=v+24|0;s=v+20|0;o=v+
16|0;q=v+12|0;r=v+8|0;t=v+4|0;u=v;c[l>>2]=a;c[d>>2]=b;c[g>>2]=c[l>>2];do if(c[(c[c[l>
;>2]>>2]|0)+8>>2]&2|0){c[e>>2]=c[c[l>>2]>>2];c[h>>2]=c[(c[
e>>2]|0)+532>>2];if(Oa[c[(c[h>>2]|0)+148>>2]&63](c[e>>2]|0,c[d>>
;2]|0,j)|0){c[(c[g>>2]|0)+44>>2]=-1;break}c[k>>2]=bj(c[l>>2]|0,c[j>>2]|0)|0;u=
c[k>>2]|0;i=v;return u|0}while(0);Ed(c[c[l>>2]>>2]|0,c[d>>2]|0);c[n>>2]=Bi(c[g
>>2]|0)|0;a:do if(c[n>>2]|0){c[f>>2]=c[c[l>>2]>>2];c[m>>2]=c[(c[f>
;>2]|0)+692>>2];c[p>>2]=c[(c[l>>2]|0)+40>>2];c[s>>2]=c[(c[m>>2]|
0)+1324+64>>2];Za[c[(c[n>>2]|0)+4>>2]&31](c[c[p>>2]>>2]|0,c[(c[l>>
;2]|0)+12+4>>2]|0,c[(c[l>>2]|0)+12+8>>2]|0,0,0)|0;c[o>>2]=c[(c[m>>2]|0)+1892
x3e;>2];while(1){if((c[o>>2]|0)>>>0<=0)break a;c[q>>2]=c[(c[m>>2]|0)+1896
+((c[o>>2]|0)-1<<2)>>2];c[r>>2]=c[(c[q>>2]|0)+64>>2];d=c[(c[l>
x3e;2]|0)+12+4>>2]|0;if((c[s>>2]|0)!=(c[r>>2]|0)){c[t>>2]=xb(d,c[s>>2]|0,c[r
x3e;>2]|0)|0;c[u>>2]=xb(c[(c[l>>2]|0)+12+8>>2]|0,c[s>>2]|0,c[r>>2]|0)|0}else
{c[t>>2]=d;c[u>>2]=c[(c[l>>2]|0)+12+8>>2]}Za[c[(c[n>>2]|0)+4>>2]&
;31](c[(c[p>>2]|0)+4+((c[o>>2]|0)-1<<2)>>2]|0,c[t>>2]|0,c[u>>2]|0,0,
0)|0;c[o>>2]=(c[o>>2]|0)+-1}}while(0);c[k>>2]=0;u=c[k>>2]|0;i=v;return u|0}function bj(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;p=i;i=i+64|0;e=p+48|0;r=p+44|0;q=p+40|0;g=p+36|0;d=p
+32|0;f=p+28|0;j=p+24|0;m=p+20|0;h=p+16|0;k=p+12|0;l=p+8|0;n=p+4|0;o=p;c[e>>2]=a;c[r>>2]=b;c[q>>2]=
c[e>>2];c[(c[q>>2]|0)+44>>2]=c[r>>2];Cd(c[c[e>>2]>>2]|0,c[r>>
;2]|0);c[g>>2]=Bi(c[q>>2]|0)|0;if(!(c[g>>2]|0)){i=p;return 0}c[d>>2]=c[c[e>>2]
x3e;>2];c[f>>2]=c[(c[d>>2]|0)+692>>2];c[j>>2]=c[(c[e>>2]|0)+40>>
;2];c[m>>2]=c[(c[f>>2]|0)+1324+64>>2];Za[c[(c[g>>2]|0)+4>>2]&31](c[c[j>
;>2]>>2]|0,c[(c[e>>2]|0)+12+4>>2]|0,c[(c[e>>2]|0)+12+8>>2]|0,0,0)|0;c[h
x3e;>2]=c[(c[f>>2]|0)+1892>>2];while(1){if((c[h>>2]|0)>>>0<=0)break;c[k
x3e;>2]=c[(c[f>>2]|0)+1896+((c[h>>2]|0)-1<<2)>>2];c[l>>2]=c[(c[k>>
;2]|0)+64>>2];d=c[(c[e>>2]|0)+12+4>>2]|0;if((c[m>>2]|0)!=(c[l>>2]|0)){c[n>
;>2]=xb(d,c[m>>2]|0,c[l>>2]|0)|0;c[o>>2]=xb(c[(c[e>>2]|0)+12+8>>2]|0,c[m
x3e;>2]|0,c[l>>2]|0)|0}else{c[n>>2]=d;c[o>>2]=c[(c[e>>2]|0)+12+8>>2]}Za[c
[(c[g>>2]|0)+4>>2]&31](c[(c[j>>2]|0)+4+((c[h>>2]|0)-1<<2)>>2]|0
,c[n>>2]|0,c[o>>2]|0,0,0)|0;c[h>>2]=(c[h>>2]|0)+-1}i=p;return 0}function cj(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];i=d;return 0}function dj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;h=g+8|0;e=g+4|0;f=g;c[h>>2
]=a;c[e>>2]=b;c[f>>2]=c[(c[h>>2]|0)+16>>2];if((c[e>>2]|0)>>>0
x3e;=256){h=0;i=g;return h|0}h=d[(c[f>>2]|0)+(6+(c[e>>2]|0))>>0]|0;i=g;return h|0}function ej(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;l=i;i=i+32|0;m=l+20|0;e=l+16|0;j=l+12|0;f=l+8|0;h=l+4|0;g=l;c[m>>2]=a;
c[e>>2]=b;c[j>>2]=c[(c[m>>2]|0)+16>>2];c[f>>2]=c[c[e>>2]>>
2];c[h>>2]=0;c[g>>2]=0;c[j>>2]=(c[j>>2]|0)+6;do{m=(c[f>>2]|0)+1|0;c[f>>
;2]=m;if(m>>>0>=256){k=5;break}c[g>>2]=d[(c[j>>2]|0)+(c[f>>2]|0)>>0]}
while(!(c[g>>2]|0));if((k|0)==5){k=c[h>>2]|0;m=c[e>>2]|0;c[m>>2]=k;m=c[g>>2]|0
;i=l;return m|0}c[h>>2]=c[f>>2];k=c[h>>2]|0;m=c[e>>2]|0;c[m>>2]=k;m=c[g>
x3e;2]|0;i=l;return m|0}function fj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;e=k+20|0;f=k+16|0;j=k+12|0;l=k
+8|0;h=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[j>>2]=(c[e>>2]|0)+2;c[j>>2]=(c[j>
x3e;2]|0)+2;c[l>>2]=(((d[(c[j>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[j>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535;if((c[l>>2]|0)>>>0<262?1:((c[e>>
;2]|0)+(c[l>>2]|0)|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>
;>2]|0,8);if((c[(c[f>>2]|0)+8>>2]|0)>>>0<1){i=k;return 0}c[j>>2]=(c[e>
;>2]|0)+6;c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>=256)break;l=c[j>>2]|0;c[
j>>2]=l+1;c[g>>2]=d[l>>0];if((c[g>>2]|0)>>>0>=(c[(c[f>>2]|
0)+172>>2]|0)>>>0)sc(c[f>>2]|0,16);c[h>>2]=(c[h>>2]|0)+1}i=k;return 0}function
gj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>
;2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=0;c[c[f>>2]>>2]=(((
d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&65535)<<
;0)&65535;i=e;return 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,o=0,p=0,q=0,r=0;p=i;i=i+48|0;r=p+40
|0;f=p+36|0;q=p+32|0;m=p+28|0;o=p+24|0;l=p+20|0;j=p+16|0;n=p+12|0;g=p+8|0;h=p+4|0;k=p;c[r>>2]=b;c[f>>2]=e;c[
q>>2]=c[(c[r>>2]|0)+16>>2];c[m>>2]=0;c[o>>2]=ij(c[q>>2]|0,c[f>
x3e;2]|0)|0;if(!(c[o>>2]|0)){r=c[m>>2]|0;i=p;return r|0}c[l>>2]=c[o>>2];c[j>>2
]=c[f>>2]&255;c[l>>2]=(c[l>>2]|0)+2;c[n>>2]=((d[(c[l>>2]|0)+-2>>
;0]&65535)<<8|(d[(c[l>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[l>>2]=(
c[l>>2]|0)+2;c[g>>2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>>
2]|0)+-2+1>>0]&65535)<<0)&65535;c[l>>2]=(c[l>>2]|0)+2;c[h>>2]=((a[(c
[l>>2]|0)+-2>>0]<<16>>16<<8|d[(c[l>>2]|0)+-2+1>>0]<
x3c;0)&65535)<<16>>16;c[k>>2]=((d[c[l>>2]>>0]&65535)<<8|(d
[(c[l>>2]|0)+1>>0]&65535)<<0)&65535;c[j>>2]=(c[j>>2]|0)-(c[n>
x3e;2]|0);if(!(c[k>>2]|0?(c[j>>2]|0)>>>0<(c[g>>2]|0)>>>0:0)){r=
c[m>>2]|0;i=p;return r|0}c[l>>2]=(c[l>>2]|0)+((c[k>>2]|0)+(c[j>>2]<<
1));c[j>>2]=((d[c[l>>2]>>0]&65535)<<8|(d[(c[l>>2]|0)+1>>0]&
;65535)<<0)&65535;if(!(c[j>>2]|0)){r=c[m>>2]|0;i=p;return r|0}c[m>>2]=(c[j>>
;2]|0)+(c[h>>2]|0)&65535;r=c[m>>2]|0;i=p;return r|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,m=0,n=0;n=i;i=i+32|0;e=n+28|0;f=n+24|0;k=n+20|0;h=n+16|0;g=n+12|0;j=n+8|0;m=n+4|0;l=n;c[e>>2]=a;c[f>>
;2]=b;c[k>>2]=0;if((c[f>>2]|0)>>>0>=65536){a=c[k>>2]|0;i=n;return a|0}c[h>
;>2]=c[f>>2]&255;c[g>>2]=(c[f>>2]|0)>>>8;c[j>>2]=(c[e>>
;2]|0)+6;c[m>>2]=(c[e>>2]|0)+518;if(!(c[g>>2]|0)){c[l>>2]=c[m>>2];c[j>>
;2]=(c[j>>2]|0)+(c[h>>2]<<1);if((((d[c[j>>2]>>0]|0)&65535)<<8|((
d[(c[j>>2]|0)+1>>0]|0)&65535)<<0)&65535|0){a=c[k>>2]|0;i=n;return a|0}}else{c[
j>>2]=(c[j>>2]|0)+(c[g>>2]<<1);c[l>>2]=(c[m>>2]|0)+((((d[c[j>
x3e;2]>>0]|0)&65535)<<8|((d[(c[j>>2]|0)+1>>0]|0)&65535)<<0)&65535
&-8);if((c[l>>2]|0)==(c[m>>2]|0)){a=c[k>>2]|0;i=n;return a|0}}c[k>>2]=c[l>>
;2];a=c[k>>2]|0;i=n;return a|0}function jj(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;v=i;i=i+64|0;w=v+56|0;f=v+52|0;t=v+48|0;l=v+44|0;q=v+40|0;h=v+36|0;s=v+32|0;o=v+28|0;r=v+24|0;j=v+20|0;k=v+16|0;n=
v+12|0;g=v+8|0;p=v+4|0;m=v;c[w>>2]=b;c[f>>2]=e;c[t>>2]=c[(c[w>>2]|0)+16>>2];c[
l>>2]=0;c[q>>2]=0;c[h>>2]=(c[c[f>>2]>>2]|0)+1;a:while(1){if((c[h>>2]|
0)>>>0>=65536){u=15;break}c[s>>2]=ij(c[t>>2]|0,c[h>>2]|0)|0;b:do if(c[s>
x3e;2]|0?(c[o>>2]=c[s>>2],c[o>>2]=(c[o>>2]|0)+2,c[r>>2]=((d[(c[o>>2]|
0)+-2>>0]&65535)<<8|(d[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535,c[
o>>2]=(c[o>>2]|0)+2,c[j>>2]=((d[(c[o>>2]|0)+-2>>0]&65535)<<8|(d
[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535,c[o>>2]=(c[o>>2]|0)+2,c[k>
;>2]=((a[(c[o>>2]|0)+-2>>0]<<16>>16<<8|d[(c[o>>2]|0)+-2+1>
x3e;0]<<0)&65535)<<16>>16,c[n>>2]=((d[c[o>>2]>>0]&65535)
x3c;<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535,c[g>>2]=c[h>>2]&
;255,c[n>>2]|0):0){if((c[g>>2]|0)>>>0<(c[r>>2]|0)>>>0){c[g>
;>2]=c[r>>2];c[p>>2]=0}else c[p>>2]=(c[g>>2]|0)-(c[r>>2]|0);c[o>>
;2]=(c[o>>2]|0)+((c[n>>2]|0)+(c[p>>2]<<1));c[h>>2]=(c[h>>2]&-256
)+(c[g>>2]|0);while(1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break
b;c[o>>2]=(c[o>>2]|0)+2;c[m>>2]=((d[(c[o>>2]|0)+-2>>0]&65535)<<
;8|(d[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535;if(c[m>>2]|0?(c[l>>2]=(c
[m>>2]|0)+(c[k>>2]|0)&65535,c[l>>2]|0):0)break a;c[p>>2]=(c[p>>2]|0)+1;c[
h>>2]=(c[h>>2]|0)+1}}while(0);c[h>>2]=(c[h>>2]&-256)+256}if((u|0)==15){u=c[q>
x3e;2]|0;w=c[f>>2]|0;c[w>>2]=u;w=c[l>>2]|0;i=v;return w|0}c[q>>2]=c[h>>2];u=c[
q>>2]|0;w=c[f>>2]|0;c[w>>2]=u;w=c[l>>2]|0;i=v;return w|0}function kj(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;x=i;i=i+80|0;g=x+64|0;h=x+60|0;v=x+56|0;q=x+52|0;t=x+48
|0;s=x+44|0;f=x+40|0;w=x+36|0;m=x+32|0;o=x+28|0;l=x+24|0;j=x+20|0;u=x+16|0;k=x+12|0;n=x+8|0;r=x+4|0;p=x;c[g>>2]=b;c[h
x3e;>2]=e;c[v>>2]=(c[g>>2]|0)+2;c[q>>2]=((d[c[v>>2]>>0]&65535)<
x3c;8|(d[(c[v>>2]|0)+1>>0]&65535)<<0)&65535;if((c[q>>2]|0)>>>0
x3c;518?1:((c[g>>2]|0)+(c[q>>2]|0)|0)>>>0>(c[(c[h>>2]|0)+4>>2]|0)>
;>>0)sc(c[h>>2]|0,8);c[f>>2]=(c[g>>2]|0)+6;c[v>>2]=c[f>>2];c[s>
x3e;2]=0;c[t>>2]=0;while(1){f=c[v>>2]|0;if((c[t>>2]|0)>>>0>=256)break;c[v>
;>2]=f+2;c[o>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+
1>>0]&65535)<<0)&65535;if((c[(c[h>>2]|0)+8>>2]|0)>>>0>=2?c
[o>>2]&7|0:0)sc(c[h>>2]|0,8);c[o>>2]=(c[o>>2]|0)>>>3;if((c[o>
x3e;2]|0)>>>0>(c[s>>2]|0)>>>0)c[s>>2]=c[o>>2];c[t>>2]=(
c[t>>2]|0)+1}c[w>>2]=f;c[m>>2]=(c[w>>2]|0)+((c[s>>2]|0)+1<<3);if((c[
m>>2]|0)>>>0>(c[(c[h>>2]|0)+4>>2]|0)>>>0)sc(c[h>>2]|0
,8);c[t>>2]=0;while(1){if((c[t>>2]|0)>>>0>(c[s>>2]|0)>>>0)break
;c[v>>2]=(c[v>>2]|0)+2;c[l>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8
|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[v>>2]=(c[v>>2]|0)+2;c[j
x3e;>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>>0]&
;65535)<<0)&65535;c[v>>2]=(c[v>>2]|0)+2;c[k>>2]=((a[(c[v>>2]|0)+-2>
x3e;0]<<16>>16<<8|d[(c[v>>2]|0)+-2+1>>0]<<0)&65535)<<
16>>16;c[v>>2]=(c[v>>2]|0)+2;c[u>>2]=((d[(c[v>>2]|0)+-2>>0]&65535
)<<8|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0)&65535;a:do if(c[j>>2]|0){do
if((c[(c[h>>2]|0)+8>>2]|0)>>>0>=2){if((c[l>>2]|0)>>>0<256?((
c[l>>2]|0)+(c[j>>2]|0)|0)>>>0<=256:0)break;sc(c[h>>2]|0,8)}while(0);if(c[u>
;>2]|0){c[n>>2]=(c[v>>2]|0)+-2+(c[u>>2]|0);if(!((c[n>>2]|0)>>>0>
;=(c[m>>2]|0)>>>0?((c[n>>2]|0)+(c[j>>2]<<1)|0)>>>0<=((
c[g>>2]|0)+(c[q>>2]|0)|0)>>>0:0))sc(c[h>>2]|0,9);if((c[(c[h>>2]|0)+8>
;>2]|0)>>>0>=1){c[r>>2]=(c[v>>2]|0)+(c[j>>2]<<1);while(1){if((c
[v>>2]|0)>>>0>=(c[r>>2]|0)>>>0)break a;c[v>>2]=(c[v>>
2]|0)+2;c[p>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>
;>0]&65535)<<0)&65535;if(!(c[p>>2]|0))continue;c[p>>2]=(c[p>>2]|0)+(c[k
x3e;>2]|0)&65535;if((c[p>>2]|0)>>>0<(c[(c[h>>2]|0)+172>>2]|0)>
x3e;>0)continue;sc(c[h>>2]|0,16)}}}}while(0);c[t>>2]=(c[t>>2]|0)+1}i=x;return 0}function lj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(
c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=2;c[c[f>>2]>>2]=(((d[c
[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&65535)<<0
)&65535;i=e;return 0}function mj(a,b){a=a|0;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[f>>2]=a;
c[h>>2]=b;c[(c[f>>2]|0)+16>>2]=c[h>>2];c[g>>2]=(c[h>>2]|0)+6;c[(c[f
x3e;>2]|0)+32>>2]=((((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1
x3e;>0]|0)&65535)<<0)&65535)>>1;c[(c[f>>2]|0)+24>>2]=-1;c[(c[f>>
;2]|0)+28>>2]=0;i=e;return 0}function nj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>
;>2]=a;c[f>>2]=b;do if((c[f>>2]|0)>>>0<65536){b=c[e>>2]|0;if(c[(c[e>
x3e;2]|0)+20>>2]&1|0){c[d>>2]=oj(b,f,0)|0;break}else{c[d>>2]=pj(b,f,0)|0;break}}else c[d>
;>2]=0;while(0);i=g;return c[d>>2]|0}function oj(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;z=i;i=i+80|0;g=z+60|0;h=z+56|0;j=z+52|0;k=z+64|0;t=z+48|0;x=z+44|0;n=z+40|0;u=z+36|0;m=
z+32|0;q=z+28|0;s=z+24|0;l=z+20|0;p=z+16|0;v=z+12|0;w=z+8|0;o=z+4|0;r=z;c[h>>2]=b;c[j>>2]=e;a[k>>0
]=f;c[l>>2]=c[c[j>>2]>>2];c[p>>2]=0;c[v>>2]=(c[(c[h>>2]|0)+16>
x3e;2]|0)+6;c[t>>2]=((d[c[v>>2]>>0]&65535)<<8|(d[(c[v>>2]|0)+1>>
;0]&65535)<<0)&65535&-2;c[s>>2]=(c[t>>2]|0)>>>1;if(!(c[s>>
2]|0)){c[g>>2]=0;y=c[g>>2]|0;i=z;return y|0}if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1
;while(1){if((c[l>>2]|0)>>>0>65535)break;c[v>>2]=(c[(c[h>>2]|0)+16>>
2]|0)+14;c[w>>2]=(c[(c[h>>2]|0)+16>>2]|0)+16+(c[t>>2]|0);c[q>>2]=0;while(1){if
((c[q>>2]|0)>>>0>=(c[s>>2]|0)>>>0)break;c[v>>2]=(c[v>>
;2]|0)+2;c[n>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>
;>0]&65535)<<0)&65535;c[w>>2]=(c[w>>2]|0)+2;c[x>>2]=((d[(c[w>>2
]|0)+-2>>0]&65535)<<8|(d[(c[w>>2]|0)+-2+1>>0]&65535)<<0)&65535;
if((c[l>>2]|0)>>>0>=(c[x>>2]|0)>>>0?(c[l>>2]|0)>>>
;0<=(c[n>>2]|0)>>>0:0){c[v>>2]=(c[w>>2]|0)+-2+(c[t>>2]|0);c[m>
x3e;2]=((a[c[v>>2]>>0]<<16>>16<<8|d[(c[v>>2]|0)+1>>0]<
;<0)&65535)<<16>>16;c[v>>2]=(c[v>>2]|0)+(c[t>>2]|0);c[u>>2
]=((d[c[v>>2]>>0]&65535)<<8|(d[(c[v>>2]|0)+1>>0]&65535)<<0
)&65535;if((((c[x>>2]|0)==65535?(c[q>>2]|0)>>>0>=((c[s>>2]|0)-1|0)>
x3e;>0:0)&(c[n>>2]|0)==65535?(c[o>>2]=c[c[h>>2]>>2],c[r>>2]=(c[(c[o
x3e;>2]|0)+500>>2]|0)+(c[(c[o>>2]|0)+504>>2]|0),c[u>>2]|0):0)?((c[v>>2]|0
)+(c[u>>2]|0)+2|0)>>>0>(c[r>>2]|0)>>>0:0){c[m>>2]=1;c[u>
x3e;2]=0}if((c[u>>2]|0)!=65535){y=15;break}}c[q>>2]=(c[q>>2]|0)+1}do if((y|0)==15){y=0;if(!(c[u>
;>2]|0)){c[p>>2]=(c[l>>2]|0)+(c[m>>2]|0)&65535;break}c[v>>2]=(c[v>>2
]|0)+((c[u>>2]|0)+((c[l>>2]|0)-(c[x>>2]|0)<<1));c[p>>2]=((d[c[v>>2]
x3e;>0]&65535)<<8|(d[(c[v>>2]|0)+1>>0]&65535)<<0)&65535;if(c[p>
x3e;2]|0)c[p>>2]=(c[p>>2]|0)+(c[m>>2]|0)&65535}while(0);if((a[k>>0]|0)==0|(c[p>
;>2]|0)!=0)break;c[l>>2]=(c[l>>2]|0)+1}if((d[k>>0]|0)!=0&(c[p>>2]|0)!=0)c[c[j
x3e;>2]>>2]=c[l>>2];c[g>>2]=c[p>>2];y=c[g>>2]|0;i=z;return y|0}function pj
(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,D=0,E=0,F=
0,G=0;G=i;i=i+96|0;g=G+88|0;h=G+84|0;j=G+80|0;k=G+92|0;z=G+76|0;E=G+72|0;o=G+68|0;A=G+64|0;n=G+60|0;t=G+56|0;v=G+52|0;u=G+48|0;y
=G+44|0;l=G+40|0;q=G+36|0;C=G+32|0;p=G+28|0;s=G+24|0;r=G+20|0;D=G+16|0;B=G+12|0;w=G+8|0;x=G+4|0;m=G;c[h>>2]=b;c[j>
;>2]=e;a[k>>0]=f;c[l>>2]=c[c[j>>2]>>2];c[q>>2]=0;c[C>>2]=(c[(c[
h>>2]|0)+16>>2]|0)+6;c[z>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C
x3e;>2]|0)+1>>0]&65535)<<0)&65535&-2;if(!(c[z>>2]|0)){c[g>>2]=0;F=c[
g>>2]|0;i=G;return F|0}c[y>>2]=(c[z>>2]|0)>>>1;c[u>>2]=c[y>>2];
c[o>>2]=65535;if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1;c[v>>2]=0;c[t>>2]=c
[y>>2];while(1){if((c[v>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[u
x3e;>2]=((c[v>>2]|0)+(c[t>>2]|0)|0)>>>1;c[C>>2]=(c[(c[h>>2]|0)+16>
;>2]|0)+14+(c[u>>2]<<1);c[o>>2]=((d[c[C>>2]>>0]&65535)<<8|(
d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(2+(c[z>
;>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>
;0]&65535)<<0)&65535;if((c[l>>2]|0)>>>0<(c[E>>2]|0)>>>
;0){c[t>>2]=c[u>>2];continue}if((c[l>>2]|0)>>>0<=(c[o>>2]|0)>
x3e;>0){F=11;break}c[v>>2]=(c[u>>2]|0)+1}do if((F|0)==11){c[C>>2]=(c[C>>2]|0)+(c[z
x3e;>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>>
;2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>
x3e;2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0
]&65535)<<0)&65535;if((((c[E>>2]|0)==65535?(c[u>>2]|0)>>>0>=((c[y>
;>2]|0)-1|0)>>>0:0)&(c[o>>2]|0)==65535?(c[p>>2]=c[c[h>>2]>>2],c
[s>>2]=(c[(c[p>>2]|0)+500>>2]|0)+(c[(c[p>>2]|0)+504>>2]|0),c[A>>2]|0
):0)?((c[C>>2]|0)+(c[A>>2]|0)+2|0)>>>0>(c[s>>2]|0)>>>0:0){c[n
x3e;>2]=1;c[A>>2]=0}if(c[(c[h>>2]|0)+20>>2]&2|0){c[t>>2]=c[u>>2];if((
c[A>>2]|0)==65535)c[u>>2]=(c[t>>2]|0)+1;c[r>>2]=c[t>>2];while(1){if((c[r>
x3e;2]|0)>>>0<=0)break;c[B>>2]=c[C>>2];c[C>>2]=(c[(c[h>>2]|0)+16>
;>2]|0)+14+((c[r>>2]|0)-1<<1);c[D>>2]=((d[c[C>>2]>>0]&65535)<
x3c;8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[l>>2]|0)>>>0
x3e;(c[D>>2]|0)>>>0){F=21;break}c[o>>2]=c[D>>2];c[C>>2]=(c[C>>2
]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>
;2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>
;>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>>2]|0)+1>>0]
x3c;<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>
;2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<
;0)&65535;if((c[A>>2]|0)!=65535)c[u>>2]=(c[r>>2]|0)-1;c[r>>2]=(c[r>>2]|0)+-
1}if((F|0)==21)c[C>>2]=c[B>>2];if((c[u>>2]|0)==((c[t>>2]|0)+1|0)){if((c[r>>2]|
0)!=(c[t>>2]|0)){c[C>>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[t>>2]<<1);c[
o>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535
)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>
;2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>
;>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>
x3e;16<<8|d[(c[C>>2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>
;2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(
d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535}c[u>>2]=c[t>>2];c[r>>
2]=(c[t>>2]|0)+1;while(1){if((c[r>>2]|0)>>>0>=(c[y>>2]|0)>>>0)break
;c[C>>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[r>>2]<<1);c[w>>2]=((d[c[C>
;>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c
[C>>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[x>>2]=((d[c[C>>2]>>0]&65535
)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[l>>2]|0)>>
;>0<(c[x>>2]|0)>>>0)break;c[o>>2]=c[w>>2];c[E>>2]=c[x>>
;2];c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<
;16>>16<<8|d[(c[C>>2]|0)+1>>0]<<0)&65535)<<16>>16;c[C
>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[A>>2]|0)!=65535)c[u>
x3e;2]=c[r>>2];c[r>>2]=(c[r>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+-1;if((c[u>>
;2]|0)==(c[t>>2]|0)){c[u>>2]=c[r>>2];break}}if((c[u>>2]|0)!=(c[r>>2]|0)){c[C
x3e;>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[u>>2]<<1);c[o>>2]=((d[c[C>>
;2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>
;>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(
c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>
x3e;2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>
;>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>
;0]&65535)<<0)&65535}}else if((c[A>>2]|0)==65535)break;if(!(c[A>>2]|0)){c[q>>2
]=(c[l>>2]|0)+(c[n>>2]|0)&65535;break}c[C>>2]=(c[C>>2]|0)+((c[A>>2]|0)+((
c[l>>2]|0)-(c[E>>2]|0)<<1));c[q>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if(c[q>>2]|0)c[q>>2]=(
c[q>>2]|0)+(c[n>>2]|0)&65535}while(0);do if(a[k>>0]|0){c[m>>2]=c[h>>2];if
((c[l>>2]|0)>>>0>(c[o>>2]|0)>>>0?(c[u>>2]=(c[u>>2]|0)+
1,(c[u>>2]|0)==(c[y>>2]|0)):0){c[g>>2]=0;F=c[g>>2]|0;i=G;return F|0}if(qj(c[m>>
;2]|0,c[u>>2]|0)|0){if(!(c[q>>2]|0))break;c[c[j>>2]>>2]=c[l>>2];break}c[(c[m
x3e;>2]|0)+24>>2]=c[l>>2];if(c[q>>2]|0)c[(c[m>>2]|0)+28>>2]=c[q>>
;2];else{c[(c[m>>2]|0)+24>>2]=c[l>>2];rj(c[m>>2]|0);c[q>>2]=c[(c[m>>
2]|0)+28>>2]}if(c[q>>2]|0)c[c[j>>2]>>2]=c[(c[m>>2]|0)+24>>2]}while(0
);c[g>>2]=c[q>>2];F=c[g>>2]|0;i=G;return F|0}function qj(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;p=i;i=i+48|0;k=p+32|0;l=p+28|0;m=p+24|0;j=p+20|0;o=p+16|0;h=p+12|0;n=p+8|0;f=p+4|0;g=p;c[l>>2]=b;c
[m>>2]=e;c[j>>2]=c[(c[l>>2]|0)+16>>2];c[h>>2]=c[(c[l>>2]|0)+32>
x3e;2];while(1){if((c[m>>2]|0)>>>0>=(c[h>>2]|0)>>>0){b=12;break}c[o>
x3e;2]=(c[j>>2]|0)+14+(c[m>>2]<<1);c[(c[l>>2]|0)+44>>2]=((d[c[o>>2]
x3e;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;c[o>>
;2]=(c[o>>2]|0)+(2+(c[h>>2]<<1));c[(c[l>>2]|0)+40>>2]=((d[c[o>>2]>
;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;c[o>>
2]=(c[o>>2]|0)+(c[h>>2]<<1);c[(c[l>>2]|0)+48>>2]=((a[c[o>>2]>
x3e;0]<<16>>16<<8|d[(c[o>>2]|0)+1>>0]<<0)&65535)<<16
x3e;>16;c[o>>2]=(c[o>>2]|0)+(c[h>>2]<<1);c[n>>2]=((d[c[o>>2]>
;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;if(((((c[m>
;>2]|0)>>>0>=((c[h>>2]|0)-1|0)>>>0?(c[(c[l>>2]|0)+40>>2]|0
)==65535:0)?(c[(c[l>>2]|0)+44>>2]|0)==65535:0)?(c[f>>2]=c[c[l>>2]>>2],c[g>
;>2]=(c[(c[f>>2]|0)+500>>2]|0)+(c[(c[f>>2]|0)+504>>2]|0),c[n>>2]|0):0)?((
c[o>>2]|0)+(c[n>>2]|0)+2|0)>>>0>(c[g>>2]|0)>>>0:0){c[(c[l>
x3e;2]|0)+48>>2]=1;c[n>>2]=0}if((c[n>>2]|0)!=65535){b=10;break}c[m>>2]=(c[m>>2
]|0)+1}if((b|0)==10){c[(c[l>>2]|0)+52>>2]=c[n>>2]|0?(c[o>>2]|0)+(c[n>>2]|0)|0:
0;c[(c[l>>2]|0)+36>>2]=c[m>>2];c[k>>2]=0;o=c[k>>2]|0;i=p;return o|0}else if((b
|0)==12){c[k>>2]=-1;o=c[k>>2]|0;i=p;return o|0}return 0}function rj(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;n=i;i=i+32|0;j=n+28|0;k=n+24|0;h=n+20|0;f=n+16|0;e=n+12|0;g=n+8|0;l=n+4|0;m=n;c[j>>2]=a;a:do if((c[(c[j
x3e;>2]|0)+24>>2]|0)>>>0<65535){c[k>>2]=(c[(c[j>>2]|0)+24>>2]|0
)+1;if((c[k>>2]|0)>>>0<(c[(c[j>>2]|0)+40>>2]|0)>>>0)c[k>
x3e;2]=c[(c[j>>2]|0)+40>>2];b:while(1){c[h>>2]=c[(c[j>>2]|0)+52>>2];c[f>
x3e;2]=c[(c[j>>2]|0)+44>>2];c[e>>2]=c[(c[j>>2]|0)+48>>2];c:do if((c[k>>
;2]|0)>>>0<=(c[f>>2]|0)>>>0){if(!(c[h>>2]|0))while(1){c[m>>2]=(
c[k>>2]|0)+(c[e>>2]|0)&65535;b=c[k>>2]|0;if(c[m>>2]|0){a=12;break b}b=b+1|0;c[k>
;>2]=b;if(b>>>0>(c[f>>2]|0)>>>0)break c}c[g>>2]=(c[h>>2]|0
)+((c[k>>2]|0)-(c[(c[j>>2]|0)+40>>2]|0)<<1);do{c[g>>2]=(c[g>>2]|0)+2
;c[l>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+-2+1>
x3e;0]|0)&65535)<<0)&65535;if(c[l>>2]|0?(c[l>>2]=(c[l>>2]|0)+(c[e>>2
]|0)&65535,c[l>>2]|0):0){a=9;break b}b=(c[k>>2]|0)+1|0;c[k>>2]=b}while(b>>>0
x3c;=(c[f>>2]|0)>>>0)}while(0);if((qj(c[j>>2]|0,(c[(c[j>>2]|0)+36>>2]|0)+
1|0)|0)<0)break a;if((c[k>>2]|0)>>>0>=(c[(c[j>>2]|0)+40>>2]|0)>>
;>0)continue;c[k>>2]=c[(c[j>>2]|0)+40>>2]}if((a|0)==9){c[(c[j>>2]|0)+24>>
2]=c[k>>2];c[(c[j>>2]|0)+28>>2]=c[l>>2];i=n;return}else if((a|0)==12){c[(c[j>>
2]|0)+24>>2]=b;c[(c[j>>2]|0)+28>>2]=c[m>>2];i=n;return}}while(0);c[(c[j>>2]|0)+
24>>2]=-1;c[(c[j>>2]|0)+28>>2]=0;i=n;return}function sj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=b;if((c[c[f>>2]>>
;2]|0)>>>0>=65535){c[d>>2]=0;h=c[d>>2]|0;i=j;return h|0}a=c[e>>2]|0;do if(!(c[(
c[e>>2]|0)+20>>2]&1|0)){c[g>>2]=a;if((c[c[f>>2]>>2]|0)!=(c[(c[g>>
;2]|0)+24>>2]|0)){c[h>>2]=pj(c[e>>2]|0,c[f>>2]|0,1)|0;break}rj(c[g>>2]|0);c[h
x3e;>2]=c[(c[g>>2]|0)+28>>2];if(c[h>>2]|0)c[c[f>>2]>>2]=c[(c[g>>
;2]|0)+24>>2]}else c[h>>2]=oj(a,c[f>>2]|0,1)|0;while(0);c[d>>2]=c[h>>2];h=c[d
x3e;>2]|0;i=j;return h|0}function tj(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,D=0,E=0,F=0,G=0,H=0;H=i;i=i+112|0;n=H+104|0;o=H+100|0;B=H+96|0;x=H+92|0;g=H+88|0;m=H+84|0;j=H+80|0;f=
H+76|0;s=H+72|0;z=H+68|0;r=H+64|0;l=H+60|0;h=H+56|0;k=H+52|0;G=H+48|0;q=H+44|0;A=H+40|0;y=H+36|0;w=H+32|0;v=H+28|0;p=H+24|0;F=H+
20|0;D=H+16|0;C=H+12|0;E=H+8|0;t=H+4|0;u=H;c[n>>2]=b;c[o>>2]=e;c[B>>2]=(c[n>>2]|0)+2;c[B
>>2]=(c[B>>2]|0)+2;c[x>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<<8|(d[(
c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[r>>2]=0;if((c[x>>2]|0)>
x3e;>0<16)sc(c[o>>2]|0,8);if(((c[n>>2]|0)+(c[x>>2]|0)|0)>>>0>(c[(c[o
>>2]|0)+4>>2]|0)>>>0){if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=
1)sc(c[o>>2]|0,8);c[x>>2]=(c[(c[o>>2]|0)+4>>2]|0)-(c[n>>2]|0)}c[B>>2
]=(c[n>>2]|0)+6;c[B>>2]=(c[B>>2]|0)+2;c[z>>2]=((d[(c[B>>2]|0)+-2>>0]
x26;65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if((c[(c[o>>2
]|0)+8>>2]|0)>>>0>=2?c[z>>2]&1|0:0)sc(c[o>>2]|0,8);c[z>>2]=((c[
z>>2]|0)>>>0)/2|0;if((c[x>>2]|0)>>>0<(16+(c[z>>2]<<1
x3c;<2)|0)>>>0)sc(c[o>>2]|0,8);do if((c[(c[o>>2]|0)+8>>2]|0)>>>
0>=2){c[B>>2]=(c[B>>2]|0)+2;c[l>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<
;<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[B>>2]=(c[B>>2]|0
)+2;c[h>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<<8|(d[(c[B>>2]|0)+-2+1>>
;0]&65535)<<0)&65535;c[B>>2]=(c[B>>2]|0)+2;c[k>>2]=((d[(c[B>>2]|0)+-
2>>0]&65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if((c[
l>>2]|c[k>>2])&1|0)sc(c[o>>2]|0,8);c[l>>2]=((c[l>>2]|0)>>>
0)/2|0;c[k>>2]=((c[k>>2]|0)>>>0)/2|0;if((((c[l>>2]|0)>>>0<=(c[z
>>2]|0)>>>0?c[l>>2]<<1>>>0>=(c[z>>2]|0)>>
x3e;0:0)?((c[l>>2]|0)+(c[k>>2]|0)|0)==(c[z>>2]|0):0)?(c[l>>2]|0)==(1<<c[h>
;>2]|0):0)break;sc(c[o>>2]|0,8)}while(0);c[g>>2]=(c[n>>2]|0)+14;c[m>>2]=(c[n>
x3e;2]|0)+16+(c[z>>2]<<1);c[f>>2]=(c[m>>2]|0)+(c[z>>2]<<1);c[j>
x3e;2]=(c[f>>2]|0)+(c[z>>2]<<1);c[s>>2]=(c[j>>2]|0)+(c[z>>2]<
x3c;1);if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=2?(c[B>>2]=(c[g>>2]|0)+((c[z
x3e;>2]|0)-1<<1),(((d[c[B>>2]>>0]&65535)<<8|(d[(c[B>>2]|0)+1>
x3e;0]&65535)<<0)&65535|0)!=65535):0)sc(c[o>>2]|0,8);c[w>>2]=0;c[v>>2]=0;c[F
x3e;>2]=c[m>>2];c[D>>2]=c[g>>2];c[C>>2]=c[f>>2];c[E>>2]=c[j>
;>2];c[y>>2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[z>>2]|0)>>>
0)break;c[B>>2]=c[E>>2];c[F>>2]=(c[F>>2]|0)+2;c[G>>2]=((d[(c[F>>2]|0
)+-2>>0]&65535)<<8|(d[(c[F>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[D
>>2]=(c[D>>2]|0)+2;c[q>>2]=((d[(c[D>>2]|0)+-2>>0]&65535)<<8|(d[(
c[D>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+2;c[p>
x3e;2]=((a[(c[C>>2]|0)+-2>>0]<<16>>16<<8|d[(c[C>>2]|0)+-2+1>>
;0]<<0)&65535)<<16>>16;c[E>>2]=(c[E>>2]|0)+2;c[A>>2]=((d[(c[E
x3e;>2]|0)+-2>>0]&65535)<<8|(d[(c[E>>2]|0)+-2+1>>0]&65535)<<0)
x26;65535;if((c[G>>2]|0)>>>0>(c[q>>2]|0)>>>0)sc(c[o>>2]|0,8);do
if((c[y>>2]|0)>>>0>0?(c[G>>2]|0)>>>0<=(c[v>>2]|0)>
x3e;>0:0){if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=1){sc(c[o>>2]|0,8);break}if((c[
w>>2]|0)>>>0<=(c[G>>2]|0)>>>0?(c[v>>2]|0)>>>0<
;=(c[q>>2]|0)>>>0:0){c[r>>2]=c[r>>2]|2;break}c[r>>2]=c[r>>2]|1}
while(0);f=c[A>>2]|0;a:do if((c[A>>2]|0)!=0&(c[A>>2]|0)!=65535){c[B>>2]=(c[B>
x3e;2]|0)+f;do if((c[(c[o>>2]|0)+8>>2]|0)>>>0<1){if(!(((c[G>>2]|0)==65535?(c[y
>>2]|0)==((c[z>>2]|0)-1|0):0)&(c[q>>2]|0)==65535)){if((c[B>>2]|0)>>>
0>=(c[s>>2]|0)>>>0?((c[B>>2]|0)+((c[q>>2]|0)-(c[G>>2]|0)+1<<
;1)|0)>>>0<=(c[(c[o>>2]|0)+4>>2]|0)>>>0:0)break;sc(c[o>>2]|0,8)}}
else{if((c[B>>2]|0)>>>0>=(c[s>>2]|0)>>>0?((c[B>>2]|0)+((c[q>
;>2]|0)-(c[G>>2]|0)+1<<1)|0)>>>0<=((c[n>>2]|0)+(c[x>>2]|0)|0)
x3e;>>0:0)break;sc(c[o>>2]|0,8)}while(0);if((c[(c[o>>2]|0)+8>>2]|0)>>>0
x3e;=1){c[t>>2]=c[G>>2];while(1){if((c[t>>2]|0)>>>0>=(c[q>>2]|0)>
;>>0)break a;c[B>>2]=(c[B>>2]|0)+2;c[u>>2]=((d[(c[B>>2]|0)+-2>>0]&
;65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if(c[u>>2]|0?(c[
u>>2]=(c[u>>2]|0)+(c[p>>2]|0)&65535,(c[u>>2]|0)>>>0>=(c[(c[o>
;>2]|0)+172>>2]|0)>>>0):0)sc(c[o>>2]|0,16);c[t>>2]=(c[t>>2]|0)+1}}}else
if((f|0)==65535){if((c[(c[o>>2]|0)+8>>2]|0)>>>0<2?((c[G>>2]|0)==65535?(c[y>
;>2]|0)==((c[z>>2]|0)-1|0):0)&(c[q>>2]|0)==65535:0)break;sc(c[o>>2]|0,8)}while(0);c[w>
;>2]=c[G>>2];c[v>>2]=c[q>>2];c[y>>2]=(c[y>>2]|0)+1}i=H;return c[r>
x3e;2]|0}function uj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=
b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=4;c[c[f>>2]
x3e;>2]=(((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&
65535)<<0)&65535;i=e;return 0}function vj(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;h=i;i=i+32|0;n
=h+28|0;l=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;k=h+8|0;j=h+4|0;e=h;c[n>>2]=a;c[l>>2]=b;c[m>>2]=c[(c[n
>>2]|0)+16>>2];c[g>>2]=0;c[f>>2]=(c[m>>2]|0)+6;c[f>>2]=(c[f>>
;2]|0)+2;c[k>>2]=(((d[(c[f>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+-2+
1>>0]|0)&65535)<<0)&65535;c[f>>2]=(c[f>>2]|0)+2;c[j>>2]=(((d[(c[f>
;>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+-2+1>>0]|0)&65535)<<
;0)&65535;c[e>>2]=(c[l>>2]|0)-(c[k>>2]|0);if((c[e>>2]|0)>>>0>=(
c[j>>2]|0)>>>0){n=c[g>>2]|0;i=h;return n|0}c[f>>2]=(c[f>>2]|0)+(c[e>
x3e;2]<<1);c[g>>2]=(((d[c[f>>2]>>0]|0)&65535)<<8|((d[(c[f>>2]|0
)+1>>0]|0)&65535)<<0)&65535;n=c[g>>2]|0;i=h;return n|0}function wj(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;o=i;i=i+48|0;q=o+36|0;f=o+32|0;p=o+28|0;m=o+24|0;g=o+20|0;j=o+16|0;l=o+12|0;e=o+
8|0;h=o+4|0;k=o;c[q>>2]=a;c[f>>2]=b;c[p>>2]=c[(c[q>>2]|0)+16>>2];c[m>>
;2]=0;c[g>>2]=(c[c[f>>2]>>2]|0)+1;c[j>>2]=0;c[l>>2]=(c[p>>2]|0)+6;c[
l>>2]=(c[l>>2]|0)+2;c[e>>2]=(((d[(c[l>>2]|0)+-2>>0]|0)&65535)<<
8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[l>>2]=(c[l>>2]|0)+2
;c[h>>2]=(((d[(c[l>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>
x3e;0]|0)&65535)<<0)&65535;if((c[g>>2]|0)>>>0>=65536){p=c[m>>2]|0;q=
c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}if((c[g>>2]|0)>>>0<(c
[e>>2]|0)>>>0)c[g>>2]=c[e>>2];c[k>>2]=(c[g>>2]|0)-(c[e>>
;2]|0);c[l>>2]=(c[l>>2]|0)+(c[k>>2]<<1);while(1){if((c[k>>2]|0)>>>
;0>=(c[h>>2]|0)>>>0){n=9;break}c[l>>2]=(c[l>>2]|0)+2;c[j>>2]=(((d[(c
[l>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<
;<0)&65535;a=c[g>>2]|0;if(c[j>>2]|0)break;c[g>>2]=a+1;c[k>>2]=(c[k>>
2]|0)+1}if((n|0)==9){p=c[m>>2]|0;q=c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}c[m>
;>2]=a;p=c[m>>2]|0;q=c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}function xj(a,b
){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;k=l+12|0;j=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[
f>>2]=b;if(((c[e>>2]|0)+10|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>
;>0)sc(c[f>>2]|0,8);c[k>>2]=(c[e>>2]|0)+2;c[k>>2]=(c[k>>2]|0)+2;c[j>
x3e;2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)
x26;65535)<<0)&65535;c[k>>2]=(c[e>>2]|0)+8;c[k>>2]=(c[k>>2]|0)+2;c[g>
;>2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0
)&65535)<<0)&65535;if(!(((c[e>>2]|0)+(c[j>>2]|0)|0)>>>0<=(c[(c[f>
;>2]|0)+4>>2]|0)>>>0?(c[j>>2]|0)>>>0>=(10+(c[g>>2]<
x3c;1)|0)>>>0:0))sc(c[f>>2]|0,8);if(!((c[g>>2]|0)>>>0>0?(c[(c[f>>
;2]|0)+8>>2]|0)>>>0>=1:0)){i=l;return 0}do{c[k>>2]=(c[k>>2]|0)+2;c[h>>
;2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)&
;65535)<<0)&65535;if((c[h>>2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)
x3e;>>0)sc(c[f>>2]|0,16);c[g>>2]=(c[g>>2]|0)+-1}while((c[g>>2]|0)>>
x3e;0>0);i=l;return 0}function yj(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;f=e+4|0;g=e;c[h>>2]=a
;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=6;
c[c[f>>2]>>2]=(((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1
x3e;>0]|0)&65535)<<0)&65535;i=e;return 0}function zj(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;m=i;i=i+48|0;o=m+32|0;h=m+28|0;n=m+24|0;j=m+20|0;g=m+16|0;f=m+12|0;k=m+8|0;e=m+4|0;l=m;c[o>>2]=a;c[h>
x3e;2]=b;c[n>>2]=c[(c[o>>2]|0)+16>>2];c[j>>2]=0;c[g>>2]=(c[n>>2]|0)+
8204;c[g>>2]=(c[g>>2]|0)+4;c[f>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(
c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>
;>2]|0)+-4+3>>0]|0)<<0;while(1){if((c[f>>2]|0)>>>0<=0){b=7;break}c[g>
;>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>
;2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-
4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[e>>2]=(d[(c[g>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[l>
x3e;2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if((c[h
x3e;>2]|0)>>>0<(c[k>>2]|0)>>>0){b=7;break}if((c[h>>2]|0)>>
x3e;0<=(c[e>>2]|0)>>>0){b=5;break}c[f>>2]=(c[f>>2]|0)+-1}if((b|0)==5){c[j>
;>2]=(c[l>>2]|0)+(c[h>>2]|0)-(c[k>>2]|0);o=c[j>>2]|0;i=m;return o|0}else if((b|0)==
7){o=c[j>>2]|0;i=m;return o|0}return 0}function Aj(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;p=i;i=i+48|0;r=p+40|0;e=p+36|0;l=p+32|0;f=p+28|0;h=p+24|0;q=p+20|0;k=p+16|0;j=p+12|0;m=p+8|0;g=p+4|0;n=p;c[r>>2]=
a;c[e>>2]=b;c[l>>2]=0;c[f>>2]=(c[c[e>>2]>>2]|0)+1;c[h>>2]=0;c[q>
;>2]=c[(c[r>>2]|0)+16>>2];c[k>>2]=(c[q>>2]|0)+8204;c[k>>2]=(c[k>>
;2]|0)+4;c[j>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<
;<0;c[k>>2]=(c[q>>2]|0)+8208;while(1){if((c[j>>2]|0)>>>0<=0){o=9;break}c[
k>>2]=(c[k>>2]|0)+4;c[m>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>
;>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>
2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>2]|0)+4;c[g>>2]=(d[(c[k>>2]|0)+-4
>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>
x3e;0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>2]|0)+4;c[n
>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<
x3c;16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;if
((c[f>>2]|0)>>>0<(c[m>>2]|0)>>>0)c[f>>2]=c[m>>2];if((
c[f>>2]|0)>>>0<=(c[g>>2]|0)>>>0?(c[h>>2]=(c[f>>2]|0)-(
c[m>>2]|0)+(c[n>>2]|0),c[h>>2]|0):0)break;c[j>>2]=(c[j>>2]|0)+-1}if((o|0)==9){
q=c[l>>2]|0;r=c[e>>2]|0;c[r>>2]=q;r=c[h>>2]|0;i=p;return r|0}c[l>>2]=c[f>
x3e;2];q=c[l>>2]|0;r=c[e>>2]|0;c[r>>2]=q;r=c[h>>2]|0;i=p;return r|0}function Bj(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;t=i;i=i+64|0;e=t+52|0;f=t+48|0;q=t+44|0;k=t+40|0;m=t+36
|0;p=t+32|0;o=t+28|0;r=t+24|0;h=t+20|0;s=t+16|0;g=t+12|0;l=t+8|0;j=t+4|0;n=t;c[e>>2]=a;c[f>>2]=b;c[q>
x3e;2]=(c[e>>2]|0)+4;if(((c[e>>2]|0)+16+8192|0)>>>0>(c[(c[f>>2]|0)+4>>
;2]|0)>>>0)sc(c[f>>2]|0,8);c[q>>2]=(c[q>>2]|0)+4;c[m>>2]=(d[(c[q>>
;2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-
4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;if((c[m>>2]|0)>>
;>0<8208?1:(c[m>>2]|0)>>>0>((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>
2]|0)|0)>>>0)sc(c[f>>2]|0,8);c[k>>2]=(c[e>>2]|0)+12;c[q>>2]=(c[k>>
;2]|0)+8192;c[q>>2]=(c[q>>2]|0)+4;c[p>>2]=(d[(c[q>>2]|0)+-4>>0]|0)<<
24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(
c[q>>2]|0)+-4+3>>0]|0)<<0;if(((c[q>>2]|0)+((c[p>>2]|0)*12|0)|0)>>>
;0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[l>>2]=0;c[o>
x3e;2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[q>>
;2]=(c[q>>2]|0)+4;c[r>>2]=(d[(c[q>>2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3
x3e;>0]|0)<<0;c[q>>2]=(c[q>>2]|0)+4;c[h>>2]=(d[(c[q>>2]|0)+-4>>
0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;c[q>>2]=(c[q>>2]|0)+4;c[s>>
;2]=(d[(c[q>>2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(
c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;if((c[r>
;>2]|0)>>>0>(c[h>>2]|0)>>>0)sc(c[f>>2]|0,8);if((c[o>>2]|0)
x3e;>>0>0?(c[r>>2]|0)>>>0<=(c[l>>2]|0)>>>0:0)sc(c[f>
x3e;2]|0,8);a:do if((c[(c[f>>2]|0)+8>>2]|0)>>>0>=1){if(((c[s>>2]|0)+(c[h>
x3e;2]|0)-(c[r>>2]|0)|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)>>>0)sc(
c[f>>2]|0,16);c[g>>2]=(c[h>>2]|0)-(c[r>>2]|0)+1;if(c[r>>2]&-65536|0)while
(1){if((c[g>>2]|0)>>>0<=0)break a;c[j>>2]=(c[r>>2]|0)>>>16;c[n
x3e;>2]=c[r>>2]&65535;if(!((d[(c[k>>2]|0)+((c[j>>2]|0)>>>3)>>0]|
0)&128>>(c[j>>2]&7)))sc(c[f>>2]|0,8);if(!((d[(c[k>>2]|0)+((c[n>>2]|0
)>>>3)>>0]|0)&128>>(c[n>>2]&7)))sc(c[f>>2]|0,8);c[g>>
2]=(c[g>>2]|0)+-1;c[r>>2]=(c[r>>2]|0)+1}else{if(c[h>>2]&-65536|0)sc(c[f>>
2]|0,8);while(1){if((c[g>>2]|0)>>>0<=0)break a;c[n>>2]=c[r>>2]&65535;if((
d[(c[k>>2]|0)+((c[n>>2]|0)>>>3)>>0]|0)&128>>(c[n>>2]&
7)|0)sc(c[f>>2]|0,8);c[g>>2]=(c[g>>2]|0)+-1;c[r>>2]=(c[r>>2]|0)+1}}}while(0);c
[l>>2]=c[h>>2];c[o>>2]=(c[o>>2]|0)+1}i=t;return 0}function Cj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16
>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=8;c[c[f>>2]>>2]=(d[c[g>>2]>>
0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>>0]|0)<
x3c;8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function Dj(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;h=i;i=i+32|0;n=h+28|0;l=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;k=h+8|0;j=h+4|0;e=h;c[n>>2]=a;c[l>>
;2]=b;c[m>>2]=c[(c[n>>2]|0)+16>>2];c[g>>2]=0;c[f>>2]=(c[m>>2]|0)+12;
c[f>>2]=(c[f>>2]|0)+4;c[k>>2]=(d[(c[f>>2]|0)+-4>>0]|0)<<24|(d[(c[f
x3e;>2]|0)+-4+1>>0]|0)<<16|(d[(c[f>>2]|0)+-4+2>>0]|0)<<8|(d[(c[f>>
;2]|0)+-4+3>>0]|0)<<0;c[f>>2]=(c[f>>2]|0)+4;c[j>>2]=(d[(c[f>>2]|0)+-
4>>0]|0)<<24|(d[(c[f>>2]|0)+-4+1>>0]|0)<<16|(d[(c[f>>2]|0)+-4+2>
;>0]|0)<<8|(d[(c[f>>2]|0)+-4+3>>0]|0)<<0;c[e>>2]=(c[l>>2]|0)-(c
[k>>2]|0);if((c[e>>2]|0)>>>0>=(c[j>>2]|0)>>>0){n=c[g>>
;2]|0;i=h;return n|0}c[f>>2]=(c[f>>2]|0)+(c[e>>2]<<1);c[g>>2]=(((d[c[f>
x3e;2]>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+1>>0]|0)&65535)<<0)&65535
;n=c[g>>2]|0;i=h;return n|0}function Ej(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;m=i;i=i+48|0;o=m+
32|0;j=m+28|0;n=m+24|0;k=m+20|0;l=m+16|0;g=m+12|0;h=m+8|0;e=m+4|0;f=m;c[o>>2]=a;c[j>>2]=b;c[n>>2]=
c[(c[o>>2]|0)+16>>2];c[k>>2]=(c[c[j>>2]>>2]|0)+1;c[l>>2]=0;c[g>
x3e;2]=(c[n>>2]|0)+12;c[g>>2]=(c[g>>2]|0)+4;c[h>>2]=(d[(c[g>>2]|0)+-4>>
;0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[e>>
;2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(
c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if((c[k>
;>2]|0)>>>0<(c[h>>2]|0)>>>0)c[k>>2]=c[h>>2];c[f>>
;2]=(c[k>>2]|0)-(c[h>>2]|0);c[g>>2]=(c[g>>2]|0)+(c[f>>2]<<1);while(1
){if((c[f>>2]|0)>>>0>=(c[e>>2]|0)>>>0){a=7;break}c[g>>2]=(c[g
x3e;>2]|0)+2;c[l>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[g>>
2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if(c[l>>2]|0){a=7;break}c[k>>2]=(c[k>
x3e;2]|0)+1;c[f>>2]=(c[f>>2]|0)+1}if((a|0)==7){c[c[j>>2]>>2]=c[k>>2];i=m;return
c[l>>2]|0}return 0}function Fj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;k=l+12
|0;j=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[f>>2]=b;c[k>>2]=(c[e>>2]|0)+4;if(((c[e>>2]|
0)+20|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[k>
;>2]=(c[k>>2]|0)+4;c[j>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>
;2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-
4+3>>0]|0)<<0;c[k>>2]=(c[e>>2]|0)+16;c[k>>2]=(c[k>>2]|0)+4;c[g>
x3e;2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;if(!((c[j
>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>2]|0)|0)>>>
;0?(c[j>>2]|0)>>>0>=(20+(c[g>>2]<<1)|0)>>>0:0))sc(c[f>>
;2]|0,8);if(!((c[g>>2]|0)>>>0>0?(c[(c[f>>2]|0)+8>>2]|0)>>>0>
;=1:0)){i=l;return 0}do{c[k>>2]=(c[k>>2]|0)+2;c[h>>2]=(((d[(c[k>>2]|0)+-2>>0]|
0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c[h>
x3e;2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)>>>0)sc(c[f>>2]|0,16);c
[g>>2]=(c[g>>2]|0)+-1}while((c[g>>2]|0)>>>0>0);i=l;return 0}function Gj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[
h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=10;c[c[f>>2]>>2]=(d[c[g>
;>2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>
;>0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function Hj(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;c[(c[g>>2]|0)+16>>2]=c[h>
x3e;2];c[h>>2]=(c[h>>2]|0)+12;c[(c[g>>2]|0)+40>>2]=(d[c[h>>2]>>0]|0)
x3c;<24|(d[(c[h>>2]|0)+1>>0]|0)<<16|(d[(c[h>>2]|0)+2>>0]|0)<<8|(
d[(c[h>>2]|0)+3>>0]|0)<<0;a[(c[g>>2]|0)+24>>0]=0;i=f;return 0}function Ij(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=Jj(c[f>>2]|0,e,0)|0;i=d
;return a|0}function Jj(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;x=i;i=i
+64|0;g=x+52|0;h=x+48|0;j=x+44|0;k=x+56|0;o=x+40|0;t=x+36|0;s=x+32|0;l=x+28|0;u=x+24|0;n=x+20|0;v=x+16|0;p=x+12|0;r=x+8|0;q=x+4|
0;m=x;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;c[o>>2]=0;c[t>>2]=(c[(c[h>>2]|0)+
16>>2]|0)+12;c[s>>2]=d[c[t>>2]>>0]<<24|d[(c[t>>2]|0)+1>>0]
x3c;<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t>>2]|0)+3>>0]<<0;c[l>
x3e;2]=c[c[j>>2]>>2];if(!(c[s>>2]|0)){c[g>>2]=0;w=c[g>>2]|0;i=x;return w|0}c[q
>>2]=c[s>>2];c[n>>2]=-1;if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1;c[r>
x3e;2]=0;c[p>>2]=c[s>>2];while(1){if((c[r>>2]|0)>>>0>=(c[p>>2]|0)>
;>>0)break;c[q>>2]=((c[r>>2]|0)+(c[p>>2]|0)|0)>>>1;c[t>>2]=(c[(
c[h>>2]|0)+16>>2]|0)+16+((c[q>>2]|0)*12|0);c[t>>2]=(c[t>>2]|0)+4;c[u>>
;2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>>2]|0)+-4+1>>0]<<16|d[(c[t>
x3e;2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4+3>>0]<<0;c[t>>2]=(c[t>
x3e;2]|0)+4;c[n>>2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>>2]|0)+-4+1>>0]
x3c;<16|d[(c[t>>2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4+3>>0]<<0;if((
c[l>>2]|0)>>>0<(c[u>>2]|0)>>>0){c[p>>2]=c[q>>2];continue
}if((c[l>>2]|0)>>>0<=(c[n>>2]|0)>>>0){w=11;break}c[r>>2]=(c[q
x3e;>2]|0)+1}if((w|0)==11){c[v>>2]=d[c[t>>2]>>0]<<24|d[(c[t>>2]|0)+1>
;>0]<<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t>>2]|0)+3>>0]<<
0;c[o>>2]=(c[v>>2]|0)+(c[l>>2]|0)-(c[u>>2]|0)}if(a[k>>0]|0){c[m>>2]=
c[h>>2];if((c[l>>2]|0)>>>0>(c[n>>2]|0)>>>0?(c[q>>2]=(
c[q>>2]|0)+1,(c[q>>2]|0)==(c[s>>2]|0)):0){c[g>>2]=0;w=c[g>>2]|0;i=x;return w|0
}a[(c[m>>2]|0)+24>>0]=1;c[(c[m>>2]|0)+28>>2]=c[l>>2];c[(c[m>>2]|0)+36
>>2]=c[q>>2];if(!(c[o>>2]|0)){Kj(c[m>>2]|0);if(a[(c[m>>2]|0)+24>>0]|
0)c[o>>2]=c[(c[m>>2]|0)+32>>2]}else c[(c[m>>2]|0)+32>>2]=c[o>>2];if(
c[o>>2]|0)c[c[j>>2]>>2]=c[(c[m>>2]|0)+28>>2]}c[g>>2]=c[o>>
2];w=c[g>>2]|0;i=x;return w|0}function Kj(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;e=n+28|0;k=n+24
|0;l=n+20|0;g=n+16|0;m=n+12|0;f=n+8|0;j=n+4|0;h=n;c[e>>2]=b;a:do if((c[(c[e>>2]|0)+28>>2]|0)>
x3e;>0<4294967295){c[f>>2]=(c[(c[e>>2]|0)+28>>2]|0)+1;c[j>>2]=c[(c[e>>
;2]|0)+36>>2];c[j>>2]=c[(c[e>>2]|0)+36>>2];b:while(1){if((c[j>>2]|0)>>
;>0>=(c[(c[e>>2]|0)+40>>2]|0)>>>0)break a;c[k>>2]=(c[(c[e>>2]|0
)+16>>2]|0)+16+((c[j>>2]|0)*12|0);c[k>>2]=(c[k>>2]|0)+4;c[l>>2]=(d[(c[k>
x3e;2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0
)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>
;2]|0)+4;c[g>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<
;<0;c[m>>2]=(d[c[k>>2]>>0]|0)<<24|(d[(c[k>>2]|0)+1>>0]|0)<
x3c;16|(d[(c[k>>2]|0)+2>>0]|0)<<8|(d[(c[k>>2]|0)+3>>0]|0)<<0;if((c[f
>>2]|0)>>>0<(c[l>>2]|0)>>>0)c[f>>2]=c[l>>2];while(1){
if((c[f>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[h>>2]=(c[m>>
;2]|0)+(c[f>>2]|0)-(c[l>>2]|0);b=c[f>>2]|0;if(c[h>>2]|0)break b;c[f>>2]=b+1}c[
j>>2]=(c[j>>2]|0)+1}c[(c[e>>2]|0)+28>>2]=b;c[(c[e>>2]|0)+32>>2]=c[h
x3e;>2];c[(c[e>>2]|0)+36>>2]=c[j>>2];i=n;return}while(0);a[(c[e>>2]|0)+24>>
;0]=0;i=n;return}function Lj(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m
;c[g>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];if((c[(c[j>>2]|0)+28>>2]|0)>
;>>0>=4294967295){c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}do if(d[(c[j>>2]|0)+24>
x3e;0]|0?(c[(c[j>>2]|0)+28>>2]|0)==(c[c[h>>2]>>2]|0):0){Kj(c[j>>2]|0);if(!(a[(
c[j>>2]|0)+24>>0]|0)){c[k>>2]=0;break}c[k>>2]=c[(c[j>>2]|0)+32>>2];if
(c[k>>2]|0)c[c[h>>2]>>2]=c[(c[j>>2]|0)+28>>2]}else l=9;while(0);if((l|0)==9)c[
k>>2]=Jj(c[g>>2]|0,c[h>>2]|0,1)|0;c[f>>2]=c[k>>2];l=c[f>>2]|0;i=m;return
l|0}function Mj(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0;m=p+28|0;j=p+24
|0;l=p+20|0;k=p+16|0;n=p+12|0;g=p+8|0;o=p+4|0;h=p;c[e>>2]=a;c[f>>2]=b;if(((c[e>>2]|0)+16|0)>
x3e;>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[m>>2]=(c[e
>>2]|0)+4;c[m>>2]=(c[m>>2]|0)+4;c[j>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<
;<24|(d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<
;8|(d[(c[m>>2]|0)+-4+3>>0]|0)<<0;c[m>>2]=(c[e>>2]|0)+12;c[m>>2]=(c[m
>>2]|0)+4;c[l>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1
x3e;>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>
;0]|0)<<0;if(!((c[j>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>
x3e;2]|0)|0)>>>0?(c[j>>2]|0)>>>0>=(16+((c[l>>2]|0)*12|0)|0)>>
x3e;0:0))sc(c[f>>2]|0,8);c[h>>2]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0
x3e;=(c[l>>2]|0)>>>0)break;c[m>>2]=(c[m>>2]|0)+4;c[n>>2]=(d[(c[m>>
;2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-
4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>0]|0)<<0;c[m>>2]=(c[m>>
2]|0)+4;c[g>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1>>0]|
0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>0]|0)<
;<0;c[m>>2]=(c[m>>2]|0)+4;c[o>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(
d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m
x3e;>2]|0)+-4+3>>0]|0)<<0;if((c[n>>2]|0)>>>0>(c[g>>2]|0)>
x3e;>0)sc(c[f>>2]|0,8);if((c[k>>2]|0)>>>0>0?(c[n>>2]|0)>>>
0<=(c[h>>2]|0)>>>0:0)sc(c[f>>2]|0,8);if((c[(c[f>>2]|0)+8>>2]|0)>
;>>0>=1?((c[o>>2]|0)+(c[g>>2]|0)-(c[n>>2]|0)|0)>>>0>=(c[(c[f>
;>2]|0)+172>>2]|0)>>>0:0)sc(c[f>>2]|0,16);c[h>>2]=c[g>>2];c[k>
x3e;2]=(c[k>>2]|0)+1}i=p;return 0}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;h=e+8|0;f=e+4|0;g=e;c[
h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4
>>2]=12;c[c[f>>2]>>2]=(d[c[g>>2]>>0]|0)<<24|(d[(c[g>>2]|0)+
1>>0]|0)<<16|(d[(c[g>>2]|0)+2>>0]|0)<<8|(d[(c[g>>2]|0)+3>>
0]|0)<<0;i=e;return 0}function Oj(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;c[(c[g>>2]|0)+16>>2]=c[h>>2];c[h>>2]=(c[h>>2]|0)+12;c[(c[g>
x3e;2]|0)+40>>2]=(d[c[h>>2]>>0]|0)<<24|(d[(c[h>>2]|0)+1>>0]|0)<
x3c;16|(d[(c[h>>2]|0)+2>>0]|0)<<8|(d[(c[h>>2]|0)+3>>0]|0)<<0;a[(c[g
x3e;>2]|0)+24>>0]=0;i=f;return 0}function Pj(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>
x3e;2]=a;c[e>>2]=b;a=Qj(c[f>>2]|0,e,0)|0;i=d;return a|0}function Qj(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;w=i;i=i+64|0;g=w+48|0;h=w+44|0;j=w+40|0;k=w+52|0;o=w+36|0;t=w+32|0;s=w+28|0
;l=w+24|0;u=w+20|0;n=w+16|0;p=w+12|0;r=w+8|0;q=w+4|0;m=w;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;c[o>
x3e;2]=0;c[t>>2]=(c[(c[h>>2]|0)+16>>2]|0)+12;c[s>>2]=d[c[t>>2]>>0]
x3c;<24|d[(c[t>>2]|0)+1>>0]<<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t
x3e;>2]|0)+3>>0]<<0;c[l>>2]=c[c[j>>2]>>2];if(!(c[s>>2]|0)){c[g
x3e;>2]=0;v=c[g>>2]|0;i=w;return v|0}c[q>>2]=c[s>>2];c[n>>2]=-1;if(a[k>>0
]|0)c[l>>2]=(c[l>>2]|0)+1;c[r>>2]=0;c[p>>2]=c[s>>2];while(1){if((c[r>>
;2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[q>>2]=((c[r>>2]|0)+(c[p>
;>2]|0)|0)>>>1;c[t>>2]=(c[(c[h>>2]|0)+16>>2]|0)+16+((c[q>>2]|0)*12|0
);c[t>>2]=(c[t>>2]|0)+4;c[u>>2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>
;>2]|0)+-4+1>>0]<<16|d[(c[t>>2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4
+3>>0]<<0;c[t>>2]=(c[t>>2]|0)+4;c[n>>2]=d[(c[t>>2]|0)+-4>>
0]<<24|d[(c[t>>2]|0)+-4+1>>0]<<16|d[(c[t>>2]|0)+-4+2>>0]<<
8|d[(c[t>>2]|0)+-4+3>>0]<<0;if((c[l>>2]|0)>>>0<(c[u>>2]|0)
x3e;>>0){c[p>>2]=c[q>>2];continue}if((c[l>>2]|0)>>>0<=(c[n>>
;2]|0)>>>0){v=11;break}c[r>>2]=(c[q>>2]|0)+1}if((v|0)==11)c[o>>2]=d[c[t>>
2]>>0]<<24|d[(c[t>>2]|0)+1>>0]<<16|d[(c[t>>2]|0)+2>>0]<
;<8|d[(c[t>>2]|0)+3>>0]<<0;if(a[k>>0]|0){c[m>>2]=c[h>>2];if((c[
l>>2]|0)>>>0>(c[n>>2]|0)>>>0?(c[q>>2]=(c[q>>2]|0)+1,(
c[q>>2]|0)==(c[s>>2]|0)):0){c[g>>2]=0;v=c[g>>2]|0;i=w;return v|0}a[(c[m>>2]|0)+
24>>0]=1;c[(c[m>>2]|0)+28>>2]=c[l>>2];c[(c[m>>2]|0)+36>>2]=c[q>
x3e;2];if(!(c[o>>2]|0)){Rj(c[m>>2]|0);if(a[(c[m>>2]|0)+24>>0]|0)c[o>>2]=c[(c[m
>>2]|0)+32>>2]}else c[(c[m>>2]|0)+32>>2]=c[o>>2];if(c[o>>2]|0)c[c[j
x3e;>2]>>2]=c[(c[m>>2]|0)+28>>2]}c[g>>2]=c[o>>2];v=c[g>>2]|0;i=
w;return v|0}function Rj(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;e=n+28|0;l=n+24|0;m=n+20|0;g=n+16|0;j=n+12
|0;f=n+8|0;k=n+4|0;h=n;c[e>>2]=b;a:do if((c[(c[e>>2]|0)+28>>2]|0)>>>0<4294967295
){c[f>>2]=(c[(c[e>>2]|0)+28>>2]|0)+1;c[k>>2]=c[(c[e>>2]|0)+36>>2];c[
k>>2]=c[(c[e>>2]|0)+36>>2];while(1){if((c[k>>2]|0)>>>0>=(c[(c[e>
;>2]|0)+40>>2]|0)>>>0)break a;c[l>>2]=(c[(c[e>>2]|0)+16>>2]|0)+16+((
c[k>>2]|0)*12|0);c[l>>2]=(c[l>>2]|0)+4;c[m>>2]=(d[(c[l>>2]|0)+-4>>0]|
0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)<
;<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;c[l>>2]=(c[l>>2]|0)+4;c[g>>2]=(
d[(c[l>>2]|0)+-4>>0]|0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l
x3e;>2]|0)+-4+2>>0]|0)<<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;c[j>>2]=(
d[c[l>>2]>>0]|0)<<24|(d[(c[l>>2]|0)+1>>0]|0)<<16|(d[(c[l>>
2]|0)+2>>0]|0)<<8|(d[(c[l>>2]|0)+3>>0]|0)<<0;if((c[f>>2]|0)>>
;>0<(c[m>>2]|0)>>>0)c[f>>2]=c[m>>2];if((c[f>>2]|0)>>
x3e;0<=(c[g>>2]|0)>>>0?(c[h>>2]=c[j>>2],c[h>>2]|0):0)break;c[k>
x3e;2]=(c[k>>2]|0)+1}c[(c[e>>2]|0)+28>>2]=c[f>>2];c[(c[e>>2]|0)+32>>
2]=c[h>>2];c[(c[e>>2]|0)+36>>2]=c[k>>2];i=n;return}while(0);a[(c[e>>2]|0)+24
x3e;>0]=0;i=n;return}function Sj(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;j=
m+4|0;k=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];if((c[(c[j>>2]|0)+28>>
2]|0)>>>0>=4294967295){c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}do if(d[(c[j>>2]|0
)+24>>0]|0?(c[(c[j>>2]|0)+28>>2]|0)==(c[c[h>>2]>>2]|0):0){Rj(c[j>>2]|
0);if(!(a[(c[j>>2]|0)+24>>0]|0)){c[k>>2]=0;break}c[k>>2]=c[(c[j>>2]|0)+32>
;>2];if(c[k>>2]|0)c[c[h>>2]>>2]=c[(c[j>>2]|0)+28>>2]}else l=9;while(0);if
((l|0)==9)c[k>>2]=Qj(c[g>>2]|0,c[h>>2]|0,1)|0;c[f>>2]=c[k>>2];l=c[f>>
;2]|0;i=m;return l|0}function Tj(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0
;n=p+28|0;k=p+24|0;m=p+20|0;l=p+16|0;o=p+12|0;g=p+8|0;h=p+4|0;j=p;c[e>>2]=a;c[f>>2]=b;if(((c[e>>2]|
0)+16|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[n>
;>2]=(c[e>>2]|0)+4;c[n>>2]=(c[n>>2]|0)+4;c[k>>2]=(d[(c[n>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;c[n>>2]=(c[e>>2]|0)+12;c[n>
x3e;2]=(c[n>>2]|0)+4;c[m>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4
+3>>0]|0)<<0;if(!((c[k>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0
)-(c[e>>2]|0)|0)>>>0?(c[k>>2]|0)>>>0>=(16+((c[m>>2]|0)*12|0)|0)
x3e;>>0:0))sc(c[f>>2]|0,8);c[j>>2]=0;c[l>>2]=0;while(1){if((c[l>>2]|0)>
x3e;>0>=(c[m>>2]|0)>>>0)break;c[n>>2]=(c[n>>2]|0)+4;c[o>>2]=(d[(
c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>
;>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;c[n>>2]=(c
[n>>2]|0)+4;c[g>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1
>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>
x3e;0]|0)<<0;c[n>>2]=(c[n>>2]|0)+4;c[h>>2]=(d[(c[n>>2]|0)+-4>>0]|0)
x3c;<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<
x3c;8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;if((c[o>>2]|0)>>>0>(c[g>>
;2]|0)>>>0)sc(c[f>>2]|0,8);if((c[l>>2]|0)>>>0>0?(c[o>>2]|0)>
;>>0<=(c[j>>2]|0)>>>0:0)sc(c[f>>2]|0,8);if((c[(c[f>>2]|0)+8>>
;2]|0)>>>0>=1?(c[h>>2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)
x3e;>>0:0)sc(c[f>>2]|0,16);c[j>>2]=c[g>>2];c[l>>2]=(c[l>>2]|0)+1}i=p
;return 0}function Uj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2
]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=13;c[c[f>>
;2]>>2]=(d[c[g>>2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(
d[(c[g>>2]|0)+2>>0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function
Vj(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;c[(c[f>>2]|0)+16
>>2]=c[g>>2];c[g>>2]=(c[g>>2]|0)+6;c[(c[f>>2]|0)+24>>2]=(d[c[g>
x3e;2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>
x3e;0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;c[(c[f>>2]|0)+28>>2]=0;c[(c[
f>>2]|0)+32>>2]=0;i=e;return 0}function Wj(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>
2]=a;c[d>>2]=c[(c[b>>2]|0)+36>>2];c[(c[b>>2]|0)+28>>2]=0;if(!(c[d>>2
]|0)){i=e;return}if(!(c[(c[b>>2]|0)+32>>2]|0)){i=e;return}Fb(c[d>>2]|0,c[(c[b>>2]|0)+32
x3e;>2]|0);c[(c[b>>2]|0)+32>>2]=0;i=e;return}function Xj(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[f>>2]=c[f>>2];c[e>>2]=c[e>>2];i=d;
return 0}function Yj(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[f>
x3e;2]=c[f>>2];c[c[e>>2]>>2]=0;i=d;return 0}function Zj(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;o=i;i=i+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;p=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a
;c[j>>2]=b;c[k>>2]=e;c[p>>2]=f;c[n>>2]=_j((c[(c[h>>2]|0)+16>>2]|0)+6
|0,c[p>>2]|0)|0;if(!(c[n>>2]|0)){c[g>>2]=0;p=c[g>>2]|0;i=o;return p|0}c[n>>2]=(
c[n>>2]|0)+4;c[l>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+
1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>
x3e;0]|0)<<0;c[m>>2]=(d[c[n>>2]>>0]|0)<<24|(d[(c[n>>2]|0)+1>>
;0]|0)<<16|(d[(c[n>>2]|0)+2>>0]|0)<<8|(d[(c[n>>2]|0)+3>>0]|0)<
x3c;0;if(c[l>>2]|0?$j((c[(c[h>>2]|0)+16>>2]|0)+(c[l>>2]|0)|0,c[k>>2]|0)|0:0){c
[g>>2]=Ya[c[(c[(c[j>>2]|0)+12>>2]|0)+12>>2]&127](c[j>>2]|0,c[k>>
;2]|0)|0;p=c[g>>2]|0;i=o;return p|0}if(c[m>>2]|0){c[g>>2]=ak((c[(c[h>>2]|0)+16>>
;2]|0)+(c[m>>2]|0)|0,c[k>>2]|0)|0;p=c[g>>2]|0;i=o;return p|0}else{c[g>>2]=0;p=c[g>
x3e;2]|0;i=o;return p|0}return 0}function _j(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;n=i;i=i+48|0;l=n+32|0;
e=n+28|0;f=n+24|0;o=n+20|0;g=n+16|0;j=n+12|0;h=n+8|0;m=n+4|0;k=n;c[e>>2]=a;c[f>>2]=b;c[o>>2]=(d[c[
e>>2]>>0]|0)<<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>>2]|0
)+2>>0]|0)<<8|(d[(c[e>>2]|0)+3>>0]|0)<<0;c[j>>2]=0;c[g>>2]=
c[o>>2];c[e>>2]=(c[e>>2]|0)+4;while(1){if((c[j>>2]|0)>>>0>=(c[g>
;>2]|0)>>>0){e=8;break}c[h>>2]=((c[j>>2]|0)+(c[g>>2]|0)|0)>>>1;
c[m>>2]=(c[e>>2]|0)+((c[h>>2]|0)*11|0);c[m>>2]=(c[m>>2]|0)+3;c[k>>2]=(
d[(c[m>>2]|0)+-3>>0]|0)<<16|(d[(c[m>>2]|0)+-3+1>>0]|0)<<8|(d[(c[m>
;>2]|0)+-3+2>>0]|0)<<0;if((c[f>>2]|0)>>>0<(c[k>>2]|0)>>
;>0){c[g>>2]=c[h>>2];continue}if((c[f>>2]|0)>>>0<=(c[k>>2]|0)
x3e;>>0){e=7;break}c[j>>2]=(c[h>>2]|0)+1}if((e|0)==7){c[l>>2]=c[m>>2];o=c[l>
;>2]|0;i=n;return o|0}else if((e|0)==8){c[l>>2]=0;o=c[l>>2]|0;i=n;return o|0}return 0}function $j(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;o=i;i=i+48|0;n=o+36|0;e=o+32|0;f=o+28|0;p=o+24|0;h=o+20|0;k=o+16|0;j
=o+12|0;l=o+8|0;m=o+4|0;g=o;c[e>>2]=a;c[f>>2]=b;c[p>>2]=(d[c[e>>2]>>0]|0)<
;<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>>2]|0)+2>>0]|0)<<8|(d[(
c[e>>2]|0)+3>>0]|0)<<0;c[k>>2]=0;c[h>>2]=c[p>>2];c[e>>2]=(
c[e>>2]|0)+4;while(1){if((c[k>>2]|0)>>>0>=(c[h>>2]|0)>>>0){e=8;
break}c[j>>2]=((c[k>>2]|0)+(c[h>>2]|0)|0)>>>1;c[l>>2]=(c[e>>2]|
0)+(c[j>>2]<<2);c[l>>2]=(c[l>>2]|0)+3;c[m>>2]=(d[(c[l>>2]|0)+-3>
;>0]|0)<<16|(d[(c[l>>2]|0)+-3+1>>0]|0)<<8|(d[(c[l>>2]|0)+-3+2>>
0]|0)<<0;p=c[l>>2]|0;c[l>>2]=p+1;c[g>>2]=d[p>>0];if((c[f>>2]|0)>
;>>0<(c[m>>2]|0)>>>0){c[h>>2]=c[j>>2];continue}if((c[f>>2]|
0)>>>0<=((c[m>>2]|0)+(c[g>>2]|0)|0)>>>0){e=7;break}c[k>>2]=(c[j
>>2]|0)+1}if((e|0)==7){c[n>>2]=1;p=c[n>>2]|0;i=o;return p|0}else if((e|0)==8){c[n>>2]=0;
p=c[n>>2]|0;i=o;return p|0}return 0}function ak(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;n=i;i=i+48
|0;l=n+32|0;e=n+28|0;f=n+24|0;o=n+20|0;g=n+16|0;j=n+12|0;h=n+8|0;m=n+4|0;k=n;c[e>>2]=a;c[f>>2]=b;c[o>
x3e;2]=(d[c[e>>2]>>0]|0)<<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>
;>2]|0)+2>>0]|0)<<8|(d[(c[e>>2]|0)+3>>0]|0)<<0;c[j>>2]=0;c[g>
;>2]=c[o>>2];c[e>>2]=(c[e>>2]|0)+4;while(1){if((c[j>>2]|0)>>>0>=(
c[g>>2]|0)>>>0){e=8;break}c[h>>2]=((c[j>>2]|0)+(c[g>>2]|0)|0)>>
x3e;1;c[m>>2]=(c[e>>2]|0)+((c[h>>2]|0)*5|0);c[m>>2]=(c[m>>2]|0)+3;c[k>>
;2]=(d[(c[m>>2]|0)+-3>>0]|0)<<16|(d[(c[m>>2]|0)+-3+1>>0]|0)<<8|(d[(c
[m>>2]|0)+-3+2>>0]|0)<<0;if((c[f>>2]|0)>>>0<(c[k>>2]|0)>
;>>0){c[g>>2]=c[h>>2];continue}if((c[f>>2]|0)>>>0<=(c[k>>2
]|0)>>>0){e=7;break}c[j>>2]=(c[h>>2]|0)+1}if((e|0)==7){c[l>>2]=(((d[c[m>>
2]>>0]|0)&65535)<<8|((d[(c[m>>2]|0)+1>>0]|0)&65535)<<0)&65535;o
=c[l>>2]|0;i=n;return o|0}else if((e|0)==8){c[l>>2]=0;o=c[l>>2]|0;i=n;return o|0}return 0}function
bk(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;m=i;i=i+32|0;f=m+24|0;g=m+20|0;h=m+16|0;n=m+12|0;l=m+8|0;j=m+4|
0;k=m;c[g>>2]=a;c[h>>2]=b;c[n>>2]=e;c[l>>2]=_j((c[(c[g>>2]|0)+16>>2]|
0)+6|0,c[n>>2]|0)|0;if(!(c[l>>2]|0)){c[f>>2]=-1;n=c[f>>2]|0;i=m;return n|0}c[l>>
;2]=(c[l>>2]|0)+4;c[j>>2]=(d[(c[l>>2]|0)+-4>>0]|0)<<24|(d[(c[l>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)<<8|(d[(c[l>>2]|0)+-4+3
x3e;>0]|0)<<0;c[l>>2]=(c[l>>2]|0)+4;c[k>>2]=(d[(c[l>>2]|0)+-4>>
0]|0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;if(c[j>>2]|0?$j((c[(c[g>>2]|0)+16>
;>2]|0)+(c[j>>2]|0)|0,c[h>>2]|0)|0:0){c[f>>2]=1;n=c[f>>2]|0;i=m;return n|0}if(c[k
x3e;>2]|0?ak((c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]|0)|0,c[h>>2]|0)|0:0){c[f>>
2]=0;n=c[f>>2]|0;i=m;return n|0}c[f>>2]=-1;n=c[f>>2]|0;i=m;return n|0}function ck(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;l=i;i=i+32|0;e=l+28|0;n=l+24|0;m=l+20|0;f=l+16|0;g=l+12|0;j=l+8|0;k=l+4|0;h=l;c[n>
x3e;2]=a;c[m>>2]=b;c[f>>2]=c[n>>2];c[g>>2]=c[(c[f>>2]|0)+24>>2];c[j
x3e;>2]=(c[(c[n>>2]|0)+16>>2]|0)+10;if(dk(c[f>>2]|0,(c[g>>2]|0)+1|0,c[m>>
2]|0)|0){c[e>>2]=0;n=c[e>>2]|0;i=l;return n|0}c[k>>2]=c[(c[f>>2]|0)+32>>2];c[h
>>2]=0;while(1){if((c[h>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[j
x3e;>2]=(c[j>>2]|0)+3;c[(c[k>>2]|0)+(c[h>>2]<<2)>>2]=(d[(c[j>>2
]|0)+-3>>0]|0)<<16|(d[(c[j>>2]|0)+-3+1>>0]|0)<<8|(d[(c[j>>2]|0)+-3+2
>>0]|0)<<0;c[j>>2]=(c[j>>2]|0)+8;c[h>>2]=(c[h>>2]|0)+1}c[(c[k>
x3e;2]|0)+(c[h>>2]<<2)>>2]=0;c[e>>2]=c[k>>2];n=c[e>>2]|0;i=l;return
n|0}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,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0
;j=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=c[(c[f>>2]|0)+28>>2];c[j
x3e;>2]=0;do if((c[g>>2]|0)>>>0>(c[(c[f>>2]|0)+28>>2]|0)>>>
;0){c[(c[f>>2]|0)+36>>2]=c[h>>2];k=hc(c[h>>2]|0,4,c[k>>2]|0,c[g>>2]|
0,c[(c[f>>2]|0)+32>>2]|0,j)|0;c[(c[f>>2]|0)+32>>2]=k;if(!(c[j>>2]|0)){c[(c[f
x3e;>2]|0)+28>>2]=c[g>>2];break}c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|
0}while(0);c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|0}function ek(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;q=i;i=i+48|0;f=q+40|0;g=q+36|0;r=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;n=q+16|0;o=q+12|
0;p=q+8|0;l=q+4|0;m=q;c[g>>2]=a;c[r>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];c[k>
x3e;2]=c[(c[j>>2]|0)+24>>2];c[n>>2]=(c[(c[g>>2]|0)+16>>2]|0)+10;if(dk(c[j>
;>2]|0,(c[k>>2]|0)+1|0,c[r>>2]|0)|0){c[f>>2]=0;r=c[f>>2]|0;i=q;return r|0}c[o>
x3e;2]=c[(c[j>>2]|0)+32>>2];while(1){if((c[k>>2]|0)>>>0<=0)break;c[n>>
;2]=(c[n>>2]|0)+3;c[p>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0
)+-3+1>>0]|0)<<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;c[n>>2]=(c[n>>
;2]|0)+4;c[l>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<
;<0;c[n>>2]=(c[n>>2]|0)+4;c[m>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(
d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n
x3e;>2]|0)+-4+3>>0]|0)<<0;if(c[l>>2]|0?$j((c[(c[g>>2]|0)+16>>2]|0)+(c[l
x3e;>2]|0)|0,c[h>>2]|0)|0:0)e=9;else e=7;if(((e|0)==7?(e=0,c[m>>2]|0):0)?ak((c[(c[g>>2]|0)+16
>>2]|0)+(c[m>>2]|0)|0,c[h>>2]|0)|0:0)e=9;if((e|0)==9){c[c[o>>2]>>2]=c[p>
x3e;2];c[o>>2]=(c[o>>2]|0)+4}c[k>>2]=(c[k>>2]|0)+-1}c[c[o>>2]>>2]=0;
c[f>>2]=c[(c[j>>2]|0)+32>>2];r=c[f>>2]|0;i=q;return r|0}function fk(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;y=i;i=i+80|0;f=y+72|0;g=y+68|0;h=y+64|0
;z=y+60|0;w=y+56|0;x=y+52|0;p=y+48|0;l=y+44|0;s=y+40|0;j=y+36|0;u=y+32|0;t=y+28|0;o=y+24|0;k=y+20|0;v=y+16|0;n=y+12|0;m=y+8|0;r=
y+4|0;q=y;c[g>>2]=a;c[h>>2]=b;c[z>>2]=e;c[w>>2]=_j((c[(c[g>>2]|0)+16>>
;2]|0)+6|0,c[z>>2]|0)|0;if(!(c[w>>2]|0)){c[f>>2]=0;z=c[f>>2]|0;i=y;return z|0}c[w>
x3e;2]=(c[w>>2]|0)+4;c[l>>2]=(d[(c[w>>2]|0)+-4>>0]|0)<<24|(d[(c[w>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|0)<<8|(d[(c[w>>2]|0)+-4
+3>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+4;c[s>>2]=(d[(c[w>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[w>>2]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[w>>2]|0)+-4+3>>0]|0)<<0;if((c[l>>2]|0)==0&(c[s>>2]|
0)==0){c[f>>2]=0;z=c[f>>2]|0;i=y;return z|0}if(!(c[l>>2]|0)){c[f>>2]=gk(c[g>>2
]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[s>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return
z|0}a=c[g>>2]|0;if(!(c[s>>2]|0)){c[f>>2]=hk(a,(c[(c[g>>2]|0)+16>>2]|0)+(c[l
x3e;>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return z|0}c[j>>2]=a;c[w>>2]=(c[(c[g>
;>2]|0)+16>>2]|0)+(c[s>>2]|0);c[n>>2]=(c[(c[g>>2]|0)+16>>2]|0)+(c[l>
x3e;2]|0);c[w>>2]=(c[w>>2]|0)+4;c[t>>2]=(d[(c[w>>2]|0)+-4>>0]|0)<<24
|(d[(c[w>>2]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|0)<<8|(d[(c[
w>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=ik(c[n>>2]|0)|0;c[n>>2]=(c[n>
x3e;2]|0)+4;c[u>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>
;0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)
x3c;<0;if(!(c[t>>2]|0)){c[f>>2]=hk(c[g>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[
l>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return z|0}if(!(c[k>>2]|0)){c[f>>2]=gk
(c[g>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[s>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>
;2]|0;i=y;return z|0}if(dk(c[j>>2]|0,(c[k>>2]|0)+(c[t>>2]|0)+1|0,c[h>>2]|0)|0){c[f>
x3e;2]=0;z=c[f>>2]|0;i=y;return z|0}c[x>>2]=c[(c[j>>2]|0)+32>>2];c[n>>2]=(c[n
x3e;>2]|0)+3;c[o>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>
;>0]|0)<<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+
1;c[k>>2]=d[z>>0];c[m>>2]=1;c[w>>2]=(c[w>>2]|0)+3;c[v>>2]=(d[(c[w>
;>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<<8|(d[(c[w>>2]|
0)+-3+2>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+2;c[r>>2]=1;c[p>>2]=0;while(1){
if((c[v>>2]|0)>>>0<=((c[o>>2]|0)+(c[k>>2]|0)|0)>>>0){if((c[v>
;>2]|0)>>>0<(c[o>>2]|0)>>>0){s=c[v>>2]|0;z=c[p>>2]|0;c[p
x3e;>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=s}c[r>>2]=(c[r>>2]|0)+1;if((c[r>
;>2]|0)>>>0>(c[t>>2]|0)>>>0)break;c[w>>2]=(c[w>>2]|0)+3;c[
v>>2]=(d[(c[w>>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<
x3c;8|(d[(c[w>>2]|0)+-3+2>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+2;continue}c[q>
x3e;2]=0;while(1){if((c[q>>2]|0)>>>0>(c[k>>2]|0)>>>0)break;s=(c[o>
x3e;2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>
;2]=s;c[q>>2]=(c[q>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1;if((c[m>>2]|0)>>
x3e;0>(c[u>>2]|0)>>>0)break;c[n>>2]=(c[n>>2]|0)+3;c[o>>2]=(d[(c[n>
;>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>>0]|0)<<8|(d[(c[n>>2]|
0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+1;c[k>>2]=d[z>>0]}a:do if((c
[r>>2]|0)>>>0>(c[t>>2]|0)>>>0){if((c[m>>2]|0)>>>
0<=(c[u>>2]|0)>>>0){c[q>>2]=0;while(1){if((c[q>>2]|0)>>>0>(
c[k>>2]|0)>>>0)break;w=(c[o>>2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>
;2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=w;c[q>>2]=(c[q>>2]|0)+1}while(1){if((c[m>
;>2]|0)>>>0>=(c[u>>2]|0)>>>0)break a;c[n>>2]=(c[n>>2]|0)+3
;c[o>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>>0]|0)<
;<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+1;c[k>>
2]=d[z>>0];c[q>>2]=0;while(1){if((c[q>>2]|0)>>>0>(c[k>>2]|0)>
x3e;>0)break;w=(c[o>>2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>
2]|0)+(z<<2)>>2]=w;c[q>>2]=(c[q>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1}}}else
{v=c[v>>2]|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=v;while
(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a;c[w>>2]=(c[w>
;>2]|0)+3;v=(d[(c[w>>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<
x3c;8|(d[(c[w>>2]|0)+-3+2>>0]|0)<<0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>
2]|0)+(z<<2)>>2]=v;c[w>>2]=(c[w>>2]|0)+2;c[r>>2]=(c[r>>2]|0)+1}}while
(0);c[(c[x>>2]|0)+(c[p>>2]<<2)>>2]=0;c[f>>2]=c[x>>2];z=c[f>>
;2]|0;i=y;return z|0}function gk(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;m=i;i=i+32|0;f=m+28|0;o=m+24|0
;g=m+20|0;n=m+16|0;h=m+12|0;k=m+8|0;j=m+4|0;l=m;c[o>>2]=a;c[g>>2]=b;c[n>>2]=e;c[h>>2]=c[
o>>2];c[g>>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<
x3c;24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(
d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if(dk(c[h>>2]|0,(c[k>>2]|0)+1|0,c[n>>2]|
0)|0){c[f>>2]=0;o=c[f>>2]|0;i=m;return o|0}c[l>>2]=c[(c[h>>2]|0)+32>>2];c[j>
;>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break;c[g>
x3e;2]=(c[g>>2]|0)+3;c[(c[l>>2]|0)+(c[j>>2]<<2)>>2]=(d[(c[g>>2]|0)+-
3>>0]|0)<<16|(d[(c[g>>2]|0)+-3+1>>0]|0)<<8|(d[(c[g>>2]|0)+-3+2>
x3e;0]|0)<<0;c[g>>2]=(c[g>>2]|0)+2;c[j>>2]=(c[j>>2]|0)+1}c[(c[l>>2]|
0)+(c[j>>2]<<2)>>2]=0;c[f>>2]=c[l>>2];o=c[f>>2]|0;i=m;return o|0}function
hk(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;n=i;i=i+48|0;f=n+32|0;p=n+28|0;g=n+24|0;o=n+20|0;h=n+16
|0;k=n+12|0;j=n+8|0;l=n+4|0;m=n;c[p>>2]=a;c[g>>2]=b;c[o>>2]=e;c[h>>2]=c[p>>2];
c[j>>2]=ik(c[g>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-
4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>
;>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if(dk(c[h>>2]|0,(c[j>>
2]|0)+1|0,c[o>>2]|0)|0){c[f>>2]=0;p=c[f>>2]|0;i=n;return p|0}c[l>>2]=c[(c[h>>2
]|0)+32>>2];while(1){if((c[k>>2]|0)>>>0<=0)break;c[g>>2]=(c[g>>2]|0)+
3;c[m>>2]=(d[(c[g>>2]|0)+-3>>0]|0)<<16|(d[(c[g>>2]|0)+-3+1>>0]|0)<
;<8|(d[(c[g>>2]|0)+-3+2>>0]|0)<<0;p=c[g>>2]|0;c[g>>2]=p+1;c[j>>
2]=(d[p>>0]|0)+1;do{c[c[l>>2]>>2]=c[m>>2];c[m>>2]=(c[m>>2]|0)+1;c[l
x3e;>2]=(c[l>>2]|0)+4;p=(c[j>>2]|0)+-1|0;c[j>>2]=p}while((p|0)!=0);c[k>>2]=(c[k>
;>2]|0)+-1}c[c[l>>2]>>2]=0;c[f>>2]=c[(c[h>>2]|0)+32>>2];p=c[f>>
2]|0;i=n;return p|0}function ik(a){a=a|0;var b=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+8|0;e=g+4|0;f=g;c[b>>2]=a;c[b>>
;2]=(c[b>>2]|0)+4;c[e>>2]=(d[(c[b>>2]|0)+-4>>0]|0)<<24|(d[(c[b>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[b>>2]|0)+-4+2>>0]|0)<<8|(d[(c[b>>2]|0)+-4+3
x3e;>0]|0)<<0;c[f>>2]=0;c[b>>2]=(c[b>>2]|0)+3;while(1){if((c[e>>2]|0)>
;>>0<=0)break;c[f>>2]=(c[f>>2]|0)+(1+(d[c[b>>2]>>0]|0));c[b>>2]=(
c[b>>2]|0)+4;c[e>>2]=(c[e>>2]|0)+-1}i=g;return c[f>>2]|0}function jk(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;B=i;i=i+96|0;e=B+84|0;f=B+80|0;y=B+
76|0;r=B+72|0;x=B+68|0;s=B+64|0;q=B+60|0;A=B+56|0;j=B+52|0;u=B+48|0;k=B+44|0;w=B+40|0;m=B+36|0;o=B+32|0;g=B+28|0;h=B+24|0;t=B+20
|0;v=B+16|0;n=B+12|0;p=B+8|0;z=B+4|0;l=B;c[e>>2]=a;c[f>>2]=b;c[y>>2]=(c[e>>2]|0)+2;c[y
x3e;>2]=(c[y>>2]|0)+4;c[r>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[y>
x3e;2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>>2]|
0)+-4+3>>0]|0)<<0;c[y>>2]=(c[y>>2]|0)+4;c[x>>2]=(d[(c[y>>2]|0)+-4>
;>0]|0)<<24|(d[(c[y>>2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>
;0]|0)<<8|(d[(c[y>>2]|0)+-4+3>>0]|0)<<0;if(!((c[r>>2]|0)>>>0<
;=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>2]|0)|0)>>>0?(c[r>>2]|0)>>>
;0>=(10+((c[x>>2]|0)*11|0)|0)>>>0:0))sc(c[f>>2]|0,8);c[q>>2]=1;c[s>>
2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[x>>2]|0)>>>0)break;c[y>>2]=(
c[y>>2]|0)+3;c[A>>2]=(d[(c[y>>2]|0)+-3>>0]|0)<<16|(d[(c[y>>2]|0)+-3+
1>>0]|0)<<8|(d[(c[y>>2]|0)+-3+2>>0]|0)<<0;c[y>>2]=(c[y>>2]|
0)+4;c[j>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[y>>2]|0)+-4+1>>0]|0)
x3c;<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>>2]|0)+-4+3>>0]|0)<<
;0;c[y>>2]=(c[y>>2]|0)+4;c[u>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[
y>>2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>
x3e;2]|0)+-4+3>>0]|0)<<0;if(!((c[j>>2]|0)>>>0<(c[r>>2]|0)>>
;>0?(c[u>>2]|0)>>>0<(c[r>>2]|0)>>>0:0))sc(c[f>>2]|0,8);if((
c[A>>2]|0)>>>0<(c[q>>2]|0)>>>0)sc(c[f>>2]|0,8);c[q>>2
]=(c[A>>2]|0)+1;a:do if(c[j>>2]|0){c[k>>2]=(c[e>>2]|0)+(c[j>>2]|0);c[k>
x3e;2]=(c[k>>2]|0)+4;c[w>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4
+3>>0]|0)<<0;c[o>>2]=0;if(((c[k>>2]|0)+(c[w>>2]<<2)|0)>>
x3e;0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[m>>2]=0;while(1){
if((c[m>>2]|0)>>>0>=(c[w>>2]|0)>>>0)break a;c[k>>2]=(c[k>
x3e;2]|0)+3;c[g>>2]=(d[(c[k>>2]|0)+-3>>0]|0)<<16|(d[(c[k>>2]|0)+-3+1>>
;0]|0)<<8|(d[(c[k>>2]|0)+-3+2>>0]|0)<<0;b=c[k>>2]|0;c[k>>2]=b+1;c[h
x3e;>2]=d[b>>0];if(((c[g>>2]|0)+(c[h>>2]|0)|0)>>>0>=1114112)sc(c[f>
x3e;2]|0,8);if((c[g>>2]|0)>>>0<(c[o>>2]|0)>>>0)sc(c[f>>2]|0,8);
c[o>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+1}}while(0);b:do if(c[u
x3e;>2]|0){c[t>>2]=(c[e>>2]|0)+(c[u>>2]|0);c[t>>2]=(c[t>>2]|0)+4;c[v>
;>2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16
|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-4+3>>0]|0)<<0;c[p>
;>2]=0;if(c[v>>2]<<2>>>0>((c[(c[f>>2]|0)+4>>2]|0)-(c[t>>
;2]|0)|0)>>>0)sc(c[f>>2]|0,8);c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0
x3e;=(c[v>>2]|0)>>>0)break b;c[t>>2]=(c[t>>2]|0)+3;c[z>>2]=(d[(c[t>
x3e;2]|0)+-3>>0]|0)<<16|(d[(c[t>>2]|0)+-3+1>>0]|0)<<8|(d[(c[t>>2]|0)+-
3+2>>0]|0)<<0;c[t>>2]=(c[t>>2]|0)+2;c[l>>2]=(((d[(c[t>>2]|0)+-2>
;>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c
[z>>2]|0)>>>0>=1114112)sc(c[f>>2]|0,8);if((c[z>>2]|0)>>>0<(
c[p>>2]|0)>>>0)sc(c[f>>2]|0,8);c[p>>2]=(c[z>>2]|0)+1;if((c[(c[f>>
;2]|0)+8>>2]|0)>>>0>=1?(c[l>>2]|0)>>>0>=(c[(c[f>>2]|0)+172
>>2]|0)>>>0:0)sc(c[f>>2]|0,16);c[n>>2]=(c[n>>2]|0)+1}}while(0);c[s>
x3e;2]=(c[s>>2]|0)+1}i=B;return 0}function kk(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[f>>2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=14;c[c[e>>2]>
;>2]=-1;i=d;return 0}function lk(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;m=k+20|0;l=k
+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[m>>2]=a;c[l>>2]=b;c[f>>2]=d;c[g>>2]=e;c[j>>
;2]=mk(c[m>>2]|0,c[l>>2]|0)|0;if(!(c[j>>2]|0)){c[h>>2]=142;m=c[h>>2]|0;i=k;return
m|0}if(c[g>>2]|0)c[c[g>>2]>>2]=c[(c[j>>2]|0)+12>>2];c[h>>2]=Kc(c[f
x3e;>2]|0,c[(c[j>>2]|0)+8>>2]|0)|0;m=c[h>>2]|0;i=k;return m|0}function mk(a,b){a=a|0;b=b|0;var
d=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;g=j+16|0;k=j+12|0;d=j+8|0;h=j+4|0;f=j;c[k>>2]=a;c[d>>2]=b;c[h>>
;2]=c[(c[k>>2]|0)+156>>2];c[f>>2]=(c[h>>2]|0)+((e[(c[k>>2]|0)+152>>1
]|0)<<4);while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>>0){d=7;break
}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)?c[(c[h>>2]|0)+12>>2]|0:0){d=5;break}c[h>
;>2]=(c[h>>2]|0)+16}if((d|0)==5){c[g>>2]=c[h>>2];k=c[g>>2]|0;i=j;return k|0}else if
((d|0)==7){c[g>>2]=0;k=c[g>>2]|0;i=j;return k|0}return 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,r=0,s=0;q=i;i=i+48|0;g=q+40|0;h=q+36|0;j=q+32|0;k=q+28|0;s=q+24|0;r=q+20|0;m=q+16|
0;n=q+12|0;p=q+8|0;o=q+4|0;l=q;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[s>>2]=e;c[r>>2]=
f;c[n>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+4>>2];c[s>>2]=c[s>>2];c[r>
x3e;2]=c[r>>2];c[p>>2]=c[(c[j>>2]|0)+532>>2];do if(!(c[p>>2]|0)){c[p>>
;2]=Ud(c[n>>2]|0,11340)|0;if(c[p>>2]|0){c[(c[j>>2]|0)+532>>2]=c[p>>2];c[(c[j
x3e;>2]|0)+508>>2]=c[c[p>>2]>>2];break}c[g>>2]=3;s=c[g>>2]|0;i=q;return s
|0}while(0);c[o>>2]=c[(c[j>>2]|0)+96>>2];c[l>>2]=Vd(c[o>>2]|0,71003)|0;c[(c[j
x3e;>2]|0)+536>>2]=c[l>>2];c[m>>2]=ok(c[h>>2]|0,c[j>>2]|0)|0;if(c[m>
x3e;2]|0){c[g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}if((c[k>>2]|0)<0)c[k>>
;2]=0;if((c[k>>2]|0)>=(c[(c[j>>2]|0)+132+8>>2]|0)){c[g>>2]=6;s=c[g>>2]|0;
i=q;return s|0}s=Kc(c[h>>2]|0,c[(c[(c[j>>2]|0)+132+12>>2]|0)+(c[k>>2]<<2)>
;>2]|0)|0;c[m>>2]=s;if(s|0){c[g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}c[m>>
;2]=Ya[c[(c[p>>2]|0)+132>>2]&127](c[j>>2]|0,c[h>>2]|0)|0;if(c[m>>2]|0){c[
g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}else{c[c[j>>2]>>2]=c[(c[j>>
2]|0)+132+8>>2];c[(c[j>>2]|0)+4>>2]=c[k>>2];c[g>>2]=c[m>>2];s=c[g>
;>2]|0;i=q;return s|0}return 0}function ok(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;m=i;i=i+32|0;g=m+28|0;h
=m+24|0;j=m+20|0;d=m+16|0;k=m+12|0;f=m+8|0;e=m+4|0;l=m;c[h>>2]=a;c[j>>2]=b;c[d>>2]=c[(c[h>>
;2]|0)+28>>2];c[(c[j>>2]|0)+132>>2]=0;c[(c[j>>2]|0)+132+4>>2]=0;c[(c[j>
x3e;2]|0)+132+8>>2]=0;c[e>>2]=Mc(c[h>>2]|0)|0;c[f>>2]=Oc(c[h>>2]|0,k)|0;if(c[k
>>2]|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}if((c[f>>2]|0)!=65536&(
c[f>>2]|0)!=1953784678&(c[f>>2]|0)!=1330926671&(c[f>>2]|0)!=1953658213&(c[f>
x3e;2]|0)!=1954115633&(c[f>>2]|0)!=131072){c[g>>2]=2;l=c[g>>2]|0;i=m;return l|0}c[(c[j>
x3e;2]|0)+132>>2]=1953784678;do if((c[f>>2]|0)==1953784678){f=le(c[h>>2]|0,7544,(c[j>>2]|
0)+132|0)|0;c[k>>2]=f;if(f|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}f=hc(c[d>
x3e;2]|0,4,0,c[(c[j>>2]|0)+132+8>>2]|0,0,k)|0;c[(c[j>>2]|0)+132+12>>2]=f;if(c[k>>
;2]|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}f=ee(c[h>>2]|0,c[(c[j>>2]|0)+
132+8>>2]<<2)|0;c[k>>2]=f;if(f|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return
l|0}c[l>>2]=0;while(1){b=c[h>>2]|0;if((c[l>>2]|0)>=(c[(c[j>>2]|0)+132+8>>
;2]|0))break;f=je(b)|0;c[(c[(c[j>>2]|0)+132+12>>2]|0)+(c[l>>2]<<2)>>2]=f;c[l
x3e;>2]=(c[l>>2]|0)+1}ge(b)}else{c[(c[j>>2]|0)+132+4>>2]=65536;c[(c[j>>2]|0)+132+8
x3e;>2]=1;l=bc(c[d>>2]|0,4,k)|0;c[(c[j>>2]|0)+132+12>>2]=l;if(!(c[k>>2]|0)){c[c[(c[
j>>2]|0)+132+12>>2]>>2]=c[e>>2];break}c[g>>2]=c[k>>2];l=c[g>>
;2]|0;i=m;return l|0}while(0);c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}function pk(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;I=i;i=i+112|0;o=I+92|0;F=I+88|0;J=I+84|0;l=I+80|0;m=I+76|0;G=I+72|0;x=I+68|0;r=I+103|0;u=I+102|0;s=I+101|0;t=I+100|0;D=I+64|
0;n=I+60|0;H=I+56|0;q=I+52|0;v=I+48|0;p=I+44|0;B=I+40|0;E=I+36|0;w=I+32|0;A=I+98|0;y=I+96|0;C=I+4|0;z=I;c[o>>2]=f;c[F
x3e;>2]=g;c[J>>2]=h;c[l>>2]=j;c[m>>2]=k;a[s>>0]=0;a[t>>0]=0;c[D>>
;2]=c[(c[F>>2]|0)+532>>2];c[J>>2]=c[J>>2];c[n>>2]=0;while(1){if((c[n>>
;2]|0)>=(c[l>>2]|0))break;if((c[(c[m>>2]|0)+(c[n>>2]<<3)>>2]|0)!=1768386662
){if((c[(c[m>>2]|0)+(c[n>>2]<<3)>>2]|0)==1768386675)a[t>>0]=1}else a[s>
x3e;0]=1;c[n>>2]=(c[n>>2]|0)+1}if(!(c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]|0)?!(mk
(c[F>>2]|0,1735162214)|0):0)l=(mk(c[F>>2]|0,1128678944)|0)!=0;else l=1;a[r>>0]=l&1;a[u>
x3e;0]=0;if((a[r>>0]|0)==0?c[(c[D>>2]|0)+84>>2]|0:0){c[G>>2]=Ya[c[(c[D>>2]|0)+
84>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;a[u>>0]=((c[G>>2]|0)!=0^1)&1}if((
a[u>>0]|0)==0?(c[G>>2]=Ya[c[(c[D>>2]|0)+32>>2]&127](c[F>>2]|0,c[o>
x3e;2]|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if(!(e[(c[F>>2]|0)+160+18>>1]|0)){c
[G>>2]=8;J=c[G>>2]|0;i=I;return J|0}c[G>>2]=Ya[c[(c[D>>2]|0)+44>>2]&127](
c[F>>2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+40>>2]&127](c[F>>
;2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+56>>2]&127](c[F>>2]|0,c[o>
;>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+52>>2]&127](c[F>>2]|0,c[o>>2]|0)|
0;c[x>>2]=c[G>>2];if(!(a[u>>0]|0)){c[G>>2]=Oa[c[(c[D>>2]|0)+36>>2]
x26;63](c[F>>2]|0,c[o>>2]|0,0)|0;do if(c[G>>2]|0){if((c[G>>2]|0)==142){if((c[(c[F>
x3e;2]|0)+148>>2]|0)==1953658213){a[r>>0]=0;c[G>>2]=0;break}c[G>>2]=143;if(c[(c[(c[F>
;>2]|0)+128>>2]|0)+52>>2]|0?c[(c[c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]>
x3e;2]|0)+8>>2]|0:0){b[(c[F>>2]|0)+216+34>>1]=0;c[G>>2]=0}}}else{c[G>>2]=Oa[c[(
c[D>>2]|0)+136>>2]&63](c[F>>2]|0,c[o>>2]|0,0)|0;if(((c[G>>2]|0)==142?(c[G
>>2]=147,c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]|0):0)?c[(c[c[(c[(c[F>>2]|0)+128>
;>2]|0)+52>>2]>>2]|0)+8>>2]|0:0){b[(c[F>>2]|0)+216+34>>1]=0;c[G>>
;2]=0}}while(0);if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}c[G>>2]=Oa[c[(c[D>>2]|0)+36>
;>2]&63](c[F>>2]|0,c[o>>2]|0,1)|0;if((c[G>>2]|0)==0?(c[G>>2]=Oa[c[(c[D>
x3e;2]|0)+136>>2]&63](c[F>>2]|0,c[o>>2]|0,1)|0,(c[G>>2]|0)==0):0)a[(c[F>>
2]|0)+296>>0]=1;if((c[G>>2]|0)!=0&(c[G>>2]|0)!=142){J=c[G>>2]|0;i=I;return J|0}c[G
x3e;>2]=Ya[c[(c[D>>2]|0)+48>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;if(c[G>>
2]|0)b[(c[F>>2]|0)+368>>1]=-1}do if(c[(c[D>>2]|0)+140>>2]|0?(c[G>>2]=Ya[c[(c[D
>>2]|0)+140>>2]&127](c[F>>2]|0,c[o>>2]|0)|0,c[G>>2]|0):0)if((c[G>>
;2]|0)==142){c[G>>2]=0;break}else{J=c[G>>2]|0;i=I;return J|0}while(0);c[G>>2]=Ya[c[(c[D>>
;2]|0)+80>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;do if(c[G>>2]|0)if((c[G>>2]|0)!=
142){J=c[G>>2]|0;i=I;return J|0}else{c[(c[F>>2]|0)+556>>2]=0;break}while(0);c[G>>2]=Ya[c
[(c[D>>2]|0)+76>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>
x3e;2]|0)+72>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;c[(c[F>>2]|0)+16>>2]=e[(c[F
x3e;>2]|0)+260+4>>1];c[(c[F>>2]|0)+20>>2]=0;c[(c[F>>2]|0)+24>>2]=0;if((e[(
c[F>>2]|0)+368>>1]|0)!=65535?e[(c[F>>2]|0)+368+64>>1]&256|0:0){if((a[s>>0
]|0)==0?(c[G>>2]=qk(c[F>>2]|0,16,(c[F>>2]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0
;i=I;return J|0}if((c[(c[F>>2]|0)+20>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,1,(c[F>>2
]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if((a[t>>0]|0)==0?(c[G>>2]=qk(c[F
x3e;>2]|0,17,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if((c[(c[F>>
;2]|0)+24>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,2,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){
J=c[G>>2]|0;i=I;return J|0}}else{c[G>>2]=qk(c[F>>2]|0,21,(c[F>>2]|0)+20|0)|0;if(c[G>
;>2]|0){J=c[G>>2]|0;i=I;return J|0}if(!(a[s>>0]|0?1:(c[(c[F>>2]|0)+20>>2]|0)!=0)?(c
[G>>2]=qk(c[F>>2]|0,16,(c[F>>2]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return
J|0}if((c[(c[F>>2]|0)+20>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,1,(c[F>>2]|0)+20|0)|
0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}c[G>>2]=qk(c[F>>2]|0,22,(c[F>>2]|0)+
24|0)|0;if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}if(!(a[t>>0]|0?1:(c[(c[F>>2]|0)+24>
;>2]|0)!=0)?(c[G>>2]=qk(c[F>>2]|0,17,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>
x3e;2]|0;i=I;return J|0}if((c[(c[F>>2]|0)+24>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,2,(c[F>
;>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}}c[H>>2]=c[F>>2];c[q>
x3e;2]=c[(c[H>>2]|0)+8>>2];if((d[r>>0]|0)==1)c[q>>2]=c[q>>2]|1;c[q>>
2]=c[q>>2]|24;if((c[x>>2]|0)==0?(c[(c[F>>2]|0)+468>>2]|0)!=196608:0)c[q>>2]=c[
q>>2]|512;if(c[(c[F>>2]|0)+468+12>>2]|0)c[q>>2]=c[q>>2]|4;if(a[(c[F>>
;2]|0)+296>>0]|0)c[q>>2]=c[q>>2]|32;if(c[(c[F>>2]|0)+784>>2]|0)c[q>>
2]=c[q>>2]|64;if((mk(c[F>>2]|0,1735162214)|0?mk(c[F>>2]|0,1719034226)|0:0)?mk(c[F>>2]|0,
1735811442)|0:0)c[q>>2]=c[q>>2]|256;c[(c[H>>2]|0)+8>>2]=c[q>>2];c[q>>
;2]=0;if((d[r>>0]|0)==1?(e[(c[F>>2]|0)+368>>1]|0)!=65535:0){if(!(!(e[(c[F>>2]|0)+368+64
x3e;>1]&512|0)?!(e[(c[F>>2]|0)+368+64>>1]&1|0):0))c[q>>2]=c[q>>2]|1;if(e[(
c[F>>2]|0)+368+64>>1]&32|0)c[q>>2]=c[q>>2]|2}else{if(e[(c[F>>2]|0)+160+44
>>1]&1|0)c[q>>2]=c[q>>2]|2;if(e[(c[F>>2]|0)+160+44>>1]&2|0)c[q>
x3e;2]=c[q>>2]|1}c[(c[H>>2]|0)+12>>2]=c[q>>2];tk(c[F>>2]|0)|0;c[v>>2
]=0;while(1){if((c[v>>2]|0)>=(c[(c[H>>2]|0)+36>>2]|0))break;c[p>>2]=c[(c[(c[H>
x3e;2]|0)+40>>2]|0)+(c[v>>2]<<2)>>2];J=uk(e[(c[p>>2]|0)+8>>1]|0,e[(c
[p>>2]|0)+10>>1]|0)|0;c[(c[p>>2]|0)+4>>2]=J;c[v>>2]=(c[v>>2]|0)+1}c[
E>>2]=c[(c[F>>2]|0)+612>>2];do if((c[E>>2]|0)>>>0>0){c[w>>
2]=c[(c[(c[F>>2]|0)+104>>2]|0)+28>>2];b[A>>1]=b[(c[F>>2]|0)+160+18>>
1]|0;b[y>>1]=b[(c[F>>2]|0)+368+2>>1]|0;if(!((e[A>>1]|0)!=0?(e[(c[F>>2]|0)+368
x3e;>1]|0)!=65535:0)){b[y>>1]=0;b[A>>1]=1}J=hc(c[w>>2]|0,16,0,c[E>>2]|0,0,G)|0;c[(c
[H>>2]|0)+32>>2]=J;if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}c[B>>2]=0;while(1){
m=c[H>>2]|0;if((c[B>>2]|0)>>>0>=(c[E>>2]|0)>>>0){l=103;break}c[
z>>2]=(c[m+32>>2]|0)+(c[B>>2]<<4);c[G>>2]=Oa[c[(c[D>>2]|0)+152>
x3e;2]&63](c[F>>2]|0,c[B>>2]|0,C)|0;if(c[G>>2]|0){l=112;break}b[c[z>>2]>>
1]=c[C+20>>2]>>6;J=_(b[y>>1]|0,e[C>>1]|0)|0;b[(c[z>>2]|0)+2>>1]=(J+((
e[A>>1]|0)/2|0)|0)/(e[A>>1]|0)|0;c[(c[z>>2]|0)+8>>2]=e[C>>1]<<6;c[(c
[z>>2]|0)+12>>2]=e[C+2>>1]<<6;c[(c[z>>2]|0)+4>>2]=e[C+2>>1
]<<6;c[B>>2]=(c[B>>2]|0)+1}if((l|0)==103){J=m+8|0;c[J>>2]=c[J>>2]|2;c[(c[H>
;>2]|0)+28>>2]=c[E>>2];break}else if((l|0)==112){J=c[G>>2]|0;i=I;return J|0}}while(0);if((c[(
c[H>>2]|0)+8>>2]&2|0)==0?(c[(c[H>>2]|0)+8>>2]&1|0)==0:0){J=(c[H>>2]|
0)+8|0;c[J>>2]=c[J>>2]|1}if(!(c[(c[H>>2]|0)+8>>2]&1)){J=c[G>>2]|0;i=I;return
J|0}c[(c[H>>2]|0)+52>>2]=b[(c[F>>2]|0)+160+36>>1];c[(c[H>>2]|0)+52+4>>
;2]=b[(c[F>>2]|0)+160+38>>1];c[(c[H>>2]|0)+52+8>>2]=b[(c[F>>2]|0)+160+40>
x3e;1];c[(c[H>>2]|0)+52+12>>2]=b[(c[F>>2]|0)+160+42>>1];b[(c[H>>2]|0)+68>
x3e;1]=b[(c[F>>2]|0)+160+18>>1]|0;b[(c[H>>2]|0)+70>>1]=b[(c[F>>2]|0)+216+4>
;>1]|0;b[(c[H>>2]|0)+72>>1]=b[(c[F>>2]|0)+216+6>>1]|0;b[(c[H>>2]|0)+74>
;>1]=(b[(c[H>>2]|0)+70>>1]|0)-(b[(c[H>>2]|0)+72>>1]|0)+(b[(c[F>>2]|0)+216
+8>>1]|0);b[(c[H>>2]|0)+76>>1]=b[(c[F>>2]|0)+216+10>>1]|0;if(d[(c[F>>
;2]|0)+296>>0]|0)l=e[(c[F>>2]|0)+300+10>>1]|0;else l=b[(c[H>>2]|0)+74>>1]|0;b[(
c[H>>2]|0)+78>>1]=l;b[(c[H>>2]|0)+80>>1]=(b[(c[F>>2]|0)+468+8>>1]|0)-((
b[(c[F>>2]|0)+468+10>>1]|0)/2|0);b[(c[H>>2]|0)+82>>1]=b[(c[F>>2]|0)+468+10>
;>1]|0;J=c[G>>2]|0;i=I;return J|0}function qk(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,r=
0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=i;i=i+64|0;h=z+48|0;j=z+54|0;k=z+44|0;t=z+40|0;m=z+36|0;w=z+32|0;u=z+52|0;v=z+28|0;n=z+24|0;
p=z+20|0;o=z+16|0;r=z+12|0;q=z+8|0;s=z+56|0;l=z+4|0;x=z;c[h>>2]=d;b[j>>1]=f;c[k>>2]=g;c[t>>
;2]=c[(c[h>>2]|0)+100>>2];c[m>>2]=0;c[w>>2]=0;c[n>>2]=-1;c[p>>2]=-1;
c[o>>2]=-1;c[r>>2]=-1;c[q>>2]=-1;a[s>>0]=0;c[v>>2]=c[(c[h>>2]|0)+348
+12>>2];b[u>>1]=0;while(1){if((e[u>>1]|0)>=(e[(c[h>>2]|0)+344>>1]|0))break
;a:do if((e[(c[v>>2]|0)+6>>1]|0)==(e[j>>1]|0)?(e[(c[v>>2]|0)+8>>1]|0)>0:0
)switch(e[c[v>>2]>>1]|0){case 2:case 0:{c[q>>2]=e[u>>1];break a}case 1:{if(!(e[(c[v>
;>2]|0)+4>>1]|0)){c[o>>2]=e[u>>1];break a}if(e[(c[v>>2]|0)+2>>1]|0)break
a;c[p>>2]=e[u>>1];break a}case 3:{if((c[r>>2]|0)!=-1?(e[(c[v>>2]|0)+4>>1]&
;1023|0)!=9:0)break a;switch(e[(c[v>>2]|0)+2>>1]|0){case 10:case 1:case 0:break;default:break a}a[s>>
;0]=(e[(c[v>>2]|0)+4>>1]&1023|0)==9;c[r>>2]=e[u>>1];break a}default:break a}while(0
);b[u>>1]=(b[u>>1]|0)+1<<16>>16;c[v>>2]=(c[v>>2]|0)+20}c[n>>
;2]=c[p>>2];if((c[o>>2]|0)>=0)c[n>>2]=c[o>>2];c[l>>2]=0;b:do if((c[r>
;>2]|0)>=0?(c[n>>2]|0)<0|(a[s>>0]|0)!=0:0){c[v>>2]=(c[(c[h>>2]|0)+348+12
x3e;>2]|0)+((c[r>>2]|0)*20|0);switch(e[(c[v>>2]|0)+2>>1]|0){case 0:case 1:{c[l>>2]=
106;break b}case 10:{c[l>>2]=106;break b}default:break b}}else y=23;while(0);do if((y|0)==23){if((c[n>>2]|0)
x3e;=0){c[v>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[n>>2]|0)*20|0);c[l>>2]=107;break
}if((c[q>>2]|0)>=0){c[v>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[q>>2]|0)*20|
0);c[l>>2]=106}}while(0);if(!((c[v>>2]|0)!=0&(c[l>>2]|0)!=0)){x=c[w>>2]|0;y=c[k>
;>2]|0;c[y>>2]=x;y=c[m>>2]|0;i=z;return y|0}do if(!(c[(c[v>>2]|0)+16>>2]|0)){c[x>
;>2]=c[(c[h>>2]|0)+348+16>>2];y=hc(c[t>>2]|0,1,0,e[(c[v>>2]|0)+8>>1]|0,0,
m)|0;c[(c[v>>2]|0)+16>>2]=y;if(((c[m>>2]|0)==0?(y=Kc(c[x>>2]|0,c[(c[v>>2]|0)+12
>>2]|0)|0,c[m>>2]=y,(y|0)==0):0)?(y=Rc(c[x>>2]|0,c[(c[v>>2]|0)+16>>2]|0,e[(c[v
>>2]|0)+8>>1]|0)|0,c[m>>2]=y,(y|0)==0):0)break;Fb(c[t>>2]|0,c[(c[v>>2]|0)+16
x3e;>2]|0);c[(c[v>>2]|0)+16>>2]=0;b[(c[v>>2]|0)+8>>1]=0;c[w>>2]=0;x=c[w
x3e;>2]|0;y=c[k>>2]|0;c[y>>2]=x;y=c[m>>2]|0;i=z;return y|0}while(0);c[w>>2]=Ya[c[l
x3e;>2]&127](c[v>>2]|0,c[t>>2]|0)|0;x=c[w>>2]|0;y=c[k>>2]|0;c[y>>2]=
x;y=c[m>>2]|0;i=z;return y|0}function rk(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,q=0;n=i;i=i+48|0;g=n
+32|0;q=n+28|0;p=n+24|0;m=n+20|0;j=n+16|0;h=n+12|0;k=n+8|0;l=n+4|0;o=n;c[q>>2]=b;c[p>>2]=f;c[m>>2]=
0;c[l>>2]=c[(c[q>>2]|0)+16>>2];c[j>>2]=((e[(c[q>>2]|0)+8>>1]|0)>
;>>0)/2|0;c[m>>2]=hc(c[p>>2]|0,1,0,(c[j>>2]|0)+1|0,0,o)|0;if(c[o>>2]|0){c[g>
;>2]=0;q=c[g>>2]|0;i=n;return q|0}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=(
c[j>>2]|0)>>>0)break;c[l>>2]=(c[l>>2]|0)+2;q=(((d[(c[l>>2]|0)+-2>>
;0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[h>
x3e;2]=q;c[h>>2]=(c[h>>2]|0)>>>0<32|(c[h>>2]|0)>>>0>127?63
:q;a[(c[m>>2]|0)+(c[k>>2]|0)>>0]=c[h>>2];c[k>>2]=(c[k>>2]|0)+1}a[(c[
m>>2]|0)+(c[j>>2]|0)>>0]=0;c[g>>2]=c[m>>2];q=c[g>>2]|0;i=n;return q|
0}function sk(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,q=0;n=i;i=i+48|0;g=n+32|0;q=n+28|0;p=n+24|0;m=n+20|0;j=n+
16|0;h=n+12|0;k=n+8|0;l=n+4|0;o=n;c[q>>2]=b;c[p>>2]=f;c[m>>2]=0;c[l>>2]=c[(c[q>>
;2]|0)+16>>2];c[j>>2]=e[(c[q>>2]|0)+8>>1];c[m>>2]=hc(c[p>>2]|0,1,0,(
c[j>>2]|0)+1|0,0,o)|0;if(c[o>>2]|0){c[g>>2]=0;q=c[g>>2]|0;i=n;return q|0}c[k>>
2]=0;while(1){if((c[k>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;q=c[l>>
2]|0;c[l>>2]=q+1;q=d[q>>0]|0;c[h>>2]=q;c[h>>2]=(c[h>>2]|0)>>>0
x3c;32|(c[h>>2]|0)>>>0>127?63:q;a[(c[m>>2]|0)+(c[k>>2]|0)>>0]=c[h>
;>2];c[k>>2]=(c[k>>2]|0)+1}a[(c[m>>2]|0)+(c[j>>2]|0)>>0]=0;c[g>>
;2]=c[m>>2];q=c[g>>2]|0;i=n;return q|0}function tk(a){a=a|0;var f=0,g=0,h=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,A=0;A=i;i=i+224|0;y=4;x=Fs(40)|0;c[x>>2]=0;s=A+216|0;t=A+212|0;l=A+200|0;p=A+196|0;r=A+192
|0;u=A+188|0;m=A+184|0;w=A+8|0;q=A+4|0;v=A;j=c[a+500>>2]|0;k=j+(c[a+504>>2]|0)|0;c[t>>2]=j;if(c[t
x3e;>2]|0?((c[t>>2]|0)+4|0)>>>0<=k>>>0:0){c[t>>2]=(c[t>>2]|
0)+2;f=c[t>>2]|0;if((((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535|0){c[t>>2]=f+-2;z=8;Gs(x|0);i=A;return z|0}c[t>>2]=
f+2;c[s>>2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>
;>0]|0)&65535)<<0)&65535;while(1){if((c[s>>2]|0)>>>0<=0)break;if(((c[t>
;>2]|0)+8|0)>>>0>k>>>0)break;c[t>>2]=(c[t>>2]|0)+2;b[l+8>>
1]=((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535
)<<0;c[t>>2]=(c[t>>2]|0)+2;b[l+10>>1]=((d[(c[t>>2]|0)+-2>>0]|0)&
;65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0;c[l>>2]=a;c[l+4>>
;2]=0;c[t>>2]=(c[t>>2]|0)+4;f=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>
2]|0)+-4+1>>0]|0)<<16|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-
4+3>>0]|0)<<0;if(f|0?f>>>0<=((c[a+504>>2]|0)-2|0)>>>0:0){c[p>
;>2]=j+f;c[r>>2]=(((d[c[p>>2]>>0]|0)&65535)<<8|((d[(c[p>>2]|0)+1>
;>0]|0)&65535)<<0)&65535;c[u>>2]=3080;while(1){if(!(c[c[u>>2]>>2]|0))break
;c[m>>2]=c[c[u>>2]>>2];if((c[(c[m>>2]|0)+40>>2]|0)==(c[r>>2]|0)){z=14
;break}c[u>>2]=(c[u>>2]|0)+4}a:do if((z|0)==14){z=0;c[q>>2]=0;n=0;qa(10,w|0,c[p>>2]|0,k|
0,0);f=n;n=0;if((f|0)!=0&(o|0)!=0){g=Rs(c[f>>2]|0,x|0,y|0)|0;if(!g)ta(f|0,o|0);C=o}else g=-1;if((g|0)!=1){c[w+172
>>2]=e[a+260+4>>1];x=Qs(w+16|0,1,x|0,y|0)|0;y=C;n=0;f=n;n=0;if((f|0)!=0&(o|0)!=0){g=Rs(c[f>>2
]|0,x|0,y|0)|0;if(!g)ta(f|0,o|0);C=o}else g=-1;if((g|0)!=1)f=0;else f=C}else f=C;while(1){if(!f){n=0;f=oa(c[(c[m>>2]|0
)+44>>2]|0,c[p>>2]|0,w|0)|0;g=n;n=0;if((g|0)!=0&(o|0)!=0){h=Rs(c[g>>2]|0,x|0,y|0)|0;if(!h)ta(
g|0,o|0);C=o}else h=-1;if((h|0)==1){f=C;continue}c[q>>2]=f}if(c[w+12>>2]|0)break a;n=0;f=ma(23,c[m>>
;2]|0,c[p>>2]|0,l|0,v|0)|0;g=n;n=0;if((g|0)!=0&(o|0)!=0){h=Rs(c[g>>2]|0,x|0,y|0)|0;if(!h)ta(g|0,o|0);C=
o}else h=-1;if((h|0)==1)f=C;else break}if(!f)c[(c[v>>2]|0)+20>>2]=c[q>>2]}while(0)}c[s>>
2]=(c[s>>2]|0)+-1}z=0;Gs(x|0);i=A;return z|0}z=8;Gs(x|0);i=A;return z|0}function uk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g
=0,h=0,j=0;j=i;i=i+32|0;g=j+16|0;d=j+12|0;e=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[h>>2]=3120;c[f
>>2]=(c[h>>2]|0)+132;while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>
x3e;>0){d=8;break}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)){if((c[(c[h>>2]|0)+4>>
;2]|0)==(c[e>>2]|0)){d=6;break}if((c[(c[h>>2]|0)+4>>2]|0)==-1){d=6;break}}c[h>>2]=(c[h
x3e;>2]|0)+12}if((d|0)==6){c[g>>2]=c[(c[h>>2]|0)+8>>2];h=c[g>>2]|0;i=j;return h|0}else
if((d|0)==8){c[g>>2]=0;h=c[g>>2]|0;i=j;return h|0}return 0}function vk(d){d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i
;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=d;if(!(c[e>>2]|0)){i=j;return}c[f>>2]=c[(c[e>
x3e;2]|0)+100>>2];c[g>>2]=c[(c[e>>2]|0)+532>>2];if(c[g>>2]|0){if(c[(c[g>
x3e;2]|0)+116>>2]|0)Va[c[(c[g>>2]|0)+116>>2]&63](c[e>>2]|0);if(c[(c[g>>2]|
0)+144>>2]|0)Va[c[(c[g>>2]|0)+144>>2]&63](c[e>>2]|0)}wk(c[e>>2]|0);xk(c[e
>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+132+12>>2]|0);c[(c[e>>2]|0)+132+12>>
;2]=0;c[(c[e>>2]|0)+132+8>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+156>>2]|0);c[(c[e
x3e;>2]|0)+156>>2]=0;b[(c[e>>2]|0)+152>>1]=0;c[h>>2]=c[(c[e>>2]|0)+104>
;>2];fe(c[h>>2]|0,(c[e>>2]|0)+500|0);c[(c[e>>2]|0)+504>>2]=0;Fb(c[f>>2]|0
,c[(c[e>>2]|0)+216+36>>2]|0);c[(c[e>>2]|0)+216+36>>2]=0;Fb(c[f>>2]|0,c[(c[e>
;>2]|0)+216+40>>2]|0);c[(c[e>>2]|0)+216+40>>2]=0;if(a[(c[e>>2]|0)+296>>0]|
0){Fb(c[f>>2]|0,c[(c[e>>2]|0)+300+36>>2]|0);c[(c[e>>2]|0)+300+36>>2]=0;Fb(c[f
x3e;>2]|0,c[(c[e>>2]|0)+300+40>>2]|0);c[(c[e>>2]|0)+300+40>>2]=0;a[(c[e>>
2]|0)+296>>0]=0}Fb(c[f>>2]|0,c[(c[e>>2]|0)+548+4>>2]|0);c[(c[e>>2]|0)+548+4>
;>2]=0;b[(c[e>>2]|0)+548+2>>1]=0;if(c[g>>2]|0)Va[c[(c[g>>2]|0)+60>>2]&
;63](c[e>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+20>>2]|0);c[(c[e>>2]|0)+20>>
;2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;Fb(c[f>
x3e;2]|0,c[(c[e>>2]|0)+32>>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[(c[e>>2]|0)+28>
x3e;2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+700>>2]|0);c[(c[e>>2]|0)+700>>2]=0;c[(c[e
x3e;>2]|0)+532>>2]=0;i=j;return}function wk(b){b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=b;c[e>>2]=(c[d>>2]|0)+792;if(!(a[(c[e>>2]|0)+20>>0]|0)){i=g;return}c[f>
x3e;2]=c[(c[d>>2]|0)+104>>2];if(c[c[e>>2]>>2]|0)fe(c[f>>2]|0,c[e>>2]|
0);c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|0)+12>>2]=
0;i=g;return}function xk(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]|0)+104>>2];fe(c[e>>2]|0,(c[d>>2]|0)+772|0);c[(c[d>>2]|0)+776>>2]=0;c[(c[d
x3e;>2]|0)+780>>2]=0;c[(c[d>>2]|0)+784>>2]=0;c[(c[d>>2]|0)+788>>2]=0;i=b;
return}function yk(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[f>
x3e;2]=c[f>>2];b=qc(3252,c[e>>2]|0)|0;i=d;return b|0}function zk(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;s=i;i=i+48|0;g=s+36|0;h=s+32|0;j=s+28|0;k=s+24|0;l=s+20|0;m=s+16|0;n=s+12|0;p=s
+8|0;q=s+4|0;o=s;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;e=c[h>
x3e;2]|0;do if(c[j>>2]|0){c[q>>2]=mk(e,c[j>>2]|0)|0;if(c[q>>2]|0){c[k>>2]=(c[k
>>2]|0)+(c[(c[q>>2]|0)+8>>2]|0);c[o>>2]=c[(c[q>>2]|0)+12>>2];r=6;break
}else{c[n>>2]=142;break}}else{c[o>>2]=c[(c[e+104>>2]|0)+4>>2];r=6}while(0);if((r|0)==6){
if(c[m>>2]|0?(c[c[m>>2]>>2]|0)==0:0){c[c[m>>2]>>2]=c[o>>2];c[g>
x3e;2]=0;r=c[g>>2]|0;i=s;return r|0}if(c[m>>2]|0)c[o>>2]=c[c[m>>2]>>2];c[p>
;>2]=c[(c[h>>2]|0)+104>>2];c[n>>2]=Sc(c[p>>2]|0,c[k>>2]|0,c[l>>
2]|0,c[o>>2]|0)|0}c[g>>2]=c[n>>2];r=c[g>>2]|0;i=s;return r|0}function Ak(a,b){a=a|0;b=b|
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]=a;c[j>>2]=b;switch(c[j>>2]|0){case
0:{c[g>>2]=(c[f>>2]|0)+160;break}case 3:{c[g>>2]=(c[f>>2]|0)+216;break}case 4:{c[g>
x3e;2]=d[(c[f>>2]|0)+296>>0]|0|0?(c[f>>2]|0)+300|0:0;break}case 2:{c[g>>2]=(e[(c[f>
x3e;2]|0)+368>>1]|0|0)==65535?0:(c[f>>2]|0)+368|0;break}case 5:{c[g>>2]=(c[f>>2]|0)+468;
break}case 1:{c[g>>2]=(c[f>>2]|0)+260;break}case 6:{c[g>>2]=c[(c[f>>2]|0)+556>>
;2]|0?(c[f>>2]|0)+556|0:0;break}default:c[g>>2]=0}i=h;return c[g>>2]|0}function Bk(a,b,d,f,g){a=a|
0;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;o=i;i=i+32|0;h=o+20|0;j=o+16|0;k=o+12|0;l=o+8|0;m=o+4|0;n=o;c[j>
x3e;2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=f;c[n>>2]=g;if(!((c[l>>2]|0)!=0&(c[m
>>2]|0)!=0&(c[n>>2]|0)!=0)){c[h>>2]=6;d=c[h>>2]|0;i=o;return d|0}if((c[k>>
;2]|0)>>>0>=(e[(c[j>>2]|0)+152>>1]|0)>>>0){c[h>>2]=142;d=c[h>
;>2]|0;i=o;return d|0}else{c[c[l>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>>
;2]<<4)>>2];c[c[m>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>>
;2]<<4)+8>>2];c[c[n>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>
x3e;2]<<4)+12>>2];c[h>>2]=0;d=c[h>>2]|0;i=o;return d|0}return 0}function Ck(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,z=0,A=0;A=i;i=i+80|0;g=A+72|0;h=A+68|0;r=A+64|0;m=A+60|
0;l=A+56|0;x=A+52|0;s=A+48|0;p=A+44|0;t=A+40|0;n=A+36|0;j=A+32|0;y=A+28|0;w=A+24|0;v=A+20|0;q=A+16|0;u=A+12|0;o=A+8|0;k=A+4|0;z=
A;c[h>>2]=f;c[x>>2]=0;if(c[(c[h>>2]|0)+700>>2]|0){c[g>>2]=c[(c[h>>2]|
0)+700>>2];z=c[g>>2]|0;i=A;return z|0}c[m>>2]=-1;c[l>>2]=-1;c[r>>2]=0;while(1){
if((c[r>>2]|0)>=(e[(c[h>>2]|0)+344>>1]|0|0))break;c[s>>2]=(c[(c[h>>2]|0)+
348+12>>2]|0)+((c[r>>2]|0)*20|0);if((e[(c[s>>2]|0)+6>>1]|0|0)==6?(e[(c[s>>2]|0
)+8>>1]|0|0)>0:0){if(((e[c[s>>2]>>1]|0|0)==3?(e[(c[s>>2]|0)+2>>1]|0|0)==1
:0)?(e[(c[s>>2]|0)+4>>1]|0|0)==1033:0)c[m>>2]=c[r>>2];if(((e[c[s>>2]>>
;1]|0|0)==1?(e[(c[s>>2]|0)+2>>1]|0|0)==0:0)?(e[(c[s>>2]|0)+4>>1]|0|0)==0:0)c[l>>
;2]=c[r>>2]}c[r>>2]=(c[r>>2]|0)+1}do if((c[m>>2]|0)!=-1){c[p>>2]=c[(c[h>
x3e;2]|0)+100>>2];c[t>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[m>>2]|0)*20|0);c[n
x3e;>2]=(e[(c[t>>2]|0)+8>>1]|0|0)/2|0;c[j>>2]=0;c[j>>2]=c[j>>2];c[x>
x3e;2]=bc(c[p>>2]|0,(e[(c[t>>2]|0)+8>>1]|0)+1|0,j)|0;if(!(c[j>>2]|0)){c[y>>2]=
c[(c[h>>2]|0)+348+16>>2];c[w>>2]=c[x>>2];c[v>>2]=c[(c[t>>2]|0)+16>
;>2];z=Kc(c[y>>2]|0,c[(c[t>>2]|0)+12>>2]|0)|0;c[j>>2]=z;if((z|0)==0?(z=ee(c[y>
x3e;2]|0,e[(c[t>>2]|0)+8>>1]|0)|0,c[j>>2]=z,(z|0)==0):0){c[v>>2]=c[(c[y>>2]|0)+
32>>2];while(1){if((c[n>>2]|0)>>>0<=0)break;if(((d[c[v>>2]>>0]|0|0)==
0?(d[(c[v>>2]|0)+1>>0]|0|0)>=32:0)?(d[(c[v>>2]|0)+1>>0]|0|0)<128:0){u=a[(c[v
x3e;>2]|0)+1>>0]|0;z=c[w>>2]|0;c[w>>2]=z+1;a[z>>0]=u}c[n>>2]=(c[n>
x3e;2]|0)+-1;c[v>>2]=(c[v>>2]|0)+2}a[c[w>>2]>>0]=0;ge(c[y>>2]|0);break}Fb(c[p
x3e;>2]|0,c[x>>2]|0);c[x>>2]=0;b[(c[t>>2]|0)+8>>1]=0;c[(c[t>>2]|0)+12>
;>2]=0;Fb(c[p>>2]|0,c[(c[t>>2]|0)+16>>2]|0);c[(c[t>>2]|0)+16>>2]=0}}else
if((c[l>>2]|0)!=-1?(c[q>>2]=c[(c[h>>2]|0)+100>>2],c[u>>2]=(c[(c[h>>2
]|0)+348+12>>2]|0)+((c[l>>2]|0)*20|0),c[o>>2]=e[(c[u>>2]|0)+8>>1],c[k>>
;2]=0,c[k>>2]=c[k>>2],c[x>>2]=bc(c[q>>2]|0,(c[o>>2]|0)+1|0,k)|0,(c[k>>
;2]|0)==0):0){c[z>>2]=c[(c[h>>2]|0)+348+16>>2];y=Kc(c[z>>2]|0,c[(c[u>>2]|0)+12
>>2]|0)|0;c[k>>2]=y;if((y|0)==0?(z=Rc(c[z>>2]|0,c[x>>2]|0,c[o>>2]|0)|0,c[k>
;>2]=z,(z|0)==0):0){a[(c[x>>2]|0)+(c[o>>2]|0)>>0]=0;break}c[(c[u>>2]|0)+12>>
;2]=0;b[(c[u>>2]|0)+8>>1]=0;Fb(c[q>>2]|0,c[(c[u>>2]|0)+16>>2]|0);c[(c[u>
x3e;2]|0)+16>>2]=0;Fb(c[q>>2]|0,c[x>>2]|0);c[x>>2]=0}while(0);c[(c[h>>2]|0)+700
>>2]=c[x>>2];c[g>>2]=c[x>>2];z=c[g>>2]|0;i=A;return z|0}function Dk(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;m=k+20|0;l=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[m>>
;2]=a;c[l>>2]=b;c[f>>2]=d;c[g>>2]=e;c[h>>2]=Ek(c[m>>2]|0,c[l>>2]|0,j
)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=k;return m|0}pe(c[f>>2]|0,c[j>>2]|0,c[g>>2]|0)|
0;m=c[h>>2]|0;i=k;return m|0}function Ek(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,r=0,s=0,t=0;
t=i;i=i+48|0;h=t+36|0;j=t+32|0;k=t+28|0;l=t+24|0;m=t+20|0;p=t+16|0;n=t+12|0;q=t+8|0;r=t+4|0;o=t+40|0;s=t;c[j>>2]=d;c[k
>>2]=f;c[l>>2]=g;if(!(c[j>>2]|0)){c[h>>2]=35;s=c[h>>2]|0;i=t;return s|0}if((c[
k>>2]|0)>>>0>=(e[(c[j>>2]|0)+260+4>>1]|0)>>>0){c[h>>2
]=16;s=c[h>>2]|0;i=t;return s|0}c[q>>2]=c[(c[j>>2]|0)+536>>2];if(!(c[q>>2]|0)){
c[h>>2]=7;s=c[h>>2]|0;i=t;return s|0}c[p>>2]=(c[j>>2]|0)+628;f=Ta[c[(c[q>>2]|0
)+16>>2]&63](0)|0;c[c[l>>2]>>2]=f;c[n>>2]=c[(c[j>>2]|0)+468>>2];
do if((c[n>>2]|0)==65536){if((c[k>>2]|0)>>>0<258){s=Ta[c[(c[q>>2]|0)+16>
x3e;2]&63](c[k>>2]|0)|0;c[c[l>>2]>>2]=s}}else{if((c[n>>2]|0)!=131072){if((c[n>
x3e;2]|0)!=163840)break;c[s>>2]=(c[p>>2]|0)+4;if((a[c[p>>2]>>0]|0)==0?(c[m>>2]=
Fk(c[j>>2]|0)|0,c[m>>2]|0):0)break;if((c[k>>2]|0)>>>0>=(e[c[s>>2]>
;>1]|0)>>>0)break;c[k>>2]=(c[k>>2]|0)+(a[(c[(c[s>>2]|0)+4>>2]|0)+(c[
k>>2]|0)>>0]|0);s=Ta[c[(c[q>>2]|0)+16>>2]&63](c[k>>2]|0)|0;c[c[l>>
;2]>>2]=s;break}c[r>>2]=(c[p>>2]|0)+4;if((a[c[p>>2]>>0]|0)==0?(c[m>>
2]=Fk(c[j>>2]|0)|0,c[m>>2]|0):0)break;if((c[k>>2]|0)>>>0<(e[c[r>>2]
x3e;>1]|0)>>>0){b[o>>1]=b[(c[(c[r>>2]|0)+4>>2]|0)+(c[k>>2]<<
;1)>>1]|0;if((e[o>>1]|0)<258){s=Ta[c[(c[q>>2]|0)+16>>2]&63](e[o>>1]|
0)|0;c[c[l>>2]>>2]=s;break}else{c[c[l>>2]>>2]=c[(c[(c[r>>2]|0)+8>>2]|
0)+((e[o>>1]|0)-258<<2)>>2];break}}}while(0);c[h>>2]=0;s=c[h>>2]|0;i=t;return
s|0}function Fk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;j=k+16|0;e=k+12|0;f=k+8|0;g=k+4|0;h=k;c[d>
x3e;2]=b;c[j>>2]=c[(c[d>>2]|0)+104>>2];c[e>>2]=Wa[c[(c[d>>2]|0)+508>>
;2]&31](c[d>>2]|0,1886352244,c[j>>2]|0,g)|0;if(c[e>>2]|0){j=c[e>>2]|0;i=k;return j|
0}b=Mc(c[j>>2]|0)|0;c[h>>2]=b+(c[g>>2]|0);c[f>>2]=c[(c[d>>2]|0)+468>>
;2];g=Qc(c[j>>2]|0,32)|0;c[e>>2]=g;if(g|0){j=c[e>>2]|0;i=k;return j|0}do if((c[f>>2]|0)!=
131072)if((c[f>>2]|0)==163840){c[e>>2]=Hk(c[d>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;break
}else{c[e>>2]=3;break}else c[e>>2]=Gk(c[d>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;while(0
);a[(c[d>>2]|0)+628>>0]=1;j=c[e>>2]|0;i=k;return j|0}function Gk(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,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=i;i=i+64|0;l=A+52|0;m=A+48|0;n=A+44|0;o=A+40|0;s=A+36|
0;p=A+32|0;w=A+28|0;x=A+60|0;q=A+24|0;v=A+20|0;j=A+16|0;k=A+12|0;h=A+8|0;t=A+58|0;r=A+4|0;y=A;u=A+56|0;c[m>>2]=d;c[n
x3e;>2]=f;c[o>>2]=g;c[s>>2]=c[(c[n>>2]|0)+28>>2];c[q>>2]=0;c[v>>
;2]=0;c[w>>2]=(Pc(c[n>>2]|0,p)|0)&65535;do if(!(c[p>>2]|0)){if((c[w>>2]|0)>(e[(
c[m>>2]|0)+260+4>>1]|0|0)){c[p>>2]=3;break}c[q>>2]=hc(c[s>>2]|0,2,0,c[w>
x3e;2]|0,0,p)|0;a:do if((c[p>>2]|0)==0?(f=ee(c[n>>2]|0,c[w>>2]<<1)|0,c[p>>2]=f
,(f|0)==0):0){c[j>>2]=0;while(1){d=c[n>>2]|0;if((c[j>>2]|0)>=(c[w>>2]|0))break;f=ie
(d)|0;b[(c[q>>2]|0)+(c[j>>2]<<1)>>1]=f;c[j>>2]=(c[j>>2]|0)+1}ge(d);b
[x>>1]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[w>>2]|0))break;c[h>>2]=e[(
c[q>>2]|0)+(c[k>>2]<<1)>>1];if((c[h>>2]|0)>=258?(c[h>>2]=(c[h
x3e;>2]|0)-257,(c[h>>2]|0)>(e[x>>1]|0|0)):0)b[x>>1]=c[h>>2];c[k>>2]=(
c[k>>2]|0)+1}c[v>>2]=hc(c[s>>2]|0,4,0,e[x>>1]|0,0,p)|0;if(!(c[p>>2]|0)){b[t>
;>1]=0;while(1){if((e[t>>1]|0|0)>=(e[x>>1]|0|0)){z=28;break}k=Mc(c[n>>2]|0)|0;if((k|0)
x3e;=(c[o>>2]|0)){z=28;break}c[r>>2]=(ke(c[n>>2]|0,p)|0)&255;if(c[p>>2]|0)break;if(!((
c[r>>2]|0)<=(c[o>>2]|0)?(k=Mc(c[n>>2]|0)|0,(k|0)<=((c[o>>2]|0)-(c[r>>
;2]|0)|0)):0)){k=c[o>>2]|0;if(0>(k-(Mc(c[n>>2]|0)|0)|0))d=0;else{d=c[o>>2]|0;d=d-(Mc(c[n>
;>2]|0)|0)|0}c[r>>2]=d}k=hc(c[s>>2]|0,1,0,(c[r>>2]|0)+1|0,0,p)|0;c[(c[v>>2]|0)+((e[
t>>1]|0)<<2)>>2]=k;if(c[p>>2]|0)break;k=Rc(c[n>>2]|0,c[(c[v>>2]|0)+((
e[t>>1]|0)<<2)>>2]|0,c[r>>2]|0)|0;c[p>>2]=k;if(k|0)break;a[(c[(c[v>>
2]|0)+((e[t>>1]|0)<<2)>>2]|0)+(c[r>>2]|0)>>0]=0;b[t>>1]=(b[t>
x3e;1]|0)+1<<16>>16}b:do if((z|0)==28){c:do if((e[t>>1]|0|0)<(e[x>>1]|0|0))while(1){
if((e[t>>1]|0|0)>=(e[x>>1]|0|0))break c;z=hc(c[s>>2]|0,1,0,1,0,p)|0;c[(c[v>>2]|0)+((
e[t>>1]|0)<<2)>>2]=z;if(c[p>>2]|0)break b;a[c[(c[v>>2]|0)+((e[t>>1]|
0)<<2)>>2]>>0]=0;b[t>>1]=(b[t>>1]|0)+1<<16>>16}while(0);c[
y>>2]=(c[m>>2]|0)+628+4;b[c[y>>2]>>1]=c[w>>2];b[(c[y>>2]|0)+2>
x3e;1]=b[x>>1]|0;c[(c[y>>2]|0)+4>>2]=c[q>>2];c[(c[y>>2]|0)+8>>2]=c[v
>>2];c[l>>2]=0;z=c[l>>2]|0;i=A;return z|0}while(0);b[u>>1]=0;while(1){if((e[u>>
;1]|0|0)>=(e[x>>1]|0|0))break a;Fb(c[s>>2]|0,c[(c[v>>2]|0)+((e[u>>1]|0)<<
2)>>2]|0);c[(c[v>>2]|0)+((e[u>>1]|0)<<2)>>2]=0;b[u>>1]=(b[u>>
;1]|0)+1<<16>>16}}}while(0);Fb(c[s>>2]|0,c[v>>2]|0);c[v>>2]=0;Fb(c[s>>
;2]|0,c[q>>2]|0);c[q>>2]=0}while(0);c[l>>2]=c[p>>2];z=c[l>>2]|0;i=A;return z|0
}function Hk(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,r=0,s=0,t=0,u=0;t=i;i=i+48|0;h=t+40|0;j=t+36|0;k=t
+32|0;u=t+28|0;n=t+24|0;l=t+20|0;p=t+16|0;q=t+12|0;o=t+8|0;m=t+4|0;r=t;c[j>>2]=d;c[k>>2]=f;c[u>>2]=
g;c[n>>2]=c[(c[k>>2]|0)+28>>2];c[q>>2]=0;c[u>>2]=c[u>>2];c[p>
x3e;2]=(Pc(c[k>>2]|0,l)|0)&65535;do if(!(c[l>>2]|0)){if((c[p>>2]|0)>258?1:(c[p>>
;2]|0)>(e[(c[j>>2]|0)+260+4>>1]|0)){c[l>>2]=3;break}c[q>>2]=hc(c[n>>2]|0,
1,0,c[p>>2]|0,0,l)|0;do if((c[l>>2]|0)==0?(u=Rc(c[k>>2]|0,c[q>>2]|0,c[p>>2]|0)|
0,c[l>>2]=u,(u|0)==0):0){c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[p>>2]|0))break;c[m
x3e;>2]=(c[o>>2]|0)+(a[(c[q>>2]|0)+(c[o>>2]|0)>>0]|0);if((c[m>>2]|0)<
;0){s=10;break}if((c[m>>2]|0)>(c[p>>2]|0)){s=10;break}c[o>>2]=(c[o>>2]|0)+1}if((s|0
)==10){c[l>>2]=3;break}c[r>>2]=(c[j>>2]|0)+628+4;b[c[r>>2]>>1]=c[p>>
2];c[(c[r>>2]|0)+4>>2]=c[q>>2];c[h>>2]=0;u=c[h>>2]|0;i=t;return u|0}while(0);Fb
(c[n>>2]|0,c[q>>2]|0);c[q>>2]=0}while(0);c[h>>2]=c[l>>2];u=c[h>>2]|0
;i=t;return u|0}function Ik(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;m=i;i=i+32|0;k=m+28|0;d=m+24|0;e=m+20|0;j=m
+16|0;l=m+12|0;h=m+8|0;g=m+4|0;f=m;c[d>>2]=a;c[e>>2]=b;c[j>>2]=c[d>>2];c[h>>2]=-
1;if((c[(c[j>>2]|0)+16>>2]|0)<0){c[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}if((c[(c[j>
;>2]|0)+16>>2]|0)>>>0<4294967295)c[h>>2]=c[(c[j>>2]|0)+16>>2];c
[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[h>>2]|0)>>>0){d=11;break
}c[f>>2]=Ek(c[d>>2]|0,c[l>>2]|0,g)|0;if((c[f>>2]|0)==0?(Kr(c[e>>2]|0,c[g>
x3e;2]|0)|0)==0:0){d=9;break}c[l>>2]=(c[l>>2]|0)+1}if((d|0)==9){c[k>>2]=c[l>>2];l=c[k>
;>2]|0;i=m;return l|0}else if((d|0)==11){c[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}return 0}function Jk(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;l=i;i=i+48|0;e=l+32|0;f=l+28|0;g=l+24|0;h=l+16|0;k=l+8|0;j=l;c[e>>
;2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=Kk(c[e>>2]|0,11392,k)|0;if(c[j>>2]|0){k=c[j
x3e;>2]|0;i=l;return k|0}c[j>>2]=Kk(c[e>>2]|0,11409,h)|0;if(c[j>>2]|0){k=c[j>>2]|0;
i=l;return k|0}if((c[k>>2]|0)==1?(c[h>>2]|0)==1:0){c[c[f>>2]>>2]=c[h+4>>2];c[c
[g>>2]>>2]=c[k+4>>2];k=c[j>>2]|0;i=l;return k|0}c[j>>2]=6;k=c[j>>2]|
0;i=l;return k|0}function Kk(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;x=
i;i=i+64|0;g=x+56|0;h=x+52|0;j=x+48|0;m=x+44|0;s=x+40|0;o=x+36|0;q=x+32|0;n=x+28|0;t=x+24|0;r=x+20|0;l=x+16|0;k=x+12|0;u=x+8|0;p
=x+4|0;v=x;c[g>>2]=a;c[h>>2]=b;c[j>>2]=f;c[m>>2]=(c[g>>2]|0)+792;c[s>>
;2]=c[(c[g>>2]|0)+88>>2];c[o>>2]=0;c[c[j>>2]>>2]=0;if((d[(c[m>>2]|0)+
20>>0]|0|0)==0?(c[o>>2]=Lk(c[g>>2]|0,c[(c[g>>2]|0)+104>>2]|0)|0,c[o>>
;2]|0):0){w=c[o>>2]|0;i=x;return w|0}c[n>>2]=c[(c[m>>2]|0)+16>>2];c[q>>2]=(c[c
[m>>2]>>2]|0)+8;c[t>>2]=(c[q>>2]|0)+(c[n>>2]<<2);c[o>>2]=6
;if((c[s>>2]|0)==0|(c[h>>2]|0)==0){w=c[o>>2]|0;i=x;return w|0}c[r>>2]=cs(c[h>>
2]|0)|0;if(!((c[r>>2]|0)!=0&(c[n>>2]|0)>>>0>0)){w=c[o>>2]|0;i=x;return w|
0}while(1){c[q>>2]=(c[q>>2]|0)+2;c[l>>2]=(((d[(c[q>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[q>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[q>>2]=(c[q>
x3e;2]|0)+2;c[k>>2]=(((d[(c[q>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[q>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535;g=c[k>>2]|0;if((c[l>>2]|0)==(e[(c[s>>2]|
0)+12+2>>1]|0|0))break;c[t>>2]=(c[t>>2]|0)+(g*10|0);c[n>>2]=(c[n>>2]|0)+-1;if((
c[n>>2]|0)>>>0<=0){w=20;break}}if((w|0)==20){w=c[o>>2]|0;i=x;return w|0}c[n>>2
]=g;c[q>>2]=c[t>>2];a:while(1){if((c[n>>2]|0)>>>0<=0){w=20;break}c[u>>
;2]=(((d[(c[q>>2]|0)+4>>0]|0)&65535)<<8|((d[(c[q>>2]|0)+4+1>>0]|0)&65535
)<<0)&65535;b:do if(((c[u>>2]&16|0?(c[p>>2]=(d[c[q>>2]>>0]|0)<
x3c;24|(d[(c[q>>2]|0)+1>>0]|0)<<16|(d[(c[q>>2]|0)+2>>0]|0)<<8|(d[(c[
q>>2]|0)+3>>0]|0)<<0,c[v>>2]=(d[(c[q>>2]|0)+6>>0]|0)<<24|(
d[(c[q>>2]|0)+6+1>>0]|0)<<16|(d[(c[q>>2]|0)+6+2>>0]|0)<<8|(d[(c[q>
;>2]|0)+6+3>>0]|0)<<0,(c[p>>2]|0)>>>0<(c[(c[m>>2]|0)+12>
x3e;2]|0)>>>0):0)?(c[r>>2]|0)>>>0<((c[(c[m>>2]|0)+12>>2]|0)-(c[
p>>2]|0)|0)>>>0:0)?(Lr(c[h>>2]|0,(c[(c[m>>2]|0)+8>>2]|0)+(c[p>>
2]|0)|0,(c[(c[m>>2]|0)+12>>2]|0)-(c[p>>2]|0)|0)|0)==0:0){switch(c[u>>2]&15|0){case
2:{w=17;break a}case 3:{w=18;break a}case 1:case 0:break;default:break b}if((c[v>>2]|0)>>>0<(c[(c[
m>>2]|0)+12>>2]|0)>>>0?Ur((c[(c[m>>2]|0)+8>>2]|0)+(c[v>>2]|0)|0
,0,c[(c[m>>2]|0)+12>>2]|0)|0:0){w=16;break a}}while(0);c[q>>2]=(c[q>>2]|0)+10;c[n>
x3e;2]=(c[n>>2]|0)+-1}if((w|0)==16){c[c[j>>2]>>2]=1;c[(c[j>>2]|0)+4>>2]=(c[(c[
m>>2]|0)+8>>2]|0)+(c[v>>2]|0);c[o>>2]=0;w=c[o>>2]|0;i=x;return w|0}else if((w|
0)==17){c[c[j>>2]>>2]=2;c[(c[j>>2]|0)+4>>2]=c[v>>2];c[o>>2]=0;w=c[o
x3e;>2]|0;i=x;return w|0}else if((w|0)==18){c[c[j>>2]>>2]=3;c[(c[j>>2]|0)+4>>2]=c[v
>>2];c[o>>2]=0;w=c[o>>2]|0;i=x;return w|0}else if((w|0)==20){w=c[o>>2]|0;i=x;return w|0}
return 0}function Lk(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;r=i;i=i+48|0;s=r+44|0;f=r+40|0;g=r
+36|0;k=r+32|0;j=r+28|0;n=r+24|0;q=r+20|0;m=r+16|0;p=r+12|0;h=r+8|0;o=r+4|0;l=r;c[s>>2]=b;c[f>>2]=e;c[g>
;>2]=(c[s>>2]|0)+792;e=c[g>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12
>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[j>>2]=lk(c[s>>2]|0,1111770656,c[f>>
;2]|0,k)|0;if(!((c[j>>2]|0)!=0|(c[k>>2]|0)>>>0<8)?(s=de(c[f>>2]|0,c[k>>
;2]|0,c[g>>2]|0)|0,c[j>>2]=s,(s|0)==0):0){c[(c[g>>2]|0)+4>>2]=(c[c[g>>2]>
x3e;2]|0)+(c[k>>2]|0);c[n>>2]=c[c[g>>2]>>2];c[n>>2]=(c[n>>2]|0)+2;c[
q>>2]=(((d[(c[n>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[n>>2]|0)+-2+1>>
;0]|0)&65535)<<0)&65535;c[n>>2]=(c[n>>2]|0)+2;c[m>>2]=(((d[(c[n>>2]|
0)+-2>>0]|0)&65535)<<8|((d[(c[n>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535
;c[n>>2]=(c[n>>2]|0)+4;c[p>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n
x3e;>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>
;2]|0)+-4+3>>0]|0)<<0;if((!((c[q>>2]|0)!=1|(c[p>>2]|0)>>>0<8)?((((c[
p>>2]|0)-8|0)>>>0)/4|0)>>>0>=(c[m>>2]|0)>>>0:0)?((c[p>
;>2]|0)+1|0)>>>0<=(c[k>>2]|0)>>>0:0){c[(c[g>>2]|0)+16>>2]=
c[m>>2];c[(c[g>>2]|0)+8>>2]=(c[c[g>>2]>>2]|0)+(c[p>>2]|0);c[(c[g>
;>2]|0)+12>>2]=(c[k>>2]|0)-(c[p>>2]|0);c[h>>2]=c[(c[g>>2]|0)+16>>
;2];c[n>>2]=(c[c[g>>2]>>2]|0)+8;c[o>>2]=(c[n>>2]|0)+(c[h>>2]<
x3c;2);while(1){if((c[h>>2]|0)>>>0<=0)break;c[l>>2]=(((d[(c[n>>2]|0)+2>
x3e;0]|0)&65535)<<8|((d[(c[n>>2]|0)+2+1>>0]|0)&65535)<<0)&65535;c[o>
x3e;2]=(c[o>>2]|0)+((c[l>>2]|0)*10|0);c[n>>2]=(c[n>>2]|0)+4;c[h>>2]=(c[h>
x3e;2]|0)+-1}if((c[o>>2]|0)>>>0<=(c[(c[g>>2]|0)+8>>2]|0)>>>0){a
[(c[g>>2]|0)+20>>0]=1;s=c[j>>2]|0;i=r;return s|0}}fe(c[f>>2]|0,c[g>>2]|0);s=c[
g>>2]|0;c[s>>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[j>>2]=8;s=c[j>>2]|0;i=r;return s|0}c[j>>2]=8;s=c[j>>2]|0;i=r;return
s|0}function Mk(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;h=d+4|0;g=d;c[f>>2]=a;c[e>
;>2]=b;c[h>>2]=c[f>>2];c[g>>2]=c[(c[h>>2]|0)+12>>2];b=Ya[c[(c[g>>
;2]|0)+48>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return b|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;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;c[k>>2]=c[k>>2];c[j>>2]=c[j>>2];c[h>>2]=c[h>>
;2];c[g>>2]=c[g>>2];i=f;return 7}function Ok(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;c[h>>2]=c[h>>2];c[g>>2]=
c[g>>2];c[f>>2]=c[f>>2];i=e;return 7}function Pk(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=Qk(c[f>>2]|0,c[e>>2]|0,1751474532)|0;i=d;return b|0}function
Qk(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+16|0;f=j+12|0;k=j+8|0;g=j+4|0;h=j;c[e>>2]=a;
c[f>>2]=b;c[k>>2]=d;c[g>>2]=Wa[c[(c[e>>2]|0)+508>>2]&31](c[e>>2
]|0,c[k>>2]|0,c[f>>2]|0,0)|0;if(c[g>>2]|0){k=c[g>>2]|0;i=j;return k|0}c[h>>2]=(
c[e>>2]|0)+160;c[g>>2]=le(c[f>>2]|0,7560,c[h>>2]|0)|0;k=c[g>>2]|0;i=j;return k
|0}function Rk(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;f=l+16|0;g=l+12|0;m=l+20|0;h=l+8|0;j=l+4|0;
k=l;c[f>>2]=b;c[g>>2]=d;a[m>>0]=e;b=c[f>>2]|0;do if(a[m>>0]|0){c[k>>
2]=b+300;c[h>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1986553185,c[g>>2
]|0,0)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=l;return m|0}else{c[j>>2]=c[k>>2];break}}else{c[h
x3e;>2]=Wa[c[b+508>>2]&31](c[f>>2]|0,1751672161,c[g>>2]|0,0)|0;if(c[h>>2]|0){m
=c[h>>2]|0;i=l;return m|0}else{c[j>>2]=(c[f>>2]|0)+216;break}}while(0);m=le(c[g>>2]|0,7644
,c[j>>2]|0)|0;c[h>>2]=m;if(m|0){m=c[h>>2]|0;i=l;return m|0}c[(c[j>>2]|0)+36>>2
]=0;c[(c[j>>2]|0)+40>>2]=0;m=c[h>>2]|0;i=l;return m|0}function Sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0
,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Wa[c[(c[d>>2]|0)+508
x3e;>2]&31](c[d>>2]|0,1668112752,c[e>>2]|0,(c[d>>2]|0)+504|0)|0;if(c[f>>2]|0){
b=c[f>>2]|0;i=g;return b|0}b=de(c[e>>2]|0,c[(c[d>>2]|0)+504>>2]|0,(c[d>>2]|0)+
500|0)|0;c[f>>2]=b;if(!b){b=c[f>>2]|0;i=g;return b|0}c[(c[d>>2]|0)+504>>2]=0;b=c[f>
x3e;2]|0;i=g;return b|0}function Tk(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;k=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>
x3e;2]=a;c[f>>2]=d;c[h>>2]=(c[k>>2]|0)+260;c[g>>2]=Wa[c[(c[k>>2]|0)+508>
x3e;2]&31](c[k>>2]|0,1835104368,c[f>>2]|0,0)|0;if(c[g>>2]|0){k=c[g>>2]|0;i=j;return
k|0}k=le(c[f>>2]|0,7720,c[h>>2]|0)|0;c[g>>2]=k;if(k|0){k=c[g>>2]|0;i=j;return k|0}b[(c[
h>>2]|0)+6>>1]=0;b[(c[h>>2]|0)+8>>1]=0;b[(c[h>>2]|0)+10>>1]=0;b[(c[h
>>2]|0)+12>>1]=0;b[(c[h>>2]|0)+14>>1]=0;b[(c[h>>2]|0)+16>>1]=0;b[(c[
h>>2]|0)+18>>1]=0;b[(c[h>>2]|0)+20>>1]=0;b[(c[h>>2]|0)+22>>1]=0;b[(c
[h>>2]|0)+24>>1]=0;b[(c[h>>2]|0)+26>>1]=0;b[(c[h>>2]|0)+28>>1]=0;b[(
c[h>>2]|0)+30>>1]=0;if((c[c[h>>2]>>2]|0)<65536){k=c[g>>2]|0;i=j;return k|
0}k=le(c[f>>2]|0,7736,c[h>>2]|0)|0;c[g>>2]=k;if(k|0){k=c[g>>2]|0;i=j;return k|0}if((e[(c
[h>>2]|0)+20>>1]|0|0)<64)b[(c[h>>2]|0)+20>>1]=64;if((e[(c[h>>2]|0)+16>
;>1]|0)>>>0>65531)b[(c[h>>2]|0)+16>>1]=-5;if((e[(c[h>>2]|0)+30>>
;1]|0|0)<=100){k=c[g>>2]|0;i=j;return k|0}b[(c[h>>2]|0)+30>>1]=100;k=c[g>>2]|0;i=j;
return k|0}function Uk(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[
g>>2]=d;c[h>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1330851634,c[g>
;>2]|0,0)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=k;return d|0}c[j>>2]=(c[f>>2]|0)+368;d=le(c
[g>>2]|0,7796,c[j>>2]|0)|0;c[h>>2]=d;if(d|0){d=c[h>>2]|0;i=k;return d|0}c[(c[j>>
;2]|0)+80>>2]=0;c[(c[j>>2]|0)+84>>2]=0;b[(c[j>>2]|0)+88>>1]=0;b[(c[j>>
;2]|0)+90>>1]=0;b[(c[j>>2]|0)+92>>1]=0;b[(c[j>>2]|0)+94>>1]=0;b[(c[j>>
;2]|0)+96>>1]=0;if((e[c[j>>2]>>1]|0|0)<1){d=c[h>>2]|0;i=k;return d|0}d=le(c[g>
x3e;2]|0,7972,c[j>>2]|0)|0;c[h>>2]=d;if(d|0){d=c[h>>2]|0;i=k;return d|0}if((e[c[j>>2]>
;>1]|0|0)<2){d=c[h>>2]|0;i=k;return d|0}c[h>>2]=le(c[g>>2]|0,7988,c[j>>2]|0)|0
;d=c[h>>2]|0;i=k;return d|0}function Vk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;j=h+12|0;e=
h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[g>>2]=(c[j>>2]|0)+468;c[f>>2]=Wa[c[(c[
j>>2]|0)+508>>2]&31](c[j>>2]|0,1886352244,c[e>>2]|0,0)|0;if(c[f>>2]|0){c[
d>>2]=c[f>>2];j=c[d>>2]|0;i=h;return j|0}j=le(c[e>>2]|0,8016,c[g>>2]|0)|0;c[f
x3e;>2]=j;if(j|0){c[d>>2]=c[f>>2];j=c[d>>2]|0;i=h;return j|0}else{c[d>>2]=0;j=c[d
x3e;>2]|0;i=h;return j|0}return 0}function Wk(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,q=0,r=0;r=i;i=i+
48|0;f=r+40|0;g=r+36|0;k=r+32|0;l=r+28|0;q=r+24|0;p=r+20|0;n=r+16|0;m=r+12|0;h=r+8|0;o=r+4|0;j=r;c[f>>2]=a;c[g>
x3e;2]=d;c[l>>2]=c[(c[g>>2]|0)+28>>2];c[o>>2]=(c[f>>2]|0)+348;c[(c[o>>
;2]|0)+16>>2]=c[g>>2];c[k>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>
;2]|0,1851878757,c[g>>2]|0,p)|0;if(c[k>>2]|0){q=c[k>>2]|0;i=r;return q|0}c[q>>2]=Mc(c[g
x3e;>2]|0)|0;d=le(c[g>>2]|0,8060,c[o>>2]|0)|0;c[k>>2]=d;if(d|0){q=c[k>>2]|0;i=r;return
q|0}c[n>>2]=(c[q>>2]|0)+6+((c[(c[o>>2]|0)+4>>2]|0)*12|0);c[m>>2]=(c[q>
x3e;2]|0)+(c[p>>2]|0);if((c[n>>2]|0)>>>0>(c[m>>2]|0)>>>0){c[k
x3e;>2]=145;q=c[k>>2]|0;i=r;return q|0}c[h>>2]=c[(c[o>>2]|0)+4>>2];c[(c[o>>
;2]|0)+4>>2]=0;p=hc(c[l>>2]|0,20,0,c[h>>2]|0,0,k)|0;c[(c[o>>2]|0)+12>>2]=p;if(
c[k>>2]|0){q=c[k>>2]|0;i=r;return q|0}p=ee(c[g>>2]|0,(c[h>>2]|0)*12|0)|0;c[k>>
2]=p;if(p|0){q=c[k>>2]|0;i=r;return q|0}c[j>>2]=c[(c[o>>2]|0)+12>>2];while(1){if((c[h>
;>2]|0)>>>0<=0)break;p=le(c[g>>2]|0,8080,c[j>>2]|0)|0;c[k>>2]=p;do if((p|
0)==0?e[(c[j>>2]|0)+8>>1]|0|0:0){p=(c[j>>2]|0)+12|0;c[p>>2]=(c[p>>2]|0)+((c[q
x3e;>2]|0)+(c[(c[o>>2]|0)+8>>2]|0));if((c[(c[j>>2]|0)+12>>2]|0)>>>0
x3e;=(c[n>>2]|0)>>>0?((c[(c[j>>2]|0)+12>>2]|0)+(e[(c[j>>2]|0)+8>>
;1]|0)|0)>>>0<=(c[m>>2]|0)>>>0:0){c[j>>2]=(c[j>>2]|0)+20;break}
c[(c[j>>2]|0)+12>>2]=0;b[(c[j>>2]|0)+8>>1]=0}while(0);c[h>>2]=(c[h>>
2]|0)+-1}c[(c[o>>2]|0)+4>>2]=((c[j>>2]|0)-(c[(c[o>>2]|0)+12>>2]|0)|0)/20|0;ge(
c[g>>2]|0);b[(c[f>>2]|0)+344>>1]=c[(c[o>>2]|0)+4>>2];q=c[k>>2]|0;i=r
;return q|0}function Xk(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;j=h+16|0;f=h+12|0;g=h+8|0;e=h+4|0;d=h;c[j>>2
]=a;c[f>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+8>>2];c[g>>2]=(c[j>>2]|0)+348
;c[e>>2]=c[(c[g>>2]|0)+12>>2];c[d>>2]=c[(c[g>>2]|0)+4>>2];if(!(c[(c[
g>>2]|0)+12>>2]|0)){j=c[g>>2]|0;j=j+4|0;c[j>>2]=0;j=c[g>>2]|0;b[j>>1
]=0;j=c[g>>2]|0;j=j+8|0;c[j>>2]=0;i=h;return}while(1){a=c[f>>2]|0;if((c[d>>2]|0)>
x3e;>0<=0)break;Fb(a,c[(c[e>>2]|0)+16>>2]|0);c[(c[e>>2]|0)+16>>2]=0;b[(c[e>
;>2]|0)+8>>1]=0;c[d>>2]=(c[d>>2]|0)+-1;c[e>>2]=(c[e>>2]|0)+20}Fb(a,c[(c[g
>>2]|0)+12>>2]|0);c[(c[g>>2]|0)+12>>2]=0;j=c[g>>2]|0;j=j+4|0;c[j>>2]=
0;j=c[g>>2]|0;b[j>>1]=0;j=c[g>>2]|0;j=j+8|0;c[j>>2]=0;i=h;return}function Yk(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[f>>2]=c[f>>2];c[e
x3e;>2]=c[e>>2];i=d;return 7}function Zk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>
;2]=c[d>>2];i=b;return}function _k(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;x=i;i=i+80|0;e=x+68|0;f=x+64|0;l=x+60|0;w=x+56|0;t=x+52|0;u=x+48|0;o=x+44|0;q=x+40|0;g=x+36|0;s=x+32|0;p=x+28|0;m=
x+24|0;j=x+20|0;v=x+16|0;n=x+12|0;h=x+8|0;r=x+4|0;k=x;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;c[s>>
;2]=0;c[l>>2]=Wa[c[(c[e>>2]|0)+508>>2]&31](c[e>>2]|0,1801810542,c[f>>2]|0
,w)|0;if(c[l>>2]|0){w=c[l>>2]|0;i=x;return w|0}if((c[w>>2]|0)>>>0<4){c[l>
x3e;2]=142;w=c[l>>2]|0;i=x;return w|0}b=de(c[f>>2]|0,c[w>>2]|0,(c[e>>2]|0)+772|0)|0;c[l
x3e;>2]=b;if(b|0){w=c[l>>2]|0;i=x;return w|0}c[(c[e>>2]|0)+776>>2]=c[w>>2];c[t>
;>2]=c[(c[e>>2]|0)+772>>2];c[u>>2]=(c[t>>2]|0)+(c[w>>2]|0);c[t>>
;2]=(c[t>>2]|0)+2;c[t>>2]=(c[t>>2]|0)+2;w=(((d[(c[t>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[q>>2]=w;c[q>
;>2]=(c[q>>2]|0)>>>0>32?32:w;c[o>>2]=0;while(1){if((c[o>>2]|0)>>
;>0>=(c[q>>2]|0)>>>0)break;c[n>>2]=1<<c[o>>2];if(((c[t>>
;2]|0)+6|0)>>>0>(c[u>>2]|0)>>>0)break;c[v>>2]=c[t>>2];c[t>
x3e;2]=(c[t>>2]|0)+2;c[t>>2]=(c[t>>2]|0)+2;c[m>>2]=(((d[(c[t>>2]|0)+-2>
x3e;0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[t>
;>2]=(c[t>>2]|0)+2;c[j>>2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(
c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c[m>>2]|0)>>>0<
;=6)break;c[v>>2]=(c[v>>2]|0)+(c[m>>2]|0);if((c[v>>2]|0)>>>0>(c[u>
;>2]|0)>>>0)c[v>>2]=c[u>>2];if((c[j>>2]&-9|0)==1?((c[t>>2]|0)+8
|0)>>>0<=(c[u>>2]|0)>>>0:0){c[t>>2]=(c[t>>2]|0)+2;c[p>>
;2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&
;65535)<<0)&65535;c[t>>2]=(c[t>>2]|0)+6;if(((c[v>>2]|0)-(c[t>>2]|0)|0)<
;((c[p>>2]|0)*6|0))c[p>>2]=((c[v>>2]|0)-(c[t>>2]|0)|0)/6|0;c[g>>2]=c[g>
x3e;2]|c[n>>2];if((c[p>>2]|0)>>>0>0){c[t>>2]=(c[t>>2]|0)+4;c[r>
x3e;2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-4+3>>0]|0)<<0;c[t>
x3e;2]=(c[t>>2]|0)+2;c[h>>2]=(c[p>>2]|0)-1;while(1){if((c[h>>2]|0)>>>0<
;=0)break;c[t>>2]=(c[t>>2]|0)+4;c[k>>2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24
|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[
t>>2]|0)+-4+3>>0]|0)<<0;if((c[k>>2]|0)>>>0<=(c[r>>2]|0)>
;>>0)break;c[t>>2]=(c[t>>2]|0)+2;c[r>>2]=c[k>>2];c[h>>2]=(c[h>
x3e;2]|0)+-1}if(!(c[h>>2]|0))c[s>>2]=c[s>>2]|c[n>>2]}}c[t>>2]=c[v>>2
];c[o>>2]=(c[o>>2]|0)+1}c[(c[e>>2]|0)+780>>2]=c[o>>2];c[(c[e>>2]|0)+
784>>2]=c[g>>2];c[(c[e>>2]|0)+788>>2]=c[s>>2];w=c[l>>2]|0;i=x;return
w|0}function $k(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;n=i;i=i+32|0;f=n+24|0;h=n+20|0;j=n+16|0;g=n+12|0;l=n+8|0;m
=n+4|0;k=n;c[f>>2]=a;c[h>>2]=d;c[g>>2]=c[(c[h>>2]|0)+28>>2];c[j>>2]=
Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1734439792,c[h>>2]|0,0)|0;if(c[j>>
2]|0){m=c[j>>2]|0;i=n;return m|0}d=ee(c[h>>2]|0,4)|0;c[j>>2]=d;if(d|0){m=c[j>>2]|0;i=n;return
m|0}a=ie(c[h>>2]|0)|0;b[(c[f>>2]|0)+548>>1]=a;a=ie(c[h>>2]|0)|0;b[(c[f>>2]|0)+
548+2>>1]=a;ge(c[h>>2]|0);a=(c[f>>2]|0)+548+2|0;if((e[(c[f>>2]|0)+548>>1]|0|0)
x3e;=2){b[a>>1]=0;c[j>>2]=8;m=c[j>>2]|0;i=n;return m|0}c[m>>2]=e[a>>1];c[k>
;>2]=hc(c[g>>2]|0,4,0,c[m>>2]|0,0,j)|0;if(c[j>>2]|0){m=c[j>>2]|0;i=n;return m|0}g=ee
(c[h>>2]|0,c[m>>2]<<2)|0;c[j>>2]=g;if(g|0){m=c[j>>2]|0;i=n;return m|0}c[(c[f
x3e;>2]|0)+548+4>>2]=c[k>>2];c[l>>2]=0;while(1){a=c[h>>2]|0;if((c[l>>2]|0
)>>>0>=(c[m>>2]|0)>>>0)break;g=ie(a)|0;b[(c[k>>2]|0)+(c[l>>2]
x3c;<2)>>1]=g;g=ie(c[h>>2]|0)|0;b[(c[k>>2]|0)+(c[l>>2]<<2)+2>>1
]=g;c[l>>2]=(c[l>>2]|0)+1}ge(a);m=c[j>>2]|0;i=n;return m|0}function al(a,b){a=a|0;b=b|0;var d=0,e=
0,f=0,g=0,h=0;g=i;i=i+16|0;h=g+12|0;d=g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[d>>2]=b;c[f>>2]=(c[h>>
;2]|0)+556;c[e>>2]=Wa[c[(c[h>>2]|0)+508>>2]&31](c[h>>2]|0,1346587732,c[d>>
;2]|0,0)|0;if(c[e>>2]|0){h=c[e>>2]|0;i=g;return h|0}c[e>>2]=le(c[d>>2]|0,8108,c[f>
x3e;2]|0)|0;h=c[e>>2]|0;i=g;return h|0}function bl(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>
x3e;2]=a;c[e>>2]=b;b=Qk(c[f>>2]|0,c[e>>2]|0,1651008868)|0;i=d;return b|0}function cl(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;j=f+32|0;l=f+28|0;k=f+24|0;g=f+20|0;h=f;c[j>>2]=a;c[l>
;>2]=b;c[k>>2]=d;c[g>>2]=e;c[h>>2]=0;c[h+4>>2]=c[l>>2];c[h+8>>2
]=c[k>>2];c[h+12>>2]=0;c[h+16>>2]=0;c[c[g>>2]>>2]=2147483647;d=dl(c[j>>
;2]|0,h,c[g>>2]|0)|0;i=f;return d|0}function dl(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;b=Ad(c[h>>2]|0,c[g>>2]|0,0,c[f>>
;2]|0)|0;i=e;return b|0}function el(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[f>>2]=c[f>>2];c[e>>2]=c[e>>2];i=d;return 7}function fl(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;r=i;i=i+48|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0;m=r+16|0;n=
r+12|0;o=r+8|0;p=r+4|0;q=r;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c
[o>>2]=g;if((c[(c[j>>2]|0)+616>>2]|0?(c[(c[j>>2]|0)+612>>2]|0)>>>
;0>(c[l>>2]|0)>>>0:0)?(c[q>>2]=(c[(c[j>>2]|0)+616>>2]|0)+((c[l>
x3e;2]|0)*48|0),c[p>>2]=gl(c[k>>2]|0,c[q>>2]|0,c[m>>2]|0,c[o>>2]|0)|0,(c[p>
;>2]|0)==0):0){c[c[n>>2]>>2]=c[q>>2];c[h>>2]=0;d=c[h>>2]|0;i=r;return d|0
}c[c[m>>2]>>2]=0;c[c[n>>2]>>2]=0;c[c[o>>2]>>2]=0;c[h>>2]=6
;d=c[h>>2]|0;i=r;return d|0}function gl(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;r
=i;i=i+48|0;h=r+28|0;j=r+24|0;k=r+20|0;l=r+16|0;m=r+12|0;p=r+8|0;q=r+4|0;n=r+32|0;o=r;c[j>>2]=a;c[k>>2]=d;c[
l>>2]=f;c[m>>2]=g;a:do if(((c[j>>2]|0)>>>0>=(e[(c[k>>2]|0)+40>
x3e;1]|0)>>>0?(c[j>>2]|0)>>>0<=(e[(c[k>>2]|0)+42>>1]|0)>
x3e;>0:0)?(c[p>>2]=c[(c[k>>2]|0)+4>>2],c[q>>2]=(c[p>>2]|0)+((c[c[k>
x3e;2]>>2]|0)*40|0),c[p>>2]|0):0){while(1){if((c[p>>2]|0)>>>0>=(c[q>>
;2]|0)>>>0)break a;if((c[j>>2]|0)>>>0>=(e[c[p>>2]>>1]|0)>
x3e;>0?(c[j>>2]|0)>>>0<=(e[(c[p>>2]|0)+2>>1]|0)>>>0:0)break
;c[p>>2]=(c[p>>2]|0)+40}b[n>>1]=(c[j>>2]|0)-(e[c[p>>2]>>1]|0);b:do switch
(e[(c[p>>2]|0)+4>>1]|0|0){case 3:case 1:{c[c[m>>2]>>2]=c[(c[(c[p>>2]|0)+28>
;>2]|0)+((e[n>>1]|0)<<2)>>2];break}case 2:{d=(c[(c[p>>2]|0)+8>>2]|0)+(_(c
[(c[p>>2]|0)+12>>2]|0,e[n>>1]|0)|0)|0;c[c[m>>2]>>2]=d;break}case 5:case 4:{c[o
>>2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[(c[p>>2]|0)+24>>2]|0)>
x3e;>0)break a;if((e[(c[(c[p>>2]|0)+32>>2]|0)+(c[o>>2]<<1)>>1]|0|0)==(c[j
>>2]|0))break;c[o>>2]=(c[o>>2]|0)+1}if((e[(c[p>>2]|0)+4>>1]|0|0)==4){c[c[m>
;>2]>>2]=c[(c[(c[p>>2]|0)+28>>2]|0)+(c[o>>2]<<2)>>2];break b}else
{d=(c[(c[p>>2]|0)+8>>2]|0)+(_(c[o>>2]|0,c[(c[p>>2]|0)+12>>2]|0)|0)|0;c[c[m>
;>2]>>2]=d;break b}}default:break a}while(0);c[c[l>>2]>>2]=c[p>>2];c[h>>2
]=0;d=c[h>>2]|0;i=r;return d|0}while(0);c[c[l>>2]>>2]=0;c[c[m>>2]>>2]=0;c[h>
;>2]=6;d=c[h>>2]|0;i=r;return d|0}function hl(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;n=i;i=i+32
|0;g=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;l=n;m=n+20|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=f;c[l>>2]=
0;switch(e[(c[j>>2]|0)+6>>1]|0|0){case 8:case 2:case 1:{b=le(c[h>>2]|0,8172,m)|0;c[l>>2]=
b;if(!b){a[c[k>>2]>>0]=a[m>>0]|0;a[(c[k>>2]|0)+1>>0]=a[m+1>>0]|0;a[(
c[k>>2]|0)+2>>0]=a[m+2>>0]|0;a[(c[k>>2]|0)+3>>0]=a[m+3>>0]|0;a[(c[k
x3e;>2]|0)+4>>0]=a[m+4>>0]|0;a[(c[k>>2]|0)+5>>0]=0;a[(c[k>>2]|0)+6>
x3e;0]=0;a[(c[k>>2]|0)+7>>0]=0}break}case 9:case 7:case 6:{c[l>>2]=le(c[h>>2]|0,8200,c[k
>>2]|0)|0;break}default:{if((e[(c[j>>2]|0)+4>>1]|0|0)!=2?(e[(c[j>>2]|0)+4>>1]|
0|0)!=5:0){c[g>>2]=3;b=c[g>>2]|0;i=n;return b|0}b=c[k>>2]|0;m=(c[j>>2]|0)+16|0;a[b>
x3e;0]=a[m>>0]|0;a[b+1>>0]=a[m+1>>0]|0;a[b+2>>0]=a[m+2>>0]|0;a[b+3>>
0]=a[m+3>>0]|0;a[b+4>>0]=a[m+4>>0]|0;a[b+5>>0]=a[m+5>>0]|0;a[b+6>>0]=
a[m+6>>0]|0;a[b+7>>0]=a[m+7>>0]|0}}c[g>>2]=c[l>>2];b=c[g>>2]|0;i=n;return
b|0}function il(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;w=i;i=i+64|0;l=w+48|0;x=w+44|0;y=w+40|0;m=w+36|0;n=w+32|0;o=w+28|0;p=w+24|0;s=w+20|0;r=w+16|0;t=w+12|0;v=w+8|0;u=w+4|0;q=w
;c[l>>2]=b;c[x>>2]=e;c[y>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[p>
;>2]=k;c[s>>2]=fl(c[l>>2]|0,c[y>>2]|0,c[x>>2]|0,u,v,t)|0;if(c[s>>2]|0){y=
c[s>>2]|0;i=w;return y|0}c[s>>2]=Wa[c[(c[l>>2]|0)+508>>2]&31](c[l>>2]|0,1161970772
,c[n>>2]|0,0)|0;if(c[s>>2]|0)c[s>>2]=Wa[c[(c[l>>2]|0)+508>>2]&31](c[l>
;>2]|0,1650745716,c[n>>2]|0,0)|0;if(c[s>>2]|0){y=c[s>>2]|0;i=w;return y|0}c[r>>2]=Mc
(c[n>>2]|0)|0;c[s>>2]=jl(c[v>>2]|0,c[u>>2]|0,c[r>>2]|0,c[t>>2]|0,c[(
c[l>>2]|0)+84>>2]|0,0,0,c[n>>2]|0,c[p>>2]|0,0)|0;if(c[s>>2]|0){y=c[s>>
;2]|0;i=w;return y|0}if(a[(c[v>>2]|0)+47>>0]&1|0){c[q>>2]=(a[(c[v>>2]|0)+16>
x3e;0]|0)-(a[(c[v>>2]|0)+16+1>>0]|0);a[(c[p>>2]|0)+5>>0]=(0-(d[(c[p>>2]|0)+1
x3e;>0]|0)|0)/2|0;a[(c[p>>2]|0)+6>>0]=((c[q>>2]|0)-(d[c[p>>2]>>0]|0)|0)/2
|0;a[(c[p>>2]|0)+7>>0]=((c[q>>2]|0)*12|0)/10|0}if(!(c[m>>2]&64)){y=c[s>>2
]|0;i=w;return y|0}ml(c[o>>2]|0,c[p>>2]|0);y=c[s>>2]|0;i=w;return y|0}function jl(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;L=i;i=i+96|0;u=L+72|0;v=L+68|0;q=L+64|0;x=L+60|0;M=L+56|0;y=L+52|0;z=L+48|0;A=L+44|0;B=L+40|0;r
=L+36|0;w=L+32|0;J=L+28|0;s=L+24|0;I=L+20|0;t=L+16|0;D=L+12|0;C=L+8|0;K=L+78|0;E=L+76|0;H=L+4|0;F=L+80|0;G=L;c[v>>2]=f
;c[q>>2]=g;c[x>>2]=h;c[M>>2]=j;c[y>>2]=k;c[z>>2]=l;c[A>>2]=m;c[B>
;>2]=n;c[r>>2]=o;c[w>>2]=p;c[J>>2]=c[(c[B>>2]|0)+28>>2];c[s>>2]=(
c[y>>2]|0)+76;m=Kc(c[B>>2]|0,(c[x>>2]|0)+(c[M>>2]|0)|0)|0;c[I>>2]=m;a:do if((m
|0)==0?(c[I>>2]=hl(c[B>>2]|0,c[q>>2]|0,c[r>>2]|0)|0,(c[I>>2]|0)==0):0){if(!(c[
w>>2]|0)){c[(c[s>>2]|0)+4>>2]=d[(c[r>>2]|0)+1>>0];c[c[s>>2]>>
;2]=d[c[r>>2]>>0];switch(d[(c[v>>2]|0)+46>>0]|0){case 1:{a[(c[s>>2]|0)+18>
;>0]=1;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|0)+4>>2]|0)+7>>3;break}case 2:{a[(
c[s>>2]|0)+18>>0]=3;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|0)+4>>2]|0)+3>
;>2;break}case 4:{a[(c[s>>2]|0)+18>>0]=4;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|
0)+4>>2]|0)+1>>1;break}case 8:{a[(c[s>>2]|0)+18>>0]=2;c[(c[s>>2]|0)+8>>
;2]=c[(c[s>>2]|0)+4>>2];break}default:{c[u>>2]=3;M=c[u>>2]|0;i=L;return M|0}}c[t>
x3e;2]=_(c[c[s>>2]>>2]|0,c[(c[s>>2]|0)+8>>2]|0)|0;if(!(c[t>>2]|0))break;c[I>
;>2]=xc(c[y>>2]|0,c[t>>2]|0)|0;if(c[I>>2]|0)break}switch(e[(c[q>>2]|0)+6>>
;1]|0){case 7:case 6:case 5:case 2:case 1:{c[u>>2]=kl(c[s>>2]|0,c[z>>2]|0,c[A>>2]|0,d[(c
[v>>2]|0)+46>>0]|0,b[(c[q>>2]|0)+6>>1]|0,c[r>>2]|0,c[B>>2]|0)|0;M=c[
u>>2]|0;i=L;return M|0}case 8:{M=Qc(c[B>>2]|0,1)|0;c[I>>2]=M;if(M|0){c[I>>2]=83;break a}
break}case 9:break;default:{c[u>>2]=3;M=c[u>>2]|0;i=L;return M|0}}b[K>>1]=Pc(c[B>>2]|0,I
)|0;if((c[I>>2]|0)==0?(c[D>>2]=hc(c[J>>2]|0,4,0,e[K>>1]|0,0,I)|0,(c[I>>2]|0)==
0):0){b[E>>1]=b[K>>1]|0;M=ee(c[B>>2]|0,e[K>>1]<<2)|0;c[I>>2]=M;b:do
if(!M){c[C>>2]=c[D>>2];while(1){q=c[B>>2]|0;if((e[E>>1]|0)<=0)break;M=ie(q)|0;b[c[C
>>2]>>1]=M;M=he(c[B>>2]|0)|0;a[(c[C>>2]|0)+2>>0]=M;M=he(c[B>>2]|0)|0
;a[(c[C>>2]|0)+3>>0]=M;b[E>>1]=(b[E>>1]|0)+-1<<16>>16;c[C>>
;2]=(c[C>>2]|0)+4}ge(q);b[E>>1]=b[K>>1]|0;c[C>>2]=c[D>>2];while(1){if((e[E>
;>1]|0)<=0)break b;c[I>>2]=gl(e[c[C>>2]>>1]|0,c[v>>2]|0,H,G)|0;if(c[I>>
;2]|0)break b;c[I>>2]=jl(c[v>>2]|0,c[H>>2]|0,c[x>>2]|0,c[G>>2]|0,c[y>>
;2]|0,(c[z>>2]|0)+(a[(c[C>>2]|0)+2>>0]|0)|0,(c[A>>2]|0)+(a[(c[C>>2]|0)+3>
x3e;0]|0)|0,c[B>>2]|0,F,(c[w>>2]|0)+1|0)|0;if(c[I>>2]|0)break b;b[E>>1]=(b[E>>
1]|0)+-1<<16>>16;c[C>>2]=(c[C>>2]|0)+4}}while(0);Fb(c[J>>2]|0,c[D>>2
]|0);c[D>>2]=0}}while(0);c[u>>2]=c[I>>2];M=c[u>>2]|0;i=L;return M|0}function kl(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;C=i;i=i+64|
0;n=C+48|0;o=C+44|0;p=C+40|0;q=C+36|0;r=C+32|0;s=C+52|0;t=C+28|0;u=C+24|0;v=C+20|0;y=C+16|0;w=C+12|0;x=C+8|0;z=C+4|0;B=C+54|0;A=
C;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;c[r>>2]=j;b[s>>1]=k;c[t>>2]=l;c[u>
;>2]=m;if(((c[p>>2]|0)>=0?!((c[q>>2]|0)<0?1:((c[p>>2]|0)+(d[(c[t>>2]|0)+1
>>0]|0)|0)>(c[(c[o>>2]|0)+4>>2]|0)):0)?((c[q>>2]|0)+(d[c[t>>2]>>
;0]|0)|0)<=(c[c[o>>2]>>2]|0):0){c[y>>2]=d[(c[t>>2]|0)+1>>0];c[w>>
;2]=d[c[t>>2]>>0];c[z>>2]=_(c[r>>2]|0,c[y>>2]|0)|0;a[B>>0]=0;switch(
e[s>>1]|0|0){case 6:case 1:{switch(c[r>>2]|0){case 1:{c[A>>2]=(c[y>>2]|0)+7>>3
;break}case 2:{c[A>>2]=(c[y>>2]|0)+3>>2;break}case 4:{c[A>>2]=(c[y>>2]|0)+1>
;>1;break}default:c[A>>2]=c[y>>2]}c[x>>2]=_(c[w>>2]|0,c[A>>2]|0)|0;a[B>
;>0]=1;break}case 7:case 5:case 2:{c[z>>2]=_(c[y>>2]|0,c[r>>2]|0)|0;c[x>>2]=(_(c[w
x3e;>2]|0,c[z>>2]|0)|0)+7>>3;break}default:{c[n>>2]=3;h=c[n>>2]|0;i=C;return h|0}}h
=ee(c[u>>2]|0,c[x>>2]|0)|0;c[v>>2]=h;if(!h){h=_(c[p>>2]|0,c[r>>2]|0)|0;ll(c[o
x3e;>2]|0,c[(c[u>>2]|0)+32>>2]|0,c[z>>2]|0,a[B>>0]|0,h,c[q>>2]|0,d[c[t>
;>2]>>0]|0);ge(c[u>>2]|0)}}else c[v>>2]=6;c[n>>2]=c[v>>2];h=c[n>>
;2]|0;i=C;return h|0}function ll(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,D=0,E=0,F=0;F=i;i=i+64|0;n=F+44|0;q=F+40|0;r=F+36|0;s=F+54|0;t=F+32|0;o=F+28|0;p=F+24|0;y=F+20|0;z
=F+16|0;x=F+12|0;u=F+48|0;A=F+8|0;w=F+4|0;v=F;B=F+53|0;C=F+52|0;D=F+51|0;E=F+50|0;c[n>>2]=f;c[q>>2]=g;c[r>
;>2]=h;a[s>>0]=j;c[t>>2]=k;c[o>>2]=l;c[p>>2]=m;c[z>>2]=c[(c[n>>
2]|0)+8>>2];c[y>>2]=c[(c[n>>2]|0)+12>>2];if((c[z>>2]|0)<0){l=_(c[z>
x3e;2]|0,(c[c[n>>2]>>2]|0)-1|0)|0;c[y>>2]=(c[y>>2]|0)+(0-l)}l=(c[t>>2]>
x3e;3)+(_(c[o>>2]|0,c[z>>2]|0)|0)|0;c[y>>2]=(c[y>>2]|0)+l;b[u>>1]=0;c[A>
x3e;2]=0;c[x>>2]=c[p>>2];while(1){if((c[x>>2]|0)<=0)break;c[w>>2]=c[y>>2];
c[v>>2]=c[r>>2];a[B>>0]=c[t>>2]&7;a[C>>0]=8-(d[B>>0]|0);if((c[v
>>2]|0)>=8){c[v>>2]=(c[v>>2]|0)-8;do{if((c[A>>2]|0)>>>0<8){l=c[
q>>2]|0;c[q>>2]=l+1;b[u>>1]=e[u>>1]|(d[l>>0]&65535)<<8-(c[A>
;>2]|0)&65535;c[A>>2]=(c[A>>2]|0)+8}a[D>>0]=e[u>>1]>>8;n=d[D>
x3e;0]|0;if(a[B>>0]|0){l=c[w>>2]|0;a[l>>0]=d[l>>0]|n>>d[B>>0]&255
;l=(c[w>>2]|0)+1|0;a[l>>0]=d[l>>0]|d[D>>0]<<d[C>>0]&255}else{l=
c[w>>2]|0;a[l>>0]=d[l>>0]|n}c[w>>2]=(c[w>>2]|0)+1;b[u>>1]=e[u>
x3e;1]<<8;c[A>>2]=(c[A>>2]|0)-8;c[v>>2]=(c[v>>2]|0)-8}while((c[v>>2]|
0)>=0);c[v>>2]=(c[v>>2]|0)+8}if((c[v>>2]|0)>0){if((c[A>>2]|0)<(c[v>
x3e;2]|0)){l=c[q>>2]|0;c[q>>2]=l+1;b[u>>1]=e[u>>1]|(d[l>>0]&65535)<
x3c;8-(c[A>>2]|0)&65535;c[A>>2]=(c[A>>2]|0)+8}a[E>>0]=e[u>>1]>>
8&255&~(255>>c[v>>2]);l=c[w>>2]|0;a[l>>0]=d[l>>0]|d[E>>0]
x3e;>d[B>>0]&255;if((c[v>>2]|0)>(d[C>>0]|0)){l=(c[w>>2]|0)+1|0;a[l>
x3e;0]=d[l>>0]|d[E>>0]<<d[C>>0]&255}b[u>>1]=e[u>>1]<<
c[v>>2];c[A>>2]=(c[A>>2]|0)-(c[v>>2]|0)}if(a[s>>0]|0){b[u>>1]=0;c[A
x3e;>2]=0}c[y>>2]=(c[y>>2]|0)+(c[z>>2]|0);c[x>>2]=(c[x>>2]|0)+-1}i=F;return
}function ml(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;z=i;i=i+80|0;l
=z+60|0;m=z+56|0;w=z+52|0;f=z+48|0;r=z+44|0;q=z+40|0;g=z+36|0;j=z+32|0;h=z+28|0;k=z+24|0;o=z+20|0;t=z+16|0;y=z+12|0;u=z+66|0;n=z
+8|0;x=z+65|0;v=z+4|0;p=z;s=z+64|0;c[l>>2]=b;c[m>>2]=e;c[q>>2]=c[(c[l>>2]|0)+12>>
;2];c[w>>2]=c[c[l>>2]>>2];c[r>>2]=c[(c[l>>2]|0)+8>>2];c[f>>
;2]=0;a:while(1){if((c[f>>2]|0)>=(c[w>>2]|0))break;c[g>>2]=c[q>>2];c[j>>2
]=(c[q>>2]|0)+(c[r>>2]|0);while(1){if((c[g>>2]|0)>>>0>=(c[j>>2]|0)
x3e;>>0)break;if(a[c[g>>2]>>0]|0)break a;c[g>>2]=(c[g>>2]|0)+1}c[q>>
2]=c[j>>2];c[f>>2]=(c[f>>2]|0)+1}if((c[f>>2]|0)>=(c[w>>2]|0)){c[(c[l>
;>2]|0)+4>>2]=0;c[c[l>>2]>>2]=0;c[(c[l>>2]|0)+8>>2]=0;a[(c[l>>2
]|0)+18>>0]=1;i=z;return}if((c[f>>2]|0)>0){c[q>>2]=c[(c[l>>2]|0)+12>>2];e
=(c[q>>2]|0)+(_(c[f>>2]|0,c[r>>2]|0)|0)|0;Ts(c[q>>2]|0,e|0,_((c[w>>2]|0)-(c[f
x3e;>2]|0)|0,c[r>>2]|0)|0)|0;a[c[m>>2]>>0]=(d[c[m>>2]>>0]|0)-(c[f>
x3e;2]|0);a[(c[m>>2]|0)+3>>0]=(a[(c[m>>2]|0)+3>>0]|0)-(c[f>>2]|0);a[(c[m>
x3e;2]|0)+6>>0]=(a[(c[m>>2]|0)+6>>0]|0)-(c[f>>2]|0);e=c[l>>2]|0;c[e>>
;2]=(c[e>>2]|0)-(c[f>>2]|0);c[w>>2]=(c[w>>2]|0)-(c[f>>2]|0)}c[q>>2]=(
c[(c[l>>2]|0)+12>>2]|0)+(_((c[w>>2]|0)-1|0,c[r>>2]|0)|0);c[f>>2]=0;b:while(1){
if((c[f>>2]|0)>=(c[w>>2]|0))break;c[h>>2]=c[q>>2];c[k>>2]=(c[q>>
;2]|0)+(c[r>>2]|0);while(1){if((c[h>>2]|0)>>>0>=(c[k>>2]|0)>>>0
)break;if(a[c[h>>2]>>0]|0)break b;c[h>>2]=(c[h>>2]|0)+1}c[q>>2]=(c[q>>
;2]|0)+(0-(c[r>>2]|0));c[f>>2]=(c[f>>2]|0)+1}if((c[f>>2]|0)>0){a[c[m>>2]
x3e;>0]=(d[c[m>>2]>>0]|0)-(c[f>>2]|0);c[w>>2]=(c[w>>2]|0)-(c[f>>
;2]|0);e=c[l>>2]|0;c[e>>2]=(c[e>>2]|0)-(c[f>>2]|0)}c:do{c[q>>2]=c[(c[l>
x3e;2]|0)+12>>2];c[o>>2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);while(1){if((c
[q>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(d[c[q>>2]>>0]
x26;128|0)break c;c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}c[q>>2]=c[(c[l>>2]|0)+12>
;>2];c[o>>2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);while(1){f=(c[l>>2]|0
)+4|0;g=c[f>>2]|0;if((c[q>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[y
>>2]=g;c[n>>2]=c[q>>2];a[u>>0]=d[c[n>>2]>>0]<<1;c[t>
x3e;2]=8;while(1){if((c[t>>2]|0)>=(c[y>>2]|0))break;a[x>>0]=a[(c[n>>2]|0)+1>
x3e;0]|0;a[c[n>>2]>>0]=d[u>>0]|d[x>>0]>>7;a[u>>0]=d[x>>0]
x3c;<1;c[n>>2]=(c[n>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+8}a[c[n>>2]>>0
]=a[u>>0]|0;c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}c[f>>2]=g+-1;e=(c[m>>2]|
0)+2|0;a[e>>0]=(a[e>>0]|0)+1<<24>>24;e=(c[m>>2]|0)+5|0;a[e>>0]=(a[e
x3e;>0]|0)+1<<24>>24;e=(c[m>>2]|0)+1|0;a[e>>0]=(a[e>>0]|0)+-1<<
24>>24}while((c[(c[l>>2]|0)+4>>2]|0)>0);d:while(1){c[v>>2]=(c[(c[l>>2]|0)+
4>>2]|0)-1;c[q>>2]=(c[(c[l>>2]|0)+12>>2]|0)+(c[v>>2]>>3);c[p>
x3e;2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);a[s>>0]=128>>(c[v>>2]
x26;7);while(1){if((c[q>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;if(d[c[q>
x3e;2]>>0]&d[s>>0]|0){f=37;break d}c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}y=(c[l
>>2]|0)+4|0;c[y>>2]=(c[y>>2]|0)+-1;y=(c[m>>2]|0)+1|0;a[y>>0]=(a[y>>0
]|0)+-1<<24>>24;if((c[(c[l>>2]|0)+4>>2]|0)<=0){f=37;break}}if((f|0)==37){i=z;return
}}function nl(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return}function
ol(d){d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;f=n+20|0;j=n+16|0;l=n+12|0;g=n+8|0;m=n+4|0;k=n+24|0;h=n;c[f>
x3e;2]=d;c[j>>2]=c[(c[f>>2]|0)+100>>2];c[l>>2]=(c[f>>2]|0)+628;if(!(a[c[l>
;>2]>>0]|0)){m=c[l>>2]|0;a[m>>0]=0;i=n;return}c[g>>2]=c[(c[f>>2]|0)+468
x3e;>2];if((c[g>>2]|0)!=131072){if((c[g>>2]|0)!=163840){m=c[l>>2]|0;a[m>>0]=0;i=n;return
}c[h>>2]=(c[l>>2]|0)+4;Fb(c[j>>2]|0,c[(c[h>>2]|0)+4>>2]|0);c[(c[h>>2
]|0)+4>>2]=0;b[c[h>>2]>>1]=0;m=c[l>>2]|0;a[m>>0]=0;i=n;return}c[m>>2
]=(c[l>>2]|0)+4;Fb(c[j>>2]|0,c[(c[m>>2]|0)+4>>2]|0);c[(c[m>>2]|0)+4>>
;2]=0;b[c[m>>2]>>1]=0;b[k>>1]=0;while(1){f=c[j>>2]|0;if((e[k>>1]|0)>=(e[(
c[m>>2]|0)+2>>1]|0))break;Fb(f,c[(c[(c[m>>2]|0)+8>>2]|0)+(e[k>>1]<<2
)>>2]|0);c[(c[(c[m>>2]|0)+8>>2]|0)+(e[k>>1]<<2)>>2]=0;b[k>>
;1]=(b[k>>1]|0)+1<<16>>16}Fb(f,c[(c[m>>2]|0)+8>>2]|0);c[(c[m>>2]|0)+
8>>2]=0;b[(c[m>>2]|0)+2>>1]=0;m=c[l>>2]|0;a[m>>0]=0;i=n;return}function pl(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;c[h>>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>>2];i=e;return 7}function
ql(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[f>>2]=c[f>
;>2];c[e>>2]=c[e>>2];i=d;return 0}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,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=i;i=i+96|0;g=E+88|0;h=E+84|0;j=E+80|0;D=E+76|0;l=E+72|0;s=
E+68|0;y=E+64|0;z=E+60|0;k=E+56|0;w=E+52|0;C=E+48|0;r=E+44|0;n=E+40|0;x=E+36|0;B=E+32|0;p=E+28|0;v=E+24|0;t=E+20|0;u=E+16|0;A=E+
12|0;o=E+8|0;m=E+4|0;q=E;c[g>>2]=b;c[h>>2]=e;c[j>>2]=f;c[D>>2]=0;c[s>>2]=1;c[y
>>2]=c[(c[g>>2]|0)+772>>2];c[z>>2]=(c[y>>2]|0)+(c[(c[g>>2]|0)+776>
;>2]|0);c[y>>2]=(c[y>>2]|0)+4;c[s>>2]=1;c[l>>2]=c[(c[g>>2]|0)+780>
x3e;2];while(1){if((c[l>>2]|0)>>>0<=0){b=28;break}if(((c[y>>2]|0)+6|0)>>>
0>(c[z>>2]|0)>>>0){b=28;break}c[k>>2]=c[y>>2];c[w>>2]=c[k>>
;2];c[y>>2]=(c[y>>2]|0)+2;c[C>>2]=((d[(c[y>>2]|0)+-2>>0]&65535)<<
;8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[y>>2]=(c[y>>2]|0)+2;c[
r>>2]=((d[(c[y>>2]|0)+-2>>0]&65535)<<8|(d[(c[y>>2]|0)+-2+1>>0]
x26;65535)<<0)&65535;c[y>>2]=(c[y>>2]|0)+2;c[n>>2]=((d[(c[y>>2]|0)+-2>
;>0]&65535)<<8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[B>>
;2]=0;c[C>>2]=c[C>>2];c[w>>2]=(c[k>>2]|0)+(c[r>>2]|0);if((c[w>>2]|0)
x3e;>>0>(c[z>>2]|0)>>>0)c[w>>2]=c[z>>2];a:do if(c[(c[g>>2]|
0)+784>>2]&c[s>>2]|0?((c[y>>2]|0)+8|0)>>>0<=(c[w>>2]|0)>
x3e;>0:0){c[y>>2]=(c[y>>2]|0)+2;c[x>>2]=((d[(c[y>>2]|0)+-2>>0]&65535
)<<8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[y>>2]=(c[y>>
;2]|0)+6;if(((c[w>>2]|0)-(c[y>>2]|0)|0)<((c[x>>2]|0)*6|0))c[x>>2]=((c[w>>
2]|0)-(c[y>>2]|0)|0)/6|0;if(!((c[n>>2]|0)>>>8)){c[p>>2]=c[h>>2]<<
;16|c[j>>2];if(c[(c[g>>2]|0)+788>>2]&c[s>>2]|0){c[v>>2]=0;c[t>>
2]=c[x>>2];while(1){if((c[v>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a
;c[u>>2]=((c[v>>2]|0)+(c[t>>2]|0)|0)>>>1;c[A>>2]=(c[y>>2]|0)+((
c[u>>2]|0)*6|0);c[A>>2]=(c[A>>2]|0)+4;c[o>>2]=d[(c[A>>2]|0)+-4>>0]
x3c;<24|d[(c[A>>2]|0)+-4+1>>0]<<16|d[(c[A>>2]|0)+-4+2>>0]<<8|d[(
c[A>>2]|0)+-4+3>>0]<<0;if((c[o>>2]|0)==(c[p>>2]|0))break;b=c[u>>2]|0
;if((c[o>>2]|0)>>>0<(c[p>>2]|0)>>>0){c[v>>2]=b+1;continue}else{
c[t>>2]=b;continue}}c[B>>2]=((a[c[A>>2]>>0]<<16>>16<<8|d[(
c[A>>2]|0)+1>>0]<<0)&65535)<<16>>16}else{c[m>>2]=c[x>>
;2];while(1){if((c[m>>2]|0)>>>0<=0)break a;c[y>>2]=(c[y>>2]|0)+4;c[q>>
;2]=d[(c[y>>2]|0)+-4>>0]<<24|d[(c[y>>2]|0)+-4+1>>0]<<16|d[(c[y>
x3e;2]|0)+-4+2>>0]<<8|d[(c[y>>2]|0)+-4+3>>0]<<0;b=c[y>>2]|0;if((c[q
x3e;>2]|0)==(c[p>>2]|0))break;c[y>>2]=b+2;c[m>>2]=(c[m>>2]|0)+-1}c[B>>2]=((
a[b>>0]<<16>>16<<8|d[(c[y>>2]|0)+1>>0]<<0)&65535)<
;<16>>16}b=c[B>>2]|0;if(c[n>>2]&8|0){c[D>>2]=b;break}else{c[D>>2]=(c
[D>>2]|0)+b;break}}}while(0);c[y>>2]=c[w>>2];c[l>>2]=(c[l>>2]|0)+-1;c[s>
x3e;2]=c[s>>2]<<1}if((b|0)==28){i=E;return c[D>>2]|0}return 0}function sl(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;n=i;i=i+48|0;f=n+36|0;h=n+32|0;m=n+16|0;k=n+12|0;g=n+8|0;j=n+4|0;l=n;c[f>>2]=a;c[h>
x3e;2]=d;c[g>>2]=c[(c[h>>2]|0)+28>>2];c[m+12>>2]=Mc(c[h>>2]|0)|0;c[m>>
;2]=Oc(c[h>>2]|0,k)|0;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}d=le(c[h>>2]|0,8240,m)|0;
c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}c[k>>2]=tl(m,c[h>>2]|0)|0;if(c[k>>
;2]|0){m=c[k>>2]|0;i=n;return m|0}b[(c[f>>2]|0)+152>>1]=b[m+4>>1]|0;c[(c[f>>2]|
0)+148>>2]=c[m>>2];d=hc(c[g>>2]|0,16,0,e[(c[f>>2]|0)+152>>1]|0,0,k)|0;c[(c[f
x3e;>2]|0)+156>>2]=d;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}d=Kc(c[h>>2]|0,(c[m+12
>>2]|0)+12|0)|0;c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}d=ee(c[h>>2]|0,(e[(c[f>
;>2]|0)+152>>1]|0)<<4)|0;c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}c[j>>
;2]=c[(c[f>>2]|0)+156>>2];c[l>>2]=0;while(1){f=c[h>>2]|0;if((c[l>>2]|0)>=(
e[m+4>>1]|0|0))break;d=je(f)|0;c[c[j>>2]>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>>2]|0)+
4>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>>2]|0)+8>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>
x3e;2]|0)+12>>2]=d;if(((c[(c[j>>2]|0)+8>>2]|0)+(c[(c[j>>2]|0)+12>>2]|0)|0)>
;>>0<=(c[(c[h>>2]|0)+4>>2]|0)>>>0)c[j>>2]=(c[j>>2]|0)+16;c
[l>>2]=(c[l>>2]|0)+1}ge(f);m=c[k>>2]|0;i=n;return m|0}function tl(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,q=0,r=0,s=0;s=i;i=i+64|0;f=s+48|0;g=s+44|0;h=s+40|0;n=s+54|0;q=s+52|0;j=s+36|0;l=s+32|0;k=s+28|0;o=
s+24|0;p=s+8|0;m=s;c[f>>2]=a;c[g>>2]=d;b[q>>1]=0;c[j>>2]=0;c[l>>2]=0;c[k>
x3e;2]=0;c[o>>2]=(c[(c[f>>2]|0)+12>>2]|0)+12;d=Kc(c[g>>2]|0,c[o>>2]|0)|0;c[h
x3e;>2]=d;if(d|0){r=c[h>>2]|0;i=s;return r|0}b[n>>1]=0;a:while(1){if((e[n>>1]|0|0)>=(e[(
c[f>>2]|0)+4>>1]|0|0))break;d=le(c[g>>2]|0,8264,p)|0;c[h>>2]=d;if(d|0){r=5;break}do if(((
c[p+8>>2]|0)+(c[p+12>>2]|0)|0)>>>0<=(c[(c[g>>2]|0)+4>>2]|0)>>
;>0){b[q>>1]=(b[q>>1]|0)+1<<16>>16;if((c[p>>2]|0)!=1751474532?(c[p>
x3e;2]|0)!=1651008868:0){if((c[p>>2]|0)==1397313095){c[l>>2]=1;break}if((c[p>>2]|0)!=1296389185)break
;c[k>>2]=1;break}c[j>>2]=1;if((c[p+12>>2]|0)>>>0<54){r=10;break a}d=Kc(c[g>
;>2]|0,(c[p+8>>2]|0)+12|0)|0;c[h>>2]=d;if(d|0){r=27;break a}c[m>>2]=Oc(c[g>>2]|0,h)|
0;if(c[h>>2]|0){r=27;break a}if((c[m>>2]|0)!=1594834165){r=14;break a}d=Kc(c[g>>2]|0,(c[o>>
;2]|0)+((e[n>>1]|0)+1<<4)|0)|0;c[h>>2]=d;if(d|0){r=27;break a}}while(0);b[n>>1]=(b[n>
;>1]|0)+1<<16>>16}if((r|0)==5){b[n>>1]=(b[n>>1]|0)+-1<<16>>16;b
[(c[f>>2]|0)+4>>1]=b[n>>1]|0}else if((r|0)==10){c[h>>2]=142;r=c[h>>2]|0;i=s;return
r|0}else if((r|0)==14){c[h>>2]=142;r=c[h>>2]|0;i=s;return r|0}else if((r|0)==27){r=c[h>>2]|0;i=s;
return r|0}b[(c[f>>2]|0)+4>>1]=b[q>>1]|0;if(!(e[(c[f>>2]|0)+4>>1]|0)){c[h>
;>2]=2;r=c[h>>2]|0;i=s;return r|0}if((c[j>>2]|0)==0?!((c[l>>2]|0)!=0&(c[k>>2]|
0)!=0):0){c[h>>2]=142;r=c[h>>2]|0;i=s;return r|0}c[h>>2]=0;r=c[h>>2]|0;i=s;return r|0}function
ul(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;E=i;i=i
+80|0;B=E+72|0;j=E+68|0;C=E+78|0;D=E+64|0;r=E+60|0;z=E+56|0;t=E+52|0;s=E+48|0;u=E+44|0;q=E+40|0;w=E+36|0;v=E+32|0;o=E+28|0;x=E+24
|0;p=E+20|0;y=E+16|0;k=E+12|0;m=E+8|0;l=E+4|0;n=E;A=E+76|0;c[B>>2]=f;c[j>>2]=g;a[C>>0]=h;c[r>
x3e;2]=c[(c[j>>2]|0)+28>>2];f=c[B>>2]|0;if(a[C>>0]|0){c[o>>2]=f+300+36;c[x>
;>2]=(c[B>>2]|0)+300+40;c[D>>2]=Wa[c[(c[B>>2]|0)+508>>2]&31](c[B>>2]|
0,1986884728,c[j>>2]|0,z)|0;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}c[s>>2]=e[(c[B>
;>2]|0)+300+34>>1];if((c[s>>2]|0)>>>0>(((c[z>>2]|0)>>>0)/4
|0)>>>0)c[s>>2]=((c[z>>2]|0)>>>0)/4|0;b[(c[B>>2]|0)+300+34>>
;1]=0;c[q>>2]=c[o>>2];c[w>>2]=c[x>>2]}else{c[p>>2]=f+216+36;c[y>>2]=(
c[B>>2]|0)+216+40;c[D>>2]=Wa[c[(c[B>>2]|0)+508>>2]&31](c[B>>2]|0,1752003704
,c[j>>2]|0,z)|0;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}c[s>>2]=e[(c[B>>2]|0)+
216+34>>1];if((c[s>>2]|0)>>>0>(((c[z>>2]|0)>>>0)/4|0)>>
;>0)c[s>>2]=((c[z>>2]|0)>>>0)/4|0;b[(c[B>>2]|0)+216+34>>1]=0;c[q>
;>2]=c[p>>2];c[w>>2]=c[y>>2]}c[t>>2]=(e[(c[B>>2]|0)+260+4>>1]|0
)-(c[s>>2]|0);c[u>>2]=(((c[z>>2]|0)-(c[s>>2]<<2)|0)>>>0)/2|0;if
((c[t>>2]|0)<0)c[t>>2]=0;y=hc(c[r>>2]|0,4,0,c[s>>2]|0,0,D)|0;c[c[q>>2]>
;>2]=y;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}y=hc(c[r>>2]|0,2,0,c[t>>2]|0,0,D)|0
;c[c[w>>2]>>2]=y;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}z=ee(c[j>>2]|0,c[z
x3e;>2]|0)|0;c[D>>2]=z;if(z|0){D=c[D>>2]|0;i=E;return D|0}c[v>>2]=c[(c[j>>2]|0)+32
x3e;>2];c[k>>2]=c[c[q>>2]>>2];c[m>>2]=(c[k>>2]|0)+(c[s>>2]<
;<2);while(1){if((c[k>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;c[v>>
;2]=(c[v>>2]|0)+2;b[c[k>>2]>>1]=(d[(c[v>>2]|0)+-2>>0]&65535)<<8
|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0;c[v>>2]=(c[v>>2]|0)+2;b[(c[k>>
;2]|0)+2>>1]=a[(c[v>>2]|0)+-2>>0]<<16>>16<<8|d[(c[v>>2]|0)+-
2+1>>0]<<0;c[k>>2]=(c[k>>2]|0)+4}c[l>>2]=c[c[w>>2]>>2];c[n
>>2]=(c[l>>2]|0)+(((c[t>>2]|0)<(c[u>>2]|0)?c[t>>2]|0:c[u>>2]|0)
x3c;<1);while(1){if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[v>
x3e;2]=(c[v>>2]|0)+2;b[c[l>>2]>>1]=a[(c[v>>2]|0)+-2>>0]<<16>>
;16<<8|d[(c[v>>2]|0)+-2+1>>0]<<0;c[l>>2]=(c[l>>2]|0)+2}a:do if((c[u
x3e;>2]|0)>0?(c[t>>2]|0)>(c[u>>2]|0):0){b[A>>1]=b[(c[c[w>>2]>>2
]|0)+((c[u>>2]|0)-1<<1)>>1]|0;c[n>>2]=(c[c[w>>2]>>2]|0)+(c[t>
x3e;2]<<1);while(1){if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a
;b[c[l>>2]>>1]=b[A>>1]|0;c[l>>2]=(c[l>>2]|0)+2}}while(0);ge(c[j>>2]|
0);g=c[s>>2]&65535;f=c[B>>2]|0;if(a[C>>0]|0){b[f+300+34>>1]=g;D=c[D>>2]|0
;i=E;return D|0}else{b[f+216+34>>1]=g;D=c[D>>2]|0;i=E;return D|0}return 0}function vl(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;s=i;i=i+64|0;e=s+48|0;k=s+44|0;r=s+40|0;n=s+36|0;j=s+32|0;g=s+28|0;q=s+24
|0;h=s+20|0;f=s+16|0;p=s+12|0;l=s+8|0;o=s+4|0;m=s;c[e>>2]=a;c[k>>2]=d;c[r>>2]=0;c[n>>2]=
c[(c[k>>2]|0)+28>>2];c[(c[e>>2]|0)+612>>2]=0;c[r>>2]=Wa[c[(c[e>>2]|0
)+508>>2]&31](c[e>>2]|0,1161972803,c[k>>2]|0,0)|0;if(c[r>>2]|0)c[r>>2]=Wa
[c[(c[e>>2]|0)+508>>2]&31](c[e>>2]|0,1651273571,c[k>>2]|0,0)|0;if(c[r>>2]|
0){r=c[r>>2]|0;i=s;return r|0}c[q>>2]=Mc(c[k>>2]|0)|0;d=ee(c[k>>2]|0,8)|0;c[r>>
;2]=d;if(d|0){r=c[r>>2]|0;i=s;return r|0}c[j>>2]=je(c[k>>2]|0)|0;c[g>>2]=je(c[k>>
;2]|0)|0;ge(c[k>>2]|0);if((c[j>>2]|0)!=131072|(c[g>>2]|0)>>>0>=65536){c[r>
;>2]=3;r=c[r>>2]|0;i=s;return r|0}j=hc(c[n>>2]|0,48,0,c[g>>2]|0,0,r)|0;c[(c[e>>2]|0
)+616>>2]=j;if(c[r>>2]|0){r=c[r>>2]|0;i=s;return r|0}c[(c[e>>2]|0)+612>>2]=c[g
>>2];c[h>>2]=c[(c[e>>2]|0)+616>>2];c[f>>2]=c[g>>2];j=ee(c[k>>
;2]|0,(c[g>>2]|0)*48|0)|0;c[r>>2]=j;if(j|0){r=c[r>>2]|0;i=s;return r|0}while(1){if((c[f>>
;2]|0)>>>0<=0)break;j=le(c[k>>2]|0,8288,c[h>>2]|0)|0;c[r>>2]=j;if(j|0)break;j=
le(c[k>>2]|0,8308,(c[h>>2]|0)+16|0)|0;c[r>>2]=j;if(j|0)break;j=le(c[k>>2]|0,8308,(c[h>
;>2]|0)+28|0)|0;c[r>>2]=j;if(j|0)break;j=le(c[k>>2]|0,8360,c[h>>2]|0)|0;c[r>>2]=j;if
(j|0)break;c[f>>2]=(c[f>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+48}ge(c[k>>2]|0);c[p>
;>2]=c[(c[e>>2]|0)+616>>2];c[l>>2]=c[g>>2];a:while(1){if((c[l>>2]|0)>
;>>0<=0){e=30;break}c[m>>2]=c[c[p>>2]>>2];j=Kc(c[k>>2]|0,(c[q>>
2]|0)+(c[(c[p>>2]|0)+8>>2]|0)|0)|0;c[r>>2]=j;if(j|0){e=30;break}j=ee(c[k>>2]|0,c[c[p>
;>2]>>2]<<3)|0;c[r>>2]=j;if(j|0){e=30;break}j=hc(c[n>>2]|0,40,0,c[c[p>>2]
x3e;>2]|0,0,r)|0;c[(c[p>>2]|0)+4>>2]=j;if(c[r>>2]|0){e=30;break}c[o>>2]=c[(c[p>
;>2]|0)+4>>2];while(1){e=c[k>>2]|0;if((c[m>>2]|0)>>>0<=0)break;j=ie(e)|0;
b[c[o>>2]>>1]=j;j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+2>>1]=j;j=(c[q>>2]|0
)+(c[(c[p>>2]|0)+8>>2]|0)|0;j=j+(je(c[k>>2]|0)|0)|0;c[(c[o>>2]|0)+36>>2]=j;c[m
>>2]=(c[m>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+40}ge(e);c[m>>2]=c[c[p>>2]
x3e;>2];c[o>>2]=c[(c[p>>2]|0)+4>>2];while(1){if((c[m>>2]|0)>>>0<
;=0)break;j=Kc(c[k>>2]|0,c[(c[o>>2]|0)+36>>2]|0)|0;c[r>>2]=j;if(j|0){e=30;break a}j=ee(c
[k>>2]|0,8)|0;c[r>>2]=j;if(j|0){e=30;break a}j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+4>>
;1]=j;j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+6>>1]=j;j=je(c[k>>2]|0)|0;c[(c[o>>2]|0)+
8>>2]=j;ge(c[k>>2]|0);c[r>>2]=wl(c[o>>2]|0,c[k>>2]|0)|0;if(c[r>>2]|0
){e=30;break a}c[m>>2]=(c[m>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+40}c[l>>2]=(c[l>
;>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+48}if((e|0)==30){r=c[r>>2]|0;i=s;return r|0}return 0}function
wl(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;p=i;i=i+32|0;j=p+24|0;k=p+20|0;l=p+16|0;g=p+12|0;o=p+8|0;n=p+4|0;h=p
;m=p+28|0;c[j>>2]=b;c[k>>2]=f;c[g>>2]=c[(c[k>>2]|0)+28>>2];switch(e[(c[j>
x3e;2]|0)+4>>1]|0|0){case 3:case 1:{a[m>>0]=(e[(c[j>>2]|0)+4>>1]|0|0)==1;if((e[(c[j>
;>2]|0)+2>>1]|0|0)<(e[c[j>>2]>>1]|0|0)){c[l>>2]=3;o=c[l>>2]|0;i=p;return
o|0}c[o>>2]=(e[(c[j>>2]|0)+2>>1]|0)-(e[c[j>>2]>>1]|0)+1;c[(c[j>>2]|
0)+24>>2]=c[o>>2];c[o>>2]=(c[o>>2]|0)+1;c[h>>2]=d[m>>0]|0|0?4:2;f=hc
(c[g>>2]|0,4,0,c[o>>2]|0,0,l)|0;c[(c[j>>2]|0)+28>>2]=f;if(c[l>>2]|0){o=c[l>
;>2]|0;i=p;return o|0}f=ee(c[k>>2]|0,_(c[o>>2]|0,c[h>>2]|0)|0)|0;c[l>>2]=f;if(f|0){
o=c[l>>2]|0;i=p;return o|0}c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0>=(c[o>
x3e;2]|0)>>>0)break;b=c[(c[j>>2]|0)+8>>2]|0;g=c[k>>2]|0;if(d[m>>0]|0|0)g=
je(g)|0;else g=(ie(g)|0)&65535;c[(c[(c[j>>2]|0)+28>>2]|0)+(c[n>>2]<<2)>>2
]=b+g;c[n>>2]=(c[n>>2]|0)+1}ge(c[k>>2]|0);o=c[l>>2]|0;i=p;return o|0}case 2:{c[l>
x3e;2]=xl(c[j>>2]|0,c[k>>2]|0)|0;o=c[l>>2]|0;i=p;return o|0}case 4:{c[l>>2]=yl(c[j>
x3e;2]|0,c[k>>2]|0,1)|0;o=c[l>>2]|0;i=p;return o|0}case 5:{c[l>>2]=xl(c[j>>2]|0,c[k>
;>2]|0)|0;if(c[l>>2]|0){o=c[l>>2]|0;i=p;return o|0}c[l>>2]=yl(c[j>>2]|0,c[k>
x3e;2]|0,0)|0;o=c[l>>2]|0;i=p;return o|0}default:{c[l>>2]=3;o=c[l>>2]|0;i=p;return o|0}}return 0}function
xl(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;b
=Oc(c[f>>2]|0,g)|0;c[(c[e>>2]|0)+12>>2]=b;if(c[g>>2]|0){c[d>>2]=c[g>>
;2];b=c[d>>2]|0;i=h;return b|0}else{b=le(c[f>>2]|0,8200,(c[e>>2]|0)+16|0)|0;c[g>>2]=b;c[
d>>2]=(b|0)!=0&1;b=c[d>>2]|0;i=h;return b|0}return 0}function yl(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;p=i;i=i+32|0;j=p+24|0;k=p+20|0;l=p+28|0;n=p+16|0;m=p+12|0;o=p+8|0;h=p+4|0;g=p;c[j>>2]=d;c[k
>>2]=e;a[l>>0]=f;c[g>>2]=c[(c[k>>2]|0)+28>>2];c[m>>2]=Oc(c[k>
x3e;2]|0,n)|0;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}c[(c[j>>2]|0)+24>>2]=c[m>>
;2];do if(a[l>>0]|0){e=hc(c[g>>2]|0,4,0,c[m>>2]|0,0,n)|0;c[(c[j>>2]|0)+28>>2]=
e;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}else{c[h>>2]=c[m>>2]<<2;break}}else
c[h>>2]=c[m>>2]<<1;while(0);e=hc(c[g>>2]|0,2,0,c[m>>2]|0,0,n)|0;c[(c[j>
x3e;2]|0)+32>>2]=e;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}e=ee(c[k>>2]|0,c[h>>
;2]|0)|0;c[n>>2]=e;if(e|0){o=c[n>>2]|0;i=p;return o|0}c[o>>2]=0;while(1){f=c[k>>2]|0;if((
c[o>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;e=ie(f)|0;b[(c[(c[j>>2]|0
)+32>>2]|0)+(c[o>>2]<<1)>>1]=e;if(a[l>>0]|0){e=c[(c[j>>2]|0)+8>
x3e;2]|0;e=e+((ie(c[k>>2]|0)|0)&65535)|0;c[(c[(c[j>>2]|0)+28>>2]|0)+(c[o>>2]<
x3c;2)>>2]=e}c[o>>2]=(c[o>>2]|0)+1}ge(f);o=c[n>>2]|0;i=p;return o|0}function zl(a){a=a|0
;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;b=j+20|0;d=j+16|0;g=j+12|0;h=j+8|0;e=j+4|0;f=j;c[b>>2]=a;c[d>>
2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[b>>2]|0)+616>>2];c[h>>2]=(c[g
x3e;>2]|0)+((c[(c[b>>2]|0)+612>>2]|0)*48|0);if(!(c[g>>2]|0)){h=c[b>>2]|0;h=h+612|0;
c[h>>2]=0;i=j;return}while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>>
;0)break;c[e>>2]=c[(c[g>>2]|0)+4>>2];c[f>>2]=(c[e>>2]|0)+((c[c[g>>2]
x3e;>2]|0)*40|0);a:do if(c[e>>2]|0)while(1){if((c[e>>2]|0)>>>0>=(c[f>>2]|
0)>>>0)break a;Fb(c[d>>2]|0,c[(c[e>>2]|0)+28>>2]|0);c[(c[e>>2]|0)+28>
;>2]=0;Fb(c[d>>2]|0,c[(c[e>>2]|0)+32>>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[e>
;>2]=(c[e>>2]|0)+40}while(0);Fb(c[d>>2]|0,c[(c[g>>2]|0)+4>>2]|0);c[(c[g>>
2]|0)+4>>2]=0;c[c[g>>2]>>2]=0;c[g>>2]=(c[g>>2]|0)+48}Fb(c[d>>2]|0,c[(
c[b>>2]|0)+616>>2]|0);c[(c[b>>2]|0)+616>>2]=0;h=c[b>>2]|0;h=h+612|0;c[h>
x3e;2]=0;i=j;return}function Al(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;n=i;i=i+32|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+
4|0;m=n;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;if((c[k>>2]|0)>>>0>=(c[(c[j>
;>2]|0)+612>>2]|0)>>>0){c[h>>2]=6;f=c[h>>2]|0;i=n;return f|0}else{c[m>>
;2]=(c[(c[j>>2]|0)+616>>2]|0)+((c[k>>2]|0)*48|0);b[c[l>>2]>>1]=d[(c[m>>
;2]|0)+44>>0]|0;b[(c[l>>2]|0)+2>>1]=d[(c[m>>2]|0)+45>>0]|0;c[(c[l>>2
]|0)+12>>2]=a[(c[m>>2]|0)+16>>0]<<6;c[(c[l>>2]|0)+16>>2]=a[(c[m>
;>2]|0)+16+1>>0]<<6;c[(c[l>>2]|0)+24>>2]=(a[(c[m>>2]|0)+16+6>>0
]|0)+(d[(c[m>>2]|0)+16+2>>0]|0)+(a[(c[m>>2]|0)+16+7>>0]|0)<<6;c[(c[l>>
;2]|0)+20>>2]=(c[(c[l>>2]|0)+12>>2]|0)-(c[(c[l>>2]|0)+16>>2]|0);c[h>>
;2]=0;f=c[h>>2]|0;i=n;return f|0}return 0}function Bl(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;s=i;i=i+48|0;l=s+32|0;t=s+28|0;w=s+38|0;m=s+24|0;n=s+20|0;o=s+16|0;v=s+12|0;u=s+8|0;p=s+4|0;r=s;q=s
+36|0;c[t>>2]=f;a[w>>0]=g;c[m>>2]=h;c[n>>2]=j;c[o>>2]=k;c[v>>2]=(c[t
>>2]|0)+300;c[u>>2]=(c[t>>2]|0)+216;c[p>>2]=d[w>>0]|0|0?c[v>>2]|0:c[
u>>2]|0;b[q>>1]=b[(c[p>>2]|0)+34>>1]|0;if((e[q>>1]|0|0?c[(c[p>>2]|0)+
36>>2]|0:0)?(c[m>>2]|0)>>>0<(e[(c[t>>2]|0)+260+4>>1]|0)>>
x3e;0:0){if((c[m>>2]|0)>>>0<(e[q>>1]|0)>>>0){c[r>>2]=(c[(c[p>
;>2]|0)+36>>2]|0)+(c[m>>2]<<2);b[c[n>>2]>>1]=b[(c[r>>2]|0)+2>
;>1]|0;b[c[o>>2]>>1]=b[c[r>>2]>>1]|0}else{b[c[n>>2]>>1]=b[(c[(c
[p>>2]|0)+40>>2]|0)+((c[m>>2]|0)-(e[q>>1]|0)<<1)>>1]|0;b[c[o>
x3e;2]>>1]=b[(c[(c[p>>2]|0)+36>>2]|0)+((e[q>>1]|0)-1<<2)>>1]|0}c[l
x3e;>2]=0;w=c[l>>2]|0;i=s;return w|0}b[c[o>>2]>>1]=0;b[c[n>>2]>>1]=0;c[l
x3e;>2]=0;w=c[l>>2]|0;i=s;return w|0}function Cl(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;Dl(c[f>>2]|0,c[e>>2]|0);i=d;return 0}function Dl(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)+112>>2]=c[f>>
2];c[(c[e>>2]|0)+104>>2]=c[(c[f>>2]|0)+4+24>>2];i=d;return}function El(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[f>>2]=c[f>>2];c[e>
x3e;2]=c[e>>2];i=d;return 0}function Fl(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+16|0;f=k+12|0;h=
k+8|0;j=k+4|0;g=k;c[d>>2]=a;c[f>>2]=b;c[h>>2]=0;c[j>>2]=c[(c[f>>2]|0)+92>
x3e;2];c[(c[d>>2]|0)+36>>2]=e[(c[f>>2]|0)+68>>1];c[g>>2]=0;while(1){if(!(c[3616
+(c[g>>2]<<2)>>2]|0))break;c[h>>2]=Id(c[f>>2]|0,c[3616+(c[g>>2]<
;<2)>>2]|0)|0;if(!(c[h>>2]|0))break;c[g>>2]=(c[g>>2]|0)+1}if(c[h>>2]|0){a
=c[f>>2]|0;j=c[j>>2]|0;Jd(a,j)|0;i=k;return 0}Gl(c[d>>2]|0,c[f>>2]|0,111);Pl(c[d>
x3e;2]|0,c[f>>2]|0);Rl(c[d>>2]|0,c[f>>2]|0);a=c[f>>2]|0;j=c[j>>2]|0;Jd(a,j)|0;
i=k;return 0}function Gl(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,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=
0;y=i;i=i+1024|0;t=y+1016|0;g=y+1012|0;z=y+1008|0;w=y+884|0;m=y+880|0;n=y+876|0;v=y+872|0;l=y+40|0;r=y+36|0;j=y+32|0;h=y+28|0;s=
y+24|0;o=y+20|0;p=y+16|0;q=y+12|0;k=y+8|0;u=y+4|0;x=y;c[t>>2]=d;c[g>>2]=e;c[z>>2]=f;Hl(w,c[(c[g>
;>2]|0)+100>>2]|0);c[(c[t>>2]|0)+40+8>>2]=0;c[(c[t>>2]|0)+40+396+8>>2]=0;
c[r>>2]=l+4;c[n>>2]=Dc(c[g>>2]|0,c[z>>2]|0)|0;a:do if(((c[n>>2]|0?(c[m>
x3e;2]=Cb(c[g>>2]|0,c[n>>2]|0,1)|0,(c[m>>2]|0)==0):0)?(b[(c[(c[g>>2]|0)+84>>2]|
0)+108+2>>1]|0)>0:0)?(Ns(l|0,0,832)|0,c[l+36>>2]=c[(c[t>>2]|0)+36>>2],c[(c[r>
x3e;2]|0)+8>>2]=65536,c[(c[r>>2]|0)+4>>2]=65536,c[(c[r>>2]|0)+16>>2]=0,c[(c[r
x3e;>2]|0)+12>>2]=0,c[c[r>>2]>>2]=c[g>>2],c[(c[r>>2]|0)+20>>2]=
0,c[(c[r>>2]|0)+24>>2]=0,Dl(w,l),c[m>>2]=Il(w,(c[(c[g>>2]|0)+84>>2]|0)+108|0)|
0,(c[m>>2]|0)==0):0){c[v>>2]=0;while(1){if((c[v>>2]|0)>=2)break a;c[j>>2]=(c[t>
;>2]|0)+40+((c[v>>2]|0)*396|0);c[h>>2]=w+48+((c[v>>2]|0)*28|0);c[q>>2]=0;c[m>
x3e;2]=Kl(w,c[v>>2]|0)|0;if(c[m>>2]|0)break a;Ml(w,c[v>>2]|0);c[s>>2]=c[(c[h>>
2]|0)+8>>2];c[o>>2]=(c[s>>2]|0)+((c[c[h>>2]>>2]|0)*52|0);while(1){if((c[s>
;>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[p>>2]=c[(c[s>>2]|0)+20
>>2];if((c[p>>2]|0?(c[(c[p>>2]|0)+20>>2]|0)==(c[s>>2]|0):0)?(c[p>>2]|
0)>>>0>(c[s>>2]|0)>>>0:0){c[k>>2]=(b[(c[s>>2]|0)+2>>1
]|0)-(b[(c[p>>2]|0)+2>>1]|0);if((c[k>>2]|0)<0)c[k>>2]=0-(c[k>>2]|0);if((c
[q>>2]|0)>>>0<16){r=c[k>>2]|0;z=c[q>>2]|0;c[q>>2]=z+1;c[(c[j>
x3e;2]|0)+12+(z*12|0)>>2]=r}}c[s>>2]=(c[s>>2]|0)+52}Nl(c[q>>2]|0,(c[j>>2]|0)+12
|0);c[(c[j>>2]|0)+8>>2]=c[q>>2];c[v>>2]=(c[v>>2]|0)+1}}while(0);c[v>>
;2]=0;while(1){if((c[v>>2]|0)>=2)break;c[u>>2]=(c[t>>2]|0)+40+((c[v>>2]|0)*396|0);if
((c[(c[u>>2]|0)+8>>2]|0)>>>0>0)g=c[(c[u>>2]|0)+12>>2]|0;else g=((c[(
c[t>>2]|0)+36>>2]|0)*50|0)/2048|0;c[x>>2]=g;c[(c[u>>2]|0)+204>>2]=(c[x>
x3e;2]|0)/5|0;c[(c[u>>2]|0)+208>>2]=c[x>>2];a[(c[u>>2]|0)+212>>0]=0;c[v>
x3e;2]=(c[v>>2]|0)+1}Ol(w);i=y;return}function Hl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>
x3e;2]=a;c[e>>2]=b;a=c[d>>2]|0;b=a+124|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[c[d>
x3e;2]>>2]=c[e>>2];i=f;return}function Il(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,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;M=i;i=i+128|0;g=M+112|0;h=M+108|0;A=M+104|0;z
=M+100|0;n=M+96|0;m=M+92|0;s=M+88|0;u=M+84|0;r=M+80|0;t=M+76|0;l=M+72|0;I=M+68|0;J=M+64|0;q=M+60|0;p=M+56|0;k=M+52|0;o=M+48|0;j=
M+44|0;v=M+40|0;w=M+36|0;x=M+32|0;y=M+116|0;B=M+28|0;K=M+24|0;D=M+20|0;E=M+16|0;C=M+12|0;F=M+8|0;G=M+4|0;H=M;c[g>>2]=d
;c[h>>2]=f;c[A>>2]=0;c[s>>2]=c[(c[g>>2]|0)+4>>2];c[u>>2]=c[(c[g>
;>2]|0)+12>>2];c[r>>2]=c[(c[g>>2]|0)+8>>2];c[t>>2]=c[(c[g>>2]|0
)+16>>2];c[l>>2]=c[c[g>>2]>>2];c[(c[g>>2]|0)+28>>2]=0;c[(c[g>
x3e;2]|0)+40>>2]=0;c[(c[g>>2]|0)+48>>2]=0;c[(c[g>>2]|0)+48+12>>2]=0;c[(c[g>
;>2]|0)+48+28>>2]=0;c[(c[g>>2]|0)+48+28+12>>2]=0;c[m>>2]=b[c[h>>2]>
x3e;1];c[n>>2]=c[(c[g>>2]|0)+36>>2];do if((c[m>>2]|0)>>>0>(c[n>
x3e;2]|0)>>>0){c[m>>2]=(c[m>>2]|0)+3&-4;f=hc(c[l>>2]|0,4,c[n>>2]|0,c
[m>>2]|0,c[(c[g>>2]|0)+44>>2]|0,A)|0;c[(c[g>>2]|0)+44>>2]=f;if(c[A>>
2]|0){L=c[A>>2]|0;i=M;return L|0}else{c[(c[g>>2]|0)+36>>2]=c[m>>2];break}}while(0);c[m
x3e;>2]=(b[(c[h>>2]|0)+2>>1]|0)+2;c[n>>2]=c[(c[g>>2]|0)+24>>2];do if((c[m
>>2]|0)>>>0>(c[n>>2]|0)>>>0){c[m>>2]=(c[m>>2]|0)+2+7
x26;-8;f=hc(c[l>>2]|0,40,c[n>>2]|0,c[m>>2]|0,c[(c[g>>2]|0)+32>>2]|0,A)|0;c[(c[
g>>2]|0)+32>>2]=f;if(c[A>>2]|0){L=c[A>>2]|0;i=M;return L|0}else{c[(c[g>>2]|0)+
24>>2]=c[m>>2];break}}while(0);c[(c[g>>2]|0)+28>>2]=b[(c[h>>2]|0)+2>>
;1];c[(c[g>>2]|0)+40>>2]=b[c[h>>2]>>1];c[(c[g>>2]|0)+48+24>>2]=2;c[(
c[g>>2]|0)+48+28+24>>2]=-1;if(($d(c[h>>2]|0)|0)==1){c[(c[g>>2]|0)+48+24>>2]=-2
;c[(c[g>>2]|0)+48+28+24>>2]=1}c[(c[g>>2]|0)+4>>2]=c[s>>2];c[(c[g>>2]|
0)+12>>2]=c[u>>2];c[(c[g>>2]|0)+8>>2]=c[r>>2];c[(c[g>>2]|0)+16>
x3e;2]=c[t>>2];c[(c[g>>2]|0)+116>>2]=0;c[(c[g>>2]|0)+120>>2]=0;c[z>>
2]=c[(c[g>>2]|0)+32>>2];if(!(c[(c[g>>2]|0)+28>>2]|0)){L=c[A>>2]|0;i=M;return L
|0}c[J>>2]=(c[z>>2]|0)+((c[(c[g>>2]|0)+28>>2]|0)*40|0);c[q>>2]=c[(c[h>>
;2]|0)+4>>2];c[p>>2]=c[(c[h>>2]|0)+8>>2];c[k>>2]=(c[z>>2]|0)+((b[c[(
c[h>>2]|0)+12>>2]>>1]|0)*40|0);c[o>>2]=c[k>>2];c[j>>2]=0;c[I>
x3e;2]=c[z>>2];while(1){if((c[I>>2]|0)>>>0>=(c[J>>2]|0)>>>0)break
;b[(c[I>>2]|0)+12>>1]=c[c[q>>2]>>2];b[(c[I>>2]|0)+14>>1]=c[(c[q>
;>2]|0)+4>>2];f=Mb(c[c[q>>2]>>2]|0,c[s>>2]|0)|0;f=f+(c[r>>2]|0)|0;c[(c[I
x3e;>2]|0)+16>>2]=f;c[(c[I>>2]|0)+4>>2]=f;f=Mb(c[(c[q>>2]|0)+4>>2]|0,c[u
x3e;>2]|0)|0;f=f+(c[t>>2]|0)|0;c[(c[I>>2]|0)+20>>2]=f;c[(c[I>>2]|0)+8>>2]=
f;switch(a[c[p>>2]>>0]&3|0){case 0:{b[c[I>>2]>>1]=1;break}case 2:{b[c[I>>
2]>>1]=2;break}default:b[c[I>>2]>>1]=0}c[(c[I>>2]|0)+36>>2]=c[o>>2];
c[(c[o>>2]|0)+32>>2]=c[I>>2];c[o>>2]=c[I>>2];if((c[I>>2]|0)==(c[k>
;>2]|0)?(f=(c[j>>2]|0)+1|0,c[j>>2]=f,(f|0)<(b[c[h>>2]>>1]|0)):0){c[k>>
;2]=(c[z>>2]|0)+((b[(c[(c[h>>2]|0)+12>>2]|0)+(c[j>>2]<<1)>>1]|0)*40|
0);c[o>>2]=c[k>>2]}c[I>>2]=(c[I>>2]|0)+40;c[q>>2]=(c[q>>2]|0)+8;c[p
x3e;>2]=(c[p>>2]|0)+1}c[v>>2]=c[(c[g>>2]|0)+44>>2];c[w>>2]=(c[v>>
;2]|0)+(c[(c[g>>2]|0)+40>>2]<<2);c[x>>2]=c[(c[h>>2]|0)+12>>2];b[y>
;>1]=0;while(1){g=c[z>>2]|0;if((c[v>>2]|0)>>>0>=(c[w>>2]|0)>>
x3e;0)break;c[c[v>>2]>>2]=g+((b[y>>1]|0)*40|0);b[y>>1]=(b[c[x>>2]>>1
]|0)+1;c[v>>2]=(c[v>>2]|0)+4;c[x>>2]=(c[x>>2]|0)+2}c[B>>2]=g;c[K>>2]=
0;c[D>>2]=0;c[E>>2]=0;c[C>>2]=4;c[I>>2]=c[z>>2];while(1){if((c[I>>2]|
0)>>>0>=(c[J>>2]|0)>>>0)break;if((c[I>>2]|0)==(c[B>>2]|0)){c[K
x3e;>2]=c[(c[B>>2]|0)+36>>2];c[D>>2]=(b[(c[B>>2]|0)+12>>1]|0)-(b[(c[K>
;>2]|0)+12>>1]|0);c[E>>2]=(b[(c[B>>2]|0)+14>>1]|0)-(b[(c[K>>2]|0)+14>
;>1]|0);c[C>>2]=Jl(c[D>>2]|0,c[E>>2]|0)|0;c[B>>2]=(c[K>>2]|0)+40}a[(c[I
x3e;>2]|0)+2>>0]=c[C>>2];c[F>>2]=c[(c[I>>2]|0)+32>>2];c[G>>2]=(
b[(c[F>>2]|0)+12>>1]|0)-(b[(c[I>>2]|0)+12>>1]|0);c[H>>2]=(b[(c[F>>2]|
0)+14>>1]|0)-(b[(c[I>>2]|0)+14>>1]|0);c[C>>2]=Jl(c[G>>2]|0,c[H>>2]|0
)|0;a[(c[I>>2]|0)+3>>0]=c[C>>2];do if(!(e[c[I>>2]>>1]&3|0)){g=c[I>
x3e;2]|0;if((a[(c[I>>2]|0)+3>>0]|0)!=(a[(c[I>>2]|0)+2>>0]|0))if((a[g+2>>0]|0)==(
0-(a[(c[I>>2]|0)+3>>0]|0)|0)){L=28;break}else break;if(!((a[g+3>>0]|0)==4?!($b(c[D>>2]|0
,c[E>>2]|0,c[G>>2]|0,c[H>>2]|0)|0):0))L=28}else L=28;while(0);if((L|0)==28){L=0;z=c[I>>2
]|0;b[z>>1]=e[z>>1]|256}c[D>>2]=c[G>>2];c[E>>2]=c[H>>2];c[K>>
;2]=c[I>>2];c[I>>2]=(c[I>>2]|0)+40}L=c[A>>2]|0;i=M;return L|0}function Jl(a,b){a=a|0;b=b
|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;g=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;a=(c[e
>>2]|0)>=(0-(c[d>>2]|0)|0);do if((c[e>>2]|0)>=(c[d>>2]|0))if(a){c[f>>
;2]=2;c[g>>2]=c[e>>2];c[h>>2]=c[d>>2];break}else{c[f>>2]=-1;c[g>>2]=
0-(c[d>>2]|0);c[h>>2]=c[e>>2];break}else if(a){c[f>>2]=1;c[g>>2]=c[d>>
;2];c[h>>2]=c[e>>2];break}else{c[f>>2]=-2;c[g>>2]=c[e>>2];c[h>>2]=c[
d>>2];break}while(0);c[h>>2]=(c[h>>2]|0)*14;d=c[g>>2]|0;e=c[h>>2]|0;if((((c[g
x3e;>2]|0)<0?0-d|0:d)|0)>(((c[h>>2]|0)<0?0-e|0:e)|0)){h=c[f>>2]|0;i=j;return h|0}c[f>
;>2]=4;h=c[f>>2]|0;i=j;return h|0}function Kl(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;P=i;i=i+176|0;j=P+164|0;k=P+160|0;p=P+
156|0;v=P+152|0;G=P+148|0;N=P+144|0;A=P+92|0;q=P+88|0;r=P+84|0;t=P+80|0;B=P+76|0;n=P+72|0;l=P+68|0;o=P+64|0;m=P+60|0;z=P+56|0;s=
P+52|0;x=P+48|0;w=P+44|0;u=P+40|0;y=P+168|0;D=P+36|0;E=P+32|0;C=P+28|0;O=P+24|0;H=P+20|0;J=P+16|0;I=P+12|0;K=P+8|0;L=P+4|0;M=P;c
[j>>2]=f;c[k>>2]=g;c[p>>2]=(c[j>>2]|0)+48+((c[k>>2]|0)*28|0);c[v>>2]=
c[c[j>>2]>>2];c[G>>2]=0;c[N>>2]=0;c[q>>2]=c[(c[j>>2]|0)+44>>
;2];c[r>>2]=(c[q>>2]|0)+(c[(c[j>>2]|0)+40>>2]<<2);f=A;h=f+52|0;do{c[f>>
;2]=0;f=f+4|0}while((f|0)<(h|0));c[A+32>>2]=32e3;a[A>>0]=0;g=c[(c[p>>2]|0)+24>>2]|0
;c[t>>2]=(c[(c[p>>2]|0)+24>>2]|0)<0?0-g|0:g;c[B>>2]=c[t>>2];c[c[p>
x3e;2]>>2]=0;g=c[(c[j>>2]|0)+32>>2]|0;a:do if(!(c[k>>2]|0)){c[n>>2]=g;c[l>
;>2]=(c[n>>2]|0)+((c[(c[j>>2]|0)+28>>2]|0)*40|0);while(1){if((c[n>>2]|0)>>
;>0>=(c[l>>2]|0)>>>0)break a;c[(c[n>>2]|0)+24>>2]=b[(c[n>>2]|0)+
12>>1];c[(c[n>>2]|0)+28>>2]=b[(c[n>>2]|0)+14>>1];c[n>>2]=(c[n>
x3e;2]|0)+40}}else{c[o>>2]=g;c[m>>2]=(c[o>>2]|0)+((c[(c[j>>2]|0)+28>>2]|0)*40|
0);while(1){if((c[o>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break a;c[(c[o>>
;2]|0)+24>>2]=b[(c[o>>2]|0)+14>>1];c[(c[o>>2]|0)+28>>2]=b[(c[o>>2]|0
)+12>>1];c[o>>2]=(c[o>>2]|0)+40}}while(0);b:while(1){if((c[q>>2]|0)>>>0
x3e;=(c[r>>2]|0)>>>0)break;c[z>>2]=c[c[q>>2]>>2];c[s>>2]=c[(c[z
>>2]|0)+36>>2];c[x>>2]=0;c[w>>2]=32e3;c[u>>2]=-32e3;c:do if((c[z>>2]|
0)!=(c[s>>2]|0)){o=a[(c[s>>2]|0)+3>>0]|0;d:do if((((a[(c[s>>2]|0)+3>>0]|0)<
;0?0-o|0:o)|0)==(c[t>>2]|0)?(o=a[(c[z>>2]|0)+3>>0]|0,(((a[(c[z>>2]|0)+3>>0]|0)
x3c;0?0-o|0:o)|0)==(c[t>>2]|0)):0){c[s>>2]=c[z>>2];while(1){c[z>>2]=c[(c[z>>2]|
0)+36>>2];o=a[(c[z>>2]|0)+3>>0]|0;g=c[z>>2]|0;if((((a[(c[z>>2]|0)+3>>
;0]|0)<0?0-o|0:o)|0)!=(c[t>>2]|0))break;if((g|0)==(c[s>>2]|0))break d}c[z>>2]=c[g+32>>
;2]}while(0);c[s>>2]=c[z>>2];a[y>>0]=0;while(1){do if(c[x>>2]|0){c[D>>2]=c[(c[
z>>2]|0)+24>>2];if((c[D>>2]|0)<(c[w>>2]|0))c[w>>2]=c[D>>2];if((
c[D>>2]|0)>(c[u>>2]|0))c[u>>2]=c[D>>2];if((a[(c[z>>2]|0)+3>>0]|
0)==(c[B>>2]|0)?(c[z>>2]|0)!=(c[s>>2]|0):0)break;c[(c[N>>2]|0)+44>>2]=c[z>
;>2];b[(c[N>>2]|0)+2>>1]=(c[w>>2]|0)+(c[u>>2]|0)>>1;if((e[c[(c[N>>
;2]|0)+40>>2]>>1]|e[c[z>>2]>>1])&3|0){o=c[N>>2]|0;a[o>>0]=d[o
x3e;>0]|1}o=c[(c[z>>2]|0)+28>>2]|0;c[u>>2]=o;c[w>>2]=o;c[E>>2]=c[(c[(c[N
x3e;>2]|0)+40>>2]|0)+28>>2];if((c[E>>2]|0)<(c[w>>2]|0))c[w>>2]=c[E
x3e;>2];if((c[E>>2]|0)>(c[u>>2]|0))c[u>>2]=c[E>>2];b[(c[N>>2]|0)+4
x3e;>1]=c[w>>2];b[(c[N>>2]|0)+6>>1]=c[u>>2];b[(c[N>>2]|0)+8>>1]=(
b[(c[N>>2]|0)+6>>1]|0)-(b[(c[N>>2]|0)+4>>1]|0);c[x>>2]=0;c[N>>2]=0}while
(0);if((c[z>>2]|0)==(c[s>>2]|0)){if(a[y>>0]|0)break c;a[y>>0]=1}if((c[x>>2]|0)==
0?(o=a[(c[z>>2]|0)+3>>0]|0,(((a[(c[z>>2]|0)+3>>0]|0)<0?0-o|0:o)|0)==(c[t>>
;2]|0)):0){c[B>>2]=a[(c[z>>2]|0)+3>>0];c[G>>2]=Ll(c[p>>2]|0,c[v>>2]|
0,N)|0;if(c[G>>2]|0){F=53;break b}f=c[N>>2]|0;g=A;h=f+52|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=
g+4|0}while((f|0)<(h|0));a[(c[N>>2]|0)+1>>0]=c[B>>2];o=c[(c[z>>2]|0)+24>>
2]|0;c[u>>2]=o;c[w>>2]=o;c[(c[N>>2]|0)+40>>2]=c[z>>2];c[(c[N>>2]|0)+
44>>2]=c[z>>2];c[(c[N>>2]|0)+48>>2]=c[q>>2];c[x>>2]=1}c[z>>
;2]=c[(c[z>>2]|0)+32>>2]}}while(0);c[q>>2]=(c[q>>2]|0)+4}if((F|0)==53){O=c[G>>
2]|0;i=P;return O|0}c[C>>2]=c[(c[p>>2]|0)+8>>2];c[O>>2]=(c[C>>2]|0)+((c[c[p>
;>2]>>2]|0)*52|0);c[N>>2]=c[C>>2];while(1){if((c[N>>2]|0)>>>0>=(
c[O>>2]|0)>>>0)break;c[H>>2]=c[(c[N>>2]|0)+40>>2];c[J>>2]=c[(c[
N>>2]|0)+44>>2];c[I>>2]=c[(c[H>>2]|0)+28>>2];c[K>>2]=c[(c[J>>
;2]|0)+28>>2];do if((c[H>>2]|0)!=(c[J>>2]|0)){g=c[(c[H>>2]|0)+36>>2]|0;if((c[I
>>2]|0)<(c[K>>2]|0)){c[L>>2]=g;if((c[(c[L>>2]|0)+28>>2]|0)<(c[I>
;>2]|0))b[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8>>1]|0)+((c[I>>2]|0)-(c[(c[L
x3e;>2]|0)+28>>2]|0)>>1);c[L>>2]=c[(c[J>>2]|0)+32>>2];if((c[(c[L>>
;2]|0)+28>>2]|0)<=(c[K>>2]|0))break;b[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8
x3e;>1]|0)+((c[(c[L>>2]|0)+28>>2]|0)-(c[K>>2]|0)>>1);break}else{c[M>>2]=g
;if((c[(c[M>>2]|0)+28>>2]|0)>(c[I>>2]|0))b[(c[N>>2]|0)+8>>1]=(b[(c[N>
;>2]|0)+8>>1]|0)+((c[(c[M>>2]|0)+28>>2]|0)-(c[I>>2]|0)>>1);c[M>>
;2]=c[(c[J>>2]|0)+32>>2];if((c[(c[M>>2]|0)+28>>2]|0)>=(c[K>>2]|0))break;b
[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8>>1]|0)+((c[K>>2]|0)-(c[(c[M>>2]|
0)+28>>2]|0)>>1);break}}while(0);c[N>>2]=(c[N>>2]|0)+52}O=c[G>>2]|0;i=P;return
O|0}function Ll(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;n=i;i=i+32|0;e=n+28|0;f=n+24|0;g=n+20|0;j=n+16
|0;m=n+12|0;l=n+8|0;k=n+4|0;h=n;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=0;c[m>>2
]=0;do if((c[c[e>>2]>>2]|0)>=(c[(c[e>>2]|0)+4>>2]|0)){c[l>>2]=c[(c[e>
;>2]|0)+4>>2];c[k>>2]=c[l>>2];c[h>>2]=41297762;if((c[l>>2]|0)>=(c[h
x3e;>2]|0)){c[j>>2]=64;l=c[m>>2]|0;m=c[g>>2]|0;c[m>>2]=l;m=c[j>>2]|0;i=n;
return m|0}c[k>>2]=(c[k>>2]|0)+((c[k>>2]>>2)+4);if(!((c[k>>2]|0)>=(c[l>
;>2]|0)?(c[k>>2]|0)<=(c[h>>2]|0):0))c[k>>2]=c[h>>2];l=hc(c[f>>2]|0,52
,c[l>>2]|0,c[k>>2]|0,c[(c[e>>2]|0)+8>>2]|0,j)|0;c[(c[e>>2]|0)+8>>2]=
l;if(c[j>>2]|0){l=c[m>>2]|0;m=c[g>>2]|0;c[m>>2]=l;m=c[j>>2]|0;i=n;return m|0}else
{c[(c[e>>2]|0)+4>>2]=c[k>>2];break}}while(0);k=c[(c[e>>2]|0)+8>>2]|0;b=c[e>
;>2]|0;l=c[b>>2]|0;c[b>>2]=l+1;c[m>>2]=k+(l*52|0);l=c[m>>2]|0;m=c[g>>2]|0
;c[m>>2]=l;m=c[j>>2]|0;i=n;return m|0}function Ml(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;u=i;i=i+64|0;v=u+60|0;w=u+56|0;f=u+52|0;t=u+48|0;s=u+44|0;k=u+40|0;j=u+36|0;q=u+32|0;r=u+28|0;n=u
+24|0;o=u+20|0;g=u+16|0;m=u+12|0;l=u+8|0;h=u+4|0;p=u;c[v>>2]=d;c[w>>2]=e;c[f>>2]=(c[v>>2
]|0)+48+((c[w>>2]|0)*28|0);c[t>>2]=c[(c[f>>2]|0)+8>>2];c[s>>2]=(c[t>>
;2]|0)+((c[c[f>>2]>>2]|0)*52|0);d=(c[(c[(c[v>>2]|0)+112>>2]|0)+36>>2]<<
;3|0)/2048|0;c[k>>2]=d;c[k>>2]=(c[k>>2]|0)==0?1:d;c[j>>2]=((c[(c[(c[v>>2]|0)+112
>>2]|0)+36>>2]|0)*6e3|0)/2048|0;c[q>>2]=c[t>>2];while(1){if((c[q>>2]|0)>
x3e;>0>=(c[s>>2]|0)>>>0)break;a:do if((a[(c[q>>2]|0)+1>>0]|0)==(c[(c[f>
;>2]|0)+24>>2]|0)?(c[(c[q>>2]|0)+40>>2]|0)!=(c[(c[q>>2]|0)+44>>2]|0):0){c
[r>>2]=c[t>>2];while(1){if((c[r>>2]|0)>>>0>=(c[s>>2]|0)>>
x3e;0)break a;if(((a[(c[q>>2]|0)+1>>0]|0)+(a[(c[r>>2]|0)+1>>0]|0)|0)==0?(b[(c[r>>
;2]|0)+2>>1]|0)>(b[(c[q>>2]|0)+2>>1]|0):0){c[n>>2]=b[(c[q>>2]|0)+2>
x3e;1];c[o>>2]=b[(c[r>>2]|0)+2>>1];c[g>>2]=(c[o>>2]|0)-(c[n>>2]|0);if
((c[g>>2]|0)<0)c[g>>2]=0-(c[g>>2]|0);c[m>>2]=b[(c[q>>2]|0)+4>>1
];c[l>>2]=b[(c[q>>2]|0)+6>>1];if((c[m>>2]|0)<(b[(c[r>>2]|0)+4>>
1]|0))c[m>>2]=b[(c[r>>2]|0)+4>>1];if((c[l>>2]|0)>(b[(c[r>>2]|0)+6>
x3e;1]|0))c[l>>2]=b[(c[r>>2]|0)+6>>1];c[h>>2]=(c[l>>2]|0)-(c[m>>2]|0
);if((c[h>>2]|0)>=(c[k>>2]|0)){c[p>>2]=(c[g>>2]|0)+((c[j>>2]|0)/(c[h>
;>2]|0)|0);if((c[p>>2]|0)<(c[(c[q>>2]|0)+32>>2]|0)){c[(c[q>>2]|0)+32>>
;2]=c[p>>2];c[(c[q>>2]|0)+20>>2]=c[r>>2]}if((c[p>>2]|0)<(c[(c[r>>
;2]|0)+32>>2]|0)){c[(c[r>>2]|0)+32>>2]=c[p>>2];c[(c[r>>2]|0)+20>>2]=
c[q>>2]}}}c[r>>2]=(c[r>>2]|0)+52}}while(0);c[q>>2]=(c[q>>2]|0)+52}c[q>>
;2]=c[t>>2];while(1){if((c[q>>2]|0)>>>0>=(c[s>>2]|0)>>>0)break;
c[r>>2]=c[(c[q>>2]|0)+20>>2];if(c[r>>2]|0?(c[(c[r>>2]|0)+20>>2]|0)!=(
c[q>>2]|0):0){c[(c[q>>2]|0)+20>>2]=0;c[(c[q>>2]|0)+24>>2]=c[(c[r>>2]|
0)+20>>2]}c[q>>2]=(c[q>>2]|0)+52}i=u;return}function Nl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;j=i;i=i+32|0;d=j+24|0;e=j+20|0;f=j+16|0;g=j+12|0;h=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=1;while(1){if((
c[f>>2]|0)>>>0>=(c[d>>2]|0)>>>0)break;c[g>>2]=c[f>>2];
while(1){if((c[g>>2]|0)>>>0<=0)break;if((c[(c[e>>2]|0)+((c[g>>2]|0)*12|0)>
;>2]|0)>(c[(c[e>>2]|0)+(((c[g>>2]|0)-1|0)*12|0)>>2]|0))break;b=(c[e>>2]|0)+((c
[g>>2]|0)*12|0)|0;c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+
8>>2];b=(c[e>>2]|0)+((c[g>>2]|0)*12|0)|0;a=(c[e>>2]|0)+(((c[g>>2]|0)-1|0)*12|0
)|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];b=(c[e
x3e;>2]|0)+(((c[g>>2]|0)-1|0)*12|0)|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];
c[b+8>>2]=c[h+8>>2];c[g>>2]=(c[g>>2]|0)+-1}c[f>>2]=(c[f>>2]|0)+1}i=j
;return}function Ol(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;f=g+8|0;e=g+4|0;d=g;c[b>>2]=a;if(!(c[b>
;>2]|0)){i=g;return}if(!(c[c[b>>2]>>2]|0)){i=g;return}c[f>>2]=c[c[b>>2]>>
2];c[e>>2]=0;while(1){if((c[e>>2]|0)>=2)break;c[d>>2]=(c[b>>2]|0)+48+((c[e>>
;2]|0)*28|0);c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;Fb(c[f>>2]|0,c[(c[d>
x3e;2]|0)+8>>2]|0);c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+12>>2]=0;c[(c[d>
x3e;2]|0)+16>>2]=0;Fb(c[f>>2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>
x3e;2]=0;c[e>>2]=(c[e>>2]|0)+1}Fb(c[f>>2]|0,c[(c[b>>2]|0)+44>>2]|0);c[(c[b>
;>2]|0)+44>>2]=0;c[(c[b>>2]|0)+36>>2]=0;c[(c[b>>2]|0)+40>>2]=0;Fb(c[f>
;>2]|0,c[(c[b>>2]|0)+32>>2]|0);c[(c[b>>2]|0)+32>>2]=0;c[(c[b>>2]|0)+28>
;>2]=0;c[(c[b>>2]|0)+24>>2]=0;c[c[b>>2]>>2]=0;i=g;return}function Pl(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;N=i;i=i+224|0;O=N+212|0;g=N+208|0;u=N+160|0;L=N+112|0;B=N+104|0;C=N+100|0;j=N+96|0;o=N+92|0;s=N+88|0;h=N+84|0;v=N
+80|0;F=N+76|0;y=N+72|0;p=N+68|0;q=N+64|0;w=N+60|0;n=N+56|0;m=N+52|0;k=N+48|0;l=N+44|0;G=N+40|0;K=N+217|0;A=N+36|0;t=N+32|0;x=N+
28|0;D=N+24|0;H=N+20|0;I=N+16|0;z=N+12|0;r=N+8|0;J=N+4|0;M=N;E=N+216|0;c[O>>2]=e;c[g>>2]=f;c[h>>2]=(
c[O>>2]|0)+40+396;c[v>>2]=c[(c[g>>2]|0)+84>>2];c[j>>2]=0;while(1){if((c[j>
;>2]|0)>=6)break;c[F>>2]=11435+((c[j>>2]|0)*13|0);c[y>>2]=(c[F>>2]|0)+12;c[B
x3e;>2]=0;c[C>>2]=0;while(1){if((c[F>>2]|0)>>>0>=(c[y>>2]|0)>>
x3e;0)break;if(!(a[c[F>>2]>>0]|0))break;a[K>>0]=0;c[w>>2]=Dc(c[g>>2]|0,a[c[F
x3e;>2]>>0]|0)|0;do if((c[w>>2]|0?(c[s>>2]=Cb(c[g>>2]|0,c[w>>2]|0,1)|0,(c
[s>>2]|0)==0):0)?(b[(c[v>>2]|0)+108+2>>1]|0)>0:0){c[G>>2]=c[(c[v>>2]|0)+108
+4>>2];c[m>>2]=-1;c[n>>2]=0;c[k>>2]=0;c[l>>2]=0;c[t>>2]=0;c[x>
x3e;2]=-1;c[A>>2]=0;while(1){f=c[m>>2]|0;if((c[A>>2]|0)>=(b[(c[v>>2]|0)+108>
x3e;1]|0))break;c[D>>2]=f;c[x>>2]=b[(c[(c[v>>2]|0)+108+12>>2]|0)+(c[A>>2]<
;<1)>>1];if((c[x>>2]|0)>(c[t>>2]|0)){O=(c[j>>2]|0)==0|(c[j>>2]|0)==2
|(c[j>>2]|0)==3;c[H>>2]=c[t>>2];a:do if(O)while(1){if((c[H>>2]|0)>(c[x>>2
]|0))break a;if(!((c[m>>2]|0)>=0?(c[(c[G>>2]|0)+(c[H>>2]<<3)+4>>2]|0)<
;=(c[n>>2]|0):0)){c[m>>2]=c[H>>2];c[n>>2]=c[(c[G>>2]|0)+(c[H>>2]<
;<3)+4>>2]}c[H>>2]=(c[H>>2]|0)+1}else while(1){if((c[H>>2]|0)>(c[x>>
2]|0))break a;if(!((c[m>>2]|0)>=0?(c[(c[G>>2]|0)+(c[H>>2]<<3)+4>>2]|0)>
;=(c[n>>2]|0):0)){c[m>>2]=c[H>>2];c[n>>2]=c[(c[G>>2]|0)+(c[H>>2]<
;<3)+4>>2]}c[H>>2]=(c[H>>2]|0)+1}while(0);if((c[m>>2]|0)!=(c[D>>2]|0)){c[
k>>2]=c[t>>2];c[l>>2]=c[x>>2]}}c[t>>2]=(c[x>>2]|0)+1;c[A>>
2]=(c[A>>2]|0)+1}if((f|0)>=0){c[I>>2]=c[m>>2];c[z>>2]=c[I>>2];do{if((c[I
x3e;>2]|0)>(c[k>>2]|0))c[I>>2]=(c[I>>2]|0)+-1;else c[I>>2]=c[l>>2];c
[r>>2]=(c[(c[G>>2]|0)+(c[I>>2]<<3)+4>>2]|0)-(c[n>>2]|0);if((c[r>
;>2]|0)<-5|(c[r>>2]|0)>5)break}while((c[I>>2]|0)!=(c[m>>2]|0));do{if((c[z>>
;2]|0)<(c[l>>2]|0))c[z>>2]=(c[z>>2]|0)+1;else c[z>>2]=c[k>>2];c[r>
x3e;2]=(c[(c[G>>2]|0)+(c[z>>2]<<3)+4>>2]|0)-(c[n>>2]|0);if((c[r>>2]|
0)<-5|(c[r>>2]|0)>5)break}while((c[z>>2]|0)!=(c[m>>2]|0));if((a[(c[(c[v>>2]|0)+
108+8>>2]|0)+(c[I>>2]|0)>>0]&3|0)!=1)f=1;else f=(a[(c[(c[v>>2]|0)+108+8>>
2]|0)+(c[z>>2]|0)>>0]&3|0)!=1;a[K>>0]=f&1}f=c[n>>2]|0;if(a[K>>0]|0){
O=c[C>>2]|0;c[C>>2]=O+1;c[L+(O<<2)>>2]=f;break}else{O=c[B>>2]|0;c[B>>
;2]=O+1;c[u+(O<<2)>>2]=f;break}}while(0);c[F>>2]=(c[F>>2]|0)+1}if(!((c[B>>2]|0
)==0&(c[C>>2]|0)==0)){Ql(c[C>>2]|0,L);Ql(c[B>>2]|0,u);c[o>>2]=(c[h>>2]|0)+
220+((c[(c[h>>2]|0)+216>>2]|0)*28|0);c[p>>2]=c[o>>2];c[q>>2]=(c[o>>2
]|0)+12;f=(c[h>>2]|0)+216|0;c[f>>2]=(c[f>>2]|0)+1;f=c[C>>2]|0;do if(c[B>>2]|0){
e=c[u+(((c[B>>2]|0)/2|0)<<2)>>2]|0;if(!f){c[c[q>>2]>>2]=e;c[c[p>>2]
x3e;>2]=e;break}else{c[c[p>>2]>>2]=e;c[c[q>>2]>>2]=c[L+(((c[C>>2]|0)/2|0)
x3c;<2)>>2];break}}else{O=c[L+(((f|0)/2|0)<<2)>>2]|0;c[c[q>>2]>>2]=O;c[c[
p>>2]>>2]=O}while(0);if((c[c[q>>2]>>2]|0)!=(c[c[p>>2]>>2]|0)){c[J>
;>2]=c[c[p>>2]>>2];c[M>>2]=c[c[q>>2]>>2];a[E>>0]=(c[M>>
;2]|0)>(c[J>>2]|0);if((c[j>>2]|0)==0|(c[j>>2]|0)==2)f=1;else f=(c[j>>2]|0)==3;if(f
x26;1^d[E>>0]|0){O=((c[M>>2]|0)+(c[J>>2]|0)|0)/2|0;c[c[p>>2]>>2]=O;c[c[q>
x3e;2]>>2]=O}}c[(c[o>>2]|0)+24>>2]=0;if((c[j>>2]|0)==0|(c[j>>2]|0)==2|(c[j>
;>2]|0)==3){O=(c[o>>2]|0)+24|0;c[O>>2]=c[O>>2]|2}if((c[j>>2]|0)==3){O=(c[o>>
;2]|0)+24|0;c[O>>2]=c[O>>2]|4}}c[j>>2]=(c[j>>2]|0)+1}i=N;return}function Ql(a,b){a=a|0;b
=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[d>>2]=a;c[e>>2]=b;c[f
x3e;>2]=1;while(1){if((c[f>>2]|0)>>>0>=(c[d>>2]|0)>>>0)break;c[g>
;>2]=c[f>>2];while(1){if((c[g>>2]|0)>>>0<=0)break;if((c[(c[e>>2]|0)+(c[g
x3e;>2]<<2)>>2]|0)>(c[(c[e>>2]|0)+((c[g>>2]|0)-1<<2)>>2]|0
))break;c[h>>2]=c[(c[e>>2]|0)+(c[g>>2]<<2)>>2];c[(c[e>>2]|0)+(c[g>
;>2]<<2)>>2]=c[(c[e>>2]|0)+((c[g>>2]|0)-1<<2)>>2];c[(c[e>
x3e;2]|0)+((c[g>>2]|0)-1<<2)>>2]=c[h>>2];c[g>>2]=(c[g>>2]|0)+-1}c[f
x3e;>2]=(c[f>>2]|0)+1}i=j;return}function Rl(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;o=i;i=i
+32|0;e=o+20|0;f=o+16|0;j=o+12|0;m=o+25|0;l=o+24|0;g=o+8|0;k=o+4|0;h=o;c[e>>2]=b;c[f>>2]=d;a[m>>0]=
0;a[l>>0]=1;c[k>>2]=0;c[j>>2]=48;a:while(1){if((c[j>>2]|0)>>>0>57){n
=10;break}c[h>>2]=Dc(c[f>>2]|0,c[j>>2]|0)|0;do if(c[h>>2]|0?(vb(c[f>>2]|0,c[h
x3e;>2]|0,2051,g)|0)==0:0){d=c[g>>2]|0;if(a[m>>0]|0)if((d|0)!=(c[k>>2]|0))break a;else break;
else{c[k>>2]=d;a[m>>0]=1;break}}while(0);c[j>>2]=(c[j>>2]|0)+1}if((n|0)==10){m=a[l>
x3e;0]|0;n=c[e>>2]|0;n=n+32|0;a[n>>0]=m;i=o;return}a[l>>0]=0;m=a[l>>0]|0;n=c[e>>
;2]|0;n=n+32|0;a[n>>0]=m;i=o;return}function Sl(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)+4+20>>2]=c[(c[e>>2]|0)+20>>2];c[(c[f>>
2]|0)+4>>2]=c[c[e>>2]>>2];Tl(c[f>>2]|0,c[e>>2]|0,0);Tl(c[f>>2]|0,c[e
>>2]|0,1);i=d;return}function Tl(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;x=i;i=i+64|0;m=x+60|0;f=x+56|0;n=x+52|0;w=x+48|0;r=x+44|0;p=x+40|0;v=x+36|0;g=x+32|0;h=x+28|0;k=x+24|0;j=x+20|0;
o=x+16|0;q=x+12|0;u=x+8|0;s=x+4|0;t=x;c[m>>2]=b;c[f>>2]=d;c[n>>2]=e;e=c[f>>2]|0;if(!(c[n
>>2]|0)){c[w>>2]=c[e+4>>2];c[r>>2]=c[(c[f>>2]|0)+12>>2]}else{c[w>
;>2]=c[e+8>>2];c[r>>2]=c[(c[f>>2]|0)+16>>2]}c[p>>2]=(c[m>>2]|0)+
40+((c[n>>2]|0)*396|0);if((c[(c[p>>2]|0)+388>>2]|0)==(c[w>>2]|0)?(c[(c[p>>2]|0
)+392>>2]|0)==(c[r>>2]|0):0){i=x;return}c[(c[p>>2]|0)+388>>2]=c[w>>2];c[(c[p
x3e;>2]|0)+392>>2]=c[r>>2];c[g>>2]=(c[m>>2]|0)+40+396;c[h>>2]=0;c[v>
x3e;2]=0;while(1){if((c[v>>2]|0)>>>0>=(c[(c[g>>2]|0)+216>>2]|0)>>>
;0)break;e=c[v>>2]|0;if(c[(c[g>>2]|0)+220+((c[v>>2]|0)*28|0)+24>>2]&4|0){l=9;break}
c[v>>2]=e+1}if((l|0)==9)c[h>>2]=(c[g>>2]|0)+220+(e*28|0);if(c[h>>2]|0?(c[k>>2]=
Mb(c[(c[h>>2]|0)+12>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0,c[j>>2]=(c[k>>2]|
0)+40&-64,(c[n>>2]|0)==1?(c[k>>2]|0)!=(c[j>>2]|0):0):0)c[w>>2]=xb(c[w>>2]|
0,c[j>>2]|0,c[k>>2]|0)|0;c[c[p>>2]>>2]=c[w>>2];c[(c[p>>2]|0)+4>
x3e;2]=c[r>>2];e=c[w>>2]|0;b=(c[m>>2]|0)+4|0;if(!(c[n>>2]|0)){c[b+4>>2]=e;c[(c
[m>>2]|0)+4+12>>2]=c[r>>2]}else{c[b+8>>2]=e;c[(c[m>>2]|0)+4+16>>2]=c
[r>>2]}c[v>>2]=0;while(1){e=c[p>>2]|0;if((c[v>>2]|0)>>>0>=(c[(c[p>
;>2]|0)+8>>2]|0)>>>0)break;c[o>>2]=e+12+((c[v>>2]|0)*12|0);m=Mb(c[c[o>>
;2]>>2]|0,c[w>>2]|0)|0;c[(c[o>>2]|0)+4>>2]=m;c[(c[o>>2]|0)+8>>2]=c[(
c[o>>2]|0)+4>>2];c[v>>2]=(c[v>>2]|0)+1}o=(Mb(c[e+208>>2]|0,c[w>>2]|0
)|0)<40&255;a[(c[p>>2]|0)+212>>0]=o;if((c[n>>2]|0)!=1){i=x;return}c[v>>2]=0;while
(1){if((c[v>>2]|0)>>>0>=(c[(c[p>>2]|0)+216>>2]|0)>>>0)break;c[q
>>2]=(c[p>>2]|0)+220+((c[v>>2]|0)*28|0);o=Mb(c[c[q>>2]>>2]|0,c[w>>2]|
0)|0;c[(c[q>>2]|0)+4>>2]=o+(c[r>>2]|0);c[(c[q>>2]|0)+8>>2]=c[(c[q>>2
]|0)+4>>2];o=Mb(c[(c[q>>2]|0)+12>>2]|0,c[w>>2]|0)|0;c[(c[q>>2]|0)+12+4>
x3e;2]=o+(c[r>>2]|0);c[(c[q>>2]|0)+12+8>>2]=c[(c[q>>2]|0)+12+4>>2];o=(c[q>
;>2]|0)+24|0;c[o>>2]=c[o>>2]&-2;c[u>>2]=Mb((c[c[q>>2]>>2]|0)-(c[(c[q
>>2]|0)+12>>2]|0)|0,c[w>>2]|0)|0;if((c[u>>2]|0)<=48&(c[u>>2]|0)>
;=-48){c[s>>2]=(c[(c[q>>2]|0)+12>>2]|0)-(c[c[q>>2]>>2]|0);c[t>>2]=c[
s>>2];if((c[s>>2]|0)<0)c[t>>2]=0-(c[t>>2]|0);c[t>>2]=Mb(c[t>>2]|
0,c[w>>2]|0)|0;do if((c[t>>2]|0)>=32){e=c[t>>2]|0;if((c[t>>2]|0)<64){c[t>
x3e;2]=32+(e-32+16&-32);break}else{c[t>>2]=e+32&-64;break}}else c[t>>2]=0;while(0);if((c[s>
x3e;2]|0)<0)c[t>>2]=0-(c[t>>2]|0);c[(c[q>>2]|0)+8>>2]=(c[(c[q>>2]|0)+4>
;>2]|0)+32&-64;c[(c[q>>2]|0)+12+8>>2]=(c[(c[q>>2]|0)+8>>2]|0)+(c[t>>
2]|0);o=(c[q>>2]|0)+24|0;c[o>>2]=c[o>>2]|1}c[v>>2]=(c[v>>2]|0)+1}i=x;return}function
Ul(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;d=j+20|0;k=j+16|0;f=j+12|0;h=j+8|0;g=j+4|0;e=j;c[d>>
2]=a;c[k>>2]=b;c[e>>2]=c[(c[k>>2]|0)+4>>2];Dl(c[d>>2]|0,c[k>>2]|0);c
[(c[d>>2]|0)+4>>2]=c[(c[k>>2]|0)+40>>2];c[(c[d>>2]|0)+8>>2]=c[(c[k
x3e;>2]|0)+40+4>>2];c[(c[d>>2]|0)+12>>2]=c[(c[k>>2]|0)+40+396>>2];c[(c[d
x3e;>2]|0)+16>>2]=c[(c[k>>2]|0)+40+396+4>>2];c[f>>2]=c[(c[k>>2]|0)+4+20
x3e;>2];c[h>>2]=c[(c[d>>2]|0)+104>>2];c[g>>2]=0;if((c[f>>2]|0)==2|(c[f>
;>2]|0)==3)c[g>>2]=c[g>>2]|1;if((c[f>>2]|0)==2|(c[f>>2]|0)==4)c[g>>2]=c[g
>>2]|2;if((c[f>>2]|0)!=1)c[g>>2]=c[g>>2]|4;if((c[f>>2]|0)==2)c[g>>2]=
c[g>>2]|8;if((c[f>>2]|0)!=1?(c[(c[e>>2]|0)+12>>2]&1|0)==0:0){k=c[h>>2]|0;
h=c[d>>2]|0;h=h+104|0;c[h>>2]=k;h=c[g>>2]|0;k=c[d>>2]|0;k=k+108|0;c[k>>2]=h;i=
j;return 0}c[h>>2]=c[h>>2]|1;k=c[h>>2]|0;h=c[d>>2]|0;h=h+104|0;c[h>>2]=k;h=c[g
>>2]|0;k=c[d>>2]|0;k=k+108|0;c[k>>2]=h;i=j;return 0}function Vl(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;f=k+16|0;g=k+12|0;e=k+8|0;j=k+4|0;h=k;c[f>>2]=a;c[g>>2]=b;c[e>>2]=
d;c[j>>2]=Il(c[f>>2]|0,c[g>>2]|0)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}if
((c[(c[f>>2]|0)+104>>2]&1|0)==0?(c[j>>2]=Wl(c[f>>2]|0,0)|0,c[j>>2]|0):0){
j=c[j>>2]|0;i=k;return j|0}do if(!(c[(c[f>>2]|0)+104>>2]&2)){c[j>>2]=Wl(c[f>
x3e;2]|0,1)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}else{Zl(c[f>>2]|0,c[e>>2]|0);break
}}while(0);c[h>>2]=0;while(1){if((c[h>>2]|0)>=2)break;if((c[h>>2]|0)==0?!(c[(c[f>>2
]|0)+104>>2]&1|0):0)e=13;else e=11;if(((e|0)==11?(e=0,(c[h>>2]|0)==1):0)?(c[(c[f>>2]|0)+104
x3e;>2]&2|0)==0:0)e=13;if((e|0)==13){_l(c[f>>2]|0,c[h>>2]|0);dm(c[f>>2]|0,c[h>>
;2]|0);em(c[f>>2]|0,c[h>>2]|0);fm(c[f>>2]|0,c[h>>2]|0)}c[h>>2]=(c[h>>
;2]|0)+1}im(c[f>>2]|0,c[g>>2]|0);j=c[j>>2]|0;i=k;return j|0}function Wl(a,b){a=a|0;b=b|0;var d=0,e
=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Kl(c[d>>2]|0,c[e
>>2]|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}Ml(c[d>>2]|0,c[e>>2]|0);c[f
>>2]=Xl(c[d>>2]|0,c[e>>2]|0)|0;a=c[f>>2]|0;i=g;return a|0}function Xl(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
;M=i;i=i+128|0;g=M+112|0;h=M+108|0;l=M+104|0;D=M+100|0;t=M+96|0;j=M+92|0;k=M+88|0;w=M+84|0;H=M+80|0;K=M+76|0;u=M+72|0;p=M+68|0;v
=M+64|0;s=M+60|0;r=M+56|0;n=M+52|0;m=M+48|0;o=M+44|0;q=M+40|0;C=M+36|0;z=M+32|0;E=M+28|0;G=M+24|0;L=M+20|0;y=M+16|0;F=M+116|0;A=
M+12|0;I=M+8|0;B=M+4|0;J=M;c[g>>2]=e;c[h>>2]=f;c[l>>2]=(c[g>>2]|0)+48+((c[h>>2
]|0)*28|0);c[D>>2]=0;c[t>>2]=c[c[g>>2]>>2];c[j>>2]=(c[(c[g>>2]|0)+112
>>2]|0)+40+((c[h>>2]|0)*396|0);c[k>>2]=c[(c[l>>2]|0)+8>>2];c[w>>2]=(
c[k>>2]|0)+((c[c[l>>2]>>2]|0)*52|0);c[(c[l>>2]|0)+12>>2]=0;f=c[g>>2]|
0;if(!(c[h>>2]|0))f=c[f+4>>2]|0;else f=c[f+12>>2]|0;c[u>>2]=f;c[K>>2]=(c[h>
;>2]|0)==0?2:1;if(!(c[h>>2]|0))c[v>>2]=Vb(64,c[(c[g>>2]|0)+12>>2]|0)|0;else c[v>
;>2]=0;j=Mb(c[(c[j>>2]|0)+204>>2]|0,c[u>>2]|0)|0;c[p>>2]=j;c[p>>2]=(c[p
x3e;>2]|0)>16?16:j;c[p>>2]=Vb(c[p>>2]|0,c[u>>2]|0)|0;c[H>>2]=c[k>>2];
a:while(1){if((c[H>>2]|0)>>>0>=(c[w>>2]|0)>>>0)break;c[s>>2]=0;
do if((b[(c[H>>2]|0)+8>>1]|0)>=(c[v>>2]|0)){if(c[(c[H>>2]|0)+24>>2]|0?(b[(
c[H>>2]|0)+8>>1]<<1|0)<((c[v>>2]|0)*3|0):0)break;c[r>>2]=0;while(1){if((c
[r>>2]|0)>=(c[(c[l>>2]|0)+12>>2]|0))break;c[n>>2]=(c[(c[l>>2]|0)+20>
x3e;2]|0)+((c[r>>2]|0)*48|0);c[m>>2]=(b[(c[H>>2]|0)+2>>1]|0)-(b[c[n>>2]>
x3e;1]|0);if((c[m>>2]|0)<0)c[m>>2]=0-(c[m>>2]|0);if((c[m>>2]|0)<(c[p>>
;2]|0)?(a[(c[n>>2]|0)+13>>0]|0)==(a[(c[H>>2]|0)+1>>0]|0):0){x=18;break}c[r>>2]=(
c[r>>2]|0)+1}if((x|0)==18){x=0;c[s>>2]=c[n>>2]}if(c[s>>2]|0){c[(c[H>>2]|0)+16
x3e;>2]=c[(c[s>>2]|0)+40>>2];c[(c[(c[s>>2]|0)+44>>2]|0)+16>>2]=c[H>
x3e;2];c[(c[s>>2]|0)+44>>2]=c[H>>2];break}c[D>>2]=Yl(c[l>>2]|0,b[(c[H>>
;2]|0)+2>>1]|0,a[(c[H>>2]|0)+1>>0]|0,c[t>>2]|0,o)|0;if(c[D>>2]|0){x=66;break a
}f=c[o>>2]|0;e=f+48|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(e|0));c[(c[o>>2]|0)+40>>2]=
c[H>>2];c[(c[o>>2]|0)+44>>2]=c[H>>2];b[c[o>>2]>>1]=b[(c[H>>
;2]|0)+2>>1]|0;a[(c[o>>2]|0)+13>>0]=a[(c[H>>2]|0)+1>>0]|0;k=Mb(b[(c[H>>
;2]|0)+2>>1]|0,c[u>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=k;c[(c[o>>2]|0)+4>>2
]=k;c[(c[H>>2]|0)+16>>2]=c[H>>2]}while(0);c[H>>2]=(c[H>>2]|0)+52}if((x|0)==66){
L=c[D>>2]|0;i=M;return L|0}c[q>>2]=c[(c[l>>2]|0)+20>>2];c[C>>2]=(c[q>>
;2]|0)+((c[(c[l>>2]|0)+12>>2]|0)*48|0);c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)
x3e;>>0>=(c[C>>2]|0)>>>0)break;c[H>>2]=c[(c[z>>2]|0)+40>>2
];if(c[H>>2]|0)do{c[(c[H>>2]|0)+12>>2]=c[z>>2];c[H>>2]=c[(c[H>>2]|0)+
16>>2]}while((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));c[z>>2]=(c[z>>2]|
0)+48}c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)>>>0>=(c[C>>2]|0)>
x3e;>0)break;c[E>>2]=0;c[G>>2]=0;c[L>>2]=0;c[y>>2]=0;c[H>>2]=c[(c[z>
x3e;2]|0)+40>>2];do{if(d[c[H>>2]>>0]&1|0)c[E>>2]=(c[E>>2]|0)+1;else c[G
x3e;>2]=(c[G>>2]|0)+1;f=(b[(c[H>>2]|0)+6>>1]|0)-(b[(c[H>>2]|0)+4>>1]|0)|0
;if((a[(c[H>>2]|0)+1>>0]|0)==(c[K>>2]|0))c[L>>2]=(c[L>>2]|0)+f;else c[y>
x3e;2]=(c[y>>2]|0)+f;if(c[(c[H>>2]|0)+24>>2]|0?c[(c[(c[H>>2]|0)+24>>2]|0)+12
x3e;>2]|0:0)f=(c[(c[(c[H>>2]|0)+24>>2]|0)+12>>2]|0)!=(c[z>>2]|0);else f=0;a[F>
x3e;0]=f&1;if(c[(c[H>>2]|0)+20>>2]|0?c[(c[(c[H>>2]|0)+20>>2]|0)+12>>2]|0:
0)x=45;else x=44;if((x|0)==44?(x=0,d[F>>0]|0):0)x=45;do if((x|0)==45){c[A>>2]=c[(c[z>>2]|0)+24>
;>2];c[I>>2]=c[(c[H>>2]|0)+20>>2];if(a[F>>0]|0){c[I>>2]=c[(c[H>>
;2]|0)+24>>2];c[A>>2]=c[(c[z>>2]|0)+28>>2]}if(c[A>>2]|0){c[B>>2]=(b[
c[z>>2]>>1]|0)-(b[c[A>>2]>>1]|0);if((c[B>>2]|0)<0)c[B>>2]=0-(c[
B>>2]|0);c[J>>2]=(b[(c[H>>2]|0)+2>>1]|0)-(b[(c[I>>2]|0)+2>>1]|0);if((
c[J>>2]|0)<0)c[J>>2]=0-(c[J>>2]|0);if((c[J>>2]|0)<(c[B>>2]|0))c[A>
;>2]=c[(c[I>>2]|0)+12>>2]}else c[A>>2]=c[(c[I>>2]|0)+12>>2];f=c[A>
x3e;2]|0;e=c[z>>2]|0;if(a[F>>0]|0){c[e+28>>2]=f;x=(c[A>>2]|0)+12|0;a[x>>0]=d[x
>>0]|2;break}else{c[e+24>>2]=f;break}}while(0);c[H>>2]=c[(c[H>>2]|0)+16>>2]}while
((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));a[(c[z>>2]|0)+12>>0]=0;if((c[E>
x3e;2]|0)>0?(c[E>>2]|0)>=(c[G>>2]|0):0){x=(c[z>>2]|0)+12|0;a[x>>0]=d[x>
x3e;0]|1}if(c[(c[z>>2]|0)+28>>2]|0?c[(c[z>>2]|0)+24>>2]|0:0)c[(c[z>>2]|0)+28
x3e;>2]=0;c[z>>2]=(c[z>>2]|0)+48}L=c[D>>2]|0;i=M;return L|0}function Yl(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,t=0,u=0;u=i;i=i+48|0;n=u+40|0;o=u+36|0;p=u+32|0;j=u+28|0;q=u+24|
0;t=u+20|0;r=u+16|0;s=u+12|0;m=u+8|0;l=u+4|0;k=u;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[j>>2]=g
;c[q>>2]=h;c[t>>2]=0;c[r>>2]=0;do if((c[(c[n>>2]|0)+12>>2]|0)>=(c[(c[n>
;>2]|0)+16>>2]|0)){c[m>>2]=c[(c[n>>2]|0)+16>>2];c[l>>2]=c[m>>2];
c[k>>2]=44739242;if((c[m>>2]|0)>=(c[k>>2]|0)){c[t>>2]=64;r=c[r>>2]|0;s=c[
q>>2]|0;c[s>>2]=r;t=c[t>>2]|0;i=u;return t|0}c[l>>2]=(c[l>>2]|0)+((c[l>
x3e;2]>>2)+4);if(!((c[l>>2]|0)>=(c[m>>2]|0)?(c[l>>2]|0)<=(c[k>>2]|0):
0))c[l>>2]=c[k>>2];m=hc(c[j>>2]|0,48,c[m>>2]|0,c[l>>2]|0,c[(c[n>>2]|
0)+20>>2]|0,t)|0;c[(c[n>>2]|0)+20>>2]=m;if(c[t>>2]|0){r=c[r>>2]|0;s=c[q>
x3e;2]|0;c[s>>2]=r;t=c[t>>2]|0;i=u;return t|0}else{c[(c[n>>2]|0)+16>>2]=c[l>>2
];break}}while(0);c[s>>2]=c[(c[n>>2]|0)+20>>2];c[r>>2]=(c[s>>2]|0)+((c[(c[n>
;>2]|0)+12>>2]|0)*48|0);while(1){if((c[r>>2]|0)>>>0<=(c[s>>2]|0)>>
;>0)break;if((b[(c[r>>2]|0)+-48>>1]|0)<(c[o>>2]|0))break;if((b[(c[r>>2]|0)+-48
>>1]|0)==(c[o>>2]|0)?(c[p>>2]|0)==(c[(c[n>>2]|0)+24>>2]|0):0)break;j=c[r>
x3e;2]|0;h=(c[r>>2]|0)+-48|0;d=j+48|0;do{c[j>>2]=c[h>>2];j=j+4|0;h=h+4|0}while((j|0)<(d|0));c
[r>>2]=(c[r>>2]|0)+-48}j=(c[n>>2]|0)+12|0;c[j>>2]=(c[j>>2]|0)+1;j=c[r>>
;2]|0;d=j+48|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(d|0));b[c[r>>2]>>1]=c[o>>2];a[(c[r
>>2]|0)+13>>0]=c[p>>2];r=c[r>>2]|0;s=c[q>>2]|0;c[s>>2]=r;t=c[t>
x3e;2]|0;i=u;return t|0}function Zl(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;v=i;i=i
+64|0;w=v+44|0;g=v+40|0;h=v+36|0;o=v+32|0;p=v+28|0;t=v+24|0;u=v+20|0;j=v+16|0;k=v+12|0;l=v+8|0;m=v+4|0;r=v+50|0;q=v+49|0;n=v;s=v
+48|0;c[w>>2]=e;c[g>>2]=f;c[h>>2]=(c[w>>2]|0)+48+28;c[o>>2]=c[(c[h>>
2]|0)+20>>2];c[p>>2]=(c[o>>2]|0)+((c[(c[h>>2]|0)+12>>2]|0)*48|0);c[t>>
;2]=(c[g>>2]|0)+40+396;c[u>>2]=c[c[t>>2]>>2];while(1){if((c[o>>2]|0)>>
;>0>=(c[p>>2]|0)>>>0)break;c[k>>2]=0;w=Mb(((c[(c[g>>2]|0)+36>>2
]|0)>>>0)/40|0,c[u>>2]|0)|0;c[l>>2]=w;c[l>>2]=(c[l>>2]|0)>32?32:w;c[
j>>2]=0;while(1){if((c[j>>2]|0)>=6)break;c[m>>2]=(c[t>>2]|0)+220+((c[j>>2
]|0)*28|0);if(c[(c[m>>2]|0)+24>>2]&1|0?(a[r>>0]=(c[(c[m>>2]|0)+24>>2]&
;2|0)!=0,a[q>>0]=(a[(c[o>>2]|0)+13>>0]|0)==(c[(c[h>>2]|0)+24>>2]|0),d[r>
x3e;0]^d[q>>0]|0):0){c[n>>2]=(b[c[o>>2]>>1]|0)-(c[c[m>>2]>>2]|0);if((
c[n>>2]|0)<0)c[n>>2]=0-(c[n>>2]|0);c[n>>2]=Mb(c[n>>2]|0,c[u>>2]|
0)|0;if((c[n>>2]|0)<(c[l>>2]|0)){c[l>>2]=c[n>>2];c[k>>2]=c[m>>2
]}if((c[n>>2]|0?(d[(c[o>>2]|0)+12>>0]&1|0)!=0:0)?(a[s>>0]=(b[c[o>>2]>
;>1]|0)<(c[c[m>>2]>>2]|0),d[r>>0]^d[s>>0]|0):0){c[m>>2]=(c[t>
x3e;2]|0)+220+((c[j>>2]|0)*28|0);c[n>>2]=(b[c[o>>2]>>1]|0)-(c[(c[m>>2]|0)+12
x3e;>2]|0);if((c[n>>2]|0)<0)c[n>>2]=0-(c[n>>2]|0);c[n>>2]=Mb(c[n>>2]|
0,c[u>>2]|0)|0;if((c[n>>2]|0)<(c[l>>2]|0)){c[l>>2]=c[n>>2];c[k>>
;2]=(c[m>>2]|0)+12}}}c[j>>2]=(c[j>>2]|0)+1}if(c[k>>2]|0)c[(c[o>>2]|0)+20>
x3e;2]=c[k>>2];c[o>>2]=(c[o>>2]|0)+48}i=v;return}function _l(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,D=0,E=0,F=0,G=0,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;U=i;i=i+176|0;M=U+160|0;j=U+156|0;V=U+152|0;T=U+148|0;S=U+144|0;K=U+140|0;R=U+136|0;O=U+132|0;J=U+128|0;
f=U+124|0;g=U+120|0;h=U+116|0;t=U+112|0;y=U+108|0;w=U+104|0;k=U+100|0;m=U+96|0;u=U+92|0;v=U+88|0;B=U+84|0;p=U+80|0;A=U+76|0;z=U+
72|0;x=U+68|0;l=U+64|0;n=U+60|0;o=U+56|0;r=U+52|0;s=U+48|0;C=U+44|0;q=U+40|0;G=U+36|0;H=U+32|0;I=U+28|0;E=U+24|0;F=U+20|0;L=U+16
|0;D=U+12|0;Q=U+8|0;P=U+4|0;N=U;c[M>>2]=b;c[j>>2]=e;c[V>>2]=(c[M>>2]|0)+48+((c[j>
x3e;2]|0)*28|0);c[T>>2]=c[(c[V>>2]|0)+20>>2];c[S>>2]=(c[T>>2]|0)+((c[(c[V>
;>2]|0)+12>>2]|0)*48|0);c[O>>2]=0;c[J>>2]=0;a:do if((c[j>>2]|0)==1){c[R>>
2]=c[T>>2];while(1){if((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break a
;if(!((d[(c[R>>2]|0)+12>>0]|0)&4)){c[f>>2]=c[(c[R>>2]|0)+20>>2];c[g>
x3e;2]=0;c[h>>2]=c[(c[R>>2]|0)+24>>2];if(!(c[f>>2]|0)){if(c[h>>2]|0?c[(c[h>
;>2]|0)+20>>2]|0:0){c[f>>2]=c[(c[h>>2]|0)+20>>2];c[g>>2]=c[h>>2
];c[h>>2]=c[R>>2]}}else c[g>>2]=c[R>>2];if(c[g>>2]|0){c[(c[g>>2]|0)+
8>>2]=c[(c[f>>2]|0)+8>>2];V=(c[g>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if(
c[h>>2]|0?(c[(c[h>>2]|0)+20>>2]|0)==0:0){$l(c[M>>2]|0,c[j>>2]|0,c[g>>
;2]|0,c[h>>2]|0);V=(c[h>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4}if(!(c[O>>2]|0))c[O>
;>2]=c[R>>2]}}c[R>>2]=(c[R>>2]|0)+48}}while(0);c[R>>2]=c[T>>2];while(1){if
((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;do if(!((d[(c[R>>2]|0)+
12>>0]|0)&4)){c[t>>2]=c[(c[R>>2]|0)+24>>2];if(!(c[t>>2]|0)){c[J>>
;2]=(c[J>>2]|0)+1;break}if(c[(c[t>>2]|0)+20>>2]|0){$l(c[M>>2]|0,c[j>>2]|0,c[t
x3e;>2]|0,c[R>>2]|0);V=(c[R>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;break}if(!(c[O>>
;2]|0)){c[y>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0);c[k>>
;2]=am(c[M>>2]|0,c[j>>2]|0,c[y>>2]|0,d[(c[R>>2]|0)+12>>0]|0,d[(c[t>>
2]|0)+12>>0]|0)|0;if((c[k>>2]|0)<=64){c[p>>2]=32;c[B>>2]=32}else{c[B>>2]=
38;c[p>>2]=26}f=c[(c[R>>2]|0)+4>>2]|0;if((c[k>>2]|0)<96){c[w>>2]=f+(c[y
x3e;>2]>>1);c[m>>2]=(c[w>>2]|0)+32&-64;c[u>>2]=(c[w>>2]|0)-((c[m>
;>2]|0)-(c[B>>2]|0));if((c[u>>2]|0)<0)c[u>>2]=0-(c[u>>2]|0);c[v>>2]=(
c[w>>2]|0)-((c[m>>2]|0)+(c[p>>2]|0));if((c[v>>2]|0)<0)c[v>>2]=0-(c[v>
;>2]|0);if((c[u>>2]|0)<(c[v>>2]|0))c[m>>2]=(c[m>>2]|0)-(c[B>>2]|0);else
c[m>>2]=(c[m>>2]|0)+(c[p>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[m>>2]|0)-((c
[k>>2]|0)/2|0);c[(c[t>>2]|0)+8>>2]=(c[(c[R>>2]|0)+8>>2]|0)+(c[k>>2]|
0)}else c[(c[R>>2]|0)+8>>2]=f+32&-64;c[O>>2]=c[R>>2];V=(c[R>>2]|0)+12|0;a
[V>>0]=d[V>>0]|0|4;$l(c[M>>2]|0,c[j>>2]|0,c[R>>2]|0,c[t>>2]|0);break
}c[A>>2]=(c[(c[O>>2]|0)+8>>2]|0)+((c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2
]|0)+4>>2]|0));c[z>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|
0);c[x>>2]=(c[A>>2]|0)+(c[z>>2]>>1);c[l>>2]=am(c[M>>2]|0,c[j>
x3e;2]|0,c[z>>2]|0,d[(c[R>>2]|0)+12>>0]|0,d[(c[t>>2]|0)+12>>0]|0)|0;do if((d[(
c[t>>2]|0)+12>>0]|0)&4|0)c[(c[R>>2]|0)+8>>2]=(c[(c[t>>2]|0)+8>>
2]|0)-(c[l>>2]|0);else{if((c[l>>2]|0)>=96){c[A>>2]=(c[(c[O>>2]|0)+8>>2]|0
)+((c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2]|0)+4>>2]|0));c[z>>2]=(c[(c[t>>
;2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0);c[x>>2]=(c[A>>2]|0)+(c[z>>2]
x3e;>1);c[l>>2]=am(c[M>>2]|0,c[j>>2]|0,c[z>>2]|0,d[(c[R>>2]|0)+12>
x3e;0]|0,d[(c[t>>2]|0)+12>>0]|0)|0;c[n>>2]=(c[A>>2]|0)+32&-64;c[r>>2]=(c[
n>>2]|0)+(c[l>>2]>>1)-(c[x>>2]|0);if((c[r>>2]|0)<0)c[r>>2]=0-(c
[r>>2]|0);c[o>>2]=((c[A>>2]|0)+(c[z>>2]|0)+32&-64)-(c[l>>2]|0);c[s>
x3e;2]=(c[o>>2]|0)+(c[l>>2]>>1)-(c[x>>2]|0);if((c[s>>2]|0)<0)c[s>>
;2]=0-(c[s>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[r>>2]|0)<(c[s>>2]|0)?c[n>
x3e;2]|0:c[o>>2]|0;c[(c[t>>2]|0)+8>>2]=(c[(c[R>>2]|0)+8>>2]|0)+(c[l>>
;2]|0);break}c[n>>2]=(c[x>>2]|0)+32&-64;if((c[l>>2]|0)<=64){c[q>>2]=32;c[C>
;>2]=32}else{c[C>>2]=38;c[q>>2]=26}c[r>>2]=(c[x>>2]|0)-((c[n>>2]|0)-(c[C
x3e;>2]|0));if((c[r>>2]|0)<0)c[r>>2]=0-(c[r>>2]|0);c[s>>2]=(c[x>>2]|
0)-((c[n>>2]|0)+(c[q>>2]|0));if((c[s>>2]|0)<0)c[s>>2]=0-(c[s>>2]|0);if((c
[r>>2]|0)<(c[s>>2]|0))c[n>>2]=(c[n>>2]|0)-(c[C>>2]|0);else c[n>>
;2]=(c[n>>2]|0)+(c[q>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[n>>2]|0)-((c[l>>2
]|0)/2|0);c[(c[t>>2]|0)+8>>2]=(c[n>>2]|0)+((c[l>>2]|0)/2|0)}while(0);V=(c[R>>2
]|0)+12|0;a[V>>0]=d[V>>0]|0|4;V=(c[t>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if((c[R
x3e;>2]|0)>>>0>(c[T>>2]|0)>>>0?(c[(c[R>>2]|0)+8>>2]|0)<
;(c[(c[R>>2]|0)+-48+8>>2]|0):0)c[(c[R>>2]|0)+8>>2]=c[(c[R>>2]|0)+-48+8>
x3e;2]}while(0);c[R>>2]=(c[R>>2]|0)+48}c[K>>2]=((c[S>>2]|0)-(c[T>>2]|0)|0)/48|
0;if((c[j>>2]|0)==0?(c[K>>2]|0)==6|(c[K>>2]|0)==12:0){f=c[T>>2]|0;if((c[K>>2]|
0)==6){c[G>>2]=f;c[H>>2]=(c[T>>2]|0)+96;c[I>>2]=(c[T>>2]|0)+192}else{c[G>
x3e;2]=f+48;c[H>>2]=(c[T>>2]|0)+240;c[I>>2]=(c[T>>2]|0)+432}c[E>>2]=(c[(c[H>
;>2]|0)+4>>2]|0)-(c[(c[G>>2]|0)+4>>2]|0);c[F>>2]=(c[(c[I>>2]|0)+4>
x3e;2]|0)-(c[(c[H>>2]|0)+4>>2]|0);c[L>>2]=(c[E>>2]|0)-(c[F>>2]|0);if((c[L>
;>2]|0)<0)c[L>>2]=0-(c[L>>2]|0);if((c[L>>2]|0)<8){c[D>>2]=(c[(c[I>
x3e;2]|0)+8>>2]|0)-((c[(c[H>>2]|0)+8>>2]<<1)-(c[(c[G>>2]|0)+8>>2]|0));
V=(c[I>>2]|0)+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0);if(c[(c[I>>2]|0)+24>>
;2]|0){V=(c[(c[I>>2]|0)+24>>2]|0)+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0)}if((c[K
x3e;>2]|0)==12){V=(c[T>>2]|0)+384+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0);V=(c[T>
x3e;2]|0)+528+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0)}V=(c[I>>2]|0)+12|0;a[V>>0]=d
[V>>0]|0|4;if(c[(c[I>>2]|0)+24>>2]|0){V=(c[(c[I>>2]|0)+24>>2]|0)+12|0;a[V>
;>0]=d[V>>0]|0|4}}}if((c[J>>2]|0)==0&(c[O>>2]|0)!=0){i=U;return}c[R>>2]=c[T>
;>2];while(1){if((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;if(!((d[(c[R
>>2]|0)+12>>0]|0)&4)){c[Q>>2]=1e3;if(c[(c[R>>2]|0)+28>>2]|0?(c[Q>>
;2]=(c[(c[(c[R>>2]|0)+28>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0),(c[Q>>
;2]|0)<0):0)c[Q>>2]=0-(c[Q>>2]|0);do if((c[Q>>2]|0)<80)cm(c[M>>2]|0,c[(c[R>
;>2]|0)+28>>2]|0,c[R>>2]|0);else{f=c[R>>2]|0;if(!(c[O>>2]|0)){c[(c[R>>2]|
0)+8>>2]=(c[f+4>>2]|0)+32&-64;c[O>>2]=c[R>>2];break}c[P>>2]=f+-48;while(1
){if((c[P>>2]|0)>>>0<(c[T>>2]|0)>>>0)break;if((d[(c[P>>2]|0)+12
>>0]|0)&4|0)break;c[P>>2]=(c[P>>2]|0)+-48}c[N>>2]=(c[R>>2]|0)+48;while(1){
if((c[N>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;if((d[(c[N>>2]|0)+12
x3e;>0]|0)&4|0)break;c[N>>2]=(c[N>>2]|0)+48}if((((c[P>>2]|0)>>>0>=(c
[T>>2]|0)>>>0?(c[P>>2]|0)>>>0<(c[R>>2]|0)>>>0:0)?(
c[N>>2]|0)>>>0<(c[S>>2]|0)>>>0:0)?(c[N>>2]|0)>>>
0>(c[R>>2]|0)>>>0:0){f=c[(c[P>>2]|0)+8>>2]|0;e=c[R>>2]|0;if((c[(c[N
x3e;>2]|0)+4>>2]|0)==(c[(c[P>>2]|0)+4>>2]|0)){c[e+8>>2]=f;break}else{V=f+(xb((c[e+4
>>2]|0)-(c[(c[P>>2]|0)+4>>2]|0)|0,(c[(c[N>>2]|0)+8>>2]|0)-(c[(c[P>>2
]|0)+8>>2]|0)|0,(c[(c[N>>2]|0)+4>>2]|0)-(c[(c[P>>2]|0)+4>>2]|0)|0)|0)|0;c[(c[R
>>2]|0)+8>>2]=V;break}}c[(c[R>>2]|0)+8>>2]=(c[(c[O>>2]|0)+8>>2]|0)+((
c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2]|0)+4>>2]|0)+16&-32)}while(0);V=(c[R>>2
]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if((c[R>>2]|0)>>>0>(c[T>>2]|0)>
x3e;>0?(c[(c[R>>2]|0)+8>>2]|0)<(c[(c[R>>2]|0)+-48+8>>2]|0):0)c[(c[R>>
;2]|0)+8>>2]=c[(c[R>>2]|0)+-48+8>>2];if((((c[R>>2]|0)+48|0)>>>0<(c[S
>>2]|0)>>>0?(d[(c[R>>2]|0)+48+12>>0]|0)&4|0:0)?(c[(c[R>>2]|0)+8>
;>2]|0)>(c[(c[R>>2]|0)+48+8>>2]|0):0)c[(c[R>>2]|0)+8>>2]=c[(c[R>>2]|
0)+48+8>>2]}c[R>>2]=(c[R>>2]|0)+48}i=U;return}function $l(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;g=i;i=i+32|0;n=g+20|0;m=g+16|0;k=g+12|0;h=g+8|0;l=g+4|0;j=g;c[n>>2]=a;c[m>>2]=b;c[k
>>2]=e;c[h>>2]=f;c[l>>2]=(c[(c[h>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+4>
;>2]|0);c[j>>2]=am(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,d[(c[k>>2]|0)+12>
x3e;0]|0,d[(c[h>>2]|0)+12>>0]|0)|0;c[(c[h>>2]|0)+8>>2]=(c[(c[k>>2]|0)+8>
x3e;2]|0)+(c[j>>2]|0);i=g;return}function am(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;u=i;i=i+64|0;q=u+52|0;j=u+48|0;v=u+44|0;h=u+40|0;o=u+36|0;k=u+32|0;w=u+28|0;p=u+24|0;s=u+20|0;t=
u+16|0;n=u+12|0;r=u+8|0;m=u+4|0;l=u;c[j>>2]=a;c[v>>2]=b;c[h>>2]=e;c[o>>2]=f;c[k>>
;2]=g;c[w>>2]=c[(c[j>>2]|0)+112>>2];c[p>>2]=(c[w>>2]|0)+40+((c[v>>2]|
0)*396|0);c[s>>2]=c[h>>2];c[t>>2]=0;c[n>>2]=(c[v>>2]|0)==1&1;if(c[(c[j>
;>2]|0)+108>>2]&4|0?(d[(c[p>>2]|0)+212>>0]|0|0)==0:0){if((c[s>>2]|0)<0){c
[s>>2]=0-(c[h>>2]|0);c[t>>2]=1}if(c[n>>2]|0?!(c[(c[j>>2]|0)+108>>2]
x26;2|0):0)b=10;else b=8;do if((b|0)==8){if((c[n>>2]|0)==0?(c[(c[j>>2]|0)+108>>2]&1|0)==0:0){
b=10;break}c[m>>2]=c[s>>2];c[s>>2]=bm((c[p>>2]|0)+12|0,c[(c[p>>2]|0)+8>
x3e;2]|0,c[s>>2]|0)|0;if(c[n>>2]|0)if((c[s>>2]|0)>=64){c[s>>2]=(c[s>>2]|0
)+16&-64;break}else{c[s>>2]=64;break}h=c[s>>2]|0;if(c[(c[j>>2]|0)+108>>2]&8|0)
if((h|0)<64){c[s>>2]=64;break}else{c[s>>2]=(c[s>>2]|0)+32&-64;break}f=c[s>>2]|
0;if((h|0)<48){c[s>>2]=f+64>>1;break}h=c[s>>2]|0;if((f|0)>=128){c[s>>2]=h+32
x26;-64;break}c[s>>2]=h+22&-64;c[l>>2]=(c[s>>2]|0)-(c[m>>2]|0);if((c[l>>2
]|0)<0)c[l>>2]=0-(c[l>>2]|0);if((c[l>>2]|0)>=16?(c[s>>2]=c[m>>2],(c[
s>>2]|0)<48):0)c[s>>2]=(c[s>>2]|0)+64>>1}while(0);do if((b|0)==10?!((c[k>>
;2]&2|0)!=0&(c[n>>2]|0)!=0&(c[s>>2]|0)<192):0){h=c[s>>2]|0;if(c[o>>2
]&1|0){if((h|0)<80)c[s>>2]=64}else if((h|0)<56)c[s>>2]=56;if((c[(c[p>>2]|0)+8>
x3e;2]|0)>>>0>0){c[r>>2]=(c[s>>2]|0)-(c[(c[p>>2]|0)+12+4>>2]|0);if((
c[r>>2]|0)<0)c[r>>2]=0-(c[r>>2]|0);if((c[r>>2]|0)<40){w=c[(c[p>>2]|0
)+12+4>>2]|0;c[s>>2]=w;c[s>>2]=(c[s>>2]|0)<48?48:w;break}h=c[s>>2]|0;if((
c[s>>2]|0)>=192){c[s>>2]=h+32&-64;break}c[r>>2]=h&63;c[s>>2]=c[s>>
;2]&-64;h=c[r>>2]|0;if((c[r>>2]|0)<10){c[s>>2]=(c[s>>2]|0)+h;break}if((h|0)<
;32){c[s>>2]=(c[s>>2]|0)+10;break}if((c[r>>2]|0)<54){c[s>>2]=(c[s>>2]|0)+
54;break}else{c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);break}}}while(0);if(c[t>>2]|0)c[s>>
;2]=0-(c[s>>2]|0);c[q>>2]=c[s>>2];w=c[q>>2]|0;i=u;return w|0}c[q>>2]=c[h>
x3e;2];w=c[q>>2]|0;i=u;return w|0}function bm(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;o=i
;i=i+48|0;e=o+32|0;f=o+28|0;m=o+24|0;j=o+20|0;g=o+16|0;n=o+12|0;l=o+8|0;k=o+4|0;h=o;c[e>>2]=a;c[f>>2]=b;c[m
x3e;>2]=d;c[g>>2]=98;c[n>>2]=c[m>>2];c[j>>2]=0;while(1){if((c[j>>2]|0)>
;=(c[f>>2]|0))break;c[k>>2]=c[(c[e>>2]|0)+((c[j>>2]|0)*12|0)+4>>2];c[h>
x3e;2]=(c[m>>2]|0)-(c[k>>2]|0);if((c[h>>2]|0)<0)c[h>>2]=0-(c[h>>2]|0);if((
c[h>>2]|0)<(c[g>>2]|0)){c[g>>2]=c[h>>2];c[n>>2]=c[k>>2]}c[j>
;>2]=(c[j>>2]|0)+1}c[l>>2]=(c[n>>2]|0)+32&-64;f=c[m>>2]|0;e=c[l>>2]|
0;if((c[m>>2]|0)>=(c[n>>2]|0)){if((f|0)>=(e+48|0)){n=c[m>>2]|0;i=o;return n|0}c[m>
x3e;2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}else{if((f|0)<=(e-48|0)){n=c[m>>2]|0;i=o;return n|0
}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}return 0}function cm(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;c[h>>2]=c[h
x3e;>2];c[(c[f>>2]|0)+8>>2]=(c[(c[g>>2]|0)+8>>2]|0)+((c[(c[f>>2]|0)+4>
;>2]|0)-(c[(c[g>>2]|0)+4>>2]|0));i=e;return}function dm(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,q=0,r=0,s=0,t=0,u=0;q=i;i=i+64|0;u=q+52|0;s=q+48|0;t=q+44|0;r=q+40|0;p=q+36|0;o=q+32|0;f=q+28|0;m=q+24|0;h=q+20|0;
k=q+16|0;g=q+12|0;n=q+8|0;j=q+4|0;l=q;c[u>>2]=a;c[s>>2]=d;c[t>>2]=(c[u>>2]|0)+48+((c[s
x3e;>2]|0)*28|0);c[r>>2]=c[(c[t>>2]|0)+8>>2];c[p>>2]=(c[r>>2]|0)+((c[c[t
x3e;>2]>>2]|0)*52|0);a=(c[s>>2]|0)==0;c[o>>2]=c[r>>2];if(a){while(1){if((c[o>
x3e;2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[f>>2]=c[(c[o>>2]|0)+12
x3e;>2];a:do if(c[f>>2]|0){c[h>>2]=c[(c[o>>2]|0)+40>>2];c[k>>2]=c[(c[o>
;>2]|0)+44>>2];c[m>>2]=c[h>>2];while(1){c[(c[m>>2]|0)+16>>2]=c[(c[f>
x3e;2]|0)+8>>2];u=c[m>>2]|0;b[u>>1]=e[u>>1]|0|64;if((c[m>>2]|0)==(c[k>>
;2]|0))break a;c[m>>2]=c[(c[m>>2]|0)+32>>2]}}while(0);c[o>>2]=(c[o>>2]|0)+52}i
=q;return}else{while(1){if((c[o>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[g>
;>2]=c[(c[o>>2]|0)+12>>2];b:do if(c[g>>2]|0){c[j>>2]=c[(c[o>>2]|0)+40>
;>2];c[l>>2]=c[(c[o>>2]|0)+44>>2];c[n>>2]=c[j>>2];while(1){c[(c[n>
x3e;2]|0)+20>>2]=c[(c[g>>2]|0)+8>>2];u=c[n>>2]|0;b[u>>1]=e[u>>1]|0|128
;if((c[n>>2]|0)==(c[l>>2]|0))break b;c[n>>2]=c[(c[n>>2]|0)+32>>2]}}while(0);c[
o>>2]=(c[o>>2]|0)+52}i=q;return}}function em(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,q=
0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;z=i;i=i+96|0;B=z+80|0;g=z+76|0;f=z+72|0;w=z+68|0;A=z+64|0;n=z+60|0;m=z+56|0;x=z+52
|0;v=z+48|0;l=z+44|0;y=z+40|0;u=z+36|0;p=z+32|0;k=z+28|0;s=z+24|0;q=z+20|0;r=z+16|0;o=z+12|0;t=z+8|0;j=z+4|0;h=z;c[B>>
2]=a;c[g>>2]=d;c[f>>2]=c[(c[B>>2]|0)+32>>2];c[w>>2]=(c[f>>2]|0)+((c[(
c[B>>2]|0)+28>>2]|0)*40|0);c[A>>2]=(c[B>>2]|0)+48+((c[g>>2]|0)*28|0);c[n>
x3e;2]=c[(c[A>>2]|0)+20>>2];c[m>>2]=(c[n>>2]|0)+((c[(c[A>>2]|0)+12>>
2]|0)*48|0);if(!(c[g>>2]|0))c[x>>2]=64;else c[x>>2]=128;if((c[n>>2]|0)>>>
0>=(c[m>>2]|0)>>>0){i=z;return}c[v>>2]=c[f>>2];while(1){if((c[v>>2]|
0)>>>0>=(c[w>>2]|0)>>>0)break;do if(!(e[c[v>>2]>>1]&c[x>
;>2])){if(e[c[v>>2]>>1]&256|0?(e[c[v>>2]>>1]&512|0)==0:0)break;d=c[v>
;>2]|0;if((c[g>>2]|0)==1){c[y>>2]=b[d+14>>1];c[u>>2]=c[(c[v>>2]|0)+8>
;>2]}else{c[y>>2]=b[d+12>>1];c[u>>2]=c[(c[v>>2]|0)+4>>2]}c[p>>2
]=c[y>>2];c[l>>2]=c[n>>2];c[k>>2]=(b[c[l>>2]>>1]|0)-(c[y>>
2]|0);a:do if((c[k>>2]|0)>=0)c[y>>2]=(c[(c[l>>2]|0)+8>>2]|0)-((c[(c[l>>2]|
0)+4>>2]|0)-(c[u>>2]|0));else{c[l>>2]=(c[m>>2]|0)+-48;c[k>>2]=(c[y>>
2]|0)-(b[c[l>>2]>>1]|0);if((c[k>>2]|0)>=0){c[y>>2]=(c[(c[l>>2]|0)+8>
x3e;2]|0)+((c[u>>2]|0)-(c[(c[l>>2]|0)+4>>2]|0));break}c[s>>2]=0;c[q>>2]=((c[m
x3e;>2]|0)-(c[n>>2]|0)|0)/48|0;b:do if((c[q>>2]|0)<=8){c[t>>2]=0;while(1){if((c[t>
x3e;2]|0)>=(c[q>>2]|0))break;if((b[(c[n>>2]|0)+((c[t>>2]|0)*48|0)>>1]|0)>=(c[y
>>2]|0))break;c[t>>2]=(c[t>>2]|0)+1}d=c[t>>2]|0;if((b[(c[n>>2]|0)+((c[t>
x3e;2]|0)*48|0)>>1]|0)==(c[y>>2]|0)){c[y>>2]=c[(c[n>>2]|0)+(d*48|0)+8>>2];break
a}else{c[s>>2]=d;break}}else{while(1){if((c[s>>2]|0)>=(c[q>>2]|0))break b;c[r>>2]=(
c[q>>2]|0)+(c[s>>2]|0)>>1;c[l>>2]=(c[n>>2]|0)+((c[r>>2]|0)*48|0);c[o
>>2]=b[c[l>>2]>>1];if((c[y>>2]|0)<(c[o>>2]|0)){c[q>>2]=c[r>
;>2];continue}if((c[y>>2]|0)<=(c[o>>2]|0))break;c[s>>2]=(c[r>>2]|0)+1}c[y>
;>2]=c[(c[l>>2]|0)+8>>2];break a}while(0);c[j>>2]=(c[n>>2]|0)+((c[s>>2]|0
)*48|0)+-48;c[h>>2]=(c[n>>2]|0)+((c[s>>2]|0)*48|0);if(!(c[(c[j>>2]|0)+16>>2]|0
)){B=Vb((c[(c[h>>2]|0)+8>>2]|0)-(c[(c[j>>2]|0)+8>>2]|0)|0,(b[c[h>>2]>>
;1]|0)-(b[c[j>>2]>>1]|0)|0)|0;c[(c[j>>2]|0)+16>>2]=B}B=c[(c[j>>2]|0)+8>
x3e;2]|0;c[y>>2]=B+(Mb((c[p>>2]|0)-(b[c[j>>2]>>1]|0)|0,c[(c[j>>2]|0)+16>
x3e;2]|0)|0)}while(0);d=c[y>>2]|0;a=c[v>>2]|0;if(!(c[g>>2]|0))c[a+16>>2]=d;else c[a+20
x3e;>2]=d;B=c[v>>2]|0;b[B>>1]=e[B>>1]|c[x>>2]}while(0);c[v>>2]=(c[v>
x3e;2]|0)+40}i=z;return}function fm(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,s=0;r=i;i=i+48|0;s=
r+44|0;d=r+40|0;o=r+36|0;n=r+32|0;f=r+28|0;g=r+24|0;p=r+20|0;m=r+16|0;h=r+12|0;j=r+8|0;k=r+4|0;l=r;c[s>>2]=a;c[d>
x3e;2]=b;c[o>>2]=c[(c[s>>2]|0)+32>>2];c[n>>2]=(c[o>>2]|0)+((c[(c[s>>
2]|0)+28>>2]|0)*40|0);c[f>>2]=c[(c[s>>2]|0)+44>>2];c[g>>2]=(c[f>>2]|
0)+(c[(c[s>>2]|0)+40>>2]<<2);a:do if(!(c[d>>2]|0)){c[p>>2]=64;c[m>>2
]=c[o>>2];while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a;
c[(c[m>>2]|0)+24>>2]=c[(c[m>>2]|0)+16>>2];c[(c[m>>2]|0)+28>>2]=c[(c[
m>>2]|0)+4>>2];c[m>>2]=(c[m>>2]|0)+40}}else{c[p>>2]=128;c[m>>2]=c[o
x3e;>2];while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a;c[(c[m
x3e;>2]|0)+24>>2]=c[(c[m>>2]|0)+20>>2];c[(c[m>>2]|0)+28>>2]=c[(c[m>
x3e;2]|0)+8>>2];c[m>>2]=(c[m>>2]|0)+40}}while(0);c[m>>2]=c[o>>2];while(1){if((
c[f>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[m>>2]=c[c[f>>
2]>>2];c[h>>2]=c[(c[m>>2]|0)+36>>2];c[j>>2]=c[m>>2];while(1){if((c[m
>>2]|0)>>>0>(c[h>>2]|0)>>>0)break;b=c[m>>2]|0;if((e[c[m>
x3e;2]>>1]|0)&c[p>>2]|0){q=14;break}c[m>>2]=b+40}do if((q|0)==14){q=0;c[k>>2]=b;c[l
>>2]=c[m>>2];b:while(1){if((c[m>>2]|0)>>>0<(c[h>>2]|0)>>
x3e;0)b=((e[(c[m>>2]|0)+40>>1]|0)&c[p>>2]|0)!=0;else b=0;a=c[m>>2]|0;if(b){c[m>
;>2]=a+40;continue}c[l>>2]=a;c[m>>2]=(c[m>>2]|0)+40;while(1){if((c[m>>2]|0)>
x3e;>0>(c[h>>2]|0)>>>0)break b;if((e[c[m>>2]>>1]|0)&c[p>>2
]|0)break;c[m>>2]=(c[m>>2]|0)+40}gm((c[l>>2]|0)+40|0,(c[m>>2]|0)+-40|0,c[l>>2]|
0,c[m>>2]|0)}if((c[l>>2]|0)==(c[k>>2]|0)){hm(c[j>>2]|0,c[h>>2]|0,c[k>>
;2]|0);break}if((c[l>>2]|0)>>>0<(c[h>>2]|0)>>>0)gm((c[l>>2]|0)+
40|0,c[h>>2]|0,c[l>>2]|0,c[k>>2]|0);if((c[k>>2]|0)>>>0>(c[o>>
;2]|0)>>>0)gm(c[j>>2]|0,(c[k>>2]|0)+-40|0,c[l>>2]|0,c[k>>2]|0)}while(0);c
[f>>2]=(c[f>>2]|0)+4}s=(c[d>>2]|0)==0;c[m>>2]=c[o>>2];if(s){while(1){if((c[m
x3e;>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[(c[m>>2]|0)+16>>2]=
c[(c[m>>2]|0)+24>>2];c[m>>2]=(c[m>>2]|0)+40}i=r;return}else{while(1){if((c[m>>
2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[(c[m>>2]|0)+20>>2]=c[(c[m>
;>2]|0)+24>>2];c[m>>2]=(c[m>>2]|0)+40}i=r;return}}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;q=i;i=i+48|0;f=q+36|0;g=q+32|0;h=q+28|0;j=q+24|0;m=q+20|0;n=q+16|0;o=q+12|0;p=
q+8|0;k=q+4|0;l=q;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[o>>2]=c[(c[h>
x3e;2]|0)+28>>2];c[p>>2]=c[(c[j>>2]|0)+28>>2];c[k>>2]=(c[(c[h>>2]|0)+
24>>2]|0)-(c[o>>2]|0);c[l>>2]=(c[(c[j>>2]|0)+24>>2]|0)-(c[p>>2]|0);if
((c[f>>2]|0)>>>0>(c[g>>2]|0)>>>0){i=q;return}if((c[o>>2]|0)==(c
[p>>2]|0)){c[m>>2]=c[f>>2];while(1){if((c[m>>2]|0)>>>0>(c[g>>
;2]|0)>>>0)break;c[n>>2]=c[(c[m>>2]|0)+28>>2];if((c[n>>2]|0)<=(c[o
x3e;>2]|0))c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);else c[n>>2]=(c[n>>2]|0)+(c[l
x3e;>2]|0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>2]|0)+40}i=q;return
}e=(c[o>>2]|0)<(c[p>>2]|0);c[m>>2]=c[f>>2];if(e){while(1){if((c[m>>2]|0)
x3e;>>0>(c[g>>2]|0)>>>0)break;c[n>>2]=c[(c[m>>2]|0)+28>>2];
do if((c[n>>2]|0)>(c[o>>2]|0))if((c[n>>2]|0)>=(c[p>>2]|0)){c[n>>2]=(
c[n>>2]|0)+(c[l>>2]|0);break}else{e=c[(c[h>>2]|0)+24>>2]|0;c[n>>2]=e+(xb((c[n
x3e;>2]|0)-(c[o>>2]|0)|0,(c[(c[j>>2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+24>>2]|0
)|0,(c[p>>2]|0)-(c[o>>2]|0)|0)|0);break}else c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);while
(0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>2]|0)+40}i=q;return}else{while(
1){if((c[m>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[n>>2]=c[(c[m>
;>2]|0)+28>>2];do if((c[n>>2]|0)>(c[p>>2]|0))if((c[n>>2]|0)>=(c[o>
x3e;2]|0)){c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);break}else{e=c[(c[h>>2]|0)+24>>2]|0
;c[n>>2]=e+(xb((c[n>>2]|0)-(c[o>>2]|0)|0,(c[(c[j>>2]|0)+24>>2]|0)-(c[(c[h>
;>2]|0)+24>>2]|0)|0,(c[p>>2]|0)-(c[o>>2]|0)|0)|0);break}else c[n>>2]=(c[n>>
;2]|0)+(c[l>>2]|0);while(0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>
;2]|0)+40}i=q;return}}function hm(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;e=k+16|0;f=k+12|0;g=k+8|0;j=
k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=(c[(c[g>>2]|0)+24>>2
]|0)-(c[(c[g>>2]|0)+28>>2]|0);if(!(c[h>>2]|0)){i=k;return}c[j>>2]=c[e>>2];while
(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[(c[j>>2]|0)+24
x3e;>2]=(c[(c[j>>2]|0)+28>>2]|0)+(c[h>>2]|0);c[j>>2]=(c[j>>2]|0)+40}c[j
x3e;>2]=(c[g>>2]|0)+40;while(1){if((c[j>>2]|0)>>>0>(c[f>>2]|0)>>
;>0)break;c[(c[j>>2]|0)+24>>2]=(c[(c[j>>2]|0)+28>>2]|0)+(c[h>>2]|0);c[j
x3e;>2]=(c[j>>2]|0)+40}i=k;return}function im(b,d){b=b|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;m=k+20
|0;l=k+16|0;g=k+12|0;f=k+8|0;j=k+4|0;h=k;c[m>>2]=b;c[l>>2]=d;c[g>>2]=c[(c[m>>2]|0)+32>
;>2];c[f>>2]=(c[g>>2]|0)+((c[(c[m>>2]|0)+28>>2]|0)*40|0);c[j>>2]=c[(c[l
x3e;>2]|0)+4>>2];c[h>>2]=c[(c[l>>2]|0)+8>>2];while(1){if((c[g>>2]|0)>
;>>0>=(c[f>>2]|0)>>>0)break;c[c[j>>2]>>2]=c[(c[g>>2]|0)+16
>>2];c[(c[j>>2]|0)+4>>2]=c[(c[g>>2]|0)+20>>2];do if(!((e[c[g>>2]>
;>1]|0)&1|0)){b=c[h>>2]|0;if((e[c[g>>2]>>1]|0)&2|0){a[b>>0]=2;break}else{
a[b>>0]=1;break}}else a[c[h>>2]>>0]=0;while(0);c[g>>2]=(c[g>>2]|0)+40;c[j>
;>2]=(c[j>>2]|0)+8;c[h>>2]=(c[h>>2]|0)+1}i=k;return}function jm(a,b){a=a|0;b=b|0;var d=0,f=0,
g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[f>>2]|0)+92>
;>2];c[(c[d>>2]|0)+36>>2]=e[(c[f>>2]|0)+68>>1];if(Id(c[f>>2]|0,1970170211
)|0){c[(c[f>>2]|0)+92>>2]=0;a=c[f>>2]|0;g=c[g>>2]|0;Jd(a,g)|0;i=h;return 0}else{Gl(c[d
x3e;>2]|0,c[f>>2]|0,3e4);Rl(c[d>>2]|0,c[f>>2]|0);a=c[f>>2]|0;g=c[g>>2]|0;
Jd(a,g)|0;i=h;return 0}return 0}function km(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)+4|0;a=c[e>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>
;>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2];c[b+16>>2]=c[a+16>>
;2];c[b+20>>2]=c[a+20>>2];c[b+24>>2]=c[a+24>>2];lm(c[f>>2]|0,c[e>>2]|
0,0);lm(c[f>>2]|0,c[e>>2]|0,1);i=d;return}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;g=i;i
=i+16|0;j=g+12|0;e=g+8|0;h=g+4|0;f=g;c[j>>2]=a;c[e>>2]=b;c[h>>2]=d;c[f>>2]=(c[j>>
;2]|0)+40+((c[h>>2]|0)*396|0);d=c[e>>2]|0;if(!(c[h>>2]|0)){c[c[f>>2]>>2]=c[d+4
>>2];c[(c[f>>2]|0)+4>>2]=c[(c[e>>2]|0)+12>>2];i=g;return}else{c[c[f>>
;2]>>2]=c[d+8>>2];c[(c[f>>2]|0)+4>>2]=c[(c[e>>2]|0)+16>>2];i=g;return
}}function mm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;j=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=
a;c[j>>2]=b;Dl(c[d>>2]|0,c[j>>2]|0);c[(c[d>>2]|0)+4>>2]=c[(c[j>>2]|0
)+40>>2];c[(c[d>>2]|0)+8>>2]=c[(c[j>>2]|0)+40+4>>2];c[(c[d>>2]|0)+12
>>2]=c[(c[j>>2]|0)+40+396>>2];c[(c[d>>2]|0)+16>>2]=c[(c[j>>2]|0)+40+
396+4>>2];c[e>>2]=c[(c[j>>2]|0)+4+20>>2];c[g>>2]=c[(c[d>>2]|0)+104
x3e;>2];c[f>>2]=0;if((c[e>>2]|0)==2|(c[e>>2]|0)==3)c[f>>2]=c[f>>2]|1;if((
c[e>>2]|0)==2|(c[e>>2]|0)==4)c[f>>2]=c[f>>2]|2;if((c[e>>2]|0)!=1)c[f>>
;2]=c[f>>2]|4;if((c[e>>2]|0)!=2){j=c[g>>2]|0;j=j|4;c[g>>2]=j;j=c[g>>2]|0;g=c[d
>>2]|0;g=g+104|0;c[g>>2]=j;g=c[f>>2]|0;j=c[d>>2]|0;j=j+108|0;c[j>>2]=g;i=h;return
0}c[f>>2]=c[f>>2]|8;j=c[g>>2]|0;j=j|4;c[g>>2]=j;j=c[g>>2]|0;g=c[d>>
2]|0;g=g+104|0;c[g>>2]=j;g=c[f>>2]|0;j=c[d>>2]|0;j=j+108|0;c[j>>2]=g;i=h;return 0}function
nm(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+16|0;f=j+12|0;k=j+8|0;h=j+4|0;g=j;c[e>>2]=a;
c[f>>2]=b;c[k>>2]=d;c[k>>2]=c[k>>2];c[h>>2]=Il(c[e>>2]|0,c[f>
x3e;2]|0)|0;if(c[h>>2]|0){k=c[h>>2]|0;i=j;return k|0}if((c[(c[e>>2]|0)+104>>2]&1|0)==
0?(c[h>>2]=om(c[e>>2]|0,0)|0,c[h>>2]|0):0){k=c[h>>2]|0;i=j;return k|0}if((c[(c[e>
x3e;2]|0)+104>>2]&2|0)==0?(c[h>>2]=om(c[e>>2]|0,1)|0,c[h>>2]|0):0){k=c[h>>
;2]|0;i=j;return k|0}c[g>>2]=0;while(1){if((c[g>>2]|0)>=2)break;if((c[g>>2]|0)==0?!(c[(c[e>
;>2]|0)+104>>2]&1|0):0)a=12;else a=10;if(((a|0)==10?(a=0,(c[g>>2]|0)==1):0)?(c[(c[e>>2]|
0)+104>>2]&2|0)==0:0)a=12;if((a|0)==12){sm(c[e>>2]|0,c[g>>2]|0);ym(c[e>>2]|0,c[g>
;>2]|0);em(c[e>>2]|0,c[g>>2]|0);fm(c[e>>2]|0,c[g>>2]|0)}c[g>>2]=(c[g>
;>2]|0)+1}im(c[e>>2]|0,c[f>>2]|0);k=c[h>>2]|0;i=j;return k|0}function om(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=pm(c[d>>2]|
0,c[e>>2]|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}qm(c[d>>2]|0,c[e>>2]|0
);c[f>>2]=rm(c[d>>2]|0,c[e>>2]|0)|0;a=c[f>>2]|0;i=g;return a|0}function pm(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,q=0,r=0,s=0,t=0;q=i;i=i+48|0;g=q+44|0;s=q+40|0;r=q+36|0;t=q+32|0;p=q+28|0;o=q+24|0;h
=q+20|0;n=q+16|0;m=q+12|0;l=q+8|0;j=q+4|0;k=q;c[s>>2]=b;c[r>>2]=f;c[t>>2]=(c[s>>2]|0)+48
+((c[r>>2]|0)*28|0);c[p>>2]=c[(c[t>>2]|0)+8>>2];c[o>>2]=(c[p>>2]|0)+((
c[c[t>>2]>>2]|0)*52|0);c[h>>2]=Kl(c[s>>2]|0,c[r>>2]|0)|0;if(c[h>>2]|
0){c[g>>2]=c[h>>2];t=c[g>>2]|0;i=q;return t|0}c[n>>2]=c[p>>2];while(1){if((c[n
>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[m>>2]=c[(c[n>>2]|
0)+40>>2];c[l>>2]=c[(c[n>>2]|0)+44>>2];c[j>>2]=(e[c[m>>2]>>
;1]|0)&3;t=c[n>>2]|0;a[t>>0]=(d[t>>0]|0)&-2;while(1){if((c[m>>2]|0)==(c[l>
;>2]|0))break;c[m>>2]=c[(c[m>>2]|0)+32>>2];c[k>>2]=(e[c[m>>2]>>
1]|0)&3;if(!((c[j>>2]|0)!=0|(c[k>>2]|0)!=0))break;if((c[m>>2]|0)==(c[l>>2]|0)){t=c[
n>>2]|0;a[t>>0]=d[t>>0]|0|1}c[j>>2]=c[k>>2]}c[n>>2]=(c[n>>
2]|0)+52}c[g>>2]=0;t=c[g>>2]|0;i=q;return t|0}function qm(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;v=i;i=i+80|0;x=v+68|0;w=v+64|0;y=v+60|0;u=v+56|0;t=v+52|0;n=v+48|0;r=v+44|0;s=v+40
|0;j=v+36|0;g=v+32|0;f=v+28|0;p=v+24|0;o=v+20|0;h=v+16|0;l=v+12|0;m=v+8|0;q=v+4|0;k=v;c[x>>2]=d;c[w>>2]=e;c[
y>>2]=(c[x>>2]|0)+48+((c[w>>2]|0)*28|0);c[u>>2]=c[(c[y>>2]|0)+8>>2];
c[t>>2]=(c[u>>2]|0)+((c[c[y>>2]>>2]|0)*52|0);c[n>>2]=c[(c[y>>2]|0)+24
>>2];c[j>>2]=(c[(c[(c[x>>2]|0)+112>>2]|0)+36>>2]<<3|0)/2048|0;e=c[x
x3e;>2]|0;if(!(c[w>>2]|0))e=c[e+4>>2]|0;else e=c[e+12>>2]|0;c[g>>2]=e;c[g>>
;2]=Vb(192,c[g>>2]|0)|0;c[r>>2]=c[u>>2];while(1){if((c[r>>2]|0)>>>0>=(
c[t>>2]|0)>>>0)break;a:do if((c[(c[r>>2]|0)+40>>2]|0)!=(c[(c[r>>2]|0)+44
x3e;>2]|0)?(a[(c[r>>2]|0)+1>>0]|0)==(c[n>>2]|0):0){c[s>>2]=c[u>>2];while(
1){if((c[s>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a;do if(((c[s>>2]|
0)!=(c[r>>2]|0)?((a[(c[r>>2]|0)+1>>0]|0)+(a[(c[s>>2]|0)+1>>0]|0)|0)==0:0)?(c[f
>>2]=(b[(c[s>>2]|0)+2>>1]|0)-(b[(c[r>>2]|0)+2>>1]|0),(c[f>>2]|0)>
;=0):0){c[p>>2]=b[(c[r>>2]|0)+4>>1];c[o>>2]=b[(c[r>>2]|0)+6>>1];if((
c[p>>2]|0)<(b[(c[s>>2]|0)+4>>1]|0))c[p>>2]=b[(c[s>>2]|0)+4>>1];
if((c[o>>2]|0)>(b[(c[s>>2]|0)+6>>1]|0))c[o>>2]=b[(c[s>>2]|0)+6>>
;1];c[h>>2]=(c[o>>2]|0)-(c[p>>2]|0);if((c[h>>2]|0)>=(c[j>>2]|0)){do if((c
[f>>2]<<3|0)<((c[(c[r>>2]|0)+32>>2]|0)*9|0)){if((c[f>>2]<<3|0)
x3e;=((c[(c[r>>2]|0)+32>>2]|0)*7|0)?(c[(c[r>>2]|0)+36>>2]|0)>=(c[h>>2]|0):
0)break;c[(c[r>>2]|0)+32>>2]=c[f>>2];c[(c[r>>2]|0)+36>>2]=c[h>>2];c[(
c[r>>2]|0)+20>>2]=c[s>>2]}while(0);if((c[f>>2]<<3|0)<((c[(c[s>>
2]|0)+32>>2]|0)*9|0)){if((c[f>>2]<<3|0)>=((c[(c[s>>2]|0)+32>>2]|0)*7|0)?(
c[(c[s>>2]|0)+36>>2]|0)>=(c[h>>2]|0):0)break;c[(c[s>>2]|0)+32>>2]=c[f>
;>2];c[(c[s>>2]|0)+36>>2]=c[h>>2];c[(c[s>>2]|0)+20>>2]=c[r>>2]}}}
while(0);c[s>>2]=(c[s>>2]|0)+52}}while(0);c[r>>2]=(c[r>>2]|0)+52}c[r>>2]=c[u
x3e;>2];while(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[l>
x3e;2]=c[(c[r>>2]|0)+20>>2];b:do if(((c[l>>2]|0?(c[(c[l>>2]|0)+20>>2]|0)==(c[r
>>2]|0):0)?(b[(c[l>>2]|0)+2>>1]|0)>(b[(c[r>>2]|0)+2>>1]|0):0)?(c[(c[r>
;>2]|0)+32>>2]|0)<(c[g>>2]|0):0){c[s>>2]=c[u>>2];c:while(1){if((c[s>>
;2]|0)>>>0>=(c[t>>2]|0)>>>0)break b;d:do if(((((b[(c[s>>2]|0)+2>>
;1]|0)<=(b[(c[r>>2]|0)+2>>1]|0)?(c[r>>2]|0)!=(c[s>>2]|0):0)?(c[m>>2]=c[(c
[s>>2]|0)+20>>2],c[m>>2]|0):0)?(c[(c[m>>2]|0)+20>>2]|0)==(c[s>>2]|0):
0)?(b[(c[m>>2]|0)+2>>1]|0)>=(b[(c[l>>2]|0)+2>>1]|0):0){if((b[(c[r>>2]|0)+
2>>1]|0)==(b[(c[s>>2]|0)+2>>1]|0)?(b[(c[l>>2]|0)+2>>1]|0)==(b[(c[m>>
2]|0)+2>>1]|0):0)break;if((c[(c[s>>2]|0)+32>>2]|0)>(c[(c[r>>2]|0)+32>>2]|
0)?(c[(c[r>>2]|0)+32>>2]<<2|0)>(c[(c[s>>2]|0)+32>>2]|0):0){if((c[(c[r>
;>2]|0)+36>>2]|0)<((c[(c[s>>2]|0)+36>>2]|0)*3|0))break c;c[q>>2]=c[u>>
;2];while(1){if((c[q>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break d;c[k>>2
]=c[(c[q>>2]|0)+20>>2];do if((c[k>>2]|0)==(c[s>>2]|0)){c[(c[q>>2]|0)+20>
x3e;2]=0;c[(c[q>>2]|0)+24>>2]=c[l>>2]}else{if((c[k>>2]|0)!=(c[m>>2]|0))break;c
[(c[q>>2]|0)+20>>2]=0;c[(c[q>>2]|0)+24>>2]=c[r>>2]}while(0);c[q>>2]=(
c[q>>2]|0)+52}}}while(0);c[s>>2]=(c[s>>2]|0)+52}c[(c[l>>2]|0)+20>>2]=0;c[(c[r
x3e;>2]|0)+20>>2]=0}while(0);c[r>>2]=(c[r>>2]|0)+52}c[r>>2]=c[u>>2];while
(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[s>>2]=c[(c[r>
;>2]|0)+20>>2];do if(c[s>>2]|0?(y=(c[s>>2]|0)+28|0,c[y>>2]=(c[y>>2]|0)+1,(
c[(c[s>>2]|0)+20>>2]|0)!=(c[r>>2]|0)):0){c[(c[r>>2]|0)+20>>2]=0;if((c[(c[s>
;>2]|0)+32>>2]|0)>=(c[g>>2]|0)?(c[(c[r>>2]|0)+32>>2]|0)>=(c[(c[s>>
;2]|0)+32>>2]<<2|0):0){y=(c[s>>2]|0)+28|0;c[y>>2]=(c[y>>2]|0)+-1;break}c[(c[r
x3e;>2]|0)+24>>2]=c[(c[s>>2]|0)+20>>2]}while(0);c[r>>2]=(c[r>>2]|0)+52}i=
v;return}
function Is(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=a+4|0;o=c[n>>2]|0;d=o&-8;k=a+d
|0;i=c[18404]|0;e=o&3;if(!((e|0)!=1&a>>>0>=i>>>0&a>>>0<k
x3e;>>0))ya();f=c[k+4>>2]|0;if(!(f&1))ya();if(!e){if(b>>>0<256){a=0;return a|0}if(d
>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[18520]<<1>>>0:0
)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a
|0;m=a+b|0;c[n>>2]=o&1|b|2;c[m+4>>2]=d|3;b=m+d+4|0;c[b>>2]=c[b>>2]|1;Js(m,d);return
a|0}if((k|0)==(c[18406]|0)){d=(c[18403]|0)+d|0;if(d>>>0<=b>>>0){a=0;return a|0}m=d-b|0;l=a+b
|0;c[n>>2]=o&1|b|2;c[l+4>>2]=m|1;c[18406]=l;c[18403]=m;return a|0}if((k|0)==(c[18405]|0)){e=(c[18402]|0
)+d|0;if(e>>>0<b>>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){e=a+b|0;m=e+d|0
;c[n>>2]=o&1|b|2;c[e+4>>2]=d|1;c[m>>2]=d;b=m+4|0;c[b>>2]=c[b>>2]&-2}
else{c[n>>2]=o&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[18402]=d;c[18405]=e;return a|0}if(
f&2|0){a=0;return a|0}l=(f&-8)+d|0;if(l>>>0<b>>>0){a=0;return a|0}m=l-b|0;g=f>
x3e;>3;do if(f>>>0>=256){h=c[k+24>>2]|0;f=c[k+12>>2]|0;do if((f|0)==(k|0)){e=k+16|0
;f=e+4|0;d=c[f>>2]|0;if(!d){d=c[e>>2]|0;if(!d){j=0;break}}else e=f;while(1){f=d+20|0;g=c[f>>2]|0;if
(g|0){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0<i>>>
0)ya();else{c[e>>2]=0;j=d;break}}else{g=c[k+8>>2]|0;if(g>>>0<i>>>0)ya();d
=g+12|0;if((c[d>>2]|0)!=(k|0))ya();e=f+8|0;if((c[e>>2]|0)==(k|0)){c[d>>2]=f;c[e>>2]=g;j=
f;break}else ya()}while(0);if(h|0){d=c[k+28>>2]|0;e=73904+(d<<2)|0;if((k|0)==(c[e>>2]|0)){c[e>
;>2]=j;if(!j){c[18401]=c[18401]&~(1<<d);break}}else{if(h>>>0<(c[18404]|0)>>>
;0)ya();d=h+16|0;if((c[d>>2]|0)==(k|0))c[d>>2]=j;else c[h+20>>2]=j;if(!j)break}f=c[18404]|0;if(j
x3e;>>0<f>>>0)ya();c[j+24>>2]=h;d=k+16|0;e=c[d>>2]|0;do if(e|0)if(e>>
;>0<f>>>0)ya();else{c[j+16>>2]=e;c[e+24>>2]=j;break}while(0);d=c[d+4>>2]|
0;if(d|0)if(d>>>0<(c[18404]|0)>>>0)ya();else{c[j+20>>2]=d;c[d+24>>2]=j;break
}}}else{e=c[k+8>>2]|0;f=c[k+12>>2]|0;d=73640+(g<<1<<2)|0;if((e|0)!=(d|0)){if(e>>
;>0<i>>>0)ya();if((c[e+12>>2]|0)!=(k|0))ya()}if((f|0)==(e|0)){c[18400]=c[18400]&~(1<
;<g);break}if((f|0)!=(d|0)){if(f>>>0<i>>>0)ya();d=f+8|0;if((c[d>>2]|0)==(k|0))
h=d;else ya()}else h=f+8|0;c[e+12>>2]=f;c[h>>2]=e}while(0);if(m>>>0<16){c[n>>2
]=l|o&1|2;b=a+l+4|0;c[b>>2]=c[b>>2]|1;return a|0}else{l=a+b|0;c[n>>2]=o&1|b|2;c[l+4>
;>2]=m|3;b=l+m+4|0;c[b>>2]=c[b>>2]|1;Js(l,m);return a|0}return 0}function Js(a,b){a=a|0;b=b|0;var d=0,e
=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;
if(!(d&3))return;l=a+(0-f)|0;k=f+b|0;i=c[18404]|0;if(l>>>0<i>>>0)ya();if((l|0)==(c[18405
]|0)){a=o+4|0;d=c[a>>2]|0;if((d&3|0)!=3){r=l;g=k;break}c[18402]=k;c[a>>2]=d&-2;c[l+4>>2]=
k|1;c[l+k>>2]=k;return}e=f>>>3;if(f>>>0<256){a=c[l+8>>2]|0;b=c[l+12>
x3e;2]|0;d=73640+(e<<1<<2)|0;if((a|0)!=(d|0)){if(a>>>0<i>>>0)ya();if((c[a
+12>>2]|0)!=(l|0))ya()}if((b|0)==(a|0)){c[18400]=c[18400]&~(1<<e);r=l;g=k;break}if((b|0)!=(d|0)){if(b
x3e;>>0<i>>>0)ya();d=b+8|0;if((c[d>>2]|0)==(l|0))h=d;else ya()}else h=b+8|0;c[a+12>
x3e;2]=b;c[h>>2]=a;r=l;g=k;break}f=c[l+24>>2]|0;b=c[l+12>>2]|0;do if((b|0)==(l|0)){a=l+16|0;b=a+4|
0;d=c[b>>2]|0;if(!d){d=c[a>>2]|0;if(!d){j=0;break}}else a=b;while(1){b=d+20|0;e=c[b>>2]|0;if(e|0){
d=e;a=b;continue}b=d+16|0;e=c[b>>2]|0;if(!e)break;else{d=e;a=b}}if(a>>>0<i>>>0)ya();
else{c[a>>2]=0;j=d;break}}else{e=c[l+8>>2]|0;if(e>>>0<i>>>0)ya();d=e+12|0
;if((c[d>>2]|0)!=(l|0))ya();a=b+8|0;if((c[a>>2]|0)==(l|0)){c[d>>2]=b;c[a>>2]=e;j=b;break
}else ya()}while(0);if(f){d=c[l+28>>2]|0;a=73904+(d<<2)|0;if((l|0)==(c[a>>2]|0)){c[a>>2]=
j;if(!j){c[18401]=c[18401]&~(1<<d);r=l;g=k;break}}else{if(f>>>0<(c[18404]|0)>>>
;0)ya();d=f+16|0;if((c[d>>2]|0)==(l|0))c[d>>2]=j;else c[f+20>>2]=j;if(!j){r=l;g=k;break}}b=c[18404
]|0;if(j>>>0<b>>>0)ya();c[j+24>>2]=f;d=l+16|0;a=c[d>>2]|0;do if(a|0)if(a
x3e;>>0<b>>>0)ya();else{c[j+16>>2]=a;c[a+24>>2]=j;break}while(0);d=c[d+4>
x3e;2]|0;if(d)if(d>>>0<(c[18404]|0)>>>0)ya();else{c[j+20>>2]=d;c[d+24>>2]=
j;r=l;g=k;break}else{r=l;g=k}}else{r=l;g=k}}else{r=a;g=b}while(0);h=c[18404]|0;if(o>>>0<h>>>0
)ya();d=o+4|0;a=c[d>>2]|0;if(!(a&2)){if((o|0)==(c[18406]|0)){q=(c[18403]|0)+g|0;c[18403]=q;c[18406]=r;c[r+4>
x3e;2]=q|1;if((r|0)!=(c[18405]|0))return;c[18405]=0;c[18402]=0;return}if((o|0)==(c[18405]|0)){q=(c[18402]|0)+g|0;c[18402]=q;c[18405
]=r;c[r+4>>2]=q|1;c[r+q>>2]=q;return}g=(a&-8)+g|0;e=a>>>3;do if(a>>>0>
;=256){f=c[o+24>>2]|0;b=c[o+12>>2]|0;do if((b|0)==(o|0)){a=o+16|0;b=a+4|0;d=c[b>>2]|0;if(!d){d=c[a
>>2]|0;if(!d){n=0;break}}else a=b;while(1){b=d+20|0;e=c[b>>2]|0;if(e|0){d=e;a=b;continue}b=d+16|0;e=c[b>
;>2]|0;if(!e)break;else{d=e;a=b}}if(a>>>0<h>>>0)ya();else{c[a>>2]=0;n=d;break}}
else{e=c[o+8>>2]|0;if(e>>>0<h>>>0)ya();d=e+12|0;if((c[d>>2]|0)!=(o|0))ya();
a=b+8|0;if((c[a>>2]|0)==(o|0)){c[d>>2]=b;c[a>>2]=e;n=b;break}else ya()}while(0);if(f|0){d=c[o+28
x3e;>2]|0;a=73904+(d<<2)|0;if((o|0)==(c[a>>2]|0)){c[a>>2]=n;if(!n){c[18401]=c[18401]&~(1
<<d);break}}else{if(f>>>0<(c[18404]|0)>>>0)ya();d=f+16|0;if((c[d>>2]|0)==(
o|0))c[d>>2]=n;else c[f+20>>2]=n;if(!n)break}b=c[18404]|0;if(n>>>0<b>>>0)
ya();c[n+24>>2]=f;d=o+16|0;a=c[d>>2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else
{c[n+16>>2]=a;c[a+24>>2]=n;break}while(0);d=c[d+4>>2]|0;if(d|0)if(d>>>0<(c[18404
]|0)>>>0)ya();else{c[n+20>>2]=d;c[d+24>>2]=n;break}}}else{a=c[o+8>>2]|0;b=c[o+12>
;>2]|0;d=73640+(e<<1<<2)|0;if((a|0)!=(d|0)){if(a>>>0<h>>>0)ya();if((
c[a+12>>2]|0)!=(o|0))ya()}if((b|0)==(a|0)){c[18400]=c[18400]&~(1<<e);break}if((b|0)!=(d|0)){if(b>
x3e;>0<h>>>0)ya();d=b+8|0;if((c[d>>2]|0)==(o|0))m=d;else ya()}else m=b+8|0;c[a+12>>
2]=b;c[m>>2]=a}while(0);c[r+4>>2]=g|1;c[r+g>>2]=g;if((r|0)==(c[18405]|0)){c[18402]=g;return}}else{
c[d>>2]=a&-2;c[r+4>>2]=g|1;c[r+g>>2]=g}d=g>>>3;if(g>>>0<256
){b=73640+(d<<1<<2)|0;a=c[18400]|0;d=1<<d;if(a&d){d=b+8|0;a=c[d>>2]|0;if(a>>
;>0<(c[18404]|0)>>>0)ya();else{p=d;q=a}}else{c[18400]=a|d;p=b+8|0;q=b}c[p>>2]=r;c[q+12>
x3e;2]=r;c[r+8>>2]=q;c[r+12>>2]=b;return}d=g>>>8;if(d)if(g>>>0>16777215)b
=31;else{p=(d+1048320|0)>>>16&8;q=d<<p;o=(q+520192|0)>>>16&4;q=q<<o;
b=(q+245760|0)>>>16&2;b=14-(o|p|b)+(q<<b>>>15)|0;b=g>>>(b+7|0)&
1|b<<1}else b=0;e=73904+(b<<2)|0;c[r+28>>2]=b;c[r+20>>2]=0;c[r+16>>2]=0;d=c[18401
]|0;a=1<<b;if(!(d&a)){c[18401]=d|a;c[e>>2]=r;c[r+24>>2]=e;c[r+12>>2]=r;c[r+8>
x3e;2]=r;return}f=g<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]
x26;-8|0)==(g|0)){b=d;e=127;break}a=d+16+(f>>>31<<2)|0;b=c[a>>2]|0;if(!b){e=124;break}else{f=
f<<1;d=b}}if((e|0)==124){if(a>>>0<(c[18404]|0)>>>0)ya();c[a>>2]=r;c[r+24
x3e;>2]=d;c[r+12>>2]=r;c[r+8>>2]=r;return}else if((e|0)==127){d=b+8|0;a=c[d>>2]|0;q=c[18404]|
0;if(!(a>>>0>=q>>>0&b>>>0>=q>>>0))ya();c[a+12>
x3e;2]=r;c[d>>2]=r;c[r+8>>2]=a;c[r+12>>2]=b;c[r+24>>2]=0;return}}function Ks(){}function
Ls(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (C=d,a-c
>>>0|0)|0}function Ms(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (C=b+d+(c>>>
;0<a>>>0|0)>>>0,c|0)|0}function Ns(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;h=b&3;i=d|d<<8|d<<16|d<<24;g=f&~3;if(h){h=b+4-h|0;while((b|0)
x3c;(h|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(g|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(f|0)){a[b>
x3e;0]=d;b=b+1|0}return b-e|0}function Os(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>>c;return a>>
x3e;c|(b&(1<<c)-1)<<32-c}C=0;return b>>>c-32|0}function Ps(a,b,c){a=a|0;b=b|0;c=c|0;if((
c|0)<32){C=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}C=a<
x3c;c-32;return 0}function Qs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;p=p+1|0;c[a>>2]=p;while((f|0)<(e|0)){if(!(
c[d+(f<<3)>>2]|0)){c[d+(f<<3)>>2]=p;c[d+((f<<3)+4)>>2]=b;c[d+((f<
;<3)+8)>>2]=0;C=e;return d|0}f=f+1|0}e=e*2|0;d=Hs(d|0,8*(e+1|0)|0)|0;d=Qs(a|0,b|0,d|0,e|0)|0;C=e;return d|0}function
Rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;while((f|0)<(d|0)){e=c[b+(f<<3)>>2]|0;if(!e)break;if((e|0)==(a
|0))return c[b+((f<<3)+4)>>2]|0;f=f+1|0}return 0}function Ss(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=
4096)return Ea(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if(!e)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 Ts(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 Ss(b,c,d)|0;return b|0}function Us(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>c;return a>
;>>c|(b&(1<<c)-1)<<32-c}C=(b|0)<0?-1:0;return b>>c-32|0}function Vs(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 Ws(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=_(e,f)|0;d=a>>
;>16;a=(c>>>16)+(_(e,d)|0)|0;e=b>>>16;b=_(e,f)|0;return (C=(a>>>16)+(_(e,d)|0)+(((
a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Xs(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)<
x3c;1;h=Ls(j^a|0,i^b|0,j|0,i|0)|0;g=C;a=f^j;b=e^i;return Ls((at(h,g,Ls(f^c|0,e^d|0,f|0,e|0)|0,C,0)|0)^a|0,C^b|0,a|0,b|0)|0}function
Ys(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+16|0;j=f|0;h=b>>31|((b|0)<0?-1:0)<
x3c;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;a=Ls(h^a|0,g^b|0,h|0,g|0)|0;b=C;at(a,b,Ls(l^d|0,k^e|0,l|0,k|0)|
0,C,j)|0;e=Ls(c[j>>2]^h|0,c[j+4>>2]^g|0,h|0,g|0)|0;d=C;i=f;return (C=d,e)|0}function Zs(a,b,c,d){a=a|0;b=b|0
;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Ws(e,f)|0;a=C;return (C=(_(b,f)|0)+(_(d,e)|0)+a|a&0,c|0|0)|0}function _s(a,b,c,d){a=a|0;
b=b|0;c=c|0;d=d|0;return at(a,b,c,d,0)|0}function $s(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+16|0;f=g|0;at(a,b,d,e,
f)|0;i=g;return (C=c[f+4>>2]|0,c[f>>2]|0)|0}function at(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0
,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(
h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (C=n,f
)|0}else{if(!g){n=0;f=0;return (C=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (C=n,f)|0}}g=(i|0)==0
;do if(h){if(!g){g=(aa(i|0)|0)-(aa(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>
;>>(m>>>0)&b|k<<i;b=k>>>(m>>>0)&b;g=0;i=l<<
i;break}if(!f){n=0;f=0;return (C=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (C=n,f)|0}g=h-1|0;if
(g&h|0){i=(aa(h|0)|0)+33-(aa(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>
31&k>>>(o>>>0)|(k<<m|l>>>(i>>>0))&b;b=b&k
x3e;>>(i>>>0);g=l<<p&j;i=(k<<p|l>>>(o>>>0))&
;j|l<<m&i-33>>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&
;0;p=a|0|0;return (C=o,p)|0}else{p=Vs(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>
;(p>>>0)|0;return (C=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c
[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (C=o,p)|0}if(!l){if(f|0){c[f
x3e;>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>
;0)>>>0;return (C=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&
;0}o=0;p=k>>>((Vs(i|0)|0)>>>0);return (C=o,p)|0}g=(aa(i|0)|0)-(aa(k|0)|0)|0;if(g>>>
0<=30){b=g+1|0;i=31-g|0;h=b;a=k<<i|l>>>(b>>>0);b=k>>>(b>>
x3e;0);g=0;i=l<<i;break}if(!f){o=0;p=0;return (C=o,p)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return
(C=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Ms(m|0,l|0,-1,-1)|0;d=C;j=i;i=0;do{e=j;j=g>>>31
|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Ls(k|0,d|0,
e|0,n|0)|0;p=C;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Ls(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>
x3e;31|((p|0)<0?-1:0)<<1)&l|0)|0;b=C;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4
x3e;>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|
0>>>31)&-2|i;return (C=o,p)|0}function bt(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return
Na[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ct(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Oa[a&63](b|0,c|0,d|0)|0}function
dt(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Pa[a&1](b|0,c|0,d|0,e|0,f|0)}function et(a,b,c,d,e,f,g,h,i,j){a=a|0;b=
b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;return Qa[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)|0}function ft(a,b,c
){a=a|0;b=b|0;c=c|0;Ra[a&7](b|0,c|0)}function gt(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 Sa[a&
3](b|0,c|0,d|0,e|0,f|0,g|0)|0}function ht(a,b){a=a|0;b=b|0;return Ta[a&63](b|0)|0}function it(a,b,c,d){a=a|0;b=b|0;c=c|0;d=
d|0;Ua[a&31](b|0,c|0,d|0)}function jt(a,b){a=a|0;b=b|0;Va[a&63](b|0)}function kt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=
e|0;return Wa[a&31](b|0,c|0,d|0,e|0)|0}function lt(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;Xa[a&7](b|
0,c|0,d|0,e|0,f|0,g|0)}function mt(a,b,c){a=a|0;b=b|0;c=c|0;return Ya[a&127](b|0,c|0)|0}function nt(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 Za[a&31](b|0,c|0,d|0,e|0,f|0)|0}function ot(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;_a[a
x26;15](b|0,c|0,d|0,e|0)}function pt(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;ba(0);return 0}function qt(a,b,c){
a=a|0;b=b|0;c=c|0;ba(1);return 0}function rt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(2)}function st(a,b,c,d,e,f,g,h,i){a=a|0
;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;ba(3);return 0}function tt(a,b){a=a|0;b=b|0;ba(4)}function ut(a,b,c,d,e,f){a=a|
0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ba(5);return 0}function vt(a){a=a|0;ba(6);return 0}function wt(a,b,c){a=a|0;b=b|0;c=c|0;ba(7)}function
xt(a){a=a|0;ba(8)}function yt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(9);return 0}function zt(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;
e=e|0;f=f|0;ba(10)}function At(a,b){a=a|0;b=b|0;ba(11);return 0}function Bt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(12);return
0}function Ct(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(13)}
...
function Module_resumeMainLoop(){Browser.mainLoop.resume()}
n/a
function run(args){args=args||Module["arguments"];if(preloadStartTime===null)preloadStartTime=Date.now();if(runDependencies>0){return }preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun "]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(Module ["_main"]&&shouldRunNow)Module["callMain"](args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(( function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}}
...
argv.option({ name: 'guardheight', type: 'int', description: 'Height of white space guards, in points.
x27; });
argv.option({ name: 'guardleftpos', type: 'int', description: 'Amount of white space to guard to left of
the symbol, in points.' });
argv.option({ name: 'guardrightpos', type: 'int', description: 'Amount of white space to guard to right
of the symbol, in points.' });
argv.option({ name: 'guardleftypos', type: 'int', description: 'Vertical position of the guard symbols
on the left, in points.' });
argv.option({ name: 'guardrightypos', type: 'int', description: 'Vertical position of the guard symbols
on the right, in points.' });
var commandLine = argv.run();
if (commandLine.targets.length === 0) {
console.error('You must specify an output path.');
process.exit(1);
}
...
function Ks(){}
n/a
function Module_setCanvasSize(width, height, noUpdates){Browser.setCanvasSize(width,height,noUpdates)}
...
var Module;if(typeof Module==="undefined")Module={};if(!Module.expectedDataFileDownloads){Module.expectedDataFileDownloads
=0;Module.finishedDataFileDownloads=0}Module.expectedDataFileDownloads++;((function(){var loadPackage=(function(metadata){function
runWithFS(){var fileData0=[];fileData0.push.apply(fileData0,[79,84,84,79,0,13,0,128,0,3,0,80,67,70,70,32,137,224,82,238,0,0,7,132
,0,0,45,223,70,70,84,77,101,130,23,249,0,0,55,12,0,0,0,28,71,68,69,70,0,160,0,4,0,0,53,100,0,0,0,32,71,80,79,83,184,255,184,254,
0,0,54,220,0,0,0,48,71,83,85,66,234,147,151,221,0,0,53,132,0,0,1,88,79,83,47,50,131,156,137,79,0,0,1,64,0,0,0,96,99,109,97,112,146
,230,183,142,0,0,5,184,0,0,1,170,104,101,97,100,251,7,171,9,0,0,0,220,0,0,0,54,104,104,101,97,7,42,2,2,0,0,1,20,0,0,0,36,104,109
,116,120,33,252,29,155,0,0,55,40,0,0,0,234,109,97,120,112,0,115,80,0,0,0,1,56,0,0,0,6,110,97,109,101,152,108,186,46,0,0,1,160,0,
0,4,23,112,111,115,116,0,3,0,1,0,0,7,100,0,0,0,32,0,1,0,0,0,2,0,0,252,84,172,109,95,15,60,245,0,11,3,232,0,0,0,0,204,138,51,83,0
,0,0,0,204,138,51,83,0,87,255,44,2,124,4,82,0,0,0,8,0,2,0,0,0,0,0,0,0,1,0,0,4,82,255,44,0,90,2,211,0,0,0,0,2,124,0,1,0,0,0,0,0,0
,0,0,0,0,0,0,0,0,0,2,0,0,80,0,0,115,0,0,0,3,2,211,1,144,0,5,0,0,2,138,2,188,0,0,0,140,2,138,2,188,0,0,1,224,0,49,1,2,0,0,2,0,5,9
,0,0,0,0,0,0,0,0,0,35,0,0,42,0,0,0,0,0,0,0,0,0,80,102,69,100,0,64,0,32,37,160,3,32,255,56,0,90,4,82,0,212,0,0,0,1,0,0,0,0,2,56,3
,12,0,32,0,32,0,1,0,0,0,24,1,38,0,1,0,0,0,0,0,0,0,86,0,174,0,1,0,0,0,0,0,1,0,4,1,15,0,1,0,0,0,0,0,2,0,7,1,36,0,1,0,0,0,0,0,3,0,33
,1,112,0,1,0,0,0,0,0,4,0,5,1,158,0,1,0,0,0,0,0,5,0,10,1,186,0,1,0,0,0,0,0,6,0,4,1,207,0,1,0,0,0,0,1,0,0,16,2,224,0,1,0,0,0,0,1,1
,0,23,2,166,0,1,0,0,0,0,1,2,0,20,2,97,0,1,0,0,0,0,1,3,0,15,2,39,0,1,0,0,0,0,1,4,0,16,1,246,0,3,0,1,4,9,0,0,0,172,0,0,0,3,0,1,4,9
,0,1,0,8,1,5,0,3,0,1,4,9,0,2,0,14,1,20,0,3,0,1,4,9,0,3,0,66,1,44,0,3,0,1,4,9,0,4,0,10,1,146,0,3,0,1,4,9,0,5,0,20,1,164,0,3,0,1,4
,9,0,6,0,8,1,197,0,3,0,1,4,9,1,0,0,32,2,190,0,3,0,1,4,9,1,1,0,46,2,118,0,3,0,1,4,9,1,2,0,40,2,55,0,3,0,1,4,9,1,3,0,30,2,7,0,3,0,
1,4,9,1,4,0,32,1,212,0,77,0,97,0,116,0,116,0,104,0,101,0,119,0,32,0,83,0,107,0,97,0,108,0,97,0,32,0,40,0,50,0,48,0,49,0,49,0,45,
0,49,0,50,0,41,0,59,0,32,0,98,0,97,0,115,0,101,0,100,0,32,0,111,0,110,0,32,0,99,0,111,0,100,0,101,0,32,0,98,0,121,0,32,0,82,0,105
,0,99,0,104,0,97,0,114,0,100,0,32,0,66,0,46,0,32,0,87,0,97,0,108,0,101,0,115,0,32,0,40,0,49,0,57,0,56,0,56,0,45,0,56,0,57,0,41,0
,32,0,97,0,110,0,100,0,32,0,84,0,111,0,114,0,32,0,76,0,105,0,108,0,108,0,113,0,118,0,105,0,115,0,116,0,0,77,97,116,116,104,101,119
,32,83,107,97,108,97,32,40,50,48,49,49,45,49,50,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,82,105,99,104
,97,114,100,32,66,46,32,87,97,108,101,115,32,40,49,57,56,56,45,56,57,41,32,97,110,100,32,84,111,114,32,76,105,108,108,113,118,105
,115,116,0,0,79,0,67,0,82,0,65,0,0,79,67,82,65,0,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,0,82,101,103,117,108,97,114,0,0,70,0,
111,0,110,0,116,0,70,0,111,0,114,0,103,0,101,0,32,0,50,0,46,0,48,0,32,0,58,0,32,0,79,0,67,0,82,0,32,0,65,0,32,0,58,0,32,0,50,0,55
,0,45,0,57,0,45,0,50,0,48,0,49,0,50,0,0,70,111,110,116,70,111,114,103,101,32,50,46,48,32,58,32,79,67,82,32,65,32,58,32,50,55,45,
57,45,50,48,49,50,0,0,79,0,67,0,82,0,32,0,65,0,0,79,67,82,32,65,0,0,86,0,101,0,114,0,115,0,105,0,111,0,110,0,32,0,50,0,32,0,0,86
,101,114,115,105,111,110,32,50,32,0,0,79,0,67,0,82,0,65,0,0,79,67,82,65,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,
32,0,104,0,121,0,112,0,104,0,101,0,110,0,0,65,108,116,101,114,110,97,116,101,32,104,121,112,104,101,110,0,0,65,0,108,0,116,0,101
,0,114,0,110,0,97,0,116,0,101,0,32,0,99,0,111,0,109,0,109,0,97,0,0,65,108,116,101,114,110,97,116,101,32,99,111,109,109,97,0,0,65
,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,97,0,112,0,111,0,115,0,116,0,114,0,111,0,112,0,104,0,101,0,0,65,108,116,101
,114,110,97,116,101,32,97,112,111,115,116,114,111,112,104,101,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,113,0
,117,0,101,0,115,0,116,0,105,0,111,0,110,0,32,0,109,0,97,0,114,0,107,0,0,65,108,116,101,114,110,97,116,101,32,113,117,101,115,116
,105,111,110,32,109,97,114,107,0,0,65,0,108,0,116,0,101,0,114,0,110,0,97,0,116,0,101,0,32,0,112,0,101,0,114,0,105,0,111,0,100,0,
0,65,108,116,101,114,110,97,116,101,32,112,101,114,105,111,100,0,0,0,0,0,3,0,0,0,3,0,0,0,28,0,1,0,0,0,0,0,164,0,3,0,1,0,0,0,28,0
,4,0,136,0,0,0,30,0,16,0,3,0,14,0,93,0,125,0,163,0,165,0,198,0,209,0,214,0,216,0,220,2,198,2,220,36,66,37,2,37,160,255,255,0,0,0
,32,0,95,0,163,0,165,0,196,0,209,0,214,0,216,0,220,2,198,2,220,36,64,37,2,37,160,255,255,255,225,255,225,255,192,255,191,255,167
,255,157,255,153,255,152,255,149,253,121,253,131,220,40,219,112,218,192,0,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,1,6,0,0,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,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,0,64,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,91,92,93,94,0,0,107,108,0,0,110,111,113,0
,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,99,0,0,0,0,0,0,0,0,0,0,109,112,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,95,0,0,0,0,0,0,0,0,0,0,0,
3,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,0,0,0,0,0,1,0,4,4,0,1,1,1,5,79,67,82,65,0,1,2,0,1,0,52,248,37,0,248,38,1,248
,39,2,248,40,3,248,24,4,140,12,1,139,12,3,139,12,4,226,251,104,249,16,250,230,5,28,1,37,15,28,0,0,16,28,2,10,17,28,0,52,28,44,255
,18,0,14,2,0,1,0,8,0,18,0,30,0,45,0,54,0,64,0,71,0,78,0,85,0,92,0,93,0,179,0,184,0,188,117,110,105,50,53,65,48,112,101,114,105,111
,100,46,97,108,116,113,117,101,115,116,105,111,110,46,97,108,116,113,117,111,116,101,115,105,110,103,108,101,46,97,108,116,99,111
,109,109,97,46,97,108,116,104,121,112,104,101,110,46,97,108,116,117,110,105,50,52,52,48,117,110,105,50,52,52,49,117,110,105,50,52
,52,50,117,110,105,50,53,48,50,50,77,97,116,116,104,101,119,32,83,107,97,108,97,32,40,50,48,49,49,45,49,50,41,59,32,98,97,115,101
,100,32,111,110,32,99,111,100,101,32,98,121,32,82,105,99,104,97,114,100,32,66,46,32,87,97,108,101,115,32,40,49,57,56,56,45,56,57
,41,32,97,110,100,32,84,111,114,32,76,105,108,108,113,118,105,115,116,79,67,82,32,65,79,67,82,65,0,0,0,0,1,0,2,0,3,0,4,0,5,0,6,0
,7,0,104,0,9,0,10,0,11,0,12,0,13,0,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,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,54,0,55,0,56,0,57,0,58
,0,59,0,60,0,61,0,62,0,126,0,64,0,124,0,66,0,67,0,68,0,69,0,70,0,71,0,72,0,73,0,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,94,0,127,1,135,1,136,1,137,0,98,0,100,1,138,1,139,1,140,1,141,1,142,1,143,0,
173,0,175,0,138,0,186,0,189,0,141,0,195,1,144,0,115,2,0,1,0,2,0,3,0,83,0,176,1,63,1,187,2,61,2,234,3,34,3,139,3,246,4,140,4,211,
5,14,5,53,5,71,5,130,5,188,6,14,6,92,6,201,7,21,7,123,7,211,8,39,8,144,8,232,9,27,9,119,9,196,9,216,10,39,10,170,11,66,11,143,11
,243,12,105,12,231,13,39,13,99,13,228,14,46,14,118,14,188,15,28,15,68,15,149,15,210,16,117,16,190,17,91,17,192,18,53,18,125,18,197
,19,19,19,142,20,9,20,87,20,138,20,206,21,11,21,83,21,150,21,183,21,243,22,121,23,30,23,143,23,241,24,117,24,203,25,137,25,231,26
,82,26,217,27,62,27,121,27,254,28,88,28,228,29,153,29,252,30,80,30,236,31,77,31,171,32,7,32,141,33,8,33,124,33,201,34,51,34,94,34
,199,35,51,35,66,35,109,35,221,36,79,36,202,37,3,37,58,37,70,37,124,37,187,38,0,38,114,38,227,39,107,39,238,40,193,41,142,41,252
,42,11,14,14,139,247,35,249,17,119,1,247,178,247,43,3,247,178,190,21,111,162,116,167,30,188,6,167,162,162,167,31,181,7,167,116,161
,111,30,90,6,111,116,117,111,31,249,17,4,164,252,19,5,141,111,160,117,167,139,8,165,163,160,168,31,164,248,19,139,142,5,165,115,
160,112,30,90,6,111,116,116,112,31,14,249,59,240,1,247,55,238,3,247,3,249,110,21,191,251,157,5,144,116,159,121,164,139,163,139,160
,157,143,162,8,181,247,106,247,6,139,180,251,97,5,139,137,138,137,139,137,139,115,165,119,165,139,170,139,155,163,144,165,153,216
,154,221,159,212,8,153,7,140,144,140,145,139,144,139,143,138,143,143,12,37,171,252,134,102,7,138,134,138,135,139,135,8,14,247,189
,240,247,3,240,247,62,119,1,247,104,240,236,240,3,247,5,247,240,21,111,161,116,167,30,188,251,11,6,111,161,116,167,167,162,162,167
,30,247,11,236,251,11,7,111,162,116,167,167,161,162,167,30,247,11,188,7,167,162,162,167,166,116,162,111,31,90,247,3,188,6,167,162
,162,167,167,116,161,111,31,90,247,12,6,166,117,162,111,111,116,116,112,30,251,12,42,247,12,7,166,116,162,111,111,117,116,112,30
,251,12,90,7,111,117,117,111,111,161,116,167,31,188,251,3,90,6,111,117,116,112,31,247,92,189,21,247,3,236,251,3,7,14,160,118,247
,62,240,207,241,207,240,247,62,119,1,247,5,239,237,240,237,240,3,20,112,247,5,247,112,21,111,161,117,167,30,247,40,251,11,6,111,
162,116,167,166,162,162,167,30,247,11,247,40,7,167,162,161,167,31,247,62,7,167,116,162,111,30,251,239,207,247,239,6,167,162,162,
167,167,116,161,111,31,251,40,247,12,6,166,116,162,112,111,116,116,112,30,251,12,251,40,7,111,117,117,111,31,251,62,7,111,161,116
,167,30,247,239,71,251,239,6,111,117,116,111,31,14,139,247,78,248,44,247,78,1,247,5,247,92,236,247,93,3,247,5,247,27,21,111,161,
117,167,30,155,139,154,146,148,151,8,248,33,248,146,5,146,147,143,150,139,151,139,167,116,161,111,139,123,139,124,132,130,127,8,
252,33,252,146,5,132,131,136,128,139,127,8,248,146,4,111,161,116,167,30,238,6,167,162,162,167,31,224,7,166,116,162,111,30,40,6,111
,117,116,112,31,247,189,253,59,21,111,162,116,167,30,238,6,167,162,162,167,31,223,7,167,116,162,111,30,40,6,111,116,116,111,31,14
,139,240,248,129,240,1,247,5,240,247,88,240,3,247,5,247,43,21,57,207,70,222,30,237,6,151,139,150,144,148,146,8,213,202,194,80,5,
148,129,152,133,154,139,167,139,162,162,139,167,139,152,133,151,131,148,8,87,195,5,161,157,183,163,139,176,139,167,116,162,111,139
,126,139,128,134,130,132,8,88,95,32,247,6,247,17,246,5,150,148,145,154,139,154,8,208,7,221,71,208,56,30,43,6,56,71,70,57,31,70,7
,139,126,144,126,147,130,8,235,37,47,60,5,128,129,133,126,139,123,8,240,70,21,139,185,217,205,246,251,6,83,91,60,139,5,112,116,161
,167,31,247,236,4,188,7,167,162,161,166,30,235,6,165,163,115,113,31,139,93,251,3,45,5,14,249,160,119,18,247,153,247,93,251,93,239
,19,160,247,153,248,26,21,111,162,117,167,30,163,139,158,155,145,161,8,238,247,229,5,19,192,140,144,140,144,139,144,8,166,116,162
,111,30,40,6,111,116,116,112,31,14,160,118,249,160,119,1,247,153,240,3,247,153,247,186,21,139,87,158,97,163,108,8,247,9,251,42,5
,148,128,154,131,155,139,167,139,161,162,139,167,139,150,135,150,133,148,8,251,9,247,41,5,127,155,129,160,139,165,8,247,84,7,139
,165,149,160,151,155,8,247,9,247,41,5,145,148,143,150,139,151,139,166,117,162,111,139,123,139,124,131,130,128,8,251,9,251,42,5,115
,108,120,97,139,87,8,14,160,118,249,160,119,1,247,253,240,3,247,104,190,21,111,161,116,167,30,155,139,154,147,148,150,8,247,9,247
,42,5,163,170,158,181,139,191,8,247,84,7,139,191,120,181,115,170,8,251,9,247,42,5,130,150,124,147,123,139,111,139,117,116,139,112
,139,127,143,128,145,130,8,247,9,251,41,5,151,123,149,118,139,113,8,251,84,7,139,113,129,118,127,123,8,251,9,251,41,5,133,130,135
,128,139,128,8,14,247,203,240,3,247,5,247,112,21,111,161,117,167,30,152,139,150,143,148,147,8,247,7,237,139,251,37,5,111,162,117
,167,166,162,161,167,30,139,247,37,247,7,41,5,148,131,150,135,152,139,167,139,162,161,139,167,139,155,132,152,128,149,8,251,45,247
,23,247,45,247,23,5,150,149,146,152,139,155,139,167,116,161,111,139,126,139,128,135,130,131,8,251,7,41,139,247,37,5,167,116,161,
112,111,116,117,111,30,139,251,37,251,7,237,5,130,147,128,143,126,139,111,139,117,117,139,111,139,123,145,126,150,129,8,247,45,251
,23,251,45,251,23,5,128,129,133,126,139,123,8,14,247,232,240,1,247,203,240,3,247,5,248,26,21,111,161,117,167,30,247,40,251,40,6,
111,162,116,167,166,162,162,167,30,247,40,247,40,7,167,162,161,167,167,116,162,111,31,251,40,247,40,6,166,116,162,112,111,116,116
,112,30,251,40,251,40,7,111,117,116,111,31,14,160,118,247,147,240,18,247,104,247,191,38,240,19,224,247,104,247,197,21,111,161,117
,167,30,19,208,247,40,251,96,6,111,162,116,167,167,161,162,167,30,19,224,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31
,14,247,189,247,36,1,247,5,247,240,21,111,161,116,167,30,248,33,6,167,162,162,167,31,181,7,167,116,162,111,30,252,33,6,111,117,116
,111,31,14,247,19,247,78,1,247,153,247,93,3,247,153,247,70,21,32,10,14,160,118,249,160,119,1,247,5,190,21,111,161,116,167,30,158
,139,155,149,148,154,8,248,33,249,59,5,143,147,142,147,139,149,139,166,116,162,111,139,120,139,123,129,130,124,8,252,33,253,59,5
,135,131,137,131,139,130,8,14,139,240,248,214,240,1,247,5,240,247,188,240,3,247,5,240,21,84,185,93,194,30,247,188,6,193,186,186,
193,31,248,214,7,193,92,186,85,30,251,188,6,84,93,93,84,31,240,252,214,21,248,214,247,188,252,214,7,14,139,240,248,214,240,18,247
,5,247,191,38,240,237,240,19,232,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,247,146,7,167,116,162,111,111,117,116
,111,30,251,96,7,19,216,41,249,59,251,141,6,19,232,111,117,116,112,111,161,116,167,31,19,216,247,40,252,214,251,40,6,111,117,116
,112,31,14,139,240,247,131,239,247,131,240,1,247,5,240,247,188,240,3,20,224,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31
,251,238,247,131,247,188,6,193,186,185,193,31,247,131,7,193,92,186,85,30,251,239,6,111,117,116,112,111,161,116,167,31,247,239,251
,131,251,188,6,84,93,94,84,31,14,139,240,247,131,240,247,130,240,1,248,146,240,3,20,224,247,5,190,21,111,161,116,167,30,247,239,
6,193,186,186,193,31,247,80,7,139,177,124,175,114,166,164,166,154,174,139,178,8,247,80,7,193,92,186,85,30,251,239,6,111,117,116,
112,111,161,116,167,31,247,239,251,80,6,112,116,116,111,30,251,89,6,111,117,116,111,111,161,117,167,31,247,89,6,166,163,115,112,
31,251,80,251,239,7,111,117,116,112,31,14,160,118,247,147,240,248,60,119,1,247,29,240,247,89,240,3,247,29,247,147,21,247,190,251
,96,6,111,162,116,167,166,162,162,167,30,247,96,7,167,161,161,167,167,117,162,111,31,247,181,7,167,116,161,112,111,116,117,111,30
,251,181,251,89,248,10,7,166,117,162,111,111,116,116,112,30,14,139,240,84,236,247,89,240,247,130,240,18,247,104,240,247,89,240,20
,176,19,124,247,5,232,21,139,118,151,121,157,131,8,19,188,181,121,181,111,195,139,8,247,119,6,193,186,186,193,31,247,131,7,193,92
,186,85,30,251,89,247,130,247,139,6,167,162,162,167,166,116,162,111,31,251,240,252,76,247,190,251,131,251,129,6,49,177,5,19,124,
133,142,132,140,132,139,8,111,117,117,111,31,14,139,240,247,46,240,247,215,240,18,247,5,247,42,251,42,239,247,189,240,19,236,247
,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,247,146,7,167,116,162,111,30,251,239,247,215,6,19,244,167,161,162,167,31
,19,236,166,117,162,111,30,89,6,19,244,111,117,116,112,31,19,236,239,253,9,21,247,46,247,189,251,46,7,14,160,118,249,59,240,1,247
,203,240,237,240,3,247,5,249,67,21,111,161,117,167,30,164,139,160,157,143,163,8,247,189,251,73,6,251,73,251,46,5,128,129,132,125
,139,124,8,251,146,7,111,162,116,167,166,162,162,167,30,139,247,123,247,73,247,46,5,150,149,146,153,139,154,8,247,197,252,84,7,111
,117,116,112,31,14,139,240,247,131,240,247,130,240,18,247,5,239,139,239,236,239,139,240,19,240,247,5,240,21,19,234,84,185,93,193
,30,247,189,6,193,186,186,193,31,247,131,7,19,228,193,92,186,85,30,19,234,247,181,7,166,118,162,111,30,251,91,6,111,118,116,112,
31,251,181,7,19,240,84,94,92,85,31,239,251,131,21,247,131,7,19,242,247,189,251,131,6,19,236,251,89,247,232,21,247,130,236,251,130
,7,14,139,240,247,215,240,247,46,240,18,247,5,239,247,139,247,43,38,240,19,244,247,5,248,111,21,111,161,116,167,30,247,239,251,215
,6,19,248,111,117,116,112,31,19,244,111,161,116,167,30,189,6,19,248,167,162,162,167,31,19,244,249,59,7,166,116,162,111,30,252,33
,6,111,117,116,112,31,239,251,97,21,247,46,247,189,251,46,7,14,247,19,247,78,247,46,247,78,1,247,153,247,93,3,247,153,247,70,21,
32,10,247,146,4,111,162,117,167,30,238,6,167,162,161,167,31,224,7,167,116,162,111,30,40,6,111,116,116,111,31,14,160,118,247,147,
240,247,45,247,78,18,247,104,247,92,137,240,19,240,247,104,247,197,21,111,161,117,167,30,19,232,247,40,251,96,6,111,162,116,167,
167,161,162,167,30,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31,19,240,247,147,4,111,161,116,167,30,239,6,166,162,162
,167,31,224,7,167,116,161,112,30,39,6,111,117,117,111,31,14,247,5,248,4,21,139,120,149,124,153,130,8,248,33,251,125,5,147,134,148
,137,148,139,167,139,162,161,139,167,139,158,128,155,125,148,8,251,251,247,103,247,251,247,103,5,153,148,150,155,139,158,139,167
,116,161,111,139,130,139,130,137,131,134,8,252,33,251,125,5,125,130,129,123,139,120,8,14,247,147,240,247,3,240,1,247,5,247,197,21
,33,10,247,104,4,33,10,14,247,5,247,27,21,111,161,117,167,30,148,139,148,141,147,144,8,248,38,247,128,5,152,147,146,155,139,156,
8,181,7,139,158,128,155,125,148,8,252,33,247,125,5,131,144,130,141,130,139,111,139,117,117,139,111,139,120,149,123,153,130,8,247
,252,251,103,251,252,251,103,5,125,130,129,123,139,120,8,14,139,240,249,59,119,1,247,104,240,3,247,5,248,111,21,111,161,116,167,
30,152,139,150,144,148,146,8,247,157,247,119,188,97,139,101,251,173,251,131,5,128,130,133,124,139,124,8,54,7,111,161,117,167,167
,162,161,167,30,139,201,247,172,247,131,5,150,149,146,152,139,155,8,224,7,139,154,132,153,128,148,8,40,224,5,130,146,127,144,127
,139,126,139,128,134,130,12,37,251,190,251,147,5,128,130,133,125,139,124,8,238,252,60,21,111,161,116,167,167,162,162,167,166,116
,162,111,111,117,116,112,30,14,139,240,247,173,240,247,88,240,1,247,5,240,236,240,237,240,3,20,224,20,28,247,5,247,42,21,57,206,
71,221,30,177,139,174,154,166,163,165,115,174,124,177,139,8,220,208,207,221,31,248,88,7,235,58,221,42,30,251,35,6,93,139,96,120,
105,108,118,120,106,109,139,103,139,111,161,116,167,139,158,139,157,150,147,155,153,166,171,170,175,139,8,247,35,6,181,174,104,97
,31,252,88,7,113,117,116,112,112,117,161,166,30,247,174,7,167,116,162,112,30,39,6,57,72,71,57,31,240,251,75,21,247,75,7,166,160,
161,166,30,188,251,124,6,112,117,117,112,112,118,161,166,30,14,160,118,247,62,240,248,145,119,1,247,2,190,21,111,163,116,167,30,
162,139,159,154,145,160,8,178,247,26,247,115,139,178,251,26,5,145,118,158,124,162,139,8,167,163,162,167,31,251,94,249,73,5,133,160
,118,154,117,139,116,139,120,124,133,118,8,106,252,109,21,220,247,170,221,251,170,5,14,139,240,247,131,240,247,130,240,1,247,5,240
,247,188,240,3,247,5,22,247,188,6,247,2,231,232,247,1,31,176,7,139,198,111,194,97,176,181,176,167,194,139,198,8,176,7,247,1,47,232
,251,2,30,251,188,6,240,253,59,21,247,131,247,87,7,193,186,92,85,31,102,7,85,92,92,85,30,251,87,247,232,21,247,130,247,87,7,193,
186,92,85,31,102,7,85,92,93,85,30,14,139,240,248,214,240,1,247,5,240,3,247,5,248,26,21,139,98,149,107,153,109,171,69,174,73,174,
72,162,94,189,100,201,139,8,247,78,6,167,162,162,167,166,116,162,111,31,251,78,6,119,139,122,152,132,154,8,36,247,95,5,131,156,134
,157,139,162,139,162,144,157,156,12,37,242,247,95,5,146,154,156,152,159,139,8,247,78,6,167,162,162,167,166,116,162,111,31,251,78
,6,77,139,86,102,118,93,8,38,251,96,5,125,110,129,106,139,98,8,14,139,240,248,214,240,1,247,104,240,247,89,240,3,247,5,190,21,111
,161,116,167,30,247,78,6,201,139,192,176,160,185,8,240,247,96,5,153,168,150,173,139,179,139,179,128,173,125,168,8,37,247,95,5,116
,184,89,178,77,139,8,251,78,6,111,117,116,112,111,161,116,167,31,188,252,214,90,6,111,117,116,112,31,247,92,189,21,248,214,175,7
,159,139,156,126,146,124,8,242,251,95,5,147,123,145,119,139,117,139,117,132,120,122,12,37,36,251,95,5,132,124,122,126,119,139,8,
14,139,240,247,131,240,247,130,240,1,247,5,240,3,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31,251,238,247,131,247,40,6,166
,162,161,167,167,116,162,112,31,251,40,247,130,247,238,6,167,162,162,167,166,116,162,111,31,252,83,6,14,160,118,248,60,240,247,46
,240,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,248,9,247,139,7,167,161,162,167,167,117,161,111,31,251,139,247
,46,247,238,6,167,162,162,167,166,116,162,111,31,252,83,6,14,139,240,247,46,240,247,215,240,18,247,5,240,247,39,247,142,38,240,19
,244,247,5,247,44,21,56,206,70,223,30,247,87,6,222,208,208,222,31,247,96,251,92,7,19,248,111,117,116,111,111,161,117,167,31,19,244
,238,36,6,111,115,116,112,30,251,87,6,112,116,162,167,31,247,163,7,139,165,148,159,151,155,8,247,28,247,66,5,147,150,153,148,157
,139,8,247,41,6,167,162,162,167,166,116,162,111,31,251,41,6,86,139,97,113,114,107,8,251,28,251,68,5,115,108,121,99,139,87,8,14,160
,118,247,232,240,247,231,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,247,181,247,188,251,181,7
,111,161,116,167,167,162,162,167,30,249,59,7,166,116,162,111,111,117,116,112,30,251,181,251,188,247,181,7,166,116,162,111,111,117
,116,112,30,14,139,240,248,214,240,1,247,203,240,3,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251
,40,248,214,247,40,6,167,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,111,161,116,167,31,247,40,252,214,251,40,6,111,
117,116,112,31,14,139,240,249,59,119,1,247,54,240,247,89,240,3,247,54,247,43,21,56,208,71,222,30,234,6,222,208,208,221,31,248,215
,7,166,116,162,111,111,117,116,112,30,252,215,7,112,116,116,111,30,44,6,111,116,161,167,31,247,46,7,167,117,162,111,111,116,116,
111,30,14,160,118,249,160,119,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,121,247,205,251,160,5,148,132
,150,134,152,139,167,139,162,162,139,167,139,154,132,153,128,148,8,251,244,247,193,247,244,247,193,5,150,148,146,153,139,155,139
,166,116,162,111,139,126,139,128,134,130,132,8,251,205,251,160,139,247,122,5,166,116,162,111,111,117,116,112,30,14,139,240,249,59
,119,1,247,5,240,3,247,5,22,248,83,6,167,162,162,167,166,116,162,111,31,251,238,249,9,6,166,116,162,111,111,117,116,112,30,14,160
,118,249,160,119,1,247,5,240,236,240,237,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,248,224,236,251,30,139,113,5,
111,162,116,167,166,162,162,167,30,139,165,237,247,32,139,252,226,5,111,161,116,167,167,162,162,167,30,249,109,251,19,7,251,14,251
,67,251,15,247,67,251,18,139,5,14,160,118,249,160,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,
139,248,185,247,155,252,236,247,26,139,139,249,110,5,166,116,162,111,111,117,116,112,30,139,252,188,251,156,248,238,251,25,139,5
,14,139,240,248,214,240,1,247,5,240,247,188,240,3,247,5,248,26,21,139,98,148,106,154,110,8,246,251,107,5,159,101,182,105,193,139
,194,139,182,173,159,177,8,246,247,107,5,153,168,150,173,139,179,139,179,128,173,125,168,8,32,247,107,5,119,177,96,173,84,139,85
,139,96,105,119,101,8,32,251,107,5,125,110,129,106,139,98,8,247,6,197,21,247,0,247,105,5,144,149,148,147,151,139,151,139,150,130
,143,12,37,247,0,251,105,5,147,123,145,119,139,117,139,117,132,120,122,12,37,32,251,107,5,134,129,130,133,125,139,127,139,129,147
,135,148,8,251,0,247,106,5,131,156,134,157,139,162,139,162,144,157,156,12,37,14,160,118,247,189,240,247,173,240,1,247,5,240,247,
188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,247,138,247,137,7,222,208,208,222,31,247,72,7,221,70,208,56,30,251,238
,6,240,252,18,21,247,173,247,137,7,165,164,116,112,31,251,72,7,111,115,116,112,30,14,139,240,249,59,119,1,247,5,240,236,247,13,217
,240,3,247,5,247,15,21,72,194,83,206,30,172,139,166,152,158,156,8,214,203,176,45,247,26,139,5,167,162,162,167,166,116,162,111,31
,74,139,115,200,5,201,191,217,189,139,247,3,8,247,174,7,206,82,195,72,30,107,139,110,126,121,122,8,251,117,251,82,5,100,105,108,
85,139,72,8,240,251,174,21,247,174,7,139,174,154,165,158,156,8,247,124,247,87,146,139,5,152,149,130,127,31,251,174,7,139,80,93,113
,107,111,126,173,127,199,94,139,111,139,116,116,139,111,139,133,140,132,141,134,8,176,45,251,0,47,131,139,5,126,131,148,152,31,14
,160,118,248,60,240,247,46,240,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,248,9,208,7,247,125,252
,35,5,148,124,155,129,158,139,167,139,162,162,139,167,139,148,136,147,135,147,8,251,95,247,240,197,139,5,221,209,209,221,31,191,
7,222,70,208,56,30,251,238,6,240,251,147,21,247,46,247,137,7,166,163,116,111,31,87,7,112,115,115,112,30,14,139,240,248,214,240,1
,247,5,240,247,188,240,3,247,5,247,27,21,65,201,78,212,30,247,141,6,203,139,187,192,141,200,139,167,128,164,125,156,8,252,8,248,
114,139,143,139,142,5,146,146,142,144,30,247,141,6,157,156,123,121,111,161,116,167,167,162,162,167,213,76,200,66,31,251,141,6,78
,87,88,79,31,136,7,139,111,149,115,152,121,8,248,10,252,118,5,131,132,134,133,30,251,141,6,120,124,154,158,167,116,162,111,111,117
,116,111,31,14,160,118,248,230,247,78,38,240,18,247,5,240,236,240,237,240,19,220,247,5,249,25,21,111,161,116,167,167,162,162,167
,30,19,188,173,236,253,8,7,111,162,116,167,166,162,162,167,30,249,8,237,105,7,19,220,111,161,116,167,167,162,162,167,30,19,188,247
,27,252,134,7,14,139,240,249,59,119,1,247,5,240,247,188,240,3,247,5,247,43,21,57,207,70,222,30,247,87,6,222,208,208,221,31,248,215
,7,166,116,162,111,111,117,116,112,30,252,215,7,112,114,116,113,30,251,87,6,112,116,161,167,31,248,215,7,166,116,162,111,111,117
,116,112,30,14,160,118,249,160,119,1,247,5,240,247,188,240,3,247,5,248,185,21,247,93,252,153,5,147,120,157,126,161,139,160,139,157
,152,147,158,8,247,94,248,154,139,247,72,5,166,116,162,111,111,117,116,112,30,139,251,53,251,40,252,14,251,40,248,14,139,247,53,
5,166,116,162,111,111,117,116,112,30,14,139,240,249,59,119,1,247,5,240,236,240,237,240,3,247,5,247,14,21,195,42,5,148,124,156,129
,158,139,8,236,6,164,139,154,156,150,157,149,120,155,123,163,139,8,237,6,158,139,155,149,148,154,8,196,236,139,248,244,5,166,116
,162,111,111,117,116,112,30,139,252,217,110,91,98,139,5,131,153,130,159,128,156,8,247,215,7,167,116,161,112,111,116,117,111,30,251
,215,7,128,122,130,119,131,125,8,98,139,111,187,139,248,217,5,166,116,162,111,111,117,116,112,30,14,160,118,249,160,119,1,247,5,
190,21,111,161,116,167,30,158,139,155,149,148,154,8,247,47,247,156,247,46,251,156,5,148,124,155,129,158,139,167,139,162,162,139,
167,139,148,136,147,135,147,8,251,76,247,206,247,76,247,206,5,143,147,142,147,139,149,139,166,116,162,111,139,120,139,123,129,130
,124,8,251,46,251,156,251,47,247,156,5,130,154,123,149,120,139,111,139,117,116,139,112,139,129,141,131,143,131,8,247,76,251,206,
251,76,251,206,5,135,131,137,131,139,130,8,14,160,118,249,160,119,1,247,5,240,236,240,236,241,3,247,5,249,7,21,247,90,251,146,139
,251,214,5,111,162,116,167,166,162,162,167,30,139,247,214,247,91,247,146,139,242,5,166,116,162,111,111,116,116,112,30,139,71,251
,39,251,82,251,40,247,82,139,207,5,166,116,162,111,111,117,116,112,30,14,139,240,248,214,240,1,247,4,203,21,140,75,248,83,139,5,
167,162,162,167,166,116,162,111,31,251,201,139,247,252,248,251,139,203,252,84,139,5,111,117,116,112,111,161,116,167,31,247,201,6
,14,139,240,248,214,240,1,247,5,239,187,240,3,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,90
,248,214,247,90,6,167,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,31,239,253,9,21,248,214,187,252,214,7,14,160,118,249
,160,119,1,247,5,249,110,21,139,129,141,131,143,131,8,248,33,253,59,5,148,124,155,129,158,139,167,139,162,162,139,167,139,148,136
,147,135,147,8,252,33,249,59,5,130,154,123,149,120,139,111,139,117,116,139,112,8,14,139,240,248,214,240,1,247,253,240,187,240,3,
247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,31,249,59,7,166,116,162,111,30,252,33,6,111,117,116,112,111,161,116,167
,31,247,90,252,214,251,90,6,111,117,116,112,31,247,241,189,21,248,214,187,252,214,7,14,247,4,247,82,21,140,127,5,111,161,116,167
,30,157,139,154,148,147,151,8,247,50,247,128,247,49,251,128,5,147,127,154,130,157,139,167,139,162,162,139,167,139,146,137,146,136
,146,8,251,92,248,20,5,131,155,122,150,120,139,119,139,122,128,131,123,8,14,38,240,1,247,5,89,21,111,161,116,167,30,248,33,6,167
,162,162,167,166,116,162,111,31,252,33,6,111,117,116,112,31,14,249,160,119,1,247,54,249,110,21,139,123,146,125,150,130,8,247,190
,251,147,5,147,133,149,133,153,139,167,139,162,162,139,167,139,148,137,147,135,146,8,251,95,247,154,5,130,151,124,146,123,139,8,
40,6,111,116,116,112,31,14,139,240,247,46,240,247,3,240,18,247,5,240,247,177,238,45,246,19,244,247,5,247,42,21,57,206,71,221,30,
247,41,6,148,139,148,141,146,144,8,213,182,5,112,161,116,166,167,163,161,167,30,19,248,126,248,9,5,136,218,74,205,57,139,8,251,78
,6,111,117,116,111,111,161,117,167,31,247,78,6,195,139,132,76,141,84,125,144,124,141,124,139,8,251,85,6,57,72,71,57,31,240,83,21
,195,7,165,161,162,165,30,247,85,6,19,244,163,164,116,115,31,139,95,32,76,251,27,139,5,112,118,161,166,31,14,139,240,248,2,240,247
,104,119,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,154,7,174,107,177,105,201,139,8,214,6,180,139
,172,155,162,159,180,175,188,173,139,214,8,247,98,7,139,189,115,178,110,164,104,169,104,176,75,139,8,64,6,80,139,98,108,104,106,
8,247,118,7,166,116,162,111,111,117,116,112,30,240,252,142,21,247,12,7,139,155,145,153,150,146,8,225,213,5,146,146,150,144,153,139
,8,214,6,157,139,151,130,150,129,155,123,168,124,139,109,8,251,98,7,139,123,131,126,129,131,121,124,120,111,108,139,8,64,6,125,139
,128,144,132,146,8,53,213,5,129,147,132,151,139,156,8,14,139,240,248,2,240,1,247,5,240,3,247,5,247,116,21,139,88,162,101,168,114
,8,225,65,5,163,118,171,124,181,139,8,247,103,6,167,162,162,167,166,116,162,111,31,251,103,6,125,139,128,144,132,146,8,53,212,5,
129,148,132,151,139,156,8,247,12,7,139,155,145,153,150,146,8,225,213,5,146,146,150,144,153,139,8,247,103,6,167,162,161,167,167,116
,162,111,31,251,103,6,51,139,93,70,89,98,110,114,116,101,139,88,8,14,139,240,248,2,240,247,104,119,1,247,5,240,247,188,240,3,247
,5,247,73,21,139,88,161,101,169,114,174,108,173,103,204,139,8,214,6,203,139,176,173,174,172,8,123,7,111,161,116,167,167,162,162,
167,30,249,59,7,166,116,162,111,111,117,116,112,30,251,123,7,103,170,105,177,73,139,8,64,6,98,139,106,123,116,119,97,104,92,105,
139,63,8,240,251,98,21,34,10,14,139,240,247,3,240,247,46,240,1,247,5,240,247,188,240,3,247,5,247,73,21,139,88,161,101,169,114,174
,108,173,103,204,139,8,247,153,6,167,162,162,167,166,116,162,111,31,251,153,6,125,139,130,144,130,146,120,156,105,155,139,174,8,
170,247,238,7,167,162,162,167,31,247,16,7,139,190,115,177,110,164,104,170,104,175,75,139,8,251,17,6,98,139,106,123,116,119,97,104
,92,104,139,64,8,240,65,21,213,7,139,156,146,151,149,147,157,154,158,167,170,139,8,247,17,6,173,191,95,103,31,65,7,14,160,118,248
,103,240,247,3,240,1,247,128,240,3,247,29,248,153,21,111,161,117,167,30,188,252,52,6,111,162,116,167,167,161,162,167,30,248,52,238
,7,166,162,161,167,167,116,162,112,31,40,173,6,181,173,174,182,30,247,13,6,167,161,162,167,166,117,162,111,31,251,13,6,41,59,60,
40,31,105,90,7,111,117,116,111,31,14,251,104,240,247,45,240,247,216,240,1,247,5,239,247,189,240,3,247,5,247,116,21,139,88,162,101
,168,114,174,109,174,101,203,139,8,214,6,201,139,178,174,174,172,8,251,33,7,139,124,131,125,129,131,121,125,120,110,108,139,8,251
,103,6,111,116,116,111,111,162,117,167,31,247,103,6,180,139,172,155,162,159,180,175,188,173,139,214,8,248,184,7,167,116,162,111,
111,117,116,111,30,121,7,103,170,105,177,73,139,8,64,6,98,139,106,123,116,119,97,104,92,106,139,62,8,239,251,55,21,247,55,7,139,
156,147,150,149,149,159,153,154,167,172,139,8,214,6,153,139,150,134,146,132,8,225,65,5,148,131,148,125,139,124,8,61,7,139,123,131
,126,129,131,8,53,65,5,132,132,128,134,125,139,8,64,6,104,88,184,175,31,14,160,118,248,103,240,247,104,119,1,247,5,240,247,188,239
,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,203,247,55,244,210,139,5,166,139,159,117,141,114,8,152,252,7,5,112,162
,117,166,167,161,162,167,30,127,248,8,5,136,218,74,205,57,139,8,82,6,106,139,113,129,117,125,8,43,78,139,247,139,5,166,116,162,111
,111,117,116,112,30,14,139,240,248,2,240,247,3,247,35,18,247,54,247,142,251,43,247,43,39,239,19,240,247,54,190,21,35,10,19,228,41
,6,19,240,248,52,7,167,116,162,112,30,251,41,6,111,116,116,111,111,162,117,167,31,19,228,238,252,2,40,6,111,116,116,112,31,19,232
,238,249,59,21,19,228,111,162,116,167,30,189,6,19,232,166,162,162,167,31,181,7,167,116,161,112,30,19,228,89,6,19,232,111,116,117
,111,31,14,251,104,240,248,214,240,247,3,247,35,18,247,153,247,192,251,43,247,43,39,239,19,232,247,54,62,21,131,7,150,70,202,81,
215,139,8,237,6,19,228,222,207,206,222,31,19,240,248,215,7,167,116,162,111,30,251,90,6,111,116,116,111,111,162,117,167,31,19,228
,247,41,252,165,6,19,232,112,115,117,112,30,41,6,77,139,162,224,79,139,8,111,116,116,111,31,247,140,249,187,21,19,228,111,162,116
,167,30,188,6,19,232,167,162,162,167,31,181,7,167,116,161,111,30,19,228,90,6,19,232,111,116,117,111,31,14,160,118,248,204,119,247
,124,119,1,247,5,240,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,38,187,181,247,157,251,119,5,148,132,151,134,152,
139,167,139,161,162,139,167,139,154,132,153,128,148,8,251,145,247,108,247,95,247,66,5,150,148,146,153,139,154,139,167,116,162,111
,139,127,139,127,134,131,132,8,251,156,251,117,139,248,35,5,166,116,162,111,111,117,116,112,30,14,139,240,248,214,240,18,247,54,
247,142,38,240,19,224,247,54,190,21,35,10,19,208,41,6,19,224,249,9,7,166,116,162,112,30,251,41,6,111,116,116,112,111,162,116,167
,31,19,208,237,252,214,41,6,111,116,116,112,31,14,160,118,248,103,240,18,244,240,244,240,230,239,53,240,19,248,244,190,21,111,161
,116,167,167,162,162,167,30,139,247,243,214,204,147,139,5,153,147,131,125,31,252,30,7,111,162,116,167,166,162,162,167,30,139,247
,250,207,197,145,139,5,149,139,145,128,140,131,8,19,244,153,252,35,5,140,112,162,117,166,139,8,167,161,162,167,31,19,248,124,248
,37,5,137,203,82,188,78,139,114,139,112,131,116,120,8,117,121,5,117,168,103,158,100,139,102,139,111,122,118,121,133,159,119,154,
117,139,8,111,117,116,111,31,14,160,118,248,103,240,1,247,5,240,247,188,239,3,247,5,190,21,111,161,116,167,167,162,162,167,30,139
,247,203,247,55,244,210,139,5,166,139,159,117,141,114,8,152,252,7,5,112,162,117,166,167,161,162,167,30,127,248,8,5,136,218,74,205
,57,139,8,82,6,106,139,113,129,117,125,8,43,78,139,173,5,167,116,162,111,111,117,116,111,30,14,139,240,248,2,240,1,247,5,240,247
,188,240,3,247,5,247,73,21,139,89,161,100,169,114,175,109,172,102,204,139,8,247,17,6,180,139,172,155,162,159,180,175,188,173,139
,214,8,247,98,7,139,189,115,178,110,164,104,169,104,176,75,139,8,251,17,6,98,139,106,123,116,119,97,104,92,104,139,64,8,240,251,
98,21,247,98,7,139,156,146,151,149,147,157,154,158,167,170,139,8,247,17,6,173,191,95,103,31,251,98,7,139,123,131,126,129,131,121
,124,120,111,108,139,8,251,17,6,125,139,130,144,130,146,120,156,105,155,139,174,8,14,251,83,118,247,83,240,248,44,240,1,247,5,240
,247,188,240,3,247,5,251,54,21,111,161,117,167,167,162,161,167,30,247,108,7,173,102,178,101,205,139,8,160,6,181,139,171,154,163,
160,8,225,213,5,168,164,163,179,139,188,8,247,53,7,139,220,82,175,95,179,104,171,101,175,76,139,8,118,6,70,139,105,98,103,103,8,
166,7,166,116,162,111,111,117,116,112,30,240,251,212,21,247,22,7,139,154,144,151,148,146,8,229,230,5,147,147,152,145,153,139,8,160
,6,151,139,153,133,145,133,8,226,64,5,148,132,147,124,139,124,8,251,53,7,139,124,131,124,130,132,8,52,65,5,132,132,128,134,125,139
,8,118,6,122,139,130]);fileData0.push.apply(fileData0,[144,130,148,118,158,120,160,119,159,122,156,112,154,139,172,8,14,251,83,118
,247,104,240,248,2,240,1,247,5,240,247,188,240,3,247,5,247,73,21,139,88,161,101,169,114,174,108,173,103,204,139,8,214,6,203,139,
176,173,174,172,8,251,121,7,111,161,117,167,167,162,161,167,30,249,59,7,167,116,162,111,111,117,116,111,30,121,7,103,170,105,177
,73,139,8,64,6,98,139,106,123,116,119,97,104,92,105,139,63,8,240,251,98,21,34,10,14,160,118,248,103,240,1,247,5,240,247,188,240,
3,247,5,190,21,111,161,116,167,167,162,162,167,30,139,247,165,247,58,247,35,220,139,5,166,161,116,113,31,111,7,111,161,117,167,167
,162,161,167,30,167,7,221,70,207,58,30,40,6,129,139,128,137,131,133,8,251,11,37,139,198,5,167,116,162,111,111,117,116,111,30,14,
139,240,248,2,240,1,247,17,239,247,174,242,3,247,5,232,21,139,123,146,125,151,129,172,111,181,114,199,139,8,247,81,6,223,139,208
,207,140,223,8,141,7,139,204,95,193,92,160,8,251,170,247,12,5,128,143,134,149,139,149,8,153,149,154,157,30,247,106,6,176,139,148
,96,175,139,167,139,162,162,139,167,139,150,135,150,133,147,114,172,94,169,86,139,8,251,106,6,105,139,106,125,115,115,113,114,128
,108,139,108,139,88,169,89,185,119,8,247,169,251,12,5,159,130,148,120,139,120,8,112,122,112,105,30,251,95,6,132,139,127,147,132,
141,114,146,131,164,107,139,111,139,118,117,139,111,8,14,139,240,248,2,240,1,247,104,240,3,247,5,248,153,21,111,161,117,167,30,188
,251,209,6,58,207,70,220,30,239,6,214,139,201,198,152,207,8,147,7,167,116,162,111,30,78,139,162,54,78,139,8,39,6,113,117,161,166
,31,247,209,247,89,7,167,161,161,167,167,117,162,111,31,251,89,247,11,6,167,116,162,111,111,117,116,111,30,251,11,90,7,111,117,116
,111,31,14,139,240,248,103,119,1,247,5,239,247,189,240,3,247,5,248,153,21,151,252,9,5,141,61,206,73,220,139,8,196,6,172,139,165,
149,161,153,8,236,201,139,104,5,111,161,116,167,167,162,162,167,30,248,102,7,167,116,162,111,111,117,116,111,30,139,251,204,251,
56,35,68,139,5,112,139,119,160,137,165,8,126,248,7,5,166,116,161,112,111,117,116,111,30,14,160,118,248,204,119,1,247,5,240,247,188
,240,3,247,5,248,68,21,139,132,140,132,142,133,8,247,59,252,18,5,147,121,156,127,160,139,8,202,6,160,139,156,151,147,157,8,247,59
,248,18,5,142,145,141,146,139,146,8,224,7,167,116,162,111,111,117,116,111,30,139,65,251,41,251,231,251,39,247,231,139,213,5,167,
116,162,111,111,117,116,111,30,14,160,118,248,204,119,1,241,240,247,0,240,247,0,240,3,20,56,241,248,152,21,149,251,190,191,251,74
,5,145,118,159,124,162,139,8,188,6,158,139,155,149,148,154,8,195,234,194,44,5,148,124,155,129,158,139,8,188,6,162,139,159,154,145
,160,8,190,247,62,150,247,202,139,141,5,166,115,162,112,30,112,139,117,117,138,112,8,129,251,183,107,251,0,73,247,6,139,247,6,5,
166,116,162,112,111,116,116,112,30,139,251,6,73,251,6,107,247,0,129,247,183,5,138,166,117,161,112,139,8,111,116,115,111,31,14,160
,118,248,204,119,1,247,5,190,21,111,161,116,167,30,155,139,153,146,148,150,8,247,52,247,85,247,51,251,85,5,148,128,153,132,155,139
,167,139,162,162,139,167,139,151,135,150,132,148,8,251,65,247,100,247,53,247,86,5,146,148,144,150,139,151,139,167,116,162,111,139
,124,139,125,132,129,127,8,251,40,251,71,251,41,247,71,5,129,151,125,146,124,139,111,139,116,116,139,111,139,127,144,128,146,130
,8,247,53,251,86,251,65,251,100,5,132,130,136,128,139,127,8,14,251,104,240,249,59,119,1,247,5,240,247,187,241,3,247,5,251,54,21,
111,161,117,167,30,247,28,6,160,139,157,151,147,157,8,247,152,248,230,5,142,145,141,146,139,146,8,224,7,167,116,162,111,111,116,
116,111,30,139,65,251,24,251,192,107,139,251,23,247,192,139,213,5,167,116,162,111,111,117,116,111,30,54,7,139,132,140,132,142,133
,8,247,41,251,231,5,146,121,157,126,160,139,8,160,139,72,251,45,36,139,5,111,117,116,111,31,14,139,240,248,2,240,1,247,5,190,21,
111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,208,139,247,243,247,229,5,149,149,145,152,139,153,8,181,7,167
,116,162,111,30,252,9,6,111,117,116,111,111,161,117,167,31,247,185,139,251,244,251,230,5,129,130,134,126,139,125,8,14,139,240,247
,131,240,247,130,240,1,247,203,240,3,247,5,248,26,21,111,161,117,167,30,236,6,167,162,115,112,31,251,80,7,85,186,92,193,30,247,40
,6,167,162,162,167,166,116,162,111,31,251,40,247,80,6,139,178,124,174,115,166,163,166,154,174,139,178,8,247,80,247,40,7,167,162,
162,167,166,116,162,111,31,251,40,6,85,92,92,85,31,251,80,7,112,117,116,110,30,42,6,111,117,116,111,31,14,160,118,249,160,119,1,
247,203,240,3,247,203,190,21,111,162,116,167,166,162,162,167,30,247,181,38,7,240,4,240,247,181,6,166,116,162,112,111,116,116,112
,30,14,139,240,247,131,240,247,130,240,1,247,203,240,3,247,5,190,21,111,161,116,167,30,247,40,6,193,186,186,193,31,247,80,7,165,
161,164,167,30,237,6,167,162,161,167,167,116,162,111,31,41,6,111,117,162,166,31,247,80,7,193,92,186,85,30,251,40,6,111,117,116,112
,111,161,116,167,31,247,40,251,80,6,139,100,154,104,163,112,115,112,124,104,139,100,8,251,80,251,40,7,111,117,116,112,31,14,248,
62,238,247,45,240,1,247,5,240,236,240,237,240,3,20,56,247,5,248,153,21,111,161,117,167,167,162,161,167,30,247,3,7,166,160,162,166
,166,161,116,112,30,87,7,139,99,155,101,167,110,169,109,176,126,175,139,8,217,214,200,228,31,247,3,7,167,116,162,111,111,117,116
,111,30,251,3,7,113,117,114,112,112,117,164,165,30,191,7,139,180,123,177,111,167,109,169,103,153,103,139,8,62,63,77,50,31,14,226
,248,185,3,226,114,21,248,185,249,210,252,185,6,14,139,247,142,1,247,129,247,141,3,247,129,190,21,111,161,116,167,30,247,41,6,167
,161,162,167,31,247,40,7,167,117,162,111,30,251,41,6,111,117,116,111,31,14,160,118,249,160,119,1,247,104,240,3,247,5,248,111,21,
111,161,116,167,30,152,139,150,144,148,146,8,247,157,247,119,188,97,139,101,251,173,251,131,5,128,130,133,124,139,124,8,251,146,
7,111,161,116,167,167,162,162,167,30,139,247,123,247,172,247,131,5,150,149,146,152,139,155,8,224,7,139,154,132,153,128,148,8,40,
224,5,130,146,127,144,127,139,126,139,128,134,130,12,37,251,190,251,147,5,128,130,133,125,139,124,8,14,139,240,247,131,240,247,130
,240,1,247,5,190,21,111,161,116,167,30,248,33,6,167,162,162,167,166,116,162,111,31,251,122,139,209,247,131,247,52,139,5,167,162,
161,167,167,116,162,111,31,251,23,139,198,247,94,5,145,158,158,156,162,139,8,163,6,167,162,162,167,166,116,162,111,31,115,6,67,139
,83,87,122,82,8,72,251,122,251,53,139,5,111,117,116,111,111,161,117,167,31,247,23,139,70,251,131,77,139,5,111,117,116,112,31,14,
160,118,247,147,240,248,60,119,1,247,203,240,3,247,5,247,197,21,111,161,117,167,30,247,40,251,96,6,111,162,116,167,166,162,162,167
,30,247,96,247,40,7,167,162,161,167,167,116,162,111,31,251,40,160,6,247,84,247,219,5,143,147,142,147,139,149,139,166,116,162,111
,139,120,139,123,129,130,124,8,251,46,251,157,251,47,247,157,5,130,154,123,149,120,139,111,139,117,116,139,112,139,129,141,131,143
,131,8,247,84,251,219,139,118,251,40,139,5,111,117,116,111,31,14,249,160,119,1,247,201,243,3,247,151,249,110,21,190,251,148,5,139
,137,138,137,139,137,8,115,166,119,165,165,164,162,166,30,190,247,148,5,139,141,140,141,139,141,8,163,111,159,113,30,40,6,111,114
,116,112,31,14,160,118,247,104,247,36,1,247,253,247,42,3,247,104,247,155,21,111,161,116,167,30,238,251,53,6,111,161,116,167,30,189
,6,167,161,162,167,31,247,146,7,167,117,162,111,30,251,91,6,111,117,116,111,31,14,247,232,240,1,247,5,248,26,21,33,10,14,139,240
,248,214,240,1,247,5,240,236,240,237,240,3,247,5,22,247,191,249,59,237,251,96,6,111,161,116,167,167,162,162,167,30,247,197,251,192
,253,59,42,247,96,7,167,116,162,111,111,117,116,111,30,14,160,118,247,232,240,247,231,119,1,247,5,240,247,188,240,3,247,5,190,21
,111,161,116,167,167,162,162,167,30,247,181,247,188,251,181,7,111,161,116,167,167,162,162,167,30,249,59,7,166,116,162,111,111,117
,116,112,30,251,181,252,33,7,14,160,118,247,232,240,247,231,119,1,247,5,240,236,240,237,240,3,247,5,247,232,21,247,90,251,181,6,
111,162,116,167,166,162,162,167,30,247,181,247,91,248,26,7,166,116,162,111,111,117,116,112,30,251,181,251,188,247,181,7,166,116,
162,111,111,117,116,112,30,14,160,118,247,19,240,248,2,247,78,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,30,160,139,
158,152,146,158,8,176,234,247,121,139,176,44,5,146,120,158,126,160,139,167,139,162,162,139,167,139,145,137,145,137,145,8,251,90,
248,145,5,131,158,120,152,118,139,117,139,122,126,131,120,8,251,90,252,145,5,137,133,138,133,139,133,8,248,230,4,36,10,247,65,252
,138,21,214,247,85,214,251,85,5,213,248,53,21,36,10,14,160,118,247,62,240,248,44,240,1,247,54,240,247,89,240,3,247,1,191,21,111,
164,115,167,30,162,139,159,154,145,160,8,179,247,26,247,114,139,178,251,26,5,145,118,159,124,162,139,8,167,163,162,167,31,251,27
,248,96,5,185,148,176,181,139,187,8,208,7,193,92,186,85,30,251,89,6,85,92,92,85,31,70,7,139,91,176,97,185,130,8,157,238,21,208,247
,89,70,7,251,71,251,231,21,209,247,130,161,139,209,251,130,5,14,139,240,208,240,208,240,247,130,240,18,247,253,247,142,251,142,240
,19,244,247,5,190,21,111,161,116,167,30,161,139,157,153,146,158,8,189,247,29,240,139,5,19,248,251,11,7,111,161,116,167,30,247,41
,6,167,162,162,167,166,116,162,111,31,19,244,41,247,131,237,6,19,248,167,162,161,167,167,116,162,111,31,19,244,41,247,130,237,6,
19,248,167,162,162,167,166,116,162,111,31,251,41,6,121,139,122,129,130,125,8,251,143,253,68,5,137,133,138,134,139,133,8,247,76,247
,112,21,19,244,203,247,67,139,251,67,5,14,160,118,249,16,247,36,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,167,162,162
,167,30,139,247,188,247,201,251,223,5,148,129,152,133,154,139,8,167,162,162,167,31,248,60,7,167,116,161,111,111,117,117,111,30,139
,251,189,251,202,247,223,5,130,149,126,145,124,139,8,111,117,117,111,31,247,104,4,111,161,116,167,30,162,139,159,155,145,160,8,247
,240,102,142,139,5,166,160,163,166,31,182,7,166,116,162,111,30,116,139,119,123,134,118,8,251,241,176,135,139,5,113,119,115,113,31
,14,139,240,248,44,240,123,247,78,18,247,5,239,247,188,241,19,216,247,5,247,172,21,139,113,147,120,150,123,8,220,251,5,139,134,5
,172,95,169,82,214,139,8,160,6,229,139,176,225,178,196,8,192,215,5,150,155,148,159,139,164,8,189,7,139,165,130,158,128,155,8,57,
247,5,5,105,185,114,199,61,139,8,118,6,92,139,103,116,119,109,101,82,100,85,100,84,128,122,131,122,139,112,8,247,207,4,19,184,111
,161,116,167,167,161,162,167,30,224,7,166,117,162,111,111,117,116,112,30,239,252,89,21,139,192,247,10,247,61,5,19,216,143,144,147
,144,147,139,8,160,6,147,139,147,134,143,134,8,247,10,251,61,139,88,251,10,251,59,5,135,133,132,134,130,139,8,118,6,130,139,131,
144,136,145,8,247,70,248,169,21,19,184,111,162,116,167,167,162,162,167,30,224,7,166,116,162,111,111,116,116,112,30,14,139,240,248
,214,240,1,247,5,240,247,188,240,3,247,5,190,21,111,161,116,167,30,182,139,156,192,156,167,158,96,183,101,197,139,194,139,182,173
,159,177,8,246,247,107,5,153,168,150,173,139,179,139,222,95,198,110,198,8,205,247,5,5,143,147,142,147,139,149,139,166,116,162,111
,139,96,139,122,86,122,111,120,182,95,177,80,139,85,139,96,105,119,101,8,32,251,107,5,125,110,129,106,139,98,139,54,182,83,168,79
,8,73,251,5,5,135,131,137,131,139,130,8,240,247,231,21,139,162,144,157,147,156,8,247,0,247,105,5,144,149,148,147,151,139,151,139
,150,130,143,12,37,173,72,251,68,251,192,5,125,167,121,166,139,180,8,226,251,96,21,247,68,247,192,5,153,112,158,109,139,100,139,
117,132,120,132,122,8,251,0,251,106,5,134,129,131,132,125,139,127,139,129,147,135,12,37,14,139,240,248,129,247,78,18,247,5,240,137
,240,236,239,139,240,19,228,247,5,247,44,21,56,206,70,223,30,247,87,6,222,208,208,222,31,248,44,7,167,116,161,111,111,117,117,111
,30,252,44,7,111,115,116,112,30,251,87,6,112,116,162,167,31,248,44,7,167,116,161,111,111,117,117,111,30,19,208,238,224,21,36,10,
19,200,247,90,54,21,111,162,116,167,167,160,162,167,30,224,7,166,118,162,111,111,116,116,112,30,14,247,203,240,3,247,203,38,21,240
,28,4,183,38,6,14,249,103,20,139,21,139,139,248,204,139,247,104,139,6,251,104,139,7,158,12,10,240,10,236,142,140,140,180,140,181
,203,12,12,240,11,236,143,189,189,188,188,247,142,12,13,139,12,14,28,0,52,19,0,5,1,1,28,54,125,143,164,111,162,116,167,30,238,6,
167,162,162,167,31,224,7,167,116,161,111,30,40,6,111,116,117,111,31,11,111,161,117,167,30,248,33,6,167,162,161,167,167,116,162,111
,31,252,33,6,111,117,116,111,31,11,247,98,7,139,157,147,150,149,148,158,154,155,166,171,139,8,214,6,153,139,150,134,146,132,8,225
,65,5,148,131,148,125,139,124,8,251,12,7,139,123,131,125,129,132,8,53,65,5,132,133,128,133,125,139,8,64,6,125,139,130,144,130,146
,120,156,105,155,139,174,8,11,111,162,116,167,30,247,189,6,167,162,162,167,166,116,162,111,31,11,111,161,116,167,167,162,162,167
,30,224,7,166,116,162,111,111,117,116,112,30,11,0,0,1,0,0,0,14,0,0,0,24,0,0,0,0,0,2,0,1,0,1,0,114,0,1,0,4,0,0,0,2,0,0,0,1,0,0,0,
10,0,68,0,162,0,2,68,70,76,84,0,14,108,97,116,110,0,36,0,4,0,0,0,0,255,255,0,6,0,0,0,1,0,2,0,3,0,4,0,5,0,4,0,0,0,0,255,255,0,6,0
,0,0,1,0,2,0,3,0,4,0,5,0,6,97,97,108,116,0,38,115,115,48,49,0,44,115,115,48,50,0,50,115,115,48,51,0,56,115,115,48,52,0,62,115,115
,48,53,0,68,0,0,0,1,0,0,0,30,0,1,0,1,0,28,0,1,0,2,0,26,0,1,0,3,0,24,0,1,0,4,0,22,0,1,0,5,0,0,1,0,0,0,1,1,0,0,1,2,0,0,1,3,0,0,1,4
,0,6,0,14,0,22,0,30,0,38,0,46,0,54,0,3,0,0,0,1,0,48,0,1,0,0,0,1,0,100,0,1,0,0,0,1,0,104,0,1,0,0,0,1,0,108,0,1,0,0,0,1,0,112,0,1,
0,0,0,1,0,116,0,1,0,46,0,5,0,16,0,22,0,28,0,34,0,40,0,2,0,8,0,101,0,2,0,13,0,102,0,2,0,14,0,103,0,2,0,15,0,97,0,2,0,32,0,98,0,1,
0,5,0,8,0,13,0,14,0,15,0,32,0,1,0,6,0,82,0,1,0,1,0,15,0,1,0,6,0,66,0,1,0,1,0,32,0,1,0,6,0,93,0,1,0,1,0,8,0,1,0,6,0,89,0,1,0,1,0,
13,0,1,0,6,0,89,0,1,0,1,0,14,0,1,0,0,0,10,0,44,0,46,0,2,68,70,76,84,0,14,108,97,116,110,0,24,0,4,0,0,0,0,255,255,0,0,0,4,0,0,0,0
,255,255,0,0,0,0,0,0,0,0,0,1,0,0,0,0,204,109,177,85,0,0,0,0,204,138,51,80,0,0,0,0,204,138,51,83,2,211,0,0,2,211,0,0,1,30,0,111,0
,113,0,113,0,113,0,113,1,5,1,5,0,212,0,113,0,113,0,212,0,113,1,5,0,113,0,113,0,113,0,113,0,113,0,137,0,113,0,113,0,113,0,113,0,113
,1,5,0,212,0,113,0,113,0,113,0,113,0,113,0,110,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,162,0,113,0,113,0,113,0,113,0,113
,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,112,0,113,0,113,0,113,0,112,0,113,0,162,0,113,0,113,0,113,0,113,0
,113,0,137,0,113,0,113,0,162,0,162,0,113,0,162,0,105,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,113,0,102,0,113,0,113,0,113
,0,113,1,55,0,113,0,113,0,87,0,237,0,113,0,113,0,113,1,3,0,212,0,113,0,113,0,113,0,113,0,113,0,109,0,113,0,113,0,113,0,113,0,113
,1,55,0,0]);Module["FS_createDataFile"]("/","OCRA.otf",fileData0,true,true);var fileData1=[];fileData1
.push.apply(fileData1,[79,84,84,79,0,13,0,128,0,3,0,80,67,70,70,32,129,193,239,92,0,0,6,176,0,0,60,213,70,70,84,77,108,79,91,201
,0,0,68,252,0,0,0,28,71,68,69,70,0,190,0,4,0,0,67,136,0,0,0,32,71,80,79,83,184,255,184,254,0,0,68,204,0,0,0,48,71,83,85,66,119,90
,101,154,0,0,67,168,0,0,1,36,79,83,47,50,90,188,142,61,0,0,1,64,0,0,0,96,99,109,97,112,83,222,211,245,0,0,4,28,0,0,2,114,104,101
,97,100,6,47,76,75,0,0,0,220,0,0,0,54,104,104,101,97,4,6,251,46,0,0,1,20,0,0,0,36,104,109,116,120,49,149,74,40,0,0,69,24,0,0,1,240
,109,97,120,112,0,145,80,0,0,0,1,56,0,0,0,6,110,97,109,101,174,145,152,55,0,0,1,160,0,0,2,121,112,111,115,116,0,3,0,0,0,0,6,144,
0,0,0,32,0,1,0,0,0,2,0,0,89,59,114,1,95,15,60,245,0,11,3,232,0,0,0,0,211,135,133,179,0,0,0,0,211,135,133,179,249,67,249,67,6,189
,6,189,0,0,0,8,0,2,0,0,0,0,0,0,0,1,0,0,3,170,254,176,0,90,2,211,249,67,249,67,6,189,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,103,0,0,80
,0,0,145,0,0,0,2,2,211,1,144,0,5,0,0,2,138,2,188,0,0,0,140,2,138,2,188,0,0,1,224,0,49,1,2,0,0,2,0,5,9,0,0,0,0,0,0,0,0,0,175,0,0,
0,104,0,0,0,0,0,0,0,0,80,102,69,100,0,64,0,32,43,88,3,32,255,56,0,90,3,170,1,80,0,0,0,1,0,0,0,0,2,22,2,189,0,32,0,32,0,1,0,0,0,14
,0,174,0,1,0,0,0,0,0,0,0,67,0,136,0,1,0,0,0,0,0,1,0,4,0,214,0,1,0,0,0,0,0,2,0,7,0,235,0,1,0,0,0,0,0,3,0,41,1,71,0,1,0,0,0,0,0,4,
0,13,1,141,0,1,0,0,0,0,0,5,0,10,1,177,0,1,0,0,0,0,0,6,0,4,1,198,0,3,0,1,4,9,0,0,0,134,0,0,0,3,0,1,4,9,0,1,0,8,0,204,0,3,0,1,4,9,
0,2,0,14,0,219,0,3,0,1,4,9,0,3,0,82,0,243,0,3,0,1,4,9,0,4,0,26,1,113,0,3,0,1,4,9,0,5,0,20,1,155,0,3,0,1,4,9,0,6,0,8,1,188,0,77,0
,97,0,116,0,116,0,104,0,101,0,119,0,32,0,83,0,107,0,97,0,108,0,97,0,32,0,40,0,50,0,48,0,49,0,49,0,41,0,59,0,32,0,98,0,97,0,115,0
,101,0,100,0,32,0,111,0,110,0,32,0,99,0,111,0,100,0,101,0,32,0,98,0,121,0,32,0,78,0,111,0,114,0,98,0,101,0,114,0,116,0,32,0,83,0
,99,0,104,0,119,0,97,0,114,0,122,0,32,0,40,0,49,0,57,0,56,0,54,0,44,0,32,0,50,0,48,0,49,0,49,0,41,0,0,77,97,116,116,104,101,119,
32,83,107,97,108,97,32,40,50,48,49,49,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,78,111,114,98,101,114
,116,32,83,99,104,119,97,114,122,32,40,49,57,56,54,44,32,50,48,49,49,41,0,0,79,0,67,0,82,0,66,0,0,79,67,82,66,0,0,82,0,101,0,103
,0,117,0,108,0,97,0,114,0,0,82,101,103,117,108,97,114,0,0,70,0,111,0,110,0,116,0,70,0,111,0,114,0,103,0,101,0,32,0,50,0,46,0,48,
0,32,0,58,0,32,0,79,0,67,0,82,0,32,0,66,0,32,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,32,0,58,0,32,0,50,0,55,0,45,0,57,0,45,0,50
,0,48,0,49,0,50,0,0,70,111,110,116,70,111,114,103,101,32,50,46,48,32,58,32,79,67,82,32,66,32,82,101,103,117,108,97,114,32,58,32,
50,55,45,57,45,50,48,49,50,0,0,79,0,67,0,82,0,32,0,66,0,32,0,82,0,101,0,103,0,117,0,108,0,97,0,114,0,0,79,67,82,32,66,32,82,101,
103,117,108,97,114,0,0,86,0,101,0,114,0,115,0,105,0,111,0,110,0,32,0,50,0,32,0,0,86,101,114,115,105,111,110,32,50,32,0,0,79,0,67
,0,82,0,66,0,0,79,67,82,66,0,0,0,0,0,0,0,3,0,0,0,3,0,0,0,28,0,1,0,0,0,0,1,108,0,3,0,1,0,0,0,28,0,4,1,80,0,0,0,80,0,64,0,5,0,16,0
,126,0,161,0,164,0,169,0,175,0,180,0,184,0,191,0,196,0,198,0,214,0,216,0,220,0,223,0,228,0,230,0,246,0,248,0,252,1,49,1,83,2,55,
2,199,2,217,2,220,3,147,3,152,3,155,3,158,3,160,3,163,3,166,3,168,33,38,33,145,33,147,34,6,43,34,43,88,255,255,0,0,0,32,0,161,0,
164,0,167,0,174,0,180,0,184,0,191,0,196,0,198,0,214,0,216,0,220,0,223,0,228,0,230,0,246,0,248,0,252,1,49,1,82,2,55,2,198,2,216,2
,220,3,147,3,152,3,155,3,158,3,160,3,163,3,165,3,168,33,38,33,145,33,147,34,6,43,34,43,88,255,255,255,225,255,191,255,189,255,187
,255,183,255,179,255,176,255,170,255,166,255,165,255,150,255,149,255,146,255,144,255,140,255,139,255,124,255,123,255,120,255,68,
255,36,254,65,253,179,253,163,253,161,252,235,252,231,252,229,252,227,252,226,252,224,252,223,252,222,223,97,222,247,222,246,222
,132,213,105,213,52,0,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,1,6,0,0,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,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,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,91,92,93,94,95,0,106,0,0,0,0,108,110,0,0,0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,0,0,0,0,116,0,0,0,0,98,0,0,111,101,100,0
,103,99,0,107,109,0,0,0,0,0,0,0,0,0,0,0,0,0,0,113,115,105,96,0,0,0,0,138,0,0,0,0,0,0,0,118,119,0,0,0,0,0,0,0,0,0,0,0,0,0,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,121,125,102,123,124,0,104,0,0,122,0,0,0,3,0,0,0,0,0,0,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,4,4,0,1,1,1,5,79,67,82,66,0,1,2,0,1,0,54,248,47,0,248,48,1,248,49,2,248,50,3,248,51,4,139,12,3,139,12,4,28
,249,67,28,249,67,28,6,189,28,6,189,5,28,1,96,15,28,0,0,16,28,2,129,17,28,0,70,28,58,29,18,0,25,2,0,1,0,9,0,14,0,19,0,25,0,27,0,
29,0,34,0,41,0,44,0,47,0,50,0,57,0,66,0,71,0,78,0,85,0,100,0,109,0,121,0,128,0,133,0,200,0,213,0,217,0,223,100,111,116,108,101,115
,115,106,71,97,109,109,97,84,104,101,116,97,76,97,109,98,100,97,88,105,80,105,83,105,103,109,97,85,112,115,105,108,111,110,80,104
,105,80,115,105,79,104,109,97,114,114,111,119,117,112,97,114,114,111,119,100,111,119,110,68,101,108,116,97,117,110,105,50,66,50,
50,117,110,105,50,66,53,56,113,117,111,116,101,115,105,110,103,108,101,46,97,108,116,103,114,97,118,101,46,97,108,116,113,117,111
,116,101,100,98,108,46,97,108,116,98,97,114,46,97,108,116,50,46,48,48,48,77,97,116,116,104,101,119,32,83,107,97,108,97,32,40,50,
48,49,49,41,59,32,98,97,115,101,100,32,111,110,32,99,111,100,101,32,98,121,32,78,111,114,98,101,114,116,32,83,99,104,119,97,114,
122,32,40,49,57,56,54,44,32,50,48,49,49,41,79,67,82,32,66,32,82,101,103,117,108,97,114,79,67,82,66,78,111,114,109,97,108,0,0,0,0
,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,
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,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,94,0,95,0,96,0,103,0,102,0,131,0,170,0,165,0,128,0,125,0
,133,0,123,0,173,0,138,0,189,0,141,0,195,0,149,0,202,0,144,0,218,0,147,0,224,0,145,0,142,0,148,1,135,0,126,0,136,0,129,0,130,0,127
,1,136,1,137,1,138,1,139,1,140,1,141,1,142,1,143,1,144,1,145,1,146,1,147,1,148,1,149,1,150,1,151,1,152,1,153,1,154,0,145,2,0,1,0
,2,0,3,0,31,0,134,1,64,1,254,2,176,3,110,3,165,3,251,4,77,4,200,5,15,5,80,5,119,5,161,5,218,6,78,6,146,7,13,7,136,7,236,8,103,8,
208,9,37,9,176,10,36,10,87,10,169,10,245,11,55,11,131,12,3,12,205,13,33,13,167,14,30,14,116,14,191,14,254,15,163,15,235,16,47,16
,142,16,236,17,26,17,125,17,206,18,9,18,96,19,6,19,124,20,12,20,67,20,156,20,225,21,106,21,227,22,58,22,133,22,189,22,248,23,52,
23,60,23,101,23,162,24,29,24,164,25,33,25,166,26,21,26,116,27,26,27,118,27,165,28,14,28,114,28,183,29,47,29,127,29,152,30,22,30,
154,30,241,31,128,31,239,32,81,32,167,33,31,33,152,34,3,34,80,34,222,35,1,35,141,35,172,35,200,36,138,37,81,37,142,38,150,38,174
,38,209,39,13,39,94,39,222,40,102,40,217,41,86,42,19,42,173,43,64,43,208,44,172,44,233,45,146,46,7,46,38,46,203,47,89,47,163,47,
171,47,251,48,68,48,86,48,117,48,183,49,20,49,120,49,170,49,245,50,118,50,228,51,146,52,7,52,175,53,15,53,111,53,164,53,188,53,189
,53,224,54,29,54,90,54,118,14,14,66,247,38,18,247,182,247,38,251,15,239,19,192,247,182,116,21,32,10,19,160,162,247,198,21,33,10,
14,248,86,247,212,18,247,53,247,22,251,22,239,247,84,247,15,251,15,237,19,160,247,53,248,136,21,113,163,115,165,30,166,139,159,160
,142,161,8,168,247,119,5,19,192,139,141,140,140,139,141,8,162,115,161,112,30,110,6,112,116,116,112,31,19,136,247,184,251,112,21,
112,162,116,166,30,165,139,156,157,144,161,8,19,144,164,247,122,139,143,5,164,114,160,114,30,116,6,112,116,117,111,31,14,247,96,
239,247,49,239,247,104,119,1,247,242,238,195,238,3,247,5,247,146,21,139,113,159,118,164,136,8,102,251,59,5,112,163,116,165,30,163
,139,159,156,144,161,8,179,247,70,247,17,139,104,251,48,139,128,5,112,162,116,166,30,162,139,160,157,144,160,8,179,247,70,193,139
,5,166,162,162,166,166,117,162,111,31,108,139,174,247,49,155,139,5,166,162,162,166,31,139,164,120,160,115,143,8,173,247,43,139,150
,5,167,116,161,112,30,114,139,122,120,132,119,8,100,251,65,251,18,139,175,247,54,5,165,115,163,113,30,115,139,119,121,134,118,8,
100,251,65,84,139,5,111,117,117,111,111,162,117,166,31,172,139,103,251,49,122,139,5,111,117,117,111,31,247,61,189,21,175,247,49,
247,17,139,104,251,49,5,14,181,239,248,54,118,213,241,1,247,8,238,237,239,239,239,3,247,5,247,69,21,139,133,139,132,142,133,169,
64,211,106,234,131,8,137,7,111,162,117,166,166,162,162,166,30,141,7,247,1,155,230,205,139,247,2,139,247,14,41,178,37,170,8,247,79
,7,177,131,165,122,161,111,148,127,152,130,158,139,166,139,162,162,139,165,139,150,135,149,133,147,102,193,86,173,62,149,8,144,7
,166,116,162,112,112,116,117,111,30,134,7,33,127,48,85,139,251,2,139,251,13,238,102,237,111,8,251,103,7,113,141,114,143,120,149,
108,155,134,192,95,139,112,139,116,117,139,111,8,241,247,250,21,139,191,186,158,190,146,8,251,49,7,102,153,78,155,139,188,8,247,
90,252,26,21,247,72,7,188,122,190,113,139,91,139,86,92,113,86,129,8,14,126,239,228,239,247,100,239,228,239,18,247,7,237,199,236,
124,237,199,236,19,249,247,5,182,21,111,162,116,166,30,156,139,157,151,148,152,8,248,35,249,55,5,143,146,142,148,139,148,139,166
,116,162,112,139,126,139,125,135,129,129,8,252,42,253,65,5,134,132,137,130,139,130,8,141,248,218,21,68,180,69,226,30,19,253,224,
181,211,211,211,97,212,54,55,95,64,66,31,237,142,21,162,146,161,162,162,146,116,117,120,131,114,117,30,130,6,123,144,134,161,139
,156,8,19,251,247,34,252,136,21,68,180,69,226,224,181,212,211,211,97,211,54,30,55,95,64,66,31,237,142,21,162,145,161,163,162,146
,116,117,120,130,114,118,30,133,6,138,140,138,140,138,139,8,123,134,167,153,31,14,126,239,248,222,239,18,247,5,239,67,239,247,75
,239,127,240,19,228,247,5,247,97,21,139,251,26,227,56,247,24,138,8,145,6,197,139,187,154,179,164,152,122,150,119,167,139,166,139
,162,162,139,166,139,165,120,155,128,155,176,195,158,212,139,220,8,166,116,163,112,112,115,116,111,30,139,95,132,98,125,105,8,251
,35,247,91,5,19,216,206,191,247,1,204,139,247,9,8,236,51,193,43,251,10,58,70,251,8,30,139,61,172,85,175,90,8,85,91,96,79,139,45,
8,19,224,239,22,139,197,167,170,169,169,8,247,47,251,107,5,115,125,111,131,106,139,8,133,6,62,140,94,178,139,217,8,19,216,167,248
,19,21,199,178,164,199,175,187,127,100,30,139,115,121,114,126,123,111,105,101,111,100,111,8,115,173,116,176,139,189,8,14,247,168
,247,67,3,247,168,249,100,21,159,251,182,5,141,114,160,121,166,139,8,173,6,165,139,157,156,144,163,8,160,247,184,5,139,140,140,140
,139,140,139,162,118,160,116,142,8,58,6,112,116,117,111,31,14,249,153,119,1,247,148,239,3,247,148,248,7,21,139,251,76,237,251,9,
247,4,64,147,134,149,136,149,139,166,139,162,161,139,167,139,156,129,156,127,147,50,196,62,232,139,247,35,8,144,7,141,247,46,209
,228,233,201,152,148,148,155,139,155,139,167,116,161,112,139,129,139,129,136,131,133,251,6,60,45,251,9,137,251,83,8,14,249,153,119
,1,248,6,239,3,247,73,176,21,112,162,116,166,30,149,139,149,142,147,144,247,6,216,236,247,10,139,247,79,139,247,84,43,247,8,251,
7,218,131,145,130,142,128,139,112,139,116,116,139,112,139,126,148,115,152,135,8,230,77,215,47,139,251,43,139,251,41,64,50,47,79,
127,131,129,121,139,123,8,14,247,205,239,3,247,5,248,82,21,139,115,154,123,158,131,8,247,26,95,49,251,13,5,133,130,135,129,139,128
,139,112,161,116,167,139,153,139,151,143,149,148,8,246,247,36,223,251,36,5,148,130,153,135,152,139,167,139,161,161,139,167,139,148
,137,147,135,147,8,62,247,23,247,9,178,5,159,146,154,156,139,163,139,166,116,162,112,139,133,139,134,138,134,137,8,251,26,95,139
,247,43,5,166,116,162,112,112,116,117,111,30,139,251,43,251,41,188,5,112,115,114,112,31,14,247,222,239,1,247,205,239,3,247,5,248
,16,21,111,162,117,166,30,247,42,251,71,6,111,162,117,166,166,162,162,166,30,247,71,247,42,7,166,162,162,166,166,116,162,112,31,
251,42,247,70,6,166,117,162,111,111,117,117,111,30,251,70,251,42,7,112,116,117,111,31,14,251,55,118,1,247,51,251,26,21,111,161,117
,167,30,167,6,152,139,152,143,149,149,8,247,146,247,153,5,148,148,144,152,139,152,8,170,7,167,116,161,112,30,251,3,6,126,139,124
,135,130,129,8,251,70,251,194,5,135,131,137,131,139,130,8,14,247,208,247,20,1,247,5,248,2,21,111,161,117,167,30,248,36,6,167,161
,162,166,31,167,7,166,117,162,111,30,252,36,6,111,117,117,111,31,14,129,247,89,1,247,133,247,135,3,247,133,179,21,112,162,116,166
,30,247,35,6,166,162,161,167,31,236,7,167,116,161,112,30,251,35,6,112,116,116,112,31,14,249,153,119,1,247,65,176,21,111,162,117,
166,30,159,139,159,153,145,156,8,247,172,249,66,5,142,145,140,145,139,146,139,166,116,162,112,139,119,139,119,125,133,122,8,251,
172,253,66,5,136,133,138,133,139,132,8,14,125,239,248,222,239,1,247,5,239,247,192,239,3,247,5,247,235,21,251,87,189,251,53,247,92
,30,149,139,148,138,149,139,8,154,6,247,54,152,183,247,65,139,247,62,8,247,122,119,247,92,251,122,251,124,121,251,91,251,123,30,
239,22,139,215,139,227,154,201,156,208,172,174,224,139,155,139,161,139,148,137,237,120,144,251,32,139,251,15,8,93,7,251,0,126,251
,40,251,7,30,117,6,123,139,117,139,129,141,50,158,126,247,26,139,240,8,14,247,248,239,3,247,36,248,202,21,112,161,116,167,30,151
,139,151,143,148,147,8,247,21,247,2,139,252,234,5,111,162,117,166,166,162,162,166,30,249,60,7,166,116,162,112,30,107,6,127,139,128
,135,130,131,8,251,75,251,49,5,129,131,134,125,139,126,8,14,140,239,248,208,239,1,248,123,239,3,247,22,249,50,21,113,163,116,165
,30,149,139,150,142,147,145,183,170,183,151,205,139,207,139,195,96,139,69,139,112,128,114,123,118,112,103,87,106,94,110,59,88,60
,77,113,48,8,130,108,138,96,139,100,8,118,7,112,162,116,166,30,247,244,6,166,162,162,166,166,117,162,111,31,251,193,6,145,247,8,
202,177,218,189,224,193,247,4,208,139,247,24,139,247,20,42,224,251,19,139,47,139,81,119,77,98,127,131,130,120,139,124,8,14,126,239
,248,207,239,1,248,140,239,3,247,5,208,21,66,247,36,130,199,30,247,46,139,247,18,227,146,247,43,8,154,7,139,247,17,53,216,251,5,
168,8,247,51,247,60,5,148,148,145,150,139,152,8,174,7,166,116,162,112,30,251,255,6,111,117,117,111,112,162,116,166,31,247,171,139
,251,76,251,85,5,131,131,136,127,139,128,8,112,162,116,166,241,241,98,36,30,130,7,134,40,55,94,41,139,93,139,93,148,96,158,133,141
,133,141,132,139,8,112,116,117,111,31,14,247,56,239,1,248,46,239,3,247,5,247,106,21,111,162,117,166,30,247,139,251,16,6,112,162,
116,166,166,162,162,166,30,247,16,192,7,166,162,162,166,166,117,162,111,31,86,247,8,6,166,116,162,112,112,116,116,112,30,251,8,251
,81,7,247,96,248,71,5,142,145,141,146,139,147,139,166,116,162,112,139,120,139,119,126,133,123,8,251,109,252,99,5,136,132,137,133
,139,131,8,14,126,239,247,218,239,247,37,239,1,248,109,239,3,247,31,176,21,111,162,117,166,30,246,139,247,3,157,220,211,183,179,
180,203,139,215,8,247,65,251,13,222,251,67,30,124,139,147,247,37,247,139,139,5,166,162,163,165,166,117,162,111,31,251,186,6,112,
139,118,119,137,112,8,125,251,143,139,136,5,113,163,118,165,30,143,6,160,141,161,140,160,139,204,139,202,127,174,101,165,111,146
,100,139,100,139,117,132,118,129,120,91,54,251,6,116,34,139,8,112,116,117,111,31,14,126,239,247,192,239,1,247,5,239,247,192,239,
3,247,5,247,121,21,143,251,37,238,42,247,39,139,8,247,39,242,238,247,35,247,49,44,240,251,47,31,117,139,119,137,119,135,191,212,
200,206,199,204,147,148,144,151,139,152,139,166,116,162,112,139,126,139,125,134,130,129,61,54,60,53,78,38,8,101,76,107,58,139,41
,8,239,127,21,237,192,199,236,239,189,81,39,51,78,85,50,49,79,192,228,30,14,249,38,239,1,247,131,239,3,247,5,249,88,21,112,162,116
,166,30,247,232,6,131,118,126,120,127,121,91,69,78,79,97,65,78,32,120,251,17,139,251,16,8,111,162,117,166,166,162,162,166,30,139
,245,153,247,0,192,232,180,210,200,197,184,206,173,189,165,194,139,199,8,166,117,162,111,30,252,36,6,111,117,117,111,31,14,126,239
,248,222,239,18,247,5,238,74,239,247,124,239,73,239,19,228,247,5,247,92,21,251,19,245,53,247,36,30,183,6,247,10,148,227,237,139,
245,139,237,70,212,63,191,8,19,216,201,178,188,189,139,227,8,244,251,3,207,34,33,251,2,72,33,30,139,51,189,87,200,102,8,63,87,70
,67,139,40,8,19,228,238,22,139,222,229,193,202,171,204,105,222,83,139,60,8,77,80,88,69,30,118,6,57,70,178,213,31,19,216,174,248,
36,21,190,209,161,185,185,209,117,88,30,139,72,80,113,82,113,8,83,165,79,166,139,205,8,14,247,165,239,247,192,239,1,247,5,239,247
,192,239,3,247,5,248,150,21,251,26,236,32,247,45,30,159,139,160,140,159,142,92,65,82,72,74,80,129,129,133,127,139,124,139,111,162
,117,166,139,151,139,151,144,148,147,222,213,210,226,195,235,8,182,212,177,214,139,245,8,247,50,251,2,240,251,32,251,32,251,2,251
,10,251,33,30,239,22,225,204,212,224,228,200,79,40,30,139,114,136,115,132,116,123,83,76,126,78,139,8,46,82,197,222,31,14,129,247
,72,247,75,247,72,1,247,151,247,100,3,247,151,179,21,111,162,117,166,30,247,0,6,166,162,162,166,31,219,7,166,116,162,112,30,251,
0,6,112,116,117,111,31,247,175,4,34,10,14,247,245,247,72,1,247,171,247,100,3,247,48,251,21,21,111,162,117,166,30,182,6,152,139,152
,145,148,148,8,247,96,247,159,5,141,141,140,142,139,142,139,143,138,143,139,143,8,166,116,162,112,30,251,3,6,117,139,122,126,133
,124,8,251,16,251,145,5,136,133,138,131,139,132,8,247,15,248,168,21,34,10,14,247,18,247,236,21,248,45,251,163,5,147,133,149,136,
149,139,166,139,162,162,139,166,139,153,134,151,129,149,8,251,237,247,122,247,237,247,122,5,151,147,142,153,139,153,139,166,116,
162,112,139,129,139,129,136,131,133,8,252,45,251,163,5,130,130,135,125,139,126,139,126,143,125,139,130,8,14,247,108,239,247,20,239
,1,247,5,247,158,21,111,161,117,167,30,248,36,6,167,161,162,166,166,116,162,112,31,252,36,6,112,116,117,111,31,247,120,4,111,162
,117,166,30,248,36,6,166,162,162,166,166,117,162,111,31,252,36,6,111,117,117,111,31,14,247,5,247,6,21,111,162,117,166,30,149,139
,148,142,148,145,8,248,44,247,163,5,150,146,142,155,139,152,139,152,135,153,139,148,8,252,44,247,163,5,130,145,130,142,129,139,112
,139,116,117,139,111,139,125,144,127,148,129,8,247,237,251,122,251,237,251,122,5,130,129,134,127,139,125,8,14,72,247,38,248,173,
237,18,247,33,239,188,247,38,251,15,239,182,239,19,236,247,33,248,156,21,140,114,161,117,166,139,8,167,161,161,167,31,139,142,139
,144,5,139,197,193,160,191,145,8,142,6,148,139,148,136,148,139,179,130,178,119,139,92,139,105,109,91,119,118,103,99,82,109,139,66
,8,111,162,117,166,166,162,162,166,30,139,146,143,146,143,144,155,161,163,153,157,159,175,177,179,207,140,204,8,141,7,247,10,40,
196,38,33,251,1,76,251,13,30,19,244,247,41,252,183,21,32,10,14,120,239,247,132,239,247,89,239,1,247,5,239,247,15,239,216,239,3,247
,5,247,86,21,139,251,9,173,47,247,3,135,8,147,6,185,139,173,154,166,162,161,113,171,128,172,139,174,139,175,152,165,163,191,187,
143,202,139,238,8,247,6,7,247,95,90,247,64,251,96,30,130,6,251,17,136,45,81,123,32,8,132,7,111,161,117,167,30,164,139,160,158,142
,162,147,199,198,159,208,142,8,148,6,247,32,152,251,31,251,28,31,139,251,6,139,113,5,139,80,136,79,91,136,8,138,6,121,139,133,161
,138,162,8,247,135,7,165,116,163,112,30,122,139,122,129,130,124,117,154,103,151,108,139,251,7,138,113,251,2,139,251,8,8,239,133,
21,139,145,139,156,5,184,141,204,178,30,177,139,169,108,153,112,8,251,19,7,126,111,123,112,100,139,8,133,6,91,142,138,193,139,189
,8,14,247,91,239,248,44,119,1,247,11,179,21,111,162,117,166,30,162,139,159,156,144,159,8,183,247,64,247,95,139,184,251,64,5,144,
119,159,122,162,139,8,166,163,163,165,31,251,57,249,16,5,134,157,119,152,118,139,8,71,6,116,139,118,122,134,119,8,251,53,252,253
,5,247,60,247,138,21,215,247,184,215,251,184,5,14,140,239,247,107,239,247,77,239,18,247,5,239,247,178,238,54,239,19,244,247,5,190
,21,111,162,117,166,30,247,63,6,211,139,213,145,195,183,188,177,167,198,139,200,8,141,7,139,200,111,196,92,176,8,19,248,180,175,
158,189,139,189,139,207,104,206,78,174,88,167,80,140,81,139,8,251,63,6,111,117,117,111,31,239,252,186,21,247,107,247,42,7,19,244
,219,139,208,111,140,62,8,138,7,48,47,121,52,30,251,13,247,207,21,247,77,247,13,7,19,248,226,139,210,128,146,60,8,130,7,70,70,122
,72,30,14,126,239,248,97,118,228,239,1,247,53,239,247,99,237,3,247,53,247,234,21,141,251,71,188,251,68,247,77,139,227,139,207,193
,152,215,8,148,7,166,117,162,112,30,115,139,118,120,135,117,133,108,110,122,103,139,251,12,139,125,247,35,137,247,6,8,156,7,139,
247,8,160,247,25,247,2,145,8,144,6,157,139,156,134,154,128,167,118,132,87,188,139,8,166,161,162,166,31,149,7,122,214,72,193,52,139
,8,134,6,251,70,135,88,251,68,139,251,75,8,14,161,118,249,80,119,1,247,56,239,247,115,239,3,247,56,190,21,112,162,116,166,30,177
,139,176,139,176,146,247,41,166,247,4,247,13,139,247,67,139,227,109,215,99,193,74,226,51,204,251,42,139,8,111,117,116,112,31,239
,252,184,21,248,131,7,181,134,172,126,168,118,203,93,194,63,139,33,139,251,36,49,67,251,25,127,8,14,140,239,247,107,239,247,77,239
,1,247,51,239,3,247,51,190,21,111,162,117,166,30,247,234,6,166,162,161,167,167,117,161,111,31,251,184,247,107,247,136,6,167,161,
162,166,166,116,162,112,31,251,136,247,77,247,184,6,166,162,161,167,167,117,161,111,31,251,234,6,111,117,117,111,31,14,247,208,239
,247,77,239,1,247,102,239,3,247,102,179,21,112,162,116,166,166,162,162,166,30,247,168,247,71,7,166,162,162,166,166,115,162,113,31
,251,71,247,77,247,116,6,166,162,161,167,167,117,161,111,31,251,166,6,111,117,116,112,31,14,124,241,247,84,239,247,126,241,18,247
,13,240,247,3,247,155,39,239,19,244,247,13,247,245,21,139,251,9,170,251,9,199,77,183,93,205,113,214,139,169,139,171,143,171,148,
175,149,208,158,139,186,8,19,248,247,147,7,166,116,162,112,30,251,55,6,112,116,117,111,111,161,117,167,31,19,244,247,5,251,66,6,
105,127,106,133,109,139,69,139,84,172,115,207,121,189,129,202,139,200,139,222,158,220,182,183,168,168,177,153,177,139,181,139,180
,122,166,108,8,149,128,151,132,155,139,166,139,162,162,139,166,139,151,135,150,131,148,102,184,86,168,81,148,125,141,125,140,126
,139,66,139,79,106,98,98,8,78,78,109,251,5,139,251,6,8,14,247,202,239,247,195,119,1,247,33,239,247,135,239,3,247,33,179,21,112,162
,116,166,166,162,161,167,30,247,162,247,135,251,162,7,112,162,116,166,166,162,161,167,30,249,3,7,167,116,161,112,112,116,116,112
,30,251,145,251,135,247,145,7,167,116,161,112,112,116,116,112,30,14,140,239,248,136,239,1,247,205,239,3,247,62,190,21,112,162,116
,166,30,247,178,6,166,162,162,166,166,117,162,111,31,46,248,136,212,6,166,162,162,166,166,117,162,111,31,251,138,6,111,117,116,112
,112,162,116,166,31,212,252,136,46,6,111,117,116,112,31,14,123,241,249,7,119,1,247,22,239,247,52,239,3,247,22,247,57,21,139,66,184
,82,189,111,169,123,169,132,167,139,236,139,220,223,139,232,139,143,138,144,139,143,8,248,125,7,166,116,162,112,112,116,116,112,
30,252,133,7,83,103,115,102,97,94,169,189,30,139,144,140,144,140,145,8,148,7,167,118,161,111,30,113,139,121,122,134,116,136,126,
138,128,139,127,8,14,249,93,119,1,247,19,239,3,247,19,179,21,112,162,116,166,166,162,162,166,30,139,247,167,247,192,251,202,5,149
,129,152,134,152,139,166,139,162,162,139,166,139,152,133,151,130,149,8,251,172,247,182,247,149,247,155,5,148,148,145,152,139,152
,139,166,116,162,112,139,126,139,126,133,129,130,8,251,169,251,174,139,247,139,5,166,116,162,112,112,116,116,112,30,14,140,239,248
,248,119,1,247,33,239,3,247,33,190,21,112,162,116,166,30,248,8,6,166,162,162,166,166,117,162,111,31,251,214,248,198,6,167,116,161
,112,112,116,116,112,30,14,249,93,119,1,247,5,239,247,192,239,3,247,5,179,21,111,162,117,166,166,162,162,166,30,139,248,175,241,
251,228,5,145,119,159,123,161,139,163,139,156,156,146,158,8,241,247,228,139,252,175,5,111,162,117,166,166,162,162,166,30,249,3,7
,166,116,162,112,30,62,6,116,139,119,123,134,119,8,64,251,139,64,247,139,5,133,158,120,156,116,139,8,62,6,112,116,117,111,31,14,
249,93,119,1,247,19,239,247,164,239,3,247,19,179,21,112,162,116,166,166,162,162,166,30,139,248,116,247,131,252,138,5,147,123,156
,127,159,139,8,177,6,165,163,162,166,31,249,3,7,166,115,162,113,112,116,117,111,30,139,252,117,251,132,248,138,5,131,155,122,152
,119,139,8,102,6,112,116,116,112,31,14,126,239,248,170,239,1,247,8,239,247,186,239,3,247,8,247,246,21,35,10,239,135,21,144,7,139
,218,161,222,179,191,157,162,169,164,176,139,8,243,182,251,47,251,4,35,93,251,55,38,31,37,139,95,247,55,138,243,8,14,247,179,239
,247,106,239,1,247,33,239,247,164,239,3,247,33,179,21,112,162,116,166,166,162,161,167,30,247,139,247,14,7,219,139,222,158,187,203
,164,171,151,179,141,181,8,150,7,247,30,251,0,207,251,34,30,251,64,6,111,117,116,112,31,239,251,156,21,247,106,247,14,7,224,204,
117,55,31,132,7,135,58,66,119,66,139,8,14,171,239,248,120,239,1,247,7,242,247,164,235,3,247,7,248,13,21,139,66,149,66,159,89,172
,59,223,70,230,139,178,139,180,152,178,169,8,193,69,5,148,127,153,136,152,139,166,139,163,162,139,166,139,150,135,150,132,148,8,
74,223,5,171,199,156,219,139,220,8,247,61,65,247,63,251,51,30,130,6,40,139,69,61,109,69,119,91,129,68,139,67,8,242,163,21,192,7,
144,214,181,226,220,139,235,139,187,251,15,139,251,14,139,94,132,94,126,100,8,60,241,5,130,150,124,143,125,139,112,139,117,116,139
,112,139,127,143,129,146,130,8,236,251,17,5,121,126,119,131,115,139,129,139,129,140,128,142,45,164,132,247,6,139,247,18,8,14,247
,179,239,247,106,239,1,247,45,239,247,123,239,3,247,45,179,21,111,162,117,166,166,162,162,166,30,247,139,225,7,247,56,251,175,5,
148,129,154,135,152,139,166,139,162,162,139,166,139,148,138,147,134,147,8,251,28,247,126,5,237,175,177,236,139,247,3,139,237,251
,15,191,45,147,8,251,56,6,111,117,117,111,31,239,251,156,21,247,106,247,0,7,171,139,171,127,167,123,153,132,156,129,139,126,139,
90,137,86,102,108,117,120,108,135,110,139,8,14,124,239,248,167,239,1,247,45,239,247,118,239,3,247,39,247,45,21,152,41,229,69,245
,139,151,139,152,140,152,141,244,156,219,214,139,247,1,139,247,50,251,37,176,34,193,101,159,101,161,139,196,139,190,199,167,195,
139,8,168,139,167,132,158,123,166,116,139,85,187,139,167,139,161,162,139,166,139,143,138,144,138,143,116,222,66,193,35,139,8,133
,6,251,2,137,40,69,139,32,139,251,45,247,33,100,242,87,180,118,180,117,139,78,139,110,128,109,116,122,115,121,107,129,108,139,86
,139,89,166,131,194,8,136,162,118,159,113,139,8,112,116,116,112,31,14,248,237,239,1,247,205,239,3,247,5,249,31,21,111,162,117,166
,30,247,42,252,197,6,111,162,117,166,166,162,162,166,30,248,197,247,42,7,166,162,162,166,166,117,162,111,31,252,36,6,111,117,117
,111,31,14,126,239,249,6,119,1,247,19,239,247,164,239,3,247,19,247,103,21,139,65,171,67,201,98,181,111,189,130,189,139,189,139,189
,148,181,167,200,180,172,211,139,213,8,248,88,7,166,115,162,113,112,116,117,111,30,252,88,7,62,86,92,56,30,109,139,107,143,114,155
,105,162,124,179,139,180,8,248,88,7,166,116,162,112,112,116,116,112,30,14,249,93,119,1,247,4,249,43,21,247,59,253,16,5,144,120,160
,121,163,139,8,207,6,162,139,159,156,144,159,8,247,61,249,16,5,165,115,163,112,30,115,139,121,122,132,119,8,251,43,252,207,251,44
,248,207,5,134,159,119,156,116,139,8,112,115,116,112,31,14,249,93,119,1,247,5,239,247,191,240,3,247,5,249,43,21,147,251,120,151,
251,102,182,251,88,144,119,158,120,165,139,8,167,6,165,139,155,156,145,158,8,200,247,103,199,251,92,5,147,113,174,118,173,139,163
,139,160,158,143,159,181,247,87,153,247,103,147,247,120,8,141,7,164,115,162,113,113,114,116,112,30,133,251,55,130,251,43,119,251
,35,8,81,247,86,5,133,157,121,157,115,139,8,122,6,115,139,123,124,132,121,8,80,251,96,5,118,247,38,131,247,46,133,247,56,138,165
,118,163,111,139,8,113,115,118,112,31,14,249,93,119,1,247,25,179,21,111,162,117,166,30,159,139,153,151,149,153,8,247,28,247,142,
247,34,251,154,5,149,129,154,135,152,139,166,139,162,162,139,166,139,147,137,148,135,146,8,251,53,247,188,247,47,247,170,5,143,147
,141,147,139,148,139,166,116,162,112,139,119,139,125,126,129,126,8,251,22,251,127,251,30,247,139,5,130,148,125,144,126,139,112,139
,116,117,139,111,139,130,141,131,143,131,8,247,47,251,170,251,53,251,188,5,135,132,137,130,139,131,8,14,249,93,119,1,247,205,239
,3,247,28,249,43,21,139,130,141,131,143,132,8,247,63,251,212,139,251,171,5,111,162,117,166,166,162,162,166,30,139,247,171,247,63
,247,212,5,143,146,141,147,139,148,139,166,116,162,112,139,121,139,119,127,133,124,8,251,25,251,141,251,25,247,141,5,130,154,124
,151,119,139,112,139,116,117,139,111,8,14,140,239,248,136,239,1,247,33,190,21,112,162,116,166,30,247,235,6,166,162,161,167,167,117
,161,111,31,251,153,139,247,163,248,163,5,143,146,141,147,139,147,8,165,116,163,112,30,251,198,6,111,117,116,112,112,162,116,166
,31,247,116,139,251,163,252,163,5,135,132,137,131,139,131,8,14,126,239,248,222,239,1,247,102,239,3,247,102,176,21,112,162,116,166
,30,247,178,6,166,162,162,166,166,116,162,112,31,251,128,248,222,247,128,6,167,161,162,166,166,116,162,112,31,251,178,6,112,116,
116,112,31,14,249,153,119,1,247,65,249,103,21,139,132,140,133,142,133,8,247,172,253,66,5,146,122,158,125,159,139,166,139,162,162
,139,166,139,146,138,145,136,145,8,251,172,249,66,5,132,155,120,154,119,139,112,139,116,117,139,111,8,14,126,239,248,222,239,1,248
,52,239,3,247,22,176,21,112,162,116,166,30,247,178,6,166,162,162,166,31,249,66,7,166,116,162,112,30,251,178,6,112,116,116,112,112
,161,116,167,31,247,128,252,222,251,128,6,112,116,116,112,31,14,247,5,248,53,21,36,10,14,251,128,247,21,1,247,5,251,49,21,110,7,
111,162,117,166,30,248,36,6,166,162,162,166,31,168,7,166,116,162,112,30,252,36,6,112,116,117,111,31,14,248,220,247,78,1,247,151,
247,46,3,247,151,249,100,21,139,129,141,130,144,131,8,199,45,5,149,129,153,134,152,139,166,139,162,162,139,166,139,149,136,148,134
,147,8,79,234,5,132,150,123,142,126,139,112,139,116,117,139,111,8,14,122,240,247,50,236,244,239,1,247,19,239,247,141,239,3,247,19
,247,46,21,139,39,230,75,223,133,145,139,145,138,144,139,202,139,191,165,181,175,8,131,7,111,162,117,166,166,162,162,166,30,247,
202,7,139,194,117,193,99,177,99,176,83,152,84,139,77,139,80,116,89,103,128,131,131,122,139,125,139,111,161,117,167,139,150,139,150
,142,148,146,8,170,164,177,152,179,139,169,139,170,136,161,118,161,119,144,108,142,109,251,66,138,251,67,127,139,251,64,8,239,22
,37,10,14,123,238,247,250,237,247,126,119,1,247,16,239,247,181,239,3,247,16,176,21,112,162,116,166,166,162,161,167,30,143,7,177,
109,184,118,190,134,148,138,148,139,148,139,8,247,48,211,247,28,247,53,31,145,7,138,247,20,68,228,251,1,166,118,144,119,142,120,
139,81,139,89,116,99,107,8,247,131,7,167,116,161,112,112,116,116,112,30,239,252,159,21,247,17,7,161,183,175,178,183,159,159,148,
158,143,157,139,216,139,190,60,141,62,8,131,7,139,62,124,76,91,107,115,123,115,133,116,139,70,139,77,198,115,197,8,14,121,239,247
,248,239,1,247,59,239,247,93,237,3,247,59,247,166,21,139,251,19,170,44,223,94,172,121,172,132,172,139,227,139,217,195,158,215,8,
151,7,166,117,162,112,30,114,139,120,120,134,119,132,112,115,121,112,133,127,136,127,138,129,139,48,139,121,237,139,233,139,205,
153,203,185,161,156,147,162,143,163,139,8,172,139,170,130,147,116,146,118,156,121,163,139,8,167,160,161,167,31,151,7,124,200,84,
176,75,147,124,141,125,140,125,139,251,43,139,74,251,5,139,251,43,8,14,124,235,247,250,239,247,126,119,1,247,5,239,247,180,239,3
,247,5,247,161,21,139,251,36,197,32,247,14,112,159,135,158,137,158,139,197,139,190,158,180,170,140,113,162,117,165,139,8,166,162
,161,167,31,249,66,7,167,116,161,112,112,116,116,112,30,251,130,7,101,167,85,165,79,139,121,139,120,136,120,134,251,5,108,72,45,
139,251,29,8,239,22,139,205,157,189,183,169,164,156,165,146,163,139,207,139,197,83,164,84,8,251,20,7,123,89,99,101,94,121,118,130
,119,135,121,139,53,139,97,234,139,232,8,14,124,237,247,45,239,247,0,239,1,247,19,248,56,3,247,19,247,166,21,139,251,29,195,35,246
,104,164,131,173,134,175,139,8,217,223,162,205,167,116,161,111,31,126,139,127,134,130,130,126,126,123,131,118,136,127,137,127,138
,128,139,45,139,94,202,130,229,8,247,212,6,166,162,162,166,247,40,60,247,2,251,44,31,133,6,251,42,136,54,251,10,139,251,41,8,246
,201,21,156,201,181,185,210,139,226,139,165,99,153,71,8,14,248,69,239,247,29,239,1,247,199,239,3,247,39,248,119,21,112,161,116,167
,30,247,2,139,145,252,32,5,111,162,117,166,166,162,162,166,30,133,248,32,247,14,139,5,166,162,162,166,166,115,162,113,31,251,14,
148,6,139,161,139,171,143,152,151,182,189,157,192,139,8,166,162,162,166,166,116,162,112,251,41,69,61,251,42,31,130,251,2,7,112,116
,116,112,31,14,251,82,239,247,1,239,247,212,239,1,247,8,239,247,163,239,3,247,8,247,161,21,251,28,217,251,6,247,32,30,205,139,187
,161,178,172,8,139,114,139,117,5,139,117,138,117,130,119,121,98,99,127,82,139,110,139,97,139,117,149,113,151,138,177,100,139,112
,139,116,117,139,111,139,132,140,132,142,133,8,170,67,212,121,240,139,247,30,139,229,219,139,247,19,139,153,138,154,137,154,8,248
,61,7,166,116,162,112,30,114,139,116,118,137,114,107,165,99,157,91,143,131,140,131,139,131,139,8,251,42,62,251,10,251,44,31,239,
22,235,175,213,233,30,152,6,208,134,178,77,159,84,8,55,7,108,86,99,78,57,139,8,57,103,211,217,31,14,248,75,239,247,126,119,1,247
,48,239,247,106,239,3,247,48,176,21,111,162,117,166,166,162,162,166,30,247,184,7,166,191,178,197,214,139,8,210,141,70,67,31,139,
127,139,251,141,5,112,162,116,166,166,162,162,166,30,247,141,7,139,182,139,186,129,176,119,210,80,194,55,139,78,139,94,118,104,110
,8,247,126,7,166,116,162,112,112,116,117,111,30,14,248,60,239,242,247,38,18,247,73,247,172,251,34,247,37,36,239,19,224,247,73,248
,110,21,112,162,116,166,30,19,200,38,10,19,224,39,10,19,208,247,30,247,95,21,40,10,14,251,75,242,248,140,239,241,247,38,18,247,102
,247,138,251,29,247,37,251,0,239,19,228,247,45,251,21,21,95,182,129,185,30,163,139,163,142,160,141,195,144,187,188,161,184,157,176
,140,183,139,181,8,139,152,5,19,240,41,10,19,228,235,252,3,6,139,107,139,99,129,118,133,125,118,111,121,138,8,88,137,5,125,139,125
,140,125,139,8,134,6,111,117,117,111,31,19,232,247,58,249,186,21,40,10,14,248,172,119,247,149,119,1,247,65,239,3,247,65,176,21,111
,162,117,166,166,162,162,166,30,247,99,142,7,247,117,251,134,5,148,129,153,134,152,139,166,139,162,162,139,166,139,152,134,151,131
,148,8,251,98,247,113,247,64,247,50,5,149,148,145,152,139,153,139,166,116,162,112,139,126,139,127,133,130,130,8,251,88,251,69,136
,139,139,248,15,5,166,116,162,112,112,116,117,111,30,14,132,239,249,60,119,18,247,145,238,46,239,19,224,247,145,247,120,21,139,68
,147,88,173,94,183,81,204,129,241,139,8,166,162,162,166,166,116,162,112,31,113,139,101,139,125,141,74,148,128,192,139,210,8,19,208
,146,248,130,5,167,116,162,112,111,117,116,111,30,14,248,75,239,1,247,5,239,239,239,239,239,3,20,112,247,5,176,21,111,162,117,166
,166,162,162,166,30,247,170,7,178,165,224,183,30,161,139,146,114,140,121,8,251,251,7,111,162,117,166,166,162,162,166,30,247,170,
7,179,166,223,182,30,161,139,146,114,140,121,8,251,251,7,111,162,117,166,166,162,162,166,30,248,3,7,209,85,204,63,30,99,139,104,
120,113,111,116,167,104,158,98,139,108,139,113,129,117,123,130,153,124,148,122,139,8,112,116,117,111,31,14,248,75,239,1,247,19,239
,247,164,239,3,247,19,176,21,112,162,116,166,166,162,162,166,30,247,158,7,165,203,191,211,225,139,8,230,156,76,49,31,251,141,7,111
,162,117,166,165,163,162,166,30,247,141,7,247,41,81,243,251,42,30,71,139,85,114,97,102,8,148,7,166,116,161,112,112,116,117,112,30
,14,123,239,247,252,239,1,247,5,239,247,192,239,3,247,5,247,155,21,42,10,239,22,43,10,14,251,55,118,247,60,239,247,248,238,1,247
,16,239,247,181,239,3]);fileData1.push.apply(fileData1,[247,16,251,26,21,112,161,116,167,167,161,161,167,30,247,64,7,176,109,185
,118,192,136,8,156,6,247,46,221,247,13,247,44,31,139,247,37,79,238,251,14,169,117,144,119,142,119,139,82,139,90,118,100,107,8,167
,116,161,112,112,116,116,112,30,239,251,172,21,247,10,7,163,192,189,196,207,144,144,139,143,140,143,139,238,139,174,53,139,42,139
,54,107,75,66,120,126,136,127,137,127,139,62,139,96,208,112,192,8,14,251,55,118,247,60,237,247,249,239,1,247,5,239,247,180,239,3
,247,5,247,149,21,139,251,31,203,38,247,9,113,160,134,158,137,158,139,198,139,189,160,178,171,8,251,63,7,112,161,116,167,167,161
,161,167,30,249,0,7,167,116,161,112,112,116,116,112,30,100,171,90,160,82,139,119,139,119,136,117,134,251,15,109,81,40,139,251,37
,8,239,22,139,207,153,202,187,168,164,154,164,146,162,139,210,139,195,78,165,83,8,251,11,7,120,93,103,95,93,120,118,131,120,135,
121,139,55,139,94,225,139,228,8,14,248,75,239,1,247,96,239,247,84,239,3,247,96,176,21,112,162,116,166,166,162,161,167,30,247,116
,7,139,214,183,228,219,150,146,139,146,142,146,139,144,139,145,136,144,139,157,135,152,124,139,121,140,112,161,117,166,139,166,139
,162,162,139,167,8,138,214,81,202,51,139,79,139,91,119,102,106,8,167,117,160,111,112,116,117,112,30,14,123,236,247,255,239,1,247
,51,239,247,112,239,3,247,45,236,21,139,130,140,130,144,131,176,79,203,112,232,139,8,149,6,247,7,142,240,183,139,247,10,139,247,
31,251,40,152,251,3,168,109,147,108,152,139,177,8,190,197,143,185,30,165,6,169,137,173,135,146,111,144,118,159,123,163,139,166,139
,162,162,139,166,139,143,138,143,138,144,121,207,67,175,66,143,8,108,6,32,42,96,251,4,31,139,251,31,247,30,122,247,2,110,169,131
,181,129,139,102,139,91,77,119,79,139,106,139,108,145,118,149,114,151,131,177,103,139,112,139,116,117,139,111,8,14,126,239,247,232
,239,18,247,141,239,44,239,19,224,247,19,248,113,21,112,162,116,166,30,214,139,136,251,118,139,127,5,139,44,162,72,212,111,158,132
,169,134,169,139,8,201,206,158,190,166,116,162,112,31,110,139,114,119,108,139,8,137,6,72,139,185,205,31,142,247,120,247,43,139,5
,166,162,162,166,166,116,162,112,31,19,208,251,41,139,141,240,5,166,117,162,111,111,117,118,110,30,137,38,62,139,5,112,116,116,112
,31,14,123,239,248,88,119,1,247,19,239,247,164,239,3,247,19,247,134,21,139,100,140,100,148,105,163,53,205,81,245,137,8,143,6,207
,139,192,163,180,175,8,132,7,111,162,117,166,165,163,162,166,30,248,85,7,166,115,162,113,112,116,117,111,30,251,151,7,116,71,90,
64,52,139,8,134,6,42,142,128,204,139,244,8,247,121,7,166,115,162,112,113,116,115,113,30,251,121,7,14,248,172,119,1,247,8,248,122
,21,139,133,140,133,141,134,8,247,52,252,85,5,146,120,158,125,160,139,8,213,6,159,139,161,154,144,157,8,247,52,248,85,5,141,144,
140,145,139,145,139,166,116,162,112,139,118,139,118,123,134,121,8,251,40,252,51,135,139,251,40,248,51,5,132,158,122,154,116,139,
112,139,116,117,139,111,8,14,248,172,119,1,247,7,239,247,187,240,3,247,7,248,122,21,194,252,91,5,142,116,160,118,165,139,8,189,6
,162,139,156,155,146,158,8,185,247,51,185,251,51,5,145,120,157,123,163,139,8,188,6,164,139,161,159,141,163,8,195,248,91,139,143,
5,163,114,161,113,30,113,139,119,118,135,116,8,100,251,216,102,247,18,5,133,159,121,155,115,139,8,93,6,116,139,119,123,134,119,8
,102,251,18,99,247,216,5,137,163,117,159,114,139,8,112,115,116,112,31,14,248,172,119,1,247,39,176,21,112,162,116,166,30,152,139,
153,143,148,149,8,247,22,247,77,247,21,251,77,5,148,127,153,137,153,139,165,139,163,162,139,166,139,149,135,149,133,148,8,251,32
,247,92,247,22,247,84,5,144,147,142,149,139,149,139,166,116,162,112,139,126,139,125,134,130,130,8,251,10,251,67,251,10,247,67,5,
132,149,123,143,126,139,112,139,116,117,139,111,139,129,142,129,144,131,8,247,21,251,84,251,32,251,92,5,133,130,136,129,139,129,
8,14,251,75,241,248,253,119,1,247,5,251,23,21,139,114,156,120,161,134,148,137,149,138,148,139,189,139,183,170,157,176,8,247,207,
248,212,5,143,146,141,148,139,148,139,166,116,162,112,139,126,139,124,134,129,130,8,251,49,251,182,251,61,247,182,5,130,148,125,
144,126,139,112,139,116,117,139,111,139,130,141,130,144,132,8,247,84,251,223,251,0,251,90,5,133,127,130,138,129,139,8,123,6,112,
116,117,111,31,14,138,239,247,217,239,1,247,39,188,21,112,161,116,167,30,247,232,6,167,161,162,166,166,116,162,112,31,251,151,139
,247,164,247,194,5,148,148,144,151,139,151,8,179,7,167,117,161,111,30,251,200,6,111,117,117,111,111,162,117,166,31,247,124,139,251
,170,251,200,5,131,130,134,128,139,127,8,14,126,239,247,135,239,247,135,239,1,247,176,239,3,20,224,247,5,248,15,21,111,162,118,166
,30,175,139,181,139,161,117,159,118,140,109,139,111,139,41,161,62,204,100,184,112,220,138,205,139,8,166,162,162,166,166,116,162,
112,31,91,139,68,139,118,152,102,162,137,186,139,198,139,193,127,196,100,178,183,172,146,213,139,196,139,172,139,177,158,164,162
,171,185,141,196,139,8,173,6,167,161,162,166,166,116,162,112,31,251,8,139,64,131,90,72,107,95,132,83,139,84,8,129,7,139,110,138,
108,124,121,118,114,93,139,101,139,8,112,116,116,111,31,14,249,153,119,1,247,205,239,3,247,205,251,3,21,111,161,117,167,167,161,
162,166,30,249,214,7,166,116,162,112,112,116,117,111,30,14,126,239,247,135,239,247,135,239,1,247,233,239,3,20,224,247,5,176,21,111
,162,117,166,30,205,139,220,139,184,167,204,178,160,215,139,238,139,167,140,169,160,160,161,161,181,139,175,139,8,166,162,161,166
,166,116,163,112,31,135,6,102,139,96,139,118,164,122,159,139,176,139,170,139,194,133,195,107,183,90,206,63,147,251,7,139,8,112,116
,117,111,111,161,117,167,31,178,139,196,139,160,132,190,124,149,93,139,77,139,84,146,63,183,106,100,100,127,82,139,85,139,106,139
,101,129,115,120,95,90,136,72,139,8,106,6,112,116,117,111,31,14,248,171,239,125,240,107,159,18,139,238,247,166,238,19,88,247,19,
248,233,21,44,10,19,184,45,10,19,88,46,10,14,247,191,247,37,18,247,182,247,38,251,15,239,19,192,248,216,247,241,21,47,10,162,252
,201,21,33,10,14,247,56,239,247,124,239,1,247,39,239,247,124,239,3,247,118,247,72,21,111,162,117,166,30,152,139,152,144,148,149,
8,190,190,5,172,119,178,127,181,139,180,139,177,150,173,160,8,190,88,5,149,129,152,134,152,139,166,139,162,162,139,166,139,152,134
,152,129,148,8,87,191,5,160,172,151,178,139,180,139,180,126,178,119,172,8,191,191,5,149,148,144,152,139,152,139,166,116,162,112,
139,126,139,126,134,129,129,8,88,88,5,106,159,100,151,98,139,97,139,100,127,106,119,8,88,190,5,130,149,126,144,126,139,112,139,116
,117,139,111,139,126,144,126,148,130,8,191,87,5,119,106,127,100,139,98,139,97,151,101,159,106,8,87,87,5,130,130,134,126,139,126,
8,247,26,247,92,21,203,191,191,203,203,191,87,75,75,84,87,78,75,87,191,203,30,14,247,134,248,24,21,139,32,241,102,238,131,204,134
,247,6,147,139,65,139,75,73,126,78,138,8,133,6,69,139,88,156,119,190,131,157,121,153,118,139,111,139,117,116,139,111,139,133,140
,134,141,133,174,52,217,94,247,12,139,8,147,6,247,10,141,247,1,190,139,247,12,8,144,7,138,184,125,172,115,164,162,165,155,172,139
,179,8,143,7,136,241,50,181,44,148,76,145,35,130,139,212,139,202,204,155,201,139,168,139,166,134,158,126,169,119,139,88,186,139,
165,139,163,163,139,165,8,139,145,138,144,137,144,114,216,66,185,38,139,251,16,139,36,82,139,251,14,139,100,149,109,155,116,110,
110,116,100,139,93,8,239,22,139,163,160,161,158,152,181,126,189,134,189,134,178,136,198,133,139,95,139,112,123,126,122,128,120,144
,118,142,118,141,84,144,251,23,131,139,200,8,14,247,165,247,49,1,247,119,239,211,239,3,248,90,247,215,21,112,161,116,167,167,161
,162,166,30,196,7,166,116,162,112,112,116,116,112,30,247,64,82,21,111,161,117,167,166,162,162,166,30,196,7,166,115,162,113,112,116
,117,111,30,14,139,28,249,67,247,192,247,192,247,192,247,192,247,192,248,86,247,192,247,192,247,192,247,192,247,192,1,28,249,67,
247,192,247,192,247,192,247,192,247,192,248,86,247,192,247,192,247,192,247,192,247,192,3,247,117,4,247,16,240,38,251,16,251,16,38
,38,251,16,251,16,38,240,247,16,247,16,240,240,247,16,31,247,192,4,251,182,251,127,251,127,251,182,251,182,247,127,251,127,247,182
,247,182,247,127,247,127,247,182,247,182,251,127,247,127,251,182,31,135,247,192,21,248,89,248,12,252,4,252,89,252,89,252,12,252,
12,252,89,252,89,252,4,248,12,248,89,248,89,248,4,248,4,248,89,31,247,192,4,252,255,252,138,252,138,252,255,252,255,248,138,252,
146,248,255,248,255,248,146,248,146,248,255,248,255,252,146,248,138,252,255,31,247,192,4,249,165,249,24,253,16,253,165,253,165,253
,24,253,24,253,165,253,165,253,16,249,24,249,165,249,165,249,16,249,16,249,165,31,143,247,192,21,254,74,253,155,253,155,254,74,254
,74,249,155,253,155,250,74,250,74,249,155,249,155,250,74,250,74,253,155,249,155,254,74,31,14,248,159,251,92,251,16,21,247,92,39,
247,92,239,139,247,140,251,92,239,251,92,39,5,14,248,172,239,1,247,146,248,222,21,112,161,116,167,30,248,8,6,166,162,162,166,166
,115,162,113,31,252,8,6,112,116,116,112,31,14,248,137,247,78,1,247,205,247,46,3,249,6,248,187,21,111,162,117,166,30,152,139,153,
144,148,148,8,199,234,5,144,147,142,149,139,148,139,166,116,162,112,139,126,139,125,135,130,129,8,79,44,5,134,131,136,130,139,129
,8,14,251,228,239,239,247,89,1,247,193,239,145,239,3,248,238,150,21,42,7,112,162,116,166,30,142,139,143,139,5,166,161,117,111,112
,116,116,111,31,137,139,136,139,5,111,117,116,112,31,139,112,161,118,165,137,8,146,6,222,207,205,223,31,139,208,94,195,78,157,8,
193,7,167,117,161,111,111,117,116,112,30,14,251,113,239,248,173,247,37,18,247,62,239,159,247,38,251,15,239,210,239,19,236,247,232
,107,21,125,7,146,34,221,69,247,5,139,8,148,6,247,1,143,233,213,139,245,8,150,7,137,165,118,160,112,139,8,111,117,116,112,31,139
,137,139,135,5,83,83,109,84,30,87,139,89,165,138,194,8,143,7,139,186,158,162,165,161,184,177,192,177,139,210,8,222,7,166,116,162
,112,112,116,117,111,30,56,7,139,112,101,116,114,118,8,96,102,102,87,139,64,8,19,244,247,12,248,134,21,47,10,14,247,35,240,47,238
,248,1,247,49,79,119,18,247,5,239,247,192,239,19,44,247,118,249,46,21,48,10,142,253,63,21,111,162,117,166,30,163,139,155,155,146
,159,8,19,76,177,247,18,5,19,156,247,119,130,174,251,9,5,144,119,159,123,161,139,166,139,162,162,139,166,139,144,138,144,138,143
,8,251,78,249,3,5,133,157,121,157,115,139,8,116,6,115,139,123,124,132,121,8,251,78,253,6,5,137,135,139,134,139,134,8,19,76,247,56
,247,103,21,222,247,167,5,19,140,223,251,174,5,205,248,58,21,19,44,48,10,14,140,239,237,239,156,239,247,80,239,1,251,2,178,21,114
,165,115,165,30,163,139,157,157,146,158,8,183,247,64,247,95,139,180,251,52,5,145,118,157,122,164,139,8,247,215,6,166,162,162,166
,166,117,162,111,31,251,177,139,83,247,107,247,233,139,5,167,161,162,166,166,116,162,112,31,252,2,139,90,247,80,248,51,139,5,166
,162,162,166,166,117,162,111,31,252,186,6,115,139,120,122,134,119,8,147,252,4,21,214,247,183,215,251,183,5,14,126,239,248,68,238
,137,247,49,18,247,5,239,47,239,247,175,239,48,239,19,176,247,118,249,46,21,48,10,147,252,56,21,139,251,12,178,46,208,84,172,113
,181,117,198,139,188,139,187,156,176,170,208,195,177,229,139,247,14,139,247,56,63,247,43,251,57,139,116,139,116,136,117,131,8,251
,3,100,76,251,10,139,251,39,8,239,22,241,178,247,6,242,242,177,251,6,37,35,100,251,4,37,30,120,139,124,148,123,142,75,172,111,218
,139,231,8,19,162,247,184,247,255,21,48,10,14,126,239,248,170,239,1,247,10,237,247,186,239,3,247,66,119,21,112,162,116,166,30,157
,139,155,150,148,152,8,191,226,5,175,105,183,119,190,139,247,53,139,224,247,88,140,247,63,8,145,7,139,218,121,218,106,203,8,211,
247,13,5,144,146,141,148,139,148,139,167,117,161,112,139,125,139,126,134,129,130,8,81,44,5,103,172,96,158,87,139,99,139,90,121,109
,115,57,73,95,251,20,139,251,22,139,60,155,59,173,72,8,65,251,15,5,135,131,136,130,139,130,8,247,21,248,10,21,144,7,139,218,161,
222,179,191,157,162,169,164,176,139,171,139,165,124,160,115,8,251,102,251,238,5,128,179,134,181,139,175,8,207,251,119,21,247,102
,247,241,5,150,98,144,96,139,101,139,35,93,251,55,38,139,107,139,113,155,118,163,8,14,126,239,248,222,239,18,247,5,239,39,247,43
,247,89,247,44,39,239,19,228,247,118,247,178,21,251,77,207,251,6,247,74,247,74,207,247,7,247,76,30,247,143,7,166,116,162,112,112
,116,117,111,30,251,143,7,139,103,138,102,130,104,124,77,89,110,64,139,87,139,95,154,115,170,113,173,135,203,139,194,8,247,143,7
,166,116,162,112,112,116,117,111,30,247,78,4,111,161,117,167,30,19,224,189,6,19,208,168,161,161,167,31,19,224,167,116,161,111,30
,89,6,112,116,117,111,31,19,200,247,240,22,112,161,116,167,30,191,6,167,161,162,166,166,116,162,112,31,87,6,112,116,116,112,31,14
,132,239,247,140,247,8,247,105,239,18,247,28,239,247,146,239,62,237,19,248,247,164,176,21,111,162,117,166,166,162,162,166,30,248
,56,7,247,10,146,234,247,12,211,194,105,68,30,139,81,97,92,89,136,114,137,119,118,139,114,8,121,7,112,161,116,165,30,141,139,142
,139,141,139,5,19,244,210,139,172,81,140,72,8,135,7,139,83,118,77,82,138,114,138,116,116,139,113,139,113,164,115,165,139,247,9,142
,195,245,139,247,0,139,218,109,219,79,179,8,19,248,180,175,167,194,139,203,8,142,7,137,247,18,44,216,251,22,139,8,251,76,96,251,
24,251,73,31,14,122,240,247,50,236,244,239,154,247,49,18,247,19,239,139,239,211,239,116,239,19,249,247,146,247,46,21,139,39,230,
75,223,133,145,139,145,138,144,139,202,139,191,165,181,175,8,131,7,111,162,117,166,166,162,162,166,30,247,202,7,139,194,117,193,
99,177,99,176,83,152,84,139,77,139,80,116,89,103,128,131,131,122,139,125,139,111,161,117,167,139,150,139,150,142,148,146,8,170,164
,177,152,179,139,169,139,170,136,161,118,161,119,144,108,142,109,8,251,66,138,251,67,127,139,251,64,8,239,22,37,10,19,244,248,90
,4,49,10,247,64,81,21,50,10,14,124,237,247,45,239,247,0,239,1,103,239,3,67,247,46,21,139,39,230,75,223,133,145,139,145,138,144,139
,203,139,190,166,181,175,8,130,7,111,162,117,166,30,164,139,160,158,143,163,157,125,160,129,162,131,164,131,174,134,175,139,8,217
,224,162,205,166,116,162,111,31,126,139,125,134,129,130,8,137,7,129,125,118,134,122,136,127,137,127,138,128,139,45,139,94,202,130
,229,8,247,211,6,167,161,161,167,247,40,62,247,2,251,45,31,133,6,64,137,81,110,99,92,103,191,71,165,68,139,77,139,78,119,91,100,
127,130,132,125,139,123,139,112,161,116,167,139,150,139,150,142,148,146,8,170,164,177,152,179,139,169,139,170,136,161,118,161,119
,145,108,141,109,251,65,138,251,68,126,139,251,63,8,239,22,214,229,152,229,30,163,139,162,138,161,138,8,99,7,108,89,89,73,64,139
,8,129,6,104,141,91,164,139,182,8,247,248,247,74,21,51,10,14,123,239,247,252,239,154,247,49,1,247,5,239,153,239,210,240,153,239,
3,247,118,247,155,21,42,10,239,22,43,10,153,247,237,21,49,10,247,63,81,21,113,162,116,166,166,163,161,166,30,197,7,166,114,162,113
,113,115,116,112,30,14,123,239,247,252,239,1,247,5,239,247,192,239,3,247,32,116,21,112,162,116,166,30,152,139,152,144,148,149,8,
208,220,5,177,114,185,125,194,139,247,52,139,229,247,15,139,247,48,139,203,124,197,111,185,8,213,227,5,146,148,144,150,139,151,139
,166,117,162,111,139,125,139,127,134,129,130,8,68,57,5,102,164,94,153,85,139,251,55,139,52,251,15,139,251,50,139,76,153,81,167,93
,8,66,52,5,131,130,135,128,139,127,8,247,35,247,178,21,238,187,221,241,30,167,139,163,133,159,128,8,251,101,251,139,5,130,164,135
,167,139,169,8,216,251,54,21,247,101,247,139,5,148,114,144,110,139,108,139,40,92,59,36,139,111,139,114,145,119,150,8,14,123,239,
248,88,119,182,247,49,18,247,19,239,139,239,211,239,139,239,19,242,247,146,247,134,21,139,100,140,100,148,105,163,53,205,81,245,
137,8,143,6,207,139,192,163,180,176,8,131,7,111,162,117,166,165,163,162,166,30,248,85,7,166,115,162,113,112,116,117,111,30,251,151
,7,116,71,90,64,52,139,8,134,6,42,142,128,204,139,244,8,247,121,7,166,115,162,112,113,116,115,113,30,251,121,7,239,247,243,21,49
,10,247,64,81,21,50,10,14,248,60,239,18,247,73,247,172,39,239,19,192,247,254,248,110,21,112,162,116,166,30,19,160,38,10,19,192,39
,10,14,126,239,53,239,247,107,239,247,77,239,59,239,18,58,239,247,186,239,19,166,251,54,247,246,21,140,251,63,226,251,88,247,51,
139,198,139,189,166,177,182,8,133,7,19,118,111,162,117,166,30,247,235,6,166,162,162,166,166,117,162,111,31,251,185,247,107,247,136
,6,167,160,161,167,166,117,162,112,31,251,136,247,77,247,185,6,166,162,162,166,166,117,162,111,31,251,235,6,111,139,119,119,137,
112,8,19,174,100,180,90,165,80,139,8,251,60,60,251,83,251,63,31,239,134,21,145,7,139,217,157,223,181,189,162,166,165,161,177,139
,240,139,184,251,41,140,251,3,8,132,7,138,35,95,251,55,37,139,37,139,95,247,55,138,243,8,14,123,239,247,44,239,247,0,239,1,52,239
,3,251,66,247,155,21,251,50,228,251,13,247,53,30,229,139,206,177,182,201,165,98,177,110,187,123,163,131,174,134,175,139,8,218,224
,162,205,166,116,162,111,31,126,139,124,135,130,129,127,125,123,132,119,136,127,137,127,138,128,139,45,139,94,202,130,229,8,247,
211,6,167,161,161,167,247,40,62,247,2,251,45,31,133,6,54,137,76,102,99,80,97,199,72,177,51,139,8,251,55,52,251,15,251,50,31,239,
22,238,187,221,241,240,188,58,39,40,91,59,37,37,91,219,238,30,248,43,212,21,51,10,14,251,71,239,248,139,239,18,247,102,247,138,39
,239,19,208,247,198,251,21,21,111,162,117,166,30,177,139,209,139,145,141,239,162,178,229,139,247,13,8,19,224,41,10,19,208,235,252
,3,6,139,107,139,99,129,117,122,101,106,134,97,139,123,139,122,140,121,139,8,111,117,117,111,31,14,247,5,248,53,21,36,10,14,248,
196,118,1,247,118,250,12,21,139,130,142,129,144,131,8,247,97,251,201,5,149,130,153,135,152,139,152,139,152,143,148,139,8,247,94,
247,195,5,146,149,145,150,139,151,139,166,117,162,111,139,126,139,127,133,129,130,8,251,57,251,73,251,57,247,74,5,130,149,126,143
,126,139,8,111,117,117,111,31,14,249,33,239,1,247,5,239,247,192,239,3,247,118,250,9,21,149,251,23,247,1,38,247,23,139,247,23,139
,247,1,240,149,247,23,8,142,7,166,117,162,111,30,112,139,118,119,137,113,133,61,74,78,60,139,60,139,74,200,133,217,137,164,118,160
,112,139,8,111,117,117,111,31,14,248,112,247,37,1,247,182,247,38,3,248,216,248,162,21,47,10,14,248,171,239,125,240,127,119,18,139
,238,247,166,238,19,88,247,19,248,233,21,44,10,19,184,45,10,19,88,46,10,14,161,118,248,128,247,112,39,239,18,247,33,239,247,164,
239,19,184,247,174,190,21,112,162,116,166,166,162,161,167,30,248,198,247,164,69,7,19,216,111,161,117,167,167,161,162,166,30,247,
12,7,166,116,162,112,30,19,184,252,8,6,112,116,116,112,31,14,126,239,247,109,239,247,109,239,1,247,8,239,179,247,106,179,239,3,20
,252,247,124,247,246,21,35,10,239,135,21,144,7,139,236,170,236,198,186,154,151,160,148,160,139,8,243,182,251,47,251,4,35,93,251,
55,38,31,37,139,95,247,55,138,243,8,179,22,111,162,117,166,30,247,6,6,166,162,162,166,166,117,162,111,31,251,6,6,111,117,117,111
,31,14,249,87,119,1,247,33,247,50,247,20,247,49,3,247,174,179,21,112,162,116,166,30,197,6,166,162,162,166,31,139,154,132,153,127
,148,8,222,247,249,222,251,249,5,127,130,132,125,139,124,8,112,162,116,166,30,196,6,166,162,161,167,31,139,163,122,157,117,145,8
,251,25,248,216,5,134,160,120,157,114,139,116,139,118,122,134,117,8,251,28,252,216,5,118,133,123,119,139,117,8,14,140,239,247,107
,239,247,77,239,1,247,140,190,21,52,10,248,236,4,52,10,199,251,177,21,112,161,116,167,30,247,149,6,167,161,161,167,167,116,161,112
,31,251,149,6,112,116,116,112,31,14,248,249,239,1,247,33,239,247,135,239,3,247,118,249,43,21,139,119,150,122,156,131,8,252,214,7
,112,162,116,166,166,162,161,167,30,248,209,247,135,252,209,7,112,162,116,166,166,162,161,167,30,248,214,7,156,147,151,156,139,159
,8,166,116,162,112,30,252,36,6,112,116,117,111,31,14,140,239,39,247,21,248,79,247,20,39,239,18,19,128,247,210,190,21,111,162,117
,166,30,19,64,247,234,6,166,162,161,167,31,168,7,167,116,161,112,30,19,144,120,139,121,127,131,122,8,251,118,139,226,247,125,5,141
,144,140,145,139,145,139,145,138,145,139,145,8,52,247,124,247,118,139,5,19,32,147,123,156,127,159,139,8,167,161,161,167,31,167,7
,167,117,161,111,30,19,144,251,234,6,111,117,117,111,31,139,133,140,133,141,134,8,244,251,175,34,251,174,5,137,133,138,133,139,133
,8,14,248,216,237,1,247,205,239,3,247,204,248,207,21,111,162,117,166,30,152,139,152,145,148,148,152,152,139,170,161,139,8,144,6,
165,134,145,107,139,110,8,252,113,7,111,162,117,166,166,162,162,166,30,248,113,7,139,168,145,170,165,145,8,143,6,150,139,148,132
,141,128,143,117,159,120,164,139,8,166,161,162,166,31,148,7,128,202,86,174,84,139,108,139,108,128,114,116,114,162,108,150,108,139
,84,139,85,104,128,76,8,14,127,242,18,247,5,239,210,247,49,251,20,239,239,239,19,216,247,118,247,155,21,139,251,32,210,251,4,247
,21,116,8,110,7,19,232,122,131,127,122,139,119,8,112,162,116,166,30,196,6,166,162,161,167,31,19,216,139,159,128,156,122,147,8,168
,7,247,20,162,211,247,5,139,247,31,139,247,32,66,247,5,251,19,163,8,168,7,19,232,155,147,151,156,139,159,8,167,117,161,111,30,82
,6,111,117,116,112,31,19,216,139,120,151,121,156,131,8,110,7,251,19,112,66,36,139,251,39,8,239,22,139,204,161,199,181,169,149,146
,152,143,152,144,8,251,235,7,71,161,107,208,139,220,8,247,92,251,64,21,247,237,7,206,117,172,70,139,57,139,58,107,70,71,117,8,14
,247,205,239,196,239,3,247,204,248,207,21,147,251,38,5,152,251,52,142,251,121,247,25,95,8,90,7,111,162,117,166,166,162,162,166,30
,188,7,235,174,170,247,28,151,247,10,8,157,247,182,139,142,5,165,116,160,112,30,112,139,118,118,137,113,134,42,133,45,130,46,135
,91,133,58,112,94,8,248,106,7,166,116,162,112,112,116,117,111,30,252,106,7,112,183,133,220,135,188,131,232,132,233,134,236,137,165
,118,160,112,139,8,111,117,117,111,31,14,249,101,239,18,247,6,238,125,247,20,211,247,20,126,235,19,192,247,120,248,201,21,139,107
,143,106,146,104,165,251,24,169,251,23,173,251,22,8,19,160,129,130,133,125,139,124,8,111,162,117,166,30,167,6,166,162,162,166,31
,139,144,138,144,138,143,100,247,36,105,247,37,110,247,39,8,19,200,134,165,134,165,139,166,8,145,7,141,225,200,205,226,139,232,139
,197,66,139,48,139,117,135,115,132,116,8,19,144,35,252,78,139,127,5,111,162,117,166,30,167,6,166,162,162,166,31,139,154,132,152,
128,149,8,230,248,26,5,19,200,146,169,142,168,139,167,139,247,43,44,247,13,251,44,139,72,139,74,115,92,91,8,89,89,119,77,139,67,
8,14,249,81,119,1,247,205,239,3,247,232,248,145,21,112,161,116,167,30,152,139,152,144,148,148,8,197,196,139,252,126,5,111,162,117
,166,166,162,162,166,30,139,248,126,196,82,5,149,130,151,134,153,139,167,139,161,162,139,166,139,152,133,151,130,149,8,251,35,247
,35,5,130,148,126,144,126,139,124,139,127,134,130,139,8,251,34,251,35,5,129,129,134,127,139,126,8,14,249,81,119,1,247,205,239,3,
247,232,247,75,21,139,126,144,126,149,129,8,247,34,251,34,5,149,129,152,134,152,139,152,139,152,144,148,139,8,247,35,247,34,5,148
,149,145,152,139,152,139,166,116,162,112,139,125,139,127,134,129,129,8,82,82,139,248,126,5,166,117,162,111,111,117,117,111,30,139
,252,126,81,196,5,130,149,126,144,126,139,8,112,116,116,112,31,14,129,239,248,253,119,1,247,172,179,21,114,162,114,167,30,247,235
,6,166,163,162,166,31,251,66,249,10,5,133,159,119,156,117,139,117,139,117,123,134,118,8,83,252,216,21,244,248,16,244,252,16,5,14
,247,17,4,247,142,251,17,247,142,247,17,139,247,142,251,142,247,17,251,142,251,17,5,14,14,248,137,247,78,1,247,205,239,3,249,6,248
,187,21,111,162,117,166,166,162,162,166,30,225,7,166,116,162,112,112,116,117,111,30,14,248,137,247,78,1,247,151,247,46,3,248,154
,249,17,21,139,130,141,129,144,131,8,200,45,5,149,130,152,133,152,139,166,139,162,162,139,166,139,149,136,148,134,147,8,79,234,5
,132,150,123,142,126,139,112,139,116,117,139,111,8,14,248,232,247,66,1,247,111,239,227,239,3,248,74,249,26,21,111,161,117,167,167
,161,162,166,30,213,7,166,116,162,112,112,116,117,111,30,247,80,65,21,112,161,116,167,167,161,162,166,30,213,7,166,116,162,112,112
,116,116,112,30,14,146,239,3,153,68,21,112,161,116,167,167,161,162,166,30,249,94,7,166,116,162,112,112,116,116,112,30,14,249,103
,20,139,21,121,156,248,173,147,247,49,159,188,142,6,251,76,140,7,30,10,3,150,37,255,12,9,155,12,10,239,10,239,167,157,150,156,145
,145,150,162,239,12,12,239,11,239,167,157,147,143,155,173,145,168,247,3,12,13,30,10,6,255,12,18,28,0,70,19,0,21,2,0,1,0,28,0,50,
0,79,0,124,0,195,0,226,0,241,1,2,1,29,1,50,1,80,1,98,1,129,1,180,1,194,1,221,1,242,2,7,2,28,2,42,2,68,112,162,116,166,30,185,6,166
,162,162,166,31,185,7,166,116,162,112,30,93,6,112,116,116,112,31,11,111,161,117,167,167,161,162,166,30,248,27,7,166,116,162,112,
112,116,117,111,30,11,111,161,117,167,30,247,0,6,167,161,162,166,31,219,7,166,116,162,112,30,251,0,6,112,116,117,111,31,11,140,251
,63,226,251,88,247,51,139,247,53,139,224,247,88,140,247,63,8,142,7,247,70,51,247,78,251,51,30,99,139,90,122,109,114,59,74,91,251
,14,139,251,26,8,11,111,162,117,166,30,152,139,152,144,148,149,8,247,56,247,66,247,57,251,66,5,149,129,152,134,152,139,166,139,162
,162,139,166,139,149,136,149,133,147,8,251,97,247,200,5,131,150,123,142,126,139,126,139,126,135,129,139,8,251,97,251,200,5,134,131
,136,129,139,129,8,11,214,229,152,229,30,163,139,162,138,161,138,8,99,7,107,87,87,75,64,139,8,131,6,105,141,91,164,139,182,8,11,
247,22,252,23,6,112,162,116,166,166,162,161,167,30,11,248,73,7,167,117,161,111,30,251,72,6,111,117,116,112,31,11,111,162,117,166
,30,184,6,166,162,161,167,31,185,7,167,116,161,112,30,94,6,112,116,117,111,31,11,248,53,7,166,117,162,111,30,251,38,6,111,117,116
,112,112,162,116,166,31,11,251,50,228,251,13,247,53,247,52,229,247,15,247,48,247,50,47,247,15,251,50,251,55,52,251,15,251,50,30,
11,238,187,221,241,240,188,58,39,40,92,59,36,36,92,219,238,30,11,112,162,116,166,30,163,139,160,157,143,161,145,164,153,148,155,
139,163,139,168,121,157,125,172,114,175,115,181,135,8,11,144,139,143,138,144,139,206,139,198,187,152,206,140,142,140,143,139,142
,139,166,115,162,113,139,116,139,117,121,135,117,134,113,126,130,122,139,8,115,139,109,158,121,153,106,164,102,163,98,143,8,11,134
,139,135,140,134,139,72,139,79,91,125,72,8,11,112,161,116,167,30,185,6,167,161,162,166,31,184,7,166,117,162,111,30,93,6,111,117,
116,112,31,11,111,161,117,167,167,161,162,166,30,196,7,166,116,162,112,112,116,117,111,30,11,113,162,116,166,166,162,162,165,30,
197,7,166,116,162,112,112,116,116,112,30,11,112,161,117,167,166,162,162,165,30,197,7,166,115,162,113,112,116,117,111,30,11,155,201
,181,185,209,139,226,139,167,99,154,71,8,11,112,162,116,166,30,248,13,6,166,162,161,167,167,117,161,111,31,252,13,6,111,117,116,
112,31,11,0,0,0,0,1,0,0,0,14,0,0,0,24,0,0,0,0,0,2,0,1,0,1,0,144,0,1,0,4,0,0,0,2,0,0,0,1,0,0,0,10,0,64,0,142,0,2,68,70,76,84,0,14
,108,97,116,110,0,34,0,4,0,0,0,0,255,255,0,5,0,0,0,1,0,2,0,3,0,4,0,4,0,0,0,0,255,255,0,5,0,0,0,1,0,2,0,3,0,4,0,5,97,97,108,116,0
,32,115,115,48,49,0,38,115,115,48,50,0,44,115,115,48,51,0,50,115,115,48,52,0,56,0,0,0,1,0,0,0,24,0,1,0,1,0,22,0,1,0,2,0,20,0,1,0
,3,0,18,0,1,0,4,0,0,1,0,0,0,1,1,0,0,1,2,0,0,1,3,0,5,0,12,0,20,0,28,0,36,0,44,0,3,0,0,0,1,0,40,0,1,0,0,0,1,0,82,0,1,0,0,0,1,0,86,
0,1,0,0,0,1,0,90,0,1,0,0,0,1,0,94,0,1,0,38,0,4,0,14,0,20,0,26,0,32,0,2,0,3,0,143,0,2,0,8,0,141,0,2,0,65,0,142,0,2,0,93,0,144,0,1
,0,4,0,3,0,8,0,65,0,93,0,1,0,6,0,77,0,1,0,1,0,65,0,1,0,6,0,140,0,1,0,1,0,3,0,1,0,6,0,133,0,1,0,1,0,8,0,1,0,6,0,51,0,1,0,1,0,93,0
,1,0,0,0,10,0,44,0,46,0,2,68,70,76,84,0,14,108,97,116,110,0,24,0,4,0,0,0,0,255,255,0,0,0,4,0,0,0,0,255,255,0,0,0,0,0,0,0,0,0,1,0
,0,0,0,204,61,162,207,0,0,0,0,204,138,51,83,0,0,0,0,211,135,133,166,2,211,0,0,2,211,0,0,2,211,1,34,2,211,0,161,2,211,0,113,2,211
,0,113,2,211,0,113,2,211,0,113,2,211,1,20,2,211,1,0,2,211,0,181,2,211,0,113,2,211,0,113,2,211,0,159,2,211,0,113,2,211,0,241,2,211
,0,173,2,211,0,113,2,211,0,144,2,211,0,130,2,211,0,113,2,211,0,113,2,211,0,139,2,211,0,113,2,211,0,113,2,211,0,113,2,211,0,113,2
,211,1,3,2,211,0,156,2,211,0,113,2,211,0,113,2,211,0,113,2,211,0,141,2,211,0,113,2,211,0,119,2,211,0,113,2,211,0,161,2,211,0,164
,2,211,0,159,2,211,0,210,2,211,0,121,2,211,0,141,2,211,0,170,2,211,0,130,2,211,0,127,2,211,0,141,2,211,0,113,2,211,0,127,2,211,0
,116,2,211,0,141,2,211,0,115,2,211,0,153,2,211,0,147,2,211,0,113,2,211,0,127,2,211,0,112,2,211,0,113,2,211,0,133,2,211,0,136,2,211
,0,141,2,211,0,210,2,211,0,173,2,211,0,130,2,211,0,113,2,211,0,113,2,211,1,3,2,211,0,127,2,211,0,124,2,211,0,167,2,211,0,113,2,211
,0,127,2,211,0,147,2,211,0,116,2,211,0,156,2,211,0,181,2,211,0,153,2,211,0,173,2,211,0,253,2,211,0,113,2,211,0,127,2,211,0,113,2
,211,0,124,2,211,0,113,2,211,0,204,2,211,0,153,2,211,0,127,2,211,0,127,2,211,0,116,2,211,0,115,2,211,0,147,2,211,0,113,2,211,0,147
,2,211,0,113,2,211,1,57,2,211,0,113,2,211,0,127,2,211,2,68,2,211,0,226,2,211,0,242,2,211,1,198,0,0,249,67,2,11,255,56,2,211,0,254
,2,114,2,90,1,84,0,226,255,146,0,226,0,174,0,226,1,16,0,254,255,184,0,226,0,140,0,254,1,106,255,94,255,82,1,50,0,113,0,226,0,226
,2,68,0,127,1,26,0,232,1,26,0,248,0,226,1,62,1,56,0,226,1,56,0,228,1,84,1,84,1,24,0,0,0,0,2,114,2,6,1,182,0,14]);Module["FS_createDataFile
"]("/","OCRB.otf",fileData1,true,true)}if(Module["calledRun"]){runWithFS()}else{if(!Module[
x22;preRun"])Module["preRun"]=[];Module["preRun"].push(runWithFS)}});loadPackage({"files":[]})}))();
var Module;if(!Module)Module=(typeof Module!=="undefined"?Module:null)||{};var moduleOverrides={};for(var key in Module
){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;
var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"
;]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER
=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"
;]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("The provided Module['ENVIRONMENT'] value
is not valid. It must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER
=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require===
x22;function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&
;&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["
;print"]=console.log;if(!Module["printErr"])Module["printErr"]=console.warn;var nodeFS;var nodePath;Module
["read"]=function read(filename,binary){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("
path");filename=nodePath["normalize"](filename);var ret=nodeFS["readFileSync"](filename);if(!ret&
x26;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){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(
ret.buffer);return ret};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process
["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function read(){throw"no read() available (jsc?)"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}}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};Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response)}else{onerror()}};xhr.onerror=onerror;xhr.send(null)};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.warn(x)}}else{var TRY_USE_DUMP=false;if(!Module["print"])Module["print"]=TRY_USE_DUMP&&typeof dump!=="undefined"?(function(x){dump(x)}):(function(x){})}if(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&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"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var Runtime={setTempRet0:(function(value){tempRet0=value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),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}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)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),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}),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[sig]){Runtime.funcWrappers[sig]={}}var sigCache=Runtime.funcWrappers[sig];if(!sigCache[func]){sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func,arguments)}}return sigCache[func]}),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+15&-16;return ret}),staticAlloc:(function(size){var ret=STATICTOP;STATICTOP=STATICTOP+size|0;STATICTOP=STATICTOP+15&-16;return ret}),dynamicAlloc:(function(size){var ret=DYNAMICTOP;DYNAMICTOP=DYNAMICTOP+size|0;DYNAMICTOP=DYNAMICTOP+15&-16;if(DYNAMICTOP>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){DYNAMICTOP=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module["Runtime"]=Runtime;var ABORT=false;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];if(!func){try{func=eval("_"+ident)}catch(e){}}assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)");return func}var cwrap,ccall;((function(){var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"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){ret=Runtime.stackAlloc((str.length<<2)+1);writeStringToMemory(str,ret)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;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){if(opts&&opts.async){EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(stack)}));return}Runtime.stackRestore(stack)}return ret};var sourceRegex=/^function\s*[a-zA-Z$_0-9]*\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/;function parseJSFunc(jsfunc){var parsed=jsfunc.toString().match(sourceRegex).slice(1);return{arguments:parsed[0],body:parsed[1],returnValue:parsed[2]}}var JSsource=null;function ensureJSsource(){if(!JSsource){JSsource={};for(var fun in JSfuncs){if(JSfuncs.hasOwnProperty(fun)){JSsource[fun]=parseJSFunc(JSfuncs[fun])}}}}cwrap=function cwrap(ident,returnType,argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident);var numericArgs=argTypes.every((function(type){return type==="number"}));var numericRet=returnType!=="string";if(numericRet&&numericArgs){return cfunc}var argNames=argTypes.map((function(x,i){return"$"+i}));var funcstr="(function("+argNames.join(",")+") {";var nargs=argTypes.length;if(!numericArgs){ensureJSsource();funcstr+="var stack = "+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"];funcstr+="var "+convertCode.arguments+" = "+arg+";";funcstr+=convertCode.body+";";funcstr+=arg+"=("+convertCode.returnValue+");"}}var cfuncname=parseJSFunc((function(){return cfunc})).returnValue;funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");";if(!numericRet){var strgfy=parseJSFunc((function(){return Pointer_stringify})).returnValue;funcstr+="ret = "+strgfy+"(ret);"}if(!numericArgs){ensureJSsource();funcstr+=JSsource["stackRestore"].body.replace("()","(stack)")+";"}funcstr+="return ret})";return eval(funcstr)}}))();Module["ccall"]=ccall;Module["cwrap"]=cwrap;function setValue(ptr,value,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";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?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}Module["setValue"]=setValue;function getValue(ptr,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";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;var ALLOC_STACK=1;var ALLOC_STATIC=2;var ALLOC_DYNAMIC=3;var ALLOC_NONE=4;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;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[typeof _malloc==="function"?_malloc:Runtime.staticAlloc,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";setValue(ret+i,curr,type);if(previousType!==type){typeSize=Runtime.getNativeTypeSize(type);previousType=type}i+=typeSize}return ret}Module["allocate"]=allocate;function getMemory(size){if(!staticSealed)return Runtime.staticAlloc(size);if(typeof _sbrk!=="undefined"&&!_sbrk.called||!runtimeInitialized)return Runtime.dynamicAlloc(size);return _malloc(size)}Module["getMemory"]=getMemory;function Pointer_stringify(ptr,length){if(length===0||!ptr)return"";var hasUtf=0;var t;var i=0;while(1){t=HEAPU8[ptr+i>>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module["UTF8ToString"](ptr)}Module["Pointer_stringify"]=Pointer_stringify;function AsciiToString(ptr){var str="";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module["AsciiToString"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module["stringToAscii"]=stringToAscii;function UTF8ArrayToString(u8Array,idx){var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}Module["UTF8ArrayToString"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module["UTF8ToString"]=UTF8ToString;function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}Module["stringToUTF8Array"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}Module["stringToUTF8"]=stringToUTF8;function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}Module["lengthBytesUTF8"]=lengthBytesUTF8;function demangle(func){var hasLibcxxabi=!!Module["___cxa_demangle"];if(hasLibcxxabi){try{var buf=_malloc(func.length);writeStringToMemory(func.substr(1),buf);var status=_malloc(4);var ret=Module["___cxa_demangle"](buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){return func}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}}Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling");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 jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){return demangleAll(jsStackTrace())}Module["stackTrace"]=stackTrace;var PAGE_SIZE=4096;function alignMemoryPage(x){if(x%4096>0){x+=4096-x%4096}return x}var HEAP;var buffer;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE=0,STATICTOP=0,staticSealed=false;var STACK_BASE=0,STACKTOP=0,STACK_MAX=0;var DYNAMIC_BASE=0,DYNAMICTOP=0;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which adjusts the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||16777216;var totalMemory=64*1024;while(totalMemory<TOTAL_MEMORY||totalMemory<2*TOTAL_STACK){if(totalMemory<16*1024*1024){totalMemory*=2}else{totalMemory+=16*1024*1024}}if(totalMemory!==TOTAL_MEMORY){TOTAL_MEMORY=totalMemory}if(Module["buffer"]){buffer=Module["buffer"]}else{buffer=new ArrayBuffer(TOTAL_MEMORY)}updateGlobalBufferViews();HEAP32[0]=255;if(HEAPU8[0]!==255||HEAPU8[3]!==0)throw"Typed arrays 2 must be run on a little-endian system";Module["HEAP"]=HEAP;Module["buffer"]=buffer;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__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}Module["addOnPreRun"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}Module["intArrayToString"]=intArrayToString;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++>>0]=array[i]}}Module["writeArrayToMemory"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}Module["writeAsciiToMemory"]=writeAsciiToMemory;if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];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;var Math_clz32=Math.clz32;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}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()}}}Module["removeRunDependency"]=removeRunDependency;Module["preloadedImages"]={};Module["preloadedAudios"]={};var ASM_CONSTS=[];STATIC_BASE=8;STATICTOP=STATIC_BASE+75136;__ATINIT__.push();allocate([90,0,0,0,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,1,0,0,124,2,0,0,68,11,0,0,80,15,0,0,116,15,0,0,188,15,0,0,100,16,0,0,160,16,0,0,220,16,0,0,216,19,0,0,24,20,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,1,0,0,0,3,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,5,0,0,0,4,0,0,0,6,0,0,0,5,0,0,0,7,0,0,0,6,0,0,0,8,0,0,0,7,0,0,0,9,0,0,0,8,0,0,0,2,0,0,0,2,0,0,0,2,0,0,0,89,111,63,0,0,0,45,0,167,144,26,0,71,9,14,0,1,32,7,0,139,147,3,0,56,202,1,0,42,229,0,0,151,114,0,0,76,57,0,0,166,28,0,0,83,14,0,0,41,7,0,0,149,3,0,0,202,1,0,0,229,0,0,0,115,0,0,0,57,0,0,0,29,0,0,0,14,0,0,0,7,0,0,0,4,0,0,0,2,0,0,0,1,0,0,0,1,5,0,0,84,0,0,0,249,40,0,0,0,0,1,0,0,0,2,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,56,3,0,0,48,1,0,0,160,0,0,0,10,0,0,0,2,0,0,0,2,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,11,0,0,0,1,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,12,0,0,0,2,0,0,0,3,0,0,0,213,43,0,0,2,41,0,0,11,41,0,0,164,1,0,0,49,41,0,0,184,1,0,0,65,41,0,0,188,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,0,0,0,3,0,0,0,2,0,0,0,4,0,0,0,88,240,188,5,228,2,0,0,241,59,35,40,196,135,0,0,234,161,68,163,225,1,0,0,88,240,188,5,228,2,0,0,241,59,35,40,196,135,0,0,235,161,68,163,225,1,0,0,212,234,229,17,80,3,0,0,59,202,48,90,99,144,0,0,2,38,164,19,126,0,0,0,252,255,251,255,8,0,0,0,184,72,158,156,162,190,0,0,18,1,2,112,8,0,0,0,252,255,251,255,8,0,0,0,131,4,90,10,57,124,1,0,18,1,2,112,8,0,0,0,0,0,0,0,0,0,0,64,0,0,0,64,0,0,0,64,0,0,0,0,1,0,0,0,64,0,0,0,1,0,0,0,1,0,0,0,68,0,0,0,0,0,0,0,0,0,0,0,9,0,3,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,1,5,0,0,44,0,0,0,209,43,0,0,0,0,1,0,0,0,2,0,0,0,0,0,4,0,0,0,4,0,0,0,5,0,0,0,56,3,0,0,48,0,0,0,172,0,0,0,13,0,0,0,5,0,0,0,5,0,0,0,6,0,0,0,6,0,0,0,7,0,0,0,11,0,0,0,1,0,0,0,3,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,6,0,0,0,7,0,0,0,213,43,0,0,230,43,0,0,234,43,0,0,28,3,0,0,92,44,0,0,44,3,0,0,113,44,0,0,48,3,0,0,162,44,0,0,56,3,0,0,250,43,0,0,140,3,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,8,0,0,0,5,0,0,0,9,0,0,0,10,0,0,0,20,0,0,0,9,0,0,0,8,0,0,0,11,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,10,0,0,0,9,0,0,0,13,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,15,0,0,0,5,0,0,0,4,0,0,0,0,16,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,1,16,0,0,4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,17,0,0,8,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,2,16,0,0,12,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,3,16,0,0,16,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,4,16,0,0,20,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,1,17,0,0,24,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,17,0,0,28,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,3,17,0,0,32,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,4,17,0,0,36,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,17,0,0,40,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,6,17,0,0,44,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,7,17,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,13,16,0,0,76,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,5,16,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,8,17,0,0,96,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,15,16,0,0,100,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,16,16,0,0,104,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,17,16,0,0,108,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,18,16,0,0,0,0,0,0,0,0,0,0,13,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,20,17,0,0,120,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,21,17,0,0,124,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,30,17,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,31,17,0,0,140,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,32,17,0,0,144,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,33,17,0,0,148,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,34,17,0,0,152,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,35,17,0,0,156,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,36,17,0,0,160,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,37,17,0,0,164,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,38,17,0,0,168,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,6,32,0,0,4,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,6,0,0,0,7,32,0,0,60,0,0,0,4,0,0,0,0,0,0,0,10,0,0,0,1,0,0,0,6,0,0,0,8,32,0,0,100,0,0,0,4,0,0,0,0,0,0,0,14,0,0,0,2,0,0,0,6,0,0,0,9,32,0,0,156,0,0,0,4,0,0,0,0,0,0,0,10,0,0,0,3,0,0,0,3,0,0,0,9,33,0,0,196,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,33,0,0,200,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,33,0,0,204,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,32,0,0,208,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,11,32,0,0,212,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,12,33,0,0,220,0,0,0,4,0,0,0,0,0,0,0,13,0,0,0,216,0,0,0,6,0,0,0,13,33,0,0,16,1,0,0,4,0,0,0,0,0,0,0,13,0,0,0,217,0,0,0,5,0,0,0,14,33,0,0,68,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,15,33,0,0,72,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,16,33,0,0,76,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,17,33,0,0,80,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,18,33,0,0,84,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,19,33,0,0,88,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,19,32,0,0,92,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,20,32,0,0,96,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,21,32,0,0,100,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,10,0,0,0,100,0,0,0,232,3,0,0,16,39,0,0,160,134,1,0,64,66,15,0,128,150,152,0,0,225,245,5,0,202,154,59,24,0,0,0,16,0,0,0,0,0,0,0,17,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,19,0,0,0,20,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,21,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,23,0,0,0,24,0,0,0,56,0,0,0,25,0,0,0,0,0,0,0,26,0,0,0,27,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,28,0,0,0,29,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,30,0,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,32,0,0,0,33,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,34,0,0,0,35,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,36,0,0,0,37,0,0,0,24,0,0,0,16,0,0,0,0,0,0,0,38,0,0,0,39,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,40,0,0,0,41,0,0,0,44,0,0,0,42,0,0,0,0,0,0,0,43,0,0,0,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,45,0,0,0,46,0,0,0,44,0,0,0,47,0,0,0,0,0,0,0,48,0,0,0,49,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,50,0,0,0,51,0,0,0,40,0,0,0,52,0,0,0,10,0,0,0,53,0,0,0,54,0,0,0,7,0,0,0,6,0,0,0,55,0,0,0,7,0,0,0,8,0,0,0,14,0,0,0,56,0,0,0,57,0,0,0,0,0,0,0,20,0,0,0,76,44,0,0,0,0,1,0,0,0,2,0,104,11,0,0,0,0,0,0,0,0,0,0,58,0,0,0,8,0,0,0,15,0,0,0,16,0,0,0,11,0,0,0,58,0,0,0,17,0,0,0,9,0,0,0,9,0,0,0,59,0,0,0,10,0,0,0,60,0,0,0,61,0,0,0,62,0,0,0,63,0,0,0,64,0,0,0,12,0,0,0,65,0,0,0,13,0,0,0,66,0,0,0,67,0,0,0,68,0,0,0,69,0,0,0,10,0,0,0,70,0,0,0,1,0,0,0,11,0,0,0,1,0,0,0,14,0,0,0,12,0,0,0,15,0,0,0,13,0,0,0,71,0,0,0,14,0,0,0,72,0,0,0,15,0,0,0,73,0,0,0,16,0,0,0,16,0,0,0,17,0,0,0,18,0,0,0,112,9,0,0,164,9,0,0,216,9,0,0,12,10,0,0,64,10,0,0,116,10,0,0,168,10,0,0,220,10,0,0,16,11,0,0,0,0,0,0,2,0,0,0,255,255,255,255,99,105,110,117,0,0,0,0,255,255,255,255,99,105,110,117,1,0,0,0,0,0,0,0,110,109,114,97,3,0,0,0,0,0,0,0,98,109,121,115,3,0,0,0,10,0,0,0,99,105,110,117,3,0,0,0,1,0,0,0,99,105,110,117,3,0,0,0,2,0,0,0,115,105,106,115,3,0,0,0,3,0,0,0,32,32,98,103,3,0,0,0,4,0,0,0,53,103,105,98,3,0,0,0,5,0,0,0,115,110,97,119,3,0,0,0,6,0,0,0,97,104,111,106,81,44,0,0,228,12,0,0,92,44,0,0,240,12,0,0,113,44,0,0,244,12,0,0,124,44,0,0,252,12,0,0,162,44,0,0,4,13,0,0,0,0,0,0,0,0,0,0,17,0,0,0,74,0,0,0,19,0,0,0,15,0,0,0,11,0,0,0,75,0,0,0,18,0,0,0,19,0,0,0,76,0,0,0,0,0,0,0,0,0,0,0,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,77,0,0,0,78,0,0,0,1,0,0,0,72,13,0,0,64,3,0,0,79,0,0,0,1,0,0,0,0,0,0,0,80,0,0,0,20,0,0,0,32,0,0,0,127,0,0,0,160,0,0,0,255,0,0,0,0,1,0,0,127,1,0,0,128,1,0,0,79,2,0,0,80,2,0,0,175,2,0,0,176,2,0,0,255,2,0,0,0,3,0,0,111,3,0,0,112,3,0,0,255,3,0,0,0,4,0,0,255,4,0,0,0,5,0,0,47,5,0,0,0,29,0,0,127,29,0,0,128,29,0,0,191,29,0,0,192,29,0,0,255,29,0,0,0,30,0,0,255,30,0,0,0,31,0,0,255,31,0,0,0,32,0,0,111,32,0,0,112,32,0,0,159,32,0,0,160,32,0,0,207,32,0,0,80,33,0,0,143,33,0,0,96,36,0,0,255,36,0,0,96,44,0,0,127,44,0,0,224,45,0,0,255,45,0,0,64,166,0,0,159,166,0,0,32,167,0,0,255,167,0,0,0,251,0,0,6,251,0,0,0,212,1,0,255,215,1,0,0,0,0,0,0,0,0,0,99,105,110,117,110,109,114,97,66,79,68,65,49,116,97,108,0,0,0,0,2,0,0,0,84,14,0,0,64,3,0,0,81,0,0,0,2,0,0,0,0,0,0,0,82,0,0,0,21,0,0,0,128,46,0,0,255,46,0,0,0,47,0,0,223,47,0,0,0,48,0,0,63,48,0,0,64,48,0,0,159,48,0,0,160,48,0,0,255,48,0,0,0,49,0,0,47,49,0,0,48,49,0,0,143,49,0,0,160,49,0,0,191,49,0,0,192,49,0,0,239,49,0,0,240,49,0,0,255,49,0,0,0,50,0,0,255,50,0,0,0,51,0,0,255,51,0,0,0,52,0,0,191,77,0,0,192,77,0,0,255,77,0,0,0,78,0,0,255,159,0,0,0,249,0,0,255,250,0,0,48,254,0,0,79,254,0,0,0,255,0,0,239,255,0,0,0,0,2,0,223,166,2,0,0,248,2,0,31,250,2,0,0,0,0,0,0,0,0,0,3,0,0,0,28,15,0,0,64,3,0,0,83,0,0,0,3,0,0,0,0,0,0,0,84,0,0,0,22,0,0,0,0,9,0,0,255,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,8,13,0,0,40,13,0,0,52,14,0,0,252,14,0,0,0,0,0,0,4,0,0,0,204,0,0,0,249,44,0,0,0,0,1,0,0,0,2,0,44,15,0,0,16,0,0,0,17,0,0,0,0,0,0,0,0,0,0,0,176,0,0,0,4,45,0,0,0,0,1,0,0,0,2,0,152,15,0,0,17,0,0,0,18,0,0,0,0,0,0,0,18,0,0,0,19,0,0,0,20,0,0,0,108,116,117,111,85,0,0,0,1,0,0,0,2,0,0,0,86,0,0,0,19,0,0,0,2,0,0,0,72,0,0,0,13,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,12,0,0,0,13,0,0,0,3,0,0,0,23,0,0,0,164,15,0,0,2,0,0,0,72,0,0,0,21,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,21,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,12,0,0,0,13,0,0,0,3,0,0,0,23,0,0,0,164,15,0,0,108,116,117,111,87,0,0,0,4,0,0,0,0,0,0,0,88,0,0,0,20,0,0,0,89,0,0,0,90,0,0,0,24,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,72,0,0,0,29,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,15,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,2,0,0,0,72,0,0,0,36,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,17,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,2,0,0,0,72,0,0,0,47,45,0,0,0,0,1,0,0,0,2,0,0,0,0,0,22,0,0,0,0,0,0,0,0,0,0,0,108,116,117,111,18,0,0,0,16,0,0,0,5,0,0,0,25,0,0,0,52,16,0,0,26,0,0,0,21,0,0,0,19,0,0,0,22,0,0,0,1,0,0,0,23,0,0,0,24,0,0,0,25,0,0,0,23,0,0,0,91,0,0,0,21,0,0,0,27,0,0,0,20,0,0,0,4,0,0,0,2,0,0,0,22,0,0,0,23,0,0,0,1,0,0,0,26,0,0,0,92,0,0,0,3,0,0,0,28,0,0,0,24,0,0,0,29,0,0,0,27,0,0,0,1,0,0,0,28,0,0,0,30,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,5,0,0,0,4,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,4,0,0,0,2,0,0,0,2,0,0,0,6,0,0,0,4,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,2,0,0,0,6,0,0,0,2,0,0,0,6,0,0,0,2,0,0,0,255,255,255,255,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,0,21,0,0,0,29,0,0,0,25,0,0,0,204,45,0,0,213,45,0,0,223,45,0,0,232,45,0,0,234,45,0,0,249,45,0,0,8,46,0,0,29,46,0,0,31,46,0,0,34,46,0,0,37,46,0,0,47,46,0,0,57,46,0,0,70,46,0,0,81,46,0,0,91,46,0,0,106,46,0,0,114,46,0,0,129,46,0,0,143,46,0,0,156,46,0,0,171,46,0,0,183,46,0,0,196,46,0,0,209,46,0,0,217,46,0,0,228,46,0,0,237,46,0,0,246,46,0,0,255,46,0,0,10,47,0,0,20,47,0,0,33,47,0,0,42,47,0,0,54,47,0,0,57,47,0,0,61,47,0,0,65,47,0,0,69,47,0,0,71,47,0,0,85,47,0,0,97,47,0,0,99,47,0,0,106,47,0,0,110,47,0,0,120,47,0,0,137,47,0,0,153,47,0,0,187,45,0,0,168,47,0,0,182,47,0,0,197,47,0,0,213,47,0,0,229,47,0,0,244,47,0,0,250,47,0,0,0,48,0,0,10,48,0,0,28,48,0,0,47,48,0,0,50,48,0,0,58,48,0,0,66,48,0,0,68,48,0,0,71,48,0,0,75,48,0,0,79,48,0,0,82,48,0,0,86,48,0,0,90,48,0,0,93,48,0,0,96,48,0,0,103,48,0,0,116,48,0,0,32,0,0,0,26,0,0,0,30,0,0,0,93,0,0,0,94,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,0,27,0,0,0,30,0,0,0,93,0,0,0,94,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,0,0,0,28,0,0,0,31,0,0,0,95,0,0,0,96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,29,0,0,0,32,0,0,0,97,0,0,0,98,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,19,0,0,80,19,0,0,120,19,0,0,160,19,0,0,0,0,0,0,20,0,0,0,129,48,0,0,0,0,2,0,0,0,2,0,252,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,0,0,40,17,0,0,92,17,0,0,124,17,0,0,6,0,0,0,200,19,0,0,244,17,0,0,0,0,0,0,20,0,0,0,135,48,0,0,0,0,1,0,0,0,2,0,60,20,0,0,0,0,0,0,0,0,0,0,99,0,0,0,30,0,0,0,2,0,0,0,100,0,0,0,101,0,0,0,31,0,0,0,32,0,0,0,120,25,0,0,214,37,0,0,0,0,0,0,6,0,0,0,12,0,0,0,21,0,0,0,28,0,0,0,35,0,0,0,38,0,0,0,53,0,0,0,59,0,0,0,72,0,0,0,148,3,0,0,169,3,0,0,21,34,0,0,173,0,0,0,201,2,0,0,188,3,0,0,25,34,0,0,160,0,0,0,26,2,0,0,27,2,0,0,91,21,1,0,60,20,0,0,0,0,0,0,0,0,0,0,192,20,0,0,5,0,0,0,0,0,0,0,0,0,0,0,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,0,0,0,32,0,0,0,120,33,1,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,20,0,0,4,0,16,0,17,4,0,0,12,2,4,0,12,2,6,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,0,0,0,0,4,0,20,0,16,4,0,0,16,4,4,0,16,4,8,0,16,4,12,0,12,2,16,0,12,2,18,0,0,0,0,0,4,0,20,0,17,4,0,0,12,2,4,0,12,2,6,0,16,4,8,0,12,2,12,0,12,2,14,0,16,4,16,0,0,0,0,0,4,0,4,0,8,1,16,0,8,1,17,0,8,1,18,0,8,1,19,0,0,0,0,0,0,0,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,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,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,94,0,95,0,96,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,111,0,112,0,113,0,114,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,123,0,124,0,125,0,126,0,127,0,128,0,129,0,130,0,131,0,132,0,133,0,134,0,135,0,136,0,137,0,138,0,139,0,140,0,141,0,142,0,143,0,144,0,145,0,146,0,147,0,148,0,149,0,150,0,151,0,152,0,153,0,154,0,155,0,156,0,157,0,158,0,159,0,160,0,161,0,162,0,163,0,164,0,165,0,166,0,167,0,168,0,169,0,170,0,171,0,172,0,173,0,174,0,175,0,176,0,177,0,178,0,179,0,180,0,181,0,182,0,183,0,184,0,185,0,186,0,187,0,188,0,189,0,190,0,191,0,192,0,193,0,194,0,195,0,196,0,197,0,198,0,199,0,200,0,201,0,202,0,203,0,204,0,205,0,206,0,207,0,208,0,209,0,210,0,211,0,212,0,213,0,214,0,215,0,216,0,217,0,218,0,219,0,220,0,221,0,222,0,223,0,224,0,225,0,226,0,227,0,228,0,0,0,1,0,229,0,230,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,253,0,254,0,255,0,0,1,1,1,2,1,3,1,4,1,5,1,6,1,7,1,8,1,9,1,10,1,109,0,110,0,11,1,12,1,13,1,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,1,48,1,49,1,50,1,51,1,52,1,53,1,54,1,55,1,56,1,57,1,58,1,59,1,60,1,61,1,62,1,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,0,0,1,0,231,0,232,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,253,0,254,0,255,0,0,1,1,1,2,1,3,1,4,1,5,1,6,1,7,1,8,1,9,1,10,1,109,0,110,0,11,1,12,1,13,1,14,1,16,1,44,1,45,1,46,1,49,1,58,1,59,1,158,0,155,0,163,0,64,1,65,1,66,1,67,1,68,1,69,1,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,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,1,0,2,0,3,0,4,0,5,0,6,0,7,0,8,0,9,0,10,0,11,0,12,0,13,0,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,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,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,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,94,0,95,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,0,0,111,0,112,0,113,0,114,0,0,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,0,0,123,0,0,0,124,0,125,0,126,0,127,0,128,0,129,0,130,0,131,0,0,0,132,0,133,0,0,0,134,0,135,0,136,0,137,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,138,0,0,0,139,0,0,0,0,0,0,0,0,0,140,0,141,0,142,0,143,0,0,0,0,0,0,0,0,0,0,0,144,0,0,0,0,0,0,0,145,0,0,0,0,0,146,0,147,0,148,0,149,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,229,0,230,0,0,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,0,0,253,0,254,0,255,0,0,1,1,1,0,0,0,0,0,0,2,1,0,0,0,0,3,1,4,1,5,1,6,1,0,0,0,0,7,1,8,1,9,1,0,0,10,1,109,0,110,0,11,1,12,1,13,1,0,0,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,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,48,1,49,1,50,1,0,0,0,0,51,1,52,1,53,1,54,1,55,1,0,0,56,1,0,0,0,0,56,1,0,0,0,0,58,1,59,1,0,0,0,0,60,1,61,1,62,1,0,0,0,0,0,0,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,0,0,0,0,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,4,0,8,0,17,4,4,0,17,4,8,0,0,0,0,0,4,0,54,0,16,4,0,0,16,4,4,0,17,4,8,0,17,4,12,0,12,2,16,0,12,2,18,0,17,4,20,0,17,4,24,0,17,4,28,0,17,4,32,0,13,2,36,0,13,2,38,0,13,2,40,0,13,2,42,0,12,2,44,0,12,2,46,0,13,2,48,0,13,2,50,0,13,2,52,0,0,0,0,0,4,0,36,0,16,4,0,0,13,2,4,0,13,2,6,0,13,2,8,0,12,2,10,0,13,2,12,0,13,2,14,0,13,2,16,0,13,2,18,0,13,2,20,0,13,2,22,0,13,2,24,0,13,2,26,0,13,2,28,0,13,2,30,0,13,2,32,0,12,2,34,0,0,0,0,0,4,0,6,0,17,4,0,0,12,2,4,0,0,0,0,0,4,0,26,0,12,2,6,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,12,2,16,0,12,2,18,0,12,2,20,0,12,2,22,0,12,2,24,0,12,2,26,0,12,2,28,0,12,2,30,0,0,0,0,0,4,0,78,0,12,2,0,0,13,2,2,0,12,2,4,0,12,2,6,0,13,2,8,0,13,2,10,0,13,2,12,0,13,2,14,0,13,2,16,0,13,2,18,0,13,2,20,0,13,2,22,0,13,2,24,0,13,2,26,0,13,2,28,0,13,2,30,0,8,1,32,0,8,1,33,0,8,1,34,0,8,1,35,0,8,1,36,0,8,1,37,0,8,1,38,0,8,1,39,0,8,1,40,0,8,1,41,0,16,4,44,0,16,4,48,0,16,4,52,0,16,4,56,0,8,1,60,0,8,1,61,0,8,1,62,0,8,1,63,0,12,2,64,0,12,2,66,0,12,2,68,0,13,2,70,0,13,2,72,0,13,2,74,0,12,2,76,0,12,2,78,0,0,0,0,0,4,0,8,0,16,4,80,0,16,4,84,0,0,0,0,0,4,0,10,0,13,2,88,0,13,2,90,0,12,2,92,0,12,2,94,0,12,2,96,0,0,0,0,0,4,0,32,0,16,4,0,0,16,4,4,0,13,2,8,0,13,2,10,0,16,4,12,0,16,4,16,0,16,4,20,0,16,4,24,0,16,4,28,0,0,0,0,0,4,0,6,0,12,2,0,0,12,4,4,0,12,4,8,0,0,0,0,0,12,2,0,0,12,2,2,0,12,2,4,0,12,2,6,0,12,2,8,0,12,4,12,0,0,0,0,0,4,0,54,0,16,4,0,0,16,4,4,0,12,2,8,0,12,2,10,0,12,2,12,0,12,2,14,0,12,2,16,0,24,16,20,0,24,8,36,0,24,6,44,0,9,1,50,0,9,1,51,0,8,1,52,0,8,1,53,0,0,0,0,0,4,0,5,0,8,1,0,0,8,1,1,0,9,1,2,0,9,1,3,0,8,1,4,0,0,0,0,0,4,0,8,0,8,1,0,0,8,1,1,0,9,1,2,0,9,1,3,0,8,1,4,0,9,1,5,0,9,1,6,0,8,1,7,0,0,0,0,0,4,0,8,0,12,2,4,0,12,2,6,0,12,2,8,0,12,2,10,0,0,0,0,0,4,0,16,0,16,4,0,0,16,4,4,0,16,4,8,0,16,4,12,0,0,0,0,0,16,4,8,0,17,0,0,0,16,4,0,0,16,4,12,0,0,0,0,0,9,1,0,0,9,1,1,0,8,1,2,0,9,1,3,0,9,1,4,0,9,1,5,0,9,1,6,0,9,1,7,0,9,1,8,0,9,1,9,0,9,1,10,0,9,1,11,0,0,0,0,0,12,2,40,0,12,2,42,0,8,1,44,0,8,1,45,0,8,1,46,0,9,1,47,0,0,0,0,0,253,0,0,0,6,0,5,1,11,1,18,1,27,1,38,1,45,1,53,1,246,2,74,1,84,1,95,1,104,1,109,1,115,1,122,1,129,1,135,1,140,1,144,1,148,1,154,1,159,1,164,1,168,1,174,1,180,1,185,1,191,1,201,1,206,1,212,1,220,1,229,1,232,1,234,1,236,1,238,1,240,1,242,1,244,1,246,1,248,1,250,1,252,1,254,1,0,2,2,2,4,2,6,2,8,2,10,2,12,2,14,2,16,2,18,2,20,2,22,2,24,2,26,2,28,2,40,2,50,2,63,2,75,2,211,3,96,2,98,2,100,2,102,2,104,2,106,2,108,2,110,2,112,2,114,2,116,2,118,2,120,2,122,2,124,2,126,2,128,2,130,2,132,2,134,2,136,2,138,2,140,2,142,2,144,2,146,2,148,2,158,2,162,2,173,2,95,5,112,5,125,5,134,5,206,5,232,5,26,6,67,6,96,6,74,6,86,6,109,6,103,6,116,6,125,6,154,6,132,6,144,6,161,6,190,6,168,6,180,6,197,6,204,6,233,6,211,6,223,6,240,6,254,6,27,7,5,7,17,7,71,3,239,4,195,2,200,2,229,2,113,3,103,3,136,4,22,5,66,5,173,4,217,3,7,4,23,0,62,4,84,4,32,0,195,4,41,0,51,0,218,2,170,4,64,0,76,0,86,0,94,0,97,0,65,4,94,4,106,0,107,4,126,4,198,3,184,2,159,4,112,0,222,2,120,0,132,0,15,3,162,3,177,3,138,0,105,5,118,5,249,5,91,4,133,4,64,3,55,4,2,3,148,3,86,2,63,1,222,4,155,0,41,7,50,6,209,2,237,2,29,3,43,3,58,3,61,3,78,3,88,3,120,3,135,3,186,3,83,5,141,5,76,5,153,5,163,5,170,5,177,5,189,5,199,5,213,5,220,5,163,0,242,5,7,6,14,6,36,6,110,4,223,3,234,3,240,3,247,3,253,3,16,4,21,4,29,4,42,4,49,4,77,4,119,4,0,6,247,6,60,6,51,7,229,4,183,4,39,5,43,6,34,7,205,4,246,4,33,5,43,5,147,4,10,5,52,5,187,4,211,4,252,4,169,0,175,0,182,0,189,0,200,0,209,0,218,0,225,0,232,0,239,0,246,0,253,0,5,1,11,1,18,1,27,1,38,1,45,1,53,1,63,1,74,1,84,1,95,1,104,1,109,1,115,1,122,1,129,1,135,1,140,1,144,1,148,1,154,1,159,1,164,1,168,1,174,1,180,1,185,1,191,1,201,1,206,1,212,1,220,1,229,1,232,1,234,1,236,1,238,1,240,1,242,1,244,1,246,1,248,1,250,1,252,1,254,1,0,2,2,2,4,2,6,2,8,2,10,2,12,2,14,2,16,2,18,2,20,2,22,2,24,2,26,2,28,2,40,2,50,2,63,2,75,2,86,2,96,2,98,2,100,2,102,2,104,2,106,2,108,2,110,2,112,2,114,2,116,2,118,2,120,2,122,2,124,2,126,2,128,2,130,2,132,2,134,2,136,2,138,2,140,2,142,2,144,2,146,2,148,2,158,2,162,2,173,2,184,2,195,2,200,2,209,2,218,2,222,2,229,2,237,2,246,2,2,3,15,3,29,3,43,3,58,3,61,3,64,3,71,3,78,3,88,3,103,3,113,3,120,3,135,3,148,3,162,3,177,3,186,3,198,3,211,3,217,3,223,3,234,3,240,3,247,3,253,3,7,4,16,4,21,4,29,4,42,4,49,4,55,4,62,4,65,4,77,4,84,4,91,4,94,4,107,4,110,4,119,4,126,4,133,4,136,4,147,4,159,4,170,4,173,4,183,4,187,4,195,4,205,4,211,4,222,4,229,4,239,4,246,4,252,4,10,5,22,5,33,5,39,5,43,5,52,5,66,5,76,5,83,5,95,5,105,5,112,5,118,5,125,5,134,5,141,5,153,5,163,5,170,5,177,5,189,5,199,5,206,5,213,5,220,5,232,5,242,5,249,5,0,6,7,6,14,6,26,6,36,6,43,6,50,6,60,6,67,6,74,6,86,6,96,6,103,6,109,6,116,6,125,6,132,6,144,6,154,6,161,6,168,6,180,6,190,6,197,6,204,6,211,6,223,6,233,6,240,6,247,6,254,6,5,7,17,7,27,7,34,7,41,7,51,7,58,7,70,7,88,7,103,7,118,7,133,7,144,7,162,7,181,7,196,7,211,7,224,7,236,7,248,7,6,8,19,8,32,8,44,8,58,8,72,8,85,8,99,8,119,8,134,8,148,8,158,8,168,8,181,8,191,8,201,8,211,8,221,8,231,8,241,8,251,8,5,9,15,9,25,9,28,9,32,9,36,9,54,9,73,9,89,9,104,9,115,9,122,9,129,9,136,9,143,9,150,9,157,9,164,9,171,9,178,9,185,9,192,9,199,9,206,9,213,9,220,9,227,9,234,9,241,9,248,9,255,9,6,10,13,10,20,10,27,10,34,10,41,10,55,10,65,10,72,10,83,10,99,10,112,10,124,10,136,10,148,10,162,10,173,10,184,10,199,10,211,10,222,10,237,10,249,10,3,11,16,11,34,11,44,11,57,11,69,11,82,11,91,11,101,11,114,11,127,11,140,11,152,11,166,11,180,11,193,11,206,11,218,11,230,11,244,11,1,12,14,12,26,12,40,12,54,12,67,12,80,12,95,12,110,12,124,12,136,12,148,12,165,12,177,12,192,12,203,12,211,12,225,12,237,12,249,12,10,13,25,13,37,13,49,13,66,13,81,13,90,13,102,13,114,13,126,13,143,13,155,13,170,13,178,13,190,13,202,13,214,13,231,13,246,13,2,14,13,14,28,14,36,14,44,14,52,14,60,14,66,14,71,14,76,14,82,14,89,14,97,14,103,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,229,0,230,0,0,0,231,0,232,0,233,0,234,0,235,0,236,0,237,0,238,0,13,0,14,0,15,0,99,0,239,0,240,0,241,0,242,0,243,0,244,0,245,0,246,0,247,0,248,0,27,0,28,0,249,0,250,0,251,0,252,0,0,0,253,0,254,0,255,0,0,1,1,1,0,0,0,0,0,0,2,1,0,0,0,0,3,1,4,1,5,1,6,1,0,0,0,0,7,1,8,1,9,1,0,0,10,1,109,0,110,0,11,1,12,1,13,1,0,0,14,1,15,1,16,1,17,1,18,1,19,1,20,1,21,1,22,1,23,1,24,1,25,1,26,1,27,1,28,1,29,1,30,1,31,1,32,1,33,1,34,1,35,1,36,1,37,1,38,1,39,1,40,1,41,1,42,1,43,1,44,1,45,1,46,1,47,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,48,1,49,1,50,1,0,0,0,0,51,1,52,1,53,1,54,1,55,1,0,0,56,1,0,0,0,0,57,1,0,0,0,0,58,1,59,1,0,0,0,0,60,1,61,1,62,1,0,0,0,0,0,0,158,0,155,0,163,0,63,1,64,1,65,1,66,1,67,1,68,1,69,1,0,0,0,0,70,1,150,0,164,0,169,0,71,1,72,1,73,1,74,1,75,1,76,1,77,1,78,1,79,1,80,1,81,1,82,1,83,1,84,1,85,1,86,1,87,1,88,1,89,1,90,1,91,1,92,1,93,1,94,1,95,1,96,1,97,1,98,1,99,1,100,1,101,1,102,1,103,1,104,1,105,1,106,1,107,1,108,1,109,1,110,1,111,1,112,1,113,1,114,1,115,1,116,1,117,1,118,1,119,1,120,1,121,1,122,1,108,111,97,100,95,102,111,110,116,40,37,115,44,37,115,41,58,32,116,111,111,32,109,97,110,121,32,102,111,110,116,115,33,10,0,78,101,119,95,70,97,99,101,40,37,115,44,37,115,41],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE);allocate([32,69,114,114,111,114,33,32,37,100,10,0,83,101,116,95,67,104,97,114,95,83,105,122,101,32,69,114,114,111,114,33,32,37,100,10,0,76,111,97,100,95,67,104,97,114,32,69,114,114,111,114,33,32,37,100,10,0,73,110,105,116,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,65,46,111,116,102,0,78,101,119,95,70,97,99,101,40,79,67,82,45,65,41,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,66,46,111,116,102,0,78,101,119,95,70,97,99,101,40,79,67,82,45,66,41,32,69,114,114,111,114,33,32,37,100,10,0,79,67,82,45,65,0,79,67,82,45,66,0,99,105,100,0,116,121,112,101,49,0,79,84,84,79,0,46,95,0,47,46,46,110,97,109,101,100,102,111,114,107,47,114,115,114,99,0,47,114,115,114,99,0,114,101,115,111,117,114,99,101,46,102,114,107,47,0,46,114,101,115,111,117,114,99,101,47,0,37,0,46,65,112,112,108,101,68,111,117,98,108,101,47,0,116,114,117,101,116,121,112,101,0,84,114,117,101,84,121,112,101,0,109,117,108,116,105,45,109,97,115,116,101,114,115,0,87,105,100,116,104,0,79,112,116,105,99,97,108,83,105,122,101,0,83,108,97,110,116,0,116,114,117,101,116,121,112,101,45,101,110,103,105,110,101,0,116,116,45,103,108,121,102,0,68,70,75,97,105,83,104,111,45,83,66,0,0,0,0,0,0,68,70,75,97,105,83,104,117,0,0,0,0,0,0,0,0,0,68,70,75,97,105,45,83,66,0,0,0,0,0,0,0,0,0,72,117,97,84,105,97,110,75,97,105,84,105,63,0,0,0,0,72,117,97,84,105,97,110,83,111,110,103,84,105,63,0,0,0,77,105,110,103,76,105,85,0,0,0,0,0,0,0,0,0,0,80,77,105,110,103,76,105,85,0,0,0,0,0,0,0,0,0,77,105,110,103,76,105,52,51,0,0,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,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,255,254,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,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,2,3,4,5,6,7,8,9,3,5,7,9,11,13,15,17,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,32,32,32,32,32,32,2,2,0,80,16,16,16,16,16,16,16,16,0,0,16,0,16,16,16,16,18,16,0,34,1,17,16,32,0,16,32,16,16,0,16,16,0,0,0,0,16,16,16,16,16,0,32,32,0,0,32,32,0,0,32,17,32,17,17,17,32,33,33,1,1,0,0,16,33,33,33,33,33,33,17,17,16,0,33,33,17,16,16,16,33,33,33,33,17,17,17,17,17,17,17,17,17,17,17,17,32,16,16,16,16,16,16,16,32,32,0,0,0,0,16,16,0,32,32,0,0,16,32,32,17,16,51,33,33,16,32,0,0,0,0,0,0,0,0,0,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,1,2,3,4,5,6,7,8,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,99,102,102,0,120,102,56,54,45,100,114,105,118,101,114,45,110,97,109,101,0,67,70,70,0,112,111,115,116,115,99,114,105,112,116,45,105,110,102,111,0,67,73,68,0,82,101,103,117,108,97,114,0,66,111,108,100,0,66,108,97,99,107,0,0,194,193,193,32,32,32,32,32,32,32,32,32,32,13,7,9,11,128,130,130,130,130,128,128,0,1,2,2,2,1,0,2,1,1,1,2,1,2,1,2,1,4,3,2,2,1,2,4,1,1,0,2,0,0,0,5,4,2,115,102,110,116,0,115,102,110,116,45,116,97,98,108,101,0,112,111,115,116,115,99,114,105,112,116,45,102,111,110,116,45,110,97,109,101,0,103,108,121,112,104,45,100,105,99,116,0,98,100,102,0,67,72,65,82,83,69,84,95,82,69,71,73,83,84,82,89,0,67,72,65,82,83,69,84,95,69,78,67,79,68,73,78,71,0,116,116,45,99,109,97,112,115,0,84,72,69,90,79,67,81,83,0,0,0,0,0,72,69,90,76,79,67,85,83,0,0,0,0,0,102,105,106,107,100,98,104,0,0,0,0,0,0,120,122,114,111,101,115,99,0,0,0,0,0,0,120,122,114,111,101,115,99,0,0,0,0,0,0,112,113,103,106,121,0,0,0,0,0,0,0,0,97,117,116,111,102,105,116,116,101,114,0,112,115,104,105,110,116,101,114,0,114,97,115,116,101,114,49,0,114,97,115,116,101,114,53,0,115,109,111,111,116,104,0,115,109,111,111,116,104,45,108,99,100,0,115,109,111,111,116,104,45,108,99,100,118,0,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,1,2,3,4,5,6,7,8,9,255,255,255,255,255,255,255,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,255,255,255,255,255,255,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,255,255,255,255,255,83,116,97,114,116,70,111,110,116,77,101,116,114,105,99,115,0,65,115,99,101,110,100,101,114,0,65,120,105,115,76,97,98,101,108,0,65,120,105,115,84,121,112,101,0,66,0,66,108,101,110,100,65,120,105,115,84,121,112,101,115,0,66,108,101,110,100,68,101,115,105,103,110,77,97,112,0,66,108,101,110,100,68,101,115,105,103,110,80,111,115,105,116,105,111,110,115,0,67,0,67,67,0,67,72,0,67,97,112,72,101,105,103,104,116,0,67,104,97,114,87,105,100,116,104,0,67,104,97,114,97,99,116,101,114,83,101,116,0,67,104,97,114,97,99,116,101,114,115,0,68,101,115,99,101,110,100,101,114,0,69,110,99,111,100,105,110,103,83,99,104,101,109,101,0,69,110,100,65,120,105,115,0,69,110,100,67,104,97,114,77,101,116,114,105,99,115,0,69,110,100,67,111,109,112,111,115,105,116,101,115,0,69,110,100,68,105,114,101,99,116,105,111,110,0,69,110,100,70,111,110,116,77,101,116,114,105,99,115,0,69,110,100,75,101,114,110,68,97,116,97,0,69,110,100,75,101,114,110,80,97,105,114,115,0,69,110,100,84,114,97,99,107,75,101,114,110,0,69,115,99,67,104,97,114,0,70,97,109,105,108,121,78,97,109,101,0,70,111,110,116,66,66,111,120,0,70,111,110,116,78,97,109,101,0,70,117,108,108,78,97,109,101,0,73,115,66,97,115,101,70,111,110,116,0,73,115,67,73,68,70,111,110,116,0,73,115,70,105,120,101,100,80,105,116,99,104,0,73,115,70,105,120,101,100,86,0,73,116,97,108,105,99,65,110,103,108,101,0,75,80,0,75,80,72,0,75,80,88,0,75,80,89,0,76,0,77,97,112,112,105,110,103,83,99,104,101,109,101,0,77,101,116,114,105,99,115,83,101,116,115,0,78,0,78,111,116,105,99,101,0,80,67,67,0,83,116,97,114,116,65,120,105,115,0,83,116,97,114,116,67,104,97,114,77,101,116,114,105,99,115,0,83,116,97,114,116,67,111,109,112,111,115,105,116,101,115,0,83,116,97,114,116,68,105,114,101,99,116,105,111,110,0,83,116,97,114,116,75,101,114,110,68,97,116,97,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,48,0,83,116,97,114,116,75,101,114,110,80,97,105,114,115,49,0,83,116,97,114,116,84,114,97,99,107,75,101,114,110,0,83,116,100,72,87,0,83,116,100,86,87,0,84,114,97,99,107,75,101,114,110,0,85,110,100,101,114,108,105,110,101,80,111,115,105,116,105,111,110,0,85,110,100,101,114,108,105,110,101,84,104,105,99,107,110,101,115,115,0,86,86,0,86,86,101,99,116,111,114,0,86,101,114,115,105,111,110,0,87,0,87,48,0,87,48,88,0,87,48,89,0,87,49,0,87,49,88,0,87,49,89,0,87,88,0,87,89,0,87,101,105,103,104,116,0,87,101,105,103,104,116,86,101,99,116,111,114,0,88,72,101,105,103,104,116,0,116,114,117,101,0,112,115,97,117,120,0,112,115,110,97,109,101,115,0,0,52,0,106,2,167,3,63,4,220,6,125,9,143,10,23,11,137,12,199,14,246,15,87,16,233,17,219,18,104,19,88,22,110,23,32,23,71,24,77,27,156,29,73,31,247,32,107,32,222,33,55,34,154,35,218,53,84,59,196,68,6,75,183,83,178,88,135,93,242,101,165,109,185,111,55,117,254,123,73,130,238,138,206,145,31,153,182,156,189,163,249,178,221,193,17,197,99,199,240,204,27,204,155,210,100,65,143,0,65,0,140,0,175,0,193,1,15,1,147,1,233,1,251,2,7,2,40,2,57,2,82,2,91,2,128,2,136,2,154,69,131,0,198,0,150,0,158,0,167,225,227,245,244,101,128,1,252,237,225,227,242,239,110,128,1,226,243,237,225,236,108,128,247,230,225,227,245,244,101,129,0,193,0,185,243,237,225,236,108,128,247,225,226,242,229,246,101,134,1,2,0,213,0,221,0,232,0,243,0,251,1,7,225,227,245,244,101,128,30,174,227,249,242,233,236,236,233,99,128,4,208,228,239,244,226,229,236,239,119,128,30,182,231,242,225,246,101,128,30,176,232,239,239,235,225,226,239,246,101,128,30,178,244,233,236,228,101,128,30,180,99,4,1,25,1,32,1,121,1,137,225,242,239,110,128,1,205,233,242,99,2,1,40,1,45,236,101,128,36,182,245,237,230,236,229,120,134,0,194,1,66,1,74,1,85,1,93,1,105,1,113,225,227,245,244,101,128,30,164,228,239,244,226,229,236,239,119,128,30,172,231,242,225,246,101,128,30,166,232,239,239,235,225,226,239,246,101,128,30,168,243,237,225,236,108,128,247,226,244,233,236,228,101,128,30,170,245,244,101,129,246,201,1,129,243,237,225,236,108,128,247,180,249,242,233,236,236,233,99,128,4,16,100,3,1,155,1,165,1,209,226,236,231,242,225,246,101,128,2,0,233,229,242,229,243,233,115,131,0,196,1,181,1,192,1,201,227,249,242,233,236,236,233,99,128,4,210,237,225,227,242,239,110,128,1,222,243,237,225,236,108,128,247,228,239,116,2,1,216,1,224,226,229,236,239,119,128,30,160,237,225,227,242,239,110,128,1,224,231,242,225,246,101,129,0,192,1,243,243,237,225,236,108,128,247,224,232,239,239,235,225,226,239,246,101,128,30,162,105,2,2,13,2,25,229,227,249,242,233,236,236,233,99,128,4,212,238,246,229,242,244,229,228,226,242,229,246,101,128,2,2,236,240,232,97,129,3,145,2,49,244,239,238,239,115,128,3,134,109,2,2,63,2,71,225,227,242,239,110,128,1,0,239,238,239,243,240,225,227,101,128,255,33,239,231,239,238,229,107,128,1,4,242,233,238,103,131,0,197,2,104,2,112,2,120,225,227,245,244,101,128,1,250,226,229,236,239,119,128,30,0,243,237,225,236,108,128,247,229,243,237,225,236,108,128,247,97,244,233,236,228,101,129,0,195,2,146,243,237,225,236,108,128,247,227,249,226,225,242,237,229,238,233,225,110,128,5,49,66,137,0,66,2,189,2,198,2,223,3,3,3,10,3,22,3,34,3,46,3,54,227,233,242,227,236,101,128,36,183,228,239,116,2,2,206,2,215,225,227,227,229,238,116,128,30,2,226,229,236,239,119,128,30,4,101,3,2,231,2,242,2,254,227,249,242,233,236,236,233,99,128,4,17,238,225,242,237,229,238,233,225,110,128,5,50,244,97,128,3,146,232,239,239,107,128,1,129,236,233,238,229,226,229,236,239,119,128,30,6,237,239,238,239,243,240,225,227,101,128,255,34,242,229,246,229,243,237,225,236,108,128,246,244,243,237,225,236,108,128,247,98,244,239,240,226,225,114,128,1,130,67,137,0,67,3,85,3,127,3,193,3,210,3,224,4,171,4,188,4,200,4,212,97,3,3,93,3,104,3,111,225,242,237,229,238,233,225,110,128,5,62,227,245,244,101,128,1,6,242,239,110,129,246,202,3,119,243,237,225,236,108,128,246,245,99,3,3,135,3,142,3,171,225,242,239,110,128,1,12,229,228,233,236,236,97,130,0,199,3,155,3,163,225,227,245,244,101,128,30,8,243,237,225,236,108,128,247,231,233,242,99,2,3,179,3,184,236,101,128,36,184,245,237,230,236,229,120,128,1,8,228,239,116,129,1,10,3,201,225,227,227,229,238,116,128,1,10,229,228,233,236,236,225,243,237,225,236,108,128,247,184,104,4,3,234,3,246,4,161,4,165,225,225,242,237,229,238,233,225,110,128,5,73,101,6,4,4,4,24,4,35,4,103,4,115,4,136,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,188,227,249,242,233,236,236,233,99,128,4,39,100,2,4,41,4,85,229,243,227,229,238,228,229,114,2,4,54,4,74,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,190,227,249,242,233,236,236,233,99,128,4,182,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,244,232,225,242,237,229,238,233,225,110,128,5,67,235,232,225,235,225,243,243,233,225,238,227,249,242,233,236,236,233,99,128,4,203,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,184,105,128,3,167,239,239,107,128,1,135,233,242,227,245,237,230,236,229,248,243,237,225,236,108,128,246,246,237,239,238,239,243,240,225,227,101,128,255,35,239,225,242,237,229,238,233,225,110,128,5,81,243,237,225,236,108,128,247,99,68,142,0,68,4,252,5,10,5,36,5,96,5,121,5,166,5,173,5,231,5,244,6,0,6,12,6,28,6,48,6,57,90,129,1,241,5,2,227,225,242,239,110,128,1,196,97,2,5,16,5,27,225,242,237,229,238,233,225,110,128,5,52,230,242,233,227,225,110,128,1,137,99,4,5,46,5,53,5,62,5,89,225,242,239,110,128,1,14,229,228,233,236,236,97,128,30,16,233,242,99,2,5,70,5,75,236,101,128,36,185,245,237,230,236,229,248,226,229,236,239,119,128,30,18,242,239,225,116,128,1,16,228,239,116,2,5,104,5,113,225,227,227,229,238,116,128,30,10,226,229,236,239,119,128,30,12,101,3,5,129,5,140,5,150,227,249,242,233,236,236,233,99,128,4,20,233,227,239,240,244,233,99,128,3,238,236,244,97,129,34,6,5,158,231,242,229,229,107,128,3,148,232,239,239,107,128,1,138,105,2,5,179,5,218,229,242,229,243,233,115,131,246,203,5,194,5,202,5,210,193,227,245,244,101,128,246,204,199,242,225,246,101,128,246,205,243,237,225,236,108,128,247,168,231,225,237,237,225,231,242,229,229,107,128,3,220,234,229,227,249,242,233,236,236,233,99,128,4,2,236,233,238,229,226,229,236,239,119,128,30,14,237,239,238,239,243,240,225,227,101,128,255,36,239,244,225,227,227,229,238,244,243,237,225,236,108,128,246,247,115,2,6,34,6,41,236,225,243,104,128,1,16,237,225,236,108,128,247,100,244,239,240,226,225,114,128,1,139,122,131,1,242,6,67,6,75,6,112,227,225,242,239,110,128,1,197,101,2,6,81,6,101,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,224,227,249,242,233,236,236,233,99,128,4,5,232,229,227,249,242,233,236,236,233,99,128,4,15,69,146,0,69,6,165,6,183,6,191,7,89,7,153,7,165,7,183,7,211,8,7,8,36,8,94,8,169,8,189,8,208,8,248,9,44,9,109,9,115,225,227,245,244,101,129,0,201,6,175,243,237,225,236,108,128,247,233,226,242,229,246,101,128,1,20,99,5,6,203,6,210,6,224,6,236,7,79,225,242,239,110,128,1,26,229,228,233,236,236,225,226,242,229,246,101,128,30,28,232,225,242,237,229,238,233,225,110,128,5,53,233,242,99,2,6,244,6,249,236,101,128,36,186,245,237,230,236,229,120,135,0,202,7,16,7,24,7,32,7,43,7,51,7,63,7,71,225,227,245,244,101,128,30,190,226,229,236,239,119,128,30,24,228,239,244,226,229,236,239,119,128,30,198,231,242,225,246,101,128,30,192,232,239,239,235,225,226,239,246,101,128,30,194,243,237,225,236,108,128,247,234,244,233,236,228,101,128,30,196,249,242,233,236,236,233,99,128,4,4,100,3,7,97,7,107,7,127,226,236,231,242,225,246,101,128,2,4,233,229,242,229,243,233,115,129,0,203,7,119,243,237,225,236,108,128,247,235,239,116,130,1,22,7,136,7,145,225,227,227,229,238,116,128,1,22,226,229,236,239,119,128,30,184,230,227,249,242,233,236,236,233,99,128,4,36,231,242,225,246,101,129,0,200,7,175,243,237,225,236,108,128,247,232,104,2,7,189,7,200,225,242,237,229,238,233,225,110,128,5,55,239,239,235,225,226,239,246,101,128,30,186,105,3,7,219,7,230,7,245,231,232,244,242,239,237,225,110,128,33,103,238,246,229,242,244,229,228,226,242,229,246,101,128,2,6,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,100,108,2,8,13,8,24,227,249,242,233,236,236,233,99,128,4,27,229,246,229,238,242,239,237,225,110,128,33,106,109,3,8,44,8,72,8,83,225,227,242,239,110,130,1,18,8,56,8,64,225,227,245,244,101,128,30,22,231,242,225,246,101,128,30,20,227,249,242,233,236,236,233,99,128,4,28,239,238,239,243,240,225,227,101,128,255,37,110,4,8,104,8,115,8,135,8,154,227,249,242,233,236,236,233,99,128,4,29,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,162,103,129,1,74,8,141,232,229,227,249,242,233,236,236,233,99,128,4,164,232,239,239,235,227,249,242,233,236,236,233,99,128,4,199,111,2,8,175,8,183,231,239,238,229,107,128,1,24,240,229,110,128,1,144,240,243,233,236,239,110,129,3,149,8,200,244,239,238,239,115,128,3,136,114,2,8,214,8,225,227,249,242,233,236,236,233,99,128,4,32,229,246,229,242,243,229,100,129,1,142,8,237,227,249,242,233,236,236,233,99,128,4,45,115,4,9,2,9,13,9,33,9,37,227,249,242,233,236,236,233,99,128,4,33,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,170,104,128,1,169,237,225,236,108,128,247,101,116,3,9,52,9,78,9,92,97,130,3,151,9,60,9,70,242,237,229,238,233,225,110,128,5,56,244,239,238,239,115,128,3,137,104,129,0,208,9,84,243,237,225,236,108,128,247,240,233,236,228,101,129,30,188,9,101,226,229,236,239,119,128,30,26,245,242,111,128,32,172,250,104,130,1,183,9,124,9,132,227,225,242,239,110,128,1,238,242,229,246,229,242,243,229,100,128,1,184,70,136,0,70,9,163,9,172,9,184,9,212,9,219,9,248,10,4,10,15,227,233,242,227,236,101,128,36,187,228,239,244,225,227,227,229,238,116,128,30,30,101,2,9,190,9,202,232,225,242,237,229,238,233,225,110,128,5,86,233,227,239,240,244,233,99,128,3,228,232,239,239,107,128,1,145,105,2,9,225,9,238,244,225,227,249,242,233,236,236,233,99,128,4,114,246,229,242,239,237,225,110,128,33,100,237,239,238,239,243,240,225,227,101,128,255,38,239,245,242,242,239,237,225,110,128,33,99,243,237,225,236,108,128,247,102,71,140,0,71,10,51,10,61,10,107,10,115,10,176,10,193,10,205,11,39,11,52,11,65,11,90,11,107,194,243,241,245,225,242,101,128,51,135,97,3,10,69,10,76,10,94,227,245,244,101,128,1,244,237,237,97,129,3,147,10,84,225,230,242,233,227,225,110,128,1,148,238,231,233,225,227,239,240,244,233,99,128,3,234,226,242,229,246,101,128,1,30,99,4,10,125,10,132,10,141,10,163,225,242,239,110,128,1,230,229,228,233,236,236,97,128,1,34,233,242,99,2,10,149,10,154,236,101,128,36,188,245,237,230,236,229,120,128,1,28,239,237,237,225,225,227,227,229,238,116,128,1,34,228,239,116,129,1,32,10,184,225,227,227,229,238,116,128,1,32,229,227,249,242,233,236,236,233,99,128,4,19,104,3,10,213,10,226,11,33,225,228,225,242,237,229,238,233,225,110,128,5,66,101,3,10,234,10,255,11,16,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,148,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,146,245,240,244,245,242,238,227,249,242,233,236,236,233,99,128,4,144,239,239,107,128,1,147,233,237,225,242,237,229,238,233,225,110,128,5,51,234,229,227,249,242,233,236,236,233,99,128,4,3,109,2,11,71,11,79,225,227,242,239,110,128,30,32,239,238,239,243,240,225,227,101,128,255,39,242,225,246,101,129,246,206,11,99,243,237,225,236,108,128,247,96,115,2,11,113,11,129,237,225,236,108,129,247,103,11,122,232,239,239,107,128,2,155,244,242,239,235,101,128,1,228,72,140,0,72,11,165,11,190,11,198,11,208,12,17,12,40,12,77,12,117,12,129,12,157,12,165,12,189,177,184,53,3,11,175,11,180,11,185,179,51,128,37,207,180,51,128,37,170,181,49,128,37,171,178,178,176,183,51,128,37,161,208,243,241,245,225,242,101,128,51,203,97,3,11,216,11,236,12,0,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,168,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,178,242,228,243,233,231,238,227,249,242,233,236,236,233,99,128,4,42,98,2,12,23,12,28,225,114,128,1,38,242,229,246,229,226,229,236,239,119,128,30,42,99,2,12,46,12,55,229,228,233,236,236,97,128,30,40,233,242,99,2,12,63,12,68,236,101,128,36,189,245,237,230,236,229,120,128,1,36,100,2,12,83,12,93,233,229,242,229,243,233,115,128,30,38,239,116,2,12,100,12,109,225,227,227,229,238,116,128,30,34,226,229,236,239,119,128,30,36,237,239,238,239,243,240,225,227,101,128,255,40,111,2,12,135,12,146,225,242,237,229,238,233,225,110,128,5,64,242,233,227,239,240,244,233,99,128,3,232,243,237,225,236,108,128,247,104,245,238,231,225,242,245,237,236,225,245,116,129,246,207,12,181,243,237,225,236,108,128,246,248,250,243,241,245,225,242,101,128,51,144,73,146,0,73,12,239,12,251,12,255,13,11,13,29,13,37,13,94,13,181,13,214,13,224,13,242,13,254,14,48,14,86,14,99,14,166,14,187,14,205,193,227,249,242,233,236,236,233,99,128,4,47,74,128,1,50,213,227,249,242,233,236,236,233,99,128,4,46,225,227,245,244,101,129,0,205,13,21,243,237,225,236,108,128,247,237,226,242,229,246,101,128,1,44,99,3,13,45,13,52,13,84,225,242,239,110,128,1,207,233,242,99,2,13,60,13,65,236,101,128,36,190,245,237,230,236,229,120,129,0,206,13,76,243,237,225,236,108,128,247,238,249,242,233,236,236,233,99,128,4,6,100,3,13,102,13,112,13,155,226,236,231,242,225,246,101,128,2,8,233,229,242,229,243,233,115,131,0,207,13,128,13,136,13,147,225,227,245,244,101,128,30,46,227,249,242,233,236,236,233,99,128,4,228,243,237,225,236,108,128,247,239,239,116,130,1,48,13,164,13,173,225,227,227,229,238,116,128,1,48,226,229,236,239,119,128,30,202,101,2,13,187,13,203,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,214,227,249,242,233,236,236,233,99,128,4,21,230,242,225,235,244,245,114,128,33,17,231,242,225,246,101,129,0,204,13,234,243,237,225,236,108,128,247,236,232,239,239,235,225,226,239,246,101,128,30,200,105,3,14,6,14,17,14,32,227,249,242,233,236,236,233,99,128,4,24,238,246,229,242,244,229,228,226,242,229,246,101,128,2,10,243,232,239,242,244,227,249,242,233,236,236,233,99,128,4,25,109,2,14,54,14,75,225,227,242,239,110,129,1,42,14,64,227,249,242,233,236,236,233,99,128,4,226,239,238,239,243,240,225,227,101,128,255,41,238,233,225,242,237,229,238,233,225,110,128,5,59,111,3,14,107,14,118,14,126,227,249,242,233,236,236,233,99,128,4,1,231,239,238,229,107,128,1,46,244,97,131,3,153,14,137,14,147,14,158,225,230,242,233,227,225,110,128,1,150,228,233,229,242,229,243,233,115,128,3,170,244,239,238,239,115,128,3,138,115,2,14,172,14,179,237,225,236,108,128,247,105,244,242,239,235,101,128,1,151,244,233,236,228,101,129,1,40,14,197,226,229,236,239,119,128,30,44,250,232,233,244,243,97,2,14,216,14,227,227,249,242,233,236,236,233,99,128,4,116,228,226,236,231,242,225,246,229,227,249,242,233,236,236,233,99,128,4,118,74,134,0,74,15,6,15,18,15,41,15,53,15,67,15,79,225,225,242,237,229,238,233,225,110,128,5,65,227,233,242,99,2,15,27,15,32,236,101,128,36,191,245,237,230,236,229,120,128,1,52,229,227,249,242,233,236,236,233,99,128,4,8,232,229,232,225,242,237,229,238,233,225,110,128,5,75,237,239,238,239,243,240,225,227,101,128,255,42,243,237,225,236,108,128,247,106,75,140,0,75,15,115,15,125,15,135,16,18,16,65,16,76,16,106,16,143,16,156,16,168,16,180,16,208,194,243,241,245,225,242,101,128,51,133,203,243,241,245,225,242,101,128,51,205,97,7,15,151,15,169,15,191,15,211,15,226,15,232,15,249,226,225,243,232,235,233,242,227,249,242,233,236,236,233,99,128,4,160,99,2,15,175,15,181,245,244,101,128,30,48,249,242,233,236,236,233,99,128,4,26,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,154,232,239,239,235,227,249,242,233,236,236,233,99,128,4,195,240,240,97,128,3,154,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,158,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,156,99,4,16,28,16,35,16,44,16,52,225,242,239,110,128,1,232,229,228,233,236,236,97,128,1,54,233,242,227,236,101,128,36,192,239,237,237,225,225,227,227,229,238,116,128,1,54,228,239,244,226,229,236,239,119,128,30,50,101,2,16,82,16,94,232,225,242,237,229,238,233,225,110,128,5,84,238,225,242,237,229,238,233,225,110,128,5,63,104,3,16,114,16,126,16,137,225,227,249,242,233,236,236,233,99,128,4,37,229,233,227,239,240,244,233,99,128,3,230,239,239,107,128,1,152,234,229,227,249,242,233,236,236,233,99,128,4,12,236,233,238,229,226,229,236,239,119,128,30,52,237,239,238,239,243,240,225,227,101,128,255,43,239,240,240,97,2,16,189,16,200,227,249,242,233,236,236,233,99,128,4,128,231,242,229,229,107,128,3,222,115,2,16,214,16,226,233,227,249,242,233,236,236,233,99,128,4,110,237,225,236,108,128,247,107,76,138,0,76,17,1,17,5,17,9,17,29,17,95,17,133,17,147,17,165,17,177,17,189,74,128,1,199,76,128,246,191,97,2,17,15,17,22,227,245,244,101,128,1,57,237,226,228,97,128,3,155,99,4,17,39,17,46,17,55,17,82,225,242,239,110,128,1,61,229,228,233,236,236,97,128,1,59,233,242,99,2,17,63,17,68,236,101,128,36,193,245,237,230,236,229,248,226,229,236,239,119,128,30,60,239,237,237,225,225,227,227,229,238,116,128,1,59,228,239,116,130,1,63,17,105,17,114,225,227,227,229,238,116,128,1,63,226,229,236,239,119,129,30,54,17,124,237,225,227,242,239,110,128,30,56,233,247,238,225,242,237,229,238,233,225,110,128,5,60,106,129,1,200,17,153,229,227,249,242,233,236,236,233,99,128,4,9,236,233,238,229,226,229,236,239,119,128,30,58,237,239,238,239,243,240,225,227,101,128,255,44,115,2,17,195,17,212,236,225,243,104,129,1,65,17,204,243,237,225,236,108,128,246,249,237,225,236,108,128,247,108,77,137,0,77,17,241,17,251,18,24,18,33,18,58,18,71,18,83,18,91,18,100,194,243,241,245,225,242,101,128,51,134,225,99,2,18,2,18,18,242,239,110,129,246,208,18,10,243,237,225,236,108,128,247,175,245,244,101,128,30,62,227,233,242,227,236,101,128,36,194,228,239,116,2,18,41,18,50,225,227,227,229,238,116,128,30,64,226,229,236,239,119,128,30,66,229,238,225,242,237,229,238,233,225,110,128,5,68,237,239,238,239,243,240,225,227,101,128,255,45,243,237,225,236,108,128,247,109,244,245,242,238,229,100,128,1,156,117,128,3,156,78,141,0,78,18,134,18,138,18,146,18,212,18,237,18,248,19,3,19,21,19,33,19,45,19,58,19,66,19,84,74,128,1,202,225,227,245,244,101,128,1,67,99,4,18,156,18,163,18,172,18,199,225,242,239,110,128,1,71,229,228,233,236,236,97,128,1,69,233,242,99,2,18,180,18,185,236,101,128,36,195,245,237,230,236,229,248,226,229,236,239,119,128,30,74,239,237,237,225,225,227,227,229,238,116,128,1,69,228,239,116,2,18,220,18,229,225,227,227,229,238,116,128,30,68,226,229,236,239,119,128,30,70,232,239,239,235,236,229,230,116,128,1,157,233,238,229,242,239,237,225,110,128,33,104,106,129,1,203,19,9,229,227,249,242,233,236,236,233,99,128,4,10,236,233,238,229,226,229,236,239,119,128,30,72,237,239,238,239,243,240,225,227,101,128,255,46,239,247,225,242,237,229,238,233,225,110,128,5,70,243,237,225,236,108,128,247,110,244,233,236,228,101,129,0,209,19,76,243,237,225,236,108,128,247,241,117,128,3,157,79,141,0,79,19,118,19,132,19,150,19,203,20,78,20,152,20,187,21,48,21,69,21,213,21,223,21,254,22,53,69,129,1,82,19,124,243,237,225,236,108,128,246,250,225,227,245,244,101,129,0,211,19,142,243,237,225,236,108,128,247,243,98,2,19,156,19,196,225,242,242,229,100,2,19,166,19,177,227,249,242,233,236,236,233,99,128,4,232,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,234,242,229,246,101,128,1,78,99,4,19,213,19,220,19,235,20,68,225,242,239,110,128,1,209,229,238,244,229,242,229,228,244,233,236,228,101,128,1,159,233,242,99,2,19,243,19,248,236,101,128,36,196,245,237,230,236,229,120,134,0,212,20,13,20,21,20,32,20,40,20,52,20,60,225,227,245,244,101,128,30,208,228,239,244,226,229,236,239,119,128,30,216,231,242,225,246,101,128,30,210,232,239,239,235,225,226,239,246,101,128,30,212,243,237,225,236,108,128,247,244,244,233,236,228,101,128,30,214,249,242,233,236,236,233,99,128,4,30,100,3,20,86,20,109,20,142,226,108,2,20,93,20,101,225,227,245,244,101,128,1,80,231,242,225,246,101,128,2,12,233,229,242,229,243,233,115,130,0,214,20,123,20,134,227,249,242,233,236,236,233,99,128,4,230,243,237,225,236,108,128,247,246,239,244,226,229,236,239,119,128,30,204,103,2,20,158,20,170,239,238,229,235,243,237,225,236,108,128,246,251,242,225,246,101,129,0,210,20,179,243,237,225,236,108,128,247,242,104,4,20,197,20,208,20,212,21,34,225,242,237,229,238,233,225,110,128,5,85,109,128,33,38,111,2,20,218,20,228,239,235,225,226,239,246,101,128,30,206,242,110,133,1,160,20,243,20,251,21,6,21,14,21,26,225,227,245,244,101,128,30,218,228,239,244,226,229,236,239,119,128,30,226,231,242,225,246,101,128,30,220,232,239,239,235,225,226,239,246,101,128,30,222,244,233,236,228,101,128,30,224,245,238,231,225,242,245,237,236,225,245,116,128,1,80,105,129,1,162,21,54,238,246,229,242,244,229,228,226,242,229,246,101,128,2,14,109,4,21,79,21,107,21,184,21,202,225,227,242,239,110,130,1,76,21,91,21,99,225,227,245,244,101,128,30,82,231,242,225,246,101,128,30,80,229,231,97,132,33,38,21,121,21,132,21,140,21,156,227,249,242,233,236,236,233,99,128,4,96,231,242,229,229,107,128,3,169,242,239,245,238,228,227,249,242,233,236,236,233,99,128,4,122,116,2,21,162,21,177,233,244,236,239,227,249,242,233,236,236,233,99,128,4,124,239,238,239,115,128,3,143,233,227,242,239,110,129,3,159,21,194,244,239,238,239,115,128,3,140,239,238,239,243,240,225,227,101,128,255,47,238,229,242,239,237,225,110,128,33,96,111,2,21,229,21,248,231,239,238,229,107,129,1,234,21,239,237,225,227,242,239,110,128,1,236,240,229,110,128,1,134,115,3,22,6,22,33,22,40,236,225,243,104,130,0,216,22,17,22,25,225,227,245,244,101,128,1,254,243,237,225,236,108,128,247,248,237,225,236,108,128,247,111,244,242,239,235,229,225,227,245,244,101,128,1,254,116,2,22,59,22,70,227,249,242,233,236,236,233,99,128,4,126,233,236,228,101,131,0,213,22,83,22,91,22,102,225,227,245,244,101,128,30,76,228,233,229,242,229,243,233,115,128,30,78,243,237,225,236,108,128,247,245,80,136,0,80,22,130,22,138,22,147,22,159,22,211,22,227,22,246,23,2,225,227,245,244,101,128,30,84,227,233,242,227,236,101,128,36,197,228,239,244,225,227,227,229,238,116,128,30,86,101,3,22,167,22,178,22,190,227,249,242,233,236,236,233,99,128,4,31,232,225,242,237,229,238,233,225,110,128,5,74,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,166,104,2,22,217,22,221,105,128,3,166,239,239,107,128,1,164,105,129,3,160,22,233,247,242,225,242,237,229,238,233,225,110,128,5,83,237,239,238,239,243,240,225,227,101,128,255,48,115,2,23,8,23,25,105,129,3,168,23,14,227,249,242,233,236,236,233,99,128,4,112,237,225,236,108,128,247,112,81,131,0,81,23,42,23,51,23,63,227,233,242,227,236,101,128,36,198,237,239,238,239,243,240,225,227,101,128,255,49,243,237,225,236,108,128,247,113,82,138,0,82,23,95,23,119,23,166,23,217,23,230,23,240,23,245,24,19,24,31,24,43,97,2,23,101,23,112,225,242,237,229,238,233,225,110,128,5,76,227,245,244,101,128,1,84,99,4,23,129,23,136,23,145,23,153,225,242,239,110,128,1,88,229,228,233,236,236,97,128,1,86,233,242,227,236,101,128,36,199,239,237,237,225,225,227,227,229,238,116,128,1,86,100,2,23,172,23,182,226,236,231,242,225,246,101,128,2,16,239,116,2,23,189,23,198,225,227,227,229,238,116,128,30,88,226,229,236,239,119,129,30,90,23,208,237,225,227,242,239,110,128,30,92,229,232,225,242,237,229,238,233,225,110,128,5,80,230,242,225,235,244,245,114,128,33,28,232,111,128,3,161,233,110,2,23,252,24,5,231,243,237,225,236,108,128,246,252,246,229,242,244,229,228,226,242,229,246,101,128,2,18,236,233,238,229,226,229,236,239,119,128,30,94,237,239,238,239,243,240,225,227,101,128,255,50,243,237,225,236,108,129,247,114,24,53,233,238,246,229,242,244,229,100,129,2,129,24,66,243,245,240,229,242,233,239,114,128,2,182,83,139,0,83,24,103,26,17,26,55,26,182,26,221,26,250,27,84,27,105,27,117,27,135,27,143,70,6,24,117,24,209,24,241,25,77,25,119,25,221,48,9,24,137,24,145,24,153,24,161,24,169,24,177,24,185,24,193,24,201,177,176,176,176,48,128,37,12,178,176,176,176,48,128,37,20,179,176,176,176,48,128,37,16,180,176,176,176,48,128,37,24,181,176,176,176,48,128,37,60,182,176,176,176,48,128,37,44,183,176,176,176,48,128,37,52,184,176,176,176,48,128,37,28,185,176,176,176,48,128,37,36,49,3,24,217,24,225,24,233,176,176,176,176,48,128,37,0,177,176,176,176,48,128,37,2,185,176,176,176,48,128,37,97,50,9,25,5,25,13,25,21,25,29,25,37,25,45,25,53,25,61,25,69,176,176,176,176,48,128,37,98,177,176,176,176,48,128,37,86,178,176,176,176,48,128,37,85,179,176,176,176,48,128,37,99,180,176,176,176,48,128,37,81,181,176,176,176,48,128,37,87,182,176,176,176,48,128,37,93,183,176,176,176,48,128,37,92,184,176,176,176,48,128,37,91,51,4,25,87,25,95,25,103,25,111,182,176,176,176,48,128,37,94,183,176,176,176,48,128,37,95,184,176,176,176,48,128,37,90,185,176,176,176,48,128,37,84,52,10,25,141,25,149,25,157,25,165,25,173,25,181,25,189,25,197,25,205,25,213,176,176,176,176,48,128,37,105,177,176,176,176,48,128,37,102,178,176,176,176,48,128,37,96,179,176,176,176,48,128,37,80,180,176,176,176,48,128,37,108,181,176,176,176,48,128,37,103,182,176,176,176,48,128,37,104,183,176,176,176,48,128,37,100,184,176,176,176,48,128,37,101,185,176,176,176,48,128,37,89,53,5,25,233,25,241,25,249,26,1,26,9,176,176,176,176,48,128,37,88,177,176,176,176,48,128,37,82,178,176,176,176,48,128,37,83,179,176,176,176,48,128,37,107,180,176,176,176,48,128,37,106,97,2,26,23,26,44,227,245,244,101,129,1,90,26,32,228,239,244,225,227,227,229,238,116,128,30,100,237,240,233,231,242,229,229,107,128,3,224,99,5,26,67,26,98,26,107,26,147,26,169,225,242,239,110,130,1,96,26,78,26,90,228,239,244,225,227,227,229,238,116,128,30,102,243,237,225,236,108,128,246,253,229,228,233,236,236,97,128,1,94,232,247,97,130,1,143,26,117,26,128,227,249,242,233,236,236,233,99,128,4,216,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,218,233,242,99,2,26,155,26,160,236,101,128,36,200,245,237,230,236,229,120,128,1,92,239,237,237,225,225,227,227,229,238,116,128,2,24,228,239,116,2,26,190,26,199,225,227,227,229,238,116,128,30,96,226,229,236,239,119,129,30,98,26,209,228,239,244,225,227,227,229,238,116,128,30,104,101,2,26,227,26,239,232,225,242,237,229,238,233,225,110,128,5,77,246,229,238,242,239,237,225,110,128,33,102,104,5,27,6,27,34,27,48,27,59,27,72,97,2,27,12,27,23,225,242,237,229,238,233,225,110,128,5,71,227,249,242,233,236,236,233,99,128,4,40,227,232,225,227,249,242,233,236,236,233,99,128,4,41,229,233,227,239,240,244,233,99,128,3,226,232,225,227,249,242,233,236,236,233,99,128,4,186,233,237,225,227,239,240,244,233,99,128,3,236,105,2,27,90,27,96,231,237,97,128,3,163,248,242,239,237,225,110,128,33,101,237,239,238,239,243,240,225,227,101,128,255,51,239,230,244,243,233,231,238,227,249,242,233,236,236,233,99,128,4,44,243,237,225,236,108,128,247,115,244,233,231,237,225,231,242,229,229,107,128,3,218,84,141,0,84,27,186,27,191,27,197,28,7,28,32,28,96,28,147,28,177,28,189,28,201,28,246,29,6,29,46,225,117,128,3,164,226,225,114,128,1,102,99,4,27,207,27,214,27,223,27,250,225,242,239,110,128,1,100,229,228,233,236,236,97,128,1,98,233,242,99,2,27,231,27,236,236,101,128,36,201,245,237,230,236,229,248,226,229,236,239,119,128,30,112,239,237,237,225,225,227,227,229,238,116,128,1,98,228,239,116,2,28,15,28,24,225,227,227,229,238,116,128,30,106,226,229,236,239,119,128,30,108,101,4,28,42,28,53,28,73,28,82,227,249,242,233,236,236,233,99,128,4,34,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,172,238,242,239,237,225,110,128,33,105,244,243,229,227,249,242,233,236,236,233,99,128,4,180,104,3,28,104,28,110,28,136,229,244,97,128,3,152,111,2,28,116,28,121,239,107,128,1,172,242,110,129,0,222,28,128,243,237,225,236,108,128,247,254,242,229,229,242,239,237,225,110,128,33,98,105,2,28,153,28,164,236,228,229,243,237,225,236,108,128,246,254,247,238,225,242,237,229,238,233,225,110,128,5,79,236,233,238,229,226,229,236,239,119,128,30,110,237,239,238,239,243,240,225,227,101,128,255,52,111,2,28,207,28,218,225,242,237,229,238,233,225,110,128,5,57,238,101,3,28,227,28,234,28,240,230,233,246,101,128,1,188,243,233,120,128,1,132,244,247,111,128,1,167,242,229,244,242,239,230,236,229,248,232,239,239,107,128,1,174,115,3,29,14,29,26,29,39,229,227,249,242,233,236,236,233,99,128,4,38,232,229,227,249,242,233,236,236,233,99,128,4,11,237,225,236,108,128,247,116,119,2,29,52,29,64,229,236,246,229,242,239,237,225,110,128,33,107,239,242,239,237,225,110,128,33,97,85,142,0,85,29,105,29,123,29,131,29,198,30,69,30,87,30,198,30,214,30,226,31,21,31,30,31,142,31,149,31,219,225,227,245,244,101,129,0,218,29,115,243,237,225,236,108,128,247,250,226,242,229,246,101,128,1,108,99,3,29,139,29,146,29,188,225,242,239,110,128,1,211,233,242,99,2,29,154,29,159,236,101,128,36,202,245,237,230,236,229,120,130,0,219,29,172,29,180,226,229,236,239,119,128,30,118,243,237,225,236,108,128,247,251,249,242,233,236,236,233,99,128,4,35,100,3,29,206,29,229,30,59,226,108,2,29,213,29,221,225,227,245,244,101,128,1,112,231,242,225,246,101,128,2,20,233,229,242,229,243,233,115,134,0,220,29,251,30,3,30,11,30,34,30,42,30,51,225,227,245,244,101,128,1,215,226,229,236,239,119,128,30,114,99,2,30,17,30,24,225,242,239,110,128,1,217,249,242,233,236,236,233,99,128,4,240,231,242,225,246,101,128,1,219,237,225,227,242,239,110,128,1,213,243,237,225,236,108,128,247,252,239,244,226,229,236,239,119,128,30,228,231,242,225,246,101,129,0,217,30,79,243,237,225,236,108,128,247,249,104,2,30,93,30,171,111,2,30,99,30,109,239,235,225,226,239,246,101,128,30,230,242,110,133,1,175,30,124,30,132,30,143,30,151,30,163,225,227,245,244,101,128,30,232,228,239,244,226,229,236,239,119,128,30,240,231,242,225,246,101,128,30,234,232,239,239,235,225,226,239,246,101,128,30,236,244,233,236,228,101,128,30,238,245,238,231,225,242,245,237,236,225,245,116,129,1,112,30,187,227,249,242,233,236,236,233,99,128,4,242,233,238,246,229,242,244,229,228,226,242,229,246,101,128,2,22,235,227,249,242,233,236,236,233,99,128,4,120,109,2,30,232,31,10,225,227,242,239,110,130,1,106,30,244,30,255,227,249,242,233,236,236,233,99,128,4,238,228,233,229,242,229,243,233,115,128,30,122,239,238,239,243,240,225,227,101,128,255,53,239,231,239,238,229,107,128,1,114,240,243,233,236,239,110,133,3,165,31,49,31,53,31,90,31,121,31,134,49,128,3,210,97,2,31,59,31,81,227,245,244,229,232,239,239,235,243,249,237,226,239,236,231,242,229,229,107,128,3,211,230,242,233,227,225,110,128,1,177,228,233,229,242,229,243,233,115,129,3,171,31,103,232,239,239,235,243,249,237,226,239,236,231,242,229,229,107,128,3,212],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+10240);allocate([232,239,239,235,243,249,237,226,239,108,128,3,210,244,239,238,239,115,128,3,142,242,233,238,103,128,1,110,115,3,31,157,31,172,31,179,232,239,242,244,227,249,242,233,236,236,233,99,128,4,14,237,225,236,108,128,247,117,244,242,225,233,231,232,116,2,31,191,31,202,227,249,242,233,236,236,233,99,128,4,174,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,176,244,233,236,228,101,130,1,104,31,231,31,239,225,227,245,244,101,128,30,120,226,229,236,239,119,128,30,116,86,136,0,86,32,11,32,20,32,31,32,60,32,67,32,79,32,91,32,99,227,233,242,227,236,101,128,36,203,228,239,244,226,229,236,239,119,128,30,126,101,2,32,37,32,48,227,249,242,233,236,236,233,99,128,4,18,247,225,242,237,229,238,233,225,110,128,5,78,232,239,239,107,128,1,178,237,239,238,239,243,240,225,227,101,128,255,54,239,225,242,237,229,238,233,225,110,128,5,72,243,237,225,236,108,128,247,118,244,233,236,228,101,128,30,124,87,134,0,87,32,123,32,131,32,154,32,194,32,202,32,214,225,227,245,244,101,128,30,130,227,233,242,99,2,32,140,32,145,236,101,128,36,204,245,237,230,236,229,120,128,1,116,100,2,32,160,32,170,233,229,242,229,243,233,115,128,30,132,239,116,2,32,177,32,186,225,227,227,229,238,116,128,30,134,226,229,236,239,119,128,30,136,231,242,225,246,101,128,30,128,237,239,238,239,243,240,225,227,101,128,255,55,243,237,225,236,108,128,247,119,88,134,0,88,32,238,32,247,33,18,33,31,33,35,33,47,227,233,242,227,236,101,128,36,205,100,2,32,253,33,7,233,229,242,229,243,233,115,128,30,140,239,244,225,227,227,229,238,116,128,30,138,229,232,225,242,237,229,238,233,225,110,128,5,61,105,128,3,158,237,239,238,239,243,240,225,227,101,128,255,56,243,237,225,236,108,128,247,120,89,139,0,89,33,81,33,116,33,139,33,189,33,228,33,236,33,253,34,40,34,52,34,60,34,68,97,2,33,87,33,104,227,245,244,101,129,0,221,33,96,243,237,225,236,108,128,247,253,244,227,249,242,233,236,236,233,99,128,4,98,227,233,242,99,2,33,125,33,130,236,101,128,36,206,245,237,230,236,229,120,128,1,118,100,2,33,145,33,165,233,229,242,229,243,233,115,129,1,120,33,157,243,237,225,236,108,128,247,255,239,116,2,33,172,33,181,225,227,227,229,238,116,128,30,142,226,229,236,239,119,128,30,244,229,114,2,33,196,33,208,233,227,249,242,233,236,236,233,99,128,4,43,245,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,248,231,242,225,246,101,128,30,242,232,239,239,107,129,1,179,33,245,225,226,239,246,101,128,30,246,105,3,34,5,34,16,34,27,225,242,237,229,238,233,225,110,128,5,69,227,249,242,233,236,236,233,99,128,4,7,247,238,225,242,237,229,238,233,225,110,128,5,82,237,239,238,239,243,240,225,227,101,128,255,57,243,237,225,236,108,128,247,121,244,233,236,228,101,128,30,248,245,115,2,34,75,34,113,226,233,103,2,34,83,34,94,227,249,242,233,236,236,233,99,128,4,106,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,108,236,233,244,244,236,101,2,34,124,34,135,227,249,242,233,236,236,233,99,128,4,102,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,104,90,136,0,90,34,174,34,198,34,243,35,14,35,81,35,173,35,185,35,197,97,2,34,180,34,191,225,242,237,229,238,233,225,110,128,5,54,227,245,244,101,128,1,121,99,2,34,204,34,221,225,242,239,110,129,1,125,34,213,243,237,225,236,108,128,246,255,233,242,99,2,34,229,34,234,236,101,128,36,207,245,237,230,236,229,120,128,30,144,228,239,116,130,1,123,34,253,35,6,225,227,227,229,238,116,128,1,123,226,229,236,239,119,128,30,146,101,3,35,22,35,33,35,76,227,249,242,233,236,236,233,99,128,4,23,100,2,35,39,35,58,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,152,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,222,244,97,128,3,150,232,101,4,35,92,35,103,35,119,35,130,225,242,237,229,238,233,225,110,128,5,58,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,193,227,249,242,233,236,236,233,99,128,4,22,100,2,35,136,35,155,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,150,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,220,236,233,238,229,226,229,236,239,119,128,30,148,237,239,238,239,243,240,225,227,101,128,255,58,115,2,35,203,35,210,237,225,236,108,128,247,122,244,242,239,235,101,128,1,181,97,149,0,97,36,8,36,144,37,35,37,211,38,55,38,91,45,10,45,47,45,74,46,43,46,81,47,170,47,242,48,197,48,206,49,79,51,87,52,77,52,124,53,19,53,33,97,7,36,24,36,34,36,41,36,48,36,73,36,89,36,100,226,229,238,231,225,236,105,128,9,134,227,245,244,101,128,0,225,228,229,246,97,128,9,6,231,117,2,36,55,36,64,234,225,242,225,244,105,128,10,134,242,237,245,235,232,105,128,10,6,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,62,242,245,243,241,245,225,242,101,128,51,3,246,239,247,229,236,243,233,231,110,3,36,116,36,126,36,133,226,229,238,231,225,236,105,128,9,190,228,229,246,97,128,9,62,231,245,234,225,242,225,244,105,128,10,190,98,4,36,154,36,195,36,204,36,214,226,242,229,246,233,225,244,233,239,110,2,36,169,36,184,237,225,242,235,225,242,237,229,238,233,225,110,128,5,95,243,233,231,238,228,229,246,97,128,9,112,229,238,231,225,236,105,128,9,133,239,240,239,237,239,230,111,128,49,26,242,229,246,101,134,1,3,36,233,36,241,36,252,37,7,37,15,37,27,225,227,245,244,101,128,30,175,227,249,242,233,236,236,233,99,128,4,209,228,239,244,226,229,236,239,119,128,30,183,231,242,225,246,101,128,30,177,232,239,239,235,225,226,239,246,101,128,30,179,244,233,236,228,101,128,30,181,99,4,37,45,37,52,37,131,37,201,225,242,239,110,128,1,206,233,242,99,2,37,60,37,65,236,101,128,36,208,245,237,230,236,229,120,133,0,226,37,84,37,92,37,103,37,111,37,123,225,227,245,244,101,128,30,165,228,239,244,226,229,236,239,119,128,30,173,231,242,225,246,101,128,30,167,232,239,239,235,225,226,239,246,101,128,30,169,244,233,236,228,101,128,30,171,245,244,101,133,0,180,37,147,37,158,37,175,37,182,37,191,226,229,236,239,247,227,237,98,128,3,23,99,2,37,164,37,169,237,98,128,3,1,239,237,98,128,3,1,228,229,246,97,128,9,84,236,239,247,237,239,100,128,2,207,244,239,238,229,227,237,98,128,3,65,249,242,233,236,236,233,99,128,4,48,100,5,37,223,37,233,37,247,37,253,38,31,226,236,231,242,225,246,101,128,2,1,228,225,235,231,245,242,237,245,235,232,105,128,10,113,229,246,97,128,9,5,233,229,242,229,243,233,115,130,0,228,38,11,38,22,227,249,242,233,236,236,233,99,128,4,211,237,225,227,242,239,110,128,1,223,239,116,2,38,38,38,46,226,229,236,239,119,128,30,161,237,225,227,242,239,110,128,1,225,101,131,0,230,38,65,38,73,38,82,225,227,245,244,101,128,1,253,235,239,242,229,225,110,128,49,80,237,225,227,242,239,110,128,1,227,230,233,105,6,38,107,38,127,41,64,41,70,41,85,44,185,48,2,38,113,38,120,176,178,176,56,128,32,21,184,185,180,49,128,32,164,177,48,3,38,136,40,160,41,39,48,9,38,156,38,176,38,238,39,44,39,106,39,168,39,230,40,36,40,98,49,3,38,164,38,168,38,172,55,128,4,16,56,128,4,17,57,128,4,18,50,10,38,198,38,202,38,206,38,210,38,214,38,218,38,222,38,226,38,230,38,234,48,128,4,19,49,128,4,20,50,128,4,21,51,128,4,1,52,128,4,22,53,128,4,23,54,128,4,24,55,128,4,25,56,128,4,26,57,128,4,27,51,10,39,4,39,8,39,12,39,16,39,20,39,24,39,28,39,32,39,36,39,40,48,128,4,28,49,128,4,29,50,128,4,30,51,128,4,31,52,128,4,32,53,128,4,33,54,128,4,34,55,128,4,35,56,128,4,36,57,128,4,37,52,10,39,66,39,70,39,74,39,78,39,82,39,86,39,90,39,94,39,98,39,102,48,128,4,38,49,128,4,39,50,128,4,40,51,128,4,41,52,128,4,42,53,128,4,43,54,128,4,44,55,128,4,45,56,128,4,46,57,128,4,47,53,10,39,128,39,132,39,136,39,140,39,144,39,148,39,152,39,156,39,160,39,164,48,128,4,144,49,128,4,2,50,128,4,3,51,128,4,4,52,128,4,5,53,128,4,6,54,128,4,7,55,128,4,8,56,128,4,9,57,128,4,10,54,10,39,190,39,194,39,198,39,202,39,206,39,210,39,214,39,218,39,222,39,226,48,128,4,11,49,128,4,12,50,128,4,14,51,128,246,196,52,128,246,197,53,128,4,48,54,128,4,49,55,128,4,50,56,128,4,51,57,128,4,52,55,10,39,252,40,0,40,4,40,8,40,12,40,16,40,20,40,24,40,28,40,32,48,128,4,53,49,128,4,81,50,128,4,54,51,128,4,55,52,128,4,56,53,128,4,57,54,128,4,58,55,128,4,59,56,128,4,60,57,128,4,61,56,10,40,58,40,62,40,66,40,70,40,74,40,78,40,82,40,86,40,90,40,94,48,128,4,62,49,128,4,63,50,128,4,64,51,128,4,65,52,128,4,66,53,128,4,67,54,128,4,68,55,128,4,69,56,128,4,70,57,128,4,71,57,10,40,120,40,124,40,128,40,132,40,136,40,140,40,144,40,148,40,152,40,156,48,128,4,72,49,128,4,73,50,128,4,74,51,128,4,75,52,128,4,76,53,128,4,77,54,128,4,78,55,128,4,79,56,128,4,145,57,128,4,82,49,4,40,170,40,232,40,237,41,7,48,10,40,192,40,196,40,200,40,204,40,208,40,212,40,216,40,220,40,224,40,228,48,128,4,83,49,128,4,84,50,128,4,85,51,128,4,86,52,128,4,87,53,128,4,88,54,128,4,89,55,128,4,90,56,128,4,91,57,128,4,92,177,48,128,4,94,52,4,40,247,40,251,40,255,41,3,53,128,4,15,54,128,4,98,55,128,4,114,56,128,4,116,57,5,41,19,41,23,41,27,41,31,41,35,50,128,246,198,51,128,4,95,52,128,4,99,53,128,4,115,54,128,4,117,56,2,41,45,41,59,51,2,41,51,41,55,49,128,246,199,50,128,246,200,180,54,128,4,217,178,185,57,128,32,14,179,48,2,41,77,41,81,48,128,32,15,49,128,32,13,181,55,7,41,102,41,172,42,237,43,58,44,15,44,108,44,179,51,2,41,108,41,122,56,2,41,114,41,118,49,128,6,106,56,128,6,12,57,8,41,140,41,144,41,148,41,152,41,156,41,160,41,164,41,168,50,128,6,96,51,128,6,97,52,128,6,98,53,128,6,99,54,128,6,100,55,128,6,101,56,128,6,102,57,128,6,103,52,7,41,188,41,220,42,26,42,88,42,120,42,176,42,232,48,5,41,200,41,204,41,208,41,212,41,216,48,128,6,104,49,128,6,105,51,128,6,27,55,128,6,31,57,128,6,33,49,10,41,242,41,246,41,250,41,254,42,2,42,6,42,10,42,14,42,18,42,22,48,128,6,34,49,128,6,35,50,128,6,36,51,128,6,37,52,128,6,38,53,128,6,39,54,128,6,40,55,128,6,41,56,128,6,42,57,128,6,43,50,10,42,48,42,52,42,56,42,60,42,64,42,68,42,72,42,76,42,80,42,84,48,128,6,44,49,128,6,45,50,128,6,46,51,128,6,47,52,128,6,48,53,128,6,49,54,128,6,50,55,128,6,51,56,128,6,52,57,128,6,53,51,5,42,100,42,104,42,108,42,112,42,116,48,128,6,54,49,128,6,55,50,128,6,56,51,128,6,57,52,128,6,58,52,9,42,140,42,144,42,148,42,152,42,156,42,160,42,164,42,168,42,172,48,128,6,64,49,128,6,65,50,128,6,66,51,128,6,67,52,128,6,68,53,128,6,69,54,128,6,70,56,128,6,72,57,128,6,73,53,9,42,196,42,200,42,204,42,208,42,212,42,216,42,220,42,224,42,228,48,128,6,74,49,128,6,75,50,128,6,76,51,128,6,77,52,128,6,78,53,128,6,79,54,128,6,80,55,128,6,81,56,128,6,82,183,48,128,6,71,53,3,42,245,43,21,43,53,48,5,43,1,43,5,43,9,43,13,43,17,53,128,6,164,54,128,6,126,55,128,6,134,56,128,6,152,57,128,6,175,49,5,43,33,43,37,43,41,43,45,43,49,49,128,6,121,50,128,6,136,51,128,6,145,52,128,6,186,57,128,6,210,179,52,128,6,213,54,7,43,74,43,79,43,84,43,89,43,127,43,189,43,251,179,54,128,32,170,180,53,128,5,190,181,56,128,5,195,54,6,43,103,43,107,43,111,43,115,43,119,43,123,52,128,5,208,53,128,5,209,54,128,5,210,55,128,5,211,56,128,5,212,57,128,5,213,55,10,43,149,43,153,43,157,43,161,43,165,43,169,43,173,43,177,43,181,43,185,48,128,5,214,49,128,5,215,50,128,5,216,51,128,5,217,52,128,5,218,53,128,5,219,54,128,5,220,55,128,5,221,56,128,5,222,57,128,5,223,56,10,43,211,43,215,43,219,43,223,43,227,43,231,43,235,43,239,43,243,43,247,48,128,5,224,49,128,5,225,50,128,5,226,51,128,5,227,52,128,5,228,53,128,5,229,54,128,5,230,55,128,5,231,56,128,5,232,57,128,5,233,57,3,44,3,44,7,44,11,48,128,5,234,52,128,251,42,53,128,251,43,55,4,44,25,44,39,44,59,44,64,48,2,44,31,44,35,48,128,251,75,53,128,251,31,49,3,44,47,44,51,44,55,54,128,5,240,55,128,5,241,56,128,5,242,178,51,128,251,53,57,7,44,80,44,84,44,88,44,92,44,96,44,100,44,104,51,128,5,180,52,128,5,181,53,128,5,182,54,128,5,187,55,128,5,184,56,128,5,183,57,128,5,176,56,3,44,116,44,160,44,165,48,7,44,132,44,136,44,140,44,144,44,148,44,152,44,156,48,128,5,178,49,128,5,177,50,128,5,179,51,128,5,194,52,128,5,193,54,128,5,185,55,128,5,188,179,57,128,5,189,52,2,44,171,44,175,49,128,5,191,50,128,5,192,185,178,57,128,2,188,54,3,44,193,44,252,45,3,49,4,44,203,44,219,44,225,44,246,50,2,44,209,44,214,180,56,128,33,5,184,57,128,33,19,179,181,50,128,33,22,181,55,3,44,234,44,238,44,242,51,128,32,44,52,128,32,45,53,128,32,46,182,182,52,128,32,12,179,177,182,55,128,6,109,180,185,179,55,128,2,189,103,2,45,16,45,23,242,225,246,101,128,0,224,117,2,45,29,45,38,234,225,242,225,244,105,128,10,133,242,237,245,235,232,105,128,10,5,104,2,45,53,45,63,233,242,225,231,225,238,97,128,48,66,239,239,235,225,226,239,246,101,128,30,163,105,7,45,90,45,115,45,122,45,134,45,159,45,175,45,255,98,2,45,96,45,105,229,238,231,225,236,105,128,9,144,239,240,239,237,239,230,111,128,49,30,228,229,246,97,128,9,16,229,227,249,242,233,236,236,233,99,128,4,213,231,117,2,45,141,45,150,234,225,242,225,244,105,128,10,144,242,237,245,235,232,105,128,10,16,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,72,110,5,45,187,45,196,45,210,45,226,45,241,225,242,225,226,233,99,128,6,57,230,233,238,225,236,225,242,225,226,233,99,128,254,202,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,203,237,229,228,233,225,236,225,242,225,226,233,99,128,254,204,246,229,242,244,229,228,226,242,229,246,101,128,2,3,246,239,247,229,236,243,233,231,110,3,46,15,46,25,46,32,226,229,238,231,225,236,105,128,9,200,228,229,246,97,128,9,72,231,245,234,225,242,225,244,105,128,10,200,107,2,46,49,46,73,225,244,225,235,225,238,97,129,48,162,46,61,232,225,236,230,247,233,228,244,104,128,255,113,239,242,229,225,110,128,49,79,108,3,46,89,47,145,47,154,101,2,46,95,47,140,102,136,5,208,46,115,46,124,46,139,46,153,46,242,47,0,47,111,47,125,225,242,225,226,233,99,128,6,39,228,225,231,229,243,232,232,229,226,242,229,119,128,251,48,230,233,238,225,236,225,242,225,226,233,99,128,254,142,104,2,46,159,46,234,225,237,250,97,2,46,168,46,201,225,226,239,246,101,2,46,178,46,187,225,242,225,226,233,99,128,6,35,230,233,238,225,236,225,242,225,226,233,99,128,254,132,226,229,236,239,119,2,46,211,46,220,225,242,225,226,233,99,128,6,37,230,233,238,225,236,225,242,225,226,233,99,128,254,136,229,226,242,229,119,128,5,208,236,225,237,229,228,232,229,226,242,229,119,128,251,79,237,97,2,47,7,47,43,228,228,225,225,226,239,246,101,2,47,20,47,29,225,242,225,226,233,99,128,6,34,230,233,238,225,236,225,242,225,226,233,99,128,254,130,235,243,245,242,97,4,47,57,47,66,47,80,47,96,225,242,225,226,233,99,128,6,73,230,233,238,225,236,225,242,225,226,233,99,128,254,240,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,243,237,229,228,233,225,236,225,242,225,226,233,99,128,254,244,240,225,244,225,232,232,229,226,242,229,119,128,251,46,241,225,237,225,244,243,232,229,226,242,229,119,128,251,47,240,104,128,33,53,236,229,241,245,225,108,128,34,76,240,232,97,129,3,177,47,162,244,239,238,239,115,128,3,172,109,4,47,180,47,188,47,199,47,233,225,227,242,239,110,128,1,1,239,238,239,243,240,225,227,101,128,255,65,240,229,242,243,225,238,100,130,0,38,47,213,47,225,237,239,238,239,243,240,225,227,101,128,255,6,243,237,225,236,108,128,247,38,243,241,245,225,242,101,128,51,194,110,4,47,252,48,7,48,129,48,139,226,239,240,239,237,239,230,111,128,49,34,103,4,48,17,48,28,48,42,48,121,226,239,240,239,237,239,230,111,128,49,36,235,232,225,238,235,232,245,244,232,225,105,128,14,90,236,101,131,34,32,48,53,48,106,48,113,226,242,225,227,235,229,116,2,48,65,48,85,236,229,230,116,129,48,8,48,74,246,229,242,244,233,227,225,108,128,254,63,242,233,231,232,116,129,48,9,48,95,246,229,242,244,233,227,225,108,128,254,64,236,229,230,116,128,35,41,242,233,231,232,116,128,35,42,243,244,242,239,109,128,33,43,239,244,229,236,229,233,97,128,3,135,117,2,48,145,48,157,228,225,244,244,225,228,229,246,97,128,9,82,243,246,225,242,97,3,48,169,48,179,48,186,226,229,238,231,225,236,105,128,9,130,228,229,246,97,128,9,2,231,245,234,225,242,225,244,105,128,10,130,239,231,239,238,229,107,128,1,5,112,3,48,214,48,238,49,12,97,2,48,220,48,232,225,244,239,243,241,245,225,242,101,128,51,0,242,229,110,128,36,156,239,243,244,242,239,240,232,101,2,48,251,49,6,225,242,237,229,238,233,225,110,128,5,90,237,239,100,128,2,188,112,2,49,18,49,23,236,101,128,248,255,242,111,2,49,30,49,38,225,227,232,229,115,128,34,80,120,2,49,44,49,64,229,241,245,225,108,129,34,72,49,54,239,242,233,237,225,231,101,128,34,82,233,237,225,244,229,236,249,229,241,245,225,108,128,34,69,114,4,49,89,49,116,49,120,49,165,225,229,97,2,49,97,49,107,229,235,239,242,229,225,110,128,49,142,235,239,242,229,225,110,128,49,141,99,128,35,18,105,2,49,126,49,140,231,232,244,232,225,236,230,242,233,238,103,128,30,154,238,103,130,0,229,49,149,49,157,225,227,245,244,101,128,1,251,226,229,236,239,119,128,30,1,242,239,119,8,49,185,49,192,50,65,50,131,50,181,50,236,51,3,51,78,226,239,244,104,128,33,148,100,3,49,200,49,239,50,30,225,243,104,4,49,212,49,219,49,226,49,234,228,239,247,110,128,33,227,236,229,230,116,128,33,224,242,233,231,232,116,128,33,226,245,112,128,33,225,226,108,5,49,252,50,3,50,10,50,17,50,25,226,239,244,104,128,33,212,228,239,247,110,128,33,211,236,229,230,116,128,33,208,242,233,231,232,116,128,33,210,245,112,128,33,209,239,247,110,131,33,147,50,42,50,49,50,57,236,229,230,116,128,33,153,242,233,231,232,116,128,33,152,247,232,233,244,101,128,33,233,104,2,50,71,50,122,229,225,100,4,50,83,50,93,50,103,50,114,228,239,247,238,237,239,100,128,2,197,236,229,230,244,237,239,100,128,2,194,242,233,231,232,244,237,239,100,128,2,195,245,240,237,239,100,128,2,196,239,242,233,250,229,120,128,248,231,236,229,230,116,131,33,144,50,144,50,161,50,173,228,226,108,129,33,208,50,152,243,244,242,239,235,101,128,33,205,239,246,229,242,242,233,231,232,116,128,33,198,247,232,233,244,101,128,33,230,242,233,231,232,116,132,33,146,50,197,50,209,50,217,50,228,228,226,236,243,244,242,239,235,101,128,33,207,232,229,225,246,121,128,39,158,239,246,229,242,236,229,230,116,128,33,196,247,232,233,244,101,128,33,232,244,225,98,2,50,244,50,251,236,229,230,116,128,33,228,242,233,231,232,116,128,33,229,245,112,132,33,145,51,16,51,44,51,62,51,70,100,2,51,22,51,34,110,129,33,149,51,28,226,243,101,128,33,168,239,247,238,226,225,243,101,128,33,168,236,229,230,116,129,33,150,51,53,239,230,228,239,247,110,128,33,197,242,233,231,232,116,128,33,151,247,232,233,244,101,128,33,231,246,229,242,244,229,120,128,248,230,115,5,51,99,51,175,51,220,52,47,52,57,99,2,51,105,51,157,233,105,2,51,112,51,135,227,233,242,227,245,109,129,0,94,51,123,237,239,238,239,243,240,225,227,101,128,255,62,244,233,236,228,101,129,0,126,51,145,237,239,238,239,243,240,225,227,101,128,255,94,242,233,240,116,129,2,81,51,166,244,245,242,238,229,100,128,2,82,237,225,236,108,2,51,184,51,195,232,233,242,225,231,225,238,97,128,48,65,235,225,244,225,235,225,238,97,129,48,161,51,208,232,225,236,230,247,233,228,244,104,128,255,103,244,229,242,233,115,2,51,230,52,43,107,131,0,42,51,240,52,12,52,35,97,2,51,246,52,4,236,244,239,238,229,225,242,225,226,233,99,128,6,109,242,225,226,233,99,128,6,109,109,2,52,18,52,24,225,244,104,128,34,23,239,238,239,243,240,225,227,101,128,255,10,243,237,225,236,108,128,254,97,109,128,32,66,245,240,229,242,233,239,114,128,246,233,249,237,240,244,239,244,233,227,225,236,236,249,229,241,245,225,108,128,34,67,116,132,0,64,52,89,52,96,52,108,52,116,233,236,228,101,128,0,227,237,239,238,239,243,240,225,227,101,128,255,32,243,237,225,236,108,128,254,107,245,242,238,229,100,128,2,80,117,6,52,138,52,163,52,170,52,195,52,215,52,231,98,2,52,144,52,153,229,238,231,225,236,105,128,9,148,239,240,239,237,239,230,111,128,49,32,228,229,246,97,128,9,20,231,117,2,52,177,52,186,234,225,242,225,244,105,128,10,148,242,237,245,235,232,105,128,10,20,236,229,238,231,244,232,237,225,242,235,226,229,238,231,225,236,105,128,9,215,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,76,246,239,247,229,236,243,233,231,110,3,52,247,53,1,53,8,226,229,238,231,225,236,105,128,9,204,228,229,246,97,128,9,76,231,245,234,225,242,225,244,105,128,10,204,246,225,231,242,225,232,225,228,229,246,97,128,9,61,121,2,53,39,53,51,226,225,242,237,229,238,233,225,110,128,5,97,233,110,130,5,226,53,60,53,75,225,236,244,239,238,229,232,229,226,242,229,119,128,251,32,232,229,226,242,229,119,128,5,226,98,144,0,98,53,120,53,255,54,10,54,19,54,44,55,85,55,147,55,220,57,146,57,158,57,201,57,209,57,219,59,89,59,113,59,122,97,7,53,136,53,146,53,170,53,177,53,202,53,226,53,237,226,229,238,231,225,236,105,128,9,172,227,235,243,236,225,243,104,129,0,92,53,158,237,239,238,239,243,240,225,227,101,128,255,60,228,229,246,97,128,9,44,231,117,2,53,184,53,193,234,225,242,225,244,105,128,10,172,242,237,245,235,232,105,128,10,44,104,2,53,208,53,218,233,242,225,231,225,238,97,128,48,112,244,244,232,225,105,128,14,63,235,225,244,225,235,225,238,97,128,48,208,114,129,0,124,53,243,237,239,238,239,243,240,225,227,101,128,255,92,226,239,240,239,237,239,230,111,128,49,5,227,233,242,227,236,101,128,36,209,228,239,116,2,54,27,54,36,225,227,227,229,238,116,128,30,3,226,229,236,239,119,128,30,5,101,6,54,58,54,79,54,102,54,244,54,255,55,11,225,237,229,228,243,233,248,244,229,229,238,244,232,238,239,244,229,115,128,38,108,99,2,54,85,54,92,225,245,243,101,128,34,53,249,242,233,236,236,233,99,128,4,49,104,5,54,114,54,123,54,137,54,167,54,226,225,242,225,226,233,99,128,6,40,230,233,238,225,236,225,242,225,226,233,99,128,254,144,105,2,54,143,54,158,238,233,244,233,225,236,225,242,225,226,233,99,128,254,145,242,225,231,225,238,97,128,48,121,237,101,2,54,174,54,187,228,233,225,236,225,242,225,226,233,99,128,254,146,229,237,105,2,54,195,54,210,238,233,244,233,225,236,225,242,225,226,233,99,128,252,159,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,8,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,109,235,225,244,225,235,225,238,97,128,48,217,238,225,242,237,229,238,233,225,110,128,5,98,116,132,5,209,55,23,55,43,55,63,55,72,97,129,3,178,55,29,243,249,237,226,239,236,231,242,229,229,107,128,3,208,228,225,231,229,243,104,129,251,49,55,54,232,229,226,242,229,119,128,251,49,232,229,226,242,229,119,128,5,209,242,225,230,229,232,229,226,242,229,119,128,251,76,104,2,55,91,55,141,97,3,55,99,55,109,55,116,226,229,238,231,225,236,105,128,9,173,228,229,246,97,128,9,45,231,117,2,55,123,55,132,234,225,242,225,244,105,128,10,173,242,237,245,235,232,105,128,10,45,239,239,107,128,2,83,105,5,55,159,55,170,55,181,55,195,55,209,232,233,242,225,231,225,238,97,128,48,115,235,225,244,225,235,225,238,97,128,48,211,236,225,226,233,225,236,227,236,233,227,107,128,2,152,238,228,233,231,245,242,237,245,235,232,105,128,10,2,242,245,243,241,245,225,242,101,128,51,49,108,3,55,228,57,129,57,140,97,2,55,234,57,124,227,107,6,55,249,56,2,56,39,56,188,56,243,57,39,227,233,242,227,236,101,128,37,207,100,2,56,8,56,17,233,225,237,239,238,100,128,37,198,239,247,238,240,239,233,238,244,233,238,231,244,242,233,225,238,231,236,101,128,37,188,108,2,56,45,56,148,101,2,56,51,56,87,230,244,240,239,233,238,244,233,238,103,2,56,66,56,76,240,239,233,238,244,229,114,128,37,196,244,242,233,225,238,231,236,101,128,37,192,238,244,233,227,245,236,225,242,226,242,225,227,235,229,116,2,56,107,56,127,236,229,230,116,129,48,16,56,116,246,229,242,244,233,227,225,108,128,254,59,242,233,231,232,116,129,48,17,56,137,246,229,242,244,233,227,225,108,128,254,60,239,247,229,114,2,56,157,56,172,236,229,230,244,244,242,233,225,238,231,236,101,128,37,227,242,233,231,232,244,244,242,233,225,238,231,236,101,128,37,226,114,2,56,194,56,205,229,227,244,225,238,231,236,101,128,37,172,233,231,232,244,240,239,233,238,244,233,238,103,2,56,222,56,232,240,239,233,238,244,229,114,128,37,186,244,242,233,225,238,231,236,101,128,37,182,115,3,56,251,57,25,57,33,109,2,57,1,57,13,225,236,236,243,241,245,225,242,101,128,37,170,233,236,233,238,231,230,225,227,101,128,38,59,241,245,225,242,101,128,37,160,244,225,114,128,38,5,245,240,112,2,57,47,57,85,229,114,2,57,54,57,69,236,229,230,244,244,242,233,225,238,231,236,101,128,37,228,242,233,231,232,244,244,242,233,225,238,231,236,101,128,37,229,239,233,238,244,233,238,103,2,57,97,57,113,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,180,244,242,233,225,238,231,236,101,128,37,178,238,107,128,36,35,233,238,229,226,229,236,239,119,128,30,7,239,227,107,128,37,136,237,239,238,239,243,240,225,227,101,128,255,66,111,3,57,166,57,179,57,190,226,225,233,237,225,233,244,232,225,105,128,14,26,232,233,242,225,231,225,238,97,128,48,124,235,225,244,225,235,225,238,97,128,48,220,240,225,242,229,110,128,36,157,241,243,241,245,225,242,101,128,51,195,114,4,57,229,58,223,59,40,59,79,225,99,2,57,236,58,130,101,3,57,244,57,249,58,61,229,120,128,248,244,236,229,230,116,133,0,123,58,10,58,15,58,37,58,45,58,50,226,116,128,248,243,109,2,58,21,58,26,233,100,128,248,242,239,238,239,243,240,225,227,101,128,255,91,243,237,225,236,108,128,254,91,244,112,128,248,241,246,229,242,244,233,227,225,108,128,254,55,242,233,231,232,116,133,0,125,58,79,58,84,58,106,58,114,58,119,226,116,128,248,254,109,2,58,90,58,95,233,100,128,248,253,239,238,239,243,240,225,227,101,128,255,93,243,237,225,236,108,128,254,92,244,112,128,248,252,246,229,242,244,233,227,225,108,128,254,56,235,229,116,2,58,138,58,180,236,229,230,116,132,0,91,58,153,58,158,58,163,58,175,226,116,128,248,240,229,120,128,248,239,237,239,238,239,243,240,225,227,101,128,255,59,244,112,128,248,238,242,233,231,232,116,132,0,93,58,196,58,201,58,206,58,218,226,116,128,248,251,229,120,128,248,250,237,239,238,239,243,240,225,227,101,128,255,61,244,112,128,248,249,229,246,101,131,2,216,58,235,58,246,58,252,226,229,236,239,247,227,237,98,128,3,46,227,237,98,128,3,6,233,238,246,229,242,244,229,100,3,59,11,59,22,59,28,226,229,236,239,247,227,237,98,128,3,47,227,237,98,128,3,17,228,239,245,226,236,229,227,237,98,128,3,97,233,228,231,101,2,59,49,59,60,226,229,236,239,247,227,237,98,128,3,42,233,238,246,229,242,244,229,228,226,229,236,239,247,227,237,98,128,3,58,239,235,229,238,226,225,114,128,0,166,115,2,59,95,59,103,244,242,239,235,101,128,1,128,245,240,229,242,233,239,114,128,246,234,244,239,240,226,225,114,128,1,131,117,3,59,130,59,141,59,152,232,233,242,225,231,225,238,97,128,48,118,235,225,244,225,235,225,238,97,128,48,214,236,108,2,59,159,59,189,229,116,130,32,34,59,168,59,178,233,238,246,229,242,243,101,128,37,216,239,240,229,242,225,244,239,114,128,34,25,243,229,249,101,128,37,206,99,143,0,99,59,230,60,179,60,190,60,254,61,29,61,122,63,33,64,17,64,117,64,166,67,158,67,166,67,176,67,188,67,221,97,9,59,250,60,5,60,15,60,22,60,29,60,54,60,64,60,116,60,125,225,242,237,229,238,233,225,110,128,5,110,226,229,238,231,225,236,105,128,9,154,227,245,244,101,128,1,7,228,229,246,97,128,9,26,231,117,2,60,36,60,45,234,225,242,225,244,105,128,10,154,242,237,245,235,232,105,128,10,26,236,243,241,245,225,242,101,128,51,136,238,228,242,225,226,233,238,228,117,4,60,82,60,92,60,98,60,105,226,229,238,231,225,236,105,128,9,129,227,237,98,128,3,16,228,229,246,97,128,9,1,231,245,234,225,242,225,244,105,128,10,129,240,243,236,239,227,107,128,33,234,114,3,60,133,60,139,60,165,229,239,102,128,33,5,239,110,130,2,199,60,148,60,159,226,229,236,239,247,227,237,98,128,3,44,227,237,98,128,3,12,242,233,225,231,229,242,229,244,245,242,110,128,33,181,226,239,240,239,237,239,230,111,128,49,24,99,4,60,200,60,207,60,226,60,248,225,242,239,110,128,1,13,229,228,233,236,236,97,129,0,231,60,218,225,227,245,244,101,128,30,9,233,242,99,2,60,234,60,239,236,101,128,36,210,245,237,230,236,229,120,128,1,9,245,242,108,128,2,85,100,2,61,4,61,20,239,116,129,1,11,61,11,225,227,227,229,238,116,128,1,11,243,241,245,225,242,101,128,51,197,101,2,61,35,61,51,228,233,236,236,97,129,0,184,61,45,227,237,98,128,3,39,238,116,132,0,162,61,64,61,88,61,100,61,111,105,2,61,70,61,78,231,242,225,228,101,128,33,3,238,230,229,242,233,239,114,128,246,223,237,239,238,239,243,240,225,227,101,128,255,224,239,236,228,243,244,249,236,101,128,247,162,243,245,240,229,242,233,239,114,128,246,224,104,5,61,134,61,197,61,208,62,136,62,228,97,4,61,144,61,155,61,165,61,172,225,242,237,229,238,233,225,110,128,5,121,226,229,238,231,225,236,105,128,9,155,228,229,246,97,128,9,27,231,117,2,61,179,61,188,234,225,242,225,244,105,128,10,155,242,237,245,235,232,105,128,10,27,226,239,240,239,237,239,230,111,128,49,20,101,6,61,222,61,242,62,10,62,78,62,90,62,111,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,189,99,2,61,248,62,0,235,237,225,242,107,128,39,19,249,242,233,236,236,233,99,128,4,71,100,2,62,16,62,60,229,243,227,229,238,228,229,114,2,62,29,62,49,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,191,227,249,242,233,236,236,233,99,128,4,183,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,245,232,225,242,237,229,238,233,225,110,128,5,115,235,232,225,235,225,243,243,233,225,238,227,249,242,233,236,236,233,99,128,4,204,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,185,105,129,3,199,62,142,229,245,227,104,4,62,155,62,190,62,205,62,214,97,2,62,161,62,176,227,233,242,227,236,229,235,239,242,229,225,110,128,50,119,240,225,242,229,238,235,239,242,229,225,110,128,50,23,227,233,242,227,236,229,235,239,242,229,225,110,128,50,105,235,239,242,229,225,110,128,49,74,240,225,242,229,238,235,239,242,229,225,110,128,50,9,111,2,62,234,63,28,227,104,3,62,243,63,9,63,19,225,110,2,62,250,63,2,231,244,232,225,105,128,14,10,244,232,225,105,128,14,8,233,238,231,244,232,225,105,128,14,9,239,229,244,232,225,105,128,14,12,239,107,128,1,136,105,2,63,39,63,141,229,245,99,5,63,53,63,88,63,103,63,112,63,126,97,2,63,59,63,74,227,233,242,227,236,229,235,239,242,229,225,110,128,50,118,240,225,242,229,238,235,239,242,229,225,110,128,50,22,227,233,242,227,236,229,235,239,242,229,225,110,128,50,104,235,239,242,229,225,110,128,49,72,240,225,242,229,238,235,239,242,229,225,110,128,50,8,245,240,225,242,229,238,235,239,242,229,225,110,128,50,28,242,99,2,63,148,63,243,236,101,132,37,203,63,161,63,172,63,177,63,201,237,245,236,244,233,240,236,121,128,34,151,239,116,128,34,153,112,2,63,183,63,189,236,245,115,128,34,149,239,243,244,225,236,237,225,242,107,128,48,54,247,233,244,104,2,63,210,63,226,236,229,230,244,232,225,236,230,226,236,225,227,107,128,37,208,242,233,231,232,244,232,225,236,230,226,236,225,227,107,128,37,209,245,237,230,236,229,120,130,2,198,64,0,64,11,226,229,236,239,247,227,237,98,128,3,45,227,237,98,128,3,2,108,3,64,25,64,31,64,85,229,225,114,128,35,39,233,227,107,4,64,43,64,54,64,63,64,73,225,236,246,229,239,236,225,114,128,1,194,228,229,238,244,225,108,128,1,192,236,225,244,229,242,225,108,128,1,193,242,229,244,242,239,230,236,229,120,128,1,195,245,98,129,38,99,64,92,243,245,233,116,2,64,101,64,109,226,236,225,227,107,128,38,99,247,232,233,244,101,128,38,103,109,3,64,125,64,139,64,150,227,245,226,229,228,243,241,245,225,242,101,128,51,164,239,238,239,243,240,225,227,101,128,255,67,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,160,111,8,64,184,64,195,65,26,65,224,66,253,67,28,67,135,67,144,225,242,237,229,238,233,225,110,128,5,129,236,239,110,131,0,58,64,207,64,232,64,251,237,239,110,2,64,215,64,223,229,244,225,242,121,128,32,161,239,243,240,225,227,101,128,255,26,115,2,64,238,64,244,233,231,110,128,32,161,237,225,236,108,128,254,85,244,242,233,225,238,231,245,236,225,114,2,65,10,65,20,232,225,236,230,237,239,100,128,2,209,237,239,100,128,2,208,109,2,65,32,65,217,237,97,134,0,44,65,49,65,113,65,124,65,136,65,166,65,189,97,3,65,57,65,83,65,91,226,239,246,101,2,65,66,65,72,227,237,98,128,3,19,242,233,231,232,244,227,237,98,128,3,21,227,227,229,238,116,128,246,195,114,2,65,97,65,104,225,226,233,99,128,6,12,237,229,238,233,225,110,128,5,93,233,238,230,229,242,233,239,114,128,246,225,237,239,238,239,243,240,225,227,101,128,255,12,242,229,246,229,242,243,229,100,2,65,149,65,160,225,226,239,246,229,227,237,98,128,3,20,237,239,100,128,2,189,115,2,65,172,65,179,237,225,236,108,128,254,80,245,240,229,242,233,239,114,128,246,226,244,245,242,238,229,100,2,65,200,65,211,225,226,239,246,229,227,237,98,128,3,18,237,239,100,128,2,187,240,225,243,115,128,38,60,110,2,65,230,65,239,231,242,245,229,238,116,128,34,69,116,2,65,245,66,3,239,245,242,233,238,244,229,231,242,225,108,128,34,46,242,239,108,142,35,3,66,37,66,43,66,58,66,73,66,117,66,162,66,176,66,181,66,186,66,191,66,197,66,202,66,243,66,248,193,195,75,128,0,6,66,2,66,49,66,54,197,76,128,0,7,83,128,0,8,67,2,66,64,66,69,193,78,128,0,24,82,128,0,13,68,3,66,81,66,107,66,112,67,4,66,91,66,95,66,99,66,103,49,128,0,17,50,128,0,18,51,128,0,19,52,128,0,20,197,76,128,0,127,204,69,128,0,16,69,5,66,129,66,133,66,138,66,143,66,148,77,128,0,25,206,81,128,0,5,207,84,128,0,4,211,67,128,0,27,84,2,66,154,66,158,66,128,0,23,88,128,0,3,70,2,66,168,66,172,70,128,0,12,83,128,0,28,199,83,128,0,29,200,84,128,0,9,204,70,128,0,10,206,193,75,128,0,21,210,83,128,0,30,83,5,66,214,66,218,66,228,66,233,66,238,73,128,0,15,79,129,0,14,66,224,84,128,0,2,212,88,128,0,1,213,66,128,0,26,217,78,128,0,22,213,83,128,0,31,214,84,128,0,11,240,249,242,233,231,232,116,129,0,169,67,9,115,2,67,15,67,21,225,238,115,128,248,233,229,242,233,102,128,246,217,114,2,67,34,67,118,238,229,242,226,242,225,227,235,229,116,2,67,49,67,83,236,229,230,116,130,48,12,67,60,67,72,232,225,236,230,247,233,228,244,104,128,255,98,246,229,242,244,233,227,225,108,128,254,65,242,233,231,232,116,130,48,13,67,95,67,107,232,225,236,230,247,233,228,244,104,128,255,99,246,229,242,244,233,227,225,108,128,254,66,240,239,242,225,244,233,239,238,243,241,245,225,242,101,128,51,127,243,241,245,225,242,101,128,51,199,246,229,242,235,231,243,241,245,225,242,101,128,51,198,240,225,242,229,110,128,36,158,242,245,250,229,233,242,111,128,32,162,243,244,242,229,244,227,232,229,100,128,2,151,245,114,2,67,195,67,213,236,121,2,67,202,67,208,225,238,100,128,34,207,239,114,128,34,206,242,229,238,227,121,128,0,164,249,114,4,67,232,67,240,67,247,67,255,194,242,229,246,101,128,246,209,198,236,229,120,128,246,210,226,242,229,246,101,128,246,212,230,236,229,120,128,246,213,100,146,0,100,68,46,69,184,70,208,71,12,71,188,72,142,72,204,73,133,73,146,73,155,73,181,73,206,73,215,75,26,75,34,75,45,75,65,75,93,97,11,68,70,68,81,68,91,68,163,68,226,68,237,68,248,69,61,69,123,69,129,69,159,225,242,237,229,238,233,225,110,128,5,100,226,229,238,231,225,236,105,128,9,166,100,5,68,103,68,112,68,118,68,132,68,148,225,242,225,226,233,99,128,6,54,229,246,97,128,9,38,230,233,238,225,236,225,242,225,226,233,99,128,254,190,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,191,237,229,228,233,225,236,225,242,225,226,233,99,128,254,192,103,3,68,171,68,188,68,202,229,243,104,129,5,188,68,179,232,229,226,242,229,119,128,5,188,231,229,114,129,32,32,68,196,228,226,108,128,32,33,117,2,68,208,68,217,234,225,242,225,244,105,128,10,166,242,237,245,235,232,105,128,10,38,232,233,242,225,231,225,238,97,128,48,96,235,225,244,225,235,225,238,97,128,48,192,108,3,69,0,69,9,69,47,225,242,225,226,233,99,128,6,47,229,116,130,5,211,69,18,69,38,228,225,231,229,243,104,129,251,51,69,29,232,229,226,242,229,119,128,251,51,232,229,226,242,229,119,128,5,211,230,233,238,225,236,225,242,225,226,233,99,128,254,170,237,237,97,3,69,71,69,80,69,92,225,242,225,226,233,99,128,6,79,236,239,247,225,242,225,226,233,99,128,6,79,244,225,238,97,2,69,101,69,115,236,244,239,238,229,225,242,225,226,233,99,128,6,76,242,225,226,233,99,128,6,76,238,228,97,128,9,100,242,231,97,2,69,137,69,146,232,229,226,242,229,119,128,5,167,236,229,230,244,232,229,226,242,229,119,128,5,167,243,233,225,240,238,229,245,237,225,244,225,227,249,242,233,236,236,233,227,227,237,98,128,4,133,98,3,69,192,70,189,70,199,108,9,69,212,69,220,70,77,70,85,70,101,70,112,70,130,70,144,70,155,199,242,225,246,101,128,246,211,97,2,69,226,70,27,238,231,236,229,226,242,225,227,235,229,116,2,69,242,70,6,236,229,230,116,129,48,10,69,251,246,229,242,244,233,227,225,108,128,254,61,242,233,231,232,116,129,48,11,70,16,246,229,242,244,233,227,225,108,128,254,62,114,2,70,33,70,54,227,232,233,238,246,229,242,244,229,228,226,229,236,239,247,227,237,98,128,3,43,242,239,119,2,70,62,70,69,236,229,230,116,128,33,212,242,233,231,232,116,128,33,210,228,225,238,228,97,128,9,101,231,242,225,246,101,129,246,214,70,95,227,237,98,128,3,15,233,238,244,229,231,242,225,108,128,34,44,236,239,247,236,233,238,101,129,32,23,70,124,227,237,98,128,3,51,239,246,229,242,236,233,238,229,227,237,98,128,3,63,240,242,233,237,229,237,239,100,128,2,186,246,229,242,244,233,227,225,108,2,70,168,70,174,226,225,114,128,32,22,236,233,238,229,225,226,239,246,229,227,237,98,128,3,14,239,240,239,237,239,230,111,128,49,9,243,241,245,225,242,101,128,51,200,99,4,70,218,70,225,70,234,71,5,225,242,239,110,128,1,15,229,228,233,236,236,97,128,30,17,233,242,99,2,70,242,70,247,236,101,128,36,211,245,237,230,236,229,248,226,229,236,239,119,128,30,19,242,239,225,116,128,1,17,100,4,71,22,71,103,71,113,71,164,97,4,71,32,71,42,71,49,71,74,226,229,238,231,225,236,105,128,9,161,228,229,246,97,128,9,33,231,117,2,71,56,71,65,234,225,242,225,244,105,128,10,161,242,237,245,235,232,105,128,10,33,108,2,71,80,71,89,225,242,225,226,233,99,128,6,136,230,233,238,225,236,225,242,225,226,233,99,128,251,137,228,232,225,228,229,246,97,128,9,92,232,97,3,71,122,71,132,71],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+20480);allocate([139,226,229,238,231,225,236,105,128,9,162,228,229,246,97,128,9,34,231,117,2,71,146,71,155,234,225,242,225,244,105,128,10,162,242,237,245,235,232,105,128,10,34,239,116,2,71,171,71,180,225,227,227,229,238,116,128,30,11,226,229,236,239,119,128,30,13,101,8,71,206,72,3,72,10,72,35,72,45,72,56,72,101,72,137,99,2,71,212,71,249,233,237,225,236,243,229,240,225,242,225,244,239,114,2,71,230,71,239,225,242,225,226,233,99,128,6,107,240,229,242,243,233,225,110,128,6,107,249,242,233,236,236,233,99,128,4,52,231,242,229,101,128,0,176,232,105,2,72,17,72,26,232,229,226,242,229,119,128,5,173,242,225,231,225,238,97,128,48,103,233,227,239,240,244,233,99,128,3,239,235,225,244,225,235,225,238,97,128,48,199,108,2,72,62,72,85,229,244,101,2,72,70,72,77,236,229,230,116,128,35,43,242,233,231,232,116,128,35,38,244,97,129,3,180,72,92,244,245,242,238,229,100,128,1,141,238,239,237,233,238,225,244,239,242,237,233,238,245,243,239,238,229,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,248,250,104,128,2,164,104,2,72,148,72,198,97,3,72,156,72,166,72,173,226,229,238,231,225,236,105,128,9,167,228,229,246,97,128,9,39,231,117,2,72,180,72,189,234,225,242,225,244,105,128,10,167,242,237,245,235,232,105,128,10,39,239,239,107,128,2,87,105,6,72,218,73,11,73,71,73,82,73,93,73,103,97,2,72,224,72,246,236,249,244,233,235,225,244,239,238,239,115,129,3,133,72,240,227,237,98,128,3,68,237,239,238,100,129,38,102,72,255,243,245,233,244,247,232,233,244,101,128,38,98,229,242,229,243,233,115,133,0,168,73,30,73,38,73,49,73,55,73,63,225,227,245,244,101,128,246,215,226,229,236,239,247,227,237,98,128,3,36,227,237,98,128,3,8,231,242,225,246,101,128,246,216,244,239,238,239,115,128,3,133,232,233,242,225,231,225,238,97,128,48,98,235,225,244,225,235,225,238,97,128,48,194,244,244,239,237,225,242,107,128,48,3,246,105,2,73,110,73,121,228,101,129,0,247,73,117,115,128,34,35,243,233,239,238,243,236,225,243,104,128,34,21,234,229,227,249,242,233,236,236,233,99,128,4,82,235,243,232,225,228,101,128,37,147,108,2,73,161,73,172,233,238,229,226,229,236,239,119,128,30,15,243,241,245,225,242,101,128,51,151,109,2,73,187,73,195,225,227,242,239,110,128,1,17,239,238,239,243,240,225,227,101,128,255,68,238,226,236,239,227,107,128,37,132,111,10,73,237,73,249,74,3,74,14,74,25,74,97,74,102,74,113,74,228,74,254,227,232,225,228,225,244,232,225,105,128,14,14,228,229,235,244,232,225,105,128,14,20,232,233,242,225,231,225,238,97,128,48,105,235,225,244,225,235,225,238,97,128,48,201,236,236,225,114,132,0,36,74,40,74,51,74,63,74,74,233,238,230,229,242,233,239,114,128,246,227,237,239,238,239,243,240,225,227,101,128,255,4,239,236,228,243,244,249,236,101,128,247,36,115,2,74,80,74,87,237,225,236,108,128,254,105,245,240,229,242,233,239,114,128,246,228,238,103,128,32,171,242,245,243,241,245,225,242,101,128,51,38,116,6,74,127,74,144,74,166,74,177,74,209,74,216,225,227,227,229,238,116,129,2,217,74,138,227,237,98,128,3,7,226,229,236,239,247,99,2,74,155,74,160,237,98,128,3,35,239,237,98,128,3,35,235,225,244,225,235,225,238,97,128,48,251,236,229,243,115,2,74,186,74,190,105,128,1,49,106,129,246,190,74,196,243,244,242,239,235,229,232,239,239,107,128,2,132,237,225,244,104,128,34,197,244,229,228,227,233,242,227,236,101,128,37,204,245,226,236,229,249,239,228,240,225,244,225,104,129,251,31,74,245,232,229,226,242,229,119,128,251,31,247,238,244,225,227,107,2,75,9,75,20,226,229,236,239,247,227,237,98,128,3,30,237,239,100,128,2,213,240,225,242,229,110,128,36,159,243,245,240,229,242,233,239,114,128,246,235,116,2,75,51,75,57,225,233,108,128,2,86,239,240,226,225,114,128,1,140,117,2,75,71,75,82,232,233,242,225,231,225,238,97,128,48,101,235,225,244,225,235,225,238,97,128,48,197,122,132,1,243,75,105,75,114,75,133,75,170,225,236,244,239,238,101,128,2,163,99,2,75,120,75,127,225,242,239,110,128,1,198,245,242,108,128,2,165,101,2,75,139,75,159,225,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,225,227,249,242,233,236,236,233,99,128,4,85,232,229,227,249,242,233,236,236,233,99,128,4,95,101,151,0,101,75,233,75,252,76,30,77,4,77,66,77,99,77,111,77,134,77,187,79,43,79,101,79,203,80,63,80,198,81,17,81,48,81,110,81,163,82,98,82,231,82,251,83,39,83,130,97,2,75,239,75,246,227,245,244,101,128,0,233,242,244,104,128,38,65,98,3,76,4,76,13,76,23,229,238,231,225,236,105,128,9,143,239,240,239,237,239,230,111,128,49,28,242,229,246,101,128,1,21,99,5,76,42,76,115,76,129,76,161,76,250,97,2,76,48,76,109,238,228,242,97,3,76,59,76,66,76,77,228,229,246,97,128,9,13,231,245,234,225,242,225,244,105,128,10,141,246,239,247,229,236,243,233,231,110,2,76,91,76,98,228,229,246,97,128,9,69,231,245,234,225,242,225,244,105,128,10,197,242,239,110,128,1,27,229,228,233,236,236,225,226,242,229,246,101,128,30,29,104,2,76,135,76,146,225,242,237,229,238,233,225,110,128,5,101,249,233,247,238,225,242,237,229,238,233,225,110,128,5,135,233,242,99,2,76,169,76,174,236,101,128,36,212,245,237,230,236,229,120,134,0,234,76,195,76,203,76,211,76,222,76,230,76,242,225,227,245,244,101,128,30,191,226,229,236,239,119,128,30,25,228,239,244,226,229,236,239,119,128,30,199,231,242,225,246,101,128,30,193,232,239,239,235,225,226,239,246,101,128,30,195,244,233,236,228,101,128,30,197,249,242,233,236,236,233,99,128,4,84,100,4,77,14,77,24,77,30,77,40,226,236,231,242,225,246,101,128,2,5,229,246,97,128,9,15,233,229,242,229,243,233,115,128,0,235,239,116,130,1,23,77,49,77,58,225,227,227,229,238,116,128,1,23,226,229,236,239,119,128,30,185,101,2,77,72,77,83,231,245,242,237,245,235,232,105,128,10,15,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,71,230,227,249,242,233,236,236,233,99,128,4,68,103,2,77,117,77,124,242,225,246,101,128,0,232,245,234,225,242,225,244,105,128,10,143,104,4,77,144,77,155,77,166,77,176,225,242,237,229,238,233,225,110,128,5,103,226,239,240,239,237,239,230,111,128,49,29,233,242,225,231,225,238,97,128,48,72,239,239,235,225,226,239,246,101,128,30,187,105,4,77,197,77,208,79,10,79,25,226,239,240,239,237,239,230,111,128,49,31,231,232,116,142,0,56,77,242,77,251,78,5,78,35,78,42,78,80,78,105,78,150,78,184,78,196,78,207,78,240,78,248,79,3,225,242,225,226,233,99,128,6,104,226,229,238,231,225,236,105,128,9,238,227,233,242,227,236,101,129,36,103,78,16,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,145,228,229,246,97,128,9,110,229,229,110,2,78,50,78,59,227,233,242,227,236,101,128,36,113,112,2,78,65,78,72,225,242,229,110,128,36,133,229,242,233,239,100,128,36,153,231,117,2,78,87,78,96,234,225,242,225,244,105,128,10,238,242,237,245,235,232,105,128,10,110,104,2,78,111,78,137,97,2,78,117,78,128,227,235,225,242,225,226,233,99,128,6,104,238,231,250,232,239,117,128,48,40,238,239,244,229,226,229,225,237,229,100,128,38,107,105,2,78,156,78,174,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,39,238,230,229,242,233,239,114,128,32,136,237,239,238,239,243,240,225,227,101,128,255,24,239,236,228,243,244,249,236,101,128,247,56,112,2,78,213,78,220,225,242,229,110,128,36,123,229,114,2,78,227,78,233,233,239,100,128,36,143,243,233,225,110,128,6,248,242,239,237,225,110,128,33,119,243,245,240,229,242,233,239,114,128,32,120,244,232,225,105,128,14,88,238,246,229,242,244,229,228,226,242,229,246,101,128,2,7,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,101,107,2,79,49,79,73,225,244,225,235,225,238,97,129,48,168,79,61,232,225,236,230,247,233,228,244,104,128,255,116,111,2,79,79,79,94,238,235,225,242,231,245,242,237,245,235,232,105,128,10,116,242,229,225,110,128,49,84,108,3,79,109,79,120,79,181,227,249,242,233,236,236,233,99,128,4,59,101,2,79,126,79,133,237,229,238,116,128,34,8,246,229,110,3,79,143,79,152,79,173,227,233,242,227,236,101,128,36,106,112,2,79,158,79,165,225,242,229,110,128,36,126,229,242,233,239,100,128,36,146,242,239,237,225,110,128,33,122,236,233,240,243,233,115,129,32,38,79,192,246,229,242,244,233,227,225,108,128,34,238,109,5,79,215,79,243,79,254,80,18,80,29,225,227,242,239,110,130,1,19,79,227,79,235,225,227,245,244,101,128,30,23,231,242,225,246,101,128,30,21,227,249,242,233,236,236,233,99,128,4,60,228,225,243,104,129,32,20,80,7,246,229,242,244,233,227,225,108,128,254,49,239,238,239,243,240,225,227,101,128,255,69,112,2,80,35,80,55,232,225,243,233,243,237,225,242,235,225,242,237,229,238,233,225,110,128,5,91,244,249,243,229,116,128,34,5,110,6,80,77,80,88,80,99,80,143,80,175,80,190,226,239,240,239,237,239,230,111,128,49,35,227,249,242,233,236,236,233,99,128,4,61,100,2,80,105,80,124,225,243,104,129,32,19,80,113,246,229,242,244,233,227,225,108,128,254,50,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,163,103,130,1,75,80,151,80,162,226,239,240,239,237,239,230,111,128,49,37,232,229,227,249,242,233,236,236,233,99,128,4,165,232,239,239,235,227,249,242,233,236,236,233,99,128,4,200,243,240,225,227,101,128,32,2,111,3,80,206,80,214,80,223,231,239,238,229,107,128,1,25,235,239,242,229,225,110,128,49,83,240,229,110,130,2,91,80,233,80,242,227,236,239,243,229,100,128,2,154,242,229,246,229,242,243,229,100,130,2,92,81,1,81,10,227,236,239,243,229,100,128,2,94,232,239,239,107,128,2,93,112,2,81,23,81,30,225,242,229,110,128,36,160,243,233,236,239,110,129,3,181,81,40,244,239,238,239,115,128,3,173,241,117,2,81,55,81,99,225,108,130,0,61,81,64,81,76,237,239,238,239,243,240,225,227,101,128,255,29,115,2,81,82,81,89,237,225,236,108,128,254,102,245,240,229,242,233,239,114,128,32,124,233,246,225,236,229,238,227,101,128,34,97,114,3,81,118,81,129,81,140,226,239,240,239,237,239,230,111,128,49,38,227,249,242,233,236,236,233,99,128,4,64,229,246,229,242,243,229,100,129,2,88,81,152,227,249,242,233,236,236,233,99,128,4,77,115,6,81,177,81,188,81,208,82,33,82,78,82,88,227,249,242,233,236,236,233,99,128,4,65,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,171,104,132,2,131,81,220,81,227,82,2,82,17,227,245,242,108,128,2,134,239,242,116,2,81,235,81,242,228,229,246,97,128,9,14,246,239,247,229,236,243,233,231,238,228,229,246,97,128,9,70,242,229,246,229,242,243,229,228,236,239,239,112,128,1,170,243,241,245,225,244,242,229,246,229,242,243,229,100,128,2,133,237,225,236,108,2,82,42,82,53,232,233,242,225,231,225,238,97,128,48,71,235,225,244,225,235,225,238,97,129,48,167,82,66,232,225,236,230,247,233,228,244,104,128,255,106,244,233,237,225,244,229,100,128,33,46,245,240,229,242,233,239,114,128,246,236,116,5,82,110,82,136,82,140,82,157,82,223,97,130,3,183,82,118,82,128,242,237,229,238,233,225,110,128,5,104,244,239,238,239,115,128,3,174,104,128,0,240,233,236,228,101,129,30,189,82,149,226,229,236,239,119,128,30,27,238,225,232,244,97,3,82,169,82,201,82,210,230,239,245,235,104,2,82,179,82,188,232,229,226,242,229,119,128,5,145,236,229,230,244,232,229,226,242,229,119,128,5,145,232,229,226,242,229,119,128,5,145,236,229,230,244,232,229,226,242,229,119,128,5,145,245,242,238,229,100,128,1,221,117,2,82,237,82,246,235,239,242,229,225,110,128,49,97,242,111,128,32,172,246,239,247,229,236,243,233,231,110,3,83,11,83,21,83,28,226,229,238,231,225,236,105,128,9,199,228,229,246,97,128,9,71,231,245,234,225,242,225,244,105,128,10,199,120,2,83,45,83,118,227,236,225,109,132,0,33,83,60,83,71,83,98,83,110,225,242,237,229,238,233,225,110,128,5,92,100,2,83,77,83,82,226,108,128,32,60,239,247,110,129,0,161,83,90,243,237,225,236,108,128,247,161,237,239,238,239,243,240,225,227,101,128,255,1,243,237,225,236,108,128,247,33,233,243,244,229,238,244,233,225,108,128,34,3,250,104,131,2,146,83,141,83,160,83,171,99,2,83,147,83,154,225,242,239,110,128,1,239,245,242,108,128,2,147,242,229,246,229,242,243,229,100,128,1,185,244,225,233,108,128,1,186,102,140,0,102,83,206,84,32,84,43,84,52,84,64,84,167,84,183,86,191,86,204,86,230,88,107,88,115,97,4,83,216,83,223,83,234,83,245,228,229,246,97,128,9,94,231,245,242,237,245,235,232,105,128,10,94,232,242,229,238,232,229,233,116,128,33,9,244,232,97,3,83,255,84,8,84,20,225,242,225,226,233,99,128,6,78,236,239,247,225,242,225,226,233,99,128,6,78,244,225,238,225,242,225,226,233,99,128,6,75,226,239,240,239,237,239,230,111,128,49,8,227,233,242,227,236,101,128,36,213,228,239,244,225,227,227,229,238,116,128,30,31,101,3,84,72,84,150,84,160,104,4,84,82,84,105,84,119,84,135,225,114,2,84,89,84,96,225,226,233,99,128,6,65,237,229,238,233,225,110,128,5,134,230,233,238,225,236,225,242,225,226,233,99,128,254,210,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,211,237,229,228,233,225,236,225,242,225,226,233,99,128,254,212,233,227,239,240,244,233,99,128,3,229,237,225,236,101,128,38,64,102,130,251,0,84,175,84,179,105,128,251,3,108,128,251,4,105,136,251,1,84,203,84,243,84,254,85,20,85,142,85,159,85,167,85,180,230,244,229,229,110,2,84,213,84,222,227,233,242,227,236,101,128,36,110,112,2,84,228,84,235,225,242,229,110,128,36,130,229,242,233,239,100,128,36,150,231,245,242,229,228,225,243,104,128,32,18,236,236,229,100,2,85,7,85,13,226,239,120,128,37,160,242,229,227,116,128,37,172,238,225,108,5,85,34,85,73,85,90,85,107,85,123,235,225,102,130,5,218,85,44,85,64,228,225,231,229,243,104,129,251,58,85,55,232,229,226,242,229,119,128,251,58,232,229,226,242,229,119,128,5,218,237,229,109,129,5,221,85,81,232,229,226,242,229,119,128,5,221,238,245,110,129,5,223,85,98,232,229,226,242,229,119,128,5,223,240,101,129,5,227,85,114,232,229,226,242,229,119,128,5,227,244,243,225,228,105,129,5,229,85,133,232,229,226,242,229,119,128,5,229,242,243,244,244,239,238,229,227,232,233,238,229,243,101,128,2,201,243,232,229,249,101,128,37,201,244,225,227,249,242,233,236,236,233,99,128,4,115,246,101,142,0,53,85,213,85,222,85,232,86,6,86,13,86,23,86,48,86,75,86,109,86,121,86,132,86,165,86,173,86,184,225,242,225,226,233,99,128,6,101,226,229,238,231,225,236,105,128,9,235,227,233,242,227,236,101,129,36,100,85,243,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,142,228,229,246,97,128,9,107,229,233,231,232,244,232,115,128,33,93,231,117,2,86,30,86,39,234,225,242,225,244,105,128,10,235,242,237,245,235,232,105,128,10,107,232,97,2,86,55,86,66,227,235,225,242,225,226,233,99,128,6,101,238,231,250,232,239,117,128,48,37,105,2,86,81,86,99,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,36,238,230,229,242,233,239,114,128,32,133,237,239,238,239,243,240,225,227,101,128,255,21,239,236,228,243,244,249,236,101,128,247,53,112,2,86,138,86,145,225,242,229,110,128,36,120,229,114,2,86,152,86,158,233,239,100,128,36,140,243,233,225,110,128,6,245,242,239,237,225,110,128,33,116,243,245,240,229,242,233,239,114,128,32,117,244,232,225,105,128,14,85,108,129,251,2,86,197,239,242,233,110,128,1,146,109,2,86,210,86,221,239,238,239,243,240,225,227,101,128,255,70,243,241,245,225,242,101,128,51,153,111,4,86,240,87,6,87,18,87,25,230,97,2,86,247,86,255,238,244,232,225,105,128,14,31,244,232,225,105,128,14,29,238,231,237,225,238,244,232,225,105,128,14,79,242,225,236,108,128,34,0,245,114,142,0,52,87,58,87,67,87,77,87,107,87,114,87,139,87,166,87,200,87,212,87,231,87,242,88,19,88,27,88,38,225,242,225,226,233,99,128,6,100,226,229,238,231,225,236,105,128,9,234,227,233,242,227,236,101,129,36,99,87,88,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,141,228,229,246,97,128,9,106,231,117,2,87,121,87,130,234,225,242,225,244,105,128,10,234,242,237,245,235,232,105,128,10,106,232,97,2,87,146,87,157,227,235,225,242,225,226,233,99,128,6,100,238,231,250,232,239,117,128,48,36,105,2,87,172,87,190,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,35,238,230,229,242,233,239,114,128,32,132,237,239,238,239,243,240,225,227,101,128,255,20,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,247,239,236,228,243,244,249,236,101,128,247,52,112,2,87,248,87,255,225,242,229,110,128,36,119,229,114,2,88,6,88,12,233,239,100,128,36,139,243,233,225,110,128,6,244,242,239,237,225,110,128,33,115,243,245,240,229,242,233,239,114,128,32,116,116,2,88,44,88,82,229,229,110,2,88,52,88,61,227,233,242,227,236,101,128,36,109,112,2,88,67,88,74,225,242,229,110,128,36,129,229,242,233,239,100,128,36,149,104,2,88,88,88,93,225,105,128,14,84,244,239,238,229,227,232,233,238,229,243,101,128,2,203,240,225,242,229,110,128,36,161,242,97,2,88,122,88,130,227,244,233,239,110,128,32,68,238,99,128,32,163,103,144,0,103,88,171,89,117,89,140,89,201,89,218,90,139,91,132,91,217,91,230,92,88,92,113,92,141,92,163,93,108,93,130,93,232,97,9,88,191,88,201,88,208,88,215,89,23,89,48,89,59,89,70,89,104,226,229,238,231,225,236,105,128,9,151,227,245,244,101,128,1,245,228,229,246,97,128,9,23,102,4,88,225,88,234,88,248,89,8,225,242,225,226,233,99,128,6,175,230,233,238,225,236,225,242,225,226,233,99,128,251,147,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,148,237,229,228,233,225,236,225,242,225,226,233,99,128,251,149,231,117,2,89,30,89,39,234,225,242,225,244,105,128,10,151,242,237,245,235,232,105,128,10,23,232,233,242,225,231,225,238,97,128,48,76,235,225,244,225,235,225,238,97,128,48,172,237,237,97,130,3,179,89,80,89,93,236,225,244,233,238,243,237,225,236,108,128,2,99,243,245,240,229,242,233,239,114,128,2,224,238,231,233,225,227,239,240,244,233,99,128,3,235,98,2,89,123,89,133,239,240,239,237,239,230,111,128,49,13,242,229,246,101,128,1,31,99,4,89,150,89,157,89,166,89,188,225,242,239,110,128,1,231,229,228,233,236,236,97,128,1,35,233,242,99,2,89,174,89,179,236,101,128,36,214,245,237,230,236,229,120,128,1,29,239,237,237,225,225,227,227,229,238,116,128,1,35,228,239,116,129,1,33,89,209,225,227,227,229,238,116,128,1,33,101,6,89,232,89,243,89,254,90,9,90,28,90,130,227,249,242,233,236,236,233,99,128,4,51,232,233,242,225,231,225,238,97,128,48,82,235,225,244,225,235,225,238,97,128,48,178,239,237,229,244,242,233,227,225,236,236,249,229,241,245,225,108,128,34,81,114,3,90,36,90,85,90,95,229,243,104,3,90,46,90,61,90,70,225,227,227,229,238,244,232,229,226,242,229,119,128,5,156,232,229,226,242,229,119,128,5,243,237,245,241,228,225,237,232,229,226,242,229,119,128,5,157,237,225,238,228,226,236,115,128,0,223,243,232,225,249,233,109,2,90,106,90,121,225,227,227,229,238,244,232,229,226,242,229,119,128,5,158,232,229,226,242,229,119,128,5,244,244,225,237,225,242,107,128,48,19,104,5,90,151,91,28,91,91,91,116,91,122,97,4,90,161,90,171,90,194,90,219,226,229,238,231,225,236,105,128,9,152,100,2,90,177,90,188,225,242,237,229,238,233,225,110,128,5,114,229,246,97,128,9,24,231,117,2,90,201,90,210,234,225,242,225,244,105,128,10,152,242,237,245,235,232,105,128,10,24,233,110,4,90,230,90,239,90,253,91,13,225,242,225,226,233,99,128,6,58,230,233,238,225,236,225,242,225,226,233,99,128,254,206,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,207,237,229,228,233,225,236,225,242,225,226,233,99,128,254,208,101,3,91,36,91,57,91,74,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,149,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,147,245,240,244,245,242,238,227,249,242,233,236,236,233,99,128,4,145,232,97,2,91,98,91,105,228,229,246,97,128,9,90,231,245,242,237,245,235,232,105,128,10,90,239,239,107,128,2,96,250,243,241,245,225,242,101,128,51,147,105,3,91,140,91,151,91,162,232,233,242,225,231,225,238,97,128,48,78,235,225,244,225,235,225,238,97,128,48,174,109,2,91,168,91,179,225,242,237,229,238,233,225,110,128,5,99,229,108,130,5,210,91,188,91,208,228,225,231,229,243,104,129,251,50,91,199,232,229,226,242,229,119,128,251,50,232,229,226,242,229,119,128,5,210,234,229,227,249,242,233,236,236,233,99,128,4,83,236,239,244,244,225,108,2,91,241,92,2,233,238,246,229,242,244,229,228,243,244,242,239,235,101,128,1,190,243,244,239,112,132,2,148,92,17,92,28,92,34,92,66,233,238,246,229,242,244,229,100,128,2,150,237,239,100,128,2,192,242,229,246,229,242,243,229,100,130,2,149,92,49,92,55,237,239,100,128,2,193,243,245,240,229,242,233,239,114,128,2,228,243,244,242,239,235,101,129,2,161,92,77,242,229,246,229,242,243,229,100,128,2,162,109,2,92,94,92,102,225,227,242,239,110,128,30,33,239,238,239,243,240,225,227,101,128,255,71,111,2,92,119,92,130,232,233,242,225,231,225,238,97,128,48,84,235,225,244,225,235,225,238,97,128,48,180,240,97,2,92,148,92,154,242,229,110,128,36,162,243,241,245,225,242,101,128,51,172,114,2,92,169,93,10,97,2,92,175,92,183,228,233,229,238,116,128,34,7,246,101,134,0,96,92,200,92,211,92,228,92,235,92,244,93,0,226,229,236,239,247,227,237,98,128,3,22,99,2,92,217,92,222,237,98,128,3,0,239,237,98,128,3,0,228,229,246,97,128,9,83,236,239,247,237,239,100,128,2,206,237,239,238,239,243,240,225,227,101,128,255,64,244,239,238,229,227,237,98,128,3,64,229,225,244,229,114,132,0,62,93,26,93,45,93,57,93,100,229,241,245,225,108,129,34,101,93,36,239,242,236,229,243,115,128,34,219,237,239,238,239,243,240,225,227,101,128,255,30,111,2,93,63,93,89,114,2,93,69,93,82,229,241,245,233,246,225,236,229,238,116,128,34,115,236,229,243,115,128,34,119,246,229,242,229,241,245,225,108,128,34,103,243,237,225,236,108,128,254,101,115,2,93,114,93,122,227,242,233,240,116,128,2,97,244,242,239,235,101,128,1,229,117,4,93,140,93,151,93,208,93,219,232,233,242,225,231,225,238,97,128,48,80,233,108,2,93,158,93,183,236,229,237,239,116,2,93,168,93,175,236,229,230,116,128,0,171,242,233,231,232,116,128,0,187,243,233,238,231,108,2,93,193,93,200,236,229,230,116,128,32,57,242,233,231,232,116,128,32,58,235,225,244,225,235,225,238,97,128,48,176,242,225,237,245,243,241,245,225,242,101,128,51,24,249,243,241,245,225,242,101,128,51,201,104,144,0,104,94,22,96,164,96,199,96,236,97,20,98,164,98,184,99,149,99,161,99,173,100,241,100,249,101,4,101,13,101,93,101,97,97,13,94,50,94,89,94,99,94,129,94,154,94,232,94,244,95,13,95,28,95,57,95,70,95,128,95,137,97,2,94,56,94,75,226,235,232,225,243,233,225,238,227,249,242,233,236,236,233,99,128,4,169,236,244,239,238,229,225,242,225,226,233,99,128,6,193,226,229,238,231,225,236,105,128,9,185,228,101,2,94,106,94,124,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,179,246,97,128,9,57,231,117,2,94,136,94,145,234,225,242,225,244,105,128,10,185,242,237,245,235,232,105,128,10,57,104,4,94,164,94,173,94,187,94,217,225,242,225,226,233,99,128,6,45,230,233,238,225,236,225,242,225,226,233,99,128,254,162,105,2,94,193,94,208,238,233,244,233,225,236,225,242,225,226,233,99,128,254,163,242,225,231,225,238,97,128,48,111,237,229,228,233,225,236,225,242,225,226,233,99,128,254,164,233,244,245,243,241,245,225,242,101,128,51,42,235,225,244,225,235,225,238,97,129,48,207,95,1,232,225,236,230,247,233,228,244,104,128,255,138,236,225,238,244,231,245,242,237,245,235,232,105,128,10,77,237,250,97,2,95,36,95,45,225,242,225,226,233,99,128,6,33,236,239,247,225,242,225,226,233,99,128,6,33,238,231,245,236,230,233,236,236,229,114,128,49,100,114,2,95,76,95,92,228,243,233,231,238,227,249,242,233,236,236,233,99,128,4,74,240,239,239,110,2,95,101,95,114,236,229,230,244,226,225,242,226,245,112,128,33,188,242,233,231,232,244,226,225,242,226,245,112,128,33,192,243,241,245,225,242,101,128,51,202,244,225,102,3,95,147,95,239,96,74,240,225,244,225,104,134,5,178,95,167,95,172,95,186,95,195,95,210,95,226,177,54,128,5,178,50,2,95,178,95,182,51,128,5,178,102,128,5,178,232,229,226,242,229,119,128,5,178,238,225,242,242,239,247,232,229,226,242,229,119,128,5,178,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,178,247,233,228,229,232,229,226,242,229,119,128,5,178,241,225,237,225,244,115,135,5,179,96,6,96,11,96,16,96,21,96,30,96,45,96,61,177,98,128,5,179,178,56,128,5,179,179,52,128,5,179,232,229,226,242,229,119,128,5,179,238,225,242,242,239,247,232,229,226,242,229,119,128,5,179,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,179,247,233,228,229,232,229,226,242,229,119,128,5,179,243,229,231,239,108,135,5,177,96,96,96,101,96,106,96,111,96,120,96,135,96,151,177,55,128,5,177,178,52,128,5,177,179,48,128,5,177,232,229,226,242,229,119,128,5,177,238,225,242,242,239,247,232,229,226,242,229,119,128,5,177,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,177,247,233,228,229,232,229,226,242,229,119,128,5,177,98,3,96,172,96,177,96,187,225,114,128,1,39,239,240,239,237,239,230,111,128,49,15,242,229,246,229,226,229,236,239,119,128,30,43,99,2,96,205,96,214,229,228,233,236,236,97,128,30,41,233,242,99,2,96,222,96,227,236,101,128,36,215,245,237,230,236,229,120,128,1,37,100,2,96,242,96,252,233,229,242,229,243,233,115,128,30,39,239,116,2,97,3,97,12,225,227,227,229,238,116,128,30,35,226,229,236,239,119,128,30,37,101,136,5,212,97,40,97,73,97,93,98,66,98,82,98,127,98,136,98,149,225,242,116,129,38,101,97,48,243,245,233,116,2,97,57,97,65,226,236,225,227,107,128,38,101,247,232,233,244,101,128,38,97,228,225,231,229,243,104,129,251,52,97,84,232,229,226,242,229,119,128,251,52,104,6,97,107,97,135,97,143,97,193,97,239,98,32,97,2,97,113,97,127,236,244,239,238,229,225,242,225,226,233,99,128,6,193,242,225,226,233,99,128,6,71,229,226,242,229,119,128,5,212,230,233,238,225,236,97,2,97,154,97,185,236,116,2,97,161,97,173,239,238,229,225,242,225,226,233,99,128,251,167,244,247,239,225,242,225,226,233,99,128,254,234,242,225,226,233,99,128,254,234,232,225,237,250,225,225,226,239,246,101,2,97,208,97,222,230,233,238,225,236,225,242,225,226,233,99,128,251,165,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,251,164,105,2,97,245,98,23,238,233,244,233,225,236,97,2,98,1,98,15,236,244,239,238,229,225,242,225,226,233,99,128,251,168,242,225,226,233,99,128,254,235,242,225,231,225,238,97,128,48,120,237,229,228,233,225,236,97,2,98,44,98,58,236,244,239,238,229,225,242,225,226,233,99,128,251,169,242,225,226,233,99,128,254,236,233,243,229,233,229,242,225,243,241,245,225,242,101,128,51,123,107,2,98,88,98,112,225,244,225,235,225,238,97,129,48,216,98,100,232,225,236,230,247,233,228,244,104,128,255,141,245,244,225,225,242,245,243,241,245,225,242,101,128,51,54,238,231,232,239,239,107,128,2,103,242,245,244,245,243,241,245,225,242,101,128,51,57,116,129,5,215,98,155,232,229,226,242,229,119,128,5,215,232,239,239,107,129,2,102,98,173,243,245,240,229,242,233,239,114,128,2,177,105,4,98,194,99,23,99,34,99,59,229,245,104,4,98,206,98,241,99,0,99,9,97,2,98,212,98,227,227,233,242,227,236,229,235,239,242,229,225,110,128,50,123,240,225,242,229,238,235,239,242,229,225,110,128,50,27,227,233,242,227,236,229,235,239,242,229,225,110,128,50,109,235,239,242,229,225,110,128,49,78,240,225,242,229,238,235,239,242,229,225,110,128,50,13,232,233,242,225,231,225,238,97,128,48,114,235,225,244,225,235,225,238,97,129,48,210,99,47,232,225,236,230,247,233,228,244,104,128,255,139,242,233,113,134,5,180,99,77,99,82,99,96,99,105,99,120,99,136,177,52,128,5,180,50,2,99,88,99,92,49,128,5,180,100,128,5,180,232,229,226,242,229,119,128,5,180,238,225,242,242,239,247,232,229,226,242,229,119,128,5,180,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,180,247,233,228,229,232,229,226,242,229,119,128,5,180,236,233,238,229,226,229,236,239,119,128,30,150,237,239,238,239,243,240,225,227,101,128,255,72,111,9,99,193,99,204,99,228,99,253,100,85,100,98,100,184,100,224,100,235,225,242,237,229,238,233,225,110,128,5,112,232,105,2,99,211,99,219,240,244,232,225,105,128,14,43,242,225,231,225,238,97,128,48,123,235,225,244,225,235,225,238,97,129,48,219,99,241,232,225,236,230,247,233,228,244,104,128,255,142,236,225,109,135,5,185,100,17,100,22,100,27,100,32,100,41,100,56,100,72,177,57,128,5,185,178,54,128,5,185,179,50,128,5,185,232,229,226,242,229,119,128,5,185,238,225,242,242,239,247,232,229,226,242,229,119,128,5,185,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,185,247,233,228,229,232,229,226,242,229,119,128,5,185,238,239,235,232,245,235,244,232,225,105,128,14,46,111,2,100,104,100,174,107,4,100,114,100,126,100,132,100,154,225,226,239,246,229,227,239,237,98,128,3,9,227,237,98,128,3,9,240,225,236,225,244,225,236,233,250,229,228,226,229,236,239,247,227,237,98,128,3,33,242,229,244,242,239,230,236,229,248,226,229,236,239,247,227,237,98,128,3,34,238,243,241,245,225,242,101,128,51,66,114,2,100,190,100,217,105,2,100,196,100,205,227,239,240,244,233,99,128,3,233,250,239,238,244,225,236,226,225,114,128,32,21,238,227,237,98,128,3,27,244,243,240,242,233,238,231,115,128,38,104,245,243,101,128,35,2,240,225,242,229,110,128,36,163,243,245,240,229,242,233,239,114,128,2,176,244,245,242,238,229,100,128,2,101,117,4,101,23,101,34,101,47,101,72,232,233,242,225,231,225,238,97,128,48,117,233,233,244,239,243,241,245,225,242,101,128,51,51,235,225,244,225,235,225,238,97,129,48,213,101,60,232,225,236,230,247,233,228,244,104,128,255,140,238,231,225,242,245,237,236,225,245,116,129,2,221,101,87,227,237,98,128,3,11,118,128,1,149,249,240,232,229,110,132,0,45,101,113,101,124,101,136,101,159,233,238,230,229,242,233,239,114,128,246,229,237,239,238,239,243,240,225,227,101,128,255,13,115,2,101,142,101,149,237,225,236,108,128,254,99,245,240,229,242,233,239,114,128,246,230,244,247,111,128,32,16,105,149,0,105,101,211,101,234,102,12,102,59,105,197,106,61,106,98,106,125,107,31,107,35,107,73,107,95,107,179,108,88,108,163,108,171,108,184,109,15,109,72,109,100,109,144,225,99,2,101,218,101,224,245,244,101,128,0,237,249,242,233,236,236,233,99,128,4,79,98,3,101,242,101,251,102,5,229,238,231,225,236,105,128,9,135,239,240,239,237,239,230,111,128,49,39,242,229,246,101,128,1,45,99,3,102,20,102,27,102,49,225,242,239,110,128,1,208,233,242,99,2,102,35,102,40,236,101,128,36,216,245,237,230,236,229,120,128,0,238,249,242,233,236,236,233,99,128,4,86,100,4,102,69,102,79,105,154,105,187,226,236,231,242,225,246,101,128,2,9,101,2,102,85,105,149,239,231,242,225,240,104,7,102,106,102,120,102,133,105,62,105,93,105,106,105,118,229,225,242,244,232,227,233,242,227,236,101,128,50,143,230,233,242,229,227,233,242,227,236,101,128,50,139,233,99,14,102,164,102,180,103,23,103,77,103,143,103,172,103,188,103,245,104,38,104,50,104,77,104,144,105,26,105,55,225,236,236,233,225,238,227,229,240,225,242,229,110,128,50,63,99,4,102,190,102,201,102,215,102,222,225,236,236,240,225,242,229,110,128,50,58,229,238,244,242,229,227,233,242,227,236,101,128,50,165,236,239,243,101,128,48,6,111,3,102,230,102,245,103,9,237,237,97,129,48,1,102,238,236,229,230,116,128,255,100,238,231,242,225,244,245,236,225,244,233,239,238,240,225,242,229,110,128,50,55,242,242,229,227,244,227,233,242,227,236,101,128,50,163,101,3,103,31,103,43,103,60,225,242,244,232,240,225,242,229,110,128,50,47,238,244,229,242,240,242,233,243,229,240,225,242,229,110,128,50,61,248,227,229,236,236,229,238,244,227,233,242,227,236,101,128,50,157,102,2,103,83,103,98,229,243,244,233,246,225,236,240,225,242,229,110,128,50,64,105,2,103,104,103,133,238,225,238,227,233,225,108,2,103,116,103,125,227,233,242,227,236,101,128,50,150,240,225,242,229,110,128,50,54,242,229,240,225,242,229,110,128,50,43,104,2,103,149,103,160,225,246,229,240,225,242,229,110,128,50,50,233,231,232,227,233,242,227,236,101,128,50,164,233,244,229,242,225,244,233,239,238,237,225,242,107,128,48,5,108,3,103,196,103,222,103,234,225,226,239,114,2,103,205,103,214,227,233,242,227,236,101,128,50,152,240,225,242,229,110,128,50,56,229,230,244,227,233,242,227,236,101,128,50,167,239,247,227,233,242,227,236,101,128,50,166,109,2,103,251,104,27,101,2,104,1,104,16,228,233,227,233,238,229,227,233,242,227,236,101,128,50,169,244,225,236,240,225,242,229,110,128,50,46,239,239,238,240,225,242,229,110,128,50,42,238,225,237,229,240,225,242,229,110,128,50,52,112,2,104,56,104,64,229,242,233,239,100,128,48,2,242,233,238,244,227,233,242,227,236,101,128,50,158,114,2,104,83,104,131,101,3,104,91,104,102,104,117,225,227,232,240,225,242,229,110,128,50,67,240,242,229,243,229,238,244,240,225,242,229,110,128,50,57,243,239,245,242,227,229,240,225,242,229,110,128,50,62,233,231,232,244,227,233,242,227,236,101,128,50,168,115,5,104,156,104,185,104,199,104,224,104,252,101,2,104,162,104,175,227,242,229,244,227,233,242,227,236,101,128,50,153,236,230,240,225,242,229,110,128,50,66,239,227,233,229,244,249,240,225,242,229,110,128,50,51,112,2,104,205,104,211,225,227,101,128,48,0,229,227,233,225,236,240,225,242,229,110,128,50,53,116,2,104,230,104,241,239,227,235,240,225,242,229,110,128,50,49,245,228,249,240,225,242,229,110,128,50,59,117,2,105,2,105,11,238,240,225,242,229,110,128,50,48,240,229,242,246,233,243,229,240,225,242,229,110,128,50,60,119,2,105,32,105,44,225,244,229,242,240,225,242,229,110,128,50,44,239,239,228,240,225,242,229,110,128,50,45,250,229,242,111,128,48,7,109,2,105,68,105,81,229,244,225,236,227,233,242,227,236,101,128,50,142,239,239,238,227,233,242,227,236,101,128,50,138,238,225,237,229,227,233,242,227,236,101,128,50,148,243,245,238,227,233,242,227,236,101,128,50,144,119,2,105,124,105,137,225,244,229,242,227,233,242,227,236,101,128,50,140,239,239,228,227,233,242,227,236,101,128,50,141,246,97,128,9,7,233,229,242,229,243,233,115,130,0,239,105,168,105,176,225,227,245,244,101,128,30,47,227,249,242,233,236,236,233,99,128,4,229,239,244,226,229,236,239,119,128,30,203,101,3,105,205,105,221,105,232,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,215,227,249,242,233,236,236,233,99,128,4,53,245,238,103,4,105,244,106,23,106,38,106,47,97,2,105,250,106,9,227,233,242,227,236,229,235,239,242,229,225,110,128,50,117,240,225,242,229,238,235,239,242,229,225,110,128,50,21,227,233,242,227,236,229,235,239,242,229,225,110,128,50,103,235,239,242,229,225,110,128,49,71,240,225,242,229,238,235,239,242,229,225,110,128,50,7,103,2,106,67,106,74,242,225,246,101,128,0,236,117,2,106,80,106,89,234,225,242,225,244,105,128,10,135,242,237,245,235,232,105,128,10,7,104,2,106,104,106,114,233,242,225,231,225,238,97,128,48,68,239,239,235,225,226,239,246,101,128,30,201,105,8,106,143,106,153,106,164,106,171,106,196,106,212,106,227,106,243,226,229,238,231,225,236,105,128,9,136,227,249,242,233,236,236,233,99,128,4,56,228,229,246,97,128,9,8,231,117,2,106,178,106,187,234,225,242,225,244,105,128,10,136,242,237,245,235,232,105,128,10,8,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,64,238,246,229,242,244,229,228,226,242,229,246,101,128,2,11,243,232,239,242,244,227,249,242,233,236,236,233,99,128,4,57,246,239,247,229,236,243,233,231,110,3,107,3,107,13,107,20,226,229,238,231,225,236,105,128,9,192,228,229,246,97,128,9,64,231,245,234,225,242,225,244,105,128,10,192,106,128,1,51,107,2,107,41,107,65,225,244,225,235,225,238,97,129,48,164,107,53,232,225,236,230,247,233,228,244,104,128,255,114,239,242,229,225,110,128,49,99,108,2,107,79,107,84,228,101,128,2,220,245,249,232,229,226,242,229,119,128,5,172,109,2,107,101,107,168,97,3,107,109,107,129,107,154,227,242,239,110,129,1,43,107,118,227,249,242,233,236,236,233,99,128,4,227,231,229,239,242,225,240,240,242,239,248,233,237,225,244,229,236,249,229,241,245,225,108,128,34,83,244,242,225,231,245,242,237,245,235,232,105,128,10,63,239,238,239,243,240,225,227,101,128,255,73,110,5,107,191,107,201,107,210,107,222,108,50,227,242,229,237,229,238,116,128,34,6,230,233,238,233,244,121,128,34,30,233,225,242,237,229,238,233,225,110,128,5,107,116,2,107,228,108,40,101,2,107,234,108,29,231,242,225,108,131,34,43,107,247,108,9,108,14,98,2,107,253,108,5,239,244,244,239,109,128,35,33,116,128,35,33,229,120,128,248,245,116,2,108,20,108,25,239,112,128,35,32,112,128,35,32,242,243,229,227,244,233,239,110,128,34,41,233,243,241,245,225,242,101,128,51,5,118,3,108,58,108,67,108,76,226,245,236,236,229,116,128,37,216,227,233,242,227,236,101,128,37,217,243,237,233,236,229,230,225,227,101,128,38,59,111,3,108,96,108,107,108,115,227,249,242,233,236,236,233,99,128,4,81,231,239,238,229,107,128,1,47,244,97,131,3,185,108,126,108,147,108,155,228,233,229,242,229,243,233,115,129,3,202,108,139,244,239,238,239,115,128,3,144,236,225,244,233,110,128,2,105,244,239,238,239,115,128,3,175,240,225,242,229,110,128,36,164,242,233,231,245,242,237,245,235,232,105,128,10,114,115,4,108,194,108,239,108,253,109,5,237,225,236,108,2,108,203,108,214,232,233,242,225,231,225,238,97,128,48,67,235,225,244,225,235,225,238,97,129,48,163,108,227,232,225,236,230,247,233,228,244,104,128,255,104,243,232,225,242,226,229,238,231,225,236,105,128,9,250,244,242,239,235,101,128,2,104,245,240,229,242,233,239,114,128,246,237,116,2,109,21,109,55,229,242,225,244,233,239,110,2,109,33,109,44,232,233,242,225,231,225,238,97,128,48,157,235,225,244,225,235,225,238,97,128,48,253,233,236,228,101,129,1,41,109,64,226,229,236,239,119,128,30,45,117,2,109,78,109,89,226,239,240,239,237,239,230,111,128,49,41,227,249,242,233,236,236,233,99,128,4,78,246,239,247,229,236,243,233,231,110,3,109,116,109,126,109,133,226,229,238,231,225,236,105,128,9,191,228,229,246,97,128,9,63,231,245,234,225,242,225,244,105,128,10,191,250,232,233,244,243,97,2,109,155,109,166,227,249,242,233,236,236,233,99,128,4,117,228,226,236,231,242,225,246,229,227,249,242,233,236,236,233,99,128,4,119,106,138,0,106,109,209,110,16,110,27,110,77,110,93,110,206,111,19,111,24,111,36,111,44,97,4,109,219,109,230,109,240,109,247,225,242,237,229,238,233,225,110,128,5,113,226,229,238,231,225,236,105,128,9,156,228,229,246,97,128,9,28,231,117,2,109,254,110,7,234,225,242,225,244,105,128,10,156,242,237,245,235,232,105,128,10,28,226,239,240,239,237,239,230,111,128,49,16,99,3,110,35,110,42,110,64,225,242,239,110,128,1,240,233,242,99,2,110,50,110,55,236,101,128,36,217,245,237,230,236,229,120,128,1,53,242,239,243,243,229,228,244,225,233,108,128,2,157,228,239,244,236,229,243,243,243,244,242,239,235,101,128,2,95,101,3,110,101,110,112,110,177,227,249,242,233,236,236,233,99,128,4,88,229,109,4,110,123,110,132,110,146,110,162,225,242,225,226,233,99,128,6,44,230,233,238,225,236,225,242,225,226,233,99,128,254,158,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,159,237,229,228,233,225,236,225,242,225,226,233,99,128,254,160,104,2,110,183,110,192,225,242,225,226,233,99,128,6,152,230,233,238,225,236,225,242,225,226,233,99,128,251,139,104,2,110,212,111,6,97,3,110,220,110,230,110,237,226,229,238,231,225,236,105,128,9,157,228,229,246,97,128,9,29,231,117,2,110,244,110,253,234,225,242,225,244,105,128,10,157,242,237,245,235,232,105,128,10,29,229,232,225,242,237,229,238,233,225,110,128,5,123,233,115,128,48,4,237,239,238,239,243,240,225,227,101,128,255,74,240,225,242,229,110,128,36,165,243,245,240,229,242,233,239,114,128,2,178,107,146,0,107,111,95,113,184,113,195,114,1,114,12,114,102,114,116,115,224,116,164,116,177,116,203,116,252,117,134,117,156,117,169,117,192,117,234,117,244,97,12,111,121,111,153,111,175,111,205,112,63,112,88,112,118,112,143,112,249,113,7,113,130,113,159],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+30720);allocate([98,2,111,127,111,144,225,243,232,235,233,242,227,249,242,233,236,236,233,99,128,4,161,229,238,231,225,236,105,128,9,149,99,2,111,159,111,165,245,244,101,128,30,49,249,242,233,236,236,233,99,128,4,58,228,101,2,111,182,111,200,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,155,246,97,128,9,21,102,135,5,219,111,223,111,232,111,252,112,10,112,19,112,35,112,50,225,242,225,226,233,99,128,6,67,228,225,231,229,243,104,129,251,59,111,243,232,229,226,242,229,119,128,251,59,230,233,238,225,236,225,242,225,226,233,99,128,254,218,232,229,226,242,229,119,128,5,219,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,219,237,229,228,233,225,236,225,242,225,226,233,99,128,254,220,242,225,230,229,232,229,226,242,229,119,128,251,77,231,117,2,112,70,112,79,234,225,242,225,244,105,128,10,149,242,237,245,235,232,105,128,10,21,104,2,112,94,112,104,233,242,225,231,225,238,97,128,48,75,239,239,235,227,249,242,233,236,236,233,99,128,4,196,235,225,244,225,235,225,238,97,129,48,171,112,131,232,225,236,230,247,233,228,244,104,128,255,118,112,2,112,149,112,170,240,97,129,3,186,112,156,243,249,237,226,239,236,231,242,229,229,107,128,3,240,249,229,239,245,110,3,112,182,112,196,112,230,237,233,229,245,237,235,239,242,229,225,110,128,49,113,112,2,112,202,112,217,232,233,229,245,240,232,235,239,242,229,225,110,128,49,132,233,229,245,240,235,239,242,229,225,110,128,49,120,243,243,225,238,231,240,233,229,245,240,235,239,242,229,225,110,128,49,121,242,239,242,233,233,243,241,245,225,242,101,128,51,13,115,5,113,19,113,63,113,78,113,86,113,114,232,233,228,225,225,245,244,111,2,113,32,113,41,225,242,225,226,233,99,128,6,64,238,239,243,233,228,229,226,229,225,242,233,238,231,225,242,225,226,233,99,128,6,64,237,225,236,236,235,225,244,225,235,225,238,97,128,48,245,241,245,225,242,101,128,51,132,242,97,2,113,93,113,102,225,242,225,226,233,99,128,6,80,244,225,238,225,242,225,226,233,99,128,6,77,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,159,244,225,232,233,242,225,240,242,239,236,239,238,231,237,225,242,235,232,225,236,230,247,233,228,244,104,128,255,112,246,229,242,244,233,227,225,236,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,157,226,239,240,239,237,239,230,111,128,49,14,99,4,113,205,113,227,113,236,113,244,97,2,113,211,113,221,236,243,241,245,225,242,101,128,51,137,242,239,110,128,1,233,229,228,233,236,236,97,128,1,55,233,242,227,236,101,128,36,218,239,237,237,225,225,227,227,229,238,116,128,1,55,228,239,244,226,229,236,239,119,128,30,51,101,4,114,22,114,49,114,74,114,86,104,2,114,28,114,39,225,242,237,229,238,233,225,110,128,5,132,233,242,225,231,225,238,97,128,48,81,235,225,244,225,235,225,238,97,129,48,177,114,62,232,225,236,230,247,233,228,244,104,128,255,121,238,225,242,237,229,238,233,225,110,128,5,111,243,237,225,236,236,235,225,244,225,235,225,238,97,128,48,246,231,242,229,229,238,236,225,238,228,233,99,128,1,56,104,6,114,130,115,3,115,14,115,39,115,126,115,214,97,5,114,142,114,152,114,163,114,170,114,195,226,229,238,231,225,236,105,128,9,150,227,249,242,233,236,236,233,99,128,4,69,228,229,246,97,128,9,22,231,117,2,114,177,114,186,234,225,242,225,244,105,128,10,150,242,237,245,235,232,105,128,10,22,104,4,114,205,114,214,114,228,114,244,225,242,225,226,233,99,128,6,46,230,233,238,225,236,225,242,225,226,233,99,128,254,166,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,167,237,229,228,233,225,236,225,242,225,226,233,99,128,254,168,229,233,227,239,240,244,233,99,128,3,231,232,97,2,115,21,115,28,228,229,246,97,128,9,89,231,245,242,237,245,235,232,105,128,10,89,233,229,245,235,104,4,115,53,115,88,115,103,115,112,97,2,115,59,115,74,227,233,242,227,236,229,235,239,242,229,225,110,128,50,120,240,225,242,229,238,235,239,242,229,225,110,128,50,24,227,233,242,227,236,229,235,239,242,229,225,110,128,50,106,235,239,242,229,225,110,128,49,75,240,225,242,229,238,235,239,242,229,225,110,128,50,10,111,4,115,136,115,185,115,195,115,200,235,104,4,115,147,115,156,115,165,115,175,225,233,244,232,225,105,128,14,2,239,238,244,232,225,105,128,14,5,245,225,244,244,232,225,105,128,14,3,247,225,233,244,232,225,105,128,14,4,237,245,244,244,232,225,105,128,14,91,239,107,128,1,153,242,225,235,232,225,238,231,244,232,225,105,128,14,6,250,243,241,245,225,242,101,128,51,145,105,4,115,234,115,245,116,14,116,63,232,233,242,225,231,225,238,97,128,48,77,235,225,244,225,235,225,238,97,129,48,173,116,2,232,225,236,230,247,233,228,244,104,128,255,119,242,111,3,116,23,116,38,116,54,231,245,242,225,237,245,243,241,245,225,242,101,128,51,21,237,229,229,244,239,242,245,243,241,245,225,242,101,128,51,22,243,241,245,225,242,101,128,51,20,249,229,239,107,5,116,78,116,113,116,128,116,137,116,151,97,2,116,84,116,99,227,233,242,227,236,229,235,239,242,229,225,110,128,50,110,240,225,242,229,238,235,239,242,229,225,110,128,50,14,227,233,242,227,236,229,235,239,242,229,225,110,128,50,96,235,239,242,229,225,110,128,49,49,240,225,242,229,238,235,239,242,229,225,110,128,50,0,243,233,239,243,235,239,242,229,225,110,128,49,51,234,229,227,249,242,233,236,236,233,99,128,4,92,108,2,116,183,116,194,233,238,229,226,229,236,239,119,128,30,53,243,241,245,225,242,101,128,51,152,109,3,116,211,116,225,116,236,227,245,226,229,228,243,241,245,225,242,101,128,51,166,239,238,239,243,240,225,227,101,128,255,75,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,162,111,5,117,8,117,34,117,72,117,84,117,98,104,2,117,14,117,24,233,242,225,231,225,238,97,128,48,83,237,243,241,245,225,242,101,128,51,192,235,97,2,117,41,117,49,233,244,232,225,105,128,14,1,244,225,235,225,238,97,129,48,179,117,60,232,225,236,230,247,233,228,244,104,128,255,122,239,240,239,243,241,245,225,242,101,128,51,30,240,240,225,227,249,242,233,236,236,233,99,128,4,129,114,2,117,104,117,124,229,225,238,243,244,225,238,228,225,242,228,243,249,237,226,239,108,128,50,127,239,238,233,243,227,237,98,128,3,67,240,97,2,117,141,117,147,242,229,110,128,36,166,243,241,245,225,242,101,128,51,170,243,233,227,249,242,233,236,236,233,99,128,4,111,116,2,117,175,117,184,243,241,245,225,242,101,128,51,207,245,242,238,229,100,128,2,158,117,2,117,198,117,209,232,233,242,225,231,225,238,97,128,48,79,235,225,244,225,235,225,238,97,129,48,175,117,222,232,225,236,230,247,233,228,244,104,128,255,120,246,243,241,245,225,242,101,128,51,184,247,243,241,245,225,242,101,128,51,190,108,146,0,108,118,38,120,65,120,94,120,160,120,198,121,94,121,103,121,119,121,143,121,161,122,23,122,64,122,199,122,207,122,240,122,249,123,1,123,63,97,7,118,54,118,64,118,71,118,78,118,103,118,119,120,53,226,229,238,231,225,236,105,128,9,178,227,245,244,101,128,1,58,228,229,246,97,128,9,50,231,117,2,118,85,118,94,234,225,242,225,244,105,128,10,178,242,237,245,235,232,105,128,10,50,235,235,232,225,238,231,249,225,239,244,232,225,105,128,14,69,109,10,118,141,119,80,119,97,119,135,119,149,119,168,119,184,119,204,119,224,119,247,97,2,118,147,119,72,236,229,102,4,118,159,118,173,119,9,119,26,230,233,238,225,236,225,242,225,226,233,99,128,254,252,232,225,237,250,97,2,118,183,118,224,225,226,239,246,101,2,118,193,118,207,230,233,238,225,236,225,242,225,226,233,99,128,254,248,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,247,226,229,236,239,119,2,118,234,118,248,230,233,238,225,236,225,242,225,226,233,99,128,254,250,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,249,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,251,237,225,228,228,225,225,226,239,246,101,2,119,41,119,55,230,233,238,225,236,225,242,225,226,233,99,128,254,246,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,254,245,242,225,226,233,99,128,6,68,226,228,97,129,3,187,119,88,243,244,242,239,235,101,128,1,155,229,100,130,5,220,119,106,119,126,228,225,231,229,243,104,129,251,60,119,117,232,229,226,242,229,119,128,251,60,232,229,226,242,229,119,128,5,220,230,233,238,225,236,225,242,225,226,233,99,128,254,222,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,202,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,223,234,229,229,237,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,201,235,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,203,236,225,237,232,229,232,233,243,239,236,225,244,229,228,225,242,225,226,233,99,128,253,242,237,101,2,119,254,120,11,228,233,225,236,225,242,225,226,233,99,128,254,224,229,109,2,120,18,120,37,232,225,232,233,238,233,244,233,225,236,225,242,225,226,233,99,128,253,136,233,238,233,244,233,225,236,225,242,225,226,233,99,128,252,204,242,231,229,227,233,242,227,236,101,128,37,239,98,3,120,73,120,78,120,84,225,114,128,1,154,229,236,116,128,2,108,239,240,239,237,239,230,111,128,49,12,99,4,120,104,120,111,120,120,120,147,225,242,239,110,128,1,62,229,228,233,236,236,97,128,1,60,233,242,99,2,120,128,120,133,236,101,128,36,219,245,237,230,236,229,248,226,229,236,239,119,128,30,61,239,237,237,225,225,227,227,229,238,116,128,1,60,228,239,116,130,1,64,120,170,120,179,225,227,227,229,238,116,128,1,64,226,229,236,239,119,129,30,55,120,189,237,225,227,242,239,110,128,30,57,101,3,120,206,120,244,121,89,230,116,2,120,213,120,229,225,238,231,236,229,225,226,239,246,229,227,237,98,128,3,26,244,225,227,235,226,229,236,239,247,227,237,98,128,3,24,243,115,132,0,60,121,1,121,23,121,35,121,81,229,241,245,225,108,129,34,100,121,11,239,242,231,242,229,225,244,229,114,128,34,218,237,239,238,239,243,240,225,227,101,128,255,28,111,2,121,41,121,70,114,2,121,47,121,60,229,241,245,233,246,225,236,229,238,116,128,34,114,231,242,229,225,244,229,114,128,34,118,246,229,242,229,241,245,225,108,128,34,102,243,237,225,236,108,128,254,100,250,104,128,2,110,230,226,236,239,227,107,128,37,140,232,239,239,235,242,229,244,242,239,230,236,229,120,128,2,109,105,2,121,125,121,130,242,97,128,32,164,247,238,225,242,237,229,238,233,225,110,128,5,108,106,129,1,201,121,149,229,227,249,242,233,236,236,233,99,128,4,89,108,132,246,192,121,173,121,197,121,208,121,217,97,2,121,179,121,186,228,229,246,97,128,9,51,231,245,234,225,242,225,244,105,128,10,179,233,238,229,226,229,236,239,119,128,30,59,236,225,228,229,246,97,128,9,52,246,239,227,225,236,233,99,3,121,231,121,241,121,248,226,229,238,231,225,236,105,128,9,225,228,229,246,97,128,9,97,246,239,247,229,236,243,233,231,110,2,122,6,122,16,226,229,238,231,225,236,105,128,9,227,228,229,246,97,128,9,99,109,3,122,31,122,44,122,55,233,228,228,236,229,244,233,236,228,101,128,2,107,239,238,239,243,240,225,227,101,128,255,76,243,241,245,225,242,101,128,51,208,111,6,122,78,122,90,122,132,122,143,122,149,122,191,227,232,245,236,225,244,232,225,105,128,14,44,231,233,227,225,108,3,122,102,122,108,122,127,225,238,100,128,34,39,238,239,116,129,0,172,122,116,242,229,246,229,242,243,229,100,128,35,16,239,114,128,34,40,236,233,238,231,244,232,225,105,128,14,37,238,231,115,128,1,127,247,236,233,238,101,2,122,159,122,182,99,2,122,165,122,177,229,238,244,229,242,236,233,238,101,128,254,78,237,98,128,3,50,228,225,243,232,229,100,128,254,77,250,229,238,231,101,128,37,202,240,225,242,229,110,128,36,167,115,3,122,215,122,222,122,230,236,225,243,104,128,1,66,241,245,225,242,101,128,33,19,245,240,229,242,233,239,114,128,246,238,244,243,232,225,228,101,128,37,145,245,244,232,225,105,128,14,38,246,239,227,225,236,233,99,3,123,15,123,25,123,32,226,229,238,231,225,236,105,128,9,140,228,229,246,97,128,9,12,246,239,247,229,236,243,233,231,110,2,123,46,123,56,226,229,238,231,225,236,105,128,9,226,228,229,246,97,128,9,98,248,243,241,245,225,242,101,128,51,211,109,144,0,109,123,109,125,218,125,243,126,14,126,39,127,92,127,114,128,169,128,199,128,248,129,99,129,121,129,146,129,155,130,182,130,210,97,12,123,135,123,145,123,209,123,216,123,241,124,33,125,125,125,150,125,155,125,169,125,181,125,186,226,229,238,231,225,236,105,128,9,174,99,2,123,151,123,203,242,239,110,132,0,175,123,165,123,176,123,182,123,191,226,229,236,239,247,227,237,98,128,3,49,227,237,98,128,3,4,236,239,247,237,239,100,128,2,205,237,239,238,239,243,240,225,227,101,128,255,227,245,244,101,128,30,63,228,229,246,97,128,9,46,231,117,2,123,223,123,232,234,225,242,225,244,105,128,10,174,242,237,245,235,232,105,128,10,46,104,2,123,247,124,23,225,240,225,235,104,2,124,1,124,10,232,229,226,242,229,119,128,5,164,236,229,230,244,232,229,226,242,229,119,128,5,164,233,242,225,231,225,238,97,128,48,126,105,5,124,45,124,114,124,177,124,207,125,113,227,232,225,244,244,225,247,97,3,124,60,124,91,124,98,236,239,119,2,124,68,124,79,236,229,230,244,244,232,225,105,128,248,149,242,233,231,232,244,244,232,225,105,128,248,148,244,232,225,105,128,14,75,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,147,229,107,3,124,123,124,154,124,161,236,239,119,2,124,131,124,142,236,229,230,244,244,232,225,105,128,248,140,242,233,231,232,244,244,232,225,105,128,248,139,244,232,225,105,128,14,72,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,138,232,225,238,225,235,225,116,2,124,189,124,200,236,229,230,244,244,232,225,105,128,248,132,244,232,225,105,128,14,49,116,3,124,215,124,243,125,50,225,233,235,232,117,2,124,225,124,236,236,229,230,244,244,232,225,105,128,248,137,244,232,225,105,128,14,71,232,111,3,124,252,125,27,125,34,236,239,119,2,125,4,125,15,236,229,230,244,244,232,225,105,128,248,143,242,233,231,232,244,244,232,225,105,128,248,142,244,232,225,105,128,14,73,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,141,242,105,3,125,59,125,90,125,97,236,239,119,2,125,67,125,78,236,229,230,244,244,232,225,105,128,248,146,242,233,231,232,244,244,232,225,105,128,248,145,244,232,225,105,128,14,74,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,144,249,225,237,239,235,244,232,225,105,128,14,70,235,225,244,225,235,225,238,97,129,48,222,125,138,232,225,236,230,247,233,228,244,104,128,255,143,236,101,128,38,66,238,243,249,239,238,243,241,245,225,242,101,128,51,71,241,225,230,232,229,226,242,229,119,128,5,190,242,115,128,38,66,115,2,125,192,125,210,239,242,225,227,233,242,227,236,229,232,229,226,242,229,119,128,5,175,241,245,225,242,101,128,51,131,98,2,125,224,125,234,239,240,239,237,239,230,111,128,49,7,243,241,245,225,242,101,128,51,212,99,2,125,249,126,1,233,242,227,236,101,128,36,220,245,226,229,228,243,241,245,225,242,101,128,51,165,228,239,116,2,126,22,126,31,225,227,227,229,238,116,128,30,65,226,229,236,239,119,128,30,67,101,7,126,55,126,182,126,193,126,208,126,233,127,14,127,26,101,2,126,61,126,169,109,4,126,71,126,80,126,94,126,110,225,242,225,226,233,99,128,6,69,230,233,238,225,236,225,242,225,226,233,99,128,254,226,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,227,237,101,2,126,117,126,130,228,233,225,236,225,242,225,226,233,99,128,254,228,229,237,105,2,126,138,126,153,238,233,244,233,225,236,225,242,225,226,233,99,128,252,209,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,72,244,239,242,245,243,241,245,225,242,101,128,51,77,232,233,242,225,231,225,238,97,128,48,129,233,250,233,229,242,225,243,241,245,225,242,101,128,51,126,235,225,244,225,235,225,238,97,129,48,225,126,221,232,225,236,230,247,233,228,244,104,128,255,146,109,130,5,222,126,241,127,5,228,225,231,229,243,104,129,251,62,126,252,232,229,226,242,229,119,128,251,62,232,229,226,242,229,119,128,5,222,238,225,242,237,229,238,233,225,110,128,5,116,242,235,232,97,3,127,37,127,46,127,79,232,229,226,242,229,119,128,5,165,235,229,230,245,236,97,2,127,57,127,66,232,229,226,242,229,119,128,5,166,236,229,230,244,232,229,226,242,229,119,128,5,166,236,229,230,244,232,229,226,242,229,119,128,5,165,104,2,127,98,127,104,239,239,107,128,2,113,250,243,241,245,225,242,101,128,51,146,105,6,127,128,127,165,128,46,128,57,128,82,128,139,228,100,2,127,135,127,160,236,229,228,239,244,235,225,244,225,235,225,238,225,232,225,236,230,247,233,228,244,104,128,255,101,239,116,128,0,183,229,245,109,5,127,179,127,214,127,229,127,238,128,33,97,2,127,185,127,200,227,233,242,227,236,229,235,239,242,229,225,110,128,50,114,240,225,242,229,238,235,239,242,229,225,110,128,50,18,227,233,242,227,236,229,235,239,242,229,225,110,128,50,100,235,239,242,229,225,110,128,49,65,112,2,127,244,128,20,97,2,127,250,128,8,238,243,233,239,243,235,239,242,229,225,110,128,49,112,242,229,238,235,239,242,229,225,110,128,50,4,233,229,245,240,235,239,242,229,225,110,128,49,110,243,233,239,243,235,239,242,229,225,110,128,49,111,232,233,242,225,231,225,238,97,128,48,127,235,225,244,225,235,225,238,97,129,48,223,128,70,232,225,236,230,247,233,228,244,104,128,255,144,238,117,2,128,89,128,134,115,132,34,18,128,101,128,112,128,121,128,127,226,229,236,239,247,227,237,98,128,3,32,227,233,242,227,236,101,128,34,150,237,239,100,128,2,215,240,236,245,115,128,34,19,244,101,128,32,50,242,105,2,128,146,128,160,226,225,225,242,245,243,241,245,225,242,101,128,51,74,243,241,245,225,242,101,128,51,73,108,2,128,175,128,190,239,238,231,236,229,231,244,245,242,238,229,100,128,2,112,243,241,245,225,242,101,128,51,150,109,3,128,207,128,221,128,232,227,245,226,229,228,243,241,245,225,242,101,128,51,163,239,238,239,243,240,225,227,101,128,255,77,243,241,245,225,242,229,228,243,241,245,225,242,101,128,51,159,111,5,129,4,129,30,129,55,129,65,129,74,104,2,129,10,129,20,233,242,225,231,225,238,97,128,48,130,237,243,241,245,225,242,101,128,51,193,235,225,244,225,235,225,238,97,129,48,226,129,43,232,225,236,230,247,233,228,244,104,128,255,147,236,243,241,245,225,242,101,128,51,214,237,225,244,232,225,105,128,14,33,246,229,242,243,243,241,245,225,242,101,129,51,167,129,89,228,243,241,245,225,242,101,128,51,168,240,97,2,129,106,129,112,242,229,110,128,36,168,243,241,245,225,242,101,128,51,171,115,2,129,127,129,136,243,241,245,225,242,101,128,51,179,245,240,229,242,233,239,114,128,246,239,244,245,242,238,229,100,128,2,111,117,141,0,181,129,185,129,189,129,199,129,223,129,233,129,255,130,10,130,35,130,58,130,68,130,98,130,162,130,172,49,128,0,181,225,243,241,245,225,242,101,128,51,130,227,104,2,129,206,129,216,231,242,229,225,244,229,114,128,34,107,236,229,243,115,128,34,106,230,243,241,245,225,242,101,128,51,140,103,2,129,239,129,246,242,229,229,107,128,3,188,243,241,245,225,242,101,128,51,141,232,233,242,225,231,225,238,97,128,48,128,235,225,244,225,235,225,238,97,129,48,224,130,23,232,225,236,230,247,233,228,244,104,128,255,145,108,2,130,41,130,50,243,241,245,225,242,101,128,51,149,244,233,240,236,121,128,0,215,237,243,241,245,225,242,101,128,51,155,238,225,104,2,130,76,130,85,232,229,226,242,229,119,128,5,163,236,229,230,244,232,229,226,242,229,119,128,5,163,115,2,130,104,130,153,233,99,3,130,113,130,130,130,141,225,236,238,239,244,101,129,38,106,130,124,228,226,108,128,38,107,230,236,225,244,243,233,231,110,128,38,109,243,232,225,242,240,243,233,231,110,128,38,111,243,241,245,225,242,101,128,51,178,246,243,241,245,225,242,101,128,51,182,247,243,241,245,225,242,101,128,51,188,118,2,130,188,130,201,237,229,231,225,243,241,245,225,242,101,128,51,185,243,241,245,225,242,101,128,51,183,119,2,130,216,130,229,237,229,231,225,243,241,245,225,242,101,128,51,191,243,241,245,225,242,101,128,51,189,110,150,0,110,131,30,131,164,131,188,131,254,132,23,132,81,132,91,132,158,132,201,134,235,134,253,135,22,135,53,135,79,135,144,137,126,137,134,137,159,137,167,138,135,138,145,138,155,97,8,131,48,131,68,131,75,131,82,131,107,131,118,131,143,131,155,98,2,131,54,131,63,229,238,231,225,236,105,128,9,168,236,97,128,34,7,227,245,244,101,128,1,68,228,229,246,97,128,9,40,231,117,2,131,89,131,98,234,225,242,225,244,105,128,10,168,242,237,245,235,232,105,128,10,40,232,233,242,225,231,225,238,97,128,48,106,235,225,244,225,235,225,238,97,129,48,202,131,131,232,225,236,230,247,233,228,244,104,128,255,133,240,239,243,244,242,239,240,232,101,128,1,73,243,241,245,225,242,101,128,51,129,98,2,131,170,131,180,239,240,239,237,239,230,111,128,49,11,243,240,225,227,101,128,0,160,99,4,131,198,131,205,131,214,131,241,225,242,239,110,128,1,72,229,228,233,236,236,97,128,1,70,233,242,99,2,131,222,131,227,236,101,128,36,221,245,237,230,236,229,248,226,229,236,239,119,128,30,75,239,237,237,225,225,227,227,229,238,116,128,1,70,228,239,116,2,132,6,132,15,225,227,227,229,238,116,128,30,69,226,229,236,239,119,128,30,71,101,3,132,31,132,42,132,67,232,233,242,225,231,225,238,97,128,48,109,235,225,244,225,235,225,238,97,129,48,205,132,55,232,225,236,230,247,233,228,244,104,128,255,136,247,243,232,229,241,229,236,243,233,231,110,128,32,170,230,243,241,245,225,242,101,128,51,139,103,2,132,97,132,147,97,3,132,105,132,115,132,122,226,229,238,231,225,236,105,128,9,153,228,229,246,97,128,9,25,231,117,2,132,129,132,138,234,225,242,225,244,105,128,10,153,242,237,245,235,232,105,128,10,25,239,238,231,245,244,232,225,105,128,14,7,104,2,132,164,132,174,233,242,225,231,225,238,97,128,48,147,239,239,107,2,132,182,132,189,236,229,230,116,128,2,114,242,229,244,242,239,230,236,229,120,128,2,115,105,4,132,211,133,124,133,135,133,193,229,245,110,7,132,229,133,8,133,40,133,54,133,63,133,96,133,109,97,2,132,235,132,250,227,233,242,227,236,229,235,239,242,229,225,110,128,50,111,240,225,242,229,238,235,239,242,229,225,110,128,50,15,227,105,2,133,15,133,27,229,245,227,235,239,242,229,225,110,128,49,53,242,227,236,229,235,239,242,229,225,110,128,50,97,232,233,229,245,232,235,239,242,229,225,110,128,49,54,235,239,242,229,225,110,128,49,52,240,97,2,133,70,133,84,238,243,233,239,243,235,239,242,229,225,110,128,49,104,242,229,238,235,239,242,229,225,110,128,50,1,243,233,239,243,235,239,242,229,225,110,128,49,103,244,233,235,229,245,244,235,239,242,229,225,110,128,49,102,232,233,242,225,231,225,238,97,128,48,107,107,2,133,141,133,165,225,244,225,235,225,238,97,129,48,203,133,153,232,225,236,230,247,233,228,244,104,128,255,134,232,225,232,233,116,2,133,175,133,186,236,229,230,244,244,232,225,105,128,248,153,244,232,225,105,128,14,77,238,101,141,0,57,133,224,133,233,133,243,134,17,134,24,134,49,134,76,134,110,134,122,134,133,134,166,134,174,134,185,225,242,225,226,233,99,128,6,105,226,229,238,231,225,236,105,128,9,239,227,233,242,227,236,101,129,36,104,133,254,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,146,228,229,246,97,128,9,111,231,117,2,134,31,134,40,234,225,242,225,244,105,128,10,239,242,237,245,235,232,105,128,10,111,232,97,2,134,56,134,67,227,235,225,242,225,226,233,99,128,6,105,238,231,250,232,239,117,128,48,41,105,2,134,82,134,100,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,40,238,230,229,242,233,239,114,128,32,137,237,239,238,239,243,240,225,227,101,128,255,25,239,236,228,243,244,249,236,101,128,247,57,112,2,134,139,134,146,225,242,229,110,128,36,124,229,114,2,134,153,134,159,233,239,100,128,36,144,243,233,225,110,128,6,249,242,239,237,225,110,128,33,120,243,245,240,229,242,233,239,114,128,32,121,116,2,134,191,134,229,229,229,110,2,134,199,134,208,227,233,242,227,236,101,128,36,114,112,2,134,214,134,221,225,242,229,110,128,36,134,229,242,233,239,100,128,36,154,232,225,105,128,14,89,106,129,1,204,134,241,229,227,249,242,233,236,236,233,99,128,4,90,235,225,244,225,235,225,238,97,129,48,243,135,10,232,225,236,230,247,233,228,244,104,128,255,157,108,2,135,28,135,42,229,231,242,233,231,232,244,236,239,238,103,128,1,158,233,238,229,226,229,236,239,119,128,30,73,109,2,135,59,135,70,239,238,239,243,240,225,227,101,128,255,78,243,241,245,225,242,101,128,51,154,110,2,135,85,135,135,97,3,135,93,135,103,135,110,226,229,238,231,225,236,105,128,9,163,228,229,246,97,128,9,35,231,117,2,135,117,135,126,234,225,242,225,244,105,128,10,163,242,237,245,235,232,105,128,10,35,238,225,228,229,246,97,128,9,41,111,6,135,158,135,169,135,194,135,235,136,187,137,114,232,233,242,225,231,225,238,97,128,48,110,235,225,244,225,235,225,238,97,129,48,206,135,182,232,225,236,230,247,233,228,244,104,128,255,137,110,3,135,202,135,218,135,227,226,242,229,225,235,233,238,231,243,240,225,227,101,128,0,160,229,238,244,232,225,105,128,14,19,245,244,232,225,105,128,14,25,239,110,7,135,252,136,5,136,19,136,53,136,69,136,110,136,169,225,242,225,226,233,99,128,6,70,230,233,238,225,236,225,242,225,226,233,99,128,254,230,231,232,245,238,238,97,2,136,30,136,39,225,242,225,226,233,99,128,6,186,230,233,238,225,236,225,242,225,226,233,99,128,251,159,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,231,234,229,229,237,105,2,136,79,136,94,238,233,244,233,225,236,225,242,225,226,233,99,128,252,210,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,75,237,101,2,136,117,136,130,228,233,225,236,225,242,225,226,233,99,128,254,232,229,237,105,2,136,138,136,153,238,233,244,233,225,236,225,242,225,226,233,99,128,252,213,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,78,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,141,116,7,136,203,136,214,136,243,137,22,137,34,137,54,137,80,227,239,238,244,225,233,238,115,128,34,12,101,2,136,220,136,236,236,229,237,229,238,116,129,34,9,136,231,239,102,128,34,9,241,245,225,108,128,34,96,231,242,229,225,244,229,114,129,34,111,136,255,238,239,114,2,137,7,137,15,229,241,245,225,108,128,34,113,236,229,243,115,128,34,121,233,228,229,238,244,233,227,225,108,128,34,98,236,229,243,115,129,34,110,137,43,238,239,242,229,241,245,225,108,128,34,112,112,2,137,60,137,70,225,242,225,236,236,229,108,128,34,38,242,229,227,229,228,229,115,128,34,128,243,117,3,137,89,137,96,137,105,226,243,229,116,128,34,132,227,227,229,229,228,115,128,34,129,240,229,242,243,229,116,128,34,133,247,225,242,237,229,238,233,225,110,128,5,118,240,225,242,229,110,128,36,169,115,2,137,140,137,149,243,241,245,225,242,101,128,51,177,245,240,229,242,233,239,114,128,32,127,244,233,236,228,101,128,0,241,117,132,3,189,137,179,137,190,138,15,138,98,232,233,242,225,231,225,238,97,128,48,108,107,2,137,196,137,220,225,244,225,235,225,238,97,129,48,204,137,208,232,225,236,230,247,233,228,244,104,128,255,135,244,97,3,137,229,137,239,137,246,226,229,238,231,225,236,105,128,9,188,228,229,246,97,128,9,60,231,117,2,137,253,138,6,234,225,242,225,244,105,128,10,188,242,237,245,235,232,105,128,10,60,109,2,138,21,138,55,226,229,242,243,233,231,110,130,0,35,138,35,138,47,237,239,238,239,243,240,225,227,101,128,255,3,243,237,225,236,108,128,254,95,229,114,2,138,62,138,94,225,236,243,233,231,110,2,138,73,138,81,231,242,229,229,107,128,3,116,236,239,247,229,242,231,242,229,229,107,128,3,117,111,128,33,22,110,130,5,224,138,106,138,126,228,225,231,229,243,104,129,251,64,138,117,232,229,226,242,229,119,128,251,64,232,229,226,242,229,119,128,5,224,246,243,241,245,225,242,101,128,51,181,247,243,241,245,225,242,101,128,51,187,249,97,3,138,164,138,174,138,181,226,229,238,231,225,236,105,128,9,158,228,229,246,97,128,9,30,231,117,2,138,188,138,197,234,225,242,225,244,105,128,10,158,242,237,245,235,232,105,128,10,30,111,147,0,111,138,248,139,14,139,92,140,6,140,78,140,93,140,133,141,0,141,21,141,59,141,70,141,248,143,82,143,146,143,179,143,225,144,98,144,145,144,157,97,2,138,254,139,5,227,245,244,101,128,0,243,238,231,244,232,225,105,128,14,45,98,4,139,24,139,66,139,75,139,85,225,242,242,229,100,130,2,117,139,36,139,47,227,249,242,233,236,236,233,99,128,4,233,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,235,229,238,231,225,236,105,128,9,147,239,240,239,237,239,230,111,128,49,27,242,229,246,101,128,1,79,99,3,139,100,139,173,139,252,97,2,139,106,139,167,238,228,242,97,3,139,117,139,124,139,135,228,229,246,97,128,9,17,231,245,234,225,242,225,244,105,128,10,145,246,239,247,229,236,243,233,231,110,2,139,149,139,156,228,229,246,97,128,9,73,231,245,234,225,242,225,244,105,128,10,201,242,239,110,128,1,210,233,242,99,2,139,181,139,186,236,101,128,36,222,245,237,230,236,229,120,133,0,244,139,205,139,213,139,224,139,232,139,244,225,227,245,244,101,128,30,209,228,239,244,226,229,236,239,119,128,30,217,231,242,225,246,101,128,30,211,232,239,239,235,225,226,239,246,101,128,30,213,244,233,236,228,101,128,30,215,249,242,233,236,236,233,99,128,4,62,100,4,140,16,140,39,140,45,140,68,226,108,2,140,23,140,31,225,227,245,244,101,128,1,81,231,242,225,246,101,128,2,13,229,246,97,128,9,19,233,229,242,229,243,233,115,129,0,246,140,57,227,249,242,233,236,236,233,99,128,4,231,239,244,226,229,236,239,119,128,30,205,101,129,1,83,140,84,235,239,242,229,225,110,128,49,90,103,3,140,101,140,116,140,123,239,238,229,107,129,2,219,140,110,227,237,98,128,3,40,242,225,246,101,128,0,242,245,234,225,242,225,244,105,128,10,147,104,4,140,143,140,154,140,164,140,242,225,242,237,229,238,233,225,110,128,5,133,233,242,225,231,225,238,97,128,48,74,111,2,140,170,140,180,239,235,225,226,239,246,101,128,30,207,242,110,133,1,161,140,195,140,203,140,214,140,222,140,234,225,227,245,244,101,128,30,219,228,239,244,226,229,236,239,119,128,30,227,231,242,225,246,101,128,30,221,232,239,239,235,225,226,239,246,101,128,30,223,244,233,236,228,101,128,30,225,245,238,231,225,242,245,237,236,225,245,116,128,1,81,105,129,1,163,141,6,238,246,229,242,244,229,228,226,242,229,246,101,128,2,15,107,2,141,27,141,51,225,244,225,235,225,238,97,129,48,170,141,39,232,225,236,230,247,233,228,244,104,128,255,117,239,242,229,225,110,128,49,87,236,229,232,229,226,242,229,119,128,5,171,109,6,141,84,141,112,141,119,141,208,141,219,141,237,225,227,242,239,110,130,1,77,141,96,141,104,225,227,245,244,101,128,30,83,231,242,225,246,101,128,30,81,228,229,246,97,128,9,80,229,231,97,133,3,201,141,135,141,139,141,150,141,164,141,180,49,128,3,214,227,249,242,233,236,236,233,99,128,4,97,236,225,244,233,238,227,236,239,243,229,100,128,2,119,242,239,245,238,228,227,249,242,233,236,236,233,99,128,4,123,116,2,141,186,141,201,233,244,236,239,227,249,242,233,236,236,233,99,128,4,125,239,238,239,115,128,3,206,231,245,234,225,242,225,244,105,128,10,208,233,227,242,239,110,129,3,191,141,229,244,239,238,239,115,128,3,204,239,238,239,243,240,225,227,101,128,255,79,238,101,145,0,49,142,31,142,40,142,50,142,80,142,105,142,114,142,123,142,148,142,182,142,216,142,228,142,247,143,2,143,35,143,45,143,53,143,64,225,242,225,226,233,99,128,6,97,226,229,238,231,225,236,105,128,9,231,227,233,242,227,236,101,129,36,96,142,61,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,138,100,2,142,86,142,92,229,246,97,128,9,103,239,244,229,238,236,229,225,228,229,114,128,32,36,229,233,231,232,244,104,128,33,91,230,233,244,244,229,100,128,246,220,231,117,2,142,130,142,139,234,225,242,225,244,105,128,10,231,242,237,245,235,232,105,128,10,103,232,97,3,142,157,142,168,142,173,227,235,225,242,225,226,233,99,128,6,97,236,102,128,0,189,238,231,250,232,239,117,128,48,33,105,2,142,188,142,206,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,32,238,230,229,242,233,239,114,128,32,129,237,239,238,239,243,240,225,227,101,128,255,17,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,244,239,236,228,243,244,249,236,101,128,247,49,112,2,143,8,143,15,225,242,229,110,128,36,116,229,114,2,143,22,143,28,233,239,100,128,36,136,243,233,225,110,128,6,241,241,245,225,242,244,229,114,128,0,188,242,239,237,225,110,128,33,112,243,245,240,229,242,233,239,114,128,0,185,244,104,2,143,71,143,76,225,105,128,14,81,233,242,100,128,33,83,111,3,143,90,143,124,143,140,103,2,143,96,143,114,239,238,229,107,129,1,235,143,105,237,225,227,242,239,110,128,1,237,245,242,237,245,235,232,105,128,10,19,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,75,240,229,110,128,2,84,112,3,143,154,143,161,143,172,225,242,229,110,128,36,170,229,238,226,245,236,236,229,116,128,37,230,244,233,239,110,128,35,37,114,2,143,185,143,214,100,2,143,191,143,202,230,229,237,233,238,233,238,101,128,0,170,237,225,243,227,245,236,233,238,101,128,0,186,244,232,239,231,239,238,225,108,128,34,31,115,5,143,237,144,13,144,30,144,75,144,88,232,239,242,116,2,143,246,143,253,228,229,246,97,128,9,18,246,239,247,229,236,243,233,231,238,228,229,246,97,128,9,74,236,225,243,104,129,0,248,144,22,225,227,245,244,101,128,1,255,237,225,236,108,2,144,39,144,50,232,233,242,225,231,225,238,97,128,48,73,235,225,244,225,235,225,238,97,129,48,169,144,63,232,225,236,230,247,233,228,244,104,128,255,107,244,242,239,235,229,225,227,245,244,101,128,1,255,245,240,229,242,233,239,114,128,246,240,116,2,144,104,144,115,227,249,242,233,236,236,233,99,128,4,127,233,236,228,101,130,0,245,144,126,144,134,225,227,245,244,101,128,30,77,228,233,229,242,229,243,233,115,128,30,79,245,226,239,240,239,237,239,230,111,128,49,33,118,2,144,163,144,244,229,114,2,144,170,144,236,236,233,238,101,131,32,62,144,183,144,206,144,229,99,2,144,189,144,201,229,238,244,229,242,236,233,238,101,128,254,74,237,98,128,3,5,100,2,144,212,144,220,225,243,232,229,100,128,254,73,226,236,247,225,246,121,128,254,76,247,225,246,121,128,254,75,243,227,239,242,101,128,0,175,239,247,229,236,243,233,231,110,3,145,3,145,13,145,20,226,229,238,231,225,236,105,128,9,203,228,229,246,97,128,9,75,231,245,234,225,242,225,244,105,128,10,203,112,145,0,112,145,69,147,197,147,208,147,217,147,229,149,154,149,164,150,156,151,175,152,9,152,35,152,166,152,174,153,76,153,134,153,162,153,172,97,14,145,99,145,131,145,141,145,148,145,155,145,203,145,214,145,228,145,239,146,30,146,44,147,56,147,95,147,185,97,2,145,105,145,117,237,240,243,243,241,245,225,242,101,128,51,128,243,229,238,244,239,243,241,245,225,242,101,128,51,43,226,229,238,231,225,236,105,128,9,170,227,245,244,101,128,30,85,228,229,246,97,128,9,42,103,2,145,161,145,179,101,2,145,167,145,174,228,239,247,110,128,33,223,245,112,128,33,222,117,2,145,185,145,194,234,225,242,225,244,105,128,10,170,242,237,245,235,232,105,128,10,42,232,233,242,225,231,225,238,97,128,48,113,233,249,225,238,238,239,233,244,232,225,105,128,14,47,235,225,244,225,235,225,238,97,128,48,209,108,2,145,245,146,14,225,244,225,236,233,250,225,244,233,239,238,227,249,242,233,236,236,233,227,227,237,98,128,4,132,239,227,232,235,225,227,249,242,233,236,236,233,99,128,4,192,238,243,233,239,243,235,239,242,229,225,110,128,49,127,114,3,146,52,146,73,147,45,97,2,146,58,146,66,231,242,225,240,104,128,0,182,236,236,229,108,128,34,37,229,110,2,146,80,146,190,236,229,230,116,136,0,40,146,103,146,118,146,123,146,128,146,139,146,151,146,174,146,179,225,236,244,239,238,229,225,242,225,226,233,99,128,253,62,226,116,128,248,237,229,120,128,248,236,233,238,230,229,242,233,239,114,128,32,141,237,239,238,239,243,240,225,227,101,128,255,8,115,2,146,157,146,164,237,225,236,108,128,254,89,245,240,229,242,233,239,114,128,32,125,244,112,128,248,235,246,229,242,244,233,227,225,108,128,254,53,242,233,231,232,116,136,0,41,146,214,146,229,146,234,146,239,146,250,147,6,147,29,147,34,225,236,244,239,238,229,225,242,225,226,233,99,128,253,63,226,116,128,248,248,229,120,128,248,247,233,238,230,229,242,233,239,114,128,32,142,237,239,238,239,243,240,225,227,101,128,255,9,115,2,147,12,147,19,237,225,236,108,128,254,90,245,240,229,242,233,239,114,128,32,126,244,112,128,248,246,246,229,242,244,233,227,225,108,128,254,54,244,233,225,236,228,233,230,102,128,34,2,115,3,147,64,147,75,147,87,229,241,232,229,226,242,229,119,128,5,192,232,244,225,232,229,226,242,229,119,128,5,153,241,245,225,242,101,128,51,169,244,225,104,134,5,183,147,113,147,127,147,132,147,141,147,156,147,172,49,2,147,119,147,123,49,128,5,183,100,128,5,183,178,97,128,5,183,232,229,226,242,229,119,128,5,183,238,225,242,242,239,247,232,229,226,242,229,119,128,5,183,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,183,247,233,228,229,232,229,226,242,229,119,128,5,183,250,229,242,232,229,226,242,229,119,128,5,161,226,239,240,239,237,239,230,111,128,49,6,227,233,242,227,236,101,128,36,223,228,239,244,225,227,227,229,238,116,128,30,87,101,137,5,228,147,251,148,6,148,26,148,38,148,58,148,160,148,171,148,192,149,147,227,249,242,233,236,236,233,99,128,4,63,228,225,231,229,243,104,129,251,68,148,17,232,229,226,242,229,119,128,251,68,229,250,233,243,241,245,225,242,101,128,51,59,230,233,238,225,236,228,225,231,229,243,232,232,229,226,242,229,119,128,251,67,104,5,148,70,148,93,148,101,148,115,148,145,225,114,2,148,77,148,84,225,226,233,99,128,6,126,237,229,238,233,225,110,128,5,122,229,226,242,229,119,128,5,228,230,233,238,225,236,225,242,225,226,233,99,128,251,87,105,2,148,121,148,136,238,233,244,233,225,236,225,242,225,226,233,99,128,251,88,242,225,231,225,238,97,128,48,122,237,229,228,233,225,236,225,242,225,226,233,99,128,251,89,235,225,244,225,235,225,238,97,128,48,218,237,233,228,228,236,229,232,239,239,235,227,249,242,233,236,236,233,99,128,4,167,114,5,148,204,148,216,149,2,149,123,149,136,225,230,229,232,229,226,242,229,119,128,251,78,227,229,238,116,131,0,37,148,229,148,238,148,250,225,242,225,226,233,99,128,6,106,237,239,238,239,243,240,225,227,101,128,255,5,243,237,225,236,108,128,254,106,105,2,149,8,149,105,239,100,134,0,46,149,25,149,36,149,47,149,59,149,70,149,82,225,242,237,229,238,233,225,110,128,5,137,227,229,238,244,229,242,229,100,128,0,183,232,225,236,230,247,233,228,244,104,128,255,97,233,238,230,229,242,233,239,114,128,246,231,237,239,238,239,243,240,225,227,101,128,255,14,115,2,149,88,149,95,237,225,236,108,128,254,82,245,240,229,242,233,239,114,128,246,232,243,240,239,237,229,238,233,231,242,229,229,235,227,237,98,128,3,66,240,229,238,228,233,227,245,236,225,114,128,34,165,244,232,239,245,243,225,238,100,128,32,48,243,229,244,97,128,32,167,230,243,241,245,225,242,101,128,51,138,104,3,149,172,149,222,150,103,97,3,149,180,149,190,149,197,226,229,238,231,225,236,105,128,9,171,228,229,246,97,128,9,43,231,117,2,149,204,149,213,234,225,242,225,244,105,128,10,171,242,237,245,235,232,105,128,10,43,105,133,3,198,149,236,149,240,150,70,150,78,150,89,49,128,3,213,229,245,240,104,4,149,253,150,32,150,47,150,56,97,2,150,3,150,18,227,233,242,227,236,229,235,239,242,229,225,110,128,50,122,240,225,242,229,238,235,239,242,229,225,110,128,50,26,227,233,242,227,236,229,235,239,242,229,225,110,128,50,108,235,239,242,229,225,110,128,49,77,240,225,242,229,238,235,239,242,229,225,110,128,50,12,236,225,244,233,110,128,2,120,238,244,232,245,244,232,225,105,128,14,58,243,249,237,226,239,236,231,242,229,229,107,128,3,213,111,3,150,111,150,116,150,142,239,107,128,1,165,240,104,2,150,123,150,132,225,238,244,232,225,105,128,14,30,245,238,231,244,232,225,105,128,14,28,243,225,237,240,232,225,239,244,232,225,105,128,14,32,105,133,3,192,150,170,151,126,151,137,151,148,151,162,229,245,112,6,150,186,150,221,150,253,151,25,151,39,151,91,97,2,150,192,150,207,227,233,242,227,236,229,235,239,242,229,225,110,128,50,115,240,225,242,229,238,235,239,242,229,225,110,128,50,19,227,105,2,150,228,150,240,229,245,227,235,239,242,229,225,110,128,49,118,242,227,236,229,235,239,242,229,225,110,128,50,101,107,2,151,3,151,17,233,249,229,239,235,235,239,242,229,225,110,128,49,114,239,242,229,225,110,128,49,66,240,225,242,229,238,235,239,242,229,225,110,128,50,5,243,233,239,115,2,151,48,151,76,107,2,151,54,151,68,233,249,229,239,235,235,239,242,229,225,110,128,49,116,239,242,229,225,110,128,49,68,244,233,235,229,245,244,235,239,242,229,225,110,128,49,117,116,2,151,97,151,112,232,233,229,245,244,232,235,239,242,229,225,110,128,49,119,233,235,229,245,244,235,239,242,229],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+40960);allocate([225,110,128,49,115,232,233,242,225,231,225,238,97,128,48,116,235,225,244,225,235,225,238,97,128,48,212,243,249,237,226,239,236,231,242,229,229,107,128,3,214,247,242,225,242,237,229,238,233,225,110,128,5,131,236,245,115,132,0,43,151,189,151,200,151,209,151,242,226,229,236,239,247,227,237,98,128,3,31,227,233,242,227,236,101,128,34,149,109,2,151,215,151,222,233,238,245,115,128,0,177,111,2,151,228,151,232,100,128,2,214,238,239,243,240,225,227,101,128,255,11,115,2,151,248,151,255,237,225,236,108,128,254,98,245,240,229,242,233,239,114,128,32,122,109,2,152,15,152,26,239,238,239,243,240,225,227,101,128,255,80,243,241,245,225,242,101,128,51,216,111,5,152,47,152,58,152,125,152,136,152,146,232,233,242,225,231,225,238,97,128,48,125,233,238,244,233,238,231,233,238,228,229,120,4,152,78,152,90,152,102,152,115,228,239,247,238,247,232,233,244,101,128,38,31,236,229,230,244,247,232,233,244,101,128,38,28,242,233,231,232,244,247,232,233,244,101,128,38,30,245,240,247,232,233,244,101,128,38,29,235,225,244,225,235,225,238,97,128,48,221,240,236,225,244,232,225,105,128,14,27,243,244,225,236,237,225,242,107,129,48,18,152,159,230,225,227,101,128,48,32,240,225,242,229,110,128,36,171,114,3,152,182,152,208,152,233,101,2,152,188,152,196,227,229,228,229,115,128,34,122,243,227,242,233,240,244,233,239,110,128,33,30,233,237,101,2,152,216,152,222,237,239,100,128,2,185,242,229,246,229,242,243,229,100,128,32,53,111,4,152,243,152,250,153,4,153,17,228,245,227,116,128,34,15,234,229,227,244,233,246,101,128,35,5,236,239,238,231,229,228,235,225,238,97,128,48,252,112,2,153,23,153,60,101,2,153,29,153,36,236,236,239,114,128,35,24,242,243,117,2,153,44,153,51,226,243,229,116,128,34,130,240,229,242,243,229,116,128,34,131,239,242,244,233,239,110,129,34,55,153,71,225,108,128,34,29,115,2,153,82,153,125,105,130,3,200,153,90,153,101,227,249,242,233,236,236,233,99,128,4,113,236,233,240,238,229,245,237,225,244,225,227,249,242,233,236,236,233,227,227,237,98,128,4,134,243,241,245,225,242,101,128,51,176,117,2,153,140,153,151,232,233,242,225,231,225,238,97,128,48,119,235,225,244,225,235,225,238,97,128,48,215,246,243,241,245,225,242,101,128,51,180,247,243,241,245,225,242,101,128,51,186,113,136,0,113,153,202,154,251,155,6,155,15,155,22,155,34,155,72,155,80,97,4,153,212,153,235,154,43,154,234,100,2,153,218,153,224,229,246,97,128,9,88,237,225,232,229,226,242,229,119,128,5,168,102,4,153,245,153,254,154,12,154,28,225,242,225,226,233,99,128,6,66,230,233,238,225,236,225,242,225,226,233,99,128,254,214,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,215,237,229,228,233,225,236,225,242,225,226,233,99,128,254,216,237,225,244,115,136,5,184,154,66,154,86,154,100,154,105,154,110,154,119,154,134,154,221,49,3,154,74,154,78,154,82,48,128,5,184,97,128,5,184,99,128,5,184,50,2,154,92,154,96,55,128,5,184,57,128,5,184,179,51,128,5,184,228,101,128,5,184,232,229,226,242,229,119,128,5,184,238,225,242,242,239,247,232,229,226,242,229,119,128,5,184,113,2,154,140,154,206,225,244,225,110,4,154,153,154,162,154,177,154,193,232,229,226,242,229,119,128,5,184,238,225,242,242,239,247,232,229,226,242,229,119,128,5,184,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,184,247,233,228,229,232,229,226,242,229,119,128,5,184,245,225,242,244,229,242,232,229,226,242,229,119,128,5,184,247,233,228,229,232,229,226,242,229,119,128,5,184,242,238,229,249,240,225,242,225,232,229,226,242,229,119,128,5,159,226,239,240,239,237,239,230,111,128,49,17,227,233,242,227,236,101,128,36,224,232,239,239,107,128,2,160,237,239,238,239,243,240,225,227,101,128,255,81,239,102,130,5,231,155,43,155,63,228,225,231,229,243,104,129,251,71,155,54,232,229,226,242,229,119,128,251,71,232,229,226,242,229,119,128,5,231,240,225,242,229,110,128,36,172,117,4,155,90,155,102,155,191,156,22,225,242,244,229,242,238,239,244,101,128,38,105,226,245,244,115,135,5,187,155,123,155,128,155,133,155,138,155,147,155,162,155,178,177,56,128,5,187,178,53,128,5,187,179,49,128,5,187,232,229,226,242,229,119,128,5,187,238,225,242,242,239,247,232,229,226,242,229,119,128,5,187,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,187,247,233,228,229,232,229,226,242,229,119,128,5,187,229,243,244,233,239,110,133,0,63,155,210,155,233,155,250,156,2,156,14,225,114,2,155,217,155,224,225,226,233,99,128,6,31,237,229,238,233,225,110,128,5,94,228,239,247,110,129,0,191,155,242,243,237,225,236,108,128,247,191,231,242,229,229,107,128,3,126,237,239,238,239,243,240,225,227,101,128,255,31,243,237,225,236,108,128,247,63,239,244,101,4,156,34,156,105,156,125,156,154,228,226,108,133,0,34,156,50,156,57,156,64,156,76,156,97,226,225,243,101,128,32,30,236,229,230,116,128,32,28,237,239,238,239,243,240,225,227,101,128,255,2,240,242,233,237,101,129,48,30,156,86,242,229,246,229,242,243,229,100,128,48,29,242,233,231,232,116,128,32,29,236,229,230,116,129,32,24,156,114,242,229,246,229,242,243,229,100,128,32,27,114,2,156,131,156,141,229,246,229,242,243,229,100,128,32,27,233,231,232,116,129,32,25,156,150,110,128,1,73,243,233,238,231,108,2,156,164,156,171,226,225,243,101,128,32,26,101,129,0,39,156,177,237,239,238,239,243,240,225,227,101,128,255,7,114,145,0,114,156,227,157,231,157,242,158,33,158,84,159,101,159,125,159,220,161,254,162,35,162,47,162,101,162,109,163,15,163,26,163,61,163,161,97,11,156,251,157,6,157,16,157,23,157,88,157,104,157,129,157,140,157,165,157,188,157,225,225,242,237,229,238,233,225,110,128,5,124,226,229,238,231,225,236,105,128,9,176,227,245,244,101,128,1,85,100,4,157,33,157,39,157,53,157,79,229,246,97,128,9,48,233,227,225,108,129,34,26,157,48,229,120,128,248,229,239,246,229,242,243,243,241,245,225,242,101,129,51,174,157,69,228,243,241,245,225,242,101,128,51,175,243,241,245,225,242,101,128,51,173,230,101,129,5,191,157,95,232,229,226,242,229,119,128,5,191,231,117,2,157,111,157,120,234,225,242,225,244,105,128,10,176,242,237,245,235,232,105,128,10,48,232,233,242,225,231,225,238,97,128,48,137,235,225,244,225,235,225,238,97,129,48,233,157,153,232,225,236,230,247,233,228,244,104,128,255,151,236,239,247,229,242,228,233,225,231,239,238,225,236,226,229,238,231,225,236,105,128,9,241,109,2,157,194,157,217,233,228,228,236,229,228,233,225,231,239,238,225,236,226,229,238,231,225,236,105,128,9,240,243,232,239,242,110,128,2,100,244,233,111,128,34,54,226,239,240,239,237,239,230,111,128,49,22,99,4,157,252,158,3,158,12,158,20,225,242,239,110,128,1,89,229,228,233,236,236,97,128,1,87,233,242,227,236,101,128,36,225,239,237,237,225,225,227,227,229,238,116,128,1,87,100,2,158,39,158,49,226,236,231,242,225,246,101,128,2,17,239,116,2,158,56,158,65,225,227,227,229,238,116,128,30,89,226,229,236,239,119,129,30,91,158,75,237,225,227,242,239,110,128,30,93,101,6,158,98,158,143,158,178,158,233,159,2,159,35,102,2,158,104,158,117,229,242,229,238,227,229,237,225,242,107,128,32,59,236,229,248,243,117,2,158,127,158,134,226,243,229,116,128,34,134,240,229,242,243,229,116,128,34,135,231,233,243,244,229,114,2,158,154,158,159,229,100,128,0,174,115,2,158,165,158,171,225,238,115,128,248,232,229,242,233,102,128,246,218,104,3,158,186,158,209,158,223,225,114,2,158,193,158,200,225,226,233,99,128,6,49,237,229,238,233,225,110,128,5,128,230,233,238,225,236,225,242,225,226,233,99,128,254,174,233,242,225,231,225,238,97,128,48,140,235,225,244,225,235,225,238,97,129,48,236,158,246,232,225,236,230,247,233,228,244,104,128,255,154,243,104,130,5,232,159,11,159,26,228,225,231,229,243,232,232,229,226,242,229,119,128,251,72,232,229,226,242,229,119,128,5,232,118,3,159,43,159,56,159,88,229,242,243,229,228,244,233,236,228,101,128,34,61,233,97,2,159,63,159,72,232,229,226,242,229,119,128,5,151,237,245,231,242,225,243,232,232,229,226,242,229,119,128,5,151,236,239,231,233,227,225,236,238,239,116,128,35,16,230,233,243,232,232,239,239,107,129,2,126,159,114,242,229,246,229,242,243,229,100,128,2,127,104,2,159,131,159,154,97,2,159,137,159,147,226,229,238,231,225,236,105,128,9,221,228,229,246,97,128,9,93,111,131,3,193,159,164,159,193,159,207,239,107,129,2,125,159,171,244,245,242,238,229,100,129,2,123,159,182,243,245,240,229,242,233,239,114,128,2,181,243,249,237,226,239,236,231,242,229,229,107,128,3,241,244,233,227,232,239,239,235,237,239,100,128,2,222,105,6,159,234,161,22,161,68,161,79,161,104,161,240,229,245,108,9,160,0,160,35,160,50,160,64,160,110,160,124,160,210,160,223,161,2,97,2,160,6,160,21,227,233,242,227,236,229,235,239,242,229,225,110,128,50,113,240,225,242,229,238,235,239,242,229,225,110,128,50,17,227,233,242,227,236,229,235,239,242,229,225,110,128,50,99,232,233,229,245,232,235,239,242,229,225,110,128,49,64,107,2,160,70,160,102,233,249,229,239,107,2,160,80,160,89,235,239,242,229,225,110,128,49,58,243,233,239,243,235,239,242,229,225,110,128,49,105,239,242,229,225,110,128,49,57,237,233,229,245,237,235,239,242,229,225,110,128,49,59,112,3,160,132,160,164,160,179,97,2,160,138,160,152,238,243,233,239,243,235,239,242,229,225,110,128,49,108,242,229,238,235,239,242,229,225,110,128,50,3,232,233,229,245,240,232,235,239,242,229,225,110,128,49,63,233,229,245,112,2,160,188,160,197,235,239,242,229,225,110,128,49,60,243,233,239,243,235,239,242,229,225,110,128,49,107,243,233,239,243,235,239,242,229,225,110,128,49,61,116,2,160,229,160,244,232,233,229,245,244,232,235,239,242,229,225,110,128,49,62,233,235,229,245,244,235,239,242,229,225,110,128,49,106,249,229,239,242,233,238,232,233,229,245,232,235,239,242,229,225,110,128,49,109,231,232,116,2,161,30,161,38,225,238,231,236,101,128,34,31,116,2,161,44,161,58,225,227,235,226,229,236,239,247,227,237,98,128,3,25,242,233,225,238,231,236,101,128,34,191,232,233,242,225,231,225,238,97,128,48,138,235,225,244,225,235,225,238,97,129,48,234,161,92,232,225,236,230,247,233,228,244,104,128,255,152,110,2,161,110,161,226,103,131,2,218,161,120,161,131,161,137,226,229,236,239,247,227,237,98,128,3,37,227,237,98,128,3,10,232,225,236,102,2,161,146,161,192,236,229,230,116,131,2,191,161,159,161,170,161,181,225,242,237,229,238,233,225,110,128,5,89,226,229,236,239,247,227,237,98,128,3,28,227,229,238,244,229,242,229,100,128,2,211,242,233,231,232,116,130,2,190,161,204,161,215,226,229,236,239,247,227,237,98,128,3,57,227,229,238,244,229,242,229,100,128,2,210,246,229,242,244,229,228,226,242,229,246,101,128,2,19,244,244,239,242,245,243,241,245,225,242,101,128,51,81,108,2,162,4,162,15,233,238,229,226,229,236,239,119,128,30,95,239,238,231,236,229,103,129,2,124,162,26,244,245,242,238,229,100,128,2,122,237,239,238,239,243,240,225,227,101,128,255,82,111,3,162,55,162,66,162,91,232,233,242,225,231,225,238,97,128,48,141,235,225,244,225,235,225,238,97,129,48,237,162,79,232,225,236,230,247,233,228,244,104,128,255,155,242,245,225,244,232,225,105,128,14,35,240,225,242,229,110,128,36,173,114,3,162,117,162,153,162,183,97,3,162,125,162,135,162,142,226,229,238,231,225,236,105,128,9,220,228,229,246,97,128,9,49,231,245,242,237,245,235,232,105,128,10,92,229,104,2,162,160,162,169,225,242,225,226,233,99,128,6,145,230,233,238,225,236,225,242,225,226,233,99,128,251,141,246,239,227,225,236,233,99,4,162,199,162,209,162,216,162,227,226,229,238,231,225,236,105,128,9,224,228,229,246,97,128,9,96,231,245,234,225,242,225,244,105,128,10,224,246,239,247,229,236,243,233,231,110,3,162,243,162,253,163,4,226,229,238,231,225,236,105,128,9,196,228,229,246,97,128,9,68,231,245,234,225,242,225,244,105,128,10,196,243,245,240,229,242,233,239,114,128,246,241,116,2,163,32,163,40,226,236,239,227,107,128,37,144,245,242,238,229,100,129,2,121,163,50,243,245,240,229,242,233,239,114,128,2,180,117,4,163,71,163,82,163,107,163,154,232,233,242,225,231,225,238,97,128,48,139,235,225,244,225,235,225,238,97,129,48,235,163,95,232,225,236,230,247,233,228,244,104,128,255,153,112,2,163,113,163,148,229,101,2,163,120,163,134,237,225,242,235,226,229,238,231,225,236,105,128,9,242,243,233,231,238,226,229,238,231,225,236,105,128,9,243,233,225,104,128,246,221,244,232,225,105,128,14,36,246,239,227,225,236,233,99,4,163,177,163,187,163,194,163,205,226,229,238,231,225,236,105,128,9,139,228,229,246,97,128,9,11,231,245,234,225,242,225,244,105,128,10,139,246,239,247,229,236,243,233,231,110,3,163,221,163,231,163,238,226,229,238,231,225,236,105,128,9,195,228,229,246,97,128,9,67,231,245,234,225,242,225,244,105,128,10,195,115,147,0,115,164,35,166,5,166,16,166,142,166,181,169,123,169,134,172,21,174,159,174,205,174,232,175,167,175,234,177,11,177,21,177,207,178,24,178,194,178,204,97,9,164,55,164,65,164,86,164,158,164,183,164,194,164,219,164,251,165,35,226,229,238,231,225,236,105,128,9,184,227,245,244,101,129,1,91,164,74,228,239,244,225,227,227,229,238,116,128,30,101,100,5,164,98,164,107,164,113,164,127,164,143,225,242,225,226,233,99,128,6,53,229,246,97,128,9,56,230,233,238,225,236,225,242,225,226,233,99,128,254,186,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,187,237,229,228,233,225,236,225,242,225,226,233,99,128,254,188,231,117,2,164,165,164,174,234,225,242,225,244,105,128,10,184,242,237,245,235,232,105,128,10,56,232,233,242,225,231,225,238,97,128,48,85,235,225,244,225,235,225,238,97,129,48,181,164,207,232,225,236,230,247,233,228,244,104,128,255,123,236,236,225,236,236,225,232,239,245,225,236,225,249,232,229,247,225,243,225,236,236,225,237,225,242,225,226,233,99,128,253,250,237,229,235,104,130,5,225,165,6,165,26,228,225,231,229,243,104,129,251,65,165,17,232,229,226,242,229,119,128,251,65,232,229,226,242,229,119,128,5,225,242,97,5,165,48,165,122,165,130,165,180,165,188,97,5,165,60,165,68,165,76,165,107,165,115,225,244,232,225,105,128,14,50,229,244,232,225,105,128,14,65,233,237,225,233,109,2,165,86,165,97,225,236,225,233,244,232,225,105,128,14,68,245,225,238,244,232,225,105,128,14,67,237,244,232,225,105,128,14,51,244,232,225,105,128,14,48,229,244,232,225,105,128,14,64,105,3,165,138,165,162,165,173,105,2,165,144,165,155,236,229,230,244,244,232,225,105,128,248,134,244,232,225,105,128,14,53,236,229,230,244,244,232,225,105,128,248,133,244,232,225,105,128,14,52,239,244,232,225,105,128,14,66,117,3,165,196,165,246,165,253,101,3,165,204,165,228,165,239,101,2,165,210,165,221,236,229,230,244,244,232,225,105,128,248,136,244,232,225,105,128,14,55,236,229,230,244,244,232,225,105,128,248,135,244,232,225,105,128,14,54,244,232,225,105,128,14,56,245,244,232,225,105,128,14,57,226,239,240,239,237,239,230,111,128,49,25,99,5,166,28,166,49,166,58,166,107,166,129,225,242,239,110,129,1,97,166,37,228,239,244,225,227,227,229,238,116,128,30,103,229,228,233,236,236,97,128,1,95,232,247,97,131,2,89,166,70,166,81,166,100,227,249,242,233,236,236,233,99,128,4,217,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,219,232,239,239,107,128,2,90,233,242,99,2,166,115,166,120,236,101,128,36,226,245,237,230,236,229,120,128,1,93,239,237,237,225,225,227,227,229,238,116,128,2,25,228,239,116,2,166,150,166,159,225,227,227,229,238,116,128,30,97,226,229,236,239,119,129,30,99,166,169,228,239,244,225,227,227,229,238,116,128,30,105,101,9,166,201,166,217,166,252,167,61,167,164,167,191,167,216,168,41,168,68,225,231,245,236,236,226,229,236,239,247,227,237,98,128,3,60,99,2,166,223,166,245,239,238,100,129,32,51,166,231,244,239,238,229,227,232,233,238,229,243,101,128,2,202,244,233,239,110,128,0,167,229,110,4,167,7,167,16,167,30,167,46,225,242,225,226,233,99,128,6,51,230,233,238,225,236,225,242,225,226,233,99,128,254,178,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,179,237,229,228,233,225,236,225,242,225,226,233,99,128,254,180,231,239,108,135,5,182,167,81,167,95,167,100,167,109,167,124,167,140,167,151,49,2,167,87,167,91,51,128,5,182,102,128,5,182,178,99,128,5,182,232,229,226,242,229,119,128,5,182,238,225,242,242,239,247,232,229,226,242,229,119,128,5,182,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,182,244,225,232,229,226,242,229,119,128,5,146,247,233,228,229,232,229,226,242,229,119,128,5,182,104,2,167,170,167,181,225,242,237,229,238,233,225,110,128,5,125,233,242,225,231,225,238,97,128,48,91,235,225,244,225,235,225,238,97,129,48,187,167,204,232,225,236,230,247,233,228,244,104,128,255,126,237,105,2,167,223,168,10,227,239,236,239,110,131,0,59,167,237,167,246,168,2,225,242,225,226,233,99,128,6,27,237,239,238,239,243,240,225,227,101,128,255,27,243,237,225,236,108,128,254,84,246,239,233,227,229,228,237,225,242,235,235,225,238,97,129,48,156,168,29,232,225,236,230,247,233,228,244,104,128,255,159,238,116,2,168,48,168,58,233,243,241,245,225,242,101,128,51,34,239,243,241,245,225,242,101,128,51,35,246,229,110,142,0,55,168,102,168,111,168,121,168,151,168,158,168,168,168,193,168,220,168,254,169,10,169,21,169,54,169,62,169,73,225,242,225,226,233,99,128,6,103,226,229,238,231,225,236,105,128,9,237,227,233,242,227,236,101,129,36,102,168,132,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,144,228,229,246,97,128,9,109,229,233,231,232,244,232,115,128,33,94,231,117,2,168,175,168,184,234,225,242,225,244,105,128,10,237,242,237,245,235,232,105,128,10,109,232,97,2,168,200,168,211,227,235,225,242,225,226,233,99,128,6,103,238,231,250,232,239,117,128,48,39,105,2,168,226,168,244,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,38,238,230,229,242,233,239,114,128,32,135,237,239,238,239,243,240,225,227,101,128,255,23,239,236,228,243,244,249,236,101,128,247,55,112,2,169,27,169,34,225,242,229,110,128,36,122,229,114,2,169,41,169,47,233,239,100,128,36,142,243,233,225,110,128,6,247,242,239,237,225,110,128,33,118,243,245,240,229,242,233,239,114,128,32,119,116,2,169,79,169,117,229,229,110,2,169,87,169,96,227,233,242,227,236,101,128,36,112,112,2,169,102,169,109,225,242,229,110,128,36,132,229,242,233,239,100,128,36,152,232,225,105,128,14,87,230,244,232,249,240,232,229,110,128,0,173,104,7,169,150,170,124,170,135,170,149,171,94,171,107,172,15,97,6,169,164,169,175,169,185,169,196,170,83,170,108,225,242,237,229,238,233,225,110,128,5,119,226,229,238,231,225,236,105,128,9,182,227,249,242,233,236,236,233,99,128,4,72,100,2,169,202,170,42,228,97,4,169,213,169,222,169,253,170,11,225,242,225,226,233,99,128,6,81,228,225,237,237,97,2,169,232,169,241,225,242,225,226,233,99,128,252,97,244,225,238,225,242,225,226,233,99,128,252,94,230,225,244,232,225,225,242,225,226,233,99,128,252,96,235,225,243,242,97,2,170,21,170,30,225,242,225,226,233,99,128,252,98,244,225,238,225,242,225,226,233,99,128,252,95,101,132,37,146,170,54,170,61,170,69,170,78,228,225,242,107,128,37,147,236,233,231,232,116,128,37,145,237,229,228,233,245,109,128,37,146,246,97,128,9,54,231,117,2,170,90,170,99,234,225,242,225,244,105,128,10,182,242,237,245,235,232,105,128,10,54,236,243,232,229,236,229,244,232,229,226,242,229,119,128,5,147,226,239,240,239,237,239,230,111,128,49,21,227,232,225,227,249,242,233,236,236,233,99,128,4,73,101,4,170,159,170,224,170,234,170,251,229,110,4,170,170,170,179,170,193,170,209,225,242,225,226,233,99,128,6,52,230,233,238,225,236,225,242,225,226,233,99,128,254,182,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,183,237,229,228,233,225,236,225,242,225,226,233,99,128,254,184,233,227,239,240,244,233,99,128,3,227,241,229,108,129,32,170,170,242,232,229,226,242,229,119,128,32,170,246,97,134,5,176,171,12,171,27,171,41,171,50,171,65,171,81,49,2,171,18,171,23,177,53,128,5,176,53,128,5,176,50,2,171,33,171,37,50,128,5,176,101,128,5,176,232,229,226,242,229,119,128,5,176,238,225,242,242,239,247,232,229,226,242,229,119,128,5,176,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,176,247,233,228,229,232,229,226,242,229,119,128,5,176,232,225,227,249,242,233,236,236,233,99,128,4,187,105,2,171,113,171,124,237,225,227,239,240,244,233,99,128,3,237,110,131,5,233,171,134,171,217,171,226,100,2,171,140,171,206,225,231,229,243,104,130,251,73,171,152,171,161,232,229,226,242,229,119,128,251,73,115,2,171,167,171,187,232,233,238,228,239,116,129,251,44,171,178,232,229,226,242,229,119,128,251,44,233,238,228,239,116,129,251,45,171,197,232,229,226,242,229,119,128,251,45,239,244,232,229,226,242,229,119,128,5,193,232,229,226,242,229,119,128,5,233,115,2,171,232,171,252,232,233,238,228,239,116,129,251,42,171,243,232,229,226,242,229,119,128,251,42,233,238,228,239,116,129,251,43,172,6,232,229,226,242,229,119,128,251,43,239,239,107,128,2,130,105,8,172,39,172,83,172,94,172,119,172,149,172,157,172,170,173,85,231,237,97,131,3,195,172,51,172,55,172,63,49,128,3,194,230,233,238,225,108,128,3,194,236,245,238,225,244,229,243,249,237,226,239,236,231,242,229,229,107,128,3,242,232,233,242,225,231,225,238,97,128,48,87,235,225,244,225,235,225,238,97,129,48,183,172,107,232,225,236,230,247,233,228,244,104,128,255,124,236,245,113,2,172,127,172,136,232,229,226,242,229,119,128,5,189,236,229,230,244,232,229,226,242,229,119,128,5,189,237,233,236,225,114,128,34,60,238,228,239,244,232,229,226,242,229,119,128,5,194,239,115,6,172,185,172,220,172,252,173,24,173,38,173,70,97,2,172,191,172,206,227,233,242,227,236,229,235,239,242,229,225,110,128,50,116,240,225,242,229,238,235,239,242,229,225,110,128,50,20,227,105,2,172,227,172,239,229,245,227,235,239,242,229,225,110,128,49,126,242,227,236,229,235,239,242,229,225,110,128,50,102,107,2,173,2,173,16,233,249,229,239,235,235,239,242,229,225,110,128,49,122,239,242,229,225,110,128,49,69,238,233,229,245,238,235,239,242,229,225,110,128,49,123,112,2,173,44,173,57,225,242,229,238,235,239,242,229,225,110,128,50,6,233,229,245,240,235,239,242,229,225,110,128,49,125,244,233,235,229,245,244,235,239,242,229,225,110,128,49,124,120,141,0,54,173,115,173,124,173,134,173,164,173,171,173,196,173,223,174,1,174,13,174,24,174,57,174,65,174,76,225,242,225,226,233,99,128,6,102,226,229,238,231,225,236,105,128,9,236,227,233,242,227,236,101,129,36,101,173,145,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,143,228,229,246,97,128,9,108,231,117,2,173,178,173,187,234,225,242,225,244,105,128,10,236,242,237,245,235,232,105,128,10,108,232,97,2,173,203,173,214,227,235,225,242,225,226,233,99,128,6,102,238,231,250,232,239,117,128,48,38,105,2,173,229,173,247,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,37,238,230,229,242,233,239,114,128,32,134,237,239,238,239,243,240,225,227,101,128,255,22,239,236,228,243,244,249,236,101,128,247,54,112,2,174,30,174,37,225,242,229,110,128,36,121,229,114,2,174,44,174,50,233,239,100,128,36,141,243,233,225,110,128,6,246,242,239,237,225,110,128,33,117,243,245,240,229,242,233,239,114,128,32,118,116,2,174,82,174,153,229,229,110,2,174,90,174,132,99,2,174,96,174,104,233,242,227,236,101,128,36,111,245,242,242,229,238,227,249,228,229,238,239,237,233,238,225,244,239,242,226,229,238,231,225,236,105,128,9,249,112,2,174,138,174,145,225,242,229,110,128,36,131,229,242,233,239,100,128,36,151,232,225,105,128,14,86,108,2,174,165,174,185,225,243,104,129,0,47,174,173,237,239,238,239,243,240,225,227,101,128,255,15,239,238,103,129,1,127,174,193,228,239,244,225,227,227,229,238,116,128,30,155,109,2,174,211,174,221,233,236,229,230,225,227,101,128,38,58,239,238,239,243,240,225,227,101,128,255,83,111,6,174,246,175,40,175,51,175,76,175,121,175,132,102,2,174,252,175,10,240,225,243,245,241,232,229,226,242,229,119,128,5,195,116,2,175,16,175,25,232,249,240,232,229,110,128,0,173,243,233,231,238,227,249,242,233,236,236,233,99,128,4,76,232,233,242,225,231,225,238,97,128,48,93,235,225,244,225,235,225,238,97,129,48,189,175,64,232,225,236,230,247,233,228,244,104,128,255,127,236,233,228,245,115,2,175,86,175,103,236,239,238,231,239,246,229,242,236,225,249,227,237,98,128,3,56,243,232,239,242,244,239,246,229,242,236,225,249,227,237,98,128,3,55,242,245,243,233,244,232,225,105,128,14,41,115,3,175,140,175,150,175,158,225,236,225,244,232,225,105,128,14,40,239,244,232,225,105,128,14,11,245,225,244,232,225,105,128,14,42,240,97,3,175,176,175,196,175,228,227,101,129,0,32,175,183,232,225,227,235,225,242,225,226,233,99,128,0,32,228,101,129,38,96,175,203,243,245,233,116,2,175,212,175,220,226,236,225,227,107,128,38,96,247,232,233,244,101,128,38,100,242,229,110,128,36,174,241,245,225,242,101,11,176,6,176,17,176,31,176,56,176,73,176,99,176,114,176,147,176,174,176,230,176,245,226,229,236,239,247,227,237,98,128,3,59,99,2,176,23,176,27,99,128,51,196,109,128,51,157,228,233,225,231,239,238,225,236,227,242,239,243,243,232,225,244,227,232,230,233,236,108,128,37,169,232,239,242,233,250,239,238,244,225,236,230,233,236,108,128,37,164,107,2,176,79,176,83,103,128,51,143,109,129,51,158,176,89,227,225,240,233,244,225,108,128,51,206,108,2,176,105,176,109,110,128,51,209,239,103,128,51,210,109,4,176,124,176,128,176,133,176,137,103,128,51,142,233,108,128,51,213,109,128,51,156,243,241,245,225,242,229,100,128,51,161,239,242,244,232,239,231,239,238,225,236,227,242,239,243,243,232,225,244,227,232,230,233,236,108,128,37,166,245,240,240,229,114,2,176,184,176,207,236,229,230,244,244,239,236,239,247,229,242,242,233,231,232,244,230,233,236,108,128,37,167,242,233,231,232,244,244,239,236,239,247,229,242,236,229,230,244,230,233,236,108,128,37,168,246,229,242,244,233,227,225,236,230,233,236,108,128,37,165,247,232,233,244,229,247,233,244,232,243,237,225,236,236,226,236,225,227,107,128,37,163,242,243,241,245,225,242,101,128,51,219,115,2,177,27,177,197,97,4,177,37,177,47,177,54,177,65,226,229,238,231,225,236,105,128,9,183,228,229,246,97,128,9,55,231,245,234,225,242,225,244,105,128,10,183,238,103,8,177,84,177,98,177,112,177,126,177,141,177,155,177,169,177,182,227,233,229,245,227,235,239,242,229,225,110,128,49,73,232,233,229,245,232,235,239,242,229,225,110,128,49,133,233,229,245,238,231,235,239,242,229,225,110,128,49,128,235,233,249,229,239,235,235,239,242,229,225,110,128,49,50,238,233,229,245,238,235,239,242,229,225,110,128,49,101,240,233,229,245,240,235,239,242,229,225,110,128,49,67,243,233,239,243,235,239,242,229,225,110,128,49,70,244,233,235,229,245,244,235,239,242,229,225,110,128,49,56,245,240,229,242,233,239,114,128,246,242,116,2,177,213,177,236,229,242,236,233,238,103,129,0,163,177,224,237,239,238,239,243,240,225,227,101,128,255,225,242,239,235,101,2,177,245,178,6,236,239,238,231,239,246,229,242,236,225,249,227,237,98,128,3,54,243,232,239,242,244,239,246,229,242,236,225,249,227,237,98,128,3,53,117,7,178,40,178,72,178,94,178,105,178,146,178,156,178,160,226,243,229,116,130,34,130,178,51,178,62,238,239,244,229,241,245,225,108,128,34,138,239,242,229,241,245,225,108,128,34,134,99,2,178,78,178,86,227,229,229,228,115,128,34,123,232,244,232,225,116,128,34,11,232,233,242,225,231,225,238,97,128,48,89,107,2,178,111,178,135,225,244,225,235,225,238,97,129,48,185,178,123,232,225,236,230,247,233,228,244,104,128,255,125,245,238,225,242,225,226,233,99,128,6,82,237,237,225,244,233,239,110,128,34,17,110,128,38,60,240,229,242,243,229,116,130,34,131,178,173,178,184,238,239,244,229,241,245,225,108,128,34,139,239,242,229,241,245,225,108,128,34,135,246,243,241,245,225,242,101,128,51,220,249,239,245,247,225,229,242,225,243,241,245,225,242,101,128,51,124,116,144,0,116,179,1,180,10,180,31,180,174,180,214,183,6,186,144,187,219,187,231,187,243,189,20,189,45,189,131,190,55,190,239,191,73,97,10,179,23,179,33,179,54,179,61,179,86,179,164,179,181,179,206,179,220,179,224,226,229,238,231,225,236,105,128,9,164,227,107,2,179,40,179,47,228,239,247,110,128,34,164,236,229,230,116,128,34,163,228,229,246,97,128,9,36,231,117,2,179,68,179,77,234,225,242,225,244,105,128,10,164,242,237,245,235,232,105,128,10,36,104,4,179,96,179,105,179,119,179,149,225,242,225,226,233,99,128,6,55,230,233,238,225,236,225,242,225,226,233,99,128,254,194,105,2,179,125,179,140,238,233,244,233,225,236,225,242,225,226,233,99,128,254,195,242,225,231,225,238,97,128,48,95,237,229,228,233,225,236,225,242,225,226,233,99,128,254,196,233,243,249,239,245,229,242,225,243,241,245,225,242,101,128,51,125,235,225,244,225,235,225,238,97,129,48,191,179,194,232,225,236,230,247,233,228,244,104,128,255,128,244,247,229,229,236,225,242,225,226,233,99,128,6,64,117,128,3,196,118,130,5,234,179,232,180,1,228,225,231,229,115,129,251,74,179,242,104,129,251,74,179,248,232,229,226,242,229,119,128,251,74,232,229,226,242,229,119,128,5,234,98,2,180,16,180,21,225,114,128,1,103,239,240,239,237,239,230,111,128,49,10,99,6,180,45,180,52,180,59,180,68,180,134,180,161,225,242,239,110,128,1,101,227,245,242,108,128,2,168,229,228,233,236,236,97,128,1,99,232,229,104,4,180,80,180,89,180,103,180,119,225,242,225,226,233,99,128,6,134,230,233,238,225,236,225,242,225,226,233,99,128,251,123,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,124,237,229,228,233,225,236,225,242,225,226,233,99,128,251,125,233,242,99,2,180,142,180,147,236,101,128,36,227,245,237,230,236,229,248,226,229,236,239,119,128,30,113,239,237,237,225,225,227,227,229,238,116,128,1,99,100,2,180,180,180,190,233,229,242,229,243,233,115,128,30,151,239,116,2,180,197,180,206,225,227,227,229,238,116,128,30,107,226,229,236,239,119,128,30,109,101,9,180,234,180,245,181,9,182,19,182,44,182,108,182,175,182,180,182,232,227,249,242,233,236,236,233,99,128,4,66,228,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,173,104,7,181,25,181,34,181,48,181,88,181,118,181,159,182,1,225,242,225,226,233,99,128,6,42,230,233,238,225,236,225,242,225,226,233,99,128,254,150,232,225,232,105,2,181,57,181,72,238,233,244,233,225,236,225,242,225,226,233,99,128,252,162,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,12,105,2,181,94,181,109,238,233,244,233,225,236,225,242,225,226,233,99,128,254,151,242,225,231,225,238,97,128,48,102,234,229,229,237,105,2,181,128,181,143,238,233,244,233,225,236,225,242,225,226,233,99,128,252,161,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,11,109,2,181,165,181,199,225,242,226,245,244,97,2,181,176,181,185,225,242,225,226,233,99,128,6,41,230,233,238,225,236,225,242,225,226,233,99,128,254,148,101,2,181,205,181,218,228,233,225,236,225,242,225,226,233,99,128,254,152,229,237,105,2,181,226,181,241,238,233,244,233,225,236,225,242,225,226,233,99,128,252,164,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,14,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,115,235,225,244,225,235,225,238,97,129,48,198,182,32,232,225,236,230,247,233,228,244,104,128,255,131,108,2,182,50,182,69,229,240,232,239,238,101,129,33,33,182,61,226,236,225,227,107,128,38,14,233,243,232,97,2,182,78,182,93,231,229,228,239,236,225,232,229,226,242,229,119,128,5,160,241,229,244,225,238,225,232,229,226,242,229,119,128,5,169,110,4,182,118,182,127,182,146,182,167,227,233,242,227,236,101,128,36,105,233,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,41,112,2,182,152,182,159,225,242,229,110,128,36,125,229,242,233,239,100,128,36,145,242,239,237,225,110,128,33,121,243,104,128,2,167,116,131,5,216,182,190,182,210,182,219,228,225,231,229,243,104,129,251,56,182,201,232,229,226,242,229,119,128,251,56,232,229,226,242,229,119,128,5,216,243,229,227,249,242,233,236,236,233,99,128,4,181,246,233,114,2,182,240,182,249,232,229,226,242,229,119,128,5,155,236,229,230,244,232,229,226,242,229,119,128,5,155,104,6,183,20,183,172,184,38,184,170,185,77,186,134,97,5,183,32,183,42,183,49,183,74,183,103,226,229,238,231,225,236,105,128,9,165,228,229,246,97,128,9,37,231,117,2,183,56,183,65,234,225,242,225,244,105,128,10,165,242,237,245,235,232,105,128,10,37,108,2,183,80,183,89,225,242,225,226,233,99,128,6,48,230,233,238,225,236,225,242,225,226,233,99,128,254,172,238,244,232,225,235,232,225,116,3,183,118,183,149,183,156,236,239,119,2,183,126,183,137,236,229,230,244,244,232,225,105,128,248,152,242,233,231,232,244,244,232,225,105,128,248,151,244,232,225,105,128,14,76,245,240,240,229,242,236,229,230,244,244,232,225,105,128,248,150,101,3,183,180,183,244,184,11,104,4,183,190,183,199,183,213,183,229,225,242,225,226,233,99,128,6,43,230,233,238,225,236,225,242,225,226,233,99,128,254,154,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,155,237,229,228,233,225,236,225,242,225,226,233,99,128,254,156,242,101,2,183,251,184,4,229,248,233,243,244,115,128,34,3,230,239,242,101,128,34,52,244,97,130,3,184,184,20,184,24,49,128,3,209,243,249,237,226,239,236,231,242,229,229,107,128,3,209,105,2,184,44,184,130,229,245,244,104,4,184,57,184,92,184,107,184,116,97,2,184,63,184,78,227,233,242,227,236,229,235,239,242,229,225,110,128,50,121,240,225,242,229,238,235,239,242,229,225,110,128,50,25,227,233,242,227,236,229,235,239,242,229,225,110,128,50,107,235,239,242,229,225,110,128,49,76,240,225,242,229,238,235,239,242,229,225,110,128,50,11,242,244,229,229,110,2,184,140,184,149,227,233,242,227,236,101,128,36,108,112,2,184,155,184,162,225,242,229,110,128,36,128,229,242,233,239,100,128,36,148,111,6,184,184,184,201,184,206,184,220,184,225,185,22,238,225,238,231,237,239,238,244,232,239,244,232,225,105,128,14,17,239,107,128,1,173,240,232,245,244,232,225,239,244,232,225,105,128,14,18,242,110,128,0,254,244,104,3,184,234,185,2,185,12,97,2,184,240,184,250,232,225,238,244,232,225,105,128,14,23,238,244,232,225,105,128,14,16,239,238,231,244,232,225,105,128,14,24,245,238,231,244,232,225,105,128,14,22,245,243,225,238,100,2,185,32,185,43,227,249,242,233,236,236,233,99,128,4,130,243,243,229,240,225,242,225,244,239,114,2,185,58,185,67,225,242,225,226,233,99,128,6,108,240,229,242,243,233,225,110,128,6,108,242,229,101,144,0,51,185,115,185,124,185,134,185,164,185,171,185,181,185,206,185,233,186,11,186,23,186,42,186,53,186,86,186,108,186,116,186,127,225,242,225,226,233,99,128,6,99,226,229,238,231,225,236,105,128,9,233,227,233,242,227,236,101,129,36,98,185,145,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,140,228,229,246,97,128,9,105,229,233,231,232,244,232,115,128,33,92,231,117,2,185,188,185,197,234,225,242,225,244,105,128,10,233,242,237,245,235,232,105,128,10,105,232,97,2,185,213,185,224,227,235,225,242,225,226,233,99,128,6,99,238,231,250,232,239,117,128,48,35,105,2,185,239,186,1,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,34,238,230,229,242,233,239,114,128,32,131,237,239,238,239,243,240,225,227,101,128,255,19,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,246,239,236,228,243,244,249,236,101,128,247,51,112,2,186,59,186,66,225,242,229,110,128,36,118,229,114,2,186,73,186,79,233,239,100,128,36,138,243,233,225,110,128,6,243,241,245,225,242,244,229,242,115,129,0,190,186,99,229,237,228,225,243,104,128,246,222,242,239,237,225,110,128,33,114,243,245,240,229,242,233,239,114,128,0,179,244,232,225,105,128,14,83,250,243,241,245,225,242,101,128,51,148,105,7,186,160,186,171,187,30,187,128,187,140,187,189,187,206,232,233,242,225,231,225,238,97,128,48,97,107,2,186,177,186,201,225,244,225,235,225,238,97,129,48,193,186,189,232,225,236,230,247,233,228,244,104,128,255,129,229,245,116,4,186,213,186,248,187,7,187,16,97,2,186,219,186,234,227,233,242,227,236,229,235,239,242,229,225,110,128,50,112,240,225,242,229,238,235,239,242,229,225,110,128,50,16,227,233,242,227,236,229,235,239,242,229,225,110,128,50,98,235,239,242,229,225,110,128,49,55,240,225,242,229,238,235,239,242,229,225,110,128,50,2,236,228,101,133,2,220,187,46,187,57,187,74,187,86,187,114,226,229,236,239,247,227,237,98,128,3,48,99,2,187,63,187,68,237,98,128,3,3,239,237,98,128,3,3,228,239,245,226,236,229,227,237,98,128,3,96,111,2,187,92,187,102,240,229,242,225,244,239,114,128,34,60,246,229,242,236,225,249,227,237,98,128,3,52,246,229,242,244,233,227,225,236,227,237,98,128,3,62,237,229,243,227,233,242,227,236,101,128,34,151,112,2,187,146,187,176,229,232,97,2,187,154,187,163,232,229,226,242,229,119,128,5,150,236,229,230,244,232,229,226,242,229,119,128,5,150,240,233,231,245,242,237,245,235,232,105,128,10,112,244,236,239,227,249,242,233,236,236,233,227,227,237,98,128,4,131,247,238,225,242,237,229,238,233,225,110,128,5,127,236,233,238,229,226,229,236,239,119,128,30,111,237,239,238,239,243,240,225,227,101,128,255,84,111,7,188,3,188,14,188,25,188,50,188,170,188,182,189,10,225,242,237,229,238,233,225,110,128,5,105,232,233,242,225,231,225,238,97,128,48,104,235,225,244,225,235,225,238,97,129,48,200,188,38,232,225,236,230,247,233,228,244,104,128,255,132,110,3,188,58,188,156,188,161,101,4,188,68,188,137,188,144,188,150,226,225,114,4,188,80,188,109,188,119,188,128,229,248,244,242,97,2,188,90,188,100,232,233,231,232,237,239,100,128,2,229,236,239,247,237,239,100,128,2,233,232,233,231,232,237,239,100,128,2,230,236,239,247,237,239,100,128,2,232,237,233,228,237,239,100,128,2,231,230,233,246,101,128,1,189,243,233,120,128,1,133,244,247,111,128,1,168,239,115,128,3,132,243,241,245,225,242,101,128,51,39,240,225,244,225,235,244,232,225,105,128,14,15,242,244,239,233,243,229,243,232,229,236,236,226,242,225,227,235,229,116,2,188,205,188,235,236,229,230,116,130,48,20,188,216,188,224,243,237,225,236,108,128,254,93,246,229,242,244,233,227,225,108,128,254,57,242,233,231,232,116,130,48,21,188,247,188,255,243,237,225,236,108,128,254,94,246,229,242,244,233,227,225,108,128,254,58,244,225,239,244,232,225,105,128,14,21,240,97,2,189,27,189,39,236,225,244,225,236,232,239,239,107,128,1,171,242,229,110,128,36,175,114,3,189,53,189,84,189,99,225,228,229,237,225,242,107,129,33,34,189,65,115,2,189,71,189,77,225,238,115,128,248,234,229,242,233,102,128,246,219,229,244,242,239,230,236,229,248,232,239,239,107,128,2,136,233,225,103,4,189,111,189,116,189,121,189,126,228,110,128,37,188,236,102,128,37,196,242,116,128,37,186,245,112,128,37,178,115,132,2,166,189,143,189,182,190,32,190,45,225,228,105,130,5,230,189,153,189,173,228,225,231,229,243,104,129,251,70,189,164,232,229,226,242,229,119,128,251,70,232,229,226,242,229,119,128,5,230,101,2,189,188,189,199,227,249,242,233,236,236,233,99,128,4,70,242,101,134,5,181,189,216,189,230,189,235,189,244,190,3,190,19,49,2,189,222,189,226,50,128,5,181,101,128,5,181,178,98,128,5,181,232,229,226,242,229,119,128,5,181,238,225,242,242,239,247,232,229,226,242,229,119,128,5,181,241,245,225,242,244,229,242,232,229,226,242,229,119,128,5,181,247,233,228,229,232,229,226,242,229,119,128,5,181,232,229,227,249,242,233,236,236,233,99,128,4,91,245,240,229,242,233,239,114,128,246,243,116,4,190,65,190,115,190,180,190,231,97,3,190,73,190,83,190,90,226,229,238,231,225,236,105,128,9,159,228,229,246,97,128,9,31,231,117,2,190,97,190,106,234,225,242,225,244,105,128,10,159,242,237,245,235,232,105,128,10,31,229,104,4,190,126,190,135,190,149,190,165,225,242,225,226,233,99,128,6,121,230,233,238,225,236,225,242,225,226,233,99,128,251,103,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,104,237,229,228,233,225,236,225,242,225,226,233,99,128,251,105,232,97,3,190,189,190,199,190,206,226,229,238,231,225,236,105,128,9,160,228,229,246,97,128,9,32,231,117,2,190,213,190,222,234,225,242,225,244,105,128,10,160,242,237,245,235,232,105,128,10,32,245,242,238,229,100,128,2,135,117,3,190,247,191,2,191,27,232,233,242,225,231,225,238,97,128,48,100,235,225,244,225,235,225,238,97,129,48,196,191,15,232,225,236,230,247,233,228,244,104,128,255,130,243,237,225,236,108,2,191,37,191,48,232,233,242,225,231,225,238,97,128,48,99,235,225,244,225,235,225,238,97,129,48,195,191,61,232,225,236,230,247,233,228,244,104,128,255,111,119,2,191,79,191,184,101,2,191,85,191,133,236,246,101,3,191,95,191,104,191,125,227,233,242,227,236,101,128,36,107,112,2,191,110,191,117,225,242,229,110,128,36,127,229,242,233,239],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+51200);allocate([100,128,36,147,242,239,237,225,110,128,33,123,238,244,121,3,191,143,191,152,191,163,227,233,242,227,236,101,128,36,115,232,225,238,231,250,232,239,117,128,83,68,112,2,191,169,191,176,225,242,229,110,128,36,135,229,242,233,239,100,128,36,155,111,142,0,50,191,216,191,225,191,235,192,9,192,61,192,86,192,113,192,147,192,159,192,178,192,189,192,222,192,230,192,254,225,242,225,226,233,99,128,6,98,226,229,238,231,225,236,105,128,9,232,227,233,242,227,236,101,129,36,97,191,246,233,238,246,229,242,243,229,243,225,238,243,243,229,242,233,102,128,39,139,100,2,192,15,192,21,229,246,97,128,9,104,239,116,2,192,28,192,39,229,238,236,229,225,228,229,114,128,32,37,236,229,225,228,229,114,129,32,37,192,50,246,229,242,244,233,227,225,108,128,254,48,231,117,2,192,68,192,77,234,225,242,225,244,105,128,10,232,242,237,245,235,232,105,128,10,104,232,97,2,192,93,192,104,227,235,225,242,225,226,233,99,128,6,98,238,231,250,232,239,117,128,48,34,105,2,192,119,192,137,228,229,239,231,242,225,240,232,233,227,240,225,242,229,110,128,50,33,238,230,229,242,233,239,114,128,32,130,237,239,238,239,243,240,225,227,101,128,255,18,238,245,237,229,242,225,244,239,242,226,229,238,231,225,236,105,128,9,245,239,236,228,243,244,249,236,101,128,247,50,112,2,192,195,192,202,225,242,229,110,128,36,117,229,114,2,192,209,192,215,233,239,100,128,36,137,243,233,225,110,128,6,242,242,239,237,225,110,128,33,113,115,2,192,236,192,244,244,242,239,235,101,128,1,187,245,240,229,242,233,239,114,128,0,178,244,104,2,193,5,193,10,225,105,128,14,82,233,242,228,115,128,33,84,117,145,0,117,193,55,193,63,193,104,193,161,194,43,194,80,194,203,194,219,195,14,195,84,195,165,195,174,196,37,196,61,196,169,196,197,197,55,225,227,245,244,101,128,0,250,98,4,193,73,193,78,193,87,193,97,225,114,128,2,137,229,238,231,225,236,105,128,9,137,239,240,239,237,239,230,111,128,49,40,242,229,246,101,128,1,109,99,3,193,112,193,119,193,151,225,242,239,110,128,1,212,233,242,99,2,193,127,193,132,236,101,128,36,228,245,237,230,236,229,120,129,0,251,193,143,226,229,236,239,119,128,30,119,249,242,233,236,236,233,99,128,4,67,100,5,193,173,193,184,193,207,193,213,194,33,225,244,244,225,228,229,246,97,128,9,81,226,108,2,193,191,193,199,225,227,245,244,101,128,1,113,231,242,225,246,101,128,2,21,229,246,97,128,9,9,233,229,242,229,243,233,115,133,0,252,193,233,193,241,193,249,194,16,194,24,225,227,245,244,101,128,1,216,226,229,236,239,119,128,30,115,99,2,193,255,194,6,225,242,239,110,128,1,218,249,242,233,236,236,233,99,128,4,241,231,242,225,246,101,128,1,220,237,225,227,242,239,110,128,1,214,239,244,226,229,236,239,119,128,30,229,103,2,194,49,194,56,242,225,246,101,128,0,249,117,2,194,62,194,71,234,225,242,225,244,105,128,10,137,242,237,245,235,232,105,128,10,9,104,3,194,88,194,98,194,176,233,242,225,231,225,238,97,128,48,70,111,2,194,104,194,114,239,235,225,226,239,246,101,128,30,231,242,110,133,1,176,194,129,194,137,194,148,194,156,194,168,225,227,245,244,101,128,30,233,228,239,244,226,229,236,239,119,128,30,241,231,242,225,246,101,128,30,235,232,239,239,235,225,226,239,246,101,128,30,237,244,233,236,228,101,128,30,239,245,238,231,225,242,245,237,236,225,245,116,129,1,113,194,192,227,249,242,233,236,236,233,99,128,4,243,233,238,246,229,242,244,229,228,226,242,229,246,101,128,2,23,107,3,194,227,194,251,195,6,225,244,225,235,225,238,97,129,48,166,194,239,232,225,236,230,247,233,228,244,104,128,255,115,227,249,242,233,236,236,233,99,128,4,121,239,242,229,225,110,128,49,92,109,2,195,20,195,73,97,2,195,26,195,59,227,242,239,110,130,1,107,195,37,195,48,227,249,242,233,236,236,233,99,128,4,239,228,233,229,242,229,243,233,115,128,30,123,244,242,225,231,245,242,237,245,235,232,105,128,10,65,239,238,239,243,240,225,227,101,128,255,85,110,2,195,90,195,145,228,229,242,243,227,239,242,101,132,0,95,195,109,195,115,195,127,195,138,228,226,108,128,32,23,237,239,238,239,243,240,225,227,101,128,255,63,246,229,242,244,233,227,225,108,128,254,51,247,225,246,121,128,254,79,105,2,195,151,195,156,239,110,128,34,42,246,229,242,243,225,108,128,34,0,239,231,239,238,229,107,128,1,115,112,5,195,186,195,193,195,201,195,216,196,11,225,242,229,110,128,36,176,226,236,239,227,107,128,37,128,240,229,242,228,239,244,232,229,226,242,229,119,128,5,196,243,233,236,239,110,131,3,197,195,230,195,251,196,3,228,233,229,242,229,243,233,115,129,3,203,195,243,244,239,238,239,115,128,3,176,236,225,244,233,110,128,2,138,244,239,238,239,115,128,3,205,244,225,227,107,2,196,20,196,31,226,229,236,239,247,227,237,98,128,3,29,237,239,100,128,2,212,114,2,196,43,196,55,225,231,245,242,237,245,235,232,105,128,10,115,233,238,103,128,1,111,115,3,196,69,196,84,196,129,232,239,242,244,227,249,242,233,236,236,233,99,128,4,94,237,225,236,108,2,196,93,196,104,232,233,242,225,231,225,238,97,128,48,69,235,225,244,225,235,225,238,97,129,48,165,196,117,232,225,236,230,247,233,228,244,104,128,255,105,244,242,225,233,231,232,116,2,196,141,196,152,227,249,242,233,236,236,233,99,128,4,175,243,244,242,239,235,229,227,249,242,233,236,236,233,99,128,4,177,244,233,236,228,101,130,1,105,196,181,196,189,225,227,245,244,101,128,30,121,226,229,236,239,119,128,30,117,117,5,196,209,196,219,196,226,196,251,197,11,226,229,238,231,225,236,105,128,9,138,228,229,246,97,128,9,10,231,117,2,196,233,196,242,234,225,242,225,244,105,128,10,138,242,237,245,235,232,105,128,10,10,237,225,244,242,225,231,245,242,237,245,235,232,105,128,10,66,246,239,247,229,236,243,233,231,110,3,197,27,197,37,197,44,226,229,238,231,225,236,105,128,9,194,228,229,246,97,128,9,66,231,245,234,225,242,225,244,105,128,10,194,246,239,247,229,236,243,233,231,110,3,197,71,197,81,197,88,226,229,238,231,225,236,105,128,9,193,228,229,246,97,128,9,65,231,245,234,225,242,225,244,105,128,10,193,118,139,0,118,197,125,198,17,198,26,198,37,198,222,198,229,199,71,199,83,199,183,199,191,199,212,97,4,197,135,197,142,197,167,197,178,228,229,246,97,128,9,53,231,117,2,197,149,197,158,234,225,242,225,244,105,128,10,181,242,237,245,235,232,105,128,10,53,235,225,244,225,235,225,238,97,128,48,247,118,132,5,213,197,190,197,217,197,249,198,5,228,225,231,229,243,104,130,251,53,197,203,197,208,182,53,128,251,53,232,229,226,242,229,119,128,251,53,104,2,197,223,197,231,229,226,242,229,119,128,5,213,239,236,225,109,129,251,75,197,240,232,229,226,242,229,119,128,251,75,246,225,246,232,229,226,242,229,119,128,5,240,249,239,228,232,229,226,242,229,119,128,5,241,227,233,242,227,236,101,128,36,229,228,239,244,226,229,236,239,119,128,30,127,101,6,198,51,198,62,198,126,198,137,198,143,198,210,227,249,242,233,236,236,233,99,128,4,50,104,4,198,72,198,81,198,95,198,111,225,242,225,226,233,99,128,6,164,230,233,238,225,236,225,242,225,226,233,99,128,251,107,233,238,233,244,233,225,236,225,242,225,226,233,99,128,251,108,237,229,228,233,225,236,225,242,225,226,233,99,128,251,109,235,225,244,225,235,225,238,97,128,48,249,238,245,115,128,38,64,242,244,233,227,225,108,2,198,154,198,160,226,225,114,128,0,124,236,233,238,101,4,198,173,198,184,198,195,198,204,225,226,239,246,229,227,237,98,128,3,13,226,229,236,239,247,227,237,98,128,3,41,236,239,247,237,239,100,128,2,204,237,239,100,128,2,200,247,225,242,237,229,238,233,225,110,128,5,126,232,239,239,107,128,2,139,105,3,198,237,198,248,199,31,235,225,244,225,235,225,238,97,128,48,248,242,225,237,97,3,199,3,199,13,199,20,226,229,238,231,225,236,105,128,9,205,228,229,246,97,128,9,77,231,245,234,225,242,225,244,105,128,10,205,243,225,242,231,97,3,199,43,199,53,199,60,226,229,238,231,225,236,105,128,9,131,228,229,246,97,128,9,3,231,245,234,225,242,225,244,105,128,10,131,237,239,238,239,243,240,225,227,101,128,255,86,111,3,199,91,199,102,199,172,225,242,237,229,238,233,225,110,128,5,120,233,227,229,100,2,199,111,199,147,233,244,229,242,225,244,233,239,110,2,199,125,199,136,232,233,242,225,231,225,238,97,128,48,158,235,225,244,225,235,225,238,97,128,48,254,237,225,242,235,235,225,238,97,129,48,155,199,160,232,225,236,230,247,233,228,244,104,128,255,158,235,225,244,225,235,225,238,97,128,48,250,240,225,242,229,110,128,36,177,116,2,199,197,199,204,233,236,228,101,128,30,125,245,242,238,229,100,128,2,140,117,2,199,218,199,229,232,233,242,225,231,225,238,97,128,48,148,235,225,244,225,235,225,238,97,128,48,244,119,143,0,119,200,18,200,251,201,5,201,28,201,68,201,135,201,143,203,114,203,155,203,167,203,242,203,250,204,1,204,12,204,21,97,8,200,36,200,43,200,53,200,64,200,102,200,134,200,146,200,182,227,245,244,101,128,30,131,229,235,239,242,229,225,110,128,49,89,232,233,242,225,231,225,238,97,128,48,143,107,2,200,70,200,94,225,244,225,235,225,238,97,129,48,239,200,82,232,225,236,230,247,233,228,244,104,128,255,156,239,242,229,225,110,128,49,88,243,237,225,236,108,2,200,112,200,123,232,233,242,225,231,225,238,97,128,48,142,235,225,244,225,235,225,238,97,128,48,238,244,244,239,243,241,245,225,242,101,128,51,87,118,2,200,152,200,160,229,228,225,243,104,128,48,28,249,245,238,228,229,242,243,227,239,242,229,246,229,242,244,233,227,225,108,128,254,52,119,3,200,190,200,199,200,213,225,242,225,226,233,99,128,6,72,230,233,238,225,236,225,242,225,226,233,99,128,254,238,232,225,237,250,225,225,226,239,246,101,2,200,228,200,237,225,242,225,226,233,99,128,6,36,230,233,238,225,236,225,242,225,226,233,99,128,254,134,226,243,241,245,225,242,101,128,51,221,227,233,242,99,2,201,14,201,19,236,101,128,36,230,245,237,230,236,229,120,128,1,117,100,2,201,34,201,44,233,229,242,229,243,233,115,128,30,133,239,116,2,201,51,201,60,225,227,227,229,238,116,128,30,135,226,229,236,239,119,128,30,137,101,4,201,78,201,89,201,101,201,125,232,233,242,225,231,225,238,97,128,48,145,233,229,242,243,244,242,225,243,115,128,33,24,107,2,201,107,201,117,225,244,225,235,225,238,97,128,48,241,239,242,229,225,110,128,49,94,239,235,239,242,229,225,110,128,49,93,231,242,225,246,101,128,30,129,232,233,244,101,8,201,164,201,173,202,1,202,91,202,175,202,220,203,16,203,72,226,245,236,236,229,116,128,37,230,99,2,201,179,201,199,233,242,227,236,101,129,37,203,201,189,233,238,246,229,242,243,101,128,37,217,239,242,238,229,242,226,242,225,227,235,229,116,2,201,216,201,236,236,229,230,116,129,48,14,201,225,246,229,242,244,233,227,225,108,128,254,67,242,233,231,232,116,129,48,15,201,246,246,229,242,244,233,227,225,108,128,254,68,100,2,202,7,202,48,233,225,237,239,238,100,129,37,199,202,18,227,239,238,244,225,233,238,233,238,231,226,236,225,227,235,243,237,225,236,236,228,233,225,237,239,238,100,128,37,200,239,247,238,240,239,233,238,244,233,238,103,2,202,64,202,80,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,191,244,242,233,225,238,231,236,101,128,37,189,236,101,2,202,98,202,140,230,244,240,239,233,238,244,233,238,103,2,202,113,202,129,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,195,244,242,233,225,238,231,236,101,128,37,193,238,244,233,227,245,236,225,242,226,242,225,227,235,229,116,2,202,160,202,167,236,229,230,116,128,48,22,242,233,231,232,116,128,48,23,242,233,231,232,244,240,239,233,238,244,233,238,103,2,202,193,202,209,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,185,244,242,233,225,238,231,236,101,128,37,183,115,3,202,228,203,2,203,10,109,2,202,234,202,246,225,236,236,243,241,245,225,242,101,128,37,171,233,236,233,238,231,230,225,227,101,128,38,58,241,245,225,242,101,128,37,161,244,225,114,128,38,6,116,2,203,22,203,33,229,236,229,240,232,239,238,101,128,38,15,239,242,244,239,233,243,229,243,232,229,236,236,226,242,225,227,235,229,116,2,203,57,203,64,236,229,230,116,128,48,24,242,233,231,232,116,128,48,25,245,240,240,239,233,238,244,233,238,103,2,203,87,203,103,243,237,225,236,236,244,242,233,225,238,231,236,101,128,37,181,244,242,233,225,238,231,236,101,128,37,179,105,2,203,120,203,131,232,233,242,225,231,225,238,97,128,48,144,107,2,203,137,203,147,225,244,225,235,225,238,97,128,48,240,239,242,229,225,110,128,49,95,237,239,238,239,243,240,225,227,101,128,255,87,111,4,203,177,203,188,203,213,203,231,232,233,242,225,231,225,238,97,128,48,146,235,225,244,225,235,225,238,97,129,48,242,203,201,232,225,236,230,247,233,228,244,104,128,255,102,110,129,32,169,203,219,237,239,238,239,243,240,225,227,101,128,255,230,247,225,229,238,244,232,225,105,128,14,39,240,225,242,229,110,128,36,178,242,233,238,103,128,30,152,243,245,240,229,242,233,239,114,128,2,183,244,245,242,238,229,100,128,2,141,249,238,110,128,1,191,120,137,0,120,204,49,204,60,204,71,204,80,204,107,204,120,204,124,204,136,204,144,225,226,239,246,229,227,237,98,128,3,61,226,239,240,239,237,239,230,111,128,49,18,227,233,242,227,236,101,128,36,231,100,2,204,86,204,96,233,229,242,229,243,233,115,128,30,141,239,244,225,227,227,229,238,116,128,30,139,229,232,225,242,237,229,238,233,225,110,128,5,109,105,128,3,190,237,239,238,239,243,240,225,227,101,128,255,88,240,225,242,229,110,128,36,179,243,245,240,229,242,233,239,114,128,2,227,121,143,0,121,204,189,205,148,205,171,205,211,207,177,207,185,207,202,208,10,208,22,209,19,209,59,209,71,209,82,209,103,210,76,97,11,204,213,204,225,204,235,204,242,204,249,205,3,205,28,205,39,205,77,205,90,205,136,225,228,239,243,241,245,225,242,101,128,51,78,226,229,238,231,225,236,105,128,9,175,227,245,244,101,128,0,253,228,229,246,97,128,9,47,229,235,239,242,229,225,110,128,49,82,231,117,2,205,10,205,19,234,225,242,225,244,105,128,10,175,242,237,245,235,232,105,128,10,47,232,233,242,225,231,225,238,97,128,48,132,107,2,205,45,205,69,225,244,225,235,225,238,97,129,48,228,205,57,232,225,236,230,247,233,228,244,104,128,255,148,239,242,229,225,110,128,49,81,237,225,235,235,225,238,244,232,225,105,128,14,78,243,237,225,236,108,2,205,100,205,111,232,233,242,225,231,225,238,97,128,48,131,235,225,244,225,235,225,238,97,129,48,227,205,124,232,225,236,230,247,233,228,244,104,128,255,108,244,227,249,242,233,236,236,233,99,128,4,99,227,233,242,99,2,205,157,205,162,236,101,128,36,232,245,237,230,236,229,120,128,1,119,100,2,205,177,205,187,233,229,242,229,243,233,115,128,0,255,239,116,2,205,194,205,203,225,227,227,229,238,116,128,30,143,226,229,236,239,119,128,30,245,101,7,205,227,206,235,206,244,207,6,207,38,207,114,207,165,104,8,205,245,205,254,206,32,206,46,206,119,206,135,206,194,206,212,225,242,225,226,233,99,128,6,74,226,225,242,242,229,101,2,206,9,206,18,225,242,225,226,233,99,128,6,210,230,233,238,225,236,225,242,225,226,233,99,128,251,175,230,233,238,225,236,225,242,225,226,233,99,128,254,242,232,225,237,250,225,225,226,239,246,101,4,206,65,206,74,206,88,206,104,225,242,225,226,233,99,128,6,38,230,233,238,225,236,225,242,225,226,233,99,128,254,138,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,139,237,229,228,233,225,236,225,242,225,226,233,99,128,254,140,233,238,233,244,233,225,236,225,242,225,226,233,99,128,254,243,237,101,2,206,142,206,155,228,233,225,236,225,242,225,226,233,99,128,254,244,229,237,105,2,206,163,206,178,238,233,244,233,225,236,225,242,225,226,233,99,128,252,221,243,239,236,225,244,229,228,225,242,225,226,233,99,128,252,88,238,239,239,238,230,233,238,225,236,225,242,225,226,233,99,128,252,148,244,232,242,229,229,228,239,244,243,226,229,236,239,247,225,242,225,226,233,99,128,6,209,235,239,242,229,225,110,128,49,86,110,129,0,165,206,250,237,239,238,239,243,240,225,227,101,128,255,229,111,2,207,12,207,21,235,239,242,229,225,110,128,49,85,242,233,238,232,233,229,245,232,235,239,242,229,225,110,128,49,134,114,3,207,46,207,82,207,94,225,232,226,229,238,249,239,237,111,2,207,60,207,69,232,229,226,242,229,119,128,5,170,236,229,230,244,232,229,226,242,229,119,128,5,170,233,227,249,242,233,236,236,233,99,128,4,75,245,228,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,249,243,233,229,245,238,103,3,207,127,207,136,207,152,235,239,242,229,225,110,128,49,129,240,225,238,243,233,239,243,235,239,242,229,225,110,128,49,131,243,233,239,243,235,239,242,229,225,110,128,49,130,244,233,246,232,229,226,242,229,119,128,5,154,231,242,225,246,101,128,30,243,232,239,239,107,129,1,180,207,194,225,226,239,246,101,128,30,247,105,5,207,214,207,225,207,236,207,245,207,253,225,242,237,229,238,233,225,110,128,5,117,227,249,242,233,236,236,233,99,128,4,87,235,239,242,229,225,110,128,49,98,238,249,225,238,103,128,38,47,247,238,225,242,237,229,238,233,225,110,128,5,130,237,239,238,239,243,240,225,227,101,128,255,89,111,7,208,38,208,108,208,119,208,129,208,167,208,213,208,222,100,131,5,217,208,48,208,68,208,77,228,225,231,229,243,104,129,251,57,208,59,232,229,226,242,229,119,128,251,57,232,229,226,242,229,119,128,5,217,249,239,100,2,208,85,208,94,232,229,226,242,229,119,128,5,242,240,225,244,225,232,232,229,226,242,229,119,128,251,31,232,233,242,225,231,225,238,97,128,48,136,233,235,239,242,229,225,110,128,49,137,107,2,208,135,208,159,225,244,225,235,225,238,97,129,48,232,208,147,232,225,236,230,247,233,228,244,104,128,255,150,239,242,229,225,110,128,49,91,243,237,225,236,108,2,208,177,208,188,232,233,242,225,231,225,238,97,128,48,135,235,225,244,225,235,225,238,97,129,48,231,208,201,232,225,236,230,247,233,228,244,104,128,255,110,244,231,242,229,229,107,128,3,243,121,2,208,228,209,9,97,2,208,234,208,244,229,235,239,242,229,225,110,128,49,136,107,2,208,250,209,2,239,242,229,225,110,128,49,135,244,232,225,105,128,14,34,233,238,231,244,232,225,105,128,14,13,112,2,209,25,209,32,225,242,229,110,128,36,180,239,231,229,231,242,225,237,237,229,238,105,129,3,122,209,48,231,242,229,229,235,227,237,98,128,3,69,114,129,1,166,209,65,233,238,103,128,30,153,243,245,240,229,242,233,239,114,128,2,184,116,2,209,88,209,95,233,236,228,101,128,30,249,245,242,238,229,100,128,2,142,117,5,209,115,209,126,209,136,209,174,210,50,232,233,242,225,231,225,238,97,128,48,134,233,235,239,242,229,225,110,128,49,140,107,2,209,142,209,166,225,244,225,235,225,238,97,129,48,230,209,154,232,225,236,230,247,233,228,244,104,128,255,149,239,242,229,225,110,128,49,96,115,3,209,182,209,220,210,5,226,233,103,2,209,190,209,201,227,249,242,233,236,236,233,99,128,4,107,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,109,236,233,244,244,236,101,2,209,231,209,242,227,249,242,233,236,236,233,99,128,4,103,233,239,244,233,230,233,229,228,227,249,242,233,236,236,233,99,128,4,105,237,225,236,108,2,210,14,210,25,232,233,242,225,231,225,238,97,128,48,133,235,225,244,225,235,225,238,97,129,48,229,210,38,232,225,236,230,247,233,228,244,104,128,255,109,249,101,2,210,57,210,66,235,239,242,229,225,110,128,49,139,239,235,239,242,229,225,110,128,49,138,249,97,2,210,83,210,93,226,229,238,231,225,236,105,128,9,223,228,229,246,97,128,9,95,122,142,0,122,210,132,211,140,211,151,211,194,211,221,213,0,213,108,213,150,213,162,213,174,213,202,213,210,213,226,213,235,97,10,210,154,210,165,210,172,210,179,210,190,211,12,211,42,211,53,211,89,211,101,225,242,237,229,238,233,225,110,128,5,102,227,245,244,101,128,1,122,228,229,246,97,128,9,91,231,245,242,237,245,235,232,105,128,10,91,104,4,210,200,210,209,210,223,210,253,225,242,225,226,233,99,128,6,56,230,233,238,225,236,225,242,225,226,233,99,128,254,198,105,2,210,229,210,244,238,233,244,233,225,236,225,242,225,226,233,99,128,254,199,242,225,231,225,238,97,128,48,86,237,229,228,233,225,236,225,242,225,226,233,99,128,254,200,233,110,2,211,19,211,28,225,242,225,226,233,99,128,6,50,230,233,238,225,236,225,242,225,226,233,99,128,254,176,235,225,244,225,235,225,238,97,128,48,182,241,229,102,2,211,61,211,75,231,225,228,239,236,232,229,226,242,229,119,128,5,149,241,225,244,225,238,232,229,226,242,229,119,128,5,148,242,241,225,232,229,226,242,229,119,128,5,152,249,233,110,130,5,214,211,111,211,131,228,225,231,229,243,104,129,251,54,211,122,232,229,226,242,229,119,128,251,54,232,229,226,242,229,119,128,5,214,226,239,240,239,237,239,230,111,128,49,23,99,3,211,159,211,166,211,188,225,242,239,110,128,1,126,233,242,99,2,211,174,211,179,236,101,128,36,233,245,237,230,236,229,120,128,30,145,245,242,108,128,2,145,228,239,116,130,1,124,211,204,211,213,225,227,227,229,238,116,128,1,124,226,229,236,239,119,128,30,147,101,6,211,235,211,246,212,33,212,44,212,55,212,251,227,249,242,233,236,236,233,99,128,4,55,100,2,211,252,212,15,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,153,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,223,232,233,242,225,231,225,238,97,128,48,92,235,225,244,225,235,225,238,97,128,48,188,242,111,140,0,48,212,84,212,93,212,103,212,110,212,135,212,148,212,159,212,171,212,182,212,192,212,203,212,210,225,242,225,226,233,99,128,6,96,226,229,238,231,225,236,105,128,9,230,228,229,246,97,128,9,102,231,117,2,212,117,212,126,234,225,242,225,244,105,128,10,230,242,237,245,235,232,105,128,10,102,232,225,227,235,225,242,225,226,233,99,128,6,96,233,238,230,229,242,233,239,114,128,32,128,237,239,238,239,243,240,225,227,101,128,255,16,239,236,228,243,244,249,236,101,128,247,48,240,229,242,243,233,225,110,128,6,240,243,245,240,229,242,233,239,114,128,32,112,244,232,225,105,128,14,80,247,233,228,244,104,3,212,222,212,231,212,243,234,239,233,238,229,114,128,254,255,238,239,238,234,239,233,238,229,114,128,32,12,243,240,225,227,101,128,32,11,244,97,128,3,182,104,2,213,6,213,17,226,239,240,239,237,239,230,111,128,49,19,101,4,213,27,213,38,213,54,213,65,225,242,237,229,238,233,225,110,128,5,106,226,242,229,246,229,227,249,242,233,236,236,233,99,128,4,194,227,249,242,233,236,236,233,99,128,4,54,100,2,213,71,213,90,229,243,227,229,238,228,229,242,227,249,242,233,236,236,233,99,128,4,151,233,229,242,229,243,233,243,227,249,242,233,236,236,233,99,128,4,221,105,3,213,116,213,127,213,138,232,233,242,225,231,225,238,97,128,48,88,235,225,244,225,235,225,238,97,128,48,184,238,239,242,232,229,226,242,229,119,128,5,174,236,233,238,229,226,229,236,239,119,128,30,149,237,239,238,239,243,240,225,227,101,128,255,90,111,2,213,180,213,191,232,233,242,225,231,225,238,97,128,48,94,235,225,244,225,235,225,238,97,128,48,190,240,225,242,229,110,128,36,181,242,229,244,242,239,230,236,229,248,232,239,239,107,128,2,144,243,244,242,239,235,101,128,1,182,117,2,213,241,213,252,232,233,242,225,231,225,238,97,128,48,90,235,225,244,225,235,225,238,97,128,48,186,68,101,108,116,97,0,79,109,101,103,97,0,102,114,97,99,116,105,111,110,0,104,121,112,104,101,110,0,109,97,99,114,111,110,0,109,117,0,112,101,114,105,111,100,99,101,110,116,101,114,101,100,0,115,112,97,99,101,0,84,99,111,109,109,97,97,99,99,101,110,116,0,116,99,111,109,109,97,97,99,99,101,110,116,0,46,110,117,108,108,0,110,111,110,109,97,114,107,105,110,103,114,101,116,117,114,110,0,110,111,116,101,113,117,97,108,0,105,110,102,105,110,105,116,121,0,108,101,115,115,101,113,117,97,108,0,103,114,101,97,116,101,114,101,113,117,97,108,0,112,97,114,116,105,97,108,100,105,102,102,0,115,117,109,109,97,116,105,111,110,0,112,114,111,100,117,99,116,0,112,105,0,105,110,116,101,103,114,97,108,0,79,109,101,103,97,0,114,97,100,105,99,97,108,0,97,112,112,114,111,120,101,113,117,97,108,0,68,101,108,116,97,0,110,111,110,98,114,101,97,107,105,110,103,115,112,97,99,101,0,108,111,122,101,110,103,101,0,97,112,112,108,101,0,102,114,97,110,99,0,71,98,114,101,118,101,0,103,98,114,101,118,101,0,73,100,111,116,97,99,99,101,110,116,0,83,99,101,100,105,108,108,97,0,115,99,101,100,105,108,108,97,0,67,97,99,117,116,101,0,99,97,99,117,116,101,0,67,99,97,114,111,110,0,99,99,97,114,111,110,0,100,99,114,111,97,116,0,46,110,111,116,100,101,102,0,115,112,97,99,101,0,101,120,99,108,97,109,0,113,117,111,116,101,100,98,108,0,110,117,109,98,101,114,115,105,103,110,0,100,111,108,108,97,114,0,112,101,114,99,101,110,116,0,97,109,112,101,114,115,97,110,100,0,113,117,111,116,101,114,105,103,104,116,0,112,97,114,101,110,108,101,102,116,0,112,97,114,101,110,114,105,103,104,116,0,97,115,116,101,114,105,115,107,0,112,108,117,115,0,99,111,109,109,97,0,104,121,112,104,101,110,0,112,101,114,105,111,100,0,115,108,97,115,104,0,122,101,114,111,0,111,110,101,0,116,119,111,0,116,104,114,101,101,0,102,111,117,114,0,102,105,118,101,0,115,105,120,0,115,101,118,101,110,0,101,105,103,104,116,0,110,105,110,101,0,99,111,108,111,110,0,115,101,109,105,99,111,108,111,110,0,108,101,115,115,0,101,113,117,97,108,0,103,114,101,97,116,101,114,0,113,117,101,115,116,105,111,110,0,97,116,0,65,0,66,0,67,0,68,0,69,0,70,0,71,0,72,0,73,0,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,98,114,97,99,107,101,116,108,101,102,116,0,98,97,99,107,115,108,97,115,104,0,98,114,97,99,107,101,116,114,105,103,104,116,0,97,115,99,105,105,99,105,114,99,117,109,0,117,110,100,101,114,115,99,111,114,101,0,113,117,111,116,101,108,101,102,116,0,97,0,98,0,99,0,100,0,101,0,102,0,103,0,104,0,105,0,106,0,107,0,108,0,109,0,110,0,111,0,112,0,113,0,114,0,115,0,116,0,117,0,118,0,119,0,120,0,121,0,122,0,98,114,97,99,101,108,101,102,116,0,98,97,114,0,98,114,97,99,101,114,105,103,104,116,0,97,115,99,105,105,116,105,108,100,101,0,101,120,99,108,97,109,100,111,119,110,0,99,101,110,116,0,115,116,101,114,108,105,110,103,0,102,114,97,99,116,105,111,110,0,121,101,110,0,102,108,111,114,105,110,0,115,101,99,116,105,111,110,0,99,117,114,114,101,110,99,121,0,113,117,111,116,101,115,105,110,103,108,101,0,113,117,111,116,101,100,98,108,108,101,102,116,0,103,117,105,108,108,101,109,111,116,108,101,102,116,0,103,117,105,108,115,105,110,103,108,108,101,102,116,0,103,117,105,108,115,105,110,103,108,114,105,103,104,116,0,102,105,0,102,108,0,101,110,100,97,115,104,0,100,97,103,103,101,114,0,100,97,103,103,101,114,100,98,108,0,112,101,114,105,111,100,99,101,110,116,101,114,101,100,0,112,97,114,97,103,114,97,112,104,0,98,117,108,108,101,116,0,113,117,111,116,101,115,105,110,103,108,98,97,115,101,0,113,117,111,116,101,100,98,108,98,97,115,101,0,113,117,111,116,101,100,98,108,114,105,103,104,116,0,103,117,105,108,108,101,109,111,116,114,105,103,104,116,0,101,108,108,105,112,115,105,115,0,112,101,114,116,104,111,117,115,97,110,100,0,113,117,101,115,116,105,111,110,100,111,119,110,0,103,114,97,118,101,0,97,99,117,116,101,0,99,105,114,99,117,109,102,108,101,120,0,116,105,108,100,101,0,109,97,99,114,111,110,0,98,114,101,118,101,0,100,111,116,97,99,99,101,110,116,0,100,105,101,114,101,115,105,115,0,114,105,110,103,0,99,101,100,105,108,108,97,0,104,117,110,103,97,114,117,109,108,97,117,116,0,111,103,111,110,101,107,0,99,97,114,111,110,0,101,109,100,97,115,104,0,65,69,0,111,114,100,102,101,109,105,110,105,110,101,0,76,115,108,97,115,104,0,79,115,108,97,115,104,0,79,69,0,111,114,100,109,97,115,99,117,108,105,110,101,0,97,101,0,100,111,116,108,101,115,115,105,0,108,115,108,97,115,104,0,111,115,108,97,115,104,0,111,101,0,103,101,114,109,97,110,100,98,108,115,0,111,110,101,115,117,112,101,114,105,111,114,0,108,111,103,105,99,97,108,110,111,116,0,109,117,0,116,114,97,100,101,109,97,114,107,0,69,116,104,0,111,110,101,104,97,108,102,0,112,108,117,115,109,105,110,117,115,0,84,104,111,114,110,0,111,110,101,113,117,97,114,116,101,114,0,100,105,118,105,100,101,0,98,114,111,107,101,110,98,97,114,0,100,101,103,114,101,101,0,116,104,111,114,110,0,116,104,114,101,101,113,117,97,114,116,101,114,115,0,116,119,111,115,117,112,101,114,105,111,114,0,114,101,103,105,115,116,101,114,101,100,0,109,105,110,117,115,0,101,116,104,0,109,117,108,116,105,112,108,121,0,116,104,114,101,101,115,117,112,101,114,105,111,114,0,99,111,112,121,114,105,103,104,116,0,65,97,99,117,116,101,0,65,99,105,114,99,117,109,102,108,101,120,0,65,100,105,101,114,101,115,105,115,0,65,103,114,97,118,101,0,65,114,105,110,103,0,65,116,105,108,100,101,0,67,99,101,100,105,108,108,97,0,69,97,99,117,116,101,0,69,99,105,114,99,117,109,102,108,101,120,0,69,100,105,101,114,101,115,105,115,0,69,103,114,97,118,101,0,73,97,99,117,116,101,0,73,99,105,114,99,117,109,102,108,101,120,0,73,100,105,101,114,101,115,105,115,0,73,103,114,97,118,101,0,78,116,105,108,100,101,0,79,97,99,117,116,101,0,79,99,105,114,99,117,109,102,108,101,120,0,79,100,105,101,114,101,115,105,115,0,79,103,114,97,118,101,0,79,116,105,108,100,101,0,83,99,97,114,111,110,0,85,97,99,117,116,101,0,85,99,105,114,99,117,109,102,108,101,120,0,85,100,105,101,114,101,115,105,115,0,85,103,114,97,118,101,0,89,97,99,117,116,101,0,89,100,105,101,114,101,115,105,115,0,90,99,97,114,111,110,0,97,97,99,117,116,101,0,97,99,105,114,99,117,109,102,108,101,120,0,97,100,105,101,114,101,115,105,115,0,97,103,114,97,118,101,0,97,114,105,110,103,0,97,116,105,108,100,101,0,99,99,101,100,105,108,108,97,0,101,97,99,117,116,101,0,101,99,105,114,99,117,109,102,108,101,120,0,101,100,105,101,114,101,115,105,115,0,101,103,114,97,118,101,0,105,97,99,117,116,101,0,105,99,105,114,99,117,109,102,108,101,120,0,105,100,105,101,114,101,115,105,115,0,105,103,114,97,118,101,0,110,116,105,108,100,101,0,111,97,99,117,116,101,0,111,99,105,114,99,117,109,102,108,101,120,0,111,100,105,101,114,101,115,105,115,0,111,103,114,97,118,101,0,111,116,105,108,100,101,0,115,99,97,114,111,110,0,117,97,99,117,116,101,0,117,99,105,114,99,117,109,102,108,101,120,0,117,100,105,101,114,101,115,105,115,0,117,103,114,97,118,101,0,121,97,99,117,116,101,0,121,100,105,101,114,101,115,105,115,0,122,99,97,114,111,110,0,101,120,99,108,97,109,115,109,97,108,108,0,72,117,110,103,97,114,117,109,108,97,117,116,115,109,97,108,108,0,100,111,108,108,97,114,111,108,100,115,116,121,108,101,0,100,111,108,108,97,114,115,117,112,101,114,105,111,114,0,97,109,112,101,114,115,97,110,100,115,109,97,108,108,0,65,99,117,116,101,115,109,97,108,108,0,112,97,114,101,110,108,101,102,116,115,117,112,101,114,105,111,114,0,112,97,114,101,110,114,105,103,104,116,115,117,112,101,114,105,111,114,0,116,119,111,100,111,116,101,110,108,101,97,100,101,114,0,111,110,101,100,111,116,101,110,108,101,97,100,101,114,0,122,101,114,111,111,108,100,115,116,121,108,101,0,111,110,101,111,108,100,115,116,121,108,101,0,116,119,111,111,108,100,115,116,121,108,101,0,116,104,114,101,101,111,108,100,115,116,121,108,101,0,102,111,117,114,111,108,100,115,116,121,108,101,0,102,105,118,101,111,108,100,115,116,121,108,101,0,115,105,120,111,108,100,115,116,121,108,101,0,115,101,118,101,110,111,108,100,115,116,121,108,101,0,101,105,103,104,116,111,108,100,115,116,121,108,101,0,110,105,110,101,111,108,100,115,116,121,108,101,0,99,111,109,109,97,115,117,112,101,114,105,111,114,0,116,104,114,101,101,113,117,97,114,116,101,114,115,101,109,100,97,115,104,0,112,101,114,105,111,100,115,117,112,101,114,105,111,114,0,113,117,101,115,116,105,111,110,115,109,97,108,108,0,97,115,117,112,101,114,105,111,114,0,98,115,117,112,101,114,105,111,114,0,99,101,110,116,115,117,112,101,114,105,111,114,0,100,115,117,112,101,114,105,111,114,0,101,115,117,112,101,114,105,111,114,0,105,115,117,112,101,114,105,111,114,0,108,115,117,112,101,114,105,111,114,0,109,115,117,112,101,114,105,111,114,0,110,115,117,112,101,114,105,111,114,0,111,115,117,112,101,114,105,111,114,0,114,115,117,112,101,114,105,111,114,0,115,115,117,112,101,114,105,111,114,0,116,115,117,112,101,114,105,111,114,0,102,102,0,102,102,105,0,102,102,108,0,112,97,114,101,110,108,101,102,116,105,110,102,101,114,105,111,114,0,112,97,114,101,110,114,105,103,104,116,105,110,102,101,114,105,111,114,0,67,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,104,121,112,104,101,110,115,117,112,101,114,105,111,114,0,71,114,97,118,101,115,109,97,108,108,0,65,115,109,97,108,108,0,66,115,109,97,108,108,0,67,115,109,97,108,108,0,68,115,109,97,108,108,0,69,115,109,97,108,108,0,70,115,109,97,108,108,0,71,115,109,97,108,108,0,72,115,109,97,108,108,0,73,115,109,97,108,108,0,74,115,109,97,108,108,0,75,115,109,97,108,108,0,76,115,109,97,108,108,0,77,115,109,97,108,108,0,78,115,109,97,108,108,0,79,115,109,97,108,108,0,80,115,109,97,108,108,0,81,115,109,97,108,108,0,82,115,109,97,108,108,0,83,115,109,97,108,108,0,84,115,109,97,108,108,0,85,115,109,97,108,108,0,86,115,109,97,108,108,0,87,115,109,97,108,108,0,88,115,109,97,108,108,0,89,115,109,97,108,108,0,90,115,109,97,108,108,0,99,111,108,111,110,109,111,110,101,116,97,114,121,0,111,110,101,102,105,116,116,101,100,0,114,117,112,105,97,104,0,84,105,108,100,101,115,109,97,108,108,0,101,120,99,108,97,109,100,111,119,110,115,109,97,108,108,0,99,101,110,116,111,108,100,115,116,121,108,101,0,76,115,108,97,115,104,115,109,97,108,108,0,83,99,97,114,111,110,115,109,97,108,108,0,90,99,97,114,111,110,115,109,97,108,108,0,68,105,101,114,101,115,105,115,115,109,97,108,108,0,66,114,101,118,101,115,109,97,108,108,0,67,97,114,111,110,115,109,97,108,108,0,68,111,116,97,99,99,101,110,116,115,109,97,108,108,0,77,97,99,114,111,110,115,109,97,108,108,0,102,105,103,117,114,101,100,97,115,104,0,104,121,112,104,101,110,105,110,102,101,114,105,111,114,0,79,103,111,110,101,107,115,109,97,108,108,0,82,105,110,103,115,109,97,108,108,0,67,101,100,105,108,108,97,115,109,97,108,108,0,113,117,101,115,116,105,111,110,100,111,119,110,115,109,97,108,108,0,111,110,101,101,105,103,104,116,104,0,116,104,114,101,101,101,105,103,104,116,104,115,0,102,105,118,101,101,105,103,104,116,104,115,0,115,101,118,101,110,101,105,103,104,116,104,115,0,111,110,101,116,104,105,114,100,0,116,119,111,116,104,105,114,100,115,0,122,101,114,111,115,117,112,101,114,105,111,114,0,102,111,117,114,115,117,112,101,114,105,111,114,0,102,105,118,101,115,117,112,101,114,105,111,114,0,115,105,120,115,117,112,101,114,105,111,114,0,115,101,118,101,110,115,117,112,101,114,105,111,114,0,101,105,103,104,116,115,117,112,101,114,105,111,114,0,110,105,110,101,115,117,112,101,114,105,111,114,0,122,101,114,111,105,110,102,101,114,105,111,114,0,111,110,101,105,110,102,101,114,105,111,114,0,116,119,111,105,110,102,101,114,105,111,114,0,116,104,114,101,101,105,110,102,101,114,105,111,114,0,102,111,117,114,105,110,102,101,114,105,111,114,0,102,105,118,101,105,110,102,101,114,105,111,114,0,115,105,120,105,110,102,101,114,105,111,114,0,115,101,118,101,110,105,110,102,101,114,105,111,114,0,101,105,103,104,116,105,110,102,101,114,105,111,114,0,110,105,110,101,105,110,102,101,114,105,111,114,0,99,101,110,116,105,110,102,101,114,105,111,114,0,100,111,108,108,97,114,105,110,102,101,114,105,111,114,0,112,101,114,105,111,100,105,110,102,101,114,105,111,114,0,99,111,109,109,97,105,110,102,101,114,105,111,114,0,65,103,114,97,118,101,115,109,97,108,108,0,65,97,99,117,116,101,115,109,97,108,108,0,65,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,65,116,105,108,100,101,115,109,97,108,108,0,65,100,105,101,114,101,115,105,115,115,109,97,108,108,0,65,114,105,110,103,115,109,97,108,108,0,65,69,115,109,97,108,108,0,67,99,101,100,105,108,108,97,115,109,97,108,108,0,69,103,114,97,118,101,115,109,97,108,108,0,69,97,99,117,116,101,115,109,97,108,108,0,69,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,69,100,105,101,114,101,115,105,115,115,109,97,108,108,0,73,103,114,97,118,101,115,109,97,108,108,0,73,97,99,117,116,101,115,109,97,108,108,0,73,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,73,100,105,101,114,101,115,105,115,115,109,97,108,108,0,69,116,104,115,109,97,108,108,0,78,116,105,108,100,101,115,109,97,108,108,0,79,103,114,97,118,101,115,109,97,108,108,0,79,97,99,117,116,101,115,109,97,108,108,0,79,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,79,116,105,108,100,101,115,109,97,108,108,0,79,100,105,101,114,101,115,105,115,115,109,97,108,108,0,79,69,115,109,97,108,108,0,79,115,108,97,115,104,115,109,97,108,108,0,85,103,114,97,118,101,115,109,97,108,108,0,85,97,99,117,116,101,115,109,97,108,108,0,85,99,105,114,99,117,109,102,108,101,120,115,109,97,108,108,0,85,100,105,101,114,101,115,105,115,115,109,97,108,108,0,89,97,99,117,116,101,115,109,97,108,108,0,84,104,111,114,110,115,109,97,108,108,0,89,100,105,101,114,101,115,105,115,115,109,97,108,108,0,48,48,49,46,48,48,48,0,48,48,49,46,48,48,49,0,48,48,49,46,48,48,50,0,48,48,49,46,48,48,51,0,66,108,97,99,107,0,66,111,108,100,0,66,111,111,107,0,76,105,103,104,116,0,77,101,100,105,117,109,0,82,101,103,117,108,97,114,0,82,111,109,97,110,0,83,101,109,105,98,111,108,100,0,112,111,115,116,115,99,114,105,112,116,45,99,109,97,112,115,0,114,98,0,17,0,10,0,17,17,17,0,0,0,0,5,0,0,0,0,0,0,9,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,15,10,17,17,17,3,10,7,0,1,19,9,11,11,0,0,9,6,11,0,0,11,0,6,17,0,0,0,17,17,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,17,0,10,10,17,17,17,0,10,0,0,2,0,9,11,0,0,0,9,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,13,0,0,0,4,13,0,0,0,0,9,14,0,0,0,0,0,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,15,0,0,0,0,9,16,0,0,0,0,0,16,0,0,16,0,0,18,0,0,0,18,18,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,18,0,0,0,18,18,18,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,0,0,0,0,0,0,0,0,0,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,10,0,0,0,0,9,11,0,0,0,0,0,11,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,12,0,0,0,0,9,12,0,0,0,0,0,12,0,0,12,0,0,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,45,43,32,32,32,48,88,48,120,0,84,33,34,25,13,1,2,3,17,75,28,12,16,4,11,29,18,30,39,104,110,111,112,113,98,32,5,6,15,19,20,21,26,8,22,7,40,36,23,24,9,10,14,27,31,37,35,131,130,125,38,42,43,60,61,62,63,67,71,74,77,88,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,114,115,116,121,122,123,124,0,73,108,108,101,103,97,108,32,98,121,116,101,32,115,101,113,117,101,110,99,101,0,68,111,109,97,105,110,32,101,114,114,111,114,0,82,101,115,117,108,116,32,110,111,116,32,114,101,112,114,101,115,101,110,116,97,98,108,101,0,78,111,116,32,97,32,116,116,121,0,80,101,114,109,105,115,115,105,111,110,32,100,101,110,105,101,100],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+61440);allocate([0,79,112,101,114,97,116,105,111,110,32,110,111,116,32,112,101,114,109,105,116,116,101,100,0,78,111,32,115,117,99,104,32,102,105,108,101,32,111,114,32,100,105,114,101,99,116,111,114,121,0,78,111,32,115,117,99,104,32,112,114,111,99,101,115,115,0,70,105,108,101,32,101,120,105,115,116,115,0,86,97,108,117,101,32,116,111,111,32,108,97,114,103,101,32,102,111,114,32,100,97,116,97,32,116,121,112,101,0,78,111,32,115,112,97,99,101,32,108,101,102,116,32,111,110,32,100,101,118,105,99,101,0,79,117,116,32,111,102,32,109,101,109,111,114,121,0,82,101,115,111,117,114,99,101,32,98,117,115,121,0,73,110,116,101,114,114,117,112,116,101,100,32,115,121,115,116,101,109,32,99,97,108,108,0,82,101,115,111,117,114,99,101,32,116,101,109,112,111,114,97,114,105,108,121,32,117,110,97,118,97,105,108,97,98,108,101,0,73,110,118,97,108,105,100,32,115,101,101,107,0,67,114,111,115,115,45,100,101,118,105,99,101,32,108,105,110,107,0,82,101,97,100,45,111,110,108,121,32,102,105,108,101,32,115,121,115,116,101,109,0,68,105,114,101,99,116,111,114,121,32,110,111,116,32,101,109,112,116,121,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,112,101,101,114,0,79,112,101,114,97,116,105,111,110,32,116,105,109,101,100,32,111,117,116,0,67,111,110,110,101,99,116,105,111,110,32,114,101,102,117,115,101,100,0,72,111,115,116,32,105,115,32,100,111,119,110,0,72,111,115,116,32,105,115,32,117,110,114,101,97,99,104,97,98,108,101,0,65,100,100,114,101,115,115,32,105,110,32,117,115,101,0,66,114,111,107,101,110,32,112,105,112,101,0,73,47,79,32,101,114,114,111,114,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,32,111,114,32,97,100,100,114,101,115,115,0,66,108,111,99,107,32,100,101,118,105,99,101,32,114,101,113,117,105,114,101,100,0,78,111,32,115,117,99,104,32,100,101,118,105,99,101,0,78,111,116,32,97,32,100,105,114,101,99,116,111,114,121,0,73,115,32,97,32,100,105,114,101,99,116,111,114,121,0,84,101,120,116,32,102,105,108,101,32,98,117,115,121,0,69,120,101,99,32,102,111,114,109,97,116,32,101,114,114,111,114,0,73,110,118,97,108,105,100,32,97,114,103,117,109,101,110,116,0,65,114,103,117,109,101,110,116,32,108,105,115,116,32,116,111,111,32,108,111,110,103,0,83,121,109,98,111,108,105,99,32,108,105,110,107,32,108,111,111,112,0,70,105,108,101,110,97,109,101,32,116,111,111,32,108,111,110,103,0,84,111,111,32,109,97,110,121,32,111,112,101,110,32,102,105,108,101,115,32,105,110,32,115,121,115,116,101,109,0,78,111,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,115,32,97,118,97,105,108,97,98,108,101,0,66,97,100,32,102,105,108,101,32,100,101,115,99,114,105,112,116,111,114,0,78,111,32,99,104,105,108,100,32,112,114,111,99,101,115,115,0,66,97,100,32,97,100,100,114,101,115,115,0,70,105,108,101,32,116,111,111,32,108,97,114,103,101,0,84,111,111,32,109,97,110,121,32,108,105,110,107,115,0,78,111,32,108,111,99,107,115,32,97,118,97,105,108,97,98,108,101,0,82,101,115,111,117,114,99,101,32,100,101,97,100,108,111,99,107,32,119,111,117,108,100,32,111,99,99,117,114,0,83,116,97,116,101,32,110,111,116,32,114,101,99,111,118,101,114,97,98,108,101,0,80,114,101,118,105,111,117,115,32,111,119,110,101,114,32,100,105,101,100,0,79,112,101,114,97,116,105,111,110,32,99,97,110,99,101,108,101,100,0,70,117,110,99,116,105,111,110,32,110,111,116,32,105,109,112,108,101,109,101,110,116,101,100,0,78,111,32,109,101,115,115,97,103,101,32,111,102,32,100,101,115,105,114,101,100,32,116,121,112,101,0,73,100,101,110,116,105,102,105,101,114,32,114,101,109,111,118,101,100,0,68,101,118,105,99,101,32,110,111,116,32,97,32,115,116,114,101,97,109,0,78,111,32,100,97,116,97,32,97,118,97,105,108,97,98,108,101,0,68,101,118,105,99,101,32,116,105,109,101,111,117,116,0,79,117,116,32,111,102,32,115,116,114,101,97,109,115,32,114,101,115,111,117,114,99,101,115,0,76,105,110,107,32,104,97,115,32,98,101,101,110,32,115,101,118,101,114,101,100,0,80,114,111,116,111,99,111,108,32,101,114,114,111,114,0,66,97,100,32,109,101,115,115,97,103,101,0,70,105,108,101,32,100,101,115,99,114,105,112,116,111,114,32,105,110,32,98,97,100,32,115,116,97,116,101,0,78,111,116,32,97,32,115,111,99,107,101,116,0,68,101,115,116,105,110,97,116,105,111,110,32,97,100,100,114,101,115,115,32,114,101,113,117,105,114,101,100,0,77,101,115,115,97,103,101,32,116,111,111,32,108,97,114,103,101,0,80,114,111,116,111,99,111,108,32,119,114,111,110,103,32,116,121,112,101,32,102,111,114,32,115,111,99,107,101,116,0,80,114,111,116,111,99,111,108,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,80,114,111,116,111,99,111,108,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,83,111,99,107,101,116,32,116,121,112,101,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,78,111,116,32,115,117,112,112,111,114,116,101,100,0,80,114,111,116,111,99,111,108,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,0,65,100,100,114,101,115,115,32,102,97,109,105,108,121,32,110,111,116,32,115,117,112,112,111,114,116,101,100,32,98,121,32,112,114,111,116,111,99,111,108,0,65,100,100,114,101,115,115,32,110,111,116,32,97,118,97,105,108,97,98,108,101,0,78,101,116,119,111,114,107,32,105,115,32,100,111,119,110,0,78,101,116,119,111,114,107,32,117,110,114,101,97,99,104,97,98,108,101,0,67,111,110,110,101,99,116,105,111,110,32,114,101,115,101,116,32,98,121,32,110,101,116,119,111,114,107,0,67,111,110,110,101,99,116,105,111,110,32,97,98,111,114,116,101,100,0,78,111,32,98,117,102,102,101,114,32,115,112,97,99,101,32,97,118,97,105,108,97,98,108,101,0,83,111,99,107,101,116,32,105,115,32,99,111,110,110,101,99,116,101,100,0,83,111,99,107,101,116,32,110,111,116,32,99,111,110,110,101,99,116,101,100,0,67,97,110,110,111,116,32,115,101,110,100,32,97,102,116,101,114,32,115,111,99,107,101,116,32,115,104,117,116,100,111,119,110,0,79,112,101,114,97,116,105,111,110,32,97,108,114,101,97,100,121,32,105,110,32,112,114,111,103,114,101,115,115,0,79,112,101,114,97,116,105,111,110,32,105,110,32,112,114,111,103,114,101,115,115,0,83,116,97,108,101,32,102,105,108,101,32,104,97,110,100,108,101,0,82,101,109,111,116,101,32,73,47,79,32,101,114,114,111,114,0,81,117,111,116,97,32,101,120,99,101,101,100,101,100,0,78,111,32,109,101,100,105,117,109,32,102,111,117,110,100,0,87,114,111,110,103,32,109,101,100,105,117,109,32,116,121,112,101,0,78,111,32,101,114,114,111,114,32,105,110,102,111,114,109,97,116,105,111,110,0,0,40,110,117,108,108,41,0,45,48,88,43,48,88,32,48,88,45,48,120,43,48,120,32,48,120,0,105,110,102,0,73,78,70,0,110,97,110,0,78,65,78,0,46,0,114,119,97,0],"i8",ALLOC_NONE,Runtime.GLOBAL_BASE+71680);var tempDoublePtr=STATICTOP;STATICTOP+=16;Module["_i64Subtract"]=_i64Subtract;Module["_i64Add"]=_i64Add;Module["_memset"]=_memset;function _pthread_cleanup_push(routine,arg){__ATEXIT__.push((function(){Runtime.dynCall("vi",routine,[arg])}));_pthread_cleanup_push.level=__ATEXIT__.length}Module["_bitshift64Lshr"]=_bitshift64Lshr;Module["_bitshift64Shl"]=_bitshift64Shl;function _pthread_cleanup_pop(){assert(_pthread_cleanup_push.level==__ATEXIT__.length,"cannot pop if something else added meanwhile!");__ATEXIT__.pop();_pthread_cleanup_push.level=__ATEXIT__.length}function _abort(){Module["abort"]()}function _realloc(){throw"bad"}Module["_realloc"]=_realloc;Module["_saveSetjmp"]=_saveSetjmp;Module["_testSetjmp"]=_testSetjmp;function _longjmp(env,value){asm["setThrew"](env,value||1);throw"longjmp"}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"};function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>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){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up--;up){parts.unshift("..")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))}),join2:(function(l,r){return PATH.normalize(l+"/"+r)}),resolve:(function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter((function(p){return!!p})),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start<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(){}),shutdown:(function(){}),register:(function(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)}),stream_ops:{open:(function(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}stream.tty=tty;stream.seekable=false}),close:(function(stream){stream.tty.ops.flush(stream.tty)}),flush:(function(stream){stream.tty.ops.flush(stream.tty)}),read:(function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(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){var BUFSIZE=256;var buf=new Buffer(BUFSIZE);var bytesRead=0;var fd=process.stdin.fd;var usingDevice=false;try{fd=fs.openSync("/dev/stdin","r");usingDevice=true}catch(e){}bytesRead=fs.readSync(fd,buf,0,BUFSIZE,null);if(usingDevice){fs.closeSync(fd)}if(bytesRead>0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;i<node.usedBytes;++i)arr.push(node.contents[i]);return arr}return node.contents}),getFileDataAsTypedArray:(function(node){if(!node.contents)return new Uint8Array;if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)}),expandFileStorage:(function(node,newCapacity){if(node.contents&&node.contents.subarray&&newCapacity>node.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.buffer.byteLength:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity<CAPACITY_DOUBLING_MAX?2:1.125)|0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}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;node.usedBytes=0;return}if(!node.contents||node.contents.subarray){var oldContents=node.contents;node.contents=new Uint8Array(new ArrayBuffer(newSize));if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize;return}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={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}}),lookup:(function(parent,name){throw FS.genericErrors[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(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)}}}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|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){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i<size;i++)buffer[offset+i]=contents[position+i]}return size}),write:(function(stream,buffer,offset,length,position,canOwn){if(!length)return 0;var node=stream.node;node.timestamp=Date.now();if(buffer.subarray&&(!node.contents||node.contents.subarray)){if(canOwn){node.contents=buffer.subarray(offset,offset+length);node.usedBytes=length;return length}else if(node.usedBytes===0&&position===0){node.contents=new Uint8Array(buffer.subarray(offset,offset+length));node.usedBytes=length;return length}else if(position+length<=node.usedBytes){node.contents.set(buffer.subarray(offset,offset+length),position);return length}}MEMFS.expandFileStorage(node,position+length);if(node.contents.subarray&&buffer.subarray)node.contents.set(buffer.subarray(offset,offset+length),position);else{for(var i=0;i<length;i++){node.contents[position+i]=buffer[offset+i]}}node.usedBytes=Math.max(node.usedBytes,position+length);return length}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.usedBytes}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}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;if(!(flags&2)&&(contents.buffer===buffer||contents.buffer===buffer.buffer)){allocated=false;ptr=contents.byteOffset}else{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}}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}if(mmapFlags&2){return 0}var bytesWritten=MEMFS.stream_ops.write(stream,buffer,0,length,offset,false);return 0})}};var IDBFS={dbs:{},indexedDB:(function(){if(typeof indexedDB!=="undefined")return indexedDB;var ret=null;if(typeof window==="object")ret=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;assert(ret,"IDBFS used, but indexedDB not supported");return ret}),DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",mount:(function(mount){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){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)}if(!fileStore.indexNames.contains("timestamp")){fileStore.createIndex("timestamp","timestamp",{unique:false})}});req.onsuccess=(function(){db=req.result;IDBFS.dbs[name]=db;callback(null,db)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),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(e){callback(this.error);e.preventDefault()});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)){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.chmod(path,entry.mode);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(e){callback(this.error);e.preventDefault()})}),storeRemoteEntry:(function(store,path,entry,callback){var req=store.put(entry,path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),removeRemoteEntry:(function(store,path,callback){var req=store.delete(path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),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 completed=0;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err){if(!done.errored){done.errored=true;return callback(err)}return}if(++completed>=total){return callback(null)}}transaction.onerror=(function(e){done(this.error);e.preventDefault()});create.sort().forEach((function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,(function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)}))}else{IDBFS.loadLocalEntry(path,(function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)}))}}));remove.sort().reverse().forEach((function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}}))})};var NODEFS={isWindows:false,staticInit:(function(){NODEFS.isWindows=!!process.platform.match(/^win/)}),mount:(function(mount){assert(ENVIRONMENT_IS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)}),createNode:(function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node}),getMode:(function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&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){flags&=~32768;flags&=~524288;if(flags in NODEFS.flagsToPermissionStringMap){return NODEFS.flagsToPermissionStringMap[flags]}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.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){if(length===0)return 0;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){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){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:(function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i<parts.length-1;i++){var curr=parts.slice(0,i+1).join("/");if(!createdParents[curr]){createdParents[curr]=WORKERFS.createNode(parent,curr,WORKERFS.DIR_MODE,0)}parent=createdParents[curr]}return parent}function base(path){var parts=path.split("/");return parts[parts.length-1]}Array.prototype.forEach.call(mount.opts["files"]||[],(function(file){WORKERFS.createNode(ensureParent(file.name),base(file.name),WORKERFS.FILE_MODE,0,file,file.lastModifiedDate)}));(mount.opts["blobs"]||[]).forEach((function(obj){WORKERFS.createNode(ensureParent(obj["name"]),base(obj["name"]),WORKERFS.FILE_MODE,0,obj["data"])}));(mount.opts["packages"]||[]).forEach((function(pack){pack["metadata"].files.forEach((function(file){var name=file.filename.substr(1);WORKERFS.createNode(ensureParent(name),base(name),WORKERFS.FILE_MODE,0,pack["blob"].slice(file.start,file.end))}))}));return root}),createNode:(function(parent,name,mode,dev,contents,mtime){var node=FS.createNode(parent,name,mode);node.mode=mode;node.node_ops=WORKERFS.node_ops;node.stream_ops=WORKERFS.stream_ops;node.timestamp=(mtime||new Date).getTime();assert(WORKERFS.FILE_MODE!==WORKERFS.DIR_MODE);if(mode===WORKERFS.FILE_MODE){node.size=contents.size;node.contents=contents}else{node.size=4096;node.contents={}}if(parent){parent.contents[name]=node}return node}),node_ops:{getattr:(function(node){return{dev:1,ino:undefined,mode:node.mode,nlink:1,uid:0,gid:0,rdev:undefined,size:node.size,atime:new Date(node.timestamp),mtime:new Date(node.timestamp),ctime:new Date(node.timestamp),blksize:4096,blocks:Math.ceil(node.size/4096)}}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}}),lookup:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}),mknod:(function(parent,name,mode,dev){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rename:(function(oldNode,newDir,newName){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),unlink:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rmdir:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readdir:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),symlink:(function(parent,newName,oldPath){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readlink:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)})},stream_ops:{read:(function(stream,buffer,offset,length,position){if(position>=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size}),write:(function(stream,buffer,offset,length,position){throw new FS.ErrnoError(ERRNO_CODES.EIO)}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};STATICTOP+=16;STATICTOP+=16;STATICTOP+=16;var FS={root:null,mounts:[],devices:[null],streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i<parts.length;i++){var islast=i===parts.length-1;if(islast&&opts.parent){break}current=FS.lookupNode(current,parts[i]);current_path=PATH.join2(current_path,parts[i]);if(FS.isMountpoint(current)){if(!islast||islast&&opts.follow_mount){current=current.mounted.root}}if(!islast||opts.follow){var count=0;while(FS.isLink(current.mode)){var link=FS.readlink(current_path);current_path=PATH.resolve(PATH.dirname(current_path),link);var lookup=FS.lookupPath(current_path,{recurse_count:opts.recurse_count});current=lookup.node;if(count++>40){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,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return ERRNO_CODES.EACCES}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return ERRNO_CODES.EACCES}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return ERRNO_CODES.EACCES}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return ERRNO_CODES.EACCES;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return ERRNO_CODES.EEXIST}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return ERRNO_CODES.ENOTDIR}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return ERRNO_CODES.EBUSY}}else{if(FS.isDir(node.mode)){return ERRNO_CODES.EISDIR}}return 0}),mayOpen:(function(node,flags){if(!node){return ERRNO_CODES.ENOENT}if(FS.isLink(node.mode)){return ERRNO_CODES.ELOOP}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return ERRNO_CODES.EISDIR}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(ERRNO_CODES.EMFILE)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdev:(function(path,mode,dev){if(typeof dev==="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)}),symlink:(function(oldpath,newpath){if(!PATH.resolve(oldpath)){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}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);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)}if(!old_dir||!new_dir)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(ERRNO_CODES.EXDEV)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}relative=PATH.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var err=FS.mayDelete(old_dir,old_name,isdir);if(err){throw new FS.ErrnoError(err)}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(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)}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}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){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){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!link.node_ops.readlink){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return PATH.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))}),stat:(function(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}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()})}),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:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path==="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(ERRNO_CODES.EEXIST)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}if(!created){var err=FS.mayOpen(node,flags);if(err){throw new FS.ErrnoError(err)}}if(flags&512){FS.truncate(node,0)}flags&=~(128|512);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false},fd_start,fd_end);if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1;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){if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}}),llseek:(function(stream,offset,whence){if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position}),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){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){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)}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!stream||!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)}),munmap:(function(stream){return 0}),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=UTF8ArrayToString(buf,0)}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 buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,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");FS.mkdir("/home");FS.mkdir("/home/web_user")}),createDefaultDevices:(function(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:(function(){return 0}),write:(function(stream,buffer,offset,length,pos){return length})});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var random_device;if(typeof crypto!=="undefined"){var randomBuffer=new Uint8Array(1);random_device=(function(){crypto.getRandomValues(randomBuffer);return randomBuffer[0]})}else if(ENVIRONMENT_IS_NODE){random_device=(function(){return require("crypto").randomBytes(1)[0]})}else{random_device=(function(){return Math.random()*256|0})}FS.createDevice("/dev","random",random_device);FS.createDevice("/dev","urandom",random_device);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")}),createSpecialDirectories:(function(){FS.mkdir("/proc");FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:(function(){var node=FS.createNode("/proc/self","fd",16384|511,73);node.node_ops={lookup:(function(parent,name){var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:(function(){return stream.path})}};ret.parent=ret;return ret})};return node})},{},"/proc/self/fd")}),createStandardStreams:(function(){if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin","r");assert(stdin.fd===0,"invalid handle for stdin ("+stdin.fd+")");var stdout=FS.open("/dev/stdout","w");assert(stdout.fd===1,"invalid handle for stdout ("+stdout.fd+")");var stderr=FS.open("/dev/stderr","w");assert(stderr.fd===2,"invalid handle for stderr ("+stderr.fd+")")}),ensureErrnoError:(function(){if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.node=node;this.setErrno=(function(errno){this.errno=errno;for(var key in ERRNO_CODES){if(ERRNO_CODES[key]===errno){this.code=key;break}}});this.setErrno(errno);this.message=ERRNO_MESSAGES[errno]};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[ERRNO_CODES.ENOENT].forEach((function(code){FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack="<generic error, no stack>"}))}),staticInit:(function(){FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS,"IDBFS":IDBFS,"NODEFS":NODEFS,"WORKERFS":WORKERFS}}),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();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()}),quit:(function(){FS.init.initialized=false;var fflush=Module["_fflush"];if(fflush)fflush(0);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){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){}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}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);FS.registerDevice(dev,{open:(function(stream){stream.seekable=false}),close:(function(stream){if(output&&output.buffer&&output.buffer.length){output(10)}}),read:(function(stream,buffer,offset,length,pos){var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=input()}catch(e){throw new FS.ErrnoError(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"]){try{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){function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype.get=function LazyUint8Array_get(idx){if(idx>this.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i<size;i++){buffer[offset+i]=contents[position+i]}}else{for(var i=0;i<size;i++){buffer[offset+i]=contents.get(position+i)}}return size};node.stream_ops=stream_ops;return node}),createPreloadedFile:(function(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish){Browser.init();var fullname=name?PATH.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency("cp "+fullname);function processData(byteArray){function finish(byteArray){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency(dep)}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(dep)}));handled=true}}));if(!handled)finish(byteArray)}addRunDependency(dep);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;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})};var SYSCALLS={DEFAULT_POLLMASK:5,mappings:{},umask:511,calculateAt:(function(dirfd,path){if(path[0]!=="/"){var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=FS.getStream(dirfd);if(!dirstream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);dir=dirstream.path}path=PATH.join2(dir,path)}return path}),doStat:(function(func,path,buf){try{var stat=func(path)}catch(e){if(e&&e.node&&PATH.normalize(path)!==PATH.normalize(FS.getPath(e.node))){return-ERRNO_CODES.ENOTDIR}throw e}HEAP32[buf>>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;HEAP32[buf+36>>2]=stat.size;HEAP32[buf+40>>2]=4096;HEAP32[buf+44>>2]=stat.blocks;HEAP32[buf+48>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+52>>2]=0;HEAP32[buf+56>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ino;return 0}),doMsync:(function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)}),doMkdir:(function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0}),doMknod:(function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-ERRNO_CODES.EINVAL}FS.mknod(path,mode,dev);return 0}),doReadlink:(function(path,buf,bufsize){if(bufsize<=0)return-ERRNO_CODES.EINVAL;var ret=FS.readlink(path);ret=ret.slice(0,Math.max(0,bufsize));writeStringToMemory(ret,buf,true);return ret.length}),doAccess:(function(path,amode){if(amode&~7){return-ERRNO_CODES.EINVAL}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-ERRNO_CODES.EACCES}return 0}),doDup:(function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd}),doReadv:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr<len)break}return ret}),doWritev:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret}),varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),getStreamFromFD:(function(){var stream=FS.getStream(SYSCALLS.get());if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return stream}),getSocketFromFD:(function(){var socket=SOCKFS.getSocket(SYSCALLS.get());if(!socket)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return socket}),getSocketAddress:(function(allowNull){var addrp=SYSCALLS.get(),addrlen=SYSCALLS.get();if(allowNull&&addrp===0)return null;var info=__read_sockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___lock(){}function ___unlock(){}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function _sysconf(name){switch(name){case 30:return PAGE_SIZE;case 85:return totalMemory/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 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 79:return 0;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:{if(typeof navigator==="object")return navigator["hardwareConcurrency"]||1;return 1}}___setErrNo(ERRNO_CODES.EINVAL);return-1}function _sbrk(bytes){var self=_sbrk;if(!self.called){DYNAMICTOP=alignMemoryPage(DYNAMICTOP);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){var success=self.alloc(bytes);if(!success)return-1>>>0}return ret}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;Module["_memmove"]=_memmove;function _emscripten_set_main_loop_timing(mode,value){Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){setTimeout(Browser.mainLoop.runner,value)};Browser.mainLoop.method="timeout"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method="rAF"}else if(mode==2){if(!window["setImmediate"]){var setImmediates=[];var emscriptenMainLoopMessageId="__emcc";function Browser_setImmediate_messageHandler(event){if(event.source===window&&event.data===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}}window.addEventListener("message",Browser_setImmediate_messageHandler,true);window["setImmediate"]=function Browser_emulated_setImmediate(func){setImmediates.push(func);window.postMessage(emscriptenMainLoopMessageId,"*")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){window["setImmediate"](Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop,arg,noSetTiming){Module["noExitRuntime"]=true;assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");Browser.mainLoop.func=func;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;Browser.mainLoop.runner=function Browser_mainLoop_runner(){if(ABORT)return;if(Browser.mainLoop.queue.length>0){var start=Date.now();var blocker=Browser.mainLoop.queue.shift();blocker.func(blocker.arg);if(Browser.mainLoop.remainingBlockers){var remaining=Browser.mainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){Browser.mainLoop.remainingBlockers=next}else{next=next+.5;Browser.mainLoop.remainingBlockers=(8*remaining+next)/9}}console.log('main loop blocker "'+blocker.name+'" took '+(Date.now()-start)+" ms");Browser.mainLoop.updateStatus();if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;setTimeout(Browser.mainLoop.runner,0);return}if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0;if(Browser.mainLoop.timingMode==1&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}if(Browser.mainLoop.method==="timeout"&&Module.ctx){Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!");Browser.mainLoop.method=""}Browser.mainLoop.runIter((function(){if(typeof arg!=="undefined"){Runtime.dynCall("vi",func,[arg])}else{Runtime.dynCall("v",func)}}));if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;if(typeof SDL==="object"&&SDL.audio&&SDL.audio.queueNewAudioData)SDL.audio.queueNewAudioData();Browser.mainLoop.scheduler()};if(!noSetTiming){if(fps&&fps>0)_emscripten_set_main_loop_timing(0,1e3/fps);else _emscripten_set_main_loop_timing(1,1);Browser.mainLoop.scheduler()}if(simulateInfiniteLoop){throw"SimulateInfiniteLoop"}}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:(function(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++}),resume:(function(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;_emscripten_set_main_loop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()}),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}}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"]=[];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}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){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);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;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);var audio=new Audio;audio.addEventListener("canplaythrough",(function(){finish(audio)}),false);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&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src="data:audio/x-"+name.substr(-3)+";base64,"+encode64(byteArray);finish(audio)};audio.src=url;Browser.safeSetTimeout((function(){finish(audio)}),1e4)}else{return fail()}};Module["preloadPlugins"].push(audioPlugin);var canvas=Module["canvas"];function pointerLockChange(){Browser.pointerLock=document["pointerLockElement"]===canvas||document["mozPointerLockElement"]===canvas||document["webkitPointerLockElement"]===canvas||document["msPointerLockElement"]===canvas}if(canvas){canvas.requestPointerLock=canvas["requestPointerLock"]||canvas["mozRequestPointerLock"]||canvas["webkitRequestPointerLock"]||canvas["msRequestPointerLock"]||(function(){});canvas.exitPointerLock=document["exitPointerLock"]||document["mozExitPointerLock"]||document["webkitExitPointerLock"]||document["msExitPointerLock"]||(function(){});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&&canvas==Module.canvas)return Module.ctx;var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}canvas.style.backgroundColor="black"}else{ctx=canvas.getContext("2d")}if(!ctx)return null;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)GL.makeContextCurrent(contextHandle);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,vrDevice){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;Browser.vrDevice=vrDevice;if(typeof Browser.lockPointer==="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas==="undefined")Browser.resizeCanvas=false;if(typeof Browser.vrDevice==="undefined")Browser.vrDevice=null;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{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)}var canvasContainer=document.createElement("div");canvas.parentNode.insertBefore(canvasContainer,canvas);canvasContainer.appendChild(canvas);canvasContainer.requestFullScreen=canvasContainer["requestFullScreen"]||canvasContainer["mozRequestFullScreen"]||canvasContainer["msRequestFullscreen"]||(canvasContainer["webkitRequestFullScreen"]?(function(){canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"])}):null);if(vrDevice){canvasContainer.requestFullScreen({vrDisplay:vrDevice})}else{canvasContainer.requestFullScreen()}}),nextRAF:0,fakeRequestAnimationFrame:(function(func){var now=Date.now();if(Browser.nextRAF===0){Browser.nextRAF=now+1e3/60}else{while(now+2>=Browser.nextRAF){Browser.nextRAF+=1e3/60}}var delay=Math.max(Browser.nextRAF-now,0);setTimeout(func,delay)}),requestAnimationFrame:function requestAnimationFrame(func){if(typeof window==="undefined"){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)})}),allowAsyncCallbacks:true,queuedAsyncCallbacks:[],pauseAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=false}),resumeAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=true;if(Browser.queuedAsyncCallbacks.length>0){var callbacks=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[];callbacks.forEach((function(func){func()}))}}),safeRequestAnimationFrame:(function(func){return Browser.requestAnimationFrame((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}))}),safeSetTimeout:(function(func,timeout){Module["noExitRuntime"]=true;return setTimeout((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}),timeout)}),safeSetInterval:(function(func,timeout){Module["noExitRuntime"]=true;return setInterval((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){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 delta}),mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:(function(event){if(Browser.pointerLock){if(event.type!="mousemove"&&"mozMovementX"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}if(typeof SDL!="undefined"){Browser.mouseX=SDL.mouseX+Browser.mouseMovementX;Browser.mouseY=SDL.mouseY+Browser.mouseMovementY}else{Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}}else{var rect=Module["canvas"].getBoundingClientRect();var cw=Module["canvas"].width;var ch=Module["canvas"].height;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}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"){var last=Browser.touches[touch.identifier];if(!last)last=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}var x=event.pageX-(scrollX+rect.left);var y=event.pageY-(scrollY+rect.top);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}}),asyncLoad:(function(url,onload,onerror,noRunDep){Module["readAsync"](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(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags|8388608;HEAP32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2]=flags}Browser.updateResizeListeners()}),setWindowedCanvasSize:(function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen+Runtime.QUANTUM_SIZE*0>>2];flags=flags&~8388608;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")}}}}),wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle:(function(){var handle=Browser.nextWgetRequestHandle;Browser.nextWgetRequestHandle++;return handle})};function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}function _pthread_self(){return 0}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;assert(offset_high===0);FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21506:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((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;Module["FS_unlink"]=FS.unlink;__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}Module["requestFullScreen"]=function Module_requestFullScreen(lockPointer,resizeCanvas,vrDevice){Browser.requestFullScreen(lockPointer,resizeCanvas,vrDevice)};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()};Module["createContext"]=function Module_createContext(canvas,useWebGL,setInModule,webGLContextAttributes){return Browser.createContext(canvas,useWebGL,setInModule,webGLContextAttributes)};STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);staticSealed=true;STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=DYNAMICTOP=Runtime.alignMemory(STACK_MAX);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);function invoke_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){try{return Module["dynCall_iiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}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_viiiii(index,a1,a2,a3,a4,a5){try{Module["dynCall_viiiii"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;asm["setThrew"](1,0)}}function invoke_iiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){try{return Module["dynCall_iiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9)}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_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_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)}}Module.asmGlobalArg={"Math":Math,"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Uint32Array":Uint32Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,"Infinity":Infinity};Module.asmLibraryArg={"abort":abort,"assert":assert,"invoke_iiiiiiii":invoke_iiiiiiii,"invoke_iiii":invoke_iiii,"invoke_viiiii":invoke_viiiii,"invoke_iiiiiiiiii":invoke_iiiiiiiiii,"invoke_vii":invoke_vii,"invoke_iiiiiii":invoke_iiiiiii,"invoke_ii":invoke_ii,"invoke_viii":invoke_viii,"invoke_vi":invoke_vi,"invoke_iiiii":invoke_iiiii,"invoke_viiiiii":invoke_viiiiii,"invoke_iii":invoke_iii,"invoke_iiiiii":invoke_iiiiii,"invoke_viiii":invoke_viiii,"_pthread_cleanup_pop":_pthread_cleanup_pop,"___syscall221":___syscall221,"_longjmp":_longjmp,"___lock":___lock,"_time":_time,"_emscripten_set_main_loop":_emscripten_set_main_loop,"_pthread_self":_pthread_self,"_abort":_abort,"_emscripten_set_main_loop_timing":_emscripten_set_main_loop_timing,"___syscall6":___syscall6,"_sbrk":_sbrk,"___syscall5":___syscall5,"_pthread_cleanup_push":_pthread_cleanup_push,"_emscripten_memcpy_big":_emscripten_memcpy_big,"___syscall54":___syscall54,"___unlock":___unlock,"___syscall140":___syscall140,"_sysconf":_sysconf,"___syscall145":___syscall145,"___syscall146":___syscall146,"___setErrNo":___setErrNo,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"cttz_i8":cttz_i8};// EMSCRIPTEN_START_ASM
var asm=(function(global,env,buffer) {
"use asm";var a=new global.Int8Array(buffer);var b=new global.Int16Array(buffer);var c=new global.Int32Array(buffer);var
d=new global.Uint8Array(buffer);var e=new global.Uint16Array(buffer);var f=new global.Uint32Array(buffer);var g=new global.Float32Array
(buffer);var h=new global.Float64Array(buffer);var i=env.STACKTOP|0;var j=env.STACK_MAX|0;var k=env.tempDoublePtr|0;var l=env.ABORT
|0;var m=env.cttz_i8|0;var n=0;var o=0;var p=0;var q=0;var r=global.NaN,s=global.Infinity;var t=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,
B=0.0;var C=0;var D=0;var E=0;var F=0;var G=0;var H=0;var I=0;var J=0;var K=0;var L=0;var M=global.Math.floor;var N=global.Math.
abs;var O=global.Math.sqrt;var P=global.Math.pow;var Q=global.Math.cos;var R=global.Math.sin;var S=global.Math.tan;var T=global.
Math.acos;var U=global.Math.asin;var V=global.Math.atan;var W=global.Math.atan2;var X=global.Math.exp;var Y=global.Math.log;var
Z=global.Math.ceil;var _=global.Math.imul;var $=global.Math.min;var aa=global.Math.clz32;var ba=env.abort;var ca=env.assert;var
da=env.invoke_iiiiiiii;var ea=env.invoke_iiii;var fa=env.invoke_viiiii;var ga=env.invoke_iiiiiiiiii;var ha=env.invoke_vii;var ia
=env.invoke_iiiiiii;var ja=env.invoke_ii;var ka=env.invoke_viii;var la=env.invoke_vi;var ma=env.invoke_iiiii;var na=env.invoke_viiiiii
;var oa=env.invoke_iii;var pa=env.invoke_iiiiii;var qa=env.invoke_viiii;var ra=env._pthread_cleanup_pop;var sa=env.___syscall221
;var ta=env._longjmp;var ua=env.___lock;var va=env._time;var wa=env._emscripten_set_main_loop;var xa=env._pthread_self;var ya=env
._abort;var za=env._emscripten_set_main_loop_timing;var Aa=env.___syscall6;var Ba=env._sbrk;var Ca=env.___syscall5;var Da=env._pthread_cleanup_push
;var Ea=env._emscripten_memcpy_big;var Fa=env.___syscall54;var Ga=env.___unlock;var Ha=env.___syscall140;var Ia=env._sysconf;var
Ja=env.___syscall145;var Ka=env.___syscall146;var La=env.___setErrNo;var Ma=0.0;
// EMSCRIPTEN_START_FUNCS
function $a(a){a=a|0;var b=0;b=i;i=i+a|0;i=i+15&-16;return b|0}function ab(){return i|0}function bb(a){a=a|0;i=a}function cb
(a,b){a=a|0;b=b|0;i=a;j=b}function db(a,b){a=a|0;b=b|0;if(!n){n=a;o=b}}function eb(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]}function
fb(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 gb(a){a=a|0;C=a}function hb(){return C|0}function
ib(a){a=a|0;c[18364]=(a|0)!=0&1;return 0}function jb(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+32|0;h=j+8|0
;f=j;e=c[18367]|0;if((e|0)!=0?(As(e,b)|0)==0:0){e=73468;f=2;g=4}else g=3;do if((g|0)==3){e=c[18368]|0;if(e|0?(As(e,b)|0)==0:0){e
=73472;f=3;g=4;break}e=c[18369]|0;if(e|0?(As(e,b)|0)==0:0){e=73476;f=4;g=4;break}e=c[18370]|0;if(e|0?(As(e,b)|0)==0:0){e=73480;f
=5;g=4;break}e=c[18371]|0;if(e|0?(As(e,b)|0)==0:0){e=73484;f=6;g=4;break}e=c[18372]|0;if(e|0?(As(e,b)|0)==0:0){e=73488;f=7;g=4;break
}e=c[18373]|0;if(e|0?(As(e,b)|0)==0:0){e=73492;f=8;g=4;break}e=c[18374]|0;if(e|0?(As(e,b)|0)==0:0){e=73496;f=9;g=4;break}if(c[18367
]|0)if(c[18368]|0)if(c[18369]|0)if(c[18370]|0)if(c[18371]|0)if(c[18372]|0)if(c[18373]|0)if(!(c[18374]|0))f=9;else{c[f>>
;2]=a;c[f+4>>2]=b;ss(10198,f)|0;h=-1;i=j;return h|0}else f=8;else f=7;else f=6;else f=5;else f=4;else f=3;else f=2}while
(0);if((g|0)==4){g=73500+(f<<2)|0;vd(c[g>>2]|0)|0;Gs(c[e>>2]|0);c[e>>2]=0;c[g>>
;2]=0}e=Ec(c[18385]|0,a,0,73500+(f<<2)|0)|0;if(!e){c[73460+(f<<2)>>2]=ws(b)|0;c[8+(f<<2)
x3e;>2]=d;h=0;i=j;return h|0}else{c[h>>2]=a;c[h+4>>2]=b;c[h+8>>2]=e;ss(10233,h)|0;h=e;i=j;return
h|0}return 0}function kb(a){a=a|0;var b=0,d=0;b=c[18365]|0;if(b)if(As(a,b)|0){b=c[18366]|0;if(((b|0)!=0?(As(a,b)|0)!=0:0)?(d=c[
18367]|0,(d|0)!=0):0)if(As(a,d)|0){b=c[18368]|0;if(b)if(As(a,b)|0){b=c[18369]|0;if(b)if(As(a,b)|0){b=c[18370]|0;if(b)if(As(a,b)|
0){b=c[18371]|0;if(b)if(As(a,b)|0){b=c[18372]|0;if(b)if(As(a,b)|0){b=c[18373]|0;if(b)if(As(a,b)|0){b=c[18374]|0;if(!b)b=1;else{a
=(As(a,b)|0)==0;return (a?9:1)|0}}else b=8;else b=1}else b=7;else b=1}else b=6;else b=1}else b=5;else b=1}else b=4;else b=1}else
b=3;else b=1}else b=2;else b=1}else b=0;else b=1;return b|0}function lb(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;p=i;i=i+16|0;k=p+8|0;j=p;if(!(b>>>0<=9?(c[73460+(b<<2)>>2]|0)!=0:0))b=1;h=
c[73500+(b<<2)>>2]|0;b=c[8+(b<<2)>>2]|0;f=(_(f<<6,b)|0)/100|0;b=(_(g<<
;6,b)|0)/100|0;if((e+-65|0)>>>0<26&(h|0)==(c[18376]|0))b=(b*108|0)/100|0;b=Hd(h,f,b,72,0)|0;if(b|0){c[j
>>2]=b;ss(10260,j)|0;o=0;i=p;return o|0}c[18386]=c[h+84>>2];if((h|0)==(c[18375]|0)|(h|0)==(c[18376]|0))if((e
|0)==126)e=732;else e=(e|0)==94?710:e;if(!(c[18364]|0))e=Cc(h,e,4)|0;else e=Cc(h,e,131076)|0;if(e|0){c[k>>2]=e;ss(10285
,k)|0;o=0;i=p;return o|0}b=c[18386]|0;if(!(c[18364]|0)){o=c[b+88>>2]|0;i=p;return o|0}e=c[18387]|0;if(e|0)Gs(e);m=b+80
|0;f=c[m>>2]|0;n=b+76|0;g=c[n>>2]|0;e=Fs(_(g,f)|0)|0;c[18387]=e;if(!e){o=0;i=p;return o|0}if((g|0)<=0){
o=e;i=p;return o|0}o=b+84|0;l=b+88|0;b=e;k=0;do{j=_(c[o>>2]|0,k)|0;j=(c[l>>2]|0)+j|0;if((f|0)>0){h=0;while
(1){g=b+1|0;a[b>>0]=(((d[j+(h>>3)>>0]|0)&1<<(h&7^7)|0)!=0)<<31>
x3e;31;h=h+1|0;f=c[m>>2]|0;if((h|0)>=(f|0)){b=g;break}else b=g}g=c[n>>2]|0}k=k+1|0}while((k|0)<(g|
0));i=p;return e|0}function mb(){return c[(c[18386]|0)+100>>2]|0}function nb(){return c[(c[18386]|0)+104>>2]|
0}function ob(){return c[(c[18386]|0)+80>>2]|0}function pb(){return c[(c[18386]|0)+76>>2]|0}function qb(){return
c[(c[18386]|0)+84>>2]|0}function rb(){return c[(c[18386]|0)+64>>2]>>6|0}function sb(){var a=0,b=0
,d=0,e=0,f=0;f=i;i=i+32|0;e=f+16|0;d=f+8|0;b=f;a=ub(73540)|0;if(a|0){c[b>>2]=a;ss(10306,b)|0;e=1;i=f;return e|0}a=Ec(c
[18385]|0,10322,0,73500)|0;if(a|0){c[d>>2]=a;ss(10331,d)|0;e=1;i=f;return e|0}a=Ec(c[18385]|0,10358,0,73504)|0;if(!a){
c[18365]=ws(10394)|0;c[18366]=ws(10400)|0;e=0;i=f;return e|0}else{c[e>>2]=a;ss(10367,e)|0;e=1;i=f;return e|0}return 0}
function tb(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;c[d>>2]=48;while(1){if(!(
c[c[d>>2]>>2]|0))break;c[e>>2]=Nd(c[b>>2]|0,c[c[d>>2]>>2]|0)|0;c[d
x3e;>2]=(c[d>>2]|0)+4}i=f;return}function ub(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;d=g+8|0;e=g+4
|0;f=g;c[d>>2]=a;c[f>>2]=tr()|0;if(!(c[f>>2]|0)){c[b>>2]=7;f=c[b>>2]|0;i=g;return
f|0}c[e>>2]=Wd(c[f>>2]|0,c[d>>2]|0)|0;if(c[e>>2]|0)xr(c[f>>2]|0);else tb(c[c[
d>>2]>>2]|0);c[b>>2]=c[e>>2];f=c[b>>2]|0;i=g;return f|0}function vb(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;
c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(!(c[g>>2]|0)){c[f>>2]=35;
e=c[f>>2]|0;i=n;return e|0}if((c[h>>2]|0)>>>0>=(c[(c[g>>2]|0)+16>>2]|
0)>>>0){c[f>>2]=16;e=c[f>>2]|0;i=n;return e|0}c[m>>2]=c[(c[(c[(c[g>>2]|0)+
96>>2]|0)+20>>2]|0)+92>>2];do if(c[m>>2]|0){if((c[j>>2]&3|0)==0?(c[j>
;>2]>>16&15|0)!=1:0)break;c[l>>2]=Za[c[m>>2]&31](c[g>>2]|0,c[h>>
;2]|0,1,c[j>>2]|0,c[k>>2]|0)|0;if(!(c[l>>2]|0)){c[f>>2]=wb(c[g>>2]|0,c[k>
x3e;2]|0,1,c[j>>2]|0)|0;e=c[f>>2]|0;i=n;return e|0}if((c[l>>2]|0)!=7){c[f>>2]=c[l>
x3e;2];e=c[f>>2]|0;i=n;return e|0}}while(0);c[f>>2]=Bb(c[g>>2]|0,c[h>>2]|0,1,c[j>
x3e;2]|0,c[k>>2]|0)|0;e=c[f>>2]|0;i=n;return e|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,m=0,n=0;n=i;i=i+32|0;g=n+24|0;f=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;c[f>>2]=a;c[h>>2]=
b;c[j>>2]=d;c[k>>2]=e;if(c[k>>2]&1|0){c[g>>2]=0;m=c[g>>2]|0;i=n;return m|
0}if(!(c[(c[f>>2]|0)+88>>2]|0)){c[g>>2]=36;m=c[g>>2]|0;i=n;return m|0}f=(c[(c[f>>
;2]|0)+88>>2]|0)+12|0;if(c[k>>2]&16|0)c[m>>2]=c[f+8>>2];else c[m>>2]=c[f+
4>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[j>>2]|0)>>
x3e;0)break;k=xb(c[(c[h>>2]|0)+(c[l>>2]<<2)>>2]|0,c[m>>2]|0,64)|0;c[(c[h>
x3e;2]|0)+(c[l>>2]<<2)>>2]=k;c[l>>2]=(c[l>>2]|0)+1}c[g>>2]=0;m=c[g
x3e;>2]|0;i=n;return m|0}function xb(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;m=i;i=i+48|0;e=m+32|0;f=m
+28|0;g=m+24|0;h=m+20|0;j=m+16|0;k=m+8|0;l=m;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(c[f>>2]|0?(
c[g>>2]|0)!=(c[h>>2]|0):0){c[j>>2]=c[f>>2];d=c[f>>2]|0;c[f>>2]=(c[f
x3e;>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[g>>2];d=c[g>>2]|0;c[g>>2]=(c[
g>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[h>>2];d=c[h>>2]|0;c[h>>2]=(
c[h>>2]|0)<0?0-d|0:d;do if(!((c[f>>2]|0)<=46340&(c[g>>2]|0)<=46340&(c[h
x3e;>2]|0)<=176095&(c[h>>2]|0)>0))if((c[h>>2]|0)>0){yb(c[f>>2]|0,c[g>
;>2]|0,k);c[l+4>>2]=0;c[l>>2]=c[h>>2]>>1;zb(k,l,k);c[f>>2]=Ab(c[k+4>
x3e;2]|0,c[k>>2]|0,c[h>>2]|0)|0;break}else{c[f>>2]=2147483647;break}else{l=_(c[f>>2]|0,c
[g>>2]|0)|0;c[f>>2]=(l+(c[h>>2]>>1)|0)/(c[h>>2]|0)|0}while(0);l=c[f>>
;2]|0;c[e>>2]=(c[j>>2]|0)<0?0-l|0:l;l=c[e>>2]|0;i=m;return l|0}c[e>>2]=c[f>>
;2];l=c[e>>2]|0;i=m;return l|0}function yb(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;e=i;i=i+48|0;q=e+40|0;p=e+36|0;f=e+32|0;o=e+28|0;m=e+24|0;n=e+20|0;l=e+16|0;h=e+12|0;g=e+8|0;j=e+4|0;k=e;c[q>>2]=a;c
[p>>2]=b;c[f>>2]=d;c[o>>2]=c[q>>2]&65535;c[m>>2]=(c[q>>2]|0)>
;>>16;c[n>>2]=c[p>>2]&65535;c[l>>2]=(c[p>>2]|0)>>>16;c[h
x3e;>2]=_(c[o>>2]|0,c[n>>2]|0)|0;c[j>>2]=_(c[o>>2]|0,c[l>>2]|0)|0;c[k>
;>2]=_(c[n>>2]|0,c[m>>2]|0)|0;c[g>>2]=_(c[m>>2]|0,c[l>>2]|0)|0;c[j>
x3e;2]=(c[j>>2]|0)+(c[k>>2]|0);c[g>>2]=(c[g>>2]|0)+(((c[j>>2]|0)>>
x3e;0<(c[k>>2]|0)>>>0&1)<<16);c[g>>2]=(c[g>>2]|0)+((c[j>
x3e;2]|0)>>>16);c[j>>2]=c[j>>2]<<16;c[h>>2]=(c[h>>2]|0)+(c[j>
;>2]|0);c[g>>2]=(c[g>>2]|0)+((c[h>>2]|0)>>>0<(c[j>>2]|0)>
x3e;>0&1);c[c[f>>2]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2
];i=e;return}function zb(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+12|0;f=e+8|0;h=e+4|0;g=e
;c[j>>2]=a;c[k>>2]=b;c[f>>2]=d;c[h>>2]=(c[c[j>>2]>>2]|0)+(c[c[k>
;>2]>>2]|0);c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[(c[k>>2]|0)+4>>2
]|0)+((c[h>>2]|0)>>>0<(c[c[j>>2]>>2]|0)>>>0&1);c[c[f>
x3e;2]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2];i=e;return}function Ab(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+32|0;e=l+24|0;m=l+20|0;f=l+16|0;g=l+12|0;k=l+8|0;j=l+4|0;h=l;c[m>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=0;c[k>>2]=c[m>>2];if((c[k>>2
]|0)>>>0>=(c[g>>2]|0)>>>0){c[e>>2]=2147483647;m=c[e>>2]|0;i=l;return
m|0}c[h>>2]=32;do{c[k>>2]=c[k>>2]<<1;c[j>>2]=c[j>>2]<<1;c
[k>>2]=c[k>>2]|(c[f>>2]|0)>>>31;if((c[k>>2]|0)>>>0>=(
c[g>>2]|0)>>>0){c[k>>2]=(c[k>>2]|0)-(c[g>>2]|0);c[j>>2]=c[j>
;>2]|1}c[f>>2]=c[f>>2]<<1;m=(c[h>>2]|0)+-1|0;c[h>>2]=m}while((m|0)!=0);c[
e>>2]=c[j>>2];m=c[e>>2]|0;i=l;return m|0}function Bb(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;t=i;i=i+48|0;l=t+40|0;m=t+36|0;n=t+32|0;o=t+28|0;p=t+24|0;q=t+20|0;h=t+16|0;
j=t+12|0;g=t+8|0;s=t+4|0;r=t;c[m>>2]=a;c[n>>2]=b;c[o>>2]=d;c[p>>2]=e;c[q>>2]=f
;c[r>>2]=0;if(!(c[m>>2]|0)){c[l>>2]=35;s=c[l>>2]|0;i=t;return s|0}c[j>>2]=c[(c
[m>>2]|0)+16>>2];c[g>>2]=(c[n>>2]|0)+(c[o>>2]|0);if(((c[n>>2]|0)>
;>>0<(c[j>>2]|0)>>>0?(c[g>>2]|0)>>>0>=(c[n>>2]|0
)>>>0:0)?(c[g>>2]|0)>>>0<=(c[j>>2]|0)>>>0:0){if(!(c[o>
;>2]|0)){c[l>>2]=0;s=c[l>>2]|0;i=t;return s|0}c[h>>2]=c[(c[(c[(c[m>>2]|0)+96>
x3e;2]|0)+20>>2]|0)+92>>2];do if(c[h>>2]|0){if((c[p>>2]&3|0)==0?(c[p>>2]
x3e;>16&15|0)!=1:0){k=15;break}c[r>>2]=Za[c[h>>2]&31](c[m>>2]|0,c[n>>2]|0
,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0)|0;if(c[r>>2]|0)if((c[r>>2]|0)!=7){c[l>>
;2]=c[r>>2];s=c[l>>2]|0;i=t;return s|0}else k=15}else k=15;while(0);if((k|0)==15){c[r>>2]=0;if(c[p
>>2]&536870912|0){c[l>>2]=7;s=c[l>>2]|0;i=t;return s|0}c[p>>2]=c[p>>2]|256
;c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c
[r>>2]=Cb(c[m>>2]|0,(c[n>>2]|0)+(c[s>>2]|0)|0,c[p>>2]|0)|0;if(c[r>>2
]|0)break;d=(c[(c[m>>2]|0)+84>>2]|0)+64|0;if(c[p>>2]&16|0)d=c[d+4>>2]|0;else d=c[d
x3e;>2]|0;c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]=d;c[s>>2]=(c[s>>2]|0)+
1}if(c[r>>2]|0){c[l>>2]=c[r>>2];s=c[l>>2]|0;i=t;return s|0}}c[l>>2]=wb(c[m>
;>2]|0,c[q>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;s=c[l>>2]|0;i=t;return s|0}c[l>>2
]=16;s=c[l>>2]|0;i=t;return s|0}function Cb(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;A=i;i=i+80|0;r=A+64|0;s=A+60|0;g=A+56|0;t=A+52|0;u=A+48|0;j=A+44|0;z=A+40|0;n=A+36|0;h=A+68|0
;k=A+32|0;o=A+28|0;l=A+24|0;m=A+20|0;p=A+16|0;w=A+12|0;v=A+8|0;y=A+4|0;x=A;c[s>>2]=b;c[g>>2]=e;c[t>>
;2]=f;a[h>>0]=0;if((c[s>>2]|0?c[(c[s>>2]|0)+88>>2]|0:0)?c[(c[s>>2]|0)+84>
x3e;2]|0:0){c[z>>2]=c[(c[s>>2]|0)+84>>2];Db(c[z>>2]|0);c[j>>2]=c[(c[s>>
;2]|0)+96>>2];c[n>>2]=c[(c[j>>2]|0)+4>>2];c[k>>2]=c[(c[n>>2]|0)+168
x3e;>2];if(c[t>>2]&1024|0)c[t>>2]=c[t>>2]|2049;if(c[t>>2]&1|0){c[t>
x3e;2]=c[t>>2]|10;c[t>>2]=c[t>>2]&-5}do if(((((c[k>>2]|0?(c[t>>2]&2|
0)==0:0)?(c[t>>2]&32768|0)==0:0)?c[c[c[j>>2]>>2]>>2]&256|0:0)?(c[c[c[j>
x3e;2]>>2]>>2]&512|0)==0:0)?(c[(c[s>>2]|0)+8>>2]&8192|0)==0:0){if(!((c[(c[(c[s
>>2]|0)+128>>2]|0)+4+8>>2]|0)==0?(c[(c[(c[s>>2]|0)+128>>2]|0)+4>>2]|
0)!=0:0)){if(c[(c[(c[s>>2]|0)+128>>2]|0)+4>>2]|0)break;if(!(c[(c[(c[s>>2]|0)+128>
x3e;2]|0)+4+8>>2]|0))break}if((c[t>>2]&32|0)==0?c[c[c[j>>2]>>2]>>2]&
1024|0:0){c[o>>2]=c[t>>2]>>16&15;if((c[o>>2]|0)!=1?(d[(c[(c[s>>2]|0)+128
x3e;>2]|0)+56>>0]|0)==0:0)break;a[h>>0]=1;break}a[h>>0]=1}while(0);do if(!(a[h>>0]|
0)){c[u>>2]=Wa[c[(c[(c[j>>2]|0)+20>>2]|0)+80>>2]&31](c[z>>2]|0,c[(c[s>
;>2]|0)+88>>2]|0,c[g>>2]|0,c[t>>2]|0)|0;if(!(c[u>>2]|0))if((c[(c[z>>2]|0)+
72>>2]|0)==1869968492){c[u>>2]=Gb((c[z>>2]|0)+108|0)|0;if(!(c[u>>2]|0))if(c[t>>
;2]&2|0)q=36;else{Hb(c[z>>2]|0,c[t>>2]&16);q=36}}else q=36}else{if(((c[(c[s>>2]|0)+8>
;>2]&2|0?(c[t>>2]&8|0)==0:0)?(c[u>>2]=Wa[c[(c[(c[j>>2]|0)+20>>2]|0)+80>
;>2]&31](c[z>>2]|0,c[(c[s>>2]|0)+88>>2]|0,c[g>>2]|0,c[t>>2]|16384)|0
,(c[u>>2]|0)==0):0)?(c[(c[z>>2]|0)+72>>2]|0)==1651078259:0){q=36;break}c[m>>2]=c[(c[s>
;>2]|0)+128>>2];c[p>>2]=c[(c[m>>2]|0)+28>>2];c[(c[m>>2]|0)+28>>
2]=0;c[l>>2]=c[(c[c[k>>2]>>2]|0)+20>>2];c[u>>2]=Za[c[(c[l>>2]|0)+12
x3e;>2]&31](c[k>>2]|0,c[z>>2]|0,c[(c[s>>2]|0)+88>>2]|0,c[g>>2]|0,c[t
>>2]|0)|0;c[(c[m>>2]|0)+28>>2]=c[p>>2];q=36}while(0);if((q|0)==36){g=c[z>>2]|0
;if(c[t>>2]&16|0){c[g+64>>2]=0;c[(c[z>>2]|0)+64+4>>2]=c[(c[z>>2]|0)+24+28
>>2]}else{c[(c[z>>2]|0)+64>>2]=c[g+24+16>>2];c[(c[z>>2]|0)+64+4>>2]=
0}if((c[t>>2]&8192|0)==0?c[(c[s>>2]|0)+8>>2]&1|0:0){c[w>>2]=(c[(c[s>>
;2]|0)+88>>2]|0)+12;q=xb(c[(c[z>>2]|0)+56>>2]|0,c[(c[w>>2]|0)+4>>2]|0,64)|0;c[(
c[z>>2]|0)+56>>2]=q;w=xb(c[(c[z>>2]|0)+60>>2]|0,c[(c[w>>2]|0)+8>>2]|
0,64)|0;c[(c[z>>2]|0)+60>>2]=w}if((c[t>>2]&2048|0)==0?(c[v>>2]=c[(c[s>>2]|
0)+128>>2],c[(c[v>>2]|0)+28>>2]|0):0){c[y>>2]=Ib(c[z>>2]|0)|0;if(!(c[y>
x3e;2]|0)){if((c[(c[z>>2]|0)+72>>2]|0)==1869968492){if((c[v>>2]|0)+4|0)Kb((c[z>>2]|0)+108
|0,(c[v>>2]|0)+4|0);if((c[v>>2]|0)+20|0)Nb((c[z>>2]|0)+108|0,c[(c[v>>2]|0)+20>>
;2]|0,c[(c[v>>2]|0)+20+4>>2]|0)}}else c[u>>2]=Wa[c[(c[(c[y>>2]|0)+20>>2]|0)+44
>>2]&31](c[y>>2]|0,c[z>>2]|0,(c[v>>2]|0)+4|0,(c[v>>2]|0)+20|0)|0;Lb((c[z
x3e;>2]|0)+64|0,(c[v>>2]|0)+4|0)}if((((c[u>>2]|0)==0?(c[(c[z>>2]|0)+72>>2]|0)!=1651078259
:0)?(c[(c[z>>2]|0)+72>>2]|0)!=1668246896:0)?c[t>>2]&4|0:0){c[x>>2]=c[t>>2
]>>16&15;if((c[x>>2]|0)==0?c[t>>2]&4096|0:0)c[x>>2]=2;c[u>>2]=Ob(c[z
>>2]|0,c[x>>2]|0)|0}}c[r>>2]=c[u>>2];z=c[r>>2]|0;i=A;return z|0}c[r>>
;2]=35;z=c[r>>2]|0;i=A;return z|0}function Db(b){b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;Eb(c[e>
x3e;2]|0);b=(c[e>>2]|0)+24|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[
b+16>>2]=0;c[b+20>>2]=0;c[b+24>>2]=0;c[b+28>>2]=0;b=(c[e>>2]|0)+108|0;c[b>
;>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;c[(c[e>>2]|0)+76
+4>>2]=0;c[(c[e>>2]|0)+76>>2]=0;c[(c[e>>2]|0)+76+8>>2]=0;a[(c[e>>2]|
0)+76+18>>0]=0;c[(c[e>>2]|0)+100>>2]=0;c[(c[e>>2]|0)+104>>2]=0;c[(c[e>>
;2]|0)+128>>2]=0;c[(c[e>>2]|0)+132>>2]=0;c[(c[e>>2]|0)+136>>2]=0;c[(c[e>
x3e;2]|0)+140>>2]=0;c[(c[e>>2]|0)+152>>2]=0;c[(c[e>>2]|0)+72>>2]=0;c[(c[e>
;>2]|0)+56>>2]=0;c[(c[e>>2]|0)+60>>2]=0;c[(c[e>>2]|0)+144>>2]=0;c[(c[e>
;>2]|0)+148>>2]=0;i=d;return}function Eb(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if
(c[(c[b>>2]|0)+156>>2]|0?c[(c[(c[b>>2]|0)+156>>2]|0)+4>>2]&1|0:0){c[d>
;>2]=c[(c[(c[b>>2]|0)+4>>2]|0)+100>>2];Fb(c[d>>2]|0,c[(c[b>>2]|0)+76+12
x3e;>2]|0);c[(c[b>>2]|0)+76+12>>2]=0;a=(c[(c[b>>2]|0)+156>>2]|0)+4|0;c[a>>
;2]=c[a>>2]&-2;i=e;return}c[(c[b>>2]|0)+76+12>>2]=0;i=e;return}function Fb(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=f;return}Ra[c[(c[d>
;>2]|0)+8>>2]&7](c[d>>2]|0,c[e>>2]|0);i=f;return}function Gb(a){a=a|0;var d=0,e=0,f=0,g=
0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;d=l+24|0;e=l+20|0;k=l+16|0;j=l+12|0;g=l+8|0;f=l+4|0;h=l;c[e>>2]=a;a:do if(c[e>>
;2]|0){c[k>>2]=b[(c[e>>2]|0)+2>>1];c[j>>2]=b[c[e>>2]>>1];if((c[k>
;>2]|0)==0&(c[j>>2]|0)==0){c[d>>2]=0;a=c[d>>2]|0;i=l;return a|0}if(!((c[k>>2]|
0)<=0|(c[j>>2]|0)<=0)){c[f>>2]=-1;c[g>>2]=-1;c[h>>2]=0;while(1){if((c[h>
x3e;2]|0)>=(c[j>>2]|0))break;c[f>>2]=b[(c[(c[e>>2]|0)+12>>2]|0)+(c[h>>2]
x3c;<1)>>1];if((c[f>>2]|0)<=(c[g>>2]|0))break a;if((c[f>>2]|0)>=(c[k>
;>2]|0))break a;c[g>>2]=c[f>>2];c[h>>2]=(c[h>>2]|0)+1}if((c[f>>2]|0)==((c
[k>>2]|0)-1|0)){c[d>>2]=0;a=c[d>>2]|0;i=l;return a|0}}}while(0);c[d>>2]=6;a=c[d>>
;2]|0;i=l;return a|0}function Hb(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+32|0;k=h+12|0;j=h+16|0;f=h+8|0;g=h+4|0;e=h
;c[k>>2]=b;a[j>>0]=d;c[f>>2]=(c[k>>2]|0)+24;b=c[f>>2]|0;if(a[j>>0]|0
){c[(c[f>>2]|0)+8>>2]=c[b+8>>2]&-64;c[(c[f>>2]|0)+12>>2]=(c[(c[f>>
;2]|0)+12>>2]|0)+63&-64;c[g>>2]=(c[(c[f>>2]|0)+20>>2]|0)+(c[c[f>>2]>
x3e;2]|0)+63&-64;c[e>>2]=(c[(c[f>>2]|0)+24>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0)+
63&-64;c[(c[f>>2]|0)+20>>2]=c[(c[f>>2]|0)+20>>2]&-64;c[(c[f>>2]|0)+24
>>2]=c[(c[f>>2]|0)+24>>2]&-64;c[c[f>>2]>>2]=(c[g>>2]|0)-(c[(c[f
>>2]|0)+20>>2]|0);c[(c[f>>2]|0)+4>>2]=(c[e>>2]|0)-(c[(c[f>>2]|0)+24
x3e;>2]|0);k=c[f>>2]|0;k=k+16|0;k=c[k>>2]|0;k=k+32|0;k=k&-64;j=c[f>>2]|0;j=j+16|0;c[j>
;>2]=k;j=c[f>>2]|0;j=j+28|0;j=c[j>>2]|0;j=j+32|0;j=j&-64;k=c[f>>2]|0;k=k+28|0;c[k>
x3e;2]=j;i=h;return}else{c[(c[f>>2]|0)+20>>2]=c[b+20>>2]&-64;c[(c[f>>2]|0)+24>
x3e;2]=c[(c[f>>2]|0)+24>>2]&-64;c[g>>2]=(c[(c[f>>2]|0)+8>>2]|0)+(c[c[f>
;>2]>>2]|0)+63&-64;c[e>>2]=(c[(c[f>>2]|0)+12>>2]|0)-(c[(c[f>>2]|0)+4
>>2]|0)&-64;c[(c[f>>2]|0)+8>>2]=c[(c[f>>2]|0)+8>>2]&-64;c[(c[f>
x3e;2]|0)+12>>2]=(c[(c[f>>2]|0)+12>>2]|0)+63&-64;c[c[f>>2]>>2]=(c[g>
x3e;2]|0)-(c[(c[f>>2]|0)+8>>2]|0);c[(c[f>>2]|0)+4>>2]=(c[(c[f>>2]|0)+12>
x3e;2]|0)-(c[e>>2]|0);k=c[f>>2]|0;k=k+16|0;k=c[k>>2]|0;k=k+32|0;k=k&-64;j=c[f>>2]|0
;j=j+16|0;c[j>>2]=k;j=c[f>>2]|0;j=j+28|0;j=c[j>>2]|0;j=j+32|0;j=j&-64;k=c[f>>2]|0;k
=k+28|0;c[k>>2]=j;i=h;return}}function Ib(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;b=f+12|0;g=f+8|0;d=f+4|0;e=f;c
[b>>2]=a;c[g>>2]=c[(c[b>>2]|0)+4>>2];c[d>>2]=c[(c[(c[g>>2]|0)+96>
;>2]|0)+4>>2];c[e>>2]=c[(c[d>>2]|0)+164>>2];if(c[e>>2]|0?(c[(c[e>>
;2]|0)+24>>2]|0)==(c[(c[b>>2]|0)+72>>2]|0):0){g=c[e>>2]|0;i=f;return g|0}c[e>>
2]=Jb(c[d>>2]|0,c[(c[b>>2]|0)+72>>2]|0,0)|0;g=c[e>>2]|0;i=f;return g|0}function Jb(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;m=i;i=i+32|0;e=m+20|0;f=m+16|0;g=m+12|0;h=m+8|0;k=m+4|0;j=m;c[e>>
;2]=a;c[f>>2]=b;c[g>>2]=d;c[k>>2]=0;if(!(c[e>>2]|0)){l=c[k>>2]|0;i=m;return l|
0}c[h>>2]=c[(c[e>>2]|0)+156>>2];if(c[g>>2]|0){if(c[c[g>>2]>>2]|0)c[h
>>2]=c[(c[c[g>>2]>>2]|0)+4>>2];c[c[g>>2]>>2]=0}while(1){if(!(c[h>
;>2]|0)){l=12;break}c[j>>2]=c[(c[h>>2]|0)+8>>2];if((c[(c[j>>2]|0)+24>>2]|
0)==(c[f>>2]|0))break;c[h>>2]=c[(c[h>>2]|0)+4>>2]}if((l|0)==12){l=c[k>>2]|0;i=
m;return l|0}if(c[g>>2]|0)c[c[g>>2]>>2]=c[h>>2];c[k>>2]=c[j>>2];l=c[
k>>2]|0;i=m;return l|0}function Kb(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;
c[e>>2]=a;c[f>>2]=d;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=j;return}c[h>>
2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=(c[h>>2]|0)+(b[(c[e>>2]|0)+2>>1]<
;<3);while(1){if((c[h>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;Lb(c[h>
x3e;2]|0,c[f>>2]|0);c[h>>2]=(c[h>>2]|0)+8}i=j;return}function Lb(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;if(!((c[d>>2]|0)!=0&(c[
e>>2]|0)!=0)){i=h;return}a=Mb(c[c[d>>2]>>2]|0,c[c[e>>2]>>2]|0)|0;c[f>>
;2]=a+(Mb(c[(c[d>>2]|0)+4>>2]|0,c[(c[e>>2]|0)+4>>2]|0)|0);a=Mb(c[c[d>>2]>
x3e;2]|0,c[(c[e>>2]|0)+8>>2]|0)|0;c[g>>2]=a+(Mb(c[(c[d>>2]|0)+4>>2]|0,c[(c[e
x3e;>2]|0)+12>>2]|0)|0);c[c[d>>2]>>2]=c[f>>2];c[(c[d>>2]|0)+4>>
2]=c[g>>2];i=h;return}function Mb(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;l=i;i=i+32|0;f=l+24|0;d=l+20|0;
e=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;g=l;c[d>>2]=a;c[e>>2]=b;a=c[d>>2]|0;if((c[d>>2]|0)==0|(
c[e>>2]|0)==65536){c[f>>2]=a;k=c[f>>2]|0;i=l;return k|0}c[h>>2]=a;a=c[d>>2]|0;
c[d>>2]=(c[d>>2]|0)<0?0-a|0:a;c[h>>2]=c[h>>2]^c[e>>2];a=c[e>>2]|
0;c[e>>2]=(c[e>>2]|0)<0?0-a|0:a;c[j>>2]=c[d>>2];c[k>>2]=c[e>>2];
a=c[j>>2]|0;if((c[j>>2]|0)>>>0<=2048&(c[k>>2]|0)>>>0<=
1048576)c[j>>2]=((_(a,c[k>>2]|0)|0)+32768|0)>>>16;else{c[g>>2]=a&65535;e=_((c[
j>>2]|0)>>>16,c[k>>2]|0)|0;e=e+(_(c[g>>2]|0,(c[k>>2]|0)>>>
16)|0)|0;c[j>>2]=e+(((_(c[g>>2]|0,c[k>>2]&65535)|0)+32768|0)>>>16)}k=c[j>
x3e;2]|0;c[f>>2]=(c[h>>2]|0)<0?0-k|0:k;k=c[f>>2]|0;i=l;return k|0}function Nb(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;m=i;i=i+32|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m+16|0;l=m;c[g>>2]=a;c[h>>2]=d
;c[j>>2]=f;if(!(c[g>>2]|0)){i=m;return}c[l>>2]=c[(c[g>>2]|0)+4>>2];b[k>
x3e;1]=0;while(1){if((e[k>>1]|0)>=(b[(c[g>>2]|0)+2>>1]|0))break;f=c[l>>2]|0;c[f>
;>2]=(c[f>>2]|0)+(c[h>>2]|0);f=(c[l>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+(c[j
x3e;>2]|0);c[l>>2]=(c[l>>2]|0)+8;b[k>>1]=(b[k>>1]|0)+1<<16>>16}
i=m;return}function Ob(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[
f>>2]=b;if(c[e>>2]|0?c[(c[e>>2]|0)+4>>2]|0:0){c[g>>2]=c[(c[(c[(c[e>>
2]|0)+4>>2]|0)+96>>2]|0)+4>>2];c[d>>2]=Pb(c[g>>2]|0,c[e>>2]|0,c[f>
;>2]|0)|0;a=c[d>>2]|0;i=h;return a|0}c[d>>2]=6;a=c[d>>2]|0;i=h;return a|0}function Pb(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;o=i;i=i+32|0;g=o+20|0;h=o+16|0;j=o+12|0;k=o+8|0;m=o+4|0;l=o;n=o+24|0;c[g
x3e;>2]=b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=0;if((c[(c[h>>2]|0)+72>>2]|0)==1651078259
){n=c[k>>2]|0;i=o;return n|0}c[l>>2]=0;a[n>>0]=0;b=c[g>>2]|0;if((c[(c[h>>2]|0)+
72>>2]|0)==1869968492){c[m>>2]=c[b+164>>2];c[l>>2]=c[(c[g>>2]|0)+156>>
;2]}else c[m>>2]=Jb(b,c[(c[h>>2]|0)+72>>2]|0,l)|0;c[k>>2]=7;while(1){if(!(c[m>>
;2]|0))break;c[k>>2]=Wa[c[(c[m>>2]|0)+68>>2]&31](c[m>>2]|0,c[h>>2]|0,c[j
x3e;>2]|0,0)|0;if(!(c[k>>2]|0))break;if((c[k>>2]&255|0)!=19)break;c[m>>2]=Jb(c[g>
x3e;2]|0,c[(c[h>>2]|0)+72>>2]|0,l)|0;a[n>>0]=1}if(c[k>>2]|0){n=c[k>>2]|0;i=o;return
n|0}if(!((d[n>>0]|0|0)!=0&(c[m>>2]|0)!=0)){n=c[k>>2]|0;i=o;return n|0}Qb(c[g>>2]|0
,c[m>>2]|0,0,0)|0;n=c[k>>2]|0;i=o;return n|0}function Qb(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o+20|0;j=o+16|0;k=o+12|0;m=o+8|0;l=o+4|0;n=o;c[g>>2]=a;c[h>
;>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=0;if(!(c[g>>2]|0)){c[f>>2]=33;n=c[f>
;>2]|0;i=o;return n|0}if(!(c[h>>2]|0)){c[f>>2]=6;n=c[f>>2]|0;i=o;return n|0}c[m>>2]=
Rb((c[g>>2]|0)+156|0,c[h>>2]|0)|0;a:do if(c[m>>2]|0){Sb((c[g>>2]|0)+156|0,c[m>>
;2]|0);if((c[(c[h>>2]|0)+24>>2]|0)==1869968492)c[(c[g>>2]|0)+164>>2]=c[h>>2];if
((c[j>>2]|0)>>>0>0){c[n>>2]=c[(c[(c[h>>2]|0)+20>>2]|0)+52>>
;2];while(1){if((c[j>>2]|0)>>>0<=0)break a;c[l>>2]=Oa[c[n>>2]&63](c[h>
;>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>2]|0)+4>>2]|0)|0;if(c[l>>2]|0)break a;c[j
x3e;>2]=(c[j>>2]|0)+-1}}}else c[l>>2]=6;while(0);c[f>>2]=c[l>>2];n=c[f>>2
]|0;i=o;return n|0}function Rb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;f=g+12|0;h=g+8|0;d=g+4|0;e=g;c[h>>
;2]=a;c[d>>2]=b;c[e>>2]=c[c[h>>2]>>2];while(1){if(!(c[e>>2]|0)){b=6;break}a=c[
e>>2]|0;if((c[(c[e>>2]|0)+8>>2]|0)==(c[d>>2]|0)){b=4;break}c[e>>2]=c[a+4>
x3e;2]}if((b|0)==4){c[f>>2]=a;h=c[f>>2]|0;i=g;return h|0}else if((b|0)==6){c[f>>2]=0;h=c[f>
x3e;2]|0;i=g;return h|0}return 0}function Sb(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;e=h+12|0;f=h+8|0;d=h+4|0;g=h;
c[e>>2]=a;c[f>>2]=b;c[d>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[f>>
2]|0)+4>>2];if(!(c[d>>2]|0)){i=h;return}c[(c[d>>2]|0)+4>>2]=c[g>>2];d=c[d>
;>2]|0;if(c[g>>2]|0)c[c[g>>2]>>2]=d;else c[(c[e>>2]|0)+4>>2]=d;c[c[f>
;>2]>>2]=0;c[(c[f>>2]|0)+4>>2]=c[c[e>>2]>>2];c[c[c[e>>2]>
x3e;2]>>2]=c[f>>2];c[c[e>>2]>>2]=c[f>>2];i=h;return}function Tb(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;if((c[d>>2]|0)>=0){d=a+32768&-65536;i=b;return
d|0}else{d=0-(0-a+32768&-65536)|0;i=b;return d|0}return 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;l=i;i=i+32|0;e=l+24|0;f=l+20|0;g=l+16|0;h=l+12|0;j=l+8|0;k=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if
(c[f>>2]|0?(c[g>>2]|0)!=(c[h>>2]|0):0){c[j>>2]=c[f>>2];d=c[f>>2]|0;c
[f>>2]=(c[f>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[g>>2];d=c[g>>2]|
0;c[g>>2]=(c[g>>2]|0)<0?0-d|0:d;c[j>>2]=c[j>>2]^c[h>>2];d=c[h>>
2]|0;c[h>>2]=(c[h>>2]|0)<0?0-d|0:d;do if(!((c[f>>2]|0)<=46340&(c[g>>2]|0)
x3c;=46340&(c[h>>2]|0)>0))if((c[h>>2]|0)>0){yb(c[f>>2]|0,c[g>>2]|0,k);c[f
>>2]=Ab(c[k+4>>2]|0,c[k>>2]|0,c[h>>2]|0)|0;break}else{c[f>>2]=2147483647;break
}else{k=_(c[f>>2]|0,c[g>>2]|0)|0;c[f>>2]=(k|0)/(c[h>>2]|0)|0}while(0);k=c[f>>2
]|0;c[e>>2]=(c[j>>2]|0)<0?0-k|0:k;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=c[f>>
;2];k=c[e>>2]|0;i=l;return k|0}function Vb(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+28|0;e=k+
24|0;g=k+20|0;f=k+16|0;h=k+8|0;j=k;c[d>>2]=a;c[e>>2]=b;c[g>>2]=c[d>>2];b=c[d>>
2]|0;c[d>>2]=(c[d>>2]|0)<0?0-b|0:b;c[g>>2]=c[g>>2]^c[e>>2];b=c[e>>
;2]|0;c[e>>2]=(c[e>>2]|0)<0?0-b|0:b;do if(c[e>>2]|0){a=c[d>>2]|0;if(!(c[d>>
;2]>>16)){c[f>>2]=(((a<<16)+(c[e>>2]>>1)|0)>>>0)/((c[e>>
;2]|0)>>>0)|0;break}else{c[h+4>>2]=a>>16;c[h>>2]=c[d>>2]<<16;c[
j+4>>2]=0;c[j>>2]=c[e>>2]>>1;zb(h,j,h);c[f>>2]=Ab(c[h+4>>2]|0,c[h>
;>2]|0,c[e>>2]|0)|0;break}}else c[f>>2]=2147483647;while(0);j=c[f>>2]|0;i=k;return ((c[g>
;>2]|0)<0?0-j|0:j)|0}function Wb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0;f=h+4|0;g
=h;c[d>>2]=a;if(!(c[d>>2]|0)){c[b>>2]=6;g=c[b>>2]|0;i=h;return g|0}a=Mb(c[c[d>>
;2]>>2]|0,c[(c[d>>2]|0)+12>>2]|0)|0;c[e>>2]=a-(Mb(c[(c[d>>2]|0)+4>>2
]|0,c[(c[d>>2]|0)+8>>2]|0)|0);if(c[e>>2]|0){a=0-(Vb(c[(c[d>>2]|0)+4>>2]|0,c[e
x3e;>2]|0)|0)|0;c[(c[d>>2]|0)+4>>2]=a;a=0-(Vb(c[(c[d>>2]|0)+8>>2]|0,c[e>>
2]|0)|0)|0;c[(c[d>>2]|0)+8>>2]=a;c[f>>2]=c[c[d>>2]>>2];c[g>>2]=c[(c[
d>>2]|0)+12>>2];g=Vb(c[g>>2]|0,c[e>>2]|0)|0;c[c[d>>2]>>2]=g;g=Vb(c[f
>>2]|0,c[e>>2]|0)|0;c[(c[d>>2]|0)+12>>2]=g;c[b>>2]=0;g=c[b>>2]|0;i=h
;return g|0}else{c[b>>2]=6;g=c[b>>2]|0;i=h;return g|0}return 0}function Xb(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;m=i;i=i+32|0;e=m+28|0;f=m+24|0;n=m+20|0;h=m+16|0;j=m+12|0;k=m+8|0;l=m+4|0;g=m;c[e>>2]=
a;c[f>>2]=b;c[n>>2]=d;c[g>>2]=c[n>>2]<<16;if(!((c[e>>2]|0)!=0&(
c[f>>2]|0)!=0)){i=m;return}n=xb(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0,c[g>>
;2]|0)|0;c[h>>2]=n+(xb(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>
x3e;2]|0)|0);n=xb(c[c[e>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0;c[j>
x3e;2]=n+(xb(c[(c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);n=xb(c
[(c[e>>2]|0)+8>>2]|0,c[c[f>>2]>>2]|0,c[g>>2]|0)|0;c[k>>2]=n+(xb(c[(c
[e>>2]|0)+12>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>>2]|0)|0);n=xb(c[(c[e>>
2]|0)+8>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0;c[l>>2]=n+(xb(c[(c[e>>
;2]|0)+12>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);c[c[f>>2]>>2]=c
[h>>2];c[(c[f>>2]|0)+4>>2]=c[j>>2];c[(c[f>>2]|0)+8>>2]=c[k>>
;2];c[(c[f>>2]|0)+12>>2]=c[l>>2];i=m;return}function Yb(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;k=i;i=i+32|0;e=k+20|0;f=k+16|0;l=k+12|0;h=k+8|0;j=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[l>>
;2]=d;c[g>>2]=c[l>>2]<<16;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=k;return
}l=xb(c[c[e>>2]>>2]|0,c[c[f>>2]>>2]|0,c[g>>2]|0)|0;c[h>>2]=l+(xb(c[(
c[e>>2]|0)+4>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[g>>2]|0)|0);l=xb(c[c[e>>2
]>>2]|0,c[(c[f>>2]|0)+8>>2]|0,c[g>>2]|0)|0;c[j>>2]=l+(xb(c[(c[e>>2]|
0)+4>>2]|0,c[(c[f>>2]|0)+12>>2]|0,c[g>>2]|0)|0);c[c[e>>2]>>2]=c[h>
;>2];c[(c[e>>2]|0)+4>>2]=c[j>>2];i=k;return}function Zb(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,
j=0;j=i;i=i+32|0;b=j+20|0;g=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;d=j;c[b>>2]=a;c[g>>2]=0;if((c[b>>2]|0)
x3c;=0){a=c[g>>2]|0;i=j;return a|0}c[e>>2]=0;c[f>>2]=c[b>>2];c[d>>2]=24;do{c[e
>>2]=c[e>>2]<<2|(c[f>>2]|0)>>>30;c[f>>2]=c[f>>2]<
;<2;c[g>>2]=c[g>>2]<<1;c[h>>2]=(c[g>>2]<<1)+1;if((c[e>>
;2]|0)>>>0>=(c[h>>2]|0)>>>0){c[e>>2]=(c[e>>2]|0)-(c[h>>
;2]|0);c[g>>2]=(c[g>>2]|0)+1}a=(c[d>>2]|0)+-1|0;c[d>>2]=a}while((a|0)!=0);a=c[g>>
;2]|0;i=j;return a|0}function _b(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;n=i;i=i+48|0;f=n+32|0;k=n+
28|0;g=n+24|0;l=n+20|0;m=n+16|0;h=n+8|0;j=n;c[f>>2]=a;c[k>>2]=b;c[g>>2]=d;c[l>>2]=e;b=c[
f>>2]|0;do if(!(c[k>>2]|0)){a=c[l>>2]|0;if((b|0)>=0){c[m>>2]=a;break}else{c[m>
x3e;2]=0-a;break}}else{if(!b){a=c[g>>2]|0;if((c[k>>2]|0)>=0){c[m>>2]=0-a;break}else{c[m>
x3e;2]=a;break}}b=c[g>>2]|0;if(!(c[l>>2]|0)){a=c[k>>2]|0;if((b|0)>=0){c[m>>2]=a;break
}else{c[m>>2]=0-a;break}}if(!b){a=c[f>>2]|0;if((c[l>>2]|0)>=0){c[m>>2]=0-a;break}else
{c[m>>2]=a;break}}yb(c[f>>2]|0,c[l>>2]|0,h);yb(c[k>>2]|0,c[g>>2]|0,j);if((c[h+
4>>2]|0)>>>0>(c[j+4>>2]|0)>>>0){c[m>>2]=1;break}if((c[h+4>
x3e;2]|0)>>>0<(c[j+4>>2]|0)>>>0){c[m>>2]=-1;break}if((c[h>>2]|0
)>>>0>(c[j>>2]|0)>>>0){c[m>>2]=1;break}if((c[h>>2]|0)>>
;>0<(c[j>>2]|0)>>>0){c[m>>2]=-1;break}else{c[m>>2]=0;break}}while(0);i=n;
return c[m>>2]|0}function $b(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;p=i;i=i+48|0
;f=p+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;n=p+8|0;o=p+4|0;m=p;c[f>>2]=a;c[g>>2]=b;c[h>>
;2]=d;c[j>>2]=e;c[k>>2]=c[f>>2];c[l>>2]=c[g>>2];if((c[k>>2]|0)<
0)c[k>>2]=0-(c[k>>2]|0);if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>>2]|0);c[n>
x3e;2]=(c[k>>2]|0)+(c[l>>2]|0);c[k>>2]=c[h>>2];if((c[k>>2]|0)<0)c[k>
x3e;2]=0-(c[k>>2]|0);c[l>>2]=c[j>>2];if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>
;>2]|0);c[o>>2]=(c[k>>2]|0)+(c[l>>2]|0);c[k>>2]=(c[h>>2]|0)+(c[f>>
;2]|0);if((c[k>>2]|0)<0)c[k>>2]=0-(c[k>>2]|0);c[l>>2]=(c[j>>2]|0)+(c[g>
;>2]|0);if((c[l>>2]|0)>=0){e=c[k>>2]|0;d=c[l>>2]|0;d=e+d|0;c[m>>2]=d;d=c[n>
;>2]|0;e=c[o>>2]|0;e=d+e|0;d=c[m>>2]|0;d=e-d|0;e=c[m>>2]|0;e=e>>4;e=(d|0)<(e|0
);e=e&1;i=p;return e|0}c[l>>2]=0-(c[l>>2]|0);e=c[k>>2]|0;d=c[l>>2]|0;d=e+d|0;c[m>
;>2]=d;d=c[n>>2]|0;e=c[o>>2]|0;e=d+e|0;d=c[m>>2]|0;d=e-d|0;e=c[m>>2]|0;e=e>>
;4;e=(d|0)<(e|0);e=e&1;i=p;return e|0}function ac(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;d=h+12|0;e=h+8
|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[g>>2]=bc(c[d>>2]|0,96,f)|0;if(c
[f>>2]|0){a=c[f>>2]|0;i=h;return a|0}c[c[g>>2]>>2]=c[d>>2];c[c[e>>2]
x3e;>2]=c[g>>2];a=c[f>>2]|0;i=h;return a|0}function bc(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;k=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[k>>2]=a;c[e>>2]=b;c[f>>2]=d;c[g>>
;2]=cc(c[k>>2]|0,c[e>>2]|0,h)|0;if((c[h>>2]|0)==0&(c[e>>2]|0)>0)Ns(c[g>
x3e;2]|0,0,c[e>>2]|0)|0;c[c[f>>2]>>2]=c[h>>2];i=j;return c[g>>2]|0}function cc
(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;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f
>>2]=b;c[g>>2]=d;c[j>>2]=0;c[h>>2]=0;if((c[f>>2]|0)>0){c[h>>2]=
Ya[c[(c[e>>2]|0)+4>>2]&127](c[e>>2]|0,c[f>>2]|0)|0;if(!(c[h>>2]|0))c[j>
;>2]=64}else if((c[f>>2]|0)<0)c[j>>2]=6;c[c[g>>2]>>2]=c[j>>2];i=k;return
c[h>>2]|0}function dc(a){a=a|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[d>>
;2]=(c[g>>2]|0)+20;c[e>>2]=(c[g>>2]|0)+56;b[(c[d>>2]|0)+2>>1]=0;b[c[d>>
;2]>>1]=0;c[(c[d>>2]|0)+28>>2]=0;a=c[e>>2]|0;d=c[d>>2]|0;e=a+36|0;do{c[a>
x3e;2]=c[d>>2];a=a+4|0;d=d+4|0}while((a|0)<(e|0));i=f;return}function ec(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];Fb(c[e>>2]|0,c[(c[d>>2]|0)+
20+4>>2]|0);c[(c[d>>2]|0)+20+4>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+8>>
;2]|0);c[(c[d>>2]|0)+20+8>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+12>>2]|0);c[(c[d
>>2]|0)+20+12>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+20>>2]|0);c[(c[d>>
2]|0)+20+20>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+20+32>>2]|0);c[(c[d>>2]|0)+20+32
x3e;>2]=0;c[(c[d>>2]|0)+20+24>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+8
>>2]=0;c[(c[d>>2]|0)+12>>2]=0;dc(c[d>>2]|0);i=b;return}function fc(a){a=a|0;var b=0,d=0,
e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(!(c[b>>2]|0)){i=e;return}c[d>>2]=c[c[b>>2]>
;>2];ec(c[b>>2]|0);Fb(c[d>>2]|0,c[b>>2]|0);c[b>>2]=0;i=e;return}function gc(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[g>>2]=c[c[d>>2]>>2];b
=hc(c[g>>2]|0,8,0,c[(c[d>>2]|0)+4>>2]<<1,0,e)|0;c[(c[d>>2]|0)+20+20>>
;2]=b;if(c[e>>2]|0){g=c[e>>2]|0;i=f;return g|0}a[(c[d>>2]|0)+16>>0]=1;c[(c[d>>
2]|0)+20+24>>2]=(c[(c[d>>2]|0)+20+20>>2]|0)+(c[(c[d>>2]|0)+4>>2]<<3);
jc(c[d>>2]|0);g=c[e>>2]|0;i=f;return g|0}function hc(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;o=i;i=i+32|0;p=o+24|0;h=o+20|0;j=o+16|0;k=o+12|0;l=o+8|0;m=o+4|0;n=o;c[p>>2]=a;c[h>
x3e;2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=0;c[l>>2]=ic
(c[p>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,n)|0;if((c[n>>2]|
0)==0?(c[k>>2]|0)>(c[j>>2]|0):0){p=(c[l>>2]|0)+(_(c[j>>2]|0,c[h>>2]|0)|0)|
0;Ns(p|0,0,_((c[k>>2]|0)-(c[j>>2]|0)|0,c[h>>2]|0)|0)|0}c[c[m>>2]>>2]=c[n>
x3e;2];i=o;return c[l>>2]|0}function ic(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;s=i;i=i+48|0;h=s+36|0;j=s+32|0;k=s+28|0;l=s+24|0;m=s+20|0;n=s+16|0;q=s+12|0;o=s+8|0;p=s+4|0;r=s;c[h>>
;2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[q>>2]=0;do
if(!((c[k>>2]|0)<0|(c[l>>2]|0)<0|(c[j>>2]|0)<0)){if((c[l>>2]|0)==0|(c[j
x3e;>2]|0)==0){Fb(c[h>>2]|0,c[m>>2]|0);c[m>>2]=0;break}if((c[l>>2]|0)>(2147483647
/(c[j>>2]|0)|0|0)){c[q>>2]=10;break}if(!(c[k>>2]|0)){c[m>>2]=bc(c[h>>2]|0,_(c[
l>>2]|0,c[j>>2]|0)|0,q)|0;break}c[p>>2]=_(c[k>>2]|0,c[j>>2]|0)|0;c[r>>
;2]=_(c[l>>2]|0,c[j>>2]|0)|0;c[o>>2]=Wa[c[(c[h>>2]|0)+12>>2]&31](c[h>
;>2]|0,c[p>>2]|0,c[r>>2]|0,c[m>>2]|0)|0;if(!(c[o>>2]|0)){c[q>>2]=64;break
}else{c[m>>2]=c[o>>2];break}}else c[q>>2]=6;while(0);c[c[n>>2]>>2]=c[q>
x3e;2];i=s;return c[m>>2]|0}function jc(d){d=d|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
]=d;c[f>>2]=(c[e>>2]|0)+20;c[h>>2]=(c[e>>2]|0)+56;c[(c[h>>2]|0)+4>>2
]=(c[(c[f>>2]|0)+4>>2]|0)+(b[(c[f>>2]|0)+2>>1]<<3);c[(c[h>>2]|0)+8
x3e;>2]=(c[(c[f>>2]|0)+8>>2]|0)+(b[(c[f>>2]|0)+2>>1]|0);c[(c[h>>2]|0)+12
x3e;>2]=(c[(c[f>>2]|0)+12>>2]|0)+(b[c[f>>2]>>1]<<1);if(!(a[(c[e>>
;2]|0)+16>>0]|0)){i=g;return}c[(c[e>>2]|0)+56+20>>2]=(c[(c[e>>2]|0)+20+20>>2]|
0)+(b[(c[f>>2]|0)+2>>1]<<3);c[(c[e>>2]|0)+56+24>>2]=(c[(c[e>>2]|0)+20
+24>>2]|0)+(b[(c[f>>2]|0)+2>>1]<<3);i=g;return}function kc(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,s=0,t=0;s=i;i=i+48|0;g=s+36|0;h=s+32|0;t=s+28|0;j=s+24|0;o=s+20|0;n=s+16|0;l=s+12|0;
m=s+8|0;k=s+40|0;p=s+4|0;q=s;c[h>>2]=d;c[t>>2]=e;c[j>>2]=f;c[o>>2]=c[c[h>>2]
x3e;>2];c[n>>2]=0;c[l>>2]=(c[h>>2]|0)+20;c[m>>2]=(c[h>>2]|0)+56;a[k>
x3e;0]=0;c[p>>2]=(b[(c[l>>2]|0)+2>>1]|0)+(b[(c[m>>2]|0)+2>>1]|0)+(c[t>>
;2]|0);c[q>>2]=c[(c[h>>2]|0)+4>>2];do if((c[p>>2]|0)>>>0>(c[q>
x3e;2]|0)>>>0){c[p>>2]=(c[p>>2]|0)+7&-8;if((c[p>>2]|0)>>>0>
;32767){c[g>>2]=10;t=c[g>>2]|0;i=s;return t|0}t=hc(c[o>>2]|0,8,c[q>>2]|0,c[p>>
2]|0,c[(c[l>>2]|0)+4>>2]|0,n)|0;c[(c[l>>2]|0)+4>>2]=t;if((c[n>>2]|0)==0?(t=hc(
c[o>>2]|0,1,c[q>>2]|0,c[p>>2]|0,c[(c[l>>2]|0)+8>>2]|0,n)|0,c[(c[l>>2
]|0)+8>>2]=t,(c[n>>2]|0)==0):0){if(a[(c[h>>2]|0)+16>>0]|0){t=hc(c[o>>2]|0,8,c[
q>>2]<<1,c[p>>2]<<1,c[(c[h>>2]|0)+20+20>>2]|0,n)|0;c[(c[h>>
;2]|0)+20+20>>2]=t;if(c[n>>2]|0)break;Ts((c[(c[h>>2]|0)+20+20>>2]|0)+(c[p>>2]
x3c;<3)|0,(c[(c[h>>2]|0)+20+20>>2]|0)+(c[q>>2]<<3)|0,c[q>>2]<<3
|0)|0;c[(c[h>>2]|0)+20+24>>2]=(c[(c[h>>2]|0)+20+20>>2]|0)+(c[p>>2]<<
3)}a[k>>0]=1;c[(c[h>>2]|0)+4>>2]=c[p>>2];r=10}}else r=10;while(0);a:do if((r|0)==10){c[q
>>2]=c[(c[h>>2]|0)+8>>2];c[p>>2]=(b[c[l>>2]>>1]|0)+(b[c[m>>
;2]>>1]|0)+(c[j>>2]|0);do if((c[p>>2]|0)>>>0>(c[q>>2]|0)>>
x3e;0){c[p>>2]=(c[p>>2]|0)+3&-4;if((c[p>>2]|0)>>>0>32767){c[g>>
2]=10;t=c[g>>2]|0;i=s;return t|0}else{t=hc(c[o>>2]|0,2,c[q>>2]|0,c[p>>2]|0,c[(c[l>
x3e;2]|0)+12>>2]|0,n)|0;c[(c[l>>2]|0)+12>>2]=t;if(c[n>>2]|0)break a;a[k>>0]=1;
c[(c[h>>2]|0)+8>>2]=c[p>>2];break}}while(0);if(a[k>>0]|0)jc(c[h>>2]|0)}while(0
);c[g>>2]=c[n>>2];t=c[g>>2]|0;i=s;return t|0}function lc(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;d=k+28|0;l=k+24|0;g=k+20|0;f=k+16|0;h=k+12|0;j=k+8|0;e=k+4|0;m=k;c[d>>2]=a;c[l>>
;2]=b;c[g>>2]=c[c[d>>2]>>2];c[f>>2]=0;c[e>>2]=(c[d>>2]|0)+20;c[m>
;>2]=(c[d>>2]|0)+56;c[h>>2]=(c[(c[e>>2]|0)+28>>2]|0)+(c[(c[m>>2]|0)+28>
;>2]|0)+(c[l>>2]|0);c[j>>2]=c[(c[d>>2]|0)+12>>2];if((c[h>>2]|0)>>
;>0<=(c[j>>2]|0)>>>0){m=c[f>>2]|0;i=k;return m|0}c[h>>2]=(c[h>>
2]|0)+1&-2;m=hc(c[g>>2]|0,32,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+32>>2]|0,f
)|0;c[(c[e>>2]|0)+32>>2]=m;if(c[f>>2]|0){m=c[f>>2]|0;i=k;return m|0}c[(c[d>>2]|
0)+12>>2]=c[h>>2];mc(c[d>>2]|0);m=c[f>>2]|0;i=k;return m|0}function mc(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+4|0;d=b;c[f>>2]=a;c[e>>2]=(c[f>>2]|0)+20;c[d>>2]=(c
[f>>2]|0)+56;c[(c[d>>2]|0)+32>>2]=(c[(c[e>>2]|0)+32>>2]|0)+(c[(c[e>>
2]|0)+28>>2]<<5);i=b;return}function nc(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;c[f>>2]=(c[e>>2]|0)+56;b[(c[f>>2]|0)+2>>1]=0;b[c[f>>2]>>1]=0;c[(c[
f>>2]|0)+28>>2]=0;jc(c[e>>2]|0);mc(c[e>>2]|0);i=d;return}function oc(a){a=a|0;var d=0,e=
0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[d>>2]=a;if(!(c[d>>2]|0)){
i=k;return}c[e>>2]=(c[d>>2]|0)+20;c[f>>2]=(c[d>>2]|0)+56;c[j>>2]=b[c[f>
x3e;2]>>1];c[h>>2]=b[(c[e>>2]|0)+2>>1];b[(c[e>>2]|0)+2>>1]=(b[(c[e
x3e;>2]|0)+2>>1]|0)+(b[(c[f>>2]|0)+2>>1]|0);b[c[e>>2]>>1]=(b[c[e>>
;2]>>1]|0)+(b[c[f>>2]>>1]|0);a=(c[e>>2]|0)+28|0;c[a>>2]=(c[a>>2]|0)+(
c[(c[f>>2]|0)+28>>2]|0);c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[j
x3e;>2]|0)>>>0)break;b[(c[(c[f>>2]|0)+12>>2]|0)+(c[g>>2]<<1)>
x3e;1]=(b[(c[(c[f>>2]|0)+12>>2]|0)+(c[g>>2]<<1)>>1]|0)+(c[h>>2]|0);c
[g>>2]=(c[g>>2]|0)+1}nc(c[d>>2]|0);i=k;return}function pc(a,e){a=a|0;e=e|0;var f=0,g=0,h=0,j=0,k=0
,l=0,m=0,n=0;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;l=n+12|0;k=n+8|0;m=n+4|0;j=n;c[f>>2]=a;c[g>>2]=e;c[l>
;>2]=b[(c[g>>2]|0)+20+2>>1];c[k>>2]=b[(c[g>>2]|0)+20>>1];c[h>>2
]=kc(c[f>>2]|0,c[l>>2]|0,c[k>>2]|0)|0;if(c[h>>2]|0){a=c[h>>2]|0;i=n;return a|0
}c[m>>2]=(c[f>>2]|0)+20;c[j>>2]=(c[g>>2]|0)+20;Ss(c[(c[m>>2]|0)+4>>2
]|0,c[(c[j>>2]|0)+4>>2]|0,c[l>>2]<<3|0)|0;Ss(c[(c[m>>2]|0)+8>>2]|0,c
[(c[j>>2]|0)+8>>2]|0,c[l>>2]|0)|0;Ss(c[(c[m>>2]|0)+12>>2]|0,c[(c[j>>
2]|0)+12>>2]|0,c[k>>2]<<1|0)|0;if(d[(c[f>>2]|0)+16>>0]|0?d[(c[g>>2]|
0)+16>>0]|0:0){Ss(c[(c[f>>2]|0)+20+20>>2]|0,c[(c[g>>2]|0)+20+20>>2]|0,c[l>
;>2]<<3|0)|0;Ss(c[(c[f>>2]|0)+20+24>>2]|0,c[(c[g>>2]|0)+20+24>>2]|0,c[l
x3e;>2]<<3|0)|0}b[(c[m>>2]|0)+2>>1]=c[l>>2];b[c[m>>2]>>1]=c[k
x3e;>2];jc(c[f>>2]|0);a=c[h>>2]|0;i=n;return a|0}function qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;h=i;i=i+16|0;j=h+12|0;d=h+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=0;c[e>>2]=c[j
x3e;>2];if(!((c[e>>2]|0)!=0&(c[d>>2]|0)!=0)){j=c[f>>2]|0;i=h;return j|0}while(1){if(!(c[
c[e>>2]>>2]|0)){g=6;break}j=(Kr(c[c[e>>2]>>2]|0,c[d>>2]|0)|0)==0;a=c[e>
x3e;2]|0;if(j)break;c[e>>2]=a+8}if((g|0)==6){j=c[f>>2]|0;i=h;return j|0}c[f>>2]=c[a+4>>2
];j=c[f>>2]|0;i=h;return j|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;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;c[c[g>>2]>
x3e;2]=c[k>>2];c[(c[g>>2]|0)+4>>2]=c[j>>2];c[(c[g>>2]|0)+8>>2]=c[h
x3e;>2];c[(c[g>>2]|0)+12>>2]=0;i=f;return}function sc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=i;i=i+16|0;e=d
+8|0;f=d+4|0;c[e>>2]=a;c[f>>2]=b;c[d>>2]=(c[e>>2]|0)+16;c[(c[e>>2]|0)+12>
x3e;2]=c[f>>2];ta(c[d>>2]|0,1)}function tc(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;m=i;
i=i+32|0;h=m+24|0;e=m+20|0;f=m+16|0;j=m+12|0;k=m+8|0;g=m+4|0;l=m;c[e>>2]=a;c[f>>2]=b;c[j>>2]=d;c[c
[j>>2]>>2]=0;if(!(c[e>>2]|0)){c[h>>2]=33;l=c[h>>2]|0;i=m;return l|0}if(!(c[f
x3e;>2]|0)){c[h>>2]=6;l=c[h>>2]|0;i=m;return l|0}c[g>>2]=c[c[e>>2]>>2];c[
l>>2]=bc(c[g>>2]|0,40,k)|0;if(!(c[k>>2]|0)){c[(c[l>>2]|0)+28>>2]=c[g>>
;2];do if(c[c[f>>2]>>2]&1|0)uc(c[l>>2]|0,c[(c[f>>2]|0)+4>>2]|0,c[(c[f>
;>2]|0)+8>>2]|0);else{if(c[c[f>>2]>>2]&4|0){c[k>>2]=qr(c[l>>2]|0,c[(
c[f>>2]|0)+12>>2]|0)|0;c[(c[l>>2]|0)+16>>2]=c[(c[f>>2]|0)+12>>2];break
}if(c[c[f>>2]>>2]&2|0?c[(c[f>>2]|0)+16>>2]|0:0){Fb(c[g>>2]|0,c[l>>
;2]|0);c[l>>2]=0;c[l>>2]=c[(c[f>>2]|0)+16>>2];break}c[k>>2]=6}while(0);e=c[g
x3e;>2]|0;f=c[l>>2]|0;if(c[k>>2]|0){Fb(e,f);c[l>>2]=0}else c[f+28>>2]=e;c[c[j>
x3e;2]>>2]=c[l>>2]}c[h>>2]=c[k>>2];l=c[h>>2]|0;i=m;return l|0}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;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]>>2]=c[h>>2];c[(c[f>>2]|0)+4>>2]=c[g>>2];c[(c[f>
x3e;2]|0)+8>>2]=0;c[(c[f>>2]|0)+32>>2]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>
x3e;2]|0)+24>>2]=0;i=e;return}function vc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=a;c[e>>2]=b;if(!(c[d>>2]|0)){i=g;return}c[f>>2]=c[(c[d>>2]|0)+28>>2];
wc(c[d>>2]|0);if(c[e>>2]|0){i=g;return}Fb(c[f>>2]|0,c[d>>2]|0);c[d>>2]=0;i=g;return
}function wc(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)){i=d;return}if(!(c[(c[b>
x3e;2]|0)+24>>2]|0)){i=d;return}Va[c[(c[b>>2]|0)+24>>2]&63](c[b>>2]|0);i=d;return}function
xc(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c
[g>>2]=c[(c[(c[d>>2]|0)+4>>2]|0)+100>>2];if(c[(c[(c[d>>2]|0)+156>>2]|
0)+4>>2]&1|0){Fb(c[g>>2]|0,c[(c[d>>2]|0)+76+12>>2]|0);c[(c[d>>2]|0)+76+12
>>2]=0}else{a=(c[(c[d>>2]|0)+156>>2]|0)+4|0;c[a>>2]=c[a>>2]|1}a=bc(c[g>
x3e;2]|0,c[e>>2]|0,f)|0;c[(c[d>>2]|0)+76+12>>2]=a;i=h;return c[f>>2]|0}function yc(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;m=i;i=i+32|0;d=m+28|0;e=m+24|0;f=m+20|0;j=m+16|0;h=m+12|0;g=m+8|0;k=m+4|0;l=
m;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0?c[(c[e>>2]|0)+96>>2]|0:0){c[h>>2]=
c[(c[e>>2]|0)+96>>2];c[g>>2]=c[(c[h>>2]|0)+20>>2];c[k>>2]=c[(c[h>
;>2]|0)+8>>2];c[l>>2]=bc(c[k>>2]|0,c[(c[g>>2]|0)+44>>2]|0,j)|0;do if(c[j
x3e;>2]|0){if(c[f>>2]|0)c[c[f>>2]>>2]=0}else{c[(c[l>>2]|0)+4>>2]=c[e>
;>2];c[j>>2]=zc(c[l>>2]|0)|0;if(c[j>>2]|0){Ac(c[l>>2]|0);Fb(c[k>>2]|0,c[l
>>2]|0);c[l>>2]=0;break}c[(c[l>>2]|0)+8>>2]=c[(c[e>>2]|0)+84>>2];c[(
c[e>>2]|0)+84>>2]=c[l>>2];if(c[f>>2]|0)c[c[f>>2]>>2]=c[l>>
2]}while(0);c[d>>2]=c[j>>2];l=c[d>>2]|0;i=m;return l|0}c[d>>2]=6;l=c[d>>2]|0;i
=m;return l|0}function zc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;b=j+20|0;e=j+16|0;d=j+12|0;h=j+8|0;f=j+4|0;g=j;c
[b>>2]=a;c[e>>2]=c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2];c[d>>2]=c[(c[e>
;>2]|0)+20>>2];c[h>>2]=c[(c[e>>2]|0)+8>>2];c[f>>2]=0;c[g>>2]=0;
c[c[b>>2]>>2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=bc(c[h>>2]|0,40,f)|0;if(c[
f>>2]|0){a=c[f>>2]|0;i=j;return a|0}c[(c[b>>2]|0)+156>>2]=c[g>>2];if(!(c[c[c[e
>>2]>>2]>>2]&512))c[f>>2]=ac(c[h>>2]|0,c[g>>2]|0)|0;if(c[f>
;>2]|0){a=c[f>>2]|0;i=j;return a|0}if(!(c[(c[d>>2]|0)+64>>2]|0)){a=c[f>>2]|0;i=j;return
a|0}c[f>>2]=Ta[c[(c[d>>2]|0)+64>>2]&63](c[b>>2]|0)|0;a=c[f>>2]|0;i=j;return
a|0}function Ac(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;d=g+4|0;f=g;c[b>>2]=a;c[e>>2
]=c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2];c[d>>2]=c[(c[e>>2]|0)+20>>2];c[f
x3e;>2]=c[(c[e>>2]|0)+8>>2];if(c[(c[d>>2]|0)+68>>2]|0)Va[c[(c[d>>2]|0)+68
>>2]&63](c[b>>2]|0);Eb(c[b>>2]|0);if(!(c[(c[b>>2]|0)+156>>2]|0)){i=g;return
}if(!(c[c[c[e>>2]>>2]>>2]&512)){fc(c[c[(c[b>>2]|0)+156>>2]>>2]|
0);c[c[(c[b>>2]|0)+156>>2]>>2]=0}Fb(c[f>>2]|0,c[(c[b>>2]|0)+156>>2]|
0);c[(c[b>>2]|0)+156>>2]=0;i=g;return}function Bc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+
16|0;d=j+12|0;g=j+8|0;h=j+4|0;b=j;c[f>>2]=a;if(!(c[f>>2]|0)){i=j;return}c[d>>2]=c[(c[(c[f>>
;2]|0)+4>>2]|0)+96>>2];c[g>>2]=c[(c[d>>2]|0)+8>>2];c[h>>2]=0;c[b>
;>2]=c[(c[(c[f>>2]|0)+4>>2]|0)+84>>2];while(1){if(!(c[b>>2]|0)){e=10;break}if((c[b
x3e;>2]|0)==(c[f>>2]|0))break;c[h>>2]=c[b>>2];c[b>>2]=c[(c[b>>2]|0)+8>
;>2]}if((e|0)==10){i=j;return}b=c[(c[b>>2]|0)+8>>2]|0;if(c[h>>2]|0)c[(c[h>>2]|0)+8
x3e;>2]=b;else c[(c[(c[f>>2]|0)+4>>2]|0)+84>>2]=b;Ac(c[f>>2]|0);Fb(c[g>>2
]|0,c[f>>2]|0);c[f>>2]=0;i=j;return}function Cc(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;e=k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;if(!(c[f>>2]|0
)){c[e>>2]=35;d=c[e>>2]|0;i=k;return d|0}c[j>>2]=c[g>>2];if(c[(c[f>>2]|0)+92
x3e;>2]|0)c[j>>2]=Dc(c[f>>2]|0,c[g>>2]|0)|0;c[e>>2]=Cb(c[f>>2]|0,c[j>
;>2]|0,c[h>>2]|0)|0;d=c[e>>2]|0;i=k;return d|0}function Dc(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;if(!(c[d>>2]|0)){g=
c[g>>2]|0;i=h;return g|0}if(!(c[(c[d>>2]|0)+92>>2]|0)){g=c[g>>2]|0;i=h;return g|0}c[f>
;>2]=c[(c[d>>2]|0)+92>>2];c[g>>2]=Ya[c[(c[(c[f>>2]|0)+12>>2]|0)+12>
x3e;2]&127](c[f>>2]|0,c[e>>2]|0)|0;g=c[g>>2]|0;i=h;return g|0}function Ec(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;m=i;i=i+64|0;f=m+48|0;g=m+44|0;h=m+40|0;j=m+36|0;k=m+32|0;l=m;c[g>>2]=a;
c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if(c[h>>2]|0){c[l>>2]=4;c[l+12>>2]=c[h
>>2];c[l+16>>2]=0;c[f>>2]=Fc(c[g>>2]|0,l,c[j>>2]|0,c[k>>2]|0)|0;b=c[
f>>2]|0;i=m;return b|0}else{c[f>>2]=6;b=c[f>>2]|0;i=m;return b|0}return 0}function Fc(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;G=i;i=i
+96|0;C=G+80|0;j=G+76|0;k=G+72|0;l=G+68|0;D=G+64|0;E=G+60|0;o=G+56|0;u=G+52|0;B=G+48|0;q=G+44|0;v=G+40|0;p=G+84|0;n=G+36|0;t=G+32
|0;w=G+28|0;y=G+24|0;x=G+20|0;z=G+16|0;A=G+12|0;r=G+8|0;m=G+4|0;s=G;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;
c[D>>2]=h;c[B>>2]=0;c[q>>2]=0;c[v>>2]=0;if(!(((c[D>>2]|0)==0&(c[l>
x3e;2]|0)>=0^1)&(c[k>>2]|0)!=0)){c[C>>2]=6;F=c[C>>2]|0;i=G;return F|0}if(c[c[k>>
;2]>>2]&2|0)h=(c[(c[k>>2]|0)+16>>2]|0)!=0;else h=0;a[p>>0]=h&1;c[E>>
2]=tc(c[j>>2]|0,c[k>>2]|0,B)|0;a:do if(!(c[E>>2]|0)){c[u>>2]=c[c[j>>2]>
x3e;2];do if(c[c[k>>2]>>2]&8|0?c[(c[k>>2]|0)+20>>2]|0:0){c[o>>2]=c[(c[k
x3e;>2]|0)+20>>2];if(c[c[c[o>>2]>>2]>>2]&1|0){c[w>>2]=0;c[y>>
;2]=0;if(c[c[k>>2]>>2]&16|0){c[w>>2]=c[(c[k>>2]|0)+24>>2];c[y>>
2]=c[(c[k>>2]|0)+28>>2]}c[E>>2]=Gc(c[o>>2]|0,c[B>>2]|0,c[l>>2]|0,c[w
>>2]|0,c[y>>2]|0,q)|0;if(!(c[E>>2]|0))break}else c[E>>2]=32;vc(c[B>>2]|0,d[p
x3e;>0]|0);F=60;break a}else F=14;while(0);b:do if((F|0)==14){c[n>>2]=(c[j>>2]|0)+28;c[t>>2]=(
c[n>>2]|0)+(c[(c[j>>2]|0)+24>>2]<<2);while(1){if((c[n>>2]|0)>>>
0>=(c[t>>2]|0)>>>0){F=27;break a}if(c[c[c[c[n>>2]>>2]>>2]>>
;2]&1|0){c[x>>2]=0;c[z>>2]=0;c[o>>2]=c[c[n>>2]>>2];if(c[c[k>>2]
x3e;>2]&16|0){c[x>>2]=c[(c[k>>2]|0)+24>>2];c[z>>2]=c[(c[k>>2]|0)+28
x3e;>2]}c[E>>2]=Gc(c[o>>2]|0,c[B>>2]|0,c[l>>2]|0,c[x>>2]|0,c[z>>
;2]|0,q)|0;if(!(c[E>>2]|0))break b;if((Kr(c[(c[c[c[n>>2]>>2]>>2]|0)+8>>2]|0,10489
)|0)==0?(c[E>>2]&255|0)==142:0){if(Kc(c[B>>2]|0,0)|0){F=27;break a}c[E>>2]=Lc(c[j>>
2]|0,c[B>>2]|0,c[l>>2]|0,c[x>>2]|0,c[z>>2]|0,c[D>>2]|0)|0;if(!(c[E>>
2]|0))break}if((c[E>>2]&255|0)!=2){F=27;break a}}c[n>>2]=(c[n>>2]|0)+4}vc(c[B>>2]|0
,d[p>>0]|0);c[C>>2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}while(0);if(a[p>>0]|0){
B=(c[q>>2]|0)+8|0;c[B>>2]=c[B>>2]|1024}c[v>>2]=bc(c[u>>2]|0,12,E)|0;if(!(c[E
x3e;>2]|0)){c[(c[v>>2]|0)+8>>2]=c[q>>2];td((c[(c[q>>2]|0)+96>>2]|0)+24|0,
c[v>>2]|0);if((c[l>>2]|0)>=0){c[E>>2]=yc(c[q>>2]|0,0)|0;if(c[E>>2]|0){F=60
;break}c[E>>2]=ud(c[q>>2]|0,A)|0;if(c[E>>2]|0){F=60;break}c[(c[q>>2]|0)+88>>2]=
c[A>>2]}if(c[(c[q>>2]|0)+8>>2]&1|0){if((b[(c[q>>2]|0)+74>>1]|0)<0)b[(
c[q>>2]|0)+74>>1]=0-(b[(c[q>>2]|0)+74>>1]|0);if(!(c[(c[q>>2]|0)+8>>2
]&32))b[(c[q>>2]|0)+78>>1]=b[(c[q>>2]|0)+74>>1]|0}c:do if(c[(c[q>>2]|0)+8
>>2]&2|0){c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[(c[q>>2]|0)+28>>2]|0
))break c;c[m>>2]=(c[(c[q>>2]|0)+32>>2]|0)+(c[r>>2]<<4);if((b[c[m>>2
]>>1]|0)<0)b[c[m>>2]>>1]=0-(b[c[m>>2]>>1]|0);if((c[(c[m>>2]|0)+
8>>2]|0)<0)c[(c[m>>2]|0)+8>>2]=(0-(c[(c[m>>2]|0)+8>>2]|0)&65535)<
;<16>>16;if((c[(c[m>>2]|0)+12>>2]|0)<0)c[(c[m>>2]|0)+12>>2]=0-(c[(c[
m>>2]|0)+12>>2]|0);c[r>>2]=(c[r>>2]|0)+1}}while(0);c[s>>2]=c[(c[q>>2
]|0)+128>>2];c[(c[s>>2]|0)+4>>2]=65536;c[(c[s>>2]|0)+4+4>>2]=0;c[(c[s>>
;2]|0)+4+8>>2]=0;c[(c[s>>2]|0)+4+12>>2]=65536;c[(c[s>>2]|0)+20>>2]=0;c[(c[s>
;>2]|0)+20+4>>2]=0;c[(c[s>>2]|0)+60>>2]=1;h=c[q>>2]|0;if(c[D>>2]|0){c[c[D
>>2]>>2]=h;break}else{vd(h)|0;break}}else F=60}else F=27;while(0);if((F|0)==27){if(!(((c[E>>2]&
;255|0)!=81?(c[E>>2]&255|0)!=2:0)?(c[E>>2]&255|0)!=85:0))F=30;do if((F|0)==30){c[E>>2]=Xc
(c[j>>2]|0,c[B>>2]|0,c[l>>2]|0,c[D>>2]|0,c[k>>2]|0)|0;if(c[E>>2]|0){
if((c[E>>2]&255|0)!=2)break;c[E>>2]=2;break}else{vc(c[B>>2]|0,d[p>>0]|0);c[C>
x3e;2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}}while(0);vc(c[B>>2]|0,d[p>>0]|0);F=60}if((F|0
)==60)vd(c[q>>2]|0)|0;c[C>>2]=c[E>>2];F=c[C>>2]|0;i=G;return F|0}function Gc(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;v=i;i=i+64|0;h=v+48|0;j=v+44|0
;k=v+40|0;l=v+36|0;m=v+32|0;n=v+28|0;u=v+24|0;o=v+20|0;r=v+16|0;p=v+12|0;q=v+8|0;t=v+4|0;s=v;c[h>>2]=a;c[j>>
2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[r>>2]=0;c[t>>2]=0;c[o
>>2]=c[(c[h>>2]|0)+20>>2];c[u>>2]=c[(c[h>>2]|0)+8>>2];c[r>>
;2]=bc(c[u>>2]|0,c[(c[o>>2]|0)+36>>2]|0,p)|0;do if((c[p>>2]|0)==0?(c[t>>2]=bc(
c[u>>2]|0,64,p)|0,(c[p>>2]|0)==0):0){c[(c[r>>2]|0)+128>>2]=c[t>>2];c[(c[r>
;>2]|0)+96>>2]=c[h>>2];c[(c[r>>2]|0)+100>>2]=c[u>>2];c[(c[r>>2]|
0)+104>>2]=c[j>>2];c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]=0;c[s>>2]=0;while
(1){if((c[s>>2]|0)>=(c[l>>2]|0))break;if(!((c[(c[(c[r>>2]|0)+128>>2]|0)+52>>
;2]|0)!=0^1))break;if((c[(c[m>>2]|0)+(c[s>>2]<<3)>>2]|0)==1768842098)c[(c[(c[r>>
;2]|0)+128>>2]|0)+52>>2]=c[(c[m>>2]|0)+(c[s>>2]<<3)+4>>2];c[s>
x3e;2]=(c[s>>2]|0)+1}if(c[(c[o>>2]|0)+48>>2]|0)c[p>>2]=Za[c[(c[o>>2]|0)+48>
;>2]&31](c[j>>2]|0,c[r>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(!(c
[p>>2]|0)){c[q>>2]=Hc(c[r>>2]|0)|0;if((c[q>>2]|0)!=0&(c[q>>2]|0)!=38){c[p
>>2]=c[q>>2];break}else{c[c[n>>2]>>2]=c[r>>2];break}}}while(0);if(!(c[p>
x3e;2]|0)){b=c[p>>2]|0;i=v;return b|0}Ic(c[r>>2]|0,c[u>>2]|0);if(c[(c[o>>2]|0)+52>
x3e;2]|0)Va[c[(c[o>>2]|0)+52>>2]&63](c[r>>2]|0);Fb(c[u>>2]|0,c[t>>2]|0);c
[t>>2]=0;Fb(c[u>>2]|0,c[r>>2]|0);c[r>>2]=0;c[c[n>>2]>>2]=0;b=c[p>
;>2]|0;i=v;return b|0}function Hc(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;b=j+12|0;d=j+8|0;g=j+4|0;f=j;c[d>
x3e;2]=a;c[g>>2]=c[(c[d>>2]|0)+40>>2];if(!(c[g>>2]|0)){c[b>>2]=38;h=c[b>
x3e;2]|0;i=j;return h|0}c[f>>2]=(c[g>>2]|0)+(c[(c[d>>2]|0)+36>>2]<<2);while(1){
a=(c[f>>2]|0)+-4|0;c[f>>2]=a;if(a>>>0<(c[g>>2]|0)>>>0)break;if((
c[(c[c[f>>2]>>2]|0)+4>>2]|0)!=1970170211)continue;if(!((e[(c[c[f>>2]>>2]|0)+8
x3e;>1]|0|0)==3?(e[(c[c[f>>2]>>2]|0)+10>>1]|0|0)==10:0)){if(e[(c[c[f>>2]>>
;2]|0)+8>>1]|0|0)continue;if((e[(c[c[f>>2]>>2]|0)+10>>1]|0|0)!=4)continue}if((((c[f>
;>2]|0)-(c[g>>2]|0)|0)/4|0|0)<=15){h=11;break}}if((h|0)==11){c[(c[d>>2]|0)+92>>2]=c[c[f
x3e;>2]>>2];c[b>>2]=0;h=c[b>>2]|0;i=j;return h|0}c[f>>2]=(c[g>>2]|0)+(c[(
c[d>>2]|0)+36>>2]<<2);while(1){h=(c[f>>2]|0)+-4|0;c[f>>2]=h;if(h>>
x3e;0<(c[g>>2]|0)>>>0){h=17;break}if((c[(c[c[f>>2]>>2]|0)+4>>2]|0)!=
1970170211)continue;if((((c[f>>2]|0)-(c[g>>2]|0)|0)/4|0|0)<=15){h=16;break}}if((h|0)==16){c[(c[d>
x3e;2]|0)+92>>2]=c[c[f>>2]>>2];c[b>>2]=0;h=c[b>>2]|0;i=j;return h|0}else if((h
|0)==17){c[b>>2]=38;h=c[b>>2]|0;i=j;return h|0}return 0}function Ic(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;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=a;c[e>>2]=b;if(!(c[d>>2]|0)){i=h;return}c[g>
;>2]=0;while(1){if((c[g>>2]|0)>=(c[(c[d>>2]|0)+36>>2]|0))break;c[f>>2]=c[(c[(c
[d>>2]|0)+40>>2]|0)+(c[g>>2]<<2)>>2];Jc(c[f>>2]|0);c[(c[(c[d>
x3e;2]|0)+40>>2]|0)+(c[g>>2]<<2)>>2]=0;c[g>>2]=(c[g>>2]|0)+1}Fb(c[e
x3e;>2]|0,c[(c[d>>2]|0)+40>>2]|0);c[(c[d>>2]|0)+40>>2]=0;c[(c[d>>2]|0)+36
>>2]=0;i=h;return}function Jc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;b=f+12|0;d=f+8|0;g=f+4|0;e=f;c[b>>
;2]=a;c[d>>2]=c[(c[b>>2]|0)+12>>2];c[g>>2]=c[c[b>>2]>>2];c[e>
x3e;2]=c[(c[g>>2]|0)+100>>2];if(!(c[(c[d>>2]|0)+8>>2]|0)){e=c[e>>2]|0;g=c[b>
;>2]|0;Fb(e,g);c[b>>2]=0;i=f;return}Va[c[(c[d>>2]|0)+8>>2]&63](c[b>>2]|0);e=c[
e>>2]|0;g=c[b>>2]|0;Fb(e,g);c[b>>2]=0;i=f;return}function Kc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;
g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;if(c[(c[d>>2]|0)+20>
x3e;2]|0){if(Wa[c[(c[d>>2]|0)+20>>2]&31](c[d>>2]|0,c[e>>2]|0,0,0)|0)c[f>>
2]=85}else if((c[e>>2]|0)>>>0>(c[(c[d>>2]|0)+4>>2]|0)>>>0)c[f
x3e;>2]=85;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[(c[d>>2]|0)+8>>2]=c[e>
x3e;2];a=c[f>>2]|0;i=g;return a|0}function Lc(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var j=0,k=0,l=0,m=0,n=0
,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;w=i;i=i+64|0;j=w+52|0;k=w+48|0;l=w+44|0;m=w+40|0;y=w+36|0;x=w+32|0;n=w+28|0;o=w+24|
0;s=w+20|0;t=w+16|0;r=w+12|0;u=w+8|0;q=w+56|0;v=w+4|0;p=w;c[k>>2]=a;c[l>>2]=b;c[m>>2]=e;c[y>
x3e;2]=f;c[x>>2]=g;c[n>>2]=h;c[s>>2]=c[c[k>>2]>>2];c[y>>2]=c[y>
x3e;2];c[x>>2]=c[x>>2];c[u>>2]=Mc(c[l>>2]|0)|0;c[o>>2]=Nc(c[l>>2]|0,
c[m>>2]|0,t,r,q)|0;if((((c[o>>2]|0)==0?(Kc(c[l>>2]|0,(c[u>>2]|0)+(c[t>>2]|0)|0
)|0)==0:0)?(c[v>>2]=bc(c[s>>2]|0,c[r>>2]|0,o)|0,(c[o>>2]|0)==0):0)?(c[o>>2]=Rc
(c[l>>2]|0,c[v>>2]|0,c[r>>2]|0)|0,(c[o>>2]|0)==0):0)c[o>>2]=Tc(c[k>>
2]|0,c[v>>2]|0,c[r>>2]|0,(c[m>>2]|0)<0?c[m>>2]|0:0,d[q>>0]|0|0?10406:10410
,c[n>>2]|0)|0;if((c[o>>2]|0)==2?(c[p>>2]=Kc(c[l>>2]|0,c[u>>2]|0)|0,c[p>
x3e;2]|0):0){c[j>>2]=c[p>>2];y=c[j>>2]|0;i=w;return y|0}c[j>>2]=c[o>>2];y=c[j
x3e;>2]|0;i=w;return y|0}function Mc(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 Nc(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;v=i;i=i+48|0;t=v+36|0;k=v+32|0;l=v+28|0;m=v+24|0;n=v+20|0;o=v+16|0;u=v+12|0;q=v+40|0;r=v+8|0;s=v+4|0;p=v;c[k>>2]=d;c
[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[c[m>>2]>>2]=0;c[c[n>
x3e;2]>>2]=0;a[c[o>>2]>>0]=0;c[s>>2]=Oc(c[k>>2]|0,u)|0;if(c[u>>2]|0){
c[t>>2]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}if((c[s>>2]|0)!=1954115633){c[t>>2]=
2;u=c[t>>2]|0;i=v;return u|0}b[q>>1]=Pc(c[k>>2]|0,u)|0;if(c[u>>2]|0){c[t>>2]=c
[u>>2];u=c[t>>2]|0;i=v;return u|0}d=Qc(c[k>>2]|0,6)|0;c[u>>2]=d;if(d|0){c[t>>2
]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}c[r>>2]=-1;a[c[o>>2]>>0]=0;c[p>>
;2]=0;while(1){if((c[p>>2]|0)>=(e[q>>1]|0|0)){k=26;break}c[s>>2]=Oc(c[k>>2]|0,u)|0;
if(c[u>>2]|0){k=15;break}d=Qc(c[k>>2]|0,4)|0;c[u>>2]=d;if(d|0){k=15;break}d=Oc(c[k>>2]|0
,u)|0;c[c[m>>2]>>2]=d;if(c[u>>2]|0){k=15;break}d=Oc(c[k>>2]|0,u)|0;c[c[n>>2]
x3e;>2]=d;if(c[u>>2]|0){k=15;break}if((c[s>>2]|0)==1128875040){c[r>>2]=(c[r>>2]|0)+
1;d=c[m>>2]|0;c[d>>2]=(c[d>>2]|0)+22;d=c[n>>2]|0;c[d>>2]=(c[d>>2]|0)-
22;a[c[o>>2]>>0]=1;if((c[l>>2]|0)<0){k=18;break}}else if((c[s>>2]|0)==1415139377?(c
[r>>2]=(c[r>>2]|0)+1,d=c[m>>2]|0,c[d>>2]=(c[d>>2]|0)+24,d=c[n>>2]|0,
c[d>>2]=(c[d>>2]|0)-24,a[c[o>>2]>>0]=0,(c[l>>2]|0)<0):0){k=21;break}if((c
[l>>2]|0)>=0?(c[r>>2]|0)==(c[l>>2]|0):0){k=24;break}c[p>>2]=(c[p>>2]|0)+1
}if((k|0)==15){c[t>>2]=c[u>>2];u=c[t>>2]|0;i=v;return u|0}else if((k|0)==18){c[t>>2]=0;u
=c[t>>2]|0;i=v;return u|0}else if((k|0)==21){c[t>>2]=0;u=c[t>>2]|0;i=v;return u|0}else if((k|0)==24
){c[t>>2]=0;u=c[t>>2]|0;i=v;return u|0}else if((k|0)==26){c[t>>2]=142;u=c[t>>2]|0;i=v;return
u|0}return 0}function Oc(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;k=m+20|0;j=m+4
|0;l=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=0;c[l>>2]=0;c[c[h>>2]>>2]=0;do if
(((c[(c[g>>2]|0)+8>>2]|0)+3|0)>>>0<(c[(c[g>>2]|0)+4>>2]|0)>>
;>0){e=c[g>>2]|0;if(c[(c[g>>2]|0)+20>>2]|0){if((Wa[c[e+20>>2]&31](c[g>>
;2]|0,c[(c[g>>2]|0)+8>>2]|0,k,4)|0)!=4)break;c[j>>2]=k}else c[j>>2]=(c[e>>2]|0
)+(c[(c[g>>2]|0)+8>>2]|0);if(c[j>>2]|0){c[j>>2]=(c[j>>2]|0)+4;c[l>>2
]=a[(c[j>>2]|0)+-4>>0]<<24|d[(c[j>>2]|0)+-4+1>>0]<<16|d[(c[j>
x3e;2]|0)+-4+2>>0]<<8|d[(c[j>>2]|0)+-4+3>>0]<<0}k=(c[g>>2]|0)+8|0;c[
k>>2]=(c[k>>2]|0)+4;c[f>>2]=c[l>>2];l=c[f>>2]|0;i=m;return l|0}while(0);c[c[h
x3e;>2]>>2]=85;c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}function Pc(e,f){e=e|0;f=f|0;var g=0,h=0,
j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;g=n+14|0;h=n+8|0;j=n+4|0;l=n+16|0;k=n;m=n+12|0;c[h>>2]=e;c[j>>2]=f;c[k>
;>2]=0;b[m>>1]=0;c[c[j>>2]>>2]=0;do if(((c[(c[h>>2]|0)+8>>2]|0)+1|0)>
;>>0<(c[(c[h>>2]|0)+4>>2]|0)>>>0){f=c[h>>2]|0;if(c[(c[h>>2
]|0)+20>>2]|0){if((Wa[c[f+20>>2]&31](c[h>>2]|0,c[(c[h>>2]|0)+8>>2]|0,l,2)|
0)!=2)break;c[k>>2]=l}else c[k>>2]=(c[f>>2]|0)+(c[(c[h>>2]|0)+8>>2]|0);if(c[k
x3e;>2]|0){c[k>>2]=(c[k>>2]|0)+2;b[m>>1]=a[(c[k>>2]|0)+-2>>0]<<
16>>16<<8|d[(c[k>>2]|0)+-2+1>>0]<<0}l=(c[h>>2]|0)+8|0;c[l>>
;2]=(c[l>>2]|0)+2;b[g>>1]=b[m>>1]|0;m=b[g>>1]|0;i=n;return m|0}while(0);c[c[j>>
;2]>>2]=85;b[g>>1]=0;m=b[g>>1]|0;i=n;return m|0}function Qc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g
=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>>2]=a;c[f>>2]=b;if((c[f>>2]|0)<0){c[d>>2]=85;a=
c[d>>2]|0;i=g;return a|0}else{c[d>>2]=Kc(c[e>>2]|0,(c[(c[e>>2]|0)+8>>2]|0)+(c[
f>>2]|0)|0)|0;a=c[d>>2]|0;i=g;return a|0}return 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+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=Sc(c[h>>2]|0,c[(c[h>
;>2]|0)+8>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function Sc(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g>>2]=
a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=0;if((c[h>>2]|0)>>>0>
;=(c[(c[g>>2]|0)+4>>2]|0)>>>0){c[f>>2]=85;m=c[f>>2]|0;i=n;return m|0}d=c[
g>>2]|0;if(c[(c[g>>2]|0)+20>>2]|0)c[m>>2]=Wa[c[d+20>>2]&31](c[g>>
;2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;else{c[m>>2]=(c[d+4>>2]|0)-(c[h>
x3e;2]|0);if((c[m>>2]|0)>>>0>(c[k>>2]|0)>>>0)c[m>>2]=c[k>
x3e;2];Ss(c[j>>2]|0,(c[c[g>>2]>>2]|0)+(c[h>>2]|0)|0,c[m>>2]|0)|0}c[(c[g>
x3e;2]|0)+8>>2]=(c[h>>2]|0)+(c[m>>2]|0);if((c[m>>2]|0)>>>0<(c[k>
;>2]|0)>>>0)c[l>>2]=85;c[f>>2]=c[l>>2];m=c[f>>2]|0;i=n;return m|0}function
Tc(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;s=i;i=i+80|0;h=s+72|0;j
=s+68|0;k=s+64|0;t=s+60|0;l=s+56|0;m=s+52|0;n=s+48|0;o=s+16|0;p=s+8|0;r=s+4|0;q=s;c[j>>2]=a;c[k>>2]=b;c[t>
;>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[r>>2]=0;c[q>>2]=c[c[j>>2
]>>2];c[p>>2]=Vc(c[j>>2]|0,c[k>>2]|0,c[t>>2]|0,33,r)|0;if(c[p>>2]|0){
Fb(c[q>>2]|0,c[k>>2]|0);c[k>>2]=0;c[h>>2]=c[p>>2];t=c[h>>2]|0;i=s;return
t|0}c[o>>2]=2;c[o+16>>2]=c[r>>2];if(c[m>>2]|0){c[o>>2]=c[o>>2]|8;c[
o+20>>2]=Wc(c[j>>2]|0,c[m>>2]|0)|0}c[p>>2]=Fc(c[j>>2]|0,o,c[l>>2]|0,
c[n>>2]|0)|0;if(!(c[p>>2]|0)){t=(c[c[n>>2]>>2]|0)+8|0;c[t>>2]=c[t>>2
]&-1025}else{wc(c[r>>2]|0);Fb(c[q>>2]|0,c[r>>2]|0);c[r>>2]=0}c[h>>2]=c[p
x3e;>2];t=c[h>>2]|0;i=s;return t|0}function Uc(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]|0)+28>>2];Fb(c[e>>2]|0,c[c[d>>2]>>2]|0);c[c[d
>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;c[(c[d>>2
]|0)+24>>2]=0;i=b;return}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,j=0,k=0,l=0,m=0,n=0,o=0,p=0,
q=0;q=i;i=i+48|0;g=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;l=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;p=q;c[h>>2]=a;c[j>>2]=
b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;if(!(c[h>>2]|0)){c[g>>2]=33;p=c[g>>2
]|0;i=q;return p|0}if(!(c[j>>2]|0)){c[g>>2]=6;p=c[g>>2]|0;i=q;return p|0}c[c[m>>2]>
x3e;2]=0;c[o>>2]=c[c[h>>2]>>2];c[p>>2]=bc(c[o>>2]|0,40,n)|0;if(!(c[n>>
;2]|0)){uc(c[p>>2]|0,c[j>>2]|0,c[k>>2]|0);c[(c[p>>2]|0)+24>>2]=c[l>>
2];c[c[m>>2]>>2]=c[p>>2]}c[g>>2]=c[n>>2];p=c[g>>2]|0;i=q;return p|0}
function Wc(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;l=i;i=i+32|0;e=l+20|0;d=l+16|0;f=l+12|0;j=l+8|0;g=l+4|0;h=l;c[d
>>2]=a;c[f>>2]=b;c[j>>2]=0;if(!((c[d>>2]|0)!=0&(c[f>>2]|0)!=0)){c[e>
x3e;2]=c[j>>2];k=c[e>>2]|0;i=l;return k|0}c[g>>2]=(c[d>>2]|0)+28;c[h>>2]=(c[g
x3e;>2]|0)+(c[(c[d>>2]|0)+24>>2]<<2);while(1){if((c[g>>2]|0)>>>0>
;=(c[h>>2]|0)>>>0)break;b=(Kr(c[(c[c[c[g>>2]>>2]>>2]|0)+8>>2]|0
,c[f>>2]|0)|0)==0;d=c[g>>2]|0;if(b){k=6;break}c[g>>2]=d+4}if((k|0)==6)c[j>>2]=c[d>
x3e;2];c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|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;n=i;i=i+32|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g>>2]=a;c[h>
x3e;2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[l>>2]=c[l>>2];c[m>>2]=Yc(c[
g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;if((c[m>>2]&255|0)==2)c[m>
x3e;2]=Zc(c[g>>2]|0,c[h>>2]|0,0,c[j>>2]|0,c[k>>2]|0)|0;if((c[m>>2]&255|0)!=
2?(c[m>>2]&255|0)!=85:0){b=c[m>>2]|0;i=n;return b|0}if(!(c[c[l>>2]>>2]&4)){b=c
[m>>2]|0;i=n;return b|0}c[m>>2]=dd(c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,c[k>>
;2]|0,c[l>>2]|0)|0;b=c[m>>2]|0;i=n;return b|0}function Yc(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;q=i;i=i+160|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;l=q+12|0;o=q+32|0;n=q+8|0;m=q+4|0;p=q;c[h>>
;2]=a;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;if(!(c[j>>2]|0)){c[g>>2]=85;b=c[g>>
;2]|0;i=q;return b|0}c[n>>2]=Kc(c[j>>2]|0,0)|0;if((c[n>>2]|0)==0?(c[n>>2]=Rc(c[j>
x3e;2]|0,o,128)|0,(c[n>>2]|0)==0):0){if(((((((d[o>>0]|0|0)==0?(d[o+74>>0]|0|0)==0:0)?(d[o+82>
x3e;0]|0|0)==0:0)?d[o+1>>0]|0|0:0)?(d[o+1>>0]|0|0)<=33:0)?(d[o+63>>0]|0|0)==0:0)?(d[o+(2+(d[o
+1>>0]|0))>>0]|0|0)==0:0){c[m>>2]=(d[o+83>>0]|0)<<24|(d[o+84>>0]|0)
x3c;<16|(d[o+85>>0]|0)<<8|(d[o+86>>0]|0);c[p>>2]=128+((c[m>>2]|0)+127&
;-128);c[g>>2]=Zc(c[h>>2]|0,c[j>>2]|0,c[p>>2]|0,c[k>>2]|0,c[l>>2]|0)|
0;b=c[g>>2]|0;i=q;return b|0}c[g>>2]=2;b=c[g>>2]|0;i=q;return b|0}c[g>>2]=c[n>>
;2];b=c[g>>2]|0;i=q;return b|0}function Zc(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;t=i;i=i+64|0;g=t+48|0;h=t+44|0;j=t+40|0;u=t+36|0;k=t+32|0;l=t+28|0;r=t+24|0;o=t+20|0;q=t+16|0;s=t+12|0
;n=t+8|0;m=t+4|0;p=t;c[h>>2]=a;c[j>>2]=b;c[u>>2]=d;c[k>>2]=e;c[l>>2]=f;c[r>
;>2]=c[c[h>>2]>>2];c[o>>2]=_c(c[h>>2]|0,c[j>>2]|0,c[u>>2]|0,q,s
)|0;if(c[o>>2]|0){c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return u|0}c[o>>2]=$c(c[h>
;>2]|0,c[j>>2]|0,c[q>>2]|0,c[s>>2]|0,1347375956,n,m)|0;f=c[h>>2]|0;e=c[j>>
;2]|0;if(!(c[o>>2]|0)){c[o>>2]=bd(f,e,c[n>>2]|0,c[m>>2]|0,c[k>>2]|0,c[l>
x3e;2]|0)|0;Fb(c[r>>2]|0,c[n>>2]|0);c[n>>2]=0;if(!(c[o>>2]|0))c[c[c[l>>2]>
;>2]>>2]=1;c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return u|0}c[o>>2]=$c(f,e,c[q
x3e;>2]|0,c[s>>2]|0,1936092788,n,m)|0;if((c[o>>2]|0)==0?(c[p>>2]=(c[k>>2]|0)%(c[m
x3e;>2]|0)|0,c[o>>2]=cd(c[h>>2]|0,c[j>>2]|0,c[n>>2]|0,c[m>>2]|0,c[p>
x3e;2]|0,c[l>>2]|0)|0,Fb(c[r>>2]|0,c[n>>2]|0),c[n>>2]=0,(c[o>>2]|0)==0):0)c[c[
c[l>>2]>>2]>>2]=c[m>>2];c[g>>2]=c[o>>2];u=c[g>>2]|0;i=t;return
u|0}function _c(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;x=
i;i=i+96|0;j=x+48|0;y=x+44|0;k=x+40|0;l=x+36|0;m=x+32|0;n=x+28|0;q=x+24|0;r=x+72|0;s=x+56|0;u=x+20|0;v=x+16|0;p=x+12|0;o=x+8|0;t
=x+4|0;w=x;c[y>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[y>>2]=
c[y>>2];c[q>>2]=Kc(c[k>>2]|0,c[l>>2]|0)|0;if(c[q>>2]|0){c[j>>2]=c[q
x3e;>2];y=c[j>>2]|0;i=x;return y|0}c[q>>2]=Rc(c[k>>2]|0,r,16)|0;if(c[q>>2]|0){c[j
x3e;>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}c[c[n>>2]>>2]=(c[l>>2]|0)+((d[
r>>0]|0)<<24|(d[r+1>>0]|0)<<16|(d[r+2>>0]|0)<<8|(d[r+3>>0]|
0));c[u>>2]=(c[l>>2]|0)+((d[r+4>>0]|0)<<24|(d[r+5>>0]|0)<<16|(d[r+6
x3e;>0]|0)<<8|(d[r+7>>0]|0));c[v>>2]=(d[r+8>>0]|0)<<24|(d[r+9>>
0]|0)<<16|(d[r+10>>0]|0)<<8|(d[r+11>>0]|0);if(((c[c[n>>2]>>2]|0)+(c[
v>>2]|0)|0)==(c[u>>2]|0)?(c[u>>2]|0)!=(c[l>>2]|0):0){c[q>>2]=Kc(c[k>>
;2]|0,c[u>>2]|0)|0;if(c[q>>2]|0){c[j>>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}a[
s+15>>0]=(d[r+15>>0]|0)+1;c[q>>2]=Rc(c[k>>2]|0,s,16)|0;if(c[q>>2]|0){c[j>
x3e;2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}c[p>>2]=1;c[o>>2]=1;c[t>>2]=0;while(
1){if((c[t>>2]|0)>=16)break;if(d[s+(c[t>>2]|0)>>0]|0|0)c[p>>2]=0;if((d[s+(c[t>
x3e;2]|0)>>0]|0|0)!=(d[r+(c[t>>2]|0)>>0]|0|0))c[o>>2]=0;c[t>>2]=(c[t>>
;2]|0)+1}if(!((c[p>>2]|0)!=0|(c[o>>2]|0)!=0)){c[j>>2]=2;y=c[j>>2]|0;i=x;return y|0}c[q
x3e;>2]=Qc(c[k>>2]|0,8)|0;c[w>>2]=(Pc(c[k>>2]|0,q)|0)&65535;if(c[q>>2]|0){c[j
x3e;>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}if((c[w>>2]|0)==-1){c[j>>2]=2;y=c[j>
;>2]|0;i=x;return y|0}c[q>>2]=Kc(c[k>>2]|0,(c[u>>2]|0)+(c[w>>2]|0)|0)|0;if(c[q>
;>2]|0){c[j>>2]=c[q>>2];y=c[j>>2]|0;i=x;return y|0}else{c[c[m>>2]>>2]=(c[
u>>2]|0)+(c[w>>2]|0);c[j>>2]=0;y=c[j>>2]|0;i=x;return y|0}}c[j>>2]=2;y=c[j>
;>2]|0;i=x;return y|0}function $c(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,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=i;i=i+80|0;o=C+72|0;D=C+68|0;p=C+64|0;q=C+60|0;r=C+56|0;k=C+52|0;s=C+48|0;
t=C+44|0;u=C+40|0;m=C+36|0;v=C+32|0;l=C+28|0;A=C+24|0;n=C+20|0;z=C+16|0;w=C+12|0;B=C+8|0;x=C+4|0;y=C;c[D>>2]=a;c[p>
;>2]=d;c[q>>2]=e;c[r>>2]=f;c[k>>2]=g;c[s>>2]=h;c[t>>2]=j;c[w>>2
]=c[c[D>>2]>>2];c[u>>2]=Kc(c[p>>2]|0,c[q>>2]|0)|0;if(c[u>>2]|0){c[o
x3e;>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[l>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if
(c[u>>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[l>>2]=(c[l>>
;2]|0)+1;c[m>>2]=0;while(1){if((c[m>>2]|0)>=(c[l>>2]|0)){k=30;break}c[n>>2]=Oc(c[p
x3e;>2]|0,u)|0;if(c[u>>2]|0){k=10;break}c[A>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if(c[u>
x3e;2]|0){k=10;break}c[z>>2]=(Pc(c[p>>2]|0,u)|0)&65535;if(c[u>>2]|0){k=10;break}if((c[n>
x3e;2]|0)==(c[k>>2]|0)){k=12;break}c[m>>2]=(c[m>>2]|0)+1}if((k|0)==10){c[o>>2]=c[u>
x3e;2];D=c[o>>2]|0;i=C;return D|0}else if((k|0)==12){c[c[t>>2]>>2]=(c[A>>2]|0)+1;c[z>
;>2]=(c[z>>2]|0)+(c[q>>2]|0);c[u>>2]=Kc(c[p>>2]|0,c[z>>2]|0)|0;if(c[u>
;>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;i=C;return D|0}c[y>>2]=hc(c[w>>2]|0,8
,0,c[c[t>>2]>>2]|0,0,u)|0;if(c[u>>2]|0){c[o>>2]=c[u>>2];D=c[o>>2]|0;
i=C;return D|0}c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[c[t>>2]>>2]|0)){k=23;break}D=Pc
(c[p>>2]|0,u)|0;b[(c[y>>2]|0)+(c[v>>2]<<3)>>1]=D;if(c[u>>2]|0)break;
D=Qc(c[p>>2]|0,2)|0;c[u>>2]=D;if(D|0)break;c[B>>2]=Oc(c[p>>2]|0,u)|0;if(c[u>>2
]|0)break;D=Qc(c[p>>2]|0,4)|0;c[u>>2]=D;if(D|0)break;c[(c[y>>2]|0)+(c[v>>2]<<3
)+4>>2]=c[B>>2]&16777215;c[v>>2]=(c[v>>2]|0)+1}if((k|0)==23?(Bs(c[y>>2]|0
,c[c[t>>2]>>2]|0,8,102),c[x>>2]=hc(c[w>>2]|0,4,0,c[c[t>>2]>>2]|0,0,u
)|0,(c[u>>2]|0)==0):0){c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[c[t>>2]>>2]|
0))break;c[(c[x>>2]|0)+(c[v>>2]<<2)>>2]=(c[r>>2]|0)+(c[(c[y>>2]|0)+(
c[v>>2]<<3)+4>>2]|0);c[v>>2]=(c[v>>2]|0)+1}c[c[s>>2]>>2]=c
[x>>2];c[u>>2]=0}Fb(c[w>>2]|0,c[y>>2]|0);c[y>>2]=0;c[o>>2]=c[u>
x3e;2];D=c[o>>2]|0;i=C;return D|0}else if((k|0)==30){c[o>>2]=1;D=c[o>>2]|0;i=C;return D|0}return 0
}function ad(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=b;do if
((e[c[f>>2]>>1]|0|0)>=(e[c[g>>2]>>1]|0|0))if((e[c[f>>2]>>1]|0|0
)>(e[c[g>>2]>>1]|0|0)){c[d>>2]=1;break}else{c[d>>2]=0;break}else c[d>>2]=-
1;while(0);i=h;return c[d>>2]|0}function bd(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,C=0,D=0;D=i;i=i+80|0;j=D+72|0;k=D+68|0;l=D+64|0;m=D+60|0;n=D+56|0;o=D+52|
0;p=D+48|0;q=D+44|0;u=D+40|0;v=D+36|0;s=D+32|0;B=D+28|0;r=D+24|0;t=D+20|0;w=D+16|0;y=D+12|0;x=D+8|0;z=D+4|0;A=D;c[k>>2
]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c[o>>2]=g;c[p>>2]=h;c[q>>2]=1;c[u
x3e;>2]=c[c[k>>2]>>2];if((c[o>>2]|0)==-1)c[o>>2]=0;if(c[o>>2]|0){c[j>
;>2]=c[q>>2];C=c[j>>2]|0;i=D;return C|0}c[w>>2]=0;c[s>>2]=0;while(1){if((c[s>
x3e;2]|0)>=(c[n>>2]|0)){C=10;break}c[q>>2]=Kc(c[l>>2]|0,c[(c[m>>2]|0)+(c[s>>
;2]<<2)>>2]|0)|0;if(c[q>>2]|0)break;c[A>>2]=Oc(c[l>>2]|0,q)|0;if(c[q>>
;2]|0)break;c[w>>2]=(c[w>>2]|0)+((c[A>>2]|0)+6);c[s>>2]=(c[s>>2]|0)+1}a:do if((
C|0)==10?(c[v>>2]=bc(c[u>>2]|0,(c[w>>2]|0)+2|0,q)|0,(c[q>>2]|0)==0):0){a[c[v>>
2]>>0]=-128;a[(c[v>>2]|0)+1>>0]=1;a[(c[v>>2]|0)+2>>0]=0;a[(c[v>>2]|0
)+3>>0]=0;a[(c[v>>2]|0)+4>>0]=0;a[(c[v>>2]|0)+5>>0]=0;c[y>>2]=6;c[x
x3e;>2]=2;c[t>>2]=0;c[B>>2]=1;c[s>>2]=0;while(1){if((c[s>>2]|0)>=(c[n>>
;2]|0)){C=31;break}c[q>>2]=Kc(c[l>>2]|0,c[(c[m>>2]|0)+(c[s>>2]<<2)>>
2]|0)|0;if(c[q>>2]|0)break;c[z>>2]=Oc(c[l>>2]|0,q)|0;if(c[q>>2]|0)break a;c[r>>
;2]=(Pc(c[l>>2]|0,q)|0)&65535;if(c[q>>2]|0)break a;if(c[r>>2]>>8|0){if((c[z>
x3e;2]|0)>2)c[z>>2]=(c[z>>2]|0)-2;else c[z>>2]=0;if((c[r>>2]>>8|0)==(c[B
x3e;>2]|0))c[t>>2]=(c[t>>2]|0)+(c[z>>2]|0);else{if(((c[x>>2]|0)+3|0)>((c[w>
;>2]|0)+2|0))break;a[(c[v>>2]|0)+(c[x>>2]|0)>>0]=c[t>>2];a[(c[v>>2]|0)+((
c[x>>2]|0)+1)>>0]=c[t>>2]>>8;a[(c[v>>2]|0)+((c[x>>2]|0)+2)>>
;0]=c[t>>2]>>16;a[(c[v>>2]|0)+((c[x>>2]|0)+3)>>0]=c[t>>2]>>
;24;if((c[r>>2]>>8|0)==5){C=31;break}if(((c[y>>2]|0)+6|0)>((c[w>>2]|0)+2|0))break;d
=c[y>>2]|0;c[y>>2]=d+1;a[(c[v>>2]|0)+d>>0]=-128;c[B>>2]=c[r>>2]>
;>8;c[t>>2]=c[z>>2];d=c[B>>2]&255;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>
;>2]|0)+A>>0]=d;c[x>>2]=c[y>>2];A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>
;2]|0)+A>>0]=0;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>2]|0)+A>>0]=0;A=c[y>>
2]|0;c[y>>2]=A+1;a[(c[v>>2]|0)+A>>0]=0;A=c[y>>2]|0;c[y>>2]=A+1;a[(c[v>>
;2]|0)+A>>0]=0}c[q>>2]=1;if((c[y>>2]|0)>(c[w>>2]|0))break;if(((c[y>>2]|0)+(
c[z>>2]|0)|0)>(c[w>>2]|0))break;c[q>>2]=Rc(c[l>>2]|0,(c[v>>2]|0)+(c[y>
;>2]|0)|0,c[z>>2]|0)|0;if(c[q>>2]|0)break;c[y>>2]=(c[y>>2]|0)+(c[z>>2]|0)}
c[s>>2]=(c[s>>2]|0)+1}if(((C|0)==31?((c[y>>2]|0)+2|0)<=((c[w>>2]|0)+2|0):0)?(C=c[y
x3e;>2]|0,c[y>>2]=C+1,a[(c[v>>2]|0)+C>>0]=-128,C=c[y>>2]|0,c[y>>2]=C+1,a[(
c[v>>2]|0)+C>>0]=3,((c[x>>2]|0)+3|0)<=((c[w>>2]|0)+2|0)):0){a[(c[v>>2]|0)+(
c[x>>2]|0)>>0]=c[t>>2];a[(c[v>>2]|0)+((c[x>>2]|0)+1)>>0]=c[t>
x3e;2]>>8;a[(c[v>>2]|0)+((c[x>>2]|0)+2)>>0]=c[t>>2]>>16;a[(c[v>
x3e;2]|0)+((c[x>>2]|0)+3)>>0]=c[t>>2]>>24;c[j>>2]=Tc(c[k>>2]|0,c[v
x3e;>2]|0,c[y>>2]|0,c[o>>2]|0,10410,c[p>>2]|0)|0;C=c[j>>2]|0;i=D;return C|0}Fb(c[u
x3e;>2]|0,c[v>>2]|0);c[v>>2]=0}while(0);c[j>>2]=c[q>>2];C=c[j>>2]|0;i=D;return
C|0}function cd(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;w=i;i=i+64|0;o=w+52|0;p=w+48|0;h=w+44|0;j=w+40|0;k=w+36|0;l=w+32|0;q=w+28|0;n=w+24|0;v=w+20|0;r=w+16|0;m=w+12|0;u=w+8|0;t=w+4|
0;s=w;c[p>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[q>>2]=g;c[
n>>2]=c[c[p>>2]>>2];c[s>>2]=0;if((c[l>>2]|0)==-1)c[l>>2]=0;if((c[l
x3e;>2]|0)>=(c[k>>2]|0)){c[o>>2]=1;v=c[o>>2]|0;i=w;return v|0}c[m>>2]=c[(c[j
x3e;>2]|0)+(c[l>>2]<<2)>>2];c[r>>2]=Kc(c[h>>2]|0,c[m>>2]|0)|0;if
((c[r>>2]|0)==0?(c[u>>2]=Oc(c[h>>2]|0,r)|0,(c[r>>2]|0)==0):0){if((c[u>>2]|0)==-
1){c[o>>2]=1;v=c[o>>2]|0;i=w;return v|0}c[r>>2]=Lc(c[p>>2]|0,c[h>>2]|0,c[l>
;>2]|0,0,0,c[q>>2]|0)|0;if(c[r>>2]|0?(Kc(c[h>>2]|0,(c[m>>2]|0)+4|0)|0)==0:0){c[v>
;>2]=bc(c[n>>2]|0,c[u>>2]|0,r)|0;if(c[r>>2]|0){c[o>>2]=c[r>>2];v=c[o>
;>2]|0;i=w;return v|0}c[r>>2]=Rc(c[h>>2]|0,c[v>>2]|0,c[u>>2]|0)|0;if(!(c[r>>
;2]|0)){if((c[u>>2]|0)>4)h=($r(c[v>>2]|0,10416,4)|0)!=0^1;else h=0;c[t>>2]=h&1;c[r>
x3e;2]=Tc(c[p>>2]|0,c[v>>2]|0,c[u>>2]|0,c[s>>2]|0,c[t>>2]|0?11217:10489,c[q>
;>2]|0)|0}}}c[o>>2]=c[r>>2];v=c[o>>2]|0;i=w;return v|0}function dd(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;y=i;i=i+192|0;j=y+176|0;z=y+172|0;k=y+168
|0;l=y+164|0;m=y+160|0;t=y+156|0;o=y+152|0;r=y+148|0;q=y+112|0;u=y+76|0;p=y+40|0;s=y+181|0;w=y+180|0;n=y+8|0;v=y;c[j>>
2]=b;c[z>>2]=e;c[k>>2]=f;c[l>>2]=g;c[m>>2]=h;c[t>>2]=c[c[j>>2]>
x3e;2];c[o>>2]=2;a[w>>0]=0;c[v>>2]=0;ed(c[j>>2]|0,c[z>>2]|0,c[(c[m>>
2]|0)+12>>2]|0,q,u,p);c[r>>2]=0;while(1){if((c[r>>2]|0)>=9)break;a[s>>0]=rd(c[r>
;>2]|0)|0;if(!(d[s>>0]|0?(d[w>>0]|0)!=0:0))x=5;if((x|0)==5?(x=0,(c[p+(c[r>>2]<<2)
x3e;>2]|0)==0):0){c[n>>2]=4;if(c[q+(c[r>>2]<<2)>>2]|0)g=c[q+(c[r>>2]<
;<2)>>2]|0;else g=c[(c[m>>2]|0)+12>>2]|0;c[n+12>>2]=g;c[o>>2]=tc(c[j>
;>2]|0,n,v)|0;if((d[s>>0]|0)!=0&(c[o>>2]|0)==81)a[w>>0]=1;if(!(c[o>>2]|0)){c[o
>>2]=Zc(c[j>>2]|0,c[v>>2]|0,c[u+(c[r>>2]<<2)>>2]|0,c[k>>2]|
0,c[l>>2]|0)|0;vc(c[v>>2]|0,0);if(!(c[o>>2]|0))break;if(a[s>>0]|0)a[w>>0]=1}}c
[r>>2]=(c[r>>2]|0)+1}c[r>>2]=0;while(1){if((c[r>>2]|0)>=9)break;if(c[q+(c[r>
x3e;2]<<2)>>2]|0){Fb(c[t>>2]|0,c[q+(c[r>>2]<<2)>>2]|0);c[q+(c[r>
;>2]<<2)>>2]=0}c[r>>2]=(c[r>>2]|0)+1}if(!(c[o>>2]|0)){z=c[o>>2]|
0;i=y;return z|0}c[o>>2]=2;z=c[o>>2]|0;i=y;return z|0}function ed(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;p=i;i=i+32|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;m=p+8|0;n=p+4|0;o=p;c[h>>2
]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=0;while
(1){if((c[o>>2]|0)>=9)break;c[(c[l>>2]|0)+(c[o>>2]<<2)>>2]=0;if(c[j>
x3e;2]|0){b=Kc(c[j>>2]|0,0)|0;c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]=b}else c[(c[n>
;>2]|0)+(c[o>>2]<<2)>>2]=0;if(!(c[(c[n>>2]|0)+(c[o>>2]<<2)>
;>2]|0)){b=Za[c[96+(c[o>>2]<<3)>>2]&31](c[h>>2]|0,c[j>>2]|0,c[k>
;>2]|0,(c[l>>2]|0)+(c[o>>2]<<2)|0,(c[m>>2]|0)+(c[o>>2]<<2)|0)|0
;c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]=b}c[o>>2]=(c[o>>2]|0)+1}i=p;return}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,m=0,n=0,o=0;n=i;i=i+32|0;g=n+24|0;h=n+20|0;j=n+16|0;k=n+12|
0;o=n+8|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[o>>2]=e;c[l>>2]=f;c[m>
;>2]=333319;c[c[o>>2]>>2]=0;if(!(c[j>>2]|0)){c[g>>2]=81;o=c[g>>2]|0;i=n;return
o|0}else{c[g>>2]=gd(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,c[m>>2]|0,c[l>>2]|
0)|0;o=c[g>>2]|0;i=n;return o|0}return 0}function gd(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,v=0,w=0,x=0;v=i;i=i+64|0;r=v+52|0;x=v+48|0;m=v+44|0;w=v+40|0;j=v+36|0;s=v+32|0;k=v+28|0;u=v+24|0;l=v
+20|0;q=v+56|0;p=v+16|0;n=v+12|0;t=v+8|0;o=v+4|0;c[x>>2]=a;c[m>>2]=d;c[w>>2]=f;c[j>>2]=g
;c[s>>2]=h;c[l>>2]=0;c[o>>2]=0;c[v>>2]=2;c[x>>2]=c[x>>2];c[w>
x3e;2]=c[w>>2];c[l>>2]=c[l>>2];c[o>>2]=c[o>>2];c[k>>2]=Oc(c[m>
x3e;2]|0,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}if((c[k>>
;2]|0)!=(c[j>>2]|0)){c[r>>2]=2;x=c[r>>2]|0;i=v;return x|0}c[l>>2]=Oc(c[m>>2]|0
,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}c[u>>2]=Qc(c[m
x3e;>2]|0,16)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}b[q>
x3e;1]=Pc(c[m>>2]|0,u)|0;if(c[u>>2]|0){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return
x|0}if(!(e[q>>1]|0)){c[r>>2]=2;x=c[r>>2]|0;i=v;return x|0}c[p>>2]=0;while(1){if((c[p>
;>2]|0)>=(e[q>>1]|0|0)){j=24;break}c[n>>2]=Oc(c[m>>2]|0,u)|0;if(c[u>>2]|0){j=16
;break}j=c[m>>2]|0;if((c[n>>2]|0)==2){c[t>>2]=Oc(j,u)|0;if((c[u>>2]|0)==0?(c[o>>
;2]=Oc(c[m>>2]|0,u)|0,(c[u>>2]|0)==0):0){j=20;break}}else{c[u>>2]=Qc(j,8)|0;if(c[u>>2]|0
){j=22;break}}c[p>>2]=(c[p>>2]|0)+1}if((j|0)==16){c[r>>2]=c[u>>2];x=c[r>>2]|0;
i=v;return x|0}else if((j|0)==20){c[c[s>>2]>>2]=c[t>>2];c[r>>2]=0;x=c[r>>2]|0;
i=v;return x|0}else if((j|0)==22){c[r>>2]=c[u>>2];x=c[r>>2]|0;i=v;return x|0}else if((j|0)==24){c[
r>>2]=2;x=c[r>>2]|0;i=v;return x|0}return 0}function hd(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;n=i;i=i+32|0;g=n+24|0;h=n+20|0;j=n+16|0;k=n+12|0;o=n+8|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>
;2]=b;c[k>>2]=d;c[o>>2]=e;c[l>>2]=f;c[m>>2]=333312;c[c[o>>2]>>2]=0;if
(!(c[j>>2]|0)){c[g>>2]=81;o=c[g>>2]|0;i=n;return o|0}else{c[g>>2]=gd(c[h>>2]|0
,c[j>>2]|0,c[k>>2]|0,c[m>>2]|0,c[l>>2]|0)|0;o=c[g>>2]|0;i=n;return o|0}return
0}function id(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;o=i;i=i+48|0;g=o+32|0;h=o+28|
0;q=o+24|0;p=o+20|0;j=o+16|0;k=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;c[p>>2]=d;c[j>
x3e;2]=e;c[k>>2]=f;c[q>>2]=c[q>>2];c[m>>2]=c[c[h>>2]>>2];c[n>
x3e;2]=jd(c[m>>2]|0,c[p>>2]|0,10421)|0;if(!(c[n>>2]|0)){c[g>>2]=64;q=c[g>>2]|0
;i=o;return q|0}c[l>>2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;if(c[l>>2]|0){Fb(c
[m>>2]|0,c[n>>2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c[n>>2];c[g>
x3e;2]=c[l>>2];q=c[g>>2]|0;i=o;return q|0}function jd(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;f=m+32|0;p=m+28|0;g=m+24|0;h=m+20|0;j=m+16|0;l=m+12|0;k=m+8|0;o=m+4|0;n=m;c[p>>2]=b;c[g>
;>2]=d;c[h>>2]=e;c[j>>2]=0;c[n>>2]=0;c[n>>2]=c[n>>2];d=cs(c[g>>
2]|0)|0;c[o>>2]=d+(cs(c[h>>2]|0)|0);c[j>>2]=bc(c[p>>2]|0,(c[o>>2]|0)+1|0,n)|0;
if(c[n>>2]|0){c[f>>2]=0;p=c[f>>2]|0;i=m;return p|0}c[l>>2]=xs(c[g>>2]|0,47)|0;
if(c[l>>2]|0){as(c[j>>2]|0,c[g>>2]|0,(c[l>>2]|0)-(c[g>>2]|0)+1|0)|0;a[(c[j>
;>2]|0)+((c[l>>2]|0)-(c[g>>2]|0)+1)>>0]=0;c[k>>2]=(c[l>>2]|0)+1}else{c[k
x3e;>2]=c[g>>2];a[c[j>>2]>>0]=0}zs(c[j>>2]|0,c[h>>2]|0)|0;zs(c[j>>
;2]|0,c[k>>2]|0)|0;c[f>>2]=c[j>>2];p=c[f>>2]|0;i=m;return p|0}function kd(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;m=i;i=i+64|0;e=m+60|0;f=m+56|0;g=m+52|0;h=m+48|0;n=m+16|0;l=m+8|0;k=m+4|0;j=m
;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=0;c[n>>2]=4;c[n+12>>2]=c[g>
;>2];c[j>>2]=tc(c[f>>2]|0,n,l)|0;if(c[j>>2]|0){c[e>>2]=c[j>>2];n=c[e>
;>2]|0;i=m;return n|0}else{c[j>>2]=fd(c[f>>2]|0,c[l>>2]|0,c[g>>2]|0,k,c[h>>
;2]|0)|0;vc(c[l>>2]|0,0);c[e>>2]=c[j>>2];n=c[e>>2]|0;i=m;return n|0}return 0}function ld
(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;q=i;i=i+48|0;m=q+36|0;r=q+32|0;s=q+28|
0;h=q+24|0;n=q+20|0;o=q+16|0;k=q+12|0;p=q+8|0;l=q+4|0;j=q;c[r>>2]=b;c[s>>2]=d;c[h>>2]=e;c[n>
x3e;2]=f;c[o>>2]=g;c[j>>2]=cs(c[h>>2]|0)|0;c[s>>2]=c[s>>2];c[l>>2]=c
[c[r>>2]>>2];if(((c[j>>2]|0)+18|0)>2147483647){c[m>>2]=10;s=c[m>>2]|0;i=q
;return s|0}c[p>>2]=bc(c[l>>2]|0,(c[j>>2]|0)+18|0,k)|0;if(c[k>>2]|0){c[m>>2]=c
[k>>2];s=c[m>>2]|0;i=q;return s|0}else{Ss(c[p>>2]|0,c[h>>2]|0,c[j>>2]|0)|0;h=(
c[p>>2]|0)+(c[j>>2]|0)|0;j=10424;e=h+18|0;do{a[h>>0]=a[j>>0]|0;h=h+1|0;j=j+1|0}while((h|
0)<(e|0));c[c[n>>2]>>2]=c[p>>2];c[c[o>>2]>>2]=0;c[m>>2]=0;s=c[m
>>2]|0;i=q;return s|0}return 0}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,o=0,p=
0,q=0,r=0,s=0;q=i;i=i+48|0;h=q+36|0;r=q+32|0;s=q+28|0;j=q+24|0;k=q+20|0;l=q+16|0;n=q+12|0;p=q+8|0;o=q+4|0;m=q;c[r>>2]=
b;c[s>>2]=d;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[m>>2]=cs(c[j>>2]|0)|0;c[
s>>2]=c[s>>2];c[o>>2]=c[c[r>>2]>>2];if(((c[m>>2]|0)+6|0)>2147483647
){c[h>>2]=10;s=c[h>>2]|0;i=q;return s|0}c[p>>2]=bc(c[o>>2]|0,(c[m>>2]|0)+6|0,n
)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];s=c[h>>2]|0;i=q;return s|0}else{Ss(c[p>>2]|0
,c[j>>2]|0,c[m>>2]|0)|0;s=(c[p>>2]|0)+(c[m>>2]|0)|0;a[s>>0]=a[10442]|0;a[s+1
x3e;>0]=a[10443]|0;a[s+2>>0]=a[10444]|0;a[s+3>>0]=a[10445]|0;a[s+4>>0]=a[10446]|0;a[s+5>
x3e;0]=a[10447]|0;c[c[k>>2]>>2]=c[p>>2];c[c[l>>2]>>2]=0;c[h>>2]=0;s=
c[h>>2]|0;i=q;return s|0}return 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,m=0,n=0
,o=0,p=0;l=i;i=i+32|0;g=l+28|0;o=l+24|0;p=l+20|0;m=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;n=l;c[o>>2]=a;c[p>>2]=b;c
[m>>2]=d;c[h>>2]=e;c[j>>2]=f;c[p>>2]=c[p>>2];c[n>>2]=c[c[o>>
;2]>>2];c[k>>2]=jd(c[n>>2]|0,c[m>>2]|0,10448)|0;if(c[k>>2]|0){c[c[h>>
;2]>>2]=c[k>>2];c[c[j>>2]>>2]=0;c[g>>2]=0;p=c[g>>2]|0;i=l;return p|0
}else{c[g>>2]=64;p=c[g>>2]|0;i=l;return p|0}return 0}function od(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+32|0;g=l+28|0;o=l+24|0;p=l+20|0;m=l+16|0;h=l+12|0;j=l+8|0;k=l+4|0;n=l;c[o>>
;2]=a;c[p>>2]=b;c[m>>2]=d;c[h>>2]=e;c[j>>2]=f;c[p>>2]=c[p>>2];c[n>
;>2]=c[c[o>>2]>>2];c[k>>2]=jd(c[n>>2]|0,c[m>>2]|0,10462)|0;if(c[k>
x3e;2]|0){c[c[h>>2]>>2]=c[k>>2];c[c[j>>2]>>2]=0;c[g>>2]=0;p=c[g>
;>2]|0;i=l;return p|0}else{c[g>>2]=64;p=c[g>>2]|0;i=l;return p|0}return 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;o=i;i=i+48|0;g=o+32|0;h=o+28|0;q=o+24|0;p=o+20|0;j=o+16|0;k=
o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;c[p>>2]=d;c[j>>2]=e;c[k>>2]=f;c
[q>>2]=c[q>>2];c[m>>2]=c[c[h>>2]>>2];c[n>>2]=jd(c[m>>2]|0,
c[p>>2]|0,10473)|0;if(!(c[n>>2]|0)){c[g>>2]=64;q=c[g>>2]|0;i=o;return q|0}c[l>>
;2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;if(c[l>>2]|0){Fb(c[m>>2]|0,c[n>
x3e;2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c[n>>2];c[g>>2]=c[l>>2];q=c[g
>>2]|0;i=o;return q|0}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,p=0,q=0
;o=i;i=i+48|0;g=o+32|0;h=o+28|0;q=o+24|0;p=o+20|0;j=o+16|0;k=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a;c[q>>2]=b;
c[p>>2]=d;c[j>>2]=e;c[k>>2]=f;c[q>>2]=c[q>>2];c[m>>2]=c[c[h>>
;2]>>2];c[n>>2]=jd(c[m>>2]|0,c[p>>2]|0,10475)|0;if(!(c[n>>2]|0)){c[g>>
;2]=64;q=c[g>>2]|0;i=o;return q|0}c[l>>2]=kd(c[h>>2]|0,c[n>>2]|0,c[k>>2]|0)|0;
if(c[l>>2]|0){Fb(c[m>>2]|0,c[n>>2]|0);c[n>>2]=0}else c[c[j>>2]>>2]=c
[n>>2];c[g>>2]=c[l>>2];q=c[g>>2]|0;i=o;return q|0}function rd(b){b=b|0;var d=0,e=0,f=0;e
=i;i=i+16|0;d=e+4|0;f=e;c[f>>2]=b;if(((sd(c[f>>2]|0)|0)+-3|0)>>>0<2){a[d>>0]=1
;f=a[d>>0]|0;i=e;return f|0}else{a[d>>0]=0;f=a[d>>0]|0;i=e;return f|0}return 0}function sd(a){a=a|
0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[d>>2]=a;if((c[d>>2]|0)>>>0>=9){c[b>>
;2]=-2;a=c[b>>2]|0;i=e;return a|0}else{c[b>>2]=c[96+(c[d>>2]<<3)+4>>2];a=c[b
x3e;>2]|0;i=e;return a|0}return 0}function td(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|0)+4>>2];c[(c[e>>2]|0)+4>>2
]=0;c[c[e>>2]>>2]=c[f>>2];a=c[e>>2]|0;if(c[f>>2]|0){c[(c[f>>2]|0)+4
x3e;>2]=a;e=c[e>>2]|0;f=c[d>>2]|0;f=f+4|0;c[f>>2]=e;i=g;return}else{c[c[d>>2]>
x3e;2]=a;e=c[e>>2]|0;f=c[d>>2]|0;f=f+4|0;c[f>>2]=e;i=g;return}}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;n=i;i=i+48|0;d=n+32|0;e=n+28|0;f=n+24|0;j=n+20|0;k=n+16|0;h=n+12|0;g=n+8|0;m=n+4|0;l=n;c[e
>>2]=a;c[f>>2]=b;c[m>>2]=0;c[l>>2]=0;if(!(c[e>>2]|0)){c[d>>2]=35;m=c
[d>>2]|0;i=n;return m|0}if(!(c[f>>2]|0)){c[d>>2]=36;m=c[d>>2]|0;i=n;return m|0}if(!(c[(c
[e>>2]|0)+96>>2]|0)){c[d>>2]=34;m=c[d>>2]|0;i=n;return m|0}c[c[f>>2]>>
;2]=0;c[h>>2]=c[(c[e>>2]|0)+96>>2];c[g>>2]=c[(c[h>>2]|0)+20>>2];c[k
x3e;>2]=c[(c[e>>2]|0)+100>>2];c[m>>2]=bc(c[k>>2]|0,c[(c[g>>2]|0)+40>
x3e;2]|0,j)|0;if((c[j>>2]|0)==0?(c[l>>2]=bc(c[k>>2]|0,12,j)|0,(c[j>>2]|0)==0):0){c[c[m
x3e;>2]>>2]=c[e>>2];c[(c[m>>2]|0)+40>>2]=0;if(c[(c[g>>2]|0)+56>>
;2]|0)c[j>>2]=Ta[c[(c[g>>2]|0)+56>>2]&63](c[m>>2]|0)|0;if(!(c[j>>2]|0)){c
[c[f>>2]>>2]=c[m>>2];c[(c[l>>2]|0)+8>>2]=c[m>>2];td((c[e>>
2]|0)+108|0,c[l>>2]|0)}}if(c[j>>2]|0){Fb(c[k>>2]|0,c[l>>2]|0);c[l>>2]=0;Fb(c[k
>>2]|0,c[m>>2]|0);c[m>>2]=0}c[d>>2]=c[j>>2];m=c[d>>2]|0;i=n;return m
|0}function vd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;e=h+12|0;d=h+8|0;f=h+4|0;g=h;c[b>>2]=a;c[e
x3e;>2]=35;if(!(c[b>>2]|0)){g=c[e>>2]|0;i=h;return g|0}if(!(c[(c[b>>2]|0)+96>>2]|0)){
g=c[e>>2]|0;i=h;return g|0}a=(c[(c[b>>2]|0)+128>>2]|0)+60|0;c[a>>2]=(c[a>>2]|0
)+-1;if((c[(c[(c[b>>2]|0)+128>>2]|0)+60>>2]|0)>>>0>0){c[e>>2]=0;g=c[
e>>2]|0;i=h;return g|0}c[d>>2]=c[(c[b>>2]|0)+96>>2];c[f>>2]=c[(c[d>>
2]|0)+8>>2];c[g>>2]=Rb((c[d>>2]|0)+24|0,c[b>>2]|0)|0;if(!(c[g>>2]|0)){g=c[e>
;>2]|0;i=h;return g|0}wd((c[d>>2]|0)+24|0,c[g>>2]|0);Fb(c[f>>2]|0,c[g>>2]|0);c[g>
;>2]=0;xd(c[f>>2]|0,c[b>>2]|0,c[d>>2]|0);c[e>>2]=0;g=c[e>>2]|0;i=h;return
g|0}function wd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+12|0;h=g+8|0;d=g+4|0;f=g;c[e>>2]=a;c[h>
;>2]=b;c[d>>2]=c[c[h>>2]>>2];c[f>>2]=c[(c[h>>2]|0)+4>>2];a=c[f
x3e;>2]|0;if(c[d>>2]|0)c[(c[d>>2]|0)+4>>2]=a;else c[c[e>>2]>>2]=a;a=c[d
x3e;>2]|0;if(c[f>>2]|0){c[c[f>>2]>>2]=a;i=g;return}else{c[(c[e>>2]|0)+4>>
2]=a;i=g;return}}function xd(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=c[(c[g>>2]|0)+20>>2];if(c[(c[f>
x3e;2]|0)+116+4>>2]|0)Va[c[(c[f>>2]|0)+116+4>>2]&63](c[(c[f>>2]|0)+116>>2
]|0);while(1){d=c[f>>2]|0;if(!(c[(c[f>>2]|0)+84>>2]|0))break;Bc(c[d+84>>2]|0)}zd(d+108|0
,7,c[e>>2]|0,c[g>>2]|0);c[(c[f>>2]|0)+88>>2]=0;if(c[(c[f>>2]|0)+44+4>>
;2]|0)Va[c[(c[f>>2]|0)+44+4>>2]&63](c[f>>2]|0);Ic(c[f>>2]|0,c[e>>2]|0);if
(c[(c[h>>2]|0)+52>>2]|0)Va[c[(c[h>>2]|0)+52>>2]&63](c[f>>2]|0);vc(c[(c[f
x3e;>2]|0)+104>>2]|0,(c[(c[f>>2]|0)+8>>2]&1024|0)!=0&1);c[(c[f>>2]|0)+104
>>2]=0;if(!(c[(c[f>>2]|0)+128>>2]|0)){g=c[e>>2]|0;h=c[f>>2]|0;Fb(g,h);c[f>
;>2]=0;i=j;return}Fb(c[e>>2]|0,c[(c[f>>2]|0)+128>>2]|0);c[(c[f>>2]|0)+128>>
;2]=0;g=c[e>>2]|0;h=c[f>>2]|0;Fb(g,h);c[f>>2]=0;i=j;return}function yd(a,b,d){a=a|0;b=b|0;d=d|0;var
e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[(c[f>>
;2]|0)+4+4>>2]|0)Va[c[(c[f>>2]|0)+4+4>>2]&63](c[f>>2]|0);if(c[(c[(c[g>>2]|
0)+20>>2]|0)+60>>2]|0)Va[c[(c[(c[g>>2]|0)+20>>2]|0)+60>>2]&63](c[f>
x3e;2]|0);Fb(c[e>>2]|0,c[(c[f>>2]|0)+40>>2]|0);c[(c[f>>2]|0)+40>>2]=0;Fb(c[e
x3e;>2]|0,c[f>>2]|0);c[f>>2]=0;i=h;return}function zd(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;m=n+4|0;l=n;c[f>>2]=a;c[g>>2]=b
;c[h>>2]=d;c[j>>2]=e;c[k>>2]=c[c[f>>2]>>2];while(1){if(!(c[k>>2]|0))
break;c[m>>2]=c[(c[k>>2]|0)+4>>2];c[l>>2]=c[(c[k>>2]|0)+8>>2];if(c[g
>>2]|0)Ua[c[g>>2]&31](c[h>>2]|0,c[l>>2]|0,c[j>>2]|0);Fb(c[h>>2]|
0,c[k>>2]|0);c[k>>2]=0;c[k>>2]=c[m>>2]}c[c[f>>2]>>2]=0;c[(c[f>
x3e;2]|0)+4>>2]=0;i=n;return}function Ad(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;s=i;i=i+48|0;h=s+28|0;j=s+24|0;k=s+20|0;l=s+32|0;m=s+16|0;p=s+12|0;q=s+8|0;o=s+4|0;n=s;c[j>>2]=b;c[k>>2]=
e;a[l>>0]=f;c[m>>2]=g;if(!(c[(c[j>>2]|0)+8>>2]&2)){c[h>>2]=35;r=c[h>
x3e;2]|0;i=s;return r|0}if(c[c[k>>2]>>2]|0){c[h>>2]=7;r=c[h>>2]|0;i=s;return r|0}b=c[(c[
k>>2]|0)+4>>2]|0;if(c[(c[k>>2]|0)+12>>2]|0)b=((_(b,c[(c[k>>2]|0)+12>>
;2]|0)|0)+36|0)/72|0;c[q>>2]=b;b=c[(c[k>>2]|0)+8>>2]|0;if(c[(c[k>>2]|0)+16>>2]|
0)b=((_(b,c[(c[k>>2]|0)+16>>2]|0)|0)+36|0)/72|0;c[o>>2]=b;if(c[(c[k>>2]|0)+4>>
2]|0?!(c[(c[k>>2]|0)+8>>2]|0):0)c[o>>2]=c[q>>2];else r=12;if(((r|0)==12?(c[(c[k>>
;2]|0)+4>>2]|0)==0:0)?c[(c[k>>2]|0)+8>>2]|0:0)c[q>>2]=c[o>>2];c[q>>2
]=(c[q>>2]|0)+32&-64;c[o>>2]=(c[o>>2]|0)+32&-64;c[p>>2]=0;while(1){if((c[p>
;>2]|0)>=(c[(c[j>>2]|0)+28>>2]|0)){r=24;break}c[n>>2]=(c[(c[j>>2]|0)+32>
x3e;2]|0)+(c[p>>2]<<4);if((c[o>>2]|0)==((c[(c[n>>2]|0)+12>>2]|0)+32&-64|0
)){if((c[q>>2]|0)==((c[(c[n>>2]|0)+8>>2]|0)+32&-64|0))break;if(d[l>>0]|0|0)break}c[
p>>2]=(c[p>>2]|0)+1}if((r|0)==24){c[h>>2]=23;r=c[h>>2]|0;i=s;return r|0}if(c[m>>
;2]|0)c[c[m>>2]>>2]=c[p>>2];c[h>>2]=0;r=c[h>>2]|0;i=s;return r|0}function Bd(a
,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c
[(c[d>>2]|0)+4>>2];if((c[(c[d>>2]|0)+12>>2]|0)<0){if((c[f>>2]|0)<(c[(
c[d>>2]|0)+12>>2]|0))c[f>>2]=c[(c[d>>2]|0)+12>>2]}else if((c[(c[d>>2
]|0)+12>>2]|0)>0)c[f>>2]=(c[f>>2]|0)-(c[(c[d>>2]|0)+12>>2]|0);if(!(c[e>
;>2]|0))c[e>>2]=((c[f>>2]|0)*12|0)/10|0;c[(c[d>>2]|0)+20>>2]=(c[(c[d>>2]|
0)+8>>2]|0)-((c[(c[d>>2]|0)+16>>2]|0)/2|0);c[(c[d>>2]|0)+24>>2]=((c[e>>
;2]|0)-(c[f>>2]|0)|0)/2|0;c[(c[d>>2]|0)+28>>2]=c[e>>2];i=g;return}function Cd(a,d){a=a|0
;d=d|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;f=j+12|0;k=j+8|0;h=j+4|0;g=j;c[f>>2]=a;c[k>>2]=d;c[h>>
2]=(c[(c[f>>2]|0)+88>>2]|0)+12;c[g>>2]=(c[(c[f>>2]|0)+32>>2]|0)+(c[k>>
;2]<<4);b[c[h>>2]>>1]=(c[(c[g>>2]|0)+8>>2]|0)+32>>6;b[(c[h>>
;2]|0)+2>>1]=(c[(c[g>>2]|0)+12>>2]|0)+32>>6;if(c[(c[f>>2]|0)+8>>2]
x26;1|0){k=Vb(c[(c[g>>2]|0)+8>>2]|0,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[h>>2]|0)+4
x3e;>2]=k;k=Vb(c[(c[g>>2]|0)+12>>2]|0,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[h>>2
]|0)+8>>2]=k;Dd(c[f>>2]|0,c[h>>2]|0);i=j;return}else{c[(c[h>>2]|0)+4>>2]=65536
;c[(c[h>>2]|0)+8>>2]=65536;c[(c[h>>2]|0)+12>>2]=c[(c[g>>2]|0)+12>>2];
c[(c[h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+20>>2]=b[c[g>>2]>>1]<<
;6;c[(c[h>>2]|0)+24>>2]=c[(c[g>>2]|0)+8>>2];i=j;return}}function Dd(a,d){a=a|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]=a;c[f>>2]=d;d=(Mb(b[(c[g>>2]|0)+70>>1]|0,c
[(c[f>>2]|0)+8>>2]|0)|0)+63&-64;c[(c[f>>2]|0)+12>>2]=d;d=(Mb(b[(c[g>>2]|0
)+72>>1]|0,c[(c[f>>2]|0)+8>>2]|0)|0)&-64;c[(c[f>>2]|0)+16>>2]=d;d=(Mb(b[(
c[g>>2]|0)+74>>1]|0,c[(c[f>>2]|0)+8>>2]|0)|0)+32&-64;c[(c[f>>2]|0)+20>
;>2]=d;d=(Mb(b[(c[g>>2]|0)+76>>1]|0,c[(c[f>>2]|0)+4>>2]|0)|0)+32&-64;c[(c[f>
;>2]|0)+24>>2]=d;i=e;return}function Ed(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;o=i;i=i+32|0;j=o
+24|0;k=o+20|0;l=o+16|0;h=o+12|0;g=o+8|0;n=o+4|0;m=o;c[j>>2]=a;c[k>>2]=d;c[l>>2]=(c[(c[j>>
;2]|0)+88>>2]|0)+12;if(!(c[(c[j>>2]|0)+8>>2]&1)){n=c[l>>2]|0;c[n>>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[(c[l>>2]|0)+4>>2]=65536;c[(c[l>>2]|0)+8>>2]=65536;i=o;return}c[h>>2]=0
;c[g>>2]=0;c[n>>2]=0;c[m>>2]=0;a:do switch(c[c[k>>2]>>2]|0){case 0:{f=e[(c[j
x3e;>2]|0)+68>>1]|0;c[g>>2]=f;c[h>>2]=f;f=11;break}case 1:{f=(b[(c[j>>2]|0)+70>
;>1]|0)-(b[(c[j>>2]|0)+72>>1]|0)|0;c[g>>2]=f;c[h>>2]=f;f=11;break}case 2:{c[h>
x3e;2]=(c[(c[j>>2]|0)+52+8>>2]|0)-(c[(c[j>>2]|0)+52>>2]|0);c[g>>2]=(c[(c[j>
;>2]|0)+52+12>>2]|0)-(c[(c[j>>2]|0)+52+4>>2]|0);f=11;break}case 3:{c[h>>2]=b[(c[j
x3e;>2]|0)+76>>1];c[g>>2]=(b[(c[j>>2]|0)+70>>1]|0)-(b[(c[j>>2]|0)+72>
;>1]|0);f=11;break}case 4:{c[(c[l>>2]|0)+4>>2]=c[(c[k>>2]|0)+4>>2];c[(c[l>>
;2]|0)+8>>2]=c[(c[k>>2]|0)+8>>2];a=c[(c[l>>2]|0)+8>>2]|0;if(!(c[(c[l>>
;2]|0)+4>>2]|0)){c[(c[l>>2]|0)+4>>2]=a;break a}if(!a)c[(c[l>>2]|0)+8>>2]=c[(c[
l>>2]|0)+4>>2];break}default:f=11}while(0);do if((f|0)==11){if((c[h>>2]|0)<0)c[h>>2
]=0-(c[h>>2]|0);if((c[g>>2]|0)<0)c[g>>2]=0-(c[g>>2]|0);a=c[(c[k>>2]|0)+4
x3e;>2]|0;if(c[(c[k>>2]|0)+12>>2]|0)a=((_(a,c[(c[k>>2]|0)+12>>2]|0)|0)+36|0)/72|0;c
[n>>2]=a;a=c[(c[k>>2]|0)+8>>2]|0;if(c[(c[k>>2]|0)+16>>2]|0)a=((_(a,c[(c[k>
;>2]|0)+16>>2]|0)|0)+36|0)/72|0;c[m>>2]=a;if(!(c[(c[k>>2]|0)+4>>2]|0)){f=Vb(c[m>
;>2]|0,c[g>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=f;c[(c[l>>2]|0)+4>>2]=f;c[n>
x3e;2]=xb(c[m>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;break}f=Vb(c[n>>2]|0,c[h>>2]|0)|0;c
[(c[l>>2]|0)+4>>2]=f;if(!(c[(c[k>>2]|0)+8>>2]|0)){c[(c[l>>2]|0)+8>>2
]=c[(c[l>>2]|0)+4>>2];c[m>>2]=xb(c[n>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;break
}h=Vb(c[m>>2]|0,c[g>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=h;if((c[c[k>>2]>>2]|
0)==3){a=c[l>>2]|0;if((c[(c[l>>2]|0)+8>>2]|0)>(c[(c[l>>2]|0)+4>>2]|0)){c[(
c[l>>2]|0)+8>>2]=c[a+4>>2];break}else{c[(c[l>>2]|0)+4>>2]=c[a+8>>2];
break}}}while(0);if(c[c[k>>2]>>2]|0){c[n>>2]=Mb(e[(c[j>>2]|0)+68>>1]|0,c[(c[l
x3e;>2]|0)+4>>2]|0)|0;c[m>>2]=Mb(e[(c[j>>2]|0)+68>>1]|0,c[(c[l>>2]|0)+8
x3e;>2]|0)|0}b[c[l>>2]>>1]=(c[n>>2]|0)+32>>6;b[(c[l>>2]|0)+2>>1
]=(c[m>>2]|0)+32>>6;Dd(c[j>>2]|0,c[l>>2]|0);i=o;return}function Fd(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;if(c[e>>2]|0?c[(
c[e>>2]|0)+8>>2]&2|0:0){if((c[f>>2]|0)>=0?(c[f>>2]|0)<(c[(c[e>>
2]|0)+28>>2]|0):0){c[g>>2]=c[(c[(c[e>>2]|0)+96>>2]|0)+20>>2];if(c[(c[g>
x3e;2]|0)+100>>2]|0){c[d>>2]=Ya[c[(c[g>>2]|0)+100>>2]&127](c[(c[e>>2]|0)+
88>>2]|0,c[f>>2]|0)|0;b=c[d>>2]|0;i=h;return b|0}else{Cd(c[e>>2]|0,c[f>>2]|0);
c[d>>2]=0;b=c[d>>2]|0;i=h;return b|0}}c[d>>2]=6;b=c[d>>2]|0;i=h;return b|0}c[d>>
;2]=35;b=c[d>>2]|0;i=h;return b|0}function Gd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e
=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=35;j=c
[d>>2]|0;i=k;return j|0}if(((c[f>>2]|0?(c[(c[f>>2]|0)+4>>2]|0)>=0:0)?(c[(c[f>
x3e;2]|0)+8>>2]|0)>=0:0)?(c[c[f>>2]>>2]|0)>>>0<5:0){c[g>>2]=c[(
c[(c[e>>2]|0)+96>>2]|0)+20>>2];if(c[(c[g>>2]|0)+96>>2]|0){c[d>>2]=Ya
[c[(c[g>>2]|0)+96>>2]&127](c[(c[e>>2]|0)+88>>2]|0,c[f>>2]|0)|0;j=c[d>
;>2]|0;i=k;return j|0}if((c[(c[e>>2]|0)+8>>2]&1|0)==0?c[(c[e>>2]|0)+8>>2]&
;2|0:0){c[h>>2]=Ad(c[e>>2]|0,c[f>>2]|0,0,j)|0;if(c[h>>2]|0){c[d>>2]=c[h>
x3e;2];j=c[d>>2]|0;i=k;return j|0}else{c[d>>2]=Fd(c[e>>2]|0,c[j>>2]|0)|0;j=c[d>>
;2]|0;i=k;return j|0}}Ed(c[e>>2]|0,c[f>>2]|0);c[d>>2]=0;j=c[d>>2]|0;i=k;return j|0}c[d
x3e;>2]=6;j=c[d>>2]|0;i=k;return j|0}function Hd(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;n=i;i=i+48|0;g=n+36|0;h=n+32|0;j=n+28|0;k=n+24|0;l=n+20|0;m=n;c[g>>2]=a;c[h>>2]=b;c[j>>2]=
d;c[k>>2]=e;c[l>>2]=f;d=c[j>>2]|0;if(c[h>>2]|0){if(!d)c[j>>2]=c[h>>2
]}else c[h>>2]=d;d=c[l>>2]|0;if(c[k>>2]|0){if(!d)c[l>>2]=c[k>>2]}else c[k>
;>2]=d;if((c[h>>2]|0)<64)c[h>>2]=64;if((c[j>>2]|0)<64)c[j>>2]=64;if(!(c[k
>>2]|0)){c[l>>2]=72;c[k>>2]=72}c[m>>2]=0;c[m+4>>2]=c[h>>2];c[m+8>
;>2]=c[j>>2];c[m+12>>2]=c[k>>2];c[m+16>>2]=c[l>>2];m=Gd(c[g>>2]|
0,m)|0;i=n;return m|0}function Id(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+16|0;g=j+12|0;d=j+8|0;h=j+4|0;e=
j;c[g>>2]=a;c[d>>2]=b;if(!(c[g>>2]|0)){c[f>>2]=35;h=c[f>>2]|0;i=j;return h|0}if
(!(c[d>>2]|0)){c[f>>2]=6;h=c[f>>2]|0;i=j;return h|0}b=c[g>>2]|0;if((c[d>>2]|0)==
1970170211){c[f>>2]=Hc(b)|0;h=c[f>>2]|0;i=j;return h|0}c[h>>2]=c[b+40>>2];if(!(c[h>
x3e;2]|0)){c[f>>2]=38;h=c[f>>2]|0;i=j;return h|0}c[e>>2]=(c[h>>2]|0)+(c[(c[g>>
2]|0)+36>>2]<<2);while(1){if((c[h>>2]|0)>>>0>=(c[e>>2]|0)>>
;>0){b=15;break}if((c[(c[c[h>>2]>>2]|0)+4>>2]|0)==(c[d>>2]|0)?(((c[h>>2]|
0)-(c[(c[g>>2]|0)+40>>2]|0)|0)/4|0|0)<=15:0){b=13;break}c[h>>2]=(c[h>>2]|0)+4}if((b
|0)==13){c[(c[g>>2]|0)+92>>2]=c[c[h>>2]>>2];c[f>>2]=0;h=c[f>>2]|0;i=
j;return h|0}else if((b|0)==15){c[f>>2]=6;h=c[f>>2]|0;i=j;return h|0}return 0}function Jd(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;f=j+16|0;g=j+12|0;d=j+8|0;h=j+4|0;e=j;c[g>>2]=a;c[d>>2]=b;if(!(c[g>
;>2]|0)){c[f>>2]=35;h=c[f>>2]|0;i=j;return h|0}c[h>>2]=c[(c[g>>2]|0)+40>>
2];if(!(c[h>>2]|0)){c[f>>2]=38;h=c[f>>2]|0;i=j;return h|0}if((Kd(c[d>>2]|0)|0)==14){c[f
x3e;>2]=6;h=c[f>>2]|0;i=j;return h|0}c[e>>2]=(c[h>>2]|0)+(c[(c[g>>2]|0)+36>>
;2]<<2);while(1){if((c[h>>2]|0)>>>0>=(c[e>>2]|0)>>>0){d=13;break
}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)?(((c[h>>2]|0)-(c[(c[g>>2]|0)+40>>
2]|0)|0)/4|0|0)<=15:0){d=11;break}c[h>>2]=(c[h>>2]|0)+4}if((d|0)==11){c[(c[g>>2]|0)+92>
x3e;2]=c[c[h>>2]>>2];c[f>>2]=0;h=c[f>>2]|0;i=j;return h|0}else if((d|0)==13){c[f>
x3e;2]=6;h=c[f>>2]|0;i=j;return h|0}return 0}function Kd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;b=k
+28|0;d=k+24|0;j=k+20|0;g=k+16|0;f=k+8|0;h=k+4|0;e=k;c[d>>2]=a;if(c[d>>2]|0?c[c[d>>2]>>2
]|0:0){c[g>>2]=c[c[d>>2]>>2];c[h>>2]=c[(c[g>>2]|0)+96>>2];c[e>
x3e;2]=0;if(c[(c[c[h>>2]>>2]|0)+32>>2]|0)c[e>>2]=Ya[c[(c[c[h>>2]>>2]|
0)+32>>2]&127](c[h>>2]|0,11426)|0;c[j>>2]=c[e>>2];if(!(c[j>>2]|0)){c[b>
;>2]=-1;j=c[b>>2]|0;i=k;return j|0}if(Ya[c[c[j>>2]>>2]&127](c[d>>2]|0,f)|0){c[
b>>2]=-1;j=c[b>>2]|0;i=k;return j|0}else{c[b>>2]=c[f+4>>2];j=c[b>>2]|0;i=k;return
j|0}}c[b>>2]=-1;j=c[b>>2]|0;i=k;return j|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,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;f=q+32|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;m=q+12|0;n=q+8|0;o=q+4|0;l=q;c[g>>
;2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=0;if(!((c[g>>2]|0)==0|(c[j>
x3e;2]|0)==0)?c[c[j>>2]>>2]|0:0){c[n>>2]=c[c[j>>2]>>2];c[o>>2]=c[(c[
n>>2]|0)+100>>2];c[l>>2]=bc(c[o>>2]|0,c[c[g>>2]>>2]|0,m)|0;do if(!(c
[m>>2]|0)){b=c[l>>2]|0;a=c[j>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4
x3e;>2];c[b+8>>2]=c[a+8>>2];c[(c[l>>2]|0)+12>>2]=c[g>>2];if(!(c[(c[g>
;>2]|0)+4>>2]|0?(c[m>>2]=Ya[c[(c[g>>2]|0)+4>>2]&127](c[l>>2]|0,c[h
x3e;>2]|0)|0,(c[m>>2]|0)!=0):0))p=7;if((p|0)==7?(p=hc(c[o>>2]|0,4,c[(c[n>>2]|0)+36>>
;2]|0,(c[(c[n>>2]|0)+36>>2]|0)+1|0,c[(c[n>>2]|0)+40>>2]|0,m)|0,c[(c[n>>2]|0)+40
>>2]=p,(c[m>>2]|0)==0):0){o=c[l>>2]|0;b=(c[n>>2]|0)+36|0;p=c[b>>2]|0;c[b>
x3e;2]=p+1;c[(c[(c[n>>2]|0)+40>>2]|0)+(p<<2)>>2]=o;break}Jc(c[l>>2]|0);c[l>
;>2]=0}while(0);if(c[k>>2]|0)c[c[k>>2]>>2]=c[l>>2];c[f>>2]=c[m>>
;2];p=c[f>>2]|0;i=q;return p|0}c[f>>2]=6;p=c[f>>2]|0;i=q;return p|0}function Md(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;m=i;i=i+32|0;e=m+24|0;f=m+20|0;g=m+16|0;l=m+12|0;k=m+8|0;j=m+4|0;h=m;c[e>>2
]=a;c[f>>2]=b;c[g>>2]=d;c[l>>2]=0;c[k>>2]=0;if((c[e>>2]|0?c[(c[e>>2]|
0)+92>>2]|0:0)?c[(c[e>>2]|0)+16>>2]|0:0){c[j>>2]=c[f>>2];c[h>>2]=c[(
c[e>>2]|0)+92>>2];do c[k>>2]=Ya[c[(c[(c[h>>2]|0)+12>>2]|0)+16>>2]&
;127](c[h>>2]|0,j)|0;while((c[k>>2]|0)>>>0>=(c[(c[e>>2]|0)+16>>2]|0)
x3e;>>0);c[l>>2]=(c[k>>2]|0)==0?0:c[j>>2]|0}if(!(c[g>>2]|0)){l=c[l>>
2]|0;i=m;return l|0}c[c[g>>2]>>2]=c[k>>2];l=c[l>>2]|0;i=m;return l|0}function Nd(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;p=i;i=i+48|0;d=p+36|0;e=p+32|0;f=p+28|0;j=p+24|0;k=p+20|0;l=p+16|0
;m=p+12|0;g=p+8|0;h=p+4|0;n=p;c[e>>2]=a;c[f>>2]=b;if(!(c[e>>2]|0)){c[d>>2]=33;o=c[d>
;>2]|0;i=p;return o|0}if(!(c[f>>2]|0)){c[d>>2]=6;o=c[d>>2]|0;i=p;return o|0}if((c[(c[f>
x3e;2]|0)+16>>2]|0)>131076){c[d>>2]=4;o=c[d>>2]|0;i=p;return o|0}c[m>>2]=0;while(1){
if((c[m>>2]|0)>>>0>=(c[(c[e>>2]|0)+24>>2]|0)>>>0)break;c[l>
;>2]=c[(c[e>>2]|0)+28+(c[m>>2]<<2)>>2];if(!(Kr(c[(c[c[l>>2]>>2]|
0)+8>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0)){o=10;break}c[m>>2]=(c[m>>2]|0)+1}do if((
o|0)==10){if((c[(c[f>>2]|0)+12>>2]|0)>(c[(c[c[l>>2]>>2]|0)+12>>2]|0)){Od(
c[e>>2]|0,c[l>>2]|0)|0;break}c[d>>2]=5;o=c[d>>2]|0;i=p;return o|0}while(0);c[k>>
;2]=c[c[e>>2]>>2];c[j>>2]=0;a:do if((c[(c[e>>2]|0)+24>>2]|0)>>>
0<32){c[l>>2]=bc(c[k>>2]|0,c[(c[f>>2]|0)+4>>2]|0,j)|0;if(!(c[j>>2]|0)){c[(
c[l>>2]|0)+4>>2]=c[e>>2];c[(c[l>>2]|0)+8>>2]=c[k>>2];c[c[l>>
;2]>>2]=c[f>>2];if(!(c[c[c[l>>2]>>2]>>2]&2|0?(c[j>>2]=Td(c[l>
;>2]|0)|0,(c[j>>2]|0)!=0):0))o=19;do if((o|0)==19){if(c[c[c[l>>2]>>2]>>2]&4|0)
c[(c[e>>2]|0)+168>>2]=c[l>>2];if((c[c[c[l>>2]>>2]>>2]&1|0?(c[g
x3e;>2]=c[l>>2],c[(c[g>>2]|0)+20>>2]=c[c[l>>2]>>2],(c[c[c[g>>2]
x3e;>2]>>2]&512|0)==0):0)?(c[j>>2]=ac(c[k>>2]|0,(c[g>>2]|0)+36|0)|0,c[j>
x3e;2]|0):0)break;if(c[(c[f>>2]|0)+24>>2]|0?(c[j>>2]=Ta[c[(c[f>>2]|0)+24>>2]
x26;63](c[l>>2]|0)|0,c[j>>2]|0):0)break;n=c[l>>2]|0;m=(c[e>>2]|0)+24|0;o=c[m>>
2]|0;c[m>>2]=o+1;c[(c[e>>2]|0)+28+(o<<2)>>2]=n;break a}while(0);if(c[c[c[l>>2]
x3e;>2]>>2]&1|0?(c[h>>2]=c[l>>2],(c[c[c[h>>2]>>2]>>2]&
;512|0)==0):0)fc(c[(c[h>>2]|0)+36>>2]|0);if((c[c[c[l>>2]>>2]>>2]&2|0?(c[n
>>2]=c[l>>2],(c[(c[(c[n>>2]|0)+20>>2]|0)+36>>2]|0)==1869968492):0)?c[(c[n>
;>2]|0)+60>>2]|0:0)Va[c[(c[(c[(c[n>>2]|0)+20>>2]|0)+56>>2]|0)+20>>2]&
;63](c[(c[n>>2]|0)+60>>2]|0);Fb(c[k>>2]|0,c[l>>2]|0);c[l>>2]=0}}else c[j>
x3e;2]=48;while(0);c[d>>2]=c[j>>2];o=c[d>>2]|0;i=p;return o|0}function Od(a,b){a=a|0;b=b|0;var d=0
,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;if(!(c[e>
x3e;2]|0)){c[d>>2]=33;b=c[d>>2]|0;i=j;return b|0}a:do if(c[f>>2]|0){c[g>>2]=(c[e>
x3e;2]|0)+28;c[h>>2]=(c[g>>2]|0)+(c[(c[e>>2]|0)+24>>2]<<2);while(1){if((c[g>
;>2]|0)>>>0>=(c[h>>2]|0)>>>0)break a;if((c[c[g>>2]>>2]|0)==(
c[f>>2]|0))break;c[g>>2]=(c[g>>2]|0)+4}b=(c[e>>2]|0)+24|0;c[b>>2]=(c[b>
x3e;2]|0)+-1;c[h>>2]=(c[h>>2]|0)+-4;while(1){if((c[g>>2]|0)>>>0>=(c[h>>
;2]|0)>>>0)break;c[c[g>>2]>>2]=c[(c[g>>2]|0)+4>>2];c[g>>2]=(c[g
>>2]|0)+4}c[c[h>>2]>>2]=0;Pd(c[f>>2]|0);c[d>>2]=0;b=c[d>>2]|0;i=j;return
b|0}while(0);c[d>>2]=34;b=c[d>>2]|0;i=j;return b|0}function Pd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|
0;b=g+12|0;f=g+8|0;d=g+4|0;e=g;c[b>>2]=a;c[f>>2]=c[(c[b>>2]|0)+8>>2];c[d>>2]=c
[c[b>>2]>>2];c[e>>2]=c[(c[b>>2]|0)+4>>2];if(c[(c[b>>2]|0)+12+4>
x3e;2]|0)Va[c[(c[b>>2]|0)+12+4>>2]&63](c[b>>2]|0);if(c[e>>2]|0?(c[(c[e>>2
]|0)+168>>2]|0)==(c[b>>2]|0):0)c[(c[e>>2]|0)+168>>2]=0;if(c[c[c[b>>2]>>
;2]>>2]&2|0)Qd(c[b>>2]|0);if(c[c[c[b>>2]>>2]>>2]&1|0)Sd(c[b>>
;2]|0);if(!(c[(c[d>>2]|0)+28>>2]|0)){f=c[f>>2]|0;a=c[b>>2]|0;Fb(f,a);c[b>>2]=0
;i=g;return}Va[c[(c[d>>2]|0)+28>>2]&63](c[b>>2]|0);f=c[f>>2]|0;a=c[b>>2]|
0;Fb(f,a);c[b>>2]=0;i=g;return}function Qd(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0
;f=h+4|0;g=h;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+4>>2];c[e>>2]=c[c[d>>2]
x3e;>2];c[f>>2]=Rb((c[d>>2]|0)+156|0,c[b>>2]|0)|0;if(!(c[f>>2]|0)){i=h;return}c[g
x3e;>2]=c[b>>2];if((c[(c[(c[g>>2]|0)+20>>2]|0)+36>>2]|0)==1869968492?c[(c[g>
x3e;2]|0)+60>>2]|0:0)Va[c[(c[(c[(c[g>>2]|0)+20>>2]|0)+56>>2]|0)+20>>2]&63
](c[(c[g>>2]|0)+60>>2]|0);wd((c[d>>2]|0)+156|0,c[f>>2]|0);Fb(c[e>>2]|0,c[f>
;>2]|0);c[f>>2]=0;Rd(c[d>>2]|0);i=h;return}function Rd(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]=Jb(c[d>>2]|0,1869968492,0)|0;c[(c[d>>2]|0)+164>>2]=c[e>
;>2];i=b;return}function Sd(a){a=a|0;var b=0,d=0;d=i;i=i+16|0;b=d;c[b>>2]=a;zd((c[b>>2]|0)+24|0,8,c[(c[
b>>2]|0)+8>>2]|0,c[b>>2]|0);if(c[c[c[b>>2]>>2]>>2]&512|0){i=d;return
}fc(c[(c[b>>2]|0)+36>>2]|0);i=d;return}function Td(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+
32|0;b=l+24|0;f=l+20|0;g=l+16|0;e=l+12|0;h=l+8|0;j=l+4|0;d=l;c[b>>2]=a;c[f>>2]=c[(c[b>>2]|0)+4>
;>2];c[g>>2]=c[c[f>>2]>>2];c[h>>2]=0;c[h>>2]=bc(c[g>>2]|0,12,e)|
0;if(c[e>>2]|0){k=c[e>>2]|0;i=l;return k|0}c[j>>2]=c[b>>2];c[d>>2]=c[c[b>
x3e;2]>>2];c[(c[j>>2]|0)+20>>2]=c[d>>2];c[(c[j>>2]|0)+24>>2]=c[(c[d
x3e;>2]|0)+36>>2];if((c[(c[d>>2]|0)+36>>2]|0)==1869968492?c[(c[(c[d>>2]|0)+56>
x3e;2]|0)+4>>2]|0:0){c[e>>2]=Ya[c[(c[(c[d>>2]|0)+56>>2]|0)+4>>2]&127](c[g
>>2]|0,(c[j>>2]|0)+60|0)|0;if(!(c[e>>2]|0)){c[(c[j>>2]|0)+64>>2]=c[(c[(c[d>
;>2]|0)+56>>2]|0)+16>>2];c[(c[j>>2]|0)+68>>2]=c[(c[d>>2]|0)+40>>
;2];k=6}}else k=6;if((k|0)==6){c[(c[h>>2]|0)+8>>2]=c[b>>2];td((c[f>>2]|0)+156|0,c[h>
;>2]|0);Rd(c[f>>2]|0)}if(!(c[e>>2]|0)){k=c[e>>2]|0;i=l;return k|0}Fb(c[g>>2]|0,c[h
x3e;>2]|0);c[h>>2]=0;k=c[e>>2]|0;i=l;return k|0}function Ud(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]=Wc(c[g>>2]|0,c[f>>2]|0)|
0;if(!(c[d>>2]|0)){g=0;i=e;return g|0}g=c[(c[c[d>>2]>>2]|0)+20>>2]|0;i=e;return g|0}function
Vd(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;j=k+12|0;g=k+8|0;f=k+4|0;h=k;c[d>>
2]=a;c[e>>2]=b;c[j>>2]=0;if(!(c[d>>2]|0)){j=c[j>>2]|0;i=k;return j|0}if(c[(c[c[d>
x3e;2]>>2]|0)+32>>2]|0)c[j>>2]=Ya[c[(c[c[d>>2]>>2]|0)+32>>2]&127
](c[d>>2]|0,c[e>>2]|0)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}c[g>>2]=c[(c
[d>>2]|0)+4>>2];c[f>>2]=(c[g>>2]|0)+28;c[h>>2]=(c[f>>2]|0)+(c[(c[g
x3e;>2]|0)+24>>2]<<2);while(1){if((c[f>>2]|0)>>>0>=(c[h>>2]|0)
x3e;>>0){d=11;break}if(((c[c[f>>2]>>2]|0)!=(c[d>>2]|0)?c[(c[c[c[f>>2]>>
;2]>>2]|0)+32>>2]|0:0)?(c[j>>2]=Ya[c[(c[c[c[f>>2]>>2]>>2]|0)+32>
;>2]&127](c[c[f>>2]>>2]|0,c[e>>2]|0)|0,c[j>>2]|0):0){d=11;break}c[f>>
;2]=(c[f>>2]|0)+4}if((d|0)==11){j=c[j>>2]|0;i=k;return j|0}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;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=b;c[h>>2]=0;
if(!(c[e>>2]|0)){c[d>>2]=6;a=c[d>>2]|0;i=j;return a|0}c[h>>2]=bc(c[e>>2]|0,200
,g)|0;if(c[g>>2]|0){c[d>>2]=c[g>>2];a=c[d>>2]|0;i=j;return a|0}c[c[h>>2]>
x3e;2]=c[e>>2];c[(c[h>>2]|0)+176>>2]=16384;a=bc(c[e>>2]|0,16384,g)|0;c[(c[h>>2
]|0)+172>>2]=a;if(c[g>>2]|0){Fb(c[e>>2]|0,c[h>>2]|0);c[h>>2]=0;c[d>>
2]=c[g>>2];a=c[d>>2]|0;i=j;return a|0}else{c[(c[h>>2]|0)+12>>2]=2;c[(c[h>>2]|0
)+16>>2]=4;c[(c[h>>2]|0)+20>>2]=4;c[(c[h>>2]|0)+196>>2]=1;c[c[f>>2]
x3e;>2]=c[h>>2];c[d>>2]=0;a=c[d>>2]|0;i=j;return a|0}return 0}function Xd(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;p=i;i=i+48|0;g=p+44|0;h=p+40|0;j=p+36|0;k=p+32|0;l=p+28|0;m=p+24|0
;o=p+4|0;n=p;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>
2]=c[(c[c[h>>2]>>2]|0)+96>>2];if(!(c[(c[(c[n>>2]|0)+20>>2]|0)+96>>2]|
0)){c[g>>2]=0;b=c[g>>2]|0;i=p;return b|0}c[o>>2]=0;c[o+4>>2]=c[j>>2];c[o+8>
;>2]=c[k>>2];if(!(c[l>>2]|0))c[l>>2]=c[m>>2];if(!(c[m>>2]|0))c[m>>
;2]=c[l>>2];if(!(c[l>>2]|0)){c[m>>2]=72;c[l>>2]=72}c[o+12>>2]=c[l>>2
];c[o+16>>2]=c[m>>2];c[g>>2]=Ya[c[(c[(c[n>>2]|0)+20>>2]|0)+96>>2]&
;127](c[h>>2]|0,o)|0;b=c[g>>2]|0;i=p;return b|0}function Yd(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;l=i;i=i+48|0;e=l+36|0;f=l+32|0;g=l+28|0;h=l+24|0;k=l+4|0;j=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=
d;c[j>>2]=c[(c[c[f>>2]>>2]|0)+96>>2];if(c[(c[(c[j>>2]|0)+20>>2]|0)+96
>>2]|0){c[k>>2]=0;c[k+4>>2]=c[g>>2]<<6;c[k+8>>2]=c[h>>2]
x3c;<6;c[k+12>>2]=0;c[k+16>>2]=0;c[e>>2]=Ya[c[(c[(c[j>>2]|0)+20>>2]|0)+96
>>2]&127](c[f>>2]|0,k)|0;b=c[e>>2]|0;i=l;return b|0}else{c[e>>2]=0;b=c[e>>
;2]|0;i=l;return b|0}return 0}function Zd(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,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;E=i;i=i+128|0;g=E+124|0;h=E+120|0;j=E+116|0;k=E+112|0;w=E+104|0;v=E+96|0;y=E+88|0;r=E+84|
0;p=E+80|0;u=E+76|0;m=E+72|0;q=E+68|0;n=E+64|0;t=E+60|0;s=E+56|0;l=E+52|0;o=E+48|0;z=E+40|0;A=E+32|0;x=E+24|0;B=E+16|0;C=E+8|0;D
=E;c[h>>2]=d;c[j>>2]=e;c[k>>2]=f;if(!((c[h>>2]|0)!=0&(c[j>>2]|0)!=0)){c[g
>>2]=6;D=c[g>>2]|0;i=E;return D|0}c[s>>2]=c[(c[j>>2]|0)+16>>2];c[l>>
2]=c[(c[j>>2]|0)+20>>2];c[n>>2]=0;c[q>>2]=0;a:while(1){if((c[q>>2]|0)>=(b
[c[h>>2]>>1]|0)){e=32;break}c[o>>2]=b[(c[(c[h>>2]|0)+12>>2]|0)+(c[q>>
;2]<<1)>>1];if((c[o>>2]|0)<0){e=34;break}c[p>>2]=(c[(c[h>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<3);f=(c[(c[h>>2]|0)+4>>2]|0)+(c[n>>2]<<3)|0;c[y
x3e;>2]=c[f>>2];c[y+4>>2]=c[f+4>>2];c[y>>2]=(c[y>>2]<<c[s>
x3e;2])-(c[l>>2]|0);c[y+4>>2]=(c[y+4>>2]<<c[s>>2])-(c[l>>2]|0);f=(c[(
c[h>>2]|0)+4>>2]|0)+(c[o>>2]<<3)|0;c[w>>2]=c[f>>2];c[w+4>>
2]=c[f+4>>2];c[w>>2]=(c[w>>2]<<c[s>>2])-(c[l>>2]|0);c[w+4>>
;2]=(c[w+4>>2]<<c[s>>2])-(c[l>>2]|0);c[v>>2]=c[y>>2];c[v+4>>
;2]=c[y+4>>2];c[r>>2]=(c[(c[h>>2]|0)+4>>2]|0)+(c[n>>2]<<3);c[u>
x3e;2]=(c[(c[h>>2]|0)+8>>2]|0)+(c[n>>2]|0);c[t>>2]=a[c[u>>2]>>0]&
;3;if((c[t>>2]|0)==2){e=34;break}if(!(c[t>>2]|0)){if((a[(c[(c[h>>2]|0)+8>>2]|0)+(c[o>
;>2]|0)>>0]&3|0)==1){c[y>>2]=c[w>>2];c[y+4>>2]=c[w+4>>2];c[p>
x3e;2]=(c[p>>2]|0)+-8}else{c[y>>2]=((c[y>>2]|0)+(c[w>>2]|0)|0)/2|0;c[y+4>>2]=((
c[y+4>>2]|0)+(c[w+4>>2]|0)|0)/2|0;c[w>>2]=c[y>>2];c[w+4>>2]=c[y+4>>2
]}c[r>>2]=(c[r>>2]|0)+-8;c[u>>2]=(c[u>>2]|0)+-1}c[m>>2]=Ya[c[c[j>>2]
x3e;>2]&127](y,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break}b:while(1){if((c[r>>2]|0)>>
;>0>=(c[p>>2]|0)>>>0){e=29;break}c[r>>2]=(c[r>>2]|0)+8;c[u>>2]=(
c[u>>2]|0)+1;c[t>>2]=a[c[u>>2]>>0]&3;switch(c[t>>2]|0){case 1:{c[z>
x3e;2]=(c[c[r>>2]>>2]<<c[s>>2])-(c[l>>2]|0);c[z+4>>2]=(c[(c[r>
x3e;2]|0)+4>>2]<<c[s>>2])-(c[l>>2]|0);c[m>>2]=Ya[c[(c[j>>2]|0)+4>
;>2]&127](z,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else continue b}case 0:{c[v>>2]=(c[c
[r>>2]>>2]<<c[s>>2])-(c[l>>2]|0);c[v+4>>2]=(c[(c[r>>2]|0)+
4>>2]<<c[s>>2])-(c[l>>2]|0);while(1){if((c[r>>2]|0)>>>0>=(
c[p>>2]|0)>>>0){e=23;break b}c[r>>2]=(c[r>>2]|0)+8;c[u>>2]=(c[u>>
;2]|0)+1;c[t>>2]=a[c[u>>2]>>0]&3;c[A>>2]=(c[c[r>>2]>>2]<
x3c;c[s>>2])-(c[l>>2]|0);c[A+4>>2]=(c[(c[r>>2]|0)+4>>2]<<c[s>
x3e;2])-(c[l>>2]|0);if((c[t>>2]|0)==1)break;if(c[t>>2]|0){e=34;break a}c[x>>2]=((c[v>
;>2]|0)+(c[A>>2]|0)|0)/2|0;c[x+4>>2]=((c[v+4>>2]|0)+(c[A+4>>2]|0)|0)/2|0;c[m>
x3e;2]=Oa[c[(c[j>>2]|0)+8>>2]&63](v,x,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a};c[v
x3e;>2]=c[A>>2];c[v+4>>2]=c[A+4>>2]}c[m>>2]=Oa[c[(c[j>>2]|0)+8>>
;2]&63](v,A,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else continue b}default:{if(((c[r>>2]|0)+
8|0)>>>0>(c[p>>2]|0)>>>0){e=34;break a}if((a[(c[u>>2]|0)+1>>0]
x26;3|0)!=2){e=34;break a}c[r>>2]=(c[r>>2]|0)+16;c[u>>2]=(c[u>>2]|0)+2;c[B>>2]=(
c[(c[r>>2]|0)+-16>>2]<<c[s>>2])-(c[l>>2]|0);c[B+4>>2]=(c[(c[r>
x3e;2]|0)+-16+4>>2]<<c[s>>2])-(c[l>>2]|0);c[C>>2]=(c[(c[r>>2]|0)+-8
x3e;>2]<<c[s>>2])-(c[l>>2]|0);c[C+4>>2]=(c[(c[r>>2]|0)+-8+4>>2]
x3c;<c[s>>2])-(c[l>>2]|0);if((c[r>>2]|0)>>>0>(c[p>>2]|0)>
x3e;>0){e=28;break b}c[D>>2]=(c[c[r>>2]>>2]<<c[s>>2])-(c[l>>2]|
0);c[D+4>>2]=(c[(c[r>>2]|0)+4>>2]<<c[s>>2])-(c[l>>2]|0);c[m>>
;2]=Wa[c[(c[j>>2]|0)+12>>2]&31](B,C,D,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;break a}else
continue b}}}if((e|0)==23)c[m>>2]=Oa[c[(c[j>>2]|0)+8>>2]&63](v,y,c[k>>2]|0)|0;else
if((e|0)==28)c[m>>2]=Wa[c[(c[j>>2]|0)+12>>2]&31](B,C,y,c[k>>2]|0)|0;else if((e|0)==
29)c[m>>2]=Ya[c[(c[j>>2]|0)+4>>2]&127](y,c[k>>2]|0)|0;if(c[m>>2]|0){e=33;
break}c[n>>2]=(c[o>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+1}if((e|0)==32){c[g>>2]=0;D=c[
g>>2]|0;i=E;return D|0}else if((e|0)==33){c[g>>2]=c[m>>2];D=c[g>>2]|0;i=E;return D|0}else
if((e|0)==34){c[g>>2]=20;D=c[g>>2]|0;i=E;return D|0}return 0}function _d(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0;l=p+28|0;o=p+24|0;k=p+20|0;n=p+16|0;h=p+12|0;g=p+8|0;j=p+4|0;m=p;c
[e>>2]=a;c[f>>2]=d;if(!((c[e>>2]|0)!=0&(c[f>>2]|0)!=0)){i=p;return}a:do if(!(b[(c[e
>>2]|0)+2>>1]|0)){c[l>>2]=0;c[o>>2]=0;c[k>>2]=0;c[n>>2]=0}else{c[h
x3e;>2]=c[(c[e>>2]|0)+4>>2];c[g>>2]=(c[h>>2]|0)+(b[(c[e>>2]|0)+2>>
;1]<<3);a=c[c[h>>2]>>2]|0;c[k>>2]=a;c[l>>2]=a;a=c[(c[h>>2]|0)+4>
;>2]|0;c[n>>2]=a;c[o>>2]=a;c[h>>2]=(c[h>>2]|0)+8;while(1){if((c[h>>2]|0)
x3e;>>0>=(c[g>>2]|0)>>>0)break a;c[j>>2]=c[c[h>>2]>>2];if((
c[j>>2]|0)<(c[l>>2]|0))c[l>>2]=c[j>>2];if((c[j>>2]|0)>(c[k>>
;2]|0))c[k>>2]=c[j>>2];c[m>>2]=c[(c[h>>2]|0)+4>>2];if((c[m>>2]|0)<
;(c[o>>2]|0))c[o>>2]=c[m>>2];if((c[m>>2]|0)>(c[n>>2]|0))c[n>>2]=
c[m>>2];c[h>>2]=(c[h>>2]|0)+8}}while(0);c[c[f>>2]>>2]=c[l>>2];c[(c[f
>>2]|0)+8>>2]=c[k>>2];c[(c[f>>2]|0)+4>>2]=c[o>>2];c[(c[f>>
2]|0)+12>>2]=c[n>>2];i=p;return}function $d(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,o=0,p=0,q=0
,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+128|0;d=F+116|0;e=F+112|0;z=F+108|0;D=F+104|0;C=F+100|0;A=F
+96|0;B=F+92|0;f=F+88|0;l=F+84|0;n=F+80|0;s=F+76|0;r=F+72|0;m=F+68|0;t=F+56|0;u=F+44|0;h=F+40|0;g=F+36|0;k=F+32|0;j=F+28|0;q=F+24
|0;x=F+20|0;o=F+16|0;p=F+12|0;v=F+8|0;w=F+4|0;y=F;c[e>>2]=a;c[z>>2]=32768;c[D>>2]=32768;c[C>
x3e;2]=-32768;c[A>>2]=0;c[B>>2]=0;c[u>>2]=c[42];c[u+4>>2]=c[43];c[u+8>>2]=c[44
];if(c[e>>2]|0?(b[(c[e>>2]|0)+2>>1]|0)>0:0){c[l>>2]=c[(c[e>>2]|0)+4>
x3e;2];c[f>>2]=c[(c[e>>2]|0)+12>>2];while(1){if((c[f>>2]|0)>>>0>=((c
[(c[e>>2]|0)+12>>2]|0)+(b[c[e>>2]>>1]<<1)|0)>>>0)break;c[h>
;>2]=32768;c[g>>2]=-32768;c[k>>2]=32768;c[j>>2]=-32768;c[n>>2]=(c[(c[e>>2
]|0)+4>>2]|0)+(b[c[f>>2]>>1]<<3);if((c[n>>2]|0)>>>0>=((c[l
>>2]|0)+16|0)>>>0){c[r>>2]=c[l>>2];while(1){if((c[r>>2]|0)>>>
;0>(c[n>>2]|0)>>>0)break;if((c[c[r>>2]>>2]|0)<(c[h>>2]|0))c[h
x3e;>2]=c[c[r>>2]>>2];if((c[c[r>>2]>>2]|0)>(c[g>>2]|0))c[g>>
;2]=c[c[r>>2]>>2];if((c[(c[r>>2]|0)+4>>2]|0)<(c[k>>2]|0))c[k>>2
]=c[(c[r>>2]|0)+4>>2];if((c[(c[r>>2]|0)+4>>2]|0)>(c[j>>2]|0))c[j>>
;2]=c[(c[r>>2]|0)+4>>2];c[r>>2]=(c[r>>2]|0)+8}if(((c[h>>2]|0)<(c[z>
x3e;2]|0)?(c[h>>2]|0)!=(c[g>>2]|0):0)?(c[k>>2]|0)!=(c[j>>2]|0):0){c[z>>2]=c[h
x3e;>2];c[D>>2]=c[k>>2];c[C>>2]=c[j>>2];c[A>>2]=c[l>>2];c[B>
;>2]=c[n>>2]}}c[f>>2]=(c[f>>2]|0)+2;c[l>>2]=(c[n>>2]|0)+8}if((c[z>
x3e;2]|0)==32768){c[d>>2]=0;E=c[d>>2]|0;i=F;return E|0}c[t>>2]=((c[D>>2]|0)*3|0)+(c[C>
;>2]|0)>>2;c[t+4>>2]=(c[D>>2]|0)+(c[C>>2]|0)>>1;c[t+8>>2]=(c[D
x3e;>2]|0)+((c[C>>2]|0)*3|0)>>2;c[m>>2]=0;while(1){if((c[m>>2]|0)>=3)break;a:while
(1){c[q>>2]=32768;c[x>>2]=-32768;c[w>>2]=0;c[v>>2]=0;c[p>>2]=0;c[o>>
2]=0;c[s>>2]=c[B>>2];c[r>>2]=c[A>>2];while(1){if((c[r>>2]|0)>>>
0>(c[B>>2]|0)>>>0)break a;if((c[(c[r>>2]|0)+4>>2]|0)==(c[t+(c[m>>2]
x3c;<2)>>2]|0))break;if((c[(c[s>>2]|0)+4>>2]|0)==(c[t+(c[m>>2]<<2)>
x3e;2]|0))break;if(!((c[(c[r>>2]|0)+4>>2]|0)<(c[t+(c[m>>2]<<2)>>2]|0)?(c[(
c[s>>2]|0)+4>>2]|0)<(c[t+(c[m>>2]<<2)>>2]|0):0))E=34;do if((E|0)==34){E=0
;if((c[(c[r>>2]|0)+4>>2]|0)>(c[t+(c[m>>2]<<2)>>2]|0)?(c[(c[s>>2
]|0)+4>>2]|0)>(c[t+(c[m>>2]<<2)>>2]|0):0)break;D=xb((c[c[r>>2]>>
;2]|0)-(c[c[s>>2]>>2]|0)|0,(c[t+(c[m>>2]<<2)>>2]|0)-(c[(c[s>>2]|0)+4
>>2]|0)|0,(c[(c[r>>2]|0)+4>>2]|0)-(c[(c[s>>2]|0)+4>>2]|0)|0)|0;c[y>>
2]=D+(c[c[s>>2]>>2]|0);if((c[y>>2]|0)<(c[q>>2]|0)){c[q>>2]=c[y>>
;2];c[o>>2]=c[s>>2];c[p>>2]=c[r>>2]}if((c[y>>2]|0)>(c[x>>2]|0)){
c[x>>2]=c[y>>2];c[v>>2]=c[s>>2];c[w>>2]=c[r>>2]}}while(0);c[s>
x3e;2]=c[r>>2];c[r>>2]=(c[r>>2]|0)+8}D=t+(c[m>>2]<<2)|0;c[D>>2]=(c[D
>>2]|0)+1}do if((c[o>>2]|0)!=0&(c[v>>2]|0)!=0){if((c[(c[o>>2]|0)+4>>2]|0)
x3c;(c[(c[p>>2]|0)+4>>2]|0)?(c[(c[v>>2]|0)+4>>2]|0)>(c[(c[w>>2]|0)+4>
;>2]|0):0){c[u+(c[m>>2]<<2)>>2]=0;break}if((c[(c[o>>2]|0)+4>>2]|0)>(
c[(c[p>>2]|0)+4>>2]|0)?(c[(c[v>>2]|0)+4>>2]|0)<(c[(c[w>>2]|0)+4>>
;2]|0):0){c[u+(c[m>>2]<<2)>>2]=1;break}c[u+(c[m>>2]<<2)>>2]=2}while(
0);c[m>>2]=(c[m>>2]|0)+1}do if((c[u>>2]|0)!=2){if((c[u>>2]|0)!=(c[u+4>>2]|0)?(
c[u>>2]|0)!=(c[u+8>>2]|0):0)break;c[d>>2]=c[u>>2];E=c[d>>2]|0;i=F;return E|0}while
(0);if((c[u+4>>2]|0)!=2?(c[u+4>>2]|0)==(c[u+8>>2]|0):0){c[d>>2]=c[u+4>>2];E=c[
d>>2]|0;i=F;return E|0}c[d>>2]=0;E=c[d>>2]|0;i=F;return E|0}c[d>>2]=0;E=c[d>>2
]|0;i=F;return E|0}function ae(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;f=h+12|0;g=h+8|0;b=h+4|0;e=h;c[d
x3e;>2]=a;c[f>>2]=c[c[d>>2]>>2];c[g>>2]=c[(c[d>>2]|0)+4>>2];j=c
[f>>2]|0;a=c[g>>2]|0;c[b>>2]=((c[f>>2]|0)>=0?j:0-j|0)|((c[g>>2]|0)>=
0?a:0-a|0);c[e>>2]=0;if((c[b>>2]|0)>=65536){c[b>>2]=c[b>>2]>>16;c[e>
x3e;2]=(c[e>>2]|0)+16}if((c[b>>2]|0)>=256){c[b>>2]=c[b>>2]>>8;c[e>
x3e;2]=(c[e>>2]|0)+8}if((c[b>>2]|0)>=16){c[b>>2]=c[b>>2]>>4;c[e>>
;2]=(c[e>>2]|0)+4}if((c[b>>2]|0)>=4){c[b>>2]=c[b>>2]>>2;c[e>>2]=(
c[e>>2]|0)+2}if((c[b>>2]|0)>=2){c[b>>2]=c[b>>2]>>1;c[e>>2]=(c[e
>>2]|0)+1}a=c[e>>2]|0;if((c[e>>2]|0)<=27){c[e>>2]=27-a;c[c[d>>2]>>
;2]=c[f>>2]<<c[e>>2];c[(c[d>>2]|0)+4>>2]=c[g>>2]<<c[e>
;>2];j=c[e>>2]|0;i=h;return j|0}else{c[e>>2]=a-27;c[c[d>>2]>>2]=c[f>>2]
x3e;>c[e>>2];c[(c[d>>2]|0)+4>>2]=c[g>>2]>>c[e>>2];c[e>>
;2]=0-(c[e>>2]|0);j=c[e>>2]|0;i=h;return j|0}return 0}function be(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k
=0,l=0;l=i;i=i+32|0;h=l+24|0;j=l+20|0;g=l+16|0;e=l+12|0;k=l+8|0;f=l+4|0;d=l;c[h>>2]=a;c[k>>2]=c[c[h>>
;2]>>2];c[f>>2]=c[(c[h>>2]|0)+4>>2];c[j>>2]=0;if((c[k>>2]|0)<0){
c[k>>2]=0-(c[k>>2]|0);c[f>>2]=0-(c[f>>2]|0);c[j>>2]=11796480}if((c[f>>
;2]|0)>0)c[j>>2]=0-(c[j>>2]|0);c[d>>2]=180;a=c[f>>2]|0;b=c[k>>2]<<
;1;if((c[f>>2]|0)<0){c[g>>2]=a+b;c[k>>2]=(c[k>>2]|0)-(c[f>>2]<<
1);c[f>>2]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)-(c[b
x3e;>2]|0)}else{c[g>>2]=a-b;c[k>>2]=(c[k>>2]|0)+(c[f>>2]<<1);c[f>>
;2]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)+(c[b>>2]|0)}
c[e>>2]=0;do{a=c[f>>2]|0;b=c[k>>2]>>c[e>>2];if((c[f>>2]|0)<0){c
[g>>2]=a+b;c[k>>2]=(c[k>>2]|0)-(c[f>>2]>>c[e>>2]);c[f>>2]=
c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)-(c[b>>2]|0)}else
{c[g>>2]=a-b;c[k>>2]=(c[k>>2]|0)+(c[f>>2]>>c[e>>2]);c[f>>2
]=c[g>>2];b=c[d>>2]|0;c[d>>2]=b+4;c[j>>2]=(c[j>>2]|0)+(c[b>>2]|0)}b=(
c[e>>2]|0)+1|0;c[e>>2]=b}while((b|0)<23);a=c[j>>2]|0;if((c[j>>2]|0)>=0){c[j>
;>2]=a+16&-32;g=c[k>>2]|0;k=c[h>>2]|0;c[k>>2]=g;j=c[j>>2]|0;k=c[h>>2
]|0;k=k+4|0;c[k>>2]=j;i=l;return}else{c[j>>2]=0-(0-a+16&-32);g=c[k>>2]|0;k=c[h>>2]|
0;c[k>>2]=g;j=c[j>>2]|0;k=c[h>>2]|0;k=k+4|0;c[k>>2]=j;i=l;return}}function ce(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;f=i;i=i+48|0;b=f+36|0;e=f+32|0;m=f+28|0;k=f+24|0;n=f+20|0;l=f+16|0;d=f+12|0;h=f+8|0
;j=f+4|0;g=f;c[b>>2]=a;c[e>>2]=c[b>>2];a=c[b>>2]|0;c[b>>2]=(c[b>>2]|
0)>=0?a:0-a|0;c[m>>2]=(c[b>>2]|0)>>>16;c[k>>2]=c[b>>2]&65535;c[
n>>2]=17797;c[l>>2]=47593;c[d>>2]=_(c[n>>2]|0,c[m>>2]|0)|0;a=_(c[n>>
2]|0,c[k>>2]|0)|0;c[h>>2]=a+(_(c[l>>2]|0,c[m>>2]|0)|0);c[j>>2]=(_(c[l>>
;2]|0,c[k>>2]|0)|0)>>>16;c[g>>2]=(c[h>>2]|0)>>>0>=(c[j>>
;2]|0)>>>0?c[h>>2]|0:c[j>>2]|0;c[h>>2]=(c[h>>2]|0)+(c[j>>2]|0);
c[d>>2]=(c[d>>2]|0)+((c[h>>2]|0)>>>16);if((c[h>>2]|0)>>>0
x3e;=(c[g>>2]|0)>>>0){l=c[d>>2]|0;c[b>>2]=l;l=c[e>>2]|0;l=(l|0)>=0;m
=c[b>>2]|0;n=0-m|0;n=l?m:n;i=f;return n|0}c[d>>2]=(c[d>>2]|0)+65536;l=c[d>>2]|0;c[b>
;>2]=l;l=c[e>>2]|0;l=(l|0)>=0;m=c[b>>2]|0;n=0-m|0;n=l?m:n;i=f;return n|0}function de(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;e=h+12|0;j=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[j>>2]=b;c[f>
x3e;2]=d;c[g>>2]=ee(c[e>>2]|0,c[j>>2]|0)|0;if(c[g>>2]|0){j=c[g>>2]|0;i=h;return
j|0}c[c[f>>2]>>2]=c[(c[e>>2]|0)+32>>2];c[(c[e>>2]|0)+32>>2]=0;c[(c[
e>>2]|0)+36>>2]=0;j=c[g>>2]|0;i=h;return j|0}function ee(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,
j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;b=c[d>
x3e;2]|0;if(!(c[(c[d>>2]|0)+20>>2]|0)){if((c[b+8>>2]|0)>>>0<(c[(c[d>>
;2]|0)+4>>2]|0)>>>0?((c[(c[d>>2]|0)+4>>2]|0)-(c[(c[d>>2]|0)+8>>
2]|0)|0)>>>0>=(c[e>>2]|0)>>>0:0){c[(c[d>>2]|0)+32>>2]=(c[c[d>
;>2]>>2]|0)+(c[(c[d>>2]|0)+8>>2]|0);c[(c[d>>2]|0)+36>>2]=(c[(c[d>>
;2]|0)+32>>2]|0)+(c[e>>2]|0);h=(c[d>>2]|0)+8|0;c[h>>2]=(c[h>>2]|0)+(c[e>
x3e;2]|0);h=c[f>>2]|0;i=j;return h|0}c[f>>2]=85;h=c[f>>2]|0;i=j;return h|0}c[g>>2]=c[b+28
>>2];if((c[e>>2]|0)>>>0>(c[(c[d>>2]|0)+4>>2]|0)>>>0){
c[f>>2]=85;h=c[f>>2]|0;i=j;return h|0}a=cc(c[g>>2]|0,c[e>>2]|0,f)|0;c[c[d>>2]
x3e;>2]=a;if(c[f>>2]|0){h=c[f>>2]|0;i=j;return h|0}c[h>>2]=Wa[c[(c[d>>2]|0)+20>
;>2]&31](c[d>>2]|0,c[(c[d>>2]|0)+8>>2]|0,c[c[d>>2]>>2]|0,c[e>
x3e;2]|0)|0;if((c[h>>2]|0)>>>0<(c[e>>2]|0)>>>0){Fb(c[g>>2]|0,c[
c[d>>2]>>2]|0);c[c[d>>2]>>2]=0;c[f>>2]=85}c[(c[d>>2]|0)+32>>
;2]=c[c[d>>2]>>2];c[(c[d>>2]|0)+36>>2]=(c[(c[d>>2]|0)+32>>2]|0)+(c[e
>>2]|0);g=(c[d>>2]|0)+8|0;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0);h=c[f>>2]|
0;i=j;return h|0}function fe(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>
x3e;2]=b;if(c[d>>2]|0?c[(c[d>>2]|0)+20>>2]|0:0){c[f>>2]=c[(c[d>>2]|0)+28>
x3e;2];Fb(c[f>>2]|0,c[c[e>>2]>>2]|0);c[c[e>>2]>>2]=0}c[c[e>>2]>
x3e;2]=0;i=g;return}function ge(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(c[(c[b>>2]|0)+
20>>2]|0){c[d>>2]=c[(c[b>>2]|0)+28>>2];Fb(c[d>>2]|0,c[c[b>>2]>
x3e;2]|0);c[c[b>>2]>>2]=0}c[(c[b>>2]|0)+32>>2]=0;c[(c[b>>2]|0)+36>>2
]=0;i=e;return}function he(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f;e=f+4|0;c[d>>2]=b;a[e>>0]=0;if((c[(c[d
x3e;>2]|0)+32>>2]|0)>>>0>=(c[(c[d>>2]|0)+36>>2]|0)>>>0){b=
a[e>>0]|0;i=f;return b|0}d=(c[d>>2]|0)+32|0;b=c[d>>2]|0;c[d>>2]=b+1;a[e>>0]=a[
b>>0]|0;b=a[e>>0]|0;i=f;return b|0}function ie(e){e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;f=j+4|0;g=j;h=j+8|0
;c[f>>2]=e;b[h>>1]=0;c[g>>2]=c[(c[f>>2]|0)+32>>2];if(((c[g>>2]|0)+1|
0)>>>0>=(c[(c[f>>2]|0)+36>>2]|0)>>>0){g=c[g>>2]|0;e=c[f>
x3e;2]|0;e=e+32|0;c[e>>2]=g;e=b[h>>1]|0;i=j;return e|0}c[g>>2]=(c[g>>2]|0)+2;b[h>
x3e;1]=a[(c[g>>2]|0)+-2>>0]<<16>>16<<8|d[(c[g>>2]|0)+-2+1>>
;0]<<0;g=c[g>>2]|0;e=c[f>>2]|0;e=e+32|0;c[e>>2]=g;e=b[h>>1]|0;i=j;return e|0}function
je(b){b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=b;c[g>>2]=0;c[f>>2]=c[(c
[e>>2]|0)+32>>2];if(((c[f>>2]|0)+3|0)>>>0>=(c[(c[e>>2]|0)+36>
x3e;2]|0)>>>0){f=c[f>>2]|0;b=c[e>>2]|0;b=b+32|0;c[b>>2]=f;b=c[g>>2]|0;i=h
;return b|0}c[f>>2]=(c[f>>2]|0)+4;c[g>>2]=a[(c[f>>2]|0)+-4>>0]<<24|d
[(c[f>>2]|0)+-4+1>>0]<<16|d[(c[f>>2]|0)+-4+2>>0]<<8|d[(c[f>>
;2]|0)+-4+3>>0]<<0;f=c[f>>2]|0;b=c[e>>2]|0;b=b+32|0;c[b>>2]=f;b=c[g>>
;2]|0;i=h;return b|0}function ke(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+9|0;f=j+4|0;g=j;h=j+8|0;c[f>>
;2]=b;c[g>>2]=d;a[h>>0]=0;c[c[g>>2]>>2]=0;d=c[f>>2]|0;if(c[(c[f>>2]|
0)+20>>2]|0)if((Wa[c[d+20>>2]&31](c[f>>2]|0,c[(c[f>>2]|0)+8>>2]|0,h,1)|0)!=
1)d=6;else d=5;else if((c[d+8>>2]|0)>>>0<(c[(c[f>>2]|0)+4>>2]|0)>>
x3e;0){a[h>>0]=a[(c[c[f>>2]>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)>>0]|0;d=5
}else d=6;if((d|0)==5){g=(c[f>>2]|0)+8|0;c[g>>2]=(c[g>>2]|0)+1;a[e>>0]=a[h>>0]|
0;h=a[e>>0]|0;i=j;return h|0}else if((d|0)==6){c[c[g>>2]>>2]=85;a[e>>0]=0;h=a[e>>
;0]|0;i=j;return h|0}return 0}function le(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;v=i;i
=i+48|0;j=v+36|0;k=v+32|0;l=v+28|0;m=v+24|0;o=v+20|0;p=v+40|0;n=v+16|0;t=v+12|0;s=v+8|0;r=v+4|0;q=v;c[k>>2]=f;c[l>
;>2]=g;c[m>>2]=h;a[p>>0]=0;if(!((c[l>>2]|0)!=0&(c[k>>2]|0)!=0)){c[j>>
;2]=6;u=c[j>>2]|0;i=v;return u|0}c[n>>2]=c[(c[k>>2]|0)+32>>2];c[o>>2]=0;a:while
(1){switch(d[c[l>>2]>>0]|0){case 4:{c[o>>2]=ee(c[k>>2]|0,e[(c[l>>2]|0)+2>
x3e;1]|0)|0;if(c[o>>2]|0)break a;a[p>>0]=1;c[n>>2]=c[(c[k>>2]|0)+32>>2];c[l>
;>2]=(c[l>>2]|0)+4;continue a}case 25:case 24:{c[q>>2]=d[(c[l>>2]|0)+1>>0];if(((c[n
>>2]|0)+(c[q>>2]|0)|0)>>>0>(c[(c[k>>2]|0)+36>>2]|0)>>>
;0){u=8;break a}if((d[c[l>>2]>>0]|0)==24){c[r>>2]=(c[m>>2]|0)+(e[(c[l>>2]|0)+2
>>1]|0);Ss(c[r>>2]|0,c[n>>2]|0,c[q>>2]|0)|0}c[n>>2]=(c[n>>2]|0)+(c[q
>>2]|0);c[l>>2]=(c[l>>2]|0)+4;continue a}case 9:case 8:{h=c[n>>2]|0;c[n>>2]=h+
1;c[t>>2]=d[h>>0];c[s>>2]=24;break}case 12:case 13:{c[n>>2]=(c[n>>2]|0)+2;c[t
x3e;>2]=((d[(c[n>>2]|0)+-2>>0]&65535)<<8|(d[(c[n>>2]|0)+-2+1>>0]&
;65535)<<0)&65535;c[s>>2]=16;break}case 14:case 15:{c[n>>2]=(c[n>>2]|0)+2;c[t>
x3e;2]=((d[(c[n>>2]|0)+-2+1>>0]&65535)<<8|(d[(c[n>>2]|0)+-2>>0]&65535
)<<0)&65535;c[s>>2]=16;break}case 16:case 17:{c[n>>2]=(c[n>>2]|0)+4;c[t>>
2]=d[(c[n>>2]|0)+-4>>0]<<24|d[(c[n>>2]|0)+-4+1>>0]<<16|d[(c[n>
x3e;2]|0)+-4+2>>0]<<8|d[(c[n>>2]|0)+-4+3>>0]<<0;c[s>>2]=0;break}case
18:case 19:{c[n>>2]=(c[n>>2]|0)+4;c[t>>2]=d[(c[n>>2]|0)+-4+3>>0]<<24
|d[(c[n>>2]|0)+-4+2>>0]<<16|d[(c[n>>2]|0)+-4+1>>0]<<8|d[(c[n>
x3e;2]|0)+-4>>0]<<0;c[s>>2]=0;break}case 20:case 21:{c[n>>2]=(c[n>>2]|0)+3;c[t
>>2]=d[(c[n>>2]|0)+-3>>0]<<16|d[(c[n>>2]|0)+-3+1>>0]<<8|d[(
c[n>>2]|0)+-3+2>>0]<<0;c[s>>2]=8;break}case 22:case 23:{c[n>>2]=(c[n>>
;2]|0)+3;c[t>>2]=d[(c[n>>2]|0)+-3+2>>0]<<16|d[(c[n>>2]|0)+-3+1>>0]
x3c;<8|d[(c[n>>2]|0)+-3>>0]<<0;c[s>>2]=8;break}default:{u=19;break a}}if(d[c[l>
;>2]>>0]&1|0)c[t>>2]=c[t>>2]<<c[s>>2]>>c[s>>2];c
[r>>2]=(c[m>>2]|0)+(e[(c[l>>2]|0)+2>>1]|0);switch(d[(c[l>>2]|0)+1>>0
]|0){case 1:{a[c[r>>2]>>0]=c[t>>2];break}case 2:{b[c[r>>2]>>1]=c[t>>
2];break}case 4:{c[c[r>>2]>>2]=c[t>>2];break}default:c[c[r>>2]>>2]=c[t>
x3e;2]}c[l>>2]=(c[l>>2]|0)+4}if((u|0)==8)c[o>>2]=85;else if((u|0)==19)c[(c[k>>2]|0)+32
x3e;>2]=c[n>>2];if(a[p>>0]|0)ge(c[k>>2]|0);c[j>>2]=c[o>>2];u=c[j>>
;2]|0;i=v;return u|0}function me(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+32|0;d=f+16|0;g=f+12|0;e=f+8|0;b=f;c[g>>2]=a
;a=c[g>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];a=c[b+4>>2]|0;if(!(
c[b>>2]|0)){g=c[b+4>>2]|0;c[d>>2]=(a|0)>=0?g:0-g|0;g=c[d>>2]|0;i=f;return g|0}if(!a
){g=c[b>>2]|0;c[d>>2]=(c[b>>2]|0)>=0?g:0-g|0;g=c[d>>2]|0;i=f;return g|0}c[e>
x3e;2]=ae(b)|0;be(b);c[b>>2]=ce(c[b>>2]|0)|0;a=c[b>>2]|0;b=c[e>>2]|0;if((c[e>>
2]|0)>0){c[d>>2]=a+(1<<b-1)>>c[e>>2];g=c[d>>2]|0;i=f;return g|0}else{c[d
x3e;>2]=a<<0-b;g=c[d>>2]|0;i=f;return g|0}return 0}function ne(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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>>2]=a;c[f>>2]=b;c[g
>>2]=d;c[h>>2]=e;c[k>>2]=cc(c[m>>2]|0,c[g>>2]|0,j)|0;if(!((c[j>>2]|0
)==0&(c[f>>2]|0)!=0)){d=c[j>>2]|0;m=c[h>>2]|0;c[m>>2]=d;m=c[k>>2]|0;i=l;return
m|0}Ss(c[k>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;d=c[j>>2]|0;m=c[h>>2]|0;c[m>>
;2]=d;m=c[k>>2]|0;i=l;return m|0}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;j=i;i=i+16|0;e=j+12|0;f=
j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[f>>2]|0)a=(cs(c[f>>2]|0)|
0)+1|0;else a=0;c[h>>2]=a;h=ne(c[e>>2]|0,c[f>>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=j;
return h|0}function pe(b,d,e){b=b|0;d=d|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]=b;c[g>
;>2]=d;c[h>>2]=e;while(1){if((c[h>>2]|0)>>>0<=1)break;if(!(a[c[g>>2]>
;>0]|0))break;e=c[g>>2]|0;c[g>>2]=e+1;e=a[e>>0]|0;d=c[f>>2]|0;c[f>>2]=d+1
;a[d>>0]=e;c[h>>2]=(c[h>>2]|0)+-1}a[c[f>>2]>>0]=0;i=j;return (a[c[g>>
;2]>>0]|0)!=0|0}function qe(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]=c[f>>2];if(re(c[e>>2]|0)|0){c[b>>2]=0;f=c[b>>2]|0;i=d;return f|0}else{c[b>
;>2]=153;f=c[b>>2]|0;i=d;return f|0}return 0}function re(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16
|0;d=h+12|0;f=h+8|0;g=h+4|0;e=h;c[d>>2]=a;c[g>>2]=c[(c[d>>2]|0)+8>>2];c[f>>2]=
c[(c[d>>2]|0)+40>>2];do if(!(c[(c[d>>2]|0)+40>>2]|0)){c[f>>2]=bc(c[g>>
;2]|0,608,e)|0;if((c[e>>2]|0)==0?(c[e>>2]=se(c[f>>2]|0,c[g>>2]|0)|0,(c[e>>2]|0
)==0):0){c[(c[d>>2]|0)+40>>2]=c[f>>2];break}c[b>>2]=0;g=c[b>>2]|0;i=h;return g
|0}while(0);c[b>>2]=c[(c[d>>2]|0)+40>>2];g=c[b>>2]|0;i=h;return g|0}function se(a,d){a=a
|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;f=h+8|0;j=h+4|0;g=h;c[f>>2]=a;c[j>>2]=d;c[(c[f>
x3e;2]|0)+8>>2]=c[j>>2];c[(c[f>>2]|0)+432>>2]=32;a=hc(c[j>>2]|0,16,0,c[(c[f>
;>2]|0)+432>>2]|0,0,g)|0;c[(c[f>>2]|0)+436>>2]=a;a=c[f>>2]|0;if(c[g>>2]|0
){te(a)|0;c[e>>2]=c[g>>2];j=c[e>>2]|0;i=h;return j|0}else{b[a+440>>1]=0;b[(c[f>>
;2]|0)+442>>1]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>>2]|0)+388>>2]=0;c[(c[f>
x3e;2]|0)+24>>2]=0;c[(c[f>>2]|0)+392>>2]=0;c[c[f>>2]>>2]=0;c[(c[f>>2
]|0)+4>>2]=0;c[e>>2]=0;j=c[e>>2]|0;i=h;return j|0}return 0}function te(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;c[f>>2]=c[(c[e>>2]|0)+8>>2];b[(c[e>>2]|0)+440
>>1]=0;b[(c[e>>2]|0)+442>>1]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);
c[(c[e>>2]|0)+24>>2]=0;c[(c[e>>2]|0)+20>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2
]|0)+436>>2]|0);c[(c[e>>2]|0)+436>>2]=0;c[(c[e>>2]|0)+432>>2]=0;c[(c[e>
x3e;2]|0)+428>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+392>>2]|0);c[(c[e>>2]|0)+392>
;>2]=0;c[(c[e>>2]|0)+388>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[c[e>>2]>>
;2]=0;Fb(c[f>>2]|0,c[e>>2]|0);c[e>>2]=0;i=d;return 0}function ue(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];if(!(c[(c[b>>2]|0)+40>>2]|0)){i=d;return
}te(c[(c[b>>2]|0)+40>>2]|0)|0;c[(c[b>>2]|0)+40>>2]=0;i=d;return}function ve(a,b){a=a|0;b
=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=qc(380,c[f>>2]|0)|0;if(c[g>>2]|0){c[d>>2]=c[g>>2];b=c[d>
x3e;2]|0;i=k;return b|0}if(!(c[e>>2]|0)){c[d>>2]=0;b=c[d>>2]|0;i=k;return b|0}c[j>>2]=Wc
(c[(c[e>>2]|0)+4>>2]|0,11340)|0;if(c[j>>2]|0?(c[h>>2]=c[(c[c[j>>2]>>
2]|0)+20>>2],c[h>>2]|0):0){c[d>>2]=Ya[c[(c[h>>2]|0)+16>>2]&127](c[e>
x3e;2]|0,c[f>>2]|0)|0;b=c[d>>2]|0;i=k;return b|0}c[d>>2]=0;b=c[d>>2]|0;i=k;return b|0}function
we(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;q=i;i=i+48|0;f=q+32|0;g=q+28|0;h=q+24|0;k=q+20|0;j=
q+16|0;o=q+12|0;l=q+8|0;n=q+4|0;m=q;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=0;c[n>>
;2]=c[(c[f>>2]|0)+100>>2];a[(c[f>>2]|0)+708>>0]=0;if((c[(c[f>>2]|0)+712>
x3e;2]|0)==0?(d=xe(c[f>>2]|0,0)|0,c[k>>2]=d,d|0):0){p=c[k>>2]|0;i=q;return p|0}c[j>>2]=c
[(c[f>>2]|0)+712>>2];c[o>>2]=c[(c[j>>2]|0)+8>>2];if((c[g>>2]|0)!=(c[
c[o>>2]>>2]|0)){c[k>>2]=6;p=c[k>>2]|0;i=q;return p|0}c[l>>2]=0;while(1){if((c[
l>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;if((c[(c[h>>2]|0)+(c[l>
;>2]<<2)>>2]|0)<-65536){p=9;break}if((c[(c[h>>2]|0)+(c[l>>2]<<2)>
;>2]|0)>65536){p=9;break}c[l>>2]=(c[l>>2]|0)+1}if((p|0)==9){c[k>>2]=6;p=c[k>>2
]|0;i=q;return p|0}if((c[(c[j>>2]|0)+36>>2]|0)==0?(p=ye(c[f>>2]|0)|0,c[k>>2]=p,p|0):0){p
=c[k>>2]|0;i=q;return p|0}a:do if(!(c[(c[j>>2]|0)+4>>2]|0)){p=hc(c[n>>2]|0,4,0,c[g>
x3e;2]|0,0,k)|0;c[(c[j>>2]|0)+4>>2]=p;if(c[k>>2]|0){p=c[k>>2]|0;i=q;return p|0}else{c[m
x3e;>2]=1;break}}else{c[m>>2]=0;c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c
[g>>2]|0)>>>0)break a;if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[l>>2]<<2
)>>2]|0)!=(c[(c[h>>2]|0)+(c[l>>2]<<2)>>2]|0))break;c[l>>2]=(c[l>
;>2]|0)+1}c[m>>2]=2}while(0);c[c[j>>2]>>2]=c[g>>2];Ss(c[(c[j>>2]|0)+4>
;>2]|0,c[h>>2]|0,c[g>>2]<<2|0)|0;a[(c[f>>2]|0)+708>>0]=1;if(!(c[(c[f>
;>2]|0)+672>>2]|0)){p=c[k>>2]|0;i=q;return p|0}switch(c[m>>2]|0){case 2:{Fb(c[n>>2]|
0,c[(c[f>>2]|0)+672>>2]|0);c[(c[f>>2]|0)+672>>2]=0;c[(c[f>>2]|0)+672>>
;2]=0;ze(c[f>>2]|0,c[(c[f>>2]|0)+104>>2]|0)|0;p=c[k>>2]|0;i=q;return p|0}case 1:{Ae(c[f
x3e;>2]|0,c[(c[f>>2]|0)+104>>2]|0)|0;p=c[k>>2]|0;i=q;return p|0}default:{p=c[k>>2]|
0;i=q;return p|0}}return 0}function xe(b,d){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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,
x=0,y=0;y=i;i=i+96|0;k=y+92|0;s=y+88|0;r=y+84|0;o=y+80|0;f=y+76|0;u=y+72|0;h=y+68|0;m=y+64|0;n=y+60|0;v=y+56|0;p=y+52|0;x=y+48|0
;t=y+44|0;q=y+40|0;l=y+24|0;g=y+4|0;w=y;c[k>>2]=b;c[s>>2]=d;c[r>>2]=c[(c[k>>2]|0)+104>
;>2];c[o>>2]=c[(c[k>>2]|0)+100>>2];c[u>>2]=0;a:do if(!(c[(c[k>>2]|0)+712
x3e;>2]|0)){d=Wa[c[(c[k>>2]|0)+508>>2]&31](c[k>>2]|0,1735811442,c[r>>2]|0,f)|0
;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0}d=Wa[c[(c[k>>2]|0)+508>>2]&31](c[k>
;>2]|0,1719034226,c[r>>2]|0,f)|0;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0}c[h>>
2]=Mc(c[r>>2]|0)|0;d=le(c[r>>2]|0,5428,l)|0;c[u>>2]=d;if(d|0){x=c[u>>2]|0;i=y;return x|0
}if(((((((c[l>>2]|0)==65536?(e[l+6>>1]|0|0)==2:0)?(e[l+10>>1]|0|0)==20:0)?(e[l+8>>1]|0|0
)<=16382:0)?(e[l+14>>1]|0|0)==(4+((e[l+8>>1]|0)<<2)|0):0)?(e[l+12>>1]|0|0)<=32511
:0)?(d=(e[l+4>>1]|0)+((e[l+8>>1]|0)*20|0)+(_(e[l+12>>1]|0,e[l+14>>1]|0)|0)|0,d>>
;>0<=(c[f>>2]|0)>>>0):0){f=bc(c[o>>2]|0,40,u)|0;c[(c[k>>2]|0)+712>
x3e;2]=f;if(c[u>>2]|0){x=c[u>>2]|0;i=y;return x|0}f=20+((e[l+8>>1]|0)*24|0)+((e[l+12>>1]|
0)<<3)+((_(e[l+12>>1]|0,e[l+8>>1]|0)|0)<<2)|0;c[(c[(c[k>>2]|0)+712>>
2]|0)+12>>2]=f+((e[l+8>>1]|0)*5|0);c[v>>2]=bc(c[o>>2]|0,c[(c[(c[k>>2]|0)+712
x3e;>2]|0)+12>>2]|0,u)|0;if(c[u>>2]|0){x=c[u>>2]|0;i=y;return x|0}c[(c[(c[k>>2]|0)+
712>>2]|0)+8>>2]=c[v>>2];c[c[v>>2]>>2]=e[l+8>>1];c[(c[v>>2
]|0)+4>>2]=-1;c[(c[v>>2]|0)+8>>2]=e[l+12>>1];c[(c[v>>2]|0)+12>>2]=(c
[v>>2]|0)+20;c[(c[v>>2]|0)+16>>2]=(c[(c[v>>2]|0)+12>>2]|0)+((e[l+8>>
1]|0)*24|0);c[p>>2]=(c[(c[v>>2]|0)+16>>2]|0)+((e[l+12>>1]|0)<<3);c[m>>
;2]=0;while(1){b=c[p>>2]|0;if((c[m>>2]|0)>=(e[l+12>>1]|0|0))break;c[(c[(c[v>>2]|0)+
16>>2]|0)+(c[m>>2]<<3)>>2]=b;c[p>>2]=(c[p>>2]|0)+((e[l+8>>
1]|0)<<2);c[m>>2]=(c[m>>2]|0)+1}c[x>>2]=b;c[m>>2]=0;while(1){if((c[m>>
;2]|0)>=(e[l+8>>1]|0|0))break;c[(c[(c[v>>2]|0)+12>>2]|0)+((c[m>>2]|0)*24|0)>
x3e;2]=c[x>>2];c[x>>2]=(c[x>>2]|0)+5;c[m>>2]=(c[m>>2]|0)+1}h=Kc(c[r>>
;2]|0,(c[h>>2]|0)+(e[l+4>>1]|0)|0)|0;c[u>>2]=h;if(h|0){x=c[u>>2]|0;i=y;return x|0}c[t>
;>2]=c[(c[v>>2]|0)+12>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(e[l+8>>
;1]|0|0))break;h=le(c[r>>2]|0,5464,g)|0;c[u>>2]=h;if(h|0){j=50;break}c[(c[t>>2]|0)+16>>2
]=c[g>>2];c[(c[t>>2]|0)+4>>2]=c[g+4>>2];c[(c[t>>2]|0)+8>>2]=c[g+8>
;>2];c[(c[t>>2]|0)+12>>2]=c[g+12>>2];c[(c[t>>2]|0)+20>>2]=e[g+18>>
;1];a[c[c[t>>2]>>2]>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>24;a[(c[c[t
x3e;>2]>>2]|0)+1>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>16;a[(c[c[t>>
;2]>>2]|0)+2>>0]=(c[(c[t>>2]|0)+16>>2]|0)>>>8;a[(c[c[t>>2]>
;>2]|0)+3>>0]=c[(c[t>>2]|0)+16>>2];a[(c[c[t>>2]>>2]|0)+4>>0]=0;
c[t>>2]=(c[t>>2]|0)+24;c[m>>2]=(c[m>>2]|0)+1}if((j|0)==50){x=c[u>>2]|0;i=y;return
x|0}c[q>>2]=c[(c[v>>2]|0)+16>>2];c[m>>2]=0;while(1){if((c[m>>2]|0)>=(e[l
+12>>1]|0|0))break a;j=ee(c[r>>2]|0,4+((e[l+8>>1]|0)<<2)|0)|0;c[u>>2]=j;if(j|0
)break;j=(ie(c[r>>2]|0)|0)&65535;c[(c[q>>2]|0)+4>>2]=j;ie(c[r>>2]|0)|0;c[n>>
;2]=0;while(1){b=c[r>>2]|0;if((c[n>>2]|0)>=(e[l+8>>1]|0|0))break;j=je(b)|0;c[(c[c[q>>
;2]>>2]|0)+(c[n>>2]<<2)>>2]=j;c[n>>2]=(c[n>>2]|0)+1}ge(b);c[m>
x3e;2]=(c[m>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+8}x=c[u>>2]|0;i=y;return x|0}c[u>>2]=
8;x=c[u>>2]|0;i=y;return x|0}while(0);if(!(c[s>>2]|0)){x=c[u>>2]|0;i=y;return x|0}c[v>>2
]=bc(c[o>>2]|0,c[(c[(c[k>>2]|0)+712>>2]|0)+12>>2]|0,u)|0;if(c[u>>2]|0){x=c[u
x3e;>2]|0;i=y;return x|0}Ss(c[v>>2]|0,c[(c[(c[k>>2]|0)+712>>2]|0)+8>>2]|0,c[(c[(c[k
>>2]|0)+712>>2]|0)+12>>2]|0)|0;c[(c[v>>2]|0)+12>>2]=(c[v>>2]|0)+20;c
[(c[v>>2]|0)+16>>2]=(c[(c[v>>2]|0)+12>>2]|0)+((c[c[v>>2]>>2]|0)*24|0
);c[p>>2]=(c[(c[v>>2]|0)+16>>2]|0)+(c[(c[v>>2]|0)+8>>2]<<3);c[w>
;>2]=0;while(1){if((c[w>>2]|0)>>>0>=(c[(c[v>>2]|0)+8>>2]|0)>>
x3e;0)break;c[(c[(c[v>>2]|0)+16>>2]|0)+(c[w>>2]<<3)>>2]=c[p>>2];c[p
x3e;>2]=(c[p>>2]|0)+(c[c[v>>2]>>2]<<2);c[w>>2]=(c[w>>2]|0)+1}c[
t>>2]=c[(c[v>>2]|0)+12>>2];c[x>>2]=c[p>>2];c[w>>2]=0;while(1){if((c[
w>>2]|0)>>>0>=(c[c[v>>2]>>2]|0)>>>0)break;c[c[t>>2]
x3e;>2]=c[x>>2];b=c[t>>2]|0;do if((c[(c[t>>2]|0)+16>>2]|0)!=2003265652){d=c[t>
x3e;2]|0;if((c[b+16>>2]|0)==2003072104){c[d>>2]=10521;break}b=c[t>>2]|0;if((c[d+16>>2]|0
)==1869640570){c[b>>2]=10527;break}if((c[b+16>>2]|0)==1936486004)c[c[t>>2]>>2]=10539}else
c[b>>2]=12384;while(0);c[x>>2]=(c[x>>2]|0)+5;c[t>>2]=(c[t>>2]|0)+24;c[w>
x3e;2]=(c[w>>2]|0)+1}c[c[s>>2]>>2]=c[v>>2];x=c[u>>2]|0;i=y;return x|0}function
ye(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0;o=i;i=i+64|0;b=o+56|0;n=o+52|0;l=o+48|0;d=o+44|0;f=o+40|0;j=o+36|0;
k=o+32|0;h=o+24|0;m=o+20|0;g=o;c[b>>2]=a;c[n>>2]=c[(c[b>>2]|0)+104>>2];c[l>>2]=
c[(c[n>>2]|0)+28>>2];c[d>>2]=c[(c[b>>2]|0)+712>>2];b=Wa[c[(c[b>>2]|0
)+508>>2]&31](c[b>>2]|0,1735811442,c[n>>2]|0,o+28|0)|0;c[f>>2]=b;if(b|0){n=c[f>
;>2]|0;i=o;return n|0}c[h>>2]=Mc(c[n>>2]|0)|0;b=le(c[n>>2]|0,5496,g)|0;c[f>>2]=b;if
(b|0){n=c[f>>2]|0;i=o;return n|0}c[(c[d>>2]|0)+24>>2]=e[g+6>>1];c[(c[d>>2]|0)+
32>>2]=e[g+12>>1];c[m>>2]=(c[h>>2]|0)+(c[g+16>>2]|0);if((c[g>>2]|0)==
65536?(e[g+4>>1]|0|0)==(c[c[(c[d>>2]|0)+8>>2]>>2]&65535|0):0){b=hc(c[l>>2
]|0,4,0,(c[(c[d>>2]|0)+32>>2]|0)+1|0,0,f)|0;c[(c[d>>2]|0)+36>>2]=b;if(c[f>>2]|
0){n=c[f>>2]|0;i=o;return n|0}a=c[n>>2]|0;b=(c[(c[d>>2]|0)+32>>2]|0)+1|0;if((e[g+14>
;>1]|0)&1|0){b=ee(a,b<<2)|0;c[f>>2]=b;if(b|0){n=c[f>>2]|0;i=o;return n|0}c[j>>
2]=0;while(1){if((c[j>>2]|0)>>>0>(c[(c[d>>2]|0)+32>>2]|0)>>>0)break
;b=c[m>>2]|0;b=b+(je(c[n>>2]|0)|0)|0;c[(c[(c[d>>2]|0)+36>>2]|0)+(c[j>>2]<
x3c;2)>>2]=b;c[j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|0)}else{b=ee(a,b<<1)|0;c[f>
x3e;2]=b;if(b|0){n=c[f>>2]|0;i=o;return n|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0
x3e;(c[(c[d>>2]|0)+32>>2]|0)>>>0)break;b=c[m>>2]|0;b=b+(((ie(c[n>>2]|0)|0
)&65535)<<1)|0;c[(c[(c[d>>2]|0)+36>>2]|0)+(c[j>>2]<<2)>>2]=b;c[
j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|0)}if(!(c[(c[d>>2]|0)+24>>2]|0)){n=c[f>>
;2]|0;i=o;return n|0}m=hc(c[l>>2]|0,4,0,_(e[g+4>>1]|0,c[(c[d>>2]|0)+24>>2]|0)|0,0,f)|0;c
[(c[d>>2]|0)+28>>2]=m;if(c[f>>2]|0){n=c[f>>2]|0;i=o;return n|0}m=Kc(c[n>>2]|0,(
c[h>>2]|0)+(c[g+8>>2]|0)|0)|0;c[f>>2]=m;if(m|0){n=c[f>>2]|0;i=o;return n|0}m=ee(c[n>
;>2]|0,(_(c[(c[d>>2]|0)+24>>2]|0,e[g+4>>1]|0)|0)<<1)|0;c[f>>2]=m;if(m|0){
n=c[f>>2]|0;i=o;return n|0}c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[d>
;>2]|0)+24>>2]|0)>>>0)break;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>
;0>=(e[g+4>>1]|0)>>>0)break;l=(ie(c[n>>2]|0)|0)<<16>>16<<2
;m=_(c[j>>2]|0,e[g+4>>1]|0)|0;c[(c[(c[d>>2]|0)+28>>2]|0)+(m+(c[k>>2]|0)<
x3c;2)>>2]=l;c[k>>2]=(c[k>>2]|0)+1}c[j>>2]=(c[j>>2]|0)+1}ge(c[n>>2]|
0);n=c[f>>2]|0;i=o;return n|0}c[f>>2]=8;n=c[f>>2]|0;i=o;return n|0}function ze(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;n=i;i=i+32|0;h=n+24|0;j=n+20|0;l=n+16|0;f=n+12|0;g=n+8|0;k=n+4|0;m=n;c[h>>2]=d;c[j>
;>2]=e;c[f>>2]=c[(c[j>>2]|0)+28>>2];c[l>>2]=Wa[c[(c[h>>2]|0)+508>>
;2]&31](c[h>>2]|0,1668707360,c[j>>2]|0,g)|0;if(c[l>>2]|0){c[(c[h>>2]|0)+668>
x3e;2]=0;c[(c[h>>2]|0)+672>>2]=0;c[l>>2]=0;m=c[l>>2]|0;i=n;return m|0}c[(c[h>>
2]|0)+668>>2]=((c[g>>2]|0)>>>0)/2|0;g=hc(c[f>>2]|0,2,0,c[(c[h>>2]|0)+668
x3e;>2]|0,0,l)|0;c[(c[h>>2]|0)+672>>2]=g;if(c[l>>2]|0){m=c[l>>2]|0;i=n;return m|0}g
=ee(c[j>>2]|0,c[(c[h>>2]|0)+668>>2]<<1)|0;c[l>>2]=g;if(g|0){m=c[l>>2
]|0;i=n;return m|0}c[k>>2]=c[(c[h>>2]|0)+672>>2];c[m>>2]=(c[k>>2]|0)+(c[(c[h
x3e;>2]|0)+668>>2]<<1);while(1){d=c[j>>2]|0;if((c[k>>2]|0)>>>0>=(
c[m>>2]|0)>>>0)break;g=ie(d)|0;b[c[k>>2]>>1]=g;c[k>>2]=(c[k>>2]|
0)+2}ge(d);if(!(a[(c[h>>2]|0)+708>>0]|0)){m=c[l>>2]|0;i=n;return m|0}c[l>>2]=Ae(c[h>
;>2]|0,c[j>>2]|0)|0;m=c[l>>2]|0;i=n;return m|0}function Ae(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,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=i;i=i+96|0;h=C+84|0;j=C+80|0;n=C+76|0;u=C+72|0;g=C+68|0;f
=C+64|0;y=C+60|0;v=C+56|0;o=C+52|0;p=C+48|0;s=C+44|0;B=C+40|0;r=C+36|0;q=C+32|0;l=C+28|0;x=C+24|0;t=C+20|0;m=C+16|0;z=C+12|0;A=C
+8|0;k=C+4|0;w=C;c[h>>2]=a;c[j>>2]=d;c[u>>2]=c[(c[j>>2]|0)+28>>2];c[B>>
;2]=0;c[r>>2]=0;c[q>>2]=0;c[l>>2]=c[(c[h>>2]|0)+712>>2];if(!(c[l>>2]|
0)){c[n>>2]=0;z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>
;>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>
;2]|0;i=C;return B|0}if(!(c[(c[h>>2]|0)+672>>2]|0)){c[n>>2]=0;z=c[u>>2]|0;A=c[B>>
;2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;
B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}c[n>>2]=Wa[c[(c[h>>2]|
0)+508>>2]&31](c[h>>2]|0,1668702578,c[j>>2]|0,f)|0;if(c[n>>2]|0){c[n>>2]=
0;z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[
r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}f
=ee(c[j>>2]|0,c[f>>2]|0)|0;c[n>>2]=f;if(f|0){c[n>>2]=0;z=c[u>>2]|0;A=c[B>
x3e;2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|
0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>2]|0;i=C;return B|0}c[g>>2]=(c[(c[j>>2]|
0)+32>>2]|0)-(c[c[j>>2]>>2]|0);a:do if((je(c[j>>2]|0)|0)==65536){c[B>>2]=hc(c[
u>>2]|0,4,0,c[c[l>>2]>>2]|0,0,n)|0;if(((c[n>>2]|0)==0?(c[r>>2]=hc(c[u>>
;2]|0,4,0,c[c[l>>2]>>2]|0,0,n)|0,(c[n>>2]|0)==0):0)?(c[q>>2]=hc(c[u>>2]|0,4,0,
c[c[l>>2]>>2]|0,0,n)|0,(c[n>>2]|0)==0):0){c[y>>2]=(ie(c[j>>2]|0)|0)&65535
;g=c[g>>2]|0;c[v>>2]=g+((ie(c[j>>2]|0)|0)&65535);c[p>>2]=0;while(1){if((c[p>
x3e;2]|0)>>>0>=(c[y>>2]&4095)>>>0)break a;c[z>>2]=(ie(c[j>>
;2]|0)|0)&65535;c[A>>2]=(ie(c[j>>2]|0)|0)&65535;do if(c[A>>2]&32768|0){c[s>>
;2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[c[l>>2]>>2]|0)>>>0)break;
g=(ie(c[j>>2]|0)|0)<<16>>16<<2;c[(c[B>>2]|0)+(c[s>>2]<<2)
x3e;>2]=g;c[s>>2]=(c[s>>2]|0)+1}b:do if(c[A>>2]&16384|0){c[s>>2]=0;while(1){if
((c[s>>2]|0)>>>0>=(c[c[l>>2]>>2]|0)>>>0)break;g=(ie(c[j>
x3e;2]|0)|0)<<16>>16<<2;c[(c[r>>2]|0)+(c[s>>2]<<2)>>2]=g;c
[s>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[c[l
x3e;>2]>>2]|0)>>>0)break b;g=(ie(c[j>>2]|0)|0)<<16>>16<<2;
c[(c[q>>2]|0)+(c[s>>2]<<2)>>2]=g;c[s>>2]=(c[s>>2]|0)+1}}while(0);c[k
>>2]=Be(c[l>>2]|0,c[A>>2]&65535,c[B>>2]|0,c[r>>2]|0,c[q>>2]|0)|
0;if(c[k>>2]|0?c[A>>2]&8192|0:0){c[o>>2]=(c[(c[j>>2]|0)+32>>2]|0)-(c[c[j
x3e;>2]>>2]|0);c[(c[j>>2]|0)+32>>2]=(c[c[j>>2]>>2]|0)+(c[v>>2]|
0);c[t>>2]=Ce(c[j>>2]|0,x)|0;if(!(c[x>>2]|0))a=c[(c[h>>2]|0)+668>>2]|0;else a=
c[x>>2]|0;c[m>>2]=De(c[j>>2]|0,a)|0;c:do if(!((c[t>>2]|0)==0|(c[m>>2]|0)==0)){
g=(c[t>>2]|0)==(-1|0);c[s>>2]=0;if(g)while(1){if((c[s>>2]|0)>>>0>=(c[(c[h>
;>2]|0)+668>>2]|0)>>>0)break c;g=b[(c[(c[h>>2]|0)+672>>2]|0)+(c[s>>2
]<<1)>>1]|0;g=g+(Mb(b[(c[m>>2]|0)+(c[s>>2]<<1)>>1]|0,c[k>>
2]|0)|0)&65535;b[(c[(c[h>>2]|0)+672>>2]|0)+(c[s>>2]<<1)>>1]=g;c[s>
x3e;2]=(c[s>>2]|0)+1}else while(1){if((c[s>>2]|0)>>>0>=(c[x>>2]|0)>>
x3e;0)break c;c[w>>2]=e[(c[t>>2]|0)+(c[s>>2]<<1)>>1];g=b[(c[(c[h>>2]|
0)+672>>2]|0)+(c[w>>2]<<1)>>1]|0;g=g+(Mb(b[(c[m>>2]|0)+(c[s>>2]<
;<1)>>1]|0,c[k>>2]|0)|0)&65535;b[(c[(c[h>>2]|0)+672>>2]|0)+(c[w>>2]
x3c;<1)>>1]=g;c[s>>2]=(c[s>>2]|0)+1}}while(0);if((c[t>>2]|0)!=(-1|0)){Fb(c[u>
x3e;2]|0,c[t>>2]|0);c[t>>2]=0}Fb(c[u>>2]|0,c[m>>2]|0);c[m>>2]=0;c[v>>
;2]=(c[v>>2]|0)+(c[z>>2]|0);c[(c[j>>2]|0)+32>>2]=(c[c[j>>2]>>2]|0)+(
c[o>>2]|0);break}c[v>>2]=(c[v>>2]|0)+(c[z>>2]|0)}else{d:do if(c[A>>2]&16384
|0){c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=c[c[l>>2]>>2]<<
1>>>0)break d;ie(c[j>>2]|0)|0;c[s>>2]=(c[s>>2]|0)+1}}while(0);c[v>>2]=(c[
v>>2]|0)+(c[z>>2]|0)}while(0);c[p>>2]=(c[p>>2]|0)+1}}}else c[n>>2]=0;while(0);
ge(c[j>>2]|0);z=c[u>>2]|0;A=c[B>>2]|0;Fb(z,A);c[B>>2]=0;B=c[u>>2]|0;A=c[r>
;>2]|0;Fb(B,A);c[r>>2]=0;A=c[u>>2]|0;B=c[q>>2]|0;Fb(A,B);c[q>>2]=0;B=c[n>>
;2]|0;i=C;return B|0}function Be(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;r=i;i=i+32|0;j
=r+24|0;k=r+28|0;l=r+20|0;m=r+16|0;n=r+12|0;o=r+8|0;q=r+4|0;p=r;c[j>>2]=a;b[k>>1]=d;c[l>>2]=f;c[m
x3e;>2]=g;c[n>>2]=h;c[q>>2]=65536;c[o>>2]=0;a:while(1){if((c[o>>2]|0)>>
x3e;0>=(c[c[j>>2]>>2]|0)>>>0){a=19;break}do if(c[(c[l>>2]|0)+(c[o>>2
]<<2)>>2]|0){if(!(c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>
2]|0)){a=9;break a}if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)<0?(c
[(c[l>>2]|0)+(c[o>>2]<<2)>>2]|0)>0:0){a=9;break a}if((c[(c[(c[j>>2]|0)+4
x3e;>2]|0)+(c[o>>2]<<2)>>2]|0)>0?(c[(c[l>>2]|0)+(c[o>>2]<<
2)>>2]|0)<0:0){a=9;break a}if(!((e[k>>1]|0)&16384)){f=c[(c[(c[j>>2]|0)+4>>2]|0
)+(c[o>>2]<<2)>>2]|0;c[q>>2]=xb(c[q>>2]|0,(c[(c[(c[j>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<2)>>2]|0)>0?f:0-f|0,65536)|0;break}if((c[(c[(c[j>>2]|0)+4>
x3e;2]|0)+(c[o>>2]<<2)>>2]|0)<=(c[(c[m>>2]|0)+(c[o>>2]<<2)>
;>2]|0)){a=14;break a}if((c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)
x3e;=(c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]|0)){a=14;break a}a=c[o>>2]|0;if((c[(c[(c[
j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)<(c[(c[l>>2]|0)+(c[o>
x3e;2]<<2)>>2]|0)){c[p>>2]=xb((c[(c[(c[j>>2]|0)+4>>2]|0)+(a<<2)>
;>2]|0)-(c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]|0)|0,65536,(c[(c[l>>2]|0)+(c[o>
;>2]<<2)>>2]|0)-(c[(c[m>>2]|0)+(c[o>>2]<<2)>>2]|0)|0)|0;c[q>
;>2]=xb(c[q>>2]|0,c[p>>2]|0,65536)|0;break}else{c[p>>2]=xb((c[(c[n>>2]|0)+(a<
x3c;2)>>2]|0)-(c[(c[(c[j>>2]|0)+4>>2]|0)+(c[o>>2]<<2)>>2]|0)|0,65536
,(c[(c[n>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[l>>2]|0)+(c[o>>2]<<
;2)>>2]|0)|0)|0;c[q>>2]=xb(c[q>>2]|0,c[p>>2]|0,65536)|0;break}}while(0);c[o>>2
]=(c[o>>2]|0)+1}if((a|0)==9){c[q>>2]=0;q=c[q>>2]|0;i=r;return q|0}else if((a|0)==14){c[q>>
;2]=0;q=c[q>>2]|0;i=r;return q|0}else if((a|0)==19){q=c[q>>2]|0;i=r;return q|0}return 0}function Ce(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;p=i;i=i+48|0;e=p+40|0;f=p+36|0;q=p+32|0;n=p+28|0;m=p+24|0;o=p+20|0;
j=p+16|0;k=p+12|0;h=p+8|0;l=p+4|0;g=p;c[f>>2]=a;c[q>>2]=d;c[l>>2]=c[(c[f>>2]|0)+28>
x3e;2];c[g>>2]=0;c[g>>2]=c[g>>2];a=(he(c[f>>2]|0)|0)&255;c[m>>2]=a;c[c[q
x3e;>2]>>2]=a;if(!(c[m>>2]|0)){c[e>>2]=-1;q=c[e>>2]|0;i=p;return q|0}if(c[m>
x3e;2]&128|0){q=(he(c[f>>2]|0)|0)&255;c[m>>2]=q|(c[m>>2]&127)<<8}c[n>
;>2]=hc(c[l>>2]|0,2,0,c[m>>2]|0,0,g)|0;if(c[g>>2]|0){c[e>>2]=0;q=c[e>>2]|
0;i=p;return q|0}c[j>>2]=0;a:while(1){if((c[j>>2]|0)>=(c[m>>2]|0))break;c[o>>2]=(he
(c[f>>2]|0)|0)&255;if(c[o>>2]&128|0){c[o>>2]=c[o>>2]&127;q=ie(c[f>
x3e;2]|0)|0;a=c[j>>2]|0;c[j>>2]=a+1;b[(c[n>>2]|0)+(a<<1)>>1]=q;c[h>>
2]=q&65535;if((c[o>>2]|0)<1)break;if(((c[j>>2]|0)+(c[o>>2]|0)|0)>=(c[m>>2
]|0))break;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[o>>2]|0))continue a;a=(ie(c[f>>2]|
0)|0)&65535;a=(c[h>>2]|0)+a|0;c[h>>2]=a;q=c[j>>2]|0;c[j>>2]=q+1;b[(c[n>>2
]|0)+(q<<1)>>1]=a;c[k>>2]=(c[k>>2]|0)+1}}else{q=(he(c[f>>2]|0)|0)&255;a=c
[j>>2]|0;c[j>>2]=a+1;b[(c[n>>2]|0)+(a<<1)>>1]=q;c[h>>2]=q&65535
;if((c[o>>2]|0)<1)break;if(((c[j>>2]|0)+(c[o>>2]|0)|0)>=(c[m>>2]|0))break;c[k
x3e;>2]=0;while(1){if((c[k>>2]|0)>=(c[o>>2]|0))continue a;a=(he(c[f>>2]|0)|0)&255;a
=(c[h>>2]|0)+a|0;c[h>>2]=a;q=c[j>>2]|0;c[j>>2]=q+1;b[(c[n>>2]|0)+(q<<
;1)>>1]=a;c[k>>2]=(c[k>>2]|0)+1}}}c[e>>2]=c[n>>2];q=c[e>>2]|0;i=p;return
q|0}function De(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;n=i;i=i+48|0;k=n+32|0;e=n+28|0;f=n+24|0;l=n+20|0;j
=n+16|0;g=n+12|0;h=n+8|0;m=n+4|0;o=n;c[e>>2]=a;c[f>>2]=d;c[l>>2]=0;c[m>>2]=c[(c[e>
x3e;2]|0)+28>>2];c[o>>2]=0;c[o>>2]=c[o>>2];c[l>>2]=hc(c[m>>2]|0,2,0,
c[f>>2]|0,0,o)|0;if(c[o>>2]|0){c[k>>2]=0;o=c[k>>2]|0;i=n;return o|0}c[g>>2]=0;
while(1){if((c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0){e=19;break}c[j>>2
]=(he(c[e>>2]|0)|0)&255;a:do if(!(c[j>>2]&128|0)){o=(c[j>>2]&64|0)!=0;c[h>>
;2]=0;if(o)while(1){if((c[h>>2]|0)>>>0>(c[j>>2]&63)>>>0)break a;if((
c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break a;a=ie(c[e>>2]|0)|0;o=c[g
>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=a;c[h>>2]=(c[h>>
;2]|0)+1}else while(1){if((c[h>>2]|0)>>>0>(c[j>>2]&63)>>>0)break a;if
((c[g>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break a;a=(he(c[e>>2]|0)|0)
x3c;<24>>24;o=c[g>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=a;
c[h>>2]=(c[h>>2]|0)+1}}else{c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>(c
[j>>2]&63)>>>0)break a;if((c[g>>2]|0)>>>0>=(c[f>>2]|0)>
;>>0)break a;o=c[g>>2]|0;c[g>>2]=o+1;b[(c[l>>2]|0)+(o<<1)>>1]=0;c[h
x3e;>2]=(c[h>>2]|0)+1}}while(0);if((c[h>>2]|0)>>>0<=(c[j>>2]&63)>
;>>0){e=18;break}}if((e|0)==18){Fb(c[m>>2]|0,c[l>>2]|0);c[l>>2]=0;c[k>>2]=0;o=
c[k>>2]|0;i=n;return o|0}else if((e|0)==19){c[k>>2]=c[l>>2];o=c[k>>2]|0;i=n;return o|0}return
0}function Ee(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,t=0,u=0;u=i;i=i+48|0;g=u+44|0;h=u+40
|0;j=u+36|0;n=u+32|0;s=u+28|0;m=u+24|0;r=u+20|0;o=u+16|0;p=u+12|0;k=u+8|0;l=u+4|0;q=u;c[g>>2]=b;c[h>>2]=d;c[
j>>2]=f;c[n>>2]=0;c[s>>2]=0;c[q>>2]=c[(c[g>>2]|0)+100>>2];if((c[(c[g
>>2]|0)+712>>2]|0)==0?(d=xe(c[g>>2]|0,0)|0,c[n>>2]=d,d|0):0){r=c[q>>2]|0;t=c[s
>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}c[m>>2]=c[(c[g>>2]|0)+712
x3e;>2];c[r>>2]=c[(c[m>>2]|0)+8>>2];if((c[h>>2]|0)!=(c[c[r>>2]>>
;2]|0)){c[n>>2]=6;r=c[q>>2]|0;t=c[s>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return
t|0}c[s>>2]=hc(c[q>>2]|0,4,0,c[c[r>>2]>>2]|0,0,n)|0;if(c[n>>2]|0){r=c[q>
x3e;2]|0;t=c[s>>2]|0;Fb(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}c[k>>2]=c[(c[r>
x3e;2]|0)+12>>2];c[o>>2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[c[r>>2]
x3e;>2]|0)>>>0)break;if((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|0)>(c[(
c[k>>2]|0)+12>>2]|0)){t=10;break}if((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|
0)<(c[(c[k>>2]|0)+4>>2]|0)){t=10;break}do if((c[(c[j>>2]|0)+(c[o>>2]<<2)
x3e;>2]|0)>=(c[(c[k>>2]|0)+8>>2]|0)){f=c[o>>2]|0;if((c[(c[k>>2]|0)+12>>
;2]|0)==(c[(c[k>>2]|0)+8>>2]|0)){c[(c[s>>2]|0)+(f<<2)>>2]=0;break}else{d=xb((c
[(c[j>>2]|0)+(f<<2)>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0,65536,(c[(c[k>>
2]|0)+12>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0)|0;c[(c[s>>2]|0)+(c[o>>2]<<
;2)>>2]=d;break}}else{d=0-(xb((c[(c[j>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[k>
x3e;2]|0)+8>>2]|0)|0,65536,(c[(c[k>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+8>>2]|0)|0)|
0)|0;c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]=d}while(0);c[o>>2]=(c[o>>2]|0)+1
;c[k>>2]=(c[k>>2]|0)+24}if((t|0)==10){c[n>>2]=6;r=c[q>>2]|0;t=c[s>>2]|0;Fb(r,t
);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|0}if(!(a[(c[m>>2]|0)+16>>0]|0))Fe(c[g>>2]|
0);a:do if(c[(c[m>>2]|0)+20>>2]|0){c[l>>2]=c[(c[m>>2]|0)+20>>2];c[o>>
;2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[c[r>>2]>>2]|0)>>>0)break
a;c[p>>2]=1;while(1){if((c[p>>2]|0)>>>0>=(e[c[l>>2]>>1]|0)>>
;>0)break;if((c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]|0)<(c[(c[(c[l>>2]|0)+4
x3e;>2]|0)+(c[p>>2]<<3)>>2]|0)){t=25;break}c[p>>2]=(c[p>>2]|0)+1}if((t|0)==
25){t=0;m=xb((c[(c[s>>2]|0)+(c[o>>2]<<2)>>2]|0)-(c[(c[(c[l>>2]|0)+4>>
;2]|0)+((c[p>>2]|0)-1<<3)>>2]|0)|0,65536,(c[(c[(c[l>>2]|0)+4>>2]|0)+(c[p>
x3e;2]<<3)>>2]|0)-(c[(c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1<<3)>
;>2]|0)|0)|0;m=xb(m,(c[(c[(c[l>>2]|0)+4>>2]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(
c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1<<3)+4>>2]|0)|0,65536)|0;c[(c[s>>
;2]|0)+(c[o>>2]<<2)>>2]=m+(c[(c[(c[l>>2]|0)+4>>2]|0)+((c[p>>2]|0)-1
x3c;<3)+4>>2]|0)}c[o>>2]=(c[o>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+8}}while(0);c[
n>>2]=we(c[g>>2]|0,c[h>>2]|0,c[s>>2]|0)|0;r=c[q>>2]|0;t=c[s>>2]|0;Fb
(r,t);c[s>>2]=0;t=c[n>>2]|0;i=u;return t|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,p=0,
q=0,r=0;q=i;i=i+48|0;r=q+40|0;p=q+36|0;o=q+32|0;m=q+28|0;j=q+24|0;g=q+20|0;l=q+16|0;f=q+12|0;h=q+8|0;n=q+4|0;k=q;c[r>>
2]=d;c[p>>2]=c[(c[r>>2]|0)+104>>2];c[o>>2]=c[(c[p>>2]|0)+28>>2];c[m
x3e;>2]=c[(c[r>>2]|0)+712>>2];c[g>>2]=0;c[g>>2]=c[g>>2];a[(c[m>>
;2]|0)+16>>0]=1;d=Wa[c[(c[r>>2]|0)+508>>2]&31](c[r>>2]|0,1635148146,c[p>>
2]|0,k)|0;c[g>>2]=d;if(d|0){i=q;return}r=ee(c[p>>2]|0,c[k>>2]|0)|0;c[g>>2]=r;if(r|0){i=q
;return}c[l>>2]=je(c[p>>2]|0)|0;c[f>>2]=je(c[p>>2]|0)|0;a:do if(((c[l>>2]|0)==
65536?(c[f>>2]|0)==(c[c[(c[m>>2]|0)+8>>2]>>2]|0):0)?(r=hc(c[o>>2]|0,8,0,c[f>
;>2]|0,0,g)|0,c[(c[m>>2]|0)+20>>2]=r,(c[g>>2]|0)==0):0){c[j>>2]=c[(c[m>>2
]|0)+20>>2];c[h>>2]=0;while(1){if((c[h>>2]|0)>=(c[f>>2]|0))break a;r=ie(c[p>
x3e;2]|0)|0;b[c[j>>2]>>1]=r;r=hc(c[o>>2]|0,8,0,e[c[j>>2]>>1]|0,0,g)|0;c[(c[j
x3e;>2]|0)+4>>2]=r;if(c[g>>2]|0)break;c[n>>2]=0;while(1){if((c[n>>2]|0)>=(e[c[
j>>2]>>1]|0|0))break;r=(ie(c[p>>2]|0)|0)<<16>>16<<2;c[(c[(c[j>
x3e;2]|0)+4>>2]|0)+(c[n>>2]<<3)>>2]=r;r=(ie(c[p>>2]|0)|0)<<16>
x3e;16<<2;c[(c[(c[j>>2]|0)+4>>2]|0)+(c[n>>2]<<3)+4>>2]=r;c[n>
x3e;2]=(c[n>>2]|0)+1}c[h>>2]=(c[h>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+8}c[n>>
;2]=(c[h>>2]|0)-1;while(1){f=c[o>>2]|0;if((c[n>>2]|0)<0)break;Fb(f,c[(c[(c[m>>2]|0)+
20>>2]|0)+(c[n>>2]<<3)+4>>2]|0);c[(c[(c[m>>2]|0)+20>>2]|0)+(c[n>
;>2]<<3)+4>>2]=0;c[n>>2]=(c[n>>2]|0)+-1}Fb(f,c[(c[m>>2]|0)+20>>
2]|0);c[(c[m>>2]|0)+20>>2]=0;c[(c[m>>2]|0)+20>>2]=0}while(0);ge(c[p>>2]|0);i=q
;return}function Ge(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;p=i;i=i+32|0;h=p+28|0;j=p+24|0;g=p+20|0;k=p
+16|0;n=p+12|0;o=p+8|0;l=p+4|0;m=p;c[j>>2]=a;c[g>>2]=e;c[k>>2]=f;c[o>>2]=0;c[n>>
;2]=0;do if((c[g>>2]|0)>>>0<(c[(c[j>>2]|0)+732>>2]|0)>>>0){a=c[(
c[j>>2]|0)+736>>2]|0;f=c[g>>2]|0;if(b[(c[j>>2]|0)+160+50>>1]|0){c[l>>
;2]=a+(f<<2);c[m>>2]=(c[(c[j>>2]|0)+736>>2]|0)+(c[(c[j>>2]|0)+732>>2
]<<2);c[l>>2]=(c[l>>2]|0)+4;c[n>>2]=d[(c[l>>2]|0)+-4>>0]<<
24|d[(c[l>>2]|0)+-4+1>>0]<<16|d[(c[l>>2]|0)+-4+2>>0]<<8|d[(c[l>
x3e;2]|0)+-4+3>>0]<<0;c[o>>2]=c[n>>2];if(((c[l>>2]|0)+4|0)>>>0
x3e;(c[m>>2]|0)>>>0)break;c[l>>2]=(c[l>>2]|0)+4;c[o>>2]=d[(c[l>>
;2]|0)+-4>>0]<<24|d[(c[l>>2]|0)+-4+1>>0]<<16|d[(c[l>>2]|0)+-4+2>
;>0]<<8|d[(c[l>>2]|0)+-4+3>>0]<<0;break}c[l>>2]=a+(f<<1);c[m>
;>2]=(c[(c[j>>2]|0)+736>>2]|0)+(c[(c[j>>2]|0)+732>>2]<<1);c[l>>
2]=(c[l>>2]|0)+2;c[n>>2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>
x3e;2]|0)+-2+1>>0]&65535)<<0)&65535;c[o>>2]=c[n>>2];if(((c[l>>2]|0)+
2|0)>>>0<=(c[m>>2]|0)>>>0){c[l>>2]=(c[l>>2]|0)+2;c[o>>
;2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>>2]|0)+-2+1>>0]&65535)
x3c;<0)&65535}c[n>>2]=c[n>>2]<<1;c[o>>2]=c[o>>2]<<1}while(
0);if((c[n>>2]|0)>>>0>=(c[(c[j>>2]|0)+704>>2]|0)>>>0){c[c[k>
;>2]>>2]=0;c[h>>2]=0;o=c[h>>2]|0;i=p;return o|0}if((c[o>>2]|0)>>>0
x3e;=(c[(c[j>>2]|0)+704>>2]|0)>>>0)c[o>>2]=c[(c[j>>2]|0)+704>>2
];if((c[o>>2]|0)>>>0>=(c[n>>2]|0)>>>0)c[c[k>>2]>>2]=(
c[o>>2]|0)-(c[n>>2]|0);else c[c[k>>2]>>2]=(c[(c[j>>2]|0)+704>>2]|0)-(
c[n>>2]|0);c[h>>2]=c[n>>2];o=c[h>>2]|0;i=p;return o|0}function He(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;r=i;i=i+48|0;g=r+36|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0
;m=r+16|0;n=r+12|0;s=r+8|0;p=r+4|0;o=r;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>
x3e;2]=f;c[o>>2]=c[j>>2];c[s>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+4>>2];c[
p>>2]=Ud(c[s>>2]|0,11340)|0;do if(c[p>>2]|0){s=Kc(c[h>>2]|0,0)|0;c[n>>2]=s;if((
s|0)==0?(c[n>>2]=Za[c[(c[p>>2]|0)+4>>2]&31](c[h>>2]|0,c[o>>2]|0,c[k>
x3e;2]|0,c[l>>2]|0,c[m>>2]|0)|0,(c[n>>2]|0)==0):0){if(((c[(c[o>>2]|0)+148>>2]|
0)!=65536?(c[(c[o>>2]|0)+148>>2]|0)!=131072:0)?(c[(c[o>>2]|0)+148>>2]|0)!=1953658213:0){
q=24;break}s=(c[j>>2]|0)+8|0;c[s>>2]=c[s>>2]|2048;if((c[k>>2]|0)<0){c[g>>
2]=0;s=c[g>>2]|0;i=r;return s|0}c[n>>2]=Za[c[(c[p>>2]|0)+8>>2]&31](c[h>>2
]|0,c[o>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;if(!(c[n>>2]|0)){if((Ie(c[j>
;>2]|0)|0)<<24>>24){s=(c[j>>2]|0)+8|0;c[s>>2]=c[s>>2]|8192}c[n>>
;2]=Ne(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0)){if(c[(c[j>>2]|0)+8>>2]&1|0
){if(!(c[(c[(c[j>>2]|0)+128>>2]|0)+52>>2]|0))c[n>>2]=Oe(c[o>>2]|0,c[h>>
;2]|0)|0;if(!(c[n>>2]|0))c[n>>2]=ze(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0))c[n
>>2]=Pe(c[o>>2]|0,c[h>>2]|0)|0;if(!(c[n>>2]|0))c[n>>2]=Qe(c[o>>2]|0,
c[h>>2]|0)|0}Re(c[o>>2]|0)}}}}else q=24;while(0);if((q|0)==24)c[n>>2]=2;c[g>>2]=c[n>
;>2];s=c[g>>2]|0;i=r;return s|0}function Ie(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[e>>2]=b
;do if(c[e>>2]|0){b=c[e>>2]|0;if(c[(c[e>>2]|0)+20>>2]|0)if((Je(c[b+20>>2]|0)|0
)<<24>>24){a[d>>0]=1;break}else{a[d>>0]=0;break}else if((Ke(b)|0)<<24>>
;24){a[d>>0]=1;break}else{a[d>>0]=0;break}}else a[d>>0]=0;while(0);i=f;return a[d>>0]|0}
function Je(b){b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;f=g+8|0;d=g+4|0;e=g;c[d>>2]=b;c[e>>2]=0;while(1){if((c
[e>>2]|0)>=8){d=6;break}if(vs(c[d>>2]|0,10569+((c[e>>2]|0)*17|0)|0)|0){d=4;break}c[e>>
;2]=(c[e>>2]|0)+1}if((d|0)==4){a[f>>0]=1;f=a[f>>0]|0;i=g;return f|0}else if((d|0)==6){a[f>>
;0]=0;f=a[f>>0]|0;i=g;return f|0}return 0}function Ke(b){b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+48|0;d=
n+40|0;f=n+36|0;g=n+32|0;l=n+12|0;h=n+8|0;j=n+4|0;k=n;c[f>>2]=b;c[l>>2]=0;c[l+4>>2]=0;c[l+8>
x3e;2]=0;c[l+12>>2]=0;c[l+16>>2]=0;c[h>>2]=0;a:while(1){if((c[h>>2]|0)>=(e[(c[f>
;>2]|0)+152>>1]|0|0)){m=18;break}c[g>>2]=0;b=c[(c[(c[f>>2]|0)+156>>2]|0)+(c[h>
x3e;2]<<4)>>2]|0;b:do if((b|0)>=1718642541)if((b|0)<1886545264){switch(b|0){case 1718642541:break;
default:break b}c[k>>2]=1;m=7;break}else{switch(b|0){case 1886545264:break;default:break b}c[k>>2]=2;m=7;break
}else{switch(b|0){case 1668707360:break;default:break b}c[k>>2]=0;m=7}while(0);c:do if((m|0)==7){m=0;c[j>>2]=
0;while(1){if((c[j>>2]|0)>=5)break c;if((c[(c[(c[f>>2]|0)+156>>2]|0)+(c[h>>2]<
x3c;4)+12>>2]|0)==(c[448+((c[j>>2]|0)*24|0)+(c[k>>2]<<3)+4>>2]|0)){if(!(c[g>
;>2]|0))c[g>>2]=Le(c[f>>2]|0,c[h>>2]&65535)|0;if((c[448+((c[j>>2]|0)*24|0)+(c[
k>>2]<<3)>>2]|0)==(c[g>>2]|0)){b=l+(c[j>>2]<<2)|0;c[b>>2]=(
c[b>>2]|0)+1}if((c[l+(c[j>>2]<<2)>>2]|0)==3){m=15;break a}}c[j>>2]=(c[j>
x3e;2]|0)+1}}while(0);c[h>>2]=(c[h>>2]|0)+1}if((m|0)==15){a[d>>0]=1;m=a[d>>0]|0;i=n;return
m|0}else if((m|0)==18){a[d>>0]=0;m=a[d>>0]|0;i=n;return m|0}return 0}function Le(a,d){a=a|0;d=d|0;var f=0,g
=0,h=0,j=0;j=i;i=i+16|0;f=j+4|0;g=j;h=j+8|0;c[g>>2]=a;b[h>>1]=d;if(c[(c[(c[g>>2]|0)+156>>
;2]|0)+((e[h>>1]|0)<<4)+4>>2]|0){c[f>>2]=c[(c[(c[g>>2]|0)+156>>2]|0)+((
e[h>>1]|0)<<4)+4>>2];d=c[f>>2]|0;i=j;return d|0}if(!(c[(c[g>>2]|0)+508>
x3e;2]|0)){c[f>>2]=0;d=c[f>>2]|0;i=j;return d|0}if(Wa[c[(c[g>>2]|0)+508>>2]&31](c[g
>>2]|0,c[(c[(c[g>>2]|0)+156>>2]|0)+((e[h>>1]|0)<<4)>>2]|0,c[(c[g>
;>2]|0)+104>>2]|0,0)|0){c[f>>2]=Me(c[(c[g>>2]|0)+104>>2]|0,c[(c[(c[g>>2]|
0)+156>>2]|0)+((e[h>>1]|0)<<4)+12>>2]|0)|0;d=c[f>>2]|0;i=j;return d|0}else{c[f
>>2]=0;d=c[f>>2]|0;i=j;return d|0}return 0}function Me(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+
32|0;d=j+20|0;e=j+16|0;f=j+12|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;a=ee(c[e>>2]|0
,c[f>>2]|0)|0;c[j+8>>2]=a;if(a|0){c[d>>2]=0;h=c[d>>2]|0;i=j;return h|0}while(1){if((c[f
x3e;>2]|0)>>>0<=3)break;a=je(c[e>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+a;c[f>
x3e;2]=(c[f>>2]|0)-4}c[h>>2]=3;while(1){b=c[e>>2]|0;if((c[f>>2]|0)>>>0<
;=0)break;a=(he(b)|0)&255;c[g>>2]=(c[g>>2]|0)+(a<<(c[h>>2]<<3));c[f>
x3e;2]=(c[f>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+-1}ge(b);c[d>>2]=c[g>>2];h=c[d>
x3e;2]|0;i=j;return h|0}function Ne(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;s=i;i=i+48|0;f=s+44
|0;g=s+40|0;h=s+36|0;j=s+32|0;l=s+28|0;r=s+24|0;m=s+20|0;n=s+16|0;q=s+12|0;p=s+8|0;o=s+4|0;k=s;c[g>>2]=b;c[h>>
;2]=e;c[l>>2]=c[(c[h>>2]|0)+28>>2];c[j>>2]=Wa[c[(c[g>>2]|0)+508>>2]
x26;31](c[g>>2]|0,1751412088,c[h>>2]|0,q)|0;if((c[j>>2]|0)!=0|(c[q>>2]|0)>>>
;0<8){c[f>>2]=0;r=c[f>>2]|0;i=s;return r|0}e=de(c[h>>2]|0,c[q>>2]|0,(c[g>>
;2]|0)+740|0)|0;c[j>>2]=e;do if(!e){c[o>>2]=c[(c[g>>2]|0)+740>>2];c[k>>2]=(c[o
>>2]|0)+(c[q>>2]|0);c[o>>2]=(c[o>>2]|0)+2;c[r>>2]=(((d[(c[o>>2]|0)+-
2>>0]|0)&65535)<<8|((d[(c[o>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535
;c[o>>2]=(c[o>>2]|0)+2;c[n>>2]=(((d[(c[o>>2]|0)+-2>>0]|0)&65535)<<
;8|((d[(c[o>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[o>>2]=(c[o>>2]|0)+
4;c[p>>2]=(d[(c[o>>2]|0)+-4>>0]|0)<<24|(d[(c[o>>2]|0)+-4+1>>0]|0)<
;<16|(d[(c[o>>2]|0)+-4+2>>0]|0)<<8|(d[(c[o>>2]|0)+-4+3>>0]|0)<<
0;if((c[p>>2]|0)>>>0>=4294901760)c[p>>2]=c[p>>2]&65535;if(!((c[r>>
;2]|0)!=0|(c[n>>2]|0)>>>0>255|(c[p>>2]|0)>>>0>65537)){r=hc(c[l>
x3e;2]|0,1,0,c[n>>2]|0,0,j)|0;c[(c[g>>2]|0)+756>>2]=r;if(!(c[j>>2]|0)){c[m>>2]=
0;while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;if(((c[o>>
2]|0)+(c[p>>2]|0)|0)>>>0>(c[k>>2]|0)>>>0)break;a[(c[(c[g>>2]|0)+
756>>2]|0)+(c[m>>2]|0)>>0]=a[c[o>>2]>>0]|0;c[o>>2]=(c[o>>2
]|0)+(c[p>>2]|0);c[m>>2]=(c[m>>2]|0)+1}c[(c[g>>2]|0)+748>>2]=c[m>>2];
c[(c[g>>2]|0)+744>>2]=c[q>>2];c[(c[g>>2]|0)+752>>2]=c[p>>2];break}}else
c[j>>2]=3;fe(c[h>>2]|0,(c[g>>2]|0)+740|0);c[(c[g>>2]|0)+744>>2]=0}while(0);c[
f>>2]=c[j>>2];r=c[f>>2]|0;i=s;return r|0}function Oe(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,q=0,r=0;r=i;i=i+48|0;g=r+40|0;h=r+36|0;m=r+32|0;q=r+28|0;f=r+24|0;o=r+20|0;l=r+16|0;n=r+12|0;p=r+8|0;k=r+4|0;j=r
;c[g>>2]=a;c[h>>2]=d;c[m>>2]=Wa[c[(c[g>>2]|0)+508>>2]&31](c[g>>
2]|0,1735162214,c[h>>2]|0,(c[g>>2]|0)+704|0)|0;if((c[m>>2]|0)!=142){if(c[m>>2]|0){q=c[m
x3e;>2]|0;i=r;return q|0}}else c[(c[g>>2]|0)+704>>2]=0;c[m>>2]=Wa[c[(c[g>>2]|0)+508
>>2]&31](c[g>>2]|0,1819239265,c[h>>2]|0,q)|0;if(c[m>>2]|0){c[m>>2]=144;q=
c[m>>2]|0;i=r;return q|0}do if(b[(c[g>>2]|0)+160+50>>1]|0){c[f>>2]=2;if((c[q>>
2]|0)>>>0<262144){c[(c[g>>2]|0)+732>>2]=(c[q>>2]|0)>>>(c[f>
;>2]|0);break}c[m>>2]=8;q=c[m>>2]|0;i=r;return q|0}else{c[f>>2]=1;if((c[q>>2]|0)>
;>>0<131072){c[(c[g>>2]|0)+732>>2]=(c[q>>2]|0)>>>(c[f>>2]|
0);break}c[m>>2]=8;q=c[m>>2]|0;i=r;return q|0}while(0);if((c[(c[g>>2]|0)+732>>2]|0)!=(c[(
c[g>>2]|0)+16>>2]|0)?(c[(c[g>>2]|0)+732>>2]|0)>>>0<(c[(c[g>>
;2]|0)+16>>2]|0)>>>0:0){c[o>>2]=c[(c[g>>2]|0)+16>>2]<<c[f>
x3e;2];c[l>>2]=c[(c[g>>2]|0)+156>>2];c[n>>2]=(c[l>>2]|0)+(e[(c[g>>2]|
0)+152>>1]<<4);c[p>>2]=Mc(c[h>>2]|0)|0;c[k>>2]=2147483647;while(1){a=c[l>
x3e;2]|0;if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[j>>2]=(c[a
+8>>2]|0)-(c[p>>2]|0);if((c[j>>2]|0)>0?(c[j>>2]|0)<(c[k>>2]|0):0)c[k
>>2]=c[j>>2];c[l>>2]=(c[l>>2]|0)+16}if((a|0)==(c[n>>2]|0))c[k>>2]=(c
[(c[h>>2]|0)+4>>2]|0)-(c[p>>2]|0);if((c[o>>2]|0)<=(c[k>>2]|0)){c[(c[g>
;>2]|0)+732>>2]=c[(c[g>>2]|0)+16>>2];c[q>>2]=c[o>>2]}}c[m>>2]=de
(c[h>>2]|0,c[q>>2]|0,(c[g>>2]|0)+736|0)|0;q=c[m>>2]|0;i=r;return q|0}function Pe(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>
;2]=Wa[c[(c[d>>2]|0)+508>>2]&31](c[d>>2]|0,1718642541,c[e>>2]|0,g)|0;if(c[f>
x3e;2]|0){c[(c[d>>2]|0)+656>>2]=0;c[(c[d>>2]|0)+652>>2]=0;c[f>>2]=0;g=c[f>
;>2]|0;i=h;return g|0}else{c[(c[d>>2]|0)+652>>2]=c[g>>2];c[f>>2]=de(c[e>>
2]|0,c[g>>2]|0,(c[d>>2]|0)+656|0)|0;g=c[f>>2]|0;i=h;return g|0}return 0}function Qe(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Wa
[c[(c[d>>2]|0)+508>>2]&31](c[d>>2]|0,1886545264,c[e>>2]|0,g)|0;if(c[f>>2]|
0){c[(c[d>>2]|0)+664>>2]=0;c[(c[d>>2]|0)+660>>2]=0;c[f>>2]=0;g=c[f>>
2]|0;i=h;return g|0}else{c[(c[d>>2]|0)+660>>2]=c[g>>2];c[f>>2]=de(c[e>>2]|0,c[
g>>2]|0,(c[d>>2]|0)+664|0)|0;g=c[f>>2]|0;i=h;return g|0}return 0}function Re(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)+512>>2]=22;c[(c[d>>2]|0)+520>>2]=34;c
[(c[d>>2]|0)+524>>2]=35;c[(c[d>>2]|0)+528>>2]=36;c[(c[d>>2]|0)+516>>
2]=34;i=b;return}function Se(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;g=l+20|0
;n=l+16|0;m=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=a;c[n>>2]=b;c[m>>2]=d;c[h>>2]=e;c[k>
x3e;2]=c[(c[g>>2]|0)+24>>2];c[n>>2]=c[n>>2];d=Kc(c[k>>2]|0,c[m>>2]|0
)|0;c[j>>2]=d;if((d|0)==0?(n=ee(c[k>>2]|0,c[h>>2]|0)|0,c[j>>2]=n,(n|0)==0):0){c[(c[g>
;>2]|0)+200>>2]=c[(c[k>>2]|0)+32>>2];c[(c[g>>2]|0)+204>>2]=c[(c[k>
x3e;2]|0)+36>>2];c[f>>2]=0;n=c[f>>2]|0;i=l;return n|0}c[f>>2]=c[j>>2];n=c[f>
;>2]|0;i=l;return n|0}function Te(e){e=e|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;f=j+12|0;g=j+8|0;h=j+4|0;k=j;c[g>>
;2]=e;c[h>>2]=c[(c[g>>2]|0)+200>>2];c[k>>2]=c[(c[g>>2]|0)+204>>2];if
(((c[h>>2]|0)+10|0)>>>0>(c[k>>2]|0)>>>0){c[f>>2]=20;k=c[f>
x3e;2]|0;i=j;return k|0}else{c[h>>2]=(c[h>>2]|0)+2;b[(c[g>>2]|0)+32>>1]=a[(c[h>>
;2]|0)+-2>>0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0;c[h>
;>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36>>2]=((a[(c[h>>2]|0)+-2>>0]<<
;16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<16>>16;
c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+4>>2]=((a[(c[h>>2]|0)+-2>>0]
x3c;<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<16>
x3e;16;c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+8>>2]=((a[(c[h>>2]|0)+-2>
x3e;0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<<
16>>16;c[h>>2]=(c[h>>2]|0)+2;c[(c[g>>2]|0)+36+12>>2]=((a[(c[h>>2]|0)+-
2>>0]<<16>>16<<8|d[(c[h>>2]|0)+-2+1>>0]<<0)&65535)<
;<16>>16;c[(c[g>>2]|0)+200>>2]=c[h>>2];c[f>>2]=0;k=c[f>>2]|0;i=
j;return k|0}return 0}function Ue(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,z=0,A=0,B
=0,C=0,D=0,E=0,F=0,G=0,H=0;H=i;i=i+96|0;j=H+72|0;o=H+68|0;A=H+64|0;v=H+60|0;u=H+56|0;w=H+52|0;z=H+48|0;r=H+44|0;x=H+78|0;y=H+40|
0;s=H+36|0;t=H+32|0;k=H+83|0;n=H+82|0;B=H+28|0;C=H+24|0;D=H+20|0;l=H+16|0;m=H+12|0;g=H+76|0;E=H+8|0;F=H+4|0;p=H+81|0;G=H;q=H+80|
0;c[j>>2]=f;c[A>>2]=c[(c[j>>2]|0)+200>>2];c[v>>2]=c[(c[j>>2]|0)+204
x3e;>2];c[u>>2]=c[(c[j>>2]|0)+12>>2];c[w>>2]=b[(c[j>>2]|0)+32>>
1];c[r>>2]=c[c[j>>2]>>2];c[E>>2]=0;if((c[w>>2]|0)!=0?((b[(c[u>>2]|0)+
20>>1]|0)+(b[(c[u>>2]|0)+56>>1]|0)+(c[w>>2]|0)|0)>>>0>(c[(c[u>
x3e;2]|0)+8>>2]|0)>>>0:0)f=kc(c[u>>2]|0,0,c[w>>2]|0)|0;else f=0;c[o>>2]=f
;if(c[o>>2]|0){G=c[o>>2]|0;i=H;return G|0}c[l>>2]=c[(c[u>>2]|0)+56+12>>2];c[m
x3e;>2]=(c[l>>2]|0)+(c[w>>2]<<1);a:do if((c[w>>2]|0)<4095?((c[A>>2]|
0)+((c[w>>2]|0)+1<<1)|0)>>>0<=(c[v>>2]|0)>>>0:0){c[A>>
;2]=(c[A>>2]|0)+2;b[g>>1]=(d[(c[A>>2]|0)+-2>>0]&65535)<<8|(d[(c[A>
x3e;2]|0)+-2+1>>0]&65535)<<0;if((c[w>>2]|0)>0)b[c[l>>2]>>1]=b[g>
;>1]|0;c[l>>2]=(c[l>>2]|0)+2;while(1){if((c[l>>2]|0)>>>0>=(c[m>>
;2]|0)>>>0)break;c[A>>2]=(c[A>>2]|0)+2;b[c[l>>2]>>1]=(d[(c[A>>2
]|0)+-2>>0]&65535)<<8|(d[(c[A>>2]|0)+-2+1>>0]&65535)<<0;if((b[c[l>
;>2]>>1]|0)<=(b[g>>1]|0)){h=12;break}b[g>>1]=b[c[l>>2]>>1]|0;c[l>
;>2]=(c[l>>2]|0)+2}if((h|0)==12){c[o>>2]=8;G=c[o>>2]|0;i=H;return G|0}c[y>>2]=0;if((
c[w>>2]|0)>0?(c[y>>2]=(b[(c[l>>2]|0)+-2>>1]|0)+1,(c[y>>2]|0)<0):0)break
;if(((c[y>>2]|0)+4|0)!=0?((b[(c[u>>2]|0)+20+2>>1]|0)+(b[(c[u>>2]|0)+56+2>>1]|0
)+((c[y>>2]|0)+4)|0)>>>0>(c[(c[u>>2]|0)+4>>2]|0)>>>0:0)f=kc(c[u
>>2]|0,(c[y>>2]|0)+4|0,0)|0;else f=0;c[o>>2]=f;if(c[o>>2]|0){G=c[o>>2]|0;i=H;return
G|0}c[z>>2]=(c[u>>2]|0)+56;c[l>>2]=(c[(c[z>>2]|0)+12>>2]|0)+2;while(1){if((c[
l>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;if((b[(c[l>>2]|0)+-2>
x3e;1]|0)>=(b[c[l>>2]>>1]|0))break a;c[l>>2]=(c[l>>2]|0)+2}c[(c[(c[j>>2]|
0)+8>>2]|0)+140>>2]=0;c[(c[(c[j>>2]|0)+8>>2]|0)+136>>2]=0;if(((c[A>>
2]|0)+2|0)>>>0<=(c[v>>2]|0)>>>0){c[A>>2]=(c[A>>2]|0)+2;b[x>
;>1]=(d[(c[A>>2]|0)+-2>>0]&65535)<<8|(d[(c[A>>2]|0)+-2+1>>0]&65535
)<<0;if((e[x>>1]|0)>(e[(c[r>>2]|0)+260+26>>1]|0)){c[o>>2]=22;G=c[o>
x3e;2]|0;i=H;return G|0}if(((c[v>>2]|0)-(c[A>>2]|0)|0)<(e[x>>1]|0)){c[o>>2]=22;G=c[
o>>2]|0;i=H;return G|0}if(!(c[(c[j>>2]|0)+16>>2]&2)){c[(c[(c[j>>2]|0)+8>>
2]|0)+140>>2]=e[x>>1];c[(c[(c[j>>2]|0)+8>>2]|0)+136>>2]=c[(c[(c[j>>2
]|0)+160>>2]|0)+392>>2];Ss(c[(c[(c[j>>2]|0)+160>>2]|0)+392>>2]|0,c[A>>
;2]|0,e[x>>1]|0)|0}c[A>>2]=(c[A>>2]|0)+(e[x>>1]|0);c[s>>2]=c[(c[z>>2
]|0)+8>>2];c[t>>2]=(c[s>>2]|0)+(c[y>>2]|0);b:while(1){if((c[s>>2]|0)>>
;>0>=(c[t>>2]|0)>>>0)break;if(((c[A>>2]|0)+1|0)>>>0>(c[v>
x3e;2]|0)>>>0)break a;r=c[A>>2]|0;c[A>>2]=r+1;r=a[r>>0]|0;a[k>>0]=r;x=c[s
>>2]|0;c[s>>2]=x+1;a[x>>0]=r;if(!(d[k>>0]&8))continue;if(((c[A>>2]|0)+1|0
)>>>0>(c[v>>2]|0)>>>0)break a;x=c[A>>2]|0;c[A>>2]=x+1;a[n>
x3e;0]=a[x>>0]|0;if(((c[s>>2]|0)+(d[n>>0]|0)|0)>>>0>(c[t>>2]|0)>
;>>0)break a;while(1){if((d[n>>0]|0)<=0)continue b;r=a[k>>0]|0;x=c[s>>2]|0;c[s>
;>2]=x+1;a[x>>0]=r;a[n>>0]=(a[n>>0]|0)+-1<<24>>24}}c[B>>2]=c[(c
[z>>2]|0)+4>>2];c[C>>2]=(c[B>>2]|0)+(c[y>>2]<<3);c[s>>2]=c
[(c[z>>2]|0)+8>>2];c[D>>2]=0;if(((c[A>>2]|0)+(c[E>>2]|0)|0)>>>0
<=(c[v>>2]|0)>>>0){while(1){if((c[B>>2]|0)>>>0>=(c[C>>2]|0
)>>>0)break;c[F>>2]=0;a[p>>0]=a[c[s>>2]>>0]|0;if(d[p>>0]&2
|0){if(((c[A>>2]|0)+1|0)>>>0>(c[v>>2]|0)>>>0)break a;E=c[A>>2]|
0;c[A>>2]=E+1;c[F>>2]=d[E>>0];if(!(d[p>>0]&16))c[F>>2]=0-(c[F>>
2]|0)}else if(!(d[p>>0]&16)){if(((c[A>>2]|0)+2|0)>>>0>(c[v>>2]|0)>
x3e;>0)break a;c[A>>2]=(c[A>>2]|0)+2;c[F>>2]=((a[(c[A>>2]|0)+-2>>0]<
x3c;16>>16<<8|d[(c[A>>2]|0)+-2+1>>0]<<0)&65535)<<16>>
16}c[D>>2]=(c[D>>2]|0)+(c[F>>2]|0);c[c[B>>2]>>2]=c[D>>2];a[c[s>
x3e;2]>>0]=d[p>>0]&-19;c[B>>2]=(c[B>>2]|0)+8;c[s>>2]=(c[s>>2]|0
)+1}c[B>>2]=c[(c[u>>2]|0)+56+4>>2];c[C>>2]=(c[B>>2]|0)+(c[y>>2]<
;<3);c[s>>2]=c[(c[z>>2]|0)+8>>2];c[D>>2]=0;while(1){if((c[B>>2]|0)>
x3e;>0>=(c[C>>2]|0)>>>0)break;c[G>>2]=0;a[q>>0]=a[c[s>>2]>
x3e;0]|0;if(d[q>>0]&4|0){if(((c[A>>2]|0)+1|0)>>>0>(c[v>>2]|0)>>
x3e;0)break a;F=c[A>>2]|0;c[A>>2]=F+1;c[G>>2]=d[F>>0];if(!(d[q>>0]&32))c[
G>>2]=0-(c[G>>2]|0)}else if(!(d[q>>0]&32)){if(((c[A>>2]|0)+2|0)>>>0
x3e;(c[v>>2]|0)>>>0)break a;c[A>>2]=(c[A>>2]|0)+2;c[G>>2]=((a[(c[A>
x3e;2]|0)+-2>>0]<<16>>16<<8|d[(c[A>>2]|0)+-2+1>>0]<<0)&
;65535)<<16>>16}c[D>>2]=(c[D>>2]|0)+(c[G>>2]|0);c[(c[B>>2]|0)+4>
;>2]=c[D>>2];a[c[s>>2]>>0]=d[q>>0]&1;c[B>>2]=(c[B>>2]|0)+8
;c[s>>2]=(c[s>>2]|0)+1}b[(c[z>>2]|0)+2>>1]=c[y>>2];b[c[z>>2]>
x3e;1]=c[w>>2];c[(c[j>>2]|0)+200>>2]=c[A>>2];G=c[o>>2]|0;i=H;return G|0}}}while
(0);c[o>>2]=20;G=c[o>>2]|0;i=H;return G|0}function Ve(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;u=i;i=i+64|0;n=u+48|0;o=u+44|0;s=u+40|0;q=u+36|0;p=u+32|0;h=u+28|0;r=u+24|0;j=u+20|0;k=u+16|0;m=u+12|0;l=u+8|0;g=
u+4|0;t=u;c[n>>2]=f;c[s>>2]=c[(c[n>>2]|0)+200>>2];c[q>>2]=c[(c[n>>2]|
0)+204>>2];c[p>>2]=c[(c[n>>2]|0)+12>>2];c[r>>2]=0;while(1){c[o>>2]=lc
(c[p>>2]|0,(c[r>>2]|0)+1|0)|0;if(c[o>>2]|0){f=24;break}if(((c[s>>2]|0)+4|0)>>
x3e;0>(c[q>>2]|0)>>>0){f=25;break}c[h>>2]=(c[(c[p>>2]|0)+56+32>>2]|0
)+(c[r>>2]<<5);c[(c[h>>2]|0)+12>>2]=0;c[(c[h>>2]|0)+8>>2]=0;c[s>
;>2]=(c[s>>2]|0)+2;b[(c[h>>2]|0)+4>>1]=(d[(c[s>>2]|0)+-2>>0]&65535)
x3c;<8|(d[(c[s>>2]|0)+-2+1>>0]&65535)<<0;c[s>>2]=(c[s>>2]|0)+2;c[c[h
>>2]>>2]=((d[(c[s>>2]|0)+-2>>0]&65535)<<8|(d[(c[s>>2]|0)+-2+1
x3e;>0]&65535)<<0)&65535;c[g>>2]=2;if(e[(c[h>>2]|0)+4>>1]&1|0)c[g>
;>2]=(c[g>>2]|0)+2;do if(!(e[(c[h>>2]|0)+4>>1]&8|0)){if(e[(c[h>>2]|0)+4>
x3e;1]&64|0){c[g>>2]=(c[g>>2]|0)+4;break}if(e[(c[h>>2]|0)+4>>1]&128|0)c[g>
;>2]=(c[g>>2]|0)+8}else c[g>>2]=(c[g>>2]|0)+2;while(0);if(((c[s>>2]|0)+(c[g>
x3e;2]|0)|0)>>>0>(c[q>>2]|0)>>>0){f=25;break}f=c[s>>2]|0;if(e[(c[h>
x3e;2]|0)+4>>1]&1|0){c[s>>2]=f+2;c[(c[h>>2]|0)+8>>2]=((a[(c[s>>2]|0)+-2
x3e;>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<
x3c;16>>16;c[s>>2]=(c[s>>2]|0)+2;c[(c[h>>2]|0)+12>>2]=((a[(c[s>>2]|0
)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)
x3c;<16>>16}else{c[s>>2]=f+1;c[(c[h>>2]|0)+8>>2]=a[f>>0];f=c[s>>
;2]|0;c[s>>2]=f+1;c[(c[h>>2]|0)+12>>2]=a[f>>0]}c[m>>2]=65536;c[j>>2]=
65536;c[l>>2]=0;c[k>>2]=0;do if(!(e[(c[h>>2]|0)+4>>1]&8|0)){if(e[(c[h>>2]|
0)+4>>1]&64|0){c[s>>2]=(c[s>>2]|0)+2;c[j>>2]=((a[(c[s>>2]|0)+-2>>
;0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<<16
x3e;>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[m>>2]=((a[(c[s>>2]|0)+-2>>0]
x3c;<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<<0)&65535)<<16>
x3e;16<<2;break}if(e[(c[h>>2]|0)+4>>1]&128|0){c[s>>2]=(c[s>>2]|0)+2;c[j
x3e;>2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>
;>0]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[l>
x3e;2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>
;0]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[k>>
2]=((a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0
]<<0)&65535)<<16>>16<<2;c[s>>2]=(c[s>>2]|0)+2;c[m>>2]=((
a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<
;<0)&65535)<<16>>16<<2}}else{c[s>>2]=(c[s>>2]|0)+2;c[j>>2]=((
a[(c[s>>2]|0)+-2>>0]<<16>>16<<8|d[(c[s>>2]|0)+-2+1>>0]<
;<0)&65535)<<16>>16<<2;c[m>>2]=c[j>>2]}while(0);c[(c[h>>2]|
0)+16>>2]=c[j>>2];c[(c[h>>2]|0)+16+4>>2]=c[k>>2];c[(c[h>>2]|0)+16+8
x3e;>2]=c[l>>2];c[(c[h>>2]|0)+16+12>>2]=c[m>>2];c[r>>2]=(c[r>>2
]|0)+1;if(!(e[(c[h>>2]|0)+4>>1]&32)){f=23;break}}if((f|0)==23){c[(c[p>>2]|0)+56+28>>
;2]=c[r>>2];c[t>>2]=c[(c[n>>2]|0)+24>>2];t=Mc(c[t>>2]|0)|0;c[(c[n>>2
]|0)+168>>2]=(c[s>>2]|0)+t-(c[q>>2]|0);c[(c[n>>2]|0)+200>>2]=c[s>>2];
t=c[o>>2]|0;i=u;return t|0}else if((f|0)==24){t=c[o>>2]|0;i=u;return t|0}else if((f|0)==25){c[o>>2
]=21;t=c[o>>2]|0;i=u;return t|0}return 0}function We(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];ge(c[d>>2]|0);i=b;return}function Xe(a){a=a|0;var b=0,
d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;b=h+16|0;d=h+12|0;e=h+8|0;g=h+4|0;f=h;c[b>>2]=a;c[d>>2]=c[b>>2];if
(!(c[d>>2]|0)){i=h;return}c[e>>2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[b>
x3e;2]|0)+104>>2];c[f>>2]=c[(c[d>>2]|0)+532>>2];if(c[(c[d>>2]|0)+692+4>
x3e;2]|0)Va[c[(c[d>>2]|0)+692+4>>2]&63](c[(c[d>>2]|0)+692>>2]|0);if(c[f>>
2]|0)Va[c[(c[f>>2]|0)+12>>2]&63](c[d>>2]|0);Ye(c[d>>2]|0);Ze(c[d>>2]|0);Fb
(c[e>>2]|0,c[(c[d>>2]|0)+672>>2]|0);c[(c[d>>2]|0)+672>>2]=0;c[(c[d>>
2]|0)+668>>2]=0;fe(c[g>>2]|0,(c[d>>2]|0)+656|0);fe(c[g>>2]|0,(c[d>>2]|0)+664|0
);c[(c[d>>2]|0)+652>>2]=0;c[(c[d>>2]|0)+660>>2]=0;_e(c[e>>2]|0,c[(c[d>>
;2]|0)+712>>2]|0);c[(c[d>>2]|0)+712>>2]=0;i=h;return}function Ye(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]|0)+104>>2];fe(c[e>>2]|0,(c[d>
;>2]|0)+736|0);c[(c[d>>2]|0)+732>>2]=0;i=b;return}function Ze(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)+104>>2];c[f>>2]=c[(c[e>
;>2]|0)+28>>2];Fb(c[f>>2]|0,c[(c[d>>2]|0)+756>>2]|0);c[(c[d>>2]|0)+756>
;>2]=0;fe(c[e>>2]|0,(c[d>>2]|0)+740|0);i=b;return}function _e(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;
i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=g;return}Fb(c[d>>2]|
0,c[(c[e>>2]|0)+4>>2]|0);c[(c[e>>2]|0)+4>>2]=0;Fb(c[d>>2]|0,c[(c[e>>
2]|0)+8>>2]|0);c[(c[e>>2]|0)+8>>2]=0;if(c[(c[e>>2]|0)+20>>2]|0){c[f>>
;2]=0;while(1){b=c[d>>2]|0;if((c[f>>2]|0)>>>0>=(c[c[e>>2]>>2]|0)>
;>>0)break;Fb(b,c[(c[(c[e>>2]|0)+20>>2]|0)+(c[f>>2]<<3)+4>>2]|0);c[(
c[(c[e>>2]|0)+20>>2]|0)+(c[f>>2]<<3)+4>>2]=0;c[f>>2]=(c[f>>
;2]|0)+1}Fb(b,c[(c[e>>2]|0)+20>>2]|0);c[(c[e>>2]|0)+20>>2]=0}Fb(c[d>>2]|0,c[(c
[e>>2]|0)+28>>2]|0);c[(c[e>>2]|0)+28>>2]=0;Fb(c[d>>2]|0,c[(c[e>>2]|0
)+36>>2]|0);c[(c[e>>2]|0)+36>>2]=0;Fb(c[d>>2]|0,c[e>>2]|0);c[e>>2]=0
;i=g;return}function $e(b){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]=b;c[f>>2]=c[g
x3e;>2];c[d>>2]=0;a[(c[f>>2]|0)+300>>0]=0;a[(c[f>>2]|0)+301>>0]=0;a[(c[f
x3e;>2]|0)+72+36>>0]=0;c[(c[f>>2]|0)+112>>2]=-1;i=e;return c[d>>2]|0}function af(b){
b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=b;c[e>>2]=c[d>>2];if(a[(c[e>>2]|0
)+300>>0]|0)bf(c[d>>2]|0);a[(c[e>>2]|0)+72+36>>0]=0;i=f;return}function bf(d){d=d|0;var
e=0,f=0,g=0,h=0,j=0;g=i;i=i+16|0;j=g+12|0;f=g+8|0;h=g+4|0;e=g;c[j>>2]=d;c[f>>2]=c[j>>2];c[h>
x3e;2]=c[c[j>>2]>>2];c[e>>2]=c[(c[h>>2]|0)+100>>2];if(a[(c[f>>2]|0)+
292>>0]|0){c[(c[f>>2]|0)+296>>2]=0;a[(c[f>>2]|0)+292>>0]=0}Fb(c[e>>2
]|0,c[(c[f>>2]|0)+244>>2]|0);c[(c[f>>2]|0)+244>>2]=0;c[(c[f>>2]|0)+240>
x3e;2]=0;Fb(c[e>>2]|0,c[(c[f>>2]|0)+252>>2]|0);c[(c[f>>2]|0)+252>>2]=0;b[(c[f
x3e;>2]|0)+248>>1]=0;cf((c[f>>2]|0)+256|0);Fb(c[e>>2]|0,c[(c[f>>2]|0)+124>>
;2]|0);c[(c[f>>2]|0)+124>>2]=0;Fb(c[e>>2]|0,c[(c[f>>2]|0)+136>>2]|0);c[(c[f>
;>2]|0)+136>>2]=0;c[(c[f>>2]|0)+116>>2]=0;c[(c[f>>2]|0)+120>>2]=0;c[(c[f
x3e;>2]|0)+128>>2]=0;c[(c[f>>2]|0)+132>>2]=0;c[(c[f>>2]|0)+140>>2]=0;c[(c
[f>>2]|0)+144>>2]=0;a[(c[f>>2]|0)+300>>0]=0;a[(c[f>>2]|0)+301>>0]=0;
i=g;return}function cf(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=c[c[d>>
2]>>2];if(!(c[e>>2]|0)){i=f;return}Fb(c[e>>2]|0,c[(c[d>>2]|0)+28>>2]|0);c[(c[d
>>2]|0)+28>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+24>>2]|0);c[(c[d>>2]|0)+
24>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+16>>2]=0
;Fb(c[e>>2]|0,c[(c[d>>2]|0)+12>>2]|0);c[(c[d>>2]|0)+12>>2]=0;Fb(c[e>>
;2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>>2]=0;b[(c[d>>2]|0)+8>>
;1]=0;b[(c[d>>2]|0)+4>>1]=0;b[(c[d>>2]|0)+10>>1]=0;b[(c[d>>2]|0)+6>>
1]=0;c[c[d>>2]>>2]=0;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;a=gc(c
[c[(c[d>>2]|0)+156>>2]>>2]|0)|0;i=b;return a|0}function ef(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+32|0;o=n+28|0;p=n+24|0;g=n+20|0;h=n+16|0;m=n+12|0;l=n+8|0;k=n+4|0;j=n;c[o
>>2]=a;c[p>>2]=b;c[g>>2]=d;c[h>>2]=e;c[m>>2]=c[o>>2];c[l>>
2]=c[p>>2];c[k>>2]=c[(c[o>>2]|0)+4>>2];if(!(c[m>>2]|0)){c[f>>2]=37;p
=c[f>>2]|0;i=n;return p|0}if(!(c[l>>2]|0)){c[f>>2]=36;p=c[f>>2]|0;i=n;return p|0}if(!(c[
k>>2]|0)){c[f>>2]=6;p=c[f>>2]|0;i=n;return p|0}if((c[g>>2]|0)>>>0>=(
c[(c[k>>2]|0)+16>>2]|0)>>>0?(c[(c[(c[k>>2]|0)+128>>2]|0)+52>>2]|
0)==0:0){c[f>>2]=6;p=c[f>>2]|0;i=n;return p|0}if(c[h>>2]&2|0){if(c[(c[k>>2]|0)+8>
;>2]&8192|0)c[h>>2]=c[h>>2]&-3;if(c[h>>2]&32768|0)c[h>>2]=c[h>
x3e;2]|2}if(c[h>>2]&1025|0?(c[h>>2]=c[h>>2]|9,(c[(c[k>>2]|0)+8>>2]&8192
|0)==0):0)c[h>>2]=c[h>>2]|2;c[j>>2]=ff(c[l>>2]|0,c[m>>2]|0,c[g>>2]|0
,c[h>>2]|0)|0;c[f>>2]=c[j>>2];p=c[f>>2]|0;i=n;return p|0}function ff(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;r=i;i=i+256|0;h=r+240|0;j=r+236|0;k=r+232|0;l=r+228|0;m=r+224|0;o=r+220
|0;n=r+216|0;p=r+8|0;q=r;c[j>>2]=b;c[k>>2]=d;c[l>>2]=f;c[m>>2]=g;c[o>>2]=c[(c[
k>>2]|0)+4>>2];c[n>>2]=0;if(((c[(c[j>>2]|0)+112>>2]|0)!=-1?(c[m>>2]
x26;8|0)==0:0)?(c[n>>2]=gf(c[j>>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0,(c[n>
;>2]|0)==0):0){c[q>>2]=c[o>>2];if((c[(c[q>>2]|0)+8>>2]&1|0?(hf(p,c[j>>
;2]|0,c[k>>2]|0,c[m>>2]|0,1)|0,ah(p,c[l>>2]|0,0,1)|0,c[(c[k>>2]|0)+56>>2]=c[p+
60>>2],c[(c[k>>2]|0)+60>>2]=(c[p+176>>2]|0)+(c[p+36+12>>2]|0)-(c[p+180>
x3e;2]|0),c[(c[o>>2]|0)+468+12>>2]|0):0)?(c[m>>2]&512|0)==0:0)c[(c[k>>2]|0)+56>
;>2]=e[(c[o>>2]|0)+216+10>>1];c[h>>2]=0;b=c[h>>2]|0;i=r;return b|0}if((c[m>>
;2]&1|0)==0?(a[(c[j>>2]|0)+72+36>>0]|0)==0:0){c[h>>2]=36;b=c[h>>2]|0;i=r;return b|0
}if(c[m>>2]&16384|0){c[h>>2]=6;b=c[h>>2]|0;i=r;return b|0}c[n>>2]=hf(p,c[j>>
;2]|0,c[k>>2]|0,c[m>>2]|0,0)|0;if(c[n>>2]|0){c[h>>2]=c[n>>2];b=c[h>>
2]|0;i=r;return b|0}c[(c[k>>2]|0)+72>>2]=1869968492;c[(c[k>>2]|0)+128>>2]=0;c[(c[k>
x3e;2]|0)+108+16>>2]=0;c[n>>2]=ah(p,c[l>>2]|0,0,0)|0;if(!(c[n>>2]|0)){if((c[(c[k>
x3e;2]|0)+72>>2]|0)!=1668246896){b=(c[k>>2]|0)+108|0;q=(c[p+12>>2]|0)+20|0;c[b>>2]=c[q
x3e;>2];c[b+4>>2]=c[q+4>>2];c[b+8>>2]=c[q+8>>2];c[b+12>>2]=c[q+12>
x3e;2];c[b+16>>2]=c[q+16>>2];b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]&-513;
if(c[p+68>>2]|0)Nb((c[k>>2]|0)+108|0,0-(c[p+68>>2]|0)|0,0)}else{c[(c[k>>2]|0)+128>
x3e;2]=c[(c[p+12>>2]|0)+20+28>>2];c[(c[k>>2]|0)+132>>2]=c[(c[p+12>>2]|0)+20+32
>>2]}a:do if(!(c[m>>2]&2)){if(!(a[(c[p+160>>2]|0)+284+53>>0]|0)){b=(c[k>>
2]|0)+108+16|0;c[b>>2]=c[b>>2]|8;break}switch(c[(c[p+160>>2]|0)+284+56>>2]|0){case 1:break
a;case 0:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|32;break a}case 4:{b=(c[k>>2]|0)+108+16
|0;c[b>>2]=c[b>>2]|48;break a}case 5:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|16
;break a}default:{b=(c[k>>2]|0)+108+16|0;c[b>>2]=c[b>>2]|8;break a}}}while(0);nh(p,c[l>>
2]|0)|0}if((c[m>>2]&1|0)==0?(e[(c[j>>2]|0)+12+2>>1]|0)<24:0){b=(c[k>>2]|0)+108
+16|0;c[b>>2]=c[b>>2]|256}c[h>>2]=c[n>>2];b=c[h>>2]|0;i=r;return b|0}function
gf(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;n=i;i=i+48|0;q=n+28|0;j=n+24|0;p=n+20|0;k=n+16|0
;r=n+12|0;s=n+8|0;o=n+4|0;l=n;m=n+32|0;c[q>>2]=e;c[j>>2]=f;c[p>>2]=g;c[k>>2]=h;c[r>
x3e;2]=c[(c[j>>2]|0)+4>>2];c[s>>2]=c[(c[r>>2]|0)+532>>2];c[o>>2]=c[(
c[r>>2]|0)+104>>2];c[l>>2]=Na[c[(c[s>>2]|0)+104>>2]&1](c[r>>2]|
0,c[(c[q>>2]|0)+112>>2]|0,c[p>>2]|0,c[k>>2]|0,c[o>>2]|0,(c[j>>2]|0)+
76|0,m)|0;if(c[l>>2]|0){s=c[l>>2]|0;i=n;return s|0}b[(c[j>>2]|0)+108+2>>1]=0;b[(c[j>
;>2]|0)+108>>1]=0;c[(c[j>>2]|0)+24>>2]=d[m+1>>0]<<6;c[(c[j>>2]|
0)+24+4>>2]=d[m>>0]<<6;c[(c[j>>2]|0)+24+8>>2]=a[m+2>>0]<<6
;c[(c[j>>2]|0)+24+12>>2]=a[m+3>>0]<<6;c[(c[j>>2]|0)+24+16>>2]=d[m+4
x3e;>0]<<6;c[(c[j>>2]|0)+24+20>>2]=a[m+5>>0]<<6;c[(c[j>>2]|0)+24
+24>>2]=a[m+6>>0]<<6;c[(c[j>>2]|0)+24+28>>2]=d[m+7>>0]<<6;
c[(c[j>>2]|0)+72>>2]=1651078259;if(c[k>>2]&16|0){c[(c[j>>2]|0)+100>>2]=a[
m+5>>0];c[(c[j>>2]|0)+104>>2]=a[m+6>>0];s=c[l>>2]|0;i=n;return s|0}else{c[(c[j
>>2]|0)+100>>2]=a[m+2>>0];c[(c[j>>2]|0)+104>>2]=a[m+3>>0];s=c[l>
;>2]|0;i=n;return s|0}return 0}function hf(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;y=i;i=i+64|0;n=y+44|0;o=y+40|0;p=y+36|0;q=y+32|0;r=y+28|0;s=y+49|0;v=y+24|0;x=y+20|0;u=y+16|0;l=y+48|0;
k=y+12|0;m=y+8|0;t=y+4|0;w=y;c[o>>2]=e;c[p>>2]=f;c[q>>2]=g;c[r>>2]=h;a[s>>0]=j
;c[v>>2]=c[(c[q>>2]|0)+4>>2];c[x>>2]=c[(c[v>>2]|0)+104>>2];Ns(c[o>
;>2]|0,0,208)|0;if(!((c[r>>2]&2|0)!=0|(a[s>>0]|0)!=0)){if((a[(c[p>>2]|0)+301>>
0]|0)==0?(c[k>>2]=jf(c[p>>2]|0)|0,c[k>>2]|0):0){c[n>>2]=c[k>>2];x=c[n>>
;2]|0;i=y;return x|0}if(d[(c[p>>2]|0)+292>>0]|0)k=c[(c[p>>2]|0)+296>>2]|0;else k=c[(c[(c
[v>>2]|0)+96>>2]|0)+40>>2]|0;c[u>>2]=k;if(!(c[u>>2]|0)){c[n>>2]=153;
x=c[n>>2]|0;i=y;return x|0}a[l>>0]=(c[r>>2]>>16&15|0)!=2;Vg(c[u>>2]|0,c[v
>>2]|0,c[p>>2]|0)|0;if((d[l>>0]|0)!=(d[(c[u>>2]|0)+604>>0]|0)){a[(c[u>>
;2]|0)+604>>0]=a[l>>0]|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[(
c[p>>2]|0)+240>>2]|0)>>>0)break;l=Mb(b[(c[(c[v>>2]|0)+672>>2]|0)+(c[m>
;>2]<<1)>>1]|0,c[(c[p>>2]|0)+72+16>>2]|0)|0;c[(c[(c[p>>2]|0)+244>>
;2]|0)+(c[m>>2]<<2)>>2]=l;c[m>>2]=(c[m>>2]|0)+1}$g(c[p>>2]|0)|0}if(d
[(c[u>>2]|0)+284+52>>0]&1|0)c[r>>2]=c[r>>2]|2;if(d[(c[u>>2]|0)+284+52>
;>0]&2|0){k=(c[u>>2]|0)+284|0;j=568;g=k+68|0;do{c[k>>2]=c[j>>2];k=k+4|0;j=j+4|0}while((k
|0)<(g|0))}a[(c[u>>2]|0)+561>>0]=c[r>>2]&128;c[(c[o>>2]|0)+160>>2]=c
[u>>2];c[(c[o>>2]|0)+164>>2]=c[(c[u>>2]|0)+392>>2]}do if(c[(c[(c[v>>
2]|0)+128>>2]|0)+52>>2]|0)c[(c[o>>2]|0)+84>>2]=0;else{c[t>>2]=Wa[c[(c[v>
x3e;2]|0)+508>>2]&31](c[v>>2]|0,1735162214,c[x>>2]|0,0)|0;if((c[t>>2]|0)==142){c[(c
[o>>2]|0)+84>>2]=0;break}if(!(c[t>>2]|0)){u=Mc(c[x>>2]|0)|0;c[(c[o>>2]|0)+84
x3e;>2]=u;break}c[n>>2]=c[t>>2];x=c[n>>2]|0;i=y;return x|0}while(0);if(!(a[s>>0]|0)){
c[w>>2]=c[c[(c[q>>2]|0)+156>>2]>>2];dc(c[w>>2]|0);c[(c[o>>2]|0)+12
x3e;>2]=c[w>>2]}c[(c[o>>2]|0)+16>>2]=c[r>>2];c[c[o>>2]>>2]=c[v
x3e;>2];c[(c[o>>2]|0)+4>>2]=c[p>>2];c[(c[o>>2]|0)+8>>2]=c[q>>2];
c[(c[o>>2]|0)+24>>2]=c[x>>2];c[n>>2]=0;x=c[n>>2]|0;i=y;return x|0}function jf(
d){d=d|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;h=k+12|0;j=k+8|0;g=k+4|0;f=k;c[h>>2]=d;c[j>>2]=0;if((a[(c[h>
;>2]|0)+300>>0]|0)==0?(c[j>>2]=kf(c[h>>2]|0)|0,c[j>>2]|0):0){j=c[j>>2]|0;
i=k;return j|0}if(a[(c[h>>2]|0)+301>>0]|0){j=c[j>>2]|0;i=k;return j|0}c[f>>2]=c[c[h>
;>2]>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[(c[h>>2]|0)+
240>>2]|0)>>>0)break;d=Mb(b[(c[(c[f>>2]|0)+672>>2]|0)+(c[g>>2]<<
;1)>>1]|0,c[(c[h>>2]|0)+72+16>>2]|0)|0;c[(c[(c[h>>2]|0)+244>>2]|0)+(c[g>
x3e;2]<<2)>>2]=d;c[g>>2]=(c[g>>2]|0)+1}c[g>>2]=0;while(1){if((c[g>>2
]|0)>>>0>=(e[(c[h>>2]|0)+256+8>>1]|0)>>>0)break;c[(c[(c[h>>2]|0
)+256+12>>2]|0)+(c[g>>2]<<3)>>2]=0;c[(c[(c[h>>2]|0)+256+12>>2]|0)+(c
[g>>2]<<3)+4>>2]=0;c[(c[(c[h>>2]|0)+256+16>>2]|0)+(c[g>>2]<<
;3)>>2]=0;c[(c[(c[h>>2]|0)+256+16>>2]|0)+(c[g>>2]<<3)+4>>2]=0;c[g>
;>2]=(c[g>>2]|0)+1}c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(e[(c[h>
x3e;2]|0)+248>>1]|0)>>>0)break;c[(c[(c[h>>2]|0)+252>>2]|0)+(c[g>>2]<
x3c;2)>>2]=0;c[g>>2]=(c[g>>2]|0)+1}f=(c[h>>2]|0)+172|0;g=568;d=f+68|0;do{c[f>>
2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(d|0));c[j>>2]=$g(c[h>>2]|0)|0;if(c[j>>2]|0){
j=c[j>>2]|0;i=k;return j|0}a[(c[h>>2]|0)+301>>0]=1;j=c[j>>2]|0;i=k;return j|0}function kf
(d){d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=i;i=i+48|0;l=q+32|0;m=q+28|0;p=q+24|0;n=q+20|0;h=q+16|0;f=q+12|0;k=q
+36|0;g=q+8|0;j=q+4|0;o=q;c[l>>2]=d;c[p>>2]=c[l>>2];c[n>>2]=c[c[l>>2]>>
;2];c[h>>2]=c[(c[n>>2]|0)+100>>2];c[g>>2]=(c[n>>2]|0)+260;a[(c[p>>2]|
0)+300>>0]=1;a[(c[p>>2]|0)+301>>0]=0;c[(c[p>>2]|0)+120>>2]=e[(c[g>>2
]|0)+20>>1];c[(c[p>>2]|0)+132>>2]=e[(c[g>>2]|0)+22>>1];c[(c[p>>2]|0)+
116>>2]=0;c[(c[p>>2]|0)+128>>2]=0;c[(c[p>>2]|0)+140>>2]=0;c[(c[p>>2]|
0)+144>>2]=0;c[(c[p>>2]|0)+240>>2]=c[(c[n>>2]|0)+668>>2];b[(c[p>>2]|
0)+248>>1]=b[(c[g>>2]|0)+18>>1]|0;c[j>>2]=(c[p>>2]|0)+72;a[(c[j>>2]|
0)+37>>0]=0;a[(c[j>>2]|0)+38>>0]=0;c[f>>2]=0;while(1){if((c[f>>2]|0)>=4)break
;c[(c[j>>2]|0)+20+(c[f>>2]<<2)>>2]=0;c[f>>2]=(c[f>>2]|0)+1}j=hc(c[h
x3e;>2]|0,16,0,c[(c[p>>2]|0)+120>>2]|0,0,m)|0;c[(c[p>>2]|0)+124>>2]=j;if(((((c[m>
;>2]|0)==0?(j=hc(c[h>>2]|0,16,0,c[(c[p>>2]|0)+132>>2]|0,0,m)|0,c[(c[p>>2]|0)+136>
;>2]=j,(c[m>>2]|0)==0):0)?(j=hc(c[h>>2]|0,4,0,c[(c[p>>2]|0)+240>>2]|0,0,m)|0,c[(c[p
>>2]|0)+244>>2]=j,(c[m>>2]|0)==0):0)?(j=hc(c[h>>2]|0,4,0,e[(c[p>>2]|0)+248>
;>1]|0,0,m)|0,c[(c[p>>2]|0)+252>>2]=j,(c[m>>2]|0)==0):0)?(b[k>>1]=b[(c[g>>
;2]|0)+16>>1]|0,b[k>>1]=(e[k>>1]|0)+4,c[m>>2]=lf(c[h>>2]|0,b[k>>1]|0
,0,(c[p>>2]|0)+256|0)|0,(c[m>>2]|0)==0):0){b[(c[p>>2]|0)+256+8>>1]=b[k>>1]|0;d
=(c[p>>2]|0)+172|0;f=568;g=d+68|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));c[o
x3e;>2]=c[(c[(c[n>>2]|0)+96>>2]|0)+4>>2];c[(c[n>>2]|0)+688>>2]=c[(c[o>
;>2]|0)+180>>2];if(!(c[(c[n>>2]|0)+688>>2]|0))c[(c[n>>2]|0)+688>>2]=37;c[
m>>2]=Ug(c[p>>2]|0)|0}if(!(c[m>>2]|0)){p=c[m>>2]|0;i=q;return p|0}bf(c[l>>2]|0
);p=c[m>>2]|0;i=q;return p|0}function lf(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;n=i;i=i+16|0;h=n
+8|0;j=n+14|0;k=n+12|0;l=n+4|0;m=n;c[h>>2]=a;b[j>>1]=d;b[k>>1]=f;c[l>>2]=g;f=c[l>
x3e;2]|0;d=f+36|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(d|0));c[c[l>>2]>>2]=c[h>>2];g=hc
(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0;c[(c[l>>2]|0)+12>>2]=g;if(((((c[m>>2]|0)==0?(g
=hc(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+16>>2]=g,(c[m>>2]|0)==0):0)?(
g=hc(c[h>>2]|0,8,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+20>>2]=g,(c[m>>2]|0)==0):0)?(
g=hc(c[h>>2]|0,1,0,e[j>>1]|0,0,m)|0,c[(c[l>>2]|0)+24>>2]=g,(c[m>>2]|0)==0):0)?(
h=hc(c[h>>2]|0,2,0,b[k>>1]|0,0,m)|0,c[(c[l>>2]|0)+28>>2]=h,(c[m>>2]|0)==0):0){
b[(c[l>>2]|0)+4>>1]=b[j>>1]|0;b[(c[l>>2]|0)+6>>1]=b[k>>1]|0;m=c[m>
;>2]|0;i=n;return m|0}cf(c[l>>2]|0);m=c[m>>2]|0;i=n;return m|0}function mf(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,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=i;i=i+96|0;h=G+68|0;j=G+64|0;C=G+60|0
;z=G+56|0;E=G+80|0;k=G+78|0;l=G+76|0;t=G+74|0;v=G+52|0;x=G+48|0;u=G+72|0;w=G+44|0;y=G+40|0;r=G+36|0;s=G+32|0;m=G+28|0;n=G+24|0;o
=G+20|0;p=G+16|0;q=G+12|0;B=G+8|0;D=G+4|0;A=G;c[j>>2]=f;c[C>>2]=0;c[(c[j>>2]|0)+244+12>>
2]=0;f=(c[j>>2]|0)+592|0;if((e[(c[j>>2]|0)+216>>1]|0)!=(e[(c[j>>2]|0)+216+2>>1
]|0)){c[f>>2]=103;c[(c[j>>2]|0)+596>>2]=9;c[(c[j>>2]|0)+600>>2]=10}else{c[f>
;>2]=104;c[(c[j>>2]|0)+596>>2]=11;c[(c[j>>2]|0)+600>>2]=12}vf(c[j>>2]|0);
Hf(c[j>>2]|0,c[(c[j>>2]|0)+284+28>>2]&255);a:while(1){a[(c[j>>2]|0)+368>>
0]=a[(c[(c[j>>2]|0)+356>>2]|0)+(c[(c[j>>2]|0)+360>>2]|0)>>0]|0;g=a[10705+(d[(c
[j>>2]|0)+368>>0]|0)>>0]|0;c[(c[j>>2]|0)+372>>2]=g;if((g|0)<0){if(((c[(c[
j>>2]|0)+360>>2]|0)+1|0)>(c[(c[j>>2]|0)+364>>2]|0)){F=196;break}g=2-(_(c[(c[j>
x3e;2]|0)+372>>2]|0,d[(c[(c[j>>2]|0)+356>>2]|0)+((c[(c[j>>2]|0)+360>>2]|0)+1)
x3e;>0]|0)|0)|0;c[(c[j>>2]|0)+372>>2]=g}if(((c[(c[j>>2]|0)+360>>2]|0)+(c[(c[j>
x3e;2]|0)+372>>2]|0)|0)>(c[(c[j>>2]|0)+364>>2]|0)){F=196;break}c[(c[j>>2]|0)+28>
;>2]=(c[(c[j>>2]|0)+16>>2]|0)-(d[10961+(d[(c[j>>2]|0)+368>>0]|0)>>0]>
;>4);f=c[j>>2]|0;if((c[(c[j>>2]|0)+28>>2]|0)<0){F=10;break}c[(c[j>>2]|0)+32>
;>2]=(c[f+28>>2]|0)+(d[10961+(d[(c[j>>2]|0)+368>>0]|0)>>0]&15);f=c[j>>
;2]|0;if((c[(c[j>>2]|0)+32>>2]|0)>>>0>(c[(c[j>>2]|0)+20>>2]|0)>
x3e;>0){F=12;break}a[f+376>>0]=1;c[(c[j>>2]|0)+12>>2]=0;c[z>>2]=(c[(c[j>>
2]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<2);a[E>>0]=a[(c[j>>2]|0)+368
x3e;>0]|0;b:do switch(d[E>>0]|0){case 5:case 4:case 3:case 2:case 1:case 0:{b[k>>1]=(d[E>>0]
x26;1)<<14;b[l>>1]=b[k>>1]^16384;if((d[E>>0]|0)<4){b[(c[j>>2]|0)+284+10
x3e;>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+10+2>>1]=b[l>>1]|0;b[(c[j>>2]|0)+284+
6>>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+6+2>>1]=b[l>>1]|0}if(!(d[E>>0]&
;2)){b[(c[j>>2]|0)+284+14>>1]=b[k>>1]|0;b[(c[j>>2]|0)+284+14+2>>1]=b[l>
x3e;1]|0}vf(c[j>>2]|0);break}case 7:case 6:{if(!((Qf(c[j>>2]|0,c[(c[z>>2]|0)+4>>2]&
65535,c[c[z>>2]>>2]&65535,d[(c[j>>2]|0)+368>>0]|0,(c[j>>2]|0)+284+10|0)|0
)&255)){g=(c[j>>2]|0)+284+6|0;f=(c[j>>2]|0)+284+10|0;b[g>>1]=b[f>>1]|0;b[g+2>
x3e;1]=b[f+2>>1]|0;vf(c[j>>2]|0)}break}case 9:case 8:{if(!((Qf(c[j>>2]|0,c[(c[z>>2]|0)+4
>>2]&65535,c[c[z>>2]>>2]&65535,d[(c[j>>2]|0)+368>>0]|0,(c[j>>
;2]|0)+284+14|0)|0)&255))vf(c[j>>2]|0);break}case 10:{b[t>>1]=c[(c[z>>2]|0)+4>>2];c
[x>>2]=b[t>>1];b[t>>1]=c[c[z>>2]>>2];c[v>>2]=b[t>>1];Rf(c[
j>>2]|0,c[v>>2]|0,c[x>>2]|0,(c[j>>2]|0)+284+10|0)|0;g=(c[j>>2]|0)+284+6|0;f=(c
[j>>2]|0)+284+10|0;b[g>>1]=b[f>>1]|0;b[g+2>>1]=b[f+2>>1]|0;vf(c[j>>2
]|0);break}case 11:{b[u>>1]=c[(c[z>>2]|0)+4>>2];c[y>>2]=b[u>>1];b[u>>
;1]=c[c[z>>2]>>2];c[w>>2]=b[u>>1];Rf(c[j>>2]|0,c[w>>2]|0,c[y>
x3e;2]|0,(c[j>>2]|0)+284+14|0)|0;vf(c[j>>2]|0);break}case 12:{c[c[z>>2]>>2]=b[(c[j>
x3e;2]|0)+284+10>>1];c[(c[z>>2]|0)+4>>2]=b[(c[j>>2]|0)+284+10+2>>1];break}case
13:{c[c[z>>2]>>2]=b[(c[j>>2]|0)+284+14>>1];c[(c[z>>2]|0)+4>>2]=b[(c
[j>>2]|0)+284+14+2>>1];break}case 14:{g=(c[j>>2]|0)+284+14|0;f=(c[j>>2]|0)+284+10|0;b[g
x3e;>1]=b[f>>1]|0;b[g+2>>1]=b[f+2>>1]|0;vf(c[j>>2]|0);break}case 15:{Sf(c[j>
x3e;2]|0,c[z>>2]|0);break}case 16:{b[(c[j>>2]|0)+284>>1]=c[c[z>>2]>>2];break}case
17:{b[(c[j>>2]|0)+284+2>>1]=c[c[z>>2]>>2];break}case 18:{b[(c[j>>2]|0)+284+4
x3e;>1]=c[c[z>>2]>>2];break}case 19:{Tf(c[j>>2]|0,c[z>>2]|0);break}case 20:{Uf(c[j
x3e;>2]|0,c[z>>2]|0);break}case 21:{Vf(c[j>>2]|0,c[z>>2]|0);break}case 22:{Wf(c[j>>
2]|0,c[z>>2]|0);break}case 23:if((c[c[z>>2]>>2]|0)<0){c[(c[j>>2]|0)+12>>2
]=132;break b}else{c[(c[j>>2]|0)+284+20>>2]=c[c[z>>2]>>2];break b}case 24:{c[(c[j>
x3e;2]|0)+284+28>>2]=1;c[(c[j>>2]|0)+568>>2]=33;break}case 25:{c[(c[j>>2]|0)+284+28>
;>2]=0;c[(c[j>>2]|0)+568>>2]=34;break}case 26:{c[(c[j>>2]|0)+284+24>>2]=c[c[z>
x3e;2]>>2];break}case 27:{Xf(c[j>>2]|0,c[z>>2]|0);break}case 28:{g=(c[j>>2]|0)+360|0;c[g
>>2]=(c[g>>2]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|0)+360>>2]|0)<
;0)c[(c[j>>2]|0)+12>>2]=132;a[(c[j>>2]|0)+376>>0]=0;break}case 29:{c[(c[j>>2]|
0)+284+36>>2]=c[c[z>>2]>>2];break}case 30:{c[(c[j>>2]|0)+284+40>>2]=c[c[z>
;>2]>>2];break}case 31:{c[(c[j>>2]|0)+284+44>>2]=c[c[z>>2]>>2]>>
;10;break}case 32:{c[(c[z>>2]|0)+4>>2]=c[c[z>>2]>>2];break}case 127:case 126:case 89:case
33:break;case 34:{c[(c[j>>2]|0)+32>>2]=0;break}case 35:{c[r>>2]=c[c[z>>2]>>2];
c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>>2];c[(c[z>>2]|0)+4>>2]=c[r>>
;2];break}case 36:{c[c[z>>2]>>2]=c[(c[j>>2]|0)+16>>2];break}case 37:{c[s>>2]=c
[c[z>>2]>>2];if((c[s>>2]|0)>0?(c[s>>2]|0)<=(c[(c[j>>2]|0)+28>
x3e;2]|0):0){c[c[z>>2]>>2]=c[(c[(c[j>>2]|0)+24>>2]|0)+((c[(c[j>>2]|0)+28>
x3e;2]|0)-(c[s>>2]|0)<<2)>>2];break b}c[(c[j>>2]|0)+12>>2]=134;break}case 38:{
Zf(c[j>>2]|0,c[z>>2]|0);break}case 39:{_f(c[j>>2]|0,c[z>>2]|0);break}case 40:{$f(c[j>
;>2]|0,c[z>>2]|0);break}case 41:{bg(c[j>>2]|0,c[z>>2]|0);break}case 42:{cg(c[j>>2]|
0,c[z>>2]|0);break}case 43:{dg(c[j>>2]|0,c[z>>2]|0);break}case 44:{eg(c[j>>2]|0,c[z>
;>2]|0);break}case 45:{fg(c[j>>2]|0,c[z>>2]|0);break}case 47:case 46:{gg(c[j>>2]|0,c[z>
x3e;2]|0);break}case 49:case 48:{hg(c[j>>2]|0,c[z>>2]|0);break}case 51:case 50:{kg(c[j>>2]|0,c[z
x3e;>2]|0);break}case 53:case 52:{ng(c[j>>2]|0,c[z>>2]|0);break}case 55:case 54:{og(c[j>>2]|0
,c[z>>2]|0);break}case 56:{pg(c[j>>2]|0,c[z>>2]|0);break}case 57:{rg(c[j>>2]|0,c[z>
x3e;2]|0);break}case 59:case 58:{sg(c[j>>2]|0,c[z>>2]|0);break}case 60:{tg(c[j>>2]|0,c[z>>
;2]|0);break}case 61:{c[(c[j>>2]|0)+284+28>>2]=2;c[(c[j>>2]|0)+568>>2]=35;break}case 63:
case 62:{ug(c[j>>2]|0,c[z>>2]|0);break}case 64:{vg(c[j>>2]|0,c[z>>2]|0);break}case 65:{wg
(c[j>>2]|0,c[z>>2]|0);break}case 66:{c[m>>2]=c[c[z>>2]>>2];if((c[m>>
2]|0)>>>0>=(e[(c[j>>2]|0)+468>>1]|0)>>>0)if(a[(c[j>>2]|0)+561
x3e;>0]|0){F=81;break b}else break b;else{c[(c[(c[j>>2]|0)+472>>2]|0)+(c[m>>2]<<2)
x3e;>2]=c[(c[z>>2]|0)+4>>2];break b}}case 67:{c[n>>2]=c[c[z>>2]>>2];if((c
[n>>2]|0)>>>0<(e[(c[j>>2]|0)+468>>1]|0)>>>0){c[c[z>>2
]>>2]=c[(c[(c[j>>2]|0)+472>>2]|0)+(c[n>>2]<<2)>>2];break b}if(a[(c[j
>>2]|0)+561>>0]|0)F=81;else c[c[z>>2]>>2]=0;break}case 68:{c[o>>2]=c[c[z>
x3e;2]>>2];f=c[j>>2]|0;if((c[o>>2]|0)>>>0>=(c[(c[j>>2]|0)+380>
x3e;2]|0)>>>0)if(a[f+561>>0]|0){F=81;break b}else break b;else{Ua[c[f+596>>2]&31](c[j>
;>2]|0,c[o>>2]|0,c[(c[z>>2]|0)+4>>2]|0);break b}}case 69:{c[p>>2]=c[c[z>>
2]>>2];f=c[j>>2]|0;if((c[p>>2]|0)>>>0<(c[(c[j>>2]|0)+380>>
2]|0)>>>0){g=Ya[c[f+592>>2]&127](c[j>>2]|0,c[p>>2]|0)|0;c[c[z>>2]>
;>2]=g;break b}if(a[f+561>>0]|0)F=81;else c[c[z>>2]>>2]=0;break}case 71:case 70:{yg(c[j>
x3e;2]|0,c[z>>2]|0);break}case 72:{zg(c[j>>2]|0,c[z>>2]|0);break}case 74:case 73:{Ag(c[j>>
;2]|0,c[z>>2]|0);break}case 75:{g=Bg(c[j>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 76:{g=Bg(c[
j>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 77:{a[(c[j>>2]|0)+284+32>>0]=1;break}case
78:{a[(c[j>>2]|0)+284+32>>0]=0;break}case 79:{c[(c[j>>2]|0)+12>>2]=135;break}case 80:{c
[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<(c[(c[z>>2]|0)+4>>2]|0)&1;break
}case 81:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<=(c[(c[z>>2]|0)+4>>2]|
0)&1;break}case 82:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)>(c[(c[z>>2]|0)+4
>>2]|0)&1;break}case 83:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)>=(c[(c[z>
;>2]|0)+4>>2]|0)&1;break}case 84:{c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)==(
c[(c[z>>2]|0)+4>>2]|0)&1;break}case 85:{c[c[z>>2]>>2]=(c[c[z>>2]>>
;2]|0)!=(c[(c[z>>2]|0)+4>>2]|0)&1;break}case 86:{g=((Oa[c[(c[j>>2]|0)+568>>2]&
63](c[j>>2]|0,c[c[z>>2]>>2]|0,0)|0)&127|0)==64&1;c[c[z>>2]>>2]=g;break
}case 87:{g=((Oa[c[(c[j>>2]|0)+568>>2]&63](c[j>>2]|0,c[c[z>>2]>>2]|0,0)|0
)&127|0)==0&1;c[c[z>>2]>>2]=g;break}case 88:{Cg(c[j>>2]|0,c[z>>2]|0);break}case
90:{if(c[c[z>>2]>>2]|0)f=(c[(c[z>>2]|0)+4>>2]|0)!=0;else f=0;c[c[z>>2]>
x3e;2]=f&1;break}case 91:{if(c[c[z>>2]>>2]|0)f=1;else f=(c[(c[z>>2]|0)+4>>2]|0)!=0;
c[c[z>>2]>>2]=f&1;break}case 92:{c[c[z>>2]>>2]=((c[c[z>>2]>>2]|
0)!=0^1)&1;break}case 93:{Dg(c[j>>2]|0,c[z>>2]|0);break}case 94:{b[(c[j>>2]|0)+284+48>
x3e;1]=c[c[z>>2]>>2];break}case 95:{b[(c[j>>2]|0)+284+50>>1]=c[c[z>>2]>
x3e;2];break}case 96:{g=c[z>>2]|0;c[g>>2]=(c[g>>2]|0)+(c[(c[z>>2]|0)+4>>2]|0);
break}case 97:{g=c[z>>2]|0;c[g>>2]=(c[g>>2]|0)-(c[(c[z>>2]|0)+4>>2]|0);break}case
98:if(!(c[(c[z>>2]|0)+4>>2]|0)){c[(c[j>>2]|0)+12>>2]=133;break b}else{g=Ub(c[c[z>
x3e;2]>>2]|0,64,c[(c[z>>2]|0)+4>>2]|0)|0;c[c[z>>2]>>2]=g;break b}case 99:{g=xb
(c[c[z>>2]>>2]|0,c[(c[z>>2]|0)+4>>2]|0,64)|0;c[c[z>>2]>>2]=g;break}case
100:{g=c[c[z>>2]>>2]|0;c[c[z>>2]>>2]=(c[c[z>>2]>>2]|0)<0?0-g|0
:g;break}case 101:{c[c[z>>2]>>2]=0-(c[c[z>>2]>>2]|0);break}case 102:{c[c[z>>2]
x3e;>2]=c[c[z>>2]>>2]&-64;break}case 103:{c[c[z>>2]>>2]=(c[c[z>>2]
x3e;>2]|0)+63&-64;break}case 107:case 106:case 105:case 104:{g=Oa[c[(c[j>>2]|0)+568>>2]&63](c
[j>>2]|0,c[c[z>>2]>>2]|0,c[(c[j>>2]|0)+244+20+((d[(c[j>>2]|0)+368>>0
]|0)-104<<2)>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 111:case 110:case 109:case 108:{g=If(c[
j>>2]|0,c[c[z>>2]>>2]|0,c[(c[j>>2]|0)+244+20+((d[(c[j>>2]|0)+368>>0]|
0)-108<<2)>>2]|0)|0;c[c[z>>2]>>2]=g;break}case 112:{c[q>>2]=c[c[z>>2
]>>2];if((c[q>>2]|0)>>>0>=(c[(c[j>>2]|0)+380>>2]|0)>>>
;0)if(a[(c[j>>2]|0)+561>>0]|0){F=81;break b}else break b;else{g=Mb(c[(c[z>>2]|0)+4>>2]|0
,c[(c[j>>2]|0)+244+16>>2]|0)|0;c[(c[(c[j>>2]|0)+384>>2]|0)+(c[q>>2]<<
;2)>>2]=g;break b}}case 114:case 113:{Dg(c[j>>2]|0,c[z>>2]|0);break}case 117:case 116:case 115:{Eg
(c[j>>2]|0,c[z>>2]|0);break}case 118:{Fg(c[j>>2]|0,16384,c[c[z>>2]>>2]|0);c[(c
[j>>2]|0)+284+28>>2]=6;c[(c[j>>2]|0)+568>>2]=36;break}case 119:{Fg(c[j>>2]|0,11585
,c[c[z>>2]>>2]|0);c[(c[j>>2]|0)+284+28>>2]=7;c[(c[j>>2]|0)+568>>2]=37
;break}case 120:{if(c[(c[z>>2]|0)+4>>2]|0){g=(c[j>>2]|0)+360|0;c[g>>2]=(c[g>>2
]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|0)+360>>2]|0)<0)c[(c[j>>2]|0)+12>
;>2]=132;a[(c[j>>2]|0)+376>>0]=0}break}case 121:{if(!(c[(c[z>>2]|0)+4>>2]|0)){g=(c[
j>>2]|0)+360|0;c[g>>2]=(c[g>>2]|0)+(c[c[z>>2]>>2]|0);if((c[(c[j>>2]|
0)+360>>2]|0)<0)c[(c[j>>2]|0)+12>>2]=132;a[(c[j>>2]|0)+376>>0]=0}break}case
122:{c[(c[j>>2]|0)+284+28>>2]=5;c[(c[j>>2]|0)+568>>2]=38;break}case 123:{$f(c[j>
x3e;2]|0,c[z>>2]|0);break}case 124:{c[(c[j>>2]|0)+284+28>>2]=4;c[(c[j>>2]|0)+568>
x3e;2]=39;break}case 125:{c[(c[j>>2]|0)+284+28>>2]=3;c[(c[j>>2]|0)+568>>2]=40;break}case
128:{Gg(c[j>>2]|0,c[z>>2]|0);break}case 129:{Hg(c[j>>2]|0,c[z>>2]|0);break}case 130:{Ig
(c[j>>2]|0,c[z>>2]|0);break}case 132:case 131:{$f(c[j>>2]|0,c[z>>2]|0);break}case 133:{Jg
(c[j>>2]|0,c[z>>2]|0);break}case 135:case 134:{Kg(c[j>>2]|0,c[z>>2]|0);break}case 136:{Lg
(c[j>>2]|0,c[z>>2]|0);break}case 137:{Mg(c[j>>2]|0,c[z>>2]|0);break}case 138:{Ng(c[j>
;>2]|0,c[z>>2]|0);break}case 139:{if((c[(c[z>>2]|0)+4>>2]|0)>(c[c[z>>2]>
x3e;2]|0))c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>>2];break}case 140:{if((c[(c[z>>2]|0)+
4>>2]|0)<(c[c[z>>2]>>2]|0))c[c[z>>2]>>2]=c[(c[z>>2]|0)+4>
x3e;2];break}case 141:{Og(c[j>>2]|0,c[z>>2]|0);break}case 142:{Pg(c[j>>2]|0,c[z>>2]|0);break
}case 143:{$f(c[j>>2]|0,c[z>>2]|0);break}default:{if((d[E>>0]|0)>=224){Qg(c[j>>2]|0
,c[z>>2]|0);break b}if((d[E>>0]|0)>=192){Rg(c[j>>2]|0,c[z>>2]|0);break b}if((d[E>
;>0]|0)>=184){Sg(c[j>>2]|0,c[z>>2]|0);break b}f=c[j>>2]|0;g=c[z>>2]|0;if((d[E
x3e;>0]|0)>=176){Tg(f,g);break b}else{$f(f,g);break b}}}while(0);if((F|0)==81){F=0;c[(c[j>>2]|0)+12>>
;2]=134}f=c[j>>2]|0;if(c[(c[j>>2]|0)+12>>2]|0){if((c[f+12>>2]|0)!=128)break;c[B>>
;2]=c[(c[j>>2]|0)+416>>2];c[D>>2]=(c[B>>2]|0)+(c[(c[j>>2]|0)+408>>2]
x3c;<4);while(1){if((c[B>>2]|0)>>>0>=(c[D>>2]|0)>>>0){F=186;break a}
if(d[(c[B>>2]|0)+12>>0]|0?(d[(c[j>>2]|0)+368>>0]|0)==(c[(c[B>>2]|0)+8>>
;2]&255|0):0)break;c[B>>2]=(c[B>>2]|0)+16}f=c[j>>2]|0;if((c[(c[j>>2]|0)+428>
x3e;2]|0)>=(c[(c[j>>2]|0)+432>>2]|0)){F=183;break}c[A>>2]=(c[(c[j>>2]|0)+436>
x3e;2]|0)+(c[f+428>>2]<<4);c[c[A>>2]>>2]=c[(c[j>>2]|0)+352>>2];c[(c[
A>>2]|0)+4>>2]=(c[(c[j>>2]|0)+360>>2]|0)+1;c[(c[A>>2]|0)+8>>2]=1;c[(
c[A>>2]|0)+12>>2]=c[(c[B>>2]|0)+4>>2];if(((ag(c[j>>2]|0,c[c[B>>2]>
;>2]|0,c[(c[B>>2]|0)+4>>2]|0)|0)&255|0)==1)break}else{c[(c[j>>2]|0)+16>>2]=c[f
+32>>2];if(a[(c[j>>2]|0)+376>>0]|0){g=(c[j>>2]|0)+360|0;c[g>>2]=(c[g>>
;2]|0)+(c[(c[j>>2]|0)+372>>2]|0)}g=(c[C>>2]|0)+1|0;c[C>>2]=g;if((g|0)>1e6){F=190;break
}}f=c[j>>2]|0;if((c[(c[j>>2]|0)+360>>2]|0)>=(c[(c[j>>2]|0)+364>>2]|0)){F=
192;break}if(!((a[f+488>>0]|0)!=0^1)){F=195;break}}if((F|0)==10)c[f+12>>2]=129;else if((F|0)==12)c[f+12>
;>2]=130;else if((F|0)==183)c[f+12>>2]=134;else if((F|0)==186)c[(c[j>>2]|0)+12>>2]=128;else if
((F|0)==190){c[h>>2]=139;F=c[h>>2]|0;i=G;return F|0}else if((F|0)==192)if((c[f+428>>2]|0)>0)c
[(c[j>>2]|0)+12>>2]=131;else F=195;else if((F|0)==196)c[(c[j>>2]|0)+12>>2]=131;if((F|0)==
195){c[h>>2]=0;F=c[h>>2]|0;i=G;return F|0}if(c[(c[j>>2]|0)+12>>2]|0?(a[(c[j>>2
]|0)+488>>0]|0)==0:0)a[(c[(c[j>>2]|0)+4>>2]|0)+301>>0]=0;c[h>>2]=c[(c[j>
x3e;2]|0)+12>>2];F=c[h>>2]|0;i=G;return F|0}function nf(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[(c[(c[e>>2]|0)+384>>2]|0)+(c[f>>2]<<2)
x3e;>2]|0;b=Mb(b,of(c[e>>2]|0)|0)|0;i=d;return b|0}function of(a){a=a|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+
8|0;f=h+4|0;g=h;c[e>>2]=a;do if(!(c[(c[e>>2]|0)+244+12>>2]|0)){a=c[e>>2]|0;if(!(b[(c[e
x3e;>2]|0)+284+10+2>>1]|0)){c[(c[e>>2]|0)+244+12>>2]=c[a+244>>2];break}d=c[e>
x3e;2]|0;if(!(b[a+284+10>>1]|0)){c[(c[e>>2]|0)+244+12>>2]=c[d+244+4>>2];break}else{c[f
x3e;>2]=xb(b[d+284+10>>1]|0,c[(c[e>>2]|0)+244>>2]|0,16384)|0;c[g>>2]=xb(b[(c[e>
;>2]|0)+284+10+2>>1]|0,c[(c[e>>2]|0)+244+4>>2]|0,16384)|0;g=pf(c[f>>2]|0,c[g>
x3e;2]|0)|0;c[(c[e>>2]|0)+244+12>>2]=g;break}}while(0);i=h;return c[(c[e>>2]|0)+244+12>>
2]|0}function pf(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;f=d+8|0;e=d;c[g>>2]=a;c[f>>2]=b;
c[e>>2]=c[g>>2];c[e+4>>2]=c[f>>2];b=me(e)|0;i=d;return b|0}function qf(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;d=c[h
x3e;>2]|0;d=Vb(d,of(c[g>>2]|0)|0)|0;c[(c[(c[g>>2]|0)+384>>2]|0)+(c[f>>2]<<
;2)>>2]=d;i=e;return}function rf(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;b=c[h>>2]|0;b=Vb(b,of(c[g>>2]|0)|0)|0;d=(c[(c[g>>
;2]|0)+384>>2]|0)+(c[f>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+b;i=e;return}function sf(
a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f+4|0;d=f;c[e>>2]=a;c[d>>2]=b;i=f;return c[(c[(c[e>>
;2]|0)+384>>2]|0)+(c[d>>2]<<2)>>2]|0}function tf(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;c[(c[(c[g>>2]|0)+384
>>2]|0)+(c[f>>2]<<2)>>2]=c[h>>2];i=e;return}function uf(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[(c[h>
;>2]|0)+384>>2]|0)+(c[g>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+(c[f>>2]|
0);i=e;return}function vf(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=a;d=(c[e>>2]|0)+284|0;do if((b[(
c[e>>2]|0)+284+14>>1]|0)!=16384){a=(c[e>>2]|0)+284+10|0;if((b[d+14+2>>1]|0)==16384){c[(c
[e>>2]|0)+564>>2]=b[a+2>>1]<<16;break}else{d=(_(b[a>>1]|0,b[(c[e>>2]|
0)+284+14>>1]|0)|0)<<2;d=d+((_(b[(c[e>>2]|0)+284+10+2>>1]|0,b[(c[e>>2]|0)+284+
14+2>>1]|0)|0)<<2)|0;c[(c[e>>2]|0)+564>>2]=d;break}}else c[(c[e>>2]|0)+564>
;>2]=b[d+10>>1]<<16;while(0);a=c[e>>2]|0;do if((b[(c[e>>2]|0)+284+10>>1]|
0)!=16384){d=(c[e>>2]|0)+572|0;if((b[a+284+10+2>>1]|0)==16384){c[d>>2]=42;break}else{c[d>>
;2]=43;break}}else c[a+572>>2]=41;while(0);a=c[e>>2]|0;do if((b[(c[e>>2]|0)+284+6>>1]|0)!=
16384){d=(c[e>>2]|0)+576|0;if((b[a+284+6+2>>1]|0)==16384){c[d>>2]=42;break}else{c[d>>2]=
44;break}}else c[a+576>>2]=41;while(0);c[(c[e>>2]|0)+584>>2]=4;c[(c[e>>2]|0)+588>
x3e;2]=5;do if((c[(c[e>>2]|0)+564>>2]|0)==1073741824){a=c[e>>2]|0;if((b[(c[e>>2]|0)+284+
14>>1]|0)==16384){c[a+584>>2]=6;c[(c[e>>2]|0)+588>>2]=7;break}if((b[a+284+14+2>>
;1]|0)==16384){c[(c[e>>2]|0)+584>>2]=8;c[(c[e>>2]|0)+588>>2]=9}}while(0);d=c[(c[e>
x3e;2]|0)+564>>2]|0;if((((c[(c[e>>2]|0)+564>>2]|0)<0?0-d|0:d)|0)>=67108864){e=c[e>
x3e;2]|0;e=e+244|0;e=e+12|0;c[e>>2]=0;i=f;return}c[(c[e>>2]|0)+564>>2]=1073741824;e=c[e>>
;2]|0;e=e+244|0;e=e+12|0;c[e>>2]=0;i=f;return}function wf(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=i;i=i+16|0;h=
f+8|0;e=f+4|0;g=f;c[h>>2]=a;c[e>>2]=b;c[g>>2]=d;c[h>>2]=c[h>>2];c[g>>
;2]=c[g>>2];i=f;return c[e>>2]|0}function xf(a,b,d){a=a|0;b=b|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]=b;c[e>>2]=d;c[h>>2]=c[h>>2];c[g>>2]=
c[g>>2];i=f;return c[e>>2]|0}function yf(a,d,e){a=a|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]=a;c[j>>2]=d;c[h>>2]=e;a=zf(c[j>>2]|0,c[h>>2]|0,b[(c[g>
x3e;2]|0)+284+10>>1]|0,b[(c[g>>2]|0)+284+10+2>>1]|0)|0;i=f;return a|0}function zf(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;h=i;i=i+64|0;t=h+48|0;r=h+44|0;s=h+40|0;q=h+36|0;p=
h+32|0;k=h+28|0;n=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;l=h+8|0;o=h+4|0;j=h;c[t>>2]=a;c[r>>2]=b;c[s>>2
]=d;c[q>>2]=e;c[f>>2]=_(c[t>>2]&65535,c[s>>2]|0)|0;c[p>>2]=_(c[t>>
;2]>>16,c[s>>2]|0)|0;c[l>>2]=(c[f>>2]|0)+(c[p>>2]<<16);c[n>>
;2]=(c[p>>2]>>16)+(c[f>>2]>>31)+((c[l>>2]|0)>>>0<(c[f>
;>2]|0)>>>0&1);c[f>>2]=_(c[r>>2]&65535,c[q>>2]|0)|0;c[p>>2
]=_(c[r>>2]>>16,c[q>>2]|0)|0;c[o>>2]=(c[f>>2]|0)+(c[p>>2]<<
;16);c[m>>2]=(c[p>>2]>>16)+(c[f>>2]>>31)+((c[o>>2]|0)>>>
;0<(c[f>>2]|0)>>>0&1);c[j>>2]=(c[l>>2]|0)+(c[o>>2]|0);c[g>
x3e;2]=(c[n>>2]|0)+(c[m>>2]|0)+((c[j>>2]|0)>>>0<(c[l>>2]|0)>>
;>0&1);c[k>>2]=c[g>>2]>>31;c[f>>2]=(c[j>>2]|0)+(c[k>>2]|0);
c[g>>2]=(c[g>>2]|0)+((c[k>>2]|0)+((c[f>>2]|0)>>>0<(c[j>>2]|
0)>>>0&1));c[j>>2]=c[f>>2];c[f>>2]=(c[j>>2]|0)+8192;c[g>>2
]=(c[g>>2]|0)+((c[f>>2]|0)>>>0<(c[j>>2]|0)>>>0&1);i=h;return
c[g>>2]<<18|(c[f>>2]|0)>>>14|0}function Af(a,d,e){a=a|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]=a;c[j>>2]=d;c[h>>2]=e;a=zf(c[j>>2]|0,c[h
x3e;>2]|0,b[(c[g>>2]|0)+284+6>>1]|0,b[(c[g>>2]|0)+284+6+2>>1]|0)|0;i=f;return a|0}function
Bf(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;p=i;i=i+32|0;k=p+12|0;l=p+8|0;m=p+16|0;n=p+4|0;o=p;c[k>>
;2]=f;c[l>>2]=g;b[m>>1]=h;c[n>>2]=j;c[o>>2]=b[(c[k>>2]|0)+284+14>>1];
if(c[o>>2]|0){h=xb(c[n>>2]|0,c[o>>2]<<16,c[(c[k>>2]|0)+564>>2]|0)|0;
g=(c[(c[l>>2]|0)+16>>2]|0)+(e[m>>1]<<3)|0;c[g>>2]=(c[g>>2]|0)+h;g=(c
[(c[l>>2]|0)+24>>2]|0)+(e[m>>1]|0)|0;a[g>>0]=d[g>>0]|8}c[o>>2]=b[(c[
k>>2]|0)+284+14+2>>1];if(!(c[o>>2]|0)){i=p;return}o=xb(c[n>>2]|0,c[o>>2]<
x3c;16,c[(c[k>>2]|0)+564>>2]|0)|0;g=(c[(c[l>>2]|0)+16>>2]|0)+(e[m>>1]<<
;3)+4|0;c[g>>2]=(c[g>>2]|0)+o;g=(c[(c[l>>2]|0)+24>>2]|0)+(e[m>>1]|0)|0;a[g>
;>0]=d[g>>0]|16;i=p;return}function Cf(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;n=i;i=i+32|0;
h=n+12|0;j=n+8|0;k=n+16|0;l=n+4|0;m=n;c[h>>2]=a;c[j>>2]=d;b[k>>1]=f;c[l>>2]=g;c[m>
x3e;2]=b[(c[h>>2]|0)+284+14>>1];if(c[m>>2]|0){f=xb(c[l>>2]|0,c[m>>2]<<
;16,c[(c[h>>2]|0)+564>>2]|0)|0;d=(c[(c[j>>2]|0)+12>>2]|0)+(e[k>>1]<<
3)|0;c[d>>2]=(c[d>>2]|0)+f}c[m>>2]=b[(c[h>>2]|0)+284+14+2>>1];if(!(c[m>
x3e;2]|0)){i=n;return}m=xb(c[l>>2]|0,c[m>>2]<<16,c[(c[h>>2]|0)+564>>2]|0)|0;d=(
c[(c[j>>2]|0)+12>>2]|0)+(e[k>>1]<<3)+4|0;c[d>>2]=(c[d>>2]|0)+m;i=n;return
}function Df(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;k=i;i=i+16|0;o=k+8|0;m=k+4|0;l=k+12|0;n=k;c[o>>2
]=f;c[m>>2]=g;b[l>>1]=h;c[n>>2]=j;c[o>>2]=c[o>>2];g=(c[(c[m>>2]|0)+16
>>2]|0)+((e[l>>1]|0)<<3)|0;c[g>>2]=(c[g>>2]|0)+(c[n>>2]|0);g=(c[(c[m
>>2]|0)+24>>2]|0)+(e[l>>1]|0)|0;a[g>>0]=d[g>>0]|0|8;i=k;return}function Ef(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;h=i;i=i+16|0;m=h+8|0;l=h+4|0;k=h+12|0;j=h;c[m>>2]=a;c[l>>
;2]=d;b[k>>1]=f;c[j>>2]=g;c[m>>2]=c[m>>2];d=(c[(c[l>>2]|0)+12>>2]|0)+((
e[k>>1]|0)<<3)|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);i=h;return}function Ff(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;k=i;i=i+16|0;o=k+8|0;m=k+4|0;l=k+12|0;n=k;c[o>>2]=f;c[m>>
2]=g;b[l>>1]=h;c[n>>2]=j;c[o>>2]=c[o>>2];g=(c[(c[m>>2]|0)+16>>2]|0)+((
e[l>>1]|0)<<3)+4|0;c[g>>2]=(c[g>>2]|0)+(c[n>>2]|0);g=(c[(c[m>>2]|0)+
24>>2]|0)+(e[l>>1]|0)|0;a[g>>0]=d[g>>0]|0|16;i=k;return}function Gf(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;h=i;i=i+16|0;m=h+8|0;l=h+4|0;k=h+12|0;j=h;c[m>>2]=a;c[l>>2]=d;b[k>
x3e;1]=f;c[j>>2]=g;c[m>>2]=c[m>>2];d=(c[(c[l>>2]|0)+12>>2]|0)+((e[k>>
;1]|0)<<3)+4|0;c[d>>2]=(c[d>>2]|0)+(c[j>>2]|0);i=h;return}function Hf(b,e){b=b|0;e=e|0;var
f=0,g=0,h=0;g=i;i=i+16|0;f=g;h=g+4|0;c[f>>2]=b;a[h>>0]=e;switch(d[h>>0]|0|0){case 5:{c[(c[f>
x3e;2]|0)+568>>2]=38;break}case 1:{c[(c[f>>2]|0)+568>>2]=33;break}case 4:{c[(c[f>>2]|0)+
568>>2]=39;break}case 3:{c[(c[f>>2]|0)+568>>2]=40;break}case 0:{c[(c[f>>2]|0)+568>
x3e;2]=34;break}case 2:{c[(c[f>>2]|0)+568>>2]=35;break}case 6:{c[(c[f>>2]|0)+568>>2]=36;
break}case 7:{c[(c[f>>2]|0)+568>>2]=37;break}default:{}}i=g;return}function If(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;j=g+12|0;e=g+8|0;h=g+4|0;f=g;c[j>>2]=a;c[e>>2]=b;c[h>>2]=d;c[j>
;>2]=c[j>>2];d=c[e>>2]|0;b=c[h>>2]|0;if((c[e>>2]|0)>=0){j=d+b|0;c[f>>
;2]=j;c[f>>2]=(c[e>>2]|0)!=0&(c[f>>2]|0)<0?0:j;j=c[f>>2]|0;i=g;return j|0}else
{j=d-b|0;c[f>>2]=j;c[f>>2]=(c[f>>2]|0)>0?0:j;j=c[f>>2]|0;i=g;return j|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,j=0;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>
;2]=b;c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e
x3e;>2]|0)+32&-64)|0;c[g>>2]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;
return j|0}c[g>>2]=(c[e>>2]|0)+(c[f>>2]|0)+32;if((c[e>>2]|0)!=0&(c[g>>2]|
0)>0){c[g>>2]=c[g>>2]&-64;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>
;>2]|0;i=h;return j|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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f
=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|
0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)+63&-64)|0;c[g>>2]=j;c[g>>2]=(c[g>>
;2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2]=(c[e>>2]|0)+(c[f>>2]|0)+63;if((c[e
x3e;>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2]=c[g>>2]&-64;j=c[g>>2]|0;i=h;return
j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c[j>>2]=
c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)&-64)|0;c[g>>2
]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2]=(c[e>>2]|
0)+(c[f>>2]|0);if((c[e>>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2]=c[g>>2]&
;-64;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|0}return 0}function Mf(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;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;
c[f>>2]=d;c[j>>2]=c[j>>2];if((c[e>>2]|0)>=0){j=((c[e>>2]|0)+(c[f>>
;2]|0)&-64)+32|0;c[g>>2]=j;c[g>>2]=(c[e>>2]|0)!=0&(c[g>>2]|0)<0?0:j;j=c[g
>>2]|0;i=h;return j|0}else{j=0-(((c[f>>2]|0)-(c[e>>2]|0)&-64)+32)|0;c[g>>2]=j;c[g
x3e;>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}return 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;h=i;i=i+16|0;j=h+12|0;e=h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[f>>2]=d;c
[j>>2]=c[j>>2];if((c[e>>2]|0)<0){j=0-((c[f>>2]|0)-(c[e>>2]|0)+16&-32
)|0;c[g>>2]=j;c[g>>2]=(c[g>>2]|0)>0?0:j;j=c[g>>2]|0;i=h;return j|0}c[g>>2
]=(c[e>>2]|0)+(c[f>>2]|0)+16;if((c[e>>2]|0)!=0&(c[g>>2]|0)>0){c[g>>2
]=c[g>>2]&-32;j=c[g>>2]|0;i=h;return j|0}else{c[g>>2]=0;j=c[g>>2]|0;i=h;return j|0}
return 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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2
]=a;c[f>>2]=b;c[g>>2]=d;if((c[f>>2]|0)>=0){a=(c[f>>2]|0)-(c[(c[e>>2]|0)+480
>>2]|0)+(c[(c[e>>2]|0)+484>>2]|0)+(c[g>>2]|0)&0-(c[(c[e>>2]|0)+476>
x3e;2]|0);c[h>>2]=a;c[h>>2]=(c[f>>2]|0)!=0&(c[h>>2]|0)<0?0:a;c[h>>2]=(
c[h>>2]|0)+(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}else{a=0-((c[(c[e>
x3e;2]|0)+484>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0)-(c[f>>2]|0)+(c[g>>2]|0)&0-(
c[(c[e>>2]|0)+476>>2]|0))|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>0?0:a;c[h>
x3e;2]=(c[h>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}return 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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>
;2]=b;c[g>>2]=d;if((c[f>>2]|0)>=0){a=_(((c[f>>2]|0)-(c[(c[e>>2]|0)+480>>2
]|0)+(c[(c[e>>2]|0)+484>>2]|0)+(c[g>>2]|0)|0)/(c[(c[e>>2]|0)+476>>2]|0)|0,c[(c
[e>>2]|0)+476>>2]|0)|0;c[h>>2]=a;c[h>>2]=(c[f>>2]|0)!=0&(c[h>>2
]|0)<0?0:a;c[h>>2]=(c[h>>2]|0)+(c[(c[e>>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;
return h|0}else{a=0-(_(((c[(c[e>>2]|0)+484>>2]|0)-(c[(c[e>>2]|0)+480>>2]|0)-(c[f>
x3e;2]|0)+(c[g>>2]|0)|0)/(c[(c[e>>2]|0)+476>>2]|0)|0,c[(c[e>>2]|0)+476>>2]|0)|
0)|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>0?0:a;c[h>>2]=(c[h>>2]|0)-(c[(c[e>
;>2]|0)+480>>2]|0);h=c[h>>2]|0;i=j;return h|0}return 0}function Qf(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;v=i;i=i+48|0;k=v+36|0;l=v+28|0;m=v+34|0;n=v+32|0;o=v+24|0;p=v+20|0;q=v+
16|0;r=v+12|0;s=v+8|0;t=v+4|0;u=v;c[l>>2]=d;b[m>>1]=f;b[n>>1]=g;c[o>>2]=h;c[p>>
;2]=j;if((e[m>>1]|0)>>>0<(e[(c[l>>2]|0)+108+8>>1]|0)>>>0?(e[n
x3e;>1]|0)>>>0<(e[(c[l>>2]|0)+72+8>>1]|0)>>>0:0){c[t>>2]=(
c[(c[l>>2]|0)+72+16>>2]|0)+(e[n>>1]<<3);c[u>>2]=(c[(c[l>>2]|0)+108+16
>>2]|0)+(e[m>>1]<<3);c[q>>2]=(c[c[t>>2]>>2]|0)-(c[c[u>>2]
x3e;>2]|0);c[r>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[u>>2]|0)+4>>2]|0);if(c[o
>>2]&1|0){c[s>>2]=c[r>>2];c[r>>2]=c[q>>2];c[q>>2]=0-(c[s>
x3e;2]|0)}Rf(c[l>>2]|0,c[q>>2]|0,c[r>>2]|0,c[p>>2]|0)|0;a[k>>0]=0;u=a[k>
x3e;0]|0;i=v;return u|0}if(a[(c[l>>2]|0)+561>>0]|0)c[(c[l>>2]|0)+12>>2]=134;a[k>>
;0]=1;u=a[k>>0]|0;i=v;return u|0}function Rf(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;
p=i;i=i+32|0;h=p+22|0;q=p+16|0;j=p+12|0;k=p+8|0;l=p+4|0;o=p;m=p+21|0;n=p+20|0;c[q>>2]=d;c[j>>2]=e;c[k>
x3e;2]=f;c[l>>2]=g;c[q>>2]=c[q>>2];d=c[j>>2]|0;if((((c[j>>2]|0)<0?0-d|0:d
)|0)<65536?(q=c[k>>2]|0,(((c[k>>2]|0)<0?0-q|0:q)|0)<65536):0){c[j>>2]=c[j>>
;2]<<8;c[k>>2]=c[k>>2]<<8;c[o>>2]=pf(c[j>>2]|0,c[k>>2]|0)|
0;if(!(c[o>>2]|0)){a[h>>0]=0;q=a[h>>0]|0;i=p;return q|0}else{q=(xb(c[j>>2]|0,16384,c[o
x3e;>2]|0)|0)&65535;b[c[l>>2]>>1]=q;q=(xb(c[k>>2]|0,16384,c[o>>2]|0)|0)&65535
;b[(c[l>>2]|0)+2>>1]=q;a[h>>0]=0;q=a[h>>0]|0;i=p;return q|0}}c[o>>2]=pf(c[j>
;>2]|0,c[k>>2]|0)|0;c[j>>2]=xb(c[j>>2]|0,16384,c[o>>2]|0)|0;c[k>>2]=xb(c[
k>>2]|0,16384,c[o>>2]|0)|0;q=_(c[j>>2]|0,c[j>>2]|0)|0;c[o>>2]=q+(_(c[k>
x3e;2]|0,c[k>>2]|0)|0);if((c[j>>2]|0)<0){c[j>>2]=0-(c[j>>2]|0);a[m>>0]=1}
else a[m>>0]=0;if((c[k>>2]|0)<0){c[k>>2]=0-(c[k>>2]|0);a[n>>0]=1}else a[n
>>0]=0;while(1){if((c[o>>2]|0)>=268435456)break;if((c[j>>2]|0)<(c[k>>2]|0))c[j
>>2]=(c[j>>2]|0)+1;else c[k>>2]=(c[k>>2]|0)+1;q=_(c[j>>2]|0,c[j>>2]|
0)|0;c[o>>2]=q+(_(c[k>>2]|0,c[k>>2]|0)|0)}while(1){if((c[o>>2]|0)<268451840)break;if
((c[j>>2]|0)<(c[k>>2]|0))c[j>>2]=(c[j>>2]|0)+-1;else c[k>>2]=(c[k>
x3e;2]|0)+-1;q=_(c[j>>2]|0,c[j>>2]|0)|0;c[o>>2]=q+(_(c[k>>2]|0,c[k>>2]|0)|0)}if
(a[m>>0]|0)c[j>>2]=0-(c[j>>2]|0);if(a[n>>0]|0)c[k>>2]=0-(c[k>>2]|0);
b[c[l>>2]>>1]=c[j>>2];b[(c[l>>2]|0)+2>>1]=c[k>>2];a[h>>0]=
0;q=a[h>>0]|0;i=p;return q|0}function Sf(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;x=i;i=i+64|0;h=x+44|0;y=x+40|0;v=x+56|0;k=x+54|0;l=x+52|0;m=x+50|0;n=x+48|0;s=x+36|0;t=x+32|0;u=x+28|0;o=x+24|0;p=x+
20|0;q=x+16|0;r=x+12|0;w=x+8|0;j=x;c[h>>2]=f;c[y>>2]=g;b[v>>1]=c[c[y>>2]>>2];b
[k>>1]=c[(c[y>>2]|0)+4>>2];b[l>>1]=c[(c[y>>2]|0)+8>>2];b[m>>
;1]=c[(c[y>>2]|0)+12>>2];b[n>>1]=c[(c[y>>2]|0)+16>>2];if(((((e[m>>1]|
0)>>>0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0?(e[n>>1]|0)>>
x3e;0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0:0)?(e[k>>1]|0)>>>0<(e
[(c[h>>2]|0)+72+8>>1]|0)>>>0:0)?(e[l>>1]|0)>>>0<(e[(c[h>
x3e;2]|0)+72+8>>1]|0)>>>0:0)?(e[v>>1]|0)>>>0<(e[(c[h>>2]|0)+108
+8>>1]|0)>>>0:0){c[q>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1
]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>>
2]|0);c[r>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)+4>>2]|0)-(
c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0);c[o>>2]=(c[(c[(c
[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+72+16
x3e;>2]|0)+(e[k>>1]<<3)>>2]|0);c[p>>2]=(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]
x3c;<3)+4>>2]|0);c[t>>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<
;3)>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2]|0);c[u>
;>2]=(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)-(c[(c[(c[h>
;>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0);y=(c[(c[h>>2]|0)+108+24>
x3e;2]|0)+(e[v>>1]|0)|0;a[y>>0]=d[y>>0]|24;y=xb(c[o>>2]|0,0-(c[r>>2]|0)|0,64)|
0;c[s>>2]=y+(xb(c[p>>2]|0,c[q>>2]|0,64)|0);y=c[s>>2]|0;if((((c[s>>2]|0)<0
?0-y|0:y)|0)>=64){y=xb(c[t>>2]|0,0-(c[r>>2]|0)|0,64)|0;c[w>>2]=y+(xb(c[u>>2]|0,c[q
x3e;>2]|0,64)|0);c[j>>2]=xb(c[w>>2]|0,c[o>>2]|0,c[s>>2]|0)|0;c[j+4>>2]=xb
(c[w>>2]|0,c[p>>2]|0,c[s>>2]|0)|0;c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>
;1]<<3)>>2]=(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2
]|0)+(c[j>>2]|0);c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)+4>>2]=(
c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)+(c[j+4>>2]|0);i=
x;return}else{c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)>>2]=((c[(c[(c[h>
;>2]|0)+72+16>>2]|0)+(e[k>>1]<<3)>>2]|0)+(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]
x3c;<3)>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)>>2]|
0)|0)/4|0;c[(c[(c[h>>2]|0)+108+16>>2]|0)+(e[v>>1]<<3)+4>>2]=((c[(c[(c[h>
x3e;2]|0)+72+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+72+16>>
;2]|0)+(e[l>>1]<<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]
x3c;<3)+4>>2]|0)+(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[n>>1]<<3)+4>>
;2]|0)|0)/4|0;i=x;return}}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=x;return}c[(c[h>>2]|0)+12>>2]=
134;i=x;return}function Tf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e
;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>2]|0)+36|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e
x3e;>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{e=(c[g>>2]|0)+36|0;d=(c[g>
x3e;2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c
[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>>2]=134;i=j;return}}b[(c[g>>
2]|0)+284+60>>1]=c[c[h>>2]>>2];i=j;return}function Uf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i
+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>
2]|0)+72|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));
break}case 1:{e=(c[g>>2]|0)+72|0;d=(c[g>>2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0
;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>
2]|0)+12>>2]=134;i=j;return}}b[(c[g>>2]|0)+284+62>>1]=c[c[h>>2]>>2];i=j;return
}function Vf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h
x3e;>2]>>2]|0){case 0:{e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=
c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+144
|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}default:{if(!(a[(c[g>>
;2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>>2]=134;i=j;return}}b[(c[g>>2]|0)+284+64
x3e;>1]=c[c[h>>2]>>2];i=j;return}function Wf(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0;j=i;i=i+16|0;g=j+4|0;
h=j;c[g>>2]=d;c[h>>2]=e;switch(c[c[h>>2]>>2]|0){case 0:{e=(c[g>>2]|0)+36|0;d=(
c[g>>2]|0)+180|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));break}case 1:{
e=(c[g>>2]|0)+36|0;d=(c[g>>2]|0)+144|0;f=e+36|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while
((e|0)<(f|0));break}default:{if(!(a[(c[g>>2]|0)+561>>0]|0)){i=j;return}c[(c[g>>2]|0)+12>
x3e;2]=134;i=j;return}}e=(c[g>>2]|0)+72|0;d=(c[g>>2]|0)+36|0;f=e+36|0;do{c[e>>2]=c[d>>2];
e=e+4|0;d=d+4|0}while((e|0)<(f|0));e=(c[g>>2]|0)+108|0;d=(c[g>>2]|0)+36|0;f=e+36|0;do{c[e>>2]=
c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0));b[(c[g>>2]|0)+284+60>>1]=c[c[h>>2]>
x3e;2];b[(c[g>>2]|0)+284+62>>1]=c[c[h>>2]>>2];b[(c[g>>2]|0)+284+64>>
1]=c[c[h>>2]>>2];i=j;return}function Xf(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+8|0;h=g+4|0;f=
g;c[e>>2]=a;c[h>>2]=b;c[e>>2]=c[e>>2];c[h>>2]=c[h>>2];c[f>>
;2]=1;while(1){if(((Yf(c[e>>2]|0)|0)&255|0)==1){e=7;break}switch(d[(c[e>>2]|0)+368>>0]|0|0){case
88:{c[f>>2]=(c[f>>2]|0)+1;break}case 89:{c[f>>2]=(c[f>>2]|0)+-1;break}default:{}}if(!(c
[f>>2]|0)){e=7;break}}if((e|0)==7){i=g;return}}function Yf(b){b=b|0;var e=0,f=0,g=0;g=i;i=i+16|0;e=g+4|0;f=g;c[f>
x3e;2]=b;b=(c[f>>2]|0)+360|0;c[b>>2]=(c[b>>2]|0)+(c[(c[f>>2]|0)+372>>2]|0);do
if((c[(c[f>>2]|0)+360>>2]|0)<(c[(c[f>>2]|0)+364>>2]|0)){a[(c[f>>2]|0)+368
>>0]=a[(c[(c[f>>2]|0)+356>>2]|0)+(c[(c[f>>2]|0)+360>>2]|0)>>0]|0;c[(
c[f>>2]|0)+372>>2]=a[10705+(d[(c[f>>2]|0)+368>>0]|0)>>0];if((c[(c[f>>
;2]|0)+372>>2]|0)<0){if(((c[(c[f>>2]|0)+360>>2]|0)+1|0)>(c[(c[f>>2]|0)+364>
;>2]|0))break;b=2-(_(c[(c[f>>2]|0)+372>>2]|0,d[(c[(c[f>>2]|0)+356>>2]|0)+((c[(c[f
x3e;>2]|0)+360>>2]|0)+1)>>0]|0)|0)|0;c[(c[f>>2]|0)+372>>2]=b}if(((c[(c[f>>
;2]|0)+360>>2]|0)+(c[(c[f>>2]|0)+372>>2]|0)|0)<=(c[(c[f>>2]|0)+364>>2]|0)){
a[e>>0]=0;b=a[e>>0]|0;i=g;return b|0}}while(0);c[(c[f>>2]|0)+12>>2]=131;a[e>>0
]=1;b=a[e>>0]|0;i=g;return b|0}function Zf(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;d=g+12|0;h=g+8|0;f=g+
4|0;e=g;c[d>>2]=a;c[h>>2]=b;c[f>>2]=c[c[h>>2]>>2];if((c[f>>2]|0)>
;0?(c[f>>2]|0)<=(c[(c[d>>2]|0)+28>>2]|0):0){c[e>>2]=c[(c[(c[d>>2]|0)+24
x3e;>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)<<2)>>2];Ts((c[(c[d>
x3e;2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)<<2)|0,(c[(c[d>
x3e;2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-(c[f>>2]|0)+1<<2)|0,(c[f>
x3e;2]|0)-1<<2|0)|0;c[(c[(c[d>>2]|0)+24>>2]|0)+((c[(c[d>>2]|0)+28>>2]|0)-1<
;<2)>>2]=c[e>>2];i=g;return}c[(c[d>>2]|0)+12>>2]=134;i=g;return}function _f(d,f){d=
d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;g=l+8|0;m=l+4|0;j=l+14|0;k=l+12|0;h=l;c[g>>2]=d;c[m>>2]=f
;b[j>>1]=c[c[m>>2]>>2];b[k>>1]=c[(c[m>>2]|0)+4>>2];if((e[j>>
;1]|0)>>>0<(e[(c[g>>2]|0)+72+8>>1]|0)>>>0?(e[k>>1]|0)>>
;>0<(e[(c[g>>2]|0)+36+8>>1]|0)>>>0:0){c[h>>2]=(Oa[c[(c[g>>2]|0)+
572>>2]&63](c[g>>2]|0,(c[(c[(c[g>>2]|0)+36+16>>2]|0)+(e[k>>1]<<
3)>>2]|0)-(c[(c[(c[g>>2]|0)+72+16>>2]|0)+(e[j>>1]<<3)>>2]|0)|0,(c[(c
[(c[g>>2]|0)+36+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)-(c[(c[(c[g>>2]|0)+72
+16>>2]|0)+(e[j>>1]<<3)+4>>2]|0)|0)|0)/2|0;_a[c[(c[g>>2]|0)+584>>2]
x26;15](c[g>>2]|0,(c[g>>2]|0)+72|0,b[j>>1]|0,c[h>>2]|0);_a[c[(c[g>>2]|0)+584
x3e;>2]&15](c[g>>2]|0,(c[g>>2]|0)+36|0,b[k>>1]|0,0-(c[h>>2]|0)|0);i=l;return}if
(!(a[(c[g>>2]|0)+561>>0]|0)){i=l;return}c[(c[g>>2]|0)+12>>2]=134;i=l;return}function $f(
b,e){b=b|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+16|0;m=l+12|0;k=l+8|0;f=l+4|0;j=l;c[h>>2]=b;c[m>
;>2]=e;c[k>>2]=c[(c[h>>2]|0)+416>>2];c[f>>2]=(c[k>>2]|0)+(c[(c[h>>
;2]|0)+408>>2]<<4);c[h>>2]=c[h>>2];c[m>>2]=c[m>>2];while(1){if((c[k
x3e;>2]|0)>>>0>=(c[f>>2]|0)>>>0){g=9;break}if((c[(c[k>>2]|0)+8>
x3e;2]&255|0)==(d[(c[h>>2]|0)+368>>0]|0|0)?d[(c[k>>2]|0)+12>>0]|0|0:0)break;c[k>
;>2]=(c[k>>2]|0)+16}if((g|0)==9){c[(c[h>>2]|0)+12>>2]=128;i=l;return}e=c[h>>2]|0;if
((c[(c[h>>2]|0)+428>>2]|0)>=(c[(c[h>>2]|0)+432>>2]|0)){c[e+12>>2]=130;i=l
;return}else{g=c[e+436>>2]|0;f=(c[h>>2]|0)+428|0;m=c[f>>2]|0;c[f>>2]=m+1;c[j>>
2]=g+(m<<4);c[c[j>>2]>>2]=c[(c[h>>2]|0)+352>>2];c[(c[j>>2]|0)+4>
;>2]=(c[(c[h>>2]|0)+360>>2]|0)+1;c[(c[j>>2]|0)+8>>2]=1;c[(c[j>>2]|0)+12
x3e;>2]=c[(c[k>>2]|0)+4>>2];ag(c[h>>2]|0,c[c[k>>2]>>2]|0,c[(c[k>>
;2]|0)+4>>2]|0)|0;a[(c[h>>2]|0)+376>>0]=0;i=l;return}}function ag(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;l=i;i=i+32|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=b;c[h>>2]=d;c[j>>2
]=e;if((c[h>>2]|0)<1|(c[h>>2]|0)>3){c[(c[g>>2]|0)+12>>2]=132;a[f>>0]=
1;k=a[f>>0]|0;i=l;return k|0}c[k>>2]=(c[g>>2]|0)+444+((c[h>>2]|0)-1<<3);if(!(c
[c[k>>2]>>2]|0)){c[(c[g>>2]|0)+12>>2]=138;a[f>>0]=1;k=a[f>>0]|0;i=l;
return k|0}if((c[j>>2]|0)>>>0>(c[(c[k>>2]|0)+4>>2]|0)>>>0){c[(c
[g>>2]|0)+12>>2]=131;a[f>>0]=1;k=a[f>>0]|0;i=l;return k|0}else{c[(c[g>>2]|0)+356
>>2]=c[c[k>>2]>>2];c[(c[g>>2]|0)+364>>2]=c[(c[k>>2]|0)+4>>
2];c[(c[g>>2]|0)+360>>2]=c[j>>2];c[(c[g>>2]|0)+352>>2]=c[h>>2];a[f
x3e;>0]=0;k=a[f>>0]|0;i=l;return k|0}return 0}function bg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;l=i;i=i+16|0;h
=l+4|0;m=l;k=l+8|0;j=l+10|0;c[h>>2]=f;c[m>>2]=g;b[k>>1]=c[c[m>>2]>>2];if((e[k
x3e;>1]|0)>>>0>=(e[(c[h>>2]|0)+36+8>>1]|0)>>>0){if(!(a[(c[h>>
;2]|0)+561>>0]|0)){i=l;return}c[(c[h>>2]|0)+12>>2]=134;i=l;return}a[j>>0]=-1;if(b[(c[h
x3e;>2]|0)+284+14>>1]|0)a[j>>0]=d[j>>0]&-9;if(b[(c[h>>2]|0)+284+14+2>>
;1]|0)a[j>>0]=d[j>>0]&-17;m=(c[(c[h>>2]|0)+36+24>>2]|0)+(e[k>>1]|0)|0;a[m
>>0]=d[m>>0]&d[j>>0];i=l;return}function cg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;
l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;k=l+8|0;h=l+4|0;j=l;c[e>>2]=b;c[f>>2]=d;c[g>>2]=c[(c[f>
;>2]|0)+4>>2];do if((c[g>>2]|0)>>>0<((c[(c[e>>2]|0)+420>>2]|0)+
1|0)>>>0){c[h>>2]=(c[(c[e>>2]|0)+404>>2]|0)+(c[g>>2]<<4);if(!(((
c[(c[e>>2]|0)+420>>2]|0)+1|0)==(c[(c[e>>2]|0)+396>>2]|0)?(c[(c[h>>2]|0)+8>
;>2]|0)==(c[g>>2]|0):0)){c[h>>2]=c[(c[e>>2]|0)+404>>2];c[j>>2]=(c[h>
x3e;2]|0)+(c[(c[e>>2]|0)+396>>2]<<4);while(1){if((c[h>>2]|0)>>>0<(c[
j>>2]|0)>>>0)d=(c[(c[h>>2]|0)+8>>2]|0)!=(c[g>>2]|0);else d=0;b=c[h>
x3e;2]|0;if(!d)break;c[h>>2]=b+16}if((b|0)==(c[j>>2]|0))break}if(a[(c[h>>2]|0)+12>>0]|0){
if((c[(c[e>>2]|0)+428>>2]|0)>=(c[(c[e>>2]|0)+432>>2]|0)){c[(c[e>>2]|0)+12
>>2]=130;i=l;return}if((c[c[f>>2]>>2]|0)<=0){i=l;return}c[k>>2]=(c[(c[e>>
2]|0)+436>>2]|0)+(c[(c[e>>2]|0)+428>>2]<<4);c[c[k>>2]>>2]=c[(c[e>
;>2]|0)+352>>2];c[(c[k>>2]|0)+4>>2]=(c[(c[e>>2]|0)+360>>2]|0)+1;c[(c[k>
;>2]|0)+8>>2]=c[c[f>>2]>>2];c[(c[k>>2]|0)+12>>2]=c[(c[h>>2]|0)+
4>>2];k=(c[e>>2]|0)+428|0;c[k>>2]=(c[k>>2]|0)+1;ag(c[e>>2]|0,c[c[h>>
2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0)|0;a[(c[e>>2]|0)+376>>0]=0;i=l;return}}while(0);
c[(c[e>>2]|0)+12>>2]=134;i=l;return}function dg(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;g=k+20|0;l=k+16|0;e=k+12|0;j=k+8|0;h=k+4|0;f=k;c[g>>2]=b;c[l>>2]=d;c[e>>2]=c[c[l>>2]
x3e;>2];do if((c[e>>2]|0)>>>0<((c[(c[g>>2]|0)+420>>2]|0)+1|0)>>
x3e;0){c[h>>2]=(c[(c[g>>2]|0)+404>>2]|0)+(c[e>>2]<<4);if(!(((c[(c[g>>
;2]|0)+420>>2]|0)+1|0)==(c[(c[g>>2]|0)+396>>2]|0)?(c[(c[h>>2]|0)+8>>2]|0)==(c[
e>>2]|0):0)){c[h>>2]=c[(c[g>>2]|0)+404>>2];c[f>>2]=(c[h>>2]|0)+(c[(c
[g>>2]|0)+396>>2]<<4);while(1){if((c[h>>2]|0)>>>0<(c[f>>2]|
0)>>>0)b=(c[(c[h>>2]|0)+8>>2]|0)!=(c[e>>2]|0);else b=0;d=c[h>>2]|0;if(!b)
break;c[h>>2]=d+16}if((d|0)==(c[f>>2]|0))break}if(a[(c[h>>2]|0)+12>>0]|0){d=c[g>>
;2]|0;if((c[(c[g>>2]|0)+428>>2]|0)>=(c[(c[g>>2]|0)+432>>2]|0)){c[d+12>>2]=
130;i=k;return}else{c[j>>2]=(c[d+436>>2]|0)+(c[(c[g>>2]|0)+428>>2]<<4);c[c[j
x3e;>2]>>2]=c[(c[g>>2]|0)+352>>2];c[(c[j>>2]|0)+4>>2]=(c[(c[g>>
2]|0)+360>>2]|0)+1;c[(c[j>>2]|0)+8>>2]=1;c[(c[j>>2]|0)+12>>2]=c[(c[h>>
;2]|0)+4>>2];l=(c[g>>2]|0)+428|0;c[l>>2]=(c[l>>2]|0)+1;ag(c[g>>2]|0,c[c[h>
;>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0)|0;a[(c[g>>2]|0)+376>>0]=0;i=k;return}}}
while(0);c[(c[g>>2]|0)+12>>2]=134;i=k;return}function eg(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=
i+32|0;j=k+16|0;l=k+12|0;g=k+8|0;h=k+4|0;f=k;c[j>>2]=b;c[l>>2]=e;c[h>>2]=c[(c[j>>2]|0)+404
>>2];c[f>>2]=(c[h>>2]|0)+(c[(c[j>>2]|0)+396>>2]<<4);c[g>>2
]=c[c[l>>2]>>2];while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>
x3e;0)break;if((c[(c[h>>2]|0)+8>>2]|0)==(c[g>>2]|0))break;c[h>>2]=(c[h>>2]|0)+
16}do if((c[h>>2]|0)==(c[f>>2]|0)){e=c[j>>2]|0;if((c[(c[j>>2]|0)+396>>2]|0)>
;>>0<(c[(c[j>>2]|0)+400>>2]|0)>>>0){l=e+396|0;c[l>>2]=(c[l>>
;2]|0)+1;break}c[e+12>>2]=140;i=k;return}while(0);e=c[j>>2]|0;if((c[g>>2]|0)>>>0>
;65535){c[e+12>>2]=140;i=k;return}c[c[h>>2]>>2]=c[e+352>>2];c[(c[h>>2]|0)+8>
;>2]=c[g>>2]&65535;c[(c[h>>2]|0)+4>>2]=(c[(c[j>>2]|0)+360>>2]|0)+1;a
[(c[h>>2]|0)+12>>0]=1;if((c[g>>2]|0)>>>0>(c[(c[j>>2]|0)+420>>
;2]|0)>>>0)c[(c[j>>2]|0)+420>>2]=c[g>>2]&65535;a:while(1){if((Yf(c[j>>
;2]|0)|0)&255|0){e=16;break}switch(d[(c[j>>2]|0)+368>>0]|0|0){case 44:case 137:{e=15;break a}case 45:{e
=16;break a}default:{}}}if((e|0)==15){c[(c[j>>2]|0)+12>>2]=137;i=k;return}else if((e|0)==16){i=k;return}}function
fg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;e=g+8|0;h=g+4|0;f=g;c[e>>2]=b;c[h>>2]=d;c[e>>
;2]=c[e>>2];c[h>>2]=c[h>>2];d=c[e>>2]|0;if((c[(c[e>>2]|0)+428>>2]|0)
x3c;=0){c[d+12>>2]=136;i=g;return}d=d+428|0;c[d>>2]=(c[d>>2]|0)+-1;c[f>>2]=(c[(c[e>
x3e;2]|0)+436>>2]|0)+(c[(c[e>>2]|0)+428>>2]<<4);d=(c[f>>2]|0)+8|0;c[d>>
;2]=(c[d>>2]|0)+-1;a[(c[e>>2]|0)+376>>0]=0;d=c[e>>2]|0;if((c[(c[f>>2]|0)+8>
;>2]|0)>0){h=d+428|0;c[h>>2]=(c[h>>2]|0)+1;c[(c[e>>2]|0)+360>>2]=c[(c[f>
x3e;2]|0)+12>>2];i=g;return}else{ag(d,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0
;i=g;return}}function gg(f,g){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;h=m+12|0;n=m+8|0;l=m+16|0;j=m+4|0;k=m;c[h>
;>2]=f;c[n>>2]=g;b[l>>1]=c[c[n>>2]>>2];g=c[h>>2]|0;if((e[l>>1]|
0)>>>0>=(e[(c[h>>2]|0)+36+8>>1]|0)>>>0){if(!(a[g+561>>0]|0)){i=
m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}if(d[g+368>>0]&1|0){c[j>>2]=Oa[c[(c[h
x3e;>2]|0)+572>>2]&63](c[h>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[l>>
;1]<<3)>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[l>>1]<<3)+4>>
;2]|0)|0;n=Oa[c[(c[h>>2]|0)+568>>2]&63](c[h>>2]|0,c[j>>2]|0,c[(c[h>>2]|0)+
244+20>>2]|0)|0;c[k>>2]=n-(c[j>>2]|0)}else c[k>>2]=0;_a[c[(c[h>>2]|0)+584>
;>2]&15](c[h>>2]|0,(c[h>>2]|0)+36|0,b[l>>1]|0,c[k>>2]|0);b[(c[h>>2]|
0)+284>>1]=b[l>>1]|0;b[(c[h>>2]|0)+284+2>>1]=b[l>>1]|0;i=m;return}function hg(
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;r=i;i=i+64|0;h=r+44|0;s=r+40|0;j=r+24|0;p=r+50|0;n=r+16|0;m=r+12
|0;o=r+8|0;l=r+4|0;q=r;k=r+48|0;c[h>>2]=f;c[s>>2]=g;c[h>>2]=c[h>>2];c[s>>2]=c[
s>>2];if(!(b[(c[h>>2]|0)+144+10>>1]|0)){i=r;return}if(d[(c[h>>2]|0)+368>>0]&
;1|0){a[p>>0]=8;c[j>>2]=c[(c[h>>2]|0)+144+12>>2];c[j+4>>2]=c[(c[h>>2
]|0)+144+16>>2];c[j+8>>2]=c[(c[h>>2]|0)+144+20>>2]}else{a[p>>0]=16;c[j>
x3e;2]=(c[(c[h>>2]|0)+144+12>>2]|0)+4;c[j+4>>2]=(c[(c[h>>2]|0)+144+16>>2]|0)+4
;c[j+8>>2]=(c[(c[h>>2]|0)+144+20>>2]|0)+4}c[j+12>>2]=e[(c[h>>2]|0)+144+8>
x3e;1];b[k>>1]=0;c[q>>2]=0;do{c[m>>2]=(e[(c[(c[h>>2]|0)+144+28>>2]|0)+(b[k>
;>1]<<1)>>1]|0)-(e[(c[h>>2]|0)+144+32>>1]|0);c[n>>2]=c[q>>2];if
((c[m>>2]|0)>>>0>=(e[(c[h>>2]|0)+144+8>>1]|0)>>>0)c[m>>
;2]=(e[(c[h>>2]|0)+144+8>>1]|0)-1;while(1){if((c[q>>2]|0)>>>0<=(c[m>>
;2]|0)>>>0)g=(d[(c[(c[h>>2]|0)+144+24>>2]|0)+(c[q>>2]|0)>>0]&d[p>
;>0]|0)==0;else g=0;f=c[q>>2]|0;if(!g)break;c[q>>2]=f+1}do if(f>>>0<=(c[m>>
;2]|0)>>>0){c[o>>2]=c[q>>2];c[l>>2]=c[q>>2];c[q>>2]=(c[q>
x3e;2]|0)+1;while(1){if((c[q>>2]|0)>>>0>(c[m>>2]|0)>>>0)break;if(d[(c[(c[
h>>2]|0)+144+24>>2]|0)+(c[q>>2]|0)>>0]&d[p>>0]|0){ig(j,(c[l>>2]|
0)+1|0,(c[q>>2]|0)-1|0,c[l>>2]|0,c[q>>2]|0);c[l>>2]=c[q>>2]}c[q>>2]=(
c[q>>2]|0)+1}if((c[l>>2]|0)==(c[o>>2]|0)){jg(j,c[n>>2]|0,c[m>>2]|0,c[l>
x3e;2]|0);break}ig(j,(c[l>>2]|0)+1&65535,c[m>>2]|0,c[l>>2]|0,c[o>>2]|0);if((c[o>
;>2]|0)>>>0>0)ig(j,c[n>>2]|0,(c[o>>2]|0)-1|0,c[l>>2]|0,c[o>>2]|
0)}while(0);b[k>>1]=(b[k>>1]|0)+1<<16>>16}while((b[k>>1]|0)<(b[(c[h>
x3e;2]|0)+144+10>>1]|0));i=r;return}function ig(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,x=0,y=0,z=0,A=0;A=i;i=i+80|0;h=A+64|0;j=A+60|0;k=A+56|0;l=A+52|0;m=A+48|0;p=A+44|0;s=A+40|0;t
=A+36|0;q=A+32|0;r=A+28|0;n=A+24|0;o=A+20|0;w=A+16|0;x=A+12|0;y=A+8|0;u=A+4|0;v=A+68|0;z=A;c[h>>2]=b;c[j>>2]=
d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;if((c[j>>2]|0)>>>0>(c[k>>2
]|0)>>>0){i=A;return}if((c[l>>2]|0)>>>0>=(c[(c[h>>2]|0)+12>>2]|
0)>>>0){i=A;return}if((c[m>>2]|0)>>>0>=(c[(c[h>>2]|0)+12>>2]|0)
x3e;>>0){i=A;return}c[s>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+(c[l>>2]<<3)
x3e;>2];c[t>>2]=c[(c[(c[h>>2]|0)+8>>2]|0)+(c[m>>2]<<3)>>2];if((
c[s>>2]|0)>(c[t>>2]|0)){c[w>>2]=c[s>>2];c[s>>2]=c[t>>2];c[t>
;>2]=c[w>>2];c[x>>2]=c[l>>2];c[l>>2]=c[m>>2];c[m>>2]=c[x>
x3e;2]}c[q>>2]=c[(c[c[h>>2]>>2]|0)+(c[l>>2]<<3)>>2];c[r>>2
]=c[(c[c[h>>2]>>2]|0)+(c[m>>2]<<3)>>2];c[n>>2]=(c[(c[(c[h>>
;2]|0)+4>>2]|0)+(c[l>>2]<<3)>>2]|0)-(c[q>>2]|0);c[o>>2]=(c[(c[(c[h
x3e;>2]|0)+4>>2]|0)+(c[m>>2]<<3)>>2]|0)-(c[r>>2]|0);if((c[s>>2]|
0)==(c[t>>2]|0)){c[p>>2]=c[j>>2];while(1){if((c[p>>2]|0)>>>0>(c[k>
;>2]|0)>>>0)break;c[y>>2]=c[(c[c[h>>2]>>2]|0)+(c[p>>2]<<3)
x3e;>2];if((c[y>>2]|0)<=(c[q>>2]|0))c[y>>2]=(c[y>>2]|0)+(c[n>>2]|0);
else c[y>>2]=(c[y>>2]|0)+(c[o>>2]|0);c[(c[(c[h>>2]|0)+4>>2]|0)+(c[p>>
;2]<<3)>>2]=c[y>>2];c[p>>2]=(c[p>>2]|0)+1}i=A;return}c[u>>2]=0;a[v
x3e;>0]=0;c[p>>2]=c[j>>2];while(1){if((c[p>>2]|0)>>>0>(c[k>>2]|
0)>>>0)break;c[z>>2]=c[(c[c[h>>2]>>2]|0)+(c[p>>2]<<3)>>
;2];do if((c[z>>2]|0)<=(c[q>>2]|0))c[z>>2]=(c[z>>2]|0)+(c[n>>2]|0);else{if
((c[z>>2]|0)>=(c[r>>2]|0)){c[z>>2]=(c[z>>2]|0)+(c[o>>2]|0);break}if(!(a[v
>>0]|0)){a[v>>0]=1;c[u>>2]=xb((c[r>>2]|0)+(c[o>>2]|0)-((c[q>>2]|0)+(
c[n>>2]|0))|0,65536,(c[t>>2]|0)-(c[s>>2]|0)|0)|0}y=(c[q>>2]|0)+(c[n>>2]|0)|0;c
[z>>2]=y+(Mb((c[(c[(c[h>>2]|0)+8>>2]|0)+(c[p>>2]<<3)>>2]|0)-(c[s>
;>2]|0)|0,c[u>>2]|0)|0)}while(0);c[(c[(c[h>>2]|0)+4>>2]|0)+(c[p>>2]<<3)
x3e;>2]=c[z>>2];c[p>>2]=(c[p>>2]|0)+1}i=A;return}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;m=i;i=i+32|0;f=m+20|0;g=m+16|0;h=m+12|0;j=m+8|0;l=m+4|0;k=m;c[f>>2]=a;c[g>>
2]=b;c[h>>2]=d;c[j>>2]=e;c[k>>2]=(c[(c[(c[f>>2]|0)+4>>2]|0)+(c[j>>2]
x3c;<3)>>2]|0)-(c[(c[c[f>>2]>>2]|0)+(c[j>>2]<<3)>>2]|0);if(!(c[
k>>2]|0)){i=m;return}c[l>>2]=c[g>>2];while(1){if((c[l>>2]|0)>>>0>=(c
[j>>2]|0)>>>0)break;a=(c[(c[f>>2]|0)+4>>2]|0)+(c[l>>2]<<3)|0;c[
a>>2]=(c[a>>2]|0)+(c[k>>2]|0);c[l>>2]=(c[l>>2]|0)+1}c[l>>2]=(c[j>
;>2]|0)+1;while(1){if((c[l>>2]|0)>>>0>(c[h>>2]|0)>>>0)break;a=(c[(c[
f>>2]|0)+4>>2]|0)+(c[l>>2]<<3)|0;c[a>>2]=(c[a>>2]|0)+(c[k>>
;2]|0);c[l>>2]=(c[l>>2]|0)+1}i=m;return}function kg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+64|
0;k=l+48|0;m=l+44|0;g=l+4|0;h=l;j=l+52|0;c[k>>2]=d;c[m>>2]=f;c[k>>2]=c[k>>2];c[m>
x3e;2]=c[m>>2];f=c[k>>2]|0;if((c[(c[k>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0)+284
+20>>2]|0)){c[f+12>>2]=134;i=l;return}if((lg(f,g,h,l+8|0,l+54|0)|0)<<24>>24){i=l;return}
while(1){d=c[k>>2]|0;if((c[(c[k>>2]|0)+284+20>>2]|0)<=0){f=10;break}f=d+28|0;c[f>>2
]=(c[f>>2]|0)+-1;b[j>>1]=c[(c[(c[k>>2]|0)+24>>2]|0)+(c[(c[k>>2]|0)+28>>
;2]<<2)>>2];f=c[k>>2]|0;if((e[j>>1]|0)>>>0>=(e[(c[k>>2]|0)+
108+8>>1]|0)>>>0){if(a[f+561>>0]|0){f=7;break}}else mg(f,b[j>>1]|0,c[g>>2
]|0,c[h>>2]|0,1);m=(c[k>>2]|0)+284+20|0;c[m>>2]=(c[m>>2]|0)+-1}if((f|0)==7){c[(c[k>
x3e;2]|0)+12>>2]=134;i=l;return}else if((f|0)==10){c[d+284+20>>2]=1;c[(c[k>>2]|0)+32>>2]=
c[(c[k>>2]|0)+28>>2];i=l;return}}function lg(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;u=i;i=i+64|0;l=u+62|0;m=u+56|0;n=u+52|0;o=u+48|0;p=u+44|0;q=u+40|0;t=u+4|0;s=u+60|0;r=u;c[m>>2]=
f;c[n>>2]=g;c[o>>2]=h;c[p>>2]=j;c[q>>2]=k;f=c[m>>2]|0;if(d[(c[m>>2]|
0)+368>>0]&1|0){g=t;f=f+36|0;k=g+36|0;do{c[g>>2]=c[f>>2];g=g+4|0;f=f+4|0}while((g|0)<(k|
0));b[s>>1]=b[(c[m>>2]|0)+284+2>>1]|0}else{g=t;f=f+72|0;k=g+36|0;do{c[g>>2]=c[f>>
;2];g=g+4|0;f=f+4|0}while((g|0)<(k|0));b[s>>1]=b[(c[m>>2]|0)+284+4>>1]|0}if((e[s>>1
]|0)>>>0<(e[t+8>>1]|0)>>>0){g=c[p>>2]|0;f=t;k=g+36|0;do{c[g>>2]=
c[f>>2];g=g+4|0;f=f+4|0}while((g|0)<(k|0));b[c[q>>2]>>1]=b[s>>1]|0;c[r>>2
]=Oa[c[(c[m>>2]|0)+572>>2]&63](c[m>>2]|0,(c[(c[t+16>>2]|0)+(e[s>>1]<
x3c;3)>>2]|0)-(c[(c[t+12>>2]|0)+(e[s>>1]<<3)>>2]|0)|0,(c[(c[t+16>>2]|
0)+(e[s>>1]<<3)+4>>2]|0)-(c[(c[t+12>>2]|0)+(e[s>>1]<<3)+4>>
;2]|0)|0)|0;t=xb(c[r>>2]|0,b[(c[m>>2]|0)+284+14>>1]<<16,c[(c[m>>2]|0)+564>
;>2]|0)|0;c[c[n>>2]>>2]=t;t=xb(c[r>>2]|0,b[(c[m>>2]|0)+284+14+2>>1]<
x3c;16,c[(c[m>>2]|0)+564>>2]|0)|0;c[c[o>>2]>>2]=t;a[l>>0]=0;t=a[l>>0
]|0;i=u;return t|0}if(a[(c[m>>2]|0)+561>>0]|0)c[(c[m>>2]|0)+12>>2]=134;b[c[q>>
2]>>1]=0;a[l>>0]=1;t=a[l>>0]|0;i=u;return t|0}function mg(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;q=i;i=i+16|0;l=q+8|0;m=q+12|0;n=q+4|0;o=q;p=q+14|0;c[l>>2]=f;b[m>>1]=g;c[n>
;>2]=h;c[o>>2]=j;a[p>>0]=k;if(b[(c[l>>2]|0)+284+14>>1]|0?(k=(c[(c[l>>2]|0
)+108+16>>2]|0)+(e[m>>1]<<3)|0,c[k>>2]=(c[k>>2]|0)+(c[n>>2]|0),a[p
x3e;>0]|0):0){k=(c[(c[l>>2]|0)+108+24>>2]|0)+(e[m>>1]|0)|0;a[k>>0]=d[k>>0
]|8}if(!(b[(c[l>>2]|0)+284+14+2>>1]|0)){i=q;return}k=(c[(c[l>>2]|0)+108+16>>2]|0)+(e[m
x3e;>1]<<3)+4|0;c[k>>2]=(c[k>>2]|0)+(c[o>>2]|0);if(!(a[p>>0]|0)){i=q;return
}k=(c[(c[l>>2]|0)+108+24>>2]|0)+(e[m>>1]|0)|0;a[k>>0]=d[k>>0]|16;i=q;return}function
ng(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;q=i;i=i+64|0;g=q+48|0;r=q+44|0;p=q+8|0;o=q+60|0;j=q+4|0;k=q
;h=q+58|0;l=q+56|0;n=q+54|0;m=q+52|0;c[g>>2]=d;c[r>>2]=f;b[h>>1]=c[c[r>>2]>>2];
f=c[g>>2]|0;if((b[h>>1]|0)>>>0>=(b[(c[g>>2]|0)+144+10>>1]|0)>
x3e;>0){if(!(a[f+561>>0]|0)){i=q;return}c[(c[g>>2]|0)+12>>2]=134;i=q;return}if((lg(f,j,k,p,o)|
0)<<24>>24){i=q;return}if(!(b[h>>1]|0))b[l>>1]=0;else b[l>>1]=(e[(c[(c[g>
x3e;2]|0)+144+28>>2]|0)+((b[h>>1]|0)-1<<1)>>1]|0)+1-(e[(c[g>>2]|0)+144+32>
;>1]|0);b[n>>1]=(e[(c[(c[g>>2]|0)+144+28>>2]|0)+(b[h>>1]<<1)>>1
]|0)-(e[(c[g>>2]|0)+144+32>>1]|0);do if((e[n>>1]|0)>>>0>=(e[(c[g>>2]|
0)+108+8>>1]|0)>>>0)if((e[(c[g>>2]|0)+108+8>>1]|0)>0){b[n>>1]=(e[(c[
g>>2]|0)+108+8>>1]|0)-1;break}else{b[n>>1]=0;break}while(0);b[m>>1]=b[l>>1]|0;
while(1){if((e[m>>1]|0)>(e[n>>1]|0))break;if(!((c[p+16>>2]|0)==(c[(c[g>>2]|0)+108+16
>>2]|0)?(e[o>>1]|0)==(e[m>>1]|0):0))mg(c[g>>2]|0,b[m>>1]|0,c[j>>2]|0
,c[k>>2]|0,1);b[m>>1]=(b[m>>1]|0)+1<<16>>16}i=q;return}function og(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;p=i;i=i+64|0;g=p+48|0;q=p+44|0;n=p+8|0;m=p+56|0;h=p+4|0;j=p;l=p+54|0;k=p+52|0;
c[g>>2]=d;c[q>>2]=f;f=c[g>>2]|0;if((c[c[q>>2]>>2]|0)>>>0>=
2){if(!(a[f+561>>0]|0)){i=p;return}c[(c[g>>2]|0)+12>>2]=134;i=p;return}if((lg(f,h,j,n,m)|0)<
x3c;24>>24){i=p;return}if((e[(c[g>>2]|0)+284+64>>1]|0)==0?(e[(c[g>>2]|0)+108+8>>
;1]|0)>0:0)b[l>>1]=(e[(c[g>>2]|0)+108+8>>1]|0)-1;else o=8;do if((o|0)==8){if((e[(c[g>>
;2]|0)+284+64>>1]|0)==1?(b[(c[g>>2]|0)+108+10>>1]|0)>0:0){b[l>>1]=b[(c[(c[g>
x3e;2]|0)+108+28>>2]|0)+((b[(c[g>>2]|0)+108+10>>1]|0)-1<<1)>>1]|0;if((e[l>
;>1]|0)>>>0<(e[(c[g>>2]|0)+108+8>>1]|0)>>>0)break;if(!(a[(c[g>
x3e;2]|0)+561>>0]|0)){i=p;return}c[(c[g>>2]|0)+12>>2]=134;i=p;return}b[l>>1]=0}while(0);
b[k>>1]=0;while(1){if((e[k>>1]|0)>(e[l>>1]|0))break;if(!((c[n+16>>2]|0)==(c[(c[g>
;>2]|0)+108+16>>2]|0)?(e[m>>1]|0)==(e[k>>1]|0):0))mg(c[g>>2]|0,b[k>>1]|0,
c[h>>2]|0,c[j>>2]|0,0);b[k>>1]=(b[k>>1]|0)+1<<16>>16}i=p;return}function
pg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;l=m+12|0;g=m+8|0;h=m+4|0;j=m;k=m+16|0;c[l>>2]=d;c[g>
;>2]=f;if((c[(c[l>>2]|0)+16>>2]|0)<((c[(c[l>>2]|0)+284+20>>2]|0)+1|0)){c[(c[l
x3e;>2]|0)+12>>2]=134;i=m;return}c[h>>2]=qg(c[c[g>>2]>>2]|0,b[(c[l>>2]|0)+
284+14>>1]|0)|0;c[j>>2]=qg(c[c[g>>2]>>2]|0,b[(c[l>>2]|0)+284+14+2>>1
]|0)|0;while(1){f=c[l>>2]|0;if((c[(c[l>>2]|0)+284+20>>2]|0)<=0){g=10;break}g=f+28|0;c[g>
x3e;2]=(c[g>>2]|0)+-1;b[k>>1]=c[(c[(c[l>>2]|0)+24>>2]|0)+(c[(c[l>>2]|0)+28>
;>2]<<2)>>2];g=c[l>>2]|0;if((e[k>>1]|0)>>>0>=(e[(c[l>>
;2]|0)+108+8>>1]|0)>>>0){if(a[g+561>>0]|0){g=7;break}}else mg(g,b[k>>1]|0,c[h>
x3e;2]|0,c[j>>2]|0,1);d=(c[l>>2]|0)+284+20|0;c[d>>2]=(c[d>>2]|0)+-1}if((g|0)==7){c[(c[l
x3e;>2]|0)+12>>2]=134;i=m;return}else if((g|0)==10){c[f+284+20>>2]=1;c[(c[l>>2]|0)+32>
x3e;2]=c[(c[l>>2]|0)+28>>2];i=m;return}}function qg(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
;m=i;i=i+32|0;d=m+28|0;e=m+24|0;l=m+20|0;f=m+16|0;g=m+12|0;k=m+8|0;j=m+4|0;h=m;c[d>>2]=a;c[e>>2]=b;c[l>
x3e;2]=c[d>>2]^c[e>>2];if((c[d>>2]|0)<0)c[d>>2]=0-(c[d>>2]|0);if((c[e>
;>2]|0)<0)c[e>>2]=0-(c[e>>2]|0);c[f>>2]=c[d>>2]>>16&65535;c[g
x3e;>2]=c[d>>2]&65535;c[j>>2]=_(c[g>>2]|0,c[e>>2]|0)|0;c[k>>2]=_(c[f
>>2]|0,c[e>>2]|0)|0;c[h>>2]=(c[k>>2]|0)>>>16;c[k>>2]=(c[k>
x3e;2]<<16)+8192;c[j>>2]=(c[j>>2]|0)+(c[k>>2]|0);if((c[j>>2]|0)>>>
;0>=(c[k>>2]|0)>>>0){b=c[j>>2]|0;b=b>>>14;j=c[h>>2]|0;j=j<
x3c;18;j=b|j;c[k>>2]=j;j=c[l>>2]|0;j=(j|0)>=0;k=c[k>>2]|0;l=0-k|0;l=j?k:l;i=m;return l|0}c[h
x3e;>2]=(c[h>>2]|0)+1;b=c[j>>2]|0;b=b>>>14;j=c[h>>2]|0;j=j<<18;j=b|j
;c[k>>2]=j;j=c[l>>2]|0;j=(j|0)>=0;k=c[k>>2]|0;l=0-k|0;l=j?k:l;i=m;return l|0}function rg(b,d){
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,q=0,r=0,s=0;s=i;i=i+48|0;r=s+40|0;g=s+36|0;m=s+32|0;k=s+28|0;o=s+24|0;h=
s+20|0;q=s+16|0;p=s+12|0;n=s+8|0;j=s+4|0;l=s;c[r>>2]=b;c[g>>2]=d;c[r>>2]=c[r>>2];c[g>
;>2]=c[g>>2];d=c[r>>2]|0;if((c[(c[r>>2]|0)+16>>2]|0)<(c[(c[r>>2]|0)+
284+20>>2]|0)){c[d+12>>2]=134;i=s;return}if((e[d+284+60>>1]|0)!=0?(e[(c[r>>2]|0)+284+62
x3e;>1]|0)!=0:0)d=(e[(c[r>>2]|0)+284+64>>1]|0)==0;else d=1;c[q>>2]=d&1;if((e[(c[r>
x3e;2]|0)+284+2>>1]|0)>>>0>=(e[(c[r>>2]|0)+36+8>>1]|0)>>>0){if(!(
a[(c[r>>2]|0)+561>>0]|0)){i=s;return}c[(c[r>>2]|0)+12>>2]=134;i=s;return}d=e[(c[r>
x3e;2]|0)+284+2>>1]|0;b=(c[r>>2]|0)+36|0;if(c[q>>2]|0)c[o>>2]=(c[b+12>>2]|0)+(
d<<3);else c[o>>2]=(c[b+20>>2]|0)+(d<<3);c[h>>2]=(c[(c[r>>2]|0)+36+16
>>2]|0)+(e[(c[r>>2]|0)+284+2>>1]<<3);if((e[(c[r>>2]|0)+284+2>>1]|0)
x3e;>>0<(e[(c[r>>2]|0)+36+8>>1]|0)>>>0?(e[(c[r>>2]|0)+284+4>>
;1]|0)>>>0<(e[(c[r>>2]|0)+72+8>>1]|0)>>>0:0){d=c[(c[r>>2]|0)+576
>>2]|0;b=c[r>>2]|0;f=e[(c[r>>2]|0)+284+4>>1]|0;g=(c[r>>2]|0)+72|0;if(c[q>
x3e;2]|0)c[m>>2]=Oa[d&63](b,(c[(c[g+12>>2]|0)+(f<<3)>>2]|0)-(c[c[o>>2]>
;>2]|0)|0,(c[(c[(c[r>>2]|0)+72+12>>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)+4
x3e;>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;else c[m>>2]=Oa[d&63](b,(c[(c[g+20>>2]|
0)+(f<<3)>>2]|0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+72+20>>2]|0)+(
e[(c[r>>2]|0)+284+4>>1]<<3)+4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;c[
k>>2]=Oa[c[(c[r>>2]|0)+572>>2]&63](c[r>>2]|0,(c[(c[(c[r>>2]|0)+72+16>
;>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)>>2]|0)-(c[c[h>>2]>>2]|0)|0
,(c[(c[(c[r>>2]|0)+72+16>>2]|0)+(e[(c[r>>2]|0)+284+4>>1]<<3)+4>>2]|0
)-(c[(c[h>>2]|0)+4>>2]|0)|0)|0}else{c[m>>2]=0;c[k>>2]=0}while(1){b=c[r>>2]|0;if
((c[(c[r>>2]|0)+284+20>>2]|0)<=0){d=34;break}f=b+28|0;g=(c[f>>2]|0)+-1|0;c[f>>2]=g;
c[p>>2]=c[(c[(c[r>>2]|0)+24>>2]|0)+(g<<2)>>2];if((c[p>>2]|0)>
x3e;>0>=(e[(c[r>>2]|0)+108+8>>1]|0)>>>0){if(a[(c[r>>2]|0)+561>>
0]|0){d=22;break}}else{d=c[(c[r>>2]|0)+576>>2]|0;b=c[r>>2]|0;f=c[p>>2]|0;g=(c[r>>
;2]|0)+108|0;if(c[q>>2]|0)c[n>>2]=Oa[d&63](b,(c[(c[g+12>>2]|0)+(f<<3)>>2]|
0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+12>>2]|0)+(c[p>>2]<<3)+
4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;else c[n>>2]=Oa[d&63](b,(c[(c[g+20>>
;2]|0)+(f<<3)>>2]|0)-(c[c[o>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+20>>2
]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(c[o>>2]|0)+4>>2]|0)|0)|0;c[j>>2]=Oa[c
[(c[r>>2]|0)+572>>2]&63](c[r>>2]|0,(c[(c[(c[r>>2]|0)+108+16>>2]|0)+(c[p
x3e;>2]<<3)>>2]|0)-(c[c[h>>2]>>2]|0)|0,(c[(c[(c[r>>2]|0)+108+16>>
;2]|0)+(c[p>>2]<<3)+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0)|0)|0;if(c[n>>2]|
0){if(c[m>>2]|0)d=xb(c[n>>2]|0,c[k>>2]|0,c[m>>2]|0)|0;else d=c[j>>2]|0;c[l>
;>2]=d}else c[l>>2]=0;_a[c[(c[r>>2]|0)+584>>2]&15](c[r>>2]|0,(c[r>>2
]|0)+108|0,c[p>>2]&65535,(c[l>>2]|0)-(c[j>>2]|0)|0)}g=(c[r>>2]|0)+284+20|0;c[g>
;>2]=(c[g>>2]|0)+-1}if((d|0)==22){c[(c[r>>2]|0)+12>>2]=134;i=s;return}else if((d|0)==34){c[b+
284+20>>2]=1;c[(c[r>>2]|0)+32>>2]=c[(c[r>>2]|0)+28>>2];i=s;return}}function sg
(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+8|0;j=m+4|0;l=m+12|0;k=m;c[h>>2]=f;c[j>>2]=g;b[l
x3e;>1]=c[c[j>>2]>>2];if((e[l>>1]|0)>>>0<(e[(c[h>>2]|0)+72+8>
;>1]|0)>>>0?(e[(c[h>>2]|0)+284>>1]|0)>>>0<(e[(c[h>>2]|0)+36
+8>>1]|0)>>>0:0){if(!(e[(c[h>>2]|0)+284+62>>1]|0)){f=(c[(c[h>>2]|0)+72+12
>>2]|0)+(e[l>>1]<<3)|0;g=(c[(c[h>>2]|0)+36+12>>2]|0)+(e[(c[h>>2]|0)+
284>>1]<<3)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];_a[c[(c[h>>
;2]|0)+588>>2]&15](c[h>>2]|0,(c[h>>2]|0)+72|0,b[l>>1]|0,c[(c[j>>2]|0)+4
x3e;>2]|0);f=(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)|0;g=(c[(c[h>>2]|0)+
72+12>>2]|0)+(e[l>>1]<<3)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>
;2]}c[k>>2]=Oa[c[(c[h>>2]|0)+572>>2]&63](c[h>>2]|0,(c[(c[(c[h>>2]|0)+72+16
>>2]|0)+(e[l>>1]<<3)>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[(c[h
x3e;>2]|0)+284>>1]<<3)>>2]|0)|0,(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>
x3e;1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[(c[h>>2]|0)+284>>
;1]<<3)+4>>2]|0)|0)|0;_a[c[(c[h>>2]|0)+584>>2]&15](c[h>>2]|0,(c[h>
x3e;2]|0)+72|0,b[l>>1]|0,(c[(c[j>>2]|0)+4>>2]|0)-(c[k>>2]|0)|0);b[(c[h>>2]|0)+
284+2>>1]=b[(c[h>>2]|0)+284>>1]|0;b[(c[h>>2]|0)+284+4>>1]=b[l>>1]|0;
if(!(d[(c[h>>2]|0)+368>>0]&1)){i=m;return}b[(c[h>>2]|0)+284>>1]=b[l>>1]|0
;i=m;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return
}function tg(d,f){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+8|0;l=k+4|0;h=k+12|0;g=k;c[j>>2]=d;c[l>>
;2]=f;c[j>>2]=c[j>>2];c[l>>2]=c[l>>2];if((c[(c[j>>2]|0)+16>>2]|0)>
;=(c[(c[j>>2]|0)+284+20>>2]|0)?(e[(c[j>>2]|0)+284>>1]|0)>>>0<(e[(c[j
>>2]|0)+36+8>>1]|0)>>>0:0){while(1){d=c[j>>2]|0;if((c[(c[j>>2]|0)+284+20
x3e;>2]|0)<=0){f=11;break}f=d+28|0;c[f>>2]=(c[f>>2]|0)+-1;b[h>>1]=c[(c[(c[j>>2
]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<2)>>2];f=c[j>>2]|0;if((e[h>
;>1]|0)>>>0>=(e[(c[j>>2]|0)+72+8>>1]|0)>>>0){if(a[f+561>>0
]|0){f=8;break}}else{c[g>>2]=Oa[c[f+572>>2]&63](c[j>>2]|0,(c[(c[(c[j>>2]|0)+72+16
x3e;>2]|0)+(e[h>>1]<<3)>>2]|0)-(c[(c[(c[j>>2]|0)+36+16>>2]|0)+(e[(c[j>
;>2]|0)+284>>1]<<3)>>2]|0)|0,(c[(c[(c[j>>2]|0)+72+16>>2]|0)+(e[h>>
;1]<<3)+4>>2]|0)-(c[(c[(c[j>>2]|0)+36+16>>2]|0)+(e[(c[j>>2]|0)+284>>
1]<<3)+4>>2]|0)|0)|0;_a[c[(c[j>>2]|0)+584>>2]&15](c[j>>2]|0,(c[j>>
;2]|0)+72|0,b[h>>1]|0,0-(c[g>>2]|0)|0)}l=(c[j>>2]|0)+284+20|0;c[l>>2]=(c[l>>2]|
0)+-1}if((f|0)==8){c[(c[j>>2]|0)+12>>2]=134;i=k;return}else if((f|0)==11){c[d+284+20>>2]=1;c[(c[j
x3e;>2]|0)+32>>2]=c[(c[j>>2]|0)+28>>2];i=k;return}}if(!(a[(c[j>>2]|0)+561>>
;0]|0)){i=k;return}c[(c[j>>2]|0)+12>>2]=134;i=k;return}function ug(f,g){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;h=n+16|0;o=n+12|0;j=n+8|0;m=n+20|0;k=n+4|0;l=n;c[h>>2]=f;c[o>>2]=g;c[j>>2]=c[(
c[o>>2]|0)+4>>2];b[m>>1]=c[c[o>>2]>>2];if((e[m>>1]|0)>>>
;0<(e[(c[h>>2]|0)+36+8>>1]|0)>>>0?(c[j>>2]|0)>>>0<(c[(c[h
x3e;>2]|0)+380>>2]|0)>>>0:0){c[k>>2]=Ya[c[(c[h>>2]|0)+592>>2]&127
](c[h>>2]|0,c[j>>2]|0)|0;if(!(e[(c[h>>2]|0)+284+60>>1]|0)){o=qg(c[k>>2]|0,b[(c
[h>>2]|0)+284+14>>1]|0)|0;c[(c[(c[h>>2]|0)+36+12>>2]|0)+(e[m>>1]<<3)
x3e;>2]=o;o=qg(c[k>>2]|0,b[(c[h>>2]|0)+284+14+2>>1]|0)|0;c[(c[(c[h>>2]|0)+36+12>
;>2]|0)+(e[m>>1]<<3)+4>>2]=o;o=(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>
;1]<<3)|0;f=(c[(c[h>>2]|0)+36+12>>2]|0)+(e[m>>1]<<3)|0;c[o>>2]=c[f
x3e;>2];c[o+4>>2]=c[f+4>>2]}c[l>>2]=Oa[c[(c[h>>2]|0)+572>>2]&63](c[h
>>2]|0,c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>>2]|0,c[(c[(c[h>
;>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)|0;if(d[(c[h>>2]|0)+368>
x3e;0]&1|0){o=(c[k>>2]|0)-(c[l>>2]|0)|0;if(((((c[k>>2]|0)-(c[l>>2]|0)|0)<0?0-o
|0:o)|0)>(c[(c[h>>2]|0)+284+36>>2]|0))c[k>>2]=c[l>>2];c[k>>2]=Oa[c[(c[h
x3e;>2]|0)+568>>2]&63](c[h>>2]|0,c[k>>2]|0,c[(c[h>>2]|0)+244+20>>2]|
0)|0}_a[c[(c[h>>2]|0)+584>>2]&15](c[h>>2]|0,(c[h>>2]|0)+36|0,b[m>>1]|0,(c
[k>>2]|0)-(c[l>>2]|0)|0);b[(c[h>>2]|0)+284>>1]=b[m>>1]|0;b[(c[h>>2]|
0)+284+2>>1]=b[m>>1]|0;i=n;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=n;return}c[(c[h>
x3e;2]|0)+12>>2]=134;i=n;return}function vg(a,f){a=a|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+4|0;h=l;k=l+10|0
;j=l+8|0;c[g>>2]=a;c[h>>2]=f;b[k>>1]=d[(c[(c[g>>2]|0)+356>>2]|0)+((c[(c[g>
;>2]|0)+360>>2]|0)+1)>>0]|0;if((e[k>>1]|0)>>>0>=((c[(c[g>>2]|0)+
20>>2]|0)+1-(c[(c[g>>2]|0)+16>>2]|0)|0)>>>0){c[(c[g>>2]|0)+12>>
2]=130;i=l;return}b[j>>1]=1;while(1){if((e[j>>1]|0|0)>(e[k>>1]|0|0))break;c[(c[h>>2
]|0)+((e[j>>1]|0)-1<<2)>>2]=d[(c[(c[g>>2]|0)+356>>2]|0)+((c[(c[g>>2]|
0)+360>>2]|0)+(e[j>>1]|0)+1)>>0];b[j>>1]=(b[j>>1]|0)+1<<16>>
;16}a=(c[g>>2]|0)+32|0;c[a>>2]=(c[a>>2]|0)+(e[k>>1]|0);i=l;return}function wg(f,g){f=f|0
;g=g|0;var h=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+4|0;j=m;l=m+10|0;k=m+8|0;c[h>>2]=f;c[j>>2]=g;b[l>>
1]=d[(c[(c[h>>2]|0)+356>>2]|0)+((c[(c[h>>2]|0)+360>>2]|0)+1)>>0]|0;g=c[h>
x3e;2]|0;if((e[l>>1]|0)>>>0>=((c[(c[h>>2]|0)+20>>2]|0)+1-(c[(c[h>>2]|
0)+16>>2]|0)|0)>>>0){c[g+12>>2]=130;i=m;return}f=g+360|0;c[f>>2]=(c[f>>2]|
0)+2;b[k>>1]=0;while(1){g=c[h>>2]|0;if((e[k>>1]|0|0)>=(e[l>>1]|0|0))break;f=(xg(g)|
0)<<16>>16;c[(c[j>>2]|0)+((e[k>>1]|0)<<2)>>2]=f;b[k>>1]=(b
[k>>1]|0)+1<<16>>16}a[g+376>>0]=0;k=(c[h>>2]|0)+32|0;c[k>>2]=(c[k>
;>2]|0)+(e[l>>1]|0);i=m;return}function xg(a){a=a|0;var b=0,e=0;e=i;i=i+16|0;b=e;c[b>>2]=a;a=(c[b>
x3e;2]|0)+360|0;c[a>>2]=(c[a>>2]|0)+2;i=e;return ((d[(c[(c[b>>2]|0)+356>>2]|0)+((c[(c[b
x3e;>2]|0)+360>>2]|0)-2)>>0]|0)<<8)+(d[(c[(c[b>>2]|0)+356>>2]|0)+((c[(c[b
>>2]|0)+360>>2]|0)-1)>>0]|0)&65535|0}function yg(b,f){b=b|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i
;i=i+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[g>>2]=b;c[h>>2]=f;c[j>>2]=c[c[h>>2]>>
2];f=c[g>>2]|0;do if((c[j>>2]|0)>>>0<(e[(c[g>>2]|0)+108+8>>1]|0)>
;>>0){b=c[g>>2]|0;if(d[f+368>>0]&1|0){c[k>>2]=Oa[c[b+576>>2]&63](c[g
>>2]|0,c[(c[(c[g>>2]|0)+108+12>>2]|0)+(c[j>>2]<<3)>>2]|0,c[(c[(c[g
x3e;>2]|0)+108+12>>2]|0)+(c[j>>2]<<3)+4>>2]|0)|0;break}else{c[k>>2]=Oa[c[
b+572>>2]&63](c[g>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(c[j>>2]<<
;3)>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(c[j>>2]<<3)+4>>2]|0)|0;break
}}else{if(!(a[f+561>>0]|0)){c[k>>2]=0;break}c[(c[g>>2]|0)+12>>2]=134;i=l;return}while(0);
c[c[h>>2]>>2]=c[k>>2];i=l;return}function zg(d,f){d=d|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0
;g=l+8|0;h=l+4|0;j=l;k=l+12|0;c[g>>2]=d;c[h>>2]=f;b[k>>1]=c[c[h>>2]>>2];f=c[g
x3e;>2]|0;if((e[k>>1]|0)>>>0>=(e[(c[g>>2]|0)+108+8>>1]|0)>>>
;0){if(!(a[f+561>>0]|0)){i=l;return}c[(c[g>>2]|0)+12>>2]=134;i=l;return}else{c[j>>2]=Oa[
c[f+572>>2]&63](c[g>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(e[k>>1]<
x3c;3)>>2]|0,c[(c[(c[g>>2]|0)+108+16>>2]|0)+(e[k>>1]<<3)+4>>2]|0)|0;
_a[c[(c[g>>2]|0)+584>>2]&15](c[g>>2]|0,(c[g>>2]|0)+108|0,b[k>>1]|0,(c[(c[
h>>2]|0)+4>>2]|0)-(c[j>>2]|0)|0);if(e[(c[g>>2]|0)+284+64>>1]|0){i=l;return}j=(
c[(c[g>>2]|0)+108+12>>2]|0)+(e[k>>1]<<3)|0;k=(c[(c[g>>2]|0)+108+16>>
2]|0)+(e[k>>1]<<3)|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];i=l;return}}
function Ag(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;r=i;i=i+32|0;h=r+24|0;j=r+20|0;l=r+30|0;m=r+28|0;k=r+16
|0;o=r+12|0;p=r+8|0;n=r;c[h>>2]=f;c[j>>2]=g;b[l>>1]=c[(c[j>>2]|0)+4>>2];b[m>
;>1]=c[c[j>>2]>>2];do if((e[m>>1]|0)>>>0<(e[(c[h>>2]|0)+36+8>
;>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h>>2]|0)+72+8>>1]|0)>
;>>0:0){g=c[h>>2]|0;if(d[(c[h>>2]|0)+368>>0]&1|0){c[k>>2]=Oa[c[g+572>
;>2]&63](c[h>>2]|0,(c[(c[(c[h>>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)>
x3e;2]|0)-(c[(c[(c[h>>2]|0)+72+16>>2]|0)+(e[l>>1]<<3)>>2]|0)|0,(c[(c[(c[h>
;>2]|0)+36+16>>2]|0)+(e[m>>1]<<3)+4>>2]|0)-(c[(c[(c[h>>2]|0)+72+16>
x3e;2]|0)+(e[l>>1]<<3)+4>>2]|0)|0)|0;break}c[o>>2]=(c[g+36+20>>2]|0)+(e[m>
;>1]<<3);c[p>>2]=(c[(c[h>>2]|0)+72+20>>2]|0)+(e[l>>1]<<3);if((c
[(c[h>>2]|0)+216+4>>2]|0)==(c[(c[h>>2]|0)+216+8>>2]|0)){c[k>>2]=Oa[c[(c[h>
;>2]|0)+576>>2]&63](c[h>>2]|0,(c[c[o>>2]>>2]|0)-(c[c[p>>2]>>
;2]|0)|0,(c[(c[o>>2]|0)+4>>2]|0)-(c[(c[p>>2]|0)+4>>2]|0)|0)|0;c[k>>2]=Mb(c[k
x3e;>2]|0,c[(c[h>>2]|0)+216+4>>2]|0)|0;break}else{c[n>>2]=Mb((c[c[o>>2]>>
2]|0)-(c[c[p>>2]>>2]|0)|0,c[(c[h>>2]|0)+216+4>>2]|0)|0;c[n+4>>2]=Mb((c[(c[o>
;>2]|0)+4>>2]|0)-(c[(c[p>>2]|0)+4>>2]|0)|0,c[(c[h>>2]|0)+216+8>>2]|0)|0;c
[k>>2]=Oa[c[(c[h>>2]|0)+576>>2]&63](c[h>>2]|0,c[n>>2]|0,c[n+4>>
2]|0)|0;break}}else q=3;while(0);do if((q|0)==3){if(!(a[(c[h>>2]|0)+561>>0]|0)){c[k>>2]=0;break}c[(
c[h>>2]|0)+12>>2]=134;i=r;return}while(0);c[c[j>>2]>>2]=c[k>>2];i=r;return}function
Bg(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=e[(c[d>>2]|0)+244+8>>1]|0;a=Mb(a,of(c[d>
;>2]|0)|0)|0;i=b;return a|0}function Cg(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+8|0;k=j+4|0;h=j;g=j+12|0;
c[f>>2]=b;c[k>>2]=e;if(c[c[k>>2]>>2]|0){i=j;return}c[h>>2]=1;a[g>>0]=
0;while(1){if(((Yf(c[f>>2]|0)|0)&255|0)==1){f=9;break}switch(d[(c[f>>2]|0)+368>>0]|0|0){case
88:{c[h>>2]=(c[h>>2]|0)+1;break}case 27:{a[g>>0]=(c[h>>2]|0)==1;break}case 89:{c[h>
x3e;2]=(c[h>>2]|0)+-1;a[g>>0]=(c[h>>2]|0)==0;break}default:{}}if(d[g>>0]|0|0){f=9;break}}
if((f|0)==9){i=j;return}}function Dg(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;p=i;i=i+32|0;o=p+20|0;h=p+16|0;m=p+12|
0;n=p+8|0;j=p+24|0;l=p+4|0;k=p;c[o>>2]=f;c[h>>2]=g;c[n>>2]=c[c[h>>2]>>2];c[m
x3e;>2]=1;while(1){h=c[(c[o>>2]|0)+28>>2]|0;if((c[m>>2]|0)>>>0>(c[n>
x3e;2]|0)>>>0){g=16;break}f=c[o>>2]|0;if((h|0)<2){g=4;break}h=f+28|0;c[h>>2]=(c[h>
x3e;2]|0)-2;b[j>>1]=c[(c[(c[o>>2]|0)+24>>2]|0)+((c[(c[o>>2]|0)+28>>2]|0)+1<
;<2)>>2];c[k>>2]=c[(c[(c[o>>2]|0)+24>>2]|0)+(c[(c[o>>2]|0)+28>>
2]<<2)>>2];if((e[j>>1]|0)>>>0>=(e[(c[o>>2]|0)+36+8>>1]|0)
x3e;>>0){if(a[(c[o>>2]|0)+561>>0]|0)c[(c[o>>2]|0)+12>>2]=134}else{c[l>>
;2]=(c[k>>2]&240)>>>4;switch(d[(c[o>>2]|0)+368>>0]|0){case 114:{c[l>>
;2]=(c[l>>2]|0)+32;break}case 113:{c[l>>2]=(c[l>>2]|0)+16;break}default:{}}c[l>>2]=(c[l
x3e;>2]|0)+(b[(c[o>>2]|0)+284+48>>1]|0);h=Bg(c[o>>2]|0)|0;if((h|0)==(c[l>>2]|0)){c[
k>>2]=(c[k>>2]&15)-8;if((c[k>>2]|0)>=0)c[k>>2]=(c[k>>2]|0)+1;c[k>
;>2]=(c[k>>2]<<6|0)/(1<<b[(c[o>>2]|0)+284+50>>1]|0)|0;_a[c[(c[o>>
;2]|0)+584>>2]&15](c[o>>2]|0,(c[o>>2]|0)+36|0,b[j>>1]|0,c[k>>2]|0)}}c[m
x3e;>2]=(c[m>>2]|0)+1}if((g|0)==4){c[f+12>>2]=129;i=p;return}else if((g|0)==16){c[(c[o>>2]|0)+
32>>2]=h;i=p;return}}function Eg(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;o=i;i=i+32|0;n=o+24|0;g=o+20|0;m
=o+16|0;l=o+12|0;h=o+8|0;k=o+4|0;j=o;c[n>>2]=e;c[g>>2]=f;c[m>>2]=c[c[g>>2]>>2];
c[l>>2]=1;while(1){g=c[(c[n>>2]|0)+28>>2]|0;if((c[l>>2]|0)>>>0>(c[m
x3e;>2]|0)>>>0){f=16;break}e=c[n>>2]|0;if((g|0)<2){f=4;break}g=e+28|0;c[g>>2]=(c[g
x3e;>2]|0)-2;c[h>>2]=c[(c[(c[n>>2]|0)+24>>2]|0)+((c[(c[n>>2]|0)+28>>2]|0)+
1<<2)>>2];c[j>>2]=c[(c[(c[n>>2]|0)+24>>2]|0)+(c[(c[n>>2]|0)+28>
x3e;2]<<2)>>2];if((c[h>>2]|0)>>>0>=(c[(c[n>>2]|0)+380>>2]|
0)>>>0){if(a[(c[n>>2]|0)+561>>0]|0){f=7;break}}else{c[k>>2]=(c[j>>2]&
;240)>>>4;switch(d[(c[n>>2]|0)+368>>0]|0){case 117:{c[k>>2]=(c[k>>2]|0)+32
;break}case 116:{c[k>>2]=(c[k>>2]|0)+16;break}default:{}}c[k>>2]=(c[k>>2]|0)+(b[(c[n>
;>2]|0)+284+48>>1]|0);g=Bg(c[n>>2]|0)|0;if((g|0)==(c[k>>2]|0)){c[j>>2]=(c[j>
x3e;2]&15)-8;if((c[j>>2]|0)>=0)c[j>>2]=(c[j>>2]|0)+1;c[j>>2]=(c[j>>2
]<<6|0)/(1<<b[(c[n>>2]|0)+284+50>>1]|0)|0;Ua[c[(c[n>>2]|0)+600>>2]
x26;31](c[n>>2]|0,c[h>>2]|0,c[j>>2]|0)}}c[l>>2]=(c[l>>2]|0)+1}if((f|0)==4){c[e
+12>>2]=129;i=o;return}else if((f|0)==7){c[(c[n>>2]|0)+12>>2]=134;i=o;return}else if((f|0)==16){c[(
c[n>>2]|0)+32>>2]=g;i=o;return}}function Fg(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|
0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;switch(c[g>>2]&192|0){case 0:{c[(c[e>
;>2]|0)+476>>2]=(c[f>>2]|0)/2|0;break}case 64:{c[(c[e>>2]|0)+476>>2]=c[f>>
;2];break}case 128:{c[(c[e>>2]|0)+476>>2]=c[f>>2]<<1;break}case 192:{c[(c[e>>2
]|0)+476>>2]=c[f>>2];break}default:{}}switch(c[g>>2]&48|0){case 0:{c[(c[e>>2]|0)+480
>>2]=0;break}case 16:{c[(c[e>>2]|0)+480>>2]=(c[(c[e>>2]|0)+476>>2]|0)/4|0;break
}case 32:{c[(c[e>>2]|0)+480>>2]=(c[(c[e>>2]|0)+476>>2]|0)/2|0;break}case 48:{c[(c[e>
;>2]|0)+480>>2]=((c[(c[e>>2]|0)+476>>2]|0)*3|0)/4|0;break}default:{}}if(!(c[g>>2]
x26;15)){c[(c[e>>2]|0)+484>>2]=(c[(c[e>>2]|0)+476>>2]|0)-1;d=c[e>>2]|0;d=d+476
|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+480|0;a=c[d>>2]|0;a=(a|0)/256|0;c
[d>>2]=a;d=c[e>>2]|0;d=d+484|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;i=h;return}else{d=(_((
c[g>>2]&15)-4|0,c[(c[e>>2]|0)+476>>2]|0)|0)/8|0;c[(c[e>>2]|0)+484>>2]=d;d
=c[e>>2]|0;d=d+476|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+480|0;a=c[d>
;>2]|0;a=(a|0)/256|0;c[d>>2]=a;d=c[e>>2]|0;d=d+484|0;a=c[d>>2]|0;a=(a|0)/256|0;c[d>>
;2]=a;i=h;return}}function Gg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0;k=i;i=i+16|0;j=k+4|0;l=k;h=k+8|0;c[j>>2]=f;c[l>
;>2]=g;c[j>>2]=c[j>>2];c[l>>2]=c[l>>2];if((c[(c[j>>2]|0)+16>>2]|
0)<(c[(c[j>>2]|0)+284+20>>2]|0)){c[(c[j>>2]|0)+12>>2]=129;i=k;return}while(1){f=c[j
>>2]|0;if((c[(c[j>>2]|0)+284+20>>2]|0)<=0){g=9;break}l=f+28|0;c[l>>2]=(c[l>>
;2]|0)+-1;b[h>>1]=c[(c[(c[j>>2]|0)+24>>2]|0)+(c[(c[j>>2]|0)+28>>2]<<
2)>>2];if((e[h>>1]|0)>>>0>=(e[(c[j>>2]|0)+144+8>>1]|0)>>
x3e;0){if(a[(c[j>>2]|0)+561>>0]|0){g=6;break}}else{l=(c[(c[j>>2]|0)+144+24>>2]|0)+(e[h
x3e;>1]|0)|0;a[l>>0]=d[l>>0]^1}l=(c[j>>2]|0)+284+20|0;c[l>>2]=(c[l>>2]|0)+-
1}if((g|0)==6){c[(c[j>>2]|0)+12>>2]=134;i=k;return}else if((g|0)==9){c[f+284+20>>2]=1;c[(c[j>
x3e;2]|0)+32>>2]=c[(c[j>>2]|0)+28>>2];i=k;return}}function Hg(f,g){f=f|0;g=g|0;var h=0,j=0,k=0,l=0
,m=0,n=0;m=i;i=i+16|0;h=m+4|0;n=m;j=m+12|0;k=m+10|0;l=m+8|0;c[h>>2]=f;c[n>>2]=g;b[k>>1]=c[(c[n>
;>2]|0)+4>>2];b[l>>1]=c[c[n>>2]>>2];if((e[k>>1]|0)>>>0<
;(e[(c[h>>2]|0)+144+8>>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h>
x3e;2]|0)+144+8>>1]|0)>>>0:0){b[j>>1]=b[l>>1]|0;while(1){if((e[j>>1]|0)
x3e;(e[k>>1]|0))break;n=(c[(c[h>>2]|0)+144+24>>2]|0)+(e[j>>1]|0)|0;a[n>>0]=d[n
>>0]|1;b[j>>1]=(b[j>>1]|0)+1<<16>>16}i=m;return}if(!(a[(c[h>>2]|0)+561
>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}function Ig(f,g){f=f|0;g=g|0;var h=0,j=0,k
=0,l=0,m=0,n=0;m=i;i=i+16|0;h=m+4|0;n=m;j=m+12|0;k=m+10|0;l=m+8|0;c[h>>2]=f;c[n>>2]=g;b[k>>1]=c[(c
[n>>2]|0)+4>>2];b[l>>1]=c[c[n>>2]>>2];if((e[k>>1]|0)>>>
;0<(e[(c[h>>2]|0)+144+8>>1]|0)>>>0?(e[l>>1]|0)>>>0<(e[(c[h
>>2]|0)+144+8>>1]|0)>>>0:0){b[j>>1]=b[l>>1]|0;while(1){if((e[j>>
;1]|0)>(e[k>>1]|0))break;n=(c[(c[h>>2]|0)+144+24>>2]|0)+(e[j>>1]|0)|0;a[n>>
;0]=d[n>>0]&-2;b[j>>1]=(b[j>>1]|0)+1<<16>>16}i=m;return}if(!(a[(c[h>
x3e;2]|0)+561>>0]|0)){i=m;return}c[(c[h>>2]|0)+12>>2]=134;i=m;return}function Jg(b,f){b=b|0;f=f|0;
var g=0,h=0,j=0,k=0;k=i;i=i+16|0;g=k+8|0;h=k+4|0;j=k;c[g>>2]=b;c[h>>2]=f;c[j>>2]=c[c[h>>
2]>>2]&255;if((c[j>>2]|0)==255){a[(c[g>>2]|0)+284+53>>0]=1;i=k;return}if(!(c[j>
;>2]|0)){a[(c[g>>2]|0)+284+53>>0]=0;i=k;return}if(c[c[h>>2]>>2]&256|0?(e[(c[g
x3e;>2]|0)+244+8>>1]|0|0)<=(c[j>>2]|0):0)a[(c[g>>2]|0)+284+53>>0]=1;if(c[c[h
x3e;>2]>>2]&512|0?d[(c[g>>2]|0)+244+37>>0]|0|0:0)a[(c[g>>2]|0)+284+53>>
;0]=1;if(c[c[h>>2]>>2]&1024|0?d[(c[g>>2]|0)+244+38>>0]|0|0:0)a[(c[g>>2]|0
)+284+53>>0]=1;if(c[c[h>>2]>>2]&2048|0?(e[(c[g>>2]|0)+244+8>>1]|0|0)>
;(c[j>>2]|0):0)a[(c[g>>2]|0)+284+53>>0]=0;if(c[c[h>>2]>>2]&4096|0?d[(c[g
x3e;>2]|0)+244+37>>0]|0|0:0)a[(c[g>>2]|0)+284+53>>0]=0;if(!(c[c[h>>2]>>2]
x26;8192)){i=k;return}if(!(d[(c[g>>2]|0)+244+38>>0]|0)){i=k;return}a[(c[g>>2]|0)+284+53>>
;0]=0;i=k;return}function Kg(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;s=i;i=i+48|0;h=s+32|0;t=s+28|0
;j=s+24|0;k=s+20|0;l=s+16|0;m=s+38|0;n=s+36|0;o=s+12|0;q=s+8|0;p=s+4|0;r=s;c[h>>2]=f;c[t>>2]=g;b[m>>
;1]=c[(c[t>>2]|0)+4>>2];b[n>>1]=c[c[t>>2]>>2];if((e[n>>1]|0)>
x3e;>0<(e[(c[h>>2]|0)+72+8>>1]|0)>>>0?(e[m>>1]|0)>>>0<
;(e[(c[h>>2]|0)+108+8>>1]|0)>>>0:0){c[o>>2]=(c[(c[h>>2]|0)+72+12>>
;2]|0)+(e[n>>1]<<3);c[q>>2]=(c[(c[h>>2]|0)+108+12>>2]|0)+(e[m>>1]<
;<3);c[j>>2]=(c[c[o>>2]>>2]|0)-(c[c[q>>2]>>2]|0);c[k>>2]=(c[(c[
o>>2]|0)+4>>2]|0)-(c[(c[q>>2]|0)+4>>2]|0);if(d[(c[h>>2]|0)+368>>0]
x26;1|0){c[l>>2]=c[k>>2];c[k>>2]=c[j>>2];c[j>>2]=0-(c[l>>2]|0)}Rf(c[
h>>2]|0,c[j>>2]|0,c[k>>2]|0,(c[h>>2]|0)+284+6|0)|0;c[p>>2]=(c[(c[h>>
2]|0)+72+16>>2]|0)+(e[n>>1]<<3);c[r>>2]=(c[(c[h>>2]|0)+108+16>>2]|0)+(
e[m>>1]<<3);c[j>>2]=(c[c[p>>2]>>2]|0)-(c[c[r>>2]>>2]|0);c[
k>>2]=(c[(c[p>>2]|0)+4>>2]|0)-(c[(c[r>>2]|0)+4>>2]|0);if(d[(c[h>>2]|
0)+368>>0]&1|0){c[l>>2]=c[k>>2];c[k>>2]=c[j>>2];c[j>>2]=0-(c[l
x3e;>2]|0)}Rf(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,(c[h>>2]|0)+284+10|0)|0;vf(c[h>>
;2]|0);i=s;return}if(!(a[(c[h>>2]|0)+561>>0]|0)){i=s;return}c[(c[h>>2]|0)+12>>2]=134;i=s
;return}function Lg(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=
b;c[g>>2]=0;c[g>>2]=c[c[f>>2]>>2]&1|0?35:0;if(c[c[f>>2]>>2]&
;2|0?d[(c[e>>2]|0)+244+37>>0]|0|0:0)c[g>>2]=c[g>>2]|128;if(c[c[f>>2]>>
;2]&4|0?d[(c[e>>2]|0)+244+38>>0]|0|0:0)c[g>>2]=c[g>>2]|256;if(!(c[c[f>>2]
x3e;>2]&32)){b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}if(!(d[(c[e>>2]|0)+604
>>0]|0)){b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}c[g>>2]=c[g>>2
]|4096;b=c[g>>2]|0;a=c[f>>2]|0;c[a>>2]=b;i=h;return}function Mg(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;j=k+12|0;g=k+8|0;h=k+4|0;f=k;c[j>>2]=b;c[g>>2]=e;c[h>>2]=c[(c[j>>2]|
0)+416>>2];c[f>>2]=(c[h>>2]|0)+(c[(c[j>>2]|0)+408>>2]<<4);while(1){if
((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>>0)break;if((c[(c[h>>2]|0)+8>
;>2]|0)==(c[c[g>>2]>>2]|0))break;c[h>>2]=(c[h>>2]|0)+16}do if((c[h>>2]|0)==(
c[f>>2]|0)){e=c[j>>2]|0;if((c[(c[j>>2]|0)+408>>2]|0)>>>0<(c[(c[j>
;>2]|0)+412>>2]|0)>>>0){f=e+408|0;c[f>>2]=(c[f>>2]|0)+1;break}c[e+12>>
;2]=141;i=k;return}while(0);if(0<=(c[c[g>>2]>>2]|0)?(c[c[g>>2]>>2]|0)<=255:0){
c[(c[h>>2]|0)+8>>2]=c[c[g>>2]>>2]&255;c[(c[h>>2]|0)+4>>2]=(c[(c
[j>>2]|0)+360>>2]|0)+1;c[c[h>>2]>>2]=c[(c[j>>2]|0)+352>>2];a[(c[h>
;>2]|0)+12>>0]=1;if((c[c[g>>2]>>2]|0)>>>0>(c[(c[j>>2]|0)+424>
;>2]|0)>>>0)c[(c[j>>2]|0)+424>>2]=c[c[g>>2]>>2]&255;a:while(1){
if((Yf(c[j>>2]|0)|0)&255|0){e=17;break}switch(d[(c[j>>2]|0)+368>>0]|0|0){case 44:case 137:{e=
16;break a}case 45:{e=17;break a}default:{}}}if((e|0)==16){c[(c[j>>2]|0)+12>>2]=137;i=k;return}else if((e|0)==
17){i=k;return}}c[(c[j>>2]|0)+12>>2]=141;i=k;return}function Ng(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;g=d+8|0;f=d+4|0;h=d;c[j>>2]=a;c[e>>2]=b;c[j>>2]=c[j>>2];
c[g>>2]=c[(c[e>>2]|0)+8>>2];c[f>>2]=c[(c[e>>2]|0)+4>>2];c[h>>
;2]=c[c[e>>2]>>2];c[(c[e>>2]|0)+8>>2]=c[h>>2];c[(c[e>>2]|0)+4>
x3e;2]=c[g>>2];c[c[e>>2]>>2]=c[f>>2];i=d;return}function Og(a,b){a=a|0;b=b|0;var d=0,e=0
,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if((c[c[e>>2]>>2]|0)<0){i=f;return
}c[(c[d>>2]|0)+284+56>>2]=c[c[e>>2]>>2];i=f;return}function Pg(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;k=j+8|0;g=j+4|0;h=j;c[f>>2]=b;c[k>>2]=e;c[g>>2]=c[(c[k>
x3e;2]|0)+4>>2];c[h>>2]=c[c[k>>2]>>2];if((c[g>>2]|0)<1|(c[g>>2]|
0)>2){if(!(a[(c[f>>2]|0)+561>>0]|0)){i=j;return}c[(c[f>>2]|0)+12>>2]=134;i=j;return
}else{if(c[h>>2]|0)c[h>>2]=c[g>>2];a[(c[f>>2]|0)+284+52>>0]=d[(c[f>>
2]|0)+284+52>>0]&~(c[g>>2]&255)|c[h>>2]&255;i=j;return}}function Qg(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;p=i;i=i+32|0;k=p+24|0;q=p+20|0;o=p+28|0;h=p+16|0;j=p+12|0;m=p+8|0;l=p+4|0;n=p;c[k>
;>2]=f;c[q>>2]=g;b[o>>1]=c[c[q>>2]>>2];c[h>>2]=(c[(c[q>>2]|0)+4
>>2]|0)+1;if(((e[o>>1]|0)>>>0<(e[(c[k>>2]|0)+72+8>>1]|0)>>
x3e;0?(c[h>>2]|0)>>>0<((c[(c[k>>2]|0)+380>>2]|0)+1|0)>>>0:0)?(e
[(c[k>>2]|0)+284>>1]|0)>>>0<(e[(c[k>>2]|0)+36+8>>1]|0)>>
x3e;0:0){if(c[h>>2]|0)c[j>>2]=Ya[c[(c[k>>2]|0)+592>>2]&127](c[k>>2]|0,(c[
h>>2]|0)-1|0)|0;else c[j>>2]=0;q=(c[j>>2]|0)-(c[(c[k>>2]|0)+284+44>>2]|0)|0;do
if(((((c[j>>2]|0)-(c[(c[k>>2]|0)+284+44>>2]|0)|0)<0?0-q|0:q)|0)<(c[(c[k>>2]|0
)+284+40>>2]|0)){g=c[(c[k>>2]|0)+284+44>>2]|0;if((c[j>>2]|0)>=0){c[j>>2]=
g;break}else{c[j>>2]=0-g;break}}while(0);if(!(e[(c[k>>2]|0)+284+62>>1]|0)){q=c[(c[(c[k>>
2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)>>2]|0;q=q+(qg(c[j>>2]|
0,b[(c[k>>2]|0)+284+14>>1]|0)|0)|0;c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<
;<3)>>2]=q;q=c[(c[(c[k>>2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<
x3c;3)+4>>2]|0;q=q+(qg(c[j>>2]|0,b[(c[k>>2]|0)+284+14+2>>1]|0)|0)|0;c[(c[(c[k>>
;2]|0)+72+12>>2]|0)+(e[o>>1]<<3)+4>>2]=q;q=(c[(c[k>>2]|0)+72+16>>2]|
0)+(e[o>>1]<<3)|0;f=(c[(c[k>>2]|0)+36+16>>2]|0)+(e[o>>1]<<3)|0;c[q
x3e;>2]=c[f>>2];c[q+4>>2]=c[f+4>>2]}c[n>>2]=Oa[c[(c[k>>2]|0)+576>>
;2]&63](c[k>>2]|0,(c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<<3)>>
2]|0)-(c[(c[(c[k>>2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)>>2]|
0)|0,(c[(c[(c[k>>2]|0)+72+12>>2]|0)+(e[o>>1]<<3)+4>>2]|0)-(c[(c[(c[k>>
;2]|0)+36+12>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)+4>>2]|0)|0)|0;c[l>>2]=
Oa[c[(c[k>>2]|0)+572>>2]&63](c[k>>2]|0,(c[(c[(c[k>>2]|0)+72+16>>2]|0)+(e[
o>>1]<<3)>>2]|0)-(c[(c[(c[k>>2]|0)+36+16>>2]|0)+(e[(c[k>>2]|0)+284
x3e;>1]<<3)>>2]|0)|0,(c[(c[(c[k>>2]|0)+72+16>>2]|0)+(e[o>>1]<<3
)+4>>2]|0)-(c[(c[(c[k>>2]|0)+36+16>>2]|0)+(e[(c[k>>2]|0)+284>>1]<<3)+
4>>2]|0)|0)|0;if(a[(c[k>>2]|0)+284+32>>0]|0?(c[n>>2]^c[j>>2]|0)<0:0)c[j
x3e;>2]=0-(c[j>>2]|0);g=c[k>>2]|0;if(d[(c[k>>2]|0)+368>>0]&4|0){if((e[g+284+60
>>1]|0)==(e[(c[k>>2]|0)+284+62>>1]|0)?(q=(c[j>>2]|0)-(c[n>>2]|0)|0,((((c[j>
;>2]|0)-(c[n>>2]|0)|0)<0?0-q|0:q)|0)>=(c[(c[k>>2]|0)+284+36>>2]|0)):0)c[j>>
;2]=c[n>>2];c[m>>2]=Oa[c[(c[k>>2]|0)+568>>2]&63](c[k>>2]|0,c[j>>
;2]|0,c[(c[k>>2]|0)+244+20+((d[(c[k>>2]|0)+368>>0]&3)<<2)>>2]|0)|0}else c
[m>>2]=If(g,c[j>>2]|0,c[(c[k>>2]|0)+244+20+((d[(c[k>>2]|0)+368>>0]&3)<
;<2)>>2]|0)|0;do if(d[(c[k>>2]|0)+368>>0]&8|0){g=c[m>>2]|0;h=c[(c[k>>
;2]|0)+284+24>>2]|0;if((c[n>>2]|0)>=0){if((g|0)>=(h|0))break;c[m>>2]=c[(c[k>>2
]|0)+284+24>>2];break}else{if((g|0)<=(0-h|0))break;c[m>>2]=0-(c[(c[k>>2]|0)+284+24>>
;2]|0);break}}while(0);_a[c[(c[k>>2]|0)+584>>2]&15](c[k>>2]|0,(c[k>>2]|0)+72|0,b[o
x3e;>1]|0,(c[m>>2]|0)-(c[l>>2]|0)|0);b[(c[k>>2]|0)+284+2>>1]=b[(c[k>>2]|0
)+284>>1]|0;if(d[(c[k>>2]|0)+368>>0]&16|0)b[(c[k>>2]|0)+284>>1]=b[o>
x3e;1]|0;b[(c[k>>2]|0)+284+4>>1]=b[o>>1]|0;i=p;return}if(!(a[(c[k>>2]|0)+561>>
0]|0)){i=p;return}c[(c[k>>2]|0)+12>>2]=134;i=p;return}function Rg(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;s=i;i=i+48|0;o=s+36|0;t=s+32|0;r=s+40|0;q=s+28|0;p=s+24|0;j=s+20|0;l=s+16|0;k=s+12|0;m=s+8|0;h=s;c[o
x3e;>2]=f;c[t>>2]=g;b[r>>1]=c[c[t>>2]>>2];if((e[r>>1]|0)>>>
;0<(e[(c[o>>2]|0)+72+8>>1]|0)>>>0?(e[(c[o>>2]|0)+284>>1]|0)>>
;>0<(e[(c[o>>2]|0)+36+8>>1]|0)>>>0:0){do if((e[(c[o>>2]|0)+284+60>
x3e;1]|0)!=0?(e[(c[o>>2]|0)+284+62>>1]|0)!=0:0){c[k>>2]=(c[(c[o>>2]|0)+72+20>>
2]|0)+(e[r>>1]<<3);c[m>>2]=(c[(c[o>>2]|0)+36+20>>2]|0)+(e[(c[o>>2]|0
)+284>>1]<<3);if((c[(c[o>>2]|0)+216+4>>2]|0)==(c[(c[o>>2]|0)+216+8>>
2]|0)){c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o>>2]|0,(c[c[k>>2]>>
;2]|0)-(c[c[m>>2]>>2]|0)|0,(c[(c[k>>2]|0)+4>>2]|0)-(c[(c[m>>2]|0)+4>>
;2]|0)|0)|0;c[q>>2]=Mb(c[q>>2]|0,c[(c[o>>2]|0)+216+4>>2]|0)|0;break}else{c[h>>
2]=Mb((c[c[k>>2]>>2]|0)-(c[c[m>>2]>>2]|0)|0,c[(c[o>>2]|0)+216+4>>2]|
0)|0;c[h+4>>2]=Mb((c[(c[k>>2]|0)+4>>2]|0)-(c[(c[m>>2]|0)+4>>2]|0)|0,c[(c[o>
;>2]|0)+216+8>>2]|0)|0;c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o>>2]|
0,c[h>>2]|0,c[h+4>>2]|0)|0;break}}else n=7;while(0);if((n|0)==7){c[j>>2]=(c[(c[o>>2]|0)+
72+12>>2]|0)+(e[r>>1]<<3);c[l>>2]=(c[(c[o>>2]|0)+36+12>>2]|0)+(e[(c[
o>>2]|0)+284>>1]<<3);c[q>>2]=Oa[c[(c[o>>2]|0)+576>>2]&63](c[o
x3e;>2]|0,(c[c[j>>2]>>2]|0)-(c[c[l>>2]>>2]|0)|0,(c[(c[j>>2]|0)+4>>
;2]|0)-(c[(c[l>>2]|0)+4>>2]|0)|0)|0}t=(c[q>>2]|0)-(c[(c[o>>2]|0)+284+44>>2]|0)|
0;do if(((((c[q>>2]|0)-(c[(c[o>>2]|0)+284+44>>2]|0)|0)<0?0-t|0:t)|0)<(c[(c[o>>
2]|0)+284+40>>2]|0)){g=c[(c[o>>2]|0)+284+44>>2]|0;if((c[q>>2]|0)>=0){c[q>>
;2]=g;break}else{c[q>>2]=0-g;break}}while(0);g=c[o>>2]|0;if(d[(c[o>>2]|0)+368>>0]&4
|0)c[p>>2]=Oa[c[g+568>>2]&63](c[o>>2]|0,c[q>>2]|0,c[(c[o>>2]|0)+244+20+((
d[(c[o>>2]|0)+368>>0]&3)<<2)>>2]|0)|0;else c[p>>2]=If(g,c[q>>2]|
0,c[(c[o>>2]|0)+244+20+((d[(c[o>>2]|0)+368>>0]&3)<<2)>>2]|0)|0;do if(d[(c
[o>>2]|0)+368>>0]&8|0){g=c[p>>2]|0;f=c[(c[o>>2]|0)+284+24>>2]|0;if((c[q
x3e;>2]|0)>=0){if((g|0)>=(f|0))break;c[p>>2]=c[(c[o>>2]|0)+284+24>>2];break}else{if
((g|0)<=(0-f|0))break;c[p>>2]=0-(c[(c[o>>2]|0)+284+24>>2]|0);break}}while(0);c[q>>2
]=Oa[c[(c[o>>2]|0)+572>>2]&63](c[o>>2]|0,(c[(c[(c[o>>2]|0)+72+16>>2]|0)+(
e[r>>1]<<3)>>2]|0)-(c[(c[(c[o>>2]|0)+36+16>>2]|0)+(e[(c[o>>2]|0)+284
>>1]<<3)>>2]|0)|0,(c[(c[(c[o>>2]|0)+72+16>>2]|0)+(e[r>>1]<<
;3)+4>>2]|0)-(c[(c[(c[o>>2]|0)+36+16>>2]|0)+(e[(c[o>>2]|0)+284>>1]<<
3)+4>>2]|0)|0)|0;_a[c[(c[o>>2]|0)+584>>2]&15](c[o>>2]|0,(c[o>>2]|0)+72|0,
b[r>>1]|0,(c[p>>2]|0)-(c[q>>2]|0)|0);b[(c[o>>2]|0)+284+2>>1]=b[(c[o>>
;2]|0)+284>>1]|0;b[(c[o>>2]|0)+284+4>>1]=b[r>>1]|0;if(!(d[(c[o>>2]|0)+368>
;>0]&16)){i=s;return}b[(c[o>>2]|0)+284>>1]=b[r>>1]|0;i=s;return}if(!(a[(c[o>>2
]|0)+561>>0]|0)){i=s;return}c[(c[o>>2]|0)+12>>2]=134;i=s;return}function Sg(f,g){f=f|0;g=g|0;var h
=0,j=0,k=0,l=0,m=0;m=i;i=i+16|0;h=m+4|0;j=m;l=m+10|0;k=m+8|0;c[h>>2]=f;c[j>>2]=g;b[l>>1]=(d[(c[h
x3e;>2]|0)+368>>0]|0)-184+1;g=c[h>>2]|0;if((e[l>>1]|0)>>>0>=((c[(c[h>
;>2]|0)+20>>2]|0)+1-(c[(c[h>>2]|0)+16>>2]|0)|0)>>>0){c[g+12>>2]=130;
i=m;return}f=g+360|0;c[f>>2]=(c[f>>2]|0)+1;b[k>>1]=0;while(1){g=c[h>>2]|0;if((e[k>
x3e;1]|0|0)>=(e[l>>1]|0|0))break;f=(xg(g)|0)<<16>>16;c[(c[j>>2]|0)+((e[k>>
;1]|0)<<2)>>2]=f;b[k>>1]=(b[k>>1]|0)+1<<16>>16}a[g+376>>0]=
0;i=m;return}function Tg(a,f){a=a|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+4|0;h=l;k=l+10|0;j=l+8|0;c[g>>2]=a;
c[h>>2]=f;b[k>>1]=(d[(c[g>>2]|0)+368>>0]|0)-176+1;if((e[k>>1]|0)>>
x3e;0>=((c[(c[g>>2]|0)+20>>2]|0)+1-(c[(c[g>>2]|0)+16>>2]|0)|0)>>>0){
c[(c[g>>2]|0)+12>>2]=130;i=l;return}b[j>>1]=1;while(1){if((e[j>>1]|0|0)>(e[k>
x3e;1]|0|0))break;c[(c[h>>2]|0)+((e[j>>1]|0)-1<<2)>>2]=d[(c[(c[g>>2]|0)+356>
;>2]|0)+((c[(c[g>>2]|0)+360>>2]|0)+(e[j>>1]|0))>>0];b[j>>1]=(b[j>>
;1]|0)+1<<16>>16}i=l;return}function Ug(d){d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0;m=i;i=i+32|0;e=m+24|0;f
=m+20|0;j=m+16|0;h=m+12|0;g=m+8|0;k=m+4|0;l=m;c[f>>2]=d;c[j>>2]=c[c[f>>2]>>2];if(a[(c[f
x3e;>2]|0)+292>>0]|0)c[h>>2]=c[(c[f>>2]|0)+296>>2];else c[h>>2]=c[(c[(c[j
>>2]|0)+96>>2]|0)+40>>2];if(!(c[h>>2]|0)){c[e>>2]=153;l=c[e>>2]|0;i=
m;return l|0}Vg(c[h>>2]|0,c[j>>2]|0,c[f>>2]|0)|0;c[(c[h>>2]|0)+428>>2]=0;c[(c[
h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+476>>2]=64;c[(c[h>>2]|0)+480>>2]=0;c
[(c[h>>2]|0)+484>>2]=0;a[(c[h>>2]|0)+488>>0]=0;c[(c[h>>2]|0)+564>>2]=
65536;c[k>>2]=(c[h>>2]|0)+216;c[l>>2]=(c[h>>2]|0)+244;b[c[k>>2]>>1]=
0;b[(c[k>>2]|0)+2>>1]=0;c[(c[k>>2]|0)+4>>2]=0;c[(c[k>>2]|0)+8>>2]=0;
b[(c[l>>2]|0)+8>>1]=0;c[(c[l>>2]|0)+16>>2]=0;c[(c[l>>2]|0)+12>>2]=65536
;Xg(c[h>>2]|0,1,c[(c[j>>2]|0)+656>>2]|0,c[(c[j>>2]|0)+652>>2]|0)|0;Yg(c[h>
;>2]|0,2)|0;Yg(c[h>>2]|0,3)|0;if((c[(c[j>>2]|0)+652>>2]|0)>>>0>0){c[g>
;>2]=Zg(c[h>>2]|0,1,0)|0;if(!(c[g>>2]|0))c[g>>2]=Ta[c[(c[j>>2]|0)+688>>2]
x26;63](c[h>>2]|0)|0}else c[g>>2]=0;if(!(c[g>>2]|0))_g(c[h>>2]|0,c[f>>2]|0)|0;
c[e>>2]=c[g>>2];l=c[e>>2]|0;i=m;return l|0}function Vg(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;p=i;i=i+32|0;h=p+28|0;j=p+24|0;q=p+20|0;k=p+16|0;m=p+12|0;o=p+8|0;n=p+4|0;l=p;c[j>>2]=d;c[q>
;>2]=f;c[k>>2]=g;c[c[j>>2]>>2]=c[q>>2];c[n>>2]=(c[q>>2]|0)+260;
c[(c[j>>2]|0)+4>>2]=c[k>>2];if(c[k>>2]|0){c[(c[j>>2]|0)+396>>2]=c[(c
[k>>2]|0)+116>>2];c[(c[j>>2]|0)+400>>2]=c[(c[k>>2]|0)+120>>2];c[(c[j
>>2]|0)+408>>2]=c[(c[k>>2]|0)+128>>2];c[(c[j>>2]|0)+412>>2]=c[(c[k
x3e;>2]|0)+132>>2];c[(c[j>>2]|0)+404>>2]=c[(c[k>>2]|0)+124>>2];c[(c[j>
;>2]|0)+416>>2]=c[(c[k>>2]|0)+136>>2];d=(c[j>>2]|0)+244|0;f=(c[k>>2]|0)+72
|0;g=d+40|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));q=(c[j>>2]|0)+216|0;g=(c[k
x3e;>2]|0)+44|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[q+8>>2]=c[g+8>
x3e;2];c[q+12>>2]=c[g+12>>2];c[q+16>>2]=c[g+16>>2];c[q+20>>2]=c[g+20>>
;2];c[q+24>>2]=c[g+24>>2];c[(c[j>>2]|0)+420>>2]=c[(c[k>>2]|0)+140>>2
];c[(c[j>>2]|0)+424>>2]=c[(c[k>>2]|0)+144>>2];c[m>>2]=0;while(1){if((c[m>
x3e;2]|0)>=3)break;q=(c[j>>2]|0)+444+(c[m>>2]<<3)|0;g=(c[k>>2]|0)+148+(c[m>>
;2]<<3)|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[m>>2]=(c[m>>
;2]|0)+1}d=(c[j>>2]|0)+284|0;f=(c[k>>2]|0)+172|0;g=d+68|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f
+4|0}while((d|0)<(g|0));c[(c[j>>2]|0)+380>>2]=c[(c[k>>2]|0)+240>>2];c[(c[j>>
;2]|0)+384>>2]=c[(c[k>>2]|0)+244>>2];b[(c[j>>2]|0)+468>>1]=b[(c[k>>2
]|0)+248>>1]|0;c[(c[j>>2]|0)+472>>2]=c[(c[k>>2]|0)+252>>2];d=(c[j>>2
]|0)+180|0;f=(c[k>>2]|0)+256|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));
d=(c[j>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+72|0;f=(c[j
>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>
;2]|0)+108|0;f=(c[j>>2]|0)+36|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0))}
c[o>>2]=c[(c[j>>2]|0)+20>>2];c[l>>2]=Wg(c[(c[j>>2]|0)+8>>2]|0,o,4,(c
[j>>2]|0)+24|0,(e[(c[n>>2]|0)+24>>1]|0)+32|0)|0;c[(c[j>>2]|0)+20>>2]=c[o>
x3e;2];if(c[l>>2]|0){c[h>>2]=c[l>>2];q=c[h>>2]|0;i=p;return q|0}c[o>>2]=c[(c[j
>>2]|0)+388>>2];c[l>>2]=Wg(c[(c[j>>2]|0)+8>>2]|0,o,1,(c[j>>2]|0)+392
|0,e[(c[n>>2]|0)+26>>1]|0)|0;c[(c[j>>2]|0)+388>>2]=c[o>>2]&65535;if(c[l
x3e;>2]|0){c[h>>2]=c[l>>2];q=c[h>>2]|0;i=p;return q|0}else{b[(c[j>>2]|0)+144+8>
;>1]=0;b[(c[j>>2]|0)+144+10>>1]=0;d=(c[j>>2]|0)+72|0;f=(c[j>>2]|0)+144|0;g=d+36|0;do
{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+108|0;f=(c[j>>2]|
0)+144|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));d=(c[j>>2]|0)+36|0;f=(
c[j>>2]|0)+144|0;g=d+36|0;do{c[d>>2]=c[f>>2];d=d+4|0;f=f+4|0}while((d|0)<(g|0));a[(c[j>
x3e;2]|0)+488>>0]=0;c[h>>2]=0;q=c[h>>2]|0;i=p;return q|0}return 0}function Wg(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;o=i;i=i+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;p=o+12|0;l=o+8|0;m
=o+4|0;n=o;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[p>>2]=e;c[l>>2]=f;c[n>>2]=
c[p>>2];do if((c[c[j>>2]>>2]|0)>>>0<(c[l>>2]|0)>>>0){
b=_(c[c[j>>2]>>2]|0,c[k>>2]|0)|0;p=_(c[l>>2]|0,c[k>>2]|0)|0;p=hc(c[h>>
;2]|0,1,b,p,c[c[n>>2]>>2]|0,m)|0;c[c[n>>2]>>2]=p;if(!(c[m>>2]|0)){c[c[j>
x3e;2]>>2]=c[l>>2];break}c[g>>2]=c[m>>2];p=c[g>>2]|0;i=o;return p|0}while(0);c
[g>>2]=0;p=c[g>>2]|0;i=o;return p|0}function Xg(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;g=f+8|0;k=f+4|0;j=f;c[h>>2]=a;c[g>>2]=b;c[k>>2]=d;c[j>>2]=e;c[(c[h>
;>2]|0)+444+((c[g>>2]|0)-1<<3)>>2]=c[k>>2];c[(c[h>>2]|0)+444+((c[g>
x3e;2]|0)-1<<3)+4>>2]=c[j>>2];i=f;return 0}function Yg(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)+444+((c[e>>2]|0)-1<<3)>
x3e;2]=0;c[(c[f>>2]|0)+444+((c[e>>2]|0)-1<<3)+4>>2]=0;i=d;return 0}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;e=i;i=i+16|0;f=e+12|0;g=e+8|0;h=e+4|0;j=e;c[f>>2]=a;c[g>>2]=b;c[h>
;>2]=d;c[j>>2]=(c[f>>2]|0)+444+((c[g>>2]|0)-1<<3);c[(c[f>>2]|0)+356>
x3e;2]=c[c[j>>2]>>2];c[(c[f>>2]|0)+364>>2]=c[(c[j>>2]|0)+4>>2];c[(c[
f>>2]|0)+360>>2]=c[h>>2];c[(c[f>>2]|0)+352>>2]=c[g>>2];i=e;return 0}
function _g(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[(c[e
>>2]|0)+116>>2]=c[(c[d>>2]|0)+396>>2];c[(c[e>>2]|0)+128>>2]=c[(c[d
x3e;>2]|0)+408>>2];c[(c[e>>2]|0)+140>>2]=c[(c[d>>2]|0)+420>>2];c[(c[e>
;>2]|0)+144>>2]=c[(c[d>>2]|0)+424>>2];c[f>>2]=0;while(1){if((c[f>>2]|0)
x3e;=3)break;b=(c[e>>2]|0)+148+(c[f>>2]<<3)|0;a=(c[d>>2]|0)+444+(c[f>>2]<
x3c;3)|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[f>>2]=(c[f>>2]|0)+1}i
=g;return 0}function $g(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;f=k+16|0;g=k+12|0;d=k+8|0;j=k+4|0;h=k;c[g>>
;2]=b;c[d>>2]=c[c[g>>2]>>2];if(a[(c[g>>2]|0)+292>>0]|0)c[j>>2]=c[(c[
g>>2]|0)+296>>2];else c[j>>2]=c[(c[(c[d>>2]|0)+96>>2]|0)+40>>2];if(!(
c[j>>2]|0)){c[f>>2]=153;j=c[f>>2]|0;i=k;return j|0}Vg(c[j>>2]|0,c[d>>2]|0,c[g
x3e;>2]|0)|0;c[(c[j>>2]|0)+428>>2]=0;c[(c[j>>2]|0)+16>>2]=0;a[(c[j>>2]|0)+
488>>0]=0;Xg(c[j>>2]|0,2,c[(c[d>>2]|0)+664>>2]|0,c[(c[d>>2]|0)+660>>
2]|0)|0;Yg(c[j>>2]|0,3)|0;if((c[(c[d>>2]|0)+660>>2]|0)>>>0>0){c[h>>2
]=Zg(c[j>>2]|0,2,0)|0;if((c[h>>2]|0)==0?(a[(c[g>>2]|0)+292>>0]|0)==0:0)c[h>>2]=
Ta[c[(c[d>>2]|0)+688>>2]&63](c[j>>2]|0)|0}else c[h>>2]=0;d=(c[g>>2]|0)+172
|0;b=(c[j>>2]|0)+284|0;e=d+68|0;do{c[d>>2]=c[b>>2];d=d+4|0;b=b+4|0}while((d|0)<(e|0));_g(c[j
x3e;>2]|0,c[g>>2]|0)|0;c[f>>2]=c[h>>2];j=c[f>>2]|0;i=k;return j|0}function ah(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,P=0,Q=0,R=0;R=i;i=i+192|0;l=R+180|0;m=R+176|0;n=R+172|0;o=R+186|0;q=R+168|0;P=R+164|0;Q=R+160|0;G=R+
156|0;r=R+152|0;s=R+148|0;J=R+185|0;p=R+144|0;w=R+104|0;t=R+96|0;u=R+184|0;z=R+92|0;M=R+88|0;L=R+84|0;x=R+80|0;v=R+76|0;y=R+72|0
;N=R+68|0;A=R+64|0;B=R+60|0;C=R+56|0;O=R+52|0;E=R+48|0;F=R+44|0;D=R+40|0;I=R+36|0;H=R+32|0;K=R;c[l>>2]=f;c[m>>
;2]=g;c[n>>2]=h;a[o>>0]=j;c[q>>2]=0;c[r>>2]=c[c[l>>2]>>2];c[s>
x3e;2]=c[(c[l>>2]|0)+12>>2];a[J>>0]=0;c[p>>2]=0;a[u>>0]=0;if((c[n>>2
]|0)>>>0>1?(c[n>>2]|0)>>>0>(e[(c[r>>2]|0)+260+30>>1]|0)>
;>>0:0)c[q>>2]=21;else k=4;a:do if((k|0)==4){if((c[m>>2]|0)>>>0>=(c[(c[r>
x3e;2]|0)+16>>2]|0)>>>0){c[q>>2]=16;break}c[(c[l>>2]|0)+20>>2]=c[m>
x3e;2];if(!(c[(c[l>>2]|0)+16>>2]&1)){c[P>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+44
+4>>2];c[Q>>2]=c[(c[(c[l>>2]|0)+4>>2]|0)+44+8>>2]}else{c[P>>2]=65536
;c[Q>>2]=65536}bh(c[l>>2]|0,c[m>>2]|0);g=c[r>>2]|0;if(c[(c[(c[r>>2]|0)+128>
;>2]|0)+52>>2]|0){c[q>>2]=Oa[c[c[c[(c[g+128>>2]|0)+52>>2]>>2]>>
2]&63](c[(c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,c[m>>2]|0,t)|0;if
(c[q>>2]|0)break;a[u>>0]=1;c[G>>2]=0;c[(c[l>>2]|0)+28>>2]=c[t+4>>2];
g=w;j=g+40|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(j|0));uc(w,c[t>>2]|0,c[t+4>>2]|0);c[(c[l>
x3e;2]|0)+24>>2]=w}else c[G>>2]=Ge(g,c[m>>2]|0,(c[l>>2]|0)+28|0)|0;if((c[(c[l>>
;2]|0)+28>>2]|0)>0){if((c[(c[l>>2]|0)+84>>2]|0)==0?(c[(c[(c[r>>2]|0)+128>>
;2]|0)+52>>2]|0)==0:0){c[q>>2]=8;break}c[q>>2]=Wa[c[(c[r>>2]|0)+512>>2]&31
](c[l>>2]|0,c[m>>2]|0,(c[(c[l>>2]|0)+84>>2]|0)+(c[G>>2]|0)|0,c[(c[l>>
;2]|0)+28>>2]|0)|0;if(c[q>>2]|0)break;a[J>>0]=1;c[q>>2]=Ta[c[(c[r>>2]|0)+520
x3e;>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;if(d[o>>0]|0)break}if(c[(c[l>>2]|0
)+28>>2]|0?b[(c[l>>2]|0)+32>>1]|0:0){c[(c[l>>2]|0)+68>>2]=(c[(c[l>>2
]|0)+36>>2]|0)-(c[(c[l>>2]|0)+52>>2]|0);c[(c[l>>2]|0)+68+4>>2]=0;c[(c[l>
x3e;2]|0)+76>>2]=(c[(c[l>>2]|0)+68>>2]|0)+(c[(c[l>>2]|0)+56>>2]|0);c[(c[l>
;>2]|0)+76+4>>2]=0;c[(c[l>>2]|0)+184>>2]=0;c[(c[l>>2]|0)+184+4>>2]=(c[(c[
l>>2]|0)+176>>2]|0)+(c[(c[l>>2]|0)+36+12>>2]|0);c[(c[l>>2]|0)+192>>2
]=0;c[(c[l>>2]|0)+192+4>>2]=(c[(c[l>>2]|0)+184+4>>2]|0)-(c[(c[l>>2]|0)+180>
;>2]|0);eh(c[l>>2]|0,c[m>>2]|0);if((b[(c[l>>2]|0)+32>>1]|0)>0){c[q>>
2]=Ta[c[(c[r>>2]|0)+524>>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;Va[c[(c[r>>
;2]|0)+516>>2]&63](c[l>>2]|0);a[J>>0]=0;c[q>>2]=gh(c[l>>2]|0)|0;if(c[q>
;>2]|0)break;oc(c[s>>2]|0);break}if((b[(c[l>>2]|0)+32>>1]|0)!=-1){c[q>>2]=20;break}
c[M>>2]=b[(c[s>>2]|0)+20+2>>1];c[L>>2]=b[(c[s>>2]|0)+20>>1];c[q>
;>2]=Ta[c[(c[r>>2]|0)+528>>2]&63](c[l>>2]|0)|0;if(c[q>>2]|0)break;c[x>>
;2]=c[(c[l>>2]|0)+168>>2];Va[c[(c[r>>2]|0)+516>>2]&63](c[l>>2]|0);a[J>
;>0]=0;if(a[(c[r>>2]|0)+708>>0]|0){c[A>>2]=c[(c[r>>2]|0)+100>>2];G=fh(c[r
>>2]|0,c[m>>2]|0,p,(c[(c[s>>2]|0)+56+28>>2]|0)+4|0)|0;c[q>>2]=G;if(G|0)break;c
[N>>2]=(c[(c[s>>2]|0)+56+32>>2]|0)+(c[(c[s>>2]|0)+20+28>>2]<<5);c[y
x3e;>2]=c[(c[s>>2]|0)+56+28>>2];c[v>>2]=0;while(1){if((c[v>>2]|0)>=(c[y>
x3e;2]|0))break;if(e[(c[N>>2]|0)+4>>1]&2|0){G=(c[N>>2]|0)+8|0;c[G>>2]=(c[G>>
;2]|0)+((c[(c[p>>2]|0)+(c[v>>2]<<3)>>2]&65535)<<16>>16);G=(c[N
x3e;>2]|0)+12|0;c[G>>2]=(c[G>>2]|0)+((c[(c[p>>2]|0)+(c[v>>2]<<3)+4>
x3e;2]&65535)<<16>>16)}c[v>>2]=(c[v>>2]|0)+1;c[N>>2]=(c[N>>2]|0
)+32}N=(c[l>>2]|0)+68|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+0<
;<3)>>2]|0);N=(c[l>>2]|0)+68+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v
>>2]|0)+0<<3)+4>>2]|0);N=(c[l>>2]|0)+76|0;c[N>>2]=(c[N>>2]|0)+(c[(c[
p>>2]|0)+((c[v>>2]|0)+1<<3)>>2]|0);N=(c[l>>2]|0)+76+4|0;c[N>>2]=(c[N
>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+1<<3)+4>>2]|0);N=(c[l>>2]|0)+184
|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+2<<3)>>2]|0);N=(c
[l>>2]|0)+184+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>>2]|0)+2<<
;3)+4>>2]|0);N=(c[l>>2]|0)+192|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>>2]|0)+((c[v>
;>2]|0)+3<<3)>>2]|0);N=(c[l>>2]|0)+192+4|0;c[N>>2]=(c[N>>2]|0)+(c[(c[p>
;>2]|0)+((c[v>>2]|0)+3<<3)+4>>2]|0);Fb(c[A>>2]|0,c[p>>2]|0);c[p>>
;2]=0}if(!(c[(c[l>>2]|0)+16>>2]&1)){N=Mb(c[(c[l>>2]|0)+68>>2]|0,c[P>>2]|0
)|0;c[(c[l>>2]|0)+68>>2]=N;P=Mb(c[(c[l>>2]|0)+76>>2]|0,c[P>>2]|0)|0;c[(c[l>
;>2]|0)+76>>2]=P;P=Mb(c[(c[l>>2]|0)+184+4>>2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0
)+184+4>>2]=P;Q=Mb(c[(c[l>>2]|0)+192+4>>2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0)+192+4
x3e;>2]=Q}if(c[(c[l>>2]|0)+16>>2]&1024|0){oc(c[s>>2]|0);c[(c[(c[l>>2]|0)+8>
;>2]|0)+72>>2]=1668246896;break}c[O>>2]=0;c[E>>2]=c[M>>2];c[F>>2]=c[(c[s
x3e;>2]|0)+56+28>>2];c[D>>2]=c[(c[s>>2]|0)+20+28>>2];c[I>>2]=c[(c[l>
x3e;2]|0)+24>>2];c[H>>2]=c[(c[l>>2]|0)+28>>2];oc(c[s>>2]|0);c[B>>2]=
0;while(1){if((c[B>>2]|0)>>>0>=(c[F>>2]|0)>>>0)break;c[O>>2]=(c
[(c[s>>2]|0)+20+32>>2]|0)+(c[D>>2]<<5)+(c[B>>2]<<5);Q=(c[l>>
;2]|0)+68|0;c[K>>2]=c[Q>>2];c[K+4>>2]=c[Q+4>>2];Q=K+8|0;P=(c[l>>2]|0)+76|0;c[Q
>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=K+16|0;P=(c[l>>2]|0)+184|0;c[Q>>2
]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=K+24|0;P=(c[l>>2]|0)+192|0;c[Q>>2]=c[P>
x3e;2];c[Q+4>>2]=c[P+4>>2];c[C>>2]=b[(c[s>>2]|0)+20+2>>1];c[q>>2]=ah
(c[l>>2]|0,c[c[O>>2]>>2]|0,(c[n>>2]|0)+1|0,0)|0;if(c[q>>2]|0)break a;c[O>
x3e;2]=(c[(c[s>>2]|0)+20+32>>2]|0)+(c[D>>2]<<5)+(c[B>>2]<<5);if(!(e[(
c[O>>2]|0)+4>>1]&512)){Q=(c[l>>2]|0)+68|0;c[Q>>2]=c[K>>2];c[Q+4>>
;2]=c[K+4>>2];Q=(c[l>>2]|0)+76|0;P=K+8|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>
x3e;2];Q=(c[l>>2]|0)+184|0;P=K+16|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2];Q=(c[l
>>2]|0)+192|0;P=K+24|0;c[Q>>2]=c[P>>2];c[Q+4>>2]=c[P+4>>2]}c[E>>2]=b
[(c[s>>2]|0)+20+2>>1];if((c[E>>2]|0)!=(c[C>>2]|0))lh(c[l>>2]|0,c[O>>
2]|0,c[M>>2]|0,c[C>>2]|0)|0;c[B>>2]=(c[B>>2]|0)+1}c[(c[l>>2]|0)+24>>
2]=c[I>>2];c[(c[l>>2]|0)+28>>2]=c[H>>2];c[(c[l>>2]|0)+168>>2]=c[x>
;>2];if(c[(c[l>>2]|0)+16>>2]&2|0)break;if(!(e[(c[O>>2]|0)+4>>1]&256))break
;if((c[E>>2]|0)>>>0<=(c[M>>2]|0)>>>0)break;mh(c[l>>2]|0,c[M>
;>2]|0,c[L>>2]|0)|0;break}c[(c[l>>2]|0)+36>>2]=0;c[(c[l>>2]|0)+36+8>>2]=0
;c[(c[l>>2]|0)+36+4>>2]=0;c[(c[l>>2]|0)+36+12>>2]=0;if(!(a[o>>0]|0)){c[(c[l>
;>2]|0)+68>>2]=(c[(c[l>>2]|0)+36>>2]|0)-(c[(c[l>>2]|0)+52>>2]|0);c[(c[l
x3e;>2]|0)+68+4>>2]=0;c[(c[l>>2]|0)+76>>2]=(c[(c[l>>2]|0)+68>>2]|0)+(c[(c
[l>>2]|0)+56>>2]|0);c[(c[l>>2]|0)+76+4>>2]=0;c[(c[l>>2]|0)+184>>2]=0
;c[(c[l>>2]|0)+184+4>>2]=(c[(c[l>>2]|0)+176>>2]|0)+(c[(c[l>>2]|0)+36+12>
x3e;2]|0);c[(c[l>>2]|0)+192>>2]=0;c[(c[l>>2]|0)+192+4>>2]=(c[(c[l>>2]|0)+184+4
>>2]|0)-(c[(c[l>>2]|0)+180>>2]|0);eh(c[l>>2]|0,c[m>>2]|0);if(a[(c[c[l>>
;2]>>2]|0)+708>>0]|0){c[z>>2]=c[(c[c[l>>2]>>2]|0)+100>>2];c[q>
x3e;2]=fh(c[c[l>>2]>>2]|0,c[m>>2]|0,p,4)|0;if(c[q>>2]|0)break;O=(c[l>>2]|0)+68
|0;c[O>>2]=(c[O>>2]|0)+(c[c[p>>2]>>2]|0);O=(c[l>>2]|0)+68+4|0;c[O>>2
]=(c[O>>2]|0)+(c[(c[p>>2]|0)+4>>2]|0);O=(c[l>>2]|0)+76|0;c[O>>2]=(c[O>>
;2]|0)+(c[(c[p>>2]|0)+8>>2]|0);O=(c[l>>2]|0)+76+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[
p>>2]|0)+8+4>>2]|0);O=(c[l>>2]|0)+184|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>
;2]|0)+16>>2]|0);O=(c[l>>2]|0)+184+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+16+4
>>2]|0);O=(c[l>>2]|0)+192|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+24>>2
]|0);O=(c[l>>2]|0)+192+4|0;c[O>>2]=(c[O>>2]|0)+(c[(c[p>>2]|0)+24+4>>2]|0);Fb(c
[z>>2]|0,c[p>>2]|0);c[p>>2]=0}if(!(c[(c[l>>2]|0)+16>>2]&1)){O=Mb(c[(c[l
x3e;>2]|0)+68>>2]|0,c[P>>2]|0)|0;c[(c[l>>2]|0)+68>>2]=O;P=Mb(c[(c[l>>2]|0
)+76>>2]|0,c[P>>2]|0)|0;c[(c[l>>2]|0)+76>>2]=P;P=Mb(c[(c[l>>2]|0)+184+4>
x3e;2]|0,c[Q>>2]|0)|0;c[(c[l>>2]|0)+184+4>>2]=P;Q=Mb(c[(c[l>>2]|0)+192+4>>2]|0
,c[Q>>2]|0)|0;c[(c[l>>2]|0)+192+4>>2]=Q}c[q>>2]=0}}while(0);if(a[J>>0]|0)Va[c[(
c[r>>2]|0)+516>>2]&63](c[l>>2]|0);if(!(a[u>>0]|0)){Q=c[q>>2]|0;i=R;return
Q|0}Ra[c[(c[c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2]>>2]|0)+4>>2]&7](c[(c[(c[(
c[r>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,t);Q=c[q>>2]|0;i=R;return Q|0}function
bh(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;j=i;i=i+32|0;g=j+8|0;n=j+4|0;o=j;m=j+18|0;l=j+16|0;h=j+14|0;k=j+12|0;c[
g>>2]=d;c[n>>2]=f;c[o>>2]=c[c[g>>2]>>2];b[m>>1]=0;b[l>>1]=
0;b[h>>1]=0;b[k>>1]=0;ch(c[o>>2]|0,c[n>>2]|0,((c[(c[g>>2]|0)+16>>2]
x26;512|0)!=0^1)&1,m,h);dh(c[o>>2]|0,c[n>>2]|0,((c[(c[g>>2]|0)+16>>2]&512|0)!=
0^1)&1,l,k);c[(c[g>>2]|0)+52>>2]=b[m>>1];c[(c[g>>2]|0)+56>>2]=e[h>
x3e;1];c[(c[g>>2]|0)+176>>2]=b[l>>1];c[(c[g>>2]|0)+180>>2]=e[k>>1];if
(a[(c[g>>2]|0)+64>>0]|0){i=j;return}a[(c[g>>2]|0)+64>>0]=1;c[(c[g>>2]|0)+60>
;>2]=e[h>>1];i=j;return}function ch(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;m=i;i=i+
32|0;k=m+12|0;p=m+8|0;n=m+16|0;o=m+4|0;l=m;c[k>>2]=e;c[p>>2]=f;a[n>>0]=g;c[o>>2]=h;c[l
x3e;>2]=j;Za[c[(c[(c[k>>2]|0)+532>>2]|0)+156>>2]&31](c[k>>2]|0,0,c[p>>
;2]|0,c[o>>2]|0,c[l>>2]|0)|0;if(!(d[n>>0]|0)){i=m;return}if(!(c[(c[k>>2]|0)+468+12>
x3e;2]|0)){i=m;return}b[c[l>>2]>>1]=b[(c[k>>2]|0)+216+10>>1]|0;i=m;return}function dh(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;n=i;i=i+32|0;j=n+12|0;k=n+8|0;o=n+16|0;l=n+4|0;m=n;c[j>
x3e;2]=d;c[k>>2]=e;a[o>>0]=f;c[l>>2]=g;c[m>>2]=h;a[o>>0]=a[o>>0]|0;if
(a[(c[j>>2]|0)+296>>0]|0){Za[c[(c[(c[j>>2]|0)+532>>2]|0)+156>>2]&31](c[j
x3e;>2]|0,1,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;i=n;return}else{b[c[l>>2]>>1
]=0;b[c[m>>2]>>1]=b[(c[j>>2]|0)+68>>1]|0;i=n;return}}function eh(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;q=i;i=i+48|0;g=q+32|0;h=q+28|0;m=q+24|0;n=q+42|0;p=q+40|0;k=q+38|0;j=q+36|0;o=q+8|0;l=q;c[
g>>2]=d;c[h>>2]=f;c[m>>2]=c[c[g>>2]>>2];b[n>>1]=0;b[p>>1]=
0;b[k>>1]=0;b[j>>1]=0;if(!(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)){i=q;return}if
(!(c[(c[c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]>>2]|0)+8>>2]|0)){i=q;return}c[o>
;>2]=c[(c[g>>2]|0)+52>>2];c[o+4>>2]=0;c[o+8>>2]=c[(c[g>>2]|0)+56>>
;2];c[o+12>>2]=0;c[l>>2]=Wa[c[(c[c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]>>
;2]|0)+8>>2]&31](c[(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)+4>>2]|0,c[h>
;>2]|0,0,o)|0;if(c[l>>2]|0){i=q;return}b[n>>1]=c[o>>2];b[k>>1]=c[o+8>>2];
c[(c[g>>2]|0)+52>>2]=b[n>>1];c[(c[g>>2]|0)+56>>2]=e[k>>1];c[(c[g>
;>2]|0)+176>>2]=b[p>>1];c[(c[g>>2]|0)+180>>2]=e[j>>1];if(a[(c[g>>
;2]|0)+64>>0]|0){i=q;return}a[(c[g>>2]|0)+64>>0]=1;c[(c[g>>2]|0)+60>>2]=e[k>
;>1];i=q;return}function fh(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,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;M=i;i=i+128|0;j=M+112|0;N=M+108|0;k=M+104|0;l=M+100|0;m=M+96|0
;G=M+92|0;A=M+88|0;o=M+84|0;p=M+80|0;s=M+76|0;t=M+72|0;H=M+68|0;B=M+64|0;u=M+60|0;v=M+56|0;y=M+52|0;K=M+48|0;x=M+44|0;w=M+40|0;C
=M+36|0;F=M+32|0;E=M+28|0;z=M+24|0;D=M+20|0;q=M+16|0;r=M+12|0;I=M+8|0;J=M+4|0;n=M;c[N>>2]=d;c[k>>2]=f;c[l>
;>2]=g;c[m>>2]=h;c[G>>2]=c[(c[N>>2]|0)+104>>2];c[A>>2]=c[(c[G>>
2]|0)+28>>2];c[o>>2]=c[(c[N>>2]|0)+712>>2];c[K>>2]=0;c[x>>2]=0;c[w
x3e;>2]=0;c[F>>2]=0;c[E>>2]=0;c[z>>2]=0;if((c[o>>2]|0)==0?1:(a[(c[N>>2]|0
)+708>>0]|0)==0){c[j>>2]=6;N=c[j>>2]|0;i=M;return N|0}c[p>>2]=hc(c[A>>2]|0,8,0
,c[m>>2]|0,0,s)|0;do if(!(c[s>>2]|0)){c[c[l>>2]>>2]=c[p>>2];if((c[k>>
;2]|0)>>>0<(c[(c[o>>2]|0)+32>>2]|0)>>>0?(c[(c[(c[o>>2]|0)+36>
;>2]|0)+(c[k>>2]<<2)>>2]|0)!=(c[(c[(c[o>>2]|0)+36>>2]|0)+((c[k>>
;2]|0)+1<<2)>>2]|0):0){N=Kc(c[G>>2]|0,c[(c[(c[o>>2]|0)+36>>2]|0)+(c[k>>
;2]<<2)>>2]|0)|0;c[s>>2]=N;if((N|0)==0?(N=ee(c[G>>2]|0,(c[(c[(c[o>>2]|0)+36>
;>2]|0)+((c[k>>2]|0)+1<<2)>>2]|0)-(c[(c[(c[o>>2]|0)+36>>2]|0)+(c[k>
x3e;2]<<2)>>2]|0)|0)|0,c[s>>2]=N,(N|0)==0):0){c[t>>2]=(c[(c[G>>2]|0)+32>
x3e;2]|0)-(c[c[G>>2]>>2]|0);c[K>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0
,0,s)|0;if(((c[s>>2]|0)==0?(c[x>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0,0,s)|0,(c
[s>>2]|0)==0):0)?(c[w>>2]=hc(c[A>>2]|0,4,0,c[c[o>>2]>>2]|0,0,s)|0,(c[s>
x3e;2]|0)==0):0){c[H>>2]=(ie(c[G>>2]|0)|0)&65535;N=c[t>>2]|0;c[B>>2]=N+((ie(c[G>
;>2]|0)|0)&65535);if(c[H>>2]&32768|0){c[u>>2]=(c[(c[G>>2]|0)+32>>2]|0)-(c
[c[G>>2]>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[B>>
;2]|0);c[E>>2]=Ce(c[G>>2]|0,F)|0;c[B>>2]=(c[(c[G>>2]|0)+32>>2]|0)-(c[c[G>
x3e;2]>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[u>>2]|0)}c[v
>>2]=0;a:while(1){if((c[v>>2]|0)>>>0>=(c[H>>2]&4095)>>>0)break
;c[I>>2]=(ie(c[G>>2]|0)|0)&65535;c[J>>2]=(ie(c[G>>2]|0)|0)&65535;b:do if(c[J
x3e;>2]&32768|0){c[y>>2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[c[o>>2]
x3e;>2]|0)>>>0)break b;N=(ie(c[G>>2]|0)|0)<<16>>16<<2;c[(c[K>
x3e;2]|0)+(c[y>>2]<<2)>>2]=N;c[y>>2]=(c[y>>2]|0)+1}}else{if((c[J>>2]
x26;4095)>>>0>=(c[(c[o>>2]|0)+24>>2]|0)>>>0){L=21;break a}N=_(c[J>
x3e;2]&4095,c[c[o>>2]>>2]|0)|0;Ss(c[K>>2]|0,(c[(c[o>>2]|0)+28>>2]|0)+(N
x3c;<2)|0,c[c[o>>2]>>2]<<2|0)|0}while(0);c:do if(c[J>>2]&16384|0){c[y>>
;2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[c[o>>2]>>2]|0)>>>0)break;
N=(ie(c[G>>2]|0)|0)<<16>>16<<2;c[(c[x>>2]|0)+(c[y>>2]<<2)
x3e;>2]=N;c[y>>2]=(c[y>>2]|0)+1}c[y>>2]=0;while(1){if((c[y>>2]|0)>>>
0>=(c[c[o>>2]>>2]|0)>>>0)break c;N=(ie(c[G>>2]|0)|0)<<16>>
16<<2;c[(c[w>>2]|0)+(c[y>>2]<<2)>>2]=N;c[y>>2]=(c[y>>2]|0)+
1}}while(0);c[n>>2]=Be(c[o>>2]|0,c[J>>2]&65535,c[K>>2]|0,c[x>>2]|0,c[w>
;>2]|0)|0;if(!(c[n>>2]|0))c[B>>2]=(c[B>>2]|0)+(c[I>>2]|0);else{c[u>>2]=(c
[(c[G>>2]|0)+32>>2]|0)-(c[c[G>>2]>>2]|0);if(c[J>>2]&8192|0){c[(c[G>
x3e;2]|0)+32>>2]=(c[c[G>>2]>>2]|0)+(c[B>>2]|0);c[z>>2]=Ce(c[G>>2]|0,
C)|0;c[D>>2]=c[z>>2]}else{c[D>>2]=c[E>>2];c[C>>2]=c[F>>2]}c[q>
x3e;2]=De(c[G>>2]|0,(c[C>>2]|0)==0?c[m>>2]|0:c[C>>2]|0)|0;c[r>>2]=De(c[G>
x3e;2]|0,(c[C>>2]|0)==0?c[m>>2]|0:c[C>>2]|0)|0;d:do if(!((c[D>>2]|0)==0|(c[r>>
2]|0)==0|(c[q>>2]|0)==0)){N=(c[D>>2]|0)==(-1|0);c[y>>2]=0;if(N)while(1){if((c[y>>2]|0)
x3e;>>0>=(c[m>>2]|0)>>>0)break d;N=Mb(b[(c[q>>2]|0)+(c[y>>2]<
x3c;1)>>1]|0,c[n>>2]|0)|0;h=(c[p>>2]|0)+(c[y>>2]<<3)|0;c[h>>2]=(c[h
x3e;>2]|0)+N;h=Mb(b[(c[r>>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;N=(c[p>
;>2]|0)+(c[y>>2]<<3)+4|0;c[N>>2]=(c[N>>2]|0)+h;c[y>>2]=(c[y>>2]|
0)+1}else while(1){if((c[y>>2]|0)>>>0>=(c[C>>2]|0)>>>0)break d;N=Mb(b[(c[
q>>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;h=(c[p>>2]|0)+(e[(c[z>
x3e;2]|0)+(c[y>>2]<<1)>>1]<<3)|0;c[h>>2]=(c[h>>2]|0)+N;h=Mb(b[(c[r
x3e;>2]|0)+(c[y>>2]<<1)>>1]|0,c[n>>2]|0)|0;N=(c[p>>2]|0)+(e[(c[z>>
;2]|0)+(c[y>>2]<<1)>>1]<<3)+4|0;c[N>>2]=(c[N>>2]|0)+h;c[y>>
;2]=(c[y>>2]|0)+1}}while(0);if((c[z>>2]|0)!=(-1|0)){Fb(c[A>>2]|0,c[z>>2]|0);c[z>>
;2]=0}Fb(c[A>>2]|0,c[q>>2]|0);c[q>>2]=0;Fb(c[A>>2]|0,c[r>>2]|0);c[r>>
;2]=0;c[B>>2]=(c[B>>2]|0)+(c[I>>2]|0);c[(c[G>>2]|0)+32>>2]=(c[c[G>>2
]>>2]|0)+(c[u>>2]|0)}c[v>>2]=(c[v>>2]|0)+1}if((L|0)==21)c[s>>2]=8;Fb(c[A>
x3e;2]|0,c[K>>2]|0);c[K>>2]=0;Fb(c[A>>2]|0,c[x>>2]|0);c[x>>2]=0;Fb(c[A>
x3e;2]|0,c[w>>2]|0);c[w>>2]=0}ge(c[G>>2]|0)}if(!(c[s>>2]|0))break;Fb(c[A>>2]|0
,c[p>>2]|0);c[p>>2]=0;c[c[l>>2]>>2]=0;break}c[j>>2]=0;N=c[j>>2]|0;i=
M;return N|0}while(0);c[j>>2]=c[s>>2];N=c[j>>2]|0;i=M;return N|0}function gh(d){d=d|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;t=i;i=i+64|0;f=t+48|0;g=t+44|0;k=t+40|0;j=t+36|0;p=t+32|0;o=t+28|0;h=t+24|0;
n=t+20|0;l=t+16|0;q=t+12|0;m=t+8|0;r=t+4|0;s=t;c[g>>2]=d;c[k>>2]=c[(c[g>>2]|0)+12>>2];c[
j>>2]=0;c[p>>2]=(c[k>>2]|0)+56;c[o>>2]=b[(c[p>>2]|0)+2>>1];d=(c[(c[p
>>2]|0)+4>>2]|0)+(c[o>>2]<<3)|0;u=(c[g>>2]|0)+68|0;c[d>>2]=c[u>
x3e;2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)+1<<
;3)|0;u=(c[g>>2]|0)+76|0;c[d>>2]=c[u>>2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>
x3e;2]|0)+4>>2]|0)+((c[o>>2]|0)+2<<3)|0;u=(c[g>>2]|0)+184|0;c[d>>2]=c[u>
x3e;2];c[d+4>>2]=c[u+4>>2];d=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)+3<<
;3)|0;u=(c[g>>2]|0)+192|0;c[d>>2]=c[u>>2];c[d+4>>2]=c[u+4>>2];a[(c[(c[p>
x3e;2]|0)+8>>2]|0)+(c[o>>2]|0)>>0]=0;a[(c[(c[p>>2]|0)+8>>2]|0)+((c[o>>
;2]|0)+1)>>0]=0;a[(c[(c[p>>2]|0)+8>>2]|0)+((c[o>>2]|0)+2)>>0]=0;a[(c[(c[p>
;>2]|0)+8>>2]|0)+((c[o>>2]|0)+3)>>0]=0;c[o>>2]=(c[o>>2]|0)+4;if(a[(c[c[g
x3e;>2]>>2]|0)+708>>0]|0){c[n>>2]=c[(c[c[g>>2]>>2]|0)+100>>2];c
[j>>2]=fh(c[c[g>>2]>>2]|0,c[(c[g>>2]|0)+20>>2]|0,h,c[o>>2]|0)|0;if(c
[j>>2]|0){c[f>>2]=c[j>>2];u=c[f>>2]|0;i=t;return u|0}c[l>>2]=0;while(1){if((c[
l>>2]|0)>=(c[o>>2]|0))break;u=(c[(c[p>>2]|0)+4>>2]|0)+(c[l>>2]<<
;3)|0;c[u>>2]=(c[u>>2]|0)+(c[(c[h>>2]|0)+(c[l>>2]<<3)>>2]|0);u=(c[(c
[p>>2]|0)+4>>2]|0)+(c[l>>2]<<3)+4|0;c[u>>2]=(c[u>>2]|0)+(c[(c[h>
;>2]|0)+(c[l>>2]<<3)+4>>2]|0);c[l>>2]=(c[l>>2]|0)+1}Fb(c[n>>2]|
0,c[h>>2]|0);c[h>>2]=0}if(!(c[(c[g>>2]|0)+16>>2]&2)){hh((c[g>>2]|0)+124|0
,(c[k>>2]|0)+56|0,0,0);Ss(c[(c[g>>2]|0)+124+20>>2]|0,c[(c[g>>2]|0)+124+16>>2]|
0,(e[(c[g>>2]|0)+124+8>>1]|0)+4<<3|0)|0}if(!(c[(c[g>>2]|0)+16>>2]&1)){c[q
>>2]=c[(c[p>>2]|0)+4>>2];c[m>>2]=(c[(c[p>>2]|0)+4>>2]|0)+(c[o>
x3e;2]<<3);c[r>>2]=c[(c[(c[g>>2]|0)+4>>2]|0)+44+4>>2];c[s>>2]=c[(c[(
c[g>>2]|0)+4>>2]|0)+44+8>>2];while(1){if((c[q>>2]|0)>>>0>=(c[m>
x3e;2]|0)>>>0)break;u=Mb(c[c[q>>2]>>2]|0,c[r>>2]|0)|0;c[c[q>>2]>>
;2]=u;u=Mb(c[(c[q>>2]|0)+4>>2]|0,c[s>>2]|0)|0;c[(c[q>>2]|0)+4>>2]=u;c[q>
x3e;2]=(c[q>>2]|0)+8}u=(c[g>>2]|0)+68|0;s=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-
4<<3)|0;c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];u=(c[g>>2]|0)+76|0;s=(c[(
c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-3<<3)|0;c[u>>2]=c[s>>2];c[u+4>
x3e;2]=c[s+4>>2];u=(c[g>>2]|0)+184|0;s=(c[(c[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-2
x3c;<3)|0;c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];u=(c[g>>2]|0)+192|0;s=(c[(c
[p>>2]|0)+4>>2]|0)+((c[o>>2]|0)-1<<3)|0;c[u>>2]=c[s>>2];c[u+4>
x3e;2]=c[s+4>>2]}if(!(c[(c[g>>2]|0)+16>>2]&2)){u=(c[g>>2]|0)+124+8|0;b[u>>
;1]=(e[u>>1]|0)+4;c[j>>2]=ih(c[g>>2]|0,0)|0}c[f>>2]=c[j>>2];u=c[f>>2
]|0;i=t;return u|0}function hh(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;l=g+8|0;j=g+4|0;k=
g;c[h>>2]=a;c[l>>2]=d;c[j>>2]=e;c[k>>2]=f;b[(c[h>>2]|0)+8>>1]=(b[(c[
l>>2]|0)+2>>1]|0)-(c[j>>2]|0);b[(c[h>>2]|0)+10>>1]=(b[c[l>>2]>
x3e;1]|0)-(c[k>>2]|0);c[(c[h>>2]|0)+12>>2]=(c[(c[l>>2]|0)+20>>2]|0)+(c[j>
x3e;2]<<3);c[(c[h>>2]|0)+16>>2]=(c[(c[l>>2]|0)+4>>2]|0)+(c[j>>2]<
;<3);c[(c[h>>2]|0)+20>>2]=(c[(c[l>>2]|0)+24>>2]|0)+(c[j>>2]<<3);
c[(c[h>>2]|0)+24>>2]=(c[(c[l>>2]|0)+8>>2]|0)+(c[j>>2]|0);c[(c[h>>2]|
0)+28>>2]=(c[(c[l>>2]|0)+12>>2]|0)+(c[k>>2]<<1);b[(c[h>>2]|0)+32>
;>1]=c[j>>2];i=g;return}function ih(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,q=0,r=0;r=i;i=i+64|0
;l=r+44|0;m=r+40|0;h=r+49|0;q=r+36|0;g=r+32|0;k=r+28|0;o=r+48|0;p=r+24|0;j=r+20|0;n=r;c[m>>2]=b;a[h>>0]=f;c[
q>>2]=(c[m>>2]|0)+124;c[k>>2]=c[(c[(c[m>>2]|0)+8>>2]|0)+140>>2];c[g
x3e;>2]=c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-4<<3)>
x3e;2];c[g>>2]=((c[g>>2]|0)+32&-64)-(c[g>>2]|0);if(c[g>>2]|0)jh(e[(c[q>>2
]|0)+8>>1]|0,c[(c[q>>2]|0)+16>>2]|0,c[g>>2]|0,0);if((c[k>>2]|0)>>>
;0>0)Ss(c[(c[q>>2]|0)+12>>2]|0,c[(c[q>>2]|0)+16>>2]|0,e[(c[q>>2]|0)+8>
;>1]<<3|0)|0;f=(c[(c[m>>2]|0)+160>>2]|0)+284|0;b=(c[(c[m>>2]|0)+4>>2]|0)+
172|0;g=f+68|0;do{c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0}while((f|0)<(g|0));f=c[m>>2]|0;if(a[h>
x3e;0]|0){c[(c[f+160>>2]|0)+216+4>>2]=65536;c[(c[(c[m>>2]|0)+160>>2]|0)+216+8>>
;2]=65536;Ss(c[(c[q>>2]|0)+20>>2]|0,c[(c[q>>2]|0)+16>>2]|0,e[(c[q>>2]|0)+8>
;>1]<<3|0)|0}else{c[(c[(c[m>>2]|0)+160>>2]|0)+216+4>>2]=c[(c[f+4>>2]|0)+44
+4>>2];c[(c[(c[m>>2]|0)+160>>2]|0)+216+8>>2]=c[(c[(c[m>>2]|0)+4>>2]|
0)+44+8>>2]}c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-3<<3
)>>2]=(c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-3<<3)>
;>2]|0)+32&-64;c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<
;3)+4>>2]=(c[(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<3)+
4>>2]|0)+32&-64;if((c[k>>2]|0)>>>0>0){c[j>>2]=c[(c[m>>2]|0)+12
x3e;>2];j=(c[j>>2]|0)+56|0;c[n>>2]=c[j>>2];c[n+4>>2]=c[j+4>>2];c[n+8>
;>2]=c[j+8>>2];c[n+12>>2]=c[j+12>>2];c[n+16>>2]=c[j+16>>2];c[p>>
;2]=Xg(c[(c[m>>2]|0)+160>>2]|0,3,c[(c[(c[m>>2]|0)+160>>2]|0)+392>>2]|0,c[k>
;>2]|0)|0;if(c[p>>2]|0){c[l>>2]=c[p>>2];q=c[l>>2]|0;i=r;return q|0}a[(c[(c[m>
x3e;2]|0)+160>>2]|0)+560>>0]=a[h>>0]|0;f=(c[(c[m>>2]|0)+160>>2]|0)+144|0;b=c[q
>>2]|0;g=f+36|0;do{c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0}while((f|0)<(g|0));if(c[(c[m>>2]|
0)+16>>2]&1|0)f=0;else f=(d[(c[(c[m>>2]|0)+4>>2]|0)+292>>0]|0)!=0;a[o>>0]=
f&1;c[p>>2]=kh(c[(c[m>>2]|0)+160>>2]|0,a[o>>0]|0)|0;if(c[p>>2]|0?d[(c[(c[
m>>2]|0)+160>>2]|0)+561>>0]|0:0){c[l>>2]=c[p>>2];q=c[l>>2]|0;i=r;return
q|0}p=c[n+8>>2]|0;a[p>>0]=a[p>>0]|(c[(c[(c[m>>2]|0)+160>>2]|0)+284+56>
x3e;2]<<5|4)}if(!(a[(c[m>>2]|0)+65>>0]|0)){p=(c[m>>2]|0)+68|0;o=(c[(c[q>>2]|0)+
16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-4<<3)|0;c[p>>2]=c[o>>2];c[p+4>
;>2]=c[o+4>>2];p=(c[m>>2]|0)+76|0;o=(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|
0)+8>>1]|0)-3<<3)|0;c[p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];p=(c[m>
x3e;2]|0)+184|0;o=(c[(c[q>>2]|0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-2<<3)|0;c[
p>>2]=c[o>>2];c[p+4>>2]=c[o+4>>2];p=(c[m>>2]|0)+192|0;q=(c[(c[q>>2]|
0)+16>>2]|0)+((e[(c[q>>2]|0)+8>>1]|0)-1<<3)|0;c[p>>2]=c[q>>2];c[p+4
x3e;>2]=c[q+4>>2]}c[l>>2]=0;q=c[l>>2]|0;i=r;return q|0}function jh(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;l=i;i=i+32|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[f>>2]=a;c[g>>2]=b;c[
h>>2]=d;c[j>>2]=e;a:do if(c[h>>2]|0){c[k>>2]=0;while(1){if((c[k>>2]|0)>
x3e;>0>=(c[f>>2]|0)>>>0)break a;a=(c[g>>2]|0)+(c[k>>2]<<3)|0;c[
a>>2]=(c[a>>2]|0)+(c[h>>2]|0);c[k>>2]=(c[k>>2]|0)+1}}while(0);if(!(c[j>
x3e;2]|0)){i=l;return}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=(c[f>>2]|0)>
x3e;>0)break;a=(c[g>>2]|0)+(c[k>>2]<<3)+4|0;c[a>>2]=(c[a>>2]|0)+(c[j>
;>2]|0);c[k>>2]=(c[k>>2]|0)+1}i=l;return}function kh(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16
|0;g=k+8|0;h=k+4|0;j=k+12|0;f=k;c[h>>2]=d;a[j>>0]=e;d=Zg(c[h>>2]|0,3,0)|0;c[f>>2]=d;if(d
|0){c[g>>2]=c[f>>2];j=c[g>>2]|0;i=k;return j|0}else{e=(c[h>>2]|0)+36|0;f=(c[h>>
;2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(d|0));e=(c[h>>2]|0)+72|
0;f=(c[h>>2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)<(d|0));e=(c[h
x3e;>2]|0)+108|0;f=(c[h>>2]|0)+144|0;d=e+36|0;do{c[e>>2]=c[f>>2];e=e+4|0;f=f+4|0}while((e|0)
x3c;(d|0));b[(c[h>>2]|0)+284+60>>1]=1;b[(c[h>>2]|0)+284+62>>1]=1;b[(c[h>>2]|0)+
284+64>>1]=1;b[(c[h>>2]|0)+284+10>>1]=16384;b[(c[h>>2]|0)+284+10+2>>1]=0;d=(c[
h>>2]|0)+284+14|0;f=(c[h>>2]|0)+284+10|0;b[d>>1]=b[f>>1]|0;b[d+2>>1]=b[f+2>
;>1]|0;d=(c[h>>2]|0)+284+6|0;f=(c[h>>2]|0)+284+10|0;b[d>>1]=b[f>>1]|0;b[d+2>
x3e;1]=b[f+2>>1]|0;c[(c[h>>2]|0)+284+28>>2]=1;c[(c[h>>2]|0)+284+20>>2]=1;c[(c[
h>>2]|0)+16>>2]=0;c[(c[h>>2]|0)+428>>2]=0;a[j>>0]=a[j>>0]|0;c[g>
;>2]=Ta[c[(c[c[h>>2]>>2]|0)+688>>2]&63](c[h>>2]|0)|0;j=c[g>>2]|0;i=k
;return j|0}return 0}function lh(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;E=i;i=i+80|0;l=E+72|0;m=E+68|0;n=E+64|0;o=E+60|0;p=E+56|0;r=E+52|0;q=E+48|0;x=E+44|0;s=E+76|0;A=E+40|0
;C=E+36|0;k=E+32|0;t=E+28|0;u=E+24|0;y=E+20|0;z=E+16|0;v=E+12|0;w=E+8|0;B=E+4|0;D=E;c[m>>2]=f;c[n>>2]=g;c[o
x3e;>2]=h;c[p>>2]=j;c[r>>2]=c[(c[m>>2]|0)+12>>2];c[q>>2]=c[(c[r>>
;2]|0)+20+4>>2];c[x>>2]=b[(c[r>>2]|0)+20+2>>1];a[s>>0]=e[(c[n>>2]|0)+
4>>1]&200;a:do if(a[s>>0]|0){c[k>>2]=c[p>>2];while(1){if((c[k>>2]|0)>
;>>0>=(c[x>>2]|0)>>>0)break a;Lb((c[q>>2]|0)+(c[k>>2]<<3)|
0,(c[n>>2]|0)+16|0);c[k>>2]=(c[k>>2]|0)+1}}while(0);k=c[(c[n>>2]|0)+8>>2]|0;do
if(e[(c[n>>2]|0)+4>>1]&2|0){c[A>>2]=k;c[C>>2]=c[(c[n>>2]|0)+12>>
;2];if(!((c[A>>2]|0)!=0|(c[C>>2]|0)!=0)){c[l>>2]=0;D=c[l>>2]|0;i=E;return D|0}if(d[s>
;>0]|0?e[(c[n>>2]|0)+4>>1]&2048|0:0){z=Mb(c[(c[n>>2]|0)+16>>2]|0,c[(c[n>
x3e;2]|0)+16>>2]|0)|0;c[v>>2]=Zb(z+(Mb(c[(c[n>>2]|0)+16+4>>2]|0,c[(c[n>>2]|0)+
16+4>>2]|0)|0)|0)|0;z=Mb(c[(c[n>>2]|0)+16+12>>2]|0,c[(c[n>>2]|0)+16+12>>2]|0)|
0;c[w>>2]=Zb(z+(Mb(c[(c[n>>2]|0)+16+8>>2]|0,c[(c[n>>2]|0)+16+8>>2]|0)|0)|0)|0;
c[A>>2]=Mb(c[A>>2]|0,c[v>>2]|0)|0;c[C>>2]=Mb(c[C>>2]|0,c[w>>2]|0)|0}
if((c[(c[m>>2]|0)+16>>2]&1|0)==0?(c[B>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+44+4
x3e;>2],c[D>>2]=c[(c[(c[m>>2]|0)+4>>2]|0)+44+8>>2],c[A>>2]=Mb(c[A>
x3e;2]|0,c[B>>2]|0)|0,c[C>>2]=Mb(c[C>>2]|0,c[D>>2]|0)|0,e[(c[n>>2]|0)+4>
x3e;1]&4|0):0){c[A>>2]=(c[A>>2]|0)+32&-64;c[C>>2]=(c[C>>2]|0)+32&-64}}else
{c[t>>2]=k;c[u>>2]=c[(c[n>>2]|0)+12>>2];c[t>>2]=(c[t>>2]|0)+(c[o>
;>2]|0);c[u>>2]=(c[u>>2]|0)+(c[p>>2]|0);if((c[t>>2]|0)>>>0<(c[p
>>2]|0)>>>0?(c[u>>2]|0)>>>0<(c[x>>2]|0)>>>0:0){c
[y>>2]=(c[(c[r>>2]|0)+20+4>>2]|0)+(c[t>>2]<<3);c[z>>2]=(c[(c[r>
x3e;2]|0)+20+4>>2]|0)+(c[u>>2]<<3);c[A>>2]=(c[c[y>>2]>>2]|0)-(c[c[z
x3e;>2]>>2]|0);c[C>>2]=(c[(c[y>>2]|0)+4>>2]|0)-(c[(c[z>>2]|0)+4>>
;2]|0);break}c[l>>2]=21;D=c[l>>2]|0;i=E;return D|0}while(0);if((c[A>>2]|0)!=0|(c[C>>2]|0
)!=0)jh((c[x>>2]|0)-(c[p>>2]|0)|0,(c[q>>2]|0)+(c[p>>2]<<3)|0,c[A>>2]|
0,c[C>>2]|0);c[l>>2]=0;D=c[l>>2]|0;i=E;return D|0}function mh(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;u=i;i=i+48|0;k=u+32|0;l=u+28|0;m=u+24|0;n=u+20|0;o=u+16|0;j=u+12|0;p=u+8|0;s=u+4|0;r=u+
38|0;q=u+36|0;t=u;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[j>>2]=(c[(c[l>>2]|0)+12>
;>2]|0)+20;if(((b[(c[j>>2]|0)+2>>1]|0)+4|0)!=0?((b[(c[(c[l>>2]|0)+12>>2]|0)+20+2>
;>1]|0)+(b[(c[(c[l>>2]|0)+12>>2]|0)+56+2>>1]|0)+((b[(c[j>>2]|0)+2>>1]|0)+
4)|0)>>>0>(c[(c[(c[l>>2]|0)+12>>2]|0)+4>>2]|0)>>>0:0)f=kc(c[(c[
l>>2]|0)+12>>2]|0,(b[(c[j>>2]|0)+2>>1]|0)+4|0,0)|0;else f=0;c[o>>2]=f;if(c[o
x3e;>2]|0){c[k>>2]=c[o>>2];t=c[k>>2]|0;i=u;return t|0}g=(c[(c[j>>2]|0)+4>>
;2]|0)+(b[(c[j>>2]|0)+2>>1]<<3)|0;h=(c[l>>2]|0)+68|0;c[g>>2]=c[h>>2];
c[g+4>>2]=c[h+4>>2];g=(c[(c[j>>2]|0)+4>>2]|0)+((b[(c[j>>2]|0)+2>>1]|
0)+1<<3)|0;h=(c[l>>2]|0)+76|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];g=(
c[(c[j>>2]|0)+4>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+2<<3)|0;h=(c[l>>2]|0
)+184|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];g=(c[(c[j>>2]|0)+4>>2]|0
)+((b[(c[j>>2]|0)+2>>1]|0)+3<<3)|0;h=(c[l>>2]|0)+192|0;c[g>>2]=c[h>>
2];c[g+4>>2]=c[h+4>>2];a[(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>>2]|0)+2>>1
]|0)>>0]=0;a[(c[(c[j>>2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+1)>>0]=
0;a[(c[(c[j>>2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+2)>>0]=0;a[(c[(c[j>
x3e;2]|0)+8>>2]|0)+((b[(c[j>>2]|0)+2>>1]|0)+3)>>0]=0;c[s>>2]=c[(c[l>>
;2]|0)+24>>2];j=Kc(c[s>>2]|0,c[(c[l>>2]|0)+168>>2]|0)|0;c[o>>2]=j;if((j|0)==0?(
b[r>>1]=Pc(c[s>>2]|0,o)|0,(c[o>>2]|0)==0):0){b[q>>1]=b[(c[c[l>>2]>>2
]|0)+260+26>>1]|0;f=e[r>>1]|0;if((e[r>>1]|0)>(e[q>>1]|0)){if((f|0)>(c[(c[l>
;>2]|0)+28>>2]|0)){c[k>>2]=22;t=c[k>>2]|0;i=u;return t|0}c[t>>2]=c[(c[(c[l>>
;2]|0)+160>>2]|0)+388>>2];c[o>>2]=Wg(c[(c[(c[l>>2]|0)+160>>2]|0)+8>>
2]|0,t,1,(c[(c[l>>2]|0)+160>>2]|0)+392|0,e[r>>1]|0)|0;c[(c[(c[l>>2]|0)+160>>2]|
0)+388>>2]=c[t>>2]&65535;if(c[o>>2]|0){c[k>>2]=c[o>>2];t=c[k>>2
]|0;i=u;return t|0}}else if(!f){c[k>>2]=0;t=c[k>>2]|0;i=u;return t|0}t=Rc(c[s>>2]|0,c[(c[(c[l>
;>2]|0)+160>>2]|0)+392>>2]|0,e[r>>1]|0)|0;c[o>>2]=t;if(t|0){c[k>>2]=c[o
x3e;>2];t=c[k>>2]|0;i=u;return t|0}c[(c[(c[l>>2]|0)+8>>2]|0)+136>>2]=c[(c[(c[l>
;>2]|0)+160>>2]|0)+392>>2];c[(c[(c[l>>2]|0)+8>>2]|0)+140>>2]=e[r>>
;1];hh((c[l>>2]|0)+124|0,(c[(c[l>>2]|0)+12>>2]|0)+20|0,c[m>>2]|0,c[n>>2]|0);c[
p>>2]=c[m>>2];while(1){if((c[p>>2]|0)>>>0>=(e[(c[l>>2]|0)+124+8>
;>1]|0)>>>0)break;t=(c[(c[l>>2]|0)+124+24>>2]|0)+(c[p>>2]|0)|0;a[t>>
0]=d[t>>0]&-25;c[p>>2]=(c[p>>2]|0)+1}t=(c[l>>2]|0)+124+8|0;b[t>>1]=(e[t
x3e;>1]|0)+4;c[k>>2]=ih(c[l>>2]|0,1)|0;t=c[k>>2]|0;i=u;return t|0}c[k>>2]=c[o>
x3e;2];t=c[k>>2]|0;i=u;return t|0}function nh(a,f){a=a|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;y=i;i=i+96|0;m=y+88|0;n=y+84|0;o=y+80|0;h=y+64|0;r=y+60|0;x=y+56|0;s=y+52|0;j=y+48|0;g=y+44|0;k=y+40|0;w=y+
36|0;p=y+32|0;t=y+28|0;u=y+24|0;v=y+8|0;q=y;c[n>>2]=a;c[o>>2]=f;c[r>>2]=c[c[n>>2]>
x3e;2];c[s>>2]=c[(c[n>>2]|0)+8>>2];c[j>>2]=c[(c[n>>2]|0)+4>>2];c[x
x3e;>2]=65536;if(!(c[(c[n>>2]|0)+16>>2]&1))c[x>>2]=c[(c[j>>2]|0)+12+8>>
;2];if((c[(c[s>>2]|0)+72>>2]|0)!=1668246896)_d((c[s>>2]|0)+108|0,h);else{a=(c[n>>2]|0)+36
|0;c[h>>2]=c[a>>2];c[h+4>>2]=c[a+4>>2];c[h+8>>2]=c[a+8>>2];c[h+12>
;>2]=c[a+12>>2]}c[g>>2]=c[(c[n>>2]|0)+60>>2];if(c[(c[r>>2]|0)+468+12>
;>2]|0?(c[(c[n>>2]|0)+16>>2]&512|0)==0:0)c[g>>2]=e[(c[r>>2]|0)+216+10>>
;1];c[(c[s>>2]|0)+56>>2]=c[g>>2];c[(c[s>>2]|0)+24+8>>2]=c[h>>2];c[(c
[s>>2]|0)+24+12>>2]=c[h+12>>2];c[(c[s>>2]|0)+24+16>>2]=(c[(c[n>>2]|0
)+76>>2]|0)-(c[(c[n>>2]|0)+68>>2]|0);if(((c[(c[r>>2]|0)+468+12>>2]|0)==0?(c[(c
[n>>2]|0)+16>>2]&2|0)==0:0)?(c[k>>2]=oh(c[r>>2]|0,e[(c[j>>2]|0)+12>
x3e;1]|0,c[o>>2]|0)|0,c[k>>2]|0):0)c[(c[s>>2]|0)+24+16>>2]=d[c[k>>2]>>
;0]<<6;c[(c[s>>2]|0)+24>>2]=(c[h+8>>2]|0)-(c[h>>2]|0);c[(c[s>>2]|0)+
24+4>>2]=(c[h+12>>2]|0)-(c[h+4>>2]|0);do if(d[(c[r>>2]|0)+296>>0]|0?(e[(c[r>
;>2]|0)+300+34>>1]|0)>0:0){c[w>>2]=((Vb((c[(c[n>>2]|0)+184+4>>2]|0)-(c[h+12>
;>2]|0)|0,c[x>>2]|0)|0)&65535)<<16>>16;if((c[(c[n>>2]|0)+184+4>>2]|0
)<=(c[(c[n>>2]|0)+192+4>>2]|0)){c[p>>2]=0;break}else{c[p>>2]=(Vb((c[(c[n>>
;2]|0)+184+4>>2]|0)-(c[(c[n>>2]|0)+192+4>>2]|0)|0,c[x>>2]|0)|0)&65535;break}}else l
=18;while(0);if((l|0)==18){c[t>>2]=((Vb((c[h+12>>2]|0)-(c[h+4>>2]|0)|0,c[x>>2]|0)|0)&
;65535)<<16>>16;g=c[r>>2]|0;if((e[(c[r>>2]|0)+368>>1]|0)!=65535)c[p>>
;2]=(b[g+368+70>>1]|0)-(b[(c[r>>2]|0)+368+72>>1]|0);else c[p>>2]=(b[g+216+4>>1
]|0)-(b[(c[r>>2]|0)+216+6>>1]|0);c[w>>2]=((c[p>>2]|0)-(c[t>>2]|0)|0)/2|0}c[u
x3e;>2]=c[(c[(c[r>>2]|0)+128>>2]|0)+52>>2];do if(c[u>>2]|0?c[(c[c[u>>2]
x3e;>2]|0)+8>>2]|0:0){c[v>>2]=0;c[v+4>>2]=c[w>>2];c[v+8>>2]=c[p>>
;2];c[q>>2]=Wa[c[(c[c[u>>2]>>2]|0)+8>>2]&31](c[(c[u>>2]|0)+4>>2
]|0,c[o>>2]|0,1,v)|0;if(!(c[q>>2]|0)){c[w>>2]=c[v+4>>2];c[p>>2]=c[v+8>>
;2];break}c[m>>2]=c[q>>2];x=c[m>>2]|0;i=y;return x|0}while(0);c[(c[s>>2]|0)+60>>
;2]=c[p>>2];if(!(c[(c[n>>2]|0)+16>>2]&1)){c[w>>2]=Mb(c[w>>2]|0,c[x>
x3e;2]|0)|0;c[p>>2]=Mb(c[p>>2]|0,c[x>>2]|0)|0}c[(c[s>>2]|0)+24+20>>2]=(c[(c[s
x3e;>2]|0)+24+8>>2]|0)-((c[(c[s>>2]|0)+24+16>>2]|0)/2|0);c[(c[s>>2]|0)+24+24>
x3e;2]=c[w>>2];c[(c[s>>2]|0)+24+28>>2]=c[p>>2];c[m>>2]=0;x=c[m>>2]|0
;i=y;return x|0}function oh(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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;h=o+
16|0;j=o+12|0;m=o+8|0;l=o+4|0;k=o;c[f>>2]=a;c[g>>2]=b;c[h>>2]=e;c[m>>2]=0;c[l>>
;2]=c[(c[f>>2]|0)+752>>2];c[k>>2]=(c[(c[f>>2]|0)+740>>2]|0)+8;c[j>>2
]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[f>>2]|0)+748>>2]|0)>>>0){
n=7;break}if((d[(c[(c[f>>2]|0)+756>>2]|0)+(c[j>>2]|0)>>0]|0|0)==(c[g>>2]|0))break
;c[j>>2]=(c[j>>2]|0)+1}if((n|0)==7){n=c[m>>2]|0;i=o;return n|0}c[h>>2]=(c[h>>2
]|0)+2;if((c[h>>2]|0)>>>0>=(c[l>>2]|0)>>>0){n=c[m>>2]|0;i=o;return
n|0}n=(c[k>>2]|0)+(_(c[j>>2]|0,c[l>>2]|0)|0)|0;c[m>>2]=n+(c[h>>2]|0);n=c[m>
;>2]|0;i=o;return n|0}function ph(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;l=i;i=i+32|0;m=l+20|0;f=
l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>
;2]=c[m>>2];c[k>>2]=c[(c[j>>2]|0)+532>>2];c[c[h>>2]>>2]=0;c[(c[h>
;>2]|0)+4>>2]=0;if(!(c[k>>2]|0)){i=l;return 0}m=Oa[c[(c[k>>2]|0)+128>>2]&63](c
[j>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;c[c[h>>2]>>2]=m;i=l;return 0}function qh(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,s=0,t=0,u=0,v=0;t=i;i=i+48|0;v=t+24|0;j=t+20|0;k=t+16
|0;u=t+12|0;l=t+8|0;r=t+4|0;p=t;o=t+36|0;s=t+34|0;m=t+32|0;q=t+30|0;n=t+28|0;c[v>>2]=b;c[j>>2]=d;c[k>
x3e;2]=f;c[u>>2]=g;c[l>>2]=h;c[p>>2]=c[v>>2];a[o>>0]=((c[u>>2]&
512|0)!=0^1)&1;b=(c[u>>2]&16|0)!=0;c[r>>2]=0;if(b){while(1){if((c[r>>2]|0)>>
x3e;0>=(c[k>>2]|0)>>>0)break;dh(c[p>>2]|0,(c[j>>2]|0)+(c[r>>2]|0)|0,
a[o>>0]|0,s,m);c[(c[l>>2]|0)+(c[r>>2]<<2)>>2]=e[m>>1];c[r>>
;2]=(c[r>>2]|0)+1}i=t;return 0}else{while(1){if((c[r>>2]|0)>>>0>=(c[k>>2]|0)
x3e;>>0)break;ch(c[p>>2]|0,(c[j>>2]|0)+(c[r>>2]|0)|0,a[o>>0]|0,q,n);c[(c[l>
;>2]|0)+(c[r>>2]<<2)>>2]=e[n>>1];c[r>>2]=(c[r>>2]|0)+1}i=t;return
0}return 0}function rh(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;m=i;i=i+32|0;d=m+28|0;e=m+24|0;f=m+20|0;l=m+16|
0;g=m+12|0;k=m+8|0;h=m+4|0;j=m;c[e>>2]=a;c[f>>2]=b;c[l>>2]=c[e>>2];c[g>>2]=0;do
if(c[(c[c[e>>2]>>2]|0)+8>>2]&2|0){c[k>>2]=c[c[e>>2]>>2];c[h>
;>2]=c[(c[k>>2]|0)+532>>2];c[g>>2]=Oa[c[(c[h>>2]|0)+148>>2]&63](c[k
x3e;>2]|0,c[f>>2]|0,j)|0;if(c[g>>2]|0){c[(c[l>>2]|0)+112>>2]=-1;break}c[d>>
;2]=sh(c[e>>2]|0,c[j>>2]|0)|0;l=c[d>>2]|0;i=m;return l|0}while(0);Ed(c[c[e>>2]>>
;2]|0,c[f>>2]|0);if(c[(c[c[e>>2]>>2]|0)+8>>2]&1|0)c[g>>2]=th(c[l>>
;2]|0)|0;c[d>>2]=c[g>>2];l=c[d>>2]|0;i=m;return l|0}function sh(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;l=i;i=i+32|0;d=l+24|0;e=l+20|0;j=l+16|0;k=l+12|0;f=l+8|0;h=l+4|0;g=l;c[d>>2]=a;c[e>>2]=b;
c[j>>2]=c[c[d>>2]>>2];c[k>>2]=c[d>>2];c[f>>2]=0;c[(c[k>>2]|
0)+112>>2]=c[e>>2];if(c[(c[c[d>>2]>>2]|0)+8>>2]&1|0){Cd(c[c[d>>
2]>>2]|0,c[e>>2]|0);th(c[k>>2]|0)|0;k=c[f>>2]|0;i=l;return k|0}c[h>>2]=c[(c[j
x3e;>2]|0)+532>>2];c[g>>2]=(c[d>>2]|0)+12;c[f>>2]=Oa[c[(c[h>>2]|0)+152>
;>2]&63](c[j>>2]|0,c[e>>2]|0,c[g>>2]|0)|0;if(!(c[f>>2]|0)){k=c[f>>2]|
0;i=l;return k|0}c[(c[k>>2]|0)+112>>2]=-1;k=c[f>>2]|0;i=l;return k|0}function th(d){d=d|0;var f=0,
g=0,h=0,j=0,k=0,l=0,m=0;l=i;i=i+32|0;g=l+16|0;h=l+12|0;f=l+8|0;j=l+4|0;k=l;c[h>>2]=d;c[j>>2]=0;a[(c[h>
x3e;2]|0)+72+36>>0]=0;c[f>>2]=c[c[h>>2]>>2];c[k>>2]=(c[h>>2]|0)+44;d
=c[k>>2]|0;m=(c[h>>2]|0)+12|0;c[d>>2]=c[m>>2];c[d+4>>2]=c[m+4>>2];c[
d+8>>2]=c[m+8>>2];c[d+12>>2]=c[m+12>>2];c[d+16>>2]=c[m+16>>2];c[d+20
>>2]=c[m+20>>2];c[d+24>>2]=c[m+24>>2];if((e[c[k>>2]>>1]|0)>=1?(
e[(c[k>>2]|0)+2>>1]|0)>=1:0){if(e[(c[f>>2]|0)+160+16>>1]&8|0){m=Vb(e[c[k>
x3e;2]>>1]<<6,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[k>>2]|0)+4>>2]=m;m=Vb(e
[(c[k>>2]|0)+2>>1]<<6,e[(c[f>>2]|0)+68>>1]|0)|0;c[(c[k>>2]|0)+8>
;>2]=m;m=(Mb(b[(c[f>>2]|0)+70>>1]|0,c[(c[k>>2]|0)+8>>2]|0)|0)+32&-64;c[(c[k>
;>2]|0)+12>>2]=m;m=(Mb(b[(c[f>>2]|0)+72>>1]|0,c[(c[k>>2]|0)+8>>2]|0)|0)+32
&-64;c[(c[k>>2]|0)+16>>2]=m;m=(Mb(b[(c[f>>2]|0)+74>>1]|0,c[(c[k>>2]|0)+8
x3e;>2]|0)|0)+32&-64;c[(c[k>>2]|0)+20>>2]=m;m=(Mb(b[(c[f>>2]|0)+76>>1]|0,c[(c[
k>>2]|0)+4>>2]|0)|0)+32&-64;c[(c[k>>2]|0)+24>>2]=m}f=c[k>>2]|0;if((e[c[k
x3e;>2]>>1]|0)>=(e[(c[k>>2]|0)+2>>1]|0)){c[(c[h>>2]|0)+72+16>>2]=c[f
+4>>2];b[(c[h>>2]|0)+72+8>>1]=b[c[k>>2]>>1]|0;c[(c[h>>2]|0)+72>
x3e;2]=65536;m=xb(e[(c[k>>2]|0)+2>>1]|0,65536,e[c[k>>2]>>1]|0)|0;c[(c[h>>2]|0)+
72+4>>2]=m}else{c[(c[h>>2]|0)+72+16>>2]=c[f+8>>2];b[(c[h>>2]|0)+72+8>>
;1]=b[(c[k>>2]|0)+2>>1]|0;m=xb(e[c[k>>2]>>1]|0,65536,e[(c[k>>2]|0)+2>>
;1]|0)|0;c[(c[h>>2]|0)+72>>2]=m;c[(c[h>>2]|0)+72+4>>2]=65536}a[(c[h>>2]|0)+301
>>0]=0;if(!(c[j>>2]|0))a[(c[h>>2]|0)+72+36>>0]=1;c[g>>2]=c[j>>2];m=c
[g>>2]|0;i=l;return m|0}c[g>>2]=151;m=c[g>>2]|0;i=l;return m|0}function uh(a){a=a|0;var b=0,d=0;b=
i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return 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[d>>2]=c[d>>2];i=b;return}function wh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=
0;j=i;i=i+32|0;h=j+16|0;d=j+12|0;e=j+8|0;g=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=qc(740,c[e>
x3e;2]|0)|0;if(c[f>>2]|0){c[h>>2]=c[f>>2];h=c[h>>2]|0;i=j;return h|0}if(!(c[d>>
;2]|0)){c[h>>2]=0;h=c[h>>2]|0;i=j;return h|0}c[g>>2]=Wc(c[(c[d>>2]|0)+4>>2]|0,
11340)|0;if(c[g>>2]|0)d=Ya[c[(c[c[g>>2]>>2]|0)+32>>2]&127](c[g>>2]|0,c[e
x3e;>2]|0)|0;else d=0;c[h>>2]=d;h=c[h>>2]|0;i=j;return h|0}function xh(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;k=n+12|0;j=n+8|0;l=n+4|0;m=n;c[f>>2]=d;c[g>>2]=
e;c[h>>2]=c[(c[f>>2]|0)+692>>2];c[k>>2]=0;do if(c[h>>2]|0?(c[(c[h>>2
]|0)+2060>>2]|0)==0:0){c[j>>2]=(c[h>>2]|0)+1324;c[m>>2]=c[(c[f>>2]|0)+100>
;>2];c[l>>2]=bc(c[m>>2]|0,32,k)|0;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}else{m=yh
(c[h>>2]|0,c[c[j>>2]>>2]|0)|0;c[c[l>>2]>>2]=m;m=yh(c[h>>2]|0,c[(c[j
x3e;>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+4>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+
12>>2]|0)|0;c[(c[l>>2]|0)+8>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+16>>2
]|0)|0;c[(c[l>>2]|0)+12>>2]=m;m=yh(c[h>>2]|0,c[(c[j>>2]|0)+20>>2]|0)|0;c[(c[l
x3e;>2]|0)+16>>2]=m;c[(c[l>>2]|0)+20>>2]=c[(c[j>>2]|0)+28>>2];a[(c[l>
;>2]|0)+24>>0]=a[(c[j>>2]|0)+24>>0]|0;b[(c[l>>2]|0)+26>>1]=c[(c[j>
x3e;2]|0)+32>>2];b[(c[l>>2]|0)+28>>1]=c[(c[j>>2]|0)+36>>2];c[(c[h>>2
]|0)+2060>>2]=c[l>>2];break}}while(0);if(!(c[h>>2]|0)){m=c[k>>2]|0;i=n;return m|0}m=c[g
x3e;>2]|0;l=c[(c[h>>2]|0)+2060>>2]|0;c[m>>2]=c[l>>2];c[m+4>>2]=c[l+4>
;>2];c[m+8>>2]=c[l+8>>2];c[m+12>>2]=c[l+12>>2];c[m+16>>2]=c[l+16>>
;2];c[m+20>>2]=c[l+20>>2];c[m+24>>2]=c[l+24>>2];c[m+28>>2]=c[l+28>>2
];m=c[k>>2]|0;i=n;return m|0}function yh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>
;>2]=a;c[f>>2]=b;do if((c[f>>2]|0)!=65535){a=c[e>>2]|0;if((c[f>>2]|0)>>
x3e;0>390){c[d>>2]=zh(a,(c[f>>2]|0)-391|0)|0;break}if(c[a+2056>>2]|0){c[d>>2]=Ta[c[(
c[(c[e>>2]|0)+2056>>2]|0)+20>>2]&63](c[f>>2]|0)|0;break}else{c[d>>2]=0;break
}}else c[d>>2]=0;while(0);i=g;return c[d>>2]|0}function zh(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f
+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if((c[e>>2]|0)>>>0>=(c[(c[d>>2]|0)+1312
>>2]|0)>>>0){a=0;i=f;return a|0}a=c[(c[(c[d>>2]|0)+1316>>2]|0)+(c[e>>2]
x3c;<2)>>2]|0;i=f;return a|0}function Ah(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]&512|0)>0|0}function Bh(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[(c[e>>2]|0)+692>>2];i=d;return c[(c[b>>2]|0)+1304>>2]|0}
function Ch(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;p=i;i=i+32|0;q=p+24|0;h=p+20|0;j=p+16|0;k=p
+12|0;m=p+8|0;n=p+4|0;o=p+28|0;l=p;c[q>>2]=a;c[h>>2]=d;c[j>>2]=f;c[k>>2]=g;c[m>>
;2]=c[(c[q>>2]|0)+692>>2];if(!(c[(c[m>>2]|0)+2056>>2]|0)){c[l>>2]=2;q=c[l>
;>2]|0;i=p;return q|0}b[o>>1]=b[(c[(c[m>>2]|0)+1152+8>>2]|0)+(c[h>>2]<<1)
x3e;>1]|0;c[n>>2]=yh(c[m>>2]|0,e[o>>1]|0)|0;if(c[n>>2]|0)pe(c[j>>2]|0,c[n
>>2]|0,c[k>>2]|0)|0;c[l>>2]=0;q=c[l>>2]|0;i=p;return q|0}function Dh(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,q=0,r=0;o=i;i=i+48|0;m=o+36|0;r=o+32|0;f=o+28|0;g=o+24|0;h=o+20|0;k=o+16|0;j=o+12|0;l=o
+40|0;n=o+8|0;q=o+4|0;p=o;c[r>>2]=a;c[f>>2]=d;c[g>>2]=c[(c[r>>2]|0)+692>>2];c[
h>>2]=(c[g>>2]|0)+1152;c[q>>2]=c[(c[r>>2]|0)+96>>2];c[p>>2]=Vd(c[q
x3e;>2]|0,71003)|0;c[k>>2]=c[p>>2];if(!(c[k>>2]|0)){c[m>>2]=0;r=c[m>>2]|0
;i=o;return r|0}c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0>=(c[(c[g>>2]|0)+12>
x3e;2]|0)>>>0){f=12;break}b[l>>1]=b[(c[(c[h>>2]|0)+8>>2]|0)+(c[n>>2]<
;<1)>>1]|0;if((e[l>>1]|0|0)>390)c[j>>2]=zh(c[g>>2]|0,(e[l>>1]|0)-391
|0)|0;else c[j>>2]=Ta[c[(c[k>>2]|0)+20>>2]&63](e[l>>1]|0)|0;if(c[j>>2]|0?(
Kr(c[f>>2]|0,c[j>>2]|0)|0)==0:0){f=10;break}c[n>>2]=(c[n>>2]|0)+1}if((f|0)==10){c[m>
;>2]=c[n>>2];r=c[m>>2]|0;i=o;return r|0}else if((f|0)==12){c[m>>2]=0;r=c[m>>2]|0;i=
o;return r|0}return 0}function Eh(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;l=i;i=i+32|0;d=l+28|0;e=l+24|0;f=l+20
|0;g=l+16|0;m=l+12|0;h=l+8|0;k=l+4|0;j=l;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[d>>2];c[g>
x3e;2]=0;c[m>>2]=c[c[f>>2]>>2];c[h>>2]=c[(c[(c[m>>2]|0)+96>>2]|0)+4
x3e;>2];c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;if((c[(c[f>>2]|0)+12>
x3e;2]|0)==828){m=c[g>>2]|0;i=l;return m|0}if((c[(c[f>>2]|0)+12>>2]|0)==868){m=c[g>>2]|0
;i=l;return m|0}c[k>>2]=Wc(c[h>>2]|0,11340)|0;c[j>>2]=Vd(c[k>>2]|0,11426)|0;if(!(c[j>
;>2]|0)){m=c[g>>2]|0;i=l;return m|0}if(!(c[c[j>>2]>>2]|0)){m=c[g>>2]|0;i=l;return m
|0}c[g>>2]=Ya[c[c[j>>2]>>2]&127](c[d>>2]|0,c[e>>2]|0)|0;m=c[g>>
2]|0;i=l;return m|0}function Fh(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;f=b+4|0;e=b;c[d>>2]=a;c
[g>>2]=c[c[d>>2]>>2];c[f>>2]=c[(c[g>>2]|0)+692>>2];c[e>>2]=(
c[f>>2]|0)+116;c[(c[d>>2]|0)+16>>2]=(c[e>>2]|0)+524;i=b;return 0}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)+16>>2]=0;i=b;return}function Hh(a,b){a=a|0;b=b|0
;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=b;c[g>>2]=0;if((c[f>
x3e;2]|0)>>>0>=256){g=c[g>>2]|0;i=h;return g|0}c[g>>2]=e[(c[(c[d>>2]|0)+16>
;>2]|0)+(c[f>>2]<<1)>>1];g=c[g>>2]|0;i=h;return g|0}function Ih(a,b){a=a|0;b=b|0;var
d=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;f=l+16|0;g=l+12|0;j=l+8|0;d=l+4|0;h=l;c[f>>2]=a;c[g>>2]=b;c[j>
;>2]=0;c[d>>2]=c[c[g>>2]>>2];c[c[g>>2]>>2]=0;if((c[d>>2]|0)>
;>>0>=255){k=c[j>>2]|0;i=l;return k|0}c[h>>2]=(c[d>>2]|0)+1;while(1){if((c[h>
x3e;2]|0)>>>0>=256){k=7;break}c[j>>2]=e[(c[(c[f>>2]|0)+16>>2]|0)+(c[h>>
;2]<<1)>>1];d=c[h>>2]|0;if(c[j>>2]|0)break;c[h>>2]=d+1}if((k|0)==7){k=c[j>
;>2]|0;i=l;return k|0}c[c[g>>2]>>2]=d;k=c[j>>2]|0;i=l;return k|0}function Jh(a){a=a|0;var b=0
,d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;b=j+24|0;d=j+20|0;f=j+16|0;g=j+12|0;e=j+8|0;k=j+4|0;h=j;c[d>>2]=a;c[f>
x3e;2]=c[c[d>>2]>>2];c[g>>2]=c[(c[f>>2]|0)+100>>2];c[e>>2]=c[(c[f>
;>2]|0)+692>>2];c[k>>2]=(c[e>>2]|0)+1152;c[h>>2]=c[(c[e>>2]|0)+2056>
x3e;2];if(c[(c[k>>2]|0)+8>>2]|0){c[b>>2]=Sa[c[(c[h>>2]|0)+4>>2]&3](c[g>
;>2]|0,c[d>>2]|0,c[(c[e>>2]|0)+12>>2]|0,105,0,c[f>>2]|0)|0;k=c[b>>2]|0;i=
j;return k|0}else{c[b>>2]=163;k=c[b>>2]|0;i=j;return k|0}return 0}function Kh(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;k=d+16|0;h=d+12|0;g=d+8|0;j=d+4|0;f=d;c[k>>2]=a;c[h>>2]=b;c[g>>2]=c[(c
[k>>2]|0)+692>>2];c[j>>2]=(c[g>>2]|0)+1152;c[f>>2]=e[(c[(c[j>>2]|0)+
8>>2]|0)+(c[h>>2]<<1)>>1];b=yh(c[g>>2]|0,c[f>>2]|0)|0;i=d;return b|0
}function Lh(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]=c[c[d>>
;2]>>2];c[e>>2]=c[(c[f>>2]|0)+100>>2];Fb(c[e>>2]|0,c[(c[d>>2]|0)+20
x3e;>2]|0);c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>2]=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,j=0;d=i;i=i+32|0;f=d+16|0;e=d+12|0;j=d+8|0;h=d+4|0;g=d;c[f>>2]=a;c[e>>
2]=b;c[j>>2]=c[c[f>>2]>>2];c[h>>2]=c[(c[j>>2]|0)+692>>2];c[g>
x3e;2]=c[(c[h>>2]|0)+2056>>2];a=Ya[c[(c[g>>2]|0)+8>>2]&127](c[f>>2]|0,c[e
>>2]|0)|0;i=d;return a|0}function Nh(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;e=d+12|0;j=d+8
|0;h=d+4|0;g=d;c[f>>2]=a;c[e>>2]=b;c[j>>2]=c[c[f>>2]>>2];c[h>>2]=c[(
c[j>>2]|0)+692>>2];c[g>>2]=c[(c[h>>2]|0)+2056>>2];a=Ya[c[(c[g>>2]|0)+
12>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Oh(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;m=i;i=i+32|0;n=m+24|0;f=m+20|0;g=m+16|0;h=m+12|0;l=m+8|0;j=m+4|0;k=m;c[n>>2]=a;c
[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[l>>2]=0;c[j>>2]=c[(c[n>>2]|0)+692>
;>2];if(!(c[j>>2]|0)){n=c[l>>2]|0;i=m;return n|0}c[k>>2]=(c[j>>2]|0)+1324;if((c[(c[
k>>2]|0)+128>>2]|0)==65535){c[l>>2]=6;n=c[l>>2]|0;i=m;return n|0}if(c[f>>2]|0){
if(!(c[(c[j>>2]|0)+2064>>2]|0)){n=yh(c[j>>2]|0,c[(c[k>>2]|0)+128>>2]|0)|0;c[(c
[j>>2]|0)+2064>>2]=n}c[c[f>>2]>>2]=c[(c[j>>2]|0)+2064>>2]}if(c[g>
;>2]|0){if(!(c[(c[j>>2]|0)+2068>>2]|0)){n=yh(c[j>>2]|0,c[(c[k>>2]|0)+132>>
;2]|0)|0;c[(c[j>>2]|0)+2068>>2]=n}c[c[g>>2]>>2]=c[(c[j>>2]|0)+2068>>
2]}if(!(c[h>>2]|0)){n=c[l>>2]|0;i=m;return n|0}c[c[h>>2]>>2]=c[(c[k>>2]|0)+136
>>2];n=c[l>>2]|0;i=m;return n|0}function Ph(b,d){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;k=j+16
|0;e=j+12|0;h=j+8|0;f=j+4|0;g=j;c[k>>2]=b;c[e>>2]=d;c[h>>2]=0;c[f>>2]=c[(c[k>>
2]|0)+692>>2];a[c[e>>2]>>0]=0;if(!(c[f>>2]|0)){k=c[h>>2]|0;i=j;return k|0}c[g
x3e;>2]=(c[f>>2]|0)+1324;if((c[(c[g>>2]|0)+128>>2]|0)==65535){k=c[h>>2]|0;i=j;return
k|0}a[c[e>>2]>>0]=1;k=c[h>>2]|0;i=j;return k|0}function Qh(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;m=i;i=i+32|0;n=m+24|0;f=m+20|0;g=m+16|0;l=m+12|0;j=m+8|0;h=m+4|0;k=m;c[n>>2]=a;c[f>>2
]=b;c[g>>2]=d;c[l>>2]=0;c[j>>2]=c[(c[n>>2]|0)+692>>2];do if(c[j>>2]|
0){c[k>>2]=(c[j>>2]|0)+1324;if((c[(c[k>>2]|0)+128>>2]|0)==65535){c[l>>2]=6;break
}if((c[f>>2]|0)>>>0>(c[(c[j>>2]|0)+12>>2]|0)>>>0){c[l>>
;2]=6;break}c[h>>2]=e[(c[(c[j>>2]|0)+1152+8>>2]|0)+(c[f>>2]<<1)>>1];
if(c[g>>2]|0)c[c[g>>2]>>2]=c[h>>2]}while(0);i=m;return c[l>>2]|0}
function rm(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;L=i;i=i+128|0;N=L+116|0;M=L+112|0;j=L+108|0;D=L+104|0;v=L+100|0;g=L+96|0;h=L+92|0;y=L+88|0;
H=L+84|0;w=L+80|0;p=L+76|0;s=L+72|0;k=L+68|0;r=L+64|0;n=L+60|0;l=L+56|0;t=L+52|0;x=L+48|0;u=L+44|0;m=L+40|0;o=L+36|0;q=L+32|0;C=
L+28|0;z=L+24|0;E=L+20|0;G=L+16|0;F=L+120|0;A=L+12|0;I=L+8|0;B=L+4|0;J=L;c[N>>2]=e;c[M>>2]=f;c[j>>
2]=(c[N>>2]|0)+48+((c[M>>2]|0)*28|0);c[D>>2]=0;c[v>>2]=c[c[N>>2]>>2];
c[g>>2]=(c[(c[N>>2]|0)+112>>2]|0)+40+((c[M>>2]|0)*396|0);c[h>>2]=c[(c[j>
x3e;2]|0)+8>>2];c[y>>2]=(c[h>>2]|0)+((c[c[j>>2]>>2]|0)*52|0);c[(c[j>>
;2]|0)+12>>2]=0;f=c[N>>2]|0;if(!(c[M>>2]|0))f=c[f+4>>2]|0;else f=c[f+12>>2]|0;
c[w>>2]=f;c[p>>2]=Mb(c[(c[g>>2]|0)+204>>2]|0,c[w>>2]|0)|0;if((c[p>>2
]|0)>16)c[p>>2]=Vb(16,c[w>>2]|0)|0;else c[p>>2]=c[(c[g>>2]|0)+204>>2];c[H
>>2]=c[h>>2];while(1){if((c[H>>2]|0)>>>0>=(c[y>>2]|0)>>>
;0)break;c[s>>2]=0;c[k>>2]=65535;c[r>>2]=0;while(1){if((c[r>>2]|0)>=(c[(c[j>
x3e;2]|0)+12>>2]|0))break;c[n>>2]=(c[(c[j>>2]|0)+20>>2]|0)+((c[r>>2]|0)*48|0);
do if((a[(c[n>>2]|0)+13>>0]|0)==(a[(c[H>>2]|0)+1>>0]|0)){c[l>>2]=(b[(c[H>
x3e;2]|0)+2>>1]|0)-(b[c[n>>2]>>1]|0);if((c[l>>2]|0)<0)c[l>>2]=0-(c[l>
;>2]|0);if((c[l>>2]|0)<(c[p>>2]|0)?(c[l>>2]|0)<(c[k>>2]|0):0){c[t>
x3e;2]=c[(c[H>>2]|0)+20>>2];if(c[t>>2]|0){c[x>>2]=c[(c[n>>2]|0)+40>>
2];c[m>>2]=0;do{c[u>>2]=c[(c[x>>2]|0)+20>>2];if(c[u>>2]|0){if((b[(c[t>>
;2]|0)+2>>1]|0)>(b[(c[u>>2]|0)+2>>1]|0))f=(b[(c[t>>2]|0)+2>>1]|0)-(b[(c[u
>>2]|0)+2>>1]|0)|0;else f=(b[(c[u>>2]|0)+2>>1]|0)-(b[(c[t>>2]|0)+2>>
1]|0)|0;c[m>>2]=f;if((c[m>>2]|0)>=(c[p>>2]|0))break}N=c[(c[x>>2]|0)+16>>2
]|0;c[x>>2]=N}while((N|0)!=(c[(c[n>>2]|0)+40>>2]|0));if((c[m>>2]|0)>=(c[p>>
;2]|0))break}c[k>>2]=c[l>>2];c[s>>2]=c[n>>2]}}while(0);c[r>>2]=(c[r>>
;2]|0)+1}if(c[s>>2]|0){c[(c[H>>2]|0)+16>>2]=c[(c[s>>2]|0)+40>>2];c[(c[(c[s>
;>2]|0)+44>>2]|0)+16>>2]=c[H>>2];c[(c[s>>2]|0)+44>>2]=c[H>>2]}else
{c[D>>2]=Yl(c[j>>2]|0,b[(c[H>>2]|0)+2>>1]|0,a[(c[H>>2]|0)+1>>0]|0,c[
v>>2]|0,o)|0;if(c[D>>2]|0){K=69;break}f=c[o>>2]|0;e=f+48|0;do{c[f>>2]=0;f=f+4|0}while((f
|0)<(e|0));c[(c[o>>2]|0)+40>>2]=c[H>>2];c[(c[o>>2]|0)+44>>2]=c[H>>
;2];b[c[o>>2]>>1]=b[(c[H>>2]|0)+2>>1]|0;N=Mb(b[(c[H>>2]|0)+2>>1]|0,c
[w>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=N;c[(c[o>>2]|0)+4>>2]=N;c[(c[H>>2]|0
)+16>>2]=c[H>>2];a[(c[o>>2]|0)+13>>0]=a[(c[H>>2]|0)+1>>0]|0}c[H>
;>2]=(c[H>>2]|0)+52}if((K|0)==69){N=c[D>>2]|0;i=L;return N|0}c[q>>2]=c[(c[j>>2]|0)+
20>>2];c[C>>2]=(c[q>>2]|0)+((c[(c[j>>2]|0)+12>>2]|0)*48|0);c[z>>2]=c
[q>>2];while(1){if((c[z>>2]|0)>>>0>=(c[C>>2]|0)>>>0)break;c[H
x3e;>2]=c[(c[z>>2]|0)+40>>2];if(c[H>>2]|0)do{c[(c[H>>2]|0)+12>>2]=c[z>
;>2];c[H>>2]=c[(c[H>>2]|0)+16>>2]}while((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>
;>2]|0));c[z>>2]=(c[z>>2]|0)+48}c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)
x3e;>>0>=(c[C>>2]|0)>>>0)break;c[E>>2]=0;c[G>>2]=0;c[H>>2]=
c[(c[z>>2]|0)+40>>2];do{if(d[c[H>>2]>>0]&1|0)c[E>>2]=(c[E>>2]|0
)+1;else c[G>>2]=(c[G>>2]|0)+1;if(c[(c[H>>2]|0)+24>>2]|0)f=(c[(c[(c[H>>2]|0)+24
>>2]|0)+12>>2]|0)!=(c[z>>2]|0);else f=0;a[F>>0]=f&1;if(!(!(c[(c[H>>2]|0)+
20>>2]|0)?!(d[F>>0]|0):0))K=47;do if((K|0)==47){K=0;c[A>>2]=c[(c[z>>2]|0)+24>>
2];c[I>>2]=c[(c[H>>2]|0)+20>>2];if(a[F>>0]|0){c[I>>2]=c[(c[H>>2]|0)+
24>>2];c[A>>2]=c[(c[z>>2]|0)+28>>2]}if(c[A>>2]|0){c[B>>2]=(b[c[z>
;>2]>>1]|0)-(b[c[A>>2]>>1]|0);if((c[B>>2]|0)<0)c[B>>2]=0-(c[B>
x3e;2]|0);if((b[(c[H>>2]|0)+2>>1]|0)>(b[(c[I>>2]|0)+2>>1]|0))f=(b[(c[H>>2
]|0)+2>>1]|0)-(b[(c[I>>2]|0)+2>>1]|0)|0;else f=(b[(c[I>>2]|0)+2>>1]|0)-(b[(c[H
>>2]|0)+2>>1]|0)|0;c[J>>2]=f;if((c[J>>2]|0)<(c[B>>2]|0))c[A>>2]=
c[(c[I>>2]|0)+12>>2]}else c[A>>2]=c[(c[I>>2]|0)+12>>2];f=c[A>>2]|0;e
=c[z>>2]|0;if(a[F>>0]|0){c[e+28>>2]=f;N=(c[A>>2]|0)+12|0;a[N>>0]=d[N>>
;0]|2;break}else{c[e+24>>2]=f;break}}while(0);c[H>>2]=c[(c[H>>2]|0)+16>>2]}while((c[H>
;>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));a[(c[z>>2]|0)+12>>0]=0;if((c[E>>2]|0)
x3e;0?(c[E>>2]|0)>=(c[G>>2]|0):0){N=(c[z>>2]|0)+12|0;a[N>>0]=d[N>>0]|1}if
(c[(c[z>>2]|0)+28>>2]|0?c[(c[z>>2]|0)+24>>2]|0:0)c[(c[z>>2]|0)+28>>2
]=0;c[z>>2]=(c[z>>2]|0)+48}N=c[D>>2]|0;i=L;return N|0}function sm(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;A=i;i=i+80|0;u=A+72|0;h=A+68|0;g=A+64|0;z=A+60|0;y=A+56|0;r
=A+52|0;x=A+48|0;j=A+44|0;l=A+40|0;s=A+36|0;k=A+32|0;o=A+28|0;p=A+24|0;q=A+20|0;m=A+16|0;n=A+12|0;t=A+8|0;w=A+4|0;v=A;c[u>
x3e;2]=e;c[h>>2]=f;c[g>>2]=(c[u>>2]|0)+48+((c[h>>2]|0)*28|0);c[z>>2]=c[(c[g>
;>2]|0)+20>>2];c[y>>2]=(c[z>>2]|0)+((c[(c[g>>2]|0)+12>>2]|0)*48|0);c[j>
;>2]=0;c[l>>2]=0;c[s>>2]=0;c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>
x3e;>0>=(c[y>>2]|0)>>>0)break;do if(!(d[(c[x>>2]|0)+12>>0]&4)){c[k
x3e;>2]=c[(c[x>>2]|0)+24>>2];if(!(c[k>>2]|0)){c[s>>2]=(c[s>>2]|0)+1;break
}if((c[k>>2]|0)>>>0<(c[x>>2]|0)>>>0){tm(c[u>>2]|0,c[h>>
;2]|0,c[k>>2]|0,c[x>>2]|0);g=(c[x>>2]|0)+12|0;a[g>>0]=d[g>>0]|4;break}f=c[u>
;>2]|0;e=c[x>>2]|0;g=c[k>>2]|0;if((c[h>>2]|0)==1|(c[j>>2]|0)!=0)wm(f,e,g,c[l>
x3e;2]|0,c[h>>2]|0)|0;else c[l>>2]=wm(f,e,g,0,0)|0;c[j>>2]=c[x>>2];g=(c[x>>2]|
0)+12|0;a[g>>0]=d[g>>0]|4;g=(c[k>>2]|0)+12|0;a[g>>0]=d[g>>0]|4}while(0);c[x>
;>2]=(c[x>>2]|0)+48}c[r>>2]=((c[y>>2]|0)-(c[z>>2]|0)|0)/48|0;if((c[h>>2]|
0)==0?(c[r>>2]|0)==6|(c[r>>2]|0)==12:0){f=c[z>>2]|0;if((c[r>>2]|0)==6){c[o>>2]=
f;c[p>>2]=(c[z>>2]|0)+96;c[q>>2]=(c[z>>2]|0)+192}else{c[o>>2]=f+48;c[p>
x3e;2]=(c[z>>2]|0)+240;c[q>>2]=(c[z>>2]|0)+432}c[m>>2]=(c[(c[p>>2]|0)+4>
x3e;2]|0)-(c[(c[o>>2]|0)+4>>2]|0);c[n>>2]=(c[(c[q>>2]|0)+4>>2]|0)-(c[(c[p>
;>2]|0)+4>>2]|0);c[t>>2]=(c[m>>2]|0)-(c[n>>2]|0);if((c[t>>2]|0)<0)c[
t>>2]=0-(c[t>>2]|0);if(((c[(c[o>>2]|0)+24>>2]|0)==((c[o>>2]|0)+48|0)?(c[(c[p
x3e;>2]|0)+24>>2]|0)==((c[p>>2]|0)+48|0):0)?((c[t>>2]|0)<8?(c[(c[q>>2]|0)+24
x3e;>2]|0)==((c[q>>2]|0)+48|0):0):0){c[l>>2]=(c[(c[q>>2]|0)+8>>2]|0)-((c[(c[p>
x3e;2]|0)+8>>2]<<1)-(c[(c[o>>2]|0)+8>>2]|0));t=(c[q>>2]|0)+8|0;c[t>>
2]=(c[t>>2]|0)-(c[l>>2]|0);if(c[(c[q>>2]|0)+24>>2]|0){t=(c[(c[q>>2]|0)+24>
;>2]|0)+8|0;c[t>>2]=(c[t>>2]|0)-(c[l>>2]|0)}if((c[r>>2]|0)==12){t=(c[z>>2
]|0)+384+8|0;c[t>>2]=(c[t>>2]|0)-(c[l>>2]|0);t=(c[z>>2]|0)+528+8|0;c[t>>2]=(c[
t>>2]|0)-(c[l>>2]|0)}t=(c[q>>2]|0)+12|0;a[t>>0]=d[t>>0]|4;if(c[(c[q>>
;2]|0)+24>>2]|0){t=(c[(c[q>>2]|0)+24>>2]|0)+12|0;a[t>>0]=d[t>>0]|4}}}if(!(c[s
x3e;>2]|0)){i=A;return}c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>>>0>=(c[y
x3e;>2]|0)>>>0)break;if((d[(c[x>>2]|0)+12>>0]&4|0)==0?c[(c[x>>2]|0)+28>
;>2]|0:0){xm(c[u>>2]|0,c[(c[x>>2]|0)+28>>2]|0,c[x>>2]|0);t=(c[x>>2]|0)+12
|0;a[t>>0]=d[t>>0]|4;c[s>>2]=(c[s>>2]|0)+-1}c[x>>2]=(c[x>>2]|0)+48}if
(!(c[s>>2]|0)){i=A;return}c[x>>2]=c[z>>2];while(1){if((c[x>>2]|0)>>>0>
;=(c[y>>2]|0)>>>0)break;do if(!(d[(c[x>>2]|0)+12>>0]&4)){t=c[x>>2]|0
;c[v>>2]=t;c[w>>2]=t;do{t=(c[w>>2]|0)+-48|0;c[w>>2]=t;if(t>>>0<(c[z
x3e;>2]|0)>>>0)break}while(!(d[(c[w>>2]|0)+12>>0]&4|0));do{t=(c[v>>2]|0)+
48|0;c[v>>2]=t;if(t>>>0>=(c[y>>2]|0)>>>0)break}while(!(d[(c[v>>
2]|0)+12>>0]&4|0));if((c[w>>2]|0)>>>0<(c[z>>2]|0)>>>0?(c[v
>>2]|0)>>>0>=(c[y>>2]|0)>>>0:0)break;if((c[w>>2]|0)>>
x3e;0<(c[z>>2]|0)>>>0){xm(c[u>>2]|0,c[v>>2]|0,c[x>>2]|0);break}if((c
[v>>2]|0)>>>0>=(c[y>>2]|0)>>>0){xm(c[u>>2]|0,c[w>>2]|
0,c[x>>2]|0);break}f=c[(c[w>>2]|0)+8>>2]|0;e=c[x>>2]|0;if((b[c[v>>2]>>
;1]|0)==(b[c[w>>2]>>1]|0)){c[e+8>>2]=f;break}else{t=f+(xb((b[e>>1]|0)-(b[c[w>>
2]>>1]|0)|0,(c[(c[v>>2]|0)+8>>2]|0)-(c[(c[w>>2]|0)+8>>2]|0)|0,(b[c[v>>
;2]>>1]|0)-(b[c[w>>2]>>1]|0)|0)|0)|0;c[(c[x>>2]|0)+8>>2]=t;break}}while(0);c[x
>>2]=(c[x>>2]|0)+48}i=A;return}function tm(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;
g=i;i=i+32|0;n=g+20|0;m=g+16|0;k=g+12|0;h=g+8|0;l=g+4|0;j=g;c[n>>2]=a;c[m>>2]=b;c[k>>2]=e;c[h>
;>2]=f;c[l>>2]=(c[(c[h>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+4>>2]|0);c[j>
x3e;2]=um(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,d[(c[k>>2]|0)+12>>0]|0,d[(c[h>>
;2]|0)+12>>0]|0)|0;c[(c[h>>2]|0)+8>>2]=(c[(c[k>>2]|0)+8>>2]|0)+(c[j>>
;2]|0);i=g;return}function um(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,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+44|0;k=p+40|0;s=p+36|0;g=p+32|0;r=p+28|0;q=p+24|0;t=p+20|0;h=p+16|0;n=p+12|0;o=p+8|0;j=p+4|0;l=p;c[k>>
2]=a;c[s>>2]=b;c[g>>2]=d;c[r>>2]=e;c[q>>2]=f;c[t>>2]=c[(c[k>>2]|0)+112
>>2];c[h>>2]=(c[t>>2]|0)+40+((c[s>>2]|0)*396|0);c[n>>2]=c[g>>2];c[o
x3e;>2]=0;c[j>>2]=(c[s>>2]|0)==1&1;c[r>>2]=c[r>>2];c[q>>2]=c[q>
x3e;2];if(!(c[(c[k>>2]|0)+108>>2]&4)){c[m>>2]=c[g>>2];t=c[m>>2]|0;i=p;return
t|0}if((c[n>>2]|0)<0){c[n>>2]=0-(c[g>>2]|0);c[o>>2]=1}if(c[j>>2]|0?!(c[(
c[k>>2]|0)+108>>2]&2|0):0)b=9;else b=7;do if((b|0)==7){if((c[j>>2]|0)==0?(c[(c[k>>2
]|0)+108>>2]&1|0)==0:0){b=9;break}c[n>>2]=vm((c[h>>2]|0)+12|0,c[(c[h>>2]|0)+8>
x3e;2]|0,c[n>>2]|0)|0;if(c[j>>2]|0)if((c[n>>2]|0)>=64){c[n>>2]=(c[n>>2]|0
)+16&-64;break}else{c[n>>2]=64;break}g=c[n>>2]|0;if(c[(c[k>>2]|0)+108>>2]&8|0)
if((g|0)<64){c[n>>2]=64;break}else{c[n>>2]=(c[n>>2]|0)+32&-64;break}e=c[n>>2]|
0;if((g|0)<48){c[n>>2]=e+64>>1;break}g=c[n>>2]|0;if((e|0)<128){c[n>>2]=g+22&
;-64;break}else{c[n>>2]=g+32&-64;break}}while(0);do if((b|0)==9){if((c[(c[h>>2]|0)+8>>2]|0)
x3e;>>0>0?(t=(c[n>>2]|0)-(c[(c[h>>2]|0)+12+4>>2]|0)|0,((((c[n>>2]|0)-(c[(
c[h>>2]|0)+12+4>>2]|0)|0)<0?0-t|0:t)|0)<40):0){t=c[(c[h>>2]|0)+12+4>>2]|0;c[n
x3e;>2]=t;c[n>>2]=(c[n>>2]|0)<48?48:t;break}g=c[n>>2]|0;if((c[n>>2]|0)<54
){c[n>>2]=(c[n>>2]|0)+((54-g|0)/2|0);break}if((g|0)<192){c[l>>2]=c[n>>2]&63;c[
n>>2]=c[n>>2]&-64;g=c[l>>2]|0;if((c[l>>2]|0)<10){c[n>>2]=(c[n>
x3e;2]|0)+g;break}if((g|0)<22){c[n>>2]=(c[n>>2]|0)+10;break}g=c[l>>2]|0;if((c[l>>2]|
0)<42){c[n>>2]=(c[n>>2]|0)+g;break}if((g|0)<54){c[n>>2]=(c[n>>2]|0)+54;break}else
{c[n>>2]=(c[n>>2]|0)+(c[l>>2]|0);break}}}while(0);if(c[o>>2]|0)c[n>>2]=0-(c[n
x3e;>2]|0);c[m>>2]=c[n>>2];t=c[m>>2]|0;i=p;return t|0}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,l=0,m=0,n=0,o=0;o=i;i=i+48|0;e=o+32|0;f=o+28|0;m=o+24|0;j=o+20|0;g=o+16|0;n=o+12|0;l=o+8|0;k=o+4|0;h=o;
c[e>>2]=a;c[f>>2]=b;c[m>>2]=d;c[g>>2]=98;c[n>>2]=c[m>>2];c[j>
x3e;2]=0;while(1){if((c[j>>2]|0)>=(c[f>>2]|0))break;c[k>>2]=c[(c[e>>2]|0)+((c[j>
;>2]|0)*12|0)+4>>2];c[h>>2]=(c[m>>2]|0)-(c[k>>2]|0);if((c[h>>2]|0)<0
)c[h>>2]=0-(c[h>>2]|0);if((c[h>>2]|0)<(c[g>>2]|0)){c[g>>2]=c[h>>
;2];c[n>>2]=c[k>>2]}c[j>>2]=(c[j>>2]|0)+1}c[l>>2]=(c[n>>2]|0)+32&
;-64;f=c[m>>2]|0;e=c[l>>2]|0;if((c[m>>2]|0)>=(c[n>>2]|0)){if((f|0)>=(e+48|0)){
n=c[m>>2]|0;i=o;return n|0}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}else{if((f|0)<
;=(e-48|0)){n=c[m>>2]|0;i=o;return n|0}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}return
0}function wm(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,y=0,
z=0;z=i;i=i+80|0;h=z+64|0;u=z+60|0;v=z+56|0;j=z+52|0;k=z+48|0;q=z+44|0;w=z+40|0;p=z+36|0;x=z+32|0;l=z+28|0;m=z+24|0;s=z+20|0;n=z
+16|0;t=z+12|0;y=z+8|0;o=z+4|0;r=z;c[h>>2]=a;c[u>>2]=b;c[v>>2]=e;c[j>>2]=f;c[k>>
;2]=g;c[r>>2]=64;do if(!(c[(c[h>>2]|0)+108>>2]&4)){if((d[(c[u>>2]|0)+12>>
0]|0)&1|0?(d[(c[v>>2]|0)+12>>0]|0)&1|0:0)if((c[k>>2]|0)==1){c[r>>2]=55;break}else
{c[r>>2]=49;break}if((c[k>>2]|0)==1){c[r>>2]=61;break}else{c[r>>2]=59;break}}while(0);c[
q>>2]=(c[(c[v>>2]|0)+4>>2]|0)-(c[(c[u>>2]|0)+4>>2]|0);c[w>>2]=um(c[h
>>2]|0,c[k>>2]|0,c[q>>2]|0,d[(c[u>>2]|0)+12>>0]|0,d[(c[v>>2]|0)+12
x3e;>0]|0)|0;c[p>>2]=(((c[(c[u>>2]|0)+4>>2]|0)+(c[(c[v>>2]|0)+4>>2]|0)|0)/
2|0)+(c[j>>2]|0);c[x>>2]=(c[p>>2]|0)-((c[w>>2]|0)/2|0);c[l>>2]=(c[x>>
;2]|0)+(c[w>>2]|0);c[m>>2]=(c[x>>2]|0)-(c[x>>2]&-64);c[n>>2]=(c[l>
x3e;2]|0)-(c[l>>2]&-64);c[s>>2]=64-(c[m>>2]|0);c[t>>2]=64-(c[n>>2]|0);c[y
>>2]=0;do if(!((c[m>>2]|0)==0|(c[n>>2]|0)==0)){if((c[w>>2]|0)<=(c[r>>2]|0
)){if((c[n>>2]|0)>=(c[w>>2]|0))break;if((c[s>>2]|0)<=(c[n>>2]|0)){c[y>>
;2]=c[s>>2];break}else{c[y>>2]=0-(c[n>>2]|0);break}}if((c[r>>2]|0)<64){if((c[m>
;>2]|0)>=(c[r>>2]|0))break;if((c[s>>2]|0)>=(c[r>>2]|0))break;if((c[n>>2]|
0)>=(c[r>>2]|0))break;if((c[t>>2]|0)>=(c[r>>2]|0))break}c[o>>2]=(c[w>>
;2]|0)%64|0;if((c[o>>2]|0)<32){if((c[s>>2]|0)<=(c[o>>2]|0))break;if((c[n>>2]|0
)<=(c[o>>2]|0))break}else c[o>>2]=64-(c[r>>2]|0);c[m>>2]=(c[r>>2]|0)-(c[s
>>2]|0);c[s>>2]=(c[s>>2]|0)-(c[o>>2]|0);c[t>>2]=(c[r>>2]|0)-(c[n>
;>2]|0);c[n>>2]=(c[n>>2]|0)-(c[o>>2]|0);if((c[m>>2]|0)<=(c[s>>2]|0))
c[s>>2]=0-(c[m>>2]|0);if((c[n>>2]|0)<=(c[t>>2]|0))c[t>>2]=0-(c[n>>
;2]|0);q=c[s>>2]|0;r=c[t>>2]|0;if((((c[s>>2]|0)<0?0-q|0:q)|0)<=(((c[t>>2]|0)
x3c;0?0-r|0:r)|0)){c[y>>2]=c[s>>2];break}else{c[y>>2]=c[t>>2];break}}while(0);do if(!(c[(
c[h>>2]|0)+108>>2]&4)){if((c[y>>2]|0)>14){c[y>>2]=14;break}if((c[y>>
2]|0)<-14)c[y>>2]=-14}while(0);c[x>>2]=(c[x>>2]|0)+(c[y>>2]|0);h=c[x>>2]|
0;if((c[(c[u>>2]|0)+4>>2]|0)<(c[(c[v>>2]|0)+4>>2]|0)){c[(c[u>>2]|0)+8>
;>2]=h;c[(c[v>>2]|0)+8>>2]=(c[x>>2]|0)+(c[w>>2]|0);y=c[y>>2]|0;i=z;return
y|0}else{c[(c[u>>2]|0)+8>>2]=h+(c[w>>2]|0);c[(c[v>>2]|0)+8>>2]=c[x>>
;2];y=c[y>>2]|0;i=z;return y|0}return 0}function xm(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;c[h>>2]=c[h>>2];c[(c[f>>2]|
0)+8>>2]=(c[(c[g>>2]|0)+8>>2]|0)+((c[(c[f>>2]|0)+4>>2]|0)-(c[(c[g>>2
]|0)+4>>2]|0));i=e;return}function ym(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;r=i;i=i+48|
0;g=r+36|0;j=r+32|0;s=r+28|0;h=r+24|0;m=r+20|0;l=r+16|0;q=r+40|0;p=r+12|0;n=r+8|0;k=r+4|0;o=r;c[g>>2]=d;c[j>>
;2]=f;c[s>>2]=(c[g>>2]|0)+48+((c[j>>2]|0)*28|0);c[h>>2]=c[(c[s>>2]|0)+20>
x3e;2];c[m>>2]=(c[h>>2]|0)+((c[(c[s>>2]|0)+12>>2]|0)*48|0);if((c[j>>2]|0)==0?c
[(c[g>>2]|0)+108>>2]&1|0:0)g=1;else if((c[j>>2]|0)==1)g=(c[(c[g>>2]|0)+108>>
;2]&2|0)!=0;else g=0;a[q>>0]=g&1;c[l>>2]=c[h>>2];while(1){if((c[l>>2]|0)>
x3e;>0>=(c[m>>2]|0)>>>0)break;c[p>>2]=c[(c[l>>2]|0)+40>>2];if(a
[q>>0]|0)do{c[n>>2]=c[(c[p>>2]|0)+40>>2];while(1){g=c[(c[l>>2]|0)+8>>
;2]|0;f=c[n>>2]|0;if(!(c[j>>2]|0)){c[f+16>>2]=g;s=c[n>>2]|0;b[s>>1]=e[s>
x3e;1]|64}else{c[f+20>>2]=g;s=c[n>>2]|0;b[s>>1]=e[s>>1]|128}if((c[n>>2]|0)==(c
[(c[p>>2]|0)+44>>2]|0))break;c[n>>2]=c[(c[n>>2]|0)+32>>2]}c[p>>2]=c[(
c[p>>2]|0)+16>>2]}while((c[p>>2]|0)!=(c[(c[l>>2]|0)+40>>2]|0));else{c[k>
x3e;2]=(c[(c[l>>2]|0)+8>>2]|0)-(c[(c[l>>2]|0)+4>>2]|0);do{c[o>>2]=c[(c[p>
x3e;2]|0)+40>>2];while(1){g=c[k>>2]|0;f=c[o>>2]|0;if(!(c[j>>2]|0)){s=f+16|0;c[s>>
;2]=(c[s>>2]|0)+g;s=c[o>>2]|0;b[s>>1]=e[s>>1]|64}else{s=f+20|0;c[s>>2]=(c[s>
;>2]|0)+g;s=c[o>>2]|0;b[s>>1]=e[s>>1]|128}if((c[o>>2]|0)==(c[(c[p>>2]|0)+
44>>2]|0))break;c[o>>2]=c[(c[o>>2]|0)+32>>2]}c[p>>2]=c[(c[p>>2]|0)+16
>>2]}while((c[p>>2]|0)!=(c[(c[l>>2]|0)+40>>2]|0))}c[l>>2]=(c[l>>2]|0
)+48}i=r;return}function zm(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=
jm(c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function Am(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;km(c[f>>2]|0,c[e>>2]|0);i=d;return}function Bm(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=mm(c[f>>2]|0,c[e>>2]|0)|0;i=
d;return b|0}function Cm(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
x3e;>2]=b;c[f>>2]=d;b=nm(c[h>>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return b|0}function Dm
(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;l=g+16|0;k=g+12|0;m=g+8|0;j=g+4|0;h=g;c[l>
;>2]=a;c[k>>2]=b;c[m>>2]=d;c[j>>2]=e;c[h>>2]=f;c[m>>2]=c[m>>2];
b=Em((c[l>>2]|0)+20|0,c[(c[k>>2]|0)+4>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;i=g;return
b|0}function Em(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;q=i;i=i+64|0;j=q+60|0;k=q+56|0;
f=q+52|0;l=q+48|0;m=q+44|0;n=q+40|0;h=q+36|0;p=q+8|0;o=q+4|0;g=q;c[k>>2]=a;c[f>>2]=b;c[l>>2]=d;c[m
>>2]=e;c[h>>2]=c[(c[f>>2]|0)+88>>2];if(!(c[h>>2]|0)){c[j>>2]=6;p=c[j
>>2]|0;i=q;return p|0};c[p>>2]=0;c[p+4>>2]=0;c[p+8>>2]=0;c[p+12>>2]=0;c[p+16
x3e;>2]=0;c[p+20>>2]=0;c[p+24>>2]=0;c[p>>2]=c[f>>2];c[p+4>>2]=c[(c[h>
;>2]|0)+12+4>>2];c[p+12>>2]=0;c[p+8>>2]=c[(c[h>>2]|0)+12+8>>2];c[p+16>
;>2]=0;c[p+20>>2]=(c[m>>2]|0)>>>16&15;c[p+24>>2]=0;c[n>>2]=Fm(c
[k>>2]|0,c[f>>2]|0)|0;do if((c[n>>2]|0)==0?(c[g>>2]=0,c[n>>2]=Jm(c[(c[k>
x3e;2]|0)+4>>2]|0,c[l>>2]|0,c[g>>2]|0,o)|0,(c[n>>2]|0)==0):0){c[(c[k>>2]|0)+136
>>2]=c[o>>2];f=c[o>>2]|0;if(c[(c[c[o>>2]>>2]|0)+16>>2]|0)Ra[c[(c[f
x3e;>2]|0)+16>>2]&7](c[o>>2]|0,p);else{h=f+4|0;c[h>>2]=c[p>>2];c[h+4>>
;2]=c[p+4>>2];c[h+8>>2]=c[p+8>>2];c[h+12>>2]=c[p+12>>2];c[h+16>>2]=c
[p+16>>2];c[h+20>>2]=c[p+20>>2];c[h+24>>2]=c[p+24>>2]}c[m>>2]=c[m>
;>2]|2049;c[m>>2]=c[m>>2]&-5;if(c[(c[c[o>>2]>>2]|0)+24>>2]|0?(c[n>
;>2]=Ya[c[(c[c[o>>2]>>2]|0)+24>>2]&127]((c[k>>2]|0)+12|0,c[o>>2]|0)|
0,c[n>>2]|0):0)break;c[n>>2]=Km(c[k>>2]|0,p,c[l>>2]|0,c[m>>2]|0,0)|0}while(0);
c[j>>2]=c[n>>2];p=c[j>>2]|0;i=q;return p|0}function Fm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=
i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=0;c[c[d>>2]>>2]=c[e>
;>2];c[(c[d>>2]|0)+4>>2]=c[(c[e>>2]|0)+116>>2];dc(c[(c[d>>2]|0)+8>
x3e;2]|0);if(c[(c[d>>2]|0)+4>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[f>>2]=Gm(c[e>>
;2]|0,(c[d>>2]|0)+4|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}c[(c[e>>2]|0)+116>
;>2]=c[(c[d>>2]|0)+4>>2];c[(c[e>>2]|0)+116+4>>2]=35;a=c[f>>2]|0;i=g;return
a|0}function Gm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;e=h+12|0;f=h+8|0;j=h+4|0;g=h;c[d>>
2]=a;c[e>>2]=b;c[g>>2]=0;c[j>>2]=c[(c[d>>2]|0)+100>>2];c[g>>2]=bc(c[
j>>2]|0,28+(c[(c[d>>2]|0)+16>>2]|0)|0,f)|0;if((c[f>>2]|0)==0?(c[c[g>>2]>
x3e;2]=c[d>>2],c[(c[g>>2]|0)+4>>2]=c[(c[d>>2]|0)+16>>2],c[(c[g>>2]|0
)+8>>2]=(c[g>>2]|0)+28,c[f>>2]=Hm(c[g>>2]|0)|0,c[f>>2]|0):0){Im(c[g>>
;2]|0);c[g>>2]=0}c[c[e>>2]>>2]=c[g>>2];i=h;return c[f>>2]|0}function Hm(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;s=i;i=i+64|0;e=s+48|0;h=s+44|0;j=s+40|0;p=s+36|0;m=s+32|0;r=s+28|
0;n=s+24|0;g=s+20|0;q=s+16|0;f=s+12|0;k=s+8|0;l=s+4|0;o=s;c[e>>2]=b;c[h>>2]=0;c[j>>2]=c[c[e>
x3e;2]>>2];c[p>>2]=c[(c[j>>2]|0)+92>>2];c[m>>2]=c[(c[e>>2]|0)+8>
;>2];Ns(c[(c[e>>2]|0)+8>>2]|0,127,c[(c[e>>2]|0)+4>>2]|0)|0;c[h>>2]=Id(c[j
>>2]|0,1970170211)|0;a:do if(c[h>>2]|0)c[h>>2]=0;else{c[r>>2]=0;while(1){if(!(c[3900+(c[
r>>2]<<2)>>2]|0))break;c[g>>2]=c[3900+(c[r>>2]<<2)>>2];b:do
if(c[(c[g>>2]|0)+4>>2]|0){c[q>>2]=c[(c[g>>2]|0)+4>>2];while(1){if(!(c[c[q>
;>2]>>2]|0))break b;c[f>>2]=c[c[q>>2]>>2];c[k>>2]=Dc(c[j>>2]|0,
c[f>>2]|0)|0;if((c[k>>2]|0?(c[k>>2]|0)>>>0<(c[(c[e>>2]|0)+4>>
;2]|0)>>>0:0)?(d[(c[m>>2]|0)+(c[k>>2]|0)>>0]|0|0)==127:0)a[(c[m>>2]|0)+(c
[k>>2]|0)>>0]=c[r>>2];while(1){c[f>>2]=Md(c[j>>2]|0,c[f>>2]|0,k)|0;if
(!(c[k>>2]|0))break;if((c[f>>2]|0)>>>0>(c[(c[q>>2]|0)+4>>2]|0)>
x3e;>0)break;if((c[k>>2]|0)>>>0>=(c[(c[e>>2]|0)+4>>2]|0)>>>
;0)continue;if((d[(c[m>>2]|0)+(c[k>>2]|0)>>0]|0|0)!=127)continue;a[(c[m>>2]|0)+(c[k>
;>2]|0)>>0]=c[r>>2]}c[q>>2]=(c[q>>2]|0)+8}}while(0);c[r>>2]=(c[r>>
;2]|0)+1}c[n>>2]=48;while(1){if((c[n>>2]|0)>>>0>57)break a;c[l>>2]=Dc(c[j>
;>2]|0,c[n>>2]|0)|0;if(c[l>>2]|0?(c[l>>2]|0)>>>0<(c[(c[e>>2]|0)+
4>>2]|0)>>>0:0){r=(c[m>>2]|0)+(c[l>>2]|0)|0;a[r>>0]=d[r>>0]|0|128
}c[n>>2]=(c[n>>2]|0)+1}}while(0);c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[(c[e>
x3e;2]|0)+4>>2]|0))break;if(((d[(c[m>>2]|0)+(c[o>>2]|0)>>0]|0)&-129|0)==127){r=(c[m
>>2]|0)+(c[o>>2]|0)|0;a[r>>0]=(d[r>>0]|0)&-128;r=(c[m>>2]|0)+(c[o>
x3e;2]|0)|0;a[r>>0]=d[r>>0]|0|2}c[o>>2]=(c[o>>2]|0)+1}Jd(c[j>>2]|0,c[p>
x3e;2]|0)|0;i=s;return c[h>>2]|0}function Im(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;f=g+4|0;d=
g;c[b>>2]=a;if(!(c[b>>2]|0)){i=g;return}c[e>>2]=c[(c[c[b>>2]>>2]|0)+100>
x3e;2];c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=4)break;if(c[(c[b>>2]|0)+12+(c[f
>>2]<<2)>>2]|0){c[d>>2]=c[3900+(c[f>>2]<<2)>>2];if(c[(c[d
x3e;>2]|0)+20>>2]|0)Va[c[(c[d>>2]|0)+20>>2]&63](c[(c[b>>2]|0)+12+(c[f>>
;2]<<2)>>2]|0);Fb(c[e>>2]|0,c[(c[b>>2]|0)+12+(c[f>>2]<<2)>>
;2]|0);c[(c[b>>2]|0)+12+(c[f>>2]<<2)>>2]=0}c[f>>2]=(c[f>>2]|0)+1}c[(
c[b>>2]|0)+4>>2]=0;c[(c[b>>2]|0)+8>>2]=0;c[c[b>>2]>>2]=0;Fb(c[e>
;>2]|0,c[b>>2]|0);c[b>>2]=0;i=g;return}function Jm(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;q=i;i=i+48|0;g=q+40|0;h=q+36|0;r=q+32|0;j=q+28|0;o=q+24|0;m=q+20|0;k=q+16|0;p=q+12|0;l=q+4|0;n=q;c[
g>>2]=a;c[h>>2]=b;c[r>>2]=e;c[j>>2]=f;c[o>>2]=0;c[p>>2]=c[r>>
;2]&15;c[q+8>>2]=5;c[l>>2]=0;if((c[h>>2]|0)>>>0>=(c[(c[g>>2]|0)+
4>>2]|0)>>>0){c[l>>2]=6;p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l
>>2]|0;i=q;return r|0}c[m>>2]=c[p>>2];if(!((c[m>>2]|0)!=0?((c[m>>2]|0)+1|0)>
;>>0<5:0))c[m>>2]=(d[(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]|0)>>0]|0)
x26;127;c[k>>2]=c[3900+(c[m>>2]<<2)>>2];if(!(c[p>>2]|0))c[p>>2]=c[c[
k>>2]>>2];c[o>>2]=c[(c[g>>2]|0)+12+(c[c[k>>2]>>2]<<2)>
;>2];if(c[o>>2]|0){p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l>>2]|0;i=q;return
r|0}c[n>>2]=c[(c[c[g>>2]>>2]|0)+100>>2];c[o>>2]=bc(c[n>>2]|0,c[(c[k
>>2]|0)+8>>2]|0,l)|0;if(c[l>>2]|0){p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p
;r=c[l>>2]|0;i=q;return r|0}c[c[o>>2]>>2]=c[k>>2];if(c[(c[k>>2]|0)+12>>
;2]|0?(c[l>>2]=Ya[c[(c[k>>2]|0)+12>>2]&127](c[o>>2]|0,c[c[g>>2]>>
;2]|0)|0,c[l>>2]|0):0){if(c[(c[k>>2]|0)+20>>2]|0)Va[c[(c[k>>2]|0)+20>>2]&
63](c[o>>2]|0);Fb(c[n>>2]|0,c[o>>2]|0);c[o>>2]=0;p=c[o>>2]|0;r=c[j>>
2]|0;c[r>>2]=p;r=c[l>>2]|0;i=q;return r|0}c[(c[g>>2]|0)+12+(c[c[k>>2]>>2]<
;<2)>>2]=c[o>>2];p=c[o>>2]|0;r=c[j>>2]|0;c[r>>2]=p;r=c[l>>2]|0;
i=q;return r|0}function Km(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;da=i;i=i+240|0;S=da+236|0;T=da+232|0;U=da+228|0;y=da+224|0;V=da+220|0;X=da+216|0;ea=da+212|0;Y=da+208|0;$=da+204|0;
Z=da+200|0;aa=da+196|0;_=da+192|0;l=da+176|0;r=da+168|0;q=da+164|0;p=da+160|0;u=da+156|0;x=da+152|0;m=da+148|0;n=da+144|0;o=da+140
|0;s=da+136|0;v=da+132|0;t=da+128|0;w=da+124|0;E=da+120|0;J=da+116|0;G=da+112|0;O=da+108|0;P=da+104|0;M=da+96|0;N=da+88|0;Q=da+84
|0;R=da+80|0;I=da+76|0;H=da+72|0;F=da+68|0;z=da+64|0;D=da+60|0;B=da+56|0;C=da+52|0;K=da+48|0;L=da+44|0;A=da+24|0;W=da+8|0;ba=da;
c[S>>2]=f;c[T>>2]=g;c[U>>2]=h;c[y>>2]=j;c[V>>2]=k;c[ea>>2]=c[c[S>
;>2]>>2];c[Y>>2]=c[(c[S>>2]|0)+8>>2];c[$>>2]=c[(c[S>>2]|0)+136
x3e;>2];c[Z>>2]=(c[S>>2]|0)+12;c[aa>>2]=c[(c[ea>>2]|0)+84>>2];c[_>
x3e;2]=c[(c[aa>>2]|0)+156>>2];c[X>>2]=Cb(c[ea>>2]|0,c[U>>2]|0,c[y>>2
]|0)|0;if(c[X>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}a[(c[S>>2]|0)+140>>0]=a[(c[_>>
;2]|0)+8>>0]|0;if(a[(c[S>>2]|0)+140>>0]|0){ea=(c[S>>2]|0)+144|0;g=(c[_>>2]|0)+
12|0;c[ea>>2]=c[g>>2];c[ea+4>>2]=c[g+4>>2];c[ea+8>>2]=c[g+8>>2];c[ea
+12>>2]=c[g+12>>2];ea=(c[S>>2]|0)+160|0;g=(c[_>>2]|0)+28|0;c[ea>>2]=c[g>
x3e;2];c[ea+4>>2]=c[g+4>>2];ea=(c[S>>2]|0)+144|0;c[l>>2]=c[ea>>2];c[l+4>
x3e;2]=c[ea+4>>2];c[l+8>>2]=c[ea+8>>2];c[l+12>>2]=c[ea+12>>2];Wb(l)|0;Lb((c[S
x3e;>2]|0)+160|0,l)}c[(c[aa>>2]|0)+56>>2]=c[(c[aa>>2]|0)+24+16>>2];c[(c[aa>>
;2]|0)+60>>2]=c[(c[aa>>2]|0)+24+28>>2];k=c[(c[aa>>2]|0)+72>>2]|0;a:do if((k|0)
x3e;=1869968492){switch(k|0){case 1869968492:break;default:{ca=49;break a}}if(a[(c[S>>2]|0)+140>>0]|0)Nb((c[
aa>>2]|0)+108|0,c[(c[S>>2]|0)+160>>2]|0,c[(c[S>>2]|0)+160+4>>2]|0);if(((b[(c[aa
>>2]|0)+108+2>>1]|0)+4|0)!=0?((b[(c[Y>>2]|0)+20+2>>1]|0)+(b[(c[Y>>2]|0)+56+2
x3e;>1]|0)+((b[(c[aa>>2]|0)+108+2>>1]|0)+4)|0)>>>0>(c[(c[Y>>2]|0)+4>
x3e;2]|0)>>>0:0)ca=11;else if((b[(c[aa>>2]|0)+108>>1]|0)!=0?((b[(c[Y>>2]|0)+20>
;>1]|0)+(b[(c[Y>>2]|0)+56>>1]|0)+(b[(c[aa>>2]|0)+108>>1]|0)|0)>>>0
x3e;(c[(c[Y>>2]|0)+8>>2]|0)>>>0:0)ca=11;else k=0;if((ca|0)==11)k=kc(c[Y>>2]|0,(b[(c
[aa>>2]|0)+108+2>>1]|0)+4|0,b[(c[aa>>2]|0)+108>>1]|0)|0;c[X>>2]=k;if(c[X>
x3e;2]|0){ea=c[X>>2]|0;i=da;return ea|0}Ss(c[(c[Y>>2]|0)+56+4>>2]|0,c[(c[aa>>2]|0)+108+4
>>2]|0,b[(c[aa>>2]|0)+108+2>>1]<<3|0)|0;Ss(c[(c[Y>>2]|0)+56+12>>2]|0
,c[(c[aa>>2]|0)+108+12>>2]|0,b[(c[aa>>2]|0)+108>>1]<<1|0)|0;Ss(c[(c[Y>>
;2]|0)+56+8>>2]|0,c[(c[aa>>2]|0)+108+8>>2]|0,b[(c[aa>>2]|0)+108+2>>1]|0)|0;b[(
c[Y>>2]|0)+56+2>>1]=b[(c[aa>>2]|0)+108+2>>1]|0;b[(c[Y>>2]|0)+56>>1]=
b[(c[aa>>2]|0)+108>>1]|0;c[(c[S>>2]|0)+168>>2]=c[(c[Z>>2]|0)+8>>2];c
[(c[S>>2]|0)+168+4>>2]=c[(c[Z>>2]|0)+16>>2];ea=Mb(c[(c[aa>>2]|0)+24+16>
x3e;2]|0,c[(c[Z>>2]|0)+4>>2]|0)|0;c[(c[S>>2]|0)+176>>2]=ea+(c[(c[Z>>2]|0)+8>
;>2]|0);c[(c[S>>2]|0)+176+4>>2]=c[(c[Z>>2]|0)+16>>2];if(b[(c[aa>>2]|0)+108
+2>>1]|0){if(c[(c[c[$>>2]>>2]|0)+28>>2]|0)Oa[c[(c[c[$>>2]>>2]|0)+28
x3e;>2]&63](c[Z>>2]|0,(c[Y>>2]|0)+56|0,c[$>>2]|0)|0;do if((c[(c[T>>2]|0)+20>
;>2]|0)!=1){c[m>>2]=(c[Z>>2]|0)+48;c[n>>2]=c[(c[m>>2]|0)+20>>2];c[o>
x3e;2]=(c[n>>2]|0)+((c[(c[m>>2]|0)+12>>2]|0)*48|0)+-48;if((c[(c[m>>2]|0)+12>>2
]|0)>1?(c[(c[Z>>2]|0)+104>>2]&4|0)==0:0){c[r>>2]=(c[(c[S>>2]|0)+176>>
;2]|0)-(c[(c[o>>2]|0)+4>>2]|0);c[q>>2]=c[(c[n>>2]|0)+4>>2];c[p>>2]=c
[(c[n>>2]|0)+8>>2];c[u>>2]=(c[p>>2]|0)-(c[q>>2]|0);c[x>>2]=(c[(c[o
x3e;>2]|0)+8>>2]|0)+(c[r>>2]|0);if((c[q>>2]|0)<24)c[u>>2]=(c[u>>2]|0
)-8;if((c[r>>2]|0)<24)c[x>>2]=(c[x>>2]|0)+8;c[(c[S>>2]|0)+168>>2]=(c[u>
;>2]|0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[x>>2]|0)+32&-64;if((c[q>>2]|0)>
;0?(c[(c[S>>2]|0)+168>>2]|0)>=(c[p>>2]|0):0){ea=(c[S>>2]|0)+168|0;c[ea>>2
]=(c[ea>>2]|0)-64}if((c[r>>2]|0)>0?(c[(c[S>>2]|0)+176>>2]|0)<=(c[(c[o>>
;2]|0)+8>>2]|0):0){ea=(c[S>>2]|0)+176|0;c[ea>>2]=(c[ea>>2]|0)+64}c[(c[aa>>2]|0
)+144>>2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[u>>2]|0);c[(c[aa>>2]|0)+148>>
2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[x>>2]|0);break}c[s>>2]=c[(c[S>>2]|0)+168>
x3e;2];c[v>>2]=c[(c[S>>2]|0)+176>>2];c[(c[S>>2]|0)+168>>2]=(c[s>>2]|
0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[v>>2]|0)+32&-64;c[(c[aa>>2]|0)+144>>
;2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[s>>2]|0);c[(c[aa>>2]|0)+148>>2]=(c[(c[S>
x3e;2]|0)+176>>2]|0)-(c[v>>2]|0)}else{c[t>>2]=c[(c[S>>2]|0)+168>>2];c[w>
x3e;2]=c[(c[S>>2]|0)+176>>2];c[(c[S>>2]|0)+168>>2]=(c[t>>2]|0)+(c[(c[Z>
x3e;2]|0)+116>>2]|0)+32&-64;c[(c[S>>2]|0)+176>>2]=(c[w>>2]|0)+(c[(c[Z>>2]|
0)+120>>2]|0)+32&-64;c[(c[aa>>2]|0)+144>>2]=(c[(c[S>>2]|0)+168>>2]|0)-(c[
t>>2]|0);c[(c[aa>>2]|0)+148>>2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[w>>2]|0
)}while(0);oc(c[Y>>2]|0)}}else{switch(k|0){case 1668246896:break;default:{ca=49;break a}}c[J>>2]=c[(c[aa>
;>2]|0)+128>>2];c[O>>2]=b[(c[Y>>2]|0)+20+2>>1];c[X>>2]=lc(c[Y>>
2]|0,c[J>>2]|0)|0;if(c[X>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}Ss(c[(c[Y>>2]|0)+56+32>
;>2]|0,c[(c[aa>>2]|0)+132>>2]|0,c[J>>2]<<5|0)|0;c[(c[Y>>2]|0)+56+28>
x3e;2]=c[J>>2];c[G>>2]=c[(c[Y>>2]|0)+20+28>>2];c[E>>2]=0;while(1){if((c[E>
;>2]|0)>>>0>=(c[J>>2]|0)>>>0)break a;c[P>>2]=(c[(c[Y>>2]|0
)+20+32>>2]|0)+(c[G>>2]<<5)+(c[E>>2]<<5);ea=(c[S>>2]|0)+168|0;c[M>
;>2]=c[ea>>2];c[M+4>>2]=c[ea+4>>2];ea=(c[S>>2]|0)+176|0;c[N>>2]=c[ea>
;>2];c[N+4>>2]=c[ea+4>>2];c[F>>2]=b[(c[Y>>2]|0)+20+2>>1];c[X>>2
]=Km(c[S>>2]|0,c[T>>2]|0,c[c[P>>2]>>2]|0,c[y>>2]|0,(c[V>>2]|0)+1|0)|
0;if(c[X>>2]|0){ca=63;break}c[P>>2]=(c[(c[Y>>2]|0)+20+32>>2]|0)+(c[G>>2]<
x3c;5)+(c[E>>2]<<5);k=(c[S>>2]|0)+168|0;if(e[(c[P>>2]|0)+4>>1]&512|0){c[M
>>2]=c[k>>2];c[M+4>>2]=c[k+4>>2];ea=(c[S>>2]|0)+176|0;c[N>>2]=c[ea
x3e;>2];c[N+4>>2]=c[ea+4>>2]}else{c[k>>2]=c[M>>2];c[k+4>>2]=c[M+4>
x3e;2];ea=(c[S>>2]|0)+176|0;c[ea>>2]=c[N>>2];c[ea+4>>2]=c[N+4>>2]}c[I>>
;2]=b[(c[Y>>2]|0)+20+2>>1];c[H>>2]=(c[I>>2]|0)-(c[F>>2]|0);b:do if(e[(c[P>
;>2]|0)+4>>1]&200|0){c[z>>2]=(c[(c[Y>>2]|0)+20+4>>2]|0)+(c[F>>2]<
;<3);c[D>>2]=(c[z>>2]|0)+(c[H>>2]<<3);while(1){if((c[z>>2]|0)>>
x3e;0>=(c[D>>2]|0)>>>0)break b;Lb(c[z>>2]|0,(c[P>>2]|0)+16|0);c[z>>2
]=(c[z>>2]|0)+8}}while(0);k=c[(c[P>>2]|0)+8>>2]|0;if(e[(c[P>>2]|0)+4>>1]&
2|0){ea=Mb(k,c[(c[Z>>2]|0)+4>>2]|0)|0;c[Q>>2]=ea+(c[(c[Z>>2]|0)+8>>2]|0);ea=Mb
(c[(c[P>>2]|0)+12>>2]|0,c[(c[Z>>2]|0)+12>>2]|0)|0;c[R>>2]=ea+(c[(c[Z>>
;2]|0)+16>>2]|0);c[Q>>2]=(c[Q>>2]|0)+32&-64;c[R>>2]=(c[R>>2]|0)+32&-
64}else{c[B>>2]=k;c[C>>2]=c[(c[P>>2]|0)+12>>2];if(((c[O>>2]|0)+(c[B>>
;2]|0)|0)>>>0>=(c[F>>2]|0)>>>0)break;if((c[C>>2]|0)>>>0>
;=(c[H>>2]|0)>>>0)break;c[C>>2]=(c[C>>2]|0)+(c[F>>2]|0);c[K>>2]=(
c[(c[Y>>2]|0)+20+4>>2]|0)+(c[O>>2]<<3)+(c[B>>2]<<3);c[L>>2
]=(c[(c[Y>>2]|0)+20+4>>2]|0)+(c[O>>2]<<3)+(c[C>>2]<<3);c[Q>>
;2]=(c[c[K>>2]>>2]|0)-(c[c[L>>2]>>2]|0);c[R>>2]=(c[(c[K>>2]|0)+4>
;>2]|0)-(c[(c[L>>2]|0)+4>>2]|0)}ea=(c[Y>>2]|0)+20|0;c[A>>2]=c[ea>>2];c[A+
4>>2]=c[ea+4>>2];c[A+8>>2]=c[ea+8>>2];c[A+12>>2]=c[ea+12>>2];c[A+16
x3e;>2]=c[ea+16>>2];ea=A+4|0;c[ea>>2]=(c[ea>>2]|0)+(c[F>>2]<<3);b[A+2>
;>1]=c[H>>2];Nb(A,c[Q>>2]|0,c[R>>2]|0);c[E>>2]=(c[E>>2]|0)+1}if((ca|0)==63
){ea=c[X>>2]|0;i=da;return ea|0}c[X>>2]=21;ea=c[X>>2]|0;i=da;return ea|0}while(0);if((ca|0)==49)c[
X>>2]=7;if(c[V>>2]|0){ea=c[X>>2]|0;i=da;return ea|0}c[ba>>2]=(c[(c[aa>>2]|0)+24
+20>>2]|0)-(c[(c[aa>>2]|0)+24+8>>2]|0);c[ba+4>>2]=(c[(c[aa>>2]|0)+24+24>
x3e;2]|0)-(c[(c[aa>>2]|0)+24+12>>2]|0);c[ba>>2]=Mb(c[ba>>2]|0,c[(c[$>>2]|0)+4+
4>>2]|0)|0;c[ba+4>>2]=Mb(c[ba+4>>2]|0,c[(c[$>>2]|0)+4+8>>2]|0)|0;if(a[(c[S>
;>2]|0)+140>>0]|0){Kb((c[Y>>2]|0)+20|0,(c[S>>2]|0)+144|0);Lb(ba,(c[S>>2]|0)+144|0)}
if(c[(c[S>>2]|0)+168>>2]|0)Nb((c[Y>>2]|0)+20|0,0-(c[(c[S>>2]|0)+168>>2]|0)|0,0
);_d((c[Y>>2]|0)+20|0,W);c[W>>2]=c[W>>2]&-64;c[W+4>>2]=c[W+4>>2]&-64
;c[W+8>>2]=(c[W+8>>2]|0)+63&-64;c[W+12>>2]=(c[W+12>>2]|0)+63&-64;c[(c[aa>
x3e;2]|0)+24>>2]=(c[W+8>>2]|0)-(c[W>>2]|0);c[(c[aa>>2]|0)+24+4>>2]=(c[W+12>
;>2]|0)-(c[W+4>>2]|0);c[(c[aa>>2]|0)+24+8>>2]=c[W>>2];c[(c[aa>>2]|0)+24+12
>>2]=c[W+12>>2];c[(c[aa>>2]|0)+24+20>>2]=(c[W>>2]|0)+(c[ba>>2]|0)&
;-64;c[(c[aa>>2]|0)+24+24>>2]=(c[W+12>>2]|0)+(c[ba+4>>2]|0)&-64;do if(!(c[(c[(c[aa
x3e;>2]|0)+4>>2]|0)+8>>2]&4|0)){if((Lm(c[(c[S>>2]|0)+4>>2]|0,c[U>>2]|
0)|0)&255|0?d[(c[$>>2]|0)+32>>0]|0:0){ca=58;break}if(c[(c[aa>>2]|0)+24+16>>2]|0)c[(
c[aa>>2]|0)+24+16>>2]=(c[(c[S>>2]|0)+176>>2]|0)-(c[(c[S>>2]|0)+168>>
2]|0)}else ca=58;while(0);if((ca|0)==58){ea=Mb(c[(c[aa>>2]|0)+24+16>>2]|0,c[(c[$>>2]|0)+4+4>
x3e;2]|0)|0;c[(c[aa>>2]|0)+24+16>>2]=ea;c[(c[aa>>2]|0)+144>>2]=0;c[(c[aa>>2]|0
)+148>>2]=0}ea=Mb(c[(c[aa>>2]|0)+24+28>>2]|0,c[(c[$>>2]|0)+4+8>>2]|0)|0;c[(c[aa
>>2]|0)+24+28>>2]=ea;c[(c[aa>>2]|0)+24+16>>2]=(c[(c[aa>>2]|0)+24+16>>
;2]|0)+32&-64;c[(c[aa>>2]|0)+24+28>>2]=(c[(c[aa>>2]|0)+24+28>>2]|0)+32&-64;dc(
c[c[_>>2]>>2]|0);c[X>>2]=pc(c[c[_>>2]>>2]|0,c[Y>>2]|0)|0;if(c[X>
;>2]|0){ea=c[X>>2]|0;i=da;return ea|0}ea=(c[aa>>2]|0)+108|0;ca=(c[c[_>>2]>>2]|0)+20
|0;c[ea>>2]=c[ca>>2];c[ea+4>>2]=c[ca+4>>2];c[ea+8>>2]=c[ca+8>>2];c[ea
+12>>2]=c[ca+12>>2];c[ea+16>>2]=c[ca+16>>2];c[(c[aa>>2]|0)+72>>2]=1869968492
;ea=c[X>>2]|0;i=da;return ea|0}function Lm(b,e){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[g
x3e;>2]=b;c[h>>2]=e;if((c[h>>2]|0)>>>0<(c[(c[g>>2]|0)+4>>2]|0)
x3e;>>0){a[f>>0]=(d[(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]|0)>>0]|0)&
128;b=a[f>>0]|0;i=j;return b|0}else{a[f>>0]=0;b=a[f>>0]|0;i=j;return b|0}return 0}function Mm(a){a
=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;a=Nm((c[d>>2]|0)+20|0,c[c[(c[d>>2]|0)+4>>2]
x3e;>2]|0)|0;i=b;return a|0}function Nm(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
x3e;>2]=b;Ns(c[e>>2]|0,0,184)|0;Hl((c[e>>2]|0)+12|0,c[f>>2]|0);b=ac(c[f>>2]|0,(c[e
x3e;>2]|0)+8|0)|0;i=d;return b|0}function Om(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Pm((c[d>>2
]|0)+20|0);i=b;return}function Pm(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Ol((c[d>>2]|0)+12|0);c[c[d
>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;fc(c[(c[d>>2]|0)+8>>2]|0);c[(c[d>
;>2]|0)+8>>2]=0;i=b;return}function Qm(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
x3e;>2]|0)+108|0}function Rm(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)+120
|0}function Sm(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)+148|0}function Tm(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]=c[(c[d>>2]|0)+8>
x3e;2];c[e>>2]=(c[d>>2]|0)+20;Um((c[d>>2]|0)+20|0,c[f>>2]|0)|0;Vm((c[d>>2]|0)+
108|0);bn((c[d>>2]|0)+120|0);c[(c[d>>2]|0)+120>>2]=c[e>>2];ao((c[d>>2]|0)+148|
0);c[(c[d>>2]|0)+148>>2]=c[e>>2];i=b;return 0}function Um(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i
+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;a=c[d>>2]|0;b=a+88|0;do{c[a>>2]=0;a=a+4|0}while((a
|0)<(b|0));c[c[d>>2]>>2]=c[e>>2];i=f;return 0}function Vm(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]=45;c[(c[d>>2]|0)+4>>2]=24;c[(c[d>>2]|0)+8
>>2]=36;i=b;return}function Wm(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;t=i;i=i+48
|0;h=t+40|0;j=t+36|0;k=t+32|0;p=t+28|0;o=t+24|0;l=t+20|0;q=t+16|0;m=t+12|0;r=t+8|0;n=t+4|0;s=t;c[h>>2]=a;c[j>>
;2]=f;c[k>>2]=g;c[p>>2]=0;c[p>>2]=bc(c[h>>2]|0,2496,o)|0;if(c[o>>2]|0){r=c[p
x3e;>2]|0;s=c[k>>2]|0;c[s>>2]=r;s=c[o>>2]|0;i=t;return s|0}c[c[p>>2]>>2]=
c[h>>2];c[m>>2]=(c[p>>2]|0)+4+204;c[r>>2]=(c[m>>2]|0)+4;c[c[r>>2]>
;>2]=e[(c[j>>2]|0)+120>>1];c[r>>2]=(c[r>>2]|0)+12;c[q>>2]=(c[j>>
;2]|0)+128;c[l>>2]=d[(c[j>>2]|0)+124>>0];while(1){if((c[l>>2]|0)>>>0<
;=0)break;c[c[r>>2]>>2]=b[c[q>>2]>>1];c[r>>2]=(c[r>>2]|0)+12;c[q>
;>2]=(c[q>>2]|0)+2;c[l>>2]=(c[l>>2]|0)+-1}c[c[m>>2]>>2]=(d[(c[j>>
;2]|0)+124>>0]|0)+1;c[n>>2]=(c[p>>2]|0)+4;c[s>>2]=(c[n>>2]|0)+4;c[c[s>>
;2]>>2]=e[(c[j>>2]|0)+122>>1];c[s>>2]=(c[s>>2]|0)+12;c[q>>2]=(c[j>
;>2]|0)+154;c[l>>2]=d[(c[j>>2]|0)+125>>0];while(1){if((c[l>>2]|0)>>>
0<=0)break;c[c[s>>2]>>2]=b[c[q>>2]>>1];c[s>>2]=(c[s>>2]|0)+12;c
[q>>2]=(c[q>>2]|0)+2;c[l>>2]=(c[l>>2]|0)+-1}c[c[n>>2]>>2]=(d[(c[j>
;>2]|0)+125>>0]|0)+1;Xm((c[p>>2]|0)+412|0,d[(c[j>>2]|0)+8>>0]|0,(c[j>>2]|
0)+12|0,d[(c[j>>2]|0)+9>>0]|0,(c[j>>2]|0)+40|0,c[(c[j>>2]|0)+116>>2]|0,0);Xm((
c[p>>2]|0)+412|0,d[(c[j>>2]|0)+10>>0]|0,(c[j>>2]|0)+60|0,d[(c[j>>2]|0)+11>
;>0]|0,(c[j>>2]|0)+88|0,c[(c[j>>2]|0)+116>>2]|0,1);c[(c[p>>2]|0)+412+2064>>
;2]=c[(c[j>>2]|0)+108>>2];c[(c[p>>2]|0)+412+2068>>2]=c[(c[j>>2]|0)+112>
x3e;2];c[(c[p>>2]|0)+412+2076>>2]=c[(c[j>>2]|0)+116>>2];c[(c[p>>2]|0)+4+196>
;>2]=0;c[(c[p>>2]|0)+4+200>>2]=0;c[(c[p>>2]|0)+4+204+196>>2]=0;c[(c[p>>2]|
0)+4+204+200>>2]=0;r=c[p>>2]|0;s=c[k>>2]|0;c[s>>2]=r;s=c[o>>2]|0;i=t;return s|
0}function Xm(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;C=i;i=i+80|0;j=C+76|0;t=C+72|0;k=C+68|0;l=C+64|0;m=C+60|0;u=C+56|0;D=C+52|0;q=C+48|0;w=C+44|0;n=C
+40|0;x=C+36|0;r=C+32|0;o=C+28|0;s=C+24|0;p=C+20|0;z=C+16|0;A=C+12|0;v=C+8|0;y=C+4|0;B=C;c[j>>2]=a;c[t>>2]=b
;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[u>>2]=g;c[D>>2]=h;d=c[j>>2]|0;if(c[
D>>2]|0){c[q>>2]=d+1032;c[w>>2]=(c[j>>2]|0)+1548}else{c[q>>2]=d;c[w>>
;2]=(c[j>>2]|0)+516}c[c[q>>2]>>2]=0;c[c[w>>2]>>2]=0;Ym(c[j>>2]|0,0,c
[t>>2]|0,c[k>>2]|0,c[q>>2]|0,c[w>>2]|0);Ym(c[j>>2]|0,1,c[l>>2]|0,c[m
>>2]|0,c[q>>2]|0,c[w>>2]|0);c[n>>2]=c[c[q>>2]>>2];c[x>>2]=
c[c[w>>2]>>2];a:do if((c[n>>2]|0)>0){c[r>>2]=(c[q>>2]|0)+4;c[t>>
;2]=c[n>>2];while(1){if((c[t>>2]|0)>>>0<=0)break a;if((c[t>>2]|0)>>
x3e;0>1?(c[o>>2]=(c[(c[r>>2]|0)+32>>2]|0)-(c[c[r>>2]>>2]|0),(c[(c[r>
x3e;2]|0)+4>>2]|0)>(c[o>>2]|0)):0)c[(c[r>>2]|0)+4>>2]=c[o>>2];c[(c[r>
;>2]|0)+12>>2]=c[c[r>>2]>>2];c[(c[r>>2]|0)+8>>2]=(c[(c[r>>2]|0)+
4>>2]|0)+(c[c[r>>2]>>2]|0);c[t>>2]=(c[t>>2]|0)+-1;c[r>>2]=(c[r>
x3e;2]|0)+32}}while(0);b:do if((c[x>>2]|0)>0){c[s>>2]=(c[w>>2]|0)+4;c[t>>2]=c[x>
;>2];while(1){if((c[t>>2]|0)>>>0<=0)break b;if((c[t>>2]|0)>>>0>
1?(c[p>>2]=(c[c[s>>2]>>2]|0)-(c[(c[s>>2]|0)+32>>2]|0),(c[(c[s>>2]|0)+
4>>2]|0)<(c[p>>2]|0)):0)c[(c[s>>2]|0)+4>>2]=c[p>>2];c[(c[s>>2]|
0)+8>>2]=c[c[s>>2]>>2];c[(c[s>>2]|0)+12>>2]=(c[(c[s>>2]|0)+4>
x3e;2]|0)+(c[c[s>>2]>>2]|0);c[t>>2]=(c[t>>2]|0)+-1;c[s>>2]=(c[s>>2]|
0)+32}}while(0);c[B>>2]=(c[q>>2]|0)+4;c[t>>2]=c[n>>2];c[z>>2]=1;while(1){if((c
[z>>2]|0)<0)break;if((c[t>>2]|0)>>>0>0){D=(c[B>>2]|0)+12|0;c[D>>
;2]=(c[D>>2]|0)-(c[u>>2]|0);c[A>>2]=c[(c[B>>2]|0)+8>>2];c[t>>2]=(c[t
>>2]|0)+-1;while(1){if((c[t>>2]|0)>>>0<=0)break;c[v>>2]=c[(c[B>>2]|0
)+32+12>>2];c[y>>2]=(c[v>>2]|0)-(c[A>>2]|0);d=c[A>>2]|0;if((c[y>>2]|
0)<(c[u>>2]<<1|0)){D=d+((c[y>>2]|0)/2|0)|0;c[(c[B>>2]|0)+32+12>>2]=D;c[(c
[B>>2]|0)+8>>2]=D}else{c[(c[B>>2]|0)+8>>2]=d+(c[u>>2]|0);c[(c[B>>2]|
0)+32+12>>2]=(c[v>>2]|0)-(c[u>>2]|0)}c[B>>2]=(c[B>>2]|0)+32;c[A>>2]=
c[(c[B>>2]|0)+8>>2];c[t>>2]=(c[t>>2]|0)+-1}c[(c[B>>2]|0)+8>>2]=(c[A
x3e;>2]|0)+(c[u>>2]|0)}c[B>>2]=(c[w>>2]|0)+4;c[t>>2]=c[x>>2];c[z>>
;2]=(c[z>>2]|0)+-1}i=C;return}function Ym(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;A=i;i=i+64|0;B=A+48|0;l=A+54|0;m=A+44|0;n=A+40|0;o=A+36|0;p=A+32|0;s=A+28|0;r=A+24|
0;v=A+53|0;w=A+20|0;t=A+16|0;q=A+12|0;z=A+8|0;y=A+4|0;x=A+52|0;u=A;c[B>>2]=e;a[l>>0]=f;c[m>>2]=g;c
[n>>2]=h;c[o>>2]=j;c[p>>2]=k;c[s>>2]=c[c[o>>2]>>2];c[r>>2]=
c[c[p>>2]>>2];a[v>>0]=1;c[B>>2]=c[B>>2];while(1){if((c[m>>2]|0)>
;>>0<=1)break;a[x>>0]=0;if(!(d[v>>0]|0)?!(d[l>>0]|0):0){c[w>>2]=b[c[n>
;>2]>>1];c[t>>2]=(b[(c[n>>2]|0)+2>>1]|0)-(c[w>>2]|0);c[z>>2]=(c
[o>>2]|0)+4;c[q>>2]=c[s>>2];a[x>>0]=1}else{c[w>>2]=b[(c[n>>2]|0)+2
x3e;>1];c[t>>2]=(b[c[n>>2]>>1]|0)-(c[w>>2]|0);c[z>>2]=(c[p>>2]|
0)+4;c[q>>2]=c[r>>2];a[v>>0]=0}c[y>>2]=c[z>>2];while(1){if((c[q>>2]|
0)>>>0<=0){k=17;break}if((c[w>>2]|0)<(c[c[y>>2]>>2]|0)){k=17;break}if((c[
w>>2]|0)==(c[c[y>>2]>>2]|0)){k=11;break}c[q>>2]=(c[q>>2]|0)+-1;c[y>>
2]=(c[y>>2]|0)+32}do if((k|0)==11){c[u>>2]=c[(c[y>>2]|0)+4>>2];k=c[t>>2]|0;f=c
[u>>2]|0;if((c[t>>2]|0)<0){if((k|0)>=(f|0))break;c[(c[y>>2]|0)+4>>2]=c[t>
x3e;2];break}else{if((k|0)<=(f|0))break;c[(c[y>>2]|0)+4>>2]=c[t>>2];break}}else if((k|0)==17){
while(1){if((c[q>>2]|0)>>>0<=0)break;k=(c[y>>2]|0)+(c[q>>2]<<5)|0;B=(
c[y>>2]|0)+((c[q>>2]|0)-1<<5)|0;c[k>>2]=c[B>>2];c[k+4>>2]=c[B+4>
;>2];c[k+8>>2]=c[B+8>>2];c[k+12>>2]=c[B+12>>2];c[k+16>>2]=c[B+16>>
;2];c[k+20>>2]=c[B+20>>2];c[k+24>>2]=c[B+24>>2];c[k+28>>2]=c[B+28>>2
];c[q>>2]=(c[q>>2]|0)+-1;k=17}c[c[y>>2]>>2]=c[w>>2];c[(c[y>>2]|0)+4
x3e;>2]=c[t>>2];if(a[x>>0]|0){c[s>>2]=(c[s>>2]|0)+1;break}else{c[r>>2]=(c
[r>>2]|0)+1;break}}while(0);c[n>>2]=(c[n>>2]|0)+4;c[m>>2]=(c[m>>2]|0)-2}c[c[o
x3e;>2]>>2]=c[s>>2];c[c[p>>2]>>2]=c[r>>2];i=A;return}function Zm(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;n=i;i=i+32|0;g=n+20|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+4|0;m=n;c[g
>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=(c[g>>
;2]|0)+4;c[m>>2]=(c[g>>2]|0)+4;if(!((c[h>>2]|0)==(c[(c[m>>2]|0)+196>>2]|0)?(c[
k>>2]|0)==(c[(c[m>>2]|0)+200>>2]|0):0)){c[(c[m>>2]|0)+196>>2]=c[h>>2
];c[(c[m>>2]|0)+200>>2]=c[k>>2];_m(c[g>>2]|0,0)}c[m>>2]=(c[g>>2]|0)+
4+204;if((c[j>>2]|0)==(c[(c[m>>2]|0)+196>>2]|0)?(c[l>>2]|0)==(c[(c[m>>2]|0)+200
>>2]|0):0){i=n;return 0}c[(c[m>>2]|0)+196>>2]=c[j>>2];c[(c[m>>2]|0)+200>
x3e;2]=c[l>>2];_m(c[g>>2]|0,1);$m((c[g>>2]|0)+412|0,c[j>>2]|0,c[l>>2]|0);i=n;return
0}function _m(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;k=i;i=i+48|0;o=k+36|0;n=k+32|0;l=k+28|0;m=k+24|0
;d=k+20|0;j=k+16|0;g=k+12|0;f=k+8|0;h=k+4|0;e=k;c[o>>2]=a;c[n>>2]=b;c[l>>2]=(c[o>>2]|0)+
4+((c[n>>2]|0)*204|0);c[m>>2]=c[l>>2];c[d>>2]=c[c[m>>2]>>2];c[j>
;>2]=(c[m>>2]|0)+4;c[g>>2]=c[j>>2];c[f>>2]=c[(c[l>>2]|0)+196>>2
];if((c[d>>2]|0)>>>0<=0){i=k;return}o=Mb(c[c[j>>2]>>2]|0,c[f>>2]|0)|
0;c[(c[j>>2]|0)+4>>2]=o;c[(c[j>>2]|0)+8>>2]=(c[(c[j>>2]|0)+4>>2]|0)+
32&-64;c[j>>2]=(c[j>>2]|0)+12;c[d>>2]=(c[d>>2]|0)+-1;while(1){if((c[d>>2]|
0)>>>0<=0)break;c[h>>2]=Mb(c[c[j>>2]>>2]|0,c[f>>2]|0)|0;c[e>>
;2]=(c[h>>2]|0)-(c[(c[g>>2]|0)+4>>2]|0);if((c[e>>2]|0)<0)c[e>>2]=0-(c[e
x3e;>2]|0);if((c[e>>2]|0)<128)c[h>>2]=c[(c[g>>2]|0)+4>>2];c[(c[j>>2]|
0)+4>>2]=c[h>>2];c[(c[j>>2]|0)+8>>2]=(c[h>>2]|0)+32&-64;c[d>>2]=(
c[d>>2]|0)+-1;c[j>>2]=(c[j>>2]|0)+12}i=k;return}function $m(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;w=i;i=i+64|0;l=w+56|0;m=w+52|0;f=w+48|0;g=w+44|0;s=w+40|0;h=w+36|0;j=
w+32|0;k=w+28|0;t=w+24|0;u=w+20|0;o=w+16|0;p=w+12|0;r=w+8|0;q=w+4|0;n=w;c[l>>2]=b;c[m>>2]=d;c[f>>2
]=e;c[h>>2]=0;b=c[m>>2]|0;if((c[m>>2]|0)>=34359738)a[(c[l>>2]|0)+2080>>0]=(
b|0)<((c[(c[l>>2]|0)+2064>>2]<<3|0)/125|0|0);else a[(c[l>>2]|0)+2080>>0]=(
b*125|0)<(c[(c[l>>2]|0)+2064>>2]<<3|0);c[j>>2]=c[(c[l>>2]|0)+2068>
x3e;2];while(1){if((c[j>>2]|0)>0)b=(Mb(c[j>>2]|0,c[m>>2]|0)|0)>32;else b=0;e=c[j>
x3e;2]|0;if(!b)break;c[j>>2]=e+-1}c[(c[l>>2]|0)+2072>>2]=e;c[s>>2]=0;while(1){if((c[s>
;>2]|0)>>>0>=4)break;switch(c[s>>2]|0){case 0:{c[h>>2]=c[l>>2];break}case
1:{c[h>>2]=(c[l>>2]|0)+516;break}case 2:{c[h>>2]=(c[l>>2]|0)+1032;break}default:c[h>
;>2]=(c[l>>2]|0)+1548}c[k>>2]=(c[h>>2]|0)+4;c[g>>2]=c[c[h>>2]>>
2];while(1){if((c[g>>2]|0)>>>0<=0)break;j=Mb(c[(c[k>>2]|0)+8>>2]|0,c[m>
x3e;2]|0)|0;c[(c[k>>2]|0)+28>>2]=j+(c[f>>2]|0);j=Mb(c[(c[k>>2]|0)+12>>2]|0,c[m
>>2]|0)|0;c[(c[k>>2]|0)+24>>2]=j+(c[f>>2]|0);j=Mb(c[c[k>>2]>>2]|0,c[
m>>2]|0)|0;c[(c[k>>2]|0)+16>>2]=j+(c[f>>2]|0);j=Mb(c[(c[k>>2]|0)+4>>
2]|0,c[m>>2]|0)|0;c[(c[k>>2]|0)+20>>2]=j;c[(c[k>>2]|0)+16>>2]=(c[(c[k>>
;2]|0)+16>>2]|0)+32&-64;c[g>>2]=(c[g>>2]|0)+-1;c[k>>2]=(c[k>>2]|0)+32}c[s
>>2]=(c[s>>2]|0)+1}c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=2)break;b=
c[l>>2]|0;if(!(c[s>>2]|0)){c[r>>2]=b;c[q>>2]=(c[l>>2]|0)+1032}else{c[r>
x3e;2]=b+516;c[q>>2]=(c[l>>2]|0)+1548}c[t>>2]=(c[r>>2]|0)+4;c[o>>2]=c[c[r>
;>2]>>2];while(1){if((c[o>>2]|0)>>>0<=0)break;c[u>>2]=(c[q>>2]|
0)+4;c[p>>2]=c[c[q>>2]>>2];while(1){if((c[p>>2]|0)>>>0<=0)break;c[n
x3e;>2]=(c[c[t>>2]>>2]|0)-(c[c[u>>2]>>2]|0);if((c[n>>2]|0)<0)c[n>
;>2]=0-(c[n>>2]|0);if((Mb(c[n>>2]|0,c[m>>2]|0)|0)<64){v=32;break}c[p>>2]=(c[p
x3e;>2]|0)+-1;c[u>>2]=(c[u>>2]|0)+32}if((v|0)==32){v=0;c[(c[t>>2]|0)+28>>2]=c[(c[u
x3e;>2]|0)+28>>2];c[(c[t>>2]|0)+24>>2]=c[(c[u>>2]|0)+24>>2];c[(c[t>
x3e;2]|0)+16>>2]=c[(c[u>>2]|0)+16>>2];c[(c[t>>2]|0)+20>>2]=c[(c[u>>2
]|0)+20>>2]}c[o>>2]=(c[o>>2]|0)+-1;c[t>>2]=(c[t>>2]|0)+32}c[s>>2]=(c
[s>>2]|0)+1}i=w;return}function an(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(!(c[b>
;>2]|0)){i=e;return}c[d>>2]=c[c[b>>2]>>2];c[(c[b>>2]|0)+4>>2]=0;c[(c[b>
;>2]|0)+4+204>>2]=0;c[(c[b>>2]|0)+412>>2]=0;c[(c[b>>2]|0)+412+516>>2]=0;c
[(c[b>>2]|0)+412+1032>>2]=0;c[(c[b>>2]|0)+412+1548>>2]=0;Fb(c[d>>2]|0,c[b>
;>2]|0);c[b>>2]=0;i=e;return}function bn(b){b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;e=f;c[e>>2]=b;b=c[e>
;>2]|0;d=b+28|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(d|0));c[(c[e>>2]|0)+4>>2]=37;c[(c[e>
;>2]|0)+8>>2]=108;c[(c[e>>2]|0)+12>>2]=13;c[(c[e>>2]|0)+16>>2]=14;c[(c[e
x3e;>2]|0)+20>>2]=5;c[(c[e>>2]|0)+24>>2]=24;i=f;return}function cn(a){a=a|0;var b=0,d=0;b=i;i
=i+16|0;d=b;c[d>>2]=a;dn(c[d>>2]|0,1);i=b;return}function dn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d
=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;b=(c[d>>2]|0)+4|0;if(((c[e>>2]|0)+-1|0)>>>
0<2){c[b>>2]=0;c[(c[d>>2]|0)+12>>2]=c[e>>2];en((c[d>>2]|0)+16|0);en((c[d
x3e;>2]|0)+16+36|0);i=f;return}else{c[b>>2]=6;c[(c[d>>2]|0)+12>>2]=c[e>>2];i=f;return
}}function en(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]=0;c[(c[d>>2]|
0)+12>>2]=0;c[(c[d>>2]|0)+24>>2]=0;i=b;return}function fn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0
,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;g=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[g>>2]=c[(c[d>
x3e;2]|0)+4>>2];if(c[g>>2]|0){h=c[g>>2]|0;i=j;return h|0}c[h>>2]=c[c[d>>2]>
;>2];c[f>>2]=(c[d>>2]|0)+16;c[g>>2]=gn(c[f>>2]|0,c[e>>2]|0,c[h>>
;2]|0)|0;if(c[g>>2]|0){h=c[g>>2]|0;i=j;return h|0}c[g>>2]=gn((c[f>>2]|0)+36|0,c[e>
x3e;2]|0,c[h>>2]|0)|0;h=c[g>>2]|0;i=j;return h|0}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+16|0;g=e+8|0;h=e+4|0;f=e;c[g>>2]=a;c[h>>2]=b;c[f>>2]=d;hn(c[g>>2]|0,c[h>>
;2]|0);d=jn((c[g>>2]|0)+24|0,c[f>>2]|0)|0;i=e;return d|0}function hn(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|0)+12
>>2];if((c[f>>2]|0)>>>0<=0){i=h;return}c[g>>2]=(c[(c[d>>2]|0)+12+8
x3e;>2]|0)+(c[f>>2]<<4)+-16;c[(c[g>>2]|0)+12>>2]=c[e>>2];i=h;return}function
jn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+16|0;e=k+12|0;g=k+8|0;h=k+4|0;f=k;c[d>>2]=a;c[e
x3e;>2]=b;c[f>>2]=0;c[g>>2]=(c[c[d>>2]>>2]|0)-1;while(1){if((c[g>>2]|0)
x3c;=0){j=9;break}c[h>>2]=(c[g>>2]|0)-1;while(1){if((c[h>>2]|0)<0)break;if(kn(c[d>>
2]|0,c[g>>2]|0,c[h>>2]|0)|0){j=6;break}c[h>>2]=(c[h>>2]|0)+-1}if((j|0)==6?(j=0,c[f>
x3e;2]=ln(c[d>>2]|0,c[h>>2]|0,c[g>>2]|0,c[e>>2]|0)|0,c[f>>2]|0):0){j=9;break}c
[g>>2]=(c[g>>2]|0)+-1}if((j|0)==9){i=k;return c[f>>2]|0}return 0}function kn(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;l=i;i=i+48|0;f=l+40|0;r=l+36|0;s=l+32|0;q=l+28|0;p=l+24|0;o=l+20|0;h
=l+16|0;j=l+12|0;n=l+8|0;m=l+4|0;g=l;c[r>>2]=a;c[s>>2]=b;c[q>>2]=e;c[p>>2]=(c[(c[r>
x3e;2]|0)+8>>2]|0)+(c[s>>2]<<4);c[o>>2]=(c[(c[r>>2]|0)+8>>2]|0)+(c[q
>>2]<<4);c[h>>2]=c[(c[p>>2]|0)+8>>2];c[j>>2]=c[(c[o>>2]|0)+
8>>2];c[n>>2]=c[c[p>>2]>>2];c[m>>2]=c[c[o>>2]>>2];c[g>
;>2]=(c[n>>2]|0)>>>0<=(c[m>>2]|0)>>>0?c[n>>2]|0:c[m>
x3e;2]|0;while(1){if((c[g>>2]|0)>>>0<8)break;if((d[c[h>>2]>>0]|0)&(d[c[j
x3e;>2]>>0]|0)|0){k=4;break}c[h>>2]=(c[h>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1;c
[g>>2]=(c[g>>2]|0)-8}if((k|0)==4){c[f>>2]=1;s=c[f>>2]|0;i=l;return s|0}if(!(c[g>>
;2]|0)){c[f>>2]=0;s=c[f>>2]|0;i=l;return s|0}else{c[f>>2]=(d[c[h>>2]>>0]|0)&
;(d[c[j>>2]>>0]|0)&~(255>>c[g>>2]);s=c[f>>2]|0;i=l;return s|0}return 0}function
ln(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;x=i;i=i+80|0;h=x+68|0;j
=x+64|0;k=x+60|0;l=x+56|0;v=x+52|0;q=x+48|0;r=x+44|0;s=x+40|0;m=x+36|0;n=x+32|0;o=x+28|0;t=x+24|0;u=x+20|0;w=x+16|0;p=x;c[h>
;>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[q>>2]=0;if((c[j>>2]|0)>(c[k
x3e;>2]|0)){c[v>>2]=c[j>>2];c[j>>2]=c[k>>2];c[k>>2]=c[v>>2]}if(!((
c[j>>2]|0)>=0?(c[j>>2]|0)<(c[k>>2]|0):0)){w=c[q>>2]|0;i=x;return w|0}if((c[k
x3e;>2]|0)>=(c[c[h>>2]>>2]|0)){w=c[q>>2]|0;i=x;return w|0}c[r>>2]=(c[(c[h>
;>2]|0)+8>>2]|0)+(c[j>>2]<<4);c[s>>2]=(c[(c[h>>2]|0)+8>>2]|0)+(
c[k>>2]<<4);c[m>>2]=c[c[r>>2]>>2];c[n>>2]=c[c[s>>2]>
x3e;2];a:do if((c[n>>2]|0)>>>0>0){b:do if((c[n>>2]|0)>>>0>(c[m>
x3e;2]|0)>>>0){c[q>>2]=mn(c[r>>2]|0,c[n>>2]|0,c[l>>2]|0)|0;if(c[q>
x3e;2]|0){w=c[q>>2]|0;i=x;return w|0}c[t>>2]=c[m>>2];while(1){if((c[t>>2]|0)>>
x3e;0>=(c[n>>2]|0)>>>0)break b;nn(c[r>>2]|0,c[t>>2]|0);c[t>>2]=(c[t
x3e;>2]|0)+1}}while(0);c[u>>2]=c[(c[s>>2]|0)+8>>2];c[w>>2]=c[(c[r>>2]|0)+
8>>2];c[t>>2]=((c[n>>2]|0)+7|0)>>>3;while(1){if((c[t>>2]|0)>>
x3e;0<=0)break a;a[c[w>>2]>>0]=d[c[w>>2]>>0]|0|(d[c[u>>2]>>0]|0
);c[w>>2]=(c[w>>2]|0)+1;c[u>>2]=(c[u>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+-1
}}while(0);c[c[s>>2]>>2]=0;c[(c[s>>2]|0)+12>>2]=0;c[o>>2]=(c[c[h>>2]
x3e;>2]|0)-1-(c[k>>2]|0);if((c[o>>2]|0)>0){w=c[s>>2]|0;c[p>>2]=c[w>>
2];c[p+4>>2]=c[w+4>>2];c[p+8>>2]=c[w+8>>2];c[p+12>>2]=c[w+12>>2];Ts(
c[s>>2]|0,(c[s>>2]|0)+16|0,c[o>>2]<<4|0)|0;w=(c[s>>2]|0)+(c[o>>2]<
;<4)|0;c[w>>2]=c[p>>2];c[w+4>>2]=c[p+4>>2];c[w+8>>2]=c[p+8>>2];
c[w+12>>2]=c[p+12>>2]}w=c[h>>2]|0;c[w>>2]=(c[w>>2]|0)+-1;w=c[q>>2]|0
;i=x;return w|0}function mn(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;k=i;i=i+32|0;e=k+20|0;l=k+16|0;f=k+12|0;j=k
+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=((c[(c[e>>2]|0)+4>
x3e;2]|0)+7|0)>>>3;c[h>>2]=((c[l>>2]|0)+7|0)>>>3;c[g>>2]=0;if((c[h
x3e;>2]|0)>>>0<=(c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>
;>2]=(c[h>>2]|0)+7&-8;l=hc(c[f>>2]|0,1,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2
]|0)+8>>2]|0,g)|0;c[(c[e>>2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l
|0}c[(c[e>>2]|0)+4>>2]=c[h>>2]<<3;l=c[g>>2]|0;i=k;return l|0}function nn(b,e){
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]=b;c[g>>2]=e;if((c[g>>2]|0
)>>>0>=(c[c[f>>2]>>2]|0)>>>0){i=j;return}c[h>>2]=(c[(c[f>
x3e;2]|0)+8>>2]|0)+(c[g>>2]>>3);a[c[h>>2]>>0]=(d[c[h>>2]>>
0]|0)&~(128>>(c[g>>2]&7));i=j;return}function on(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]=(Tb(c[c
[j>>2]>>2]|0)|0)>>16;c[f+4>>2]=(Tb(c[(c[j>>2]|0)+4>>2]|0)|0)>
x3e;16;pn(c[h>>2]|0,c[g>>2]|0,1,f);i=e;return}function pn(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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;h=o+16|0;j=o+12|0;k=o+8|0;l=o+4|0;m=o;c[f>>2]=a;c[g>>2
]=b;c[h>>2]=d;c[j>>2]=e;if(c[(c[f>>2]|0)+4>>2]|0){i=o;return}if((c[g>>2]|0)<
;0|(c[g>>2]|0)>1)c[g>>2]=(c[g>>2]|0)!=0&1;if(((c[(c[f>>2]|0)+12>>2]|
0)+-1|0)>>>0>=2){i=o;return}c[k>>2]=(c[f>>2]|0)+16+((c[g>>2]|0)*36|0);while(1){
if((c[h>>2]|0)>>>0<=0){n=10;break}c[m>>2]=c[c[f>>2]>>2];c[l>>
;2]=qn(c[k>>2]|0,c[c[j>>2]>>2]|0,c[(c[j>>2]|0)+4>>2]|0,c[m>>2]|0,0)|
0;if(c[l>>2]|0)break;c[h>>2]=(c[h>>2]|0)+-1;c[j>>2]=(c[j>>2]|0)+8}if((n|0)==10
){i=o;return}c[(c[f>>2]|0)+4>>2]=c[l>>2];i=o;return}function qn(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;s=i;i=i+48|0;g=s+40|0;h=s+36|0;j=s+32|0;k=s+28|0;l=s+24|0;m=s+20|0;n=
s+16|0;q=s+12|0;p=s+8|0;r=s+4|0;o=s;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>
;2]=f;c[m>>2]=0;c[n>>2]=0;if((c[j>>2]|0)<0){c[n>>2]=c[n>>2]|1;if((c[j>
;>2]|0)==-21){c[n>>2]=c[n>>2]|2;c[h>>2]=(c[h>>2]|0)+(c[j>>2]|0)}c[j>
x3e;2]=0}if(c[l>>2]|0)c[c[l>>2]>>2]=-1;c[r>>2]=c[c[g>>2]>>2];c[o>
;>2]=c[(c[g>>2]|0)+8>>2];c[p>>2]=0;while(1){if((c[p>>2]|0)>>>0>=(
c[r>>2]|0)>>>0)break;if((c[c[o>>2]>>2]|0)==(c[h>>2]|0)?(c[(c[o>>
;2]|0)+4>>2]|0)==(c[j>>2]|0):0)break;c[p>>2]=(c[p>>2]|0)+1;c[o>>2]=(c[o>
x3e;2]|0)+12}do if((c[p>>2]|0)>>>0>=(c[r>>2]|0)>>>0){c[m>>2]=rn
(c[g>>2]|0,c[k>>2]|0,o)|0;if(c[m>>2]|0){b=c[m>>2]|0;i=s;return b|0}else{c[c[o>>
;2]>>2]=c[h>>2];c[(c[o>>2]|0)+4>>2]=c[j>>2];c[(c[o>>2]|0)+8>>
;2]=c[n>>2];break}}while(0);c[m>>2]=tn((c[g>>2]|0)+12|0,c[k>>2]|0,q)|0;if(c[m>>
;2]|0){b=c[m>>2]|0;i=s;return b|0}c[m>>2]=wn(c[q>>2]|0,c[p>>2]|0,c[k>>2]|0)|0;
if(!((c[m>>2]|0)==0&(c[l>>2]|0)!=0)){b=c[m>>2]|0;i=s;return b|0}c[c[l>>2]>>
;2]=c[p>>2];b=c[m>>2]|0;i=s;return b|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;
l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;j=l+8|0;h=l+4|0;k=l;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>
;>2]=0;c[k>>2]=0;c[h>>2]=c[c[e>>2]>>2];c[h>>2]=(c[h>>2]|0)+1;if
((c[h>>2]|0)>>>0>=(c[(c[e>>2]|0)+4>>2]|0)>>>0?(c[j>>2
]=sn(c[e>>2]|0,c[h>>2]|0,c[f>>2]|0)|0,c[j>>2]|0):0){b=c[k>>2]|0;a=c[g>>
;2]|0;c[a>>2]=b;a=c[j>>2]|0;i=l;return a|0}c[k>>2]=(c[(c[e>>2]|0)+8>>2]|0)+((c
[h>>2]|0)*12|0)+-12;c[c[k>>2]>>2]=0;c[(c[k>>2]|0)+4>>2]=0;c[(c[k>>2]|
0)+8>>2]=0;c[c[e>>2]>>2]=c[h>>2];b=c[k>>2]|0;a=c[g>>2]|0;c[a>
x3e;2]=b;a=c[j>>2]|0;i=l;return a|0}function sn(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;k=i;i=i+32|0;
e=k+20|0;l=k+16|0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=c[(
c[e>>2]|0)+4>>2];c[h>>2]=c[l>>2];c[g>>2]=0;if((c[h>>2]|0)>>
;>0<=(c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>>2]=(c[h>>
2]|0)+7&-8;l=hc(c[f>>2]|0,12,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+8>>2]|0,g)|
0;c[(c[e>>2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l|0}c[(c[e>>2]|0)+
4>>2]=c[h>>2];l=c[g>>2]|0;i=k;return l|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;k=i;i=i+32|0;l=k+20|0;e=k+16|0;f=k+12|0;h=k+8|0;g=k+4|0;j=k;c[l>>2]=a;c[e>>2]=b;c[f>>2
]=d;c[h>>2]=0;c[g>>2]=c[c[l>>2]>>2];d=c[l>>2]|0;if(!(c[g>>2]|0)){c[h
>>2]=un(d,c[e>>2]|0,j)|0;j=c[j>>2]|0;l=c[f>>2]|0;c[l>>2]=j;l=c[h>>2]|
0;i=k;return l|0}else{c[j>>2]=(c[d+8>>2]|0)+(c[g>>2]<<4)+-16;j=c[j>>2]|0;l=c[f
>>2]|0;c[l>>2]=j;l=c[h>>2]|0;i=k;return l|0}return 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;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[e>>2]=a;c[f>>2]=b;c[g
x3e;>2]=d;c[j>>2]=0;c[k>>2]=0;c[h>>2]=c[c[e>>2]>>2];c[h>>2]=(c[
h>>2]|0)+1;if((c[h>>2]|0)>>>0>(c[(c[e>>2]|0)+4>>2]|0)>>>
;0?(c[j>>2]=vn(c[e>>2]|0,c[h>>2]|0,c[f>>2]|0)|0,c[j>>2]|0):0){b=c[k>>
;2]|0;a=c[g>>2]|0;c[a>>2]=b;a=c[j>>2]|0;i=l;return a|0}c[k>>2]=(c[(c[e>>2]|0)+
8>>2]|0)+(c[h>>2]<<4)+-16;c[c[k>>2]>>2]=0;c[(c[k>>2]|0)+12>>
;2]=0;c[c[e>>2]>>2]=c[h>>2];b=c[k>>2]|0;a=c[g>>2]|0;c[a>>2]=b;a=c[j
x3e;>2]|0;i=l;return a|0}function vn(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;k=i;i=i+32|0;e=k+20|0;l=k+16|
0;f=k+12|0;j=k+8|0;h=k+4|0;g=k;c[e>>2]=a;c[l>>2]=b;c[f>>2]=d;c[j>>2]=c[(c[e>>2
]|0)+4>>2];c[h>>2]=c[l>>2];c[g>>2]=0;if((c[h>>2]|0)>>>0<=(
c[j>>2]|0)>>>0){l=c[g>>2]|0;i=k;return l|0}c[h>>2]=(c[h>>2]|0)+7&-8;
l=hc(c[f>>2]|0,16,c[j>>2]|0,c[h>>2]|0,c[(c[e>>2]|0)+8>>2]|0,g)|0;c[(c[e>
x3e;2]|0)+8>>2]=l;if(c[g>>2]|0){l=c[g>>2]|0;i=k;return l|0}c[(c[e>>2]|0)+4>>2]=
c[h>>2];l=c[g>>2]|0;i=k;return l|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;m=i;i=i+
32|0;g=m+16|0;h=m+12|0;j=m+8|0;k=m+4|0;l=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=0;if((c
[h>>2]|0)<0){l=c[k>>2]|0;i=m;return l|0}do if((c[h>>2]|0)>>>0>=(c[c[g>
;>2]>>2]|0)>>>0){c[k>>2]=mn(c[g>>2]|0,(c[h>>2]|0)+1|0,c[j>>
;2]|0)|0;if(c[k>>2]|0){l=c[k>>2]|0;i=m;return l|0}else{c[c[g>>2]>>2]=(c[h>>2]|
0)+1;break}}while(0);c[l>>2]=(c[(c[g>>2]|0)+8>>2]|0)+(c[h>>2]>>3);a[c[l>
x3e;2]>>0]=d[c[l>>2]>>0]|0|128>>(c[h>>2]&7);l=c[k>>2]|0;i=m;return
l|0}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,l=0,m=0,n=0;n=i;i=i+48|0;f=n+36|0;e=n+32|0;g=n+28|0;k=n+24
|0;j=n+20|0;m=n+16|0;h=n+12|0;l=n;c[f>>2]=a;c[e>>2]=b;c[g>>2]=d;c[k>>2]=0;if(c[(c[f>
;>2]|0)+4>>2]|0){i=n;return}c[m>>2]=c[c[f>>2]>>2];if((c[e>>2]|0)<0|(
c[e>>2]|0)>1)c[e>>2]=(c[e>>2]|0)!=0&1;c[j>>2]=(c[f>>2]|0)+16+((c[e
x3e;>2]|0)*36|0);a:do if((c[(c[f>>2]|0)+12>>2]|0)==1){c[h>>2]=0;while(1){e=c[j>>2]|
0;if((c[h>>2]|0)>=3)break;a=(Tb(c[c[g>>2]>>2]|0)|0)>>16;d=(Tb(c[(c[g>>2]|
0)+4>>2]|0)|0)>>16;c[k>>2]=qn(e,a,d,c[m>>2]|0,l+(c[h>>2]<<2)|0)|0;if
(c[k>>2]|0)break a;c[h>>2]=(c[h>>2]|0)+1;c[g>>2]=(c[g>>2]|0)+8}c[k>>
2]=yn(e,c[l>>2]|0,c[l+4>>2]|0,c[l+8>>2]|0,c[m>>2]|0)|0;if(!(c[k>>2]|0)){i=n;return
}}else c[k>>2]=6;while(0);c[(c[f>>2]|0)+4>>2]=c[k>>2];i=n;return}function yn(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;p=i;i=i+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;
o=p+8|0;m=p+4|0;n=p;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[o>
;>2]=0;c[m>>2]=c[(c[g>>2]|0)+24>>2];c[n>>2]=c[(c[g>>2]|0)+24+8>>
;2];while(1){if((c[m>>2]|0)>>>0<=0)break;if(zn(c[n>>2]|0,c[h>>2]|0)|0)break;if
(zn(c[n>>2]|0,c[j>>2]|0)|0)break;if(zn(c[n>>2]|0,c[k>>2]|0)|0)break;c[m>>2]=(c
[m>>2]|0)+-1;c[n>>2]=(c[n>>2]|0)+16}if((c[m>>2]|0)==0?(c[o>>2]=un((c[g>
x3e;2]|0)+24|0,c[l>>2]|0,n)|0,c[o>>2]|0):0){f=c[o>>2]|0;i=p;return f|0}c[o>>2]=wn(c[n>
;>2]|0,c[h>>2]|0,c[l>>2]|0)|0;if(c[o>>2]|0){f=c[o>>2]|0;i=p;return f|0}c[o>>
;2]=wn(c[n>>2]|0,c[j>>2]|0,c[l>>2]|0)|0;if(c[o>>2]|0){f=c[o>>2]|0;i=p;return f
|0}c[o>>2]=wn(c[n>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;f=c[o>>2]|0;i=p;return f|0}function
zn(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[f>>2]=a;c[g>>2]=b;if((c[g>
x3e;2]|0)>>>0>=(c[c[f>>2]>>2]|0)>>>0){c[e>>2]=0;a=c[e>>
;2]|0;i=h;return a|0}else{c[e>>2]=(d[(c[(c[f>>2]|0)+8>>2]|0)+(c[g>>2]>>3)>
;>0]|0)&128>>(c[g>>2]&7);a=c[e>>2]|0;i=h;return a|0}return 0}function An(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>
2]=0;if(c[(c[d>>2]|0)+4>>2]|0){i=h;return}c[g>>2]=c[c[d>>2]>>2];if((c[(c[d>
;>2]|0)+12>>2]|0)==1){c[f>>2]=Bn((c[d>>2]|0)+16|0,c[e>>2]|0,c[g>>2]|0)|0;
if((c[f>>2]|0)==0?(c[f>>2]=Bn((c[d>>2]|0)+16+36|0,c[e>>2]|0,c[g>>2]|0)|0,(c[f
x3e;>2]|0)==0):0){i=h;return}}else c[f>>2]=6;c[(c[d>>2]|0)+4>>2]=c[f>>2];i=h;return
}function Bn(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+8|0;f=e+4|0;c[g>>2]=a;c[h>>
;2]=b;c[f>>2]=d;hn(c[g>>2]|0,c[h>>2]|0);d=un((c[g>>2]|0)+12|0,c[f>>2]|0,e)|0;i
=e;return d|0}function Cn(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,x=0,y
=0,z=0;z=i;i=i+208|0;h=z+192|0;j=z+188|0;k=z+184|0;l=z+180|0;m=z+176|0;s=z+40|0;q=z+36|0;p=z+32|0;n=z+28|0;o=z+24|0;x=z+20|0;y=z
+16|0;t=z+12|0;u=z+8|0;w=z+4|0;r=z;v=z+196|0;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[s
>>2]=z+48;if(b[(c[k>>2]|0)+2>>1]|0?b[c[k>>2]>>1]|0:0){c[q>>2]=Dn(c[s
>>2]|0,c[k>>2]|0,c[j>>2]|0,c[l>>2]|0)|0;a:do if(!(c[q>>2]|0)){c[n>>2
]=(c[(c[s>>2]|0)+24>>2]|0)+4;c[o>>2]=(c[(c[s>>2]|0)+24>>2]|0)+4+204;c[x>
x3e;2]=c[(c[n>>2]|0)+196>>2];c[y>>2]=c[(c[o>>2]|0)+196>>2];c[t>>2]=c
[x>>2];c[u>>2]=c[y>>2];a[v>>0]=0;c[w>>2]=Mb(c[(c[l>>2]|0)+412+4>
;>2]|0,c[y>>2]|0)|0;c[r>>2]=(c[w>>2]|0)+32&-64;if(c[r>>2]|0?(c[w>>2]|
0)!=(c[r>>2]|0):0){a[v>>0]=1;c[y>>2]=xb(c[y>>2]|0,c[r>>2]|0,c[w>>2]|
0)|0;if((c[r>>2]|0)<(c[w>>2]|0))c[x>>2]=(c[x>>2]|0)-((c[x>>2]|0)/50|0);Zm
(c[(c[s>>2]|0)+24>>2]|0,c[x>>2]|0,c[y>>2]|0,0,0)|0}a[(c[s>>2]|0)+120>>
;0]=1;a[(c[s>>2]|0)+121>>0]=1;a[(c[s>>2]|0)+122>>0]=((c[m>>2]|0)==2?1:(c[m>
;>2]|0)==3)&1;a[(c[s>>2]|0)+123>>0]=((c[m>>2]|0)==2?1:(c[m>>2]|0)==4)&1;a
[(c[s>>2]|0)+124>>0]=(c[m>>2]|0)!=1;c[p>>2]=0;while(1){if((c[p>>2]|0)>=2)
break a;Fn(c[s>>2]|0,c[p>>2]|0);Ln(c[s>>2]|0);Mn((c[s>>2]|0)+28+((c[p>>2]|0)*40
|0)|0,c[(c[s>>2]|0)+24>>2]|0,c[p>>2]|0,c[s>>2]|0);Rn(c[s>>2]|0,c[p>>
2]|0);if((c[p>>2]|0)==1)Vn((c[l>>2]|0)+412|0,c[s>>2]|0);Wn(c[s>>2]|0,c[p>>2]|0
);Xn(c[s>>2]|0,c[p>>2]|0);Yn(c[s>>2]|0,c[p>>2]|0);Zn(c[s>>2]|0,c[p>>
2]|0);if(a[v>>0]|0)Zm(c[(c[s>>2]|0)+24>>2]|0,c[t>>2]|0,c[u>>2]|0,0,0)|0;c[p>
;>2]=(c[p>>2]|0)+1}}while(0);_n(c[s>>2]|0);c[h>>2]=c[q>>2];y=c[h>>2]|0;i=
z;return y|0}c[h>>2]=0;y=c[h>>2]|0;i=z;return y|0}function Dn(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,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=i;i=i+96|0;p=F+88|0;q=F+84|0;r=F+80|0;s
=F+76|0;x=F+72|0;y=F+68|0;k=F+64|0;m=F+60|0;l=F+56|0;o=F+52|0;h=F+48|0;j=F+44|0;n=F+40|0;D=F+36|0;C=F+32|0;E=F+28|0;z=F+24|0;B=F
+20|0;A=F+16|0;t=F+12|0;v=F+8|0;u=F+4|0;w=F;c[p>>2]=d;c[q>>2]=e;c[r>>2]=f;c[s>>2]=g;g=c[
p>>2]|0;d=g+128|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(d|0));f=c[c[s>>2]>>2]|0;c[(c[p
x3e;>2]|0)+16>>2]=f;c[y>>2]=f;f=hc(c[y>>2]|0,48,0,b[(c[q>>2]|0)+2>>1]|0,0
,x)|0;c[(c[p>>2]|0)+8>>2]=f;if(c[x>>2]|0){E=c[x>>2]|0;i=F;return E|0}f=hc(c[y>>
;2]|0,8,0,b[c[q>>2]>>1]|0,0,x)|0;c[(c[p>>2]|0)+12>>2]=f;if(c[x>>2]|0){E=c[x>
;>2]|0;i=F;return E|0}c[c[p>>2]>>2]=b[(c[q>>2]|0)+2>>1];c[(c[p>>2]|0)+4
x3e;>2]=b[c[q>>2]>>1];c[k>>2]=0;c[o>>2]=c[(c[p>>2]|0)+8>>2];c[h
>>2]=c[(c[p>>2]|0)+12>>2];c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0
>=(c[(c[p>>2]|0)+4>>2]|0)>>>0)break;c[m>>2]=(b[(c[(c[q>>2]|0)+12>
;>2]|0)+(c[l>>2]<<1)>>1]|0)+1;c[j>>2]=(c[m>>2]|0)-(c[k>>2]|0);c
[c[h>>2]>>2]=(c[o>>2]|0)+((c[k>>2]|0)*48|0);c[(c[h>>2]|0)+4>>2]=c[j
x3e;>2];if((c[j>>2]|0)>0){c[n>>2]=(c[o>>2]|0)+((c[k>>2]|0)*48|0);c[c[n>
x3e;2]>>2]=(c[o>>2]|0)+((c[m>>2]|0)*48|0)+-48;c[(c[n>>2]|0)+8>>2]=c[h>>
;2];while(1){if((c[j>>2]|0)<=1)break;c[(c[n>>2]|0)+4>>2]=(c[n>>2]|0)+48;c[(c[n>
;>2]|0)+48>>2]=c[n>>2];c[n>>2]=(c[n>>2]|0)+48;c[(c[n>>2]|0)+8>>
2]=c[h>>2];c[j>>2]=(c[j>>2]|0)+-1}c[(c[n>>2]|0)+4>>2]=(c[o>>2]|0)+((
c[k>>2]|0)*48|0)}c[h>>2]=(c[h>>2]|0)+8;c[k>>2]=c[m>>2];c[l>>2]=(c[l
x3e;>2]|0)+1}c[D>>2]=c[(c[p>>2]|0)+8>>2];c[C>>2]=c[D>>2];c[E>>2
]=c[(c[q>>2]|0)+4>>2];c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[c[p
x3e;>2]>>2]|0)>>>0)break;c[B>>2]=((c[c[C>>2]>>2]|0)-(c[D>>
2]|0)|0)/48|0;c[A>>2]=((c[(c[C>>2]|0)+4>>2]|0)-(c[D>>2]|0)|0)/48|0;if(!(a[(c[(c[q>
x3e;2]|0)+8>>2]|0)+(c[z>>2]|0)>>0]&1))c[(c[C>>2]|0)+12>>2]=1;c[t>>
;2]=(c[(c[E>>2]|0)+(c[z>>2]<<3)>>2]|0)-(c[(c[E>>2]|0)+(c[B>>2]<
x3c;3)>>2]|0);c[v>>2]=(c[(c[E>>2]|0)+(c[z>>2]<<3)+4>>2]|0)-(c[(c[E
x3e;>2]|0)+(c[B>>2]<<3)+4>>2]|0);g=(En(c[t>>2]|0,c[v>>2]|0)|0)&255;a
[(c[C>>2]|0)+20>>0]=g;c[u>>2]=(c[(c[E>>2]|0)+(c[A>>2]<<3)>>
;2]|0)-(c[(c[E>>2]|0)+(c[z>>2]<<3)>>2]|0);c[w>>2]=(c[(c[E>>2]|0)+(c[
A>>2]<<3)+4>>2]|0)-(c[(c[E>>2]|0)+(c[z>>2]<<3)+4>>2]|0);g=(
En(c[u>>2]|0,c[w>>2]|0)|0)&255;a[(c[C>>2]|0)+21>>0]=g;g=c[C>>2]|0;do if(!(
c[(c[C>>2]|0)+12>>2]&1|0)){if((a[g+20>>0]|0)==(a[(c[C>>2]|0)+21>>0]|0)){if
((a[(c[C>>2]|0)+21>>0]|0)==4?($b(c[t>>2]|0,c[v>>2]|0,c[u>>2]|0,c[w>>
2]|0)|0)==0:0)break;o=(c[C>>2]|0)+12|0;c[o>>2]=c[o>>2]|2}}else{o=g+12|0;c[o>>2]=c[o>
;>2]|2}while(0);c[z>>2]=(c[z>>2]|0)+1;c[C>>2]=(c[C>>2]|0)+48}c[(c[p>>2]|0
)+20>>2]=c[q>>2];c[(c[p>>2]|0)+24>>2]=c[s>>2];Fn(c[p>>2]|0,0);Gn(c[p
>>2]|0);c[x>>2]=Hn((c[p>>2]|0)+28|0,(c[r>>2]|0)+16|0,(c[r>>2]|0)+16+12|0,(c[r
x3e;>2]|0)+16+24|0,c[y>>2]|0)|0;if(c[x>>2]|0){E=c[x>>2]|0;i=F;return E|0}c[x>>2]=Hn
((c[p>>2]|0)+28+40|0,(c[r>>2]|0)+16+36|0,(c[r>>2]|0)+16+36+12|0,(c[r>>2]|0)+16+36+24|0,c
[y>>2]|0)|0;E=c[x>>2]|0;i=F;return E|0}function En(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0
;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[d>>2]=a;c[e>>2]=b;c[h>>2]=4;b=c[d>>2]|0;c[f>
;>2]=(c[d>>2]|0)>=0?b:0-b|0;b=c[e>>2]|0;c[g>>2]=(c[e>>2]|0)>=0?b:0-b|0;if
(((c[g>>2]|0)*12|0)<(c[f>>2]|0)){c[h>>2]=(c[d>>2]|0)>=0?2:-2;h=c[h>>
2]|0;i=j;return h|0}if(((c[f>>2]|0)*12|0)>=(c[g>>2]|0)){h=c[h>>2]|0;i=j;return h|0}c[h>
x3e;2]=(c[e>>2]|0)>=0?-1:1;h=c[h>>2]|0;i=j;return h|0}function Fn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,
h=0,j=0;h=i;i=i+32|0;j=h+16|0;d=h+12|0;g=h+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[g>>2]=c[(c[(c[j
x3e;>2]|0)+20>>2]|0)+4>>2];c[f>>2]=c[(c[j>>2]|0)+8>>2];c[e>>2]=
c[c[j>>2]>>2];while(1){if((c[e>>2]|0)>>>0<=0)break;c[(c[f>>2]|0)+16
x3e;>2]=0;c[(c[f>>2]|0)+32>>2]=0;b=c[g>>2]|0;if(!(c[d>>2]|0)){c[(c[f>>2]|
0)+36>>2]=c[b>>2];c[(c[f>>2]|0)+40>>2]=c[(c[g>>2]|0)+4>>2]}else{c[(c
[f>>2]|0)+36>>2]=c[b+4>>2];c[(c[f>>2]|0)+40>>2]=c[c[g>>2]>>
;2]}c[e>>2]=(c[e>>2]|0)+-1;c[f>>2]=(c[f>>2]|0)+48;c[g>>2]=(c[g>>2]|0
)+8}i=h;return}function Gn(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;r=i;i=i+64|0;b=r+52|0;l=r+48
|0;h=r+44|0;q=r+40|0;f=r+36|0;e=r+32|0;d=r+28|0;j=r+24|0;k=r+20|0;o=r+16|0;p=r+12|0;n=r+8|0;m=r+4|0;g=r;c[b>>2]=a;c[l
x3e;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[(c[b>>2]|0)+4>>2]|0)>>
;>0)break;c[g>>2]=0;a:do if((c[(c[(c[b>>2]|0)+12>>2]|0)+(c[l>>2]<<3)+4>
;>2]|0)>>>0>=4){c[h>>2]=c[(c[(c[b>>2]|0)+12>>2]|0)+(c[l>>2]<
;<3)>>2];a=c[h>>2]|0;c[f>>2]=a;c[q>>2]=a;do{c[f>>2]=c[(c[f>>2]|
0)+4>>2];if((c[f>>2]|0)==(c[h>>2]|0))break a;c[j>>2]=(c[(c[f>>2]|0)+36>
x3e;2]|0)-(c[(c[q>>2]|0)+36>>2]|0);c[k>>2]=(c[(c[f>>2]|0)+40>>2]|0)-(c[(c[q>
;>2]|0)+40>>2]|0)}while((c[j>>2]|0)==0?(c[k>>2]|0)==0:0);c[e>>2]=c[q>>2];
while(1){c[q>>2]=c[e>>2];c[e>>2]=c[c[e>>2]>>2];if((c[e>>2]|0)==(c[h
x3e;>2]|0))break a;c[o>>2]=(c[(c[q>>2]|0)+36>>2]|0)-(c[(c[e>>2]|0)+36>>2]|
0);c[p>>2]=(c[(c[q>>2]|0)+40>>2]|0)-(c[(c[e>>2]|0)+40>>2]|0);if((c[o>>
;2]|0)==0?(c[p>>2]|0)==0:0)continue;c[n>>2]=_b(c[j>>2]|0,c[k>>2]|0,c[o>>2]|0,c
[p>>2]|0)|0;if(c[n>>2]|0)break}c[h>>2]=c[q>>2];c[j>>2]=c[o>>2];c[k
x3e;>2]=c[p>>2];do{c[d>>2]=c[f>>2];while(1){c[f>>2]=c[d>>2];c[d>>
;2]=c[(c[d>>2]|0)+4>>2];if((c[d>>2]|0)==(c[h>>2]|0))c[g>>2]=1;c[o>>2
]=(c[(c[d>>2]|0)+36>>2]|0)-(c[(c[f>>2]|0)+36>>2]|0);c[p>>2]=(c[(c[d>>
;2]|0)+40>>2]|0)-(c[(c[f>>2]|0)+40>>2]|0);if((c[o>>2]|0)==0?(c[p>>2]|0)==0:0)continue
;c[m>>2]=_b(c[j>>2]|0,c[k>>2]|0,c[o>>2]|0,c[p>>2]|0)|0;if(c[m>>2]|0)
break}if((c[m>>2]^c[n>>2]|0)<0){do{a=(c[q>>2]|0)+12|0;c[a>>2]=c[a>>2]|4;c
[q>>2]=c[(c[q>>2]|0)+4>>2]}while((c[q>>2]|0)!=(c[f>>2]|0));a=(c[q>>2
]|0)+12|0;c[a>>2]=c[a>>2]|4}c[q>>2]=c[f>>2];c[f>>2]=c[d>>2];c[n>
;>2]=c[m>>2];c[j>>2]=c[o>>2];c[k>>2]=c[p>>2]}while((c[g>>2]|0)!=
0^1)}while(0);c[l>>2]=(c[l>>2]|0)+1}i=r;return}function Hn(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;r=i;i=i+48|0;g=r+40|0;h=r+36|0;j=r+32|0;s=r+28|0;k=r+24|0;l=r+20|0;m=r+16|0;q=r+12|0
;p=r+8|0;o=r+4|0;n=r;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[s>>2]=e;c[k>>2]=f;c[s>
;>2]=c[s>>2];c[l>>2]=c[c[h>>2]>>2];a=hc(c[k>>2]|0,4,0,c[l>>2]
x3c;<1,0,m)|0;c[(c[g>>2]|0)+12>>2]=a;if(c[m>>2]|0){s=c[m>>2]|0;i=r;return s|0}s=hc(
c[k>>2]|0,28,0,c[l>>2]|0,0,m)|0;c[(c[g>>2]|0)+8>>2]=s;if(c[m>>2]|0){s=c[m>
;>2]|0;i=r;return s|0}s=hc(c[k>>2]|0,16,0,(c[l>>2]<<1)+1|0,0,m)|0;c[(c[g>>2]|0)+24
x3e;>2]=s;if(c[m>>2]|0){s=c[m>>2]|0;i=r;return s|0}c[c[g>>2]>>2]=c[l>>2];
c[(c[g>>2]|0)+16>>2]=(c[(c[g>>2]|0)+12>>2]|0)+(c[l>>2]<<2);c[(c[g>
;>2]|0)+4>>2]=0;c[(c[g>>2]|0)+20>>2]=0;c[(c[g>>2]|0)+28>>2]=0;c[q>
x3e;2]=c[(c[g>>2]|0)+8>>2];c[p>>2]=c[(c[h>>2]|0)+8>>2];while(1){if((c[l>
x3e;2]|0)>>>0<=0)break;c[c[q>>2]>>2]=c[c[p>>2]>>2];c[(c[q>>
;2]|0)+4>>2]=c[(c[p>>2]|0)+4>>2];c[(c[q>>2]|0)+16>>2]=c[(c[p>>2]|0)+
8>>2];c[l>>2]=(c[l>>2]|0)+-1;c[q>>2]=(c[q>>2]|0)+28;c[p>>2]=(c[p>
;>2]|0)+12}a:do if(c[j>>2]|0){c[o>>2]=c[(c[j>>2]|0)+8>>2];c[l>>2]=c[c[j
x3e;>2]>>2];c[(c[g>>2]|0)+32>>2]=c[j>>2];while(1){if((c[l>>2]|0)>>
;>0<=0)break a;In(c[g>>2]|0,c[o>>2]|0);c[l>>2]=(c[l>>2]|0)+-1;c[o>>2
]=(c[o>>2]|0)+16}}while(0);if((c[(c[g>>2]|0)+4>>2]|0)==(c[c[g>>2]>>2]|0)){s=c[
m>>2]|0;i=r;return s|0}c[l>>2]=c[c[g>>2]>>2];c[n>>2]=0;while(1){if((c[n>
x3e;2]|0)>>>0>=(c[l>>2]|0)>>>0)break;Jn(c[g>>2]|0,c[n>>2]|0);c[
n>>2]=(c[n>>2]|0)+1}s=c[m>>2]|0;i=r;return s|0}function In(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;l=i;i=i+32|0;e=l+24|0;m=l+20|0;j=l+16|0;k=l+12|0;f=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[m>>2]=b;c[j
x3e;>2]=0;c[k>>2]=0;c[f>>2]=c[(c[m>>2]|0)+8>>2];c[h>>2]=c[c[m>>
2]>>2];c[g>>2]=0;while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>
;>0)break;if(!(c[j>>2]|0)){m=c[f>>2]|0;c[f>>2]=m+1;c[k>>2]=d[m>>0];c[j>
;>2]=128}if(c[k>>2]&c[j>>2]|0)Jn(c[e>>2]|0,c[g>>2]|0);c[j>>2]=c[j>
;>2]>>1;c[g>>2]=(c[g>>2]|0)+1}i=l;return}function Jn(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;k=i;i=i+32|0;d=k+20|0;l=k+16|0;f=k+12|0;h=k+8|0;e=k+4|0;g=k;c[d>>2]=a;c[l>>2]=b;c[f>>
2]=(c[(c[d>>2]|0)+8>>2]|0)+((c[l>>2]|0)*28|0);if((c[l>>2]|0)>>>0>=(c
[c[d>>2]>>2]|0)>>>0){i=k;return}if(c[(c[f>>2]|0)+16>>2]&4|0){i=k;return
}l=(c[f>>2]|0)+16|0;c[l>>2]=c[l>>2]|4;c[h>>2]=c[(c[d>>2]|0)+16>>2];c
[e>>2]=c[(c[d>>2]|0)+4>>2];c[(c[f>>2]|0)+20>>2]=0;while(1){if((c[e>>
2]|0)>>>0<=0)break;c[g>>2]=c[c[h>>2]>>2];if(Kn(c[f>>2]|0,c[g>
x3e;2]|0)|0){j=6;break}c[e>>2]=(c[e>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+4}if((j|0)==6)c[(c[f
x3e;>2]|0)+20>>2]=c[g>>2];if((c[(c[d>>2]|0)+4>>2]|0)>>>0>=(c[c[
d>>2]>>2]|0)>>>0){i=k;return}j=c[f>>2]|0;a=(c[d>>2]|0)+4|0;l=c[a>>
;2]|0;c[a>>2]=l+1;c[(c[(c[d>>2]|0)+16>>2]|0)+(l<<2)>>2]=j;i=k;return}function
Kn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(((c[c[d>>2]>
;>2]|0)+(c[(c[d>>2]|0)+4>>2]|0)|0)<(c[c[e>>2]>>2]|0)){b=0;b=b&1;i=f;return
b|0}b=((c[c[e>>2]>>2]|0)+(c[(c[e>>2]|0)+4>>2]|0)|0)>=(c[c[d>>2]>>
;2]|0);b=b&1;i=f;return b|0}function Ln(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;o=i;i=i+48|0;d=o+32|0;
k=o+28|0;j=o+24|0;l=o+20|0;g=o+16|0;e=o+12|0;m=o+8|0;h=o+4|0;f=o;c[d>>2]=a;c[k>>2]=0;a:while(1){if((c[k>
;>2]|0)>>>0>=(c[(c[d>>2]|0)+4>>2]|0)>>>0){n=17;break}c[j>>
2]=c[(c[(c[d>>2]|0)+12>>2]|0)+(c[k>>2]<<3)>>2];b:do if(c[(c[(c[d>>2]|
0)+12>>2]|0)+(c[k>>2]<<3)+4>>2]|0){c[l>>2]=c[j>>2];c[g>>2]=
c[l>>2];c[e>>2]=c[l>>2];do{c[g>>2]=c[c[g>>2]>>2];if((c[g>>
2]|0)==(c[j>>2]|0)){n=30;break a}}while((c[(c[g>>2]|0)+36>>2]|0)==(c[(c[l>>2]|0)+36>
;>2]|0));b=c[(c[g>>2]|0)+4>>2]|0;c[l>>2]=b;c[j>>2]=b;while(1){c[e>>2]=c[l
>>2];do{c[e>>2]=c[(c[e>>2]|0)+4>>2];if((c[e>>2]|0)==(c[j>>2]|0))break
b}while((c[(c[e>>2]|0)+36>>2]|0)==(c[(c[l>>2]|0)+36>>2]|0));a=c[(c[e>>2]|0)+36
>>2]|0;b=c[(c[l>>2]|0)+36>>2]|0;if((c[(c[g>>2]|0)+36>>2]|0)<(c[(c[l>
x3e;2]|0)+36>>2]|0)){if((a|0)<(b|0))n=14}else if((a|0)>(b|0))n=14;if((n|0)==14)while(1){n=0;b=(c[l>>
;2]|0)+16|0;c[b>>2]=c[b>>2]|64;c[l>>2]=c[(c[l>>2]|0)+4>>2];if((c[l>>
2]|0)!=(c[e>>2]|0))n=14;else break}c[g>>2]=c[c[e>>2]>>2];c[l>>2]=c[e>>
;2]}}while(0);c[k>>2]=(c[k>>2]|0)+1}if((n|0)==17)c[k>>2]=0;c:while(1){if((n|0)==30)c[k>>
2]=(c[k>>2]|0)+1;if((c[k>>2]|0)>>>0>=(c[c[d>>2]>>2]|0)>>
x3e;0)break;c[m>>2]=(c[(c[d>>2]|0)+8>>2]|0)+((c[k>>2]|0)*48|0);c[h>>2]=c[m>
;>2];c[f>>2]=c[m>>2];if(c[(c[m>>2]|0)+16>>2]&64|0){while(1){c[h>>2]=
c[c[h>>2]>>2];if((c[h>>2]|0)==(c[m>>2]|0)){n=30;continue c}if((c[(c[h>>2]|0)+40
>>2]|0)!=(c[(c[m>>2]|0)+40>>2]|0))break}while(1){c[f>>2]=c[(c[f>>2]|0)+4>
x3e;2];if((c[f>>2]|0)==(c[m>>2]|0)){n=30;continue c}if((c[(c[f>>2]|0)+40>>2]|0)!=(c[(c[m
>>2]|0)+40>>2]|0))break}}if((c[(c[h>>2]|0)+40>>2]|0)<(c[(c[m>>2]|0)+40>
;>2]|0)?(c[(c[f>>2]|0)+40>>2]|0)>(c[(c[m>>2]|0)+40>>2]|0):0){n=(c[m>>
;2]|0)+16|0;c[n>>2]=c[n>>2]|128;n=30;continue}if((c[(c[h>>2]|0)+40>>2]|0)<=(c[(c[m
x3e;>2]|0)+40>>2]|0)){n=30;continue}if((c[(c[f>>2]|0)+40>>2]|0)>=(c[(c[m>>2]|0
)+40>>2]|0)){n=30;continue}n=(c[m>>2]|0)+16|0;c[n>>2]=c[n>>2]|256;n=30}i=o;return}function
Mn(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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0;j=l
;c[m>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=c[(c[m>>2]|0)+8>
;>2];c[j>>2]=c[c[m>>2]>>2];while(1){if((c[j>>2]|0)>>>0<=0)break
;Nn(c[k>>2]|0,c[f>>2]|0,c[g>>2]|0,c[h>>2]|0);c[j>>2]=(c[j>>2]|0)+-1;
c[k>>2]=(c[k>>2]|0)+28}i=l;return}function Nn(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;E=i;i=i+96|0;B=E+88|0;k=E+84|0;l=E+80|0;m=E+76|0;p=E+72|0;u=E
+68|0;h=E+64|0;D=E+60|0;C=E+56|0;w=E+52|0;q=E+48|0;v=E+36|0;t=E+32|0;s=E+28|0;r=E+24|0;o=E+20|0;n=E+16|0;y=E+12|0;A=E+8|0;x=E+4|
0;z=E;c[B>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[p>>2]=(c[k>>2]|0)+4+((
c[l>>2]|0)*204|0);c[u>>2]=c[(c[p>>2]|0)+196>>2];c[h>>2]=c[(c[p>>2]|0
)+200>>2];if(c[(c[B>>2]|0)+16>>2]&8|0){i=E;return}b=Mb(c[c[B>>2]>>2]|0,c[
u>>2]|0)|0;c[D>>2]=b+(c[h>>2]|0);c[C>>2]=Mb(c[(c[B>>2]|0)+4>>2]|0,c[
u>>2]|0)|0;if(!((c[l>>2]|0)==0?!(a[(c[m>>2]|0)+120>>0]|0):0))j=4;do if((j|0)==4){if((c[l
>>2]|0)==1?(a[(c[m>>2]|0)+121>>0]|0)==0:0)break;if((c[l>>2]|0)==0?d[(c[m>>2]|0
)+122>>0]|0:0)h=1;else if((c[l>>2]|0)==1)h=(d[(c[m>>2]|0)+123>>0]|0)!=0;else h=0;c[w>
;>2]=h&1;j=c[C>>2]|0;c[q>>2]=j;c[(c[B>>2]|0)+12>>2]=j;c[v>>2]=0;c[v+
4>>2]=0;c[v+8>>2]=0;if((c[l>>2]|0)==1)On((c[k>>2]|0)+412|0,(c[c[B>>2]>>
;2]|0)+(c[(c[B>>2]|0)+4>>2]|0)|0,c[c[B>>2]>>2]|0,v);switch(c[v>>2]|0){case 1:{
c[(c[B>>2]|0)+8>>2]=(c[v+4>>2]|0)-(c[q>>2]|0);break}case 2:{c[(c[B>>2]|0)+8>
;>2]=c[v+8>>2];break}case 3:{c[(c[B>>2]|0)+8>>2]=c[v+8>>2];c[(c[B>>2]|0)+
12>>2]=(c[v+4>>2]|0)-(c[v+8>>2]|0);break}default:{c[t>>2]=c[(c[B>>2]|0)+20>
;>2];if(c[t>>2]|0){if(!(c[(c[t>>2]|0)+16>>2]&8))Nn(c[t>>2]|0,c[k>>2]|
0,c[l>>2]|0,c[m>>2]|0);c[s>>2]=(c[c[t>>2]>>2]|0)+(c[(c[t>>2]|0)+4>
;>2]>>1);c[r>>2]=(c[(c[t>>2]|0)+8>>2]|0)+(c[(c[t>>2]|0)+12>>2]
x3e;>1);c[o>>2]=(c[c[B>>2]>>2]|0)+(c[(c[B>>2]|0)+4>>2]>>1);c[n
x3e;>2]=Mb((c[o>>2]|0)-(c[s>>2]|0)|0,c[u>>2]|0)|0;c[D>>2]=(c[r>>2]|0)+(c[
n>>2]|0)-(c[C>>2]>>1)}c[(c[B>>2]|0)+8>>2]=c[D>>2];c[(c[B>>
2]|0)+12>>2]=c[q>>2];do if(a[(c[m>>2]|0)+124>>0]|0){if((c[C>>2]|0)>64){c[
C>>2]=Pn(c[p>>2]|0,c[C>>2]|0,0)|0;break}if((c[C>>2]|0)>=32){c[D>>2]=(c[D
x3e;>2]|0)+(c[C>>2]>>1)&-64;c[C>>2]=64;break}h=(c[D>>2]|0)+32&-64;if((c[C
>>2]|0)<=0){c[D>>2]=h;break}c[y>>2]=h;c[A>>2]=(c[D>>2]|0)+(c[C>>
;2]|0)+32&-64;c[x>>2]=(c[y>>2]|0)-(c[D>>2]|0);c[z>>2]=(c[A>>2]|0)-((c[D
x3e;>2]|0)+(c[C>>2]|0));if((c[x>>2]|0)<0)c[x>>2]=0-(c[x>>2]|0);if((c[z>
x3e;2]|0)<0)c[z>>2]=0-(c[z>>2]|0);if((c[x>>2]|0)<=(c[z>>2]|0)){c[D>>
2]=c[y>>2];break}else{c[D>>2]=c[A>>2];break}}while(0);A=(c[D>>2]|0)+(Qn(c[D>>2
]|0,c[C>>2]|0)|0)|0;c[(c[B>>2]|0)+8>>2]=A;c[(c[B>>2]|0)+12>>2]=c[C>>
2]}}a:do if(c[w>>2]|0){c[D>>2]=c[(c[B>>2]|0)+8>>2];c[C>>2]=c[(c[B>>2
]|0)+12>>2];if((c[C>>2]|0)<64)c[C>>2]=64;else c[C>>2]=(c[C>>2]|0)+32&
;-64;switch(c[v>>2]|0){case 3:break a;case 1:{c[(c[B>>2]|0)+8>>2]=(c[v+4>>2]|0)-(c[C>
;>2]|0);c[(c[B>>2]|0)+12>>2]=c[C>>2];break a}case 2:{c[(c[B>>2]|0)+12>>2]=
c[C>>2];break a}default:{c[(c[B>>2]|0)+12>>2]=c[C>>2];h=(c[D>>2]|0)+(c[C>
x3e;2]>>1)|0;if(c[C>>2]&64|0)c[D>>2]=(h&-64)+32;else c[D>>2]=h+32&-64;c[(
c[B>>2]|0)+8>>2]=(c[D>>2]|0)-(c[C>>2]>>1);c[(c[B>>2]|0)+12>>
;2]=c[C>>2];break a}}}while(0);D=(c[B>>2]|0)+16|0;c[D>>2]=c[D>>2]|8;i=E;return}while(0);
c[(c[B>>2]|0)+8>>2]=c[D>>2];c[(c[B>>2]|0)+12>>2]=c[C>>2];D=(c[B>
;>2]|0)+16|0;c[D>>2]=c[D>>2]|8;i=E;return}function On(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;r=i;i=i+48|0;g=r+32|0;h=r+28|0;j=r+24|0;k=r+20|0;o=r+16|0;l=r+12|0;m=r+8|0;p=r+4|0;n=r;c[g>
x3e;2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[c[k>>2]>>2]=0;c[n>>2]=d[(c[
g>>2]|0)+2080>>0];c[o>>2]=c[g>>2];c[l>>2]=c[c[o>>2]>>2];c[
p>>2]=(c[o>>2]|0)+4;while(1){if((c[l>>2]|0)>>>0<=0)break;c[m>>2]=(c[
h>>2]|0)-(c[(c[p>>2]|0)+12>>2]|0);if((c[m>>2]|0)<(0-(c[(c[g>>2]|0)+2076
x3e;>2]|0)|0))break;if((c[h>>2]|0)<=((c[(c[p>>2]|0)+8>>2]|0)+(c[(c[g>>2]|0)+2076
>>2]|0)|0)){q=5;break}c[l>>2]=(c[l>>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+32}do if((q|0
)==5){if((c[n>>2]|0)==0?(c[m>>2]|0)>(c[(c[g>>2]|0)+2072>>2]|0):0)break;q=c[k>
x3e;2]|0;c[q>>2]=c[q>>2]|1;c[(c[k>>2]|0)+4>>2]=c[(c[p>>2]|0)+16>>2]}
while(0);c[o>>2]=(c[g>>2]|0)+516;c[l>>2]=c[c[o>>2]>>2];c[p>>2]=(c[o
x3e;>2]|0)+4+(c[l>>2]<<5)+-32;while(1){if((c[l>>2]|0)>>>0<=0){q=17;break}
c[m>>2]=(c[(c[p>>2]|0)+8>>2]|0)-(c[j>>2]|0);if((c[m>>2]|0)<(0-(c[(c[g>
;>2]|0)+2076>>2]|0)|0)){q=17;break}if((c[j>>2]|0)>=((c[(c[p>>2]|0)+12>>2]|0)-(
c[(c[g>>2]|0)+2076>>2]|0)|0)){q=13;break}c[l>>2]=(c[l>>2]|0)+-1;c[p>>2]=(c[p
x3e;>2]|0)+-32}if((q|0)==13){if((c[n>>2]|0)==0?(c[m>>2]|0)>=(c[(c[g>>2]|0)+2072>>
;2]|0):0){i=r;return}q=c[k>>2]|0;c[q>>2]=c[q>>2]|2;c[(c[k>>2]|0)+8>>2]=c[(c[p
x3e;>2]|0)+16>>2];i=r;return}else if((q|0)==17){i=r;return}}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;k=i;i=i+16|0;f=k+8|0;g=k+4|0;h=k+12|0;j=k;c[f>>2]=b;c[g>>2]=d;a[h>>0]=e;do if((c[g>
x3e;2]|0)>64){c[j>>2]=(c[g>>2]|0)-(c[(c[f>>2]|0)+4+4>>2]|0);if((c[j>>2]|0
)<0)c[j>>2]=0-(c[j>>2]|0);if((c[j>>2]|0)<40){d=c[(c[f>>2]|0)+4+4>>2]|
0;c[g>>2]=d;c[g>>2]=(c[g>>2]|0)<48?48:d}f=c[g>>2]|0;if((c[g>>2]|0)>=
192){c[g>>2]=f+32&-64;break}c[j>>2]=f&63;c[g>>2]=c[g>>2]&-64;f=c[j>
x3e;2]|0;if((c[j>>2]|0)<10){c[g>>2]=(c[g>>2]|0)+f;break}if((f|0)<32){c[g>>2]=(
c[g>>2]|0)+10;break}if((c[j>>2]|0)<54){c[g>>2]=(c[g>>2]|0)+54;break}else{c[g>
x3e;2]=(c[g>>2]|0)+(c[j>>2]|0);break}}else c[g>>2]=64;while(0);if(!(a[h>>0]|0)){j=c[g>
;>2]|0;i=k;return j|0}c[g>>2]=(c[g>>2]|0)+32&-64;j=c[g>>2]|0;i=k;return j|0}function Qn(
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;d=g+16|0;j=g+12|0;h=g+8|0;e=g+4|0;f=g;c[j>>2]=a;c[h>>
;2]=b;c[e>>2]=((c[j>>2]|0)+32&-64)-(c[j>>2]|0);c[f>>2]=((c[j>>2]|0)+(c[h
x3e;>2]|0)+32&-64)-(c[j>>2]|0)-(c[h>>2]|0);b=c[e>>2]|0;a=c[f>>2]|0;if((((c[e
x3e;>2]|0)<0?0-b|0:b)|0)<=(((c[f>>2]|0)<0?0-a|0:a)|0)){c[d>>2]=c[e>>2];j=c[d
x3e;>2]|0;i=g;return j|0}else{c[d>>2]=c[f>>2];j=c[d>>2]|0;i=g;return j|0}return 0}function Rn
(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;s=i;i=i+80|0;d=s+64|0;v=s+60|0;q=s
+56|0;k=s+52|0;m=s+48|0;h=s+44|0;j=s+40|0;u=s+36|0;t=s+32|0;r=s+28|0;l=s+24|0;e=s+20|0;n=s+16|0;f=s+12|0;o=s+8|0;g=s+4|0;p=s;c[d
>>2]=a;c[v>>2]=b;c[q>>2]=(c[d>>2]|0)+28+((c[v>>2]|0)*40|0);c[k>>2]=c
[(c[(c[q>>2]|0)+32>>2]|0)+8>>2];c[m>>2]=c[c[(c[q>>2]|0)+32>>2]>
x3e;2];c[h>>2]=0;c[j>>2]=(c[v>>2]|0)==0?1:2;c[u>>2]=(c[(c[d>>2]|0)+24>>
;2]|0)+4+((c[v>>2]|0)*204|0);c[t>>2]=c[(c[u>>2]|0)+196>>2];a=Vb(32,c[t>>2]|0)|
0;c[r>>2]=a;c[r>>2]=(c[r>>2]|0)>30?30:a;a:do if((c[m>>2]|0)>>>0>
;1?(c[c[d>>2]>>2]|0)>>>0>0:0){if((c[(c[k>>2]|0)+12>>2]|0)>>
;>0>(c[c[d>>2]>>2]|0)>>>0)b=c[c[d>>2]>>2]|0;else b=c[(c[k>
x3e;2]|0)+12>>2]|0;c[h>>2]=b;c[k>>2]=(c[k>>2]|0)+16;while(1){if((c[m>>2]|0)>
;>>0<=1)break a;if((c[(c[k>>2]|0)+12>>2]|0)>>>0>(c[c[d>>2]>
;>2]|0)>>>0)b=c[c[d>>2]>>2]|0;else b=c[(c[k>>2]|0)+12>>2]|0;c[l>
;>2]=b;c[e>>2]=(c[l>>2]|0)-(c[h>>2]|0);if((c[e>>2]|0)>0){c[n>>2]=(c[(
c[d>>2]|0)+8>>2]|0)+((c[h>>2]|0)*48|0);Sn(c[q>>2]|0,c[k>>2]|0);Un(c[q>>
;2]|0,c[n>>2]|0,c[e>>2]|0,c[r>>2]|0,c[j>>2]|0)}c[h>>2]=c[l>>2];c[m
x3e;>2]=(c[m>>2]|0)+-1;c[k>>2]=(c[k>>2]|0)+16}}while(0);if((c[m>>2]|0)==1){c[f>
;>2]=c[c[d>>2]>>2];c[o>>2]=c[(c[d>>2]|0)+8>>2];Sn(c[q>>2]|0,c[(
c[(c[q>>2]|0)+32>>2]|0)+8>>2]|0);Un(c[q>>2]|0,c[o>>2]|0,c[f>>2]|0,c[
r>>2]|0,c[j>>2]|0)}c[g>>2]=c[c[d>>2]>>2];c[p>>2]=c[(c[d>>2
]|0)+8>>2];while(1){if((c[g>>2]|0)>>>0<=0)break;if(c[(c[p>>2]|0)+32>>
;2]|0?(c[(c[p>>2]|0)+16>>2]&16|0)==0:0){v=(c[p>>2]|0)+16|0;c[v>>2]=c[v>>2
]|16}c[g>>2]=(c[g>>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+48}i=s;return}function Sn(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;t=i;i=i+64|0;e=t+56|0;u=t+52|0;q=t+48|0;s=t+44|0;h=t+40|0
;o=t+36|0;p=t+32|0;f=t+28|0;j=t+24|0;g=t+20|0;m=t+16|0;n=t+12|0;k=t+8|0;l=t+4|0;r=t;c[e>>2]=a;c[u>>2]=b;c[q
x3e;>2]=0;c[s>>2]=0;c[h>>2]=c[(c[u>>2]|0)+8>>2];c[p>>2]=c[c[u>>
2]>>2];c[f>>2]=0;Tn(c[e>>2]|0);c[o>>2]=0;while(1){if((c[o>>2]|0)>>
x3e;0>=(c[p>>2]|0)>>>0)break;if(!(c[q>>2]|0)){u=c[h>>2]|0;c[h>>2]=u+
1;c[s>>2]=d[u>>0];c[q>>2]=128}if(((c[s>>2]&c[q>>2]|0?(c[j>>2]=(
c[(c[e>>2]|0)+8>>2]|0)+((c[o>>2]|0)*28|0),(c[(c[j>>2]|0)+16>>2]&4|0)==0):
0)?(c[g>>2]=0,(c[g>>2]|0)==0):0)?(u=(c[j>>2]|0)+16|0,c[u>>2]=c[u>>2]|4,(c[f>
;>2]|0)>>>0<(c[c[e>>2]>>2]|0)>>>0):0){a=c[j>>2]|0;u=c[f>
;>2]|0;c[f>>2]=u+1;c[(c[(c[e>>2]|0)+12>>2]|0)+(u<<2)>>2]=a}c[q>>
;2]=c[q>>2]>>1;c[o>>2]=(c[o>>2]|0)+1}c[(c[e>>2]|0)+4>>2]=c[f>
x3e;2];c[r>>2]=c[(c[e>>2]|0)+12>>2];c[m>>2]=1;while(1){if((c[m>>2]|0)>=(c
[f>>2]|0))break;c[k>>2]=c[(c[r>>2]|0)+(c[m>>2]<<2)>>2];c[n>>
;2]=(c[m>>2]|0)-1;while(1){if((c[n>>2]|0)<0)break;c[l>>2]=c[(c[r>>2]|0)+(c[n>
x3e;2]<<2)>>2];if((c[c[l>>2]>>2]|0)<(c[c[k>>2]>>2]|0))break;c[(
c[r>>2]|0)+((c[n>>2]|0)+1<<2)>>2]=c[l>>2];c[(c[r>>2]|0)+(c[n>
x3e;2]<<2)>>2]=c[k>>2];c[n>>2]=(c[n>>2]|0)+-1}c[m>>2]=(c[m>>
;2]|0)+1}i=t;return}function Tn(a){a=a|0;var b=0,d=0,e=0,f=0;e=i;i=i+16|0;f=e+8|0;b=e+4|0;d=e;c[f>>2]=a;c[b>>
;2]=c[c[f>>2]>>2];c[d>>2]=c[(c[f>>2]|0)+8>>2];while(1){if((c[b>>2]|0
)>>>0<=0)break;f=(c[d>>2]|0)+16|0;c[f>>2]=c[f>>2]&-5;c[(c[d>>2]|
0)+24>>2]=-1;c[b>>2]=(c[b>>2]|0)+-1;c[d>>2]=(c[d>>2]|0)+28}i=e;return}function
Un(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,x=0,y=0,z=0,A=0,B=0
,C=0,D=0,E=0,F=0,G=0;F=i;i=i+96|0;G=F+88|0;h=F+84|0;j=F+80|0;k=F+76|0;l=F+72|0;D=F+68|0;A=F+64|0;C=F+60|0;B=F+56|0;x=F+52|0;q=F+
48|0;m=F+44|0;y=F+40|0;r=F+36|0;n=F+32|0;z=F+28|0;w=F+24|0;v=F+20|0;s=F+16|0;o=F+12|0;t=F+8|0;p=F+4|0;u=F;c[G>>2]=b;c[
h>>2]=d;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[D>>2]=c[(c[G>>2]|0)+12>
x3e;2];c[A>>2]=c[(c[G>>2]|0)+4>>2];while(1){if((c[j>>2]|0)>>>0<=0)break
;c[C>>2]=0;c[B>>2]=c[(c[h>>2]|0)+36>>2];a:do if(!(c[(c[h>>2]|0)+16>>
2]&16)){do if((a[(c[h>>2]|0)+20>>0]|0)!=(c[l>>2]|0)?(a[(c[h>>2]|0)+20>>0]|
0)!=(0-(c[l>>2]|0)|0):0){if((a[(c[h>>2]|0)+21>>0]|0)!=(c[l>>2]|0)?(a[(c[h>>2]|
0)+21>>0]|0)!=(0-(c[l>>2]|0)|0):0)break;c[C>>2]=a[(c[h>>2]|0)+21>>0]}else E=6;
while(0);if((E|0)==6){E=0;c[C>>2]=a[(c[h>>2]|0)+20>>0]}if(c[C>>2]|0){if((c[C>>
2]|0)==(c[l>>2]|0)){c[x>>2]=0;while(1){if((c[x>>2]|0)>>>0>=(c[A>>2]|
0)>>>0)break a;c[q>>2]=c[(c[D>>2]|0)+(c[x>>2]<<2)>>2];c[m>
x3e;2]=(c[B>>2]|0)-(c[c[q>>2]>>2]|0);if((c[m>>2]|0)<(c[k>>2]|0)?(0-(c[m
x3e;>2]|0)|0)<(c[k>>2]|0):0)break;c[x>>2]=(c[x>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G
>>2]=c[G>>2]|16;G=(c[h>>2]|0)+16|0;c[G>>2]=c[G>>2]|512;c[(c[h>>2]|0)+
32>>2]=c[q>>2];break}if((c[C>>2]|0)!=(0-(c[l>>2]|0)|0))break;c[y>>2]=0;while(1
){if((c[y>>2]|0)>>>0>=(c[A>>2]|0)>>>0)break a;c[r>>2]=c[(c[D>
;>2]|0)+(c[y>>2]<<2)>>2];c[n>>2]=(c[B>>2]|0)-(c[c[r>>2]>
x3e;2]|0)-(c[(c[r>>2]|0)+4>>2]|0);if((c[n>>2]|0)<(c[k>>2]|0)?(0-(c[n>>2]|
0)|0)<(c[k>>2]|0):0)break;c[y>>2]=(c[y>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>2
]=c[G>>2]|16;G=(c[h>>2]|0)+16|0;c[G>>2]=c[G>>2]|1024;c[(c[h>>2]|0)+32>>
;2]=c[r>>2];break}if(c[(c[h>>2]|0)+16>>2]&64|0){if((c[l>>2]|0)==2){c[w>>2
]=128;c[v>>2]=256}else{c[w>>2]=256;c[v>>2]=128}b:do if(!(c[(c[h>>2]|0)+16>>2]
x26;c[w>>2]|0)){if(c[(c[h>>2]|0)+16>>2]&c[v>>2]|0){c[z>>2]=0;while(1){if((
c[z>>2]|0)>>>0>=(c[A>>2]|0)>>>0)break b;c[t>>2]=c[(c[D>>
;2]|0)+(c[z>>2]<<2)>>2];c[p>>2]=(c[B>>2]|0)-(c[c[t>>2]>>2]|
0)-(c[(c[t>>2]|0)+4>>2]|0);if((c[p>>2]|0)<(c[k>>2]|0)?(0-(c[p>>2]|0)|0)
x3c;(c[k>>2]|0):0)break;c[z>>2]=(c[z>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>2]=c[G
x3e;>2]|1024;c[(c[h>>2]|0)+32>>2]=c[t>>2];G=(c[h>>2]|0)+16|0;c[G>>2]=c[G
x3e;>2]|16}}else{c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[A>>2]|0)>
x3e;>0)break b;c[s>>2]=c[(c[D>>2]|0)+(c[z>>2]<<2)>>2];c[o>>2]=(
c[B>>2]|0)-(c[c[s>>2]>>2]|0);if((c[o>>2]|0)<(c[k>>2]|0)?(0-(c[o>>
;2]|0)|0)<(c[k>>2]|0):0)break;c[z>>2]=(c[z>>2]|0)+1}G=(c[h>>2]|0)+16|0;c[G>>
;2]=c[G>>2]|512;c[(c[h>>2]|0)+32>>2]=c[s>>2];G=(c[h>>2]|0)+16|0;c[G>>
;2]=c[G>>2]|16}while(0);if(!(c[(c[h>>2]|0)+32>>2]|0)){c[z>>2]=0;while(1){if((c[z>
x3e;2]|0)>>>0>=(c[A>>2]|0)>>>0)break a;c[u>>2]=c[(c[D>>2]|0)+(c
[z>>2]<<2)>>2];if((c[B>>2]|0)>=(c[c[u>>2]>>2]|0)?(c[B>>
;2]|0)<=((c[c[u>>2]>>2]|0)+(c[(c[u>>2]|0)+4>>2]|0)|0):0)break;c[z>>2]=(c[
z>>2]|0)+1}c[(c[h>>2]|0)+32>>2]=c[u>>2]}}}while(0);c[j>>2]=(c[j>>2]|
0)+-1;c[h>>2]=(c[h>>2]|0)+48}i=F;return}function Vn(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;q=i;i=i+48|0;f=q+36|0;r=q+32|0;m=q+28|0;o=q+24|0;k=q+20|0;g=q+16|0;l=q+12|0;n=q+8|0;h=q+4|0;j=q;c[f>>2]=b
;c[r>>2]=e;c[k>>2]=c[c[r>>2]>>2];c[l>>2]=c[(c[r>>2]|0)+8>>
2];while(1){if((c[k>>2]|0)>>>0<=0)break;if(!((((a[(c[l>>2]|0)+20>>0]|0)!=2?(a[(
c[l>>2]|0)+20>>0]|0)!=-2:0)?(a[(c[l>>2]|0)+21>>0]|0)!=2:0)?(a[(c[l>>2]|0)+21
x3e;>0]|0)!=-2:0))p=7;a:do if((p|0)==7?(p=0,(c[(c[l>>2]|0)+16>>2]&16|0)==0):0){c[n>>2]=c
[(c[l>>2]|0)+36>>2];c[m>>2]=c[f>>2];c[g>>2]=c[c[m>>2]>>2];
c[o>>2]=(c[m>>2]|0)+4;while(1){if((c[g>>2]|0)>>>0<=0)break;c[h>>2]=(
c[n>>2]|0)-(c[(c[o>>2]|0)+12>>2]|0);if((c[h>>2]|0)<(0-(c[(c[f>>2]|0)+2076
>>2]|0)|0))break;do if((c[n>>2]|0)<=((c[(c[o>>2]|0)+8>>2]|0)+(c[(c[f>>2]|
0)+2076>>2]|0)|0)){if((d[(c[f>>2]|0)+2080>>0]|0)==0?(c[h>>2]|0)>(c[(c[f>>
2]|0)+2072>>2]|0):0)break;c[(c[l>>2]|0)+44>>2]=c[(c[o>>2]|0)+24>>2];r=(c[l>
;>2]|0)+16|0;c[r>>2]=c[r>>2]|16;r=(c[l>>2]|0)+16|0;c[r>>2]=c[r>>2]|32}while
(0);c[g>>2]=(c[g>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+32}c[m>>2]=(c[f>>2]|0
)+516;c[g>>2]=c[c[m>>2]>>2];c[o>>2]=(c[m>>2]|0)+4+(c[g>>2]<<
;5)+-32;while(1){if((c[g>>2]|0)>>>0<=0)break a;c[j>>2]=(c[(c[o>>2]|0)+8>
x3e;2]|0)-(c[n>>2]|0);if((c[j>>2]|0)<(0-(c[(c[f>>2]|0)+2076>>2]|0)|0))break a;do if
((c[n>>2]|0)>=((c[(c[o>>2]|0)+12>>2]|0)-(c[(c[f>>2]|0)+2076>>2]|0)|0)){if
((d[(c[f>>2]|0)+2080>>0]|0)==0?(c[j>>2]|0)>=(c[(c[f>>2]|0)+2072>>2]|0):0)
break;c[(c[l>>2]|0)+44>>2]=c[(c[o>>2]|0)+28>>2];r=(c[l>>2]|0)+16|0;c[r>
x3e;2]=c[r>>2]|16;r=(c[l>>2]|0)+16|0;c[r>>2]=c[r>>2]|32}while(0);c[g>>2]=(c[g
x3e;>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+-32}}while(0);c[k>>2]=(c[k>>2]|0)+-1;c[l>>
;2]=(c[l>>2]|0)+48}i=q;return}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,l=0,m=0;j=i;i=i+32|0;k=j+28
|0;m=j+24|0;l=j+20|0;h=j+16|0;d=j+12|0;g=j+8|0;f=j+4|0;e=j;c[k>>2]=a;c[m>>2]=b;c[l>>2]=(c[(c[k>
;>2]|0)+24>>2]|0)+4+((c[m>>2]|0)*204|0);c[h>>2]=c[(c[l>>2]|0)+196>>2];c[d
>>2]=c[c[k>>2]>>2];c[g>>2]=c[(c[k>>2]|0)+8>>2];while(1){if((c[d>
;>2]|0)>>>0<=0)break;c[f>>2]=c[(c[g>>2]|0)+32>>2];if(c[f>>2]|0){
do if(!(c[(c[g>>2]|0)+16>>2]&512|0)){if(c[(c[g>>2]|0)+16>>2]&1024|0){c[(c[g>
;>2]|0)+44>>2]=(c[(c[f>>2]|0)+8>>2]|0)+(c[(c[f>>2]|0)+12>>2]|0);break}c[e
>>2]=(c[(c[g>>2]|0)+36>>2]|0)-(c[c[f>>2]>>2]|0);if((c[e>>2]|0)<=
0){m=c[(c[f>>2]|0)+8>>2]|0;m=m+(Mb(c[e>>2]|0,c[h>>2]|0)|0)|0;c[(c[g>>2]|0)+44
x3e;>2]=m;break}b=c[(c[f>>2]|0)+8>>2]|0;if((c[e>>2]|0)>=(c[(c[f>>2]|0)+4>
x3e;2]|0)){m=b+(c[(c[f>>2]|0)+12>>2]|0)|0;m=m+(Mb((c[e>>2]|0)-(c[(c[f>>2]|0)+4>>
;2]|0)|0,c[h>>2]|0)|0)|0;c[(c[g>>2]|0)+44>>2]=m;break}else{m=b+(xb(c[e>>2]|0,c[(c[f>
;>2]|0)+12>>2]|0,c[(c[f>>2]|0)+4>>2]|0)|0)|0;c[(c[g>>2]|0)+44>>2]=m;break
}}else c[(c[g>>2]|0)+44>>2]=c[(c[f>>2]|0)+8>>2];while(0);m=(c[g>>2]|0)+16|0;c[
m>>2]=c[m>>2]|32}c[d>>2]=(c[d>>2]|0)+-1;c[g>>2]=(c[g>>2]|0)+48}i=j;return
}function Xn(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;t=i;i=i+128|0;u=t+124|
0;w=t+120|0;v=t+116|0;p=t+112|0;k=t+108|0;q=t+104|0;r=t+40|0;m=t+36|0;g=t+32|0;o=t+28|0;n=t+24|0;e=t+20|0;f=t+16|0;j=t+12|0;h=t+
8|0;l=t+4|0;s=t;c[u>>2]=b;c[w>>2]=d;c[v>>2]=(c[(c[u>>2]|0)+24>>2]|0)+4+((c[w
x3e;>2]|0)*204|0);c[p>>2]=c[(c[v>>2]|0)+196>>2];c[k>>2]=c[(c[u>>2]|0)+16
x3e;>2];c[q>>2]=0;c[m>>2]=0;c[g>>2]=c[(c[u>>2]|0)+8>>2];c[o>>2]=(
c[g>>2]|0)+((c[c[u>>2]>>2]|0)*48|0);c[n>>2]=c[g>>2];while(1){if((c[n>>
;2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(c[(c[n>>2]|0)+16>>2]&
16|0)c[m>>2]=(c[m>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+48}if(!(c[m>>2]|0)){i=t;return}
if((c[m>>2]|0)>>>0>16){c[q>>2]=hc(c[k>>2]|0,4,0,c[m>>2]|0,0,e)|0;if(
c[e>>2]|0){i=t;return}}else c[q>>2]=r;c[m>>2]=0;c[n>>2]=c[g>>2];while(1){if((c
[n>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(c[(c[n>>2]|0)+16>
x3e;2]&16|0){c[f>>2]=(c[q>>2]|0)+(c[m>>2]<<2);while(1){if((c[f>>2]|0)>
;>>0<=(c[q>>2]|0)>>>0)break;if((c[(c[(c[f>>2]|0)+-4>>2]|0)+36>
x3e;2]|0)<=(c[(c[n>>2]|0)+36>>2]|0))break;c[c[f>>2]>>2]=c[(c[f>>2]|0)+-4
x3e;>2];c[f>>2]=(c[f>>2]|0)+-4}c[c[f>>2]>>2]=c[n>>2];c[m>>2]=(c
[m>>2]|0)+1}c[n>>2]=(c[n>>2]|0)+48}c[n>>2]=c[g>>2];while(1){if((c[n>>
;2]|0)>>>0>=(c[o>>2]|0)>>>0)break;do if(!(c[(c[n>>2]|0)+16>>2]
x26;16)){if(c[(c[n>>2]|0)+12>>2]&2|0){if((a[(c[n>>2]|0)+20>>0]|0)==4)break;if((a[(c
[n>>2]|0)+20>>0]|0)!=(a[(c[n>>2]|0)+21>>0]|0))break;if((c[(c[n>>2]|0)+16>
x3e;2]&64|0)==0?(c[(c[n>>2]|0)+12>>2]&4|0)==0:0)break;w=(c[n>>2]|0)+12|0;c[w>>
2]=c[w>>2]&-3}c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[m>>2]|0
)>>>0)break;if((c[(c[(c[q>>2]|0)+(c[l>>2]<<2)>>2]|0)+36>>2]|0)
x3e;(c[(c[n>>2]|0)+36>>2]|0))break;c[l>>2]=(c[l>>2]|0)+1}do if(c[l>>2]|0){c[j
x3e;>2]=c[(c[q>>2]|0)+((c[l>>2]|0)-1<<2)>>2];c[l>>2]=c[m>>2];while
(1){if((c[l>>2]|0)>>>0<=0)break;if((c[(c[(c[q>>2]|0)+((c[l>>2]|0)-1<<
;2)>>2]|0)+36>>2]|0)<(c[(c[n>>2]|0)+36>>2]|0))break;c[l>>2]=(c[l>>
;2]|0)+-1}d=c[l>>2]|0;if((c[l>>2]|0)==(c[m>>2]|0)){c[j>>2]=c[(c[q>>2]|0)+(d-1
x3c;<2)>>2];w=c[(c[j>>2]|0)+44>>2]|0;w=w+(Mb((c[(c[n>>2]|0)+36>>2]|0)-(c[(
c[j>>2]|0)+36>>2]|0)|0,c[p>>2]|0)|0)|0;c[(c[n>>2]|0)+44>>2]=w;break}c[h>
x3e;2]=c[(c[q>>2]|0)+(d<<2)>>2];c[s>>2]=c[(c[n>>2]|0)+36>>2];if((c[s
>>2]|0)==(c[(c[j>>2]|0)+36>>2]|0)){c[(c[n>>2]|0)+44>>2]=c[(c[j>>2]|0
)+44>>2];break}if((c[s>>2]|0)==(c[(c[h>>2]|0)+36>>2]|0)){c[(c[n>>2]|0)+44>
;>2]=c[(c[h>>2]|0)+44>>2];break}else{w=c[(c[j>>2]|0)+44>>2]|0;w=w+(xb((c[s>>
;2]|0)-(c[(c[j>>2]|0)+36>>2]|0)|0,(c[(c[h>>2]|0)+44>>2]|0)-(c[(c[j>>2]|0)+44
x3e;>2]|0)|0,(c[(c[h>>2]|0)+36>>2]|0)-(c[(c[j>>2]|0)+36>>2]|0)|0)|0)|0;c[(c[n>
x3e;2]|0)+44>>2]=w;break}}else{c[h>>2]=c[c[q>>2]>>2];w=c[(c[h>>2]|0)+44>
x3e;2]|0;w=w+(Mb((c[(c[n>>2]|0)+36>>2]|0)-(c[(c[h>>2]|0)+36>>2]|0)|0,c[p>>2]|0
)|0)|0;c[(c[n>>2]|0)+44>>2]=w}while(0);w=(c[n>>2]|0)+16|0;c[w>>2]=c[w>>2]|32}while
(0);c[n>>2]=(c[n>>2]|0)+48}if((c[q>>2]|0)==(r|0)){i=t;return}Fb(c[k>>2]|0,c[q>>
;2]|0);c[q>>2]=0;i=t;return}function Yn(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;v=i;i=i+80|0;w=v+76|0;y=v+72|0;x=v+68|0;s=v+64|0;h=v+60|0;d=v+56|0;m=v+52|0;u=v+48|0;j=v+44|0;l=v+40|
0;r=v+36|0;k=v+32|0;n=v+28|0;o=v+24|0;e=v+20|0;f=v+16|0;q=v+12|0;p=v+8|0;g=v+4|0;t=v;c[w>>2]=a;c[y>>2]=b;c[x
>>2]=(c[(c[w>>2]|0)+24>>2]|0)+4+((c[y>>2]|0)*204|0);c[s>>2]=c[(c[x>>
2]|0)+196>>2];c[h>>2]=c[(c[x>>2]|0)+200>>2];c[d>>2]=c[(c[w>>2]|0)+12
>>2];c[m>>2]=c[(c[w>>2]|0)+4>>2];while(1){if((c[m>>2]|0)>>>0<
;=0)break;c[u>>2]=c[c[d>>2]>>2];c[l>>2]=(c[u>>2]|0)+((c[(c[d>>2]|0)+
4>>2]|0)*48|0);c[k>>2]=0;c[j>>2]=0;c[r>>2]=c[u>>2];while(1){if((c[r>>
;2]|0)>>>0>=(c[l>>2]|0)>>>0)break;if(c[(c[r>>2]|0)+16>>2]&
32|0){if(!(c[j>>2]|0))c[j>>2]=c[r>>2];c[k>>2]=(c[k>>2]|0)+1}c[r>>2]=(
c[r>>2]|0)+48}a:do if((c[k>>2]|0)>>>0<2){if((c[k>>2]|0)==1){y=c[(c[j>>
;2]|0)+44>>2]|0;c[h>>2]=y-(Mb(c[(c[j>>2]|0)+36>>2]|0,c[s>>2]|0)|0)}c[r>
x3e;2]=c[u>>2];while(1){if((c[r>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break
a;if((c[r>>2]|0)!=(c[j>>2]|0)){y=Mb(c[(c[r>>2]|0)+36>>2]|0,c[s>>2]|0)|0;c[(c[
r>>2]|0)+44>>2]=y+(c[h>>2]|0)}c[r>>2]=(c[r>>2]|0)+48}}else{c[u>>2]=c
[j>>2];do{c[r>>2]=c[j>>2];while(1){c[l>>2]=c[(c[j>>2]|0)+4>>2];if((c
[l>>2]|0)==(c[u>>2]|0))break a;if(!(c[(c[l>>2]|0)+16>>2]&32))break;c[j>>2
]=c[l>>2]}do c[l>>2]=c[(c[l>>2]|0)+4>>2];while(!(c[(c[l>>2]|0)+16>>2
]&32|0));if((c[(c[j>>2]|0)+36>>2]|0)<=(c[(c[l>>2]|0)+36>>2]|0)){c[n>>
;2]=c[(c[j>>2]|0)+36>>2];c[e>>2]=c[(c[j>>2]|0)+44>>2];c[o>>2]=(c[(c[
l>>2]|0)+36>>2]|0)-(c[n>>2]|0);c[f>>2]=(c[(c[l>>2]|0)+44>>2]|0)-(c[e
>>2]|0)}else{c[n>>2]=c[(c[l>>2]|0)+36>>2];c[e>>2]=c[(c[l>>2]|0)+44
x3e;>2];c[o>>2]=(c[(c[j>>2]|0)+36>>2]|0)-(c[n>>2]|0);c[f>>2]=(c[(c[j>
;>2]|0)+44>>2]|0)-(c[e>>2]|0)}c[t>>2]=65536;if((c[o>>2]|0)>0)c[t>>2]=
Vb(c[f>>2]|0,c[o>>2]|0)|0;c[r>>2]=c[(c[j>>2]|0)+4>>2];do{c[q>>2]=c[(
c[r>>2]|0)+36>>2];c[p>>2]=(c[q>>2]|0)-(c[n>>2]|0);do if((c[p>>2]|0)
x3e;0){b=c[e>>2]|0;if((c[p>>2]|0)>=(c[o>>2]|0)){y=b+(c[f>>2]|0)|0;c[g>>2]=
y+(Mb((c[p>>2]|0)-(c[o>>2]|0)|0,c[s>>2]|0)|0);break}else{c[g>>2]=b+(Mb(c[p>>2]|
0,c[t>>2]|0)|0);break}}else{y=c[e>>2]|0;c[g>>2]=y+(Mb(c[p>>2]|0,c[s>>2]|0)|0)}
while(0);c[(c[r>>2]|0)+44>>2]=c[g>>2];c[r>>2]=c[(c[r>>2]|0)+4>>2]}while
((c[r>>2]|0)!=(c[l>>2]|0));c[j>>2]=c[l>>2]}while((c[j>>2]|0)!=(c[u>>
2]|0))}while(0);c[m>>2]=(c[m>>2]|0)+-1;c[d>>2]=(c[d>>2]|0)+8}i=v;return}function Zn(b,d){
b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0;j=l;c[e>>2]=b;c[f
x3e;>2]=d;c[h>>2]=c[(c[e>>2]|0)+8>>2];c[k>>2]=c[(c[(c[e>>2]|0)+20>
x3e;2]|0)+4>>2];c[j>>2]=c[(c[(c[e>>2]|0)+20>>2]|0)+8>>2];c[g>>2]=0;while
(1){if((c[g>>2]|0)>>>0>=(c[c[e>>2]>>2]|0)>>>0)break;d=c[(c[h>
;>2]|0)+44>>2]|0;b=(c[k>>2]|0)+(c[g>>2]<<3)|0;if(!(c[f>>2]|0))c[b>
x3e;2]=d;else c[b+4>>2]=d;if(c[(c[h>>2]|0)+16>>2]&16|0){b=(c[j>>2]|0)+(c[g>>
;2]|0)|0;a[b>>0]=a[b>>0]|(((c[f>>2]|0)==0?32:64)&255)<<24>>24}c[h>
x3e;2]=(c[h>>2]|0)+48;c[g>>2]=(c[g>>2]|0)+1}i=l;return}function _n(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]|0)+16>>2];$n((c[d>>2]|0)+28+40
|0,c[e>>2]|0);$n((c[d>>2]|0)+28|0,c[e>>2]|0);Fb(c[e>>2]|0,c[(c[d>>2]|0)+8>
;>2]|0);c[(c[d>>2]|0)+8>>2]=0;Fb(c[e>>2]|0,c[(c[d>>2]|0)+12>>2]|0);c[(c[d
>>2]|0)+12>>2]=0;c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>
x3e;2]|0)+16>>2]=0;i=b;return}function $n(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2
]=0;c[(c[e>>2]|0)+20>>2]=0;c[(c[e>>2]|0)+28>>2]=0;Fb(c[f>>2]|0,c[(c[e>>
;2]|0)+12>>2]|0);c[(c[e>>2]|0)+12>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>
;2]|0);c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[c[e>>2]>>2]=0;c
[(c[e>>2]|0)+16>>2]=0;i=d;return}function ao(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;c[a>>2]=0;c[a+4>>2]=0;c[a+8>>2]=0;c[a+12>>2]=0;c[a+16>>2]=0;c
[a+20>>2]=0;c[a+24>>2]=0;c[(c[d>>2]|0)+4>>2]=38;c[(c[d>>2]|0)+8>>2]=
108;c[(c[d>>2]|0)+12>>2]=11;c[(c[d>>2]|0)+16>>2]=12;c[(c[d>>2]|0)+20>>
;2]=15;c[(c[d>>2]|0)+24>>2]=24;i=b;return}function bo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2
]=a;dn(c[d>>2]|0,2);i=b;return}function co(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;o=
i;i=i+160|0;f=o+156|0;g=o+152|0;h=o+148|0;j=o+144|0;l=o+16|0;n=o+8|0;k=o+4|0;m=o;c[f>>2]=a;c[g>>2]=b;c[h>
;>2]=d;c[j>>2]=e;c[m>>2]=c[h>>2];c[n>>2]=0;while(1){if((c[m>>2]|0)<=
0)break;a=c[m>>2]|0;c[h>>2]=a;c[h>>2]=(c[h>>2]|0)>16?16:a;c[k>>2]=0;while
(1){if((c[k>>2]|0)>=(c[h>>2]<<1|0))break;c[n>>2]=(c[n>>2]|0)+(c[(c[j>
;>2]|0)+(c[k>>2]<<2)>>2]|0);a=(Tb(c[n>>2]|0)|0)>>16;c[l+(c[k>>2
]<<2)>>2]=a;c[k>>2]=(c[k>>2]|0)+1}c[k>>2]=0;while(1){if((c[k>>2]|0)
x3e;=(c[h>>2]<<1|0))break;c[l+((c[k>>2]|0)+1<<2)>>2]=(c[l+((c[k>>2]|
0)+1<<2)>>2]|0)-(c[l+(c[k>>2]<<2)>>2]|0);c[k>>2]=(c[k>>2]|
0)+2}pn(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,l);c[m>>2]=(c[m>>2]|0)-(c[h>>2
]|0)}i=o;return}function eo(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;p=i;i=i+48|0;f=p+32|0;g
=p+28|0;h=p+24|0;j=p+20|0;n=p+16|0;m=p+12|0;o=p+8|0;k=p+4|0;l=p;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j
x3e;>2]=e;if(c[(c[f>>2]|0)+4>>2]|0){i=p;return}c[m>>2]=(c[f>>2]|0)+16;c[o>>
;2]=c[c[f>>2]>>2];c[k>>2]=c[c[m>>2]>>2];c[l>>2]=c[(c[m>>2]|
0)+36>>2];if((c[h>>2]|0)!=((c[k>>2]|0)+(c[l>>2]|0)|0)){i=p;return}c[n>>2]=fo(c
[m>>2]|0,c[j>>2]|0,c[l>>2]|0,c[k>>2]|0,c[g>>2]|0,c[o>>2]|0)|0;if((c[
n>>2]|0)==0?(c[n>>2]=fo((c[m>>2]|0)+36|0,c[j>>2]|0,0,c[l>>2]|0,c[g>>
2]|0,c[o>>2]|0)|0,(c[n>>2]|0)==0):0){i=p;return}c[(c[f>>2]|0)+4>>2]=c[n>>2];i=
p;return}function fo(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;o=i;i=i+32|0;h=o+24|0;
j=o+20|0;k=o+16|0;l=o+12|0;p=o+8|0;m=o+4|0;n=o;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c
[p>>2]=f;c[m>>2]=g;c[n>>2]=0;c[n>>2]=Bn(c[h>>2]|0,c[p>>2]|0,c[m>
;>2]|0)|0;if(c[n>>2]|0){p=c[n>>2]|0;i=o;return p|0}c[n>>2]=go((c[h>>2]|0)+12|0,c[j
x3e;>2]|0,c[k>>2]|0,c[l>>2]|0,c[m>>2]|0)|0;p=c[n>>2]|0;i=o;return p|0}function go(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;u=i;i=i+48|0;v=u+44|0;j=u+40|0;k
=u+36|0;l=u+32|0;m=u+28|0;n=u+24|0;o=u+20|0;p=u+16|0;q=u+12|0;t=u+8|0;s=u+4|0;r=u;c[v>>2]=b;c[j>>2]=e;c[k>
;>2]=f;c[l>>2]=g;c[m>>2]=h;c[n>>2]=0;c[n>>2]=tn(c[v>>2]|0,c[m>>
2]|0,o)|0;if(c[n>>2]|0){v=c[n>>2]|0;i=u;return v|0}c[n>>2]=mn(c[o>>2]|0,c[l>>2
]|0,c[m>>2]|0)|0;if(c[n>>2]|0){v=c[n>>2]|0;i=u;return v|0}c[c[o>>2]>>2]=c[l>
;>2];c[p>>2]=(c[j>>2]|0)+((c[k>>2]|0)>>>3);c[q>>2]=128>>(c
[k>>2]&7);c[t>>2]=c[(c[o>>2]|0)+8>>2];c[s>>2]=128;while(1){if((c[l>
x3e;2]|0)>>>0<=0)break;c[r>>2]=(d[c[t>>2]>>0]|0)&~c[s>>2];if((d
[c[p>>2]>>0]|0)&c[q>>2]|0)c[r>>2]=c[r>>2]|c[s>>2];a[c[t>
x3e;2]>>0]=c[r>>2];c[q>>2]=c[q>>2]>>1;if(!(c[q>>2]|0)){c[p>>
;2]=(c[p>>2]|0)+1;c[q>>2]=128}c[s>>2]=c[s>>2]>>1;if(!(c[s>>2]|0)){c[
t>>2]=(c[t>>2]|0)+1;c[s>>2]=128}c[l>>2]=(c[l>>2]|0)+-1}v=c[n>>2]|0;i
=u;return v|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,m=0,n=0;n=i;i=i+32|0;e=n+28|0;f=n+24|0;g=n+20
|0;l=n+16|0;k=n+12|0;m=n+8|0;h=n+4|0;j=n;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(c[(c[e>>2]|0)+
4>>2]|0){i=n;return}c[k>>2]=(c[e>>2]|0)+16;c[m>>2]=c[c[e>>2]>>2];c[h
>>2]=c[c[k>>2]>>2];c[j>>2]=c[(c[k>>2]|0)+36>>2];if((c[f>>2
]|0)!=((c[h>>2]|0)+(c[j>>2]|0)|0)){i=n;return}c[l>>2]=fo(c[k>>2]|0,c[g>>2]|0,0
,c[h>>2]|0,0,c[m>>2]|0)|0;if((c[l>>2]|0)==0?(c[l>>2]=fo((c[k>>2]|0)+36|0,c[g
x3e;>2]|0,c[h>>2]|0,c[j>>2]|0,0,c[m>>2]|0)|0,(c[l>>2]|0)==0):0){i=n;return}c[(c[e
x3e;>2]|0)+4>>2]=c[l>>2];i=n;return}function io(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)+120>>2]=0;c[(c[d>>2]|0)+148>>2]=0;jo((c[d>>2]|0)+20|0);i=b;return
}function jo(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]>
x3e;2];ko((c[d>>2]|0)+16|0,c[e>>2]|0);ko((c[d>>2]|0)+16+36|0,c[e>>2]|0);c[(c[d>>
;2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;i=b;return}function ko(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;lo((c[f>>2]|0)+24|0,c[e>>2]|0);lo((c[f>>2]|0
)+12|0,c[e>>2]|0);no(c[f>>2]|0,c[e>>2]|0);i=d;return}function lo(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[f>>2]=c[(c[d>>2]|
0)+4>>2];c[g>>2]=c[(c[d>>2]|0)+8>>2];while(1){if((c[f>>2]|0)>>>
0<=0)break;mo(c[g>>2]|0,c[e>>2]|0);c[f>>2]=(c[f>>2]|0)+-1;c[g>>2]=(c[g>
;>2]|0)+16}Fb(c[e>>2]|0,c[(c[d>>2]|0)+8>>2]|0);c[(c[d>>2]|0)+8>>2]=0;c[c[
d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;i=h;return}function mo(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>2
]|0);c[(c[e>>2]|0)+8>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;c[(
c[e>>2]|0)+12>>2]=0;i=d;return}function no(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;Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>2]|0);c[(c[e>>2]|0)+8>
;>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;i=d;return}function oo(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;
c[c[e>>2]>>2]=0;c[g>>2]=bc(c[d>>2]|0,24,f)|0;if(c[f>>2]|0){g=c[f>>2]|
0;i=h;return g|0}c[(c[g>>2]|0)+8>>2]=c[d>>2];po(c[g>>2]|0);c[c[e>>2]>>
;2]=c[g>>2];g=c[f>>2]|0;i=h;return g|0}function po(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a
;c[d>>2]=c[d>>2];i=b;return}function qo(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;e=j+12
|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if(!(c[e>>2]|0)){i=j;return}if((c[f
>>2]|0)!=0&(c[g>>2]|0)>=3076){c[h>>2]=c[f>>2];c[c[e>>2]>>2
]=(c[f>>2]|0)+1032;c[(c[e>>2]|0)+4>>2]=(c[f>>2]|0)+(c[g>>2]|0)-(c[c[e>>
;2]>>2]|0);c[(c[e>>2]|0)+12>>2]=c[h>>2];i=j;return}else{c[c[e>>2]>>2
]=0;c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+12>>2]=0;i=j;return}}function ro(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;c[h
x3e;>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>>2];i=e;return}function so(a,
d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l+20|0;e=l+16|0;j=l+12|0;f=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c
[j>>2]=d;c[f>>2]=c[(c[j>>2]|0)+4>>2];c[g>>2]=c[c[j>>2]>>2];
if((c[e>>2]|0?c[c[e>>2]>>2]|0:0)?c[(c[e>>2]|0)+4>>2]|0:0){if(!(c[f>>
2]|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}if(b[(c[f>>2]|0)+2>>1]|0?(b[c[f>>
2]>>1]|0)>0:0){if(c[(c[f>>2]|0)+12>>2]|0?c[(c[f>>2]|0)+4>>2]|0:0){if((b[(
c[f>>2]|0)+2>>1]|0)!=((b[(c[(c[f>>2]|0)+12>>2]|0)+((b[c[f>>2]>>1]|0)-
1<<1)>>1]|0)+1|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}c[h>>2]=c[(c[e>
x3e;2]|0)+12>>2];if(c[(c[j>>2]|0)+8>>2]&2|0){c[k>>2]=19;k=c[k>>2]|0;i=l;return
k|0}if(!(c[g>>2]|0)){c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}if(c[(c[g>>2]|0)+4>>
;2]|0?c[c[g>>2]>>2]|0:0){if(!(c[(c[g>>2]|0)+12>>2]|0)){c[k>>2]=20;k=c[k>
x3e;2]|0;i=l;return k|0}a=(c[h>>2]|0)+128|0;d=c[f>>2]|0;c[a>>2]=c[d>>2];c[a+4>>
;2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];c[a+16>>2]=c
[d+16>>2];a=(c[h>>2]|0)+104|0;g=c[g>>2]|0;c[a>>2]=c[g>>2];c[a+4>>2]=
c[g+4>>2];c[a+8>>2]=c[g+8>>2];c[a+12>>2]=c[g+12>>2];c[a+16>>2]=c[g+16
>>2];c[a+20>>2]=c[g+20>>2];c[(c[h>>2]|0)+28>>2]=c[c[e>>2]>>
;2];c[(c[h>>2]|0)+32>>2]=(c[(c[h>>2]|0)+28>>2]|0)+((((c[(c[e>>2]|0)+4>>
;2]|0)>>>0)/4|0)<<2);e=c[h>>2]|0;if(c[(c[j>>2]|0)+8>>2]&1|0)e=to(e)|
0;else e=uo(e)|0;c[k>>2]=e;k=c[k>>2]|0;i=l;return k|0}c[k>>2]=0;k=c[k>>2]|0;i=l;return k
|0}c[k>>2]=20;k=c[k>>2]|0;i=l;return k|0}c[k>>2]=0;k=c[k>>2]|0;i=l;return k|0}c[k>
x3e;2]=96;k=c[k>>2]|0;i=l;return k|0}function to(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>
x3e;2]=c[d>>2];i=b;return 19}function uo(e){e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;g=k+8|0;h=k+4|0;j=k;c[h>
x3e;2]=e;vo(c[h>>2]|0,c[(c[h>>2]|0)+128+16>>2]&256);c[(c[h>>2]|0)+24>>2]=
c[(c[h>>2]|0)+12>>2];e=c[h>>2]|0;if(!(c[(c[h>>2]|0)+128+16>>2]&8|0)){f=(c
[h>>2]|0)+180|0;if(c[e+128+16>>2]&16|0)a[f>>0]=4;else a[f>>0]=0;if(!(c[(c[h>
x3e;2]|0)+128+16>>2]&32)){f=(c[h>>2]|0)+180|0;a[f>>0]=(d[f>>0]|0)+1}}else a[e+180
x3e;>0]=2;a[(c[h>>2]|0)+181>>0]=((c[(c[h>>2]|0)+128+16>>2]&512|0)!=0^1)&1
;c[(c[h>>2]|0)+164>>2]=16;c[(c[h>>2]|0)+168>>2]=1;c[(c[h>>2]|0)+172>>
;2]=2;c[(c[h>>2]|0)+176>>2]=39;c[(c[h>>2]|0)+1024>>2]=0;b[(c[h>>2]|0)+960>
;>1]=0;b[(c[h>>2]|0)+960+2>>1]=(c[(c[h>>2]|0)+104>>2]|0)-1;b[(c[h>>2]|0)+
56>>1]=c[(c[h>>2]|0)+104+4>>2];c[(c[h>>2]|0)+60>>2]=c[(c[h>>2]|0)+104
+12>>2];f=Ao(c[h>>2]|0,0)|0;c[j>>2]=f;if(f|0){c[g>>2]=c[j>>2];j=c[g>>
;2]|0;i=k;return j|0}if((a[(c[h>>2]|0)+181>>0]|0?(d[(c[h>>2]|0)+180>>0]|0)!=2:0)?(c[(c[h
>>2]|0)+164>>2]=17,c[(c[h>>2]|0)+168>>2]=3,c[(c[h>>2]|0)+172>>2]=4,c
[(c[h>>2]|0)+176>>2]=40,c[(c[h>>2]|0)+1024>>2]=0,b[(c[h>>2]|0)+960>>
1]=0,b[(c[h>>2]|0)+960+2>>1]=(c[(c[h>>2]|0)+104+4>>2]|0)-1,h=Ao(c[h>>2]|0,1)|0
,c[j>>2]=h,h|0):0){c[g>>2]=c[j>>2];j=c[g>>2]|0;i=k;return j|0}c[g>>2]=0;j=c[g
x3e;>2]|0;i=k;return j|0}function vo(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;b=c[d>>2]|0;if(c[f>>2]|0){c[b>>2]=12;c[(c[d>>2]|0)+16>>2]=256;c[(c
[d>>2]|0)+20>>2]=50}else{c[b>>2]=6;c[(c[d>>2]|0)+16>>2]=32;c[(c[d>>2
]|0)+20>>2]=2}c[(c[d>>2]|0)+4>>2]=1<<c[c[d>>2]>>2];c[(c[d>>
;2]|0)+8>>2]=(c[(c[d>>2]|0)+4>>2]|0)/2|0;c[(c[d>>2]|0)+12>>2]=(c[c[d>>
;2]>>2]|0)-6;i=e;return}function wo(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;h=i;i=i+16|0;f=h+12|0;j=h+8|0;k=h
+4|0;g=h;c[f>>2]=a;c[j>>2]=d;c[k>>2]=e;c[g>>2]=c[(c[f>>2]|0)+104+8>>
2];c[k>>2]=c[k>>2];b[(c[f>>2]|0)+156>>1]=0-(c[g>>2]|0);a=_(0-(b[c[j>>
;2]>>1]|0)|0,c[g>>2]|0)|0;c[(c[f>>2]|0)+148>>2]=a;if((c[g>>2]|0)<=0){k=c[
f>>2]|0;k=k+158|0;b[k>>1]=0;k=c[f>>2]|0;k=k+160|0;b[k>>1]=0;i=h;return}j=_((c[(c[f>
x3e;2]|0)+104>>2]|0)-1|0,c[g>>2]|0)|0;k=(c[f>>2]|0)+148|0;c[k>>2]=(c[k>>2]|0)+
j;k=c[f>>2]|0;k=k+158|0;b[k>>1]=0;k=c[f>>2]|0;k=k+160|0;b[k>>1]=0;i=h;return}function xo
(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;v=i;i=i+48|0;m=v+36
|0;z=v+40|0;w=v+32|0;n=v+28|0;y=v+24|0;x=v+20|0;p=v+16|0;q=v+12|0;o=v+8|0;s=v+4|0;r=v+43|0;t=v+42|0;u=v;c[m>>2]=f;b[z
x3e;>1]=g;c[w>>2]=h;c[n>>2]=j;c[y>>2]=k;c[x>>2]=l;b[z>>1]=b[z>>
1]|0;c[y>>2]=c[y>>2];c[x>>2]=c[x>>2];c[p>>2]=((c[w>>2]|0)+(c[(c[m>
;>2]|0)+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>2]|0))>>c[c[m>>2]>>
2];if(((c[n>>2]|0)-(c[w>>2]|0)-(c[(c[m>>2]|0)+4>>2]|0)|0)<=(c[(c[m>>2]|0)+
20>>2]|0))c[q>>2]=c[p>>2];else c[q>>2]=(c[n>>2]&0-(c[(c[m>>2]|0
)+4>>2]|0))>>c[c[m>>2]>>2];if((c[q>>2]|0)<0){i=v;return}if((c[p>>
;2]|0)>=(e[(c[m>>2]|0)+56>>1]|0)){i=v;return}if((c[p>>2]|0)<0)c[p>>2]=0;if((c[
q>>2]|0)>=(e[(c[m>>2]|0)+56>>1]|0))c[q>>2]=(e[(c[m>>2]|0)+56>>1
]|0)-1;c[o>>2]=(c[p>>2]>>3&65535)<<16>>16;c[s>>2]=(c[q>>
;2]>>3&65535)<<16>>16;a[r>>0]=255>>(c[p>>2]&7);a[t>
x3e;0]=~(127>>(c[q>>2]&7));if((b[(c[m>>2]|0)+158>>1]|0)>(c[o>>2]|0))
b[(c[m>>2]|0)+158>>1]=c[o>>2];if((b[(c[m>>2]|0)+160>>1]|0)<(c[s>>
;2]|0))b[(c[m>>2]|0)+160>>1]=c[s>>2];c[u>>2]=(c[(c[m>>2]|0)+60>>2]|0
)+(c[(c[m>>2]|0)+148>>2]|0)+(c[o>>2]|0);c[s>>2]=(c[s>>2]|0)-(c[o>>2]|
0);m=d[r>>0]|0;if((c[s>>2]|0)<=0){z=c[u>>2]|0;a[z>>0]=d[z>>0]|m&d[t
x3e;>0];i=v;return}z=c[u>>2]|0;a[z>>0]=d[z>>0]|m;c[s>>2]=(c[s>>2]|0)+-1;while
(1){if((c[s>>2]|0)<=0)break;z=(c[u>>2]|0)+1|0;c[u>>2]=z;a[z>>0]=-1;c[s>>2
]=(c[s>>2]|0)+-1}z=(c[u>>2]|0)+1|0;a[z>>0]=d[z>>0]|d[t>>0];i=v;return}function
yo(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;y=i;i=i+48|0;m=y+32
|0;n=y+40|0;o=y+28|0;p=y+24|0;q=y+20|0;r=y+16|0;u=y+12|0;v=y+8|0;x=y+4|0;s=y+38|0;w=y+36|0;t=y;c[m>>2]=f;b[n>>
;1]=g;c[o>>2]=h;c[p>>2]=j;c[q>>2]=k;c[r>>2]=l;c[u>>2]=(c[o>>2]|0)+(c
[(c[m>>2]|0)+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>2]|0);c[v>>2]=c[p>>
2]&0-(c[(c[m>>2]|0)+4>>2]|0);c[x>>2]=c[u>>2];if((c[u>>2]|0)>(c[v>
;>2]|0)){c[t>>2]=c[(c[q>>2]|0)+12>>2]&7;if((c[u>>2]|0)!=((c[v>>2]|0)+(
c[(c[m>>2]|0)+4>>2]|0)|0)){i=y;return}a:do switch(c[t>>2]|0){case 0:{c[x>>2]=c[v>
x3e;2];break}case 4:{c[x>>2]=(((c[o>>2]|0)+(c[p>>2]|0)-1|0)/2|0)+(c[(c[m>>2]|0)+8>
x3e;2]|0)&0-(c[(c[m>>2]|0)+4>>2]|0);break}case 5:case 1:{if((c[(c[q>>2]|0)+28>>2]|0
)==(c[r>>2]|0)?(c[(c[q>>2]|0)+16>>2]|0)<=0:0){if(!(c[(c[q>>2]|0)+12>>2]
x26;16)){i=y;return}if(((c[p>>2]|0)-(c[o>>2]|0)|0)<(c[(c[m>>2]|0)+8>>2]|0)){i=y;return
}}if((c[(c[r>>2]|0)+28>>2]|0)==(c[q>>2]|0)?(c[(c[q>>2]|0)+20>>2]|0)==(b[n>
;>1]|0):0){if(!(c[(c[q>>2]|0)+12>>2]&32)){i=y;return}if(((c[p>>2]|0)-(c[o>>2]|
0)|0)<(c[(c[m>>2]|0)+8>>2]|0)){i=y;return}}if((c[t>>2]|0)==1){c[x>>2]=c[v>>
;2];break a}else{c[x>>2]=(((c[o>>2]|0)+(c[p>>2]|0)-1|0)/2|0)+(c[(c[m>>2]|0)+8>>
;2]|0)&0-(c[(c[m>>2]|0)+4>>2]|0);break a}}default:{i=y;return}}while(0);c[u>>2]=(c[x>>
;2]|0)==(c[u>>2]|0)?c[v>>2]|0:c[u>>2]|0;c[u>>2]=c[u>>2]>>c[c[m>
x3e;2]>>2];b[s>>1]=c[u>>2]>>3;b[w>>1]=c[u>>2]&7;if(((c[u>
x3e;2]|0)>=0?(c[u>>2]|0)<(e[(c[m>>2]|0)+56>>1]|0):0)?d[(c[(c[m>>2]|0)+60>
x3e;2]|0)+((c[(c[m>>2]|0)+148>>2]|0)+(b[s>>1]|0))>>0]&128>>b[w>>
;1]|0:0){i=y;return}}c[u>>2]=c[x>>2]>>c[c[m>>2]>>2];if((c[u>>2]|0)
x3c;0){i=y;return}if((c[u>>2]|0)>=(e[(c[m>>2]|0)+56>>1]|0)){i=y;return}b[s>>1]=c[u
x3e;>2]>>3;b[w>>1]=c[u>>2]&7;if((b[(c[m>>2]|0)+158>>1]|0)>(b[s
x3e;>1]|0))b[(c[m>>2]|0)+158>>1]=b[s>>1]|0;if((b[(c[m>>2]|0)+160>>1]|0)
x3c;(b[s>>1]|0))b[(c[m>>2]|0)+160>>1]=b[s>>1]|0;g=(c[(c[m>>2]|0)+60>>
;2]|0)+((c[(c[m>>2]|0)+148>>2]|0)+(b[s>>1]|0))|0;a[g>>0]=d[g>>0]|(128>>
;b[w>>1]&255)<<24>>24;i=y;return}function zo(a){a=a|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>
x3e;2]=a;a=(c[e>>2]|0)+148|0;c[a>>2]=(c[a>>2]|0)+(b[(c[e>>2]|0)+156>>1]|0);i=d
;return}function Ao(d,e){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+16|0;k=m+4|0;l=m;f=m+14|0;g=m+12|0;h=m+10|0;j=m+8|0
;c[l>>2]=d;a[f>>0]=e;while(1){if((c[(c[l>>2]|0)+1024>>2]|0)<0){e=14;break}d=_(b[(c[
l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>>1]|0,c[(c[l>>2]|0)+4>
;>2]|0)|0;c[(c[l>>2]|0)+80>>2]=d;d=_(b[(c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>
;2]<<2)>>1]|0,c[(c[l>>2]|0)+4>>2]|0)|0;c[(c[l>>2]|0)+76>>2]=d;c[(c[l
>>2]|0)+40>>2]=c[(c[l>>2]|0)+28>>2];c[(c[l>>2]|0)+44>>2]=0;d=(Bo(c[l
>>2]|0,a[f>>0]|0)|0)<<24>>24!=0;e=c[l>>2]|0;if(!d){if(c[e+92>>2]|0?(
Qo(c[l>>2]|0)|0)<<24>>24:0){e=12;break}d=(c[l>>2]|0)+1024|0;c[d>>2]=(c[d>
x3e;2]|0)+-1;continue}if((c[e+44>>2]|0)!=98){e=5;break}c[(c[l>>2]|0)+44>>2]=0;b[g>>1]=b[(
c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)>>1]|0;b[h>>1]=b[(c[l>
;>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>>1]|0;b[j>>1]=((b[g>>
1]|0)+(b[h>>1]|0)|0)/2|0;if((c[(c[l>>2]|0)+1024>>2]|0)>=7){e=8;break}if((b[j>>1]|0)
x3c;(b[g>>1]|0)){e=8;break}b[(c[l>>2]|0)+960+((c[(c[l>>2]|0)+1024>>2]|0)+1<<2)
x3e;>1]=b[j>>1]|0;b[(c[l>>2]|0)+960+((c[(c[l>>2]|0)+1024>>2]|0)+1<<2)+2
x3e;>1]=b[h>>1]|0;b[(c[l>>2]|0)+960+(c[(c[l>>2]|0)+1024>>2]<<2)+2>
x3e;1]=(b[j>>1]|0)-1;d=(c[l>>2]|0)+1024|0;c[d>>2]=(c[d>>2]|0)+1}if((e|0)==5){c[k>
x3e;2]=1;l=c[k>>2]|0;i=m;return l|0}else if((e|0)==8){c[(c[l>>2]|0)+1024>>2]=0;c[(c[l>>2
]|0)+44>>2]=20;c[k>>2]=c[(c[l>>2]|0)+44>>2];l=c[k>>2]|0;i=m;return l|0}else if
((e|0)==12){c[k>>2]=c[(c[l>>2]|0)+44>>2];l=c[k>>2]|0;i=m;return l|0}else if((e|0)==14){c
[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}return 0}function Bo(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;n=i;i=i+32|0;l=n+21|0;m=n+16|0;f=n+12|0;g=n+8|0;k=n+4|0;h=n;j=n+20|0;c[m>>2]=d;c[f>>2]=e;c[(c[m>>
;2]|0)+92>>2]=0;a[(c[m>>2]|0)+87>>0]=0;a[(c[m>>2]|0)+86>>0]=0;c[(c[m>>
;2]|0)+36>>2]=(c[(c[m>>2]|0)+32>>2]|0)+-32;c[(c[m>>2]|0)+48>>2]=0;c[(c[m>
x3e;2]|0)+88>>2]=c[(c[m>>2]|0)+40>>2];c[(c[(c[m>>2]|0)+88>>2]|0)+8>>
2]=c[(c[m>>2]|0)+40>>2];b[(c[m>>2]|0)+84>>1]=0;c[k>>2]=0;c[g>>2]=0;while
(1){d=c[m>>2]|0;if((c[g>>2]|0)>=(b[(c[m>>2]|0)+128>>1]|0)){e=19;break}c[d+100>
x3e;2]=0;c[(c[m>>2]|0)+96>>2]=0;if((Co(c[m>>2]|0,c[k>>2]&65535,b[(c[(c[m>>
;2]|0)+128+12>>2]|0)+(c[g>>2]<<1)>>1]|0,c[f>>2]|0)|0)<<24>>
;24){e=4;break}c[k>>2]=(b[(c[(c[m>>2]|0)+128+12>>2]|0)+(c[g>>2]<<1)>>
;1]|0)+1;if(((((c[(c[m>>2]|0)+72>>2]&(c[(c[m>>2]|0)+4>>2]|0)-1|0)==0?(c[(c[m>
x3e;2]|0)+72>>2]|0)>=(c[(c[m>>2]|0)+76>>2]|0):0)?(c[(c[m>>2]|0)+72>>2]|0)
x3c;=(c[(c[m>>2]|0)+80>>2]|0):0)?c[(c[m>>2]|0)+96>>2]|0:0)?(c[(c[(c[m>>2]|0)+96
>>2]|0)+12>>2]&8|0)==(c[(c[(c[m>>2]|0)+88>>2]|0)+12>>2]&8|0):0){d=(c
[m>>2]|0)+40|0;c[d>>2]=(c[d>>2]|0)+-4}c[h>>2]=c[(c[m>>2]|0)+88>>2];e
=c[(c[m>>2]|0)+72>>2]|0;d=c[m>>2]|0;if(c[(c[(c[m>>2]|0)+88>>2]|0)+12>>
;2]&8|0)a[j>>0]=(e-(c[d+72>>2]&0-(c[(c[m>>2]|0)+4>>2]|0))|0)>=(c[(c[m>
;>2]|0)+8>>2]|0);else a[j>>0]=((e+(c[d+4>>2]|0)-1&0-(c[(c[m>>2]|0)+4>>
;2]|0))-(c[(c[m>>2]|0)+72>>2]|0)|0)>=(c[(c[m>>2]|0)+8>>2]|0);if((Fo(c[m>>
2]|0,a[j>>0]|0)|0)<<24>>24){e=15;break}if(c[(c[m>>2]|0)+96>>2]|0)c[(c[h>
x3e;2]|0)+28>>2]=c[(c[m>>2]|0)+96>>2];c[g>>2]=(c[g>>2]|0)+1}if((e|0)==4){a[l
x3e;>0]=1;m=a[l>>0]|0;i=n;return m|0}else if((e|0)==15){a[l>>0]=1;m=a[l>>0]|0;i=n;return m|0}
else if((e|0)==19)if((Oo(d)|0)<<24>>24){a[l>>0]=1;m=a[l>>0]|0;i=n;return m|0}else{a[l>
;>0]=(c[(c[m>>2]|0)+40>>2]|0)>>>0<(c[(c[m>>2]|0)+36>>2]|0)>
;>>0?0:1;m=a[l>>0]|0;i=n;return m|0}return 0}function Co(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,P=0,Q=0,R=0;R=i;i=
i+144|0;k=R+140|0;l=R+132|0;m=R+138|0;n=R+136|0;o=R+128|0;D=R+120|0;C=R+112|0;F=R+104|0;r=R+96|0;q=R+92|0;p=R+88|0;B=R+84|0;A=R+
80|0;s=R+76|0;t=R+72|0;G=R+68|0;L=R+64|0;u=R+60|0;v=R+56|0;E=R+48|0;K=R+44|0;P=R+40|0;w=R+36|0;H=R+32|0;M=R+28|0;I=R+24|0;N=R+20
|0;J=R+16|0;O=R+12|0;x=R+8|0;y=R+4|0;z=R;c[l>>2]=f;b[m>>1]=g;b[n>>1]=h;c[o>>2]=j;c[r>
;>2]=c[(c[l>>2]|0)+128+4>>2];c[p>>2]=(c[r>>2]|0)+(e[n>>1]<<3);c
[F>>2]=(c[(c[r>>2]|0)+(e[m>>1]<<3)>>2]<<c[(c[l>>2]|0)+24
x3e;>2])-(c[(c[l>>2]|0)+8>>2]|0);c[F+4>>2]=(c[(c[r>>2]|0)+(e[m>>1]<
x3c;3)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[D>
;>2]=(c[(c[r>>2]|0)+(e[n>>1]<<3)>>2]<<c[(c[l>>2]|0)+24>>
;2])-(c[(c[l>>2]|0)+8>>2]|0);c[D+4>>2]=(c[(c[r>>2]|0)+(e[n>>1]<<3)+4
>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>>
;2]|0){c[s>>2]=c[F>>2];c[F>>2]=c[F+4>>2];c[F+4>>2]=c[s>>2];c[t>
x3e;2]=c[D>>2];c[D>>2]=c[D+4>>2];c[D+4>>2]=c[t>>2]};c[C>>2]=c[F>
;>2];c[C+4>>2]=c[F+4>>2];c[q>>2]=(c[r>>2]|0)+(e[m>>1]<<3);c[B
x3e;>2]=(c[(c[l>>2]|0)+128+8>>2]|0)+(e[m>>1]|0);if(a[c[B>>2]>>0]&4|0
)a[(c[l>>2]|0)+180>>0]=d[c[B>>2]>>0]>>5;c[A>>2]=a[c[B>>2]
x3e;>0]&3;a:do if((c[A>>2]|0)==2)Q=39;else{if(!(c[A>>2]|0)){if((a[(c[(c[l>>2]|0)+128+8
x3e;>2]|0)+(e[n>>1]|0)>>0]&3|0)==1){c[F>>2]=c[D>>2];c[F+4>>2]=c[D+4
x3e;>2];c[p>>2]=(c[p>>2]|0)+-8}else{c[F>>2]=((c[F>>2]|0)+(c[D>>2]|0)|0)/2
|0;c[F+4>>2]=((c[F+4>>2]|0)+(c[D+4>>2]|0)|0)/2|0;c[D>>2]=c[F>>2];c[D+4>
x3e;2]=c[F+4>>2]}c[q>>2]=(c[q>>2]|0)+-8;c[B>>2]=(c[B>>2]|0)+-1}c[(c[l>>
;2]|0)+68>>2]=c[F>>2];c[(c[l>>2]|0)+72>>2]=c[F+4>>2];b:while(1){if((c[q>
x3e;2]|0)>>>0>=(c[p>>2]|0)>>>0){Q=37;break}c[q>>2]=(c[q>>2]|0)+
8;c[B>>2]=(c[B>>2]|0)+1;c[A>>2]=a[c[B>>2]>>0]&3;switch(c[A>>2]|
0){case 1:{c[G>>2]=(c[c[q>>2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>
;>2]|0)+8>>2]|0);c[L>>2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24
>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>>2]|0){c[u>>2]=c[G>>2];c[G>
;>2]=c[L>>2];c[L>>2]=c[u>>2]}if((Do(c[l>>2]|0,c[G>>2]|0,c[L>>2]|
0)|0)<<24>>24)break a;else continue b}case 0:{c[C>>2]=(c[c[q>>2]>>2]<<
;c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[C+4>>2]=(c[(c[q>>2]|
0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);if(c[o>
x3e;2]|0){c[v>>2]=c[C>>2];c[C>>2]=c[C+4>>2];c[C+4>>2]=c[v>>2]}while(
1){if((c[q>>2]|0)>>>0>=(c[p>>2]|0)>>>0){Q=27;break b}c[q>>2]=(c
[q>>2]|0)+8;c[B>>2]=(c[B>>2]|0)+1;c[A>>2]=a[c[B>>2]>>0]&3;c[K
x3e;>2]=(c[c[q>>2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8
x3e;>2]|0);c[P>>2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(
c[(c[l>>2]|0)+8>>2]|0);if(c[o>>2]|0){c[w>>2]=c[K>>2];c[K>>2]=c[P>
;>2];c[P>>2]=c[w>>2]}if((c[A>>2]|0)==1)break;if(c[A>>2]|0){Q=39;break a}c[E>
x3e;2]=((c[C>>2]|0)+(c[K>>2]|0)|0)/2|0;c[E+4>>2]=((c[C+4>>2]|0)+(c[P>>2]|0)|0)/
2|0;if((Io(c[l>>2]|0,c[C>>2]|0,c[C+4>>2]|0,c[E>>2]|0,c[E+4>>2]|0)|0)<<
;24>>24)break a;c[C>>2]=c[K>>2];c[C+4>>2]=c[P>>2]}if((Io(c[l>>2]|0,c
[C>>2]|0,c[C+4>>2]|0,c[K>>2]|0,c[P>>2]|0)|0)<<24>>24)break a;else continue
b}default:{if(((c[q>>2]|0)+8|0)>>>0>(c[p>>2]|0)>>>0){Q=39;break a}if((a[(
c[B>>2]|0)+1>>0]&3|0)!=2){Q=39;break a}c[q>>2]=(c[q>>2]|0)+16;c[B>>2]=(c[
B>>2]|0)+2;c[H>>2]=(c[(c[q>>2]|0)+-16>>2]<<c[(c[l>>2]|0)+24>>
;2])-(c[(c[l>>2]|0)+8>>2]|0);c[M>>2]=(c[(c[q>>2]|0)+-16+4>>2]<<c[(c[
l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[I>>2]=(c[(c[q>>2]|0)+-8
x3e;>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[N>>2]=(
c[(c[q>>2]|0)+-8+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>
x3e;2]|0);if(c[o>>2]|0){c[x>>2]=c[H>>2];c[H>>2]=c[M>>2];c[M>>2]=c[x
x3e;>2];c[y>>2]=c[I>>2];c[I>>2]=c[N>>2];c[N>>2]=c[y>>2]}if((c[q
>>2]|0)>>>0>(c[p>>2]|0)>>>0){Q=36;break b}c[J>>2]=(c[c[q>
x3e;2]>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8>>2]|0);c[O>
x3e;2]=(c[(c[q>>2]|0)+4>>2]<<c[(c[l>>2]|0)+24>>2])-(c[(c[l>>2]|0)+8
x3e;>2]|0);if(c[o>>2]|0){c[z>>2]=c[J>>2];c[J>>2]=c[O>>2];c[O>>2
]=c[z>>2]}if((Mo(c[l>>2]|0,c[H>>2]|0,c[M>>2]|0,c[I>>2]|0,c[N>>2]|0,c
[J>>2]|0,c[O>>2]|0)|0)<<24>>24)break a;else continue b}}}if((Q|0)==27){if((Io(c[l>
x3e;2]|0,c[C>>2]|0,c[C+4>>2]|0,c[F>>2]|0,c[F+4>>2]|0)|0)<<24>>24)break
}else if((Q|0)==36){if((Mo(c[l>>2]|0,c[H>>2]|0,c[M>>2]|0,c[I>>2]|0,c[N>>2]|0,c
[F>>2]|0,c[F+4>>2]|0)|0)<<24>>24)break}else if((Q|0)==37?(Do(c[l>>2]|0,c[F>
;>2]|0,c[F+4>>2]|0)|0)<<24>>24:0)break;a[k>>0]=0;Q=a[k>>0]|0;i=R;return Q
|0}while(0);if((Q|0)==39)c[(c[l>>2]|0)+44>>2]=20;a[k>>0]=1;Q=a[k>>0]|0;i=R;return Q|0}function
Do(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[g>>2]=b;c[h>>
;2]=d;c[j>>2]=e;a:do switch(c[(c[g>>2]|0)+100>>2]|0){case 0:{if((c[j>>2]|0)>(c[(c[g
>>2]|0)+72>>2]|0)){if(!((Eo(c[g>>2]|0,1,(((c[(c[g>>2]|0)+72>>2]|0)+(c[(c[g>
;>2]|0)+4>>2]|0)-1&0-(c[(c[g>>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72>>2]|
0)|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24))break a;a[f>>0]=1;e=
a[f>>0]|0;i=k;return e|0}if((c[j>>2]|0)<(c[(c[g>>2]|0)+72>>2]|0)?(Eo(c[g>>
;2]|0,2,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>2]&0-(c[(c[g>>2]|0)+
4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24:0){a[f>
x3e;0]=1;e=a[f>>0]|0;i=k;return e|0}break}case 1:{if((c[j>>2]|0)<(c[(c[g>>2]|0)+72>>
;2]|0)){if(((Fo(c[g>>2]|0,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>2]&
;0-(c[(c[g>>2]|0)+4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24
x3e;>24|0)==0?((Eo(c[g>>2]|0,2,((c[(c[g>>2]|0)+72>>2]|0)-(c[(c[g>>2]|0)+72>>
;2]&0-(c[(c[g>>2]|0)+4>>2]|0))|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<
x3c;24>>24|0)==0:0)break a;a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}case 2:{if((c[j>>2
]|0)>(c[(c[g>>2]|0)+72>>2]|0)){if(((Fo(c[g>>2]|0,(((c[(c[g>>2]|0)+72>>2]|
0)+(c[(c[g>>2]|0)+4>>2]|0)-1&0-(c[(c[g>>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72
>>2]|0)|0)>=(c[(c[g>>2]|0)+8>>2]|0)&255)|0)<<24>>24|0)==0?((Eo(c[g
x3e;>2]|0,1,(((c[(c[g>>2]|0)+72>>2]|0)+(c[(c[g>>2]|0)+4>>2]|0)-1&0-(c[(c[g>
;>2]|0)+4>>2]|0))-(c[(c[g>>2]|0)+72>>2]|0)|0)>=(c[(c[g>>2]|0)+8>>2]|
0)&255)|0)<<24>>24|0)==0:0)break a;a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}default
:{}}while(0);switch(c[(c[g>>2]|0)+100>>2]|0){case 1:{if((Go(c[g>>2]|0,c[(c[g>>2]|0)+68
x3e;>2]|0,c[(c[g>>2]|0)+72>>2]|0,c[h>>2]|0,c[j>>2]|0,c[(c[g>>2]|0)+76>
;>2]|0,c[(c[g>>2]|0)+80>>2]|0)|0)<<24>>24){a[f>>0]=1;e=a[f>>0]|
0;i=k;return e|0}break}case 2:{if((Ho(c[g>>2]|0,c[(c[g>>2]|0)+68>>2]|0,c[(c[g>>2]|0)+72
x3e;>2]|0,c[h>>2]|0,c[j>>2]|0,c[(c[g>>2]|0)+76>>2]|0,c[(c[g>>2]|0)+80>
;>2]|0)|0)<<24>>24){a[f>>0]=1;e=a[f>>0]|0;i=k;return e|0}break}default:{}}c[(c[g>
;>2]|0)+68>>2]=c[h>>2];c[(c[g>>2]|0)+72>>2]=c[j>>2];a[f>>0]=0;e
=a[f>>0]|0;i=k;return e|0}function Eo(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;g=l+9|0;h=l+4|0;j=
l;k=l+8|0;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;if(!(c[(c[h>>2]|0)+92>>2]|0)){c[(c[h
x3e;>2]|0)+88>>2]=c[(c[h>>2]|0)+40>>2];c[(c[h>>2]|0)+92>>2]=c[(c[h>
x3e;2]|0)+88>>2];b=(c[h>>2]|0)+40|0;c[b>>2]=(c[b>>2]|0)+32}e=c[h>>2]|0;if((c[(
c[h>>2]|0)+40>>2]|0)>>>0>=(c[(c[h>>2]|0)+36>>2]|0)>>>
0){c[e+44>>2]=98;a[g>>0]=1;k=a[g>>0]|0;i=l;return k|0}c[(c[e+88>>2]|0)+12>>2]=
0;c[(c[(c[h>>2]|0)+88>>2]|0)+20>>2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+16>>
;2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+8>>2]=c[(c[h>>2]|0)+40>>2];c[(c[(c[h>>
;2]|0)+88>>2]|0)+4>>2]=0;c[(c[(c[h>>2]|0)+88>>2]|0)+28>>2]=0;c[(c[(c[h>
x3e;2]|0)+88>>2]|0)+12>>2]=d[(c[h>>2]|0)+180>>0];switch(c[j>>2]|0){case 1:{b=(
c[(c[h>>2]|0)+88>>2]|0)+12|0;c[b>>2]=c[b>>2]|8;if(a[k>>0]|0){k=(c[(c[h>
x3e;2]|0)+88>>2]|0)+12|0;c[k>>2]=c[k>>2]|32}break}case 2:{if(a[k>>0]|0){k=(c[(c[h>
x3e;2]|0)+88>>2]|0)+12|0;c[k>>2]=c[k>>2]|16}break}default:{c[(c[h>>2]|0)+44>>2
]=20;a[g>>0]=1;k=a[g>>0]|0;i=l;return k|0}}if(!(c[(c[h>>2]|0)+96>>2]|0))c[(c[h>>
;2]|0)+96>>2]=c[(c[h>>2]|0)+88>>2];c[(c[h>>2]|0)+100>>2]=c[j>>2];a[(
c[h>>2]|0)+86>>0]=1;a[(c[h>>2]|0)+87>>0]=0;a[g>>0]=0;k=a[g>>0]|0;i=l
;return k|0}function Fo(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;j=l+13|0;k=l+8|0;f=l+12|0;g=l+4|0;h=l;c[k>
;>2]=d;a[f>>0]=e;c[g>>2]=((c[(c[k>>2]|0)+40>>2]|0)-(c[(c[(c[k>>2]|0)+88
x3e;>2]|0)+8>>2]|0)|0)/4|0;if((c[g>>2]|0)<0){c[(c[k>>2]|0)+44>>2]=99;a[j>
x3e;0]=1;k=a[j>>0]|0;i=l;return k|0}if((c[g>>2]|0)>0){c[(c[(c[k>>2]|0)+88>>2]|0)+16
>>2]=c[g>>2];do if(a[f>>0]|0){f=(c[(c[k>>2]|0)+88>>2]|0)+12|0;g=c[f>>
;2]|0;if(c[(c[(c[k>>2]|0)+88>>2]|0)+12>>2]&8|0){c[f>>2]=g|16;break}else{c[f>
x3e;2]=g|32;break}}while(0);c[h>>2]=c[(c[k>>2]|0)+88>>2];c[(c[k>>2]|0)+88>>2]=
c[(c[k>>2]|0)+40>>2];d=(c[k>>2]|0)+40|0;c[d>>2]=(c[d>>2]|0)+32;c[(c[(c[k>
x3e;2]|0)+88>>2]|0)+16>>2]=0;c[(c[(c[k>>2]|0)+88>>2]|0)+8>>2]=c[(c[k>>
;2]|0)+40>>2];c[(c[h>>2]|0)+28>>2]=c[(c[k>>2]|0)+88>>2];h=(c[k>>2]|0
)+84|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}f=c[k>>2]|0;if((c[(c[k>>2]|0)+40
>>2]|0)>>>0>=(c[(c[k>>2]|0)+36>>2]|0)>>>0){c[f+44>>2]=
98;a[j>>0]=1;k=a[j>>0]|0;i=l;return k|0}else{a[f+87>>0]=0;a[j>>0]=0;k=a[j>>0]|
0;i=l;return k|0}return 0}function Go(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;C=i;i=i+80|0;s=C+72|0;t=C+68|0;u=C+64|0;k=C+60|0;D=C+56|0;l=C+52|0;m=C+48|0;n
=C+44|0;w=C+40|0;x=C+36|0;o=C+32|0;p=C+28|0;q=C+24|0;r=C+20|0;A=C+16|0;y=C+12|0;z=C+8|0;v=C+4|0;B=C;c[t>>2]=b;c[u>
;>2]=d;c[k>>2]=e;c[D>>2]=f;c[l>>2]=g;c[m>>2]=h;c[n>>2]=j;c[w>>2
]=(c[D>>2]|0)-(c[u>>2]|0);c[x>>2]=(c[l>>2]|0)-(c[k>>2]|0);if(((c[x>>
2]|0)>0?(c[l>>2]|0)>=(c[m>>2]|0):0)?(c[k>>2]|0)<=(c[n>>2]|0):0){if((c[k
x3e;>2]|0)<(c[m>>2]|0)){D=xb(c[w>>2]|0,(c[m>>2]|0)-(c[k>>2]|0)|0,c[x>>
;2]|0)|0;c[u>>2]=(c[u>>2]|0)+D;c[o>>2]=c[m>>2]>>c[c[t>>2]>>
;2];c[q>>2]=0}else{c[o>>2]=c[k>>2]>>c[c[t>>2]>>2];c[q>>2]=
c[k>>2]&(c[(c[t>>2]|0)+4>>2]|0)-1}if((c[l>>2]|0)>(c[n>>2]|0)){c[p>
;>2]=c[n>>2]>>c[c[t>>2]>>2];c[r>>2]=0}else{c[p>>2]=c[l>>
;2]>>c[c[t>>2]>>2];c[r>>2]=c[l>>2]&(c[(c[t>>2]|0)+4>>
2]|0)-1}do if((c[q>>2]|0)<=0){if(a[(c[t>>2]|0)+87>>0]|0){D=(c[t>>2]|0)+40|0;c[D>
;>2]=(c[D>>2]|0)+-4;a[(c[t>>2]|0)+87>>0]=0}}else{if((c[o>>2]|0)!=(c[p>>2]|
0)){D=xb(c[w>>2]|0,(c[(c[t>>2]|0)+4>>2]|0)-(c[q>>2]|0)|0,c[x>>2]|0)|0;c[u>
;>2]=(c[u>>2]|0)+D;c[o>>2]=(c[o>>2]|0)+1;break}a[s>>0]=0;D=a[s>>0]|0;i=C;
return D|0}while(0);a[(c[t>>2]|0)+87>>0]=(c[r>>2]|0)==0;if(a[(c[t>>2]|0)+86>>0
]|0){c[(c[(c[t>>2]|0)+88>>2]|0)+20>>2]=c[o>>2];a[(c[t>>2]|0)+86>>0]=
0}c[A>>2]=(c[p>>2]|0)-(c[o>>2]|0)+1;if(((c[(c[t>>2]|0)+40>>2]|0)+(c[A>>
;2]<<2)|0)>>>0>=(c[(c[t>>2]|0)+36>>2]|0)>>>0){c[(c[t>>
;2]|0)+44>>2]=98;a[s>>0]=1;D=a[s>>0]|0;i=C;return D|0}k=c[(c[t>>2]|0)+4>>2]|0;
l=c[w>>2]|0;if((c[w>>2]|0)>0){c[y>>2]=xb(k,l,c[x>>2]|0)|0;D=_(c[(c[t>>2]|
0)+4>>2]|0,c[w>>2]|0)|0;c[z>>2]=(D|0)%(c[x>>2]|0)|0;c[w>>2]=1}else{c[y>
x3e;2]=_(xb(k,0-l|0,c[x>>2]|0)|0,-1)|0;D=_(c[(c[t>>2]|0)+4>>2]|0,0-(c[w>>2]|0)|0)|0;c[z
x3e;>2]=(D|0)%(c[x>>2]|0)|0;c[w>>2]=-1}c[v>>2]=0-(c[x>>2]|0);c[B>>2]=c[(c
[t>>2]|0)+40>>2];while(1){if((c[A>>2]|0)<=0)break;g=c[u>>2]|0;D=c[B>>2]|0
;c[B>>2]=D+4;c[D>>2]=g;c[u>>2]=(c[u>>2]|0)+(c[y>>2]|0);c[v>>2]=(c[v
x3e;>2]|0)+(c[z>>2]|0);if((c[v>>2]|0)>=0){c[v>>2]=(c[v>>2]|0)-(c[x>>
2]|0);c[u>>2]=(c[u>>2]|0)+(c[w>>2]|0)}c[A>>2]=(c[A>>2]|0)+-1}c[(c[t>>
;2]|0)+40>>2]=c[B>>2];a[s>>0]=0;D=a[s>>0]|0;i=C;return D|0}a[s>>0]=0;D=a[s>
;>0]|0;i=C;return D|0}function Ho(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;m=i;i=i+32|0;k=m+24|0;t=m+20|0;s=m+16|0;r=m+12|0;q=m+8|0;o=m+4|0;p=m;l=m+29|0;n=m+28|0;c[k>>2]=b;c[t>
x3e;2]=d;c[s>>2]=e;c[r>>2]=f;c[q>>2]=g;c[o>>2]=h;c[p>>2]=j;a[n>>0]=a
[(c[k>>2]|0)+86>>0]|0;a[l>>0]=Go(c[k>>2]|0,c[t>>2]|0,0-(c[s>>2]|0)|0
,c[r>>2]|0,0-(c[q>>2]|0)|0,0-(c[p>>2]|0)|0,0-(c[o>>2]|0)|0)|0;if(!(a[n>>0]|0)){
t=a[l>>0]|0;i=m;return t|0}if(a[(c[k>>2]|0)+86>>0]|0){t=a[l>>0]|0;i=m;return t|0}c[(c[(c
[k>>2]|0)+88>>2]|0)+20>>2]=0-(c[(c[(c[k>>2]|0)+88>>2]|0)+20>>2]|0);t
=a[l>>0]|0;i=m;return t|0}function Io(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,x=0;t=i;i=i+64|0;h=t+49|0;j=t+44|0;x=t+40|0;w=t+36|0;v=t+32|0;u=t+28|0;n=t+24|0;o=t+20|0;p=t+16|0;m=t+12
|0;r=t+8|0;q=t+4|0;l=t;k=t+48|0;c[j>>2]=b;c[x>>2]=d;c[w>>2]=e;c[v>>2]=f;c[u>>2
]=g;c[(c[j>>2]|0)+52>>2]=(c[j>>2]|0)+184;c[(c[(c[j>>2]|0)+52>>2]|0)+16>
x3e;2]=c[(c[j>>2]|0)+68>>2];c[(c[(c[j>>2]|0)+52>>2]|0)+16+4>>2]=c[(c[j>
x3e;2]|0)+72>>2];c[(c[(c[j>>2]|0)+52>>2]|0)+8>>2]=c[x>>2];c[(c[(c[j>>
;2]|0)+52>>2]|0)+8+4>>2]=c[w>>2];c[c[(c[j>>2]|0)+52>>2]>>2]=c[v>
;>2];c[(c[(c[j>>2]|0)+52>>2]|0)+4>>2]=c[u>>2];a:while(1){c[n>>2]=c[(c[(c[
j>>2]|0)+52>>2]|0)+16+4>>2];c[o>>2]=c[(c[(c[j>>2]|0)+52>>2]|0)+8+4
x3e;>2];c[p>>2]=c[(c[(c[j>>2]|0)+52>>2]|0)+4>>2];c[m>>2]=c[c[(c[j>
x3e;2]|0)+52>>2]>>2];if((c[n>>2]|0)<=(c[p>>2]|0)){c[r>>2]=c[n>>
2];c[q>>2]=c[p>>2]}else{c[r>>2]=c[p>>2];c[q>>2]=c[n>>2]}do if((c[o
x3e;>2]|0)>=(c[r>>2]|0)?(c[o>>2]|0)<=(c[q>>2]|0):0){if((c[n>>2]|0)==(c[p
x3e;>2]|0)){x=(c[j>>2]|0)+52|0;c[x>>2]=(c[x>>2]|0)+-16;break}c[l>>2]=(c[n>>
;2]|0)<(c[p>>2]|0)?1:2;if((c[(c[j>>2]|0)+100>>2]|0)!=(c[l>>2]|0)){d=c[n>>
2]|0;if((c[l>>2]|0)==1)d=((d+(c[(c[j>>2]|0)+4>>2]|0)-1&0-(c[(c[j>>2]|0)+4>>
;2]|0))-(c[n>>2]|0)|0)>=(c[(c[j>>2]|0)+8>>2]|0);else d=(d-(c[n>>2]&0-(c[(c[j
x3e;>2]|0)+4>>2]|0))|0)>=(c[(c[j>>2]|0)+8>>2]|0);a[k>>0]=d&1;if(c[(c[j>
;>2]|0)+100>>2]|0?(Fo(c[j>>2]|0,a[k>>0]|0)|0)<<24>>24|0:0){s=22;break a}if
((Eo(c[j>>2]|0,c[l>>2]|0,a[k>>0]|0)|0)<<24>>24){s=22;break a}}d=c[j>>
;2]|0;e=c[(c[j>>2]|0)+76>>2]|0;b=c[(c[j>>2]|0)+80>>2]|0;if((c[l>>2]|0)==1)if((
Ko(d,2,41,e,b)|0)<<24>>24){s=22;break a}else break;else if((Lo(d,2,41,e,b)|0)<<24>>24){s
=22;break a}else break}else s=7;while(0);if((s|0)==7){s=0;Jo(c[(c[j>>2]|0)+52>>2]|0);x=(c[j>>2]|0)+
52|0;c[x>>2]=(c[x>>2]|0)+16}if((c[(c[j>>2]|0)+52>>2]|0)>>>0<((c[j>
;>2]|0)+184|0)>>>0){s=21;break}}if((s|0)==21){c[(c[j>>2]|0)+68>>2]=c[m>>2];c[(
c[j>>2]|0)+72>>2]=c[p>>2];a[h>>0]=0;x=a[h>>0]|0;i=t;return x|0}else if((s|0)==
22){a[h>>0]=1;x=a[h>>0]|0;i=t;return x|0}return 0}function Jo(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[(c[d>>2]|0)+32>>2]=c[(c[d>>2]|0)+16>>2];c[e>
x3e;2]=c[(c[d>>2]|0)+8>>2];a=((c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c
[d>>2]|0)+24>>2]=a;c[f>>2]=a;a=((c[c[d>>2]>>2]|0)+(c[e>>2]|0)|0)/2|0
;c[(c[d>>2]|0)+8>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16>>2]=((c[f>>2]|0)+(
c[e>>2]|0)|0)/2|0;c[(c[d>>2]|0)+32+4>>2]=c[(c[d>>2]|0)+16+4>>2];c[e>>
;2]=c[(c[d>>2]|0)+8+4>>2];a=((c[(c[d>>2]|0)+16+4>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(
c[d>>2]|0)+24+4>>2]=a;c[f>>2]=a;a=((c[(c[d>>2]|0)+4>>2]|0)+(c[e>>2]|
0)|0)/2|0;c[(c[d>>2]|0)+8+4>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16+4>>2]=((c[f>
x3e;2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function Ko(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,t=0,u=0,v=0,w=0,x=0,y=0;y=i;i=i+64|0;j=y+54|0;k=y+48|0;l=y+44|0;m=y+40|0;n=y+36|0;o=y+32|0;w=y+28|0;x=y+24|0;
q=y+20|0;s=y+16|0;r=y+12|0;t=y+52|0;p=y+8|0;u=y+4|0;v=y;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[n>>
;2]=g;c[o>>2]=h;c[p>>2]=c[(c[k>>2]|0)+52>>2];c[w>>2]=c[(c[p>>2]|0)+(
c[l>>2]<<3)+4>>2];c[x>>2]=c[(c[p>>2]|0)+4>>2];c[v>>2]=c[(c
[k>>2]|0)+40>>2];a:do if((c[x>>2]|0)>=(c[n>>2]|0)?(c[w>>2]|0)<=(c[o
x3e;>2]|0):0){c[s>>2]=c[x>>2]&0-(c[(c[k>>2]|0)+4>>2]|0);if((c[s>>2]|
0)>(c[o>>2]|0))c[s>>2]=c[o>>2];c[r>>2]=c[n>>2];if((c[w>>2]|0)
x3e;=(c[n>>2]|0)){c[q>>2]=(c[w>>2]|0)+(c[(c[k>>2]|0)+4>>2]|0)-1&0-(c[(c[k
>>2]|0)+4>>2]|0);b[t>>1]=c[w>>2]&(c[(c[k>>2]|0)+4>>2]|0)-1;c[r
x3e;>2]=c[q>>2];if(!(b[t>>1]|0)){if(a[(c[k>>2]|0)+87>>0]|0){c[v>>2]=(c[v
x3e;>2]|0)+-4;a[(c[k>>2]|0)+87>>0]=0}f=c[(c[p>>2]|0)+(c[l>>2]<<3)>
x3e;2]|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[q>>2]=(c[q>>2]|0)+(c[(c[k>
x3e;2]|0)+4>>2]|0)}}else c[q>>2]=c[n>>2];if(a[(c[k>>2]|0)+86>>0]|0){c[(c[(c[k
x3e;>2]|0)+88>>2]|0)+20>>2]=c[r>>2]>>c[c[k>>2]>>2];a[(c[k>
x3e;2]|0)+86>>0]=0}if((c[s>>2]|0)>=(c[q>>2]|0)){if(((c[v>>2]|0)+((c[s>>2]|
0)-(c[q>>2]|0)>>c[c[k>>2]>>2]<<2)+4|0)>>>0>=(c[(c[k>
x3e;2]|0)+36>>2]|0)>>>0){c[(c[k>>2]|0)+40>>2]=c[v>>2];c[(c[k>>2
]|0)+44>>2]=98;a[j>>0]=1;x=a[j>>0]|0;i=y;return x|0}c[u>>2]=c[p>>2];while(1){if
((c[p>>2]|0)>>>0<(c[u>>2]|0)>>>0)break a;if((c[q>>2]|0)>(c
[s>>2]|0))break a;a[(c[k>>2]|0)+87>>0]=0;c[x>>2]=c[(c[p>>2]|0)+4>>2];
if((c[x>>2]|0)>(c[q>>2]|0)){c[w>>2]=c[(c[p>>2]|0)+(c[l>>2]<<3)+
4>>2];if(((c[x>>2]|0)-(c[w>>2]|0)|0)>=(c[(c[k>>2]|0)+16>>2]|0)){Va[c[m>
;>2]&63](c[p>>2]|0);c[p>>2]=(c[p>>2]|0)+(c[l>>2]<<3);continue}else{f
=_((c[c[p>>2]>>2]|0)-(c[(c[p>>2]|0)+(c[l>>2]<<3)>>2]|0)|0,(c[q>
x3e;2]|0)-(c[w>>2]|0)|0)|0;f=(c[(c[p>>2]|0)+(c[l>>2]<<3)>>2]|0)+((f|0)/((c[x
x3e;>2]|0)-(c[w>>2]|0)|0)|0)|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[p>>2]=(
c[p>>2]|0)+(0-(c[l>>2]|0)<<3);c[q>>2]=(c[q>>2]|0)+(c[(c[k>>2]|0)+4
x3e;>2]|0);continue}}else{if((c[x>>2]|0)==(c[q>>2]|0)){a[(c[k>>2]|0)+87>>0]=1;f=c[c
[p>>2]>>2]|0;d=c[v>>2]|0;c[v>>2]=d+4;c[d>>2]=f;c[q>>2]=(c[q>>
;2]|0)+(c[(c[k>>2]|0)+4>>2]|0)}c[p>>2]=(c[p>>2]|0)+(0-(c[l>>2]|0)<<3
);continue}}}}while(0);c[(c[k>>2]|0)+40>>2]=c[v>>2];x=(c[k>>2]|0)+52|0;c[x>>2]=(
c[x>>2]|0)+(0-(c[l>>2]|0)<<3);a[j>>0]=0;x=a[j>>0]|0;i=y;return x|0}function Lo
(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;q=i;i=i+32|0;h=q+20|0;j=q+16|0;k=q+12|0;l=q+8|
0;m=q+4|0;n=q;p=q+25|0;o=q+24|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[m>>2
]=g;c[n>>2]=c[(c[h>>2]|0)+52>>2];c[(c[n>>2]|0)+4>>2]=0-(c[(c[n>>2]|0
)+4>>2]|0);c[(c[n>>2]|0)+8+4>>2]=0-(c[(c[n>>2]|0)+8+4>>2]|0);c[(c[n>>
;2]|0)+16+4>>2]=0-(c[(c[n>>2]|0)+16+4>>2]|0);if((c[j>>2]|0)>2)c[(c[n>>2]|
0)+24+4>>2]=0-(c[(c[n>>2]|0)+24+4>>2]|0);a[o>>0]=a[(c[h>>2]|0)+86>>0
]|0;a[p>>0]=Ko(c[h>>2]|0,c[j>>2]|0,c[k>>2]|0,0-(c[m>>2]|0)|0,0-(c[l>>
;2]|0)|0)|0;if(a[o>>0]|0?(a[(c[h>>2]|0)+86>>0]|0)==0:0)c[(c[(c[h>>2]|0)+88>>2]|
0)+20>>2]=0-(c[(c[(c[h>>2]|0)+88>>2]|0)+20>>2]|0);c[(c[n>>2]|0)+4>>2
]=0-(c[(c[n>>2]|0)+4>>2]|0);i=q;return a[p>>0]|0}function Mo(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;y=i;i=i+80|0;k=y+69|
0;l=y+64|0;E=y+60|0;D=y+56|0;C=y+52|0;B=y+48|0;A=y+44|0;z=y+40|0;p=y+36|0;q=y+32|0;r=y+28|0;s=y+24|0;o=y+20|0;v=y+16|0;t=y+12|0;
w=y+8|0;u=y+4|0;n=y;m=y+68|0;c[l>>2]=b;c[E>>2]=d;c[D>>2]=e;c[C>>2]=f;c[B>>2]=g
;c[A>>2]=h;c[z>>2]=j;c[(c[l>>2]|0)+52>>2]=(c[l>>2]|0)+184;c[(c[(c[l>>
;2]|0)+52>>2]|0)+24>>2]=c[(c[l>>2]|0)+68>>2];c[(c[(c[l>>2]|0)+52>>2]|
0)+24+4>>2]=c[(c[l>>2]|0)+72>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+16>>2]=c
[E>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+16+4>>2]=c[D>>2];c[(c[(c[l>>2]|0)+
52>>2]|0)+8>>2]=c[C>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+8+4>>2]=c[B>
x3e;2];c[c[(c[l>>2]|0)+52>>2]>>2]=c[A>>2];c[(c[(c[l>>2]|0)+52>>2]|0)+
4>>2]=c[z>>2];a:while(1){c[p>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+24+4>>2];
c[q>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+16+4>>2];c[r>>2]=c[(c[(c[l>>2]|0)+
52>>2]|0)+8+4>>2];c[s>>2]=c[(c[(c[l>>2]|0)+52>>2]|0)+4>>2];c[o>
x3e;2]=c[c[(c[l>>2]|0)+52>>2]>>2];if((c[p>>2]|0)<=(c[s>>2]|0)){c[v>
x3e;2]=c[p>>2];c[t>>2]=c[s>>2]}else{c[v>>2]=c[s>>2];c[t>>2]=c[p>
;>2]}if((c[q>>2]|0)<=(c[r>>2]|0)){c[w>>2]=c[q>>2];c[u>>2]=c[r>
x3e;2]}else{c[w>>2]=c[r>>2];c[u>>2]=c[q>>2]}do if((c[w>>2]|0)>=(c[v>
x3e;2]|0)?(c[u>>2]|0)<=(c[t>>2]|0):0){if((c[p>>2]|0)==(c[s>>2]|0)){E=(c[l>>
;2]|0)+52|0;c[E>>2]=(c[E>>2]|0)+-24;break}c[n>>2]=(c[p>>2]|0)<=(c[s>>2]|0
)?1:2;if((c[(c[l>>2]|0)+100>>2]|0)!=(c[n>>2]|0)){d=c[p>>2]|0;if((c[n>>2]|0)==1
)d=((d+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[l>>2]|0)+4>>2]|0))-(c[p>>2]|0)|0
)>=(c[(c[l>>2]|0)+8>>2]|0);else d=(d-(c[p>>2]&0-(c[(c[l>>2]|0)+4>>2]|
0))|0)>=(c[(c[l>>2]|0)+8>>2]|0);a[m>>0]=d&1;if(c[(c[l>>2]|0)+100>>2]|
0?(Fo(c[l>>2]|0,a[m>>0]|0)|0)<<24>>24|0:0){x=25;break a}if((Eo(c[l>>2]|0,c[n
x3e;>2]|0,a[m>>0]|0)|0)<<24>>24){x=25;break a}}d=c[l>>2]|0;f=c[(c[l>>2]|0
)+76>>2]|0;e=c[(c[l>>2]|0)+80>>2]|0;if((c[n>>2]|0)==1)if((Ko(d,3,42,f,e)|0)<<24
>>24){x=25;break a}else break;else if((Lo(d,3,42,f,e)|0)<<24>>24){x=25;break a}else break}else x=10
;while(0);if((x|0)==10){x=0;No(c[(c[l>>2]|0)+52>>2]|0);E=(c[l>>2]|0)+52|0;c[E>>2]=(c[E
x3e;>2]|0)+24}if((c[(c[l>>2]|0)+52>>2]|0)>>>0<((c[l>>2]|0)+184|0)>
x3e;>0){x=24;break}}if((x|0)==24){c[(c[l>>2]|0)+68>>2]=c[o>>2];c[(c[l>>2]|0)+72>
;>2]=c[s>>2];a[k>>0]=0;E=a[k>>0]|0;i=y;return E|0}else if((x|0)==25){a[k>>0]=1;E=a[
k>>0]|0;i=y;return E|0}return 0}function No(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;f=b+12|0;e=b+8|
0;g=b+4|0;h=b;c[d>>2]=a;c[(c[d>>2]|0)+48>>2]=c[(c[d>>2]|0)+24>>2];c[g>>
;2]=c[(c[d>>2]|0)+8>>2];c[h>>2]=c[(c[d>>2]|0)+16>>2];a=(c[c[d>>2]>
;>2]|0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+8>>2]=a;a=(c[(c[d>
x3e;2]|0)+24>>2]|0)+(c[h>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>>2]|0)+40>>2]=
a;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1>>1;a=(c[f>>2]|0)+(c[g>>2]|0)+1
x3e;>1;c[f>>2]=a;c[(c[d>>2]|0)+16>>2]=a;a=(c[e>>2]|0)+(c[g>>2]|0)+1>
x3e;1;c[e>>2]=a;c[(c[d>>2]|0)+32>>2]=a;c[(c[d>>2]|0)+24>>2]=(c[f>>2]|
0)+(c[e>>2]|0)+1>>1;c[(c[d>>2]|0)+48+4>>2]=c[(c[d>>2]|0)+24+4>>2];c[
g>>2]=c[(c[d>>2]|0)+8+4>>2];c[h>>2]=c[(c[d>>2]|0)+16+4>>2];a=(c[(c[d
>>2]|0)+4>>2]|0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+8+4>
x3e;2]=a;a=(c[(c[d>>2]|0)+24+4>>2]|0)+(c[h>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>
x3e;2]|0)+40+4>>2]=a;c[g>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1>>1;a=(c[f>>2]|
0)+(c[g>>2]|0)+1>>1;c[f>>2]=a;c[(c[d>>2]|0)+16+4>>2]=a;a=(c[e>>2]|0)+(
c[g>>2]|0)+1>>1;c[e>>2]=a;c[(c[d>>2]|0)+32+4>>2]=a;c[(c[d>>2]|0)+24+
4>>2]=(c[f>>2]|0)+(c[e>>2]|0)+1>>1;i=b;return}function Oo(d){d=d|0;var f=0,g=0,h=0,j=0,k
=0,l=0,m=0;m=i;i=i+32|0;f=m+18|0;g=m+12|0;h=m+8|0;l=m+4|0;j=m+16|0;k=m;c[g>>2]=d;b[j>>1]=b[(c[g>>2
]|0)+84>>1]|0;c[k>>2]=c[(c[g>>2]|0)+92>>2];a:do if((e[j>>1]|0|0)>1&(
c[k>>2]|0)!=0){while(1){if((e[j>>1]|0|0)<=0)break a;d=c[k>>2]|0;if((e[j>>1]|0|0)>
;1)c[(c[k>>2]|0)+4>>2]=(c[d+8>>2]|0)+(c[(c[k>>2]|0)+16>>2]<<2);else
c[d+4>>2]=0;d=c[(c[k>>2]|0)+20>>2]|0;if(c[(c[k>>2]|0)+12>>2]&8|0){c[h>
;>2]=d;c[l>>2]=(c[(c[k>>2]|0)+20>>2]|0)+(c[(c[k>>2]|0)+16>>2]|0)-1}else{c
[h>>2]=d-(c[(c[k>>2]|0)+16>>2]|0)+1;c[l>>2]=c[(c[k>>2]|0)+20>>2];c[(
c[k>>2]|0)+20>>2]=c[h>>2];d=(c[k>>2]|0)+8|0;c[d>>2]=(c[d>>2]|0)+((c[(
c[k>>2]|0)+16>>2]|0)-1<<2)}if((Po(c[g>>2]|0,c[h>>2]|0)|0)<<24>
x3e;24|0)break;if((Po(c[g>>2]|0,(c[l>>2]|0)+1|0)|0)<<24>>24|0)break;c[k>>2]=c[(
c[k>>2]|0)+4>>2];b[j>>1]=(b[j>>1]|0)+-1<<16>>16}a[f>>0]=1;
l=a[f>>0]|0;i=m;return l|0}else c[(c[g>>2]|0)+92>>2]=0;while(0);a[f>>0]=0;l=a[f>>
;0]|0;i=m;return l|0}function Po(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;h=l+20|0;j=l+16|0;k=l+12|0;g=l+8|
0;f=l+4|0;e=l;c[j>>2]=b;c[k>>2]=d;c[e>>2]=(c[(c[j>>2]|0)+48>>2]|0)-1;c[g>
x3e;2]=(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j>>2]|0)+48>>2]|0)<<2);while(1){if((c
[e>>2]|0)>=0)d=(c[k>>2]|0)<(c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]|
0);else d=0;b=c[e>>2]|0;if(!d)break;c[e>>2]=b+-1}if((b|0)>=0?((c[e>>2]|0)>=0?(c[k>
x3e;2]|0)>(c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]|0):0):0)do{c[f>>2]=c[(c[g>
x3e;2]|0)+(c[e>>2]<<2)>>2];c[(c[g>>2]|0)+(c[e>>2]<<2)>>2]=
c[k>>2];c[k>>2]=c[f>>2];c[e>>2]=(c[e>>2]|0)+-1}while((c[e>>2]|0)>
;=0);do if((c[e>>2]|0)<0){b=(c[j>>2]|0)+36|0;c[b>>2]=(c[b>>2]|0)+-4;b=c[j>>
;2]|0;if((c[(c[j>>2]|0)+36>>2]|0)>>>0>(c[(c[j>>2]|0)+40>>2]|0)>
x3e;>0){g=b+48|0;c[g>>2]=(c[g>>2]|0)+1;c[(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j>
x3e;2]|0)+48>>2]|0)<<2)>>2]=c[k>>2];break}c[b+44>>2]=98;a[h>>0]=1;k=
a[h>>0]|0;i=l;return k|0}while(0);a[h>>0]=0;k=a[h>>0]|0;i=l;return k|0}function Qo(d){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;D=i;i=i+80|0;h=D+72|0;j=D+52|0
;z=D+70|0;A=D+68|0;B=D+66|0;k=D+48|0;n=D+44|0;l=D+40|0;m=D+36|0;g=D+64|0;u=D+62|0;f=D+60|0;e=D+58|0;r=D+56|0;w=D+32|0;x=D+28|0;y
=D+24|0;s=D+20|0;t=D+16|0;v=D+12|0;o=D+8|0;p=D+4|0;q=D;c[j>>2]=d;Ro(v);Ro(o);Ro(p);c[k>>2]=c[(c[j>>
;2]|0)+92>>2];b[u>>1]=c[(c[j>>2]|0)+76>>2]>>c[c[j>>2]>>2];
b[g>>1]=c[(c[j>>2]|0)+80>>2]>>c[c[j>>2]>>2];while(1){if(!(c[k>
x3e;2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];b[e>>1]=c[(c[k>>2]|0)+20>>
;2];b[f>>1]=(c[(c[k>>2]|0)+20>>2]|0)+(c[(c[k>>2]|0)+16>>2]|0)-1;if((b[g>
x3e;1]|0)>(b[e>>1]|0))b[g>>1]=b[e>>1]|0;if((b[u>>1]|0)<(b[f>>1]|0))b
[u>>1]=b[f>>1]|0;c[c[k>>2]>>2]=0;So(v,c[k>>2]|0);c[k>>2]=c[n>
x3e;2]}e=c[j>>2]|0;if(!(c[(c[j>>2]|0)+48>>2]|0)){c[e+44>>2]=20;a[h>>0]=1;C=a[h
>>0]|0;i=D;return C|0}Ua[c[e+164>>2]&31](c[j>>2]|0,g,u);c[k>>2]=c[v>>2];while
(1){if(!(c[k>>2]|0))break;c[(c[k>>2]|0)+24>>2]=(c[(c[k>>2]|0)+20>>2]|0)-(b[g
x3e;>1]|0)&65535;c[k>>2]=c[(c[k>>2]|0)+4>>2]}b[z>>1]=b[g>>1]|0;b[B
x3e;>1]=0;if((c[(c[j>>2]|0)+48>>2]|0)>0?(c[(c[(c[j>>2]|0)+32>>2]|0)+(0-(c[(c[j
>>2]|0)+48>>2]|0)<<2)>>2]|0)==(b[g>>1]|0):0){g=(c[j>>2]|0)+48|0;c[g
x3e;>2]=(c[g>>2]|0)+-1}a:while(1){if((c[(c[j>>2]|0)+48>>2]|0)<=0)break;c[k>>2]=
c[v>>2];while(1){if(!(c[k>>2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];g=(c[k>
;>2]|0)+24|0;c[g>>2]=(c[g>>2]|0)-(b[B>>1]|0);do if(!(c[(c[k>>2]|0)+24>>2]|
0)){To(v,c[k>>2]|0);e=c[k>>2]|0;if(c[(c[k>>2]|0)+12>>2]&8|0){So(o,e);break}else{So(
p,e);break}}while(0);c[k>>2]=c[n>>2]}Uo(o);Uo(p);d=(c[j>>2]|0)+48|0;g=c[d>>2]|0;c[d>
;>2]=g+-1;b[A>>1]=c[(c[(c[j>>2]|0)+32>>2]|0)+(0-g<<2)>>2];b[B>>
1]=(b[A>>1]|0)-(b[z>>1]|0);while(1){if((b[z>>1]|0)>=(b[A>>1]|0))break;b[r>>
;1]=0;c[l>>2]=c[o>>2];c[m>>2]=c[p>>2];while(1){if(!(c[l>>2]|0))break;c[w>
x3e;2]=c[c[l>>2]>>2];c[x>>2]=c[c[m>>2]>>2];if((c[w>>2]|0)>(c[x
x3e;>2]|0)){c[y>>2]=c[w>>2];c[w>>2]=c[x>>2];c[x>>2]=c[y>>2]}c[s
>>2]=c[w>>2]&0-(c[(c[j>>2]|0)+4>>2]|0);c[t>>2]=(c[x>>2]|0)+(c[(
c[j>>2]|0)+4>>2]|0)-1&0-(c[(c[j>>2]|0)+4>>2]|0);do if((((c[x>>2]|0)-(c[w
x3e;>2]|0)|0)<=(c[(c[j>>2]|0)+4>>2]|0)?(c[s>>2]|0)!=(c[w>>2]|0):0)?(c[t>
x3e;2]|0)!=(c[x>>2]|0):0){if((c[s>>2]|0)<=(c[t>>2]|0)?(c[t>>2]|0)!=((c[s>>
;2]|0)+(c[(c[j>>2]|0)+4>>2]|0)|0):0){C=37;break}c[q>>2]=c[(c[l>>2]|0)+12>>2]
x26;7;if((c[q>>2]|0)!=2){c[c[l>>2]>>2]=c[w>>2];c[c[m>>2]>>2]=c[x>
;>2];c[(c[l>>2]|0)+24>>2]=1;b[r>>1]=(b[r>>1]|0)+1<<16>>16}}else
C=37;while(0);if((C|0)==37){C=0;Xa[c[(c[j>>2]|0)+168>>2]&7](c[j>>2]|0,b[z>>1]|0,c[
w>>2]|0,c[x>>2]|0,c[l>>2]|0,c[m>>2]|0)}c[l>>2]=c[(c[l>>2]|0)+4>
x3e;2];c[m>>2]=c[(c[m>>2]|0)+4>>2]}b:do if((b[r>>1]|0)>0){c[l>>2]=c[o>
;>2];c[m>>2]=c[p>>2];while(1){if(!(c[l>>2]|0))break b;if(c[(c[l>>2]|0)+24>>
;2]|0){c[(c[l>>2]|0)+24>>2]=0;Xa[c[(c[j>>2]|0)+172>>2]&7](c[j>>2]|0,b[z
x3e;>1]|0,c[c[l>>2]>>2]|0,c[c[m>>2]>>2]|0,c[l>>2]|0,c[m>>2]|0)}
c[l>>2]=c[(c[l>>2]|0)+4>>2];c[m>>2]=c[(c[m>>2]|0)+4>>2]}}while(0);Va
[c[(c[j>>2]|0)+176>>2]&63](c[j>>2]|0);b[z>>1]=(b[z>>1]|0)+1<<16
>>16;if((b[z>>1]|0)>=(b[A>>1]|0))continue;Uo(o);Uo(p)}c[k>>2]=c[o>>2];while
(1){if(!(c[k>>2]|0))break;c[n>>2]=c[(c[k>>2]|0)+4>>2];if(!(c[(c[k>>2]|0)+16>
;>2]|0))To(o,c[k>>2]|0);c[k>>2]=c[n>>2]}c[k>>2]=c[p>>2];while(1){if(!(c[k
>>2]|0))continue a;c[n>>2]=c[(c[k>>2]|0)+4>>2];if(!(c[(c[k>>2]|0)+16>>
;2]|0))To(p,c[k>>2]|0);c[k>>2]=c[n>>2]}}while(1){if((b[z>>1]|0)>(b[u>>1]|
0))break;Va[c[(c[j>>2]|0)+176>>2]&63](c[j>>2]|0);b[z>>1]=(b[z>>1]|0)+1<
;<16>>16}a[h>>0]=0;C=a[h>>0]|0;i=D;return C|0}function Ro(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]=0;i=b;return}function So(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h
=i;i=i+32|0;j=h+16|0;d=h+12|0;f=h+8|0;e=h+4|0;g=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=c[j>>2];c[
e>>2]=c[c[f>>2]>>2];c[g>>2]=c[c[d>>2]>>2];while(1){if(!(c[e>>
;2]|0))break;if((c[g>>2]|0)<(c[c[e>>2]>>2]|0))break;c[f>>2]=(c[e>>2]|0)+4
;c[e>>2]=c[c[f>>2]>>2]}c[(c[d>>2]|0)+4>>2]=c[e>>2];c[c[f>>
2]>>2]=c[d>>2];i=h;return}function To(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;j=h+12|0;d=h
+8|0;f=h+4|0;e=h;c[j>>2]=a;c[d>>2]=b;c[f>>2]=c[j>>2];c[e>>2]=c[c[f>>
2]>>2];while(1){if(!(c[e>>2]|0)){g=6;break}a=(c[e>>2]|0)+4|0;if((c[e>>2]|0)==(c[d>
x3e;2]|0))break;c[f>>2]=a;c[e>>2]=c[c[f>>2]>>2]}if((g|0)==6){i=h;return}c[c[f>>
;2]>>2]=c[a>>2];i=h;return}function Uo(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;f=g+8|0;d=g+4|
0;e=g;c[b>>2]=a;c[d>>2]=c[c[b>>2]>>2];while(1){if(!(c[d>>2]|0))break;c[c[d>
;>2]>>2]=c[c[(c[d>>2]|0)+8>>2]>>2];a=(c[d>>2]|0)+8|0;c[a>>2]=(c
[a>>2]|0)+((c[(c[d>>2]|0)+12>>2]&8|0?1:-1)<<2);a=(c[d>>2]|0)+16|0;c[a>
;>2]=(c[a>>2]|0)+-1;c[d>>2]=c[(c[d>>2]|0)+4>>2]}c[f>>2]=c[b>>2];
c[d>>2]=c[c[f>>2]>>2];if(!(c[d>>2]|0)){i=g;return}c[e>>2]=c[(c[d>>2]|
0)+4>>2];while(1){if(!(c[e>>2]|0)){b=11;break}if((c[c[d>>2]>>2]|0)<=(c[c[e>>
;2]>>2]|0)){c[f>>2]=(c[d>>2]|0)+4;c[d>>2]=c[c[f>>2]>>2];if(!(c[d>
;>2]|0)){b=11;break}}else{c[c[f>>2]>>2]=c[e>>2];c[(c[d>>2]|0)+4>>2]=c[(c[
e>>2]|0)+4>>2];c[(c[e>>2]|0)+4>>2]=c[d>>2];c[f>>2]=c[b>>2];
c[d>>2]=c[c[f>>2]>>2]}c[e>>2]=c[(c[d>>2]|0)+4>>2]}if((b|0)==11){i=g;
return}}function Vo(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>
x3e;2]=b;c[f>>2]=d;c[h>>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>
x3e;2];i=e;return}function Wo(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;u=i;i=i+48|0;l=u+32|0;m=u+36|0;n=u+28|0;o=u+24|0;w=u+20|0;v=u+16|0;q=u+12|0;r=u+8|0;p=u+4|0;s=u+38|0;t=u;c[l>>2]=e;
b[m>>1]=f;c[n>>2]=g;c[o>>2]=h;c[w>>2]=j;c[v>>2]=k;c[w>>2]=c[w>
x3e;2];c[v>>2]=c[v>>2];if(((c[o>>2]|0)-(c[n>>2]|0)|0)>=(c[(c[l>>2]|0)+4
x3e;>2]|0)){i=u;return}c[q>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[l
>>2]|0)+4>>2]|0);c[r>>2]=c[o>>2]&0-(c[(c[l>>2]|0)+4>>2]|0);if((
c[q>>2]|0)!=(c[r>>2]|0)){i=u;return}c[p>>2]=(c[(c[l>>2]|0)+60>>2]|0)+(b[m>
;>1]>>3);a[s>>0]=128>>(b[m>>1]&7);c[q>>2]=c[q>>2]>>
;c[c[l>>2]>>2];if((c[q>>2]|0)<0){i=u;return}if((c[q>>2]|0)>=(c[(c[l>>
;2]|0)+104>>2]|0)){i=u;return}c[t>>2]=(c[p>>2]|0)+(0-(_(c[q>>2]|0,c[(c[l>>2]|0
)+104+8>>2]|0)|0));if((c[(c[l>>2]|0)+104+8>>2]|0)>0){w=_((c[(c[l>>2]|0)+104>
x3e;2]|0)-1|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[t>>2]=(c[t>>2]|0)+w}w=c[t>>2]|0;a
[w>>0]=d[w>>0]|d[s>>0];i=u;return}function Xo(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;x=i;i=i+48|0;l=x+36|0;m=x+40|0;n=x+32|0;o=x+28|0;p=x+24|0;q=x+20|0;t=x+16|0
;u=x+12|0;w=x+8|0;r=x+4|0;v=x+42|0;s=x;c[l>>2]=e;b[m>>1]=f;c[n>>2]=g;c[o>>2]=h;c[p>
x3e;2]=j;c[q>>2]=k;c[t>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)-1&0-(c[(c[
l>>2]|0)+4>>2]|0);c[u>>2]=c[o>>2]&0-(c[(c[l>>2]|0)+4>>2]|0);c[w
>>2]=c[t>>2];if((c[t>>2]|0)>(c[u>>2]|0)){c[s>>2]=c[(c[p>>2]|0)+
12>>2]&7;if((c[t>>2]|0)!=((c[u>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0)|0)){i=x;return
}a:do switch(c[s>>2]|0){case 0:{c[w>>2]=c[u>>2];break}case 4:{c[w>>2]=(((c[n>>
2]|0)+(c[o>>2]|0)-1|0)/2|0)+(c[(c[l>>2]|0)+8>>2]|0)&0-(c[(c[l>>2]|0)+4>>2
]|0);break}case 5:case 1:{if((c[(c[p>>2]|0)+28>>2]|0)==(c[q>>2]|0)?(c[(c[p>>2]|0)+16>
;>2]|0)<=0:0){if(!(c[(c[p>>2]|0)+12>>2]&16)){i=x;return}if(((c[o>>2]|0)-(c[n>
x3e;2]|0)|0)<(c[(c[l>>2]|0)+8>>2]|0)){i=x;return}}if((c[(c[q>>2]|0)+28>>2]|0)==(c[p
>>2]|0)?(c[(c[p>>2]|0)+20>>2]|0)==(b[m>>1]|0):0){if(!(c[(c[p>>2]|0)+12>
x3e;2]&32)){i=x;return}if(((c[o>>2]|0)-(c[n>>2]|0)|0)<(c[(c[l>>2]|0)+8>>2]|0)){
i=x;return}}if((c[s>>2]|0)==1){c[w>>2]=c[u>>2];break a}else{c[w>>2]=(((c[n>>2]|
0)+(c[o>>2]|0)-1|0)/2|0)+(c[(c[l>>2]|0)+8>>2]|0)&0-(c[(c[l>>2]|0)+4>>2]|0
);break a}}default:{i=x;return}}while(0);c[t>>2]=(c[w>>2]|0)==(c[t>>2]|0)?c[u>>2]|0:c[t
x3e;>2]|0;c[t>>2]=c[t>>2]>>c[c[l>>2]>>2];c[r>>2]=(c[(c[l>
x3e;2]|0)+60>>2]|0)+(b[m>>1]>>3);a[v>>0]=128>>(b[m>>1]&7);f=_(c
[t>>2]|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[r>>2]=(c[r>>2]|0)+(0-f);if((c[(c[l>
;>2]|0)+104+8>>2]|0)>0){f=_((c[(c[l>>2]|0)+104>>2]|0)-1|0,c[(c[l>>2]|0)+104+8
x3e;>2]|0)|0;c[r>>2]=(c[r>>2]|0)+f}if(((c[t>>2]|0)>=0?(c[t>>2]|0)<(c[(c[l
>>2]|0)+104>>2]|0):0)?d[c[r>>2]>>0]&d[v>>0]|0:0){i=x;return}}c[r>>
;2]=(c[(c[l>>2]|0)+60>>2]|0)+(b[m>>1]>>3);a[v>>0]=128>>(b[m>>
;1]&7);c[t>>2]=c[w>>2]>>c[c[l>>2]>>2];if((c[t>>2]|0)<0){i=
x;return}if((c[t>>2]|0)>=(c[(c[l>>2]|0)+104>>2]|0)){i=x;return}f=_(c[t>>2]|0,c[(c[l
>>2]|0)+104+8>>2]|0)|0;c[r>>2]=(c[r>>2]|0)+(0-f);if((c[(c[l>>2]|0)+104+8>
x3e;2]|0)>0){f=_((c[(c[l>>2]|0)+104>>2]|0)-1|0,c[(c[l>>2]|0)+104+8>>2]|0)|0;c[r>
;>2]=(c[r>>2]|0)+f}f=c[r>>2]|0;a[f>>0]=d[f>>0]|d[v>>0];i=x;return}function
Yo(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return}function Zo(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]|0)+8>>2];Fb(c[e
x3e;>2]|0,c[d>>2]|0);c[d>>2]=0;i=b;return}function _o(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)+4>>2];Ua[c[(c[(c[(c[e>>2]|0)+20>>2]|
0)+56>>2]|0)+8>>2]&31](c[(c[e>>2]|0)+60>>2]|0,c[(c[d>>2]|0)+172>>
;2]|0,c[(c[d>>2]|0)+176>>2]|0);i=b;return 0}function $o(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;w=i;i=i+128|0;j=w+112|0;k=w+108|0;l=w+104|0;m=w+100|0;h=w+96|0;p=w+92|0;s=w+88|0;o=
w+72|0;v=w+64|0;q=w+60|0;u=w+56|0;n=w+52|0;r=w+48|0;t=w;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;c[h>>
;2]=g;if((c[(c[l>>2]|0)+72>>2]|0)==(c[(c[k>>2]|0)+24>>2]|0)){f=c[(c[k>>2]|0)+20
>>2]|0;if((c[m>>2]|0)!=2){if((f|0)==4028){c[j>>2]=19;v=c[j>>2]|0;i=w;return v|0}}else if
((f|0)==4088){c[j>>2]=19;v=c[j>>2]|0;i=w;return v|0}c[s>>2]=(c[l>>2]|0)+108;if(c[h>
x3e;2]|0)Nb(c[s>>2]|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+4>>2]|0);_d(c[s>>
;2]|0,o);c[o>>2]=c[o>>2]&-64;c[o+4>>2]=c[o+4>>2]&-64;c[o+8>>2]=(c[o+
8>>2]|0)+63&-64;c[o+12>>2]=(c[o+12>>2]|0)+63&-64;c[v>>2]=(c[o+8>>2]|
0)-(c[o>>2]|0)>>6;c[q>>2]=(c[o+12>>2]|0)-(c[o+4>>2]|0)>>6;c[n>
x3e;2]=(c[l>>2]|0)+76;c[r>>2]=c[(c[k>>2]|0)+8>>2];if(c[(c[(c[l>>2]|0)+156>
;>2]|0)+4>>2]&1|0){Fb(c[r>>2]|0,c[(c[n>>2]|0)+12>>2]|0);c[(c[n>>2]|0
)+12>>2]=0;h=(c[(c[l>>2]|0)+156>>2]|0)+4|0;c[h>>2]=c[h>>2]&-2}f=c[v>
x3e;2]|0;if(c[m>>2]&2|0){c[u>>2]=(f+15|0)>>>4<<1;a[(c[n>>2]|0)+18>
;>0]=1}else{c[u>>2]=f+3&-4;a[(c[n>>2]|0)+18>>0]=2;b[(c[n>>2]|0)+16>>
1]=256}c[(c[n>>2]|0)+4>>2]=c[v>>2];c[c[n>>2]>>2]=c[q>>2];c[(c[n>
;>2]|0)+8>>2]=c[u>>2];v=hc(c[r>>2]|0,c[q>>2]|0,0,c[u>>2]|0,0,p)|0;c[(c[n
x3e;>2]|0)+12>>2]=v;if(!(c[p>>2]|0)){v=(c[(c[l>>2]|0)+156>>2]|0)+4|0;c[v>>
;2]=c[v>>2]|1;Nb(c[s>>2]|0,0-(c[o>>2]|0)|0,0-(c[o+4>>2]|0)|0);c[t>>2]=c[n>
;>2];c[t+4>>2]=c[s>>2];c[t+8>>2]=0;if((a[(c[n>>2]|0)+18>>0]|0)==2){v=t+8|
0;c[v>>2]=c[v>>2]|1}c[p>>2]=Ya[c[(c[k>>2]|0)+64>>2]&127](c[(c[k>>
;2]|0)+60>>2]|0,t)|0;Nb(c[s>>2]|0,c[o>>2]|0,c[o+4>>2]|0);if(!(c[p>>2]|0)){c[(c
[l>>2]|0)+72>>2]=1651078259;c[(c[l>>2]|0)+100>>2]=c[o>>2]>>6;c[(c[l
x3e;>2]|0)+104>>2]=c[o+12>>2]>>6}}}else c[p>>2]=6;c[j>>2]=c[p>>
2];v=c[j>>2]|0;i=w;return v|0}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,l=0;k=i;i=i+32|0;l=
k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[l>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>
;2]=0;if((c[(c[f>>2]|0)+72>>2]|0)!=(c[(c[l>>2]|0)+24>>2]|0)){c[j>>2]=6;l=c[j
x3e;>2]|0;i=k;return l|0}if(c[g>>2]|0)Kb((c[f>>2]|0)+108|0,c[g>>2]|0);if(!(c[h>>2]|
0)){l=c[j>>2]|0;i=k;return l|0}Nb((c[f>>2]|0)+108|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|
0)+4>>2]|0);l=c[j>>2]|0;i=k;return l|0}function bp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0
;h=g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[e>>2]=b;c[f>>2]=d;b=c[f>>2]|0;c[b>>2]=0;c[b+4
>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;if((c[(c[e>>2]|0)+72>>2]|0)!=(c[(c[h>>
;2]|0)+24>>2]|0)){i=g;return}_d((c[e>>2]|0)+108|0,c[f>>2]|0);i=g;return}function cp(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=Oa
[c[(c[(c[(c[h>>2]|0)+20>>2]|0)+56>>2]|0)+12>>2]&63](c[(c[h>>2]|0)+60>
;>2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function dp(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[c[e>>2]>>
2]=0;c[g>>2]=bc(c[d>>2]|0,20,f)|0;if(c[f>>2]|0){g=c[f>>2]|0;i=h;return g|0}c[(c[g>
x3e;2]|0)+12>>2]=c[d>>2];c[c[e>>2]>>2]=c[g>>2];g=c[f>>2]|0;i=h;return
g|0}function ep(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;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>
;>2]=a;c[e>>2]=b;c[f>>2]=d;c[g>>2]=c[k>>2];if(!(c[k>>2]|0)){i=j;return}if
((c[e>>2]|0)!=0&(c[f>>2]|0)>=3476){c[h>>2]=c[e>>2];c[(c[g>>2]|0)+16
x3e;>2]=c[h>>2];c[c[g>>2]>>2]=(c[e>>2]|0)+1440;c[(c[g>>2]|0)+4>>
;2]=(c[e>>2]|0)+(c[f>>2]|0)-(c[c[g>>2]>>2]|0)&-16;c[(c[g>>2]|0)+8>
x3e;2]=((c[(c[g>>2]|0)+4>>2]|0)>>>0)/128|0;i=j;return}else{c[c[g>>2]>>2]=
0;c[(c[g>>2]|0)+4>>2]=0;c[(c[g>>2]|0)+16>>2]=0;i=j;return}}function fp(a,d){a=a|0;d=d|0;
var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[f>>2]=a;c[g>>2
]=d;c[h>>2]=c[(c[g>>2]|0)+4>>2];c[j>>2]=c[c[g>>2]>>2];if((c[f>
x3e;2]|0?c[c[f>>2]>>2]|0:0)?c[(c[f>>2]|0)+4>>2]|0:0){if(!(c[h>>2]|0)){c[e>
;>2]=20;k=c[e>>2]|0;i=l;return k|0}if(b[(c[h>>2]|0)+2>>1]|0?(b[c[h>>2]>>1
]|0)>0:0){if(c[(c[h>>2]|0)+12>>2]|0?c[(c[h>>2]|0)+4>>2]|0:0){if((b[(c[h>>
2]|0)+2>>1]|0)!=((b[(c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>>1]|0)-1<<1
)>>1]|0)+1|0)){c[e>>2]=20;k=c[e>>2]|0;i=l;return k|0}c[k>>2]=c[(c[f>>2]|0)+16
x3e;>2];do if(!(c[(c[g>>2]|0)+8>>2]&2)){if(!(c[j>>2]|0)){c[e>>2]=6;k=c[e>
x3e;2]|0;i=l;return k|0}if(c[(c[j>>2]|0)+4>>2]|0?c[c[j>>2]>>2]|0:0){if(c[(c[j>>
;2]|0)+12>>2]|0)break;c[e>>2]=6;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=0;k=c[e>>2]|
0;i=l;return k|0}while(0);if(!(c[(c[g>>2]|0)+8>>2]&1)){c[e>>2]=19;k=c[e>>2]|0;i=l;return
k|0}do if(c[(c[g>>2]|0)+8>>2]&2|0){d=(c[k>>2]|0)+1024|0;if(c[(c[g>>2]|0)+8>
x3e;2]&4|0){a=(c[g>>2]|0)+32|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8
x3e;>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];break}else{c[d>>2]=-32768;c[(c[k>>
;2]|0)+1024+4>>2]=-32768;c[(c[k>>2]|0)+1024+8>>2]=32767;c[(c[k>>2]|0)+1024+12>>
;2]=32767;break}}else{c[(c[k>>2]|0)+1024>>2]=0;c[(c[k>>2]|0)+1024+4>>2]=0;c[(c[k>
x3e;2]|0)+1024+8>>2]=c[(c[j>>2]|0)+4>>2];c[(c[k>>2]|0)+1024+12>>2]=c[c[j>
x3e;2]>>2]}while(0);gp(c[k>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|
0);a=(c[k>>2]|0)+980|0;h=c[h>>2]|0;c[a>>2]=c[h>>2];c[a+4>>2]=c[h+4>>
2];c[a+8>>2]=c[h+8>>2];c[a+12>>2]=c[h+12>>2];c[a+16>>2]=c[h+16>>2];c
[(c[k>>2]|0)+52>>2]=0;c[(c[k>>2]|0)+40>>2]=1;c[(c[k>>2]|0)+1248>>2]=
c[(c[f>>2]|0)+8>>2];c[(c[k>>2]|0)+1232>>2]=0;if(c[(c[g>>2]|0)+8>>2]
x26;2|0){c[(c[k>>2]|0)+1236>>2]=c[(c[g>>2]|0)+12>>2];c[(c[k>>2]|0)+1240>
x3e;2]=c[(c[g>>2]|0)+28>>2]}else{h=(c[k>>2]|0)+1e3|0;j=c[j>>2]|0;c[h>>2]=c[j
x3e;>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[h+12>>2]=c[j+12>
x3e;2];c[h+16>>2]=c[j+16>>2];c[h+20>>2]=c[j+20>>2];c[(c[k>>2]|0)+1236>>
;2]=13;c[(c[k>>2]|0)+1240>>2]=c[k>>2]}c[e>>2]=ip(c[k>>2]|0)|0;k=c[e>>
;2]|0;i=l;return k|0}c[e>>2]=20;k=c[e>>2]|0;i=l;return k|0}c[e>>2]=0;k=c[e>>2]|0;i=l;return
k|0}c[e>>2]=6;k=c[e>>2]|0;i=l;return k|0}function gp(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[(c[f>>2]|0)+1412>>2]=c[
g>>2];c[(c[f>>2]|0)+1416>>2]=c[h>>2];c[(c[f>>2]|0)+1420>>2]=c[g>
;>2];c[(c[f>>2]|0)+44>>2]=0;c[(c[f>>2]|0)+48>>2]=0;c[(c[f>>2]|0)+52>
x3e;2]=0;c[(c[f>>2]|0)+32>>2]=0;c[(c[f>>2]|0)+36>>2]=0;c[(c[f>>2]|0)+40>
x3e;2]=1;i=e;return}function hp(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;r=i;i=i+32|0;s=r+24
|0;l=r+20|0;m=r+16|0;t=r+12|0;o=r+8|0;k=r+4|0;n=r+28|0;p=r;c[s>>2]=f;c[l>>2]=g;c[m>>2]=h;c[t>
x3e;2]=j;c[k>>2]=(c[t>>2]|0)+1e3;c[o>>2]=(c[(c[k>>2]|0)+12>>2]|0)+(0-(_(c[s>
;>2]|0,c[(c[k>>2]|0)+8>>2]|0)|0));if((c[(c[k>>2]|0)+8>>2]|0)>=0){t=_((c[c[k>
;>2]>>2]|0)-1|0,c[(c[k>>2]|0)+8>>2]|0)|0;c[o>>2]=(c[o>>2]|0)+t}while(1){if
((c[l>>2]|0)<=0)break;a[n>>0]=a[(c[m>>2]|0)+4>>0]|0;a:do if(a[n>>0]|0){g=(
c[o>>2]|0)+(b[c[m>>2]>>1]|0)|0;if((e[(c[m>>2]|0)+2>>1]|0)>=8){Ns(g|0,d[n
x3e;>0]&255|0,e[(c[m>>2]|0)+2>>1]|0)|0;break}c[p>>2]=g;switch(e[(c[m>>2]|0)+2
x3e;>1]|0){case 7:{t=a[n>>0]|0;q=c[p>>2]|0;c[p>>2]=q+1;a[q>>0]=t;q=9;break}case 6:{
q=9;break}case 5:{q=10;break}case 4:{q=11;break}case 3:{q=12;break}case 2:{q=13;break}case 1:break;default:break a}if((q|0)==9){
s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s;q=10}if((q|0)==10){s=a[n>>0]|0;t
=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s;q=11}if((q|0)==11){s=a[n>>0]|0;t=c[p>>2]|0;c[
p>>2]=t+1;a[t>>0]=s;q=12}if((q|0)==12){s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t
>>0]=s;q=13}if((q|0)==13){q=0;s=a[n>>0]|0;t=c[p>>2]|0;c[p>>2]=t+1;a[t>>0]=s}a[
c[p>>2]>>0]=a[n>>0]|0}while(0);c[l>>2]=(c[l>>2]|0)+-1;c[m>>2]=(c[m
x3e;>2]|0)+6}i=r;return}function ip(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;w=i;i=i+400|0;u=w+388|0;v=w+384|0;d=w+64|0;b=w+60|0;q=w+56|0;r=w+52|0;p=w+48|0;m=w+44|0;n=w+40|0;k=w+36|0;e=w+32|0;s=w+28|
0;o=w+24|0;l=w+20|0;j=w+16|0;t=w+12|0;h=w+8|0;f=w+4|0;g=w;c[v>>2]=a;jp(c[v>>2]|0);c[k>>2]=(c[v>
;>2]|0)+1024;if((((c[(c[v>>2]|0)+12>>2]|0)>(c[c[k>>2]>>2]|0)?(c[(c[v>>
;2]|0)+8>>2]|0)<(c[(c[k>>2]|0)+8>>2]|0):0)?(c[(c[v>>2]|0)+20>>2]|0)>(
c[(c[k>>2]|0)+4>>2]|0):0)?(c[(c[v>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0)+12>
;>2]|0):0){if((c[(c[v>>2]|0)+8>>2]|0)<(c[c[k>>2]>>2]|0))c[(c[v>>2]|0
)+8>>2]=c[c[k>>2]>>2];if((c[(c[v>>2]|0)+16>>2]|0)<(c[(c[k>>2]|0
)+4>>2]|0))c[(c[v>>2]|0)+16>>2]=c[(c[k>>2]|0)+4>>2];if((c[(c[v>>2]|0
)+12>>2]|0)>(c[(c[k>>2]|0)+8>>2]|0))c[(c[v>>2]|0)+12>>2]=c[(c[k>>
;2]|0)+8>>2];if((c[(c[v>>2]|0)+20>>2]|0)>(c[(c[k>>2]|0)+12>>2]|0))c[(c[v
x3e;>2]|0)+20>>2]=c[(c[k>>2]|0)+12>>2];c[(c[v>>2]|0)+24>>2]=(c[(c[v>
x3e;2]|0)+12>>2]|0)-(c[(c[v>>2]|0)+8>>2]|0);c[(c[v>>2]|0)+28>>2]=(c[(c[v>
x3e;2]|0)+20>>2]|0)-(c[(c[v>>2]|0)+16>>2]|0);c[r>>2]=((c[(c[v>>2]|0)+20>
x3e;2]|0)-(c[(c[v>>2]|0)+16>>2]|0)|0)/(c[(c[v>>2]|0)+1248>>2]|0)|0;if(!(c[r>>2
]|0))c[r>>2]=1;if((c[r>>2]|0)>=39)c[r>>2]=39;c[(c[v>>2]|0)+1252>>2]=0;c[p
>>2]=c[(c[v>>2]|0)+16>>2];c[n>>2]=c[(c[v>>2]|0)+20>>2];c[q>>
;2]=0;a:while(1){if((c[q>>2]|0)>=(c[r>>2]|0)){b=42;break}c[m>>2]=(c[p>>2]|0)+(c[(c[
v>>2]|0)+1248>>2]|0);if(!((c[q>>2]|0)!=((c[r>>2]|0)-1|0)?(c[m>>2]|0)<=(c[
n>>2]|0):0))c[m>>2]=c[n>>2];c[d>>2]=c[p>>2];c[d+4>>2]=c[m>>
;2];c[b>>2]=d;b:while(1){if((c[b>>2]|0)>>>0<d>>>0)break;c[(c[v>>
;2]|0)+1420>>2]=c[(c[v>>2]|0)+1412>>2];c[(c[v>>2]|0)+1424>>2]=(c[(c[b>>
;2]|0)+4>>2]|0)-(c[c[b>>2]>>2]|0);c[h>>2]=c[(c[v>>2]|0)+1424>>2]<
;<2;c[g>>2]=((c[h>>2]|0)>>>0)%16|0;if((c[g>>2]|0)>0)c[h>>2]=(c[
h>>2]|0)+(16-(c[g>>2]|0));c[f>>2]=c[(c[v>>2]|0)+1416>>2];c[f>>2]=(c[
f>>2]|0)-(((c[f>>2]|0)>>>0)%16|0);c[j>>2]=(c[(c[v>>2]|0)+1412>>
2]|0)+(c[f>>2]|0);c[(c[v>>2]|0)+44>>2]=(c[(c[v>>2]|0)+1412>>2]|0)+(c[h>
x3e;2]|0);do if((c[(c[v>>2]|0)+44>>2]|0)>>>0<(c[j>>2]|0)>>>0?(c
[(c[v>>2]|0)+48>>2]=((c[j>>2]|0)-(c[(c[v>>2]|0)+44>>2]|0)|0)/16|0,(c[(c[v>
;>2]|0)+48>>2]|0)>=2):0){c[t>>2]=0;while(1){if((c[t>>2]|0)>=(c[(c[v>>2]|0
)+1424>>2]|0))break;c[(c[(c[v>>2]|0)+1420>>2]|0)+(c[t>>2]<<2)>>2]=0;
c[t>>2]=(c[t>>2]|0)+1}c[(c[v>>2]|0)+52>>2]=0;c[(c[v>>2]|0)+40>>2]=1;
c[(c[v>>2]|0)+16>>2]=c[c[b>>2]>>2];c[(c[v>>2]|0)+20>>2]=c[(c[b>
x3e;2]|0)+4>>2];c[(c[v>>2]|0)+28>>2]=(c[(c[b>>2]|0)+4>>2]|0)-(c[c[b>>
;2]>>2]|0);c[l>>2]=kp(c[v>>2]|0)|0;if(c[l>>2]|0)if((c[l>>2]|0)!=64){b=35;break
a}else break;else{zp(c[v>>2]|0,(c[v>>2]|0)+1e3|0);c[b>>2]=(c[b>>2]|0)+-8;continue b}}while
(0);c[e>>2]=c[c[b>>2]>>2];c[s>>2]=c[(c[b>>2]|0)+4>>2];c[o>>
;2]=(c[e>>2]|0)+((c[s>>2]|0)-(c[e>>2]|0)>>1);if((c[o>>2]|0)==(c[e>>2
]|0)){b=37;break a}if(((c[e>>2]|0)-(c[s>>2]|0)|0)>=(c[(c[v>>2]|0)+1248>>2]|0)){a=(c
[v>>2]|0)+1252|0;c[a>>2]=(c[a>>2]|0)+1}c[(c[b>>2]|0)+8>>2]=c[e>>2];c
[(c[b>>2]|0)+8+4>>2]=c[o>>2];c[c[b>>2]>>2]=c[o>>2];c[(c[b>>
;2]|0)+4>>2]=c[s>>2];c[b>>2]=(c[b>>2]|0)+8}c[q>>2]=(c[q>>2]|0)+1;c[p
>>2]=c[m>>2]}if((b|0)==35){c[u>>2]=1;v=c[u>>2]|0;i=w;return v|0}else if((b|0)==37){c[u
x3e;>2]=1;v=c[u>>2]|0;i=w;return v|0}else if((b|0)==42){if((c[(c[v>>2]|0)+1252>>2]|0)>8?(
c[(c[v>>2]|0)+1248>>2]|0)>16:0)c[(c[v>>2]|0)+1248>>2]=(c[(c[v>>2]|0)+1248
>>2]|0)/2|0;c[u>>2]=0;v=c[u>>2]|0;i=w;return v|0}}c[u>>2]=0;v=c[u>>2]|0;i=w;return
v|0}function jp(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;d=j+20|0;k=j+16|0;f=j+12|0;e=j+8|0;g=j+4|0;h=j;c[d>
x3e;2]=a;c[k>>2]=(c[d>>2]|0)+980;c[f>>2]=c[(c[k>>2]|0)+4>>2];c[e>>2]=(
c[f>>2]|0)+(b[(c[k>>2]|0)+2>>1]<<3);if((b[(c[k>>2]|0)+2>>1]|0)<=
0){c[(c[d>>2]|0)+12>>2]=0;c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+20>>2]=
0;c[(c[d>>2]|0)+16>>2]=0;i=j;return}k=c[c[f>>2]>>2]|0;c[(c[d>>2]|0)+12>
x3e;2]=k;c[(c[d>>2]|0)+8>>2]=k;k=c[(c[f>>2]|0)+4>>2]|0;c[(c[d>>2]|0)+20>
x3e;2]=k;c[(c[d>>2]|0)+16>>2]=k;c[f>>2]=(c[f>>2]|0)+8;while(1){if((c[f>>2]|0)
x3e;>>0>=(c[e>>2]|0)>>>0)break;c[g>>2]=c[c[f>>2]>>2];c[h
x3e;>2]=c[(c[f>>2]|0)+4>>2];if((c[g>>2]|0)<(c[(c[d>>2]|0)+8>>2]|0))c
[(c[d>>2]|0)+8>>2]=c[g>>2];if((c[g>>2]|0)>(c[(c[d>>2]|0)+12>>2]|
0))c[(c[d>>2]|0)+12>>2]=c[g>>2];if((c[h>>2]|0)<(c[(c[d>>2]|0)+16>>
;2]|0))c[(c[d>>2]|0)+16>>2]=c[h>>2];if((c[h>>2]|0)>(c[(c[d>>2]|0)+20>
;>2]|0))c[(c[d>>2]|0)+20>>2]=c[h>>2];c[f>>2]=(c[f>>2]|0)+8}c[(c[d>
x3e;2]|0)+8>>2]=c[(c[d>>2]|0)+8>>2]>>6;c[(c[d>>2]|0)+16>>2]=c[(c[d
x3e;>2]|0)+16>>2]>>6;c[(c[d>>2]|0)+12>>2]=(c[(c[d>>2]|0)+12>>2]|
0)+63>>6;c[(c[d>>2]|0)+20>>2]=(c[(c[d>>2]|0)+20>>2]|0)+63>>6;i=j;return
}function kp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;h=4;f=Fs(40)|0;c[f>>2]=0;g=j;c[g>>2]=0;h=
Qs(a+1256|0,1,f|0,h|0)|0;f=C;n=0;b=n;n=0;if((b|0)!=0&(o|0)!=0){d=Rs(c[b>>2]|0,h|0,f|0)|0;if(!d)ta(b|0,o|0);C=o}else
d=-1;if((d|0)==1)b=C;else b=0;while(1){if(b|0){b=7;break}n=0;b=ea(46,a+980|0,4172,a|0)|0;d=n;n=0;if((d|0)!=0&(o|0)!=0){e=Rs
(c[d>>2]|0,h|0,f|0)|0;if(!e)ta(d|0,o|0);C=o}else e=-1;if((e|0)==1){b=C;continue}c[g>>2]=b;n=0;la(43,a|0);b=n
;n=0;if((b|0)!=0&(o|0)!=0){d=Rs(c[b>>2]|0,h|0,f|0)|0;if(!d)ta(b|0,o|0);C=o}else d=-1;if((d|0)==1)b=C;else{b=6;break
}}if((b|0)==6){g=c[g>>2]|0;Gs(h|0);i=j;return g|0}else if((b|0)==7){c[g>>2]=64;g=c[g>>2]|0;Gs(h|0);
i=j;return g|0}return 0}function lp(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;e=d+8|0;g=d+4|0;f=d;c[h>
x3e;2]=a;c[e>>2]=b;mp(c[e>>2]|0);c[g>>2]=c[c[h>>2]>>2]<<2;c[f>
x3e;2]=c[(c[h>>2]|0)+4>>2]<<2;op(c[e>>2]|0,c[g>>2]>>8,c[f>>
;2]>>8);c[(c[e>>2]|0)+64>>2]=c[g>>2];c[(c[e>>2]|0)+68>>2]=c[f>
x3e;2];i=d;return 0}function mp(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;if(c[(c[b>>2]|0)+
40>>2]|0){i=e;return}if(!(c[(c[b>>2]|0)+32>>2]|c[(c[b>>2]|0)+36>>2])){i=e;return
}c[d>>2]=np(c[b>>2]|0)|0;a=(c[d>>2]|0)+8|0;c[a>>2]=(c[a>>2]|0)+(c[(c[b>
x3e;2]|0)+32>>2]|0);a=(c[d>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+(c[(c[b>>2]|0)+36>
;>2]|0);i=e;return}function np(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+12|0;f=h+8|0;e=h+4|0;g=h;c[d>>
;2]=a;c[g>>2]=c[c[d>>2]>>2];if((c[g>>2]|0)>(c[(c[d>>2]|0)+24>>2
]|0))c[g>>2]=c[(c[d>>2]|0)+24>>2];c[f>>2]=(c[(c[d>>2]|0)+1420>>2]|0)+(
c[(c[d>>2]|0)+4>>2]<<2);while(1){c[e>>2]=c[c[f>>2]>>2];if(!(c[e>
;>2]|0))break;if((c[c[e>>2]>>2]|0)>(c[g>>2]|0))break;if((c[c[e>>2]>>
2]|0)==(c[g>>2]|0)){b=11;break}c[f>>2]=(c[e>>2]|0)+12}if((b|0)==11){g=c[e>>2]|0;i=h;return
g|0}a=c[d>>2]|0;if((c[(c[d>>2]|0)+52>>2]|0)>=(c[(c[d>>2]|0)+48>>2]|0))ta
(a+1256|0,1);b=c[a+44>>2]|0;a=(c[d>>2]|0)+52|0;d=c[a>>2]|0;c[a>>2]=d+1;c[e>>2]=
b+(d<<4);c[c[e>>2]>>2]=c[g>>2];c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>
;2]|0)+4>>2]=0;c[(c[e>>2]|0)+12>>2]=c[c[f>>2]>>2];c[c[f>>2]>>
;2]=c[e>>2];g=c[e>>2]|0;i=h;return g|0}function op(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0
;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;if((c[f>>2]|0)>(c[(c[e>>
;2]|0)+12>>2]|0))c[f>>2]=c[(c[e>>2]|0)+12>>2];if((c[f>>2]|0)<(c[(c[e>
;>2]|0)+8>>2]|0))c[f>>2]=(c[(c[e>>2]|0)+8>>2]|0)-1;c[(c[e>>2]|0)+32>
x3e;2]=0;c[(c[e>>2]|0)+36>>2]=0;c[c[e>>2]>>2]=(c[f>>2]|0)-(c[(c[e>>2
]|0)+8>>2]|0);c[(c[e>>2]|0)+4>>2]=(c[g>>2]|0)-(c[(c[e>>2]|0)+16>>2]|
0);c[(c[e>>2]|0)+72>>2]=c[g>>2]<<8;c[(c[e>>2]|0)+40>>2]=0;pp(c[e>
;>2]|0,c[f>>2]|0,c[g>>2]|0);i=h;return}function pp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=i;i=i
+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[g>>2]=(c[g>>2]|0)-(c
[(c[e>>2]|0)+16>>2]|0);if((c[f>>2]|0)>(c[(c[e>>2]|0)+12>>2]|0))c[f>
x3e;2]=c[(c[e>>2]|0)+12>>2];a=(c[f>>2]|0)-(c[(c[e>>2]|0)+8>>2]|0)|0;c[f>
x3e;2]=a;c[f>>2]=(c[f>>2]|0)<0?-1:a;if(!((c[f>>2]|0)==(c[c[e>>2]>>2]|0)?(
c[g>>2]|0)==(c[(c[e>>2]|0)+4>>2]|0):0)){if(!(c[(c[e>>2]|0)+40>>2]|0))mp(c[e>
;>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[(c[e>>2]|0)+36>>2]=0}c[c[e>>2]>>
;2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=c[g>>2];if((c[g>>2]|0)>>>0>
;=(c[(c[e>>2]|0)+28>>2]|0)>>>0){d=1;d=d&1;a=c[e>>2]|0;a=a+40|0;c[a>>
2]=d;i=h;return}d=(c[f>>2]|0)>=(c[(c[e>>2]|0)+24>>2]|0);d=d&1;a=c[e>>2]|0;a=a+
40|0;c[a>>2]=d;i=h;return}function qp(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;rp(c[f>>2]|0,c[c[e>>2]>>2]<<2,c[(c[e>>2]|0)+4>>2]
x3c;<2);i=d;return 0}function rp(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,y=0,z=0,A=0,B=0,C=0;C=i;i=i+96|0;e=C+88|0;f=C+84|0;g=C+80|0;n=C+76|0;o=C+72|0;q=C+68|0;r=C+64|0;w=C+60|0;k=C+56|0
;l=C+52|0;A=C+48|0;B=C+44|0;x=C+40|0;p=C+36|0;j=C+32|0;y=C+28|0;t=C+24|0;s=C+20|0;v=C+16|0;u=C+12|0;m=C+8|0;z=C+4|0;h=C;c[e>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[n>>2]=c[(c[e>>2]|0)+72>>2]>>8;c[o
x3e;>2]=c[g>>2]>>8;c[q>>2]=(c[(c[e>>2]|0)+68>>2]|0)-(c[(c[e>>2]|
0)+72>>2]|0);c[r>>2]=(c[g>>2]|0)-(c[o>>2]<<8);c[k>>2]=(c[f>>
;2]|0)-(c[(c[e>>2]|0)+64>>2]|0);c[l>>2]=(c[g>>2]|0)-(c[(c[e>>2]|0)+68>>
;2]|0);c[v>>2]=c[n>>2];c[u>>2]=c[o>>2];if((c[n>>2]|0)>(c[o>>2]|
0)){c[v>>2]=c[o>>2];c[u>>2]=c[n>>2]}if((c[v>>2]|0)>=(c[(c[e>>2]|
0)+20>>2]|0)){A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>
;>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=
A;i=C;return}if((c[u>>2]|0)<(c[(c[e>>2]|0)+16>>2]|0)){A=c[f>>2]|0;B=c[e>>
2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0
;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C;return}if((c[n>>2]|0)==(c[o>>2]|0)){
sp(c[e>>2]|0,c[n>>2]|0,c[(c[e>>2]|0)+64>>2]|0,c[q>>2]|0,c[f>>2]|0,c[
r>>2]|0);A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>
;2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C
;return}c[s>>2]=1;if(!(c[k>>2]|0)){c[m>>2]=c[(c[e>>2]|0)+64>>2]>>8;c
[z>>2]=(c[(c[e>>2]|0)+64>>2]|0)-(c[m>>2]<<8)<<1;c[p>>2]=256
;if((c[l>>2]|0)<0){c[p>>2]=0;c[s>>2]=-1}c[j>>2]=(c[p>>2]|0)-(c[q>>
;2]|0);A=_(c[z>>2]|0,c[j>>2]|0)|0;B=(c[e>>2]|0)+32|0;c[B>>2]=(c[B>>2]|0)+A;B=(
c[e>>2]|0)+36|0;c[B>>2]=(c[B>>2]|0)+(c[j>>2]|0);c[n>>2]=(c[n>>2]|0)+(
c[s>>2]|0);pp(c[e>>2]|0,c[m>>2]|0,c[n>>2]|0);c[j>>2]=(c[p>>2]|0)+(c[
p>>2]|0)-256;c[h>>2]=_(c[z>>2]|0,c[j>>2]|0)|0;while(1){if((c[n>>2]|0)==(c[o>
;>2]|0))break;B=(c[e>>2]|0)+32|0;c[B>>2]=(c[B>>2]|0)+(c[h>>2]|0);B=(c[e>>
2]|0)+36|0;c[B>>2]=(c[B>>2]|0)+(c[j>>2]|0);c[n>>2]=(c[n>>2]|0)+(c[s>>
;2]|0);pp(c[e>>2]|0,c[m>>2]|0,c[n>>2]|0)}c[j>>2]=(c[r>>2]|0)-256+(c[p>>
;2]|0);B=_(c[z>>2]|0,c[j>>2]|0)|0;A=(c[e>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+B;A=(
c[e>>2]|0)+36|0;c[A>>2]=(c[A>>2]|0)+(c[j>>2]|0);A=c[f>>2]|0;B=c[e>>2
]|0;B=B+64|0;c[B>>2]=A;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;
A=A<<8;B=c[e>>2]|0;B=B+72|0;c[B>>2]=A;i=C;return}c[x>>2]=_(256-(c[q>>2]|0)|0,c
[k>>2]|0)|0;c[p>>2]=256;c[s>>2]=1;if((c[l>>2]|0)<0){c[x>>2]=_(c[q>
x3e;2]|0,c[k>>2]|0)|0;c[p>>2]=0;c[s>>2]=-1;c[l>>2]=0-(c[l>>2]|0)}c[j>>
;2]=(c[x>>2]|0)/(c[l>>2]|0)|0;c[w>>2]=(c[x>>2]|0)%(c[l>>2]|0)|0;if((c[w>
x3e;2]|0)<0){c[j>>2]=(c[j>>2]|0)+-1;c[w>>2]=(c[w>>2]|0)+(c[l>>2]|0)}c[A
x3e;>2]=(c[(c[e>>2]|0)+64>>2]|0)+(c[j>>2]|0);sp(c[e>>2]|0,c[n>>2]|0,c[(c[
e>>2]|0)+64>>2]|0,c[q>>2]|0,c[A>>2]|0,c[p>>2]|0);c[n>>2]=(c[n>
x3e;2]|0)+(c[s>>2]|0);pp(c[e>>2]|0,c[A>>2]>>8,c[n>>2]|0);a:do if((c[n>>
;2]|0)!=(c[o>>2]|0)){c[x>>2]=c[k>>2]<<8;c[t>>2]=(c[x>>2]|0)/(c[l>
;>2]|0)|0;c[y>>2]=(c[x>>2]|0)%(c[l>>2]|0)|0;if((c[y>>2]|0)<0){c[t>>2
]=(c[t>>2]|0)+-1;c[y>>2]=(c[y>>2]|0)+(c[l>>2]|0)}c[w>>2]=(c[w>>2]|0)-(
c[l>>2]|0);while(1){if((c[n>>2]|0)==(c[o>>2]|0))break a;c[j>>2]=c[t>>2];c[w>
;>2]=(c[w>>2]|0)+(c[y>>2]|0);if((c[w>>2]|0)>=0){c[w>>2]=(c[w>>2]|0)-(
c[l>>2]|0);c[j>>2]=(c[j>>2]|0)+1}c[B>>2]=(c[A>>2]|0)+(c[j>>2]|0);sp(
c[e>>2]|0,c[n>>2]|0,c[A>>2]|0,256-(c[p>>2]|0)|0,c[B>>2]|0,c[p>>2]|0);
c[A>>2]=c[B>>2];c[n>>2]=(c[n>>2]|0)+(c[s>>2]|0);pp(c[e>>2]|0,c[A>
;>2]>>8,c[n>>2]|0)}}while(0);sp(c[e>>2]|0,c[n>>2]|0,c[A>>2]|0,256-(c[p>
;>2]|0)|0,c[f>>2]|0,c[r>>2]|0);A=c[f>>2]|0;B=c[e>>2]|0;B=B+64|0;c[B>>2]=A
;B=c[g>>2]|0;A=c[e>>2]|0;A=A+68|0;c[A>>2]=B;A=c[o>>2]|0;A=A<<8;B=c[e>>
;2]|0;B=B+72|0;c[B>>2]=A;i=C;return}function sp(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;y=i;i=i+80|0;h=y+68|0;j=y+64|0;A=y+60|0;k=y+56|0;z=y+52|0;l=y+48|0;o=
y+44|0;p=y+40|0;r=y+36|0;s=y+32|0;m=y+28|0;v=y+24|0;u=y+20|0;x=y+16|0;w=y+12|0;q=y+8|0;n=y+4|0;t=y;c[h>>2]=a;c[j>
x3e;2]=b;c[A>>2]=d;c[k>>2]=e;c[z>>2]=f;c[l>>2]=g;c[n>>2]=(c[z>>2]|0)-(
c[A>>2]|0);c[o>>2]=c[A>>2]>>8;c[p>>2]=c[z>>2]>>8;c[r>
x3e;2]=(c[A>>2]|0)-(c[o>>2]<<8);c[s>>2]=(c[z>>2]|0)-(c[p>>2]<
x3c;8);if((c[k>>2]|0)==(c[l>>2]|0)){pp(c[h>>2]|0,c[p>>2]|0,c[j>>2]|0);i=y;return
}if((c[o>>2]|0)==(c[p>>2]|0)){c[m>>2]=(c[l>>2]|0)-(c[k>>2]|0);z=_((c[r>
x3e;2]|0)+(c[s>>2]|0)|0,c[m>>2]|0)|0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;
A=(c[h>>2]|0)+36|0;c[A>>2]=(c[A>>2]|0)+(c[m>>2]|0);i=y;return}c[w>>2]=_(256-(c
[r>>2]|0)|0,(c[l>>2]|0)-(c[k>>2]|0)|0)|0;c[q>>2]=256;c[t>>2]=1;if((c[n>
x3e;2]|0)<0){c[w>>2]=_(c[r>>2]|0,(c[l>>2]|0)-(c[k>>2]|0)|0)|0;c[q>>2]=0;c
[t>>2]=-1;c[n>>2]=0-(c[n>>2]|0)}c[m>>2]=(c[w>>2]|0)/(c[n>>2]|0)|0;c[
v>>2]=(c[w>>2]|0)%(c[n>>2]|0)|0;if((c[v>>2]|0)<0){c[m>>2]=(c[m>>
;2]|0)+-1;c[v>>2]=(c[v>>2]|0)+(c[n>>2]|0)}z=_((c[r>>2]|0)+(c[q>>2]|0)|0,c[m>
;>2]|0)|0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;A=(c[h>>2]|0)+36|0;c[A>>
;2]=(c[A>>2]|0)+(c[m>>2]|0);c[o>>2]=(c[o>>2]|0)+(c[t>>2]|0);pp(c[h>>
2]|0,c[o>>2]|0,c[j>>2]|0);c[k>>2]=(c[k>>2]|0)+(c[m>>2]|0);a:do if((c[o>
x3e;2]|0)!=(c[p>>2]|0)){c[w>>2]=(c[l>>2]|0)-(c[k>>2]|0)+(c[m>>2]|0)<<
;8;c[u>>2]=(c[w>>2]|0)/(c[n>>2]|0)|0;c[x>>2]=(c[w>>2]|0)%(c[n>>2]|0)|
0;if((c[x>>2]|0)<0){c[u>>2]=(c[u>>2]|0)+-1;c[x>>2]=(c[x>>2]|0)+(c[n>
x3e;2]|0)}c[v>>2]=(c[v>>2]|0)-(c[n>>2]|0);while(1){if((c[o>>2]|0)==(c[p>>2]|0))
break a;c[m>>2]=c[u>>2];c[v>>2]=(c[v>>2]|0)+(c[x>>2]|0);if((c[v>>2]|
0)>=0){c[v>>2]=(c[v>>2]|0)-(c[n>>2]|0);c[m>>2]=(c[m>>2]|0)+1}A=(c[h>
x3e;2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+(c[m>>2]<<8);A=(c[h>>2]|0)+36|0;c[A>
x3e;2]=(c[A>>2]|0)+(c[m>>2]|0);c[k>>2]=(c[k>>2]|0)+(c[m>>2]|0);c[o>>
2]=(c[o>>2]|0)+(c[t>>2]|0);pp(c[h>>2]|0,c[o>>2]|0,c[j>>2]|0)}}while(0);c[m>
;>2]=(c[l>>2]|0)-(c[k>>2]|0);z=_((c[s>>2]|0)+256-(c[q>>2]|0)|0,c[m>>2]|0)|
0;A=(c[h>>2]|0)+32|0;c[A>>2]=(c[A>>2]|0)+z;A=(c[h>>2]|0)+36|0;c[A>>2]=(c[A>
;>2]|0)+(c[m>>2]|0);i=y;return}function tp(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;up(c[h>>2]|0,c[g>>2]|0,c[f>>2]|
0);i=e;return 0}function up(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;p=i;i=i+48|0;e=p+44
|0;q=p+40|0;r=p+36|0;g=p+32|0;h=p+28|0;n=p+24|0;j=p+20|0;k=p+16|0;f=p+12|0;m=p+8|0;l=p+4|0;o=p;c[e>>2]=a;c[q>>
;2]=b;c[r>>2]=d;c[f>>2]=(c[e>>2]|0)+76;c[c[f>>2]>>2]=c[c[r>>2]>
x3e;2]<<2;c[(c[f>>2]|0)+4>>2]=c[(c[r>>2]|0)+4>>2]<<2;c[(c[f>>
;2]|0)+8>>2]=c[c[q>>2]>>2]<<2;c[(c[f>>2]|0)+8+4>>2]=c[(c[q>>
;2]|0)+4>>2]<<2;c[(c[f>>2]|0)+16>>2]=c[(c[e>>2]|0)+64>>2];c[(c[f>
;>2]|0)+16+4>>2]=c[(c[e>>2]|0)+68>>2];a=(c[(c[f>>2]|0)+16>>2]|0)+(c[c[f
x3e;>2]>>2]|0)-(c[(c[f>>2]|0)+8>>2]<<1)|0;c[g>>2]=((c[(c[f>>2]|
0)+16>>2]|0)+(c[c[f>>2]>>2]|0)-(c[(c[f>>2]|0)+8>>2]<<1)|0)<0?0-
a|0:a;a=(c[(c[f>>2]|0)+16+4>>2]|0)+(c[(c[f>>2]|0)+4>>2]|0)-(c[(c[f>>2]|0)+8+4
x3e;>2]<<1)|0;c[h>>2]=((c[(c[f>>2]|0)+16+4>>2]|0)+(c[(c[f>>2]|0)+4>
x3e;2]|0)-(c[(c[f>>2]|0)+8+4>>2]<<1)|0)<0?0-a|0:a;if((c[g>>2]|0)<(c[h>>
;2]|0))c[g>>2]=c[h>>2];if((c[g>>2]|0)<=64){rp(c[e>>2]|0,c[c[f>>2]>
x3e;2]|0,c[(c[f>>2]|0)+4>>2]|0);i=p;return}c[j>>2]=0;while(1){if((c[g>>2]|0)<=64)break
;c[g>>2]=c[g>>2]>>2;c[j>>2]=(c[j>>2]|0)+1}c[k>>2]=(c[e>>2]|
0)+852;c[c[k>>2]>>2]=c[j>>2];c[n>>2]=0;while(1){if((c[n>>2]|0)<0)break;c[
j>>2]=c[(c[k>>2]|0)+(c[n>>2]<<2)>>2];if((c[j>>2]|0)>1){r=c[(c[f
>>2]|0)+4>>2]|0;c[l>>2]=r;c[m>>2]=r;c[o>>2]=c[(c[f>>2]|0)+8+4>
x3e;2];if((c[o>>2]|0)<(c[m>>2]|0))c[m>>2]=c[o>>2];if((c[o>>2]|0)>(c[
l>>2]|0))c[l>>2]=c[o>>2];c[o>>2]=c[(c[f>>2]|0)+16+4>>2];if((c[o>
;>2]|0)<(c[m>>2]|0))c[m>>2]=c[o>>2];if((c[o>>2]|0)>(c[l>>2]|0))
c[l>>2]=c[o>>2];if((c[m>>2]>>8|0)<(c[(c[e>>2]|0)+20>>2]|0)?(c[l
>>2]>>8|0)>=(c[(c[e>>2]|0)+16>>2]|0):0){vp(c[f>>2]|0);c[f>>2]=(
c[f>>2]|0)+16;c[n>>2]=(c[n>>2]|0)+1;r=(c[j>>2]|0)-1|0;c[(c[k>>2]|0)+((c[n>
;>2]|0)-1<<2)>>2]=r;c[(c[k>>2]|0)+(c[n>>2]<<2)>>2]=r;continue}}
rp(c[e>>2]|0,c[c[f>>2]>>2]|0,c[(c[f>>2]|0)+4>>2]|0);c[n>>2]=(c[n>
;>2]|0)+-1;c[f>>2]=(c[f>>2]|0)+-16}i=p;return}function vp(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[(c[d>>2]|0)+32>>2]=c[(c[d>>2]|0)+16>>2];c[e>
x3e;2]=c[(c[d>>2]|0)+8>>2];a=((c[(c[d>>2]|0)+16>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c
[d>>2]|0)+24>>2]=a;c[f>>2]=a;a=((c[c[d>>2]>>2]|0)+(c[e>>2]|0)|0)/2|0
;c[(c[d>>2]|0)+8>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16>>2]=((c[f>>2]|0)+(
c[e>>2]|0)|0)/2|0;c[(c[d>>2]|0)+32+4>>2]=c[(c[d>>2]|0)+16+4>>2];c[e>>
;2]=c[(c[d>>2]|0)+8+4>>2];a=((c[(c[d>>2]|0)+16+4>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(
c[d>>2]|0)+24+4>>2]=a;c[f>>2]=a;a=((c[(c[d>>2]|0)+4>>2]|0)+(c[e>>2]|
0)|0)/2|0;c[(c[d>>2]|0)+8+4>>2]=a;c[e>>2]=a;c[(c[d>>2]|0)+16+4>>2]=((c[f>
x3e;2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function wp(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;h=f+8|0;g=f+4|0;k=f;c[j>>2]=a;c[h>>2]=b;c[g>>2]=d;c[k>>2]=e;xp(c[k>>
;2]|0,c[j>>2]|0,c[h>>2]|0,c[g>>2]|0);i=f;return 0}function xp(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;w=i;i=i+80|0;f=w+72|0;x=w+68|0;y=w+64|0;z=w+60|
0;h=w+56|0;s=w+52|0;r=w+48|0;v=w+44|0;j=w+40|0;n=w+36|0;m=w+32|0;q=w+28|0;k=w+24|0;o=w+20|0;l=w+16|0;p=w+12|0;g=w+8|0;t=w+4|0;u=
w;c[f>>2]=a;c[x>>2]=b;c[y>>2]=d;c[z>>2]=e;c[h>>2]=(c[f>>2]|0)+76;c[c
[h>>2]>>2]=c[c[z>>2]>>2]<<2;c[(c[h>>2]|0)+4>>2]=c[(c[z>
;>2]|0)+4>>2]<<2;c[(c[h>>2]|0)+8>>2]=c[c[y>>2]>>2]<<2
;c[(c[h>>2]|0)+8+4>>2]=c[(c[y>>2]|0)+4>>2]<<2;c[(c[h>>2]|0)+16>
x3e;2]=c[c[x>>2]>>2]<<2;c[(c[h>>2]|0)+16+4>>2]=c[(c[x>>2]|0)+4>
x3e;2]<<2;c[(c[h>>2]|0)+24>>2]=c[(c[f>>2]|0)+64>>2];c[(c[h>>2]|0)+24
+4>>2]=c[(c[f>>2]|0)+68>>2];a:while(1){z=c[(c[h>>2]|0)+4>>2]|0;c[r>>
2]=z;c[s>>2]=z;c[v>>2]=c[(c[h>>2]|0)+8+4>>2];if((c[v>>2]|0)<(c[s>>
;2]|0))c[s>>2]=c[v>>2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>
2];c[v>>2]=c[(c[h>>2]|0)+16+4>>2];if((c[v>>2]|0)<(c[s>>2]|0))c[s>>
;2]=c[v>>2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>2];c[v>>2]=
c[(c[h>>2]|0)+24+4>>2];if((c[v>>2]|0)<(c[s>>2]|0))c[s>>2]=c[v>>
2];if((c[v>>2]|0)>(c[r>>2]|0))c[r>>2]=c[v>>2];do if((c[s>>2]>>8
|0)<(c[(c[f>>2]|0)+20>>2]|0)?(c[r>>2]>>8|0)>=(c[(c[f>>2]|0)+16>
x3e;2]|0):0){c[j>>2]=(c[(c[h>>2]|0)+24>>2]|0)-(c[c[h>>2]>>2]|0);c[n>>
;2]=(c[(c[h>>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0);b=c[j>>2]|0;c[m>
x3e;2]=(c[j>>2]|0)<0?0-b|0:b;b=c[n>>2]|0;c[q>>2]=(c[n>>2]|0)<0?0-b|0:b;b=c[m
x3e;>2]|0;if((c[m>>2]|0)>(c[q>>2]|0))b=(b*236|0)+((c[q>>2]|0)*97|0)|0;else b=(b*97|0)+((
c[q>>2]|0)*236|0)|0;c[g>>2]=b>>8;if(((((((c[g>>2]|0)<=32767?(c[u>>2]=(c[g
>>2]|0)*42,c[k>>2]=(c[(c[h>>2]|0)+8>>2]|0)-(c[c[h>>2]>>2]|0),c[o>
;>2]=(c[(c[h>>2]|0)+8+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0),y=_(c[n>>2]|0,c[k
x3e;>2]|0)|0,y=(y-(_(c[j>>2]|0,c[o>>2]|0)|0)|0)<0,z=_(c[n>>2]|0,c[k>>2]|0)|0,z
=z-(_(c[j>>2]|0,c[o>>2]|0)|0)|0,c[t>>2]=y?0-z|0:z,(c[t>>2]|0)<=(c[u>>2]|0
)):0)?(c[l>>2]=(c[(c[h>>2]|0)+16>>2]|0)-(c[c[h>>2]>>2]|0),c[p>>2]=(c
[(c[h>>2]|0)+16+4>>2]|0)-(c[(c[h>>2]|0)+4>>2]|0),y=_(c[n>>2]|0,c[l>>
2]|0)|0,y=(y-(_(c[j>>2]|0,c[p>>2]|0)|0)|0)<0,z=_(c[n>>2]|0,c[l>>2]|0)|0,z=z-(_(c[j
x3e;>2]|0,c[p>>2]|0)|0)|0,c[t>>2]=y?0-z|0:z,(c[t>>2]|0)<=(c[u>>2]|0)):0)?(z=_(
c[n>>2]|0,c[o>>2]|0)|0,(z+(_(c[j>>2]|0,c[k>>2]|0)|0)|0)>=0):0)?(z=_(c[n>>
2]|0,c[p>>2]|0)|0,(z+(_(c[j>>2]|0,c[l>>2]|0)|0)|0)>=0):0)?(z=_(c[n>>2]|0,(c[(c[h>
;>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+8+4>>2]|0)|0)|0,(z+(_(c[j>>2]|0,(c[(c[h>>
;2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+8>>2]|0)|0)|0)|0)>=0):0)?(z=_(c[n>>2]|0,(c[(c[h>
;>2]|0)+24+4>>2]|0)-(c[(c[h>>2]|0)+16+4>>2]|0)|0)|0,(z+(_(c[j>>2]|0,(c[(c[h>
x3e;2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+16>>2]|0)|0)|0)|0)>=0):0)break;yp(c[h>>2]|0);c[h
>>2]=(c[h>>2]|0)+24;continue a}while(0);rp(c[f>>2]|0,c[c[h>>2]>>2]|0,c[(c[h>
;>2]|0)+4>>2]|0);if((c[h>>2]|0)==((c[f>>2]|0)+76|0))break;c[h>>2]=(c[h>>2
]|0)+-24}i=w;return}function yp(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;f=b+12|0;e=b+8|0;g=b+4|0;h=b;c[d>
;>2]=a;c[(c[d>>2]|0)+48>>2]=c[(c[d>>2]|0)+24>>2];c[g>>2]=c[(c[d>>
;2]|0)+8>>2];c[h>>2]=c[(c[d>>2]|0)+16>>2];a=((c[c[d>>2]>>2]|0)+(c[g
x3e;>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+8>>2]=a;a=((c[(c[d>>2]|0)+24>>2
]|0)+(c[h>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+40>>2]=a;c[g>>2]=((c[g>
x3e;2]|0)+(c[h>>2]|0)|0)/2|0;a=((c[f>>2]|0)+(c[g>>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>
;2]|0)+16>>2]=a;a=((c[e>>2]|0)+(c[g>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+32
x3e;>2]=a;c[(c[d>>2]|0)+24>>2]=((c[f>>2]|0)+(c[e>>2]|0)|0)/2|0;c[(c[d>>2]|
0)+48+4>>2]=c[(c[d>>2]|0)+24+4>>2];c[g>>2]=c[(c[d>>2]|0)+8+4>>2];c[h
>>2]=c[(c[d>>2]|0)+16+4>>2];a=((c[(c[d>>2]|0)+4>>2]|0)+(c[g>>2]|0)|0
)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+8+4>>2]=a;a=((c[(c[d>>2]|0)+24+4>>2]|0)+(c[h>
;>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+40+4>>2]=a;c[g>>2]=((c[g>>2]|0)+(c
[h>>2]|0)|0)/2|0;a=((c[f>>2]|0)+(c[g>>2]|0)|0)/2|0;c[f>>2]=a;c[(c[d>>2]|0)+16+
4>>2]=a;a=((c[e>>2]|0)+(c[g>>2]|0)|0)/2|0;c[e>>2]=a;c[(c[d>>2]|0)+32+4>
x3e;2]=a;c[(c[d>>2]|0)+24+4>>2]=((c[f>>2]|0)+(c[e>>2]|0)|0)/2|0;i=b;return}function zp(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;k=i;i=i+32|0;d=k+24|0;l=k+20|0;j=k+16|0;f=k+12|0;g=k+8|0;h=k+4|0;e=k;c[d>
;>2]=a;c[l>>2]=b;c[l>>2]=c[l>>2];if(!(c[(c[d>>2]|0)+52>>2]|0)){i=k;return
}c[(c[d>>2]|0)+1232>>2]=0;c[j>>2]=0;while(1){if((c[j>>2]|0)>=(c[(c[d>>2]|
0)+1424>>2]|0))break;c[f>>2]=c[(c[(c[d>>2]|0)+1420>>2]|0)+(c[j>>2]<<
2)>>2];c[g>>2]=0;c[h>>2]=0;while(1){if(!(c[f>>2]|0))break;if(c[g>>2]|0?(c[c[f
x3e;>2]>>2]|0)>(c[h>>2]|0):0)Ap(c[d>>2]|0,c[h>>2]|0,c[j>>2]|0,c[g>
;>2]<<9,(c[c[f>>2]>>2]|0)-(c[h>>2]|0)|0);c[g>>2]=(c[g>>2]|0)+(c
[(c[f>>2]|0)+4>>2]|0);c[e>>2]=(c[g>>2]<<9)-(c[(c[f>>2]|0)+8>>
;2]|0);if(c[e>>2]|0?(c[c[f>>2]>>2]|0)>=0:0)Ap(c[d>>2]|0,c[c[f>>2]>
x3e;2]|0,c[j>>2]|0,c[e>>2]|0,1);c[h>>2]=(c[c[f>>2]>>2]|0)+1;c[f>>2]=
c[(c[f>>2]|0)+12>>2]}if(c[g>>2]|0)Ap(c[d>>2]|0,c[h>>2]|0,c[j>>2]|0,c
[g>>2]<<9,(c[(c[d>>2]|0)+24>>2]|0)-(c[h>>2]|0)|0);c[j>>2]=(c[j>
x3e;2]|0)+1}if(!(c[(c[d>>2]|0)+1236>>2]|0)){i=k;return}if((c[(c[d>>2]|0)+1232>>2]|0)<
;=0){i=k;return}_a[c[(c[d>>2]|0)+1236>>2]&15](c[(c[d>>2]|0)+1244>>2]|0,c[(c[d>
x3e;2]|0)+1232>>2]|0,(c[d>>2]|0)+1040|0,c[(c[d>>2]|0)+1240>>2]|0);i=k;return}function Ap
(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;s=i;i=i+32|0;l=s+28|0;m=s+24|0;n=s+20|0;t=s+16
|0;o=s+12|0;r=s+8|0;p=s+4|0;q=s;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[t>>2]=j;c[o>>2
]=k;c[q>>2]=c[t>>2]>>9;if((c[q>>2]|0)<0)c[q>>2]=0-(c[q>>2]|0);k
=c[q>>2]|0;do if(c[(c[l>>2]|0)+980+16>>2]&2|0){c[q>>2]=k&511;k=c[q>>
2]|0;if((c[q>>2]|0)>256){c[q>>2]=512-k;break}if((k|0)==256)c[q>>2]=255}else if((k|0)>=256
)c[q>>2]=255;while(0);c[n>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);t=(c[m>
;>2]|0)+(c[(c[l>>2]|0)+8>>2]|0)|0;c[m>>2]=t;c[m>>2]=(c[m>>2]|0)>=32767
?32767:t;if((c[n>>2]|0)>=2147483647)c[n>>2]=2147483647;if(!(c[q>>2]|0)){i=s;return}c[p>
x3e;2]=c[(c[l>>2]|0)+1232>>2];c[r>>2]=(c[l>>2]|0)+1040+((c[p>>2]|0)*6|0)+-6;if
((((c[p>>2]|0)>0?(c[(c[l>>2]|0)+1244>>2]|0)==(c[n>>2]|0):0)?((b[c[r>>2]
x3e;>1]|0)+(e[(c[r>>2]|0)+2>>1]|0)|0)==(c[m>>2]|0):0)?(d[(c[r>>2]|0)+4>>0
]|0)==(c[q>>2]|0):0){b[(c[r>>2]|0)+2>>1]=(e[(c[r>>2]|0)+2>>1]|0)+(c[o>>
;2]|0);i=s;return}if((c[p>>2]|0)>=32?1:(c[(c[l>>2]|0)+1244>>2]|0)!=(c[n>>2]|0)){if((
c[p>>2]|0)>0?(c[(c[l>>2]|0)+1236>>2]|0)!=0:0)_a[c[(c[l>>2]|0)+1236>>2]&
;15](c[(c[l>>2]|0)+1244>>2]|0,c[p>>2]|0,(c[l>>2]|0)+1040|0,c[(c[l>>2]|0)+1240
x3e;>2]|0);c[(c[l>>2]|0)+1232>>2]=0;c[(c[l>>2]|0)+1244>>2]=c[n>>2];c[p>
;>2]=0;c[r>>2]=(c[l>>2]|0)+1040}else c[r>>2]=(c[r>>2]|0)+6;b[c[r>>2]>
;>1]=c[m>>2];b[(c[r>>2]|0)+2>>1]=c[o>>2];a[(c[r>>2]|0)+4>>0]=c[
q>>2];t=(c[l>>2]|0)+1232|0;c[t>>2]=(c[t>>2]|0)+1;i=s;return}function Bp(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]|0)+12>>2];Fb(c[e>>
;2]|0,c[d>>2]|0);c[d>>2]=0;i=b;return}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]=c[(c[e>>2]|0)+4>>2];Ua[c[(c[(c[(c[e>>2]|0)+20>>2]|0)+56>
;>2]|0)+8>>2]&31](c[(c[e>>2]|0)+60>>2]|0,c[(c[d>>2]|0)+172>>2]|0,c[(
c[d>>2]|0)+176>>2]|0);i=b;return 0}function Dp(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;k=i;
i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;if((c[h>
;>2]|0)==1)c[h>>2]=0;b=Ep(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,c[j>>2]|0,0)|0;i=
k;return b|0}function Ep(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;P=i;i=i+192|0;k=P+180|0;l=P+176|0;m=P+172|0;n=P+168|0;o=P+
164|0;p=P+160|0;t=P+156|0;B=P+152|0;r=P+136|0;H=P+128|0;u=P+124|0;v=P+120|0;I=P+116|0;D=P+112|0;q=P+108|0;A=P+104|0;y=P+100|0;G=
P+96|0;L=P+92|0;N=P+88|0;K=P+84|0;O=P+80|0;C=P+32|0;z=P+28|0;w=P+24|0;M=P+20|0;s=P+16|0;E=P+12|0;F=P+8|0;J=P+4|0;x=P;c[l>
x3e;2]=e;c[m>>2]=f;c[n>>2]=g;c[o>>2]=h;c[p>>2]=j;c[B>>2]=0;c[y>>2]=(
c[n>>2]|0)==3&1;c[G>>2]=(c[n>>2]|0)==4&1;do if((c[(c[m>>2]|0)+72>>2]|
0)==(c[(c[l>>2]|0)+24>>2]|0)){if((c[n>>2]|0)!=(c[p>>2]|0)){c[k>>2]=19;O=c[k>
;>2]|0;i=P;return O|0}c[B>>2]=(c[m>>2]|0)+108;if(c[o>>2]|0)Nb(c[B>>2]|0,c[c[o>
x3e;2]>>2]|0,c[(c[o>>2]|0)+4>>2]|0);_d(c[B>>2]|0,r);c[r>>2]=c[r>>2]
x26;-64;c[r+4>>2]=c[r+4>>2]&-64;c[r+8>>2]=(c[r+8>>2]|0)+63&-64;c[r+12>>
;2]=(c[r+12>>2]|0)+63&-64;if((c[r>>2]|0)<0?(c[r+8>>2]|0)>(2147483647+(c[r>>
;2]|0)|0):0){c[k>>2]=98;O=c[k>>2]|0;i=P;return O|0}c[H>>2]=(c[r+8>>2]|0)-(c[r>>
;2]|0)>>6;if((c[r+4>>2]|0)<0?(c[r+12>>2]|0)>(2147483647+(c[r+4>>2]|0)|0):0){c[
k>>2]=98;O=c[k>>2]|0;i=P;return O|0}c[u>>2]=(c[r+12>>2]|0)-(c[r+4>>2]|0)>
x3e;6;c[q>>2]=(c[m>>2]|0)+76;c[A>>2]=c[(c[l>>2]|0)+8>>2];c[I>>2]=c[H
>>2];c[v>>2]=c[u>>2];if(c[(c[(c[m>>2]|0)+156>>2]|0)+4>>2]&1|0){
Fb(c[A>>2]|0,c[(c[q>>2]|0)+12>>2]|0);c[(c[q>>2]|0)+12>>2]=0;f=(c[(c[m>>
;2]|0)+156>>2]|0)+4|0;c[f>>2]=c[f>>2]&-2}c[D>>2]=c[H>>2];if(c[y>>
;2]|0){c[H>>2]=(c[H>>2]|0)*3;c[D>>2]=(c[H>>2]|0)+3&-4}if(c[G>>2]|0)c[u>
;>2]=(c[u>>2]|0)*3;c[L>>2]=c[r>>2];c[N>>2]=c[r+4>>2];c[K>>2]=c[
r>>2]>>6;c[O>>2]=c[r+12>>2]>>6;if((c[H>>2]|0)>>>0>
;32767|(c[u>>2]|0)>>>0>32767){c[k>>2]=98;O=c[k>>2]|0;i=P;return O|0}a[(c[q>
;>2]|0)+18>>0]=2;b[(c[q>>2]|0)+16>>1]=256;c[(c[q>>2]|0)+4>>2]=c[H>
x3e;2];c[c[q>>2]>>2]=c[u>>2];c[(c[q>>2]|0)+8>>2]=c[D>>2];Nb(c[B>
;>2]|0,0-(c[L>>2]|0)|0,0-(c[N>>2]|0)|0);f=bc(c[A>>2]|0,_(c[D>>2]|0,c[u>>2
]|0)|0,t)|0;c[(c[q>>2]|0)+12>>2]=f;if(!(c[t>>2]|0)){f=(c[(c[m>>2]|0)+156>>2]|0
)+4|0;c[f>>2]=c[f>>2]|1;c[C>>2]=c[q>>2];c[C+4>>2]=c[B>>2];c[C+8>
;>2]=1;c[t>>2]=Ya[c[(c[l>>2]|0)+64>>2]&127](c[(c[l>>2]|0)+60>>2]|0,C
)|0;a:do if(c[y>>2]|0){c[z>>2]=c[(c[q>>2]|0)+12>>2];c[w>>2]=c[v>>2];
while(1){if((c[w>>2]|0)>>>0<=0)break a;c[s>>2]=(c[z>>2]|0)+(c[H>>2]|
0);c[M>>2]=c[I>>2];while(1){if((c[M>>2]|0)>>>0<=0)break;c[E>>2]=d[(c
[z>>2]|0)+((c[M>>2]|0)-1)>>0];a[(c[s>>2]|0)+-3>>0]=c[E>>2];a[(c[s>
;>2]|0)+-2>>0]=c[E>>2];a[(c[s>>2]|0)+-1>>0]=c[E>>2];c[s>>2]=(c[
s>>2]|0)+-3;c[M>>2]=(c[M>>2]|0)+-1}c[w>>2]=(c[w>>2]|0)+-1;c[z>>2]=(c
[z>>2]|0)+(c[D>>2]|0)}}while(0);b:do if(c[G>>2]|0){c[F>>2]=(c[(c[q>>2]|0)+12
x3e;>2]|0)+(_((c[u>>2]|0)-(c[v>>2]|0)|0,c[D>>2]|0)|0);c[J>>2]=c[(c[q>>2]|
0)+12>>2];c[x>>2]=c[v>>2];while(1){if((c[x>>2]|0)>>>0<=0)break b;Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);Ss(
c[J>>2]|0,c[F>>2]|0,c[D>>2]|0)|0;c[J>>2]=(c[J>>2]|0)+(c[D>>2]|0);c[F
>>2]=(c[F>>2]|0)+(c[D>>2]|0);c[x>>2]=(c[x>>2]|0)+-1}}while(0);Nb(c[B>>
;2]|0,c[L>>2]|0,c[N>>2]|0);if((c[K>>2]|0)>2147483647|(c[O>>2]|0)>2147483647){c
[k>>2]=23;O=c[k>>2]|0;i=P;return O|0}else{if(c[t>>2]|0)break;c[(c[m>>2]|0)+72>>
;2]=1651078259;c[(c[m>>2]|0)+100>>2]=c[K>>2];c[(c[m>>2]|0)+104>>2]=c[O>
x3e;2];break}}}else c[t>>2]=6;while(0);if((c[B>>2]|0)!=0&(c[o>>2]|0)!=0)Nb(c[B>>2]|
0,0-(c[c[o>>2]>>2]|0)|0,0-(c[(c[o>>2]|0)+4>>2]|0)|0);c[k>>2]=c[t>>2];
O=c[k>>2]|0;i=P;return O|0}function Fp(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;l=k+16
|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[l>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2
]=0;if((c[(c[f>>2]|0)+72>>2]|0)!=(c[(c[l>>2]|0)+24>>2]|0)){c[j>>2]=6;l=c[j>
;>2]|0;i=k;return l|0}if(c[g>>2]|0)Kb((c[f>>2]|0)+108|0,c[g>>2]|0);if(!(c[h>>2]|0)){
l=c[j>>2]|0;i=k;return l|0}Nb((c[f>>2]|0)+108|0,c[c[h>>2]>>2]|0,c[(c[h>>2]|0)+
4>>2]|0);l=c[j>>2]|0;i=k;return l|0}function Gp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;h=
g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[e>>2]=b;c[f>>2]=d;b=c[f>>2]|0;c[b>>2]=0;c[b+4>
;>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;if((c[(c[e>>2]|0)+72>>2]|0)!=(c[(c[h>>2]|
0)+24>>2]|0)){i=g;return}_d((c[e>>2]|0)+108|0,c[f>>2]|0);i=g;return}function Hp(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=Oa[c[(
c[(c[(c[h>>2]|0)+20>>2]|0)+56>>2]|0)+12>>2]&63](c[(c[h>>2]|0)+60>>
;2]|0,c[g>>2]|0,c[f>>2]|0)|0;i=e;return a|0}function Ip(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;j=i;i=i+32|0;m=j+16|0;g=j+12|0;l=j+8|0;k=j+4|0;h=j;c[m>>2]=b;c[g>>2]=d;c[l>>2]=e;c[k>
;>2]=f;c[h>>2]=Ep(c[m>>2]|0,c[g>>2]|0,c[l>>2]|0,c[k>>2]|0,3)|0;if(c[h>
;>2]|0){m=c[h>>2]|0;i=j;return m|0}a[(c[g>>2]|0)+76+18>>0]=5;m=c[h>>2]|0;i=j;return
m|0}function Jp(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;j=i;i=i+32|0;m=j+16|0;g=j+12|0;l=j+8|0;k=j+4|0;h=j
;c[m>>2]=b;c[g>>2]=d;c[l>>2]=e;c[k>>2]=f;c[h>>2]=Ep(c[m>>2]|0,c[g>
;>2]|0,c[l>>2]|0,c[k>>2]|0,4)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=j;return m|0}a[(c[g>
;>2]|0)+76+18>>0]=6;m=c[h>>2]|0;i=j;return m|0}function Kp(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[(c[e>>2]|
0)+32>>2]=c[g>>2];a=hc(c[g>>2]|0,4,0,c[f>>2]|0,0,h)|0;c[(c[e>>2]|0)+24>
x3e;2]=a;if((c[h>>2]|0)==0?(a=hc(c[g>>2]|0,4,0,c[f>>2]|0,0,h)|0,c[(c[e>>2]|0)+28>
x3e;2]=a,(c[h>>2]|0)==0):0){c[(c[e>>2]|0)+16>>2]=c[f>>2];c[(c[e>>2]|0)+12>
;>2]=-559038737;c[(c[e>>2]|0)+20>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+8>
;>2]=0;c[(c[e>>2]|0)+4>>2]=0;a=(c[e>>2]|0)+36|0;c[a>>2]=c[1094];c[a+4>>2]=
c[1095];c[a+8>>2]=c[1096];c[a+12>>2]=c[1097]}if(!(c[h>>2]|0)){a=c[h>>2]|0;i=j;return a|0
}Fb(c[g>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;a=c[h>>
2]|0;i=j;return a|0}function Lp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;e=g+8|0;d=g+4|0;f=g;c[b>>2]=a;c
[e>>2]=c[(c[b>>2]|0)+32>>2];c[f>>2]=c[c[b>>2]>>2];if(!(c[f>>
;2]|0)){i=g;return}a=bc(c[e>>2]|0,c[(c[b>>2]|0)+4>>2]|0,d)|0;c[c[b>>2]>>2]=a;if
(c[d>>2]|0){i=g;return}Ss(c[c[b>>2]>>2]|0,c[f>>2]|0,c[(c[b>>2]|0)+4>>
;2]|0)|0;Mp(c[b>>2]|0,c[f>>2]|0);c[(c[b>>2]|0)+8>>2]=c[(c[b>>2]|0)+4>>
;2];Fb(c[e>>2]|0,c[f>>2]|0);c[f>>2]=0;c[d>>2]=c[d>>2];i=g;return}function Mp(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;h=g+16|0;j=g+12|0;d=g+8|0;f=g+4|0;e=g;c[h>>2]=a;c[j>>
;2]=b;c[d>>2]=(c[c[h>>2]>>2]|0)-(c[j>>2]|0);c[f>>2]=c[(c[h>>2]|0)+24
>>2];c[e>>2]=(c[f>>2]|0)+(c[(c[h>>2]|0)+16>>2]<<2);while(1){if((c[f
x3e;>2]|0)>>>0>=(c[e>>2]|0)>>>0)break;if(c[c[f>>2]>>2]|0){
j=c[f>>2]|0;c[j>>2]=(c[j>>2]|0)+(c[d>>2]|0)}c[f>>2]=(c[f>>2]|0)+4}i=
g;return}function Np(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o
+20|0;j=o+16|0;k=o+12|0;l=o+8|0;n=o+4|0;m=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;if((
c[h>>2]|0)>=0?(c[h>>2]|0)<(c[(c[g>>2]|0)+16>>2]|0):0){if((c[k>>2]|0)
x3c;0){c[f>>2]=6;a=c[f>>2]|0;i=o;return a|0}do if(((c[(c[g>>2]|0)+4>>2]|0)+(c[k>>
;2]|0)|0)>>>0>(c[(c[g>>2]|0)+8>>2]|0)>>>0){c[n>>2]=c[(c[g>
x3e;2]|0)+8>>2];a=(c[j>>2]|0)-(c[c[g>>2]>>2]|0)|0;c[m>>2]=a;c[m>>2]=(
c[m>>2]|0)>>>0>=(c[(c[g>>2]|0)+8>>2]|0)>>>0?-1:a;while(1){if((c
[n>>2]|0)>>>0>=((c[(c[g>>2]|0)+4>>2]|0)+(c[k>>2]|0)|0)>>
x3e;0)break;c[n>>2]=(c[n>>2]|0)+(((c[n>>2]|0)>>>2)+1);c[n>>2]=(c[n>
x3e;2]|0)+1023&-1024}c[l>>2]=Op(c[g>>2]|0,c[n>>2]|0)|0;if(c[l>>2]|0){c[f>>
;2]=c[l>>2];a=c[f>>2]|0;i=o;return a|0}else{if((c[m>>2]|0)<0)break;c[j>>2]=(c[c[g
x3e;>2]>>2]|0)+(c[m>>2]|0);break}}while(0);c[(c[(c[g>>2]|0)+24>>2]|0)+(c[h>>
;2]<<2)>>2]=(c[c[g>>2]>>2]|0)+(c[(c[g>>2]|0)+4>>2]|0);c[(c[(c[g>
;>2]|0)+28>>2]|0)+(c[h>>2]<<2)>>2]=c[k>>2];Ss((c[c[g>>2]>
x3e;2]|0)+(c[(c[g>>2]|0)+4>>2]|0)|0,c[j>>2]|0,c[k>>2]|0)|0;a=(c[g>>2]|0)+4|0;c
[a>>2]=(c[a>>2]|0)+(c[k>>2]|0);c[f>>2]=0;a=c[f>>2]|0;i=o;return a|0}c[f>
x3e;2]=6;a=c[f>>2]|0;i=o;return a|0}function Op(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0
;e=k+16|0;f=k+12|0;h=k+8|0;j=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[h>>2]=c[(c[e>>2]|0)+32>
;>2];c[j>>2]=c[c[e>>2]>>2];b=bc(c[h>>2]|0,c[f>>2]|0,g)|0;c[c[e>>
;2]>>2]=b;b=c[j>>2]|0;if(c[g>>2]|0){c[c[e>>2]>>2]=b;c[d>>2]=c[g>
;>2];j=c[d>>2]|0;i=k;return j|0}if(b|0){Ss(c[c[e>>2]>>2]|0,c[j>>2]|0,c[(c[e>
x3e;2]|0)+8>>2]|0)|0;Mp(c[e>>2]|0,c[j>>2]|0);Fb(c[h>>2]|0,c[j>>2]|0);c[j>
x3e;2]=0}c[(c[e>>2]|0)+8>>2]=c[f>>2];c[d>>2]=0;j=c[d>>2]|0;i=k;return j|0}function
Pp(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+32>>
;2];if((c[(c[b>>2]|0)+12>>2]|0)!=-559038737){i=e;return}Fb(c[d>>2]|0,c[c[b>>2]>>
;2]|0);c[c[b>>2]>>2]=0;Fb(c[d>>2]|0,c[(c[b>>2]|0)+24>>2]|0);c[(c[b>>
2]|0)+24>>2]=0;Fb(c[d>>2]|0,c[(c[b>>2]|0)+28>>2]|0);c[(c[b>>2]|0)+28>>
;2]=0;c[(c[b>>2]|0)+12>>2]=0;i=e;return}function Qp(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;j=f+8|0;k=f+4|0;h=f;c[g>>2]=a;c[j>>2]=b;c[k>>2]=d;c[h>>2]=e;c[(c[
g>>2]|0)+12>>2]=0;c[(c[g>>2]|0)+4>>2]=c[j>>2];c[(c[g>>2]|0)+8>
x3e;2]=c[k>>2];c[c[g>>2]>>2]=c[j>>2];c[(c[g>>2]|0)+16>>2]=c[h>
x3e;2];b=(c[g>>2]|0)+20|0;d=4392;e=b+52|0;do{c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}while((b|0)<(e|0
));i=f;return}function Rp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return
}function Sp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Tp(c[d>>2]|0,c[(c[d>>2]|0)+8>>
;2]|0);i=b;return}function Tp(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+8|0;e=h+4|0;g=h;c[f>>2]=a;c[e>
;>2]=b;c[g>>2]=c[c[f>>2]>>2];while(1){if((c[g>>2]|0)>>>0>=(c[e
x3e;>2]|0)>>>0){e=12;break}if((((((d[c[g>>2]>>0]|0|0)!=32?(d[c[g>>2]>>
;0]|0|0)!=13:0)?(d[c[g>>2]>>0]|0|0)!=10:0)?(d[c[g>>2]>>0]|0|0)!=9:0)?(d[c[g>>2
]>>0]|0|0)!=12:0)?d[c[g>>2]>>0]|0|0:0){if((d[c[g>>2]>>0]|0|0)!=37){e=12;break}
Up(g,c[e>>2]|0)}c[g>>2]=(c[g>>2]|0)+1}if((e|0)==12){c[c[f>>2]>>2]=c[g>>
;2];i=h;return}}function Up(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;h=i;i=i+16|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=c[c[e>>2]>>2];while(1){if((c[g>>2]|0)>>>0>=(c[f>
;>2]|0)>>>0)break;if((d[c[g>>2]>>0]|0|0)==13)break;if((d[c[g>>2]>>0]|
0|0)==10)break;c[g>>2]=(c[g>>2]|0)+1}c[c[e>>2]>>2]=c[g>>2];i=h;return}function
Vp(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=c[c[e
x3e;>2]>>2];c[h>>2]=c[(c[e>>2]|0)+8>>2];c[g>>2]=0;Tp(f,c[h>>2]|
0);a:do if((c[f>>2]|0)>>>0<(c[h>>2]|0)>>>0){if((d[c[f>>2]>
x3e;0]|0|0)!=91?(d[c[f>>2]>>0]|0|0)!=93:0){if((d[c[f>>2]>>0]|0|0)==123){c[g>>2
]=Wp(f,c[h>>2]|0)|0;break}if((d[c[f>>2]>>0]|0|0)==40){c[g>>2]=Xp(f,c[h>>2]|0)|
0;break}a=c[f>>2]|0;if((d[c[f>>2]>>0]|0|0)==60){if((a+1|0)>>>0<(c[h>>
;2]|0)>>>0?(d[(c[f>>2]|0)+1>>0]|0|0)==60:0){c[f>>2]=(c[f>>2]|0)+1;c[f>
;>2]=(c[f>>2]|0)+1;break}c[g>>2]=Yp(f,c[h>>2]|0)|0;break}b=c[f>>2]|0;if((d[a>
x3e;0]|0|0)==62){c[f>>2]=b+1;if((c[f>>2]|0)>>>0<(c[h>>2]|0)>>>0
?(d[c[f>>2]>>0]|0|0)==62:0){c[f>>2]=(c[f>>2]|0)+1;break}c[g>>2]=3;break}if((d[
b>>0]|0|0)==47)c[f>>2]=(c[f>>2]|0)+1;while(1){if((c[f>>2]|0)>>>0>=(c
[h>>2]|0)>>>0)break a;if((d[c[f>>2]>>0]|0|0)==32)break a;if((d[c[f>>2]>
;>0]|0|0)==13)break a;if((d[c[f>>2]>>0]|0|0)==10)break a;if((d[c[f>>2]>>0]|0|0)==9)
break a;if((d[c[f>>2]>>0]|0|0)==12)break a;if(!(d[c[f>>2]>>0]|0))break a;if((d[c[f>
x3e;2]>>0]|0|0)==47)break a;if((d[c[f>>2]>>0]|0|0)==40)break a;if((d[c[f>>2]>>
0]|0|0)==41)break a;if((d[c[f>>2]>>0]|0|0)==60)break a;if((d[c[f>>2]>>0]|0|0)==62)break
a;if((d[c[f>>2]>>0]|0|0)==91)break a;if((d[c[f>>2]>>0]|0|0)==93)break a;if((d[c[f>
x3e;2]>>0]|0|0)==123)break a;if((d[c[f>>2]>>0]|0|0)==125)break a;if((d[c[f>>2]>>
;0]|0|0)==37)break a;c[f>>2]=(c[f>>2]|0)+1}}c[f>>2]=(c[f>>2]|0)+1}while(0);if((c[f>
x3e;2]|0)!=(c[c[e>>2]>>2]|0)){h=c[g>>2]|0;g=c[e>>2]|0;g=g+12|0;c[g>>2]=h;g=c[f
>>2]|0;h=c[e>>2]|0;c[h>>2]=g;i=j;return}c[g>>2]=3;h=c[g>>2]|0;g=c[e>>
;2]|0;g=g+12|0;c[g>>2]=h;g=c[f>>2]|0;h=c[e>>2]|0;c[h>>2]=g;i=j;return}function Wp(a,b){a
=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+16|0;f=l+12|0;g=l+8|0;h=l+4|0;j=l;c[e>>2]=a;c[f>>
;2]=b;c[h>>2]=0;c[j>>2]=0;c[g>>2]=c[c[e>>2]>>2];a:while(1){if(!((c[g>>
;2]|0)>>>0<(c[f>>2]|0)>>>0?(c[j>>2]|0)==0:0))break;switch(d[c[g>>
;2]>>0]|0|0){case 123:{c[h>>2]=(c[h>>2]|0)+1;break}case 125:{c[h>>2]=(c[h>>2]|
0)+-1;if(!(c[h>>2]|0)){k=6;break a}break}case 40:{c[j>>2]=Xp(g,c[f>>2]|0)|0;break}case 60:{c[j>
;>2]=Yp(g,c[f>>2]|0)|0;break}case 37:{Up(g,c[f>>2]|0);break}default:{}}c[g>>2]=(c[g>>
;2]|0)+1}if((k|0)==6)c[g>>2]=(c[g>>2]|0)+1;if(!(c[h>>2]|0)){b=c[g>>2]|0;k=c[e>>
;2]|0;c[k>>2]=b;k=c[j>>2]|0;i=l;return k|0}c[j>>2]=3;b=c[g>>2]|0;k=c[e>>2]|0;c
[k>>2]=b;k=c[j>>2]|0;i=l;return k|0}function Xp(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;n=i;i=i
+32|0;k=n+20|0;f=n+16|0;l=n+12|0;h=n+8|0;m=n+4|0;j=n;g=n+24|0;c[k>>2]=b;c[f>>2]=e;c[l>>2]=c[c[k>
;>2]>>2];c[h>>2]=0;c[m>>2]=3;a:while(1){if((c[l>>2]|0)>>>0>=(c[
f>>2]|0)>>>0){f=18;break}a[g>>0]=a[c[l>>2]>>0]|0;c[l>>2]=(c[l
x3e;>2]|0)+1;if((d[g>>0]|0|0)!=92){if((d[g>>0]|0|0)==40){c[h>>2]=(c[h>>2]|0)+1;continue
}if((d[g>>0]|0|0)!=41)continue;c[h>>2]=(c[h>>2]|0)+-1;if(!(c[h>>2]|0)){f=17;break}else continue
}if((c[l>>2]|0)==(c[f>>2]|0)){f=18;break}switch(d[c[l>>2]>>0]|0|0){case 41:case 40:case
92:case 102:case 98:case 116:case 114:case 110:{c[l>>2]=(c[l>>2]|0)+1;continue a}default:{}}c[j>>2
]=0;while(1){if((c[j>>2]|0)>>>0>=3)continue a;if((c[l>>2]|0)>>>0>=(c
[f>>2]|0)>>>0)continue a;if(48>(d[c[l>>2]>>0]|0|0))continue a;if((d[c[l>
x3e;2]>>0]|0|0)>55)continue a;c[l>>2]=(c[l>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+1
}}if((f|0)==17){c[m>>2]=0;e=c[l>>2]|0;l=c[k>>2]|0;c[l>>2]=e;m=c[m>>2]|0;i=n;return
m|0}else if((f|0)==18){e=c[l>>2]|0;l=c[k>>2]|0;c[l>>2]=e;m=c[m>>2]|0;i=n;return m|0}return
0}function Yp(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>
x3e;2]=b;c[g>>2]=c[c[e>>2]>>2];c[h>>2]=0;while(1){b=(c[g>>2]|0)+1|0;c[g>
x3e;2]=b;if(b>>>0>=(c[f>>2]|0)>>>0)break;Tp(g,c[f>>2]|0);if((c[g>>
;2]|0)>>>0>=(c[f>>2]|0)>>>0)break;if((d[c[g>>2]>>0]|0|0)>=
48?(d[c[g>>2]>>0]|0|0)<=57:0)continue;if((d[c[g>>2]>>0]|0|0)>=65?(d[c[g>
x3e;2]>>0]|0|0)<=70:0)continue;if((d[c[g>>2]>>0]|0|0)<97)break;if((d[c[g>>2]
x3e;>0]|0|0)>102)break}if((c[g>>2]|0)>>>0<(c[f>>2]|0)>>>0?(d[c[
g>>2]>>0]|0|0)!=62:0){c[h>>2]=3;g=c[g>>2]|0;b=c[e>>2]|0;c[b>>2]=g;b=
c[h>>2]|0;i=j;return b|0}c[g>>2]=(c[g>>2]|0)+1;g=c[g>>2]|0;b=c[e>>2]|0;c[b>
;>2]=g;b=c[h>>2]|0;i=j;return b|0}function Zp(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Sp(c[d>
;>2]|0);a=_p(c[d>>2]|0,c[(c[d>>2]|0)+8>>2]|0)|0;i=b;return a|0}function _p(a,b){a=a|0;b=b|0;var
e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;e=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[f>>2]=a;c[g>>2]=b;c[h>>
;2]=$p(c[f>>2]|0,c[g>>2]|0,10)|0;c[j>>2]=c[c[f>>2]>>2];if((c[j>>2]|0
)>>>0<(c[g>>2]|0)>>>0?(d[c[j>>2]>>0]|0|0)==35:0){c[c[f>>
;2]>>2]=(c[j>>2]|0)+1;c[e>>2]=$p(c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;j=
c[e>>2]|0;i=k;return j|0}c[e>>2]=c[h>>2];j=c[e>>2]|0;i=k;return j|0}function $p(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;q=i;i=i+32|0;g=q+20|0;h=q+16|0;j=q+12|0;k=q+8|0;n=q+4|0;m=q;o=q+25|
0;l=q+24|0;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[n>>2]=c[c[h>>2]>>2];c[m
x3e;>2]=0;a[o>>0]=0;if(((c[k>>2]|0)<2?1:(c[n>>2]|0)==(c[j>>2]|0))|(c[k>
x3e;2]|0)>36){c[g>>2]=0;p=c[g>>2]|0;i=q;return p|0}if(!((d[c[n>>2]>>0]|0)!=45?(d[c[
n>>2]>>0]|0)!=43:0))p=5;if((p|0)==5?(a[o>>0]=(d[c[n>>2]>>0]|0)==45,c[n>
x3e;2]=(c[n>>2]|0)+1,(c[n>>2]|0)==(c[j>>2]|0)):0){c[g>>2]=0;p=c[g>>2]|0;i=q;return
p|0}while(1){if((c[n>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;if((d[c[n>
x3e;2]>>0]|0)==32)break;if((d[c[n>>2]>>0]|0)==13)break;if((d[c[n>>2]>>0]|0)==10
)break;if((d[c[n>>2]>>0]|0)==9)break;if((d[c[n>>2]>>0]|0)==12)break;if(!(d[c[n>>
;2]>>0]|0))break;if((d[c[n>>2]>>0]|0)>=128)break;a[l>>0]=a[11579+(d[c[n>>
2]>>0]&127)>>0]|0;if((a[l>>0]|0)<0)break;if((a[l>>0]|0)>=(c[k>>
2]|0))break;p=_(c[m>>2]|0,c[k>>2]|0)|0;c[m>>2]=p+(a[l>>0]|0);c[n>>2]=(c[n>
;>2]|0)+1}if(a[o>>0]|0)c[m>>2]=0-(c[m>>2]|0);c[c[h>>2]>>2]=c[n>>
;2];c[g>>2]=c[m>>2];p=c[g>>2]|0;i=q;return p|0}function aq(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;Sp(c[f>>2]|0);b=bq(c[f>>2]|0,c[(c[f>>2]|
0)+8>>2]|0,c[e>>2]|0)|0;i=d;return b|0}function bq(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;s=i;i=i+48|0;g=s+28|0;h=s+24|0;j=s+20|0;k=s+16|0;p=s+12|0;o=s+8|0;m=s+4|0;n=s;q=s+33|0;l=s+32|0;c[h>>
;2]=b;c[j>>2]=e;c[k>>2]=f;c[p>>2]=c[c[h>>2]>>2];c[m>>2]=0;c[n>
x3e;2]=1;a[q>>0]=0;if((c[p>>2]|0)==(c[j>>2]|0)){c[g>>2]=0;r=c[g>>2]|0;i=s;return
r|0}if(!((d[c[p>>2]>>0]|0)!=45?(d[c[p>>2]>>0]|0)!=43:0))r=5;if((r|0)==5?(a[q>>
;0]=(d[c[p>>2]>>0]|0)==45,c[p>>2]=(c[p>>2]|0)+1,(c[p>>2]|0)==(c[j>>2
]|0)):0){c[g>>2]=0;r=c[g>>2]|0;i=s;return r|0}if((d[c[p>>2]>>0]|0)!=46)c[o>>2]=(
_p(p,c[j>>2]|0)|0)<<16;else c[o>>2]=0;a:do if((c[p>>2]|0)>>>0<(c[j
x3e;>2]|0)>>>0?(d[c[p>>2]>>0]|0)==46:0){c[p>>2]=(c[p>>2]|0)+1;while(
1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break a;if((d[c[p>>2]>
;>0]|0)==32)break a;if((d[c[p>>2]>>0]|0)==13)break a;if((d[c[p>>2]>>0]|0)==10)break
a;if((d[c[p>>2]>>0]|0)==9)break a;if((d[c[p>>2]>>0]|0)==12)break a;if(!(d[c[p>>
;2]>>0]|0))break a;if((d[c[p>>2]>>0]|0)>=128)break a;a[l>>0]=a[11579+(d[c[p>
x3e;2]>>0]&127)>>0]|0;if((a[l>>0]|0)<0)break a;if((a[l>>0]|0)>=10)break a
;if(!((c[o>>2]|0)==0&(c[k>>2]|0)>0)){if((c[n>>2]|0)<1e7){c[m>>2]=((c[m>
;>2]|0)*10|0)+(a[l>>0]|0);c[n>>2]=(c[n>>2]|0)*10}}else{c[k>>2]=(c[k>>2]|0
)+-1;c[m>>2]=((c[m>>2]|0)*10|0)+(a[l>>0]|0)}c[p>>2]=(c[p>>2]|0)+1}}while(0);do
if(((c[p>>2]|0)+1|0)>>>0<(c[j>>2]|0)>>>0){if((d[c[p>>2]>
x3e;0]|0)!=101?(d[c[p>>2]>>0]|0)!=69:0)break;c[p>>2]=(c[p>>2]|0)+1;r=_p(p,c[j>>
;2]|0)|0;c[k>>2]=(c[k>>2]|0)+r}while(0);while(1){if((c[k>>2]|0)<=0)break;c[o>>2]=(c
[o>>2]|0)*10;c[m>>2]=(c[m>>2]|0)*10;c[k>>2]=(c[k>>2]|0)+-1}while(1){if((c[k>
;>2]|0)>=0)break;c[o>>2]=(c[o>>2]|0)/10|0;c[n>>2]=(c[n>>2]|0)*10;c[k>>
;2]=(c[k>>2]|0)+1}if(c[m>>2]|0){r=Vb(c[m>>2]|0,c[n>>2]|0)|0;c[o>>2]=(c[o>
x3e;2]|0)+r}if(a[q>>0]|0)c[o>>2]=0-(c[o>>2]|0);c[c[h>>2]>>2]=c[p>>2];
c[g>>2]=c[o>>2];r=c[g>>2]|0;i=s;return r|0}function cq(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;q=i;i=i+32|0;j=q+20|0;k=q+16|0;l=q+12|0;m=q+8|0;n=q+24|0;p=q+4|0;o=q;c[j>>2]=b;c[k>
;>2]=e;c[l>>2]=f;c[m>>2]=g;a[n>>0]=h;c[p>>2]=0;Sp(c[j>>2]|0);c[o>>
;2]=c[c[j>>2]>>2];if((c[o>>2]|0)>>>0>=(c[(c[j>>2]|0)+8>>2]|
0)>>>0){g=c[p>>2]|0;i=q;return g|0}do if(a[n>>0]|0){if((d[c[o>>2]>>0]|0)==
60){c[o>>2]=(c[o>>2]|0)+1;break}c[p>>2]=3;g=c[p>>2]|0;i=q;return g|0}while(0);g=dq(o,c[(
c[j>>2]|0)+8>>2]|0,c[k>>2]|0,c[l>>2]|0)|0;c[c[m>>2]>>2]=g;if(a[n>
;>0]|0){if((c[o>>2]|0)>>>0<(c[(c[j>>2]|0)+8>>2]|0)>>>0?(d[
c[o>>2]>>0]|0)!=62:0){c[p>>2]=3;g=c[p>>2]|0;i=q;return g|0}c[o>>2]=(c[o>
x3e;2]|0)+1}c[c[j>>2]>>2]=c[o>>2];g=c[p>>2]|0;i=q;return g|0}function dq(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;r=i;i=i+48|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0;n=r+16|0;p=r+12|0
;q=r+8|0;o=r+4|0;m=r;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;c[p>>2]=0;c[q>
;>2]=0;c[o>>2]=1;c[l>>2]=c[l>>2]<<1;c[n>>2]=c[c[h>>2]>>
;2];if((c[l>>2]|0)>>>0>((c[j>>2]|0)-(c[n>>2]|0)|0)>>>0)c[l>
;>2]=(c[j>>2]|0)-(c[n>>2]|0);while(1){if((c[p>>2]|0)>>>0>=(c[l>>
;2]|0)>>>0)break;c[m>>2]=d[(c[n>>2]|0)+(c[p>>2]|0)>>0];if(!((c[m>>
;2]|0)==32|(c[m>>2]|0)==13|(c[m>>2]|0)==10|(c[m>>2]|0)==9|(c[m>>2]|0)==12|(c[m>>
;2]|0)==0)){if((c[m>>2]|0)>>>0>=128)break;c[m>>2]=a[11579+(c[m>>2]&127)
x3e;>0];if((c[m>>2]|0)>>>0>=16)break;c[o>>2]=c[o>>2]<<4|c[m>
;>2];if(c[o>>2]&256|0){e=c[o>>2]&255;g=c[q>>2]|0;c[q>>2]=g+1;a[(c[k>
x3e;2]|0)+g>>0]=e;c[o>>2]=1}}c[p>>2]=(c[p>>2]|0)+1}if((c[o>>2]|0)==1){n=c[n>
;>2]|0;o=c[p>>2]|0;o=n+o|0;p=c[h>>2]|0;c[p>>2]=o;q=c[q>>2]|0;i=r;return q|0}g=c[o
x3e;>2]<<4&255;o=c[q>>2]|0;c[q>>2]=o+1;a[(c[k>>2]|0)+o>>0]=g;n=c[n
x3e;>2]|0;o=c[p>>2]|0;o=n+o|0;p=c[h>>2]|0;c[p>>2]=o;q=c[q>>2]|0;i=r;return q|0}function
eq(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;Sp(c[h>>2]|0);a=fq(c[h>>2]|0,c[(c[h>>2]|0)+8>>2]|0,c[g>>2]|0,c[f
x3e;>2]|0)|0;i=e;return a|0}function fq(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;t=
i;i=i+32|0;q=t+24|0;k=t+20|0;l=t+16|0;m=t+12|0;s=t+8|0;r=t+4|0;j=t+31|0;o=t+30|0;n=t+28|0;p=t;c[q>>2]=e;c[k>>
;2]=f;c[l>>2]=g;c[m>>2]=h;c[s>>2]=c[c[q>>2]>>2];c[r>>2]=0;a:do if((c
[s>>2]|0)>>>0<(c[k>>2]|0)>>>0){a[j>>0]=a[c[s>>2]>
;>0]|0;a[o>>0]=0;if((d[j>>0]|0)!=91){if((d[j>>0]|0)==123)a[o>>0]=125}else a[o>
x3e;0]=93;if(a[o>>0]|0)c[s>>2]=(c[s>>2]|0)+1;while(1){if((c[s>>2]|0)>>>0
x3e;=(c[k>>2]|0)>>>0)break a;Tp(s,c[k>>2]|0);if((c[s>>2]|0)>>>0>
;=(c[k>>2]|0)>>>0)break a;j=c[s>>2]|0;if((d[c[s>>2]>>0]|0)==(d[o>>
;0]|0)){e=11;break}c[p>>2]=j;if(c[m>>2]|0?(c[r>>2]|0)>=(c[l>>2]|0):0)break a;e=(bq(
s,c[k>>2]|0,0)|0)>>16&65535;if(c[m>>2]|0)j=(c[m>>2]|0)+(c[r>>2]<<
;1)|0;else j=n;b[j>>1]=e;if((c[p>>2]|0)==(c[s>>2]|0)){e=17;break}c[r>>2]=(c[r>>
;2]|0)+1;if(!(a[o>>0]|0))break a}if((e|0)==11){c[s>>2]=j+1;break}else if((e|0)==17){c[r>>2]=-1;break
}}while(0);c[c[q>>2]>>2]=c[s>>2];i=t;return c[r>>2]|0}function gq(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>
x3e;2]=d;c[g>>2]=e;Sp(c[k>>2]|0);d=hq(c[k>>2]|0,c[(c[k>>2]|0)+8>>2]|0,c[j>
;>2]|0,c[h>>2]|0,c[g>>2]|0)|0;i=f;return d|0}function hq(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;u=i;i=i+48|0;r=u+32|0;k=u+28|0;l=u+24|0;m=u+20|0;n=u+16|0;t=u+12|0;s=u+8|0;j=u+37
|0;p=u+36|0;o=u+4|0;q=u;c[r>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[t
x3e;>2]=c[c[r>>2]>>2];c[s>>2]=0;a:do if((c[t>>2]|0)>>>0<(c[k>
;>2]|0)>>>0){a[j>>0]=a[c[t>>2]>>0]|0;a[p>>0]=0;if((d[j>>0]|
0)!=91){if((d[j>>0]|0)==123)a[p>>0]=125}else a[p>>0]=93;if(a[p>>0]|0)c[t>>2]=(
c[t>>2]|0)+1;while(1){if((c[t>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break
a;Tp(t,c[k>>2]|0);if((c[t>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break a;
j=c[t>>2]|0;if((d[c[t>>2]>>0]|0)==(d[p>>0]|0)){b=11;break}c[q>>2]=j;if(c[m>
;>2]|0?(c[s>>2]|0)>=(c[l>>2]|0):0)break a;b=bq(t,c[k>>2]|0,c[n>>2]|0)|0;if(c[m
>>2]|0)j=(c[m>>2]|0)+(c[s>>2]<<2)|0;else j=o;c[j>>2]=b;if((c[q>>2]|0
)==(c[t>>2]|0)){b=17;break}c[s>>2]=(c[s>>2]|0)+1;if(!(a[p>>0]|0))break a}if((b|0)==11){c
[t>>2]=j+1;break}else if((b|0)==17){c[s>>2]=-1;break}}while(0);c[c[r>>2]>>2]=c[t>
x3e;2];i=u;return c[s>>2]|0}function iq(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;e=k+16|0;f=k+12|0;g=
k+8|0;j=k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;c[(c[f>>2]|0)+8>>2]=0;c[c[f>>2]>>
;2]=0;c[(c[f>>2]|0)+4>>2]=0;Sp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];c[j
x3e;>2]=c[(c[e>>2]|0)+8>>2];if((c[g>>2]|0)>>>0>=(c[j>>2]|0)>
;>>0){i=k;return}a:do switch(d[c[g>>2]>>0]|0|0){case 40:{c[(c[f>>2]|0)+8>>2]=2
;c[c[f>>2]>>2]=c[g>>2];if(!(Xp(g,c[j>>2]|0)|0))c[(c[f>>2]|0)+4>>2]=c
[g>>2];break}case 123:{c[(c[f>>2]|0)+8>>2]=3;c[c[f>>2]>>2]=c[g>>2];if
(!(Wp(g,c[j>>2]|0)|0))c[(c[f>>2]|0)+4>>2]=c[g>>2];break}case 91:{c[(c[f>>2]|0)+
8>>2]=3;c[h>>2]=1;b=c[g>>2]|0;c[g>>2]=b+1;c[c[f>>2]>>2]=b;c[c[e>
;>2]>>2]=c[g>>2];Sp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];while(1){if
((c[g>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break a;if(!((c[(c[e>>2]|0)+12
>>2]|0)!=0^1))break a;if((d[c[g>>2]>>0]|0|0)!=91){if((d[c[g>>2]>>0]|0|0)==93?(
c[h>>2]=(c[h>>2]|0)+-1,(c[h>>2]|0)<=0):0)break}else c[h>>2]=(c[h>>2]|0)+1
;c[c[e>>2]>>2]=c[g>>2];Vp(c[e>>2]|0);Sp(c[e>>2]|0);c[g>>2]=c[c[e>
;>2]>>2]}b=(c[g>>2]|0)+1|0;c[g>>2]=b;c[(c[f>>2]|0)+4>>2]=b;break}default:{
c[c[f>>2]>>2]=c[g>>2];c[(c[f>>2]|0)+8>>2]=(d[c[g>>2]>>0]|0
|0)==47?4:1;Vp(c[e>>2]|0);c[g>>2]=c[c[e>>2]>>2];if(!(c[(c[e>>2]|0)+12>>
;2]|0))c[(c[f>>2]|0)+4>>2]=c[g>>2]}}while(0);if(!(c[(c[f>>2]|0)+4>>2]|0)){c[c[
f>>2]>>2]=0;c[(c[f>>2]|0)+8>>2]=0}c[c[e>>2]>>2]=c[g>>2];i=
k;return}function jq(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;q=i;i=i+64|0;f=q+52|0;g=q+
48|0;h=q+44|0;j=q+40|0;m=q+28|0;n=q+24|0;o=q+20|0;k=q+16|0;l=q+12|0;p=q;c[f>>2]=a;c[g>>2]=b;c[h>>2
]=d;c[j>>2]=e;c[c[j>>2]>>2]=-1;iq(c[f>>2]|0,m);if((c[m+8>>2]|0)!=3){i=q;return
}c[n>>2]=c[c[f>>2]>>2];c[o>>2]=c[(c[f>>2]|0)+8>>2];c[k>>2]=
c[g>>2];c[l>>2]=(c[k>>2]|0)+((c[h>>2]|0)*12|0);c[c[f>>2]>>2]=(c[m>
;>2]|0)+1;c[(c[f>>2]|0)+8>>2]=(c[m+4>>2]|0)+-1;while(1){if((c[c[f>>2]>>2]|
0)>>>0>=(c[(c[f>>2]|0)+8>>2]|0)>>>0)break;iq(c[f>>2]|0,p);if(!(
c[p+8>>2]|0))break;if(c[g>>2]|0?(c[k>>2]|0)>>>0<(c[l>>2]|0)>>
;>0:0){b=c[k>>2]|0;c[b>>2]=c[p>>2];c[b+4>>2]=c[p+4>>2];c[b+8>>2
]=c[p+8>>2]}c[k>>2]=(c[k>>2]|0)+12}c[c[j>>2]>>2]=((c[k>>2]|0)-(c[g
x3e;>2]|0)|0)/12|0;c[c[f>>2]>>2]=c[n>>2];c[(c[f>>2]|0)+8>>2]=c[o>>
;2];i=q;return}function kq(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;H=i;i=i+128|0;k=H+112|0;l=H+108|0;m=H+104|0;n=H+100|0;o=H+96|0;D=H+84|0;r=H+80|0;v=H+76|
0;q=H+72|0;t=H+68|0;s=H+64|0;E=H+52|0;x=H+48|0;y=H+44|0;z=H+40|0;F=H+36|0;B=H+32|0;w=H+28|0;u=H+24|0;C=H+8|0;p=H+4|0;A=H;c[k>
;>2]=e;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;iq(c[k>>2]|0,D);a:do if(c[
D+8>>2]|0){c[q>>2]=1;c[t>>2]=0;c[r>>2]=c[D>>2];c[v>>2]=c[D+4>
x3e;2];if((c[(c[l>>2]|0)+8>>2]|0)==7){c[x>>2]=c[c[k>>2]>>2];c[y>>2]=
c[(c[k>>2]|0)+8>>2];c[c[k>>2]>>2]=(c[D>>2]|0)+1;c[(c[k>>2]|0)+8>
;>2]=(c[D+4>>2]|0)+-1;iq(c[k>>2]|0,E);c[c[k>>2]>>2]=c[x>>2];c[(c[k>
x3e;2]|0)+8>>2]=c[y>>2];if((c[E+8>>2]|0)==3)G=5}else if((c[D+8>>2]|0)==3)G=5;if((G|0)==5
){if(!(c[n>>2]|0))break;c[q>>2]=c[n>>2];c[t>>2]=1;c[r>>2]=(c[r>>2]|0
)+1;c[v>>2]=(c[v>>2]|0)+-1}b:while(1){if((c[q>>2]|0)>>>0<=0){G=32;break}c[z>
;>2]=(c[(c[m>>2]|0)+(c[t>>2]<<2)>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0
);Tp(r,c[v>>2]|0);switch(c[(c[l>>2]|0)+8>>2]|0){case 1:{c[F>>2]=lq(r,c[v>>2]|0
)|0;G=13;break}case 3:{c[F>>2]=bq(r,c[v>>2]|0,0)|0;G=13;break}case 4:{c[F>>2]=bq(r,c[v>>
2]|0,3)|0;G=13;break}case 2:{c[F>>2]=_p(r,c[v>>2]|0)|0;G=13;break}case 6:case 5:{c[w>>2]=c[(c[k>
;>2]|0)+16>>2];c[u>>2]=(c[v>>2]|0)-(c[r>>2]|0);if((c[r>>2]|0)>>
x3e;0<(c[v>>2]|0)>>>0){if((c[D+8>>2]|0)==4){c[u>>2]=(c[u>>2]|0)+-1;c
[r>>2]=(c[r>>2]|0)+1}else{if((c[D+8>>2]|0)!=2){G=23;break b}c[r>>2]=(c[r>>2]|0
)+1;c[u>>2]=(c[u>>2]|0)-2}if(c[c[z>>2]>>2]|0){Fb(c[w>>2]|0,c[c[z>>2]
x3e;>2]|0);c[c[z>>2]>>2]=0;c[c[z>>2]>>2]=0}c[B>>2]=bc(c[w>>2]|0
,(c[u>>2]|0)+1|0,s)|0;if(c[s>>2]|0){G=33;break b}Ss(c[B>>2]|0,c[r>>2]|0,c[u>>2
]|0)|0;a[(c[B>>2]|0)+(c[u>>2]|0)>>0]=0;c[c[z>>2]>>2]=c[B>>2]}break}case
7:{c[p>>2]=c[z>>2];c[A>>2]=hq(r,c[v>>2]|0,4,C,0)|0;if((c[A>>2]|0)<0){G=29
;break b}E=Tb(c[C>>2]|0)|0;c[c[p>>2]>>2]=E;E=Tb(c[C+4>>2]|0)|0;c[(c[p>>2]|0)+4
>>2]=E;E=Tb(c[C+8>>2]|0)|0;c[(c[p>>2]|0)+8>>2]=E;E=Tb(c[C+12>>2]|0)|0;c[(c[p
x3e;>2]|0)+12>>2]=E;break}default:break a}c:do if((G|0)==13){G=0;switch(d[(c[l>>2]|0)+20>>0]|
0|0){case 1:{a[c[z>>2]>>0]=c[F>>2];break c}case 2:{b[c[z>>2]>>1]=c[F>>
;2];break c}case 4:{c[c[z>>2]>>2]=c[F>>2];break c}default:{c[c[z>>2]>>2]=c[F
x3e;>2];break c}}}while(0);c[q>>2]=(c[q>>2]|0)+-1;c[t>>2]=(c[t>>2]|0)+1}if((G|0)==23
){c[s>>2]=3;G=c[s>>2]|0;i=H;return G|0}else if((G|0)==29){c[s>>2]=3;G=c[s>>2]|0;i=H;return
G|0}else if((G|0)==32){c[o>>2]=c[o>>2];c[s>>2]=0;G=c[s>>2]|0;i=H;return G|0}else if((G|
0)==33){G=c[s>>2]|0;i=H;return G|0}}while(0);c[s>>2]=3;G=c[s>>2]|0;i=H;return G|0}function lq(b,e){
b=b|0;e=e|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+16|0;f=l+8|0;g=l+4|0;h=l;j=l+12|0;c[f>>2]=b;c[g>>2]=e;c[h>
;>2]=c[c[f>>2]>>2];a[j>>0]=0;if((((((c[h>>2]|0)+3|0)>>>0<(c[g
x3e;>2]|0)>>>0?(d[c[h>>2]>>0]|0|0)==116:0)?(d[(c[h>>2]|0)+1>>0]|0|0)==
114:0)?(d[(c[h>>2]|0)+2>>0]|0|0)==117:0)?(d[(c[h>>2]|0)+3>>0]|0|0)==101:0){a[j>>
;0]=1;c[h>>2]=(c[h>>2]|0)+5}else k=7;if(((((((k|0)==7?((c[h>>2]|0)+4|0)>>>0<(c
[g>>2]|0)>>>0:0)?(d[c[h>>2]>>0]|0|0)==102:0)?(d[(c[h>>2]|0)+1>>
0]|0|0)==97:0)?(d[(c[h>>2]|0)+2>>0]|0|0)==108:0)?(d[(c[h>>2]|0)+3>>0]|0|0)==115:0)?(d[(c
[h>>2]|0)+4>>0]|0|0)==101:0){a[j>>0]=0;c[h>>2]=(c[h>>2]|0)+6}c[c[f>>
2]>>2]=c[h>>2];i=l;return d[j>>0]|0|0}function mq(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;v=i;i=i+464|0;j=v+456|0;k=v+452|0;l=v+448|0;m=v+444|0;n=v+440|0;o=v+56|0;u=v+52
|0;r=v+48|0;p=v+44|0;s=v+40|0;t=v+36|0;q=v;c[j>>2]=b;c[k>>2]=e;c[l>>2]=f;c[m>>2]=g;c[n
x3e;>2]=h;c[p>>2]=0;e=q;g=c[k>>2]|0;f=e+36|0;do{c[e>>2]=c[g>>2];e=e+4|0;g=g+4|0}while
((e|0)<(f|0));c[q+8>>2]=2;if(!((c[(c[k>>2]|0)+8>>2]|0)!=9?(c[(c[k>>2]|0)+8>>
;2]|0)!=7:0))c[q+8>>2]=3;jq(c[j>>2]|0,o,32,r);if((c[r>>2]|0)<0){c[p>>2]=162;u=c[p
x3e;>2]|0;i=v;return u|0}if((c[r>>2]|0)>>>0>(c[(c[k>>2]|0)+24>>2]|0)>
;>>0)c[r>>2]=c[(c[k>>2]|0)+24>>2];c[s>>2]=c[c[j>>2]>>2];c[
t>>2]=c[(c[j>>2]|0)+8>>2];if((c[(c[k>>2]|0)+8>>2]|0)!=7?c[(c[k>>2]|0
)+28>>2]|0:0)a[(c[c[l>>2]>>2]|0)+(c[(c[k>>2]|0)+28>>2]|0)>>0]=c[r>
;>2];c[u>>2]=o;while(1){if((c[r>>2]|0)<=0)break;c[c[j>>2]>>2]=c[c[u>>
;2]>>2];c[(c[j>>2]|0)+8>>2]=c[(c[u>>2]|0)+4>>2];kq(c[j>>2]|0,q,c[l
x3e;>2]|0,c[m>>2]|0,0)|0;o=q+16|0;c[o>>2]=(c[o>>2]|0)+(d[q+20>>0]|0);c[r>>
;2]=(c[r>>2]|0)+-1;c[u>>2]=(c[u>>2]|0)+12}c[n>>2]=c[n>>2];c[c[j>>2]
x3e;>2]=c[s>>2];c[(c[j>>2]|0)+8>>2]=c[t>>2];u=c[p>>2]|0;i=v;return u|0}function
nq(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;h=n+16|0;o=n+12|0;j=n+8|0;k=n+4|0;l=n+
20|0;m=n;c[h>>2]=b;c[o>>2]=d;c[j>>2]=e;c[k>>2]=f;a[l>>0]=g;c[(c[h>>2
]|0)+64>>2]=0;a[(c[h>>2]|0)+68>>0]=1;c[(c[h>>2]|0)+4>>2]=c[o>>2];c[(
c[h>>2]|0)+8>>2]=c[k>>2];c[c[h>>2]>>2]=c[(c[o>>2]|0)+100>>
2];if(c[k>>2]|0?(c[m>>2]=c[c[(c[k>>2]|0)+156>>2]>>2],c[(c[h>>2]|0)+12
>>2]=c[m>>2],c[(c[h>>2]|0)+16>>2]=(c[m>>2]|0)+20,c[(c[h>>2]|0)+20>
;>2]=(c[m>>2]|0)+56,dc(c[m>>2]|0),c[(c[h>>2]|0)+76>>2]=c[(c[j>>2]|0)+40
x3e;>2],c[(c[h>>2]|0)+72>>2]=0,a[l>>0]|0):0)c[(c[h>>2]|0)+72>>2]=c[(c[(c[
k>>2]|0)+156>>2]|0)+36>>2];c[(c[h>>2]|0)+24>>2]=0;c[(c[h>>2]|0)+28
x3e;>2]=0;c[(c[h>>2]|0)+32>>2]=0;c[(c[h>>2]|0)+32+4>>2]=0;c[(c[h>>2]|0)+40
>>2]=0;c[(c[h>>2]|0)+40+4>>2]=0;o=(c[h>>2]|0)+80|0;c[o>>2]=c[1111];c[o+4>
x3e;2]=c[1112];c[o+8>>2]=c[1113];c[o+12>>2]=c[1114];c[o+16>>2]=c[1115];c[o+20>>2]=c[1116
];c[o+24>>2]=c[1117];c[o+28>>2]=c[1118];i=n;return}function oq(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0
;d=e;c[b>>2]=a;c[d>>2]=c[(c[b>>2]|0)+8>>2];if(!(c[d>>2]|0)){i=e;return}d=(c[d
x3e;>2]|0)+108|0;a=c[(c[b>>2]|0)+16>>2]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4
>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>
;>2];i=e;return}function pq(a,d){a=a|0;d=d|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]=
d;if(!(c[f>>2]|0)){d=0;i=g;return d|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20+2>>1]|0)+(b[(c[(
c[e>>2]|0)+12>>2]|0)+56+2>>1]|0)+(c[f>>2]|0)|0)>>>0<=(c[(c[(c[e>
;>2]|0)+12>>2]|0)+4>>2]|0)>>>0){d=0;i=g;return d|0}d=kc(c[(c[e>>2]|0)+12>
x3e;2]|0,c[f>>2]|0,0)|0;i=g;return d|0}function qq(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;p=i;i=i+32|0;q=p+20|0;j=p+16|0;k=p+12|0;l=p+24|0;n=p+8|0;o=p+4|0;m=p;c[q>>2]=e;c[j>>2]=f;c[k>>2]=
g;a[l>>0]=h;c[n>>2]=c[(c[q>>2]|0)+20>>2];if(!(a[(c[q>>2]|0)+68>>0]|0
)){q=c[n>>2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}c[o>
;>2]=(c[(c[n>>2]|0)+4>>2]|0)+(b[(c[n>>2]|0)+2>>1]<<3);c[m>>2]=(
c[(c[n>>2]|0)+8>>2]|0)+(b[(c[n>>2]|0)+2>>1]|0);q=(Tb(c[j>>2]|0)|0)>>
16;c[c[o>>2]>>2]=q;q=(Tb(c[k>>2]|0)|0)>>16;c[(c[o>>2]|0)+4>>2]=q;a[c
[m>>2]>>0]=d[l>>0]|0?1:2;q=c[n>>2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16
x3e;>16;b[q>>1]=g;i=p;return}function rq(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;e=j+12|0;f
=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=pq(c[e>>2]|0,1)|0;if(
c[h>>2]|0){d=c[h>>2]|0;i=j;return d|0}qq(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0,1);d=c[
h>>2]|0;i=j;return d|0}function sq(d){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[e>
;>2]=d;c[h>>2]=c[(c[e>>2]|0)+20>>2];if(!(c[h>>2]|0)){c[f>>2]=3;h=c[f>
;>2]|0;i=j;return h|0}if(!(a[(c[e>>2]|0)+68>>0]|0)){h=c[h>>2]|0;b[h>>1]=(b[h>
x3e;1]|0)+1<<16>>16;c[f>>2]=0;h=c[f>>2]|0;i=j;return h|0}if(((b[(c[(c[e>>2]|0)+
12>>2]|0)+20>>1]|0)+(b[(c[(c[e>>2]|0)+12>>2]|0)+56>>1]|0)+1|0)>>>
;0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+8>>2]|0)>>>0)e=0;else e=kc(c[(c[e>>2
]|0)+12>>2]|0,0,1)|0;c[g>>2]=e;if(!(c[g>>2]|0)){if((b[c[h>>2]>>1]|0)>0)b[(
c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>>1]|0)-1<<1)>>1]=(b[(c[h>
x3e;2]|0)+2>>1]|0)-1;h=c[h>>2]|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16}c[f
x3e;>2]=c[g>>2];h=c[f>>2]|0;i=j;return h|0}function tq(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;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=3;if((c
[(c[e>>2]|0)+64>>2]|0)==3){c[h>>2]=0;d=c[h>>2]|0;i=j;return d|0}c[(c[e>>2]|0)+
64>>2]=3;c[h>>2]=sq(c[e>>2]|0)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=j;return d|0}c[h
x3e;>2]=rq(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0)|0;d=c[h>>2]|0;i=j;return d|0}function uq(
a){a=a|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;l=k+20|0;j=k+16|0;h=k+12|0;f=k+8|0;g=k+4|0;e=k;c[l>>2]=a;c[j>
;>2]=c[(c[l>>2]|0)+20>>2];if(!(c[j>>2]|0)){i=k;return}if((b[c[j>>2]>>1]|0
)<=1)a=0;else a=(b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>1]|0)-2<<1)>
;>1]|0)+1|0;c[h>>2]=a;if((((b[(c[j>>2]|0)+2>>1]|0)>1?(c[f>>2]=(c[(c[j>>
;2]|0)+4>>2]|0)+(c[h>>2]<<3),c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(b[(c[j
>>2]|0)+2>>1]<<3)+-8,c[e>>2]=(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>
x3e;2]|0)+2>>1]|0)+-1,(c[c[f>>2]>>2]|0)==(c[c[g>>2]>>2]|0)):0)?(c[(c[f>
x3e;2]|0)+4>>2]|0)==(c[(c[g>>2]|0)+4>>2]|0):0)?(d[c[e>>2]>>0]|0)==1:0){l=(c[j
x3e;>2]|0)+2|0;b[l>>1]=(b[l>>1]|0)+-1<<16>>16}if((b[c[j>>2]>>1]|
0)<=0){i=k;return}a=c[j>>2]|0;if((c[h>>2]|0)==((b[(c[j>>2]|0)+2>>1]|0)-1|0)){b[a>
;>1]=(b[a>>1]|0)+-1<<16>>16;l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>>1]|
0)+-1<<16>>16;i=k;return}else{b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>
;1]|0)-1<<1)>>1]=(b[a+2>>1]|0)-1;i=k;return}}function vq(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;x=i;i=i+64|0;m=x+44|0;n=x+40|0;o=x+36
|0;p=x+32|0;q=x+28|0;r=x+24|0;s=x+20|0;t=x+48|0;u=x+16|0;v=x+12|0;w=x+8|0;z=x+4|0;y=x;c[n>>2]=b;c[o>>2]=d;c[
p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[s>>2]=h;a[t>>0]=j;c[u>>2]=k;c[v>
x3e;2]=l;Ns(c[n>>2]|0,0,1500)|0;c[w>>2]=0;c[z>>2]=c[(c[o>>2]|0)+96>>2];c[y>
;>2]=Vd(c[z>>2]|0,71003)|0;c[w>>2]=c[y>>2];if(c[w>>2]|0){c[(c[n>>2]|0)+1348
>>2]=c[w>>2];nq(c[n>>2]|0,c[o>>2]|0,c[p>>2]|0,c[q>>2]|0,a[t>>
;0]|0);c[(c[n>>2]|0)+1352>>2]=c[(c[o>>2]|0)+16>>2];c[(c[n>>2]|0)+1356>>
;2]=c[r>>2];c[(c[n>>2]|0)+1468>>2]=c[u>>2];c[(c[n>>2]|0)+1464>>2]=c[
s>>2];c[(c[n>>2]|0)+1472>>2]=c[v>>2];z=(c[n>>2]|0)+1476|0;c[z>>2]=c[
1119];c[z+4>>2]=c[1120];c[z+8>>2]=c[1121];c[m>>2]=0;z=c[m>>2]|0;i=x;return z|0}else{c[m
x3e;>2]=7;z=c[m>>2]|0;i=x;return z|0}return 0}function wq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=
a;oq(c[d>>2]|0);i=b;return}function xq(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;Y=i;i=
i+176|0;k=Y+156|0;l=Y+152|0;h=Y+148|0;j=Y+144|0;v=Y+140|0;W=Y+136|0;C=Y+132|0;F=Y+128|0;s=Y+124|0;U=Y+120|0;V=Y+116|0;L=Y+112|0;
M=Y+108|0;D=Y+104|0;R=Y+100|0;E=Y+160|0;N=Y+96|0;w=Y+92|0;Q=Y+88|0;K=Y+84|0;S=Y+80|0;O=Y+76|0;n=Y+72|0;x=Y+68|0;o=Y+64|0;J=Y+60|
0;H=Y+56|0;G=Y+52|0;t=Y+48|0;T=Y+44|0;P=Y+40|0;y=Y+36|0;p=Y+32|0;z=Y+28|0;q=Y+24|0;A=Y+20|0;r=Y+16|0;m=Y+12|0;I=Y+8|0;B=Y+4|0;u=
Y;c[l>>2]=e;c[h>>2]=f;c[j>>2]=g;c[s>>2]=c[l>>2];c[D>>2]=0;c[R>
x3e;2]=0;c[N>>2]=N^l^h;e=(c[N>>2]^c[N>>2]>>10^c[N>>2]>>20)&65535
;c[N>>2]=e;c[N>>2]=(c[N>>2]|0)==0?29572:e;c[(c[l>>2]|0)+1136>>2]=(c[l>>
;2]|0)+112;c[(c[l>>2]|0)+1344>>2]=(c[l>>2]|0)+1140;c[W>>2]=(c[l>>2]|0)+1140;c[(
c[s>>2]|0)+64>>2]=0;c[w>>2]=c[(c[s>>2]|0)+72>>2];if((c[(c[l>>2]|0)+1492
>>2]|0)>>>0>0)Ns(c[(c[l>>2]|0)+1488>>2]|0,0,c[(c[l>>2]|0)+1492>
x3e;2]<<2|0)|0;c[(c[W>>2]|0)+4>>2]=c[h>>2];e=(c[h>>2]|0)+(c[j>>2]|0)|
0;c[(c[W>>2]|0)+8>>2]=e;c[F>>2]=e;e=c[(c[W>>2]|0)+4>>2]|0;c[c[W>>2]
x3e;>2]=e;c[C>>2]=e;c[v>>2]=0;e=c[(c[s>>2]|0)+24>>2]|0;c[L>>2]=e;c[U>
;>2]=e;e=c[(c[s>>2]|0)+28>>2]|0;c[M>>2]=e;c[V>>2]=e;if(c[w>>2]|0)Va[c[(c[
w>>2]|0)+4>>2]&63](c[c[w>>2]>>2]|0);a[E>>0]=0;a:while(1){if((c[C>>
;2]|0)>>>0>=(c[F>>2]|0)>>>0){X=186;break}c[Q>>2]=c[(c[l>>2]|0)+
1136>>2];c[K>>2]=0;c[S>>2]=0;e=c[C>>2]|0;c[C>>2]=e+1;b:do switch(d[e>>
;0]|0){case 1:{c[K>>2]=16;break}case 3:{c[K>>2]=18;break}case 4:{c[K>>2]=14;break}case 5:{c[K>
;>2]=9;break}case 6:{c[K>>2]=6;break}case 7:{c[K>>2]=13;break}case 8:{c[K>>2]=11;break}case 9
:{c[K>>2]=5;break}case 10:{c[K>>2]=22;break}case 11:{c[K>>2]=24;break}case 13:{c[K>>2]=2
;break}case 14:{c[K>>2]=1;break}case 15:{c[K>>2]=26;break}case 21:{c[K>>2]=10;break}case 22:{c[K
x3e;>2]=7;break}case 30:{c[K>>2]=12;break}case 31:{c[K>>2]=8;break}case 12:{if((c[C>>2]|0)>
;>>0>(c[F>>2]|0)>>>0)break a;e=c[C>>2]|0;c[C>>2]=e+1;switch(d[e>
;>0]|0){case 0:{c[K>>2]=15;break b}case 1:{c[K>>2]=19;break b}case 2:{c[K>>2]=17;break b}case
6:{c[K>>2]=3;break b}case 7:{c[K>>2]=4;break b}case 12:{c[K>>2]=20;break b}case 16:{c[K>>
;2]=21;break b}case 17:{c[K>>2]=23;break b}case 33:{c[K>>2]=25;break b}default:break a}}case 255:{if(((c[C
x3e;>2]|0)+4|0)>>>0>(c[F>>2]|0)>>>0)break a;c[S>>2]=d[c[C>>
;2]>>0]<<24|d[(c[C>>2]|0)+1>>0]<<16|d[(c[C>>2]|0)+2>>0]<
;<8|d[(c[C>>2]|0)+3>>0];c[C>>2]=(c[C>>2]|0)+4;h=(a[E>>0]|0)!=0;if((c[S>
;>2]|0)>32e3|(c[S>>2]|0)<-32e3){if(h)break b;a[E>>0]=1;break b}else{if(h)break b;c[S>>
;2]=c[S>>2]<<16;break b}}default:{if((d[(c[C>>2]|0)+-1>>0]|0)<32)break a;h=c[C>
;>2]|0;do if((d[(c[C>>2]|0)+-1>>0]|0)>=247){e=h+1|0;c[C>>2]=e;if(e>>>0>
;(c[F>>2]|0)>>>0)break a;h=d[(c[C>>2]|0)+-2>>0]|0;if((d[(c[C>>2]|0)+-2>
;>0]|0)<251){c[S>>2]=(h-247<<8)+(d[(c[C>>2]|0)+-1>>0]|0)+108;break}else{c[S>
;>2]=0-((h-251<<8)+(d[(c[C>>2]|0)+-1>>0]|0)+108);break}}else c[S>>2]=(d[h+-1>
x3e;0]|0)-139;while(0);if(!(a[E>>0]|0))c[S>>2]=c[S>>2]<<16}}while(0);c:do if((c[R>
x3e;2]|0)>0){switch(c[K>>2]|0){case 23:case 0:case 24:case 22:break c;default:{}}c[R>>2]=0}while(0);if(!((
d[E>>0]|0)==0|(c[K>>2]|0)==0|(c[K>>2]|0)==20))a[E>>0]=0;if(!(c[K>>2]|0)){if((((
c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)>=256)break;g=c[S>>2]|0;e=c[Q>>2]|0;c[Q>
x3e;2]=e+4;c[e>>2]=g;c[(c[l>>2]|0)+1136>>2]=c[Q>>2];continue}if((c[K>>2]|0)==21
){if((((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)<2){X=188;break}c[Q>>2]=(c[Q>>2]|0)+-
8;c[O>>2]=c[(c[Q>>2]|0)+4>>2]>>16;c[n>>2]=c[c[Q>>2]>>2]>
;>16;if((c[n>>2]|0)>(((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)){X=188;break}c[Q>>
;2]=(c[Q>>2]|0)+(0-(c[n>>2]|0)<<2);c[D>>2]=0;c[R>>2]=0;do switch(c[O>>
;2]|0){case 1:{if(c[n>>2]|0)break a;c[(c[l>>2]|0)+1400>>2]=1;c[(c[l>>2]|0)+1404>>
;2]=0;e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}e=pq(c[s>
;>2]|0,6)|0;c[v>>2]=e;if(e|0){X=186;break a}break}case 2:{if(c[n>>2]|0)break a;g=(c[l>>2]|0)+
1404|0;e=c[g>>2]|0;c[g>>2]=e+1;c[x>>2]=e;if((c[x>>2]|0)>0&(c[x>>2]|0
)<7)qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,((c[x>>2]|0)==3?1:(c[x>>2]|0)==6)&
;1);break}case 0:{if((c[n>>2]|0)!=3)break a;if(!(c[(c[l>>2]|0)+1400>>2]|0))break a;if((c[(c[l>
;>2]|0)+1404>>2]|0)!=7)break a;c[c[Q>>2]>>2]=c[U>>2];c[(c[Q>>2]|0)+4>
;>2]=c[V>>2];c[D>>2]=2;break}case 3:{if((c[n>>2]|0)!=1)break a;c[D>>2]=1;if(c[w>
;>2]|0)Ra[c[(c[w>>2]|0)+20>>2]&7](c[c[w>>2]>>2]|0,b[(c[(c[s>>2]|0)+20
>>2]|0)+2>>1]|0);break}case 13:case 12:{c[Q>>2]=(c[l>>2]|0)+112;break}case 18:case 17:case
16:case 15:case 14:{c[o>>2]=c[(c[l>>2]|0)+1464>>2];if(!(c[o>>2]|0))break a;c[J>>
;2]=(c[O>>2]|0)-13+((c[O>>2]|0)==18&1);if((c[n>>2]|0)!=(_(c[J>>2]|0,c[c[o>>
;2]>>2]|0)|0))break a;c[t>>2]=(c[Q>>2]|0)+(c[J>>2]<<2);c[T>>2]=c[Q
x3e;>2];c[H>>2]=0;while(1){if((c[H>>2]|0)>>>0>=(c[J>>2]|0)>>>
;0)break;c[P>>2]=c[c[T>>2]>>2];c[G>>2]=1;while(1){if((c[G>>2]|0)>>
x3e;0>=(c[c[o>>2]>>2]|0)>>>0)break;e=c[t>>2]|0;c[t>>2]=e+4;e=Mb(c[e
x3e;>2]|0,c[(c[(c[o>>2]|0)+136>>2]|0)+(c[G>>2]<<2)>>2]|0)|0;c[P>>
;2]=(c[P>>2]|0)+e;c[G>>2]=(c[G>>2]|0)+1}g=c[P>>2]|0;e=c[T>>2]|0;c[T>>
;2]=e+4;c[e>>2]=g;c[H>>2]=(c[H>>2]|0)+1}c[D>>2]=c[J>>2];break}case 19:{c[p>
;>2]=c[(c[l>>2]|0)+1464>>2];if((c[n>>2]|0)!=1|(c[p>>2]|0)==0)break a;c[y>>
;2]=c[c[Q>>2]>>2]>>16;if((c[y>>2]|0)<0)break a;if(((c[y>>2]|0)+(c[c[p>
;>2]>>2]|0)|0)>>>0>(c[(c[l>>2]|0)+1492>>2]|0)>>>0)break a;
Ss((c[(c[l>>2]|0)+1488>>2]|0)+(c[y>>2]<<2)|0,c[(c[p>>2]|0)+136>>2]|0
,c[c[p>>2]>>2]<<2|0)|0;break}case 20:{if((c[n>>2]|0)!=2)break a;e=c[Q>>2]|0;c[
e>>2]=(c[e>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);c[D>>2]=1;break}case 21:{if((c[n>
;>2]|0)!=2)break a;e=c[Q>>2]|0;c[e>>2]=(c[e>>2]|0)-(c[(c[Q>>2]|0)+4>>2]|0
);c[D>>2]=1;break}case 22:{if((c[n>>2]|0)!=2)break a;e=Mb(c[c[Q>>2]>>2]|0,c[(c[Q>
x3e;2]|0)+4>>2]|0)|0;c[c[Q>>2]>>2]=e;c[D>>2]=1;break}case 23:{if((c[n>>2]|0)!=
2)break a;if(!(c[(c[Q>>2]|0)+4>>2]|0))break a;e=Vb(c[c[Q>>2]>>2]|0,c[(c[Q>>2]|
0)+4>>2]|0)|0;c[c[Q>>2]>>2]=e;c[D>>2]=1;break}case 24:{c[q>>2]=c[(c[l>>
;2]|0)+1464>>2];if((c[n>>2]|0)!=2|(c[q>>2]|0)==0)break a;c[z>>2]=c[(c[Q>>2]|0)+
4>>2]>>16;if((c[z>>2]|0)<0)break a;if((c[z>>2]|0)>>>0>=(c[(c[l
x3e;>2]|0)+1492>>2]|0)>>>0)break a;c[(c[(c[l>>2]|0)+1488>>2]|0)+(c[z>>
;2]<<2)>>2]=c[c[Q>>2]>>2];break}case 25:{c[r>>2]=c[(c[l>>2]|0)+1464
x3e;>2];if((c[n>>2]|0)!=1|(c[r>>2]|0)==0)break a;c[A>>2]=c[c[Q>>2]>>2]>
;>16;if((c[A>>2]|0)<0)break a;if((c[A>>2]|0)>>>0>=(c[(c[l>>2]|0)+1492
>>2]|0)>>>0)break a;c[c[Q>>2]>>2]=c[(c[(c[l>>2]|0)+1488>>2]|0)+(
c[A>>2]<<2)>>2];c[D>>2]=1;break}case 27:{if((c[n>>2]|0)!=4)break a;if((c[(c[Q
x3e;>2]|0)+8>>2]|0)>(c[(c[Q>>2]|0)+12>>2]|0))c[c[Q>>2]>>2]=c[(c[Q>
;>2]|0)+4>>2];c[D>>2]=1;break}case 28:{if(c[n>>2]|0)break a;c[m>>2]=c[N>>
2];if((c[m>>2]|0)>=32768)c[m>>2]=(c[m>>2]|0)+1;c[c[Q>>2]>>2]=c[m>>
;2];c[N>>2]=Mb(c[N>>2]|0,65536-(c[N>>2]|0)|0)|0;if(!(c[N>>2]|0))c[N>>2]=(c[N
x3e;>2]|0)+10355;c[D>>2]=1;break}default:c[R>>2]=c[n>>2]}while(0);c[Q>>2]=(c[Q>
;>2]|0)+(c[D>>2]<<2);c[(c[l>>2]|0)+1136>>2]=c[Q>>2];continue}c[I>>
;2]=c[4488+(c[K>>2]<<2)>>2];if((((c[Q>>2]|0)-((c[l>>2]|0)+112)|0)/4|0|0)<(
c[I>>2]|0)){X=188;break}c[Q>>2]=(c[Q>>2]|0)+(0-(c[I>>2]|0)<<2);d:do switch(c[K
>>2]|0){case 1:{X=121;break a}case 3:{X=127;break a}case 2:{c[(c[s>>2]|0)+64>>2]=1;e=(c[s>>
;2]|0)+32|0;c[e>>2]=(c[e>>2]|0)+(c[c[Q>>2]>>2]|0);c[(c[s>>2]|0)+40>>
2]=c[(c[Q>>2]|0)+4>>2];c[(c[s>>2]|0)+40+4>>2]=0;e=(c[(c[s>>2]|0)+24>>
;2]|0)+(c[c[Q>>2]>>2]|0)|0;c[U>>2]=e;c[L>>2]=e;e=c[(c[s>>2]|0)+28>>2
]|0;c[V>>2]=e;c[M>>2]=e;c[M>>2]=c[M>>2];if(a[(c[s>>2]|0)+70>>0]|0){X
=126;break a}break}case 4:{c[(c[s>>2]|0)+64>>2]=1;e=(c[s>>2]|0)+32|0;c[e>>2]=(c[e>
x3e;2]|0)+(c[c[Q>>2]>>2]|0);e=(c[s>>2]|0)+32+4|0;c[e>>2]=(c[e>>2]|0)+(c[(c[Q
x3e;>2]|0)+4>>2]|0);c[(c[s>>2]|0)+40>>2]=c[(c[Q>>2]|0)+8>>2];c[(c[s>
x3e;2]|0)+40+4>>2]=c[(c[Q>>2]|0)+12>>2];c[U>>2]=(c[(c[s>>2]|0)+24>>2
]|0)+(c[c[Q>>2]>>2]|0);c[V>>2]=(c[(c[s>>2]|0)+28>>2]|0)+(c[(c[Q>>2]|
0)+4>>2]|0);if(a[(c[s>>2]|0)+70>>0]|0){X=129;break a}break}case 5:{if(!((c[(c[s>>2]|0)+64
>>2]|0)!=3?(c[(c[s>>2]|0)+64>>2]|0)!=2:0))uq(c[s>>2]|0);c[(c[s>>2]|0)+64>
x3e;2]=1;break}case 6:{X=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=X;if(X|0){X=186;break
a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);X=144;break}case 7:{c[U>>2]=(c[U>
;>2]|0)+(c[c[Q>>2]>>2]|0);if(!(c[(c[l>>2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|
0)+64>>2]|0))break a;c[(c[s>>2]|0)+64>>2]=2}break}case 8:{e=tq(c[s>>2]|0,c[U>>
2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){
X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);qq(c[s>>2]|0,c[U>>
;2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);c[V>>
2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2
]|0,0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+12>>2]|0);qq(c[s>>2]|0,c[U>>
;2]|0,c[V>>2]|0,1);break}case 9:{X=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=
X;if(X|0){X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>>2]>>2]|0);c[V>>2]=(c[V>
;>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);X=144;break}case 10:{c[U>>2]=(c[U>>2]|0)+(c[c[Q>
;>2]>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);if(!(c[(c[l>
x3e;2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|0)+64>>2]|0))break a;c[(c[s>>2]|0)+64>>
2]=2}break}case 11:{e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break
a}e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){X=186;break a}c[U>>2]=(c[U>>2]|0)+(c[c[Q>
x3e;2]>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+4>>2]|0);qq(c[s>>2]|
0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);
c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+12>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,
c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+16>>2]|0);c[V>>2]=(c
[V>>2]|0)+(c[(c[Q>>2]|0)+20>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,
1);break}case 12:{e=tq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0;c[v>>2]=e;if(e|0){X=186;break a}
e=pq(c[s>>2]|0,3)|0;c[v>>2]=e;if(e|0){X=186;break a}c[V>>2]=(c[V>>2]|0)+(c[c[Q>>
;2]>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(
c[(c[Q>>2]|0)+4>>2]|0);c[V>>2]=(c[V>>2]|0)+(c[(c[Q>>2]|0)+8>>2]|0);qq
(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,0);c[U>>2]=(c[U>>2]|0)+(c[(c[Q>>2]|0)+
12>>2]|0);qq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0,1);break}case 13:{X=tq(c[s>>2]|0,c[
U>>2]|0,c[V>>2]|0)|0;c[v>>2]=X;if(X|0){X=186;break a}c[V>>2]=(c[V>>2]|0)+(c[c[
Q>>2]>>2]|0);X=144;break}case 14:{c[V>>2]=(c[V>>2]|0)+(c[c[Q>>2]>>2]|
0);if(!(c[(c[l>>2]|0)+1400>>2]|0)){if(!(c[(c[s>>2]|0)+64>>2]|0))break a;c[(c[s>>
;2]|0)+64>>2]=2}break}case 20:{e=Vb(c[c[Q>>2]>>2]|0,c[(c[Q>>2]|0)+4>>2]|0)|0;c
[c[Q>>2]>>2]=e;c[Q>>2]=(c[Q>>2]|0)+4;a[E>>0]=0;break}case 22:{c[B>>2
]=c[c[Q>>2]>>2]>>16;if((c[B>>2]|0)<0)break a;if((c[B>>2]|0)>=(c[(c[l
>>2]|0)+1364>>2]|0))break a;if((((c[W>>2]|0)-((c[l>>2]|0)+1140)|0)/12|0|0)>=16)break
a;c[c[W>>2]>>2]=c[C>>2];c[W>>2]=(c[W>>2]|0)+12;c[(c[W>>2]|0)+4>
;>2]=c[(c[(c[l>>2]|0)+1368>>2]|0)+(c[B>>2]<<2)>>2];if(c[(c[l>>2
]|0)+1372>>2]|0)c[(c[W>>2]|0)+8>>2]=(c[(c[W>>2]|0)+4>>2]|0)+(c[(c[(c[l>
x3e;2]|0)+1372>>2]|0)+(c[B>>2]<<2)>>2]|0);else{if((c[(c[l>>2]|0)+1360>>
;2]|0)>=0)h=c[(c[l>>2]|0)+1360>>2]|0;else h=0;e=(c[W>>2]|0)+4|0;c[e>>2]=(c[e>
x3e;2]|0)+h;c[(c[W>>2]|0)+8>>2]=c[(c[(c[l>>2]|0)+1368>>2]|0)+((c[B>>2]|0)+1<
;<2)>>2]}c[c[W>>2]>>2]=c[(c[W>>2]|0)+4>>2];if(!(c[(c[W>>2]|0)+4
>>2]|0))break a;c[(c[l>>2]|0)+1344>>2]=c[W>>2];c[C>>2]=c[(c[W>>2]|0)+
4>>2];c[F>>2]=c[(c[W>>2]|0)+8>>2];break}case 23:{if((c[D>>2]|0)>0){c[D>
;>2]=(c[D>>2]|0)+-1;break d}if(!(c[R>>2]|0))break a;c[R>>2]=(c[R>>2]|0)+-1;c[Q>
;>2]=(c[Q>>2]|0)+4;break}case 24:{if((c[W>>2]|0)>>>0<=((c[l>>2]|0)+1140|0
)>>>0)break a;c[W>>2]=(c[W>>2]|0)+-12;c[C>>2]=c[c[W>>2]>>2];c[F
>>2]=c[(c[W>>2]|0)+8>>2];c[(c[l>>2]|0)+1344>>2]=c[W>>2];break}case 26
:case 15:break;case 16:{if(c[w>>2]|0)Ua[c[(c[w>>2]|0)+12>>2]&31](c[c[w>>2]>>
;2]|0,1,c[Q>>2]|0);break}case 17:{if(c[w>>2]|0)Ua[c[(c[w>>2]|0)+16>>2]&31](c[c[w>
;>2]>>2]|0,1,c[Q>>2]|0);break}case 18:{if(c[w>>2]|0){e=c[Q>>2]|0;c[e>>2]=(
c[e>>2]|0)+(c[L>>2]|0);Ua[c[(c[w>>2]|0)+12>>2]&31](c[c[w>>2]>>2
]|0,0,c[Q>>2]|0)}break}case 19:{if(c[w>>2]|0){c[u>>2]=c[L>>2];e=c[Q>>2]|0;c[e
x3e;>2]=(c[e>>2]|0)+(c[u>>2]|0);e=(c[Q>>2]|0)+8|0;c[e>>2]=(c[e>>2]|0)+(c[
u>>2]|0);e=(c[Q>>2]|0)+16|0;c[e>>2]=(c[e>>2]|0)+(c[u>>2]|0);Ua[c[(c[w>>
;2]|0)+16>>2]&31](c[c[w>>2]>>2]|0,0,c[Q>>2]|0)}break}case 25:{c[U>>2]=c[c
[Q>>2]>>2];c[V>>2]=c[(c[Q>>2]|0)+4>>2];c[(c[l>>2]|0)+1400>>
;2]=0;break}default:break a}while(0);if((X|0)==144?(X=0,e=rq(c[s>>2]|0,c[U>>2]|0,c[V>>2]|0)|0,c[v
x3e;>2]=e,e|0):0){X=186;break}c[(c[l>>2]|0)+1136>>2]=c[Q>>2]}do if((X|0)==121){uq(c[s>
x3e;2]|0);if(c[w>>2]|0){if(Ya[c[(c[w>>2]|0)+8>>2]&127](c[c[w>>2]>>2]|0,b[(
c[(c[s>>2]|0)+20>>2]|0)+2>>1]|0)|0)break;Wa[c[(c[w>>2]|0)+24>>2]&31](c[c[
w>>2]>>2]|0,c[(c[s>>2]|0)+20>>2]|0,c[(c[s>>2]|0)+76>>2]|0,c[(c[l>
;>2]|0)+1468>>2]|0)|0}oc(c[(c[s>>2]|0)+12>>2]|0);c[k>>2]=0;X=c[k>>2]|0;i=
Y;return X|0}else if((X|0)==126){c[k>>2]=0;X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==127){c[k>>2]=
yq(c[l>>2]|0,c[c[Q>>2]>>2]|0,c[(c[Q>>2]|0)+4>>2]|0,c[(c[Q>>2]|0)+8
x3e;>2]|0,c[(c[Q>>2]|0)+12>>2]>>16,c[(c[Q>>2]|0)+16>>2]>>16)|0;
X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==129){c[k>>2]=0;X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==
186){c[k>>2]=c[v>>2];X=c[k>>2]|0;i=Y;return X|0}else if((X|0)==188){c[k>>2]=161;X=c[k>
;>2]|0;i=Y;return X|0}while(0);c[k>>2]=160;X=c[k>>2]|0;i=Y;return X|0}function yq(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;A=i;i=i+80|0;n=A+68|0;o=A+64
|0;p=A+60|0;q=A+56|0;r=A+52|0;k=A+48|0;l=A+44|0;v=A+40|0;u=A+36|0;s=A+32|0;x=A+24|0;t=A+16|0;m=A+12|0;w=A+8|0;y=A+4|0;z=A;c[o>
;>2]=d;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;c[k>>2]=h;c[l>>2]=j;c[m>>2
]=c[(c[o>>2]|0)+4>>2];if(a[(c[o>>2]|0)+1496>>0]|0){c[n>>2]=160;z=c[n>>
;2]|0;i=A;return z|0}c[q>>2]=(c[q>>2]|0)+(c[(c[o>>2]|0)+32>>2]|0);if((c[(c[o>>
2]|0)+1356>>2]|0)==0?(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0)==0:0){c[n>>2]=160;
z=c[n>>2]|0;i=A;return z|0}if(c[(c[(c[m>>2]|0)+128>>2]|0)+52>>2]|0){c[u>>2]=c[
k>>2];c[s>>2]=c[l>>2]}else{c[u>>2]=zq(c[o>>2]|0,c[k>>2]|0)|0;c[s>
;>2]=zq(c[o>>2]|0,c[l>>2]|0)|0}if((c[u>>2]|0)<0|(c[s>>2]|0)<0){c[n>
x3e;2]=160;z=c[n>>2]|0;i=A;return z|0}k=c[o>>2]|0;if(a[(c[o>>2]|0)+69>>0]|0){c[w>
x3e;2]=c[k+8>>2];c[y>>2]=c[c[(c[w>>2]|0)+156>>2]>>2];c[v>>2]=lc(c[y
x3e;>2]|0,2)|0;if(!(c[v>>2]|0)){c[z>>2]=c[(c[y>>2]|0)+56+32>>2];c[c[z>>2]
x3e;>2]=c[u>>2];b[(c[z>>2]|0)+4>>1]=514;c[(c[z>>2]|0)+8>>2]=0;c[(c[z>
;>2]|0)+12>>2]=0;c[z>>2]=(c[z>>2]|0)+32;c[c[z>>2]>>2]=c[s>>2];b
[(c[z>>2]|0)+4>>1]=2;x=(Tb((c[q>>2]|0)-(c[p>>2]|0)|0)|0)>>16;c[(c[z>>
;2]|0)+8>>2]=x;x=(Tb(c[r>>2]|0)|0)>>16;c[(c[z>>2]|0)+12>>2]=x;c[(c[w>>
;2]|0)+128>>2]=2;c[(c[w>>2]|0)+132>>2]=c[(c[y>>2]|0)+20+32>>2];c[(c[w>>
;2]|0)+72>>2]=1668246896;c[(c[y>>2]|0)+56+28>>2]=2}}else{nc(c[k+12>>2]|0);a[(c[o>
x3e;2]|0)+1496>>0]=1;c[v>>2]=Aq(c[o>>2]|0,c[u>>2]|0)|0;a[(c[o>>2]|0)+1496>
;>0]=0;if((c[v>>2]|0)==0?(z=(c[o>>2]|0)+32|0,c[x>>2]=c[z>>2],c[x+4>>2]=c[
z+4>>2],z=(c[o>>2]|0)+40|0,c[t>>2]=c[z>>2],c[t+4>>2]=c[z+4>>2],c[(c[
o>>2]|0)+32>>2]=0,c[(c[o>>2]|0)+32+4>>2]=0,c[(c[o>>2]|0)+24>>2]=(c[q
>>2]|0)-(c[p>>2]|0),c[(c[o>>2]|0)+28>>2]=c[r>>2],a[(c[o>>2]|0)+1496
x3e;>0]=1,c[v>>2]=Aq(c[o>>2]|0,c[s>>2]|0)|0,a[(c[o>>2]|0)+1496>>0]=0,(c[v
>>2]|0)==0):0){z=(c[o>>2]|0)+32|0;c[z>>2]=c[x>>2];c[z+4>>2]=c[x+4>>2
];z=(c[o>>2]|0)+40|0;c[z>>2]=c[t>>2];c[z+4>>2]=c[t+4>>2];c[(c[o>>2]|
0)+24>>2]=0;c[(c[o>>2]|0)+28>>2]=0}}c[n>>2]=c[v>>2];z=c[n>>2]|0;i=A;
return z|0}function zq(b,d){b=b|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;l=n+24|0;f=n+20|0;g=n+16|0;m=n+12|0;h=n
+8|0;k=n+4|0;j=n;c[f>>2]=b;c[g>>2]=d;c[k>>2]=c[(c[f>>2]|0)+1348>>2];if((c[g>
;>2]|0)<0|(c[g>>2]|0)>255){c[l>>2]=-1;m=c[l>>2]|0;i=n;return m|0}c[h>>2]=
Ta[c[(c[k>>2]|0)+20>>2]&63](e[(c[(c[k>>2]|0)+24>>2]|0)+(c[g>>2]<<
;1)>>1]|0)|0;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[(c[f>>2]|0)+1352
>>2]|0)>>>0){f=10;break}c[j>>2]=c[(c[(c[f>>2]|0)+1356>>2]|0)+(c[m>
x3e;2]<<2)>>2];if((c[j>>2]|0?(a[c[j>>2]>>0]|0)==(a[c[h>>2]>>
;0]|0):0)?(Kr(c[j>>2]|0,c[h>>2]|0)|0)==0:0){f=8;break}c[m>>2]=(c[m>>2]|0)+1}if((f|0)==8){
c[l>>2]=c[m>>2];m=c[l>>2]|0;i=n;return m|0}else if((f|0)==10){c[l>>2]=-1;m=c[l>>
;2]|0;i=n;return m|0}return 0}function Aq(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=Ya[c[(c[f>>2]|0)+1472>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return b|0}
function Bq(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;n=i;i=i+32|0;f=n+24|0;g=n+20|0;h=n+16|0;j=n+12|
0;k=n+8|0;m=n+4|0;l=n;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[m>>2]=0;c[m>
;>2]=bc(c[h>>2]|0,16,l)|0;if(c[l>>2]|0){c[f>>2]=c[l>>2];m=c[f>>2]|0;i=n;return
m|0}else{a=c[j>>2]|0;c[(c[m>>2]|0)+4>>2]=a;c[c[m>>2]>>2]=a;c[(c[m>>
2]|0)+8>>2]=c[k>>2];c[(c[m>>2]|0)+12>>2]=2;c[c[g>>2]>>2]=c[h>
x3e;2];c[(c[g>>2]|0)+4>>2]=c[m>>2];c[(c[g>>2]|0)+8>>2]=0;c[(c[g>>2]|
0)+12>>2]=0;c[f>>2]=0;m=c[f>>2]|0;i=n;return m|0}return 0}function Cq(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];Fb(c[e>>2]|0,c[(c[d>
;>2]|0)+4>>2]|0);c[(c[d>>2]|0)+4>>2]=0;i=b;return}function Dq(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;o=i;i=i+80|0;j=o+68|0;k=o+64|0;n=o+60|0;m=o+56|0;l=o+52|0;d=o+48|0;e=o+44|0;f=o+40|0;h=o+8|0;g=o;c[k
x3e;>2]=b;c[n>>2]=c[c[k>>2]>>2];c[m>>2]=c[(c[k>>2]|0)+8>>2];c[l
>>2]=160;c[f>>2]=0;if(!(c[m>>2]|0)){c[j>>2]=6;n=c[j>>2]|0;i=o;return n|0}c[d
x3e;>2]=Eq(c[k>>2]|0,1,e)|0;if(!((c[d>>2]|0)==0|(c[e>>2]|0)!=16)?(Lr(c[d>>2]|0,11707
,16)|0)==0:0){a:while(1){b=Eq(c[k>>2]|0,1,e)|0;c[d>>2]=b;if(!b){d=24;break}switch(Iq(c[d>>2]|0,c[e
>>2]|0)|0){case 49:{d=22;break a}case 20:{d=23;break a}case 40:{if(Jq(c[k>>2]|0,f)|0){d=24;break a}if((c[f
x3e;>2]|0)!=0&(c[f>>2]|0)!=2){d=10;break a}else continue a}case 30:{c[h>>2]=4;if((Kq(c[k>>
;2]|0,h,1)|0)!=1){d=24;break a}a[c[m>>2]>>0]=a[h+4>>0]|0;continue a}case 26:{c[h>>2]=2;c
[h+8>>2]=2;c[h+16>>2]=2;c[h+24>>2]=2;if((Kq(c[k>>2]|0,h,4)|0)!=4){d=24;break a}c[(c[m>
;>2]|0)+4>>2]=c[h+4>>2];c[(c[m>>2]|0)+4+4>>2]=c[h+8+4>>2];c[(c[m>>
;2]|0)+4+8>>2]=c[h+16+4>>2];c[(c[m>>2]|0)+4+12>>2]=c[h+24+4>>2];continue a}case
0:{c[h>>2]=2;if((Kq(c[k>>2]|0,h,1)|0)!=1){d=24;break a}c[(c[m>>2]|0)+20>>2]=c[h+4>
x3e;2];continue a}case 14:{c[h>>2]=2;if((Kq(c[k>>2]|0,h,1)|0)!=1){d=24;break a}c[(c[m>>2]|0)+24>
;>2]=c[h+4>>2];continue a}case 45:{c[g>>2]=0;if(Jq(c[k>>2]|0,g)|0){d=24;break a}c[l>>
;2]=Lq(c[k>>2]|0,c[g>>2]|0,17)|0;if(c[l>>2]|0){d=21;break a}else continue a}default:continue a}}if
((d|0)==10){c[l>>2]=7;d=24}else if((d|0)==21){c[j>>2]=c[l>>2];n=c[j>>2]|0;i=o;return n|0
}else if((d|0)==22){c[l>>2]=Mq(c[k>>2]|0)|0;if(c[l>>2]|0)d=24;else d=23}if((d|0)==23){c[j>>
;2]=0;n=c[j>>2]|0;i=o;return n|0}else if((d|0)==24){Fb(c[n>>2]|0,c[(c[m>>2]|0)+28>>2]|0);
c[(c[m>>2]|0)+28>>2]=0;c[(c[m>>2]|0)+32>>2]=0;Fb(c[n>>2]|0,c[(c[m>>2
]|0)+36>>2]|0);c[(c[m>>2]|0)+36>>2]=0;c[(c[m>>2]|0)+40>>2]=0;a[c[m>>
2]>>0]=0;c[j>>2]=c[l>>2];n=c[j>>2]|0;i=o;return n|0}}c[j>>2]=2;n=c[j>>
;2]|0;i=o;return n|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,l=0;j=i;i=i+32|0;l=j+12|0;k=j+16|0;g=j+8|0;f=j
+4|0;h=j;c[l>>2]=b;a[k>>0]=d;c[g>>2]=e;c[f>>2]=c[(c[l>>2]|0)+4>>2];c
[h>>2]=0;a:do if(a[k>>0]|0)do{if((c[(c[f>>2]|0)+12>>2]|0)<2)Fq(c[f>>2]|0)|
0;c[(c[f>>2]|0)+12>>2]=0;c[h>>2]=Hq(c[f>>2]|0)|0;if(c[h>>2]|0)break a;if((c[(c
[f>>2]|0)+12>>2]|0)>=3)break a}while((c[(c[f>>2]|0)+12>>2]|0)>=2);else while(1
){e=c[f>>2]|0;if((c[(c[f>>2]|0)+12>>2]|0)>=1^1){Hq(e)|0;continue}c[e+12>>2]=0;c[h
x3e;>2]=Hq(c[f>>2]|0)|0;if(c[h>>2]|0)break a;if((c[(c[f>>2]|0)+12>>2]|0)>=3)break
a;if((c[(c[f>>2]|0)+12>>2]|0)<1)break}while(0);if(!(c[g>>2]|0)){l=c[h>>2]|0;i=j;return
l|0}if(c[h>>2]|0)e=(c[c[f>>2]>>2]|0)-(c[h>>2]|0)-1|0;else e=0;c[c[g>>2]>
x3e;2]=e;l=c[h>>2]|0;i=j;return l|0}function Fq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+16|0;e=h+12|0;f=h+8|0;g=h
+4|0;b=h;c[f>>2]=a;Gq(c[f>>2]|0)|0;if((c[(c[f>>2]|0)+12>>2]|0)>=2){c[e>>2
]=0;g=c[e>>2]|0;i=h;return g|0}c[g>>2]=(c[c[f>>2]>>2]|0)+-1;while(1){if((c[c[f>>
;2]>>2]|0)>>>0<(c[(c[f>>2]|0)+8>>2]|0)>>>0){j=c[f>>2]|
0;a=c[j>>2]|0;c[j>>2]=a+1;a=d[a>>0]|0}else a=-1;c[b>>2]=a;if((c[b>>2]|0)==13|(
c[b>>2]|0)==10){a=7;break}if((c[b>>2]|0)==-1|(c[b>>2]|0)==26){a=9;break}}if((a|0)==7)c[(c[f>
x3e;2]|0)+12>>2]=2;else if((a|0)==9)c[(c[f>>2]|0)+12>>2]=3;c[e>>2]=c[g>>2];j=c
[e>>2]|0;i=h;return j|0}function Gq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;g=i;i=i+16|0;b=g+8|0;e=g+4|0;f=g;c[e>>2
]=a;c[f>>2]=0;if((c[(c[e>>2]|0)+12>>2]|0)>=1){c[b>>2]=59;f=c[b>>2]|0;i=g;
return f|0}do{if((c[c[e>>2]>>2]|0)>>>0<(c[(c[e>>2]|0)+8>>2]|0)>
x3e;>0){h=c[e>>2]|0;a=c[h>>2]|0;c[h>>2]=a+1;a=d[a>>0]|0}else a=-1;c[f>>2]=
a}while((c[f>>2]|0)==32|(c[f>>2]|0)==9);do if(!((c[f>>2]|0)==13|(c[f>>2]|0)==10)){if((c[
f>>2]|0)==59){c[(c[e>>2]|0)+12>>2]=1;break}if((c[f>>2]|0)==-1|(c[f>>2]|0)==26)
c[(c[e>>2]|0)+12>>2]=3}else c[(c[e>>2]|0)+12>>2]=2;while(0);c[b>>2]=c[f>
x3e;2];h=c[b>>2]|0;i=g;return h|0}function Hq(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;b=j+12|0;e=j+8|0;g
=j+4|0;f=j;c[e>>2]=a;Gq(c[e>>2]|0)|0;if((c[(c[e>>2]|0)+12>>2]|0)>=1){c[b>>
;2]=0;h=c[b>>2]|0;i=j;return h|0}c[g>>2]=(c[c[e>>2]>>2]|0)+-1;while(1){if((c[c[e>
x3e;2]>>2]|0)>>>0<(c[(c[e>>2]|0)+8>>2]|0)>>>0){k=c[e>>
;2]|0;a=c[k>>2]|0;c[k>>2]=a+1;a=d[a>>0]|0}else a=-1;c[f>>2]=a;if((c[f>>2]|0)==
32|(c[f>>2]|0)==9)break;if((c[f>>2]|0)==13|(c[f>>2]|0)==10){h=8;break}if((c[f>>2]|0)==59
){h=10;break}if((c[f>>2]|0)==-1|(c[f>>2]|0)==26){h=12;break}}if((h|0)==8)c[(c[e>>2]|0)+12>>
;2]=2;else if((h|0)==10)c[(c[e>>2]|0)+12>>2]=1;else if((h|0)==12)c[(c[e>>2]|0)+12>>2]=3;
c[b>>2]=c[g>>2];k=c[b>>2]|0;i=j;return k|0}function Iq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,j=0;j=
i;i=i+16|0;h=j+12|0;e=j+8|0;f=j+4|0;g=j;c[e>>2]=b;c[f>>2]=d;c[g>>2]=0;a:while(1){if((c[g>>
;2]|0)>=74){b=10;break}if((c[g>>2]|0)<74?(a[c[4608+(c[g>>2]<<2)>>2]>>
;0]|0)==(a[c[e>>2]>>0]|0):0)do{if((a[c[4608+(c[g>>2]<<2)>>2]>>0]|0)!=(
a[c[e>>2]>>0]|0)){b=5;break a}b=(Lr(c[4608+(c[g>>2]<<2)>>2]|0,c[e>>2
]|0,c[f>>2]|0)|0)==0;d=c[g>>2]|0;if(b){b=7;break a}c[g>>2]=d+1}while((c[g>>2]|0)<74
);c[g>>2]=(c[g>>2]|0)+1}if((b|0)==5){c[h>>2]=75;h=c[h>>2]|0;i=j;return h|0}else if((b|0)==
7){c[h>>2]=d;h=c[h>>2]|0;i=j;return h|0}else if((b|0)==10){c[h>>2]=75;h=c[h>>2]|0;i=j;return
h|0}return 0}function Jq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=i;i=i+32|0;d=g+16|0;h=g+12|0;e=g+8|0;f=g;c[h>>2]=
a;c[e>>2]=b;c[f>>2]=3;if((Kq(c[h>>2]|0,f,1)|0)==1){c[c[e>>2]>>2]=c[f+4>
x3e;2];c[d>>2]=0;h=c[d>>2]|0;i=g;return h|0}else{c[d>>2]=160;h=c[d>>2]|0;i=g;return h|0}
return 0}function Kq(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;r=i;i=i+48|0;f=r+40|0;g=r+36|0
;h=r+32|0;j=r+28|0;p=r+24|0;o=r+20|0;l=r+16|0;m=r+12|0;q=r+8|0;n=r+4|0;k=r;c[g>>2]=b;c[h>>2]=d;c[j>>
;2]=e;c[p>>2]=c[(c[g>>2]|0)+4>>2];if((c[j>>2]|0)>>>0>5){c[f>>
;2]=0;q=c[f>>2]|0;i=r;return q|0}c[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[j
x3e;>2]|0)>>>0)break;c[q>>2]=(c[h>>2]|0)+(c[l>>2]<<3);e=c[p>>
;2]|0;if(!(c[c[q>>2]>>2]|0))c[o>>2]=Fq(e)|0;else c[o>>2]=Hq(e)|0;if(!(c[o>>2]|
0))break;c[m>>2]=(c[c[p>>2]>>2]|0)-(c[o>>2]|0)-1;a:do switch(c[c[q>>2]>
x3e;2]|0){case 1:case 0:{c[n>>2]=c[c[g>>2]>>2];d=cc(c[n>>2]|0,(c[m>>2]|0)+1|0,
k)|0;c[(c[q>>2]|0)+4>>2]=d;if(!(c[k>>2]|0)){Ss(c[(c[q>>2]|0)+4>>2]|0,c[o>
x3e;2]|0,c[m>>2]|0)|0;a[(c[(c[q>>2]|0)+4>>2]|0)+(c[m>>2]|0)>>0]=0}break}case 2
:{d=bq(o,(c[o>>2]|0)+(c[m>>2]|0)|0,0)|0;c[(c[q>>2]|0)+4>>2]=d;break}case 3:{d=_p(o,(c[o
x3e;>2]|0)+(c[m>>2]|0)|0)|0;c[(c[q>>2]|0)+4>>2]=d;break}case 4:{if((c[m>>2]|0)==4)e
=(Lr(c[o>>2]|0,12412,4)|0)!=0^1;else e=0;a[(c[q>>2]|0)+4>>0]=e&1;break}case 5:if(c[(c[g>
x3e;2]|0)+12>>2]|0){d=Oa[c[(c[g>>2]|0)+12>>2]&63](c[o>>2]|0,c[m>>2]|0,c[(
c[g>>2]|0)+16>>2]|0)|0;c[(c[q>>2]|0)+4>>2]=d;break a}else{c[(c[q>>2]|0)+4>
;>2]=0;break a}default:{}}while(0);c[l>>2]=(c[l>>2]|0)+1}c[f>>2]=c[l>>2];q=c[f>
;>2]|0;i=r;return q|0}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,l=0,m=0,n=0;n=i;i=i+32|0;e=n+24|0;f=
n+20|0;g=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;l=n;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;do{a=c[g>>2]|
0;c[g>>2]=a+-1;if(a>>>0<=0){m=4;break}c[j>>2]=Eq(c[f>>2]|0,1,0)|0}while((c[j
x3e;>2]|0)!=0);a:do if((m|0)==4){while(1){m=Eq(c[f>>2]|0,1,k)|0;c[j>>2]=m;if(!m)break a;c[l>>
2]=Iq(c[j>>2]|0,c[k>>2]|0)|0;if((c[l>>2]|0)==20?1:(c[l>>2]|0)==(c[h>>2]|0))break
;else m=4}c[e>>2]=0;m=c[e>>2]|0;i=n;return m|0}while(0);c[e>>2]=160;m=c[e>>2]|0;i=n;return
m|0}function Mq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=i;i=i+32|0;f=h+16|0;b=h+12|0;g=h+8|0;d=h+4|0;e=h;c[b>>2]=a;a:while
(1){a=Eq(c[b>>2]|0,1,e)|0;c[d>>2]=a;if(!a){b=9;break}switch(Iq(c[d>>2]|0,c[e>>2]|0)|0){case
75:continue a;case 20:case 21:{b=8;break a}case 53:{c[g>>2]=Nq(c[b>>2]|0)|0;if(c[g>>2]|0){b=5;break
a}else continue a}case 51:case 50:{c[g>>2]=Oq(c[b>>2]|0)|0;if(c[g>>2]|0){b=7;break a}else continue
a}default:{b=9;break a}}}if((b|0)==5)c[f>>2]=c[g>>2];else if((b|0)==7)c[f>>2]=c[g>>2];else
if((b|0)==8)c[f>>2]=0;else if((b|0)==9)c[f>>2]=160;i=h;return c[f>>2]|0}function Nq(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;n=i;i=i+80|0;b=n+72|0;d=n+68|0;f=n+64|0;m=n+60|0;g=n+56|0;h=n+52|0;k=n+48|0;j=n+44|0
;e=n+40|0;l=n;c[d>>2]=a;c[f>>2]=c[(c[d>>2]|0)+8>>2];c[k>>2]=-1;a:do if(!(Jq(c[
d>>2]|0,(c[f>>2]|0)+32|0)|0)){if(c[(c[f>>2]|0)+32>>2]|0?(c[j>>2]=c[c[d>
x3e;2]>>2],a=hc(c[j>>2]|0,20,0,c[(c[f>>2]|0)+32>>2]|0,0,e)|0,c[(c[f>>2]|0)+28
x3e;>2]=a,c[e>>2]|0):0){c[b>>2]=c[e>>2];m=c[b>>2]|0;i=n;return m|0}b:while(1){a=Eq(
c[d>>2]|0,1,h)|0;c[g>>2]=a;if(!a)break a;switch(Iq(c[g>>2]|0,c[h>>2]|0)|0){case 75:continue
b;case 20:case 21:case 23:break b;case 56:break;default:break a}c[k>>2]=(c[k>>2]|0)+1;if((c[k>>2]|
0)>=(c[(c[f>>2]|0)+32>>2]|0))break a;c[m>>2]=(c[(c[f>>2]|0)+28>>2]|0)+((c
[k>>2]|0)*20|0);c[l>>2]=3;c[l+8>>2]=2;c[l+16>>2]=2;c[l+24>>2]=2;c[l+32>
x3e;2]=2;if((Kq(c[d>>2]|0,l,5)|0)!=5)break a;c[c[m>>2]>>2]=c[l+4>>2];c[(c[m>>2
]|0)+4>>2]=c[l+8+4>>2];c[(c[m>>2]|0)+8>>2]=c[l+16+4>>2];c[(c[m>>2]|0
)+12>>2]=c[l+24+4>>2];c[(c[m>>2]|0)+16>>2]=c[l+32+4>>2];if((c[c[m>>2
]>>2]|0)>=0)continue;if((c[(c[m>>2]|0)+8>>2]|0)<=0)continue;c[(c[m>>2]|0)+8>
;>2]=0-(c[(c[m>>2]|0)+8>>2]|0)}c[(c[f>>2]|0)+32>>2]=(c[k>>2]|0)+1;c[b>
;>2]=0;m=c[b>>2]|0;i=n;return m|0}while(0);c[b>>2]=160;m=c[b>>2]|0;i=n;return m|0}function Oq
(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;p=i;i=i+80|0;e=p+72|0;f=p+68|0;g=p+64|0;j=p+60|0;h=p+56|0;k=p+
52|0;l=p+48|0;d=p+44|0;b=p+40|0;o=p+36|0;m=p+32|0;n=p;c[f>>2]=a;c[g>>2]=c[(c[f>>2]|0)+8>>
;2];c[l>>2]=-1;a:do if(!(Jq(c[f>>2]|0,(c[g>>2]|0)+40|0)|0)){if(c[(c[g>>2]|0)+40>>
;2]|0?(c[d>>2]=c[c[f>>2]>>2],a=hc(c[d>>2]|0,16,0,c[(c[g>>2]|0)+40>>2
]|0,0,b)|0,c[(c[g>>2]|0)+36>>2]=a,c[b>>2]|0):0){c[e>>2]=c[b>>2];o=c[e>>
;2]|0;i=p;return o|0}b:while(1){a=Eq(c[f>>2]|0,1,k)|0;c[h>>2]=a;if(!a)break a;c[o>>2]=Iq(c[h>
x3e;2]|0,c[k>>2]|0)|0;switch(c[o>>2]|0){case 75:continue b;case 20:case 21:case 22:break b;case 37:case 36:case
34:break;default:break a}c[l>>2]=(c[l>>2]|0)+1;if((c[l>>2]|0)>=(c[(c[g>>2]|0)+40
x3e;>2]|0))break a;c[j>>2]=(c[(c[g>>2]|0)+36>>2]|0)+(c[l>>2]<<4);c[n>
;>2]=5;c[n+8>>2]=5;c[n+16>>2]=3;c[n+24>>2]=3;c[m>>2]=Kq(c[f>>2]|0,n,4)|0;
if((c[m>>2]|0)<3)break a;c[c[j>>2]>>2]=c[n+4>>2];c[(c[j>>2]|0)+4>>
;2]=c[n+8+4>>2];if((c[o>>2]|0)==37){c[(c[j>>2]|0)+8>>2]=0;c[(c[j>>2]|0)+12>
;>2]=c[n+16+4>>2];continue}c[(c[j>>2]|0)+8>>2]=c[n+16+4>>2];if((c[o>>2]|0
)==34&(c[m>>2]|0)==4)b=c[n+24+4>>2]|0;else b=0;c[(c[j>>2]|0)+12>>2]=b}c[(c[g>
x3e;2]|0)+40>>2]=(c[l>>2]|0)+1;Bs(c[(c[g>>2]|0)+36>>2]|0,c[(c[g>>2]|0)+40>
;>2]|0,16,109);c[e>>2]=0;o=c[e>>2]|0;i=p;return o|0}while(0);c[e>>2]=160;o=c[e>>2]|
0;i=p;return o|0}function Pq(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;g=i;i=i+32|0;d=g+24|0;l=g+20|0;k=g+16|0;j=g+12
|0;h=g+8|0;e=g+4|0;f=g;c[l>>2]=a;c[k>>2]=b;c[j>>2]=c[l>>2];c[h>>2]=c[k>
x3e;2];c[e>>2]=c[c[j>>2]>>2]<<16|c[(c[j>>2]|0)+4>>2];c[f>>
2]=c[c[h>>2]>>2]<<16|c[(c[h>>2]|0)+4>>2];if((c[e>>2]|0)>>
x3e;0>(c[f>>2]|0)>>>0){c[d>>2]=1;l=c[d>>2]|0;i=g;return l|0}if((c[e>>
;2]|0)>>>0<(c[f>>2]|0)>>>0){c[d>>2]=-1;l=c[d>>2]|0;i=g;return l
|0}else{c[d>>2]=0;l=c[d>>2]|0;i=g;return l|0}return 0}function Qq(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d
x3e;>2]=a;Rq(c[d>>2]|0,0);i=b;return 0}function Rq(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[d>>2]=a;c[f>>2]=b;c[h>>2]=c[c[d>>2]>>2];c[g>>
2]=c[(c[h>>2]|0)+484>>2];c[(c[d>>2]|0)+24>>2]=c[(c[h>>2]|0)+132+284>>
;2];c[(c[d>>2]|0)+28>>2]=c[(c[h>>2]|0)+132+288>>2];c[(c[d>>2]|0)+20>>
;2]=c[(c[g>>2]|0)+20>>2];a=c[g>>2]|0;if(c[f>>2]|0){g=c[a+28>>2]|0;h=c[d>
x3e;2]|0;h=h+16|0;c[h>>2]=g;i=e;return}else{g=c[a+24>>2]|0;h=c[d>>2]|0;h=h+16|0;c[h>>2]=
g;i=e;return}}function Sq(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)+24>>2]=0;c
[(c[d>>2]|0)+28>>2]=0;c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>2]=0;
i=b;return}function Tq(b,d){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;o=i;i=i+32|0;f=o+24|0;g=o+20|0;m=o+16|0;h=o+12|0
;l=o+8|0;j=o+4|0;k=o;c[f>>2]=b;c[g>>2]=d;c[m>>2]=0;if((c[g>>2]|0)>>>0>
;=256){n=c[m>>2]|0;i=o;return n|0}c[h>>2]=e[(c[(c[f>>2]|0)+16>>2]|0)+(c[g>>2]
x3c;<1)>>1];c[j>>2]=Ta[c[(c[f>>2]|0)+20>>2]&63](c[h>>2]|0)|0;c[l>
;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[(c[f>>2]|0)+24>>2]|0)>>
x3e;0){n=9;break}c[k>>2]=c[(c[(c[f>>2]|0)+28>>2]|0)+(c[l>>2]<<2)>>2];
if((c[k>>2]|0?(a[c[k>>2]>>0]|0)==(a[c[j>>2]>>0]|0):0)?(Kr(c[k>>2]|0,
c[j>>2]|0)|0)==0:0)break;c[l>>2]=(c[l>>2]|0)+1}if((n|0)==9){n=c[m>>2]|0;i=o;return n|0}c
[m>>2]=c[l>>2];n=c[m>>2]|0;i=o;return n|0}function Uq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0
;j=i;i=i+16|0;d=j+12|0;e=j+8|0;g=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[g>>2]=0;c[f>>2]=(c[c[e
x3e;>2]>>2]|0)+1;while(1){if((c[f>>2]|0)>>>0>=256)break;c[g>>2]=Tq(c[d>
;>2]|0,c[f>>2]|0)|0;if(c[g>>2]|0){h=6;break}c[f>>2]=(c[f>>2]|0)+1}if((h|0)==6){b=c[
f>>2]|0;h=c[e>>2]|0;c[h>>2]=b;h=c[g>>2]|0;i=j;return h|0}c[f>>2]=0;b=c[f>
x3e;2]|0;h=c[e>>2]|0;c[h>>2]=b;h=c[g>>2]|0;i=j;return h|0}function Vq(a){a=a|0;var b=0,d=0;b=i;i=i
+16|0;d=b;c[d>>2]=a;Rq(c[d>>2]|0,1);i=b;return 0}function Wq(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]=c[c[d>>2]>>2];c[e>>2]=(c[f>>2]|0)+132
+240;c[(c[d>>2]|0)+16>>2]=c[(c[e>>2]|0)+4>>2];c[(c[d>>2]|0)+20>>2]=(
c[(c[e>>2]|0)+8>>2]|0)-(c[(c[d>>2]|0)+16>>2]|0);c[(c[d>>2]|0)+24>>2]=
c[(c[e>>2]|0)+12>>2];i=b;return 0}function Xq(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)+24>>2]=0;c[(c[d>>2]|0)+16>>2]=0;c[(c[d>>2]|0)+20>>2]=0;i=b
;return}function Yq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=
b;c[g>>2]=0;if((c[f>>2]|0)>>>0<(c[(c[d>>2]|0)+16>>2]|0)>>
x3e;0){g=c[g>>2]|0;i=h;return g|0}if((c[f>>2]|0)>>>0>=((c[(c[d>>2]|0)+16>
x3e;2]|0)+(c[(c[d>>2]|0)+20>>2]|0)|0)>>>0){g=c[g>>2]|0;i=h;return g|0}c[g>>
;2]=e[(c[(c[d>>2]|0)+24>>2]|0)+(c[f>>2]<<1)>>1];g=c[g>>2]|0;i=h;return
g|0}function Zq(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;d=k+12|0;f=k+8|0;h=k+4|0;g=k;c[d>>2]=a;c[f
x3e;>2]=b;c[h>>2]=0;c[g>>2]=c[c[f>>2]>>2];c[g>>2]=(c[g>>2]|0)+1
;if((c[g>>2]|0)>>>0<(c[(c[d>>2]|0)+16>>2]|0)>>>0)c[g>>
;2]=c[(c[d>>2]|0)+16>>2];while(1){if((c[g>>2]|0)>>>0>=((c[(c[d>>2]|0
)+16>>2]|0)+(c[(c[d>>2]|0)+20>>2]|0)|0)>>>0)break;c[h>>2]=e[(c[(c[d>
x3e;2]|0)+24>>2]|0)+(c[g>>2]<<1)>>1];if(c[h>>2]|0){j=7;break}c[g>>2]=(
c[g>>2]|0)+1}if((j|0)==7){b=c[g>>2]|0;j=c[f>>2]|0;c[j>>2]=b;j=c[h>>2]|0;i=k;return
j|0}c[g>>2]=0;b=c[g>>2]|0;j=c[f>>2]|0;c[j>>2]=b;j=c[h>>2]|0;i=k;return j|0}function
_q(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;d=b+8|0;f=b+4|0;g=b;c[e>>2]=a;c[d>>2]=c[c[e>
x3e;2]>>2];c[f>>2]=c[(c[d>>2]|0)+100>>2];c[g>>2]=c[(c[d>>2]|0)+484
x3e;>2];a=Sa[c[(c[g>>2]|0)+4>>2]&3](c[f>>2]|0,c[e>>2]|0,c[(c[d>>2]|0
)+132+284>>2]|0,110,0,c[d>>2]|0)|0;i=b;return a|0}function $q(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;
e=f+4|0;d=f;c[e>>2]=a;c[d>>2]=b;i=f;return c[(c[(c[e>>2]|0)+132+288>>2]|0)+(c[d>>
;2]<<2)>>2]|0}function ar(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]=c[c[d>>2]>>2];c[e>>2]=c[(c[f>>2]|0)+100>>2];Fb(c[e>>
;2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>>2]=0;c[(c[d>>2]|0)+16>>
;2]=0;i=b;return}function br(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;h=d+4|0;g=d;c[f>>2
]=a;c[e>>2]=b;c[h>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[h>>2]|0)+484>
x3e;2];a=Ya[c[(c[g>>2]|0)+8>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function
cr(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;h=d+4|0;g=d;c[f>>2]=a;c[e>>2]=b;c
[h>>2]=c[c[f>>2]>>2];c[g>>2]=c[(c[h>>2]|0)+484>>2];a=Ya[c[(c[g>
x3e;2]|0)+12>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return a|0}function dr(a,d,e){a=a|0;d=d|0;e=
e|0;var f=0,g=0,h=0,j=0;f=i;i=i+16|0;j=f+4|0;h=f;g=f+8|0;c[j>>2]=a;c[h>>2]=d;b[g>>1]=e;er(j,(c[j
x3e;>2]|0)+(c[h>>2]|0)|0,c[j>>2]|0,c[h>>2]|0,g)|0;i=f;return}function er(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;v=i;i=i+48|0;l=v+36|0;m=v+32|0;n=v+28|0;o=v+24|0;p=v+20|0;r
=v+16|0;s=v+12|0;t=v+8|0;u=v+4|0;q=v;c[l>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[p>
x3e;2]=k;c[t>>2]=e[c[p>>2]>>1];c[r>>2]=c[c[l>>2]>>2];if((c[o>
x3e;2]|0)>>>0>((c[m>>2]|0)-(c[r>>2]|0)|0)>>>0)c[o>>2]=(c[m>
;>2]|0)-(c[r>>2]|0);c[s>>2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[o>>
;2]|0)>>>0)break;c[u>>2]=d[(c[r>>2]|0)+(c[s>>2]|0)>>0];c[q>>2]=
c[u>>2]^(c[t>>2]|0)>>>8;c[t>>2]=(((c[u>>2]|0)+(c[t>>2]|0)|0)*52845
|0)+22719&65535;a[(c[n>>2]|0)+(c[s>>2]|0)>>0]=c[q>>2];c[s>>2]=(c[s>
x3e;2]|0)+1}c[c[l>>2]>>2]=(c[r>>2]|0)+(c[o>>2]|0);b[c[p>>2]>>1]=c[t
x3e;>2];i=v;return c[s>>2]|0}function fr(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
,u=0;u=i;i=i+64|0;r=u+44|0;e=u+40|0;h=u+36|0;o=u+32|0;m=u+28|0;f=u+49|0;k=u+24|0;j=u+20|0;p=u+16|0;n=u+12|0;g=u+48|0;l=u+8|0;t=u
+4|0;s=u;c[e>>2]=b;if(((a[c[e>>2]>>0]|0)==117?(a[(c[e>>2]|0)+1>>0]|0)==110:0)?(
a[(c[e>>2]|0)+2>>0]|0)==105:0){c[o>>2]=0;c[m>>2]=(c[e>>2]|0)+3;c[h>>
2]=4;while(1){if((c[h>>2]|0)<=0)break;a[f>>0]=a[c[m>>2]>>0]|0;c[k>>2]=(d[
f>>0]|0)-48;do if((c[k>>2]|0)>>>0>=10){c[k>>2]=(d[f>>0]|0)-65;if((c[
k>>2]|0)>>>0>=6){c[k>>2]=16;break}else{c[k>>2]=(c[k>>2]|0)+10;break}}
while(0);if((c[k>>2]|0)>>>0>=16)break;c[o>>2]=(c[o>>2]<<4)+(c[k>
;>2]|0);c[h>>2]=(c[h>>2]|0)+-1;c[m>>2]=(c[m>>2]|0)+1}if(!(c[h>>2]|0)){if(!(
a[c[m>>2]>>0]|0)){c[r>>2]=c[o>>2];t=c[r>>2]|0;i=u;return t|0}if((a[c[m>
x3e;2]>>0]|0)==46){c[r>>2]=c[o>>2]|-2147483648;t=c[r>>2]|0;i=u;return t|0}}}if((a[c[e>
;>2]>>0]|0)==117){c[p>>2]=0;c[n>>2]=(c[e>>2]|0)+1;c[j>>2]=6;while(1){if((
c[j>>2]|0)<=0)break;a[g>>0]=a[c[n>>2]>>0]|0;c[l>>2]=(d[g>>0]|0)-
48;do if((c[l>>2]|0)>>>0>=10){c[l>>2]=(d[g>>0]|0)-65;if((c[l>>2]|0)
x3e;>>0>=6){c[l>>2]=16;break}else{c[l>>2]=(c[l>>2]|0)+10;break}}while(0);if((c[l>
;>2]|0)>>>0>=16)break;c[p>>2]=(c[p>>2]<<4)+(c[l>>2]|0);c[j>
;>2]=(c[j>>2]|0)+-1;c[n>>2]=(c[n>>2]|0)+1}if((c[j>>2]|0)<=2){if(!(a[c[n>
x3e;2]>>0]|0)){c[r>>2]=c[p>>2];t=c[r>>2]|0;i=u;return t|0}if((a[c[n>>2]>
x3e;0]|0)==46){c[r>>2]=c[p>>2]|-2147483648;t=c[r>>2]|0;i=u;return t|0}}}c[t>>2]=c[e>
;>2];c[s>>2]=0;while(1){if(!(a[c[t>>2]>>0]|0))break;if((a[c[t>>2]>>0]|0)==
46?(c[t>>2]|0)>>>0>(c[e>>2]|0)>>>0:0){q=35;break}c[t>>2]=(c[t
x3e;>2]|0)+1}if((q|0)==35)c[s>>2]=c[t>>2];e=c[e>>2]|0;if(c[s>>2]|0){c[r>>
2]=gr(e,c[s>>2]|0)|0|-2147483648;t=c[r>>2]|0;i=u;return t|0}else{c[r>>2]=gr(e,c[t>>2]|0)|
0;t=c[r>>2]|0;i=u;return t|0}return 0}function gr(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;t=i;i=i+64|0;f=t+48|0;g=t+44|0;h=t+40|0;j=t+36|0;l=t+32|0;o=t+28|0;m=t+24|0;q=t+20|0;n=t+16|0;r=t+12|0;k=t+8|0;p=t+4|0;
s=t;c[g>>2]=b;c[h>>2]=e;c[j>>2]=0;c[q>>2]=12431;a:do if(c[g>>2]|0?(c[g>
x3e;2]|0)>>>0<(c[h>>2]|0)>>>0:0){b=c[g>>2]|0;c[g>>2]=b+1;c[j>
;>2]=a[b>>0];c[l>>2]=d[(c[q>>2]|0)+1>>0];c[q>>2]=(c[q>>2]|0)+2;
c[o>>2]=0;c[m>>2]=c[l>>2];while(1){if((c[o>>2]|0)>=(c[m>>2]|0))break a;c[
n>>2]=(c[o>>2]|0)+(c[m>>2]|0)>>1;c[r>>2]=(c[q>>2]|0)+(c[n>>
;2]<<1);c[r>>2]=12431+(d[c[r>>2]>>0]<<8|d[(c[r>>2]|0)+1>>0
]);c[k>>2]=d[c[r>>2]>>0]&127;if((c[k>>2]|0)==(c[j>>2]|0))break;e=c[n>
;>2]|0;if((c[k>>2]|0)<(c[j>>2]|0)){c[o>>2]=e+1;continue}else{c[m>>2]=e;continue
}}c[q>>2]=c[r>>2];while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>
;>0)break;r=c[g>>2]|0;c[g>>2]=r+1;c[j>>2]=a[r>>0];r=(d[c[q>>2]>>
;0]&128|0)!=0;c[q>>2]=(c[q>>2]|0)+1;if(r)if((c[j>>2]|0)!=(d[c[q>>2]>>0]
x26;127|0))break a;else continue;c[l>>2]=d[c[q>>2]>>0]&127;if(d[c[q>>2]>>
0]&128|0)c[q>>2]=(c[q>>2]|0)+2;c[q>>2]=(c[q>>2]|0)+1;while(1){if((c[l>>2]|
0)<=0)break a;c[p>>2]=d[c[q>>2]>>0]<<8|d[(c[q>>2]|0)+1>>0];c[s
x3e;>2]=12431+(c[p>>2]|0);if((c[j>>2]|0)==(d[c[s>>2]>>0]&127|0))break;c[l>
;>2]=(c[l>>2]|0)+-1;c[q>>2]=(c[q>>2]|0)+2}c[q>>2]=c[s>>2]}if((d[c[q>
x3e;2]>>0]&128|0)==0?d[(c[q>>2]|0)+1>>0]&128|0:0){c[f>>2]=d[(c[q>>2]|
0)+2>>0]<<8|d[(c[q>>2]|0)+3>>0];s=c[f>>2]|0;i=t;return s|0}}while(0);c[f>
x3e;2]=0;s=c[f>>2]|0;i=t;return s|0}function hr(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;w=i;i=i+144|0;h=w+128|0;j=w+124|0;k=w+120|0;l=w+116|0;m=w+112|0;n=w+108|0;p=w+104|0;q
=w+64|0;r=w+24|0;u=w+16|0;o=w+12|0;t=w+8|0;v=w+4|0;s=w;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>
;2]=e;c[m>>2]=f;c[n>>2]=g;f=q;e=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(e|0));c[(c[j>
x3e;2]|0)+16>>2]=0;c[(c[j>>2]|0)+20>>2]=0;b=hc(c[h>>2]|0,8,0,(c[k>>2]|0)+10|0,
0,p)|0;c[(c[j>>2]|0)+20>>2]=b;if(c[p>>2]|0){v=c[p>>2]|0;i=w;return v|0}c[t>>2]=
c[(c[j>>2]|0)+20>>2];c[u>>2]=0;while(1){if((c[u>>2]|0)>>>0>=(c[k>
;>2]|0)>>>0)break;c[s>>2]=Ya[c[l>>2]&127](c[n>>2]|0,c[u>>2]|0)|
0;if(c[s>>2]|0){ir(c[s>>2]|0,c[u>>2]|0,r,q);c[v>>2]=fr(c[s>>2]|0)|0;if(c[v>
;>2]&2147483647|0){jr(c[v>>2]|0,q);c[c[t>>2]>>2]=c[v>>2];c[(c[t>>2]|
0)+4>>2]=c[u>>2];c[t>>2]=(c[t>>2]|0)+8}if(c[m>>2]|0)Ra[c[m>>2]&
7](c[n>>2]|0,c[s>>2]|0)}c[u>>2]=(c[u>>2]|0)+1}c[u>>2]=0;while(1){if((c[u>
x3e;2]|0)>>>0>=10)break;if((c[q+(c[u>>2]<<2)>>2]|0)==1){c[c[t>>2]>
;>2]=c[5252+(c[u>>2]<<2)>>2];c[(c[t>>2]|0)+4>>2]=c[r+(c[u>>2]
x3c;<2)>>2];c[t>>2]=(c[t>>2]|0)+8}c[u>>2]=(c[u>>2]|0)+1}c[o>>2]=((
c[t>>2]|0)-(c[(c[j>>2]|0)+20>>2]|0)|0)/8|0;if(!(c[o>>2]|0)){Fb(c[h>>2]|0,c[(c[
j>>2]|0)+20>>2]|0);c[(c[j>>2]|0)+20>>2]=0;if(!(c[p>>2]|0))c[p>>2]=163
}else{if((c[o>>2]|0)>>>0<(((c[k>>2]|0)>>>0)/2|0)>>>0){v=hc
(c[h>>2]|0,8,c[k>>2]|0,c[o>>2]|0,c[(c[j>>2]|0)+20>>2]|0,p)|0;c[(c[j>>
;2]|0)+20>>2]=v;c[p>>2]=0}Bs(c[(c[j>>2]|0)+20>>2]|0,c[o>>2]|0,8,111)}c[(c[j>
;>2]|0)+16>>2]=c[o>>2];v=c[p>>2]|0;i=w;return v|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,l=0,m=0;m=i;i=i+32|0;f=m+16|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m;c[f>>2]=a;c[g>>2]=b;c[h
>>2]=d;c[j>>2]=e;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=10){l=7;break
}e=(Kr(67222+(c[5212+(c[k>>2]<<2)>>2]|0)|0,c[f>>2]|0)|0)==0;d=c[k>>2]|0;if(e)break
;c[k>>2]=d+1}if((l|0)==7){i=m;return}if(c[(c[j>>2]|0)+(d<<2)>>2]|0){i=m;return}c[(c[j>
;>2]|0)+(c[k>>2]<<2)>>2]=1;c[(c[h>>2]|0)+(c[k>>2]<<2)>>
;2]=c[g>>2];i=m;return}function jr(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;d=h+8|0;e=h+4|0;f=h;c[d>
x3e;2]=a;c[e>>2]=b;c[f>>2]=0;while(1){if((c[f>>2]|0)>>>0>=10){g=6;break}b=c[f
x3e;>2]|0;if((c[d>>2]|0)==(c[5252+(c[f>>2]<<2)>>2]|0))break;c[f>>2]=b+1}if
((g|0)==6){i=h;return}c[(c[e>>2]|0)+(b<<2)>>2]=2;i=h;return}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;j=i;i=i+32|0;d=j+24|0;l=j+20|0;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[l>>2]=a;c[k>>
;2]=b;c[e>>2]=c[l>>2];c[f>>2]=c[k>>2];c[g>>2]=c[c[e>>2]>>2
]&2147483647;c[h>>2]=c[c[f>>2]>>2]&2147483647;do if((c[g>>2]|0)==(c[h>>
;2]|0)){if((c[c[e>>2]>>2]|0)>>>0>(c[c[f>>2]>>2]|0)>>>
0){c[d>>2]=1;break}if((c[c[e>>2]>>2]|0)>>>0<(c[c[f>>2]>>2]|
0)>>>0){c[d>>2]=-1;break}else{c[d>>2]=0;break}}else{if((c[g>>2]|0)>>>
;0>(c[h>>2]|0)>>>0){c[d>>2]=1;break}if((c[g>>2]|0)>>>0<(c[
h>>2]|0)>>>0){c[d>>2]=-1;break}else{c[d>>2]=0;break}}while(0);i=j;return c[d>
x3e;2]|0}function lr(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;m=i;i=i+32|0;d=m+28|0;n=m+24|0;e=m+20|0;j=m+16
|0;g=m+12|0;h=m+8|0;k=m+4|0;f=m;c[n>>2]=a;c[e>>2]=b;c[k>>2]=0;c[j>>2]=c[(c[n>>
2]|0)+20>>2];c[g>>2]=(c[j>>2]|0)+(c[(c[n>>2]|0)+16>>2]<<3)+-8;while(
1){if((c[j>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[h>>2]=(c[j>
x3e;2]|0)+((((c[g>>2]|0)-(c[j>>2]|0)|0)/8|0)>>1<<3);a=c[h>>2]|0;if((c[c[h>
;>2]>>2]|0)==(c[e>>2]|0)){l=4;break}c[f>>2]=c[a>>2]&2147483647;if((c[f>
x3e;2]|0)==(c[e>>2]|0))c[k>>2]=c[h>>2];if((c[j>>2]|0)==(c[g>>2]|0))break;a=c[h
>>2]|0;if((c[f>>2]|0)>>>0<(c[e>>2]|0)>>>0){c[j>>2]=a+
8;continue}else{c[g>>2]=a+-8;continue}}if((l|0)==4)c[k>>2]=a;if(c[k>>2]|0){c[d>>2]=c[(c[
k>>2]|0)+4>>2];n=c[d>>2]|0;i=m;return n|0}else{c[d>>2]=0;n=c[d>>2]|0;i=m;return
n|0}return 0}function mr(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;o=i;i=i+48|0;d=o+32|0;e=o+28|0;m=o+24
|0;g=o+20|0;l=o+16|0;j=o+12|0;k=o+8|0;h=o+4|0;f=o;c[d>>2]=a;c[e>>2]=b;c[m>>2]=0;c[g>>2]=(
c[c[e>>2]>>2]|0)+1;c[l>>2]=0;c[j>>2]=c[(c[d>>2]|0)+16>>2];while(1){if
((c[l>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;c[k>>2]=(c[l>>
;2]|0)+(((c[j>>2]|0)-(c[l>>2]|0)|0)>>>1);c[h>>2]=(c[(c[d>>2]|0)+20>
x3e;2]|0)+(c[k>>2]<<3);a=c[h>>2]|0;if((c[c[h>>2]>>2]|0)==(c[g>>2]|0)){
n=4;break}c[f>>2]=c[a>>2]&2147483647;if((c[f>>2]|0)==(c[g>>2]|0))c[m>>2]=
c[(c[h>>2]|0)+4>>2];a=c[k>>2]|0;if((c[f>>2]|0)>>>0<(c[g>>2
]|0)>>>0){c[l>>2]=a+1;continue}else{c[j>>2]=a;continue}}if((n|0)==4){c[m>>2]=c[a+4
x3e;>2];l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}if(c[m>
x3e;2]|0){l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}c[g>>2]=
0;if((c[l>>2]|0)>>>0>=(c[(c[d>>2]|0)+16>>2]|0)>>>0){l=c[g>
x3e;2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>>2]|0;i=o;return n|0}c[h>>2]=(c[(c[d>>2]|
0)+20>>2]|0)+(c[l>>2]<<3);c[m>>2]=c[(c[h>>2]|0)+4>>2];c[g>>
;2]=c[c[h>>2]>>2]&2147483647;l=c[g>>2]|0;n=c[e>>2]|0;c[n>>2]=l;n=c[m>
;>2]|0;i=o;return n|0}function nr(a){a=a|0;var d=0,e=0;e=i;i=i+16|0;d=e;c[d>>2]=a;c[d>>2]=(c[d>>
;2]|0)>>>0>=258?0:a;i=e;return 67307+(b[8388+(c[d>>2]<<1)>>1]|0)|0}function or
(a){a=a|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[e>>2]=a;if((c[e>>2]|0)>>>0>=391){c[
d>>2]=0;a=c[d>>2]|0;i=f;return a|0}else{c[d>>2]=67307+(b[8904+(c[e>>2]<<1)>
;>1]|0);a=c[d>>2]|0;i=f;return a|0}return 0}function pr(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[f>>2]=c[f>>2];b=qc(5292,c[e>>2]|0)|0;i=d;return b|0}function
qr(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;e=h+12|0;f=h+8|0;d=h+4|0;g=h;c[f>>2]=a;c[d>>2]=b;if
(!(c[f>>2]|0)){c[e>>2]=40;g=c[e>>2]|0;i=h;return g|0}c[(c[f>>2]|0)+12>>2]=0;c[(
c[f>>2]|0)+16>>2]=c[d>>2];c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+8>>
;2]=0;c[(c[f>>2]|0)+20>>2]=0;c[(c[f>>2]|0)+24>>2]=0;c[g>>2]=fs(c[d>>
2]|0,71020)|0;if(!(c[g>>2]|0)){c[e>>2]=1;g=c[e>>2]|0;i=h;return g|0}us(c[g>>2]|0,0,2)|0;
d=ps(c[g>>2]|0)|0;c[(c[f>>2]|0)+4>>2]=d;d=c[g>>2]|0;if(c[(c[f>>2]|0)+4>
x3e;2]|0){us(d,0,0)|0;c[(c[f>>2]|0)+12>>2]=c[g>>2];c[(c[f>>2]|0)+20>>2]=25;c[(
c[f>>2]|0)+24>>2]=44;c[e>>2]=0;g=c[e>>2]|0;i=h;return g|0}else{ks(d)|0;c[e>>2]=
81;g=c[e>>2]|0;i=h;return g|0}return 0}function rr(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;m=
i;i=i+32|0;f=m+20|0;g=m+16|0;h=m+12|0;j=m+8|0;k=m+4|0;l=m;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>
x3e;2]=e;if((c[k>>2]|0)==0?(c[h>>2]|0)>>>0>(c[(c[g>>2]|0)+4>>2]|0)
x3e;>>0:0){c[f>>2]=1;a=c[f>>2]|0;i=m;return a|0}c[l>>2]=c[(c[g>>2]|0)+12>
x3e;2];if((c[(c[g>>2]|0)+8>>2]|0)!=(c[h>>2]|0))us(c[l>>2]|0,c[h>>2]|0,0)|0;c[f
>>2]=ts(c[j>>2]|0,1,c[k>>2]|0,c[l>>2]|0)|0;a=c[f>>2]|0;i=m;return a|0}function
sr(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;ks(c[(c[d>>2]|0)+12>>2]|0)|0;c[(c[d>>
;2]|0)+12>>2]=0;c[(c[d>>2]|0)+4>>2]=0;c[c[d>>2]>>2]=0;i=b;return}function tr(){
var a=0,b=0;b=i;i=i+16|0;a=b;c[a>>2]=Fs(16)|0;if(!(c[a>>2]|0)){a=c[a>>2]|0;i=b;return a|0}c[c[a>
;>2]>>2]=0;c[(c[a>>2]|0)+4>>2]=112;c[(c[a>>2]|0)+12>>2]=26;c[(c[a>
x3e;2]|0)+8>>2]=6;a=c[a>>2]|0;i=b;return a|0}function ur(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[f>>2]=c[f>>2];b=Fs(c[e>>2]|0)|0;i=d;return b|0}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;f=i;i=i+16|0;k=f+12|0;j=f+8|0;g=f+4|0;h=f;c[k>>2]=a;c[j
x3e;>2]=b;c[g>>2]=d;c[h>>2]=e;c[k>>2]=c[k>>2];c[j>>2]=c[j>>2];d
=Hs(c[h>>2]|0,c[g>>2]|0)|0;i=f;return d|0}function wr(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[f>>2]=c[f>>2];Gs(c[e>>2]|0);i=d;return}function xr(a
){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;Gs(c[d>>2]|0);i=b;return}function yr(a){a=a|0;var b=0,d=0;b=i
;i=i+16|0;d=b;c[d>>2]=c[a+60>>2];a=zr(Aa(6,d|0)|0)|0;i=b;return a|0}function zr(a){a=a|0;if(a>>>
;0>4294963200){c[(Ar()|0)>>2]=0-a;a=-1}return a|0}function Ar(){var a=0;if(!(c[18388]|0))a=73596;else a=c[(xa()|0
)+64>>2]|0;return a|0}function Br(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=i;i=i+80|0;f=g;c[b+36>>2]=47;if((c[
b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21505,c[f+8>>2]=g+12,Fa(54,f
|0)|0):0)a[b+75>>0]=-1;f=Cr(b,d,e)|0;i=g;return f|0}function Cr(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;q=i;i=i+48|0;n=q+16|0;m=q;e=q+32|0;o=a+28|0;f=c[o>>2]|0;c[e>>2]=f;p=a+20|0;f=(c[p>
;>2]|0)-f|0;c[e+4>>2]=f;c[e+8>>2]=b;c[e+12>>2]=d;k=a+60|0;l=a+44|0;b=2;f=f+d|0;while(1){if(!(
c[18388]|0)){c[n>>2]=c[k>>2];c[n+4>>2]=e;c[n+8>>2]=b;h=zr(Ka(146,n|0)|0)|0}else{Da(45,a|
0);c[m>>2]=c[k>>2];c[m+4>>2]=e;c[m+8>>2]=b;h=zr(Ka(146,m|0)|0)|0;ra(0)}if((f|0)==(h|0)){
f=6;break}if((h|0)<0){f=8;break}f=f-h|0;g=c[e+4>>2]|0;if(h>>>0<=g>>>0)if((b|0)==
2){c[o>>2]=(c[o>>2]|0)+h;j=g;b=2}else j=g;else{j=c[l>>2]|0;c[o>>2]=j;c[p>>2]=j
;j=c[e+12>>2]|0;h=h-g|0;e=e+8|0;b=b+-1|0}c[e>>2]=(c[e>>2]|0)+h;c[e+4>>2]=j-h}if((f|0)==6
){n=c[l>>2]|0;c[a+16>>2]=n+(c[a+48>>2]|0);a=n;c[o>>2]=a;c[p>>2]=a}else if((f|0
)==8){c[a+16>>2]=0;c[o>>2]=0;c[p>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else
d=d-(c[e+4>>2]|0)|0}i=q;return d|0}function Dr(a){a=a|0;if(!(c[a+68>>2]|0))Er(a);return}function Er(a){a=a|
0;return}function Fr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=i;i=i+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c
[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((zr(Ha(140,g|0)|0)|0)<0){c[e>
;>2]=-1;a=-1}else a=c[e>>2]|0;i=f;return a|0}function Gr(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;m=i;i=i+48|0;h=m+16|0;g=m;f=m+32|0;c[f>>2]=d;j=f+4|0;l=b+48|0;n=c[l>>2]|0;c[j>>2]=e-((n|0)!=0
&1);k=b+44|0;c[f+8>>2]=c[k>>2];c[f+12>>2]=n;if(!(c[18388]|0)){c[h>>2]=c[b+60>
x3e;2];c[h+4>>2]=f;c[h+8>>2]=2;f=zr(Ja(145,h|0)|0)|0}else{Da(46,b|0);c[g>>2]=c[b+60>>2];
c[g+4>>2]=f;c[g+8>>2]=2;f=zr(Ja(145,g|0)|0)|0;ra(0)}if((f|0)>=1){j=c[j>>2]|0;if(f>>
x3e;0>j>>>0){g=c[k>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-j);if(!(c[l>>
;2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else{c[b>>2]=c[b>>2
]|f&48^16;c[b+8>>2]=0;c[b+4>>2]=0}i=m;return f|0}function Hr(a){a=a|0;if(!(c[a+68>>2]|0))Er(a
);return}function Ir(a){a=a|0;var b=0;b=(Jr(a)|0)==0;return (b?a:a|32)|0}function Jr(a){a=a|0;return (a+-65|0)>>>
0<26|0}function Kr(b,c){b=b|0;c=c|0;var d=0,e=0;e=a[b>>0]|0;d=a[c>>0]|0;if(e<<24>>24
==0?1:e<<24>>24!=d<<24>>24)c=e;else{do{b=b+1|0;c=c+1|0;e=a[b>>0]|0;d=a[c>
x3e;0]|0}while(!(e<<24>>24==0?1:e<<24>>24!=d<<24>>24));c=e}return (c
&255)-(d&255)|0}function Lr(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;if(!e)c=0;else{f=a[b>>0]|0;a:do if(!(f<
;<24>>24))f=0;else while(1){e=e+-1|0;g=a[c>>0]|0;if(!(f<<24>>24==g<<24>
;>24&((e|0)!=0&g<<24>>24!=0)))break a;b=b+1|0;c=c+1|0;f=a[b>>0]|0;if(!(f<<
;24>>24)){f=0;break}}while(0);c=(f&255)-(d[c>>0]|0)|0}return c|0}function Mr(b){b=b|0;var d=0,e=0;d=b+74
|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+44|0;if((c[d>>2]|0)>>>0>(c[e>
x3e;2]|0)>>>0)Oa[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[b+28>>2]=0;c[d>
x3e;2]=0;d=c[b>>2]|0;if(d&20)if(!(d&4))d=-1;else{c[b>>2]=d|32;d=-1}else{d=c[e>>2]|0;c[b+
8>>2]=d;c[b+4>>2]=d;d=0}return d|0}function Nr(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;s=i;i=i+224|0;o=s+120|0;r=s+80|0;q=s;p=s+136|0;f=r;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(
g|0));c[o>>2]=c[e>>2];if((Or(0,d,o,q,r)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)m=_r(b)|0;else
m=0;e=c[b>>2]|0;n=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;e=b+48|0;if(!(c[e>
x3e;2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=p;j=b+28|0;c[j>>2]=p;k=b+20|0;c[k>>2]=p;c[e>
;>2]=80;l=b+16|0;c[l>>2]=p+80;f=Or(b,d,o,q,r)|0;if(h){Oa[c[b+36>>2]&63](b,0,0)|0;f=(c[k>>
;2]|0)==0?-1:f;c[g>>2]=h;c[e>>2]=0;c[l>>2]=0;c[j>>2]=0;c[k>>2]=0}}else f=Or(b,
d,o,q,r)|0;e=c[b>>2]|0;c[b>>2]=e|n;if(m|0)Er(b);e=(e&32|0)==0?f:-1}i=s;return e|0}function Or(e,f,g,j,l
){e=e|0;f=f|0;g=g|0;j=j|0;l=l|0;var m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0,y=0,z=0,A=0,B=0,D=0,E=0,F=0,G=0,H=0,I=0,
J=0,K=0,L=0,M=0,N=0,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;ia=i;i=i+624
|0;da=ia+24|0;fa=ia+16|0;ea=ia+588|0;aa=ia+576|0;ca=ia;W=ia+536|0;ha=ia+8|0;ga=ia+528|0;M=(e|0)!=0;N=W+40|0;V=N;W=W+39|0;X=ha+4|
0;Y=ea;Z=0-Y|0;$=aa+12|0;aa=aa+11|0;ba=$;O=ba-Y|0;P=-2-Y|0;Q=ba+2|0;R=da+288|0;S=ea+9|0;T=S;U=ea+8|0;m=0;o=0;n=0;y=f;a:while(1){
do if((m|0)>-1)if((o|0)>(2147483647-m|0)){c[(Ar()|0)>>2]=75;m=-1;break}else{m=o+m|0;break}while(0);f=a[y>
;>0]|0;if(!(f<<24>>24)){L=244;break}else o=y;b:while(1){switch(f<<24>>24){case 37:{
f=o;L=9;break b}case 0:{f=o;break b}default:{}}K=o+1|0;f=a[K>>0]|0;o=K}c:do if((L|0)==9)while(1){L=0;if((a[f+1>
x3e;0]|0)!=37)break c;o=o+1|0;f=f+2|0;if((a[f>>0]|0)==37)L=9;else break}while(0);w=o-y|0;if(M?(c[e>>2]&
32|0)==0:0)Pr(y,w,e)|0;if((o|0)!=(y|0)){o=w;y=f;continue}r=f+1|0;o=a[r>>0]|0;p=(o<<24>>24)+-48|0;if
(p>>>0<10){K=(a[f+2>>0]|0)==36;r=K?f+3|0:r;o=a[r>>0]|0;u=K?p:-1;n=K?1:n}else u=-1;f=o<
;<24>>24;d:do if((f&-32|0)==32){p=0;while(1){if(!(1<<f+-32&75913)){s=p;break d}p=1<<
;(o<<24>>24)+-32|p;r=r+1|0;o=a[r>>0]|0;f=o<<24>>24;if((f&-32|0)!=32){s=p;
break}}}else s=0;while(0);do if(o<<24>>24==42){o=r+1|0;f=(a[o>>0]|0)+-48|0;if(f>>>0
<10?(a[r+2>>0]|0)==36:0){c[l+(f<<2)>>2]=10;n=1;r=r+3|0;f=c[j+((a[o>>0]|0)+-48<
x3c;3)>>2]|0}else{if(n|0){m=-1;break a}if(!M){v=s;n=0;r=o;K=0;break}n=(c[g>>2]|0)+(4-1)&~(4-1);f=c[n>
;>2]|0;c[g>>2]=n+4;n=0;r=o}if((f|0)<0){v=s|8192;K=0-f|0}else{v=s;K=f}}else{p=(o<<24>>24)+-
48|0;if(p>>>0<10){f=r;o=0;do{o=(o*10|0)+p|0;f=f+1|0;p=(a[f>>0]|0)+-48|0}while(p>>>0
<10);if((o|0)<0){m=-1;break a}else{v=s;r=f;K=o}}else{v=s;K=0}}while(0);e:do if((a[r>>0]|0)==46){f=r+1|0;o=a[
f>>0]|0;if(o<<24>>24!=42){p=(o<<24>>24)+-48|0;if(p>>>0<10)
o=0;else{s=0;break}while(1){o=(o*10|0)+p|0;f=f+1|0;p=(a[f>>0]|0)+-48|0;if(p>>>0>=10){s=o;break e}}}
f=r+2|0;o=(a[f>>0]|0)+-48|0;if(o>>>0<10?(a[r+3>>0]|0)==36:0){c[l+(o<<2)>
x3e;2]=10;s=c[j+((a[f>>0]|0)+-48<<3)>>2]|0;f=r+4|0;break}if(n|0){m=-1;break a}if(M){J=(c[g>
x3e;2]|0)+(4-1)&~(4-1);s=c[J>>2]|0;c[g>>2]=J+4}else s=0}else{s=-1;f=r}while(0);t=0;while(1){o=(a[f>
;>0]|0)+-65|0;if(o>>>0>57){m=-1;break a}p=f+1|0;o=a[71023+(t*58|0)+o>>0]|0;r=o&255;if((r
+-1|0)>>>0<8){f=p;t=r}else{J=p;break}}if(!(o<<24>>24)){m=-1;break}p=(u|0)>-1;do if(
o<<24>>24==19)if(p){m=-1;break a}else L=52;else{if(p){c[l+(u<<2)>>2]=r;H=j+(u<<
;3)|0;I=c[H+4>>2]|0;L=ca;c[L>>2]=c[H>>2];c[L+4>>2]=I;L=52;break}if(!M){m=0;break a}Rr(ca
,r,g)}while(0);if((L|0)==52?(L=0,!M):0){o=w;y=J;continue}u=a[f>>0]|0;u=(t|0)!=0&(u&15|0)==3?u&-33:u;p=v
&-65537;I=(v&8192|0)==0?v:p;f:do switch(u|0){case 110:switch(t|0){case 0:{c[c[ca>>2]>>2]=m;o=w;y=J
;continue a}case 1:{c[c[ca>>2]>>2]=m;o=w;y=J;continue a}case 2:{o=c[ca>>2]|0;c[o>>2]=m;c
[o+4>>2]=((m|0)<0)<<31>>31;o=w;y=J;continue a}case 3:{b[c[ca>>2]>>1]=m;o=
w;y=J;continue a}case 4:{a[c[ca>>2]>>0]=m;o=w;y=J;continue a}case 6:{c[c[ca>>2]>>2]=m;o=
w;y=J;continue a}case 7:{o=c[ca>>2]|0;c[o>>2]=m;c[o+4>>2]=((m|0)<0)<<31>>
31;o=w;y=J;continue a}default:{o=w;y=J;continue a}}case 112:{t=I|8;s=s>>>0>8?s:8;u=120;L=64;break}case 88:case
120:{t=I;L=64;break}case 111:{p=ca;o=c[p>>2]|0;p=c[p+4>>2]|0;if((o|0)==0&(p|0)==0)f=N;else{f=N;do{f=f+-
1|0;a[f>>0]=o&7|48;o=Os(o|0,p|0,3)|0;p=C}while(!((o|0)==0&(p|0)==0))}if(!(I&8)){o=I;t=0;r=71503;L=77}else
{t=V-f|0;o=I;s=(s|0)>(t|0)?s:t+1|0;t=0;r=71503;L=77}break}case 105:case 100:{o=ca;f=c[o>>2]|0;o=c[o+4>>
2]|0;if((o|0)<0){f=Ls(0,0,f|0,o|0)|0;o=C;p=ca;c[p>>2]=f;c[p+4>>2]=o;p=1;r=71503;L=76;break f}if(!(I&
;2048)){r=I&1;p=r;r=(r|0)==0?71503:71505;L=76}else{p=1;r=71504;L=76}break}case 117:{o=ca;f=c[o>>2]|0;o=c[o+4>
;>2]|0;p=0;r=71503;L=76;break}case 99:{a[W>>0]=c[ca>>2];f=W;u=1;w=0;v=71503;o=N;break}case 109:{o=Tr(c[(
Ar()|0)>>2]|0)|0;L=82;break}case 115:{o=c[ca>>2]|0;o=o|0?o:73405;L=82;break}case 67:{c[ha>>2]=c[ca
>>2];c[X>>2]=0;c[ca>>2]=ha;f=ha;s=-1;L=86;break}case 83:{f=c[ca>>2]|0;if(!s){Vr(e,32,K,0
,I);f=0;L=97}else L=86;break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{q=+h[ca>>3];c[fa>
;>2]=0;h[k>>3]=q;if((c[k+4>>2]|0)>=0)if(!(I&2048)){H=I&1;G=H;H=(H|0)==0?73413:73418}else
{G=1;H=73415}else{q=-q;G=1;H=73412}h[k>>3]=q;F=c[k+4>>2]&2146435072;do if(F>>>0<2146435072
|(F|0)==2146435072&0<0){x=+Yr(q,fa)*2.0;o=x!=0.0;if(o)c[fa>>2]=(c[fa>>2]|0)+-1;D=u|32;if((D|0)==97
){v=u&32;y=(v|0)==0?H:H+9|0;w=G|2;f=12-s|0;do if(!(s>>>0>11|(f|0)==0)){q=8.0;do{f=f+-1|0;q=q*16.0}while
((f|0)!=0);if((a[y>>0]|0)==45){q=-(q+(-x-q));break}else{q=x+q-q;break}}else q=x;while(0);o=c[fa>>2]|0;f=(o|0
)<0?0-o|0:o;f=Sr(f,((f|0)<0)<<31>>31,$)|0;if((f|0)==($|0)){a[aa>>0]=48;f=aa}a[f+-1>
x3e;0]=(o>>31&2)+43;t=f+-2|0;a[t>>0]=u+15;r=(s|0)<1;p=(I&8|0)==0;o=ea;while(1){H=~~q;f=o+1|0;
a[o>>0]=d[71487+H>>0]|v;q=(q-+(H|0))*16.0;do if((f-Y|0)==1){if(p&(r&q==0.0))break;a[f>>0
]=46;f=o+2|0}while(0);if(!(q!=0.0))break;else o=f}p=t;s=(s|0)!=0&(P+f|0)<(s|0)?Q+s-p|0:O-p+f|0;r=s+w|0;Vr(e,32,K,r,I);
if(!(c[e>>2]&32))Pr(y,w,e)|0;Vr(e,48,K,r,I^65536);o=f-Y|0;if(!(c[e>>2]&32))Pr(ea,o,e)|0;f=ba-p|0;Vr
(e,48,s-(o+f)|0,0,0);if(!(c[e>>2]&32))Pr(t,f,e)|0;Vr(e,32,K,r,I^8192);f=(r|0)<(K|0)?K:r;break}f=(s|0)<0
?6:s;if(o){o=(c[fa>>2]|0)+-28|0;c[fa>>2]=o;q=x*268435456.0}else{q=x;o=c[fa>>2]|0}F=(o|0)<0?da
:R;E=F;o=F;do{B=~~q>>>0;c[o>>2]=B;o=o+4|0;q=(q-+(B>>>0))*1.0e9}while(q!=0.0);p=o;o=c[fa
x3e;>2]|0;if((o|0)>0){s=F;while(1){t=(o|0)>29?29:o;r=p+-4|0;do if(r>>>0<s>>>0)
r=s;else{o=0;do{B=Ps(c[r>>2]|0,0,t|0)|0;B=Ms(B|0,C|0,o|0,0)|0;o=C;A=$s(B|0,o|0,1e9,0)|0;c[r>>2]=A;o=_s(B|0,o
|0,1e9,0)|0;r=r+-4|0}while(r>>>0>=s>>>0);if(!o){r=s;break}r=s+-4|0;c[r>>2]=o}while(
0);while(1){if(p>>>0<=r>>>0)break;o=p+-4|0;if(!(c[o>>2]|0))p=o;else break}o=(c[fa
x3e;>2]|0)-t|0;c[fa>>2]=o;if((o|0)>0)s=r;else break}}else r=F;if((o|0)<0){y=((f+25|0)/9|0)+1|0;z=(D|0)==
102;v=r;while(1){w=0-o|0;w=(w|0)>9?9:w;do if(v>>>0<p>>>0){o=(1<<w)+-1|0;s=1e9
x3e;>>w;r=0;t=v;do{B=c[t>>2]|0;c[t>>2]=(B>>>w)+r;r=_(B&o,s)|0;t=t+4|0}while(t
x3e;>>0<p>>>0);o=(c[v>>2]|0)==0?v+4|0:v;if(!r){r=o;break}c[p>>2]=r;r=o;p=p+4|0
}else r=(c[v>>2]|0)==0?v+4|0:v;while(0);o=z?F:r;p=(p-o>>2|0)>(y|0)?o+(y<<2)|0:p;o=(c[fa>
x3e;2]|0)+w|0;c[fa>>2]=o;if((o|0)>=0){z=r;break}else v=r}}else z=r;do if(z>>>0<p>>
x3e;0){o=(E-z>>2)*9|0;s=c[z>>2]|0;if(s>>>0<10)break;else r=10;do{r=r*10|0;o=o+1|0}while(
s>>>0>=r>>>0)}else o=0;while(0);A=(D|0)==103;B=(f|0)!=0;r=f-((D|0)!=102?o:0)+((B&A)<
;<31>>31)|0;if((r|0)<(((p-E>>2)*9|0)+-9|0)){t=r+9216|0;r=F+4+(((t|0)/9|0)+-1024<<2)|0;t=((
t|0)%9|0)+1|0;if((t|0)<9){s=10;do{s=s*10|0;t=t+1|0}while((t|0)!=9)}else s=10;w=c[r>>2]|0;y=(w>>>0)%(
s>>>0)|0;t=(r+4|0)==(p|0);do if(t&(y|0)==0)s=z;else{x=(((w>>>0)/(s>>>0)|0)&
;1|0)==0?9007199254740992.0:9007199254740994.0;v=(s|0)/2|0;if(y>>>0<v>>>0)q=.5;else q=t&(
y|0)==(v|0)?1.0:1.5;do if(G){if((a[H>>0]|0)!=45)break;x=-x;q=-q}while(0);t=w-y|0;c[r>>2]=t;if(!(x+q!=x)){s=z
;break}D=t+s|0;c[r>>2]=D;if(D>>>0>999999999){o=z;while(1){s=r+-4|0;c[r>>2]=0;if(s>
x3e;>0<o>>>0){o=o+-4|0;c[o>>2]=0}D=(c[s>>2]|0)+1|0;c[s>>2]=D;if(D>
x3e;>0>999999999)r=s;else{v=o;r=s;break}}}else v=z;o=(E-v>>2)*9|0;t=c[v>>2]|0;if(t>>>
;0<10){s=v;break}else s=10;do{s=s*10|0;o=o+1|0}while(t>>>0>=s>>>0);s=v}while(0);D=r+4|0;
z=s;p=p>>>0>D>>>0?D:p}w=0-o|0;while(1){if(p>>>0<=z>>>0){y=
0;D=p;break}r=p+-4|0;if(!(c[r>>2]|0))p=r;else{y=1;D=p;break}}do if(A){f=(B&1^1)+f|0;if((f|0)>(o|0)&(o|0
)>-5){u=u+-1|0;f=f+-1-o|0}else{u=u+-2|0;f=f+-1|0}p=I&8;if(p|0)break;do if(y){p=c[D+-4>>2]|0;if(!p){r=9;break
}if(!((p>>>0)%10|0)){s=10;r=0}else{r=0;break}do{s=s*10|0;r=r+1|0}while(!((p>>>0)%(s>>>
;0)|0|0))}else r=9;while(0);p=((D-E>>2)*9|0)+-9|0;if((u|32|0)==102){p=p-r|0;p=(p|0)<0?0:p;f=(f|0)<(p|0)?f:p;
p=0;break}else{p=p+o-r|0;p=(p|0)<0?0:p;f=(f|0)<(p|0)?f:p;p=0;break}}else p=I&8;while(0);v=f|p;s=(v|0)!=0&1;t
=(u|32|0)==102;if(t){o=(o|0)>0?o:0;u=0}else{r=(o|0)<0?w:o;r=Sr(r,((r|0)<0)<<31>>31,$)|0;if((ba
-r|0)<2)do{r=r+-1|0;a[r>>0]=48}while((ba-r|0)<2);a[r+-1>>0]=(o>>31&2)+43;E=r+-2|0;a
[E>>0]=u;o=ba-E|0;u=E}w=G+1+f+s+o|0;Vr(e,32,K,w,I);if(!(c[e>>2]&32))Pr(H,G,e)|0;Vr(e,48,K,w,I^65536);do
if(t){r=z>>>0>F>>>0?F:z;o=r;do{p=Sr(c[o>>2]|0,0,S)|0;do if((o|0)==(r|0)){if((p|0)!=(
S|0))break;a[U>>0]=48;p=U}else{if(p>>>0<=ea>>>0)break;Ns(ea|0,48,p-Y|0)|0;do p=p+-1
|0;while(p>>>0>ea>>>0)}while(0);if(!(c[e>>2]&32))Pr(p,T-p|0,e)|0;o=o+4|0}while
(o>>>0<=F>>>0);do if(v|0){if(c[e>>2]&32|0)break;Pr(73447,1,e)|0}while(0);if((f
|0)>0&o>>>0<D>>>0){p=o;while(1){o=Sr(c[p>>2]|0,0,S)|0;if(o>>>
;0>ea>>>0){Ns(ea|0,48,o-Y|0)|0;do o=o+-1|0;while(o>>>0>ea>>>0)}if(!(c[e
x3e;>2]&32))Pr(o,(f|0)>9?9:f,e)|0;p=p+4|0;o=f+-9|0;if(!((f|0)>9&p>>>0<D>>
x3e;0)){f=o;break}else f=o}}Vr(e,48,f+9|0,9,0)}else{t=y?D:z+4|0;if((f|0)>-1){s=(p|0)==0;r=z;do{o=Sr(c[r>>2]|0,0,S
)|0;if((o|0)==(S|0)){a[U>>0]=48;o=U}do if((r|0)==(z|0)){p=o+1|0;if(!(c[e>>2]&32))Pr(o,1,e)|0;if(s&(
f|0)<1){o=p;break}if(c[e>>2]&32|0){o=p;break}Pr(73447,1,e)|0;o=p}else{if(o>>>0<=ea>
x3e;>0)break;Ns(ea|0,48,o+Z|0)|0;do o=o+-1|0;while(o>>>0>ea>>>0)}while(0);p=T-o|0;if(!(c
[e>>2]&32))Pr(o,(f|0)>(p|0)?p:f,e)|0;f=f-p|0;r=r+4|0}while(r>>>0<t>>>0&
;(f|0)>-1)}Vr(e,48,f+18|0,18,0);if(c[e>>2]&32|0)break;Pr(u,ba-u|0,e)|0}while(0);Vr(e,32,K,w,I^8192);f=(w|0)
x3c;(K|0)?K:w}else{t=(u&32|0)!=0;s=q!=q|0.0!=0.0;o=s?0:G;r=o+3|0;Vr(e,32,K,r,p);f=c[e>>2]|0;if(!(f&32)){Pr(H
,o,e)|0;f=c[e>>2]|0}if(!(f&32))Pr(s?(t?73439:73443):t?73431:73435,3,e)|0;Vr(e,32,K,r,I^8192);f=(r|0)<(K|0)?K
:r}while(0);o=f;y=J;continue a}default:{f=y;p=I;u=s;w=0;v=71503;o=N}}while(0);g:do if((L|0)==64){p=ca;o=c[p>>2]|0;p=c[
p+4>>2]|0;r=u&32;if(!((o|0)==0&(p|0)==0)){f=N;do{f=f+-1|0;a[f>>0]=d[71487+(o&15)>>0
]|r;o=Os(o|0,p|0,4)|0;p=C}while(!((o|0)==0&(p|0)==0));L=ca;if((t&8|0)==0|(c[L>>2]|0)==0&(c[L+4>>
;2]|0)==0){o=t;t=0;r=71503;L=77}else{o=t;t=2;r=71503+(u>>4)|0;L=77}}else{f=N;o=t;t=0;r=71503;L=77}}else if((L|0)==76){
f=Sr(f,o,N)|0;o=I;t=p;L=77}else if((L|0)==82){L=0;I=Ur(o,0,s)|0;H=(I|0)==0;f=o;u=H?s:I-o|0;w=0;v=71503;o=H?o+s|0:I}else if((L|0)==
86){L=0;p=0;o=0;t=f;while(1){r=c[t>>2]|0;if(!r)break;o=Wr(ga,r)|0;if((o|0)<0|o>>>0>(s-p|0)>
;>>0)break;p=o+p|0;if(s>>>0>p>>>0)t=t+4|0;else break}if((o|0)<0){m=-1;break a}
Vr(e,32,K,p,I);if(!p){f=0;L=97}else{r=0;while(1){o=c[f>>2]|0;if(!o){f=p;L=97;break g}o=Wr(ga,o)|0;r=o+r|0;if((r|0)>
;(p|0)){f=p;L=97;break g}if(!(c[e>>2]&32))Pr(ga,o,e)|0;if(r>>>0>=p>>>0){f=p;L=
97;break}else f=f+4|0}}}while(0);if((L|0)==97){L=0;Vr(e,32,K,f,I^8192);o=(K|0)>(f|0)?K:f;y=J;continue}if((L|0)==77){L=0;p=(
s|0)>-1?o&-65537:o;o=ca;o=(c[o>>2]|0)!=0|(c[o+4>>2]|0)!=0;if((s|0)!=0|o){u=(o&1^1)+(V-f)|0;u=(
s|0)>(u|0)?s:u;w=t;v=r;o=N}else{f=N;u=0;w=t;v=r;o=N}}t=o-f|0;r=(u|0)<(t|0)?t:u;s=w+r|0;o=(K|0)<(s|0)?s:K;Vr(e,32,
o,s,p);if(!(c[e>>2]&32))Pr(v,w,e)|0;Vr(e,48,o,s,p^65536);Vr(e,48,r,t,0);if(!(c[e>>2]&32))Pr(f,t,e)|
0;Vr(e,32,o,s,p^8192);y=J}h:do if((L|0)==244)if(!e)if(n){m=1;while(1){n=c[l+(m<<2)>>2]|0;if(!n)break;Rr(j+(m
<<3)|0,n,g);m=m+1|0;if((m|0)>=10){m=1;break h}}if((m|0)<10)while(1){if(c[l+(m<<2)>>2]|0){
m=-1;break h}m=m+1|0;if((m|0)>=10){m=1;break}}else m=1}else m=0;while(0);i=ia;return m|0}function Pr(b,d,e){b=b|0;d=d|0;e=e
|0;var f=0,g=0,h=0,i=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(Qr(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((
h|0)==5){i=e+20|0;f=c[i>>2]|0;h=f;if((g-f|0)>>>0<d>>>0){f=Oa[c[e+36>>2]
x26;63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){f=d;while(1){if(!f){g=h;f=0;break b}g=f+-1|0;if((a[b+g>>
;0]|0)==10)break;else f=g}if((Oa[c[e+36>>2]&63](e,b,f)|0)>>>0<f>>>0)break a;d=
d-f|0;b=b+f|0;g=c[i>>2]|0}else{g=h;f=0}while(0);Ss(g|0,b|0,d|0)|0;c[i>>2]=(c[i>>2]|0)+d;f=f+d|0}while
(0);return f|0}function Qr(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if
(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;d=c[b+44>>2]|0;c[b+28>>2]=d;c[b+20>>2]=d
;c[b+16>>2]=d+(c[b+48>>2]|0);d=0}else{c[b>>2]=d|32;d=-1}return d|0}function Rr(a,b,d){a=a|0;b=b|0;
d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b
=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e
x3e;>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break
a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4
x3e;>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d
x3e;>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f
x3e;>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((
e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>
;>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1
);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>
;2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;
c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&
;~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1
);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function Sr(b,
c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295)while(1){e=$s(b
|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e|48;e=_s(b|0,c|0,10,0)|0;if(c>>>0>9|(c|0)==9&b>>
x3e;0>4294967295){b=e;c=C}else{b=e;break}}if(b)while(1){d=d+-1|0;a[d>>0]=(b>>>0)%10|0|48;if(b>
;>>0<10)break;else b=(b>>>0)/10|0}return d|0}function Tr(b){b=b|0;var c=0,e=0;c=0;while(1){if((d[71513
+c>>0]|0)==(b|0)){e=2;break}c=c+1|0;if((c|0)==87){c=87;b=71601;e=5;break}}if((e|0)==2)if(!c)b=71601;else{b=71601;e=5}if
((e|0)==5)while(1){e=b;while(1){b=e+1|0;if(!(a[e>>0]|0))break;else e=b}c=c+-1|0;if(!c)break;else e=5}return b|0}function
Ur(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if
((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5
;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){g=d&255;if((a[b>>0]|0)!=g<<24
>>24){f=_(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144
)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e
){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}while(
0);return (e|0?b:0)|0}function Vr(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;j=i;i=i+256|0;h=j;do if((d|0)>(e
|0)&(f&73728|0)==0){f=d-e|0;Ns(h|0,b|0,(f>>>0>256?256:f)|0)|0;b=c[a>>2]|0;g=(b&32|0
)==0;if(f>>>0>255){e=d-e|0;do{if(g){Pr(h,256,a)|0;b=c[a>>2]|0}f=f+-256|0;g=(b&32|0)==0}while(
f>>>0>255);if(g)f=e&255;else break}else if(!g)break;Pr(h,f,a)|0}while(0);i=j;return}function Wr(a,b){a=
a|0;b=b|0;if(!a)a=0;else a=Xr(a,b,0)|0;return a|0}function Xr(b,d,e){b=b|0;d=d|0;e=e|0;do if(b){if(d>>>0<128
){a[b>>0]=d;b=1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0
]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224
;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>
;0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>
x3e;0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(Ar()|0)>>2]=84;b=-1;break}}
else b=1;while(0);return b|0}function Yr(a,b){a=+a;b=b|0;return +(+Zr(a,b))}function Zr(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[k>
;>3]=a;d=c[k>>2]|0;e=c[k+4>>2]|0;f=Os(d|0,e|0,52)|0;f=f&2047;switch(f|0){case 0:{if(a!=0.0){a=+Zr(
a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>
x3e;2]=f+-1022;c[k>>2]=d;c[k+4>>2]=e&-2146435073|1071644672;a=+h[k>>3]}}return +a}function _r
(a){a=a|0;return 0}function $r(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)d=0;else{f=d;e=b;while(1){b=a[e>>0]|0;d
=a[c>>0]|0;if(b<<24>>24!=d<<24>>24)break;f=f+-1|0;if(!f){d=0;break a}else{e=e+
1|0;c=c+1|0}}d=(b&255)-(d&255)|0}while(0);return d|0}function as(a,b,c){a=a|0;b=b|0;c=c|0;bs(a,b,c)|0;return a|0}function
bs(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;do if(!((g^b)&3)){f=(e|0)!=0;a:do if(f&(g&3|0)!=0)while(1){g=a[d
>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0;if(!(f&
;(d&3|0)!=0)){h=5;break}}else h=5;while(0);if((h|0)==5)if(!f){e=0;break}if(a[d>>0]|0){b:do if(e>>>
0>3)do{f=c[d>>2]|0;if((f&-2139062144^-2139062144)&f+-16843009|0)break b;c[b>>2]=f;e=e+-4|0;d=
d+4|0;b=b+4|0}while(e>>>0>3);while(0);h=11}}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a
[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|
0}while(0);Ns(b|0,0,e|0)|0;return b|0}function cs(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=b;b=f;while(1){if(!(
a[d>>0]|0))break a;d=d+1|0;b=d;if(!(b&3)){b=d;e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if
(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;
while((a[b>>0]|0)!=0)}return b-f|0}function ds(a,b){a=a|0;b=b|0;es(a,b)|0;return a|0}function es(b,d){b=b|0;d=d|0;var
e=0,f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24
))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){
f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break
;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+
1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function fs(b,d){b=b|0;
d=d|0;var e=0,f=0,g=0,h=0;g=i;i=i+32|0;f=g+16|0;e=g;if(Ur(73449,a[d>>0]|0,4)|0){h=gs(d)|0|32768;c[e>>2]=b;c[
e+4>>2]=h;c[e+8>>2]=438;e=zr(Ca(5,e|0)|0)|0;if((e|0)>=0){b=js(e,d)|0;if(!b){c[f>>2]=e;Aa(6,f|
0)|0;b=0}}else b=0}else{c[(Ar()|0)>>2]=22;b=0}i=g;return b|0}function gs(b){b=b|0;var c=0,d=0,e=0;d=(hs(b,43)|0)==0;c=
a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(hs(b,120)|0)==0;d=e?d:d|128;b=(hs(b,101)|0)==0;b=b?d:d|524288
;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==
97?b|1024:b)|0}function hs(b,c){b=b|0;c=c|0;b=is(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?
b:0)|0}function is(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(cs(b)|0)|0;else{if(b&3){e=d&255;do{g=
a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b
=b+1|0}while((b&3|0)!=0)}f=_(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009
))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144
^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g
x3c;<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function js(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;o=i;i=i+112|0;n=o+40|0;l=o+24|0;k=o+16|0;g=o;m=o+52|0;f=a[d>>0]|0;if(Ur(73449
,f<<24>>24,4)|0){e=Fs(1144)|0;if(!e)e=0;else{h=e;j=h+112|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(
j|0));if(!(hs(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(hs(d,101)|0){c[g>>2]=b;c[g+4>
x3e;2]=2;c[g+8>>2]=1;sa(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[k>>2]=b;c[k
+4>>2]=3;f=sa(221,k|0)|0;if(!(f&1024)){c[l>>2]=b;c[l+4>>2]=4;c[l+8>>2]=f|1024;sa(221
,l|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+120
;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21505,c[n+8
>>2]=m,(Fa(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=48;c[e+36>>2]=47;c[e+40>>2]=
32;c[e+12>>2]=33;if(!(c[18389]|0))c[e+76>>2]=-1;ua(73580);f=c[18394]|0;c[e+56>>2]=f;if(f|0)c[f+52
x3e;>2]=e;c[18394]=e;Ga(73580)}}else{c[(Ar()|0)>>2]=22;e=0}i=o;return e|0}function ks(a){a=a|0;var b=0,d=0,e=0;e=(
c[a>>2]&1|0)!=0;if(!e){ua(73580);d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];
b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[18394]|0)==(a|0))c[18394]=b;Ga(73580)}b=ls(a)|0;b=Ta[c[a+12>>
;2]&63](a)|0|b;d=c[a+92>>2]|0;if(d|0)Gs(d);if(!e)Gs(a);return b|0}function ls(a){a=a|0;var b=0,d=0;do if(a){if((c
[a+76>>2]|0)<=-1){b=ms(a)|0;break}d=(_r(a)|0)==0;b=ms(a)|0;if(!d)Er(a)}else{if(!(c[1356]|0))b=0;else b=ls(c[1356]|
0)|0;ua(73580);a=c[18394]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=_r(a)|0;else d=0;if((c[a+20>>2]|0)>>
;>0>(c[a+28>>2]|0)>>>0)b=ms(a)|0|b;if(d|0)Er(a);a=c[a+56>>2]|0}while((a|0)!=0);Ga(73580
)}while(0);return b|0}function ms(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;g=a+28|0;if((c[b>>2]|0)>>>
;0>(c[g>>2]|0)>>>0?(Oa[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)b=-1;else
{h=a+4|0;d=c[h>>2]|0;e=a+8|0;f=c[e>>2]|0;if(d>>>0<f>>>0)Oa[c[a+40>
x3e;2]&63](a,d-f|0,1)|0;c[a+16>>2]=0;c[g>>2]=0;c[b>>2]=0;c[e>>2]=0;c[h>>2
]=0;b=0}return b|0}function ns(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>
x3e;0>(c[a+28>>2]|0)>>>0?2:1;b=Oa[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a
+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function os(a){a=a|0;
var b=0;if((c[a+76>>2]|0)>-1){b=(_r(a)|0)==0;a=ns(a)|0}else a=ns(a)|0;return a|0}function ps(a){a=a|0;return os(a
)|0}function qs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;if((c[a+76>>2]|0)>-1){e=(_r(a)|0)==0;b=rs(a,b,d)|0;if(!e)Er(a)}else
b=rs(a,b,d)|0;return b|0}function rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>
x3e;2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(Oa[c[a+
36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>
;2]=0;if((Oa[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>
;2]=c[a>>2]&-17;b=0}}return b|0}function ss(a,b){a=a|0;b=b|0;var d=0,e=0;d=i;i=i+16|0;e=d;c[e>>2]=b;b=Nr
(c[1327]|0,a,e)|0;i=d;return b|0}function ts(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;j=_(e,d)|0;if((c[f+76
x3e;>2]|0)>-1)k=_r(f)|0;else k=0;g=f+74|0;i=a[g>>0]|0;a[g>>0]=i+255|i;g=f+4|0;i=c[g>>2]|
0;h=(c[f+8>>2]|0)-i|0;if((h|0)>0){h=h>>>0<j>>>0?h:j;Ss(b|0,i|0,h|0)|0;c[g>
;>2]=i+h;b=b+h|0;g=j-h|0}else g=j;a:do if(!g)l=13;else{i=f+32|0;h=g;while(1){if(Mr(f)|0){e=h;break}g=Oa[c[i>>2]
x26;63](f,b,h)|0;if((g+1|0)>>>0<2){e=h;break}if((h|0)==(g|0)){l=13;break a}else{b=b+g|0;h=h-g|0}}if(k|0)Er(f
);e=((j-e|0)>>>0)/(d>>>0)|0}while(0);if((l|0)==13)if(k)Er(f);return e|0}function us(a,b,c){a=a|0;b
=b|0;c=c|0;return qs(a,b,c)|0}function vs(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;w=i;i=i+1056|0;u=w+1024|0;v=w;k=a[e>>0]|0;do if(k<<24>>24){t=hs(b,k<<24>>24
)|0;if(t){j=a[e+1>>0]|0;if(j<<24>>24){f=t+1|0;m=a[f>>0]|0;if(m<<24>>
24){h=a[e+2>>0]|0;if(!(h<<24>>24)){j=j&255|(k&255)<<8;b=m;g=d[t>>0]
x3c;<8|m&255;while(1){g=g&65535;if((g|0)==(j|0))break;f=f+1|0;h=a[f>>0]|0;if(!(h<<24>>
;24)){b=0;break}else{b=h;g=h&255|g<<8}}b=b<<24>>24?f+-1|0:0;break}f=t+2|0;b=a[f>>0]|
0;if(b<<24>>24){g=a[e+3>>0]|0;if(!(g<<24>>24)){h=(j&255)<<16|(k
&255)<<24|(h&255)<<8;g=(b&255)<<8|(m&255)<<16|d[t>>0]<
;<24;if((g|0)!=(h|0))do{f=f+1|0;b=a[f>>0]|0;g=(b&255|g)<<8}while(!(b<<24>>24==
0|(g|0)==(h|0)));b=b<<24>>24?f+-2|0:0;break}f=t+3|0;l=a[f>>0]|0;if(l<<24>>24){
if(!(a[e+4>>0]|0)){h=(j&255)<<16|(k&255)<<24|(h&255)<<8|g&255;b=(b
x26;255)<<8|(m&255)<<16|l&255|d[t>>0]<<24;if((b|0)==(h|0))b=l;else{g=b;do{f=f+
1|0;b=a[f>>0]|0;g=b&255|g<<8}while(!(b<<24>>24==0|(g|0)==(h|0)))}b=b<<24
x3e;>24?f+-3|0:0;break};c[u>>2]=0;c[u+4>>2]=0;c[u+8>>2]=0;c[u+12>>2]=0;c[u+16>
x3e;2]=0;c[u+20>>2]=0;c[u+24>>2]=0;c[u+28>>2]=0;b=k;g=0;while(1){if(!(a[t+g>>0]|0)){b=0;
break}f=u+(((b&255)>>>5&255)<<2)|0;c[f>>2]=c[f>>2]|1<<(b&31
);f=g+1|0;c[v+((b&255)<<2)>>2]=f;b=a[e+f>>0]|0;if(!(b<<24>>24)){n=23;break
}else g=f}a:do if((n|0)==23){b:do if(f>>>0>1){h=1;n=-1;b=0;c:while(1){m=1;while(1){d:while(1){j=1;while(1){k
=a[e+(j+n)>>0]|0;l=a[e+h>>0]|0;if(k<<24>>24!=l<<24>>24){m=h;j=k;h=l;
break d}if((j|0)==(m|0))break;j=j+1|0;h=j+b|0;if(h>>>0>=f>>>0){b=n;p=m;break c}}b=b+m|0;h=b+1
|0;if(h>>>0>=f>>>0){b=n;p=m;break c}}k=m-n|0;if((j&255)<=(h&255))break;b=m+1|0
;if(b>>>0<f>>>0){h=b;b=m;m=k}else{b=n;p=k;break c}}h=b+2|0;if(h>>>0>=f>
;>>0){p=1;break}else{n=b;b=b+1|0}}j=1;k=-1;h=0;while(1){l=h;h=1;while(1){o=l;e:while(1){l=1;while(1){n=a[e+(l+k)>
x3e;0]|0;m=a[e+j>>0]|0;if(n<<24>>24!=m<<24>>24){l=j;j=o;break e}if((l|0)==(h|0
))break;l=l+1|0;j=l+o|0;if(j>>>0>=f>>>0){j=p;break b}}o=o+h|0;j=o+1|0;if(j>>>0
>=f>>>0){j=p;break b}}h=l-k|0;if((n&255)>=(m&255)){h=j;break}j=l+1|0;if(j>>>0
x3e;=f>>>0){j=p;break b}}j=h+2|0;if(j>>>0>=f>>>0){k=h;j=p;h=1;break}else{k=h;h
=h+1|0}}}else{b=-1;k=-1;j=1;h=1}while(0);r=(k+1|0)>>>0>(b+1|0)>>>0;h=r?h:j;r=r?k:b;q=r+1|0;if
(!($r(e,e+h|0,q)|0))s=f-h|0;else{h=f-r+-1|0;s=0;h=(r>>>0>h>>>0?r:h)+1|0}n=f|63;o=(s|0)!=0;p=f
-h|0;b=t;m=0;l=t;f:while(1){j=b;do if((l-j|0)>>>0<f>>>0){k=Ur(l,0,n)|0;if(k)if((k-j|0)>
x3e;>0<f>>>0){b=0;break a}else break;else{k=l+n|0;break}}else k=l;while(0);j=a[b+g>>0]|0;if(!(
1<<(j&31)&c[u+(((j&255)>>>5&255)<<2)>>2])){b=b+f|0;m=0;l=k;continue
}t=c[v+((j&255)<<2)>>2]|0;j=f-t|0;if((f|0)!=(t|0)){b=b+(o&(m|0)!=0&j>>>0<
h>>>0?p:j)|0;m=0;l=k;continue}j=q>>>0>m>>>0?q:m;l=a[e+j>>0]|0;g:do if
(!(l<<24>>24))j=q;else{while(1){if(l<<24>>24!=(a[b+j>>0]|0))break;j=j+1|0;l=a[
e+j>>0]|0;if(!(l<<24>>24)){j=q;break g}}b=b+(j-r)|0;m=0;l=k;continue f}while(0);do{if(j>>
;>0<=m>>>0)break a;j=j+-1|0}while((a[e+j>>0]|0)==(a[b+j>>0]|0));b=b+h|0;m=s;l=k}}while
(0)}else b=0}else b=0}else b=0}else b=t}else b=0}while(0);i=w;return b|0}function ws(a){a=a|0;var b=0,c=0;c=(cs(a)|0)+1|0;b=Fs(c
)|0;if(!b)b=0;else Ss(b|0,a|0,c|0)|0;return b|0}function xs(a,b){a=a|0;b=b|0;return ys(a,b,(cs(a)|0)+1|0)|0}function ys(b,c,d){b
=b|0;c=c|0;d=d|0;var e=0;e=c&255;do{if(!d){c=0;break}d=d+-1|0;c=b+d|0}while((a[c>>0]|0)!=e<<24>>
;24);return c|0}function zs(a,b){a=a|0;b=b|0;ds(a+(cs(a)|0)|0,b)|0;return a|0}function As(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;e=a[b
>>0]|0;a:do if(!(e<<24>>24))b=0;else{g=e;f=e&255;while(1){e=a[c>>0]|0;if(!(e<
x3c;24>>24)){b=g;break a}if(g<<24>>24!=e<<24>>24?(g=Ir(f)|0,(g|0)!=(Ir(d[c>
;>0]|0)|0)):0)break;b=b+1|0;c=c+1|0;e=a[b>>0]|0;if(!(e<<24>>24)){b=0;break a}else{g=e;f=e&
;255}}b=a[b>>0]|0}while(0);g=Ir(b&255)|0;return g-(Ir(d[c>>0]|0)|0)|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,r=0;r=i;i=i+208|0;o=r+8|0;p=r;f=_(d,b)|0;n=p;c[n>>2]=1;c[n
+4>>2]=0;if(f|0){n=0-d|0;c[o+4>>2]=d;c[o>>2]=d;g=d;b=d;h=2;while(1){b=b+d+g|0;c[o+(h<<2)
x3e;>2]=b;if(b>>>0<f>>>0){m=g;g=b;h=h+1|0;b=m}else break}h=a+f+n|0;m=p+4|0;if(h>>
;>0>a>>>0){j=h;g=1;f=1;while(1){do if((g&3|0)==3){Cs(a,d,e,f,o);l=c[m>>2]|0;b=l<<
;30|(c[p>>2]|0)>>>2;c[p>>2]=b;c[m>>2]=l>>>2;f=f+2|0}else{b=f+-1|0;if
((c[o+(b<<2)>>2]|0)>>>0<(j-a|0)>>>0)Cs(a,d,e,f,o);else Es(a,d,e,p,f,0,o);
if((f|0)==1){b=c[p>>2]|0;c[m>>2]=b>>>31|c[m>>2]<<1;b=b<<1;c[p
x3e;>2]=b;f=0;break}if(b>>>0>31){g=c[p>>2]|0;c[m>>2]=g;c[p>>2]=0;b=f+-33|
0;f=g;g=0}else{f=c[m>>2]|0;g=c[p>>2]|0}c[m>>2]=g>>>(32-b|0)|f<<b;b=g<
;<b;c[p>>2]=b;f=1}while(0);g=b|1;c[p>>2]=g;b=a+d|0;if(b>>>0>=h>>>0){
a=f;break}else a=b}}else{b=a;a=1}Es(b,d,e,p,a,0,o);l=p+4|0;g=c[p>>2]|0;h=c[l>>2]|0;f=(h|0)==0;if(!((a|0)==1
x26;(g|0)==1&f)){k=h;while(1){if((a|0)<2){h=g+-1|0;do if(h){if(!(h&1)){f=0;do{f=f+1|0;h=h>>>1}while
(!(h&1|0))}else{if(f)f=32;else{if(!(k&1)){h=k;f=0}else{j=0;h=k;f=0;break}do{f=f+1|0;h=h>>>1}while(!(h
x26;1|0))}f=f+32|0}if(f>>>0>31)q=28;else{j=f;h=k}}else{f=32;q=28}while(0);if((q|0)==28){q=0;c[p>>2
]=k;c[m>>2]=0;j=f+-32|0;g=k;h=0}c[p>>2]=h<<32-j|g>>>j;c[m>>2]=h>>
;>j;b=b+n|0;h=f+a|0}else{j=g>>>30;h=a+-2|0;c[p>>2]=(g<<1&2147483646|j<<31
)^3;c[m>>2]=(j|k<<2)>>>1;Es(b+(0-(c[o+(h<<2)>>2]|0))+n|0,d,e,p,a+-1|0,1,o
);k=c[p>>2]|0;c[m>>2]=k>>>31|c[m>>2]<<1;c[p>>2]=k<<1|
1;b=b+n|0;Es(b,d,e,p,h,1,o)}g=c[p>>2]|0;k=c[l>>2]|0;f=(k|0)==0;if((h|0)==1&(g|0)==1&f)break;else a
=h}}}i=r;return}function Cs(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;p=i;i=i+240|0;o=p;c
[o>>2]=a;a:do if((e|0)>1){n=0-b|0;g=e;h=a;k=a;l=1;while(1){a=h+n|0;m=g+-2|0;j=a+(0-(c[f+(m<<2)>>
;2]|0))|0;if((Ya[d&127](k,j)|0)>-1?(Ya[d&127](k,a)|0)>-1:0){e=l;break a}e=l+1|0;h=o+(l<<2)|0;if((Ya
[d&127](j,a)|0)>-1){c[h>>2]=j;a=j;g=g+-1|0}else{c[h>>2]=a;g=m}if((g|0)<=1)break a;h=a;k=c[o
x3e;>2]|0;l=e}}else e=1;while(0);Ds(b,o,e);i=p;return}function Ds(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+
256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0>256?256:
a;Ss(e|0,c[b>>2]|0,f|0)|0;e=0;do{j=b+(e<<2)|0;e=e+1|0;Ss(c[j>>2]|0,c[b+(e<<2)>>
;2]|0,f|0)|0;c[j>>2]=(c[j>>2]|0)+f}while((e|0)!=(d|0));if((a|0)==(f|0))break a;a=a-f|0;e=c[g>>2]|0
}while(0);i=h;return}function Es(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;r=i;i=i+240|0;p=r;l=c[e>>2]|0;k=c[e+4>>2]|0;c[p>>2]=a;o=0-b|0;a:do if((k|0)!=0|(l|0)!=1?(j=a+(0-(
c[h+(f<<2)>>2]|0))|0,(Ya[d&127](j,a)|0)>=1):0){g=(g|0)==0;m=1;n=l;while(1){if(g&(f|0)>1){
e=a+o|0;g=c[h+(f+-2<<2)>>2]|0;if((Ya[d&127](e,j)|0)>-1){g=f;e=m;q=19;break a}if((Ya[d&127](e+(
0-g)|0,j)|0)>-1){g=f;e=m;q=19;break a}}e=m+1|0;c[p+(m<<2)>>2]=j;g=n+-1|0;do if(g){if(!(g&1)){a=0;do
{a=a+1|0;g=g>>>1}while(!(g&1|0))}else{if(!k)g=32;else{if(!(k&1)){a=k;g=0}else{l=0;g=n;a=0;break}do{g=g+
1|0;a=a>>>1}while(!(a&1|0))}a=g+32|0}if(a>>>0>31)q=15;else{l=a;g=n}}else{a=32;q=15}while
(0);if((q|0)==15){q=0;l=a+-32|0;g=k;k=0}n=k<<32-l|g>>>l;k=k>>>l;g=a+f|0;if(!((k|0)!=0|(n
|0)!=1)){a=j;q=19;break a}a=j+(0-(c[h+(g<<2)>>2]|0))|0;if((Ya[d&127](a,c[p>>2]|0)|0)<1){
a=j;f=g;g=0;q=18;break}else{l=j;f=g;g=1;j=a;m=e;a=l}}}else{e=1;q=18}while(0);if((q|0)==18?(g|0)==0:0){g=f;q=19}if((q|0)==19){Ds(
b,p,e);Cs(a,b,d,g,h)}i=r;return}function Fs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,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;do if(a>>>0<245){o=a>>>
;0<11?16:a+11&-8;a=o>>>3;j=c[18400]|0;b=j>>>a;if(b&3|0){b=(b&1^1)+a|0;d=73640+(
b<<1<<2)|0;e=d+8|0;f=c[e>>2]|0;g=f+8|0;h=c[g>>2]|0;do if((d|0)!=(h|0)){if(h>>
x3e;0<(c[18404]|0)>>>0)ya();a=h+12|0;if((c[a>>2]|0)==(f|0)){c[a>>2]=d;c[e>>2]=
h;break}else ya()}else c[18400]=j&~(1<<b);while(0);L=b<<3;c[f+4>>2]=L|3;L=f+L+4|0;c[L>
x3e;2]=c[L>>2]|1;L=g;return L|0}h=c[18402]|0;if(o>>>0>h>>>0){if(b|0){d=2<<
;a;d=b<<a&(d|0-d);d=(d&0-d)+-1|0;i=d>>>12&16;d=d>>>i;f=d>>>
;5&8;d=d>>>f;g=d>>>2&4;d=d>>>g;e=d>>>1&2;d=d>>
;>e;b=d>>>1&1;b=(f|i|g|e|b)+(d>>>b)|0;d=73640+(b<<1<<2)|0;e=d+8|0;g=
c[e>>2]|0;i=g+8|0;f=c[i>>2]|0;do if((d|0)!=(f|0)){if(f>>>0<(c[18404]|0)>>>
;0)ya();a=f+12|0;if((c[a>>2]|0)==(g|0)){c[a>>2]=d;c[e>>2]=f;k=c[18402]|0;break}else ya()}else{c[18400
]=j&~(1<<b);k=h}while(0);h=(b<<3)-o|0;c[g+4>>2]=o|3;e=g+o|0;c[e+4>>2]=h|1;c[e+h>
;>2]=h;if(k|0){f=c[18405]|0;b=k>>>3;d=73640+(b<<1<<2)|0;a=c[18400]|0;b=1<<b;if
(a&b){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{l=a;m=b}}else{c[
18400]=a|b;l=d+8|0;m=d}c[l>>2]=f;c[m+12>>2]=f;c[f+8>>2]=m;c[f+12>>2]=d}c[18402]=h;c[18405
]=e;L=i;return L|0}a=c[18401]|0;if(a){d=(a&0-a)+-1|0;K=d>>>12&16;d=d>>>K;J=d>>
x3e;5&8;d=d>>>J;L=d>>>2&4;d=d>>>L;b=d>>>1&2;d=d>
x3e;>b;e=d>>>1&1;e=c[73904+((J|K|L|b|e)+(d>>>e)<<2)>>2]|0;d=(c[e+4
x3e;>2]&-8)-o|0;b=e;while(1){a=c[b+16>>2]|0;if(!a){a=c[b+20>>2]|0;if(!a){j=e;break}}b=(c[a+4>
x3e;2]&-8)-o|0;L=b>>>0<d>>>0;d=L?b:d;b=a;e=L?a:e}g=c[18404]|0;if(j>>>0<
;g>>>0)ya();i=j+o|0;if(j>>>0>=i>>>0)ya();h=c[j+24>>2]|0;e=c[j+12>
;>2]|0;do if((e|0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if(!a){b=j+16|0;a=c[b>>2]|0;if(!a){n=0;break}}while(1){
e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;b=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;b=e}}if(b>>
;>0<g>>>0)ya();else{c[b>>2]=0;n=a;break}}else{f=c[j+8>>2]|0;if(f>>>0
<g>>>0)ya();a=f+12|0;if((c[a>>2]|0)!=(j|0))ya();b=e+8|0;if((c[b>>2]|0)==(j|0)){c[a>
x3e;2]=e;c[b>>2]=f;n=e;break}else ya()}while(0);do if(h|0){a=c[j+28>>2]|0;b=73904+(a<<2)|0;if((j|0
)==(c[b>>2]|0)){c[b>>2]=n;if(!n){c[18401]=c[18401]&~(1<<a);break}}else{if(h>>>
0<(c[18404]|0)>>>0)ya();a=h+16|0;if((c[a>>2]|0)==(j|0))c[a>>2]=n;else c[h+20>>
2]=n;if(!n)break}b=c[18404]|0;if(n>>>0<b>>>0)ya();c[n+24>>2]=h;a=c[j+16>>
2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else{c[n+16>>2]=a;c[a+24>>2]=n;break}while
(0);a=c[j+20>>2]|0;if(a|0)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[n+20>>2]=
a;c[a+24>>2]=n;break}}while(0);if(d>>>0<16){L=d+o|0;c[j+4>>2]=L|3;L=j+L+4|0;c[L>>
;2]=c[L>>2]|1}else{c[j+4>>2]=o|3;c[i+4>>2]=d|1;c[i+d>>2]=d;a=c[18402]|0;if(a|0){f=c[18405
]|0;b=a>>>3;e=73640+(b<<1<<2)|0;a=c[18400]|0;b=1<<b;if(a&b){a=e+8|0;b=c[a>
;>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{p=a;q=b}}else{c[18400]=a|b;p=e+8|0;q=e}c[p>
;>2]=f;c[q+12>>2]=f;c[f+8>>2]=q;c[f+12>>2]=e}c[18402]=d;c[18405]=i}L=j+8|0;return L|0}}}else
if(a>>>0<=4294967231){a=a+11|0;o=a&-8;j=c[18401]|0;if(j){d=0-o|0;a=a>>>8;if(a)if(o>
x3e;>0>16777215)i=31;else{q=(a+1048320|0)>>>16&8;E=a<<q;p=(E+520192|0)>>>
16&4;E=E<<p;i=(E+245760|0)>>>16&2;i=14-(p|q|i)+(E<<i>>>15)|0;i=o>
;>>(i+7|0)&1|i<<1}else i=0;b=c[73904+(i<<2)>>2]|0;a:do if(!b){a=0;b=0;E=86}else{f=d
;a=0;g=o<<((i|0)==31?0:25-(i>>>1)|0);h=b;b=0;while(1){e=c[h+4>>2]&-8;d=e-o|0;if(d>
x3e;>0<f>>>0)if((e|0)==(o|0)){a=h;b=h;E=90;break a}else b=h;else d=f;e=c[h+20>>2]|0;h=c[h+16+(
g>>>31<<2)>>2]|0;a=(e|0)==0|(e|0)==(h|0)?a:e;e=(h|0)==0;if(e){E=86;break}else{f=d;g=g<
x3c;(e&1^1)}}}while(0);if((E|0)==86){if((a|0)==0&(b|0)==0){a=2<<i;a=j&(a|0-a);if(!a)break;q=(a&0-a
)+-1|0;m=q>>>12&16;q=q>>>m;l=q>>>5&8;q=q>>>l;n=q>>
;>2&4;q=q>>>n;p=q>>>1&2;q=q>>>p;a=q>>>1&1;a=c[73904
+((l|m|n|p|a)+(q>>>a)<<2)>>2]|0}if(!a){i=d;j=b}else E=90}if((E|0)==90)while(1){E=0;q=(c[a+4
x3e;>2]&-8)-o|0;e=q>>>0<d>>>0;d=e?q:d;b=e?a:b;e=c[a+16>>2]|0;if(e|0){a=e;
E=90;continue}a=c[a+20>>2]|0;if(!a){i=d;j=b;break}else E=90}if((j|0)!=0?i>>>0<((c[18402]|0)-o|0)
x3e;>>0:0){f=c[18404]|0;if(j>>>0<f>>>0)ya();h=j+o|0;if(j>>>0>=h
>>>0)ya();g=c[j+24>>2]|0;d=c[j+12>>2]|0;do if((d|0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if
(!a){b=j+16|0;a=c[b>>2]|0;if(!a){s=0;break}}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;
e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<f>>>0)ya();else{c[b>>2]=0;
s=a;break}}else{e=c[j+8>>2]|0;if(e>>>0<f>>>0)ya();a=e+12|0;if((c[a>>2]|0)!=(
j|0))ya();b=d+8|0;if((c[b>>2]|0)==(j|0)){c[a>>2]=d;c[b>>2]=e;s=d;break}else ya()}while(0);do if(g|
0){a=c[j+28>>2]|0;b=73904+(a<<2)|0;if((j|0)==(c[b>>2]|0)){c[b>>2]=s;if(!s){c[18401]=c[18401
]&~(1<<a);break}}else{if(g>>>0<(c[18404]|0)>>>0)ya();a=g+16|0;if((c[a>>
;2]|0)==(j|0))c[a>>2]=s;else c[g+20>>2]=s;if(!s)break}b=c[18404]|0;if(s>>>0<b>>
;>0)ya();c[s+24>>2]=g;a=c[j+16>>2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else
{c[s+16>>2]=a;c[a+24>>2]=s;break}while(0);a=c[j+20>>2]|0;if(a|0)if(a>>>0<(c[18404
]|0)>>>0)ya();else{c[s+20>>2]=a;c[a+24>>2]=s;break}}while(0);do if(i>>>0>=
16){c[j+4>>2]=o|3;c[h+4>>2]=i|1;c[h+i>>2]=i;a=i>>>3;if(i>>>0<256
){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>
;>0<(c[18404]|0)>>>0)ya();else{u=a;v=b}}else{c[18400]=b|a;u=d+8|0;v=d}c[u>>2]=h;c[v+12>
x3e;2]=h;c[h+8>>2]=v;c[h+12>>2]=d;break}a=i>>>8;if(a)if(i>>>0>16777215)d=
31;else{K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|0)>>>16&4;L=L<<J;d
=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>>15)|0;d=i>>>(d+7|0)&1
|d<<1}else d=0;e=73904+(d<<2)|0;c[h+28>>2]=d;a=h+16|0;c[a+4>>2]=0;c[a>>2]=0;a=
c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[e>>2]=h;c[h+24>>2]=e;c[h+12>>2]=h;c[h+8
>>2]=h;break}f=i<<((d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>
x3e;2]&-8|0)==(i|0)){d=a;E=148;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d){E=145;break
}else{f=f<<1;a=d}}if((E|0)==145)if(b>>>0<(c[18404]|0)>>>0)ya();else{c[b>>
2]=h;c[h+24>>2]=a;c[h+12>>2]=h;c[h+8>>2]=h;break}else if((E|0)==148){a=d+8|0;b=c[a>>2]|0
;L=c[18404]|0;if(b>>>0>=L>>>0&d>>>0>=L>>>0){c[b+12>
;>2]=h;c[a>>2]=h;c[h+8>>2]=b;c[h+12>>2]=d;c[h+24>>2]=0;break}else ya()}}else{L=i+o|
0;c[j+4>>2]=L|3;L=j+L+4|0;c[L>>2]=c[L>>2]|1}while(0);L=j+8|0;return L|0}}}else o=-1;while(0);d=c[18402
]|0;if(d>>>0>=o>>>0){a=d-o|0;b=c[18405]|0;if(a>>>0>15){L=b+o|0;c[18405]=L
;c[18402]=a;c[L+4>>2]=a|1;c[L+a>>2]=a;c[b+4>>2]=o|3}else{c[18402]=0;c[18405]=0;c[b+4>>2]=
d|3;L=b+d+4|0;c[L>>2]=c[L>>2]|1}L=b+8|0;return L|0}a=c[18403]|0;if(a>>>0>o>>
x3e;0){J=a-o|0;c[18403]=J;L=c[18406]|0;K=L+o|0;c[18406]=K;c[K+4>>2]=J|1;c[L+4>>2]=o|3;L=L+8|0;return L|0}do
if(!(c[18518]|0)){a=Ia(30)|0;if(!(a+-1&a)){c[18520]=a;c[18519]=a;c[18521]=-1;c[18522]=-1;c[18523]=0;c[18511]=0;c[18518]=(va
(0)|0)&-16^1431655768;break}else ya()}while(0);h=o+48|0;g=c[18520]|0;i=o+47|0;f=g+i|0;g=0-g|0;j=f&g;if(j>>
x3e;0<=o>>>0){L=0;return L|0}a=c[18510]|0;if(a|0?(u=c[18508]|0,v=u+j|0,v>>>0<=u>>
;>0|v>>>0>a>>>0):0){L=0;return L|0}b:do if(!(c[18511]&4)){a=c[18406]|0;c:do if(a){d
=74048;while(1){b=c[d>>2]|0;if(b>>>0<=a>>>0?(r=d+4|0,(b+(c[r>>2]|0)|0)>
;>>0>a>>>0):0){e=d;d=r;break}d=c[d+8>>2]|0;if(!d){E=173;break c}}a=f-(c[18403]|0)&g
;if(a>>>0<2147483647){b=Ba(a|0)|0;if((b|0)==((c[e>>2]|0)+(c[d>>2]|0)|0)){if((b|0)!=(-1|0
)){h=b;f=a;E=193;break b}}else E=183}}else E=173;while(0);do if((E|0)==173?(t=Ba(0)|0,(t|0)!=(-1|0)):0){a=t;b=c[18519]|0;d=b+-1|
0;if(!(d&a))a=j;else a=j-a+(d+a&0-b)|0;b=c[18508]|0;d=b+a|0;if(a>>>0>o>>>0&a
x3e;>>0<2147483647){v=c[18510]|0;if(v|0?d>>>0<=b>>>0|d>>>0>
;v>>>0:0)break;b=Ba(a|0)|0;if((b|0)==(t|0)){h=t;f=a;E=193;break b}else E=183}}while(0);d:do if((E|0)==183){d=0-a|
0;do if(h>>>0>a>>>0&(a>>>0<2147483647&(b|0)!=(-1|0))?(w=c[18520
]|0,w=i-a+w&0-w,w>>>0<2147483647):0)if((Ba(w|0)|0)==(-1|0)){Ba(d|0)|0;break d}else{a=w+a|0;break}while(
0);if((b|0)!=(-1|0)){h=b;f=a;E=193;break b}}while(0);c[18511]=c[18511]|4;E=190}else E=190;while(0);if((((E|0)==190?j>>
x3e;0<2147483647:0)?(x=Ba(j|0)|0,y=Ba(0)|0,x>>>0<y>>>0&((x|0)!=(-1|0)&(y|0)!=(-
1|0))):0)?(z=y-x|0,z>>>0>(o+40|0)>>>0):0){h=x;f=z;E=193}if((E|0)==193){a=(c[18508]|0)+f|0;c[18508
]=a;if(a>>>0>(c[18509]|0)>>>0)c[18509]=a;i=c[18406]|0;do if(i){e=74048;do{a=c[e>>2]|
0;b=e+4|0;d=c[b>>2]|0;if((h|0)==(a+d|0)){A=a;B=b;C=d;D=e;E=203;break}e=c[e+8>>2]|0}while((e|0)!=0);if(((E|0)==
203?(c[D+12>>2]&8|0)==0:0)?i>>>0<h>>>0&i>>>0>=A>
x3e;>0:0){c[B>>2]=C+f;L=i+8|0;L=(L&7|0)==0?0:0-L&7;K=i+L|0;L=f-L+(c[18403]|0)|0;c[18406]=K;c[18403]=L;c
[K+4>>2]=L|1;c[K+L+4>>2]=40;c[18407]=c[18522];break}a=c[18404]|0;if(h>>>0<a>>
x3e;0){c[18404]=h;j=h}else j=a;d=h+f|0;a=74048;while(1){if((c[a>>2]|0)==(d|0)){b=a;E=211;break}a=c[a+8>>2]|0
;if(!a){b=74048;break}}if((E|0)==211)if(!(c[a+12>>2]&8)){c[b>>2]=h;l=a+4|0;c[l>>2]=(c[l>
x3e;2]|0)+f;l=h+8|0;l=h+((l&7|0)==0?0:0-l&7)|0;a=d+8|0;a=d+((a&7|0)==0?0:0-a&7)|0;k=l+o|0;g=a-l-o|0;c[l+4>
;>2]=o|3;do if((a|0)!=(i|0)){if((a|0)==(c[18405]|0)){L=(c[18402]|0)+g|0;c[18402]=L;c[18405]=k;c[k+4>>2]=L|1;c[k+L
>>2]=L;break}b=c[a+4>>2]|0;if((b&3|0)==1){i=b&-8;f=b>>>3;e:do if(b>>>
;0>=256){h=c[a+24>>2]|0;e=c[a+12>>2]|0;do if((e|0)==(a|0)){d=a+16|0;e=d+4|0;b=c[e>>2]|0;if(!b
){b=c[d>>2]|0;if(!b){J=0;break}}else d=e;while(1){e=b+20|0;f=c[e>>2]|0;if(f|0){b=f;d=e;continue}e=b+16|0;f=c
[e>>2]|0;if(!f)break;else{b=f;d=e}}if(d>>>0<j>>>0)ya();else{c[d>>2]=0;J=b
;break}}else{f=c[a+8>>2]|0;if(f>>>0<j>>>0)ya();b=f+12|0;if((c[b>>2]|0)!=(
a|0))ya();d=e+8|0;if((c[d>>2]|0)==(a|0)){c[b>>2]=e;c[d>>2]=f;J=e;break}else ya()}while(0);if(!h)break
;b=c[a+28>>2]|0;d=73904+(b<<2)|0;do if((a|0)!=(c[d>>2]|0)){if(h>>>0<(c[18404]|
0)>>>0)ya();b=h+16|0;if((c[b>>2]|0)==(a|0))c[b>>2]=J;else c[h+20>>2]=J;if(!J)break
e}else{c[d>>2]=J;if(J|0)break;c[18401]=c[18401]&~(1<<b);break e}while(0);e=c[18404]|0;if(J>>
x3e;0<e>>>0)ya();c[J+24>>2]=h;b=a+16|0;d=c[b>>2]|0;do if(d|0)if(d>>>0<
;e>>>0)ya();else{c[J+16>>2]=d;c[d+24>>2]=J;break}while(0);b=c[b+4>>2]|0;if(!b)break
;if(b>>>0<(c[18404]|0)>>>0)ya();else{c[J+20>>2]=b;c[b+24>>2]=J;break}}else
{d=c[a+8>>2]|0;e=c[a+12>>2]|0;b=73640+(f<<1<<2)|0;do if((d|0)!=(b|0)){if(d>>
x3e;0<j>>>0)ya();if((c[d+12>>2]|0)==(a|0))break;ya()}while(0);if((e|0)==(d|0)){c[18400]=c[18400]
x26;~(1<<f);break}do if((e|0)==(b|0))G=e+8|0;else{if(e>>>0<j>>>0)ya();b=e+8|0;if((c
[b>>2]|0)==(a|0)){G=b;break}ya()}while(0);c[d+12>>2]=e;c[G>>2]=d}while(0);a=a+i|0;g=i+g|0}a=a+4|0;
c[a>>2]=c[a>>2]&-2;c[k+4>>2]=g|1;c[k+g>>2]=g;a=g>>>3;if(g>>
;>0<256){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;do if(!(b&a)){c[18400]=b|a;K=d+8|0
;L=d}else{a=d+8|0;b=c[a>>2]|0;if(b>>>0>=(c[18404]|0)>>>0){K=a;L=b;break}ya()}while(
0);c[K>>2]=k;c[L+12>>2]=k;c[k+8>>2]=L;c[k+12>>2]=d;break}a=g>>>8;do if(!a
)d=0;else{if(g>>>0>16777215){d=31;break}K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192
|0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>
;>15)|0;d=g>>>(d+7|0)&1|d<<1}while(0);e=73904+(d<<2)|0;c[k+28>>2]=d;a=k+16
|0;c[a+4>>2]=0;c[a>>2]=0;a=c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[e>>2]=k;c[k+
24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}f=g<<((d|0)==31?0:25-(d>>>1)|0);a
=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0)==(g|0)){d=a;E=281;break}b=a+16+(f>>>31<<
;2)|0;d=c[b>>2]|0;if(!d){E=278;break}else{f=f<<1;a=d}}if((E|0)==278)if(b>>>0<(c[18404]|0
)>>>0)ya();else{c[b>>2]=k;c[k+24>>2]=a;c[k+12>>2]=k;c[k+8>>2]=k;break}else
if((E|0)==281){a=d+8|0;b=c[a>>2]|0;L=c[18404]|0;if(b>>>0>=L>>>0&d>>
x3e;0>=L>>>0){c[b+12>>2]=k;c[a>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;c[k+24
>>2]=0;break}else ya()}}else{L=(c[18403]|0)+g|0;c[18403]=L;c[18406]=k;c[k+4>>2]=L|1}while(0);L=l+8|0;return
L|0}else b=74048;while(1){a=c[b>>2]|0;if(a>>>0<=i>>>0?(F=a+(c[b+4>>2]|0)|
0,F>>>0>i>>>0):0){b=F;break}b=c[b+8>>2]|0}g=b+-47|0;d=g+8|0;d=g+((d&7|0)==0?0:
0-d&7)|0;g=i+16|0;d=d>>>0<g>>>0?i:d;a=d+8|0;e=h+8|0;e=(e&7|0)==0?0:0-e&7;L=h+e
|0;e=f+-40-e|0;c[18406]=L;c[18403]=e;c[L+4>>2]=e|1;c[L+e+4>>2]=40;c[18407]=c[18522];e=d+4|0;c[e>>2
]=27;c[a>>2]=c[18512];c[a+4>>2]=c[18513];c[a+8>>2]=c[18514];c[a+12>>2]=c[18515];c[18512]=
h;c[18513]=f;c[18515]=0;c[18514]=a;a=d+24|0;do{a=a+4|0;c[a>>2]=7}while((a+4|0)>>>0<b>>
x3e;0);if((d|0)!=(i|0)){h=d-i|0;c[e>>2]=c[e>>2]&-2;c[i+4>>2]=h|1;c[d>>2]=h;a=h>
;>>3;if(h>>>0<256){d=73640+(a<<1<<2)|0;b=c[18400]|0;a=1<<a;if(b&
;a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>>>0)ya();else{H=a;I=b}}else{c[18400]=
b|a;H=d+8|0;I=d}c[H>>2]=i;c[I+12>>2]=i;c[i+8>>2]=I;c[i+12>>2]=d;break}a=h>>>
;8;if(a)if(h>>>0>16777215)d=31;else{K=(a+1048320|0)>>>16&8;L=a<<K;J=(L+520192|
0)>>>16&4;L=L<<J;d=(L+245760|0)>>>16&2;d=14-(J|K|d)+(L<<d>>
;>15)|0;d=h>>>(d+7|0)&1|d<<1}else d=0;f=73904+(d<<2)|0;c[i+28>>2]=d;c[i+20
>>2]=0;c[g>>2]=0;a=c[18401]|0;b=1<<d;if(!(a&b)){c[18401]=a|b;c[f>>2]=i;c[i+24>
x3e;2]=f;c[i+12>>2]=i;c[i+8>>2]=i;break}e=h<<((d|0)==31?0:25-(d>>>1)|0);a=c[f>
x3e;2]|0;while(1){if((c[a+4>>2]&-8|0)==(h|0)){d=a;E=307;break}b=a+16+(e>>>31<<2)|0;d=c[b
>>2]|0;if(!d){E=304;break}else{e=e<<1;a=d}}if((E|0)==304)if(b>>>0<(c[18404]|0)>>
;>0)ya();else{c[b>>2]=i;c[i+24>>2]=a;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((E|0)==
307){a=d+8|0;b=c[a>>2]|0;L=c[18404]|0;if(b>>>0>=L>>>0&d>>>0>
;=L>>>0){c[b+12>>2]=i;c[a>>2]=i;c[i+8>>2]=b;c[i+12>>2]=d;c[i+24>>
;2]=0;break}else ya()}}}else{L=c[18404]|0;if((L|0)==0|h>>>0<L>>>0)c[18404]=h;c[18512]=h;c[18513
]=f;c[18515]=0;c[18409]=c[18518];c[18408]=-1;a=0;do{L=73640+(a<<1<<2)|0;c[L+12>>2]=L;c[L+8>
x3e;2]=L;a=a+1|0}while((a|0)!=32);L=h+8|0;L=(L&7|0)==0?0:0-L&7;K=h+L|0;L=f+-40-L|0;c[18406]=K;c[18403]=L;c[K+4>
x3e;2]=L|1;c[K+L+4>>2]=40;c[18407]=c[18522]}while(0);a=c[18403]|0;if(a>>>0>o>>>0){J
=a-o|0;c[18403]=J;L=c[18406]|0;K=L+o|0;c[18406]=K;c[K+4>>2]=J|1;c[L+4>>2]=o|3;L=L+8|0;return L|0}}c[(Ar()|0)
x3e;>2]=12;L=0;return L|0}function Gs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;if(!a)return
;d=a+-8|0;h=c[18404]|0;if(d>>>0<h>>>0)ya();a=c[a+-4>>2]|0;b=a&3;if((b|0)==1)ya
();e=a&-8;m=d+e|0;do if(!(a&1)){a=c[d>>2]|0;if(!b)return;k=d+(0-a)|0;j=a+e|0;if(k>>>0<h
x3e;>>0)ya();if((k|0)==(c[18405]|0)){a=m+4|0;b=c[a>>2]|0;if((b&3|0)!=3){q=k;g=j;break}c[18402]=j;c[a>
;>2]=b&-2;c[k+4>>2]=j|1;c[k+j>>2]=j;return}e=a>>>3;if(a>>>0<256
){b=c[k+8>>2]|0;d=c[k+12>>2]|0;a=73640+(e<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>
;0<h>>>0)ya();if((c[b+12>>2]|0)!=(k|0))ya()}if((d|0)==(b|0)){c[18400]=c[18400]&~(1<<
;e);q=k;g=j;break}if((d|0)!=(a|0)){if(d>>>0<h>>>0)ya();a=d+8|0;if((c[a>>2]|0)==(k|0
))f=a;else ya()}else f=d+8|0;c[b+12>>2]=d;c[f>>2]=b;q=k;g=j;break}f=c[k+24>>2]|0;d=c[k+12>>
;2]|0;do if((d|0)==(k|0)){b=k+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){i=0;break}}else b=d;while(1
){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>
;>0<h>>>0)ya();else{c[b>>2]=0;i=a;break}}else{e=c[k+8>>2]|0;if(e>>>0
<h>>>0)ya();a=e+12|0;if((c[a>>2]|0)!=(k|0))ya();b=d+8|0;if((c[b>>2]|0)==(k|0)){c[a>
x3e;2]=d;c[b>>2]=e;i=d;break}else ya()}while(0);if(f){a=c[k+28>>2]|0;b=73904+(a<<2)|0;if((k|0)==(c
[b>>2]|0)){c[b>>2]=i;if(!i){c[18401]=c[18401]&~(1<<a);q=k;g=j;break}}else{if(f>>>
;0<(c[18404]|0)>>>0)ya();a=f+16|0;if((c[a>>2]|0)==(k|0))c[a>>2]=i;else c[f+20>>
;2]=i;if(!i){q=k;g=j;break}}d=c[18404]|0;if(i>>>0<d>>>0)ya();c[i+24>>2]=f;a=k+16|0;
b=c[a>>2]|0;do if(b|0)if(b>>>0<d>>>0)ya();else{c[i+16>>2]=b;c[b+24>
x3e;2]=i;break}while(0);a=c[a+4>>2]|0;if(a)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[i+
20>>2]=a;c[a+24>>2]=i;q=k;g=j;break}else{q=k;g=j}}else{q=k;g=j}}else{q=d;g=e}while(0);if(q>>>
0>=m>>>0)ya();a=m+4|0;b=c[a>>2]|0;if(!(b&1))ya();if(!(b&2)){if((m|0)==(c[18406]|0)){p=(c
[18403]|0)+g|0;c[18403]=p;c[18406]=q;c[q+4>>2]=p|1;if((q|0)!=(c[18405]|0))return;c[18405]=0;c[18402]=0;return}if((m|0)==(
c[18405]|0)){p=(c[18402]|0)+g|0;c[18402]=p;c[18405]=q;c[q+4>>2]=p|1;c[q+p>>2]=p;return}g=(b&-8)+g|0;e=b
>>>3;do if(b>>>0>=256){f=c[m+24>>2]|0;a=c[m+12>>2]|0;do if((a|0)==(m|0)){
b=m+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){n=0;break}}else b=d;while(1){d=a+20|0;e=c[d>>
;2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}if(b>>>0<(c[18404]|0
)>>>0)ya();else{c[b>>2]=0;n=a;break}}else{b=c[m+8>>2]|0;if(b>>>0<(c[18404
]|0)>>>0)ya();d=b+12|0;if((c[d>>2]|0)!=(m|0))ya();e=a+8|0;if((c[e>>2]|0)==(m|0)){c[d>>
;2]=a;c[e>>2]=b;n=a;break}else ya()}while(0);if(f|0){a=c[m+28>>2]|0;b=73904+(a<<2)|0;if((m|0)==(c[
b>>2]|0)){c[b>>2]=n;if(!n){c[18401]=c[18401]&~(1<<a);break}}else{if(f>>>0<
;(c[18404]|0)>>>0)ya();a=f+16|0;if((c[a>>2]|0)==(m|0))c[a>>2]=n;else c[f+20>>2]=n;if
(!n)break}d=c[18404]|0;if(n>>>0<d>>>0)ya();c[n+24>>2]=f;a=m+16|0;b=c[a>>2
]|0;do if(b|0)if(b>>>0<d>>>0)ya();else{c[n+16>>2]=b;c[b+24>>2]=n;break}while
(0);a=c[a+4>>2]|0;if(a|0)if(a>>>0<(c[18404]|0)>>>0)ya();else{c[n+20>>2]=a
;c[a+24>>2]=n;break}}}else{b=c[m+8>>2]|0;d=c[m+12>>2]|0;a=73640+(e<<1<<2)|0;if
((b|0)!=(a|0)){if(b>>>0<(c[18404]|0)>>>0)ya();if((c[b+12>>2]|0)!=(m|0))ya()}if((d|0
)==(b|0)){c[18400]=c[18400]&~(1<<e);break}if((d|0)!=(a|0)){if(d>>>0<(c[18404]|0)>>
x3e;0)ya();a=d+8|0;if((c[a>>2]|0)==(m|0))l=a;else ya()}else l=d+8|0;c[b+12>>2]=d;c[l>>2]=b}while(0
);c[q+4>>2]=g|1;c[q+g>>2]=g;if((q|0)==(c[18405]|0)){c[18402]=g;return}}else{c[a>>2]=b&-2;c[q+
4>>2]=g|1;c[q+g>>2]=g}a=g>>>3;if(g>>>0<256){d=73640+(a<<1<
x3c;2)|0;b=c[18400]|0;a=1<<a;if(b&a){a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[18404]|0)>
;>>0)ya();else{o=a;p=b}}else{c[18400]=b|a;o=d+8|0;p=d}c[o>>2]=q;c[p+12>>2]=q;c[q+8>>2]=p
;c[q+12>>2]=d;return}a=g>>>8;if(a)if(g>>>0>16777215)d=31;else{o=(a+1048320|0)>
x3e;>16&8;p=a<<o;n=(p+520192|0)>>>16&4;p=p<<n;d=(p+245760|0)>>>
16&2;d=14-(n|o|d)+(p<<d>>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=73904
+(d<<2)|0;c[q+28>>2]=d;c[q+20>>2]=0;c[q+16>>2]=0;a=c[18401]|0;b=1<<d;do if(a
x26;b){f=g<<((d|0)==31?0:25-(d>>>1)|0);a=c[e>>2]|0;while(1){if((c[a+4>>2]&-8|0
)==(g|0)){d=a;e=130;break}b=a+16+(f>>>31<<2)|0;d=c[b>>2]|0;if(!d){e=127;break}else{f=f<
x3c;1;a=d}}if((e|0)==127)if(b>>>0<(c[18404]|0)>>>0)ya();else{c[b>>2]=q;c[q+24>
x3e;2]=a;c[q+12>>2]=q;c[q+8>>2]=q;break}else if((e|0)==130){a=d+8|0;b=c[a>>2]|0;p=c[18404]|0;if(b
x3e;>>0>=p>>>0&d>>>0>=p>>>0){c[b+12>>2]=q;c[a>
;>2]=q;c[q+8>>2]=b;c[q+12>>2]=d;c[q+24>>2]=0;break}else ya()}}else{c[18401]=a|b;c[e>>
;2]=q;c[q+24>>2]=e;c[q+12>>2]=q;c[q+8>>2]=q}while(0);q=(c[18408]|0)+-1|0;c[18408]=q;if(!q)a=74056;
else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[18408]=-1;return}function Hs(a,b){a=a|0;b=b|0;var d=0,e=0;
if(!a){a=Fs(b)|0;return a|0}if(b>>>0>4294967231){c[(Ar()|0)>>2]=12;a=0;return a|0}d=Is(a+-8|0,b>
;>>0<11?16:b+11&-8)|0;if(d|0){a=d+8|0;return a|0}d=Fs(b)|0;if(!d){a=0;return a|0}e=c[a+-4>>2]|0;e=(
e&-8)-((e&3|0)==0?8:4)|0;Ss(d|0,a|0,(e>>>0<b>>>0?e:b)|0)|0;Gs(a);a=d;return a|0}
function Rh(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;ca=i;i=i+192
|0;Y=ca+172|0;l=ca+168|0;I=ca+164|0;H=ca+160|0;m=ca+156|0;n=ca+152|0;p=ca+148|0;aa=ca+144|0;u=ca+140|0;t=ca+136|0;s=ca+132|0;U=ca
+177|0;V=ca+176|0;q=ca+128|0;r=ca+124|0;o=ca+120|0;J=ca+116|0;M=ca+112|0;S=ca+108|0;P=ca+104|0;z=ca+100|0;v=ca+96|0;w=ca+92|0;y=
ca+88|0;x=ca+84|0;D=ca+80|0;F=ca+76|0;A=ca+72|0;B=ca+68|0;G=ca+64|0;E=ca+60|0;C=ca+56|0;W=ca+52|0;Q=ca+48|0;R=ca+44|0;N=ca+40|0;
O=ca+36|0;K=ca+32|0;X=ca+28|0;_=ca+16|0;L=ca+12|0;T=ca+8|0;$=ca+4|0;Z=ca;c[l>>2]=f;c[I>>2]=g;c[H>>
2]=h;c[m>>2]=j;c[n>>2]=k;c[p>>2]=c[I>>2];a[U>>0]=1;a[V>>0]=0;c[q>
;>2]=c[(c[(c[I>>2]|0)+96>>2]|0)+4>>2];c[u>>2]=Ud(c[q>>2]|0,11340)|0;do if
(c[u>>2]|0){c[r>>2]=c[(c[p>>2]|0)+96>>2];c[o>>2]=Vd(c[r>>2]|0,71003)|
0;c[t>>2]=c[o>>2];c[s>>2]=Ud(c[q>>2]|0,11524)|0;f=Kc(c[l>>2]|0,0)|0;c[aa>
x3e;2]=f;if(!f){c[aa>>2]=Za[c[(c[u>>2]|0)+4>>2]&31](c[l>>2]|0,c[p>>2]|0,c
[H>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;if(!(c[aa>>2]|0)){if((c[(c[p>>2]|0)+148>
x3e;2]|0)!=1330926671){ba=112;break}if((c[H>>2]|0)<0){c[Y>>2]=0;ba=c[Y>>2]|0;i=ca;return ba|0
}if((c[H>>2]|0)>0){c[aa>>2]=6;break}a[V>>0]=1;c[aa>>2]=Wa[c[(c[p>>2]|0)+508
>>2]&31](c[p>>2]|0,1751474532,c[l>>2]|0,0)|0;if(c[aa>>2]|0){c[aa>>2]=Ya[c
[(c[u>>2]|0)+40>>2]&127](c[p>>2]|0,c[l>>2]|0)|0;if(c[aa>>2]|0)break}else{
a[U>>0]=0;c[aa>>2]=Za[c[(c[u>>2]|0)+8>>2]&31](c[l>>2]|0,c[p>>2]|
0,0,c[m>>2]|0,c[n>>2]|0)|0;if(c[aa>>2]|0)break}c[aa>>2]=Wa[c[(c[p>>2]|0)+508
x3e;>2]&31](c[p>>2]|0,1128678944,c[l>>2]|0,0)|0;if(c[aa>>2]|0)break}else{f=Kc(c[l>
x3e;2]|0,0)|0;c[aa>>2]=f;if(f|0)break;c[aa>>2]=0}c[S>>2]=c[(c[I>>2]|0)+100>>2];
c[J>>2]=bc(c[S>>2]|0,2072,aa)|0;if((c[aa>>2]|0)==0?(c[(c[p>>2]|0)+692>>2]=c[J
x3e;>2],c[aa>>2]=Sh(c[q>>2]|0,c[l>>2]|0,c[H>>2]|0,c[J>>2]|0,a[U>>
;0]|0)|0,(c[aa>>2]|0)==0):0){c[(c[J>>2]|0)+2052>>2]=c[s>>2];c[(c[J>>2]|0)+2056
>>2]=c[t>>2];c[(c[I>>2]|0)+4>>2]=c[H>>2];c[(c[I>>2]|0)+16>>
;2]=c[(c[J>>2]|0)+12>>2];c[M>>2]=(c[J>>2]|0)+1324;if(c[t>>2]|0?1:(c[(c[M>
x3e;2]|0)+128>>2]|0)!=65535){if(!(c[(c[M>>2]|0)+64>>2]|0)){if(d[U>>0]|0)l=1e3;else l=e[(
c[p>>2]|0)+68>>1]|0;c[(c[M>>2]|0)+64>>2]=l}c[v>>2]=(c[M>>2]|0)+48;c[
w>>2]=(c[M>>2]|0)+68;c[y>>2]=(c[M>>2]|0)+64;f=c[(c[v>>2]|0)+12>>2]|0
;c[x>>2]=(c[(c[v>>2]|0)+12>>2]|0)<0?0-f|0:f;if((c[x>>2]|0)!=65536){f=Vb(c[c[y>
x3e;2]>>2]|0,c[x>>2]|0)|0;c[c[y>>2]>>2]=f;y=Vb(c[c[v>>2]>>2]|0,c[x
x3e;>2]|0)|0;c[c[v>>2]>>2]=y;y=Vb(c[(c[v>>2]|0)+8>>2]|0,c[x>>2]|0)|0;c[(c
[v>>2]|0)+8>>2]=y;y=Vb(c[(c[v>>2]|0)+4>>2]|0,c[x>>2]|0)|0;c[(c[v>>2]|
0)+4>>2]=y;y=Vb(c[(c[v>>2]|0)+12>>2]|0,c[x>>2]|0)|0;c[(c[v>>2]|0)+12>>
;2]=y;y=Vb(c[c[w>>2]>>2]|0,c[x>>2]|0)|0;c[c[w>>2]>>2]=y;y=Vb(c[(c[w>>
;2]|0)+4>>2]|0,c[x>>2]|0)|0;c[(c[w>>2]|0)+4>>2]=y}y=c[w>>2]|0;c[y>>2
]=c[y>>2]>>16;y=(c[w>>2]|0)+4|0;c[y>>2]=c[y>>2]>>16;c[z>>2
]=c[(c[J>>2]|0)+1892>>2];while(1){if((c[z>>2]|0)>>>0<=0)break;c[D>>2
]=c[(c[J>>2]|0)+1896+((c[z>>2]|0)-1<<2)>>2];c[F>>2]=(c[J>>2]|0)+1324
;if(c[(c[D>>2]|0)+64>>2]|0){if((c[(c[F>>2]|0)+64>>2]|0)>>>0>1?(c[(c[
D>>2]|0)+64>>2]|0)>>>0>1:0){if((c[(c[F>>2]|0)+64>>2]|0)>>
x3e;0<(c[(c[D>>2]|0)+64>>2]|0)>>>0)l=c[(c[F>>2]|0)+64>>2]|0;else l=c
[(c[D>>2]|0)+64>>2]|0;c[C>>2]=l}else c[C>>2]=1;Xb((c[F>>2]|0)+48|0,(c[D>
x3e;2]|0)+48|0,c[C>>2]|0);Yb((c[D>>2]|0)+68|0,(c[F>>2]|0)+48|0,c[C>>2]|0);y=xb(c[(c[D>
;>2]|0)+64>>2]|0,c[(c[F>>2]|0)+64>>2]|0,c[C>>2]|0)|0;c[(c[D>>2]|0)+64>
;>2]=y}else{y=(c[D>>2]|0)+48|0;x=(c[F>>2]|0)+48|0;c[y>>2]=c[x>>2];c[y+4>>
2]=c[x+4>>2];c[y+8>>2]=c[x+8>>2];c[y+12>>2]=c[x+12>>2];y=(c[D>>2]|0)+
68|0;x=(c[F>>2]|0)+68|0;c[y>>2]=c[x>>2];c[y+4>>2]=c[x+4>>2];c[(c[D>>
2]|0)+64>>2]=c[(c[F>>2]|0)+64>>2]}c[A>>2]=(c[D>>2]|0)+48;c[B>>2]=(c[
D>>2]|0)+68;c[G>>2]=(c[D>>2]|0)+64;y=c[(c[A>>2]|0)+12>>2]|0;c[E>>2]=(
c[(c[A>>2]|0)+12>>2]|0)<0?0-y|0:y;if((c[E>>2]|0)!=65536){y=Vb(c[c[G>>2]>>
2]|0,c[E>>2]|0)|0;c[c[G>>2]>>2]=y;if((c[c[G>>2]>>2]|0)>>>0>
;1e5)c[c[G>>2]>>2]=(((c[c[G>>2]>>2]|0)+500|0)>>>0)/1e3|0;y=Vb(c[c[A>
x3e;2]>>2]|0,c[E>>2]|0)|0;c[c[A>>2]>>2]=y;y=Vb(c[(c[A>>2]|0)+8>>2]|0
,c[E>>2]|0)|0;c[(c[A>>2]|0)+8>>2]=y;y=Vb(c[(c[A>>2]|0)+4>>2]|0,c[E>>
2]|0)|0;c[(c[A>>2]|0)+4>>2]=y;y=Vb(c[(c[A>>2]|0)+12>>2]|0,c[E>>2]|0)|0;c[(c[A
x3e;>2]|0)+12>>2]=y;y=Vb(c[c[B>>2]>>2]|0,c[E>>2]|0)|0;c[c[B>>2]>>
;2]=y;y=Vb(c[(c[B>>2]|0)+4>>2]|0,c[E>>2]|0)|0;c[(c[B>>2]|0)+4>>2]=y}y=c[B>
;>2]|0;c[y>>2]=c[y>>2]>>16;y=(c[B>>2]|0)+4|0;c[y>>2]=c[y>>2]>
;>16;c[z>>2]=(c[z>>2]|0)+-1}if(a[U>>0]|0){c[W>>2]=0;c[c[I>>2]>>
2]=c[(c[J>>2]|0)+8>>2];l=c[J>>2]|0;if((c[(c[M>>2]|0)+128>>2]|0)!=65535)c[(c[I
x3e;>2]|0)+16>>2]=(c[l+1152+16>>2]|0)+1;else c[(c[I>>2]|0)+16>>2]=c[l+1176+8>
x3e;2];c[(c[I>>2]|0)+52>>2]=c[(c[M>>2]|0)+80>>2]>>16;c[(c[I>>2]|0)+52
+4>>2]=c[(c[M>>2]|0)+80+4>>2]>>16;c[(c[I>>2]|0)+52+8>>2]=(c[(c[M>
;>2]|0)+80+8>>2]|0)+65535>>16;c[(c[I>>2]|0)+52+12>>2]=(c[(c[M>>2]|0)+80+12
>>2]|0)+65535>>16;b[(c[I>>2]|0)+68>>1]=c[(c[M>>2]|0)+64>>2];b[(c[I
x3e;>2]|0)+70>>1]=c[(c[I>>2]|0)+52+12>>2];b[(c[I>>2]|0)+72>>1]=c[(c[I>
;>2]|0)+52+4>>2];b[(c[I>>2]|0)+74>>1]=((e[(c[I>>2]|0)+68>>1]|0)*12|0)/10|
0;if((b[(c[I>>2]|0)+74>>1]|0)<((b[(c[I>>2]|0)+70>>1]|0)-(b[(c[I>>2]|0)+72
>>1]|0)|0))b[(c[I>>2]|0)+74>>1]=(b[(c[I>>2]|0)+70>>1]|0)-(b[(c[I>>2]|
0)+72>>1]|0);b[(c[I>>2]|0)+80>>1]=c[(c[M>>2]|0)+32>>2]>>16;b[(c[I>
;>2]|0)+82>>1]=c[(c[M>>2]|0)+36>>2]>>16;l=qi(c[J>>2]|0,c[H>>2]|
0)|0;c[(c[I>>2]|0)+20>>2]=l;l=c[J>>2]|0;m=c[M>>2]|0;a:do if(c[(c[I>>2]|0)+20
x3e;>2]|0){c[Q>>2]=yh(l,c[m+12>>2]|0)|0;c[R>>2]=c[Q>>2];c[N>>2]=c[(c[I>
;>2]|0)+20>>2];c[O>>2]=0;ri(c[(c[I>>2]|0)+20>>2]|0);if(c[(c[M>>2]|0)+16
x3e;>2]|0?(c[O>>2]=yh(c[J>>2]|0,c[(c[M>>2]|0)+16>>2]|0)|0,c[O>>2]|0):0)c[
N>>2]=c[O>>2];if((c[Q>>2]|0)!=0&(c[N>>2]|0)!=0){b:while(1){if(!(a[c[R>>2]
x3e;>0]|0))break a;if((a[c[R>>2]>>0]|0)==(a[c[N>>2]>>0]|0)){c[N>>2]=(c[N
x3e;>2]|0)+1;c[R>>2]=(c[R>>2]|0)+1;continue}do if((a[c[R>>2]>>0]|0)!=32){if((a[c[R
x3e;>2]>>0]|0)==45)break;if((a[c[N>>2]>>0]|0)!=32?(a[c[N>>2]>>0]|0)!=45:0
)break b;c[N>>2]=(c[N>>2]|0)+1;continue b}while(0);c[R>>2]=(c[R>>2]|0)+1}if((a[c[N>
x3e;2]>>0]|0)==0?a[c[R>>2]>>0]|0:0)c[W>>2]=si(c[S>>2]|0,c[R>>2]|0)|0
}}else{c[K>>2]=yh(l,c[m+168>>2]|0)|0;if(c[K>>2]|0){R=si(c[S>>2]|0,c[K>>2]|0)|0
;c[(c[I>>2]|0)+20>>2]=R}}while(0);if(c[W>>2]|0)c[(c[I>>2]|0)+24>>2]=c[W>
x3e;2];else{W=si(c[S>>2]|0,11262)|0;c[(c[I>>2]|0)+24>>2]=W}c[P>>2]=2065;if(a[V>>
;0]|0)c[P>>2]=c[P>>2]|8;if(a[(c[M>>2]|0)+24>>0]|0)c[P>>2]=c[P>>2]|4;
c[(c[I>>2]|0)+8>>2]=c[P>>2];c[P>>2]=0;if(c[(c[M>>2]|0)+28>>2]|0)c[P
x3e;>2]=c[P>>2]|1;c[X>>2]=yh(c[J>>2]|0,c[(c[M>>2]|0)+20>>2]|0)|0;do if(c[
X>>2]|0){if(Kr(c[X>>2]|0,11270)|0?Kr(c[X>>2]|0,11275)|0:0)break;c[P>>2]=c[P>>2
]|2}while(0);do if(!(c[P>>2]&2)){if(!(c[(c[I>>2]|0)+24>>2]|0))break;if(Lr(c[(c[I>>2
]|0)+24>>2]|0,11270,4)|0?Lr(c[(c[I>>2]|0)+24>>2]|0,11275,5)|0:0)break;c[P>>2]=c[P>
x3e;2]|2}while(0);c[(c[I>>2]|0)+12>>2]=c[P>>2]}if((c[(c[M>>2]|0)+128>>2]|0)==65535
){X=(c[I>>2]|0)+8|0;c[X>>2]=c[X>>2]|512}if((c[(c[M>>2]|0)+128>>2]|0)!=65535?d[
U>>0]|0:0){X=(c[I>>2]|0)+8|0;c[X>>2]=c[X>>2]|4096}c[$>>2]=(c[J>>2]|0
)+116;c[T>>2]=0;while(1){if((c[T>>2]|0)>>>0>=(c[(c[I>>2]|0)+36>>2]|0
)>>>0){ba=96;break}c[L>>2]=c[(c[(c[I>>2]|0)+40>>2]|0)+(c[T>>2]<<
;2)>>2];if((e[(c[L>>2]|0)+8>>1]|0)==3?(e[(c[L>>2]|0)+10>>1]|0)==1:0)break;if(!(
e[(c[L>>2]|0)+8>>1]|0))break;c[T>>2]=(c[T>>2]|0)+1}if((ba|0)==96){if(d[U>>0]|0
?(c[(c[J>>2]|0)+1324+128>>2]|0)!=65535:0)break;if(((c[T>>2]|0)+1|0)>>>0>15)break
;c[_>>2]=c[I>>2];b[_+8>>1]=3;b[_+10>>1]=1;c[_+4>>2]=1970170211;c[T>>
2]=c[(c[I>>2]|0)+36>>2];c[aa>>2]=Ld(868,0,_,0)|0;if((c[aa>>2]|0)!=0&163!=(c[aa>
;>2]|0))break;c[aa>>2]=0;if((c[(c[I>>2]|0)+92>>2]|0)==0?(c[T>>2]|0)!=(c[(c[I>
x3e;2]|0)+36>>2]|0):0)c[(c[I>>2]|0)+92>>2]=c[(c[(c[I>>2]|0)+40>>2]|0)+(c[T>
;>2]<<2)>>2]}if((c[T>>2]|0)>>>0<=15?(c[(c[$>>2]|0)+8>>
;2]|0)>>>0>0:0){c[_>>2]=c[I>>2];b[_+8>>1]=7;do if(c[(c[$>>2]|0)+4>
;>2]|0){l=_+10|0;if((c[(c[$>>2]|0)+4>>2]|0)==1){b[l>>1]=1;c[_+4>>2]=1094992453;c[Z
x3e;>2]=828;break}else{b[l>>1]=2;c[_+4>>2]=1094992451;c[Z>>2]=828;break}}else{b[_+10>>
;1]=0;c[_+4>>2]=1094995778;c[Z>>2]=828}while(0);c[aa>>2]=Ld(c[Z>>2]|0,0,_,0)|0}}else ba=
112}}}else ba=112;while(0);if((ba|0)==112)c[aa>>2]=2;c[Y>>2]=c[aa>>2];ba=c[Y>>2]|0;i=ca;
return ba|0}function Sh(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
;x=i;i=i+112|0;j=x+100|0;p=x+96|0;q=x+92|0;r=x+88|0;k=x+105|0;u=x+84|0;n=x+80|0;s=x+76|0;t=x+72|0;w=x+40|0;l=x+8|0;o=x+4|0;m=x;v
=x+104|0;c[j>>2]=b;c[p>>2]=e;c[q>>2]=f;c[r>>2]=g;a[k>>0]=h;c[n>>2]=c
[(c[p>>2]|0)+28>>2];Ns(c[r>>2]|0,0,2072)|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>
x3e;2]=0;c[w+12>>2]=0;c[w+16>>2]=0;c[w+20>>2]=0;c[w+24>>2]=0;c[w+28>>2]=0;c[c[
r>>2]>>2]=c[p>>2];c[(c[r>>2]|0)+4>>2]=c[n>>2];c[t>>2]=(c[r
>>2]|0)+1324;c[s>>2]=Mc(c[p>>2]|0)|0;e=le(c[p>>2]|0,5532,c[r>>2]|0)|0;c[u>
;>2]=e;a:do if(!e){if(((d[(c[r>>2]|0)+16>>0]|0|0)==1?(d[(c[r>>2]|0)+18>>0]|0|0)>
;=4:0)?(d[(c[r>>2]|0)+19>>0]|0|0)<=4:0){e=Qc(c[p>>2]|0,(d[(c[r>>2]|0)+18>>
;0]|0)-4|0)|0;c[u>>2]=e;if(e|0)break;e=Th((c[r>>2]|0)+20|0,c[p>>2]|0,0)|0;c[u>>2]=e;if(e
|0)break;e=Th((c[r>>2]|0)+1208|0,c[p>>2]|0,0)|0;c[u>>2]=e;if(e|0)break;e=Th(w,c[p>>2]|0,
1)|0;c[u>>2]=e;if(e|0)break;e=Th((c[r>>2]|0)+84|0,c[p>>2]|0,1)|0;c[u>>2]=e;if(e|0)break;
e=Vh(w,(c[r>>2]|0)+1316|0,(c[r>>2]|0)+1320|0)|0;c[u>>2]=e;if(e|0)break;c[(c[r>>2]|0)+1312
>>2]=c[w+8>>2];c[(c[r>>2]|0)+8>>2]=c[(c[r>>2]|0)+20+8>>2];if((c[q>
;>2]|0)>=(c[(c[r>>2]|0)+8>>2]|0))c[u>>2]=6;if((c[q>>2]|0)<0)break;c[u>
;>2]=Xh((c[r>>2]|0)+1324|0,(c[r>>2]|0)+1208|0,c[q>>2]|0,c[p>>2]|0,c[s>>2]|
0,c[j>>2]|0)|0;if(c[u>>2]|0)break;e=Kc(c[p>>2]|0,(c[s>>2]|0)+(c[(c[t>>2]|0)+108
>>2]|0)|0)|0;c[u>>2]=e;if(e|0)break;c[u>>2]=Th((c[r>>2]|0)+1176|0,c[p>>2]|0,0)|
0;if(c[u>>2]|0)break;if((c[(c[t>>2]|0)+128>>2]|0)!=65535){e=Kc(c[p>>2]|0,(c[s>>
;2]|0)+(c[(c[t>>2]|0)+160>>2]|0)|0)|0;c[u>>2]=e;if(e|0)break;c[u>>2]=Th(l,c[p>>
;2]|0,0)|0;if(c[u>>2]|0)break;b:do if((c[l+8>>2]|0)>>>0<=32){c[(c[r>>2]|0)+1892
>>2]=c[l+8>>2];c[o>>2]=hc(c[n>>2]|0,568,0,c[l+8>>2]|0,0,u)|0;if(c[u>>
;2]|0)break;c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0>=(c[l+8>>2]|0)>>
x3e;0)break;c[(c[r>>2]|0)+1896+(c[m>>2]<<2)>>2]=(c[o>>2]|0)+((c[m>>2
]|0)*568|0);c[m>>2]=(c[m>>2]|0)+1}c[m>>2]=0;while(1){if((c[m>>2]|0)>>>0
x3e;=(c[l+8>>2]|0)>>>0)break;c[o>>2]=c[(c[r>>2]|0)+1896+(c[m>>2]<<
;2)>>2];c[u>>2]=Xh(c[o>>2]|0,l,c[m>>2]|0,c[p>>2]|0,c[s>>2]|0,c[j>
;>2]|0)|0;if(c[u>>2]|0)break b;c[m>>2]=(c[m>>2]|0)+1}c[u>>2]=ki((c[r>>2]|
0)+2024|0,c[(c[r>>2]|0)+1176+8>>2]|0,c[p>>2]|0,(c[s>>2]|0)+(c[(c[t>>2]|0)+164
x3e;>2]|0)|0)|0}while(0);li(l);if(c[u>>2]|0)break}else c[(c[r>>2]|0)+1892>>2]=0;if(!(c[(c[t
x3e;>2]|0)+108>>2]|0)){c[u>>2]=2;break}c[(c[r>>2]|0)+12>>2]=c[(c[r>>2]|0)+
1176+8>>2];c[u>>2]=Vh((c[r>>2]|0)+84|0,(c[r>>2]|0)+1308|0,0)|0;if(c[u>>2]|0)break
;do if((c[(c[r>>2]|0)+12>>2]|0)>>>0>0){if((c[(c[t>>2]|0)+128>>2]|0)!=
65535)j=(d[k>>0]|0|0)!=0;else j=0;a[v>>0]=j&1;c[u>>2]=mi((c[r>>2]|0)+1152|0,c[(c[r
x3e;>2]|0)+12>>2]|0,c[p>>2]|0,c[s>>2]|0,c[(c[t>>2]|0)+100>>2]|0,a[v>
x3e;0]|0)|0;if(c[u>>2]|0)break a;if((c[(c[t>>2]|0)+128>>2]|0)!=65535)break;c[u>>2]=oi((c
[r>>2]|0)+116|0,(c[r>>2]|0)+1152|0,c[(c[r>>2]|0)+12>>2]|0,c[p>>2]|0,c[s>
x3e;2]|0,c[(c[t>>2]|0)+104>>2]|0)|0;if(c[u>>2]|0)break a}while(0);v=qi(c[r>>2]|0,c[q>
;>2]|0)|0;c[(c[r>>2]|0)+1304>>2]=v;break}c[u>>2]=2}while(0);li(w);i=x;return c[u>>2
]|0}function Th(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;r=i;i=i+32|0;n=r+16|0;j=r+12|0;o=r+23|0;p=r+8|0
;q=r+4|0;k=r+20|0;l=r+22|0;m=r;c[n>>2]=f;c[j>>2]=g;a[o>>0]=h;c[q>>2]=c[(c[j>>2
]|0)+28>>2];g=c[n>>2]|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=
0;c[g+16>>2]=0;c[g+20>>2]=0;c[g+24>>2]=0;c[g+28>>2]=0;c[c[n>>2]>>2]=
c[j>>2];g=Mc(c[j>>2]|0)|0;c[(c[n>>2]|0)+4>>2]=g;b[k>>1]=Pc(c[j>>2]|0
,p)|0;do if(((c[p>>2]|0)==0?(e[k>>1]|0)>0:0)?(a[l>>0]=ke(c[j>>2]|0,p)|0,(c[p>
x3e;2]|0)==0):0){if((d[l>>0]|0)>=1?(d[l>>0]|0)<=4:0){c[(c[n>>2]|0)+8>>2]=e[k
x3e;>1];a[(c[n>>2]|0)+12>>0]=a[l>>0]|0;c[m>>2]=_((e[k>>1]|0)+1|0,d[l>
;>0]|0)|0;c[(c[n>>2]|0)+16>>2]=(c[(c[n>>2]|0)+4>>2]|0)+3+(c[m>>2]|0);g=Qc
(c[j>>2]|0,(c[m>>2]|0)-(d[l>>0]|0)|0)|0;c[p>>2]=g;if(g|0)break;c[m>>2]=Uh(c[n
x3e;>2]|0,p)|0;if(c[p>>2]|0)break;if(!(c[m>>2]|0)){c[p>>2]=8;break}k=(c[m>>2]|0)+-1
|0;c[m>>2]=k;c[(c[n>>2]|0)+20>>2]=k;k=c[j>>2]|0;j=c[m>>2]|0;if(a[o>>
0]|0){c[p>>2]=de(k,j,(c[n>>2]|0)+28|0)|0;break}else{c[p>>2]=Qc(k,j)|0;break}}c[p>>2]=8}while
(0);if(!(c[p>>2]|0)){q=c[p>>2]|0;i=r;return q|0}Fb(c[q>>2]|0,c[(c[n>>2]|0)+24>>
;2]|0);c[(c[n>>2]|0)+24>>2]=0;q=c[p>>2]|0;i=r;return q|0}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,m=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;m=l+8|0;k=l+24|0;j=l+4|0;h=l;c[e>>2]=a;c[f>>
2]=b;c[m>>2]=c[c[e>>2]>>2];c[j>>2]=0;a=Rc(c[m>>2]|0,k,d[(c[e>>2]|0)+
12>>0]|0)|0;c[g>>2]=a;if(a|0){k=c[g>>2]|0;m=c[f>>2]|0;c[m>>2]=k;m=c[j>>
;2]|0;i=l;return m|0}c[h>>2]=0;while(1){if((c[h>>2]|0)>=(d[(c[e>>2]|0)+12>>0]|0|0))
break;c[j>>2]=c[j>>2]<<8|(d[k+(c[h>>2]|0)>>0]|0);c[h>>2]=(c[h>
x3e;2]|0)+1}k=c[g>>2]|0;m=c[f>>2]|0;c[m>>2]=k;m=c[j>>2]|0;i=l;return m|0}function Vh(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;t=i;i=i+48|0;f=t+44|0;g=t+40|0;h=t+36|0;k=t+32
|0;m=t+28|0;r=t+24|0;o=t+20|0;n=t+16|0;j=t+12|0;l=t+8|0;q=t+4|0;p=t;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;
c[k>>2]=0;c[m>>2]=c[(c[c[f>>2]>>2]|0)+28>>2];c[o>>2]=0;c[c[g>
x3e;2]>>2]=0;if((c[(c[f>>2]|0)+24>>2]|0)==0?(c[k>>2]=Wh(c[f>>2]|0)|0,c[k>
x3e;2]|0):0){s=c[k>>2]|0;i=t;return s|0}if((c[(c[f>>2]|0)+8>>2]|0)>>>0<=0){s=c
[k>>2]|0;i=t;return s|0}c[r>>2]=hc(c[m>>2]|0,4,0,(c[(c[f>>2]|0)+8>>2]|0)+1|0,0
,k)|0;if(c[k>>2]|0){s=c[k>>2]|0;i=t;return s|0}if(c[h>>2]|0?(c[o>>2]=bc(c[m>>2
]|0,(c[(c[f>>2]|0)+20>>2]|0)+(c[(c[f>>2]|0)+8>>2]|0)|0,k)|0,c[k>>2]|0):0){s=c[
k>>2]|0;i=t;return s|0}c[l>>2]=0;c[q>>2]=c[(c[f>>2]|0)+28>>2];d=(c[c[(c[f>
;>2]|0)+24>>2]>>2]|0)-1|0;c[j>>2]=d;c[j>>2]=(c[j>>2]|0)>>>
0>=(c[(c[f>>2]|0)+20>>2]|0)>>>0?0:d;if(c[h>>2]|0)c[c[r>>2]>>
;2]=(c[o>>2]|0)+(c[j>>2]|0);else c[c[r>>2]>>2]=(c[q>>2]|0)+(c[j>>2]|
0);c[n>>2]=1;while(1){if((c[n>>2]|0)>>>0>(c[(c[f>>2]|0)+8>>2]|0)>
;>>0)break;c[p>>2]=(c[(c[(c[f>>2]|0)+24>>2]|0)+(c[n>>2]<<2)>>
;2]|0)-1;if((c[p>>2]|0)!=0?(c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0:0){
if((c[p>>2]|0)>>>0>=(c[(c[f>>2]|0)+20>>2]|0)>>>0?(c[n>>
;2]|0)>>>0<(c[(c[f>>2]|0)+8>>2]|0)>>>0:0)s=16}else s=16;if((s|0)==16){s=0
;c[p>>2]=c[j>>2]}if(c[h>>2]|0){c[(c[r>>2]|0)+(c[n>>2]<<2)>>
;2]=(c[o>>2]|0)+(c[p>>2]|0)+(c[l>>2]|0);if((c[p>>2]|0)!=(c[j>>2]|0)){Ss(c[(c[r
>>2]|0)+((c[n>>2]|0)-1<<2)>>2]|0,(c[q>>2]|0)+(c[j>>2]|0)|0,(c[(c[r
x3e;>2]|0)+(c[n>>2]<<2)>>2]|0)-(c[(c[r>>2]|0)+((c[n>>2]|0)-1<<2
)>>2]|0)|0)|0;a[c[(c[r>>2]|0)+(c[n>>2]<<2)>>2]>>0]=0;d=(c[r>>
;2]|0)+(c[n>>2]<<2)|0;c[d>>2]=(c[d>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+1}}else
c[(c[r>>2]|0)+(c[n>>2]<<2)>>2]=(c[q>>2]|0)+(c[p>>2]|0);c[j>>
;2]=c[p>>2];c[n>>2]=(c[n>>2]|0)+1}c[c[g>>2]>>2]=c[r>>2];if(!(c[h>
;>2]|0)){s=c[k>>2]|0;i=t;return s|0}c[c[h>>2]>>2]=c[o>>2];s=c[k>>2]|0;i=t
;return s|0}function Wh(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;o=i;i=i+48|0;e=o+28|0;g=o+24|0;n=o+20|0;h=o+16|0;j=
o+32|0;f=o+12|0;k=o+8|0;l=o+4|0;m=o;c[e>>2]=b;c[g>>2]=0;c[n>>2]=c[c[e>>2]>>2];
c[h>>2]=c[(c[n>>2]|0)+28>>2];if(((((c[(c[e>>2]|0)+8>>2]|0)>>>0
x3e;0?(c[(c[e>>2]|0)+24>>2]|0)==0:0)?(a[j>>0]=a[(c[e>>2]|0)+12>>0]|0,c[f>
x3e;2]=_((c[(c[e>>2]|0)+8>>2]|0)+1|0,d[j>>0]|0)|0,b=hc(c[h>>2]|0,4,0,(c[(c[e>>
2]|0)+8>>2]|0)+1|0,0,g)|0,c[(c[e>>2]|0)+24>>2]=b,(c[g>>2]|0)==0):0)?(b=Kc(c[n>>
;2]|0,(c[(c[e>>2]|0)+4>>2]|0)+3|0)|0,c[g>>2]=b,(b|0)==0):0)?(b=ee(c[n>>2]|0,c[f>>
;2]|0)|0,c[g>>2]=b,(b|0)==0):0){c[m>>2]=c[(c[e>>2]|0)+24>>2];c[k>>2]=c[(c[n>
;>2]|0)+32>>2];c[l>>2]=(c[k>>2]|0)+(c[f>>2]|0);a:do switch(d[j>>0]|0){case
1:while(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>
2]>>2]=d[c[k>>2]>>0];c[k>>2]=(c[k>>2]|0)+1;c[m>>2]=(c[m>>2
]|0)+4}case 2:while(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m
x3e;>2]>>2]=((d[c[k>>2]>>0]&65535)<<8|(d[(c[k>>2]|0)+1>>0]
x26;65535)<<0)&65535;c[k>>2]=(c[k>>2]|0)+2;c[m>>2]=(c[m>>2]|0)+4}case 3:while
(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>2]>
x3e;2]=a[c[k>>2]>>0]<<16|d[(c[k>>2]|0)+1>>0]<<8|d[(c[k>>2]|
0)+2>>0]<<0;c[k>>2]=(c[k>>2]|0)+3;c[m>>2]=(c[m>>2]|0)+4}default:while
(1){if((c[k>>2]|0)>>>0>=(c[l>>2]|0)>>>0)break a;c[c[m>>2]>
x3e;2]=d[c[k>>2]>>0]<<24|d[(c[k>>2]|0)+1>>0]<<16|d[(c[k>>2
]|0)+2>>0]<<8|d[(c[k>>2]|0)+3>>0]<<0;c[k>>2]=(c[k>>2]|0)+4
;c[m>>2]=(c[m>>2]|0)+4}}while(0);ge(c[n>>2]|0)}if(!(c[g>>2]|0)){n=c[g>>2]|0;i=
o;return n|0}Fb(c[h>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;n=c[g
>>2]|0;i=o;return n|0}function Xh(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;v=i;i=i+464|0;k=v+456|0;l=v+452|0;w=v+448|0;m=v+444|0;n=v+440|0;o=v+436|0;r=v+432|0;s=v+16|0;p=v+12|0;q=v+8
|0;u=v+4|0;t=v;c[k>>2]=b;c[l>>2]=e;c[w>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>
;2]=j;c[p>>2]=0;c[u>>2]=c[k>>2];c[t>>2]=(c[k>>2]|0)+172;Yh(s,4096,c[k>>
;2]|0,c[o>>2]|0);Ns(c[u>>2]|0,0,172)|0;c[(c[u>>2]|0)+32>>2]=-6553600;c[(c[u>>2
]|0)+36>>2]=3276800;c[(c[u>>2]|0)+44>>2]=2;c[(c[u>>2]|0)+48>>2]=65536;c[(c[u
x3e;>2]|0)+48+12>>2]=65536;c[(c[u>>2]|0)+152>>2]=8720;c[c[u>>2]>>2]=65535
;c[(c[u>>2]|0)+4>>2]=65535;c[(c[u>>2]|0)+8>>2]=65535;c[(c[u>>2]|0)+12>>
;2]=65535;c[(c[u>>2]|0)+16>>2]=65535;c[(c[u>>2]|0)+20>>2]=65535;c[(c[u>>2]|0)+
124>>2]=65535;c[(c[u>>2]|0)+128>>2]=65535;c[(c[u>>2]|0)+132>>2]=65535;c[(c[u
x3e;>2]|0)+168>>2]=65535;c[r>>2]=Zh(c[l>>2]|0,c[w>>2]|0,p,q)|0;if(!(c[r>>
2]|0))c[r>>2]=_h(s,c[p>>2]|0,(c[p>>2]|0)+(c[q>>2]|0)|0)|0;ji(c[l>>2]|0,p);if(c
[r>>2]|0){w=c[r>>2]|0;i=v;return w|0}if((c[(c[u>>2]|0)+128>>2]|0)!=65535){w=c[r>>
;2]|0;i=v;return w|0}do if(c[(c[u>>2]|0)+112>>2]|0?c[(c[u>>2]|0)+116>>2]|0:0){Ns(c[t>
;>2]|0,0,360)|0;c[(c[t>>2]|0)+200>>2]=7;c[(c[t>>2]|0)+204>>2]=1;c[(c[t>>2
]|0)+332>>2]=-1;c[(c[t>>2]|0)+340>>2]=3932;c[(c[t>>2]|0)+196>>2]=2596864;Yh(s,
8192,c[t>>2]|0,c[o>>2]|0);w=Kc(c[m>>2]|0,(c[n>>2]|0)+(c[(c[k>>2]|0)+112>
x3e;2]|0)|0)|0;c[r>>2]=w;if(w|0){w=c[r>>2]|0;i=v;return w|0}w=ee(c[m>>2]|0,c[(c[k>>2]|0)+
116>>2]|0)|0;c[r>>2]=w;if(w|0){w=c[r>>2]|0;i=v;return w|0}c[r>>2]=_h(s,c[(c[m>>
;2]|0)+32>>2]|0,c[(c[m>>2]|0)+36>>2]|0)|0;ge(c[m>>2]|0);if(c[r>>2]|0){w=c[r>
;>2]|0;i=v;return w|0}else{w=c[t>>2]|0;a[w>>0]=(d[w>>0]|0)&-2;break}}while(0);if(!(c[(c[
t>>2]|0)+348>>2]|0)){w=c[r>>2]|0;i=v;return w|0}w=Kc(c[m>>2]|0,(c[n>>2]|0)+(c[(
c[u>>2]|0)+112>>2]|0)+(c[(c[t>>2]|0)+348>>2]|0)|0)|0;c[r>>2]=w;if(w|0){w=c[r
x3e;>2]|0;i=v;return w|0}c[r>>2]=Th((c[k>>2]|0)+532|0,c[m>>2]|0,1)|0;if(c[r>>2]|0){
w=c[r>>2]|0;i=v;return w|0}c[r>>2]=Vh((c[k>>2]|0)+532|0,(c[k>>2]|0)+564|0,0)|0;w=c[r>
;>2]|0;i=v;return w|0}function Yh(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;Ns(c[g>>2]|0,0,416)|0;c[(c[g
>>2]|0)+404>>2]=(c[g>>2]|0)+16;c[(c[g>>2]|0)+408>>2]=c[k>>2];c[(c[g
x3e;>2]|0)+412>>2]=c[j>>2];c[c[g>>2]>>2]=c[h>>2];i=f;return}function Zh(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;q=i;i=i+48|0;g=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;l=q
+16|0;p=q+12|0;m=q+8|0;n=q+4|0;o=q;c[g>>2]=a;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[l>>
;2]=0;if(c[g>>2]|0?(c[(c[g>>2]|0)+8>>2]|0)>>>0>(c[h>>2]|0)>>
;>0:0){c[p>>2]=c[c[g>>2]>>2];c[n>>2]=0;b=c[h>>2]|0;a=c[g>>2]|0;
a:do if(c[(c[g>>2]|0)+24>>2]|0){c[m>>2]=c[(c[a+24>>2]|0)+(b<<2)>>2];
if(c[m>>2]|0)do{c[h>>2]=(c[h>>2]|0)+1;c[n>>2]=c[(c[(c[g>>2]|0)+24>>2
]|0)+(c[h>>2]<<2)>>2];if(c[n>>2]|0)break a}while((c[h>>2]|0)>>>
0<(c[(c[g>>2]|0)+8>>2]|0)>>>0)}else{c[o>>2]=_(b,d[a+12>>0]|0)|0;o=Kc
(c[p>>2]|0,(c[(c[g>>2]|0)+4>>2]|0)+3+(c[o>>2]|0)|0)|0;c[l>>2]=o;if(o|0){p=c[l
x3e;>2]|0;i=q;return p|0}c[m>>2]=Uh(c[g>>2]|0,l)|0;if(c[l>>2]|0){p=c[l>>2]|0;i=q;return
p|0}if(c[m>>2]|0)do{c[h>>2]=(c[h>>2]|0)+1;c[n>>2]=Uh(c[g>>2]|0,l)|0;if(c[n>
;>2]|0)break a}while((c[h>>2]|0)>>>0<(c[(c[g>>2]|0)+8>>2]|0)>>
x3e;0)}while(0);if(!((c[n>>2]|0)>>>0<=((c[(c[p>>2]|0)+4>>2]|0)+1|0)>>
;>0?(c[(c[g>>2]|0)+16>>2]|0)>>>0<=((c[(c[p>>2]|0)+4>>2]|0)-(c[n
>>2]|0)+1|0)>>>0:0))c[n>>2]=(c[(c[p>>2]|0)+4>>2]|0)-(c[(c[g>>2]|
0)+16>>2]|0)+1;if(c[m>>2]|0?(c[n>>2]|0)>>>0>(c[m>>2]|0)>>
x3e;0:0){c[c[k>>2]>>2]=(c[n>>2]|0)-(c[m>>2]|0);if(c[(c[g>>2]|0)+28>>
2]|0){c[c[j>>2]>>2]=(c[(c[g>>2]|0)+28>>2]|0)+(c[m>>2]|0)+-1;p=c[l>>2
]|0;i=q;return p|0}o=Kc(c[p>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[m>>2]|0)-1|0)|0;c[l>
x3e;2]=o;if(o|0){p=c[l>>2]|0;i=q;return p|0}c[l>>2]=de(c[p>>2]|0,(c[n>>2]|0)-(c[m>
x3e;2]|0)|0,c[j>>2]|0)|0;p=c[l>>2]|0;i=q;return p|0}c[c[j>>2]>>2]=0;c[c[k>>2]
x3e;>2]=0;p=c[l>>2]|0;i=q;return p|0}c[l>>2]=6;p=c[l>>2]|0;i=q;return p|0}function _h(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;v=i;i=i+64|0;h=v+52|0;w=v+48|0;j=v+44|0;p=
v+40|0;m=v+36|0;x=v+32|0;s=v+28|0;k=v+24|0;o=v+20|0;n=v+16|0;t=v+12|0;q=v+8|0;r=v+4|0;l=v;c[h>>2]=e;c[w>>2]=
f;c[j>>2]=g;c[p>>2]=c[w>>2];c[m>>2]=0;c[x>>2]=c[c[h>>2]>>2
];c[x>>2]=c[x>>2];c[(c[h>>2]|0)+404>>2]=(c[h>>2]|0)+16;c[(c[h>>2]|0)+
4>>2]=c[w>>2];c[(c[h>>2]|0)+8>>2]=c[j>>2];c[(c[h>>2]|0)+12>>
;2]=c[w>>2];a:while(1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0){u=47
;break}c[s>>2]=d[c[p>>2]>>0];g=((c[(c[h>>2]|0)+404>>2]|0)-((c[h>>2]|
0)+16)|0)/4|0;b:do if((c[s>>2]|0)>>>0>=27&(c[s>>2]|0)!=31){if((g|0)>=96){u=48;
break a}w=c[p>>2]|0;f=(c[h>>2]|0)+404|0;x=c[f>>2]|0;c[f>>2]=x+4;c[x>>2]=w;if((
c[s>>2]|0)==30){c[p>>2]=(c[p>>2]|0)+1;while(1){if((c[p>>2]|0)>>>0>=(
c[j>>2]|0)>>>0){u=47;break a}c[s>>2]=(d[c[p>>2]>>0]|0)>>4;if((c
[s>>2]|0)==15)break b;c[s>>2]=(d[c[p>>2]>>0]|0)&15;if((c[s>>2]|0)==15)break
b;c[p>>2]=(c[p>>2]|0)+1}}if((c[s>>2]|0)==28){c[p>>2]=(c[p>>2]|0)+2;break}if((
c[s>>2]|0)==29){c[p>>2]=(c[p>>2]|0)+4;break}if((c[s>>2]|0)>>>0>246)c
[p>>2]=(c[p>>2]|0)+1}else{c[o>>2]=g;c[c[(c[h>>2]|0)+404>>2]>>2]=c[p
x3e;>2];c[k>>2]=c[s>>2];if((c[s>>2]|0)==12){c[p>>2]=(c[p>>2]|0)+1;if((c[p
>>2]|0)>>>0>=(c[j>>2]|0)>>>0){u=50;break a}c[k>>2]=256|(d[c[p
x3e;>2]>>0]|0)}c[k>>2]=c[k>>2]|c[(c[h>>2]|0)+408>>2];c[n>>2]=920
;while(1){if(!(c[c[n>>2]>>2]|0))break;if((c[(c[n>>2]|0)+4>>2]|0)==(c[k>>2]|0)){
u=23;break}c[n>>2]=(c[n>>2]|0)+28}c:do if((u|0)==23){u=0;c[q>>2]=(c[(c[h>>2]|0)+412>
;>2]|0)+(c[(c[n>>2]|0)+8>>2]|0);if((c[o>>2]|0)>>>0<1?(c[c[n>>2]
x3e;>2]|0)!=6:0){u=49;break a}switch(c[c[n>>2]>>2]|0){case 1:case 4:case 5:{c[t>>2]=hi((c[h
x3e;>2]|0)+16|0)|0;break}case 2:{c[t>>2]=fi((c[h>>2]|0)+16|0)|0;break}case 3:{c[t>>2]=di((c[h
>>2]|0)+16|0,3)|0;break}case 6:{c[r>>2]=(c[(c[h>>2]|0)+412>>2]|0)+(c[(c[n>>2]|
0)+24>>2]|0);c[l>>2]=(c[h>>2]|0)+16;if((c[o>>2]|0)>>>0>(c[(c[n>
x3e;2]|0)+20>>2]|0)>>>0)c[o>>2]=c[(c[n>>2]|0)+20>>2];a[c[r>>2]
x3e;>0]=c[o>>2];c[t>>2]=0;while(1){if((c[o>>2]|0)>>>0<=0)break c;x=c[l>
;>2]|0;c[l>>2]=x+4;x=hi(x)|0;c[t>>2]=(c[t>>2]|0)+x;switch(d[(c[n>>2]|0)+12>>
;0]|0|0){case 1:{a[c[q>>2]>>0]=c[t>>2];break}case 2:{b[c[q>>2]>>1]=c[t>
x3e;2];break}case 4:{c[c[q>>2]>>2]=c[t>>2];break}default:c[c[q>>2]>>2]=c[t>
;>2]}c[q>>2]=(c[q>>2]|0)+(d[(c[n>>2]|0)+12>>0]|0);c[o>>2]=(c[o>>
;2]|0)+-1}}default:{c[m>>2]=Ta[c[(c[n>>2]|0)+16>>2]&63](c[h>>2]|0)|0;if(c[m>
x3e;2]|0){u=47;break a}else break c}}switch(d[(c[n>>2]|0)+12>>0]|0|0){case 1:{a[c[q>>2]>>
;0]=c[t>>2];break c}case 2:{b[c[q>>2]>>1]=c[t>>2];break c}case 4:{c[c[q>>2]>
;>2]=c[t>>2];break c}default:{c[c[q>>2]>>2]=c[t>>2];break c}}}while(0);c[(c[h>
x3e;2]|0)+404>>2]=(c[h>>2]|0)+16}while(0);c[p>>2]=(c[p>>2]|0)+1}if((u|0)==47){x=c[m>
;>2]|0;i=v;return x|0}else if((u|0)==48){c[m>>2]=6;x=c[m>>2]|0;i=v;return x|0}else if((u|0)==49){c[m>
;>2]=6;x=c[m>>2]|0;i=v;return x|0}else if((u|0)==50){c[m>>2]=6;x=c[m>>2]|0;i=v;return x|0}return
0}function $h(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0,k=0,l=0;j=i;i=i+32|0;k=j+28|0;l=j+24|0;e=j+20|0;f=j+16|0;h=j+12|0;b=j+8|
0;d=j+4|0;g=j;c[k>>2]=a;c[l>>2]=c[(c[k>>2]|0)+412>>2];c[e>>2]=(c[l>>
2]|0)+48;c[f>>2]=(c[l>>2]|0)+68;c[h>>2]=(c[l>>2]|0)+64;c[b>>2]=(c[k>>
;2]|0)+16;c[d>>2]=161;if((c[(c[k>>2]|0)+404>>2]|0)>>>0<((c[k>>2]|0)+
16+24|0)>>>0){l=c[d>>2]|0;i=j;return l|0}c[d>>2]=0;l=c[b>>2]|0;c[b>>2]=l+
4;l=ai(l,g)|0;c[c[e>>2]>>2]=l;c[g>>2]=0-(c[g>>2]|0);if((c[g>>2]|0)<0|(c[g
>>2]|0)>9){c[c[e>>2]>>2]=65536;c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|
0)+8>>2]=0;c[(c[e>>2]|0)+12>>2]=65536;c[c[f>>2]>>2]=0;c[(c[f>>2]|0)+
4>>2]=0;c[c[h>>2]>>2]=1;l=c[d>>2]|0;i=j;return l|0}else{l=c[b>>2]|0;c[b>
x3e;2]=l+4;l=di(l,c[g>>2]|0)|0;c[(c[e>>2]|0)+8>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l
=di(l,c[g>>2]|0)|0;c[(c[e>>2]|0)+4>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l=di(l,c[g>
;>2]|0)|0;c[(c[e>>2]|0)+12>>2]=l;l=c[b>>2]|0;c[b>>2]=l+4;l=di(l,c[g>>2]|0
)|0;c[c[f>>2]>>2]=l;l=di(c[b>>2]|0,c[g>>2]|0)|0;c[(c[f>>2]|0)+4>>2]=
l;c[c[h>>2]>>2]=c[2376+(c[g>>2]<<2)>>2];l=c[d>>2]|0;i=j;return l|0}return
0}function ai(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;e=j+16|0;k=j+12|0;f=j+8|0;h=j+4|0;g=j;c[k>>2]=
a;c[f>>2]=b;b=c[c[k>>2]>>2]|0;a=c[(c[k>>2]|0)+4>>2]|0;if((d[c[c[k>>2
]>>2]>>0]|0|0)==30){c[e>>2]=bi(b,a,0,c[f>>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}c
[h>>2]=ci(b,a)|0;if((c[h>>2]|0)<=32767){c[c[f>>2]>>2]=0;c[e>>2]=c[h>
x3e;2]<<16;k=c[e>>2]|0;i=j;return k|0}c[g>>2]=5;while(1){if((c[g>>2]|0)>=10)break;if
((c[h>>2]|0)<(c[2376+(c[g>>2]<<2)>>2]|0))break;c[g>>2]=(c[g>>2]|
0)+1}a=c[g>>2]|0;if(((c[h>>2]|0)/(c[2376+((c[g>>2]|0)-5<<2)>>2]|0)|0|0)>32767
){c[c[f>>2]>>2]=a-4;c[e>>2]=Vb(c[h>>2]|0,c[2376+((c[g>>2]|0)-4<<2)
x3e;>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}else{c[c[f>>2]>>2]=a-5;c[e>>2]=Vb(c[h>
x3e;2]|0,c[2376+((c[g>>2]|0)-5<<2)>>2]|0)|0;k=c[e>>2]|0;i=j;return k|0}return 0}function
bi(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,v=0,w=0,x=0,y=0,z=0;y=i;i=i+80|
0;z=y+64|0;g=y+60|0;h=y+56|0;t=y+52|0;n=y+48|0;m=y+44|0;o=y+40|0;w=y+36|0;r=y+32|0;u=y+28|0;x=y+24|0;k=y+20|0;j=y+16|0;l=y+12|0;
v=y+8|0;q=y+4|0;s=y;c[z>>2]=a;c[g>>2]=b;c[h>>2]=e;c[t>>2]=f;c[n>>2]=c[z>
x3e;2];c[x>>2]=0;c[k>>2]=0;if(c[t>>2]|0)c[c[t>>2]>>2]=0;c[w>>2]=0;c[
r>>2]=0;c[u>>2]=0;c[j>>2]=0;c[l>>2]=0;c[v>>2]=0;c[o>>2]=4;while(1){if
(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n>>2]|0)>>>0>=(c[g>>2
]|0)>>>0):0){p=54;break}c[m>>2]=(d[c[n>>2]>>0]|0)>>c[o>>2]&
;15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|0)==14){c[x>>2]=1;continue}if((c[m>>2]|0
)>>>0>9)break;if((c[r>>2]|0)>=214748364){c[j>>2]=(c[j>>2]|0)+1;continue}if
(!((c[m>>2]|0)!=0|(c[r>>2]|0)!=0))continue;c[l>>2]=(c[l>>2]|0)+1;c[r>>2]=((c[r
>>2]|0)*10|0)+(c[m>>2]|0)}if((p|0)==54){z=c[w>>2]|0;i=y;return z|0}a:do if((c[m>>2]|0)==
10){while(1){if(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n>>2]|0)>>>0>=(c
[g>>2]|0)>>>0):0)break;c[m>>2]=(d[c[n>>2]>>0]|0)>>c[o>>
;2]&15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|0)>>>0>=10)break a;if(!((c[m>
;>2]|0)!=0|(c[r>>2]|0)!=0)){c[j>>2]=(c[j>>2]|0)+-1;continue}if(!((c[r>>2]|0)<214748364
&(c[v>>2]|0)<9))continue;c[v>>2]=(c[v>>2]|0)+1;c[r>>2]=((c[r>>2]|0)*
10|0)+(c[m>>2]|0)}z=c[w>>2]|0;i=y;return z|0}while(0);if((c[m>>2]|0)==12){c[k>>2]=1;c[m
x3e;>2]=11}do if((c[m>>2]|0)==11){while(1){if(c[o>>2]|0?(c[n>>2]=(c[n>>2]|0)+1,(c[n
>>2]|0)>>>0>=(c[g>>2]|0)>>>0):0){p=54;break}c[m>>2]=(d[c[n>
;>2]>>0]|0)>>c[o>>2]&15;c[o>>2]=4-(c[o>>2]|0);if((c[m>>2]|
0)>>>0>=10){p=28;break}c[u>>2]=((c[u>>2]|0)*10|0)+(c[m>>2]|0);if((c[u>>
;2]|0)>1e3){p=54;break}}if((p|0)==28){if(!(c[k>>2]|0))break;c[u>>2]=0-(c[u>>2]|0);break}else
if((p|0)==54){z=c[w>>2]|0;i=y;return z|0}}while(0);c[u>>2]=(c[u>>2]|0)+((c[h>>2]|0)+(c[j
>>2]|0));do if(!(c[t>>2]|0)){c[l>>2]=(c[l>>2]|0)+(c[u>>2]|0);c[v>>2]=(
c[v>>2]|0)-(c[u>>2]|0);z=c[l>>2]|0;if((((c[l>>2]|0)<0?0-z|0:z)|0)>5){z=c[w>
;>2]|0;i=y;return z|0}if((c[l>>2]|0)<0){c[r>>2]=(c[r>>2]|0)/(c[2376+(0-(c[l>>2
]|0)<<2)>>2]|0)|0;c[v>>2]=(c[v>>2]|0)+(c[l>>2]|0)}if((c[v>>2]|0)==10
){c[r>>2]=(c[r>>2]|0)/10|0;c[v>>2]=(c[v>>2]|0)-1}if((c[v>>2]|0)>0)if(((c[
r>>2]|0)/(c[2376+(c[v>>2]<<2)>>2]|0)|0|0)>32767){z=c[w>>2]|0;i=y;return z
|0}else{c[w>>2]=Vb(c[r>>2]|0,c[2376+(c[v>>2]<<2)>>2]|0)|0;break}else{c[r>
x3e;2]=_(c[r>>2]|0,c[2376+(0-(c[v>>2]|0)<<2)>>2]|0)|0;if((c[r>>2]|0)>32767
){z=c[w>>2]|0;i=y;return z|0}else{c[w>>2]=c[r>>2]<<16;break}}}else{c[v>>2]=(c[
v>>2]|0)+(c[l>>2]|0);c[u>>2]=(c[u>>2]|0)+(c[l>>2]|0);j=c[r>>2]|0;if((
c[v>>2]|0)>5){g=c[r>>2]|0;h=c[v>>2]|0;if(((j|0)/(c[2376+((c[v>>2]|0)-5<<2
)>>2]|0)|0|0)>32767){c[w>>2]=Vb(g,c[2376+(h-4<<2)>>2]|0)|0;c[c[t>>2]>
;>2]=(c[u>>2]|0)-4;break}else{c[w>>2]=Vb(g,c[2376+(h-5<<2)>>2]|0)|0;c[c[t>>
;2]>>2]=(c[u>>2]|0)-5;break}}if((j|0)>32767){c[w>>2]=Vb(c[r>>2]|0,10)|0;c[c[t>
x3e;2]>>2]=(c[u>>2]|0)-(c[v>>2]|0)+1;break}if((c[u>>2]|0)>0){c[q>>2]=(c[u
>>2]|0)<5?c[u>>2]|0:5;c[u>>2]=(c[u>>2]|0)-(c[q>>2]|0);c[s>>2]=(
c[q>>2]|0)-(c[v>>2]|0);c[r>>2]=_(c[r>>2]|0,c[2376+(c[s>>2]<<2)>
x3e;2]|0)|0;if((c[r>>2]|0)>32767){c[r>>2]=(c[r>>2]|0)/10|0;c[u>>2]=(c[u>>
2]|0)+1}}else c[u>>2]=(c[u>>2]|0)-(c[v>>2]|0);c[w>>2]=c[r>>2]<<16;c[
c[t>>2]>>2]=c[u>>2]}while(0);if(!(c[x>>2]|0)){z=c[w>>2]|0;i=y;return z|0}c[w
x3e;>2]=0-(c[w>>2]|0);z=c[w>>2]|0;i=y;return z|0}function ci(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k
=0;j=i;i=i+32|0;k=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>>2]=a;c[e>>2]=b;c[f>>2]=c[k>>2
];a=c[f>>2]|0;c[f>>2]=a+1;c[g>>2]=d[a>>0];c[h>>2]=0;do if((c[g>>2]|0
)==28){if(((c[f>>2]|0)+2|0)>>>0<=(c[e>>2]|0)>>>0){c[h>>2]=(((d[
c[f>>2]>>0]|0)<<8|(d[(c[f>>2]|0)+1>>0]|0))&65535)<<16>>
;16;c[f>>2]=(c[f>>2]|0)+2;k=c[h>>2]|0;i=j;return k|0}}else{if((c[g>>2]|0)==29){if(((c[f
x3e;>2]|0)+4|0)>>>0>(c[e>>2]|0)>>>0)break;c[h>>2]=(d[c[f>>
2]>>0]|0)<<24|(d[(c[f>>2]|0)+1>>0]|0)<<16|(d[(c[f>>2]|0)+2>>
;0]|0)<<8|(d[(c[f>>2]|0)+3>>0]|0);c[f>>2]=(c[f>>2]|0)+4;k=c[h>>2]|0;
i=j;return k|0}a=c[g>>2]|0;if((c[g>>2]|0)<247){c[h>>2]=a-139;k=c[h>>2]|0;i=j;return
k|0}b=((c[f>>2]|0)+1|0)>>>0>(c[e>>2]|0)>>>0;if((a|0)<251){if(b)break
;c[h>>2]=((c[g>>2]|0)-247<<8)+(d[c[f>>2]>>0]|0)+108;c[f>>2]=(c[f>
;>2]|0)+1;k=c[h>>2]|0;i=j;return k|0}else{if(b)break;c[h>>2]=(0-((c[g>>2]|0)-251)<<
8)-(d[c[f>>2]>>0]|0)-108;c[f>>2]=(c[f>>2]|0)+1;k=c[h>>2]|0;i=j;return k|0}}while
(0);c[h>>2]=0;k=c[h>>2]|0;i=j;return k|0}function di(a,b){a=a|0;b=b|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]=b;b=c[c[g>>2]>>2]|0;a=c[(c[g>>2]|0)+4>>2]|0;if((
d[c[c[g>>2]>>2]>>0]|0|0)==30){g=bi(b,a,c[e>>2]|0,0)|0;i=f;return g|0}else{g=ci(b,a)|0;g=(
_(g,c[2376+(c[e>>2]<<2)>>2]|0)|0)<<16;i=f;return g|0}return 0}function ei(a){a=a|0;var b
=0,d=0,e=0,f=0,g=0,h=0;f=i;i=i+32|0;g=f+16|0;h=f+12|0;b=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[h>>2]=c[(c[g>>
;2]|0)+412>>2];c[b>>2]=(c[h>>2]|0)+80;c[d>>2]=(c[g>>2]|0)+16;c[e>>2]=
161;if((c[(c[g>>2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+16|0)>>>0){
h=c[e>>2]|0;i=f;return h|0}h=c[d>>2]|0;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[c[b>>2]>>
2]=h;h=c[d>>2]|0;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[(c[b>>2]|0)+4>>2]=h;h=c[d>>2]|0
;c[d>>2]=h+4;h=Tb(fi(h)|0)|0;c[(c[b>>2]|0)+8>>2]=h;h=Tb(fi(c[d>>2]|0)|0)|0;c[(c[b>
x3e;2]|0)+12>>2]=h;c[e>>2]=0;h=c[e>>2]|0;i=f;return h|0}function fi(a){a=a|0;var b=0,e=0,f=0;e=i;i
=i+16|0;f=e;c[f>>2]=a;b=c[c[f>>2]>>2]|0;a=c[(c[f>>2]|0)+4>>2]|0;if((d[c[c[f>
;>2]>>2]>>0]|0|0)==30){f=bi(b,a,0,0)|0;i=e;return f|0}else{f=(ci(b,a)|0)<<16;i=e;return f|0}return
0}function gi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+12|0;d=f+8|0;b=f+4|0;e=f;c[g>>2]=a;c[d>>2]=
c[(c[g>>2]|0)+412>>2];c[b>>2]=(c[g>>2]|0)+16;c[e>>2]=161;if((c[(c[g>>
;2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+8|0)>>>0){g=c[e>>2]|0;i=f
;return g|0}g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+116>>2]=g;g=hi(c[b>>
;2]|0)|0;c[(c[d>>2]|0)+112>>2]=g;c[e>>2]=0;g=c[e>>2]|0;i=f;return g|0}function hi(a){a=a
|0;var b=0,e=0,f=0;e=i;i=i+16|0;f=e;c[f>>2]=a;b=c[c[f>>2]>>2]|0;a=c[(c[f>>2]|0)+4>
x3e;2]|0;if((d[c[c[f>>2]>>2]>>0]|0|0)==30){f=(bi(b,a,0,0)|0)>>16;i=e;return f|0}else{f=ci
(b,a)|0;i=e;return f|0}return 0}function ii(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+12|0;d=f+8|0;b=f+4|0;e=f;c[g>
x3e;2]=a;c[d>>2]=c[(c[g>>2]|0)+412>>2];c[b>>2]=(c[g>>2]|0)+16;c[e>>2
]=161;if((c[(c[g>>2]|0)+404>>2]|0)>>>0<((c[g>>2]|0)+16+12|0)>>>
0){g=c[e>>2]|0;i=f;return g|0}g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+128>
x3e;2]=g;g=c[b>>2]|0;c[b>>2]=g+4;g=hi(g)|0;c[(c[d>>2]|0)+132>>2]=g;g=hi(c[b>>2
]|0)|0;c[(c[d>>2]|0)+136>>2]=g;c[e>>2]=0;g=c[e>>2]|0;i=f;return g|0}function ji(a,b){a=a
|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;if(c[(c[d>>2]|0)+
28>>2]|0){i=g;return}c[f>>2]=c[c[d>>2]>>2];fe(c[f>>2]|0,c[e>>2]|0);i
=g;return}function ki(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;o=i;i=i+32|0;h=o+20|0;j=o+16|0;k=o+12
|0;p=o+8|0;l=o+4|0;m=o+24|0;n=o;c[h>>2]=b;c[j>>2]=e;c[k>>2]=f;c[p>>2]=g;f=Kc(c[k>
x3e;2]|0,c[p>>2]|0)|0;c[l>>2]=f;if(f|0){p=c[l>>2]|0;i=o;return p|0}a[m>>0]=ke(c[k>
x3e;2]|0,l)|0;if(c[l>>2]|0){p=c[l>>2]|0;i=o;return p|0}a[c[h>>2]>>0]=a[m>>0]|0
;c[(c[h>>2]|0)+20>>2]=0;a:do switch(d[m>>0]|0|0){case 0:{c[(c[h>>2]|0)+12>>2]=
c[j>>2];break}case 3:{c[n>>2]=(Pc(c[k>>2]|0,l)|0)&65535;if(c[l>>2]|0){p=c[l>
x3e;2]|0;i=o;return p|0}else{c[(c[h>>2]|0)+12>>2]=((c[n>>2]|0)*3|0)+2;break a}}default:{c[l>
x3e;2]=3;p=c[l>>2]|0;i=o;return p|0}}while(0);c[l>>2]=de(c[k>>2]|0,c[(c[h>>2]|0)+12>
;>2]|0,(c[h>>2]|0)+8|0)|0;p=c[l>>2]|0;i=o;return p|0}function li(a){a=a|0;var b=0,d=0,e=0,f=0;f=i;i=i+16
|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;if(!(c[c[b>>2]>>2]|0)){i=f;return}c[e>>2]=c[c[b>
x3e;2]>>2];c[d>>2]=c[(c[e>>2]|0)+28>>2];if(c[(c[b>>2]|0)+28>>2]|0)fe
(c[e>>2]|0,(c[b>>2]|0)+28|0);Fb(c[d>>2]|0,c[(c[b>>2]|0)+24>>2]|0);c[(c[b>
x3e;2]|0)+24>>2]=0;e=c[b>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>
x3e;2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=0;i=f;return}function mi(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,v=0,w=0,x=0,y=0;y=i;i=i+48|0;r=y+36|0;s
=y+32|0;t=y+28|0;l=y+24|0;m=y+20|0;u=y+42|0;x=y+16|0;v=y+12|0;n=y+40|0;w=y+8|0;p=y+4|0;o=y;c[r>>2]=d;c[s>>2]=
f;c[t>>2]=g;c[l>>2]=h;c[m>>2]=j;a[u>>0]=k;c[x>>2]=c[(c[t>>2]|0)+28
x3e;>2];c[v>>2]=0;a:do if((c[m>>2]|0)>>>0>2){c[(c[r>>2]|0)+4>>2
]=(c[l>>2]|0)+(c[m>>2]|0);g=Kc(c[t>>2]|0,c[(c[r>>2]|0)+4>>2]|0)|0;c[v>>
;2]=g;if(((g|0)==0?(g=(ke(c[t>>2]|0,v)|0)&255,c[c[r>>2]>>2]=g,(c[v>>2]|0)==0):0)?(g
=hc(c[x>>2]|0,2,0,c[s>>2]|0,0,v)|0,c[(c[r>>2]|0)+8>>2]=g,(c[v>>2]|0)==0):0){b[
c[(c[r>>2]|0)+8>>2]>>1]=0;switch(c[c[r>>2]>>2]|0){case 0:{if((c[s>>2
]|0)>>>0<=0){q=39;break a}p=ee(c[t>>2]|0,(c[s>>2]|0)-1<<1)|0;c[v>>2]=
p;if(p|0)break a;c[w>>2]=1;while(1){l=c[t>>2]|0;if((c[w>>2]|0)>>>0>=(c[s>
x3e;2]|0)>>>0)break;q=ie(l)|0;b[(c[(c[r>>2]|0)+8>>2]|0)+(c[w>>2]<<1)>
;>1]=q;c[w>>2]=(c[w>>2]|0)+1}ge(l);q=39;break a}case 2:case 1:{c[w>>2]=1;b:while(1){if((c[w
x3e;>2]|0)>>>0>=(c[s>>2]|0)>>>0){q=39;break a}b[n>>1]=Pc(c[t>
x3e;2]|0,v)|0;if(c[v>>2]|0)break a;l=c[t>>2]|0;if((c[c[r>>2]>>2]|0)==2){c[p>>2
]=(Pc(l,v)|0)&65535;if(c[v>>2]|0)break a}else{c[p>>2]=(ke(l,v)|0)&255;if(c[v>>2]|0)break
a}if((e[n>>1]|0)>>>0>(65535-(c[p>>2]|0)|0)>>>0)c[p>>2]=65535-(
e[n>>1]|0);c[o>>2]=0;while(1){if((c[w>>2]|0)>>>0>=(c[s>>2]|0)>
x3e;>0)continue b;if((c[o>>2]|0)>>>0>(c[p>>2]|0)>>>0)continue b;b[(c
[(c[r>>2]|0)+8>>2]|0)+(c[w>>2]<<1)>>1]=b[n>>1]|0;c[o>>2]=(
c[o>>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1;b[n>>1]=(b[n>>1]|0)+1<<16>
x3e;16}}}default:{c[v>>2]=3;break a}}}}else{c[(c[r>>2]|0)+4>>2]=c[m>>2];switch(c[m>
x3e;2]|0){case 0:{if((c[s>>2]|0)>>>0>229){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0
,c[s>>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+
8>>2]|0,5556,c[s>>2]<<1|0)|0;q=39;break a}case 1:{if((c[s>>2]|0)>>>0>
;166){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0,c[s>>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2
]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+8>>2]|0,6014,c[s>>2]<<1|0)|0;q=39;break
a}case 2:{if((c[s>>2]|0)>>>0>87){c[v>>2]=3;break a}w=hc(c[x>>2]|0,2,0,c[s>
;>2]|0,0,v)|0;c[(c[r>>2]|0)+8>>2]=w;if(c[v>>2]|0)break a;Ss(c[(c[r>>2]|0)+8>
x3e;2]|0,6346,c[s>>2]<<1|0)|0;q=39;break a}default:{c[v>>2]=3;break a}}}while(0);if((q|0)==39?a[u
x3e;>0]|0:0)c[v>>2]=ni(c[r>>2]|0,c[s>>2]|0,c[x>>2]|0)|0;if(!(c[v>>2]|0)){
x=c[v>>2]|0;i=y;return x|0}Fb(c[x>>2]|0,c[(c[r>>2]|0)+8>>2]|0);c[(c[r>>2]|0)+8
>>2]=0;Fb(c[x>>2]|0,c[(c[r>>2]|0)+12>>2]|0);c[(c[r>>2]|0)+12>>2]=0;c
[c[r>>2]>>2]=0;c[(c[r>>2]|0)+4>>2]=0;c[(c[r>>2]|0)+8>>2]=0;x=c[v>
;>2]|0;i=y;return x|0}function ni(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;o=i;i=i+32|0;g=o+20|0;h=o+16
|0;j=o+12|0;k=o+8|0;l=o+4|0;m=o;n=o+24|0;c[g>>2]=a;c[h>>2]=d;c[j>>2]=f;c[k>>2]=0;b[n>
;>1]=0;if((c[(c[g>>2]|0)+16>>2]|0)>>>0>0){d=c[k>>2]|0;i=o;return d|0}c[l
x3e;>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[h>>2]|0)>>>0)break;if((e[(
c[(c[g>>2]|0)+8>>2]|0)+(c[l>>2]<<1)>>1]|0|0)>(e[n>>1]|0|0))b[n
x3e;>1]=b[(c[(c[g>>2]|0)+8>>2]|0)+(c[l>>2]<<1)>>1]|0;c[l>>2]=(c
[l>>2]|0)+1}d=hc(c[j>>2]|0,2,0,(e[n>>1]|0)+1|0,0,k)|0;c[(c[g>>2]|0)+12>>2]=d;if
(c[k>>2]|0){d=c[k>>2]|0;i=o;return d|0}c[m>>2]=(c[h>>2]|0)-1;while(1){if((c[m>>
;2]|0)<0)break;b[(c[(c[g>>2]|0)+12>>2]|0)+((e[(c[(c[g>>2]|0)+8>>2]|0)+(c[m>>
;2]<<1)>>1]|0)<<1)>>1]=c[m>>2];c[m>>2]=(c[m>>2]|0)+-1}c[(c
[g>>2]|0)+16>>2]=e[n>>1];c[(c[g>>2]|0)+20>>2]=c[h>>2];d=c[k>>
;2]|0;i=o;return d|0}function oi(a,f,g,h,j,k){a=a|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;F=i;i=i+80|0;l=F+64|0;m=F+60|0;o=F+56|0;p=F+52|0;q=F+48|0;r=F+44|0;t=F+40|0;s=F+36|0;z
=F+32|0;x=F+68|0;w=F+28|0;C=F+24|0;B=F+20|0;y=F+16|0;A=F+12|0;v=F+8|0;D=F+4|0;u=F;c[l>>2]=a;c[m>>2]=f;c[o>
;>2]=g;c[p>>2]=h;c[q>>2]=j;c[r>>2]=k;c[t>>2]=0;if(!(c[(c[m>>2]|0)+8>
x3e;2]|0)){c[t>>2]=3;E=c[t>>2]|0;i=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>
x3e;>0>=256)break;b[(c[l>>2]|0)+12+(c[z>>2]<<1)>>1]=0;b[(c[l>>2]|0)+
524+(c[z>>2]<<1)>>1]=0;c[z>>2]=(c[z>>2]|0)+1}if((c[r>>2]|0)>>
;>0<=1){switch(c[r>>2]|0){case 0:{Ss((c[l>>2]|0)+12|0,6520,512)|0;break}case 1:{Ss((c[l>>
;2]|0)+12|0,7032,512)|0;break}default:{c[t>>2]=3;E=c[t>>2]|0;i=F;return E|0}}c[(c[l>>2]|0)+8>
x3e;2]=0;c[t>>2]=ni(c[m>>2]|0,c[o>>2]|0,c[(c[p>>2]|0)+28>>2]|0)|0;if(c[t>
x3e;2]|0){E=c[t>>2]|0;i=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=256
)break;c[D>>2]=e[(c[l>>2]|0)+12+(c[z>>2]<<1)>>1];c[u>>2]=0;if(c[D>
;>2]|0)c[u>>2]=pi(c[m>>2]|0,c[D>>2]|0)|0;if(c[u>>2]|0){b[(c[l>>2]|0)+524+(
c[z>>2]<<1)>>1]=c[u>>2];c[(c[l>>2]|0)+8>>2]=(c[z>>2]|0)+1}
else{b[(c[l>>2]|0)+524+(c[z>>2]<<1)>>1]=0;b[(c[l>>2]|0)+12+(c[z>>2]
x3c;<1)>>1]=0}c[z>>2]=(c[z>>2]|0)+1}E=c[t>>2]|0;i=F;return E|0}c[(c[l>>2]|
0)+4>>2]=(c[q>>2]|0)+(c[r>>2]|0);h=Kc(c[p>>2]|0,c[(c[l>>2]|0)+4>>2]|
0)|0;c[t>>2]=h;if(h|0){E=c[t>>2]|0;i=F;return E|0}h=(ke(c[p>>2]|0,t)|0)&255;c[c[l>>
2]>>2]=h;if(c[t>>2]|0){E=c[t>>2]|0;i=F;return E|0}c[s>>2]=(ke(c[p>>2]|0,t)|0)
x26;255;if(c[t>>2]|0){E=c[t>>2]|0;i=F;return E|0}a:do switch(c[c[l>>2]>>2]&127|0){case
0:{c[(c[l>>2]|0)+8>>2]=(c[s>>2]|0)+1;h=ee(c[p>>2]|0,c[s>>2]|0)|0;c[t>>
;2]=h;if(h|0){E=c[t>>2]|0;i=F;return E|0}c[C>>2]=c[(c[p>>2]|0)+32>>2];c[z>>2]=
1;while(1){if((c[z>>2]|0)>>>0>(c[s>>2]|0)>>>0)break;h=c[C>>2]|0
;c[C>>2]=h+1;c[w>>2]=d[h>>0];if((c[z>>2]|0)>>>0<(c[o>>2]|0
)>>>0){b[(c[l>>2]|0)+524+(c[w>>2]<<1)>>1]=c[z>>2];b[(c[l>
x3e;2]|0)+12+(c[w>>2]<<1)>>1]=b[(c[(c[m>>2]|0)+8>>2]|0)+(c[z>>2]<
;<1)>>1]|0}c[z>>2]=(c[z>>2]|0)+1}ge(c[p>>2]|0);break}case 1:{c[y>>2]=1;c[(
c[l>>2]|0)+8>>2]=0;c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[s>
x3e;2]|0)>>>0){E=30;break}c[w>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break
}c[B>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break}c[B>>2]=(c[B>>2
]|0)+1;if((c[B>>2]|0)>>>0>(c[(c[l>>2]|0)+8>>2]|0)>>>0)c[(c[l>
;>2]|0)+8>>2]=c[B>>2];c[A>>2]=c[y>>2];while(1){if((c[A>>2]|0)>>
x3e;0>=((c[B>>2]|0)+(c[y>>2]|0)|0)>>>0)break;if((c[w>>2]|0)>>>0
<256?(c[A>>2]|0)>>>0<(c[o>>2]|0)>>>0:0){b[(c[l>>2]|0)+524+(
c[w>>2]<<1)>>1]=c[A>>2];b[(c[l>>2]|0)+12+(c[w>>2]<<1)>
;>1]=b[(c[(c[m>>2]|0)+8>>2]|0)+(c[A>>2]<<1)>>1]|0}c[A>>2]=(c[A
x3e;>2]|0)+1;c[w>>2]=(c[w>>2]|0)+1}c[z>>2]=(c[z>>2]|0)+1;c[y>>2]=(c[y>
;>2]|0)+(c[B>>2]|0)}if((E|0)==30){if((c[(c[l>>2]|0)+8>>2]|0)>>>0<=256)break
a;c[(c[l>>2]|0)+8>>2]=256;break a}else if((E|0)==58){E=c[t>>2]|0;i=F;return E|0}break}default:{c[
t>>2]=3;E=c[t>>2]|0;i=F;return E|0}}while(0);if(!(c[c[l>>2]>>2]&128)){E=c[t>
x3e;2]|0;i=F;return E|0}c[s>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=c[t>>2]|0;i
=F;return E|0}c[z>>2]=0;while(1){if((c[z>>2]|0)>>>0>=(c[s>>2]|0)>>
x3e;0){E=58;break}c[w>>2]=(ke(c[p>>2]|0,t)|0)&255;if(c[t>>2]|0){E=58;break}b[x>>1]=
Pc(c[p>>2]|0,t)|0;if(c[t>>2]|0){E=58;break}b[(c[l>>2]|0)+12+(c[w>>2]<<1)>
x3e;1]=b[x>>1]|0;c[v>>2]=0;while(1){if((c[v>>2]|0)>>>0>=(c[o>>2]|0)
x3e;>>0)break;n=c[v>>2]|0;if((e[(c[(c[m>>2]|0)+8>>2]|0)+(c[v>>2]<<1)
x3e;>1]|0|0)==(e[x>>1]|0|0)){E=42;break}c[v>>2]=n+1}if((E|0)==42){E=0;b[(c[l>>2]|0)+524+(c[w
x3e;>2]<<1)>>1]=n}c[z>>2]=(c[z>>2]|0)+1}if((E|0)==58){E=c[t>>2]|0;i=F;return
E|0}return 0}function pi(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>
;2]=b;c[g>>2]=0;if((c[f>>2]|0)>>>0>(c[(c[d>>2]|0)+16>>2]|0)>>
;>0){g=c[g>>2]|0;i=h;return g|0}c[g>>2]=e[(c[(c[d>>2]|0)+12>>2]|0)+(c[f>>
2]<<1)>>1];g=c[g>>2]|0;i=h;return g|0}function qi(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+32|0;n=l+28|0;m=l+24|0;h=l+20|0;j=l+16|0;f=l+12|0;e=l+8|0;g=l+4|0;k=l;c[n>>2]=b;c[m>>2]=d;c
[h>>2]=(c[n>>2]|0)+20;c[j>>2]=c[(c[c[h>>2]>>2]|0)+28>>2];c[k>
x3e;2]=0;c[g>>2]=Zh(c[h>>2]|0,c[m>>2]|0,f,e)|0;if(c[g>>2]|0){n=c[k>>2]|0;i=l;return
n|0}c[k>>2]=bc(c[j>>2]|0,(c[e>>2]|0)+1|0,g)|0;if(!(c[g>>2]|0)){Ss(c[k>>2]|0,c
[f>>2]|0,c[e>>2]|0)|0;a[(c[k>>2]|0)+(c[e>>2]|0)>>0]=0}ji(c[h>>2]|0,f
);n=c[k>>2]|0;i=l;return n|0}function ri(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;e=h+12|0;c[
d>>2]=b;c[f>>2]=0;c[g>>2]=(cs(c[d>>2]|0)|0)+1;a[e>>0]=1;a:while(1){if(!(a[e>
;>0]|0))break;if((c[g>>2]|0)>=7?(a[(c[d>>2]|0)+6>>0]|0)==43:0){c[f>>2]=0;while
(1){if((c[f>>2]|0)>=6)break;if(!(65<=(a[(c[d>>2]|0)+(c[f>>2]|0)>>0]|0)?(a[(c[d
>>2]|0)+(c[f>>2]|0)>>0]|0)<=90:0))a[e>>0]=0;c[f>>2]=(c[f>>2]|0)+
1}if(!(a[e>>0]|0))continue;c[f>>2]=7;while(1){if((c[f>>2]|0)>=(c[g>>2]|0))continue
a;a[(c[d>>2]|0)+((c[f>>2]|0)-7)>>0]=a[(c[d>>2]|0)+(c[f>>2]|0)>>0]|0;
c[f>>2]=(c[f>>2]|0)+1}}a[e>>0]=0}i=h;return}function si(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;g=e+8|0;f=e+4|0;d=e;c[h>>2]=a;c[g>>2]=b;c[d>>2]=oe(c[h>>2]|0,c[g>
;>2]|0,f)|0;c[f>>2]=c[f>>2];i=e;return c[d>>2]|0}function ti(a){a=a|0;var b=0,d=0,e=0,f=0,g=0
,h=0;h=i;i=i+32|0;b=h+16|0;e=h+12|0;f=h+8|0;g=h+4|0;d=h;c[b>>2]=a;c[e>>2]=c[b>>2];if(!(c[e>
x3e;2]|0)){i=h;return}c[f>>2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[e>>2]|0)+532
x3e;>2];if(c[g>>2]|0)Va[c[(c[g>>2]|0)+12>>2]&63](c[e>>2]|0);c[d>>2]=
c[(c[e>>2]|0)+692>>2];if(!(c[d>>2]|0)){i=h;return}ui(c[d>>2]|0);Fb(c[f>>2]|0,c
[(c[e>>2]|0)+692>>2]|0);c[(c[e>>2]|0)+692>>2]=0;i=h;return}function ui(a){a=a|0;var b=0,
d=0,e=0,f=0;f=i;i=i+16|0;b=f+8|0;e=f+4|0;d=f;c[b>>2]=a;c[e>>2]=c[(c[b>>2]|0)+4>>2];li((c
[b>>2]|0)+84|0);li((c[b>>2]|0)+1208|0);li((c[b>>2]|0)+20|0);li((c[b>>2]|0)+1176|0);if((c
[(c[b>>2]|0)+1892>>2]|0)>>>0>0){c[d>>2]=0;while(1){a=c[e>>2]|0;if((c
[d>>2]|0)>>>0>=(c[(c[b>>2]|0)+1892>>2]|0)>>>0)break;vi(a,c[(c[b
>>2]|0)+1896+(c[d>>2]<<2)>>2]|0);c[d>>2]=(c[d>>2]|0)+1}Fb(a,c[(c[b
x3e;>2]|0)+1896>>2]|0);c[(c[b>>2]|0)+1896>>2]=0}wi((c[b>>2]|0)+116|0);xi((c[b>
x3e;2]|0)+1152|0,c[c[b>>2]>>2]|0);vi(c[e>>2]|0,(c[b>>2]|0)+1324|0);zi((c[b>>2]|
0)+2024|0,c[c[b>>2]>>2]|0);Fb(c[e>>2]|0,c[(c[b>>2]|0)+2060>>2]|0);c[(c[b>
x3e;2]|0)+2060>>2]=0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1304>>2]|0);c[(c[b>>2]|0)+1304
>>2]=0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1308>>2]|0);c[(c[b>>2]|0)+1308>>2]=
0;Fb(c[e>>2]|0,c[(c[b>>2]|0)+1316>>2]|0);c[(c[b>>2]|0)+1316>>2]=0;Fb(c[e>
x3e;2]|0,c[(c[b>>2]|0)+1320>>2]|0);c[(c[b>>2]|0)+1320>>2]=0;i=f;return}function vi(a,b){
a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>>2]=a;c[e>>2]=b;if(!(c[e>>2]|0)){i=f;return
}li((c[e>>2]|0)+532|0);Fb(c[d>>2]|0,c[(c[e>>2]|0)+564>>2]|0);c[(c[e>>2]|0)+564
>>2]=0;i=f;return}function wi(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]=0;c[(c[d>>2]|0)+4>>2]=0;c[(c[d>>2]|0)+8>>2]=0;i=b;return}function xi(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)+28>>2];yi(c[e>>2]|0,c[f>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+8>>
2]|0);c[(c[e>>2]|0)+8>>2]=0;c[c[e>>2]>>2]=0;c[(c[e>>2]|0)+4>>2]=0;i=
d;return}function yi(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;Fb(c[f>
;>2]|0,c[(c[e>>2]|0)+12>>2]|0);c[(c[e>>2]|0)+12>>2]=0;c[(c[e>>2]|0)+16>
;>2]=0;i=d;return}function zi(b,d){b=b|0;d=d|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]=d;if(c[(c[e>>2]|0)+8>>2]|0)fe(c[f>>2]|0,(c[e>>2]|0)+8|0);c[(c[e>>2]|0)+12
x3e;>2]=0;a[c[e>>2]>>0]=0;c[(c[e>>2]|0)+4>>2]=0;i=g;return}function Ai(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;o=i;i=i+240|0;k=o+232|0;n=o+228|0;l=o+224|0;e=o+220|0;b=o+216|0;d=o+212|0;m=o+208
|0;h=o+12|0;g=o+8|0;f=o+4|0;j=o;c[k>>2]=a;c[n>>2]=c[k>>2];c[l>>2]=0;c[e>>2]=Bi
(c[n>>2]|0)|0;do if(c[e>>2]|0){c[b>>2]=c[c[k>>2]>>2];c[d>>2]=c[(c[b
x3e;>2]|0)+692>>2];c[g>>2]=c[(c[c[k>>2]>>2]|0)+100>>2];c[m>>2]=
bc(c[g>>2]|0,132,l)|0;if(c[l>>2]|0){n=c[l>>2]|0;i=o;return n|0}Ci((c[d>>2]|0)+1324|0,h);
c[l>>2]=Oa[c[c[e>>2]>>2]&63](c[(c[c[k>>2]>>2]|0)+100>>2]|0,h,c[
m>>2]|0)|0;if(c[l>>2]|0){n=c[l>>2]|0;i=o;return n|0}c[f>>2]=c[(c[d>>2]|0)+1892
>>2];while(1){if((c[f>>2]|0)>>>0<=0){a=8;break}c[j>>2]=c[(c[d>>2]|0)+
1896+((c[f>>2]|0)-1<<2)>>2];Ci(c[j>>2]|0,h);c[l>>2]=Oa[c[c[e>>2]>
;>2]&63](c[(c[c[k>>2]>>2]|0)+100>>2]|0,h,(c[m>>2]|0)+4+((c[f>>2]|0)-
1<<2)|0)|0;if(c[l>>2]|0){a=10;break}c[f>>2]=(c[f>>2]|0)+-1}if((a|0)==8){c[(c[k>>
;2]|0)+40>>2]=c[m>>2];break}else if((a|0)==10){n=c[l>>2]|0;i=o;return n|0}}while(0);c[(c[n>
x3e;2]|0)+44>>2]=-1;n=c[l>>2]|0;i=o;return n|0}function Bi(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=i;i=i+32|0
;f=e+16|0;h=e+12|0;g=e+8|0;d=e+4|0;b=e;c[f>>2]=a;c[h>>2]=c[c[f>>2]>>2];c[g>>2]=
c[(c[h>>2]|0)+692>>2];c[d>>2]=c[(c[g>>2]|0)+2052>>2];c[b>>2]=Wc(c[(c
[(c[c[f>>2]>>2]|0)+96>>2]|0)+4>>2]|0,11524)|0;if(!((c[b>>2]|0)!=0&(c[d>
;>2]|0)!=0)){h=0;i=e;return h|0}if(!(c[c[d>>2]>>2]|0)){h=0;i=e;return h|0}h=Ta[c[c[d>>2]>
;>2]&63](c[b>>2]|0)|0;i=e;return h|0}function Ci(d,e){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;l
=k+16|0;f=k+12|0;h=k+8|0;j=k+4|0;g=k;c[l>>2]=d;c[f>>2]=e;c[h>>2]=(c[l>>2]|0)+172;Ns(c[f
x3e;>2]|0,0,196)|0;d=a[c[h>>2]>>0]|0;a[(c[f>>2]|0)+8>>0]=d;c[g>>2]=d&
;255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break
;b[(c[f>>2]|0)+12+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+4+(c[j>>2]<<
;2)>>2];c[j>>2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|0)+1>>0]|0;a[(c[f>>2]|0)+
9>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c
[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+40+(c[j>>2]<<1)>>1]=c[(c[h>
;>2]|0)+60+(c[j>>2]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|
0)+2>>0]|0;a[(c[f>>2]|0)+10>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if((c[
j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+60+(c[j>
x3e;2]<<1)>>1]=c[(c[h>>2]|0)+100+(c[j>>2]<<2)>>2];c[j>>2]=(
c[j>>2]|0)+1}l=a[(c[h>>2]|0)+3>>0]|0;a[(c[f>>2]|0)+11>>0]=l;c[g>>2]=
l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>
;0)break;b[(c[f>>2]|0)+88+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+156+(c[j>>2
]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}c[(c[f>>2]|0)+108>>2]=c[(c[h>
x3e;2]|0)+196>>2];c[(c[f>>2]|0)+112>>2]=c[(c[h>>2]|0)+200>>2];c[(c[f>>
;2]|0)+116>>2]=c[(c[h>>2]|0)+204>>2];b[(c[f>>2]|0)+120>>1]=c[(c[h>>2
]|0)+208>>2];b[(c[f>>2]|0)+122>>1]=c[(c[h>>2]|0)+212>>2];l=a[(c[h>>2
]|0)+216>>0]|0;a[(c[f>>2]|0)+124>>0]=l;c[g>>2]=l&255;c[j>>2]=0;while(1){if
((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;b[(c[f>>2]|0)+128+(c[j
x3e;>2]<<1)>>1]=c[(c[h>>2]|0)+220+(c[j>>2]<<2)>>2];c[j>>
;2]=(c[j>>2]|0)+1}l=a[(c[h>>2]|0)+217>>0]|0;a[(c[f>>2]|0)+125>>0]=l;c[g>
x3e;2]=l&255;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>
;>0)break;b[(c[f>>2]|0)+154+(c[j>>2]<<1)>>1]=c[(c[h>>2]|0)+272+(c[j>
x3e;2]<<2)>>2];c[j>>2]=(c[j>>2]|0)+1}a[(c[f>>2]|0)+126>>0]=a[(c[h>
;>2]|0)+324>>0]|0;c[(c[f>>2]|0)+184>>2]=c[(c[h>>2]|0)+336>>2];c[(c[f>
;>2]|0)+4>>2]=c[(c[h>>2]|0)+332>>2];i=k;return}function Di(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h
=0,j=0,k=0;h=i;i=i+32|0;j=h+24|0;g=h+20|0;k=h+16|0;b=h+12|0;f=h+8|0;d=h+4|0;e=h;c[j>>2]=a;c[g>>2]=c[j>
x3e;2];c[k>>2]=c[c[g>>2]>>2];c[b>>2]=c[(c[k>>2]|0)+692>>2];c[f>
x3e;2]=c[(c[j>>2]|0)+40>>2];if(!(c[f>>2]|0)){i=h;return}c[d>>2]=Bi(c[g>>2]|0)|
0;if(!(c[d>>2]|0)){i=h;return}Va[c[(c[d>>2]|0)+8>>2]&63](c[c[f>>2]>>2]|0);
c[e>>2]=c[(c[b>>2]|0)+1892>>2];while(1){if((c[e>>2]|0)>>>0<=0)break;
Va[c[(c[d>>2]|0)+8>>2]&63](c[(c[f>>2]|0)+4+((c[e>>2]|0)-1<<2)>>
2]|0);c[e>>2]=(c[e>>2]|0)+-1}i=h;return}function Ei(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;g=i;i=i+32|0;b=
g+20|0;j=g+16|0;h=g+12|0;f=g+8|0;e=g+4|0;d=g;c[b>>2]=a;c[j>>2]=c[(c[b>>2]|0)+4>>2];c[h
x3e;>2]=c[(c[j>>2]|0)+692>>2];c[f>>2]=c[(c[h>>2]|0)+2052>>2];if(!(c[f>
;>2]|0)){i=g;return 0}c[e>>2]=Wc(c[(c[(c[(c[b>>2]|0)+4>>2]|0)+96>>2]|0)+4>>
;2]|0,11524)|0;if(!(c[e>>2]|0)){i=g;return 0}c[d>>2]=Ta[c[(c[f>>2]|0)+8>>2]&63](c[e
>>2]|0)|0;c[(c[(c[b>>2]|0)+156>>2]|0)+36>>2]=c[d>>2];i=g;return 0}function Fi(
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)+156>>2]|0)+36>>2]=0;i=b
;return}function Gi(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;o=i;i=i+32|0;f=o+28|0;g=o+24|0;h=o+
20|0;j=o+16|0;k=o+12|0;l=o+8|0;n=o+4|0;m=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[n
x3e;>2]=c[g>>2];c[m>>2]=c[h>>2];if(!(c[n>>2]|0)){c[f>>2]=37;n=c[f>
x3e;2]|0;i=o;return n|0}if(!(c[m>>2]|0))c[k>>2]=c[k>>2]|3;if(c[k>>2]&1|0)c[m>
x3e;2]=0;if(c[m>>2]|0?(c[c[h>>2]>>2]|0)!=(c[(c[g>>2]|0)+4>>2]|0):0){c[f>
x3e;2]=35;n=c[f>>2]|0;i=o;return n|0}c[l>>2]=Hi(c[n>>2]|0,c[m>>2]|0,c[j>>2]|0,
c[k>>2]|0)|0;c[f>>2]=c[l>>2];n=c[f>>2]|0;i=o;return n|0}function Hi(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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;V=i;i=i+1120|0;A=V+1092|0;B=V+1088|0;C=V+1084|0;x=V+1080|0;D=V+1076|0;I=V+1072|0;H=V+144
|0;J=V+140|0;O=V+1113|0;M=V+1112|0;r=V+136|0;K=V+120|0;L=V+112|0;k=V+108|0;m=V+104|0;n=V+100|0;l=V+1104|0;q=V+96|0;p=V+92|0;o=V+
1101|0;s=V+88|0;t=V+84|0;u=V+80|0;v=V+64|0;w=V+56|0;F=V+40|0;P=V+32|0;E=V+24|0;N=V+1100|0;z=V+1098|0;y=V+1096|0;Q=V+16|0;G=V+12|
0;R=V+8|0;S=V+4|0;T=V;c[B>>2]=f;c[C>>2]=g;c[x>>2]=h;c[D>>2]=j;c[J>>2]=c[(c[B
x3e;>2]|0)+4>>2];c[r>>2]=c[(c[J>>2]|0)+692>>2];a[M>>0]=0;if((c[(c[r>
x3e;2]|0)+1324+128>>2]|0)!=65535?c[(c[r>>2]|0)+1152+12>>2]|0:0){if(c[x>>2]|0?(c[x>
x3e;2]=pi((c[r>>2]|0)+1152|0,c[x>>2]|0)|0,(c[x>>2]|0)==0):0){c[A>>2]=6;U=c[A>>
2]|0;i=V;return U|0}}else U=6;if((U|0)==6?(c[x>>2]|0)>>>0>=(c[(c[r>>2]|0)+12>>
2]|0)>>>0:0){c[A>>2]=6;U=c[A>>2]|0;i=V;return U|0}if(c[D>>2]&1024|0)c[D>
x3e;2]=c[D>>2]|3;c[(c[B>>2]|0)+164>>2]=65536;c[(c[B>>2]|0)+168>>2]=65536;if(c[
C>>2]|0){c[(c[B>>2]|0)+164>>2]=c[(c[C>>2]|0)+12+4>>2];c[(c[B>>2]|0)+
168>>2]=c[(c[C>>2]|0)+12+8>>2]}if((((c[C>>2]|0?(c[k>>2]=c[c[C>>2]>
;>2],c[m>>2]=c[(c[k>>2]|0)+532>>2],c[n>>2]=c[(c[k>>2]|0)+104>>2
],(c[(c[C>>2]|0)+44>>2]|0)!=-1):0)?c[(c[m>>2]|0)+140>>2]|0:0)?(c[D>>2]&8|
0)==0:0)?(c[I>>2]=Na[c[(c[m>>2]|0)+104>>2]&1](c[J>>2]|0,c[(c[C>>2]|0)+44
x3e;>2]|0,c[x>>2]|0,c[D>>2]|0,c[n>>2]|0,(c[B>>2]|0)+76|0,l)|0,(c[I>>2]|0)==
0):0){b[(c[B>>2]|0)+108+2>>1]=0;b[(c[B>>2]|0)+108>>1]=0;c[(c[B>>2]|0)+24>
x3e;2]=d[l+1>>0]<<6;c[(c[B>>2]|0)+24+4>>2]=d[l>>0]<<6;c[(c[B>
x3e;2]|0)+24+8>>2]=a[l+2>>0]<<6;c[(c[B>>2]|0)+24+12>>2]=a[l+3>>0]<
;<6;c[(c[B>>2]|0)+24+16>>2]=d[l+4>>0]<<6;c[(c[B>>2]|0)+24+20>>2
]=a[l+5>>0]<<6;c[(c[B>>2]|0)+24+24>>2]=a[l+6>>0]<<6;c[(c[B>>
;2]|0)+24+28>>2]=d[l+7>>0]<<6;c[(c[B>>2]|0)+72>>2]=1651078259;if(c[D>>
;2]&16|0){c[(c[B>>2]|0)+100>>2]=a[l+5>>0];c[(c[B>>2]|0)+104>>2]=a[l+6>
;>0]}else{c[(c[B>>2]|0)+100>>2]=a[l+2>>0];c[(c[B>>2]|0)+104>>2]=a[l+3>
;>0]}c[A>>2]=c[I>>2];U=c[A>>2]|0;i=V;return U|0}if(c[D>>2]&16384|0){c[A>
x3e;2]=6;U=c[A>>2]|0;i=V;return U|0}k=c[r>>2]|0;if(c[(c[r>>2]|0)+1892>>2]|0){a[o>
x3e;0]=Ii(k+2024|0,c[x>>2]|0)|0;if((d[o>>0]|0)>>>0>=(c[(c[r>>2]|0)+1892>
x3e;2]|0)>>>0)a[o>>0]=(c[(c[r>>2]|0)+1892>>2]|0)-1;c[q>>2]=c[(c[r>
x3e;2]|0)+1324+64>>2];c[p>>2]=c[(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|
0)+64>>2];n=(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|0)+48|0;c[K>>2]=c[n
>>2];c[K+4>>2]=c[n+4>>2];c[K+8>>2]=c[n+8>>2];c[K+12>>2]=c[n+12>
x3e;2];o=(c[(c[r>>2]|0)+1896+(d[o>>0]<<2)>>2]|0)+68|0;c[L>>2]=c[o>>2
];c[L+4>>2]=c[o+4>>2];if((c[q>>2]|0)!=(c[p>>2]|0)){o=xb(c[(c[B>>2]|0)+164>
;>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[(c[B>>2]|0)+164>>2]=o;q=xb(c[(c[B>>2]|0)+
168>>2]|0,c[q>>2]|0,c[p>>2]|0)|0;c[(c[B>>2]|0)+168>>2]=q;a[M>>0]=1}}
else{q=k+1324+48|0;c[K>>2]=c[q>>2];c[K+4>>2]=c[q+4>>2];c[K+8>>2]=c[q+8>
x3e;2];c[K+12>>2]=c[q+12>>2];q=(c[r>>2]|0)+1324+68|0;c[L>>2]=c[q>>2];c[L+4>
;>2]=c[q+4>>2]}b[(c[B>>2]|0)+108+2>>1]=0;b[(c[B>>2]|0)+108>>1]=0;if(!(c[D
>>2]&1))k=(c[D>>2]&2|0)==0;else k=0;a[O>>0]=k&1;c[(c[B>>2]|0)+72>>
;2]=1869968492;Ji(H,c[J>>2]|0,c[C>>2]|0,c[B>>2]|0,a[O>>0]|0,c[D>>2]>>
;16&15);if(c[D>>2]&256|0)a[H+753>>0]=1;a[H+66>>0]=c[D>>2]&0;c[I>>
;2]=Mi(c[J>>2]|0,c[x>>2]|0,s,t)|0;do if(((c[I>>2]|0)==0?(c[I>>2]=Ni(H,c[C>>2]|
0,c[x>>2]|0)|0,(c[I>>2]|0)==0):0)?(c[I>>2]=Oi(H,c[s>>2]|0,c[t>>2]|0)|0,Yi(c[J
x3e;>2]|0,s,c[t>>2]|0),(c[I>>2]|0)==0):0){if(c[(c[(c[J>>2]|0)+128>>2]|0)+52>
x3e;2]|0){c[(c[B>>2]|0)+136>>2]=0;c[(c[B>>2]|0)+140>>2]=0;break}c[u>>2]=(c[r
x3e;>2]|0)+1176;if(c[(c[u>>2]|0)+24>>2]|0){c[(c[B>>2]|0)+136>>2]=(c[(c[u>>
;2]|0)+28>>2]|0)+(c[(c[(c[u>>2]|0)+24>>2]|0)+(c[x>>2]<<2)>>2]|0)+-1;
c[(c[B>>2]|0)+140>>2]=c[t>>2]}}while(0);if(!(c[I>>2]|0))Zi(H);if(((c[I>>2]|0)==
0?c[(c[(c[J>>2]|0)+128>>2]|0)+52>>2]|0:0)?c[(c[c[(c[(c[J>>2]|0)+128>>2]|0)+52
x3e;>2]>>2]|0)+8>>2]|0:0){c[v>>2]=c[H+32>>2];c[v+4>>2]=0;c[v+8>>
;2]=c[H+40>>2];c[v+12>>2]=c[H+40+4>>2];c[I>>2]=Wa[c[(c[c[(c[(c[J>>2]|0)+128>
;>2]|0)+52>>2]>>2]|0)+8>>2]&31](c[(c[(c[(c[J>>2]|0)+128>>2]|0)+52>
;>2]|0)+4>>2]|0,c[x>>2]|0,0,v)|0;c[H+32>>2]=c[v>>2];c[H+40>>2]=c[v+8>
;>2];c[H+40+4>>2]=c[v+12>>2]}do if(!(c[I>>2]|0)){k=c[B>>2]|0;if(c[D>>2]
x26;1024|0){c[w>>2]=c[k+156>>2];c[(c[B>>2]|0)+24+8>>2]=c[H+32>>2];c[(c[B>
x3e;2]|0)+24+16>>2]=c[H+744>>2];U=(c[w>>2]|0)+12|0;c[U>>2]=c[K>>2];c[U+4>
x3e;2]=c[K+4>>2];c[U+8>>2]=c[K+8>>2];c[U+12>>2]=c[K+12>>2];U=(c[w>>2
]|0)+28|0;c[U>>2]=c[L>>2];c[U+4>>2]=c[L+4>>2];a[(c[w>>2]|0)+8>>0]=1;
break}c[P>>2]=k+24;c[(c[P>>2]|0)+16>>2]=c[H+744>>2];c[(c[B>>2]|0)+56>>
;2]=c[H+744>>2];a[(c[(c[B>>2]|0)+156>>2]|0)+8>>0]=0;if(d[(c[J>>2]|0)+296>
x3e;0]|0?(e[(c[J>>2]|0)+300+34>>1]|0)>0:0)k=(c[(c[J>>2]|0)+300+36>>2]|0)!=0;else k=
0;a[N>>0]=k&1;do if(!(a[N>>0]|0)){k=c[J>>2]|0;if((e[(c[J>>2]|0)+368>>1]|0
)!=65535){c[(c[P>>2]|0)+28>>2]=(b[k+368+70>>1]|0)-(b[(c[J>>2]|0)+368+72>>1]|0);
break}else{c[(c[P>>2]|0)+28>>2]=(b[k+216+4>>1]|0)-(b[(c[J>>2]|0)+216+6>>1]|0);
break}}else{b[z>>1]=0;b[y>>1]=0;Za[c[(c[(c[J>>2]|0)+532>>2]|0)+156>>2]&31
](c[J>>2]|0,1,c[x>>2]|0,z,y)|0;c[(c[P>>2]|0)+24>>2]=b[z>>1];c[(c[P>>
2]|0)+28>>2]=e[y>>1]}while(0);c[(c[B>>2]|0)+60>>2]=c[(c[P>>2]|0)+28>>
;2];c[(c[B>>2]|0)+72>>2]=1869968492;c[(c[B>>2]|0)+108+16>>2]=0;if(c[C>>2]|0?(e
[(c[C>>2]|0)+12+2>>1]|0)<24:0){J=(c[B>>2]|0)+108+16|0;c[J>>2]=c[J>>2]|256
}J=(c[B>>2]|0)+108+16|0;c[J>>2]=c[J>>2]|4;do if((c[K>>2]|0)==65536?(c[K+12>>2]|
0)==65536:0){if(c[K+4>>2]|0){U=64;break}if(c[K+8>>2]|0)U=64}else U=64;while(0);if((U|0)==64)Kb((c[B>>
;2]|0)+108|0,K);if(!((c[L>>2]|0)==0?!(c[L+4>>2]|0):0))Nb((c[B>>2]|0)+108|0,c[L>>2]|0,c[L
+4>>2]|0);c[E>>2]=c[(c[P>>2]|0)+16>>2];c[E+4>>2]=0;Lb(E,K);c[(c[P>>2
]|0)+16>>2]=(c[E>>2]|0)+(c[L>>2]|0);c[E>>2]=0;c[E+4>>2]=c[(c[P>>2]|0
)+28>>2];Lb(E,K);c[(c[P>>2]|0)+28>>2]=(c[E+4>>2]|0)+(c[L+4>>2]|0);if(!((c[D>
;>2]&1|0)!=0?!(d[M>>0]|0):0)){c[G>>2]=(c[B>>2]|0)+108;c[R>>2]=c[(c[G>>
;2]|0)+4>>2];c[S>>2]=c[(c[B>>2]|0)+164>>2];c[T>>2]=c[(c[B>>2]|0)+168
>>2];if(!(a[O>>0]|0?(c[H+68>>2]|0)!=0:0))U=72;a:do if((U|0)==72){c[Q>>2]=b[(c[G>>
;2]|0)+2>>1];while(1){if((c[Q>>2]|0)<=0)break a;U=Mb(c[c[R>>2]>>2]|0,c[S>>
;2]|0)|0;c[c[R>>2]>>2]=U;U=Mb(c[(c[R>>2]|0)+4>>2]|0,c[T>>2]|0)|0;c[(c[R>
x3e;2]|0)+4>>2]=U;c[Q>>2]=(c[Q>>2]|0)+-1;c[R>>2]=(c[R>>2]|0)+8}}while(0);U=Mb(
c[(c[P>>2]|0)+16>>2]|0,c[S>>2]|0)|0;c[(c[P>>2]|0)+16>>2]=U;U=Mb(c[(c[P>
x3e;2]|0)+28>>2]|0,c[T>>2]|0)|0;c[(c[P>>2]|0)+28>>2]=U}_d((c[B>>2]|0)+108|0,F);
c[c[P>>2]>>2]=(c[F+8>>2]|0)-(c[F>>2]|0);c[(c[P>>2]|0)+4>>2]=(c[F+12
x3e;>2]|0)-(c[F+4>>2]|0);c[(c[P>>2]|0)+8>>2]=c[F>>2];c[(c[P>>2]|0)+12>
;>2]=c[F+12>>2];if(a[N>>0]|0){c[(c[P>>2]|0)+20>>2]=(c[(c[P>>2]|0)+8>
x3e;2]|0)-((c[(c[P>>2]|0)+16>>2]|0)/2|0);break}if(!(c[D>>2]&16))break;Bd(c[P>>2]|0,
c[(c[P>>2]|0)+28>>2]|0)}while(0);c[A>>2]=c[I>>2];U=c[A>>2]|0;i=V;return U|0}function
Ii(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;o=i;i=i+32|0;j=o+20|0;f=o+16|0;k=o+25|0;g=o+12|0;h=o+8|0;l=o+24|0;m
=o+4|0;n=o;c[j>>2]=b;c[f>>2]=e;a[k>>0]=0;switch(d[c[j>>2]>>0]|0|0){case 0:{a[k
>>0]=a[(c[(c[j>>2]|0)+8>>2]|0)+(c[f>>2]|0)>>0]|0;n=a[k>>0]|0;i=o;return
n|0}case 3:{b=c[j>>2]|0;if(((c[f>>2]|0)-(c[(c[j>>2]|0)+16>>2]|0)|0)>>>0
x3c;(c[(c[j>>2]|0)+20>>2]|0)>>>0){a[k>>0]=a[b+24>>0]|0;n=a[k>>0
]|0;i=o;return n|0}c[g>>2]=c[b+8>>2];c[h>>2]=(c[g>>2]|0)+(c[(c[j>>2]|0)+12>
;>2]|0);c[g>>2]=(c[g>>2]|0)+2;c[m>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[g>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;while(1){if((c[f>>
2]|0)>>>0<(c[m>>2]|0)>>>0){b=10;break}e=c[g>>2]|0;c[g>>2]=e+1;a
[l>>0]=a[e>>0]|0;c[g>>2]=(c[g>>2]|0)+2;c[n>>2]=(((d[(c[g>>2]|0)+-2
x3e;>0]|0)&65535)<<8|((d[(c[g>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if
((c[f>>2]|0)>>>0<(c[n>>2]|0)>>>0){b=8;break}c[m>>2]=c[n>
x3e;2];if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>>0){b=10;break}}if((b|0)==8){a[k
x3e;>0]=a[l>>0]|0;c[(c[j>>2]|0)+16>>2]=c[m>>2];c[(c[j>>2]|0)+20>>
;2]=(c[n>>2]|0)-(c[m>>2]|0);a[(c[j>>2]|0)+24>>0]=a[l>>0]|0;n=a[k>>0]|
0;i=o;return n|0}else if((b|0)==10){n=a[k>>0]|0;i=o;return n|0}break}default:{n=a[k>>0]|0;i=o;return n|0}}return
0}function Ji(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;j=i;i=i+32|0;k=j+20|0;q=j+16
|0;p=j+12|0;o=j+8|0;n=j+24|0;l=j+4|0;m=j;c[k>>2]=b;c[q>>2]=d;c[p>>2]=e;c[o>>2]=f;a[n>
;>0]=g;c[l>>2]=h;c[m>>2]=c[(c[q>>2]|0)+692>>2];Ns(c[k>>2]|0,0,928)|0;Ki(c
[k>>2]|0,c[q>>2]|0,c[p>>2]|0,c[o>>2]|0,a[n>>0]|0);c[(c[k>>2]|0)+76
x3e;>2]=c[m>>2];c[(c[k>>2]|0)+892>>2]=c[(c[m>>2]|0)+84+8>>2];c[(c[k>
x3e;2]|0)+908>>2]=c[(c[m>>2]|0)+1308>>2];f=Li(c[(c[m>>2]|0)+1324+44>>2]|0,c[(c
[k>>2]|0)+892>>2]|0)|0;c[(c[k>>2]|0)+900>>2]=f;c[(c[k>>2]|0)+920>>2]=
c[l>>2];i=j;return}function Ki(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;p=i;i=i+32
|0;j=p+20|0;q=p+16|0;k=p+12|0;l=p+8|0;m=p+24|0;o=p+4|0;n=p;c[j>>2]=b;c[q>>2]=e;c[k>>2]=f;c[l>
x3e;2]=g;a[m>>0]=h;a[(c[j>>2]|0)+64>>0]=0;a[(c[j>>2]|0)+65>>0]=1;c[(c[j>
x3e;2]|0)+4>>2]=c[q>>2];c[(c[j>>2]|0)+8>>2]=c[l>>2];c[c[j>>2]>
x3e;2]=c[(c[q>>2]|0)+100>>2];if(c[l>>2]|0?(c[o>>2]=c[c[(c[l>>2]|0)+156>
x3e;2]>>2],c[(c[j>>2]|0)+12>>2]=c[o>>2],c[(c[j>>2]|0)+16>>2]=(c[o>
;>2]|0)+20,c[(c[j>>2]|0)+20>>2]=(c[o>>2]|0)+56,dc(c[o>>2]|0),c[(c[j>>2]|0
)+72>>2]=0,c[(c[j>>2]|0)+68>>2]=0,(d[m>>0]|0|0)!=0&(c[k>>2]|0)!=0):0){c[n
>>2]=c[(c[k>>2]|0)+40>>2];c[(c[j>>2]|0)+72>>2]=c[c[n>>2]>>
2];c[(c[j>>2]|0)+68>>2]=c[(c[(c[l>>2]|0)+156>>2]|0)+36>>2]}c[(c[j>>2
]|0)+24>>2]=0;c[(c[j>>2]|0)+28>>2]=0;c[(c[j>>2]|0)+32>>2]=0;c[(c[j>>
2]|0)+32+4>>2]=0;c[(c[j>>2]|0)+40>>2]=0;c[(c[j>>2]|0)+40+4>>2]=0;i=p;return}function
Li(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=i;i=i+16|0;g=f+8|0;d=f+4|0;e=f;c[g>>2]=a;c[d>>2]=b;do if((c[g>
;>2]|0)!=1){if((c[d>>2]|0)>>>0<1240){c[e>>2]=107;break}if((c[d>>2]|0)>
;>>0<33900){c[e>>2]=1131;break}else{c[e>>2]=32768;break}}else c[e>>2]=0;while(0);i=
f;return c[e>>2]|0}function Mi(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;o=i;i=i+48|0;f
=o+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;m=o+8|0;n=o+4|0;l=o;c[g>>2]=a;c[h>>2]=b;c[j>>2]=d;c[k
x3e;>2]=e;a=c[g>>2]|0;if(c[(c[(c[g>>2]|0)+128>>2]|0)+52>>2]|0){c[n>>2]=Oa
[c[c[c[(c[a+128>>2]|0)+52>>2]>>2]>>2]&63](c[(c[(c[(c[g>>2]|0)+128>
x3e;2]|0)+52>>2]|0)+4>>2]|0,c[h>>2]|0,m)|0;c[c[j>>2]>>2]=c[m>>2];c[c
[k>>2]>>2]=c[m+4>>2];c[f>>2]=c[n>>2];n=c[f>>2]|0;i=o;return n|0}else
{c[l>>2]=c[a+692>>2];c[f>>2]=Zh((c[l>>2]|0)+1176|0,c[h>>2]|0,c[j>>2]|
0,c[k>>2]|0)|0;n=c[f>>2]|0;i=o;return n|0}return 0}function Ni(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;q=i;i=i+48|0;g=q+28|0;h=q+24|0;j=q+20|0;k=q+16|0;l=q+12|0;p=q+8|0;m=q+4|0;n=q+32|0;o=q;c[g>>2]=
b;c[h>>2]=e;c[j>>2]=f;c[k>>2]=c[g>>2];c[l>>2]=c[(c[(c[k>>2]|0)+4>
;>2]|0)+692>>2];c[p>>2]=(c[l>>2]|0)+1324;c[m>>2]=0;do if(c[(c[l>>2]|0)+1892
>>2]|0){a[n>>0]=Ii((c[l>>2]|0)+2024|0,c[j>>2]|0)|0;if((d[n>>0]|0)>>
x3e;0>=(c[(c[l>>2]|0)+1892>>2]|0)>>>0){c[m>>2]=3;p=c[m>>2]|0;i=q;return
p|0}else{c[p>>2]=c[(c[l>>2]|0)+1896+((d[n>>0]|0)<<2)>>2];if(!(c[h>>
2]|0?(c[(c[k>>2]|0)+68>>2]|0)!=0:0))break;c[o>>2]=c[(c[h>>2]|0)+40>>2];c[(c[k
x3e;>2]|0)+72>>2]=c[(c[o>>2]|0)+4+((d[n>>0]|0)<<2)>>2];break}}while(0);c[(
c[g>>2]|0)+888>>2]=c[(c[p>>2]|0)+532+8>>2];c[(c[g>>2]|0)+904>>2]=c[(
c[p>>2]|0)+564>>2];e=Li(c[(c[(c[g>>2]|0)+76>>2]|0)+1324+44>>2]|0,c[(c[g>
x3e;2]|0)+888>>2]|0)|0;c[(c[g>>2]|0)+896>>2]=e;c[(c[g>>2]|0)+744>>2]=c[(c[p>
;>2]|0)+172+352>>2];c[(c[g>>2]|0)+748>>2]=c[(c[p>>2]|0)+172+356>>2];p=c[m
>>2]|0;i=q;return p|0}function Oi(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,$=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;ta=i;i=i+272|0;h=
ta+256|0;j=ta+252|0;va=ta+248|0;ua=ta+244|0;y=ta+240|0;ra=ta+236|0;K=ta+232|0;L=ta+228|0;m=ta+224|0;pa=ta+220|0;qa=ta+216|0;$=ta
+212|0;ca=ta+208|0;n=ta+204|0;A=ta+200|0;W=ta+196|0;la=ta+260|0;ba=ta+192|0;ma=ta+188|0;l=ta+184|0;T=ta+180|0;Z=ta+176|0;aa=ta+172
|0;X=ta+168|0;M=ta+164|0;N=ta+160|0;O=ta+156|0;Y=ta+152|0;P=ta+148|0;V=ta+144|0;Q=ta+140|0;U=ta+136|0;R=ta+132|0;ea=ta+128|0;fa=
ta+124|0;da=ta+120|0;ga=ta+116|0;w=ta+112|0;x=ta+108|0;B=ta+104|0;s=ta+100|0;ha=ta+96|0;v=ta+92|0;z=ta+88|0;k=ta+84|0;t=ta+80|0;
_=ta+76|0;S=ta+72|0;ia=ta+68|0;E=ta+64|0;u=ta+60|0;F=ta+56|0;ja=ta+52|0;C=ta+48|0;ka=ta+44|0;D=ta+40|0;na=ta+36|0;G=ta+32|0;H=ta
+28|0;oa=ta+24|0;o=ta+20|0;p=ta+16|0;q=ta+12|0;r=ta+8|0;I=ta+4|0;J=ta;c[j>>2]=e;c[va>>2]=f;c[ua>>2
]=g;c[m>>2]=c[j>>2];c[n>>2]=c[(c[(c[j>>2]|0)+76>>2]|0)+1324+44>>2];c
[(c[j>>2]|0)+756>>2]=0;a[(c[j>>2]|0)+752>>0]=1;c[$>>2]=$^j^va;e=(c[$>>
;2]^c[$>>2]>>10^c[$>>2]>>20)&65535;c[$>>2]=e;c[$>>2]=(c[$>
x3e;2]|0)==0?29572:e;c[(c[j>>2]|0)+276>>2]=(c[j>>2]|0)+80;c[(c[j>>2]|0)+676>>2
]=(c[j>>2]|0)+280;c[ra>>2]=(c[j>>2]|0)+280;c[ca>>2]=c[(c[j>>2]|0)+276>>
;2];c[A>>2]=c[(c[m>>2]|0)+68>>2];a[(c[m>>2]|0)+64>>0]=0;c[c[ra>>2]
x3e;>2]=c[va>>2];e=(c[va>>2]|0)+(c[ua>>2]|0)|0;c[(c[ra>>2]|0)+4>>2]=e;c[L
>>2]=e;e=c[c[ra>>2]>>2]|0;c[(c[ra>>2]|0)+8>>2]=e;c[K>>2]=e;c[y>
x3e;2]=0;c[pa>>2]=c[(c[m>>2]|0)+24>>2];c[qa>>2]=c[(c[m>>2]|0)+28>>2];
if(c[A>>2]|0)Va[c[(c[A>>2]|0)+4>>2]&63](c[c[A>>2]>>2]|0);a:while(1){if((c
[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0){sa=307;break}va=c[K>>2]|0;c[K
x3e;>2]=va+1;a[la>>0]=a[va>>0]|0;if((d[la>>0]|0)<32?(d[la>>0]|0)!=28:0){c[l>
;>2]=c[(c[j>>2]|0)+276>>2];c[T>>2]=((c[l>>2]|0)-((c[j>>2]|0)+80)|0)/4|0;c
[W>>2]=0;b:do switch(d[la>>0]|0){case 1:{c[W>>2]=19;break}case 3:{c[W>>2]=20;break}case
4:{c[W>>2]=3;break}case 5:{c[W>>2]=4;break}case 6:{c[W>>2]=5;break}case 7:{c[W>>2]=6;break
}case 8:{c[W>>2]=7;break}case 9:{c[W>>2]=53;break}case 10:{c[W>>2]=49;break}case 11:{c[W>>
;2]=51;break}case 12:{if((c[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0)break a;va=c[K
x3e;>2]|0;c[K>>2]=va+1;a[la>>0]=a[va>>0]|0;do switch(d[la>>0]|0){case 0:{c[W>
x3e;2]=25;break b}case 1:{c[W>>2]=20;break b}case 2:{c[W>>2]=19;break b}case 3:{c[W>>2]=44;break b
}case 4:{c[W>>2]=45;break b}case 5:{c[W>>2]=46;break b}case 6:{c[W>>2]=56;break b}case 7:{c[W>
;>2]=57;break b}case 8:{c[W>>2]=42;break b}case 9:{c[W>>2]=26;break b}case 10:{c[W>>2]=27;break
b}case 11:{c[W>>2]=28;break b}case 12:{c[W>>2]=29;break b}case 13:{c[W>>2]=43;break b}case 14:{c[
W>>2]=30;break b}case 15:{c[W>>2]=47;break b}case 16:{c[W>>2]=54;break b}case 17:{c[W>>2
]=55;break b}case 18:{c[W>>2]=35;break b}case 20:{c[W>>2]=40;break b}case 21:{c[W>>2]=41;break b}case
22:{c[W>>2]=48;break b}case 23:{c[W>>2]=31;break b}case 24:{c[W>>2]=32;break b}case 26:{c[W>
x3e;2]=33;break b}case 27:{c[W>>2]=39;break b}case 28:{c[W>>2]=36;break b}case 29:{c[W>>2]=37;break
b}case 30:{c[W>>2]=38;break b}case 33:{c[W>>2]=58;break b}case 34:{c[W>>2]=15;break b}case 35:{c[
W>>2]=14;break b}case 36:{c[W>>2]=16;break b}case 37:{c[W>>2]=17;break b}default:{c[K>>2
]=(c[K>>2]|0)+-1;break b}}while(0)}case 13:{c[W>>2]=52;break}case 14:{c[W>>2]=18;break}case 16:{c[
W>>2]=34;break}case 18:{c[W>>2]=21;break}case 19:{c[W>>2]=23;break}case 20:{c[W>>2]=24;break
}case 21:{c[W>>2]=1;break}case 22:{c[W>>2]=2;break}case 23:{c[W>>2]=22;break}case 24:{c[W>>
;2]=10;break}case 25:{c[W>>2]=11;break}case 26:{c[W>>2]=13;break}case 27:{c[W>>2]=8;break}case 29:{
c[W>>2]=50;break}case 30:{c[W>>2]=12;break}case 31:{c[W>>2]=9;break}default:{}}while(0);if(!(c[W
x3e;>2]|0))break;c[Z>>2]=d[11281+(c[W>>2]|0)>>0];if(c[Z>>2]&128|0){if((c[T>
;>2]|0)>0?d[(c[j>>2]|0)+752>>0]|0:0){switch(c[W>>2]|0){case 3:case 2:{c[aa>>2]=
c[T>>2]&2;break}case 24:case 23:case 1:case 22:case 21:case 20:case 19:{c[aa>>2]=c[T>>2]&
;1;break}case 18:{c[aa>>2]=((c[T>>2]|0)==5?1:(c[T>>2]|0)==1)&1;break}default:c[aa>>
2]=0}if(c[aa>>2]|0){c[(c[j>>2]|0)+744>>2]=(c[(c[j>>2]|0)+748>>2]|0)+(c[c[ca>
;>2]>>2]>>16);if(a[(c[j>>2]|0)+753>>0]|0){sa=307;break}c[T>>2]=(c[T>
x3e;2]|0)+-1}}a[(c[j>>2]|0)+752>>0]=0;c[Z>>2]=0}c[Z>>2]=c[Z>>2]&15;if((c[
T>>2]|0)<(c[Z>>2]|0)){sa=309;break}c[l>>2]=(c[l>>2]|0)+(0-(c[Z>>2]|0)<
;<2);c[T>>2]=(c[T>>2]|0)-(c[Z>>2]|0);do switch(c[W>>2]|0){case 56:{sa=220;break a}case
18:{sa=221;break a}case 22:case 21:case 20:case 19:{if(c[A>>2]|0)_a[c[(c[A>>2]|0)+12>>2]&15](
c[c[A>>2]>>2]|0,((c[W>>2]|0)==19?1:(c[W>>2]|0)==21)&1,(c[T>>2]|0)/2|0,(c[
l>>2]|0)+(0-(c[T>>2]&-2)<<2)|0);va=(c[j>>2]|0)+756|0;c[va>>2]=(c[va>
x3e;2]|0)+((c[T>>2]|0)/2|0);c[l>>2]=c[ca>>2];break}case 24:case 23:{if((c[T>>2]|0)>
0){if(c[A>>2]|0)_a[c[(c[A>>2]|0)+12>>2]&15](c[c[A>>2]>>2]|0,0,(c[T>
x3e;2]|0)/2|0,(c[l>>2]|0)+(0-(c[T>>2]&-2)<<2)|0);va=(c[j>>2]|0)+756|0;c[va>>
;2]=(c[va>>2]|0)+((c[T>>2]|0)/2|0)}if(((c[K>>2]|0)+((c[(c[j>>2]|0)+756>>2]|0)+
7>>3)|0)>>>0>=(c[L>>2]|0)>>>0)break a;do if(c[A>>2]|0){f=c[A>
;>2]|0;if((c[W>>2]|0)==23){_a[c[f+16>>2]&15](c[c[A>>2]>>2]|0,b[(c[(c[m>
x3e;2]|0)+20>>2]|0)+2>>1]|0,c[(c[j>>2]|0)+756>>2]|0,c[K>>2]|0);break}else{Ua[c
[f+20>>2]&31](c[c[A>>2]>>2]|0,c[(c[j>>2]|0)+756>>2]|0,c[K>>2]|0
);break}}while(0);c[K>>2]=(c[K>>2]|0)+((c[(c[j>>2]|0)+756>>2]|0)+7>>3);c[l>
;>2]=c[ca>>2];break}case 1:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64>>0]=0;c[pa>>2]=(
c[pa>>2]|0)+(c[(c[l>>2]|0)+-8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>
2]|0)+-4>>2]|0);c[l>>2]=c[ca>>2];break}case 3:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64
x3e;>0]=0;c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+-4>>2]|0);c[l>>2]=c[ca>
;>2];break}case 2:{Pi(c[m>>2]|0);a[(c[m>>2]|0)+64>>0]=0;c[pa>>2]=(c[pa>>2
]|0)+(c[(c[l>>2]|0)+-4>>2]|0);c[l>>2]=c[ca>>2];break}case 4:{if(Qi(c[m>>2]|0,c
[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[T>>2]|0)/2|0)|0){sa=307;break
a}if((c[T>>2]|0)<2){sa=309;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[T>>2]&-2)<
x3c;2);while(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>
;0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|
0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>
;2]=(c[l>>2]|0)+8}c[l>>2]=c[ca>>2];break}case 6:case 5:{c[X>>2]=(c[W>>2]|0)==5
&1;if((c[T>>2]|0)<1){sa=309;break a}if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){
sa=307;break a}if(Ti(c[m>>2]|0,c[T>>2]|0)|0){sa=307;break a}c[l>>2]=c[ca>>2];while(1){if
((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;f=c[c[l
x3e;>2]>>2]|0;if(c[X>>2]|0)c[pa>>2]=(c[pa>>2]|0)+f;else c[qa>>2]=(c[qa>
;>2]|0)+f;if(Si(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>
;>2]|0)+4;c[X>>2]=c[X>>2]^1}c[l>>2]=c[ca>>2];break}case 7:{if((c[T>>2]|0)
x3c;6){sa=309;break a}c[M>>2]=(c[T>>2]|0)-((c[T>>2]|0)%6|0);if(Qi(c[m>>2]|0,c[pa>
x3e;2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[M>>2]|0)/2|0)|0){sa=307;break a}c[l>
;>2]=(c[l>>2]|0)+(0-(c[M>>2]|0)<<2);while(1){if((c[l>>2]|0)>>>0>
;=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>
x3e;2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>
2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>
;2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>
x3e;2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>
;>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0,1);c[l>>2]=(c[l>>2]|0)+24}c[l>>2]=c[ca>>2];break}case 13:{if((c[T>
x3e;2]|0)<4){sa=309;break a}c[N>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0)-(
c[N>>2]|0)|0)>0)c[N>>2]=(c[N>>2]|0)+1;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[N>>2]|0)<<2);if(c[N>>
2]&1|0){c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2
]|0)+4;c[N>>2]=(c[N>>2]|0)+-1}if(Ti(c[m>>2]|0,((c[N>>2]|0)/4|0)*3|0)|0){sa=307;break a}while
(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break;c[qa
>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>
;>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[qa
>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c
[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+16}c[l>>2]=c[ca>>2];break}case 8:{if((c[T>
;>2]|0)<4){sa=309;break a}c[O>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0
)-(c[O>>2]|0)|0)>0)c[O>>2]=(c[O>>2]|0)+1;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[O>>2]|0)<<2);if(c[O>>
;2]&1|0){c[qa>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>
2]|0)+4;c[O>>2]=(c[O>>2]|0)+-1}if(Ti(c[m>>2]|0,((c[O>>2]|0)/4|0)*3|0)|0){sa=307;break a}
while(1){if((c[l>>2]|0)>>>0>=(c[(c[j>>2]|0)+276>>2]|0)>>>0)break
;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa
>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[
qa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0
,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+16}c[l>>2]=c[ca>>2];break}case 9:case
12:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if((c[T>>2]|0)<4){sa=309
;break a}c[P>>2]=(c[T>>2]|0)-((c[T>>2]|0)%4|0);if(((c[T>>2]|0)-(c[P>>2]|0)|0)
x3e;0)c[P>>2]=(c[P>>2]|0)+1;c[l>>2]=(c[l>>2]|0)+(0-(c[P>>2]|0)<<2);if
(Ti(c[m>>2]|0,((c[P>>2]|0)/4|0)*3|0)|0){sa=309;break a}c[Y>>2]=(c[W>>2]|0)==9&1;while
(1){if((c[P>>2]|0)<4)break;c[P>>2]=(c[P>>2]|0)-4;f=c[c[l>>2]>>2]|0;if(c[Y
>>2]|0){c[pa>>2]=(c[pa>>2]|0)+f;Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0
);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0
)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[qa>>
;2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+12>>2]|0);if((c[P>>2]|0)==1)c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1)}else
{c[qa>>2]=(c[qa>>2]|0)+f;Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>
;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
x3e;2]|0)+8>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
x3e;2]|0)+(c[(c[l>>2]|0)+12>>2]|0);if((c[P>>2]|0)==1)c[qa>>2]=(c[qa>>2]|0)+(c[(
c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1)}c[l>>2]=(
c[l>>2]|0)+16;c[Y>>2]=c[Y>>2]^1}c[l>>2]=c[ca>>2];break}case 11:{if((c[T>
x3e;2]|0)<8){sa=309;break a}c[Q>>2]=c[T>>2]&-2;c[V>>2]=((c[Q>>2]|0)-6|0)/2|0;if
(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,(c[V>>2
]|0)+3|0)|0){sa=307;break a}c[l>>2]=(c[l>>2]|0)+(0-(c[Q>>2]|0)<<2);while(1){va=(c[V>
;>2]|0)>0;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>
;>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);f=c[m>>2]|0;g=c[pa>>2]|0;e=c[qa>>2]|0;if(!
va)break;Ui(f,g,e,1);c[l>>2]=(c[l>>2]|0)+8;c[V>>2]=(c[V>>2]|0)+-1}Ui(f,g,e,0);c[pa>
x3e;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
;>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20
x3e;>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case
10:{if((c[T>>2]|0)<8){sa=309;break a}c[R>>2]=(c[T>>2]|0)-2;c[R>>2]=(c[R>>
;2]|0)-((c[R>>2]|0)%6|0)+2;c[U>>2]=((c[R>>2]|0)-2|0)/6|0;if(Qi(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,((c[U>>2]|0)*3|0)+2|0)|0){sa=307;break a}c[l
x3e;>2]=(c[l>>2]|0)+(0-(c[R>>2]|0)<<2);while(1){va=(c[U>>2]|0)>0;c[pa>>
;2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|
0)+4>>2]|0);f=c[m>>2]|0;g=c[pa>>2]|0;e=c[qa>>2]|0;if(!va)break;Ui(f,g,e,0);c[pa>>
;2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>
x3e;2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
x3e;2]|0)+(c[(c[l>>2]|0)+16>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+20>
;>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=(c[l>>2]|0)+24;c[U
x3e;>2]=(c[U>>2]|0)+-1}Ui(f,g,e,1);c[l>>2]=c[ca>>2];break}case 16:{if(Qi(c[m>>2]|0,
c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;break a}c[ea>>2]=c
[qa>>2];c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>
x3e;2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa
x3e;>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[
l>>2]|0)+12>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c
[pa>>2]|0)+(c[(c[l>>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|
0,1);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);Ui(c[m>>2]|0,c[pa>>
;2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0);c[qa>
x3e;2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+28>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+32>>2]|0);c[qa>>2]=c[ea>
;>2];Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 15
:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;
break a}c[fa>>2]=c[qa>>2];c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);Ui
(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2
]|0)+4>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+8>>2]|0);Ui(c[m>>
2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+12>>
;2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>
;>2]|0)+16>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>
;>2]|0)+(c[(c[l>>2]|0)+20>>2]|0);c[qa>>2]=c[fa>>2];Ui(c[m>>2]|0,c[pa>
;>2]|0,c[qa>>2]|0,0);c[pa>>2]=(c[pa>>2]|0)+(c[(c[l>>2]|0)+24>>2]|0);Ui(c[
m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 17:{c[w>>
;2]=0;c[x>>2]=0;if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0)|0){sa=307;break a}if(Ti(c[m>
x3e;2]|0,6)|0){sa=307;break a}c[da>>2]=c[pa>>2];c[ga>>2]=c[qa>>2];c[ha>>2]=c[l
>>2];c[s>>2]=5;while(1){if((c[s>>2]|0)<=0)break;c[w>>2]=(c[w>>2]|0)+(c[c[
ha>>2]>>2]|0);c[x>>2]=(c[x>>2]|0)+(c[(c[ha>>2]|0)+4>>2]|0);c[ha>
;>2]=(c[ha>>2]|0)+8;c[s>>2]=(c[s>>2]|0)+-1}if((c[w>>2]|0)<0)c[w>>2]=
0-(c[w>>2]|0);if((c[x>>2]|0)<0)c[x>>2]=0-(c[x>>2]|0);c[B>>2]=(c[w>
x3e;2]|0)>(c[x>>2]|0)&1;c[s>>2]=5;while(1){if((c[s>>2]|0)<=0)break;c[pa>>
2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[qa>>2]|0)+(c[(c[l>>2]|
0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>>2]|0,(c[s>>2]|0)==3&255);c[l>
;>2]=(c[l>>2]|0)+8;c[s>>2]=(c[s>>2]|0)+-1}if(c[B>>2]|0){c[pa>>2]=(c[pa>
;>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=c[ga>>2]}else{c[pa>>2]=c[da>>
;2];c[qa>>2]=(c[qa>>2]|0)+(c[c[l>>2]>>2]|0)}Ui(c[m>>2]|0,c[pa>>2]|0,
c[qa>>2]|0,1);c[l>>2]=c[ca>>2];break}case 14:{if(Qi(c[m>>2]|0,c[pa>>2]|0,c[qa
x3e;>2]|0)|0){sa=307;break a}if(Ti(c[m>>2]|0,6)|0){sa=307;break a}c[v>>2]=6;while(1){if((c[v>>
;2]|0)>>>0<=0)break;c[pa>>2]=(c[pa>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>
;>2]=(c[qa>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);Ui(c[m>>2]|0,c[pa>>2]|0,c[qa>
;>2]|0,((c[v>>2]|0)==4?1:(c[v>>2]|0)==1)&1);c[l>>2]=(c[l>>2]|0)+8;c[v>>
;2]=(c[v>>2]|0)+-1}c[l>>2]=c[ca>>2];break}case 26:{if((c[c[l>>2]>>2]|0)<0
)c[c[l>>2]>>2]=0-(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case
27:{va=c[l>>2]|0;c[va>>2]=(c[va>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>
2]=(c[l>>2]|0)+4;break}case 28:{va=c[l>>2]|0;c[va>>2]=(c[va>>2]|0)-(c[(c[l>>2]|
0)+4>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case 29:{va=Vb(c[c[l>>2]>>2]|0,c[(c[l
x3e;>2]|0)+4>>2]|0)|0;c[c[l>>2]>>2]=va;c[l>>2]=(c[l>>2]|0)+4;break}case 30
:{c[c[l>>2]>>2]=0-(c[c[l>>2]>>2]|0);c[l>>2]=(c[l>>2]|0)+4;break}case
31:{c[k>>2]=c[$>>2];if((c[k>>2]|0)>=32768)c[k>>2]=(c[k>>2]|0)+1;c[c[l>
;>2]>>2]=c[k>>2];c[$>>2]=Mb(c[$>>2]|0,65536-(c[$>>2]|0)|0)|0;if(!(c[$>
;>2]|0))c[$>>2]=(c[$>>2]|0)+10355;c[l>>2]=(c[l>>2]|0)+4;break}case 32:{va=Mb(c[c[l
x3e;>2]>>2]|0,c[(c[l>>2]|0)+4>>2]|0)|0;c[c[l>>2]>>2]=va;c[l>>2]=(
c[l>>2]|0)+4;break}case 33:{if((c[c[l>>2]>>2]|0)>0){c[t>>2]=9;c[_>>2]=c[c
[l>>2]>>2];while(1){f=c[_>>2]|0;c[S>>2]=f+(Vb(c[c[l>>2]>>2]|0,c[_>
;>2]|0)|0)+1>>1;f=c[S>>2]|0;if((c[t>>2]|0)<=0?1:(c[S>>2]|0)==(c[_>>2
]|0))break;c[_>>2]=f}c[c[l>>2]>>2]=f}else c[c[l>>2]>>2]=0;c[l>>2]=(c
[l>>2]|0)+4;break}case 25:case 35:break;case 36:{c[ia>>2]=c[c[l>>2]>>2];c[c[l>>
;2]>>2]=c[(c[l>>2]|0)+4>>2];c[(c[l>>2]|0)+4>>2]=c[ia>>2];c[l>
x3e;2]=(c[l>>2]|0)+8;break}case 37:{c[E>>2]=c[c[l>>2]>>2]>>16;if((c[E>>
;2]|0)>=0){if((c[E>>2]|0)>((c[T>>2]|0)-2|0))c[E>>2]=(c[T>>2]|0)-2}else c[E>
;>2]=0;c[c[l>>2]>>2]=c[(c[l>>2]|0)+(0-((c[E>>2]|0)+1)<<2)>>2];c
[l>>2]=(c[l>>2]|0)+4;break}case 38:{c[u>>2]=c[c[l>>2]>>2]>>16;c[F>
;>2]=c[(c[l>>2]|0)+4>>2]>>16;if((c[u>>2]|0)<=0)c[u>>2]=1;c[l>
x3e;2]=(c[l>>2]|0)+(0-(c[u>>2]|0)<<2);if((c[l>>2]|0)>>>0<(c[ca>
x3e;2]|0)>>>0){sa=309;break a}c:do if((c[F>>2]|0)>=0)while(1){if((c[F>>2]|0)<=0)break
c;c[ja>>2]=c[(c[l>>2]|0)+((c[u>>2]|0)-1<<2)>>2];c[C>>2]=(c[u>
x3e;2]|0)-2;while(1){if((c[C>>2]|0)<0)break;c[(c[l>>2]|0)+((c[C>>2]|0)+1<<2)>
x3e;2]=c[(c[l>>2]|0)+(c[C>>2]<<2)>>2];c[C>>2]=(c[C>>2]|0)+-1}c[c[l
x3e;>2]>>2]=c[ja>>2];c[F>>2]=(c[F>>2]|0)+-1}else while(1){if((c[F>>2]|0)
x3e;=0)break c;c[ka>>2]=c[c[l>>2]>>2];c[D>>2]=0;while(1){if((c[D>>2]|0)>=((
c[u>>2]|0)-1|0))break;c[(c[l>>2]|0)+(c[D>>2]<<2)>>2]=c[(c[l>>2]|0)+((
c[D>>2]|0)+1<<2)>>2];c[D>>2]=(c[D>>2]|0)+1}c[(c[l>>2]|0)+((c[u>
x3e;2]|0)-1<<2)>>2]=c[ka>>2];c[F>>2]=(c[F>>2]|0)+1}while(0);c[l>>2]=(
c[l>>2]|0)+(c[u>>2]<<2);break}case 39:{c[(c[l>>2]|0)+4>>2]=c[c[l>>2]
x3e;>2];c[l>>2]=(c[l>>2]|0)+8;break}case 40:{c[na>>2]=c[c[l>>2]>>2];c[G
x3e;>2]=c[(c[l>>2]|0)+4>>2]>>16;if((c[G>>2]|0)>=0&(c[G>>2]|0)
x3c;32)c[(c[j>>2]|0)+760+(c[G>>2]<<2)>>2]=c[na>>2];break}case 41:{c[H>>
;2]=c[c[l>>2]>>2]>>16;c[oa>>2]=0;if((c[H>>2]|0)>=0&(c[H>>2
]|0)<32)c[oa>>2]=c[(c[j>>2]|0)+760+(c[H>>2]<<2)>>2];c[c[l>>2]
x3e;>2]=c[oa>>2];c[l>>2]=(c[l>>2]|0)+4;break}case 51:{if((c[(c[j>>2]|0)+676>
x3e;2]|0)>>>0<=((c[j>>2]|0)+280|0)>>>0)break a;va=(c[j>>2]|0)+676|0;c[va
x3e;>2]=(c[va>>2]|0)+-12;c[ra>>2]=c[(c[j>>2]|0)+676>>2];c[K>>2]=c[(c[ra
x3e;>2]|0)+8>>2];c[L>>2]=c[(c[ra>>2]|0)+4>>2];break}case 50:{c[J>>2]=(c[c
[l>>2]>>2]>>16)+(c[(c[j>>2]|0)+900>>2]|0);if((c[J>>2]|0)>>
x3e;0>=(c[(c[j>>2]|0)+892>>2]|0)>>>0)break a;if((((c[ra>>2]|0)-((c[j>>
;2]|0)+280)|0)/12|0|0)>=32)break a;c[(c[ra>>2]|0)+8>>2]=c[K>>2];c[ra>>2]=(c[ra>
;>2]|0)+12;c[c[ra>>2]>>2]=c[(c[(c[j>>2]|0)+908>>2]|0)+(c[J>>2]<<
;2)>>2];c[(c[ra>>2]|0)+4>>2]=c[(c[(c[j>>2]|0)+908>>2]|0)+((c[J>>2]|0
)+1<<2)>>2];c[(c[ra>>2]|0)+8>>2]=c[c[ra>>2]>>2];if(!(c[c[ra>>
;2]>>2]|0))break a;if((c[(c[ra>>2]|0)+4>>2]|0)==(c[c[ra>>2]>>2]|0))break a;c[(
c[j>>2]|0)+676>>2]=c[ra>>2];c[K>>2]=c[c[ra>>2]>>2];c[L>>2]=
c[(c[ra>>2]|0)+4>>2];break}case 53:{c[l>>2]=c[ca>>2];break}case 52:{c[(c[j>>2]|
0)+744>>2]=(c[(c[j>>2]|0)+748>>2]|0)+(c[(c[l>>2]|0)+4>>2]>>16);c[(c[
j>>2]|0)+32>>2]=c[c[l>>2]>>2];c[(c[j>>2]|0)+32+4>>2]=0;c[pa>>
;2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=c[(c[j>>2]|0
)+28>>2];c[l>>2]=c[ca>>2];break}case 57:{c[(c[j>>2]|0)+744>>2]=(c[(c[j>
x3e;2]|0)+748>>2]|0)+(c[(c[l>>2]|0)+8>>2]>>16);c[(c[j>>2]|0)+32>>2]=
c[c[l>>2]>>2];c[(c[j>>2]|0)+32+4>>2]=c[(c[l>>2]|0)+4>>2];c[pa>
x3e;2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[(c[j>>
2]|0)+28>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>2]=c[ca>>2];break}case 58:{c[pa
x3e;>2]=(c[(c[j>>2]|0)+24>>2]|0)+(c[c[l>>2]>>2]|0);c[qa>>2]=(c[(c[j>
x3e;2]|0)+28>>2]|0)+(c[(c[l>>2]|0)+4>>2]|0);c[l>>2]=c[ca>>2];break}case 54:{c[
l>>2]=(c[l>>2]|0)+(0-(2+(c[(c[l>>2]|0)+-8>>2]>>16))<<2);if((c[l>
;>2]|0)>>>0<(c[ca>>2]|0)>>>0){sa=309;break a}break}case 55:{c[l>>2]=(
c[l>>2]|0)+4;break}case 44:{if(c[c[l>>2]>>2]|0)f=(c[(c[l>>2]|0)+4>>2]|0)!=0;else
f=0;c[o>>2]=f&1;c[c[l>>2]>>2]=c[o>>2]|0?65536:0;c[l>>2]=(c[l>>
2]|0)+4;break}case 45:{if(c[c[l>>2]>>2]|0)f=1;else f=(c[(c[l>>2]|0)+4>>2]|0)!=0;c[p>
;>2]=f&1;c[c[l>>2]>>2]=c[p>>2]|0?65536:0;c[l>>2]=(c[l>>2]|0)+4;break
}case 47:{c[q>>2]=((c[c[l>>2]>>2]|0)!=0^1)&1;c[c[l>>2]>>2]=c[q>>
;2]|0?65536:0;c[l>>2]=(c[l>>2]|0)+4;break}case 48:{c[r>>2]=(c[(c[l>>2]|0)+8>>2
]|0)<=(c[(c[l>>2]|0)+12>>2]|0)&1;if(!(c[r>>2]|0))c[c[l>>2]>>2]=c[(c[
l>>2]|0)+4>>2];c[l>>2]=(c[l>>2]|0)+4;break}case 49:{c[I>>2]=(c[c[l>>
2]>>2]>>16)+(c[(c[j>>2]|0)+896>>2]|0);if((c[I>>2]|0)>>>0>=(
c[(c[j>>2]|0)+888>>2]|0)>>>0)break a;if((((c[ra>>2]|0)-((c[j>>2]|0)+280)|
0)/12|0|0)>=32)break a;c[(c[ra>>2]|0)+8>>2]=c[K>>2];c[ra>>2]=(c[ra>>2]|0)+
12;c[c[ra>>2]>>2]=c[(c[(c[j>>2]|0)+904>>2]|0)+(c[I>>2]<<2)>>
;2];c[(c[ra>>2]|0)+4>>2]=c[(c[(c[j>>2]|0)+904>>2]|0)+((c[I>>2]|0)+1<<
;2)>>2];c[(c[ra>>2]|0)+8>>2]=c[c[ra>>2]>>2];if(!(c[c[ra>>2]>>
;2]|0))break a;if((c[(c[ra>>2]|0)+4>>2]|0)==(c[c[ra>>2]>>2]|0))break a;c[(c[j>>
;2]|0)+676>>2]=c[ra>>2];c[K>>2]=c[c[ra>>2]>>2];c[L>>2]=c[(c[ra>
x3e;2]|0)+4>>2];break}default:{sa=305;break a}}while(0);c[(c[j>>2]|0)+276>>2]=c[l>>2];if
((((c[(c[j>>2]|0)+276>>2]|0)-(c[ca>>2]|0)|0)/4|0|0)>=48){sa=310;break}else continue}c[ba>
;>2]=16;do if((d[la>>0]|0)!=28){f=d[la>>0]|0;if((d[la>>0]|0)<247){c[ma>>2]=f-139
;break}if((f|0)<251){if((c[K>>2]|0)>>>0>=(c[L>>2]|0)>>>0)break a;ua=(
d[la>>0]|0)-247<<8;va=c[K>>2]|0;c[K>>2]=va+1;c[ma>>2]=ua+(d[va>>0]|0
)+108;break}f=c[K>>2]|0;if((d[la>>0]|0)<255){if(f>>>0>=(c[L>>2]|0)>
x3e;>0)break a;ua=0-((d[la>>0]|0)-251)<<8;va=c[K>>2]|0;c[K>>2]=va+1;c[ma>>
;2]=ua-(d[va>>0]|0)-108;break}if((f+3|0)>>>0>=(c[L>>2]|0)>>>0)break a;c[ma
>>2]=d[c[K>>2]>>0]<<24|d[(c[K>>2]|0)+1>>0]<<16|d[(c[K>
;>2]|0)+2>>0]<<8|d[(c[K>>2]|0)+3>>0];c[K>>2]=(c[K>>2]|0)+4;if((
c[n>>2]|0)==2)c[ba>>2]=0}else{if(((c[K>>2]|0)+1|0)>>>0>=(c[L>>2]|0)
x3e;>>0)break a;c[ma>>2]=((d[c[K>>2]>>0]<<8|d[(c[K>>2]|0)+1>>
;0])&65535)<<16>>16;c[K>>2]=(c[K>>2]|0)+2}while(0);if((((c[(c[j>>2]|0)+276
>>2]|0)-(c[ca>>2]|0)|0)/4|0|0)>=48){sa=310;break}c[ma>>2]=c[ma>>2]<<c[ba
x3e;>2];ua=c[ma>>2]|0;e=(c[j>>2]|0)+276|0;va=c[e>>2]|0;c[e>>2]=va+4;c[va>>
;2]=ua}do if((sa|0)==220){c[y>>2]=Vi(c[j>>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[(c[l>>2]|0)+12>>2]>>16,c[(c[l>
x3e;2]|0)+16>>2]>>16)|0;oc(c[(c[m>>2]|0)+12>>2]|0);c[h>>2]=c[y>>2];va
=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==221){if((c[T>>2]|0)>=4){c[z>>2]=c[(c[j>>
;2]|0)+744>>2];c[y>>2]=Vi(c[j>>2]|0,0,c[(c[l>>2]|0)+-16>>2]|0,c[(c[l>>
;2]|0)+-12>>2]|0,c[(c[l>>2]|0)+-8>>2]>>16,c[(c[l>>2]|0)+-4>>2]>
x3e;16)|0;c[(c[j>>2]|0)+744>>2]=c[z>>2]}else{if(!(c[y>>2]|0))c[y>>2]=0;Pi(c[m
x3e;>2]|0);if(c[A>>2]|0){if(Ya[c[(c[A>>2]|0)+8>>2]&127](c[c[A>>2]>>2
]|0,b[(c[(c[m>>2]|0)+20>>2]|0)+2>>1]|0)|0)break;Wa[c[(c[A>>2]|0)+24>>2]&31
](c[c[A>>2]>>2]|0,c[(c[m>>2]|0)+20>>2]|0,c[(c[m>>2]|0)+72>>2]|0,c[(c
[j>>2]|0)+920>>2]|0)|0}oc(c[(c[m>>2]|0)+12>>2]|0)}c[h>>2]=c[y>>2];va
=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==305){c[h>>2]=7;va=c[h>>2]|0;i=ta;return va|0}else if((
sa|0)==307){c[h>>2]=c[y>>2];va=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==309){c[h>>2]=129
;va=c[h>>2]|0;i=ta;return va|0}else if((sa|0)==310){c[h>>2]=130;va=c[h>>2]|0;i=ta;return va|0}while
(0);c[h>>2]=3;va=c[h>>2]|0;i=ta;return va|0}function Pi(a){a=a|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|
0;l=k+20|0;j=k+16|0;h=k+12|0;f=k+8|0;g=k+4|0;e=k;c[l>>2]=a;c[j>>2]=c[(c[l>>2]|0)+20>>2];
if(!(c[j>>2]|0)){i=k;return}if((b[c[j>>2]>>1]|0)<=1)a=0;else a=(b[(c[(c[j>>2]|0)+12
>>2]|0)+((b[c[j>>2]>>1]|0)-2<<1)>>1]|0)+1|0;c[h>>2]=a;if((((b[(c[j
x3e;>2]|0)+2>>1]|0)>1?(c[f>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(c[h>>2]<
;<3),c[g>>2]=(c[(c[j>>2]|0)+4>>2]|0)+(b[(c[j>>2]|0)+2>>1]<<3)+-
8,c[e>>2]=(c[(c[j>>2]|0)+8>>2]|0)+(b[(c[j>>2]|0)+2>>1]|0)+-1,(c[c[f>>
;2]>>2]|0)==(c[c[g>>2]>>2]|0)):0)?(c[(c[f>>2]|0)+4>>2]|0)==(c[(c[g>>
2]|0)+4>>2]|0):0)?(d[c[e>>2]>>0]|0)==1:0){l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>
x3e;1]|0)+-1<<16>>16}if((b[c[j>>2]>>1]|0)<=0){i=k;return}a=c[j>>2]|0;if((
c[h>>2]|0)==((b[(c[j>>2]|0)+2>>1]|0)-1|0)){b[a>>1]=(b[a>>1]|0)+-1<<16
>>16;l=(c[j>>2]|0)+2|0;b[l>>1]=(b[l>>1]|0)+-1<<16>>16;i=k;return}else
{b[(c[(c[j>>2]|0)+12>>2]|0)+((b[c[j>>2]>>1]|0)-1<<1)>>1]=(b[a+2>
;>1]|0)-1;i=k;return}}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;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=
k;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2]=0;if(a[(c[f>>2]|0)+64>>0]|0){
e=c[j>>2]|0;i=k;return e|0}a[(c[f>>2]|0)+64>>0]=1;c[j>>2]=Ri(c[f>>2]|0)|0;if(c
[j>>2]|0){e=c[j>>2]|0;i=k;return e|0}c[j>>2]=Si(c[f>>2]|0,c[g>>2]|0,c[h>
x3e;2]|0)|0;e=c[j>>2]|0;i=k;return e|0}function Ri(d){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[e>>2]=d;c[h>>2]=c[(c[e>>2]|0)+20>>2];if(!(a[(c[e>>2]|0)+65>>
;0]|0)){h=c[h>>2]|0;b[h>>1]=(b[h>>1]|0)+1<<16>>16;c[f>>2]=0;h=c[f>
;>2]|0;i=j;return h|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20>>1]|0)+(b[(c[(c[e>>2]|0)+12
>>2]|0)+56>>1]|0)+1|0)>>>0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+8>>
;2]|0)>>>0)e=0;else e=kc(c[(c[e>>2]|0)+12>>2]|0,0,1)|0;c[g>>2]=e;if(!(c[g>>
;2]|0)){if((b[c[h>>2]>>1]|0)>0)b[(c[(c[h>>2]|0)+12>>2]|0)+((b[c[h>>2]>
;>1]|0)-1<<1)>>1]=(b[(c[h>>2]|0)+2>>1]|0)-1;h=c[h>>2]|0;b[h>>1]=(
b[h>>1]|0)+1<<16>>16}c[f>>2]=c[g>>2];h=c[f>>2]|0;i=j;return h|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;j=i;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=a;c[f>>
;2]=b;c[g>>2]=d;c[h>>2]=Ti(c[e>>2]|0,1)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=j;return
d|0}Ui(c[e>>2]|0,c[f>>2]|0,c[g>>2]|0,1);d=c[h>>2]|0;i=j;return d|0}function Ti(a,d){a=a
|0;d=d|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]=d;if(!(c[f>>2]|0)){d=0;i=g;return
d|0}if(((b[(c[(c[e>>2]|0)+12>>2]|0)+20+2>>1]|0)+(b[(c[(c[e>>2]|0)+12>>2]|0)+56
+2>>1]|0)+(c[f>>2]|0)|0)>>>0<=(c[(c[(c[e>>2]|0)+12>>2]|0)+4>>
;2]|0)>>>0){d=0;i=g;return d|0}d=kc(c[(c[e>>2]|0)+12>>2]|0,c[f>>2]|0,0)|0;i=g;return
d|0}function Ui(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;p=i;i=i+32|0;q=p+20|0;j=p+16|0;k=p+12|0;l=
p+24|0;n=p+8|0;o=p+4|0;m=p;c[q>>2]=e;c[j>>2]=f;c[k>>2]=g;a[l>>0]=h;c[n>>2]=c[(
c[q>>2]|0)+20>>2];if(!(a[(c[q>>2]|0)+65>>0]|0)){q=c[n>>2]|0;q=q+2|0;g=b[q>
;>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}c[o>>2]=(c[(c[n>>2]|0)+4>
x3e;2]|0)+(b[(c[n>>2]|0)+2>>1]<<3);c[m>>2]=(c[(c[n>>2]|0)+8>>2]|0)+(
b[(c[n>>2]|0)+2>>1]|0);c[c[o>>2]>>2]=c[j>>2]>>16;c[(c[o>>2
]|0)+4>>2]=c[k>>2]>>16;a[c[m>>2]>>0]=d[l>>0]|0?1:2;q=c[n>>
2]|0;q=q+2|0;g=b[q>>1]|0;g=g+1<<16>>16;b[q>>1]=g;i=p;return}function Vi(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,D=0,E=0,F=0,G=0
;G=i;i=i+96|0;k=G+92|0;l=G+88|0;m=G+84|0;n=G+80|0;o=G+76|0;p=G+72|0;q=G+68|0;y=G+64|0;u=G+60|0;t=G+56|0;r=G+52|0;z=G+48|0;C=G+40
|0;s=G+32|0;w=G+24|0;x=G+20|0;B=G+16|0;v=G+12|0;A=G+8|0;D=G+4|0;E=G;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;
c[o>>2]=g;c[p>>2]=h;c[q>>2]=j;c[u>>2]=c[l>>2];c[z>>2]=c[(c[l>
x3e;2]|0)+4>>2];if(a[(c[l>>2]|0)+924>>0]|0){c[k>>2]=160;F=c[k>>2]|0;i=G;return
F|0}c[n>>2]=(c[n>>2]|0)+(c[(c[l>>2]|0)+32>>2]|0);c[o>>2]=(c[o>>2]|0
)+(c[(c[l>>2]|0)+32+4>>2]|0);if(c[(c[(c[z>>2]|0)+128>>2]|0)+52>>2]|0){c[t>
;>2]=c[p>>2];c[r>>2]=c[q>>2]}else{c[v>>2]=c[(c[z>>2]|0)+692>>2];
c[t>>2]=Wi(c[v>>2]|0,c[p>>2]|0)|0;c[r>>2]=Wi(c[v>>2]|0,c[q>>2]|0)|0}
if((c[t>>2]|0)<0|(c[r>>2]|0)<0){c[k>>2]=160;F=c[k>>2]|0;i=G;return F|0}if(a[(c
[u>>2]|0)+66>>0]|0){c[A>>2]=c[(c[u>>2]|0)+8>>2];c[D>>2]=c[c[(c[A>
;>2]|0)+156>>2]>>2];c[y>>2]=lc(c[D>>2]|0,2)|0;if(!(c[y>>2]|0)){c[E>
x3e;2]=c[(c[D>>2]|0)+56+32>>2];c[c[E>>2]>>2]=c[t>>2];b[(c[E>>2]|0)+4
>>1]=514;c[(c[E>>2]|0)+8>>2]=0;c[(c[E>>2]|0)+12>>2]=0;c[E>>2]=(c[E
x3e;>2]|0)+32;c[c[E>>2]>>2]=c[r>>2];b[(c[E>>2]|0)+4>>1]=2;c[(c[E>>
;2]|0)+8>>2]=c[n>>2]>>16;c[(c[E>>2]|0)+12>>2]=c[o>>2]>>16;
c[(c[A>>2]|0)+128>>2]=2;c[(c[A>>2]|0)+132>>2]=c[(c[D>>2]|0)+20+32>>2
];c[(c[A>>2]|0)+72>>2]=1668246896;c[(c[D>>2]|0)+56+28>>2]=2;F=11}}else F=11;do if((F|0)==
11){nc(c[(c[u>>2]|0)+12>>2]|0);c[y>>2]=Mi(c[z>>2]|0,c[t>>2]|0,w,x)|0;if((c[y
x3e;>2]|0)==0?(a[(c[l>>2]|0)+924>>0]=1,c[y>>2]=Oi(c[l>>2]|0,c[w>>2]|0,c[x
>>2]|0)|0,a[(c[l>>2]|0)+924>>0]=0,Yi(c[z>>2]|0,w,c[x>>2]|0),c[y>>2]|
0):0)break;F=(c[u>>2]|0)+32|0;c[C>>2]=c[F>>2];c[C+4>>2]=c[F+4>>2];F=(c[u>
x3e;2]|0)+40|0;c[s>>2]=c[F>>2];c[s+4>>2]=c[F+4>>2];c[B>>2]=c[(c[l>>2
]|0)+744>>2];c[(c[u>>2]|0)+32>>2]=0;c[(c[u>>2]|0)+32+4>>2]=0;c[(c[u>>
;2]|0)+24>>2]=(c[n>>2]|0)-(c[m>>2]|0);c[(c[u>>2]|0)+28>>2]=c[o>>2];c
[y>>2]=Mi(c[z>>2]|0,c[r>>2]|0,w,x)|0;if((c[y>>2]|0)==0?(a[(c[l>>2]|0)+924>
;>0]=1,c[y>>2]=Oi(c[l>>2]|0,c[w>>2]|0,c[x>>2]|0)|0,a[(c[l>>2]|0)+924>
;>0]=0,Yi(c[z>>2]|0,w,c[x>>2]|0),c[y>>2]|0):0)break;F=(c[u>>2]|0)+32|0;c[F>>
;2]=c[C>>2];c[F+4>>2]=c[C+4>>2];F=(c[u>>2]|0)+40|0;c[F>>2]=c[s>>2];c
[F+4>>2]=c[s+4>>2];c[(c[l>>2]|0)+744>>2]=c[B>>2];c[(c[u>>2]|0)+24>
;>2]=0;c[(c[u>>2]|0)+28>>2]=0}while(0);c[k>>2]=c[y>>2];F=c[k>>2]|0;i=G;return
F|0}function Wi(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;k=l+12|0;g=l+8|0;f=l+4|0;j=l;h=l+16|0;c[g>>
2]=a;c[f>>2]=d;if(!(c[(c[g>>2]|0)+1152+8>>2]|0)){c[k>>2]=-1;k=c[k>>2]|0;i=l;return
k|0}if((c[f>>2]|0)<0|(c[f>>2]|0)>255){c[k>>2]=-1;k=c[k>>2]|0;i=l;return k|0}b
[h>>1]=Xi(c[f>>2]|0)|0;c[j>>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[(c[
g>>2]|0)+12>>2]|0)>>>0){f=10;break}a=c[j>>2]|0;if((e[(c[(c[g>>2]|0)+1152+
8>>2]|0)+(c[j>>2]<<1)>>1]|0|0)==(e[h>>1]|0|0)){f=8;break}c[j>>2]=a+1
}if((f|0)==8){c[k>>2]=a;k=c[k>>2]|0;i=l;return k|0}else if((f|0)==10){c[k>>2]=-1;k=c[k>>
2]|0;i=l;return k|0}return 0}function Xi(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<256)b=e[6520+(c[b>>2]<<1)>>1]|0;else b=0;i=d;return b&65535|0}function Yi
(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;e=k+24|0;f=k+20|0;g=k+16|0;j=k+8|0;h=k;c[e>>2]=a;c[
f>>2]=b;c[g>>2]=d;if(c[(c[(c[e>>2]|0)+128>>2]|0)+52>>2]|0){c[j>>2]=c
[c[f>>2]>>2];c[j+4>>2]=c[g>>2];Ra[c[(c[c[(c[(c[e>>2]|0)+128>>2]|0)+52
>>2]>>2]|0)+4>>2]&7](c[(c[(c[(c[e>>2]|0)+128>>2]|0)+52>>2]|0)+4
>>2]|0,j);i=k;return}else{c[h>>2]=c[(c[e>>2]|0)+692>>2];ji((c[h>>2]|0)+1176|0,
c[f>>2]|0);i=k;return}}function Zi(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>2]=a;c[d>>
;2]=c[(c[b>>2]|0)+8>>2];if(!(c[d>>2]|0)){i=e;return}d=(c[d>>2]|0)+108|0;a=c[(c[b>
x3e;2]|0)+16>>2]|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a
+8>>2];c[d+12>>2]=c[a+12>>2];c[d+16>>2]=c[a+16>>2];i=e;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;l=i;i=i+32|0;m=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;j=l+4|0;k=l;c[m>
;>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=e;c[j>>2]=c[m>>2];c[k>>2]=c[(
c[j>>2]|0)+532>>2];c[c[h>>2]>>2]=0;c[(c[h>>2]|0)+4>>2]=0;if(!(c[k>
;>2]|0)){i=l;return 0}m=Oa[c[(c[k>>2]|0)+128>>2]&63](c[j>>2]|0,c[f>>2]|0,c[g
x3e;>2]|0)|0;c[c[h>>2]>>2]=m;i=l;return 0}function $i(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;p=i;i=i+32|0;g=p+28|0;h=p+24|0;j=p+20|0;k=p+16|0;l=p+12|0;m=p+8|0;o=p+4|0;n=p;c[g>>2]=
a;c[h>>2]=b;c[j>>2]=d;c[k>>2]=e;c[l>>2]=f;c[o>>2]=0;c[n>>2]=c[(c[g
x3e;>2]|0)+84>>2];c[k>>2]=c[k>>2]|256;c[m>>2]=0;while(1){if((c[m>>2]|0)
x3e;>>0>=(c[j>>2]|0)>>>0){f=8;break}c[o>>2]=Gi(c[n>>2]|0,c[(c[g>
;>2]|0)+88>>2]|0,(c[h>>2]|0)+(c[m>>2]|0)|0,c[k>>2]|0)|0;if(c[o>>2]|0){f=8
;break}f=c[n>>2]|0;if(c[k>>2]&16|0)f=c[f+60>>2]|0;else f=c[f+56>>2]|0;c[(c[l>
x3e;2]|0)+(c[m>>2]<<2)>>2]=f;c[m>>2]=(c[m>>2]|0)+1}if((f|0)==8){i=p;return c[o
>>2]|0}return 0}function aj(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;v=i;i=i+80|0;k=v+64|0;l=v+60|0;d=v+56|0;g=v+52|0;n=v+48|0;e=v+44|0;h=v+40|0;j=v+36|0;f=v+32|0;m=v+28|0;p=v+24|0;s=v+20|0;o=v+
16|0;q=v+12|0;r=v+8|0;t=v+4|0;u=v;c[l>>2]=a;c[d>>2]=b;c[g>>2]=c[l>>2];do if(c[(c[c[l>
;>2]>>2]|0)+8>>2]&2|0){c[e>>2]=c[c[l>>2]>>2];c[h>>2]=c[(c[
e>>2]|0)+532>>2];if(Oa[c[(c[h>>2]|0)+148>>2]&63](c[e>>2]|0,c[d>>
;2]|0,j)|0){c[(c[g>>2]|0)+44>>2]=-1;break}c[k>>2]=bj(c[l>>2]|0,c[j>>2]|0)|0;u=
c[k>>2]|0;i=v;return u|0}while(0);Ed(c[c[l>>2]>>2]|0,c[d>>2]|0);c[n>>2]=Bi(c[g
>>2]|0)|0;a:do if(c[n>>2]|0){c[f>>2]=c[c[l>>2]>>2];c[m>>2]=c[(c[f>
;>2]|0)+692>>2];c[p>>2]=c[(c[l>>2]|0)+40>>2];c[s>>2]=c[(c[m>>2]|
0)+1324+64>>2];Za[c[(c[n>>2]|0)+4>>2]&31](c[c[p>>2]>>2]|0,c[(c[l>>
;2]|0)+12+4>>2]|0,c[(c[l>>2]|0)+12+8>>2]|0,0,0)|0;c[o>>2]=c[(c[m>>2]|0)+1892
x3e;>2];while(1){if((c[o>>2]|0)>>>0<=0)break a;c[q>>2]=c[(c[m>>2]|0)+1896
+((c[o>>2]|0)-1<<2)>>2];c[r>>2]=c[(c[q>>2]|0)+64>>2];d=c[(c[l>
x3e;2]|0)+12+4>>2]|0;if((c[s>>2]|0)!=(c[r>>2]|0)){c[t>>2]=xb(d,c[s>>2]|0,c[r
x3e;>2]|0)|0;c[u>>2]=xb(c[(c[l>>2]|0)+12+8>>2]|0,c[s>>2]|0,c[r>>2]|0)|0}else
{c[t>>2]=d;c[u>>2]=c[(c[l>>2]|0)+12+8>>2]}Za[c[(c[n>>2]|0)+4>>2]&
;31](c[(c[p>>2]|0)+4+((c[o>>2]|0)-1<<2)>>2]|0,c[t>>2]|0,c[u>>2]|0,0,
0)|0;c[o>>2]=(c[o>>2]|0)+-1}}while(0);c[k>>2]=0;u=c[k>>2]|0;i=v;return u|0}function bj(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;p=i;i=i+64|0;e=p+48|0;r=p+44|0;q=p+40|0;g=p+36|0;d=p
+32|0;f=p+28|0;j=p+24|0;m=p+20|0;h=p+16|0;k=p+12|0;l=p+8|0;n=p+4|0;o=p;c[e>>2]=a;c[r>>2]=b;c[q>>2]=
c[e>>2];c[(c[q>>2]|0)+44>>2]=c[r>>2];Cd(c[c[e>>2]>>2]|0,c[r>>
;2]|0);c[g>>2]=Bi(c[q>>2]|0)|0;if(!(c[g>>2]|0)){i=p;return 0}c[d>>2]=c[c[e>>2]
x3e;>2];c[f>>2]=c[(c[d>>2]|0)+692>>2];c[j>>2]=c[(c[e>>2]|0)+40>>
;2];c[m>>2]=c[(c[f>>2]|0)+1324+64>>2];Za[c[(c[g>>2]|0)+4>>2]&31](c[c[j>
;>2]>>2]|0,c[(c[e>>2]|0)+12+4>>2]|0,c[(c[e>>2]|0)+12+8>>2]|0,0,0)|0;c[h
x3e;>2]=c[(c[f>>2]|0)+1892>>2];while(1){if((c[h>>2]|0)>>>0<=0)break;c[k
x3e;>2]=c[(c[f>>2]|0)+1896+((c[h>>2]|0)-1<<2)>>2];c[l>>2]=c[(c[k>>
;2]|0)+64>>2];d=c[(c[e>>2]|0)+12+4>>2]|0;if((c[m>>2]|0)!=(c[l>>2]|0)){c[n>
;>2]=xb(d,c[m>>2]|0,c[l>>2]|0)|0;c[o>>2]=xb(c[(c[e>>2]|0)+12+8>>2]|0,c[m
x3e;>2]|0,c[l>>2]|0)|0}else{c[n>>2]=d;c[o>>2]=c[(c[e>>2]|0)+12+8>>2]}Za[c
[(c[g>>2]|0)+4>>2]&31](c[(c[j>>2]|0)+4+((c[h>>2]|0)-1<<2)>>2]|0
,c[n>>2]|0,c[o>>2]|0,0,0)|0;c[h>>2]=(c[h>>2]|0)+-1}i=p;return 0}function cj(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];i=d;return 0}function dj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0;g=i;i=i+16|0;h=g+8|0;e=g+4|0;f=g;c[h>>2
]=a;c[e>>2]=b;c[f>>2]=c[(c[h>>2]|0)+16>>2];if((c[e>>2]|0)>>>0
x3e;=256){h=0;i=g;return h|0}h=d[(c[f>>2]|0)+(6+(c[e>>2]|0))>>0]|0;i=g;return h|0}function ej(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;l=i;i=i+32|0;m=l+20|0;e=l+16|0;j=l+12|0;f=l+8|0;h=l+4|0;g=l;c[m>>2]=a;
c[e>>2]=b;c[j>>2]=c[(c[m>>2]|0)+16>>2];c[f>>2]=c[c[e>>2]>>
2];c[h>>2]=0;c[g>>2]=0;c[j>>2]=(c[j>>2]|0)+6;do{m=(c[f>>2]|0)+1|0;c[f>>
;2]=m;if(m>>>0>=256){k=5;break}c[g>>2]=d[(c[j>>2]|0)+(c[f>>2]|0)>>0]}
while(!(c[g>>2]|0));if((k|0)==5){k=c[h>>2]|0;m=c[e>>2]|0;c[m>>2]=k;m=c[g>>2]|0
;i=l;return m|0}c[h>>2]=c[f>>2];k=c[h>>2]|0;m=c[e>>2]|0;c[m>>2]=k;m=c[g>
x3e;2]|0;i=l;return m|0}function fj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;k=i;i=i+32|0;e=k+20|0;f=k+16|0;j=k+12|0;l=k
+8|0;h=k+4|0;g=k;c[e>>2]=a;c[f>>2]=b;c[j>>2]=(c[e>>2]|0)+2;c[j>>2]=(c[j>
x3e;2]|0)+2;c[l>>2]=(((d[(c[j>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[j>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535;if((c[l>>2]|0)>>>0<262?1:((c[e>>
;2]|0)+(c[l>>2]|0)|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>
;>2]|0,8);if((c[(c[f>>2]|0)+8>>2]|0)>>>0<1){i=k;return 0}c[j>>2]=(c[e>
;>2]|0)+6;c[h>>2]=0;while(1){if((c[h>>2]|0)>>>0>=256)break;l=c[j>>2]|0;c[
j>>2]=l+1;c[g>>2]=d[l>>0];if((c[g>>2]|0)>>>0>=(c[(c[f>>2]|
0)+172>>2]|0)>>>0)sc(c[f>>2]|0,16);c[h>>2]=(c[h>>2]|0)+1}i=k;return 0}function
gj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>
;2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=0;c[c[f>>2]>>2]=(((
d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&65535)<<
;0)&65535;i=e;return 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,o=0,p=0,q=0,r=0;p=i;i=i+48|0;r=p+40
|0;f=p+36|0;q=p+32|0;m=p+28|0;o=p+24|0;l=p+20|0;j=p+16|0;n=p+12|0;g=p+8|0;h=p+4|0;k=p;c[r>>2]=b;c[f>>2]=e;c[
q>>2]=c[(c[r>>2]|0)+16>>2];c[m>>2]=0;c[o>>2]=ij(c[q>>2]|0,c[f>
x3e;2]|0)|0;if(!(c[o>>2]|0)){r=c[m>>2]|0;i=p;return r|0}c[l>>2]=c[o>>2];c[j>>2
]=c[f>>2]&255;c[l>>2]=(c[l>>2]|0)+2;c[n>>2]=((d[(c[l>>2]|0)+-2>>
;0]&65535)<<8|(d[(c[l>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[l>>2]=(
c[l>>2]|0)+2;c[g>>2]=((d[(c[l>>2]|0)+-2>>0]&65535)<<8|(d[(c[l>>
2]|0)+-2+1>>0]&65535)<<0)&65535;c[l>>2]=(c[l>>2]|0)+2;c[h>>2]=((a[(c
[l>>2]|0)+-2>>0]<<16>>16<<8|d[(c[l>>2]|0)+-2+1>>0]<
x3c;0)&65535)<<16>>16;c[k>>2]=((d[c[l>>2]>>0]&65535)<<8|(d
[(c[l>>2]|0)+1>>0]&65535)<<0)&65535;c[j>>2]=(c[j>>2]|0)-(c[n>
x3e;2]|0);if(!(c[k>>2]|0?(c[j>>2]|0)>>>0<(c[g>>2]|0)>>>0:0)){r=
c[m>>2]|0;i=p;return r|0}c[l>>2]=(c[l>>2]|0)+((c[k>>2]|0)+(c[j>>2]<<
1));c[j>>2]=((d[c[l>>2]>>0]&65535)<<8|(d[(c[l>>2]|0)+1>>0]&
;65535)<<0)&65535;if(!(c[j>>2]|0)){r=c[m>>2]|0;i=p;return r|0}c[m>>2]=(c[j>>
;2]|0)+(c[h>>2]|0)&65535;r=c[m>>2]|0;i=p;return r|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,m=0,n=0;n=i;i=i+32|0;e=n+28|0;f=n+24|0;k=n+20|0;h=n+16|0;g=n+12|0;j=n+8|0;m=n+4|0;l=n;c[e>>2]=a;c[f>>
;2]=b;c[k>>2]=0;if((c[f>>2]|0)>>>0>=65536){a=c[k>>2]|0;i=n;return a|0}c[h>
;>2]=c[f>>2]&255;c[g>>2]=(c[f>>2]|0)>>>8;c[j>>2]=(c[e>>
;2]|0)+6;c[m>>2]=(c[e>>2]|0)+518;if(!(c[g>>2]|0)){c[l>>2]=c[m>>2];c[j>>
;2]=(c[j>>2]|0)+(c[h>>2]<<1);if((((d[c[j>>2]>>0]|0)&65535)<<8|((
d[(c[j>>2]|0)+1>>0]|0)&65535)<<0)&65535|0){a=c[k>>2]|0;i=n;return a|0}}else{c[
j>>2]=(c[j>>2]|0)+(c[g>>2]<<1);c[l>>2]=(c[m>>2]|0)+((((d[c[j>
x3e;2]>>0]|0)&65535)<<8|((d[(c[j>>2]|0)+1>>0]|0)&65535)<<0)&65535
&-8);if((c[l>>2]|0)==(c[m>>2]|0)){a=c[k>>2]|0;i=n;return a|0}}c[k>>2]=c[l>>
;2];a=c[k>>2]|0;i=n;return a|0}function jj(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;v=i;i=i+64|0;w=v+56|0;f=v+52|0;t=v+48|0;l=v+44|0;q=v+40|0;h=v+36|0;s=v+32|0;o=v+28|0;r=v+24|0;j=v+20|0;k=v+16|0;n=
v+12|0;g=v+8|0;p=v+4|0;m=v;c[w>>2]=b;c[f>>2]=e;c[t>>2]=c[(c[w>>2]|0)+16>>2];c[
l>>2]=0;c[q>>2]=0;c[h>>2]=(c[c[f>>2]>>2]|0)+1;a:while(1){if((c[h>>2]|
0)>>>0>=65536){u=15;break}c[s>>2]=ij(c[t>>2]|0,c[h>>2]|0)|0;b:do if(c[s>
x3e;2]|0?(c[o>>2]=c[s>>2],c[o>>2]=(c[o>>2]|0)+2,c[r>>2]=((d[(c[o>>2]|
0)+-2>>0]&65535)<<8|(d[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535,c[
o>>2]=(c[o>>2]|0)+2,c[j>>2]=((d[(c[o>>2]|0)+-2>>0]&65535)<<8|(d
[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535,c[o>>2]=(c[o>>2]|0)+2,c[k>
;>2]=((a[(c[o>>2]|0)+-2>>0]<<16>>16<<8|d[(c[o>>2]|0)+-2+1>
x3e;0]<<0)&65535)<<16>>16,c[n>>2]=((d[c[o>>2]>>0]&65535)
x3c;<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535,c[g>>2]=c[h>>2]&
;255,c[n>>2]|0):0){if((c[g>>2]|0)>>>0<(c[r>>2]|0)>>>0){c[g>
;>2]=c[r>>2];c[p>>2]=0}else c[p>>2]=(c[g>>2]|0)-(c[r>>2]|0);c[o>>
;2]=(c[o>>2]|0)+((c[n>>2]|0)+(c[p>>2]<<1));c[h>>2]=(c[h>>2]&-256
)+(c[g>>2]|0);while(1){if((c[p>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break
b;c[o>>2]=(c[o>>2]|0)+2;c[m>>2]=((d[(c[o>>2]|0)+-2>>0]&65535)<<
;8|(d[(c[o>>2]|0)+-2+1>>0]&65535)<<0)&65535;if(c[m>>2]|0?(c[l>>2]=(c
[m>>2]|0)+(c[k>>2]|0)&65535,c[l>>2]|0):0)break a;c[p>>2]=(c[p>>2]|0)+1;c[
h>>2]=(c[h>>2]|0)+1}}while(0);c[h>>2]=(c[h>>2]&-256)+256}if((u|0)==15){u=c[q>
x3e;2]|0;w=c[f>>2]|0;c[w>>2]=u;w=c[l>>2]|0;i=v;return w|0}c[q>>2]=c[h>>2];u=c[
q>>2]|0;w=c[f>>2]|0;c[w>>2]=u;w=c[l>>2]|0;i=v;return w|0}function kj(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;x=i;i=i+80|0;g=x+64|0;h=x+60|0;v=x+56|0;q=x+52|0;t=x+48
|0;s=x+44|0;f=x+40|0;w=x+36|0;m=x+32|0;o=x+28|0;l=x+24|0;j=x+20|0;u=x+16|0;k=x+12|0;n=x+8|0;r=x+4|0;p=x;c[g>>2]=b;c[h
x3e;>2]=e;c[v>>2]=(c[g>>2]|0)+2;c[q>>2]=((d[c[v>>2]>>0]&65535)<
x3c;8|(d[(c[v>>2]|0)+1>>0]&65535)<<0)&65535;if((c[q>>2]|0)>>>0
x3c;518?1:((c[g>>2]|0)+(c[q>>2]|0)|0)>>>0>(c[(c[h>>2]|0)+4>>2]|0)>
;>>0)sc(c[h>>2]|0,8);c[f>>2]=(c[g>>2]|0)+6;c[v>>2]=c[f>>2];c[s>
x3e;2]=0;c[t>>2]=0;while(1){f=c[v>>2]|0;if((c[t>>2]|0)>>>0>=256)break;c[v>
;>2]=f+2;c[o>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+
1>>0]&65535)<<0)&65535;if((c[(c[h>>2]|0)+8>>2]|0)>>>0>=2?c
[o>>2]&7|0:0)sc(c[h>>2]|0,8);c[o>>2]=(c[o>>2]|0)>>>3;if((c[o>
x3e;2]|0)>>>0>(c[s>>2]|0)>>>0)c[s>>2]=c[o>>2];c[t>>2]=(
c[t>>2]|0)+1}c[w>>2]=f;c[m>>2]=(c[w>>2]|0)+((c[s>>2]|0)+1<<3);if((c[
m>>2]|0)>>>0>(c[(c[h>>2]|0)+4>>2]|0)>>>0)sc(c[h>>2]|0
,8);c[t>>2]=0;while(1){if((c[t>>2]|0)>>>0>(c[s>>2]|0)>>>0)break
;c[v>>2]=(c[v>>2]|0)+2;c[l>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8
|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[v>>2]=(c[v>>2]|0)+2;c[j
x3e;>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>>0]&
;65535)<<0)&65535;c[v>>2]=(c[v>>2]|0)+2;c[k>>2]=((a[(c[v>>2]|0)+-2>
x3e;0]<<16>>16<<8|d[(c[v>>2]|0)+-2+1>>0]<<0)&65535)<<
16>>16;c[v>>2]=(c[v>>2]|0)+2;c[u>>2]=((d[(c[v>>2]|0)+-2>>0]&65535
)<<8|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0)&65535;a:do if(c[j>>2]|0){do
if((c[(c[h>>2]|0)+8>>2]|0)>>>0>=2){if((c[l>>2]|0)>>>0<256?((
c[l>>2]|0)+(c[j>>2]|0)|0)>>>0<=256:0)break;sc(c[h>>2]|0,8)}while(0);if(c[u>
;>2]|0){c[n>>2]=(c[v>>2]|0)+-2+(c[u>>2]|0);if(!((c[n>>2]|0)>>>0>
;=(c[m>>2]|0)>>>0?((c[n>>2]|0)+(c[j>>2]<<1)|0)>>>0<=((
c[g>>2]|0)+(c[q>>2]|0)|0)>>>0:0))sc(c[h>>2]|0,9);if((c[(c[h>>2]|0)+8>
;>2]|0)>>>0>=1){c[r>>2]=(c[v>>2]|0)+(c[j>>2]<<1);while(1){if((c
[v>>2]|0)>>>0>=(c[r>>2]|0)>>>0)break a;c[v>>2]=(c[v>>
2]|0)+2;c[p>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>
;>0]&65535)<<0)&65535;if(!(c[p>>2]|0))continue;c[p>>2]=(c[p>>2]|0)+(c[k
x3e;>2]|0)&65535;if((c[p>>2]|0)>>>0<(c[(c[h>>2]|0)+172>>2]|0)>
x3e;>0)continue;sc(c[h>>2]|0,16)}}}}while(0);c[t>>2]=(c[t>>2]|0)+1}i=x;return 0}function lj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(
c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=2;c[c[f>>2]>>2]=(((d[c
[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&65535)<<0
)&65535;i=e;return 0}function mj(a,b){a=a|0;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[f>>2]=a;
c[h>>2]=b;c[(c[f>>2]|0)+16>>2]=c[h>>2];c[g>>2]=(c[h>>2]|0)+6;c[(c[f
x3e;>2]|0)+32>>2]=((((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1
x3e;>0]|0)&65535)<<0)&65535)>>1;c[(c[f>>2]|0)+24>>2]=-1;c[(c[f>>
;2]|0)+28>>2]=0;i=e;return 0}function nj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[e>
;>2]=a;c[f>>2]=b;do if((c[f>>2]|0)>>>0<65536){b=c[e>>2]|0;if(c[(c[e>
x3e;2]|0)+20>>2]&1|0){c[d>>2]=oj(b,f,0)|0;break}else{c[d>>2]=pj(b,f,0)|0;break}}else c[d>
;>2]=0;while(0);i=g;return c[d>>2]|0}function oj(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;z=i;i=i+80|0;g=z+60|0;h=z+56|0;j=z+52|0;k=z+64|0;t=z+48|0;x=z+44|0;n=z+40|0;u=z+36|0;m=
z+32|0;q=z+28|0;s=z+24|0;l=z+20|0;p=z+16|0;v=z+12|0;w=z+8|0;o=z+4|0;r=z;c[h>>2]=b;c[j>>2]=e;a[k>>0
]=f;c[l>>2]=c[c[j>>2]>>2];c[p>>2]=0;c[v>>2]=(c[(c[h>>2]|0)+16>
x3e;2]|0)+6;c[t>>2]=((d[c[v>>2]>>0]&65535)<<8|(d[(c[v>>2]|0)+1>>
;0]&65535)<<0)&65535&-2;c[s>>2]=(c[t>>2]|0)>>>1;if(!(c[s>>
2]|0)){c[g>>2]=0;y=c[g>>2]|0;i=z;return y|0}if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1
;while(1){if((c[l>>2]|0)>>>0>65535)break;c[v>>2]=(c[(c[h>>2]|0)+16>>
2]|0)+14;c[w>>2]=(c[(c[h>>2]|0)+16>>2]|0)+16+(c[t>>2]|0);c[q>>2]=0;while(1){if
((c[q>>2]|0)>>>0>=(c[s>>2]|0)>>>0)break;c[v>>2]=(c[v>>
;2]|0)+2;c[n>>2]=((d[(c[v>>2]|0)+-2>>0]&65535)<<8|(d[(c[v>>2]|0)+-2+1>
;>0]&65535)<<0)&65535;c[w>>2]=(c[w>>2]|0)+2;c[x>>2]=((d[(c[w>>2
]|0)+-2>>0]&65535)<<8|(d[(c[w>>2]|0)+-2+1>>0]&65535)<<0)&65535;
if((c[l>>2]|0)>>>0>=(c[x>>2]|0)>>>0?(c[l>>2]|0)>>>
;0<=(c[n>>2]|0)>>>0:0){c[v>>2]=(c[w>>2]|0)+-2+(c[t>>2]|0);c[m>
x3e;2]=((a[c[v>>2]>>0]<<16>>16<<8|d[(c[v>>2]|0)+1>>0]<
;<0)&65535)<<16>>16;c[v>>2]=(c[v>>2]|0)+(c[t>>2]|0);c[u>>2
]=((d[c[v>>2]>>0]&65535)<<8|(d[(c[v>>2]|0)+1>>0]&65535)<<0
)&65535;if((((c[x>>2]|0)==65535?(c[q>>2]|0)>>>0>=((c[s>>2]|0)-1|0)>
x3e;>0:0)&(c[n>>2]|0)==65535?(c[o>>2]=c[c[h>>2]>>2],c[r>>2]=(c[(c[o
x3e;>2]|0)+500>>2]|0)+(c[(c[o>>2]|0)+504>>2]|0),c[u>>2]|0):0)?((c[v>>2]|0
)+(c[u>>2]|0)+2|0)>>>0>(c[r>>2]|0)>>>0:0){c[m>>2]=1;c[u>
x3e;2]=0}if((c[u>>2]|0)!=65535){y=15;break}}c[q>>2]=(c[q>>2]|0)+1}do if((y|0)==15){y=0;if(!(c[u>
;>2]|0)){c[p>>2]=(c[l>>2]|0)+(c[m>>2]|0)&65535;break}c[v>>2]=(c[v>>2
]|0)+((c[u>>2]|0)+((c[l>>2]|0)-(c[x>>2]|0)<<1));c[p>>2]=((d[c[v>>2]
x3e;>0]&65535)<<8|(d[(c[v>>2]|0)+1>>0]&65535)<<0)&65535;if(c[p>
x3e;2]|0)c[p>>2]=(c[p>>2]|0)+(c[m>>2]|0)&65535}while(0);if((a[k>>0]|0)==0|(c[p>
;>2]|0)!=0)break;c[l>>2]=(c[l>>2]|0)+1}if((d[k>>0]|0)!=0&(c[p>>2]|0)!=0)c[c[j
x3e;>2]>>2]=c[l>>2];c[g>>2]=c[p>>2];y=c[g>>2]|0;i=z;return y|0}function pj
(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,D=0,E=0,F=
0,G=0;G=i;i=i+96|0;g=G+88|0;h=G+84|0;j=G+80|0;k=G+92|0;z=G+76|0;E=G+72|0;o=G+68|0;A=G+64|0;n=G+60|0;t=G+56|0;v=G+52|0;u=G+48|0;y
=G+44|0;l=G+40|0;q=G+36|0;C=G+32|0;p=G+28|0;s=G+24|0;r=G+20|0;D=G+16|0;B=G+12|0;w=G+8|0;x=G+4|0;m=G;c[h>>2]=b;c[j>
;>2]=e;a[k>>0]=f;c[l>>2]=c[c[j>>2]>>2];c[q>>2]=0;c[C>>2]=(c[(c[
h>>2]|0)+16>>2]|0)+6;c[z>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C
x3e;>2]|0)+1>>0]&65535)<<0)&65535&-2;if(!(c[z>>2]|0)){c[g>>2]=0;F=c[
g>>2]|0;i=G;return F|0}c[y>>2]=(c[z>>2]|0)>>>1;c[u>>2]=c[y>>2];
c[o>>2]=65535;if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1;c[v>>2]=0;c[t>>2]=c
[y>>2];while(1){if((c[v>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[u
x3e;>2]=((c[v>>2]|0)+(c[t>>2]|0)|0)>>>1;c[C>>2]=(c[(c[h>>2]|0)+16>
;>2]|0)+14+(c[u>>2]<<1);c[o>>2]=((d[c[C>>2]>>0]&65535)<<8|(
d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(2+(c[z>
;>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>
;0]&65535)<<0)&65535;if((c[l>>2]|0)>>>0<(c[E>>2]|0)>>>
;0){c[t>>2]=c[u>>2];continue}if((c[l>>2]|0)>>>0<=(c[o>>2]|0)>
x3e;>0){F=11;break}c[v>>2]=(c[u>>2]|0)+1}do if((F|0)==11){c[C>>2]=(c[C>>2]|0)+(c[z
x3e;>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>>
;2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>
x3e;2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0
]&65535)<<0)&65535;if((((c[E>>2]|0)==65535?(c[u>>2]|0)>>>0>=((c[y>
;>2]|0)-1|0)>>>0:0)&(c[o>>2]|0)==65535?(c[p>>2]=c[c[h>>2]>>2],c
[s>>2]=(c[(c[p>>2]|0)+500>>2]|0)+(c[(c[p>>2]|0)+504>>2]|0),c[A>>2]|0
):0)?((c[C>>2]|0)+(c[A>>2]|0)+2|0)>>>0>(c[s>>2]|0)>>>0:0){c[n
x3e;>2]=1;c[A>>2]=0}if(c[(c[h>>2]|0)+20>>2]&2|0){c[t>>2]=c[u>>2];if((
c[A>>2]|0)==65535)c[u>>2]=(c[t>>2]|0)+1;c[r>>2]=c[t>>2];while(1){if((c[r>
x3e;2]|0)>>>0<=0)break;c[B>>2]=c[C>>2];c[C>>2]=(c[(c[h>>2]|0)+16>
;>2]|0)+14+((c[r>>2]|0)-1<<1);c[D>>2]=((d[c[C>>2]>>0]&65535)<
x3c;8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[l>>2]|0)>>>0
x3e;(c[D>>2]|0)>>>0){F=21;break}c[o>>2]=c[D>>2];c[C>>2]=(c[C>>2
]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>
;2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>
;>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>>2]|0)+1>>0]
x3c;<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>
;2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<
;0)&65535;if((c[A>>2]|0)!=65535)c[u>>2]=(c[r>>2]|0)-1;c[r>>2]=(c[r>>2]|0)+-
1}if((F|0)==21)c[C>>2]=c[B>>2];if((c[u>>2]|0)==((c[t>>2]|0)+1|0)){if((c[r>>2]|
0)!=(c[t>>2]|0)){c[C>>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[t>>2]<<1);c[
o>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535
)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>
;2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>
;>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>
x3e;16<<8|d[(c[C>>2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>
;2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(
d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535}c[u>>2]=c[t>>2];c[r>>
2]=(c[t>>2]|0)+1;while(1){if((c[r>>2]|0)>>>0>=(c[y>>2]|0)>>>0)break
;c[C>>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[r>>2]<<1);c[w>>2]=((d[c[C>
;>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c
[C>>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[x>>2]=((d[c[C>>2]>>0]&65535
)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[l>>2]|0)>>
;>0<(c[x>>2]|0)>>>0)break;c[o>>2]=c[w>>2];c[E>>2]=c[x>>
;2];c[C>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<
;16>>16<<8|d[(c[C>>2]|0)+1>>0]<<0)&65535)<<16>>16;c[C
>>2]=(c[C>>2]|0)+(c[z>>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if((c[A>>2]|0)!=65535)c[u>
x3e;2]=c[r>>2];c[r>>2]=(c[r>>2]|0)+1}c[r>>2]=(c[r>>2]|0)+-1;if((c[u>>
;2]|0)==(c[t>>2]|0)){c[u>>2]=c[r>>2];break}}if((c[u>>2]|0)!=(c[r>>2]|0)){c[C
x3e;>2]=(c[(c[h>>2]|0)+16>>2]|0)+14+(c[u>>2]<<1);c[o>>2]=((d[c[C>>
;2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>
;>2]=(c[C>>2]|0)+(2+(c[z>>2]|0));c[E>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+(
c[z>>2]|0);c[n>>2]=((a[c[C>>2]>>0]<<16>>16<<8|d[(c[C>
x3e;2]|0)+1>>0]<<0)&65535)<<16>>16;c[C>>2]=(c[C>>2]|0)+(c[z>
;>2]|0);c[A>>2]=((d[c[C>>2]>>0]&65535)<<8|(d[(c[C>>2]|0)+1>>
;0]&65535)<<0)&65535}}else if((c[A>>2]|0)==65535)break;if(!(c[A>>2]|0)){c[q>>2
]=(c[l>>2]|0)+(c[n>>2]|0)&65535;break}c[C>>2]=(c[C>>2]|0)+((c[A>>2]|0)+((
c[l>>2]|0)-(c[E>>2]|0)<<1));c[q>>2]=((d[c[C>>2]>>0]&65535)<
;<8|(d[(c[C>>2]|0)+1>>0]&65535)<<0)&65535;if(c[q>>2]|0)c[q>>2]=(
c[q>>2]|0)+(c[n>>2]|0)&65535}while(0);do if(a[k>>0]|0){c[m>>2]=c[h>>2];if
((c[l>>2]|0)>>>0>(c[o>>2]|0)>>>0?(c[u>>2]=(c[u>>2]|0)+
1,(c[u>>2]|0)==(c[y>>2]|0)):0){c[g>>2]=0;F=c[g>>2]|0;i=G;return F|0}if(qj(c[m>>
;2]|0,c[u>>2]|0)|0){if(!(c[q>>2]|0))break;c[c[j>>2]>>2]=c[l>>2];break}c[(c[m
x3e;>2]|0)+24>>2]=c[l>>2];if(c[q>>2]|0)c[(c[m>>2]|0)+28>>2]=c[q>>
;2];else{c[(c[m>>2]|0)+24>>2]=c[l>>2];rj(c[m>>2]|0);c[q>>2]=c[(c[m>>
2]|0)+28>>2]}if(c[q>>2]|0)c[c[j>>2]>>2]=c[(c[m>>2]|0)+24>>2]}while(0
);c[g>>2]=c[q>>2];F=c[g>>2]|0;i=G;return F|0}function qj(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;p=i;i=i+48|0;k=p+32|0;l=p+28|0;m=p+24|0;j=p+20|0;o=p+16|0;h=p+12|0;n=p+8|0;f=p+4|0;g=p;c[l>>2]=b;c
[m>>2]=e;c[j>>2]=c[(c[l>>2]|0)+16>>2];c[h>>2]=c[(c[l>>2]|0)+32>
x3e;2];while(1){if((c[m>>2]|0)>>>0>=(c[h>>2]|0)>>>0){b=12;break}c[o>
x3e;2]=(c[j>>2]|0)+14+(c[m>>2]<<1);c[(c[l>>2]|0)+44>>2]=((d[c[o>>2]
x3e;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;c[o>>
;2]=(c[o>>2]|0)+(2+(c[h>>2]<<1));c[(c[l>>2]|0)+40>>2]=((d[c[o>>2]>
;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;c[o>>
2]=(c[o>>2]|0)+(c[h>>2]<<1);c[(c[l>>2]|0)+48>>2]=((a[c[o>>2]>
x3e;0]<<16>>16<<8|d[(c[o>>2]|0)+1>>0]<<0)&65535)<<16
x3e;>16;c[o>>2]=(c[o>>2]|0)+(c[h>>2]<<1);c[n>>2]=((d[c[o>>2]>
;>0]&65535)<<8|(d[(c[o>>2]|0)+1>>0]&65535)<<0)&65535;if(((((c[m>
;>2]|0)>>>0>=((c[h>>2]|0)-1|0)>>>0?(c[(c[l>>2]|0)+40>>2]|0
)==65535:0)?(c[(c[l>>2]|0)+44>>2]|0)==65535:0)?(c[f>>2]=c[c[l>>2]>>2],c[g>
;>2]=(c[(c[f>>2]|0)+500>>2]|0)+(c[(c[f>>2]|0)+504>>2]|0),c[n>>2]|0):0)?((
c[o>>2]|0)+(c[n>>2]|0)+2|0)>>>0>(c[g>>2]|0)>>>0:0){c[(c[l>
x3e;2]|0)+48>>2]=1;c[n>>2]=0}if((c[n>>2]|0)!=65535){b=10;break}c[m>>2]=(c[m>>2
]|0)+1}if((b|0)==10){c[(c[l>>2]|0)+52>>2]=c[n>>2]|0?(c[o>>2]|0)+(c[n>>2]|0)|0:
0;c[(c[l>>2]|0)+36>>2]=c[m>>2];c[k>>2]=0;o=c[k>>2]|0;i=p;return o|0}else if((b
|0)==12){c[k>>2]=-1;o=c[k>>2]|0;i=p;return o|0}return 0}function rj(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;n=i;i=i+32|0;j=n+28|0;k=n+24|0;h=n+20|0;f=n+16|0;e=n+12|0;g=n+8|0;l=n+4|0;m=n;c[j>>2]=a;a:do if((c[(c[j
x3e;>2]|0)+24>>2]|0)>>>0<65535){c[k>>2]=(c[(c[j>>2]|0)+24>>2]|0
)+1;if((c[k>>2]|0)>>>0<(c[(c[j>>2]|0)+40>>2]|0)>>>0)c[k>
x3e;2]=c[(c[j>>2]|0)+40>>2];b:while(1){c[h>>2]=c[(c[j>>2]|0)+52>>2];c[f>
x3e;2]=c[(c[j>>2]|0)+44>>2];c[e>>2]=c[(c[j>>2]|0)+48>>2];c:do if((c[k>>
;2]|0)>>>0<=(c[f>>2]|0)>>>0){if(!(c[h>>2]|0))while(1){c[m>>2]=(
c[k>>2]|0)+(c[e>>2]|0)&65535;b=c[k>>2]|0;if(c[m>>2]|0){a=12;break b}b=b+1|0;c[k>
;>2]=b;if(b>>>0>(c[f>>2]|0)>>>0)break c}c[g>>2]=(c[h>>2]|0
)+((c[k>>2]|0)-(c[(c[j>>2]|0)+40>>2]|0)<<1);do{c[g>>2]=(c[g>>2]|0)+2
;c[l>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+-2+1>
x3e;0]|0)&65535)<<0)&65535;if(c[l>>2]|0?(c[l>>2]=(c[l>>2]|0)+(c[e>>2
]|0)&65535,c[l>>2]|0):0){a=9;break b}b=(c[k>>2]|0)+1|0;c[k>>2]=b}while(b>>>0
x3c;=(c[f>>2]|0)>>>0)}while(0);if((qj(c[j>>2]|0,(c[(c[j>>2]|0)+36>>2]|0)+
1|0)|0)<0)break a;if((c[k>>2]|0)>>>0>=(c[(c[j>>2]|0)+40>>2]|0)>>
;>0)continue;c[k>>2]=c[(c[j>>2]|0)+40>>2]}if((a|0)==9){c[(c[j>>2]|0)+24>>
2]=c[k>>2];c[(c[j>>2]|0)+28>>2]=c[l>>2];i=n;return}else if((a|0)==12){c[(c[j>>
2]|0)+24>>2]=b;c[(c[j>>2]|0)+28>>2]=c[m>>2];i=n;return}}while(0);c[(c[j>>2]|0)+
24>>2]=-1;c[(c[j>>2]|0)+28>>2]=0;i=n;return}function sj(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;h=j+4|0;g=j;c[e>>2]=a;c[f>>2]=b;if((c[c[f>>2]>>
;2]|0)>>>0>=65535){c[d>>2]=0;h=c[d>>2]|0;i=j;return h|0}a=c[e>>2]|0;do if(!(c[(
c[e>>2]|0)+20>>2]&1|0)){c[g>>2]=a;if((c[c[f>>2]>>2]|0)!=(c[(c[g>>
;2]|0)+24>>2]|0)){c[h>>2]=pj(c[e>>2]|0,c[f>>2]|0,1)|0;break}rj(c[g>>2]|0);c[h
x3e;>2]=c[(c[g>>2]|0)+28>>2];if(c[h>>2]|0)c[c[f>>2]>>2]=c[(c[g>>
;2]|0)+24>>2]}else c[h>>2]=oj(a,c[f>>2]|0,1)|0;while(0);c[d>>2]=c[h>>2];h=c[d
x3e;>2]|0;i=j;return h|0}function tj(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,D=0,E=0,F=0,G=0,H=0;H=i;i=i+112|0;n=H+104|0;o=H+100|0;B=H+96|0;x=H+92|0;g=H+88|0;m=H+84|0;j=H+80|0;f=
H+76|0;s=H+72|0;z=H+68|0;r=H+64|0;l=H+60|0;h=H+56|0;k=H+52|0;G=H+48|0;q=H+44|0;A=H+40|0;y=H+36|0;w=H+32|0;v=H+28|0;p=H+24|0;F=H+
20|0;D=H+16|0;C=H+12|0;E=H+8|0;t=H+4|0;u=H;c[n>>2]=b;c[o>>2]=e;c[B>>2]=(c[n>>2]|0)+2;c[B
>>2]=(c[B>>2]|0)+2;c[x>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<<8|(d[(
c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[r>>2]=0;if((c[x>>2]|0)>
x3e;>0<16)sc(c[o>>2]|0,8);if(((c[n>>2]|0)+(c[x>>2]|0)|0)>>>0>(c[(c[o
>>2]|0)+4>>2]|0)>>>0){if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=
1)sc(c[o>>2]|0,8);c[x>>2]=(c[(c[o>>2]|0)+4>>2]|0)-(c[n>>2]|0)}c[B>>2
]=(c[n>>2]|0)+6;c[B>>2]=(c[B>>2]|0)+2;c[z>>2]=((d[(c[B>>2]|0)+-2>>0]
x26;65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if((c[(c[o>>2
]|0)+8>>2]|0)>>>0>=2?c[z>>2]&1|0:0)sc(c[o>>2]|0,8);c[z>>2]=((c[
z>>2]|0)>>>0)/2|0;if((c[x>>2]|0)>>>0<(16+(c[z>>2]<<1
x3c;<2)|0)>>>0)sc(c[o>>2]|0,8);do if((c[(c[o>>2]|0)+8>>2]|0)>>>
0>=2){c[B>>2]=(c[B>>2]|0)+2;c[l>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<
;<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[B>>2]=(c[B>>2]|0
)+2;c[h>>2]=((d[(c[B>>2]|0)+-2>>0]&65535)<<8|(d[(c[B>>2]|0)+-2+1>>
;0]&65535)<<0)&65535;c[B>>2]=(c[B>>2]|0)+2;c[k>>2]=((d[(c[B>>2]|0)+-
2>>0]&65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if((c[
l>>2]|c[k>>2])&1|0)sc(c[o>>2]|0,8);c[l>>2]=((c[l>>2]|0)>>>
0)/2|0;c[k>>2]=((c[k>>2]|0)>>>0)/2|0;if((((c[l>>2]|0)>>>0<=(c[z
>>2]|0)>>>0?c[l>>2]<<1>>>0>=(c[z>>2]|0)>>
x3e;0:0)?((c[l>>2]|0)+(c[k>>2]|0)|0)==(c[z>>2]|0):0)?(c[l>>2]|0)==(1<<c[h>
;>2]|0):0)break;sc(c[o>>2]|0,8)}while(0);c[g>>2]=(c[n>>2]|0)+14;c[m>>2]=(c[n>
x3e;2]|0)+16+(c[z>>2]<<1);c[f>>2]=(c[m>>2]|0)+(c[z>>2]<<1);c[j>
x3e;2]=(c[f>>2]|0)+(c[z>>2]<<1);c[s>>2]=(c[j>>2]|0)+(c[z>>2]<
x3c;1);if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=2?(c[B>>2]=(c[g>>2]|0)+((c[z
x3e;>2]|0)-1<<1),(((d[c[B>>2]>>0]&65535)<<8|(d[(c[B>>2]|0)+1>
x3e;0]&65535)<<0)&65535|0)!=65535):0)sc(c[o>>2]|0,8);c[w>>2]=0;c[v>>2]=0;c[F
x3e;>2]=c[m>>2];c[D>>2]=c[g>>2];c[C>>2]=c[f>>2];c[E>>2]=c[j>
;>2];c[y>>2]=0;while(1){if((c[y>>2]|0)>>>0>=(c[z>>2]|0)>>>
0)break;c[B>>2]=c[E>>2];c[F>>2]=(c[F>>2]|0)+2;c[G>>2]=((d[(c[F>>2]|0
)+-2>>0]&65535)<<8|(d[(c[F>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[D
>>2]=(c[D>>2]|0)+2;c[q>>2]=((d[(c[D>>2]|0)+-2>>0]&65535)<<8|(d[(
c[D>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[C>>2]=(c[C>>2]|0)+2;c[p>
x3e;2]=((a[(c[C>>2]|0)+-2>>0]<<16>>16<<8|d[(c[C>>2]|0)+-2+1>>
;0]<<0)&65535)<<16>>16;c[E>>2]=(c[E>>2]|0)+2;c[A>>2]=((d[(c[E
x3e;>2]|0)+-2>>0]&65535)<<8|(d[(c[E>>2]|0)+-2+1>>0]&65535)<<0)
x26;65535;if((c[G>>2]|0)>>>0>(c[q>>2]|0)>>>0)sc(c[o>>2]|0,8);do
if((c[y>>2]|0)>>>0>0?(c[G>>2]|0)>>>0<=(c[v>>2]|0)>
x3e;>0:0){if((c[(c[o>>2]|0)+8>>2]|0)>>>0>=1){sc(c[o>>2]|0,8);break}if((c[
w>>2]|0)>>>0<=(c[G>>2]|0)>>>0?(c[v>>2]|0)>>>0<
;=(c[q>>2]|0)>>>0:0){c[r>>2]=c[r>>2]|2;break}c[r>>2]=c[r>>2]|1}
while(0);f=c[A>>2]|0;a:do if((c[A>>2]|0)!=0&(c[A>>2]|0)!=65535){c[B>>2]=(c[B>
x3e;2]|0)+f;do if((c[(c[o>>2]|0)+8>>2]|0)>>>0<1){if(!(((c[G>>2]|0)==65535?(c[y
>>2]|0)==((c[z>>2]|0)-1|0):0)&(c[q>>2]|0)==65535)){if((c[B>>2]|0)>>>
0>=(c[s>>2]|0)>>>0?((c[B>>2]|0)+((c[q>>2]|0)-(c[G>>2]|0)+1<<
;1)|0)>>>0<=(c[(c[o>>2]|0)+4>>2]|0)>>>0:0)break;sc(c[o>>2]|0,8)}}
else{if((c[B>>2]|0)>>>0>=(c[s>>2]|0)>>>0?((c[B>>2]|0)+((c[q>
;>2]|0)-(c[G>>2]|0)+1<<1)|0)>>>0<=((c[n>>2]|0)+(c[x>>2]|0)|0)
x3e;>>0:0)break;sc(c[o>>2]|0,8)}while(0);if((c[(c[o>>2]|0)+8>>2]|0)>>>0
x3e;=1){c[t>>2]=c[G>>2];while(1){if((c[t>>2]|0)>>>0>=(c[q>>2]|0)>
;>>0)break a;c[B>>2]=(c[B>>2]|0)+2;c[u>>2]=((d[(c[B>>2]|0)+-2>>0]&
;65535)<<8|(d[(c[B>>2]|0)+-2+1>>0]&65535)<<0)&65535;if(c[u>>2]|0?(c[
u>>2]=(c[u>>2]|0)+(c[p>>2]|0)&65535,(c[u>>2]|0)>>>0>=(c[(c[o>
;>2]|0)+172>>2]|0)>>>0):0)sc(c[o>>2]|0,16);c[t>>2]=(c[t>>2]|0)+1}}}else
if((f|0)==65535){if((c[(c[o>>2]|0)+8>>2]|0)>>>0<2?((c[G>>2]|0)==65535?(c[y>
;>2]|0)==((c[z>>2]|0)-1|0):0)&(c[q>>2]|0)==65535:0)break;sc(c[o>>2]|0,8)}while(0);c[w>
;>2]=c[G>>2];c[v>>2]=c[q>>2];c[y>>2]=(c[y>>2]|0)+1}i=H;return c[r>
x3e;2]|0}function uj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=
b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=4;c[c[f>>2]
x3e;>2]=(((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1>>0]|0)&
65535)<<0)&65535;i=e;return 0}function vj(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;h=i;i=i+32|0;n
=h+28|0;l=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;k=h+8|0;j=h+4|0;e=h;c[n>>2]=a;c[l>>2]=b;c[m>>2]=c[(c[n
>>2]|0)+16>>2];c[g>>2]=0;c[f>>2]=(c[m>>2]|0)+6;c[f>>2]=(c[f>>
;2]|0)+2;c[k>>2]=(((d[(c[f>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+-2+
1>>0]|0)&65535)<<0)&65535;c[f>>2]=(c[f>>2]|0)+2;c[j>>2]=(((d[(c[f>
;>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+-2+1>>0]|0)&65535)<<
;0)&65535;c[e>>2]=(c[l>>2]|0)-(c[k>>2]|0);if((c[e>>2]|0)>>>0>=(
c[j>>2]|0)>>>0){n=c[g>>2]|0;i=h;return n|0}c[f>>2]=(c[f>>2]|0)+(c[e>
x3e;2]<<1);c[g>>2]=(((d[c[f>>2]>>0]|0)&65535)<<8|((d[(c[f>>2]|0
)+1>>0]|0)&65535)<<0)&65535;n=c[g>>2]|0;i=h;return n|0}function wj(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;o=i;i=i+48|0;q=o+36|0;f=o+32|0;p=o+28|0;m=o+24|0;g=o+20|0;j=o+16|0;l=o+12|0;e=o+
8|0;h=o+4|0;k=o;c[q>>2]=a;c[f>>2]=b;c[p>>2]=c[(c[q>>2]|0)+16>>2];c[m>>
;2]=0;c[g>>2]=(c[c[f>>2]>>2]|0)+1;c[j>>2]=0;c[l>>2]=(c[p>>2]|0)+6;c[
l>>2]=(c[l>>2]|0)+2;c[e>>2]=(((d[(c[l>>2]|0)+-2>>0]|0)&65535)<<
8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[l>>2]=(c[l>>2]|0)+2
;c[h>>2]=(((d[(c[l>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>
x3e;0]|0)&65535)<<0)&65535;if((c[g>>2]|0)>>>0>=65536){p=c[m>>2]|0;q=
c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}if((c[g>>2]|0)>>>0<(c
[e>>2]|0)>>>0)c[g>>2]=c[e>>2];c[k>>2]=(c[g>>2]|0)-(c[e>>
;2]|0);c[l>>2]=(c[l>>2]|0)+(c[k>>2]<<1);while(1){if((c[k>>2]|0)>>>
;0>=(c[h>>2]|0)>>>0){n=9;break}c[l>>2]=(c[l>>2]|0)+2;c[j>>2]=(((d[(c
[l>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<
;<0)&65535;a=c[g>>2]|0;if(c[j>>2]|0)break;c[g>>2]=a+1;c[k>>2]=(c[k>>
2]|0)+1}if((n|0)==9){p=c[m>>2]|0;q=c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}c[m>
;>2]=a;p=c[m>>2]|0;q=c[f>>2]|0;c[q>>2]=p;q=c[j>>2]|0;i=o;return q|0}function xj(a,b
){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;k=l+12|0;j=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[
f>>2]=b;if(((c[e>>2]|0)+10|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>
;>0)sc(c[f>>2]|0,8);c[k>>2]=(c[e>>2]|0)+2;c[k>>2]=(c[k>>2]|0)+2;c[j>
x3e;2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)
x26;65535)<<0)&65535;c[k>>2]=(c[e>>2]|0)+8;c[k>>2]=(c[k>>2]|0)+2;c[g>
;>2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0
)&65535)<<0)&65535;if(!(((c[e>>2]|0)+(c[j>>2]|0)|0)>>>0<=(c[(c[f>
;>2]|0)+4>>2]|0)>>>0?(c[j>>2]|0)>>>0>=(10+(c[g>>2]<
x3c;1)|0)>>>0:0))sc(c[f>>2]|0,8);if(!((c[g>>2]|0)>>>0>0?(c[(c[f>>
;2]|0)+8>>2]|0)>>>0>=1:0)){i=l;return 0}do{c[k>>2]=(c[k>>2]|0)+2;c[h>>
;2]=(((d[(c[k>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)&
;65535)<<0)&65535;if((c[h>>2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)
x3e;>>0)sc(c[f>>2]|0,16);c[g>>2]=(c[g>>2]|0)+-1}while((c[g>>2]|0)>>
x3e;0>0);i=l;return 0}function yj(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;f=e+4|0;g=e;c[h>>2]=a
;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+4;c[(c[f>>2]|0)+4>>2]=6;
c[c[f>>2]>>2]=(((d[c[g>>2]>>0]|0)&65535)<<8|((d[(c[g>>2]|0)+1
x3e;>0]|0)&65535)<<0)&65535;i=e;return 0}function zj(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;m=i;i=i+48|0;o=m+32|0;h=m+28|0;n=m+24|0;j=m+20|0;g=m+16|0;f=m+12|0;k=m+8|0;e=m+4|0;l=m;c[o>>2]=a;c[h>
x3e;2]=b;c[n>>2]=c[(c[o>>2]|0)+16>>2];c[j>>2]=0;c[g>>2]=(c[n>>2]|0)+
8204;c[g>>2]=(c[g>>2]|0)+4;c[f>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(
c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>
;>2]|0)+-4+3>>0]|0)<<0;while(1){if((c[f>>2]|0)>>>0<=0){b=7;break}c[g>
;>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>
;2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-
4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[e>>2]=(d[(c[g>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[l>
x3e;2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if((c[h
x3e;>2]|0)>>>0<(c[k>>2]|0)>>>0){b=7;break}if((c[h>>2]|0)>>
x3e;0<=(c[e>>2]|0)>>>0){b=5;break}c[f>>2]=(c[f>>2]|0)+-1}if((b|0)==5){c[j>
;>2]=(c[l>>2]|0)+(c[h>>2]|0)-(c[k>>2]|0);o=c[j>>2]|0;i=m;return o|0}else if((b|0)==
7){o=c[j>>2]|0;i=m;return o|0}return 0}function Aj(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;p=i;i=i+48|0;r=p+40|0;e=p+36|0;l=p+32|0;f=p+28|0;h=p+24|0;q=p+20|0;k=p+16|0;j=p+12|0;m=p+8|0;g=p+4|0;n=p;c[r>>2]=
a;c[e>>2]=b;c[l>>2]=0;c[f>>2]=(c[c[e>>2]>>2]|0)+1;c[h>>2]=0;c[q>
;>2]=c[(c[r>>2]|0)+16>>2];c[k>>2]=(c[q>>2]|0)+8204;c[k>>2]=(c[k>>
;2]|0)+4;c[j>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<
;<0;c[k>>2]=(c[q>>2]|0)+8208;while(1){if((c[j>>2]|0)>>>0<=0){o=9;break}c[
k>>2]=(c[k>>2]|0)+4;c[m>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>
;>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>
2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>2]|0)+4;c[g>>2]=(d[(c[k>>2]|0)+-4
>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>
x3e;0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>2]|0)+4;c[n
>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<
x3c;16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;if
((c[f>>2]|0)>>>0<(c[m>>2]|0)>>>0)c[f>>2]=c[m>>2];if((
c[f>>2]|0)>>>0<=(c[g>>2]|0)>>>0?(c[h>>2]=(c[f>>2]|0)-(
c[m>>2]|0)+(c[n>>2]|0),c[h>>2]|0):0)break;c[j>>2]=(c[j>>2]|0)+-1}if((o|0)==9){
q=c[l>>2]|0;r=c[e>>2]|0;c[r>>2]=q;r=c[h>>2]|0;i=p;return r|0}c[l>>2]=c[f>
x3e;2];q=c[l>>2]|0;r=c[e>>2]|0;c[r>>2]=q;r=c[h>>2]|0;i=p;return r|0}function Bj(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;t=i;i=i+64|0;e=t+52|0;f=t+48|0;q=t+44|0;k=t+40|0;m=t+36
|0;p=t+32|0;o=t+28|0;r=t+24|0;h=t+20|0;s=t+16|0;g=t+12|0;l=t+8|0;j=t+4|0;n=t;c[e>>2]=a;c[f>>2]=b;c[q>
x3e;2]=(c[e>>2]|0)+4;if(((c[e>>2]|0)+16+8192|0)>>>0>(c[(c[f>>2]|0)+4>>
;2]|0)>>>0)sc(c[f>>2]|0,8);c[q>>2]=(c[q>>2]|0)+4;c[m>>2]=(d[(c[q>>
;2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-
4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;if((c[m>>2]|0)>>
;>0<8208?1:(c[m>>2]|0)>>>0>((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>
2]|0)|0)>>>0)sc(c[f>>2]|0,8);c[k>>2]=(c[e>>2]|0)+12;c[q>>2]=(c[k>>
;2]|0)+8192;c[q>>2]=(c[q>>2]|0)+4;c[p>>2]=(d[(c[q>>2]|0)+-4>>0]|0)<<
24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(
c[q>>2]|0)+-4+3>>0]|0)<<0;if(((c[q>>2]|0)+((c[p>>2]|0)*12|0)|0)>>>
;0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[l>>2]=0;c[o>
x3e;2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[q>>
;2]=(c[q>>2]|0)+4;c[r>>2]=(d[(c[q>>2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3
x3e;>0]|0)<<0;c[q>>2]=(c[q>>2]|0)+4;c[h>>2]=(d[(c[q>>2]|0)+-4>>
0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(c[q>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;c[q>>2]=(c[q>>2]|0)+4;c[s>>
;2]=(d[(c[q>>2]|0)+-4>>0]|0)<<24|(d[(c[q>>2]|0)+-4+1>>0]|0)<<16|(d[(
c[q>>2]|0)+-4+2>>0]|0)<<8|(d[(c[q>>2]|0)+-4+3>>0]|0)<<0;if((c[r>
;>2]|0)>>>0>(c[h>>2]|0)>>>0)sc(c[f>>2]|0,8);if((c[o>>2]|0)
x3e;>>0>0?(c[r>>2]|0)>>>0<=(c[l>>2]|0)>>>0:0)sc(c[f>
x3e;2]|0,8);a:do if((c[(c[f>>2]|0)+8>>2]|0)>>>0>=1){if(((c[s>>2]|0)+(c[h>
x3e;2]|0)-(c[r>>2]|0)|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)>>>0)sc(
c[f>>2]|0,16);c[g>>2]=(c[h>>2]|0)-(c[r>>2]|0)+1;if(c[r>>2]&-65536|0)while
(1){if((c[g>>2]|0)>>>0<=0)break a;c[j>>2]=(c[r>>2]|0)>>>16;c[n
x3e;>2]=c[r>>2]&65535;if(!((d[(c[k>>2]|0)+((c[j>>2]|0)>>>3)>>0]|
0)&128>>(c[j>>2]&7)))sc(c[f>>2]|0,8);if(!((d[(c[k>>2]|0)+((c[n>>2]|0
)>>>3)>>0]|0)&128>>(c[n>>2]&7)))sc(c[f>>2]|0,8);c[g>>
2]=(c[g>>2]|0)+-1;c[r>>2]=(c[r>>2]|0)+1}else{if(c[h>>2]&-65536|0)sc(c[f>>
2]|0,8);while(1){if((c[g>>2]|0)>>>0<=0)break a;c[n>>2]=c[r>>2]&65535;if((
d[(c[k>>2]|0)+((c[n>>2]|0)>>>3)>>0]|0)&128>>(c[n>>2]&
7)|0)sc(c[f>>2]|0,8);c[g>>2]=(c[g>>2]|0)+-1;c[r>>2]=(c[r>>2]|0)+1}}}while(0);c
[l>>2]=c[h>>2];c[o>>2]=(c[o>>2]|0)+1}i=t;return 0}function Cj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16
>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=8;c[c[f>>2]>>2]=(d[c[g>>2]>>
0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>>0]|0)<
x3c;8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function Dj(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;h=i;i=i+32|0;n=h+28|0;l=h+24|0;m=h+20|0;g=h+16|0;f=h+12|0;k=h+8|0;j=h+4|0;e=h;c[n>>2]=a;c[l>>
;2]=b;c[m>>2]=c[(c[n>>2]|0)+16>>2];c[g>>2]=0;c[f>>2]=(c[m>>2]|0)+12;
c[f>>2]=(c[f>>2]|0)+4;c[k>>2]=(d[(c[f>>2]|0)+-4>>0]|0)<<24|(d[(c[f
x3e;>2]|0)+-4+1>>0]|0)<<16|(d[(c[f>>2]|0)+-4+2>>0]|0)<<8|(d[(c[f>>
;2]|0)+-4+3>>0]|0)<<0;c[f>>2]=(c[f>>2]|0)+4;c[j>>2]=(d[(c[f>>2]|0)+-
4>>0]|0)<<24|(d[(c[f>>2]|0)+-4+1>>0]|0)<<16|(d[(c[f>>2]|0)+-4+2>
;>0]|0)<<8|(d[(c[f>>2]|0)+-4+3>>0]|0)<<0;c[e>>2]=(c[l>>2]|0)-(c
[k>>2]|0);if((c[e>>2]|0)>>>0>=(c[j>>2]|0)>>>0){n=c[g>>
;2]|0;i=h;return n|0}c[f>>2]=(c[f>>2]|0)+(c[e>>2]<<1);c[g>>2]=(((d[c[f>
x3e;2]>>0]|0)&65535)<<8|((d[(c[f>>2]|0)+1>>0]|0)&65535)<<0)&65535
;n=c[g>>2]|0;i=h;return n|0}function Ej(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;m=i;i=i+48|0;o=m+
32|0;j=m+28|0;n=m+24|0;k=m+20|0;l=m+16|0;g=m+12|0;h=m+8|0;e=m+4|0;f=m;c[o>>2]=a;c[j>>2]=b;c[n>>2]=
c[(c[o>>2]|0)+16>>2];c[k>>2]=(c[c[j>>2]>>2]|0)+1;c[l>>2]=0;c[g>
x3e;2]=(c[n>>2]|0)+12;c[g>>2]=(c[g>>2]|0)+4;c[h>>2]=(d[(c[g>>2]|0)+-4>>
;0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;c[g>>2]=(c[g>>2]|0)+4;c[e>>
;2]=(d[(c[g>>2]|0)+-4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(
c[g>>2]|0)+-4+2>>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if((c[k>
;>2]|0)>>>0<(c[h>>2]|0)>>>0)c[k>>2]=c[h>>2];c[f>>
;2]=(c[k>>2]|0)-(c[h>>2]|0);c[g>>2]=(c[g>>2]|0)+(c[f>>2]<<1);while(1
){if((c[f>>2]|0)>>>0>=(c[e>>2]|0)>>>0){a=7;break}c[g>>2]=(c[g
x3e;>2]|0)+2;c[l>>2]=(((d[(c[g>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[g>>
2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if(c[l>>2]|0){a=7;break}c[k>>2]=(c[k>
x3e;2]|0)+1;c[f>>2]=(c[f>>2]|0)+1}if((a|0)==7){c[c[j>>2]>>2]=c[k>>2];i=m;return
c[l>>2]|0}return 0}function Fj(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;k=l+12
|0;j=l+8|0;g=l+4|0;h=l;c[e>>2]=a;c[f>>2]=b;c[k>>2]=(c[e>>2]|0)+4;if(((c[e>>2]|
0)+20|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[k>
;>2]=(c[k>>2]|0)+4;c[j>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>
;2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-
4+3>>0]|0)<<0;c[k>>2]=(c[e>>2]|0)+16;c[k>>2]=(c[k>>2]|0)+4;c[g>
x3e;2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;if(!((c[j
>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>2]|0)|0)>>>
;0?(c[j>>2]|0)>>>0>=(20+(c[g>>2]<<1)|0)>>>0:0))sc(c[f>>
;2]|0,8);if(!((c[g>>2]|0)>>>0>0?(c[(c[f>>2]|0)+8>>2]|0)>>>0>
;=1:0)){i=l;return 0}do{c[k>>2]=(c[k>>2]|0)+2;c[h>>2]=(((d[(c[k>>2]|0)+-2>>0]|
0)&65535)<<8|((d[(c[k>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c[h>
x3e;2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)>>>0)sc(c[f>>2]|0,16);c
[g>>2]=(c[g>>2]|0)+-1}while((c[g>>2]|0)>>>0>0);i=l;return 0}function Gj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[
h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=10;c[c[f>>2]>>2]=(d[c[g>
;>2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>
;>0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function Hj(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;c[(c[g>>2]|0)+16>>2]=c[h>
x3e;2];c[h>>2]=(c[h>>2]|0)+12;c[(c[g>>2]|0)+40>>2]=(d[c[h>>2]>>0]|0)
x3c;<24|(d[(c[h>>2]|0)+1>>0]|0)<<16|(d[(c[h>>2]|0)+2>>0]|0)<<8|(
d[(c[h>>2]|0)+3>>0]|0)<<0;a[(c[g>>2]|0)+24>>0]=0;i=f;return 0}function Ij(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=Jj(c[f>>2]|0,e,0)|0;i=d
;return a|0}function Jj(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;x=i;i=i
+64|0;g=x+52|0;h=x+48|0;j=x+44|0;k=x+56|0;o=x+40|0;t=x+36|0;s=x+32|0;l=x+28|0;u=x+24|0;n=x+20|0;v=x+16|0;p=x+12|0;r=x+8|0;q=x+4|
0;m=x;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;c[o>>2]=0;c[t>>2]=(c[(c[h>>2]|0)+
16>>2]|0)+12;c[s>>2]=d[c[t>>2]>>0]<<24|d[(c[t>>2]|0)+1>>0]
x3c;<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t>>2]|0)+3>>0]<<0;c[l>
x3e;2]=c[c[j>>2]>>2];if(!(c[s>>2]|0)){c[g>>2]=0;w=c[g>>2]|0;i=x;return w|0}c[q
>>2]=c[s>>2];c[n>>2]=-1;if(a[k>>0]|0)c[l>>2]=(c[l>>2]|0)+1;c[r>
x3e;2]=0;c[p>>2]=c[s>>2];while(1){if((c[r>>2]|0)>>>0>=(c[p>>2]|0)>
;>>0)break;c[q>>2]=((c[r>>2]|0)+(c[p>>2]|0)|0)>>>1;c[t>>2]=(c[(
c[h>>2]|0)+16>>2]|0)+16+((c[q>>2]|0)*12|0);c[t>>2]=(c[t>>2]|0)+4;c[u>>
;2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>>2]|0)+-4+1>>0]<<16|d[(c[t>
x3e;2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4+3>>0]<<0;c[t>>2]=(c[t>
x3e;2]|0)+4;c[n>>2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>>2]|0)+-4+1>>0]
x3c;<16|d[(c[t>>2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4+3>>0]<<0;if((
c[l>>2]|0)>>>0<(c[u>>2]|0)>>>0){c[p>>2]=c[q>>2];continue
}if((c[l>>2]|0)>>>0<=(c[n>>2]|0)>>>0){w=11;break}c[r>>2]=(c[q
x3e;>2]|0)+1}if((w|0)==11){c[v>>2]=d[c[t>>2]>>0]<<24|d[(c[t>>2]|0)+1>
;>0]<<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t>>2]|0)+3>>0]<<
0;c[o>>2]=(c[v>>2]|0)+(c[l>>2]|0)-(c[u>>2]|0)}if(a[k>>0]|0){c[m>>2]=
c[h>>2];if((c[l>>2]|0)>>>0>(c[n>>2]|0)>>>0?(c[q>>2]=(
c[q>>2]|0)+1,(c[q>>2]|0)==(c[s>>2]|0)):0){c[g>>2]=0;w=c[g>>2]|0;i=x;return w|0
}a[(c[m>>2]|0)+24>>0]=1;c[(c[m>>2]|0)+28>>2]=c[l>>2];c[(c[m>>2]|0)+36
>>2]=c[q>>2];if(!(c[o>>2]|0)){Kj(c[m>>2]|0);if(a[(c[m>>2]|0)+24>>0]|
0)c[o>>2]=c[(c[m>>2]|0)+32>>2]}else c[(c[m>>2]|0)+32>>2]=c[o>>2];if(
c[o>>2]|0)c[c[j>>2]>>2]=c[(c[m>>2]|0)+28>>2]}c[g>>2]=c[o>>
2];w=c[g>>2]|0;i=x;return w|0}function Kj(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;e=n+28|0;k=n+24
|0;l=n+20|0;g=n+16|0;m=n+12|0;f=n+8|0;j=n+4|0;h=n;c[e>>2]=b;a:do if((c[(c[e>>2]|0)+28>>2]|0)>
x3e;>0<4294967295){c[f>>2]=(c[(c[e>>2]|0)+28>>2]|0)+1;c[j>>2]=c[(c[e>>
;2]|0)+36>>2];c[j>>2]=c[(c[e>>2]|0)+36>>2];b:while(1){if((c[j>>2]|0)>>
;>0>=(c[(c[e>>2]|0)+40>>2]|0)>>>0)break a;c[k>>2]=(c[(c[e>>2]|0
)+16>>2]|0)+16+((c[j>>2]|0)*12|0);c[k>>2]=(c[k>>2]|0)+4;c[l>>2]=(d[(c[k>
x3e;2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0
)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=(c[k>>
;2]|0)+4;c[g>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4+3>>0]|0)<
;<0;c[m>>2]=(d[c[k>>2]>>0]|0)<<24|(d[(c[k>>2]|0)+1>>0]|0)<
x3c;16|(d[(c[k>>2]|0)+2>>0]|0)<<8|(d[(c[k>>2]|0)+3>>0]|0)<<0;if((c[f
>>2]|0)>>>0<(c[l>>2]|0)>>>0)c[f>>2]=c[l>>2];while(1){
if((c[f>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[h>>2]=(c[m>>
;2]|0)+(c[f>>2]|0)-(c[l>>2]|0);b=c[f>>2]|0;if(c[h>>2]|0)break b;c[f>>2]=b+1}c[
j>>2]=(c[j>>2]|0)+1}c[(c[e>>2]|0)+28>>2]=b;c[(c[e>>2]|0)+32>>2]=c[h
x3e;>2];c[(c[e>>2]|0)+36>>2]=c[j>>2];i=n;return}while(0);a[(c[e>>2]|0)+24>>
;0]=0;i=n;return}function Lj(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;j=m+4|0;k=m
;c[g>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];if((c[(c[j>>2]|0)+28>>2]|0)>
;>>0>=4294967295){c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}do if(d[(c[j>>2]|0)+24>
x3e;0]|0?(c[(c[j>>2]|0)+28>>2]|0)==(c[c[h>>2]>>2]|0):0){Kj(c[j>>2]|0);if(!(a[(
c[j>>2]|0)+24>>0]|0)){c[k>>2]=0;break}c[k>>2]=c[(c[j>>2]|0)+32>>2];if
(c[k>>2]|0)c[c[h>>2]>>2]=c[(c[j>>2]|0)+28>>2]}else l=9;while(0);if((l|0)==9)c[
k>>2]=Jj(c[g>>2]|0,c[h>>2]|0,1)|0;c[f>>2]=c[k>>2];l=c[f>>2]|0;i=m;return
l|0}function Mj(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0;m=p+28|0;j=p+24
|0;l=p+20|0;k=p+16|0;n=p+12|0;g=p+8|0;o=p+4|0;h=p;c[e>>2]=a;c[f>>2]=b;if(((c[e>>2]|0)+16|0)>
x3e;>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[m>>2]=(c[e
>>2]|0)+4;c[m>>2]=(c[m>>2]|0)+4;c[j>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<
;<24|(d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<
;8|(d[(c[m>>2]|0)+-4+3>>0]|0)<<0;c[m>>2]=(c[e>>2]|0)+12;c[m>>2]=(c[m
>>2]|0)+4;c[l>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1
x3e;>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>
;0]|0)<<0;if(!((c[j>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>
x3e;2]|0)|0)>>>0?(c[j>>2]|0)>>>0>=(16+((c[l>>2]|0)*12|0)|0)>>
x3e;0:0))sc(c[f>>2]|0,8);c[h>>2]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0
x3e;=(c[l>>2]|0)>>>0)break;c[m>>2]=(c[m>>2]|0)+4;c[n>>2]=(d[(c[m>>
;2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-
4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>0]|0)<<0;c[m>>2]=(c[m>>
2]|0)+4;c[g>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(d[(c[m>>2]|0)+-4+1>>0]|
0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m>>2]|0)+-4+3>>0]|0)<
;<0;c[m>>2]=(c[m>>2]|0)+4;c[o>>2]=(d[(c[m>>2]|0)+-4>>0]|0)<<24|(
d[(c[m>>2]|0)+-4+1>>0]|0)<<16|(d[(c[m>>2]|0)+-4+2>>0]|0)<<8|(d[(c[m
x3e;>2]|0)+-4+3>>0]|0)<<0;if((c[n>>2]|0)>>>0>(c[g>>2]|0)>
x3e;>0)sc(c[f>>2]|0,8);if((c[k>>2]|0)>>>0>0?(c[n>>2]|0)>>>
0<=(c[h>>2]|0)>>>0:0)sc(c[f>>2]|0,8);if((c[(c[f>>2]|0)+8>>2]|0)>
;>>0>=1?((c[o>>2]|0)+(c[g>>2]|0)-(c[n>>2]|0)|0)>>>0>=(c[(c[f>
;>2]|0)+172>>2]|0)>>>0:0)sc(c[f>>2]|0,16);c[h>>2]=c[g>>2];c[k>
x3e;2]=(c[k>>2]|0)+1}i=p;return 0}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;h=e+8|0;f=e+4|0;g=e;c[
h>>2]=a;c[f>>2]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4
>>2]=12;c[c[f>>2]>>2]=(d[c[g>>2]>>0]|0)<<24|(d[(c[g>>2]|0)+
1>>0]|0)<<16|(d[(c[g>>2]|0)+2>>0]|0)<<8|(d[(c[g>>2]|0)+3>>
0]|0)<<0;i=e;return 0}function Oj(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;c[(c[g>>2]|0)+16>>2]=c[h>>2];c[h>>2]=(c[h>>2]|0)+12;c[(c[g>
x3e;2]|0)+40>>2]=(d[c[h>>2]>>0]|0)<<24|(d[(c[h>>2]|0)+1>>0]|0)<
x3c;16|(d[(c[h>>2]|0)+2>>0]|0)<<8|(d[(c[h>>2]|0)+3>>0]|0)<<0;a[(c[g
x3e;>2]|0)+24>>0]=0;i=f;return 0}function Pj(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>
x3e;2]=a;c[e>>2]=b;a=Qj(c[f>>2]|0,e,0)|0;i=d;return a|0}function Qj(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;w=i;i=i+64|0;g=w+48|0;h=w+44|0;j=w+40|0;k=w+52|0;o=w+36|0;t=w+32|0;s=w+28|0
;l=w+24|0;u=w+20|0;n=w+16|0;p=w+12|0;r=w+8|0;q=w+4|0;m=w;c[h>>2]=b;c[j>>2]=e;a[k>>0]=f;c[o>
x3e;2]=0;c[t>>2]=(c[(c[h>>2]|0)+16>>2]|0)+12;c[s>>2]=d[c[t>>2]>>0]
x3c;<24|d[(c[t>>2]|0)+1>>0]<<16|d[(c[t>>2]|0)+2>>0]<<8|d[(c[t
x3e;>2]|0)+3>>0]<<0;c[l>>2]=c[c[j>>2]>>2];if(!(c[s>>2]|0)){c[g
x3e;>2]=0;v=c[g>>2]|0;i=w;return v|0}c[q>>2]=c[s>>2];c[n>>2]=-1;if(a[k>>0
]|0)c[l>>2]=(c[l>>2]|0)+1;c[r>>2]=0;c[p>>2]=c[s>>2];while(1){if((c[r>>
;2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[q>>2]=((c[r>>2]|0)+(c[p>
;>2]|0)|0)>>>1;c[t>>2]=(c[(c[h>>2]|0)+16>>2]|0)+16+((c[q>>2]|0)*12|0
);c[t>>2]=(c[t>>2]|0)+4;c[u>>2]=d[(c[t>>2]|0)+-4>>0]<<24|d[(c[t>
;>2]|0)+-4+1>>0]<<16|d[(c[t>>2]|0)+-4+2>>0]<<8|d[(c[t>>2]|0)+-4
+3>>0]<<0;c[t>>2]=(c[t>>2]|0)+4;c[n>>2]=d[(c[t>>2]|0)+-4>>
0]<<24|d[(c[t>>2]|0)+-4+1>>0]<<16|d[(c[t>>2]|0)+-4+2>>0]<<
8|d[(c[t>>2]|0)+-4+3>>0]<<0;if((c[l>>2]|0)>>>0<(c[u>>2]|0)
x3e;>>0){c[p>>2]=c[q>>2];continue}if((c[l>>2]|0)>>>0<=(c[n>>
;2]|0)>>>0){v=11;break}c[r>>2]=(c[q>>2]|0)+1}if((v|0)==11)c[o>>2]=d[c[t>>
2]>>0]<<24|d[(c[t>>2]|0)+1>>0]<<16|d[(c[t>>2]|0)+2>>0]<
;<8|d[(c[t>>2]|0)+3>>0]<<0;if(a[k>>0]|0){c[m>>2]=c[h>>2];if((c[
l>>2]|0)>>>0>(c[n>>2]|0)>>>0?(c[q>>2]=(c[q>>2]|0)+1,(
c[q>>2]|0)==(c[s>>2]|0)):0){c[g>>2]=0;v=c[g>>2]|0;i=w;return v|0}a[(c[m>>2]|0)+
24>>0]=1;c[(c[m>>2]|0)+28>>2]=c[l>>2];c[(c[m>>2]|0)+36>>2]=c[q>
x3e;2];if(!(c[o>>2]|0)){Rj(c[m>>2]|0);if(a[(c[m>>2]|0)+24>>0]|0)c[o>>2]=c[(c[m
>>2]|0)+32>>2]}else c[(c[m>>2]|0)+32>>2]=c[o>>2];if(c[o>>2]|0)c[c[j
x3e;>2]>>2]=c[(c[m>>2]|0)+28>>2]}c[g>>2]=c[o>>2];v=c[g>>2]|0;i=
w;return v|0}function Rj(b){b=b|0;var e=0,f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;e=n+28|0;l=n+24|0;m=n+20|0;g=n+16|0;j=n+12
|0;f=n+8|0;k=n+4|0;h=n;c[e>>2]=b;a:do if((c[(c[e>>2]|0)+28>>2]|0)>>>0<4294967295
){c[f>>2]=(c[(c[e>>2]|0)+28>>2]|0)+1;c[k>>2]=c[(c[e>>2]|0)+36>>2];c[
k>>2]=c[(c[e>>2]|0)+36>>2];while(1){if((c[k>>2]|0)>>>0>=(c[(c[e>
;>2]|0)+40>>2]|0)>>>0)break a;c[l>>2]=(c[(c[e>>2]|0)+16>>2]|0)+16+((
c[k>>2]|0)*12|0);c[l>>2]=(c[l>>2]|0)+4;c[m>>2]=(d[(c[l>>2]|0)+-4>>0]|
0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)<
;<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;c[l>>2]=(c[l>>2]|0)+4;c[g>>2]=(
d[(c[l>>2]|0)+-4>>0]|0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l
x3e;>2]|0)+-4+2>>0]|0)<<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;c[j>>2]=(
d[c[l>>2]>>0]|0)<<24|(d[(c[l>>2]|0)+1>>0]|0)<<16|(d[(c[l>>
2]|0)+2>>0]|0)<<8|(d[(c[l>>2]|0)+3>>0]|0)<<0;if((c[f>>2]|0)>>
;>0<(c[m>>2]|0)>>>0)c[f>>2]=c[m>>2];if((c[f>>2]|0)>>
x3e;0<=(c[g>>2]|0)>>>0?(c[h>>2]=c[j>>2],c[h>>2]|0):0)break;c[k>
x3e;2]=(c[k>>2]|0)+1}c[(c[e>>2]|0)+28>>2]=c[f>>2];c[(c[e>>2]|0)+32>>
2]=c[h>>2];c[(c[e>>2]|0)+36>>2]=c[k>>2];i=n;return}while(0);a[(c[e>>2]|0)+24
x3e;>0]=0;i=n;return}function Sj(b,e){b=b|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;f=m+16|0;g=m+12|0;h=m+8|0;j=
m+4|0;k=m;c[g>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];if((c[(c[j>>2]|0)+28>>
2]|0)>>>0>=4294967295){c[f>>2]=0;l=c[f>>2]|0;i=m;return l|0}do if(d[(c[j>>2]|0
)+24>>0]|0?(c[(c[j>>2]|0)+28>>2]|0)==(c[c[h>>2]>>2]|0):0){Rj(c[j>>2]|
0);if(!(a[(c[j>>2]|0)+24>>0]|0)){c[k>>2]=0;break}c[k>>2]=c[(c[j>>2]|0)+32>
;>2];if(c[k>>2]|0)c[c[h>>2]>>2]=c[(c[j>>2]|0)+28>>2]}else l=9;while(0);if
((l|0)==9)c[k>>2]=Qj(c[g>>2]|0,c[h>>2]|0,1)|0;c[f>>2]=c[k>>2];l=c[f>>
;2]|0;i=m;return l|0}function Tj(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;p=i;i=i+48|0;e=p+36|0;f=p+32|0
;n=p+28|0;k=p+24|0;m=p+20|0;l=p+16|0;o=p+12|0;g=p+8|0;h=p+4|0;j=p;c[e>>2]=a;c[f>>2]=b;if(((c[e>>2]|
0)+16|0)>>>0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[n>
;>2]=(c[e>>2]|0)+4;c[n>>2]=(c[n>>2]|0)+4;c[k>>2]=(d[(c[n>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;c[n>>2]=(c[e>>2]|0)+12;c[n>
x3e;2]=(c[n>>2]|0)+4;c[m>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4
+3>>0]|0)<<0;if(!((c[k>>2]|0)>>>0<=((c[(c[f>>2]|0)+4>>2]|0
)-(c[e>>2]|0)|0)>>>0?(c[k>>2]|0)>>>0>=(16+((c[m>>2]|0)*12|0)|0)
x3e;>>0:0))sc(c[f>>2]|0,8);c[j>>2]=0;c[l>>2]=0;while(1){if((c[l>>2]|0)>
x3e;>0>=(c[m>>2]|0)>>>0)break;c[n>>2]=(c[n>>2]|0)+4;c[o>>2]=(d[(
c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>
;>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;c[n>>2]=(c
[n>>2]|0)+4;c[g>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1
>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>
x3e;0]|0)<<0;c[n>>2]=(c[n>>2]|0)+4;c[h>>2]=(d[(c[n>>2]|0)+-4>>0]|0)
x3c;<24|(d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<
x3c;8|(d[(c[n>>2]|0)+-4+3>>0]|0)<<0;if((c[o>>2]|0)>>>0>(c[g>>
;2]|0)>>>0)sc(c[f>>2]|0,8);if((c[l>>2]|0)>>>0>0?(c[o>>2]|0)>
;>>0<=(c[j>>2]|0)>>>0:0)sc(c[f>>2]|0,8);if((c[(c[f>>2]|0)+8>>
;2]|0)>>>0>=1?(c[h>>2]|0)>>>0>=(c[(c[f>>2]|0)+172>>2]|0)
x3e;>>0:0)sc(c[f>>2]|0,16);c[j>>2]=c[g>>2];c[l>>2]=(c[l>>2]|0)+1}i=p
;return 0}function Uj(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;f=e+4|0;g=e;c[h>>2]=a;c[f>>2
]=b;c[g>>2]=(c[(c[h>>2]|0)+16>>2]|0)+8;c[(c[f>>2]|0)+4>>2]=13;c[c[f>>
;2]>>2]=(d[c[g>>2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(
d[(c[g>>2]|0)+2>>0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;i=e;return 0}function
Vj(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;c[(c[f>>2]|0)+16
>>2]=c[g>>2];c[g>>2]=(c[g>>2]|0)+6;c[(c[f>>2]|0)+24>>2]=(d[c[g>
x3e;2]>>0]|0)<<24|(d[(c[g>>2]|0)+1>>0]|0)<<16|(d[(c[g>>2]|0)+2>
x3e;0]|0)<<8|(d[(c[g>>2]|0)+3>>0]|0)<<0;c[(c[f>>2]|0)+28>>2]=0;c[(c[
f>>2]|0)+32>>2]=0;i=e;return 0}function Wj(a){a=a|0;var b=0,d=0,e=0;e=i;i=i+16|0;b=e+4|0;d=e;c[b>>
2]=a;c[d>>2]=c[(c[b>>2]|0)+36>>2];c[(c[b>>2]|0)+28>>2]=0;if(!(c[d>>2
]|0)){i=e;return}if(!(c[(c[b>>2]|0)+32>>2]|0)){i=e;return}Fb(c[d>>2]|0,c[(c[b>>2]|0)+32
x3e;>2]|0);c[(c[b>>2]|0)+32>>2]=0;i=e;return}function Xj(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[f>>2]=c[f>>2];c[e>>2]=c[e>>2];i=d;
return 0}function Yj(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[f>
x3e;2]=c[f>>2];c[c[e>>2]>>2]=0;i=d;return 0}function Zj(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;o=i;i=i+32|0;g=o+28|0;h=o+24|0;j=o+20|0;k=o+16|0;p=o+12|0;n=o+8|0;l=o+4|0;m=o;c[h>>2]=a
;c[j>>2]=b;c[k>>2]=e;c[p>>2]=f;c[n>>2]=_j((c[(c[h>>2]|0)+16>>2]|0)+6
|0,c[p>>2]|0)|0;if(!(c[n>>2]|0)){c[g>>2]=0;p=c[g>>2]|0;i=o;return p|0}c[n>>2]=(
c[n>>2]|0)+4;c[l>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+
1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>
x3e;0]|0)<<0;c[m>>2]=(d[c[n>>2]>>0]|0)<<24|(d[(c[n>>2]|0)+1>>
;0]|0)<<16|(d[(c[n>>2]|0)+2>>0]|0)<<8|(d[(c[n>>2]|0)+3>>0]|0)<
x3c;0;if(c[l>>2]|0?$j((c[(c[h>>2]|0)+16>>2]|0)+(c[l>>2]|0)|0,c[k>>2]|0)|0:0){c
[g>>2]=Ya[c[(c[(c[j>>2]|0)+12>>2]|0)+12>>2]&127](c[j>>2]|0,c[k>>
;2]|0)|0;p=c[g>>2]|0;i=o;return p|0}if(c[m>>2]|0){c[g>>2]=ak((c[(c[h>>2]|0)+16>>
;2]|0)+(c[m>>2]|0)|0,c[k>>2]|0)|0;p=c[g>>2]|0;i=o;return p|0}else{c[g>>2]=0;p=c[g>
x3e;2]|0;i=o;return p|0}return 0}function _j(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;n=i;i=i+48|0;l=n+32|0;
e=n+28|0;f=n+24|0;o=n+20|0;g=n+16|0;j=n+12|0;h=n+8|0;m=n+4|0;k=n;c[e>>2]=a;c[f>>2]=b;c[o>>2]=(d[c[
e>>2]>>0]|0)<<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>>2]|0
)+2>>0]|0)<<8|(d[(c[e>>2]|0)+3>>0]|0)<<0;c[j>>2]=0;c[g>>2]=
c[o>>2];c[e>>2]=(c[e>>2]|0)+4;while(1){if((c[j>>2]|0)>>>0>=(c[g>
;>2]|0)>>>0){e=8;break}c[h>>2]=((c[j>>2]|0)+(c[g>>2]|0)|0)>>>1;
c[m>>2]=(c[e>>2]|0)+((c[h>>2]|0)*11|0);c[m>>2]=(c[m>>2]|0)+3;c[k>>2]=(
d[(c[m>>2]|0)+-3>>0]|0)<<16|(d[(c[m>>2]|0)+-3+1>>0]|0)<<8|(d[(c[m>
;>2]|0)+-3+2>>0]|0)<<0;if((c[f>>2]|0)>>>0<(c[k>>2]|0)>>
;>0){c[g>>2]=c[h>>2];continue}if((c[f>>2]|0)>>>0<=(c[k>>2]|0)
x3e;>>0){e=7;break}c[j>>2]=(c[h>>2]|0)+1}if((e|0)==7){c[l>>2]=c[m>>2];o=c[l>
;>2]|0;i=n;return o|0}else if((e|0)==8){c[l>>2]=0;o=c[l>>2]|0;i=n;return o|0}return 0}function $j(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;o=i;i=i+48|0;n=o+36|0;e=o+32|0;f=o+28|0;p=o+24|0;h=o+20|0;k=o+16|0;j
=o+12|0;l=o+8|0;m=o+4|0;g=o;c[e>>2]=a;c[f>>2]=b;c[p>>2]=(d[c[e>>2]>>0]|0)<
;<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>>2]|0)+2>>0]|0)<<8|(d[(
c[e>>2]|0)+3>>0]|0)<<0;c[k>>2]=0;c[h>>2]=c[p>>2];c[e>>2]=(
c[e>>2]|0)+4;while(1){if((c[k>>2]|0)>>>0>=(c[h>>2]|0)>>>0){e=8;
break}c[j>>2]=((c[k>>2]|0)+(c[h>>2]|0)|0)>>>1;c[l>>2]=(c[e>>2]|
0)+(c[j>>2]<<2);c[l>>2]=(c[l>>2]|0)+3;c[m>>2]=(d[(c[l>>2]|0)+-3>
;>0]|0)<<16|(d[(c[l>>2]|0)+-3+1>>0]|0)<<8|(d[(c[l>>2]|0)+-3+2>>
0]|0)<<0;p=c[l>>2]|0;c[l>>2]=p+1;c[g>>2]=d[p>>0];if((c[f>>2]|0)>
;>>0<(c[m>>2]|0)>>>0){c[h>>2]=c[j>>2];continue}if((c[f>>2]|
0)>>>0<=((c[m>>2]|0)+(c[g>>2]|0)|0)>>>0){e=7;break}c[k>>2]=(c[j
>>2]|0)+1}if((e|0)==7){c[n>>2]=1;p=c[n>>2]|0;i=o;return p|0}else if((e|0)==8){c[n>>2]=0;
p=c[n>>2]|0;i=o;return p|0}return 0}function ak(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;n=i;i=i+48
|0;l=n+32|0;e=n+28|0;f=n+24|0;o=n+20|0;g=n+16|0;j=n+12|0;h=n+8|0;m=n+4|0;k=n;c[e>>2]=a;c[f>>2]=b;c[o>
x3e;2]=(d[c[e>>2]>>0]|0)<<24|(d[(c[e>>2]|0)+1>>0]|0)<<16|(d[(c[e>
;>2]|0)+2>>0]|0)<<8|(d[(c[e>>2]|0)+3>>0]|0)<<0;c[j>>2]=0;c[g>
;>2]=c[o>>2];c[e>>2]=(c[e>>2]|0)+4;while(1){if((c[j>>2]|0)>>>0>=(
c[g>>2]|0)>>>0){e=8;break}c[h>>2]=((c[j>>2]|0)+(c[g>>2]|0)|0)>>
x3e;1;c[m>>2]=(c[e>>2]|0)+((c[h>>2]|0)*5|0);c[m>>2]=(c[m>>2]|0)+3;c[k>>
;2]=(d[(c[m>>2]|0)+-3>>0]|0)<<16|(d[(c[m>>2]|0)+-3+1>>0]|0)<<8|(d[(c
[m>>2]|0)+-3+2>>0]|0)<<0;if((c[f>>2]|0)>>>0<(c[k>>2]|0)>
;>>0){c[g>>2]=c[h>>2];continue}if((c[f>>2]|0)>>>0<=(c[k>>2
]|0)>>>0){e=7;break}c[j>>2]=(c[h>>2]|0)+1}if((e|0)==7){c[l>>2]=(((d[c[m>>
2]>>0]|0)&65535)<<8|((d[(c[m>>2]|0)+1>>0]|0)&65535)<<0)&65535;o
=c[l>>2]|0;i=n;return o|0}else if((e|0)==8){c[l>>2]=0;o=c[l>>2]|0;i=n;return o|0}return 0}function
bk(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;m=i;i=i+32|0;f=m+24|0;g=m+20|0;h=m+16|0;n=m+12|0;l=m+8|0;j=m+4|
0;k=m;c[g>>2]=a;c[h>>2]=b;c[n>>2]=e;c[l>>2]=_j((c[(c[g>>2]|0)+16>>2]|
0)+6|0,c[n>>2]|0)|0;if(!(c[l>>2]|0)){c[f>>2]=-1;n=c[f>>2]|0;i=m;return n|0}c[l>>
;2]=(c[l>>2]|0)+4;c[j>>2]=(d[(c[l>>2]|0)+-4>>0]|0)<<24|(d[(c[l>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)<<8|(d[(c[l>>2]|0)+-4+3
x3e;>0]|0)<<0;c[l>>2]=(c[l>>2]|0)+4;c[k>>2]=(d[(c[l>>2]|0)+-4>>
0]|0)<<24|(d[(c[l>>2]|0)+-4+1>>0]|0)<<16|(d[(c[l>>2]|0)+-4+2>>0]|0)
x3c;<8|(d[(c[l>>2]|0)+-4+3>>0]|0)<<0;if(c[j>>2]|0?$j((c[(c[g>>2]|0)+16>
;>2]|0)+(c[j>>2]|0)|0,c[h>>2]|0)|0:0){c[f>>2]=1;n=c[f>>2]|0;i=m;return n|0}if(c[k
x3e;>2]|0?ak((c[(c[g>>2]|0)+16>>2]|0)+(c[k>>2]|0)|0,c[h>>2]|0)|0:0){c[f>>
2]=0;n=c[f>>2]|0;i=m;return n|0}c[f>>2]=-1;n=c[f>>2]|0;i=m;return n|0}function ck(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;l=i;i=i+32|0;e=l+28|0;n=l+24|0;m=l+20|0;f=l+16|0;g=l+12|0;j=l+8|0;k=l+4|0;h=l;c[n>
x3e;2]=a;c[m>>2]=b;c[f>>2]=c[n>>2];c[g>>2]=c[(c[f>>2]|0)+24>>2];c[j
x3e;>2]=(c[(c[n>>2]|0)+16>>2]|0)+10;if(dk(c[f>>2]|0,(c[g>>2]|0)+1|0,c[m>>
2]|0)|0){c[e>>2]=0;n=c[e>>2]|0;i=l;return n|0}c[k>>2]=c[(c[f>>2]|0)+32>>2];c[h
>>2]=0;while(1){if((c[h>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[j
x3e;>2]=(c[j>>2]|0)+3;c[(c[k>>2]|0)+(c[h>>2]<<2)>>2]=(d[(c[j>>2
]|0)+-3>>0]|0)<<16|(d[(c[j>>2]|0)+-3+1>>0]|0)<<8|(d[(c[j>>2]|0)+-3+2
>>0]|0)<<0;c[j>>2]=(c[j>>2]|0)+8;c[h>>2]=(c[h>>2]|0)+1}c[(c[k>
x3e;2]|0)+(c[h>>2]<<2)>>2]=0;c[e>>2]=c[k>>2];n=c[e>>2]|0;i=l;return
n|0}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,l=0;l=i;i=i+32|0;e=l+20|0;f=l+16|0;g=l+12|0;h=l+8|0;k=l+4|0
;j=l;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[k>>2]=c[(c[f>>2]|0)+28>>2];c[j
x3e;>2]=0;do if((c[g>>2]|0)>>>0>(c[(c[f>>2]|0)+28>>2]|0)>>>
;0){c[(c[f>>2]|0)+36>>2]=c[h>>2];k=hc(c[h>>2]|0,4,c[k>>2]|0,c[g>>2]|
0,c[(c[f>>2]|0)+32>>2]|0,j)|0;c[(c[f>>2]|0)+32>>2]=k;if(!(c[j>>2]|0)){c[(c[f
x3e;>2]|0)+28>>2]=c[g>>2];break}c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|
0}while(0);c[e>>2]=c[j>>2];k=c[e>>2]|0;i=l;return k|0}function ek(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;q=i;i=i+48|0;f=q+40|0;g=q+36|0;r=q+32|0;h=q+28|0;j=q+24|0;k=q+20|0;n=q+16|0;o=q+12|
0;p=q+8|0;l=q+4|0;m=q;c[g>>2]=a;c[r>>2]=b;c[h>>2]=e;c[j>>2]=c[g>>2];c[k>
x3e;2]=c[(c[j>>2]|0)+24>>2];c[n>>2]=(c[(c[g>>2]|0)+16>>2]|0)+10;if(dk(c[j>
;>2]|0,(c[k>>2]|0)+1|0,c[r>>2]|0)|0){c[f>>2]=0;r=c[f>>2]|0;i=q;return r|0}c[o>
x3e;2]=c[(c[j>>2]|0)+32>>2];while(1){if((c[k>>2]|0)>>>0<=0)break;c[n>>
;2]=(c[n>>2]|0)+3;c[p>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0
)+-3+1>>0]|0)<<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;c[n>>2]=(c[n>>
;2]|0)+4;c[l>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>0
]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)<
;<0;c[n>>2]=(c[n>>2]|0)+4;c[m>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(
d[(c[n>>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n
x3e;>2]|0)+-4+3>>0]|0)<<0;if(c[l>>2]|0?$j((c[(c[g>>2]|0)+16>>2]|0)+(c[l
x3e;>2]|0)|0,c[h>>2]|0)|0:0)e=9;else e=7;if(((e|0)==7?(e=0,c[m>>2]|0):0)?ak((c[(c[g>>2]|0)+16
>>2]|0)+(c[m>>2]|0)|0,c[h>>2]|0)|0:0)e=9;if((e|0)==9){c[c[o>>2]>>2]=c[p>
x3e;2];c[o>>2]=(c[o>>2]|0)+4}c[k>>2]=(c[k>>2]|0)+-1}c[c[o>>2]>>2]=0;
c[f>>2]=c[(c[j>>2]|0)+32>>2];r=c[f>>2]|0;i=q;return r|0}function fk(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;y=i;i=i+80|0;f=y+72|0;g=y+68|0;h=y+64|0
;z=y+60|0;w=y+56|0;x=y+52|0;p=y+48|0;l=y+44|0;s=y+40|0;j=y+36|0;u=y+32|0;t=y+28|0;o=y+24|0;k=y+20|0;v=y+16|0;n=y+12|0;m=y+8|0;r=
y+4|0;q=y;c[g>>2]=a;c[h>>2]=b;c[z>>2]=e;c[w>>2]=_j((c[(c[g>>2]|0)+16>>
;2]|0)+6|0,c[z>>2]|0)|0;if(!(c[w>>2]|0)){c[f>>2]=0;z=c[f>>2]|0;i=y;return z|0}c[w>
x3e;2]=(c[w>>2]|0)+4;c[l>>2]=(d[(c[w>>2]|0)+-4>>0]|0)<<24|(d[(c[w>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|0)<<8|(d[(c[w>>2]|0)+-4
+3>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+4;c[s>>2]=(d[(c[w>>2]|0)+-4>
x3e;0]|0)<<24|(d[(c[w>>2]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|
0)<<8|(d[(c[w>>2]|0)+-4+3>>0]|0)<<0;if((c[l>>2]|0)==0&(c[s>>2]|
0)==0){c[f>>2]=0;z=c[f>>2]|0;i=y;return z|0}if(!(c[l>>2]|0)){c[f>>2]=gk(c[g>>2
]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[s>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return
z|0}a=c[g>>2]|0;if(!(c[s>>2]|0)){c[f>>2]=hk(a,(c[(c[g>>2]|0)+16>>2]|0)+(c[l
x3e;>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return z|0}c[j>>2]=a;c[w>>2]=(c[(c[g>
;>2]|0)+16>>2]|0)+(c[s>>2]|0);c[n>>2]=(c[(c[g>>2]|0)+16>>2]|0)+(c[l>
x3e;2]|0);c[w>>2]=(c[w>>2]|0)+4;c[t>>2]=(d[(c[w>>2]|0)+-4>>0]|0)<<24
|(d[(c[w>>2]|0)+-4+1>>0]|0)<<16|(d[(c[w>>2]|0)+-4+2>>0]|0)<<8|(d[(c[
w>>2]|0)+-4+3>>0]|0)<<0;c[k>>2]=ik(c[n>>2]|0)|0;c[n>>2]=(c[n>
x3e;2]|0)+4;c[u>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n>>2]|0)+-4+1>>
;0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>2]|0)+-4+3>>0]|0)
x3c;<0;if(!(c[t>>2]|0)){c[f>>2]=hk(c[g>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[
l>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>2]|0;i=y;return z|0}if(!(c[k>>2]|0)){c[f>>2]=gk
(c[g>>2]|0,(c[(c[g>>2]|0)+16>>2]|0)+(c[s>>2]|0)|0,c[h>>2]|0)|0;z=c[f>>
;2]|0;i=y;return z|0}if(dk(c[j>>2]|0,(c[k>>2]|0)+(c[t>>2]|0)+1|0,c[h>>2]|0)|0){c[f>
x3e;2]=0;z=c[f>>2]|0;i=y;return z|0}c[x>>2]=c[(c[j>>2]|0)+32>>2];c[n>>2]=(c[n
x3e;>2]|0)+3;c[o>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>
;>0]|0)<<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+
1;c[k>>2]=d[z>>0];c[m>>2]=1;c[w>>2]=(c[w>>2]|0)+3;c[v>>2]=(d[(c[w>
;>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<<8|(d[(c[w>>2]|
0)+-3+2>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+2;c[r>>2]=1;c[p>>2]=0;while(1){
if((c[v>>2]|0)>>>0<=((c[o>>2]|0)+(c[k>>2]|0)|0)>>>0){if((c[v>
;>2]|0)>>>0<(c[o>>2]|0)>>>0){s=c[v>>2]|0;z=c[p>>2]|0;c[p
x3e;>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=s}c[r>>2]=(c[r>>2]|0)+1;if((c[r>
;>2]|0)>>>0>(c[t>>2]|0)>>>0)break;c[w>>2]=(c[w>>2]|0)+3;c[
v>>2]=(d[(c[w>>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<
x3c;8|(d[(c[w>>2]|0)+-3+2>>0]|0)<<0;c[w>>2]=(c[w>>2]|0)+2;continue}c[q>
x3e;2]=0;while(1){if((c[q>>2]|0)>>>0>(c[k>>2]|0)>>>0)break;s=(c[o>
x3e;2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>
;2]=s;c[q>>2]=(c[q>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1;if((c[m>>2]|0)>>
x3e;0>(c[u>>2]|0)>>>0)break;c[n>>2]=(c[n>>2]|0)+3;c[o>>2]=(d[(c[n>
;>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>>0]|0)<<8|(d[(c[n>>2]|
0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+1;c[k>>2]=d[z>>0]}a:do if((c
[r>>2]|0)>>>0>(c[t>>2]|0)>>>0){if((c[m>>2]|0)>>>
0<=(c[u>>2]|0)>>>0){c[q>>2]=0;while(1){if((c[q>>2]|0)>>>0>(
c[k>>2]|0)>>>0)break;w=(c[o>>2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>
;2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=w;c[q>>2]=(c[q>>2]|0)+1}while(1){if((c[m>
;>2]|0)>>>0>=(c[u>>2]|0)>>>0)break a;c[n>>2]=(c[n>>2]|0)+3
;c[o>>2]=(d[(c[n>>2]|0)+-3>>0]|0)<<16|(d[(c[n>>2]|0)+-3+1>>0]|0)<
;<8|(d[(c[n>>2]|0)+-3+2>>0]|0)<<0;z=c[n>>2]|0;c[n>>2]=z+1;c[k>>
2]=d[z>>0];c[q>>2]=0;while(1){if((c[q>>2]|0)>>>0>(c[k>>2]|0)>
x3e;>0)break;w=(c[o>>2]|0)+(c[q>>2]|0)|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>
2]|0)+(z<<2)>>2]=w;c[q>>2]=(c[q>>2]|0)+1}c[m>>2]=(c[m>>2]|0)+1}}}else
{v=c[v>>2]|0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>2]|0)+(z<<2)>>2]=v;while
(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a;c[w>>2]=(c[w>
;>2]|0)+3;v=(d[(c[w>>2]|0)+-3>>0]|0)<<16|(d[(c[w>>2]|0)+-3+1>>0]|0)<
x3c;8|(d[(c[w>>2]|0)+-3+2>>0]|0)<<0;z=c[p>>2]|0;c[p>>2]=z+1;c[(c[x>>
2]|0)+(z<<2)>>2]=v;c[w>>2]=(c[w>>2]|0)+2;c[r>>2]=(c[r>>2]|0)+1}}while
(0);c[(c[x>>2]|0)+(c[p>>2]<<2)>>2]=0;c[f>>2]=c[x>>2];z=c[f>>
;2]|0;i=y;return z|0}function gk(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;m=i;i=i+32|0;f=m+28|0;o=m+24|0
;g=m+20|0;n=m+16|0;h=m+12|0;k=m+8|0;j=m+4|0;l=m;c[o>>2]=a;c[g>>2]=b;c[n>>2]=e;c[h>>2]=c[
o>>2];c[g>>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-4>>0]|0)<
x3c;24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>>0]|0)<<8|(
d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if(dk(c[h>>2]|0,(c[k>>2]|0)+1|0,c[n>>2]|
0)|0){c[f>>2]=0;o=c[f>>2]|0;i=m;return o|0}c[l>>2]=c[(c[h>>2]|0)+32>>2];c[j>
;>2]=0;while(1){if((c[j>>2]|0)>>>0>=(c[k>>2]|0)>>>0)break;c[g>
x3e;2]=(c[g>>2]|0)+3;c[(c[l>>2]|0)+(c[j>>2]<<2)>>2]=(d[(c[g>>2]|0)+-
3>>0]|0)<<16|(d[(c[g>>2]|0)+-3+1>>0]|0)<<8|(d[(c[g>>2]|0)+-3+2>
x3e;0]|0)<<0;c[g>>2]=(c[g>>2]|0)+2;c[j>>2]=(c[j>>2]|0)+1}c[(c[l>>2]|
0)+(c[j>>2]<<2)>>2]=0;c[f>>2]=c[l>>2];o=c[f>>2]|0;i=m;return o|0}function
hk(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;n=i;i=i+48|0;f=n+32|0;p=n+28|0;g=n+24|0;o=n+20|0;h=n+16
|0;k=n+12|0;j=n+8|0;l=n+4|0;m=n;c[p>>2]=a;c[g>>2]=b;c[o>>2]=e;c[h>>2]=c[p>>2];
c[j>>2]=ik(c[g>>2]|0)|0;c[g>>2]=(c[g>>2]|0)+4;c[k>>2]=(d[(c[g>>2]|0)+-
4>>0]|0)<<24|(d[(c[g>>2]|0)+-4+1>>0]|0)<<16|(d[(c[g>>2]|0)+-4+2>
;>0]|0)<<8|(d[(c[g>>2]|0)+-4+3>>0]|0)<<0;if(dk(c[h>>2]|0,(c[j>>
2]|0)+1|0,c[o>>2]|0)|0){c[f>>2]=0;p=c[f>>2]|0;i=n;return p|0}c[l>>2]=c[(c[h>>2
]|0)+32>>2];while(1){if((c[k>>2]|0)>>>0<=0)break;c[g>>2]=(c[g>>2]|0)+
3;c[m>>2]=(d[(c[g>>2]|0)+-3>>0]|0)<<16|(d[(c[g>>2]|0)+-3+1>>0]|0)<
;<8|(d[(c[g>>2]|0)+-3+2>>0]|0)<<0;p=c[g>>2]|0;c[g>>2]=p+1;c[j>>
2]=(d[p>>0]|0)+1;do{c[c[l>>2]>>2]=c[m>>2];c[m>>2]=(c[m>>2]|0)+1;c[l
x3e;>2]=(c[l>>2]|0)+4;p=(c[j>>2]|0)+-1|0;c[j>>2]=p}while((p|0)!=0);c[k>>2]=(c[k>
;>2]|0)+-1}c[c[l>>2]>>2]=0;c[f>>2]=c[(c[h>>2]|0)+32>>2];p=c[f>>
2]|0;i=n;return p|0}function ik(a){a=a|0;var b=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+8|0;e=g+4|0;f=g;c[b>>2]=a;c[b>>
;2]=(c[b>>2]|0)+4;c[e>>2]=(d[(c[b>>2]|0)+-4>>0]|0)<<24|(d[(c[b>>2]|0
)+-4+1>>0]|0)<<16|(d[(c[b>>2]|0)+-4+2>>0]|0)<<8|(d[(c[b>>2]|0)+-4+3
x3e;>0]|0)<<0;c[f>>2]=0;c[b>>2]=(c[b>>2]|0)+3;while(1){if((c[e>>2]|0)>
;>>0<=0)break;c[f>>2]=(c[f>>2]|0)+(1+(d[c[b>>2]>>0]|0));c[b>>2]=(
c[b>>2]|0)+4;c[e>>2]=(c[e>>2]|0)+-1}i=g;return c[f>>2]|0}function jk(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;B=i;i=i+96|0;e=B+84|0;f=B+80|0;y=B+
76|0;r=B+72|0;x=B+68|0;s=B+64|0;q=B+60|0;A=B+56|0;j=B+52|0;u=B+48|0;k=B+44|0;w=B+40|0;m=B+36|0;o=B+32|0;g=B+28|0;h=B+24|0;t=B+20
|0;v=B+16|0;n=B+12|0;p=B+8|0;z=B+4|0;l=B;c[e>>2]=a;c[f>>2]=b;c[y>>2]=(c[e>>2]|0)+2;c[y
x3e;>2]=(c[y>>2]|0)+4;c[r>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[y>
x3e;2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>>2]|
0)+-4+3>>0]|0)<<0;c[y>>2]=(c[y>>2]|0)+4;c[x>>2]=(d[(c[y>>2]|0)+-4>
;>0]|0)<<24|(d[(c[y>>2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>
;0]|0)<<8|(d[(c[y>>2]|0)+-4+3>>0]|0)<<0;if(!((c[r>>2]|0)>>>0<
;=((c[(c[f>>2]|0)+4>>2]|0)-(c[e>>2]|0)|0)>>>0?(c[r>>2]|0)>>>
;0>=(10+((c[x>>2]|0)*11|0)|0)>>>0:0))sc(c[f>>2]|0,8);c[q>>2]=1;c[s>>
2]=0;while(1){if((c[s>>2]|0)>>>0>=(c[x>>2]|0)>>>0)break;c[y>>2]=(
c[y>>2]|0)+3;c[A>>2]=(d[(c[y>>2]|0)+-3>>0]|0)<<16|(d[(c[y>>2]|0)+-3+
1>>0]|0)<<8|(d[(c[y>>2]|0)+-3+2>>0]|0)<<0;c[y>>2]=(c[y>>2]|
0)+4;c[j>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[y>>2]|0)+-4+1>>0]|0)
x3c;<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>>2]|0)+-4+3>>0]|0)<<
;0;c[y>>2]=(c[y>>2]|0)+4;c[u>>2]=(d[(c[y>>2]|0)+-4>>0]|0)<<24|(d[(c[
y>>2]|0)+-4+1>>0]|0)<<16|(d[(c[y>>2]|0)+-4+2>>0]|0)<<8|(d[(c[y>
x3e;2]|0)+-4+3>>0]|0)<<0;if(!((c[j>>2]|0)>>>0<(c[r>>2]|0)>>
;>0?(c[u>>2]|0)>>>0<(c[r>>2]|0)>>>0:0))sc(c[f>>2]|0,8);if((
c[A>>2]|0)>>>0<(c[q>>2]|0)>>>0)sc(c[f>>2]|0,8);c[q>>2
]=(c[A>>2]|0)+1;a:do if(c[j>>2]|0){c[k>>2]=(c[e>>2]|0)+(c[j>>2]|0);c[k>
x3e;2]=(c[k>>2]|0)+4;c[w>>2]=(d[(c[k>>2]|0)+-4>>0]|0)<<24|(d[(c[k>>2
]|0)+-4+1>>0]|0)<<16|(d[(c[k>>2]|0)+-4+2>>0]|0)<<8|(d[(c[k>>2]|0)+-4
+3>>0]|0)<<0;c[o>>2]=0;if(((c[k>>2]|0)+(c[w>>2]<<2)|0)>>
x3e;0>(c[(c[f>>2]|0)+4>>2]|0)>>>0)sc(c[f>>2]|0,8);c[m>>2]=0;while(1){
if((c[m>>2]|0)>>>0>=(c[w>>2]|0)>>>0)break a;c[k>>2]=(c[k>
x3e;2]|0)+3;c[g>>2]=(d[(c[k>>2]|0)+-3>>0]|0)<<16|(d[(c[k>>2]|0)+-3+1>>
;0]|0)<<8|(d[(c[k>>2]|0)+-3+2>>0]|0)<<0;b=c[k>>2]|0;c[k>>2]=b+1;c[h
x3e;>2]=d[b>>0];if(((c[g>>2]|0)+(c[h>>2]|0)|0)>>>0>=1114112)sc(c[f>
x3e;2]|0,8);if((c[g>>2]|0)>>>0<(c[o>>2]|0)>>>0)sc(c[f>>2]|0,8);
c[o>>2]=(c[g>>2]|0)+(c[h>>2]|0)+1;c[m>>2]=(c[m>>2]|0)+1}}while(0);b:do if(c[u
x3e;>2]|0){c[t>>2]=(c[e>>2]|0)+(c[u>>2]|0);c[t>>2]=(c[t>>2]|0)+4;c[v>
;>2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16
|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-4+3>>0]|0)<<0;c[p>
;>2]=0;if(c[v>>2]<<2>>>0>((c[(c[f>>2]|0)+4>>2]|0)-(c[t>>
;2]|0)|0)>>>0)sc(c[f>>2]|0,8);c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0
x3e;=(c[v>>2]|0)>>>0)break b;c[t>>2]=(c[t>>2]|0)+3;c[z>>2]=(d[(c[t>
x3e;2]|0)+-3>>0]|0)<<16|(d[(c[t>>2]|0)+-3+1>>0]|0)<<8|(d[(c[t>>2]|0)+-
3+2>>0]|0)<<0;c[t>>2]=(c[t>>2]|0)+2;c[l>>2]=(((d[(c[t>>2]|0)+-2>
;>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c
[z>>2]|0)>>>0>=1114112)sc(c[f>>2]|0,8);if((c[z>>2]|0)>>>0<(
c[p>>2]|0)>>>0)sc(c[f>>2]|0,8);c[p>>2]=(c[z>>2]|0)+1;if((c[(c[f>>
;2]|0)+8>>2]|0)>>>0>=1?(c[l>>2]|0)>>>0>=(c[(c[f>>2]|0)+172
>>2]|0)>>>0:0)sc(c[f>>2]|0,16);c[n>>2]=(c[n>>2]|0)+1}}while(0);c[s>
x3e;2]=(c[s>>2]|0)+1}i=B;return 0}function kk(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[f>>2]=c[f>>2];c[(c[e>>2]|0)+4>>2]=14;c[c[e>>2]>
;>2]=-1;i=d;return 0}function lk(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;m=k+20|0;l=k
+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[m>>2]=a;c[l>>2]=b;c[f>>2]=d;c[g>>2]=e;c[j>>
;2]=mk(c[m>>2]|0,c[l>>2]|0)|0;if(!(c[j>>2]|0)){c[h>>2]=142;m=c[h>>2]|0;i=k;return
m|0}if(c[g>>2]|0)c[c[g>>2]>>2]=c[(c[j>>2]|0)+12>>2];c[h>>2]=Kc(c[f
x3e;>2]|0,c[(c[j>>2]|0)+8>>2]|0)|0;m=c[h>>2]|0;i=k;return m|0}function mk(a,b){a=a|0;b=b|0;var
d=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;g=j+16|0;k=j+12|0;d=j+8|0;h=j+4|0;f=j;c[k>>2]=a;c[d>>2]=b;c[h>>
;2]=c[(c[k>>2]|0)+156>>2];c[f>>2]=(c[h>>2]|0)+((e[(c[k>>2]|0)+152>>1
]|0)<<4);while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>>0){d=7;break
}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)?c[(c[h>>2]|0)+12>>2]|0:0){d=5;break}c[h>
;>2]=(c[h>>2]|0)+16}if((d|0)==5){c[g>>2]=c[h>>2];k=c[g>>2]|0;i=j;return k|0}else if
((d|0)==7){c[g>>2]=0;k=c[g>>2]|0;i=j;return k|0}return 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,r=0,s=0;q=i;i=i+48|0;g=q+40|0;h=q+36|0;j=q+32|0;k=q+28|0;s=q+24|0;r=q+20|0;m=q+16|
0;n=q+12|0;p=q+8|0;o=q+4|0;l=q;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[s>>2]=e;c[r>>2]=
f;c[n>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+4>>2];c[s>>2]=c[s>>2];c[r>
x3e;2]=c[r>>2];c[p>>2]=c[(c[j>>2]|0)+532>>2];do if(!(c[p>>2]|0)){c[p>>
;2]=Ud(c[n>>2]|0,11340)|0;if(c[p>>2]|0){c[(c[j>>2]|0)+532>>2]=c[p>>2];c[(c[j
x3e;>2]|0)+508>>2]=c[c[p>>2]>>2];break}c[g>>2]=3;s=c[g>>2]|0;i=q;return s
|0}while(0);c[o>>2]=c[(c[j>>2]|0)+96>>2];c[l>>2]=Vd(c[o>>2]|0,71003)|0;c[(c[j
x3e;>2]|0)+536>>2]=c[l>>2];c[m>>2]=ok(c[h>>2]|0,c[j>>2]|0)|0;if(c[m>
x3e;2]|0){c[g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}if((c[k>>2]|0)<0)c[k>>
;2]=0;if((c[k>>2]|0)>=(c[(c[j>>2]|0)+132+8>>2]|0)){c[g>>2]=6;s=c[g>>2]|0;
i=q;return s|0}s=Kc(c[h>>2]|0,c[(c[(c[j>>2]|0)+132+12>>2]|0)+(c[k>>2]<<2)>
;>2]|0)|0;c[m>>2]=s;if(s|0){c[g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}c[m>>
;2]=Ya[c[(c[p>>2]|0)+132>>2]&127](c[j>>2]|0,c[h>>2]|0)|0;if(c[m>>2]|0){c[
g>>2]=c[m>>2];s=c[g>>2]|0;i=q;return s|0}else{c[c[j>>2]>>2]=c[(c[j>>
2]|0)+132+8>>2];c[(c[j>>2]|0)+4>>2]=c[k>>2];c[g>>2]=c[m>>2];s=c[g>
;>2]|0;i=q;return s|0}return 0}function ok(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;m=i;i=i+32|0;g=m+28|0;h
=m+24|0;j=m+20|0;d=m+16|0;k=m+12|0;f=m+8|0;e=m+4|0;l=m;c[h>>2]=a;c[j>>2]=b;c[d>>2]=c[(c[h>>
;2]|0)+28>>2];c[(c[j>>2]|0)+132>>2]=0;c[(c[j>>2]|0)+132+4>>2]=0;c[(c[j>
x3e;2]|0)+132+8>>2]=0;c[e>>2]=Mc(c[h>>2]|0)|0;c[f>>2]=Oc(c[h>>2]|0,k)|0;if(c[k
>>2]|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}if((c[f>>2]|0)!=65536&(
c[f>>2]|0)!=1953784678&(c[f>>2]|0)!=1330926671&(c[f>>2]|0)!=1953658213&(c[f>
x3e;2]|0)!=1954115633&(c[f>>2]|0)!=131072){c[g>>2]=2;l=c[g>>2]|0;i=m;return l|0}c[(c[j>
x3e;2]|0)+132>>2]=1953784678;do if((c[f>>2]|0)==1953784678){f=le(c[h>>2]|0,7544,(c[j>>2]|
0)+132|0)|0;c[k>>2]=f;if(f|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}f=hc(c[d>
x3e;2]|0,4,0,c[(c[j>>2]|0)+132+8>>2]|0,0,k)|0;c[(c[j>>2]|0)+132+12>>2]=f;if(c[k>>
;2]|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}f=ee(c[h>>2]|0,c[(c[j>>2]|0)+
132+8>>2]<<2)|0;c[k>>2]=f;if(f|0){c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return
l|0}c[l>>2]=0;while(1){b=c[h>>2]|0;if((c[l>>2]|0)>=(c[(c[j>>2]|0)+132+8>>
;2]|0))break;f=je(b)|0;c[(c[(c[j>>2]|0)+132+12>>2]|0)+(c[l>>2]<<2)>>2]=f;c[l
x3e;>2]=(c[l>>2]|0)+1}ge(b)}else{c[(c[j>>2]|0)+132+4>>2]=65536;c[(c[j>>2]|0)+132+8
x3e;>2]=1;l=bc(c[d>>2]|0,4,k)|0;c[(c[j>>2]|0)+132+12>>2]=l;if(!(c[k>>2]|0)){c[c[(c[
j>>2]|0)+132+12>>2]>>2]=c[e>>2];break}c[g>>2]=c[k>>2];l=c[g>>
;2]|0;i=m;return l|0}while(0);c[g>>2]=c[k>>2];l=c[g>>2]|0;i=m;return l|0}function pk(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;I=i;i=i+112|0;o=I+92|0;F=I+88|0;J=I+84|0;l=I+80|0;m=I+76|0;G=I+72|0;x=I+68|0;r=I+103|0;u=I+102|0;s=I+101|0;t=I+100|0;D=I+64|
0;n=I+60|0;H=I+56|0;q=I+52|0;v=I+48|0;p=I+44|0;B=I+40|0;E=I+36|0;w=I+32|0;A=I+98|0;y=I+96|0;C=I+4|0;z=I;c[o>>2]=f;c[F
x3e;>2]=g;c[J>>2]=h;c[l>>2]=j;c[m>>2]=k;a[s>>0]=0;a[t>>0]=0;c[D>>
;2]=c[(c[F>>2]|0)+532>>2];c[J>>2]=c[J>>2];c[n>>2]=0;while(1){if((c[n>>
;2]|0)>=(c[l>>2]|0))break;if((c[(c[m>>2]|0)+(c[n>>2]<<3)>>2]|0)!=1768386662
){if((c[(c[m>>2]|0)+(c[n>>2]<<3)>>2]|0)==1768386675)a[t>>0]=1}else a[s>
x3e;0]=1;c[n>>2]=(c[n>>2]|0)+1}if(!(c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]|0)?!(mk
(c[F>>2]|0,1735162214)|0):0)l=(mk(c[F>>2]|0,1128678944)|0)!=0;else l=1;a[r>>0]=l&1;a[u>
x3e;0]=0;if((a[r>>0]|0)==0?c[(c[D>>2]|0)+84>>2]|0:0){c[G>>2]=Ya[c[(c[D>>2]|0)+
84>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;a[u>>0]=((c[G>>2]|0)!=0^1)&1}if((
a[u>>0]|0)==0?(c[G>>2]=Ya[c[(c[D>>2]|0)+32>>2]&127](c[F>>2]|0,c[o>
x3e;2]|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if(!(e[(c[F>>2]|0)+160+18>>1]|0)){c
[G>>2]=8;J=c[G>>2]|0;i=I;return J|0}c[G>>2]=Ya[c[(c[D>>2]|0)+44>>2]&127](
c[F>>2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+40>>2]&127](c[F>>
;2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+56>>2]&127](c[F>>2]|0,c[o>
;>2]|0)|0;c[G>>2]=Ya[c[(c[D>>2]|0)+52>>2]&127](c[F>>2]|0,c[o>>2]|0)|
0;c[x>>2]=c[G>>2];if(!(a[u>>0]|0)){c[G>>2]=Oa[c[(c[D>>2]|0)+36>>2]
x26;63](c[F>>2]|0,c[o>>2]|0,0)|0;do if(c[G>>2]|0){if((c[G>>2]|0)==142){if((c[(c[F>
x3e;2]|0)+148>>2]|0)==1953658213){a[r>>0]=0;c[G>>2]=0;break}c[G>>2]=143;if(c[(c[(c[F>
;>2]|0)+128>>2]|0)+52>>2]|0?c[(c[c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]>
x3e;2]|0)+8>>2]|0:0){b[(c[F>>2]|0)+216+34>>1]=0;c[G>>2]=0}}}else{c[G>>2]=Oa[c[(
c[D>>2]|0)+136>>2]&63](c[F>>2]|0,c[o>>2]|0,0)|0;if(((c[G>>2]|0)==142?(c[G
>>2]=147,c[(c[(c[F>>2]|0)+128>>2]|0)+52>>2]|0):0)?c[(c[c[(c[(c[F>>2]|0)+128>
;>2]|0)+52>>2]>>2]|0)+8>>2]|0:0){b[(c[F>>2]|0)+216+34>>1]=0;c[G>>
;2]=0}}while(0);if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}c[G>>2]=Oa[c[(c[D>>2]|0)+36>
;>2]&63](c[F>>2]|0,c[o>>2]|0,1)|0;if((c[G>>2]|0)==0?(c[G>>2]=Oa[c[(c[D>
x3e;2]|0)+136>>2]&63](c[F>>2]|0,c[o>>2]|0,1)|0,(c[G>>2]|0)==0):0)a[(c[F>>
2]|0)+296>>0]=1;if((c[G>>2]|0)!=0&(c[G>>2]|0)!=142){J=c[G>>2]|0;i=I;return J|0}c[G
x3e;>2]=Ya[c[(c[D>>2]|0)+48>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;if(c[G>>
2]|0)b[(c[F>>2]|0)+368>>1]=-1}do if(c[(c[D>>2]|0)+140>>2]|0?(c[G>>2]=Ya[c[(c[D
>>2]|0)+140>>2]&127](c[F>>2]|0,c[o>>2]|0)|0,c[G>>2]|0):0)if((c[G>>
;2]|0)==142){c[G>>2]=0;break}else{J=c[G>>2]|0;i=I;return J|0}while(0);c[G>>2]=Ya[c[(c[D>>
;2]|0)+80>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;do if(c[G>>2]|0)if((c[G>>2]|0)!=
142){J=c[G>>2]|0;i=I;return J|0}else{c[(c[F>>2]|0)+556>>2]=0;break}while(0);c[G>>2]=Ya[c
[(c[D>>2]|0)+76>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;c[G>>2]=Ya[c[(c[D>
x3e;2]|0)+72>>2]&127](c[F>>2]|0,c[o>>2]|0)|0;c[(c[F>>2]|0)+16>>2]=e[(c[F
x3e;>2]|0)+260+4>>1];c[(c[F>>2]|0)+20>>2]=0;c[(c[F>>2]|0)+24>>2]=0;if((e[(
c[F>>2]|0)+368>>1]|0)!=65535?e[(c[F>>2]|0)+368+64>>1]&256|0:0){if((a[s>>0
]|0)==0?(c[G>>2]=qk(c[F>>2]|0,16,(c[F>>2]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0
;i=I;return J|0}if((c[(c[F>>2]|0)+20>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,1,(c[F>>2
]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if((a[t>>0]|0)==0?(c[G>>2]=qk(c[F
x3e;>2]|0,17,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}if((c[(c[F>>
;2]|0)+24>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,2,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){
J=c[G>>2]|0;i=I;return J|0}}else{c[G>>2]=qk(c[F>>2]|0,21,(c[F>>2]|0)+20|0)|0;if(c[G>
;>2]|0){J=c[G>>2]|0;i=I;return J|0}if(!(a[s>>0]|0?1:(c[(c[F>>2]|0)+20>>2]|0)!=0)?(c
[G>>2]=qk(c[F>>2]|0,16,(c[F>>2]|0)+20|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return
J|0}if((c[(c[F>>2]|0)+20>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,1,(c[F>>2]|0)+20|0)|
0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}c[G>>2]=qk(c[F>>2]|0,22,(c[F>>2]|0)+
24|0)|0;if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}if(!(a[t>>0]|0?1:(c[(c[F>>2]|0)+24>
;>2]|0)!=0)?(c[G>>2]=qk(c[F>>2]|0,17,(c[F>>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>
x3e;2]|0;i=I;return J|0}if((c[(c[F>>2]|0)+24>>2]|0)==0?(c[G>>2]=qk(c[F>>2]|0,2,(c[F>
;>2]|0)+24|0)|0,c[G>>2]|0):0){J=c[G>>2]|0;i=I;return J|0}}c[H>>2]=c[F>>2];c[q>
x3e;2]=c[(c[H>>2]|0)+8>>2];if((d[r>>0]|0)==1)c[q>>2]=c[q>>2]|1;c[q>>
2]=c[q>>2]|24;if((c[x>>2]|0)==0?(c[(c[F>>2]|0)+468>>2]|0)!=196608:0)c[q>>2]=c[
q>>2]|512;if(c[(c[F>>2]|0)+468+12>>2]|0)c[q>>2]=c[q>>2]|4;if(a[(c[F>>
;2]|0)+296>>0]|0)c[q>>2]=c[q>>2]|32;if(c[(c[F>>2]|0)+784>>2]|0)c[q>>
2]=c[q>>2]|64;if((mk(c[F>>2]|0,1735162214)|0?mk(c[F>>2]|0,1719034226)|0:0)?mk(c[F>>2]|0,
1735811442)|0:0)c[q>>2]=c[q>>2]|256;c[(c[H>>2]|0)+8>>2]=c[q>>2];c[q>>
;2]=0;if((d[r>>0]|0)==1?(e[(c[F>>2]|0)+368>>1]|0)!=65535:0){if(!(!(e[(c[F>>2]|0)+368+64
x3e;>1]&512|0)?!(e[(c[F>>2]|0)+368+64>>1]&1|0):0))c[q>>2]=c[q>>2]|1;if(e[(
c[F>>2]|0)+368+64>>1]&32|0)c[q>>2]=c[q>>2]|2}else{if(e[(c[F>>2]|0)+160+44
>>1]&1|0)c[q>>2]=c[q>>2]|2;if(e[(c[F>>2]|0)+160+44>>1]&2|0)c[q>
x3e;2]=c[q>>2]|1}c[(c[H>>2]|0)+12>>2]=c[q>>2];tk(c[F>>2]|0)|0;c[v>>2
]=0;while(1){if((c[v>>2]|0)>=(c[(c[H>>2]|0)+36>>2]|0))break;c[p>>2]=c[(c[(c[H>
x3e;2]|0)+40>>2]|0)+(c[v>>2]<<2)>>2];J=uk(e[(c[p>>2]|0)+8>>1]|0,e[(c
[p>>2]|0)+10>>1]|0)|0;c[(c[p>>2]|0)+4>>2]=J;c[v>>2]=(c[v>>2]|0)+1}c[
E>>2]=c[(c[F>>2]|0)+612>>2];do if((c[E>>2]|0)>>>0>0){c[w>>
2]=c[(c[(c[F>>2]|0)+104>>2]|0)+28>>2];b[A>>1]=b[(c[F>>2]|0)+160+18>>
1]|0;b[y>>1]=b[(c[F>>2]|0)+368+2>>1]|0;if(!((e[A>>1]|0)!=0?(e[(c[F>>2]|0)+368
x3e;>1]|0)!=65535:0)){b[y>>1]=0;b[A>>1]=1}J=hc(c[w>>2]|0,16,0,c[E>>2]|0,0,G)|0;c[(c
[H>>2]|0)+32>>2]=J;if(c[G>>2]|0){J=c[G>>2]|0;i=I;return J|0}c[B>>2]=0;while(1){
m=c[H>>2]|0;if((c[B>>2]|0)>>>0>=(c[E>>2]|0)>>>0){l=103;break}c[
z>>2]=(c[m+32>>2]|0)+(c[B>>2]<<4);c[G>>2]=Oa[c[(c[D>>2]|0)+152>
x3e;2]&63](c[F>>2]|0,c[B>>2]|0,C)|0;if(c[G>>2]|0){l=112;break}b[c[z>>2]>>
1]=c[C+20>>2]>>6;J=_(b[y>>1]|0,e[C>>1]|0)|0;b[(c[z>>2]|0)+2>>1]=(J+((
e[A>>1]|0)/2|0)|0)/(e[A>>1]|0)|0;c[(c[z>>2]|0)+8>>2]=e[C>>1]<<6;c[(c
[z>>2]|0)+12>>2]=e[C+2>>1]<<6;c[(c[z>>2]|0)+4>>2]=e[C+2>>1
]<<6;c[B>>2]=(c[B>>2]|0)+1}if((l|0)==103){J=m+8|0;c[J>>2]=c[J>>2]|2;c[(c[H>
;>2]|0)+28>>2]=c[E>>2];break}else if((l|0)==112){J=c[G>>2]|0;i=I;return J|0}}while(0);if((c[(
c[H>>2]|0)+8>>2]&2|0)==0?(c[(c[H>>2]|0)+8>>2]&1|0)==0:0){J=(c[H>>2]|
0)+8|0;c[J>>2]=c[J>>2]|1}if(!(c[(c[H>>2]|0)+8>>2]&1)){J=c[G>>2]|0;i=I;return
J|0}c[(c[H>>2]|0)+52>>2]=b[(c[F>>2]|0)+160+36>>1];c[(c[H>>2]|0)+52+4>>
;2]=b[(c[F>>2]|0)+160+38>>1];c[(c[H>>2]|0)+52+8>>2]=b[(c[F>>2]|0)+160+40>
x3e;1];c[(c[H>>2]|0)+52+12>>2]=b[(c[F>>2]|0)+160+42>>1];b[(c[H>>2]|0)+68>
x3e;1]=b[(c[F>>2]|0)+160+18>>1]|0;b[(c[H>>2]|0)+70>>1]=b[(c[F>>2]|0)+216+4>
;>1]|0;b[(c[H>>2]|0)+72>>1]=b[(c[F>>2]|0)+216+6>>1]|0;b[(c[H>>2]|0)+74>
;>1]=(b[(c[H>>2]|0)+70>>1]|0)-(b[(c[H>>2]|0)+72>>1]|0)+(b[(c[F>>2]|0)+216
+8>>1]|0);b[(c[H>>2]|0)+76>>1]=b[(c[F>>2]|0)+216+10>>1]|0;if(d[(c[F>>
;2]|0)+296>>0]|0)l=e[(c[F>>2]|0)+300+10>>1]|0;else l=b[(c[H>>2]|0)+74>>1]|0;b[(
c[H>>2]|0)+78>>1]=l;b[(c[H>>2]|0)+80>>1]=(b[(c[F>>2]|0)+468+8>>1]|0)-((
b[(c[F>>2]|0)+468+10>>1]|0)/2|0);b[(c[H>>2]|0)+82>>1]=b[(c[F>>2]|0)+468+10>
;>1]|0;J=c[G>>2]|0;i=I;return J|0}function qk(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,r=
0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=i;i=i+64|0;h=z+48|0;j=z+54|0;k=z+44|0;t=z+40|0;m=z+36|0;w=z+32|0;u=z+52|0;v=z+28|0;n=z+24|0;
p=z+20|0;o=z+16|0;r=z+12|0;q=z+8|0;s=z+56|0;l=z+4|0;x=z;c[h>>2]=d;b[j>>1]=f;c[k>>2]=g;c[t>>
;2]=c[(c[h>>2]|0)+100>>2];c[m>>2]=0;c[w>>2]=0;c[n>>2]=-1;c[p>>2]=-1;
c[o>>2]=-1;c[r>>2]=-1;c[q>>2]=-1;a[s>>0]=0;c[v>>2]=c[(c[h>>2]|0)+348
+12>>2];b[u>>1]=0;while(1){if((e[u>>1]|0)>=(e[(c[h>>2]|0)+344>>1]|0))break
;a:do if((e[(c[v>>2]|0)+6>>1]|0)==(e[j>>1]|0)?(e[(c[v>>2]|0)+8>>1]|0)>0:0
)switch(e[c[v>>2]>>1]|0){case 2:case 0:{c[q>>2]=e[u>>1];break a}case 1:{if(!(e[(c[v>
;>2]|0)+4>>1]|0)){c[o>>2]=e[u>>1];break a}if(e[(c[v>>2]|0)+2>>1]|0)break
a;c[p>>2]=e[u>>1];break a}case 3:{if((c[r>>2]|0)!=-1?(e[(c[v>>2]|0)+4>>1]&
;1023|0)!=9:0)break a;switch(e[(c[v>>2]|0)+2>>1]|0){case 10:case 1:case 0:break;default:break a}a[s>>
;0]=(e[(c[v>>2]|0)+4>>1]&1023|0)==9;c[r>>2]=e[u>>1];break a}default:break a}while(0
);b[u>>1]=(b[u>>1]|0)+1<<16>>16;c[v>>2]=(c[v>>2]|0)+20}c[n>>
;2]=c[p>>2];if((c[o>>2]|0)>=0)c[n>>2]=c[o>>2];c[l>>2]=0;b:do if((c[r>
;>2]|0)>=0?(c[n>>2]|0)<0|(a[s>>0]|0)!=0:0){c[v>>2]=(c[(c[h>>2]|0)+348+12
x3e;>2]|0)+((c[r>>2]|0)*20|0);switch(e[(c[v>>2]|0)+2>>1]|0){case 0:case 1:{c[l>>2]=
106;break b}case 10:{c[l>>2]=106;break b}default:break b}}else y=23;while(0);do if((y|0)==23){if((c[n>>2]|0)
x3e;=0){c[v>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[n>>2]|0)*20|0);c[l>>2]=107;break
}if((c[q>>2]|0)>=0){c[v>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[q>>2]|0)*20|
0);c[l>>2]=106}}while(0);if(!((c[v>>2]|0)!=0&(c[l>>2]|0)!=0)){x=c[w>>2]|0;y=c[k>
;>2]|0;c[y>>2]=x;y=c[m>>2]|0;i=z;return y|0}do if(!(c[(c[v>>2]|0)+16>>2]|0)){c[x>
;>2]=c[(c[h>>2]|0)+348+16>>2];y=hc(c[t>>2]|0,1,0,e[(c[v>>2]|0)+8>>1]|0,0,
m)|0;c[(c[v>>2]|0)+16>>2]=y;if(((c[m>>2]|0)==0?(y=Kc(c[x>>2]|0,c[(c[v>>2]|0)+12
>>2]|0)|0,c[m>>2]=y,(y|0)==0):0)?(y=Rc(c[x>>2]|0,c[(c[v>>2]|0)+16>>2]|0,e[(c[v
>>2]|0)+8>>1]|0)|0,c[m>>2]=y,(y|0)==0):0)break;Fb(c[t>>2]|0,c[(c[v>>2]|0)+16
x3e;>2]|0);c[(c[v>>2]|0)+16>>2]=0;b[(c[v>>2]|0)+8>>1]=0;c[w>>2]=0;x=c[w
x3e;>2]|0;y=c[k>>2]|0;c[y>>2]=x;y=c[m>>2]|0;i=z;return y|0}while(0);c[w>>2]=Ya[c[l
x3e;>2]&127](c[v>>2]|0,c[t>>2]|0)|0;x=c[w>>2]|0;y=c[k>>2]|0;c[y>>2]=
x;y=c[m>>2]|0;i=z;return y|0}function rk(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,q=0;n=i;i=i+48|0;g=n
+32|0;q=n+28|0;p=n+24|0;m=n+20|0;j=n+16|0;h=n+12|0;k=n+8|0;l=n+4|0;o=n;c[q>>2]=b;c[p>>2]=f;c[m>>2]=
0;c[l>>2]=c[(c[q>>2]|0)+16>>2];c[j>>2]=((e[(c[q>>2]|0)+8>>1]|0)>
;>>0)/2|0;c[m>>2]=hc(c[p>>2]|0,1,0,(c[j>>2]|0)+1|0,0,o)|0;if(c[o>>2]|0){c[g>
;>2]=0;q=c[g>>2]|0;i=n;return q|0}c[k>>2]=0;while(1){if((c[k>>2]|0)>>>0>=(
c[j>>2]|0)>>>0)break;c[l>>2]=(c[l>>2]|0)+2;q=(((d[(c[l>>2]|0)+-2>>
;0]|0)&65535)<<8|((d[(c[l>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[h>
x3e;2]=q;c[h>>2]=(c[h>>2]|0)>>>0<32|(c[h>>2]|0)>>>0>127?63
:q;a[(c[m>>2]|0)+(c[k>>2]|0)>>0]=c[h>>2];c[k>>2]=(c[k>>2]|0)+1}a[(c[
m>>2]|0)+(c[j>>2]|0)>>0]=0;c[g>>2]=c[m>>2];q=c[g>>2]|0;i=n;return q|
0}function sk(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,q=0;n=i;i=i+48|0;g=n+32|0;q=n+28|0;p=n+24|0;m=n+20|0;j=n+
16|0;h=n+12|0;k=n+8|0;l=n+4|0;o=n;c[q>>2]=b;c[p>>2]=f;c[m>>2]=0;c[l>>2]=c[(c[q>>
;2]|0)+16>>2];c[j>>2]=e[(c[q>>2]|0)+8>>1];c[m>>2]=hc(c[p>>2]|0,1,0,(
c[j>>2]|0)+1|0,0,o)|0;if(c[o>>2]|0){c[g>>2]=0;q=c[g>>2]|0;i=n;return q|0}c[k>>
2]=0;while(1){if((c[k>>2]|0)>>>0>=(c[j>>2]|0)>>>0)break;q=c[l>>
2]|0;c[l>>2]=q+1;q=d[q>>0]|0;c[h>>2]=q;c[h>>2]=(c[h>>2]|0)>>>0
x3c;32|(c[h>>2]|0)>>>0>127?63:q;a[(c[m>>2]|0)+(c[k>>2]|0)>>0]=c[h>
;>2];c[k>>2]=(c[k>>2]|0)+1}a[(c[m>>2]|0)+(c[j>>2]|0)>>0]=0;c[g>>
;2]=c[m>>2];q=c[g>>2]|0;i=n;return q|0}function tk(a){a=a|0;var f=0,g=0,h=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,A=0;A=i;i=i+224|0;y=4;x=Fs(40)|0;c[x>>2]=0;s=A+216|0;t=A+212|0;l=A+200|0;p=A+196|0;r=A+192
|0;u=A+188|0;m=A+184|0;w=A+8|0;q=A+4|0;v=A;j=c[a+500>>2]|0;k=j+(c[a+504>>2]|0)|0;c[t>>2]=j;if(c[t
x3e;>2]|0?((c[t>>2]|0)+4|0)>>>0<=k>>>0:0){c[t>>2]=(c[t>>2]|
0)+2;f=c[t>>2]|0;if((((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535|0){c[t>>2]=f+-2;z=8;Gs(x|0);i=A;return z|0}c[t>>2]=
f+2;c[s>>2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>
;>0]|0)&65535)<<0)&65535;while(1){if((c[s>>2]|0)>>>0<=0)break;if(((c[t>
;>2]|0)+8|0)>>>0>k>>>0)break;c[t>>2]=(c[t>>2]|0)+2;b[l+8>>
1]=((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535
)<<0;c[t>>2]=(c[t>>2]|0)+2;b[l+10>>1]=((d[(c[t>>2]|0)+-2>>0]|0)&
;65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0;c[l>>2]=a;c[l+4>>
;2]=0;c[t>>2]=(c[t>>2]|0)+4;f=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>
2]|0)+-4+1>>0]|0)<<16|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-
4+3>>0]|0)<<0;if(f|0?f>>>0<=((c[a+504>>2]|0)-2|0)>>>0:0){c[p>
;>2]=j+f;c[r>>2]=(((d[c[p>>2]>>0]|0)&65535)<<8|((d[(c[p>>2]|0)+1>
;>0]|0)&65535)<<0)&65535;c[u>>2]=3080;while(1){if(!(c[c[u>>2]>>2]|0))break
;c[m>>2]=c[c[u>>2]>>2];if((c[(c[m>>2]|0)+40>>2]|0)==(c[r>>2]|0)){z=14
;break}c[u>>2]=(c[u>>2]|0)+4}a:do if((z|0)==14){z=0;c[q>>2]=0;n=0;qa(10,w|0,c[p>>2]|0,k|
0,0);f=n;n=0;if((f|0)!=0&(o|0)!=0){g=Rs(c[f>>2]|0,x|0,y|0)|0;if(!g)ta(f|0,o|0);C=o}else g=-1;if((g|0)!=1){c[w+172
>>2]=e[a+260+4>>1];x=Qs(w+16|0,1,x|0,y|0)|0;y=C;n=0;f=n;n=0;if((f|0)!=0&(o|0)!=0){g=Rs(c[f>>2
]|0,x|0,y|0)|0;if(!g)ta(f|0,o|0);C=o}else g=-1;if((g|0)!=1)f=0;else f=C}else f=C;while(1){if(!f){n=0;f=oa(c[(c[m>>2]|0
)+44>>2]|0,c[p>>2]|0,w|0)|0;g=n;n=0;if((g|0)!=0&(o|0)!=0){h=Rs(c[g>>2]|0,x|0,y|0)|0;if(!h)ta(
g|0,o|0);C=o}else h=-1;if((h|0)==1){f=C;continue}c[q>>2]=f}if(c[w+12>>2]|0)break a;n=0;f=ma(23,c[m>>
;2]|0,c[p>>2]|0,l|0,v|0)|0;g=n;n=0;if((g|0)!=0&(o|0)!=0){h=Rs(c[g>>2]|0,x|0,y|0)|0;if(!h)ta(g|0,o|0);C=
o}else h=-1;if((h|0)==1)f=C;else break}if(!f)c[(c[v>>2]|0)+20>>2]=c[q>>2]}while(0)}c[s>>
2]=(c[s>>2]|0)+-1}z=0;Gs(x|0);i=A;return z|0}z=8;Gs(x|0);i=A;return z|0}function uk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g
=0,h=0,j=0;j=i;i=i+32|0;g=j+16|0;d=j+12|0;e=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;c[h>>2]=3120;c[f
>>2]=(c[h>>2]|0)+132;while(1){if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>
x3e;>0){d=8;break}if((c[c[h>>2]>>2]|0)==(c[d>>2]|0)){if((c[(c[h>>2]|0)+4>>
;2]|0)==(c[e>>2]|0)){d=6;break}if((c[(c[h>>2]|0)+4>>2]|0)==-1){d=6;break}}c[h>>2]=(c[h
x3e;>2]|0)+12}if((d|0)==6){c[g>>2]=c[(c[h>>2]|0)+8>>2];h=c[g>>2]|0;i=j;return h|0}else
if((d|0)==8){c[g>>2]=0;h=c[g>>2]|0;i=j;return h|0}return 0}function vk(d){d=d|0;var e=0,f=0,g=0,h=0,j=0;j=i
;i=i+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[e>>2]=d;if(!(c[e>>2]|0)){i=j;return}c[f>>2]=c[(c[e>
x3e;2]|0)+100>>2];c[g>>2]=c[(c[e>>2]|0)+532>>2];if(c[g>>2]|0){if(c[(c[g>
x3e;2]|0)+116>>2]|0)Va[c[(c[g>>2]|0)+116>>2]&63](c[e>>2]|0);if(c[(c[g>>2]|
0)+144>>2]|0)Va[c[(c[g>>2]|0)+144>>2]&63](c[e>>2]|0)}wk(c[e>>2]|0);xk(c[e
>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+132+12>>2]|0);c[(c[e>>2]|0)+132+12>>
;2]=0;c[(c[e>>2]|0)+132+8>>2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+156>>2]|0);c[(c[e
x3e;>2]|0)+156>>2]=0;b[(c[e>>2]|0)+152>>1]=0;c[h>>2]=c[(c[e>>2]|0)+104>
;>2];fe(c[h>>2]|0,(c[e>>2]|0)+500|0);c[(c[e>>2]|0)+504>>2]=0;Fb(c[f>>2]|0
,c[(c[e>>2]|0)+216+36>>2]|0);c[(c[e>>2]|0)+216+36>>2]=0;Fb(c[f>>2]|0,c[(c[e>
;>2]|0)+216+40>>2]|0);c[(c[e>>2]|0)+216+40>>2]=0;if(a[(c[e>>2]|0)+296>>0]|
0){Fb(c[f>>2]|0,c[(c[e>>2]|0)+300+36>>2]|0);c[(c[e>>2]|0)+300+36>>2]=0;Fb(c[f
x3e;>2]|0,c[(c[e>>2]|0)+300+40>>2]|0);c[(c[e>>2]|0)+300+40>>2]=0;a[(c[e>>
2]|0)+296>>0]=0}Fb(c[f>>2]|0,c[(c[e>>2]|0)+548+4>>2]|0);c[(c[e>>2]|0)+548+4>
;>2]=0;b[(c[e>>2]|0)+548+2>>1]=0;if(c[g>>2]|0)Va[c[(c[g>>2]|0)+60>>2]&
;63](c[e>>2]|0);Fb(c[f>>2]|0,c[(c[e>>2]|0)+20>>2]|0);c[(c[e>>2]|0)+20>>
;2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+24>>2]|0);c[(c[e>>2]|0)+24>>2]=0;Fb(c[f>
x3e;2]|0,c[(c[e>>2]|0)+32>>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[(c[e>>2]|0)+28>
x3e;2]=0;Fb(c[f>>2]|0,c[(c[e>>2]|0)+700>>2]|0);c[(c[e>>2]|0)+700>>2]=0;c[(c[e
x3e;>2]|0)+532>>2]=0;i=j;return}function wk(b){b=b|0;var d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>
;>2]=b;c[e>>2]=(c[d>>2]|0)+792;if(!(a[(c[e>>2]|0)+20>>0]|0)){i=g;return}c[f>
x3e;2]=c[(c[d>>2]|0)+104>>2];if(c[c[e>>2]>>2]|0)fe(c[f>>2]|0,c[e>>2]|
0);c[(c[e>>2]|0)+4>>2]=0;c[(c[e>>2]|0)+8>>2]=0;c[(c[e>>2]|0)+12>>2]=
0;i=g;return}function xk(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]|0)+104>>2];fe(c[e>>2]|0,(c[d>>2]|0)+772|0);c[(c[d>>2]|0)+776>>2]=0;c[(c[d
x3e;>2]|0)+780>>2]=0;c[(c[d>>2]|0)+784>>2]=0;c[(c[d>>2]|0)+788>>2]=0;i=b;
return}function yk(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[f>
x3e;2]=c[f>>2];b=qc(3252,c[e>>2]|0)|0;i=d;return b|0}function zk(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;s=i;i=i+48|0;g=s+36|0;h=s+32|0;j=s+28|0;k=s+24|0;l=s+20|0;m=s+16|0;n=s+12|0;p=s
+8|0;q=s+4|0;o=s;c[h>>2]=a;c[j>>2]=b;c[k>>2]=d;c[l>>2]=e;c[m>>2]=f;e=c[h>
x3e;2]|0;do if(c[j>>2]|0){c[q>>2]=mk(e,c[j>>2]|0)|0;if(c[q>>2]|0){c[k>>2]=(c[k
>>2]|0)+(c[(c[q>>2]|0)+8>>2]|0);c[o>>2]=c[(c[q>>2]|0)+12>>2];r=6;break
}else{c[n>>2]=142;break}}else{c[o>>2]=c[(c[e+104>>2]|0)+4>>2];r=6}while(0);if((r|0)==6){
if(c[m>>2]|0?(c[c[m>>2]>>2]|0)==0:0){c[c[m>>2]>>2]=c[o>>2];c[g>
x3e;2]=0;r=c[g>>2]|0;i=s;return r|0}if(c[m>>2]|0)c[o>>2]=c[c[m>>2]>>2];c[p>
;>2]=c[(c[h>>2]|0)+104>>2];c[n>>2]=Sc(c[p>>2]|0,c[k>>2]|0,c[l>>
2]|0,c[o>>2]|0)|0}c[g>>2]=c[n>>2];r=c[g>>2]|0;i=s;return r|0}function Ak(a,b){a=a|0;b=b|
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]=a;c[j>>2]=b;switch(c[j>>2]|0){case
0:{c[g>>2]=(c[f>>2]|0)+160;break}case 3:{c[g>>2]=(c[f>>2]|0)+216;break}case 4:{c[g>
x3e;2]=d[(c[f>>2]|0)+296>>0]|0|0?(c[f>>2]|0)+300|0:0;break}case 2:{c[g>>2]=(e[(c[f>
x3e;2]|0)+368>>1]|0|0)==65535?0:(c[f>>2]|0)+368|0;break}case 5:{c[g>>2]=(c[f>>2]|0)+468;
break}case 1:{c[g>>2]=(c[f>>2]|0)+260;break}case 6:{c[g>>2]=c[(c[f>>2]|0)+556>>
;2]|0?(c[f>>2]|0)+556|0:0;break}default:c[g>>2]=0}i=h;return c[g>>2]|0}function Bk(a,b,d,f,g){a=a|
0;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;o=i;i=i+32|0;h=o+20|0;j=o+16|0;k=o+12|0;l=o+8|0;m=o+4|0;n=o;c[j>
x3e;2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=f;c[n>>2]=g;if(!((c[l>>2]|0)!=0&(c[m
>>2]|0)!=0&(c[n>>2]|0)!=0)){c[h>>2]=6;d=c[h>>2]|0;i=o;return d|0}if((c[k>>
;2]|0)>>>0>=(e[(c[j>>2]|0)+152>>1]|0)>>>0){c[h>>2]=142;d=c[h>
;>2]|0;i=o;return d|0}else{c[c[l>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>>
;2]<<4)>>2];c[c[m>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>>
;2]<<4)+8>>2];c[c[n>>2]>>2]=c[(c[(c[j>>2]|0)+156>>2]|0)+(c[k>
x3e;2]<<4)+12>>2];c[h>>2]=0;d=c[h>>2]|0;i=o;return d|0}return 0}function Ck(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,z=0,A=0;A=i;i=i+80|0;g=A+72|0;h=A+68|0;r=A+64|0;m=A+60|
0;l=A+56|0;x=A+52|0;s=A+48|0;p=A+44|0;t=A+40|0;n=A+36|0;j=A+32|0;y=A+28|0;w=A+24|0;v=A+20|0;q=A+16|0;u=A+12|0;o=A+8|0;k=A+4|0;z=
A;c[h>>2]=f;c[x>>2]=0;if(c[(c[h>>2]|0)+700>>2]|0){c[g>>2]=c[(c[h>>2]|
0)+700>>2];z=c[g>>2]|0;i=A;return z|0}c[m>>2]=-1;c[l>>2]=-1;c[r>>2]=0;while(1){
if((c[r>>2]|0)>=(e[(c[h>>2]|0)+344>>1]|0|0))break;c[s>>2]=(c[(c[h>>2]|0)+
348+12>>2]|0)+((c[r>>2]|0)*20|0);if((e[(c[s>>2]|0)+6>>1]|0|0)==6?(e[(c[s>>2]|0
)+8>>1]|0|0)>0:0){if(((e[c[s>>2]>>1]|0|0)==3?(e[(c[s>>2]|0)+2>>1]|0|0)==1
:0)?(e[(c[s>>2]|0)+4>>1]|0|0)==1033:0)c[m>>2]=c[r>>2];if(((e[c[s>>2]>>
;1]|0|0)==1?(e[(c[s>>2]|0)+2>>1]|0|0)==0:0)?(e[(c[s>>2]|0)+4>>1]|0|0)==0:0)c[l>>
;2]=c[r>>2]}c[r>>2]=(c[r>>2]|0)+1}do if((c[m>>2]|0)!=-1){c[p>>2]=c[(c[h>
x3e;2]|0)+100>>2];c[t>>2]=(c[(c[h>>2]|0)+348+12>>2]|0)+((c[m>>2]|0)*20|0);c[n
x3e;>2]=(e[(c[t>>2]|0)+8>>1]|0|0)/2|0;c[j>>2]=0;c[j>>2]=c[j>>2];c[x>
x3e;2]=bc(c[p>>2]|0,(e[(c[t>>2]|0)+8>>1]|0)+1|0,j)|0;if(!(c[j>>2]|0)){c[y>>2]=
c[(c[h>>2]|0)+348+16>>2];c[w>>2]=c[x>>2];c[v>>2]=c[(c[t>>2]|0)+16>
;>2];z=Kc(c[y>>2]|0,c[(c[t>>2]|0)+12>>2]|0)|0;c[j>>2]=z;if((z|0)==0?(z=ee(c[y>
x3e;2]|0,e[(c[t>>2]|0)+8>>1]|0)|0,c[j>>2]=z,(z|0)==0):0){c[v>>2]=c[(c[y>>2]|0)+
32>>2];while(1){if((c[n>>2]|0)>>>0<=0)break;if(((d[c[v>>2]>>0]|0|0)==
0?(d[(c[v>>2]|0)+1>>0]|0|0)>=32:0)?(d[(c[v>>2]|0)+1>>0]|0|0)<128:0){u=a[(c[v
x3e;>2]|0)+1>>0]|0;z=c[w>>2]|0;c[w>>2]=z+1;a[z>>0]=u}c[n>>2]=(c[n>
x3e;2]|0)+-1;c[v>>2]=(c[v>>2]|0)+2}a[c[w>>2]>>0]=0;ge(c[y>>2]|0);break}Fb(c[p
x3e;>2]|0,c[x>>2]|0);c[x>>2]=0;b[(c[t>>2]|0)+8>>1]=0;c[(c[t>>2]|0)+12>
;>2]=0;Fb(c[p>>2]|0,c[(c[t>>2]|0)+16>>2]|0);c[(c[t>>2]|0)+16>>2]=0}}else
if((c[l>>2]|0)!=-1?(c[q>>2]=c[(c[h>>2]|0)+100>>2],c[u>>2]=(c[(c[h>>2
]|0)+348+12>>2]|0)+((c[l>>2]|0)*20|0),c[o>>2]=e[(c[u>>2]|0)+8>>1],c[k>>
;2]=0,c[k>>2]=c[k>>2],c[x>>2]=bc(c[q>>2]|0,(c[o>>2]|0)+1|0,k)|0,(c[k>>
;2]|0)==0):0){c[z>>2]=c[(c[h>>2]|0)+348+16>>2];y=Kc(c[z>>2]|0,c[(c[u>>2]|0)+12
>>2]|0)|0;c[k>>2]=y;if((y|0)==0?(z=Rc(c[z>>2]|0,c[x>>2]|0,c[o>>2]|0)|0,c[k>
;>2]=z,(z|0)==0):0){a[(c[x>>2]|0)+(c[o>>2]|0)>>0]=0;break}c[(c[u>>2]|0)+12>>
;2]=0;b[(c[u>>2]|0)+8>>1]=0;Fb(c[q>>2]|0,c[(c[u>>2]|0)+16>>2]|0);c[(c[u>
x3e;2]|0)+16>>2]=0;Fb(c[q>>2]|0,c[x>>2]|0);c[x>>2]=0}while(0);c[(c[h>>2]|0)+700
>>2]=c[x>>2];c[g>>2]=c[x>>2];z=c[g>>2]|0;i=A;return z|0}function Dk(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;m=k+20|0;l=k+16|0;f=k+12|0;g=k+8|0;j=k+4|0;h=k;c[m>>
;2]=a;c[l>>2]=b;c[f>>2]=d;c[g>>2]=e;c[h>>2]=Ek(c[m>>2]|0,c[l>>2]|0,j
)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=k;return m|0}pe(c[f>>2]|0,c[j>>2]|0,c[g>>2]|0)|
0;m=c[h>>2]|0;i=k;return m|0}function Ek(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,r=0,s=0,t=0;
t=i;i=i+48|0;h=t+36|0;j=t+32|0;k=t+28|0;l=t+24|0;m=t+20|0;p=t+16|0;n=t+12|0;q=t+8|0;r=t+4|0;o=t+40|0;s=t;c[j>>2]=d;c[k
>>2]=f;c[l>>2]=g;if(!(c[j>>2]|0)){c[h>>2]=35;s=c[h>>2]|0;i=t;return s|0}if((c[
k>>2]|0)>>>0>=(e[(c[j>>2]|0)+260+4>>1]|0)>>>0){c[h>>2
]=16;s=c[h>>2]|0;i=t;return s|0}c[q>>2]=c[(c[j>>2]|0)+536>>2];if(!(c[q>>2]|0)){
c[h>>2]=7;s=c[h>>2]|0;i=t;return s|0}c[p>>2]=(c[j>>2]|0)+628;f=Ta[c[(c[q>>2]|0
)+16>>2]&63](0)|0;c[c[l>>2]>>2]=f;c[n>>2]=c[(c[j>>2]|0)+468>>2];
do if((c[n>>2]|0)==65536){if((c[k>>2]|0)>>>0<258){s=Ta[c[(c[q>>2]|0)+16>
x3e;2]&63](c[k>>2]|0)|0;c[c[l>>2]>>2]=s}}else{if((c[n>>2]|0)!=131072){if((c[n>
x3e;2]|0)!=163840)break;c[s>>2]=(c[p>>2]|0)+4;if((a[c[p>>2]>>0]|0)==0?(c[m>>2]=
Fk(c[j>>2]|0)|0,c[m>>2]|0):0)break;if((c[k>>2]|0)>>>0>=(e[c[s>>2]>
;>1]|0)>>>0)break;c[k>>2]=(c[k>>2]|0)+(a[(c[(c[s>>2]|0)+4>>2]|0)+(c[
k>>2]|0)>>0]|0);s=Ta[c[(c[q>>2]|0)+16>>2]&63](c[k>>2]|0)|0;c[c[l>>
;2]>>2]=s;break}c[r>>2]=(c[p>>2]|0)+4;if((a[c[p>>2]>>0]|0)==0?(c[m>>
2]=Fk(c[j>>2]|0)|0,c[m>>2]|0):0)break;if((c[k>>2]|0)>>>0<(e[c[r>>2]
x3e;>1]|0)>>>0){b[o>>1]=b[(c[(c[r>>2]|0)+4>>2]|0)+(c[k>>2]<<
;1)>>1]|0;if((e[o>>1]|0)<258){s=Ta[c[(c[q>>2]|0)+16>>2]&63](e[o>>1]|
0)|0;c[c[l>>2]>>2]=s;break}else{c[c[l>>2]>>2]=c[(c[(c[r>>2]|0)+8>>2]|
0)+((e[o>>1]|0)-258<<2)>>2];break}}}while(0);c[h>>2]=0;s=c[h>>2]|0;i=t;return
s|0}function Fk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+20|0;j=k+16|0;e=k+12|0;f=k+8|0;g=k+4|0;h=k;c[d>
x3e;2]=b;c[j>>2]=c[(c[d>>2]|0)+104>>2];c[e>>2]=Wa[c[(c[d>>2]|0)+508>>
;2]&31](c[d>>2]|0,1886352244,c[j>>2]|0,g)|0;if(c[e>>2]|0){j=c[e>>2]|0;i=k;return j|
0}b=Mc(c[j>>2]|0)|0;c[h>>2]=b+(c[g>>2]|0);c[f>>2]=c[(c[d>>2]|0)+468>>
;2];g=Qc(c[j>>2]|0,32)|0;c[e>>2]=g;if(g|0){j=c[e>>2]|0;i=k;return j|0}do if((c[f>>2]|0)!=
131072)if((c[f>>2]|0)==163840){c[e>>2]=Hk(c[d>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;break
}else{c[e>>2]=3;break}else c[e>>2]=Gk(c[d>>2]|0,c[j>>2]|0,c[h>>2]|0)|0;while(0
);a[(c[d>>2]|0)+628>>0]=1;j=c[e>>2]|0;i=k;return j|0}function Gk(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,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=i;i=i+64|0;l=A+52|0;m=A+48|0;n=A+44|0;o=A+40|0;s=A+36|
0;p=A+32|0;w=A+28|0;x=A+60|0;q=A+24|0;v=A+20|0;j=A+16|0;k=A+12|0;h=A+8|0;t=A+58|0;r=A+4|0;y=A;u=A+56|0;c[m>>2]=d;c[n
x3e;>2]=f;c[o>>2]=g;c[s>>2]=c[(c[n>>2]|0)+28>>2];c[q>>2]=0;c[v>>
;2]=0;c[w>>2]=(Pc(c[n>>2]|0,p)|0)&65535;do if(!(c[p>>2]|0)){if((c[w>>2]|0)>(e[(
c[m>>2]|0)+260+4>>1]|0|0)){c[p>>2]=3;break}c[q>>2]=hc(c[s>>2]|0,2,0,c[w>
x3e;2]|0,0,p)|0;a:do if((c[p>>2]|0)==0?(f=ee(c[n>>2]|0,c[w>>2]<<1)|0,c[p>>2]=f
,(f|0)==0):0){c[j>>2]=0;while(1){d=c[n>>2]|0;if((c[j>>2]|0)>=(c[w>>2]|0))break;f=ie
(d)|0;b[(c[q>>2]|0)+(c[j>>2]<<1)>>1]=f;c[j>>2]=(c[j>>2]|0)+1}ge(d);b
[x>>1]=0;c[k>>2]=0;while(1){if((c[k>>2]|0)>=(c[w>>2]|0))break;c[h>>2]=e[(
c[q>>2]|0)+(c[k>>2]<<1)>>1];if((c[h>>2]|0)>=258?(c[h>>2]=(c[h
x3e;>2]|0)-257,(c[h>>2]|0)>(e[x>>1]|0|0)):0)b[x>>1]=c[h>>2];c[k>>2]=(
c[k>>2]|0)+1}c[v>>2]=hc(c[s>>2]|0,4,0,e[x>>1]|0,0,p)|0;if(!(c[p>>2]|0)){b[t>
;>1]=0;while(1){if((e[t>>1]|0|0)>=(e[x>>1]|0|0)){z=28;break}k=Mc(c[n>>2]|0)|0;if((k|0)
x3e;=(c[o>>2]|0)){z=28;break}c[r>>2]=(ke(c[n>>2]|0,p)|0)&255;if(c[p>>2]|0)break;if(!((
c[r>>2]|0)<=(c[o>>2]|0)?(k=Mc(c[n>>2]|0)|0,(k|0)<=((c[o>>2]|0)-(c[r>>
;2]|0)|0)):0)){k=c[o>>2]|0;if(0>(k-(Mc(c[n>>2]|0)|0)|0))d=0;else{d=c[o>>2]|0;d=d-(Mc(c[n>
;>2]|0)|0)|0}c[r>>2]=d}k=hc(c[s>>2]|0,1,0,(c[r>>2]|0)+1|0,0,p)|0;c[(c[v>>2]|0)+((e[
t>>1]|0)<<2)>>2]=k;if(c[p>>2]|0)break;k=Rc(c[n>>2]|0,c[(c[v>>2]|0)+((
e[t>>1]|0)<<2)>>2]|0,c[r>>2]|0)|0;c[p>>2]=k;if(k|0)break;a[(c[(c[v>>
2]|0)+((e[t>>1]|0)<<2)>>2]|0)+(c[r>>2]|0)>>0]=0;b[t>>1]=(b[t>
x3e;1]|0)+1<<16>>16}b:do if((z|0)==28){c:do if((e[t>>1]|0|0)<(e[x>>1]|0|0))while(1){
if((e[t>>1]|0|0)>=(e[x>>1]|0|0))break c;z=hc(c[s>>2]|0,1,0,1,0,p)|0;c[(c[v>>2]|0)+((
e[t>>1]|0)<<2)>>2]=z;if(c[p>>2]|0)break b;a[c[(c[v>>2]|0)+((e[t>>1]|
0)<<2)>>2]>>0]=0;b[t>>1]=(b[t>>1]|0)+1<<16>>16}while(0);c[
y>>2]=(c[m>>2]|0)+628+4;b[c[y>>2]>>1]=c[w>>2];b[(c[y>>2]|0)+2>
x3e;1]=b[x>>1]|0;c[(c[y>>2]|0)+4>>2]=c[q>>2];c[(c[y>>2]|0)+8>>2]=c[v
>>2];c[l>>2]=0;z=c[l>>2]|0;i=A;return z|0}while(0);b[u>>1]=0;while(1){if((e[u>>
;1]|0|0)>=(e[x>>1]|0|0))break a;Fb(c[s>>2]|0,c[(c[v>>2]|0)+((e[u>>1]|0)<<
2)>>2]|0);c[(c[v>>2]|0)+((e[u>>1]|0)<<2)>>2]=0;b[u>>1]=(b[u>>
;1]|0)+1<<16>>16}}}while(0);Fb(c[s>>2]|0,c[v>>2]|0);c[v>>2]=0;Fb(c[s>>
;2]|0,c[q>>2]|0);c[q>>2]=0}while(0);c[l>>2]=c[p>>2];z=c[l>>2]|0;i=A;return z|0
}function Hk(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,r=0,s=0,t=0,u=0;t=i;i=i+48|0;h=t+40|0;j=t+36|0;k=t
+32|0;u=t+28|0;n=t+24|0;l=t+20|0;p=t+16|0;q=t+12|0;o=t+8|0;m=t+4|0;r=t;c[j>>2]=d;c[k>>2]=f;c[u>>2]=
g;c[n>>2]=c[(c[k>>2]|0)+28>>2];c[q>>2]=0;c[u>>2]=c[u>>2];c[p>
x3e;2]=(Pc(c[k>>2]|0,l)|0)&65535;do if(!(c[l>>2]|0)){if((c[p>>2]|0)>258?1:(c[p>>
;2]|0)>(e[(c[j>>2]|0)+260+4>>1]|0)){c[l>>2]=3;break}c[q>>2]=hc(c[n>>2]|0,
1,0,c[p>>2]|0,0,l)|0;do if((c[l>>2]|0)==0?(u=Rc(c[k>>2]|0,c[q>>2]|0,c[p>>2]|0)|
0,c[l>>2]=u,(u|0)==0):0){c[o>>2]=0;while(1){if((c[o>>2]|0)>=(c[p>>2]|0))break;c[m
x3e;>2]=(c[o>>2]|0)+(a[(c[q>>2]|0)+(c[o>>2]|0)>>0]|0);if((c[m>>2]|0)<
;0){s=10;break}if((c[m>>2]|0)>(c[p>>2]|0)){s=10;break}c[o>>2]=(c[o>>2]|0)+1}if((s|0
)==10){c[l>>2]=3;break}c[r>>2]=(c[j>>2]|0)+628+4;b[c[r>>2]>>1]=c[p>>
2];c[(c[r>>2]|0)+4>>2]=c[q>>2];c[h>>2]=0;u=c[h>>2]|0;i=t;return u|0}while(0);Fb
(c[n>>2]|0,c[q>>2]|0);c[q>>2]=0}while(0);c[h>>2]=c[l>>2];u=c[h>>2]|0
;i=t;return u|0}function Ik(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;m=i;i=i+32|0;k=m+28|0;d=m+24|0;e=m+20|0;j=m
+16|0;l=m+12|0;h=m+8|0;g=m+4|0;f=m;c[d>>2]=a;c[e>>2]=b;c[j>>2]=c[d>>2];c[h>>2]=-
1;if((c[(c[j>>2]|0)+16>>2]|0)<0){c[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}if((c[(c[j>
;>2]|0)+16>>2]|0)>>>0<4294967295)c[h>>2]=c[(c[j>>2]|0)+16>>2];c
[l>>2]=0;while(1){if((c[l>>2]|0)>>>0>=(c[h>>2]|0)>>>0){d=11;break
}c[f>>2]=Ek(c[d>>2]|0,c[l>>2]|0,g)|0;if((c[f>>2]|0)==0?(Kr(c[e>>2]|0,c[g>
x3e;2]|0)|0)==0:0){d=9;break}c[l>>2]=(c[l>>2]|0)+1}if((d|0)==9){c[k>>2]=c[l>>2];l=c[k>
;>2]|0;i=m;return l|0}else if((d|0)==11){c[k>>2]=0;l=c[k>>2]|0;i=m;return l|0}return 0}function Jk(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;l=i;i=i+48|0;e=l+32|0;f=l+28|0;g=l+24|0;h=l+16|0;k=l+8|0;j=l;c[e>>
;2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=Kk(c[e>>2]|0,11392,k)|0;if(c[j>>2]|0){k=c[j
x3e;>2]|0;i=l;return k|0}c[j>>2]=Kk(c[e>>2]|0,11409,h)|0;if(c[j>>2]|0){k=c[j>>2]|0;
i=l;return k|0}if((c[k>>2]|0)==1?(c[h>>2]|0)==1:0){c[c[f>>2]>>2]=c[h+4>>2];c[c
[g>>2]>>2]=c[k+4>>2];k=c[j>>2]|0;i=l;return k|0}c[j>>2]=6;k=c[j>>2]|
0;i=l;return k|0}function Kk(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;x=
i;i=i+64|0;g=x+56|0;h=x+52|0;j=x+48|0;m=x+44|0;s=x+40|0;o=x+36|0;q=x+32|0;n=x+28|0;t=x+24|0;r=x+20|0;l=x+16|0;k=x+12|0;u=x+8|0;p
=x+4|0;v=x;c[g>>2]=a;c[h>>2]=b;c[j>>2]=f;c[m>>2]=(c[g>>2]|0)+792;c[s>>
;2]=c[(c[g>>2]|0)+88>>2];c[o>>2]=0;c[c[j>>2]>>2]=0;if((d[(c[m>>2]|0)+
20>>0]|0|0)==0?(c[o>>2]=Lk(c[g>>2]|0,c[(c[g>>2]|0)+104>>2]|0)|0,c[o>>
;2]|0):0){w=c[o>>2]|0;i=x;return w|0}c[n>>2]=c[(c[m>>2]|0)+16>>2];c[q>>2]=(c[c
[m>>2]>>2]|0)+8;c[t>>2]=(c[q>>2]|0)+(c[n>>2]<<2);c[o>>2]=6
;if((c[s>>2]|0)==0|(c[h>>2]|0)==0){w=c[o>>2]|0;i=x;return w|0}c[r>>2]=cs(c[h>>
2]|0)|0;if(!((c[r>>2]|0)!=0&(c[n>>2]|0)>>>0>0)){w=c[o>>2]|0;i=x;return w|
0}while(1){c[q>>2]=(c[q>>2]|0)+2;c[l>>2]=(((d[(c[q>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[q>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[q>>2]=(c[q>
x3e;2]|0)+2;c[k>>2]=(((d[(c[q>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[q>>2]|0)+-
2+1>>0]|0)&65535)<<0)&65535;g=c[k>>2]|0;if((c[l>>2]|0)==(e[(c[s>>2]|
0)+12+2>>1]|0|0))break;c[t>>2]=(c[t>>2]|0)+(g*10|0);c[n>>2]=(c[n>>2]|0)+-1;if((
c[n>>2]|0)>>>0<=0){w=20;break}}if((w|0)==20){w=c[o>>2]|0;i=x;return w|0}c[n>>2
]=g;c[q>>2]=c[t>>2];a:while(1){if((c[n>>2]|0)>>>0<=0){w=20;break}c[u>>
;2]=(((d[(c[q>>2]|0)+4>>0]|0)&65535)<<8|((d[(c[q>>2]|0)+4+1>>0]|0)&65535
)<<0)&65535;b:do if(((c[u>>2]&16|0?(c[p>>2]=(d[c[q>>2]>>0]|0)<
x3c;24|(d[(c[q>>2]|0)+1>>0]|0)<<16|(d[(c[q>>2]|0)+2>>0]|0)<<8|(d[(c[
q>>2]|0)+3>>0]|0)<<0,c[v>>2]=(d[(c[q>>2]|0)+6>>0]|0)<<24|(
d[(c[q>>2]|0)+6+1>>0]|0)<<16|(d[(c[q>>2]|0)+6+2>>0]|0)<<8|(d[(c[q>
;>2]|0)+6+3>>0]|0)<<0,(c[p>>2]|0)>>>0<(c[(c[m>>2]|0)+12>
x3e;2]|0)>>>0):0)?(c[r>>2]|0)>>>0<((c[(c[m>>2]|0)+12>>2]|0)-(c[
p>>2]|0)|0)>>>0:0)?(Lr(c[h>>2]|0,(c[(c[m>>2]|0)+8>>2]|0)+(c[p>>
2]|0)|0,(c[(c[m>>2]|0)+12>>2]|0)-(c[p>>2]|0)|0)|0)==0:0){switch(c[u>>2]&15|0){case
2:{w=17;break a}case 3:{w=18;break a}case 1:case 0:break;default:break b}if((c[v>>2]|0)>>>0<(c[(c[
m>>2]|0)+12>>2]|0)>>>0?Ur((c[(c[m>>2]|0)+8>>2]|0)+(c[v>>2]|0)|0
,0,c[(c[m>>2]|0)+12>>2]|0)|0:0){w=16;break a}}while(0);c[q>>2]=(c[q>>2]|0)+10;c[n>
x3e;2]=(c[n>>2]|0)+-1}if((w|0)==16){c[c[j>>2]>>2]=1;c[(c[j>>2]|0)+4>>2]=(c[(c[
m>>2]|0)+8>>2]|0)+(c[v>>2]|0);c[o>>2]=0;w=c[o>>2]|0;i=x;return w|0}else if((w|
0)==17){c[c[j>>2]>>2]=2;c[(c[j>>2]|0)+4>>2]=c[v>>2];c[o>>2]=0;w=c[o
x3e;>2]|0;i=x;return w|0}else if((w|0)==18){c[c[j>>2]>>2]=3;c[(c[j>>2]|0)+4>>2]=c[v
>>2];c[o>>2]=0;w=c[o>>2]|0;i=x;return w|0}else if((w|0)==20){w=c[o>>2]|0;i=x;return w|0}
return 0}function Lk(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;r=i;i=i+48|0;s=r+44|0;f=r+40|0;g=r
+36|0;k=r+32|0;j=r+28|0;n=r+24|0;q=r+20|0;m=r+16|0;p=r+12|0;h=r+8|0;o=r+4|0;l=r;c[s>>2]=b;c[f>>2]=e;c[g>
;>2]=(c[s>>2]|0)+792;e=c[g>>2]|0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12
>>2]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[j>>2]=lk(c[s>>2]|0,1111770656,c[f>>
;2]|0,k)|0;if(!((c[j>>2]|0)!=0|(c[k>>2]|0)>>>0<8)?(s=de(c[f>>2]|0,c[k>>
;2]|0,c[g>>2]|0)|0,c[j>>2]=s,(s|0)==0):0){c[(c[g>>2]|0)+4>>2]=(c[c[g>>2]>
x3e;2]|0)+(c[k>>2]|0);c[n>>2]=c[c[g>>2]>>2];c[n>>2]=(c[n>>2]|0)+2;c[
q>>2]=(((d[(c[n>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[n>>2]|0)+-2+1>>
;0]|0)&65535)<<0)&65535;c[n>>2]=(c[n>>2]|0)+2;c[m>>2]=(((d[(c[n>>2]|
0)+-2>>0]|0)&65535)<<8|((d[(c[n>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535
;c[n>>2]=(c[n>>2]|0)+4;c[p>>2]=(d[(c[n>>2]|0)+-4>>0]|0)<<24|(d[(c[n
x3e;>2]|0)+-4+1>>0]|0)<<16|(d[(c[n>>2]|0)+-4+2>>0]|0)<<8|(d[(c[n>>
;2]|0)+-4+3>>0]|0)<<0;if((!((c[q>>2]|0)!=1|(c[p>>2]|0)>>>0<8)?((((c[
p>>2]|0)-8|0)>>>0)/4|0)>>>0>=(c[m>>2]|0)>>>0:0)?((c[p>
;>2]|0)+1|0)>>>0<=(c[k>>2]|0)>>>0:0){c[(c[g>>2]|0)+16>>2]=
c[m>>2];c[(c[g>>2]|0)+8>>2]=(c[c[g>>2]>>2]|0)+(c[p>>2]|0);c[(c[g>
;>2]|0)+12>>2]=(c[k>>2]|0)-(c[p>>2]|0);c[h>>2]=c[(c[g>>2]|0)+16>>
;2];c[n>>2]=(c[c[g>>2]>>2]|0)+8;c[o>>2]=(c[n>>2]|0)+(c[h>>2]<
x3c;2);while(1){if((c[h>>2]|0)>>>0<=0)break;c[l>>2]=(((d[(c[n>>2]|0)+2>
x3e;0]|0)&65535)<<8|((d[(c[n>>2]|0)+2+1>>0]|0)&65535)<<0)&65535;c[o>
x3e;2]=(c[o>>2]|0)+((c[l>>2]|0)*10|0);c[n>>2]=(c[n>>2]|0)+4;c[h>>2]=(c[h>
x3e;2]|0)+-1}if((c[o>>2]|0)>>>0<=(c[(c[g>>2]|0)+8>>2]|0)>>>0){a
[(c[g>>2]|0)+20>>0]=1;s=c[j>>2]|0;i=r;return s|0}}fe(c[f>>2]|0,c[g>>2]|0);s=c[
g>>2]|0;c[s>>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[j>>2]=8;s=c[j>>2]|0;i=r;return s|0}c[j>>2]=8;s=c[j>>2]|0;i=r;return
s|0}function Mk(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;h=d+4|0;g=d;c[f>>2]=a;c[e>
;>2]=b;c[h>>2]=c[f>>2];c[g>>2]=c[(c[h>>2]|0)+12>>2];b=Ya[c[(c[g>>
;2]|0)+48>>2]&127](c[f>>2]|0,c[e>>2]|0)|0;i=d;return b|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;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;c[k>>2]=c[k>>2];c[j>>2]=c[j>>2];c[h>>2]=c[h>>
;2];c[g>>2]=c[g>>2];i=f;return 7}function Ok(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;c[h>>2]=c[h>>2];c[g>>2]=
c[g>>2];c[f>>2]=c[f>>2];i=e;return 7}function Pk(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=Qk(c[f>>2]|0,c[e>>2]|0,1751474532)|0;i=d;return b|0}function
Qk(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+16|0;f=j+12|0;k=j+8|0;g=j+4|0;h=j;c[e>>2]=a;
c[f>>2]=b;c[k>>2]=d;c[g>>2]=Wa[c[(c[e>>2]|0)+508>>2]&31](c[e>>2
]|0,c[k>>2]|0,c[f>>2]|0,0)|0;if(c[g>>2]|0){k=c[g>>2]|0;i=j;return k|0}c[h>>2]=(
c[e>>2]|0)+160;c[g>>2]=le(c[f>>2]|0,7560,c[h>>2]|0)|0;k=c[g>>2]|0;i=j;return k
|0}function Rk(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;f=l+16|0;g=l+12|0;m=l+20|0;h=l+8|0;j=l+4|0;
k=l;c[f>>2]=b;c[g>>2]=d;a[m>>0]=e;b=c[f>>2]|0;do if(a[m>>0]|0){c[k>>
2]=b+300;c[h>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1986553185,c[g>>2
]|0,0)|0;if(c[h>>2]|0){m=c[h>>2]|0;i=l;return m|0}else{c[j>>2]=c[k>>2];break}}else{c[h
x3e;>2]=Wa[c[b+508>>2]&31](c[f>>2]|0,1751672161,c[g>>2]|0,0)|0;if(c[h>>2]|0){m
=c[h>>2]|0;i=l;return m|0}else{c[j>>2]=(c[f>>2]|0)+216;break}}while(0);m=le(c[g>>2]|0,7644
,c[j>>2]|0)|0;c[h>>2]=m;if(m|0){m=c[h>>2]|0;i=l;return m|0}c[(c[j>>2]|0)+36>>2
]=0;c[(c[j>>2]|0)+40>>2]=0;m=c[h>>2]|0;i=l;return m|0}function Sk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0
,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Wa[c[(c[d>>2]|0)+508
x3e;>2]&31](c[d>>2]|0,1668112752,c[e>>2]|0,(c[d>>2]|0)+504|0)|0;if(c[f>>2]|0){
b=c[f>>2]|0;i=g;return b|0}b=de(c[e>>2]|0,c[(c[d>>2]|0)+504>>2]|0,(c[d>>2]|0)+
500|0)|0;c[f>>2]=b;if(!b){b=c[f>>2]|0;i=g;return b|0}c[(c[d>>2]|0)+504>>2]=0;b=c[f>
x3e;2]|0;i=g;return b|0}function Tk(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;j=i;i=i+16|0;k=j+12|0;f=j+8|0;g=j+4|0;h=j;c[k>
x3e;2]=a;c[f>>2]=d;c[h>>2]=(c[k>>2]|0)+260;c[g>>2]=Wa[c[(c[k>>2]|0)+508>
x3e;2]&31](c[k>>2]|0,1835104368,c[f>>2]|0,0)|0;if(c[g>>2]|0){k=c[g>>2]|0;i=j;return
k|0}k=le(c[f>>2]|0,7720,c[h>>2]|0)|0;c[g>>2]=k;if(k|0){k=c[g>>2]|0;i=j;return k|0}b[(c[
h>>2]|0)+6>>1]=0;b[(c[h>>2]|0)+8>>1]=0;b[(c[h>>2]|0)+10>>1]=0;b[(c[h
>>2]|0)+12>>1]=0;b[(c[h>>2]|0)+14>>1]=0;b[(c[h>>2]|0)+16>>1]=0;b[(c[
h>>2]|0)+18>>1]=0;b[(c[h>>2]|0)+20>>1]=0;b[(c[h>>2]|0)+22>>1]=0;b[(c
[h>>2]|0)+24>>1]=0;b[(c[h>>2]|0)+26>>1]=0;b[(c[h>>2]|0)+28>>1]=0;b[(
c[h>>2]|0)+30>>1]=0;if((c[c[h>>2]>>2]|0)<65536){k=c[g>>2]|0;i=j;return k|
0}k=le(c[f>>2]|0,7736,c[h>>2]|0)|0;c[g>>2]=k;if(k|0){k=c[g>>2]|0;i=j;return k|0}if((e[(c
[h>>2]|0)+20>>1]|0|0)<64)b[(c[h>>2]|0)+20>>1]=64;if((e[(c[h>>2]|0)+16>
;>1]|0)>>>0>65531)b[(c[h>>2]|0)+16>>1]=-5;if((e[(c[h>>2]|0)+30>>
;1]|0|0)<=100){k=c[g>>2]|0;i=j;return k|0}b[(c[h>>2]|0)+30>>1]=100;k=c[g>>2]|0;i=j;
return k|0}function Uk(a,d){a=a|0;d=d|0;var f=0,g=0,h=0,j=0,k=0;k=i;i=i+16|0;f=k+12|0;g=k+8|0;h=k+4|0;j=k;c[f>>2]=a;c[
g>>2]=d;c[h>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1330851634,c[g>
;>2]|0,0)|0;if(c[h>>2]|0){d=c[h>>2]|0;i=k;return d|0}c[j>>2]=(c[f>>2]|0)+368;d=le(c
[g>>2]|0,7796,c[j>>2]|0)|0;c[h>>2]=d;if(d|0){d=c[h>>2]|0;i=k;return d|0}c[(c[j>>
;2]|0)+80>>2]=0;c[(c[j>>2]|0)+84>>2]=0;b[(c[j>>2]|0)+88>>1]=0;b[(c[j>>
;2]|0)+90>>1]=0;b[(c[j>>2]|0)+92>>1]=0;b[(c[j>>2]|0)+94>>1]=0;b[(c[j>>
;2]|0)+96>>1]=0;if((e[c[j>>2]>>1]|0|0)<1){d=c[h>>2]|0;i=k;return d|0}d=le(c[g>
x3e;2]|0,7972,c[j>>2]|0)|0;c[h>>2]=d;if(d|0){d=c[h>>2]|0;i=k;return d|0}if((e[c[j>>2]>
;>1]|0|0)<2){d=c[h>>2]|0;i=k;return d|0}c[h>>2]=le(c[g>>2]|0,7988,c[j>>2]|0)|0
;d=c[h>>2]|0;i=k;return d|0}function Vk(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;j=h+12|0;e=
h+8|0;f=h+4|0;g=h;c[j>>2]=a;c[e>>2]=b;c[g>>2]=(c[j>>2]|0)+468;c[f>>2]=Wa[c[(c[
j>>2]|0)+508>>2]&31](c[j>>2]|0,1886352244,c[e>>2]|0,0)|0;if(c[f>>2]|0){c[
d>>2]=c[f>>2];j=c[d>>2]|0;i=h;return j|0}j=le(c[e>>2]|0,8016,c[g>>2]|0)|0;c[f
x3e;>2]=j;if(j|0){c[d>>2]=c[f>>2];j=c[d>>2]|0;i=h;return j|0}else{c[d>>2]=0;j=c[d
x3e;>2]|0;i=h;return j|0}return 0}function Wk(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,q=0,r=0;r=i;i=i+
48|0;f=r+40|0;g=r+36|0;k=r+32|0;l=r+28|0;q=r+24|0;p=r+20|0;n=r+16|0;m=r+12|0;h=r+8|0;o=r+4|0;j=r;c[f>>2]=a;c[g>
x3e;2]=d;c[l>>2]=c[(c[g>>2]|0)+28>>2];c[o>>2]=(c[f>>2]|0)+348;c[(c[o>>
;2]|0)+16>>2]=c[g>>2];c[k>>2]=Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>
;2]|0,1851878757,c[g>>2]|0,p)|0;if(c[k>>2]|0){q=c[k>>2]|0;i=r;return q|0}c[q>>2]=Mc(c[g
x3e;>2]|0)|0;d=le(c[g>>2]|0,8060,c[o>>2]|0)|0;c[k>>2]=d;if(d|0){q=c[k>>2]|0;i=r;return
q|0}c[n>>2]=(c[q>>2]|0)+6+((c[(c[o>>2]|0)+4>>2]|0)*12|0);c[m>>2]=(c[q>
x3e;2]|0)+(c[p>>2]|0);if((c[n>>2]|0)>>>0>(c[m>>2]|0)>>>0){c[k
x3e;>2]=145;q=c[k>>2]|0;i=r;return q|0}c[h>>2]=c[(c[o>>2]|0)+4>>2];c[(c[o>>
;2]|0)+4>>2]=0;p=hc(c[l>>2]|0,20,0,c[h>>2]|0,0,k)|0;c[(c[o>>2]|0)+12>>2]=p;if(
c[k>>2]|0){q=c[k>>2]|0;i=r;return q|0}p=ee(c[g>>2]|0,(c[h>>2]|0)*12|0)|0;c[k>>
2]=p;if(p|0){q=c[k>>2]|0;i=r;return q|0}c[j>>2]=c[(c[o>>2]|0)+12>>2];while(1){if((c[h>
;>2]|0)>>>0<=0)break;p=le(c[g>>2]|0,8080,c[j>>2]|0)|0;c[k>>2]=p;do if((p|
0)==0?e[(c[j>>2]|0)+8>>1]|0|0:0){p=(c[j>>2]|0)+12|0;c[p>>2]=(c[p>>2]|0)+((c[q
x3e;>2]|0)+(c[(c[o>>2]|0)+8>>2]|0));if((c[(c[j>>2]|0)+12>>2]|0)>>>0
x3e;=(c[n>>2]|0)>>>0?((c[(c[j>>2]|0)+12>>2]|0)+(e[(c[j>>2]|0)+8>>
;1]|0)|0)>>>0<=(c[m>>2]|0)>>>0:0){c[j>>2]=(c[j>>2]|0)+20;break}
c[(c[j>>2]|0)+12>>2]=0;b[(c[j>>2]|0)+8>>1]=0}while(0);c[h>>2]=(c[h>>
2]|0)+-1}c[(c[o>>2]|0)+4>>2]=((c[j>>2]|0)-(c[(c[o>>2]|0)+12>>2]|0)|0)/20|0;ge(
c[g>>2]|0);b[(c[f>>2]|0)+344>>1]=c[(c[o>>2]|0)+4>>2];q=c[k>>2]|0;i=r
;return q|0}function Xk(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;j=h+16|0;f=h+12|0;g=h+8|0;e=h+4|0;d=h;c[j>>2
]=a;c[f>>2]=c[(c[(c[j>>2]|0)+96>>2]|0)+8>>2];c[g>>2]=(c[j>>2]|0)+348
;c[e>>2]=c[(c[g>>2]|0)+12>>2];c[d>>2]=c[(c[g>>2]|0)+4>>2];if(!(c[(c[
g>>2]|0)+12>>2]|0)){j=c[g>>2]|0;j=j+4|0;c[j>>2]=0;j=c[g>>2]|0;b[j>>1
]=0;j=c[g>>2]|0;j=j+8|0;c[j>>2]=0;i=h;return}while(1){a=c[f>>2]|0;if((c[d>>2]|0)>
x3e;>0<=0)break;Fb(a,c[(c[e>>2]|0)+16>>2]|0);c[(c[e>>2]|0)+16>>2]=0;b[(c[e>
;>2]|0)+8>>1]=0;c[d>>2]=(c[d>>2]|0)+-1;c[e>>2]=(c[e>>2]|0)+20}Fb(a,c[(c[g
>>2]|0)+12>>2]|0);c[(c[g>>2]|0)+12>>2]=0;j=c[g>>2]|0;j=j+4|0;c[j>>2]=
0;j=c[g>>2]|0;b[j>>1]=0;j=c[g>>2]|0;j=j+8|0;c[j>>2]=0;i=h;return}function Yk(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[f>>2]=c[f>>2];c[e
x3e;>2]=c[e>>2];i=d;return 7}function Zk(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>
;2]=c[d>>2];i=b;return}function _k(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;x=i;i=i+80|0;e=x+68|0;f=x+64|0;l=x+60|0;w=x+56|0;t=x+52|0;u=x+48|0;o=x+44|0;q=x+40|0;g=x+36|0;s=x+32|0;p=x+28|0;m=
x+24|0;j=x+20|0;v=x+16|0;n=x+12|0;h=x+8|0;r=x+4|0;k=x;c[e>>2]=a;c[f>>2]=b;c[g>>2]=0;c[s>>
;2]=0;c[l>>2]=Wa[c[(c[e>>2]|0)+508>>2]&31](c[e>>2]|0,1801810542,c[f>>2]|0
,w)|0;if(c[l>>2]|0){w=c[l>>2]|0;i=x;return w|0}if((c[w>>2]|0)>>>0<4){c[l>
x3e;2]=142;w=c[l>>2]|0;i=x;return w|0}b=de(c[f>>2]|0,c[w>>2]|0,(c[e>>2]|0)+772|0)|0;c[l
x3e;>2]=b;if(b|0){w=c[l>>2]|0;i=x;return w|0}c[(c[e>>2]|0)+776>>2]=c[w>>2];c[t>
;>2]=c[(c[e>>2]|0)+772>>2];c[u>>2]=(c[t>>2]|0)+(c[w>>2]|0);c[t>>
;2]=(c[t>>2]|0)+2;c[t>>2]=(c[t>>2]|0)+2;w=(((d[(c[t>>2]|0)+-2>>0]|0)&65535
)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[q>>2]=w;c[q>
;>2]=(c[q>>2]|0)>>>0>32?32:w;c[o>>2]=0;while(1){if((c[o>>2]|0)>>
;>0>=(c[q>>2]|0)>>>0)break;c[n>>2]=1<<c[o>>2];if(((c[t>>
;2]|0)+6|0)>>>0>(c[u>>2]|0)>>>0)break;c[v>>2]=c[t>>2];c[t>
x3e;2]=(c[t>>2]|0)+2;c[t>>2]=(c[t>>2]|0)+2;c[m>>2]=(((d[(c[t>>2]|0)+-2>
x3e;0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;c[t>
;>2]=(c[t>>2]|0)+2;c[j>>2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(
c[t>>2]|0)+-2+1>>0]|0)&65535)<<0)&65535;if((c[m>>2]|0)>>>0<
;=6)break;c[v>>2]=(c[v>>2]|0)+(c[m>>2]|0);if((c[v>>2]|0)>>>0>(c[u>
;>2]|0)>>>0)c[v>>2]=c[u>>2];if((c[j>>2]&-9|0)==1?((c[t>>2]|0)+8
|0)>>>0<=(c[u>>2]|0)>>>0:0){c[t>>2]=(c[t>>2]|0)+2;c[p>>
;2]=(((d[(c[t>>2]|0)+-2>>0]|0)&65535)<<8|((d[(c[t>>2]|0)+-2+1>>0]|0)&
;65535)<<0)&65535;c[t>>2]=(c[t>>2]|0)+6;if(((c[v>>2]|0)-(c[t>>2]|0)|0)<
;((c[p>>2]|0)*6|0))c[p>>2]=((c[v>>2]|0)-(c[t>>2]|0)|0)/6|0;c[g>>2]=c[g>
x3e;2]|c[n>>2];if((c[p>>2]|0)>>>0>0){c[t>>2]=(c[t>>2]|0)+4;c[r>
x3e;2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16|(
d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[t>>2]|0)+-4+3>>0]|0)<<0;c[t>
x3e;2]=(c[t>>2]|0)+2;c[h>>2]=(c[p>>2]|0)-1;while(1){if((c[h>>2]|0)>>>0<
;=0)break;c[t>>2]=(c[t>>2]|0)+4;c[k>>2]=(d[(c[t>>2]|0)+-4>>0]|0)<<24
|(d[(c[t>>2]|0)+-4+1>>0]|0)<<16|(d[(c[t>>2]|0)+-4+2>>0]|0)<<8|(d[(c[
t>>2]|0)+-4+3>>0]|0)<<0;if((c[k>>2]|0)>>>0<=(c[r>>2]|0)>
;>>0)break;c[t>>2]=(c[t>>2]|0)+2;c[r>>2]=c[k>>2];c[h>>2]=(c[h>
x3e;2]|0)+-1}if(!(c[h>>2]|0))c[s>>2]=c[s>>2]|c[n>>2]}}c[t>>2]=c[v>>2
];c[o>>2]=(c[o>>2]|0)+1}c[(c[e>>2]|0)+780>>2]=c[o>>2];c[(c[e>>2]|0)+
784>>2]=c[g>>2];c[(c[e>>2]|0)+788>>2]=c[s>>2];w=c[l>>2]|0;i=x;return
w|0}function $k(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;n=i;i=i+32|0;f=n+24|0;h=n+20|0;j=n+16|0;g=n+12|0;l=n+8|0;m
=n+4|0;k=n;c[f>>2]=a;c[h>>2]=d;c[g>>2]=c[(c[h>>2]|0)+28>>2];c[j>>2]=
Wa[c[(c[f>>2]|0)+508>>2]&31](c[f>>2]|0,1734439792,c[h>>2]|0,0)|0;if(c[j>>
2]|0){m=c[j>>2]|0;i=n;return m|0}d=ee(c[h>>2]|0,4)|0;c[j>>2]=d;if(d|0){m=c[j>>2]|0;i=n;return
m|0}a=ie(c[h>>2]|0)|0;b[(c[f>>2]|0)+548>>1]=a;a=ie(c[h>>2]|0)|0;b[(c[f>>2]|0)+
548+2>>1]=a;ge(c[h>>2]|0);a=(c[f>>2]|0)+548+2|0;if((e[(c[f>>2]|0)+548>>1]|0|0)
x3e;=2){b[a>>1]=0;c[j>>2]=8;m=c[j>>2]|0;i=n;return m|0}c[m>>2]=e[a>>1];c[k>
;>2]=hc(c[g>>2]|0,4,0,c[m>>2]|0,0,j)|0;if(c[j>>2]|0){m=c[j>>2]|0;i=n;return m|0}g=ee
(c[h>>2]|0,c[m>>2]<<2)|0;c[j>>2]=g;if(g|0){m=c[j>>2]|0;i=n;return m|0}c[(c[f
x3e;>2]|0)+548+4>>2]=c[k>>2];c[l>>2]=0;while(1){a=c[h>>2]|0;if((c[l>>2]|0
)>>>0>=(c[m>>2]|0)>>>0)break;g=ie(a)|0;b[(c[k>>2]|0)+(c[l>>2]
x3c;<2)>>1]=g;g=ie(c[h>>2]|0)|0;b[(c[k>>2]|0)+(c[l>>2]<<2)+2>>1
]=g;c[l>>2]=(c[l>>2]|0)+1}ge(a);m=c[j>>2]|0;i=n;return m|0}function al(a,b){a=a|0;b=b|0;var d=0,e=
0,f=0,g=0,h=0;g=i;i=i+16|0;h=g+12|0;d=g+8|0;e=g+4|0;f=g;c[h>>2]=a;c[d>>2]=b;c[f>>2]=(c[h>>
;2]|0)+556;c[e>>2]=Wa[c[(c[h>>2]|0)+508>>2]&31](c[h>>2]|0,1346587732,c[d>>
;2]|0,0)|0;if(c[e>>2]|0){h=c[e>>2]|0;i=g;return h|0}c[e>>2]=le(c[d>>2]|0,8108,c[f>
x3e;2]|0)|0;h=c[e>>2]|0;i=g;return h|0}function bl(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>
x3e;2]=a;c[e>>2]=b;b=Qk(c[f>>2]|0,c[e>>2]|0,1651008868)|0;i=d;return b|0}function cl(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;j=f+32|0;l=f+28|0;k=f+24|0;g=f+20|0;h=f;c[j>>2]=a;c[l>
;>2]=b;c[k>>2]=d;c[g>>2]=e;c[h>>2]=0;c[h+4>>2]=c[l>>2];c[h+8>>2
]=c[k>>2];c[h+12>>2]=0;c[h+16>>2]=0;c[c[g>>2]>>2]=2147483647;d=dl(c[j>>
;2]|0,h,c[g>>2]|0)|0;i=f;return d|0}function dl(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;b=Ad(c[h>>2]|0,c[g>>2]|0,0,c[f>>
;2]|0)|0;i=e;return b|0}function el(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[f>>2]=c[f>>2];c[e>>2]=c[e>>2];i=d;return 7}function fl(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;r=i;i=i+48|0;h=r+32|0;j=r+28|0;k=r+24|0;l=r+20|0;m=r+16|0;n=
r+12|0;o=r+8|0;p=r+4|0;q=r;c[j>>2]=a;c[k>>2]=b;c[l>>2]=d;c[m>>2]=e;c[n>>2]=f;c
[o>>2]=g;if((c[(c[j>>2]|0)+616>>2]|0?(c[(c[j>>2]|0)+612>>2]|0)>>>
;0>(c[l>>2]|0)>>>0:0)?(c[q>>2]=(c[(c[j>>2]|0)+616>>2]|0)+((c[l>
x3e;2]|0)*48|0),c[p>>2]=gl(c[k>>2]|0,c[q>>2]|0,c[m>>2]|0,c[o>>2]|0)|0,(c[p>
;>2]|0)==0):0){c[c[n>>2]>>2]=c[q>>2];c[h>>2]=0;d=c[h>>2]|0;i=r;return d|0
}c[c[m>>2]>>2]=0;c[c[n>>2]>>2]=0;c[c[o>>2]>>2]=0;c[h>>2]=6
;d=c[h>>2]|0;i=r;return d|0}function gl(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;r
=i;i=i+48|0;h=r+28|0;j=r+24|0;k=r+20|0;l=r+16|0;m=r+12|0;p=r+8|0;q=r+4|0;n=r+32|0;o=r;c[j>>2]=a;c[k>>2]=d;c[
l>>2]=f;c[m>>2]=g;a:do if(((c[j>>2]|0)>>>0>=(e[(c[k>>2]|0)+40>
x3e;1]|0)>>>0?(c[j>>2]|0)>>>0<=(e[(c[k>>2]|0)+42>>1]|0)>
x3e;>0:0)?(c[p>>2]=c[(c[k>>2]|0)+4>>2],c[q>>2]=(c[p>>2]|0)+((c[c[k>
x3e;2]>>2]|0)*40|0),c[p>>2]|0):0){while(1){if((c[p>>2]|0)>>>0>=(c[q>>
;2]|0)>>>0)break a;if((c[j>>2]|0)>>>0>=(e[c[p>>2]>>1]|0)>
x3e;>0?(c[j>>2]|0)>>>0<=(e[(c[p>>2]|0)+2>>1]|0)>>>0:0)break
;c[p>>2]=(c[p>>2]|0)+40}b[n>>1]=(c[j>>2]|0)-(e[c[p>>2]>>1]|0);b:do switch
(e[(c[p>>2]|0)+4>>1]|0|0){case 3:case 1:{c[c[m>>2]>>2]=c[(c[(c[p>>2]|0)+28>
;>2]|0)+((e[n>>1]|0)<<2)>>2];break}case 2:{d=(c[(c[p>>2]|0)+8>>2]|0)+(_(c
[(c[p>>2]|0)+12>>2]|0,e[n>>1]|0)|0)|0;c[c[m>>2]>>2]=d;break}case 5:case 4:{c[o
>>2]=0;while(1){if((c[o>>2]|0)>>>0>=(c[(c[p>>2]|0)+24>>2]|0)>
x3e;>0)break a;if((e[(c[(c[p>>2]|0)+32>>2]|0)+(c[o>>2]<<1)>>1]|0|0)==(c[j
>>2]|0))break;c[o>>2]=(c[o>>2]|0)+1}if((e[(c[p>>2]|0)+4>>1]|0|0)==4){c[c[m>
;>2]>>2]=c[(c[(c[p>>2]|0)+28>>2]|0)+(c[o>>2]<<2)>>2];break b}else
{d=(c[(c[p>>2]|0)+8>>2]|0)+(_(c[o>>2]|0,c[(c[p>>2]|0)+12>>2]|0)|0)|0;c[c[m>
;>2]>>2]=d;break b}}default:break a}while(0);c[c[l>>2]>>2]=c[p>>2];c[h>>2
]=0;d=c[h>>2]|0;i=r;return d|0}while(0);c[c[l>>2]>>2]=0;c[c[m>>2]>>2]=0;c[h>
;>2]=6;d=c[h>>2]|0;i=r;return d|0}function hl(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;n=i;i=i+32
|0;g=n+16|0;h=n+12|0;j=n+8|0;k=n+4|0;l=n;m=n+20|0;c[h>>2]=b;c[j>>2]=d;c[k>>2]=f;c[l>>2]=
0;switch(e[(c[j>>2]|0)+6>>1]|0|0){case 8:case 2:case 1:{b=le(c[h>>2]|0,8172,m)|0;c[l>>2]=
b;if(!b){a[c[k>>2]>>0]=a[m>>0]|0;a[(c[k>>2]|0)+1>>0]=a[m+1>>0]|0;a[(
c[k>>2]|0)+2>>0]=a[m+2>>0]|0;a[(c[k>>2]|0)+3>>0]=a[m+3>>0]|0;a[(c[k
x3e;>2]|0)+4>>0]=a[m+4>>0]|0;a[(c[k>>2]|0)+5>>0]=0;a[(c[k>>2]|0)+6>
x3e;0]=0;a[(c[k>>2]|0)+7>>0]=0}break}case 9:case 7:case 6:{c[l>>2]=le(c[h>>2]|0,8200,c[k
>>2]|0)|0;break}default:{if((e[(c[j>>2]|0)+4>>1]|0|0)!=2?(e[(c[j>>2]|0)+4>>1]|
0|0)!=5:0){c[g>>2]=3;b=c[g>>2]|0;i=n;return b|0}b=c[k>>2]|0;m=(c[j>>2]|0)+16|0;a[b>
x3e;0]=a[m>>0]|0;a[b+1>>0]=a[m+1>>0]|0;a[b+2>>0]=a[m+2>>0]|0;a[b+3>>
0]=a[m+3>>0]|0;a[b+4>>0]=a[m+4>>0]|0;a[b+5>>0]=a[m+5>>0]|0;a[b+6>>0]=
a[m+6>>0]|0;a[b+7>>0]=a[m+7>>0]|0}}c[g>>2]=c[l>>2];b=c[g>>2]|0;i=n;return
b|0}function il(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;w=i;i=i+64|0;l=w+48|0;x=w+44|0;y=w+40|0;m=w+36|0;n=w+32|0;o=w+28|0;p=w+24|0;s=w+20|0;r=w+16|0;t=w+12|0;v=w+8|0;u=w+4|0;q=w
;c[l>>2]=b;c[x>>2]=e;c[y>>2]=f;c[m>>2]=g;c[n>>2]=h;c[o>>2]=j;c[p>
;>2]=k;c[s>>2]=fl(c[l>>2]|0,c[y>>2]|0,c[x>>2]|0,u,v,t)|0;if(c[s>>2]|0){y=
c[s>>2]|0;i=w;return y|0}c[s>>2]=Wa[c[(c[l>>2]|0)+508>>2]&31](c[l>>2]|0,1161970772
,c[n>>2]|0,0)|0;if(c[s>>2]|0)c[s>>2]=Wa[c[(c[l>>2]|0)+508>>2]&31](c[l>
;>2]|0,1650745716,c[n>>2]|0,0)|0;if(c[s>>2]|0){y=c[s>>2]|0;i=w;return y|0}c[r>>2]=Mc
(c[n>>2]|0)|0;c[s>>2]=jl(c[v>>2]|0,c[u>>2]|0,c[r>>2]|0,c[t>>2]|0,c[(
c[l>>2]|0)+84>>2]|0,0,0,c[n>>2]|0,c[p>>2]|0,0)|0;if(c[s>>2]|0){y=c[s>>
;2]|0;i=w;return y|0}if(a[(c[v>>2]|0)+47>>0]&1|0){c[q>>2]=(a[(c[v>>2]|0)+16>
x3e;0]|0)-(a[(c[v>>2]|0)+16+1>>0]|0);a[(c[p>>2]|0)+5>>0]=(0-(d[(c[p>>2]|0)+1
x3e;>0]|0)|0)/2|0;a[(c[p>>2]|0)+6>>0]=((c[q>>2]|0)-(d[c[p>>2]>>0]|0)|0)/2
|0;a[(c[p>>2]|0)+7>>0]=((c[q>>2]|0)*12|0)/10|0}if(!(c[m>>2]&64)){y=c[s>>2
]|0;i=w;return y|0}ml(c[o>>2]|0,c[p>>2]|0);y=c[s>>2]|0;i=w;return y|0}function jl(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;L=i;i=i+96|0;u=L+72|0;v=L+68|0;q=L+64|0;x=L+60|0;M=L+56|0;y=L+52|0;z=L+48|0;A=L+44|0;B=L+40|0;r
=L+36|0;w=L+32|0;J=L+28|0;s=L+24|0;I=L+20|0;t=L+16|0;D=L+12|0;C=L+8|0;K=L+78|0;E=L+76|0;H=L+4|0;F=L+80|0;G=L;c[v>>2]=f
;c[q>>2]=g;c[x>>2]=h;c[M>>2]=j;c[y>>2]=k;c[z>>2]=l;c[A>>2]=m;c[B>
;>2]=n;c[r>>2]=o;c[w>>2]=p;c[J>>2]=c[(c[B>>2]|0)+28>>2];c[s>>2]=(
c[y>>2]|0)+76;m=Kc(c[B>>2]|0,(c[x>>2]|0)+(c[M>>2]|0)|0)|0;c[I>>2]=m;a:do if((m
|0)==0?(c[I>>2]=hl(c[B>>2]|0,c[q>>2]|0,c[r>>2]|0)|0,(c[I>>2]|0)==0):0){if(!(c[
w>>2]|0)){c[(c[s>>2]|0)+4>>2]=d[(c[r>>2]|0)+1>>0];c[c[s>>2]>>
;2]=d[c[r>>2]>>0];switch(d[(c[v>>2]|0)+46>>0]|0){case 1:{a[(c[s>>2]|0)+18>
;>0]=1;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|0)+4>>2]|0)+7>>3;break}case 2:{a[(
c[s>>2]|0)+18>>0]=3;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|0)+4>>2]|0)+3>
;>2;break}case 4:{a[(c[s>>2]|0)+18>>0]=4;c[(c[s>>2]|0)+8>>2]=(c[(c[s>>2]|
0)+4>>2]|0)+1>>1;break}case 8:{a[(c[s>>2]|0)+18>>0]=2;c[(c[s>>2]|0)+8>>
;2]=c[(c[s>>2]|0)+4>>2];break}default:{c[u>>2]=3;M=c[u>>2]|0;i=L;return M|0}}c[t>
x3e;2]=_(c[c[s>>2]>>2]|0,c[(c[s>>2]|0)+8>>2]|0)|0;if(!(c[t>>2]|0))break;c[I>
;>2]=xc(c[y>>2]|0,c[t>>2]|0)|0;if(c[I>>2]|0)break}switch(e[(c[q>>2]|0)+6>>
;1]|0){case 7:case 6:case 5:case 2:case 1:{c[u>>2]=kl(c[s>>2]|0,c[z>>2]|0,c[A>>2]|0,d[(c
[v>>2]|0)+46>>0]|0,b[(c[q>>2]|0)+6>>1]|0,c[r>>2]|0,c[B>>2]|0)|0;M=c[
u>>2]|0;i=L;return M|0}case 8:{M=Qc(c[B>>2]|0,1)|0;c[I>>2]=M;if(M|0){c[I>>2]=83;break a}
break}case 9:break;default:{c[u>>2]=3;M=c[u>>2]|0;i=L;return M|0}}b[K>>1]=Pc(c[B>>2]|0,I
)|0;if((c[I>>2]|0)==0?(c[D>>2]=hc(c[J>>2]|0,4,0,e[K>>1]|0,0,I)|0,(c[I>>2]|0)==
0):0){b[E>>1]=b[K>>1]|0;M=ee(c[B>>2]|0,e[K>>1]<<2)|0;c[I>>2]=M;b:do
if(!M){c[C>>2]=c[D>>2];while(1){q=c[B>>2]|0;if((e[E>>1]|0)<=0)break;M=ie(q)|0;b[c[C
>>2]>>1]=M;M=he(c[B>>2]|0)|0;a[(c[C>>2]|0)+2>>0]=M;M=he(c[B>>2]|0)|0
;a[(c[C>>2]|0)+3>>0]=M;b[E>>1]=(b[E>>1]|0)+-1<<16>>16;c[C>>
;2]=(c[C>>2]|0)+4}ge(q);b[E>>1]=b[K>>1]|0;c[C>>2]=c[D>>2];while(1){if((e[E>
;>1]|0)<=0)break b;c[I>>2]=gl(e[c[C>>2]>>1]|0,c[v>>2]|0,H,G)|0;if(c[I>>
;2]|0)break b;c[I>>2]=jl(c[v>>2]|0,c[H>>2]|0,c[x>>2]|0,c[G>>2]|0,c[y>>
;2]|0,(c[z>>2]|0)+(a[(c[C>>2]|0)+2>>0]|0)|0,(c[A>>2]|0)+(a[(c[C>>2]|0)+3>
x3e;0]|0)|0,c[B>>2]|0,F,(c[w>>2]|0)+1|0)|0;if(c[I>>2]|0)break b;b[E>>1]=(b[E>>
1]|0)+-1<<16>>16;c[C>>2]=(c[C>>2]|0)+4}}while(0);Fb(c[J>>2]|0,c[D>>2
]|0);c[D>>2]=0}}while(0);c[u>>2]=c[I>>2];M=c[u>>2]|0;i=L;return M|0}function kl(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;C=i;i=i+64|
0;n=C+48|0;o=C+44|0;p=C+40|0;q=C+36|0;r=C+32|0;s=C+52|0;t=C+28|0;u=C+24|0;v=C+20|0;y=C+16|0;w=C+12|0;x=C+8|0;z=C+4|0;B=C+54|0;A=
C;c[o>>2]=f;c[p>>2]=g;c[q>>2]=h;c[r>>2]=j;b[s>>1]=k;c[t>>2]=l;c[u>
;>2]=m;if(((c[p>>2]|0)>=0?!((c[q>>2]|0)<0?1:((c[p>>2]|0)+(d[(c[t>>2]|0)+1
>>0]|0)|0)>(c[(c[o>>2]|0)+4>>2]|0)):0)?((c[q>>2]|0)+(d[c[t>>2]>>
;0]|0)|0)<=(c[c[o>>2]>>2]|0):0){c[y>>2]=d[(c[t>>2]|0)+1>>0];c[w>>
;2]=d[c[t>>2]>>0];c[z>>2]=_(c[r>>2]|0,c[y>>2]|0)|0;a[B>>0]=0;switch(
e[s>>1]|0|0){case 6:case 1:{switch(c[r>>2]|0){case 1:{c[A>>2]=(c[y>>2]|0)+7>>3
;break}case 2:{c[A>>2]=(c[y>>2]|0)+3>>2;break}case 4:{c[A>>2]=(c[y>>2]|0)+1>
;>1;break}default:c[A>>2]=c[y>>2]}c[x>>2]=_(c[w>>2]|0,c[A>>2]|0)|0;a[B>
;>0]=1;break}case 7:case 5:case 2:{c[z>>2]=_(c[y>>2]|0,c[r>>2]|0)|0;c[x>>2]=(_(c[w
x3e;>2]|0,c[z>>2]|0)|0)+7>>3;break}default:{c[n>>2]=3;h=c[n>>2]|0;i=C;return h|0}}h
=ee(c[u>>2]|0,c[x>>2]|0)|0;c[v>>2]=h;if(!h){h=_(c[p>>2]|0,c[r>>2]|0)|0;ll(c[o
x3e;>2]|0,c[(c[u>>2]|0)+32>>2]|0,c[z>>2]|0,a[B>>0]|0,h,c[q>>2]|0,d[c[t>
;>2]>>0]|0);ge(c[u>>2]|0)}}else c[v>>2]=6;c[n>>2]=c[v>>2];h=c[n>>
;2]|0;i=C;return h|0}function ll(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,D=0,E=0,F=0;F=i;i=i+64|0;n=F+44|0;q=F+40|0;r=F+36|0;s=F+54|0;t=F+32|0;o=F+28|0;p=F+24|0;y=F+20|0;z
=F+16|0;x=F+12|0;u=F+48|0;A=F+8|0;w=F+4|0;v=F;B=F+53|0;C=F+52|0;D=F+51|0;E=F+50|0;c[n>>2]=f;c[q>>2]=g;c[r>
;>2]=h;a[s>>0]=j;c[t>>2]=k;c[o>>2]=l;c[p>>2]=m;c[z>>2]=c[(c[n>>
2]|0)+8>>2];c[y>>2]=c[(c[n>>2]|0)+12>>2];if((c[z>>2]|0)<0){l=_(c[z>
x3e;2]|0,(c[c[n>>2]>>2]|0)-1|0)|0;c[y>>2]=(c[y>>2]|0)+(0-l)}l=(c[t>>2]>
x3e;3)+(_(c[o>>2]|0,c[z>>2]|0)|0)|0;c[y>>2]=(c[y>>2]|0)+l;b[u>>1]=0;c[A>
x3e;2]=0;c[x>>2]=c[p>>2];while(1){if((c[x>>2]|0)<=0)break;c[w>>2]=c[y>>2];
c[v>>2]=c[r>>2];a[B>>0]=c[t>>2]&7;a[C>>0]=8-(d[B>>0]|0);if((c[v
>>2]|0)>=8){c[v>>2]=(c[v>>2]|0)-8;do{if((c[A>>2]|0)>>>0<8){l=c[
q>>2]|0;c[q>>2]=l+1;b[u>>1]=e[u>>1]|(d[l>>0]&65535)<<8-(c[A>
;>2]|0)&65535;c[A>>2]=(c[A>>2]|0)+8}a[D>>0]=e[u>>1]>>8;n=d[D>
x3e;0]|0;if(a[B>>0]|0){l=c[w>>2]|0;a[l>>0]=d[l>>0]|n>>d[B>>0]&255
;l=(c[w>>2]|0)+1|0;a[l>>0]=d[l>>0]|d[D>>0]<<d[C>>0]&255}else{l=
c[w>>2]|0;a[l>>0]=d[l>>0]|n}c[w>>2]=(c[w>>2]|0)+1;b[u>>1]=e[u>
x3e;1]<<8;c[A>>2]=(c[A>>2]|0)-8;c[v>>2]=(c[v>>2]|0)-8}while((c[v>>2]|
0)>=0);c[v>>2]=(c[v>>2]|0)+8}if((c[v>>2]|0)>0){if((c[A>>2]|0)<(c[v>
x3e;2]|0)){l=c[q>>2]|0;c[q>>2]=l+1;b[u>>1]=e[u>>1]|(d[l>>0]&65535)<
x3c;8-(c[A>>2]|0)&65535;c[A>>2]=(c[A>>2]|0)+8}a[E>>0]=e[u>>1]>>
8&255&~(255>>c[v>>2]);l=c[w>>2]|0;a[l>>0]=d[l>>0]|d[E>>0]
x3e;>d[B>>0]&255;if((c[v>>2]|0)>(d[C>>0]|0)){l=(c[w>>2]|0)+1|0;a[l>
x3e;0]=d[l>>0]|d[E>>0]<<d[C>>0]&255}b[u>>1]=e[u>>1]<<
c[v>>2];c[A>>2]=(c[A>>2]|0)-(c[v>>2]|0)}if(a[s>>0]|0){b[u>>1]=0;c[A
x3e;>2]=0}c[y>>2]=(c[y>>2]|0)+(c[z>>2]|0);c[x>>2]=(c[x>>2]|0)+-1}i=F;return
}function ml(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;z=i;i=i+80|0;l
=z+60|0;m=z+56|0;w=z+52|0;f=z+48|0;r=z+44|0;q=z+40|0;g=z+36|0;j=z+32|0;h=z+28|0;k=z+24|0;o=z+20|0;t=z+16|0;y=z+12|0;u=z+66|0;n=z
+8|0;x=z+65|0;v=z+4|0;p=z;s=z+64|0;c[l>>2]=b;c[m>>2]=e;c[q>>2]=c[(c[l>>2]|0)+12>>
;2];c[w>>2]=c[c[l>>2]>>2];c[r>>2]=c[(c[l>>2]|0)+8>>2];c[f>>
;2]=0;a:while(1){if((c[f>>2]|0)>=(c[w>>2]|0))break;c[g>>2]=c[q>>2];c[j>>2
]=(c[q>>2]|0)+(c[r>>2]|0);while(1){if((c[g>>2]|0)>>>0>=(c[j>>2]|0)
x3e;>>0)break;if(a[c[g>>2]>>0]|0)break a;c[g>>2]=(c[g>>2]|0)+1}c[q>>
2]=c[j>>2];c[f>>2]=(c[f>>2]|0)+1}if((c[f>>2]|0)>=(c[w>>2]|0)){c[(c[l>
;>2]|0)+4>>2]=0;c[c[l>>2]>>2]=0;c[(c[l>>2]|0)+8>>2]=0;a[(c[l>>2
]|0)+18>>0]=1;i=z;return}if((c[f>>2]|0)>0){c[q>>2]=c[(c[l>>2]|0)+12>>2];e
=(c[q>>2]|0)+(_(c[f>>2]|0,c[r>>2]|0)|0)|0;Ts(c[q>>2]|0,e|0,_((c[w>>2]|0)-(c[f
x3e;>2]|0)|0,c[r>>2]|0)|0)|0;a[c[m>>2]>>0]=(d[c[m>>2]>>0]|0)-(c[f>
x3e;2]|0);a[(c[m>>2]|0)+3>>0]=(a[(c[m>>2]|0)+3>>0]|0)-(c[f>>2]|0);a[(c[m>
x3e;2]|0)+6>>0]=(a[(c[m>>2]|0)+6>>0]|0)-(c[f>>2]|0);e=c[l>>2]|0;c[e>>
;2]=(c[e>>2]|0)-(c[f>>2]|0);c[w>>2]=(c[w>>2]|0)-(c[f>>2]|0)}c[q>>2]=(
c[(c[l>>2]|0)+12>>2]|0)+(_((c[w>>2]|0)-1|0,c[r>>2]|0)|0);c[f>>2]=0;b:while(1){
if((c[f>>2]|0)>=(c[w>>2]|0))break;c[h>>2]=c[q>>2];c[k>>2]=(c[q>>
;2]|0)+(c[r>>2]|0);while(1){if((c[h>>2]|0)>>>0>=(c[k>>2]|0)>>>0
)break;if(a[c[h>>2]>>0]|0)break b;c[h>>2]=(c[h>>2]|0)+1}c[q>>2]=(c[q>>
;2]|0)+(0-(c[r>>2]|0));c[f>>2]=(c[f>>2]|0)+1}if((c[f>>2]|0)>0){a[c[m>>2]
x3e;>0]=(d[c[m>>2]>>0]|0)-(c[f>>2]|0);c[w>>2]=(c[w>>2]|0)-(c[f>>
;2]|0);e=c[l>>2]|0;c[e>>2]=(c[e>>2]|0)-(c[f>>2]|0)}c:do{c[q>>2]=c[(c[l>
x3e;2]|0)+12>>2];c[o>>2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);while(1){if((c
[q>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;if(d[c[q>>2]>>0]
x26;128|0)break c;c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}c[q>>2]=c[(c[l>>2]|0)+12>
;>2];c[o>>2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);while(1){f=(c[l>>2]|0
)+4|0;g=c[f>>2]|0;if((c[q>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[y
>>2]=g;c[n>>2]=c[q>>2];a[u>>0]=d[c[n>>2]>>0]<<1;c[t>
x3e;2]=8;while(1){if((c[t>>2]|0)>=(c[y>>2]|0))break;a[x>>0]=a[(c[n>>2]|0)+1>
x3e;0]|0;a[c[n>>2]>>0]=d[u>>0]|d[x>>0]>>7;a[u>>0]=d[x>>0]
x3c;<1;c[n>>2]=(c[n>>2]|0)+1;c[t>>2]=(c[t>>2]|0)+8}a[c[n>>2]>>0
]=a[u>>0]|0;c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}c[f>>2]=g+-1;e=(c[m>>2]|
0)+2|0;a[e>>0]=(a[e>>0]|0)+1<<24>>24;e=(c[m>>2]|0)+5|0;a[e>>0]=(a[e
x3e;>0]|0)+1<<24>>24;e=(c[m>>2]|0)+1|0;a[e>>0]=(a[e>>0]|0)+-1<<
24>>24}while((c[(c[l>>2]|0)+4>>2]|0)>0);d:while(1){c[v>>2]=(c[(c[l>>2]|0)+
4>>2]|0)-1;c[q>>2]=(c[(c[l>>2]|0)+12>>2]|0)+(c[v>>2]>>3);c[p>
x3e;2]=(c[q>>2]|0)+(_(c[w>>2]|0,c[r>>2]|0)|0);a[s>>0]=128>>(c[v>>2]
x26;7);while(1){if((c[q>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;if(d[c[q>
x3e;2]>>0]&d[s>>0]|0){f=37;break d}c[q>>2]=(c[q>>2]|0)+(c[r>>2]|0)}y=(c[l
>>2]|0)+4|0;c[y>>2]=(c[y>>2]|0)+-1;y=(c[m>>2]|0)+1|0;a[y>>0]=(a[y>>0
]|0)+-1<<24>>24;if((c[(c[l>>2]|0)+4>>2]|0)<=0){f=37;break}}if((f|0)==37){i=z;return
}}function nl(a){a=a|0;var b=0,d=0;b=i;i=i+16|0;d=b;c[d>>2]=a;c[d>>2]=c[d>>2];i=b;return}function
ol(d){d=d|0;var f=0,g=0,h=0,j=0,k=0,l=0,m=0,n=0;n=i;i=i+32|0;f=n+20|0;j=n+16|0;l=n+12|0;g=n+8|0;m=n+4|0;k=n+24|0;h=n;c[f>
x3e;2]=d;c[j>>2]=c[(c[f>>2]|0)+100>>2];c[l>>2]=(c[f>>2]|0)+628;if(!(a[c[l>
;>2]>>0]|0)){m=c[l>>2]|0;a[m>>0]=0;i=n;return}c[g>>2]=c[(c[f>>2]|0)+468
x3e;>2];if((c[g>>2]|0)!=131072){if((c[g>>2]|0)!=163840){m=c[l>>2]|0;a[m>>0]=0;i=n;return
}c[h>>2]=(c[l>>2]|0)+4;Fb(c[j>>2]|0,c[(c[h>>2]|0)+4>>2]|0);c[(c[h>>2
]|0)+4>>2]=0;b[c[h>>2]>>1]=0;m=c[l>>2]|0;a[m>>0]=0;i=n;return}c[m>>2
]=(c[l>>2]|0)+4;Fb(c[j>>2]|0,c[(c[m>>2]|0)+4>>2]|0);c[(c[m>>2]|0)+4>>
;2]=0;b[c[m>>2]>>1]=0;b[k>>1]=0;while(1){f=c[j>>2]|0;if((e[k>>1]|0)>=(e[(
c[m>>2]|0)+2>>1]|0))break;Fb(f,c[(c[(c[m>>2]|0)+8>>2]|0)+(e[k>>1]<<2
)>>2]|0);c[(c[(c[m>>2]|0)+8>>2]|0)+(e[k>>1]<<2)>>2]=0;b[k>>
;1]=(b[k>>1]|0)+1<<16>>16}Fb(f,c[(c[m>>2]|0)+8>>2]|0);c[(c[m>>2]|0)+
8>>2]=0;b[(c[m>>2]|0)+2>>1]=0;m=c[l>>2]|0;a[m>>0]=0;i=n;return}function pl(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;c[h>>2]=c[h>>2];c[g>>2]=c[g>>2];c[f>>2]=c[f>>2];i=e;return 7}function
ql(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[f>>2]=c[f>
;>2];c[e>>2]=c[e>>2];i=d;return 0}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,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=i;i=i+96|0;g=E+88|0;h=E+84|0;j=E+80|0;D=E+76|0;l=E+72|0;s=
E+68|0;y=E+64|0;z=E+60|0;k=E+56|0;w=E+52|0;C=E+48|0;r=E+44|0;n=E+40|0;x=E+36|0;B=E+32|0;p=E+28|0;v=E+24|0;t=E+20|0;u=E+16|0;A=E+
12|0;o=E+8|0;m=E+4|0;q=E;c[g>>2]=b;c[h>>2]=e;c[j>>2]=f;c[D>>2]=0;c[s>>2]=1;c[y
>>2]=c[(c[g>>2]|0)+772>>2];c[z>>2]=(c[y>>2]|0)+(c[(c[g>>2]|0)+776>
;>2]|0);c[y>>2]=(c[y>>2]|0)+4;c[s>>2]=1;c[l>>2]=c[(c[g>>2]|0)+780>
x3e;2];while(1){if((c[l>>2]|0)>>>0<=0){b=28;break}if(((c[y>>2]|0)+6|0)>>>
0>(c[z>>2]|0)>>>0){b=28;break}c[k>>2]=c[y>>2];c[w>>2]=c[k>>
;2];c[y>>2]=(c[y>>2]|0)+2;c[C>>2]=((d[(c[y>>2]|0)+-2>>0]&65535)<<
;8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[y>>2]=(c[y>>2]|0)+2;c[
r>>2]=((d[(c[y>>2]|0)+-2>>0]&65535)<<8|(d[(c[y>>2]|0)+-2+1>>0]
x26;65535)<<0)&65535;c[y>>2]=(c[y>>2]|0)+2;c[n>>2]=((d[(c[y>>2]|0)+-2>
;>0]&65535)<<8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[B>>
;2]=0;c[C>>2]=c[C>>2];c[w>>2]=(c[k>>2]|0)+(c[r>>2]|0);if((c[w>>2]|0)
x3e;>>0>(c[z>>2]|0)>>>0)c[w>>2]=c[z>>2];a:do if(c[(c[g>>2]|
0)+784>>2]&c[s>>2]|0?((c[y>>2]|0)+8|0)>>>0<=(c[w>>2]|0)>
x3e;>0:0){c[y>>2]=(c[y>>2]|0)+2;c[x>>2]=((d[(c[y>>2]|0)+-2>>0]&65535
)<<8|(d[(c[y>>2]|0)+-2+1>>0]&65535)<<0)&65535;c[y>>2]=(c[y>>
;2]|0)+6;if(((c[w>>2]|0)-(c[y>>2]|0)|0)<((c[x>>2]|0)*6|0))c[x>>2]=((c[w>>
2]|0)-(c[y>>2]|0)|0)/6|0;if(!((c[n>>2]|0)>>>8)){c[p>>2]=c[h>>2]<<
;16|c[j>>2];if(c[(c[g>>2]|0)+788>>2]&c[s>>2]|0){c[v>>2]=0;c[t>>
2]=c[x>>2];while(1){if((c[v>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a
;c[u>>2]=((c[v>>2]|0)+(c[t>>2]|0)|0)>>>1;c[A>>2]=(c[y>>2]|0)+((
c[u>>2]|0)*6|0);c[A>>2]=(c[A>>2]|0)+4;c[o>>2]=d[(c[A>>2]|0)+-4>>0]
x3c;<24|d[(c[A>>2]|0)+-4+1>>0]<<16|d[(c[A>>2]|0)+-4+2>>0]<<8|d[(
c[A>>2]|0)+-4+3>>0]<<0;if((c[o>>2]|0)==(c[p>>2]|0))break;b=c[u>>2]|0
;if((c[o>>2]|0)>>>0<(c[p>>2]|0)>>>0){c[v>>2]=b+1;continue}else{
c[t>>2]=b;continue}}c[B>>2]=((a[c[A>>2]>>0]<<16>>16<<8|d[(
c[A>>2]|0)+1>>0]<<0)&65535)<<16>>16}else{c[m>>2]=c[x>>
;2];while(1){if((c[m>>2]|0)>>>0<=0)break a;c[y>>2]=(c[y>>2]|0)+4;c[q>>
;2]=d[(c[y>>2]|0)+-4>>0]<<24|d[(c[y>>2]|0)+-4+1>>0]<<16|d[(c[y>
x3e;2]|0)+-4+2>>0]<<8|d[(c[y>>2]|0)+-4+3>>0]<<0;b=c[y>>2]|0;if((c[q
x3e;>2]|0)==(c[p>>2]|0))break;c[y>>2]=b+2;c[m>>2]=(c[m>>2]|0)+-1}c[B>>2]=((
a[b>>0]<<16>>16<<8|d[(c[y>>2]|0)+1>>0]<<0)&65535)<
;<16>>16}b=c[B>>2]|0;if(c[n>>2]&8|0){c[D>>2]=b;break}else{c[D>>2]=(c
[D>>2]|0)+b;break}}}while(0);c[y>>2]=c[w>>2];c[l>>2]=(c[l>>2]|0)+-1;c[s>
x3e;2]=c[s>>2]<<1}if((b|0)==28){i=E;return c[D>>2]|0}return 0}function sl(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;n=i;i=i+48|0;f=n+36|0;h=n+32|0;m=n+16|0;k=n+12|0;g=n+8|0;j=n+4|0;l=n;c[f>>2]=a;c[h>
x3e;2]=d;c[g>>2]=c[(c[h>>2]|0)+28>>2];c[m+12>>2]=Mc(c[h>>2]|0)|0;c[m>>
;2]=Oc(c[h>>2]|0,k)|0;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}d=le(c[h>>2]|0,8240,m)|0;
c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}c[k>>2]=tl(m,c[h>>2]|0)|0;if(c[k>>
;2]|0){m=c[k>>2]|0;i=n;return m|0}b[(c[f>>2]|0)+152>>1]=b[m+4>>1]|0;c[(c[f>>2]|
0)+148>>2]=c[m>>2];d=hc(c[g>>2]|0,16,0,e[(c[f>>2]|0)+152>>1]|0,0,k)|0;c[(c[f
x3e;>2]|0)+156>>2]=d;if(c[k>>2]|0){m=c[k>>2]|0;i=n;return m|0}d=Kc(c[h>>2]|0,(c[m+12
>>2]|0)+12|0)|0;c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}d=ee(c[h>>2]|0,(e[(c[f>
;>2]|0)+152>>1]|0)<<4)|0;c[k>>2]=d;if(d|0){m=c[k>>2]|0;i=n;return m|0}c[j>>
;2]=c[(c[f>>2]|0)+156>>2];c[l>>2]=0;while(1){f=c[h>>2]|0;if((c[l>>2]|0)>=(
e[m+4>>1]|0|0))break;d=je(f)|0;c[c[j>>2]>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>>2]|0)+
4>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>>2]|0)+8>>2]=d;d=je(c[h>>2]|0)|0;c[(c[j>
x3e;2]|0)+12>>2]=d;if(((c[(c[j>>2]|0)+8>>2]|0)+(c[(c[j>>2]|0)+12>>2]|0)|0)>
;>>0<=(c[(c[h>>2]|0)+4>>2]|0)>>>0)c[j>>2]=(c[j>>2]|0)+16;c
[l>>2]=(c[l>>2]|0)+1}ge(f);m=c[k>>2]|0;i=n;return m|0}function tl(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,q=0,r=0,s=0;s=i;i=i+64|0;f=s+48|0;g=s+44|0;h=s+40|0;n=s+54|0;q=s+52|0;j=s+36|0;l=s+32|0;k=s+28|0;o=
s+24|0;p=s+8|0;m=s;c[f>>2]=a;c[g>>2]=d;b[q>>1]=0;c[j>>2]=0;c[l>>2]=0;c[k>
x3e;2]=0;c[o>>2]=(c[(c[f>>2]|0)+12>>2]|0)+12;d=Kc(c[g>>2]|0,c[o>>2]|0)|0;c[h
x3e;>2]=d;if(d|0){r=c[h>>2]|0;i=s;return r|0}b[n>>1]=0;a:while(1){if((e[n>>1]|0|0)>=(e[(
c[f>>2]|0)+4>>1]|0|0))break;d=le(c[g>>2]|0,8264,p)|0;c[h>>2]=d;if(d|0){r=5;break}do if(((
c[p+8>>2]|0)+(c[p+12>>2]|0)|0)>>>0<=(c[(c[g>>2]|0)+4>>2]|0)>>
;>0){b[q>>1]=(b[q>>1]|0)+1<<16>>16;if((c[p>>2]|0)!=1751474532?(c[p>
x3e;2]|0)!=1651008868:0){if((c[p>>2]|0)==1397313095){c[l>>2]=1;break}if((c[p>>2]|0)!=1296389185)break
;c[k>>2]=1;break}c[j>>2]=1;if((c[p+12>>2]|0)>>>0<54){r=10;break a}d=Kc(c[g>
;>2]|0,(c[p+8>>2]|0)+12|0)|0;c[h>>2]=d;if(d|0){r=27;break a}c[m>>2]=Oc(c[g>>2]|0,h)|
0;if(c[h>>2]|0){r=27;break a}if((c[m>>2]|0)!=1594834165){r=14;break a}d=Kc(c[g>>2]|0,(c[o>>
;2]|0)+((e[n>>1]|0)+1<<4)|0)|0;c[h>>2]=d;if(d|0){r=27;break a}}while(0);b[n>>1]=(b[n>
;>1]|0)+1<<16>>16}if((r|0)==5){b[n>>1]=(b[n>>1]|0)+-1<<16>>16;b
[(c[f>>2]|0)+4>>1]=b[n>>1]|0}else if((r|0)==10){c[h>>2]=142;r=c[h>>2]|0;i=s;return
r|0}else if((r|0)==14){c[h>>2]=142;r=c[h>>2]|0;i=s;return r|0}else if((r|0)==27){r=c[h>>2]|0;i=s;
return r|0}b[(c[f>>2]|0)+4>>1]=b[q>>1]|0;if(!(e[(c[f>>2]|0)+4>>1]|0)){c[h>
;>2]=2;r=c[h>>2]|0;i=s;return r|0}if((c[j>>2]|0)==0?!((c[l>>2]|0)!=0&(c[k>>2]|
0)!=0):0){c[h>>2]=142;r=c[h>>2]|0;i=s;return r|0}c[h>>2]=0;r=c[h>>2]|0;i=s;return r|0}function
ul(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;E=i;i=i
+80|0;B=E+72|0;j=E+68|0;C=E+78|0;D=E+64|0;r=E+60|0;z=E+56|0;t=E+52|0;s=E+48|0;u=E+44|0;q=E+40|0;w=E+36|0;v=E+32|0;o=E+28|0;x=E+24
|0;p=E+20|0;y=E+16|0;k=E+12|0;m=E+8|0;l=E+4|0;n=E;A=E+76|0;c[B>>2]=f;c[j>>2]=g;a[C>>0]=h;c[r>
x3e;2]=c[(c[j>>2]|0)+28>>2];f=c[B>>2]|0;if(a[C>>0]|0){c[o>>2]=f+300+36;c[x>
;>2]=(c[B>>2]|0)+300+40;c[D>>2]=Wa[c[(c[B>>2]|0)+508>>2]&31](c[B>>2]|
0,1986884728,c[j>>2]|0,z)|0;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}c[s>>2]=e[(c[B>
;>2]|0)+300+34>>1];if((c[s>>2]|0)>>>0>(((c[z>>2]|0)>>>0)/4
|0)>>>0)c[s>>2]=((c[z>>2]|0)>>>0)/4|0;b[(c[B>>2]|0)+300+34>>
;1]=0;c[q>>2]=c[o>>2];c[w>>2]=c[x>>2]}else{c[p>>2]=f+216+36;c[y>>2]=(
c[B>>2]|0)+216+40;c[D>>2]=Wa[c[(c[B>>2]|0)+508>>2]&31](c[B>>2]|0,1752003704
,c[j>>2]|0,z)|0;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}c[s>>2]=e[(c[B>>2]|0)+
216+34>>1];if((c[s>>2]|0)>>>0>(((c[z>>2]|0)>>>0)/4|0)>>
;>0)c[s>>2]=((c[z>>2]|0)>>>0)/4|0;b[(c[B>>2]|0)+216+34>>1]=0;c[q>
;>2]=c[p>>2];c[w>>2]=c[y>>2]}c[t>>2]=(e[(c[B>>2]|0)+260+4>>1]|0
)-(c[s>>2]|0);c[u>>2]=(((c[z>>2]|0)-(c[s>>2]<<2)|0)>>>0)/2|0;if
((c[t>>2]|0)<0)c[t>>2]=0;y=hc(c[r>>2]|0,4,0,c[s>>2]|0,0,D)|0;c[c[q>>2]>
;>2]=y;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}y=hc(c[r>>2]|0,2,0,c[t>>2]|0,0,D)|0
;c[c[w>>2]>>2]=y;if(c[D>>2]|0){D=c[D>>2]|0;i=E;return D|0}z=ee(c[j>>2]|0,c[z
x3e;>2]|0)|0;c[D>>2]=z;if(z|0){D=c[D>>2]|0;i=E;return D|0}c[v>>2]=c[(c[j>>2]|0)+32
x3e;>2];c[k>>2]=c[c[q>>2]>>2];c[m>>2]=(c[k>>2]|0)+(c[s>>2]<
;<2);while(1){if((c[k>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;c[v>>
;2]=(c[v>>2]|0)+2;b[c[k>>2]>>1]=(d[(c[v>>2]|0)+-2>>0]&65535)<<8
|(d[(c[v>>2]|0)+-2+1>>0]&65535)<<0;c[v>>2]=(c[v>>2]|0)+2;b[(c[k>>
;2]|0)+2>>1]=a[(c[v>>2]|0)+-2>>0]<<16>>16<<8|d[(c[v>>2]|0)+-
2+1>>0]<<0;c[k>>2]=(c[k>>2]|0)+4}c[l>>2]=c[c[w>>2]>>2];c[n
>>2]=(c[l>>2]|0)+(((c[t>>2]|0)<(c[u>>2]|0)?c[t>>2]|0:c[u>>2]|0)
x3c;<1);while(1){if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[v>
x3e;2]=(c[v>>2]|0)+2;b[c[l>>2]>>1]=a[(c[v>>2]|0)+-2>>0]<<16>>
;16<<8|d[(c[v>>2]|0)+-2+1>>0]<<0;c[l>>2]=(c[l>>2]|0)+2}a:do if((c[u
x3e;>2]|0)>0?(c[t>>2]|0)>(c[u>>2]|0):0){b[A>>1]=b[(c[c[w>>2]>>2
]|0)+((c[u>>2]|0)-1<<1)>>1]|0;c[n>>2]=(c[c[w>>2]>>2]|0)+(c[t>
x3e;2]<<1);while(1){if((c[l>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a
;b[c[l>>2]>>1]=b[A>>1]|0;c[l>>2]=(c[l>>2]|0)+2}}while(0);ge(c[j>>2]|
0);g=c[s>>2]&65535;f=c[B>>2]|0;if(a[C>>0]|0){b[f+300+34>>1]=g;D=c[D>>2]|0
;i=E;return D|0}else{b[f+216+34>>1]=g;D=c[D>>2]|0;i=E;return D|0}return 0}function vl(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;s=i;i=i+64|0;e=s+48|0;k=s+44|0;r=s+40|0;n=s+36|0;j=s+32|0;g=s+28|0;q=s+24
|0;h=s+20|0;f=s+16|0;p=s+12|0;l=s+8|0;o=s+4|0;m=s;c[e>>2]=a;c[k>>2]=d;c[r>>2]=0;c[n>>2]=
c[(c[k>>2]|0)+28>>2];c[(c[e>>2]|0)+612>>2]=0;c[r>>2]=Wa[c[(c[e>>2]|0
)+508>>2]&31](c[e>>2]|0,1161972803,c[k>>2]|0,0)|0;if(c[r>>2]|0)c[r>>2]=Wa
[c[(c[e>>2]|0)+508>>2]&31](c[e>>2]|0,1651273571,c[k>>2]|0,0)|0;if(c[r>>2]|
0){r=c[r>>2]|0;i=s;return r|0}c[q>>2]=Mc(c[k>>2]|0)|0;d=ee(c[k>>2]|0,8)|0;c[r>>
;2]=d;if(d|0){r=c[r>>2]|0;i=s;return r|0}c[j>>2]=je(c[k>>2]|0)|0;c[g>>2]=je(c[k>>
;2]|0)|0;ge(c[k>>2]|0);if((c[j>>2]|0)!=131072|(c[g>>2]|0)>>>0>=65536){c[r>
;>2]=3;r=c[r>>2]|0;i=s;return r|0}j=hc(c[n>>2]|0,48,0,c[g>>2]|0,0,r)|0;c[(c[e>>2]|0
)+616>>2]=j;if(c[r>>2]|0){r=c[r>>2]|0;i=s;return r|0}c[(c[e>>2]|0)+612>>2]=c[g
>>2];c[h>>2]=c[(c[e>>2]|0)+616>>2];c[f>>2]=c[g>>2];j=ee(c[k>>
;2]|0,(c[g>>2]|0)*48|0)|0;c[r>>2]=j;if(j|0){r=c[r>>2]|0;i=s;return r|0}while(1){if((c[f>>
;2]|0)>>>0<=0)break;j=le(c[k>>2]|0,8288,c[h>>2]|0)|0;c[r>>2]=j;if(j|0)break;j=
le(c[k>>2]|0,8308,(c[h>>2]|0)+16|0)|0;c[r>>2]=j;if(j|0)break;j=le(c[k>>2]|0,8308,(c[h>
;>2]|0)+28|0)|0;c[r>>2]=j;if(j|0)break;j=le(c[k>>2]|0,8360,c[h>>2]|0)|0;c[r>>2]=j;if
(j|0)break;c[f>>2]=(c[f>>2]|0)+-1;c[h>>2]=(c[h>>2]|0)+48}ge(c[k>>2]|0);c[p>
;>2]=c[(c[e>>2]|0)+616>>2];c[l>>2]=c[g>>2];a:while(1){if((c[l>>2]|0)>
;>>0<=0){e=30;break}c[m>>2]=c[c[p>>2]>>2];j=Kc(c[k>>2]|0,(c[q>>
2]|0)+(c[(c[p>>2]|0)+8>>2]|0)|0)|0;c[r>>2]=j;if(j|0){e=30;break}j=ee(c[k>>2]|0,c[c[p>
;>2]>>2]<<3)|0;c[r>>2]=j;if(j|0){e=30;break}j=hc(c[n>>2]|0,40,0,c[c[p>>2]
x3e;>2]|0,0,r)|0;c[(c[p>>2]|0)+4>>2]=j;if(c[r>>2]|0){e=30;break}c[o>>2]=c[(c[p>
;>2]|0)+4>>2];while(1){e=c[k>>2]|0;if((c[m>>2]|0)>>>0<=0)break;j=ie(e)|0;
b[c[o>>2]>>1]=j;j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+2>>1]=j;j=(c[q>>2]|0
)+(c[(c[p>>2]|0)+8>>2]|0)|0;j=j+(je(c[k>>2]|0)|0)|0;c[(c[o>>2]|0)+36>>2]=j;c[m
>>2]=(c[m>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+40}ge(e);c[m>>2]=c[c[p>>2]
x3e;>2];c[o>>2]=c[(c[p>>2]|0)+4>>2];while(1){if((c[m>>2]|0)>>>0<
;=0)break;j=Kc(c[k>>2]|0,c[(c[o>>2]|0)+36>>2]|0)|0;c[r>>2]=j;if(j|0){e=30;break a}j=ee(c
[k>>2]|0,8)|0;c[r>>2]=j;if(j|0){e=30;break a}j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+4>>
;1]=j;j=ie(c[k>>2]|0)|0;b[(c[o>>2]|0)+6>>1]=j;j=je(c[k>>2]|0)|0;c[(c[o>>2]|0)+
8>>2]=j;ge(c[k>>2]|0);c[r>>2]=wl(c[o>>2]|0,c[k>>2]|0)|0;if(c[r>>2]|0
){e=30;break a}c[m>>2]=(c[m>>2]|0)+-1;c[o>>2]=(c[o>>2]|0)+40}c[l>>2]=(c[l>
;>2]|0)+-1;c[p>>2]=(c[p>>2]|0)+48}if((e|0)==30){r=c[r>>2]|0;i=s;return r|0}return 0}function
wl(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;p=i;i=i+32|0;j=p+24|0;k=p+20|0;l=p+16|0;g=p+12|0;o=p+8|0;n=p+4|0;h=p
;m=p+28|0;c[j>>2]=b;c[k>>2]=f;c[g>>2]=c[(c[k>>2]|0)+28>>2];switch(e[(c[j>
x3e;2]|0)+4>>1]|0|0){case 3:case 1:{a[m>>0]=(e[(c[j>>2]|0)+4>>1]|0|0)==1;if((e[(c[j>
;>2]|0)+2>>1]|0|0)<(e[c[j>>2]>>1]|0|0)){c[l>>2]=3;o=c[l>>2]|0;i=p;return
o|0}c[o>>2]=(e[(c[j>>2]|0)+2>>1]|0)-(e[c[j>>2]>>1]|0)+1;c[(c[j>>2]|
0)+24>>2]=c[o>>2];c[o>>2]=(c[o>>2]|0)+1;c[h>>2]=d[m>>0]|0|0?4:2;f=hc
(c[g>>2]|0,4,0,c[o>>2]|0,0,l)|0;c[(c[j>>2]|0)+28>>2]=f;if(c[l>>2]|0){o=c[l>
;>2]|0;i=p;return o|0}f=ee(c[k>>2]|0,_(c[o>>2]|0,c[h>>2]|0)|0)|0;c[l>>2]=f;if(f|0){
o=c[l>>2]|0;i=p;return o|0}c[n>>2]=0;while(1){if((c[n>>2]|0)>>>0>=(c[o>
x3e;2]|0)>>>0)break;b=c[(c[j>>2]|0)+8>>2]|0;g=c[k>>2]|0;if(d[m>>0]|0|0)g=
je(g)|0;else g=(ie(g)|0)&65535;c[(c[(c[j>>2]|0)+28>>2]|0)+(c[n>>2]<<2)>>2
]=b+g;c[n>>2]=(c[n>>2]|0)+1}ge(c[k>>2]|0);o=c[l>>2]|0;i=p;return o|0}case 2:{c[l>
x3e;2]=xl(c[j>>2]|0,c[k>>2]|0)|0;o=c[l>>2]|0;i=p;return o|0}case 4:{c[l>>2]=yl(c[j>
x3e;2]|0,c[k>>2]|0,1)|0;o=c[l>>2]|0;i=p;return o|0}case 5:{c[l>>2]=xl(c[j>>2]|0,c[k>
;>2]|0)|0;if(c[l>>2]|0){o=c[l>>2]|0;i=p;return o|0}c[l>>2]=yl(c[j>>2]|0,c[k>
x3e;2]|0,0)|0;o=c[l>>2]|0;i=p;return o|0}default:{c[l>>2]=3;o=c[l>>2]|0;i=p;return o|0}}return 0}function
xl(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;d=h+12|0;e=h+8|0;f=h+4|0;g=h;c[e>>2]=a;c[f>>2]=b;b
=Oc(c[f>>2]|0,g)|0;c[(c[e>>2]|0)+12>>2]=b;if(c[g>>2]|0){c[d>>2]=c[g>>
;2];b=c[d>>2]|0;i=h;return b|0}else{b=le(c[f>>2]|0,8200,(c[e>>2]|0)+16|0)|0;c[g>>2]=b;c[
d>>2]=(b|0)!=0&1;b=c[d>>2]|0;i=h;return b|0}return 0}function yl(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;p=i;i=i+32|0;j=p+24|0;k=p+20|0;l=p+28|0;n=p+16|0;m=p+12|0;o=p+8|0;h=p+4|0;g=p;c[j>>2]=d;c[k
>>2]=e;a[l>>0]=f;c[g>>2]=c[(c[k>>2]|0)+28>>2];c[m>>2]=Oc(c[k>
x3e;2]|0,n)|0;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}c[(c[j>>2]|0)+24>>2]=c[m>>
;2];do if(a[l>>0]|0){e=hc(c[g>>2]|0,4,0,c[m>>2]|0,0,n)|0;c[(c[j>>2]|0)+28>>2]=
e;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}else{c[h>>2]=c[m>>2]<<2;break}}else
c[h>>2]=c[m>>2]<<1;while(0);e=hc(c[g>>2]|0,2,0,c[m>>2]|0,0,n)|0;c[(c[j>
x3e;2]|0)+32>>2]=e;if(c[n>>2]|0){o=c[n>>2]|0;i=p;return o|0}e=ee(c[k>>2]|0,c[h>>
;2]|0)|0;c[n>>2]=e;if(e|0){o=c[n>>2]|0;i=p;return o|0}c[o>>2]=0;while(1){f=c[k>>2]|0;if((
c[o>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break;e=ie(f)|0;b[(c[(c[j>>2]|0
)+32>>2]|0)+(c[o>>2]<<1)>>1]=e;if(a[l>>0]|0){e=c[(c[j>>2]|0)+8>
x3e;2]|0;e=e+((ie(c[k>>2]|0)|0)&65535)|0;c[(c[(c[j>>2]|0)+28>>2]|0)+(c[o>>2]<
x3c;2)>>2]=e}c[o>>2]=(c[o>>2]|0)+1}ge(f);o=c[n>>2]|0;i=p;return o|0}function zl(a){a=a|0
;var b=0,d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;b=j+20|0;d=j+16|0;g=j+12|0;h=j+8|0;e=j+4|0;f=j;c[b>>2]=a;c[d>>
2]=c[(c[b>>2]|0)+100>>2];c[g>>2]=c[(c[b>>2]|0)+616>>2];c[h>>2]=(c[g
x3e;>2]|0)+((c[(c[b>>2]|0)+612>>2]|0)*48|0);if(!(c[g>>2]|0)){h=c[b>>2]|0;h=h+612|0;
c[h>>2]=0;i=j;return}while(1){if((c[g>>2]|0)>>>0>=(c[h>>2]|0)>>>
;0)break;c[e>>2]=c[(c[g>>2]|0)+4>>2];c[f>>2]=(c[e>>2]|0)+((c[c[g>>2]
x3e;>2]|0)*40|0);a:do if(c[e>>2]|0)while(1){if((c[e>>2]|0)>>>0>=(c[f>>2]|
0)>>>0)break a;Fb(c[d>>2]|0,c[(c[e>>2]|0)+28>>2]|0);c[(c[e>>2]|0)+28>
;>2]=0;Fb(c[d>>2]|0,c[(c[e>>2]|0)+32>>2]|0);c[(c[e>>2]|0)+32>>2]=0;c[e>
;>2]=(c[e>>2]|0)+40}while(0);Fb(c[d>>2]|0,c[(c[g>>2]|0)+4>>2]|0);c[(c[g>>
2]|0)+4>>2]=0;c[c[g>>2]>>2]=0;c[g>>2]=(c[g>>2]|0)+48}Fb(c[d>>2]|0,c[(
c[b>>2]|0)+616>>2]|0);c[(c[b>>2]|0)+616>>2]=0;h=c[b>>2]|0;h=h+612|0;c[h>
x3e;2]=0;i=j;return}function Al(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;n=i;i=i+32|0;h=n+16|0;j=n+12|0;k=n+8|0;l=n+
4|0;m=n;c[j>>2]=e;c[k>>2]=f;c[l>>2]=g;if((c[k>>2]|0)>>>0>=(c[(c[j>
;>2]|0)+612>>2]|0)>>>0){c[h>>2]=6;f=c[h>>2]|0;i=n;return f|0}else{c[m>>
;2]=(c[(c[j>>2]|0)+616>>2]|0)+((c[k>>2]|0)*48|0);b[c[l>>2]>>1]=d[(c[m>>
;2]|0)+44>>0]|0;b[(c[l>>2]|0)+2>>1]=d[(c[m>>2]|0)+45>>0]|0;c[(c[l>>2
]|0)+12>>2]=a[(c[m>>2]|0)+16>>0]<<6;c[(c[l>>2]|0)+16>>2]=a[(c[m>
;>2]|0)+16+1>>0]<<6;c[(c[l>>2]|0)+24>>2]=(a[(c[m>>2]|0)+16+6>>0
]|0)+(d[(c[m>>2]|0)+16+2>>0]|0)+(a[(c[m>>2]|0)+16+7>>0]|0)<<6;c[(c[l>>
;2]|0)+20>>2]=(c[(c[l>>2]|0)+12>>2]|0)-(c[(c[l>>2]|0)+16>>2]|0);c[h>>
;2]=0;f=c[h>>2]|0;i=n;return f|0}return 0}function Bl(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;s=i;i=i+48|0;l=s+32|0;t=s+28|0;w=s+38|0;m=s+24|0;n=s+20|0;o=s+16|0;v=s+12|0;u=s+8|0;p=s+4|0;r=s;q=s
+36|0;c[t>>2]=f;a[w>>0]=g;c[m>>2]=h;c[n>>2]=j;c[o>>2]=k;c[v>>2]=(c[t
>>2]|0)+300;c[u>>2]=(c[t>>2]|0)+216;c[p>>2]=d[w>>0]|0|0?c[v>>2]|0:c[
u>>2]|0;b[q>>1]=b[(c[p>>2]|0)+34>>1]|0;if((e[q>>1]|0|0?c[(c[p>>2]|0)+
36>>2]|0:0)?(c[m>>2]|0)>>>0<(e[(c[t>>2]|0)+260+4>>1]|0)>>
x3e;0:0){if((c[m>>2]|0)>>>0<(e[q>>1]|0)>>>0){c[r>>2]=(c[(c[p>
;>2]|0)+36>>2]|0)+(c[m>>2]<<2);b[c[n>>2]>>1]=b[(c[r>>2]|0)+2>
;>1]|0;b[c[o>>2]>>1]=b[c[r>>2]>>1]|0}else{b[c[n>>2]>>1]=b[(c[(c
[p>>2]|0)+40>>2]|0)+((c[m>>2]|0)-(e[q>>1]|0)<<1)>>1]|0;b[c[o>
x3e;2]>>1]=b[(c[(c[p>>2]|0)+36>>2]|0)+((e[q>>1]|0)-1<<2)>>1]|0}c[l
x3e;>2]=0;w=c[l>>2]|0;i=s;return w|0}b[c[o>>2]>>1]=0;b[c[n>>2]>>1]=0;c[l
x3e;>2]=0;w=c[l>>2]|0;i=s;return w|0}function Cl(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;Dl(c[f>>2]|0,c[e>>2]|0);i=d;return 0}function Dl(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)+112>>2]=c[f>>
2];c[(c[e>>2]|0)+104>>2]=c[(c[f>>2]|0)+4+24>>2];i=d;return}function El(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[f>>2]=c[f>>2];c[e>
x3e;2]=c[e>>2];i=d;return 0}function Fl(a,b){a=a|0;b=b|0;var d=0,f=0,g=0,h=0,j=0,k=0;k=i;i=i+32|0;d=k+16|0;f=k+12|0;h=
k+8|0;j=k+4|0;g=k;c[d>>2]=a;c[f>>2]=b;c[h>>2]=0;c[j>>2]=c[(c[f>>2]|0)+92>
x3e;2];c[(c[d>>2]|0)+36>>2]=e[(c[f>>2]|0)+68>>1];c[g>>2]=0;while(1){if(!(c[3616
+(c[g>>2]<<2)>>2]|0))break;c[h>>2]=Id(c[f>>2]|0,c[3616+(c[g>>2]<
;<2)>>2]|0)|0;if(!(c[h>>2]|0))break;c[g>>2]=(c[g>>2]|0)+1}if(c[h>>2]|0){a
=c[f>>2]|0;j=c[j>>2]|0;Jd(a,j)|0;i=k;return 0}Gl(c[d>>2]|0,c[f>>2]|0,111);Pl(c[d>
x3e;2]|0,c[f>>2]|0);Rl(c[d>>2]|0,c[f>>2]|0);a=c[f>>2]|0;j=c[j>>2]|0;Jd(a,j)|0;
i=k;return 0}function Gl(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,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=
0;y=i;i=i+1024|0;t=y+1016|0;g=y+1012|0;z=y+1008|0;w=y+884|0;m=y+880|0;n=y+876|0;v=y+872|0;l=y+40|0;r=y+36|0;j=y+32|0;h=y+28|0;s=
y+24|0;o=y+20|0;p=y+16|0;q=y+12|0;k=y+8|0;u=y+4|0;x=y;c[t>>2]=d;c[g>>2]=e;c[z>>2]=f;Hl(w,c[(c[g>
;>2]|0)+100>>2]|0);c[(c[t>>2]|0)+40+8>>2]=0;c[(c[t>>2]|0)+40+396+8>>2]=0;
c[r>>2]=l+4;c[n>>2]=Dc(c[g>>2]|0,c[z>>2]|0)|0;a:do if(((c[n>>2]|0?(c[m>
x3e;2]=Cb(c[g>>2]|0,c[n>>2]|0,1)|0,(c[m>>2]|0)==0):0)?(b[(c[(c[g>>2]|0)+84>>2]|
0)+108+2>>1]|0)>0:0)?(Ns(l|0,0,832)|0,c[l+36>>2]=c[(c[t>>2]|0)+36>>2],c[(c[r>
x3e;2]|0)+8>>2]=65536,c[(c[r>>2]|0)+4>>2]=65536,c[(c[r>>2]|0)+16>>2]=0,c[(c[r
x3e;>2]|0)+12>>2]=0,c[c[r>>2]>>2]=c[g>>2],c[(c[r>>2]|0)+20>>2]=
0,c[(c[r>>2]|0)+24>>2]=0,Dl(w,l),c[m>>2]=Il(w,(c[(c[g>>2]|0)+84>>2]|0)+108|0)|
0,(c[m>>2]|0)==0):0){c[v>>2]=0;while(1){if((c[v>>2]|0)>=2)break a;c[j>>2]=(c[t>
;>2]|0)+40+((c[v>>2]|0)*396|0);c[h>>2]=w+48+((c[v>>2]|0)*28|0);c[q>>2]=0;c[m>
x3e;2]=Kl(w,c[v>>2]|0)|0;if(c[m>>2]|0)break a;Ml(w,c[v>>2]|0);c[s>>2]=c[(c[h>>
2]|0)+8>>2];c[o>>2]=(c[s>>2]|0)+((c[c[h>>2]>>2]|0)*52|0);while(1){if((c[s>
;>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[p>>2]=c[(c[s>>2]|0)+20
>>2];if((c[p>>2]|0?(c[(c[p>>2]|0)+20>>2]|0)==(c[s>>2]|0):0)?(c[p>>2]|
0)>>>0>(c[s>>2]|0)>>>0:0){c[k>>2]=(b[(c[s>>2]|0)+2>>1
]|0)-(b[(c[p>>2]|0)+2>>1]|0);if((c[k>>2]|0)<0)c[k>>2]=0-(c[k>>2]|0);if((c
[q>>2]|0)>>>0<16){r=c[k>>2]|0;z=c[q>>2]|0;c[q>>2]=z+1;c[(c[j>
x3e;2]|0)+12+(z*12|0)>>2]=r}}c[s>>2]=(c[s>>2]|0)+52}Nl(c[q>>2]|0,(c[j>>2]|0)+12
|0);c[(c[j>>2]|0)+8>>2]=c[q>>2];c[v>>2]=(c[v>>2]|0)+1}}while(0);c[v>>
;2]=0;while(1){if((c[v>>2]|0)>=2)break;c[u>>2]=(c[t>>2]|0)+40+((c[v>>2]|0)*396|0);if
((c[(c[u>>2]|0)+8>>2]|0)>>>0>0)g=c[(c[u>>2]|0)+12>>2]|0;else g=((c[(
c[t>>2]|0)+36>>2]|0)*50|0)/2048|0;c[x>>2]=g;c[(c[u>>2]|0)+204>>2]=(c[x>
x3e;2]|0)/5|0;c[(c[u>>2]|0)+208>>2]=c[x>>2];a[(c[u>>2]|0)+212>>0]=0;c[v>
x3e;2]=(c[v>>2]|0)+1}Ol(w);i=y;return}function Hl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=i;i=i+16|0;d=f+4|0;e=f;c[d>
x3e;2]=a;c[e>>2]=b;a=c[d>>2]|0;b=a+124|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));c[c[d>
x3e;2]>>2]=c[e>>2];i=f;return}function Il(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,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0;M=i;i=i+128|0;g=M+112|0;h=M+108|0;A=M+104|0;z
=M+100|0;n=M+96|0;m=M+92|0;s=M+88|0;u=M+84|0;r=M+80|0;t=M+76|0;l=M+72|0;I=M+68|0;J=M+64|0;q=M+60|0;p=M+56|0;k=M+52|0;o=M+48|0;j=
M+44|0;v=M+40|0;w=M+36|0;x=M+32|0;y=M+116|0;B=M+28|0;K=M+24|0;D=M+20|0;E=M+16|0;C=M+12|0;F=M+8|0;G=M+4|0;H=M;c[g>>2]=d
;c[h>>2]=f;c[A>>2]=0;c[s>>2]=c[(c[g>>2]|0)+4>>2];c[u>>2]=c[(c[g>
;>2]|0)+12>>2];c[r>>2]=c[(c[g>>2]|0)+8>>2];c[t>>2]=c[(c[g>>2]|0
)+16>>2];c[l>>2]=c[c[g>>2]>>2];c[(c[g>>2]|0)+28>>2]=0;c[(c[g>
x3e;2]|0)+40>>2]=0;c[(c[g>>2]|0)+48>>2]=0;c[(c[g>>2]|0)+48+12>>2]=0;c[(c[g>
;>2]|0)+48+28>>2]=0;c[(c[g>>2]|0)+48+28+12>>2]=0;c[m>>2]=b[c[h>>2]>
x3e;1];c[n>>2]=c[(c[g>>2]|0)+36>>2];do if((c[m>>2]|0)>>>0>(c[n>
x3e;2]|0)>>>0){c[m>>2]=(c[m>>2]|0)+3&-4;f=hc(c[l>>2]|0,4,c[n>>2]|0,c
[m>>2]|0,c[(c[g>>2]|0)+44>>2]|0,A)|0;c[(c[g>>2]|0)+44>>2]=f;if(c[A>>
2]|0){L=c[A>>2]|0;i=M;return L|0}else{c[(c[g>>2]|0)+36>>2]=c[m>>2];break}}while(0);c[m
x3e;>2]=(b[(c[h>>2]|0)+2>>1]|0)+2;c[n>>2]=c[(c[g>>2]|0)+24>>2];do if((c[m
>>2]|0)>>>0>(c[n>>2]|0)>>>0){c[m>>2]=(c[m>>2]|0)+2+7
x26;-8;f=hc(c[l>>2]|0,40,c[n>>2]|0,c[m>>2]|0,c[(c[g>>2]|0)+32>>2]|0,A)|0;c[(c[
g>>2]|0)+32>>2]=f;if(c[A>>2]|0){L=c[A>>2]|0;i=M;return L|0}else{c[(c[g>>2]|0)+
24>>2]=c[m>>2];break}}while(0);c[(c[g>>2]|0)+28>>2]=b[(c[h>>2]|0)+2>>
;1];c[(c[g>>2]|0)+40>>2]=b[c[h>>2]>>1];c[(c[g>>2]|0)+48+24>>2]=2;c[(
c[g>>2]|0)+48+28+24>>2]=-1;if(($d(c[h>>2]|0)|0)==1){c[(c[g>>2]|0)+48+24>>2]=-2
;c[(c[g>>2]|0)+48+28+24>>2]=1}c[(c[g>>2]|0)+4>>2]=c[s>>2];c[(c[g>>2]|
0)+12>>2]=c[u>>2];c[(c[g>>2]|0)+8>>2]=c[r>>2];c[(c[g>>2]|0)+16>
x3e;2]=c[t>>2];c[(c[g>>2]|0)+116>>2]=0;c[(c[g>>2]|0)+120>>2]=0;c[z>>
2]=c[(c[g>>2]|0)+32>>2];if(!(c[(c[g>>2]|0)+28>>2]|0)){L=c[A>>2]|0;i=M;return L
|0}c[J>>2]=(c[z>>2]|0)+((c[(c[g>>2]|0)+28>>2]|0)*40|0);c[q>>2]=c[(c[h>>
;2]|0)+4>>2];c[p>>2]=c[(c[h>>2]|0)+8>>2];c[k>>2]=(c[z>>2]|0)+((b[c[(
c[h>>2]|0)+12>>2]>>1]|0)*40|0);c[o>>2]=c[k>>2];c[j>>2]=0;c[I>
x3e;2]=c[z>>2];while(1){if((c[I>>2]|0)>>>0>=(c[J>>2]|0)>>>0)break
;b[(c[I>>2]|0)+12>>1]=c[c[q>>2]>>2];b[(c[I>>2]|0)+14>>1]=c[(c[q>
;>2]|0)+4>>2];f=Mb(c[c[q>>2]>>2]|0,c[s>>2]|0)|0;f=f+(c[r>>2]|0)|0;c[(c[I
x3e;>2]|0)+16>>2]=f;c[(c[I>>2]|0)+4>>2]=f;f=Mb(c[(c[q>>2]|0)+4>>2]|0,c[u
x3e;>2]|0)|0;f=f+(c[t>>2]|0)|0;c[(c[I>>2]|0)+20>>2]=f;c[(c[I>>2]|0)+8>>2]=
f;switch(a[c[p>>2]>>0]&3|0){case 0:{b[c[I>>2]>>1]=1;break}case 2:{b[c[I>>
2]>>1]=2;break}default:b[c[I>>2]>>1]=0}c[(c[I>>2]|0)+36>>2]=c[o>>2];
c[(c[o>>2]|0)+32>>2]=c[I>>2];c[o>>2]=c[I>>2];if((c[I>>2]|0)==(c[k>
;>2]|0)?(f=(c[j>>2]|0)+1|0,c[j>>2]=f,(f|0)<(b[c[h>>2]>>1]|0)):0){c[k>>
;2]=(c[z>>2]|0)+((b[(c[(c[h>>2]|0)+12>>2]|0)+(c[j>>2]<<1)>>1]|0)*40|
0);c[o>>2]=c[k>>2]}c[I>>2]=(c[I>>2]|0)+40;c[q>>2]=(c[q>>2]|0)+8;c[p
x3e;>2]=(c[p>>2]|0)+1}c[v>>2]=c[(c[g>>2]|0)+44>>2];c[w>>2]=(c[v>>
;2]|0)+(c[(c[g>>2]|0)+40>>2]<<2);c[x>>2]=c[(c[h>>2]|0)+12>>2];b[y>
;>1]=0;while(1){g=c[z>>2]|0;if((c[v>>2]|0)>>>0>=(c[w>>2]|0)>>
x3e;0)break;c[c[v>>2]>>2]=g+((b[y>>1]|0)*40|0);b[y>>1]=(b[c[x>>2]>>1
]|0)+1;c[v>>2]=(c[v>>2]|0)+4;c[x>>2]=(c[x>>2]|0)+2}c[B>>2]=g;c[K>>2]=
0;c[D>>2]=0;c[E>>2]=0;c[C>>2]=4;c[I>>2]=c[z>>2];while(1){if((c[I>>2]|
0)>>>0>=(c[J>>2]|0)>>>0)break;if((c[I>>2]|0)==(c[B>>2]|0)){c[K
x3e;>2]=c[(c[B>>2]|0)+36>>2];c[D>>2]=(b[(c[B>>2]|0)+12>>1]|0)-(b[(c[K>
;>2]|0)+12>>1]|0);c[E>>2]=(b[(c[B>>2]|0)+14>>1]|0)-(b[(c[K>>2]|0)+14>
;>1]|0);c[C>>2]=Jl(c[D>>2]|0,c[E>>2]|0)|0;c[B>>2]=(c[K>>2]|0)+40}a[(c[I
x3e;>2]|0)+2>>0]=c[C>>2];c[F>>2]=c[(c[I>>2]|0)+32>>2];c[G>>2]=(
b[(c[F>>2]|0)+12>>1]|0)-(b[(c[I>>2]|0)+12>>1]|0);c[H>>2]=(b[(c[F>>2]|
0)+14>>1]|0)-(b[(c[I>>2]|0)+14>>1]|0);c[C>>2]=Jl(c[G>>2]|0,c[H>>2]|0
)|0;a[(c[I>>2]|0)+3>>0]=c[C>>2];do if(!(e[c[I>>2]>>1]&3|0)){g=c[I>
x3e;2]|0;if((a[(c[I>>2]|0)+3>>0]|0)!=(a[(c[I>>2]|0)+2>>0]|0))if((a[g+2>>0]|0)==(
0-(a[(c[I>>2]|0)+3>>0]|0)|0)){L=28;break}else break;if(!((a[g+3>>0]|0)==4?!($b(c[D>>2]|0
,c[E>>2]|0,c[G>>2]|0,c[H>>2]|0)|0):0))L=28}else L=28;while(0);if((L|0)==28){L=0;z=c[I>>2
]|0;b[z>>1]=e[z>>1]|256}c[D>>2]=c[G>>2];c[E>>2]=c[H>>2];c[K>>
;2]=c[I>>2];c[I>>2]=(c[I>>2]|0)+40}L=c[A>>2]|0;i=M;return L|0}function Jl(a,b){a=a|0;b=b
|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;g=j+8|0;h=j+4|0;f=j;c[d>>2]=a;c[e>>2]=b;a=(c[e
>>2]|0)>=(0-(c[d>>2]|0)|0);do if((c[e>>2]|0)>=(c[d>>2]|0))if(a){c[f>>
;2]=2;c[g>>2]=c[e>>2];c[h>>2]=c[d>>2];break}else{c[f>>2]=-1;c[g>>2]=
0-(c[d>>2]|0);c[h>>2]=c[e>>2];break}else if(a){c[f>>2]=1;c[g>>2]=c[d>>
;2];c[h>>2]=c[e>>2];break}else{c[f>>2]=-2;c[g>>2]=c[e>>2];c[h>>2]=c[
d>>2];break}while(0);c[h>>2]=(c[h>>2]|0)*14;d=c[g>>2]|0;e=c[h>>2]|0;if((((c[g
x3e;>2]|0)<0?0-d|0:d)|0)>(((c[h>>2]|0)<0?0-e|0:e)|0)){h=c[f>>2]|0;i=j;return h|0}c[f>
;>2]=4;h=c[f>>2]|0;i=j;return h|0}function Kl(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;P=i;i=i+176|0;j=P+164|0;k=P+160|0;p=P+
156|0;v=P+152|0;G=P+148|0;N=P+144|0;A=P+92|0;q=P+88|0;r=P+84|0;t=P+80|0;B=P+76|0;n=P+72|0;l=P+68|0;o=P+64|0;m=P+60|0;z=P+56|0;s=
P+52|0;x=P+48|0;w=P+44|0;u=P+40|0;y=P+168|0;D=P+36|0;E=P+32|0;C=P+28|0;O=P+24|0;H=P+20|0;J=P+16|0;I=P+12|0;K=P+8|0;L=P+4|0;M=P;c
[j>>2]=f;c[k>>2]=g;c[p>>2]=(c[j>>2]|0)+48+((c[k>>2]|0)*28|0);c[v>>2]=
c[c[j>>2]>>2];c[G>>2]=0;c[N>>2]=0;c[q>>2]=c[(c[j>>2]|0)+44>>
;2];c[r>>2]=(c[q>>2]|0)+(c[(c[j>>2]|0)+40>>2]<<2);f=A;h=f+52|0;do{c[f>>
;2]=0;f=f+4|0}while((f|0)<(h|0));c[A+32>>2]=32e3;a[A>>0]=0;g=c[(c[p>>2]|0)+24>>2]|0
;c[t>>2]=(c[(c[p>>2]|0)+24>>2]|0)<0?0-g|0:g;c[B>>2]=c[t>>2];c[c[p>
x3e;2]>>2]=0;g=c[(c[j>>2]|0)+32>>2]|0;a:do if(!(c[k>>2]|0)){c[n>>2]=g;c[l>
;>2]=(c[n>>2]|0)+((c[(c[j>>2]|0)+28>>2]|0)*40|0);while(1){if((c[n>>2]|0)>>
;>0>=(c[l>>2]|0)>>>0)break a;c[(c[n>>2]|0)+24>>2]=b[(c[n>>2]|0)+
12>>1];c[(c[n>>2]|0)+28>>2]=b[(c[n>>2]|0)+14>>1];c[n>>2]=(c[n>
x3e;2]|0)+40}}else{c[o>>2]=g;c[m>>2]=(c[o>>2]|0)+((c[(c[j>>2]|0)+28>>2]|0)*40|
0);while(1){if((c[o>>2]|0)>>>0>=(c[m>>2]|0)>>>0)break a;c[(c[o>>
;2]|0)+24>>2]=b[(c[o>>2]|0)+14>>1];c[(c[o>>2]|0)+28>>2]=b[(c[o>>2]|0
)+12>>1];c[o>>2]=(c[o>>2]|0)+40}}while(0);b:while(1){if((c[q>>2]|0)>>>0
x3e;=(c[r>>2]|0)>>>0)break;c[z>>2]=c[c[q>>2]>>2];c[s>>2]=c[(c[z
>>2]|0)+36>>2];c[x>>2]=0;c[w>>2]=32e3;c[u>>2]=-32e3;c:do if((c[z>>2]|
0)!=(c[s>>2]|0)){o=a[(c[s>>2]|0)+3>>0]|0;d:do if((((a[(c[s>>2]|0)+3>>0]|0)<
;0?0-o|0:o)|0)==(c[t>>2]|0)?(o=a[(c[z>>2]|0)+3>>0]|0,(((a[(c[z>>2]|0)+3>>0]|0)
x3c;0?0-o|0:o)|0)==(c[t>>2]|0)):0){c[s>>2]=c[z>>2];while(1){c[z>>2]=c[(c[z>>2]|
0)+36>>2];o=a[(c[z>>2]|0)+3>>0]|0;g=c[z>>2]|0;if((((a[(c[z>>2]|0)+3>>
;0]|0)<0?0-o|0:o)|0)!=(c[t>>2]|0))break;if((g|0)==(c[s>>2]|0))break d}c[z>>2]=c[g+32>>
;2]}while(0);c[s>>2]=c[z>>2];a[y>>0]=0;while(1){do if(c[x>>2]|0){c[D>>2]=c[(c[
z>>2]|0)+24>>2];if((c[D>>2]|0)<(c[w>>2]|0))c[w>>2]=c[D>>2];if((
c[D>>2]|0)>(c[u>>2]|0))c[u>>2]=c[D>>2];if((a[(c[z>>2]|0)+3>>0]|
0)==(c[B>>2]|0)?(c[z>>2]|0)!=(c[s>>2]|0):0)break;c[(c[N>>2]|0)+44>>2]=c[z>
;>2];b[(c[N>>2]|0)+2>>1]=(c[w>>2]|0)+(c[u>>2]|0)>>1;if((e[c[(c[N>>
;2]|0)+40>>2]>>1]|e[c[z>>2]>>1])&3|0){o=c[N>>2]|0;a[o>>0]=d[o
x3e;>0]|1}o=c[(c[z>>2]|0)+28>>2]|0;c[u>>2]=o;c[w>>2]=o;c[E>>2]=c[(c[(c[N
x3e;>2]|0)+40>>2]|0)+28>>2];if((c[E>>2]|0)<(c[w>>2]|0))c[w>>2]=c[E
x3e;>2];if((c[E>>2]|0)>(c[u>>2]|0))c[u>>2]=c[E>>2];b[(c[N>>2]|0)+4
x3e;>1]=c[w>>2];b[(c[N>>2]|0)+6>>1]=c[u>>2];b[(c[N>>2]|0)+8>>1]=(
b[(c[N>>2]|0)+6>>1]|0)-(b[(c[N>>2]|0)+4>>1]|0);c[x>>2]=0;c[N>>2]=0}while
(0);if((c[z>>2]|0)==(c[s>>2]|0)){if(a[y>>0]|0)break c;a[y>>0]=1}if((c[x>>2]|0)==
0?(o=a[(c[z>>2]|0)+3>>0]|0,(((a[(c[z>>2]|0)+3>>0]|0)<0?0-o|0:o)|0)==(c[t>>
;2]|0)):0){c[B>>2]=a[(c[z>>2]|0)+3>>0];c[G>>2]=Ll(c[p>>2]|0,c[v>>2]|
0,N)|0;if(c[G>>2]|0){F=53;break b}f=c[N>>2]|0;g=A;h=f+52|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=
g+4|0}while((f|0)<(h|0));a[(c[N>>2]|0)+1>>0]=c[B>>2];o=c[(c[z>>2]|0)+24>>
2]|0;c[u>>2]=o;c[w>>2]=o;c[(c[N>>2]|0)+40>>2]=c[z>>2];c[(c[N>>2]|0)+
44>>2]=c[z>>2];c[(c[N>>2]|0)+48>>2]=c[q>>2];c[x>>2]=1}c[z>>
;2]=c[(c[z>>2]|0)+32>>2]}}while(0);c[q>>2]=(c[q>>2]|0)+4}if((F|0)==53){O=c[G>>
2]|0;i=P;return O|0}c[C>>2]=c[(c[p>>2]|0)+8>>2];c[O>>2]=(c[C>>2]|0)+((c[c[p>
;>2]>>2]|0)*52|0);c[N>>2]=c[C>>2];while(1){if((c[N>>2]|0)>>>0>=(
c[O>>2]|0)>>>0)break;c[H>>2]=c[(c[N>>2]|0)+40>>2];c[J>>2]=c[(c[
N>>2]|0)+44>>2];c[I>>2]=c[(c[H>>2]|0)+28>>2];c[K>>2]=c[(c[J>>
;2]|0)+28>>2];do if((c[H>>2]|0)!=(c[J>>2]|0)){g=c[(c[H>>2]|0)+36>>2]|0;if((c[I
>>2]|0)<(c[K>>2]|0)){c[L>>2]=g;if((c[(c[L>>2]|0)+28>>2]|0)<(c[I>
;>2]|0))b[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8>>1]|0)+((c[I>>2]|0)-(c[(c[L
x3e;>2]|0)+28>>2]|0)>>1);c[L>>2]=c[(c[J>>2]|0)+32>>2];if((c[(c[L>>
;2]|0)+28>>2]|0)<=(c[K>>2]|0))break;b[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8
x3e;>1]|0)+((c[(c[L>>2]|0)+28>>2]|0)-(c[K>>2]|0)>>1);break}else{c[M>>2]=g
;if((c[(c[M>>2]|0)+28>>2]|0)>(c[I>>2]|0))b[(c[N>>2]|0)+8>>1]=(b[(c[N>
;>2]|0)+8>>1]|0)+((c[(c[M>>2]|0)+28>>2]|0)-(c[I>>2]|0)>>1);c[M>>
;2]=c[(c[J>>2]|0)+32>>2];if((c[(c[M>>2]|0)+28>>2]|0)>=(c[K>>2]|0))break;b
[(c[N>>2]|0)+8>>1]=(b[(c[N>>2]|0)+8>>1]|0)+((c[K>>2]|0)-(c[(c[M>>2]|
0)+28>>2]|0)>>1);break}}while(0);c[N>>2]=(c[N>>2]|0)+52}O=c[G>>2]|0;i=P;return
O|0}function Ll(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;n=i;i=i+32|0;e=n+28|0;f=n+24|0;g=n+20|0;j=n+16
|0;m=n+12|0;l=n+8|0;k=n+4|0;h=n;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[j>>2]=0;c[m>>2
]=0;do if((c[c[e>>2]>>2]|0)>=(c[(c[e>>2]|0)+4>>2]|0)){c[l>>2]=c[(c[e>
;>2]|0)+4>>2];c[k>>2]=c[l>>2];c[h>>2]=41297762;if((c[l>>2]|0)>=(c[h
x3e;>2]|0)){c[j>>2]=64;l=c[m>>2]|0;m=c[g>>2]|0;c[m>>2]=l;m=c[j>>2]|0;i=n;
return m|0}c[k>>2]=(c[k>>2]|0)+((c[k>>2]>>2)+4);if(!((c[k>>2]|0)>=(c[l>
;>2]|0)?(c[k>>2]|0)<=(c[h>>2]|0):0))c[k>>2]=c[h>>2];l=hc(c[f>>2]|0,52
,c[l>>2]|0,c[k>>2]|0,c[(c[e>>2]|0)+8>>2]|0,j)|0;c[(c[e>>2]|0)+8>>2]=
l;if(c[j>>2]|0){l=c[m>>2]|0;m=c[g>>2]|0;c[m>>2]=l;m=c[j>>2]|0;i=n;return m|0}else
{c[(c[e>>2]|0)+4>>2]=c[k>>2];break}}while(0);k=c[(c[e>>2]|0)+8>>2]|0;b=c[e>
;>2]|0;l=c[b>>2]|0;c[b>>2]=l+1;c[m>>2]=k+(l*52|0);l=c[m>>2]|0;m=c[g>>2]|0
;c[m>>2]=l;m=c[j>>2]|0;i=n;return m|0}function Ml(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;u=i;i=i+64|0;v=u+60|0;w=u+56|0;f=u+52|0;t=u+48|0;s=u+44|0;k=u+40|0;j=u+36|0;q=u+32|0;r=u+28|0;n=u
+24|0;o=u+20|0;g=u+16|0;m=u+12|0;l=u+8|0;h=u+4|0;p=u;c[v>>2]=d;c[w>>2]=e;c[f>>2]=(c[v>>2
]|0)+48+((c[w>>2]|0)*28|0);c[t>>2]=c[(c[f>>2]|0)+8>>2];c[s>>2]=(c[t>>
;2]|0)+((c[c[f>>2]>>2]|0)*52|0);d=(c[(c[(c[v>>2]|0)+112>>2]|0)+36>>2]<<
;3|0)/2048|0;c[k>>2]=d;c[k>>2]=(c[k>>2]|0)==0?1:d;c[j>>2]=((c[(c[(c[v>>2]|0)+112
>>2]|0)+36>>2]|0)*6e3|0)/2048|0;c[q>>2]=c[t>>2];while(1){if((c[q>>2]|0)>
x3e;>0>=(c[s>>2]|0)>>>0)break;a:do if((a[(c[q>>2]|0)+1>>0]|0)==(c[(c[f>
;>2]|0)+24>>2]|0)?(c[(c[q>>2]|0)+40>>2]|0)!=(c[(c[q>>2]|0)+44>>2]|0):0){c
[r>>2]=c[t>>2];while(1){if((c[r>>2]|0)>>>0>=(c[s>>2]|0)>>
x3e;0)break a;if(((a[(c[q>>2]|0)+1>>0]|0)+(a[(c[r>>2]|0)+1>>0]|0)|0)==0?(b[(c[r>>
;2]|0)+2>>1]|0)>(b[(c[q>>2]|0)+2>>1]|0):0){c[n>>2]=b[(c[q>>2]|0)+2>
x3e;1];c[o>>2]=b[(c[r>>2]|0)+2>>1];c[g>>2]=(c[o>>2]|0)-(c[n>>2]|0);if
((c[g>>2]|0)<0)c[g>>2]=0-(c[g>>2]|0);c[m>>2]=b[(c[q>>2]|0)+4>>1
];c[l>>2]=b[(c[q>>2]|0)+6>>1];if((c[m>>2]|0)<(b[(c[r>>2]|0)+4>>
1]|0))c[m>>2]=b[(c[r>>2]|0)+4>>1];if((c[l>>2]|0)>(b[(c[r>>2]|0)+6>
x3e;1]|0))c[l>>2]=b[(c[r>>2]|0)+6>>1];c[h>>2]=(c[l>>2]|0)-(c[m>>2]|0
);if((c[h>>2]|0)>=(c[k>>2]|0)){c[p>>2]=(c[g>>2]|0)+((c[j>>2]|0)/(c[h>
;>2]|0)|0);if((c[p>>2]|0)<(c[(c[q>>2]|0)+32>>2]|0)){c[(c[q>>2]|0)+32>>
;2]=c[p>>2];c[(c[q>>2]|0)+20>>2]=c[r>>2]}if((c[p>>2]|0)<(c[(c[r>>
;2]|0)+32>>2]|0)){c[(c[r>>2]|0)+32>>2]=c[p>>2];c[(c[r>>2]|0)+20>>2]=
c[q>>2]}}}c[r>>2]=(c[r>>2]|0)+52}}while(0);c[q>>2]=(c[q>>2]|0)+52}c[q>>
;2]=c[t>>2];while(1){if((c[q>>2]|0)>>>0>=(c[s>>2]|0)>>>0)break;
c[r>>2]=c[(c[q>>2]|0)+20>>2];if(c[r>>2]|0?(c[(c[r>>2]|0)+20>>2]|0)!=(
c[q>>2]|0):0){c[(c[q>>2]|0)+20>>2]=0;c[(c[q>>2]|0)+24>>2]=c[(c[r>>2]|
0)+20>>2]}c[q>>2]=(c[q>>2]|0)+52}i=u;return}function Nl(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j
=0;j=i;i=i+32|0;d=j+24|0;e=j+20|0;f=j+16|0;g=j+12|0;h=j;c[d>>2]=a;c[e>>2]=b;c[f>>2]=1;while(1){if((
c[f>>2]|0)>>>0>=(c[d>>2]|0)>>>0)break;c[g>>2]=c[f>>2];
while(1){if((c[g>>2]|0)>>>0<=0)break;if((c[(c[e>>2]|0)+((c[g>>2]|0)*12|0)>
;>2]|0)>(c[(c[e>>2]|0)+(((c[g>>2]|0)-1|0)*12|0)>>2]|0))break;b=(c[e>>2]|0)+((c
[g>>2]|0)*12|0)|0;c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+
8>>2];b=(c[e>>2]|0)+((c[g>>2]|0)*12|0)|0;a=(c[e>>2]|0)+(((c[g>>2]|0)-1|0)*12|0
)|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>>2];c[b+8>>2]=c[a+8>>2];b=(c[e
x3e;>2]|0)+(((c[g>>2]|0)-1|0)*12|0)|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];
c[b+8>>2]=c[h+8>>2];c[g>>2]=(c[g>>2]|0)+-1}c[f>>2]=(c[f>>2]|0)+1}i=j
;return}function Ol(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=i;i=i+16|0;b=g+12|0;f=g+8|0;e=g+4|0;d=g;c[b>>2]=a;if(!(c[b>
;>2]|0)){i=g;return}if(!(c[c[b>>2]>>2]|0)){i=g;return}c[f>>2]=c[c[b>>2]>>
2];c[e>>2]=0;while(1){if((c[e>>2]|0)>=2)break;c[d>>2]=(c[b>>2]|0)+48+((c[e>>
;2]|0)*28|0);c[c[d>>2]>>2]=0;c[(c[d>>2]|0)+4>>2]=0;Fb(c[f>>2]|0,c[(c[d>
x3e;2]|0)+8>>2]|0);c[(c[d>>2]|0)+8>>2]=0;c[(c[d>>2]|0)+12>>2]=0;c[(c[d>
x3e;2]|0)+16>>2]=0;Fb(c[f>>2]|0,c[(c[d>>2]|0)+20>>2]|0);c[(c[d>>2]|0)+20>
x3e;2]=0;c[e>>2]=(c[e>>2]|0)+1}Fb(c[f>>2]|0,c[(c[b>>2]|0)+44>>2]|0);c[(c[b>
;>2]|0)+44>>2]=0;c[(c[b>>2]|0)+36>>2]=0;c[(c[b>>2]|0)+40>>2]=0;Fb(c[f>
;>2]|0,c[(c[b>>2]|0)+32>>2]|0);c[(c[b>>2]|0)+32>>2]=0;c[(c[b>>2]|0)+28>
;>2]=0;c[(c[b>>2]|0)+24>>2]=0;c[c[b>>2]>>2]=0;i=g;return}function Pl(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;N=i;i=i+224|0;O=N+212|0;g=N+208|0;u=N+160|0;L=N+112|0;B=N+104|0;C=N+100|0;j=N+96|0;o=N+92|0;s=N+88|0;h=N+84|0;v=N
+80|0;F=N+76|0;y=N+72|0;p=N+68|0;q=N+64|0;w=N+60|0;n=N+56|0;m=N+52|0;k=N+48|0;l=N+44|0;G=N+40|0;K=N+217|0;A=N+36|0;t=N+32|0;x=N+
28|0;D=N+24|0;H=N+20|0;I=N+16|0;z=N+12|0;r=N+8|0;J=N+4|0;M=N;E=N+216|0;c[O>>2]=e;c[g>>2]=f;c[h>>2]=(
c[O>>2]|0)+40+396;c[v>>2]=c[(c[g>>2]|0)+84>>2];c[j>>2]=0;while(1){if((c[j>
;>2]|0)>=6)break;c[F>>2]=11435+((c[j>>2]|0)*13|0);c[y>>2]=(c[F>>2]|0)+12;c[B
x3e;>2]=0;c[C>>2]=0;while(1){if((c[F>>2]|0)>>>0>=(c[y>>2]|0)>>
x3e;0)break;if(!(a[c[F>>2]>>0]|0))break;a[K>>0]=0;c[w>>2]=Dc(c[g>>2]|0,a[c[F
x3e;>2]>>0]|0)|0;do if((c[w>>2]|0?(c[s>>2]=Cb(c[g>>2]|0,c[w>>2]|0,1)|0,(c
[s>>2]|0)==0):0)?(b[(c[v>>2]|0)+108+2>>1]|0)>0:0){c[G>>2]=c[(c[v>>2]|0)+108
+4>>2];c[m>>2]=-1;c[n>>2]=0;c[k>>2]=0;c[l>>2]=0;c[t>>2]=0;c[x>
x3e;2]=-1;c[A>>2]=0;while(1){f=c[m>>2]|0;if((c[A>>2]|0)>=(b[(c[v>>2]|0)+108>
x3e;1]|0))break;c[D>>2]=f;c[x>>2]=b[(c[(c[v>>2]|0)+108+12>>2]|0)+(c[A>>2]<
;<1)>>1];if((c[x>>2]|0)>(c[t>>2]|0)){O=(c[j>>2]|0)==0|(c[j>>2]|0)==2
|(c[j>>2]|0)==3;c[H>>2]=c[t>>2];a:do if(O)while(1){if((c[H>>2]|0)>(c[x>>2
]|0))break a;if(!((c[m>>2]|0)>=0?(c[(c[G>>2]|0)+(c[H>>2]<<3)+4>>2]|0)<
;=(c[n>>2]|0):0)){c[m>>2]=c[H>>2];c[n>>2]=c[(c[G>>2]|0)+(c[H>>2]<
;<3)+4>>2]}c[H>>2]=(c[H>>2]|0)+1}else while(1){if((c[H>>2]|0)>(c[x>>
2]|0))break a;if(!((c[m>>2]|0)>=0?(c[(c[G>>2]|0)+(c[H>>2]<<3)+4>>2]|0)>
;=(c[n>>2]|0):0)){c[m>>2]=c[H>>2];c[n>>2]=c[(c[G>>2]|0)+(c[H>>2]<
;<3)+4>>2]}c[H>>2]=(c[H>>2]|0)+1}while(0);if((c[m>>2]|0)!=(c[D>>2]|0)){c[
k>>2]=c[t>>2];c[l>>2]=c[x>>2]}}c[t>>2]=(c[x>>2]|0)+1;c[A>>
2]=(c[A>>2]|0)+1}if((f|0)>=0){c[I>>2]=c[m>>2];c[z>>2]=c[I>>2];do{if((c[I
x3e;>2]|0)>(c[k>>2]|0))c[I>>2]=(c[I>>2]|0)+-1;else c[I>>2]=c[l>>2];c
[r>>2]=(c[(c[G>>2]|0)+(c[I>>2]<<3)+4>>2]|0)-(c[n>>2]|0);if((c[r>
;>2]|0)<-5|(c[r>>2]|0)>5)break}while((c[I>>2]|0)!=(c[m>>2]|0));do{if((c[z>>
;2]|0)<(c[l>>2]|0))c[z>>2]=(c[z>>2]|0)+1;else c[z>>2]=c[k>>2];c[r>
x3e;2]=(c[(c[G>>2]|0)+(c[z>>2]<<3)+4>>2]|0)-(c[n>>2]|0);if((c[r>>2]|
0)<-5|(c[r>>2]|0)>5)break}while((c[z>>2]|0)!=(c[m>>2]|0));if((a[(c[(c[v>>2]|0)+
108+8>>2]|0)+(c[I>>2]|0)>>0]&3|0)!=1)f=1;else f=(a[(c[(c[v>>2]|0)+108+8>>
2]|0)+(c[z>>2]|0)>>0]&3|0)!=1;a[K>>0]=f&1}f=c[n>>2]|0;if(a[K>>0]|0){
O=c[C>>2]|0;c[C>>2]=O+1;c[L+(O<<2)>>2]=f;break}else{O=c[B>>2]|0;c[B>>
;2]=O+1;c[u+(O<<2)>>2]=f;break}}while(0);c[F>>2]=(c[F>>2]|0)+1}if(!((c[B>>2]|0
)==0&(c[C>>2]|0)==0)){Ql(c[C>>2]|0,L);Ql(c[B>>2]|0,u);c[o>>2]=(c[h>>2]|0)+
220+((c[(c[h>>2]|0)+216>>2]|0)*28|0);c[p>>2]=c[o>>2];c[q>>2]=(c[o>>2
]|0)+12;f=(c[h>>2]|0)+216|0;c[f>>2]=(c[f>>2]|0)+1;f=c[C>>2]|0;do if(c[B>>2]|0){
e=c[u+(((c[B>>2]|0)/2|0)<<2)>>2]|0;if(!f){c[c[q>>2]>>2]=e;c[c[p>>2]
x3e;>2]=e;break}else{c[c[p>>2]>>2]=e;c[c[q>>2]>>2]=c[L+(((c[C>>2]|0)/2|0)
x3c;<2)>>2];break}}else{O=c[L+(((f|0)/2|0)<<2)>>2]|0;c[c[q>>2]>>2]=O;c[c[
p>>2]>>2]=O}while(0);if((c[c[q>>2]>>2]|0)!=(c[c[p>>2]>>2]|0)){c[J>
;>2]=c[c[p>>2]>>2];c[M>>2]=c[c[q>>2]>>2];a[E>>0]=(c[M>>
;2]|0)>(c[J>>2]|0);if((c[j>>2]|0)==0|(c[j>>2]|0)==2)f=1;else f=(c[j>>2]|0)==3;if(f
x26;1^d[E>>0]|0){O=((c[M>>2]|0)+(c[J>>2]|0)|0)/2|0;c[c[p>>2]>>2]=O;c[c[q>
x3e;2]>>2]=O}}c[(c[o>>2]|0)+24>>2]=0;if((c[j>>2]|0)==0|(c[j>>2]|0)==2|(c[j>
;>2]|0)==3){O=(c[o>>2]|0)+24|0;c[O>>2]=c[O>>2]|2}if((c[j>>2]|0)==3){O=(c[o>>
;2]|0)+24|0;c[O>>2]=c[O>>2]|4}}c[j>>2]=(c[j>>2]|0)+1}i=N;return}function Ql(a,b){a=a|0;b
=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;j=i;i=i+32|0;d=j+16|0;e=j+12|0;f=j+8|0;g=j+4|0;h=j;c[d>>2]=a;c[e>>2]=b;c[f
x3e;>2]=1;while(1){if((c[f>>2]|0)>>>0>=(c[d>>2]|0)>>>0)break;c[g>
;>2]=c[f>>2];while(1){if((c[g>>2]|0)>>>0<=0)break;if((c[(c[e>>2]|0)+(c[g
x3e;>2]<<2)>>2]|0)>(c[(c[e>>2]|0)+((c[g>>2]|0)-1<<2)>>2]|0
))break;c[h>>2]=c[(c[e>>2]|0)+(c[g>>2]<<2)>>2];c[(c[e>>2]|0)+(c[g>
;>2]<<2)>>2]=c[(c[e>>2]|0)+((c[g>>2]|0)-1<<2)>>2];c[(c[e>
x3e;2]|0)+((c[g>>2]|0)-1<<2)>>2]=c[h>>2];c[g>>2]=(c[g>>2]|0)+-1}c[f
x3e;>2]=(c[f>>2]|0)+1}i=j;return}function Rl(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;o=i;i=i
+32|0;e=o+20|0;f=o+16|0;j=o+12|0;m=o+25|0;l=o+24|0;g=o+8|0;k=o+4|0;h=o;c[e>>2]=b;c[f>>2]=d;a[m>>0]=
0;a[l>>0]=1;c[k>>2]=0;c[j>>2]=48;a:while(1){if((c[j>>2]|0)>>>0>57){n
=10;break}c[h>>2]=Dc(c[f>>2]|0,c[j>>2]|0)|0;do if(c[h>>2]|0?(vb(c[f>>2]|0,c[h
x3e;>2]|0,2051,g)|0)==0:0){d=c[g>>2]|0;if(a[m>>0]|0)if((d|0)!=(c[k>>2]|0))break a;else break;
else{c[k>>2]=d;a[m>>0]=1;break}}while(0);c[j>>2]=(c[j>>2]|0)+1}if((n|0)==10){m=a[l>
x3e;0]|0;n=c[e>>2]|0;n=n+32|0;a[n>>0]=m;i=o;return}a[l>>0]=0;m=a[l>>0]|0;n=c[e>>
;2]|0;n=n+32|0;a[n>>0]=m;i=o;return}function Sl(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)+4+20>>2]=c[(c[e>>2]|0)+20>>2];c[(c[f>>
2]|0)+4>>2]=c[c[e>>2]>>2];Tl(c[f>>2]|0,c[e>>2]|0,0);Tl(c[f>>2]|0,c[e
>>2]|0,1);i=d;return}function Tl(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;x=i;i=i+64|0;m=x+60|0;f=x+56|0;n=x+52|0;w=x+48|0;r=x+44|0;p=x+40|0;v=x+36|0;g=x+32|0;h=x+28|0;k=x+24|0;j=x+20|0;
o=x+16|0;q=x+12|0;u=x+8|0;s=x+4|0;t=x;c[m>>2]=b;c[f>>2]=d;c[n>>2]=e;e=c[f>>2]|0;if(!(c[n
>>2]|0)){c[w>>2]=c[e+4>>2];c[r>>2]=c[(c[f>>2]|0)+12>>2]}else{c[w>
;>2]=c[e+8>>2];c[r>>2]=c[(c[f>>2]|0)+16>>2]}c[p>>2]=(c[m>>2]|0)+
40+((c[n>>2]|0)*396|0);if((c[(c[p>>2]|0)+388>>2]|0)==(c[w>>2]|0)?(c[(c[p>>2]|0
)+392>>2]|0)==(c[r>>2]|0):0){i=x;return}c[(c[p>>2]|0)+388>>2]=c[w>>2];c[(c[p
x3e;>2]|0)+392>>2]=c[r>>2];c[g>>2]=(c[m>>2]|0)+40+396;c[h>>2]=0;c[v>
x3e;2]=0;while(1){if((c[v>>2]|0)>>>0>=(c[(c[g>>2]|0)+216>>2]|0)>>>
;0)break;e=c[v>>2]|0;if(c[(c[g>>2]|0)+220+((c[v>>2]|0)*28|0)+24>>2]&4|0){l=9;break}
c[v>>2]=e+1}if((l|0)==9)c[h>>2]=(c[g>>2]|0)+220+(e*28|0);if(c[h>>2]|0?(c[k>>2]=
Mb(c[(c[h>>2]|0)+12>>2]|0,c[(c[f>>2]|0)+8>>2]|0)|0,c[j>>2]=(c[k>>2]|
0)+40&-64,(c[n>>2]|0)==1?(c[k>>2]|0)!=(c[j>>2]|0):0):0)c[w>>2]=xb(c[w>>2]|
0,c[j>>2]|0,c[k>>2]|0)|0;c[c[p>>2]>>2]=c[w>>2];c[(c[p>>2]|0)+4>
x3e;2]=c[r>>2];e=c[w>>2]|0;b=(c[m>>2]|0)+4|0;if(!(c[n>>2]|0)){c[b+4>>2]=e;c[(c
[m>>2]|0)+4+12>>2]=c[r>>2]}else{c[b+8>>2]=e;c[(c[m>>2]|0)+4+16>>2]=c
[r>>2]}c[v>>2]=0;while(1){e=c[p>>2]|0;if((c[v>>2]|0)>>>0>=(c[(c[p>
;>2]|0)+8>>2]|0)>>>0)break;c[o>>2]=e+12+((c[v>>2]|0)*12|0);m=Mb(c[c[o>>
;2]>>2]|0,c[w>>2]|0)|0;c[(c[o>>2]|0)+4>>2]=m;c[(c[o>>2]|0)+8>>2]=c[(
c[o>>2]|0)+4>>2];c[v>>2]=(c[v>>2]|0)+1}o=(Mb(c[e+208>>2]|0,c[w>>2]|0
)|0)<40&255;a[(c[p>>2]|0)+212>>0]=o;if((c[n>>2]|0)!=1){i=x;return}c[v>>2]=0;while
(1){if((c[v>>2]|0)>>>0>=(c[(c[p>>2]|0)+216>>2]|0)>>>0)break;c[q
>>2]=(c[p>>2]|0)+220+((c[v>>2]|0)*28|0);o=Mb(c[c[q>>2]>>2]|0,c[w>>2]|
0)|0;c[(c[q>>2]|0)+4>>2]=o+(c[r>>2]|0);c[(c[q>>2]|0)+8>>2]=c[(c[q>>2
]|0)+4>>2];o=Mb(c[(c[q>>2]|0)+12>>2]|0,c[w>>2]|0)|0;c[(c[q>>2]|0)+12+4>
x3e;2]=o+(c[r>>2]|0);c[(c[q>>2]|0)+12+8>>2]=c[(c[q>>2]|0)+12+4>>2];o=(c[q>
;>2]|0)+24|0;c[o>>2]=c[o>>2]&-2;c[u>>2]=Mb((c[c[q>>2]>>2]|0)-(c[(c[q
>>2]|0)+12>>2]|0)|0,c[w>>2]|0)|0;if((c[u>>2]|0)<=48&(c[u>>2]|0)>
;=-48){c[s>>2]=(c[(c[q>>2]|0)+12>>2]|0)-(c[c[q>>2]>>2]|0);c[t>>2]=c[
s>>2];if((c[s>>2]|0)<0)c[t>>2]=0-(c[t>>2]|0);c[t>>2]=Mb(c[t>>2]|
0,c[w>>2]|0)|0;do if((c[t>>2]|0)>=32){e=c[t>>2]|0;if((c[t>>2]|0)<64){c[t>
x3e;2]=32+(e-32+16&-32);break}else{c[t>>2]=e+32&-64;break}}else c[t>>2]=0;while(0);if((c[s>
x3e;2]|0)<0)c[t>>2]=0-(c[t>>2]|0);c[(c[q>>2]|0)+8>>2]=(c[(c[q>>2]|0)+4>
;>2]|0)+32&-64;c[(c[q>>2]|0)+12+8>>2]=(c[(c[q>>2]|0)+8>>2]|0)+(c[t>>
2]|0);o=(c[q>>2]|0)+24|0;c[o>>2]=c[o>>2]|1}c[v>>2]=(c[v>>2]|0)+1}i=x;return}function
Ul(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0,k=0;j=i;i=i+32|0;d=j+20|0;k=j+16|0;f=j+12|0;h=j+8|0;g=j+4|0;e=j;c[d>>
2]=a;c[k>>2]=b;c[e>>2]=c[(c[k>>2]|0)+4>>2];Dl(c[d>>2]|0,c[k>>2]|0);c
[(c[d>>2]|0)+4>>2]=c[(c[k>>2]|0)+40>>2];c[(c[d>>2]|0)+8>>2]=c[(c[k
x3e;>2]|0)+40+4>>2];c[(c[d>>2]|0)+12>>2]=c[(c[k>>2]|0)+40+396>>2];c[(c[d
x3e;>2]|0)+16>>2]=c[(c[k>>2]|0)+40+396+4>>2];c[f>>2]=c[(c[k>>2]|0)+4+20
x3e;>2];c[h>>2]=c[(c[d>>2]|0)+104>>2];c[g>>2]=0;if((c[f>>2]|0)==2|(c[f>
;>2]|0)==3)c[g>>2]=c[g>>2]|1;if((c[f>>2]|0)==2|(c[f>>2]|0)==4)c[g>>2]=c[g
>>2]|2;if((c[f>>2]|0)!=1)c[g>>2]=c[g>>2]|4;if((c[f>>2]|0)==2)c[g>>2]=
c[g>>2]|8;if((c[f>>2]|0)!=1?(c[(c[e>>2]|0)+12>>2]&1|0)==0:0){k=c[h>>2]|0;
h=c[d>>2]|0;h=h+104|0;c[h>>2]=k;h=c[g>>2]|0;k=c[d>>2]|0;k=k+108|0;c[k>>2]=h;i=
j;return 0}c[h>>2]=c[h>>2]|1;k=c[h>>2]|0;h=c[d>>2]|0;h=h+104|0;c[h>>2]=k;h=c[g
>>2]|0;k=c[d>>2]|0;k=k+108|0;c[k>>2]=h;i=j;return 0}function Vl(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;f=k+16|0;g=k+12|0;e=k+8|0;j=k+4|0;h=k;c[f>>2]=a;c[g>>2]=b;c[e>>2]=
d;c[j>>2]=Il(c[f>>2]|0,c[g>>2]|0)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}if
((c[(c[f>>2]|0)+104>>2]&1|0)==0?(c[j>>2]=Wl(c[f>>2]|0,0)|0,c[j>>2]|0):0){
j=c[j>>2]|0;i=k;return j|0}do if(!(c[(c[f>>2]|0)+104>>2]&2)){c[j>>2]=Wl(c[f>
x3e;2]|0,1)|0;if(c[j>>2]|0){j=c[j>>2]|0;i=k;return j|0}else{Zl(c[f>>2]|0,c[e>>2]|0);break
}}while(0);c[h>>2]=0;while(1){if((c[h>>2]|0)>=2)break;if((c[h>>2]|0)==0?!(c[(c[f>>2
]|0)+104>>2]&1|0):0)e=13;else e=11;if(((e|0)==11?(e=0,(c[h>>2]|0)==1):0)?(c[(c[f>>2]|0)+104
x3e;>2]&2|0)==0:0)e=13;if((e|0)==13){_l(c[f>>2]|0,c[h>>2]|0);dm(c[f>>2]|0,c[h>>
;2]|0);em(c[f>>2]|0,c[h>>2]|0);fm(c[f>>2]|0,c[h>>2]|0)}c[h>>2]=(c[h>>
;2]|0)+1}im(c[f>>2]|0,c[g>>2]|0);j=c[j>>2]|0;i=k;return j|0}function Wl(a,b){a=a|0;b=b|0;var d=0,e
=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=Kl(c[d>>2]|0,c[e
>>2]|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}Ml(c[d>>2]|0,c[e>>2]|0);c[f
>>2]=Xl(c[d>>2]|0,c[e>>2]|0)|0;a=c[f>>2]|0;i=g;return a|0}function Xl(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
;M=i;i=i+128|0;g=M+112|0;h=M+108|0;l=M+104|0;D=M+100|0;t=M+96|0;j=M+92|0;k=M+88|0;w=M+84|0;H=M+80|0;K=M+76|0;u=M+72|0;p=M+68|0;v
=M+64|0;s=M+60|0;r=M+56|0;n=M+52|0;m=M+48|0;o=M+44|0;q=M+40|0;C=M+36|0;z=M+32|0;E=M+28|0;G=M+24|0;L=M+20|0;y=M+16|0;F=M+116|0;A=
M+12|0;I=M+8|0;B=M+4|0;J=M;c[g>>2]=e;c[h>>2]=f;c[l>>2]=(c[g>>2]|0)+48+((c[h>>2
]|0)*28|0);c[D>>2]=0;c[t>>2]=c[c[g>>2]>>2];c[j>>2]=(c[(c[g>>2]|0)+112
>>2]|0)+40+((c[h>>2]|0)*396|0);c[k>>2]=c[(c[l>>2]|0)+8>>2];c[w>>2]=(
c[k>>2]|0)+((c[c[l>>2]>>2]|0)*52|0);c[(c[l>>2]|0)+12>>2]=0;f=c[g>>2]|
0;if(!(c[h>>2]|0))f=c[f+4>>2]|0;else f=c[f+12>>2]|0;c[u>>2]=f;c[K>>2]=(c[h>
;>2]|0)==0?2:1;if(!(c[h>>2]|0))c[v>>2]=Vb(64,c[(c[g>>2]|0)+12>>2]|0)|0;else c[v>
;>2]=0;j=Mb(c[(c[j>>2]|0)+204>>2]|0,c[u>>2]|0)|0;c[p>>2]=j;c[p>>2]=(c[p
x3e;>2]|0)>16?16:j;c[p>>2]=Vb(c[p>>2]|0,c[u>>2]|0)|0;c[H>>2]=c[k>>2];
a:while(1){if((c[H>>2]|0)>>>0>=(c[w>>2]|0)>>>0)break;c[s>>2]=0;
do if((b[(c[H>>2]|0)+8>>1]|0)>=(c[v>>2]|0)){if(c[(c[H>>2]|0)+24>>2]|0?(b[(
c[H>>2]|0)+8>>1]<<1|0)<((c[v>>2]|0)*3|0):0)break;c[r>>2]=0;while(1){if((c
[r>>2]|0)>=(c[(c[l>>2]|0)+12>>2]|0))break;c[n>>2]=(c[(c[l>>2]|0)+20>
x3e;2]|0)+((c[r>>2]|0)*48|0);c[m>>2]=(b[(c[H>>2]|0)+2>>1]|0)-(b[c[n>>2]>
x3e;1]|0);if((c[m>>2]|0)<0)c[m>>2]=0-(c[m>>2]|0);if((c[m>>2]|0)<(c[p>>
;2]|0)?(a[(c[n>>2]|0)+13>>0]|0)==(a[(c[H>>2]|0)+1>>0]|0):0){x=18;break}c[r>>2]=(
c[r>>2]|0)+1}if((x|0)==18){x=0;c[s>>2]=c[n>>2]}if(c[s>>2]|0){c[(c[H>>2]|0)+16
x3e;>2]=c[(c[s>>2]|0)+40>>2];c[(c[(c[s>>2]|0)+44>>2]|0)+16>>2]=c[H>
x3e;2];c[(c[s>>2]|0)+44>>2]=c[H>>2];break}c[D>>2]=Yl(c[l>>2]|0,b[(c[H>>
;2]|0)+2>>1]|0,a[(c[H>>2]|0)+1>>0]|0,c[t>>2]|0,o)|0;if(c[D>>2]|0){x=66;break a
}f=c[o>>2]|0;e=f+48|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(e|0));c[(c[o>>2]|0)+40>>2]=
c[H>>2];c[(c[o>>2]|0)+44>>2]=c[H>>2];b[c[o>>2]>>1]=b[(c[H>>
;2]|0)+2>>1]|0;a[(c[o>>2]|0)+13>>0]=a[(c[H>>2]|0)+1>>0]|0;k=Mb(b[(c[H>>
;2]|0)+2>>1]|0,c[u>>2]|0)|0;c[(c[o>>2]|0)+8>>2]=k;c[(c[o>>2]|0)+4>>2
]=k;c[(c[H>>2]|0)+16>>2]=c[H>>2]}while(0);c[H>>2]=(c[H>>2]|0)+52}if((x|0)==66){
L=c[D>>2]|0;i=M;return L|0}c[q>>2]=c[(c[l>>2]|0)+20>>2];c[C>>2]=(c[q>>
;2]|0)+((c[(c[l>>2]|0)+12>>2]|0)*48|0);c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)
x3e;>>0>=(c[C>>2]|0)>>>0)break;c[H>>2]=c[(c[z>>2]|0)+40>>2
];if(c[H>>2]|0)do{c[(c[H>>2]|0)+12>>2]=c[z>>2];c[H>>2]=c[(c[H>>2]|0)+
16>>2]}while((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));c[z>>2]=(c[z>>2]|
0)+48}c[z>>2]=c[q>>2];while(1){if((c[z>>2]|0)>>>0>=(c[C>>2]|0)>
x3e;>0)break;c[E>>2]=0;c[G>>2]=0;c[L>>2]=0;c[y>>2]=0;c[H>>2]=c[(c[z>
x3e;2]|0)+40>>2];do{if(d[c[H>>2]>>0]&1|0)c[E>>2]=(c[E>>2]|0)+1;else c[G
x3e;>2]=(c[G>>2]|0)+1;f=(b[(c[H>>2]|0)+6>>1]|0)-(b[(c[H>>2]|0)+4>>1]|0)|0
;if((a[(c[H>>2]|0)+1>>0]|0)==(c[K>>2]|0))c[L>>2]=(c[L>>2]|0)+f;else c[y>
x3e;2]=(c[y>>2]|0)+f;if(c[(c[H>>2]|0)+24>>2]|0?c[(c[(c[H>>2]|0)+24>>2]|0)+12
x3e;>2]|0:0)f=(c[(c[(c[H>>2]|0)+24>>2]|0)+12>>2]|0)!=(c[z>>2]|0);else f=0;a[F>
x3e;0]=f&1;if(c[(c[H>>2]|0)+20>>2]|0?c[(c[(c[H>>2]|0)+20>>2]|0)+12>>2]|0:
0)x=45;else x=44;if((x|0)==44?(x=0,d[F>>0]|0):0)x=45;do if((x|0)==45){c[A>>2]=c[(c[z>>2]|0)+24>
;>2];c[I>>2]=c[(c[H>>2]|0)+20>>2];if(a[F>>0]|0){c[I>>2]=c[(c[H>>
;2]|0)+24>>2];c[A>>2]=c[(c[z>>2]|0)+28>>2]}if(c[A>>2]|0){c[B>>2]=(b[
c[z>>2]>>1]|0)-(b[c[A>>2]>>1]|0);if((c[B>>2]|0)<0)c[B>>2]=0-(c[
B>>2]|0);c[J>>2]=(b[(c[H>>2]|0)+2>>1]|0)-(b[(c[I>>2]|0)+2>>1]|0);if((
c[J>>2]|0)<0)c[J>>2]=0-(c[J>>2]|0);if((c[J>>2]|0)<(c[B>>2]|0))c[A>
;>2]=c[(c[I>>2]|0)+12>>2]}else c[A>>2]=c[(c[I>>2]|0)+12>>2];f=c[A>
x3e;2]|0;e=c[z>>2]|0;if(a[F>>0]|0){c[e+28>>2]=f;x=(c[A>>2]|0)+12|0;a[x>>0]=d[x
>>0]|2;break}else{c[e+24>>2]=f;break}}while(0);c[H>>2]=c[(c[H>>2]|0)+16>>2]}while
((c[H>>2]|0)!=(c[(c[z>>2]|0)+40>>2]|0));a[(c[z>>2]|0)+12>>0]=0;if((c[E>
x3e;2]|0)>0?(c[E>>2]|0)>=(c[G>>2]|0):0){x=(c[z>>2]|0)+12|0;a[x>>0]=d[x>
x3e;0]|1}if(c[(c[z>>2]|0)+28>>2]|0?c[(c[z>>2]|0)+24>>2]|0:0)c[(c[z>>2]|0)+28
x3e;>2]=0;c[z>>2]=(c[z>>2]|0)+48}L=c[D>>2]|0;i=M;return L|0}function Yl(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,t=0,u=0;u=i;i=i+48|0;n=u+40|0;o=u+36|0;p=u+32|0;j=u+28|0;q=u+24|
0;t=u+20|0;r=u+16|0;s=u+12|0;m=u+8|0;l=u+4|0;k=u;c[n>>2]=d;c[o>>2]=e;c[p>>2]=f;c[j>>2]=g
;c[q>>2]=h;c[t>>2]=0;c[r>>2]=0;do if((c[(c[n>>2]|0)+12>>2]|0)>=(c[(c[n>
;>2]|0)+16>>2]|0)){c[m>>2]=c[(c[n>>2]|0)+16>>2];c[l>>2]=c[m>>2];
c[k>>2]=44739242;if((c[m>>2]|0)>=(c[k>>2]|0)){c[t>>2]=64;r=c[r>>2]|0;s=c[
q>>2]|0;c[s>>2]=r;t=c[t>>2]|0;i=u;return t|0}c[l>>2]=(c[l>>2]|0)+((c[l>
x3e;2]>>2)+4);if(!((c[l>>2]|0)>=(c[m>>2]|0)?(c[l>>2]|0)<=(c[k>>2]|0):
0))c[l>>2]=c[k>>2];m=hc(c[j>>2]|0,48,c[m>>2]|0,c[l>>2]|0,c[(c[n>>2]|
0)+20>>2]|0,t)|0;c[(c[n>>2]|0)+20>>2]=m;if(c[t>>2]|0){r=c[r>>2]|0;s=c[q>
x3e;2]|0;c[s>>2]=r;t=c[t>>2]|0;i=u;return t|0}else{c[(c[n>>2]|0)+16>>2]=c[l>>2
];break}}while(0);c[s>>2]=c[(c[n>>2]|0)+20>>2];c[r>>2]=(c[s>>2]|0)+((c[(c[n>
;>2]|0)+12>>2]|0)*48|0);while(1){if((c[r>>2]|0)>>>0<=(c[s>>2]|0)>>
;>0)break;if((b[(c[r>>2]|0)+-48>>1]|0)<(c[o>>2]|0))break;if((b[(c[r>>2]|0)+-48
>>1]|0)==(c[o>>2]|0)?(c[p>>2]|0)==(c[(c[n>>2]|0)+24>>2]|0):0)break;j=c[r>
x3e;2]|0;h=(c[r>>2]|0)+-48|0;d=j+48|0;do{c[j>>2]=c[h>>2];j=j+4|0;h=h+4|0}while((j|0)<(d|0));c
[r>>2]=(c[r>>2]|0)+-48}j=(c[n>>2]|0)+12|0;c[j>>2]=(c[j>>2]|0)+1;j=c[r>>
;2]|0;d=j+48|0;do{c[j>>2]=0;j=j+4|0}while((j|0)<(d|0));b[c[r>>2]>>1]=c[o>>2];a[(c[r
>>2]|0)+13>>0]=c[p>>2];r=c[r>>2]|0;s=c[q>>2]|0;c[s>>2]=r;t=c[t>
x3e;2]|0;i=u;return t|0}function Zl(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;v=i;i=i
+64|0;w=v+44|0;g=v+40|0;h=v+36|0;o=v+32|0;p=v+28|0;t=v+24|0;u=v+20|0;j=v+16|0;k=v+12|0;l=v+8|0;m=v+4|0;r=v+50|0;q=v+49|0;n=v;s=v
+48|0;c[w>>2]=e;c[g>>2]=f;c[h>>2]=(c[w>>2]|0)+48+28;c[o>>2]=c[(c[h>>
2]|0)+20>>2];c[p>>2]=(c[o>>2]|0)+((c[(c[h>>2]|0)+12>>2]|0)*48|0);c[t>>
;2]=(c[g>>2]|0)+40+396;c[u>>2]=c[c[t>>2]>>2];while(1){if((c[o>>2]|0)>>
;>0>=(c[p>>2]|0)>>>0)break;c[k>>2]=0;w=Mb(((c[(c[g>>2]|0)+36>>2
]|0)>>>0)/40|0,c[u>>2]|0)|0;c[l>>2]=w;c[l>>2]=(c[l>>2]|0)>32?32:w;c[
j>>2]=0;while(1){if((c[j>>2]|0)>=6)break;c[m>>2]=(c[t>>2]|0)+220+((c[j>>2
]|0)*28|0);if(c[(c[m>>2]|0)+24>>2]&1|0?(a[r>>0]=(c[(c[m>>2]|0)+24>>2]&
;2|0)!=0,a[q>>0]=(a[(c[o>>2]|0)+13>>0]|0)==(c[(c[h>>2]|0)+24>>2]|0),d[r>
x3e;0]^d[q>>0]|0):0){c[n>>2]=(b[c[o>>2]>>1]|0)-(c[c[m>>2]>>2]|0);if((
c[n>>2]|0)<0)c[n>>2]=0-(c[n>>2]|0);c[n>>2]=Mb(c[n>>2]|0,c[u>>2]|
0)|0;if((c[n>>2]|0)<(c[l>>2]|0)){c[l>>2]=c[n>>2];c[k>>2]=c[m>>2
]}if((c[n>>2]|0?(d[(c[o>>2]|0)+12>>0]&1|0)!=0:0)?(a[s>>0]=(b[c[o>>2]>
;>1]|0)<(c[c[m>>2]>>2]|0),d[r>>0]^d[s>>0]|0):0){c[m>>2]=(c[t>
x3e;2]|0)+220+((c[j>>2]|0)*28|0);c[n>>2]=(b[c[o>>2]>>1]|0)-(c[(c[m>>2]|0)+12
x3e;>2]|0);if((c[n>>2]|0)<0)c[n>>2]=0-(c[n>>2]|0);c[n>>2]=Mb(c[n>>2]|
0,c[u>>2]|0)|0;if((c[n>>2]|0)<(c[l>>2]|0)){c[l>>2]=c[n>>2];c[k>>
;2]=(c[m>>2]|0)+12}}}c[j>>2]=(c[j>>2]|0)+1}if(c[k>>2]|0)c[(c[o>>2]|0)+20>
x3e;2]=c[k>>2];c[o>>2]=(c[o>>2]|0)+48}i=v;return}function _l(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,D=0,E=0,F=0,G=0,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;U=i;i=i+176|0;M=U+160|0;j=U+156|0;V=U+152|0;T=U+148|0;S=U+144|0;K=U+140|0;R=U+136|0;O=U+132|0;J=U+128|0;
f=U+124|0;g=U+120|0;h=U+116|0;t=U+112|0;y=U+108|0;w=U+104|0;k=U+100|0;m=U+96|0;u=U+92|0;v=U+88|0;B=U+84|0;p=U+80|0;A=U+76|0;z=U+
72|0;x=U+68|0;l=U+64|0;n=U+60|0;o=U+56|0;r=U+52|0;s=U+48|0;C=U+44|0;q=U+40|0;G=U+36|0;H=U+32|0;I=U+28|0;E=U+24|0;F=U+20|0;L=U+16
|0;D=U+12|0;Q=U+8|0;P=U+4|0;N=U;c[M>>2]=b;c[j>>2]=e;c[V>>2]=(c[M>>2]|0)+48+((c[j>
x3e;2]|0)*28|0);c[T>>2]=c[(c[V>>2]|0)+20>>2];c[S>>2]=(c[T>>2]|0)+((c[(c[V>
;>2]|0)+12>>2]|0)*48|0);c[O>>2]=0;c[J>>2]=0;a:do if((c[j>>2]|0)==1){c[R>>
2]=c[T>>2];while(1){if((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break a
;if(!((d[(c[R>>2]|0)+12>>0]|0)&4)){c[f>>2]=c[(c[R>>2]|0)+20>>2];c[g>
x3e;2]=0;c[h>>2]=c[(c[R>>2]|0)+24>>2];if(!(c[f>>2]|0)){if(c[h>>2]|0?c[(c[h>
;>2]|0)+20>>2]|0:0){c[f>>2]=c[(c[h>>2]|0)+20>>2];c[g>>2]=c[h>>2
];c[h>>2]=c[R>>2]}}else c[g>>2]=c[R>>2];if(c[g>>2]|0){c[(c[g>>2]|0)+
8>>2]=c[(c[f>>2]|0)+8>>2];V=(c[g>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if(
c[h>>2]|0?(c[(c[h>>2]|0)+20>>2]|0)==0:0){$l(c[M>>2]|0,c[j>>2]|0,c[g>>
;2]|0,c[h>>2]|0);V=(c[h>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4}if(!(c[O>>2]|0))c[O>
;>2]=c[R>>2]}}c[R>>2]=(c[R>>2]|0)+48}}while(0);c[R>>2]=c[T>>2];while(1){if
((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;do if(!((d[(c[R>>2]|0)+
12>>0]|0)&4)){c[t>>2]=c[(c[R>>2]|0)+24>>2];if(!(c[t>>2]|0)){c[J>>
;2]=(c[J>>2]|0)+1;break}if(c[(c[t>>2]|0)+20>>2]|0){$l(c[M>>2]|0,c[j>>2]|0,c[t
x3e;>2]|0,c[R>>2]|0);V=(c[R>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;break}if(!(c[O>>
;2]|0)){c[y>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0);c[k>>
;2]=am(c[M>>2]|0,c[j>>2]|0,c[y>>2]|0,d[(c[R>>2]|0)+12>>0]|0,d[(c[t>>
2]|0)+12>>0]|0)|0;if((c[k>>2]|0)<=64){c[p>>2]=32;c[B>>2]=32}else{c[B>>2]=
38;c[p>>2]=26}f=c[(c[R>>2]|0)+4>>2]|0;if((c[k>>2]|0)<96){c[w>>2]=f+(c[y
x3e;>2]>>1);c[m>>2]=(c[w>>2]|0)+32&-64;c[u>>2]=(c[w>>2]|0)-((c[m>
;>2]|0)-(c[B>>2]|0));if((c[u>>2]|0)<0)c[u>>2]=0-(c[u>>2]|0);c[v>>2]=(
c[w>>2]|0)-((c[m>>2]|0)+(c[p>>2]|0));if((c[v>>2]|0)<0)c[v>>2]=0-(c[v>
;>2]|0);if((c[u>>2]|0)<(c[v>>2]|0))c[m>>2]=(c[m>>2]|0)-(c[B>>2]|0);else
c[m>>2]=(c[m>>2]|0)+(c[p>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[m>>2]|0)-((c
[k>>2]|0)/2|0);c[(c[t>>2]|0)+8>>2]=(c[(c[R>>2]|0)+8>>2]|0)+(c[k>>2]|
0)}else c[(c[R>>2]|0)+8>>2]=f+32&-64;c[O>>2]=c[R>>2];V=(c[R>>2]|0)+12|0;a
[V>>0]=d[V>>0]|0|4;$l(c[M>>2]|0,c[j>>2]|0,c[R>>2]|0,c[t>>2]|0);break
}c[A>>2]=(c[(c[O>>2]|0)+8>>2]|0)+((c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2
]|0)+4>>2]|0));c[z>>2]=(c[(c[t>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|
0);c[x>>2]=(c[A>>2]|0)+(c[z>>2]>>1);c[l>>2]=am(c[M>>2]|0,c[j>
x3e;2]|0,c[z>>2]|0,d[(c[R>>2]|0)+12>>0]|0,d[(c[t>>2]|0)+12>>0]|0)|0;do if((d[(
c[t>>2]|0)+12>>0]|0)&4|0)c[(c[R>>2]|0)+8>>2]=(c[(c[t>>2]|0)+8>>
2]|0)-(c[l>>2]|0);else{if((c[l>>2]|0)>=96){c[A>>2]=(c[(c[O>>2]|0)+8>>2]|0
)+((c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2]|0)+4>>2]|0));c[z>>2]=(c[(c[t>>
;2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0);c[x>>2]=(c[A>>2]|0)+(c[z>>2]
x3e;>1);c[l>>2]=am(c[M>>2]|0,c[j>>2]|0,c[z>>2]|0,d[(c[R>>2]|0)+12>
x3e;0]|0,d[(c[t>>2]|0)+12>>0]|0)|0;c[n>>2]=(c[A>>2]|0)+32&-64;c[r>>2]=(c[
n>>2]|0)+(c[l>>2]>>1)-(c[x>>2]|0);if((c[r>>2]|0)<0)c[r>>2]=0-(c
[r>>2]|0);c[o>>2]=((c[A>>2]|0)+(c[z>>2]|0)+32&-64)-(c[l>>2]|0);c[s>
x3e;2]=(c[o>>2]|0)+(c[l>>2]>>1)-(c[x>>2]|0);if((c[s>>2]|0)<0)c[s>>
;2]=0-(c[s>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[r>>2]|0)<(c[s>>2]|0)?c[n>
x3e;2]|0:c[o>>2]|0;c[(c[t>>2]|0)+8>>2]=(c[(c[R>>2]|0)+8>>2]|0)+(c[l>>
;2]|0);break}c[n>>2]=(c[x>>2]|0)+32&-64;if((c[l>>2]|0)<=64){c[q>>2]=32;c[C>
;>2]=32}else{c[C>>2]=38;c[q>>2]=26}c[r>>2]=(c[x>>2]|0)-((c[n>>2]|0)-(c[C
x3e;>2]|0));if((c[r>>2]|0)<0)c[r>>2]=0-(c[r>>2]|0);c[s>>2]=(c[x>>2]|
0)-((c[n>>2]|0)+(c[q>>2]|0));if((c[s>>2]|0)<0)c[s>>2]=0-(c[s>>2]|0);if((c
[r>>2]|0)<(c[s>>2]|0))c[n>>2]=(c[n>>2]|0)-(c[C>>2]|0);else c[n>>
;2]=(c[n>>2]|0)+(c[q>>2]|0);c[(c[R>>2]|0)+8>>2]=(c[n>>2]|0)-((c[l>>2
]|0)/2|0);c[(c[t>>2]|0)+8>>2]=(c[n>>2]|0)+((c[l>>2]|0)/2|0)}while(0);V=(c[R>>2
]|0)+12|0;a[V>>0]=d[V>>0]|0|4;V=(c[t>>2]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if((c[R
x3e;>2]|0)>>>0>(c[T>>2]|0)>>>0?(c[(c[R>>2]|0)+8>>2]|0)<
;(c[(c[R>>2]|0)+-48+8>>2]|0):0)c[(c[R>>2]|0)+8>>2]=c[(c[R>>2]|0)+-48+8>
x3e;2]}while(0);c[R>>2]=(c[R>>2]|0)+48}c[K>>2]=((c[S>>2]|0)-(c[T>>2]|0)|0)/48|
0;if((c[j>>2]|0)==0?(c[K>>2]|0)==6|(c[K>>2]|0)==12:0){f=c[T>>2]|0;if((c[K>>2]|
0)==6){c[G>>2]=f;c[H>>2]=(c[T>>2]|0)+96;c[I>>2]=(c[T>>2]|0)+192}else{c[G>
x3e;2]=f+48;c[H>>2]=(c[T>>2]|0)+240;c[I>>2]=(c[T>>2]|0)+432}c[E>>2]=(c[(c[H>
;>2]|0)+4>>2]|0)-(c[(c[G>>2]|0)+4>>2]|0);c[F>>2]=(c[(c[I>>2]|0)+4>
x3e;2]|0)-(c[(c[H>>2]|0)+4>>2]|0);c[L>>2]=(c[E>>2]|0)-(c[F>>2]|0);if((c[L>
;>2]|0)<0)c[L>>2]=0-(c[L>>2]|0);if((c[L>>2]|0)<8){c[D>>2]=(c[(c[I>
x3e;2]|0)+8>>2]|0)-((c[(c[H>>2]|0)+8>>2]<<1)-(c[(c[G>>2]|0)+8>>2]|0));
V=(c[I>>2]|0)+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0);if(c[(c[I>>2]|0)+24>>
;2]|0){V=(c[(c[I>>2]|0)+24>>2]|0)+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0)}if((c[K
x3e;>2]|0)==12){V=(c[T>>2]|0)+384+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0);V=(c[T>
x3e;2]|0)+528+8|0;c[V>>2]=(c[V>>2]|0)-(c[D>>2]|0)}V=(c[I>>2]|0)+12|0;a[V>>0]=d
[V>>0]|0|4;if(c[(c[I>>2]|0)+24>>2]|0){V=(c[(c[I>>2]|0)+24>>2]|0)+12|0;a[V>
;>0]=d[V>>0]|0|4}}}if((c[J>>2]|0)==0&(c[O>>2]|0)!=0){i=U;return}c[R>>2]=c[T>
;>2];while(1){if((c[R>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;if(!((d[(c[R
>>2]|0)+12>>0]|0)&4)){c[Q>>2]=1e3;if(c[(c[R>>2]|0)+28>>2]|0?(c[Q>>
;2]=(c[(c[(c[R>>2]|0)+28>>2]|0)+4>>2]|0)-(c[(c[R>>2]|0)+4>>2]|0),(c[Q>>
;2]|0)<0):0)c[Q>>2]=0-(c[Q>>2]|0);do if((c[Q>>2]|0)<80)cm(c[M>>2]|0,c[(c[R>
;>2]|0)+28>>2]|0,c[R>>2]|0);else{f=c[R>>2]|0;if(!(c[O>>2]|0)){c[(c[R>>2]|
0)+8>>2]=(c[f+4>>2]|0)+32&-64;c[O>>2]=c[R>>2];break}c[P>>2]=f+-48;while(1
){if((c[P>>2]|0)>>>0<(c[T>>2]|0)>>>0)break;if((d[(c[P>>2]|0)+12
>>0]|0)&4|0)break;c[P>>2]=(c[P>>2]|0)+-48}c[N>>2]=(c[R>>2]|0)+48;while(1){
if((c[N>>2]|0)>>>0>=(c[S>>2]|0)>>>0)break;if((d[(c[N>>2]|0)+12
x3e;>0]|0)&4|0)break;c[N>>2]=(c[N>>2]|0)+48}if((((c[P>>2]|0)>>>0>=(c
[T>>2]|0)>>>0?(c[P>>2]|0)>>>0<(c[R>>2]|0)>>>0:0)?(
c[N>>2]|0)>>>0<(c[S>>2]|0)>>>0:0)?(c[N>>2]|0)>>>
0>(c[R>>2]|0)>>>0:0){f=c[(c[P>>2]|0)+8>>2]|0;e=c[R>>2]|0;if((c[(c[N
x3e;>2]|0)+4>>2]|0)==(c[(c[P>>2]|0)+4>>2]|0)){c[e+8>>2]=f;break}else{V=f+(xb((c[e+4
>>2]|0)-(c[(c[P>>2]|0)+4>>2]|0)|0,(c[(c[N>>2]|0)+8>>2]|0)-(c[(c[P>>2
]|0)+8>>2]|0)|0,(c[(c[N>>2]|0)+4>>2]|0)-(c[(c[P>>2]|0)+4>>2]|0)|0)|0)|0;c[(c[R
>>2]|0)+8>>2]=V;break}}c[(c[R>>2]|0)+8>>2]=(c[(c[O>>2]|0)+8>>2]|0)+((
c[(c[R>>2]|0)+4>>2]|0)-(c[(c[O>>2]|0)+4>>2]|0)+16&-32)}while(0);V=(c[R>>2
]|0)+12|0;a[V>>0]=d[V>>0]|0|4;if((c[R>>2]|0)>>>0>(c[T>>2]|0)>
x3e;>0?(c[(c[R>>2]|0)+8>>2]|0)<(c[(c[R>>2]|0)+-48+8>>2]|0):0)c[(c[R>>
;2]|0)+8>>2]=c[(c[R>>2]|0)+-48+8>>2];if((((c[R>>2]|0)+48|0)>>>0<(c[S
>>2]|0)>>>0?(d[(c[R>>2]|0)+48+12>>0]|0)&4|0:0)?(c[(c[R>>2]|0)+8>
;>2]|0)>(c[(c[R>>2]|0)+48+8>>2]|0):0)c[(c[R>>2]|0)+8>>2]=c[(c[R>>2]|
0)+48+8>>2]}c[R>>2]=(c[R>>2]|0)+48}i=U;return}function $l(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;g=i;i=i+32|0;n=g+20|0;m=g+16|0;k=g+12|0;h=g+8|0;l=g+4|0;j=g;c[n>>2]=a;c[m>>2]=b;c[k
>>2]=e;c[h>>2]=f;c[l>>2]=(c[(c[h>>2]|0)+4>>2]|0)-(c[(c[k>>2]|0)+4>
;>2]|0);c[j>>2]=am(c[n>>2]|0,c[m>>2]|0,c[l>>2]|0,d[(c[k>>2]|0)+12>
x3e;0]|0,d[(c[h>>2]|0)+12>>0]|0)|0;c[(c[h>>2]|0)+8>>2]=(c[(c[k>>2]|0)+8>
x3e;2]|0)+(c[j>>2]|0);i=g;return}function am(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;u=i;i=i+64|0;q=u+52|0;j=u+48|0;v=u+44|0;h=u+40|0;o=u+36|0;k=u+32|0;w=u+28|0;p=u+24|0;s=u+20|0;t=
u+16|0;n=u+12|0;r=u+8|0;m=u+4|0;l=u;c[j>>2]=a;c[v>>2]=b;c[h>>2]=e;c[o>>2]=f;c[k>>
;2]=g;c[w>>2]=c[(c[j>>2]|0)+112>>2];c[p>>2]=(c[w>>2]|0)+40+((c[v>>2]|
0)*396|0);c[s>>2]=c[h>>2];c[t>>2]=0;c[n>>2]=(c[v>>2]|0)==1&1;if(c[(c[j>
;>2]|0)+108>>2]&4|0?(d[(c[p>>2]|0)+212>>0]|0|0)==0:0){if((c[s>>2]|0)<0){c
[s>>2]=0-(c[h>>2]|0);c[t>>2]=1}if(c[n>>2]|0?!(c[(c[j>>2]|0)+108>>2]
x26;2|0):0)b=10;else b=8;do if((b|0)==8){if((c[n>>2]|0)==0?(c[(c[j>>2]|0)+108>>2]&1|0)==0:0){
b=10;break}c[m>>2]=c[s>>2];c[s>>2]=bm((c[p>>2]|0)+12|0,c[(c[p>>2]|0)+8>
x3e;2]|0,c[s>>2]|0)|0;if(c[n>>2]|0)if((c[s>>2]|0)>=64){c[s>>2]=(c[s>>2]|0
)+16&-64;break}else{c[s>>2]=64;break}h=c[s>>2]|0;if(c[(c[j>>2]|0)+108>>2]&8|0)
if((h|0)<64){c[s>>2]=64;break}else{c[s>>2]=(c[s>>2]|0)+32&-64;break}f=c[s>>2]|
0;if((h|0)<48){c[s>>2]=f+64>>1;break}h=c[s>>2]|0;if((f|0)>=128){c[s>>2]=h+32
x26;-64;break}c[s>>2]=h+22&-64;c[l>>2]=(c[s>>2]|0)-(c[m>>2]|0);if((c[l>>2
]|0)<0)c[l>>2]=0-(c[l>>2]|0);if((c[l>>2]|0)>=16?(c[s>>2]=c[m>>2],(c[
s>>2]|0)<48):0)c[s>>2]=(c[s>>2]|0)+64>>1}while(0);do if((b|0)==10?!((c[k>>
;2]&2|0)!=0&(c[n>>2]|0)!=0&(c[s>>2]|0)<192):0){h=c[s>>2]|0;if(c[o>>2
]&1|0){if((h|0)<80)c[s>>2]=64}else if((h|0)<56)c[s>>2]=56;if((c[(c[p>>2]|0)+8>
x3e;2]|0)>>>0>0){c[r>>2]=(c[s>>2]|0)-(c[(c[p>>2]|0)+12+4>>2]|0);if((
c[r>>2]|0)<0)c[r>>2]=0-(c[r>>2]|0);if((c[r>>2]|0)<40){w=c[(c[p>>2]|0
)+12+4>>2]|0;c[s>>2]=w;c[s>>2]=(c[s>>2]|0)<48?48:w;break}h=c[s>>2]|0;if((
c[s>>2]|0)>=192){c[s>>2]=h+32&-64;break}c[r>>2]=h&63;c[s>>2]=c[s>>
;2]&-64;h=c[r>>2]|0;if((c[r>>2]|0)<10){c[s>>2]=(c[s>>2]|0)+h;break}if((h|0)<
;32){c[s>>2]=(c[s>>2]|0)+10;break}if((c[r>>2]|0)<54){c[s>>2]=(c[s>>2]|0)+
54;break}else{c[s>>2]=(c[s>>2]|0)+(c[r>>2]|0);break}}}while(0);if(c[t>>2]|0)c[s>>
;2]=0-(c[s>>2]|0);c[q>>2]=c[s>>2];w=c[q>>2]|0;i=u;return w|0}c[q>>2]=c[h>
x3e;2];w=c[q>>2]|0;i=u;return w|0}function bm(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;o=i
;i=i+48|0;e=o+32|0;f=o+28|0;m=o+24|0;j=o+20|0;g=o+16|0;n=o+12|0;l=o+8|0;k=o+4|0;h=o;c[e>>2]=a;c[f>>2]=b;c[m
x3e;>2]=d;c[g>>2]=98;c[n>>2]=c[m>>2];c[j>>2]=0;while(1){if((c[j>>2]|0)>
;=(c[f>>2]|0))break;c[k>>2]=c[(c[e>>2]|0)+((c[j>>2]|0)*12|0)+4>>2];c[h>
x3e;2]=(c[m>>2]|0)-(c[k>>2]|0);if((c[h>>2]|0)<0)c[h>>2]=0-(c[h>>2]|0);if((
c[h>>2]|0)<(c[g>>2]|0)){c[g>>2]=c[h>>2];c[n>>2]=c[k>>2]}c[j>
;>2]=(c[j>>2]|0)+1}c[l>>2]=(c[n>>2]|0)+32&-64;f=c[m>>2]|0;e=c[l>>2]|
0;if((c[m>>2]|0)>=(c[n>>2]|0)){if((f|0)>=(e+48|0)){n=c[m>>2]|0;i=o;return n|0}c[m>
x3e;2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}else{if((f|0)<=(e-48|0)){n=c[m>>2]|0;i=o;return n|0
}c[m>>2]=c[n>>2];n=c[m>>2]|0;i=o;return n|0}return 0}function cm(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;c[h>>2]=c[h
x3e;>2];c[(c[f>>2]|0)+8>>2]=(c[(c[g>>2]|0)+8>>2]|0)+((c[(c[f>>2]|0)+4>
;>2]|0)-(c[(c[g>>2]|0)+4>>2]|0));i=e;return}function dm(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,q=0,r=0,s=0,t=0,u=0;q=i;i=i+64|0;u=q+52|0;s=q+48|0;t=q+44|0;r=q+40|0;p=q+36|0;o=q+32|0;f=q+28|0;m=q+24|0;h=q+20|0;
k=q+16|0;g=q+12|0;n=q+8|0;j=q+4|0;l=q;c[u>>2]=a;c[s>>2]=d;c[t>>2]=(c[u>>2]|0)+48+((c[s
x3e;>2]|0)*28|0);c[r>>2]=c[(c[t>>2]|0)+8>>2];c[p>>2]=(c[r>>2]|0)+((c[c[t
x3e;>2]>>2]|0)*52|0);a=(c[s>>2]|0)==0;c[o>>2]=c[r>>2];if(a){while(1){if((c[o>
x3e;2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[f>>2]=c[(c[o>>2]|0)+12
x3e;>2];a:do if(c[f>>2]|0){c[h>>2]=c[(c[o>>2]|0)+40>>2];c[k>>2]=c[(c[o>
;>2]|0)+44>>2];c[m>>2]=c[h>>2];while(1){c[(c[m>>2]|0)+16>>2]=c[(c[f>
x3e;2]|0)+8>>2];u=c[m>>2]|0;b[u>>1]=e[u>>1]|0|64;if((c[m>>2]|0)==(c[k>>
;2]|0))break a;c[m>>2]=c[(c[m>>2]|0)+32>>2]}}while(0);c[o>>2]=(c[o>>2]|0)+52}i
=q;return}else{while(1){if((c[o>>2]|0)>>>0>=(c[p>>2]|0)>>>0)break;c[g>
;>2]=c[(c[o>>2]|0)+12>>2];b:do if(c[g>>2]|0){c[j>>2]=c[(c[o>>2]|0)+40>
;>2];c[l>>2]=c[(c[o>>2]|0)+44>>2];c[n>>2]=c[j>>2];while(1){c[(c[n>
x3e;2]|0)+20>>2]=c[(c[g>>2]|0)+8>>2];u=c[n>>2]|0;b[u>>1]=e[u>>1]|0|128
;if((c[n>>2]|0)==(c[l>>2]|0))break b;c[n>>2]=c[(c[n>>2]|0)+32>>2]}}while(0);c[
o>>2]=(c[o>>2]|0)+52}i=q;return}}function em(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,q=
0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;z=i;i=i+96|0;B=z+80|0;g=z+76|0;f=z+72|0;w=z+68|0;A=z+64|0;n=z+60|0;m=z+56|0;x=z+52
|0;v=z+48|0;l=z+44|0;y=z+40|0;u=z+36|0;p=z+32|0;k=z+28|0;s=z+24|0;q=z+20|0;r=z+16|0;o=z+12|0;t=z+8|0;j=z+4|0;h=z;c[B>>
2]=a;c[g>>2]=d;c[f>>2]=c[(c[B>>2]|0)+32>>2];c[w>>2]=(c[f>>2]|0)+((c[(
c[B>>2]|0)+28>>2]|0)*40|0);c[A>>2]=(c[B>>2]|0)+48+((c[g>>2]|0)*28|0);c[n>
x3e;2]=c[(c[A>>2]|0)+20>>2];c[m>>2]=(c[n>>2]|0)+((c[(c[A>>2]|0)+12>>
2]|0)*48|0);if(!(c[g>>2]|0))c[x>>2]=64;else c[x>>2]=128;if((c[n>>2]|0)>>>
0>=(c[m>>2]|0)>>>0){i=z;return}c[v>>2]=c[f>>2];while(1){if((c[v>>2]|
0)>>>0>=(c[w>>2]|0)>>>0)break;do if(!(e[c[v>>2]>>1]&c[x>
;>2])){if(e[c[v>>2]>>1]&256|0?(e[c[v>>2]>>1]&512|0)==0:0)break;d=c[v>
;>2]|0;if((c[g>>2]|0)==1){c[y>>2]=b[d+14>>1];c[u>>2]=c[(c[v>>2]|0)+8>
;>2]}else{c[y>>2]=b[d+12>>1];c[u>>2]=c[(c[v>>2]|0)+4>>2]}c[p>>2
]=c[y>>2];c[l>>2]=c[n>>2];c[k>>2]=(b[c[l>>2]>>1]|0)-(c[y>>
2]|0);a:do if((c[k>>2]|0)>=0)c[y>>2]=(c[(c[l>>2]|0)+8>>2]|0)-((c[(c[l>>2]|
0)+4>>2]|0)-(c[u>>2]|0));else{c[l>>2]=(c[m>>2]|0)+-48;c[k>>2]=(c[y>>
2]|0)-(b[c[l>>2]>>1]|0);if((c[k>>2]|0)>=0){c[y>>2]=(c[(c[l>>2]|0)+8>
x3e;2]|0)+((c[u>>2]|0)-(c[(c[l>>2]|0)+4>>2]|0));break}c[s>>2]=0;c[q>>2]=((c[m
x3e;>2]|0)-(c[n>>2]|0)|0)/48|0;b:do if((c[q>>2]|0)<=8){c[t>>2]=0;while(1){if((c[t>
x3e;2]|0)>=(c[q>>2]|0))break;if((b[(c[n>>2]|0)+((c[t>>2]|0)*48|0)>>1]|0)>=(c[y
>>2]|0))break;c[t>>2]=(c[t>>2]|0)+1}d=c[t>>2]|0;if((b[(c[n>>2]|0)+((c[t>
x3e;2]|0)*48|0)>>1]|0)==(c[y>>2]|0)){c[y>>2]=c[(c[n>>2]|0)+(d*48|0)+8>>2];break
a}else{c[s>>2]=d;break}}else{while(1){if((c[s>>2]|0)>=(c[q>>2]|0))break b;c[r>>2]=(
c[q>>2]|0)+(c[s>>2]|0)>>1;c[l>>2]=(c[n>>2]|0)+((c[r>>2]|0)*48|0);c[o
>>2]=b[c[l>>2]>>1];if((c[y>>2]|0)<(c[o>>2]|0)){c[q>>2]=c[r>
;>2];continue}if((c[y>>2]|0)<=(c[o>>2]|0))break;c[s>>2]=(c[r>>2]|0)+1}c[y>
;>2]=c[(c[l>>2]|0)+8>>2];break a}while(0);c[j>>2]=(c[n>>2]|0)+((c[s>>2]|0
)*48|0)+-48;c[h>>2]=(c[n>>2]|0)+((c[s>>2]|0)*48|0);if(!(c[(c[j>>2]|0)+16>>2]|0
)){B=Vb((c[(c[h>>2]|0)+8>>2]|0)-(c[(c[j>>2]|0)+8>>2]|0)|0,(b[c[h>>2]>>
;1]|0)-(b[c[j>>2]>>1]|0)|0)|0;c[(c[j>>2]|0)+16>>2]=B}B=c[(c[j>>2]|0)+8>
x3e;2]|0;c[y>>2]=B+(Mb((c[p>>2]|0)-(b[c[j>>2]>>1]|0)|0,c[(c[j>>2]|0)+16>
x3e;2]|0)|0)}while(0);d=c[y>>2]|0;a=c[v>>2]|0;if(!(c[g>>2]|0))c[a+16>>2]=d;else c[a+20
x3e;>2]=d;B=c[v>>2]|0;b[B>>1]=e[B>>1]|c[x>>2]}while(0);c[v>>2]=(c[v>
x3e;2]|0)+40}i=z;return}function fm(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,s=0;r=i;i=i+48|0;s=
r+44|0;d=r+40|0;o=r+36|0;n=r+32|0;f=r+28|0;g=r+24|0;p=r+20|0;m=r+16|0;h=r+12|0;j=r+8|0;k=r+4|0;l=r;c[s>>2]=a;c[d>
x3e;2]=b;c[o>>2]=c[(c[s>>2]|0)+32>>2];c[n>>2]=(c[o>>2]|0)+((c[(c[s>>
2]|0)+28>>2]|0)*40|0);c[f>>2]=c[(c[s>>2]|0)+44>>2];c[g>>2]=(c[f>>2]|
0)+(c[(c[s>>2]|0)+40>>2]<<2);a:do if(!(c[d>>2]|0)){c[p>>2]=64;c[m>>2
]=c[o>>2];while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a;
c[(c[m>>2]|0)+24>>2]=c[(c[m>>2]|0)+16>>2];c[(c[m>>2]|0)+28>>2]=c[(c[
m>>2]|0)+4>>2];c[m>>2]=(c[m>>2]|0)+40}}else{c[p>>2]=128;c[m>>2]=c[o
x3e;>2];while(1){if((c[m>>2]|0)>>>0>=(c[n>>2]|0)>>>0)break a;c[(c[m
x3e;>2]|0)+24>>2]=c[(c[m>>2]|0)+20>>2];c[(c[m>>2]|0)+28>>2]=c[(c[m>
x3e;2]|0)+8>>2];c[m>>2]=(c[m>>2]|0)+40}}while(0);c[m>>2]=c[o>>2];while(1){if((
c[f>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[m>>2]=c[c[f>>
2]>>2];c[h>>2]=c[(c[m>>2]|0)+36>>2];c[j>>2]=c[m>>2];while(1){if((c[m
>>2]|0)>>>0>(c[h>>2]|0)>>>0)break;b=c[m>>2]|0;if((e[c[m>
x3e;2]>>1]|0)&c[p>>2]|0){q=14;break}c[m>>2]=b+40}do if((q|0)==14){q=0;c[k>>2]=b;c[l
>>2]=c[m>>2];b:while(1){if((c[m>>2]|0)>>>0<(c[h>>2]|0)>>
x3e;0)b=((e[(c[m>>2]|0)+40>>1]|0)&c[p>>2]|0)!=0;else b=0;a=c[m>>2]|0;if(b){c[m>
;>2]=a+40;continue}c[l>>2]=a;c[m>>2]=(c[m>>2]|0)+40;while(1){if((c[m>>2]|0)>
x3e;>0>(c[h>>2]|0)>>>0)break b;if((e[c[m>>2]>>1]|0)&c[p>>2
]|0)break;c[m>>2]=(c[m>>2]|0)+40}gm((c[l>>2]|0)+40|0,(c[m>>2]|0)+-40|0,c[l>>2]|
0,c[m>>2]|0)}if((c[l>>2]|0)==(c[k>>2]|0)){hm(c[j>>2]|0,c[h>>2]|0,c[k>>
;2]|0);break}if((c[l>>2]|0)>>>0<(c[h>>2]|0)>>>0)gm((c[l>>2]|0)+
40|0,c[h>>2]|0,c[l>>2]|0,c[k>>2]|0);if((c[k>>2]|0)>>>0>(c[o>>
;2]|0)>>>0)gm(c[j>>2]|0,(c[k>>2]|0)+-40|0,c[l>>2]|0,c[k>>2]|0)}while(0);c
[f>>2]=(c[f>>2]|0)+4}s=(c[d>>2]|0)==0;c[m>>2]=c[o>>2];if(s){while(1){if((c[m
x3e;>2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[(c[m>>2]|0)+16>>2]=
c[(c[m>>2]|0)+24>>2];c[m>>2]=(c[m>>2]|0)+40}i=r;return}else{while(1){if((c[m>>
2]|0)>>>0>=(c[n>>2]|0)>>>0)break;c[(c[m>>2]|0)+20>>2]=c[(c[m>
;>2]|0)+24>>2];c[m>>2]=(c[m>>2]|0)+40}i=r;return}}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;q=i;i=i+48|0;f=q+36|0;g=q+32|0;h=q+28|0;j=q+24|0;m=q+20|0;n=q+16|0;o=q+12|0;p=
q+8|0;k=q+4|0;l=q;c[f>>2]=a;c[g>>2]=b;c[h>>2]=d;c[j>>2]=e;c[o>>2]=c[(c[h>
x3e;2]|0)+28>>2];c[p>>2]=c[(c[j>>2]|0)+28>>2];c[k>>2]=(c[(c[h>>2]|0)+
24>>2]|0)-(c[o>>2]|0);c[l>>2]=(c[(c[j>>2]|0)+24>>2]|0)-(c[p>>2]|0);if
((c[f>>2]|0)>>>0>(c[g>>2]|0)>>>0){i=q;return}if((c[o>>2]|0)==(c
[p>>2]|0)){c[m>>2]=c[f>>2];while(1){if((c[m>>2]|0)>>>0>(c[g>>
;2]|0)>>>0)break;c[n>>2]=c[(c[m>>2]|0)+28>>2];if((c[n>>2]|0)<=(c[o
x3e;>2]|0))c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);else c[n>>2]=(c[n>>2]|0)+(c[l
x3e;>2]|0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>2]|0)+40}i=q;return
}e=(c[o>>2]|0)<(c[p>>2]|0);c[m>>2]=c[f>>2];if(e){while(1){if((c[m>>2]|0)
x3e;>>0>(c[g>>2]|0)>>>0)break;c[n>>2]=c[(c[m>>2]|0)+28>>2];
do if((c[n>>2]|0)>(c[o>>2]|0))if((c[n>>2]|0)>=(c[p>>2]|0)){c[n>>2]=(
c[n>>2]|0)+(c[l>>2]|0);break}else{e=c[(c[h>>2]|0)+24>>2]|0;c[n>>2]=e+(xb((c[n
x3e;>2]|0)-(c[o>>2]|0)|0,(c[(c[j>>2]|0)+24>>2]|0)-(c[(c[h>>2]|0)+24>>2]|0
)|0,(c[p>>2]|0)-(c[o>>2]|0)|0)|0);break}else c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);while
(0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>2]|0)+40}i=q;return}else{while(
1){if((c[m>>2]|0)>>>0>(c[g>>2]|0)>>>0)break;c[n>>2]=c[(c[m>
;>2]|0)+28>>2];do if((c[n>>2]|0)>(c[p>>2]|0))if((c[n>>2]|0)>=(c[o>
x3e;2]|0)){c[n>>2]=(c[n>>2]|0)+(c[k>>2]|0);break}else{e=c[(c[h>>2]|0)+24>>2]|0
;c[n>>2]=e+(xb((c[n>>2]|0)-(c[o>>2]|0)|0,(c[(c[j>>2]|0)+24>>2]|0)-(c[(c[h>
;>2]|0)+24>>2]|0)|0,(c[p>>2]|0)-(c[o>>2]|0)|0)|0);break}else c[n>>2]=(c[n>>
;2]|0)+(c[l>>2]|0);while(0);c[(c[m>>2]|0)+24>>2]=c[n>>2];c[m>>2]=(c[m>>
;2]|0)+40}i=q;return}}function hm(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;e=k+16|0;f=k+12|0;g=k+8|0;j=
k+4|0;h=k;c[e>>2]=a;c[f>>2]=b;c[g>>2]=d;c[h>>2]=(c[(c[g>>2]|0)+24>>2
]|0)-(c[(c[g>>2]|0)+28>>2]|0);if(!(c[h>>2]|0)){i=k;return}c[j>>2]=c[e>>2];while
(1){if((c[j>>2]|0)>>>0>=(c[g>>2]|0)>>>0)break;c[(c[j>>2]|0)+24
x3e;>2]=(c[(c[j>>2]|0)+28>>2]|0)+(c[h>>2]|0);c[j>>2]=(c[j>>2]|0)+40}c[j
x3e;>2]=(c[g>>2]|0)+40;while(1){if((c[j>>2]|0)>>>0>(c[f>>2]|0)>>
;>0)break;c[(c[j>>2]|0)+24>>2]=(c[(c[j>>2]|0)+28>>2]|0)+(c[h>>2]|0);c[j
x3e;>2]=(c[j>>2]|0)+40}i=k;return}function im(b,d){b=b|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;m=k+20
|0;l=k+16|0;g=k+12|0;f=k+8|0;j=k+4|0;h=k;c[m>>2]=b;c[l>>2]=d;c[g>>2]=c[(c[m>>2]|0)+32>
;>2];c[f>>2]=(c[g>>2]|0)+((c[(c[m>>2]|0)+28>>2]|0)*40|0);c[j>>2]=c[(c[l
x3e;>2]|0)+4>>2];c[h>>2]=c[(c[l>>2]|0)+8>>2];while(1){if((c[g>>2]|0)>
;>>0>=(c[f>>2]|0)>>>0)break;c[c[j>>2]>>2]=c[(c[g>>2]|0)+16
>>2];c[(c[j>>2]|0)+4>>2]=c[(c[g>>2]|0)+20>>2];do if(!((e[c[g>>2]>
;>1]|0)&1|0)){b=c[h>>2]|0;if((e[c[g>>2]>>1]|0)&2|0){a[b>>0]=2;break}else{
a[b>>0]=1;break}}else a[c[h>>2]>>0]=0;while(0);c[g>>2]=(c[g>>2]|0)+40;c[j>
;>2]=(c[j>>2]|0)+8;c[h>>2]=(c[h>>2]|0)+1}i=k;return}function jm(a,b){a=a|0;b=b|0;var d=0,f=0,
g=0,h=0;h=i;i=i+16|0;d=h+8|0;f=h+4|0;g=h;c[d>>2]=a;c[f>>2]=b;c[g>>2]=c[(c[f>>2]|0)+92>
;>2];c[(c[d>>2]|0)+36>>2]=e[(c[f>>2]|0)+68>>1];if(Id(c[f>>2]|0,1970170211
)|0){c[(c[f>>2]|0)+92>>2]=0;a=c[f>>2]|0;g=c[g>>2]|0;Jd(a,g)|0;i=h;return 0}else{Gl(c[d
x3e;>2]|0,c[f>>2]|0,3e4);Rl(c[d>>2]|0,c[f>>2]|0);a=c[f>>2]|0;g=c[g>>2]|0;
Jd(a,g)|0;i=h;return 0}return 0}function km(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)+4|0;a=c[e>>2]|0;c[b>>2]=c[a>>2];c[b+4>>2]=c[a+4>
;>2];c[b+8>>2]=c[a+8>>2];c[b+12>>2]=c[a+12>>2];c[b+16>>2]=c[a+16>>
;2];c[b+20>>2]=c[a+20>>2];c[b+24>>2]=c[a+24>>2];lm(c[f>>2]|0,c[e>>2]|
0,0);lm(c[f>>2]|0,c[e>>2]|0,1);i=d;return}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;g=i;i
=i+16|0;j=g+12|0;e=g+8|0;h=g+4|0;f=g;c[j>>2]=a;c[e>>2]=b;c[h>>2]=d;c[f>>2]=(c[j>>
;2]|0)+40+((c[h>>2]|0)*396|0);d=c[e>>2]|0;if(!(c[h>>2]|0)){c[c[f>>2]>>2]=c[d+4
>>2];c[(c[f>>2]|0)+4>>2]=c[(c[e>>2]|0)+12>>2];i=g;return}else{c[c[f>>
;2]>>2]=c[d+8>>2];c[(c[f>>2]|0)+4>>2]=c[(c[e>>2]|0)+16>>2];i=g;return
}}function mm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,j=0;h=i;i=i+32|0;d=h+16|0;j=h+12|0;e=h+8|0;g=h+4|0;f=h;c[d>>2]=
a;c[j>>2]=b;Dl(c[d>>2]|0,c[j>>2]|0);c[(c[d>>2]|0)+4>>2]=c[(c[j>>2]|0
)+40>>2];c[(c[d>>2]|0)+8>>2]=c[(c[j>>2]|0)+40+4>>2];c[(c[d>>2]|0)+12
>>2]=c[(c[j>>2]|0)+40+396>>2];c[(c[d>>2]|0)+16>>2]=c[(c[j>>2]|0)+40+
396+4>>2];c[e>>2]=c[(c[j>>2]|0)+4+20>>2];c[g>>2]=c[(c[d>>2]|0)+104
x3e;>2];c[f>>2]=0;if((c[e>>2]|0)==2|(c[e>>2]|0)==3)c[f>>2]=c[f>>2]|1;if((
c[e>>2]|0)==2|(c[e>>2]|0)==4)c[f>>2]=c[f>>2]|2;if((c[e>>2]|0)!=1)c[f>>
;2]=c[f>>2]|4;if((c[e>>2]|0)!=2){j=c[g>>2]|0;j=j|4;c[g>>2]=j;j=c[g>>2]|0;g=c[d
>>2]|0;g=g+104|0;c[g>>2]=j;g=c[f>>2]|0;j=c[d>>2]|0;j=j+108|0;c[j>>2]=g;i=h;return
0}c[f>>2]=c[f>>2]|8;j=c[g>>2]|0;j=j|4;c[g>>2]=j;j=c[g>>2]|0;g=c[d>>
2]|0;g=g+104|0;c[g>>2]=j;g=c[f>>2]|0;j=c[d>>2]|0;j=j+108|0;c[j>>2]=g;i=h;return 0}function
nm(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+16|0;f=j+12|0;k=j+8|0;h=j+4|0;g=j;c[e>>2]=a;
c[f>>2]=b;c[k>>2]=d;c[k>>2]=c[k>>2];c[h>>2]=Il(c[e>>2]|0,c[f>
x3e;2]|0)|0;if(c[h>>2]|0){k=c[h>>2]|0;i=j;return k|0}if((c[(c[e>>2]|0)+104>>2]&1|0)==
0?(c[h>>2]=om(c[e>>2]|0,0)|0,c[h>>2]|0):0){k=c[h>>2]|0;i=j;return k|0}if((c[(c[e>
x3e;2]|0)+104>>2]&2|0)==0?(c[h>>2]=om(c[e>>2]|0,1)|0,c[h>>2]|0):0){k=c[h>>
;2]|0;i=j;return k|0}c[g>>2]=0;while(1){if((c[g>>2]|0)>=2)break;if((c[g>>2]|0)==0?!(c[(c[e>
;>2]|0)+104>>2]&1|0):0)a=12;else a=10;if(((a|0)==10?(a=0,(c[g>>2]|0)==1):0)?(c[(c[e>>2]|
0)+104>>2]&2|0)==0:0)a=12;if((a|0)==12){sm(c[e>>2]|0,c[g>>2]|0);ym(c[e>>2]|0,c[g>
;>2]|0);em(c[e>>2]|0,c[g>>2]|0);fm(c[e>>2]|0,c[g>>2]|0)}c[g>>2]=(c[g>
;>2]|0)+1}im(c[e>>2]|0,c[f>>2]|0);k=c[h>>2]|0;i=j;return k|0}function om(a,b){a=a|0;b=b|0;var
d=0,e=0,f=0,g=0;g=i;i=i+16|0;d=g+8|0;e=g+4|0;f=g;c[d>>2]=a;c[e>>2]=b;c[f>>2]=pm(c[d>>2]|
0,c[e>>2]|0)|0;if(c[f>>2]|0){a=c[f>>2]|0;i=g;return a|0}qm(c[d>>2]|0,c[e>>2]|0
);c[f>>2]=rm(c[d>>2]|0,c[e>>2]|0)|0;a=c[f>>2]|0;i=g;return a|0}function pm(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,q=0,r=0,s=0,t=0;q=i;i=i+48|0;g=q+44|0;s=q+40|0;r=q+36|0;t=q+32|0;p=q+28|0;o=q+24|0;h
=q+20|0;n=q+16|0;m=q+12|0;l=q+8|0;j=q+4|0;k=q;c[s>>2]=b;c[r>>2]=f;c[t>>2]=(c[s>>2]|0)+48
+((c[r>>2]|0)*28|0);c[p>>2]=c[(c[t>>2]|0)+8>>2];c[o>>2]=(c[p>>2]|0)+((
c[c[t>>2]>>2]|0)*52|0);c[h>>2]=Kl(c[s>>2]|0,c[r>>2]|0)|0;if(c[h>>2]|
0){c[g>>2]=c[h>>2];t=c[g>>2]|0;i=q;return t|0}c[n>>2]=c[p>>2];while(1){if((c[n
>>2]|0)>>>0>=(c[o>>2]|0)>>>0)break;c[m>>2]=c[(c[n>>2]|
0)+40>>2];c[l>>2]=c[(c[n>>2]|0)+44>>2];c[j>>2]=(e[c[m>>2]>>
;1]|0)&3;t=c[n>>2]|0;a[t>>0]=(d[t>>0]|0)&-2;while(1){if((c[m>>2]|0)==(c[l>
;>2]|0))break;c[m>>2]=c[(c[m>>2]|0)+32>>2];c[k>>2]=(e[c[m>>2]>>
1]|0)&3;if(!((c[j>>2]|0)!=0|(c[k>>2]|0)!=0))break;if((c[m>>2]|0)==(c[l>>2]|0)){t=c[
n>>2]|0;a[t>>0]=d[t>>0]|0|1}c[j>>2]=c[k>>2]}c[n>>2]=(c[n>>
2]|0)+52}c[g>>2]=0;t=c[g>>2]|0;i=q;return t|0}function qm(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;v=i;i=i+80|0;x=v+68|0;w=v+64|0;y=v+60|0;u=v+56|0;t=v+52|0;n=v+48|0;r=v+44|0;s=v+40
|0;j=v+36|0;g=v+32|0;f=v+28|0;p=v+24|0;o=v+20|0;h=v+16|0;l=v+12|0;m=v+8|0;q=v+4|0;k=v;c[x>>2]=d;c[w>>2]=e;c[
y>>2]=(c[x>>2]|0)+48+((c[w>>2]|0)*28|0);c[u>>2]=c[(c[y>>2]|0)+8>>2];
c[t>>2]=(c[u>>2]|0)+((c[c[y>>2]>>2]|0)*52|0);c[n>>2]=c[(c[y>>2]|0)+24
>>2];c[j>>2]=(c[(c[(c[x>>2]|0)+112>>2]|0)+36>>2]<<3|0)/2048|0;e=c[x
x3e;>2]|0;if(!(c[w>>2]|0))e=c[e+4>>2]|0;else e=c[e+12>>2]|0;c[g>>2]=e;c[g>>
;2]=Vb(192,c[g>>2]|0)|0;c[r>>2]=c[u>>2];while(1){if((c[r>>2]|0)>>>0>=(
c[t>>2]|0)>>>0)break;a:do if((c[(c[r>>2]|0)+40>>2]|0)!=(c[(c[r>>2]|0)+44
x3e;>2]|0)?(a[(c[r>>2]|0)+1>>0]|0)==(c[n>>2]|0):0){c[s>>2]=c[u>>2];while(
1){if((c[s>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break a;do if(((c[s>>2]|
0)!=(c[r>>2]|0)?((a[(c[r>>2]|0)+1>>0]|0)+(a[(c[s>>2]|0)+1>>0]|0)|0)==0:0)?(c[f
>>2]=(b[(c[s>>2]|0)+2>>1]|0)-(b[(c[r>>2]|0)+2>>1]|0),(c[f>>2]|0)>
;=0):0){c[p>>2]=b[(c[r>>2]|0)+4>>1];c[o>>2]=b[(c[r>>2]|0)+6>>1];if((
c[p>>2]|0)<(b[(c[s>>2]|0)+4>>1]|0))c[p>>2]=b[(c[s>>2]|0)+4>>1];
if((c[o>>2]|0)>(b[(c[s>>2]|0)+6>>1]|0))c[o>>2]=b[(c[s>>2]|0)+6>>
;1];c[h>>2]=(c[o>>2]|0)-(c[p>>2]|0);if((c[h>>2]|0)>=(c[j>>2]|0)){do if((c
[f>>2]<<3|0)<((c[(c[r>>2]|0)+32>>2]|0)*9|0)){if((c[f>>2]<<3|0)
x3e;=((c[(c[r>>2]|0)+32>>2]|0)*7|0)?(c[(c[r>>2]|0)+36>>2]|0)>=(c[h>>2]|0):
0)break;c[(c[r>>2]|0)+32>>2]=c[f>>2];c[(c[r>>2]|0)+36>>2]=c[h>>2];c[(
c[r>>2]|0)+20>>2]=c[s>>2]}while(0);if((c[f>>2]<<3|0)<((c[(c[s>>
2]|0)+32>>2]|0)*9|0)){if((c[f>>2]<<3|0)>=((c[(c[s>>2]|0)+32>>2]|0)*7|0)?(
c[(c[s>>2]|0)+36>>2]|0)>=(c[h>>2]|0):0)break;c[(c[s>>2]|0)+32>>2]=c[f>
;>2];c[(c[s>>2]|0)+36>>2]=c[h>>2];c[(c[s>>2]|0)+20>>2]=c[r>>2]}}}
while(0);c[s>>2]=(c[s>>2]|0)+52}}while(0);c[r>>2]=(c[r>>2]|0)+52}c[r>>2]=c[u
x3e;>2];while(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[l>
x3e;2]=c[(c[r>>2]|0)+20>>2];b:do if(((c[l>>2]|0?(c[(c[l>>2]|0)+20>>2]|0)==(c[r
>>2]|0):0)?(b[(c[l>>2]|0)+2>>1]|0)>(b[(c[r>>2]|0)+2>>1]|0):0)?(c[(c[r>
;>2]|0)+32>>2]|0)<(c[g>>2]|0):0){c[s>>2]=c[u>>2];c:while(1){if((c[s>>
;2]|0)>>>0>=(c[t>>2]|0)>>>0)break b;d:do if(((((b[(c[s>>2]|0)+2>>
;1]|0)<=(b[(c[r>>2]|0)+2>>1]|0)?(c[r>>2]|0)!=(c[s>>2]|0):0)?(c[m>>2]=c[(c
[s>>2]|0)+20>>2],c[m>>2]|0):0)?(c[(c[m>>2]|0)+20>>2]|0)==(c[s>>2]|0):
0)?(b[(c[m>>2]|0)+2>>1]|0)>=(b[(c[l>>2]|0)+2>>1]|0):0){if((b[(c[r>>2]|0)+
2>>1]|0)==(b[(c[s>>2]|0)+2>>1]|0)?(b[(c[l>>2]|0)+2>>1]|0)==(b[(c[m>>
2]|0)+2>>1]|0):0)break;if((c[(c[s>>2]|0)+32>>2]|0)>(c[(c[r>>2]|0)+32>>2]|
0)?(c[(c[r>>2]|0)+32>>2]<<2|0)>(c[(c[s>>2]|0)+32>>2]|0):0){if((c[(c[r>
;>2]|0)+36>>2]|0)<((c[(c[s>>2]|0)+36>>2]|0)*3|0))break c;c[q>>2]=c[u>>
;2];while(1){if((c[q>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break d;c[k>>2
]=c[(c[q>>2]|0)+20>>2];do if((c[k>>2]|0)==(c[s>>2]|0)){c[(c[q>>2]|0)+20>
x3e;2]=0;c[(c[q>>2]|0)+24>>2]=c[l>>2]}else{if((c[k>>2]|0)!=(c[m>>2]|0))break;c
[(c[q>>2]|0)+20>>2]=0;c[(c[q>>2]|0)+24>>2]=c[r>>2]}while(0);c[q>>2]=(
c[q>>2]|0)+52}}}while(0);c[s>>2]=(c[s>>2]|0)+52}c[(c[l>>2]|0)+20>>2]=0;c[(c[r
x3e;>2]|0)+20>>2]=0}while(0);c[r>>2]=(c[r>>2]|0)+52}c[r>>2]=c[u>>2];while
(1){if((c[r>>2]|0)>>>0>=(c[t>>2]|0)>>>0)break;c[s>>2]=c[(c[r>
;>2]|0)+20>>2];do if(c[s>>2]|0?(y=(c[s>>2]|0)+28|0,c[y>>2]=(c[y>>2]|0)+1,(
c[(c[s>>2]|0)+20>>2]|0)!=(c[r>>2]|0)):0){c[(c[r>>2]|0)+20>>2]=0;if((c[(c[s>
;>2]|0)+32>>2]|0)>=(c[g>>2]|0)?(c[(c[r>>2]|0)+32>>2]|0)>=(c[(c[s>>
;2]|0)+32>>2]<<2|0):0){y=(c[s>>2]|0)+28|0;c[y>>2]=(c[y>>2]|0)+-1;break}c[(c[r
x3e;>2]|0)+24>>2]=c[(c[s>>2]|0)+20>>2]}while(0);c[r>>2]=(c[r>>2]|0)+52}i=
v;return}
function Is(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=a+4|0;o=c[n>>2]|0;d=o&-8;k=a+d
|0;i=c[18404]|0;e=o&3;if(!((e|0)!=1&a>>>0>=i>>>0&a>>>0<k
x3e;>>0))ya();f=c[k+4>>2]|0;if(!(f&1))ya();if(!e){if(b>>>0<256){a=0;return a|0}if(d
>>>0>=(b+4|0)>>>0?(d-b|0)>>>0<=c[18520]<<1>>>0:0
)return a|0;a=0;return a|0}if(d>>>0>=b>>>0){d=d-b|0;if(d>>>0<=15)return a
|0;m=a+b|0;c[n>>2]=o&1|b|2;c[m+4>>2]=d|3;b=m+d+4|0;c[b>>2]=c[b>>2]|1;Js(m,d);return
a|0}if((k|0)==(c[18406]|0)){d=(c[18403]|0)+d|0;if(d>>>0<=b>>>0){a=0;return a|0}m=d-b|0;l=a+b
|0;c[n>>2]=o&1|b|2;c[l+4>>2]=m|1;c[18406]=l;c[18403]=m;return a|0}if((k|0)==(c[18405]|0)){e=(c[18402]|0
)+d|0;if(e>>>0<b>>>0){a=0;return a|0}d=e-b|0;if(d>>>0>15){e=a+b|0;m=e+d|0
;c[n>>2]=o&1|b|2;c[e+4>>2]=d|1;c[m>>2]=d;b=m+4|0;c[b>>2]=c[b>>2]&-2}
else{c[n>>2]=o&1|e|2;e=a+e+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[18402]=d;c[18405]=e;return a|0}if(
f&2|0){a=0;return a|0}l=(f&-8)+d|0;if(l>>>0<b>>>0){a=0;return a|0}m=l-b|0;g=f>
x3e;>3;do if(f>>>0>=256){h=c[k+24>>2]|0;f=c[k+12>>2]|0;do if((f|0)==(k|0)){e=k+16|0
;f=e+4|0;d=c[f>>2]|0;if(!d){d=c[e>>2]|0;if(!d){j=0;break}}else e=f;while(1){f=d+20|0;g=c[f>>2]|0;if
(g|0){d=g;e=f;continue}f=d+16|0;g=c[f>>2]|0;if(!g)break;else{d=g;e=f}}if(e>>>0<i>>>
0)ya();else{c[e>>2]=0;j=d;break}}else{g=c[k+8>>2]|0;if(g>>>0<i>>>0)ya();d
=g+12|0;if((c[d>>2]|0)!=(k|0))ya();e=f+8|0;if((c[e>>2]|0)==(k|0)){c[d>>2]=f;c[e>>2]=g;j=
f;break}else ya()}while(0);if(h|0){d=c[k+28>>2]|0;e=73904+(d<<2)|0;if((k|0)==(c[e>>2]|0)){c[e>
;>2]=j;if(!j){c[18401]=c[18401]&~(1<<d);break}}else{if(h>>>0<(c[18404]|0)>>>
;0)ya();d=h+16|0;if((c[d>>2]|0)==(k|0))c[d>>2]=j;else c[h+20>>2]=j;if(!j)break}f=c[18404]|0;if(j
x3e;>>0<f>>>0)ya();c[j+24>>2]=h;d=k+16|0;e=c[d>>2]|0;do if(e|0)if(e>>
;>0<f>>>0)ya();else{c[j+16>>2]=e;c[e+24>>2]=j;break}while(0);d=c[d+4>>2]|
0;if(d|0)if(d>>>0<(c[18404]|0)>>>0)ya();else{c[j+20>>2]=d;c[d+24>>2]=j;break
}}}else{e=c[k+8>>2]|0;f=c[k+12>>2]|0;d=73640+(g<<1<<2)|0;if((e|0)!=(d|0)){if(e>>
;>0<i>>>0)ya();if((c[e+12>>2]|0)!=(k|0))ya()}if((f|0)==(e|0)){c[18400]=c[18400]&~(1<
;<g);break}if((f|0)!=(d|0)){if(f>>>0<i>>>0)ya();d=f+8|0;if((c[d>>2]|0)==(k|0))
h=d;else ya()}else h=f+8|0;c[e+12>>2]=f;c[h>>2]=e}while(0);if(m>>>0<16){c[n>>2
]=l|o&1|2;b=a+l+4|0;c[b>>2]=c[b>>2]|1;return a|0}else{l=a+b|0;c[n>>2]=o&1|b|2;c[l+4>
;>2]=m|3;b=l+m+4|0;c[b>>2]=c[b>>2]|1;Js(l,m);return a|0}return 0}function Js(a,b){a=a|0;b=b|0;var d=0,e
=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){f=c[a>>2]|0;
if(!(d&3))return;l=a+(0-f)|0;k=f+b|0;i=c[18404]|0;if(l>>>0<i>>>0)ya();if((l|0)==(c[18405
]|0)){a=o+4|0;d=c[a>>2]|0;if((d&3|0)!=3){r=l;g=k;break}c[18402]=k;c[a>>2]=d&-2;c[l+4>>2]=
k|1;c[l+k>>2]=k;return}e=f>>>3;if(f>>>0<256){a=c[l+8>>2]|0;b=c[l+12>
x3e;2]|0;d=73640+(e<<1<<2)|0;if((a|0)!=(d|0)){if(a>>>0<i>>>0)ya();if((c[a
+12>>2]|0)!=(l|0))ya()}if((b|0)==(a|0)){c[18400]=c[18400]&~(1<<e);r=l;g=k;break}if((b|0)!=(d|0)){if(b
x3e;>>0<i>>>0)ya();d=b+8|0;if((c[d>>2]|0)==(l|0))h=d;else ya()}else h=b+8|0;c[a+12>
x3e;2]=b;c[h>>2]=a;r=l;g=k;break}f=c[l+24>>2]|0;b=c[l+12>>2]|0;do if((b|0)==(l|0)){a=l+16|0;b=a+4|
0;d=c[b>>2]|0;if(!d){d=c[a>>2]|0;if(!d){j=0;break}}else a=b;while(1){b=d+20|0;e=c[b>>2]|0;if(e|0){
d=e;a=b;continue}b=d+16|0;e=c[b>>2]|0;if(!e)break;else{d=e;a=b}}if(a>>>0<i>>>0)ya();
else{c[a>>2]=0;j=d;break}}else{e=c[l+8>>2]|0;if(e>>>0<i>>>0)ya();d=e+12|0
;if((c[d>>2]|0)!=(l|0))ya();a=b+8|0;if((c[a>>2]|0)==(l|0)){c[d>>2]=b;c[a>>2]=e;j=b;break
}else ya()}while(0);if(f){d=c[l+28>>2]|0;a=73904+(d<<2)|0;if((l|0)==(c[a>>2]|0)){c[a>>2]=
j;if(!j){c[18401]=c[18401]&~(1<<d);r=l;g=k;break}}else{if(f>>>0<(c[18404]|0)>>>
;0)ya();d=f+16|0;if((c[d>>2]|0)==(l|0))c[d>>2]=j;else c[f+20>>2]=j;if(!j){r=l;g=k;break}}b=c[18404
]|0;if(j>>>0<b>>>0)ya();c[j+24>>2]=f;d=l+16|0;a=c[d>>2]|0;do if(a|0)if(a
x3e;>>0<b>>>0)ya();else{c[j+16>>2]=a;c[a+24>>2]=j;break}while(0);d=c[d+4>
x3e;2]|0;if(d)if(d>>>0<(c[18404]|0)>>>0)ya();else{c[j+20>>2]=d;c[d+24>>2]=
j;r=l;g=k;break}else{r=l;g=k}}else{r=l;g=k}}else{r=a;g=b}while(0);h=c[18404]|0;if(o>>>0<h>>>0
)ya();d=o+4|0;a=c[d>>2]|0;if(!(a&2)){if((o|0)==(c[18406]|0)){q=(c[18403]|0)+g|0;c[18403]=q;c[18406]=r;c[r+4>
x3e;2]=q|1;if((r|0)!=(c[18405]|0))return;c[18405]=0;c[18402]=0;return}if((o|0)==(c[18405]|0)){q=(c[18402]|0)+g|0;c[18402]=q;c[18405
]=r;c[r+4>>2]=q|1;c[r+q>>2]=q;return}g=(a&-8)+g|0;e=a>>>3;do if(a>>>0>
;=256){f=c[o+24>>2]|0;b=c[o+12>>2]|0;do if((b|0)==(o|0)){a=o+16|0;b=a+4|0;d=c[b>>2]|0;if(!d){d=c[a
>>2]|0;if(!d){n=0;break}}else a=b;while(1){b=d+20|0;e=c[b>>2]|0;if(e|0){d=e;a=b;continue}b=d+16|0;e=c[b>
;>2]|0;if(!e)break;else{d=e;a=b}}if(a>>>0<h>>>0)ya();else{c[a>>2]=0;n=d;break}}
else{e=c[o+8>>2]|0;if(e>>>0<h>>>0)ya();d=e+12|0;if((c[d>>2]|0)!=(o|0))ya();
a=b+8|0;if((c[a>>2]|0)==(o|0)){c[d>>2]=b;c[a>>2]=e;n=b;break}else ya()}while(0);if(f|0){d=c[o+28
x3e;>2]|0;a=73904+(d<<2)|0;if((o|0)==(c[a>>2]|0)){c[a>>2]=n;if(!n){c[18401]=c[18401]&~(1
<<d);break}}else{if(f>>>0<(c[18404]|0)>>>0)ya();d=f+16|0;if((c[d>>2]|0)==(
o|0))c[d>>2]=n;else c[f+20>>2]=n;if(!n)break}b=c[18404]|0;if(n>>>0<b>>>0)
ya();c[n+24>>2]=f;d=o+16|0;a=c[d>>2]|0;do if(a|0)if(a>>>0<b>>>0)ya();else
{c[n+16>>2]=a;c[a+24>>2]=n;break}while(0);d=c[d+4>>2]|0;if(d|0)if(d>>>0<(c[18404
]|0)>>>0)ya();else{c[n+20>>2]=d;c[d+24>>2]=n;break}}}else{a=c[o+8>>2]|0;b=c[o+12>
;>2]|0;d=73640+(e<<1<<2)|0;if((a|0)!=(d|0)){if(a>>>0<h>>>0)ya();if((
c[a+12>>2]|0)!=(o|0))ya()}if((b|0)==(a|0)){c[18400]=c[18400]&~(1<<e);break}if((b|0)!=(d|0)){if(b>
x3e;>0<h>>>0)ya();d=b+8|0;if((c[d>>2]|0)==(o|0))m=d;else ya()}else m=b+8|0;c[a+12>>
2]=b;c[m>>2]=a}while(0);c[r+4>>2]=g|1;c[r+g>>2]=g;if((r|0)==(c[18405]|0)){c[18402]=g;return}}else{
c[d>>2]=a&-2;c[r+4>>2]=g|1;c[r+g>>2]=g}d=g>>>3;if(g>>>0<256
){b=73640+(d<<1<<2)|0;a=c[18400]|0;d=1<<d;if(a&d){d=b+8|0;a=c[d>>2]|0;if(a>>
;>0<(c[18404]|0)>>>0)ya();else{p=d;q=a}}else{c[18400]=a|d;p=b+8|0;q=b}c[p>>2]=r;c[q+12>
x3e;2]=r;c[r+8>>2]=q;c[r+12>>2]=b;return}d=g>>>8;if(d)if(g>>>0>16777215)b
=31;else{p=(d+1048320|0)>>>16&8;q=d<<p;o=(q+520192|0)>>>16&4;q=q<<o;
b=(q+245760|0)>>>16&2;b=14-(o|p|b)+(q<<b>>>15)|0;b=g>>>(b+7|0)&
1|b<<1}else b=0;e=73904+(b<<2)|0;c[r+28>>2]=b;c[r+20>>2]=0;c[r+16>>2]=0;d=c[18401
]|0;a=1<<b;if(!(d&a)){c[18401]=d|a;c[e>>2]=r;c[r+24>>2]=e;c[r+12>>2]=r;c[r+8>
x3e;2]=r;return}f=g<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]
x26;-8|0)==(g|0)){b=d;e=127;break}a=d+16+(f>>>31<<2)|0;b=c[a>>2]|0;if(!b){e=124;break}else{f=
f<<1;d=b}}if((e|0)==124){if(a>>>0<(c[18404]|0)>>>0)ya();c[a>>2]=r;c[r+24
x3e;>2]=d;c[r+12>>2]=r;c[r+8>>2]=r;return}else if((e|0)==127){d=b+8|0;a=c[d>>2]|0;q=c[18404]|
0;if(!(a>>>0>=q>>>0&b>>>0>=q>>>0))ya();c[a+12>
x3e;2]=r;c[d>>2]=r;c[r+8>>2]=a;c[r+12>>2]=b;c[r+24>>2]=0;return}}function Ks(){}function
Ls(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (C=d,a-c
>>>0|0)|0}function Ms(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (C=b+d+(c>>>
;0<a>>>0|0)>>>0,c|0)|0}function Ns(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;h=b&3;i=d|d<<8|d<<16|d<<24;g=f&~3;if(h){h=b+4-h|0;while((b|0)
x3c;(h|0)){a[b>>0]=d;b=b+1|0}}while((b|0)<(g|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(f|0)){a[b>
x3e;0]=d;b=b+1|0}return b-e|0}function Os(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>>c;return a>>
x3e;c|(b&(1<<c)-1)<<32-c}C=0;return b>>>c-32|0}function Ps(a,b,c){a=a|0;b=b|0;c=c|0;if((
c|0)<32){C=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}C=a<
x3c;c-32;return 0}function Qs(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;p=p+1|0;c[a>>2]=p;while((f|0)<(e|0)){if(!(
c[d+(f<<3)>>2]|0)){c[d+(f<<3)>>2]=p;c[d+((f<<3)+4)>>2]=b;c[d+((f<
;<3)+8)>>2]=0;C=e;return d|0}f=f+1|0}e=e*2|0;d=Hs(d|0,8*(e+1|0)|0)|0;d=Qs(a|0,b|0,d|0,e|0)|0;C=e;return d|0}function
Rs(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;while((f|0)<(d|0)){e=c[b+(f<<3)>>2]|0;if(!e)break;if((e|0)==(a
|0))return c[b+((f<<3)+4)>>2]|0;f=f+1|0}return 0}function Ss(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if((e|0)>=
4096)return Ea(b|0,d|0,e|0)|0;f=b|0;if((b&3)==(d&3)){while(b&3){if(!e)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 Ts(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 Ss(b,c,d)|0;return b|0}function Us(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){C=b>>c;return a>
;>>c|(b&(1<<c)-1)<<32-c}C=(b|0)<0?-1:0;return b>>c-32|0}function Vs(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 Ws(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=_(e,f)|0;d=a>>
;>16;a=(c>>>16)+(_(e,d)|0)|0;e=b>>>16;b=_(e,f)|0;return (C=(a>>>16)+(_(e,d)|0)+(((
a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function Xs(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)<
x3c;1;h=Ls(j^a|0,i^b|0,j|0,i|0)|0;g=C;a=f^j;b=e^i;return Ls((at(h,g,Ls(f^c|0,e^d|0,f|0,e|0)|0,C,0)|0)^a|0,C^b|0,a|0,b|0)|0}function
Ys(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+16|0;j=f|0;h=b>>31|((b|0)<0?-1:0)<
x3c;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;a=Ls(h^a|0,g^b|0,h|0,g|0)|0;b=C;at(a,b,Ls(l^d|0,k^e|0,l|0,k|0)|
0,C,j)|0;e=Ls(c[j>>2]^h|0,c[j+4>>2]^g|0,h|0,g|0)|0;d=C;i=f;return (C=d,e)|0}function Zs(a,b,c,d){a=a|0;b=b|0
;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=Ws(e,f)|0;a=C;return (C=(_(b,f)|0)+(_(d,e)|0)+a|a&0,c|0|0)|0}function _s(a,b,c,d){a=a|0;
b=b|0;c=c|0;d=d|0;return at(a,b,c,d,0)|0}function $s(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+16|0;f=g|0;at(a,b,d,e,
f)|0;i=g;return (C=c[f+4>>2]|0,c[f>>2]|0)|0}function at(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0
,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(
h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (C=n,f
)|0}else{if(!g){n=0;f=0;return (C=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (C=n,f)|0}}g=(i|0)==0
;do if(h){if(!g){g=(aa(i|0)|0)-(aa(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>
;>>(m>>>0)&b|k<<i;b=k>>>(m>>>0)&b;g=0;i=l<<
i;break}if(!f){n=0;f=0;return (C=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (C=n,f)|0}g=h-1|0;if
(g&h|0){i=(aa(h|0)|0)+33-(aa(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>
31&k>>>(o>>>0)|(k<<m|l>>>(i>>>0))&b;b=b&k
x3e;>>(i>>>0);g=l<<p&j;i=(k<<p|l>>>(o>>>0))&
;j|l<<m&i-33>>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&
;0;p=a|0|0;return (C=o,p)|0}else{p=Vs(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>
;(p>>>0)|0;return (C=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c
[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (C=o,p)|0}if(!l){if(f|0){c[f
x3e;>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>
;0)>>>0;return (C=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&
;0}o=0;p=k>>>((Vs(i|0)|0)>>>0);return (C=o,p)|0}g=(aa(i|0)|0)-(aa(k|0)|0)|0;if(g>>>
0<=30){b=g+1|0;i=31-g|0;h=b;a=k<<i|l>>>(b>>>0);b=k>>>(b>>
x3e;0);g=0;i=l<<i;break}if(!f){o=0;p=0;return (C=o,p)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return
(C=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=Ms(m|0,l|0,-1,-1)|0;d=C;j=i;i=0;do{e=j;j=g>>>31
|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;Ls(k|0,d|0,
e|0,n|0)|0;p=C;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=Ls(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>
x3e;31|((p|0)<0?-1:0)<<1)&l|0)|0;b=C;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4
x3e;>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|
0>>>31)&-2|i;return (C=o,p)|0}function bt(a,b,c,d,e,f,g,h){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;return
Na[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function ct(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Oa[a&63](b|0,c|0,d|0)|0}function
dt(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Pa[a&1](b|0,c|0,d|0,e|0,f|0)}function et(a,b,c,d,e,f,g,h,i,j){a=a|0;b=
b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;return Qa[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)|0}function ft(a,b,c
){a=a|0;b=b|0;c=c|0;Ra[a&7](b|0,c|0)}function gt(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 Sa[a&
3](b|0,c|0,d|0,e|0,f|0,g|0)|0}function ht(a,b){a=a|0;b=b|0;return Ta[a&63](b|0)|0}function it(a,b,c,d){a=a|0;b=b|0;c=c|0;d=
d|0;Ua[a&31](b|0,c|0,d|0)}function jt(a,b){a=a|0;b=b|0;Va[a&63](b|0)}function kt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=
e|0;return Wa[a&31](b|0,c|0,d|0,e|0)|0}function lt(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;Xa[a&7](b|
0,c|0,d|0,e|0,f|0,g|0)}function mt(a,b,c){a=a|0;b=b|0;c=c|0;return Ya[a&127](b|0,c|0)|0}function nt(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 Za[a&31](b|0,c|0,d|0,e|0,f|0)|0}function ot(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;_a[a
x26;15](b|0,c|0,d|0,e|0)}function pt(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;ba(0);return 0}function qt(a,b,c){
a=a|0;b=b|0;c=c|0;ba(1);return 0}function rt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(2)}function st(a,b,c,d,e,f,g,h,i){a=a|0
;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;ba(3);return 0}function tt(a,b){a=a|0;b=b|0;ba(4)}function ut(a,b,c,d,e,f){a=a|
0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;ba(5);return 0}function vt(a){a=a|0;ba(6);return 0}function wt(a,b,c){a=a|0;b=b|0;c=c|0;ba(7)}function
xt(a){a=a|0;ba(8)}function yt(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(9);return 0}function zt(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;
e=e|0;f=f|0;ba(10)}function At(a,b){a=a|0;b=b|0;ba(11);return 0}function Bt(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ba(12);return
0}function Ct(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ba(13)}
...
function setValue(ptr, value, type, noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";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?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296 ),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4 >>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}
n/a
function stackTrace(){return demangleAll(jsStackTrace())}
n/a
function stringToAscii(str, outPtr){return writeAsciiToMemory(str,outPtr,false)}
n/a
function stringToUTF8(str, outPtr, maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}
n/a
function stringToUTF8Array(str, outU8Array, outIdx, maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx =outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str .charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array [outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array [outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18 ;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx +4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx ++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]= 128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx ++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}
n/a
function writeArrayToMemory(array, buffer){for(var i=0;i<array.length;i++){HEAP8[buffer++>>0]=array[i]}}
n/a
function writeAsciiToMemory(str, buffer, dontAddNull){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}if(!dontAddNull )HEAP8[buffer>>0]=0}
n/a
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}}
n/a